jessibuca-pro-multi-demo.js
2.6 MB
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("crypto")):"function"==typeof define&&define.amd?define(["crypto"],e):(t="undefined"!=typeof globalThis?globalThis:t||self)["jessibuca-multi"]=e(t.crypto$1)}(this,function(t){"use strict";function s(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var r=s(t);const n=o;function o(t,e){const s=a();return(o=function(t,e){return s[t-=286]})(t,e)}function a(){const t=["1233215haiwmz","2uQfSIm","off","slice","978444DFLjXg","keys","133583GLbUoa","70uZKnKf","40MRCrHD","apply","298781WNsCpj","97036pQhKNF","forEach","484653Tderhs","push","484749xSnlba","length"];return(a=function(){return t})()}!function(t){const e=o,s=t();for(;;)try{if(128498===-parseInt(e(295))/1*(-parseInt(e(290))/2)+-parseInt(e(302))/3+-parseInt(e(300))/4+-parseInt(e(289))/5+-parseInt(e(293))/6+-parseInt(e(299))/7*(-parseInt(e(297))/8)+parseInt(e(287))/9*(parseInt(e(296))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(a);class h{on(t,e,s){const i=o,r=this.e||(this.e={});return(r[t]||(r[t]=[]))[i(286)]({fn:e,ctx:s}),this}once(t,e,s){const i=this;function r(...n){i[o(291)](t,r),e.apply(s,n)}return r._=e,this.on(t,r,s)}emit(t,...e){const s=o,i=((this.e||(this.e={}))[t]||[])[s(292)]();for(let t=0;t<i[s(288)];t+=1)i[t].fn[s(298)](i[t].ctx,e);return this}[n(291)](t,e){const s=n,i=this.e||(this.e={});if(!t)return Object[s(294)](i)[s(301)](t=>{delete i[t]}),void delete this.e;const r=i[t],o=[];if(r&&e)for(let t=0,i=r[s(288)];t<i;t+=1)r[t].fn!==e&&r[t].fn._!==e&&o[s(286)](r[t]);return o[s(288)]?i[t]=o:delete i[t],this}}const l=_;!function(t){const e=_,s=t();for(;;)try{if(613027===parseInt(e(539))/1+-parseInt(e(256))/2*(-parseInt(e(462))/3)+parseInt(e(442))/4+-parseInt(e(193))/5+-parseInt(e(614))/6*(parseInt(e(311))/7)+parseInt(e(536))/8+-parseInt(e(494))/9*(parseInt(e(309))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(qt);const c={websocket:1,fetch:2,hls:3,webrtc:4,webTransport:5,aliyunRtc:6,ts:7},d=["",l(279),l(376),l(319),l(638),l(320),l(499),"ts"],u={fetch:l(376),hls:"hls",websocket:l(279),webrtc:"webrtc",webTransport:l(320),worker:l(630),aliyunRtc:l(499),mp4Vod:l(656),flvVod:l(431),file:"file"},p={player:"player",playerAudio:l(498),playbackTF:"playbackTF",talk:l(490),playVod:l(644)},f={mp4:l(602),webm:l(199),flv:"flv",mov:l(237)},m={flv:l(578),m7s:"m7s",hls:l(319),webrtc:l(638),webTransport:l(320),nakedFlow:l(520),fmp4:l(290),mpeg4:l(592),aliyunRtc:l(499),ts:"ts",g711:"g711",pcm:l(226),ps:"ps",dhav:l(683)},g={flv:"FLV",m7s:l(642),hls:l(649),fmp4:l(571),mpeg4:l(625),webrtc:l(477),webTransport:l(360),nakedFlow:"裸流",aliyunRtc:"AliyunRtc",ts:"TS",ps:l(739),dhav:l(555)},y={mse:l(378),wcs:l(587),offscreen:l(318),wasm:l(244),simd:l(537),simdFFmpeg:l(673),mt:"mt",webrtc:l(638),hls:l(319),aliyunRtc:l(499),browser:l(691)},A={canvas:l(389),video:l(682)},b={debug:l(253),warn:l(476)},v={click:l(735),mouseDownAndUp:l(201)},S={normal:l(281),simple:l(702)},E={normal:"normal",small:"small"},w={drop:"drop",accelerate:l(337)};l(609);const T={lowNetwork:{jitterBufferTarget:.3,playoutDelayHint:.7},highQuality:{jitterBufferTarget:.5,playoutDelayHint:1}},I=l(323),k=l(380);function _(t,e){const s=qt();return(_=function(t,e){return s[t-=188]})(t,e)}const C=36e5,D=l(432),L="jbprov",R="jbprovm",P=1e4,x=l(207),M={nv12:1,i420:0},B=[l(561),l(626)],F={average:"average",all:"all"},U={hevcNotSupported:l(639),g711NotSupported:l(459),videoNotSupported:l(697),audioDecodeFailed:l(662),videoDecodeFailed:l(680)},O={playIsNotPauseOrUrlIsNull:l(324),webglAlignmentError:l(338),webglContextLostError:l(263),mediaSourceH265NotSupport:"不支持硬解码H265",mseSourceBufferFull:l(593),mediaSourceAppendBufferError:l(577),mseSourceBufferError:"解码失败",mseAddSourceBufferError:l(577),mseWorkerAddSourceBufferError:l(577),mediaSourceDecoderConfigurationError:l(577),mediaSourceTsIsMaxDiff:l(202),mseWidthOrHeightChange:l(202),mediaSourceAudioG711NotSupport:l(643),mediaSourceAudioInitTimeout:"初始化音频解码器失败",mediaSourceAudioNoDataTimeout:l(741),mediaSourceUseCanvasRenderPlayFailed:l(233),mediaSourceBufferedIsZeroError:"流异常",webcodecsH265NotSupport:l(382),webcodecsUnsupportedConfigurationError:l(577),webcodecsDecodeConfigureError:"初始化解码器失败",webcodecsDecodeError:l(424),webcodecsAudioInitTimeout:l(321),webcodecsAudioNoDataTimeout:l(741),wcsWidthOrHeightChange:l(424),wasmDecodeError:"解码失败",simdDecodeError:"解码失败",simdDecodeDelayTimeout:"首帧解码超时",wasmWidthOrHeightChange:l(202),wasmUseVideoRenderError:l(351),videoElementPlayingFailed:l(351),simdH264DecodeVideoWidthIsTooLarge:"不支持该分辨率的视频",networkDelayTimeout:l(621),fetchError:l(709),streamEnd:"请求结束",websocket1006Error:"流异常结束",websocketError:l(709),webrtcError:l(709),hlsError:l(709),decoderWorkerInitError:l(358),decoderWorkerWasmError:l(220),videoElementPlayingFailedForWebrtc:l(351),videoInfoError:l(690),webrtcStreamH265:l(383),delayTimeout:l(463),loadingTimeout:l(581),loadingTimeoutRetryEnd:l(581),delayTimeoutRetryEnd:l(463),flvDemuxBufferSizeTooLarge:"FLV待解封装buffer过大",audioChannelError:"音频通道错误",aliyunRtcError:l(709),mseWaitVideoCanplayTimeout:l(202),initDecoderWorkerTimeout:l(364),notSupportNewWasm:l(534),failedToAsynchronouslyPrepareWasm:l(534),playVodMp4Error:"点播MP4文件异常",playVodMp4NotMoovError:l(243),playVodFlvError:"点播FLV文件异常",playVodMseDecodeVideoError:"点播解码器异常",mp4Error:l(243),tsPacketSizeError:l(191)},N={playType:p[l(228)],videoBuffer:1e3,videoBufferDelay:1e3,networkDelay:1e4,isResize:!0,isFullResize:!1,isFlv:!1,isHls:!1,isFmp4:!1,isWebrtc:!1,isWebrtcForQiNiu:!1,isWebrtcForDJI:!1,isWebrtcForZLM:!1,isWebrtcForSRS:!1,webrtcForSRSBySDK:!1,webrtcForSRSByWhipWhep:!1,webrtcForSRSByWhipWhepOldVersion:!1,isWebrtcForOthers:!1,isNakedFlow:!1,isMpeg4:!1,isAliyunRtc:!1,isTs:!1,isPs:!1,isDHav:!1,debug:!1,debugLevel:b.debug,debugUuid:"",isMulti:!0,multiIndex:-1,hotKey:!1,loadingTimeout:10,heartTimeout:10,timeout:10,pageVisibilityHiddenTimeout:300,loadingTimeoutReplay:!0,heartTimeoutReplay:!0,loadingTimeoutReplayTimes:3,heartTimeoutReplayTimes:3,heartTimeoutReplayUseLastFrameShow:!0,replayUseLastFrameShow:!0,replayShowLoadingIcon:!1,supportDblclickFullscreen:!1,showBandwidth:!1,showPerformance:!1,mseCorrectTimeDuration:20,mseCorrectAudioTimeDuration:20,keepScreenOn:!0,isNotMute:!1,muted:!0,hasAudio:!0,hasVideo:!0,operateBtns:{fullscreen:!1,screenshot:!1,play:!1,audio:!1,record:!1,ptz:!1,quality:!1,zoom:!1,close:!1,scale:!1,performance:!1,logSave:!1,aiFace:!1,aiObject:!1,aiOcclusion:!1,fullscreenFn:null,fullscreenExitFn:null,screenshotFn:null,playFn:null,pauseFn:null,recordFn:null,recordStopFn:null},extendOperateBtns:[],contextmenuBtns:[],watermarkConfig:{},controlAutoHide:!1,controlAutoHideDelayTime:5,hasControl:!1,controlSize:E.normal,loadingIcon:!0,initShowLoadingIconInner:!1,loadingIconStyle:{},loadingText:"",background:"",poster:"",backgroundLoadingShow:!0,loadingBackground:"",loadingBackgroundWidth:0,loadingBackgroundHeight:0,decoder:"decoder-pro.js",decoderOld:l(556),decoderAudio:l(420),decoderHard:"decoder-pro-hard.js",decoderHardNotWasm:"decoder-pro-hard-not-wasm.js",decoderOnlyAudio:l(516),decoderOnlyVideo:"decoder-pro-video-only.js",wasmMp4RecorderDecoder:l(439),decoderWASM:"",isDecoderUseCDN:!1,url:"",rotate:0,mirrorRotate:"none",aspectRatio:l(721),playbackConfig:{playList:[],fps:"",autoCalcFps:!0,showControl:!0,controlType:S[l(281)],duration:0,startTime:"",showRateBtn:!1,rateConfig:[],showPrecision:"",showPrecisionBtn:!0,isCacheBeforeDecodeForFpsRender:!1,uiUsePlaybackPause:!1,isPlaybackPauseClearCache:!0,isUseFpsRender:!1,isUseLocalCalculateTime:!1,localOneFrameTimestamp:40,supportWheel:!1,useWCS:!1,useMSE:!1,useSIMD:!0},playbackNextIFrameDuration:1,qualityConfig:[],defaultStreamQuality:"",scaleConfig:["拉伸","缩放","正常"],forceNoOffscreen:!0,hiddenAutoPause:!1,protocol:c[l(376)],demuxType:m[l(578)],useWasm:!1,useOldWasm:!1,useMSE:!1,useWCS:!1,useSIMD:!0,isFFmpegSIMD:!1,useMThreading:!1,useSThreading:!1,preferredHardDecode:!1,wcsUseVideoRender:!0,wcsUseWebgl2Render:!1,wasmUseVideoRender:!0,mseUseCanvasRender:!1,hlsUseCanvasRender:!1,webrtcUseCanvasRender:!1,useOffscreen:!1,useWebGPU:!1,useWebCanvas:!1,mseDecodeErrorReplay:!0,wcsDecodeErrorReplay:!0,wasmDecodeErrorReplay:!0,simdDecodeErrorReplay:!0,simdDecodeErrorReplayType:y[l(244)],autoWasm:!0,decoderErrorAutoWasm:!1,hardDecodingNotSupportAutoWasm:!0,webglAlignmentErrorReplay:!0,webglContextLostErrorReplay:!0,openWebglAlignment:!1,syncAudioAndVideo:!0,syncAudioAndVideoDiff:300,playbackDelayTime:1e3,playbackFps:25,playVodFps:25,playbackForwardMaxRateDecodeIFrame:4,calcPlaybackForwardMaxRateDecodeIFrame:!1,playbackCurrentTimeMove:!0,useVideoRender:!0,useCanvasRender:!1,videoRenderType:"",networkDelayTimeoutReplay:!1,recordType:f[l(602)],checkFirstIFrame:!0,nakedFlowFps:25,audioEngine:null,isShowRecordingUI:!0,isShowZoomingUI:!0,useFaceDetector:!1,useObjectDetector:!1,useImageDetector:!1,useOcclusionDetector:!1,useLicensePlateDetector:!1,ptzPositionConfig:{},ptzShowType:l(340),ptzClickType:v[l(735)],ptzStopEmitDelay:.3,ptzZoomShow:!1,ptzApertureShow:!1,ptzFocusShow:!1,ptzMoreArrowShow:!1,ptzCruiseShow:!1,ptzFogShow:!1,ptzWiperShow:!1,ptzSupportDraggable:!1,weiXinInAndroidAudioBufferSize:4800,isCryptoAudio:!1,isM7sCrypto:!1,isSm4Crypto:!1,isSm4CryptoH265V2:!1,isXorCrypto:!1,sm4CryptoKey:"",m7sCryptoKey:"",xorCryptoKey:"",cryptoKey:"",cryptoIV:"",cryptoKeyUrl:"",listenWindowResizeAuoResize:!0,orientationChangeResize:!1,useWebFullScreen:!1,ptsMaxDiff:3600,aiFaceDetectLevel:2,aiFaceDetectWidth:240,aiFaceDetectEmitBase64:!1,aiFaceDetectShowRect:!0,aiFaceDetectInterval:1e3,aiFaceDetectRectConfig:{},aiObjectDetectLevel:2,aiObjectDetectWidth:240,aiObjectDetectEmitBase64:!1,aiObjectDetectShowRect:!0,aiObjectDetectInterval:1e3,aiObjectDetectRectConfig:{},aiObjectDetectTarget:"",aiOcclusionDetectInterval:1e3,aiImageDetectDrop:!1,aiImageDetectActive:!1,aiLicensePlateDetectActive:!1,aiLicensePlateDetectInterval:1e3,videoRenderSupportScale:!0,mediaSourceTsIsMaxDiffReplay:!0,controlHtml:"",isH265:!1,isWebrtcH265:!1,supportLockScreenPlayAudio:!0,supportHls265:!0,hls264UseOldDemuxer:!1,hls265ForceFixLargeGap:!0,isEmitSEI:!1,pauseAndNextPlayUseLastFrameShow:!1,demuxUseWorker:!0,playFailedAndReplay:!0,showMessageConfig:{},videoElementPlayingFailedReplay:!0,mp4RecordUseWasm:!0,mseAutoCleanupSourceBuffer:!0,mseAutoCleanupMaxBackwardDuration:30,mseAutoCleanupMinBackwardDuration:10,widthOrHeightChangeReplay:!0,simdH264DecodeVideoWidthIsTooLargeReplay:!0,mediaSourceAudioG711NotSupportReplay:!0,mediaSourceAudioInitTimeoutReplay:!0,mediaSourceAudioNoDataTimeoutReplay:!0,mediaSourceUseCanvasRenderPlayFailedReplay:!0,mediaSourceUseCanvasRenderPlayFailedReplayType:A[l(682)],webcodecsAudioInitTimeoutReplay:!0,webcodecsAudioNoDataTimeoutReplay:!0,webcodecsAudioDecodeErrorReplay:!0,widthOrHeightChangeReplayDelayTime:0,ghostWatermarkConfig:{on:5,off:5,content:"",fontSize:12,color:l(245),opacity:.15,speed:.2},dynamicWatermarkConfig:{content:"",speed:.2,fontSize:12,color:l(245),opacity:.15},isDropSameTimestampGop:!1,mseDecodeAudio:!0,wcsDecodeAudio:!0,nakedFlowH265DemuxUseNew:!0,nakedFlowDemuxUseNew:!0,extendDomConfig:{html:"",showBeforePlay:!1,showAfterLoading:!0},disableContextmenu:!1,mseDecoderUseWorker:!0,openMemoryLog:!1,mainThreadFetchUseWorker:!0,playFailedAndPausedShowPlayBtn:!0,mseCorrectionTimestamp:!0,flvDemuxBufferSizeTooLargeReplay:!1,flvDemuxBufferSizeTooLargeEmitFailed:!1,flvDemuxBufferSizeMaxLarge:1048576,isCheckInView:!1,hiddenControl:!1,removeControl:!1,androidMobileFullscreenRotate:!0,recordWebMSupportSeek:!0,wasmPlayAudioUseVideoRender:!1,mseWaitVideoCanplayTimeout:6,mseWaitVideoCanplayAutoWasm:!0,mseVideoBufferMinDelay:1e3,zoomMaxScale:5,zoomSupportGestureInMobile:!1,zoomSupportGestureInMobileSpeed:.2,zoomSupportWheelInPc:!1,zoomSupportWheelInPcSpeed:.2,zoomCheckBorderRange:!1,drawingRectColor:l(211),drawingRectLineWidth:1,drawingRectEndRemoveDom:!0,videoSEISyncPtsDiff:.2,initShowPlayBtn:!1,playbackCheckStreamEnd:!0,autoUseSystemFullScreen:!0,playVodConfig:{showControl:!0,showRateBtn:!1,rateConfig:[],useWCS:!1,useMSE:!0,useSIMD:!0,startTime:null,forwardRate:null,hlsTsVideoTrackIndex:null,hlsTsAudioTrackIndex:null},playVodForwardMaxRateDecodeIFrame:8,playVodEndedAndAutoReplay:!1,playVodEndedAndShowPlayBtn:!0,playVodMaxGopDuration:20,playVodMaxBufferLength:30,playVodBackBufferLength:10,playVodNextIFrameDuration:1,hotKeyVolumeStep:.05,hotKeySeekStep:5,websocketOpenTimeout:8,i18n:{},screenshotUseHighQuality:!1,requestAnimationFrameMaxDiff:800,isUseFileProtocol:!1,correctionConfigurationProfileIndication:!0,correctionConfigurationVersion:!0,demuxFlvUseV2:!1,demuxPsUseV2:!1,wasmSimdFirstFrameDecodeDelayTimeout:5,streamMaxChunkSize:32768,delayFrameChasingPolicy:w[l(575)],delayFrameAccelerateDecodeMaxNum:8,isEmitTsPrivateData:!1,tsVideoTrackIndex:null,tsAudioTrackIndex:null,intervalUseWorker:!0,emitVideoContentClickEvent:!1,checkWebrtcLowFps:!0,checkWebrtcLowFpsDuration:5,webrtcLowFps:3,checkWebrtcLowFpsCalcType:F[l(485)],playVodMp4UseSrc:!0,isSpecialPlaybackVod:!1,webrtcPlayType:null,waitingCheckFirstIframeTimeoutAutoWasmAndNoCheck:!0},V={playType:N[l(312)],playbackForwardMaxRateDecodeIFrame:N.playbackForwardMaxRateDecodeIFrame,isSpecialPlaybackVod:N.isSpecialPlaybackVod,isMulti:N[l(524)],isM7sCrypto:N.isM7sCrypto,supportHls265:N.supportHls265,pauseAndNextPlayUseLastFrameShow:N[l(653)],replayUseLastFrameShow:N[l(452)],widthOrHeightChangeReplayDelayTime:N.widthOrHeightChangeReplayDelayTime,controlSize:N.controlSize,multiIndex:N[l(361)],isFlv:N[l(667)],isFmp4:N.isFmp4,isMpeg4:N[l(483)],isNakedFlow:N[l(391)],isHls:N[l(232)],isWebrtc:N[l(659)],isWebrtcForZLM:N.isWebrtcForZLM,isWebrtcForSRS:N[l(637)],isWebrtcForOthers:N.isWebrtcForOthers,isAliyunRtc:N[l(342)],isTs:N.isTs,ghostWatermarkConfig:N[l(257)],dynamicWatermarkConfig:N[l(606)],watermarkConfig:N[l(601)],defaultStreamQuality:N[l(301)],videoRenderSupportScale:N[l(641)],timeout:N[l(744)],loadingTimeout:N[l(217)],heartTimeout:N.heartTimeout,playVodMp4UseSrc:N[l(428)],waitingCheckFirstIframeTimeoutAutoWasmAndNoCheck:N[l(523)],url:"",container:"",playbackConfig:{},playVodConfig:{},fullscreenWatermarkConfig:{},playbackForwardMaxRatePlayAudio:!1,playOptions:{},isLive:!0,playFailedUseLastFrameShow:!0,playFailedAndPausedShowMessage:!0,isUseNewFullscreenWatermark:!0,websocket1006ErrorReplay:!0,websocket1006ErrorReplayDelayTime:1,streamErrorReplay:!1,streamErrorReplayDelayTime:1,streamEndReplay:!1,streamEndReplayDelayTime:1,networkDisconnectReplay:!0,loadingTimeoutRetryEndShowPlayBtn:!0,playFailedAndPausedShowPlayBtn:!1,initDecoderWorkerTimeout:10,checkIsMeaningfulRetryTimes:5,isPlayFailedAndPausedSaveLastIframeInfo:!0,playVodDecodeErrorAndStepTime:1},j={init:l(519),initVideo:l(580),render:l(515),playAudio:l(285),initAudio:l(280),kBps:l(194),decode:l(553),audioCode:l(405),audioNalu:"audioNalu",audioAACSequenceHeader:l(698),videoCode:l(327),videoCodec:l(357),videoNalu:l(336),videoPayload:l(329),audioPayload:l(419),wasmError:l(725),workerFetch:"workerFetch",iframeIntervalTs:l(502),isDropping:l(372),workerEnd:l(422),networkDelay:l(695),playbackStreamVideoFps:l(425),wasmWidthOrHeightChange:l(678),simdDecodeError:l(586),simdH264DecodeVideoWidthIsTooLarge:l(303),simdDecodeDelayTimeout:l(696),websocketOpen:l(379),websocketStringMsg:l(264),closeEnd:"closeEnd",tempStream:"tempStream",videoSEI:l(307),flvScriptData:l(430),aacSequenceHeader:l(363),videoSequenceHeader:l(729),flvBufferData:l(615),checkFirstIFrame:l(293),mseHandle:l(660),mseFirstRenderTime:"mseFirstRenderTime",mseError:l(718),notSupportNewWasm:"notSupportNewWasm",outOfMemoryWasm:l(241),failedToAsynchronouslyPrepareWasm:l(528),mtStreamStats:l(331),videoStreamStats:l(441),audioStreamStats:l(716),tsError:"tsError",tsPrivateData:l(492),videoInitedAndNotFirstVideoIFrame:"videoInitedAndNotFirstVideoIFrame"};l(284);const W={audio:1,video:2},G={audio:8,video:9,scriptData:18},z={init:l(519),decode:l(553),audioDecode:l(206),videoDecode:l(365),initAudioCodec:l(693),initVideoCodec:l(394),close:"close",updateConfig:l(355),resetDecode:l(423),clearBuffer:l(248),resetAudioDecode:"resetAudioDecode",resetVideoDecode:l(672),fetchStream:"fetchStream",sendWsMessage:l(359),mseUpdateVideoTimestamp:l(249),playbackIsPause:l(687),playbackNextFrame:l(215),playbackNextIFrame:l(728),playVodFps:l(484),playVodNextFrame:l(370),playVodNextIFrame:l(302),updateForwardMaxRateDecodeIFrame:l(467)},H={fetch:l(376),destroy:l(314),destroyEnd:l(387),buffer:l(648),fetchError:l(287),fetchErrorWorker:l(304),fetchClose:"fetchClose",fetchSuccess:l(366),init:l(519),bufferByteLength:"bufferByteLength"},K={fetch:l(376),sendMessage:l(413),destroy:"destroy",destroyEnd:l(387),buffer:l(648),bufferByteLength:l(395),websocketError:l(197),websocketClose:"websocketClose",websocketOpen:l(379),websocketStringMsg:l(264),init:l(519)},q={fullscreenInner:l(203),fullscreen:l(393),fullscreenEndInner:l(591),fullScreenByStart:l(529),webFullscreen:l(605),decoderWorkerInit:l(535),play:"play",playing:l(552),pause:"pause",mute:"mute",load:l(390),loading:"loading",zooming:l(746),drawingRect:l(633),drawingRectInfo:l(533),videoInfo:"videoInfo",timeUpdate:l(345),audioInfo:l(435),log:l(429),error:l(270),kBps:l(194),timeout:l(744),delayTimeout:"delayTimeout",delayTimeoutRetryEnd:l(198),loadingTimeout:l(217),loadingTimeoutRetryEnd:"loadingTimeoutRetryEnd",stats:l(684),performance:l(562),videoSmooth:l(455),faceDetectActive:l(557),objectDetectActive:l(190),occlusionDetectActive:l(398),imageDetectActive:l(369),licensePlateDetectActive:"licensePlateDetectActive",record:l(521),recording:l(506),recordingTimestamp:"recordingTimestamp",recordStart:"recordStart",recordEnd:l(704),recordCreateError:l(748),recordBlob:"recordBlob",recordCancel:l(271),buffer:l(648),videoFrame:l(559),videoSEI:l(307),videoSEISyncPts:"videoSEISyncPts",start:l(433),startInner:l(189),metadata:l(397),resize:l(289),volumechange:l(412),volume:l(620),destroy:l(314),beforeDestroy:l(511),streamEnd:"streamEnd",streamRate:"streamRate",streamAbps:l(579),streamVbps:l(295),streamDts:l(685),streamSuccess:l(225),streamMessage:l(339),streamError:l(573),streamStats:l(415),streamEndInner:l(532),mseSourceOpen:l(576),mseSourceClose:"mseSourceClose",mseSourceended:l(396),mseSourceStartStreaming:l(569),mseSourceEndStreaming:l(368),mseSourceBufferError:l(242),mseAddSourceBufferError:l(724),mseWorkerAddSourceBufferError:l(409),mseSourceBufferBusy:l(274),mseSourceBufferFull:l(481),videoWaiting:l(517),videoTimeUpdate:l(482),videoSyncAudio:l(352),playToRenderTimes:"playToRenderTimes",playbackTime:l(714),playbackTimestamp:l(266),playbackTimeScroll:l(565),playbackPrecision:l(541),playbackShowPrecisionChange:"playbackShowPrecisionChange",playbackJustTime:l(727),playbackStats:l(247),playbackSeek:l(671),playbackPause:"playbackPause",playbackPauseOrResume:l(297),playbackRateChange:l(589),playbackPreRateChange:l(195),playbackEndInner:l(505),playbackEnd:l(549),playbackEndedAndReplay:l(278),playbackNextFrame:l(215),playbackNextIFrame:l(728),playVodStats:"playVodStats",playVodPause:l(607),playVodPauseOrResume:l(548),playVodRateChange:l(223),playVodTime:"playVodTime",playVodBufferedTime:l(688),playVodTimeCache:l(472),playVodSeek:l(296),playVodSeeking:l(583),playVodSeekEnd:l(384),playVodVideoSeekingByMse:l(616),playVodVideoSeekedByMse:l(504),playVodCanplay:"playVodCanplay",playVodWaiting:l(240),playVodEndedAndReplay:l(629),playVodEndedInner:l(584),playVodEnded:l(388),playVodNextFrame:l(370),playVodNextIFrame:l(302),playVodDuration:l(661),ptz:l(518),streamQualityChange:l(308),visibilityChange:l(582),netBuf:l(254),close:l(204),networkDelayTimeout:"networkDelayTimeout",togglePerformancePanel:l(474),viewResizeChange:"viewResizeChange",flvDemuxBufferSizeTooLarge:"flvDemuxBufferSizeTooLarge",talkGetUserMediaSuccess:"talkGetUserMediaSuccess",talkGetUserMediaFail:l(434),talkGetUserMediaTimeout:l(619),talkStreamStart:l(265),talkStreamOpen:l(473),talkStreamClose:l(663),talkStreamError:l(213),talkStreamInactive:l(513),talkStreamMsg:l(627),webrtcDisconnect:l(298),webrtcFailed:l(525),webrtcClosed:l(283),webrtcChecking:"webrtcChecking",webrtcConnected:l(236),webrtcCompleted:"webrtcCompleted",webrtcOnConnectionStateChange:l(676),webrtcOnIceConnectionStateChange:l(479),webrtcLowFps:l(259),webrtcIceCandidate:l(531),webrtcDataChannelOpen:l(392),webrtcDataChannelMsg:l(457),crashLog:l(475),focus:l(598),blur:"blur",inView:l(210),visibilityHiddenTimeout:l(305),websocketOpen:l(379),websocketClose:l(542),websocketError:l(197),websocketStringMsg:l(264),aiObjectDetectorInfo:l(491),aiFaceDetectorInfo:"aiFaceDetectorInfo",aiOcclusionDetectResult:l(292),aiImageDetectResult:l(574),playFailedAndPaused:"playFailedAndPaused",audioResumeState:"audioResumeState",webrtcStreamH265:l(471),flvMetaData:l(478),talkFailedAndStop:l(654),removeLoadingBgImage:"removeLoadingBgImage",memoryLog:"memoryLog",downloadMemoryLog:l(540),pressureObserverCpu:"pressureObserverCpu",currentPts:l(446),online:l(224),offline:l(686),networkState:l(239),clickInitPlayer:l(670),audioSplitBuffer:"audioSplitBuffer",tsPrivateData:l(492),videoRectContentClick:"videoRectContentClick",hls264UseOldDemuxer:l(299),hlsTsVideoTrackPidList:l(403),tsVideoTrackPidList:l(443)},Q={load:q[l(390)],timeUpdate:q[l(345)],videoInfo:q.videoInfo,audioInfo:q[l(435)],error:q[l(270)],kBps:q[l(194)],start:q[l(433)],timeout:q.timeout,loadingTimeout:q[l(217)],loadingTimeoutRetryEnd:q.loadingTimeoutRetryEnd,delayTimeout:q[l(258)],delayTimeoutRetryEnd:q.delayTimeoutRetryEnd,playFailedAndPaused:q[l(608)],fullscreen:q[l(393)],webFullscreen:q[l(605)],play:q.play,pause:q[l(255)],mute:q[l(227)],stats:q[l(684)],performance:q[l(562)],recordStart:q[l(408)],recordEnd:q[l(704)],recordBlob:q[l(354)],recordCancel:q[l(271)],recordingTimestamp:q[l(658)],recordCreateError:q[l(748)],playToRenderTimes:q[l(385)],videoSmooth:q[l(455)],ptz:q[l(518)],streamQualityChange:q[l(308)],zooming:q[l(746)],crashLog:q.crashLog,focus:q[l(598)],blur:q.blur,visibilityHiddenTimeout:q[l(305)],visibilityChange:q[l(582)],websocketOpen:q.websocketOpen,websocketClose:q[l(542)],websocketStringMsg:q.websocketStringMsg,audioResumeState:q[l(447)],networkDelayTimeout:q.networkDelayTimeout,webrtcOnConnectionStateChange:q.webrtcOnConnectionStateChange,webrtcOnIceConnectionStateChange:q[l(479)],webrtcIceCandidate:q.webrtcIceCandidate,webrtcDataChannelOpen:q[l(392)],webrtcDataChannelMsg:q.webrtcDataChannelMsg,videoSEI:q.videoSEI,videoSEISyncPts:q[l(461)],streamEnd:q[l(635)],flvMetaData:q[l(478)],currentPts:q.currentPts,inView:q[l(210)],networkState:q[l(239)],volume:q.volume,clickInitPlayer:q[l(670)],tsPrivateData:q.tsPrivateData,drawingRectInfo:q[l(533)],videoRectContentClick:q[l(306)],aiObjectDetectorInfo:q[l(491)],aiFaceDetectorInfo:q.aiFaceDetectorInfo,aiOcclusionDetectResult:q.aiOcclusionDetectResult,aiImageDetectResult:q[l(574)],playbackSeek:q[l(671)],playbackStats:q[l(247)],playbackTimestamp:q[l(266)],playbackPauseOrResume:q.playbackPauseOrResume,playbackPreRateChange:q.playbackPreRateChange,playbackRateChange:q[l(589)],playbackShowPrecisionChange:q[l(267)],playbackEnd:q[l(549)],playVodDuration:q[l(661)],playVodEnded:q.playVodEnded,playVodPauseOrResume:q[l(548)],playVodRateChange:q[l(223)],playVodTime:q[l(509)],playVodBufferedTime:q[l(688)],playVodSeek:q[l(296)],playVodSeeking:q.playVodSeeking,playVodSeekEnd:q[l(384)],hlsTsVideoTrackPidList:q[l(403)],tsVideoTrackPidList:q[l(443)]};l(663),l(213),l(513),l(619),l(627),l(390),l(345),l(435),l(433),l(217),l(612),l(258),l(198),l(454),l(227),l(684),l(385),l(379),l(608),l(447);const Y={talkStreamError:q[l(213)],talkStreamClose:q[l(663)]},J={playError:l(544),playFailedError:l(438),fetchError:l(287),fetchErrorWorker:l(304),websocketError:l(197),websocketOpenTimeout:"websocketOpenTimeout",webTransportError:l(599),webcodecsH265NotSupport:l(596),webcodecsDecodeError:l(216),webcodecsUnsupportedConfigurationError:l(453),webcodecsDecodeConfigureError:l(496),webcodecsAudioInitTimeout:l(664),webcodecsAudioNoDataTimeout:l(399),webcodecsAudioDecodeError:l(350),mediaSourceH265NotSupport:"mediaSourceH265NotSupport",mediaSourceAudioG711NotSupport:l(647),mediaSourceAudioInitTimeout:l(288),mediaSourceAudioNoDataTimeout:l(677),mediaSourceDecoderConfigurationError:l(262),mediaSourceFull:q[l(481)],mseSourceBufferError:q[l(242)],mseAddSourceBufferError:q[l(724)],mseWorkerAddSourceBufferError:q.mseWorkerAddSourceBufferError,mediaSourceAppendBufferError:l(694),mediaSourceTsIsMaxDiff:l(404),mediaSourceUseCanvasRenderPlayFailed:"mediaSourceUseCanvasRenderPlayFailed",mediaSourceBufferedIsZeroError:"mediaSourceBufferedIsZeroError",wasmDecodeError:l(706),wasmUseVideoRenderError:l(222),simdH264DecodeVideoWidthIsTooLarge:l(303),simdDecodeError:"simdDecodeError",simdDecodeDelayTimeout:"simdDecodeDelayTimeout",hlsError:l(703),webrtcError:l(567),webrtcClosed:q[l(283)],webrtcIceCandidateError:l(322),webglAlignmentError:"webglAlignmentError",wasmWidthOrHeightChange:l(678),mseWidthOrHeightChange:l(749),wcsWidthOrHeightChange:l(722),widthOrHeightChange:"widthOrHeightChange",tallWebsocketClosedByError:l(720),flvDemuxBufferSizeTooLarge:q.flvDemuxBufferSizeTooLarge,audioChannelError:l(427),webglContextLostError:l(272),videoElementPlayingFailed:l(209),videoElementPlayingFailedForWebrtc:l(410),decoderWorkerInitError:l(470),decoderWorkerWasmError:"decoderWorkerWasmError",decoderWorkerUncaughtError:l(570),videoInfoError:l(600),streamEnd:q.streamEnd,websocket1006Error:"websocket1006Error",delayTimeout:q[l(258)],loadingTimeout:q[l(217)],networkDelayTimeout:q.networkDelayTimeout,fullscreenError:l(469),aliyunRtcError:l(719),mseWaitVideoCanplayTimeout:l(214),initDecoderWorkerTimeout:l(597),notSupportNewWasm:l(277),outOfMemoryWasm:l(241),failedToAsynchronouslyPrepareWasm:l(528),playVodMp4Error:l(715),playVodMp4NotMoovError:l(426),playVodMp4UseSrcError:"playVodMp4UseSrcError",playVodMp4UseSrcVideoError:l(238),playVodFlvError:l(229),playVodMseDecodeVideoError:l(325),playVodCalcFpsError:l(734),mp4Error:"mp4Error",tsPacketSizeError:l(692),hlsM3u8Empty:"hlsM3u8Empty",hlsM3u8Error:l(212),...Y};l(287);const X={notConnect:l(448),open:l(282),close:"close",error:l(270)};l(501);const $={download:"download",base64:"base64",blob:l(381)},Z={download:l(346),blob:l(381)},tt={7:l(588),12:l(440),13:"AV1",99:l(625)},et={h264:7,h265:12,av1:13,mpeg4:99},st={h264:l(588),h265:"H265(HEVC)"},it={PCM:1,AAC:10,ALAW:7,MULAW:8,MP3:2,OPUS:13,G711A:7,G711U:8,G722_1:12},rt={AAC:l(252),ALAW:l(669),MULAW:l(610),MP3:l(530)},nt={10:l(252),7:l(347),8:l(526),2:"MP3"},ot={sps:7,pps:8,iFrame:5,kUnspecified:0,kSliceNonIDR:1,kSliceDPA:2,kSliceDPB:3,kSliceDPC:4,kSliceIDR:5,kSliceSEI:6,kSliceSPS:7,kSlicePPS:8,kSliceAUD:9,kEndOfSequence:10,kEndOfStream:11,kFiller:12,kSPSExt:13,kReserved0:14},at={pFrame:1,kSliceBLA_W_LP:16,kSliceBLA_W_RADL:17,kSliceBLA_N_LP:18,iFrame:19,kSliceIDR_W_RADL:19,nLp:20,kSliceIDR_N_LP:20,craNut:21,kSliceCRA_NUT:21,kSliceRSV_IRAP_VCL22:22,kSliceRSV_IRAP_VCL23:23,vps:32,kSliceVPS:32,sps:33,kSliceSPS:33,pps:34,kSlicePPS:34,kSliceAUD:35,sei:39,prefixSei:39,suffixSei:40},ht={full:0,auto:1,fullAuto:2},lt={webcodecs:l(527),webgl:"webgl",webgl2:l(558),webgpu:l(276),offscreen:"offscreen",mse:l(378),hls:l(319),webrtc:l(638),canvas:"canvas"},ct={key:l(480),delta:l(732)},dt={avc:l(651),hvc:l(269),hev:l(417),hev2:l(348),hev3:'video/mp4;codecs="hev1.2.4.L120.90"',hev4:l(674),hev5:'video/mp4;codecs="hev1.4.10.L120.90"',hev6:'video/mp4;codecs="hvc1.1.6.L120.90"',av1:l(564)},ut={ended:l(631),open:l(282),closed:l(330)};Math[l(736)](40);const pt={esc:27,arrowUp:38,arrowDown:40,arrowLeft:37,arrowRight:39},ft={oneHour:"oneHour",halfHour:l(349),tenMin:l(436),fiveMin:l(560)},mt={oneHour:"one-hour",halfHour:l(407),tenMin:l(487),fiveMin:l(742)};l(611),l(196),l(341);const gt=["oneHour",l(349),l(436),l(560)],yt=["up",l(634),l(711),"left","left-up",l(411),"left-down",l(740)],At={up:"up",right:l(634),down:"down",left:l(640),leftUp:"leftUp",leftDown:l(326),rightUp:l(493),rightDown:"rightDown",stop:l(317),fiStop:l(700),zoomExpand:"zoomExpand",zoomNarrow:l(668),apertureFar:"apertureFar",apertureNear:l(628),focusFar:l(665),focusNear:l(604),cruiseStart:l(500),cruiseStop:l(458),fogOpen:l(733),fogClose:"fogClose",wiperOpen:l(495),wiperClose:"wiperClose"},bt=(l(316),l(226),l(730),{png:l(731),jpeg:l(231),webp:"image/webp"}),vt={sourceClose:l(221),sourceOpen:l(373),sourceended:"sourceended",startstreaming:"startstreaming",endstreaming:l(421),qualitychange:l(200)},St={canplay:"canplay",waiting:l(613),timeUpdate:l(546),ratechange:"ratechange",stalled:"stalled",progress:l(710),loadedmetadata:l(401),error:l(270),canplaythrough:l(343),complete:l(603),durationchange:l(275),emptied:l(333),ended:l(631),loadeddata:l(188),loadstart:l(712),pause:"pause",play:"play",playing:"playing",seeked:"seeked",seeking:l(522),suspend:l(444),timeupdate:"timeupdate",volumechange:l(412),readystatechange:l(450)},Et={h264:l(503),h265:l(273),av1:l(192)},wt={keyframeIsRequiredError:l(353),canNotDecodeClosedCodec:l(246),unsupportedConfiguration:"Unsupported configuration",decoderFailure:l(456),decodingError:l(251),decoderError:l(486),hevcDecodingIsNotSupported:"HEVC decoding is not supported"},Tt={abortError:l(374),abortError2:l(386),abortError3:l(545),abort:l(386)},It={loading:l(402),playing:l(552),paused:l(590),destroy:l(314)},kt={sequenceHeader:0,nalu:1},_t={keyFrame:1,interFrame:2};l(286),l(566),l(437);l(205),l(204),l(737);l(750),l(585);l(316),l(286),l(437),l(646),l(476),l(750);const Ct={worklet:l(750),script:l(585),active:"active"},Dt={name:"",index:0,icon:"",iconHover:"",iconTitle:"",activeIcon:"",activeIconHover:"",activeIconTitle:"",click:null,activeClick:null},Lt={content:"",click:null,index:0},Rt={container:"",maxSplit:4,split:1,draggable:!1,showSelectedBorder:!0,supportDblclickContainerFullscreen:!1,supportMousemoveEvent:!1,style:{border:l(717),borderSelect:l(344),background:l(315)}},Pt={multiFullscreen:l(375),dblSelected:l(261),selected:l(449),mouseover:l(294),mouseout:l(705),mouseup:l(451),mousedown:"multiMousedown",mousemove:l(594),dragstart:l(310),dragenter:l(618),dragleave:l(708),drop:l(655)},xt={special1:"3-1",special2:l(657),special3:l(488),special4:l(689),special5:""};l(514);const Mt={keyFrame:1,interFrame:2};l(476),l(376),l(578),l(219);const Bt={SUBTITLE_SEGMENTS:"subtitle-segments",HLS_MANIFEST_LOADED:l(650),HLS_LEVEL_LOADED:"hls-level-loaded",DEMUXED_TRACK:l(507),FLV_SCRIPT_DATA:l(362),METADATA_PARSED:"metadata-parsed",TTFB:l(356),LOAD_RETRY:l(743),LOAD_START:l(699),SPEED:l(675),LOAD_COMPLETE:l(260),LOAD_RESPONSE_HEADERS:l(679),SEI:"sei",SEI_IN_TIME:"sei-in-time",NO_AUDIO_TRACK:l(235),REMOVE_BUFFER:"remove-buffer",BUFFEREOS:"buffereos",SOURCEBUFFER_CREATED:l(738),SWITCH_URL_FAILED:l(377),SWITCH_URL_SUCCESS:"switch-url-success",SUBTITLE_PLAYLIST:l(510),STREAM_PARSED:l(489),ERROR:l(270)},Ft=[0,160,240,320,480,640],Ut=[0,160,240,320,480,640],Ot=["轻松","正常","较高","高"],Nt={idle:l(723),connecting:l(636),buffering:l(445),error:"error",complete:"complete"},Vt={1:"MEDIA_ERR_ABORTED",2:l(550),3:l(313),4:"MEDIA_ERR_SRC_NOT_SUPPORTED"},jt={videoDecoderInitializationFailed:l(291),decoderErrorNotSupported:l(464),audioDecoderError:"audio packet",notSupportAudioFormat:"Unsupported audio format",playFailedBecauseNotNotInteractWithTheDocumentFirst:l(666),videoDecodeError:l(466),mediaFailedToDecode:l(547),videoNSOSStatusErrorDomainError:l(652),failedToSendVideoPacketForDecoding:l(681),failedToSendAudioPacketForDecoding:l(512)},Wt={memoryAccessOutOfBounds:l(418)},Gt={video:1,audio:2},zt={PACKET_TYPE_SEQ_START:0,PACKET_TYPE_FRAMES:1,PACKET_TYPE_SEQ_END:2,PACKET_TYPE_FRAMESX:3,PACKET_TYPE_METADATA:4},Ht={FT_KEY:16,FT_INTER:32},Kt={CandidatePair:l(568),Certificate:l(554),Codec:l(701),Csrc:"csrc",DataCahnnel:l(623),InboundRtp:l(367),LocalCandidate:l(230),OutboundRtp:"outbound-rtp",PeerConnection:l(414),Receiver:l(508),RemoteCandidate:l(250),RemoteInboundRtp:"remote-inbound-rtp",RemoteOutboundRtp:"remote-outbound-rtp",Sender:l(400),Stream:"stream",Track:l(371),Transport:l(726),MediaSource:l(234)};function qt(){const t=["multiDblSelected","mediaSourceDecoderConfigurationError","webgl 上下文丢失","websocketStringMsg","talkStreamStart","playbackTimestamp","playbackShowPrecisionChange","Jb%20pro%20%E4%BD%93%E9%AA%8C%E7%BB%93%E6%9D%9F%2C%E8%AF%B7%E5%88%B7%E6%96%B0%E9%A1%B5%E9%9D%A2%E5%86%8D%E6%AC%A1%E4%BD%93%E9%AA%8C%EF%BC%8C%E5%A6%82%E9%9C%80%E8%A6%81%E8%B4%AD%E4%B9%B0%E5%95%86%E4%B8%9A%E6%8E%88%E6%9D%83%EF%BC%8C%E5%8F%AF%E4%BB%A5%E8%81%94%E7%B3%BB%E5%BE%AE%E4%BF%A1%EF%BC%9Abosswancheng",'video/mp4; codecs="hvc1.1.6.L120.90"',"error","recordCancel","webglContextLostError","hevc","mseSourceBufferBusy","durationchange","webgpu","notSupportNewWasm","playbackEndedAndReplay","websocket","initAudio","normal","open","webrtcClosed","Invalid NAL unit size","playAudio","rtp","fetchError","mediaSourceAudioInitTimeout","resize","fmp4","video decoder initialization failed","aiOcclusionDetectResult","checkFirstIFrame","multiMouseover","streamVbps","playVodSeek","playbackPauseOrResume","webrtcDisconnect","hls264UseOldDemuxer","阿里云","defaultStreamQuality","playVodNextIFrame","simdH264DecodeVideoWidthIsTooLarge","fetchErrorWorker","visibilityHiddenTimeout","videoRectContentClick","videoSEI","streamQualityChange","630290ieJUPx","multiDragstart","147xAkKtb","playType","MEDIA_ERR_DECODE","destroy","#000","g711a","stop","offscreen","hls","webTransport","初始化音频解码器失败","webrtcIceCandidateError","JessibucaPro","播放地址不能为空","playVodMseDecodeVideoError","leftDown","videoCode","遮挡物检查激活","videoPayload","closed","mtStreamStats","关闭电子放大","emptied","云台激活","电子放大","videoNalu","accelerate","Webgl 渲染失败","streamMessage","vertical","5min","isAliyunRtc","canplaythrough","#FFCC00","timeUpdate","download","ALAW",'video/mp4;codecs="hev1.1.6.L120.90"',"halfHour","webcodecsAudioDecodeError","video自动渲染失败","videoSyncAudio","A key frame is required after configure() or flush()","recordBlob","updateConfig","ttfb","videoCodec","初始化worker失败","sendWsMessage","WebTransport","multiIndex","flv-script-data","aacSequenceHeader","初始化解码worker超时","videoDecode","fetchSuccess","inbound-rtp","mseSourceEndStreaming","imageDetectActive","playVodNextFrame","track","isDropping","sourceopen","The user aborted a request","multiFullscreen","fetch","switch-url-failed","mse","websocketOpen","20251202","blob","不支持硬解码H265","webrtc不支持H265","playVodSeekEnd","playToRenderTimes","AbortError","destroyEnd","playVodEnded","canvas","load","isNakedFlow","webrtcDataChannelOpen","fullscreen","initVideoCodec","bufferByteLength","mseSourceended","metadata","occlusionDetectActive","webcodecsAudioNoDataTimeout","sender","loadedmetadata","loading","hlsTsVideoTrackPidList","mediaSourceTsIsMaxDiff","audioCode","人脸识别","half-hour","recordStart","mseWorkerAddSourceBufferError","videoElementPlayingFailedForWebrtc","right-up","volumechange","sendMessage","peer-connection","streamStats","webrtc-completed",'video/mp4; codecs="hev1.1.6.L123.b0"',"memory access out of bounds","audioPayload","decoder-pro-audio.js","endstreaming","workerEnd","resetDecode","解码失败","playbackStreamVideoFps","playVodMp4NotMoovError","audioChannelError","playVodMp4UseSrc","log","flvScriptData","flvVod","/crypto/","start","talkGetUserMediaFail","audioInfo","tenMin","tcp","playFailedError","jessibuca-pro-mp4-recorder-decoder.js","H265(HEVC)","videoStreamStats","888332xZRRlS","tsVideoTrackPidList","suspend","buffering","currentPts","audioResumeState","notConnect","multiSelected","readystatechange","multiMouseup","replayUseLastFrameShow","webcodecsUnsupportedConfigurationError","play","videoSmooth","Decoder failure","webrtcDataChannelMsg","cruiseStop","G711 not supported","Dji","videoSEISyncPts","1927317xkNjCk","播放超时重播失败","DECODER_ERROR_NOT_SUPPORTED","人脸识别激活","video decode error","updateForwardMaxRateDecodeIFrame","遮挡物检查","fullscreenError","decoderWorkerInitError","webrtcStreamH265","playVodTimeCache","talkStreamOpen","togglePerformancePanel","crashLog","warn","Webrtc","flvMetaData","webrtcOnIceConnectionStateChange","key","mseSourceBufferFull","videoTimeUpdate","isMpeg4","playVodFps","all","Decoder error","ten-min","1-1","stream-parsed","talk","aiObjectDetectorInfo","tsPrivateData","rightUp","99qtCdXB","wiperOpen","webcodecsDecodeConfigureError","created","playerAudio","aliyunRtc","cruiseStart","full","iframeIntervalTs","avc","playVodVideoSeekedByMse","playbackEndInner","recording","demuxed-track","receiver","playVodTime","subtitle-playlist","beforeDestroy","Failed to send audio packet for decoding","talkStreamInactive","container","render","decoder-pro-audio-only.js","videoWaiting","ptz","init","nakedFlow","record","seeking","waitingCheckFirstIframeTimeoutAutoWasmAndNoCheck","isMulti","webrtcFailed","MULAW","webcodecs","failedToAsynchronouslyPrepareWasm","fullScreenByStart","MP3","webrtcIceCandidate","streamEndInner","drawingRectInfo","wasm初始化异常","decoderWorkerInit","6721600sAJlWR","simd","Jb%20pro%20%E4%BD%93%E9%AA%8C%E7%BB%93%E6%9D%9F%2C%E8%AF%B7%E5%88%B7%E6%96%B0%E9%A1%B5%E9%9D%A2%E5%86%8D%E6%AC%A1%E4%BD%93%E9%AA%8C(wasm%E5%86%85%E9%83%A8%E4%BC%9A%E6%9A%82%E5%81%9C%E8%A7%A3%E7%A0%81)%EF%BC%8C%E5%A6%82%E9%9C%80%E8%A6%81%E8%B4%AD%E4%B9%B0%E5%95%86%E4%B8%9A%E6%8E%88%E6%9D%83%EF%BC%8C%E5%8F%AF%E4%BB%A5%E8%81%94%E7%B3%BB%E5%BE%AE%E4%BF%A1%EF%BC%9Abosswancheng","1060242WOxaZJ","downloadMemoryLog","playbackPrecision","websocketClose","Other","playIsNotPauseOrUrlIsNull","Fetch is aborted","timeupdate","Media failed to decode","playVodPauseOrResume","playbackEnd","MEDIA_ERR_NETWORK","global","playing","decode","certificate","DHav","decoder-pro-old.js","faceDetectActive","webgl2","videoFrame","fiveMin","I420","performance","性能面板",'video/mp4; codecs="av01.0.05M.08"',"playbackTimeScroll","jtt","webrtcError","candidate-pair","mseSourceStartStreaming","decoderWorkerUncaughtError","FMP4","物品识别激活","streamError","aiImageDetectResult","drop","mseSourceOpen","初始化解码器失败","flv","streamAbps","initVideo","加载超时重播失败","visibilityChange","playVodSeeking","playVodEndedInner","script","simdDecodeError","wcs","H264(AVC)","playbackRateChange","paused","fullscreenEndInner","mpeg4","缓冲区已满","multiMousemove","webrtc-failed","webcodecsH265NotSupport","initDecoderWorkerTimeout","focus","webtransportError","videoInfoError","watermarkConfig","mp4","complete","focusNear","webFullscreen","dynamicWatermarkConfig","playVodPause","playFailedAndPaused","highQuality","MULAW(g711u)","30min","loadingTimeoutRetryEnd","waiting","110256lHgyWF","flvBufferData","playVodVideoSeekingByMse","Simd","multiDragenter","talkGetUserMediaTimeout","volume","网络超时重播失败","mseDecodeError","data-channel","webrtc-connected","MPEG4","NV12","talkStreamMsg","apertureNear","playVodEndedAndReplay","worker","ended","Wasm","drawingRect","right","streamEnd","connecting","isWebrtcForSRS","webrtc","HEVC not supported","left","videoRenderSupportScale","M7S","硬解码不支持G711a/u音频格式","playVod","wcsDecodeError","0000000000","mediaSourceAudioG711NotSupport","buffer","HLS","hls-manifest-loaded",'video/mp4; codecs="avc1.64002A"',"Error Domain=NSOSStatusErrorDomain","pauseAndNextPlayUseLastFrameShow","talkFailedAndStop","multiDrop","mp4Vod","4-1","recordingTimestamp","isWebrtc","mseHandle","playVodDuration","Audio Decode Failed","talkStreamClose","webcodecsAudioInitTimeout","focusFar","play() failed because the user didn't interact with the document first","isFlv","zoomNarrow","ALAW(g711a)","clickInitPlayer","playbackSeek","resetVideoDecode","simdFFmpeg",'video/mp4;codecs="hev1.3.E.L120.90"',"speed","webrtcOnConnectionStateChange","mediaSourceAudioNoDataTimeout","wasmWidthOrHeightChange","load-response-headers","Video Decode Failed","Failed to send video packet for decoding","video","dhav","stats","streamDts","offline","playbackIsPause","playVodBufferedTime","3-4","解析视频分辨率失败","browser","tsPacketSizeError","initAudioCodec","mediaSourceAppendBufferError","networkDelay","simdDecodeDelayTimeout","Video not supported","audioAACSequenceHeader","load-start","fiStop","codec","simple","hlsError","recordEnd","multiMouseout","wasmDecodeError","window","multiDragleave","请求失败","progress","down","loadstart","Momibuca","playbackTime","playVodMp4Error","audioStreamStats","#343434","mseError","aliyunRtcError","tallWebsocketClosedByError","default","wcsWidthOrHeightChange","idle","mseAddSourceBufferError","wasmError","transport","playbackJustTime","playbackNextIFrame","videoSequenceHeader","opus","image/png","delta","fogOpen","playVodCalcFpsError","click","ceil","message","sourcebuffer-created","MPEG-PS","right-down","等待音频数据超时","five-min","load-retry","timeout","性能面板激活","zooming","object","recordCreateError","mseWidthOrHeightChange","worklet","loadeddata","startInner","objectDetectActive","TS流包大小异常","av1","5363610lDRLzF","kBps","playbackPreRateChange","10min","websocketError","delayTimeoutRetryEnd","webm","qualitychange","mouseDownAndUp","流异常","fullscreen$2","close","playback","audioDecode","data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAIAAABKoV4MAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAO0lEQVRYhe3NIQEAMAgAsHNLAPp3JMAFDW4wW4FFVZ0l3X237qHX6/V6vV6v1+v1er1er9frP0RmLvYPXx0DlQ6vy9kAAAAASUVORK5CYII=","webrtc-disconnected","videoElementPlayingFailed","inView","red","hlsM3u8Error","talkStreamError","mseWaitVideoCanplayTimeout","playbackNextFrame","webcodecsDecodeError","loadingTimeout","self","decoder-pro-audio-player.js","wasm解码失败","sourceclose","wasmUseVideoRenderError","playVodRateChange","online","streamSuccess","pcm","mute","player","playVodFlvError","local-candidate","image/jpeg","isHls","MediaSource解码使用canvas渲染失败","media-source","no-audio-track","webrtcConnected","mov","playVodMp4UseSrcVideoError","networkState","playVodWaiting","outOfMemoryWasm","mseSourceBufferError","点播MP4文件格式异常","wasm","white","Cannot call 'decode' on a closed codec","playbackStats","clearBuffer","mseUpdateVideoTimestamp","remote-candidate","Decoding error","AAC","debug","netBuf","pause","2cSdVPE","ghostWatermarkConfig","delayTimeout","webrtcLowFps","load-complete"];return(qt=function(){return t})()}const Qt=9e4,Yt=45e4,Jt=9e4,Xt={ws1006:"ws1006",mseDecodeError:l(622),wcsDecodeError:l(645),streamError:l(573),playVodMp4UseSrcVideoError:l(238)},$t={StartCodePS:442,StartCodeSYS:443,StartCodeMAP:444,StartCodeVideo:480,StartCodeAudio:448,PrivateStreamCode:445,MEPGProgramEndCode:441},Zt={h264:27,h265:36,aac:15,g711a:144,g711u:145,mp3:3},te={map:1048576,video:10485760,audio:1048576,skip:1048576},ee={ulaw:"ulaw",alaw:"alaw",mp3:"mp3",opus:l(730)},se=48e3;l(624),l(416),l(208),l(595);const ie={created:l(497),loading:l(402),playing:l(552)},re=typeof window===l(747)&&window[l(707)]===window?window:"object"==typeof self&&self[l(218)]===self?self:typeof global===l(747)&&global[l(551)]===global?global:void 0,ne={error:l(270)},oe={play:"播放",pause:"暂停",audio:"",mute:"",screenshot:"截图",loading:"",fullscreen:"全屏",fullscreenExit:"退出全屏",record:"录制",recordStop:"停止录制",narrow:"缩小",expand:"放大",ptz:"云台",ptzActive:l(334),zoom:l(335),zoomStop:l(332),close:"关闭",performance:l(563),performanceActive:l(745),face:l(406),faceActive:l(465),object:"物品识别",objectActive:l(572),occlusion:l(468),occlusionActive:l(328),logSave:"保存日志"},ae={wasm:l(632),simd:l(617),fSimd:"FSimd"},he={zlm:"ZLMediaKit",srs:"SRS",m7s:l(713),qiniu:"七牛云",dji:l(460),other:l(543),aliyun:l(300)},le=l(268),ce=l(538);function de(t,e){const s=pe();return(de=function(t,e){return s[t-=468]})(t,e)}!function(t){const e=de,s=t();for(;;)try{if(250898===parseInt(e(472))/1+-parseInt(e(480))/2+-parseInt(e(471))/3+parseInt(e(470))/4*(-parseInt(e(476))/5)+parseInt(e(482))/6+-parseInt(e(479))/7*(parseInt(e(484))/8)+parseInt(e(481))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(pe);class ue{constructor(t){const e=de;this.log=(e,...s)=>{const i=de;if(t[i(486)][i(474)]==b[i(468)]){const r=t[i(486)][i(483)]?"["+t[i(486)][i(483)]+"]":"";console[i(477)](i(475)+r+"[✅✅✅]["+e+"]",...s)}},this[e(478)]=(s,...i)=>{const r=e;if(t[r(486)][r(474)]==b[r(468)]||t[r(486)].debugLevel==b.warn){const e=t[r(486)][r(483)]?"["+t._opt.debugUuid+"]":"";console[r(477)](r(475)+e+r(469)+s+"]",...i)}},this[e(485)]=(s,...i)=>{const r=e,n=t[r(486)][r(483)]?"["+t[r(486)][r(483)]+"]":"";console.error(r(475)+n+r(473)+s+"]",...i)}}}function pe(){const t=["[❗❗❗][","332myWCiK","456297gBkthG","159160hGHVQz","[❌❌❌][","debugLevel","JbPro","9110NqESyr","log","warn","700KumoDB","845724QdAEui","6228900udQAXh","2640750svPxJB","debugUuid","25144wDDHfV","error","_opt","debug"];return(pe=function(){return t})()}var fe="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function me(t,e){return t(e={exports:{}},e.exports),e.exports}var ge=Object.freeze({__proto__:null,commonjsGlobal:fe,commonjsRequire:function(){throw new Error("Dynamic requires are not currently supported by rollup-plugin-commonjs")},unwrapExports:function(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t},createCommonjsModule:me,getCjsExportFromNamespace:function(t){return t&&t.default||t}});function ye(t,e){var s=be();return(ye=function(t,e){return s[t-=159]})(t,e)}!function(t){for(var e=ye,s=t();;)try{if(951815===parseInt(e(188))/1*(parseInt(e(194))/2)+parseInt(e(167))/3+parseInt(e(169))/4*(-parseInt(e(177))/5)+parseInt(e(185))/6*(parseInt(e(200))/7)+-parseInt(e(196))/8*(-parseInt(e(191))/9)+-parseInt(e(175))/10+parseInt(e(165))/11*(-parseInt(e(161))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(be);var Ae=me(function(t){var e,s,i,r,n,o;e=ye,s=typeof window!==e(172)&&typeof window.document!==e(172)?window.document:{},i=e(203)!==e(172)&&t[e(205)],r=function(){for(var t,i=e,r=[[i(176),"exitFullscreen",i(183),"fullscreenEnabled",i(174),"fullscreenerror"],["webkitRequestFullscreen","webkitExitFullscreen",i(204),i(187),i(159),i(181)],[i(173),i(190),i(184),i(190),i(159),i(181)],[i(202),i(197),"mozFullScreenElement",i(170),"mozfullscreenchange",i(180)],["msRequestFullscreen",i(206),i(193),i(168),i(166),i(192)]],n=0,o=r[i(198)],a={};n<o;n++)if((t=r[n])&&t[1]in s){for(n=0;n<t.length;n++)a[r[0][n]]=t[n];return a}return!1}(),n={change:r[e(174)],error:r[e(162)]},o={request:function(t,i){return new Promise(function(e,n){var o=ye,a=function(){var t=ye;this.off(t(179),a),e()}[o(195)](this);this.on(o(179),a);var h=(t=t||s[o(199)])[r[o(176)]](i);h instanceof Promise&&h[o(160)](a).catch(n)}[e(195)](this))},exit:function(){return new Promise(function(t,e){var i=ye;if(this[i(189)]){var n=function(){var e=i;this[e(186)](e(179),n),t()}[i(195)](this);this.on(i(179),n);var o=s[r.exitFullscreen]();o instanceof Promise&&o[i(160)](n).catch(e)}else t()}.bind(this))},toggle:function(t,s){var i=e;return this[i(189)]?this[i(201)]():this[i(182)](t,s)},onchange:function(t){this.on("change",t)},onerror:function(t){var s=e;this.on(s(178),t)},on:function(t,e){var i=n[t];i&&s.addEventListener(i,e,!1)},off:function(t,e){var i=n[t];i&&s.removeEventListener(i,e,!1)},raw:r},r?(Object[e(163)](o,{isFullscreen:{get:function(){return Boolean(s[r[e(183)]])}},element:{enumerable:!0,get:function(){return s[r[e(183)]]}},isEnabled:{enumerable:!0,get:function(){return Boolean(s[r[e(171)]])}}}),i?t[e(205)]=o:window.screenfull=o):i?t[e(205)]={isEnabled:!1}:window[e(164)]={isEnabled:!1}});function be(){var t=["webkitfullscreenerror","request","fullscreenElement","webkitCurrentFullScreenElement","6utHWhb","off","webkitFullscreenEnabled","15707HeKvVj","isFullscreen","webkitCancelFullScreen","9LzAIQS","MSFullscreenError","msFullscreenElement","236fOZqem","bind","2076248zFibDV","mozCancelFullScreen","length","documentElement","1569561PUguIJ","exit","mozRequestFullScreen","object","webkitFullscreenElement","exports","msExitFullscreen","webkitfullscreenchange","then","12aSeSSv","fullscreenerror","defineProperties","screenfull","2670404oaUWGO","MSFullscreenChange","2501337qukPXx","msFullscreenEnabled","16652LkCSjE","mozFullScreenEnabled","fullscreenEnabled","undefined","webkitRequestFullScreen","fullscreenchange","16058730XrQRnX","requestFullscreen","445IGMPtG","error","change","mozfullscreenerror"];return(be=function(){return t})()}Ae.isEnabled;const ve=we;!function(t){const e=we,s=t();for(;;)try{if(781663===parseInt(e(302))/1*(parseInt(e(297))/2)+-parseInt(e(285))/3+parseInt(e(295))/4+parseInt(e(279))/5+-parseInt(e(298))/6*(-parseInt(e(293))/7)+-parseInt(e(292))/8*(parseInt(e(306))/9)+-parseInt(e(282))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Ee);class Se{constructor(t){const e=we;this._buffer=t,this[e(307)]=0,this._total_bytes=t.byteLength,this[e(281)]=8*t[e(296)],this._current_word=0,this._current_word_bits_left=0}[ve(291)](){this[ve(278)]=null}[ve(277)](){const t=ve;let e=this[t(289)]-this[t(307)];if(e<=0)return void console[t(283)]("ExpGolomb: _fillCurrentWord() but no bytes available",this._total_bytes,this._buffer_index);let s=Math[t(301)](4,e),i=new Uint8Array(4);i[t(303)](this[t(278)][t(288)](this[t(307)],this[t(307)]+s)),this[t(284)]=new DataView(i[t(286)])[t(305)](0,!1),this[t(307)]+=s,this[t(287)]=8*s}[ve(300)](t){const e=ve;if(t>32&&console.error(e(280)),t<=this[e(287)]){let s=this._current_word>>>32-t;return this[e(284)]<<=t,this._current_word_bits_left-=t,s}let s=this[e(287)]?this[e(284)]:0;s>>>=32-this[e(287)];let i=t-this[e(287)];this[e(277)]();let r=Math.min(i,this[e(287)]),n=this[e(284)]>>>32-r;return this[e(284)]<<=r,this[e(287)]-=r,s=s<<r|n,s}[ve(304)](){return 1===this[ve(300)](1)}readByte(){return this[ve(300)](8)}_skipLeadingZero(){const t=ve;let e;for(e=0;e<this[t(287)];e++)if(this[t(284)]&2147483648>>>e)return this._current_word<<=e,this[t(287)]-=e,e;return this[t(277)](),e+this[t(290)]()}[ve(294)](){const t=ve;let e=this._skipLeadingZero();return this[t(300)](e+1)-1}[ve(299)](){let t=this[ve(294)]();return 1&t?t+1>>>1:-1*(t>>>1)}}function Ee(){const t=["33147GtuyhA","_buffer_index","_fillCurrentWord","_buffer","4699300NYLIUN","ExpGolomb: readBits() bits exceeded max 32bits!","_total_bits","28144490TpTZRg","error","_current_word","521760gsUolh","buffer","_current_word_bits_left","subarray","_total_bytes","_skipLeadingZero","destroy","824rbwjyf","7juOrgY","readUEG","5208952RuFgAY","byteLength","113798gtjbJu","6322788zNSFxP","readSEG","readBits","min","15YonFPi","set","readBool","getUint32"];return(Ee=function(){return t})()}function we(t,e){const s=Ee();return(we=function(t,e){return s[t-=277]})(t,e)}const Te=Be;!function(t){const e=Be,s=t();for(;;)try{if(145357===parseInt(e(379))/1+-parseInt(e(339))/2+parseInt(e(372))/3+parseInt(e(378))/4+-parseInt(e(323))/5+-parseInt(e(362))/6*(-parseInt(e(363))/7)+parseInt(e(343))/8*(-parseInt(e(360))/9))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Pe);const Ie=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350,-1,-1,-1],ke=Ie,_e=Ie;function Ce(t){const e=((192&t[2])>>>6)+1,s=(60&t[2])>>>2,i=(1&t[2])<<2|(192&t[3])>>>6,r=new Uint8Array([(3&e)<<3|(14&s)>>1,(1&s)<<7|(15&i)<<3]);return{profile:e,sampleRateIndex:s,sampleRate:ke[s],channel:i,audioSpecificConfig:r}}function De({profile:t,sampleRate:e,channel:s}){return new Uint8Array([175,0,t<<3|(14&e)>>1,(1&e)<<7|s<<3])}function Le(t){const e=Be,s=new Uint8Array(t[e(344)]+2);return s.set([175,1],0),s[e(321)](t,2),s}function Re(t){const e=Be;return xe(t)&&t[1]===kt[e(368)]}function Pe(){const t=["aac","userAgent","findNextSyncwordOffset","allStreamsSameTimeFraming zero is Not Supported","sequenceHeader","sample_rate","look","android","254370xPqXxA","mp4a.40.","readBits","sampling_index","indexOf","sampling_freq_index","533368cMTWMU","256989jQCOsz","byteLength","Invalid sampling index: ","data_","getLATMValue","read_golomb","buffer","hasIncompleteData","profile: ","sbr","log","eof_flag_","readNextAACFrame","channel_config","more than 2 numLayer Not Supported","set","readBool","422875lKngYU","audio_object_type","Could not found ADTS syncword until payload end","toLowerCase","mp4a.40.2","current_syncword_offset_","Flv: AAC invalid sampling frequency index!","data","sampling_frequency","destroy","subarray","AAC","bufoff",". Only frameLengthType = 0 Supported","Flv: AAC invalid channel configuration","getIncompleteData","417182eKkHMK","unshift","iserro","read","160DCByhW","length","more than 2 numProgram Not Supported","bufpos","readByte","ext_object_type","slice","has_last_incomplete_data","error","object_type","sampleRate: ","other_data_present","chan_config","push","aacEncoderConfigurationRecord","more than 2 numSubFrames Not Supported","channels","103968VDKpeS","buflen","8454fAiQmA","966crlEbo"];return(Pe=function(){return t})()}function xe(t){const e=Be;return t[0]>>4===it[e(334)]}function Me(t,e){if(t===Be(327)){if(1===e)return new Uint8Array([0,200,0,128,35,128]);if(2===e)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(3===e)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(4===e)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(5===e)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===e)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===e)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===e)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===e)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])}}function Be(t,e){const s=Pe();return(Be=function(t,e){return s[t-=316]})(t,e)}function Fe(t,e=9e4){return 1024*e/t}function Ue(t,e){const s=Be,i=t.length;let r=0;for(;r+2<i&&(255!==t[r]||240!=(246&t[r+1]));)r++;if(r>=i)return;const n=r,o=[],a=(60&t[r+2])>>>2,h=Ie[a];if(!h)throw new Error(s(381)+a);const l=((192&t[r+2])>>>6)+1,c=(1&t[r+2])<<2|(192&t[r+3])>>>6;let d,u,p=0;const f=Fe(h);for(;r+7<i;)if(255===t[r]&&240==(246&t[r+1])){if(u=(3&t[r+3])<<11|t[r+4]<<3|(224&t[r+5])>>5,i-r<u)break;d=2*(1&~t[r+1]),o[s(356)]({pts:e+p*f,data:t[s(333)](r+7+d,r+u)}),p++,r+=u}else r++;return{skip:n,remaining:r>=i?void 0:t[s(333)](r),frames:o,samplingFrequencyIndex:a,sampleRate:h,objectType:l,channelCount:c,originCodec:s(373)+l}}const Oe=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350];function Ne(t){const e=Be;let s=new Uint8Array(t),i=null,r=0,n=0,o=0,a=null;if(r=n=s[0]>>>3,o=(7&s[0])<<1|s[1]>>>7,o<0||o>=Oe.length)return void console[e(351)](e(329));let h=Oe[o],l=(120&s[1])>>>3;if(l<0||l>=8)return void console.log(e(337));5===r&&(a=(7&s[1])<<1|s[2]>>>7,s[2]);let c=re.navigator[e(365)][e(326)]();return-1!==c[e(376)]("firefox")?o>=6?(r=5,i=new Array(4),a=o-3):(r=2,i=new Array(2),a=o):-1!==c.indexOf(e(371))?(r=2,i=new Array(2),a=o):(r=5,a=o,i=new Array(4),o>=6?a=o-3:1===l&&(r=2,i=new Array(2),a=o)),i[0]=r<<3,i[0]|=(15&o)>>>1,i[1]=(15&o)<<7,i[1]|=(15&l)<<3,5===r&&(i[1]|=(15&a)>>>1,i[2]=(1&a)<<7,i[2]|=8,i[3]=0),{audioType:e(364),config:i,sampleRate:h,channelCount:l,objectType:r,codec:e(373)+r,originalCodec:"mp4a.40."+n}}class Ve{constructor(t){const e=Be;this[e(385)]=t,this.buflen=t.length,this[e(346)]=0,this.bufoff=0,this[e(341)]=!1}read(t){const e=Be;let s=0,i=0;for(;t;){if(t<0||this[e(346)]>=this[e(361)])return this[e(341)]=!0,0;this[e(341)]=!1,i=this[e(335)]+t>8?8-this[e(335)]:t,s<<=i,s+=this.buffer[this.bufpos]>>8-this[e(335)]-i&255>>8-i,this.bufoff+=i,t-=i,8==this.bufoff&&(this.bufpos++,this[e(335)]=0)}return s}[Te(370)](t){const e=Te;let s=this[e(346)],i=this[e(335)],r=this[e(342)](t);return this.bufpos=s,this[e(335)]=i,r}[Te(384)](){const t=Te;let e;for(e=0;0==this[t(342)](1)&&!this.iserro;e++);return(1<<e)+this[t(342)](e)-1}}function je(t){const e=Te;let s=t[e(342)](5);return 31===s&&(s=t[e(342)](6)+32),s}function We(t,e){const s=Te;return e[s(375)]=t[s(342)](4),15==e[s(375)]?t[s(342)](24):Ge[e[s(375)]]}const Ge=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350,0,0,0],ze=[0,1,2,3,4,5,6,8];class He{constructor(t){const e=Te;this[e(382)]=t,this[e(317)]=!1,this[e(328)]=this.findNextSyncwordOffset(0),this[e(317)]&&console.error(e(325))}[Te(366)](t){const e=Te;let s=t,i=this[e(382)];for(;;){if(s+7>=i.byteLength)return this.eof_flag_=!0,i[e(380)];if(4095===(i[s+0]<<8|i[s+1])>>>4)return s;s++}}[Te(318)](){const t=Te;let e=this[t(382)],s=null;for(;null==s&&!this.eof_flag_;){let i=this[t(328)],r=(8&e[i+1])>>>3,n=(6&e[i+1])>>>1,o=1&e[i+1],a=(192&e[i+2])>>>6,h=(60&e[i+2])>>>2,l=(1&e[i+2])<<2|(192&e[i+3])>>>6,c=(3&e[i+3])<<11|e[i+4]<<3|(224&e[i+5])>>>5;if(e[i+6],i+c>this[t(382)][t(380)]){this[t(317)]=!0,this[t(350)]=!0;break}let d=1===o?7:9,u=c-d;i+=d;let p=this[t(366)](i+u);if(this[t(328)]=p,0!==r&&1!==r||0!==n)continue;let f=e.subarray(i,i+u);s={},s[t(324)]=a+1,s[t(377)]=h,s[t(331)]=ke[h],s[t(319)]=l,s.data=f}return s}[Te(386)](){return this[Te(350)]}[Te(338)](){const t=Te;return this[t(350)]?this.data_[t(333)](this[t(328)]):null}}class Ke{constructor(t){const e=Te;this[e(382)]=t,this[e(317)]=!1,this[e(328)]=this[e(366)](0),this[e(317)]&&console[e(351)](e(325))}[Te(366)](t){const e=Te;let s=t,i=this[e(382)];for(;;){if(s+1>=i[e(380)])return this[e(317)]=!0,i.byteLength;if(695===(i[s+0]<<3|i[s+1]>>>5))return s;s++}}[Te(383)](t){const e=Te;let s=t.readBits(2),i=0;for(let r=0;r<=s;r++)i<<=8,i|=t[e(347)]();return i}[Te(318)](t){const e=Te;let s=this[e(382)],i=null;for(;null==i&&!this.eof_flag_;){let r=this.current_syncword_offset_,n=(31&s[r+1])<<8|s[r+2];if(r+3+n>=this[e(382)][e(380)]){this[e(317)]=!0,this[e(350)]=!0;break}let o=new Se(s[e(333)](r+3,r+3+n)),a=null;if(o[e(322)]()){if(null==t){console.warn("StreamMuxConfig Missing"),this.current_syncword_offset_=this[e(366)](r+3+n),o.destroy();continue}a=t}else{let t=o.readBool();if(t&&o[e(322)]()){console[e(351)]("audioMuxVersionA is Not Supported"),o[e(332)]();break}if(t&&this[e(383)](o),!o[e(322)]()){console[e(351)](e(367)),o[e(332)]();break}if(0!==o[e(374)](6)){console.error(e(358)),o[e(332)]();break}if(0!==o[e(374)](4)){console[e(351)](e(345)),o.destroy();break}if(0!==o[e(374)](3)){console[e(351)](e(320)),o[e(332)]();break}let s=t?this.getLATMValue(o):0,i=o[e(374)](5);s-=5;let r=o[e(374)](4);s-=4;let n=o.readBits(4);s-=4,o[e(374)](3),s-=3,s>0&&o[e(374)](s);let h=o.readBits(3);if(0!==h){console[e(351)]("frameLengthType = "+h+e(336)),o[e(332)]();break}o[e(347)]();let l=o[e(322)]();if(l)if(t)this[e(383)](o);else{let t=0;for(;;){t<<=8;let s=o[e(322)]();if(t+=o.readByte(),!s)break}console[e(316)](t)}o[e(322)]()&&o.readByte(),a={},a.audio_object_type=i,a[e(377)]=r,a[e(331)]=ke[a[e(377)]],a[e(319)]=n,a[e(354)]=l}let h=0;for(;;){let t=o.readByte();if(h+=t,255!==t)break}let l=new Uint8Array(h);for(let t=0;t<h;t++)l[t]=o.readByte();i={},i[e(324)]=a[e(324)],i.sampling_freq_index=a.sampling_freq_index,i[e(331)]=ke[a.sampling_freq_index],i[e(319)]=a[e(319)],i.other_data_present=a[e(354)],i[e(330)]=l,this.current_syncword_offset_=this[e(366)](r+3+n)}return i}[Te(386)](){return this[Te(350)]}[Te(338)](){const t=Te;return this[t(350)]?this[t(382)][t(333)](this.current_syncword_offset_):null}}function qe(t,e=0){return(t[e]<<24>>>0)+(t[e+1]<<16)+(t[e+2]<<8)+(t[e+3]||0)}function Qe(t){const e=Xe,s=t.length;let i=2,r=0;for(;null!==t[i]&&void 0!==t[i]&&1!==t[i];)i++;if(i++,r=i+2,r>=s)return[];const n=[];for(;r<s;)switch(t[r]){case 0:if(0!==t[r-1]){r+=2;break}if(0!==t[r-2]){r++;break}i!==r-2&&n[e(274)](t[e(263)](i,r-2));do{r++}while(1!==t[r]&&r<s);i=r+1,r=i+2;break;case 1:if(0!==t[r-1]||0!==t[r-2]){r+=3;break}i!==r-2&&n[e(274)](t[e(263)](i,r-2)),i=r+1,r=i+2;break;default:r+=3}return i<s&&n[e(274)](t[e(263)](i)),n}function Ye(t,e=4){const s=Xe;if(t.length<4)return[];const i=t[s(261)],r=[];let n,o=0;for(;o+e<i;)if(n=qe(t,o),3===e&&(n>>>=8),o+=e,n){if(o+n>i)break;r[s(274)](t[s(263)](o,o+n)),o+=n}return r}function Je(t){const e=Xe,s=t.byteLength,i=[];let r=1;for(;r<s-2;)0===t[r]&&0===t[r+1]&&3===t[r+2]?(i[e(274)](r+2),r+=2):r++;if(!i.length)return t;const n=s-i[e(261)],o=new Uint8Array(n);let a=0;for(r=0;r<n;a++,r++)a===i[0]&&(a++,i[e(273)]()),o[r]=t[a];return o}function Xe(t,e){const s=Ze();return(Xe=function(t,e){return s[t-=255]})(t,e)}function $e(t,e=!1){const s=Xe,i=t[s(261)];let r=e?2:1,n=0,o=0,a="";for(;255===t[r];)n+=255,r++;for(n+=t[r++];255===t[r];)o+=255,r++;if(o+=t[r++],5===n&&i>r+16)for(let e=0;e<16;e++)a+=t[r][s(278)](16).padStart(2,"0"),r++;return{payload:t[s(263)](r),type:n,size:o,uuid:a}}function Ze(){const t=["toString","411302EUxEyy","buffer","byteLength","error","81183SRWzun","vps","pps","data","39176xdhxde","length","5230yCOgAx","subarray","6301200XCeLNu","8519115bFEeme","Error writing NALU from AVCC: buffer overflow","119mmtFcI","1ZGtWjr","56728199HmQhzi","sps","16VEBkIE","24291nwmIBE","shift","push","slice","12SQZjXl","set"];return(Ze=function(){return t})()}function ts(t){const e=Xe,s=t.byteLength,i=new Uint8Array(4);i[0]=s>>>24&255,i[1]=s>>>16&255,i[2]=s>>>8&255,i[3]=255&s;const r=new Uint8Array(s+4);return r[e(277)](i,0),r[e(277)](t,4),r}!function(t){const e=Xe,s=t();for(;;)try{if(977351===parseInt(e(268))/1*(-parseInt(e(279))/2)+-parseInt(e(256))/3*(-parseInt(e(271))/4)+-parseInt(e(265))/5+-parseInt(e(264))/6+-parseInt(e(267))/7*(-parseInt(e(260))/8)+parseInt(e(272))/9*(-parseInt(e(262))/10)+parseInt(e(269))/11*(parseInt(e(276))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Ze);const es=_i;function ss(){}function is(t){const e=_i;let s=null;const i=[e(509),e(697),e(569),e(600)];let r=0;for(;!s&&r<i[e(581)];){const n=i[r];try{let i={preserveDrawingBuffer:!0};s=t[e(703)](n,i)}catch(t){console[e(548)](t),s=null}(!s||typeof s[e(524)]!==e(646))&&(s=null),++r}return s}function rs(t){const e=_i;let s=null;return s=t[e(703)](e(672)),s}function ns(t=""){const e=_i,s=t[e(686)](","),i=atob(s[1]),r=s[0].replace(e(513),"")[e(393)](e(613),"");let n=i.length,o=new Uint8Array(n);for(;n--;)o[n]=i[e(503)](n);return new File([o],"file",{type:r})}function os(){return Date[_i(397)]()}function as(t,e,s){const i=_i;return Math.max(Math[i(627)](t,Math[i(495)](e,s)),Math[i(627)](e,s))}function hs(t,e,s){const i=_i;if(t)return typeof e===i(487)?Object[i(726)](e)[i(624)](s=>{hs(t,s,e[s])}):t.style[e]=s,t}function ls(t,e,s=!0){const i=_i;if(!t)return 0;const r=getComputedStyle(t,null)[i(582)](e);return s?parseFloat(r):r}function cs(){const t=_i;return performance&&typeof performance.now===t(646)?performance[t(397)]():Date.now()}function ds(t){let e=0,s=cs();return i=>{if(!xs(i))return;e+=i;const r=cs(),n=r-s;n>=1e3&&(t(e/n*1e3),s=r,e=0)}}!function(t){const e=_i,s=t();for(;;)try{if(978611===parseInt(e(626))/1+parseInt(e(468))/2*(parseInt(e(429))/3)+-parseInt(e(387))/4*(-parseInt(e(542))/5)+-parseInt(e(439))/6+-parseInt(e(598))/7+-parseInt(e(424))/8+parseInt(e(418))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Ji),(()=>{const t=_i;try{if(typeof WebAssembly===t(487)&&typeof WebAssembly[t(531)]===t(646)){const e=new(WebAssembly[t(720)])(Uint8Array.of(0,97,115,109,1,0,0,0));if(e instanceof WebAssembly[t(720)])return new WebAssembly.Instance(e)instanceof WebAssembly[t(636)]}}catch(t){}})();const us=es(508),ps=es(408),fs='"12-25-2025"';es(508);const ms=us===es(584),gs=es(641);function ys(){const t=es;return/iphone|ipod|android.*mobile|windows.*phone|blackberry.*mobile/i[t(527)](window[t(396)][t(601)].toLowerCase())}function As(){return!(ys()||function(){const t=es;return/ipad|android(?!.*mobile)|tablet|kindle|silk/i[t(527)](window[t(396)].userAgent[t(637)]())}())}function bs(){const t=es,e=window[t(396)].userAgent[t(637)]();return/android/i.test(e)}function vs(){const t=es,e=window.navigator[t(601)].toLowerCase();return/firefox/i[t(527)](e)}function Ss(){const t=es,e=window[t(396)][t(601)].toLowerCase()||"",s={type:"",version:""},i={IE:window.ActiveXObject||"ActiveXObject"in window,Chrome:e[t(610)](t(525))>-1&&e[t(610)](t(673))>-1,Firefox:e[t(610)]("firefox")>-1,Opera:e.indexOf(t(651))>-1,Safari:e[t(610)](t(673))>-1&&-1==e[t(610)](t(525)),Edge:e[t(610)]("edge")>-1||e[t(610)]("edg")>-1,QQBrowser:/qqbrowser/[t(527)](e),WeixinBrowser:/MicroMessenger/i[t(527)](e)};for(let r in i)if(i[r]){let i="";if("IE"===r){const s=e[t(734)](/(msie\s|trident.*rv:)([\w.]+)/);s&&s[t(581)]>2&&(i=e.match(/(msie\s|trident.*rv:)([\w.]+)/)[2])}else if(r===t(709)){for(let e in navigator[t(485)])navigator[t(485)][e][t(445)]===t(444)&&(r=t(677));const s=e[t(734)](/chrome\/([\d.]+)/);s&&s.length>1&&(i=s[1])}else if(r===t(563)){const s=e[t(734)](/firefox\/([\d.]+)/);s&&s[t(581)]>1&&(i=s[1])}else if("Opera"===r){const s=e[t(734)](/opera\/([\d.]+)/);s&&s[t(581)]>1&&(i=s[1])}else if(r===t(403)){const s=e[t(734)](/version\/([\d.]+)/);s&&s.length>1&&(i=s[1])}else if("Edge"===r){const s=e[t(734)](/edge\/([\d.]+)/)||e[t(734)](/edg\/([\d.]+)/);s&&s[t(581)]>1&&(i=s[1])}else if(r===t(549)){const s=e[t(734)](/qqbrowser\/([\d.]+)/);s&&s[t(581)]>1&&(i=s[1])}s[t(445)]=r,s.version=parseInt(i)}return s}function Es(){const t=es,e=window.navigator[t(601)][t(637)]();return e&&/iphone|ipad|ipod|ios/[t(527)](e)}function ws(){const t=es,e=window[t(396)][t(601)];return!e[t(734)](/Chrome/gi)&&!!e[t(734)](/Safari/gi)}function Ts(t,e,s){const i=es;if(0===arguments[i(581)])return null;var r,n=e||"{y}-{m}-{d} {h}:{i}:{s}";if(typeof t===i(487)?r=t:(10===(""+t)[i(581)]&&(t=1e3*parseInt(t)),t=+t,r=new Date(t)),s){const t=r[i(595)]();t>0&&(r=new Date(r.getTime()+(1e3-t)))}var o={y:r[i(710)](),m:r[i(680)]()+1,d:r[i(565)](),h:r[i(708)](),i:r[i(423)](),s:r[i(657)](),a:r[i(638)]()};return n[i(393)](/{(y|m|d|h|i|s|a)+}/g,(t,e)=>{var s=o[e];return"a"===e?["一","二","三","四","五","六","日"][s-1]:(t[i(581)]>0&&s<10&&(s="0"+s),s||0)})}function Is(){return ks()}function ks(){const t=es;let e=!1;return t(619)in re&&typeof re[t(619)]===t(646)&&(e=!0),e}function _s(t){if(typeof t!==es(561))return t;var e=Number(t);return isNaN(e)?t:e}function Cs(){const t=es;return"xxxxxxxxxxxx4xxx"[t(393)](/[xy]/g,function(e){const s=t;var i=16*Math[s(570)]()|0;return("x"==e?i:3&i|8)[s(522)](16)})}function Ds(t,e){let s,i,r=!1;return function n(...o){const a=_i;if(r)return s=o,void(i=this);r=!0,t[a(434)](this,o),setTimeout(()=>{r=!1,s&&(n[a(434)](i,s),s=null,i=null)},e)}}function Ls(){return Ae[es(504)]}function Rs(t){return Ls()&&Ae[es(554)]===t}function Ps(t){const e=es;if(null==t||""==t)return e(567);const s=new Array(e(381),"KB","MB","GB","TB","PB","EB","ZB","YB");let i=0;const r=parseFloat(t);i=Math[e(414)](Math[e(586)](r)/Math[e(586)](1024));var n=r/Math[e(431)](1024,i);return(n=n[e(694)](2))+s[i]}function xs(t){const e=es;return"[object Number]"===Object.prototype[e(522)].call(t)}function Ms(){const t=es;let e=!1;return t(670)in re&&re[t(670)]&&(re[t(670)][t(660)](dt[t(674)])||re[t(670)].isTypeSupported(dt[t(597)])||re[t(670)][t(660)](dt[t(394)])||re.MediaSource[t(660)](dt[t(473)])||re[t(670)][t(660)](dt[t(385)])||re[t(670)][t(660)](dt[t(545)]))&&(e=!0),e}function Bs(){const t=es;let e=!1;return!(t(670)in re)&&"ManagedMediaSource"in re&&re[t(650)]&&(re[t(650)].isTypeSupported(dt.hvc)||re[t(650)][t(660)](dt.hev)||re[t(650)][t(660)](dt[t(394)])||re[t(650)][t(660)](dt[t(473)])||re[t(650)][t(660)](dt.hev4)||re[t(650)].isTypeSupported(dt[t(545)]))&&(e=!0),e}function Fs(){const t=es,e=Ss();return e[t(445)][t(637)]()===t(525)&&e[t(533)]>=107}function Us(){let t=!1;return es(729)in window&&(t=!0),t}function Os(){let t=!1;return es(679)in window&&(t=!0),t}function Ns(t,e){const s=es;let i=window[s(510)][s(456)](e),r=window[s(398)][s(724)]("a");r[s(460)]=t,r[s(558)]=i;let n=window.document.createEvent("MouseEvents");n[s(648)]("click",!0,!0),r.dispatchEvent(n),setTimeout(()=>{const t=s;window.URL[t(472)](i)},Es()?1e3:0)}function Vs(t){return null==t}function js(t){return!0===t||!1===t}function Ws(t){return!Vs(t)}function Gs(t){const e=es;let s={left:"",right:"",top:"",bottom:"",opacity:1,backgroundColor:"",image:{src:"",width:e(647),height:"60"},text:{content:"",fontSize:"14",color:e(622),width:"",height:""},rect:{color:e(594),lineWidth:2,width:"",height:"",fill:"",fillOpacity:.2},line:{x1:"",y1:"",x2:"",y2:"",color:e(594),lineWidth:2},polygon:{color:e(594),lineWidth:2,list:[],fill:"",fillOpacity:.2},html:""};const i=Object[e(707)](s[e(481)],t.image||{}),r=Object[e(707)](s[e(663)],t.text||{}),n=Object[e(707)](s[e(656)],t[e(656)]||{}),o=Object[e(707)](s.line,t[e(738)]||{});return s=Object[e(707)](s,t,{image:i,text:r,rect:n,line:o}),s}function zs(t,e){const s=es;let i={container:t||"",text:"",opacity:"",angle:"",color:"",fontSize:"",fontFamily:"",xSpace:"",ySpace:""};return i=Object[s(707)](i,e),{watermark_parent_node:i[s(742)],watermark_alpha:i[s(529)],watermark_angle:i.angle,watermark_fontsize:i[s(482)],watermark_color:i[s(446)],watermark_font:i[s(665)],watermark_txt:i.text,watermark_x_space:i[s(455)],watermark_y_space:i[s(704)]}}function Hs(t,e,s){return new Promise((i,r)=>{const n=_i;let o=Gs(e);if(!o.image[n(572)]&&!o[n(663)][n(440)])return i(t);let a=document[n(724)](n(578));a[n(616)]=e[n(616)],a[n(416)]=e[n(416)];let h=a.getContext("2d");s&&(h[n(486)]=!0,h[n(486)]&&(h.imageSmoothingQuality="high"));let l=0,c=0;xs(o[n(589)])?l=o[n(589)]:xs(o[n(590)])&&(l=a[n(616)]-o[n(590)]),xs(o[n(552)])?c=o[n(552)]:xs(o[n(442)])&&(c=a[n(416)]-o[n(442)]);const d=new Image;d[n(572)]=t,d[n(723)]=()=>{const t=n;if(h[t(562)](d,0,0),o[t(481)]&&o[t(481)][t(572)]){const s=new Image;s[t(572)]=o[t(481)][t(572)],s[t(449)](t(750),t(544)),s[t(723)]=()=>{const r=t;l-=o[r(481)][r(616)],h[r(562)](s,l,c,o[r(481)].width,o[r(481)][r(416)]),i(a[r(458)](e[r(713)],e[r(735)]))},s[t(518)]=t=>{r()}}else o[t(663)]&&o[t(663)].content&&(h[t(687)]=o[t(663)][t(482)]+t(467),h[t(412)]=o[t(663)][t(446)],h[t(714)]=t(590),h[t(618)](o[t(663)][t(440)],l,c),i(a.toDataURL(e[t(713)],e.quality)))},d[n(518)]=t=>{r(t)}})}function Ks(t){var e,s=0;if(0===t[es(581)])return s;for(e=0;e<t.length;e++)s=(s<<5)-s+t.charCodeAt(e),s|=0;return s}function qs(t,e,s){return new Promise((i,r)=>{const n=_i;if(!e[n(557)])return i(t);let o=document[n(724)](n(578));o[n(616)]=e[n(616)],o[n(416)]=e[n(416)];let a=o[n(703)]("2d");s&&(a[n(486)]=!0,a[n(486)]&&(a[n(443)]="high"));const h=new Image;h[n(572)]=t,h.onload=()=>{const t=n;a.drawImage(h,0,0);const s=Ks(e.copyright),r=a[t(690)](0,0,o.width,o[t(416)]);(function(t,e){for(var s=t.data,i=0,r=0;r<32;r++){var n=e>>r&1,o=254&s[i]|n;s[i]=o,i+=4}})(r,s),a[t(688)](r,0,0),i(o[t(458)](e[t(713)],e[t(735)]))},h[n(518)]=t=>{r(t)}})}function Qs(t){const e=es;var s;if(t>-1){var i=Math[e(414)](t/3600),r=Math[e(414)](t/60)%60,n=t%60;s=i<10?"0"+i+":":i+":",r<10&&(s+="0"),s+=r+":",(n=Math[e(417)](n))<10&&(s+="0"),s+=n.toFixed(0)}return s}function Ys(t,e){return new VideoFrame(t,e)}function Js(t,e){const s=es;let i="";if(t>-1){const r=Math.floor(t/60)%60;let n=t%60;n=Math[s(417)](n),i=r<10?"0"+r+":":r+":",n<10&&(i+="0"),i+=n,!Vs(e)&&(e<10&&(e="0"+e),i+=":"+e)}return i}function Xs(t){const e=es;let s="";if(t>-1){const i=Math[e(414)](t/60/60)%60;let r=Math[e(414)](t/60)%60,n=t%60;r=Math[e(417)](r),s=i<10?"0"+i+":":i+":",r<10&&(s+="0"),s+=r+":",n<10&&(s+="0"),s+=n}return s}function $s(t,e){const s=es,i=Math[s(414)](e/60)%60,r=Math[s(414)](e%60);return new Date(t)[s(438)](i,r,0,0)}function Zs(t,e){const s=es,i=Math[s(414)](e/60/60)%60,r=Math[s(414)](e/60)%60,n=e%60;return new Date(t)[s(438)](i,r,n,0)}function ti(t){return(""+t)[es(581)]}function ei(t){const e=es;return null!==t&&typeof t===e(487)&&!Array[e(433)](t)}function si(t){return t&&0===Object[es(726)](t).length}function ii(t){return!si(t)}function ri(t){return typeof t===es(561)}const ni=()=>{const t=es,e=window[t(396)][t(601)];return/MicroMessenger/i[t(527)](e)},oi=()=>{const t=es,e=window[t(396)][t(601)];return/Chrome/i.test(e)},ai=()=>ni()&&bs(),hi=()=>(()=>{const t=es;return!(typeof window.dd===t(645)||!window.dd||!window.dd[t(533)])||navigator[t(601)].toLowerCase().indexOf(t(422))>-1})()&&bs();function li(t){const e=es,s=t||window.event;return s.target||s[e(721)]}function ci(){return vs()&&function(){const t=es,e=navigator[t(601)][t(637)]();return/macintosh|mac os x/i[t(527)](e)}()}function di(t){return t&&"function"==typeof t}function ui(t){return t/2%4==0}function pi(t){const e=es;if(ys()){let s=0,i=0;if(t[e(405)]&&1===t.touches[e(581)]){let r=t[e(405)][0];s=r[e(642)],i=r[e(659)]}return{posX:s,posY:i}}let s=0,i=0;const r=t||window[e(602)];return r[e(575)]||r[e(559)]?(s=r.pageX,i=r[e(559)]):(r[e(642)]||r[e(659)])&&(s=t.clientX+document[e(712)][e(391)]+document[e(668)][e(391)],i=t[e(659)]+document[e(712)][e(390)]+document[e(668)].scrollTop),{posX:s,posY:i}}function fi(){const t=es;let e=document.createElement(t(653)),s=e.canPlayType("application/vnd.apple.mpegurl");return e=null,s}function mi(t){const e=es;let s=xi(t[e(749)])&&(t[e(706)]||t[e(717)]&&!t[e(407)])&&xi(t[e(437)]);return!!(xi(s)&&t[e(706)]&&t[e(699)]&&xi(t.demuxUseWorker))||(!!(xi(s)&&t[e(717)]&&t[e(696)]&&xi(t[e(437)]))||s)}function gi(t){const e=es;let s=null,i=31&t[0];return(i===ot[e(528)]||i===ot[e(580)])&&(s=st.h264),!s&&(i=(126&t[0])>>1,(i===at[e(715)]||i===at[e(528)]||i===at.pps)&&(s=st[e(727)])),s}function yi(t){const e=es;const s=function(t){const e=_i;return t[e(736)]()[e(734)](/^function\s*\w*\s*\([\w\s,]*\)\s*{([\w\W]*?)}$/)[1]}(t[e(522)]()),i=new Blob([s],{type:e(698)});return URL.createObjectURL(i)}function Ai(t){return yi(t)}function bi(t){t[es(425)]()}function vi(t){t[es(425)]()}function Si(){const t=es;return"https:"===window[t(488)][t(588)]||window[t(488)][t(389)]===t(497)}function Ei(t){const e=es,s=Object.prototype[e(522)];return function(t){const i=e;switch(s[i(516)](t)){case i(658):case i(652):case i(539):return!0;default:try{return t instanceof Error}catch(t){return!1}}}(t)?t[e(608)]:null==t?"":typeof t===e(487)?JSON[e(432)](t,null,2):String(t)}function wi(t,e){const s=es,i=e?t[s(471)](t=>t[s(445)]===e):t;if(i[s(581)]<2)return null;let r=[],n=[i[0]];for(let t=1;t<i[s(581)];t++){const e=i[t].ts-i[t-1].ts;e>=0&&e<=150?n[s(741)](i[t]):(n[s(581)]>=10&&r.push(n),n=[i[t]])}if(n[s(581)]>=10&&r[s(741)](n),0===r[s(581)])return null;const o=r[s(643)]((t,e)=>e[s(581)]>t[s(581)]?e:t);let a=0;for(let t=1;t<o[s(581)];t++)a+=o[t].ts-o[t-1].ts;const h=a/(o[s(581)]-1);return Math[s(417)](1e3/h)}function Ti(t){const e=es;for(var s=(t+"="[e(682)]((4-t[e(581)]%4)%4)).replace(/\-/g,"+")[e(393)](/_/g,"/"),i=window[e(585)](s),r=new Uint8Array(i.length),n=0;n<i[e(581)];++n)r[n]=i[e(503)](n);return r}function Ii(t){const e=es,s=/(msie|trident)/i[e(527)](navigator[e(601)]),i=document.createElement("a");let r=t;return s&&(i[e(449)]("href",r),r=i[e(558)]),i[e(449)](e(558),r),{origin:i[e(435)],href:i[e(558)],protocol:i[e(588)]?i[e(588)][e(393)](/:$/,""):"",host:i[e(623)],search:i[e(459)]?i[e(459)].replace(/^\?/,""):"",hash:i[e(671)]?i.hash.replace(/^#/,""):"",hostname:i.hostname,port:i.port,pathname:"/"===i.pathname.charAt(0)?i.pathname:"/"+i[e(732)]}}function ki(){const t=es;return t(409)[t(393)](/[xy]/g,function(e){const s=t;var i=16*Math[s(570)]()|0;return("x"==e?i:3&i|8)[s(522)](16)})}function _i(t,e){const s=Ji();return(_i=function(t,e){return s[t-=379]})(t,e)}function Ci(t){const e=es;let s="";if("object"==typeof t)try{s=JSON[e(432)](t),s=JSON.parse(s)}catch(e){s=t}else s=t;return s}function Di(){return Ci(V)}function Li(){return Ci(N)}function Ri(t){const e=es;return t[0]>>4===_t[e(678)]&&t[1]===kt.sequenceHeader}function Pi(t){return!0===t||"true"===t}function xi(t){return!0!==t&&t!==es(568)}function Mi(t,e,s){const i=es;t&&(t[i(746)]?t.dataset[e]=s:t[i(449)](i(498)+e,s))}function Bi(t,e){const s=es;return t?t[s(746)]?t.dataset[e]:t.getAttribute(s(498)+e):""}function Fi(t,e){const s=es;t&&(t.dataset?delete t[s(746)][e]:t[s(615)](s(498)+e))}function Ui(t){const e=es;return t[e(393)](/-([a-z])/g,function(t,s){return s[e(384)]()})}function Oi(){const t=es;return/iphone/i[t(527)](navigator[t(601)])}function Ni(){const t=es;return window[t(676)]&&window[t(676)][t(494)]?window[t(676)].memory:null}function Vi(){const t=es;try{var e=document[t(724)]("canvas");return!(!window[t(655)]||!e[t(703)](t(672)))}catch(t){return!1}}function ji(){const t=es;let e=!1;return t(448)in HTMLVideoElement[t(591)]&&(e=!0),e}function Wi(){const t=es;let e=!1;return t(556)in re&&"function"==typeof re[t(556)]&&(e=!0),e}function Gi(t,e){const s=es,i=Ye(t.slice(5));let r=!1;return i[s(624)](t=>{const i=s,n=e?t[0]>>>1&63:31&t[0];(e&&(n===at.kSliceBLA_W_LP||n===at.kSliceBLA_W_RADL||n===at[i(547)]||i(691),i(605),n===at.kSliceRSV_IRAP_VCL23)||xi(e)&&n===ot.iFrame)&&(r=!0)}),r}function zi(){const t=es;let e={down:t(535),move:t(675),up:t(550),click:t(579),wheel:t(426)};return ys()&&(e={down:t(515),move:"touchmove",up:"touchend",click:t(579)}),e}function Hi(t){const e=es;return t&&!t[e(692)]&&!t[e(722)]&&0!==t[e(450)]&&0!==t[e(702)]}function Ki(t){return t&&ArrayBuffer[es(666)](t)}function qi(t,e={}){const s=es;let i=8,r=!1;return t&&t[s(616)]&&t.height&&(r=t.width>=1920||t.height>=1080,t[s(465)]),e.useWCS?i=16:e.useWasm&&(i=e[s(603)]?e[s(609)]?r?4:16:r?e.isFFmpegSIMD?1:3:4:e[s(609)]?r?4:16:r?1:4),i}function Qi(...t){const e=es;if((t=t.filter(Boolean))[e(581)]<2)return t[0];const s=new Uint8Array(t.reduce((t,s)=>t+s[e(462)],0));let i=0;return t[e(624)](t=>{s[e(631)](t,i),i+=t.byteLength}),s}function Yi(){return Pi(ms)}function Ji(){const t=["fontFamily","isView","addModule","body","innerHTML","MediaSource","hash","webgl2","safari","hvc","mousemove","performance","360","keyFrame","MediaStream","getMonth","charAt","repeat","pointer-events: none !important; display: block !important","apple","sampleRate","split","font","putImageData","resume","getImageData","iFrame","paused","-webkit-text-size-adjust","toFixed","text/javascript","wcsDecodeAudio","experimental-webgl","application/javascript","mseDecodeAudio","unknown","status","readyState","getContext","ySpace","nvidia","useMSE","assign","getHours","Chrome","getFullYear","wow64","documentElement","format","textAlign","vps","9999999","useWCS","WAVE","none","Module","srcElement","ended","onload","createElement","-o-user-select","keys","h265","amd","MediaStreamTrackGenerator","setInt32","div","pathname","isEnabled","match","quality","trim","hev1.1.6.L120.90","line","NetType/other","user-select","push","container","100%","html","findLast","dataset","attachShadow","display","hasAudio","crossOrigin","style","-webkit-user-select","Bytes","360SE","GB/s","toUpperCase","hev4","destination","2432692JiuSZE","image/png","hostname","scrollTop","scrollLeft","nettype/","replace","hev2","green yuv","navigator","now","document","ZB/s","WEBGL_debug_renderer_info","EB/s","children","Safari","fromCharCode","touches","fullscreenElement","useOffscreen",'"2.1.13"',"xxxx","webkitFullscreenElement","numberOfChannels","fillStyle",'video/mp4; codecs="',"floor","setUint16","height","round","6813270wQZEhs","AAC","msFullscreenElement","img","dingtalk","getMinutes","9589216dCsUMq","close","wheel","copyToChannel","out of memory","3233493gceZyV","VideoEncoder.isConfigSupported is not a function","pow","stringify","isArray","apply","origin","illegal icc","demuxUseWorker","setHours","11262618SgVlxJ","content","substring","bottom","imageSmoothingQuality","application/360softmgrplugin","type","color","slice","requestVideoFrameCallback","setAttribute","playbackRate","readAsArrayBuffer","connection","Edge","webm","xSpace","createObjectURL","effectiveType","toDataURL","search","download","setUint8","byteLength","gpu","noteOn","encTypeCode","HarmonyOS","px 宋体","2TLtCYF","getElementById","-moz-user-select","filter","revokeObjectURL","hev3","strokeStyle","-ms-user-select","position","absolute","wow32","join","ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=","image","fontSize","not compiled with thread support","f32-planar","mimeTypes","imageSmoothingEnabled","object","location","lineWidth","transferControlToOffscreen","showModalDialog","webkitConnection","open","memory","max","WebGLRenderingContext","localhost","data-","application/hwepass2001.installepass2001","numberOfFrames","KB/s","VideoEncoder is not supported","charCodeAt","isFullscreen","MULAW","buffer","toLocaleLowerCase",'"production"',"webgl","URL","second","If you want to help, upload a sample of this file to","data:","vendor","touchstart","call","avc1.","onerror","Worker","subarray","target","toString","QHBrowser","getParameter","chrome","removeChild","test","sps","opacity","endsWith","instantiate","createBuffer","version","borderStyle","mousedown","setInt16","VideoDecoder","AudioDecoder","[object DOMException]","failed to asynchronously prepare wasm","createImageBitmap","15IRCVBF","getUserMedia","Anonymous","hev5","intel","kSliceBLA_N_LP","error","QQBrowser","mouseup","QihooBrowser","top","Edg","element","-webkit-tap-highlight-color","PressureObserver","copyright","href","pageY","fmt ","string","drawImage","Firefox","backgroundColor","getDate","borderWidth","0 Bytes","true","moz-webgl","random","getExtension","src","AudioData","RIFF","pageX","ArkWeb","createTextNode","canvas","click","pps","length","getPropertyValue","hidden",'"delaytime"',"atob","log","solid","protocol","left","right","prototype","MB/s","renderer","green","getMilliseconds","B/s","hev","570885Lonueq","zIndex","webkit-3d","userAgent","event","useSIMD","rgba(0,0,0,0)","kSliceRSV_IRAP_VCL22","audioWorklet","UNMASKED_VENDOR_WEBGL","message","useMThreading","indexOf","win64","mozGetUserMedia",";base64","Reserved SBR extensions is not implemented","removeAttribute","width","block","fillText","VideoFrame","restore","-webkit-touch-callout","#000","host","forEach","data","476541xbtAuV","min","mediaDevices","appendChild","hardwareConcurrency","set","mozConnection","hour","px Arial","application/vnd.chromium.remoting-viewer","Instance","toLowerCase","getDay","msGetUserMedia","validate","2401027200000","clientX","reduce","getUint8","undefined","function","100","initEvent","supported","ManagedMediaSource","opera","[object Exception]","video","setUint32","WebGL2RenderingContext","rect","getSeconds","[object Error]","clientY","isTypeSupported","canConstructInDedicatedWorker","isConfigSupported","text","shadowRoot"];return(Ji=function(){return t})()}function Xi(){return xi(ms)}function $i(){return os()>=Number(gs)}const Zi=tr;function tr(t,e){const s=er();return(tr=function(t,e){return s[t-=241]})(t,e)}function er(){const t=["21gKlypX","isArray","master","2848cFJuQd","1228PzKouf","removeEventListener","destroys","65219fjmikk","push","810855gDawfE","addEventListener","1510cMnFaq","2gjBoBs","destroy","648870nAVKBg","20119104uooGXG","forEach","map","22086GQCjLJ","Events","debugLog","89268wFnLYM","5490skfCbd","proxy"];return(er=function(){return t})()}!function(t){const e=tr,s=t();for(;;)try{if(486640===-parseInt(e(242))/1+parseInt(e(264))/2*(-parseInt(e(261))/3)+-parseInt(e(256))/4*(parseInt(e(250))/5)+parseInt(e(249))/6*(parseInt(e(252))/7)+parseInt(e(255))/8*(-parseInt(e(246))/9)+-parseInt(e(263))/10*(-parseInt(e(259))/11)+parseInt(e(243))/12)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(er);class sr{constructor(t){const e=tr;this.destroys=[],this.proxy=this[e(251)].bind(this),this[e(254)]=t}[Zi(241)](){const t=Zi;this[t(258)][t(244)](t=>t()),this[t(258)]=[],this[t(254)][t(248)](t(247),"destroy"),this[t(254)]=null}[Zi(251)](t,e,s,i={}){const r=Zi;if(!t)return;if(Array[r(253)](e))return e[r(245)](e=>this.proxy(t,e,s,i));t[r(262)](e,s,i);const n=()=>{di(t[r(257)])&&t.removeEventListener(e,s,i)};return this[r(258)][r(260)](n),n}}function ir(){const t=["includes","208VCckOe","fullscreen","currentPts","4xPEFSb","keys","performance","18EbulbM","_opt","debug","$container","toString","change","audioInfo","debugError","17843JxTGIM","webFullscreen","forEach","listen decoderWorkerInit and set loaded true","stats","521751vlMbUK","3977195XVoDwI","loaded","fullscreen exit success","283083dApkPc","emit","videoSEI","fullscreen request success","player","timeUpdate","videoSmooth","4ObolWC","debugLog","emitError","debugWarn","exit","classList","3759180iDCFAf","flvMetaData","tsPrivateData","events","resize","play","push","playbackTimestamp","1143894GoCwMX","decoderWorkerInit","loading","player events","fullscreenError","catch","4721332iDlqLL","fullscreen request error","remove","playbackStats","stringify","jb-pro-fullscreen-web","then","videoInfo","useWebFullScreen","playVodStats"];return(ir=function(){return t})()}function rr(t,e){const s=ir();return(rr=function(t,e){return s[t-=365]})(t,e)}!function(t){const e=rr,s=t();for(;;)try{if(594263===parseInt(e(374))/1+-parseInt(e(385))/2*(parseInt(e(378))/3)+parseInt(e(419))/4*(-parseInt(e(375))/5)+-parseInt(e(399))/6+parseInt(e(369))/7*(parseInt(e(416))/8)+-parseInt(e(422))/9*(-parseInt(e(391))/10)+parseInt(e(405))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(ir);var nr=cr;!function(t){for(var e=cr,s=t();;)try{if(580941===parseInt(e(479))/1*(parseInt(e(475))/2)+-parseInt(e(474))/3+-parseInt(e(484))/4*(parseInt(e(481))/5)+parseInt(e(486))/6+parseInt(e(473))/7*(parseInt(e(472))/8)+-parseInt(e(485))/9+parseInt(e(478))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(dr);var or=1e-6,ar=typeof Float32Array!==nr(476)?Float32Array:Array,hr=Math.random;var lr=Math.PI/180;function cr(t,e){var s=dr();return(cr=function(t,e){return s[t-=472]})(t,e)}function dr(){var t=["sqrt","5275965hQnwYM","hypot","length","4dojZfW","6494391zCYqLx","992808HszcDR","8LGJOTZ","423633lGhKjq","2407002UDRCnf","246sFZckm","undefined","abs","24682790fSomPC","3787nyJqlt"];return(dr=function(){return t})()}Math[nr(482)]||(Math.hypot=function(){for(var t=nr,e=0,s=arguments[t(483)];s--;)e+=arguments[s]*arguments[s];return Math[t(480)](e)});var ur=Object.freeze({__proto__:null,EPSILON:or,get ARRAY_TYPE(){return ar},RANDOM:hr,setMatrixArrayType:function(t){ar=t},toRadian:function(t){return t*lr},equals:function(t,e){var s=nr;return Math[s(477)](t-e)<=or*Math.max(1,Math.abs(t),Math[s(477)](e))}});function pr(){var t=wr,e=new(ur[t(302)])(16);return ur[t(302)]!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0),e[0]=1,e[5]=1,e[10]=1,e[15]=1,e}function fr(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function mr(t,e,s){var i=e[0],r=e[1],n=e[2],o=e[3],a=e[4],h=e[5],l=e[6],c=e[7],d=e[8],u=e[9],p=e[10],f=e[11],m=e[12],g=e[13],y=e[14],A=e[15],b=s[0],v=s[1],S=s[2],E=s[3];return t[0]=b*i+v*a+S*d+E*m,t[1]=b*r+v*h+S*u+E*g,t[2]=b*n+v*l+S*p+E*y,t[3]=b*o+v*c+S*f+E*A,b=s[4],v=s[5],S=s[6],E=s[7],t[4]=b*i+v*a+S*d+E*m,t[5]=b*r+v*h+S*u+E*g,t[6]=b*n+v*l+S*p+E*y,t[7]=b*o+v*c+S*f+E*A,b=s[8],v=s[9],S=s[10],E=s[11],t[8]=b*i+v*a+S*d+E*m,t[9]=b*r+v*h+S*u+E*g,t[10]=b*n+v*l+S*p+E*y,t[11]=b*o+v*c+S*f+E*A,b=s[12],v=s[13],S=s[14],E=s[15],t[12]=b*i+v*a+S*d+E*m,t[13]=b*r+v*h+S*u+E*g,t[14]=b*n+v*l+S*p+E*y,t[15]=b*o+v*c+S*f+E*A,t}function gr(t,e,s){var i=e[0],r=e[1],n=e[2],o=e[3],a=i+i,h=r+r,l=n+n,c=i*a,d=i*h,u=i*l,p=r*h,f=r*l,m=n*l,g=o*a,y=o*h,A=o*l;return t[0]=1-(p+m),t[1]=d+A,t[2]=u-y,t[3]=0,t[4]=d-A,t[5]=1-(c+m),t[6]=f+g,t[7]=0,t[8]=u+y,t[9]=f-g,t[10]=1-(c+p),t[11]=0,t[12]=s[0],t[13]=s[1],t[14]=s[2],t[15]=1,t}function yr(t,e){var s=wr,i=e[0],r=e[1],n=e[2],o=e[4],a=e[5],h=e[6],l=e[8],c=e[9],d=e[10];return t[0]=Math.hypot(i,r,n),t[1]=Math[s(297)](o,a,h),t[2]=Math[s(297)](l,c,d),t}function Ar(t,e,s,i,r){var n,o=1/Math[wr(289)](e/2);return t[0]=o/s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,null!=r&&r!==1/0?(n=1/(i-r),t[10]=(r+i)*n,t[14]=2*r*i*n):(t[10]=-1,t[14]=-2*i),t}!function(t){for(var e=wr,s=t();;)try{if(803541===parseInt(e(306))/1*(-parseInt(e(303))/2)+-parseInt(e(307))/3*(-parseInt(e(285))/4)+parseInt(e(308))/5*(parseInt(e(291))/6)+-parseInt(e(310))/7*(parseInt(e(305))/8)+parseInt(e(301))/9*(parseInt(e(296))/10)+-parseInt(e(300))/11+parseInt(e(287))/12*(parseInt(e(294))/13))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Tr);var br=Ar;function vr(t,e,s,i,r,n,o){var a=1/(e-s),h=1/(i-r),l=1/(n-o);return t[0]=-2*a,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*h,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*l,t[11]=0,t[12]=(e+s)*a,t[13]=(r+i)*h,t[14]=(o+n)*l,t[15]=1,t}var Sr=vr;function Er(t,e,s,i){var r,n,o,a,h,l,c,d,u,p,f=wr,m=e[0],g=e[1],y=e[2],A=i[0],b=i[1],v=i[2],S=s[0],E=s[1],w=s[2];return Math[f(284)](m-S)<ur[f(295)]&&Math[f(284)](g-E)<or&&Math[f(284)](y-w)<ur[f(295)]?fr(t):(c=m-S,d=g-E,u=y-w,r=b*(u*=p=1/Math[f(297)](c,d,u))-v*(d*=p),n=v*(c*=p)-A*u,o=A*d-b*c,(p=Math[f(297)](r,n,o))?(r*=p=1/p,n*=p,o*=p):(r=0,n=0,o=0),a=d*o-u*n,h=u*r-c*o,l=c*n-d*r,(p=Math[f(297)](a,h,l))?(a*=p=1/p,h*=p,l*=p):(a=0,h=0,l=0),t[0]=r,t[1]=a,t[2]=c,t[3]=0,t[4]=n,t[5]=h,t[6]=d,t[7]=0,t[8]=o,t[9]=l,t[10]=u,t[11]=0,t[12]=-(r*m+n*g+o*y),t[13]=-(a*m+h*g+l*y),t[14]=-(c*m+d*g+u*y),t[15]=1,t)}function wr(t,e){var s=Tr();return(wr=function(t,e){return s[t-=284]})(t,e)}function Tr(){var t=["abs","4BdYtqx","cos","171588tLgvlh","sqrt","tan","max","30zAegeD","leftDegrees","downDegrees","416nRrCOC","EPSILON","10FRxKFN","hypot","mat4(","rightDegrees","4434738nImQhL","464283zfiwzo","ARRAY_TYPE","496UtYzAB","upDegrees","848zMolld","2733heNTLs","3206325mpEVpu","1458455jUcrWE","sin","76069iSnkHf"];return(Tr=function(){return t})()}function Ir(t,e,s){return t[0]=e[0]-s[0],t[1]=e[1]-s[1],t[2]=e[2]-s[2],t[3]=e[3]-s[3],t[4]=e[4]-s[4],t[5]=e[5]-s[5],t[6]=e[6]-s[6],t[7]=e[7]-s[7],t[8]=e[8]-s[8],t[9]=e[9]-s[9],t[10]=e[10]-s[10],t[11]=e[11]-s[11],t[12]=e[12]-s[12],t[13]=e[13]-s[13],t[14]=e[14]-s[14],t[15]=e[15]-s[15],t}var kr=mr,_r=Ir,Cr=Object.freeze({__proto__:null,create:pr,clone:function(t){var e=new(ur[wr(302)])(16);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e},copy:function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},fromValues:function(t,e,s,i,r,n,o,a,h,l,c,d,u,p,f,m){var g=new(ur[wr(302)])(16);return g[0]=t,g[1]=e,g[2]=s,g[3]=i,g[4]=r,g[5]=n,g[6]=o,g[7]=a,g[8]=h,g[9]=l,g[10]=c,g[11]=d,g[12]=u,g[13]=p,g[14]=f,g[15]=m,g},set:function(t,e,s,i,r,n,o,a,h,l,c,d,u,p,f,m,g){return t[0]=e,t[1]=s,t[2]=i,t[3]=r,t[4]=n,t[5]=o,t[6]=a,t[7]=h,t[8]=l,t[9]=c,t[10]=d,t[11]=u,t[12]=p,t[13]=f,t[14]=m,t[15]=g,t},identity:fr,transpose:function(t,e){if(t===e){var s=e[1],i=e[2],r=e[3],n=e[6],o=e[7],a=e[11];t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=s,t[6]=e[9],t[7]=e[13],t[8]=i,t[9]=n,t[11]=e[14],t[12]=r,t[13]=o,t[14]=a}else t[0]=e[0],t[1]=e[4],t[2]=e[8],t[3]=e[12],t[4]=e[1],t[5]=e[5],t[6]=e[9],t[7]=e[13],t[8]=e[2],t[9]=e[6],t[10]=e[10],t[11]=e[14],t[12]=e[3],t[13]=e[7],t[14]=e[11],t[15]=e[15];return t},invert:function(t,e){var s=e[0],i=e[1],r=e[2],n=e[3],o=e[4],a=e[5],h=e[6],l=e[7],c=e[8],d=e[9],u=e[10],p=e[11],f=e[12],m=e[13],g=e[14],y=e[15],A=s*a-i*o,b=s*h-r*o,v=s*l-n*o,S=i*h-r*a,E=i*l-n*a,w=r*l-n*h,T=c*m-d*f,I=c*g-u*f,k=c*y-p*f,_=d*g-u*m,C=d*y-p*m,D=u*y-p*g,L=A*D-b*C+v*_+S*k-E*I+w*T;return L?(L=1/L,t[0]=(a*D-h*C+l*_)*L,t[1]=(r*C-i*D-n*_)*L,t[2]=(m*w-g*E+y*S)*L,t[3]=(u*E-d*w-p*S)*L,t[4]=(h*k-o*D-l*I)*L,t[5]=(s*D-r*k+n*I)*L,t[6]=(g*v-f*w-y*b)*L,t[7]=(c*w-u*v+p*b)*L,t[8]=(o*C-a*k+l*T)*L,t[9]=(i*k-s*C-n*T)*L,t[10]=(f*E-m*v+y*A)*L,t[11]=(d*v-c*E-p*A)*L,t[12]=(a*I-o*_-h*T)*L,t[13]=(s*_-i*I+r*T)*L,t[14]=(m*b-f*S-g*A)*L,t[15]=(c*S-d*b+u*A)*L,t):null},adjoint:function(t,e){var s=e[0],i=e[1],r=e[2],n=e[3],o=e[4],a=e[5],h=e[6],l=e[7],c=e[8],d=e[9],u=e[10],p=e[11],f=e[12],m=e[13],g=e[14],y=e[15];return t[0]=a*(u*y-p*g)-d*(h*y-l*g)+m*(h*p-l*u),t[1]=-(i*(u*y-p*g)-d*(r*y-n*g)+m*(r*p-n*u)),t[2]=i*(h*y-l*g)-a*(r*y-n*g)+m*(r*l-n*h),t[3]=-(i*(h*p-l*u)-a*(r*p-n*u)+d*(r*l-n*h)),t[4]=-(o*(u*y-p*g)-c*(h*y-l*g)+f*(h*p-l*u)),t[5]=s*(u*y-p*g)-c*(r*y-n*g)+f*(r*p-n*u),t[6]=-(s*(h*y-l*g)-o*(r*y-n*g)+f*(r*l-n*h)),t[7]=s*(h*p-l*u)-o*(r*p-n*u)+c*(r*l-n*h),t[8]=o*(d*y-p*m)-c*(a*y-l*m)+f*(a*p-l*d),t[9]=-(s*(d*y-p*m)-c*(i*y-n*m)+f*(i*p-n*d)),t[10]=s*(a*y-l*m)-o*(i*y-n*m)+f*(i*l-n*a),t[11]=-(s*(a*p-l*d)-o*(i*p-n*d)+c*(i*l-n*a)),t[12]=-(o*(d*g-u*m)-c*(a*g-h*m)+f*(a*u-h*d)),t[13]=s*(d*g-u*m)-c*(i*g-r*m)+f*(i*u-r*d),t[14]=-(s*(a*g-h*m)-o*(i*g-r*m)+f*(i*h-r*a)),t[15]=s*(a*u-h*d)-o*(i*u-r*d)+c*(i*h-r*a),t},determinant:function(t){var e=t[0],s=t[1],i=t[2],r=t[3],n=t[4],o=t[5],a=t[6],h=t[7],l=t[8],c=t[9],d=t[10],u=t[11],p=t[12],f=t[13],m=t[14],g=t[15];return(e*o-s*n)*(d*g-u*m)-(e*a-i*n)*(c*g-u*f)+(e*h-r*n)*(c*m-d*f)+(s*a-i*o)*(l*g-u*p)-(s*h-r*o)*(l*m-d*p)+(i*h-r*a)*(l*f-c*p)},multiply:mr,translate:function(t,e,s){var i,r,n,o,a,h,l,c,d,u,p,f,m=s[0],g=s[1],y=s[2];return e===t?(t[12]=e[0]*m+e[4]*g+e[8]*y+e[12],t[13]=e[1]*m+e[5]*g+e[9]*y+e[13],t[14]=e[2]*m+e[6]*g+e[10]*y+e[14],t[15]=e[3]*m+e[7]*g+e[11]*y+e[15]):(i=e[0],r=e[1],n=e[2],o=e[3],a=e[4],h=e[5],l=e[6],c=e[7],d=e[8],u=e[9],p=e[10],f=e[11],t[0]=i,t[1]=r,t[2]=n,t[3]=o,t[4]=a,t[5]=h,t[6]=l,t[7]=c,t[8]=d,t[9]=u,t[10]=p,t[11]=f,t[12]=i*m+a*g+d*y+e[12],t[13]=r*m+h*g+u*y+e[13],t[14]=n*m+l*g+p*y+e[14],t[15]=o*m+c*g+f*y+e[15]),t},scale:function(t,e,s){var i=s[0],r=s[1],n=s[2];return t[0]=e[0]*i,t[1]=e[1]*i,t[2]=e[2]*i,t[3]=e[3]*i,t[4]=e[4]*r,t[5]=e[5]*r,t[6]=e[6]*r,t[7]=e[7]*r,t[8]=e[8]*n,t[9]=e[9]*n,t[10]=e[10]*n,t[11]=e[11]*n,t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t},rotate:function(t,e,s,i){var r,n,o,a,h,l,c,d,u,p,f,m,g,y,A,b,v,S,E,w,T,I,k,_,C=wr,D=i[0],L=i[1],R=i[2],P=Math[C(297)](D,L,R);return P<ur[C(295)]?null:(D*=P=1/P,L*=P,R*=P,r=Math.sin(s),o=1-(n=Math.cos(s)),a=e[0],h=e[1],l=e[2],c=e[3],d=e[4],u=e[5],p=e[6],f=e[7],m=e[8],g=e[9],y=e[10],A=e[11],b=D*D*o+n,v=L*D*o+R*r,S=R*D*o-L*r,E=D*L*o-R*r,w=L*L*o+n,T=R*L*o+D*r,I=D*R*o+L*r,k=L*R*o-D*r,_=R*R*o+n,t[0]=a*b+d*v+m*S,t[1]=h*b+u*v+g*S,t[2]=l*b+p*v+y*S,t[3]=c*b+f*v+A*S,t[4]=a*E+d*w+m*T,t[5]=h*E+u*w+g*T,t[6]=l*E+p*w+y*T,t[7]=c*E+f*w+A*T,t[8]=a*I+d*k+m*_,t[9]=h*I+u*k+g*_,t[10]=l*I+p*k+y*_,t[11]=c*I+f*k+A*_,e!==t&&(t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t)},rotateX:function(t,e,s){var i=wr,r=Math[i(309)](s),n=Math[i(286)](s),o=e[4],a=e[5],h=e[6],l=e[7],c=e[8],d=e[9],u=e[10],p=e[11];return e!==t&&(t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[4]=o*n+c*r,t[5]=a*n+d*r,t[6]=h*n+u*r,t[7]=l*n+p*r,t[8]=c*n-o*r,t[9]=d*n-a*r,t[10]=u*n-h*r,t[11]=p*n-l*r,t},rotateY:function(t,e,s){var i=wr,r=Math[i(309)](s),n=Math[i(286)](s),o=e[0],a=e[1],h=e[2],l=e[3],c=e[8],d=e[9],u=e[10],p=e[11];return e!==t&&(t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=o*n-c*r,t[1]=a*n-d*r,t[2]=h*n-u*r,t[3]=l*n-p*r,t[8]=o*r+c*n,t[9]=a*r+d*n,t[10]=h*r+u*n,t[11]=l*r+p*n,t},rotateZ:function(t,e,s){var i=wr,r=Math[i(309)](s),n=Math[i(286)](s),o=e[0],a=e[1],h=e[2],l=e[3],c=e[4],d=e[5],u=e[6],p=e[7];return e!==t&&(t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15]),t[0]=o*n+c*r,t[1]=a*n+d*r,t[2]=h*n+u*r,t[3]=l*n+p*r,t[4]=c*n-o*r,t[5]=d*n-a*r,t[6]=u*n-h*r,t[7]=p*n-l*r,t},fromTranslation:function(t,e){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=e[0],t[13]=e[1],t[14]=e[2],t[15]=1,t},fromScaling:function(t,e){return t[0]=e[0],t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=e[1],t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=e[2],t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},fromRotation:function(t,e,s){var i,r,n,o=wr,a=s[0],h=s[1],l=s[2],c=Math[o(297)](a,h,l);return c<or?null:(a*=c=1/c,h*=c,l*=c,i=Math[o(309)](e),n=1-(r=Math.cos(e)),t[0]=a*a*n+r,t[1]=h*a*n+l*i,t[2]=l*a*n-h*i,t[3]=0,t[4]=a*h*n-l*i,t[5]=h*h*n+r,t[6]=l*h*n+a*i,t[7]=0,t[8]=a*l*n+h*i,t[9]=h*l*n-a*i,t[10]=l*l*n+r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t)},fromXRotation:function(t,e){var s=wr,i=Math[s(309)](e),r=Math[s(286)](e);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=r,t[6]=i,t[7]=0,t[8]=0,t[9]=-i,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},fromYRotation:function(t,e){var s=wr,i=Math[s(309)](e),r=Math[s(286)](e);return t[0]=r,t[1]=0,t[2]=-i,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=i,t[9]=0,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},fromZRotation:function(t,e){var s=wr,i=Math[s(309)](e),r=Math[s(286)](e);return t[0]=r,t[1]=i,t[2]=0,t[3]=0,t[4]=-i,t[5]=r,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},fromRotationTranslation:gr,fromQuat2:function(t,e){var s=new(ur[wr(302)])(3),i=-e[0],r=-e[1],n=-e[2],o=e[3],a=e[4],h=e[5],l=e[6],c=e[7],d=i*i+r*r+n*n+o*o;return d>0?(s[0]=2*(a*o+c*i+h*n-l*r)/d,s[1]=2*(h*o+c*r+l*i-a*n)/d,s[2]=2*(l*o+c*n+a*r-h*i)/d):(s[0]=2*(a*o+c*i+h*n-l*r),s[1]=2*(h*o+c*r+l*i-a*n),s[2]=2*(l*o+c*n+a*r-h*i)),gr(t,e,s),t},getTranslation:function(t,e){return t[0]=e[12],t[1]=e[13],t[2]=e[14],t},getScaling:yr,getRotation:function(t,e){var s=wr,i=new(ur[s(302)])(3);yr(i,e);var r=1/i[0],n=1/i[1],o=1/i[2],a=e[0]*r,h=e[1]*n,l=e[2]*o,c=e[4]*r,d=e[5]*n,u=e[6]*o,p=e[8]*r,f=e[9]*n,m=e[10]*o,g=a+d+m,y=0;return g>0?(y=2*Math.sqrt(g+1),t[3]=.25*y,t[0]=(u-f)/y,t[1]=(p-l)/y,t[2]=(h-c)/y):a>d&&a>m?(y=2*Math[s(288)](1+a-d-m),t[3]=(u-f)/y,t[0]=.25*y,t[1]=(h+c)/y,t[2]=(p+l)/y):d>m?(y=2*Math[s(288)](1+d-a-m),t[3]=(p-l)/y,t[0]=(h+c)/y,t[1]=.25*y,t[2]=(u+f)/y):(y=2*Math[s(288)](1+m-a-d),t[3]=(h-c)/y,t[0]=(p+l)/y,t[1]=(u+f)/y,t[2]=.25*y),t},fromRotationTranslationScale:function(t,e,s,i){var r=e[0],n=e[1],o=e[2],a=e[3],h=r+r,l=n+n,c=o+o,d=r*h,u=r*l,p=r*c,f=n*l,m=n*c,g=o*c,y=a*h,A=a*l,b=a*c,v=i[0],S=i[1],E=i[2];return t[0]=(1-(f+g))*v,t[1]=(u+b)*v,t[2]=(p-A)*v,t[3]=0,t[4]=(u-b)*S,t[5]=(1-(d+g))*S,t[6]=(m+y)*S,t[7]=0,t[8]=(p+A)*E,t[9]=(m-y)*E,t[10]=(1-(d+f))*E,t[11]=0,t[12]=s[0],t[13]=s[1],t[14]=s[2],t[15]=1,t},fromRotationTranslationScaleOrigin:function(t,e,s,i,r){var n=e[0],o=e[1],a=e[2],h=e[3],l=n+n,c=o+o,d=a+a,u=n*l,p=n*c,f=n*d,m=o*c,g=o*d,y=a*d,A=h*l,b=h*c,v=h*d,S=i[0],E=i[1],w=i[2],T=r[0],I=r[1],k=r[2],_=(1-(m+y))*S,C=(p+v)*S,D=(f-b)*S,L=(p-v)*E,R=(1-(u+y))*E,P=(g+A)*E,x=(f+b)*w,M=(g-A)*w,B=(1-(u+m))*w;return t[0]=_,t[1]=C,t[2]=D,t[3]=0,t[4]=L,t[5]=R,t[6]=P,t[7]=0,t[8]=x,t[9]=M,t[10]=B,t[11]=0,t[12]=s[0]+T-(_*T+L*I+x*k),t[13]=s[1]+I-(C*T+R*I+M*k),t[14]=s[2]+k-(D*T+P*I+B*k),t[15]=1,t},fromQuat:function(t,e){var s=e[0],i=e[1],r=e[2],n=e[3],o=s+s,a=i+i,h=r+r,l=s*o,c=i*o,d=i*a,u=r*o,p=r*a,f=r*h,m=n*o,g=n*a,y=n*h;return t[0]=1-d-f,t[1]=c+y,t[2]=u-g,t[3]=0,t[4]=c-y,t[5]=1-l-f,t[6]=p+m,t[7]=0,t[8]=u+g,t[9]=p-m,t[10]=1-l-d,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},frustum:function(t,e,s,i,r,n,o){var a=1/(s-e),h=1/(r-i),l=1/(n-o);return t[0]=2*n*a,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=2*n*h,t[6]=0,t[7]=0,t[8]=(s+e)*a,t[9]=(r+i)*h,t[10]=(o+n)*l,t[11]=-1,t[12]=0,t[13]=0,t[14]=o*n*2*l,t[15]=0,t},perspectiveNO:Ar,perspective:br,perspectiveZO:function(t,e,s,i,r){var n,o=1/Math[wr(289)](e/2);return t[0]=o/s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=o,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,null!=r&&r!==1/0?(n=1/(i-r),t[10]=r*n,t[14]=r*i*n):(t[10]=-1,t[14]=-i),t},perspectiveFromFieldOfView:function(t,e,s,i){var r=wr,n=Math[r(289)](e[r(304)]*Math.PI/180),o=Math.tan(e[r(293)]*Math.PI/180),a=Math[r(289)](e[r(292)]*Math.PI/180),h=Math[r(289)](e[r(299)]*Math.PI/180),l=2/(a+h),c=2/(n+o);return t[0]=l,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=c,t[6]=0,t[7]=0,t[8]=-(a-h)*l*.5,t[9]=(n-o)*c*.5,t[10]=i/(s-i),t[11]=-1,t[12]=0,t[13]=0,t[14]=i*s/(s-i),t[15]=0,t},orthoNO:vr,ortho:Sr,orthoZO:function(t,e,s,i,r,n,o){var a=1/(e-s),h=1/(i-r),l=1/(n-o);return t[0]=-2*a,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*h,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=l,t[11]=0,t[12]=(e+s)*a,t[13]=(r+i)*h,t[14]=n*l,t[15]=1,t},lookAt:Er,targetTo:function(t,e,s,i){var r=wr,n=e[0],o=e[1],a=e[2],h=i[0],l=i[1],c=i[2],d=n-s[0],u=o-s[1],p=a-s[2],f=d*d+u*u+p*p;f>0&&(d*=f=1/Math[r(288)](f),u*=f,p*=f);var m=l*p-c*u,g=c*d-h*p,y=h*u-l*d;return(f=m*m+g*g+y*y)>0&&(m*=f=1/Math[r(288)](f),g*=f,y*=f),t[0]=m,t[1]=g,t[2]=y,t[3]=0,t[4]=u*y-p*g,t[5]=p*m-d*y,t[6]=d*g-u*m,t[7]=0,t[8]=d,t[9]=u,t[10]=p,t[11]=0,t[12]=n,t[13]=o,t[14]=a,t[15]=1,t},str:function(t){return wr(298)+t[0]+", "+t[1]+", "+t[2]+", "+t[3]+", "+t[4]+", "+t[5]+", "+t[6]+", "+t[7]+", "+t[8]+", "+t[9]+", "+t[10]+", "+t[11]+", "+t[12]+", "+t[13]+", "+t[14]+", "+t[15]+")"},frob:function(t){return Math[wr(297)](t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8],t[9],t[10],t[11],t[12],t[13],t[14],t[15])},add:function(t,e,s){return t[0]=e[0]+s[0],t[1]=e[1]+s[1],t[2]=e[2]+s[2],t[3]=e[3]+s[3],t[4]=e[4]+s[4],t[5]=e[5]+s[5],t[6]=e[6]+s[6],t[7]=e[7]+s[7],t[8]=e[8]+s[8],t[9]=e[9]+s[9],t[10]=e[10]+s[10],t[11]=e[11]+s[11],t[12]=e[12]+s[12],t[13]=e[13]+s[13],t[14]=e[14]+s[14],t[15]=e[15]+s[15],t},subtract:Ir,multiplyScalar:function(t,e,s){return t[0]=e[0]*s,t[1]=e[1]*s,t[2]=e[2]*s,t[3]=e[3]*s,t[4]=e[4]*s,t[5]=e[5]*s,t[6]=e[6]*s,t[7]=e[7]*s,t[8]=e[8]*s,t[9]=e[9]*s,t[10]=e[10]*s,t[11]=e[11]*s,t[12]=e[12]*s,t[13]=e[13]*s,t[14]=e[14]*s,t[15]=e[15]*s,t},multiplyScalarAndAdd:function(t,e,s,i){return t[0]=e[0]+s[0]*i,t[1]=e[1]+s[1]*i,t[2]=e[2]+s[2]*i,t[3]=e[3]+s[3]*i,t[4]=e[4]+s[4]*i,t[5]=e[5]+s[5]*i,t[6]=e[6]+s[6]*i,t[7]=e[7]+s[7]*i,t[8]=e[8]+s[8]*i,t[9]=e[9]+s[9]*i,t[10]=e[10]+s[10]*i,t[11]=e[11]+s[11]*i,t[12]=e[12]+s[12]*i,t[13]=e[13]+s[13]*i,t[14]=e[14]+s[14]*i,t[15]=e[15]+s[15]*i,t},exactEquals:function(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]&&t[3]===e[3]&&t[4]===e[4]&&t[5]===e[5]&&t[6]===e[6]&&t[7]===e[7]&&t[8]===e[8]&&t[9]===e[9]&&t[10]===e[10]&&t[11]===e[11]&&t[12]===e[12]&&t[13]===e[13]&&t[14]===e[14]&&t[15]===e[15]},equals:function(t,e){var s=wr,i=t[0],r=t[1],n=t[2],o=t[3],a=t[4],h=t[5],l=t[6],c=t[7],d=t[8],u=t[9],p=t[10],f=t[11],m=t[12],g=t[13],y=t[14],A=t[15],b=e[0],v=e[1],S=e[2],E=e[3],w=e[4],T=e[5],I=e[6],k=e[7],_=e[8],C=e[9],D=e[10],L=e[11],R=e[12],P=e[13],x=e[14],M=e[15];return Math.abs(i-b)<=or*Math[s(290)](1,Math[s(284)](i),Math[s(284)](b))&&Math[s(284)](r-v)<=ur[s(295)]*Math[s(290)](1,Math[s(284)](r),Math[s(284)](v))&&Math[s(284)](n-S)<=ur[s(295)]*Math.max(1,Math[s(284)](n),Math[s(284)](S))&&Math[s(284)](o-E)<=or*Math[s(290)](1,Math[s(284)](o),Math[s(284)](E))&&Math[s(284)](a-w)<=ur[s(295)]*Math[s(290)](1,Math.abs(a),Math[s(284)](w))&&Math.abs(h-T)<=ur[s(295)]*Math[s(290)](1,Math[s(284)](h),Math[s(284)](T))&&Math[s(284)](l-I)<=or*Math.max(1,Math[s(284)](l),Math[s(284)](I))&&Math[s(284)](c-k)<=ur[s(295)]*Math[s(290)](1,Math[s(284)](c),Math.abs(k))&&Math[s(284)](d-_)<=ur[s(295)]*Math[s(290)](1,Math[s(284)](d),Math[s(284)](_))&&Math.abs(u-C)<=or*Math[s(290)](1,Math[s(284)](u),Math[s(284)](C))&&Math.abs(p-D)<=ur[s(295)]*Math[s(290)](1,Math.abs(p),Math[s(284)](D))&&Math.abs(f-L)<=ur[s(295)]*Math[s(290)](1,Math[s(284)](f),Math.abs(L))&&Math.abs(m-R)<=ur[s(295)]*Math[s(290)](1,Math[s(284)](m),Math[s(284)](R))&&Math[s(284)](g-P)<=or*Math.max(1,Math[s(284)](g),Math[s(284)](P))&&Math[s(284)](y-x)<=or*Math[s(290)](1,Math.abs(y),Math[s(284)](x))&&Math[s(284)](A-M)<=or*Math[s(290)](1,Math[s(284)](A),Math[s(284)](M))},mul:kr,sub:_r});function Dr(){var t=Gr,e=new(ur[t(251)])(3);return ur[t(251)]!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e}function Lr(t){var e=Gr,s=t[0],i=t[1],r=t[2];return Math[e(261)](s,i,r)}function Rr(t,e,s){return t[0]=e[0]-s[0],t[1]=e[1]-s[1],t[2]=e[2]-s[2],t}function Pr(t,e,s){return t[0]=e[0]*s[0],t[1]=e[1]*s[1],t[2]=e[2]*s[2],t}function xr(t,e,s){return t[0]=e[0]/s[0],t[1]=e[1]/s[1],t[2]=e[2]/s[2],t}function Mr(){var t=["375180ZphjFE","360252iwhdQX","sin","12zKGboa","19607928sMEQvu","3312988rVLJnu","ceil","cos","vec3(","hypot","794944oqxsae","RANDOM","abs","floor","3698832QHBZcu","63350ZXKeRt","max","min","sqrt","length","acos","round","EPSILON","ARRAY_TYPE"];return(Mr=function(){return t})()}function Br(t,e){var s=Gr,i=e[0]-t[0],r=e[1]-t[1],n=e[2]-t[2];return Math[s(261)](i,r,n)}function Fr(t,e){var s=e[0]-t[0],i=e[1]-t[1],r=e[2]-t[2];return s*s+i*i+r*r}function Ur(t){var e=t[0],s=t[1],i=t[2];return e*e+s*s+i*i}function Or(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}!function(t){for(var e=Gr,s=t();;)try{if(443190===parseInt(e(262))/1+parseInt(e(255))/2*(parseInt(e(253))/3)+parseInt(e(257))/4+-parseInt(e(252))/5+parseInt(e(266))/6+parseInt(e(267))/7+-parseInt(e(256))/8)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Mr);var Nr=Rr,Vr=Pr,jr=xr,Wr=Br;function Gr(t,e){var s=Mr();return(Gr=function(t,e){return s[t-=248]})(t,e)}var zr,Hr=Fr,Kr=Lr,qr=Ur,Qr=(zr=Dr(),function(t,e,s,i,r,n){var o,a,h=Gr;for(!e&&(e=3),!s&&(s=0),a=i?Math[h(269)](i*e+s,t[h(271)]):t[h(271)],o=s;o<a;o+=e)zr[0]=t[o],zr[1]=t[o+1],zr[2]=t[o+2],r(zr,zr,n),t[o]=zr[0],t[o+1]=zr[1],t[o+2]=zr[2];return t}),Yr=Object.freeze({__proto__:null,create:Dr,clone:function(t){var e=new ar(3);return e[0]=t[0],e[1]=t[1],e[2]=t[2],e},length:Lr,fromValues:function(t,e,s){var i=new(ur[Gr(251)])(3);return i[0]=t,i[1]=e,i[2]=s,i},copy:function(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t},set:function(t,e,s,i){return t[0]=e,t[1]=s,t[2]=i,t},add:function(t,e,s){return t[0]=e[0]+s[0],t[1]=e[1]+s[1],t[2]=e[2]+s[2],t},subtract:Rr,multiply:Pr,divide:xr,ceil:function(t,e){var s=Gr;return t[0]=Math[s(258)](e[0]),t[1]=Math[s(258)](e[1]),t[2]=Math.ceil(e[2]),t},floor:function(t,e){var s=Gr;return t[0]=Math[s(265)](e[0]),t[1]=Math[s(265)](e[1]),t[2]=Math[s(265)](e[2]),t},min:function(t,e,s){var i=Gr;return t[0]=Math[i(269)](e[0],s[0]),t[1]=Math.min(e[1],s[1]),t[2]=Math[i(269)](e[2],s[2]),t},max:function(t,e,s){var i=Gr;return t[0]=Math[i(268)](e[0],s[0]),t[1]=Math.max(e[1],s[1]),t[2]=Math[i(268)](e[2],s[2]),t},round:function(t,e){var s=Gr;return t[0]=Math.round(e[0]),t[1]=Math[s(249)](e[1]),t[2]=Math[s(249)](e[2]),t},scale:function(t,e,s){return t[0]=e[0]*s,t[1]=e[1]*s,t[2]=e[2]*s,t},scaleAndAdd:function(t,e,s,i){return t[0]=e[0]+s[0]*i,t[1]=e[1]+s[1]*i,t[2]=e[2]+s[2]*i,t},distance:Br,squaredDistance:Fr,squaredLength:Ur,negate:function(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t},inverse:function(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t},normalize:function(t,e){var s=Gr,i=e[0],r=e[1],n=e[2],o=i*i+r*r+n*n;return o>0&&(o=1/Math[s(270)](o)),t[0]=e[0]*o,t[1]=e[1]*o,t[2]=e[2]*o,t},dot:Or,cross:function(t,e,s){var i=e[0],r=e[1],n=e[2],o=s[0],a=s[1],h=s[2];return t[0]=r*h-n*a,t[1]=n*o-i*h,t[2]=i*a-r*o,t},lerp:function(t,e,s,i){var r=e[0],n=e[1],o=e[2];return t[0]=r+i*(s[0]-r),t[1]=n+i*(s[1]-n),t[2]=o+i*(s[2]-o),t},hermite:function(t,e,s,i,r,n){var o=n*n,a=o*(2*n-3)+1,h=o*(n-2)+n,l=o*(n-1),c=o*(3-2*n);return t[0]=e[0]*a+s[0]*h+i[0]*l+r[0]*c,t[1]=e[1]*a+s[1]*h+i[1]*l+r[1]*c,t[2]=e[2]*a+s[2]*h+i[2]*l+r[2]*c,t},bezier:function(t,e,s,i,r,n){var o=1-n,a=o*o,h=n*n,l=a*o,c=3*n*a,d=3*h*o,u=h*n;return t[0]=e[0]*l+s[0]*c+i[0]*d+r[0]*u,t[1]=e[1]*l+s[1]*c+i[1]*d+r[1]*u,t[2]=e[2]*l+s[2]*c+i[2]*d+r[2]*u,t},random:function(t,e){var s=Gr;e=e||1;var i=2*ur[s(263)]()*Math.PI,r=2*ur[s(263)]()-1,n=Math.sqrt(1-r*r)*e;return t[0]=Math[s(259)](i)*n,t[1]=Math.sin(i)*n,t[2]=r*e,t},transformMat4:function(t,e,s){var i=e[0],r=e[1],n=e[2],o=s[3]*i+s[7]*r+s[11]*n+s[15];return o=o||1,t[0]=(s[0]*i+s[4]*r+s[8]*n+s[12])/o,t[1]=(s[1]*i+s[5]*r+s[9]*n+s[13])/o,t[2]=(s[2]*i+s[6]*r+s[10]*n+s[14])/o,t},transformMat3:function(t,e,s){var i=e[0],r=e[1],n=e[2];return t[0]=i*s[0]+r*s[3]+n*s[6],t[1]=i*s[1]+r*s[4]+n*s[7],t[2]=i*s[2]+r*s[5]+n*s[8],t},transformQuat:function(t,e,s){var i=s[0],r=s[1],n=s[2],o=s[3],a=e[0],h=e[1],l=e[2],c=r*l-n*h,d=n*a-i*l,u=i*h-r*a,p=r*u-n*d,f=n*c-i*u,m=i*d-r*c,g=2*o;return c*=g,d*=g,u*=g,p*=2,f*=2,m*=2,t[0]=a+c+p,t[1]=h+d+f,t[2]=l+u+m,t},rotateX:function(t,e,s,i){var r=Gr,n=[],o=[];return n[0]=e[0]-s[0],n[1]=e[1]-s[1],n[2]=e[2]-s[2],o[0]=n[0],o[1]=n[1]*Math[r(259)](i)-n[2]*Math[r(254)](i),o[2]=n[1]*Math[r(254)](i)+n[2]*Math[r(259)](i),t[0]=o[0]+s[0],t[1]=o[1]+s[1],t[2]=o[2]+s[2],t},rotateY:function(t,e,s,i){var r=Gr,n=[],o=[];return n[0]=e[0]-s[0],n[1]=e[1]-s[1],n[2]=e[2]-s[2],o[0]=n[2]*Math[r(254)](i)+n[0]*Math[r(259)](i),o[1]=n[1],o[2]=n[2]*Math.cos(i)-n[0]*Math.sin(i),t[0]=o[0]+s[0],t[1]=o[1]+s[1],t[2]=o[2]+s[2],t},rotateZ:function(t,e,s,i){var r=Gr,n=[],o=[];return n[0]=e[0]-s[0],n[1]=e[1]-s[1],n[2]=e[2]-s[2],o[0]=n[0]*Math.cos(i)-n[1]*Math[r(254)](i),o[1]=n[0]*Math[r(254)](i)+n[1]*Math.cos(i),o[2]=n[2],t[0]=o[0]+s[0],t[1]=o[1]+s[1],t[2]=o[2]+s[2],t},angle:function(t,e){var s=Gr,i=t[0],r=t[1],n=t[2],o=e[0],a=e[1],h=e[2],l=Math.sqrt(i*i+r*r+n*n)*Math[s(270)](o*o+a*a+h*h),c=l&&Or(t,e)/l;return Math[s(248)](Math[s(269)](Math[s(268)](c,-1),1))},zero:function(t){return t[0]=0,t[1]=0,t[2]=0,t},str:function(t){return Gr(260)+t[0]+", "+t[1]+", "+t[2]+")"},exactEquals:function(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]},equals:function(t,e){var s=Gr,i=t[0],r=t[1],n=t[2],o=e[0],a=e[1],h=e[2];return Math[s(264)](i-o)<=ur[s(250)]*Math[s(268)](1,Math[s(264)](i),Math[s(264)](o))&&Math.abs(r-a)<=ur[s(250)]*Math[s(268)](1,Math[s(264)](r),Math[s(264)](a))&&Math[s(264)](n-h)<=ur[s(250)]*Math.max(1,Math[s(264)](n),Math[s(264)](h))},sub:Nr,mul:Vr,div:jr,dist:Wr,sqrDist:Hr,len:Kr,sqrLen:qr,forEach:Qr});function Jr(){var t=$r,e=new(ur[t(450)])(4);return ur[t(450)]!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0,e[3]=0),e}function Xr(){var t=["max","sqrt","RANDOM","2396DcHGXz","1448nvWXBm","4140462WhcDod","ARRAY_TYPE","round","min","372966gghHGz","hypot","EPSILON","vec4(","28899HbzpKQ","1570PnxCpb","4389ItlEsO","ceil","34111tfWoBm","floor","959010CZanNX","length","465370bYdzLF","abs"];return(Xr=function(){return t})()}function $r(t,e){var s=Xr();return($r=function(t,e){return s[t-=448]})(t,e)}!function(t){for(var e=$r,s=t();;)try{if(512357===parseInt(e(453))/1+-parseInt(e(465))/2+parseInt(e(459))/3*(parseInt(e(470))/4)+parseInt(e(463))/5+parseInt(e(449))/6+parseInt(e(461))/7*(-parseInt(e(448))/8)+-parseInt(e(457))/9*(parseInt(e(458))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Xr);var Zr;Zr=Jr();function tn(t,e){var s=en();return(tn=function(t,e){return s[t-=323]})(t,e)}function en(){var t=["381MHPTos","9NvubqV","290hBwIjo","5449208ltHxkB","10EIuBJQ","4517933NtYXKM","1710972WDniCP","351100sgfrIU","88692ijDsRS","5568mnvHyh","996952AIJmCd"];return(en=function(){return t})()}function sn(t,e){const s=nn();return(sn=function(t,e){return s[t-=306]})(t,e)}!function(t){for(var e=tn,s=t();;)try{if(376949===-parseInt(e(327))/1+parseInt(e(328))/2*(-parseInt(e(330))/3)+parseInt(e(326))/4+parseInt(e(323))/5*(-parseInt(e(325))/6)+-parseInt(e(324))/7+parseInt(e(333))/8*(-parseInt(e(331))/9)+parseInt(e(332))/10*(parseInt(e(329))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(en);const rn=sn;function nn(){const t=["getProgramInfoLog","attribLocations","VERTEX_SHADER","slice","program","8gbMGbr","_initShaderProgram","\n precision highp float;\n varying highp vec2 vTexturePosition;\n uniform int isyuv;\n uniform sampler2D rgbaTexture;\n uniform sampler2D yTexture;\n uniform sampler2D uTexture;\n uniform sampler2D vTexture;\n\n const mat4 YUV2RGB = mat4( 1.1643828125, 0, 1.59602734375, -.87078515625,\n 1.1643828125, -.39176171875, -.81296875, .52959375,\n 1.1643828125, 2.017234375, 0, -1.081390625,\n 0, 0, 0, 1);\n\n\n void main(void) {\n\n if (isyuv>0) {\n\n highp float y = texture2D(yTexture, vTexturePosition).r;\n highp float u = texture2D(uTexture, vTexturePosition).r;\n highp float v = texture2D(vTexture, vTexturePosition).r;\n gl_FragColor = vec4(y, u, v, 1) * YUV2RGB;\n\n } else {\n gl_FragColor = texture2D(rgbaTexture, vTexturePosition);\n }\n }\n ","createProgram","uProjectionMatrix","1302WYpXtV","STATIC_DRAW","_buffers","render","getUniformLocation","_calRect","bindBuffer","rgbatexture","destroy","_loadShader","35847csPKiI","TEXTURE_MIN_FILTER","_initBuffers","createTexture","indices","RGBA","ARRAY_BUFFER","pixelStorei","SRC_ALPHA","aVertexPosition","attachShader","TEXTURE_MAG_FILTER","isInited","blendFunc","positions","texImage2D","LINEAR","height","DEPTH_BUFFER_BIT","FRAGMENT_SHADER","_clear","getShaderParameter","_vtexture","18756lEtPxl","UNSIGNED_SHORT","UNPACK_ALIGNMENT","9537590olekcV","\n attribute vec4 aVertexPosition;\n attribute vec2 aTexturePosition;\n varying lowp vec2 vTexturePosition;\n void main(void) {\n gl_Position = aVertexPosition;\n vTexturePosition = aTexturePosition;\n }\n ","getShaderInfoLog","2dTMugc","FLOAT","_ytexture","CLAMP_TO_EDGE","bindTexture","vertexAttribPointer","deleteShader","ELEMENT_ARRAY_BUFFER","isDomInited","concat","texPosition","uniformLocations","getAttribLocation","TEXTURE_2D","position","vTexture","createBuffer","TEXTURE_WRAP_S","_programInfo","_createTexture","5072154jlxHQF","shaderSource","Unable to initialize the shader program: ","uViewMatrix","ONE_MINUS_SRC_ALPHA","vertexPosition","clearDepth","log","renderYUV","useProgram","drawDom","isyuv","bufferData","2180870TITbzW","linkProgram","TEXTURE2","136fSZvRT","texParameteri","drawElements","455817RQGZlk","TEXTURE1","deleteTexture","width","TEXTURE_WRAP_T","LUMINANCE","viewport","uniform1i","texturePosition","uModelMatrix","yTexture","utexture","deleteProgram","TEXTURE0","_drawScene","clear","activeTexture","getProgramParameter","15623938iEDOCa","_utexture","texSubImage2D","UNSIGNED_BYTE","vtexture","enableVertexAttribArray","_rgbatexture","compileShader"];return(nn=function(){return t})()}!function(t){const e=sn,s=t();for(;;)try{if(991503===-parseInt(e(409))/1*(parseInt(e(370))/2)+parseInt(e(390))/3+parseInt(e(326))/4*(parseInt(e(403))/5)+-parseInt(e(364))/6*(parseInt(e(331))/7)+-parseInt(e(406))/8*(parseInt(e(341))/9)+parseInt(e(367))/10+-parseInt(e(313))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(nn);class on{constructor(t,e){const s=sn;this.gl=t,this[s(353)]=!1,this[s(378)]=!1,e&&this.gl[s(348)](this.gl[s(366)],1);const i=this[s(327)]();this[s(388)]={program:i,attribLocations:{vertexPosition:t[s(382)](i,s(350)),texturePosition:t.getAttribLocation(i,"aTexturePosition")},uniformLocations:{projectionMatrix:t[s(335)](i,s(330)),modelMatrix:t[s(335)](i,s(418)),viewMatrix:t[s(335)](i,s(393)),rgbatexture:t[s(335)](i,"rgbaTexture"),ytexture:t[s(335)](i,s(419)),utexture:t[s(335)](i,"uTexture"),vtexture:t[s(335)](i,s(385)),isyuv:t[s(335)](i,"isyuv")}},this[s(333)]=this[s(343)](),this[s(319)]=this._createTexture(),this[s(372)]=this[s(389)](),this._utexture=this[s(389)](),this[s(363)]=this[s(389)]()}[rn(339)](){const t=rn;this.gl[t(307)](this[t(388)][t(325)]),this.gl.deleteBuffer(this._buffers[t(384)]),this.gl.deleteBuffer(this[t(333)][t(380)]),this.gl.deleteBuffer(this[t(333)].indices),this.gl[t(411)](this[t(319)]),this.gl[t(411)](this[t(372)]),this.gl[t(411)](this._utexture),this.gl.deleteTexture(this[t(363)]),this[t(388)]=null,this._buffers=null,this[t(319)]=null,this[t(372)]=null,this._utexture=null,this[t(363)]=null,this.gl=null,this.isInited=!1,this.isDomInited=!1}[rn(327)](){const t=rn,e=t(368),s=t(328),i=this[t(340)](this.gl[t(323)],e),r=this[t(340)](this.gl[t(360)],s),n=this.gl[t(329)]();return this.gl[t(351)](n,i),this.gl[t(351)](n,r),this.gl[t(404)](n),this.gl[t(312)](n,this.gl.LINK_STATUS)?n:(console.log(t(392)+this.gl[t(321)](n)),null)}_loadShader(t,e){const s=rn,i=this.gl,r=i.createShader(t);return i[s(391)](r,e),i[s(320)](r),i[s(362)](r,i.COMPILE_STATUS)?r:(console[s(397)]("An error occurred compiling the shaders: "+i[s(369)](r)),i[s(376)](r),null)}[rn(343)](){const t=rn,e=this.gl,s=e[t(386)]();e[t(337)](e[t(347)],s);const i=[-1,-1,1,-1,1,1,-1,1];e[t(402)](e.ARRAY_BUFFER,new Float32Array(i),e.STATIC_DRAW);var r=[];r=r[t(379)]([0,1],[1,1],[1,0],[0,0]);const n=e[t(386)]();e.bindBuffer(e[t(347)],n),e[t(402)](e.ARRAY_BUFFER,new Float32Array(r),e[t(332)]);const o=e[t(386)]();e[t(337)](e[t(377)],o);return e.bufferData(e[t(377)],new Uint16Array([0,1,2,0,2,3]),e.STATIC_DRAW),{positions:i,position:s,texPosition:n,indices:o}}[rn(389)](){const t=rn;let e=this.gl[t(344)]();return this.gl.bindTexture(this.gl[t(383)],e),this.gl[t(407)](this.gl.TEXTURE_2D,this.gl[t(352)],this.gl[t(357)]),this.gl[t(407)](this.gl.TEXTURE_2D,this.gl[t(342)],this.gl[t(357)]),this.gl[t(407)](this.gl.TEXTURE_2D,this.gl[t(387)],this.gl[t(373)]),this.gl[t(407)](this.gl.TEXTURE_2D,this.gl[t(413)],this.gl[t(373)]),e}_drawScene(t,e,s){const i=rn;this.gl[i(415)](0,0,t,e),this.gl.enable(this.gl.BLEND),this.gl[i(354)](this.gl[i(349)],this.gl[i(394)]),this.gl.bindBuffer(this.gl[i(347)],this[i(333)].position),this.gl[i(402)](this.gl[i(347)],new Float32Array(this[i(333)][i(355)]),this.gl[i(332)]),this.gl[i(375)](this[i(388)][i(322)][i(395)],2,this.gl[i(371)],!1,0,0),this.gl[i(318)](this[i(388)].attribLocations.vertexPosition),this.gl[i(337)](this.gl[i(347)],this[i(333)].texPosition),this.gl.vertexAttribPointer(this[i(388)][i(322)][i(417)],2,this.gl[i(371)],!1,0,0),this.gl.enableVertexAttribArray(this._programInfo.attribLocations[i(417)]),this.gl[i(337)](this.gl[i(377)],this._buffers[i(345)]);s?(this.gl[i(311)](this.gl[i(308)]+3),this.gl[i(374)](this.gl.TEXTURE_2D,this[i(372)]),this.gl[i(311)](this.gl.TEXTURE0+4),this.gl[i(374)](this.gl[i(383)],this[i(314)]),this.gl[i(311)](this.gl[i(308)]+5),this.gl[i(374)](this.gl[i(383)],this[i(363)])):(this.gl.activeTexture(this.gl.TEXTURE0+2),this.gl[i(374)](this.gl.TEXTURE_2D,this[i(319)])),this.gl[i(399)](this[i(388)][i(325)]),this.gl[i(416)](this[i(388)][i(381)][i(338)],2),this.gl[i(416)](this[i(388)][i(381)].ytexture,3),this.gl[i(416)](this[i(388)][i(381)][i(306)],4),this.gl[i(416)](this[i(388)][i(381)][i(317)],5),this.gl[i(416)](this[i(388)].uniformLocations[i(401)],s?1:0),this.gl[i(408)](this.gl.TRIANGLES,6,this.gl[i(365)],0)}[rn(336)](t,e,s,i,r,n){let o=2*t/r-1,a=2*(n-e-i)/n-1,h=2*(t+s)/r-1,l=2*(n-e)/n-1;return[o,a,h,a,h,l,o,l]}[rn(361)](){const t=rn;this.gl.clearColor(0,0,0,1),this.gl[t(396)](1),this.gl[t(310)](this.gl.COLOR_BUFFER_BIT|this.gl[t(359)])}[rn(334)](t,e,s,i,r){const n=rn;if(!this.gl)return;const o=this.gl;this[n(361)](),this[n(353)]?(o[n(311)](o.TEXTURE0),o[n(374)](o[n(383)],this[n(372)]),o.texSubImage2D(o[n(383)],0,0,0,t,e,o[n(414)],o[n(316)],s),o[n(311)](o.TEXTURE1),o[n(374)](o.TEXTURE_2D,this[n(314)]),o.texSubImage2D(o[n(383)],0,0,0,t/2,e/2,o[n(414)],o[n(316)],i),o[n(311)](o[n(405)]),o[n(374)](o[n(383)],this._vtexture),o[n(315)](o[n(383)],0,0,0,t/2,e/2,o[n(414)],o[n(316)],r),this._buffers[n(355)]=[-1,-1,1,-1,1,1,-1,1],this[n(309)](t,e,!0)):(this[n(353)]=!0,o.activeTexture(o.TEXTURE0),o[n(374)](o.TEXTURE_2D,this[n(372)]),o[n(356)](o[n(383)],0,o.LUMINANCE,t,e,0,o[n(414)],o[n(316)],s),o[n(311)](o[n(410)]),o.bindTexture(o[n(383)],this._utexture),o[n(356)](o.TEXTURE_2D,0,o[n(414)],t/2,e/2,0,o[n(414)],o[n(316)],i),o[n(311)](o.TEXTURE2),o.bindTexture(o.TEXTURE_2D,this[n(363)]),o[n(356)](o[n(383)],0,o[n(414)],t/2,e/2,0,o.LUMINANCE,o[n(316)],r),this._buffers.positions=[-1,-1,1,-1,1,1,-1,1],this._drawScene(t,e,!0))}[rn(398)](t,e,s){const i=rn;let r=s[i(324)](0,t*e),n=s[i(324)](t*e,t*e*5/4),o=s[i(324)](t*e*5/4,t*e*3/2);this.render(t,e,r,n,o)}[rn(400)](t,e,s,i,r){const n=rn;if(!this.gl)return;const o=this.gl;o.activeTexture(o[n(308)]),o.bindTexture(o[n(383)],this[n(319)]),this[n(378)]?o[n(315)](o[n(383)],0,0,0,o[n(346)],o[n(316)],r):(o[n(356)](o.TEXTURE_2D,0,o[n(346)],o[n(346)],o[n(316)],r),this.isDomInited=!0),this[n(333)][n(355)]=this[n(336)](s,i,r[n(412)],r[n(358)],t,e),this[n(309)](t,e,!1)}}const an=ln;!function(t){const e=ln,s=t();for(;;)try{if(360471===-parseInt(e(387))/1+parseInt(e(362))/2*(-parseInt(e(377))/3)+parseInt(e(364))/4*(-parseInt(e(395))/5)+-parseInt(e(411))/6*(parseInt(e(439))/7)+parseInt(e(401))/8*(-parseInt(e(383))/9)+parseInt(e(366))/10*(-parseInt(e(447))/11)+parseInt(e(405))/12*(parseInt(e(445))/13))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(cn);const hn={YUV_I420:1,YUV_NV12:2,RGBA:3,DOM:4};function ln(t,e){const s=cn();return(ln=function(t,e){return s[t-=359]})(t,e)}function cn(){const t=["78fUHDJG","YUV_NV12","\n @group(1) @binding(0) var mySampler: sampler;\n @group(1) @binding(1) var<uniform> pixelType: i32;\n @group(1) @binding(2) var yTexture: texture_2d<f32>;\n @group(1) @binding(3) var uTexture: texture_2d<f32>;\n @group(1) @binding(4) var vTexture: texture_2d<f32>;\n @group(1) @binding(5) var uvTexture: texture_2d<f32>;\n @group(1) @binding(6) var rgbaTexture: texture_2d<f32>;\n\n const YUV2RGB : mat4x4<f32> = mat4x4<f32>( 1.1643828125, 0, 1.59602734375, -.87078515625,\n 1.1643828125, -.39176171875, -.81296875, .52959375,\n 1.1643828125, 2.017234375, 0, -1.081390625,\n 0, 0, 0, 1);\n\n @fragment\n fn main(\n @location(0) vTexturePosition: vec2<f32>\n ) -> @location(0) vec4<f32> {\n if(pixelType == 1){\n var y : f32= textureSample(yTexture, mySampler, vTexturePosition).r;\n var u : f32 = textureSample(uTexture, mySampler, vTexturePosition).r;\n var v : f32 = textureSample(vTexture, mySampler, vTexturePosition).r;\n\n return vec4<f32>(y, u, v, 1.0)*YUV2RGB;\n } else if (pixelType == 2) {\n\n var y : f32= textureSample(yTexture, mySampler, vTexturePosition).r;\n var u : f32 = textureSample(uvTexture, mySampler, vTexturePosition).r;\n var v : f32 = textureSample(uvTexture, mySampler, vTexturePosition).g;\n\n return vec4<f32>(y, u, v, 1.0)*YUV2RGB;\n } else {\n\n return textureSample(rgbaTexture, mySampler, vTexturePosition);\n }\n\n }\n\n ","createBindGroup","auto","TEXTURE_BINDING","1181997LcNwat","submit","identity","VERTEX","396987YHhPiV","_initPipeline","isDestroyed","writeBuffer","triangle-list","buffers","device","getBindGroupLayout","59695bkmJEH","displayHeight","then","float32x2","byteLength","createTexture","24FGpiRk","main","drawIndexed","finish","23545884uZwQhj","rgbaTexture","\n\n @binding(0) @group(0) var<uniform> uModelMatrix : mat4x4<f32>;\n @binding(1) @group(0) var<uniform> uViewMatrix : mat4x4<f32>;\n @binding(2) @group(0) var<uniform> uProjectionMatrix : mat4x4<f32>;\n\n struct VertexOutput {\n @builtin(position) Position : vec4<f32>,\n @location(0) vTexturePosition : vec2<f32>,\n }\n\n @vertex\n fn main(\n @location(0) aVertexPosition : vec4<f32>,\n @location(1) aTexturePosition : vec2<f32>\n ) -> VertexOutput {\n var output : VertexOutput;\n var tmppos : vec4<f32> = uProjectionMatrix * uViewMatrix * uModelMatrix * aVertexPosition;\n output.Position = vec4<f32>(tmppos.x, tmppos.y, (tmppos.z+1.)/2., tmppos.w); // webgl z [-1, 1], webgpu z [0, 1], 这里z做下调整 z-webgpu = (z-webgl+1)/2\n output.vTexturePosition = aTexturePosition;\n return output;\n }\n\n ","catch","createBuffer","group","12BNAtWP","positionBuffer","vTexture","createRenderPipelineAsync","hasInited","less","pixelTypeBuffer","_initMatrixGroupInfo","rgba8unorm","GPUTextureUsage","gpu","fromValues","copyExternalImageToTexture","uTexture","format","clear","setBindGroup","depthTexture","setPipeline","RENDER_ATTACHMENT","pipeline","setVertexBuffer","_initBuffer","queue","destroy","depth24plus","end","context","538804gaTQdJ","createCommandEncoder","yTexture","group1","beginRenderPass","slice","13jVthlb","r8unorm","1206403Nkfqkj","_drawScene","linear","store","writeTexture","group0","renderYUV","setIndexBuffer","getCurrentTexture","textureGroupInfo","create","9598umZpvC","createShaderModule","68ghnOop","render","30oNtkVL","createView","COPY_DST","float32x3","UNIFORM","indexBuffer","matrixGroupInfo","uint16","DOM","_initTextureGroupInfo","GPUBufferUsage"];return(cn=function(){return t})()}class dn{constructor(t){const e=ln;this[e(421)]=t,this.pipeline=null,this[e(372)]=null,this[e(428)]=null,this[e(360)]=null,this[e(415)]=!1,this[e(392)]=this[e(433)](),this[e(389)]=!1,this[e(388)]()[e(397)](t=>{const s=e;this.isDestroyed||(this[s(431)]=t,this[s(372)]=this[s(418)](),this[s(372)]&&(this[s(415)]=!0))})}destroy(){const t=ln;this.isDestroyed=!1,this[t(421)]&&(this[t(421)][t(393)][t(435)](),this[t(421)]=null),this[t(415)]=!1,this[t(431)]=null,this[t(372)]=null,this.depthTexture=null,this[t(360)]=null}[an(433)](){const t=an,e=this[t(421)][t(393)],s=new Float32Array([-1,-1,-1,1,-1,-1,1,1,-1,-1,1,-1]),i=e[t(409)]({size:s[t(399)],usage:window.GPUBufferUsage[t(386)]|window[t(376)][t(368)]});e.queue[t(390)](i,0,s);const r=new Float32Array([0,1,1,1,1,0,0,0]),n=e.createBuffer({size:r[t(399)],usage:window[t(376)][t(386)]|window[t(376)].COPY_DST});e[t(434)].writeBuffer(n,0,r);const o=new Uint16Array([0,1,2,0,2,3]),a=e.createBuffer({size:o[t(399)],usage:window[t(376)].INDEX|window[t(376)][t(368)]});return e[t(434)][t(390)](a,0,o),{positionBuffer:i,texpositionBuffer:n,indexBuffer:a}}[an(388)](){return new Promise((t,e)=>{const s=ln,i=this[s(421)].device,r=this[s(421)][s(425)],n=s(407),o=s(379),a={layout:s(381),vertex:{module:i[s(363)]({code:n}),entryPoint:s(402),buffers:[{arrayStride:12,attributes:[{shaderLocation:0,offset:0,format:s(369)}]},{arrayStride:8,attributes:[{shaderLocation:1,offset:0,format:s(398)}]}]},primitive:{topology:s(391)},fragment:{module:i[s(363)]({code:o}),entryPoint:s(402),targets:[{format:r}]},depthStencil:{depthWriteEnabled:!0,depthCompare:s(416),format:s(436)}};i[s(414)](a)[s(397)](e=>{t(e)})[s(408)](t=>{e(t)})})}[an(418)](){const t=an;if(!this[t(421)])return null;const e=this[t(421)][t(393)],s=this[t(431)],i=Cr[t(361)]();Sr(i,-1,1,-1,1,.1,100);const r=pr();Cr[t(385)](r);const n=Cr[t(361)]();Er(n,Yr[t(422)](0,0,0),Yr[t(422)](0,0,-1),Yr[t(422)](0,1,0));const o=e[t(409)]({size:64,usage:window[t(376)][t(370)]|window[t(376)].COPY_DST});e[t(434)][t(390)](o,0,r);const a=e.createBuffer({size:64,usage:window[t(376)].UNIFORM|window[t(376)].COPY_DST});e[t(434)][t(390)](a,0,n);const h=e[t(409)]({size:64,usage:window[t(376)][t(370)]|window[t(376)][t(368)]});e[t(434)][t(390)](h,0,i);return{modelMatrixBuffer:o,viewMatrixBuffer:a,projectMatrixBuffer:h,group:e[t(380)]({label:t(452),layout:s.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:o}},{binding:1,resource:{buffer:a}},{binding:2,resource:{buffer:h}}]})}}[an(375)](t,e){const s=an,i=this[s(421)][s(393)],r=this[s(431)],n=i[s(400)]({size:[t,e],format:s(446),usage:window[s(420)][s(382)]|window[s(420)][s(368)]|window.GPUTextureUsage[s(430)]}),o=i[s(400)]({size:[t/2,e/2],format:s(446),usage:window.GPUTextureUsage.TEXTURE_BINDING|window[s(420)][s(368)]|window.GPUTextureUsage.RENDER_ATTACHMENT}),a=i.createTexture({size:[t/2,e/2],format:s(446),usage:window[s(420)][s(382)]|window[s(420)][s(368)]|window[s(420)][s(430)]}),h=i[s(400)]({size:[t/2,e/2],format:"rg8unorm",usage:window[s(420)][s(382)]|window.GPUTextureUsage[s(368)]|window[s(420)][s(430)]}),l=i[s(400)]({size:[t,e],format:s(419),usage:window.GPUTextureUsage[s(382)]|window[s(420)][s(368)]|window[s(420)][s(430)]}),c=i[s(409)]({size:4,usage:window[s(376)].UNIFORM|window[s(376)][s(368)]}),d=i.createSampler({magFilter:s(449),minFilter:"linear"}),u=i.createBindGroup({label:s(442),layout:r[s(394)](1),entries:[{binding:0,resource:d},{binding:1,resource:{buffer:c}},{binding:2,resource:n.createView()},{binding:3,resource:o[s(367)]()},{binding:4,resource:a[s(367)]()},{binding:5,resource:h[s(367)]()},{binding:6,resource:l[s(367)]()}]});return{yTexture:n,uTexture:o,vTexture:a,uvTexture:h,rgbaTexture:l,pixelTypeBuffer:c,group:u}}_drawScene(){const t=an,e=this[t(421)].device,s=this.gpu[t(438)],i=e[t(440)](),r={colorAttachments:[{view:s[t(359)]()[t(367)](),clearValue:{r:0,g:0,b:0,a:0},loadOp:t(426),storeOp:t(450)}],depthStencilAttachment:{view:this[t(428)][t(367)](),depthClearValue:1,depthLoadOp:t(426),depthStoreOp:t(450)}},n=i[t(443)](r);n[t(429)](this[t(431)]),n[t(427)](0,this[t(372)].group),n[t(427)](1,this[t(360)][t(410)]),n.setVertexBuffer(0,this[t(392)][t(412)]),n[t(432)](1,this[t(392)].texpositionBuffer),n[t(454)](this[t(392)][t(371)],t(373)),n[t(403)](6),n[t(437)](),e.queue[t(384)]([i[t(404)]()])}[an(453)](t,e,s){const i=an;if(!this[i(421)])return;if(!this.hasInited)return;let r=s[i(444)](0,t*e),n=s[i(444)](t*e,t*e*5/4),o=s.slice(t*e*5/4,t*e*3/2);const a=this[i(421)].device;!this[i(428)]&&(this[i(428)]=this[i(421)][i(393)].createTexture({size:[t,e],format:i(436),usage:window.GPUTextureUsage[i(430)]})),!this[i(360)]&&(this[i(360)]=this[i(375)](t,e)),a[i(434)][i(390)](this[i(360)][i(417)],0,new Uint32Array([hn.YUV_I420])),a[i(434)][i(451)]({texture:this[i(360)].yTexture},r,{bytesPerRow:t,rowsPerImage:e},[t,e]),a[i(434)][i(451)]({texture:this[i(360)][i(424)]},n,{bytesPerRow:t/2,rowsPerImage:e/2},[t/2,e/2]),a[i(434)][i(451)]({texture:this.textureGroupInfo[i(413)]},o,{bytesPerRow:t/2,rowsPerImage:e/2},[t/2,e/2]),this[i(448)]()}renderYUV_NV12(t,e,s){const i=an;if(!this.gpu)return;if(!this[i(415)])return;const r=this.gpu[i(393)];!this[i(428)]&&(this.depthTexture=this[i(421)][i(393)][i(400)]({size:[t,e],format:i(436),usage:window[i(420)].RENDER_ATTACHMENT})),!this[i(360)]&&(this[i(360)]=this[i(375)](t,e));let n=s[i(444)](0,t*e),o=s[i(444)](t*e,t*e*3/2);r[i(434)].writeBuffer(this[i(360)].pixelTypeBuffer,0,new Uint32Array([hn[i(378)]])),r[i(434)][i(451)]({texture:this[i(360)][i(441)]},n,{bytesPerRow:t,rowsPerImage:e},[t,e]),r[i(434)][i(451)]({texture:this[i(360)].uvTexture},o,{bytesPerRow:t,rowsPerImage:e/2},[t/2,e/2]),this[i(448)]()}[an(365)](t){const e=an;if(!this.gpu)return;if(!this[e(415)])return;const s=this.gpu[e(393)],i=t.displayWidth,r=t[e(396)];!this[e(428)]&&(this.depthTexture=this[e(421)][e(393)].createTexture({size:[i,r],format:e(436),usage:window[e(420)][e(430)]})),!this[e(360)]&&(this.textureGroupInfo=this[e(375)](i,r)),s.queue[e(390)](this[e(360)][e(417)],0,new Uint32Array([hn[e(374)]])),s[e(434)][e(423)]({source:t},{texture:this[e(360)][e(406)]},[i,r]),this[e(448)]()}[an(426)](){}}const un=An;function pn(t,e){return t[An(405)].add(e)}function fn(t,e){const s=An;return t[s(405)][s(425)](e)}function mn(t,e){const s=An;return t.classList[s(418)](e)}function gn(t,e){const s=An;return e instanceof Element?t.appendChild(e):t[s(436)](s(430),String(e)),t[s(434)]||t[s(387)]}function yn(t,e,s){const i=An;return t&&t.style&&Ws(e)&&(t[i(435)][e]=s),t}function An(t,e){const s=bn();return(An=function(t,e){return s[t-=384]})(t,e)}function bn(){const t=["map","width","84dyGZxU","querySelectorAll","filter","17586qcIfaO","293130bRpQaT","getPropertyValue","from","contains","24EmsWBt","match","indexOf","createDocumentFragment","forEach","firstElementChild","remove","left","innerWidth","clientWidth","3278hXDlZM","beforeend","firstChild","getBoundingClientRect","763ItakzW","lastElementChild","style","insertAdjacentHTML","88ZOMczB","setAttribute","appendChild","querySelector","parentElement","children","aria-label","scale(","23713368tHMZSI","documentElement","div","lastChild","innerHTML","insertBefore","1006569xpGMyw","parentNode","getComputedStyle","createElement","composedPath","replaceChild","268BobQDv","95856IBhfLQ","replace","height","beforebegin","top","removeChild","afterend","2439040FvPvsl","classList","afterbegin","split","nextSibling"];return(bn=function(){return t})()}function vn(t){const e=An,s=t[e(432)](),i=window.innerHeight||document[e(385)].clientHeight,r=window[e(427)]||document.documentElement.clientWidth,n=s.top<=i&&s[e(401)]+s[e(399)]>=0,o=s[e(426)]<=r&&s[e(426)]+s[e(410)]>=0;return n&&o}function Sn(t,e){const s=An;return t.composedPath&&t[s(394)]()[s(421)](e)>-1}function En(t){const e=An;let s=!1;return t&&(t[e(388)]="",t[e(391)]&&(t.parentNode[e(402)](t),s=!0)),s}function wn(t){const e=An;let s=t[e(435)].transform[e(420)](/scale\([0-9., ]*\)/g),i=null;if(s&&s[0]){i=s[0][e(398)](e(444),"")[e(398)](")","")[e(407)](",")}return i&&(i=i[e(409)](t=>parseFloat(t.trim()))),i}function Tn(t,e=un(430),s){const i=un,r=document[i(393)](i(386));r[i(388)]=t;const n=document[i(422)]();for(;r[i(431)];)n[i(439)](r.firstChild);switch(e){case i(400):s[i(391)][i(389)](n,s);break;case"afterbegin":s[i(389)](n,s[i(431)]);break;case"beforeend":s[i(439)](n);break;case i(403):s[i(391)][i(389)](n,s[i(408)]);break;default:s[i(439)](n)}}!function(t){const e=An,s=t();for(;;)try{if(464172===parseInt(e(396))/1*(-parseInt(e(429))/2)+-parseInt(e(411))/3*(parseInt(e(397))/4)+parseInt(e(404))/5+parseInt(e(414))/6*(-parseInt(e(433))/7)+-parseInt(e(419))/8*(parseInt(e(390))/9)+parseInt(e(415))/10*(-parseInt(e(437))/11)+parseInt(e(384))/12)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(bn);const In=_n;function kn(){const t=["list","right","html","7558LepGtn","clipPath","isFullResize","content","sqrt","video","videoRectContentClick","calc(100% - ","-webkit-text-size-adjust","207RwoKqv","forEach","75016kNYnmn","overflow","emitClickEvent","canvas","top","getVideoInfo","zIndex","479028zlidtM","block","solid","dataset","angle","insertBefore","0 0","-ms-user-select","function","color","273965VqPULI","4372767PrpzOW","-webkit-user-select","display","polygon","bound","dataContent","click","499044kBDECx","px 0","line","scale(","level","map","bind","text","setAttribute","_resizeDomForCanvas","fontSize","position: absolute; top: 0; left: 0; width: 0; height: 0;display: none;","src","_resizeDomForVideo","addEventListener","backgroundColor","-webkit-tap-highlight-color","remove","style","_initDom","rotate","position: absolute !important; width: 100% !important; height: 100% !important; top: 0 !important; left: 0 !important;","$container","appendChild","index","resize","debugLog","px)","image","_removeDom","length","int","SingleWatermark"," rotateX(180deg)","getShowVideoRect","122578XSXqWl","height"," rotate(","transform","-webkit-touch-callout","shadowRootDynamicDom","player","position","objectFit","bottom","div","floor","default","lineWidth","none","width","createTextNode","mirrorRotate","visibility","TAG_NAME","isArray"," rotateY(180deg)","203AapmxX","9999999","100%","shadowRoot","fill","isDynamic","shadowRootInnerDom","stopPropagation","sort","preventDefault","settingLine","pointer-events: none !important;display: block !important;","rotate(","children","vertical","rect","borderWidth","push","opacity","isResize","padding","deg)","removeEventListener","absolute","% - ","handleShadowRootInnerDomClick","fillOpacity","shadowRootRealDom","shadowRootInnerDomClick","_opt","getControlHeight","attachShadow","innerHTML","getRenderType","configList","open","createElement","_resizeDomRatio","left","scale"];return(kn=function(){return t})()}function _n(t,e){const s=kn();return(_n=function(t,e){return s[t-=403]})(t,e)}!function(t){const e=_n,s=t();for(;;)try{if(159529===parseInt(e(485))/1+parseInt(e(414))/2*(parseInt(e(423))/3)+parseInt(e(450))/4+-parseInt(e(442))/5+-parseInt(e(432))/6+-parseInt(e(507))/7*(-parseInt(e(425))/8)+-parseInt(e(443))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(kn);class Cn{constructor(t,e={}){const s=_n;this[s(491)]=t,this[s(536)]=e,this.TAG_NAME=s(482),this.configList=[],this[s(510)]=null,this[s(534)]=null,this.shadowRootInnerDom=null,this[s(490)]=null,this.scale=1,this.isDynamic=!1,this[s(447)]={shadowRootInnerDomClick:this[s(532)][s(456)](this)},this[s(469)](),e[s(427)]&&this[s(513)][s(464)](s(449),this[s(447)].shadowRootInnerDomClick,!1),this.player[s(476)](this[s(504)],s(481))}destroy(){const t=_n;if(this[t(405)]=[],this[t(467)](),this[t(513)]&&this[t(536)][t(427)]&&this.shadowRootInnerDom[t(529)](t(449),this.bound[t(535)],!1),this[t(513)]=null,this.shadowRootDynamicDom=null,this[t(512)]=!1,this.scale=1,this[t(510)]){!En(this[t(534)])&&this.shadowRootRealDom.remove(),this[t(510)][t(403)]="",this.shadowRoot=null,this[t(534)]=null}this[t(447)]=null,this._opt=null,this[t(491)][t(476)](this[t(504)],"destroy")}[In(532)](t){const e=In;t[e(514)](),t[e(516)]();const s=li(t);if(s&&s[e(435)]){const t=s[e(435)].content;t&&this[e(491)].emit(q[e(420)],t)}}[In(475)](){const t=In;this[t(491)][t(476)](this[t(504)],"resize()"),this.player._opt.aspectRatio===t(497)||ys()?this[t(491)][t(404)]()===A[t(428)]?this[t(459)]():this[t(491)].getRenderType()===A[t(419)]&&this[t(463)]():this[t(408)]()}[In(469)](){const t=In,e=this[t(491)][t(472)];let s=null;const i=document.createElement(t(495));let r=t(518);this[t(536)][t(427)]&&(r=t(471)),i[t(458)]("style",r),s=typeof i.attachShadow===t(440)?i[t(538)]({mode:t(406)}):i[t(510)]?i.shadowRoot:i;const n=document[t(407)](t(495));n.setAttribute(t(468),t(461)),s[t(473)](n);const o=e[t(520)],a=Math[t(496)](Math.random()*(o.length-1))+1;o[a]?e[t(437)](i,o[a]):e[t(473)](i),this[t(513)]=n,this.shadowRootRealDom=i,this[t(510)]=s}update(t){const e=In;this[e(479)]();let s=[];Array[e(505)](t)?s=t:ii(t)&&s[e(524)](t);let i=s[e(455)](t=>Gs(t));this[e(405)]=i,this._updateDom()}_resizeDomForVideo(){const t=In,e=this[t(491)][t(430)]();if(!(e&&e.height>0&&e[t(500)]>0))return;let s=e[t(500)],i=e[t(486)];const r=this.player[t(536)],n=this[t(491)][t(484)]();let o=n[t(486)],a=n[t(500)];const h=r[t(470)];let l=(a-s)/2,c=(o-i)/2;(270===h||90===h)&&(s=e[t(486)],i=e[t(500)]);const d=a/s,u=o/i;let p=d>u?u:d;xi(r[t(526)])&&d!==u&&(p=d+","+u),r[t(416)]&&(p=d>u?d:u);let f=t(453)+p+")";r[t(502)]===t(499)&&h&&(f+=t(487)+h+t(528)),"level"===r.mirrorRotate?f+=t(506):"vertical"===r[t(502)]&&(f+=t(483)),this[t(410)]=-1!==(""+p).indexOf(",")?d:p,this[t(513)].style[t(488)]=f,this[t(513)].style.left=l+"px",this.shadowRootInnerDom[t(468)].top=c+"px",this.shadowRootInnerDom[t(468)][t(500)]=e[t(500)]+"px",this[t(513)][t(468)][t(486)]=e.height+"px",this[t(513)].style.display=t(433)}[In(459)](){const t=In,e=this[t(491)][t(430)]();if(!(e&&e[t(486)]>0&&e[t(500)]>0))return;const s=this.player[t(536)],i=this[t(491)][t(484)]();let r=i[t(500)],n=i[t(486)],o=e[t(500)],a=e[t(486)];const h=s[t(470)];let l=(r-o)/2,c=(n-a)/2;(270===h||90===h)&&(o=e[t(486)],a=e[t(500)]);const d=r/o,u=n/a;let p=d>u?u:d;!s.isResize&&d!==u&&(p=d+","+u),s.isFullResize&&(p=d>u?d:u);let f=t(453)+p+")";s[t(502)]===t(499)&&h&&(f+=t(487)+h+t(528)),s[t(502)]===t(454)?f+=t(506):s.mirrorRotate===t(521)&&(f+=t(483)),this.shadowRootInnerDom[t(468)][t(486)]=e[t(486)]+"px",this[t(513)][t(468)][t(500)]=e[t(500)]+"px",this[t(513)][t(468)][t(527)]="0",this.shadowRootInnerDom[t(468)].transform=f,this[t(513)][t(468)][t(409)]=l+"px",this[t(513)][t(468)][t(429)]=c+"px",this[t(513)][t(468)][t(445)]=t(433)}_resizeDomRatio(){const t=In,e=this.player[t(430)]();if(!(e&&e[t(486)]>0&&e.width>0))return;const s=this.player[t(536)].aspectRatio.split(":")[t(455)](Number),i=this.player[t(484)]();let r=i[t(500)],n=i[t(486)],o=this.player[t(537)]();const a=e[t(500)]/e[t(486)],h=s[0]/s[1];if(a>h){const s=h*e[t(486)]/e[t(500)];this.shadowRootInnerDom.style[t(500)]=100*s+"%",this[t(513)][t(468)].height=t(421)+o+t(477),this[t(513)][t(468)][t(527)]="0 "+(r-r*s)/2+"px"}else{const s=e[t(500)]/h/e[t(486)];this.shadowRootInnerDom.style[t(500)]=t(509),this[t(513)][t(468)][t(486)]="calc("+100*s+t(531)+o+t(477),this[t(513)][t(468)][t(527)]=(n-n*s)/2+t(451)}this[t(513)][t(468)][t(445)]="block"}_updateDom(){const t=In;this[t(510)]&&this[t(405)][t(424)](e=>{const s=t,i=document[s(407)](s(495));let r=null;if(e[s(478)]&&e[s(478)][s(462)]?(r=document[s(407)]("img"),r[s(468)][s(486)]=s(509),r[s(468)][s(500)]=s(509),r[s(468)][s(493)]="contain",r[s(462)]=e.image.src):e[s(457)]&&e.text[s(417)]?r=document[s(501)](e[s(457)].content):e.rect&&e[s(522)][s(441)]&&e[s(522)][s(500)]?r=document[s(407)]("div"):e[s(413)]||e[s(452)]&&e[s(452)].x1&&e.line.y1&&e[s(452)].x2&&e[s(452)].y2?r=document[s(407)](s(495)):e[s(446)]&&e.polygon[s(411)]&&e[s(446)].list[s(480)]>=3&&(r=document.createElement(s(495))),r){if(i[s(473)](r),i[s(468)][s(503)]="",i[s(468)][s(492)]=s(530),i.style[s(445)]="block",i[s(468)][s(439)]="none",i.style["-moz-user-select"]="none",i.style[s(444)]="none",i.style["-o-user-select"]=s(499),i.style["user-select"]="none",i[s(468)][s(489)]=s(499),i.style[s(466)]="rgba(0,0,0,0)",i[s(468)][s(422)]=s(499),i[s(468)]["-webkit-touch-callout"]=s(499),i[s(468)][s(525)]=e[s(525)],Ws(e[s(409)])&&(xs(e[s(409)])?i.style[s(409)]=e.left+"px":i[s(468)][s(409)]=e[s(409)]),Ws(e[s(412)])&&(xs(e.right)?i[s(468)][s(412)]=e[s(412)]+"px":i[s(468)][s(412)]=e[s(412)]),Ws(e[s(429)])&&(xs(e[s(429)])?i[s(468)][s(429)]=e[s(429)]+"px":i[s(468)][s(429)]=e[s(429)]),Ws(e[s(494)])&&(xs(e[s(494)])?i[s(468)][s(494)]=e[s(494)]+"px":i[s(468)][s(494)]=e.bottom),e[s(465)]&&(i[s(468)][s(465)]=e[s(465)]),i[s(468)][s(426)]="hidden",i[s(468)][s(431)]=s(508),e[s(478)]&&e[s(478)].src)i[s(468)][s(500)]=e[s(478)][s(500)]+"px",i[s(468)][s(486)]=e[s(478)][s(486)]+"px",e[s(448)]&&(i[s(435)].content=e.dataContent);else if(e[s(457)]&&e[s(457)][s(417)])i.style[s(460)]=e[s(457)][s(460)]+"px",i[s(468)][s(441)]=e[s(457)][s(441)],e[s(457)].width&&(i[s(468)].width=e[s(457)].width+"px"),e.text.height&&(i[s(468)][s(486)]=e.text[s(486)]+"px"),e[s(448)]&&(i[s(435)][s(417)]=e[s(448)]),e.text[s(436)]&&(i[s(468)].transform=s(519)+e.text[s(436)]+"deg)");else if(e.rect&&e.rect[s(441)]&&e[s(522)].width){if(i[s(468)][s(500)]=e.rect[s(500)]+"px",i[s(468)][s(486)]=e[s(522)][s(486)]+"px",i.style[s(523)]=e[s(522)].lineWidth+"px",i.style.borderStyle=s(434),i[s(468)].borderColor=e[s(522)][s(441)],e.rect.angle&&(i[s(468)][s(488)]="rotate("+e[s(522)][s(436)]+s(528)),e[s(448)]&&(i.dataset[s(417)]=e.dataContent),e.rect[s(511)]){const t=document.createElement(s(495));t[s(468)].position=s(530),t[s(468)].width=s(509),t[s(468)].height=s(509),t[s(468)].backgroundColor=e[s(522)][s(511)],e[s(522)][s(533)]&&(t[s(468)][s(525)]=e[s(522)][s(533)]),e.dataContent&&(t[s(435)].content=e[s(448)]),i[s(473)](t)}}else if(e.html)i[s(468)][s(500)]="100%",i.style.height=s(509),i[s(403)]=e.html;else if(e[s(452)]&&e[s(452)].x1&&e[s(452)].y1&&e[s(452)].x2&&e.line.y2)this[s(517)](i,e[s(452)]);else if(e[s(446)]&&e[s(446)][s(411)]&&e[s(446)][s(411)].length>=3){i[s(468)][s(500)]=s(509),i[s(468)][s(486)]=s(509);let t=e[s(446)][s(411)];const r=e.polygon[s(441)],n=e.polygon.lineWidth;if(t=t[s(515)]((t,e)=>(t[s(474)]||0)-(e.index||0)),e[s(446)][s(511)]){const r=document.createElement(s(495));r[s(468)][s(492)]=s(530),r[s(468)][s(500)]=s(509),r[s(468)][s(486)]=s(509);const n="polygon("+t.map(t=>t.x+"px "+t.y+"px").join(", ")+")";r[s(468)][s(415)]=n,r[s(468)][s(465)]=e[s(446)][s(511)],e[s(446)][s(533)]&&(r[s(468)].opacity=e[s(446)][s(533)]),i.appendChild(r)}t[s(424)]((e,o)=>{const a=s,h=document.createElement("div");if(o===t[a(480)]-1){const s=t[0],o={x1:e.x,y1:e.y,x2:s.x,y2:s.y,color:r,lineWidth:n};return this[a(517)](h,o),void i[a(473)](h)}const l=t[o+1],c={x1:e.x,y1:e.y,x2:l.x,y2:l.y,color:r,lineWidth:n};this[a(517)](h,c),i[a(473)](h)})}this.isDynamic&&(this.shadowRootDynamicDom=i),this[s(513)][s(473)](i)}})}[In(517)](t,e){const s=In,i=e.x1,r=e.y1,n=e.x2,o=e.y2;var a=Math[s(418)]((i-n)**2+(r-o)**2),h=180*Math.atan2(o-r,n-i)/Math.PI;t[s(468)][s(465)]=e[s(441)],t.style.width=a+"px",t[s(468)][s(486)]=e[s(498)]+"px",t[s(468)][s(492)]="absolute",t[s(468)][s(429)]=r+"px",t[s(468)].left=i+"px",t.style.transform=s(519)+h+s(528),t[s(468)].transformOrigin=s(438)}remove(){this[In(479)]()}[In(479)](){const t=In;this[t(513)]&&(this[t(513)][t(403)]="")}}const Dn=Rn;function Ln(){const t=["map","off","aiContentWatermark","aiCheck","initFps","459KEVmvm","rect","emit","singleWatermark","clearView","player","prevAiObjectDetectTime","prevTempAiContentListString","zooming","length","755251pAXtKa","ghostWatermark","streamFps","none","emitVideoContentClickEvent","resizeLoadingBackground","prevAiFaceDetectTime","_resizeRatio","363172LRqtEx","updateVideoElementScaleByResize","faceDetector","TAG_NAME","tempAiContentList","prevTempContentListString","_off","height","objectFit","_opt","remove","calc(","needAiCheck","objectDetector","aiImageDetectDrop","doAddContentToWatermark","fillOpacity","yuv","contentWatermark","play","bufferList","width","split","doRender() and ai image detect result type is ","getControlHeight","getVideoInfo","getCanvasType","licensePlateDetectActive","setRate","detect","updatePrevVideoElementStyleScale","488028moHLrG","update","bindMediaStream","green","tempContentList","resize()","padding","fill","updateVideoInfo","6416jLLniw","faceDetectActive","lineWidth","init","isVideoPlaying","20vdeJwP","getStreamFps","getName","291648idPRcz","top","calc(100% - ","doAddAiContentToWatermark","getHasInit","destroy","aiImageDetectResult","aiFaceDetectInterval","video","pause","canvas","dataContent","stringify","imageDetectActive","setStreamFps","getType","zoom","updateInitVideoPosition","imageDetector","licensePlateDetector","resize","screenshotByCurrentWatermark","prevAiOcclusionDetectTime","px 0","prevAiLicensePlateDetectTime","resetInit","aiObjectDetectInterval","dynamicWatermark","updateVideoInfoByWebrtc","px)","screenshotByRect","videoInfo","objectDetectActive","left","100%","angle","$videoElement","default","line","occlusionDetectActive","CommonVideo","polygon","encTypeCode","% - ","isPlaying","check","getPlaybackQuality","occlusionDetector","addContentToCanvas","getReadyStateInited","231440OjQtjT","color","push","style","#000","aiOcclusionDetectResult","addAiContentToCanvas","encType","text","type","isVideoWaiting","26634AyBXPG","aspectRatio","getCurrentTime","debugLog","i420","aiLicensePlateDetectInterval"];return(Ln=function(){return t})()}function Rn(t,e){const s=Ln();return(Rn=function(t,e){return s[t-=240]})(t,e)}!function(t){const e=Rn,s=t();for(;;)try{if(128203===parseInt(e(249))/1+parseInt(e(289))/2+-parseInt(e(320))/3+-parseInt(e(337))/4+-parseInt(e(334))/5*(-parseInt(e(260))/6)+-parseInt(e(281))/7+-parseInt(e(329))/8*(-parseInt(e(271))/9))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Ln);class Pn extends h{constructor(){const t=Rn;super(),this.TAG_NAME="",this.videoInfo={width:null,height:null,encType:null,encTypeCode:null},this[t(332)]=!1,this.prevAiFaceDetectTime=null,this.prevAiObjectDetectTime=null,this[t(359)]=null,this[t(361)]=null,this[t(307)]=null,this.aiContentWatermark=null,this.tempContentList=[],this.prevTempContentListString="",this[t(293)]=[],this.prevTempAiContentListString="",this[t(309)]=[],this.streamFps=0,this._isDestroyed=!1}[Dn(342)](){const t=Dn;this._isDestroyed=!0,this[t(362)](),this[t(368)]={width:null,height:null,encType:null,encTypeCode:null},this[t(307)]&&(this[t(307)].destroy(),this.contentWatermark=null),this[t(324)]=[],this[t(294)]="",this[t(268)]&&(this[t(268)].destroy(),this[t(268)]=null),this[t(293)]=[],this[t(278)]="",this[t(287)]=null,this[t(277)]=null,this[t(359)]=null,this[t(361)]=null,this[t(283)]=0,this[t(267)]()}[Dn(295)](){}[Dn(362)](){this[Dn(332)]=!1}[Dn(341)](){return this[Dn(332)]}[Dn(328)](t){const e=Dn;Ws(t[e(241)])&&(this[e(368)][e(256)]=tt[t.encTypeCode],this.videoInfo[e(241)]=t[e(241)]),Ws(t[e(256)])&&(this[e(368)][e(256)]=t[e(256)]),Ws(t[e(310)])&&(this[e(368)][e(310)]=t.width),Ws(t[e(296)])&&(this.videoInfo[e(296)]=t[e(296)]),Ws(this[e(368)][e(256)])&&Ws(this[e(368)][e(296)])&&Ws(this[e(368)][e(310)])&&!this[e(332)]&&(this[e(276)][e(273)](q.videoInfo,this[e(368)]),this[e(332)]=!0)}[Dn(365)](t){const e=Dn;this[e(328)](t),this[e(276)].emit(q[e(368)],this[e(368)])}[Dn(314)](){return this[Dn(368)]}[Dn(275)](){const t=Dn;this[t(324)]=[],this[t(294)]="",this[t(293)]=[],this[t(278)]=""}[Dn(357)](){const t=Dn;this[t(276)].debugLog(t(377),t(325)),this[t(276)][t(298)][t(261)]===t(374)||ys()?this._resize():this[t(288)](),this[t(307)]&&this[t(307)][t(357)](),this[t(268)]&&this.aiContentWatermark[t(357)](),this[t(276)][t(274)]&&this[t(276)].singleWatermark[t(357)](),this[t(276)][t(282)]&&this[t(276)][t(282)][t(357)](),this.player[t(364)]&&this[t(276)][t(364)][t(357)](),this[t(276)][t(353)]&&this[t(276)][t(279)]&&(this.player.zoom[t(354)](),this.player[t(353)][t(319)](),this[t(276)][t(353)][t(290)]()),this.player.control&&this[t(276)].control[t(286)]()}[Dn(288)](){const t=Dn;this[t(276)][t(263)]("CommonVideo","_resizeRatio()");const e=this.player[t(298)][t(261)][t(311)](":")[t(266)](Number),s=this[t(276)].getShowVideoRect();let i=s.width,r=s[t(296)],n=this[t(276)][t(313)]();const o=this[t(368)],a=o[t(310)]/o[t(296)],h=e[0]/e[1];if(this[t(352)]()===A[t(347)]&&(this.$videoElement[t(252)][t(370)]="0",this.$videoElement[t(252)][t(338)]="0",this.$videoElement.style.transform=t(284)),this[t(352)]()===A[t(345)]&&this.player._opt.videoRenderSupportScale&&(this[t(373)].style[t(297)]=t(327)),a>h){const e=h*o[t(296)]/o.width;this[t(373)].style[t(310)]=100*e+"%",this[t(373)][t(252)][t(296)]=t(339)+n+"px)",this[t(373)].style[t(326)]="0 "+(i-i*e)/2+"px"}else{const e=o.width/h/o[t(296)];this[t(373)].style[t(310)]=t(371),this[t(373)].style[t(296)]=t(300)+100*e+t(242)+n+t(366),this.$videoElement[t(252)][t(326)]=(r-r*e)/2+t(360)}}[Dn(308)](){}[Dn(346)](){}[Dn(317)](t){}[Dn(352)](){return""}[Dn(315)](){return""}[Dn(262)](){return 0}[Dn(335)](){return this.streamFps}[Dn(243)](){return!0}[Dn(333)](){return this[Dn(243)]()}[Dn(245)](){return null}[Dn(351)](t){const e=Dn;this[e(276)].debugLog(e(377),e(351),t),this[e(283)]=t}[Dn(247)](t=[]){this.tempContentList=t,this.doAddContentToWatermark()}[Dn(255)](t=[]){this.tempAiContentList=t,this.doAddAiContentToWatermark()}[Dn(304)](){const t=Dn;if(this[t(324)][t(280)]>0){!this[t(307)]&&(this[t(307)]=new Cn(this[t(276)],{emitClickEvent:this.player[t(298)][t(285)]}),this[t(307)][t(357)]());const e=JSON[t(349)](this.tempContentList);if(this[t(294)]&&this[t(294)]===e)return;const s=[];this[t(324)].forEach(e=>{const i=t;let r={left:e.x||0,top:e.y||0};"text"===e[i(258)]?(r[i(257)]={content:e[i(257)],fontSize:e.fontSize||"14",color:e[i(250)]||i(253),angle:e[i(372)]||0},r[i(348)]=e[i(348)]||""):e[i(258)]===i(272)?(r[i(272)]={width:e[i(310)],height:e[i(296)],color:e[i(250)]||i(323),lineWidth:e[i(331)]||2,fill:e[i(327)]||"",fillOpacity:e[i(305)]||.2,angle:e[i(372)]||0},r[i(348)]=e[i(348)]||""):e[i(258)]===i(240)?r[i(240)]={list:e.list,color:e.color||i(323),lineWidth:e[i(331)]||2,fill:e[i(327)],fillOpacity:e[i(305)]||.2}:"line"===e[i(258)]&&(r[i(375)]={color:e[i(250)]||i(323),lineWidth:e[i(331)]||2,x1:e.x1,y1:e.y1,x2:e.x2,y2:e.y2}),s[i(251)](r)}),this.contentWatermark[t(321)](s),this.prevTempContentListString=e}else this.contentWatermark&&this[t(307)][t(299)](),this[t(294)]=""}[Dn(340)](){const t=Dn;if(this[t(293)][t(280)]>0){!this.aiContentWatermark&&(this[t(268)]=new Cn(this.player),this[t(268)][t(357)]());const e=JSON[t(349)](this[t(293)]);if(this[t(278)]&&this[t(294)]===e)return;const s=this[t(293)][t(266)](e=>{const s=t;let i={left:e.x,top:e.y};return e.type===s(257)?i[s(257)]={content:e[s(257)],fontSize:e.fontSize,color:e[s(250)]}:e[s(258)]===s(272)&&(i[s(272)]={width:e[s(310)],height:e[s(296)],color:e.color,lineWidth:e[s(331)]}),i});this.aiContentWatermark[t(321)](s),this.prevTempAiContentListString=e}else this[t(268)]&&this[t(268)][t(299)](),this[t(278)]=""}[Dn(248)](){return!0}[Dn(259)](){return!1}[Dn(358)](){}initCanvasViewSize(){}[Dn(322)](){}[Dn(336)](){return this[Dn(292)]}getBufferListLength(){const t=Dn;let e=0;return this[t(309)]&&(e=this[t(309)][t(280)]),e}[Dn(367)](t){return null}[Dn(270)](){}needAiCheck(){const t=Dn;return this[t(276)].ai||this.player[t(330)]||this.player[t(369)]||this[t(276)][t(376)]||this.player[t(350)]||this.player[t(316)]}[Dn(269)](t,e=M[Dn(264)]){const s=Dn;let i=t[s(306)],r=e;if(!this[s(301)]())return{yuv:i,format:B[r]};if(this[s(276)][s(330)]&&this.player.ai&&this[s(276)].ai[s(291)]){null===this[s(287)]&&(this[s(287)]=os());const n=os();n-this.prevAiFaceDetectTime>=this.player._opt[s(344)]&&(i=this[s(276)].ai[s(291)][s(318)]({width:this[s(368)][s(310)],height:this.videoInfo[s(296)],data:t[s(306)],ts:t.ts||0},e),r=M[s(264)],this[s(287)]=n)}if(this.player[s(369)]&&this[s(276)].ai&&this.player.ai[s(302)]){null===this.prevAiObjectDetectTime&&(this[s(277)]=os());const n=os();n-this[s(277)]>=this[s(276)][s(298)][s(363)]&&(i=this[s(276)].ai[s(302)][s(318)]({width:this[s(368)][s(310)],height:this[s(368)][s(296)],data:t[s(306)],ts:t.ts||0},e),r=M.i420,this[s(277)]=n)}if(this.player.occlusionDetectActive&&this[s(276)].ai&&this[s(276)].ai.occlusionDetector){null===this.prevAiOcclusionDetectTime&&(this.prevAiOcclusionDetectTime=os());const i=os();if(i-this[s(359)]>=this[s(276)][s(298)].aiOcclusionDetectInterval){const r=this[s(276)].ai[s(246)][s(244)]({width:this[s(368)].width,height:this[s(368)][s(296)],data:t[s(306)]},e);this[s(359)]=i,r&&this[s(276)][s(273)](q[s(254)],{ts:t.ts||0})}}if(this[s(276)][s(350)]&&this[s(276)].ai&&this.player.ai[s(355)]){const i=this.player.ai[s(355)].check({width:this[s(368)].width,height:this[s(368)][s(296)],data:t[s(306)]},e);if(i&&i.data&&(this[s(276)].emit(q[s(343)],{type:i[s(258)],ts:t.ts||0}),this[s(276)]._opt[s(303)]))return void this[s(276)][s(263)](this[s(292)],s(312)+i[s(258)]+" and drop")}if(this.player[s(316)]&&this[s(276)].ai&&this[s(276)].ai[s(356)]){null===this[s(361)]&&(this.prevAiLicensePlateDetectTime=os());const n=os();n-this.prevAiLicensePlateDetectTime>=this.player._opt[s(265)]&&(i=this[s(276)].ai[s(356)].detect({width:this[s(368)].width,height:this[s(368)][s(296)],data:t[s(306)],ts:t.ts||0},e),r=M.i420,this.prevAiLicensePlateDetectTime=n)}return{yuv:i,format:B[r]}}}var xn=On;!function(t){for(var e=On,s=t();;)try{if(253192===-parseInt(e(228))/1*(-parseInt(e(250))/2)+parseInt(e(246))/3*(-parseInt(e(223))/4)+-parseInt(e(247))/5*(parseInt(e(262))/6)+parseInt(e(255))/7*(parseInt(e(278))/8)+parseInt(e(231))/9+parseInt(e(245))/10*(-parseInt(e(270))/11)+-parseInt(e(226))/12)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Fn);var Mn=typeof window===xn(254)&&window[xn(275)]===window?window:typeof self===xn(254)&&self[xn(267)]===self?self:typeof global===xn(254)&&global.global===global?global:void 0;function Bn(t,e,s){var i=xn,r=new XMLHttpRequest;r.open(i(222),t),r[i(249)]="blob",r.onload=function(){jn(r[i(239)],e,s)},r[i(269)]=function(){var t=i;console[t(258)](t(251))},r[i(224)]()}function Fn(){var t=["http://www.w3.org/1999/xhtml","innerText","response","revokeObjectURL","msSaveOrOpenBlob","test","dispatchEvent","undefined","50yglRte","11931qzxYOm","20xLDlDX","click","responseType","2pplwbb","could not download file","autoBom","createEvent","object","2296fPNBet","fromCharCode","navigator","error","target","Deprecated: Expected third argument to be a object","open","712176jvVpHj","MouseEvents","href","title","HEAD","self","noopener","onerror","87186szbNQB","userAgent","download","warn","_blank","window","webkitURL","replace","11672TOaZVL","prototype","string","body","origin","document","application/octet-stream","GET","160flRmhU","send","HTMLElement","1603068GJGigf","name","399371yGfaUv","result","createObjectURL","1641168nyVreJ","safari","location","type","onloadend","readAsDataURL"];return(Fn=function(){return t})()}function Un(t){var e=xn,s=new XMLHttpRequest;s[e(261)](e(266),t,!1);try{s[e(224)]()}catch(t){}return s.status>=200&&s.status<=299}function On(t,e){var s=Fn();return(On=function(t,e){return s[t-=221]})(t,e)}function Nn(t){var e=xn;try{t.dispatchEvent(new MouseEvent(e(248)))}catch(i){var s=document[e(253)](e(263));s.initMouseEvent(e(248),!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),t[e(243)](s)}}var Vn=Mn[xn(257)]&&/Macintosh/[xn(242)](navigator[xn(271)])&&/AppleWebKit/[xn(242)](navigator.userAgent)&&!/Safari/[xn(242)](navigator[xn(271)]),jn=typeof window!==xn(254)||window!==Mn?function(){}:xn(272)in HTMLAnchorElement[xn(279)]&&!Vn?function(t,e,s){var i=xn,r=Mn.URL||Mn[i(276)],n=document.createElementNS(i(237),"a");e=e||t[i(227)]||"download",n[i(272)]=e,n.rel=i(268),typeof t===i(280)?(n[i(264)]=t,n[i(282)]!==location[i(282)]?Un(n[i(264)])?Bn(t,e,s):Nn(n,n[i(259)]=i(274)):Nn(n)):(n.href=r[i(230)](t),setTimeout(function(){r[i(240)](n.href)},4e4),setTimeout(function(){Nn(n)},0))}:xn(241)in navigator?function(t,e,s){var i,r,n,o=xn;if(e=e||t.name||o(272),typeof t===o(280))if(Un(t))Bn(t,e,s);else{var a=document.createElement("a");a.href=t,a[o(259)]=o(274),setTimeout(function(){Nn(a)})}else navigator[o(241)]((i=t,typeof(r=s)===(n=xn)(244)?r={autoBom:!1}:typeof r!==n(254)&&(console[n(273)](n(260)),r={autoBom:!r}),r[n(252)]&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i[n(242)](i[n(234)])?new Blob([String[n(256)](65279),i],{type:i[n(234)]}):i),e)}:function(t,e,s,i){var r=xn;if((i=i||open("",r(274)))&&(i[r(283)][r(265)]=i[r(283)][r(281)][r(238)]="downloading..."),typeof t===r(280))return Bn(t,e,s);var n=t[r(234)]===r(221),o=/constructor/i[r(242)](Mn[r(225)])||Mn[r(232)],a=/CriOS\/[\d]+/.test(navigator[r(271)]);if((a||n&&o||Vn)&&typeof FileReader!==r(244)){var h=new FileReader;h[r(235)]=function(){var t=r,e=h[t(229)];e=a?e:e[t(277)](/^data:[^;]*;/,"data:attachment/file;"),i?i.location[t(264)]=e:location=e,i=null},h[r(236)](t)}else{var l=Mn.URL||Mn[r(276)],c=l[r(230)](t);i?i[r(233)]=c:location[r(264)]=c,i=null,setTimeout(function(){l.revokeObjectURL(c)},4e4)}};const Wn=zn;function Gn(){const t=["\n attribute vec4 aVertexPosition;\n void main(void) {\n gl_Position = aVertexPosition;\n }\n ","indices","FLOAT","vertexPosition","createProgram","uRect","24MRdYbQ","blendFunc","rect","useProgram","bindTexture","destroy","TEXTURE_MIN_FILTER","uniform2f","6714156bQkPGg","log","LINEAR","BLEND","buffers","getUniformLocation","viewport","_drawScene","shaderSource","resolution","uniform1f","shaderProgram","createShader","createBuffer","drawElements","40jvjssh","enableVertexAttribArray","bufferData","getShaderInfoLog","CLAMP_TO_EDGE","getProgramParameter","_createTexture","154TSbmqg","3112290hhITXu","aVertexPosition","attribLocations","TEXTURE_WRAP_T","100WMOLcK","_initBuffers","FRAGMENT_SHADER","pixelStorei","deleteShader","uResolution","TEXTURE_2D","UNSIGNED_SHORT","bindBuffer","uniformLocations","vertexAttribPointer","uLineWidth","ONE_MINUS_SRC_ALPHA","271585lZpziH","position","deleteProgram","19452BGDAXK","An error occurred compiling the shaders: ","programInfo","_loadShader","texParameteri","attachShader","2245503cUgnla","_initShaderProgram","ARRAY_BUFFER","deleteBuffer","createTexture","Unable to initialize the shader program: ","fromValues","ELEMENT_ARRAY_BUFFER","uLineColor","1792ReHwsK","\n precision highp float;\n uniform float uLineWidth;\n uniform vec4 uRect;\n uniform vec3 uLineColor;\n uniform vec2 uResolution;\n\n\n float inBox(vec2 st, vec4 rect){\n\n vec2 bl = step(rect.xy,st);\n float pct = bl.x * bl.y;\n\n vec2 tr = step(st, rect.zw);\n pct *= tr.x * tr.y;\n\n return pct;\n }\n\n void main(void) {\n\n vec2 cur = gl_FragCoord.xy/uResolution;\n\n float xlinewidth = uLineWidth/uResolution.x;\n float ylinewidth = uLineWidth/uResolution.y;\n\n // vec4 outRect = uRect + vec4(-1.*xlinewidth/2., -1.*ylinewidth/2., xlinewidth/2., ylinewidth/2.);\n // vec4 inRect = uRect + vec4(xlinewidth/2., ylinewidth/2., -1.*xlinewidth/2., -1.*ylinewidth/2.);\n\n vec4 outRect = uRect + vec4(-1.*xlinewidth/2., -1.*ylinewidth/2., xlinewidth/2., ylinewidth/2.);\n vec4 inRect = uRect;\n\n float a = inBox(cur, outRect);\n float b = inBox(cur, inRect);\n\n gl_FragColor = mix(vec4(0., 0., 0., 0.), vec4(uLineColor.rgb, 1.0), a-b);\n\n }\n ","STATIC_DRAW","66pPlWmn","linecolor","COMPILE_STATUS","2547306tOktrY"];return(Gn=function(){return t})()}function zn(t,e){const s=Gn();return(zn=function(t,e){return s[t-=122]})(t,e)}!function(t){const e=zn,s=t();for(;;)try{if(855765===-parseInt(e(187))/1*(parseInt(e(166))/2)+-parseInt(e(193))/3+parseInt(e(171))/4*(-parseInt(e(184))/5)+parseInt(e(136))/6*(-parseInt(e(123))/7)+-parseInt(e(159))/8*(-parseInt(e(129))/9)+-parseInt(e(167))/10+parseInt(e(126))/11*(parseInt(e(144))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Gn);Wn(141),Wn(194),Wn(190),Wn(165),Wn(172),Wn(151);function Hn(t){return new Promise((e,s)=>{const i=Kn;navigator[i(392)]?navigator[i(392)][i(396)]()[i(389)](r=>{const n=i;r?r[n(393)]()[n(389)](i=>{const o=n;if(i){const n=t.getContext(o(390));if(n){const t=navigator[o(392)].getPreferredCanvasFormat();n.configure({device:i,format:t,alphaMode:"opaque"}),e({adapter:r,device:i,context:n,format:t})}else s(o(403))}else s('WebGPU "device" request fail')})[n(402)](t=>{s(n(387))}):s(n(404))})[i(402)](t=>{s('WebGPU "navigator.gpu.requestAdapter()" fail')}):s(i(391))})}function Kn(t,e){const s=qn();return(Kn=function(t,e){return s[t-=387]})(t,e)}function qn(){const t=["requestDevice","5iucXkh","28AJqCZR","requestAdapter","341034qOzjjP","10kCXRue","446655QLtHQa","19422ZonxUX","1629372mnEaiy","catch",'WebGPU "context" create fail','WebGPU "adapter" request fail is empty',"3207064tlydKX","84911JeiZUY",'WebGPU "adapter.requestDevice()" fail',"153693LTxday","then","webgpu","WebGPU not support!!","gpu"];return(qn=function(){return t})()}function Qn(t,e){const s=Yn();return(Qn=function(t,e){return s[t-=196]})(t,e)}function Yn(){const t=["linkProgram","vertexAttribPointer","CLAMP_TO_EDGE","canvas","texParameteri","viewport","clearColor","isInited","FRAGMENT_SHADER","compileShader","texture","1469839hTZoqk","RGBA","ARRAY_BUFFER","86048kHsAcB","10884YTRUqc","TEXTURE_2D","TEXTURE_WRAP_T","createBuffer","deleteProgram","getProgramParameter","TRIANGLE_FAN","NEAREST","COLOR_BUFFER_BIT","height","bindBuffer","getShaderInfoLog","VERTEX_SHADER","width","buffer","program","bufferData","createShader","useProgram","72FLMTub","getAttribLocation","bindTexture","deleteTexture","enableVertexAttribArray","getShaderParameter","UNSIGNED_BYTE","TEXTURE_MAG_FILTER","FLOAT","drawArrays","\n attribute vec2 xy;\n varying highp vec2 uv;\n void main(void) {\n gl_Position = vec4(xy, 0.0, 1.0);\n // Map vertex coordinates (-1 to +1) to UV coordinates (0 to 1).\n // UV coordinates are Y-flipped relative to vertex coordinates.\n uv = vec2((1.0 + xy.x) / 2.0, (1.0 - xy.y) / 2.0);\n }\n ","shaderSource","deleteShader","COMPILE_STATUS","displayWidth","4047570nFprKF","attachShader","\n varying highp vec2 uv;\n uniform sampler2D texture;\n void main(void) {\n gl_FragColor = texture2D(texture, uv);\n }\n ","texImage2D","8544440dBzRHG","147QetoKY","drawingBufferHeight","createProgram","fragmentShader","99646QwkrDm","2389260xQsTyk"];return(Yn=function(){return t})()}!function(t){const e=Kn,s=t();for(;;)try{if(460246===parseInt(e(406))/1+parseInt(e(400))/2+parseInt(e(399))/3+-parseInt(e(401))/4*(-parseInt(e(394))/5)+parseInt(e(397))/6*(parseInt(e(395))/7)+-parseInt(e(405))/8+-parseInt(e(388))/9*(parseInt(e(398))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(qn),function(t){const e=Qn,s=t();for(;;)try{if(984780===parseInt(e(254))/1+parseInt(e(241))/2*(-parseInt(e(217))/3)+-parseInt(e(242))/4+parseInt(e(236))/5+parseInt(e(198))/6*(parseInt(e(237))/7)+parseInt(e(197))/8+-parseInt(e(232))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Yn);class Jn{constructor(t,e){const s=Qn;this[s(246)]=t,this.gl=e,this[s(250)]=!1;const i=s(227),r=s(234),n=e.createShader(e[s(210)]);if(e[s(228)](n,i),e[s(252)](n),!e.getShaderParameter(n,e[s(230)]))throw e[s(209)](n);const o=e[s(215)](e[s(251)]);if(e[s(228)](o,r),e[s(252)](o),!e[s(222)](o,e[s(230)]))throw e[s(209)](o);const a=e[s(239)]();if(e[s(233)](a,n),e.attachShader(a,o),e[s(243)](a),!e[s(203)](a,e.LINK_STATUS))throw e.getProgramInfoLog(a);e[s(216)](a);const h=e[s(201)]();e[s(208)](e[s(196)],h),e[s(214)](e.ARRAY_BUFFER,new Float32Array([-1,-1,-1,1,1,1,1,-1]),e.STATIC_DRAW);const l=e[s(218)](a,"xy");e[s(244)](l,2,e[s(225)],!1,0,0),e[s(221)](l);const c=e.createTexture();e[s(219)](e[s(199)],c),e.texParameteri(e[s(199)],e[s(224)],e.NEAREST),e[s(247)](e[s(199)],e.TEXTURE_MIN_FILTER,e[s(205)]),e[s(247)](e[s(199)],e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e[s(247)](e.TEXTURE_2D,e[s(200)],e[s(245)]),this[s(213)]=a,this[s(212)]=h,this.vertexShader=n,this[s(240)]=o,this[s(253)]=c}destroy(){const t=Qn;this.gl[t(202)](this.program),this.gl.deleteBuffer(this[t(212)]),this.gl[t(220)](this[t(253)]),this.gl.deleteShader(this.vertexShader),this.gl[t(229)](this[t(240)]),this[t(213)]=null,this[t(212)]=null,this.vertexShader=null,this.fragmentShader=null,this.texture=null,this.gl=null,this[t(250)]=!1,this[t(246)]=null}render(t){const e=Qn;if(!this.canvas)return;this[e(246)][e(211)]=t[e(231)],this[e(246)][e(207)]=t.displayHeight;const s=this.gl;this[e(250)]?s.texSubImage2D(s[e(199)],0,0,0,s[e(255)],s[e(223)],t):(s[e(235)](s[e(199)],0,s.RGBA,s[e(255)],s[e(223)],t),this[e(250)]=!0),s[e(248)](0,0,s.drawingBufferWidth,s[e(238)]),s[e(249)](1,0,0,1),s.clear(s[e(206)]),s[e(226)](s[e(204)],0,4)}}function Xn(){const t=["left","isResize","none","createElement","videoInfo","proxyDestroyList","context2D","webglContextLostError","catch","create webgl2Render error is "," and next use context2d.draw render","getStreamFps","isDestroyedOrClosed","toDataURL","destroy","init","clearView","_opt"," rotateY(180deg)","clearRect","rotate","scale("," and next use webgl render","filename","1300204yrnGyL","forEach","contextGl","isFullResize","_createScreenShotCanvas","CommonCanvasLoader and _initContextGl createContextGL error","height","4aDnStY","screenshotUseHighQuality","debugWarn","webgl","getContextAttributes","imageSmoothingEnabled","webglcontextlost error and destroy webglRender","webglcontextrestored ","top","_initContextGl() createContextGL error","_resize()","screenshotCanvasContext","preventDefault","renderType","player","blob","TAG_NAME","display","initCanvasViewSize","canvas","_resize","openWebglAlignment","quality","debugError"," rotate(","1555617UqpMJx","_initContext2D","pause","_initContextGl2() createContextGL2 error","render","isWcsWebgl2","webglcontextlost error","download","events","isWcsWebgpu","webglcontextlost error, getContextAttributes().stencil is false","format","drawImage","getContext","$videoElement","deg)","webglcontextlost","4236822JaUnnG","_initContextGPU","style","289287tzUhUn","resize","width","imageSmoothingQuality"," rotateX(180deg)","webgpu","mirrorRotate","padding","createContextGL success","png","split","appendChild","screenshotWatermark","length","play","4944835KdAvOd","debugLog","_isDestroyed","webglcontextrestored","webglRender","block","vertical","then","$screenshotCanvasElement","string","createContextGL() version ","11417357CaBCmx","$container","type","absolute","base64","744PPeEcM","isWebglContextLost","screenshot","level","stencil","10291764yGBLwc","createWebGPUContext error is ","bitmaprenderer","webglRectRender","_bindContextGlEvents","webGPURender","_initContextGl","screenshotByCurrentWatermark"];return(Xn=function(){return t})()}const $n=Zn;function Zn(t,e){const s=Xn();return(Zn=function(t,e){return s[t-=120]})(t,e)}!function(t){const e=Zn,s=t();for(;;)try{if(971776===parseInt(e(143))/1+-parseInt(e(231))/2+-parseInt(e(160))/3*(-parseInt(e(238))/4)+-parseInt(e(178))/5+-parseInt(e(199))/6+-parseInt(e(189))/7+-parseInt(e(194))/8*(-parseInt(e(163))/9))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Xn);class to extends Pn{constructor(t){const e=Zn;super(),this[e(132)]=t;const s=document.createElement("canvas");s.style.position=e(192),s.style[e(126)]=0,s.style[e(207)]=0,s[e(162)][e(135)]=e(209),this[e(157)]=s,this[e(186)]=null,this.screenshotCanvasContext=null,t[e(190)][e(174)](this.$videoElement),this[e(213)]=null,this[e(233)]=null,this[e(182)]=null,this[e(202)]=null,this[e(204)]=null,this[e(195)]=!1,this[e(148)]=!1,this[e(152)]=!1,this[e(201)]=null,this.renderType=null,this[e(212)]=[],this._initCanvasRender()}destroy(){const t=Zn;if(super[t(221)](),this[t(186)]&&(this[t(186)].height=0,this.$screenshotCanvasElement[t(165)]=0,this[t(186)]=null),this.screenshotCanvasContext=null,this[t(212)][t(176)]>0&&(this[t(212)][t(232)](t=>{t&&t()}),this.proxyDestroyList=[]),this.webglRender&&(this[t(182)][t(221)](),this[t(182)]=null),this[t(202)]&&(this[t(202)].destroy(),this.webglRectRender=null),this[t(204)]&&(this.webGPURender[t(221)](),this.webGPURender=null),this[t(201)]&&(this[t(201)]=null),this.contextGl&&(this[t(233)]=null),this[t(213)]&&this[t(157)]&&(this.context2D[t(226)](0,0,this.$videoElement.width,this[t(157)][t(237)]),this[t(213)]=null),this[t(131)]=null,this[t(195)]=!1,this[t(152)]=!1,this[t(148)]=!1,this.videoInfo=null,this[t(157)]){this.$videoElement[t(165)]=0,this.$videoElement.height=0;!En(this[t(157)])&&this[t(157)].remove(),this[t(157)]=null}this[t(222)]=!1}_createScreenShotCanvas(){const t=Zn,e=document[t(210)](t(137));this[t(186)]=e,this[t(129)]=e[t(156)]("2d"),this.player[t(224)].screenshotUseHighQuality&&(this[t(129)][t(123)]=!0,this[t(129)].imageSmoothingEnabled&&(this[t(129)][t(166)]="high"))}[$n(144)](t={}){const e=$n;this[e(213)]=this[e(157)][e(156)]("2d",t)}[$n(205)](){const t=$n;if(this.player[t(151)],this[t(233)]=is(this[t(157)]),!this.contextGl)throw this[t(132)][t(141)](this.TAG_NAME,t(127)),new Error(t(236));this[t(203)](),this.webglRender=new on(this.contextGl,this[t(132)][t(224)][t(139)])}_initContextGl2(){const t=$n;if(this[t(233)]=rs(this[t(157)]),this[t(233)]){this[t(203)](2);try{this[t(182)]=new Jn(this[t(157)],this[t(233)])}catch(e){this[t(132)][t(141)](this[t(134)],t(216)+e+t(217)),this[t(233)]=null,this[t(182)]=null,this[t(144)]()}}else this[t(132)][t(141)](this.TAG_NAME,t(146))}[$n(203)](t=1){const e=$n,{proxy:s}=this[e(132)][e(151)],i=s(this.$videoElement,e(159),s=>{const i=e;s.preventDefault(),this[i(132)][i(141)](this[i(134)],i(149),s),this[i(195)]=!0,this.webglRender&&(this[i(132)][i(179)](this.TAG_NAME,i(124)),this[i(182)][i(221)](),this[i(182)]=null),this[i(202)]&&(this[i(132)][i(179)](this[i(134)],"webglcontextlost error and destroy webglRectRender"),this[i(202)].destroy(),this[i(202)]=null),this[i(233)]=null,setTimeout(()=>{const e=i;if(this[e(132)][e(179)](this[e(134)],e(188)+t),1===t?this[e(233)]=is(this[e(157)]):2===t&&(this.contextGl=rs(this[e(157)])),this[e(132)].debugLog(this[e(134)],e(171)),this[e(233)]&&this[e(233)][e(122)]){const s=this[e(233)].getContextAttributes();s&&s[e(198)]?(1===t?this[e(182)]=new on(this[e(233)],this[e(132)][e(224)][e(139)]):2===t&&(this.webglRender=new Jn(this[e(157)],this[e(233)])),this[e(195)]=!1,this[e(132)][e(179)](this[e(134)],"webglcontextlost error reset and getContextAttributes().stencil is true")):(this[e(132)][e(141)](this.TAG_NAME,"webglcontextlost error, getContextAttributes().stencil is false"),this[e(132)].emitError(J[e(214)]))}else this.player[e(141)](this[e(134)],e(153)),this.player.emitError(J[e(214)])},500)}),r=s(this[e(157)],e(181),t=>{const s=e;t[s(130)](),this[s(132)][s(179)](this.TAG_NAME,s(125),t)});this[e(212)].push(i,r)}[$n(161)](){const t=$n;Hn(this.$videoElement)[t(185)](e=>{const s=t;this._isDestroyed||this[s(132)].isDestroyedOrClosed()||(e?(this[s(204)]=new dn(e),this.player[s(179)](this[s(134)],"webGPURender init success")):(this.player[s(120)](this[s(134)],"webGPURender init failed because context is null and next use webgl render"),this.renderType=lt[s(121)],this[s(205)]()))})[t(215)](e=>{const s=t;this[s(180)]||this[s(132)][s(219)]()||(this.player[s(120)](this[s(134)],s(200)+e+s(229)),this.renderType=lt[s(121)],this[s(205)]())})}[$n(136)](){const t=$n;this.$videoElement[t(162)][t(135)]=t(183),this[t(157)][t(165)]=this[t(211)].width,this[t(157)].height=this[t(211)][t(237)],this[t(164)]()}[$n(196)](t,e,s,i){const r=$n;t=t||os(),i=i||$[r(150)];let n=.92;!bt[e]&&$[e]&&(i=e,e=r(172),s=void 0),typeof s===r(187)&&(i=s,s=void 0),void 0!==s&&(n=Number(s));const o=bt[e]||bt.png,a=this.$videoElement.toDataURL(o,n);if(i===$[r(193)])return a;{const e=ns(a);if(i===$[r(133)])return e;if(i===$[r(150)]){const s=o.split("/")[1];jn(e,t+"."+s)}}}[$n(175)](t){return new Promise((e,s)=>{const i=Zn;ri(t)&&(t={filename:t}),(t=t||{}).width=this[i(211)][i(165)],t[i(237)]=this.videoInfo[i(237)],t[i(230)]=t[i(230)]||os(),t[i(154)]=t[i(154)]?bt[t[i(154)]]:bt[i(172)],t[i(140)]=Number(t[i(140)])||.92,t[i(191)]=t[i(191)]||$[i(150)];const r=this[i(157)][i(220)](t[i(154)],t.quality),n=this[i(132)][i(224)][i(239)];Hs(r,t,n)[i(185)](s=>{const r=i;if(t.type===$[r(193)])e(s);else{const i=ns(s);if(t[r(191)]===$.blob)e(i);else if(t.type===$[r(150)]){e();const s=t[r(154)].split("/")[1];jn(i,t.filename+"."+s)}}}).catch(t=>{s(t)})})}screenshotCopyrightWatermark(t){return new Promise((e,s)=>{const i=Zn;if(ri(t)){(t=(t={filename:t})||{}).width=this.videoInfo.width,t[i(237)]=this[i(211)][i(237)],t.filename=t[i(230)]||os(),t[i(154)]=t[i(154)]?bt[t[i(154)]]:bt[i(172)],t.quality=Number(t[i(140)])||.92,t[i(191)]=t[i(191)]||$[i(150)];const r=this.$videoElement[i(220)](t[i(154)],t[i(140)]),n=this.player[i(224)][i(239)];qs(r,t,n)[i(185)](s=>{const r=i;if(t[r(191)]===$[r(193)])e(s);else{const i=ns(s);if(t.type===$[r(133)])e(i);else if(t[r(191)]===$[r(150)]){e();const s=t[r(154)][r(173)]("/")[1];jn(i,t[r(230)]+"."+s)}}})[i(215)](t=>{s(t)})}})}[$n(206)](t){}screenshotByRect(t){const e=$n;!this[e(186)]&&this[e(235)]();const s=this[e(157)];let i=this[e(186)];i[e(165)]=parseInt(t.width,10),i.height=parseInt(t.height,10),this[e(129)][e(155)](s,t.x,t.y,i[e(165)],i[e(237)],0,0,i[e(165)],i[e(237)]);const r=bt[e(172)],n=i.toDataURL(r,.92);return this[e(129)][e(226)](0,0,i[e(165)],i[e(237)]),i[e(165)]=0,i.height=0,n}[$n(147)](){}[$n(223)](){super[$n(223)]()}[$n(177)](){}[$n(145)](){}[$n(138)](){const t=$n;this.player[t(179)](this[t(134)],t(128));const e=this[t(132)]._opt,s=this[t(132)].getShowVideoRect();let i=s[t(165)],r=s[t(237)],n=this.$videoElement[t(165)],o=this.$videoElement[t(237)];const a=e[t(227)];let h=(i-n)/2,l=(r-o)/2;(270===a||90===a)&&(n=this[t(157)][t(237)],o=this[t(157)].width);const c=i/n,d=r/o;let u=c>d?d:c;xi(e[t(208)])&&c!==d&&(u=c+","+d),e[t(234)]&&(u=c>d?c:d);let p=t(228)+u+")";e[t(169)]===t(209)&&a&&(p+=t(142)+a+t(158)),e.mirrorRotate===t(197)?p+=t(225):e[t(169)]===t(184)&&(p+=t(167)),this[t(157)][t(162)][t(237)]=this[t(211)].height+"px",this.$videoElement[t(162)].width=this[t(211)][t(165)]+"px",this[t(157)][t(162)][t(170)]="0",this[t(157)].style.transform=p,this[t(157)][t(162)][t(207)]=h+"px",this[t(157)].style[t(126)]=l+"px"}initFps(){}setStreamFps(t){}[$n(218)](){return 25}getType(){return A.canvas}getCanvasType(){const t=$n;let e=lt[t(121)];return this[t(131)]===lt[t(168)]?e=lt[t(168)]:this[t(131)]===lt[t(137)]&&(e=lt[t(137)]),this[t(148)]?e=lt.webgl2:this[t(152)]&&(e=lt[t(168)]),e}}const eo=io;function so(){const t=["videoFrame","yuv","831776LTmfAI","22eMFhIE","updateStats","rect","webgpu","copyTo"," doRender() and webcodecs render needAiCheck error: ","nv12","doAddContentToCanvas","isEnterVr","tempTextCanvas","font","doRender webgpu render is not init","wcsUseWebgl2Render","type","TAG_NAME","bitmaprenderer","doRender() and webcodecs context is lost","COLOR_BUFFER_BIT","$videoElement","useWebGPU","catch","tempContentList","8XUIxUC","mse","length","12BoevbB","doAddAiContentToWatermark","push","shift","_initTempTextCanvas","821757rshgPI","render","mseUseCanvasRender","allocationSize","CanvasVideoPlayer","clear","startRender","webgl","isContextLost","drawBox","396907bUOPEX","doAddContentToWatermark","aiCheck","10AXpMLT","webGPURender init success","then","_initContext2D","debugWarn","_bindOffscreen","renderType","tempTextCanvasCtx","1001690cpPtSz","_initCanvasRender","output","webGPURender init failed because context is null and next use webgl render","buffer","i420","_isDestroyed","canvas","_opt","contextGl","transferFromImageBitmap","px Arial","_initWebglRenderForWCS","init","_supportOffscreen","createWebGPUContext error is ","webglRender","_initContextGl2","drawImage","yuvList","lineWidth","useWCS","toString","needAiCheck","width","vrRenderFrame","NV12","webGPURender","text","destroy","hls","doRender webgpu render and error: ","38102UbIfuy","height","isDestroyedOrClosed","player","format","debugError","clearRect","webcodecs","getContext","#008000","context2D","347070HVTYHb","textBaseline","$video","isWcsWebgpu","webrtcUseCanvasRender","createElement","fontSize","fillText","webrtc","videoInfo","isWcsWebgl2","color","offscreen","useWebCanvas"," and error: ","renderYUV","debugLog","2209149CzUevP","doRender webgl render context is lost ","doAddContentToWebGlCanvas"," and next use webgl render","fillStyle","webglRectRender","doRender() and webgl context is lost","useMSE","clearView"];return(so=function(){return t})()}function io(t,e){const s=so();return(io=function(t,e){return s[t-=331]})(t,e)}!function(t){const e=io,s=t();for(;;)try{if(138448===parseInt(e(420))/1*(-parseInt(e(337))/2)+parseInt(e(407))/3+-parseInt(e(376))/4+-parseInt(e(348))/5+-parseInt(e(402))/6*(parseInt(e(417))/7)+-parseInt(e(399))/8*(-parseInt(e(365))/9)+-parseInt(e(428))/10*(-parseInt(e(377))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(so);class ro extends to{constructor(t){const e=io;super(t),this.TAG_NAME=e(411),this[e(447)]=[],this[e(386)]=null,this.tempTextCanvasCtx=null,this[e(340)].debugLog(this.TAG_NAME,e(441))}async[eo(334)](){const t=eo;this[t(447)]=[],this.tempTextCanvas&&(this[t(427)][t(343)](0,0,this.tempTextCanvas[t(452)],this[t(386)][t(338)]),this[t(386)][t(452)]=0,this.tempTextCanvas[t(338)]=0,this[t(386)]=null),super[t(334)](),this[t(340)][t(364)](this[t(391)],"destroy")}[eo(429)](){const t=eo;this.player[t(436)][t(449)]&&!this._supportOffscreen()?(this.renderType=lt[t(344)],this[t(340)]._opt[t(396)]?Hn(this.$videoElement).then(e=>{const s=t;this[s(434)]||this[s(340)][s(339)]()||(e?(this[s(332)]=new dn(e),this[s(351)]=!0,this.player[s(364)](this[s(391)],s(421))):(this[s(340)][s(424)](this[s(391)],s(431)),this[s(440)]()))})[t(397)](()=>{const s=t;this._isDestroyed||this[s(340)][s(339)]()||(this[s(340)][s(424)](this.TAG_NAME,s(443)+e+s(368)),this[s(440)]())}):this[t(440)]()):this[t(340)][t(436)][t(372)]&&this[t(340)]._opt[t(409)]?(this[t(426)]=lt[t(400)],this[t(423)]()):this[t(340)].isOldHls()&&this[t(340)][t(436)].useCanvasRender?(this[t(426)]=lt[t(335)],this._initContext2D()):this.player.isWebrtcH264()&&this[t(340)]._opt[t(352)]?(this[t(426)]=lt.webrtc,this._initContext2D()):this[t(442)]()?(this[t(426)]=lt[t(360)],this[t(425)]()):this[t(340)]._opt[t(396)]?(this.renderType=lt[t(380)],this._initContextGPU()):this.player[t(436)][t(361)]?(this[t(426)]=lt[t(435)],this[t(423)]()):(this[t(426)]=lt[t(414)],this._initContextGl())}[eo(440)](){const t=eo;this[t(340)]._opt[t(389)]&&Vi()?(this[t(445)](),this[t(444)]&&(this[t(358)]=!0)):this[t(423)]()}[eo(442)](){const t=eo;return"function"==typeof this[t(395)][_i(490)]&&this[t(340)][t(436)].useOffscreen}[eo(425)](){const t=eo;this.bitmaprenderer=this[t(395)][t(345)]("bitmaprenderer")}[eo(408)](t){const e=eo;this[e(434)]||(this[e(447)][e(404)](t),this[e(413)]())}[eo(413)](){const t=eo;for(;!(this[t(447)].length<=0);){const e=this[t(447)][t(405)]();this.doRender(e)}}doRender(t){const e=eo;if(this.renderType!==lt[e(400)]){const s={ts:t.ts||0,fps:!0};this.player[e(378)](s)}let s=t.ts||0;if(this[e(426)]===lt[e(400)]&&(s=parseInt(1e3*t.$video.currentTime,10)+(this[e(340)].mseDecoder.firstRenderTime||0)),this[e(340)].updateCurrentPts(s),this[e(418)](),this[e(403)](),this.player[e(385)]())if(this[e(426)]===lt.webcodecs){const s=t[e(374)];let i=new Uint8Array(s[e(410)]());s[e(381)](i).then(()=>{const t=e,r=s.format==t(331)?M[t(383)]:M[t(433)];this[t(340)][t(453)](i,r),bi(s)})}else(this.renderType===lt[e(414)]||this.renderType===lt.webgpu||this.renderType===lt[e(435)])&&this[e(340)][e(453)](t.output,M[e(433)]);else switch(this.renderType){case lt[e(360)]:this[e(392)][e(438)](t[e(432)]);break;case lt.webgl:case lt[e(380)]:case lt[e(435)]:if(this.isWebglContextLost)return void this[e(340)][e(424)](this[e(391)],e(371));const s=this[e(419)]({yuv:t[e(430)],ts:t.ts||0});if(!s)return;const i=s[e(375)];if(this[e(426)]===lt[e(380)])try{if(!this[e(332)])return void this[e(340)].debugWarn(this[e(391)],e(388));this[e(332)][e(363)](this[e(395)].width,this[e(395)].height,i)}catch(t){this[e(340)][e(342)](this[e(391)],e(336)+t[e(450)]())}else if(this[e(426)]===lt[e(414)])try{this[e(444)][e(363)](this[e(395)].width,this[e(395)][e(338)],i)}catch(t){this[e(340)].debugError(this[e(391)],e(366)+(this.contextGl&&this.contextGl[e(415)]())+e(362)+t[e(450)]())}else if(this[e(426)]===lt.canvas){const r=Ys(i,{format:s[e(341)],codedWidth:this.videoInfo[e(452)],codedHeight:this.videoInfo.height,timestamp:1e3*t.ts});this[e(347)][e(446)](r,0,0,this[e(395)][e(452)],this[e(395)][e(338)]),bi(r)}break;case lt[e(344)]:if(this[e(451)]()){const s=t[e(374)];let i=new Uint8Array(s.allocationSize());s[e(381)](i)[e(422)](()=>{const r=e,n="NV12"==s[r(341)]?M[r(383)]:M[r(433)],o=this[r(419)]({yuv:i,ts:t.ts||0},n);if(bi(s),o)try{const e=Ys(o[r(375)],{format:o.format,codedWidth:this[r(357)][r(452)],codedHeight:this[r(357)][r(338)],timestamp:1e3*t.ts});this[r(332)]?(this[r(332)][r(408)](e),bi(e)):this[r(444)]?(this[r(444)][r(408)](e),bi(e)):this.context2D?(this[r(347)][r(446)](e,0,0,this.$videoElement[r(452)],this[r(395)][r(338)]),bi(e)):this.player.debugWarn(this[r(391)],"doRender() and webcodecs context is lost")}catch(t){this[r(340)][r(424)](this[r(391)],r(382)+t.toString())}})}else this[e(332)]?(this.webGPURender.render(t[e(374)]),bi(t[e(374)])):this[e(444)]?(this[e(444)][e(408)](t[e(374)]),bi(t[e(374)])):this[e(347)]?(this[e(347)][e(446)](t.videoFrame,0,0,this[e(395)].width,this[e(395)][e(338)]),bi(t[e(374)])):this[e(340)][e(424)](this[e(391)],e(393));break;case lt[e(400)]:this.context2D.drawImage(t.$video,0,0,this[e(395)].width,this[e(395)].height);break;case lt.hls:this[e(347)][e(446)](t[e(350)],0,0,this[e(395)][e(452)],this[e(395)][e(338)]);break;case lt[e(356)]:this[e(347)][e(446)](t[e(350)],0,0,this[e(395)][e(452)],this[e(395)].height)}}[eo(373)](){const t=eo;switch(super.clearView(),this[t(426)]){case lt.offscreen:(function(t,e){const s=es,i=document[s(724)](s(578));i[s(616)]=t,i[s(416)]=e;const r=window[s(541)](i,0,0,t,e);return i.width=0,i.height=0,r})(this[t(395)][t(452)],this[t(395)][t(338)])[t(422)](e=>{this[t(392)].transferFromImageBitmap(e)});break;case lt[t(414)]:this.contextGl[t(412)](this[t(437)].COLOR_BUFFER_BIT);break;case lt[t(380)]:this[t(332)].clear();break;case lt[t(435)]:this[t(347)][t(343)](0,0,this[t(395)][t(452)],this[t(395)].height);break;case lt[t(344)]:this.webGPURender?this[t(332)][t(412)]():this[t(437)]?this[t(437)][t(412)](this[t(437)][t(394)]):this[t(347)]&&this[t(347)][t(343)](0,0,this[t(395)].width,this[t(395)][t(338)]);break;case lt[t(400)]:this[t(347)].clearRect(0,0,this[t(395)].width,this.$videoElement.height);break;case lt[t(335)]:this.context2D[t(343)](0,0,this[t(395)][t(452)],this[t(395)].height);break;case lt[t(356)]:this[t(347)][t(343)](0,0,this.$videoElement[t(452)],this[t(395)].height)}}_initTempTextCanvas(){const t=eo;this[t(386)]=document[t(353)]("canvas"),this[t(427)]=this[t(386)][t(345)]("2d"),this[t(386)][t(452)]=600,this[t(386)][t(338)]=20}[eo(384)](){const t=eo;this[t(398)][t(401)]>0&&this[t(347)]&&function({ctx:t,list:e}){t.save(),(e||[]).forEach(e=>{const s=_i;"text"===e[s(445)]?(t[s(687)]=(e[s(482)]||12)+s(634),t[s(412)]=e[s(446)]||"green",t[s(618)](e.text,e.x,e.y)):e[s(445)]===s(656)&&(t[s(474)]=e.color||s(594),t[s(489)]=e[s(489)]||2,t.strokeRect(e.x,e.y,e[s(616)],e.height))}),t.restore()}({ctx:this[t(347)],list:this[t(398)]})}[eo(367)](){const t=eo;this.tempContentList[t(401)]>0&&this.contextGl&&this[t(370)]&&this[t(398)].forEach(e=>{const s=t,i=e.x,r=e.y;if(e[s(390)]===s(379)){const t=e.width,n=e[s(338)],o=function(t){const e=es;return[parseInt(t[e(441)](1,3),16)/255,parseInt(t[e(441)](3,5),16)/255,parseInt(t[e(441)](5,7),16)/255,1]}(e.color||s(346)),a=e[s(448)]||4;if(!t||!n)return;this.webglRectRender[s(416)]({x:i,y:r,width:t,height:n,lineColor:o,lineWidth:a,canvasWidth:this[s(395)][s(452)],canvasHeight:this.$videoElement[s(338)]})}else if("text"===e[s(390)]){const t=e[s(333)]||"";if(!t)return;const n=e[s(354)]||20,o=e[s(359)]||s(346);!this[s(386)]&&this[s(406)](),this.tempTextCanvasCtx[s(343)](0,0,this[s(386)][s(452)],this.tempTextCanvas[s(338)]),this.tempTextCanvasCtx[s(387)]=n+s(439),this.tempTextCanvasCtx[s(369)]=o,this.tempTextCanvasCtx[s(349)]="top",this.tempTextCanvasCtx[s(355)](t,0,0),this[s(444)].drawDom(this.$videoElement[s(452)],this[s(395)].height,i,r,this.tempTextCanvas)}})}}const no=oo;function oo(t,e){const s=ho();return(oo=function(t,e){return s[t-=398]})(t,e)}!function(t){const e=oo,s=t();for(;;)try{if(972438===-parseInt(e(481))/1*(parseInt(e(575))/2)+-parseInt(e(515))/3*(-parseInt(e(655))/4)+parseInt(e(469))/5*(parseInt(e(549))/6)+parseInt(e(511))/7*(parseInt(e(410))/8)+parseInt(e(556))/9*(parseInt(e(533))/10)+-parseInt(e(491))/11+parseInt(e(420))/12*(-parseInt(e(453))/13))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(ho);class ao extends Pn{constructor(t){const e=oo;super(),this[e(643)]=t,this[e(745)]=e(438);const s=document.createElement(e(788));s.muted=!0,s.disablePictureInPicture=!0,bs()&&(s[e(623)]=e(473)),s[e(449)][e(582)]=e(750),s[e(449)].top=0,s[e(449)][e(732)]=0,s.style.display=e(520),this[e(689)]=!1,t[e(522)][e(739)](s),this[e(649)]=s,this[e(733)]=null,this[e(614)]=null,this[e(712)]=null,this[e(409)]=null,this[e(559)]=null,this.trackGenerator=null,this.audioTrackGenerator=null,this.fixChromeVideoFlashBug(),this.fixMobileAutoFullscreen(),this.eventListenList=[],this[e(734)]=!1,this[e(586)]=0,this.isRetryPlaying=!1,this[e(550)]=0,this[e(407)]=!1,this[e(499)]=null,this[e(403)]=null,this.visibilityChangePlayTimeout=null,this.pauseDelayTimeout=null,this[e(418)]=null,this[e(496)]=null;const i=ji();this[e(747)]=null,this[e(428)]=null,this._delayEmitVodVideoWaitingInterval=null,this[e(482)]=null,this.isWaiting=!1,this[e(715)]={videoFrameCallback:this[e(642)][e(625)](this),handleVisibilityChange:this[e(741)][e(625)](this)};const{proxy:r}=this.player[e(577)],n=r(this[e(649)],St[e(650)],()=>{const t=e;if(!this[t(547)])if(this[t(643)][t(752)]())this.player[t(558)](this[t(745)],t(400));else{if(this.player[t(558)](this.TAG_NAME,"canplay"),this[t(548)]=!1,this.player[t(530)]())return this[t(643)][t(754)].isEnded()?void this[t(643)][t(558)](this[t(745)],t(780)):(this.player[t(412)](q[t(493)]),void(this[t(643)].playVodInitSeekRemoveBackgroundLock&&(this[t(643)][t(774)]=!1,this[t(643)][t(558)](this[t(745)],t(749)),this[t(643)][t(412)](q[t(439)]))));if(this.canplayReceived=!0,this.player[t(769)]()){if(this[t(643)].playVod[t(484)]())return void this[t(643)][t(558)](this[t(745)],t(646));if(this[t(705)](),this[t(686)](),this[t(643)].emit(q[t(493)]),this[t(643)][t(416)])return;this[t(488)]()?(this[t(643)][t(558)](this[t(745)],"canplay and isPlayVodUseMSE an isPaused , next call $videoElement.play()"),this[t(649)]&&this[t(649)][t(578)]()[t(662)](()=>{const e=t;this[e(643)][e(558)](this[e(745)],"canplay and isPlayVodUseMSE an isPaused , next call $videoElement.play() success"),this.player[e(412)](q.removeLoadingBgImage),this[e(675)]()})[t(619)](e=>{const s=t;this[s(643)][s(558)](this[s(745)],s(497),e,e[s(633)]())})):this[t(643)][t(774)]&&(this.player[t(774)]=!1,this[t(643)][t(558)](this[t(745)],t(494)),this[t(643)][t(412)](q.removeLoadingBgImage))}else this[t(689)]?(this[t(760)](),this[t(791)]()):this[t(649)][t(639)]&&(this[t(643)][t(517)]?(this[t(643)][t(558)](this.TAG_NAME,"canplay and video is paused and isMSEPlaybackRateChangePause is "+this[t(643)].isMSEPlaybackRateChangePause+t(489)),this[t(643)].isMSEPlaybackRateChangePause=!1,this[t(791)]()):this[t(643)][t(541)]?(this[t(643)][t(558)](this.TAG_NAME,t(573)+this[t(643)][t(541)]+t(489)),this[t(643)][t(541)]=!1,this._play()):(this.player.debugWarn(this.TAG_NAME,t(502)),this[t(791)]()))}}),o=r(this[e(649)],St.play,()=>{const t=e;this[t(643)][t(558)](this[t(745)],t(578))}),a=r(this.$videoElement,St[e(763)],()=>{const t=e;this.player[t(558)](this[t(745)],t(763))}),h=r(this[e(649)],St[e(751)],()=>{const t=e;this._isDestroyed||(this[t(643)][t(752)]()?this[t(643)][t(558)](this.TAG_NAME,t(576)):(this.player[t(558)](this[t(745)],t(561)+this[t(767)]()),this[t(548)]=!0,this[t(643)][t(769)]()?xi(this[t(643)][t(685)][t(468)]())&&(this[t(571)](),this[t(434)]()):this.player[t(530)]()&&(this.player[t(558)](this[t(745)],"emit playVodWaiting"),this[t(643)][t(412)](q[t(470)]))))}),l=r(this[e(649)],St[e(720)],()=>{const t=e;if(this.player.debugLog(this[t(745)],t(720)),this[t(643)][t(530)]()){const e=this[t(649)][t(717)];e&&(this.player.debugLog(this[t(745)],t(654)+e),this[t(643)][t(754)][t(426)](e));const s={encTypeCode:this[t(643)][t(636)].videoCodec};if(xi(ji())){const e=this[t(649)][t(728)],i=this[t(649)][t(506)];s[t(544)]=e,s[t(630)]=i,this.updateVideoInfo(s),this[t(566)]()}else this[t(460)](s);if(this[t(643)][t(422)]){const e={encTypeCode:this[t(643)].mp4Decoder[t(405)]};this.player[t(636)][t(721)].codec&&(e.channels=this[t(643)][t(636)].audioTrack[t(676)],e[t(665)]=this[t(643)].mp4Decoder[t(721)][t(665)]),this[t(643)][t(422)].updateAudioInfo(e)}}}),c=r(this[e(649)],St[e(658)],s=>{const r=e;if(!this[r(547)]&&!this[r(643)].isDestroyedOrClosed()){if(xi(i)){const e=parseInt(1e3*this.getCurrentTime(),10);if(t.isWebrtcH264()||this[r(643)][r(534)]()||this.player[r(514)]()||this.player[r(530)]())t[r(535)](),this.player[r(435)]()?this.player[r(773)]({fps:!0,ts:e,dts:e}):this[r(643)][r(785)]()?this[r(643)].playback.updateStats({ts:e}):this[r(643)].isPlayVod()&&this[r(643)].playVod.updateStats({ts:e}),this[r(643)][r(677)](e);else if(Pi(this.player._opt[r(790)])&&xi(this[r(643)][r(551)][r(793)]))if(this[r(643)][r(685)]){let t=parseInt(1e3*this[r(767)](),10)+(this[r(643)][r(685)][r(525)]||0);this[r(643)][r(677)](t)}else if(this[r(643)]._opt[r(427)]){let t=parseInt(1e3*this[r(767)](),10)+(this.player[r(762)][r(525)]||0);this[r(643)][r(677)](t)}this[r(602)]()}this.player[r(713)]()&&(this[r(643)][r(671)].updateVideoTimestamp(this[r(767)]()),this[r(704)]())}}),d=r(this[e(649)],St[e(755)],t=>{const s=e;if(!this.$videoElement.error)return void this.player.debugWarn(this[s(745)],s(789),t);let i={};if(this[s(643)].isUseMSE()&&(i=this[s(643)][s(507)]()),this[s(643)][s(730)](this[s(745)],"Error Code "+this.$videoElement[s(755)].code+" "+Vt[this[s(649)][s(755)][s(557)]]+"; Details: "+this[s(649)][s(755)].message+"; "+s(652)+JSON[s(670)](this.videoInfo)+"; Mse Mine Type: "+i[s(788)]+"; "),this[s(643)].isPlayVodMp4UseVideoSrc()){if(4===this[s(649)][s(755)][s(557)])return void this[s(643)][s(452)](J[s(627)],U[s(726)]);const t=this.$videoElement[s(755)].message;return t[s(523)](jt[s(775)])?void this[s(643)][s(452)](J[s(627)],U[s(432)]):void this[s(643)][s(452)](J[s(398)],t)}if(this.player[s(607)]()){const t=this.$videoElement.error[s(557)],e=this.$videoElement.error.message;return-1!==e[s(523)](jt[s(640)])||-1!==e[s(523)](jt[s(597)])||4===t?this[s(643)][s(638)]=!0:-1!==e.indexOf(jt[s(417)])?this[s(643)][s(476)]=!0:-1!==e.indexOf(jt[s(648)])&&(this[s(643)][s(436)]=!0),void(this[s(643)].isPlayVodUseMSE()&&(-1!==e[s(523)](jt[s(759)])||-1!==e[s(523)](jt[s(480)])||-1!==e[s(523)](jt.failedToSendVideoPacketForDecoding)||-1!==e[s(523)](jt[s(616)])||3===t)&&this[s(643)][s(452)](J[s(442)],e))}this[s(643)][s(474)]()}),u=r(this[e(649)],St[e(736)],()=>{this[e(402)](!0)});if(this[e(499)]=r(this[e(649)],St[e(792)],()=>{this[e(402)]()}),this.eventListenList[e(786)](n,o,a,h,c,d,l,u),this[e(643)][e(607)]()){const t=r(this[e(649)],St.ratechange,()=>{const t=e;this[t(643)][t(558)](this[t(745)],t(653),this[t(649)]&&this.$videoElement.playbackRate),this[t(649)]&&this[t(649)][t(639)]&&(this.player[t(512)](this[t(745)],"ratechange and video is paused and sent isMSEPlaybackRateChangePause true"),this[t(643)][t(517)]=!0)});this[e(637)][e(786)](t),Pi(this[e(643)][e(435)]())&&this[e(643)].on(q[e(510)],this[e(715)].handleVisibilityChange)}if(this[e(643)][e(769)]()||this[e(643)][e(530)]()){const t=r(this[e(649)],St[e(792)],()=>{const t=e;this[t(643)][t(558)](this.TAG_NAME,"progress"),this[t(643)][t(737)](1e3*this.geLoadedTime()),this[t(643)].emit(q[t(603)],this[t(779)]())}),s=r(this[e(649)],St.seeking,()=>{const t=e;this[t(643)][t(558)](this[t(745)],t(401),this.$videoElement.currentTime),this[t(643)][t(769)]()&&this[t(643)][t(412)](q[t(783)],this[t(649)][t(537)])}),i=r(this[e(649)],St.seeked,()=>{const t=e;this[t(643)][t(558)](this.TAG_NAME,"seeked",this[t(649)][t(537)]),this[t(643)][t(754)].isSeeking()&&this.player[t(754)][t(707)](),this[t(643)][t(412)](q.playVodVideoSeekedByMse,this[t(649)][t(537)])});this[e(637)][e(786)](t,s,i)}this[e(675)](),this[e(643)][e(558)](this[e(745)],e(687))}async[no(451)](){const t=no;if(super[t(451)](),this._off(),this[t(760)](),this[t(404)](),this[t(598)](),this.clearPauseDelayTimeout(),this[t(615)](),this._removeProgressProxyDestroy(),this[t(686)](),this[t(705)](),this.eventListenList[t(757)]&&(this.eventListenList[t(500)](t=>{t()}),this[t(637)]=[]),this[t(734)]=!1,this[t(586)]=0,this[t(554)]=!1,this[t(550)]=0,this.canplayReceived=!1,this.prevVideoPlaybackQuality=null,this[t(643)][t(551)][t(458)]&&this._isNeedAddBackDropFilter()){const e=this[t(643)][t(522)];e[t(449)].backdropFilter=t(520),e[t(449)][t(498)]=t(520)}if(this[t(733)]&&(this[t(733)][t(630)]=0,this.$screenshotCanvasElement[t(544)]=0,this.$screenshotCanvasElement=null),this[t(614)]=null,this[t(649)]){this[t(649)].pause&&(this[t(649)][t(763)](),this.$videoElement[t(472)]=!0),this.$videoElement[t(537)]=0,this[t(649)][t(542)]&&(this[t(649)].srcObject=null,this.$videoElement[t(546)](t(542))),this[t(649)][t(564)]&&(this[t(649)][t(564)]="",this.$videoElement[t(546)](t(564)));try{this[t(649)][t(723)]()}catch(t){}!En(this.$videoElement)&&this.$videoElement[t(487)](),this[t(649)]=null}if(this[t(777)]&&(this[t(777)][t(645)](),this[t(777)]=null),this[t(508)]&&(this.audioTrackGenerator[t(645)](),this.audioTrackGenerator=null),this[t(409)]){try{await this.vwriter.close()}catch(t){}this.vwriter=null}if(this.awriter){try{await this[t(559)][t(794)]()}catch(t){}this[t(559)]=null}this._delayPlay=!1,this[t(712)]&&(this[t(712)][t(463)]()[t(500)](e=>e[t(645)]()),this[t(712)]=null),this[t(715)]=null,this[t(548)]=!1,this[t(613)](),this.player[t(558)](this[t(745)],t(451))}_off(){const t=no;this.player[t(558)](this[t(745)],"_off()"),this[t(643)][t(613)](q[t(510)],this[t(715)][t(741)])}[no(456)](){const t=no,e=document[t(772)](t(433));this[t(733)]=e,this[t(614)]=e.getContext("2d"),this[t(643)][t(551)][t(620)]&&(this[t(614)][t(682)]=!0,this[t(614)][t(682)]&&(this.screenshotCanvasContext[t(617)]=t(599)))}[no(543)](){const t=no;if(this.player.canVideoTrackWritter()&&Us()&&Os()&&!this.mediaStream){this[t(643)].debugLog(this[t(745)],"bindMediaStream"),this[t(777)]=new MediaStreamTrackGenerator({kind:t(788)}),this[t(643)][t(419)]()&&(this.audioTrackGenerator=new MediaStreamTrackGenerator({kind:t(422)}),this.awriter=this[t(508)][t(784)][t(766)]());const e=[this[t(777)]];this.audioTrackGenerator&&e[t(786)](this[t(508)]),this.mediaStream=new MediaStream(e),this[t(649)][t(542)]=this.mediaStream,this[t(409)]=this[t(777)][t(784)].getWriter()}}[no(642)](t,e={}){const s=no;if(this[s(547)])return;if(this[s(643)][s(752)]())return void this[s(643)][s(558)](this[s(745)],"videoFrameCallback() and isDestroyedOrClosed and return");const i=parseInt(1e3*Math[s(590)](e.mediaTime,this.getCurrentTime()),10)||0;if(this[s(643)][s(589)]()){const t=i+(this[s(643)][s(685)]&&this.player[s(685)][s(525)]||0);this[s(643)][s(435)]()?this.player[s(773)]({fps:!0,ts:t}):this[s(643)][s(785)]()?this[s(643)][s(691)].updateStats({ts:t}):this.player.isPlayVod()&&this[s(643)].playVod[s(773)]({ts:t})}else if(this[s(643)][s(713)]()){!this.player[s(415)][s(693)]&&(this[s(643)][s(415)][s(693)]=os(),this.player[s(667)]());const t=i+(this.player[s(762)].firstRenderTime||0);if(this[s(643)].updateStats({fps:!0,dfps:!0,ts:t,mseTs:i}),xi(this[s(727)]())&&e[s(544)]&&e.height){const t={width:e.width,height:e[s(630)]};this.updateVideoInfo(t),this[s(566)]()}}if(this[s(643)][s(545)]()||this[s(643)][s(534)]()||this[s(643)].isAliyunRtc()||this.player[s(530)]()){if(this[s(643)][s(530)]()&&!this[s(643)][s(415)][s(693)]&&(this[s(643)]._times[s(693)]=os(),this.player[s(667)]()),xi(this[s(727)]())&&e[s(544)]&&e[s(630)]){const t={width:e.width,height:e[s(630)]};this[s(770)][s(596)]||(this.player[s(545)]()?t.encTypeCode=this[s(643)][s(465)]():(this[s(643)][s(580)]()||this[s(643)][s(514)]()||this[s(643)][s(530)]())&&(t[s(596)]=et[s(560)])),this[s(460)](t),this.initCanvasViewSize()}if((this[s(643)][s(545)]()||this[s(643)][s(514)]())&&this[s(770)][s(544)]&&this.videoInfo[s(630)]&&e[s(630)]&&e[s(544)]&&(this[s(770)][s(544)]!==e[s(544)]||this[s(770)][s(630)]!==e[s(630)])){this.player[s(558)](this[s(745)],s(441)+this[s(770)][s(544)]+" -> "+e[s(544)]+s(600)+this.videoInfo[s(630)]+s(585)+e[s(630)]);const t={width:e[s(544)],height:e[s(630)]};this[s(593)](t),this[s(503)]()}this[s(643)][s(435)]()?this[s(643)][s(773)]({fps:!0,ts:i,dts:i}):this[s(643)][s(785)]()?this[s(643)][s(691)][s(773)]({ts:i}):this[s(643)][s(626)]()&&this.player[s(754)][s(773)]({ts:i}),this[s(643)][s(677)](i),this.doAddContentToWatermark()}else if(Pi(this[s(643)][s(551)][s(790)])&&xi(this[s(643)]._opt[s(793)])){if(this[s(643)][s(685)]){let t=i+(this[s(643)][s(685)][s(525)]||0);this[s(643)][s(677)](t)}else if(this[s(643)][s(551)].mseDecoderUseWorker){let t=i+(this[s(643)]._mseWorkerData.firstRenderTime||0);this.player[s(677)](t)}this[s(602)]()}this.player.handleRender(),this[s(747)]=this.$videoElement.requestVideoFrameCallback(this.bound[s(642)])}[no(741)](t){const e=no;t&&(this[e(643)][e(558)](this[e(745)],e(594)),this.visibilityChangePlayTimeout=setTimeout(()=>{const t=e;if(this[t(598)](),this[t(643)]&&this[t(643)][t(778)]()&&this[t(649)]){const e=this[t(700)]();if(e-this.$videoElement.currentTime>this[t(761)]()){const s=this[t(519)](1);this.player.debugLog(this[t(745)],t(565)+e+t(611)+this[t(649)][t(537)]+" so set currentTime to "+s),this[t(649)][t(537)]=s}}},300))}[no(743)](){const t=no;if(this[t(643)][t(551)][t(458)]&&this._isNeedAddBackDropFilter()){const e=this.player.$container;e[t(449)].backdropFilter="blur(0px)",e[t(449)].transform=t(628)}}[no(531)](){const t=no,e=Es(),s=bs();(e||s)&&(this.player[t(558)](this[t(745)],"fixMobileAutoFullscreen and isIOS "+e+t(526)+s),this[t(649)].setAttribute(t(411),t(684)),this[t(649)].setAttribute("playsinline",t(684)),this[t(649)].setAttribute(t(683),t(629)))}_detectAndFixStuckPlayback(t){const e=no,s=this[e(649)],i=s[e(421)],r=s.readyState;if(this[e(643)][e(558)](this.TAG_NAME,e(552)+t+" ,canplayReceived is "+this.canplayReceived+e(622)+r+" and bufferedLength is "+i.length+e(612)+(i.length>0?i.start(0):e(592))+e(611)+s[e(537)]),t||xi(this.canplayReceived)||r<2){if(i.length>0&&s.currentTime<i.start(0))this[e(643)][e(512)](this[e(745)],"_detectAndFixStuckPlayback() and video is stuck and currentTime is "+s[e(537)]+e(471)+i.start(0)),s[e(537)]=i.start(0),this._removeProgressProxyDestroy();else if(this[e(643)].isPlayUseMSE()&&!this[e(643)][e(765)]&&!this[e(643)][e(488)]()){null===this[e(496)]&&(this[e(496)]=os(),this[e(643)][e(558)](this[e(745)],e(521)+this[e(496)]));const t=os()-this[e(496)];t>=1e3*this[e(643)][e(551)][e(457)]&&(this[e(643)][e(512)](this[e(745)],"_detectAndFixStuckPlayback() and video is stuck and currentTime is "+s.currentTime+" , diff is "+t+" and timeout"),this[e(643)][e(412)](J[e(457)],t))}}else this[e(467)]()}[no(467)](){const t=no;this[t(499)]&&(this[t(643)].debugLog(this.TAG_NAME,t(748)),this.progressProxyDestroy(),this.progressProxyDestroy=null),this.detectAndFixStuckPlaybackStartTime=null}_isNeedAddBackDropFilter(){const t=no,e=Ss()[t(477)][t(735)]();return"chrome"===e||e===t(731)}[no(488)](){const t=no;let e=!0;return this[t(649)]&&(e=this.$videoElement[t(639)]),e}isPause(){return this[no(488)]()}_getVideoReadyState(){const t=no;let e=0;return this[t(649)]&&(e=this[t(649)][t(423)]),e}[no(429)](){const t=no;let e=0;return this.$videoElement&&(e=this.$videoElement[t(537)]),e}[no(578)](){const t=no;if(this[t(649)]){const e=this[t(572)]();if(this[t(643)][t(558)](this[t(745)],t(621)+e),0===e)return this[t(643)][t(558)](this[t(745)],"readyState is 0 and set _delayPlay to true and listen canplay event to play"),this._delayPlay=!0,void(null===this[t(403)]&&(this.checkVideoCanplayTimeout=setTimeout(()=>{const e=t;if(this[e(760)](),!this[e(547)]&&!this.player[e(752)]()&&!this[e(643)][e(641)]&&xi(this.isPlaying())){const t=this._getBufferStore();this[e(643)][e(512)](this.TAG_NAME,"checkVideoCanplayTimeout and video is not playing and buffer store is "+t+" and retry play"),this[e(649)].currentTime=t,this[e(414)]()}},1e3)));this[t(791)]()}}[no(791)](){const t=no;this[t(649)]&&this[t(649)].play()[t(662)](()=>{const e=t;this[e(689)]=!1,this[e(643)].debugLog(this[e(745)],"_play success"),this[e(778)]()?(this.player[e(412)](q[e(439)]),this[e(675)](),this[e(550)]=0,this[e(554)]=!1):this[e(418)]=setTimeout(()=>{this[e(404)](),this._replay()},100)})[t(619)](e=>{const s=t;this[s(547)]||(this.player[s(752)]()?this[s(643)][s(558)](this[s(745)],s(505)):(this[s(643)][s(558)](this[s(745)],s(690)+e[s(709)]+s(495)+e.message+s(632)+e.toString()),this.player[s(730)](this[s(745)],s(568),e),this[s(554)]=!1,this[s(418)]=setTimeout(()=>{this[s(404)](),this._replay()},100)))})}_replay(){const t=no;if(!this[t(547)])if(!this[t(778)]()&&xi(this[t(643)][t(752)]())&&xi(this.isRetryPlaying)){if(this.isRetryPlaying=!0,this[t(550)]>=3){let e="";return void(this[t(643)].isWebrtcH264()?(e="_replay(webrtc H264) then but not playing and retry play times is "+this[t(550)]+" and emit error",this[t(643)][t(730)](this[t(745)],e),this[t(643)].emitError(J[t(527)],e)):(e=t(479)+this[t(550)]+t(742),this[t(643)].debugError(this[t(745)],e),this[t(643)][t(452)](J[t(454)],e)))}this[t(643)].debugWarn(this.TAG_NAME,t(570)+this.isRetryPlayingTimes),this._play(),this[t(550)]++}else this[t(643)][t(558)](this.TAG_NAME,t(553)+this.isPlaying()+" and isRetryPlaying is "+this[t(554)]+t(437)+this[t(643)][t(752)]()+t(540))}[no(763)](t){const e=no;this[e(643)][e(558)](this[e(745)],e(606)+t),this[e(778)]()&&(t?(this[e(649)]&&this[e(649)].pause(),this._cancelVideoFrameCallback()):this[e(672)]=setTimeout(()=>{const t=e;this[t(455)](),this[t(649)]&&this.$videoElement[t(763)](),this[t(615)]()},100))}[no(461)](){const t=no;super[t(461)](),this[t(649)]&&(this.$videoElement[t(763)](),this.$videoElement[t(537)]=0,this.$videoElement[t(564)]&&(this.$videoElement[t(564)]="",this[t(649)].removeAttribute(t(564))),this[t(649)].srcObject&&(this[t(649)].srcObject=null,this[t(649)][t(546)](t(542))))}[no(532)](t,e,s,i){const r=no;if(!this._canScreenshot())return this[r(643)][r(512)](this[r(745)],r(714)+this[r(572)]()),null;t=t||os(),i=i||$[r(413)];let n=.92;!bt[e]&&$[e]&&(i=e,e=r(569),s=void 0),typeof s===r(634)&&(i=s,s=void 0),typeof s!==r(678)&&(n=Number(s));const o=this[r(649)];!this.$screenshotCanvasElement&&this[r(456)]();let a=this[r(733)];a.width=o[r(728)],a[r(630)]=o[r(506)],this[r(614)][r(485)](o,0,0,a.width,a[r(630)]);const h=bt[e]||bt[r(569)];let l=x;try{l=a.toDataURL(h,n)}catch(t){this.player[r(558)](this[r(745)],r(466),t.toString(),t)}if(this[r(614)][r(587)](0,0,a[r(544)],a[r(630)]),a.width=0,a.height=0,i===$.base64)return l;{const e=ns(l);if(i===$[r(718)])return e;if(i===$[r(413)]){const s=h[r(624)]("/")[1];jn(e,t+"."+s)}}}[no(425)](t){return new Promise((e,s)=>{const i=oo;if(ri(t)&&(t={filename:t}),!this[i(516)]())return this[i(643)][i(512)](this[i(745)],i(710)),s("screenshot failed, video is not ready");const r=this[i(649)];(t=t||{})[i(544)]=r[i(728)],t.height=r.videoHeight,t.filename=t[i(501)]||os(),t[i(448)]=t[i(448)]?bt[t.format]:bt[i(569)],t.quality=Number(t[i(618)])||.92,t.type=t.type||$.download,!this[i(733)]&&this[i(456)]();let n=this[i(733)];n[i(544)]=r.videoWidth,n[i(630)]=r[i(506)],this[i(614)][i(485)](r,0,0,n[i(544)],n[i(630)]);let o=x;try{o=n[i(719)](t[i(448)],t.quality)}catch(t){this[i(643)][i(558)](this[i(745)],i(688),t.toString(),t)}this[i(614)][i(587)](0,0,n[i(544)],n[i(630)]),n[i(544)]=0,n.height=0;const a=this[i(643)][i(551)].screenshotUseHighQuality;Hs(o,t,a)[i(662)](s=>{const r=i;if(t[r(477)]===$[r(631)])e(s);else{const i=ns(s);if(t[r(477)]===$[r(718)])e(i);else if(t[r(477)]===$[r(413)]){e();const s=t[r(448)][r(624)]("/")[1];jn(i,t.filename+"."+s)}}})[i(619)](t=>{s(t)})})}[no(725)](t){return new Promise((e,s)=>{const i=oo;if(ri(t)&&(t={filename:t}),!this[i(516)]())return this[i(643)][i(512)](this[i(745)],"screenshot failed, video is not ready"),s(i(710));const r=this[i(649)];(t=t||{})[i(544)]=r.videoWidth,t[i(630)]=r.videoHeight,t.filename=t[i(501)]||os(),t[i(448)]=t[i(448)]?bt[t[i(448)]]:bt.png,t[i(618)]=Number(t[i(618)])||.92,t[i(477)]=t.type||$[i(413)],!this.$screenshotCanvasElement&&this._createScreenShotCanvas();let n=this[i(733)];n[i(544)]=r[i(728)],n[i(630)]=r.videoHeight,this[i(614)][i(485)](r,0,0,n[i(544)],n.height);let o=x;try{o=n[i(719)](t[i(448)],t.quality)}catch(t){this.player[i(558)](this.TAG_NAME,"screenshotCopyrightWatermark and toDataURL error",t.toString(),t)}this[i(614)].clearRect(0,0,n[i(544)],n[i(630)]),n[i(544)]=0,n[i(630)]=0;const a=this[i(643)][i(551)][i(620)];qs(o,t,a)[i(662)](s=>{const r=i;if(t[r(477)]===$.base64)e(s);else{const i=ns(s);if(t[r(477)]===$[r(718)])e(i);else if(t[r(477)]===$[r(413)]){e();const s=t.format.split("/")[1];jn(i,t[r(501)]+"."+s)}}})[i(619)](t=>{s(t)})})}[no(722)](t){}[no(528)](t){const e=no;if(!this._canScreenshot())return this[e(643)][e(512)](this.TAG_NAME,"screenshotByRect failed, video is not ready and stats is "+this[e(572)]()),null;const s=this.$videoElement;!this[e(733)]&&this._createScreenShotCanvas();let i=this.$screenshotCanvasElement;i.width=parseInt(t[e(544)],10),i[e(630)]=parseInt(t[e(630)],10),this[e(614)][e(485)](s,t.x,t.y,i.width,i[e(630)],0,0,i[e(544)],i[e(630)]);const r=bt.png;let n=x;try{n=i[e(719)](r,.92)}catch(t){this[e(643)].debugLog(this[e(745)],e(674),t[e(633)](),t)}return this[e(614)].clearRect(0,0,i[e(544)],i[e(630)]),i.width=0,i.height=0,n}[no(566)](){const t=no;this.$videoElement[t(449)].display=t(692),this[t(503)]()}[no(431)](){const t=no,e=this[t(649)],s=e[t(421)],i=s[t(757)]?s.end(s.length-1):0;e.currentTime=i}[no(601)](t){const e=no;if(!this._isDestroyed)if(this[e(409)]){if(!this[e(649)][e(542)]&&(this[e(649)].srcObject=this[e(712)]),this[e(488)]()){const s=this[e(572)]();if(this[e(643)][e(512)](this[e(745)],"render() error, video is paused and readyState is "+s),4===s&&xi(this[e(734)])){if(this[e(734)]=!0,this.isRenderRetryPlayingTimes>3){const i=e(663)+s+e(406)+this.isRenderRetryPlayingTimes+e(716);return this[e(643)][e(730)](this[e(745)],i),this[e(643)][e(452)](J.videoElementPlayingFailed,i),void(t[e(430)]&&bi(t.videoFrame))}this[e(649)][e(578)]()[e(662)](()=>{const t=e;this[t(586)]=0,this[t(734)]=!1,this[t(675)](),this[t(643)][t(558)](this[t(745)],"render() video is paused and replay success")}).catch(t=>{const s=e;this.isRenderRetryPlaying=!1,this.isRenderRetryPlayingTimes++,this.player[s(558)](this[s(745)],s(669)+t.name+",\n e.message is "+t[s(673)]+s(680)+t[s(633)]()),this[s(643)][s(730)](this.TAG_NAME,s(399),t)})}}if(this.player[e(435)]()?this[e(643)].updateStats({fps:!0,ts:t.ts||0}):this[e(643)][e(785)]()?this[e(643)][e(691)][e(773)]({ts:t.ts||0}):this.player[e(626)]()&&this[e(643)][e(754)].updateStats({ts:t.ts||0}),t[e(430)])if(this[e(562)]()){const s=t[e(430)];let i=new Uint8Array(s[e(776)]());s[e(604)](i)[e(662)](()=>{const r=e,n=s[r(448)]==r(567)?M[r(483)]:M[r(513)],o=this.aiCheck({yuv:i,ts:t.ts||0},n);if(bi(s),!o)return;const a=o.yuv;try{const e=Ys(a,{format:o[r(448)],codedWidth:this[r(770)][r(544)],codedHeight:this[r(770)][r(630)],timestamp:1e3*t.ts});this.vwriter[r(681)](e)[r(662)](()=>{bi(e)})[r(619)](t=>{})}catch(t){this[r(643)][r(730)](this.TAG_NAME,r(782),t),this.player[r(452)](J.wasmUseVideoRenderError,r(753)+t[r(557)]+" and message is "+t.message)}})}else this[e(409)][e(681)](t[e(430)])[e(662)](()=>{bi(t[e(430)])}).catch(t=>{});else if(t[e(668)]){const s=this.aiCheck({yuv:t[e(668)],ts:t.ts||0});if(!s)return;const i=s[e(702)];try{const r=Ys(i,{format:s[e(448)],codedWidth:this.videoInfo[e(544)],codedHeight:this[e(770)].height,timestamp:1e3*t.ts});this[e(409)][e(681)](r).then(()=>{bi(r)}).catch(t=>{})}catch(t){this[e(643)][e(730)](this[e(745)],e(504),t),this.player.emitError(J.wasmUseVideoRenderError,e(445)+t[e(557)]+e(758)+t[e(673)])}}this.player[e(677)](t.ts||0),this[e(602)](),this.doAddAiContentToWatermark()}else this[e(643)][e(512)](this[e(745)],e(695))}[no(708)](){const t=no;this[t(643)][t(558)](this[t(745)],t(529));const e=this.player[t(551)],s=e[t(610)],i=this[t(643)][t(538)]();let r=i[t(544)],n=i[t(630)];this[t(649)][t(544)]=r,this[t(649)][t(630)]=n,this.$videoElement[t(449)][t(544)]=r+"px",this.$videoElement.style[t(630)]=n+"px",(270===s||90===s)&&(this[t(649)][t(544)]=n,this[t(649)][t(630)]=r,this[t(649)][t(449)][t(544)]=n+"px",this[t(649)][t(449)][t(630)]=r+"px");let o=this[t(649)].width,a=this[t(649)].height,h=Math.floor((r-o)/2),l=Math[t(408)]((n-a)/2),c=t(746);xi(e.isResize)&&(c=t(756)),e[t(701)]&&(c=t(443));let d="";e[t(744)]===t(520)&&s&&(d+=t(583)+s+t(459)),e.mirrorRotate===t(581)?d+=t(518):e[t(744)]===t(781)&&(d+=" rotateX(180deg)"),this[t(643)][t(551)][t(458)]&&(this.$videoElement[t(449)][t(475)]=c),this.$videoElement[t(449)].transform=d,this[t(649)][t(449)].padding="0",this.$videoElement[t(449)][t(732)]=h+"px",this[t(649)][t(449)][t(447)]=l+"px"}getType(){return A[no(788)]}getCurrentTime(){const t=no;return this[t(649)][t(537)]}[no(778)](){const t=no;return this[t(649)]&&xi(this[t(649)].paused)&&xi(this.$videoElement[t(609)])&&0!==this[t(649)][t(444)]&&0!==this[t(649)][t(423)]}[no(509)](){return this[no(778)]()}[no(516)](){const t=no;return this[t(649)]&&this[t(649)].readyState>=1}getPlaybackQuality(){const t=no;let e=null;if(this[t(649)]){if(di(this[t(649)][t(651)])){const s=this[t(649)][t(651)]();e={droppedVideoFrames:s[t(698)]||s[t(555)]||0,totalVideoFrames:s[t(574)]||0,creationTime:s[t(595)]||os()}}else e={droppedVideoFrames:this[t(649)][t(490)]||0,totalVideoFrames:this[t(649)].webkitDecodedFrameCount||0,creationTime:os()};if(e){if(e[t(608)]=e.totalVideoFrames-e[t(698)],this[t(482)]){const s=e[t(698)]-this[t(482)].droppedVideoFrames,i=e[t(595)]-this[t(482)][t(595)];e[t(656)]=(1e3*s/i)[t(660)](2),e.videoDroppedFrames=e[t(698)]-this[t(482)].droppedVideoFrames,e[t(424)]=e.totalVideoFrames-this[t(482)][t(574)],e[t(717)]=i}this.prevVideoPlaybackQuality=e}}return e}setRate(t){const e=no;this[e(649)]&&t!==this.rate&&(this.player[e(558)](this[e(745)],"setRate",t),this.$videoElement[e(444)]=t)}get rate(){const t=no;let e=1;return this[t(649)]&&(e=this.$videoElement[t(444)]),e}[no(760)](){const t=no;this[t(403)]&&(clearTimeout(this[t(403)]),this[t(403)]=null)}[no(404)](){const t=no;this[t(418)]&&(this[t(643)].debugLog(this[t(745)],t(462)),clearTimeout(this.replayTimeout),this.replayTimeout=null)}[no(598)](){const t=no;this[t(563)]&&(this[t(643)].debugLog(this[t(745)],t(635)),clearTimeout(this[t(563)]),this[t(563)]=null)}[no(455)](){const t=no;this[t(672)]&&(clearTimeout(this[t(672)]),this.pauseDelayTimeout=null)}[no(615)](){const t=no;this[t(747)]&&this[t(649)]&&(this[t(643)][t(558)](this[t(745)],t(699)),this[t(649)][t(706)](this[t(747)]),this[t(747)]=null)}[no(675)](){const t=no;ji()?!this.supportVideoFrameCallbackHandle&&(this[t(643)][t(558)](this.TAG_NAME,t(536)),this[t(747)]=this.$videoElement.requestVideoFrameCallback(this[t(715)][t(642)])):this.player[t(512)](this.TAG_NAME,"not support requestVideoFrameCallback and use timeupdate event to update stats")}[no(446)](){const t=no,e=this.$videoElement;let s=0;return e[t(421)][t(757)]>0&&(s=e[t(421)].start(0)),s}_handleUpdatePlaybackRate(){const t=no,e=this[t(649)],s=e[t(421)];s.length&&s[t(605)](0);const i=s[t(757)]?s[t(764)](s[t(757)]-1):0;let r=e[t(537)];const n=i-r,o=this[t(761)]();if(this[t(643)].updateStats({mseVideoBufferDelayTime:n}),n>o){const s=this[t(519)](1);this[t(643)][t(558)](this[t(745)],t(697)+i+t(664)+r+" , delay buffer is more than "+o+" is "+n+" and new time is "+s),e[t(537)]=s,r=e[t(537)]}else if(n<0&&0===i)return this[t(643)][t(512)](this[t(745)],t(679)+i+t(711)+r+t(703)+n+" < 0 and check video is paused : "+e[t(639)]+" "),void this.player[t(412)](J[t(440)],t(657));if(r>1){const s=this[t(464)](i-r);e[t(444)]!==s&&(this[t(643)][t(558)](this.TAG_NAME,"handleUpdatePlaybackRate and buffered is "+i+" and current time is "+r+t(591)+(i-r)+" set playbackRate is "+s+" "),e[t(444)]=s)}}_getPlaybackRate(t){const e=no,s=this[e(649)];let i=this.player[e(551)].videoBufferDelay+this[e(643)][e(551)][e(740)];const r=this[e(643)][e(551)][e(771)],n=Math[e(590)](i,r),o=n/2;return t*=1e3,1===s[e(444)]?t>n?1.2:1:t<=o?1:s[e(444)]}[no(729)](){const t=no;let e=0;return this.$videoElement&&(e=this[t(649)][t(537)]),e}[no(700)](){const t=no,e=this[t(649)];let s=0;if(e){const i=e.buffered;i.length&&i[t(605)](0);s=i[t(757)]?i[t(764)](i[t(757)]-1):0}return s}[no(486)](){const t=no,e=this[t(649)];const s=this[t(700)]()-e[t(537)];return s>0?s:0}[no(579)](){const t=no,e=this[t(649)];let s=0,i=0;return e.buffered[t(757)]>0&&(i=e[t(421)][t(764)](e.buffered[t(757)]-1),s=i-e[t(537)]),s<0&&(this.player[t(512)](this.TAG_NAME,t(539)+s+t(492)+i+t(584)+e[t(537)]+t(647)+e[t(537)]+t(768)+i),e[t(537)]=i,e[t(639)]&&(this.player.debugWarn(this.TAG_NAME,t(450)),this[t(643)][t(541)]=!0),s=0),s}checkSourceBufferStore(){const t=no,e=this[t(649)];let s=0;return e[t(421)][t(757)]>0&&(s=e[t(537)]-e[t(421)].start(0)),s}[no(478)](){const t=no,e=this[t(649)];let s=null;if(e){const i=e[t(421)],r=i.length?i[t(605)](0):0,n=i[t(757)]?i[t(764)](i.length-1):0;s={start:r,end:n,diff:n-r}}return s}[no(524)](){const t=no,e=this[t(649)];let s=[];if(e){const i=e[t(421)];for(let e=0;e<i.length;e++){let r=i[t(605)](e),n=i.end(e);s[t(786)]({start:r,end:n})}}return s}getDecodePlaybackRate(){const t=no;let e=0;const s=this[t(649)];return s&&(e=s[t(444)]),e}[no(761)](){const t=no;let e=(this.player[t(551)][t(740)]+this[t(643)][t(551)][t(666)])/1e3;return Math[t(590)](5,e+3)}[no(738)](){return this[no(572)]()>=1}[no(705)](){const t=no;this[t(661)]&&(this[t(643)][t(558)](this.TAG_NAME,t(694)),clearTimeout(this._delayEmitVodVideoWaitingInterval),this[t(661)]=null)}[no(686)](){const t=no;this[t(428)]&&(this[t(643)].debugLog(this[t(745)],"_clearCheckVodVideoWaiting()"),clearTimeout(this[t(428)]),this[t(428)]=null)}_delayEmitVodVideoWaiting(){const t=no;this[t(643)][t(558)](this[t(745)],t(724)),this[t(705)](),this[t(661)]=setTimeout(()=>{const e=t;this[e(705)](),this[e(547)]||(this[e(643)][e(752)]()?this[e(643)].debugLog(this[e(745)],"_delayEmitVodVideoWaitingInterval and player is destroyed or closed and return"):(this[e(643)].debugLog(this.TAG_NAME,"emit playVodWaiting"),this[e(643)][e(412)](q.playVodWaiting)))},100)}_checkVodVideoWaiting(){const t=no;this[t(643)][t(558)](this[t(745)],"_checkVodVideoWaiting() start"),this[t(686)](),this[t(428)]=setTimeout(()=>{const e=t;this[e(686)](),this[e(547)]||(this[e(643)][e(752)]()?this.player[e(558)](this[e(745)],"_checkVodVideoWaiting and player is destroyed or closed and return"):this[e(649)]&&(this[e(643)][e(558)](this[e(745)],e(644)+this[e(649)][e(537)]+e(588)+(this[e(649)].currentTime+.1)),this.$videoElement[e(537)]=this.$videoElement[e(537)]+.1))},4e3)}[no(787)](t){const e=no;this.$videoElement&&(this[e(649)].currentTime=t)}[no(484)](){const t=no;let e=!1;return this[t(649)]&&(e=this.$videoElement[t(609)]),e}isVideoWaiting(){return this[no(548)]}[no(659)](){const t=no;let e=0;return this[t(649)]&&this[t(649)].buffered[t(757)]>0&&(e=this.$videoElement.buffered[t(764)](this.$videoElement[t(421)][t(757)]-1)),e}[no(696)](){const t=no;let e=0;return this[t(649)]&&(e=this.$videoElement[t(717)]),e}[no(779)](){const t=no;let e=0;if(this[t(649)]){const s=this[t(696)]();s&&(e=this.geLoadedTime()/s)}return e}[no(519)](t=1){const e=no;let s=this[e(649)][e(537)];const i=this[e(524)]();if(0===i.length)return s;const r=i[i[e(757)]-1];return s=r[e(764)]-r.start<1?r[e(605)]:r.end-(t||1),s}}function ho(){const t=["setPlayVodBufferedTime","getReadyStateInited","appendChild","videoBuffer","handleVisibilityChange"," and emit error to use canvas render","fixChromeVideoFlashBug","mirrorRotate","TAG_NAME","contain","supportVideoFrameCallbackHandle","_removeProgressProxyDestroy()","canplay and isPlayVodMp4UseVideoSrc and playVodInitSeekRemoveBackgroundLock is true and next remove loading background","absolute","waiting","isDestroyedOrClosed","use wcs code is ","playVod","error","fill","length"," and message is ","videoDecodeError","clearCheckVideoCanplayTimeout","getBufferMaxDelayTime","_mseWorkerData","pause","end","playing","getWriter","getCurrentTime"," to ","isPlayVodUseMSE","videoInfo","mseVideoBufferMinDelay","createElement","updateStats","playVodInitSeekRemoveBackgroundLock","failedToSendAudioPacketForDecoding","allocationSize","trackGenerator","isPlaying","getLoadedPercent","canplay and isPlayVodMp4UseVideoSrc and isEnded and return","vertical","use wcs render error","playVodVideoSeekingByMse","writable","isPlayback","push","setCurrentTime","video","on error","useMSE","_play","progress","mseUseCanvasRender","close","playVodMp4UseSrcVideoError","render() error, video is paused and replay error ","canplay and isDestroyedOrClosed,so return","seeking","_detectAndFixStuckPlayback","checkVideoCanplayTimeout","clearReplayTimeout","audioCodec",", retry times is ","canplayReceived","floor","vwriter","8IzRvyn","webkit-playsinline","emit","download","_replay","_times","isInPlayNextFrame","audioDecoderError","replayTimeout","useVideoPlayAudio","7267164OmxlTz","buffered","audio","readyState","videoDecodedFrames","screenshotWatermark","updateDuration","mseDecoderUseWorker","_checkVodVideoWaitingInterval","_getVideoCurrentTime","videoFrame","clear","audioDecodeFailed","canvas","_checkVodVideoWaiting","isPlayer","isMSENotSupportAudioFormat"," and isDestroyedOrClosed is ","Video","removeLoadingBgImage","mediaSourceBufferedIsZeroError","webrtcH264 and check video change width ","playVodMseDecodeVideoError","cover","playbackRate","code is ","_getBufferStore","top","format","style","checkSourceBufferDelay and video is paused and sent isMSECurrentMoreThanBufferedPause true","destroy","emitError","65gLXNgH","videoElementPlayingFailed","clearPauseDelayTimeout","_createScreenShotCanvas","mseWaitVideoCanplayTimeout","videoRenderSupportScale","deg)","updateVideoInfo","clearView","clearReplayTimeout()","getTracks","_getPlaybackRate","getWebrtcVideoCodec","screenshot and toDataURL error","_removeProgressProxyDestroy","isCurrentTimeInBufferEnd","20TYdROa","playVodWaiting"," ,seek to ","muted","noposter","isHlsCanVideoPlay","objectFit","isMSEAudioDecoderError","type","getVideoBufferTimeRange","_replay then but not playing and retry play times is ","videoNSOSStatusErrorDomainError","60356XFXIig","prevVideoPlaybackQuality","nv12","isEnded","drawImage","getVideoBufferDelayTime","remove","isPaused"," so next try to play","webkitDroppedFrameCount","6890213vsBSNe"," < 0, and buffered is ","playVodCanplay","canplay and isPlayVodUseMSE and playVodInitSeekRemoveBackgroundLock is true and next remove loading background",",\n e.message is ","detectAndFixStuckPlaybackStartTime","canplay and isPlayVodUseMSE an isPaused , next call $videoElement.play() error","transform","progressProxyDestroy","forEach","filename","canplay and video is paused and try to play","resize","render error","_play error and player is isDestroyedOrClosed and return","videoHeight","getMseMineType","audioTrackGenerator","isVideoPlaying","visibilityChange","9499119hQiWBG","debugWarn","i420","isAliyunRtc","5737962mgNnjQ","_canScreenshot","isMSEPlaybackRateChangePause"," rotateY(180deg)","getLastBufferDelayEndTime","none","_detectAndFixStuckPlayback() set detectAndFixStuckPlaybackStartTime is ","$container","indexOf","getVideoBufferRangeList","firstRenderTime"," and isAndroid ","videoElementPlayingFailedForWebrtc","screenshotByRect","_resize()","isPlayVodMp4UseVideoSrc","fixMobileAutoFullscreen","screenshot","162130PhfxXg","isOldHls","handleRender","support requestVideoFrameCallback and use videoFrameCallback","currentTime","getShowVideoRect","checkVideoSourceBufferDelay "," and return;","isMSECurrentMoreThanBufferedPause","srcObject","bindMediaStream","width","isWebrtcH264","removeAttribute","_isDestroyed","isWaiting","2418276CXYgUK","isRetryPlayingTimes","_opt","_detectAndFixStuckPlayback() and isStalled is ","_replay() and isPlaying is ","isRetryPlaying","corruptedVideoFrames","495IxgIZc","code","debugLog","awriter","h264","waiting and currentTime is ","needAiCheck","visibilityChangePlayTimeout","src","visibilityChange is true and lastTime is ","initCanvasViewSize","NV12","_play error","png","_play then but not playing and retry play and isRetryPlayingTimes is ","_delayEmitVodVideoWaiting","_getVideoReadyState","canplay and video is paused and isMSECurrentMoreThanBufferedPause is ","totalVideoFrames","38TIJpSk","waiting and isDestroyedOrClosed,so return","events","play","checkSourceBufferDelay","isOldHlsUseVideoSrc","level","position"," rotate("," ,currentTime is "," -> ","isRenderRetryPlayingTimes","clearRect"," and update currentTime to ","isMseDecoderUseMain","max"," and delay is ","null","updateVideoInfoByWebrtc","start visibilityChangePlayTimeout","creationTime","encTypeCode","decoderErrorNotSupported","clearVisibilityChangePlayTimeout","high",", height ","render","doAddContentToWatermark","playVodTimeCache","copyTo","start","pause and isNow is ","isUseMSE","renderedVideoFrames","ended","rotate"," and currentTime is "," and startTime is ","off","screenshotCanvasContext","_cancelVideoFrameCallback","mediaFailedToDecode","imageSmoothingQuality","quality","catch","screenshotUseHighQuality","play and readyState: "," ,videoReadyState is ","poster","split","bind","isPlayVod","playVodMp4UseSrcError","translateZ(0)","h5-page","height","base64",",\n e.toString() is ","toString","string","clearVisibilityChangePlayTimeout()","mp4Decoder","eventListenList","isMSEVideoDecoderInitializationFailedNotSupportHevc","paused","videoDecoderInitializationFailed","playVodPause","videoFrameCallback","player","_checkVodVideoWaiting and currentTime is ","stop","canplay and isPlayVodUseMSE and isEnded and return"," , try to seek ","notSupportAudioFormat","$videoElement","canplay","getVideoPlaybackQuality","Video Info: ","video playback Rate change","loadedmetadata and is isPlayVodMp4UseVideoSrc and update duration ","4wVhdlS","videoDroppedFps","video.buffered is empty","timeUpdate","geLoadedTime","toFixed","_delayEmitVodVideoWaitingInterval","then","render() error, video is paused and readyState is "," and current is ","sampleRate","videoBufferDelay","handlePlayToRenderTimes","output","_play error render() error, video is paused and replay error and\n e.name is ","stringify","decoderWorker","pauseDelayTimeout","message","screenshotByRect and toDataURL error","_startVideoFrameCallback","channelCount","updateCurrentPts","undefined","handleUpdatePlaybackRate and delay buffer is ",",\n e.toString() is ","write","imageSmoothingEnabled","x5-video-player-type","true","mseDecoder","_clearCheckVodVideoWaiting","init","screenshotWatermark and toDataURL error","_delayPlay","_play error and\n e.name is ","playback","block","videoStart","_clearDelayEmitVodVideoWaiting()","render and this.vwriter is null","getDuration","handleUpdatePlaybackRate and buffered is ","droppedVideoFrames","_cancelVideoFrameCallback() cancelVideoFrameCallback","getVideoBufferLastTime","isFullResize","yuv"," = ","_handleUpdatePlaybackRate","_clearDelayEmitVodVideoWaiting","cancelVideoFrameCallback","removeSeekingTimestamp","_resize","name","screenshot failed, video is not ready"," - current is ","mediaStream","isMseDecoderUseWorker","screenshot failed, video is not ready and stats is ","bound",", emit error and use canvas render","duration","blob","toDataURL","loadedmetadata","audioTrack","screenshotByCurrentWatermark","load","_delayEmitVodVideoWaiting() start","screenshotCopyrightWatermark","videoNotSupported","getHasInit","videoWidth","getVideoCurrentTime","debugError","edge","left","$screenshotCanvasElement","isRenderRetryPlaying","toLowerCase","stalled"];return(ho=function(){return t})()}function lo(){let t=null;const e=()=>{t&&(self.clearInterval(t),t=null)};self.onmessage=function(s){if("start"===s.data.event){const i=s.data.interval||16.6;e(),t=self.setInterval(()=>{self.postMessage({})},i)}"stop"===s.data.event&&e()}}const co=po;function uo(){const t=["handleFn","destroy","2213481jWFmRn","postMessage","3356705ILsKYC","start","_initIntervalWorker","36ibYRgS","1391283jGLpHG","7141912vrSsuY","7281015tdkpgF","stop","timerByWorkerClearTimeout","2aEUxFC","revokeObjectURL","2772050nUALwr","timerByWorker","terminate","timerByWorkerUrl","URL","8275326WVhuoP","12RrysEg","5MlqQwM","interval","4xKgODz"];return(uo=function(){return t})()}function po(t,e){const s=uo();return(po=function(t,e){return s[t-=249]})(t,e)}!function(t){const e=po,s=t();for(;;)try{if(703872===parseInt(e(259))/1*(-parseInt(e(264))/2)+parseInt(e(253))/3*(parseInt(e(250))/4)+parseInt(e(273))/5*(-parseInt(e(271))/6)+parseInt(e(261))/7+parseInt(e(260))/8+parseInt(e(258))/9*(parseInt(e(266))/10)+parseInt(e(255))/11*(-parseInt(e(272))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(uo);class fo{constructor(){const t=po;this.timerByWorker=null,this[t(269)]=null,this.timerByWorkerClearTimeout=null,this[t(251)]=null}[co(252)](){const t=co;this[t(267)]&&(this[t(267)][t(268)](),this[t(267)]=null),this[t(263)]&&(clearTimeout(this.timerByWorkerClearTimeout),this[t(263)]=null),this[t(269)]&&(URL[t(265)](this[t(269)]),this[t(269)]=null),this[t(251)]=null}[co(249)](t,e){const s=co;!this[s(267)]&&this[s(257)](e),this[s(267)].postMessage({event:s(256),interval:e}),this.handleFn=t}[co(262)](){const t=co;this[t(267)]&&this[t(267)][t(254)]({event:t(262)}),this.handleFn=ss}_initIntervalWorker(t){const e=co,s=Ai(lo);this[e(267)]=new Worker(s),this[e(269)]=s,this[e(263)]=setTimeout(()=>{const t=e;window[t(270)][t(265)](this[t(269)]),this[t(269)]=null,this[t(263)]=null},P),this[e(267)].onmessage=t=>{this.handleFn&&this.handleFn()}}}function mo(){const t=["debugError","CanvasVideoPlayback","length","setFps max","render$2","_doRender","595064Xrigco","handleRender","context2D","_off()"," and use startRender() instead","sync frame duration is ","doRender webgl render context is lost ","clearView","_hasCalcFps","render animation frame duration is ","_firstTimestamp"," >= 950ms and visibility is false","floor"," and buffer length is ","bufferSize","player","buffer size is ","calc fps is ","_requestAnimationFrameRequest","doRender webgpu render is not init","bufferList","updateCurrentPts","initFps","28450aCuToq","CanvasVideoPlayVod","_renderFps","drawImage","webglRender","_opt","isUseFpsRender","bufferListLength is","clear","playVod","_initContextGPU"," and playbackRate is ","isPlayBackPlayRateLessThanOne","setFps ","wcsUseWebgl2Render","TAG_NAME","873956JRiugv","_updateSync","forEach","rate","listenPlayVodPause","renderYUV","webGPURender","debugWarn","preSyncTimestamp","getStreamFps","_requestAnimationFramePrevTs","4868838nnmATk","ms more than ","shift","_doPlayEmpty"," and fragDuration is ","toString","isPlayVod","$videoElement","sync and _opt.intervalUseWorker is true and use IntervalWorker","isCacheBeforeDecodeForFpsRender","reset","initVideo","push","511uqkfGF","playInterval","webgl","webcodecs","webgpu","_initContextGl2","listenPlaybackPause","requestAnimationFrameMaxDiff","_initContextGl","useWCS","cancelRequestAnimationFrameRequest","output","_initContext2D","I420","NV12","useWebCanvas","pause","fps","init","_stopSync","height","isContextLost","tfTs","isPlayback","width","ceil","render","startRender","preFps","bind","buffer","initFps, has calc fps","off","_sync","setFps","updateStats","now","ms and and page visibility is ","bound","pushData","playback","resume","canvas","playbackRate","getCanvasType","vrRenderFrame","801GLViFU","isInPlayNextFrame","contextGl","setStreamFps","intervalPlaybackLoopWorker","130jCGlmI","intervalUseWorker","rate is","isPlaybackOnlyDecodeIFrame","videoInfo","_isDestroyed","createImageBitmap","69528JgHORn","playVodPause","renderType","debugLog","initVideoDelay","_off","_doPlay","_doSync"," and bufferList length is ","then","120188EnYLbc","setFps min","isEnterVr","streamFps","COLOR_BUFFER_BIT","visibility","setRate","_startFpsTimestamp","ms and fps is ","interval","235947mrBCir","i420","destroy"," -> ","fps is","playbackPause","startRender$2","clearRect","_startfpsTime","videoFrame","doRender webgpu render and error: "];return(mo=function(){return t})()}const go=yo;function yo(t,e){const s=mo();return(yo=function(t,e){return s[t-=189]})(t,e)}!function(t){const e=yo,s=t();for(;;)try{if(468312===-parseInt(e(299))/1+parseInt(e(338))/2+-parseInt(e(282))/3+parseInt(e(272))/4*(parseInt(e(255))/5)+parseInt(e(191))/6+-parseInt(e(204))/7*(parseInt(e(262))/8)+parseInt(e(250))/9*(-parseInt(e(322))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(mo);class Ao extends to{constructor(t){const e=yo;super(t),this.TAG_NAME=t[e(197)]()?e(323):e(294),this.bufferList=[],this[e(205)]=null,this[e(221)]=1,this[e(232)]=1,t[e(197)]()&&(this[e(221)]=25,this[e(232)]=25),this.streamFps=0,this[e(247)]=1,this[e(309)]=null,this[e(324)]=0,this[e(290)]=null,this[e(279)]=null,this._hasCalcFps=!1,this._requestAnimationFrameRequest=null,this[e(190)]=null,this[e(346)]=null,this[e(254)]=null,this.bound={listenPlaybackPause:this[e(210)][e(233)](this),listenPlayVodPause:this.listenPlayVodPause[e(233)](this),_doSync:this._doSync.bind(this),startRender$2:this[e(288)][e(233)](this)},this[e(314)][e(227)]()?this[e(314)].on(q[e(287)],this[e(242)][e(210)]):this[e(314)][e(197)]()&&this.player.on(q[e(263)],this[e(242)][e(342)]),this[e(314)][e(265)](this[e(337)],e(222))}async[go(284)](){const t=go;this[t(267)](),this[t(330)](),this[t(223)](),this[t(254)]&&(this.intervalPlaybackLoopWorker[t(284)](),this[t(254)]=null),this[t(214)](),this[t(201)](),super[t(284)](),this[t(242)]=null,this[t(314)][t(265)](this[t(337)],"destroy")}[go(267)](){const t=go;this[t(314)][t(265)](this.TAG_NAME,t(302)),this[t(314)].isPlayback()?this[t(314)][t(236)](q[t(287)],this[t(242)][t(210)]):this[t(314)].isPlayVod()&&this.player[t(236)](q[t(263)],this.bound[t(342)])}[go(201)](){const t=go;this[t(309)]=null,this[t(247)]=1,this.fps=1,this[t(232)]=1,this[t(275)]=null,this[t(324)]=0,this._startfpsTime=null,this[t(279)]=null,this._hasCalcFps=!1}listenPlaybackPause(t){const e=go;t?(this[e(220)](),this[e(314)].playback.isPlaybackPauseClearCache&&this.clear()):this[e(245)]()}[go(342)](t){const e=go;t?this.pause():this[e(245)]()}_initCanvasRender(){const t=go;this[t(314)]._opt[t(213)]?(this[t(264)]=lt[t(207)],Vi()&&this.player[t(327)][t(336)]?(this[t(209)](),this.webglRender&&(this.isWcsWebgl2=!0)):this[t(216)]()):this.player[t(327)].useWebGPU?(this[t(264)]=lt.webgpu,this[t(332)]()):this[t(314)][t(327)][t(219)]?(this[t(264)]=lt[t(246)],this._initContext2D()):(this.renderType=lt[t(206)],this[t(212)]())}[go(237)](){const t=go;this._stopSync();for(let e=0;e<this.playbackRate;e++)this[t(268)]();const e=Math.ceil(1e3/this[t(221)]);this[t(314)][t(265)](this[t(337)],"sync frame duration is "+e+t(280)+this[t(221)]+t(333)+this.playbackRate),this[t(314)]._opt[t(256)]?(!this[t(254)]&&(this[t(314)].debugLog(this.TAG_NAME,t(199)),this[t(254)]=new fo),this.intervalPlaybackLoopWorker[t(281)](this.bound[t(269)],e)):this[t(205)]=setInterval(this[t(242)][t(269)],e)}[go(269)](){const t=go;let e=Date[t(240)]();!this[t(346)]&&(this[t(346)]=e);for(let e=0;e<this[t(247)];e++)this[t(268)]();let s=e-this[t(346)];const i=Math[t(229)](1e3/this[t(221)]);let r=parseInt(s/i,10);if(r>1&&this.bufferList[t(295)]>0){this[t(314)].debugWarn(this.TAG_NAME,t(304)+s+t(241)+this.player[t(277)]+t(195)+i+"ms and diffFps is "+r+t(270)+this[t(319)][t(295)]);const e=xi(this[t(314)][t(277)])&&s>=950;e&&this[t(314)][t(265)](this.TAG_NAME,"sync frame and diff is "+s+t(310));for(let s=0;s<r;s++)for(let s=0;s<this.playbackRate;s++)e?this[t(194)]():this[t(268)]()}this[t(346)]=e}_doPlay(){const t=go;if(this.bufferList[t(295)]>0){const e=this[t(319)][t(193)]();e&&e[t(234)]&&(this[t(298)](e[t(234)]),this[t(314)][t(227)]()&&this[t(314)].playback[t(239)]({ts:e.ts,tfTs:e[t(226)]}),this.player[t(320)](e.ts),this[t(314)][t(300)]())}}[go(194)](){const t=go;if(this[t(319)][t(295)]>0){const e=this[t(319)][t(193)]();e&&e[t(234)]&&(this.player._opt[t(213)]&&bi(e[t(234)]),this[t(314)][t(227)]()&&this[t(314)][t(244)].updateStats({ts:e.ts,tfTs:e[t(226)]}),this.player.updateCurrentPts(e.ts),this.player.handleRender())}}_stopSync(){const t=go;this.playInterval&&(clearInterval(this.playInterval),this[t(205)]=null),this[t(254)]&&this.intervalPlaybackLoopWorker.stop(),this[t(346)]=null}[go(298)](t){const e=go;if(this[e(314)][e(274)]())if(this[e(314)][e(327)].useWCS){const s=t;let i=new Uint8Array(s.allocationSize());s.copyTo(i)[e(271)](()=>{const t=e,r=s.format==t(218)?M.nv12:M.i420;this[t(314)][t(249)](i,r),bi(s)})}else this[e(314)].vrRenderFrame(t,M[e(283)]);else if(this[e(314)][e(327)][e(213)])if(this[e(326)])this[e(326)][e(230)](t),bi(t);else if(di(t.createImageBitmap))try{t[e(261)]()[e(271)](s=>{const i=e;this[i(301)][i(325)](s,0,0,this[i(198)][i(228)],this[i(198)][i(224)]),bi(t)})}catch(t){}else this[e(301)].drawImage(t,0,0,this[e(198)][e(228)],this.$videoElement.height),bi(t);else if(this.getCanvasType()===lt[e(206)])try{this[e(326)][e(343)](this[e(198)][e(228)],this[e(198)][e(224)],t)}catch(s){this.player[e(293)](this[e(337)],e(305)+(this[e(252)]&&this[e(252)][e(225)]())+e(312)+t[e(295)]+" and error: "+s[e(196)]())}else if(this[e(248)]()===lt[e(208)])try{if(!this[e(344)])return void this[e(314)][e(345)](this[e(337)],e(318));this[e(344)][e(343)](this.$videoElement.width,this[e(198)].height,t)}catch(t){this[e(314)][e(293)](this[e(337)],e(292)+t[e(196)]())}else if(this.getCanvasType()===lt.canvas){const s=Ys(t,{format:e(217),codedWidth:this[e(259)].width,codedHeight:this[e(259)][e(224)],timestamp:0});this[e(301)][e(325)](s,0,0,this.$videoElement[e(228)],this.$videoElement[e(224)]),bi(s)}}get[go(341)](){return this[go(247)]}get[go(313)](){const t=go;return this[t(319)][t(295)]}[go(189)](){return this[go(275)]}[go(321)](){const t=go;this[t(307)]?this[t(314)][t(265)](this[t(337)],t(235)):this[t(314)].isPlayback()?(this[t(232)]=as(this.player[t(244)][t(221)],1,100),this.fps=this[t(232)]):this.player[t(197)]()&&(this[t(232)]=as(this[t(314)][t(331)].fps,1,100),this[t(221)]=this.preFps)}[go(238)](t){const e=go;t!==this[e(221)]&&(t>100&&this.player[e(345)](this[e(337)],e(296),t),t<0&&this[e(314)][e(345)](this[e(337)],e(273),t),this[e(221)]=as(t,1,100),this.player[e(265)](this[e(337)],e(335)+this.preFps+e(285)+this[e(221)]),this.player[e(227)]()&&this[e(314)][e(244)].isUseFpsRender&&this[e(237)](),this.preFps=this[e(221)])}[go(253)](t){const e=go;this[e(314)][e(265)](this[e(337)],e(253),t),this._hasCalcFps=!0,this.streamFps=t,this[e(238)](t)}[go(278)](t){const e=go;t!==this[e(247)]&&(this.player[e(265)](this.TAG_NAME,e(278),t),this[e(247)]=t)}[go(297)](t){const e=go;if(this._isDestroyed)return;null===this[e(309)]&&(this[e(309)]=t.ts);const s={tfTs:t.ts-this[e(309)],ts:t.ts};t[e(291)]?s[e(234)]=t[e(291)]:s[e(234)]=t.output,this[e(319)].push(s),this[e(231)]()}[go(231)](){const t=go;if(0===this.bufferList[t(295)])return;let e=null;for(;0!==this[t(319)][t(295)];){const s=this[t(319)][t(193)]();this[t(298)](s.buffer),e=s}this.player[t(227)]()?this[t(314)][t(244)].updateStats({ts:e.ts,tfTs:e[t(226)]}):this.player[t(197)]()&&this[t(314)].playVod[t(239)]({ts:e.ts,tfTs:e.tfTs}),this.player.updateCurrentPts(e.ts),this[t(314)][t(300)]()}[go(288)](){const t=go;if(this.bufferList[t(295)]<=0)return void this[t(214)]();null===this[t(190)]&&(this[t(190)]=os());const e=os()-this[t(190)];if(e>=this[t(314)]._opt[t(211)])return this.player.debugWarn(this[t(337)],t(308)+e+t(192)+this[t(314)]._opt[t(211)]+t(303)),this[t(231)](),void this[t(214)]();const s=this[t(319)].shift();this._doRender(s[t(234)]),this[t(314)][t(227)]()?this.player[t(244)].updateStats({ts:s.ts,tfTs:s.tfTs}):this[t(314)].isPlayVod()&&this[t(314)][t(331)][t(239)]({ts:s.ts,tfTs:s[t(226)]}),this.player[t(320)](s.ts),this[t(314)].handleRender(),this._requestAnimationFramePrevTs=os(),this._requestAnimationFrameRequest=requestAnimationFrame(this.bound[t(288)])}[go(214)](){const t=go;this[t(317)]&&(cancelAnimationFrame(this[t(317)]),this[t(317)]=null),this[t(190)]=null}[go(243)](t){const e=go;if(this[e(260)])return;null===this[e(309)]&&(this[e(309)]=t.ts);const s={tfTs:t.ts-this._firstTimestamp,ts:t.ts};if(t[e(291)]?s[e(234)]=t[e(291)]:s[e(234)]=t[e(215)],this[e(314)][e(258)]()||this.player[e(251)]||this[e(314)][e(334)]())return this[e(319)].length>0&&this[e(231)](),this[e(298)](s[e(234)]),this[e(314)].updateCurrentPts(s.ts),this.player[e(300)](),void(this[e(314)][e(227)]()&&this[e(314)][e(244)][e(239)]({ts:s.ts,tfTs:s[e(226)]}));if(this.player[e(227)]()){const t=this[e(314)][e(327)].playbackConfig[e(200)];if(!t&&this[e(313)]>this[e(221)]*this[e(247)]*2&&(this.player[e(345)](this[e(337)],e(315)+this[e(313)]),this[e(268)]()),this[e(319)][e(203)](s),!this[e(307)]){const t=wi(this[e(319)]);null!==t&&t!==this.preFps&&(this[e(314)].debugLog(this.TAG_NAME,e(316)+t+" pre fps is "+this[e(232)]+" and updatePreFps"),this[e(253)](t))}if(!t){const t=this[e(319)][e(295)],s=t/(this[e(221)]*this[e(247)]);s<=1?this[e(238)](this[e(232)]):(this.setFps(this[e(221)]+Math[e(311)](s*this[e(247)])),this[e(314)].debugWarn(this[e(337)],e(257),s,e(286),this[e(221)],e(329),t))}}}initVideo(){this._updateSync()}[go(266)](){const t=go,e=this[t(314)][t(327)].playbackDelayTime;e>0?this.delayTimeout=setTimeout(()=>{this.initVideo()},e):this[t(202)]()}[go(306)](){const t=go;super.clearView(),this[t(252)]&&this.contextGl[t(330)](this[t(252)][t(276)]),this[t(344)]&&this[t(344)][t(330)](),this[t(301)]&&this[t(301)][t(289)](0,0,this[t(198)][t(228)],this[t(198)].height)}clear(){const t=go;this[t(314)][t(327)][t(213)]&&this.bufferList[t(340)](e=>{const s=t;e[s(234)]&&bi(e[s(234)])}),this[t(319)]=[]}[go(339)](){const t=go;this[t(314)][t(227)]()&&this[t(314)][t(244)][t(328)]&&this[t(237)]()}[go(245)](){this[go(339)]()}[go(220)](){const t=go;this[t(314)][t(227)]()&&this[t(314)][t(244)][t(328)]&&this[t(223)]()}}var bo=vo;function vo(t,e){var s=Eo();return(vo=function(t,e){return s[t-=321]})(t,e)}!function(t){for(var e=vo,s=t();;)try{if(364752===-parseInt(e(321))/1*(-parseInt(e(336))/2)+-parseInt(e(326))/3+parseInt(e(324))/4+-parseInt(e(323))/5+parseInt(e(327))/6+-parseInt(e(329))/7*(parseInt(e(330))/8)+-parseInt(e(331))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Eo);class So extends ao{constructor(t){var e=vo;super(t),this[e(322)]=t[e(328)]()?e(337):e(325)}async[bo(334)](){super[bo(334)]()}[bo(335)](t){this[bo(333)](t)}[bo(332)](t){this.render(t)}}function Eo(){var t=["pushData","9446AEbtGg","VideoPlayback","106LsqVvz","TAG_NAME","23235TivJba","2716752bEixaE","VideoPlayVod","2006211Qufpwb","3456198gmUCyo","isPlayback","49uvhIdT","555624ABLWou","2083968KUCGTc","render$2","render","destroy"];return(Eo=function(){return t})()}const wo=To;function To(t,e){const s=Io();return(To=function(t,e){return s[t-=185]})(t,e)}function Io(){const t=["1698694TYgBqj","28623920PctkJr","useWCS","wcsUseVideoRender","useMSE","isWebrtc","playType","useOffscreen","_opt","useCanvasRender","isWebrtcH265","6656965ESyZWP","4311768bbghyo","getLoaderFactory","3545850iHduux","1OvZwxl","playVodMp4UseSrc","9KhnIwJ","mseUseCanvasRender","isAliyunRtc","playbackTF","5213928wPQcPt","playVod","isHls","874554vWjBBx","wasmUseVideoRender","8kvFjZv"];return(Io=function(){return t})()}!function(t){const e=To,s=t();for(;;)try{if(691251===-parseInt(e(187))/1*(parseInt(e(199))/2)+-parseInt(e(196))/3*(-parseInt(e(198))/4)+-parseInt(e(210))/5+-parseInt(e(211))/6+-parseInt(e(186))/7+-parseInt(e(193))/8*(-parseInt(e(189))/9)+parseInt(e(200))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Io);class ko{constructor(t){const e=To;return new(ko[e(185)](t[e(207)]))(t)}static[wo(185)](t){const e=wo;return t[e(205)]===p[e(194)]&&t.isFmp4&&t[e(188)]?ao:t[e(203)]?t[e(190)]?ro:ao:t[e(195)]&&xi(t.supportHls265)||t[e(204)]&&xi(t[e(209)])?t[e(208)]?ro:ao:t[e(191)]?ao:t[e(201)]?t.playType===p[e(192)]?Ao:t.playType===p.playVod?!t[e(206)]&&t[e(202)]?So:Ao:!t[e(206)]&&t.wcsUseVideoRender?ao:ro:t[e(205)]===p[e(192)]||t[e(205)]===p[e(194)]?Ao:t[e(197)]?ao:ro}}const _o=Co;function Co(t,e){const s=Do();return(Co=function(t,e){return s[t-=104]})(t,e)}function Do(){const t=["_play","5346040sGycpv","encType","isPlayVod","updateAudioInfo","length","toString","audioContextState","playback","isStateRunning","7214694gVyeZm","resume","_prevVolume","2265783RlybFV","TAG_NAME","debugLog","emit","finally","44360RbvtpN","onmessage","suspend","audioResumeState","hasAudio","audioResumeStateTimeout","volume","toFixed","encTypeCode","getAudioInfo","_destroyAudioContext","value","150AraThn","clear","destroy","audioInfo","disconnect","mute","isPlaying","gainNode","mediaStreamAudioDestinationNode","workletWorkerCloseTimeout","createGain","depth","rateProcessor","port","play","isStateSuspended","6854888KZefJV","initMobileScriptNode","clear bufferList","suspended","1732cwRCbG","initWorkletScriptNode","closeAudio","19045260nwNEZO","bufferSize","running","workletProcessorNode","playing","channels","destination","audioContextContextResumeLock","lastVolume","setRate","audioEnabled","volumechange","AudioContext","_isDestroyed","594IfPWXw","player","audioPlayVodSeekingLock","resetInit","scriptNode","bufferList","balanced","onaudioprocess","_off","state","hasInitScriptNode","_destroyWorklet","sampleRate","clearAudioResumeStateTimeout","audioContext","$audio","getAudioContextSampleRate","isPlayback","pause","gain","init","closed"];return(Do=function(){return t})()}!function(t){const e=Co,s=t();for(;;)try{if(781815===parseInt(e(169))/1*(parseInt(e(152))/2)+parseInt(e(115))/3+-parseInt(e(120))/4*(-parseInt(e(132))/5)+parseInt(e(112))/6+-parseInt(e(192))/7+parseInt(e(148))/8+-parseInt(e(155))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Do);class Lo extends h{constructor(t){const e=Co;super(),this[e(174)]=[],this.bufferListLock=!0,this[e(170)]=t,this[e(172)](),this[e(184)]=null,this.scriptNode=null,this[e(158)]=null,this.workletWorkerCloseTimeout=null,this.hasInitScriptNode=!1,this[e(140)]=null;let s=e(175);(this[e(170)][e(186)]()||this[e(170)][e(105)]())&&(s=e(110)),this[e(183)]=new(window[e(167)]||window.webkitAudioContext)({sampleRate:se,latencyHint:s}),this[e(139)]=this.audioContext[e(142)](),this[e(139)][e(188)].value=0,this[e(114)]=null,this[e(159)]=!1,this[e(124)]=!1,this.audioResumeStateTimeout=null,this.audioContextContextResumeLock=!1,this[e(171)]=!1,this[e(168)]=!1}async[_o(134)](){const t=_o;return this._isDestroyed=!0,this[t(154)](),await this[t(180)](),this.clearAudioResumeStateTimeout(),this[t(139)]&&(this[t(139)].disconnect(),this.gainNode=null),this[t(173)]&&(this[t(173)].disconnect(),this[t(173)][t(176)]=null,this[t(173)]=null),this.workletProcessorNode&&(this[t(158)].disconnect(),this[t(158)][t(145)][t(121)]=null,this[t(158)]=null),this[t(140)]&&(this[t(140)][t(136)](),this[t(140)]=null),await this._destroyAudioContext(),this[t(124)]=!1,this[t(159)]=!1,this[t(172)](),this[t(135)]=null,this[t(179)]=!1,this[t(114)]=null,this[t(162)]=!1,this[t(171)]=!1,this.bufferListLock=!1,this.off(),!0}async[_o(130)](){const t=_o,e=this.audioContext;if(e){try{e[t(178)]!==t(151)&&await e[t(122)](),e[t(178)]!==t(190)&&await e.close(),e[t(161)]&&e.destination[t(136)](),this[t(183)]=null}catch(e){this.player[t(117)](this.TAG_NAME,"_destroyAudioContext",e[t(108)](),e)}return!0}}[_o(177)](){}[_o(180)](){return new Promise((t,e)=>{const s=Co;this.workletProcessorNode?(this[s(158)][s(145)].postMessage({type:s(134)}),this.workletWorkerCloseTimeout=setTimeout(()=>{const e=s;this.player[e(117)](this.TAG_NAME,"send close and wait 10ms destroy directly"),this.workletWorkerCloseTimeout&&(clearTimeout(this[e(141)]),this[e(141)]=null),t()},10)):t()})}resetInit(){const t=_o;this[t(135)]={encTypeCode:"",encType:"",channels:"",sampleRate:"",depth:""},this[t(189)]=!1}[_o(129)](){return this[_o(135)]}[_o(106)](t){const e=_o;t[e(128)]&&(this[e(135)].encTypeCode=t.encTypeCode,this[e(135)][e(104)]=nt[t[e(128)]]),t[e(160)]&&(this[e(135)][e(160)]=t[e(160)]),t[e(181)]&&(this.audioInfo[e(181)]=t[e(181)]),t[e(143)]&&(this[e(135)][e(143)]=t[e(143)]),this.audioInfo[e(181)]&&this.audioInfo.channels&&this[e(135)][e(104)]&&!this[e(189)]&&(this.player[e(118)](q[e(135)],this[e(135)]),this[e(189)]=!0)}get[_o(138)](){return this[_o(159)]}get isMute(){const t=_o;return!this[t(183)]||(0===this[t(139)][t(188)].value||this[t(147)]())}get[_o(126)](){const t=_o;return this.gainNode?this[t(139)].gain[t(131)]:0}get[_o(156)](){const t=_o;return this[t(174)][t(107)]}get audioContextState(){const t=_o;let e=null;return this[t(183)]&&(e=this.audioContext[t(178)]),e}[_o(185)](){const t=_o;return this.audioContext&&this.audioContext[t(181)]||se}initScriptNode(){}[_o(149)](){}[_o(153)](){}getEngineType(){return""}[_o(137)](t){const e=_o;t?(this.setVolume(0),this[e(133)]()):this.setVolume(this[e(170)][e(163)]||.5)}setVolume(t){const e=_o;t=parseFloat(t)[e(127)](2),isNaN(t)||(this[e(165)](!0),t=as(t,0,1),null!==this[e(114)]&&this[e(114)]===t||(null===this[e(114)]?this[e(170)][e(118)](q.mute,0===t):0===this[e(114)]&&t>0?this[e(170)].emit(q.mute,!1):this[e(114)]>0&&0===t&&this[e(170)][e(118)](q[e(137)],!0),this[e(139)]&&(this.gainNode[e(188)][e(131)]=t),this.player[e(118)](q[e(166)],this[e(170)][e(126)]),this[e(170)][e(118)](q[e(126)],this[e(170)][e(126)]),this[e(114)]=t))}[_o(154)](){const t=_o;this[t(179)]&&(this[t(173)]&&this[t(173)][t(136)](this[t(139)]),this[t(158)]&&this[t(158)][t(136)](this[t(139)]),this[t(139)]&&(this.$audio?this.gainNode[t(136)](this[t(140)]):this[t(139)][t(136)](this[t(183)][t(161)]))),this[t(133)]()}[_o(165)](t){const e=_o;if(t&&this[e(147)]()){if(this[e(162)])return;this[e(162)]=!0,this.audioContext.resume().then(()=>{const t=e;this[t(170)][t(118)](q[t(123)],{state:this.audioContextState,isRunning:this.isStateRunning()})})[e(119)](()=>{this[e(162)]=!1}),this[e(125)]=setTimeout(()=>{const t=e;this[t(182)](),this._isDestroyed||(this[t(162)]=!1,this[t(147)]()&&this[t(170)].emit(q.audioResumeState,{state:this[t(109)],isRunning:this[t(111)]()}))},1e3)}}[_o(111)](){const t=_o;return this[t(109)]===t(157)}[_o(147)](){const t=_o;return this[t(109)]===t(151)}[_o(182)](){const t=_o;this[t(125)]&&(clearTimeout(this[t(125)]),this[t(125)]=null)}clear(){const t=_o;this.player.debugLog(this[t(116)],t(150)),this[t(174)]=[],this.rateProcessor&&(this[t(170)][t(117)](this[t(116)],"rateProcessor clear"),this[t(144)][t(133)]())}[_o(146)](t,e){}[_o(187)](){this[_o(159)]=!1}[_o(113)](){this[_o(159)]=!0}[_o(164)](t){}getAudioBufferSize(){return 0}[_o(191)](t,e){}}const Ro=jo;!function(t){const e=jo,s=t();for(;;)try{if(154311===parseInt(e(460))/1+-parseInt(e(457))/2+-parseInt(e(510))/3+-parseInt(e(550))/4*(parseInt(e(470))/5)+-parseInt(e(514))/6*(parseInt(e(462))/7)+parseInt(e(555))/8*(-parseInt(e(496))/9)+parseInt(e(557))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Go);class Po{constructor(){const t=jo;this[t(513)]=new Float32Array,this[t(465)]=0,this[t(521)]=0}[Ro(533)](){const t=Ro;this.clear(),this[t(513)]=null}get vector(){return this[Ro(513)]}get[Ro(527)](){return this._position}get[Ro(544)](){return 2*this[Ro(465)]}get[Ro(472)](){return this[Ro(521)]}get endIndex(){const t=Ro;return 2*(this._position+this[t(521)])}[Ro(482)](){const t=Ro;this[t(547)](this._frameCount),this[t(553)]()}[Ro(512)](t){this._frameCount+=t}putSamples(t,e,s=0){const i=Ro,r=2*(e=e||0);!(s>=0)&&(s=(t[i(545)]-r)/2);const n=2*s;this[i(548)](s+this._frameCount);const o=this.endIndex;this.vector[i(503)](t.subarray(r,r+n),o),this._frameCount+=s}[Ro(559)](t,e,s=0){const i=Ro;e=e||0,!(s>=0)&&(s=t.frameCount-e),this[i(538)](t[i(543)],t[i(527)]+e,s)}[Ro(547)](t){const e=Ro;(!(t>=0)||t>this._frameCount)&&(t=this.frameCount),this[e(521)]-=t,this._position+=t}[Ro(546)](t,e=0){const s=Ro,i=2*e,r=this[s(544)];t.set(this[s(513)][s(509)](r,r+i)),this.receive(e)}[Ro(515)](t,e=0,s=0){const i=Ro,r=this[i(544)]+2*e,n=2*s;t[i(503)](this[i(513)][i(509)](r,r+n))}ensureCapacity(t=0){const e=Ro,s=parseInt(2*t);if(this[e(513)].length<s){const t=new Float32Array(s);t[e(503)](this._vector[e(509)](this[e(544)],this.endIndex)),this[e(513)]=t,this[e(465)]=0}else this.rewind()}ensureAdditionalCapacity(t=0){const e=Ro;this[e(548)](this[e(521)]+t)}rewind(){const t=Ro;this[t(465)]>0&&(this[t(513)][t(503)](this[t(513)].subarray(this[t(544)],this[t(492)])),this[t(465)]=0)}}class xo{constructor(t){const e=Ro;t?(this[e(526)]=new Po,this[e(502)]=new Po):this[e(526)]=this[e(502)]=null}[Ro(533)](){const t=Ro;this[t(482)](),this[t(502)]&&(this[t(502)][t(533)](),this._outputBuffer=null),this[t(526)]&&(this._inputBuffer[t(533)](),this[t(526)]=null)}get[Ro(549)](){return this[Ro(526)]}set inputBuffer(t){this._inputBuffer=t}get[Ro(479)](){return this[Ro(502)]}set[Ro(479)](t){this[Ro(502)]=t}[Ro(482)](){const t=Ro;this[t(526)].clear(),this[t(502)].clear()}}class Mo extends xo{constructor(t){const e=Ro;super(t),this.reset(),this[e(493)]=1}destroy(){super[Ro(533)]()}set[Ro(528)](t){this[Ro(493)]=t}[Ro(562)](){const t=Ro;this[t(536)]=0,this[t(497)]=0,this[t(522)]=0}clone(){const t=Ro,e=new Mo;return e[t(528)]=this[t(493)],e}process(){const t=Ro,e=this[t(526)][t(472)];this[t(502)][t(505)](e/this._rate+1);const s=this[t(554)](e);this._inputBuffer.receive(),this[t(502)][t(512)](s)}transpose(t=0){const e=Ro;if(0===t)return 0;const s=this[e(526)][e(543)],i=this[e(526)][e(544)],r=this._outputBuffer[e(543)],n=this[e(502)][e(492)];let o=0,a=0;for(;this[e(536)]<1;)r[n+2*a]=(1-this[e(536)])*this[e(497)]+this.slopeCount*s[i],r[n+2*a+1]=(1-this[e(536)])*this[e(522)]+this[e(536)]*s[i+1],a+=1,this[e(536)]+=this._rate;if(this[e(536)]-=1,1!==t)t:for(;;){for(;this[e(536)]>1;)if(this[e(536)]-=1,o+=1,o>=t-1)break t;const h=i+2*o;r[n+2*a]=(1-this[e(536)])*s[h]+this[e(536)]*s[h+2],r[n+2*a+1]=(1-this[e(536)])*s[h+1]+this[e(536)]*s[h+3],a+=1,this[e(536)]+=this._rate}return this[e(497)]=s[i+2*t-2],this[e(522)]=s[i+2*t-1],a}}const Bo=function(){};class Fo{constructor(t,e,s={},i=Bo){const r=Ro;this[r(495)]=e,this[r(489)]=i,this[r(466)]=t,this[r(516)]=s[r(542)];const n=s.bufferTime||.1;this[r(483)]=Math[r(473)](Math[r(535)](n,.05),.2),this[r(480)]=Math[r(537)](this[r(516)]*this[r(483)]),this[r(556)]=1024,this[r(508)]=null,this._lastSampleSize=0,this[r(511)]=0,this[r(540)]=0,this._position=0}[Ro(533)](){const t=Ro;this.clear(),this[t(466)].destroy(),this[t(466)]=null,this._sourcePosition=0,this[t(540)]=0,this[t(465)]=0}get pipe(){return this._pipe}get[Ro(549)](){return this[Ro(495)].inputBuffer}get[Ro(479)](){const t=Ro;return this._pipe[t(479)]}get position(){return this[Ro(465)]}set[Ro(527)](t){const e=Ro;if(t>this[e(465)])throw new RangeError(e(507));const s=this.outputBufferPosition-(this[e(465)]-t);if(s<0)throw new RangeError(e(532));this.outputBufferPosition=s,this[e(465)]=t}get[Ro(471)](){return this._sourcePosition}set sourcePosition(t){const e=Ro;this[e(482)](),this[e(511)]=t}[Ro(474)](){this.callback()}fillInputBuffer(t=0){const e=Ro,s=new Float32Array(2*t),i=this[e(466)][e(515)](s,t,this[e(511)]);this[e(511)]+=i,this[e(549)][e(538)](s,0,i)}[Ro(539)](t=0){const e=Ro,s=2*this[e(556)];for(;this[e(479)][e(472)]<t;){const t=s-this[e(549)][e(472)];if(this.fillInputBuffer(t),this[e(549)][e(472)]<s)break;this[e(495)][e(506)]()}}[Ro(515)](t,e=0){const s=Ro;this[s(539)](this[s(540)]+e);const i=Math[s(473)](e,this[s(479)].frameCount-this.outputBufferPosition);this[s(479)][s(515)](t,this[s(540)],i);const r=this[s(540)]+i;return this[s(540)]=Math[s(473)](this[s(480)],r),this.outputBuffer.receive(Math[s(535)](r-this[s(480)],0)),this[s(465)]+=i,i}handleSampleData(t){const e=Ro;this[e(515)](t[e(481)],this[e(556)])}[Ro(482)](){const t=Ro;this[t(495)][t(482)](),this[t(540)]=0}}const Uo=[[124,186,248,310,372,434,496,558,620,682,744,806,868,930,992,1054,1116,1178,1240,1302,1364,1426,1488,0],[-100,-75,-50,-25,25,50,75,100,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[-20,-15,-10,-5,5,10,15,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[-4,-3,-2,-1,1,2,3,4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],Oo=-10/1.5;class No extends xo{constructor(t,e){const s=Ro;super(t),this._quickSeek=!0,this[s(456)]=!1,this.midBuffer=null,this[s(459)]=null,this.overlapLength=0,this.autoSeqSetting=!0,this[s(486)]=!0,this[s(541)]=1,this[s(488)](e,0,0,8)}[Ro(533)](){const t=Ro;this[t(482)](),super[t(533)]()}[Ro(482)](){const t=Ro;super[t(482)](),this[t(551)](),this.refMidBuffer=null}[Ro(551)](){const t=Ro;this[t(456)]&&(this[t(456)]=!1),this[t(463)]=null}[Ro(488)](t,e,s,i){const r=Ro;t>0&&(this[r(542)]=t),i>0&&(this.overlapMs=i),e>0?(this[r(530)]=e,this[r(499)]=!1):this[r(499)]=!0,s>0?(this[r(534)]=s,this[r(486)]=!1):this[r(486)]=!0,this[r(468)](),this[r(461)](this[r(484)]),this[r(524)]=this[r(541)]}set tempo(t){const e=Ro;let s;this[e(541)]=t,this[e(468)](),this[e(523)]=this[e(541)]*(this[e(504)]-this[e(464)]),this[e(529)]=0,s=Math[e(537)](this[e(523)]+.5),this[e(487)]=Math[e(535)](s+this[e(464)],this.seekWindowLength)+this.seekLength}get[Ro(524)](){return this[Ro(541)]}get[Ro(500)](){return this[Ro(487)]}get[Ro(485)](){const t=Ro;return this[t(464)]+Math.max(0,this[t(504)]-2*this[t(464)])}[Ro(461)](t=0){const e=Ro;let s;s=this.sampleRate*t/1e3,s=s<16?16:s,s-=s%8,this[e(464)]=s,this[e(459)]=new Float32Array(2*this[e(464)]),this[e(463)]=new Float32Array(2*this[e(464)])}checkLimits(t,e,s){return t<e?e:t>s?s:t}[Ro(468)](){const t=Ro;let e,s;this[t(499)]&&(e=150+-50*this[t(541)],e=this[t(478)](e,50,125),this[t(530)]=Math[t(537)](e+.5)),this.autoSeekSetting&&(s=28.333333333333332+Oo*this[t(541)],s=this[t(478)](s,15,25),this[t(534)]=Math[t(537)](s+.5)),this[t(504)]=Math[t(537)](this.sampleRate*this[t(530)]/1e3),this.seekLength=Math[t(537)](this[t(542)]*this[t(534)]/1e3)}set[Ro(558)](t){this[Ro(491)]=t}[Ro(498)](){const t=Ro,e=new No;return e[t(524)]=this._tempo,e.setParameters(this.sampleRate,this[t(530)],this[t(534)],this.overlapMs),e}[Ro(561)](){return this._quickSeek?this.seekBestOverlapPositionStereoQuick():this.seekBestOverlapPositionStereo()}seekBestOverlapPositionStereo(){const t=Ro;let e,s,i,r=0;for(this[t(518)](),e=0,s=Number[t(476)];r<this[t(520)];r+=1)i=this.calculateCrossCorrelationStereo(2*r,this[t(459)]),i>s&&(s=i,e=r);return e}[Ro(475)](){const t=Ro;let e,s,i,r,n,o=0;for(this[t(518)](),s=Number[t(476)],e=0,r=0,n=0;o<4;o+=1){let a=0;for(;Uo[o][a]&&(n=r+Uo[o][a],!(n>=this[t(520)]));)i=this[t(517)](2*n,this[t(459)]),i>s&&(s=i,e=n),a+=1;r=e}return e}preCalculateCorrelationReferenceStereo(){const t=Ro;let e,s,i=0;for(;i<this[t(464)];i+=1)s=i*(this[t(464)]-i),e=2*i,this[t(459)][e]=this[t(463)][e]*s,this[t(459)][e+1]=this.midBuffer[e+1]*s}calculateCrossCorrelationStereo(t,e){const s=Ro,i=this[s(526)].vector;t+=this[s(526)][s(544)];let r=0,n=2;const o=2*this.overlapLength;let a;for(;n<o;n+=2)a=n+t,r+=i[a]*e[n]+i[a+1]*e[n+1];return r}[Ro(477)](t){this[Ro(519)](2*t)}[Ro(519)](t){const e=Ro,s=this[e(526)][e(543)];t+=this[e(526)][e(544)];const i=this[e(502)][e(543)],r=this[e(502)][e(492)];let n,o,a=0;const h=1/this[e(464)];let l,c,d;for(;a<this.overlapLength;a+=1)o=(this[e(464)]-a)*h,l=a*h,n=2*a,c=n+t,d=n+r,i[d+0]=s[c+0]*l+this[e(463)][n+0]*o,i[d+1]=s[c+1]*l+this.midBuffer[n+1]*o}process(){const t=Ro;let e,s,i;if(null===this[t(463)]){if(this[t(526)].frameCount<this[t(464)])return;this.midBuffer=new Float32Array(2*this[t(464)]),this[t(526)][t(546)](this[t(463)],this[t(464)])}for(;this._inputBuffer.frameCount>=this[t(487)];){e=this[t(561)](),this[t(502)][t(505)](this[t(464)]),this.overlap(Math[t(537)](e)),this[t(502)].put(this[t(464)]),s=this[t(504)]-2*this[t(464)],s>0&&this[t(502)][t(559)](this[t(526)],e+this[t(464)],s);const r=this._inputBuffer[t(544)]+2*(e+this[t(504)]-this[t(464)]);this[t(463)][t(503)](this._inputBuffer[t(543)].subarray(r,r+2*this[t(464)])),this[t(529)]+=this[t(523)],i=Math[t(537)](this.skipFract),this[t(529)]-=i,this[t(526)].receive(i)}}}const Vo=function(t,e){return(t>e?t-e:e-t)>1e-10};function jo(t,e){const s=Go();return(jo=function(t,e){return s[t-=456]})(t,e)}class Wo{constructor(t){const e=Ro;this[e(467)]=new Mo(!1),this[e(490)]=new No(!1,t),this[e(526)]=new Po,this[e(458)]=new Po,this[e(502)]=new Po,this._rate=0,this[e(541)]=0,this[e(501)]=1,this[e(560)]=1,this.virtualTempo=1,this[e(494)]()}[Ro(533)](){const t=Ro;this[t(482)](),this[t(526)].destroy(),this[t(458)][t(533)](),this._outputBuffer[t(533)](),this._inputBuffer=null,this[t(458)]=null,this[t(502)]=null}clear(){const t=Ro;this[t(467)].clear(),this[t(490)][t(482)]()}[Ro(498)](){const t=Ro,e=new Wo;return e.rate=this[t(528)],e[t(524)]=this[t(524)],e}get[Ro(528)](){return this[Ro(493)]}set[Ro(528)](t){const e=Ro;this[e(560)]=t,this[e(494)]()}set[Ro(469)](t){this[Ro(493)]=1+.01*t}get[Ro(524)](){return this[Ro(541)]}set[Ro(524)](t){const e=Ro;this[e(552)]=t,this[e(494)]()}set tempoChange(t){this[Ro(524)]=1+.01*t}set[Ro(531)](t){const e=Ro;this[e(501)]=t,this[e(494)]()}set pitchOctaves(t){const e=Ro;this.pitch=Math.exp(.69314718056*t),this[e(494)]()}set[Ro(525)](t){this.pitchOctaves=t/12}get[Ro(549)](){return this._inputBuffer}get[Ro(479)](){return this[Ro(502)]}[Ro(494)](){const t=Ro,e=this._tempo,s=this._rate;this[t(541)]=this[t(552)]/this[t(501)],this[t(493)]=this.virtualRate*this[t(501)],Vo(this[t(541)],e)&&(this[t(490)][t(524)]=this[t(541)]),Vo(this[t(493)],s)&&(this.transposer[t(528)]=this[t(493)]),this[t(493)]>1?this[t(502)]!=this[t(467)][t(479)]&&(this[t(490)][t(549)]=this[t(526)],this[t(490)][t(479)]=this[t(458)],this[t(467)][t(549)]=this._intermediateBuffer,this[t(467)][t(479)]=this[t(502)]):this[t(502)]!=this.stretch[t(479)]&&(this.transposer[t(549)]=this._inputBuffer,this[t(467)][t(479)]=this[t(458)],this.stretch[t(549)]=this[t(458)],this[t(490)].outputBuffer=this._outputBuffer)}[Ro(506)](){const t=Ro;this._rate>1?(this.stretch[t(506)](),this[t(467)][t(506)]()):(this[t(467)][t(506)](),this[t(490)].process())}}function Go(){const t=["transposer","calculateSequenceParameters","rateChange","11385dNoeJx","sourcePosition","frameCount","min","onEnd","seekBestOverlapPositionStereoQuick","MIN_VALUE","overlap","checkLimits","outputBuffer","historyBufferSize","data","clear","_bufferTime","overlapMs","outputChunkSize","autoSeekSetting","sampleReq","setParameters","callback","stretch","_quickSeek","endIndex","_rate","calculateEffectiveRateAndTempo","_pipe","7101FztXrs","prevSampleL","clone","autoSeqSetting","inputChunkSize","virtualPitch","_outputBuffer","set","seekWindowLength","ensureAdditionalCapacity","process","New position may not be greater than current position","_sampleBuffer","subarray","149049VWyoSA","_sourcePosition","put","_vector","30GZncsP","extract","_sampleRate","calculateCrossCorrelationStereo","preCalculateCorrelationReferenceStereo","overlapStereo","seekLength","_frameCount","prevSampleR","nominalSkip","tempo","pitchSemitones","_inputBuffer","position","rate","skipFract","sequenceMs","pitch","New position falls outside of history buffer","destroy","seekWindowMs","max","slopeCount","floor","putSamples","fillOutputBuffer","outputBufferPosition","_tempo","sampleRate","vector","startIndex","length","receiveSamples","receive","ensureCapacity","inputBuffer","12pHBDPy","clearMidBuffer","virtualTempo","rewind","transpose","2232vkMHqE","_defaultFrameLength","5012540cuyPyR","quickSeek","putBuffer","virtualRate","seekBestOverlapPosition","reset","midBufferDirty","366938hwGPiK","_intermediateBuffer","refMidBuffer","177096oVNLxS","calculateOverlapLength","89495tCMqHY","midBuffer","overlapLength","_position","sourceSound"];return(Go=function(){return t})()}const zo=Ho;function Ho(t,e){const s=qo();return(Ho=function(t,e){return s[t-=317]})(t,e)}!function(t){const e=Ho,s=t();for(;;)try{if(380477===-parseInt(e(341))/1+-parseInt(e(317))/2+-parseInt(e(319))/3+parseInt(e(336))/4+parseInt(e(330))/5*(parseInt(e(337))/6)+parseInt(e(338))/7*(parseInt(e(333))/8)+parseInt(e(321))/9*(parseInt(e(328))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(qo);class Ko{constructor(t,e,s,i){const r=Ho;this[r(331)]=t,this[r(327)]="Processor",this.audio=e,this.channel=s,this[r(332)]=i}destroy(){const t=Ho;this[t(320)]=null,this[t(340)]=null}[zo(329)](t,e=0,s=0){const i=zo,r=this[i(342)].bufferList,n=e/this.bufferSize;let o=0,a=null;if(!n||r[i(323)]<n)return this[i(331)][i(324)](this[i(327)],i(334)+n+i(335)+e+i(322)+r[i(323)]+i(326)),this[i(342)][i(318)]=!0,0;try{for(let e=0;e<n;e++){const e=r[i(339)](),s=e[i(320)][0],n=2===this[i(340)]?e[i(320)][1]:e[i(320)][0];for(let e=0;e<this[i(332)];e++){const i=2*(o+e);t[i]=s[e],t[i+1]=n[e]}o+=this.bufferSize,null===a&&(a=e.ts)}}catch(t){return this[i(331)].debugWarn(this.TAG_NAME,"extract()",t),0}return this.audio[i(325)]=a,o}}function qo(){const t=["player","bufferSize","37016aaHprK","extract and num is "," and numFrames is ","2282480GuMhVt","2298zjTaaZ","217SAXZzW","shift","channel","168690uqkkOH","audio","745884wqeMYm","bufferListLock","493209zbDTXX","buffer","467874YeZCFp"," and bufferList length is ","length","debugLog","tempAudioTimestamp"," and set bufferListLock to true ","TAG_NAME","20gBhKdU","extract","3505cCrGnV"];return(qo=function(){return t})()}const Qo=Yo;function Yo(t,e){const s=Xo();return(Yo=function(t,e){return s[t-=293]})(t,e)}!function(t){const e=Yo,s=t();for(;;)try{if(443646===-parseInt(e(302))/1*(parseInt(e(295))/2)+parseInt(e(307))/3+parseInt(e(303))/4*(-parseInt(e(300))/5)+-parseInt(e(317))/6+parseInt(e(299))/7+-parseInt(e(305))/8+parseInt(e(304))/9*(parseInt(e(314))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Xo);class Jo{constructor(t,e,s){const i=Yo;this[i(320)]=t,this[i(309)]=e,this[i(313)]=s[i(315)],this[i(297)]=s[i(297)],this[i(311)]=new Wo(s.sampleRate),this.processor=new Ko(t,e,s[i(298)],s[i(297)]),this.soundTouch[i(310)]=1,this[i(311)][i(296)]=1,this[i(316)]=new Fo(this[i(306)],this[i(311)],{sampleRate:s[i(315)]}),this[i(312)]=null}[Qo(294)](){const t=Qo;this[t(312)]=null,this[t(306)]&&(this.processor[t(294)](),this[t(306)]=null),this[t(316)]&&(this[t(316)][t(294)](),this[t(316)]=null),this.soundTouch&&(this[t(311)][t(294)](),this[t(311)]=null)}getRate(){return this[Qo(311)].tempo}[Qo(319)](t){const e=Qo;(t=parseFloat(t))!==this[e(311)].tempo&&(this.soundTouch[e(310)]=t)}clear(){}[Qo(318)](t){const e=Qo;let s=new Float32Array(2*t),i=this.filter[e(301)](s,t),r=new Float32Array(i),n=new Float32Array(i);for(let t=0;t<i;t++)r[t]=s[2*t],n[t]=s[2*t+1];let o=this[e(309)][e(308)]||0;return null!==this[e(312)]&&o===this.prevAudioTs&&(o=this[e(312)]+Math.floor(1e3*this[e(297)]/this[e(313)]*this[e(293)]())),this[e(312)]=o,{size:i,left:r,right:n,ts:this.audio[e(308)]||0}}}function Xo(){const t=["tempo","soundTouch","prevAudioTs","sampeRate","1742990XQMHQN","sampleRate","filter","470862NHILpA","provide","setRate","player","getRate","destroy","102UWIpzu","rate","audioBufferSize","channels","4947180eTpSHz","1187105kIsSbs","extract","6647QeDoBL","4GvtbPE","9fbQkny","553576OLdAph","processor","860097foxfJw","tempAudioTimestamp","audio"];return(Xo=function(){return t})()}function $o(){class t extends AudioWorkletProcessor{constructor(){super(),this.audioBufferSize=1024,this.start=!1,this.channels=1,this.samplesArray=[],this.state=0,this.offset=0,this.port.onmessage=t=>{"init"===t.data.message?(this.audioBufferSize=t.data.audioBufferSize,this.start=t.data.start,this.channels=t.data.channels,this.state=0,this.offset=0,this.samplesArray=[]):"stop"===t.data.message?(this.start=!1,this.state=0,this.offset=0,this.samplesArray=[]):"data"===t.data.message?this.samplesArray.push(t.data.buffer):"zero"===t.data.message&&this.samplesArray.push({left:new Float32Array(this.audioBufferSize).fill(0),right:new Float32Array(this.audioBufferSize).fill(0)})}}process(t,e,s){const i=e[0][0],r=e[0][1];if(0===this.offset&&this.port.postMessage({message:"beep"}),0===this.state)this.state=1;else if(1===this.state&&this.samplesArray.length>=4)this.state=2;else if(2===this.state){const t=this.samplesArray[0];for(let e=0;e<i.length;e++)1===this.channels?i[e]=t.left[e+this.offset]:2===this.channels&&(i[e]=t.left[e+this.offset],r&&(r[e]=t.right[e+this.offset]))}else 1===this.channels?i.fill(0):2===this.channels&&(i.fill(0),r&&r.fill(0));return this.offset+=128,this.offset===this.audioBufferSize&&(this.offset=0,2===this.state&&this.samplesArray.shift(),0===this.samplesArray.length&&(this.state=0)),this.start}}registerProcessor("worklet-processor",t)}const Zo=ta;function ta(t,e){const s=ea();return(ta=function(t,e){return s[t-=496]})(t,e)}function ea(){const t=["active","45OkFSgr","init","sin","bufferList size is ","_audioElementPlay","appendChild","worklet-processor","currentTime","$audio","9WYOxrY","audioPlayVodSeekingLock","scriptNode","_intervalScriptNode","initProcessor audioBufferSize is ","debugError","interval","calcPlaybackRateByBuffer","catch","mediaStreamAudioDestinationNode","style","140620ArIYxe","getRenderCurrentPts","start","events","audioElementPlayTimeout","destroy","paused"," and channel is ",",\n and ts list is ","bufferList length ","openSyncAudioAndVideo"," and\n current video pts is ","clear","_bindAudioProxy","bufferList","isPlayVodSeeking","left","debugWarn","$container","bind","initWorkletScriptNode audioContext is null","_delayPlay","updatePlaybackRate","50516VkxTlP","canplay","_provide","srcObject","assign","initWorkletScriptNode audioBufferSize is ","tierDownToProcessScript","getBufferListTimestamp","worklet","max","onmessage","initWorkletScriptNode error","length"," < 1000 and diff2 is ","supportAudioWorklet","audioWorklet","join","390500FywioQ","getCurrentVideoAndAudio","gainNode","engine active , audioSyncVideoOption ","syncAudioAndVideoDiff","connect","createMediaStreamDestination","onaudioprocess","videoBufferDelay","isActiveEngineType","17ZOoFFG","_isDestroyed","stream","right","audioElementPlay","initWorkletScriptNode","scriptStartTime"," and\n current audio pts is ","createBufferSource","isMoreThanMinBufferDuration","_audioElementPlay error","TAG_NAME","20671yWyTwq"," > 1000 and diff2 is ","play has not init script node","click","handleScriptNodeCallback","absolute","isPlaybackOnlyDecodeIFrame","reset"," and\n first Buffer Item ts is ","clearWorkletUrlTimeout","workletProcessorNode","calcPlaybackRateBySync",", and drop","destination","revokeObjectURL","audioBufferSize","fillScriptNodeOutputBuffer","removeChild","_opt","min","buffer list is : ","pause","AudioContext","scriptNodeInterval",",audioBufferSize: ","postMessage","addModule",",and bufferItem.size is 0 , and current playbackRate is ","sampleRate","getAudioBufferSize","bound","play success and remove document click event listener","audioEngine","readyState","oneBufferDuration","11982KsApwY","getEngineType","readyState is 0 and set _delayPlay to true","getAutoAudioEngineType","defaultPlaybackRate","workletUrl"," is less than current time ","setRate","isPlaybackRateSpeed","then","initProcessScriptNode","abs","isMute","512TbSVbv","1352802dNhQCZ","toFixed",", run clear() and return","workletProcessorNode is null","buffer list lock and buffer list is ","isPlayBackPlayRateLessThanOne","getAudioBufferSizeByType","rateUpdateThreshold","provide","function"," and use old audioTimestamp","initProcessScriptNode audioBufferSize is ","bufferList lock and size is 0 and outputBufferLength is ","getBufferListDuration","rateProcessor","play and readyState: ","player","parentNode","audioTimestamp"," and fill zero","supportLockScreenPlayAudio"," , waiting and bufferList is ","isAudioPlayer","shift"," and sampleRate is ","size","visibility","isPlayVodPlayRateLessThanOne","video","eventListenList","-100%","initScriptNode","initProcessor","isPlaying","lastRateUpdateTime","script start time ",", fill zero","floor","play failed and retry play","set","isDestroyedOrClosed","removeEventListener","forEach","audioSyncVideoOption more than diff :","debugLog"," ,\n and audio is ","now","bufferListLock","hasInitScriptNode","isAudioPlaying","play failed and add document click event listener","engineType: ","playbackRate","audioInfo","fill","hasAudio","280392RkOtuZ","createScriptProcessor","zero","buffer"," set audioPlayVodSeekingLock to false","audio","audioContext","initIntervalScriptNode","channels","outputBuffer","getAudioSyncVideoDiff","engineType",", diff is ","weiXinInAndroidAudioBufferSize","_getAudioElementReadyState","audioPlayVodSeekingLock and latest ts is ","intervalLoopWorker"," > -","playing","play","port","data","getChannelData","script","isInPlayNextFrame","prevEmitAudioSyncVideoOptionLogTimestamp","push"];return(ea=function(){return t})()}!function(t){const e=ta,s=t();for(;;)try{if(108168===parseInt(e(531))/1*(-parseInt(e(578))/2)+-parseInt(e(676))/3*(-parseInt(e(504))/4)+-parseInt(e(521))/5+parseInt(e(648))/6+parseInt(e(543))/7*(parseInt(e(591))/8)+-parseInt(e(685))/9*(parseInt(e(696))/10)+-parseInt(e(592))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(ea);class sa extends Lo{constructor(t){const e=ta;super(t),this[e(542)]=e(565),this[e(550)](),this[e(606)]=null,this[e(566)]=null,this[e(659)]=this[e(581)](),this.audioBufferSize=this[e(598)](),this[e(684)]=null,this[e(621)]=[],this[e(583)]=null,this[e(552)]=null,this.intervalLoopWorker=null,this[e(573)]={_intervalScriptNode:this[e(688)][e(500)](this),_audioElementPlay:this._audioElementPlay.bind(this)},this[e(608)][e(561)][e(612)]&&Es()&&(this.mediaStreamAudioDestinationNode=this[e(654)][e(527)](),this[e(684)]=document.createElement(e(653)),Object[e(508)](this[e(684)][e(695)],{position:e(548),left:e(622),top:e(622)}),t[e(499)]?t[e(499)].appendChild(this[e(684)]):document.body[e(681)](this[e(684)]),this[e(700)]=null,this[e(709)](),this.player[e(636)](this[e(542)],"create audio element")),this[e(608)].debugLog(this[e(542)],e(677),e(643)+this[e(659)]+e(567)+this[e(558)])}async[Zo(701)](){const t=Zo;return await super[t(701)](),this[t(700)]&&(clearTimeout(this.audioElementPlayTimeout),this.audioElementPlayTimeout=null),this[t(583)]&&(URL[t(557)](this[t(583)]),this.workletUrl=null),this[t(552)]&&(clearTimeout(this.clearWorkletUrlTimeout),this.clearWorkletUrlTimeout=null),this.scriptNodeInterval&&(clearInterval(this[t(566)]),this[t(566)]=null),this[t(664)]&&(this[t(664)][t(701)](),this[t(664)]=null),this[t(621)][t(516)]&&(this.eventListenList[t(634)](t=>{t()}),this[t(621)]=[]),this[t(684)]&&(this[t(684)][t(564)](),this.$audio.srcObject=null,this[t(684)][t(609)]&&this.$audio.parentNode[t(560)](this.$audio),this[t(684)]=null),this[t(606)]&&(this[t(606)][t(701)](),this[t(606)]=null),this.reset(),this[t(573)]=null,this.player[t(636)](this[t(542)],t(701)),!0}_off(){}[Zo(550)](){const t=Zo;this[t(582)]=1,this[t(644)]=1,this[t(537)]=0,this[t(558)]=0,this[t(502)]=!1,this[t(659)]=Ct[t(671)],this.lastRateUpdateTime=0,this[t(599)]=50,this[t(673)]=null}[Zo(641)](){const t=Zo;return this.$audio&&xi(this[t(684)][t(702)])&&xi(this[t(684)].ended)&&0!==this[t(684)][t(644)]&&0!==this[t(684)][t(576)]}[Zo(709)](){const t=Zo,{proxy:e}=this[t(608)][t(699)],s=e(this.$audio,t(505),()=>{const e=t;this[e(608)][e(636)](this[e(542)],"canplay"),this._delayPlay&&this[e(680)]()});this.eventListenList[t(674)](s)}[Zo(662)](){const t=Zo;let e=0;return this[t(684)]&&(e=this[t(684)][t(576)]),e}[Zo(535)](){const t=Zo;if(this.$audio){const e=this[t(662)]();if(this[t(608)].debugLog(this[t(542)],t(607)+e),!(0!==e||ni()&&Es()))return this[t(608)][t(498)](this[t(542)],t(580)),void(this[t(502)]=!0);this._audioElementPlay()}}[Zo(680)](){const t=Zo;this[t(684)]&&this[t(684)][t(667)]()[t(587)](()=>{const e=t;this[e(502)]=!1,this[e(608)][e(636)](this[e(542)],"_audioElementPlay success and volume is ",this[e(684)].volume),this[e(700)]=setTimeout(()=>{const t=e;this[t(700)]=null,this[t(532)]||!this.isAudioPlaying()&&(this[t(608)][t(498)](this[t(542)],t(630)),this[t(680)]())},100),this.isAudioPlaying()&&(this[e(608)].debugLog(this[e(542)],e(574)),document[e(633)](e(546),this[e(573)][e(680)]))})[t(693)](e=>{const s=t;this[s(608)][s(690)](this.TAG_NAME,s(541),e),this.player[s(636)](this[s(542)],s(642)),document.addEventListener(s(546),this[s(573)][s(680)])})}[Zo(572)](){return this[Zo(558)]}get[Zo(577)](){const t=Zo;return this[t(558)]/this[t(654)][t(571)]*1e3}get[Zo(530)](){const t=Zo;return this[t(659)]===Ct[t(675)]}[Zo(605)](){const t=Zo;return this[t(710)][t(516)]*this[t(577)]}[Zo(540)](){const t=Zo;return this[t(605)]()>=100*this[t(644)]}[Zo(624)](){const t=Zo;this[t(608)][t(636)](this[t(542)],t(689)+this[t(558)]+t(616)+this[t(645)][t(571)]),this[t(606)]=new Jo(this.player,this,{channels:this[t(645)].channels,audioBufferSize:this[t(558)],sampleRate:this.audioContext[t(571)]})}[Zo(581)](){const t=Zo;let e=this.player[t(561)][t(575)]||Ct[t(671)];const s=()=>{const s=t;e=ai()?Ct[s(671)]:(Es()&&this[s(608)][s(561)].supportLockScreenPlayAudio||Si()&&this[s(518)](),Ct.script)};return this[t(608)][t(561)][t(575)]?this[t(608)][t(561)][t(575)]===Ct[t(512)]&&Si()&&this[t(518)]()?e=Ct[t(671)]:this[t(608)]._opt[t(575)]===Ct[t(675)]?e=Ct.script:this.player[t(561)][t(575)]===Ct[t(671)]?e=Ct[t(671)]:s():s(),e}[Zo(598)](){const t=Zo,e=this.engineType,s=this[t(608)]._opt[t(661)];return e===Ct.worklet?1024:e===Ct[t(675)]?s||4800:1024}supportAudioWorklet(){const t=Zo;return this.audioContext&&this[t(654)][t(519)]&&typeof this[t(654)][t(519)].addModule===t(601)}[Zo(623)](){const t=Zo;this.playing=!0,this[t(608)].debugLog(this[t(542)],t(623)),this[t(640)]||(this[t(624)](),this.engineType===Ct[t(512)]?this.initWorkletScriptNode():this[t(659)]===Ct.active?this.initIntervalScriptNode():this[t(659)]===Ct[t(671)]&&this[t(588)](),this.audioElementPlay())}[Zo(579)](){return this.engineType}[Zo(586)](){const t=Zo;return this[t(644)]>this[t(582)]}[Zo(588)](){const t=Zo;this.player[t(636)](this.TAG_NAME,t(603)+this.audioBufferSize+" and channel is "+this[t(645)].channels);const e=this[t(654)][t(649)](this[t(558)],0,this[t(645)][t(656)]);e[t(528)]=e=>{const s=t,i=e[s(657)];this[s(547)](i)},e[t(526)](this[t(523)]),this[t(687)]=e,this[t(684)]?(this[t(523)][t(526)](this[t(694)]),this[t(684)].srcObject=this[t(694)][t(533)]):this[t(523)].connect(this[t(654)][t(556)]),this.hasInitScriptNode=!0}[Zo(655)](){const t=Zo;this.player.debugLog(this[t(542)],"initIntervalScriptNode audioBufferSize is "+this[t(558)]+t(703)+this[t(645)][t(656)]),this[t(537)]=0;const e=1e3*this[t(558)]/this[t(654)].sampleRate;this[t(608)][t(561)].intervalUseWorker?(!this[t(664)]&&(this.player[t(636)](this[t(542)],"initIntervalScriptNode and _opt.intervalUseWorker is true and create intervalLoopWorker"),this[t(664)]=new fo),this[t(664)][t(691)](this[t(573)]._intervalScriptNode,e)):this[t(566)]=setInterval(this[t(573)][t(688)],e),this[t(684)]?(this[t(523)][t(526)](this[t(694)]),this[t(684)][t(507)]=this[t(694)][t(533)]):this.gainNode[t(526)](this[t(654)][t(556)]),this[t(640)]=!0}_intervalScriptNode(){const t=Zo;if(0===this[t(710)][t(516)]||xi(this.playing)||xi(this[t(608)][t(625)]())||this[t(590)])return void(this[t(666)]&&xi(this[t(590)])&&this[t(608)][t(636)](this.TAG_NAME,"interval script node and bufferList is "+this.bufferList[t(516)]+" or playing is "+this[t(666)]));const e=this[t(654)][t(539)](),s=this[t(654)].createBuffer(this[t(645)][t(656)],this[t(558)],this[t(654)].sampleRate);this[t(547)](s,()=>{const i=t;this[i(537)]<this[i(654)].currentTime&&(this.player[i(636)](this[i(542)],i(627)+this.scriptStartTime+i(584)+this.audioContext[i(683)]),this[i(537)]=this[i(654)][i(683)]),e[i(651)]=s,e[i(526)](this[i(523)]),e[i(698)](this[i(537)]),this[i(537)]+=s.duration})}[Zo(536)](){const t=Zo;this[t(608)].debugLog(this[t(542)],t(509)+this[t(558)]+t(703)+this.audioInfo.channels);let e=yi($o);this.workletUrl=e,this.audioContext[t(519)][t(569)](e)[t(587)](()=>{const e=t;if(this._isDestroyed)return;if(this[e(608)].isDestroyedOrClosed())return void this.player.debugLog(this[e(542)],"initWorkletScriptNode() player is destroyed");if(!this[e(654)])return void this[e(608)][e(498)](this[e(542)],e(501));let s=[1];2===this[e(645)].channels&&(s=[1,1]);try{this[e(553)]=new AudioWorkletNode(this[e(654)],e(682),{numberOfOutputs:this.audioInfo.channels,outputChannelCount:s})}catch(t){this[e(608)].debugError(this[e(542)],e(515),t),this[e(553)]=null,this[e(510)]()}this[e(553)]&&(this.workletProcessorNode[e(526)](this[e(523)]),this.$audio?(this[e(523)].connect(this[e(694)]),this[e(684)].srcObject=this[e(694)].stream):this[e(523)].connect(this[e(654)][e(556)]),this.hasInitScriptNode=!0,this.workletProcessorNode.port[e(568)]({message:e(677),audioBufferSize:this.audioBufferSize,start:!0,channels:this[e(645)][e(656)]}),this[e(553)].port[e(514)]=t=>{const s=e;this.workletProcessorNode?this[s(654)]?this[s(547)](this[s(553)],null,!0):this.workletProcessorNode[s(668)][s(568)]({message:s(650)}):this[s(608)].debugError(this[s(542)],s(595))})}),this.clearWorkletUrlTimeout=setTimeout(()=>{const e=t;URL.revokeObjectURL(this[e(583)]),this[e(583)]=null,this.clearWorkletUrlTimeout=null},P)}tierDownToProcessScript(){const t=Zo;this[t(608)][t(636)](this[t(542)],t(510)),this[t(659)]=Ct[t(671)],this[t(558)]=this[t(598)](),this.initProcessScriptNode(),this[t(535)]()}handleScriptNodeCallback(t,e,s=!1){const i=Zo;e=e||ss;let r,n=t[i(516)];s&&(r=t,n=this[i(558)]);const o=this[i(645)].channels;if(this[i(532)])return s?r.port[i(568)]({message:"zero"}):this.fillScriptNodeOutputBuffer(t,o),void e();if(this.playing&&this.player[i(625)]()&&xi(this.isMute)&&xi(this[i(639)])){if(this.player._opt,this[i(608)][i(632)]())return this[i(608)][i(636)](this[i(542)],"handleScriptNodeCallback() player is destroyed or closed"),s?r.port[i(568)]({message:i(650)}):this.fillScriptNodeOutputBuffer(t,o),void e();if(this[i(608)][i(706)]()&&Pi(this[i(608)][i(618)])){const n=this.player[i(658)]();if(n-this[i(608)][i(561)][i(525)]>2e3){const a=this.player[i(522)](),h=this[i(511)]();let l=!1;const c=os();return null===this.prevEmitAudioSyncVideoOptionLogTimestamp&&(l=!0,this[i(673)]=c),(c-this[i(673)]>=1e3||l)&&(this[i(608)][i(636)](this.TAG_NAME,i(635)+n+",\n and video is "+a[i(620)]+i(637)+a.audio+i(613)+this[i(710)][i(516)]+i(704)+h[i(520)](",")+i(611)),this[i(673)]=c),s?r.port[i(568)]({message:i(650)}):this[i(559)](t,o),void e()}this[i(554)]()}let a=this[i(506)](n);if(0===a.size)return xi(this[i(608)][i(549)]())&&this[i(608)][i(636)](this[i(542)],i(679)+this[i(710)][i(516)]+" outputBufferLength is "+n+i(570)+this[i(644)]+i(628)),s?r[i(668)][i(568)]({message:i(650)}):this[i(559)](t,o),void e();if(a&&a.ts){let t=a.ts;if(this[i(686)]){const e=Math[i(589)](a.ts-this[i(608)][i(610)]);let s=0,r=null;this.bufferList[i(516)]&&(r=this[i(710)][0].ts,s=Math[i(589)](r-a.ts)),e>1e3||s>1e3?(this.player[i(636)](this.TAG_NAME,i(663)+a.ts+i(551)+r+i(538)+this[i(608)][i(610)]+i(707)+this.player[i(697)]()+i(660)+e+i(544)+s+i(602)),t=this[i(608)][i(610)]):(this.player[i(636)](this[i(542)],i(663)+a.ts+i(551)+r+i(538)+this[i(608)][i(610)]+" and\n current video pts is "+this.player[i(697)]()+i(660)+e+i(517)+s+i(652)),this.audioPlayVodSeekingLock=!1)}this[i(608)].audioTimestamp=t}s?r.port[i(568)]({message:i(669),buffer:a}):this.fillScriptNodeOutputBuffer(t,o,a),e()}else this[i(639)]&&this[i(666)]&&this.player[i(625)]()&&xi(this[i(590)])&&xi(this[i(608)][i(549)]())&&xi(this.player[i(597)]())&&xi(this[i(608)][i(496)]())&&xi(this[i(608)].isPlayVodPlayRateLessThanOne())&&this[i(608)][i(636)](this[i(542)],i(604)+n+i(628)),s?r[i(668)].postMessage({message:i(650)}):this.fillScriptNodeOutputBuffer(t,o),e()}fillScriptNodeOutputBuffer(t,e,s){const i=Zo;if(1===e){const e=t.getChannelData(0);s?0===s[i(617)]?e[i(646)](0):e.set(s[i(497)]):e[i(646)](0)}else if(2===e){const e=t[i(670)](0),r=t[i(670)](1);s?0===s[i(617)]?(e[i(646)](0),r.fill(0)):(e.set(s[i(497)]),r[i(631)](s[i(534)])):(e[i(646)](0),r.fill(0))}}[Zo(667)](t,e){const s=Zo;this.isMute||this.player[s(672)]||this[s(608)].isPlaybackOnlyDecodeIFrame()||this[s(608)][s(597)]()||this[s(608)][s(619)]()||(this[s(640)]?(this[s(647)]=!0,this[s(608)].latestAudioTimestamp=e,this.bufferList[s(674)]({buffer:t,ts:e}),this[s(639)]&&this[s(605)]()>=150&&(this[s(608)][s(636)](this[s(542)],s(596)+this.bufferList[s(516)]+" and duration is "+this[s(605)]()+" > 150 and set lock to false"),this[s(639)]=!1),xi(this[s(608)][s(706)]())&&Pi(this.player.isPlayStream())&&this[s(692)]()):this.player[s(498)](this[s(542)],s(545)))}[Zo(554)](){const t=Zo;if(this[t(590)])return;if(!this.playing)return;if(this[t(608)].isPlayStream()){const e=2e3,s=Math.floor(e/this[t(577)]);if(this[t(710)][t(516)]>s)return this[t(608)][t(636)](this[t(542)],t(705)+this[t(710)][t(516)]+" more than "+s+t(555)),void this.clear()}const e=this[t(608)].getAudioSyncVideoDiff();if(this[t(530)]){if(e<-this.player[t(561)][t(525)]){this.player[t(636)](this.TAG_NAME,t(524)+-this[t(608)][t(561)][t(525)]+" less than diff :"+e+",\n and bufferlist is "+this[t(710)].length);const s=this[t(608)][t(697)]();for(;this[t(710)][t(516)]>0;){const e=this[t(710)][0],i=e.ts-s;if(i>-this[t(608)][t(561)][t(525)]/2){this[t(608)].audioTimestamp=e.ts,this[t(608)].debugLog(this[t(542)],"engine active , audioSyncVideoOption\n item.ts is "+e.ts+" and currentVideoTimestamp is "+s+", diff is "+i+t(665)+this[t(608)][t(561)][t(525)]/2+" and end");break}this[t(710)][t(615)](),this[t(608)][t(610)]=e.ts}}}else{let s=this[t(644)];if(e<-this[t(608)][t(561)][t(525)]){const i=Math.abs(e),r=.1,n=.5*this[t(582)],o=this[t(608)][t(561)][t(525)],a=1e3;let h=r+(n-r)*Math[t(562)](Math[t(513)]((i-o)/(a-o),0),1);s=parseFloat(this.defaultPlaybackRate+h)[t(593)](1)}else if(e>-this.player[t(561)][t(525)]&&e<this.player[t(561)][t(525)]){const i=this[t(608)][t(561)][t(525)]/2;if(e>-i&&e<i)s=this.defaultPlaybackRate;else{const i=e-0,r=this[t(608)][t(561)].syncAudioAndVideoDiff,n=.1*Math[t(678)](i/r*Math.PI/2);s=Number((this[t(582)]-n)[t(593)](1)),Math[t(589)](this[t(644)]-s)<.1&&(s=this.playbackRate)}}else if(e>this.player[t(561)][t(525)]){const i=Math.abs(e),r=.1,n=.5*this[t(582)],o=this[t(608)][t(561)][t(525)],a=1e3;let h=r+(n-r)*Math.min(Math[t(513)]((i-o)/(a-o),0),1);s=parseFloat(this[t(582)]-h)[t(593)](1);const l=.5*this[t(582)];s=Math[t(513)](s,l)}this[t(503)](s)}}[Zo(692)](){const t=Zo;if(this[t(590)]||!this.playing)return;let e=this.playbackRate,s=1e3,i=5e3;this[t(614)]&&(s=this[t(608)]._opt[t(529)],i=this[t(608)][t(561)].videoBufferMax);const r=Math[t(629)](s/this.oneBufferDuration),n=Math[t(629)](i/this.oneBufferDuration);if(this[t(710)].length>n)return this[t(608)][t(636)](this.TAG_NAME,t(563)+this.bufferList[t(516)]+" > "+n+t(594)),void this[t(708)]();if(this.isActiveEngineType)return;const o=r/2,a=2*r,h=this.bufferList[t(516)];if(h>o){const s=(h-o)/(a-o),i=.1,r=.3,n=Math[t(562)](Math[t(513)](s,0),1),l=i+(r-i)*(1-Math.pow(1-n,2));e=Number((this[t(582)]+l)[t(593)](1))}else if(e!==this[t(582)]){const s=.1*(h/o);e=Number((this[t(582)]+s)[t(593)](1)),Math.abs(e-this[t(582)])<.1&&(e=this.defaultPlaybackRate)}this[t(503)](e)}[Zo(503)](t){const e=Zo;if(this[e(606)]&&this[e(644)]!==t){const s=Date[e(638)]();if(s-this[e(626)]<this[e(599)])return;Math[e(589)](this[e(644)]-t)>=.2&&this[e(608)][e(636)](this[e(542)],"updatePlaybackRate "+t),this[e(644)]=t,this[e(606)][e(585)](this[e(644)]),this[e(626)]=s}}[Zo(506)](t){const e=Zo;return this[e(606)][e(600)](t)}[Zo(511)](){return this[Zo(710)].map(t=>t.ts)}}const ia=ra;function ra(t,e){const s=oa();return(ra=function(t,e){return s[t-=235]})(t,e)}!function(t){const e=ra,s=t();for(;;)try{if(641337===-parseInt(e(244))/1*(-parseInt(e(281))/2)+parseInt(e(274))/3+-parseInt(e(299))/4+parseInt(e(241))/5+parseInt(e(260))/6+parseInt(e(271))/7+parseInt(e(282))/8)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(oa);class na extends h{constructor(t){const e=ra;super(),this[e(270)]=t,this[e(242)]=e(295),this[e(238)]=t[e(298)].$videoElement,this[e(285)]=!1,this[e(270)].isOldHls()&&this[e(270)][e(296)][e(273)]&&(this.$video=this[e(270)].hlsDecoder.$videoElement),this[e(270)].isWebrtcH264()&&this[e(270)]._opt[e(284)]&&(this[e(238)]=this.player[e(246)][e(297)]),this[e(294)](),this._prevVolume=null,this[e(262)]=null,this[e(270)][e(287)]()&&(this.audioContext=new(window[e(252)]||window[e(289)])({sampleRate:se})),this.player.debugLog("Audio",e(292))}async destroy(){const t=ra;return this.resetInit(),this[t(247)]=null,this[t(256)](),this[t(262)]&&(this.audioContext[t(286)]&&this[t(262)].destination[t(245)](),await this[t(262)].close(),this.audioContext=null),this[t(238)]=null,this[t(269)]=null,this.player[t(275)](t(295),"destroy"),!0}[ia(294)](){const t=ia;this[t(292)]=!1,this[t(247)]={encTypeCode:"",encType:"",channels:"",sampleRate:"",depth:""}}[ia(264)](){return this[ia(247)]}updateAudioInfo(t){const e=ia;t[e(243)]&&(this[e(247)][e(243)]=t[e(243)],this.audioInfo.encType=nt[t.encTypeCode]),t[e(267)]&&(this[e(247)][e(267)]=t[e(267)]),t[e(235)]&&(this.audioInfo.channels=t[e(235)]),t[e(279)]&&(this[e(247)][e(279)]=t.sampleRate),t[e(263)]&&(this[e(247)].depth=t[e(263)]),this[e(247)][e(279)]&&this.audioInfo[e(235)]&&this[e(247)].encType&&!this[e(292)]&&(this.player[e(275)]("Audio",e(247),JSON[e(293)](this.audioInfo)),this[e(270)][e(277)](q[e(247)],this.audioInfo),this.init=!0)}get isPlaying(){return!0}get volume(){const t=ia;return Pi(this[t(238)][t(248)])?0:this.$video[t(258)]}get[ia(240)](){const t=ia;return 0===this[t(238)][t(258)]||Pi(this.$video[t(248)])}mute(t){const e=ia;this[e(253)](t?0:this[e(270)][e(261)]||.5)}[ia(253)](t){const e=ia;t=parseFloat(t),isNaN(t)||(this[e(238)][e(248)]&&(this.$video[e(248)]=!1),t=as(t,0,1),Es()&&(this.$video[e(248)]=0===t),this[e(270)][e(265)]()&&this[e(270)].aliyunRtcDecoder&&this.player[e(288)][e(259)]&&(this[e(270)][e(288)][e(259)][e(248)]=0===t),null!==this._prevVolume&&this[e(269)]===t||(null===this[e(269)]?this.player.emit(q[e(272)],0===t):0===this._prevVolume&&t>0?this[e(270)][e(277)](q[e(272)],!1):this._prevVolume>0&&0===t&&this[e(270)][e(277)](q.mute,!0),this.$video[e(258)]=t,this[e(270)][e(277)](q[e(236)],this[e(270)][e(258)]),this[e(270)][e(277)](q.volume,this.player[e(258)]),this[e(269)]=t))}clear(){}[ia(257)](t,e){const s=ia,i=this[s(270)].video.awriter;if(i)if(t.close)try{i[s(278)](t),vi(t)}catch(t){this[s(270)][s(283)](s(237),"play audio error",t)}else try{this.player[s(251)]=e;const r=function(t,e,s){const i=es,r={...e,format:i(484)};r[i(500)]=t[0][i(581)];const n=s[i(532)](r[i(411)],r[i(500)],r[i(685)]);for(let e=0;e<t[i(581)];e++){var o=new Float32Array(t[e]);n[i(427)](o,e,0)}const a=new Float32Array(r.numberOfFrames*t[i(581)]);for(let e=0;e<t[i(581)];e++)a[i(631)](t[e],e*r[i(500)]);return r[i(625)]=a,new AudioData(r)}(t,{sampleRate:se,numberOfChannels:this[s(247)][s(235)],timestamp:1e3*e},this[s(262)]);i[s(278)](r),vi(r)}catch(t){this[s(270)][s(283)]("Video",s(239),t)}else this[s(270)][s(255)](s(295),s(276))}[ia(250)](){}resume(){}[ia(291)](){return ia(249)}[ia(268)](){return!1}[ia(266)](t){}[ia(290)](){}initScriptNodeDelay(){}[ia(280)](){this[ia(272)](!1)}[ia(254)](){return 2048}getAudioContextSampleRate(){const t=ia;return this.audioContext&&this[t(262)][t(279)]||se}}function oa(){const t=["4763120YPKukU","channels","volumechange","Video","$video","play audio error","isMute","820870RjfYoq","TAG_NAME","encTypeCode","45494eJZvOx","disconnect","webrtc","audioInfo","muted","audio","pause","audioTimestamp","AudioContext","setVolume","getAudioBufferSize","debugWarn","off","play","volume","aliyunRtcRemoteStream","5235546CbSuzO","lastVolume","audioContext","depth","getAudioInfo","isAliyunRtc","setRate","encType","isPlaybackRateSpeed","_prevVolume","player","1752100SoveFs","mute","hlsUseCanvasRender","369981nLAWyI","debugLog","play and this.awriter is null","emit","write","sampleRate","audioEnabled","12AAiSar","1190088JHijPd","debugError","webrtcUseCanvasRender","hasAudio","destination","isWasmPlayAudioUseVideoRender","aliyunRtcDecoder","webkitAudioContext","initScriptNode","getEngineType","init","stringify","resetInit","Audio","_opt","$videoElement","video"];return(oa=function(){return t})()}function aa(){const t=["1135359hieFmr","playbackPause","8852598fUBdYD","3368603WHimIY","play","initScriptNodeDelay"," and last time is ","debugLog","audioTimestamp","playback","isPlayVod","listenSeekEnd and clear bufferList","off","audioPlayVodSeekingLock","_off()","listenPlaybackPause","init","bufferList","bound","10492400AtojuN",", and bufferList is ","resume","16395rnPYOs","playbackDelayTime","player","772VolHGv","listenSeekEnd","slice","listenSeekEnd and update audioTimestamp to","pause","updatePlaybackRate","rateProcessor","TAG_NAME","isPlayback","_off","listenSeekEnd and clear bufferList from index ","initScriptNode","8WJdJIV","length","defaultPlaybackRate","delayTimeout","isPlaybackPauseClearCache","6vjlvkO","findIndex","2076925IVflkE","bind","939492YpATir","destroy","listenPlayVodPause","clear"];return(aa=function(){return t})()}function ha(t,e){const s=aa();return(ha=function(t,e){return s[t-=472]})(t,e)}const la=ha;!function(t){const e=ha,s=t();for(;;)try{if(584110===parseInt(e(510))/1+-parseInt(e(506))/2+parseInt(e(482))/3*(parseInt(e(485))/4)+-parseInt(e(504))/5*(-parseInt(e(502))/6)+parseInt(e(513))/7+parseInt(e(497))/8*(-parseInt(e(512))/9)+-parseInt(e(479))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(aa);class ca extends sa{constructor(t){const e=ha;super(t),this[e(500)]=null,this.TAG_NAME=this.player.isPlayback()?"AudioPlaybackLoader":"AudioPlayVodLoader",this[e(484)][e(493)]()?(this.bound[e(475)]=this[e(475)][e(505)](this),this[e(484)].on(q[e(511)],this[e(478)].listenPlaybackPause)):this[e(484)][e(520)]()&&(this.bound[e(508)]=this[e(508)].bind(this),this[e(478)][e(486)]=this[e(486)][e(505)](this),this[e(484)].on(q.playVodPause,this[e(478)][e(508)]),this[e(484)].on(q.playVodSeekEnd,this[e(478)][e(486)])),this[e(484)].debugLog(this.TAG_NAME,e(476))}async[la(507)](){const t=la;return this[t(494)](),this.delayTimeout&&(clearTimeout(this.delayTimeout),this[t(500)]=null),await super[t(507)](),!0}[la(494)](){const t=la;this[t(484)].debugLog(this[t(492)],t(474)),this.player.isPlayback()?this[t(484)][t(472)](q[t(511)],this[t(478)][t(475)]):this[t(484)].isPlayVod()&&(this[t(484)][t(472)](q.playVodPause,this[t(478)][t(508)]),this[t(484)].off(q.playVodSeekEnd,this[t(478)][t(486)]))}listenPlaybackPause(t){const e=la;t?(this[e(489)](),this.player[e(493)]()&&this[e(484)][e(519)][e(501)]&&this[e(509)]()):this.resume()}[la(508)](t){const e=la;t?this[e(489)]():this[e(481)]()}listenSeekEnd(t){const e=la;t*=1e3,this[e(484)][e(517)](this.TAG_NAME,e(488),t),this.player[e(518)]=t,this[e(473)]=!0;const s=this[e(477)][e(503)](e=>e.ts>=t);s>-1?(this[e(484)][e(517)](this[e(492)],e(495)+s+e(480)+this.bufferList[e(498)]+e(516)+this.bufferList[s].ts),this[e(477)]=this[e(477)][e(487)](s)):(this[e(484)][e(517)](this.TAG_NAME,e(521)),this[e(509)]())}[la(515)](){const t=la,e=this[t(484)]._opt[t(483)];e>0?this[t(500)]=setTimeout(()=>{this[t(496)]()},e):this[t(496)]()}setRate(t){const e=la;t!==this[e(499)]&&this[e(491)]&&(this[e(484)][e(517)](this[e(492)],"setRate",t),this[e(499)]=t,this[e(490)](t))}[la(514)](t,e){super[la(514)](t,e)}}var da=ua;function ua(t,e){var s=fa();return(ua=function(t,e){return s[t-=420]})(t,e)}!function(t){for(var e=ua,s=t();;)try{if(109876===-parseInt(e(434))/1*(-parseInt(e(431))/2)+parseInt(e(433))/3*(-parseInt(e(438))/4)+-parseInt(e(423))/5+parseInt(e(421))/6+-parseInt(e(425))/7*(parseInt(e(435))/8)+-parseInt(e(432))/9*(parseInt(e(440))/10)+parseInt(e(430))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(fa);class pa extends sa{constructor(t){var e=ua;super(t),this[e(439)]="AudioPlayerLoader",this[e(427)]=!0,this.player.debugLog(this[e(439)],e(426))}async[da(429)](){var t=da;return await super[t(429)](),!0}play(t,e){var s=da;xi(this[s(436)])||super[s(437)](t,e)}[da(420)](){var t=da;this[t(422)].debugLog(this[t(439)],t(420)),this[t(436)]=!1,this[t(424)]()}[da(428)](){var t=da;this[t(422)].debugLog(this[t(439)],t(428)),this[t(436)]=!0}}function fa(){var t=["clear","357yWAzlJ","init","isAudioPlayer","resume","destroy","2786949MmuKMt","24002VQUdqI","54ruYIgQ","113613HcVgpa","5MNTwae","1016CmTWbx","playing","play","12NosHQK","TAG_NAME","181000NkiHVU","pause","1269270LfDPAP","player","931715FMOSab"];return(fa=function(){return t})()}const ma=ga;function ga(t,e){const s=ya();return(ga=function(t,e){return s[t-=393]})(t,e)}function ya(){const t=["setVolume","3425649NkKWNw","_handleClickPlay","timeStamp","length","bindStream","_prevVolume","11RAtuKU","lastVolume","catch","8093981kdUNbu","muted","timeupdate","resume","init","1698nhCmVF","addEventListener","6332280PluqEP","_boundHandleClickPlay","255098YRaTOR","removeEventListener","off","audioEnabled","player","debugWarn","eventsDestroy","emit","audio","9NHEoUx","bind","click","debugLog","push","8203864rzdzEl","mute","$video","6797200ojcWMO","events","isPlaying","2yBBIGY","TAG_NAME","volume","destroy","resetInit","_initAudioEvents","isMute","volumechange","forEach","play","7915HVmviZ","handleRender"];return(ya=function(){return t})()}!function(t){const e=ga,s=t();for(;;)try{if(810820===parseInt(e(409))/1+-parseInt(e(429))/2*(-parseInt(e(442))/3)+-parseInt(e(407))/4+-parseInt(e(439))/5*(-parseInt(e(405))/6)+-parseInt(e(400))/7+-parseInt(e(423))/8*(-parseInt(e(418))/9)+parseInt(e(426))/10*(parseInt(e(397))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(ya);class Aa extends h{constructor(t){const e=ga;super(),this.TAG_NAME="AudioWebrtcPlayerLoader",this[e(425)]=new Audio,this[e(413)]=t,this[e(433)](),this[e(396)]=null,this[e(415)]=[],this[e(408)]=this[e(443)][e(419)](this),this[e(434)](),this[e(413)][e(421)](this[e(430)],e(404))}async destroy(){const t=ga;return this[t(433)](),this[t(411)](),this[t(415)][t(394)]&&(this[t(415)][t(437)](t=>t()),this[t(415)]=[]),this[t(396)]=null,this.$video&&(this[t(425)].pause(),this[t(425)].srcObject=null,this.$video=null),this[t(408)]=null,this.player[t(421)](this[t(430)],t(432)),!0}[ma(434)](){const t=ma,{proxy:e}=this[t(413)][t(427)],s=e(this[t(425)],t(402),e=>{const s=t,i=parseInt(e[s(393)],10);this.player.updateStats({ts:i}),this[s(413)][s(440)]()});this.eventsDestroy[t(422)](s)}resetInit(){this[ma(404)]=!1}[ma(443)](){const t=ma;this[t(425)]&&(this.$video[t(438)](),document[t(410)](t(420),this[t(408)]))}[ma(395)](t){const e=ma;this[e(425)].srcObject=t,this[e(425)][e(431)]=1,this[e(425)].play()[e(399)](t=>{const s=e;this.player[s(414)](this.TAG_NAME,"audio play error",t),document[s(406)]("click",this[s(408)])})}getEngineType(){return ma(417)}get[ma(428)](){return!0}get[ma(431)](){const t=ma;return Pi(this[t(425)][t(401)])?0:this[t(425)].volume}get[ma(435)](){const t=ma;return 0===this[t(425)][t(431)]||Pi(this[t(425)][t(401)])}mute(t){const e=ma;this.setVolume(t?0:this[e(413)][e(398)]||.5)}[ma(441)](t){const e=ma;t=parseFloat(t),isNaN(t)||null===this[e(425)]||(this[e(425)][e(401)]&&(this.$video[e(401)]=!1),t=as(t,0,1),Es()&&(this.$video[e(401)]=0===t),null!==this[e(396)]&&this._prevVolume===t||(null===this._prevVolume?this[e(413)].emit(q[e(424)],0===t):0===this[e(396)]&&t>0?this[e(413)][e(416)](q[e(424)],!1):this._prevVolume>0&&0===t&&this[e(413)][e(416)](q[e(424)],!0),this.$video[e(431)]=t,this.player[e(416)](q[e(436)],this[e(413)][e(431)]),this[e(413)][e(416)](q[e(431)],this.player[e(431)]),this._prevVolume=t))}pause(){}[ma(403)](){}[ma(412)](){this[ma(424)](!1)}}const ba=Sa;function va(){const t=["mseDecodeAudio","useWCS","835904aRTFTu","503826ldxNqL","isWebrtcH265","3211943ZahxFj","2562NQZqhM","playVodMp4UseSrc","isHls","isWebrtc","wcsDecodeAudio","5450eXPidq","1445024INrHnb","playType","useWasm","20qSJSYk","playerAudio","playVod","841841RnXaEM","5931ZTAxAG","useMSE","isAliyunRtc","43720SzScPe","supportHls265","getLoaderFactory","isFmp4"];return(va=function(){return t})()}function Sa(t,e){const s=va();return(Sa=function(t,e){return s[t-=107]})(t,e)}!function(t){const e=Sa,s=t();for(;;)try{if(512642===-parseInt(e(130))/1+parseInt(e(114))/2+-parseInt(e(115))/3*(parseInt(e(127))/4)+-parseInt(e(123))/5*(parseInt(e(118))/6)+-parseInt(e(117))/7+-parseInt(e(124))/8+-parseInt(e(131))/9*(-parseInt(e(108))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(va);class Ea{constructor(t){return new(Ea[Sa(110)](t._opt))(t)}static[ba(110)](t){const e=ba;return t[e(125)]===p[e(129)]&&t[e(111)]&&t[e(119)]?na:t.playType===p.playbackTF?t[e(132)]&&t.mseDecodeAudio||t[e(113)]&&t[e(122)]?na:ca:t.playType===p[e(129)]?t[e(132)]&&t[e(112)]||t[e(113)]&&t.wcsDecodeAudio?na:ca:t.playType===p[e(128)]?t[e(121)]?Aa:pa:t[e(120)]&&xi(t[e(109)])||t[e(121)]&&xi(t[e(116)])||t[e(132)]&&t[e(112)]||t[e(107)]||t[e(113)]&&t[e(122)]||t[e(126)]&&t.wasmPlayAudioUseVideoRender?na:sa}}const wa=Ta;function Ta(t,e){const s=Ia();return(Ta=function(t,e){return s[t-=190]})(t,e)}function Ia(){const t=["abortController.abort() success","off","player","abortController.abort() error","writableStream.write() and this._requestAbort is true so return","status","fetch response status is ","init","signal","_requestAbort","buffering","reader.read() and this.abortController.signal.aborted so return","1435872VzCafn","reader.read() and this._requestAbort is true so return","pipeTo",'" string so return',"writableStream.write() and this.abortController.signal.aborted so return","reader.read().catch() and this.abortController.signal.aborted so return","TAG_NAME","abort","dispatch","catch","streamEnd","toString","byteLength","fetchStream","complete","streamStart","abortError","emit","77QUqPNS","getStreamBufferByteLength","close","938YOQpxu","fetch done","read","kBps","aborted","fetch","getStreamType","playing","333715uTxCIq","5754tAlXYb","indexOf","close writableStream success","streamRateInterval","FetchStream","string","debugWarn","idle","then","destroy and ignore writableStream.close()","1189270NYYjwf","destroy","emitError","locked","headers","abortError2","AbortError","fetchError","toFixed","_isDestroyed","9nbnwvT","abortController","body","streamRate","name","debugLog","_times","_closeWritableStream","329345bueOmz","2296632geXKmN","8JHAoMW","assign","abortError3","stopStreamRateInterval","810736phcYkN","startStreamRateInterval"," and emit error and next abort()","streamSuccess","res.body.pipeTo() error","writableStream","_status"];return(Ia=function(){return t})()}!function(t){const e=Ta,s=t();for(;;)try{if(405935===parseInt(e(209))/1+parseInt(e(215))/2+parseInt(e(234))/3+-parseInt(e(211))/4*(parseInt(e(263))/5)+parseInt(e(264))/6*(-parseInt(e(255))/7)+-parseInt(e(210))/8*(-parseInt(e(201))/9)+parseInt(e(191))/10*(-parseInt(e(252))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Ia);class ka extends h{constructor(t){const e=Ta;super(),this.player=t,this.TAG_NAME=e(268),this[e(262)]=!1,this[e(231)]=!1,this[e(221)]=Nt.idle,this[e(220)]=null,this[e(202)]=new AbortController,this[e(204)]=ds(s=>{const i=e;t[i(251)](q[i(258)],(s/1e3)[i(199)](2))}),this.streamRateInterval=null,this[e(200)]=!1,t.debugLog(this[e(240)],e(229))}async[wa(192)](){const t=wa;return this[t(200)]=!0,this.abort(),await this[t(208)](),this[t(223)](),this[t(221)]=Nt[t(271)],this[t(204)]=null,this[t(214)](),this[t(224)][t(206)](this[t(240)],t(192)),!0}[wa(216)](){const t=wa;this[t(214)](),this[t(267)]=setInterval(()=>{const e=t;this[e(204)]&&this[e(204)](0)},1e3)}[wa(214)](){const t=wa;this[t(267)]&&(clearInterval(this[t(267)]),this[t(267)]=null)}async _closeWritableStream(){const t=wa;if(this.writableStream)if(di(this[t(220)].close)&&xi(this[t(220)][t(194)]))try{await this[t(220)][t(254)](),this[t(220)]=null,this[t(224)][t(206)](this.TAG_NAME,t(266))}catch(e){this.player.debugLog(this[t(240)],t(190),e[t(245)]())}else this[t(220)]=null}[wa(247)](t,e={}){const s=wa,{demux:i}=this.player;this[s(224)][s(207)][s(249)]=os();const r=Object[s(212)]({signal:this[s(202)].signal},{headers:e[s(195)]||{}});fetch(t,r)[s(272)](t=>{const e=s;if(this[e(231)])return this[e(221)]=Nt.idle,void t[e(203)].cancel()[e(243)](()=>{});if(!this[e(200)]){if(!function(t){const e=es;return t.ok&&t[e(701)]>=200&&t[e(701)]<=299}(t))return this.player.debugError(this[e(240)],e(228)+t[e(227)]+" and ok is "+t.ok+e(217)),this.abort(),void this[e(251)](J[e(198)],e(228)+t.status+" and ok is "+t.ok);if(this[e(251)](q[e(218)]),this[e(216)](),typeof WritableStream!==es(645))this[e(224)].debugLog(this[e(240)],"use WritableStream() to read stream"),this[e(220)]=new WritableStream({write:t=>{const s=e;if(!this._isDestroyed&&!this[s(224)].isDestroyedOrClosed()){if(this[s(202)]&&this[s(202)].signal&&this[s(202)].signal[s(259)])return this[s(224)].debugLog(this[s(240)],s(238)),void(this[s(221)]=Nt[s(248)]);if(Pi(this[s(231)]))return this.player[s(206)](this[s(240)],s(226)),this._status=Nt.complete,void this[s(241)]();if(typeof t!==s(269))return this[s(221)]=Nt[s(232)],this[s(204)]&&this[s(204)](8*t[s(246)]),i[s(242)](t);this[s(224)][s(270)](this[s(240)],'writableStream.write() and value is "'+t+s(237))}},close:()=>{const t=e;this[t(200)]||(this[t(221)]=Nt[t(248)],this.player.isCheckStreamEnd()?(i[t(254)](),this.player[t(251)](q[t(244)],t(256))):this[t(224)].updateStreamEndInner())},abort:t=>{const s=e;if(this._isDestroyed)return;if(this[s(202)]&&this[s(202)][s(230)]&&this[s(202)].signal[s(259)])return this.player[s(206)](this[s(240)],"writableStream.abort() and this.abortController.signal.aborted so return"),void(this[s(221)]=Nt.complete);i[s(254)]();const r=t.toString();-1===r[s(265)](Tt[s(250)])&&-1===r.indexOf(Tt[s(196)])&&-1===r.indexOf(Tt[s(213)])&&t[s(205)]!==Tt[s(241)]&&(this.abort(),this[s(224)][s(193)](J.fetchError,t.toString()))}}),t[e(203)][e(236)](this[e(220)]).catch(t=>{const s=e;t.name!==s(197)&&this[s(224)][s(206)](this[s(240)],s(219),t[s(205)],t[s(245)]())});else{this.player[e(206)](this[e(240)],"not support WritableStream and use getReader() to read stream");const s=t[e(203)].getReader(),r=()=>{const t=e;s[t(257)]()[t(272)](({done:e,value:s})=>{const n=t;if(!this[n(200)])return e?(this._status=Nt[n(248)],this.abort(),void(this[n(224)].isCheckStreamEnd()?(i.close(),this[n(224)].emit(q.streamEnd,n(256))):this[n(224)].updateStreamEndInner())):this[n(202)]&&this[n(202)].signal&&this[n(202)][n(230)][n(259)]?(this[n(224)].debugLog(this[n(240)],n(233)),void(this[n(221)]=Nt[n(248)])):Pi(this[n(231)])?(this.player[n(206)](this[n(240)],n(235)),this._status=Nt[n(248)],void this.abort()):void(typeof s!==n(269)?(this[n(221)]=Nt[n(232)],this[n(204)]&&this[n(204)](8*s[n(246)]),i[n(242)](s),r()):this[n(224)][n(270)](this[n(240)],'reader.read() and value is "'+s+'" string so return'))})[t(243)](e=>{const s=t;if(this[s(202)]&&this[s(202)][s(230)]&&this[s(202)][s(230)][s(259)])return this.player.debugLog(this[s(240)],s(239)),void(this[s(221)]=Nt[s(248)]);i[s(254)]();const r=e.toString();-1===r.indexOf(Tt[s(250)])&&-1===r[s(265)](Tt[s(196)])&&-1===r[s(265)](Tt[s(213)])&&e[s(205)]!==Tt[s(241)]&&(this[s(241)](),this[s(224)][s(193)](J[s(198)],e[s(245)]()))})};r()}}})[s(243)](t=>{const e=s;this[e(202)]&&this.abortController[e(230)]&&this[e(202)][e(230)][e(259)]||t.name!==e(197)&&(i[e(254)](),this[e(241)](),this[e(251)](J[e(198)],t.toString()))})}[wa(241)](){const t=wa;if(this[t(231)]=!0,this[t(202)])try{this[t(202)][t(241)](),this[t(202)]=null,this.player[t(206)](this.TAG_NAME,t(222))}catch(e){this[t(202)]=null,this[t(224)].debugLog(this[t(240)],t(225),e)}}[wa(261)](){return u[wa(260)]}[wa(253)](){return 0}}function _a(){function t(t){return!0===t||"true"===t}const e="The user aborted a request",s="AbortError",i="Fetch is aborted",r="AbortError",n="fetch",o="destroy",a="destroyEnd",h="buffer",l="fetchError",c="fetchErrorWorker",d="fetchClose",u="fetchSuccess",p="init",f="bufferByteLength",m="idle",g="buffering",y="complete";let A=new class{constructor(){this.TAG_NAME="FetchWorker",this._requestAbort=!1,this._status=m,this.writableStream=null,this.isChrome=!1,this.abortController=new AbortController,this.debug=!1,this.debugLevel="warn",this.debugUuid=null,this.messageQueue=[],this.processInterval=null,this.prevEmitTimestamp=null,this.currentBuffer=null}destroy(){var t;this.abort(),this.writableStream&&("function"==typeof this.writableStream.close&&(!1===(t=this.writableStream.locked)||"false"===t)?this.writableStream.close().catch(t=>{}).finally(()=>{this.writableStream=null}):this.writableStream=null),this._status=m}fetchStream(n,o={}){const a=Object.assign({signal:this.abortController.signal},{headers:o.headers||{}});fetch(n,a).then(n=>{if(this._requestAbort)return this._status=m,void n.body.cancel();if(!function(t){return t.ok&&t.status>=200&&t.status<=299}(n))return this.abort(),void postMessage({cmd:l,message:`fetch response status is ${n.status} and ok is ${n.ok}`});const o=n.headers.get("content-length");if(postMessage({cmd:u,value:o}),"undefined"!=typeof WritableStream)this.debugLog(this.TAG_NAME,"use WritableStream() to read stream"),this.writableStream=new WritableStream({write:e=>this.abortController&&this.abortController.signal&&this.abortController.signal.aborted?(this.debugLog(this.TAG_NAME,"writableStream.write() and this.abortController.signal.aborted so return"),void(this._status=y)):t(this._requestAbort)?(this.debugLog(this.TAG_NAME,"writableStream.write() and this._requestAbort is true so return"),this._status=y,void this.abort()):void("string"!=typeof e?(this._status=g,this.messageQueue.push(e),this.processInterval||this._startMessageProcessor()):this.debugWarn(this.TAG_NAME,`writableStream.write() and value is "${e}" string so return`)),close:()=>{this._status=y,postMessage({cmd:d})},abort:t=>{if(this.abortController&&this.abortController.signal&&this.abortController.signal.aborted)return this.debugLog(this.TAG_NAME,"writableStream.abort() and this.abortController.signal.aborted so return"),void(this._status=y);const n=t.toString();-1===n.indexOf(e)&&-1===n.indexOf(s)&&-1===n.indexOf(i)&&t.name!==r&&(this.abort(),postMessage({cmd:c,message:t.toString()}))}}),n.body.pipeTo(this.writableStream).catch(t=>{"AbortError"!==t.name&&this.debugLog(this.TAG_NAME,"res.body.pipeTo() error",t.name,t.toString())});else{const o=n.body.getReader(),a=()=>{o.read().then(({done:e,value:s})=>e?(this._status=y,void postMessage({cmd:d})):this.abortController&&this.abortController.signal&&this.abortController.signal.aborted?(this.debugLog(this.TAG_NAME,"reader.read() and this.abortController.signal.aborted so return"),void(this._status=y)):t(this._requestAbort)?(this.debugLog(this.TAG_NAME,"reader.read() and this._requestAbort is true so return"),this._status=y,void this.abort()):void("string"!=typeof s?(this._status=g,this.messageQueue.push(s),this.processInterval||this._startMessageProcessor(),a()):this.debugWarn(this.TAG_NAME,`reader.read() and value is "${s}" string so return`))).catch(t=>{if(this.abortController&&this.abortController.signal&&this.abortController.signal.aborted)return this.debugLog(this.TAG_NAME,"reader.read().catch() and this.abortController.signal.aborted so return"),void(this._status=y);const n=t.toString();-1===n.indexOf(e)&&-1===n.indexOf(s)&&-1===n.indexOf(i)&&t.name!==r&&(this.abort(),postMessage({cmd:c,message:t.toString()}))})};a()}}).catch(t=>{this.abortController&&this.abortController.signal&&this.abortController.signal.aborted||"AbortError"!==t.name&&(this.abort(),postMessage({cmd:l,message:t.toString()}))})}abort(){if(this._requestAbort=!0,this.abortController)try{this.abortController.abort(),this.abortController=null,this.debugLog(this.TAG_NAME,"abortController.abort() success")}catch(t){this.abortController=null,this.player.debugLog(this.TAG_NAME,"abortController.abort() error",t,t.toString())}}_startMessageProcessor(){this.processInterval||(this.processInterval=setInterval(()=>{this._processMessageQueue$2();const t=Date.now();null===this.prevEmitTimestamp&&(this.prevEmitTimestamp=t),t-this.prevEmitTimestamp>=1e3&&(this.prevEmitTimestamp=t,postMessage({cmd:f,value:this._getBufferLength()}))},10))}_getBufferLength(){let t=0;for(let e=0;e<this.messageQueue.length;e++)t+=this.messageQueue[e].byteLength||0;return this.currentBuffer&&(t+=this.currentBuffer.byteLength||0),t}_processMessageQueue$2(){for(;this.messageQueue.length;){const t=this.messageQueue.shift(),e=new Uint8Array(t);postMessage({cmd:h,buffer:e},[e.buffer])}}debugLog(t,...e){if(this.debug&&"debug"==this.debugLevel){const s=this.debugUuid?`[${this.debugUuid}]`:"";console.log(`JbPro${s}[✅✅✅][${t}]`,...e)}}debugWarn(t,...e){if(this.debug&&("debug"==this.debugLevel||"warn"==this.debugLevel)){const s=this.debugUuid?`[${this.debugUuid}]`:"";console.log(`JbPro${s}[❗❗❗][${t}]`,...e)}}debugError(t,...e){const s=this.debugUuid?`[${this.debugUuid}]`:"";console.error(`JbPro${s}[❌❌❌][${t}]`,...e)}};self.onmessage=e=>{const s=e.data;switch(s.cmd){case p:A.debug=t(s.debug),A.debugLevel=s.debugLevel,A.debugUuid=s.debugUuid;break;case n:A.isChrome=t(s.isChrome),A.fetchStream(s.url,JSON.parse(s.options));break;case o:A.destroy(),A=null,postMessage({cmd:a})}}}const Ca=Da;function Da(t,e){const s=La();return(Da=function(t,e){return s[t-=338]})(t,e)}function La(){const t=["fetchWorker","streamRate","destroyResolve","9459sUsKyO","decoderWorkerCloseTimeout","_initFetchWorker","send close but not response and destroy directly","streamRateInterval","kBps","196nkuGLt","debugLog","_stopStreamRateInterval","2968vYSekc","4rIFsmm","workerClearTimeout","6094011dQubJP","terminate","workerUrl","12940WBMtqy","revokeObjectURL","_isDestroyed","init","tempStreamBufferByteLength","postMessage","72346vZRkTF","player","destroy","emit","124445Qcmonr","send destroy","URL","12192TOtuyg","TAG_NAME","debugWarn","1303902UvsqpO","1929594DnxFEA","_destroy","FetchStreamWorker"];return(La=function(){return t})()}!function(t){const e=Da,s=t();for(;;)try{if(948431===-parseInt(e(356))/1*(parseInt(e(345))/2)+parseInt(e(367))/3+-parseInt(e(341))/4*(parseInt(e(360))/5)+parseInt(e(366))/6+parseInt(e(344))/7*(parseInt(e(363))/8)+parseInt(e(373))/9*(parseInt(e(350))/10)+-parseInt(e(347))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(La);class Ra extends h{constructor(t){const e=Da;super(),this[e(364)]=e(369),this[e(357)]=t,this.playing=!1,this[e(370)]=null,this.workerClearTimeout=null,this[e(349)]=null,this[e(372)]=null,this[e(374)]=null,this[e(354)]=0,this[e(371)]=ds(s=>{const i=e;t[i(359)](q[i(340)],(s/1e3).toFixed(2))}),this[e(339)]=null,this[e(375)](),this[e(352)]=!1,t.debugLog(this[e(364)],e(353))}[Ca(358)](){return new Promise((t,e)=>{const s=Da;this[s(370)]?(this[s(357)][s(342)](this.TAG_NAME,s(361)),this[s(370)][s(355)]({cmd:H[s(358)]}),this[s(372)]=t,this[s(374)]=setTimeout(()=>{const t=s;this[t(374)]=null,this[t(352)]||(this[t(357)][t(365)](this[t(364)],t(338)),this._destroy())},2e3)):(this[s(368)](),setTimeout(()=>{t()},0))})}_destroy(){const t=Ca;this.off(),this[t(374)]&&(clearTimeout(this[t(374)]),this.decoderWorkerCloseTimeout=null),this[t(349)]&&(window[t(362)][t(351)](this.workerUrl),this[t(349)]=null),this.workerClearTimeout&&(clearTimeout(this[t(346)]),this[t(346)]=null),this[t(343)](),this[t(371)]=null,this[t(370)]&&(this[t(370)].onmessage=null,this[t(370)][t(348)](),this[t(370)]=null),this[t(354)]=0,this[t(357)].debugLog(this[t(364)],t(358)),this[t(352)]=!0,this.destroyResolve&&(this[t(372)](),this[t(372)]=null)}[Ca(375)](){let t=Ai(_a);const e=new Worker(t);this.workerUrl=t,this.workerClearTimeout=setTimeout(()=>{window.URL.revokeObjectURL(this.workerUrl),this.workerUrl=null,this.workerClearTimeout=null},P),e.postMessage({cmd:H.init,debug:this.player._opt.debug,debugLevel:this.player._opt.debugLevel,debugUuid:this.player._opt.debugUuid}),e.onmessage=t=>{if(this._isDestroyed)return;const{demux:e}=this.player,s=t.data;switch(s.cmd){case H.buffer:if(this.player.isDestroyedOrClosed())return;this.streamRate&&this.streamRate(8*s.buffer.byteLength),e.dispatch(s.buffer);break;case H.fetchSuccess:this.emit(q.streamSuccess),this._startStreamRateInterval();break;case H.fetchClose:this.player.isCheckStreamEnd()?(e.close(),this.player.emit(q.streamEnd,"fetch done")):this.player.updateStreamEndInner();break;case H.fetchError:e.close(),this.emit(J.fetchError,s.message);break;case H.fetchErrorWorker:e.close(),this.player.emitError(J.fetchError,s.message);break;case H.bufferByteLength:this.tempStreamBufferByteLength=s.value;break;case H.destroyEnd:this._destroy()}},this.fetchWorker=e}_startStreamRateInterval(){this._stopStreamRateInterval(),this.streamRateInterval=setInterval(()=>{this.streamRate&&this.streamRate(0)},1e3)}_stopStreamRateInterval(){this.streamRateInterval&&(clearInterval(this.streamRateInterval),this.streamRateInterval=null)}fetchStream(t,e={}){this.player._times.streamStart=os(),this.fetchWorker.postMessage({cmd:H.fetch,url:t,isChrome:oi(),options:JSON.stringify(e)})}getStreamType(){return u.fetch}getStreamBufferByteLength(){return this.tempStreamBufferByteLength}}function Pa(){const t=["readyState","code is ","_stopCheckWsOpenTimeout","socket","_closeWebSocket","streamRate","12TMPUDo","1176455AKbxFp","340166lDYjNV","notConnect","wasClean","isDestroyedOrClosed","string","sendMessage","websocket error","3474336KhbmWc","socket close and requestAbort is true, so return","socket open","length","reason","websocket","_startCheckWsOpenTimeout","arraybuffer","_times","_startStreamRateInterval","close","websocket send message is","byteLength","6919209JepwBr","24744QuKRkT","dispatch","_closeWebSocket() socket is null or socket status is ","send","_isDestroyed","websocketOpenTimeout","websocketStringMsg","socket error","socketDestroyFnList","streamEnd","emit","s and status is ","socket close and code is ","requestAbort","updateStreamEndInner","data","debugError","streamStart","websocketFirstMessage","websocketClose","_stopStreamRateInterval","checkWsOpenTimeout","error","debugLog",", and msg is ","wsUrl","socketStatus","init","_createWebSocket","message","binaryType","open","2422MiTpkh",", and wasClean is ","wsErrorMsg","player","onopen","websocket Open Timeout form ","onclose","toFixed","forEach","358403tRcbjz","_handleMessage","websocket send message socket is null","socket close abnormally and code is ","TAG_NAME","isCheckStreamEnd","code","6237240IRRrrA","WebsocketStream","push","emitError","_opt","onmessage","destroy","streamRateInterval"];return(Pa=function(){return t})()}function xa(t,e){const s=Pa();return(xa=function(t,e){return s[t-=143]})(t,e)}const Ma=xa;!function(t){const e=xa,s=t();for(;;)try{if(626365===-parseInt(e(172))/1+-parseInt(e(195))/2*(-parseInt(e(193))/3)+parseInt(e(202))/4+parseInt(e(194))/5+parseInt(e(179))/6+-parseInt(e(163))/7*(parseInt(e(216))/8)+-parseInt(e(215))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Pa);class Ba extends h{constructor(t){const e=xa;super(),this.player=t,this[e(176)]=e(180),this.socket=null,this[e(157)]=X[e(196)],this[e(156)]=null,this.requestAbort=!1,this[e(224)]=[],this[e(192)]=ds(s=>{const i=e;t[i(226)](q.kBps,(s/1e3)[i(170)](2))}),this.streamRateInterval=null,this[e(152)]=null,this[e(165)]="",this._isDestroyed=!1,t.debugLog(this.TAG_NAME,e(158))}async[Ma(185)](){const t=Ma;this[t(220)]=!0,this[t(191)](),this._stopStreamRateInterval(),this[t(189)](),this[t(156)]=null,this.wsErrorMsg="",this.off(),this[t(166)][t(154)](this.TAG_NAME,t(185))}[Ma(211)](){const t=Ma;this[t(151)](),this[t(186)]=setInterval(()=>{const e=t;this.streamRate&&this[e(192)](0)},1e3)}[Ma(151)](){const t=Ma;this.streamRateInterval&&(clearInterval(this.streamRateInterval),this[t(186)]=null)}[Ma(208)](){const t=Ma;this[t(189)](),this[t(152)]=setTimeout(()=>{const e=t;if(this.socketStatus===X.notConnect){const t=e(168)+this.player._opt.websocketOpenTimeout+e(227)+this[e(157)];this[e(166)].debugError(this[e(176)],t),this[e(226)](J[e(221)],t)}},1e3*this[t(166)][t(183)][t(221)])}_stopCheckWsOpenTimeout(){const t=Ma;this[t(152)]&&(clearTimeout(this[t(152)]),this.checkWsOpenTimeout=null)}[Ma(159)](t={}){const e=Ma,s=this.player,{events:{proxy:i},demux:r}=s,n=t.protocols||[];this[e(190)]=new WebSocket(this.wsUrl,n),this[e(190)][e(161)]=e(209);const o=i(this[e(190)],e(162),()=>{const s=e;this[s(220)]||(this[s(166)][s(154)](this[s(176)],s(204)),this._stopCheckWsOpenTimeout(),this.socketStatus=X.open,this.emit(q.streamSuccess),this.player[s(226)](q.websocketOpen),this[s(211)](),t[s(149)]&&this[s(200)](t.websocketFirstMsg))}),a=i(this[e(190)],"message",t=>{const s=e;this._isDestroyed||this.player[s(198)]()||(typeof t[s(146)]!==s(199)?(this[s(192)]&&this.streamRate(8*t.data[s(214)]),this._handleMessage(t[s(146)])):this[s(166)][s(226)](q[s(222)],t[s(146)]))}),h=i(this[e(190)],"close",t=>{const s=e;if(this._isDestroyed)return;if(this[s(166)][s(198)]())return;if(this[s(166)].debugLog(this.TAG_NAME,s(143)+t[s(178)]+", and reason is "+t[s(206)]+", and wasClean is "+t[s(197)]),Pi(this[s(144)]))return this[s(144)]=!1,void this[s(166)][s(154)](this[s(176)],s(203));if(this[s(157)]===X.error){const e=s(188)+t.code+", and reason is "+t.reason+s(164)+t[s(197)]+s(155)+this[s(165)];return this[s(166)][s(182)](J.websocketError,e),void this[s(166)].debugLog(this[s(176)],"socket close and status is error, emit error and return")}let i=!1;1006===t[s(178)]&&(this[s(166)][s(147)](this[s(176)],s(175)+t.code),i=!0),this[s(157)]=X[s(212)],this.player[s(177)]()||i?(r[s(212)](),this[s(166)][s(226)](q[s(150)],t[s(178)]),this[s(166)].emit(q[s(225)],t[s(178)])):this[s(166)][s(145)]()}),l=i(this[e(190)],e(153),t=>{const s=e;if(this[s(220)])return;if(this[s(166)].isDestroyedOrClosed())return;if(Pi(this.requestAbort))return this[s(144)]=!1,void this[s(166)][s(154)](this.TAG_NAME,"socket error and requestAbort is true");this[s(166)].debugError(this[s(176)],s(223),t[s(160)]),this.socketStatus=X[s(153)];const i=t[s(160)]||s(201);this[s(165)]=i,r[s(212)](),this.player[s(154)](this[s(176)],"socket error:",i)});this[e(224)][e(181)](o,a,h,l)}[Ma(191)](){const t=Ma;!this[t(190)]||0!==this.socket.readyState&&1!==this[t(190)][t(187)]?this.socket&&this.player[t(154)](this[t(176)],t(218)+(this[t(190)]&&this[t(190)][t(187)])):(this[t(144)]=!0,this.socket[t(212)](1e3,"Client disconnecting")),this.socketDestroyFnList[t(205)]&&(this[t(224)][t(171)](t=>t()),this[t(224)]=[]),this[t(190)][t(167)]=null,this[t(190)][t(184)]=null,this[t(190)][t(169)]=null,this[t(190)].onerror=null,this[t(190)]=null,this.socketStatus=X.notConnect,this[t(192)]=null}[Ma(173)](t){const e=Ma,{demux:s}=this[e(166)];s?s[e(217)](t):this[e(166)].debugWarn(this[e(176)],"websocket handle message demux is null so return")}fetchStream(t,e){const s=Ma;this[s(166)][s(210)][s(148)]=os(),this[s(156)]=t,this[s(159)](e)}[Ma(200)](t){const e=Ma;this[e(190)]?this[e(157)]===X[e(162)]?(this[e(166)].debugLog(this[e(176)],e(213),t),this[e(190)][e(219)](t)):this[e(166)].debugError(this[e(176)],"websocket send message error and socket status is "+this.socketStatus):this[e(166)][e(147)](this[e(176)],e(174))}getStreamType(){return u[Ma(207)]}getStreamBufferByteLength(){return 0}}function Fa(){function t(t){return!0===t||"true"===t}const e="fetch",s="sendMessage",i="destroy",r="destroyEnd",n="buffer",o="websocketError",a="websocketClose",h="websocketOpen",l="websocketStringMsg",c="init",d="bufferByteLength";let u=new class{constructor(){this.TAG_NAME="WebsocketWorker",this.socket=null,this.wsUrl=null,this.requestAbort=!1,this.options={},this.debug=!1,this.debugLevel="warn",this.debugUuid=null,this.messageQueue=[],this.processInterval=null,this.MAX_CHUNK_SIZE=32768,this.currentBuffer=null,this.prevEmitTimestamp=null}destroy(){this._stopMessageProcessor(),!this.socket||0!==this.socket.readyState&&1!==this.socket.readyState||(this.requestAbort=!0,this.socket.close(1e3,"Client disconnecting")),this.socket.onopen=null,this.socket.onclose=null,this.socket.onerror=null,this.socket.onmessage=null,this.socket=null}fetchStream(t,e){this.wsUrl=t,this.options=e||{},this._createWebSocket(e)}sendMessage(t){this.socket?1===this.socket.readyState?(this.debugLog(this.TAG_NAME,"send message",t),this.socket.send(t)):this.debugError(this.TAG_NAME,`send message error and socket status is ${this.socket.readyState}`):this.debugError(this.TAG_NAME,"send message socket is null")}_createWebSocket(t){const e=t.protocols||[];this.socket=new WebSocket(this.wsUrl,e),this.socket.binaryType="arraybuffer",this.socket.onopen=this._handleWebsocketOpen.bind(this),this.socket.onclose=this._handleWebsocketClose.bind(this),this.socket.onerror=this._handleWebsocketError.bind(this),this.socket.onmessage=this._handleWebsocketMessage.bind(this)}_handleWebsocketOpen(){postMessage({cmd:h}),this.options&&this.options.websocketFirstMessage&&(this.debugLog(this.TAG_NAME,"send first message",this.options.websocketFirstMessage),this.sendMessage(this.options.websocketFirstMessage))}_handleWebsocketClose(e){if(t(this.requestAbort))return this.requestAbort=!1,void this.debugLog(this.TAG_NAME,"socket close and requestAbort is true, so return");postMessage({cmd:a,code:e.code,reason:e.reason,wasClean:e.wasClean})}_handleWebsocketError(e){t(this.requestAbort)?this.requestAbort=!1:postMessage({cmd:o,message:e.message})}_handleWebsocketMessage(t){this.messageQueue.push(t.data),this.processInterval||this._startMessageProcessor()}_startMessageProcessor(){this.processInterval||(this.processInterval=setInterval(()=>{this._processMessageQueue$2();const t=Date.now();null===this.prevEmitTimestamp&&(this.prevEmitTimestamp=t),t-this.prevEmitTimestamp>=1e3&&(this.prevEmitTimestamp=t,postMessage({cmd:d,value:this._getBufferLength()}))},10))}_getBufferLength(){let t=0;for(let e=0;e<this.messageQueue.length;e++)t+=this.messageQueue[e].byteLength||0;return this.currentBuffer&&(t+=this.currentBuffer.byteLength||0),t}_stopMessageProcessor(){this.processInterval&&(clearInterval(this.processInterval),this.processInterval=null),this.messageQueue=[],this.currentBuffer=null,this.prevEmitTimestamp=null}_processMessageQueue(){try{let t=0;if(this.currentBuffer){if(!(this.currentBuffer.byteLength<=this.MAX_CHUNK_SIZE)){const t=this.currentBuffer.slice(0,this.MAX_CHUNK_SIZE);return this._handleMessage(t),void(this.currentBuffer=this.currentBuffer.slice(this.MAX_CHUNK_SIZE))}this._handleMessage(this.currentBuffer),t+=this.currentBuffer.byteLength,this.currentBuffer=null}for(;this.messageQueue.length>0&&t<this.MAX_CHUNK_SIZE;){const e=this.messageQueue[0];if("string"==typeof e){postMessage({cmd:l,value:e}),this.messageQueue.shift();continue}const s=this.MAX_CHUNK_SIZE-t;if(!(e.byteLength<=s)){if(0===t){const t=e.slice(0,this.MAX_CHUNK_SIZE);this._handleMessage(t),this.messageQueue[0]=e.slice(this.MAX_CHUNK_SIZE)}else this.currentBuffer=e,this.messageQueue.shift();break}this._handleMessage(e),t+=e.byteLength,this.messageQueue.shift()}}catch(t){this.debugError(this.TAG_NAME,"_processMessageQueue error:",t)}}_processMessageQueue$2(){for(;this.messageQueue.length;){const t=this.messageQueue.shift();"string"==typeof t?postMessage({cmd:l,value:t}):this._handleMessage(t)}}_handleMessage(t){const e=new Uint8Array(t);postMessage({cmd:n,buffer:e},[e.buffer])}debugLog(t,...e){if(this.debug&&"debug"==this.debugLevel){const s=this.debugUuid?`[${this.debugUuid}]`:"";console.log(`JbPro${s}[✅✅✅][${t}]`,...e)}}debugWarn(t,...e){if(this.debug&&("debug"==this.debugLevel||"warn"==this.debugLevel)){const s=this.debugUuid?`[${this.debugUuid}]`:"";console.log(`JbPro${s}[❗❗❗][${t}]`,...e)}}debugError(t,...e){const s=this.debugUuid?`[${this.debugUuid}]`:"";console.error(`JbPro${s}[❌❌❌][${t}]`,...e)}};self.onmessage=n=>{const o=n.data;switch(o.cmd){case c:u.debug=t(o.debug),u.debugLevel=o.debugLevel,u.debugUuid=o.debugUuid,o.streamMaxChunkSize&&(u.MAX_CHUNK_SIZE=o.streamMaxChunkSize);break;case e:u.fetchStream(o.url,o.options);break;case i:u.destroy(),u=null,postMessage({cmd:r});break;case s:u.sendMessage(o.message)}}}const Ua=Na;function Oa(){const t=["174823fzpgir","2300706yVtvYF","toFixed","workerUrl","kBps","_stopCheckWsOpenTimeout","send destroy","destroy","init","2888695efcKfF","_isDestroyed","decoderWorkerCloseTimeout","socketStatus","terminate","94787wswqcS","notConnect","wsErrorMsg","TAG_NAME","websocketWorker","576970BKJprx","_closeWebSocket","3169352RavjMC","99XcGNYO","tempStreamBufferByteLength","workerClearTimeout","streamRateInterval","URL","_destroy","_stopStreamRateInterval","debugLog","destroyResolve","174LTbGZF","4hEIvFD","checkWsOpenTimeout","_initWebsocketWorker","player","wsUrl","11lGSWbi","debugWarn","163842jLtrad","off"];return(Oa=function(){return t})()}function Na(t,e){const s=Oa();return(Na=function(t,e){return s[t-=391]})(t,e)}!function(t){const e=Na,s=t();for(;;)try{if(468040===parseInt(e(409))/1*(parseInt(e(411))/2)+parseInt(e(414))/3+parseInt(e(404))/4*(-parseInt(e(422))/5)+parseInt(e(403))/6*(parseInt(e(427))/7)+-parseInt(e(393))/8+-parseInt(e(394))/9*(parseInt(e(391))/10)+parseInt(e(413))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Oa);class Va extends h{constructor(t){const e=Na;super(),this[e(407)]=t,this[e(430)]="WebsocketStreamWorker",this[e(408)]=null,this[e(425)]=X[e(428)],this[e(431)]=null,this[e(396)]=null,this[e(416)]=null,this[e(402)]=null,this[e(424)]=null,this.streamRate=ds(s=>{const i=e;t.emit(q[i(417)],(s/1e3)[i(415)](2))}),this[e(397)]=null,this[e(405)]=null,this[e(429)]="",this[e(395)]=0,this[e(406)](),this._isDestroyed=!1,this.player.debugLog(this[e(430)],e(421))}[Ua(420)](){return new Promise((t,e)=>{const s=Na;this[s(431)]?(this[s(407)][s(401)](this.TAG_NAME,s(419)),this[s(392)](),this.destroyResolve=t,this[s(424)]=setTimeout(()=>{const t=s;this[t(424)]=null,this[t(423)]||(this[t(407)][t(410)](this[t(430)],"send close but not response and destroy directly"),this[t(399)]())},2e3)):(this[s(399)](),t())})}_destroy(){const t=Ua;this[t(412)](),this[t(418)](),this.decoderWorkerCloseTimeout&&(clearTimeout(this[t(424)]),this[t(424)]=null),this[t(416)]&&(window[t(398)].revokeObjectURL(this[t(416)]),this[t(416)]=null),this[t(396)]&&(clearTimeout(this[t(396)]),this.workerClearTimeout=null),this[t(400)](),this.streamRate=null,this[t(431)]&&(this[t(431)].onmessage=null,this[t(431)][t(426)](),this.websocketWorker=null),this[t(408)]=null,this[t(429)]="",this[t(395)]=0,this[t(407)][t(401)](this[t(430)],"destroy"),this._isDestroyed=!0,this.destroyResolve&&(this[t(402)](),this[t(402)]=null)}[Ua(406)](){let t=Ai(Fa);const e=new Worker(t);this.workerUrl=t,this.workerClearTimeout=setTimeout(()=>{window.URL.revokeObjectURL(this.workerUrl),this.workerUrl=null,this.workerClearTimeout=null},P),e.postMessage({cmd:K.init,debug:this.player._opt.debug,debugLevel:this.player._opt.debugLevel,debugUuid:this.player._opt.debugUuid,streamMaxChunkSize:this.player._opt.streamMaxChunkSize}),e.onmessage=t=>{if(this._isDestroyed)return;const{demux:e}=this.player,s=t.data;switch(s.cmd){case K.buffer:if(this.player.isDestroyedOrClosed())return;this.streamRate&&this.streamRate(8*s.buffer.byteLength),e.dispatch(s.buffer);break;case K.websocketOpen:this.player.debugLog(this.TAG_NAME,"socket open"),this._stopCheckWsOpenTimeout(),this.socketStatus=X.open,this.emit(q.streamSuccess),this.player.emit(q.websocketOpen),this._startStreamRateInterval();break;case K.websocketClose:if(this.player.isDestroyedOrClosed())return;if(this.player.debugLog(this.TAG_NAME,`socket close and code is ${s.code}, and reason is ${s.reason}, and wasClean is ${s.wasClean}`),this.socketStatus===X.error){const t=`code is ${s.code}, and reason is ${s.reason}, and wasClean is ${s.wasClean}, and msg is ${this.wsErrorMsg}`;return this.player.emitError(J.websocketError,t),void this.player.debugLog(this.TAG_NAME,"socket close and status is error, emit error and return")}let t=!1;1006===s.code&&(this.player.debugError(this.TAG_NAME,`socket close abnormally and code is ${s.code}`),t=!0),this.socketStatus=X.close,this.player.isCheckStreamEnd()||t?(e.close(),this.player.emit(q.websocketClose,s.code),this.player.emit(q.streamEnd,s.code)):this.player.updateStreamEndInner();break;case K.websocketError:if(this.player.isDestroyedOrClosed())return;this.player.debugError(this.TAG_NAME,"socket error",s.message),this.socketStatus=X.error;const i=s.message||"websocket error";this.wsErrorMsg=i,e.close(),this.player.debugLog(this.TAG_NAME,"socket error:",i);break;case K.destroyEnd:this._destroy();break;case K.websocketStringMsg:this.player.emit(q.websocketStringMsg,s.value);break;case K.bufferByteLength:this.tempStreamBufferByteLength=s.value}},this.websocketWorker=e}_startStreamRateInterval(){this._stopStreamRateInterval(),this.streamRateInterval=setInterval(()=>{this.streamRate&&this.streamRate(0)},1e3)}_stopStreamRateInterval(){this.streamRateInterval&&(clearInterval(this.streamRateInterval),this.streamRateInterval=null)}_startCheckWsOpenTimeout(){this._stopCheckWsOpenTimeout(),this.checkWsOpenTimeout=setTimeout(()=>{if(this.checkWsOpenTimeout=null,!this._isDestroyed&&this.socketStatus===X.notConnect){const t=`websocket Open Timeout form ${this.player._opt.websocketOpenTimeout}s and status is ${this.socketStatus}`;this.player.debugError(this.TAG_NAME,t),this.emit(J.websocketOpenTimeout,t)}},1e3*this.player._opt.websocketOpenTimeout)}_stopCheckWsOpenTimeout(){this.checkWsOpenTimeout&&(clearTimeout(this.checkWsOpenTimeout),this.checkWsOpenTimeout=null)}_closeWebSocket(){this.websocketWorker&&this.websocketWorker.postMessage({cmd:K.destroy})}fetchStream(t,e){this.player._times.streamStart=os(),this.wsUrl=t,this.websocketWorker&&this.websocketWorker.postMessage({cmd:K.fetch,url:t,options:e})}sendMessage(t){this.websocketWorker&&this.websocketWorker.postMessage({cmd:K.sendMessage,message:t})}getStreamType(){return u.websocket}getStreamBufferByteLength(){return this.tempStreamBufferByteLength}}const ja=Ga;function Wa(){const t=["then","debugError","catch","init","off","emit","_times","1302124JTeaxl","144jYsUkP","hlsError","getStreamBufferByteLength","20546tqSptb","destroy","loadSource","player","8373483xyjCPe","hls","4038360uTsdxk","streamStart","6928815TFUOJF","loadSource error ","6gkOCQu","1821825jTaIKH","HlsStream","10415937sEZNcH","debugLog"];return(Wa=function(){return t})()}function Ga(t,e){const s=Wa();return(Ga=function(t,e){return s[t-=301]})(t,e)}!function(t){const e=Ga,s=t();for(;;)try{if(786448===parseInt(e(309))/1*(-parseInt(e(306))/2)+parseInt(e(320))/3+parseInt(e(305))/4+parseInt(e(317))/5*(parseInt(e(319))/6)+-parseInt(e(322))/7+parseInt(e(315))/8+parseInt(e(313))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Wa);class za extends h{constructor(t){const e=Ga;super(),this[e(312)]=t,t[e(323)](e(321),e(301))}async destroy(){const t=Ga;return this[t(302)](),this[t(312)][t(323)]("HlsStream",t(310)),!0}fetchStream(t){const e=Ga,{hlsDecoder:s,debug:i}=this[e(312)];this[e(312)][e(304)][e(316)]=os(),s[e(311)](t)[e(324)](()=>{const t=e;this[t(312)][t(323)](t(321),"loadSource success"),this[t(303)](q.streamSuccess)})[e(326)](t=>{const s=e;this[s(312)][s(325)](s(321),s(318),t),this[s(303)](J[s(307)],t)})}getStreamType(){return u[Ga(314)]}[ja(308)](){return 0}}const Ha=qa;function Ka(){const t=["30quOYDg","loadSource success","location","catch","player","indexOf","10460628QjfdLj","WebrtcStream","destroy","search","original url is ","1004BlpHCq","streamSuccess","16910ZNBDSN","5370632cwhJjt","810134mUWawa","then","9MEHNyz","webrtc:","debugLog","21903HwZidr","emit","getStreamType","origin","70218Jghirs","isWebrtcForM7S","2230430cozhYZ","427iYsEZy","init","webrctUrl","pathname","off","streamStart","webrtcError","replace","fetchStream","11qJqdTR","protocol","/webrtc/play"];return(Ka=function(){return t})()}function qa(t,e){const s=Ka();return(qa=function(t,e){return s[t-=266]})(t,e)}!function(t){const e=qa,s=t();for(;;)try{if(438713===-parseInt(e(284))/1+parseInt(e(269))/2*(parseInt(e(289))/3)+parseInt(e(280))/4*(parseInt(e(282))/5)+parseInt(e(293))/6*(parseInt(e(296))/7)+-parseInt(e(283))/8*(-parseInt(e(286))/9)+-parseInt(e(295))/10+-parseInt(e(266))/11*(parseInt(e(275))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Ka);class Qa extends h{constructor(t){const e=qa;super(),this[e(273)]=t,this[e(298)]=null,t[e(288)]("WebrtcStream",e(297))}async[Ha(277)](){const t=Ha;return this[t(298)]=null,this[t(300)](),this[t(273)][t(288)](t(276),"destroy"),!0}[Ha(304)](t,e={}){const s=Ha,{webrtc:i,debug:r}=this.player;if(this[s(273)]._times[s(301)]=os(),this[s(298)]=t[s(303)](s(287),window[s(271)][s(267)]),this[s(273)][s(294)]()&&-1===this.webrctUrl[s(274)]("/webrtc/play")){const e=new URL(this[s(298)]),i=s(268)+e[s(299)];this.webrctUrl=e[s(292)]+i+e[s(278)],this[s(273)][s(288)](s(276),s(279)+t+", and new url is: "+this[s(298)])}i.loadSource(this[s(298)],e)[s(285)](()=>{const t=s;this[t(273)].debugLog(t(276),t(270)),this[t(290)](q[t(281)])})[s(272)](t=>{const e=s;this[e(273)].debugError(e(276),"loadSource error",t),this[e(290)](J[e(302)],t)})}[Ha(291)](){return u.webrtc}getStreamBufferByteLength(){return 0}}const Ya=Xa;function Ja(){const t=["fetch done","46944CGRFoo","streamStart","emitError","then","_times","getStreamType","1582465jaYMEY","kBps","catch","emit","string","2992580xrUGYr","_createWebTransport","webTransport","toString","wtUrl","startStreamRateInterval","debugError","3oegCZL",'" string so return',"writableStream.abort","3582GOHpmV","fetchStream","WebTransportLoader","1385482nptDWQ","close","transport","_createWebTransport-ready","destroy","debugLog","dispatch","stopStreamRateInterval","webTransportError","streamRate","7670118LFlNfb","TAG_NAME","_isDestroyed","player","debugWarn","streamEnd","40YUdIcH","580FrLhiM","streamRateInterval","924NcsRgP","7520phWWNs","readable","46532zUZbVq","byteLength","createBidirectionalStream"];return(Ja=function(){return t})()}function Xa(t,e){const s=Ja();return(Xa=function(t,e){return s[t-=431]})(t,e)}!function(t){const e=Xa,s=t();for(;;)try{if(803068===-parseInt(e(462))/1+-parseInt(e(467))/2*(-parseInt(e(474))/3)+-parseInt(e(452))/4*(parseInt(e(447))/5)+parseInt(e(440))/6+-parseInt(e(480))/7*(-parseInt(e(446))/8)+parseInt(e(477))/9*(parseInt(e(450))/10)+parseInt(e(449))/11*(-parseInt(e(456))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Ja);class $a extends h{constructor(t){const e=Xa;super(),this[e(443)]=t,this[e(432)]=null,this[e(471)]=null,this.streamRate=ds(s=>{const i=e;t[i(465)](q[i(463)],(s/1e3).toFixed(2))}),this[e(448)]=null,this[e(442)]=!1,t[e(435)](e(479),"init")}async[Ya(434)](){const t=Ya;return this[t(442)]=!0,this.abort(),this.off(),this[t(443)][t(435)](t(479),t(434)),!0}[Ya(472)](){const t=Ya;this[t(437)](),this[t(448)]=setInterval(()=>{const e=t;this[e(439)]&&this[e(439)](0)},1e3)}[Ya(437)](){const t=Ya;this.streamRateInterval&&(clearInterval(this[t(448)]),this[t(448)]=null)}[Ya(468)](){const t=Ya,e=this[t(443)],{demux:s}=e;try{this.transport=new WebTransport(this[t(471)]),this[t(432)].ready[t(459)](()=>{const e=t;this.emit(q.streamSuccess),this[e(472)](),this.transport[e(454)]()[e(459)](t=>{const i=e;t[i(451)].pipeTo(new WritableStream({write:t=>{const e=i;if(!this[e(442)]){if(typeof t!==e(466))return this[e(439)]&&this[e(439)](8*t[e(453)]),s[e(436)](t);this[e(443)][e(444)](this[e(441)],'writableStream.write() and value is "'+t+e(475))}},close:()=>{const t=i;this[t(442)]||(s[t(431)](),this.player[t(465)](q[t(445)],t(455)))},abort:t=>{const e=i;this[e(442)]||(this.player[e(473)](this.TAG_NAME,e(476),t[e(470)](),t),this[e(443)][e(458)](J[e(438)],t[e(470)]()),s[e(431)]())}}))})})[t(464)](e=>{const s=t;this[s(443)].emitError(J.webTransportError,e[s(470)]()),this[s(443)][s(444)]("WebTransportLoader",s(433),e)})}catch(e){this.player[t(444)](t(479),t(468),e)}}[Ya(478)](t){const e=Ya;this[e(443)][e(460)][e(457)]=os(),this[e(471)]=t.replace(/^wt:/,"https:"),this[e(468)]()}abort(){const t=Ya;if(this.transport)try{this[t(432)][t(431)](),this.transport=null}catch(e){this[t(432)]=null}}[Ya(461)](){return u[Ya(469)]}getStreamBufferByteLength(){return 0}}const Za=th;function th(t,e){const s=eh();return(th=function(t,e){return s[t-=394]})(t,e)}function eh(){const t=["websocket","36bjnHyh","fetchStream","34awWtqG","off","decoderWorker","_opt","10yyljdD","debugLog","player","streamStart","13850456LOpyTa","47757xHiBwu","protocol","1033249NePKKv","worker","WorkerStream","2132788ilkSPz","5dsITln","sendMessage","init","1407448ZKsjxT","1277859vLfgiF","workUrl","_times","11174463YrPBNi","24HoAaxW"];return(eh=function(){return t})()}!function(t){const e=th,s=t();for(;;)try{if(897095===parseInt(e(409))/1+-parseInt(e(418))/2*(-parseInt(e(400))/3)+-parseInt(e(405))/4*(parseInt(e(406))/5)+-parseInt(e(414))/6*(-parseInt(e(402))/7)+-parseInt(e(399))/8+parseInt(e(413))/9*(parseInt(e(395))/10)+parseInt(e(410))/11*(-parseInt(e(416))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(eh);class sh extends h{constructor(t){const e=th;super(),this[e(397)]=t,this.workUrl=null,t[e(396)](e(404),e(408))}async destroy(){const t=th;return this[t(411)]=null,this[t(419)](),this[t(397)][t(396)](t(404),"destroy"),!0}[Za(407)](t){const e=Za;this[e(397)][e(420)].workerSendMessage(t)}[Za(417)](t,e={}){const s=Za;this[s(411)]=t,this[s(397)][s(412)][s(398)]=os(),this[s(397)][s(420)].workerFetchStream(t,e)}getStreamType(){const t=Za,e=this[t(397)][t(394)][t(401)]===c.fetch?u.fetch:u[t(415)];return u[t(403)]+" "+e}getStreamBufferByteLength(){return 0}}function ih(){const t=["emit","debugError","5276259iemtST","3314215mHkDxg","streamStart","player","getStreamBufferByteLength","247934JtPhnr","_times","1732488yuAgLY","catch","init","loadSource success","168306xExfoo","4ThjKXs","8576910hRkTkX","AliyunRtcLoader","loadSource error","then","streamSuccess","aliyunRtcError","destroy","7oysvhA","off","39jXOIVl","TAG_NAME","21374890KzPoEG","debugLog"];return(ih=function(){return t})()}const rh=nh;function nh(t,e){const s=ih();return(nh=function(t,e){return s[t-=152]})(t,e)}!function(t){const e=nh,s=t();for(;;)try{if(759396===-parseInt(e(173))/1+-parseInt(e(179))/2*(parseInt(e(162))/3)+parseInt(e(152))/4*(-parseInt(e(169))/5)+-parseInt(e(153))/6*(-parseInt(e(160))/7)+-parseInt(e(175))/8+-parseInt(e(168))/9+parseInt(e(164))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(ih);class oh extends h{constructor(t){const e=nh;super(),this.TAG_NAME=e(154),this[e(171)]=t,t.debugLog(this[e(163)],e(177))}async[rh(159)](){const t=rh;return this[t(161)](),this[t(171)][t(165)](this[t(163)],t(159)),!0}fetchStream(t){const e=rh,{aliyunRtcDecoder:s}=this[e(171)];this[e(171)][e(174)][e(170)]=os(),s.loadSource(t)[e(156)](()=>{const t=e;this.player[t(165)](this[t(163)],t(178)),this[t(166)](q[t(157)])})[e(176)](t=>{const s=e;this[s(171)][s(167)](this.TAG_NAME,s(155),t),this[s(166)](J[s(158)],t)})}getStreamType(){return u.aliyunRtc}[rh(172)](){return 0}}const ah=hh;function hh(t,e){const s=lh();return(hh=function(t,e){return s[t-=314]})(t,e)}function lh(){const t=["2996703tvXwFP","767405ezowLF","loadSource error","fetchStream","MP4StreamLoader","loadSource","emit","getStreamBufferByteLength","debugError","streamStart","_times","54Mrgycw","playVodMp4Error","5814688BxWLnO","player","debugLog","emitError","1120766kpjUHT","destroy","streamSuccess","loadSource success","30ZOAvXw","3728872mMvpdT","TAG_NAME","1099044CoMYZx","init","3OkHIrq","4755359KKiMml","then"];return(lh=function(){return t})()}!function(t){const e=hh,s=t();for(;;)try{if(968773===parseInt(e(330))/1+-parseInt(e(323))/2*(-parseInt(e(332))/3)+-parseInt(e(319))/4+parseInt(e(336))/5*(-parseInt(e(317))/6)+parseInt(e(333))/7+parseInt(e(328))/8+-parseInt(e(335))/9*(-parseInt(e(327))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(lh);class ch extends h{constructor(t){const e=hh;super(),this[e(329)]=e(339),this[e(320)]=t,t[e(321)](this[e(329)],e(331))}[ah(324)](){const t=ah;this.off(),this[t(320)][t(321)](this[t(329)],t(324))}[ah(338)](t){const e=ah,{mp4Decoder:s}=this[e(320)];this[e(320)][e(316)][e(315)]=os(),s[e(340)](t)[e(334)](()=>{const t=e;this[t(320)].debugLog(this[t(329)],t(326)),this[t(341)](q[t(325)])}).catch(t=>{const s=e;this[s(320)][s(314)](this[s(329)],s(337),t),this[s(320)][s(322)](J[s(318)],t)})}getStreamType(){return u.mp4Vod}[ah(342)](){return 0}}function dh(){var t=["10315566tYbaSb","7PIjnSr","player","3tOOJBl","36952KBfRyy","209198XizLNj","2427174fHgLQP","init","1004099MeLokn","570138XZlToE","destroy","235VjIqHE","940SwQYmt","12479304GpCyNi","TAG_NAME","EmptyLoader"];return(dh=function(){return t})()}function uh(t,e){var s=dh();return(uh=function(t,e){return s[t-=201]})(t,e)}!function(t){for(var e=uh,s=t();;)try{if(798710===parseInt(e(215))/1+-parseInt(e(216))/2*(parseInt(e(210))/3)+-parseInt(e(211))/4*(parseInt(e(202))/5)+-parseInt(e(213))/6+-parseInt(e(208))/7*(-parseInt(e(204))/8)+parseInt(e(207))/9+parseInt(e(203))/10*(-parseInt(e(212))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(dh);class ph{constructor(t){var e=uh;this[e(209)]=t,this[e(205)]=e(206),this[e(209)].debugLog(this[e(205)],e(214))}destroy(){var t=uh;this[t(209)].debugLog(this[t(205)],t(201))}fetchStream(){}getStreamBufferByteLength(){return 0}}const fh=gh;function mh(){const t=["fetchStream","flvVod","loadSource error","getStreamBufferByteLength","off","streamSuccess","1208665sanRAs","streamStart","then","debugError","10gjuGaK","emitError","emit","4358106SoouNY","TAG_NAME","debugLog","16961040DCNHvD","loadSource","917141schqYy","player","destroy","init","196767KwXvEi","FlvVodStreamLoader","catch","914228KLkDKg","loadSource success","1231720kBvgcL"];return(mh=function(){return t})()}function gh(t,e){const s=mh();return(gh=function(t,e){return s[t-=110]})(t,e)}!function(t){const e=gh,s=t();for(;;)try{if(641799===-parseInt(e(137))/1+parseInt(e(129))/2*(parseInt(e(113))/3)+-parseInt(e(116))/4+parseInt(e(125))/5+-parseInt(e(132))/6+-parseInt(e(118))/7+parseInt(e(135))/8)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(mh);class yh extends h{constructor(t){const e=gh;super(),this.TAG_NAME=e(114),this[e(110)]=t,t.debugLog(this[e(133)],e(112))}[fh(111)](){const t=fh;this[t(123)](),this[t(110)][t(134)](this[t(133)],t(111))}[fh(119)](t){const e=fh,{flvVodDecoder:s}=this[e(110)];this[e(110)]._times[e(126)]=os(),s[e(136)](t)[e(127)](()=>{const t=e;this[t(110)].debugLog(this[t(133)],t(117)),this[t(131)](q[t(124)])})[e(115)](t=>{const s=e;this.player[s(128)](this[s(133)],s(121),t),this[s(110)][s(130)](J.playVodFlvError,t)})}getStreamType(){return u[fh(120)]}[fh(122)](){return 0}}const Ah=bh;function bh(t,e){const s=vh();return(bh=function(t,e){return s[t-=436]})(t,e)}function vh(){const t=["fetch","201208DUcWUC","9nhvjeU","3205842RKqyGu","207640rvntIo","1987296RtkUVl","player","hls","getLoaderFactory","webTransport","webrtc","playVod","11204816PiZwgH","738328VMpTEY","52wkJLSq","_opt","playerAudio","1135005qnOWNQ","websocket"];return(vh=function(){return t})()}!function(t){const e=bh,s=t();for(;;)try{if(801248===parseInt(e(445))/1+-parseInt(e(437))/2+-parseInt(e(449))/3+parseInt(e(446))/4*(parseInt(e(436))/5)+-parseInt(e(454))/6+parseInt(e(452))/7+parseInt(e(444))/8*(parseInt(e(453))/9))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(vh);class Sh{constructor(t){const e=bh;return new(Sh[e(440)](t[e(447)]))(t)}static[Ah(440)](t){const e=Ah,{protocol:s,useWasm:i,playType:r,useWCS:n,useMSE:o,demuxUseWorker:a,mainThreadFetchUseWorker:h,isFmp4:l,isFlv:d,isUseFileProtocol:u,useMThreading:f}=t;return $i()?ph:r===p.playVod&&l?ch:r===p[e(443)]&&d?yh:s===c[e(439)]?za:s===c[e(442)]?Qa:s===c[e(441)]?$a:s===c.aliyunRtc?oh:s===c[e(451)]?r===p[e(448)]?sh:r===p[e(438)]?i&&!mi(t)?u?ka:sh:a?sh:h?Ra:ka:n||o?a?sh:h?Ra:ka:u?ka:sh:s===c[e(450)]?r===p[e(448)]?sh:r===p.player?i&&!mi(t)?u?Ba:sh:a?sh:h?Va:Ba:n||o?a?sh:h?Va:Ba:u?Ba:sh:void 0}}var Eh=Ih;!function(t){for(var e=Ih,s=t();;)try{if(235864===parseInt(e(1201))/1*(-parseInt(e(1244))/2)+-parseInt(e(1204))/3+-parseInt(e(1155))/4*(parseInt(e(710))/5)+parseInt(e(833))/6*(parseInt(e(983))/7)+parseInt(e(1237))/8*(-parseInt(e(1259))/9)+parseInt(e(1197))/10*(-parseInt(e(922))/11)+parseInt(e(1185))/12*(parseInt(e(1222))/13))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(kh);var wh=me(function(t,e){!function(e){var s=Ih;s(1092)==s(1092)&&s(1092)!==s(635)?t[s(676)]=e():"undefined"===s(886)&&(void 0)[s(831)]?(void 0)([],e):(typeof window!==s(635)?window:typeof ge[s(1099)]!==s(635)?fe:typeof self!==s(635)?self:this)[s(751)]=e()}(function(){return function t(e,s,i){var r=Ih;function n(r,a){var h=Ih;if(!s[r]){if(!e[r]){var l=h(886)==typeof ge[h(851)]&&ge[h(851)];if(!a&&l)return l(r,!0);if(o)return o(r,!0);var c=new Error(h(607)+r+"'");throw c.code=h(492),c}var d=s[r]={exports:{}};e[r][0][h(804)](d[h(676)],function(t){return n(e[r][1][t]||t)},d,d[h(676)],t,e,s,i)}return s[r][h(676)]}for(var o=r(886)==typeof ge[r(851)]&&ge[r(851)],a=0;a<i[r(531)];a++)n(i[a]);return n}({1:[function(t,e,s){var i=Ih;Object.defineProperty(s,i(995),{value:!0});var r,n,o,a=t(i(503)),h=t(i(750)),l=t("./tools"),c=t(i(1035))[i(939)];(n=r||(r={}))[n[(o=i)(671)]=1]=o(671),n[n[o(844)]=2]="STATE_SIZE",n[n.STATE_CONTENT=3]=o(977);var d=function(){var t=i;function e(){var t=Ih;this._buffer=new(a[t(774)])(0),this._tag_stack=[],this._state=r.STATE_TAG,this[t(901)]=0,this[t(724)]=0,this[t(1023)]=c,this[t(599)]=[]}return e[t(1025)][t(598)]=function(e){this[t(615)](e);var s=this._result;return this._result=[],s},e[t(1025)].readChunk=function(e){var s=t;for(this[s(786)]=l.concat([this[s(786)],new a.Buffer(e)]);this[s(901)]<this[s(786)][s(531)]&&(this[s(590)]!==r[s(671)]||this[s(737)]())&&(this[s(590)]!==r[s(844)]||this[s(746)]())&&(this[s(590)]!==r[s(977)]||this.readContent()););},e.prototype[t(1009)]=function(e){var s=t;return this[s(1023)][e]||{name:s(1128),level:-1,type:s(1128),description:s(1128)}},e.prototype[t(737)]=function(){var e=t;if(this[e(901)]>=this[e(786)].length)return!1;var s=a[e(585)](this[e(786)],this._cursor);if(null==s)return!1;var i=this._buffer[e(1173)](this[e(901)],this[e(901)]+s[e(531)])[e(776)](function(t,s,i,r){var n=e;return t+s*Math[n(1240)](16,2*(r[n(531)]-1-i))},0),n=this[e(1009)](i),o={EBML_ID:i[e(1037)](16),schema:n,type:n[e(1221)],name:n[e(589)],level:n[e(1115)],tagStart:this[e(724)],tagEnd:this._total+s[e(531)],sizeStart:this[e(724)]+s[e(531)],sizeEnd:null,dataStart:null,dataEnd:null,dataSize:null,data:null};return this[e(954)][e(1144)](o),this._cursor+=s[e(531)],this[e(724)]+=s.length,this._state=r[e(844)],!0},e[t(1025)][t(746)]=function(){var e=t;if(this._cursor>=this._buffer.length)return!1;var s=a.readVint(this[e(786)],this._cursor);if(null==s)return!1;var i=this[e(954)][this._tag_stack[e(531)]-1];return i.sizeEnd=i[e(1072)]+s.length,i.dataStart=i[e(1209)],i[e(605)]=s[e(740)],-1===s.value?(i.dataEnd=-1,"m"===i[e(1221)]&&(i[e(1133)]=!0)):i[e(1094)]=i[e(1209)]+s.value,this[e(901)]+=s[e(531)],this[e(724)]+=s.length,this[e(590)]=r[e(977)],!0},e.prototype.readContent=function(){var e=t,s=this[e(954)][this[e(954)].length-1];if("m"===s[e(1221)]){if(s[e(829)]=!1,this[e(599)].push(s),this[e(590)]=r[e(671)],0===s.dataSize){var i=Object[e(863)]({},s,{isEnd:!0});this._result[e(1144)](i),this[e(954)][e(1216)]()}return!0}if(this._buffer.length<this._cursor+s[e(605)])return!1;var n=this[e(786)][e(1173)](this._cursor,this[e(901)]+s[e(605)]);switch(this[e(786)]=this[e(786)][e(1173)](this[e(901)]+s[e(605)]),s.data=n,s[e(1221)]){case"u":s[e(740)]=n[e(680)](0,n[e(531)]);break;case"i":s[e(740)]=n[e(899)](0,n[e(531)]);break;case"f":s[e(740)]=4===s[e(605)]?n[e(1074)](0):8===s.dataSize?n[e(1212)](0):(console.warn(e(734)+s[e(605)]+e(512)),0);break;case"s":s.value=n[e(1037)]("ascii");break;case"8":s[e(740)]=n[e(1037)](e(1169));break;case"b":s[e(740)]=n;break;case"d":s[e(740)]=a.convertEBMLDateToJSDate(new(h[e(956)])(n)[e(958)]())}if(null===s.value)throw new Error(e(1180)+s[e(1221)]);for(this[e(599)][e(1144)](s),this[e(724)]+=s[e(605)],this[e(590)]=r[e(671)],this[e(901)]=0,this[e(954)][e(1216)]();this[e(954)][e(531)]>0;){var o=this[e(954)][this[e(954)][e(531)]-1];if(o.dataEnd<0)return this[e(954)].pop(),!0;if(this._total<o[e(1094)])break;if("m"!==o[e(1221)])throw new Error(e(506));i=Object.assign({},o,{isEnd:!0});this[e(599)].push(i),this._tag_stack[e(1216)]()}return!0},e}();s[i(1109)]=d},{"./tools":5,"int64-buffer":15,"matroska/lib/schema":17}],2:[function(t,e,s){var i=Ih;Object.defineProperty(s,i(995),{value:!0});var r=t(i(503)),n=t("./tools"),o=t(i(1035)).byEbmlID,a=function(){var t=i;function e(){var t=Ih;this[t(1023)]=o,this[t(782)]=[],this[t(935)]=[]}return e[t(1025)].encode=function(e){var s=t,i=this;return r[s(873)](e[s(776)](function(t,e){var r=s;return t[r(873)](i[r(1095)](e))},[]))[s(1187)]},e[t(1025)][t(1095)]=function(e){var s=t;return"m"===e[s(1221)]?e[s(829)]?this[s(806)](e):this[s(1079)](e):this[s(967)](e),this[s(885)]()},e[t(1025)].flush=function(){var e=t,s=this._buffers;return this[e(782)]=[],s},e[t(1025)][t(1009)]=function(e){for(var s=t,i=Object[s(912)](this._schema)[s(485)](Number),r=0;r<i[s(531)];r++){var o=i[r];if(this[s(1023)][o][s(589)]===e)return new n.Buffer(o[s(1037)](16),s(1047))}return null},e.prototype[t(967)]=function(e){var s=t,i=e.name,n=this[s(1009)](i),o=e.data;if(null==n)throw new Error(s(972)+i);var a=r[s(1054)](n,o);this[s(935)][s(531)]>0?this._stack[this[s(935)][s(531)]-1][s(1245)][s(1144)]({tagId:n,elm:e,children:[],data:a}):this[s(782)]=this[s(782)].concat(a)},e[t(1025)][t(1079)]=function(e){var s=t,i=e[s(589)],o=this.getSchemaInfo(i);if(null==o)throw new Error("No schema entry found for "+i);if(e.unknownSize){var a=r[s(1054)](o,new(n[s(774)])(0),e[s(1133)]);this[s(782)]=this[s(782)][s(873)](a)}else{var h={tagId:o,elm:e,children:[],data:null};this[s(935)].length>0&&this[s(935)][this[s(935)][s(531)]-1].children[s(1144)](h),this[s(935)][s(1144)](h)}},e[t(1025)][t(806)]=function(e){var s=t;e.name;var i=this._stack[s(1216)]();if(null==i)throw new Error(s(1248));if(i[s(603)][s(589)]!==e[s(589)])throw new Error(s(1248));var n=i[s(1245)][s(776)](function(t,e){var i=s;if(null===e[i(1285)])throw new Error(i(1248));return t[i(873)](e[i(1285)])},[]),o=r.concat(n);"m"===i[s(603)][s(1221)]?i.data=r[s(1054)](i[s(834)],o,i[s(603)][s(1133)]):i.data=r[s(1054)](i[s(834)],o),this[s(935)][s(531)]<1&&(this[s(782)]=this[s(782)].concat(i[s(1285)]))},e}();s[i(1109)]=a},{"./tools":5,"matroska/lib/schema":17}],3:[function(t,e,s){var i,r,n=Ih,o=this&&this[n(908)]||(i=n,r=Object[i(1148)]||{__proto__:[]}instanceof Array&&function(t,e){t[i(718)]=e}||function(t,e){var s=i;for(var r in e)e[s(616)](r)&&(t[r]=e[r])},function(t,e){var s=i;function n(){this[Ih(1263)]=t}r(t,e),t[s(1025)]=null===e?Object[s(1062)](e):(n[s(1025)]=e[s(1025)],new n)});Object[n(1218)](s,n(995),{value:!0});var a=t(n(1050)),h=t(n(503)),l=function(t){var e=n;function s(){var e=Ih,s=t[e(804)](this)||this;return s[e(562)]="",s[e(1122)]=!1,s.metadataloaded=!1,s[e(626)]=[],s[e(1043)]=[],s[e(857)]=0,s[e(681)]=[0,0],s.last2SimpleBlockAudioTrackTimecode=[0,0],s.lastClusterTimecode=0,s[e(591)]=0,s[e(1254)]=1e6,s[e(892)]=0,s[e(530)]=[],s[e(973)]=[],s[e(933)]=!1,s[e(748)]=!1,s[e(945)]={TrackNumber:-1,TrackType:-1,DefaultDuration:null,CodecDelay:null},s[e(1041)]=[],s[e(1231)]=[],s[e(601)]=[],s[e(963)]={type:e(902)},s[e(894)]=!1,s.logging=!1,s[e(568)]=!1,s[e(742)]=!1,s[e(1005)]=!0,s[e(1063)]=!0,s}return o(s,t),s[e(1025)][e(825)]=function(){var t=e;for(this[t(894)]=!0,this.emit_segment_info();this.stack.length;)this[t(1043)].pop(),this[t(558)]&&console[t(865)]();this[t(558)]&&this[t(1122)]&&this[t(562)]&&console[t(865)]()},s[e(1025)][e(495)]=function(){var t=e,s=this[t(626)];if(this.chunks=[],this[t(1119)]){if(!this[t(1005)])return;var i=this.lastClusterTimecode,r=this.duration,n=this[t(1254)];this[t(496)]("cluster",{timecode:i,data:s}),this[t(496)](t(611),{timecodeScale:n,duration:r})}else{this.metadataloaded=!0,this[t(530)]=s;var o=this[t(1041)][t(1022)](1),a=this.trackTypes[t(1022)](2);if(this[t(963)]=o>=0&&a>=0?{type:t(966),trackNumber:o}:o>=0?{type:"video",trackNumber:o}:a>=0?{type:t(931),trackNumber:a}:{type:"nothing"},!this[t(1005)])return;this[t(496)](t(606),{data:s,metadataSize:this[t(892)]})}},s[e(1025)][e(849)]=function(t){var s=e,i=this,r=!1;if(!this.ended){if("m"===t.type)if(t[s(829)])this[s(1043)][s(1216)]();else{var n=this[s(1043)][this[s(1043)][s(531)]-1];if(null!=n&&n[s(1115)]>=t[s(1115)]){this[s(1043)][s(1216)](),this.logging&&console[s(865)](),n[s(1094)]=t[s(1094)],n[s(605)]=t[s(1094)]-n[s(524)],n[s(1133)]=!1;var o=Object.assign({},n,{name:n.name,type:n[s(1221)],isEnd:!0});this.chunks[s(1144)](o)}this[s(1043)][s(1144)](t)}if("m"===t.type&&t[s(589)]==s(1026))0!=this.segmentOffset&&console[s(1113)]("Multiple segments detected!"),this[s(857)]=t[s(524)],this[s(496)](s(1228),this[s(857)]);else if("b"===t[s(1221)]&&t[s(589)]===s(1091)){var a=h[s(703)](t[s(1285)]),l=a[s(881)],c=a[s(1270)],d=a[s(875)];if(1===this.trackTypes[c]){if(!this[s(933)]&&(this.firstVideoBlockRead=!0,this[s(963)].type===s(966)||this.trackInfo[s(1221)]===s(957))){var u=this[s(1152)]+l;this.cues[s(1144)]({CueTrack:c,CueClusterPosition:this[s(591)],CueTime:u}),this[s(496)](s(665),{CueTrack:c,CueClusterPosition:this[s(591)],CueTime:this[s(1152)]}),this[s(496)]("cue",{CueTrack:c,CueClusterPosition:this[s(591)],CueTime:u})}this.last2SimpleBlockVideoTrackTimecode=[this[s(681)][1],l]}else if(2===this.trackTypes[c]){if(!this[s(748)]&&(this[s(748)]=!0,this[s(963)].type===s(931))){u=this[s(1152)]+l;this[s(973)][s(1144)]({CueTrack:c,CueClusterPosition:this[s(591)],CueTime:u}),this.emit(s(665),{CueTrack:c,CueClusterPosition:this.lastClusterPosition,CueTime:this[s(1152)]}),this[s(496)](s(760),{CueTrack:c,CueClusterPosition:this[s(591)],CueTime:u})}this[s(693)]=[this[s(693)][1],l]}this[s(568)]&&this[s(496)](s(611),{timecodeScale:this[s(1254)],duration:this.duration}),this[s(742)]&&d[s(1179)](function(t){var e=s;if(t[e(1173)](3,6)[e(1037)]("hex")===e(1006)){var r=h[e(1206)](t),n=new Blob([r],{type:e(1124)}),o=i[e(611)];i[e(496)](e(1272),{currentTime:o,webp:n})}})}else"m"===t[s(1221)]&&t.name===s(687)&&!1===t[s(829)]?(this[s(933)]=!1,this[s(748)]=!1,this[s(495)](),this.emit("cluster_ptr",t[s(1016)]),this[s(591)]=t.tagStart):"u"===t[s(1221)]&&t[s(589)]===s(1208)?this[s(1152)]=t[s(740)]:"u"===t[s(1221)]&&t[s(589)]===s(780)?this.timecodeScale=t.value:"m"===t[s(1221)]&&"TrackEntry"===t[s(589)]?t.isEnd?(this.trackTypes[this[s(945)][s(621)]]=this[s(945)][s(1157)],this[s(1231)][this[s(945)][s(621)]]=this.currentTrack[s(669)],this.trackCodecDelay[this[s(945)][s(621)]]=this[s(945)][s(500)]):this[s(945)]={TrackNumber:-1,TrackType:-1,DefaultDuration:null,CodecDelay:null}:"u"===t[s(1221)]&&t.name===s(1157)?this[s(945)][s(1157)]=t.value:"u"===t[s(1221)]&&"TrackNumber"===t.name?this[s(945)][s(621)]=t.value:"u"===t[s(1221)]&&t[s(589)]===s(500)?this.currentTrack.CodecDelay=t[s(740)]:"u"===t[s(1221)]&&t.name===s(669)?this[s(1063)]?(console[s(1113)]("DefaultDuration detected!, remove it"),r=!0):this.currentTrack.DefaultDuration=t.value:t[s(589)]===s(1128)&&console[s(1113)](t);!this[s(1119)]&&t[s(1094)]>0&&(this[s(892)]=t[s(1094)]),!r&&this[s(626)].push(t),this[s(558)]&&this[s(759)](t)}},Object[e(1218)](s[e(1025)],e(611),{get:function(){var t=e;if("nothing"===this[t(963)][t(1221)])return console[t(1113)](t(913)),0;var s,i=0,r=0,n=0,o=this[t(1231)][this[t(963)][t(1270)]];"number"==typeof o?i=o:this[t(963)][t(1221)]===t(966)?this[t(693)][1]>this[t(681)][1]?(i=(this[t(693)][1]-this[t(693)][0])*this[t(1254)],typeof(s=this.trackCodecDelay[this.trackTypes[t(1022)](2)])===t(964)&&(r=s),n=this[t(693)][1]):(i=(this[t(681)][1]-this.last2SimpleBlockVideoTrackTimecode[0])*this.timecodeScale,"number"==typeof(s=this.trackCodecDelay[this.trackTypes[t(1022)](1)])&&(r=s),n=this[t(681)][1]):this[t(963)][t(1221)]===t(957)?(i=(this.last2SimpleBlockVideoTrackTimecode[1]-this.last2SimpleBlockVideoTrackTimecode[0])*this.timecodeScale,typeof(s=this[t(601)][this.trackInfo[t(1270)]])===t(964)&&(r=s),n=this[t(681)][1]):this[t(963)][t(1221)]===t(931)&&(i=(this[t(693)][1]-this[t(693)][0])*this[t(1254)],typeof(s=this.trackCodecDelay[this[t(963)][t(1270)]])===t(964)&&(r=s),n=this.last2SimpleBlockAudioTrackTimecode[1]);var a=((this[t(1152)]+n)*this[t(1254)]+i-r)/this.timecodeScale;return Math.floor(a)},enumerable:!0,configurable:!0}),s[e(1025)][e(688)]=function(s,i){var r=e;return t.prototype.addListener[r(804)](this,s,i)},s[e(1025)][e(759)]=function(t){var s=e;!this[s(1122)]&&(this[s(1122)]=!0,this.logging&&this[s(562)]&&console[s(854)](this.logGroup)),"m"===t[s(1221)]?t.isEnd?console[s(865)]():console[s(722)](t[s(589)]+":"+t[s(1016)]):"b"===t[s(1221)]?console[s(508)](t.name,t[s(1221)]):console.log(t[s(589)],t[s(1016)],t.type,t[s(740)])},s}(a[n(646)]);s[n(1109)]=l},{"./tools":5,events:13}],4:[function(t,e,s){var i=Ih;Object[i(1218)](s,i(995),{value:!0});var r=t(i(1011));s[i(1162)]=r[i(1109)];var n=t(i(950));s[i(564)]=n[i(1109)];var o=t(i(600));s.Reader=o[i(1109)];var a=t(i(503));s[i(581)]=a;var h=t("../package.json")[i(612)];s[i(612)]=h},{"../package.json":18,"./EBMLDecoder":1,"./EBMLEncoder":2,"./EBMLReader":3,"./tools":5}],5:[function(t,e,s){var i=Ih;Object.defineProperty(s,i(995),{value:!0});var r=t(i(750)),n=t(i(950)),o=t(i(550)),a=t(i(1282)),h=t(i(523));function l(t){var e=i;return t[e(776)](function(t,i){var r=e;return"b"!==i[r(1221)]||"SimpleBlock"!==i[r(589)]?t:s.ebmlBlock(i[r(1285)]).frames.some(function(t){var e=r;return t.slice(3,6)[e(1037)](e(1047))===e(1006)})?t[r(873)](i):t},[])}function c(t){var e=i,r=d(e(1102),t),n=y([new(s[e(774)])(e(604),e(767)),r]);return d(e(859),n)}function d(t,e){var r=i,n=new(s[r(774)])(4);return n[r(1235)](e[r(1161)],0),y([new s.Buffer(t[r(796)](0,4),"ascii"),n,e,new(s[r(774)])(e[r(1161)]%2==0?0:1)])}function u(t,e){for(var s=i,r=-1,n=0;n<e[s(531)];n++){var o=e[n];if(o.name===t){if("m"!==o[s(1221)])return void e.splice(n,1);if(o.isEnd){if(-1==r)throw new Error(s(700)+t+s(997));return void e.splice(r,n-r+1)}r=n}}}function p(t,e){for(var s=i,r=[],n=-1,o=0;o<e[s(531)];o++){var a=e[o];if(a[s(589)]===t){if("m"!==a[s(1221)]){r.push(e[o]);break}if(a.isEnd){if(-1==n)throw new Error(s(700)+t+s(997));r=e[s(1173)](n,o+1);break}n=o}}return r}function f(t){var e=i,s=new(n[e(1109)]);return t[e(776)](function(t,i){var r=e;return t[r(873)](s[r(920)]([i]))},[]).reduce(function(t,s){return t+s[e(1161)]},0)}function m(t,e,r){var n,o,a=i,h=r[a(611)],l=r[a(778)],c=r.cues,d=t.slice(0);if(typeof h===a(964)){var u=!1;d[a(1179)](function(t){var e=a;"f"===t[e(1221)]&&"Duration"===t.name&&(u=!0,t[e(1285)]=v(h,8))}),!u&&g(d,a(659),[{name:a(1073),type:"f",data:v(h,8)}])}Array.isArray(c)&&g(d,"Cues",(n=e,o=[],c.forEach(function(t){var e=Ih,s=t[e(820)],i=t.CueClusterPosition,r=t[e(579)];o.push({name:"CuePoint",type:"m",isEnd:!1}),o[e(1144)]({name:e(579),type:"u",data:A(r)}),o[e(1144)]({name:e(882),type:"m",isEnd:!1}),o[e(1144)]({name:"CueTrack",type:"u",data:A(s)}),o[e(1144)]({name:e(1068),type:"u",data:A(i+n)}),o[e(1144)]({name:"CueTrackPositions",type:"m",isEnd:!0}),o.push({name:e(1013),type:"m",isEnd:!0})}),o));var p,f,m,y=[];return Array[a(647)](l)&&(console[a(1113)]("append cluster pointers to seekhead is deprecated. please use cues"),p=e,m=[],l[(f=i)(1179)](function(t){var e=f;m.push({name:e(999),type:"m",isEnd:!1}),m[e(1144)]({name:e(743),type:"b",data:new(s[e(774)])([31,67,182,117])}),m.push({name:e(868),type:"u",data:A(t+p)}),m.push({name:"Seek",type:"m",isEnd:!0})}),y=m),g(d,a(889),y,!0),d}function g(t,e,s,r){var n=i;void 0===r&&(r=!1);for(var o=-1,a=0;a<t[n(531)];a++){var h=t[a];if("m"===h[n(1221)]&&h[n(589)]===e&&!1===h.isEnd){o=a;break}}o>=0?Array[n(1025)][n(1239)].apply(t,[o+1,0].concat(s)):r?[][n(873)]([{name:e,type:"m",isEnd:!1}],s,[{name:e,type:"m",isEnd:!0}])[n(632)]()[n(1179)](function(e){t.unshift(e)}):(t[n(1144)]({name:e,type:"m",isEnd:!1}),s[n(1179)](function(e){t[n(1144)](e)}),t[n(1144)]({name:e,type:"m",isEnd:!0}))}function y(t){for(var e=i,r=0,n=0;r<t[e(531)];++r)n+=t[r][e(531)];var o=s.Buffer.allocUnsafe(n),a=0;for(r=0;r<t.length;++r){var h=t[r];h[e(1015)](o,a),a+=h.length}return o}function A(t){for(var e=i,n=1;t>=Math[e(1240)](2,8*n);n++);if(n>=7)return console[e(1113)](e(1121)),new(r[e(707)])(t).toBuffer();var o=new(s[e(774)])(n);return o[e(730)](t,0,n),o}function b(t){for(var e=i,n=1;t>=Math[e(1240)](2,8*n);n++);if(n>=7)return console[e(1113)](e(1121)),new r.Int64BE(t)[e(1098)]();var o=new(s[e(774)])(n);return o[e(540)](t,0,n),o}function v(t,e){var r,n=i;if(void 0===e&&(e=8),8===e)return(r=new(s[n(774)])(8)).writeDoubleBE(t,0),r;if(4===e)return(r=new(s[n(774)])(4)).writeFloatBE(t,0),r;throw new Error(n(790))}s[i(774)]=o.Buffer,s[i(585)]=a[i(585)],s.writeVint=a[i(909)],s[i(703)]=h,s[i(1118)]=function(t){var e=i;return s[e(703)](new(s[e(774)])(t))},s[i(1054)]=function(t,e,r){var n=i;return void 0===r&&(r=!1),y([t,r?new(s[n(774)])(n(536),n(1047)):s[n(909)](e[n(531)]),e])},s[i(701)]=function(t){var e=i;return l(t)[e(776)](function(t,i){var r=e;return s[r(703)](i[r(1285)]).frames[r(776)](function(t,e){var s=r,i=c(e),n=new Blob([i],{type:s(1124)});return t[s(873)](n)},t)},[])},s[i(629)]=l,s[i(1206)]=c,s[i(878)]=d,s[i(1108)]=function(t,e,r){var o=i,a=p(o(751),t),h=f(a)+12,l=t[t.length-1][o(1094)]-h,c=p("Info",t);u(o(1073),c),c[o(1239)](1,0,{name:o(1073),type:"f",data:v(e,8)});for(var d=f(c),m=p(o(1038),t),g=f(m),y=47,b=[],S=5+15*r.length,E=[],w=-1,T=function(t){var e=o,i=y,n=i+d,a=n+g,c=a+S-l;if((b=[]).push({name:"SeekHead",type:"m",isEnd:!1}),b[e(1144)]({name:e(999),type:"m",isEnd:!1}),b[e(1144)]({name:e(743),type:"b",data:new s.Buffer([21,73,169,102])}),b[e(1144)]({name:e(868),type:"u",data:A(i)}),b[e(1144)]({name:e(999),type:"m",isEnd:!0}),b[e(1144)]({name:"Seek",type:"m",isEnd:!1}),b.push({name:e(743),type:"b",data:new(s[e(774)])([22,84,174,107])}),b[e(1144)]({name:e(868),type:"u",data:A(n)}),b[e(1144)]({name:e(999),type:"m",isEnd:!0}),b[e(1144)]({name:e(999),type:"m",isEnd:!1}),b[e(1144)]({name:e(743),type:"b",data:new(s[e(774)])([28,83,187,107])}),b[e(1144)]({name:e(868),type:"u",data:A(a)}),b.push({name:e(999),type:"m",isEnd:!0}),b[e(1144)]({name:e(889),type:"m",isEnd:!0}),y=f(b),(E=[])[e(1144)]({name:e(970),type:"m",isEnd:!1}),r[e(1179)](function(t){var s=e,i=t.CueTrack,r=t[s(1068)],n=t[s(579)];E[s(1144)]({name:s(1013),type:"m",isEnd:!1}),E[s(1144)]({name:s(579),type:"u",data:A(n)}),E[s(1144)]({name:"CueTrackPositions",type:"m",isEnd:!1}),E.push({name:s(820),type:"u",data:A(i)}),r-=h,r+=c,E[s(1144)]({name:s(1068),type:"u",data:A(r)}),E[s(1144)]({name:"CueTrackPositions",type:"m",isEnd:!0}),E[s(1144)]({name:s(1013),type:"m",isEnd:!0})}),E[e(1144)]({name:e(970),type:"m",isEnd:!0}),S=f(E),w===c)return e(1032);if(w=c,9===t)throw new Error(e(1184))},I=0;I<10;I++){if(T(I)===o(1032))break}var k=[].concat[o(942)]([],[a,{name:o(1026),type:"m",isEnd:!1,unknownSize:!0},b,c,m,E]);return(new(n[o(1109)]))[o(920)](k)},s[i(1127)]=u,s[i(1261)]=p,s[i(766)]=function(t,e){var r=i;Array[r(647)](e[r(811)])&&!Array.isArray(e[r(973)])&&(console.warn(r(1001)),e[r(973)]=e[r(811)]);for(var o=[],a=[],h=0;h<t.length;h++){var l=t[h];if("m"===l[r(1221)]&&l[r(589)]===r(1026)){if(o=t[r(1173)](0,h),a=t[r(1173)](h),l[r(1133)]){a[r(539)]();break}throw new Error("this metadata is not streaming webm file")}}if(!(a[a.length-1][r(1094)]>0))throw new Error(r(543));var c=a[a[r(531)]-1].dataEnd,d=o[o[r(531)]-1][r(1094)],u=(new n.default)[r(920)](o)[r(1161)]-d,p=c-a[0][r(1016)];a[0][r(1016)],a[0][r(1016)];var f,g=new(s[r(774)])([24,83,128,103]),y=new s.Buffer(r(536),r(1047)),A=g[r(1161)]+y[r(1161)],b=p;for(f=1;f<20;f++){var v=m(a,u+(d+A+b-c),e),S=(new(n[r(1109)])).encode(v)[r(1161)];if(S===b)return(new n.default).encode([][r(873)](o,[{type:"m",name:"Segment",isEnd:!1,unknownSize:!0}],v));b=S}throw new Error(r(855)+f+" iterations!")},s[i(873)]=y,s[i(675)]=function(t){var e=i,n=new(s[e(774)])(0);if("m"===t.type)return t;switch(t[e(1221)]){case"u":n=A(t.value);break;case"i":n=b(t[e(740)]);break;case"f":n=v(t[e(740)]);break;case"s":n=new(s[e(774)])(t[e(740)],"ascii");break;case"8":n=new(s[e(774)])(t[e(740)],e(1169));break;case"b":n=t[e(740)];break;case"d":n=new r.Int64BE(t[e(740)].getTime()[e(1037)]())[e(1098)]()}return Object.assign({},t,{data:n})},s.createUIntBuffer=A,s[i(641)]=b,s[i(1131)]=v,s.convertEBMLDateToJSDate=function(t){var e=i;return t instanceof Date?t:new Date(new Date(e(689))[e(1123)]()+Number(t)/1e3/1e3)}},{"./EBMLEncoder":2,"buffer/":8,"ebml-block":9,"ebml/lib/ebml/tools":12,"int64-buffer":15}],6:[function(t,e,s){var i=Ih;s[i(1161)]=function(t){var e=c(t),s=e[0],i=e[1];return 3*(s+i)/4-i},s[i(870)]=function(t){for(var e,s=i,r=c(t),a=r[0],h=r[1],l=new o((f=a,m=h,3*(f+m)/4-m)),d=0,u=h>0?a-4:a,p=0;p<u;p+=4)e=n[t[s(623)](p)]<<18|n[t[s(623)](p+1)]<<12|n[t[s(623)](p+2)]<<6|n[t.charCodeAt(p+3)],l[d++]=e>>16&255,l[d++]=e>>8&255,l[d++]=255&e;var f,m;return 2===h&&(e=n[t[s(623)](p)]<<2|n[t[s(623)](p+1)]>>4,l[d++]=255&e),1===h&&(e=n[t[s(623)](p)]<<10|n[t[s(623)](p+1)]<<4|n[t[s(623)](p+2)]>>2,l[d++]=e>>8&255,l[d++]=255&e),l},s[i(968)]=function(t){for(var e,s=i,n=t[s(531)],o=n%3,a=[],h=16383,l=0,c=n-o;l<c;l+=h)a[s(1144)](u(t,l,l+h>c?c:l+h));1===o?(e=t[n-1],a[s(1144)](r[e>>2]+r[e<<4&63]+"==")):2===o&&(e=(t[n-2]<<8)+t[n-1],a[s(1144)](r[e>>10]+r[e>>4&63]+r[e<<2&63]+"="));return a[s(1105)]("")};for(var r=[],n=[],o=typeof Uint8Array!==i(635)?Uint8Array:Array,a=i(1004),h=0,l=a[i(531)];h<l;++h)r[h]=a[h],n[a.charCodeAt(h)]=h;function c(t){var e=i,s=t[e(531)];if(s%4>0)throw new Error(e(594));var r=t[e(1022)]("=");return-1===r&&(r=s),[r,r===s?0:4-r%4]}function d(t){return r[t>>18&63]+r[t>>12&63]+r[t>>6&63]+r[63&t]}function u(t,e,s){for(var r,n=i,o=[],a=e;a<s;a+=3)r=(t[a]<<16&16711680)+(t[a+1]<<8&65280)+(255&t[a+2]),o[n(1144)](d(r));return o[n(1105)]("")}n["-".charCodeAt(0)]=62,n["_"[i(623)](0)]=63},{}],7:[function(t,e,s){var i=Ih;(function(e){var i=Ih,r=t(i(1081)),n=t(i(1066)),o=t(i(797));function a(){return l[i(903)]?2147483647:1073741823}function h(t,e){var s=i;if(a()<e)throw new RangeError(s(1020));return l.TYPED_ARRAY_SUPPORT?(t=new Uint8Array(e))[s(718)]=l.prototype:(null===t&&(t=new l(e)),t[s(531)]=e),t}function l(t,e,s){var r=i;if(!(l[r(903)]||this instanceof l))return new l(t,e,s);if(typeof t===r(964)){if("string"==typeof e)throw new Error("If encoding is specified then the first argument must be a string");return u(this,t)}return c(this,t,e,s)}function c(t,e,s,r){var n=i;if(typeof e===n(964))throw new TypeError('"value" argument must not be a number');return typeof ArrayBuffer!==n(635)&&e instanceof ArrayBuffer?function(t,e,s,r){var n=i;if(e[n(1161)],s<0||e[n(1161)]<s)throw new RangeError(n(624));if(e[n(1161)]<s+(r||0))throw new RangeError(n(583));e=void 0===s&&void 0===r?new Uint8Array(e):void 0===r?new Uint8Array(e,s):new Uint8Array(e,s,r);return l[n(903)]?(t=e)[n(718)]=l[n(1025)]:t=p(t,e),t}(t,e,s,r):typeof e===n(1226)?function(t,e,s){var r=i;if(("string"!=typeof s||""===s)&&(s="utf8"),!l[r(723)](s))throw new TypeError(r(953));var n=0|m(e,s),o=(t=h(t,n))[r(668)](e,s);return o!==n&&(t=t[r(1173)](0,o)),t}(t,e,s):function(t,e){var s=i;if(l[s(1143)](e)){var r=0|f(e[s(531)]);return 0===(t=h(t,r))[s(531)]||e[s(1015)](t,0,0,r),t}if(e){if(typeof ArrayBuffer!==s(635)&&e[s(1187)]instanceof ArrayBuffer||s(531)in e)return typeof e.length!==s(964)||(n=e.length)!=n?h(t,0):p(t,e);if("Buffer"===e[s(1221)]&&o(e[s(1285)]))return p(t,e.data)}var n;throw new TypeError("First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.")}(t,e)}function d(t){var e=i;if(typeof t!==e(964))throw new TypeError('"size" argument must be a number');if(t<0)throw new RangeError(e(952))}function u(t,e){if(d(e),t=h(t,e<0?0:0|f(e)),!l.TYPED_ARRAY_SUPPORT)for(var s=0;s<e;++s)t[s]=0;return t}function p(t,e){var s=i,r=e[s(531)]<0?0:0|f(e[s(531)]);t=h(t,r);for(var n=0;n<r;n+=1)t[n]=255&e[n];return t}function f(t){var e=i;if(t>=a())throw new RangeError("Attempt to allocate Buffer larger than maximum "+e(879)+a()[e(1037)](16)+e(787));return 0|t}function m(t,e){var s=i;if(l[s(1143)](t))return t[s(531)];if(typeof ArrayBuffer!==s(635)&&typeof ArrayBuffer.isView===s(886)&&(ArrayBuffer[s(1138)](t)||t instanceof ArrayBuffer))return t.byteLength;typeof t!==s(1226)&&(t=""+t);var r=t.length;if(0===r)return 0;for(var n=!1;;)switch(e){case s(767):case"latin1":case s(1250):return r;case s(1169):case s(705):case void 0:return G(t).length;case s(872):case s(649):case s(559):case s(731):return 2*r;case s(1047):return r>>>1;case s(736):return z(t)[s(531)];default:if(n)return G(t).length;e=(""+e)[s(1071)](),n=!0}}function g(t,e,s){var r=i,n=!1;if((void 0===e||e<0)&&(e=0),e>this[r(531)])return"";if((void 0===s||s>this[r(531)])&&(s=this[r(531)]),s<=0)return"";if((s>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case r(1047):return R(this,e,s);case r(1169):case r(705):return _(this,e,s);case r(767):return D(this,e,s);case r(944):case r(1250):return L(this,e,s);case r(736):return k(this,e,s);case r(872):case r(649):case r(559):case r(731):return P(this,e,s);default:if(n)throw new TypeError(r(552)+t);t=(t+"")[r(1071)](),n=!0}}function y(t,e,s){var i=t[e];t[e]=t[s],t[s]=i}function A(t,e,s,r,n){var o=i;if(0===t[o(531)])return-1;if("string"==typeof s?(r=s,s=0):s>2147483647?s=2147483647:s<-2147483648&&(s=-2147483648),s=+s,isNaN(s)&&(s=n?0:t.length-1),s<0&&(s=t[o(531)]+s),s>=t.length){if(n)return-1;s=t[o(531)]-1}else if(s<0){if(!n)return-1;s=0}if(typeof e===o(1226)&&(e=l[o(633)](e,r)),l.isBuffer(e))return 0===e[o(531)]?-1:b(t,e,s,r,n);if(typeof e===o(964))return e&=255,l[o(903)]&&typeof Uint8Array[o(1025)][o(1022)]===o(886)?n?Uint8Array.prototype.indexOf.call(t,e,s):Uint8Array[o(1025)][o(1070)].call(t,e,s):b(t,[e],s,r,n);throw new TypeError(o(667))}function b(t,e,s,r,n){var o,a=i,h=1,l=t[a(531)],c=e[a(531)];if(void 0!==r&&((r=String(r)[a(1071)]())===a(872)||r===a(649)||r===a(559)||r===a(731))){if(t[a(531)]<2||e[a(531)]<2)return-1;h=2,l/=2,c/=2,s/=2}function d(t,e){var s=a;return 1===h?t[e]:t[s(837)](e*h)}if(n){var u=-1;for(o=s;o<l;o++)if(d(t,o)===d(e,-1===u?0:o-u)){if(-1===u&&(u=o),o-u+1===c)return u*h}else-1!==u&&(o-=o-u),u=-1}else for(s+c>l&&(s=l-c),o=s;o>=0;o--){for(var p=!0,f=0;f<c;f++)if(d(t,o+f)!==d(e,f)){p=!1;break}if(p)return o}return-1}function v(t,e,s,r){var n=i;s=Number(s)||0;var o=t[n(531)]-s;r?(r=Number(r))>o&&(r=o):r=o;var a=e[n(531)];if(a%2!=0)throw new TypeError(n(756));r>a/2&&(r=a/2);for(var h=0;h<r;++h){var l=parseInt(e[n(796)](2*h,2),16);if(isNaN(l))return h;t[s+h]=l}return h}function S(t,e,s,r){return H(G(e,t[i(531)]-s),t,s,r)}function E(t,e,s,r){return H(function(t){for(var e=i,s=[],r=0;r<t[e(531)];++r)s[e(1144)](255&t[e(623)](r));return s}(e),t,s,r)}function w(t,e,s,i){return E(t,e,s,i)}function T(t,e,s,i){return H(z(e),t,s,i)}function I(t,e,s,r){return H(function(t,e){for(var s,r,n,o=i,a=[],h=0;h<t[o(531)]&&!((e-=2)<0);++h)r=(s=t[o(623)](h))>>8,n=s%256,a[o(1144)](n),a[o(1144)](r);return a}(e,t.length-s),t,s,r)}function k(t,e,s){var n=i;return 0===e&&s===t[n(531)]?r[n(968)](t):r.fromByteArray(t.slice(e,s))}function _(t,e,s){var r=i;s=Math[r(640)](t[r(531)],s);for(var n=[],o=e;o<s;){var a,h,l,c,d=t[o],u=null,p=d>239?4:d>223?3:d>191?2:1;if(o+p<=s)switch(p){case 1:d<128&&(u=d);break;case 2:128==(192&(a=t[o+1]))&&((c=(31&d)<<6|63&a)>127&&(u=c));break;case 3:a=t[o+1],h=t[o+2],128==(192&a)&&128==(192&h)&&((c=(15&d)<<12|(63&a)<<6|63&h)>2047&&(c<55296||c>57343)&&(u=c));break;case 4:a=t[o+1],h=t[o+2],l=t[o+3],128==(192&a)&&128==(192&h)&&128==(192&l)&&((c=(15&d)<<18|(63&a)<<12|(63&h)<<6|63&l)>65535&&c<1114112&&(u=c))}null===u?(u=65533,p=1):u>65535&&(u-=65536,n.push(u>>>10&1023|55296),u=56320|1023&u),n[r(1144)](u),o+=p}return function(t){var e=i,s=t.length;if(s<=C)return String[e(888)][e(942)](String,t);var r="",n=0;for(;n<s;)r+=String[e(888)][e(942)](String,t[e(1173)](n,n+=C));return r}(n)}s[i(774)]=l,s[i(788)]=function(t){return+t!=t&&(t=0),l[i(785)](+t)},s[i(1049)]=50,l.TYPED_ARRAY_SUPPORT=void 0!==e.TYPED_ARRAY_SUPPORT?e[i(903)]:function(){var t=i;try{var e=new Uint8Array(1);return e[t(718)]={__proto__:Uint8Array[t(1025)],foo:function(){return 42}},42===e[t(1223)]()&&typeof e[t(747)]===t(886)&&0===e.subarray(1,1).byteLength}catch(t){return!1}}(),s[i(1156)]=a(),l[i(1257)]=8192,l[i(494)]=function(t){var e=i;return t.__proto__=l[e(1025)],t},l[i(633)]=function(t,e,s){return c(null,t,e,s)},l[i(903)]&&(l[i(1025)][i(718)]=Uint8Array[i(1025)],l[i(718)]=Uint8Array,"undefined"!=typeof Symbol&&Symbol[i(971)]&&l[Symbol[i(971)]]===l&&Object[i(1218)](l,Symbol[i(971)],{value:null,configurable:!0})),l[i(785)]=function(t,e,s){return r=null,o=e,a=s,l=i,d(n=t),n<=0?h(r,n):void 0!==o?typeof a===l(1226)?h(r,n).fill(o,a):h(r,n)[l(921)](o):h(r,n);var r,n,o,a,l},l[i(1210)]=function(t){return u(null,t)},l[i(1278)]=function(t){return u(null,t)},l.isBuffer=function(t){return!(null==t||!t[i(770)])},l[i(613)]=function(t,e){var s=i;if(!l[s(1143)](t)||!l[s(1143)](e))throw new TypeError(s(1194));if(t===e)return 0;for(var r=t[s(531)],n=e[s(531)],o=0,a=Math[s(640)](r,n);o<a;++o)if(t[o]!==e[o]){r=t[o],n=e[o];break}return r<n?-1:n<r?1:0},l.isEncoding=function(t){var e=i;switch(String(t).toLowerCase()){case e(1047):case e(1169):case e(705):case e(767):case e(944):case e(1250):case e(736):case e(872):case e(649):case e(559):case e(731):return!0;default:return!1}},l[i(873)]=function(t,e){var s,r=i;if(!o(t))throw new TypeError(r(1014));if(0===t.length)return l[r(785)](0);if(void 0===e)for(e=0,s=0;s<t.length;++s)e+=t[s][r(531)];var n=l[r(1210)](e),a=0;for(s=0;s<t.length;++s){var h=t[s];if(!l[r(1143)](h))throw new TypeError(r(1014));h[r(1015)](n,a),a+=h.length}return n},l[i(1161)]=m,l[i(1025)][i(770)]=!0,l[i(1025)][i(1030)]=function(){var t=this.length;if(t%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var e=0;e<t;e+=2)y(this,e,e+1);return this},l[i(1025)][i(1060)]=function(){var t=i,e=this[t(531)];if(e%4!=0)throw new RangeError(t(1111));for(var s=0;s<e;s+=4)y(this,s,s+3),y(this,s+1,s+2);return this},l[i(1025)][i(1246)]=function(){var t=i,e=this[t(531)];if(e%8!=0)throw new RangeError(t(729));for(var s=0;s<e;s+=8)y(this,s,s+7),y(this,s+1,s+6),y(this,s+2,s+5),y(this,s+3,s+4);return this},l[i(1025)].toString=function(){var t=i,e=0|this[t(531)];return 0===e?"":0===arguments[t(531)]?_(this,0,e):g[t(942)](this,arguments)},l.prototype[i(534)]=function(t){var e=i;if(!l.isBuffer(t))throw new TypeError(e(934));return this===t||0===l.compare(this,t)},l[i(1025)][i(884)]=function(){var t=i,e="",r=s[t(1049)];return this[t(531)]>0&&(e=this.toString(t(1047),0,r).match(/.{2}/g)[t(1105)](" "),this[t(531)]>r&&(e+=t(1159))),t(1249)+e+">"},l[i(1025)][i(613)]=function(t,e,s,r,n){var o=i;if(!l[o(1143)](t))throw new TypeError(o(934));if(void 0===e&&(e=0),void 0===s&&(s=t?t[o(531)]:0),void 0===r&&(r=0),void 0===n&&(n=this[o(531)]),e<0||s>t.length||r<0||n>this[o(531)])throw new RangeError("out of range index");if(r>=n&&e>=s)return 0;if(r>=n)return-1;if(e>=s)return 1;if(this===t)return 0;for(var a=(n>>>=0)-(r>>>=0),h=(s>>>=0)-(e>>>=0),c=Math.min(a,h),d=this[o(1173)](r,n),u=t.slice(e,s),p=0;p<c;++p)if(d[p]!==u[p]){a=d[p],h=u[p];break}return a<h?-1:h<a?1:0},l.prototype[i(1243)]=function(t,e,s){return-1!==this[i(1022)](t,e,s)},l[i(1025)].indexOf=function(t,e,s){return A(this,t,e,s,!0)},l[i(1025)][i(1070)]=function(t,e,s){return A(this,t,e,s,!1)},l.prototype[i(668)]=function(t,e,s,r){var n=i;if(void 0===e)r="utf8",s=this.length,e=0;else if(void 0===s&&typeof e===n(1226))r=e,s=this[n(531)],e=0;else{if(!isFinite(e))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");e|=0,isFinite(s)?(s|=0,void 0===r&&(r="utf8")):(r=s,s=void 0)}var o=this.length-e;if((void 0===s||s>o)&&(s=o),t[n(531)]>0&&(s<0||e<0)||e>this[n(531)])throw new RangeError(n(1112));r||(r=n(1169));for(var a=!1;;)switch(r){case n(1047):return v(this,t,e,s);case n(1169):case n(705):return S(this,t,e,s);case n(767):return E(this,t,e,s);case"latin1":case n(1250):return w(this,t,e,s);case"base64":return T(this,t,e,s);case n(872):case n(649):case n(559):case n(731):return I(this,t,e,s);default:if(a)throw new TypeError(n(552)+r);r=(""+r)[n(1071)](),a=!0}},l[i(1025)][i(949)]=function(){var t=i;return{type:t(774),data:Array[t(1025)].slice[t(804)](this._arr||this,0)}};var C=4096;function D(t,e,s){var r=i,n="";s=Math[r(640)](t[r(531)],s);for(var o=e;o<s;++o)n+=String[r(888)](127&t[o]);return n}function L(t,e,s){var r=i,n="";s=Math[r(640)](t.length,s);for(var o=e;o<s;++o)n+=String[r(888)](t[o]);return n}function R(t,e,s){var i=t.length;(!e||e<0)&&(e=0),(!s||s<0||s>i)&&(s=i);for(var r="",n=e;n<s;++n)r+=W(t[n]);return r}function P(t,e,s){for(var r=t[i(1173)](e,s),n="",o=0;o<r.length;o+=2)n+=String.fromCharCode(r[o]+256*r[o+1]);return n}function x(t,e,s){if(t%1!=0||t<0)throw new RangeError(i(1163));if(t+e>s)throw new RangeError("Trying to access beyond buffer length")}function M(t,e,s,r,n,o){var a=i;if(!l[a(1143)](t))throw new TypeError(a(745));if(e>n||e<o)throw new RangeError(a(661));if(s+r>t[a(531)])throw new RangeError(a(1279))}function B(t,e,s,r){var n=i;e<0&&(e=65535+e+1);for(var o=0,a=Math[n(640)](t[n(531)]-s,2);o<a;++o)t[s+o]=(e&255<<8*(r?o:1-o))>>>8*(r?o:1-o)}function F(t,e,s,r){var n=i;e<0&&(e=4294967295+e+1);for(var o=0,a=Math.min(t[n(531)]-s,4);o<a;++o)t[s+o]=e>>>8*(r?o:3-o)&255}function U(t,e,s,r,n,o){var a=i;if(s+r>t[a(531)])throw new RangeError(a(1279));if(s<0)throw new RangeError(a(1279))}function O(t,e,s,r,o){var a=i;return!o&&U(t,0,s,4),n[a(668)](t,e,s,r,23,4),s+4}function N(t,e,s,r,o){var a=i;return!o&&U(t,0,s,8),n[a(668)](t,e,s,r,52,8),s+8}l[i(1025)][i(1173)]=function(t,e){var s,r=i,n=this.length;if((t=~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),(e=void 0===e?n:~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),e<t&&(e=t),l[r(903)])(s=this[r(747)](t,e))[r(718)]=l[r(1025)];else{var o=e-t;s=new l(o,void 0);for(var a=0;a<o;++a)s[a]=this[a+t]}return s},l[i(1025)][i(805)]=function(t,e,s){t|=0,e|=0,s||x(t,e,this.length);for(var i=this[t],r=1,n=0;++n<e&&(r*=256);)i+=this[t+n]*r;return i},l[i(1025)][i(680)]=function(t,e,s){t|=0,e|=0,!s&&x(t,e,this[i(531)]);for(var r=this[t+--e],n=1;e>0&&(n*=256);)r+=this[t+--e]*n;return r},l.prototype[i(1165)]=function(t,e){return e||x(t,1,this.length),this[t]},l.prototype[i(570)]=function(t,e){return e||x(t,2,this[i(531)]),this[t]|this[t+1]<<8},l[i(1025)].readUInt16BE=function(t,e){return e||x(t,2,this[i(531)]),this[t]<<8|this[t+1]},l[i(1025)].readUInt32LE=function(t,e){return e||x(t,4,this[i(531)]),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},l[i(1025)].readUInt32BE=function(t,e){return e||x(t,4,this[i(531)]),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},l[i(1025)].readIntLE=function(t,e,s){var r=i;t|=0,e|=0,s||x(t,e,this[r(531)]);for(var n=this[t],o=1,a=0;++a<e&&(o*=256);)n+=this[t+a]*o;return n>=(o*=128)&&(n-=Math[r(1240)](2,8*e)),n},l.prototype[i(899)]=function(t,e,s){t|=0,e|=0,s||x(t,e,this[i(531)]);for(var r=e,n=1,o=this[t+--r];r>0&&(n*=256);)o+=this[t+--r]*n;return o>=(n*=128)&&(o-=Math.pow(2,8*e)),o},l[i(1025)][i(537)]=function(t,e){return e||x(t,1,this[i(531)]),128&this[t]?-1*(255-this[t]+1):this[t]},l[i(1025)][i(904)]=function(t,e){e||x(t,2,this[i(531)]);var s=this[t]|this[t+1]<<8;return 32768&s?4294901760|s:s},l[i(1025)][i(1019)]=function(t,e){e||x(t,2,this[i(531)]);var s=this[t+1]|this[t]<<8;return 32768&s?4294901760|s:s},l[i(1025)][i(1203)]=function(t,e){return e||x(t,4,this[i(531)]),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},l[i(1025)][i(538)]=function(t,e){return e||x(t,4,this[i(531)]),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},l.prototype[i(714)]=function(t,e){var s=i;return e||x(t,4,this[s(531)]),n[s(849)](this,t,!0,23,4)},l[i(1025)][i(1074)]=function(t,e){var s=i;return e||x(t,4,this[s(531)]),n[s(849)](this,t,!1,23,4)},l[i(1025)][i(614)]=function(t,e){var s=i;return e||x(t,8,this[s(531)]),n[s(849)](this,t,!0,52,8)},l.prototype.readDoubleBE=function(t,e){return e||x(t,8,this[i(531)]),n.read(this,t,!1,52,8)},l.prototype[i(986)]=function(t,e,s,i){(t=+t,e|=0,s|=0,i)||M(this,t,e,s,Math.pow(2,8*s)-1,0);var r=1,n=0;for(this[e]=255&t;++n<s&&(r*=256);)this[e+n]=t/r&255;return e+s},l[i(1025)][i(730)]=function(t,e,s,i){(t=+t,e|=0,s|=0,i)||M(this,t,e,s,Math.pow(2,8*s)-1,0);var r=s-1,n=1;for(this[e+r]=255&t;--r>=0&&(n*=256);)this[e+r]=t/n&255;return e+s},l[i(1025)].writeUInt8=function(t,e,s){var r=i;return t=+t,e|=0,s||M(this,t,e,1,255,0),l[r(903)]||(t=Math[r(493)](t)),this[e]=255&t,e+1},l[i(1025)][i(639)]=function(t,e,s){return t=+t,e|=0,s||M(this,t,e,2,65535,0),l.TYPED_ARRAY_SUPPORT?(this[e]=255&t,this[e+1]=t>>>8):B(this,t,e,!0),e+2},l[i(1025)][i(1153)]=function(t,e,s){return t=+t,e|=0,s||M(this,t,e,2,65535,0),l.TYPED_ARRAY_SUPPORT?(this[e]=t>>>8,this[e+1]=255&t):B(this,t,e,!1),e+2},l.prototype[i(1235)]=function(t,e,s){var r=i;return t=+t,e|=0,s||M(this,t,e,4,4294967295,0),l[r(903)]?(this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t):F(this,t,e,!0),e+4},l[i(1025)][i(545)]=function(t,e,s){var r=i;return t=+t,e|=0,s||M(this,t,e,4,4294967295,0),l[r(903)]?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):F(this,t,e,!1),e+4},l.prototype.writeIntLE=function(t,e,s,r){if(t=+t,e|=0,!r){var n=Math[i(1240)](2,8*s-1);M(this,t,e,s,n-1,-n)}var o=0,a=1,h=0;for(this[e]=255&t;++o<s&&(a*=256);)t<0&&0===h&&0!==this[e+o-1]&&(h=1),this[e+o]=(t/a|0)-h&255;return e+s},l[i(1025)][i(540)]=function(t,e,s,r){if(t=+t,e|=0,!r){var n=Math[i(1240)](2,8*s-1);M(this,t,e,s,n-1,-n)}var o=s-1,a=1,h=0;for(this[e+o]=255&t;--o>=0&&(a*=256);)t<0&&0===h&&0!==this[e+o+1]&&(h=1),this[e+o]=(t/a|0)-h&255;return e+s},l[i(1025)].writeInt8=function(t,e,s){var r=i;return t=+t,e|=0,s||M(this,t,e,1,127,-128),l[r(903)]||(t=Math.floor(t)),t<0&&(t=255+t+1),this[e]=255&t,e+1},l[i(1025)][i(1110)]=function(t,e,s){var r=i;return t=+t,e|=0,s||M(this,t,e,2,32767,-32768),l[r(903)]?(this[e]=255&t,this[e+1]=t>>>8):B(this,t,e,!0),e+2},l[i(1025)][i(1039)]=function(t,e,s){var r=i;return t=+t,e|=0,s||M(this,t,e,2,32767,-32768),l[r(903)]?(this[e]=t>>>8,this[e+1]=255&t):B(this,t,e,!1),e+2},l[i(1025)][i(627)]=function(t,e,s){var r=i;return t=+t,e|=0,s||M(this,t,e,4,2147483647,-2147483648),l[r(903)]?(this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24):F(this,t,e,!0),e+4},l.prototype[i(708)]=function(t,e,s){var r=i;return t=+t,e|=0,s||M(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),l[r(903)]?(this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t):F(this,t,e,!1),e+4},l[i(1025)][i(846)]=function(t,e,s){return O(this,t,e,!0,s)},l[i(1025)][i(1171)]=function(t,e,s){return O(this,t,e,!1,s)},l[i(1025)].writeDoubleLE=function(t,e,s){return N(this,t,e,!0,s)},l[i(1025)][i(795)]=function(t,e,s){return N(this,t,e,!1,s)},l[i(1025)][i(1015)]=function(t,e,s,r){var n=i;if(s||(s=0),r||0===r||(r=this.length),e>=t[n(531)]&&(e=t[n(531)]),e||(e=0),r>0&&r<s&&(r=s),r===s)return 0;if(0===t[n(531)]||0===this[n(531)])return 0;if(e<0)throw new RangeError(n(516));if(s<0||s>=this[n(531)])throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError(n(1286));r>this.length&&(r=this.length),t.length-e<r-s&&(r=t[n(531)]-e+s);var o,a=r-s;if(this===t&&s<e&&e<r)for(o=a-1;o>=0;--o)t[o+e]=this[o+s];else if(a<1e3||!l.TYPED_ARRAY_SUPPORT)for(o=0;o<a;++o)t[o+e]=this[o+s];else Uint8Array[n(1025)].set[n(804)](t,this[n(747)](s,s+a),e);return a},l[i(1025)][i(921)]=function(t,e,s,r){var n,o=i;if(typeof t===o(1226)){if(typeof e===o(1226)?(r=e,e=0,s=this[o(531)]):typeof s===o(1226)&&(r=s,s=this[o(531)]),1===t[o(531)]){var a=t[o(623)](0);a<256&&(t=a)}if(void 0!==r&&typeof r!==o(1226))throw new TypeError(o(1076));if("string"==typeof r&&!l[o(723)](r))throw new TypeError(o(552)+r)}else typeof t===o(964)&&(t&=255);if(e<0||this.length<e||this[o(531)]<s)throw new RangeError(o(1198));if(s<=e)return this;if(e>>>=0,s=void 0===s?this[o(531)]:s>>>0,t||(t=0),typeof t===o(964))for(n=e;n<s;++n)this[n]=t;else{var h=l.isBuffer(t)?t:G(new l(t,r).toString()),c=h[o(531)];for(n=0;n<s-e;++n)this[n+e]=h[n%c]}return this};var V=/[^+\/0-9A-Za-z-_]/g;function j(t){var e,s,r=i;if((t=(e=t,s=i,e.trim?e[s(1260)]():e[s(919)](/^\s+|\s+$/g,""))[r(919)](V,""))[r(531)]<2)return"";for(;t[r(531)]%4!=0;)t+="=";return t}function W(t){var e=i;return t<16?"0"+t.toString(16):t[e(1037)](16)}function G(t,e){var s=i;e=e||1/0;for(var r,n=t[s(531)],o=null,a=[],h=0;h<n;++h){if((r=t[s(623)](h))>55295&&r<57344){if(!o){if(r>56319){(e-=3)>-1&&a[s(1144)](239,191,189);continue}if(h+1===n){(e-=3)>-1&&a[s(1144)](239,191,189);continue}o=r;continue}if(r<56320){(e-=3)>-1&&a[s(1144)](239,191,189),o=r;continue}r=65536+(o-55296<<10|r-56320)}else o&&(e-=3)>-1&&a.push(239,191,189);if(o=null,r<128){if((e-=1)<0)break;a[s(1144)](r)}else if(r<2048){if((e-=2)<0)break;a.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;a[s(1144)](r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error(s(519));if((e-=4)<0)break;a[s(1144)](r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function z(t){return r[i(870)](j(t))}function H(t,e,s,i){for(var r=0;r<i&&!(r+s>=e.length||r>=t.length);++r)e[r+s]=t[r];return r}})[i(804)](this,void 0!==ge[i(1099)]?ge[i(1099)]:"undefined"!=typeof self?self:typeof window!==i(635)?window:{})},{"base64-js":6,ieee754:14,isarray:16}],8:[function(t,e,s){var i=Ih,r=t(i(1081)),n=t(i(1066));s.Buffer=h,s[i(788)]=function(t){return+t!=t&&(t=0),h[i(785)](+t)},s[i(1049)]=50;var o=2147483647;function a(t){var e=i;if(t>o)throw new RangeError(e(961)+t+e(883));var s=new Uint8Array(t);return s[e(718)]=h[e(1025)],s}function h(t,e,s){var r=i;if(typeof t===r(964)){if(typeof e===r(1226))throw new TypeError('The "string" argument must be of type string. Received type number');return d(t)}return l(t,e,s)}function l(t,e,s){var r=i;if(typeof t===r(1226))return function(t,e){var s=i;if((typeof e!==s(1226)||""===e)&&(e="utf8"),!h[s(723)](e))throw new TypeError("Unknown encoding: "+e);var r=0|f(t,e),n=a(r),o=n[s(668)](t,e);return o!==r&&(n=n.slice(0,o)),n}(t,e);if(ArrayBuffer.isView(t))return u(t);if(null==t)throw TypeError(r(1007)+r(699)+typeof t);if(W(t,ArrayBuffer)||t&&W(t[r(1187)],ArrayBuffer))return function(t,e,s){var r,n=i;if(e<0||t[n(1161)]<e)throw new RangeError(n(1028));if(t[n(1161)]<e+(s||0))throw new RangeError(n(717));r=void 0===e&&void 0===s?new Uint8Array(t):void 0===s?new Uint8Array(t,e):new Uint8Array(t,e,s);return r[n(718)]=h[n(1025)],r}(t,e,s);if(typeof t===r(964))throw new TypeError(r(1182));var n=t.valueOf&&t[r(739)]();if(null!=n&&n!==t)return h[r(633)](n,e,s);var o=function(t){var e=i;if(h[e(1143)](t)){var s=0|p(t[e(531)]),r=a(s);return 0===r.length||t.copy(r,0,0,s),r}if(void 0!==t[e(531)])return"number"!=typeof t[e(531)]||G(t.length)?a(0):u(t);if(t.type===e(774)&&Array[e(647)](t.data))return u(t[e(1285)])}(t);if(o)return o;if(typeof Symbol!==r(635)&&null!=Symbol.toPrimitive&&typeof t[Symbol[r(620)]]===r(886))return h[r(633)](t[Symbol.toPrimitive](r(1226)),e,s);throw new TypeError(r(1007)+r(699)+typeof t)}function c(t){var e=i;if(typeof t!==e(964))throw new TypeError(e(771));if(t<0)throw new RangeError(e(961)+t+e(883))}function d(t){return c(t),a(t<0?0:0|p(t))}function u(t){for(var e=i,s=t.length<0?0:0|p(t[e(531)]),r=a(s),n=0;n<s;n+=1)r[n]=255&t[n];return r}function p(t){var e=i;if(t>=o)throw new RangeError(e(1287)+e(879)+o[e(1037)](16)+e(787));return 0|t}function f(t,e){var s=i;if(h.isBuffer(t))return t[s(531)];if(ArrayBuffer[s(1138)](t)||W(t,ArrayBuffer))return t[s(1161)];if(typeof t!==s(1226))throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. '+s(694)+typeof t);var r=t[s(531)],n=arguments[s(531)]>2&&!0===arguments[2];if(!n&&0===r)return 0;for(var o=!1;;)switch(e){case s(767):case s(944):case s(1250):return r;case s(1169):case s(705):return N(t)[s(531)];case s(872):case s(649):case"utf16le":case s(731):return 2*r;case s(1047):return r>>>1;case"base64":return V(t).length;default:if(o)return n?-1:N(t)[s(531)];e=(""+e).toLowerCase(),o=!0}}function m(t,e,s){var r=i,n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===s||s>this[r(531)])&&(s=this.length),s<=0)return"";if((s>>>=0)<=(e>>>=0))return"";for(t||(t=r(1169));;)switch(t){case"hex":return L(this,e,s);case"utf8":case r(705):return k(this,e,s);case r(767):return C(this,e,s);case r(944):case r(1250):return D(this,e,s);case r(736):return I(this,e,s);case r(872):case r(649):case r(559):case r(731):return R(this,e,s);default:if(n)throw new TypeError(r(552)+t);t=(t+"").toLowerCase(),n=!0}}function g(t,e,s){var i=t[e];t[e]=t[s],t[s]=i}function y(t,e,s,r,n){var o=i;if(0===t[o(531)])return-1;if(typeof s===o(1226)?(r=s,s=0):s>2147483647?s=2147483647:s<-2147483648&&(s=-2147483648),G(s=+s)&&(s=n?0:t[o(531)]-1),s<0&&(s=t[o(531)]+s),s>=t[o(531)]){if(n)return-1;s=t[o(531)]-1}else if(s<0){if(!n)return-1;s=0}if(typeof e===o(1226)&&(e=h[o(633)](e,r)),h.isBuffer(e))return 0===e[o(531)]?-1:A(t,e,s,r,n);if(typeof e===o(964))return e&=255,typeof Uint8Array[o(1025)].indexOf===o(886)?n?Uint8Array[o(1025)][o(1022)][o(804)](t,e,s):Uint8Array[o(1025)].lastIndexOf[o(804)](t,e,s):A(t,[e],s,r,n);throw new TypeError(o(667))}function A(t,e,s,r,n){var o,a=i,h=1,l=t[a(531)],c=e[a(531)];if(void 0!==r&&((r=String(r).toLowerCase())===a(872)||"ucs-2"===r||"utf16le"===r||r===a(731))){if(t[a(531)]<2||e.length<2)return-1;h=2,l/=2,c/=2,s/=2}function d(t,e){var s=a;return 1===h?t[e]:t[s(837)](e*h)}if(n){var u=-1;for(o=s;o<l;o++)if(d(t,o)===d(e,-1===u?0:o-u)){if(-1===u&&(u=o),o-u+1===c)return u*h}else-1!==u&&(o-=o-u),u=-1}else for(s+c>l&&(s=l-c),o=s;o>=0;o--){for(var p=!0,f=0;f<c;f++)if(d(t,o+f)!==d(e,f)){p=!1;break}if(p)return o}return-1}function b(t,e,s,r){var n=i;s=Number(s)||0;var o=t[n(531)]-s;r?(r=Number(r))>o&&(r=o):r=o;var a=e[n(531)];r>a/2&&(r=a/2);for(var h=0;h<r;++h){var l=parseInt(e[n(796)](2*h,2),16);if(G(l))return h;t[s+h]=l}return h}function v(t,e,s,r){return j(N(e,t[i(531)]-s),t,s,r)}function S(t,e,s,r){return j(function(t){for(var e=i,s=[],r=0;r<t[e(531)];++r)s[e(1144)](255&t[e(623)](r));return s}(e),t,s,r)}function E(t,e,s,i){return S(t,e,s,i)}function w(t,e,s,i){return j(V(e),t,s,i)}function T(t,e,s,r){return j(function(t,e){for(var s,r,n,o=i,a=[],h=0;h<t[o(531)]&&!((e-=2)<0);++h)r=(s=t[o(623)](h))>>8,n=s%256,a.push(n),a[o(1144)](r);return a}(e,t[i(531)]-s),t,s,r)}function I(t,e,s){var n=i;return 0===e&&s===t.length?r.fromByteArray(t):r[n(968)](t[n(1173)](e,s))}function k(t,e,s){var r=i;s=Math[r(640)](t[r(531)],s);for(var n=[],o=e;o<s;){var a,h,l,c,d=t[o],u=null,p=d>239?4:d>223?3:d>191?2:1;if(o+p<=s)switch(p){case 1:d<128&&(u=d);break;case 2:128==(192&(a=t[o+1]))&&((c=(31&d)<<6|63&a)>127&&(u=c));break;case 3:a=t[o+1],h=t[o+2],128==(192&a)&&128==(192&h)&&((c=(15&d)<<12|(63&a)<<6|63&h)>2047&&(c<55296||c>57343)&&(u=c));break;case 4:a=t[o+1],h=t[o+2],l=t[o+3],128==(192&a)&&128==(192&h)&&128==(192&l)&&((c=(15&d)<<18|(63&a)<<12|(63&h)<<6|63&l)>65535&&c<1114112&&(u=c))}null===u?(u=65533,p=1):u>65535&&(u-=65536,n.push(u>>>10&1023|55296),u=56320|1023&u),n[r(1144)](u),o+=p}return function(t){var e=i,s=t[e(531)];if(s<=_)return String[e(888)].apply(String,t);var r="",n=0;for(;n<s;)r+=String[e(888)][e(942)](String,t[e(1173)](n,n+=_));return r}(n)}s[i(1156)]=o,h[i(903)]=function(){var t=i;try{var e=new Uint8Array(1);return e[t(718)]={__proto__:Uint8Array[t(1025)],foo:function(){return 42}},42===e[t(1223)]()}catch(t){return!1}}(),!h.TYPED_ARRAY_SUPPORT&&typeof console!==i(635)&&typeof console[i(836)]===i(886)&&console[i(836)](i(965)+i(1053)),Object.defineProperty(h[i(1025)],"parent",{enumerable:!0,get:function(){var t=i;if(h[t(1143)](this))return this[t(1187)]}}),Object.defineProperty(h[i(1025)],"offset",{enumerable:!0,get:function(){var t=i;if(h.isBuffer(this))return this[t(1176)]}}),typeof Symbol!==i(635)&&null!=Symbol[i(971)]&&h[Symbol[i(971)]]===h&&Object.defineProperty(h,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1}),h[i(1257)]=8192,h[i(633)]=function(t,e,s){return l(t,e,s)},h.prototype[i(718)]=Uint8Array[i(1025)],h[i(718)]=Uint8Array,h[i(785)]=function(t,e,s){return n=e,o=s,h=i,c(r=t),r<=0?a(r):void 0!==n?"string"==typeof o?a(r)[h(921)](n,o):a(r).fill(n):a(r);var r,n,o,h},h.allocUnsafe=function(t){return d(t)},h[i(1278)]=function(t){return d(t)},h.isBuffer=function(t){var e=i;return null!=t&&!0===t[e(770)]&&t!==h[e(1025)]},h[i(613)]=function(t,e){var s=i;if(W(t,Uint8Array)&&(t=h[s(633)](t,t[s(1164)],t[s(1161)])),W(e,Uint8Array)&&(e=h[s(633)](e,e[s(1164)],e[s(1161)])),!h[s(1143)](t)||!h[s(1143)](e))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(t===e)return 0;for(var r=t[s(531)],n=e[s(531)],o=0,a=Math[s(640)](r,n);o<a;++o)if(t[o]!==e[o]){r=t[o],n=e[o];break}return r<n?-1:n<r?1:0},h[i(723)]=function(t){var e=i;switch(String(t)[e(1071)]()){case"hex":case e(1169):case e(705):case e(767):case e(944):case"binary":case e(736):case e(872):case e(649):case e(559):case"utf-16le":return!0;default:return!1}},h[i(873)]=function(t,e){var s,r=i;if(!Array.isArray(t))throw new TypeError('"list" argument must be an Array of Buffers');if(0===t[r(531)])return h[r(785)](0);if(void 0===e)for(e=0,s=0;s<t[r(531)];++s)e+=t[s][r(531)];var n=h[r(1210)](e),o=0;for(s=0;s<t[r(531)];++s){var a=t[s];if(W(a,Uint8Array)&&(a=h[r(633)](a)),!h[r(1143)](a))throw new TypeError('"list" argument must be an Array of Buffers');a.copy(n,o),o+=a[r(531)]}return n},h.byteLength=f,h[i(1025)][i(770)]=!0,h[i(1025)][i(1030)]=function(){var t=i,e=this[t(531)];if(e%2!=0)throw new RangeError(t(725));for(var s=0;s<e;s+=2)g(this,s,s+1);return this},h[i(1025)][i(1060)]=function(){var t=i,e=this[t(531)];if(e%4!=0)throw new RangeError(t(1111));for(var s=0;s<e;s+=4)g(this,s,s+3),g(this,s+1,s+2);return this},h[i(1025)][i(1246)]=function(){var t=i,e=this[t(531)];if(e%8!=0)throw new RangeError(t(729));for(var s=0;s<e;s+=8)g(this,s,s+7),g(this,s+1,s+6),g(this,s+2,s+5),g(this,s+3,s+4);return this},h[i(1025)][i(1037)]=function(){var t=i,e=this[t(531)];return 0===e?"":0===arguments[t(531)]?k(this,0,e):m.apply(this,arguments)},h[i(1025)][i(546)]=h[i(1025)][i(1037)],h.prototype[i(534)]=function(t){var e=i;if(!h[e(1143)](t))throw new TypeError(e(934));return this===t||0===h.compare(this,t)},h[i(1025)][i(884)]=function(){var t=i,e="",r=s.INSPECT_MAX_BYTES;return e=this[t(1037)](t(1047),0,r)[t(919)](/(.{2})/g,t(978))[t(1260)](),this.length>r&&(e+=" ... "),t(1249)+e+">"},h[i(1025)][i(613)]=function(t,e,s,r,n){var o=i;if(W(t,Uint8Array)&&(t=h[o(633)](t,t.offset,t[o(1161)])),!h[o(1143)](t))throw new TypeError(o(491)+o(694)+typeof t);if(void 0===e&&(e=0),void 0===s&&(s=t?t[o(531)]:0),void 0===r&&(r=0),void 0===n&&(n=this[o(531)]),e<0||s>t.length||r<0||n>this[o(531)])throw new RangeError("out of range index");if(r>=n&&e>=s)return 0;if(r>=n)return-1;if(e>=s)return 1;if(this===t)return 0;for(var a=(n>>>=0)-(r>>>=0),l=(s>>>=0)-(e>>>=0),c=Math.min(a,l),d=this[o(1173)](r,n),u=t[o(1173)](e,s),p=0;p<c;++p)if(d[p]!==u[p]){a=d[p],l=u[p];break}return a<l?-1:l<a?1:0},h[i(1025)][i(1243)]=function(t,e,s){return-1!==this[i(1022)](t,e,s)},h[i(1025)].indexOf=function(t,e,s){return y(this,t,e,s,!0)},h[i(1025)][i(1070)]=function(t,e,s){return y(this,t,e,s,!1)},h[i(1025)].write=function(t,e,s,r){var n=i;if(void 0===e)r=n(1169),s=this[n(531)],e=0;else if(void 0===s&&typeof e===n(1226))r=e,s=this[n(531)],e=0;else{if(!isFinite(e))throw new Error(n(525));e>>>=0,isFinite(s)?(s>>>=0,void 0===r&&(r="utf8")):(r=s,s=void 0)}var o=this[n(531)]-e;if((void 0===s||s>o)&&(s=o),t[n(531)]>0&&(s<0||e<0)||e>this[n(531)])throw new RangeError(n(1112));r||(r="utf8");for(var a=!1;;)switch(r){case n(1047):return b(this,t,e,s);case n(1169):case n(705):return v(this,t,e,s);case n(767):return S(this,t,e,s);case n(944):case n(1250):return E(this,t,e,s);case n(736):return w(this,t,e,s);case n(872):case n(649):case n(559):case n(731):return T(this,t,e,s);default:if(a)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),a=!0}},h[i(1025)][i(949)]=function(){var t=i;return{type:t(774),data:Array[t(1025)][t(1173)][t(804)](this._arr||this,0)}};var _=4096;function C(t,e,s){var r=i,n="";s=Math[r(640)](t[r(531)],s);for(var o=e;o<s;++o)n+=String[r(888)](127&t[o]);return n}function D(t,e,s){var r=i,n="";s=Math[r(640)](t[r(531)],s);for(var o=e;o<s;++o)n+=String[r(888)](t[o]);return n}function L(t,e,s){var r=t[i(531)];(!e||e<0)&&(e=0),(!s||s<0||s>r)&&(s=r);for(var n="",o=e;o<s;++o)n+=O(t[o]);return n}function R(t,e,s){for(var r=i,n=t[r(1173)](e,s),o="",a=0;a<n[r(531)];a+=2)o+=String[r(888)](n[a]+256*n[a+1]);return o}function P(t,e,s){var r=i;if(t%1!=0||t<0)throw new RangeError("offset is not uint");if(t+e>s)throw new RangeError(r(764))}function x(t,e,s,r,n,o){var a=i;if(!h.isBuffer(t))throw new TypeError(a(745));if(e>n||e<o)throw new RangeError(a(661));if(s+r>t[a(531)])throw new RangeError(a(1279))}function M(t,e,s,r,n,o){var a=i;if(s+r>t.length)throw new RangeError(a(1279));if(s<0)throw new RangeError(a(1279))}function B(t,e,s,i,r){return e=+e,s>>>=0,!r&&M(t,0,s,4),n.write(t,e,s,i,23,4),s+4}function F(t,e,s,r,o){var a=i;return e=+e,s>>>=0,!o&&M(t,0,s,8),n[a(668)](t,e,s,r,52,8),s+8}h[i(1025)].slice=function(t,e){var s=i,r=this[s(531)];(t=~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),(e=void 0===e?r:~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),e<t&&(e=t);var n=this[s(747)](t,e);return n.__proto__=h[s(1025)],n},h[i(1025)].readUIntLE=function(t,e,s){t>>>=0,e>>>=0,s||P(t,e,this.length);for(var i=this[t],r=1,n=0;++n<e&&(r*=256);)i+=this[t+n]*r;return i},h[i(1025)][i(680)]=function(t,e,s){t>>>=0,e>>>=0,!s&&P(t,e,this[i(531)]);for(var r=this[t+--e],n=1;e>0&&(n*=256);)r+=this[t+--e]*n;return r},h[i(1025)].readUInt8=function(t,e){return t>>>=0,e||P(t,1,this.length),this[t]},h[i(1025)][i(570)]=function(t,e){return t>>>=0,e||P(t,2,this[i(531)]),this[t]|this[t+1]<<8},h[i(1025)][i(837)]=function(t,e){return t>>>=0,e||P(t,2,this.length),this[t]<<8|this[t+1]},h[i(1025)].readUInt32LE=function(t,e){return t>>>=0,e||P(t,4,this[i(531)]),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},h[i(1025)][i(586)]=function(t,e){return t>>>=0,e||P(t,4,this[i(531)]),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},h.prototype[i(998)]=function(t,e,s){t>>>=0,e>>>=0,s||P(t,e,this[i(531)]);for(var r=this[t],n=1,o=0;++o<e&&(n*=256);)r+=this[t+o]*n;return r>=(n*=128)&&(r-=Math.pow(2,8*e)),r},h[i(1025)].readIntBE=function(t,e,s){var r=i;t>>>=0,e>>>=0,s||P(t,e,this[r(531)]);for(var n=e,o=1,a=this[t+--n];n>0&&(o*=256);)a+=this[t+--n]*o;return a>=(o*=128)&&(a-=Math[r(1240)](2,8*e)),a},h[i(1025)].readInt8=function(t,e){return t>>>=0,e||P(t,1,this[i(531)]),128&this[t]?-1*(255-this[t]+1):this[t]},h[i(1025)].readInt16LE=function(t,e){t>>>=0,e||P(t,2,this.length);var s=this[t]|this[t+1]<<8;return 32768&s?4294901760|s:s},h[i(1025)].readInt16BE=function(t,e){t>>>=0,e||P(t,2,this[i(531)]);var s=this[t+1]|this[t]<<8;return 32768&s?4294901760|s:s},h[i(1025)][i(1203)]=function(t,e){return t>>>=0,e||P(t,4,this[i(531)]),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},h[i(1025)][i(538)]=function(t,e){return t>>>=0,e||P(t,4,this[i(531)]),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},h.prototype.readFloatLE=function(t,e){var s=i;return t>>>=0,e||P(t,4,this[s(531)]),n[s(849)](this,t,!0,23,4)},h[i(1025)][i(1074)]=function(t,e){var s=i;return t>>>=0,e||P(t,4,this[s(531)]),n[s(849)](this,t,!1,23,4)},h.prototype[i(614)]=function(t,e){var s=i;return t>>>=0,e||P(t,8,this.length),n[s(849)](this,t,!0,52,8)},h.prototype[i(1212)]=function(t,e){return t>>>=0,e||P(t,8,this[i(531)]),n.read(this,t,!1,52,8)},h[i(1025)][i(986)]=function(t,e,s,r){(t=+t,e>>>=0,s>>>=0,r)||x(this,t,e,s,Math[i(1240)](2,8*s)-1,0);var n=1,o=0;for(this[e]=255&t;++o<s&&(n*=256);)this[e+o]=t/n&255;return e+s},h[i(1025)][i(730)]=function(t,e,s,i){(t=+t,e>>>=0,s>>>=0,i)||x(this,t,e,s,Math.pow(2,8*s)-1,0);var r=s-1,n=1;for(this[e+r]=255&t;--r>=0&&(n*=256);)this[e+r]=t/n&255;return e+s},h.prototype.writeUInt8=function(t,e,s){return t=+t,e>>>=0,s||x(this,t,e,1,255,0),this[e]=255&t,e+1},h[i(1025)].writeUInt16LE=function(t,e,s){return t=+t,e>>>=0,s||x(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},h[i(1025)][i(1153)]=function(t,e,s){return t=+t,e>>>=0,s||x(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},h[i(1025)][i(1235)]=function(t,e,s){return t=+t,e>>>=0,s||x(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},h.prototype[i(545)]=function(t,e,s){return t=+t,e>>>=0,s||x(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},h.prototype[i(1232)]=function(t,e,s,r){if(t=+t,e>>>=0,!r){var n=Math[i(1240)](2,8*s-1);x(this,t,e,s,n-1,-n)}var o=0,a=1,h=0;for(this[e]=255&t;++o<s&&(a*=256);)t<0&&0===h&&0!==this[e+o-1]&&(h=1),this[e+o]=(t/a|0)-h&255;return e+s},h.prototype.writeIntBE=function(t,e,s,r){if(t=+t,e>>>=0,!r){var n=Math[i(1240)](2,8*s-1);x(this,t,e,s,n-1,-n)}var o=s-1,a=1,h=0;for(this[e+o]=255&t;--o>=0&&(a*=256);)t<0&&0===h&&0!==this[e+o+1]&&(h=1),this[e+o]=(t/a|0)-h&255;return e+s},h[i(1025)][i(696)]=function(t,e,s){return t=+t,e>>>=0,s||x(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},h[i(1025)][i(1110)]=function(t,e,s){return t=+t,e>>>=0,s||x(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},h.prototype.writeInt16BE=function(t,e,s){return t=+t,e>>>=0,s||x(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},h[i(1025)][i(627)]=function(t,e,s){return t=+t,e>>>=0,s||x(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},h[i(1025)][i(708)]=function(t,e,s){return t=+t,e>>>=0,s||x(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},h.prototype[i(846)]=function(t,e,s){return B(this,t,e,!0,s)},h.prototype[i(1171)]=function(t,e,s){return B(this,t,e,!1,s)},h[i(1025)].writeDoubleLE=function(t,e,s){return F(this,t,e,!0,s)},h[i(1025)][i(795)]=function(t,e,s){return F(this,t,e,!1,s)},h[i(1025)][i(1015)]=function(t,e,s,r){var n=i;if(!h[n(1143)](t))throw new TypeError("argument should be a Buffer");if(s||(s=0),r||0===r||(r=this[n(531)]),e>=t.length&&(e=t[n(531)]),e||(e=0),r>0&&r<s&&(r=s),r===s)return 0;if(0===t[n(531)]||0===this[n(531)])return 0;if(e<0)throw new RangeError("targetStart out of bounds");if(s<0||s>=this[n(531)])throw new RangeError(n(1279));if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),t[n(531)]-e<r-s&&(r=t.length-e+s);var o=r-s;if(this===t&&"function"==typeof Uint8Array.prototype[n(1064)])this[n(1064)](e,s,r);else if(this===t&&s<e&&e<r)for(var a=o-1;a>=0;--a)t[a+e]=this[a+s];else Uint8Array[n(1025)][n(754)].call(t,this.subarray(s,r),e);return o},h[i(1025)][i(921)]=function(t,e,s,r){var n,o=i;if("string"==typeof t){if(typeof e===o(1226)?(r=e,e=0,s=this.length):"string"==typeof s&&(r=s,s=this[o(531)]),void 0!==r&&typeof r!==o(1226))throw new TypeError("encoding must be a string");if(typeof r===o(1226)&&!h[o(723)](r))throw new TypeError("Unknown encoding: "+r);if(1===t[o(531)]){var a=t[o(623)](0);(r===o(1169)&&a<128||r===o(944))&&(t=a)}}else"number"==typeof t&&(t&=255);if(e<0||this[o(531)]<e||this[o(531)]<s)throw new RangeError("Out of range index");if(s<=e)return this;if(e>>>=0,s=void 0===s?this[o(531)]:s>>>0,t||(t=0),typeof t===o(964))for(n=e;n<s;++n)this[n]=t;else{var l=h[o(1143)](t)?t:h[o(633)](t,r),c=l.length;if(0===c)throw new TypeError(o(961)+t+o(830));for(n=0;n<s-e;++n)this[n+e]=l[n%c]}return this};var U=/[^+/0-9A-Za-z-_]/g;function O(t){return t<16?"0"+t[i(1037)](16):t.toString(16)}function N(t,e){var s=i;e=e||1/0;for(var r,n=t[s(531)],o=null,a=[],h=0;h<n;++h){if((r=t.charCodeAt(h))>55295&&r<57344){if(!o){if(r>56319){(e-=3)>-1&&a[s(1144)](239,191,189);continue}if(h+1===n){(e-=3)>-1&&a.push(239,191,189);continue}o=r;continue}if(r<56320){(e-=3)>-1&&a[s(1144)](239,191,189),o=r;continue}r=65536+(o-55296<<10|r-56320)}else o&&(e-=3)>-1&&a.push(239,191,189);if(o=null,r<128){if((e-=1)<0)break;a[s(1144)](r)}else if(r<2048){if((e-=2)<0)break;a[s(1144)](r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;a[s(1144)](r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error(s(519));if((e-=4)<0)break;a[s(1144)](r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return a}function V(t){return r.toByteArray(function(t){var e=i;if((t=(t=t[e(595)]("=")[0])[e(1260)]()[e(919)](U,""))[e(531)]<2)return"";for(;t[e(531)]%4!=0;)t+="=";return t}(t))}function j(t,e,s,r){for(var n=i,o=0;o<r&&!(o+s>=e[n(531)]||o>=t[n(531)]);++o)e[o+s]=t[o];return o}function W(t,e){var s=i;return t instanceof e||null!=t&&null!=t[s(1263)]&&null!=t[s(1263)].name&&t.constructor[s(589)]===e[s(589)]}function G(t){return t!=t}},{"base64-js":6,ieee754:14}],9:[function(t,e,s){var i=Ih,r=t("./lib/buffer-reader");e[i(676)]=function(t){var e=i,s={},n=new r(t);s.trackNumber=n[e(638)](),s.timecode=n[e(695)]();var o=n[e(597)]();s[e(744)]=!!(8&o),s.keyframe=!!(128&o),s[e(1188)]=!!(1&o);var a=(6&o)>>1;return s[e(875)]=function(t,e){var s=i;if(!e)return[t[s(1273)]()];var r,n,o=[],a=t[s(597)]()+1;if(2===e){if(t[s(531)]%a!==0)throw new Error(s(1103));for(n=t.length/a,r=0;r<a;r++)o[s(1144)](t[s(1273)](n));return o}var h=[];if(1===e)for(r=0;r<a-1;r++){var l;n=0;do{n+=l=t[s(597)]()}while(255===l);h.push(n)}else if(3===e)for(n=t.nextUIntV(),h[s(1144)](n),r=1;r<a-1;r++)n+=t[s(690)](),h[s(1144)](n);for(r=0;r<a-1;r++)o[s(1144)](t[s(1273)](h[r]));return o.push(t[s(1273)]()),o}(n,a),s}},{"./lib/buffer-reader":10}],10:[function(t,e,s){var i=Ih,r=t(i(951));function n(t){var e=i;this[e(1187)]=t,this[e(1164)]=0}n[i(1025)].nextInt16BE=function(){var t=i,e=this[t(1187)][t(1019)](this.offset);return this[t(1164)]+=2,e},n[i(1025)][i(597)]=function(){var t=i,e=this[t(1187)].readUInt8(this[t(1164)]);return this.offset+=1,e},n[i(1025)][i(638)]=function(){var t=i,e=r(this[t(1187)],this[t(1164)]);return this[t(1164)]+=e[t(531)],e[t(740)]},n.prototype[i(690)]=function(){var t=i,e=r(this[t(1187)],this[t(1164)],!0);return this.offset+=e[t(531)],e[t(740)]},n[i(1025)][i(1273)]=function(t){var e=i,s=t?this.buffer[e(1173)](this.offset,this[e(1164)]+t):this[e(1187)][e(1173)](this[e(1164)]);return this[e(1164)]+=t||this.length,s},Object[i(1218)](n[i(1025)],i(531),{get:function(){var t=i;return this.buffer[t(531)]-this.offset}}),e[i(676)]=n},{"./vint":11}],11:[function(t,e,s){e.exports=function(t,e,s){var i=Ih;e=e||0;for(var r=1;r<=8&&!(t[e]>=Math.pow(2,8-r));r++);if(r>8)throw new Error(i(824)+r+" "+t[i(1037)](i(1047),e,e+r));if(e+r>t[i(531)])return null;var n,o=t[e]&(1<<8-r)-1;for(n=1;n<r;n++){if(7===n&&o>=Math[i(1240)](2,45)&&t[e+7]>0)return{length:r,value:-1};o*=Math[i(1240)](2,8),o+=t[e+n]}return s&&(o-=Math.pow(2,7*r-1)-1),{length:r,value:o}}},{}],12:[function(t,e,s){(function(t){var s={readVint:function(t,e){var s=Ih;e=e||0;for(var i=1;i<=8&&!(t[e]>=Math.pow(2,8-i));i++);if(i>8)throw new Error(s(824)+i+" "+t[s(1037)]("hex",e,e+i));if(e+i>t.length)return null;for(var r=t[e]&(1<<8-i)-1,n=1;n<i;n++){if(7===n&&r>=Math.pow(2,45)&&t[e+7]>0)return{length:i,value:-1};r*=Math[s(1240)](2,8),r+=t[e+n]}return{length:i,value:r}},writeVint:function(e){var s=Ih;if(e<0||e>Math[s(1240)](2,53))throw new Error(s(798)+e);for(var i=1;i<=8&&!(e<Math[s(1240)](2,7*i)-1);i++);for(var r=new t(i),n=1;n<=i;n++){var o=255&e;r[i-n]=o,e-=o,e/=Math.pow(2,8)}return r[0]=r[0]|1<<8-i,r}};e.exports=s}).call(this,t(Ih(1187)).Buffer)},{buffer:7}],13:[function(t,e,s){var i=Ih;function r(){var t=Ih;this[t(1215)]=this[t(1215)]||{},this[t(1255)]=this[t(1255)]||void 0}function n(t){return typeof t===i(886)}function o(t){return typeof t===i(1092)&&null!==t}function a(t){return void 0===t}e[i(676)]=r,r[i(646)]=r,r[i(1025)][i(1215)]=void 0,r.prototype[i(1255)]=void 0,r.defaultMaxListeners=10,r[i(1025)][i(779)]=function(t){var e=i;if(typeof t!==i(964)||t<0||isNaN(t))throw TypeError(e(1114));return this._maxListeners=t,this},r.prototype.emit=function(t){var e,s,r,h,l,c,d=i;if(this[d(1215)]||(this[d(1215)]={}),"error"===t&&(!this[d(1215)][d(836)]||o(this[d(1215)].error)&&!this[d(1215)][d(836)][d(531)])){if((e=arguments[1])instanceof Error)throw e;var u=new Error(d(1202)+e+")");throw u[d(1196)]=e,u}if(a(s=this._events[t]))return!1;if(n(s))switch(arguments.length){case 1:s.call(this);break;case 2:s[d(804)](this,arguments[1]);break;case 3:s[d(804)](this,arguments[1],arguments[2]);break;default:h=Array[d(1025)][d(1173)][d(804)](arguments,1),s[d(942)](this,h)}else if(o(s))for(h=Array[d(1025)][d(1173)][d(804)](arguments,1),r=(c=s[d(1173)]())[d(531)],l=0;l<r;l++)c[l][d(942)](this,h);return!0},r[i(1025)][i(688)]=function(t,e){var s,h=i;if(!n(e))throw TypeError(h(791));return this[h(1215)]||(this[h(1215)]={}),this[h(1215)][h(642)]&&this[h(496)]("newListener",t,n(e[h(1106)])?e[h(1106)]:e),this._events[t]?o(this._events[t])?this[h(1215)][t].push(e):this._events[t]=[this[h(1215)][t],e]:this._events[t]=e,o(this._events[t])&&!this[h(1215)][t].warned&&((s=a(this[h(1255)])?r.defaultMaxListeners:this[h(1255)])&&s>0&&this._events[t][h(531)]>s&&(this._events[t][h(1288)]=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. "+h(704),this[h(1215)][t].length),typeof console[h(486)]===h(886)&&console[h(486)]())),this},r[i(1025)].on=r[i(1025)][i(688)],r[i(1025)][i(1029)]=function(t,e){var s=i;if(!n(e))throw TypeError(s(791));var r=!1;function o(){var i=s;this[i(483)](t,o),!r&&(r=!0,e[i(942)](this,arguments))}return o[s(1106)]=e,this.on(t,o),this},r[i(1025)][i(483)]=function(t,e){var s,r,a,h,l=i;if(!n(e))throw TypeError(l(791));if(!this[l(1215)]||!this._events[t])return this;if(a=(s=this[l(1215)][t])[l(531)],r=-1,s===e||n(s[l(1106)])&&s.listener===e)delete this[l(1215)][t],this[l(1215)][l(483)]&&this[l(496)](l(483),t,e);else if(o(s)){for(h=a;h-- >0;)if(s[h]===e||s[h][l(1106)]&&s[h][l(1106)]===e){r=h;break}if(r<0)return this;1===s[l(531)]?(s[l(531)]=0,delete this[l(1215)][t]):s[l(1239)](r,1),this[l(1215)][l(483)]&&this.emit(l(483),t,e)}return this},r[i(1025)][i(596)]=function(t){var e,s,r=i;if(!this._events)return this;if(!this[r(1215)][r(483)])return 0===arguments[r(531)]?this._events={}:this[r(1215)][t]&&delete this[r(1215)][t],this;if(0===arguments[r(531)]){for(e in this[r(1215)])e!==r(483)&&this[r(596)](e);return this[r(596)](r(483)),this._events={},this}if(n(s=this[r(1215)][t]))this.removeListener(t,s);else if(s)for(;s[r(531)];)this.removeListener(t,s[s[r(531)]-1]);return delete this[r(1215)][t],this},r[i(1025)][i(505)]=function(t){var e=i;return this[e(1215)]&&this[e(1215)][t]?n(this[e(1215)][t])?[this[e(1215)][t]]:this[e(1215)][t].slice():[]},r[i(1025)][i(1258)]=function(t){var e=i;if(this[e(1215)]){var s=this[e(1215)][t];if(n(s))return 1;if(s)return s.length}return 0},r.listenerCount=function(t,e){return t.listenerCount(e)}},{}],14:[function(t,e,s){var i=Ih;s[i(849)]=function(t,e,s,r,n){var o,a,h=i,l=8*n-r-1,c=(1<<l)-1,d=c>>1,u=-7,p=s?n-1:0,f=s?-1:1,m=t[e+p];for(p+=f,o=m&(1<<-u)-1,m>>=-u,u+=l;u>0;o=256*o+t[e+p],p+=f,u-=8);for(a=o&(1<<-u)-1,o>>=-u,u+=r;u>0;a=256*a+t[e+p],p+=f,u-=8);if(0===o)o=1-d;else{if(o===c)return a?NaN:1/0*(m?-1:1);a+=Math[h(1240)](2,r),o-=d}return(m?-1:1)*a*Math[h(1240)](2,o-r)},s[i(668)]=function(t,e,s,r,n,o){var a,h,l,c=i,d=8*o-n-1,u=(1<<d)-1,p=u>>1,f=23===n?Math[c(1240)](2,-24)-Math[c(1240)](2,-77):0,m=r?0:o-1,g=r?1:-1,y=e<0||0===e&&1/e<0?1:0;for(e=Math[c(664)](e),isNaN(e)||e===1/0?(h=isNaN(e)?1:0,a=u):(a=Math[c(493)](Math.log(e)/Math.LN2),e*(l=Math[c(1240)](2,-a))<1&&(a--,l*=2),(e+=a+p>=1?f/l:f*Math.pow(2,1-p))*l>=2&&(a++,l/=2),a+p>=u?(h=0,a=u):a+p>=1?(h=(e*l-1)*Math.pow(2,n),a+=p):(h=e*Math[c(1240)](2,p-1)*Math.pow(2,n),a=0));n>=8;t[s+m]=255&h,m+=g,h/=256,n-=8);for(a=a<<n|h,d+=n;d>0;t[s+m]=255&a,m+=g,a/=256,d-=8);t[s+m-g]|=128*y}},{}],15:[function(t,e,s){var i=Ih;(function(t){var e=Ih;!function(e){var s,i=Ih,r=i(635),n=r!==typeof t&&t,o=r!==typeof Uint8Array&&Uint8Array,a=r!==typeof ArrayBuffer&&ArrayBuffer,h=[0,0,0,0,0,0,0,0],l=Array.isArray||function(t){var e=i;return!!t&&"[object Array]"==Object[e(1025)][e(1037)][e(804)](t)},c=4294967296;function d(t,l,d){var E=i,w=l?0:4,T=l?4:0,I=l?0:3,k=l?1:2,_=l?2:1,C=l?3:0,D=l?A:v,L=l?b:S,R=M[E(1025)],P="is"+t,x="_"+P;return R[E(1187)]=void 0,R.offset=0,R[x]=!0,R[E(958)]=B,R[E(1037)]=function(t){var e=E,s=this[e(1187)],i=this[e(1164)],r=U(s,i+w),n=U(s,i+T),o="",a=!d&&2147483648&r;a&&(r=~r,n=c-n),t=t||10;for(;;){var h=r%t*c+n;if(r=Math[e(493)](r/t),n=Math[e(493)](h/t),o=(h%t)[e(1037)](t)+o,!r&&!n)break}return a&&(o="-"+o),o},R[E(949)]=B,R[E(573)]=u,n&&(R.toBuffer=p),o&&(R[E(987)]=f),M[P]=function(t){return!(!t||!t[x])},e[t]=M,M;function M(t,e,i,n){return this instanceof M?function(t,e,i,n,l){var d=E;o&&a&&(e instanceof a&&(e=new o(e)),n instanceof a&&(n=new o(n)));if(!(e||i||n||s))return void(t[d(1187)]=y(h,0));if(!m(e,i)){l=i,n=e,i=0,e=new(s||Array)(8)}if(t.buffer=e,t[d(1164)]=i|=0,r===typeof n)return;d(1226)===typeof n?function(t,e,s,i){var r=E,n=0,o=s.length,a=0,h=0;"-"===s[0]&&n++;var l=n;for(;n<o;){var d=parseInt(s[n++],i);if(!(d>=0))break;h=h*i+d,a=a*i+Math[r(493)](h/c),h%=c}l&&(a=~a,h?h=c-h:a++),F(t,e+w,a),F(t,e+T,h)}(e,i,n,l||10):m(n,l)?g(e,i,n,l):d(964)===typeof l?(F(e,i+w,n),F(e,i+T,l)):n>0?D(e,i,n):n<0?L(e,i,n):g(e,i,h,0)}(this,t,e,i,n):new M(t,e,i,n)}function B(){var t=E,e=this[t(1187)],s=this[t(1164)],i=U(e,s+w),r=U(e,s+T);return d||(i|=0),i?i*c+r:r}function F(t,e,s){t[e+C]=255&s,s>>=8,t[e+_]=255&s,s>>=8,t[e+k]=255&s,s>>=8,t[e+I]=255&s}function U(t,e){return 16777216*t[e+I]+(t[e+k]<<16)+(t[e+_]<<8)+t[e+C]}}function u(t){var e=this[i(1187)],r=this.offset;return s=null,!1!==t&&0===r&&8===e.length&&l(e)?e:y(e,r)}function p(e){var r=i,o=this[r(1187)],a=this[r(1164)];if(s=n,!1!==e&&0===a&&8===o[r(531)]&&t.isBuffer(o))return o;var h=new n(8);return g(h,0,o,a),h}function f(t){var e=i,r=this[e(1187)],n=this.offset,h=r[e(1187)];if(s=o,!1!==t&&0===n&&h instanceof a&&8===h[e(1161)])return h;var l=new o(8);return g(l,0,r,n),l.buffer}function m(t,e){var s=t&&t.length;return e|=0,s&&e+8<=s&&"string"!=typeof t[e]}function g(t,e,s,i){e|=0,i|=0;for(var r=0;r<8;r++)t[e++]=255&s[i++]}function y(t,e){var s=i;return Array.prototype[s(1173)][s(804)](t,e,e+8)}function A(t,e,s){for(var i=e+8;i>e;)t[--i]=255&s,s/=256}function b(t,e,s){var i=e+8;for(s++;i>e;)t[--i]=255&-s^255,s/=256}function v(t,e,s){for(var i=e+8;e<i;)t[e++]=255&s,s/=256}function S(t,e,s){var i=e+8;for(s++;e<i;)t[e++]=255&-s^255,s/=256}d(i(707),!0,!0),d("Int64BE",!0,!1),d(i(1069),!1,!0),d(i(801),!1,!1)}(typeof s===e(1092)&&typeof s[e(761)]!==e(1226)?s:this||{})}).call(this,t(i(1187))[i(774)])},{buffer:7}],16:[function(t,e,s){var i=Ih,r={}[i(1037)];e.exports=Array[i(647)]||function(t){var e=i;return r[e(804)](t)==e(763)}},{}],17:[function(t,e,s){var i=Ih,r={128:{name:"ChapterDisplay",level:4,type:"m",multiple:!0,minver:1,webm:!0,description:i(501)},131:{name:"TrackType",level:3,type:"u",mandatory:!0,minver:1,range:i(643),description:i(1234)},133:{name:i(1220),cppname:i(549),level:5,type:"8",mandatory:!0,minver:1,webm:!0,description:i(1241)},134:{name:"CodecID",level:3,type:"s",mandatory:!0,minver:1,description:i(1281)},136:{name:i(818),cppname:"TrackFlagDefault",level:3,type:"u",mandatory:!0,minver:1,default:1,range:"0-1",description:"Set if that track (audio, video or subs) SHOULD be active if no language found matches the user preference. (1 bit)"},137:{name:i(569),level:5,type:"u",mandatory:!0,multiple:!0,minver:1,webm:!1,range:i(1283),description:i(1107)},145:{name:i(738),level:4,type:"u",mandatory:!0,minver:1,webm:!0,description:i(783)},146:{name:i(522),level:4,type:"u",minver:1,webm:!1,description:i(602)},150:{name:"CueRefTime",level:5,type:"u",mandatory:!0,minver:2,webm:!1,description:i(551)},151:{name:i(593),level:5,type:"u",mandatory:!0,webm:!1,description:"The Position of the Cluster containing the referenced Block."},152:{name:i(1177),level:4,type:"u",mandatory:!0,minver:1,webm:!1,default:0,range:i(587),description:"If a chapter is hidden (1), it should not be available to the user interface (but still to Control Tracks; see flag notes). (1 bit)"},16980:{name:"ContentCompAlgo",level:6,type:"u",mandatory:!0,minver:1,webm:!1,default:0,description:i(682)},16981:{name:i(897),level:6,type:"b",minver:1,webm:!1,description:i(648)},17026:{name:i(1075),level:1,type:"s",mandatory:!0,default:i(947),minver:1,description:i(1135)},17029:{name:"DocTypeReadVersion",level:1,type:"u",mandatory:!0,default:1,minver:1,description:"The minimum DocType version an interpreter has to support to read this file."},17030:{name:i(1086),level:1,type:"u",mandatory:!0,default:1,minver:1,description:i(1117)},17031:{name:i(1189),level:1,type:"u",mandatory:!0,default:1,minver:1,description:i(975)},17476:{name:"SegmentFamily",level:2,type:"b",multiple:!0,minver:1,webm:!1,bytesize:16,description:i(893)},17505:{name:i(1087),level:2,type:"d",minver:1,description:"Date of the origin of timestamp (value 0), i.e. production date."},17540:{name:i(918),level:4,type:"u",mandatory:!0,minver:1,webm:!1,default:1,range:i(587),description:i(1253)},17541:{name:i(679),level:4,type:"b",minver:1,webm:!1,description:i(1034)},17543:{name:i(513),level:4,type:"8",minver:1,webm:!1,description:"The value of the Element."},17545:{name:i(1073),level:2,type:"f",minver:1,range:i(858),description:i(976)},17816:{name:i(814),level:4,type:"u",mandatory:!0,minver:1,webm:!1,default:1,range:i(587),description:"Specify wether the chapter is enabled. It can be enabled/disabled by a Control Track. When disabled, the movie should skip all the content between the TimeStart and TimeEnd of this chapter (see flag notes). (1 bit)"},18016:{name:i(719),level:3,type:"s",mandatory:!0,minver:1,webm:!1,description:"MIME type of the file."},18017:{name:i(713),level:3,type:"u",divx:!0,description:i(1217)},18018:{name:i(1224),level:3,type:"u",divx:!0,description:i(1217)},18037:{name:i(557),level:3,type:"b",webm:!1,description:i(990)},20529:{name:i(715),level:5,type:"u",mandatory:!0,minver:1,webm:!1,default:0,description:"Tells when this modification was used during encoding/muxing starting with 0 and counting upwards. The decoder/demuxer has to start with the highest order number it finds and work its way down. This value has to be unique over all ContentEncodingOrder elements in the segment."},20530:{name:i(1200),level:5,type:"u",mandatory:!0,minver:1,webm:!1,default:1,range:i(1283),description:"A bit field that describes which elements have been modified in this way. Values (big endian) can be OR'ed. Possible values: 1 - all frame contents, 2 - the track's private data, 4 - the next ContentEncoding (next ContentEncodingOrder. Either the data inside ContentCompression and/or ContentEncryption)"},20531:{name:"ContentEncodingType",level:5,type:"u",mandatory:!0,minver:1,webm:!1,default:0,description:"A value describing what kind of transformation has been done. Possible values: 0 - compression, 1 - encryption"},20532:{name:i(874),level:5,type:"m",minver:1,webm:!1,description:i(813)},20533:{name:"ContentEncryption",level:5,type:"m",minver:1,webm:!1,description:i(1276)},21368:{name:i(980),level:4,type:"u",minver:1,default:1,range:"not 0",description:i(925)},22100:{name:"ChapterStringUID",level:4,type:"8",mandatory:!1,minver:3,webm:!0,description:i(1089)},22337:{name:i(1008),level:2,type:"8",mandatory:!0,minver:1,description:i(650)},22612:{name:"SilentTracks",cppname:i(636),level:2,type:"m",minver:1,webm:!1,description:i(1010)},25152:{name:"ContentEncoding",level:4,type:"m",mandatory:!0,multiple:!0,minver:1,webm:!1,description:i(940)},25188:{name:i(1077),cppname:"AudioBitDepth",level:4,type:"u",minver:1,range:"not 0",description:"Bits per sample, mostly used for PCM."},25906:{name:i(876),level:3,type:"b",multiple:!0,webm:!1,description:i(610)},26148:{name:i(637),level:3,type:"m",multiple:!0,minver:1,webm:!1,description:i(927)},26897:{name:i(755),cppname:i(553),level:5,type:"m",multiple:!0,minver:1,webm:!1,description:i(518)},26914:{name:i(526),cppname:"ChapterProcessTime",level:6,type:"u",mandatory:!0,minver:1,webm:!1,description:i(1271)},26916:{name:i(634),level:2,type:"m",multiple:!0,minver:1,webm:!1,description:i(1080)},26931:{name:i(656),cppname:i(654),level:6,type:"b",mandatory:!0,minver:1,webm:!1,description:i(1120)},26948:{name:i(511),cppname:"ChapterProcess",level:4,type:"m",multiple:!0,minver:1,webm:!1,description:i(518)},26965:{name:i(910),cppname:i(544),level:5,type:"u",mandatory:!0,minver:1,webm:!1,default:0,description:i(1027)},29555:{name:i(924),level:2,type:"m",mandatory:!0,multiple:!0,minver:1,webm:!1,description:i(1134)},29572:{name:"SegmentFilename",level:2,type:"8",minver:1,webm:!1,description:i(655)},29766:{name:"AttachmentLink",cppname:i(1061),level:3,type:"u",minver:1,webm:!1,range:i(1283),description:i(1183)},2459272:{name:i(691),level:3,type:"8",minver:1,description:"A human-readable string specifying the codec."},408125543:{name:i(1026),level:"0",type:"m",mandatory:!0,multiple:!0,minver:1,description:"This element contains all other top-level (level 1) elements. Typically a Matroska file is composed of 1 segment."},17530:{name:i(712),level:4,type:"s",mandatory:!0,minver:1,webm:!1,default:"und",description:i(928)},17827:{name:i(684),level:4,type:"8",mandatory:!0,minver:1,webm:!1,description:i(867)},26568:{name:i(929),cppname:"TagSimple",level:3,recursive:"1",type:"m",mandatory:!0,multiple:!0,minver:1,webm:!1,description:i(697)},25542:{name:i(1230),level:4,type:"u",multiple:!0,minver:1,webm:!1,default:0,description:i(487)},25540:{name:i(728),level:4,type:"u",multiple:!0,minver:1,webm:!1,default:0,description:i(660)},25545:{name:i(651),level:4,type:"u",multiple:!0,minver:1,webm:!1,default:0,description:i(877)},25541:{name:i(592),level:4,type:"u",multiple:!0,minver:1,webm:!1,default:0,description:i(823)},25546:{name:i(994),cppname:"TagTargetType",level:4,type:"s",minver:1,webm:!1,strong:i(490),description:i(762)},26826:{name:i(555),cppname:"TagTargetTypeValue",level:4,type:"u",minver:1,webm:!1,default:50,description:i(1002)},25536:{name:"Targets",cppname:"TagTargets",level:3,type:"m",mandatory:!0,minver:1,webm:!1,description:"Contain all UIDs where the specified meta data apply. It is empty to describe everything in the segment."},307544935:{name:i(1067),level:1,type:"m",multiple:!0,minver:1,webm:!1,description:i(1021)},17677:{name:i(711),cppname:"ChapterProcessPrivate",level:5,type:"b",minver:1,webm:!1,description:i(618)},17278:{name:i(1242),cppname:i(1017),level:5,type:"s",multiple:!0,minver:1,webm:!1,description:i(838)},17276:{name:i(916),cppname:i(1083),level:5,type:"s",mandatory:!0,multiple:!0,minver:1,webm:!0,default:"eng",description:i(989)},143:{name:"ChapterTrack",level:4,type:"m",minver:1,webm:!1,description:i(653)},25539:{name:i(1277),level:4,type:"u",minver:1,webm:!1,description:i(727)},28348:{name:i(574),level:4,type:"u",minver:1,webm:!1,range:i(1283),description:i(482)},28263:{name:"ChapterSegmentUID",level:4,type:"b",minver:1,webm:!1,range:">0",bytesize:16,description:"A segment to play in place of this chapter. Edition ChapterSegmentEditionUID should be used for this segment, otherwise no edition is used."},29636:{name:i(842),level:4,type:"u",mandatory:!0,minver:1,webm:!0,range:i(1283),description:i(584)},182:{name:i(1056),level:3,recursive:"1",type:"m",mandatory:!0,multiple:!0,minver:1,webm:!0,description:i(1145)},17885:{name:i(1044),level:3,type:"u",minver:1,webm:!1,default:0,range:"0-1",description:"Specify if the chapters can be defined multiple times and the order to play them is enforced. (1 bit)"},17883:{name:i(561),level:3,type:"u",mandatory:!0,minver:1,webm:!1,default:0,range:i(587),description:"If a flag is set (1) the edition should be used as the default one. (1 bit)"},17853:{name:i(856),level:3,type:"u",mandatory:!0,minver:1,webm:!1,default:0,range:"0-1",description:i(1166)},17852:{name:"EditionUID",level:3,type:"u",minver:1,webm:!1,range:i(1283),description:i(1190)},17849:{name:i(959),level:2,type:"m",mandatory:!0,multiple:!0,minver:1,webm:!0,description:i(869)},272869232:{name:i(1055),level:1,type:"m",minver:1,webm:!0,description:i(1265)},18094:{name:i(1172),level:3,type:"u",mandatory:!0,minver:1,webm:!1,range:i(1283),description:i(794)},18012:{name:i(753),level:3,type:"b",mandatory:!0,minver:1,webm:!1,description:i(1042)},18030:{name:"FileName",level:3,type:"8",mandatory:!0,minver:1,webm:!1,description:i(864)},18046:{name:i(683),level:3,type:"8",minver:1,webm:!1,description:i(930)},24999:{name:i(567),level:2,type:"m",mandatory:!0,multiple:!0,minver:1,webm:!1,description:i(891)},423732329:{name:i(765),level:1,type:"m",minver:1,webm:!1,description:i(1262)},235:{name:i(809),level:5,type:"u",webm:!1,default:0,description:i(532)},21343:{name:i(678),level:5,type:"u",webm:!1,default:1,range:"not 0",description:i(630)},219:{name:i(733),level:4,type:"m",multiple:!0,minver:2,webm:!1,description:i(489)},234:{name:i(1065),level:4,type:"u",minver:2,webm:!1,default:0,description:i(1238)},178:{name:i(644),level:4,type:"u",mandatory:!1,minver:4,webm:!1,description:i(955)},240:{name:i(802),level:4,type:"u",mandatory:!1,minver:4,webm:!1,description:"The relative position of the referenced block inside the cluster with 0 being the first possible position for an element inside that cluster.",position:"clusterRelative"},241:{name:i(1068),level:4,type:"u",mandatory:!0,minver:1,description:"The position of the Cluster containing the required Block.",position:"segment"},247:{name:i(820),level:4,type:"u",mandatory:!0,minver:1,range:"not 0",description:i(533)},183:{name:i(882),level:3,type:"m",mandatory:!0,multiple:!0,minver:1,description:i(565)},179:{name:i(579),level:3,type:"u",mandatory:!0,minver:1,description:i(577)},187:{name:i(1013),level:2,type:"m",mandatory:!0,multiple:!0,minver:1,description:"Contains all information relative to a seek point in the segment."},475249515:{name:i(970),level:1,type:"m",minver:1,description:i(1251)},18406:{name:"ContentSigHashAlgo",level:6,type:"u",minver:1,webm:!1,default:0,description:i(988)},18405:{name:i(979),level:6,type:"u",minver:1,webm:!1,default:0,description:i(946)},18404:{name:"ContentSigKeyID",level:6,type:"b",minver:1,webm:!1,description:i(1229)},18403:{name:i(981),level:6,type:"b",minver:1,webm:!1,description:i(962)},18402:{name:i(1057),level:6,type:"b",minver:1,webm:!1,description:i(1192)},18401:{name:i(514),level:6,type:"u",minver:1,webm:!1,default:0,description:"The encryption algorithm used. The value '0' means that the contents have not been encrypted but only signed. Predefined values: 1 - DES, 2 - 3DES, 3 - Twofish, 4 - Blowfish, 5 - AES"},28032:{name:i(1274),level:3,type:"m",minver:1,webm:!1,description:i(566)},196:{name:i(504),level:3,type:"b",divx:!0,bytesize:16,description:i(1247)},199:{name:"TrickMasterTrackUID",level:3,type:"u",divx:!0,description:i(1247)},198:{name:"TrickTrackFlag",level:3,type:"u",divx:!0,default:0,description:i(1247)},193:{name:i(685),level:3,type:"b",divx:!0,bytesize:16,description:i(1247)},192:{name:i(1048),level:3,type:"u",divx:!0,description:"DivX trick track extenstions"},237:{name:"TrackJoinUID",level:5,type:"u",mandatory:!0,multiple:!0,minver:3,webm:!1,range:i(1283),description:"The trackUID number of a track whose blocks are used to create this virtual track."},233:{name:i(1154),level:4,type:"m",minver:3,webm:!1,description:i(1126)},230:{name:i(839),level:6,type:"u",mandatory:!0,minver:3,webm:!1,description:"The kind of plane this track corresponds to (0: left eye, 1: right eye, 2: background)."},229:{name:i(960),level:6,type:"u",mandatory:!0,minver:3,webm:!1,range:i(1283),description:"The trackUID number of the track representing the plane."},228:{name:i(1046),level:5,type:"m",mandatory:!0,multiple:!0,minver:3,webm:!1,description:i(652)},227:{name:i(914),level:4,type:"m",minver:3,webm:!1,description:"Contains the list of all video plane tracks that need to be combined to create this 3D track"},226:{name:i(1059),level:3,type:"m",minver:3,webm:!1,description:"Operation that needs to be applied on tracks to create this virtual track. For more details look at the Specification Notes on the subject."},32123:{name:i(625),cppname:i(631),level:4,type:"b",webm:!1,description:"Table of horizontal angles for each successive channel, see appendix."},159:{name:i(1149),cppname:"AudioChannels",level:4,type:"u",mandatory:!0,minver:1,default:1,range:i(1283),description:i(826)},30901:{name:i(1269),cppname:i(1266),level:4,type:"f",minver:1,default:i(1084),range:i(858),description:"Real output sampling frequency in Hz (used for SBR techniques)."},181:{name:i(1150),cppname:i(1045),level:4,type:"f",mandatory:!0,minver:1,default:8e3,range:i(858),description:i(840)},225:{name:i(1191),cppname:i(938),level:3,type:"m",minver:1,description:"Audio settings."},2327523:{name:i(847),cppname:i(645),level:4,type:"f",range:i(858),strong:i(1186),description:"Number of frames per second. only."},3126563:{name:i(1178),cppname:i(617),level:4,type:"f",webm:!1,range:i(858),description:"Gamma Value."},3061028:{name:"ColourSpace",cppname:i(720),level:4,type:"b",minver:1,webm:!1,bytesize:4,description:i(1031)},21683:{name:"AspectRatioType",cppname:i(911),level:4,type:"u",minver:1,default:0,description:i(816)},21682:{name:i(985),cppname:"VideoDisplayUnit",level:4,type:"u",minver:1,default:0,description:i(1137)},21690:{name:i(996),cppname:i(686),level:4,type:"u",minver:1,default:i(672),range:"not 0",description:"Height of the video frames to display. The default value is only valid when DisplayUnit is 0."},21680:{name:"DisplayWidth",cppname:"VideoDisplayWidth",level:4,type:"u",minver:1,default:i(1003),range:i(1283),description:i(853)},21725:{name:i(1225),cppname:i(1090),level:4,type:"u",minver:1,default:0,description:i(1078)},21708:{name:"PixelCropLeft",cppname:i(608),level:4,type:"u",minver:1,default:0,description:i(800)},21691:{name:"PixelCropTop",cppname:"VideoPixelCropTop",level:4,type:"u",minver:1,default:0,description:"The number of video pixels to remove at the top of the image."},21674:{name:"PixelCropBottom",cppname:i(860),level:4,type:"u",minver:1,default:0,description:i(775)},186:{name:"PixelHeight",cppname:i(1207),level:4,type:"u",mandatory:!0,minver:1,range:"not 0",description:"Height of the encoded video frames in pixels."},176:{name:i(1003),cppname:i(662),level:4,type:"u",mandatory:!0,minver:1,range:i(1283),description:i(509)},21433:{name:i(1193),level:4,type:"u",maxver:"0",webm:!1,divx:!1,description:"DEPRECATED, DO NOT USE. Bogus StereoMode value used in old versions of libmatroska. (0: mono, 1: right eye, 2: left eye, 3: both eyes)."},21440:{name:i(1100),cppname:"VideoAlphaMode",level:4,type:"u",minver:3,webm:!0,default:0,description:"Alpha Video Mode. Presence of this element indicates that the BlockAdditional element could contain Alpha data."},21432:{name:i(507),cppname:i(812),level:4,type:"u",minver:3,webm:!0,default:0,description:i(673)},154:{name:i(810),cppname:i(628),level:4,type:"u",mandatory:!0,minver:2,webm:!0,default:0,range:"0-1",description:"Set if the video is interlaced. (1 bit)"},224:{name:"Video",cppname:i(1205),level:3,type:"m",minver:1,description:i(1097)},26277:{name:i(619),level:4,type:"b",mandatory:!0,minver:1,webm:!1,description:"The binary value used to represent this track in the chapter codec data. The format depends on the ChapProcessCodecID used."},26303:{name:"TrackTranslateCodec",level:4,type:"u",mandatory:!0,minver:1,webm:!1,description:"The chapter codec using this ID (0: Matroska Script, 1: DVD-menu)."},26364:{name:i(1268),level:4,type:"u",multiple:!0,minver:1,webm:!1,description:i(502)},22203:{name:"SeekPreRoll",level:3,type:"u",mandatory:!0,multiple:!1,default:0,minver:4,webm:!0,description:i(943)},22186:{name:i(500),level:3,type:"u",multiple:!1,default:0,minver:4,webm:!0,description:i(517)},28587:{name:i(588),level:3,type:"u",multiple:!0,minver:1,webm:!1,description:"Specify that this track is an overlay track for the Track specified (in the u-integer). That means when this track has a gap (see SilentTracks) the overlay track should be used instead. The order of multiple TrackOverlay matters, the first one is the one that should be used. If not found it should be the second, etc."},170:{name:i(716),level:3,type:"u",mandatory:!0,minver:2,webm:!1,default:1,range:"0-1",description:"The codec can decode potentially damaged data (1 bit)."},2536e3:{name:i(772),level:3,type:"s",multiple:!0,webm:!1,description:i(1058)},3883072:{name:i(793),level:3,type:"s",multiple:!0,webm:!1,description:i(1146)},3839639:{name:i(547),level:3,type:"8",webm:!1,description:i(819)},25506:{name:"CodecPrivate",level:3,type:"b",minver:1,description:i(1284)},2274716:{name:i(677),cppname:i(571),level:3,type:"s",minver:1,default:i(499),description:i(827)},21358:{name:i(906),cppname:"TrackName",level:3,type:"8",minver:1,description:"A human-readable track name."},21998:{name:"MaxBlockAdditionID",level:3,type:"u",mandatory:!0,minver:1,webm:!1,default:0,description:i(845)},21375:{name:"TrackOffset",level:3,type:"i",webm:!1,default:0,description:i(841)},2306383:{name:i(1052),level:3,type:"f",mandatory:!0,minver:1,maxver:"3",webm:!1,default:1,range:i(858),description:i(582)},2313850:{name:i(580),cppname:"TrackDefaultDecodedFieldDuration",level:3,type:"u",minver:4,range:"not 0",description:i(861)},2352003:{name:"DefaultDuration",cppname:i(848),level:3,type:"u",minver:1,range:"not 0",description:i(1129)},28152:{name:i(1213),cppname:"TrackMaxCache",level:3,type:"u",minver:1,webm:!1,description:"The maximum cache size required to store referenced frames in and the current frame. 0 means no cache is needed."},28135:{name:i(1088),cppname:i(900),level:3,type:"u",mandatory:!0,minver:1,webm:!1,default:0,description:"The minimum number of frames a player should be able to cache during playback. If set to 0, the reference pseudo-cache system is not used."},156:{name:"FlagLacing",cppname:i(575),level:3,type:"u",mandatory:!0,minver:1,default:1,range:"0-1",description:i(843)},21930:{name:"FlagForced",cppname:i(1036),level:3,type:"u",mandatory:!0,minver:1,default:0,range:"0-1",description:i(1175)},185:{name:i(866),cppname:i(1051),level:3,type:"u",mandatory:!0,minver:2,webm:!0,default:1,range:"0-1",description:i(1227)},29637:{name:i(709),level:3,type:"u",mandatory:!0,minver:1,range:i(1283),description:i(1024)},215:{name:i(621),level:3,type:"u",mandatory:!0,minver:1,range:i(1283),description:i(542)},174:{name:"TrackEntry",level:2,type:"m",mandatory:!0,multiple:!0,minver:1,description:i(1104)},374648427:{name:i(1038),level:1,type:"m",multiple:!0,minver:1,description:i(674)},175:{name:i(828),level:2,type:"b",multiple:!0,webm:!1,description:i(497)},202:{name:i(871),level:4,type:"u",multiple:!1,mandatory:!0,minver:0,webm:!1,divx:!0,description:i(1247)},201:{name:i(1256),level:4,type:"u",multiple:!1,mandatory:!0,minver:0,webm:!1,divx:!0,description:i(1247)},200:{name:i(527),level:3,type:"m",multiple:!1,minver:0,webm:!1,divx:!0,description:i(1247)},207:{name:"SliceDuration",level:5,type:"u",default:0,description:"The (scaled) duration to apply to the element."},206:{name:i(803),cppname:i(670),level:5,type:"u",default:0,description:"The (scaled) delay to apply to the element."},203:{name:"BlockAdditionID",cppname:i(498),level:5,type:"u",default:0,description:i(768)},205:{name:"FrameNumber",cppname:"SliceFrameNumber",level:5,type:"u",default:0,description:i(807)},204:{name:i(1170),cppname:i(488),level:5,type:"u",minver:1,default:0,divx:!1,description:"The reverse number of the frame in the lace (0 is the last frame, 1 is the next to last, etc). While there are a few files in the wild with this element, it is no longer in use and has been deprecated. Being able to interpret this element is not required for playback."},232:{name:i(541),level:4,type:"m",multiple:!0,minver:1,divx:!1,description:i(937)},142:{name:i(896),level:3,type:"m",minver:1,divx:!1,description:"Contains slices description."},30114:{name:i(808),level:3,type:"i",minver:4,webm:!0,description:i(850)},164:{name:"CodecState",level:3,type:"b",minver:2,webm:!1,description:i(548)},253:{name:i(832),level:3,type:"i",webm:!1,description:i(1136)},251:{name:i(1132),level:3,type:"i",multiple:!0,minver:1,description:i(781)},250:{name:i(1141),cppname:i(1040),level:3,type:"u",mandatory:!0,minver:1,webm:!1,default:0,description:i(535)},155:{name:i(789),level:3,type:"u",minver:1,default:"TrackDuration",description:i(666)},165:{name:i(1167),level:5,type:"b",mandatory:!0,minver:1,webm:!1,description:i(895)},238:{name:i(1082),level:5,type:"u",mandatory:!0,minver:1,webm:!1,default:1,range:i(1283),description:i(1139)},166:{name:"BlockMore",level:4,type:"m",mandatory:!0,multiple:!0,minver:1,webm:!1,description:"Contain the BlockAdditional and some parameters."},30113:{name:i(521),level:3,type:"m",minver:1,webm:!1,description:i(609)},162:{name:i(706),level:3,type:"b",webm:!1,description:i(1085)},161:{name:i(1168),level:3,type:"b",mandatory:!0,minver:1,description:i(915)},160:{name:i(905),level:2,type:"m",multiple:!0,minver:1,description:"Basic container of information containing a single Block or BlockVirtual, and information specific to that Block/VirtualBlock."},163:{name:"SimpleBlock",level:2,type:"b",multiple:!0,minver:2,webm:!0,divx:!0,description:i(1018)},171:{name:i(991),cppname:"ClusterPrevSize",level:2,type:"u",minver:1,description:i(1275),position:"prevCluster"},167:{name:"Position",cppname:i(1219),level:2,type:"u",minver:1,webm:!1,description:"The Position of the Cluster in the segment (0 in live broadcast streams). It might help to resynchronise offset on damaged streams.",position:i(1236)},22743:{name:i(926),cppname:i(758),level:3,type:"u",multiple:!0,minver:1,webm:!1,description:"One of the track number that are not used from now on in the stream. It could change later if not specified as silent in a further Cluster."},231:{name:i(1208),cppname:i(560),level:2,type:"u",mandatory:!0,minver:1,description:i(799)},524531317:{name:"Cluster",level:1,type:"m",multiple:!0,minver:1,description:"The lower level element containing the (monolithic) Block structure."},19840:{name:"MuxingApp",level:2,type:"8",mandatory:!0,minver:1,description:i(835)},31657:{name:"Title",level:2,type:"8",minver:1,webm:!1,description:i(576)},2807730:{name:i(1147),level:2,type:"u",mandatory:!0,minver:4,default:i(529),description:i(1151)},2807729:{name:i(780),level:2,type:"u",mandatory:!0,minver:1,default:i(941),description:i(726)},27045:{name:"ChapterTranslateID",level:3,type:"b",mandatory:!0,minver:1,webm:!1,description:i(777)},27071:{name:i(1033),level:3,type:"u",mandatory:!0,minver:1,webm:!1,description:i(732)},27132:{name:i(898),level:3,type:"u",multiple:!0,minver:1,webm:!1,description:i(1140)},4096955:{name:"NextFilename",level:2,type:"8",minver:1,webm:!1,description:i(554)},4110627:{name:"NextUID",level:2,type:"b",minver:1,webm:!1,bytesize:16,description:i(1101)},3965867:{name:i(757),level:2,type:"8",minver:1,webm:!1,description:i(852)},3979555:{name:"PrevUID",level:2,type:"b",minver:1,webm:!1,bytesize:16,description:i(1130)},29604:{name:i(982),level:2,type:"b",minver:1,webm:!1,range:i(1283),bytesize:16,description:i(1252)},357149030:{name:"Info",level:1,type:"m",mandatory:!0,multiple:!0,minver:1,description:i(822)},21420:{name:i(868),level:3,type:"u",mandatory:!0,minver:1,description:i(887),position:i(1236)},21419:{name:i(743),level:3,type:"b",mandatory:!0,minver:1,description:"The binary ID corresponding to the element name.",type2:i(1199)},19899:{name:"Seek",cppname:i(1280),level:2,type:"m",mandatory:!0,multiple:!0,minver:1,description:i(1174)},290298740:{name:i(889),cppname:"SeekHeader",level:1,type:"m",multiple:!0,minver:1,description:i(1195)},32379:{name:i(735),level:2,type:"m",multiple:!0,webm:!1,i:i(1e3),description:i(572)},32347:{name:i(773),level:1,type:"m",webm:!1,description:i(784)},32437:{name:"Signature",level:1,type:"b",webm:!1,description:i(752)},32421:{name:i(769),level:1,type:"b",webm:!1,description:i(984)},32410:{name:i(578),level:1,type:"u",webm:!1,description:i(907)},32394:{name:"SignatureAlgo",level:1,type:"u",webm:!1,description:i(1116)},458458727:{name:i(1214),level:-1,type:"m",multiple:!0,webm:!1,description:i(1211)},191:{name:i(932),level:-1,type:"b",minver:1,webm:!1,description:i(528),crc:!0},236:{name:"Void",level:-1,type:"b",minver:1,description:i(692)},17139:{name:i(1142),level:1,type:"u",mandatory:!0,default:8,minver:1,description:"The maximum length of the sizes you'll find in this file (8 or less in Matroska). This does not override the element size indicated at the beginning of an element. Elements that have an indicated size which is larger than what is allowed by EBMLMaxSizeLength shall be considered invalid."},17138:{name:"EBMLMaxIDLength",level:1,type:"u",mandatory:!0,default:4,minver:1,description:i(948)},17143:{name:i(917),level:1,type:"u",mandatory:!0,default:1,minver:1,description:i(974)},440786851:{name:"EBML",level:"0",type:"m",mandatory:!0,multiple:!0,minver:1,description:i(1181)}},n={},o={byEbmlID:r,byName:n};for(var a in r){n[r[a][i(589)][i(919)]("-","_")]=parseInt(a,10)}e[i(676)]=o},{}],18:[function(t,e,s){var i=Ih;e[i(676)]={name:"ts-ebml",version:i(862),description:"ebml decoder and encoder",scripts:{setup:"npm install -g http-server;",init:i(1096),update:"npm run reset; npm update",reset:i(815),mkdir:i(749),clean:i(698),build:i(563),start:i(741),stop:i(520),browserify:i(880),watchify:"watchify lib/index.js --standalone EBML -o dist/EBMl.js -v",test:i(923),example:i(890),examples:i(515),examples_bsd:i(1267),check:"tsc -w --noEmit -p ./",lint:i(622),doc:i(658)},repository:{type:"git",url:"git+https://github.com/legokichi/ts-ebml.git"},keywords:[i(821),i(663),i(1012),i(510),i(1272)],author:"legokichi duckscallion",license:"MIT",bugs:{url:"https://github.com/legokichi/ts-ebml/issues"},homepage:i(993),dependencies:{buffer:i(936),commander:"^2.11.0",ebml:"^2.2.1","ebml-block":i(1125),events:i(556),"int64-buffer":"^0.1.9",matroska:i(969)},devDependencies:{"@types/commander":i(1093),"@types/qunit":i(484),browserify:i(702),empower:i(1160),"espower-cli":"^1.1.0","power-assert":"^1.4.4","power-assert-formatter":i(992),"qunit-tap":"^1.5.1",qunitjs:i(817),tslint:i(1264),typedoc:i(721),typescript:"^2.4.2",watchify:i(1158)},bin:i(1233),main:"./lib/index.js",typings:"./lib/index.d.ts"}},{}]},{},[4])(4)})}),Th=ge[Eh(657)](wh);function Ih(t,e){var s=kh();return(Ih=function(t,e){return s[t-=482]})(t,e)}function kh(){var t=["A binary value that a track/codec can refer to when the attachment is needed.","PrevSize","^1.4.1","https://github.com/legokichi/ts-ebml#readme","TargetType","__esModule","DisplayHeight"," closing element before finding the start","readIntLE","Seek","Cluster|Block|BlockAdditional","putRefinedMetaData: info.cueInfos property is deprecated. please use info.cues","A number to indicate the logical level of the target (see TargetType).","PixelWidth","ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/","use_segment_info","9d012a","The first argument must be one of type string, Buffer, ArrayBuffer, Array, ","WritingApp","getSchemaInfo","The list of tracks that are not used in that part of the stream. It is useful when using overlay tracks on seeking. Then you should decide what track to use.","./EBMLDecoder","mkv","CuePoint",'"list" argument must be an Array of Buffers',"copy","tagStart","ChapterCountry","Similar to SimpleBlock Structure","readInt16BE","Invalid typed array length","Element containing elements specific to Tracks/Chapters. A list of valid tags can be found here.","indexOf","_schema","A unique ID to identify the Track. This should be kept the same when making a direct stream copy of the Track to another file.","prototype","Segment","Contains the type of the codec used for the processing. A value of 0 means native Matroska processing (to be defined), a value of 1 means the DVD command set is used. More codec IDs can be added later.",'"offset" is outside of buffer bounds',"once","swap16","Same value as in AVI (32 bits).","break","ChapterTranslateCodec","The values of the Tag if it is binary. Note that this cannot be used in the same SimpleTag as TagString.","matroska/lib/schema","TrackFlagForced","toString","Tracks","writeInt16BE","FlagReferenced","trackTypes","The data of the file.","stack","EditionFlagOrdered","AudioSamplingFreq","TrackPlane","hex","TrickTrackUID","INSPECT_MAX_BYTES","events","TrackFlagEnabled","TrackTimecodeScale","`buffer` v5.x. Use `buffer` v4.x if you require old browser support.","encodeTag","Chapters","ChapterAtom","ContentEncKeyID","A URL to download about the codec used.","TrackOperation","swap32","TrackAttachmentLink","create","drop_default_duration","copyWithin","CueCodecState","ieee754","Tags","CueClusterPosition","Uint64LE","lastIndexOf","toLowerCase","sizeStart","Duration","readFloatBE","DocType","encoding must be a string","BitDepth","The number of video pixels to remove on the right of the image.","startTag","A tuple of corresponding ID used by chapter codecs to represent this segment.","base64-js","BlockAddID","ChapterLanguage","Sampling Frequency","A Block with no data. It must be stored in the stream at the place the real Block should be in display order. (see Block Virtual)","EBMLVersion","DateUTC","MinCache","A unique string ID to identify the Chapter. Use for WebVTT cue identifier storage.","VideoPixelCropRight","SimpleBlock","object","^2.9.1","dataEnd","encodeChunk","npm run update; npm run mkdir; npm run build","Video settings.","toBuffer","commonjsGlobal","AlphaMode","A unique ID to identify the next chained segment (128 bits).","VP8 ","Fixed-Size Lacing Error","Describes a track with all elements.","join","listener","UID of the Track to apply this chapter too. In the absense of a control track, choosing this chapter will select the listed Tracks and deselect unlisted tracks. Absense of this element indicates that the Chapter should be applied to any currently used Tracks.","makeMetadataSeekable","default","writeInt16LE","Buffer size must be a multiple of 32-bits","Attempt to write outside buffer bounds","warn","n must be a positive number","level","Signature algorithm used (1=RSA, 2=elliptic).","The version of EBML parser used to create the file.","readBlock","metadataloaded","Contains the command information. The data should be interpreted depending on the ChapProcessCodecID value. For ChapProcessCodecID = 1, the data correspond to the binary DVD cell pre/post commands.","7bit or more bigger uint not supported.","hasLoggingStarted","getTime","image/webp","^1.1.0","Contains the list of all tracks whose Blocks need to be combined to create this virtual track","removeElement","unknown","Number of nanoseconds (not scaled via TimecodeScale) per frame ('frame' in the Matroska sense -- one element put into a (Simple)Block).","A unique ID to identify the previous chained segment (128 bits).","createFloatBuffer","ReferenceBlock","unknownSize","Element containing elements specific to Tracks/Chapters.","A string that describes the type of document that follows this EBML header. 'matroska' in our case or 'webm' for webm files.","Relative position of the data that should be in position of the virtual block.","How DisplayWidth & DisplayHeight should be interpreted (0: pixels, 1: centimeters, 2: inches, 3: Display Aspect Ratio).","isView","An ID to identify the BlockAdditional level.","Specify an edition UID on which this correspondance applies. When not specified, it means for all editions found in the segment.","ReferencePriority","EBMLMaxSizeLength","isBuffer","push","Contains the atom information to use as the chapter atom (apply to all tracks).","A URL to find information about the codec used.","TimecodeScaleDenominator","setPrototypeOf","Channels","SamplingFrequency","Timestamp scale numerator, see TimecodeScale.","lastClusterTimecode","writeUInt16BE","TrackJoinBlocks","140FULiIj","kMaxLength","TrackType","^3.7.0"," ... ","^1.2.3","byteLength","Decoder","offset is not uint","offset","readUInt8","If an edition is hidden (1), it should not be available to the user interface (but still to Control Tracks; see flag notes). (1 bit)","BlockAdditional","Block","utf8","LaceNumber","writeFloatBE","FileUID","slice","Contains a single seek entry to an EBML element.","Set if that track MUST be active during playback. There can be many forced track for a kind (audio, video or subs), the player should select the one which language matches the user preference or the default + forced track. Overlay MAY happen between a forced and non-forced track of the same kind. (1 bit)","byteOffset","ChapterFlagHidden","GammaValue","forEach","unknown tag type:","Set the EBML characteristics of the data to follow. Each EBML document has to start with this.",'The "value" argument must not be of type number. Received type number',"The UID of an attachment that is used by this codec.","Failed to converge to a stable metadata size","140916EcKjsX","Informational","buffer","discardable","DocTypeVersion","A unique ID to identify the edition. It's useful for tagging an edition.","Audio","For public key algorithms this is the ID of the public key the the data was encrypted with.","OldStereoMode","Arguments must be Buffers","Contains the position of other level 1 elements.","context","10WFIPwq","Out of range index","ebmlID","ContentEncodingScope","103723vKpMgZ",'Uncaught, unspecified "error" event. (',"readInt32LE","1091037iMWnel","TrackVideo","VP8BitStreamToRiffWebPBuffer","VideoPixelHeight","Timecode","sizeEnd","allocUnsafe","Contain signature of some (coming) elements in the stream.","readDoubleBE","MaxCache","SignatureSlot","_events","pop","DivX font extension","defineProperty","ClusterPosition","ChapString","type","1261nZSSIm","foo","FileUsedEndTime","PixelCropRight","string","Set if the track is usable. (1 bit)","segment_offset","This is the ID of the private key the data was signed with.","TagAttachmentUID","trackDefaultDuration","writeIntLE","./lib/cli.js","A set of track types coded on 8 bits (1: video, 2: audio, 3: complex, 0x10: logo, 0x11: subtitle, 0x12: buttons, 0x20: control).","writeUInt32LE","segment","8LMDhLJ","The position of the Codec State corresponding to this Cue element. 0 means that the data is taken from the initial Track Entry.","splice","pow","Contains the string to use as the chapter atom.","ChapCountry","includes","4TGnvIy","children","swap64","DivX trick track extenstions","EBML structure is broken","<Buffer ","binary",'A top-level element to speed seeking access. All entries are local to the segment. Should be mandatory for non "live" streams.',"A randomly generated unique ID to identify the current segment between many others (128 bits).","Indication to know if this is the default/original language to use for the given tag. (1 bit)","timecodeScale","_maxListeners","ReferenceOffset","poolSize","listenerCount","743697wrPQFj","trim","extractElement","Contain attached files.","constructor","^3.15.1","A system to define basic menus and partition data. For more detailed information, look at the Chapters Explanation.","AudioOutputSamplingFreq","tsc; for file in `find lib -name 'example_*.js' -type f -print`; do browserify lib/$(basename $file) -o test/$(basename $file); done","TrackTranslateEditionUID","OutputSamplingFrequency","trackNumber","Defines when the process command should be handled (0: during the whole chapter, 1: before starting playback, 2: after playback of the chapter).","webp","nextBuffer","ContentEncodings","Size of the previous Cluster, in octets. Can be useful for backward playing.","Settings describing the encryption used. Must be present if the value of ContentEncodingType is 1 and absent otherwise.","ChapterPhysicalEquiv","allocUnsafeSlow","Index out of range","SeekPoint","An ID corresponding to the codec, see the codec page for more info.","ebml/lib/ebml/tools","not 0","Private data only known to the codec.","data","sourceEnd out of bounds","Attempt to allocate Buffer larger than maximum ","warned","The EditionUID to play from the segment linked in ChapterSegmentUID.","removeListener","^2.0.31","map","trace","A unique ID to identify the Attachment(s) the tags belong to. If the value is 0 at this level, the tags apply to all the attachments in the Segment.","SliceLaceNumber","The Clusters containing the required referenced Blocks.","informational",'The "target" argument must be one of type Buffer or Uint8Array. ',"MODULE_NOT_FOUND","floor","_augment","emit_segment_info","emit","Similar to EncryptedBlock Structure)","SliceBlockAddID","eng","CodecDelay","Contains all possible strings to use for the chapter display.","Specify an edition UID on which this translation applies. When not specified, it means for all editions found in the segment.","./tools","TrickMasterTrackSegmentUID","listeners","parent element is not master element","StereoMode","log","Width of the encoded video frames in pixels.","matrosika","ChapProcess"," octets float. failback to 0","TagString","ContentEncAlgo","tsc; for file in `find lib -name 'example_*.js' -type f -printf '%f\\n'`; do browserify lib/$file -o test/$file; done","targetStart out of bounds","CodecDelay is The codec-built-in delay in nanoseconds. This value must be subtracted from each block timestamp in order to get the actual timestamp. The value should be small so the muxing of tracks with the same actual timestamp are in the same Cluster.","Contains all the commands associated to the Atom.","Invalid code point","killall -- node */tsc -w -p","BlockAdditions","ChapterTimeEnd","ebml-block","dataStart","Buffer.write(string, encoding, offset[, length]) is no longer supported","ChapProcessTime","ReferenceFrame","The CRC is computed on all the data of the Master element it's in. The CRC element should be the first in it's parent master for easier reading. All level 1 elements should include a CRC-32. The CRC in use is the IEEE CRC32 Little Endian","1000000000","metadatas","length","The position of the Codec State corresponding to this referenced element. 0 means that the data is taken from the initial Track Entry.","The track for which a position is given.","equals","This frame is referenced and has the specified cache priority. In cache only a frame of the same or higher priority can replace this frame. A value of 0 means the frame is not referenced.","01ffffffffffffff","readInt8","readInt32BE","shift","writeIntBE","TimeSlice","The track number as used in the Block Header (using more than 127 tracks is not encouraged, though the design allows an unlimited number).","metadata dataEnd has wrong number","ChapterProcessCodecID","writeUInt32BE","toLocaleString","CodecSettings","The new codec state to use. Data interpretation is private to the codec. This information should always be referenced by a seek entry.","ChapterString","buffer/","Timestamp of the referenced Block.","Unknown encoding: ","ChapterProcessCommand","An escaped filename corresponding to the next segment.","TargetTypeValue","^1.1.1","FileReferral","logging","utf16le","ClusterTimecode","EditionFlagDefault","logGroup","npm run clean && tsc -p .; npm run browserify","Encoder","Contain positions for different tracks corresponding to the timestamp.","Settings for several content encoding mechanisms like compression or encryption.","AttachedFile","use_duration_every_simpleblock","ChapterTrackNumber","readUInt16LE","TrackLanguage","A list consists of a number of consecutive elements that represent one case where data is used in signature. Ex: means that the BlockAdditional of all Blocks in all Clusters is used for encryption.","toArray","ChapterSegmentEditionUID","TrackFlagLacing","General name of the segment.","Absolute timestamp according to the segment time base.","SignatureHash","CueTime","DefaultDecodedFieldDuration","tools","DEPRECATED, DO NOT USE. The scale to apply on this track to work at normal speed in relation with other tracks (mostly used to adjust video speed when the audio length differs).","'length' is out of bounds","A unique ID to identify the Chapter.","readVint","readUInt32BE","0-1","TrackOverlay","name","_state","lastClusterPosition","TagTrackUID","CueRefCluster","Invalid string. Length must be a multiple of 4","split","removeAllListeners","nextUInt8","decode","_result","./EBMLReader","trackCodecDelay","Timestamp of the end of Chapter (timestamp excluded, not scaled).","elm","WEBP","dataSize","metadata","Cannot find module '","VideoPixelCropLeft","Contain additional blocks to complete the main one. An EBML parser that has no knowledge of the Block structure could still see and use/skip these data.","An element ID whose data will be used to compute the signature.","duration","version","compare","readDoubleLE","readChunk","hasOwnProperty","VideoGamma",'Some optional data attached to the ChapProcessCodecID information. For ChapProcessCodecID = 1, it is the "DVD level" equivalent.',"TrackTranslateTrackID","toPrimitive","TrackNumber","tslint -c ./tslint.json --project ./tsconfig.json --type-check","charCodeAt","'offset' is out of bounds","ChannelPositions","chunks","writeInt32LE","VideoFlagInterlaced","WebPBlockFilter","Number of the referenced Block of Track X in the specified Cluster.","AudioPosition","reverse","from","ChapterTranslate","undefined","ClusterSilentTracks","TrackTranslate","nextUIntV","writeUInt16LE","min","createIntBuffer","newListener","1-254","CueDuration","VideoFrameRate","EventEmitter","isArray","Settings that might be needed by the decompressor. For Header Stripping (ContentCompAlgo=3), the bytes that were removed from the beggining of each frames of the track.","ucs-2",'Writing application ("mkvmerge-0.3.3").',"TagEditionUID","Contains a video plane track that need to be combined to create this 3D track","List of tracks on which the chapter applies. If this element is not present, all tracks apply","ChapterProcessData","A filename corresponding to this segment.","ChapProcessData","unwrapExports","typedoc --mode modules --out doc --disableOutputCheck","Info","A unique ID to identify the Chapter(s) the tags belong to. If the value is 0 at this level, the tags apply to all chapters in the Segment.",'"value" argument is out of bounds',"VideoPixelWidth","webm","abs","cue_info",'The duration of the Block (based on TimecodeScale). This element is mandatory when DefaultDuration is set for the track (but can be omitted as other default values). When not written and with no DefaultDuration, the value is assumed to be the difference between the timestamp of this Block and the timestamp of the next Block in "display" order (not coding order). This element can be useful at the end of a Track (as there is not other Block available), or when there is a break in a track like for subtitle tracks. When set to 0 that means the frame is not a keyframe.',"val must be string, number or Buffer","write","DefaultDuration","SliceDelay","STATE_TAG","PixelHeight","Stereo-3D video mode (0: mono, 1: side by side (left eye is first), 2: top-bottom (right eye is first), 3: top-bottom (left eye is first), 4: checkboard (right is first), 5: checkboard (left is first), 6: row interleaved (right is first), 7: row interleaved (left is first), 8: column interleaved (right is first), 9: column interleaved (left is first), 10: anaglyph (cyan/red), 11: side by side (right eye is first), 12: anaglyph (green/magenta), 13 both eyes laced in one Block (left eye is first), 14 both eyes laced in one Block (right eye is first)) . There are some more details on 3D support in the Specification Notes.","A top-level block of information with many tracks described.","encodeValueToBuffer","exports","Language","CueRefNumber","TagBinary","readUIntBE","last2SimpleBlockVideoTrackTimecode","The compression algorithm used. Algorithms that have been specified so far are: 0 - zlib, 3 - Header Stripping","FileDescription","TagName","TrickTrackSegmentUID","VideoDisplayHeight","Cluster","addListener","2001-01-01T00:00:00.000Z","nextIntV","CodecName","Used to void damaged data, to avoid unexpected behaviors when using damaged data. The content is discarded. Also used to reserve space in a sub-element for later use.","last2SimpleBlockAudioTrackTimecode","Received type ","nextInt16BE","writeInt8","Contains general information about the target.","rm -rf lib/* dist/* test/*.js; mkdir -p dist","or Array-like Object. Received type ","Detected ","WebPFrameFilter","^13.1.0","ebmlBlock","Use emitter.setMaxListeners() to increase limit.","utf-8","BlockVirtual","Uint64BE","writeInt32BE","TrackUID","45005UINilR","ChapProcessPrivate","TagLanguage","FileUsedStartTime","readFloatLE","ContentEncodingOrder","CodecDecodeAll",'"length" is outside of buffer bounds',"__proto__","FileMimeType","VideoColourSpace","^0.5.3","group","isEncoding","_total","Buffer size must be a multiple of 16-bits","Timestamp scale in nanoseconds (1.000.000 means all timestamps in the segment are expressed in milliseconds).",'Specify the physical equivalent of this ChapterAtom like "DVD" (60) or "SIDE" (50), see complete list of values.',"TagChapterUID","Buffer size must be a multiple of 64-bits","writeUIntBE","utf-16le","The chapter codec using this ID (0: Matroska Script, 1: DVD-menu).","CueReference","cannot read ","SignatureElementList","base64","readTag","ChapterTimeStart","valueOf","value","http-server . -s & tsc -w -p .& watchify lib/example_seekable.js -o test/example_seekable.js","use_webp","SeekID","invisible",'"buffer" argument must be a Buffer instance',"readSize","subarray","firstAudioBlockRead","mkdir lib dist 2>/dev/null","int64-buffer","EBML","The signature of the data (until a new.","FileData","set","ChapProcessCommand","Invalid hex string","PrevFilename","ClusterSilentTrackNumber","put","cue","nodeName",'An string that can be used to display the logical level of the target like "ALBUM", "TRACK", "MOVIE", "CHAPTER", etc (see TargetType).',"[object Array]","Trying to access beyond buffer length","Attachments","putRefinedMetaData","ascii","The ID of the BlockAdditional element (0 is the main Block).","SignaturePublicKey","_isBuffer",'"size" argument must be of type number',"CodecDownloadURL","SignatureElements","Buffer","The number of video pixels to remove at the bottom of the image (for HDTV content).","reduce","The binary value used to represent this segment in the chapter codec data. The format depends on the ChapProcessCodecID used.","clusterPtrs","setMaxListeners","TimecodeScale","Timestamp of another frame used as a reference (ie: B or P frame). The timestamp is relative to the block it's attached to.","_buffers","Timestamp of the start of Chapter (not scaled).","Contains elements that will be used to compute the signature.","alloc","_buffer"," bytes","SlowBuffer","BlockDuration","float type bits must 4bytes or 8bytes","listener must be a function","filter","CodecInfoURL","Unique ID representing the file, as random as possible.","writeDoubleBE","substr","isarray","Unrepresentable value: ","Absolute timestamp of the cluster (based on TimecodeScale).","The number of video pixels to remove on the left of the image.","Int64LE","CueRelativePosition","Delay","call","readUIntLE","endTag","The number of the frame to generate from this lace with this delay (allow you to generate many frames from the same Block/Frame).","DiscardPadding","CueRefCodecState","FlagInterlaced","cueInfos","VideoStereoMode","Settings describing the compression used. Must be present if the value of ContentEncodingType is 0 and absent otherwise. Each block must be decompressable even if no previous block is available in order not to prevent seeking.","ChapterFlagEnabled","rm -rf node_modules","Specify the possible modifications to the aspect ratio (0: free resizing, 1: keep aspect ratio, 2: fixed).","^2.4.0","FlagDefault","A string describing the encoding setting used.","CueTrack","ebml","Contains miscellaneous general information and statistics on the file.","A unique ID to identify the Track(s) the tags belong to. If the value is 0 at this level, the tags apply to all tracks in the Segment.","Unrepresentable length: ","stop","Numbers of channels in the track.","Specifies the language of the track in the Matroska languages form.","EncryptedBlock","isEnd",'" is invalid for argument "value"',"amd","ReferenceVirtual","8382BjplEB","tagId",'Muxing application or library ("libmatroska-0.4.3").',"error","readUInt16BE","The countries corresponding to the string, same 2 octets as in Internet domains.","TrackPlaneType","Sampling frequency in Hz.","A value to add to the Block's Timestamp. This can be used to adjust the playback offset of a track.","ChapterUID","Set if the track may contain blocks using lacing. (1 bit)","STATE_SIZE","The maximum value of BlockAdditions for this track.","writeFloatLE","FrameRate","TrackDefaultDuration","read","Duration in nanoseconds of the silent data added to the Block (padding at the end of the Block for positive value, at the beginning of the Block for negative value). The duration of DiscardPadding is not calculated in the duration of the TrackEntry and should be discarded during playback.","commonjsRequire","An escaped filename corresponding to the previous segment.","Width of the video frames to display. The default value is only valid when DisplayUnit is 0.","groupCollapsed","unable to refine metadata, stable size could not be found in ","EditionFlagHidden","segmentOffset","> 0","RIFF","VideoPixelCropBottom","The period in nanoseconds (not scaled by TimcodeScale)\nbetween two successive fields at the output of the decoding process (see the notes)","2.0.2","assign","Filename of the attached file.","groupEnd","FlagEnabled","The name of the Tag that is going to be stored.","SeekPosition","Contains all information about a segment edition.","toByteArray","ReferenceTimeCode","ucs2","concat","ContentCompression","frames","SignedElement","A unique ID to identify the EditionEntry(s) the tags belong to. If the value is 0 at this level, the tags apply to all editions in the Segment.","createRIFFChunk","size: 0x","browserify lib/index.js --standalone EBML -o dist/EBML.js","timecode","CueTrackPositions",'" is invalid for option "size"',"inspect","flush","function","The position of the element in the segment in octets (0 = first level 1 element).","fromCharCode","SeekHead","tsc; browserify lib/example_seekable.js -o test/example_seekable.js","An attached file.","metadataSize","A randomly generated unique ID that all segments related to each other must use (128 bits).","ended","Interpreted by the codec as it wishes (using the BlockAddID).","Slices","ContentCompSettings","ChapterTranslateEditionUID","readIntBE","TrackMinCache","_cursor","nothing","TYPED_ARRAY_SUPPORT","readInt16LE","BlockGroup","Name","Hash algorithm used (1=SHA1-160, 2=MD5).","__extends","writeVint","ChapProcessCodecID","VideoAspectRatio","keys","no video, no audio track","TrackCombinePlanes","Block containing the actual data to be rendered and a timestamp relative to the Cluster Timecode. (see Block Structure)","ChapLanguage","EBMLReadVersion","TagDefault","replace","encode","fill","3535213FiJysY","tsc; espower lib/test.js > lib/test.tmp; mv -f lib/test.tmp lib/test.js; browserify lib/test.js -o test/test.js","Tag","Number of the Block in the specified Cluster.","SilentTrackNumber","The track identification for the given Chapter Codec.","Specifies the language of the tag specified, in the Matroska languages form.","SimpleTag","A human-friendly name for the attached file.","audio","CRC-32","firstVideoBlockRead","Argument must be a Buffer","_stack","^5.0.7","Contains extra time information about the data contained in the Block. While there are a few files in the wild with this element, it is no longer in use and has been deprecated. Being able to interpret this element is not required for playback.","TrackAudio","byEbmlID","Settings for one content encoding like compression or encryption.","1000000","apply","After a discontinuity, SeekPreRoll is the duration in nanoseconds of the data the decoder must decode before the decoded data is valid.","latin1","currentTrack","The algorithm used for the signature. A value of '0' means that the contents have not been signed but only encrypted. Predefined values: 1 - RSA","matroska","The maximum length of the IDs you'll find in this file (4 or less in Matroska).","toJSON","./EBMLEncoder","./vint",'"size" argument must not be negative','"encoding" must be a valid string encoding',"_tag_stack","The duration of the block according to the segment time base. If missing the track's DefaultDuration does not apply and no duration information is available in terms of the cues.","Int64BE","video","toNumber","EditionEntry","TrackPlaneUID",'The value "',"A cryptographic signature of the contents.","trackInfo","number","This browser lacks typed array (Uint8Array) support which is required by ","both","writeTag","fromByteArray","^2.2.3","Cues","species","No schema entry found for ","cues","The minimum EBML version a parser has to support to read this file.","The version of DocType interpreter used to create the file.","Duration of the segment (based on TimecodeScale).","STATE_CONTENT","$1 ","ContentSigAlgo","CueBlockNumber","ContentSignature","SegmentUID","1939AvmJvE","The public key to use with the algorithm (in the case of a PKI-based signature).","DisplayUnit","writeUIntLE","toArrayBuffer","The hash algorithm used for the signature. A value of '0' means that the contents have not been signed but only encrypted. Predefined values: 1 - SHA1-160 2 - MD5","The languages corresponding to the string, in the bibliographic ISO-639-2 form."];return(kh=function(){return t})()}function _h(){var t=["blob","recorderType","left","arrayBuffer","getInternalRecorder","stringify","reverse","MediaRecorder API seems unable to record mimeType:","onaudioprocess","addStream","audioRecorder","onRecordingStopped","createGain","7nYlpAJ","OtherRecordingError","https://unpkg.com/webm-wasm@latest/dist/webm-wasm.wasm","108dxpYNh","MRecordRTC","Please make sure MediaStream is active.","msSaveOrOpenBlob","sample-rate must be under range 22050 and 96000.","Your browser does not support the Media Recorder API. Please try other modules e.g. WhammyRecorder or StereoAudioRecorder.","Decoder","start","createMediaStreamSource","read","object","5.6.2","log","transaction","leftchannel","timecode","multi-streams-mixer","prototype","ended","window","click","revokeObjectURL","chrome","video/webm","offsetHeight","Recording finished!","split","appendChild","initCallback","OutOfMemory","URL","muted","setRepeat","commonjsGlobal","resume","firefox","autoWriteToDisk","3RtJgLh","Your browser supports both MediRecorder API and canvas.captureStream!","getTracks","addStreams","Stop an active recorder.","timestamps","mozCaptureStream","terminate","resumeRecording","workerPath","previewStream","Edge","target","started recording ","destroy","The MediaRecorder is not in a state in which the proposed operation is allowed to be executed.","CanvasRecorder","buffer","canvas resolutions","makeMetadataSeekable","record","readAsDataURL","MultiStreamRecorder","toFixed","active","cues","className",'First argument "MediaStream" is required.',"writeToDisk","audio/ogg","metadatas","state","getTime","numberOfAudioChannels","pow","clearRecordedData","releaseStreams","createCommonjsModule","inputBuffer","onupgradeneeded","canRecordMimeType","sqrt","recordingDuration is required.","height","Fake/5.0 (FakeOS) AppleWebKit/123 (KHTML, like Gecko) Fake/12.3.4567.89 Fake/123.45","noWorker","Using frames-interval:","The UA cannot provide the codec or recording option that has been requested.","getNativeBlob","toString","for output-type:","onloadedmetadata","video width/height","MultiStreamsMixer","advertisement","StereoAudioRecorder is set to record number of channels: ","Paused recording.","pause","destination","round","image/png","4uVyllv","240014aNVOOs","pipeTo","onsuccess","volume","showMousePointer","First parameter is required.","invokeSaveAsDialog","stream","view","createObjectURL","position","getWebPImages","href","GenericError","stopped","connect","dbName","dispatchEvent","forEach","VP8","put","result","quality","replace","ondataavailable","map","_controlledReadableStream","image","callback","invisible","value","Desired sample-rate: ","webAssemblyPath","image/gif","documentElement","join","absolute","functionToLoop","UnknownError","onTimeStamp","IndexedDB API are not available in this browser."," blob ","desiredSampRate","webm","setUint16","video/vp8","gain","createElement","cancelAnimationFrame","paused","audioContext","Your stream has no audio tracks.","appVersion","chrome/","started","warn","Input must be formatted properly as a base64 encoded DataURI of type image/webp","elementClass","canvas","onresume","rightBuffers","objectStore","autoplay","width","drawImage","Canvas recording is NOT supported in Firefox.","opacity","string","requestData","push","RIFF","Initialized recorderType:","onVideoProcessStarted","getState","display:none;opacity:0;color:transparent;","kind","isTypeSupported","MediaRecorder security error","frames","rightchannel","reset","Storage","play","test","concat","versions","data","WebAudio API has no support on this browser.","getContext","setVersion","(eee.data);}","mozGetUserMedia","addTrack","bin","onEncodingCallback","version","indexOf","pauseRecording","bitsPerSecond","audioDestination","onmessage","AudioContextConstructor","disableLogs","1284978rRPvRh","frameInterval","WEBP","RecordRTC version: ","sampleRate","StereoAudioRecorder","type","recordingCallback",'Use "new RecordRTCPromisesHandler()"',"182352WqOLTN","setDelay","whammy","The UA has exhaused the available memory. User agents SHOULD provide as much additional information as possible in the message attribute.","webkitGetUserMedia","netscape","Empty blob.","duration","Reader","keyframe","toPrecision","nodeName","stop","video","Fetch",'Recording state should be: "recording", however current state is: ',"onStateChanged",";this.onmessage = function (eee) {","frameRate","save","addEventListener","exports","WebAssemblyRecorder","clearRect","-1000em","length","Stopped recording ","name","size","onAudioProcessStarted","recordRTC","addFrame","toLowerCase","substring","disconnect","bitrate","getSeekableBlob","destroyed","Using recorderType:","getFromDisk","body","offsetWidth","getUserMedia","userAgent","enqueue","audioSources","audio","https://unpkg.com/webm-wasm@latest/dist/webm-worker.js","audioBlob","this.onmessage = function (eee) {","charCodeAt","RecordRTC","Following polyfill is strongly recommended: https://unpkg.com/@mattiasbuelens/web-streams-polyfill/dist/polyfill.min.js","error: "," stream.","lacing","all","730103oBmhnY","image/webp","style","slice","MediaRecorder Error","MIME type (","manuallyStopped","undefined","READY","MediaStream seems stopped.","substr","mozSrcObject","call","top","useGainNode","onGifRecordingStarted","fullcanvas","postMessage","und","videoRecorder","Resumed recording.","dataStoreName","createJavaScriptNode","fromCharCode","Please link: https://www.webrtc-experiment.com/screenshot.js","useWhammyRecorder","startRecording","onload",'It seems that recorder is destroyed or "startRecording" is not invoked for ',"screen","539335oCikYH"," frames remaining","Video","byteLength","createObjectStore","recording","createScriptProcessor","gif","Seems recording has been restarted.","application/javascript","clearedRecordedData","setQuality","AudioContext","resetVideoStreams","getBlob","Blob object is required.","initRecorder","onError","electron","Blob","getImageData","CriOS","srcObject","zIndex","Pass a callback function over getDataURL.","readwrite","stopRecording","MediaStream must have either audio or video tracks.","captureStream","A modification to the stream has occurred that makes it impossible to continue recording. An example would be the addition of a Track while recording is occurring. User agents SHOULD provide as much additional information as possible in the message attribute.","TrackNumber > 127 not supported","floor","50yqdGoX","file:","getDataURL","audio/webm","notsupported","Legal values for buffer-size are ","keys","location","discardable","script","DiskStorage","close","navigator","bufferSize","filter","recordingLength","amd","audio/wav"," recorder.","blobs","onRender","requestAnimationFrame","createMediaStreamDestination","onerror","closed","HTMLVideoElement","RecordRTC is destroyed.","videoBlob","workerURL","timeSlice","console","error","setUint32","workerPath parameter is missing.","gifRecorder","1632520dJxrRW","getMixedStream","now","Bytes","random","fmt ","constructor","right","Neither URL nor webkitURL detected.","Please pass either HTMLCanvasElement or CanvasRenderingContext2D.","startDrawingFrames","RecordRTCPromisesHandler","leftBuffers","WhammyRecorder","onGifPreview","webkitCaptureStream","get","getArrayOfBlobs","gainNode","toDataURL","msSaveBlob","onplaying","GifRecorder","MediaStreamRecorder","mimeType","checkForInactiveTracks","realtime","ceil","compile","Store","number","inactive","init","Recorder state changed:","invalidstate","MediaStream","webkitAudioContext","download","renderer","src","function","178407NLQdBW","gifBlob","0 Bytes","recordingDuration","Generating WebM"];return(_h=function(){return t})()}var Ch=Dh;function Dh(t,e){var s=_h();return(Dh=function(t,e){return s[t-=119]})(t,e)}!function(t){for(var e=Dh,s=t();;)try{if(114478===parseInt(e(509))/1+-parseInt(e(397))/2*(-parseInt(e(335))/3)+parseInt(e(396))/4*(-parseInt(e(169))/5)+parseInt(e(500))/6*(parseInt(e(295))/7)+parseInt(e(236))/8+parseInt(e(277))/9*(parseInt(e(201))/10)+parseInt(e(139))/11*(-parseInt(e(298))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(_h);var Lh=ge[Ch(372)](function(t){var e=Ch;function s(t,e){var n=Dh;if(!t)throw n(402);e=new i(t,e=e||{type:"video"});var o=this;function a(s){var i=n;s&&(e[i(326)]=function(){var t=i;s(),s=e[t(326)]=null});var o=new r(t,e);(g=new o(t,e))[i(355)](),u(i(174)),!e.disableLogs&&console[i(310)](i(468),g[i(242)][i(536)],i(385),e[i(506)])}function h(t){var s=n;if(t=t||function(){},g){if(o[s(366)]===s(446))return o[s(343)](),void setTimeout(function(){h(t)},1);"recording"!==o[s(366)]&&!e.disableLogs&&console[s(452)](s(524),o.state),!e[s(499)]&&console[s(310)](s(535)+e[s(506)]+s(136)),e.type!==s(176)?g[s(521)](i):(g[s(521)](),i()),u(s(411))}else m();function i(i){var r=s;if(g){Object[r(207)](g).forEach(function(t){var e=r;typeof g[t]!==e(276)&&(o[t]=g[t])});var n=g[r(282)];if(!n){if(!i)throw"Recording failed.";g[r(282)]=n=i}if(n&&!e[r(499)]&&console.log(n[r(506)],"->",v(n[r(537)])),t){var a;try{a=p[r(406)](n)}catch(t){}typeof t[r(151)]===r(276)?t[r(151)](o,a):t(a)}e[r(334)]&&c(function(t){var s=r,i={};i[e[s(506)]+s(188)]=t,P[s(265)](i)})}else typeof t[r(151)]===r(276)?t.call(o,""):t("")}}function l(t){var e=n;postMessage((new FileReaderSync)[e(356)](t))}function c(t,s){var i=n;if(!t)throw i(193);var r=s?s[i(282)]:(g||{})[i(282)];if(!r)return!e[i(499)]&&console[i(452)]("Blob encoder did not finish its job yet."),void setTimeout(function(){c(t,s)},1e3);if("undefined"==typeof Worker||navigator.mozGetUserMedia){var o=new FileReader;o.readAsDataURL(r),o[i(166)]=function(e){var s=i;t(e[s(347)][s(418)])}}else{var a=function(t){var e=i;try{var s=p[e(406)](new Blob([t[e(384)](),e(131)+t[e(536)]+"(eee.data);}"],{type:e(178)})),r=new Worker(s);return p[e(319)](s),r}catch(t){}}(l);a[i(497)]=function(e){t(e[i(483)])},a[i(156)](r)}}function d(t){var e=n;t=t||0,o[e(366)]!==e(446)?o[e(366)]!==e(411)&&(t>=o.recordingDuration?h(o[e(293)]):(t+=1e3,setTimeout(function(){d(t)},1e3))):setTimeout(function(){d(t)},1e3)}function u(t){var e=n;o&&(o[e(366)]=t,typeof o[e(525)].call===e(276)?o[e(525)][e(151)](o,t):o.onStateChanged(t))}var f=n(167)+e[n(506)]+n(219);function m(){!0!==e[n(499)]&&console.warn(f)}var g,y={startRecording:function(s){var r=n;return!e.disableLogs&&console[r(310)](r(503),o[r(492)]),s&&(e=new i(t,s)),!e[r(499)]&&console[r(310)](r(348)+e[r(506)]+r(136)),g?(g[r(370)](),g[r(355)](),u("recording"),o[r(280)]&&d(),o):(a(function(){o[r(280)]&&d()}),o)},stopRecording:h,pauseRecording:function(){var t=n;g?o[t(366)]===t(174)?(u(t(446)),g[t(392)](),!e[t(499)]&&console[t(310)](t(391))):!e[t(499)]&&console[t(452)]("Unable to pause the recording. Recording state: ",o[t(366)]):m()},resumeRecording:function(){var t=n;g?o[t(366)]===t(446)?(u(t(174)),g.resume(),!e[t(499)]&&console[t(310)](t(159))):!e[t(499)]&&console[t(452)]("Unable to resume the recording. Recording state: ",o[t(366)]):m()},initRecorder:a,setRecordingDuration:function(t,e){var s=n;if(typeof t===s(146))throw s(377);if(typeof t!==s(266))throw"recordingDuration must be a number.";return o[s(280)]=t,o[s(293)]=e||function(){},{onRecordingStopped:function(t){o[s(293)]=t}}},clearRecordedData:function(){var t=n;g?(g[t(370)](),!e[t(499)]&&console[t(310)]("Cleared old recorded data.")):m()},getBlob:function(){if(g)return g[n(282)];m()},getDataURL:c,toURL:function(){var t=n;if(g)return p.createObjectURL(g[t(282)]);m()},getInternalRecorder:function(){return g},save:function(t){g?S(g.blob,t):m()},getFromDisk:function(t){g?s.getFromDisk(e.type,t):m()},setAdvertisementArray:function(t){var s=n;e[s(389)]=[];for(var i=t[s(534)],r=0;r<i;r++)e[s(389)][s(466)]({duration:r,image:t[r]})},blob:null,bufferSize:0,sampleRate:0,buffer:null,reset:function(){var t=n;o[t(366)]===t(174)&&!e.disableLogs&&console[t(452)](t(339)),g&&typeof g[t(370)]===t(276)&&g[t(370)](),g=null,u("inactive"),o.blob=null},onStateChanged:function(t){var s=n;!e[s(499)]&&console[s(310)](s(269),t)},state:n(267),getState:function(){return o[n(366)]},destroy:function(){var t=n,s=e[t(499)];e={disableLogs:!0},o.reset(),u(t(119)),y=o=null,I[t(498)]&&(I[t(498)][t(212)](),I[t(498)]=null),e[t(499)]=s,!e[t(499)]&&console[t(310)](t(227))},version:"5.6.2"};if(!this)return o=y,y;for(var A in y)this[A]=y[A];return o=this,y}function i(t,s){var i=e;return s[i(283)]||s.type||(s[i(128)]&&s[i(522)]?s[i(506)]=i(522):s[i(128)]&&!s[i(522)]&&(s.type=i(128))),s[i(283)]&&!s[i(506)]&&(s.recorderType===L||s[i(283)]===D||typeof F!==i(146)&&s[i(283)]===F?s[i(506)]=i(522):s.recorderType===x?s.type=i(176):s[i(283)]===C?s[i(506)]=i(128):s.recorderType===_&&(w(t,i(128)).length&&w(t,i(522))[i(534)]?s[i(506)]="video":!w(t,i(128))[i(534)]&&w(t,i(522))[i(534)]?s[i(506)]=i(522):w(t,i(128))[i(534)]&&!w(t,i(522))[i(534)]&&(s[i(506)]=i(128)))),void 0!==_&&typeof MediaRecorder!==i(146)&&"requestData"in MediaRecorder[i(315)]&&(!s[i(260)]&&(s.mimeType=i(321)),!s[i(506)]&&(s.type=s[i(260)].split("/")[0]),s[i(495)]),!s[i(506)]&&(s[i(260)]&&(s[i(506)]=s[i(260)][i(324)]("/")[0]),!s[i(506)]&&(s[i(506)]=i(128))),s}function r(t,s){var i,r=e;return(y||f||m)&&(i=C),typeof MediaRecorder!==r(146)&&r(465)in MediaRecorder.prototype&&!y&&(i=_),"video"===s.type&&(y||m)&&(i=L,typeof F!==r(146)&&"undefined"!=typeof ReadableStream&&(i=F)),s[r(506)]===r(176)&&(i=x),s[r(506)]===r(455)&&(i=D),k()&&i!==D&&i!==x&&"undefined"!=typeof MediaRecorder&&r(465)in MediaRecorder.prototype&&(w(t,"video")[r(534)]||w(t,"audio")[r(534)])&&("audio"===s[r(506)]?typeof MediaRecorder[r(473)]===r(276)&&MediaRecorder.isTypeSupported(r(204))&&(i=_):"function"==typeof MediaRecorder[r(473)]&&MediaRecorder[r(473)]("video/webm")&&(i=_)),t instanceof Array&&t.length&&(i=B),s[r(283)]&&(i=s.recorderType),!s[r(499)]&&!!i&&!!i[r(536)]&&console[r(310)](r(120),i[r(536)]||i[r(242)][r(536)]),!i&&A&&(i=_),i}function n(t){var i=e;this[i(291)]=function(e){e&&(t=e)},this.mediaType={audio:!0,video:!0},this[i(165)]=function(){var e,r=i,n=this.mediaType,o=this.mimeType||{audio:null,video:null,gif:null};if(typeof n[r(128)]!==r(276)&&k()&&!w(t,"audio")[r(534)]&&(n[r(128)]=!1),typeof n[r(522)]!==r(276)&&k()&&!w(t,r(522))[r(534)]&&(n[r(522)]=!1),typeof n[r(176)]!==r(276)&&k()&&!w(t,r(522))[r(534)]&&(n.gif=!1),!n.audio&&!n[r(522)]&&!n.gif)throw r(196);if(n[r(128)]&&(e=null,typeof n.audio===r(276)&&(e=n.audio),this[r(292)]=new s(t,{type:r(128),bufferSize:this[r(214)],sampleRate:this[r(504)],numberOfAudioChannels:this[r(368)]||2,disableLogs:this[r(499)],recorderType:e,mimeType:o[r(128)],timeSlice:this.timeSlice,onTimeStamp:this[r(436)]}),!n.video&&this[r(292)].startRecording()),n.video){e=null,typeof n[r(522)]===r(276)&&(e=n[r(522)]);var a=t;if(k()&&n.audio&&typeof n[r(128)]===r(276)){var h=w(t,"video")[0];g?((a=new b)[r(489)](h),e&&e===L&&(e=_)):(a=new b).addTrack(h)}this[r(158)]=new s(a,{type:r(522),video:this[r(522)],canvas:this[r(455)],frameInterval:this.frameInterval||10,disableLogs:this.disableLogs,recorderType:e,mimeType:o.video,timeSlice:this.timeSlice,onTimeStamp:this[r(436)],workerPath:this[r(344)],webAssemblyPath:this[r(429)],frameRate:this.frameRate,bitrate:this.bitrate}),!n.audio&&this[r(158)].startRecording()}if(n[r(128)]&&n[r(522)]){var l=this,c=!0===k();(n[r(128)]instanceof C&&n[r(522)]||!0!==n[r(128)]&&!0!==n[r(522)]&&n[r(128)]!==n[r(522)])&&(c=!1),!0===c?(l[r(292)]=null,l.videoRecorder[r(165)]()):l[r(158)][r(185)](function(){var t=r;l[t(292)][t(185)](function(){l[t(158)].startRecording(),l.audioRecorder.startRecording()})})}n[r(176)]&&(e=null,typeof n[r(176)]===r(276)&&(e=n[r(176)]),this[r(235)]=new s(t,{type:r(176),frameRate:this.frameRate||200,quality:this.quality||10,disableLogs:this[r(499)],recorderType:e,mimeType:o.gif}),this[r(235)][r(165)]())},this.stopRecording=function(t){var e=i;t=t||function(){},this[e(292)]&&this[e(292)].stopRecording(function(s){t(s,e(128))}),this[e(158)]&&this[e(158)][e(195)](function(s){t(s,e(522))}),this.gifRecorder&&this.gifRecorder[e(195)](function(s){t(s,e(176))})},this[i(494)]=function(){var t=i;this.audioRecorder&&this[t(292)][t(494)](),this[t(158)]&&this[t(158)][t(494)](),this[t(235)]&&this.gifRecorder[t(494)]()},this.resumeRecording=function(){var t=i;this[t(292)]&&this[t(292)][t(343)](),this[t(158)]&&this[t(158)][t(343)](),this.gifRecorder&&this[t(235)][t(343)]()},this[i(183)]=function(t){var e=i,s={};return this[e(292)]&&(s[e(128)]=this[e(292)][e(183)]()),this[e(158)]&&(s[e(522)]=this[e(158)][e(183)]()),this[e(235)]&&(s.gif=this[e(235)][e(183)]()),t&&t(s),s},this[i(349)]=function(){var t=i;this[t(292)]&&(this.audioRecorder[t(349)](),this[t(292)]=null),this.videoRecorder&&(this[t(158)][t(349)](),this.videoRecorder=null),this.gifRecorder&&(this[t(235)].destroy(),this[t(235)]=null)},this[i(203)]=function(t){function e(t,e){var s=Dh;if("undefined"!=typeof Worker){var i=function(t){var e,s=Dh,i=p[s(406)](new Blob([t[s(384)](),s(131)+t[s(536)]+s(487)],{type:s(178)})),r=new Worker(i);if(typeof p!==s(146))e=p;else{if(typeof webkitURL===s(146))throw s(244);e=webkitURL}return e[s(319)](i),r}(function(t){var e=Dh;postMessage((new FileReaderSync)[e(356)](t))});i.onmessage=function(t){e(t[Dh(483)])},i[s(156)](t)}else{var r=new FileReader;r[s(356)](t),r[s(166)]=function(t){var i=s;e(t[i(347)][i(418)])}}}this.getBlob(function(s){var i=Dh;s[i(128)]&&s[i(522)]?e(s[i(128)],function(i){e(s.video,function(e){t({audio:i,video:e})})}):s.audio?e(s[i(128)],function(e){t({audio:e})}):s.video&&e(s.video,function(e){t({video:e})})})},this.writeToDisk=function(){var t=i;s.writeToDisk({audio:this[t(292)],video:this[t(158)],gif:this[t(235)]})},this[i(528)]=function(t){var e=i;!!(t=t||{audio:!0,video:!0,gif:!0})[e(128)]&&this[e(292)]&&this[e(292)].save(typeof t[e(128)]===e(464)?t.audio:""),!!t[e(522)]&&this[e(158)]&&this[e(158)][e(528)](typeof t.video===e(464)?t[e(522)]:""),t[e(176)]&&this.gifRecorder&&this[e(235)][e(528)]("string"==typeof t[e(176)]?t[e(176)]:"")}}s[e(492)]=e(309),"object"!==e(146)&&(t[e(530)]=s),s[e(121)]=function(t,s){var i=e;if(!s)throw"callback is mandatory.";console[i(310)]("Getting recorded "+("all"===t?i(220):t+i(438))+" from disk!"),P[i(523)](function(e,r){var n=i;"all"!==t&&r===t+n(188)&&s&&s(e),t===n(138)&&s&&s(e,r[n(420)](n(188),""))})},s[e(363)]=function(t){var s=e;console[s(310)]("Writing recorded blob(s) to disk!"),(t=t||{}).audio&&t[s(522)]&&t.gif?t[s(128)].getDataURL(function(e){var i=s;t.video[i(203)](function(s){var r=i;t[r(176)][r(203)](function(t){P[r(265)]({audioBlob:e,videoBlob:s,gifBlob:t})})})}):t.audio&&t[s(522)]?t[s(128)][s(203)](function(e){var i=s;t.video[i(203)](function(t){P[i(265)]({audioBlob:e,videoBlob:t})})}):t[s(128)]&&t[s(176)]?t.audio[s(203)](function(e){var i=s;t[i(176)].getDataURL(function(t){P[i(265)]({audioBlob:e,gifBlob:t})})}):t.video&&t[s(176)]?t[s(522)][s(203)](function(e){var i=s;t[i(176)].getDataURL(function(t){P[i(265)]({videoBlob:e,gifBlob:t})})}):t.audio?t[s(128)][s(203)](function(t){P[s(265)]({audioBlob:t})}):t[s(522)]?t.video.getDataURL(function(t){P[s(265)]({videoBlob:t})}):t[s(176)]&&t[s(176)][s(203)](function(t){P[s(265)]({gifBlob:t})})},n[e(121)]=s[e(121)],n[e(363)]=s[e(363)],typeof s!==e(146)&&(s[e(299)]=n);var o,a,h=e(379);o=typeof ge[e(331)]!==e(146)?fe:null,a=e,o&&typeof window===a(146)&&void 0!==ge[a(331)]&&(ge[a(331)][a(213)]={userAgent:h,getUserMedia:function(){}},!fe[a(231)]&&(ge[a(331)][a(231)]={}),(void 0===fe[a(231)].log||typeof ge[a(331)][a(231)][a(232)]===a(146))&&(ge[a(331)][a(231)][a(232)]=ge[a(331)][a(231)][a(310)]=ge[a(331)][a(231)][a(310)]||function(){console.log(arguments)}),"undefined"==typeof document&&(o.document={documentElement:{appendChild:function(){return""}}},document[a(444)]=document[a(197)]=document[a(341)]=function(){var t={getContext:function(){return t},play:function(){},pause:function(){},drawImage:function(){},toDataURL:function(){return""},style:{}};return t},o.HTMLVideoElement=function(){}),typeof location===a(146)&&(o[a(208)]={protocol:"file:",href:"",hash:""}),typeof screen===a(146)&&(o[a(168)]={width:0,height:0}),typeof p===a(146)&&(o[a(328)]={createObjectURL:function(){return""},revokeObjectURL:function(){return""}}),o[a(317)]=fe);var l=window[e(222)];if(typeof l===e(146))if("undefined"!=typeof webkitRequestAnimationFrame)l=webkitRequestAnimationFrame;else if(typeof mozRequestAnimationFrame!==e(146))l=mozRequestAnimationFrame;else if(typeof msRequestAnimationFrame!==e(146))l=msRequestAnimationFrame;else if(typeof l===e(146)){var c=0;l=function(t,s){var i=e,r=(new Date)[i(367)](),n=Math.max(0,16-(r-c)),o=setTimeout(function(){t(r+n)},n);return c=r+n,o}}var d=window[e(445)];typeof d===e(146)&&(typeof webkitCancelAnimationFrame!==e(146)?d=webkitCancelAnimationFrame:"undefined"!=typeof mozCancelAnimationFrame?d=mozCancelAnimationFrame:typeof msCancelAnimationFrame!==e(146)?d=msCancelAnimationFrame:typeof d===e(146)&&(d=function(t){clearTimeout(t)}));var u=window.AudioContext;typeof u===e(146)&&(typeof webkitAudioContext!==e(146)&&(u=webkitAudioContext),typeof mozAudioContext!==e(146)&&(u=mozAudioContext));var p=window.URL;typeof p===e(146)&&"undefined"!=typeof webkitURL&&(p=webkitURL),"undefined"!=typeof navigator&&typeof navigator[e(124)]===e(146)&&(void 0!==navigator.webkitGetUserMedia&&(navigator.getUserMedia=navigator.webkitGetUserMedia),void 0!==navigator[e(488)]&&(navigator[e(124)]=navigator.mozGetUserMedia));var f=!(-1===navigator[e(125)][e(493)](e(346))||!navigator[e(256)]&&!navigator.msSaveOrOpenBlob),m=!!window.opera||-1!==navigator[e(125)].indexOf("OPR/"),g=navigator.userAgent[e(541)]()[e(493)](e(333))>-1&&e(514)in window&&/ rv:/.test(navigator[e(125)]),y=!m&&!f&&!!navigator.webkitGetUserMedia||E()||-1!==navigator.userAgent[e(541)]()[e(493)](e(450)),A=/^((?!chrome|android).)*safari/i[e(480)](navigator[e(125)]);A&&!y&&-1!==navigator.userAgent[e(493)](e(190))&&(A=!1,y=!0);var b=window[e(271)];function v(t){var s=e,i=[s(239),"KB","MB","GB","TB"];if(0===t)return s(279);var r=parseInt(Math.floor(Math.log(t)/Math[s(310)](1e3)),10);return(t/Math.pow(1e3,r))[s(519)](3)+" "+i[r]}function S(t,s){var i=e;if(!t)throw i(184);if(!t[i(506)])try{t[i(506)]="video/webm"}catch(t){}var r=(t[i(506)]||i(321))[i(324)]("/")[1];if(-1!==r[i(493)](";")&&(r=r[i(324)](";")[0]),s&&-1!==s[i(493)](".")){var n=s.split(".");s=n[0],r=n[1]}var o=(s||Math.round(9999999999*Math[i(240)]())+888888888)+"."+r;if(typeof navigator.msSaveOrOpenBlob!==i(146))return navigator[i(301)](t,o);if(typeof navigator[i(256)]!==i(146))return navigator[i(256)](t,o);var a=document[i(444)]("a");a[i(409)]=p[i(406)](t),a[i(273)]=o,a[i(141)]=i(471),(document[i(122)]||document[i(431)])[i(325)](a),"function"==typeof a[i(318)]?a[i(318)]():(a[i(347)]="_blank",a[i(414)](new MouseEvent(i(318),{view:window,bubbles:!0,cancelable:!0}))),p[i(319)](a[i(409)])}function E(){var t=e;return typeof window!==t(146)&&typeof window.process===t(308)&&window.process[t(506)]===t(274)||(!(typeof process===t(146)||"object"!=typeof process[t(482)]||!process[t(482)][t(187)])||"object"==typeof navigator&&typeof navigator.userAgent===t(464)&&navigator[t(125)][t(493)]("Electron")>=0)}function w(t,s){var i=e;return t&&t.getTracks?t[i(337)]()[i(215)](function(t){return t[i(472)]===(s||"audio")}):[]}function T(t,s){var i=e;"srcObject"in s?s.srcObject=t:i(150)in s?s[i(150)]=t:s.srcObject=t}typeof b===e(146)&&typeof webkitMediaStream!==e(146)&&(b=webkitMediaStream),typeof b!==e(146)&&typeof b[e(315)][e(521)]===e(146)&&(b[e(315)][e(521)]=function(){var t=e;this[t(337)]()[t(415)](function(t){t.stop()})}),typeof s!==e(146)&&(s[e(403)]=S,s.getTracks=w,s[e(545)]=function(t,s){var i=e;if(typeof EBML===i(146))throw new Error("Please link: https://www.webrtc-experiment.com/EBML.js");var r=new(EBML[i(517)]),n=new(EBML[i(304)]),o=EBML.tools,a=new FileReader;a.onload=function(t){var e=i;n.decode(this[e(418)])[e(415)](function(t){r[e(307)](t)}),r[e(521)]();var a=o[e(354)](r[e(365)],r.duration,r[e(360)]),h=this[e(418)].slice(r.metadataSize),l=new Blob([a,h],{type:e(321)});s(l)},a.readAsArrayBuffer(t)},s.bytesToSize=v,s.isElectron=E);var I={};function k(){var t=e;if(g||A||f)return!0;navigator[t(449)];var s,i,r=navigator[t(125)],n=""+parseFloat(navigator[t(449)]),o=parseInt(navigator[t(449)],10);return(y||m)&&(s=r[t(493)]("Chrome"),n=r[t(542)](s+7)),-1!==(i=n[t(493)](";"))&&(n=n[t(542)](0,i)),-1!==(i=n[t(493)](" "))&&(n=n.substring(0,i)),o=parseInt(""+n,10),isNaN(o)&&(n=""+parseFloat(navigator.appVersion),o=parseInt(navigator[t(449)],10)),o>=49}function _(t,s){var i=e,r=this;if(typeof t===i(146))throw i(362);if("undefined"==typeof MediaRecorder)throw i(303);if((s=s||{mimeType:i(321)})[i(506)]===i(128)){var n;if(w(t,"video")[i(534)]&&w(t,"audio")[i(534)])navigator[i(488)]?(n=new b)[i(489)](w(t,i(128))[0]):n=new b(w(t,i(128))),t=n;(!s[i(260)]||-1===s.mimeType[i(384)]().toLowerCase()[i(493)](i(128)))&&(s[i(260)]=i(y?204:364)),s[i(260)]&&s[i(260)][i(384)]()[i(541)]()!==i(364)&&navigator[i(488)]&&(s[i(260)]="audio/ogg")}var o,a=[];function h(){var t=i;r[t(340)][t(466)]((new Date).getTime()),typeof s[t(436)]===t(276)&&s.onTimeStamp(r[t(340)][r[t(340)].length-1],r.timestamps)}function l(t){var e=i;return o&&o[e(260)]?o[e(260)]:t[e(260)]||"video/webm"}function c(){a=[],o=null,r.timestamps=[]}this[i(253)]=function(){return a},this[i(355)]=function(){var e=i;r.blob=null,r.clearRecordedData(),r[e(340)]=[],d=[],a=[];var n=s;!s[e(499)]&&console[e(310)]("Passing following config over MediaRecorder API.",n),o&&(o=null),y&&!k()&&(n=e(442)),typeof MediaRecorder[e(473)]===e(276)&&n.mimeType&&!MediaRecorder[e(473)](n[e(260)])&&(!s[e(499)]&&console[e(452)](e(289),n[e(260)]),n[e(260)]=s[e(506)]===e(128)?e(204):e(321));try{o=new MediaRecorder(t,n),s[e(260)]=n.mimeType}catch(e){o=new MediaRecorder(t)}n[e(260)]&&!MediaRecorder[e(473)]&&e(375)in o&&!1===o[e(375)](n[e(260)])&&!s[e(499)]&&console[e(452)](e(289),n[e(260)]),o.ondataavailable=function(t){var i=e;if(t.data&&d[i(466)]("ondataavailable: "+v(t[i(483)][i(537)])),typeof s[i(230)]!==i(266))!t.data||!t[i(483)][i(537)]||t[i(483)][i(537)]<100||r[i(282)]?r[i(507)]&&(r.recordingCallback(new Blob([],{type:l(n)})),r.recordingCallback=null):(r.blob=s[i(383)]?t[i(483)]:new Blob([t[i(483)]],{type:l(n)}),r.recordingCallback&&(r.recordingCallback(r.blob),r[i(507)]=null));else if(t[i(483)]&&t[i(483)][i(537)]&&(a.push(t.data),h(),"function"==typeof s[i(421)])){var o=s[i(383)]?t[i(483)]:new Blob([t[i(483)]],{type:l(n)});s[i(421)](o)}},o.onstart=function(){var t=e;d[t(466)](t(451))},o.onpause=function(){var t=e;d.push(t(446))},o[e(456)]=function(){d[e(466)]("resumed")},o.onstop=function(){d[e(466)]("stopped")},o[e(224)]=function(t){var i=e;t&&(!t[i(536)]&&(t.name=i(435)),d[i(466)](i(135)+t),s[i(499)]||(-1!==t.name.toString().toLowerCase()[i(493)](i(270))?console[i(232)](i(350),t):-1!==t[i(536)][i(384)]()[i(541)]()[i(493)](i(205))?console[i(232)](i(144),n[i(260)],") is not supported.",t):-1!==t[i(536)][i(384)]().toLowerCase()[i(493)]("security")?console[i(232)](i(474),t):t.name===i(327)?console.error(i(512),t):"IllegalStreamModification"===t.name?console[i(232)](i(198),t):t.name===i(296)?console[i(232)]("Used for an fatal error other than those listed above. User agents SHOULD provide as much additional information as possible in the message attribute.",t):t[i(536)]===i(410)?console.error(i(382),t):console[i(232)](i(143),t)),function(){var t=i;if(!r[t(145)]&&o&&"inactive"===o[t(366)])return delete s.timeslice,void o[t(305)](6e5);setTimeout(void 0,1e3)}(),o[i(366)]!==i(267)&&o[i(366)]!==i(411)&&o.stop())},typeof s[e(230)]===e(266)?(h(),o[e(305)](s.timeSlice)):o[e(305)](36e5),s[e(326)]&&s[e(326)]()},this[i(340)]=[],this[i(521)]=function(t){var e=i;t=t||function(){},r[e(145)]=!0,o&&(this.recordingCallback=t,o[e(366)]===e(174)&&o[e(521)](),typeof s.timeSlice===e(266)&&setTimeout(function(){var t=e;r[t(282)]=new Blob(a,{type:l(s)}),r.recordingCallback(r[t(282)])},100))},this[i(392)]=function(){var t=i;o&&o[t(366)]===t(174)&&o[t(392)]()},this.resume=function(){var t=i;o&&"paused"===o[t(366)]&&o[t(332)]()},this.clearRecordedData=function(){var t=i;o&&"recording"===o.state&&r[t(521)](c),c()},this[i(286)]=function(){return o},this.blob=null,this.getState=function(){var t=i;return o?o[t(366)]||"inactive":t(267)};var d=[];this.getAllStates=function(){return d},typeof s[i(261)]===i(146)&&(s[i(261)]=!1);r=this;(function e(){var n=i;if(o&&!1!==s[n(261)])return!1===function(){var e=i;if(e(359)in t){if(!t[e(359)])return!1}else if(e(316)in t&&t[e(316)])return!1;return!0}()?(!s[n(499)]&&console[n(310)](n(148)),void r[n(521)]()):void setTimeout(e,1e3)})(),this[i(536)]=i(259),this[i(384)]=function(){return this[i(536)]}}function C(t,i){var r=e;if(!w(t,r(128))[r(534)])throw r(448);var n,o=this,a=[],h=[],l=!1,c=0,d=2,u=(i=i||{})[r(439)];function f(){var e=r;if(!1===i[e(261)])return!0;if(e(359)in t){if(!t[e(359)])return!1}else if(e(316)in t&&t[e(316)])return!1;return!0}function m(t,e){var s=r;function i(t,e){var s,i=Dh,r=t.numberOfAudioChannels,n=t[i(248)][i(142)](0),o=t[i(457)][i(142)](0),a=t[i(504)],h=t.internalInterleavedLength,l=t[i(439)];function c(t,e,s){var r=i,n=Math[r(394)](t[r(534)]*(e/s)),o=[],a=Number((t[r(534)]-1)/(n-1));o[0]=t[0];for(var h=1;h<n-1;h++){var l=h*a,c=Number(Math[r(200)](l)).toFixed(),u=Number(Math.ceil(l))[r(358)](),p=l-c;o[h]=d(t[c],t[u],p)}return o[n-1]=t[t.length-1],o}function d(t,e,s){return t+(e-t)*s}function u(t,e){for(var s=i,r=new Float64Array(e),n=0,o=t[s(534)],a=0;a<o;a++){var h=t[a];r.set(h,n),n+=h.length}return r}function p(t,e,s){for(var r=i,n=s[r(534)],o=0;o<n;o++)t.setUint8(e+o,s[r(132)](o))}2===r&&(n=u(n,h),o=u(o,h),l&&(n=c(n,l,a),o=c(o,l,a))),1===r&&(n=u(n,h),l&&(n=c(n,l,a))),l&&(a=l),2===r&&(s=function(t,e){for(var s=t[i(534)]+e.length,r=new Float64Array(s),n=0,o=0;o<s;)r[o++]=t[n],r[o++]=e[n],n++;return r}(n,o)),1===r&&(s=n);var f=s.length,m=new ArrayBuffer(44+2*f),g=new DataView(m);p(g,0,i(467)),g[i(233)](4,36+2*f,!0),p(g,8,"WAVE"),p(g,12,i(241)),g[i(233)](16,16,!0),g[i(441)](20,1,!0),g.setUint16(22,r,!0),g.setUint32(24,a,!0),g.setUint32(28,a*r*2,!0),g[i(441)](32,2*r,!0),g.setUint16(34,16,!0),p(g,36,i(483)),g[i(233)](40,2*f,!0);for(var y=f,A=44,b=0;b<y;b++)g.setInt16(A,32767*s[b],!0),A+=2;if(e)return e({buffer:m,view:g});postMessage({buffer:m,view:g})}if(t[s(380)])i(t,function(t){var i=s;e(t[i(352)],t[i(405)])});else{var n,o,a,h,l=(n=i,a=p[(o=r)(406)](new Blob([n[o(384)](),o(526)+n[o(536)]+"(eee.data);}"],{type:o(178)})),(h=new Worker(a))[o(229)]=a,h);l[s(497)]=function(t){var i=s;e(t[i(483)][i(352)],t[i(483)][i(405)]),p[i(319)](l[i(229)]),l.terminate()},l[s(156)](t)}}!0===i.leftChannel&&(d=1),1===i[r(368)]&&(d=1),(!d||d<1)&&(d=2),!i[r(499)]&&console[r(310)](r(390)+d),typeof i[r(261)]===r(146)&&(i.checkForInactiveTracks=!0),this[r(355)]=function(){var t=r;if(!1===f())throw"Please make sure MediaStream is active.";E(),I=S=!1,l=!0,void 0!==i[t(230)]&&_()},this[r(521)]=function(t){t=t||function(){},l=!1,m({desiredSampRate:u,sampleRate:v,numberOfAudioChannels:d,internalInterleavedLength:c,leftBuffers:a,rightBuffers:1===d?[]:h,noWorker:i.noWorker},function(e,s){var i=Dh;o[i(282)]=new Blob([s],{type:i(218)}),o[i(352)]=new ArrayBuffer(s[i(352)][i(172)]),o[i(405)]=s,o[i(504)]=u||v,o.bufferSize=b,o[i(534)]=c,I=!1,t&&t(o[i(282)])})},typeof s[r(478)]===r(146)&&(s[r(478)]={AudioContextConstructor:null,AudioContext:window[r(181)]||window[r(272)]}),(!s[r(478)].AudioContextConstructor||"closed"===s[r(478)][r(498)][r(366)])&&(s.Storage[r(498)]=new(s[r(478)][r(181)]));var g=s.Storage[r(498)],y=g.createMediaStreamSource(t),A=[0,256,512,1024,2048,4096,8192,16384],b=typeof i.bufferSize===r(146)?4096:i.bufferSize;if(-1===A[r(493)](b)&&!i[r(499)]&&console[r(310)](r(206)+JSON[r(287)](A,null,"\t")),g.createJavaScriptNode)n=g[r(161)](b,d,d);else{if(!g[r(175)])throw r(484);n=g[r(175)](b,d,d)}y[r(412)](n),!i[r(214)]&&(b=n[r(214)]);var v=typeof i.sampleRate!==r(146)?i[r(504)]:g[r(504)]||44100;(v<22050||v>96e3)&&!i[r(499)]&&console[r(310)](r(302)),!i.disableLogs&&i[r(439)]&&console[r(310)](r(428)+i[r(439)]);var S=!1;function E(){var t=r;a=[],h=[],c=0,I=!1,l=!1,S=!1,g=null,o[t(312)]=a,o[t(476)]=h,o[t(368)]=d,o[t(439)]=u,o[t(504)]=v,o[t(216)]=c,k={left:[],right:[],recordingLength:0}}function T(){var t=r;n&&(n[t(290)]=null,n[t(543)](),n=null),y&&(y[t(543)](),y=null),E()}this.pause=function(){S=!0},this[r(332)]=function(){var t=r;if(!1===f())throw t(300);if(!l)return!i[t(499)]&&console[t(310)](t(177)),void this[t(355)]();S=!1},this.clearRecordedData=function(){var t=r;i.checkForInactiveTracks=!1,l&&this[t(521)](T),T()},this[r(536)]=r(505),this.toString=function(){return this.name};var I=!1;n.onaudioprocess=function(t){var e=r;if(!S)if(!1===f()&&(!i.disableLogs&&console[e(310)]("MediaStream seems stopped."),n[e(543)](),l=!1),l){!I&&(I=!0,i[e(538)]&&i.onAudioProcessStarted(),i[e(326)]&&i[e(326)]());var s=t[e(373)].getChannelData(0),u=new Float32Array(s);if(a.push(u),2===d){var p=t[e(373)].getChannelData(1),m=new Float32Array(p);h[e(466)](m)}c+=b,o.recordingLength=c,void 0!==i[e(230)]&&(k[e(216)]+=b,k[e(284)].push(u),2===d&&k[e(243)].push(m))}else y&&(y[e(543)](),y=null)},g.createMediaStreamDestination?n[r(412)](g[r(223)]()):n[r(412)](g.destination),this.leftchannel=a,this.rightchannel=h,this[r(368)]=d,this[r(439)]=u,this[r(504)]=v,o[r(216)]=c;var k={left:[],right:[],recordingLength:0};function _(){var t=r;l&&typeof i[t(421)]===t(276)&&typeof i[t(230)]!==t(146)&&(k[t(284)][t(534)]?(m({desiredSampRate:u,sampleRate:v,numberOfAudioChannels:d,internalInterleavedLength:k[t(216)],leftBuffers:k[t(284)],rightBuffers:1===d?[]:k[t(243)]},function(e,s){var r=t,n=new Blob([s],{type:"audio/wav"});i[r(421)](n),setTimeout(_,i[r(230)])}),k={left:[],right:[],recordingLength:0}):setTimeout(_,i.timeSlice))}}function D(t,s){var i=e;if(typeof html2canvas===i(146))throw i(163);!(s=s||{})[i(501)]&&(s.frameInterval=10);var r=!1;[i(197),i(341),"webkitCaptureStream"][i(415)](function(t){var e=i;t in document[e(444)](e(455))&&(r=!0)});var n,o,a,h=!(!window.webkitRTCPeerConnection&&!window[i(513)]||!window[i(320)]),l=50,c=navigator[i(125)].match(/Chrom(e|ium)\/([0-9]+)\./);if(h&&c&&c[2]&&(l=parseInt(c[2],10)),h&&l<52&&(r=!1),s[i(164)]&&(r=!1),r)if(!s[i(499)]&&console[i(310)](i(336)),t instanceof HTMLCanvasElement)n=t;else{if(!(t instanceof CanvasRenderingContext2D))throw i(245);n=t.canvas}else navigator.mozGetUserMedia&&!s[i(499)]&&console.error(i(462));this[i(355)]=function(){var t=i;if(a=!0,r&&!s.useWhammyRecorder){var e;t(197)in n?e=n.captureStream(25):t(341)in n?e=n.mozCaptureStream(25):t(251)in n&&(e=n[t(251)](25));try{var h=new b;h[t(489)](w(e,t(522))[0]),e=h}catch(t){}if(!e)throw"captureStream API are NOT available.";(o=new _(e,{mimeType:s[t(260)]||t(321)}))[t(355)]()}else m[t(475)]=[],f=(new Date)[t(367)](),p();s[t(326)]&&s[t(326)]()},this[i(408)]=function(e){var r=i;if(t[r(520)][r(541)]()===r(455)){var n=m[r(475)][r(534)];m[r(475)][r(415)](function(t,e){var i=r,o=n-e;!s[i(499)]&&console.log(o+"/"+n+i(170)),s.onEncodingCallback&&s[i(491)](o,n);var a=t[i(424)][i(255)]("image/webp",1);m[i(475)][e][i(424)]=a}),!s.disableLogs&&console[r(310)](r(281)),e()}else e()},this[i(521)]=function(t){var e=i;a=!1;var n=this;r&&o?o[e(521)](t):this[e(408)](function(){var i=e;m[i(264)](function(e){var r=i;!s[r(499)]&&console[r(310)](r(323)),n[r(282)]=e,n.blob[r(415)]&&(n[r(282)]=new Blob([],{type:r(321)})),t&&t(n.blob),m[r(475)]=[]})})};var d=!1;function u(){m.frames=[],a=!1,d=!1}function p(){var e,r,n,o=i;if(d)return f=(new Date)[o(367)](),setTimeout(p,500);if(t.nodeName[o(541)]()===o(455)){var h=(new Date)[o(367)]()-f;return f=(new Date).getTime(),m[o(475)][o(466)]({image:(e=i,r=document[e(444)](e(455)),n=r.getContext("2d"),r[e(460)]=t[e(460)],r.height=t[e(378)],n.drawImage(t,0,0),r),duration:h}),void(a&&setTimeout(p,s[o(501)]))}html2canvas(t,{grabMouse:typeof s[o(401)]===o(146)||s[o(401)],onrendered:function(t){var e=o,i=(new Date)[e(367)]()-f;if(!i)return setTimeout(p,s.frameInterval);f=(new Date)[e(367)](),m.frames.push({image:t[e(255)]("image/webp",1),duration:i}),a&&setTimeout(p,s.frameInterval)}})}this[i(392)]=function(){d=!0,o instanceof _&&o[i(392)]()},this[i(332)]=function(){var t=i;d=!1,o instanceof _?o[t(332)]():!a&&this[t(355)]()},this[i(370)]=function(){a&&this[i(521)](u),u()},this[i(536)]=i(351),this.toString=function(){return this[i(536)]};var f=(new Date)[i(367)](),m=new(R[i(171)])(100)}function L(t,s){var i=e;function r(t){var e=i;t=void 0!==t?t:10;var s=(new Date)[e(367)]()-c;return s?a?(c=(new Date)[e(367)](),setTimeout(r,100)):(c=(new Date)[e(367)](),l[e(446)]&&l[e(479)](),p.drawImage(l,0,0,u[e(460)],u[e(378)]),d.frames[e(466)]({duration:s,image:u[e(255)](e(140))}),void(!o&&setTimeout(r,t,t))):setTimeout(r,t,t)}function n(t,e,s,r,n){var o=i,a=document[o(444)](o(455));a[o(460)]=u[o(460)],a[o(378)]=u[o(378)];var h,l,c,d,p=a[o(485)]("2d"),f=[],m=-1===e,g=e&&e>0&&e<=t[o(534)]?e:t[o(534)],y=0,A=0,b=0,v=Math[o(376)](Math[o(369)](255,2)+Math[o(369)](255,2)+Math[o(369)](255,2)),S=s&&s>=0&&s<=1?s:0,E=r&&r>=0&&r<=1?r:0,w=!1;c=-1,d=(h={length:g,functionToLoop:function(e,s){var i,r,n,a=o,h=function(){!w&&n-i<=n*E||(m&&(w=!0),f.push(t[s])),e()};if(w)h();else{var l=new Image;l[a(166)]=function(){var t=a;p.drawImage(l,0,0,u[t(460)],u[t(378)]);var e=p[t(189)](0,0,u[t(460)],u[t(378)]);i=0,r=e.data.length,n=e[t(483)].length/4;for(var s=0;s<r;s+=4){var o={r:e[t(483)][s],g:e[t(483)][s+1],b:e[t(483)][s+2]};Math[t(376)](Math[t(369)](o.r-y,2)+Math.pow(o.g-A,2)+Math.pow(o.b-b,2))<=v*S&&i++}h()},l[a(275)]=t[s].image}},callback:function(){var e=o;(f=f.concat(t[e(142)](g)))[e(534)]<=0&&f[e(466)](t[t[e(534)]-1]),n(f)}})[(l=i)(534)],function t(){var e=l;++c!==d?setTimeout(function(){h[e(434)](t,c)},1):h[e(425)]()}()}!(s=s||{})[i(501)]&&(s[i(501)]=10),!s[i(499)]&&console[i(310)](i(381),s[i(501)]),this[i(355)]=function(){var e=i;!s[e(460)]&&(s[e(460)]=320),!s.height&&(s[e(378)]=240),!s[e(522)]&&(s.video={width:s[e(460)],height:s[e(378)]}),!s[e(455)]&&(s[e(455)]={width:s.width,height:s[e(378)]}),u.width=s[e(455)].width||320,u[e(378)]=s[e(455)][e(378)]||240,p=u[e(485)]("2d"),s[e(522)]&&s.video instanceof HTMLVideoElement?(l=s.video.cloneNode(),s[e(326)]&&s[e(326)]()):(l=document[e(444)](e(522)),T(t,l),l[e(386)]=function(){s[e(326)]&&s.initCallback()},l.width=s[e(522)].width,l[e(378)]=s[e(522)][e(378)]),l[e(329)]=!0,l[e(479)](),c=(new Date)[e(367)](),d=new(R[e(171)]),!s[e(499)]&&(console.log(e(353),u[e(460)],"*",u[e(378)]),console.log(e(387),l[e(460)]||u[e(460)],"*",l[e(378)]||u[e(378)])),r(s[e(501)])};var o=!1;this.stop=function(t){t=t||function(){},o=!0;var e=this;setTimeout(function(){var i=Dh;n(d[i(475)],-1,null,null,function(r){var n=i;d[n(475)]=r,s[n(389)]&&s[n(389)].length&&(d[n(475)]=s[n(389)][n(481)](d[n(475)])),d[n(264)](function(s){var i=n;e[i(282)]=s,e[i(282)][i(415)]&&(e[i(282)]=new Blob([],{type:i(321)})),t&&t(e[i(282)])})})},10)};var a=!1;function h(){d[i(475)]=[],o=!0,a=!1}this[i(392)]=function(){a=!0},this[i(332)]=function(){a=!1,o&&this[i(355)]()},this[i(370)]=function(){!o&&this[i(521)](h),h()},this.name=i(249),this[i(384)]=function(){return this[i(536)]};var l,c,d,u=document[i(444)](i(455)),p=u[i(485)]("2d")}void 0!==u?I[e(181)]=u:typeof webkitAudioContext!==e(146)&&(I[e(181)]=webkitAudioContext),void 0!==s&&(s[e(478)]=I),void 0!==s&&(s[e(259)]=_),typeof s!==e(146)&&(s[e(505)]=C),typeof s!==e(146)&&(s[e(351)]=D),typeof s!==e(146)&&(s.WhammyRecorder=L);var R=function(){var t=e;function s(t){var e=Dh;this[e(475)]=[],this[e(516)]=t||1,this[e(419)]=.8}function i(e){var s=t;function i(t,e,s){var i=Dh;return[{data:t,id:231}][i(481)](s[i(422)](function(t){var s=i,r=function(t){var e=Dh,s=0;if(t[e(518)]&&(s|=128),t[e(426)]&&(s|=8),t[e(137)]&&(s|=t[e(137)]<<1),t[e(209)]&&(s|=1),t.trackNum>127)throw e(199);return[128|t.trackNum,t[e(313)]>>8,255&t[e(313)],s][e(422)](function(t){return String[e(162)](t)})[e(432)]("")+t.frame}({discardable:0,frame:t[s(483)][s(142)](4),invisible:0,keyframe:1,lacing:0,trackNum:1,timecode:Math[s(394)](e)});return e+=t.duration,{data:r,id:163}}))}function r(t){for(var e=Dh,s=[];t>0;)s[e(466)](255&t),t>>=8;return new Uint8Array(s[e(288)]())}function n(t){var e=Dh;return new Uint8Array(t[e(324)]("").map(function(t){return t[e(132)](0)}))}function o(t){var e=Dh,s=[];t=(t[e(534)]%8?new Array(9-t[e(534)]%8)[e(432)]("0"):"")+t;for(var i=0;i<t[e(534)];i+=8)s[e(466)](parseInt(t[e(149)](i,8),2));return new Uint8Array(s)}function a(t){for(var e=Dh,s=[],i=0;i<t[e(534)];i++){var h=t[i][e(483)];typeof h===e(308)&&(h=a(h)),typeof h===e(266)&&(h=o(h.toString(2))),typeof h===e(464)&&(h=n(h));var l=h.size||h[e(172)]||h[e(534)],c=Math[e(263)](Math.ceil(Math[e(310)](l)/Math[e(310)](2))/8),d=l[e(384)](2),u=new Array(7*c+7+1-d[e(534)])[e(432)]("0")+d,p=new Array(c)[e(432)]("0")+"1"+u;s[e(466)](r(t[i].id)),s.push(o(p)),s.push(h)}return new Blob(s,{type:e(321)})}function h(t,e){var s=Dh;return parseInt(t[s(149)](e+4,4)[s(324)]("").map(function(t){var e=s,i=t[e(132)](0)[e(384)](2);return new Array(8-i[e(534)]+1).join("0")+i})[s(432)](""),2)}function l(t){for(var e=Dh,s=0,i={};s<t[e(534)];){var r=t.substr(s,4),n=h(t,s),o=t[e(149)](s+4+4,n);s+=8+n,i[r]=i[r]||[],r===e(467)||"LIST"===r?i[r][e(466)](l(o)):i[r][e(466)](o)}return i}var c=new function(t){var e=Dh,s=function(t){var e=Dh;if(!t[0])return void postMessage({error:"Something went wrong. Maybe WebP format is not supported in the current browser."});for(var s=t[0][e(460)],i=t[0][e(378)],r=t[0][e(516)],n=1;n<t.length;n++)r+=t[n][e(516)];return{duration:r,width:s,height:i}}(t);if(!s)return[];for(var r,n,o=[{id:440786851,data:[{data:1,id:17030},{data:1,id:17143},{data:4,id:17138},{data:8,id:17139},{data:e(440),id:17026},{data:2,id:17031},{data:2,id:17029}]},{id:408125543,data:[{id:357149030,data:[{data:1e6,id:2807729},{data:e(511),id:19840},{data:e(511),id:22337},{data:(r=s[e(516)],n=Dh,[][n(142)][n(151)](new Uint8Array(new Float64Array([r])[n(352)]),0)[n(422)](function(t){var e=n;return String[e(162)](t)})[n(288)]()[n(432)]("")),id:17545}]},{id:374648427,data:[{id:174,data:[{data:1,id:215},{data:1,id:29637},{data:0,id:156},{data:e(157),id:2274716},{data:"V_VP8",id:134},{data:e(416),id:2459272},{data:1,id:131},{id:224,data:[{data:s[e(460)],id:176},{data:s[e(378)],id:186}]}]}]}]}],h=0,l=0;h<t.length;){var c=[],d=0;do{c[e(466)](t[h]),d+=t[h][e(516)],h++}while(h<t[e(534)]&&d<3e4);var u={id:524531317,data:i(l,0,c)};o[1].data.push(u),l+=d}return a(o)}(e[s(422)](function(t){var e=s,i=function(t){for(var e=Dh,s=t[e(467)][0][e(502)][0],i=s[e(493)]("*"),r=0,n=[];r<4;r++)n[r]=s[e(132)](i+3+r);return{width:16383&(n[1]<<8|n[0]),height:16383&(n[3]<<8|n[2]),data:s,riff:t}}(l(atob(t[e(424)][e(142)](23))));return i[e(516)]=t[e(516)],i}));postMessage(c)}return s[t(315)].add=function(e,s){var i=t;if("canvas"in e&&(e=e[i(455)]),i(255)in e&&(e=e.toDataURL(i(140),this[i(419)])),!/^data:image\/webp;base64,/gi[i(480)](e))throw i(453);this[i(475)][i(466)]({image:e,duration:s||this[i(516)]})},s.prototype[t(264)]=function(e){var s,r,n,o,a=t,h=(s=i,n=p[(r=t)(406)](new Blob([s.toString(),"this.onmessage = function (eee) {"+s[r(536)]+r(487)],{type:r(178)})),o=new Worker(n),p[r(319)](n),o);h[a(497)]=function(t){var s=a;t[s(483)][s(232)]?console[s(232)](t[s(483)][s(232)]):e(t[s(483)])},h[a(156)](this[a(475)])},{Video:s}}();typeof s!==e(146)&&(s.Whammy=R);var P={init:function(){var t=e,s=this;if("undefined"!=typeof indexedDB&&typeof indexedDB.open!==t(146)){var i,r=this[t(413)]||location[t(409)][t(420)](/\/|:|#|%|\.|\[|\]/g,""),n=indexedDB.open(r,1);n[t(224)]=s[t(186)],n[t(399)]=function(){var e=t;((i=n[e(418)])[e(224)]=s[e(186)],i[e(486)])?1!==i.version?i[e(486)](1).onsuccess=function(){o(i),a()}:a():a()},n[t(374)]=function(e){var s=t;o(e.target[s(418)])}}else console[t(232)](t(437));function o(e){var i=t;e[i(173)](s[i(160)])}function a(){var e=t,r=i[e(311)]([s[e(160)]],e(194));function n(t){var i=e;r[i(458)](s[i(160)])[i(252)](t)[i(399)]=function(e){var r=i;s[r(425)]&&s.callback(e[r(347)][r(418)],t)}}s[e(228)]&&r[e(458)](s[e(160)])[e(417)](s.videoBlob,"videoBlob"),s[e(278)]&&r[e(458)](s[e(160)])[e(417)](s[e(278)],e(278)),s[e(130)]&&r[e(458)](s[e(160)])[e(417)](s[e(130)],"audioBlob"),n("audioBlob"),n("videoBlob"),n(e(278))}},Fetch:function(t){return this[e(425)]=t,this.init(),this},Store:function(t){var s=e;return this[s(130)]=t[s(130)],this[s(228)]=t[s(228)],this[s(278)]=t[s(278)],this[s(268)](),this},onError:function(t){var s=e;console[s(232)](JSON[s(287)](t,null,"\t"))},dataStoreName:"recordRTC",dbName:null};function x(t,s){var i=e;if("undefined"==typeof GIFEncoder){var r=document[i(444)](i(210));r[i(275)]="https://www.webrtc-experiment.com/gif-recorder.js",(document[i(122)]||document[i(431)])[i(325)](r)}s=s||{};var n=t instanceof CanvasRenderingContext2D||t instanceof HTMLCanvasElement;this[i(355)]=function(){var t=i;typeof GIFEncoder!==t(146)?c?(!n&&(!s[t(460)]&&(s[t(460)]=u[t(123)]||320),!s.height&&(s[t(378)]=u[t(322)]||240),!s[t(522)]&&(s[t(522)]={width:s.width,height:s[t(378)]}),!s[t(455)]&&(s.canvas={width:s[t(460)],height:s.height}),a.width=s[t(455)][t(460)]||320,a.height=s[t(455)][t(378)]||240,u[t(460)]=s.video[t(460)]||320,u.height=s.video.height||240),(f=new GIFEncoder)[t(330)](0),f[t(510)](s[t(527)]||200),f[t(180)](s[t(419)]||10),f[t(305)](),typeof s[t(154)]===t(276)&&s[t(154)](),Date[t(238)](),m=l(function e(i){var r=t;if(!0!==g.clearedRecordedData){if(o)return setTimeout(function(){e(i)},100);m=l(e),void 0===typeof p&&(p=i),i-p<90||(!n&&u[r(446)]&&u.play(),!n&&h.drawImage(u,0,0,a.width,a[r(378)]),s.onGifPreview&&s[r(250)](a[r(255)](r(395))),f[r(540)](h),p=i)}}),s[t(326)]&&s[t(326)]()):setTimeout(g.record,1e3):setTimeout(g[t(355)],1e3)},this.stop=function(t){var e=i;t=t||function(){},m&&d(m),Date[e(238)](),this[e(282)]=new Blob([new Uint8Array(f[e(404)]()[e(490)])],{type:e(430)}),t(this[e(282)]),f.stream()[e(490)]=[]};var o=!1;this[i(392)]=function(){o=!0},this.resume=function(){o=!1},this[i(370)]=function(){var t;g[i(179)]=!0,t=i,f&&(f[t(404)]().bin=[])},this[i(536)]="GifRecorder",this.toString=function(){return this[i(536)]};var a=document[i(444)](i(455)),h=a[i(485)]("2d");n&&(t instanceof CanvasRenderingContext2D?a=(h=t).canvas:t instanceof HTMLCanvasElement&&(h=t[i(485)]("2d"),a=t));var c=!0;if(!n){var u=document[i(444)](i(522));u[i(329)]=!0,u[i(459)]=!0,u.playsInline=!0,c=!1,u[i(386)]=function(){c=!0},T(t,u),u[i(479)]()}var p,f,m=null,g=this}function M(t,i){var r,n,o=e,a=o(379);r=typeof ge[o(331)]!==o(146)?ge[o(331)]:null,typeof s===(n=o)(146)&&r&&typeof window===n(146)&&void 0!==ge[n(331)]&&(ge[n(331)][n(213)]={userAgent:a,getUserMedia:function(){}},!ge[n(331)][n(231)]&&(ge[n(331)][n(231)]={}),(typeof fe[n(231)].log===n(146)||typeof ge[n(331)].console[n(232)]===n(146))&&(ge[n(331)].console[n(232)]=ge[n(331)][n(231)][n(310)]=fe.console[n(310)]||function(){console[n(310)](arguments)}),typeof document===n(146)&&(r.document={documentElement:{appendChild:function(){return""}}},document[n(444)]=document[n(197)]=document.mozCaptureStream=function(){var t={getContext:function(){return t},play:function(){},pause:function(){},drawImage:function(){},toDataURL:function(){return""},style:{}};return t},r[n(226)]=function(){}),typeof location===n(146)&&(r.location={protocol:n(202),href:"",hash:""}),typeof screen===n(146)&&(r[n(168)]={width:0,height:0}),typeof f===n(146)&&(r[n(328)]={createObjectURL:function(){return""},revokeObjectURL:function(){return""}}),r.window=fe),i=i||o(314);var h=[],l=!1,c=document[o(444)](o(455)),d=c.getContext("2d");c.style[o(463)]=0,c.style[o(407)]=o(433),c[o(141)][o(192)]=-1,c[o(141)][o(152)]=o(533),c.style[o(284)]="-1000em",c[o(361)]=i,(document[o(122)]||document[o(431)]).appendChild(c),this[o(499)]=!1,this[o(501)]=10,this[o(460)]=360,this[o(378)]=240,this[o(153)]=!0;var u=this,p=window[o(181)];void 0===p&&("undefined"!=typeof webkitAudioContext&&(p=webkitAudioContext),"undefined"!=typeof mozAudioContext&&(p=mozAudioContext));var f=window[o(328)];typeof f===o(146)&&typeof webkitURL!==o(146)&&(f=webkitURL),typeof navigator!==o(146)&&void 0===navigator[o(124)]&&(typeof navigator[o(513)]!==o(146)&&(navigator[o(124)]=navigator[o(513)]),typeof navigator[o(488)]!==o(146)&&(navigator[o(124)]=navigator[o(488)]));var m=window[o(271)];typeof m===o(146)&&"undefined"!=typeof webkitMediaStream&&(m=webkitMediaStream),typeof m!==o(146)&&void 0===m[o(315)][o(521)]&&(m.prototype.stop=function(){var t=o;this.getTracks()[t(415)](function(e){e[t(521)]()})});var g={};function y(){var t=o;if(!l){var e=h[t(534)],s=!1,i=[];if(h[t(415)](function(e){var r=t;!e[r(404)]&&(e[r(404)]={}),e[r(404)][r(155)]?s=e:i.push(e)}),s)c[t(460)]=s[t(404)][t(460)],c[t(378)]=s.stream.height;else if(i[t(534)]){c[t(460)]=e>1?2*i[0][t(460)]:i[0][t(460)];var r=1;(3===e||4===e)&&(r=2),(5===e||6===e)&&(r=3),(7===e||8===e)&&(r=4),(9===e||10===e)&&(r=5),c.height=i[0].height*r}else c[t(460)]=u[t(460)]||360,c[t(378)]=u[t(378)]||240;s&&s instanceof HTMLVideoElement&&A(s),i[t(415)](function(t,e){A(t,e)}),setTimeout(y,u.frameInterval)}}function A(t,e){var s=o;if(!l){var i=0,r=0,n=t[s(460)],a=t[s(378)];1===e&&(i=t.width),2===e&&(r=t[s(378)]),3===e&&(i=t[s(460)],r=t.height),4===e&&(r=2*t[s(378)]),5===e&&(i=t[s(460)],r=2*t[s(378)]),6===e&&(r=3*t[s(378)]),7===e&&(i=t[s(460)],r=3*t[s(378)]),typeof t[s(404)][s(284)]!==s(146)&&(i=t.stream[s(284)]),typeof t[s(404)][s(152)]!==s(146)&&(r=t.stream[s(152)]),typeof t[s(404)][s(460)]!==s(146)&&(n=t[s(404)][s(460)]),void 0!==t[s(404)].height&&(a=t.stream[s(378)]),d[s(461)](t,i,r,n,a),typeof t[s(404)][s(221)]===s(276)&&t.stream.onRender(d,i,r,n,a,e)}}function b(t){var e,s,r,n=o,a=document[n(444)](n(522));return e=t,r=o,"srcObject"in(s=a)?s.srcObject=e:r(150)in s?s[r(150)]=e:s[r(191)]=e,a[n(361)]=i,a[n(329)]=!0,a[n(400)]=0,a[n(460)]=t[n(460)]||u[n(460)]||360,a[n(378)]=t[n(378)]||u.height||240,a[n(479)](),a}function v(e){h=[],(e=e||t).forEach(function(t){var e=Dh;if(t[e(337)]().filter(function(t){return"video"===t[e(472)]}).length){var s=b(t);s[e(404)]=t,h[e(466)](s)}})}typeof p!==o(146)?g[o(181)]=p:typeof webkitAudioContext!==o(146)&&(g[o(181)]=webkitAudioContext),this[o(246)]=function(){y()},this.appendStreams=function(e){var s=o;if(!e)throw s(402);!(e instanceof Array)&&(e=[e]),e[s(415)](function(e){var i=s,r=new m;if(e[i(337)]()[i(215)](function(t){var e=i;return t[e(472)]===e(522)})[i(534)]){var n=b(e);n[i(404)]=e,h[i(466)](n),r[i(489)](e[i(337)]()[i(215)](function(t){return"video"===t[i(472)]})[0])}if(e[i(337)]().filter(function(t){var e=i;return t[e(472)]===e(128)})[i(534)]){var o=u[i(447)][i(306)](e);u[i(496)]=u[i(447)].createMediaStreamDestination(),o[i(412)](u[i(496)]),r[i(489)](u[i(496)].stream[i(337)]()[i(215)](function(t){return"audio"===t[i(472)]})[0])}t[i(466)](r)})},this[o(371)]=function(){var t=o;h=[],l=!0,u[t(254)]&&(u[t(254)][t(543)](),u[t(254)]=null),u[t(127)][t(534)]&&(u[t(127)].forEach(function(t){t.disconnect()}),u.audioSources=[]),u[t(496)]&&(u.audioDestination[t(543)](),u[t(496)]=null),u[t(447)]&&u[t(447)][t(212)](),u.audioContext=null,d[t(532)](0,0,c.width,c[t(378)]),c[t(404)]&&(c[t(404)][t(521)](),c[t(404)]=null)},this[o(182)]=function(t){t&&!(t instanceof Array)&&(t=[t]),v(t)},this[o(536)]="MultiStreamsMixer",this[o(384)]=function(){return this[o(536)]},this[o(237)]=function(){var e=o;l=!1;var s=function(){var t,e=o;v(),e(197)in c?t=c[e(197)]():e(341)in c?t=c[e(341)]():!u[e(499)]&&console[e(232)]("Upgrade to latest Chrome or otherwise enable this flag: chrome://flags/#enable-experimental-web-platform-features");var s=new m;return t[e(337)]()[e(215)](function(t){var s=e;return t.kind===s(522)}).forEach(function(t){s[e(489)](t)}),c[e(404)]=s,s}(),i=function(){var e=o;!g.AudioContextConstructor&&(g[e(498)]=new(g[e(181)])),u[e(447)]=g[e(498)],u.audioSources=[],!0===u[e(153)]&&(u[e(254)]=u[e(447)][e(294)](),u[e(254)][e(412)](u[e(447)][e(393)]),u.gainNode[e(443)][e(427)]=0);var s=0;if(t[e(415)](function(t){var i=e;if(t[i(337)]().filter(function(t){var e=i;return t.kind===e(128)})[i(534)]){s++;var r=u[i(447)].createMediaStreamSource(t);!0===u[i(153)]&&r[i(412)](u[i(254)]),u[i(127)][i(466)](r)}}),!s)return;return u[e(496)]=u[e(447)][e(223)](),u[e(127)][e(415)](function(t){var s=e;t[s(412)](u[s(496)])}),u[e(496)].stream}();return i&&i[e(337)]()[e(215)](function(t){return"audio"===t[e(472)]}).forEach(function(t){s[e(489)](t)}),t[e(415)](function(t){t[e(155)]}),s}}function B(t,s){var i=e;t=t||[];var r,n,o=this;!(s=s||{elementClass:i(314),mimeType:i(321),video:{width:360,height:240}})[i(501)]&&(s[i(501)]=10),!s.video&&(s[i(522)]={}),!s[i(522)].width&&(s[i(522)][i(460)]=360),!s[i(522)].height&&(s.video[i(378)]=240),this[i(355)]=function(){var e,o,a=i;r=new M(t,s[a(454)]||a(314)),(e=i,o=[],t[e(415)](function(t){var s=e;w(t,s(522))[s(415)](function(t){o[s(466)](t)})}),o)[a(534)]&&(r[a(501)]=s[a(501)]||10,r[a(460)]=s.video[a(460)]||360,r[a(378)]=s[a(522)][a(378)]||240,r[a(246)]()),s[a(345)]&&typeof s[a(345)]===a(276)&&s[a(345)](r[a(237)]()),(n=new _(r[a(237)](),s))[a(355)]()},this[i(521)]=function(t){n&&n.stop(function(e){var s=Dh;o[s(282)]=e,t(e),o[s(370)]()})},this[i(392)]=function(){n&&n[i(392)]()},this[i(332)]=function(){n&&n[i(332)]()},this[i(370)]=function(){var t=i;n&&(n.clearRecordedData(),n=null),r&&(r[t(371)](),r=null)},this[i(338)]=function(e){var o=i;if(!e)throw o(402);!(e instanceof Array)&&(e=[e]),t[o(481)](e),n&&r&&(r.appendStreams(e),s[o(345)]&&typeof s[o(345)]===o(276)&&s[o(345)](r[o(237)]()))},this[i(182)]=function(t){r&&(t&&!(t instanceof Array)&&(t=[t]),r[i(182)](t))},this.getMixer=function(){return r},this[i(536)]=i(357),this[i(384)]=function(){return this[i(536)]}}function F(t,s){var i,r,n,o=e;function a(e,l){var c=o;if(!s[c(344)]&&!l)return i=!1,void fetch(c(129)).then(function(t){t[c(285)]().then(function(t){a(e,t)})});if(!s.workerPath&&l instanceof ArrayBuffer){var d=new Blob([l],{type:"text/javascript"});s[c(344)]=p[c(406)](d)}!s.workerPath&&console[c(232)](c(234)),(r=new Worker(s[c(344)]))[c(156)](s.webAssemblyPath||c(297)),r[c(529)]("message",function(e){var o=c;e[o(483)]===o(147)?(r[o(156)]({width:s[o(460)],height:s.height,bitrate:s[o(544)]||1200,timebaseDen:s[o(527)]||30,realtime:s[o(262)]}),new ReadableStream({start:function(e){var r=Dh,n=document[r(444)](r(455)),o=document.createElement(r(522)),a=!0;o[r(191)]=t,o[r(329)]=!0,o[r(378)]=s[r(378)],o.width=s[r(460)],o[r(400)]=0,o[r(257)]=function(){var t=r;n[t(460)]=s.width,n[t(378)]=s.height;var h=n[t(485)]("2d"),l=1e3/s[t(527)],c=setInterval(function(){var r=t;if(i&&(clearInterval(c),e[r(212)]()),a&&(a=!1,s[r(469)]&&s[r(469)]()),h[r(461)](o,0,0),e[r(423)][r(366)]!==r(225))try{e[r(126)](h[r(189)](0,0,s[r(460)],s[r(378)]))}catch(t){}},l)},o.play()}})[o(398)](new WritableStream({write:function(t){var e=o;i?console.error("Got image, but recorder is finished!"):r[e(156)](t.data[e(352)],[t[e(483)][e(352)]])}}))):e[o(483)]&&!n&&h[o(466)](e[o(483)])})}(typeof ReadableStream===o(146)||typeof WritableStream===o(146))&&console.error(o(134)),(s=s||{}).width=s.width||640,s[o(378)]=s.height||480,s[o(527)]=s[o(527)]||30,s[o(544)]=s[o(544)]||1200,s[o(262)]=s[o(262)]||!0,this.record=function(){var e=o;h=[],n=!1,this[e(282)]=null,a(t),typeof s[e(326)]===e(276)&&s[e(326)]()},this.pause=function(){n=!0},this[o(332)]=function(){n=!1};var h=[];this[o(521)]=function(t){i=!0;var e,s,n=this;e=function(){var e=Dh;n[e(282)]=new Blob(h,{type:"video/webm"}),t(n[e(282)])},s=o,r?(r.addEventListener("message",function(t){var s=Dh;null===t[s(483)]&&(r[s(342)](),r=null,e&&e())}),r[s(156)](null)):e&&e()},this[o(536)]="WebAssemblyRecorder",this[o(384)]=function(){return this[o(536)]},this[o(370)]=function(){h=[],n=!1,this[o(282)]=null},this[o(282)]=null}typeof s!==e(146)&&(s[e(211)]=P),typeof s!==e(146)&&(s[e(258)]=x),typeof s===e(146)&&e(308)!==e(146)&&(t[e(530)]=M),typeof s!==e(146)&&(s[e(357)]=B),typeof s!==e(146)&&(s[e(247)]=function(t,i){var r=e;if(!this)throw r(508);if(void 0===t)throw r(362);var n=this;n.recordRTC=new s(t,i),this.startRecording=function(){return new Promise(function(t,e){var s=Dh;try{n[s(539)][s(165)](),t()}catch(t){e(t)}})},this[r(195)]=function(){return new Promise(function(t,e){var s=Dh;try{n[s(539)][s(195)](function(i){var r=s;n.blob=n[r(539)][r(183)](),n[r(282)]&&n.blob[r(537)]?t(i):e(r(515),n[r(282)])})}catch(t){e(t)}})},this[r(494)]=function(){return new Promise(function(t,e){var s=Dh;try{n[s(539)][s(494)](),t()}catch(t){e(t)}})},this.resumeRecording=function(){return new Promise(function(t,e){var s=Dh;try{n[s(539)][s(343)](),t()}catch(t){e(t)}})},this[r(203)]=function(t){return new Promise(function(t,e){var s=Dh;try{n[s(539)].getDataURL(function(e){t(e)})}catch(t){e(t)}})},this[r(183)]=function(){return new Promise(function(t,e){var s=Dh;try{t(n.recordRTC[s(183)]())}catch(t){e(t)}})},this[r(286)]=function(){return new Promise(function(t,e){var s=Dh;try{t(n[s(539)].getInternalRecorder())}catch(t){e(t)}})},this.reset=function(){return new Promise(function(t,e){var s=Dh;try{t(n.recordRTC[s(477)]())}catch(t){e(t)}})},this[r(349)]=function(){return new Promise(function(t,e){var s=Dh;try{t(n[s(539)].destroy())}catch(t){e(t)}})},this[r(470)]=function(){return new Promise(function(t,e){var s=Dh;try{t(n[s(539)][s(470)]())}catch(t){e(t)}})},this[r(282)]=null,this[r(492)]=r(309)}),typeof s!==e(146)&&(s[e(531)]=F)});const Rh=Mh;function Ph(){const t=["parseSPS","183152VFnTYt","7AbZUuq","ceil","readByte","723780saRHKa","Unknown","144477QomtXT","Extended","destroy","getChromaFormatString","Main","772TUwElY","393fVOYgc","toFixed","545552Qptmrg","readBits","readSEG","readUEG","1045160ysiPWW","_skipScalingList","4:2:2","subarray","parseSPS$2","_ebsp2rbsp","getProfileString","getLevelString","4:4:4","27vzKCxx","High10","1591386gvQDNU","readBool","High","buffer","4:2:0"];return(Ph=function(){return t})()}!function(t){const e=Mh,s=t();for(;;)try{if(143854===-parseInt(e(435))/1+parseInt(e(440))/2*(parseInt(e(441))/3)+-parseInt(e(443))/4+parseInt(e(433))/5+-parseInt(e(423))/6*(-parseInt(e(430))/7)+parseInt(e(429))/8*(parseInt(e(456))/9)+-parseInt(e(447))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Ph);class xh{static[Rh(452)](t){const e=Rh;let s=t,i=s.byteLength,r=new Uint8Array(i),n=0;for(let t=0;t<i;t++)t>=2&&3===s[t]&&0===s[t-1]&&0===s[t-2]||(r[n]=s[t],n++);return new Uint8Array(r[e(426)],0,n)}static[Rh(428)](t){const e=Rh;let s=xh[e(452)](t),i=new Se(s);i[e(432)]();let r=i[e(432)]();i[e(432)]();let n=i[e(432)]();i[e(446)]();let o=xh.getProfileString(r),a=xh[e(454)](n),h=1,l=420,c=[0,420,422,444],d=8;if((100===r||110===r||122===r||244===r||44===r||83===r||86===r||118===r||128===r||138===r||144===r)&&(h=i[e(446)](),3===h&&i.readBits(1),h<=3&&(l=c[h]),d=i[e(446)]()+8,i.readUEG(),i[e(444)](1),i[e(424)]())){let t=3!==h?8:12;for(let s=0;s<t;s++)i[e(424)]()&&(s<6?xh[e(448)](i,16):xh._skipScalingList(i,64))}i[e(446)]();let u=i.readUEG();if(0===u)i[e(446)]();else if(1===u){i[e(444)](1),i[e(445)](),i[e(445)]();let t=i[e(446)]();for(let s=0;s<t;s++)i[e(445)]()}let p=i[e(446)]();i[e(444)](1);let f=i[e(446)](),m=i[e(446)](),g=i[e(444)](1);0===g&&i[e(444)](1),i[e(444)](1);let y=0,A=0,b=0,v=0;i[e(424)]()&&(y=i[e(446)](),A=i.readUEG(),b=i[e(446)](),v=i[e(446)]());let S=1,E=1,w=0,T=!0,I=0,k=0;if(i[e(424)]()){if(i[e(424)]()){let t=i[e(432)]();t>0&&t<16?(S=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2][t-1],E=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1][t-1]):255===t&&(S=i[e(432)]()<<8|i[e(432)](),E=i.readByte()<<8|i[e(432)]())}if(i.readBool()&&i[e(424)](),i.readBool()&&(i[e(444)](4),i[e(424)]()&&i.readBits(24)),i[e(424)]()&&(i[e(446)](),i[e(446)]()),i.readBool()){let t=i.readBits(32),s=i[e(444)](32);T=i.readBool(),I=s,k=2*t,w=I/k}}let _=1;(1!==S||1!==E)&&(_=S/E);let C=0,D=0;if(0===h)C=1,D=2-g;else{C=3===h?1:2,D=(1===h?2:1)*(2-g)}let L=16*(f+1),R=16*(m+1)*(2-g);L-=(y+A)*C,R-=(b+v)*D;let P=Math.ceil(L*_);return i[e(437)](),i=null,{profile_string:o,level_string:a,bit_depth:d,ref_frames:p,chroma_format:l,chroma_format_string:xh.getChromaFormatString(l),frame_rate:{fixed:T,fps:w,fps_den:k,fps_num:I},sar_ratio:{width:S,height:E},codec_size:{width:L,height:R},present_size:{width:P,height:R}}}static[Rh(451)](t){const e=Rh;let s=t[e(450)](1,4),i="avc1.";for(let t=0;t<3;t++){let e=s[t].toString(16);e.length<2&&(e="0"+e),i+=e}let r=xh[e(452)](t),n=new Se(r);n[e(432)]();let o=n[e(432)]();n[e(432)]();let a=n[e(432)]();n[e(446)]();let h=xh[e(453)](o),l=xh[e(454)](a),c=1,d=420,u=[0,420,422,444],p=8,f=8;if((100===o||110===o||122===o||244===o||44===o||83===o||86===o||118===o||128===o||138===o||144===o)&&(c=n.readUEG(),3===c&&n[e(444)](1),c<=3&&(d=u[c]),p=n.readUEG()+8,f=n.readUEG()+8,n[e(444)](1),n[e(424)]())){let t=3!==c?8:12;for(let s=0;s<t;s++)n[e(424)]()&&(s<6?xh[e(448)](n,16):xh._skipScalingList(n,64))}n[e(446)]();let m=n.readUEG();if(0===m)n[e(446)]();else if(1===m){n[e(444)](1),n[e(445)](),n[e(445)]();let t=n[e(446)]();for(let s=0;s<t;s++)n[e(445)]()}let g=n.readUEG();n[e(444)](1);let y=n[e(446)](),A=n[e(446)](),b=n[e(444)](1);0===b&&n[e(444)](1),n[e(444)](1);let v=0,S=0,E=0,w=0;n[e(424)]()&&(v=n[e(446)](),S=n[e(446)](),E=n[e(446)](),w=n.readUEG());let T=1,I=1,k=0,_=!0,C=0,D=0;if(n.readBool()){if(n[e(424)]()){let t=n[e(432)]();t>0&&t<16?(T=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2][t-1],I=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1][t-1]):255===t&&(T=n[e(432)]()<<8|n[e(432)](),I=n[e(432)]()<<8|n[e(432)]())}if(n.readBool()&&n.readBool(),n[e(424)]()&&(n[e(444)](4),n.readBool()&&n[e(444)](24)),n[e(424)]()&&(n[e(446)](),n[e(446)]()),n[e(424)]()){let t=n[e(444)](32),s=n[e(444)](32);_=n[e(424)](),C=s,D=2*t,k=C/D}}let L=1;(1!==T||1!==I)&&(L=T/I);let R=0,P=0;if(0===c)R=1,P=2-b;else{R=3===c?1:2,P=(1===c?2:1)*(2-b)}let x=16*(y+1),M=16*(A+1)*(2-b);x-=(v+S)*R,M-=(E+w)*P;let B=Math[e(431)](x*L);return n.destroy(),n=null,{codec_mimetype:i,profile_idc:o,level_idc:a,profile_string:h,level_string:l,chroma_format_idc:c,bit_depth:p,bit_depth_luma:p,bit_depth_chroma:f,ref_frames:g,chroma_format:d,chroma_format_string:xh[e(438)](d),frame_rate:{fixed:_,fps:k,fps_den:D,fps_num:C},sar_ratio:{width:T,height:I},codec_size:{width:x,height:M},present_size:{width:B,height:M}}}static[Rh(448)](t,e){let s=8,i=8,r=0;for(let n=0;n<e;n++)0!==i&&(r=t.readSEG(),i=(s+r+256)%256),s=0===i?s:i}static[Rh(453)](t){const e=Rh;switch(t){case 66:return"Baseline";case 77:return e(439);case 88:return e(436);case 100:return e(425);case 110:return e(457);case 122:return"High422";case 244:return"High444";default:return"Unknown"}}static[Rh(454)](t){return(t/10)[Rh(442)](1)}static[Rh(438)](t){const e=Rh;switch(t){case 420:return e(427);case 422:return e(449);case 444:return e(455);default:return e(434)}}}function Mh(t,e){const s=Ph();return(Mh=function(t,e){return s[t-=423]})(t,e)}function Bh(){const t=["buffer","bufpos","35313tKXXvH","1381128XmbmGd","1202588RFZOxn","186pgrNZe","68830sENXqR","6582015camETk","74bFbikT","17367VbZFFO","read","buflen","574390UFjQIJ","look","bufoff","iserro","8HGMgIh","63RhTsxh","length"];return(Bh=function(){return t})()}function Fh(t,e){const s=Bh();return(Fh=function(t,e){return s[t-=483]})(t,e)}const Uh=Fh;!function(t){const e=Fh,s=t();for(;;)try{if(275511===-parseInt(e(500))/1+parseInt(e(499))/2*(-parseInt(e(493))/3)+parseInt(e(495))/4+-parseInt(e(497))/5*(-parseInt(e(496))/6)+parseInt(e(494))/7*(parseInt(e(488))/8)+parseInt(e(489))/9*(parseInt(e(484))/10)+-parseInt(e(498))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Bh);Uh(501),Uh(485);const Oh=Nh;!function(t){const e=Nh,s=t();for(;;)try{if(147853===-parseInt(e(141))/1*(-parseInt(e(149))/2)+parseInt(e(151))/3+parseInt(e(159))/4+parseInt(e(161))/5+parseInt(e(153))/6+parseInt(e(137))/7*(parseInt(e(164))/8)+parseInt(e(138))/9*(-parseInt(e(156))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Vh);Oh(163),Oh(157),Oh(166),Oh(140),Oh(148),Oh(160);function Nh(t,e){const s=Vh();return(Nh=function(t,e){return s[t-=137]})(t,e)}function Vh(){const t=["readBits","270880WmPXVH","readSliceType","954835APOGra","readEG","_loadWord","4552PdLlKA","ExpGolomb data params is required","skipLZ","getUint32","3136dVwnWg","99WvSedE","min","skipUEG","2NsyImE","buffer","_bytesAvailable","_word","Cannot read more than 32 bits","No bytes available","readUByte","readUEG","80782IOaAgT","byteLength","612279BmLFmG","floor","99108dZMjBb","_bitsAvailable","_data","606490bYyXSf","skipBits"];return(Vh=function(){return t})()}const jh=Yh;function Wh(){const t=["presentWidth","readBits","read","refSampleDuration","chromaFormat"," Strange AVCDecoderConfigurationRecord: SPS Count = ","Strange NaluLengthSizeMinusOne: ","frameRate","findNextStartCodeOffset","setUint32","present_size","level","avcc","bit_depth","JbPro[xxx][❌❌❌][parseAVCDecoderConfigurationRecord] invalid version ","1938312izRmyI","videoType","342755RDCduJ","sps","skipUEG","codec","readUEG","buffer",", valid version is 1 and return","fps_den","Invalid AVCDecoderConfigurationRecord: No PPS'","type","JbPro[xxx][❌❌❌][parseAVCDecoderConfigurationRecord] invalid AVC profile (0) detected, and return","Invalid AVCDecoderConfigurationRecord: No SPS","frame_rate","set","bit_depth_chroma","subarray","9354512LZpVfz","bit_depth_luma","codec_size","fixed","pps","byteLength","skipScalingList","sarRatio","getUint8","JbPro[xxx][✅✅✅][parseAVCDecoderConfigurationRecord] AVC profile (0) detected, correct to Baseline Profile (66)","setUint8","data","readBool","48460ZpBpnN","read_golomb","width","chroma_format_idc","codecWidth","readNextNaluPayload","profile_string","eofFlag","pos","sar_ratio","error","readBit","height","143420YUuqvx","length","bit","Invalid AVCDecoderConfigurationRecord, lack of data!","fps_num","2729845rXraNj","132Iychvk","chroma_format","getUint16","Error parsing slice header:","currentStartcodeOffset","381iJYxzs","push","correctionConfigurationProfileIndication","toString","2263190rXskfo","compat","timescale","readUE","codecHeight","profile","Strange AVCDecoderConfigurationRecord: PPS Count = ","iFrame","setInt16","log","avc1.","skipBits","h264","correctionConfigurationVersion","kSliceNonIDR","bitDepth","readUByte","kSliceSEI","nb_sps","Invalid AVCDecoderConfigurationRecord version !== 1 || avcProfile === 0","presentHeight","parseSPS$2","level_string"];return(Wh=function(){return t})()}function Gh(t,e={}){const s=Yh,i={};let r=function(){let t=new ArrayBuffer(2);return new DataView(t).setInt16(0,256,!0),256===new Int16Array(t)[0]}();const n=new DataView(t[s(198)]);let o=n[s(217)](0),a=n[s(217)](1);if(n[s(217)](2),n[s(217)](3),1!==o){if(!e[s(263)])return console[s(232)](s(287)+o+s(199)),{};{console[s(259)]("JbPro[xxx][✅✅✅][parseAVCDecoderConfigurationRecord] invalid version "+o+", correct to 1");let t=252&n[s(217)](0)|1;n[s(219)](0,t)}}if(0===a){if(!e[s(248)])return console[s(232)](s(203)),{};console[s(259)](s(218)),n[s(219)](1,66)}const h=1+(3&n.getUint8(4));if(3!==h&&4!==h)return{};let l=31&n.getUint8(5);if(0===l)return{};let c=6;for(let e=0;e<l;e++){let o=n[s(243)](c,!r);if(c+=2,0===o)continue;let a=new Uint8Array(t[s(198)],c,o);c+=o;let h=xh.parseSPS(a);if(0!==e)continue;i[s(291)]=a,i[s(252)]=1e3,i[s(226)]=h[s(211)][s(224)],i.codecHeight=h[s(211)][s(234)],i[s(273)]=h[s(283)][s(224)],i[s(270)]=h[s(283)].height,i.profile=h.profile_string,i.level=h[s(272)],i[s(265)]=h[s(286)],i[s(277)]=h[s(242)],i[s(216)]=h.sar_ratio,i[s(280)]=h[s(205)],(!1===h[s(205)][s(212)]||0===h[s(205)].fps_num||0===h[s(205)][s(200)])&&(i[s(280)]={fixed:!0,fps:25,fps_num:25e3,fps_den:1e3});let l=i[s(280)].fps_den,d=i[s(280)][s(239)];i.refSampleDuration=i.timescale*(l/d);let u=a[s(208)](1,4),p=s(260);for(let t=0;t<3;t++){let e=u[t].toString(16);e[s(236)]<2&&(e="0"+e),p+=e}i[s(293)]=p}let d=n[s(217)](c);if(0===d)return{};c++;for(let e=0;e<d;e++){let e=n.getUint16(c,!r);if(c+=2,0===e)continue;let o=new Uint8Array(t[s(198)],c,e);c+=e,i.pps=o}if(i[s(289)]=Et[s(262)],i[s(291)]){const t=i.sps[s(214)],e=new Uint8Array([t>>>24&255,t>>>16&255,t>>>8&255,255&t]),r=new Uint8Array(t+4);r[s(206)](e,0),r[s(206)](i.sps,4),i.sps=r}if(i[s(213)]){const t=i[s(213)][s(214)],e=new Uint8Array([t>>>24&255,t>>>16&255,t>>>8&255,255&t]),r=new Uint8Array(t+4);r.set(e,0),r[s(206)](i[s(213)],4),i.pps=r}return i}function zh({sps:t,pps:e}){const s=Yh;let i=8+t[s(214)]+1+2+e[s(214)],r=!1;const n=xh[s(271)](t);66!==t[3]&&77!==t[3]&&88!==t[3]&&(r=!0,i+=4);let o=new Uint8Array(i);o[0]=1,o[1]=t[1],o[2]=t[2],o[3]=t[3],o[4]=255,o[5]=225;let a=t[s(214)];o[6]=a>>>8,o[7]=255&a;let h=8;o[s(206)](t,8),h+=a,o[h]=1;let l=e[s(214)];o[h+1]=l>>>8,o[h+2]=255&l,o[s(206)](e,h+3),h+=3+l,r&&(o[h]=252|n[s(225)],o[h+1]=248|n[s(210)]-8,o[h+2]=248|n[s(207)]-8,o[h+3]=0,h+=4);const c=[23,0,0,0,0],d=new Uint8Array(c[s(236)]+o.byteLength);return d[s(206)](c,0),d[s(206)](o,c[s(236)]),d}function Hh(t,e){const s=Yh;let i=[];i[0]=e?23:39,i[1]=1,i[2]=0,i[3]=0,i[4]=0;const r=new Uint8Array(i[s(236)]+t[s(214)]);return r[s(206)](i,0),r[s(206)](t,i[s(236)]),r}function Kh(t){return 31&t[0]}function qh(t){return t===ot[Yh(267)]}function Qh(t){return!(e=t,e===ot[Yh(291)]||e===ot.pps||qh(t));var e}function Yh(t,e){const s=Wh();return(Yh=function(t,e){return s[t-=197]})(t,e)}function Jh(t){return t===ot[Yh(257)]}!function(t){const e=Yh,s=t();for(;;)try{if(897677===parseInt(e(235))/1+parseInt(e(250))/2+-parseInt(e(246))/3*(-parseInt(e(222))/4)+parseInt(e(240))/5+-parseInt(e(241))/6*(parseInt(e(290))/7)+-parseInt(e(209))/8+-parseInt(e(288))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Wh);jh(233),jh(274),jh(253);class Xh{constructor(t){const e=jh;this.data=t,this[e(229)]=!1,this[e(245)]=this.findNextStartCodeOffset(0),this[e(229)]&&console[e(232)]("Could not find H264 startcode until payload end!")}[jh(281)](t){const e=jh;let s=t,i=this[e(220)];for(;;){if(s+3>=i.byteLength)return this[e(229)]=!0,i[e(214)];let t=i[s+0]<<24|i[s+1]<<16|i[s+2]<<8|i[s+3],r=i[s+0]<<16|i[s+1]<<8|i[s+2];if(1===t||1===r)return s;s++}}[jh(227)](){const t=jh;let e=this.data,s=null;for(;null==s&&!this[t(229)];){let i=this[t(245)];i+=1===(e[i]<<24|e[i+1]<<16|e[i+2]<<8|e[i+3])?4:3;let r=31&e[i],n=(128&e[i])>>>7,o=this.findNextStartCodeOffset(i);this[t(245)]=o,r>=ot.kReserved0||0===n&&(s={type:r,data:e[t(208)](i,o)})}return s}}class $h{constructor(t){const e=jh;let s=t.data[e(214)];this[e(202)]=t[e(202)],this[e(220)]=new Uint8Array(4+s),new DataView(this[e(220)][e(198)])[e(282)](0,s),this[e(220)][e(206)](t[e(220)],4)}}const Zh=el;function tl(){const t=["9AFbfCN","m_bits","m_data","length","1583096eKsRYi","5983580mIIOLx","8264IHStYX","GetSE","8UvQzNZ","4350415hiyjCK","m_byte","m_zeros","6062wksezk","m_len","6qEhCcz","6064982DgwCwq","m_idx","GetWord","GetUE","303767YnYTZl","GetBit","GetBYTE","2873841fzoJMg"];return(tl=function(){return t})()}function el(t,e){const s=tl();return(el=function(t,e){return s[t-=251]})(t,e)}!function(t){const e=el,s=t();for(;;)try{if(724386===-parseInt(e(261))/1*(-parseInt(e(273))/2)+-parseInt(e(264))/3+parseInt(e(269))/4+-parseInt(e(251))/5*(parseInt(e(256))/6)+parseInt(e(254))/7*(parseInt(e(271))/8)+-parseInt(e(265))/9*(-parseInt(e(270))/10)+-parseInt(e(257))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(tl);Zh(263),Zh(262),Zh(259),Zh(272);const sl=il;function il(t,e){const s=rl();return(il=function(t,e){return s[t-=370]})(t,e)}!function(t){const e=il,s=t();for(;;)try{if(995004===parseInt(e(372))/1+-parseInt(e(387))/2*(-parseInt(e(383))/3)+parseInt(e(385))/4+-parseInt(e(384))/5+parseInt(e(381))/6+-parseInt(e(371))/7+parseInt(e(374))/8*(-parseInt(e(388))/9))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(rl);sl(375),sl(380);function rl(){const t=["GetUE","byteLength","GetWord","warn","parseSPS","4378704eswZCt","SPSParser sps_max_sub_layers_minus1 > 6","9HCHLDt","3870890gGpsaN","2701116gZROqV","SPSParser chroma_format_idc > 3","623806ikOIqg","9quUYri","SPSParser bit_depth_luma_minus8 != bit_depth_chroma_minus8","4621715kumwej","733011Irqrfp","SPSParser sps_seq_parameter_set_id > 15","5154848elTbJl","_ebsp2rbsp"];return(rl=function(){return t})()}!function(t){const e=al,s=t();for(;;)try{if(332130===parseInt(e(436))/1+-parseInt(e(447))/2*(-parseInt(e(441))/3)+-parseInt(e(458))/4*(-parseInt(e(456))/5)+-parseInt(e(435))/6+-parseInt(e(453))/7+-parseInt(e(443))/8+parseInt(e(454))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(hl);const nl=t=>{const e=al;let s=t,i=s[e(433)],r=new Uint8Array(i),n=0;for(let t=0;t<i;t++)t>=2&&3===s[t]&&0===s[t-1]&&0===s[t-2]||(r[n]=s[t],n++);return new Uint8Array(r[e(446)],0,n)},ol=t=>{const e=al;switch(t){case 0:return e(455);case 1:return e(434);case 2:return"4:2:2";case 3:return e(440);default:return e(449)}};function al(t,e){const s=hl();return(al=function(t,e){return s[t-=433]})(t,e)}function hl(){const t=["6055119coGMMs","4:0:0","248285FtnBxt","readBool","4ExUkml","destroy","byteLength","4:2:0","999900wzaHCG","213502AmJcLz","hvc1.",".1.L","push","4:4:4","6MMUvnK","min","4700064rUPUCv",".B0","readSEG","buffer","402544jqlfrr","readUEG","Unknown","toFixed","readBits","readByte","1765442OzoCLU"];return(hl=function(){return t})()}const ll=dl;function cl(){const t=[".B0","2756DqNKzo",".1.L","parsePPS","12KbrGws","min","7328auXwnu","Main10","Rext","hvc1.","258276GhZwAJ","29228AKaLEu","405TeExae","2lnkrLb","132LJdIXW","readUEG","693020wtaRHP","toFixed","4:2:2","getChromaFormatString","byteLength","MainSP","1561617FITWGV","destroy","buffer","readBits","4:4:4","getLevelString","9729WhECIl","readSEG","4:2:0","Main","Unknown","getProfileString","3221659FFfdiu","4:0:0","_ebsp2rbsp","parseSPS","readByte","readBool","1623831llHzOo","parseVPS","push"];return(cl=function(){return t})()}function dl(t,e){const s=cl();return(dl=function(t,e){return s[t-=288]})(t,e)}!function(t){const e=dl,s=t();for(;;)try{if(925293===-parseInt(e(326))/1+-parseInt(e(299))/2*(parseInt(e(308))/3)+parseInt(e(297))/4*(-parseInt(e(298))/5)+parseInt(e(290))/6*(parseInt(e(320))/7)+parseInt(e(292))/8*(-parseInt(e(314))/9)+parseInt(e(302))/10*(-parseInt(e(300))/11)+parseInt(e(296))/12*(parseInt(e(330))/13))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(cl);class ul{static _ebsp2rbsp(t){const e=dl;let s=t,i=s[e(306)],r=new Uint8Array(i),n=0;for(let t=0;t<i;t++)t>=2&&3===s[t]&&0===s[t-1]&&0===s[t-2]||(r[n]=s[t],n++);return new Uint8Array(r[e(310)],0,n)}static[ll(327)](t){const e=ll;let s=ul._ebsp2rbsp(t),i=new Se(s);return i[e(324)](),i[e(324)](),i[e(311)](4),i[e(311)](2),i.readBits(6),{num_temporal_layers:i[e(311)](3)+1,temporal_id_nested:i[e(325)]()}}static[ll(323)](t){const e=ll;let s=ul[e(322)](t),i=new Se(s);i[e(324)](),i[e(324)]();let r=0,n=0,o=0,a=0;i[e(311)](4);let h=i[e(311)](3);i.readBool();let l=i[e(311)](2),c=i.readBool(),d=i[e(311)](5),u=i[e(324)](),p=i[e(324)](),f=i[e(324)](),m=i[e(324)](),g=i[e(324)](),y=i.readByte(),A=i[e(324)](),b=i[e(324)](),v=i[e(324)](),S=i[e(324)](),E=i[e(324)](),w=[],T=[];for(let t=0;t<h;t++)w[e(328)](i[e(325)]()),T[e(328)](i.readBool());if(h>0)for(let t=h;t<8;t++)i[e(311)](2);for(let t=0;t<h;t++)w[t]&&(i[e(324)](),i[e(324)](),i[e(324)](),i[e(324)](),i[e(324)](),i.readByte(),i.readByte(),i[e(324)](),i[e(324)](),i[e(324)](),i.readByte()),T[t]&&i[e(324)]();i[e(301)]();let I=i[e(301)]();3==I&&i[e(311)](1);let k=i.readUEG(),_=i[e(301)]();i[e(325)]()&&(r+=i[e(301)](),n+=i[e(301)](),o+=i[e(301)](),a+=i[e(301)]());let C=i[e(301)](),D=i[e(301)](),L=i.readUEG();for(let t=i[e(325)]()?0:h;t<=h;t++)i[e(301)](),i[e(301)](),i[e(301)]();if(i[e(301)](),i[e(301)](),i[e(301)](),i[e(301)](),i[e(301)](),i[e(301)](),i[e(325)]()){if(i[e(325)]())for(let t=0;t<4;t++)for(let s=0;s<(3===t?2:6);s++){if(i[e(325)]()){let s=Math[e(291)](64,1<<4+(t<<1));t>1&&i[e(315)]();for(let t=0;t<s;t++)i[e(315)]()}else i[e(301)]()}}i[e(325)](),i[e(325)](),i[e(325)]()&&(i.readByte(),i[e(301)](),i.readUEG(),i.readBool());let R=i[e(301)](),P=0;for(let t=0;t<R;t++){let s=!1;if(0!==t&&(s=i[e(325)]()),s){t===R&&i[e(301)](),i.readBool(),i[e(301)]();let s=0;for(let t=0;t<=P;t++){let t=i[e(325)](),r=!1;!t&&(r=i.readBool()),(t||r)&&s++}P=s}else{let t=i[e(301)](),s=i.readUEG();P=t+s;for(let s=0;s<t;s++)i[e(301)](),i[e(325)]();for(let t=0;t<s;t++)i[e(301)](),i.readBool()}}if(i[e(325)]()){let t=i.readUEG();for(let s=0;s<t;s++){for(let t=0;t<L+4;t++)i[e(311)](1);i[e(311)](1)}}let x=!1,M=0,B=1,F=1,U=!1,O=1,N=1;if(i.readBool(),i[e(325)](),i[e(325)]()){if(i[e(325)]()){let t=i[e(324)]();t>0&&t<=16?(B=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2][t-1],F=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1][t-1]):255===t&&(B=i[e(311)](16),F=i.readBits(16))}if(i[e(325)]()&&i.readBool(),i[e(325)]()){i[e(311)](3),i[e(325)](),i.readBool()&&(i[e(324)](),i[e(324)](),i[e(324)]())}if(i.readBool()&&(i[e(301)](),i[e(301)]()),i.readBool(),i[e(325)](),i[e(325)](),x=i[e(325)](),x&&(i.readUEG(),i[e(301)](),i[e(301)](),i[e(301)]()),i.readBool()){if(O=i[e(311)](32),N=i.readBits(32),i[e(325)]()&&i[e(301)](),i.readBool()){let t=!1,s=!1,r=!1;t=i.readBool(),s=i.readBool(),(t||s)&&(r=i[e(325)](),r&&(i[e(324)](),i.readBits(5),i[e(325)](),i[e(311)](5)),i[e(311)](4),i[e(311)](4),r&&i[e(311)](4),i[e(311)](5),i[e(311)](5),i[e(311)](5));for(let n=0;n<=h;n++){let n=i[e(325)]();U=n;let o=!0,a=1;!n&&(o=i[e(325)]());let h=!1;if(o?i[e(301)]():h=i[e(325)](),!h&&(a=i[e(301)]()+1),t){for(let t=0;t<a;t++)i[e(301)](),i.readUEG(),r&&(i[e(301)](),i.readUEG());i[e(325)]()}if(s){for(let t=0;t<a;t++)i[e(301)](),i[e(301)](),r&&(i[e(301)](),i.readUEG());i.readBool()}}}}i[e(325)]()&&(i[e(325)](),i.readBool(),i[e(325)](),M=i[e(301)](),i.readUEG(),i[e(301)](),i.readUEG(),i.readUEG())}i.readBool();let V=e(295)+d+e(288)+E+e(329),j=k-(r+n)*(1===I||2===I?2:1),W=_-(o+a)*(1===I?2:1),G=1;return 1!==B&&1!==F&&(G=B/F),i[e(309)](),i=null,{codec_mimetype:V,profile_string:ul.getProfileString(d),level_string:ul[e(313)](E),profile_idc:d,bit_depth:C+8,ref_frames:1,chroma_format:I,chroma_format_string:ul[e(305)](I),general_level_idc:E,general_profile_space:l,general_tier_flag:c,general_profile_idc:d,general_profile_compatibility_flags_1:u,general_profile_compatibility_flags_2:p,general_profile_compatibility_flags_3:f,general_profile_compatibility_flags_4:m,general_constraint_indicator_flags_1:g,general_constraint_indicator_flags_2:y,general_constraint_indicator_flags_3:A,general_constraint_indicator_flags_4:b,general_constraint_indicator_flags_5:v,general_constraint_indicator_flags_6:S,min_spatial_segmentation_idc:M,constant_frame_rate:0,chroma_format_idc:I,bit_depth_luma_minus8:C,bit_depth_chroma_minus8:D,frame_rate:{fixed:U,fps:N/O,fps_den:O,fps_num:N},sar_ratio:{width:B,height:F},codec_size:{width:j,height:W},present_size:{width:j*G,height:W}}}static[ll(289)](t){const e=ll;let s=ul[e(322)](t),i=new Se(s);i[e(324)](),i[e(324)](),i[e(301)](),i[e(301)](),i[e(325)](),i[e(325)](),i[e(311)](3),i[e(325)](),i[e(325)](),i[e(301)](),i.readUEG(),i[e(315)](),i[e(325)](),i[e(325)](),i[e(325)]()&&i[e(301)](),i[e(315)](),i[e(315)](),i[e(325)](),i[e(325)](),i[e(325)](),i[e(325)]();let r=i.readBool(),n=i[e(325)](),o=1;return n&&r?o=0:n?o=3:r&&(o=2),{parallelismType:o}}static getChromaFormatString(t){const e=ll;switch(t){case 0:return e(321);case 1:return e(316);case 2:return e(304);case 3:return e(312);default:return e(318)}}static[ll(319)](t){const e=ll;switch(t){case 1:return e(317);case 2:return e(293);case 3:return e(307);case 4:return e(294);case 9:return"SCC";default:return e(318)}}static[ll(313)](t){return(t/30)[ll(303)](1)}}function pl(t,e){const s=ml();return(pl=function(t,e){return s[t-=184]})(t,e)}const fl=pl;function ml(){const t=["level","sub_layer_profile_present_flag","general_profile_compatibility_flags_3","sub_layer_interlaced_source_flag","JbPro[xxx][❌❌❌][parseHEVCDecoderConfigurationRecord] Invalid, lack of data! ","h265","pps","codec_size","presentWidth","subarray","chroma_format_idc","parallelismType","general_tier_flag","sps_video_parameter_set_id","min_spatial_segmentation_idc","constant_frame_rate","sps","length","sub_layer_non_packed_constraint_flag","pic_width_in_luma_samples","bit_depth_chroma_minus8","fps_num","bitDepthLumaMinus8","configurationVersion","parseSPS","profile_compatibility_flags","num_temporal_layers","readBits","chromaFormat","conf_win_top_offset","push","sar_ratio","general_profile_idc","conf_win_right_offset"," < 23","setUint32","frame_rate","1623xorzrx","slice","setUint8","general_interlaced_source_flag","conf_win_left_offset","3179IpOPbF","10644qnQGcs","165VByqcP","sub_layer_profile_space","hvcc","chromaFormatIdc","look","presentHeight","sub_layer_level_idc","bit_depth","generalProfileIdc","general_constraint_indicator_flags_6","max","from","fps_den","JbPro[xxx][❌❌❌][parseHEVCDecoderConfigurationRecord] invalid version ","6wPUQcK","sei","JbPro[xxx][❌❌❌][parseHEVCDecoderConfigurationRecord] invalid HEVC profile ","hev1.1.6.L93.B0","generalProfileSpace","findNextStartCodeOffset","general_constraint_indicator_flags","generalProfileCompatibilityFlags",", correct to 1","assign","getUint16","conf_win_bottom_offset","level_string","readUEG","88FqIXXp","15588NkSkZk","arrayBuffer.length ","error","sub_layer_frame_only_constraint_flag","refSampleDuration","profile_idc","separate_colour_plane_flag",", correct to Main Profile (1)","timescale","data","fixed","general_profile_compatibility_flags_2",", valid hevc profile is Main Profile (1), Main 10 Profile (2),Main Still Picture Profile (3)","correctionConfigurationVersion","sub_layer_progressive_source_flag"," < 22","read_golomb","codec","parseHEVCDecoderVPSAndSPSAndPPS and vpsTag is ","read","sarRatio","readNextNaluPayload","JbPro[xxx][✅✅✅][parseHEVCDecoderConfigurationRecord] invalid HEVC profile ","2820517akXImg","codecHeight","sub_layer_level_present_flag","psps","general_profile_compatibility_flags","general_profile_compatibility_flags_4","codecWidth","parseHEVCDecoderConfigurationRecord$2","setInt16","eofFlag","sub_layer_profile_compatibility_flag","width","general_constraint_indicator_flags_5","tier_flag","2062296PUQRFz","vps","parseHEVCDecoderVPSAndSPSAndPPS and sps tag is ","general_constraint_indicator_flags_4","profile_string","height","generalLevelIdc","Could not find H265 startcode until payload end!","numTemporalLayers","lengthSizeMinusOne","sub_layer_profile_idc","set","buffer","4057083qmxFbW","sub_layer_tier_flag","bitDepth","correctionConfigurationProfileIndication","JbPro[xxx][✅✅✅][parseHEVCDecoderConfigurationRecord] invalid version ","temporalIdNested","present_size","log","type","profile_space",", valid version is 1 or 0","general_constraint_indicator_flags_1","byteLength"," and naluLengthSize is ","pic_height_in_luma_samples","profile_tier_level","generalTierFlag","337167kJXand","general_frame_only_constraint_flag","sps_temporal_id_nesting_flag","general_profile_space","getUint8","sps_max_sub_layers_minus1","general_constraint_indicator_flags_3","warn","chroma_format","10pxJxAU","readUByte","frameRate","profile","parseHEVCDecoderConfigurationRecord$3","currentStartcodeOffset"];return(ml=function(){return t})()}function gl(t,e={}){const s=pl,i=t;if(i[s(313)]<22)return console[s(216)](s(300)+i.length+s(229)),{};let r={codecWidth:0,codecHeight:0,videoType:Et[s(301)],timescale:1e3},n=function(){const t=s;let e=new ArrayBuffer(2);return new DataView(e)[t(245)](0,256,!0),256===new Int16Array(e)[0]}(),o=new DataView(i[s(263)]),a=o[s(285)](0),h=31&o[s(285)](1);if(1!==a&&0!==a){if(!e[s(227)])return console[s(216)](s(198)+a+s(274)),{};{console[s(271)](s(268)+a+s(207));let t=252&o[s(285)](0)|1;o[s(335)](0,t)}}if(0===h){if(!e[s(267)])return console[s(216)](s(201)+h+s(226)),{};{console[s(271)](s(236)+h+s(221));let t=224&o[s(285)](1)|1;o.setUint8(1,t)}}let l=1+(3&o[s(285)](21));if(3!==l&&4!==l)return console[s(216)]("JbPro[xxx][❌❌❌][parseHEVCDecoderConfigurationRecord], invalid Strange NaluLengthSizeMinusOne: "+(l-1)+s(277)+l+" ,"),{};let c=o.getUint8(22);for(let t=0,e=23;t<c;t++){let t=63&o.getUint8(e+0),a=o.getUint16(e+1,!n);e+=3;for(let h=0;h<a;h++){let a=o[s(209)](e+0,!n);if(0===h)if(33===t){e+=2;let t=new Uint8Array(i[s(263)],e,a),n=ul[s(320)](t);r.codecWidth=n[s(303)][s(248)],r[s(238)]=n[s(303)][s(256)],r[s(304)]=n[s(270)][s(248)],r[s(190)]=n[s(270)][s(256)],r[s(293)]=n[s(255)],r[s(296)]=n[s(211)],r[s(266)]=n.bit_depth,r.chromaFormat=n[s(289)],r[s(234)]=n[s(327)],r[s(292)]=n.frame_rate,(!1===n[s(332)][s(224)]||0===n.frame_rate[s(317)]||0===n.frame_rate[s(197)])&&(r[s(292)]={fixed:!0,fps:23.976,fps_num:23976,fps_den:1e3});let o=r[s(292)][s(197)],h=r[s(292)][s(317)];r[s(218)]=r[s(222)]*(o/h),r[s(231)]=n.codec_mimetype,e+=a}else e+=2+a;else e+=2+a}}return r[s(187)]=new Uint8Array(i),r}function yl({vps:t,pps:e,sps:s}){const i=pl;let r={configurationVersion:1};const n=(t=>{const e=al;let s=nl(t),i=new Se(s);return i[e(452)](),i.readByte(),i.readBits(4),i.readBits(2),i[e(451)](6),{num_temporal_layers:i[e(451)](3)+1,temporal_id_nested:i[e(457)]()}})(t),o=(t=>{const e=al;let s=nl(t),i=new Se(s);i.readByte(),i[e(452)]();let r=0,n=0,o=0,a=0;i.readBits(4);let h=i[e(451)](3);i[e(457)]();let l=i[e(451)](2),c=i[e(457)](),d=i[e(451)](5),u=i[e(452)](),p=i[e(452)](),f=i[e(452)](),m=i.readByte(),g=i[e(452)](),y=i[e(452)](),A=i[e(452)](),b=i.readByte(),v=i[e(452)](),S=i[e(452)](),E=i.readByte(),w=[],T=[];for(let t=0;t<h;t++)w[e(439)](i[e(457)]()),T[e(439)](i[e(457)]());if(h>0)for(let t=h;t<8;t++)i[e(451)](2);for(let t=0;t<h;t++)w[t]&&(i[e(452)](),i[e(452)](),i[e(452)](),i[e(452)](),i[e(452)](),i[e(452)](),i[e(452)](),i[e(452)](),i[e(452)](),i[e(452)](),i[e(452)]()),w[t]&&i[e(452)]();i[e(448)]();let I=i[e(448)]();3==I&&i.readBits(1);let k=i.readUEG(),_=i[e(448)]();i[e(457)]()&&(r+=i.readUEG(),n+=i[e(448)](),o+=i[e(448)](),a+=i[e(448)]());let C=i[e(448)](),D=i[e(448)](),L=i[e(448)]();for(let t=i[e(457)]()?0:h;t<=h;t++)i[e(448)](),i[e(448)](),i[e(448)]();if(i[e(448)](),i[e(448)](),i[e(448)](),i.readUEG(),i[e(448)](),i[e(448)](),i.readBool()&&i[e(457)]())for(let t=0;t<4;t++)for(let s=0;s<(3===t?2:6);s++)if(i[e(457)]()){let s=Math[e(442)](64,1<<4+(t<<1));t>1&&i[e(445)]();for(let t=0;t<s;t++)i[e(445)]()}else i.readUEG();i[e(457)](),i[e(457)](),i[e(457)]()&&(i[e(452)](),i.readUEG(),i[e(448)](),i[e(457)]());let R=i.readUEG(),P=0;for(let t=0;t<R;t++){let s=!1;if(0!==t&&(s=i[e(457)]()),s){t===R&&i[e(448)](),i[e(457)](),i.readUEG();let s=0;for(let t=0;t<=P;t++){let t=i.readBool(),r=!1;!t&&(r=i[e(457)]()),(t||r)&&s++}P=s}else{let t=i[e(448)](),s=i[e(448)]();P=t+s;for(let s=0;s<t;s++)i[e(448)](),i.readBool();for(let t=0;t<s;t++)i.readUEG(),i[e(457)]()}}if(i[e(457)]()){let t=i[e(448)]();for(let s=0;s<t;s++){for(let t=0;t<L+4;t++)i[e(451)](1);i[e(451)](1)}}let x=!1,M=0,B=1,F=1,U=!1,O=1,N=1;if(i[e(457)](),i[e(457)](),i[e(457)]()){if(i.readBool()){let t=i[e(452)]();t>0&&t<16?(B=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2][t-1],F=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1][t-1]):255===t&&(B=i.readBits(16),F=i[e(451)](16))}if(i[e(457)]()&&i[e(457)](),i[e(457)]()&&(i[e(451)](3),i[e(457)](),i.readBool()&&(i[e(452)](),i[e(452)](),i[e(452)]())),i[e(457)]()&&(i[e(448)](),i[e(448)]()),i[e(457)](),i[e(457)](),i[e(457)](),x=i[e(457)](),x&&(r+=i[e(448)](),n+=i[e(448)](),o+=i.readUEG(),a+=i[e(448)]()),i[e(457)]()&&(O=i[e(451)](32),N=i[e(451)](32),i[e(457)]()&&(i[e(448)](),i[e(457)]()))){let t=!1,s=!1,r=!1;t=i[e(457)](),s=i[e(457)](),(t||s)&&(r=i[e(457)](),r&&(i[e(452)](),i[e(451)](5),i[e(457)](),i[e(451)](5)),i[e(451)](4),i[e(451)](4),r&&i[e(451)](4),i[e(451)](5),i[e(451)](5),i[e(451)](5));for(let n=0;n<=h;n++){let n=i[e(457)]();U=n;let o=!1,a=1;!n&&(o=i.readBool());let h=!1;if(o?i[e(445)]():h=i[e(457)](),!h&&(cpbcnt=i[e(448)]()+1),t)for(let t=0;t<a;t++)i[e(448)](),i[e(448)](),r&&(i.readUEG(),i[e(448)]());if(s)for(let t=0;t<a;t++)i[e(448)](),i.readUEG(),r&&(i[e(448)](),i[e(448)]())}}i[e(457)]()&&(i[e(457)](),i[e(457)](),i.readBool(),M=i[e(448)](),i[e(448)](),i[e(448)](),i.readUEG(),i[e(448)]())}i[e(457)]();let V=e(437)+d+e(438)+E+e(444),j=k,W=_,G=1;return 1!==B&&1!==F&&(G=B/F),i[e(459)](),i=null,{codec_mimetype:V,level_string:(z=E,(z/30)[al(450)](1)),profile_idc:d,bit_depth:C+8,ref_frames:1,chroma_format:I,chroma_format_string:ol(I),general_level_idc:E,general_profile_space:l,general_tier_flag:c,general_profile_idc:d,general_profile_compatibility_flags_1:u,general_profile_compatibility_flags_2:p,general_profile_compatibility_flags_3:f,general_profile_compatibility_flags_4:m,general_constraint_indicator_flags_1:g,general_constraint_indicator_flags_2:y,general_constraint_indicator_flags_3:A,general_constraint_indicator_flags_4:b,general_constraint_indicator_flags_5:v,general_constraint_indicator_flags_6:S,min_spatial_segmentation_idc:M,constant_frame_rate:0,chroma_format_idc:I,bit_depth_luma_minus8:C,bit_depth_chroma_minus8:D,frame_rate:{fixed:U,fps:N/O,fps_den:O,fps_num:N},sar_ratio:{width:B,height:F},codec_size:{width:j,height:W},present_size:{width:j*G,height:W}};var z})(s),a=(t=>{const e=al;let s=nl(t),i=new Se(s);i[e(452)](),i[e(452)](),i[e(448)](),i[e(448)](),i[e(457)](),i[e(457)](),i[e(451)](3),i[e(457)](),i.readBool(),i[e(448)](),i.readUEG(),i[e(445)](),i.readBool(),i[e(457)](),i[e(457)]()&&i[e(448)](),i[e(445)](),i[e(445)](),i[e(457)](),i[e(457)](),i.readBool(),i[e(457)]();let r=i[e(457)](),n=i[e(457)](),o=1;return n&&r?o=0:n?o=3:r&&(o=2),{parallelismType:o}})(e);r=Object[i(208)](r,n,o,a);let h=23+(5+t[i(276)])+(5+s[i(276)])+(5+e[i(276)]),l=new Uint8Array(h);l[0]=1,l[1]=(3&r[i(284)])<<6|(r.general_tier_flag?1:0)<<5|31&r[i(328)],l[2]=r.general_profile_compatibility_flags_1||0,l[3]=r[i(225)]||0,l[4]=r[i(298)]||0,l[5]=r[i(242)]||0,l[6]=r[i(275)]||0,l[7]=r.general_constraint_indicator_flags_2||0,l[8]=r[i(287)]||0,l[9]=r[i(254)]||0,l[10]=r[i(249)]||0,l[11]=r[i(194)]||0,l[12]=60,l[13]=240|(3840&r[i(310)])>>8,l[14]=255&r.min_spatial_segmentation_idc,l[15]=252|3&r[i(307)],l[16]=252|3&r[i(306)],l[17]=248|7&r.bit_depth_luma_minus8,l[18]=248|7&r[i(316)],l[19]=0,l[20]=0,l[21]=(3&r[i(311)])<<6|(7&r[i(322)])<<3|(r.temporal_id_nested?1:0)<<2|3,l[22]=3,l[23]=128|at[i(252)],l[24]=0,l[25]=1,l[26]=(65280&t[i(276)])>>8,l[27]=255&t[i(276)],l.set(t,28),l[23+(5+t[i(276)])+0]=128|at[i(312)],l[23+(5+t.byteLength)+1]=0,l[23+(5+t[i(276)])+2]=1,l[23+(5+t[i(276)])+3]=(65280&s[i(276)])>>8,l[23+(5+t[i(276)])+4]=255&s.byteLength,l[i(262)](s,23+(5+t[i(276)])+5),l[23+(5+t[i(276)]+5+s.byteLength)+0]=128|at.pps,l[23+(5+t[i(276)]+5+s[i(276)])+1]=0,l[23+(5+t.byteLength+5+s.byteLength)+2]=1,l[23+(5+t[i(276)]+5+s[i(276)])+3]=(65280&e[i(276)])>>8,l[23+(5+t[i(276)]+5+s[i(276)])+4]=255&e[i(276)],l[i(262)](e,23+(5+t.byteLength+5+s[i(276)])+5);const c=[28,0,0,0,0],d=new Uint8Array(c.length+l[i(276)]);return d.set(c,0),d[i(262)](l,c[i(313)]),d}function Al(t,e){const s=pl;let i=[];i[0]=e?28:44,i[1]=1,i[2]=0,i[3]=0,i[4]=0;const r=new Uint8Array(i[s(313)]+t[s(276)]);return r[s(262)](i,0),r[s(262)](t,i[s(313)]),r}function bl(t){return(126&t[0])>>1}function vl(t){return!((e=t)>=32&&e<=40);var e}function Sl(t){return t>=16&&t<=21}!function(t){const e=pl,s=t();for(;;)try{if(265990===-parseInt(e(333))/1*(-parseInt(e(213))/2)+parseInt(e(281))/3+-parseInt(e(214))/4*(-parseInt(e(185))/5)+parseInt(e(199))/6*(parseInt(e(237))/7)+parseInt(e(251))/8+parseInt(e(264))/9*(-parseInt(e(290))/10)+-parseInt(e(338))/11*(parseInt(e(184))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(ml);class El{constructor(t){const e=pl;this.data=t,this[e(246)]=!1,this.currentStartcodeOffset=this.findNextStartCodeOffset(0),this[e(246)]&&console.error(e(258))}[fl(204)](t){const e=fl;let s=t,i=this[e(223)];for(;;){if(s+3>=i[e(276)])return this[e(246)]=!0,i[e(276)];let t=i[s+0]<<24|i[s+1]<<16|i[s+2]<<8|i[s+3],r=i[s+0]<<16|i[s+1]<<8|i[s+2];if(1===t||1===r)return s;s++}}[fl(235)](){const t=fl;let e=this.data,s=null;for(;null==s&&!this[t(246)];){let i=this[t(295)];i+=1===(e[i]<<24|e[i+1]<<16|e[i+2]<<8|e[i+3])?4:3;let r=e[i]>>1&63,n=(128&e[i])>>>7,o=this[t(204)](i);this[t(295)]=o,0===n&&(s={type:r,data:e[t(305)](i,o)})}return s}}class wl{constructor(t){const e=fl;let s=t[e(223)][e(276)];this[e(272)]=t[e(272)],this[e(223)]=new Uint8Array(4+s),new DataView(this.data[e(263)])[e(331)](0,s),this[e(223)][e(262)](t.data,4)}}const Tl=Il;function Il(t,e){const s=kl();return(Il=function(t,e){return s[t-=216]})(t,e)}function kl(){const t=["depth","12GuiHVk","arrayBuffer too short","isWasmMp4","getToTalByteLength","h265","toString","channelCount","4163886OEfOac","videoType","_isRecording","presentWidth","_recordingTimestamp","sps","codecHeight","stopRecordAndSave","startRecord","codecWidth","metaInfo","handleAddAudioTrack","7520050hczstg","presentHeight","startRecordingInterval","config","sampleRate","258468HliWnI","timescale","vps","recordingInterval","codecId","recording","handleAddTrack","575CrdVGE","codec","player","avcc","recordTime","extraData","slice","originalCodec","audioMetaInfo","initAudioAacExtraData","TAG_NAME","414268GDKXpG","_isDestroyed","7422rgJOlo","h264","initMetaData","pps","128uyySai","fileName","audioCodeId","AAC","setFileName","622492YnzKFz","handleAddNaluTrack","refSampleDuration","913401LAnKBB","_reset"];return(kl=function(){return t})()}!function(t){const e=Il,s=t();for(;;)try{if(534803===parseInt(e(273))/1+-parseInt(e(270))/2+-parseInt(e(217))/3*(-parseInt(e(259))/4)+-parseInt(e(248))/5*(-parseInt(e(261))/6)+-parseInt(e(241))/7*(-parseInt(e(265))/8)+-parseInt(e(224))/9+-parseInt(e(236))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(kl);class _l extends h{constructor(t){const e=Il;super(),this[e(258)]="recorderCommon",this[e(250)]=t,this[e(266)]="",this[e(226)]=!1,this[e(228)]=0,this.recordingInterval=null,this.sps=null,this[e(264)]=null,this[e(243)]=null,this.codecId=null,this[e(267)]=null,this[e(234)]={codecWidth:0,codecHeight:0,presentWidth:0,presentHeight:0,refSampleDuration:0,timescale:1e3,avcc:null,videoType:""},this[e(256)]={timescale:1e3,sampleRate:0,refSampleDuration:0,channelCount:0,codec:"",originalCodec:"",audioType:"",extraData:new Uint8Array(0)},this[e(260)]=!1}destroy(){const t=Il;this[t(260)]=!0,this[t(274)](),this[t(229)]=null,this[t(264)]=null,this[t(243)]=null,this[t(245)]=null,this.audioCodeId=null,this.metaInfo=null,this[t(256)]=null}get isH264(){const t=Il;return this[t(245)]===et[t(262)]}get isH265(){const t=Il;return this[t(245)]===et[t(221)]}[Tl(269)](t){this[Tl(266)]=t}get isRecording(){return this[Tl(226)]}get[Tl(246)](){return this._isRecording}get[Tl(252)](){return this[Tl(228)]}[Tl(232)](){}[Tl(271)](t,e,s,i){}[Tl(235)](t,e){}[Tl(247)](t){}[Tl(231)](){}[Tl(238)](){}[Tl(219)](){return!1}stopRecordingInterval(){const t=Tl;this[t(244)]&&(clearInterval(this[t(244)]),this[t(244)]=null)}[Tl(220)](){return 0}[Tl(274)](){const t=Tl;this.fileName="",this[t(226)]=!1,this[t(228)]=0,this.stopRecordingInterval()}[Tl(263)](t,e){const s=Tl;if(t.length<6)return void this[s(250)].debugLog(this[s(258)],s(263),s(218),t[s(222)]());let i;const r=t[s(254)](5);this[s(245)]=e,this.metaInfo[s(251)]=r;const n=this[s(250)].getCorrectionConfiguration();if(e===et[s(262)])i=Gh(r,n);else if(e===et[s(221)]){i=function(t){const e=pl;let s=23;const i=t[s];if((63&i)!==at.vps)return console[e(288)](e(232)+i),{};s+=2,s+=1;const r=t[s+1]|t[s]<<8;s+=2;const n=t.slice(s,s+r);s+=r;const o=t[s];if((63&o)!==at[e(312)])return console[e(288)](e(253)+o),{};s+=2,s+=1;const a=t[s+1]|t[s]<<8;s+=2;const h=t[e(334)](s,s+a);s+=a;const l=t[s];if((63&l)!==at[e(302)])return console[e(288)]("parseHEVCDecoderVPSAndSPSAndPPS and pps tag is "+l),{};s+=2,s+=1;const c=t[s+1]|t[s]<<8;s+=2;const d=t[e(334)](s,s+c),u=new Uint8Array([a>>>24&255,a>>>16&255,a>>>8&255,255&a]),p=new Uint8Array([c>>>24&255,c>>>16&255,c>>>8&255,255&c]),f=new Uint8Array([r>>>24&255,r>>>16&255,r>>>8&255,255&r]),m=new Uint8Array(a+4);m[e(262)](u,0),m[e(262)](h,4);const g=new Uint8Array(c+4);g[e(262)](p,0),g[e(262)](d,4);const y=new Uint8Array(r+4);return y[e(262)](f,0),y.set(n,4),{sps:m,pps:g,vps:y}}(r);const t=gl(r,n);i=Object.assign(i,t)}i&&(i.vps&&(this[s(243)]=i[s(243)]),i[s(264)]&&(this.pps=i[s(264)]),i[s(229)]&&(this[s(229)]=i.sps),i[s(227)]&&(this[s(234)][s(227)]=i[s(227)]),i[s(237)]&&(this[s(234)][s(237)]=i[s(237)]),i[s(233)]&&(this[s(234)][s(233)]=i[s(233)]),i[s(230)]&&(this[s(234)].codecHeight=i[s(230)]),i.timescale&&(this[s(234)][s(242)]=i[s(242)]),i.refSampleDuration&&(this[s(234)].refSampleDuration=i[s(272)]),i.videoType&&(this[s(234)].videoType=i[s(225)]))}initAudioMetaData(t,e){const s=Tl;this[s(267)]=e;const i=t[0]>>1&1;let r=null;e===it[s(268)]?(r=function(t){const e=Te;let s={},i=new Ve(t);return i[e(342)](16),s[e(352)]=je(i),s[e(369)]=We(i,s),s[e(355)]=i[e(342)](4),s[e(355)]<ze[e(344)]&&(s.channels=ze[s[e(355)]]),s.sbr=-1,s.ps=-1,(5==s[e(352)]||29==s.object_type)&&(29==s.object_type&&(s.ps=1),s[e(348)]=5,s[e(388)]=1,s[e(369)]=We(i,s),s[e(352)]=je(i)),{...s,channelCount:s[e(359)],sampleRate:s[e(369)]}}(t),r&&(r.channelCount&&(this.audioMetaInfo.channelCount=r[s(223)]),r[s(249)]&&(this.audioMetaInfo[s(249)]=r.codec),r[s(255)]&&(this[s(256)][s(255)]=r[s(255)]),r[s(239)]&&(this[s(256)].config=r[s(239)]),r[s(240)]&&(this[s(256)][s(240)]=r[s(240)]),this[s(256)][s(240)]&&this.audioMetaInfo[s(242)]&&(this[s(256)].refSampleDuration=1024/this.audioMetaInfo[s(240)]*this[s(256)][s(242)])),this[s(256)].depth=i?16:8,this[s(256)][s(253)]=t[s(254)](2)):this[s(256)][s(216)]=0===i?8:16}[Tl(257)](t){const e=Tl;this[e(256)][e(253)]=new Uint8Array(t)}}const Cl=Dl;function Dl(t,e){const s=Ll();return(Dl=function(t,e){return s[t-=282]})(t,e)}function Ll(){const t=["startRecord and hasAudio is ","record timestamp :","10jVQqUk","recordingTimestamp","onload","ondataavailable","35436iJlSRn","length","cues","createElement","bind","recordingInterval","supportVideoFrameCallbackHandle","metadataSize","videoFrameCallback() player is destroyed","height","initMetaData","recordEnd","video/webm;codecs=h264","startCanvasRender error","canvasElementCtx","recordMediaStreamAudioDestinationNode","createMediaStreamDestination","301974gzsxeK","debugError","video","setFileName","video/webm","startRecord error","canvas","isWebrtcH264","setInterval","use setInterval","stopRecordingInterval","572885mAUrwv","destroy","webrtc","disconnect","recordTime","totalByteLength","_stopSupportVideoFrameCallback","recordBlob","canvasElement","captureStream","gainNode","66fgaKsi","getBlob","save","$videoElement","startRecord and hasAudioStream is ","stopRecording","forEach","size","isStateSuspended","cancel recording","_startRecordingTimestamp","emitError","result","startRecordingInterval","startRecord and use local canvas render video and captureStream","9774981lbijsY","addTrack","decode","recorder","debugLog",", hasAudioStream is ","audio","9548myrRHB","use video frame callback","4buytwX","_startCanvasRender","isAliyunRtc","hasAudio","getAudioTracks","bound","RecorderRTC","readAsArrayBuffer","startRecord","slice","getToTalByteLength","player","getSeekableBlob","toString","TAG_NAME","download","can not create stream","_opt","_removeCanvasRender",", isStateSuspended is ","_initCanvasRender","startRecording","emit","_stopCanvasRender","enabled","clearRect","399wbiGmb","recordStart","webm","_isRecording","audioContext","_recordingTimestamp","useWCS","recordCreateError","recordWebMSupportSeek","startRecord and render type is canvas and use captureStream","metadatas","canvasRenderInterval","makeMetadataSeekable","2355729xSqevN","stream","videoStream","recording","cancelVideoFrameCallback","cancelRecord","_reset","videoFrameCallback","9448AGCwPF","mediaStreamAudioDestinationNode","blob","getType","RecordRTCLoader","getTotalDuration","width","init","start recording","mediaStream","stopRecordAndSave","duration","stop","fileName","then","4192520BgAkqt","requestVideoFrameCallback"];return(Ll=function(){return t})()}!function(t){const e=Dl,s=t();for(;;)try{if(717404===parseInt(e(358))/1*(parseInt(e(312))/2)+-parseInt(e(397))/3+parseInt(e(287))/4+parseInt(e(323))/5*(parseInt(e(334))/6)+-parseInt(e(384))/7*(-parseInt(e(405))/8)+parseInt(e(349))/9*(parseInt(e(291))/10)+parseInt(e(356))/11*(-parseInt(e(295))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Ll);class Rl extends _l{constructor(t){const e=Dl;super(t),this[e(372)]=e(409),this[e(328)]=0,this._startRecordingTimestamp=null,this[e(395)]=null,this[e(301)]=null,this[e(331)]=null,this[e(309)]=null,this.recordMediaStreamAudioDestinationNode=null,this[e(363)]={videoFrameCallback:this[e(404)][e(299)](this)},t[e(353)](e(364),e(412))}[Cl(324)](){const t=Cl;super.destroy(),this[t(403)](),this[t(363)]=null,this.player.debugLog("RecorderRTC","destroy")}[Cl(403)](){const t=Cl;super._reset(),this[t(381)](),this[t(329)](),this._removeCanvasRender(),this[t(310)]&&(this[t(369)][t(355)][t(333)][t(326)](this[t(310)]),this[t(310)][t(326)](),this[t(310)]=null),this.totalByteLength=0,this[t(344)]=null,this[t(352)]&&(this.recorder[t(324)](),this[t(352)]=null)}[Cl(370)](t){const e=new Th.Reader,s=new Th.Decoder,i=Th.tools,r=new FileReader;return new Promise((n,o)=>{const a=Dl;r[a(293)]=function(t){const r=a;s[r(351)](this[r(346)])[r(340)](function(t){e.read(t)}),e[r(284)]();const o=i[r(396)](e[r(394)],e[r(283)],e[r(297)]),h=this[r(346)][r(367)](e[r(302)]),l=new Blob([o,h],{type:r(316)});n(l)},r[a(365)](t)})}[Cl(366)](){const t=Cl,e={type:t(314),mimeType:t(307),timeSlice:1e3,onTimeStamp:e=>{const s=t;this[s(369)]&&this[s(369)][s(353)](s(364),s(290)+e),null===this[s(344)]&&(this._startRecordingTimestamp=e),this[s(389)]=(e-this[s(344)])/1e3},ondataavailable:e=>{const s=t;this[s(328)]+=e[s(341)],this.player&&this.player[s(353)](s(364),s(294),e[s(341)])},disableLogs:!this[t(369)][t(375)].debug};try{let s=null;if(this[t(369)].getRenderType()===A[t(318)])s=this.player[t(314)][t(337)][t(332)](25),this[t(369)][t(353)](this[t(372)],t(393));else if(this.player.video[t(414)])s=this[t(369)].video[t(414)],this[t(369)].debugLog(this[t(372)],"startRecord and video mediaStream");else{if(xi(this[t(359)]()))return void this[t(369)][t(345)](q[t(391)],t(308));this[t(369)].isOldHls()?s=this.canvasElement.captureStream(25):this.player[t(375)].useMSE?s=this[t(331)][t(332)](25):this.player[t(375)][t(390)]?s=this[t(331)].captureStream(25):this.player[t(319)]()?s=this[t(369)][t(325)][t(399)]:this[t(369)][t(360)]()&&(s=this[t(331)][t(332)](25)),this.player.debugLog(this[t(372)],t(348))}if(!s)return this.player[t(313)]("RecorderRTC","startRecord error and can not create stream"),void this[t(369)][t(345)](q.recordCreateError,t(374));{const i=this.player[t(355)]&&this[t(369)][t(375)][t(361)]&&this[t(369)][t(355)][t(361)],r=i&&this[t(369)][t(355)].mediaStreamAudioDestinationNode&&this.player[t(355)][t(406)][t(398)],n=i&&this[t(369)][t(355)][t(342)]();if(i&&!n){let e;if(r)e=this[t(369)][t(355)][t(406)][t(398)];else{const s=this[t(369)][t(355)][t(388)][t(311)]();this.player[t(355)][t(333)].connect(s),this[t(310)]=s,e=s.stream}if(this.player[t(353)](this[t(372)],t(338)+r),e[t(362)]()[t(296)]>0){const i=e[t(362)]()[0];i&&i[t(382)]&&s[t(350)](i)}}else this.player[t(353)](this.TAG_NAME,t(289)+i+t(354)+r+t(377)+n);this.recorder=Lh(s,e)}}catch(e){return this.player[t(313)](t(364),t(317),e[t(371)](),e),void this[t(369)][t(345)](q.recordCreateError,e[t(371)]())}this[t(352)]&&(this._isRecording=!0,this[t(369)][t(380)](q[t(400)],!0),this[t(352)][t(379)](),this[t(369)].debugLog(t(364),t(413)),this[t(369)][t(380)](q[t(385)]),this.startRecordingInterval())}[Cl(347)](){const t=Cl;this[t(322)](),this[t(300)]=window[t(320)](()=>{const e=t;this.player.emit(q[e(292)],this._recordingTimestamp)},1e3)}[Cl(282)](t=Z[Cl(373)],e){return new Promise((s,i)=>{const r=Dl;(!this[r(352)]||!this[r(387)])&&i("recorder is not ready"),e&&this[r(315)](e),this[r(352)].stopRecording(()=>{const e=r;this[e(369)][e(353)](e(364),"stop recording and totalDuration is "+this[e(410)]()+"s");const i=(this[e(285)]||os())+"."+f[e(386)];if(this[e(369)][e(375)][e(392)]){const r=this.recorder[e(335)]();this.getSeekableBlob(r)[e(286)](r=>{const n=e;t===Z[n(407)]?(s(r),this[n(369)][n(380)](q[n(330)],r)):(s(),Lh.invokeSaveAsDialog(r,i)),this[n(369)][n(380)](q[n(306)]),this._reset(),this[n(369)][n(380)](q[n(400)],!1)})}else{if(t===Z[e(407)]){const t=this[e(352)][e(335)]();s(t),this[e(369)][e(380)](q[e(330)],t)}else s(),this.recorder[e(336)](i);this[e(369)][e(380)](q[e(306)]),this._reset(),this[e(369)][e(380)](q[e(400)],!1)}})})}[Cl(402)](){return new Promise((t,e)=>{const s=Dl;if(this[s(369)][s(353)](this[s(372)],s(343)),!this[s(352)]||!this[s(387)])return t();this.recorder[s(339)](()=>{const e=s;this[e(403)](),this.player.emit(q[e(400)],!1),this[e(369)][e(380)](q.recordCancel),t()})})}[Cl(368)](){return this[Cl(328)]}[Cl(410)](){return this[Cl(327)]}[Cl(408)](){return f[Cl(386)]}[Cl(305)](){}[Cl(359)](){const t=Cl;return this[t(378)](),this[t(331)]?(ji()?(this[t(369)].debugLog(this.TAG_NAME,t(357)),this.supportVideoFrameCallbackHandle=this[t(369)][t(314)][t(337)][t(288)](this[t(363)][t(404)])):(this[t(369)][t(353)](this[t(372)],t(321)),this._stopCanvasRender(),this.canvasRenderInterval=setInterval(()=>{const e=t;this[e(309)]&&this.canvasElementCtx.drawImage(this[e(369)][e(314)].$videoElement,0,0,this[e(331)][e(411)],this[e(331)][e(304)])},40)),!0):(this[t(369)].debugError(this[t(372)],"canvasElement is null"),!1)}[Cl(378)](){const t=Cl,e=this[t(369)].getVideoInfo();!this.canvasElement&&e&&(this[t(331)]=document[t(298)]("canvas"),this[t(309)]=this[t(331)].getContext("2d"),e.width&&e[t(304)]&&(this[t(331)].width=e[t(411)],this[t(331)][t(304)]=e.height))}[Cl(376)](){const t=Cl;this[t(309)]&&(this[t(309)][t(383)](0,0,this[t(331)][t(411)],this[t(331)].height),this[t(309)]=null),this[t(331)]&&(this[t(331)][t(411)]=0,this[t(331)][t(304)]=0,this[t(331)]=null)}[Cl(381)](){const t=Cl;this.canvasRenderInterval&&(clearInterval(this.canvasRenderInterval),this[t(395)]=null)}[Cl(329)](){const t=Cl;this[t(301)]&&this[t(369)].video[t(337)]&&(this[t(369)].video.$videoElement[t(401)](this[t(301)]),this[t(301)]=null)}[Cl(404)](){const t=Cl;this._isDestroyed||(this[t(369)].isDestroyedOrClosed()?this[t(369)][t(353)](this.TAG_NAME,t(303)):(this.canvasElementCtx&&this[t(309)].drawImage(this[t(369)][t(314)].$videoElement,0,0,this[t(331)][t(411)],this.canvasElement.height),this[t(301)]=this[t(369)][t(314)][t(337)][t(288)](this.bound[t(404)])))}}function Pl(t,e){const s=xl();return(Pl=function(t,e){return s[t-=376]})(t,e)}function xl(){const t=["length","presentWidth","avcC","minf","presentHeight","stsc","pow","sdtp","call","charCodeAt","tkhd","trun","set","928272iYqRKT","HDLR_VIDEO","STCO","2417880FVsvcK","esds","1818365YMlLPn","stco","DREF","refSampleDuration","ftyp","3372152VgGFfV","data","size","sampleDelte","isKeyframe","samples","video","STSZ","HDLR_AUDIO","hvcC","2641184XWRJEQ","stts","STSC","mp3","type","dependsOn","isLeading","timescale","6gokIrx","hvc1","stss","isNonSync","isDependedOn","init","trak","types","sequenceNumber","sampleRate","edts","mdhd","hdlr","constants","avc1","SMHD","concat","codecWidth","audio","mvex","channelCount","399631Hprobg","push","FTYP","3Cguojw","moof","62474YPGppd","moov","codecHeight","mp4a","byteLength","trex","generateInitSegment","9BFxKwz","mvhd","free","stsd","slice","avcc","stsz","tfhd","tfdt","hasRedundancy","mdia","VMHD","hasOwnProperty","stbl","duration","dinf","STTS","box","mdat","num","chunkOffset","traf","cts",".mp3","mfhd"];return(xl=function(){return t})()}const Ml=Pl;!function(t){const e=Pl,s=t();for(;;)try{if(214004===parseInt(e(453))/1+parseInt(e(458))/2*(-parseInt(e(456))/3)+-parseInt(e(404))/4+parseInt(e(409))/5*(parseInt(e(432))/6)+parseInt(e(424))/7+-parseInt(e(414))/8*(parseInt(e(465))/9)+-parseInt(e(407))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(xl);class Bl{static[Ml(437)](){const t=Ml;Bl[t(439)]={avc1:[],avcC:[],hvc1:[],hvcC:[],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":[],free:[],edts:[],elst:[],stss:[]};for(let e in Bl[t(439)])Bl[t(439)][t(378)](e)&&(Bl[t(439)][e]=[e[t(400)](0),e[t(400)](1),e[t(400)](2),e[t(400)](3)]);let e=Bl.constants={};e.FTYP=new Uint8Array([105,115,111,109,0,0,2,0,105,115,111,109,105,115,111,50,97,118,99,49,109,112,52,49,0,0,0,0]),e.STSD_PREFIX=new Uint8Array([0,0,0,0,0,0,0,1]),e[t(382)]=new Uint8Array([0,0,0,0,0,0,0,0]),e[t(426)]=e[t(406)]=e.STTS,e[t(421)]=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),e.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]),e[t(422)]=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]),e[t(411)]=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),e[t(447)]=new Uint8Array([0,0,0,0,0,0,0,0]),e.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0])}static[Ml(383)](t){const e=Ml;let s=8,i=null,r=Array.prototype[e(469)][e(399)](arguments,1),n=r[e(391)];for(let t=0;t<n;t++)s+=r[t].byteLength;i=new Uint8Array(s),i[0]=s>>>24&255,i[1]=s>>>16&255,i[2]=s>>>8&255,i[3]=255&s,i[e(403)](t,4);let o=8;for(let t=0;t<n;t++)i.set(r[t],o),o+=r[t][e(462)];return i}static[Ml(464)](t,e,s){const i=Ml;let r=Bl[i(383)](Bl.types[i(413)],Bl.constants[i(455)]),n=Bl[i(383)](Bl.types[i(467)]),o=8,a=new Uint8Array;s+o>=Math[i(397)](2,32)-1?(o=16,a=new Uint8Array(s+o),a[i(403)](new Uint8Array([0,0,0,1]),0),a[i(403)](Bl[i(439)].mdat,4),a.set(new Uint8Array([s+8>>>56&255,s+8>>>48&255,s+8>>>40&255,s+8>>>32&255,s+8>>>24&255,s+8>>>16&255,s+8>>>8&255,s+8&255]),8)):(a=new Uint8Array(s+o),a[0]=s+8>>>24&255,a[1]=s+8>>>16&255,a[2]=s+8>>>8&255,a[3]=s+8&255,a.set(Bl.types[i(384)],4));for(let t=0;t<e[i(391)];t++){let s=e[t];s[i(380)]=s[i(412)]*s[i(440)];for(let t=0;t<s[i(440)];t++){let e=s.samples[t];e.chunkOffset=r.byteLength+n[i(462)]+o;let h=e[i(415)];a[i(403)](h,o),o+=h[i(462)]}}let h=Bl[i(459)](t,e),l=new Uint8Array(r[i(462)]+h[i(462)]+a[i(462)]+n[i(462)]);return l[i(403)](r,0),l[i(403)](n,r[i(462)]),l.set(a,r[i(462)]+n[i(462)]),l[i(403)](h,r.byteLength+a.byteLength+n.byteLength),l}static[Ml(459)](t,e){const s=Ml;let i=t[s(431)],r=t[s(380)],n=e.length,o=Bl[s(466)](i,r),a=new Uint8Array;for(let t=0;t<n;t++){let i=Bl[s(438)](e[t]),r=new Uint8Array(i.byteLength+a.byteLength);r[s(403)](a,0),r[s(403)](i,a.byteLength),a=new Uint8Array(r[s(462)]),a.set(r,0)}return Bl.box(Bl[s(439)][s(459)],o,a)}static mvhd(t,e){const s=Ml;return Bl[s(383)](Bl[s(439)][s(466)],new Uint8Array([0,0,0,0,206,186,253,168,206,186,253,168,t>>>24&255,t>>>16&255,t>>>8&255,255&t,e>>>24&255,e>>>16&255,e>>>8&255,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,0,0,0,3]))}static[Ml(438)](t){const e=Ml;return Bl[e(383)](Bl.types[e(438)],Bl[e(401)](t),Bl[e(376)](t))}static[Ml(401)](t){const e=Ml;let s=t.id,i=t[e(380)],r=t[e(392)],n=t[e(395)];return t[e(428)]===e(420)?Bl[e(383)](Bl[e(439)].tkhd,new Uint8Array([0,0,0,15,206,186,253,168,206,186,253,168,s>>>24&255,s>>>16&255,s>>>8&255,255&s,0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i,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,n>>>8&255,255&n,0,0])):t[e(428)]===e(450)?Bl[e(383)](Bl.types[e(401)],new Uint8Array([0,0,0,15,206,186,253,168,206,186,253,168,s>>>24&255,s>>>16&255,s>>>8&255,255&s,0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i,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,0,0,0,0,0,0,0,0])):void 0}static edts(t,e){const s=Ml;return Bl[s(383)](Bl[s(439)][s(442)],Bl.elst(t,e))}static elst(t,e){const s=Ml;let i=0;for(let r=0;r<e;r++)"video"===t[r].type&&(i+=t[r][s(380)]);let r=t[e][s(380)];return 0===i&&(i=t[e][s(412)]),Bl[s(383)](Bl[s(439)].elst,new Uint8Array([0,0,0,0,0,0,0,2,i>>>24&255,i>>>16&255,i>>>8&255,255&i,255,255,255,255,0,1,0,0,r>>>24&255,r>>>16&255,r>>>8&255,255&r,0,0,0,0,0,1,0,0]))}static[Ml(376)](t){const e=Ml;return Bl[e(383)](Bl[e(439)][e(376)],Bl.mdhd(t),Bl[e(444)](t),Bl[e(394)](t))}static[Ml(443)](t){const e=Ml;let s=t[e(431)]/t[e(412)],i=s*t[e(380)]/t[e(431)];return Bl.box(Bl[e(439)][e(443)],new Uint8Array([0,0,0,0,206,186,253,168,206,186,253,168,s>>>24&255,s>>>16&255,s>>>8&255,255&s,i>>>24&255,i>>>16&255,i>>>8&255,255&i,85,196,0,0]))}static[Ml(444)](t){const e=Ml;let s=null;return s=t[e(428)]===e(450)?Bl[e(445)][e(422)]:Bl[e(445)][e(405)],Bl.box(Bl[e(439)][e(444)],s)}static[Ml(394)](t){const e=Ml;let s=null;return s=t.type===e(450)?Bl.box(Bl[e(439)].smhd,Bl[e(445)][e(447)]):Bl[e(383)](Bl[e(439)].vmhd,Bl.constants[e(377)]),Bl[e(383)](Bl[e(439)].minf,s,Bl[e(381)](),Bl.stbl(t))}static[Ml(381)](){const t=Ml;return Bl[t(383)](Bl.types[t(381)],Bl[t(383)](Bl.types.dref,Bl[t(445)][t(411)]))}static[Ml(379)](t){const e=Ml;let s=t.samples,i=[{No:1,num:0,sampleDelte:1,chunkNo:1,duration:s[0][e(380)]}],r=[s[0].duration],n=s[e(391)];for(let t=0;t<n;t++)for(let n=0;n<i.length;n++)s[t][e(380)]===i[n][e(380)]?i[n][e(385)]++:r.indexOf(s[t].duration)<0&&(r[e(454)](s[t][e(380)]),i.push({No:2,num:0,sampleDelte:1,chunkNo:t+1,duration:s[t][e(380)]}));return Bl.box(Bl[e(439)][e(379)],Bl[e(468)](t),Bl[e(425)](i),Bl[e(434)](s),Bl[e(396)](i),Bl[e(471)](s),Bl[e(410)](i,s))}static stts(t){const e=Ml;let s=t.length,i=new Uint8Array([0,0,0,0,s>>>24&255,s>>>16&255,s>>>8&255,255&s]),r=i.byteLength,n=new Uint8Array(r+8*s);n[e(403)](i,0);for(let i=0;i<s;i++)n[e(403)](new Uint8Array([t[i][e(385)]>>>24&255,t[i][e(385)]>>>16&255,t[i][e(385)]>>>8&255,255&t[i][e(385)],t[i][e(417)]>>>24&255,t[i].sampleDelte>>>16&255,t[i][e(417)]>>>8&255,255&t[i][e(417)]]),r),r+=8;return Bl.box(Bl[e(439)].stts,n)}static[Ml(434)](t){const e=Ml;let s=[],i=t[e(391)];for(let r=0;r<i;r++)!0===t[r][e(418)]&&s.push(r+1);let r=s[e(391)],n=new Uint8Array([0,0,0,0,r>>>24&255,r>>>16&255,r>>>8&255,255&r]),o=n[e(462)],a=new Uint8Array(o+4*r);a[e(403)](n,0);for(let t=0;t<r;t++)a.set(new Uint8Array([s[t]>>>24&255,s[t]>>>16&255,s[t]>>>8&255,255&s[t]]),o),o+=4;return Bl[e(383)](Bl.types.stss,a)}static[Ml(396)](t){const e=Ml;let s=t[e(391)],i=new Uint8Array([0,0,0,0,s>>>24&255,s>>>16&255,s>>>8&255,255&s]),r=i[e(462)],n=new Uint8Array(r+12*s);n[e(403)](i,0);for(let i=0;i<s;i++){let s=t[i].chunkNo,o=t[i][e(385)],a=t[i][e(417)];n.set(new Uint8Array([s>>>24&255,s>>>16&255,s>>>8&255,255&s,o>>>24&255,o>>>16&255,o>>>8&255,255&o,a>>>24&255,a>>>16&255,a>>>8&255,255&a]),r),r+=12}return Bl[e(383)](Bl[e(439)].stsc,n)}static stsz(t){const e=Ml;let s=t[e(391)],i=new Uint8Array([0,0,0,0,0,0,0,0,s>>>24&255,s>>>16&255,s>>>8&255,255&s]),r=i[e(462)],n=new Uint8Array(r+4*s);n[e(403)](i,0);for(let i=0;i<s;i++){let s=t[i][e(415)][e(462)];n[e(403)](new Uint8Array([s>>>24&255,s>>>16&255,s>>>8&255,255&s]),r),r+=4}return Bl[e(383)](Bl[e(439)][e(471)],n)}static[Ml(410)](t,e){const s=Ml;let i=e[0][s(386)];return Bl[s(383)](Bl[s(439)].stco,new Uint8Array([0,0,0,0,0,0,0,1,i>>>24&255,i>>>16&255,i>>>8&255,255&i]))}static[Ml(468)](t){const e=Ml;return"audio"===t[e(428)]?t.codec===e(427)?Bl.box(Bl[e(439)][e(468)],Bl[e(445)].STSD_PREFIX,Bl[e(427)](t)):Bl[e(383)](Bl[e(439)][e(468)],Bl[e(445)].STSD_PREFIX,Bl.mp4a(t)):"avc"===t.videoType?Bl[e(383)](Bl[e(439)][e(468)],Bl[e(445)].STSD_PREFIX,Bl[e(446)](t)):Bl.box(Bl.types[e(468)],Bl.constants.STSD_PREFIX,Bl.hvc1(t))}static[Ml(427)](t){const e=Ml;let s=t[e(452)],i=t[e(441)],r=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,s,0,16,0,0,0,0,i>>>8&255,255&i,0,0]);return Bl[e(383)](Bl[e(439)][e(389)],r)}static[Ml(461)](t){const e=Ml;let s=t.channelCount,i=t[e(441)],r=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,s,0,16,0,0,0,0,i>>>8&255,255&i,0,0]);return Bl[e(383)](Bl.types.mp4a,r,Bl[e(408)](t))}static[Ml(408)](t){const e=Ml;let s=t.config||[],i=s[e(391)],r=new Uint8Array([0,0,0,0,3,23+i,0,1,0,4,15+i,64,21,0,0,0,0,0,0,0,0,0,0,0,5][e(448)]([i])[e(448)](s)[e(448)]([6,1,2]));return Bl[e(383)](Bl[e(439)][e(408)],r)}static[Ml(446)](t){const e=Ml;let s=t[e(470)],i=t[e(449)],r=t[e(460)],n=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,i>>>8&255,255&i,r>>>8&255,255&r,0,72,0,0,0,72,0,0,0,0,0,0,0,1,13,106,101,115,115,105,98,117,99,97,45,112,114,111,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,255,255]);return Bl[e(383)](Bl[e(439)].avc1,n,Bl.box(Bl[e(439)][e(393)],s))}static[Ml(433)](t){const e=Ml;let s=t[e(470)];const i=t.codecWidth,r=t[e(460)];let n=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,i>>>8&255,255&i,r>>>8&255,255&r,0,72,0,0,0,72,0,0,0,0,0,0,0,1,13,106,101,115,115,105,98,117,99,97,45,112,114,111,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,255,255]);return Bl[e(383)](Bl[e(439)][e(433)],n,Bl[e(383)](Bl[e(439)][e(423)],s))}static mvex(t){const e=Ml;return Bl.box(Bl.types[e(451)],Bl[e(463)](t))}static[Ml(463)](t){const e=Ml;let s=t.id,i=new Uint8Array([0,0,0,0,s>>>24&255,s>>>16&255,s>>>8&255,255&s,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return Bl[e(383)](Bl[e(439)][e(463)],i)}static[Ml(457)](t,e){const s=Ml;return Bl[s(383)](Bl[s(439)][s(457)],Bl.mfhd(t[s(440)]),Bl.traf(t,e))}static[Ml(390)](t){const e=Ml;let s=new Uint8Array([0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t]);return Bl[e(383)](Bl.types[e(390)],s)}static[Ml(387)](t,e){const s=Ml;let i=t.id,r=Bl[s(383)](Bl[s(439)][s(472)],new Uint8Array([0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i])),n=Bl.box(Bl[s(439)][s(473)],new Uint8Array([0,0,0,0,e>>>24&255,e>>>16&255,e>>>8&255,255&e])),o=Bl[s(398)](t),a=Bl[s(402)](t,o[s(462)]+16+16+8+16+8+8);return Bl[s(383)](Bl[s(439)].traf,r,n,a,o)}static[Ml(398)](t){const e=Ml;let s=t[e(419)]||[],i=s[e(391)],r=new Uint8Array(4+i);for(let t=0;t<i;t++){let i=s[t].flags;r[t+4]=i[e(430)]<<6|i.dependsOn<<4|i[e(436)]<<2|i.hasRedundancy}return Bl[e(383)](Bl.types[e(398)],r)}static[Ml(402)](t,e){const s=Ml;let i=t[s(419)]||[],r=i[s(391)],n=12+16*r,o=new Uint8Array(n);e+=8+n,o[s(403)]([0,0,15,1,r>>>24&255,r>>>16&255,r>>>8&255,255&r,e>>>24&255,e>>>16&255,e>>>8&255,255&e],0);for(let t=0;t<r;t++){let e=i[t][s(380)],r=i[t][s(416)],n=i[t].flags,a=i[t][s(388)];o[s(403)]([e>>>24&255,e>>>16&255,e>>>8&255,255&e,r>>>24&255,r>>>16&255,r>>>8&255,255&r,n[s(430)]<<2|n[s(429)],n[s(436)]<<6|n[s(474)]<<4|n[s(435)],0,0,a>>>24&255,a>>>16&255,a>>>8&255,255&a],12+16*t)}return Bl[s(383)](Bl[s(439)][s(402)],o)}static mdat(t){const e=Ml;return Bl[e(383)](Bl[e(439)][e(384)],t)}}Bl[Ml(437)]();const Fl=Ol;function Ul(){const t=["pts","set","isRecording","emit","748524dwfrgB","_handleAddFmp4Track, isRecording is false ","sps","190494UwzJEb","debugLog","cacheTrack","_isRecording","stop recording fail, isRecording is false ","totalDuration","sequenceNumber","data","328980htRmLY","dts","recorderMP4","totalAudioDuration","totalAudioByteLength","recordEnd","cancel recording","originalDts","vps","audioBufferList","player","assign","TAG_NAME","_formatFmp4Track","size","recordingTimestamp","_formatAudioFmp4Track","21RSnuqI","metaInfo","stop recording fail, this.bufferList.length is 0 ","setInterval","cts","_handleAddFmp4Track","6210GaRCFr","recording","5412064aKsyRT","audioCacheTrack","pps","_reset","406504fEYFmF","bufferList","length","getToTalByteLength","recordCancel","isKeyframe","871950QcxzaB","destroy","start recording","startRecord","recordStart","mp4","_handleAddFmp4Track, is h264 and this.sps or this.pps is null ","audioSequenceNumber","recordBlob","duration","stop recording and totalDuration is ","push","totalByteLength","video","samples","debugError","isH264","getType","handleAddAudioTrack","isH265","stopRecordAndSave","audioMetaInfo","fileName","download","_startRecordingInterval","cancelRecord","application/octet-stream","_getBufferTs","byteLength","getTotalDuration"];return(Ul=function(){return t})()}function Ol(t,e){const s=Ul();return(Ol=function(t,e){return s[t-=220]})(t,e)}!function(t){const e=Ol,s=t();for(;;)try{if(106e3===-parseInt(e(261))/1+parseInt(e(292))/2*(-parseInt(e(286))/3)+-parseInt(e(258))/4+-parseInt(e(224))/5+-parseInt(e(269))/6+parseInt(e(298))/7+parseInt(e(294))/8)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Ul);class Nl extends _l{constructor(t){const e=Ol;super(t),this.TAG_NAME=e(271),this[e(297)](),t.debugLog(this[e(281)],"init")}[Fl(225)](){const t=Fl;super[t(225)](),this[t(297)](),this.player[t(262)](this.TAG_NAME,"destroy")}[Fl(297)](){const t=Fl;super[t(297)](),this[t(266)]=0,this.totalAudioDuration=0,this.totalByteLength=0,this[t(273)]=0,this[t(299)]=[],this[t(278)]=[],this.cacheTrack={},this[t(295)]={},this[t(267)]=0,this[t(231)]=0}[Fl(227)](){const t=Fl;this[t(264)]=!0,this[t(279)][t(257)](q[t(293)],!0),this[t(279)][t(262)](this[t(281)],t(226)),this.player[t(257)](q[t(228)]),this[t(248)]()}[Fl(248)](){const t=Fl;this.stopRecordingInterval(),this.recordingInterval=window[t(289)](()=>{const e=t;this[e(279)].emit(q[e(284)],this.getTotalDuration())},1e3)}_formatFmp4Track(t,e,s,i){const r=Fl;return{id:1,sequenceNumber:++this[r(267)],size:t[r(252)],dts:s,cts:i,isKeyframe:e,data:t,duration:0,flags:{isLeading:0,dependsOn:e?2:1,isDependedOn:e?1:0,hasRedundancy:0,isNonSync:e?0:1}}}[Fl(285)](t,e){return{id:2,sequenceNumber:++this.audioSequenceNumber,size:t.byteLength,dts:e,pts:e,cts:0,data:new Uint8Array(t),duration:0,originalDts:e,flags:{isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0}}}handleAddNaluTrack(t,e,s,i){const r=Fl;this[r(263)].id&&s>=this[r(263)].dts?(this.cacheTrack.duration=s-this[r(263)].dts,this._handleAddFmp4Track(this.cacheTrack)):this.cacheTrack={},this[r(263)]=this[r(282)](t,e,s,i)}[Fl(242)](t,e){}[Fl(291)](t){const e=Fl;if(!this[e(256)])return void this[e(279)].debugError(this.TAG_NAME,e(259));if((null===this[e(260)]||null===this[e(296)])&&this[e(240)])return void this[e(279)][e(239)](this[e(281)],e(230));if((null===this[e(260)]||null===this.pps||null===this[e(277)])&&this[e(243)])return void this.player[e(239)](this[e(281)],"_handleAddFmp4Track, is h265 and this.sps or this.pps or this.vps is null ");const s=Object[e(280)]({},t);s[e(254)]=s[e(270)]+s[e(290)];const i=s[e(268)];if(s[e(223)])if(this[e(240)]){const t=new Uint8Array(this[e(260)][e(252)]+this.pps.byteLength);t[e(255)](this[e(260)],0),t[e(255)](this[e(296)],this[e(260)][e(252)]);const r=new Uint8Array(t[e(252)]+i[e(252)]);r.set(t,0),r[e(255)](i,t[e(252)]),s[e(268)]=r}else if(this[e(243)]){const t=new Uint8Array(this[e(260)].byteLength+this[e(296)][e(252)]+this.vps[e(252)]);t[e(255)](this[e(277)],0),t[e(255)](this.sps,this[e(277)].byteLength),t[e(255)](this.pps,this[e(277)][e(252)]+this[e(260)][e(252)]);const r=new Uint8Array(t[e(252)]+i[e(252)]);r[e(255)](t,0),r.set(i,t.byteLength),s.data=r}s.size=s[e(268)][e(252)],this.totalDuration+=s[e(233)],this[e(236)]+=s.data[e(252)],s[e(233)]=0,s[e(276)]=s.dts,delete s.id,delete s[e(267)],this[e(299)][e(235)](s)}_handleAddFmp4AudioTrack(t){const e=Fl,s=Object[e(280)]({},t);s[e(254)]=s.dts+s[e(290)],s[e(283)]=s.data[e(252)],this[e(272)]+=s[e(233)],this[e(273)]+=s.data[e(252)],s[e(233)]=0,s[e(276)]=s[e(270)],delete s.id,delete s.sequenceNumber,this.audioBufferList.push(s)}[Fl(253)](){return this[Fl(266)]/1e3}[Fl(241)](){return f[Fl(229)]}[Fl(221)](){const t=Fl;return this[t(236)]+this[t(273)]}[Fl(244)](t=Z[Fl(247)],e){return new Promise((s,i)=>{const r=Ol;if(!this[r(256)])return this[r(279)].debugError(this[r(281)],r(265)),i(r(265));if(0===this[r(299)][r(220)])return this.player.debugError(this.TAG_NAME,r(288)),i(r(288));e&&this.setFileName(e);const n={id:1,type:r(237),sps:this[r(260)],pps:this[r(296)],samples:this[r(299)],sequenceNumber:this[r(299)][r(220)],length:0,addSampleNum:1,duration:0,...this[r(287)]},o={id:2,type:"audio",sequenceNumber:this[r(278)].length,samples:this[r(278)],...this[r(245)]},a=[n];o[r(238)].length>0&&a[r(235)](o);const h=Bl.generateInitSegment({timescale:1e3,duration:this[r(266)]},a,this[r(236)]+this[r(273)]);this[r(279)][r(262)](this[r(281)],r(234)+this[r(253)]()+"s");const l=new Blob([h],{type:r(250)});if(t===Z.blob)s(l),this[r(279)][r(257)](q[r(232)],l);else{s();Ns((this[r(246)]||os())+"."+f.mp4,l)}this.player.emit(q[r(274)]),this[r(297)](),this[r(279)][r(257)](q.recording,!1)})}[Fl(249)](){return new Promise((t,e)=>{const s=Ol;if(this[s(279)][s(262)](this.TAG_NAME,s(275)),!this[s(256)])return t();this[s(297)](),this.player[s(257)](q[s(293)],!1),this.player[s(257)](q[s(222)]),t()})}[Fl(251)](t){}}function Vl(...t){const e=Wl,s=t[0][e(424)];return t[e(411)]((t,i)=>{const r=e,n=new s((0|t[r(419)])+(0|i[r(419)]));return n[r(420)](t,0),n.set(i,0|t[r(419)]),n},new s)}function jl(t){const e=Wl,s=t[0].constructor;return t[e(411)]((t,i)=>{const r=e,n=new s((0|t.byteLength)+(0|i[r(419)]));return n[r(420)](t,0),n.set(i,0|t[r(419)]),n},new s)}function Wl(t,e){const s=Hl();return(Wl=function(t,e){return s[t-=406]})(t,e)}function Gl(t){const e=Wl;if((t=t[e(416)](/\s/g,""))[e(406)]%2!=0)return console[e(421)]("hexStringToUint8Array: invalid hexString length, must be even and bexString length is: ",t[e(406)]),null;const s=new Uint8Array(t[e(406)]/2);for(let i=0;i<t[e(406)];i+=2){const r=parseInt(t[e(425)](i,2),16);s[i/2]=r}return s}function zl(t,e){return 255&t[e]}function Hl(){const t=["170044aNdTzZ","reduce","477237hTHBAe","padStart","1962lXKkzW","5435mAvpKw","replace","25070lmAOPp","2471928OfhHQn","byteLength","set","error","218176JMUflZ","8FCsLpY","constructor","substr","length","2896RAuiZS","toString","867396YRBqTy"];return(Hl=function(){return t})()}function Kl(t,e){return 255&t[e]|t[e+1]<<8&65280}function ql(t,e){const s=Jl();return(ql=function(t,e){return s[t-=223]})(t,e)}!function(t){const e=Wl,s=t();for(;;)try{if(475821===parseInt(e(412))/1+parseInt(e(410))/2+-parseInt(e(409))/3+parseInt(e(407))/4*(-parseInt(e(415))/5)+parseInt(e(418))/6+parseInt(e(422))/7*(parseInt(e(423))/8)+-parseInt(e(414))/9*(-parseInt(e(417))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Hl);const Ql=ql;!function(t){const e=ql,s=t();for(;;)try{if(229520===-parseInt(e(228))/1+-parseInt(e(256))/2+-parseInt(e(239))/3+-parseInt(e(257))/4*(parseInt(e(231))/5)+-parseInt(e(297))/6+-parseInt(e(234))/7*(parseInt(e(293))/8)+-parseInt(e(251))/9*(-parseInt(e(254))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Jl);class Yl extends _l{constructor(t){const e=ql;super(t),this[e(290)]=e(233),this[e(260)]=t,this[e(237)](),this[e(260)][e(241)](this[e(290)],e(298))}destroy(){const t=ql;super[t(236)](),this[t(237)](),this.player[t(241)](this[t(290)],t(236))}[Ql(237)](){const t=Ql;this[t(238)]=!1,this[t(267)]=!1,this.startTime=null,this.currentTime=0,this.prevTimestamp=0,this.totalByteLength=0,this[t(273)]=0,this[t(270)]=null,this.aacSequenceHeader=null,this[t(278)]=null,this[t(223)]=[]}[Ql(288)](){const t=Ql;super._reset(),this[t(237)]()}[Ql(242)](){const t=Ql;this[t(279)]=!0,this[t(260)][t(266)](q[t(284)],!0),this[t(260)][t(241)](this[t(290)],"start recording"),this[t(260)].emit(q[t(263)]),this[t(259)]()}[Ql(259)](){const t=Ql;this[t(299)](),this.recordingInterval=window.setInterval(()=>{const e=t;this[e(260)][e(266)](q.recordingTimestamp,this[e(258)]())},1e3)}[Ql(243)](t){this[Ql(270)]=t}[Ql(247)](t){this.aacSequenceHeader=t}[Ql(277)](t){this.videoSequenceHeader=t}[Ql(265)](t,e){const s=Ql;this[s(235)](e);const i=this._getBufferTs(e);this[s(267)]=!0,this[s(262)](t,G[s(224)],i)}[Ql(244)](t,e){const s=Ql;this[s(235)](e);const i=this[s(229)](e);this.hasAudio=!0,this[s(262)](t,G[s(295)],i)}[Ql(235)](t){const e=Ql;null===this[e(281)]&&this._isRecording&&(this[e(281)]=t,this[e(260)].debugLog(this[e(290)],e(275)+t))}_getBufferTs(t){const e=Ql;t>this[e(252)]&&(this.currentTime=t);let s=0;return this.startTime&&t>=this[e(281)]&&(s=t-this.startTime),s>this[e(226)]?this.prevTimestamp=s:s=this.prevTimestamp,s}_createBufferItem(t,e,s){const i=Ql,r=this[i(271)](t,e,s),n=this[i(294)](r);this[i(246)]+=n[i(248)],this[i(223)][i(282)](n)}[Ql(294)](t){const e=Ql;let s=11+t.header[e(285)],i=new Uint8Array(s+4),r=new DataView(i.buffer);return i[0]=t[e(240)].type,i[1]=t.header[e(285)]>>16&255,i[2]=t[e(240)][e(285)]>>8&255,i[3]=255&t.header[e(285)],i[4]=t[e(240)][e(264)]>>16&255,i[5]=t[e(240)][e(264)]>>8&255,i[6]=255&t.header[e(264)],i[7]=t[e(240)][e(264)]>>24&255,i[8]=0,i[9]=0,i[10]=0,r[e(269)](s,s),i[e(287)](t[e(253)].subarray(0,t.header[e(285)]),11),i}[Ql(271)](t=null,e=0,s=0){return{header:{length:t?t[Ql(285)]:0,timestamp:s,type:e},payload:t}}[Ql(289)](t=Z[Ql(286)],e){return new Promise((s,i)=>{const r=ql;if(!this[r(230)])return this[r(260)][r(227)](this.TAG_NAME,r(250)),i(r(250));if(0===this[r(223)].length)return this[r(260)][r(227)](this[r(290)],r(280)),i(r(280));e&&this[r(225)](e);const n=new Uint8Array([70,76,86,1,0,0,0,0,9,0,0,0,0]);this[r(267)]&&(n[4]|=1),this[r(238)]&&(n[4]|=4);let o=[n];if(this[r(270)]){const t=this[r(271)](this[r(270)],G[r(291)]),e=this[r(294)](t);o[r(282)](e)}if(this[r(278)]){const t=this[r(271)](this[r(278)],G[r(224)]),e=this[r(294)](t);o[r(282)](e)}if(this[r(292)]){const t=this[r(271)](this[r(292)],G.audio),e=this[r(294)](t);o[r(282)](e)}const a=jl(o[r(249)](this.bufferList));this[r(260)][r(241)](this.TAG_NAME,"stop recording and totalDuration is "+this[r(258)]()+"s");const h=new Blob([a],{type:r(274)});if(t===Z[r(272)])s(h),this.player[r(266)](q[r(232)],h);else{s();Ns((this[r(283)]||os())+"."+f.flv,h)}this[r(260)][r(266)](q[r(276)]),this[r(288)](),this[r(260)][r(266)](q[r(284)],!1)})}[Ql(296)](){return new Promise((t,e)=>{const s=ql;if(this[s(260)].debugLog(this.TAG_NAME,s(268)),!this[s(230)])return t();this[s(288)](),this[s(260)][s(266)](q[s(284)],!1),this.player[s(266)](q.recordCancel),t()})}[Ql(258)](){const t=Ql;let e=0;return null!==this.startTime&&null!==this[t(252)]&&(e=this.currentTime-this.startTime),Math.round(e/1e3)}[Ql(261)](){return f[Ql(245)]}[Ql(255)](){return this.totalByteLength}}function Jl(){const t=["addMetaData","addAudio","flv","totalByteLength","addAACSequenceHeader","byteLength","concat","stop recording fail, isRecording is false ","549OxdGgC","currentTime","payload","185050aRdqHH","getToTalByteLength","11900WQmzhR","4KlWMQE","getTotalDuration","startRecordingInterval","player","getType","_createBufferItem","recordStart","timestamp","addVideo","emit","hasVideo","cancel recording","setUint32","flvMetaData","_createFlvPacket","blob","totalDuration","application/octet-stream","_setStartTime is ","recordEnd","addVideoSequenceHeader","videoSequenceHeader","_isRecording","stop recording fail, this.bufferList.length is 0 ","startTime","push","fileName","recording","length","download","set","_reset","stopRecordAndSave","TAG_NAME","scriptData","aacSequenceHeader","8yUhEZG","_createFlvTag","audio","cancelRecord","711492epeadQ","init","stopRecordingInterval","bufferList","video","setFileName","prevTimestamp","debugError","109694rSjHrq","_getBufferTs","isRecording","570905mpesOl","recordBlob","FlvRecorderLoader","2573809pamlNc","_setStartTime","destroy","_init","hasAudio","549573DfzfSm","header","debugLog","startRecord"];return(Jl=function(){return t})()}const Xl=Zl;function $l(){const t=["TAG_NAME","351995juILJO","debugLog","tempBuffer","reset","553gsjAcK","stats","44757PbgvBC","fisrtStartCodeOffset","findSecondStartCode","slice","43568TOLFgi","2056464Wzuyhe","findFirstStartCode","6hqpDhB","destroy","emit","isDestroyed","Init","versionLayer","341970KXiEfD","dispatch","init","parsedOffset","length","2890lyIRUH","60314zVJrXr","set","state","player","748120XsFhgp","data","secondStartCodeOffset"];return($l=function(){return t})()}function Zl(t,e){const s=$l();return(Zl=function(t,e){return s[t-=324]})(t,e)}!function(t){const e=Zl,s=t();for(;;)try{if(293795===-parseInt(e(329))/1+parseInt(e(354))/2*(parseInt(e(342))/3)+-parseInt(e(340))/4+parseInt(e(325))/5+-parseInt(e(348))/6+parseInt(e(333))/7*(-parseInt(e(339))/8)+parseInt(e(335))/9*(parseInt(e(353))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}($l);const tc={init:0,findFirstStartCode:1,findSecondStartCode:2};class ec extends h{constructor(t){const e=Zl;super(),this[e(324)]=t,this[e(328)]="Mp3Demux",this[e(345)]=!1,this[e(332)](),this.tempBuffer=new Uint8Array(0),this[e(324)][e(330)](this[e(328)],e(350))}[Xl(343)](){const t=Xl;this[t(345)]=!0,this.off(),this[t(332)](),this[t(324)][t(330)](this[t(328)],t(343))}reset(){const t=Xl;this[t(334)]=tc[t(350)],this.tempBuffer=null,this.parsedOffset=0,this[t(347)]=0}[Xl(349)](t,e){const s=Xl;let i=new Uint8Array(this[s(331)][s(352)]+t.length);for(i.set(this[s(331)],0),i[s(355)](t,this[s(331)][s(352)]),this[s(331)]=i;!this.isDestroyed;){if(this[s(356)]==tc[s(346)]){let t=!1;for(;this[s(331)].length-this[s(351)]>=2&&!this[s(345)];)if(255==this[s(331)][this[s(351)]]){if(!(!1&this[s(331)][this[s(351)]+1])){this[s(347)]=this.tempBuffer[this[s(351)]+1],this[s(356)]=tc[s(341)],this[s(336)]=this[s(351)],this.parsedOffset+=2,t=!0;break}this[s(351)]++}else this.parsedOffset++;if(t)continue;break}if(this.state==tc[s(341)]){let t=!1;for(;this[s(331)][s(352)]-this[s(351)]>=2&&!this[s(345)];)if(255==this.tempBuffer[this.parsedOffset]){if(this[s(331)][this[s(351)]+1]==this.versionLayer){this[s(356)]=tc[s(337)],this[s(327)]=this.parsedOffset,this[s(351)]+=2,t=!0;break}this.parsedOffset++}else this[s(351)]++;if(t)continue;break}if(this.state==tc[s(337)]){let t=this[s(331)][s(338)](this[s(336)],this[s(327)]);this[s(344)](s(326),t,e),this[s(331)]=this[s(331)][s(338)](this[s(327)]),this[s(336)]=0,this.parsedOffset=2,this[s(356)]=tc[s(341)]}}}}function sc(t,e){const s=rc();return(sc=function(t,e){return s[t-=108]})(t,e)}const ic=sc;function rc(){const t=["stopRecord","byteLength","21763280wqCfzh","pendingVideoFrames","253984VPNgRe","destroy","data","hasVideo","recordEnd","recordingTimestamp","stopRecordAndSave","finally","_handleAddAudioTrack","_prevHandleAddNaluTrack","emitError","audioCodeId","debugLog","totalAudioByteLength","_isRecording","isIFrame","recordBlob","codecId","startRecord error","_recordingTimestamp","TAG_NAME","depth","cts","cancel recording","498xbyhwe","302iSDdnc","getTotalDuration","261NAnnHE","725csPINf","blob","cancelRecord","forEach","player","8937594LuBEYc","isWasmMp4","getAudioInfo","recording","totalAudioDuration","dts","6276275AUxQts","getType","debugError","totalByteLength","catch","_prevHandleAddAudioTrack","JessibucaProMp4Recorder","init","emit","debug","mp3Demuxer","recordTime","6513682xqDTjW","isRecording","round","wasmMp4RecorderStarted","recordCreateError","handleAddAudioTrack","metaInfo","push","video","wasmMp4RecorderDecoder","_opt","audioCacheTrack","toString","length","then","duration","sendVideoFrame","startRecordingInterval","mp4","handleAddNaluTrack","cacheTrack","download","start recording","getToTalByteLength","sampleRate","stop recording fail, isRecording is false ","stopRecord error","_reset","audioMetaInfo","dispatch","MP3","fileName","pendingAudioFrames","recordStart","extraData","30340QxyLgD","height","stopRecordingInterval","wasmMp4Recorder","setFileName","avcc","audio","startRecord","hasAudio","payload","sendAudioFrame"];return(rc=function(){return t})()}!function(t){const e=sc,s=t();for(;;)try{if(790225===parseInt(e(125))/1*(parseInt(e(122))/2)+parseInt(e(121))/3*(parseInt(e(183))/4)+-parseInt(e(136))/5+-parseInt(e(130))/6+-parseInt(e(148))/7+-parseInt(e(198))/8*(-parseInt(e(124))/9)+parseInt(e(196))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(rc);class nc extends _l{constructor(t){const e=sc;super(t),this.TAG_NAME="recorderWasmMP4",this[e(175)](),this.wasmMp4Recorder=null,this[e(146)]=null,this.wasmMp4RecorderStarted=!1,this.pendingAudioFrames=[],this[e(197)]=[],t.debugLog(this.TAG_NAME,e(143))}[ic(199)](){const t=ic;super[t(199)](),this[t(146)]&&(this[t(146)][t(199)](),this.mp3Demuxer=null),this[t(186)]&&(this[t(186)].destroy(),this[t(186)]=null),this[t(175)](),this[t(129)][t(109)](this[t(117)],t(199))}[ic(175)](){const t=ic;super[t(175)](),this[t(168)]={},this.audioCacheTrack={},this[t(134)]=0,this[t(139)]=0,this[t(110)]=0,this.hasAudio=!1,this[t(201)]=!1}[ic(137)](){return f.mp4}[ic(131)](){return!0}[ic(123)](){return this._recordingTimestamp/1e3}[ic(171)](){const t=ic;return this[t(139)]+this[t(110)]}[ic(190)](){const t=ic,e=this.player,s=this.player[t(132)](),i=this.player.getVideoInfo(),r={};if(this[t(114)]){const e={type:this[t(114)],width:i.width,height:i[t(184)],extraData:this[t(154)][t(188)]};r[t(156)]=e,this[t(201)]=!0}if(s.encTypeCode){const e={type:s.encTypeCode,sampleRate:s[t(172)],channels:s.channels,extraData:this[t(176)][t(182)],depth:s[t(118)]};this[t(108)]=s.encTypeCode,r[t(189)]=e,this.hasAudio=!0}this.wasmMp4Recorder=new(window[t(142)])({debug:e[t(158)][t(145)],debugLevel:e._opt.debugLevel,debugUuid:e[t(158)].debugUuid,decoder:e[t(158)][t(157)],name:I,buildTime:k}),this[t(186)].on(t(203),e=>{const s=t;this[s(116)]=Math[s(150)](e/1e3)}),this[t(111)]=!0,this[t(186)].startRecord(r).then(()=>{const e=t;this[e(129)][e(144)](q[e(133)],!0),this[e(151)]=!0,this[e(129)][e(109)](this[e(117)],e(170)),this[e(129)][e(144)](q[e(181)]),this[e(165)]()})[t(140)](e=>{const s=t;this[s(111)]=!1,this[s(129)].debugError(this.TAG_NAME,s(115),e.toString(),e),this[s(129)][s(208)](q[s(152)],e[s(160)]())})}startRecordingInterval(){const t=ic;this[t(185)](),this.recordingInterval=window.setInterval(()=>{const e=t;this[e(129)][e(144)](q[e(203)],this[e(147)])},1e3)}[ic(204)](t=Z[ic(169)],e){return new Promise((s,i)=>{const r=sc;return this[r(149)]?0===this[r(116)]?(this[r(129)][r(138)](this[r(117)],"stop recording fail, recording time is 0 "),i("stop recording fail, recording time is 0 ")):(e&&this[r(187)](e),void this.wasmMp4Recorder.stopRecord()[r(162)](e=>{const i=r;if(this[i(129)].debugLog(this[i(117)],"stop recording and totalDuration is "+this[i(123)]()+"s"),t===Z[i(126)])s(e),this[i(129)][i(144)](q[i(113)],e);else{s();Ns((this[i(179)]||os())+"."+f[i(166)],e)}}).catch(t=>{const e=r;this[e(129)].debugError(this[e(117)],e(174),t),i(t)})[r(205)](()=>{const t=r;this[t(129)][t(144)](q[t(202)]),this[t(175)](),this[t(129)][t(144)](q[t(133)],!1)})):(this[r(129)].debugError(this[r(117)],"stop recording fail, isRecording is false "),i(r(173)))})}[ic(127)](){return new Promise((t,e)=>{const s=sc;if(this[s(129)][s(109)](this[s(117)],s(120)),!this[s(149)]||0===this[s(116)])return t();this.wasmMp4Recorder[s(194)]()[s(162)](e=>{t()}).catch(t=>{const i=s;this[i(129)].debugError(this.TAG_NAME,i(174),t),e(t)})[s(205)](()=>{const t=s;this[t(175)](),this[t(129)][t(144)](q[t(133)],!1),this[t(129)][t(144)](q.recordCancel)})})}[ic(153)](t,e){const s=ic;xi(this[s(191)])||(this[s(151)]?(this.pendingAudioFrames[s(161)]>0&&(this.pendingAudioFrames[s(128)](t=>{const e=s;this._prevHandleAddAudioTrack(t[e(192)],t[e(135)])}),this[s(180)]=[]),this[s(141)](t,e)):this.pendingAudioFrames[s(155)]({payload:t,dts:e}))}[ic(141)](t,e){const s=ic;this.audioCodeId===it[s(178)]?(!this[s(146)]&&(this[s(146)]=new ec(this.player),this[s(146)].on(s(200),(t,e)=>{this[s(206)](t,e)})),this.mp3Demuxer[s(177)](t,e)):this[s(206)](t,e)}_handleAddAudioTrack(t,e){const s=ic;this.audioCacheTrack.id&&e>=this[s(159)][s(135)]?(this[s(159)][s(163)]=e-this.audioCacheTrack[s(135)],this.totalAudioDuration+=this[s(159)].duration,this[s(110)]+=this[s(159)][s(192)][s(195)],this[s(186)][s(193)](this[s(159)][s(192)],this.audioCacheTrack.dts)):this[s(159)]={},this.audioCacheTrack={id:2,payload:t,dts:e}}[ic(167)](t,e,s,i){const r=ic;xi(this[r(201)])||(this[r(151)]?(this[r(197)][r(161)]>0&&(this[r(197)].forEach(t=>{const e=r;this[e(207)](t[e(192)],t.isIFrame,t[e(135)],t[e(119)])}),this[r(197)]=[]),this[r(207)](t,e,s,i)):this[r(197)][r(155)]({payload:t,isIFrame:e,dts:s,cts:i}))}_prevHandleAddNaluTrack(t,e,s,i){const r=ic;this[r(168)].id&&s>=this[r(168)][r(135)]?(this[r(168)][r(163)]=s-this[r(168)][r(135)],this.totalByteLength+=this[r(168)][r(192)].byteLength,this.wasmMp4Recorder[r(164)](this.cacheTrack[r(192)],this[r(168)][r(112)],this[r(168)][r(135)],this[r(168)][r(119)])):this[r(168)]={},this[r(168)]={id:1,payload:t,isIFrame:e,dts:s,cts:i}}}const oc=ac;function ac(t,e){const s=lc();return(ac=function(t,e){return s[t-=191]})(t,e)}!function(t){const e=ac,s=t();for(;;)try{if(196744===parseInt(e(206))/1+parseInt(e(198))/2*(parseInt(e(200))/3)+parseInt(e(192))/4+parseInt(e(207))/5*(-parseInt(e(211))/6)+-parseInt(e(202))/7+-parseInt(e(208))/8*(-parseInt(e(196))/9)+-parseInt(e(194))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(lc);class hc{constructor(t){const e=ac;return new(hc[e(191)](t,t[e(209)]))(t)}static[oc(191)](t,e){const s=oc;if(t[s(201)]()||t[s(195)]()||t[s(199)]())return Rl;if(e[s(210)]===f[s(193)]){if(e.useWasm||e[s(205)]||e[s(204)])return window[s(197)]&&e.mp4RecordUseWasm?nc:Nl}else if(e[s(210)]===f[s(203)])return Yl;return Rl}}function lc(){const t=["isOldHls","263032fGqNeG","flv","useWCS","useMSE","342557fUpFrJ","2435OrreXm","575120VoVojf","_opt","recordType","1290VAaYcI","getLoaderFactory","118776pRPgTM","mp4","3488280PooYOH","isWebrtcH264","36NdqRbM","JessibucaProMp4Recorder","28042BYWDep","isAliyunRtc","6YpqHyx"];return(lc=function(){return t})()}function cc(){const t=["2732MFOHCC","fromCharCode","40PbepDV","264719lmYQfs","2212650WNQVHz","46296oXmcHK","22148HnniQk","push","2982810aciKfy","194LyQnOt","6460695VzcSeM","length"];return(cc=function(){return t})()}function dc(t,e,s){let i=t;if(e+s<i.length){for(;s--;)if(128!=(192&i[++e]))return!1;return!0}return!1}function uc(t,e){const s=cc();return(uc=function(t,e){return s[t-=498]})(t,e)}function pc(t){const e=uc;let s=[],i=t,r=0,n=t[e(498)];for(;r<n;)if(i[r]<128)s[e(506)](String.fromCharCode(i[r])),++r;else{if(i[r]<192);else if(i[r]<224){if(dc(i,r,1)){let t=(31&i[r])<<6|63&i[r+1];if(t>=128){s[e(506)](String[e(500)](65535&t)),r+=2;continue}}}else if(i[r]<240){if(dc(i,r,2)){let t=(15&i[r])<<12|(63&i[r+1])<<6|63&i[r+2];if(t>=2048&&55296!=(63488&t)){s[e(506)](String.fromCharCode(65535&t)),r+=3;continue}}}else if(i[r]<248&&dc(i,r,3)){let t=(7&i[r])<<18|(63&i[r+1])<<12|(63&i[r+2])<<6|63&i[r+3];if(t>65536&&t<1114112){t-=65536,s.push(String[e(500)](t>>>10|55296)),s[e(506)](String[e(500)](1023&t|56320)),r+=4;continue}}s[e(506)](String[e(500)](65533)),++r}return s.join("")}function fc(){const t=["getFloat64","error","getUint32","11151LUdJju","value","parseString","warn","data","27102UcbVFI","1048737gGDoxS","name","630znTJwr","getUint8","getInt16","Unsupported AMF value type ","2834475WFZBPg","parseValue","269336AhatIi","parseLongString","objectEnd","size","toString","parseDate","1648mbzZih","parseScriptData","124796QiOHly","parseObject","parseVariable","1471772QHmkWD","getUint16","AMF"];return(fc=function(){return t})()}!function(t){const e=uc,s=t();for(;;)try{if(302432===parseInt(e(499))/1*(parseInt(e(508))/2)+-parseInt(e(504))/3+-parseInt(e(505))/4+parseInt(e(507))/5+parseInt(e(503))/6+parseInt(e(502))/7*(-parseInt(e(501))/8)+-parseInt(e(509))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(cc);const mc=gc;function gc(t,e){const s=fc();return(gc=function(t,e){return s[t-=318]})(t,e)}!function(t){const e=gc,s=t();for(;;)try{if(316319===parseInt(e(329))/1+-parseInt(e(337))/2+-parseInt(e(321))/3+parseInt(e(340))/4+-parseInt(e(323))/5*(parseInt(e(320))/6)+parseInt(e(327))/7+parseInt(e(335))/8*(parseInt(e(346))/9))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(fc);let yc=function(){let t=new ArrayBuffer(2);return new DataView(t).setInt16(0,256,!0),256===new Int16Array(t)[0]}();class Ac{static[mc(336)](t,e,s){const i=mc;let r={};try{let n=Ac.parseValue(t,e,s),o=Ac[i(328)](t,e+n[i(332)],s-n[i(332)]);r[n[i(319)]]=o[i(319)]}catch(t){console[i(344)]("AMF",t[i(333)]())}return r}static parseObject(t,e,s){const i=mc;let r=Ac.parseString(t,e,s),n=Ac[i(328)](t,e+r[i(332)],s-r[i(332)]),o=n.objectEnd;return{data:{name:r[i(319)],value:n[i(319)]},size:r.size+n[i(332)],objectEnd:o}}static[mc(339)](t,e,s){return Ac[mc(338)](t,e,s)}static parseString(t,e,s){const i=mc;let r,n=new DataView(t,e,s)[i(341)](0,!yc);return r=n>0?pc(new Uint8Array(t,e+2,n)):"",{data:r,size:2+n}}static[mc(330)](t,e,s){const i=mc;let r,n=new DataView(t,e,s)[i(345)](0,!yc);return r=n>0?pc(new Uint8Array(t,e+4,n)):"",{data:r,size:4+n}}static[mc(334)](t,e,s){const i=mc;let r=new DataView(t,e,s),n=r[i(343)](0,!yc);return n+=60*r[i(325)](8,!yc)*1e3,{data:new Date(n),size:10}}static[mc(328)](t,e,s){const i=mc;let r,n=new DataView(t,e,s),o=1,a=n.getUint8(0),h=!1;try{switch(a){case 0:r=n[i(343)](1,!yc),o+=8;break;case 1:r=!!n[i(324)](1),o+=1;break;case 2:{let n=Ac[i(348)](t,e+1,s-1);r=n[i(319)],o+=n[i(332)];break}case 3:{r={};let a=0;for(9==(16777215&n[i(345)](s-4,!yc))&&(a=3);o<s-4;){let n=Ac[i(338)](t,e+o,s-o-a);if(n[i(331)])break;r[n.data[i(322)]]=n[i(319)].value,o+=n[i(332)]}if(o<=s-3){9===(16777215&n.getUint32(o-1,!yc))&&(o+=3)}break}case 8:{r={},o+=4;let a=0;for(9==(16777215&n.getUint32(s-4,!yc))&&(a=3);o<s-8;){let n=Ac.parseVariable(t,e+o,s-o-a);if(n[i(331)])break;r[n[i(319)][i(322)]]=n[i(319)][i(347)],o+=n.size}if(o<=s-3){9===(16777215&n[i(345)](o-1,!yc))&&(o+=3)}break}case 9:r=void 0,o=1,h=!0;break;case 10:{r=[];let a=n[i(345)](1,!yc);o+=4;for(let n=0;n<a;n++){let n=Ac[i(328)](t,e+o,s-o);r.push(n[i(319)]),o+=n.size}break}case 11:{let n=Ac[i(334)](t,e+1,s-1);r=n[i(319)],o+=n[i(332)];break}case 12:{let n=Ac[i(348)](t,e+1,s-1);r=n.data,o+=n.size;break}default:o=s,console[i(318)](i(342),i(326)+a)}}catch(t){console[i(344)](i(342),t.toString())}return{data:r,size:o,objectEnd:h}}}function bc(t,e){const s=Sc();return(bc=function(t,e){return s[t-=399]})(t,e)}function vc(t){const e=bc;return Ac[e(408)](t[e(407)],t[e(400)],t[e(401)])}function Sc(){const t=["parseScriptData","52856GpWqbe","68845ezUGmk","1845TAXHZI","225687fECAeL","G711U","18bWAxLI","151208tQqvJk","byteOffset","byteLength","G711A","492260oEGWLC","27265GTmfzm","616jlMlvk","AAC","buffer"];return(Sc=function(){return t})()}!function(t){const e=bc,s=t();for(;;)try{if(106580===parseInt(e(404))/1+parseInt(e(399))/2+parseInt(e(412))/3+parseInt(e(409))/4+-parseInt(e(403))/5+-parseInt(e(414))/6*(-parseInt(e(410))/7)+parseInt(e(405))/8*(-parseInt(e(411))/9))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Sc);const Ec=wc;function wc(t,e){const s=Tc();return(wc=function(t,e){return s[t-=447]})(t,e)}function Tc(){const t=["initScriptNode","seekingTimestamp","openWebglAlignment","http","mp4","webgl","streamSuccess","clearWorkBuffer","playbackNextFrame","updateWorkConfig","406402ljXntH","memoryAccessOutOfBounds","onmessage render but video is null","videoNalu","recorder","videoInitedAndNotFirstVideoIFrame","pushData"," and continue ignore render","audio","notSupportNewWasm","useWCS","visibility","failedToAsynchronouslyPrepareWasm","isRecording","protocol","decodeStart","initFps","revokeObjectURL","exitPlayVodNextFrame","isDropping","getCanvasRenderType","flvBufferData","width:","isInitError","data","delay","mseUpdateVideoTimestamp","streamEnd","updateStreamEndInner","render","createObjectURL","decodeVideo","bound","handlePlayToRenderTimes","uuid","max","streamEndInner","cmd","aacSequenceHeader",".wasm","sampleRate","initAudio","6fDCRUV","isHevc","cryptoKey","playVodNextFrame","exitPlaybackNextFrame","_clearCloseTimeout","updateAudioInfo","updatePlayVodFps","iframeIntervalTs","updateMetaData","bindMediaStream","code","load","fetchError","mseHandle","decoderHard","audioPayload","postMessage"," and diff:","workerEnd","playType","updatePlayVodNextFrame","isUseFpsRender","workerUrl","audioAACSequenceHeader","srcObject","application/javascript","render$2","exitPlayVodNextIFrame","updatePlaybackIsPause","isPlayer","decoderWorkerUncaughtError","isMseDecoderUseWorker","isMseVideoStateInited","isDestroyedOrClosed","_initWork","5ikmSJL","stringify","decoderWorkerInit","wasmWidthOrHeightChange","decoderWorkerCloseTimeout","audio channel is ","netBuf",",message: ","playbackIsPause","decoder-pro-audio.wasm","playVodNextIFrame","demuxUseWorker","useMSE","playbackStreamVideoFps","websocketStringMsg","playVodFps","onmessage and workerFetch response stream end but player is null"," and seekingTimestamp:","simdDecodeDelayTimeout","decoderWorkerInitError","videoPayload","emit","isWCSDecodeAudio","debugWarn","streamStats"," and playingTimestamp ","playAudio","videoCode","onMetaData","recordType","isFlv","protocols","videoInfoError","isPlaybackOnlyDecodeIFrame","decoderCheckFirstIFrame","playbackNextIFrame","_destroy","exitPlaybackNextIFrame","parse","updateConfig","simdH264DecodeVideoWidthIsTooLarge","handleRender","onmessage","1864576lODuVw","onmessageerror","onerror and ignore filename: "," and init decoder worker","Uncaught ","isVideoInitedAndNotFirstVideoIFrame","video","getHasInit","buffer","handleAddAudioTrack","playback","isNakedFlow","_mseWorkerData","toFixed","playVod","207713oUPiws","_opt","destroy","videoSequenceHeader","videoSEI","updatePlaybackNextFrame","clearBuffer","_decodeVideoNoDelay","size","closeEnd","isMSEDecodeAudio","playbackTF","isPlayVod",",height:","websocketOpenTimeout","isFmp4","onerror","has loaded but decoderWorker is null and destroy directly","workerFetchStream","indexOf","playbackPause","448467rDAohe","mseDecoder","has not loaded and destroy directly","reload","decode","kBps","bind","updatePlayVodNextIFrame","_listenPlayVodEvents","isPs","webcodecsDecoder","isWasmMp4","channels","networkDelayTimeout","useOldWasm","listenPlaybackEvents","error","971404UBYVRv","isRecordTypeFlv","updateVideoTimestamp","URL","_listenPlaybackEvents","emitTsPrivateData","websocketClose","useOffscreen","wasm://","isPlayback","debugError","videoStart","decoderWorker","decoderOld","destroyResolve","listenPlayVodEvents","useWasm","initVideo","initCanvasViewSize","play","_decodeAudioNoDelay","fetchStream","streamVbps","cts"," or height ","isTs","updateForwardMaxRateDecodeIFrame","480532wlqEGW","sendWsMessage","addAACSequenceHeader","outOfMemoryWasm","emitError","pushTempStream"," is empty","msg ts:","webgl2","init","removeSeekingTimestamp","audioChannelError","updateStats","onmessage and workerFetch response websocketOpenTimeout but stream is null","key","$videoElement","mseFirstRenderTime","audioCode","onerror and decoder url is ","decodeAudio","has loaded and post message to destroy","isDecoderUseCDN","1070tCLBuj","payload","msg","close","workerClearTimeout","simdDecodeError","type","streamAbps",",sampleRate:","decoderWorkerWasmError","abs","tsError","_times","updateVideoInfo","value","isDestroyed","addAudio","updatePlaybackNextIFrame","_initDecoderWorker","hasVideo","websocketError","isPlaybackPauseNotClearCacheAndCacheBeforeDecode","codecId","TAG_NAME","player","videoCodec","flvScriptData","destroyLock","audioDecode","onmessage:","demuxStart","workerSendMessage","addVideo","recording","tempStream",'importScripts("',"filename","stream","_isDestroyed","8235fowvda","setStreamFps","filename: ","message","onmessage playAudio but audio is null","isSeeking","decoderUrl","initAudioAacExtraData","debugLog","loaded","increaseLocalTimestamp","cryptoIV","mseError","init and decoder url is ","channels:"];return(Tc=function(){return t})()}!function(t){const e=wc,s=t();for(;;)try{if(189353===parseInt(e(707))/1+parseInt(e(571))/2+-parseInt(e(728))/3+parseInt(e(485))/4*(parseInt(e(649))/5)+parseInt(e(613))/6*(parseInt(e(458))/7)+-parseInt(e(692))/8+parseInt(e(546))/9*(-parseInt(e(507))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Tc);class Ic{constructor(t){const e=wc;this.player=t,this.TAG_NAME="decoderWorker",this[e(472)]=null,this[e(511)]=null,this[e(636)]=null;let s=t[e(708)].decoder;if(this.decoderWorkerCloseTimeout=null,this[e(545)]=!1,this[e(534)]=!1,this[e(594)]=!1,xi(this[e(531)][e(708)][e(474)])?s=this[e(531)]._opt[e(660)]?this[e(531)][e(717)]()||this[e(531)][e(671)]()||xi(this[e(531)][e(708)].hasAudio)?t._opt.decoderHardNotWasm:t[e(708)][e(628)]:t[e(708)].decoderAudio:this.player[e(708)][e(455)]&&(s=t[e(708)][e(471)]),this.decoderUrl=s,0===s[e(726)](e(564))&&this[e(531)][e(708)][e(506)]){const t=new Blob([e(542)+s+'")'],{type:e(639)});s=window[e(461)][e(601)](t),this[e(636)]=s,this[e(511)]=setTimeout(()=>{const t=e;window[t(461)].revokeObjectURL(this[t(636)]),this[t(636)]=null,this[t(511)]=null},P)}this[e(470)]=new Worker(s),this[e(603)]={updatePlaybackIsPause:this[e(642)].bind(this),updatePlaybackNextFrame:this.updatePlaybackNextFrame.bind(this),updatePlaybackNextIFrame:this[e(524)].bind(this),updatePlayVodNextFrame:this.updatePlayVodNextFrame[e(447)](this),updatePlayVodNextIFrame:this[e(448)].bind(this)},this[e(525)](),this[e(462)](),this[e(449)](),t[e(554)](this[e(530)],e(559)+this[e(552)]),t.on(q.visibilityChange,()=>{const s=e;this[s(570)]({key:s(582),value:t[s(582)]})})}[Ec(709)](){return new Promise((t,e)=>{const s=wc;if(this[s(534)]=!0,this[s(531)][s(555)])if(this[s(531)][s(554)](s(470),s(505)),this.decoderWorker){const e={};this[s(531)][s(645)]()&&(e.isVideoInited=this[s(531)][s(646)]()),this.decoderWorker[s(630)]({cmd:z[s(510)],options:e}),this[s(472)]=t,this[s(531)][s(554)](this[s(530)],"start decoderWorkerCloseTimeout"),this[s(618)](),this[s(653)]=setTimeout(()=>{const t=s;this[t(618)](),this[t(545)]||(this[t(531)][t(672)](t(470),"send close but not response and destroy directly"),this[t(685)]())},2e3)}else this[s(531)][s(672)](s(470),s(724)),this[s(685)](),setTimeout(()=>{t()},0);else this[s(531)][s(554)]("decoderWorker",s(730)),this[s(685)](),setTimeout(()=>{t()},0)})}isDestroying(){return this.destroyLock}[Ec(522)](){return this[Ec(545)]}_destroy(){const t=Ec;this[t(618)](),this.workerUrl&&(window[t(461)][t(588)](this[t(636)]),this[t(636)]=null),this[t(511)]&&(clearTimeout(this.workerClearTimeout),this[t(511)]=null),this[t(470)]&&(this[t(470)][t(723)]=null,this.decoderWorker[t(693)]=null,this[t(470)].onmessage=null,this.decoderWorker.terminate(),this[t(470)]=null),this.player[t(554)](t(470),t(709)),this.destroyResolve&&(this[t(472)](),this[t(472)]=null),this[t(534)]=!1,this._isDestroyed=!0,this[t(594)]=!1}[Ec(462)](){const t=Ec;this[t(531)].isPlaybackPauseNotClearCacheAndCacheBeforeDecodeAndUseFpsRender()&&(this[t(531)][t(554)](this[t(530)],t(456)),this.player.on(q[t(727)],this[t(603)][t(642)]),this.player.on(q[t(569)],this.bound[t(712)]),this.player.on(q.playbackNextIFrame,this[t(603)][t(524)]))}[Ec(449)](){const t=Ec;this[t(531)][t(719)]()&&(this.player.debugLog(this.TAG_NAME,t(473)),this[t(531)].on(q[t(616)],this[t(603)][t(634)]),this[t(531)].on(q[t(659)],this[t(603)][t(448)]))}_initDecoderWorker(){const t=Ec;this[t(531)],this.decoderWorker[t(723)]=e=>{const s=t,i=e[s(543)]||"",r=e[s(549)]||"",n=i&&(-1!==i[s(726)](s(610))||-1!==i[s(726)](s(466))),o=i&&-1!==i.indexOf(s(658)),a=-1!==r.indexOf(s(696));n&&o&&-1!==r[s(726)](Wt[s(572)])?this[s(531)][s(554)](s(470),s(694)+i+",message: "+r,e):(this[s(531)][s(468)](s(470),s(503)+this[s(552)]+", and filename: "+i+s(656)+r,e),n?this.player[s(489)](J[s(516)],s(548)+(i||this[s(552)])+",message: "+r):a?this[s(531)].emitError(J[s(644)],"filename: "+(i||this[s(552)])+s(656)+r):(this[s(594)]=!0,this[s(531)].emitError(J[s(668)],s(548)+(i||this.decoderUrl)+",message: "+r)))},this.decoderWorker[t(693)]=e=>{const s=t;this[s(531)][s(468)](s(470),s(693),e)},this[t(470)][t(691)]=e=>{const s=t,i=e[s(595)];if(!this._isDestroyed)switch(i[s(608)]){case j[s(494)]:this[s(531)][s(554)](s(470),s(536),j[s(494)]),this[s(470)]&&this._initWork(),this.player[s(670)](q[s(651)]),this[s(531)].emit(q[s(625)]);break;case j[s(676)]:this[s(531)].debugLog(s(470),"onmessage:",j[s(676)],i[s(624)]),!this[s(531)]._times[s(586)]&&(this[s(531)][s(519)].decodeStart=os()),this[s(531)].video[s(520)]({encTypeCode:i.code});break;case j[s(532)]:this[s(531)].debugLog("decoderWorker",s(536),j[s(532)],i[s(529)]),this[s(531)][s(575)]&&this.player[s(575)].initMetaData(i[s(700)],i.codecId),this.player[s(698)].updateVideoInfo({encTypeCode:i[s(529)]});break;case j[s(502)]:this[s(531)][s(554)](s(470),s(536),j[s(502)],i[s(624)]),this[s(531)].audio&&this[s(531)][s(579)][s(619)]({encTypeCode:i.code});break;case j[s(637)]:this[s(531)][s(554)](s(470),s(536),j[s(637)]),this.player[s(575)]&&this[s(531)].recorder[s(553)](i[s(700)]);break;case j[s(475)]:if(this[s(531)][s(554)](s(470),"onmessage:",j[s(475)],s(593)+i.w+s(720)+i.h),Vs(i.w)||Vs(i.h))return void this[s(531)][s(489)](J[s(681)],"video width "+i.w+s(482)+i.h+s(491));if(this[s(531)][s(698)][s(623)](),this[s(531)].video[s(520)]({width:i.w,height:i.h}),!(this.player[s(708)][s(563)]||ui(i.w)||this[s(531)][s(591)]()!==lt[s(566)]&&this.player.getCanvasRenderType()!==lt[s(493)]))return void this[s(531)][s(489)](J.webglAlignmentError);this[s(531)][s(698)][s(476)](),this[s(531)][s(467)]()?(this[s(531)].video[s(587)](),this[s(531)].video.initVideoDelay()):this[s(531)][s(719)]();break;case j[s(612)]:if(this[s(531)][s(554)](s(470),"onmessage:",j[s(612)],s(560)+i[s(453)]+s(515)+i[s(611)]),i.channels>2)return void this[s(531)][s(489)](J[s(496)],s(654)+i[s(453)]+", max is 2");this.player[s(579)]&&(this[s(531)][s(579)].updateAudioInfo(i),this[s(531)][s(708)].playType===p.player?this.player.audio[s(561)]():this[s(531)][s(708)][s(633)]===p[s(718)]?this[s(531)][s(579)].initScriptNode():this[s(531)][s(719)]()&&this.player[s(579)].initScriptNode());break;case j.render:if(this.player[s(647)]())return;if(!this[s(531)][s(698)])return void this[s(531)][s(672)](s(470),s(573));if(this.player.isPlayer()){if(xi(this[s(531)][s(698)][s(699)]()))return void this[s(531)].debugWarn(s(470),"onmessage render but video has not init");this.player[s(698)][s(600)](i),this[s(531)][s(690)](),this[s(531)][s(497)]({dfps:!0,buf:i[s(596)]}),!this[s(531)][s(519)][s(469)]&&(this[s(531)][s(519)][s(469)]=os(),this.player[s(604)]())}else if(this.player[s(467)]())this[s(531)][s(497)]({dfps:!0}),xi(this[s(531)][s(727)])?(this[s(531)][s(702)].isUseLocalCalculateTime&&this[s(531)].playback[s(556)](),this[s(531)][s(702)][s(635)]?this[s(531)][s(698)][s(577)](i):this.player[s(698)].render$2(i)):this[s(531)][s(702)][s(528)]()&&this.player[s(702)][s(635)]&&this[s(531)].video[s(577)](i);else if(this[s(531)][s(719)]())if(this[s(531)][s(706)][s(551)]()){const t=this[s(531)].playVod[s(562)],e=this[s(531)][s(706)].playingTimestamp,r=i.ts-t,n=Math[s(517)](r),o=i.ts-e,a=Math.abs(t-e),h=Math[s(517)](o)<1e3&&a>1e3;n<500||!h&&r>1e3?(this[s(531)].playVod[s(495)](),this[s(531)][s(497)]({dfps:!0}),this[s(531)][s(698)].render$2(i)):this[s(531)][s(554)]("decoderWorker",s(536),j[s(600)],s(492)+i.ts+s(674)+e+s(666)+t+s(631)+n+s(578))}else this[s(531)][s(497)]({dfps:!0}),this.player[s(698)][s(640)](i),!this[s(531)][s(519)][s(469)]&&(this[s(531)][s(519)][s(469)]=os(),this[s(531)][s(604)]());break;case j[s(574)]:this[s(531)][s(575)]&&this[s(531)][s(575)][s(584)]&&this.player[s(708)][s(678)]===f[s(565)]&&this[s(531)][s(575)].handleAddNaluTrack(i.buffer,i.isIFrame,i.ts,i[s(481)]);break;case j.audioNalu:this[s(531)][s(575)]&&this[s(531)][s(575)][s(584)]&&this[s(531)][s(708)][s(678)]===f[s(565)]&&this[s(531)][s(575)][s(452)]()&&this[s(531)].recorder[s(701)](i.buffer,i.ts);break;case j[s(669)]:const{webcodecsDecoder:t,mseDecoder:e}=this[s(531)];if(this[s(531)][s(497)]({buf:i[s(596)]}),this.player[s(708)].useWCS&&!this[s(531)]._opt[s(465)]){const e=new Uint8Array(i.payload);t[s(602)](e,i.ts,i.isIFrame,i.cts)}else if(this.player[s(708)][s(661)]){const t=new Uint8Array(i[s(508)]);e[s(602)](t,i.ts,i.isIFrame,i[s(481)])}break;case j[s(629)]:if(this.player._opt[s(661)]){const t=new Uint8Array(i[s(508)]);this[s(531)][s(729)][s(504)](t,i.ts,i[s(481)])}else if(this[s(531)]._opt[s(581)]&&!this[s(531)][s(708)][s(465)]){const t=new Uint8Array(i.payload);this[s(531)][s(451)][s(504)](t,i.ts,i[s(481)])}break;case j[s(675)]:if(this[s(531)][s(647)]())return;if(!this[s(531)][s(579)])return void this[s(531)][s(672)](s(470),s(550));if(!this[s(531)][s(708)][s(526)])return void this[s(531)][s(690)]();this.player[s(708)][s(633)]===p[s(531)]?this[s(531)][s(579)][s(477)](i[s(700)],i.ts):this[s(531)][s(708)][s(633)]===p[s(718)]?xi(this[s(531)][s(727)])?this[s(531)][s(579)].play(i.buffer,i.ts):this.player.playback[s(528)]()&&this[s(531)][s(702)][s(635)]&&this[s(531)].audio.play(i[s(700)],i.ts):this[s(531)].isPlayVod()&&xi(this[s(531)].playVodPause)&&this[s(531)].audio[s(477)](i[s(700)],i.ts);break;case j.workerFetch:if(i[s(513)]===q[s(567)])this[s(531)][s(544)]?this[s(531)][s(544)][s(670)](q.streamSuccess):this.player[s(672)]("decoderWorker","onmessage and workerFetch response stream success but stream is null");else if(i[s(513)]===q.streamRate)this[s(531)][s(670)](q[s(733)],(i[s(521)]/1e3)[s(705)](2));else if(i[s(513)]===q[s(598)])this[s(531)]?(i[s(521)]===u.websocket&&this[s(531)].emit(q[s(464)],i[s(509)]),this.player[s(670)](q[s(598)],i.msg)):this[s(531)][s(672)](s(470),s(665));else if(i.type===q[s(607)])this[s(531)][s(599)]();else if(i[s(513)]===J.websocketError)this[s(531)][s(489)](J[s(527)],i[s(521)]);else if(i[s(513)]===J[s(721)])this[s(531)]&&this[s(531)].stream?this.player[s(544)][s(670)](J[s(721)],i[s(509)]):this[s(531)].debugWarn(s(470),s(498));else if(i[s(513)]===J.fetchError)this[s(531)]&&this[s(531)][s(544)]?this[s(531)].stream[s(670)](J[s(626)],i[s(521)]):this.player[s(672)](s(470),"onmessage and workerFetch response fetch error but stream is null");else if(i[s(513)]===J.fetchErrorWorker)this[s(531)][s(489)](J.fetchError,i[s(521)]);else if(i[s(513)]===q[s(514)])this[s(531)][s(497)]({abps:i[s(521)]});else if(i.type===q[s(480)])!this.player[s(519)][s(537)]&&(this[s(531)]._times[s(537)]=os()),this.player[s(497)]({vbps:i[s(521)]});else if(i.type===q.streamDts)this[s(531)][s(497)]({dts:i[s(521)]});else if(i[s(513)]===q[s(655)])this[s(531)].updateStats({netBuf:i.value});else if(i[s(513)]===q.networkDelayTimeout)this[s(531)].emit(q[s(454)],i[s(521)]);else if(i[s(513)]===q[s(673)]){const t=JSON[s(687)](i[s(521)]);this[s(531)][s(497)]({workerStats:t})}else i[s(513)]===q.websocketOpen&&this.player[s(670)](q.websocketOpen);break;case j[s(621)]:this.player&&(this[s(531)].videoIframeIntervalTs=i[s(521)]);break;case j[s(590)]:this[s(531)]&&this[s(531)][s(497)]({isDropping:!0});break;case j.checkFirstIFrame:this.player.decoderCheckFirstIFrame();break;case j[s(662)]:this.player&&this[s(531)].video&&this[s(531)].video[s(547)](i[s(521)]);break;case j[s(689)]:this[s(531)][s(489)](J[s(689)],i.value);break;case j[s(652)]:this[s(531)][s(489)](J.wasmWidthOrHeightChange,i.value);break;case j.simdDecodeError:this[s(531)].emitError(J[s(512)]);break;case j[s(667)]:this.player.emitError(J[s(667)]);break;case j[s(632)]:this[s(531)][s(554)](s(470),s(536),j[s(632)]),Xi()&&(this[s(531)][s(709)](),console[s(457)](decodeURIComponent(ce)),alert(decodeURIComponent(le)),window.location[s(731)]());break;case j[s(716)]:this.player[s(554)]("decoderWorker",s(536),j.closeEnd),this._destroy();break;case j[s(541)]:this[s(531)]&&this.player[s(490)](i[s(700)]);break;case j[s(711)]:if(this.player){const t=new Uint8Array(i.buffer),e=$e(Je(t),i[s(614)]);this[s(531)].emitVideoSei({ts:i.ts,data:e.payload,type:e.type,uuid:e[s(605)],size:e[s(715)],originData:t})}break;case j.tsPrivateData:this[s(531)]&&this.player[s(463)](new Uint8Array(i.buffer));break;case j[s(533)]:if(this[s(531)]){if(this[s(531)].isRecordTypeFlv()){const t=new Uint8Array(i.buffer);this[s(531)][s(575)].addMetaData(t)}const t=vc(new Uint8Array(i[s(700)]));t&&t[s(677)]&&this[s(531)][s(622)](t[s(677)])}break;case j[s(609)]:if(this.player&&this[s(531)][s(459)]()){const t=new Uint8Array(i[s(700)]);this[s(531)].recorder[s(487)](t,i.ts)}break;case j[s(710)]:if(this.player&&this[s(531)][s(459)]()){const t=new Uint8Array(i[s(700)]);this[s(531)][s(575)].addVideoSequenceHeader(t,i.ts)}break;case j[s(592)]:if(this.player&&this[s(531)].isRecordTypeFlv()&&this[s(531)][s(540)]){const t=new Uint8Array(i[s(700)]);i[s(513)]===W[s(698)]?this[s(531)][s(575)][s(539)](t,i.ts):i[s(513)]===W[s(579)]&&this[s(531)][s(575)][s(523)](t,i.ts)}break;case j[s(627)]:this[s(531)]&&(this[s(531)][s(554)](s(470),"onmessage:",j[s(627)]),this[s(531)][s(698)][s(500)][s(638)]=i[s(627)]);break;case j[s(501)]:this[s(531)]&&(this[s(531)][s(554)](s(470),s(536),j.mseFirstRenderTime,i[s(521)]),this[s(531)][s(704)].firstRenderTime=Number(i[s(521)]));break;case j[s(558)]:this[s(531)]&&(this[s(531)][s(554)](s(470),s(536),j[s(558)],i.value,i.msg),this.player[s(489)](i[s(521)],i[s(509)]));break;case j[s(580)]:this[s(531)]&&(this[s(531)][s(670)](q[s(651)]),this[s(531)][s(554)](this.TAG_NAME,"onmessage:",j[s(580)]," and init decoder worker"),this[s(531)][s(489)](J.notSupportNewWasm));break;case j[s(488)]:this.player&&(this.player[s(670)](q.decoderWorkerInit),this.player[s(554)](this[s(530)],s(536),j.outOfMemoryWasm,s(695)),this[s(531)][s(489)](J.outOfMemoryWasm));break;case j[s(583)]:this[s(531)]&&(this[s(531)].emit(q[s(651)]),this[s(531)][s(554)](this[s(530)],s(536),j[s(583)],s(695)),this[s(531)][s(489)](J[s(583)]));break;case j[s(663)]:this[s(531)]&&this.player[s(670)](q[s(663)],i[s(521)]);break;case j[s(518)]:this[s(531)]&&(this[s(531)].debugLog(this[s(530)],"onmessage:",j[s(518)],i[s(521)],i[s(509)]),this[s(531)][s(489)](i[s(521)],i[s(509)]));break;case j[s(576)]:this[s(531)]&&(this[s(531)][s(697)]=i.value);break;default:this[s(531)][i[s(608)]]&&this.player[i.cmd](i)}}}[Ec(648)](){const t=Ec,e=this[t(531)].getWorkerConfig();this.decoderWorker.postMessage({cmd:z[t(494)],opt:JSON[t(650)](e)}),this[t(531)]._opt[t(615)]&&this[t(531)]._opt[t(615)].byteLength>0&&this[t(531)]._opt[t(557)]&&this.player[t(708)][t(557)].byteLength>0&&(this[t(570)]({key:t(615),value:this[t(531)][t(708)][t(615)]}),this[t(570)]({key:"cryptoIV",value:this.player[t(708)][t(557)]}))}[Ec(602)](t,e,s){const i=Ec;this.player[i(643)]()?this[i(714)](t,e,s):this[i(531)][i(467)]()?this.player[i(682)]()?s&&this[i(714)](t,e,s):this._decodeVideoNoDelay(t,e,s):this[i(531)][i(719)]()&&this._decodeVideoNoDelay(t,e,s)}_decodeVideo(t,e,s){const i=Ec,r={type:W[i(698)],ts:Math.max(e,0),isIFrame:s};this[i(470)][i(630)]({cmd:z[i(732)],buffer:t,options:r},[t[i(700)]])}_decodeVideoNoDelay(t,e,s){const i=Ec;this[i(531)][i(497)]({p2dfps:!0}),this[i(470)][i(630)]({cmd:z.videoDecode,buffer:t,ts:Math[i(606)](e,0),isIFrame:s},[t[i(700)]])}decodeAudio(t,e){const s=Ec;this[s(531)].isPlayer()?this[s(478)](t,e):this[s(531)][s(467)]()?this[s(531)].isPlaybackOnlyDecodeIFrame()||this._decodeAudioNoDelay(t,e):this[s(531)].isPlayVod()&&this[s(478)](t,e)}_decodeAudio(t,e){const s=Ec,i={type:W.audio,ts:Math[s(606)](e,0)};this[s(470)].postMessage({cmd:z.decode,buffer:t,options:i},[t[s(700)]])}[Ec(478)](t,e){const s=Ec;this[s(470)][s(630)]({cmd:z[s(535)],buffer:t,ts:Math.max(e,0)},[t[s(700)]])}[Ec(570)](t){const e=Ec;this[e(470)]&&this.decoderWorker[e(630)]({cmd:z[e(688)],key:t[e(499)],value:t.value})}[Ec(725)](t,e={}){const s=Ec,{_opt:i}=this.player;let r=[];e[s(680)]&&(r=e.protocols,delete e[s(680)]);const n={protocol:i[s(585)],isFlv:i[s(679)],isFmp4:i[s(722)],isMpeg4:i.isMpeg4,isNakedFlow:i[s(703)],isTs:i[s(483)],isPs:i[s(450)],options:e};this[s(470)].postMessage({cmd:z[s(479)],url:t,protocols:r,opt:JSON[s(650)](n)})}clearWorkBuffer(t=!1){const e=Ec;this[e(470)].postMessage({cmd:z[e(713)],needClear:t})}[Ec(538)](t){const e=Ec;this[e(470)].postMessage({cmd:z[e(486)],message:t})}[Ec(460)](t){const e=Ec;this[e(470)][e(630)]({cmd:z[e(597)],message:t})}updatePlaybackIsPause(t){const e=Ec;this[e(470)].postMessage({cmd:z[e(657)],isPause:t})}[Ec(712)](){const t=Ec;this[t(470)][t(630)]({cmd:z[t(569)],isIn:!0})}[Ec(617)](){const t=Ec;this[t(470)][t(630)]({cmd:z[t(569)],isIn:!1})}[Ec(524)](t){const e=Ec;this[e(470)].postMessage({cmd:z[e(684)],isIn:!0,nextIFrameTime:t})}[Ec(686)](){const t=Ec;this.decoderWorker[t(630)]({cmd:z[t(684)],isIn:!1})}[Ec(634)](){const t=Ec;this[t(470)].postMessage({cmd:z[t(616)],isIn:!0})}[Ec(589)](){const t=Ec;this[t(470)].postMessage({cmd:z[t(616)],isIn:!1})}[Ec(448)](t){const e=Ec;this[e(470)][e(630)]({cmd:z[e(659)],isIn:!0,nextIFrameTime:t})}[Ec(641)](){const t=Ec;this[t(470)][t(630)]({cmd:z.playVodNextIFrame,isIn:!1})}[Ec(620)](t){const e=Ec;this[e(470)][e(630)]({cmd:z[e(664)],fps:t})}[Ec(683)](){this[Ec(568)]()}[Ec(484)](t){const e=Ec;this[e(470)].postMessage({cmd:z[e(484)],rate:t})}_clearCloseTimeout(){const t=Ec;this[t(653)]&&(this.player[t(554)](this[t(530)],t(618)),clearTimeout(this.decoderWorkerCloseTimeout),this[t(653)]=null)}}function kc(){const t=["codecId","initMetaData","checkFirstIFrame","isInitError","initCanvasViewSize","streamVbps",",message: ","_handleRender","decoderScriptId","bound","updateVideoTimestamp","simdDecodeError","playType","2209890uEpYsR","handleRender","checkInterval","workerFetch","_clearCloseTimeout()","workerUrl","video","seekingTimestamp","isDestroying"," and seekingTimestamp:","delay","_decodeAudioNoDelay","decoderScript init ,has not load decoder and next start interval check","streamAbps","getStreamByProtocol","render$2","_times","audioChannelError","workerSendMessage","_listenPlayVodEvents","value","init and decoder window name is ","_handleSimdDecodeError","decoderWorkerInit"," and decoder is loaded","onmessage","getAudioBufferSize"," and init decoder worker","updateVideoInfo","updateMetaData","removeSeekingTimestamp","catch","initScriptNode","_handleInit","_newDecoderWorker","emitTsPrivateData",", not init demux worker","websocketOpenTimeout","loadScript init , has not load decoder and next start interval check","playVodPause","demuxWorker init error, and set isInitError = true","updatePlaybackIsPause","cryptoKey","initVideo","fetchError","1017969aJRKNt","videoSequenceHeader","simd",", max is ","http","webgl"," is empty","render","mtStreamStats","init and window decoder name is ","onmessage playAudio but audio is null","isNakedFlow","playbackPause","_opt",", and filename: ","isPlaybackOnlyDecodeIFrame","channels","decoderHardNotWasm","video width ","_handleAudioAACSequenceHeader","isSeeking","isRecording","stringify","isFlv","isHevc","playbackNextIFrame","notSupportNewWasm","onmessageerror","_handleSimdDecodeDelayTimeout","getHasInit","destroy","TAG_NAME_DEMUX","_tempMtStreamStats","updateAudioInfo","handlePlayToRenderTimes","msg","6184976JJgGsg","isPlayVod","_initDemuxWorker","onmessage and workerFetch response stream success but stream is null","start decoderWorkerCloseTimeout","visibilityChange","player",",sampleRate:","toFixed","audioNalu","_destroy","updateStats","decoderCheckFirstIFrame","onmessage and workerFetch response websocketOpenTimeout but stream is null","playAudio","onmessage render but video is null","emit","decoder-pro-simd-mt.js","exitPlaybackNextFrame","playback","streamEnd","revokeObjectURL","updateStreamEndInner"," and diff:","isDestroyedOrClosed"," and decoder is not loaded","audio channel is ","onmessage render but video has not init","flvBufferData","updatePlaybackNextFrame","_isDestroyed","cmd","onmessage:","type","_handleAudioCode","tsError","getAudioContextSampleRate","MtDecoderWorker MtDemuxWorker","streamStats","playbackIsPause","fetchStream","decoder","reload","parse","streamDts"," or height ","close","_startCheckDecoder","decodeStart","assign","isPlayer","aacSequenceHeader","getElementById","protocol","decoderWorkerInitError","updatePlayVodNextIFrame","playbackNextFrame"," and ignore render","streamRate","TAG_NAME","tempStream","updatePlayVodNextFrame"," and mtType is ","isUseFpsRender","payload","streamSuccess","98170fWNpZN","isIFrame","p2dfps","debugError","decoderWorkerUncaughtError","initAudio","_handleWasmWidthOrHeightChange","destroyResolve","code","_handleInitAudio","videoCode","addMetaData","demuxWorker","videoStart","workerClearTimeout","cryptoIV","setStreamFps","_decodeVideoNoDelay","websocketOpen","location","_handleNotSupportNewWasm","sampleRate","initFps","playVod","send close but not response and destroy directly","URL","recorder","mtDemuxerWorkerInit","isFmp4","increaseLocalTimestamp","clearWorkBuffer","addAudio","debugLog","handleAddNaluTrack","decoderMtWorker","handleAddAudioTrack","_handleVideoCodec","exitPlayVodNextIFrame","cts","createObjectURL","decodeAudio","hasVideo","visibility","simdDecodeDelayTimeout","websocketError","clearBuffer","isPs"," and playingTimestamp ","indexOf","exitPlayVodNextFrame","data","audioPayload","playbackTF","windiwDecoderName","onerror","simdH264DecodeVideoWidthIsTooLarge","playbackStreamVideoFps","onMetaData","mp4","init","videoIframeIntervalTs","_handleInitVideo","isUseLocalCalculateTime","recording","MtDecoderWorker","isPlayback","bind","updatePlaybackNextIFrame","_handleWorkerEnd","_handleMtStreamStats","decodeVideo","_handleOutOfMemoryWasm","emitVideoSei","width:","playing","_stopCheckDecoder","addVideo","networkDelayTimeout","isTs","6ziGQXq","load decoder error","webgl2","19528QByhCc","flvScriptData","recordType","videoInfoError","videoCodec","updateConfig","demuxStart","isRecordTypeFlv","videoNalu","terminate","tsPrivateData"," has loaded,init and decoder is ","play","workerEnd","audio","init and decoder is ","outOfMemoryWasm","wasmWidthOrHeightChange","4kmJILT","630xXpzgI","bindMediaStream","pushTempStream","application/javascript","updateWorkConfig","postMessage","demuxWorkerUrl","_initDecoderWorker","isPlaybackPauseNotClearCacheAndCacheBeforeDecode","decoder-pro-f-simd-mt.js","_handleSimdH264DecodeVideoWidthIsTooLarge","mtDecoderWorkerInit","destroyLock","size","script ","protocols","audioAACSequenceHeader","2474KEcXQQ","debugWarn","_initWork","isDecoderUseCDN","4797991ZTWNfB","loaded","getCanvasRenderType","error","filename: ","_clearCloseTimeout","updateForwardMaxRateDecodeIFrame","isDestroyed","sendWsMessage","kBps","buffer","decoderWorkerCloseTimeout","36qVncON","_listenPlaybackEvents","initVideoDelay","isPlaybackPauseNotClearCacheAndCacheBeforeDecodeAndUseFpsRender","_handlePlayAudio","stream","emitError","websocketStringMsg","key","openWebglAlignment","_handleVideoCode","filename","abs","iframeIntervalTs","_handleDecoderInit","closeEnd","exitPlaybackNextIFrame","message","audioCode","pushData","onmessage and workerFetch response fetch error but stream is null"];return(kc=function(){return t})()}const _c=Cc;function Cc(t,e){const s=kc();return(Cc=function(t,e){return s[t-=222]})(t,e)}!function(t){const e=Cc,s=t();for(;;)try{if(450435===parseInt(e(367))/1*(-parseInt(e(351))/2)+-parseInt(e(446))/3*(-parseInt(e(333))/4)+-parseInt(e(401))/5*(-parseInt(e(312))/6)+-parseInt(e(482))/7+parseInt(e(315))/8*(parseInt(e(334))/9)+-parseInt(e(233))/10+parseInt(e(355))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(kc);class Dc{constructor(t){const e=Cc;this[e(488)]=t,this[e(226)]=e(297),this[e(477)]=e(519),this[e(267)]=null,this.demuxWorker=null,this[e(406)]=null,this.demuxWorkerUrl=t[e(459)][e(463)],this[e(247)]=null,this[e(403)]=null,this[e(512)]=!1,this[e(345)]=!1,this.mtDemuxerWorkerInit=!1,this[e(478)]=null,this[e(366)]=null,this.destroyLock=!1,this.isInitError=!1;let s=t._opt[e(523)],i=ae.wasm;s[e(281)](e(343))>-1?i=ae.fSimd:s[e(281)](e(499))>-1&&(i=ae[e(448)]);const r="JessibucaProMt"+i+"Decoder";if(this[e(286)]=r,this[e(396)]=r+"Id",this[e(397)]={_handleDecoderInit:this._handleDecoderInit.bind(this),_handleVideoCode:this[e(377)][e(299)](this),_handleVideoCodec:this[e(269)][e(299)](this),_handleAudioCode:this[e(516)][e(299)](this),_handleAudioAACSequenceHeader:this._handleAudioAACSequenceHeader[e(299)](this),_handleInitVideo:this[e(294)][e(299)](this),_handleInitAudio:this[e(242)][e(299)](this),_handleRender:this[e(395)][e(299)](this),_handlePlayAudio:this[e(371)][e(299)](this),_handleSimdH264DecodeVideoWidthIsTooLarge:this[e(344)].bind(this),_handleWasmWidthOrHeightChange:this[e(239)][e(299)](this),_handleSimdDecodeError:this[e(423)][e(299)](this),_handleWorkerEnd:this._handleWorkerEnd[e(299)](this),_handleNotSupportNewWasm:this[e(253)][e(299)](this),_handleOutOfMemoryWasm:this[e(304)][e(299)](this),_handleMtStreamStats:this[e(302)].bind(this),_handleSimdDecodeDelayTimeout:this[e(474)].bind(this),updatePlaybackIsPause:this[e(442)][e(299)](this),updatePlaybackNextFrame:this.updatePlaybackNextFrame[e(299)](this),updatePlaybackNextIFrame:this[e(300)][e(299)](this)},this[e(488)][e(265)](this[e(226)],e(422)+r+" and decoderScriptId is "+this[e(396)]),r in window)this[e(435)](),this[e(488)][e(265)](this.TAG_NAME,e(330)+s+e(229)+i+e(425));else{document[e(534)](this[e(396)])?(this[e(488)].debugLog(this[e(226)],e(348)+this[e(396)]+e(326)+s+e(229)+i+e(507)),r in window?this[e(435)]():(this.player[e(265)](this[e(226)],e(413)),this[e(529)]())):(this[e(488)][e(265)](this[e(226)],e(330)+s+e(229)+i+" and decoder is not loaded next load it"),(n=s,o=this[e(396)],new Promise((t,e)=>{const s=_i,i=document[s(724)]("script");if(i.type=s(695),i[s(572)]=n,i.onload=t,i[s(518)]=e,o){i.id=o;const t=document[s(469)](o);t&&document[s(668)][s(526)](t)}document[s(668)][s(629)](i)})).then(()=>{const t=e;r in window?this[t(435)]():(this[t(488)][t(265)](this[t(226)],t(439)),this._startCheckDecoder())})[e(432)](t=>{const s=e;this[s(391)]=!0,this[s(488)][s(236)](this.TAG_NAME,s(313),t),this.player[s(373)](J[s(536)],"load decoder script error")}))}var n,o;this[e(368)](),this[e(420)]()}[_c(476)](){return new Promise((t,e)=>{const s=Cc;if(this[s(346)]=!0,this[s(488)][s(356)])if(this[s(488)].debugLog(this.TAG_NAME,"has loaded and post message to destroy"),this.demuxWorker){const e={};this.demuxWorker[s(339)]({cmd:z[s(528)],options:e}),this.destroyResolve=t,this[s(488)].debugLog(this[s(226)],s(486)),this[s(360)](),this[s(366)]=setTimeout(()=>{const t=s;this._clearCloseTimeout(),this._isDestroyed||(this[t(488)].debugWarn(this.TAG_NAME,t(257)),this._destroy())},2e3)}else this[s(488)].debugWarn(this[s(226)],"has loaded but decoderWorker is null and destroy directly"),this[s(492)](),setTimeout(()=>{t()},0);else this[s(488)][s(265)](this.TAG_NAME,"has not loaded and destroy directly"),this[s(492)](),setTimeout(()=>{t()},0)})}_destroy(){const t=_c;this._stopCheckDecoder(),this[t(360)](),this[t(406)]&&(window[t(258)][t(503)](this[t(406)]),this.workerUrl=null),this[t(247)]&&(clearTimeout(this[t(247)]),this[t(247)]=null),this[t(267)]&&(this[t(267)][t(476)](),this[t(267)]=null),this[t(245)]&&(this[t(245)].onerror=null,this[t(245)][t(473)]=null,this[t(245)][t(426)]=null,this[t(245)][t(324)](),this.demuxWorker=null),this[t(286)]=null,this.decoderScriptId=null,this._tempMtStreamStats=null,this[t(397)]=null,this[t(488)].debugLog(this[t(226)],"destroyed"),this[t(240)]&&(this[t(240)](),this.destroyResolve=null),this.destroyLock=!1,this[t(512)]=!0,this[t(391)]=!1}_clearCloseTimeout(){const t=_c;this[t(366)]&&(this[t(488)][t(265)](this.TAG_NAME,t(405)),clearTimeout(this[t(366)]),this.decoderWorkerCloseTimeout=null)}[_c(435)](){const t=_c;this[t(267)]=new window[this.windiwDecoderName](this[t(488)],{sampleRate:this[t(488)][t(329)]&&this.player[t(329)][t(518)]()||se,audioBufferSize:this[t(488)][t(329)]&&this.player[t(329)][t(427)]()||1024}),this[t(341)](),this.player.isStreamByProtocol()?(this[t(488)][t(265)](this[t(226)],"stream by protocol is "+this[t(488)][t(415)]()+t(437)),this[t(260)]=!0):this[t(484)]()}[_c(529)](){this.checkInterval=setInterval(()=>{const t=Cc;this[t(286)]in window&&(this[t(488)].debugLog(this[t(226)],t(455)+this[t(286)]+t(425)),this[t(308)](),this._newDecoderWorker())},200)}[_c(308)](){const t=_c;this[t(403)]&&(clearInterval(this.checkInterval),this[t(403)]=null)}[_c(409)](){return!1}[_c(362)](){return this[_c(512)]}[_c(368)](){const t=_c;this.player[t(370)]()&&(this[t(488)][t(265)](this[t(226)],"listenPlaybackEvents"),this[t(488)].on(q[t(458)],this[t(397)].updatePlaybackIsPause),this[t(488)].on(q[t(223)],this[t(397)][t(511)]),this[t(488)].on(q[t(471)],this[t(397)][t(300)]))}[_c(420)](){const t=_c;this.player[t(483)]()&&this[t(488)][t(265)](this[t(226)],"listenPlayVodEvents")}_initDecoderWorker(){const t=_c;this[t(267)].on(j[t(292)],this.bound[t(381)]),this[t(267)].on(j[t(243)],this.bound._handleVideoCode),this[t(267)].on(j.videoCodec,this[t(397)][t(269)]),this[t(267)].on(j[t(385)],this[t(397)]._handleAudioCode),this[t(267)].on(j[t(350)],this[t(397)]._handleAudioAACSequenceHeader),this.decoderMtWorker.on(j[t(444)],this[t(397)]._handleInitVideo),this[t(267)].on(j[t(238)],this[t(397)][t(242)]),this.decoderMtWorker.on(j[t(453)],this[t(397)][t(395)]),this[t(267)].on(j[t(496)],this[t(397)][t(371)]),this[t(267)].on(j[t(288)],this[t(397)]._handleSimdH264DecodeVideoWidthIsTooLarge),this[t(267)].on(j[t(332)],this[t(397)][t(239)]),this[t(267)].on(j[t(399)],this[t(397)][t(423)]),this[t(267)].on(j[t(328)],this[t(397)][t(301)]),this[t(267)].on(j[t(472)],this[t(397)]._handleNotSupportNewWasm),this.decoderMtWorker.on(j.outOfMemoryWasm,this[t(397)][t(304)]),this[t(267)].on(j[t(454)],this[t(397)]._handleMtStreamStats),this[t(267)].on(j[t(276)],this.bound._handleSimdDecodeDelayTimeout)}[_c(484)](){const t=_c;let e=this[t(340)];if(0===e.indexOf(t(450))&&this[t(488)][t(459)][t(354)]){const s=new Blob(['importScripts("'+e+'")'],{type:t(337)});e=window[t(258)][t(272)](s),this[t(406)]=e,this[t(247)]=setTimeout(()=>{const e=t;window[e(258)].revokeObjectURL(this[e(406)]),this[e(406)]=null,this[e(247)]=null},P)}this.demuxWorker=new Worker(e),this[t(488)].debugLog(this[t(226)],"init demux worker and decoder url is "+this.demuxWorkerUrl),this[t(488)].on(q[t(487)],()=>{const e=t;this.updateWorkConfig({key:e(275),value:this[e(488)][e(275)]})}),this.demuxWorker[t(287)]=e=>{const s=t,i=e[s(378)]||"",r=e[s(384)]||"",n=-1!==r.indexOf("Uncaught ");this[s(488)][s(236)](this.TAG_NAME_DEMUX,"onerror and decoder url is "+this[s(340)]+s(460)+i+s(394)+r,e),n?this[s(488)][s(373)](J[s(237)],s(359)+(i||this[s(340)])+s(394)+r):(this[s(488)][s(265)](this[s(226)],s(441)),this[s(391)]=!0,this[s(488)].emitError(J[s(536)],s(359)+(i||this[s(340)])+",message: "+r))},this.demuxWorker[t(473)]=e=>{const s=t;this.player[s(236)](this[s(477)],"onmessageerror",e)},this.demuxWorker.onmessage=e=>{const s=t,i=e[s(283)];if(!this._isDestroyed)switch(i[s(513)]){case j.init:this[s(488)][s(265)](this[s(477)],s(514),j.init),this.demuxWorker&&this[s(353)](),this[s(260)]=!0,this[s(434)]();break;case j[s(323)]:this[s(488)][s(259)]&&this[s(488)].recorder[s(467)]&&this[s(488)][s(459)][s(317)]===f[s(291)]&&this[s(488)][s(259)][s(266)](i[s(365)],i[s(234)],i.ts,i[s(271)]);break;case j[s(491)]:this[s(488)][s(259)]&&this[s(488)][s(259)].isRecording&&this[s(488)]._opt[s(317)]===f[s(291)]&&this[s(488)][s(259)].isWasmMp4()&&this[s(488)][s(259)][s(268)](i[s(365)],i.ts);break;case j.videoPayload:this.player[s(493)]({buf:i[s(411)]}),this[s(303)](new Uint8Array(i[s(231)]),i.ts,i[s(234)],i[s(271)]);break;case j[s(284)]:this.decodeAudio(new Uint8Array(i.payload),i.ts);break;case j[s(404)]:if(i[s(515)]===q[s(232)])this[s(488)][s(372)]?this[s(488)][s(372)][s(498)](q[s(232)]):this[s(488)][s(352)](this[s(477)],s(485));else if(i.type===q[s(225)])this[s(488)].emit(q[s(364)],(i[s(421)]/1e3)[s(490)](2));else if(i[s(515)]===q[s(502)])this[s(488)]?(i[s(421)]===u.websocket&&this.player[s(498)](q.websocketClose,i[s(481)]),this[s(488)][s(498)](q[s(502)],i.msg)):this[s(488)][s(352)](this.TAG_NAME_DEMUX,"onmessage and workerFetch response stream end but player is null");else if(i[s(515)]===q.streamEndInner)this.player[s(504)]();else if(i.type===J[s(277)])this.player[s(373)](J[s(277)],i.value);else if(i[s(515)]===J.websocketOpenTimeout)this[s(488)]&&this[s(488)][s(372)]?this.player[s(372)][s(498)](J[s(438)],i.msg):this[s(488)][s(352)](this[s(477)],s(495));else if(i[s(515)]===J[s(445)])this.player&&this.player[s(372)]?this[s(488)][s(372)].emit(J[s(445)],i.value):this[s(488)][s(352)](this[s(477)],s(387));else if(i[s(515)]===J.fetchErrorWorker)this[s(488)][s(373)](J[s(445)],i[s(421)]);else if(i[s(515)]===q[s(414)])this[s(488)][s(493)]({abps:i[s(421)]});else if(i[s(515)]===q[s(393)])!this.player[s(417)][s(321)]&&(this[s(488)]._times[s(321)]=os()),this.player[s(493)]({vbps:i[s(421)]});else if(i.type===q[s(526)])this[s(488)][s(493)]({dts:i.value});else if(i[s(515)]===q.netBuf)this.player[s(493)]({netBuf:i[s(421)]});else if(i.type===q.networkDelayTimeout)this[s(488)][s(498)](q[s(310)],i[s(421)]);else if(i[s(515)]===q[s(520)]){let t=JSON[s(525)](i[s(421)]);this[s(478)]&&(t[s(235)]=null,t=Object[s(531)](t,this[s(478)])),this[s(488)][s(493)]({workerStats:t})}else i[s(515)]===q[s(251)]&&this[s(488)][s(498)](q[s(251)]);break;case j[s(380)]:this[s(488)]&&(this[s(488)][s(293)]=i[s(421)]);break;case j.isDropping:this.player&&this[s(488)][s(493)]({isDropping:!0});break;case j.checkFirstIFrame:this[s(488)][s(494)]();break;case j[s(289)]:this.player&&this[s(488)].video&&this[s(488)].video[s(249)](i[s(421)]);break;case j.workerEnd:this.player[s(265)](this[s(477)],s(514),j[s(328)]),Xi()&&(this.player[s(476)](),console.error(decodeURIComponent(ce)),alert(decodeURIComponent(le)),window[s(252)].reload());break;case j[s(382)]:this[s(488)][s(265)](this.TAG_NAME_DEMUX,s(514),j[s(382)]),this[s(492)]();break;case j[s(227)]:this[s(488)]&&this[s(488)][s(336)](i[s(365)]);break;case j.videoSEI:if(this[s(488)]){const t=new Uint8Array(i[s(365)]),e=$e(Je(t),i[s(470)]);this[s(488)][s(305)]({ts:i.ts,data:e[s(231)],type:e[s(515)],uuid:e.uuid,size:e[s(347)],originData:t})}break;case j[s(325)]:this[s(488)]&&this[s(488)][s(436)](new Uint8Array(i.buffer));break;case j[s(316)]:if(this[s(488)]){if(this.player[s(322)]()){const t=new Uint8Array(i.buffer);this[s(488)][s(259)][s(244)](t)}const t=vc(new Uint8Array(i[s(365)]));t&&t.onMetaData&&this[s(488)][s(430)](t[s(290)])}break;case j[s(533)]:if(this.player&&this[s(488)].isRecordTypeFlv()){const t=new Uint8Array(i.buffer);this[s(488)].recorder.addAACSequenceHeader(t,i.ts)}break;case j[s(447)]:if(this.player&&this[s(488)][s(322)]()){const t=new Uint8Array(i[s(365)]);this[s(488)].recorder.addVideoSequenceHeader(t,i.ts)}break;case j[s(510)]:if(this[s(488)]&&this[s(488)].isRecordTypeFlv()&&this.player[s(296)]){const t=new Uint8Array(i[s(365)]);i[s(515)]===W[s(407)]?this[s(488)].recorder[s(309)](t,i.ts):i[s(515)]===W[s(329)]&&this[s(488)][s(259)][s(264)](t,i.ts)}break;case j[s(374)]:this[s(488)]&&this[s(488)][s(498)](q[s(374)],i[s(421)]);break;case j[s(517)]:this[s(488)]&&(this.player[s(265)](this[s(477)],s(514),j[s(517)],i[s(421)],i[s(481)]),this[s(488)][s(373)](i[s(421)],i[s(481)]));break;default:this.player[i[s(513)]]&&this[s(488)][i[s(513)]](i)}}}[_c(303)](t,e,s,i=0){const r=_c;this[r(488)][r(532)]()?this[r(250)](t,e,s):this[r(488)][r(298)]()?this.player[r(461)]()?s&&this._decodeVideoNoDelay(t,e,s):this[r(250)](t,e,s):this[r(488)][r(483)]()&&this._decodeVideoNoDelay(t,e,s)}[_c(250)](t,e,s){const i=_c;this.player.updateStats({p2dfps:!0}),this[i(267)].decodeVideo(t,e,s)}[_c(273)](t,e){const s=_c;this.player[s(532)]()?this[s(412)](t,e):this[s(488)][s(298)]()?this[s(488)].isPlaybackOnlyDecodeIFrame()||this[s(412)](t,e):this[s(488)][s(483)]()&&this[s(412)](t,e)}_decodeAudioNoDelay(t,e){const s=_c;this[s(267)][s(273)](t,e)}[_c(263)](t=!1){const e=_c;Pi(this[e(488)]._opt[e(390)])&&this[e(267)][e(278)]()}[_c(398)](){}updatePlayVodFps(){}[_c(494)](){this[_c(263)]()}[_c(361)](){}[_c(434)](){const t=_c;this[t(345)]&&this[t(260)]&&(this.player.emit(q[t(424)]),this[t(488)][t(498)](q.load))}[_c(381)](){const t=_c;this[t(512)]||(this.player[t(265)](this[t(226)],t(514),j[t(292)]),this[t(345)]=!0,this[t(434)]())}[_c(377)](t){const e=_c;this[e(512)]||(this[e(488)][e(265)](this.TAG_NAME,e(514),j[e(243)],t[e(241)]),!this[e(488)][e(417)].decodeStart&&(this[e(488)][e(417)][e(530)]=os()),this.player[e(407)][e(429)]({encTypeCode:t[e(241)]}))}[_c(269)](t){const e=_c;this[e(512)]||(this[e(488)].debugLog(this[e(226)],"onmessage:",j[e(319)],t.codecId),this.player[e(259)]&&this.player[e(259)][e(389)](t[e(365)],t[e(388)]),this.player[e(407)][e(429)]({encTypeCode:t[e(388)]}))}[_c(516)](t){const e=_c;this[e(512)]||(this.player[e(265)](this[e(226)],"onmessage:",j[e(385)],t.code),this.player[e(329)]&&this[e(488)][e(329)][e(479)]({encTypeCode:t.code}))}[_c(465)](t){const e=_c;this[e(512)]||(this[e(488)][e(265)](this[e(226)],e(514),j[e(350)]),this[e(488)].recorder&&this[e(488)].recorder.initAudioAacExtraData(t[e(365)]))}[_c(294)](t){const e=_c;this[e(512)]||(this[e(488)][e(265)](this[e(226)],e(514),j.initVideo,e(306)+t.w+",height:"+t.h),Vs(t.w)||Vs(t.h)?this.player[e(373)](J[e(318)],e(464)+t.w+e(527)+t.h+e(452)):(this.player[e(407)][e(335)](),this[e(488)][e(407)].updateVideoInfo({width:t.w,height:t.h}),this[e(488)][e(459)][e(376)]||ui(t.w)||this[e(488)].getCanvasRenderType()!==lt[e(451)]&&this[e(488)][e(357)]()!==lt[e(314)]?(this.player[e(407)][e(392)](),this[e(488)][e(298)]()?(this[e(488)][e(407)][e(255)](),this.player[e(407)][e(369)]()):this[e(488)][e(483)]()&&(this.player[e(407)][e(255)](),this[e(488)][e(407)][e(369)]())):this.player.emitError(J.webglAlignmentError)))}_handleInitAudio(t){const e=_c;this._isDestroyed||(this[e(488)].debugLog(this.TAG_NAME,e(514),j[e(238)],"channels:"+t[e(462)]+e(489)+t[e(254)]),t[e(462)]>2?this[e(488)][e(373)](J[e(418)],e(508)+t.channels+e(449)+2):this[e(488)][e(329)]&&(this[e(488)][e(329)][e(479)](t),this[e(488)][e(459)][e(400)]===p[e(488)]?this[e(488)].audio[e(433)]():this[e(488)][e(459)].playType===p[e(285)]?this.player[e(329)][e(433)]():this[e(488)][e(483)]()&&this[e(488)][e(329)][e(433)]()))}[_c(395)](t){const e=_c;if(!this[e(512)]&&!this.player[e(506)]())if(this[e(488)][e(407)]){if(this[e(488)].isPlayer()){if(xi(this[e(488)][e(407)][e(475)]()))return void this[e(488)][e(352)](this[e(226)],e(509));this.player[e(407)][e(453)](t),this[e(488)].handleRender(),this[e(488)][e(493)]({dfps:!0}),!this[e(488)][e(417)][e(246)]&&(this.player[e(417)][e(246)]=os(),this[e(488)][e(480)]())}else if(this[e(488)][e(298)]())this[e(488)][e(493)]({dfps:!0}),xi(this[e(488)].playbackPause)?(this.player[e(501)][e(295)]&&this[e(488)][e(501)][e(262)](),this.player[e(501)][e(230)]?this[e(488)].video[e(386)](t):this[e(488)][e(407)][e(416)](t)):this[e(488)][e(501)][e(342)]()&&this[e(488)][e(501)][e(230)]&&this[e(488)][e(407)][e(386)](t);else if(this.player[e(483)]())if(this.player[e(256)][e(466)]()){const s=this[e(488)][e(256)][e(408)],i=this.player[e(256)].playingTimestamp,r=t.ts-s,n=Math[e(379)](r),o=t.ts-i,a=Math[e(379)](s-i),h=Math.abs(o)<1e3&&a>1e3;n<500||!h&&r>1e3?(this[e(488)][e(256)][e(431)](),this.player.updateStats({dfps:!0}),this.player[e(407)][e(416)](t)):this[e(488)][e(265)](this[e(226)],e(514),j[e(453)],"msg ts:"+t.ts+e(280)+i+" and playingTimestamp "+i+e(410)+s+e(505)+n+e(224))}else this[e(488)][e(493)]({dfps:!0}),this[e(488)][e(407)].render$2(t),!this.player[e(417)][e(246)]&&(this[e(488)][e(417)][e(246)]=os(),this[e(488)][e(480)]())}else this.player.debugWarn(this[e(226)],e(497))}_handlePlayAudio(t){const e=_c;if(!this._isDestroyed&&!this[e(488)][e(506)]())if(this[e(488)][e(329)]){if(this[e(488)][e(307)]&&this[e(488)].audio||!this[e(488)][e(407)])if(!this.player[e(459)][e(274)]&&this[e(488)][e(402)](),this[e(488)]._opt.playType===p[e(488)])this[e(488)][e(329)].play(t[e(365)],t.ts);else if(this.player[e(459)][e(400)]===p[e(285)])xi(this[e(488)][e(458)])?this[e(488)][e(329)].play(t.buffer,t.ts):this[e(488)][e(501)][e(342)]()&&this[e(488)][e(501)][e(230)]&&this[e(488)][e(329)][e(327)](t[e(365)],t.ts);else if(this.player[e(483)]()&&xi(this[e(488)][e(440)])){if(this[e(488)][e(256)].isSeeking())return;this[e(488)][e(329)][e(327)](t[e(365)],t.ts)}}else this[e(488)].debugWarn(this[e(226)],e(456))}[_c(344)](t){const e=_c;this._isDestroyed||this.player[e(373)](J[e(288)],t)}[_c(239)](t){const e=_c;this[e(512)]||this[e(488)][e(373)](J[e(332)],t)}[_c(423)](){const t=_c;this[t(512)]||this[t(488)][t(373)](J.simdDecodeError)}_handleWorkerEnd(){const t=_c;this[t(512)]||(this[t(488)][t(265)](this[t(226)],"onmessage:",j[t(328)]),Xi()&&(this[t(488)][t(476)](),console[t(358)](decodeURIComponent(ce)),alert(decodeURIComponent(le)),window[t(252)][t(524)]()))}[_c(253)](t){const e=_c;this[e(512)]||(this[e(488)][e(498)](q[e(424)]),this.player[e(265)](this[e(226)],e(514),j[e(472)],e(428)),this.player[e(373)](J.notSupportNewWasm))}[_c(304)](t){const e=_c;this[e(512)]||(this[e(488)][e(498)](q[e(424)]),this[e(488)][e(265)](this[e(226)],e(514),j.outOfMemoryWasm,e(428)),this.player[e(373)](J[e(331)]))}[_c(302)](t){const e=_c;this[e(512)]||(this[e(245)]?this[e(478)]=t:this[e(488)][e(493)]({workerStats:t}))}_handleSimdDecodeDelayTimeout(){const t=_c;this[t(512)]||this.player[t(373)](J.simdDecodeDelayTimeout)}_initWork(){const t=_c,e=this.player.getWorkerConfig();this[t(245)][t(339)]({cmd:z.init,opt:JSON[t(468)](e)}),this[t(488)]._opt.cryptoKey&&this.player[t(459)][t(443)].byteLength>0&&this.player[t(459)][t(248)]&&this[t(488)][t(459)][t(248)].byteLength>0&&(this[t(338)]({key:t(443),value:this[t(488)]._opt[t(443)]}),this[t(338)]({key:t(248),value:this.player[t(459)][t(248)]}))}[_c(338)](t){const e=_c;this[e(245)]&&this[e(245)][e(339)]({cmd:z[e(320)],key:t[e(375)],value:t.value})}[_c(419)](t){const e=_c;this[e(245)][e(339)]({cmd:z[e(363)],message:t})}workerFetchStream(t,e={}){const s=_c,{_opt:i}=this[s(488)];let r=[];e[s(349)]&&(r=e[s(349)],delete e.protocols);const n={protocol:i[s(535)],isFlv:i[s(469)],isFmp4:i[s(261)],isMpeg4:i.isMpeg4,isNakedFlow:i[s(457)],isTs:i[s(311)],isPs:i[s(279)],options:e};this[s(245)][s(339)]({cmd:z[s(522)],url:t,protocols:r,opt:JSON[s(468)](n)})}[_c(442)](t){const e=_c;this[e(245)][e(339)]({cmd:z[e(521)],isPause:t})}[_c(511)](){const t=_c;this[t(245)][t(339)]({cmd:z[t(223)],isIn:!0})}[_c(500)](){const t=_c;this.demuxWorker[t(339)]({cmd:z.playbackNextFrame,isIn:!1})}[_c(300)](t){const e=_c;this[e(245)][e(339)]({cmd:z.playbackNextIFrame,isIn:!0,nextIFrameTime:t})}[_c(383)](){const t=_c;this[t(245)][t(339)]({cmd:z[t(471)],isIn:!1})}[_c(228)](){}[_c(282)](){}[_c(222)](){}[_c(270)](){}}const Lc=Pc;function Rc(){const t=["cts","hasDemuxWorker","protocols","playAudio","initVideo","_listenPlaybackEvents","onmessage","decoderVideoWorker","stream","isDestroyed","video","getStreamByProtocol","player","data","handleAddAudioTrack","decoderWorkerWasmError","debugError","isPlayer","simdDecodeError"," VideoDecoderWorker"," and init decoder worker"," or height ","all worker has closed and destroy self","debugWarn","max","exitPlayVodNextFrame","updateStats","exitPlayVodNextIFrame","decoderOnlyVideo","decoderWorkerInitError","sendWsMessage","workerVideoUrl","websocketError","58674EVlGtW","videoNalu",", decoder audio url is ","play","audio","onmessage:","buffer","isDecoderUseCDN","decodeStart","playbackStreamVideoFps","bind","streamVbps","_initAudioWorkerConfig","demux","message","videoSEI","playbackTF","recordType",",message: ","http","_prevDestroy()","decodeAudio","cryptoIV","isPlaybackOnlyDecodeIFrame","audioAACSequenceHeader","close","onmessageerror","workerDemuxUrl","workerEnd"," and seekingTimestamp:","isUseFpsRender","channels:","onerror","updatePlaybackNextFrame","decoderVideoUrl","streamEnd","decoderAudioWorkerInit","assign","isPlaybackPauseNotClearCacheAndCacheBeforeDecodeAndUseFpsRender","25749XQqmHx","audioDecode","webgl","increaseLocalTimestamp","decoderAudioUrl","websocketStringMsg","audioNalu","isInitError",'importScripts("',"_decodeVideoNoDelay","websocketOpenTimeout","workerClearTimeout","isNakedFlow","isHevc","networkDelayTimeout","type","debug","decodeVideo","isStreamByProtocol",",sampleRate:","webgl2","decoderOnlyAudio","render$2","updateWorkConfig","_isDecoderVideoWorkerDestroyed","isSeeking","handlePlayToRenderTimes","_isDestroyed","_destroy","error","visibilityChange","init demux worker and decoder url is ","msg ts:","updateStreamEndInner","openWebglAlignment"," DemuxWorker","17032120arsrLJ","application/javascript","outOfMemoryWasm","videoIframeIntervalTs","playVod","init and decoder video url is ","isVideoInitedAndNotFirstVideoIFrame","isRecording","updateVideoInfo","isRecordTypeFlv","stream by protocol is ","_decodeAudioNoDelay",", not init demux worker","workerSendMessage","emitTsPrivateData","isPlaybackPauseNotClearCacheAndCacheBeforeDecode","updatePlayVodFps","videoStart","addAudio","addAACSequenceHeader","initFps","videoInfoError","postMessage","closeEnd","isTs","updateMetaData","isPs","emitError","recording","workerFetch",".wasm","notSupportNewWasm","updateForwardMaxRateDecodeIFrame","_initDecoderWorker","_times","debugLevel","cmd","emitVideoSei","_initDecoderVideoWorker","demuxerWorkerInit","updatePlaybackNextIFrame","1711744PwoHeb","TAG_NAME_AUDIO_DECODER","sampleRate","updatePlayVodNextIFrame","simdDecodeDelayTimeout","toFixed","_clearCloseTimeout()",", max is ","visibility","simdH264DecodeVideoWidthIsTooLarge"," AudioDecoderWorker","tsError","initAudio","TAG_NAME","decoderVideoWorkerInit","isPlayVod","_handleInit","_isDemuxWorkerDestroyed","terminate","destroyLock","demuxWorkerUrl","_initVideoWorkerConfig",", and filename: ","videoPayload","isDestroying","addVideo","_tempStreamStats","playVodNextFrame","has loaded and post message to destroy","playbackNextFrame","websocketOpen","pushData","streamAbps","URL","init","streamRate","wasm://","onmessage and workerFetch response fetch error but stream is null","_listenPlayVodEvents","netBuf","flvScriptData","_tempAudioStreamstats","tempStream","playbackNextIFrame","channels","filename: ","setStreamFps","fetchError","bound","createObjectURL","abs","pushTempStream","_prevDestroy","8969044aRSSlh","_initDemuxWorkConfig","stringify","_clearCloseTimeout","start decoderWorkerCloseTimeout","destroyed","isMpeg4","debugLog","decoderWorkerInit","fetchErrorWorker","handleAddNaluTrack","decoderWorkerCloseTimeout","codecId","isPlayback","updatePlaybackIsPause","isFlv","emit","key","indexOf","onMetaData","videoStreamStats","clearBuffer","msg","filename","uuid","videoCodec","decoderAudioWorker","seekingTimestamp","wasmWidthOrHeightChange","flvBufferData","isWasmMp4","demuxWorker","aacSequenceHeader","iframeIntervalTs","parse","code","audioCode","isUseLocalCalculateTime","onmessage render but video has not init","isIFrame","audioStreamStats","playbackIsPause","audioPayload","playVodNextIFrame","Uncaught ","initAudioAacExtraData","getAudioContextSampleRate","size","byteLength","cryptoKey","bindMediaStream","addMetaData","hasVideo","value","location","getHasInit","recorder","playback","tsPrivateData","destroy","playType","hasAudio","demuxStart","render","updateAudioInfo","_initDemuxWorker","initVideoDelay","p2dfps","_initDecoderAudioWorker","wasmAudioTotalMB","send close but not response and destroy directly","1227020PAIriu","payload"," is empty","decoderWorkerUncaughtError","635TZRypt","playbackPause","TAG_NAME_DEMUX","reload","videoInitedAndNotFirstVideoIFrame","removeSeekingTimestamp","destroyResolve","TAG_NAME_VIDEO_DECODER","revokeObjectURL","decoderHardNotWasm","workerAudioUrl","_isDecoderAudioWorkerDestroyed","websocketClose","initScriptNode","decoderCheckFirstIFrame","onerror and decoder url is ","_opt","checkFirstIFrame","updatePlayVodNextFrame","workerDemuxClearTimeout","1196247nVFzuz","streamSuccess","debugUuid","streamEndInner","getCanvasRenderType"];return(Rc=function(){return t})()}function Pc(t,e){const s=Rc();return(Pc=function(t,e){return s[t-=114]})(t,e)}!function(t){const e=Pc,s=t();for(;;)try{if(699252===-parseInt(e(215))/1+-parseInt(e(191))/2+-parseInt(e(292))/3+parseInt(e(369))/4+-parseInt(e(195))/5*(-parseInt(e(253))/6)+-parseInt(e(120))/7+parseInt(e(328))/8)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Rc);class xc{constructor(t){const e=Pc;this[e(232)]=t,this[e(382)]="SingleDecoderWorker",this[e(197)]=this[e(382)]+e(327),this[e(202)]=this[e(382)]+e(239),this.TAG_NAME_AUDIO_DECODER=this[e(382)]+e(379),this[e(125)]=!1,this[e(201)]=null,this[e(303)]=null,this[e(214)]=null,this.workerVideoUrl=null,this[e(205)]=null,this[e(280)]=null;let s=t._opt[e(313)],i=t[e(211)][e(248)];if(this.demuxWorkerUrl=t[e(211)][e(204)],this[e(367)]=!1,this[e(289)]=!1,this[e(383)]=!1,this[e(131)]=null,this[e(319)]=!1,this[e(386)]=!1,this[e(316)]=!1,this[e(206)]=!1,this.destroyLock=!1,this.isInitError=!1,this._tempStreamStats=null,this[e(410)]=null,this[e(151)]=null,this[e(146)]=null,this[e(227)]=null,this[e(296)]=s,this[e(287)]=i,this[e(115)]={updatePlaybackIsPause:this[e(134)][e(263)](this),updatePlaybackNextFrame:this[e(286)].bind(this),updatePlaybackNextIFrame:this[e(368)][e(263)](this),updatePlayVodNextFrame:this.updatePlayVodNextFrame[e(263)](this),updatePlayVodNextIFrame:this[e(372)][e(263)](this)},0===i.indexOf(e(272))&&this.player[e(211)][e(260)]){const t=new Blob(['importScripts("'+i+'")'],{type:e(329)});i=window.URL[e(116)](t),this[e(251)]=i;const r=new Blob([e(300)+s+'")'],{type:"application/javascript"});s=window[e(402)][e(116)](r),this[e(205)]=s,this[e(303)]=setTimeout(()=>{const t=e;window[t(402)][t(203)](this[t(251)]),this[t(251)]=null,window.URL[t(203)](this[t(205)]),this[t(205)]=null,this[t(303)]=null},P)}this.decoderVideoWorker=new Worker(i),this[e(232)]._opt[e(181)]?this[e(146)]=new Worker(s):(this.decoderAudioWorkerInit=!0,this[e(206)]=!0),this._initDecoderWorker(),this[e(225)](),this[e(407)](),this[e(232)][e(310)]()?(this[e(232)][e(127)](this[e(382)],e(338)+this[e(232)][e(231)]()+e(340)),this[e(367)]=!0,this[e(386)]=!0):this._initDemuxWorker(),t[e(127)](this.TAG_NAME,e(333)+i+e(255)+s)}[Lc(179)](){return new Promise((t,e)=>{const s=Pc;this.destroyLock=!0,this.player.loaded?(this[s(232)][s(127)](this[s(382)],s(397)),this[s(151)]&&this.demuxWorker.postMessage({cmd:z[s(278)]}),this[s(227)].postMessage({cmd:z[s(278)]}),this[s(146)]&&this[s(146)][s(350)]({cmd:z[s(278)]}),this[s(201)]=t,this[s(232)][s(127)](this[s(382)],s(124)),this[s(123)](),this.decoderWorkerCloseTimeout=setTimeout(()=>{const t=s;this._clearCloseTimeout(),this[t(319)]||(this.player.debugWarn(this[t(382)],t(190)),this[t(320)]())},2e3)):(this[s(232)][s(127)](this[s(382)],"has not loaded and destroy directly"),this._destroy(),setTimeout(()=>{t()},0))})}[Lc(393)](){return this[Lc(388)]}[Lc(229)](){return this._isDestroyed}[Lc(221)](){return!!this.demuxWorker}[Lc(119)](t){const e=Lc;this[e(232)].debugLog(this[e(382)],e(273),t);let s=!this.decoderAudioWorker||this[e(206)],i=!this[e(227)]||this[e(316)],r=!this[e(151)]||this[e(386)];s&&i&&r&&(this[e(123)](),this[e(232)][e(127)](this[e(382)],e(242)),this[e(320)]())}_destroy(){const t=Lc;this._clearCloseTimeout(),this[t(205)]&&(window[t(402)][t(203)](this.workerAudioUrl),this[t(205)]=null),this[t(251)]&&(window.URL.revokeObjectURL(this.workerVideoUrl),this[t(251)]=null),this[t(280)]&&(window[t(402)][t(203)](this[t(280)]),this[t(280)]=null),this[t(303)]&&(clearTimeout(this.workerClearTimeout),this[t(303)]=null),this[t(214)]&&(clearTimeout(this.workerDemuxClearTimeout),this.workerDemuxClearTimeout=null),this.demuxWorker&&(this[t(151)][t(285)]=null,this[t(151)][t(279)]=null,this[t(151)].onmessage=null,this[t(151)][t(387)](),this[t(151)]=null),this.decoderVideoWorker&&(this.decoderVideoWorker[t(285)]=null,this[t(227)][t(279)]=null,this.decoderVideoWorker[t(226)]=null,this[t(227)].terminate(),this[t(227)]=null),this[t(146)]&&(this[t(146)][t(285)]=null,this[t(146)].onmessageerror=null,this.decoderAudioWorker.onmessage=null,this[t(146)][t(387)](),this[t(146)]=null),this._tempStreamStats=null,this[t(410)]=null,this[t(115)]=null,this.player[t(127)](this[t(382)],"destroyed"),this[t(201)]&&(this[t(201)](),this[t(201)]=null),this[t(388)]=!1,this[t(319)]=!0,this[t(299)]=!1}[Lc(385)](){const t=Lc;this.demuxerWorkerInit&&this[t(289)]&&this.decoderVideoWorkerInit&&(this[t(232)].debugLog(this[t(382)],t(385)),this[t(232)][t(136)](q[t(128)]),this[t(232)][t(136)](q.load))}[Lc(361)](){const t=Lc;this[t(227)]&&this._initDecoderVideoWorker(),this[t(146)]&&this[t(188)]()}[Lc(366)](){const t=Lc;this.decoderVideoWorker[t(285)]=e=>{const s=t,i=e[s(143)]||"",r=e[s(267)]||"",n=i&&(-1!==i[s(138)](s(358))||-1!==i[s(138)](s(405))),o=-1!==r[s(138)](s(164));this[s(232)][s(236)](this[s(202)],s(210)+this[s(287)]+s(391)+i+s(271)+r,e),n?this[s(232)].emitError(J[s(235)],s(414)+(i||this[s(287)])+s(271)+r):o?this.player.emitError(J[s(194)],s(414)+(i||this[s(287)])+",message: "+r):(this.isInitError=!0,this.player[s(355)](J[s(249)],s(414)+(i||this[s(287)])+s(271)+r))},this[t(227)].onmessageerror=e=>{const s=t;this.player[s(236)](this[s(202)],"onmessageerror",e)},this[t(227)][t(226)]=e=>{const s=t,i=e[s(233)];if(!this._isDestroyed)switch(i[s(364)]){case j[s(403)]:this[s(232)][s(127)](this[s(202)],s(258),j.init),this.decoderVideoWorker&&this[s(390)](),this[s(383)]=!0,this[s(385)]();break;case j.videoCode:this[s(232)].debugLog(this[s(202)],"onmessage:",j.videoCode,i.code),!this[s(232)]._times.decodeStart&&(this[s(232)][s(362)][s(261)]=os()),this[s(232)].video[s(336)]({encTypeCode:i[s(155)]});break;case j[s(145)]:this.player[s(127)](this[s(202)],s(258),j.videoCodec,i[s(132)]),this.player[s(176)]&&this[s(232)][s(176)].initMetaData(i[s(259)],i[s(132)]),this[s(232)][s(230)].updateVideoInfo({encTypeCode:i[s(132)]});break;case j[s(224)]:if(this[s(232)][s(127)](this[s(202)],s(258),j.initVideo,"width:"+i.w+",height:"+i.h),Vs(i.w)||Vs(i.h))return void this[s(232)].emitError(J[s(349)],"video width "+i.w+s(241)+i.h+s(193));if(this[s(232)][s(230)][s(170)](),this[s(232)][s(230)][s(336)]({width:i.w,height:i.h}),!(this[s(232)]._opt[s(326)]||ui(i.w)||this[s(232)][s(219)]()!==lt[s(294)]&&this.player[s(219)]()!==lt[s(312)]))return void this.player[s(355)](J.webglAlignmentError);this[s(232)][s(230)].initCanvasViewSize(),this[s(232)].isPlayback()?(this[s(232)].video[s(348)](),this[s(232)][s(230)][s(186)]()):this[s(232)][s(384)]()&&(this.player[s(230)][s(348)](),this.player[s(230)][s(186)]());break;case j[s(183)]:if(this.player.isDestroyedOrClosed())return;if(!this.player.video)return void this.player[s(243)](this.TAG_NAME_VIDEO_DECODER,"onmessage render but video is null");if(this[s(232)][s(237)]()){if(xi(this[s(232)][s(230)][s(175)]()))return void this[s(232)][s(243)](this[s(202)],s(158));this.player[s(230)].render(i),this[s(232)].handleRender(),this[s(232)][s(246)]({dfps:!0}),!this[s(232)][s(362)][s(345)]&&(this.player._times[s(345)]=os(),this[s(232)][s(318)]())}else if(this.player[s(133)]())this[s(232)][s(246)]({dfps:!0}),xi(this[s(232)][s(196)])?(this.player[s(177)][s(157)]&&this[s(232)][s(177)][s(295)](),this[s(232)].playback.isUseFpsRender?this[s(232)][s(230)][s(400)](i):this.player.video[s(314)](i)):this.player[s(177)][s(343)]()&&this[s(232)][s(177)].isUseFpsRender&&this[s(232)][s(230)][s(400)](i);else if(this[s(232)][s(384)]())if(this.player[s(332)][s(317)]()){const t=this[s(232)][s(332)][s(147)],e=this.player[s(332)].playingTimestamp,r=i.ts-t,n=Math[s(117)](r),o=i.ts-e,a=Math[s(117)](t-e),h=Math.abs(o)<1e3&&a>1e3;n<500||!h&&r>1e3?(this[s(232)][s(332)][s(200)](),this[s(232)].updateStats({dfps:!0}),this[s(232)].video[s(314)](i)):this[s(232)][s(127)](this[s(202)],s(258),j[s(183)],s(324)+i.ts+" and playingTimestamp "+e+s(282)+t+" and diff:"+n+" and ignore render")}else this.player[s(246)]({dfps:!0}),this[s(232)][s(230)][s(314)](i),!this.player[s(362)][s(345)]&&(this[s(232)][s(362)][s(345)]=os(),this[s(232)][s(318)]());break;case j[s(378)]:this[s(232)].emitError(J[s(378)],i);break;case j[s(148)]:this[s(232)].emitError(J[s(148)],i);break;case j[s(238)]:this[s(232)].emitError(J[s(238)]);break;case j[s(281)]:this[s(232)].debugLog(this.TAG_NAME_VIDEO_DECODER,"onmessage:",j[s(281)]),Xi()&&(this.player[s(179)](),console[s(321)](decodeURIComponent(ce)),alert(decodeURIComponent(le)),window[s(174)][s(198)]());break;case j[s(359)]:this[s(232)][s(136)](q.decoderWorkerInit),this[s(232)][s(127)](this[s(202)],s(258),j[s(359)],s(240)),this.player[s(355)](J[s(359)]);break;case j[s(330)]:this[s(232)].emit(q[s(128)]),this[s(232)][s(127)](this.TAG_NAME_VIDEO_DECODER,"onmessage:",j[s(330)],s(240)),this[s(232)].emitError(J[s(330)]);break;case j[s(140)]:const t=JSON[s(154)](i[s(173)]);this._tempAudioStreamstats&&(t[s(189)]=this._tempAudioStreamstats[s(189)]),this.hasDemuxWorker()?this[s(395)]=t:this[s(232)][s(246)]({workerStats:t});break;case j[s(373)]:this.player[s(355)](J.simdDecodeDelayTimeout);break;case j[s(351)]:this.player[s(127)](this[s(202)],s(258),j[s(351)]),this[s(316)]=!0,this._prevDestroy(s(230));break;case j[s(199)]:this.player[s(334)]=i.value}}}[Lc(188)](){const t=Lc;this[t(146)][t(285)]=e=>{const s=t,i=e[s(143)]||"",r=e[s(267)]||"",n=-1!==r.indexOf("Uncaught ");this[s(232)].debugError(this[s(370)],s(210)+this[s(296)]+s(391)+i+",message: "+r,e),n?this[s(232)][s(355)](J[s(194)],s(414)+(i||this[s(296)])+s(271)+r):(this.isInitError=!0,this[s(232)][s(355)](J[s(249)],s(414)+(i||this[s(296)])+s(271)+r))},this[t(227)].onmessageerror=e=>{const s=t;this.player[s(236)](this[s(370)],s(279),e)},this.decoderAudioWorker[t(226)]=e=>{const s=t,i=e.data;if(!this._isDestroyed)switch(i[s(364)]){case j.init:this[s(232)].debugLog(this.TAG_NAME_AUDIO_DECODER,s(258),j[s(403)]),this[s(146)]&&this._initAudioWorkerConfig(),this[s(289)]=!0,this[s(385)]();break;case j.audioCode:this[s(232)][s(127)](this[s(370)],s(258),j[s(156)],i[s(155)]),this[s(232)][s(257)]&&this.player[s(257)][s(184)]({encTypeCode:i[s(155)]});break;case j[s(277)]:this[s(232)][s(127)](this[s(370)],s(258),j[s(277)]),this[s(232)][s(176)]&&this[s(232)][s(176)][s(165)](i[s(259)]);break;case j[s(381)]:if(this[s(232)][s(127)](this[s(370)],s(258),j[s(381)],s(284)+i[s(413)]+s(311)+i[s(371)]),i.channels>2)return void this[s(232)][s(355)](J.audioChannelError,"audio channel is "+i.channels+s(376)+2);this[s(232)][s(257)]&&(this.player[s(257)][s(184)](i),this[s(232)][s(211)].playType===p[s(232)]?this.player[s(257)].initScriptNode():this[s(232)]._opt[s(180)]===p[s(269)]?this[s(232)][s(257)][s(208)]():this[s(232)][s(384)]()&&this[s(232)][s(257)].initScriptNode());break;case j[s(223)]:if(this[s(232)].isDestroyedOrClosed())return;if(!this[s(232)][s(257)])return void this[s(232)].debugWarn(this[s(370)],"onmessage playAudio but audio is null");if(this[s(232)].playing&&this[s(232)][s(257)]||!this[s(232)].video)if(!this[s(232)][s(211)][s(172)]&&this[s(232)].handleRender(),this.player[s(211)][s(180)]===p[s(232)])this[s(232)][s(257)][s(256)](i[s(259)],i.ts);else if(this.player._opt[s(180)]===p[s(269)])xi(this[s(232)][s(196)])?this[s(232)][s(257)][s(256)](i.buffer,i.ts):this[s(232)][s(177)][s(343)]()&&this[s(232)][s(177)][s(283)]&&this.player[s(257)].play(i[s(259)],i.ts);else if(this[s(232)].isPlayVod()&&xi(this[s(232)].playVodPause)){if(this[s(232)][s(332)][s(317)]())return;this[s(232)][s(257)][s(256)](i[s(259)],i.ts)}break;case j[s(160)]:const t=JSON.parse(i[s(173)]);this._tempAudioStreamstats=t;break;case j[s(281)]:this.player.debugLog(this[s(370)],s(258),j.workerEnd),Xi()&&(this[s(232)][s(179)](),console[s(321)](decodeURIComponent(ce)),alert(decodeURIComponent(le)),window[s(174)][s(198)]());break;case j.closeEnd:this[s(232)][s(127)](this.TAG_NAME_AUDIO_DECODER,s(258),j[s(351)]),this[s(206)]=!0,this._prevDestroy(s(257))}}}[Lc(185)](){const t=Lc;let e=this[t(389)];if(0===e[t(138)](t(272))&&this[t(232)][t(211)].isDecoderUseCDN){const s=new Blob([t(300)+e+'")'],{type:t(329)});e=window[t(402)][t(116)](s),this[t(280)]=e,this[t(214)]=setTimeout(()=>{const e=t;window[e(402)][e(203)](this[e(280)]),this[e(280)]=null,this[e(214)]=null},P)}this[t(151)]=new Worker(e),this[t(232)].debugLog(this[t(382)],t(323)+this[t(389)]),this[t(232)].on(q[t(322)],()=>{const e=t;this[e(315)]({key:e(377),value:this[e(232)].visibility})}),this[t(151)][t(285)]=e=>{const s=t,i=e[s(143)]||"",r=e[s(267)]||"",n=-1!==r[s(138)](s(164));this[s(232)].debugError(this[s(197)],s(210)+this[s(389)]+s(391)+i+s(271)+r,e),n?this[s(232)].emitError(J[s(194)],s(414)+(i||this.demuxWorkerUrl)+",message: "+r):(this[s(232)].debugLog(this[s(382)],"demuxWorker init error, and set isInitError = true"),this[s(299)]=!0,this[s(232)][s(355)](J.decoderWorkerInitError,"filename: "+(i||this.demuxWorkerUrl)+",message: "+r))},this.demuxWorker.onmessageerror=e=>{const s=t;this.player[s(236)](this[s(197)],s(279),e)},this[t(151)][t(226)]=e=>{const s=t,i=e[s(233)];if(!this[s(319)])switch(i[s(364)]){case j.init:this[s(232)][s(127)](this[s(197)],s(258),j[s(403)]),this[s(151)]&&this._initDemuxWorkConfig(),this[s(367)]=!0,this[s(385)]();break;case j[s(254)]:this.player[s(176)]&&this.player[s(176)][s(335)]&&this[s(232)]._opt[s(270)]===f.mp4&&this.player.recorder[s(130)](i[s(259)],i.isIFrame,i.ts,i[s(220)]);break;case j[s(298)]:this[s(232)].recorder&&this[s(232)][s(176)].isRecording&&this[s(232)][s(211)][s(270)]===f.mp4&&this[s(232)][s(176)][s(150)]()&&this.player[s(176)][s(234)](i[s(259)],i.ts);break;case j[s(392)]:this[s(232)][s(246)]({buf:i.delay}),this[s(309)](new Uint8Array(i[s(192)]),i.ts,i[s(159)],i.cts);break;case j[s(162)]:this[s(274)](new Uint8Array(i[s(192)]),i.ts);break;case j[s(357)]:if(i[s(307)]===q[s(216)])this[s(232)][s(228)]?this[s(232)].stream.emit(q[s(216)]):this[s(232)].debugWarn(this[s(197)],"onmessage and workerFetch response stream success but stream is null");else if(i[s(307)]===q[s(404)])this[s(232)][s(136)](q.kBps,(i.value/1e3)[s(374)](2));else if(i.type===q.streamEnd)this[s(232)]?(i[s(173)]===u.websocket&&this[s(232)][s(136)](q[s(207)],i[s(142)]),this[s(232)][s(136)](q[s(288)],i[s(142)])):this[s(232)][s(243)](this[s(197)],"onmessage and workerFetch response stream end but player is null");else if(i[s(307)]===q[s(218)])this[s(232)][s(325)]();else if(i[s(307)]===J[s(252)])this.player[s(355)](J[s(252)],i.value);else if(i[s(307)]===J[s(302)])this[s(232)]&&this.player[s(228)]?this[s(232)][s(228)][s(136)](J[s(302)],i[s(142)]):this[s(232)][s(243)](this.TAG_NAME_DEMUX,"onmessage and workerFetch response websocketOpenTimeout but stream is null");else if(i[s(307)]===J[s(114)])this[s(232)]&&this[s(232)][s(228)]?this[s(232)].stream[s(136)](J[s(114)],i[s(173)]):this[s(232)][s(243)](this[s(197)],s(406));else if(i[s(307)]===J[s(129)])this[s(232)][s(355)](J.fetchError,i[s(173)]);else if(i.type===q[s(401)])this[s(232)][s(246)]({abps:i.value});else if(i.type===q[s(264)])!this.player._times[s(182)]&&(this[s(232)][s(362)].demuxStart=os()),this.player[s(246)]({vbps:i[s(173)]});else if(i[s(307)]===q.streamDts)this[s(232)].updateStats({dts:i[s(173)]});else if(i.type===q[s(408)])this.player.updateStats({netBuf:i[s(173)]});else if(i[s(307)]===q.networkDelayTimeout)this[s(232)][s(136)](q[s(306)],i[s(173)]);else if(i[s(307)]===q.streamStats){let t=JSON[s(154)](i[s(173)]);this[s(395)]&&(t[s(187)]=null,t=Object[s(290)](t,this[s(395)])),this.player[s(246)]({workerStats:t})}else i.type===q[s(399)]&&this[s(232)][s(136)](q[s(399)]);break;case j[s(153)]:this[s(232)]&&(this[s(232)][s(331)]=i[s(173)]);break;case j.isDropping:this[s(232)]&&this[s(232)][s(246)]({isDropping:!0});break;case j.checkFirstIFrame:this[s(232)][s(209)]();break;case j[s(262)]:this[s(232)]&&this[s(232)].video&&this.player[s(230)][s(415)](i[s(173)]);break;case j.workerEnd:this[s(232)][s(127)](this.TAG_NAME_DEMUX,s(258),j[s(281)]),Xi()&&(this[s(232)][s(179)](),console[s(321)](decodeURIComponent(ce)),alert(decodeURIComponent(le)),window[s(174)][s(198)]());break;case j[s(351)]:this[s(232)][s(127)](this[s(197)],s(258),j.closeEnd),this[s(386)]=!0,this[s(119)](s(266));break;case j[s(411)]:this.player&&this.player[s(118)](i[s(259)]);break;case j[s(268)]:if(this[s(232)]){const t=new Uint8Array(i.buffer),e=$e(Je(t),i[s(305)]);this.player[s(365)]({ts:i.ts,data:e[s(192)],type:e[s(307)],uuid:e[s(144)],size:e[s(167)],originData:t})}break;case j[s(178)]:this[s(232)]&&this.player[s(342)](new Uint8Array(i[s(259)]));break;case j[s(409)]:if(this[s(232)]){if(this[s(232)][s(337)]()){const t=new Uint8Array(i[s(259)]);this.player[s(176)][s(171)](t)}const t=vc(new Uint8Array(i[s(259)]));t&&t[s(139)]&&this[s(232)][s(353)](t.onMetaData)}break;case j[s(152)]:if(this[s(232)]&&this[s(232)][s(337)]()){const t=new Uint8Array(i[s(259)]);this[s(232)][s(176)][s(347)](t,i.ts)}break;case j.videoSequenceHeader:if(this.player&&this[s(232)][s(337)]()){const t=new Uint8Array(i.buffer);this.player.recorder.addVideoSequenceHeader(t,i.ts)}break;case j[s(149)]:if(this.player&&this.player[s(337)]()&&this[s(232)][s(356)]){const t=new Uint8Array(i[s(259)]);i[s(307)]===W[s(230)]?this[s(232)][s(176)][s(394)](t,i.ts):i[s(307)]===W[s(257)]&&this[s(232)][s(176)][s(346)](t,i.ts)}break;case j[s(297)]:this[s(232)]&&this[s(232)][s(136)](q[s(297)],i.value);break;case j[s(380)]:this[s(232)]&&(this[s(232)][s(127)](this[s(197)],s(258),j[s(380)],i[s(173)],i[s(142)]),this[s(232)][s(355)](i.value,i[s(142)]));break;default:this.player[i[s(364)]]&&this.player[i[s(364)]](i)}}}_listenPlaybackEvents(){const t=Lc;this[t(232)][t(291)]()&&(this[t(232)].on(q[t(196)],this.bound.updatePlaybackIsPause),this[t(232)].on(q[t(398)],this[t(115)][t(286)]),this.player.on(q[t(412)],this.bound[t(368)]))}[Lc(407)](){const t=Lc;this[t(232)][t(384)]()&&(this[t(232)][t(127)](this[t(382)],t(407)),this[t(232)].on(q[t(396)],this[t(115)][t(213)]),this[t(232)].on(q[t(163)],this[t(115)][t(372)]))}_clearCloseTimeout(){const t=Lc;this[t(131)]&&(this[t(232)][t(127)](this[t(382)],t(375)),clearTimeout(this.decoderWorkerCloseTimeout),this[t(131)]=null)}_initVideoWorkerConfig(){const t=Lc,e={debug:this[t(232)]._opt.debug,debugLevel:this[t(232)][t(211)][t(363)],debugUuid:this.player[t(211)].debugUuid,playType:this.player[t(211)].playType,checkFirstIFrame:this[t(232)][t(211)][t(212)]};this[t(227)][t(350)]({cmd:z[t(403)],opt:JSON[t(122)](e)})}[Lc(265)](){const t=Lc,e={debug:this[t(232)][t(211)][t(308)],debugLevel:this[t(232)][t(211)][t(363)],debugUuid:this[t(232)][t(211)][t(217)],audioBufferSize:this[t(232)][t(257)]&&this.player[t(257)].getAudioBufferSize()||1024,sampleRate:this.player[t(257)]&&this[t(232)][t(257)][t(166)]()||se};this[t(146)][t(350)]({cmd:z[t(403)],opt:JSON.stringify(e)})}[Lc(121)](){const t=Lc,e=this[t(232)].getWorkerConfig();this[t(151)][t(350)]({cmd:z.init,opt:JSON[t(122)](e)}),this.player[t(211)].cryptoKey&&this[t(232)]._opt[t(169)][t(168)]>0&&this[t(232)][t(211)][t(275)]&&this.player[t(211)].cryptoIV[t(168)]>0&&(this[t(315)]({key:t(169),value:this.player[t(211)][t(169)]}),this.updateWorkConfig({key:t(275),value:this[t(232)]._opt[t(275)]}))}[Lc(309)](t,e,s){const i=Lc;this[i(232)].isPlayer()?this[i(301)](t,e,s):this[i(232)][i(133)]()?this[i(232)][i(276)]()?s&&this._decodeVideoNoDelay(t,e,s):this[i(301)](t,e,s):this[i(232)][i(384)]()&&this._decodeVideoNoDelay(t,e,s)}[Lc(301)](t,e,s){const i=Lc;this.decoderVideoWorker.postMessage({cmd:z.videoDecode,buffer:t,ts:Math[i(244)](e,0),isIFrame:s},[t.buffer])}[Lc(274)](t,e){const s=Lc;this.player[s(237)]()?this[s(339)](t,e):this.player[s(133)]()?this[s(232)].isPlaybackOnlyDecodeIFrame()||this[s(339)](t,e):this.player[s(384)]()&&this[s(339)](t,e)}[Lc(339)](t,e){const s=Lc;this[s(146)][s(350)]({cmd:z[s(293)],buffer:t,ts:Math.max(e,0)},[t[s(259)]])}[Lc(315)](t){const e=Lc;this[e(151)]&&this[e(151)][e(350)]({cmd:z.updateConfig,key:t[e(137)],value:t[e(173)]})}workerFetchStream(t,e={}){const s=Lc,{_opt:i}=this[s(232)];let r=[];e[s(222)]&&(r=e[s(222)],delete e[s(222)]);const n={protocol:i.protocol,isFlv:i[s(135)],isFmp4:i.isFmp4,isMpeg4:i[s(126)],isNakedFlow:i[s(304)],isTs:i[s(352)],isPs:i[s(354)],options:e};this[s(151)].postMessage({cmd:z.fetchStream,url:t,protocols:r,opt:JSON.stringify(n)})}clearWorkBuffer(){const t=Lc;Pi(this[t(232)][t(211)][t(212)])&&this[t(227)][t(350)]({cmd:z[t(141)]})}[Lc(341)](t){const e=Lc;this.demuxWorker[e(350)]({cmd:z[e(250)],message:t})}updateVideoTimestamp(){}[Lc(134)](t){const e=Lc;this[e(151)][e(350)]({cmd:z[e(161)],isPause:t})}updatePlaybackNextFrame(){const t=Lc;this[t(151)][t(350)]({cmd:z[t(398)],isIn:!0}),this[t(227)][t(350)]({cmd:z[t(398)],isIn:!0})}exitPlaybackNextFrame(){const t=Lc;this[t(151)][t(350)]({cmd:z[t(398)],isIn:!1}),this[t(227)][t(350)]({cmd:z[t(398)],isIn:!1})}[Lc(368)](t){const e=Lc;this[e(151)][e(350)]({cmd:z[e(412)],isIn:!0,nextIFrameTime:t}),this[e(227)][e(350)]({cmd:z[e(412)],isIn:!0,nextIFrameTime:t})}exitPlaybackNextIFrame(){const t=Lc;this[t(151)][t(350)]({cmd:z.playbackNextIFrame,isIn:!1}),this.decoderVideoWorker[t(350)]({cmd:z[t(412)],isIn:!1})}[Lc(213)](){const t=Lc;this[t(227)][t(350)]({cmd:z[t(396)],isIn:!0})}[Lc(245)](){const t=Lc;this[t(227)][t(350)]({cmd:z.playVodNextFrame,isIn:!1})}[Lc(372)](t){const e=Lc;this[e(227)][e(350)]({cmd:z[e(163)],isIn:!0,nextIFrameTime:t})}[Lc(247)](){const t=Lc;this[t(227)][t(350)]({cmd:z.playVodNextIFrame,isIn:!1})}[Lc(344)](t){}[Lc(209)](){this.clearWorkBuffer()}[Lc(360)](t){const e=Lc;this.demuxWorker&&this[e(151)][e(350)]({cmd:z[e(360)],rate:t})}}var Mc=rd;!function(t){for(var e=rd,s=t();;)try{if(416415===-parseInt(e(499))/1*(-parseInt(e(481))/2)+parseInt(e(436))/3+parseInt(e(430))/4*(-parseInt(e(433))/5)+parseInt(e(502))/6*(parseInt(e(468))/7)+-parseInt(e(469))/8+-parseInt(e(500))/9*(-parseInt(e(458))/10)+-parseInt(e(448))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(td);var Bc,Fc=Mc(488),Uc=Mc(485),Oc=/^(?:text|application)\/xml/i,Nc=/^(.*?):[ \t]*([^\r\n]*)\r?$/gm,Vc=/^([\w.+-]+:)(?:\/\/(?:[^\/?#]*@|)([^\/?#:]*)(?::(\d+)|)|)/,jc=/^\s*$/,Wc={},Gc={},zc="",Hc={type:"GET",beforeSend:Kc,success:Kc,error:Kc,complete:Kc,context:null,xhr:function(){return new(window[Mc(460)])},accepts:{json:Fc,xml:Mc(459),html:Uc,text:Mc(494),"*":"*/"[Mc(515)]("*")},crossDomain:!1,timeout:0,username:null,password:null,processData:!0,promise:Kc,contentType:Mc(415)};function Kc(){}var qc=function(t,e){var s=Mc;"object"==typeof t&&(e=t,t=void 0);var i=sd({},e=e||{});for(var r in Hc)void 0===i[r]&&(i[r]=Hc[r]);try{var n={},o=new Promise(function(t,e){var s=rd;n[s(437)]=t,n[s(457)]=e});o[s(437)]=n.resolve,o[s(457)]=n[s(457)],i.promise=o}catch(t){i[s(516)]={resolve:Kc,reject:Kc}}var a=Vc[s(501)](window[s(447)].href[s(471)]())||[];i[s(521)]=((t||i.url||window.location[s(441)])+"").replace(/#.*$/,"")[s(511)](/^\/\//,a[1]+"//");var h=i[s(521)];!i.crossDomain&&(i.crossDomain=/^([\w-]+:)?\/\/([^\/]+)/.test(i[s(521)])&&RegExp.$2!==window.location[s(441)]);var l=i[s(413)];if(l===s(507)){if(!/=\?/[s(496)](i.url)){var c=(i[s(507)]||s(474))+"=?";i[s(521)]=$c(i[s(521)],c)}return function(t){var e,s=Mc,i=t[s(498)]||"jsonp"+od(),r=window[s(427)].createElement(s(477)),n={abort:function(){i in window&&(window[i]=null)}},o=window[s(427)][s(508)](s(429))[0]||window[s(427)][s(472)];function a(i){var r=s;window[r(475)](e),n[r(512)](),Jc(i[r(506)],n,i[r(506)],t),h()}function h(){var t=s;r[t(482)]?r[t(482)]():r[t(445)]=r.onreadystatechange=r.onerror=null,r.parentNode&&r[t(442)][t(490)](r),r=null,delete window[i]}return r[s(461)]=function(t){a(t)},window[i]=function(i){window[s(475)](e),Qc(i,n,t),h()},Zc(t),r[s(409)]=t[s(521)].replace(/=\?/,"="+i),r[s(409)]=$c(r[s(409)],"_="+(new Date)[s(480)]()),r[s(410)]=!0,t[s(464)]&&(r[s(517)]=t[s(464)]),o[s(416)](r,o[s(424)]),t[s(419)]>0&&(e=window[s(414)](function(){var e=s;n[e(512)](),Jc(e(419),n,e(419),t),h()},t.timeout)),t[s(516)].abort=function(){n[s(512)]()},t[s(516)][s(505)]=n,t[s(516)]}(i)}Zc(i);var d=i[s(449)][l]||i[s(449)]["*"],u={};/^([\w-]+:)\/\//[s(496)](i.url)?RegExp.$1:window[s(447)].protocol;var p,f=Hc[s(505)]();!i[s(489)]&&!u[s(422)]&&(u[s(422)]=s(460)),i.ifModified&&(Wc[h]&&(u[s(518)]=Wc[h]),Gc[h]&&(u["If-None-Match"]=Gc[h])),d&&(u.Accept=d,d[s(466)](",")>-1&&(d=d.split(",",2)[0]),f[s(484)]&&f[s(484)](d));var m=!/^(?:GET|HEAD)$/[s(496)](i[s(506)][s(417)]());if((i[s(467)]&&m&&!1!==i[s(519)]||e[s(519)])&&(u[s(492)]=i[s(519)]),!1===i[s(428)]&&!m){var g=/([?&])_=[^&]*/;i.url=g.test(h)?h[s(511)](g,s(513)+od()):h+(/\?/[s(496)](h)?"&":"?")+"_="+od()}i.headers=sd(u,i[s(483)]||{}),f[s(439)]=function(){var t,e,r=s;if(4===f[r(452)]){clearTimeout(p);var n,o=!1;if(f[r(462)]>=200&&f[r(462)]<300||304===f.status){if(zc=f[r(493)](),i[r(514)]){var a=Xc("Last-Modified");a&&(Wc[h]=a),(a=Xc(r(451)))&&(Gc[h]=a)}l=l||(t=f[r(454)](r(418)),e=Mc,t&&(t===Uc?"html":t===Fc?e(510):Oc[e(496)](t)&&e(486))||e(495)),n=f[r(412)];try{l===r(486)?n=f.responseXML:l===r(510)&&(n=jc[r(496)](n)?null:JSON[r(453)](n))}catch(t){o=t}o?Jc(o,r(473),f,i):Qc(n,f,i)}else Jc(null,"error",f,i)}};var y=!("async"in i)||i[s(410)];if(f.open(i[s(506)],i[s(521)],y,i[s(440)],i[s(434)]),i[s(438)])for(var A in i[s(438)])f[A]=i[s(438)][A];for(var A in i[s(411)]&&f[s(484)]&&f[s(484)](i[s(411)]),i[s(483)])void 0!==i[s(483)][A]&&f[s(470)](A,i[s(483)][A]+"");return!1===function(t,e){var s=Mc,i=e[s(478)];if(!1===e[s(491)][s(522)](i,t,e))return!1}(f,i)?(f[s(512)](),!1):(i.timeout>0&&(p=window[s(414)](function(){var t=s;f[t(439)]=null,f[t(512)](),Jc(null,"timeout",f,i)},i.timeout)),f[s(503)](i[s(467)]?i[s(467)]:null),i[s(516)].abort=function(){f.abort()},i[s(516)])};function Qc(t,e,s){var i=Mc,r=s.context,n=i(426);s[i(426)][i(522)](r,t,n,e),s[i(516)].resolve(t,n,e),Yc(n,e,s)}function Yc(t,e,s){var i=Mc,r=s[i(478)];s[i(432)].call(r,e,t)}function Jc(t,e,s,i){var r=Mc,n=i[r(478)];i[r(450)][r(522)](n,s,e,t),i[r(516)][r(457)](s,e,t),Yc(e,s,i)}function Xc(t){var e,s=Mc;if(!Bc){for(Bc={};e=Nc.exec(zc);)Bc[e[1][s(471)]()]=e[2];e=Bc[t[s(471)]()]}return null===e?null:e}function $c(t,e){return(t+"&"+e)[Mc(511)](/[&?]{1,2}/,"?")}function Zc(t){var e,s,i,r,n=Mc;id(t)&&!(t[n(467)]instanceof FormData)&&t[n(455)]&&(t[n(467)]=(e=t[n(467)],(r=[])[(i=Mc)(509)]=function(t,e){this[i(446)](encodeURIComponent(t)+"="+encodeURIComponent(e))},ed(r,e,s),r[i(443)]("&").replace(i(479),"+"))),t[n(467)]&&(!t[n(506)]||t[n(506)][n(417)]()===n(487))&&(t[n(521)]=$c(t.url,t[n(467)]))}function td(){var t=["accepts","error","etag","readyState","parse","getResponseHeader","processData","slice","reject","130ZpoblF","application/xml, text/xml","XMLHttpRequest","onerror","status","ajaxSetup","scriptCharset","[object Array]","indexOf","data","413kwagyS","2022672zubxoM","setRequestHeader","toLowerCase","documentElement","parseerror","callback","clearTimeout","post","script","context","%20","getTime","329638bvPgzN","clearAttributes","headers","overrideMimeType","text/html","xml","GET","application/json, text/javascript","crossDomain","removeChild","beforeSend","Content-Type","getAllResponseHeaders","text/plain","text","test","toString","jsonpCallback","3IKmOYP","409095lCNkSs","exec","77976vNnDOI","send","object","xhr","type","jsonp","getElementsByTagName","add","json","replace","abort","$1_=","ifModified","concat","promise","charset","If-Modified-Since","contentType","get","url","call","src","async","mimeType","responseText","dataType","setTimeout","application/x-www-form-urlencoded; charset=UTF-8","insertBefore","toUpperCase","content-type","timeout","name","function","X-Requested-With","prototype","firstChild","length","success","document","cache","head","304hiFwFY","value","complete","445awrsCd","password","getJSON","2011947HDeCRV","resolve","xhrFields","onreadystatechange","username","href","parentNode","join","POST","onload","push","location","20314492RlyqrA"];return(td=function(){return t})()}function ed(t,e,s,i){var r,n,o=Mc,a=(r=e,n=Mc,Object[n(423)][n(497)][n(522)](r)===n(465));for(var h in e){var l=e[h];i&&(h=s?i:i+"["+(a?"":h)+"]"),!i&&a?t[o(509)](l[o(420)],l[o(431)]):(s?a(l):id(l))?ed(t,l,s,h):t.add(h,l)}}function sd(t){for(var e=Mc,s=Array[e(423)][e(456)][e(522)](arguments,1),i=0,r=s[e(425)];i<r;i++){var n=s[i]||{};for(var o in n)n.hasOwnProperty(o)&&void 0!==n[o]&&(t[o]=n[o])}return t}function id(t){var e=typeof t;return"function"===e||e===Mc(504)&&!!t}function rd(t,e){var s=td();return(rd=function(t,e){return s[t-=409]})(t,e)}function nd(t){return typeof t===Mc(421)}function od(){var t=Mc;return(new Date)[t(480)]()}qc[Mc(520)]=function(t,e,s,i){return nd(e)&&(i=i||s,s=e,e=void 0),qc({url:t,data:e,success:s,dataType:i})},qc[Mc(476)]=function(t,e,s,i){var r=Mc;return nd(e)&&(i=i||s,s=e,e=void 0),qc({type:r(444),url:t,data:e,success:s,dataType:i})},qc[Mc(435)]=function(t,e,s){var i=Mc;return nd(e)&&(s=e,e=void 0),qc({url:t,data:e,success:s,dataType:i(510)})},qc[Mc(463)]=function(t,e){return e?sd(sd(t,Hc),e):sd(Hc,t)};var ad=Vd;function hd(t){return parseInt(t)===t}function ld(t){if(!hd(t.length))return!1;for(var e=0;e<t.length;e++)if(!hd(t[e])||t[e]<0||t[e]>255)return!1;return!0}function cd(t,e){var s=Vd;if(t[s(223)]&&t[s(209)]===s(246))return e&&(t=t.slice?t[s(233)]():Array[s(225)][s(233)][s(248)](t)),t;if(Array[s(243)](t)){if(!ld(t))throw new Error(s(260)+t);return new Uint8Array(t)}if(hd(t[s(221)])&&ld(t))return new Uint8Array(t);throw new Error(s(241))}function dd(t){return new Uint8Array(t)}function ud(t,e,s,i,r){var n=Vd;(null!=i||null!=r)&&(t=t[n(233)]?t[n(233)](i,r):Array[n(225)][n(233)][n(248)](t,i,r)),e[n(264)](t,s)}!function(t){for(var e=Vd,s=t();;)try{if(779261===parseInt(e(262))/1*(-parseInt(e(247))/2)+parseInt(e(250))/3*(parseInt(e(240))/4)+-parseInt(e(231))/5+-parseInt(e(227))/6+-parseInt(e(261))/7+parseInt(e(214))/8+parseInt(e(226))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(xd);var pd,fd,md={toBytes:function(t){var e=Vd,s=[],i=0;for(t=encodeURI(t);i<t[e(221)];){var r=t[e(224)](i++);37===r?(s.push(parseInt(t[e(239)](i,2),16)),i+=2):s[e(218)](r)}return cd(s)},fromBytes:function(t){for(var e=Vd,s=[],i=0;i<t.length;){var r=t[i];r<128?(s[e(218)](String[e(251)](r)),i++):r>191&&r<224?(s[e(218)](String.fromCharCode((31&r)<<6|63&t[i+1])),i+=2):(s[e(218)](String[e(251)]((15&r)<<12|(63&t[i+1])<<6|63&t[i+2])),i+=3)}return s[e(216)]("")}},gd=(fd=(pd=Vd)(210),{toBytes:function(t){for(var e=Vd,s=[],i=0;i<t[e(221)];i+=2)s[e(218)](parseInt(t[e(239)](i,2),16));return s},fromBytes:function(t){for(var e=pd,s=[],i=0;i<t.length;i++){var r=t[i];s[e(218)](fd[(240&r)>>4]+fd[15&r])}return s[e(216)]("")}}),yd={16:10,24:12,32:14},Ad=[1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145],bd=[99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22],vd=[82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125],Sd=[3328402341,4168907908,4000806809,4135287693,4294111757,3597364157,3731845041,2445657428,1613770832,33620227,3462883241,1445669757,3892248089,3050821474,1303096294,3967186586,2412431941,528646813,2311702848,4202528135,4026202645,2992200171,2387036105,4226871307,1101901292,3017069671,1604494077,1169141738,597466303,1403299063,3832705686,2613100635,1974974402,3791519004,1033081774,1277568618,1815492186,2118074177,4126668546,2211236943,1748251740,1369810420,3521504564,4193382664,3799085459,2883115123,1647391059,706024767,134480908,2512897874,1176707941,2646852446,806885416,932615841,168101135,798661301,235341577,605164086,461406363,3756188221,3454790438,1311188841,2142417613,3933566367,302582043,495158174,1479289972,874125870,907746093,3698224818,3025820398,1537253627,2756858614,1983593293,3084310113,2108928974,1378429307,3722699582,1580150641,327451799,2790478837,3117535592,0,3253595436,1075847264,3825007647,2041688520,3059440621,3563743934,2378943302,1740553945,1916352843,2487896798,2555137236,2958579944,2244988746,3151024235,3320835882,1336584933,3992714006,2252555205,2588757463,1714631509,293963156,2319795663,3925473552,67240454,4269768577,2689618160,2017213508,631218106,1269344483,2723238387,1571005438,2151694528,93294474,1066570413,563977660,1882732616,4059428100,1673313503,2008463041,2950355573,1109467491,537923632,3858759450,4260623118,3218264685,2177748300,403442708,638784309,3287084079,3193921505,899127202,2286175436,773265209,2479146071,1437050866,4236148354,2050833735,3362022572,3126681063,840505643,3866325909,3227541664,427917720,2655997905,2749160575,1143087718,1412049534,999329963,193497219,2353415882,3354324521,1807268051,672404540,2816401017,3160301282,369822493,2916866934,3688947771,1681011286,1949973070,336202270,2454276571,201721354,1210328172,3093060836,2680341085,3184776046,1135389935,3294782118,965841320,831886756,3554993207,4068047243,3588745010,2345191491,1849112409,3664604599,26054028,2983581028,2622377682,1235855840,3630984372,2891339514,4092916743,3488279077,3395642799,4101667470,1202630377,268961816,1874508501,4034427016,1243948399,1546530418,941366308,1470539505,1941222599,2546386513,3421038627,2715671932,3899946140,1042226977,2521517021,1639824860,227249030,260737669,3765465232,2084453954,1907733956,3429263018,2420656344,100860677,4160157185,470683154,3261161891,1781871967,2924959737,1773779408,394692241,2579611992,974986535,664706745,3655459128,3958962195,731420851,571543859,3530123707,2849626480,126783113,865375399,765172662,1008606754,361203602,3387549984,2278477385,2857719295,1344809080,2782912378,59542671,1503764984,160008576,437062935,1707065306,3622233649,2218934982,3496503480,2185314755,697932208,1512910199,504303377,2075177163,2824099068,1841019862,739644986],Ed=[2781242211,2230877308,2582542199,2381740923,234877682,3184946027,2984144751,1418839493,1348481072,50462977,2848876391,2102799147,434634494,1656084439,3863849899,2599188086,1167051466,2636087938,1082771913,2281340285,368048890,3954334041,3381544775,201060592,3963727277,1739838676,4250903202,3930435503,3206782108,4149453988,2531553906,1536934080,3262494647,484572669,2923271059,1783375398,1517041206,1098792767,49674231,1334037708,1550332980,4098991525,886171109,150598129,2481090929,1940642008,1398944049,1059722517,201851908,1385547719,1699095331,1587397571,674240536,2704774806,252314885,3039795866,151914247,908333586,2602270848,1038082786,651029483,1766729511,3447698098,2682942837,454166793,2652734339,1951935532,775166490,758520603,3000790638,4004797018,4217086112,4137964114,1299594043,1639438038,3464344499,2068982057,1054729187,1901997871,2534638724,4121318227,1757008337,0,750906861,1614815264,535035132,3363418545,3988151131,3201591914,1183697867,3647454910,1265776953,3734260298,3566750796,3903871064,1250283471,1807470800,717615087,3847203498,384695291,3313910595,3617213773,1432761139,2484176261,3481945413,283769337,100925954,2180939647,4037038160,1148730428,3123027871,3813386408,4087501137,4267549603,3229630528,2315620239,2906624658,3156319645,1215313976,82966005,3747855548,3245848246,1974459098,1665278241,807407632,451280895,251524083,1841287890,1283575245,337120268,891687699,801369324,3787349855,2721421207,3431482436,959321879,1469301956,4065699751,2197585534,1199193405,2898814052,3887750493,724703513,2514908019,2696962144,2551808385,3516813135,2141445340,1715741218,2119445034,2872807568,2198571144,3398190662,700968686,3547052216,1009259540,2041044702,3803995742,487983883,1991105499,1004265696,1449407026,1316239930,504629770,3683797321,168560134,1816667172,3837287516,1570751170,1857934291,4014189740,2797888098,2822345105,2754712981,936633572,2347923833,852879335,1133234376,1500395319,3084545389,2348912013,1689376213,3533459022,3762923945,3034082412,4205598294,133428468,634383082,2949277029,2398386810,3913789102,403703816,3580869306,2297460856,1867130149,1918643758,607656988,4049053350,3346248884,1368901318,600565992,2090982877,2632479860,557719327,3717614411,3697393085,2249034635,2232388234,2430627952,1115438654,3295786421,2865522278,3633334344,84280067,33027830,303828494,2747425121,1600795957,4188952407,3496589753,2434238086,1486471617,658119965,3106381470,953803233,334231800,3005978776,857870609,3151128937,1890179545,2298973838,2805175444,3056442267,574365214,2450884487,550103529,1233637070,4289353045,2018519080,2057691103,2399374476,4166623649,2148108681,387583245,3664101311,836232934,3330556482,3100665960,3280093505,2955516313,2002398509,287182607,3413881008,4238890068,3597515707,975967766],wd=[1671808611,2089089148,2006576759,2072901243,4061003762,1807603307,1873927791,3310653893,810573872,16974337,1739181671,729634347,4263110654,3613570519,2883997099,1989864566,3393556426,2191335298,3376449993,2106063485,4195741690,1508618841,1204391495,4027317232,2917941677,3563566036,2734514082,2951366063,2629772188,2767672228,1922491506,3227229120,3082974647,4246528509,2477669779,644500518,911895606,1061256767,4144166391,3427763148,878471220,2784252325,3845444069,4043897329,1905517169,3631459288,827548209,356461077,67897348,3344078279,593839651,3277757891,405286936,2527147926,84871685,2595565466,118033927,305538066,2157648768,3795705826,3945188843,661212711,2999812018,1973414517,152769033,2208177539,745822252,439235610,455947803,1857215598,1525593178,2700827552,1391895634,994932283,3596728278,3016654259,695947817,3812548067,795958831,2224493444,1408607827,3513301457,0,3979133421,543178784,4229948412,2982705585,1542305371,1790891114,3410398667,3201918910,961245753,1256100938,1289001036,1491644504,3477767631,3496721360,4012557807,2867154858,4212583931,1137018435,1305975373,861234739,2241073541,1171229253,4178635257,33948674,2139225727,1357946960,1011120188,2679776671,2833468328,1374921297,2751356323,1086357568,2408187279,2460827538,2646352285,944271416,4110742005,3168756668,3066132406,3665145818,560153121,271589392,4279952895,4077846003,3530407890,3444343245,202643468,322250259,3962553324,1608629855,2543990167,1154254916,389623319,3294073796,2817676711,2122513534,1028094525,1689045092,1575467613,422261273,1939203699,1621147744,2174228865,1339137615,3699352540,577127458,712922154,2427141008,2290289544,1187679302,3995715566,3100863416,339486740,3732514782,1591917662,186455563,3681988059,3762019296,844522546,978220090,169743370,1239126601,101321734,611076132,1558493276,3260915650,3547250131,2901361580,1655096418,2443721105,2510565781,3828863972,2039214713,3878868455,3359869896,928607799,1840765549,2374762893,3580146133,1322425422,2850048425,1823791212,1459268694,4094161908,3928346602,1706019429,2056189050,2934523822,135794696,3134549946,2022240376,628050469,779246638,472135708,2800834470,3032970164,3327236038,3894660072,3715932637,1956440180,522272287,1272813131,3185336765,2340818315,2323976074,1888542832,1044544574,3049550261,1722469478,1222152264,50660867,4127324150,236067854,1638122081,895445557,1475980887,3117443513,2257655686,3243809217,489110045,2662934430,3778599393,4162055160,2561878936,288563729,1773916777,3648039385,2391345038,2493985684,2612407707,505560094,2274497927,3911240169,3460925390,1442818645,678973480,3749357023,2358182796,2717407649,2306869641,219617805,3218761151,3862026214,1120306242,1756942440,1103331905,2578459033,762796589,252780047,2966125488,1425844308,3151392187,372911126],Td=[1667474886,2088535288,2004326894,2071694838,4075949567,1802223062,1869591006,3318043793,808472672,16843522,1734846926,724270422,4278065639,3621216949,2880169549,1987484396,3402253711,2189597983,3385409673,2105378810,4210693615,1499065266,1195886990,4042263547,2913856577,3570689971,2728590687,2947541573,2627518243,2762274643,1920112356,3233831835,3082273397,4261223649,2475929149,640051788,909531756,1061110142,4160160501,3435941763,875846760,2779116625,3857003729,4059105529,1903268834,3638064043,825316194,353713962,67374088,3351728789,589522246,3284360861,404236336,2526454071,84217610,2593830191,117901582,303183396,2155911963,3806477791,3958056653,656894286,2998062463,1970642922,151591698,2206440989,741110872,437923380,454765878,1852748508,1515908788,2694904667,1381168804,993742198,3604373943,3014905469,690584402,3823320797,791638366,2223281939,1398011302,3520161977,0,3991743681,538992704,4244381667,2981218425,1532751286,1785380564,3419096717,3200178535,960056178,1246420628,1280103576,1482221744,3486468741,3503319995,4025428677,2863326543,4227536621,1128514950,1296947098,859002214,2240123921,1162203018,4193849577,33687044,2139062782,1347481760,1010582648,2678045221,2829640523,1364325282,2745433693,1077985408,2408548869,2459086143,2644360225,943212656,4126475505,3166494563,3065430391,3671750063,555836226,269496352,4294908645,4092792573,3537006015,3452783745,202118168,320025894,3974901699,1600119230,2543297077,1145359496,387397934,3301201811,2812801621,2122220284,1027426170,1684319432,1566435258,421079858,1936954854,1616945344,2172753945,1330631070,3705438115,572679748,707427924,2425400123,2290647819,1179044492,4008585671,3099120491,336870440,3739122087,1583276732,185277718,3688593069,3772791771,842159716,976899700,168435220,1229577106,101059084,606366792,1549591736,3267517855,3553849021,2897014595,1650632388,2442242105,2509612081,3840161747,2038008818,3890688725,3368567691,926374254,1835907034,2374863873,3587531953,1313788572,2846482505,1819063512,1448540844,4109633523,3941213647,1701162954,2054852340,2930698567,134748176,3132806511,2021165296,623210314,774795868,471606328,2795958615,3031746419,3334885783,3907527627,3722280097,1953799400,522133822,1263263126,3183336545,2341176845,2324333839,1886425312,1044267644,3048588401,1718004428,1212733584,50529542,4143317495,235803164,1633788866,892690282,1465383342,3115962473,2256965911,3250673817,488449850,2661202215,3789633753,4177007595,2560144171,286339874,1768537042,3654906025,2391705863,2492770099,2610673197,505291324,2273808917,3924369609,3469625735,1431699370,673740880,3755965093,2358021891,2711746649,2307489801,218961690,3217021541,3873845719,1111672452,1751693520,1094828930,2576986153,757954394,252645662,2964376443,1414855848,3149649517,370555436],Id=[1374988112,2118214995,437757123,975658646,1001089995,530400753,2902087851,1273168787,540080725,2910219766,2295101073,4110568485,1340463100,3307916247,641025152,3043140495,3736164937,632953703,1172967064,1576976609,3274667266,2169303058,2370213795,1809054150,59727847,361929877,3211623147,2505202138,3569255213,1484005843,1239443753,2395588676,1975683434,4102977912,2572697195,666464733,3202437046,4035489047,3374361702,2110667444,1675577880,3843699074,2538681184,1649639237,2976151520,3144396420,4269907996,4178062228,1883793496,2403728665,2497604743,1383856311,2876494627,1917518562,3810496343,1716890410,3001755655,800440835,2261089178,3543599269,807962610,599762354,33778362,3977675356,2328828971,2809771154,4077384432,1315562145,1708848333,101039829,3509871135,3299278474,875451293,2733856160,92987698,2767645557,193195065,1080094634,1584504582,3178106961,1042385657,2531067453,3711829422,1306967366,2438237621,1908694277,67556463,1615861247,429456164,3602770327,2302690252,1742315127,2968011453,126454664,3877198648,2043211483,2709260871,2084704233,4169408201,0,159417987,841739592,504459436,1817866830,4245618683,260388950,1034867998,908933415,168810852,1750902305,2606453969,607530554,202008497,2472011535,3035535058,463180190,2160117071,1641816226,1517767529,470948374,3801332234,3231722213,1008918595,303765277,235474187,4069246893,766945465,337553864,1475418501,2943682380,4003061179,2743034109,4144047775,1551037884,1147550661,1543208500,2336434550,3408119516,3069049960,3102011747,3610369226,1113818384,328671808,2227573024,2236228733,3535486456,2935566865,3341394285,496906059,3702665459,226906860,2009195472,733156972,2842737049,294930682,1206477858,2835123396,2700099354,1451044056,573804783,2269728455,3644379585,2362090238,2564033334,2801107407,2776292904,3669462566,1068351396,742039012,1350078989,1784663195,1417561698,4136440770,2430122216,775550814,2193862645,2673705150,1775276924,1876241833,3475313331,3366754619,270040487,3902563182,3678124923,3441850377,1851332852,3969562369,2203032232,3868552805,2868897406,566021896,4011190502,3135740889,1248802510,3936291284,699432150,832877231,708780849,3332740144,899835584,1951317047,4236429990,3767586992,866637845,4043610186,1106041591,2144161806,395441711,1984812685,1139781709,3433712980,3835036895,2664543715,1282050075,3240894392,1181045119,2640243204,25965917,4203181171,4211818798,3009879386,2463879762,3910161971,1842759443,2597806476,933301370,1509430414,3943906441,3467192302,3076639029,3776767469,2051518780,2631065433,1441952575,404016761,1942435775,1408749034,1610459739,3745345300,2017778566,3400528769,3110650942,941896748,3265478751,371049330,3168937228,675039627,4279080257,967311729,135050206,3635733660,1683407248,2076935265,3576870512,1215061108,3501741890],kd=[1347548327,1400783205,3273267108,2520393566,3409685355,4045380933,2880240216,2471224067,1428173050,4138563181,2441661558,636813900,4233094615,3620022987,2149987652,2411029155,1239331162,1730525723,2554718734,3781033664,46346101,310463728,2743944855,3328955385,3875770207,2501218972,3955191162,3667219033,768917123,3545789473,692707433,1150208456,1786102409,2029293177,1805211710,3710368113,3065962831,401639597,1724457132,3028143674,409198410,2196052529,1620529459,1164071807,3769721975,2226875310,486441376,2499348523,1483753576,428819965,2274680428,3075636216,598438867,3799141122,1474502543,711349675,129166120,53458370,2592523643,2782082824,4063242375,2988687269,3120694122,1559041666,730517276,2460449204,4042459122,2706270690,3446004468,3573941694,533804130,2328143614,2637442643,2695033685,839224033,1973745387,957055980,2856345839,106852767,1371368976,4181598602,1033297158,2933734917,1179510461,3046200461,91341917,1862534868,4284502037,605657339,2547432937,3431546947,2003294622,3182487618,2282195339,954669403,3682191598,1201765386,3917234703,3388507166,0,2198438022,1211247597,2887651696,1315723890,4227665663,1443857720,507358933,657861945,1678381017,560487590,3516619604,975451694,2970356327,261314535,3535072918,2652609425,1333838021,2724322336,1767536459,370938394,182621114,3854606378,1128014560,487725847,185469197,2918353863,3106780840,3356761769,2237133081,1286567175,3152976349,4255350624,2683765030,3160175349,3309594171,878443390,1988838185,3704300486,1756818940,1673061617,3403100636,272786309,1075025698,545572369,2105887268,4174560061,296679730,1841768865,1260232239,4091327024,3960309330,3497509347,1814803222,2578018489,4195456072,575138148,3299409036,446754879,3629546796,4011996048,3347532110,3252238545,4270639778,915985419,3483825537,681933534,651868046,2755636671,3828103837,223377554,2607439820,1649704518,3270937875,3901806776,1580087799,4118987695,3198115200,2087309459,2842678573,3016697106,1003007129,2802849917,1860738147,2077965243,164439672,4100872472,32283319,2827177882,1709610350,2125135846,136428751,3874428392,3652904859,3460984630,3572145929,3593056380,2939266226,824852259,818324884,3224740454,930369212,2801566410,2967507152,355706840,1257309336,4148292826,243256656,790073846,2373340630,1296297904,1422699085,3756299780,3818836405,457992840,3099667487,2135319889,77422314,1560382517,1945798516,788204353,1521706781,1385356242,870912086,325965383,2358957921,2050466060,2388260884,2313884476,4006521127,901210569,3990953189,1014646705,1503449823,1062597235,2031621326,3212035895,3931371469,1533017514,350174575,2256028891,2177544179,1052338372,741876788,1606591296,1914052035,213705253,2334669897,1107234197,1899603969,3725069491,2631447780,2422494913,1635502980,1893020342,1950903388,1120974935],_d=[2807058932,1699970625,2764249623,1586903591,1808481195,1173430173,1487645946,59984867,4199882800,1844882806,1989249228,1277555970,3623636965,3419915562,1149249077,2744104290,1514790577,459744698,244860394,3235995134,1963115311,4027744588,2544078150,4190530515,1608975247,2627016082,2062270317,1507497298,2200818878,567498868,1764313568,3359936201,2305455554,2037970062,1047239e3,1910319033,1337376481,2904027272,2892417312,984907214,1243112415,830661914,861968209,2135253587,2011214180,2927934315,2686254721,731183368,1750626376,4246310725,1820824798,4172763771,3542330227,48394827,2404901663,2871682645,671593195,3254988725,2073724613,145085239,2280796200,2779915199,1790575107,2187128086,472615631,3029510009,4075877127,3802222185,4107101658,3201631749,1646252340,4270507174,1402811438,1436590835,3778151818,3950355702,3963161475,4020912224,2667994737,273792366,2331590177,104699613,95345982,3175501286,2377486676,1560637892,3564045318,369057872,4213447064,3919042237,1137477952,2658625497,1119727848,2340947849,1530455833,4007360968,172466556,266959938,516552836,0,2256734592,3980931627,1890328081,1917742170,4294704398,945164165,3575528878,958871085,3647212047,2787207260,1423022939,775562294,1739656202,3876557655,2530391278,2443058075,3310321856,547512796,1265195639,437656594,3121275539,719700128,3762502690,387781147,218828297,3350065803,2830708150,2848461854,428169201,122466165,3720081049,1627235199,648017665,4122762354,1002783846,2117360635,695634755,3336358691,4234721005,4049844452,3704280881,2232435299,574624663,287343814,612205898,1039717051,840019705,2708326185,793451934,821288114,1391201670,3822090177,376187827,3113855344,1224348052,1679968233,2361698556,1058709744,752375421,2431590963,1321699145,3519142200,2734591178,188127444,2177869557,3727205754,2384911031,3215212461,2648976442,2450346104,3432737375,1180849278,331544205,3102249176,4150144569,2952102595,2159976285,2474404304,766078933,313773861,2570832044,2108100632,1668212892,3145456443,2013908262,418672217,3070356634,2594734927,1852171925,3867060991,3473416636,3907448597,2614737639,919489135,164948639,2094410160,2997825956,590424639,2486224549,1723872674,3157750862,3399941250,3501252752,3625268135,2555048196,3673637356,1343127501,4130281361,3599595085,2957853679,1297403050,81781910,3051593425,2283490410,532201772,1367295589,3926170974,895287692,1953757831,1093597963,492483431,3528626907,1446242576,1192455638,1636604631,209336225,344873464,1015671571,669961897,3375740769,3857572124,2973530695,3747192018,1933530610,3464042516,935293895,3454686199,2858115069,1863638845,3683022916,4085369519,3292445032,875313188,1080017571,3279033885,621591778,1233856572,2504130317,24197544,3017672716,3835484340,3247465558,2220981195,3060847922,1551124588,1463996600],Cd=[4104605777,1097159550,396673818,660510266,2875968315,2638606623,4200115116,3808662347,821712160,1986918061,3430322568,38544885,3856137295,718002117,893681702,1654886325,2975484382,3122358053,3926825029,4274053469,796197571,1290801793,1184342925,3556361835,2405426947,2459735317,1836772287,1381620373,3196267988,1948373848,3764988233,3385345166,3263785589,2390325492,1480485785,3111247143,3780097726,2293045232,548169417,3459953789,3746175075,439452389,1362321559,1400849762,1685577905,1806599355,2174754046,137073913,1214797936,1174215055,3731654548,2079897426,1943217067,1258480242,529487843,1437280870,3945269170,3049390895,3313212038,923313619,679998e3,3215307299,57326082,377642221,3474729866,2041877159,133361907,1776460110,3673476453,96392454,878845905,2801699524,777231668,4082475170,2330014213,4142626212,2213296395,1626319424,1906247262,1846563261,562755902,3708173718,1040559837,3871163981,1418573201,3294430577,114585348,1343618912,2566595609,3186202582,1078185097,3651041127,3896688048,2307622919,425408743,3371096953,2081048481,1108339068,2216610296,0,2156299017,736970802,292596766,1517440620,251657213,2235061775,2933202493,758720310,265905162,1554391400,1532285339,908999204,174567692,1474760595,4002861748,2610011675,3234156416,3693126241,2001430874,303699484,2478443234,2687165888,585122620,454499602,151849742,2345119218,3064510765,514443284,4044981591,1963412655,2581445614,2137062819,19308535,1928707164,1715193156,4219352155,1126790795,600235211,3992742070,3841024952,836553431,1669664834,2535604243,3323011204,1243905413,3141400786,4180808110,698445255,2653899549,2989552604,2253581325,3252932727,3004591147,1891211689,2487810577,3915653703,4237083816,4030667424,2100090966,865136418,1229899655,953270745,3399679628,3557504664,4118925222,2061379749,3079546586,2915017791,983426092,2022837584,1607244650,2118541908,2366882550,3635996816,972512814,3283088770,1568718495,3499326569,3576539503,621982671,2895723464,410887952,2623762152,1002142683,645401037,1494807662,2595684844,1335535747,2507040230,4293295786,3167684641,367585007,3885750714,1865862730,2668221674,2960971305,2763173681,1059270954,2777952454,2724642869,1320957812,2194319100,2429595872,2815956275,77089521,3973773121,3444575871,2448830231,1305906550,4021308739,2857194700,2516901860,3518358430,1787304780,740276417,1699839814,1592394909,2352307457,2272556026,188821243,1729977011,3687994002,274084841,3594982253,3613494426,2701949495,4162096729,322734571,2837966542,1640576439,484830689,1202797690,3537852828,4067639125,349075736,3342319475,4157467219,4255800159,1030690015,1155237496,2951971274,1757691577,607398968,2738905026,499347990,3794078908,1011452712,227885567,2818666809,213114376,3034881240,1455525988,3414450555,850817237,1817998408,3092726480],Dd=[0,235474187,470948374,303765277,941896748,908933415,607530554,708780849,1883793496,2118214995,1817866830,1649639237,1215061108,1181045119,1417561698,1517767529,3767586992,4003061179,4236429990,4069246893,3635733660,3602770327,3299278474,3400528769,2430122216,2664543715,2362090238,2193862645,2835123396,2801107407,3035535058,3135740889,3678124923,3576870512,3341394285,3374361702,3810496343,3977675356,4279080257,4043610186,2876494627,2776292904,3076639029,3110650942,2472011535,2640243204,2403728665,2169303058,1001089995,899835584,666464733,699432150,59727847,226906860,530400753,294930682,1273168787,1172967064,1475418501,1509430414,1942435775,2110667444,1876241833,1641816226,2910219766,2743034109,2976151520,3211623147,2505202138,2606453969,2302690252,2269728455,3711829422,3543599269,3240894392,3475313331,3843699074,3943906441,4178062228,4144047775,1306967366,1139781709,1374988112,1610459739,1975683434,2076935265,1775276924,1742315127,1034867998,866637845,566021896,800440835,92987698,193195065,429456164,395441711,1984812685,2017778566,1784663195,1683407248,1315562145,1080094634,1383856311,1551037884,101039829,135050206,437757123,337553864,1042385657,807962610,573804783,742039012,2531067453,2564033334,2328828971,2227573024,2935566865,2700099354,3001755655,3168937228,3868552805,3902563182,4203181171,4102977912,3736164937,3501741890,3265478751,3433712980,1106041591,1340463100,1576976609,1408749034,2043211483,2009195472,1708848333,1809054150,832877231,1068351396,766945465,599762354,159417987,126454664,361929877,463180190,2709260871,2943682380,3178106961,3009879386,2572697195,2538681184,2236228733,2336434550,3509871135,3745345300,3441850377,3274667266,3910161971,3877198648,4110568485,4211818798,2597806476,2497604743,2261089178,2295101073,2733856160,2902087851,3202437046,2968011453,3936291284,3835036895,4136440770,4169408201,3535486456,3702665459,3467192302,3231722213,2051518780,1951317047,1716890410,1750902305,1113818384,1282050075,1584504582,1350078989,168810852,67556463,371049330,404016761,841739592,1008918595,775550814,540080725,3969562369,3801332234,4035489047,4269907996,3569255213,3669462566,3366754619,3332740144,2631065433,2463879762,2160117071,2395588676,2767645557,2868897406,3102011747,3069049960,202008497,33778362,270040487,504459436,875451293,975658646,675039627,641025152,2084704233,1917518562,1615861247,1851332852,1147550661,1248802510,1484005843,1451044056,933301370,967311729,733156972,632953703,260388950,25965917,328671808,496906059,1206477858,1239443753,1543208500,1441952575,2144161806,1908694277,1675577880,1842759443,3610369226,3644379585,3408119516,3307916247,4011190502,3776767469,4077384432,4245618683,2809771154,2842737049,3144396420,3043140495,2673705150,2438237621,2203032232,2370213795],Ld=[0,185469197,370938394,487725847,741876788,657861945,975451694,824852259,1483753576,1400783205,1315723890,1164071807,1950903388,2135319889,1649704518,1767536459,2967507152,3152976349,2801566410,2918353863,2631447780,2547432937,2328143614,2177544179,3901806776,3818836405,4270639778,4118987695,3299409036,3483825537,3535072918,3652904859,2077965243,1893020342,1841768865,1724457132,1474502543,1559041666,1107234197,1257309336,598438867,681933534,901210569,1052338372,261314535,77422314,428819965,310463728,3409685355,3224740454,3710368113,3593056380,3875770207,3960309330,4045380933,4195456072,2471224067,2554718734,2237133081,2388260884,3212035895,3028143674,2842678573,2724322336,4138563181,4255350624,3769721975,3955191162,3667219033,3516619604,3431546947,3347532110,2933734917,2782082824,3099667487,3016697106,2196052529,2313884476,2499348523,2683765030,1179510461,1296297904,1347548327,1533017514,1786102409,1635502980,2087309459,2003294622,507358933,355706840,136428751,53458370,839224033,957055980,605657339,790073846,2373340630,2256028891,2607439820,2422494913,2706270690,2856345839,3075636216,3160175349,3573941694,3725069491,3273267108,3356761769,4181598602,4063242375,4011996048,3828103837,1033297158,915985419,730517276,545572369,296679730,446754879,129166120,213705253,1709610350,1860738147,1945798516,2029293177,1239331162,1120974935,1606591296,1422699085,4148292826,4233094615,3781033664,3931371469,3682191598,3497509347,3446004468,3328955385,2939266226,2755636671,3106780840,2988687269,2198438022,2282195339,2501218972,2652609425,1201765386,1286567175,1371368976,1521706781,1805211710,1620529459,2105887268,1988838185,533804130,350174575,164439672,46346101,870912086,954669403,636813900,788204353,2358957921,2274680428,2592523643,2441661558,2695033685,2880240216,3065962831,3182487618,3572145929,3756299780,3270937875,3388507166,4174560061,4091327024,4006521127,3854606378,1014646705,930369212,711349675,560487590,272786309,457992840,106852767,223377554,1678381017,1862534868,1914052035,2031621326,1211247597,1128014560,1580087799,1428173050,32283319,182621114,401639597,486441376,768917123,651868046,1003007129,818324884,1503449823,1385356242,1333838021,1150208456,1973745387,2125135846,1673061617,1756818940,2970356327,3120694122,2802849917,2887651696,2637442643,2520393566,2334669897,2149987652,3917234703,3799141122,4284502037,4100872472,3309594171,3460984630,3545789473,3629546796,2050466060,1899603969,1814803222,1730525723,1443857720,1560382517,1075025698,1260232239,575138148,692707433,878443390,1062597235,243256656,91341917,409198410,325965383,3403100636,3252238545,3704300486,3620022987,3874428392,3990953189,4042459122,4227665663,2460449204,2578018489,2226875310,2411029155,3198115200,3046200461,2827177882,2743944855],Rd=[0,218828297,437656594,387781147,875313188,958871085,775562294,590424639,1750626376,1699970625,1917742170,2135253587,1551124588,1367295589,1180849278,1265195639,3501252752,3720081049,3399941250,3350065803,3835484340,3919042237,4270507174,4085369519,3102249176,3051593425,2734591178,2952102595,2361698556,2177869557,2530391278,2614737639,3145456443,3060847922,2708326185,2892417312,2404901663,2187128086,2504130317,2555048196,3542330227,3727205754,3375740769,3292445032,3876557655,3926170974,4246310725,4027744588,1808481195,1723872674,1910319033,2094410160,1608975247,1391201670,1173430173,1224348052,59984867,244860394,428169201,344873464,935293895,984907214,766078933,547512796,1844882806,1627235199,2011214180,2062270317,1507497298,1423022939,1137477952,1321699145,95345982,145085239,532201772,313773861,830661914,1015671571,731183368,648017665,3175501286,2957853679,2807058932,2858115069,2305455554,2220981195,2474404304,2658625497,3575528878,3625268135,3473416636,3254988725,3778151818,3963161475,4213447064,4130281361,3599595085,3683022916,3432737375,3247465558,3802222185,4020912224,4172763771,4122762354,3201631749,3017672716,2764249623,2848461854,2331590177,2280796200,2431590963,2648976442,104699613,188127444,472615631,287343814,840019705,1058709744,671593195,621591778,1852171925,1668212892,1953757831,2037970062,1514790577,1463996600,1080017571,1297403050,3673637356,3623636965,3235995134,3454686199,4007360968,3822090177,4107101658,4190530515,2997825956,3215212461,2830708150,2779915199,2256734592,2340947849,2627016082,2443058075,172466556,122466165,273792366,492483431,1047239e3,861968209,612205898,695634755,1646252340,1863638845,2013908262,1963115311,1446242576,1530455833,1277555970,1093597963,1636604631,1820824798,2073724613,1989249228,1436590835,1487645946,1337376481,1119727848,164948639,81781910,331544205,516552836,1039717051,821288114,669961897,719700128,2973530695,3157750862,2871682645,2787207260,2232435299,2283490410,2667994737,2450346104,3647212047,3564045318,3279033885,3464042516,3980931627,3762502690,4150144569,4199882800,3070356634,3121275539,2904027272,2686254721,2200818878,2384911031,2570832044,2486224549,3747192018,3528626907,3310321856,3359936201,3950355702,3867060991,4049844452,4234721005,1739656202,1790575107,2108100632,1890328081,1402811438,1586903591,1233856572,1149249077,266959938,48394827,369057872,418672217,1002783846,919489135,567498868,752375421,209336225,24197544,376187827,459744698,945164165,895287692,574624663,793451934,1679968233,1764313568,2117360635,1933530610,1343127501,1560637892,1243112415,1192455638,3704280881,3519142200,3336358691,3419915562,3907448597,3857572124,4075877127,4294704398,3029510009,3113855344,2927934315,2744104290,2159976285,2377486676,2594734927,2544078150],Pd=[0,151849742,303699484,454499602,607398968,758720310,908999204,1059270954,1214797936,1097159550,1517440620,1400849762,1817998408,1699839814,2118541908,2001430874,2429595872,2581445614,2194319100,2345119218,3034881240,3186202582,2801699524,2951971274,3635996816,3518358430,3399679628,3283088770,4237083816,4118925222,4002861748,3885750714,1002142683,850817237,698445255,548169417,529487843,377642221,227885567,77089521,1943217067,2061379749,1640576439,1757691577,1474760595,1592394909,1174215055,1290801793,2875968315,2724642869,3111247143,2960971305,2405426947,2253581325,2638606623,2487810577,3808662347,3926825029,4044981591,4162096729,3342319475,3459953789,3576539503,3693126241,1986918061,2137062819,1685577905,1836772287,1381620373,1532285339,1078185097,1229899655,1040559837,923313619,740276417,621982671,439452389,322734571,137073913,19308535,3871163981,4021308739,4104605777,4255800159,3263785589,3414450555,3499326569,3651041127,2933202493,2815956275,3167684641,3049390895,2330014213,2213296395,2566595609,2448830231,1305906550,1155237496,1607244650,1455525988,1776460110,1626319424,2079897426,1928707164,96392454,213114376,396673818,514443284,562755902,679998e3,865136418,983426092,3708173718,3557504664,3474729866,3323011204,4180808110,4030667424,3945269170,3794078908,2507040230,2623762152,2272556026,2390325492,2975484382,3092726480,2738905026,2857194700,3973773121,3856137295,4274053469,4157467219,3371096953,3252932727,3673476453,3556361835,2763173681,2915017791,3064510765,3215307299,2156299017,2307622919,2459735317,2610011675,2081048481,1963412655,1846563261,1729977011,1480485785,1362321559,1243905413,1126790795,878845905,1030690015,645401037,796197571,274084841,425408743,38544885,188821243,3613494426,3731654548,3313212038,3430322568,4082475170,4200115116,3780097726,3896688048,2668221674,2516901860,2366882550,2216610296,3141400786,2989552604,2837966542,2687165888,1202797690,1320957812,1437280870,1554391400,1669664834,1787304780,1906247262,2022837584,265905162,114585348,499347990,349075736,736970802,585122620,972512814,821712160,2595684844,2478443234,2293045232,2174754046,3196267988,3079546586,2895723464,2777952454,3537852828,3687994002,3234156416,3385345166,4142626212,4293295786,3841024952,3992742070,174567692,57326082,410887952,292596766,777231668,660510266,1011452712,893681702,1108339068,1258480242,1343618912,1494807662,1715193156,1865862730,1948373848,2100090966,2701949495,2818666809,3004591147,3122358053,2235061775,2352307457,2535604243,2653899549,3915653703,3764988233,4219352155,4067639125,3444575871,3294430577,3746175075,3594982253,836553431,953270745,600235211,718002117,367585007,484830689,133361907,251657213,2041877159,1891211689,1806599355,1654886325,1568718495,1418573201,1335535747,1184342925];function xd(){var t=["3684605lAliLL","Cipher Feedback","slice","number","defineProperty","Output Feedback","_lastCipherblock","_lastPrecipherIndex","substr","4plnczr","unsupported array-like object","invalid plaintext size (must be multiple of 16 bytes)","isArray","AES must be instanitated with `new`","invalid ciphertext size (must be segmentSize bytes)","Uint8Array","70PdhsRT","call","Electronic Code Block","2707083PktkIn","fromCharCode","invalid ciphertext size (must be 16 bytes)","ctr","_lastPrecipher","Counter","_Kd","Cipher Block Chaining","PKCS#7 invalid length","cbc","Array contains invalid value: ","9920330LaKvoQ","12409Ybbzza","invalid plaintext size (must be segmentSize bytes)","set","setBytes","encrypt","_counter","invalid counter bytes size (must be 16 bytes)","key","segmentSize","_Ke","invalid initialation vector size (must be 16 bytes)","_prepare","invalid ciphertext size (must be multiple of 16 bytes)","decrypt","name","0123456789abcdef","_shiftRegister","_aes","Counter must be instanitated with `new`","3158032DDpMNm","description","join","invalid plaintext size (must be 16 bytes)","push","ofb","cfb","length","_remainingCounterIndex","buffer","charCodeAt","prototype","28137906jrwour","6335172CepyrM","setValue","_remainingCounter","invalid initialation vector size (must be 16 size)"];return(xd=function(){return t})()}function Md(t){for(var e=Vd,s=[],i=0;i<t[e(221)];i+=4)s[e(218)](t[i]<<24|t[i+1]<<16|t[i+2]<<8|t[i+3]);return s}var Bd=function(t){var e=Vd;if(!(this instanceof Bd))throw Error(e(244));Object[e(235)](this,e(202),{value:cd(t,!0)}),this._prepare()};Bd[ad(225)][ad(206)]=function(){var t=ad,e=yd[this[t(202)][t(221)]];if(null==e)throw new Error("invalid key size (must be 16, 24 or 32 bytes)");this[t(204)]=[],this[t(256)]=[];for(var s=0;s<=e;s++)this[t(204)][t(218)]([0,0,0,0]),this[t(256)][t(218)]([0,0,0,0]);var i,r=4*(e+1),n=this[t(202)][t(221)]/4,o=Md(this[t(202)]);for(s=0;s<n;s++)i=s>>2,this[t(204)][i][s%4]=o[s],this[t(256)][e-i][s%4]=o[s];for(var a,h=0,l=n;l<r;){if(a=o[n-1],o[0]^=bd[a>>16&255]<<24^bd[a>>8&255]<<16^bd[255&a]<<8^bd[a>>24&255]^Ad[h]<<24,h+=1,8!=n)for(s=1;s<n;s++)o[s]^=o[s-1];else{for(s=1;s<n/2;s++)o[s]^=o[s-1];a=o[n/2-1],o[n/2]^=bd[255&a]^bd[a>>8&255]<<8^bd[a>>16&255]<<16^bd[a>>24&255]<<24;for(s=n/2+1;s<n;s++)o[s]^=o[s-1]}for(s=0;s<n&&l<r;)c=l>>2,d=l%4,this[t(204)][c][d]=o[s],this[t(256)][e-c][d]=o[s++],l++}for(var c=1;c<e;c++)for(var d=0;d<4;d++)a=this[t(256)][c][d],this[t(256)][c][d]=Dd[a>>24&255]^Ld[a>>16&255]^Rd[a>>8&255]^Pd[255&a]},Bd.prototype[ad(266)]=function(t){var e=ad;if(16!=t[e(221)])throw new Error(e(217));for(var s=this[e(204)][e(221)]-1,i=[0,0,0,0],r=Md(t),n=0;n<4;n++)r[n]^=this[e(204)][0][n];for(var o=1;o<s;o++){for(n=0;n<4;n++)i[n]=Sd[r[n]>>24&255]^Ed[r[(n+1)%4]>>16&255]^wd[r[(n+2)%4]>>8&255]^Td[255&r[(n+3)%4]]^this[e(204)][o][n];r=i.slice()}var a,h=dd(16);for(n=0;n<4;n++)a=this[e(204)][s][n],h[4*n]=255&(bd[r[n]>>24&255]^a>>24),h[4*n+1]=255&(bd[r[(n+1)%4]>>16&255]^a>>16),h[4*n+2]=255&(bd[r[(n+2)%4]>>8&255]^a>>8),h[4*n+3]=255&(bd[255&r[(n+3)%4]]^a);return h},Bd[ad(225)][ad(208)]=function(t){var e=ad;if(16!=t[e(221)])throw new Error(e(252));for(var s=this._Kd.length-1,i=[0,0,0,0],r=Md(t),n=0;n<4;n++)r[n]^=this[e(256)][0][n];for(var o=1;o<s;o++){for(n=0;n<4;n++)i[n]=Id[r[n]>>24&255]^kd[r[(n+3)%4]>>16&255]^_d[r[(n+2)%4]>>8&255]^Cd[255&r[(n+1)%4]]^this[e(256)][o][n];r=i[e(233)]()}var a,h=dd(16);for(n=0;n<4;n++)a=this[e(256)][s][n],h[4*n]=255&(vd[r[n]>>24&255]^a>>24),h[4*n+1]=255&(vd[r[(n+3)%4]>>16&255]^a>>16),h[4*n+2]=255&(vd[r[(n+2)%4]>>8&255]^a>>8),h[4*n+3]=255&(vd[255&r[(n+1)%4]]^a);return h};var Fd=function(t){var e=ad;if(!(this instanceof Fd))throw Error(e(244));this[e(215)]=e(249),this[e(209)]="ecb",this[e(212)]=new Bd(t)};Fd[ad(225)][ad(266)]=function(t){var e=ad;if((t=cd(t)).length%16!=0)throw new Error(e(242));for(var s=dd(t[e(221)]),i=dd(16),r=0;r<t[e(221)];r+=16)ud(t,i,0,r,r+16),ud(i=this[e(212)][e(266)](i),s,r);return s},Fd[ad(225)][ad(208)]=function(t){var e=ad;if((t=cd(t))[e(221)]%16!=0)throw new Error(e(207));for(var s=dd(t[e(221)]),i=dd(16),r=0;r<t[e(221)];r+=16)ud(t,i,0,r,r+16),ud(i=this._aes[e(208)](i),s,r);return s};var Ud=function(t,e){var s=ad;if(!(this instanceof Ud))throw Error(s(244));if(this[s(215)]=s(257),this[s(209)]=s(259),e){if(16!=e[s(221)])throw new Error(s(205))}else e=dd(16);this[s(237)]=cd(e,!0),this[s(212)]=new Bd(t)};Ud[ad(225)][ad(266)]=function(t){var e=ad;if((t=cd(t))[e(221)]%16!=0)throw new Error("invalid plaintext size (must be multiple of 16 bytes)");for(var s=dd(t.length),i=dd(16),r=0;r<t[e(221)];r+=16){ud(t,i,0,r,r+16);for(var n=0;n<16;n++)i[n]^=this[e(237)][n];this[e(237)]=this[e(212)][e(266)](i),ud(this[e(237)],s,r)}return s},Ud[ad(225)][ad(208)]=function(t){var e=ad;if((t=cd(t))[e(221)]%16!=0)throw new Error(e(207));for(var s=dd(t.length),i=dd(16),r=0;r<t[e(221)];r+=16){ud(t,i,0,r,r+16),i=this[e(212)].decrypt(i);for(var n=0;n<16;n++)s[r+n]=i[n]^this[e(237)][n];ud(t,this[e(237)],0,r,r+16)}return s};var Od=function(t,e,s){var i=ad;if(!(this instanceof Od))throw Error(i(244));if(this[i(215)]=i(232),this.name=i(220),e){if(16!=e[i(221)])throw new Error(i(230))}else e=dd(16);!s&&(s=1),this[i(203)]=s,this._shiftRegister=cd(e,!0),this[i(212)]=new Bd(t)};Od[ad(225)][ad(266)]=function(t){var e=ad;if(t[e(221)]%this[e(203)]!=0)throw new Error(e(263));for(var s,i=cd(t,!0),r=0;r<i[e(221)];r+=this[e(203)]){s=this._aes[e(266)](this._shiftRegister);for(var n=0;n<this[e(203)];n++)i[r+n]^=s[n];ud(this[e(211)],this[e(211)],0,this.segmentSize),ud(i,this[e(211)],16-this[e(203)],r,r+this.segmentSize)}return i},Od[ad(225)][ad(208)]=function(t){var e=ad;if(t[e(221)]%this[e(203)]!=0)throw new Error(e(245));for(var s,i=cd(t,!0),r=0;r<i[e(221)];r+=this[e(203)]){s=this[e(212)][e(266)](this._shiftRegister);for(var n=0;n<this[e(203)];n++)i[r+n]^=s[n];ud(this[e(211)],this[e(211)],0,this[e(203)]),ud(t,this[e(211)],16-this[e(203)],r,r+this.segmentSize)}return i};var Nd=function(t,e){var s=ad;if(!(this instanceof Nd))throw Error(s(244));if(this[s(215)]=s(236),this[s(209)]=s(219),e){if(16!=e.length)throw new Error(s(205))}else e=dd(16);this[s(254)]=cd(e,!0),this[s(238)]=16,this[s(212)]=new Bd(t)};function Vd(t,e){var s=xd();return(Vd=function(t,e){return s[t-=202]})(t,e)}Nd[ad(225)][ad(266)]=function(t){for(var e=ad,s=cd(t,!0),i=0;i<s[e(221)];i++)16===this[e(238)]&&(this[e(254)]=this[e(212)][e(266)](this[e(254)]),this[e(238)]=0),s[i]^=this[e(254)][this[e(238)]++];return s},Nd[ad(225)][ad(208)]=Nd[ad(225)].encrypt;var jd=function(t){var e=ad;if(!(this instanceof jd))throw Error(e(213));0!==t&&!t&&(t=1),typeof t===e(234)?(this[e(267)]=dd(16),this[e(228)](t)):this.setBytes(t)};jd[ad(225)].setValue=function(t){if(typeof t!==ad(234)||parseInt(t)!=t)throw new Error("invalid counter value (must be an integer)");if(t>Number.MAX_SAFE_INTEGER)throw new Error("integer value out of safe range");for(var e=15;e>=0;--e)this._counter[e]=t%256,t=parseInt(t/256)},jd.prototype[ad(265)]=function(t){var e=ad;if(16!=(t=cd(t,!0)).length)throw new Error(e(268));this[e(267)]=t},jd[ad(225)].increment=function(){for(var t=ad,e=15;e>=0;e--){if(255!==this[t(267)][e]){this[t(267)][e]++;break}this._counter[e]=0}};var Wd=function(t,e){var s=ad;if(!(this instanceof Wd))throw Error("AES must be instanitated with `new`");this[s(215)]=s(255),this[s(209)]=s(253),!(e instanceof jd)&&(e=new jd(e)),this[s(267)]=e,this._remainingCounter=null,this[s(222)]=16,this[s(212)]=new Bd(t)};Wd[ad(225)][ad(266)]=function(t){for(var e=ad,s=cd(t,!0),i=0;i<s[e(221)];i++)16===this[e(222)]&&(this[e(229)]=this[e(212)].encrypt(this[e(267)][e(267)]),this[e(222)]=0,this[e(267)].increment()),s[i]^=this._remainingCounter[this[e(222)]++];return s},Wd[ad(225)].decrypt=Wd[ad(225)].encrypt;const Gd={AES:Bd,Counter:jd,ModeOfOperation:{ecb:Fd,cbc:Ud,cfb:Od,ofb:Nd,ctr:Wd},utils:{hex:gd,utf8:md},padding:{pkcs7:{pad:function(t){var e=ad,s=16-(t=cd(t,!0))[e(221)]%16,i=dd(t[e(221)]+s);ud(t,i);for(var r=t[e(221)];r<i.length;r++)i[r]=s;return i},strip:function(t){var e=ad;if((t=cd(t,!0))[e(221)]<16)throw new Error(e(258));var s=t[t[e(221)]-1];if(s>16)throw new Error("PKCS#7 padding byte out of range");for(var i=t[e(221)]-s,r=0;r<s;r++)if(t[i+r]!==s)throw new Error("PKCS#7 invalid padding byte");var n=dd(i);return ud(t,n,0,0,i),n}}},_arrayTest:{coerceArray:cd,createArray:dd,copyArray:ud}};function zd(t,e){var s=Hd();return(zd=function(t,e){return s[t-=133]})(t,e)}function Hd(){var t=["min","readInt32LE","lib","2370376BbIUiS","fromCharCode","_minBufferSize","4452177EQfLVQ","parse","3334093ZXifHv","737718kekuri","commonjsGlobal","35zsQWkg","_doFinalize","clone","object","WordArray","exports","Hex","ceil","11038918WxwLsz","CryptoJS","join","length","finalize","_append","undefined","charCodeAt","mixIn","string","push","getRandomValues","call","7878483qkPEzZ","toString","863864CbEFbC","10TowHXO","function","enc","concat","cfg","msCrypto","splice","algo","Malformed UTF-8 data","hasOwnProperty","extend","words","Native crypto module could not be used to get secure random number.","8ERmWwy","reset","clamp","HMAC","sigBytes","blockSize","crypto","apply","_doProcessBlock","_nDataBytes","BufferedBlockAlgorithm","substr","$super","4rVZluT","prototype","_doReset","stringify","commonjsRequire","randomBytes","init","_process","Utf8","_data"];return(Hd=function(){return t})()}!function(t){for(var e=zd,s=t();;)try{if(890880===parseInt(e(195))/1*(-parseInt(e(168))/2)+parseInt(e(140))/3+parseInt(e(137))/4+-parseInt(e(145))/5*(parseInt(e(143))/6)+-parseInt(e(142))/7*(parseInt(e(182))/8)+parseInt(e(166))/9*(parseInt(e(169))/10)+parseInt(e(153))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Hd);var Kd=me(function(t,e){var s,i,n;s=ge[zd(144)],i=function(){var t=t||function(t){var e,s=zd;if("undefined"!=typeof window&&window[s(188)]&&(e=window.crypto),"undefined"!=typeof self&&self[s(188)]&&(e=self[s(188)]),"undefined"!=typeof globalThis&&globalThis[s(188)]&&(e=globalThis[s(188)]),!e&&typeof window!==s(159)&&window[s(174)]&&(e=window[s(174)]),!e&&typeof ge[s(144)]!==s(159)&&ge[s(144)][s(188)]&&(e=ge[s(144)][s(188)]),!e&&"function"==typeof ge[s(199)])try{e=r.default}catch(t){}var i=function(){var t=s;if(e){if(typeof e.getRandomValues===t(170))try{return e[t(164)](new Uint32Array(1))[0]}catch(t){}if(typeof e.randomBytes===t(170))try{return e[t(200)](4)[t(135)]()}catch(t){}}throw new Error(t(181))},n=Object.create||function(){function t(){}return function(e){var s,i=zd;return t[i(196)]=e,s=new t,t[i(196)]=null,s}}(),o={},a=o[s(136)]={},h=a.Base={extend:function(t){var e=zd,s=n(this);return t&&s[e(161)](t),(!s.hasOwnProperty(e(201))||this[e(201)]===s[e(201)])&&(s.init=function(){var t=e;s[t(194)][t(201)].apply(this,arguments)}),s[e(201)][e(196)]=s,s.$super=this,s},create:function(){var t=zd,e=this[t(179)]();return e[t(201)][t(189)](e,arguments),e},init:function(){},mixIn:function(t){var e=zd;for(var s in t)t[e(178)](s)&&(this[s]=t[s]);t[e(178)](e(167))&&(this[e(167)]=t[e(167)])},clone:function(){var t=zd;return this.init.prototype[t(179)](this)}},l=a[s(149)]=h[s(179)]({init:function(t,e){var i=s;t=this[i(180)]=t||[],this[i(186)]=null!=e?e:4*t[i(156)]},toString:function(t){return(t||d)[s(198)](this)},concat:function(t){var e=s,i=this[e(180)],r=t.words,n=this[e(186)],o=t[e(186)];if(this[e(184)](),n%4)for(var a=0;a<o;a++){var h=r[a>>>2]>>>24-a%4*8&255;i[n+a>>>2]|=h<<24-(n+a)%4*8}else for(var l=0;l<o;l+=4)i[n+l>>>2]=r[l>>>2];return this[e(186)]+=o,this},clamp:function(){var e=s,i=this[e(180)],r=this[e(186)];i[r>>>2]&=4294967295<<32-r%4*8,i[e(156)]=t.ceil(r/4)},clone:function(){var t=s,e=h.clone[t(165)](this);return e.words=this[t(180)].slice(0),e},random:function(t){for(var e=s,r=[],n=0;n<t;n+=4)r[e(163)](i());return new(l[e(201)])(r,t)}}),c=o[s(171)]={},d=c[s(151)]={stringify:function(t){for(var e=s,i=t[e(180)],r=t[e(186)],n=[],o=0;o<r;o++){var a=i[o>>>2]>>>24-o%4*8&255;n[e(163)]((a>>>4)[e(167)](16)),n[e(163)]((15&a)[e(167)](16))}return n[e(155)]("")},parse:function(t){for(var e=s,i=t[e(156)],r=[],n=0;n<i;n+=2)r[n>>>3]|=parseInt(t[e(193)](n,2),16)<<24-n%8*4;return new(l[e(201)])(r,i/2)}},u=c.Latin1={stringify:function(t){for(var e=s,i=t[e(180)],r=t.sigBytes,n=[],o=0;o<r;o++){var a=i[o>>>2]>>>24-o%4*8&255;n[e(163)](String[e(138)](a))}return n.join("")},parse:function(t){for(var e=s,i=t[e(156)],r=[],n=0;n<i;n++)r[n>>>2]|=(255&t[e(160)](n))<<24-n%4*8;return new(l[e(201)])(r,i)}},p=c[s(203)]={stringify:function(t){var e=s;try{return decodeURIComponent(escape(u[e(198)](t)))}catch(t){throw new Error(e(177))}},parse:function(t){return u[s(141)](unescape(encodeURIComponent(t)))}},f=a[s(192)]=h[s(179)]({reset:function(){var t=s;this[t(133)]=new l.init,this[t(191)]=0},_append:function(t){var e=s;typeof t==e(162)&&(t=p[e(141)](t)),this._data[e(172)](t),this[e(191)]+=t[e(186)]},_process:function(e){var i,r=s,n=this[r(133)],o=n[r(180)],a=n.sigBytes,h=this[r(187)],c=a/(4*h),d=(c=e?t[r(152)](c):t.max((0|c)-this[r(139)],0))*h,u=t[r(134)](4*d,a);if(d){for(var p=0;p<d;p+=h)this[r(190)](o,p);i=o[r(175)](0,d),n.sigBytes-=u}return new(l[r(201)])(i,u)},clone:function(){var t=s,e=h[t(147)][t(165)](this);return e._data=this[t(133)][t(147)](),e},_minBufferSize:0});a.Hasher=f[s(179)]({cfg:h[s(179)](),init:function(t){var e=s;this[e(173)]=this.cfg[e(179)](t),this[e(183)]()},reset:function(){var t=s;f[t(183)][t(165)](this),this[t(197)]()},update:function(t){var e=s;return this[e(158)](t),this[e(202)](),this},finalize:function(t){var e=s;return t&&this[e(158)](t),this[e(146)]()},blockSize:16,_createHelper:function(t){return function(e,s){var i=zd;return new t.init(s)[i(157)](e)}},_createHmacHelper:function(t){return function(e,s){var i=zd;return new(m[i(185)][i(201)])(t,s)[i(157)](e)}}});var m=o[s(176)]={};return o}(Math);return t},(n=zd)(148)==n(148)?t[n(150)]=i():"undefined"===n(170)&&(void 0).amd?(void 0)([],i):s[n(154)]=i()});function qd(t,e){var s=Yd();return(qd=function(t,e){return s[t-=434]})(t,e)}var Qd=qd;!function(t){for(var e=qd,s=t();;)try{if(618915===-parseInt(e(437))/1+parseInt(e(453))/2*(parseInt(e(450))/3)+-parseInt(e(434))/4+-parseInt(e(452))/5+parseInt(e(451))/6+-parseInt(e(458))/7*(-parseInt(e(435))/8)+parseInt(e(447))/9*(parseInt(e(461))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Yd);ge[Qd(439)](function(t,e){var s,i,r;s=fe,i=function(t){return i=(s=t)[(e=qd)(448)],r=i.Base,n=i[e(460)],(o=s[e(440)]={})[e(455)]=r[e(456)]({init:function(t,s){this[e(446)]=t,this.low=s}}),o[e(460)]=r[e(456)]({init:function(t,s){t=this[e(459)]=t||[],this.sigBytes=null!=s?s:8*t.length},toX32:function(){for(var t=e,s=this[t(459)],i=s[t(449)],r=[],o=0;o<i;o++){var a=s[o];r.push(a[t(446)]),r[t(444)](a[t(436)])}return n[t(457)](r,this.sigBytes)},clone:function(){for(var t=e,s=r[t(443)].call(this),i=s[t(459)]=this[t(459)].slice(0),n=i[t(449)],o=0;o<n;o++)i[o]=i[o][t(443)]();return s}}),t;var e,s,i,r,n,o},"object"===(r=qd)(438)?t[r(442)]=i(Kd):"undefined"===r(454)&&(void 0)[r(441)]?(void 0)(["./core"],i):i(s[r(445)])});function Yd(){var t=["clone","push","CryptoJS","high","107703XCDSjf","lib","length","180TdOaiP","3240432XRgHTe","4466925qiZHAG","29668ZdrwAY","function","Word","extend","create","15421vEAZQW","words","WordArray","1610kNFqpt","3850236CwRdyu","696GvbWYb","low","1073601ftoUOx","object","createCommonjsModule","x64","amd","exports"];return(Yd=function(){return t})()}var Jd=$d;function Xd(){var t=["lib","function","396875TSwPuB","1576830ZvxefY","buffer","byteLength","2YPyfdT","createCommonjsModule","1785340CcWjQZ","26540XFDLRd","undefined","exports","714oAxurB","byteOffset","2898375ytuenV","./core","CryptoJS","object","apply","amd","8245269WsUBBW","commonjsGlobal","WordArray","8ehYqcl","11105836aHXdbY","prototype","init"];return(Xd=function(){return t})()}function $d(t,e){var s=Xd();return($d=function(t,e){return s[t-=179]})(t,e)}!function(t){for(var e=$d,s=t();;)try{if(797737===parseInt(e(205))/1*(parseInt(e(182))/2)+parseInt(e(190))/3+-parseInt(e(184))/4+parseInt(e(185))/5*(-parseInt(e(188))/6)+parseInt(e(200))/7+-parseInt(e(199))/8*(parseInt(e(196))/9)+-parseInt(e(179))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Xd);ge[Jd(183)](function(t,e){var s,i,r;s=ge[Jd(197)],i=function(t){return function(){var e=$d;if(typeof ArrayBuffer==e(204)){var s=t[e(203)][e(198)],i=s[e(202)],r=s[e(202)]=function(t){var s=e;if(t instanceof ArrayBuffer&&(t=new Uint8Array(t)),(t instanceof Int8Array||typeof Uint8ClampedArray!==s(186)&&t instanceof Uint8ClampedArray||t instanceof Int16Array||t instanceof Uint16Array||t instanceof Int32Array||t instanceof Uint32Array||t instanceof Float32Array||t instanceof Float64Array)&&(t=new Uint8Array(t[s(180)],t[s(189)],t[s(181)])),t instanceof Uint8Array){for(var r=t[s(181)],n=[],o=0;o<r;o++)n[o>>>2]|=t[o]<<24-o%4*8;i.call(this,n,r)}else i[s(194)](this,arguments)};r[e(201)]=s}}(),t.lib.WordArray},(r=$d)(193)==r(193)?t[r(187)]=i(Kd):"undefined"===r(204)&&(void 0)[r(195)]?(void 0)([r(191)],i):i(s[r(192)])});function Zd(){var t=["createCommonjsModule","Utf16","13767849HpsBlK","sigBytes","3SSDuGM","Utf16BE","845895mrYnWQ","CryptoJS","6211424eOxwjq","length","push","object","exports","./core","words","lib","function","4527956wujzZU","create","fromCharCode","502481YbmfhR","join","262LUrRbx","WordArray","charCodeAt","10vPyWcR","enc","Utf16LE","commonjsGlobal","4694YFuKyk","2396094nmXKef"];return(Zd=function(){return t})()}var tu=eu;!function(t){for(var e=eu,s=t();;)try{if(630097===-parseInt(e(301))/1*(parseInt(e(308))/2)+-parseInt(e(314))/3*(-parseInt(e(327))/4)+-parseInt(e(316))/5+-parseInt(e(309))/6+-parseInt(e(299))/7+-parseInt(e(318))/8+-parseInt(e(312))/9*(-parseInt(e(304))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Zd);ge[tu(310)](function(t,e){var s,i,r,n=tu;s=ge[n(307)],i=function(t){var e=n;return function(){var e=eu,s=t,i=s[e(325)][e(302)],r=s.enc;function n(t){return t<<8&4278255360|t>>>8&16711935}r[e(311)]=r[e(315)]={stringify:function(t){for(var s=e,i=t[s(324)],r=t.sigBytes,n=[],o=0;o<r;o+=2){var a=i[o>>>2]>>>16-o%4*8&65535;n[s(320)](String[s(298)](a))}return n[s(300)]("")},parse:function(t){for(var s=e,r=t[s(319)],n=[],o=0;o<r;o++)n[o>>>1]|=t[s(303)](o)<<16-o%2*16;return i[s(328)](n,2*r)}},r[e(306)]={stringify:function(t){for(var s=e,i=t[s(324)],r=t[s(313)],o=[],a=0;a<r;a+=2){var h=n(i[a>>>2]>>>16-a%4*8&65535);o[s(320)](String.fromCharCode(h))}return o[s(300)]("")},parse:function(t){for(var s=e,r=t.length,o=[],a=0;a<r;a++)o[a>>>1]|=n(t[s(303)](a)<<16-a%2*16);return i[s(328)](o,2*r)}}}(),t[e(305)][e(311)]},(r=eu)(321)==r(321)?t[r(322)]=i(Kd):"undefined"===r(326)&&(void 0).amd?(void 0)([r(323)],i):i(s[r(317)])});function eu(t,e){var s=Zd();return(eu=function(t,e){return s[t-=298]})(t,e)}var su=iu;function iu(t,e){var s=ru();return(iu=function(t,e){return s[t-=488]})(t,e)}function ru(){var t=["charAt","commonjsGlobal","5462psZEqr","1832046UlOeNb","_reverseMap","indexOf","405459adAfqi","208QMpRde","lib","1922315yfAYGR","1678117YWtDnH","exports","2024744LUDoMd","createCommonjsModule","charCodeAt","enc","ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=","clamp","WordArray","create","object","Base64","1907108jiCIxK","./core","length","join","18sCuHYz","push"];return(ru=function(){return t})()}!function(t){for(var e=iu,s=t();;)try{if(470729===parseInt(e(490))/1*(parseInt(e(513))/2)+-parseInt(e(514))/3+parseInt(e(505))/4+-parseInt(e(492))/5+parseInt(e(509))/6*(parseInt(e(493))/7)+-parseInt(e(495))/8+-parseInt(e(489))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(ru);ge[su(496)](function(t,e){var s,i,r;s=ge[su(512)],i=function(t){return i=(s=t)[(e=iu)(491)][e(501)],s[e(498)][e(504)]={stringify:function(t){var s=e,i=t.words,r=t.sigBytes,n=this._map;t[s(500)]();for(var o=[],a=0;a<r;a+=3)for(var h=(i[a>>>2]>>>24-a%4*8&255)<<16|(i[a+1>>>2]>>>24-(a+1)%4*8&255)<<8|i[a+2>>>2]>>>24-(a+2)%4*8&255,l=0;l<4&&a+.75*l<r;l++)o[s(510)](n[s(511)](h>>>6*(3-l)&63));var c=n[s(511)](64);if(c)for(;o[s(507)]%4;)o[s(510)](c);return o[s(508)]("")},parse:function(t){var s=e,r=t[s(507)],n=this._map,o=this[s(515)];if(!o){o=this[s(515)]=[];for(var a=0;a<n[s(507)];a++)o[n[s(497)](a)]=a}var h=n[s(511)](64);if(h){var l=t[s(488)](h);-1!==l&&(r=l)}return function(t,s,r){for(var n=e,o=[],a=0,h=0;h<s;h++)if(h%4){var l=r[t[n(497)](h-1)]<<h%4*2|r[t[n(497)](h)]>>>6-h%4*2;o[a>>>2]|=l<<24-a%4*8,a++}return i[n(502)](o,a)}(t,r,o)},_map:e(499)},t.enc.Base64;var e,s,i},"object"===(r=iu)(503)?t[r(494)]=i(Kd):i(s.CryptoJS)});function nu(){var t=["3315pspWXs","object","sigBytes","_map","7642430fsFQFI","14369WBcewl","124YVmsKi","lib","create","./core","CryptoJS","4143558GrAcTU","Base64url","push","ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=","join","2800084OdUVpu","exports","2857832zWKMdx","amd","length","_reverseMap","clamp","18wrvDfK","charAt","9155gezWxE","_safe_map","charCodeAt","260YcJKjy","indexOf"];return(nu=function(){return t})()}function ou(t,e){var s=nu();return(ou=function(t,e){return s[t-=360]})(t,e)}!function(t){for(var e=ou,s=t();;)try{if(412886===-parseInt(e(362))/1+parseInt(e(385))/2*(parseInt(e(387))/3)+parseInt(e(363))/4*(-parseInt(e(382))/5)+parseInt(e(368))/6+-parseInt(e(373))/7+parseInt(e(375))/8*(-parseInt(e(380))/9)+parseInt(e(361))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(nu);me(function(t,e){var s,i,r;s=fe,i=function(t){var e,s,i,r=ou;return i=(s=t)[(e=ou)(364)].WordArray,s.enc[e(369)]={stringify:function(t,s){var i=e;void 0===s&&(s=!0);var r=t.words,n=t[i(389)],o=s?this[i(383)]:this[i(360)];t[i(379)]();for(var a=[],h=0;h<n;h+=3)for(var l=(r[h>>>2]>>>24-h%4*8&255)<<16|(r[h+1>>>2]>>>24-(h+1)%4*8&255)<<8|r[h+2>>>2]>>>24-(h+2)%4*8&255,c=0;c<4&&h+.75*c<n;c++)a[i(370)](o.charAt(l>>>6*(3-c)&63));var d=o[i(381)](64);if(d)for(;a[i(377)]%4;)a[i(370)](d);return a[i(372)]("")},parse:function(t,s){var r=e;void 0===s&&(s=!0);var n=t[r(377)],o=s?this[r(383)]:this[r(360)],a=this._reverseMap;if(!a){a=this[r(378)]=[];for(var h=0;h<o[r(377)];h++)a[o[r(384)](h)]=h}var l=o[r(381)](64);if(l){var c=t[r(386)](l);-1!==c&&(n=c)}return function(t,s,r){for(var n=e,o=[],a=0,h=0;h<s;h++)if(h%4){var l=r[t[n(384)](h-1)]<<h%4*2|r[t.charCodeAt(h)]>>>6-h%4*2;o[a>>>2]|=l<<24-a%4*8,a++}return i[n(365)](o,a)}(t,n,a)},_map:e(371),_safe_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_"},t.enc[r(369)]},(r=ou)(388)==r(388)?t[r(374)]=i(Kd):i(s[r(367)])});var au=lu;function hu(){var t=["6hOIJjp","algo","call","_data","commonjsGlobal","createCommonjsModule","5780306lHAUsv","2OZODcf","./core","words","function","sigBytes","init","390337CyMCTY","object","exports","amd","extend","sin","clone","abs","125313RUrOJu","6497705fMzcps","_createHmacHelper","10301896SibHkQ","WordArray","lib","length","_hash","5015460GuLXhE","539361jncPBV","MD5","16QMzRsR","CryptoJS","168oHFFnu","floor"];return(hu=function(){return t})()}!function(t){for(var e=lu,s=t();;)try{if(794545===-parseInt(e(400))/1*(-parseInt(e(394))/2)+-parseInt(e(408))/3*(parseInt(e(419))/4)+-parseInt(e(409))/5*(parseInt(e(387))/6)+-parseInt(e(393))/7+-parseInt(e(385))/8*(-parseInt(e(417))/9)+parseInt(e(416))/10+parseInt(e(411))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(hu);ge[au(392)](function(t,e){var s,i,r,n=au;s=ge[n(391)],i=function(t){var e=n;return function(e){var s=lu,i=t,r=i[s(413)],n=r[s(412)],o=r.Hasher,a=i[s(388)],h=[];!function(){for(var t=s,i=0;i<64;i++)h[i]=4294967296*e[t(407)](e[t(405)](i+1))|0}();var l=a.MD5=o[s(404)]({_doReset:function(){var t=s;this[t(415)]=new(n[t(399)])([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(t,e){for(var i=s,r=0;r<16;r++){var n=e+r,o=t[n];t[n]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8)}var a=this[i(415)].words,l=t[e+0],f=t[e+1],m=t[e+2],g=t[e+3],y=t[e+4],A=t[e+5],b=t[e+6],v=t[e+7],S=t[e+8],E=t[e+9],w=t[e+10],T=t[e+11],I=t[e+12],k=t[e+13],_=t[e+14],C=t[e+15],D=a[0],L=a[1],R=a[2],P=a[3];D=c(D,L,R,P,l,7,h[0]),P=c(P,D,L,R,f,12,h[1]),R=c(R,P,D,L,m,17,h[2]),L=c(L,R,P,D,g,22,h[3]),D=c(D,L,R,P,y,7,h[4]),P=c(P,D,L,R,A,12,h[5]),R=c(R,P,D,L,b,17,h[6]),L=c(L,R,P,D,v,22,h[7]),D=c(D,L,R,P,S,7,h[8]),P=c(P,D,L,R,E,12,h[9]),R=c(R,P,D,L,w,17,h[10]),L=c(L,R,P,D,T,22,h[11]),D=c(D,L,R,P,I,7,h[12]),P=c(P,D,L,R,k,12,h[13]),R=c(R,P,D,L,_,17,h[14]),D=d(D,L=c(L,R,P,D,C,22,h[15]),R,P,f,5,h[16]),P=d(P,D,L,R,b,9,h[17]),R=d(R,P,D,L,T,14,h[18]),L=d(L,R,P,D,l,20,h[19]),D=d(D,L,R,P,A,5,h[20]),P=d(P,D,L,R,w,9,h[21]),R=d(R,P,D,L,C,14,h[22]),L=d(L,R,P,D,y,20,h[23]),D=d(D,L,R,P,E,5,h[24]),P=d(P,D,L,R,_,9,h[25]),R=d(R,P,D,L,g,14,h[26]),L=d(L,R,P,D,S,20,h[27]),D=d(D,L,R,P,k,5,h[28]),P=d(P,D,L,R,m,9,h[29]),R=d(R,P,D,L,v,14,h[30]),D=u(D,L=d(L,R,P,D,I,20,h[31]),R,P,A,4,h[32]),P=u(P,D,L,R,S,11,h[33]),R=u(R,P,D,L,T,16,h[34]),L=u(L,R,P,D,_,23,h[35]),D=u(D,L,R,P,f,4,h[36]),P=u(P,D,L,R,y,11,h[37]),R=u(R,P,D,L,v,16,h[38]),L=u(L,R,P,D,w,23,h[39]),D=u(D,L,R,P,k,4,h[40]),P=u(P,D,L,R,l,11,h[41]),R=u(R,P,D,L,g,16,h[42]),L=u(L,R,P,D,b,23,h[43]),D=u(D,L,R,P,E,4,h[44]),P=u(P,D,L,R,I,11,h[45]),R=u(R,P,D,L,C,16,h[46]),D=p(D,L=u(L,R,P,D,m,23,h[47]),R,P,l,6,h[48]),P=p(P,D,L,R,v,10,h[49]),R=p(R,P,D,L,_,15,h[50]),L=p(L,R,P,D,A,21,h[51]),D=p(D,L,R,P,I,6,h[52]),P=p(P,D,L,R,g,10,h[53]),R=p(R,P,D,L,w,15,h[54]),L=p(L,R,P,D,f,21,h[55]),D=p(D,L,R,P,S,6,h[56]),P=p(P,D,L,R,C,10,h[57]),R=p(R,P,D,L,b,15,h[58]),L=p(L,R,P,D,k,21,h[59]),D=p(D,L,R,P,y,6,h[60]),P=p(P,D,L,R,T,10,h[61]),R=p(R,P,D,L,m,15,h[62]),L=p(L,R,P,D,E,21,h[63]),a[0]=a[0]+D|0,a[1]=a[1]+L|0,a[2]=a[2]+R|0,a[3]=a[3]+P|0},_doFinalize:function(){var t=s,i=this[t(390)],r=i[t(396)],n=8*this._nDataBytes,o=8*i[t(398)];r[o>>>5]|=128<<24-o%32;var a=e[t(386)](n/4294967296),h=n;r[15+(o+64>>>9<<4)]=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),r[14+(o+64>>>9<<4)]=16711935&(h<<8|h>>>24)|4278255360&(h<<24|h>>>8),i[t(398)]=4*(r[t(414)]+1),this._process();for(var l=this[t(415)],c=l[t(396)],d=0;d<4;d++){var u=c[d];c[d]=16711935&(u<<8|u>>>24)|4278255360&(u<<24|u>>>8)}return l},clone:function(){var t=s,e=o[t(406)][t(389)](this);return e[t(415)]=this[t(415)][t(406)](),e}});function c(t,e,s,i,r,n,o){var a=t+(e&s|~e&i)+r+o;return(a<<n|a>>>32-n)+e}function d(t,e,s,i,r,n,o){var a=t+(e&i|s&~i)+r+o;return(a<<n|a>>>32-n)+e}function u(t,e,s,i,r,n,o){var a=t+(e^s^i)+r+o;return(a<<n|a>>>32-n)+e}function p(t,e,s,i,r,n,o){var a=t+(s^(e|~i))+r+o;return(a<<n|a>>>32-n)+e}i[s(418)]=o._createHelper(l),i.HmacMD5=o[s(410)](l)}(Math),t[e(418)]},"object"===(r=lu)(401)?t[r(402)]=i(Kd):"undefined"===r(397)&&(void 0)[r(403)]?(void 0)([r(395)],i):i(s[r(384)])});function lu(t,e){var s=hu();return(lu=function(t,e){return s[t-=384]})(t,e)}function cu(t,e){var s=uu();return(cu=function(t,e){return s[t-=388]})(t,e)}var du=cu;!function(t){for(var e=cu,s=t();;)try{if(790847===-parseInt(e(405))/1+parseInt(e(410))/2+parseInt(e(411))/3*(-parseInt(e(404))/4)+-parseInt(e(413))/5+parseInt(e(420))/6+-parseInt(e(395))/7*(-parseInt(e(401))/8)+-parseInt(e(397))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(uu);ge[du(415)](function(t,e){var s,i,r;s=fe,i=function(t){var e,s,i,r,n,o,a,h,l=cu;return i=(s=t)[(e=cu)(409)],r=i[e(408)],n=i.Hasher,o=s[e(419)],a=[],h=o[e(388)]=n.extend({_doReset:function(){var t=e;this[t(416)]=new(r[t(394)])([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(t,s){for(var i=e,r=this[i(416)][i(392)],n=r[0],o=r[1],h=r[2],l=r[3],c=r[4],d=0;d<80;d++){if(d<16)a[d]=0|t[s+d];else{var u=a[d-3]^a[d-8]^a[d-14]^a[d-16];a[d]=u<<1|u>>>31}var p=(n<<5|n>>>27)+c+a[d];p+=d<20?1518500249+(o&h|~o&l):d<40?1859775393+(o^h^l):d<60?(o&h|o&l|h&l)-1894007588:(o^h^l)-899497514,c=l,l=h,h=o<<30|o>>>2,o=n,n=p}r[0]=r[0]+n|0,r[1]=r[1]+o|0,r[2]=r[2]+h|0,r[3]=r[3]+l|0,r[4]=r[4]+c|0},_doFinalize:function(){var t=e,s=this[t(389)],i=s[t(392)],r=8*this[t(417)],n=8*s.sigBytes;return i[n>>>5]|=128<<24-n%32,i[14+(n+64>>>9<<4)]=Math[t(399)](r/4294967296),i[15+(n+64>>>9<<4)]=r,s[t(406)]=4*i.length,this[t(407)](),this._hash},clone:function(){var t=e,s=n[t(414)][t(403)](this);return s._hash=this[t(416)][t(414)](),s}}),s.SHA1=n[e(396)](h),s[e(400)]=n[e(391)](h),t[l(388)]},(r=cu)(398)==r(398)?t[r(393)]=i(Kd):"undefined"===r(390)&&(void 0)[r(418)]?(void 0)([r(402)],i):i(s[r(412)])});function uu(){var t=["_data","function","_createHmacHelper","words","exports","init","9151772qYusiV","_createHelper","11089845cMoztW","object","floor","HmacSHA1","8NTSPqR","./core","call","1225580GVSgrb","291844amDNvl","sigBytes","_process","WordArray","lib","1766368jdVvij","3wFJMiq","CryptoJS","5430695oYBxfR","clone","createCommonjsModule","_hash","_nDataBytes","amd","algo","9101100ohysNx","SHA1"];return(uu=function(){return t})()}var pu=fu;function fu(t,e){var s=mu();return(fu=function(t,e){return s[t-=479]})(t,e)}function mu(){var t=["commonjsGlobal","_data","slice","5853176cLzAKt","1563057rOMItP","33XWRzku","object","amd","SHA256","extend","words","_nDataBytes","1twnJKZ","sigBytes","Hasher","4973262PtpRGH","CryptoJS","191888ZUkHZs","88eetpte","_hash","call","pow","clone","algo","floor","_process","3309655MygRSa","./core","lib","6yzbFIv","init","3546010nsyaHO","exports","HmacSHA256","65163aODVgF","createCommonjsModule"];return(mu=function(){return t})()}!function(t){for(var e=fu,s=t();;)try{if(463858===parseInt(e(481))/1*(parseInt(e(486))/2)+-parseInt(e(503))/3*(-parseInt(e(487))/4)+parseInt(e(495))/5*(-parseInt(e(498))/6)+parseInt(e(484))/7+parseInt(e(508))/8+parseInt(e(509))/9+-parseInt(e(500))/10*(parseInt(e(510))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(mu);ge[pu(504)](function(t,e){var s,i,r,n=pu;s=ge[n(505)],i=function(t){var e=n;return function(e){var s=fu,i=t,r=i[s(497)],n=r.WordArray,o=r[s(483)],a=i[s(492)],h=[],l=[];!function(){var t=s;function i(t){for(var s=e.sqrt(t),i=2;i<=s;i++)if(!(t%i))return!1;return!0}function r(t){return 4294967296*(t-(0|t))|0}for(var n=2,o=0;o<64;)i(n)&&(o<8&&(h[o]=r(e.pow(n,.5))),l[o]=r(e[t(490)](n,1/3)),o++),n++}();var c=[],d=a[s(513)]=o[s(514)]({_doReset:function(){var t=s;this[t(488)]=new(n[t(499)])(h[t(507)](0))},_doProcessBlock:function(t,e){for(var i=s,r=this._hash[i(479)],n=r[0],o=r[1],a=r[2],h=r[3],d=r[4],u=r[5],p=r[6],f=r[7],m=0;m<64;m++){if(m<16)c[m]=0|t[e+m];else{var g=c[m-15],y=(g<<25|g>>>7)^(g<<14|g>>>18)^g>>>3,A=c[m-2],b=(A<<15|A>>>17)^(A<<13|A>>>19)^A>>>10;c[m]=y+c[m-7]+b+c[m-16]}var v=n&o^n&a^o&a,S=(n<<30|n>>>2)^(n<<19|n>>>13)^(n<<10|n>>>22),E=f+((d<<26|d>>>6)^(d<<21|d>>>11)^(d<<7|d>>>25))+(d&u^~d&p)+l[m]+c[m];f=p,p=u,u=d,d=h+E|0,h=a,a=o,o=n,n=E+(S+v)|0}r[0]=r[0]+n|0,r[1]=r[1]+o|0,r[2]=r[2]+a|0,r[3]=r[3]+h|0,r[4]=r[4]+d|0,r[5]=r[5]+u|0,r[6]=r[6]+p|0,r[7]=r[7]+f|0},_doFinalize:function(){var t=s,i=this[t(506)],r=i.words,n=8*this[t(480)],o=8*i[t(482)];return r[o>>>5]|=128<<24-o%32,r[14+(o+64>>>9<<4)]=e[t(493)](n/4294967296),r[15+(o+64>>>9<<4)]=n,i[t(482)]=4*r.length,this[t(494)](),this[t(488)]},clone:function(){var t=s,e=o[t(491)][t(489)](this);return e[t(488)]=this._hash.clone(),e}});i.SHA256=o._createHelper(d),i[s(502)]=o._createHmacHelper(d)}(Math),t[e(513)]},(r=fu)(511)==r(511)?t[r(501)]=i(Kd):i(s[r(485)])});function gu(){var t=["21656mVEhkn","_createHmacHelper","65wDJJTE","exports","_hash","_createHelper","1910eRYATp","./core","SHA256","function","2GNYmSU","1457448lzulED","4279584skyiEN","commonjsGlobal","SHA224","init","19557IvYBHc","1295gpwnQH","object","./sha256","CryptoJS","24488yaljwp","316846agPkDG","HmacSHA224","12809995blmATZ","extend","WordArray","lib"];return(gu=function(){return t})()}function yu(t,e){var s=gu();return(yu=function(t,e){return s[t-=389]})(t,e)}!function(t){for(var e=yu,s=t();;)try{if(573005===parseInt(e(392))/1+parseInt(e(408))/2*(parseInt(e(409))/3)+-parseInt(e(398))/4*(-parseInt(e(400))/5)+parseInt(e(410))/6+-parseInt(e(415))/7*(-parseInt(e(391))/8)+-parseInt(e(414))/9*(parseInt(e(404))/10)+-parseInt(e(394))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(gu);me(function(t,e){var s,i,r;s=ge[yu(411)],i=function(t){return i=(s=t)[(e=yu)(397)][e(396)],r=s.algo,n=r[e(406)],o=r.SHA224=n[e(395)]({_doReset:function(){var t=e;this[t(402)]=new(i[t(413)])([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var t=n._doFinalize.call(this);return t.sigBytes-=4,t}}),s[e(412)]=n[e(403)](o),s[e(393)]=n[e(399)](o),t.SHA224;var e,s,i,r,n,o},(r=yu)(416)==r(416)?t[r(401)]=i(Kd):"undefined"===r(407)&&(void 0).amd?(void 0)([r(405),r(389)],i):i(s[r(390)])});var Au=bu;function bu(t,e){var s=vu();return(bu=function(t,e){return s[t-=413]})(t,e)}function vu(){var t=["init","125131FTeupX","x64","./x64-core","algo","CryptoJS","amd","clone","lib","351205LtHiUO","193407ESeTBZ","36jedtaC","object","1926708RVcBYG","SHA512","low","1121438yULfbC","_createHelper","_process","createCommonjsModule","2962812hHMass","words","extend","high","8146496PCBXFw","_hash","HmacSHA512","sigBytes","floor","WordArray","create","Word","function","_data"];return(vu=function(){return t})()}!function(t){for(var e=bu,s=t();;)try{if(404870===-parseInt(e(436))/1+-parseInt(e(417))/2+-parseInt(e(445))/3+parseInt(e(446))/4*(-parseInt(e(444))/5)+parseInt(e(421))/6+parseInt(e(414))/7+parseInt(e(425))/8)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(vu);ge[Au(420)](function(t,e){var s,i,r;s=fe,i=function(t){var e=bu;return function(){var e=bu,s=t,i=s[e(443)].Hasher,r=s[e(437)],n=r[e(432)],o=r[e(430)],a=s[e(439)];function h(){return n[e(431)].apply(n,arguments)}var l=[h(1116352408,3609767458),h(1899447441,602891725),h(3049323471,3964484399),h(3921009573,2173295548),h(961987163,4081628472),h(1508970993,3053834265),h(2453635748,2937671579),h(2870763221,3664609560),h(3624381080,2734883394),h(310598401,1164996542),h(607225278,1323610764),h(1426881987,3590304994),h(1925078388,4068182383),h(2162078206,991336113),h(2614888103,633803317),h(3248222580,3479774868),h(3835390401,2666613458),h(4022224774,944711139),h(264347078,2341262773),h(604807628,2007800933),h(770255983,1495990901),h(1249150122,1856431235),h(1555081692,3175218132),h(1996064986,2198950837),h(2554220882,3999719339),h(2821834349,766784016),h(2952996808,2566594879),h(3210313671,3203337956),h(3336571891,1034457026),h(3584528711,2466948901),h(113926993,3758326383),h(338241895,168717936),h(666307205,1188179964),h(773529912,1546045734),h(1294757372,1522805485),h(1396182291,2643833823),h(1695183700,2343527390),h(1986661051,1014477480),h(2177026350,1206759142),h(2456956037,344077627),h(2730485921,1290863460),h(2820302411,3158454273),h(3259730800,3505952657),h(3345764771,106217008),h(3516065817,3606008344),h(3600352804,1432725776),h(4094571909,1467031594),h(275423344,851169720),h(430227734,3100823752),h(506948616,1363258195),h(659060556,3750685593),h(883997877,3785050280),h(958139571,3318307427),h(1322822218,3812723403),h(1537002063,2003034995),h(1747873779,3602036899),h(1955562222,1575990012),h(2024104815,1125592928),h(2227730452,2716904306),h(2361852424,442776044),h(2428436474,593698344),h(2756734187,3733110249),h(3204031479,2999351573),h(3329325298,3815920427),h(3391569614,3928383900),h(3515267271,566280711),h(3940187606,3454069534),h(4118630271,4000239992),h(116418474,1914138554),h(174292421,2731055270),h(289380356,3203993006),h(460393269,320620315),h(685471733,587496836),h(852142971,1086792851),h(1017036298,365543100),h(1126000580,2618297676),h(1288033470,3409855158),h(1501505948,4234509866),h(1607167915,987167468),h(1816402316,1246189591)],c=[];!function(){for(var t=0;t<80;t++)c[t]=h()}();var d=a.SHA512=i[e(423)]({_doReset:function(){var t=e;this[t(426)]=new(o[t(435)])([new(n[t(435)])(1779033703,4089235720),new(n[t(435)])(3144134277,2227873595),new(n[t(435)])(1013904242,4271175723),new(n[t(435)])(2773480762,1595750129),new(n[t(435)])(1359893119,2917565137),new(n[t(435)])(2600822924,725511199),new(n[t(435)])(528734635,4215389547),new(n[t(435)])(1541459225,327033209)])},_doProcessBlock:function(t,s){for(var i=e,r=this[i(426)].words,n=r[0],o=r[1],a=r[2],h=r[3],d=r[4],u=r[5],p=r[6],f=r[7],m=n[i(424)],g=n[i(416)],y=o[i(424)],A=o[i(416)],b=a[i(424)],v=a.low,S=h.high,E=h.low,w=d[i(424)],T=d[i(416)],I=u[i(424)],k=u[i(416)],_=p[i(424)],C=p[i(416)],D=f[i(424)],L=f[i(416)],R=m,P=g,x=y,M=A,B=b,F=v,U=S,O=E,N=w,V=T,j=I,W=k,G=_,z=C,H=D,K=L,q=0;q<80;q++){var Q,Y,J=c[q];if(q<16)Y=J[i(424)]=0|t[s+2*q],Q=J[i(416)]=0|t[s+2*q+1];else{var X=c[q-15],$=X[i(424)],Z=X[i(416)],tt=($>>>1|Z<<31)^($>>>8|Z<<24)^$>>>7,et=(Z>>>1|$<<31)^(Z>>>8|$<<24)^(Z>>>7|$<<25),st=c[q-2],it=st[i(424)],rt=st[i(416)],nt=(it>>>19|rt<<13)^(it<<3|rt>>>29)^it>>>6,ot=(rt>>>19|it<<13)^(rt<<3|it>>>29)^(rt>>>6|it<<26),at=c[q-7],ht=at[i(424)],lt=at[i(416)],ct=c[q-16],dt=ct[i(424)],ut=ct[i(416)];Y=(Y=(Y=tt+ht+((Q=et+lt)>>>0<et>>>0?1:0))+nt+((Q+=ot)>>>0<ot>>>0?1:0))+dt+((Q+=ut)>>>0<ut>>>0?1:0),J[i(424)]=Y,J[i(416)]=Q}var pt,ft=N&j^~N&G,mt=V&W^~V&z,gt=R&x^R&B^x&B,yt=P&M^P&F^M&F,At=(R>>>28|P<<4)^(R<<30|P>>>2)^(R<<25|P>>>7),bt=(P>>>28|R<<4)^(P<<30|R>>>2)^(P<<25|R>>>7),vt=(N>>>14|V<<18)^(N>>>18|V<<14)^(N<<23|V>>>9),St=(V>>>14|N<<18)^(V>>>18|N<<14)^(V<<23|N>>>9),Et=l[q],wt=Et.high,Tt=Et.low,It=H+vt+((pt=K+St)>>>0<K>>>0?1:0),kt=bt+yt;H=G,K=z,G=j,z=W,j=N,W=V,N=U+(It=(It=(It=It+ft+((pt+=mt)>>>0<mt>>>0?1:0))+wt+((pt+=Tt)>>>0<Tt>>>0?1:0))+Y+((pt+=Q)>>>0<Q>>>0?1:0))+((V=O+pt|0)>>>0<O>>>0?1:0)|0,U=B,O=F,B=x,F=M,x=R,M=P,R=It+(At+gt+(kt>>>0<bt>>>0?1:0))+((P=pt+kt|0)>>>0<pt>>>0?1:0)|0}g=n[i(416)]=g+P,n.high=m+R+(g>>>0<P>>>0?1:0),A=o[i(416)]=A+M,o[i(424)]=y+x+(A>>>0<M>>>0?1:0),v=a[i(416)]=v+F,a[i(424)]=b+B+(v>>>0<F>>>0?1:0),E=h[i(416)]=E+O,h.high=S+U+(E>>>0<O>>>0?1:0),T=d[i(416)]=T+V,d[i(424)]=w+N+(T>>>0<V>>>0?1:0),k=u.low=k+W,u.high=I+j+(k>>>0<W>>>0?1:0),C=p[i(416)]=C+z,p[i(424)]=_+G+(C>>>0<z>>>0?1:0),L=f[i(416)]=L+K,f.high=D+H+(L>>>0<K>>>0?1:0)},_doFinalize:function(){var t=e,s=this[t(434)],i=s[t(422)],r=8*this._nDataBytes,n=8*s[t(428)];return i[n>>>5]|=128<<24-n%32,i[30+(n+128>>>10<<5)]=Math[t(429)](r/4294967296),i[31+(n+128>>>10<<5)]=r,s.sigBytes=4*i.length,this[t(419)](),this._hash.toX32()},clone:function(){var t=e,s=i[t(442)].call(this);return s[t(426)]=this[t(426)][t(442)](),s},blockSize:32});s[e(415)]=i[e(418)](d),s[e(427)]=i._createHmacHelper(d)}(),t[e(415)]},(r=bu)(413)==r(413)?t.exports=i(Kd):"undefined"===r(433)&&(void 0)[r(441)]?(void 0)(["./core",r(438)],i):i(s[r(440)])});var Su=Eu;!function(t){for(var e=Eu,s=t();;)try{if(827619===parseInt(e(131))/1+-parseInt(e(121))/2+parseInt(e(112))/3+-parseInt(e(128))/4+parseInt(e(109))/5*(parseInt(e(107))/6)+parseInt(e(130))/7*(-parseInt(e(114))/8)+parseInt(e(122))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(wu);ge[Su(129)](function(t,e){var s,i,r;s=fe,i=function(t){var e,s,i,r,n,o,a,h,l=Eu;return e=Eu,i=(s=t).x64,r=i[e(125)],n=i.WordArray,o=s[e(118)],a=o[e(111)],h=o[e(105)]=a[e(104)]({_doReset:function(){var t=e;this._hash=new(n[t(120)])([new(r[t(120)])(3418070365,3238371032),new r.init(1654270250,914150663),new(r[t(120)])(2438529370,812702999),new(r[t(120)])(355462360,4144912697),new(r[t(120)])(1731405415,4290775857),new(r[t(120)])(2394180231,1750603025),new(r[t(120)])(3675008525,1694076839),new(r[t(120)])(1203062813,3204075428)])},_doFinalize:function(){var t=e,s=a._doFinalize[t(113)](this);return s[t(126)]-=16,s}}),s[e(105)]=a[e(116)](h),s[e(127)]=a[e(119)](h),t[l(105)]},"object"===(r=Eu)(124)?t[r(110)]=i(Kd):"undefined"===r(123)&&(void 0)[r(115)]?(void 0)(["./core",r(108),r(117)],i):i(s[r(106)])});function Eu(t,e){var s=wu();return(Eu=function(t,e){return s[t-=104]})(t,e)}function wu(){var t=["object","Word","sigBytes","HmacSHA384","689924xeXcTX","createCommonjsModule","109704CCmPBQ","242091IBpaAW","extend","SHA384","CryptoJS","1494mDMkJS","./x64-core","28625LoFqjW","exports","SHA512","2354634JZohRh","call","232wjFdvQ","amd","_createHelper","./sha512","algo","_createHmacHelper","init","2786398ejNRJl","3557637iPgNeh","function"];return(wu=function(){return t})()}var Tu=ku;function Iu(){var t=["exports","WordArray","CryptoJS","ceil","4qLCtQn","_state","function","999950udpbdF","_data","init","HmacSHA3","amd","blockSize","create","./core","310302UTLkio","algo","commonjsGlobal","createCommonjsModule","length","195000bzBYSb","extend","Word","call","low","935480XahzTn","23823iGAXYX","lib","184cleuxG","23388NWOOBm","slice","SHA3","Hasher","object","high","words","push","sigBytes","158470KxtSqm","outputLength","cfg"];return(Iu=function(){return t})()}function ku(t,e){var s=Iu();return(ku=function(t,e){return s[t-=400]})(t,e)}!function(t){for(var e=ku,s=t();;)try{if(103083===parseInt(e(402))/1+parseInt(e(420))/2+-parseInt(e(411))/3*(-parseInt(e(427))/4)+-parseInt(e(430))/5+-parseInt(e(438))/6+parseInt(e(407))/7+-parseInt(e(410))/8*(parseInt(e(408))/9))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Iu);ge[Tu(400)](function(t,e){var s,i,r,n=Tu;s=ge[n(440)],i=function(t){var e=n;return function(e){var s=ku,i=t,r=i[s(409)],n=r[s(424)],o=r[s(414)],a=i.x64[s(404)],h=i[s(439)],l=[],c=[],d=[];!function(){for(var t=s,e=1,i=0,r=0;r<24;r++){l[e+5*i]=(r+1)*(r+2)/2%64;var n=(2*e+3*i)%5;e=i%5,i=n}for(e=0;e<5;e++)for(i=0;i<5;i++)c[e+5*i]=i+(2*e+3*i)%5*5;for(var o=1,h=0;h<24;h++){for(var u=0,p=0,f=0;f<7;f++){if(1&o){var m=(1<<f)-1;m<32?p^=1<<m:u^=1<<m-32}128&o?o=o<<1^113:o<<=1}d[h]=a[t(436)](u,p)}}();var u=[];!function(){for(var t=s,e=0;e<25;e++)u[e]=a[t(436)]()}();var p=h[s(413)]=o[s(403)]({cfg:o[s(422)][s(403)]({outputLength:512}),_doReset:function(){for(var t=s,e=this[t(428)]=[],i=0;i<25;i++)e[i]=new(a[t(432)]);this.blockSize=(1600-2*this[t(422)][t(421)])/32},_doProcessBlock:function(t,e){for(var i=s,r=this[i(428)],n=this[i(435)]/2,o=0;o<n;o++){var a=t[e+2*o],h=t[e+2*o+1];a=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),h=16711935&(h<<8|h>>>24)|4278255360&(h<<24|h>>>8),(L=r[o]).high^=h,L[i(406)]^=a}for(var p=0;p<24;p++){for(var f=0;f<5;f++){for(var m=0,g=0,y=0;y<5;y++)m^=(L=r[f+5*y])[i(416)],g^=L[i(406)];var A=u[f];A[i(416)]=m,A[i(406)]=g}for(f=0;f<5;f++){var b=u[(f+4)%5],v=u[(f+1)%5],S=v.high,E=v[i(406)];for(m=b[i(416)]^(S<<1|E>>>31),g=b[i(406)]^(E<<1|S>>>31),y=0;y<5;y++)(L=r[f+5*y])[i(416)]^=m,L[i(406)]^=g}for(var w=1;w<25;w++){var T=(L=r[w])[i(416)],I=L[i(406)],k=l[w];k<32?(m=T<<k|I>>>32-k,g=I<<k|T>>>32-k):(m=I<<k-32|T>>>64-k,g=T<<k-32|I>>>64-k);var _=u[c[w]];_.high=m,_[i(406)]=g}var C=u[0],D=r[0];for(C[i(416)]=D[i(416)],C[i(406)]=D[i(406)],f=0;f<5;f++)for(y=0;y<5;y++){var L=r[w=f+5*y],R=u[w],P=u[(f+1)%5+5*y],x=u[(f+2)%5+5*y];L[i(416)]=R[i(416)]^~P.high&x[i(416)],L[i(406)]=R[i(406)]^~P[i(406)]&x[i(406)]}L=r[0];var M=d[p];L[i(416)]^=M[i(416)],L[i(406)]^=M.low}},_doFinalize:function(){var t=s,i=this[t(431)],r=i[t(417)];this._nDataBytes;var o=8*i[t(419)],a=32*this.blockSize;r[o>>>5]|=1<<24-o%32,r[(e[t(426)]((o+1)/a)*a>>>5)-1]|=128,i[t(419)]=4*r[t(401)],this._process();for(var h=this._state,l=this[t(422)][t(421)]/8,c=l/8,d=[],u=0;u<c;u++){var p=h[u],f=p.high,m=p[t(406)];f=16711935&(f<<8|f>>>24)|4278255360&(f<<24|f>>>8),m=16711935&(m<<8|m>>>24)|4278255360&(m<<24|m>>>8),d[t(418)](m),d[t(418)](f)}return new(n[t(432)])(d,l)},clone:function(){for(var t=s,e=o.clone[t(405)](this),i=e[t(428)]=this[t(428)][t(412)](0),r=0;r<25;r++)i[r]=i[r].clone();return e}});i[s(413)]=o._createHelper(p),i[s(433)]=o._createHmacHelper(p)}(Math),t[e(413)]},"object"===(r=ku)(415)?t[r(423)]=i(Kd):"undefined"===r(429)&&(void 0)[r(434)]?(void 0)([r(437),"./x64-core"],i):i(s[r(425)])});var _u=Cu;function Cu(t,e){var s=Du();return(Cu=function(t,e){return s[t-=234]})(t,e)}function Du(){var t=["amd","18qxOhuN","call","HmacRIPEMD160","1486552nLafBP","7719404lbQsYS","object","./core","345664vYIrYK","1412779QOTXEi","_process","words","_data","create","RIPEMD160","19610550kqVhJL","581610YOZMLr","length","createCommonjsModule","2gtuKcS","Hasher","_createHmacHelper","sigBytes","clone","algo","54cRyeQE","lib","4060323zTIrXO","function","_hash","WordArray"];return(Du=function(){return t})()}!function(t){for(var e=Cu,s=t();;)try{if(886451===-parseInt(e(251))/1*(parseInt(e(261))/2)+-parseInt(e(238))/3+-parseInt(e(250))/4+parseInt(e(258))/5*(parseInt(e(236))/6)+parseInt(e(247))/7+parseInt(e(246))/8*(-parseInt(e(243))/9)+parseInt(e(257))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Du);ge[_u(260)](function(t,e){var s,i,r;s=fe,i=function(t){var e=Cu;return function(){var e=Cu,s=t,i=s[e(237)],r=i[e(241)],n=i[e(262)],o=s[e(235)],a=r[e(255)]([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),h=r[e(255)]([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),l=r.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),c=r[e(255)]([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),d=r[e(255)]([0,1518500249,1859775393,2400959708,2840853838]),u=r[e(255)]([1352829926,1548603684,1836072691,2053994217,0]),p=o[e(256)]=n.extend({_doReset:function(){this[e(240)]=r.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(t,s){for(var i=e,r=0;r<16;r++){var n=s+r,o=t[n];t[n]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8)}var p,v,S,E,w,T,I,k,_,C,D,L=this._hash[i(253)],R=d[i(253)],P=u[i(253)],x=a[i(253)],M=h[i(253)],B=l.words,F=c[i(253)];for(T=p=L[0],I=v=L[1],k=S=L[2],_=E=L[3],C=w=L[4],r=0;r<80;r+=1)D=p+t[s+x[r]]|0,D+=r<16?f(v,S,E)+R[0]:r<32?m(v,S,E)+R[1]:r<48?g(v,S,E)+R[2]:r<64?y(v,S,E)+R[3]:A(v,S,E)+R[4],D=(D=b(D|=0,B[r]))+w|0,p=w,w=E,E=b(S,10),S=v,v=D,D=T+t[s+M[r]]|0,D+=r<16?A(I,k,_)+P[0]:r<32?y(I,k,_)+P[1]:r<48?g(I,k,_)+P[2]:r<64?m(I,k,_)+P[3]:f(I,k,_)+P[4],D=(D=b(D|=0,F[r]))+C|0,T=C,C=_,_=b(k,10),k=I,I=D;D=L[1]+S+_|0,L[1]=L[2]+E+C|0,L[2]=L[3]+w+T|0,L[3]=L[4]+p+I|0,L[4]=L[0]+v+k|0,L[0]=D},_doFinalize:function(){var t=e,s=this[t(254)],i=s[t(253)],r=8*this._nDataBytes,n=8*s.sigBytes;i[n>>>5]|=128<<24-n%32,i[14+(n+64>>>9<<4)]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8),s[t(264)]=4*(i[t(259)]+1),this[t(252)]();for(var o=this._hash,a=o[t(253)],h=0;h<5;h++){var l=a[h];a[h]=16711935&(l<<8|l>>>24)|4278255360&(l<<24|l>>>8)}return o},clone:function(){var t=e,s=n[t(234)][t(244)](this);return s._hash=this[t(240)][t(234)](),s}});function f(t,e,s){return t^e^s}function m(t,e,s){return t&e|~t&s}function g(t,e,s){return(t|~e)^s}function y(t,e,s){return t&s|e&~s}function A(t,e,s){return t^(e|~s)}function b(t,e){return t<<e|t>>>32-e}s[e(256)]=n._createHelper(p),s[e(245)]=n[e(263)](p)}(),t[e(256)]},"object"===(r=Cu)(248)?t.exports=i(Kd):"undefined"===r(239)&&(void 0)[r(242)]?(void 0)([r(249)],i):i(s.CryptoJS)});!function(t){for(var e=Lu,s=t();;)try{if(966963===parseInt(e(329))/1+parseInt(e(323))/2*(-parseInt(e(302))/3)+parseInt(e(317))/4+parseInt(e(308))/5+parseInt(e(318))/6+parseInt(e(324))/7+-parseInt(e(312))/8)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Ru);me(function(t,e){var s,i,r;s=ge[Lu(305)],i=function(t){var e,s,i,r;i=(s=t)[(e=Lu)(330)][e(316)],r=s.enc[e(327)],s[e(328)][e(313)]=i[e(320)]({init:function(t,s){var i=e;t=this._hasher=new(t[i(332)]),typeof s==i(322)&&(s=r[i(306)](s));var n=t.blockSize,o=4*n;s[i(321)]>o&&(s=t[i(325)](s)),s[i(311)]();for(var a=this._oKey=s[i(303)](),h=this[i(315)]=s[i(303)](),l=a[i(307)],c=h[i(307)],d=0;d<n;d++)l[d]^=1549556828,c[d]^=909522486;a.sigBytes=h[i(321)]=o,this[i(326)]()},reset:function(){var t=e,s=this[t(309)];s[t(326)](),s[t(319)](this[t(315)])},update:function(t){var s=e;return this[s(309)][s(319)](t),this},finalize:function(t){var s=e,i=this._hasher,r=i[s(325)](t);return i.reset(),i[s(325)](this[s(304)][s(303)]()[s(335)](r))}})},"object"===(r=Lu)(333)?t[r(314)]=i(Kd):"undefined"===r(334)&&(void 0)[r(310)]?(void 0)(["./core"],i):i(s[r(331)])});function Lu(t,e){var s=Ru();return(Lu=function(t,e){return s[t-=302]})(t,e)}function Ru(){var t=["finalize","reset","Utf8","algo","1462321rfgDuM","lib","CryptoJS","init","object","function","concat","91734QkxwfA","clone","_oKey","commonjsGlobal","parse","words","4342470OWKMHy","_hasher","amd","clamp","26973920nlFdBe","HMAC","exports","_iKey","Base","3866204tNlWFU","5463294UtUzvs","update","extend","sigBytes","string","40mFzoCj","5196436lCSsxX"];return(Ru=function(){return t})()}!function(t){for(var e=xu,s=t();;)try{if(170747===-parseInt(e(254))/1*(parseInt(e(238))/2)+parseInt(e(244))/3+-parseInt(e(242))/4+parseInt(e(256))/5*(parseInt(e(253))/6)+-parseInt(e(248))/7*(-parseInt(e(232))/8)+parseInt(e(226))/9+-parseInt(e(233))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Pu);me(function(t,e){var s,i,r;s=ge[xu(251)],i=function(t){return i=(s=t)[(e=xu)(259)],r=i[e(240)],n=i[e(246)],o=s.algo,a=o[e(231)],h=o[e(237)],l=o.PBKDF2=r[e(239)]({cfg:r[e(239)]({keySize:4,hasher:a,iterations:25e4}),init:function(t){var s=e;this[s(230)]=this[s(230)][s(239)](t)},compute:function(t,s){for(var i=e,r=this[i(230)],o=h[i(252)](r[i(257)],t),a=n.create(),l=n.create([1]),c=a.words,d=l[i(225)],u=r[i(255)],p=r[i(228)];c[i(249)]<u;){var f=o.update(s).finalize(l);o[i(243)]();for(var m=f[i(225)],g=m[i(249)],y=f,A=1;A<p;A++){y=o[i(227)](y),o[i(243)]();for(var b=y[i(225)],v=0;v<g;v++)m[v]^=b[v]}a[i(245)](f),d[0]++}return a[i(250)]=4*u,a}}),s[e(258)]=function(t,s,i){return l[e(252)](i).compute(t,s)},t.PBKDF2;var e,s,i,r,n,o,a,h,l},(r=xu)(234)==r(234)?t[r(236)]=i(Kd):i(s[r(241)])});function Pu(){var t=["879008opvZrg","1865110LYBOIC","object","./hmac","exports","HMAC","22agBmtm","extend","Base","CryptoJS","806408xekABH","reset","744624ZxhHSf","concat","WordArray","./core","7XFJXBC","length","sigBytes","commonjsGlobal","create","12lJljkO","21792VUvbJy","keySize","658430JYoZVq","hasher","PBKDF2","lib","words","1594044oOmmOM","finalize","iterations","./sha256","cfg","SHA256"];return(Pu=function(){return t})()}function xu(t,e){var s=Pu();return(xu=function(t,e){return s[t-=225]})(t,e)}var Mu=Fu;function Bu(){var t=["create","iterations","EvpKDF","8Kocsmd","2281779nerzlV","function","819804CYKoZX","reset","./core","hasher","4496140SozGTi","./sha1","747516VZvnCU","./hmac","compute","WordArray","MD5","object","extend","update","cfg","amd","1975547TcYrmW","773885nJGwFJ","concat","finalize","2DxznLn","23278WZZhJe","createCommonjsModule","algo","sigBytes","Base","lib","12OiGaaz"];return(Bu=function(){return t})()}function Fu(t,e){var s=Bu();return(Fu=function(t,e){return s[t-=335]})(t,e)}!function(t){for(var e=Fu,s=t();;)try{if(189693===-parseInt(e(359))/1*(parseInt(e(360))/2)+parseInt(e(345))/3+-parseInt(e(339))/4+-parseInt(e(356))/5*(parseInt(e(366))/6)+parseInt(e(355))/7+-parseInt(e(336))/8*(parseInt(e(337))/9)+parseInt(e(343))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Bu);ge[Mu(361)](function(t,e){var s,i,r;s=fe,i=function(t){return i=(s=t)[(e=Fu)(365)],r=i[e(364)],n=i[e(348)],o=s[e(362)],a=o[e(349)],h=o[e(335)]=r[e(351)]({cfg:r.extend({keySize:4,hasher:a,iterations:1}),init:function(t){var s=e;this[s(353)]=this[s(353)][s(351)](t)},compute:function(t,s){for(var i,r=e,o=this[r(353)],a=o[r(342)][r(367)](),h=n[r(367)](),l=h.words,c=o.keySize,d=o[r(368)];l.length<c;){i&&a[r(352)](i),i=a[r(352)](t)[r(358)](s),a[r(340)]();for(var u=1;u<d;u++)i=a.finalize(i),a.reset();h[r(357)](i)}return h[r(363)]=4*c,h}}),s.EvpKDF=function(t,s,i){var r=e;return h[r(367)](i)[r(347)](t,s)},t.EvpKDF;var e,s,i,r,n,o,a,h},"object"===(r=Fu)(350)?t.exports=i(Kd):"undefined"===r(338)&&(void 0)[r(354)]?(void 0)([r(341),r(344),r(346)],i):i(s.CryptoJS)});var Uu=Nu;function Ou(){var t=["_doReset","mixIn","format","_iv","reset","pad","Base64","create","padding","slice","PasswordBasedCipher","2163842lbUNCW","random","createCommonjsModule","16360740uoXSHP","lib","12410848Eiqute","21522bRuqmr","EvpKDF","Pkcs7","1018572xltmCP","Decryptor","_key","2401LitaoN","48572tJXrXd","_append","_minBufferSize","Utf8","_ENC_XFORM_MODE","processBlock","_data","__creator","function","commonjsGlobal","hasher","_mode","Base","BufferedBlockAlgorithm","parse","encryptBlock","init","ciphertext","decrypt","createEncryptor","CBC","blockSize","encrypt","cfg","finalize","flush","concat","1303335nZWqBI","BlockCipher","key","_process","salt","./core","exports","_prevBlock","words","compute","keySize","splice","algo","WordArray","205wMaFiV","ivSize","toString","Cipher","sigBytes","SerializableCipher","_xformMode","object","extend","StreamCipher","push","_parse","mode","execute","Encryptor","amd","CipherParams","stringify","kdf","call","createDecryptor","_cipher"];return(Ou=function(){return t})()}function Nu(t,e){var s=Ou();return(Nu=function(t,e){return s[t-=379]})(t,e)}!function(t){for(var e=Nu,s=t();;)try{if(880872===parseInt(e(453))/1+-parseInt(e(413))/2+-parseInt(e(422))/3+-parseInt(e(426))/4*(parseInt(e(380))/5)+parseInt(e(419))/6*(parseInt(e(425))/7)+-parseInt(e(418))/8+parseInt(e(416))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Ou);ge[Uu(415)](function(t,e){var s,i,r,n=Uu;s=ge[n(435)],i=function(t){var e=n;t.lib[e(383)]||function(){var s=e,i=t,r=i[s(417)],n=r[s(438)],o=r[s(379)],a=r[s(439)],h=i.enc;h[s(429)];var l=h[s(408)],c=i[s(465)][s(420)],d=r[s(383)]=a[s(388)]({cfg:n.extend(),createEncryptor:function(t,e){var i=s;return this[i(409)](this[i(430)],t,e)},createDecryptor:function(t,e){return this.create(this._DEC_XFORM_MODE,t,e)},init:function(t,e,i){var r=s;this[r(449)]=this[r(449)][r(388)](i),this._xformMode=t,this[r(424)]=e,this.reset()},reset:function(){var t=s;a[t(406)][t(399)](this),this[t(402)]()},process:function(t){var e=s;return this[e(427)](t),this[e(456)]()},finalize:function(t){return t&&this[s(427)](t),this._doFinalize()},keySize:4,ivSize:4,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function t(t){return"string"==typeof t?v:A}return function(e){return{encrypt:function(s,i,r){var n=Nu;return t(i)[n(448)](e,s,i,r)},decrypt:function(s,i,r){var n=Nu;return t(i)[n(444)](e,s,i,r)}}}}()});r[s(389)]=d[s(388)]({_doFinalize:function(){return this[s(456)](!0)},blockSize:1});var u=i[s(392)]={},p=r.BlockCipherMode=n.extend({createEncryptor:function(t,e){var i=s;return this[i(394)][i(409)](t,e)},createDecryptor:function(t,e){return this[s(423)].create(t,e)},init:function(t,e){var i=s;this[i(401)]=t,this[i(405)]=e}}),f=u[s(446)]=function(){var t=s,e=p[t(388)]();function i(e,s,i){var r,n=t,o=this[n(405)];o?(r=o,this[n(405)]=void 0):r=this[n(460)];for(var a=0;a<i;a++)e[s+a]^=r[a]}return e[t(394)]=e[t(388)]({processBlock:function(e,s){var r=t,n=this._cipher,o=n[r(447)];i[r(399)](this,e,s,o),n[r(441)](e,s),this._prevBlock=e.slice(s,s+o)}}),e[t(423)]=e[t(388)]({processBlock:function(e,s){var r=t,n=this._cipher,o=n.blockSize,a=e.slice(s,s+o);n.decryptBlock(e,s),i[r(399)](this,e,s,o),this[r(460)]=a}}),e}(),m=(i[s(407)]={})[s(421)]={pad:function(t,e){for(var i=s,r=4*e,n=r-t[i(384)]%r,a=n<<24|n<<16|n<<8|n,h=[],l=0;l<n;l+=4)h[i(390)](a);var c=o[i(409)](h,n);t[i(452)](c)},unpad:function(t){var e=s,i=255&t[e(461)][t[e(384)]-1>>>2];t[e(384)]-=i}};r[s(454)]=d[s(388)]({cfg:d[s(449)][s(388)]({mode:f,padding:m}),reset:function(){var t,e=s;d[e(406)][e(399)](this);var i=this[e(449)],r=i.iv,n=i.mode;this[e(386)]==this[e(430)]?t=n[e(445)]:(t=n[e(400)],this[e(428)]=1),this._mode&&this[e(437)].__creator==t?this[e(437)][e(442)](this,r&&r[e(461)]):(this._mode=t[e(399)](n,this,r&&r.words),this[e(437)][e(433)]=t)},_doProcessBlock:function(t,e){var i=s;this[i(437)][i(431)](t,e)},_doFinalize:function(){var t,e=s,i=this[e(449)][e(410)];return this._xformMode==this._ENC_XFORM_MODE?(i[e(407)](this[e(432)],this.blockSize),t=this[e(456)](!0)):(t=this[e(456)](!!e(451)),i.unpad(t)),t},blockSize:4});var g=r[s(396)]=n[s(388)]({init:function(t){this.mixIn(t)},toString:function(t){var e=s;return(t||this.formatter)[e(397)](this)}}),y=(i[s(404)]={}).OpenSSL={stringify:function(t){var e=s,i=t.ciphertext,r=t[e(457)];return(r?o.create([1398893684,1701076831])[e(452)](r)[e(452)](i):i)[e(382)](l)},parse:function(t){var e,i=s,r=l[i(440)](t),n=r[i(461)];return 1398893684==n[0]&&1701076831==n[1]&&(e=o[i(409)](n.slice(2,4)),n[i(464)](0,4),r.sigBytes-=16),g[i(409)]({ciphertext:r,salt:e})}},A=r[s(385)]=n.extend({cfg:n[s(388)]({format:y}),encrypt:function(t,e,i,r){var n=s;r=this[n(449)].extend(r);var o=t[n(445)](i,r),a=o[n(450)](e),h=o[n(449)];return g.create({ciphertext:a,key:i,iv:h.iv,algorithm:t,mode:h[n(392)],padding:h.padding,blockSize:t.blockSize,formatter:r.format})},decrypt:function(t,e,i,r){var n=s;return r=this[n(449)].extend(r),e=this[n(391)](e,r[n(404)]),t[n(400)](i,r)[n(450)](e[n(443)])},_parse:function(t,e){return"string"==typeof t?e.parse(t,this):t}}),b=(i.kdf={}).OpenSSL={execute:function(t,e,i,r,n){var a=s;if(!r&&(r=o[a(414)](8)),n)h=c[a(409)]({keySize:e+i,hasher:n}).compute(t,r);else var h=c[a(409)]({keySize:e+i})[a(462)](t,r);var l=o.create(h[a(461)][a(411)](e),4*i);return h.sigBytes=4*e,g[a(409)]({key:h,iv:l,salt:r})}},v=r[s(412)]=A[s(388)]({cfg:A[s(449)].extend({kdf:b}),encrypt:function(t,e,i,r){var n=s,o=(r=this[n(449)].extend(r))[n(398)].execute(i,t.keySize,t[n(381)],r[n(457)],r.hasher);r.iv=o.iv;var a=A[n(448)].call(this,t,e,o[n(455)],r);return a[n(403)](o),a},decrypt:function(t,e,i,r){var n=s;r=this[n(449)][n(388)](r),e=this[n(391)](e,r[n(404)]);var o=r[n(398)][n(393)](i,t[n(463)],t[n(381)],e[n(457)],r[n(436)]);return r.iv=o.iv,A[n(444)][n(399)](this,t,e,o[n(455)],r)}})}()},"object"===(r=Nu)(387)?t[r(459)]=i(Kd):"undefined"===r(434)&&(void 0)[r(395)]?(void 0)([r(458),"./evpkdf"],i):i(s.CryptoJS)});var Vu=ju;function ju(t,e){var s=Wu();return(ju=function(t,e){return s[t-=165]})(t,e)}!function(t){for(var e=ju,s=t();;)try{if(823867===parseInt(e(187))/1*(parseInt(e(190))/2)+-parseInt(e(170))/3+-parseInt(e(182))/4+-parseInt(e(172))/5+-parseInt(e(183))/6+parseInt(e(189))/7+-parseInt(e(169))/8*(-parseInt(e(171))/9))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Wu);ge[Vu(173)](function(t,e){var s,i,r,n=Vu;s=ge[n(174)],i=function(t){var e=n;return t[e(180)][e(178)]=function(){var s=e,i=t[s(167)][s(191)].extend();function r(t,e,i,r){var n,o=s,a=this._iv;a?(n=a[o(175)](0),this[o(188)]=void 0):n=this[o(166)],r[o(186)](n,0);for(var h=0;h<i;h++)t[e+h]^=n[h]}return i[s(165)]=i[s(177)]({processBlock:function(t,e){var i=s,n=this[i(193)],o=n[i(194)];r[i(192)](this,t,e,o,n),this[i(166)]=t[i(175)](e,e+o)}}),i.Decryptor=i[s(177)]({processBlock:function(t,e){var i=s,n=this[i(193)],o=n.blockSize,a=t[i(175)](e,e+o);r[i(192)](this,t,e,o,n),this._prevBlock=a}}),i}(),t[e(180)][e(178)]},(r=ju)(185)==r(185)?t[r(184)]=i(Kd):"undefined"===r(176)&&(void 0)[r(179)]?(void 0)(["./core",r(168)],i):i(s[r(181)])});function Wu(){var t=["commonjsGlobal","slice","function","extend","CFB","amd","mode","CryptoJS","6325196nucqYK","6456396vdJETs","exports","object","encryptBlock","31441hDrByW","_iv","4202247Siukrn","30pvfRyc","BlockCipherMode","call","_cipher","blockSize","Encryptor","_prevBlock","lib","./cipher-core","1000kEsArE","2784447JHDdCP","321093ypDhSx","5610900pjZotW","createCommonjsModule"];return(Wu=function(){return t})()}var Gu=Hu;!function(t){for(var e=Hu,s=t();;)try{if(824556===parseInt(e(241))/1+parseInt(e(249))/2+-parseInt(e(237))/3+-parseInt(e(247))/4*(-parseInt(e(240))/5)+-parseInt(e(225))/6+-parseInt(e(239))/7+-parseInt(e(222))/8*(parseInt(e(235))/9))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(zu);ge[Gu(238)](function(t,e){var s,i,r;s=fe,i=function(t){var e,s,i,r=Hu;return t[r(224)][r(227)]=(s=t[(e=r)(228)].BlockCipherMode[e(244)](),i=s[e(226)]=s.extend({processBlock:function(t,s){var i=e,r=this[i(232)],n=r[i(223)],o=this[i(233)],a=this[i(245)];o&&(a=this[i(245)]=o[i(230)](0),this[i(233)]=void 0);var h=a[i(230)](0);r[i(234)](h,0),a[n-1]=a[n-1]+1|0;for(var l=0;l<n;l++)t[s+l]^=h[l]}}),s.Decryptor=i,s),t[r(224)][r(227)]},(r=Hu)(231)==r(231)?t[r(229)]=i(Kd):"undefined"===r(246)&&(void 0)[r(242)]?(void 0)([r(236),r(248)],i):i(s[r(243)])});function zu(){var t=["4723494xGRyEc","Encryptor","CTR","lib","exports","slice","object","_cipher","_iv","encryptBlock","18387juEILA","./core","855747thGvCn","createCommonjsModule","10398647nJhjfp","7669985eKeIAD","1157337WQdgNr","amd","CryptoJS","extend","_counter","function","4YuzTUI","./cipher-core","2620540VClkDY","2424bNehyq","blockSize","mode"];return(zu=function(){return t})()}function Hu(t,e){var s=zu();return(Hu=function(t,e){return s[t-=222]})(t,e)}var Ku=qu;function qu(t,e){var s=Qu();return(qu=function(t,e){return s[t-=370]})(t,e)}function Qu(){var t=["slice","encryptBlock","Decryptor","_iv","12530pjGyAd","11rbDCsB","mode","./cipher-core","40wZCjeT","lib","function","158264OlsCUG","extend","189325yGzRWG","_cipher","20EsWxmM","_counter","./core","createCommonjsModule","21PJPiqz","78UNYSGk","CryptoJS","768168cpouAm","Encryptor","amd","810249OsMfGu","5519292ORuEgQ","exports","CTRGladman","170523bopsls"];return(Qu=function(){return t})()}!function(t){for(var e=qu,s=t();;)try{if(260916===-parseInt(e(390))/1*(parseInt(e(386))/2)+-parseInt(e(377))/3+-parseInt(e(374))/4+parseInt(e(395))/5*(parseInt(e(372))/6)+-parseInt(e(371))/7*(-parseInt(e(393))/8)+-parseInt(e(381))/9*(parseInt(e(397))/10)+parseInt(e(387))/11*(parseInt(e(378))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Qu);ge[Ku(370)](function(t,e){var s,i;t[qu(379)]=((s=Kd)[(i=qu)(388)][i(380)]=function(){var t=i,e=s[t(391)].BlockCipherMode.extend();function r(t){if(255&~(t>>24))t+=1<<24;else{var e=t>>16&255,s=t>>8&255,i=255&t;255===e?(e=0,255===s?(s=0,255===i?i=0:++i):++s):++e,t=0,t+=e<<16,t+=s<<8,t+=i}return t}function n(t){return 0===(t[0]=r(t[0]))&&(t[1]=r(t[1])),t}var o=e[t(375)]=e[t(394)]({processBlock:function(e,s){var i=t,r=this[i(396)],o=r.blockSize,a=this[i(385)],h=this[i(398)];a&&(h=this[i(398)]=a.slice(0),this._iv=void 0),n(h);var l=h[i(382)](0);r[i(383)](l,0);for(var c=0;c<o;c++)e[s+c]^=l[c]}});return e[t(384)]=o,e}(),s.mode[i(380)])});var Yu=Xu;function Ju(){var t=["_keystream","slice","mode","extend","517184VIwfWt","Decryptor","1486955vPJVfk","amd","715984sMqXDs","./cipher-core","./core","170920RQIZuo","72IlGKNZ","Encryptor","4515PZcQPs","3702UZEFBl","blockSize","encryptBlock","createCommonjsModule","exports","864wizTQM","OFB","157382uNAdVK","309xJsYvF","_iv","BlockCipherMode","_cipher"];return(Ju=function(){return t})()}!function(t){for(var e=Xu,s=t();;)try{if(148852===parseInt(e(250))/1+parseInt(e(243))/2*(-parseInt(e(251))/3)+parseInt(e(263))/4+parseInt(e(261))/5+parseInt(e(248))/6*(-parseInt(e(269))/7)+-parseInt(e(259))/8+-parseInt(e(267))/9*(parseInt(e(266))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Ju);ge[Yu(246)](function(t,e){var s,i,r,n,o;t[Xu(247)]=(i=Xu,(s=Kd).mode.OFB=(r=Xu,n=s.lib[r(253)][r(258)](),o=n[r(268)]=n[r(258)]({processBlock:function(t,e){var s=r,i=this[s(254)],n=i[s(244)],o=this[s(252)],a=this[s(255)];o&&(a=this._keystream=o[s(256)](0),this[s(252)]=void 0),i[s(245)](a,0);for(var h=0;h<n;h++)t[e+h]^=a[h]}}),n[r(260)]=o,n),s[i(257)][i(249)])});function Xu(t,e){var s=Ju();return(Xu=function(t,e){return s[t-=243]})(t,e)}var $u=tp;function Zu(){var t=["4059772glpCSL","commonjsGlobal","2361988wviGQq","3KmeXEw","6JVnPha","819533jtkmHt","4922780jGGnjg","285876pPMuju","object","./cipher-core","mode","_cipher","9093056trnhGM","function","decryptBlock","./core","11148852BCvPRt","lib","createCommonjsModule","extend","360ziIbAz","encryptBlock","ECB","8OzUVHo","Decryptor"];return(Zu=function(){return t})()}function tp(t,e){var s=Zu();return(tp=function(t,e){return s[t-=223]})(t,e)}!function(t){for(var e=tp,s=t();;)try{if(857e3===-parseInt(e(244))/1+-parseInt(e(241))/2+parseInt(e(242))/3*(parseInt(e(239))/4)+-parseInt(e(245))/5*(-parseInt(e(243))/6)+parseInt(e(226))/7*(-parseInt(e(237))/8)+parseInt(e(246))/9*(parseInt(e(234))/10)+parseInt(e(230))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Zu);ge[$u(232)](function(t,e){var s,i,r,n=$u;s=ge[n(240)],i=function(t){var e,s,i=n;return t[i(224)][i(236)]=((s=t[(e=i)(231)].BlockCipherMode[e(233)]()).Encryptor=s.extend({processBlock:function(t,s){var i=e;this._cipher[i(235)](t,s)}}),s[e(238)]=s[e(233)]({processBlock:function(t,s){var i=e;this[i(225)][i(228)](t,s)}}),s),t[i(224)].ECB},"object"===(r=tp)(247)?t.exports=i(Kd):"undefined"===r(227)&&(void 0).amd?(void 0)([r(229),r(223)],i):i(s.CryptoJS)});function ep(t,e){var s=ip();return(ep=function(t,e){return s[t-=413]})(t,e)}var sp=ep;function ip(){var t=["createCommonjsModule","1849224aaxsYu","21595XpGmiS","sigBytes","words","700836OdHZlS","function","amd","3798305yOqKXc","CryptoJS","1414344jwJDdo","./core","836727fQFrQo","3819440antDYH","./cipher-core","7520PdGCjB","object","exports","pad","commonjsGlobal"];return(ip=function(){return t})()}!function(t){for(var e=ep,s=t();;)try{if(588720===-parseInt(e(415))/1+-parseInt(e(424))/2+-parseInt(e(413))/3+-parseInt(e(416))/4+parseInt(e(431))/5+parseInt(e(428))/6+-parseInt(e(425))/7*(-parseInt(e(418))/8))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(ip);ge[sp(423)](function(t,e){var s,i,r,n=sp;s=ge[n(422)],i=function(t){var e=n;return t[e(421)].AnsiX923={pad:function(t,s){var i=e,r=t.sigBytes,n=4*s,o=n-r%n,a=r+o-1;t.clamp(),t[i(427)][a>>>2]|=o<<24-a%4*8,t[i(426)]+=o},unpad:function(t){var s=e,i=255&t[s(427)][t[s(426)]-1>>>2];t[s(426)]-=i}},t[e(421)].Ansix923},"object"===(r=ep)(419)?t[r(420)]=i(Kd):"undefined"===r(429)&&(void 0)[r(430)]?(void 0)([r(414),r(417)],i):i(s[r(432)])});var rp=np;function np(t,e){var s=op();return(np=function(t,e){return s[t-=145]})(t,e)}function op(){var t=["object","pad","amd","2918395ZeJbLA","7dIZWql","random","1371848eaCiwr","createCommonjsModule","sigBytes","function","4415280aQOupd","1104798hbvfmw","300001paCrpG","create","./cipher-core","words","13804578TBzcIS","./core","Iso10126","1991805hVGWbM","lib","concat","commonjsGlobal","WordArray","2vaAlDB"];return(op=function(){return t})()}!function(t){for(var e=np,s=t();;)try{if(442846===-parseInt(e(150))/1*(parseInt(e(162))/2)+-parseInt(e(157))/3+-parseInt(e(169))/4+parseInt(e(166))/5+parseInt(e(149))/6*(parseInt(e(167))/7)+-parseInt(e(148))/8+parseInt(e(154))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(op);ge[rp(145)](function(t,e){var s,i,r,n=rp;s=ge[n(160)],i=function(t){var e=n;return t[e(164)][e(156)]={pad:function(s,i){var r=e,n=4*i,o=n-s.sigBytes%n;s[r(159)](t[r(158)].WordArray[r(168)](o-1))[r(159)](t.lib[r(161)][r(151)]([o<<24],1))},unpad:function(t){var s=e,i=255&t[s(153)][t[s(146)]-1>>>2];t[s(146)]-=i}},t[e(164)][e(156)]},(r=np)(163)==r(163)?t.exports=i(Kd):"undefined"===r(147)&&(void 0)[r(165)]?(void 0)([r(155),r(152)],i):i(s.CryptoJS)});function ap(t,e){var s=hp();return(ap=function(t,e){return s[t-=201]})(t,e)}function hp(){var t=["create","object","ZeroPadding","commonjsGlobal","exports","amd","2216EkVbvQ","./core","342970ALyzus","pad","4stjCqC","sigBytes","concat","function","1527kqmpUR","1219976teqqos","36FvBMnv","8465fjHHIp","unpad","lib","6743605GgcaqB","30eXmVji","11822weyrxK","CryptoJS","679399AiuLhu","Iso97971","12qSbcBp"];return(hp=function(){return t})()}!function(t){for(var e=ap,s=t();;)try{if(153620===-parseInt(e(201))/1*(-parseInt(e(216))/2)+parseInt(e(220))/3*(-parseInt(e(212))/4)+-parseInt(e(223))/5*(parseInt(e(227))/6)+parseInt(e(203))/7+-parseInt(e(221))/8+-parseInt(e(222))/9*(parseInt(e(214))/10)+parseInt(e(226))/11*(parseInt(e(205))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(hp);me(function(t,e){var s,i,r,n=ap;s=ge[n(209)],i=function(t){var e=n;return t[e(215)][e(204)]={pad:function(s,i){var r=e;s[r(218)](t[r(225)].WordArray[r(206)]([2147483648],1)),t[r(215)][r(208)][r(215)](s,i)},unpad:function(s){var i=e;t.pad.ZeroPadding[i(224)](s),s[i(217)]--}},t.pad[e(204)]},(r=ap)(207)==r(207)?t[r(210)]=i(Kd):"undefined"===r(219)&&(void 0)[r(211)]?(void 0)([r(213),"./cipher-core"],i):i(s[r(202)])});var lp=dp;!function(t){for(var e=dp,s=t();;)try{if(578317===-parseInt(e(436))/1*(parseInt(e(440))/2)+parseInt(e(428))/3+-parseInt(e(445))/4*(parseInt(e(439))/5)+parseInt(e(435))/6+parseInt(e(430))/7*(parseInt(e(449))/8)+parseInt(e(444))/9+-parseInt(e(432))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(cp);ge[lp(429)](function(t,e){var s,i,r,n=lp;s=ge[n(447)],i=function(t){var e=n;return t[e(448)][e(441)]={pad:function(t,s){var i=e,r=4*s;t[i(433)](),t.sigBytes+=r-(t[i(431)]%r||r)},unpad:function(t){var s=e,i=t.words,r=t[s(431)]-1;for(r=t[s(431)]-1;r>=0;r--)if(i[r>>>2]>>>24-r%4*8&255){t[s(431)]=r+1;break}}},t.pad.ZeroPadding},(r=dp)(437)==r(437)?t[r(446)]=i(Kd):"undefined"===r(442)&&(void 0)[r(438)]?(void 0)([r(450),r(443)],i):i(s[r(434)])});function cp(){var t=["sigBytes","13364580EQoPZq","clamp","CryptoJS","4063440YLbHTE","1dWkYaE","object","amd","35oCCCza","1255052KuddyC","ZeroPadding","function","./cipher-core","6084576CldgPv","173828BJhiru","exports","commonjsGlobal","pad","7714376PdABax","./core","1586697UQmxms","createCommonjsModule","7KMKbtc"];return(cp=function(){return t})()}function dp(t,e){var s=cp();return(dp=function(t,e){return s[t-=428]})(t,e)}var up=pp;function pp(t,e){var s=fp();return(pp=function(t,e){return s[t-=490]})(t,e)}function fp(){var t=["./cipher-core","7UTDxDH","2172030zbnKWP","./core","4363644hBzSKp","2111608YpGuIR","43752VagnuA","902856uqbGCr","1tbJdlr","4771jpNhjG","27jvrlFV","CryptoJS","66bxmPuU","pad","object","createCommonjsModule","6127240UKoDsG","1034974xgxKIW","amd","exports","3pCTwpd","NoPadding"];return(fp=function(){return t})()}!function(t){for(var e=pp,s=t();;)try{if(749783===-parseInt(e(508))/1*(parseInt(e(495))/2)+parseInt(e(498))/3*(-parseInt(e(504))/4)+-parseInt(e(494))/5+parseInt(e(507))/6*(parseInt(e(501))/7)+-parseInt(e(505))/8*(-parseInt(e(510))/9)+parseInt(e(502))/10*(parseInt(e(490))/11)+-parseInt(e(506))/12*(-parseInt(e(509))/13))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(fp);ge[up(493)](function(t,e){var s,i,r;s=fe,i=function(t){var e=pp;return t[e(491)][e(499)]={pad:function(){},unpad:function(){}},t.pad[e(499)]},(r=pp)(492)==r(492)?t[r(497)]=i(Kd):i(s[r(511)])});var mp=yp;function gp(){var t=["484932rMVEAU","exports","enc","format","27yahzJU","amd","createCommonjsModule","8Ssexed","26192piXXUT","333664TrLuZS","toString","42394EPNtIP","create","function","object","2063346VMROyy","CipherParams","1433537lrRNlv","85TvggWB","CryptoJS","287310dmlLKW","ciphertext","Hex"];return(gp=function(){return t})()}!function(t){for(var e=yp,s=t();;)try{if(211805===parseInt(e(369))/1+parseInt(e(367))/2+-parseInt(e(358))/3+-parseInt(e(366))/4*(-parseInt(e(353))/5)+parseInt(e(373))/6+parseInt(e(352))/7*(-parseInt(e(365))/8)+parseInt(e(362))/9*(-parseInt(e(355))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(gp);ge[mp(364)](function(t,e){var s,i,r;s=fe,i=function(t){var e,s,i,r,n=yp;return e=yp,i=(s=t).lib[e(351)],r=s[e(360)].Hex,s.format[e(357)]={stringify:function(t){var s=e;return t[s(356)][s(368)](r)},parse:function(t){var s=e,n=r.parse(t);return i[s(370)]({ciphertext:n})}},t[n(361)][n(357)]},(r=yp)(372)==r(372)?t[r(359)]=i(Kd):"undefined"===r(371)&&(void 0)[r(363)]?(void 0)(["./core","./cipher-core"],i):i(s[r(354)])});function yp(t,e){var s=gp();return(yp=function(t,e){return s[t-=351]})(t,e)}var Ap=vp;function bp(){var t=["CryptoJS","_keyPriorReset","_invKeySchedule","10764pFZaAF","482208cNRnLi","_nRounds","383634RAjTiE","_keySchedule","amd","133cElIKq","./evpkdf","createCommonjsModule","./cipher-core","object","words","BlockCipher","27250wsbXxT","558963gicPTf","1706926vQonhP","8853975OTrUnC","exports","function","commonjsGlobal","18pTKqbv","_doCryptBlock","9247936NXkiZX","AES","./enc-base64","extend"];return(bp=function(){return t})()}function vp(t,e){var s=bp();return(vp=function(t,e){return s[t-=300]})(t,e)}!function(t){for(var e=vp,s=t();;)try{if(973043===-parseInt(e(306))/1+parseInt(e(311))/2*(parseInt(e(305))/3)+parseInt(e(321))/4+parseInt(e(307))/5+-parseInt(e(323))/6*(-parseInt(e(326))/7)+parseInt(e(313))/8+parseInt(e(320))/9*(-parseInt(e(304))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(bp);ge[Ap(328)](function(t,e){var s,i,r,n=Ap;s=ge[n(310)],i=function(t){var e=n;return function(){var e=vp,s=t,i=s.lib[e(303)],r=s.algo,n=[],o=[],a=[],h=[],l=[],c=[],d=[],u=[],p=[],f=[];!function(){for(var t=[],e=0;e<256;e++)t[e]=e<128?e<<1:e<<1^283;var s=0,i=0;for(e=0;e<256;e++){var r=i^i<<1^i<<2^i<<3^i<<4;r=r>>>8^255&r^99,n[s]=r,o[r]=s;var m=t[s],g=t[m],y=t[g],A=257*t[r]^16843008*r;a[s]=A<<24|A>>>8,h[s]=A<<16|A>>>16,l[s]=A<<8|A>>>24,c[s]=A,A=16843009*y^65537*g^257*m^16843008*s,d[r]=A<<24|A>>>8,u[r]=A<<16|A>>>16,p[r]=A<<8|A>>>24,f[r]=A,s?(s=m^t[t[t[y^m]]],i^=t[t[i]]):s=i=1}}();var m=[0,1,2,4,8,16,32,64,128,27,54],g=r[e(314)]=i[e(316)]({_doReset:function(){var t=e;if(!this[t(322)]||this[t(318)]!==this._key){for(var s=this[t(318)]=this._key,i=s[t(302)],r=s.sigBytes/4,o=4*((this._nRounds=r+6)+1),a=this[t(324)]=[],h=0;h<o;h++)h<r?a[h]=i[h]:(g=a[h-1],h%r?r>6&&h%r==4&&(g=n[g>>>24]<<24|n[g>>>16&255]<<16|n[g>>>8&255]<<8|n[255&g]):(g=n[(g=g<<8|g>>>24)>>>24]<<24|n[g>>>16&255]<<16|n[g>>>8&255]<<8|n[255&g],g^=m[h/r|0]<<24),a[h]=a[h-r]^g);for(var l=this[t(319)]=[],c=0;c<o;c++){if(h=o-c,c%4)var g=a[h];else g=a[h-4];l[c]=c<4||h<=4?g:d[n[g>>>24]]^u[n[g>>>16&255]]^p[n[g>>>8&255]]^f[n[255&g]]}}},encryptBlock:function(t,s){var i=e;this._doCryptBlock(t,s,this[i(324)],a,h,l,c,n)},decryptBlock:function(t,s){var i=e,r=t[s+1];t[s+1]=t[s+3],t[s+3]=r,this[i(312)](t,s,this[i(319)],d,u,p,f,o),r=t[s+1],t[s+1]=t[s+3],t[s+3]=r},_doCryptBlock:function(t,e,s,i,r,n,o,a){for(var h=this._nRounds,l=t[e]^s[0],c=t[e+1]^s[1],d=t[e+2]^s[2],u=t[e+3]^s[3],p=4,f=1;f<h;f++){var m=i[l>>>24]^r[c>>>16&255]^n[d>>>8&255]^o[255&u]^s[p++],g=i[c>>>24]^r[d>>>16&255]^n[u>>>8&255]^o[255&l]^s[p++],y=i[d>>>24]^r[u>>>16&255]^n[l>>>8&255]^o[255&c]^s[p++],A=i[u>>>24]^r[l>>>16&255]^n[c>>>8&255]^o[255&d]^s[p++];l=m,c=g,d=y,u=A}m=(a[l>>>24]<<24|a[c>>>16&255]<<16|a[d>>>8&255]<<8|a[255&u])^s[p++],g=(a[c>>>24]<<24|a[d>>>16&255]<<16|a[u>>>8&255]<<8|a[255&l])^s[p++],y=(a[d>>>24]<<24|a[u>>>16&255]<<16|a[l>>>8&255]<<8|a[255&c])^s[p++],A=(a[u>>>24]<<24|a[l>>>16&255]<<16|a[c>>>8&255]<<8|a[255&d])^s[p++],t[e]=m,t[e+1]=g,t[e+2]=y,t[e+3]=A},keySize:8});s.AES=i._createHelper(g)}(),t[e(314)]},(r=vp)(301)==r(301)?t[r(308)]=i(Kd):"undefined"===r(309)&&(void 0)[r(325)]?(void 0)(["./core",r(315),"./md5",r(327),r(300)],i):i(s[r(317)])});var Sp=Ep;function Ep(t,e){var s=wp();return(Ep=function(t,e){return s[t-=429]})(t,e)}function wp(){var t=["length","_des1","exports","13590IcwezY","WordArray","_des2","call","_key","_rBlock","_lBlock","411915QOxsso","_doCryptBlock","_des3","createEncryptor","5919048owUFnm","function","algo","180Sfthrz","TripleDES","28edtSMn","object","createCommonjsModule","Invalid key length - 3DES requires the key length to be 64, 128, 192 or >192.","_invSubKeys","amd","extend","19488312WTnHek","create","8314296jfsZbS","slice","DES","decryptBlock","934274LTuZQW","lib","encryptBlock","_subKeys","CryptoJS","_createHelper","2372461bcpiUa","./enc-base64"];return(wp=function(){return t})()}!function(t){for(var e=Ep,s=t();;)try{if(532857===-parseInt(e(467))/1+parseInt(e(452))/2*(-parseInt(e(438))/3)+parseInt(e(454))/4*(-parseInt(e(445))/5)+parseInt(e(449))/6+parseInt(e(433))/7+-parseInt(e(463))/8+parseInt(e(461))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(wp);ge[Sp(456)](function(t,e){var s,i,r;s=fe,i=function(t){var e=Ep;return function(){var e=Ep,s=t,i=s[e(468)],r=i[e(439)],n=i.BlockCipher,o=s[e(451)],a=[57,49,41,33,25,17,9,1,58,50,42,34,26,18,10,2,59,51,43,35,27,19,11,3,60,52,44,36,63,55,47,39,31,23,15,7,62,54,46,38,30,22,14,6,61,53,45,37,29,21,13,5,28,20,12,4],h=[14,17,11,24,1,5,3,28,15,6,21,10,23,19,12,4,26,8,16,7,27,20,13,2,41,52,31,37,47,55,30,40,51,45,33,48,44,49,39,56,34,53,46,42,50,36,29,32],l=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28],c=[{0:8421888,268435456:32768,536870912:8421378,805306368:2,1073741824:512,1342177280:8421890,1610612736:8389122,1879048192:8388608,2147483648:514,2415919104:8389120,2684354560:33280,2952790016:8421376,3221225472:32770,3489660928:8388610,3758096384:0,4026531840:33282,134217728:0,402653184:8421890,671088640:33282,939524096:32768,1207959552:8421888,1476395008:512,1744830464:8421378,2013265920:2,2281701376:8389120,2550136832:33280,2818572288:8421376,3087007744:8389122,3355443200:8388610,3623878656:32770,3892314112:514,4160749568:8388608,1:32768,268435457:2,536870913:8421888,805306369:8388608,1073741825:8421378,1342177281:33280,1610612737:512,1879048193:8389122,2147483649:8421890,2415919105:8421376,2684354561:8388610,2952790017:33282,3221225473:514,3489660929:8389120,3758096385:32770,4026531841:0,134217729:8421890,402653185:8421376,671088641:8388608,939524097:512,1207959553:32768,1476395009:8388610,1744830465:2,2013265921:33282,2281701377:32770,2550136833:8389122,2818572289:514,3087007745:8421888,3355443201:8389120,3623878657:0,3892314113:33280,4160749569:8421378},{0:1074282512,16777216:16384,33554432:524288,50331648:1074266128,67108864:1073741840,83886080:1074282496,100663296:1073758208,117440512:16,134217728:540672,150994944:1073758224,167772160:1073741824,184549376:540688,201326592:524304,218103808:0,234881024:16400,251658240:1074266112,8388608:1073758208,25165824:540688,41943040:16,58720256:1073758224,75497472:1074282512,92274688:1073741824,109051904:524288,125829120:1074266128,142606336:524304,159383552:0,176160768:16384,192937984:1074266112,209715200:1073741840,226492416:540672,243269632:1074282496,260046848:16400,268435456:0,285212672:1074266128,301989888:1073758224,318767104:1074282496,335544320:1074266112,352321536:16,369098752:540688,385875968:16384,402653184:16400,419430400:524288,436207616:524304,452984832:1073741840,469762048:540672,486539264:1073758208,503316480:1073741824,520093696:1074282512,276824064:540688,293601280:524288,310378496:1074266112,327155712:16384,343932928:1073758208,360710144:1074282512,377487360:16,394264576:1073741824,411041792:1074282496,427819008:1073741840,444596224:1073758224,461373440:524304,478150656:0,494927872:16400,511705088:1074266128,528482304:540672},{0:260,1048576:0,2097152:67109120,3145728:65796,4194304:65540,5242880:67108868,6291456:67174660,7340032:67174400,8388608:67108864,9437184:67174656,10485760:65792,11534336:67174404,12582912:67109124,13631488:65536,14680064:4,15728640:256,524288:67174656,1572864:67174404,2621440:0,3670016:67109120,4718592:67108868,5767168:65536,6815744:65540,7864320:260,8912896:4,9961472:256,11010048:67174400,12058624:65796,13107200:65792,14155776:67109124,15204352:67174660,16252928:67108864,16777216:67174656,17825792:65540,18874368:65536,19922944:67109120,20971520:256,22020096:67174660,23068672:67108868,24117248:0,25165824:67109124,26214400:67108864,27262976:4,28311552:65792,29360128:67174400,30408704:260,31457280:65796,32505856:67174404,17301504:67108864,18350080:260,19398656:67174656,20447232:0,21495808:65540,22544384:67109120,23592960:256,24641536:67174404,25690112:65536,26738688:67174660,27787264:65796,28835840:67108868,29884416:67109124,30932992:67174400,31981568:4,33030144:65792},{0:2151682048,65536:2147487808,131072:4198464,196608:2151677952,262144:0,327680:4198400,393216:2147483712,458752:4194368,524288:2147483648,589824:4194304,655360:64,720896:2147487744,786432:2151678016,851968:4160,917504:4096,983040:2151682112,32768:2147487808,98304:64,163840:2151678016,229376:2147487744,294912:4198400,360448:2151682112,425984:0,491520:2151677952,557056:4096,622592:2151682048,688128:4194304,753664:4160,819200:2147483648,884736:4194368,950272:4198464,1015808:2147483712,1048576:4194368,1114112:4198400,1179648:2147483712,1245184:0,1310720:4160,1376256:2151678016,1441792:2151682048,1507328:2147487808,1572864:2151682112,1638400:2147483648,1703936:2151677952,1769472:4198464,1835008:2147487744,1900544:4194304,1966080:64,2031616:4096,1081344:2151677952,1146880:2151682112,1212416:0,1277952:4198400,1343488:4194368,1409024:2147483648,1474560:2147487808,1540096:64,1605632:2147483712,1671168:4096,1736704:2147487744,1802240:2151678016,1867776:4160,1933312:2151682048,1998848:4194304,2064384:4198464},{0:128,4096:17039360,8192:262144,12288:536870912,16384:537133184,20480:16777344,24576:553648256,28672:262272,32768:16777216,36864:537133056,40960:536871040,45056:553910400,49152:553910272,53248:0,57344:17039488,61440:553648128,2048:17039488,6144:553648256,10240:128,14336:17039360,18432:262144,22528:537133184,26624:553910272,30720:536870912,34816:537133056,38912:0,43008:553910400,47104:16777344,51200:536871040,55296:553648128,59392:16777216,63488:262272,65536:262144,69632:128,73728:536870912,77824:553648256,81920:16777344,86016:553910272,90112:537133184,94208:16777216,98304:553910400,102400:553648128,106496:17039360,110592:537133056,114688:262272,118784:536871040,122880:0,126976:17039488,67584:553648256,71680:16777216,75776:17039360,79872:537133184,83968:536870912,88064:17039488,92160:128,96256:553910272,100352:262272,104448:553910400,108544:0,112640:553648128,116736:16777344,120832:262144,124928:537133056,129024:536871040},{0:268435464,256:8192,512:270532608,768:270540808,1024:268443648,1280:2097152,1536:2097160,1792:268435456,2048:0,2304:268443656,2560:2105344,2816:8,3072:270532616,3328:2105352,3584:8200,3840:270540800,128:270532608,384:270540808,640:8,896:2097152,1152:2105352,1408:268435464,1664:268443648,1920:8200,2176:2097160,2432:8192,2688:268443656,2944:270532616,3200:0,3456:270540800,3712:2105344,3968:268435456,4096:268443648,4352:270532616,4608:270540808,4864:8200,5120:2097152,5376:268435456,5632:268435464,5888:2105344,6144:2105352,6400:0,6656:8,6912:270532608,7168:8192,7424:268443656,7680:270540800,7936:2097160,4224:8,4480:2105344,4736:2097152,4992:268435464,5248:268443648,5504:8200,5760:270540808,6016:270532608,6272:270540800,6528:270532616,6784:8192,7040:2105352,7296:2097160,7552:0,7808:268435456,8064:268443656},{0:1048576,16:33555457,32:1024,48:1049601,64:34604033,80:0,96:1,112:34603009,128:33555456,144:1048577,160:33554433,176:34604032,192:34603008,208:1025,224:1049600,240:33554432,8:34603009,24:0,40:33555457,56:34604032,72:1048576,88:33554433,104:33554432,120:1025,136:1049601,152:33555456,168:34603008,184:1048577,200:1024,216:34604033,232:1,248:1049600,256:33554432,272:1048576,288:33555457,304:34603009,320:1048577,336:33555456,352:34604032,368:1049601,384:1025,400:34604033,416:1049600,432:1,448:0,464:34603008,480:33554433,496:1024,264:1049600,280:33555457,296:34603009,312:1,328:33554432,344:1048576,360:1025,376:34604032,392:33554433,408:34603008,424:0,440:34604033,456:1049601,472:1024,488:33555456,504:1048577},{0:134219808,1:131072,2:134217728,3:32,4:131104,5:134350880,6:134350848,7:2048,8:134348800,9:134219776,10:133120,11:134348832,12:2080,13:0,14:134217760,15:133152,2147483648:2048,2147483649:134350880,2147483650:134219808,2147483651:134217728,2147483652:134348800,2147483653:133120,2147483654:133152,2147483655:32,2147483656:134217760,2147483657:2080,2147483658:131104,2147483659:134350848,2147483660:0,2147483661:134348832,2147483662:134219776,2147483663:131072,16:133152,17:134350848,18:32,19:2048,20:134219776,21:134217760,22:134348832,23:131072,24:0,25:131104,26:134348800,27:134219808,28:134350880,29:133120,30:2080,31:134217728,2147483664:131072,2147483665:2048,2147483666:134348832,2147483667:133152,2147483668:32,2147483669:134348800,2147483670:134217728,2147483671:134219808,2147483672:134350880,2147483673:134217760,2147483674:134219776,2147483675:0,2147483676:133120,2147483677:2080,2147483678:131104,2147483679:134350848}],d=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],u=o[e(465)]=n[e(460)]({_doReset:function(){for(var t=e,s=this._key.words,i=[],r=0;r<56;r++){var n=a[r]-1;i[r]=s[n>>>5]>>>31-n%32&1}for(var o=this[t(430)]=[],c=0;c<16;c++){var d=o[c]=[],u=l[c];for(r=0;r<24;r++)d[r/6|0]|=i[(h[r]-1+u)%28]<<31-r%6,d[4+(r/6|0)]|=i[28+(h[r+24]-1+u)%28]<<31-r%6;for(d[0]=d[0]<<1|d[0]>>>31,r=1;r<7;r++)d[r]=d[r]>>>4*(r-1)+3;d[7]=d[7]<<5|d[7]>>>27}var p=this[t(458)]=[];for(r=0;r<16;r++)p[r]=o[15-r]},encryptBlock:function(t,s){this[e(446)](t,s,this._subKeys)},decryptBlock:function(t,e){this._doCryptBlock(t,e,this._invSubKeys)},_doCryptBlock:function(t,s,i){var r=e;this[r(444)]=t[s],this[r(443)]=t[s+1],p[r(441)](this,4,252645135),p[r(441)](this,16,65535),f[r(441)](this,2,858993459),f[r(441)](this,8,16711935),p[r(441)](this,1,1431655765);for(var n=0;n<16;n++){for(var o=i[n],a=this[r(444)],h=this[r(443)],l=0,u=0;u<8;u++)l|=c[u][((h^o[u])&d[u])>>>0];this._lBlock=h,this._rBlock=a^l}var m=this[r(444)];this[r(444)]=this[r(443)],this[r(443)]=m,p[r(441)](this,1,1431655765),f[r(441)](this,8,16711935),f[r(441)](this,2,858993459),p.call(this,16,65535),p[r(441)](this,4,252645135),t[s]=this[r(444)],t[s+1]=this[r(443)]},keySize:2,ivSize:2,blockSize:2});function p(t,s){var i=e,r=(this[i(444)]>>>t^this._rBlock)&s;this._rBlock^=r,this[i(444)]^=r<<t}function f(t,s){var i=e,r=(this._rBlock>>>t^this._lBlock)&s;this[i(444)]^=r,this[i(443)]^=r<<t}s[e(465)]=n[e(432)](u);var m=o.TripleDES=n[e(460)]({_doReset:function(){var t=e,s=this[t(442)].words;if(2!==s.length&&4!==s[t(435)]&&s[t(435)]<6)throw new Error(t(457));var i=s[t(464)](0,2),n=s.length<4?s[t(464)](0,2):s.slice(2,4),o=s[t(435)]<6?s[t(464)](0,2):s[t(464)](4,6);this[t(436)]=u.createEncryptor(r[t(462)](i)),this[t(440)]=u.createEncryptor(r[t(462)](n)),this[t(447)]=u[t(448)](r.create(o))},encryptBlock:function(t,s){var i=e;this[i(436)][i(429)](t,s),this._des2[i(466)](t,s),this[i(447)][i(429)](t,s)},decryptBlock:function(t,s){var i=e;this[i(447)].decryptBlock(t,s),this[i(440)][i(429)](t,s),this[i(436)][i(466)](t,s)},keySize:6,ivSize:2,blockSize:2});s[e(453)]=n[e(432)](m)}(),t[e(453)]},"object"===(r=Ep)(455)?t[r(437)]=i(Kd):"undefined"===r(450)&&(void 0)[r(459)]?(void 0)(["./core",r(434),"./md5","./evpkdf","./cipher-core"],i):i(s[r(431)])});function Tp(t,e){var s=Ip();return(Tp=function(t,e){return s[t-=347]})(t,e)}function Ip(){var t=["words","RC4","cfg","algo","sigBytes","13050140ptcVyv","object","1917856KBVMSe","./core","14cHJDsx","commonjsGlobal","1797246ArstNb","_doReset","373980ieDOjB","StreamCipher","./cipher-core","3209400eIOWxe","RC4Drop","565649uGCzin","./enc-base64","lib","./evpkdf","extend","9Jylkxs","./md5","amd","_createHelper","CryptoJS","call","_key","function","12FVmlUH","98002uCfniy"];return(Ip=function(){return t})()}!function(t){for(var e=Tp,s=t();;)try{if(370724===-parseInt(e(352))/1+parseInt(e(366))/2*(-parseInt(e(357))/3)+parseInt(e(365))/4*(-parseInt(e(347))/5)+parseInt(e(378))/6*(parseInt(e(376))/7)+-parseInt(e(374))/8+-parseInt(e(350))/9+parseInt(e(372))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Ip);me(function(t,e){var s,i,r;s=ge[Tp(377)],i=function(t){return function(){var e=Tp,s=t,i=s[e(354)][e(348)],r=s[e(370)],n=r.RC4=i[e(356)]({_doReset:function(){for(var t=e,s=this[t(363)],i=s[t(367)],r=s[t(371)],n=this._S=[],o=0;o<256;o++)n[o]=o;o=0;for(var a=0;o<256;o++){var h=o%r,l=i[h>>>2]>>>24-h%4*8&255;a=(a+n[o]+l)%256;var c=n[o];n[o]=n[a],n[a]=c}this._i=this._j=0},_doProcessBlock:function(t,e){t[e]^=o.call(this)},keySize:8,ivSize:0});function o(){for(var t=this._S,e=this._i,s=this._j,i=0,r=0;r<4;r++){s=(s+t[e=(e+1)%256])%256;var n=t[e];t[e]=t[s],t[s]=n,i|=t[(t[e]+t[s])%256]<<24-8*r}return this._i=e,this._j=s,i}s[e(368)]=i[e(360)](n);var a=r[e(351)]=n[e(356)]({cfg:n[e(369)][e(356)]({drop:192}),_doReset:function(){var t=e;n[t(379)][t(362)](this);for(var s=this.cfg.drop;s>0;s--)o[t(362)](this)}});s[e(351)]=i[e(360)](a)}(),t.RC4},"object"===(r=Tp)(373)?t.exports=i(Kd):"undefined"===r(364)&&(void 0)[r(359)]?(void 0)([r(375),r(353),r(358),r(355),r(349)],i):i(s[r(361)])});var kp=Cp;function _p(){var t=["4289457Fxtpux","exports","call","./core","1670cMoaNO","4tYxXxQ","function","1686dzIFTL","Rabbit","2537814iTEDMk","createCommonjsModule","23206580EhgwCM","./md5","algo","words","450490ipBUlQ","13123691pqLiHP","1692KxBYsw","5576xxutNS","./cipher-core","lib","commonjsGlobal","amd","./enc-base64","cfg"];return(_p=function(){return t})()}function Cp(t,e){var s=_p();return(Cp=function(t,e){return s[t-=306]})(t,e)}!function(t){for(var e=Cp,s=t();;)try{if(960313===parseInt(e(311))/1+parseInt(e(330))/2+-parseInt(e(321))/3*(parseInt(e(326))/4)+parseInt(e(325))/5*(parseInt(e(328))/6)+-parseInt(e(312))/7+parseInt(e(314))/8*(parseInt(e(313))/9)+parseInt(e(307))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(_p);ge[kp(306)](function(t,e){var s,i,r=kp;ge[r(317)],t[Cp(322)]=(s=Kd,i=r,function(){var t=Cp,e=s,i=e[t(316)].StreamCipher,r=e[t(309)],n=[],o=[],a=[],h=r[t(329)]=i.extend({_doReset:function(){for(var e=t,s=this._key[e(310)],i=this[e(320)].iv,r=0;r<4;r++)s[r]=16711935&(s[r]<<8|s[r]>>>24)|4278255360&(s[r]<<24|s[r]>>>8);var n=this._X=[s[0],s[3]<<16|s[2]>>>16,s[1],s[0]<<16|s[3]>>>16,s[2],s[1]<<16|s[0]>>>16,s[3],s[2]<<16|s[1]>>>16],o=this._C=[s[2]<<16|s[2]>>>16,4294901760&s[0]|65535&s[1],s[3]<<16|s[3]>>>16,4294901760&s[1]|65535&s[2],s[0]<<16|s[0]>>>16,4294901760&s[2]|65535&s[3],s[1]<<16|s[1]>>>16,4294901760&s[3]|65535&s[0]];for(this._b=0,r=0;r<4;r++)l.call(this);for(r=0;r<8;r++)o[r]^=n[r+4&7];if(i){var a=i.words,h=a[0],c=a[1],d=16711935&(h<<8|h>>>24)|4278255360&(h<<24|h>>>8),u=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8),p=d>>>16|4294901760&u,f=u<<16|65535&d;for(o[0]^=d,o[1]^=p,o[2]^=u,o[3]^=f,o[4]^=d,o[5]^=p,o[6]^=u,o[7]^=f,r=0;r<4;r++)l.call(this)}},_doProcessBlock:function(e,s){var i=t,r=this._X;l[i(323)](this),n[0]=r[0]^r[5]>>>16^r[3]<<16,n[1]=r[2]^r[7]>>>16^r[5]<<16,n[2]=r[4]^r[1]>>>16^r[7]<<16,n[3]=r[6]^r[3]>>>16^r[1]<<16;for(var o=0;o<4;o++)n[o]=16711935&(n[o]<<8|n[o]>>>24)|4278255360&(n[o]<<24|n[o]>>>8),e[s+o]^=n[o]},blockSize:4,ivSize:2});function l(){for(var t=this._X,e=this._C,s=0;s<8;s++)o[s]=e[s];for(e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<o[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<o[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<o[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<o[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<o[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<o[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<o[6]>>>0?1:0)|0,this._b=e[7]>>>0<o[7]>>>0?1:0,s=0;s<8;s++){var i=t[s]+e[s],r=65535&i,n=i>>>16,h=((r*r>>>17)+r*n>>>15)+n*n,l=((4294901760&i)*i|0)+((65535&i)*i|0);a[s]=h^l}t[0]=a[0]+(a[7]<<16|a[7]>>>16)+(a[6]<<16|a[6]>>>16)|0,t[1]=a[1]+(a[0]<<8|a[0]>>>24)+a[7]|0,t[2]=a[2]+(a[1]<<16|a[1]>>>16)+(a[0]<<16|a[0]>>>16)|0,t[3]=a[3]+(a[2]<<8|a[2]>>>24)+a[1]|0,t[4]=a[4]+(a[3]<<16|a[3]>>>16)+(a[2]<<16|a[2]>>>16)|0,t[5]=a[5]+(a[4]<<8|a[4]>>>24)+a[3]|0,t[6]=a[6]+(a[5]<<16|a[5]>>>16)+(a[4]<<16|a[4]>>>16)|0,t[7]=a[7]+(a[6]<<8|a[6]>>>24)+a[5]|0}e.Rabbit=i._createHelper(h)}(),s[i(329)])});var Dp=Lp;function Lp(t,e){var s=Rp();return(Lp=function(t,e){return s[t-=102]})(t,e)}function Rp(){var t=["./cipher-core","1750146ESxjhE","function","1782192UFGhXo","CryptoJS","860333zPCPEU","algo","lib","4772200gMDyDT","RabbitLegacy","./enc-base64","call","./md5","StreamCipher","2241944koZgVJ","object","createCommonjsModule","exports","./core","words","4479456fBBiQR","./evpkdf","extend","16721131RPIwiv","amd"];return(Rp=function(){return t})()}!function(t){for(var e=Lp,s=t();;)try{if(479041===-parseInt(e(118))/1+-parseInt(e(114))/2+parseInt(e(116))/3+-parseInt(e(102))/4+-parseInt(e(121))/5+parseInt(e(108))/6+parseInt(e(111))/7)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Rp);ge[Dp(104)](function(t,e){var s,i,r;s=fe,i=function(t){var e=Lp;return function(){var e=Lp,s=t,i=s[e(120)][e(126)],r=s[e(119)],n=[],o=[],a=[],h=r[e(122)]=i[e(110)]({_doReset:function(){var t=e,s=this._key.words,i=this.cfg.iv,r=this._X=[s[0],s[3]<<16|s[2]>>>16,s[1],s[0]<<16|s[3]>>>16,s[2],s[1]<<16|s[0]>>>16,s[3],s[2]<<16|s[1]>>>16],n=this._C=[s[2]<<16|s[2]>>>16,4294901760&s[0]|65535&s[1],s[3]<<16|s[3]>>>16,4294901760&s[1]|65535&s[2],s[0]<<16|s[0]>>>16,4294901760&s[2]|65535&s[3],s[1]<<16|s[1]>>>16,4294901760&s[3]|65535&s[0]];this._b=0;for(var o=0;o<4;o++)l[t(124)](this);for(o=0;o<8;o++)n[o]^=r[o+4&7];if(i){var a=i[t(107)],h=a[0],c=a[1],d=16711935&(h<<8|h>>>24)|4278255360&(h<<24|h>>>8),u=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8),p=d>>>16|4294901760&u,f=u<<16|65535&d;for(n[0]^=d,n[1]^=p,n[2]^=u,n[3]^=f,n[4]^=d,n[5]^=p,n[6]^=u,n[7]^=f,o=0;o<4;o++)l[t(124)](this)}},_doProcessBlock:function(t,e){var s=this._X;l.call(this),n[0]=s[0]^s[5]>>>16^s[3]<<16,n[1]=s[2]^s[7]>>>16^s[5]<<16,n[2]=s[4]^s[1]>>>16^s[7]<<16,n[3]=s[6]^s[3]>>>16^s[1]<<16;for(var i=0;i<4;i++)n[i]=16711935&(n[i]<<8|n[i]>>>24)|4278255360&(n[i]<<24|n[i]>>>8),t[e+i]^=n[i]},blockSize:4,ivSize:2});function l(){for(var t=this._X,e=this._C,s=0;s<8;s++)o[s]=e[s];for(e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0<o[0]>>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0<o[1]>>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0<o[2]>>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0<o[3]>>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0<o[4]>>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0<o[5]>>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0<o[6]>>>0?1:0)|0,this._b=e[7]>>>0<o[7]>>>0?1:0,s=0;s<8;s++){var i=t[s]+e[s],r=65535&i,n=i>>>16,h=((r*r>>>17)+r*n>>>15)+n*n,l=((4294901760&i)*i|0)+((65535&i)*i|0);a[s]=h^l}t[0]=a[0]+(a[7]<<16|a[7]>>>16)+(a[6]<<16|a[6]>>>16)|0,t[1]=a[1]+(a[0]<<8|a[0]>>>24)+a[7]|0,t[2]=a[2]+(a[1]<<16|a[1]>>>16)+(a[0]<<16|a[0]>>>16)|0,t[3]=a[3]+(a[2]<<8|a[2]>>>24)+a[1]|0,t[4]=a[4]+(a[3]<<16|a[3]>>>16)+(a[2]<<16|a[2]>>>16)|0,t[5]=a[5]+(a[4]<<8|a[4]>>>24)+a[3]|0,t[6]=a[6]+(a[5]<<16|a[5]>>>16)+(a[4]<<16|a[4]>>>16)|0,t[7]=a[7]+(a[6]<<8|a[6]>>>24)+a[5]|0}s[e(122)]=i._createHelper(h)}(),t[e(122)]},(r=Lp)(103)==r(103)?t[r(105)]=i(Kd):"undefined"===r(115)&&(void 0)[r(112)]?(void 0)([r(106),r(123),r(125),r(109),r(113)],i):i(s[r(117)])});function Pp(){const t=["81sOvbSQ","function","1182093hUVpRW","130RjTopt","right","createCommonjsModule","left","./evpkdf","./enc-base64","2271915OSoAxk","sbox","commonjsGlobal","_keyPriorReset","words","5zUAEPs","object","algo","742552jDinQI","./cipher-core","_key","_createHelper","Blowfish","./md5","pbox","CryptoJS","546300KWcZvX","2198413xXFNMA","6TfZSJi","1788765sssnYv","BlockCipher","amd","311036fuDarW"];return(Pp=function(){return t})()}const xp=Mp;function Mp(t,e){const s=Pp();return(Mp=function(t,e){return s[t-=231]})(t,e)}!function(t){const e=Mp,s=t();for(;;)try{if(438010===parseInt(e(236))/1*(parseInt(e(253))/2)+parseInt(e(231))/3+parseInt(e(247))/4+-parseInt(e(250))/5+-parseInt(e(249))/6*(parseInt(e(248))/7)+parseInt(e(239))/8*(parseInt(e(254))/9)+-parseInt(e(257))/10*(parseInt(e(256))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Pp);ge[xp(259)](function(t,e){const s=xp;!function(e,s){const i=Mp;"object"===i(237)?t.exports=s(Kd):"undefined"===i(255)&&(void 0)[i(252)]?(void 0)(["./core",i(262),i(244),i(261),i(240)],s):s(e[i(246)])}(ge[s(233)],function(t){const e=s;return function(){const e=Mp;var s=t,i=s.lib[e(251)],r=s[e(238)];const n=16,o=[608135816,2242054355,320440878,57701188,2752067618,698298832,137296536,3964562569,1160258022,953160567,3193202383,887688300,3232508343,3380367581,1065670069,3041331479,2450970073,2306472731],a=[[3509652390,2564797868,805139163,3491422135,3101798381,1780907670,3128725573,4046225305,614570311,3012652279,134345442,2240740374,1667834072,1901547113,2757295779,4103290238,227898511,1921955416,1904987480,2182433518,2069144605,3260701109,2620446009,720527379,3318853667,677414384,3393288472,3101374703,2390351024,1614419982,1822297739,2954791486,3608508353,3174124327,2024746970,1432378464,3864339955,2857741204,1464375394,1676153920,1439316330,715854006,3033291828,289532110,2706671279,2087905683,3018724369,1668267050,732546397,1947742710,3462151702,2609353502,2950085171,1814351708,2050118529,680887927,999245976,1800124847,3300911131,1713906067,1641548236,4213287313,1216130144,1575780402,4018429277,3917837745,3693486850,3949271944,596196993,3549867205,258830323,2213823033,772490370,2760122372,1774776394,2652871518,566650946,4142492826,1728879713,2882767088,1783734482,3629395816,2517608232,2874225571,1861159788,326777828,3124490320,2130389656,2716951837,967770486,1724537150,2185432712,2364442137,1164943284,2105845187,998989502,3765401048,2244026483,1075463327,1455516326,1322494562,910128902,469688178,1117454909,936433444,3490320968,3675253459,1240580251,122909385,2157517691,634681816,4142456567,3825094682,3061402683,2540495037,79693498,3249098678,1084186820,1583128258,426386531,1761308591,1047286709,322548459,995290223,1845252383,2603652396,3431023940,2942221577,3202600964,3727903485,1712269319,422464435,3234572375,1170764815,3523960633,3117677531,1434042557,442511882,3600875718,1076654713,1738483198,4213154764,2393238008,3677496056,1014306527,4251020053,793779912,2902807211,842905082,4246964064,1395751752,1040244610,2656851899,3396308128,445077038,3742853595,3577915638,679411651,2892444358,2354009459,1767581616,3150600392,3791627101,3102740896,284835224,4246832056,1258075500,768725851,2589189241,3069724005,3532540348,1274779536,3789419226,2764799539,1660621633,3471099624,4011903706,913787905,3497959166,737222580,2514213453,2928710040,3937242737,1804850592,3499020752,2949064160,2386320175,2390070455,2415321851,4061277028,2290661394,2416832540,1336762016,1754252060,3520065937,3014181293,791618072,3188594551,3933548030,2332172193,3852520463,3043980520,413987798,3465142937,3030929376,4245938359,2093235073,3534596313,375366246,2157278981,2479649556,555357303,3870105701,2008414854,3344188149,4221384143,3956125452,2067696032,3594591187,2921233993,2428461,544322398,577241275,1471733935,610547355,4027169054,1432588573,1507829418,2025931657,3646575487,545086370,48609733,2200306550,1653985193,298326376,1316178497,3007786442,2064951626,458293330,2589141269,3591329599,3164325604,727753846,2179363840,146436021,1461446943,4069977195,705550613,3059967265,3887724982,4281599278,3313849956,1404054877,2845806497,146425753,1854211946],[1266315497,3048417604,3681880366,3289982499,290971e4,1235738493,2632868024,2414719590,3970600049,1771706367,1449415276,3266420449,422970021,1963543593,2690192192,3826793022,1062508698,1531092325,1804592342,2583117782,2714934279,4024971509,1294809318,4028980673,1289560198,2221992742,1669523910,35572830,157838143,1052438473,1016535060,1802137761,1753167236,1386275462,3080475397,2857371447,1040679964,2145300060,2390574316,1461121720,2956646967,4031777805,4028374788,33600511,2920084762,1018524850,629373528,3691585981,3515945977,2091462646,2486323059,586499841,988145025,935516892,3367335476,2599673255,2839830854,265290510,3972581182,2759138881,3795373465,1005194799,847297441,406762289,1314163512,1332590856,1866599683,4127851711,750260880,613907577,1450815602,3165620655,3734664991,3650291728,3012275730,3704569646,1427272223,778793252,1343938022,2676280711,2052605720,1946737175,3164576444,3914038668,3967478842,3682934266,1661551462,3294938066,4011595847,840292616,3712170807,616741398,312560963,711312465,1351876610,322626781,1910503582,271666773,2175563734,1594956187,70604529,3617834859,1007753275,1495573769,4069517037,2549218298,2663038764,504708206,2263041392,3941167025,2249088522,1514023603,1998579484,1312622330,694541497,2582060303,2151582166,1382467621,776784248,2618340202,3323268794,2497899128,2784771155,503983604,4076293799,907881277,423175695,432175456,1378068232,4145222326,3954048622,3938656102,3820766613,2793130115,2977904593,26017576,3274890735,3194772133,1700274565,1756076034,4006520079,3677328699,720338349,1533947780,354530856,688349552,3973924725,1637815568,332179504,3949051286,53804574,2852348879,3044236432,1282449977,3583942155,3416972820,4006381244,1617046695,2628476075,3002303598,1686838959,431878346,2686675385,1700445008,1080580658,1009431731,832498133,3223435511,2605976345,2271191193,2516031870,1648197032,4164389018,2548247927,300782431,375919233,238389289,3353747414,2531188641,2019080857,1475708069,455242339,2609103871,448939670,3451063019,1395535956,2413381860,1841049896,1491858159,885456874,4264095073,4001119347,1565136089,3898914787,1108368660,540939232,1173283510,2745871338,3681308437,4207628240,3343053890,4016749493,1699691293,1103962373,3625875870,2256883143,3830138730,1031889488,3479347698,1535977030,4236805024,3251091107,2132092099,1774941330,1199868427,1452454533,157007616,2904115357,342012276,595725824,1480756522,206960106,497939518,591360097,863170706,2375253569,3596610801,1814182875,2094937945,3421402208,1082520231,3463918190,2785509508,435703966,3908032597,1641649973,2842273706,3305899714,1510255612,2148256476,2655287854,3276092548,4258621189,236887753,3681803219,274041037,1734335097,3815195456,3317970021,1899903192,1026095262,4050517792,356393447,2410691914,3873677099,3682840055],[3913112168,2491498743,4132185628,2489919796,1091903735,1979897079,3170134830,3567386728,3557303409,857797738,1136121015,1342202287,507115054,2535736646,337727348,3213592640,1301675037,2528481711,1895095763,1721773893,3216771564,62756741,2142006736,835421444,2531993523,1442658625,3659876326,2882144922,676362277,1392781812,170690266,3921047035,1759253602,3611846912,1745797284,664899054,1329594018,3901205900,3045908486,2062866102,2865634940,3543621612,3464012697,1080764994,553557557,3656615353,3996768171,991055499,499776247,1265440854,648242737,3940784050,980351604,3713745714,1749149687,3396870395,4211799374,3640570775,1161844396,3125318951,1431517754,545492359,4268468663,3499529547,1437099964,2702547544,3433638243,2581715763,2787789398,1060185593,1593081372,2418618748,4260947970,69676912,2159744348,86519011,2512459080,3838209314,1220612927,3339683548,133810670,1090789135,1078426020,1569222167,845107691,3583754449,4072456591,1091646820,628848692,1613405280,3757631651,526609435,236106946,48312990,2942717905,3402727701,1797494240,859738849,992217954,4005476642,2243076622,3870952857,3732016268,765654824,3490871365,2511836413,1685915746,3888969200,1414112111,2273134842,3281911079,4080962846,172450625,2569994100,980381355,4109958455,2819808352,2716589560,2568741196,3681446669,3329971472,1835478071,660984891,3704678404,4045999559,3422617507,3040415634,1762651403,1719377915,3470491036,2693910283,3642056355,3138596744,1364962596,2073328063,1983633131,926494387,3423689081,2150032023,4096667949,1749200295,3328846651,309677260,2016342300,1779581495,3079819751,111262694,1274766160,443224088,298511866,1025883608,3806446537,1145181785,168956806,3641502830,3584813610,1689216846,3666258015,3200248200,1692713982,2646376535,4042768518,1618508792,1610833997,3523052358,4130873264,2001055236,3610705100,2202168115,4028541809,2961195399,1006657119,2006996926,3186142756,1430667929,3210227297,1314452623,4074634658,4101304120,2273951170,1399257539,3367210612,3027628629,1190975929,2062231137,2333990788,2221543033,2438960610,1181637006,548689776,2362791313,3372408396,3104550113,3145860560,296247880,1970579870,3078560182,3769228297,1714227617,3291629107,3898220290,166772364,1251581989,493813264,448347421,195405023,2709975567,677966185,3703036547,1463355134,2715995803,1338867538,1343315457,2802222074,2684532164,233230375,2599980071,2000651841,3277868038,1638401717,4028070440,3237316320,6314154,819756386,300326615,590932579,1405279636,3267499572,3150704214,2428286686,3959192993,3461946742,1862657033,1266418056,963775037,2089974820,2263052895,1917689273,448879540,3550394620,3981727096,150775221,3627908307,1303187396,508620638,2975983352,2726630617,1817252668,1876281319,1457606340,908771278,3720792119,3617206836,2455994898,1729034894,1080033504],[976866871,3556439503,2881648439,1522871579,1555064734,1336096578,3548522304,2579274686,3574697629,3205460757,3593280638,3338716283,3079412587,564236357,2993598910,1781952180,1464380207,3163844217,3332601554,1699332808,1393555694,1183702653,3581086237,1288719814,691649499,2847557200,2895455976,3193889540,2717570544,1781354906,1676643554,2592534050,3230253752,1126444790,2770207658,2633158820,2210423226,2615765581,2414155088,3127139286,673620729,2805611233,1269405062,4015350505,3341807571,4149409754,1057255273,2012875353,2162469141,2276492801,2601117357,993977747,3918593370,2654263191,753973209,36408145,2530585658,25011837,3520020182,2088578344,530523599,2918365339,1524020338,1518925132,3760827505,3759777254,1202760957,3985898139,3906192525,674977740,4174734889,2031300136,2019492241,3983892565,4153806404,3822280332,352677332,2297720250,60907813,90501309,3286998549,1016092578,2535922412,2839152426,457141659,509813237,4120667899,652014361,1966332200,2975202805,55981186,2327461051,676427537,3255491064,2882294119,3433927263,1307055953,942726286,933058658,2468411793,3933900994,4215176142,1361170020,2001714738,2830558078,3274259782,1222529897,1679025792,2729314320,3714953764,1770335741,151462246,3013232138,1682292957,1483529935,471910574,1539241949,458788160,3436315007,1807016891,3718408830,978976581,1043663428,3165965781,1927990952,4200891579,2372276910,3208408903,3533431907,1412390302,2931980059,4132332400,1947078029,3881505623,4168226417,2941484381,1077988104,1320477388,886195818,18198404,3786409e3,2509781533,112762804,3463356488,1866414978,891333506,18488651,661792760,1628790961,3885187036,3141171499,876946877,2693282273,1372485963,791857591,2686433993,3759982718,3167212022,3472953795,2716379847,445679433,3561995674,3504004811,3574258232,54117162,3331405415,2381918588,3769707343,4154350007,1140177722,4074052095,668550556,3214352940,367459370,261225585,2610173221,4209349473,3468074219,3265815641,314222801,3066103646,3808782860,282218597,3406013506,3773591054,379116347,1285071038,846784868,2669647154,3771962079,3550491691,2305946142,453669953,1268987020,3317592352,3279303384,3744833421,2610507566,3859509063,266596637,3847019092,517658769,3462560207,3443424879,370717030,4247526661,2224018117,4143653529,4112773975,2788324899,2477274417,1456262402,2901442914,1517677493,1846949527,2295493580,3734397586,2176403920,1280348187,1908823572,3871786941,846861322,1172426758,3287448474,3383383037,1655181056,3139813346,901632758,1897031941,2986607138,3066810236,3447102507,1393639104,373351379,950779232,625454576,3124240540,4148612726,2007998917,544563296,2244738638,2330496472,2058025392,1291430526,424198748,50039436,29584100,3605783033,2429876329,2791104160,1057563949,3255363231,3075367218,3463963227,1469046755,985887462]];var h={pbox:[],sbox:[]};function l(t,s){const i=e;let r=s>>24&255,n=s>>16&255,o=s>>8&255,a=255&s,h=t[i(232)][0][r]+t[i(232)][1][n];return h^=t.sbox[2][o],h+=t[i(232)][3][a],h}function c(t,s,i){const r=e;let o,a=s,h=i;for(let e=0;e<n;++e)a^=t.pbox[e],h=l(t,a)^h,o=a,a=h,h=o;return o=a,a=h,h=o,h^=t[r(245)][16],a^=t[r(245)][17],{left:a,right:h}}var d=r[e(243)]=i.extend({_doReset:function(){const t=e;if(this._keyPriorReset!==this._key){var s=this[t(234)]=this[t(241)],i=s[t(235)],r=s.sigBytes/4;!function(t,s,i){const r=e;for(let e=0;e<4;e++){t[r(232)][e]=[];for(let s=0;s<256;s++)t[r(232)][e][s]=a[e][s]}let n=0;for(let e=0;e<18;e++)t[r(245)][e]=o[e]^s[n],n++,n>=i&&(n=0);let h=0,l=0,d=0;for(let e=0;e<18;e+=2)d=c(t,h,l),h=d.left,l=d[r(258)],t[r(245)][e]=h,t.pbox[e+1]=l;for(let e=0;e<4;e++)for(let s=0;s<256;s+=2)d=c(t,h,l),h=d.left,l=d.right,t[r(232)][e][s]=h,t[r(232)][e][s+1]=l}(h,i,r)}},encryptBlock:function(t,s){const i=e;var r=c(h,t[s],t[s+1]);t[s]=r.left,t[s+1]=r[i(258)]},decryptBlock:function(t,s){const i=e;var r=function(t,s,i){const r=e;let n,o=s,a=i;for(let e=17;e>1;--e)o^=t[r(245)][e],a=l(t,o)^a,n=o,o=a,a=n;return n=o,o=a,a=n,a^=t[r(245)][1],o^=t[r(245)][0],{left:o,right:a}}(h,t[s],t[s+1]);t[s]=r[i(260)],t[s+1]=r.right},blockSize:2,keySize:4,ivSize:2});s.Blowfish=i[e(242)](d)}(),t[e(243)]})});var Bp=Fp;function Fp(t,e){var s=Up();return(Fp=function(t,e){return s[t-=283]})(t,e)}function Up(){var t=["createCommonjsModule","./rc4","./sha512","./pad-nopadding","./enc-utf16","./lib-typedarrays","commonjsGlobal","5552559akOiiH","./rabbit","CryptoJS","./sha224","660378jsiTgE","62937zhzhOu","./blowfish","./hmac","10808DJyTOi","./tripledes","./mode-ctr-gladman","function","./sha3","2093gFMROe","1708424FKSAmw","./pad-iso10126","./rabbit-legacy","./ripemd160","./core","./mode-ecb","./sha384","5bychpT","44XATGkV","./evpkdf","./pad-zeropadding","./format-hex","exports","./x64-core","amd","./pbkdf2","./md5","132TCkCkJ","object","./sha1","5512300HOiXfL","912448qgXpQL","./pad-ansix923","./enc-base64","./aes"];return(Up=function(){return t})()}!function(t){for(var e=Fp,s=t();;)try{if(656790===-parseInt(e(320))/1+-parseInt(e(299))/2+-parseInt(e(290))/3*(parseInt(e(316))/4)+parseInt(e(306))/5*(-parseInt(e(289))/6)+-parseInt(e(298))/7*(-parseInt(e(293))/8)+parseInt(e(285))/9+parseInt(e(319))/10*(parseInt(e(307))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Up);var Op=ge[Bp(324)](function(t,e){var s,i,r;s=ge[Bp(284)],i=function(t){return t},(r=Fp)(317)==r(317)?t[r(311)]=Kd:"undefined"===r(296)&&(void 0)[r(313)]?(void 0)([r(303),r(312),r(283),r(328),r(322),"./enc-base64url",r(315),r(318),"./sha256",r(288),r(326),r(305),r(297),r(302),r(292),r(314),r(308),"./cipher-core","./mode-cfb","./mode-ctr",r(295),"./mode-ofb",r(304),r(321),r(300),"./pad-iso97971",r(309),r(327),r(310),r(323),r(294),r(325),r(286),r(301),r(291)],i):s[r(287)]=s.CryptoJS});function Np(t,e){const s=jp();return(Np=function(t,e){return s[t-=244]})(t,e)}function Vp(t){return t[3]|t[2]<<8|t[1]<<16|t[0]<<24}function jp(){const t=["catch","ModeOfOperation","toString","byteLength","includes","decrypt","set","142HbaTbH","then","3865705zMKSbN","1545324oLfmaH","WordArray","get","5688620Czxsgu","ctr","3026784hhLKdo","Counter","create","lib","6BqpMKB","4853016jgzGUq","length","slice","3161FCFyeY","27vwKKrO","5312896eFPATh"];return(jp=function(){return t})()}function Wp(t){const e=Np,s=[];for(let i=0;i<t[e(253)];i+=1)s[i>>>2]|=t[i]<<24-i%4*8;return Op[e(250)][e(269)][e(249)](s,t[e(253)])}function Gp(){const t=["pkcs#5","iv is invalid","set","1458dSNhuM","310RdAPUU","306eFLNEK","none","key is invalid","padding is invalid","map","codePointAt","toString","slice","fromCodePoint","14fOynps","splice","string","includes","9ECwcaw","join","1684580wGDUhZ","arrayBuffer.length","cbc","33344HeERmy","344504fBzLct","88344EPWJmS","byteLength","11332ttKmzZ","length","pkcs#7","error","array","869244vOyIuo","push","11KcHQbC"];return(Gp=function(){return t})()}!function(t){const e=Np,s=t();for(;;)try{if(591966===-parseInt(e(255))/1*(-parseInt(e(265))/2)+parseInt(e(268))/3+parseInt(e(247))/4+-parseInt(e(267))/5*(-parseInt(e(251))/6)+parseInt(e(252))/7+-parseInt(e(257))/8+-parseInt(e(256))/9*(parseInt(e(245))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(jp);const zp=tf;!function(t){const e=tf,s=t();for(;;)try{if(212483===parseInt(e(258))/1+parseInt(e(240))/2*(parseInt(e(238))/3)+-parseInt(e(262))/4*(-parseInt(e(239))/5)+-parseInt(e(267))/6*(parseInt(e(249))/7)+parseInt(e(259))/8*(parseInt(e(253))/9)+-parseInt(e(255))/10*(-parseInt(e(269))/11)+parseInt(e(260))/12)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Gp);const Hp=16,Kp=[214,144,233,254,204,225,61,183,22,182,20,194,40,251,44,5,43,103,154,118,42,190,4,195,170,68,19,38,73,134,6,153,156,66,80,244,145,239,152,122,51,84,11,67,237,207,172,98,228,179,28,169,201,8,232,149,128,223,148,250,117,143,63,166,71,7,167,252,243,115,23,186,131,89,60,25,230,133,79,168,104,107,129,178,113,100,218,139,248,235,15,75,112,86,157,53,30,36,14,94,99,88,209,162,37,34,124,59,1,33,120,135,212,0,70,87,159,211,39,82,76,54,2,231,160,196,200,158,234,191,138,210,64,199,56,181,163,247,242,206,249,97,21,161,224,174,93,164,155,52,26,85,173,147,50,48,245,140,177,227,29,246,226,46,130,102,202,96,192,41,35,171,13,83,78,111,213,219,55,69,222,253,142,47,3,255,106,114,109,108,91,81,141,27,175,146,187,221,188,127,17,217,92,65,31,16,90,216,10,193,49,136,165,205,123,189,45,116,208,18,184,229,180,176,137,105,151,74,12,150,119,126,101,185,241,9,197,110,198,132,24,240,125,236,58,220,77,32,121,238,95,62,215,203,57,72],qp=[462357,472066609,943670861,1415275113,1886879365,2358483617,2830087869,3301692121,3773296373,4228057617,404694573,876298825,1347903077,1819507329,2291111581,2762715833,3234320085,3705924337,4177462797,337322537,808926789,1280531041,1752135293,2223739545,2695343797,3166948049,3638552301,4110090761,269950501,741554753,1213159005,1684763257];function Qp(t){const e=tf,s=[];for(let i=0,r=t[e(263)];i<r;i+=2)s[e(268)](parseInt(t.substr(i,2),16));return s}function Yp(t,e){const s=31&e;return t<<s|t>>>32-s}function Jp(t){return(255&Kp[t>>>24&255])<<24|(255&Kp[t>>>16&255])<<16|(255&Kp[t>>>8&255])<<8|255&Kp[255&t]}function Xp(t){return t^Yp(t,2)^Yp(t,10)^Yp(t,18)^Yp(t,24)}function $p(t){return t^Yp(t,13)^Yp(t,23)}function Zp(t,e,s){const i=new Array(4),r=new Array(4);for(let e=0;e<4;e++)r[0]=255&t[4*e],r[1]=255&t[4*e+1],r[2]=255&t[4*e+2],r[3]=255&t[4*e+3],i[e]=r[0]<<24|r[1]<<16|r[2]<<8|r[3];for(let t,e=0;e<32;e+=4)t=i[1]^i[2]^i[3]^s[e+0],i[0]^=Xp(Jp(t)),t=i[2]^i[3]^i[0]^s[e+1],i[1]^=Xp(Jp(t)),t=i[3]^i[0]^i[1]^s[e+2],i[2]^=Xp(Jp(t)),t=i[0]^i[1]^i[2]^s[e+3],i[3]^=Xp(Jp(t));for(let t=0;t<16;t+=4)e[t]=i[3-t/4]>>>24&255,e[t+1]=i[3-t/4]>>>16&255,e[t+2]=i[3-t/4]>>>8&255,e[t+3]=255&i[3-t/4]}function tf(t,e){const s=Gp();return(tf=function(t,e){return s[t-=236]})(t,e)}function ef(t,e,s,{padding:i=zp(264),mode:r,iv:n=[],output:o=zp(251)}={}){const a=zp;if(r===a(257)&&(typeof n===a(251)&&(n=Qp(n)),16!==n.length))throw new Error(a(236));if(typeof e===a(251)&&(e=Qp(e)),16!==e[a(263)])throw new Error(a(242));if(t=typeof t===a(251)?0!==s?function(t){const e=tf,s=[];for(let i=0,r=t[e(263)];i<r;i++){const r=t[e(245)](i);if(r<=127)s[e(268)](r);else if(r<=2047)s.push(192|r>>>6),s[e(268)](128|63&r);else if(r<=55295||r>=57344&&r<=65535)s[e(268)](224|r>>>12),s[e(268)](128|r>>>6&63),s[e(268)](128|63&r);else{if(!(r>=65536&&r<=1114111))throw s[e(268)](r),new Error("input is not supported");i++,s[e(268)](240|r>>>18&28),s[e(268)](128|r>>>12&63),s[e(268)](128|r>>>6&63),s[e(268)](128|63&r)}}return s}(t):Qp(t):[...t],(i===a(270)||i===a(264))&&0!==s){const e=Hp-t[a(263)]%Hp;for(let s=0;s<e;s++)t.push(e)}const h=new Array(32);!function(t,e,s){const i=new Array(4),r=new Array(4);for(let e=0;e<4;e++)r[0]=255&t[0+4*e],r[1]=255&t[1+4*e],r[2]=255&t[2+4*e],r[3]=255&t[3+4*e],i[e]=r[0]<<24|r[1]<<16|r[2]<<8|r[3];i[0]^=2746333894,i[1]^=1453994832,i[2]^=1736282519,i[3]^=2993693404;for(let t,s=0;s<32;s+=4)t=i[1]^i[2]^i[3]^qp[s+0],e[s+0]=i[0]^=$p(Jp(t)),t=i[2]^i[3]^i[0]^qp[s+1],e[s+1]=i[1]^=$p(Jp(t)),t=i[3]^i[0]^i[1]^qp[s+2],e[s+2]=i[2]^=$p(Jp(t)),t=i[0]^i[1]^i[2]^qp[s+3],e[s+3]=i[3]^=$p(Jp(t));if(0===s)for(let t,s=0;s<16;s++)t=e[s],e[s]=e[31-s],e[31-s]=t}(e,h,s);const l=[];let c=n,d=t[a(263)],u=0;for(;d>=Hp;){const e=t[a(247)](u,u+16),i=new Array(16);if("cbc"===r)for(let t=0;t<Hp;t++)0!==s&&(e[t]^=c[t]);Zp(e,i,h);for(let t=0;t<Hp;t++)r===a(257)&&0===s&&(i[t]^=c[t]),l[u+t]=i[t];r===a(257)&&(c=0!==s?i:e),d-=Hp,u+=Hp}if((i===a(270)||"pkcs#7"===i)&&0===s){const t=l.length,e=l[t-1];for(let s=1;s<=e;s++)if(l[t-s]!==e)throw new Error(a(243));l[a(250)](t-e,e)}return o!==a(266)?0!==s?function(t){const e=tf;return t[e(244)](t=>1===(t=t[e(246)](16)).length?"0"+t:t).join("")}(l):function(t){const e=tf,s=[];for(let i=0,r=t[e(263)];i<r;i++)t[i]>=240&&t[i]<=247?(s.push(String[e(248)](((7&t[i])<<18)+((63&t[i+1])<<12)+((63&t[i+2])<<6)+(63&t[i+3]))),i+=3):t[i]>=224&&t[i]<=239?(s[e(268)](String.fromCodePoint(((15&t[i])<<12)+((63&t[i+1])<<6)+(63&t[i+2]))),i+=2):t[i]>=192&&t[i]<=223?(s[e(268)](String[e(248)](((31&t[i])<<6)+(63&t[i+1]))),i++):s[e(268)](String[e(248)](t[i]));return s[e(254)]("")}(l):l}function sf(t){return t[3]|t[2]<<8|t[1]<<16|t[0]<<24}function rf(t,e,s){const i=af;for(let r=2;r<t[i(436)];++r){const n=r-2,o=e[n%e[i(436)]],a=s[n%s[i(436)]];t[r]=t[r]^o^a}return t}function nf(t){return t[3]|t[2]<<8|t[1]<<16|t[0]<<24}function of(){const t=["1409610usayPo","194430QjNYER","length","65uxnOdP","set","9428utdsfy","74744RalNdy","includes","1250997kHtBVr","495865DzQzmb","3474180Iiehdz","27PxIsOF","byteLength","105FjMUFs","slice"];return(of=function(){return t})()}function af(t,e){const s=of();return(af=function(t,e){return s[t-=435]})(t,e)}function hf(t){return t[3]|t[2]<<8|t[1]<<16|t[0]<<24}!function(t){const e=af,s=t();for(;;)try{if(295768===-parseInt(e(443))/1+parseInt(e(435))/2+-parseInt(e(442))/3+-parseInt(e(439))/4*(parseInt(e(437))/5)+parseInt(e(444))/6+parseInt(e(447))/7*(parseInt(e(440))/8)+-parseInt(e(445))/9*(-parseInt(e(449))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(of),function(t){for(var e=pf,s=t();;)try{if(899249===parseInt(e(386))/1*(-parseInt(e(371))/2)+-parseInt(e(372))/3+-parseInt(e(373))/4+parseInt(e(376))/5*(-parseInt(e(377))/6)+-parseInt(e(381))/7*(-parseInt(e(385))/8)+parseInt(e(383))/9+parseInt(e(387))/10*(parseInt(e(370))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(mf);const lf=new Array(214,144,233,254,204,225,61,183,22,182,20,194,40,251,44,5,43,103,154,118,42,190,4,195,170,68,19,38,73,134,6,153,156,66,80,244,145,239,152,122,51,84,11,67,237,207,172,98,228,179,28,169,201,8,232,149,128,223,148,250,117,143,63,166,71,7,167,252,243,115,23,186,131,89,60,25,230,133,79,168,104,107,129,178,113,100,218,139,248,235,15,75,112,86,157,53,30,36,14,94,99,88,209,162,37,34,124,59,1,33,120,135,212,0,70,87,159,211,39,82,76,54,2,231,160,196,200,158,234,191,138,210,64,199,56,181,163,247,242,206,249,97,21,161,224,174,93,164,155,52,26,85,173,147,50,48,245,140,177,227,29,246,226,46,130,102,202,96,192,41,35,171,13,83,78,111,213,219,55,69,222,253,142,47,3,255,106,114,109,108,91,81,141,27,175,146,187,221,188,127,17,217,92,65,31,16,90,216,10,193,49,136,165,205,123,189,45,116,208,18,184,229,180,176,137,105,151,74,12,150,119,126,101,185,241,9,197,110,198,132,24,240,125,236,58,220,77,32,121,238,95,62,215,203,57,72),cf=new Array(2746333894,1453994832,1736282519,2993693404),df=new Array(462357,472066609,943670861,1415275113,1886879365,2358483617,2830087869,3301692121,3773296373,4228057617,404694573,876298825,1347903077,1819507329,2291111581,2762715833,3234320085,3705924337,4177462797,337322537,808926789,1280531041,1752135293,2223739545,2695343797,3166948049,3638552301,4110090761,269950501,741554753,1213159005,1684763257);function uf(t,e,s,i,r){var n=pf,o=r;o=e+r>t[n(389)]&&i+r<=s[n(389)]?t[n(389)]-e:i+r>s[n(389)]&&e+r<=t[n(389)]?s.length-i:e+r<=t.length&&i+r<=s[n(389)]?r:s[n(389)]<t[n(389)]?s[n(389)]-i:t[n(389)]-i;for(var a=0;a<o;a++)s[a+i]=t[a+e]}function pf(t,e){var s=mf();return(pf=function(t,e){return s[t-=368]})(t,e)}function ff(t){return new Array(t>>24&255,t>>16&255,t>>8&255,255&t)}function mf(){var t=["10853604XfgYje","sm4 key is error!","1074072cOtJTt","125GSLjsU","15880XjwBMj","data is error!","length","set","iv is error!","7271AqXtop","12718kEpPkW","2506494Hbgdkj","2380104TNorZH","log","includes","353945dGNhgQ","6GbVtqH","slice","ceil","min","49ozBqQA","byteLength"];return(mf=function(){return t})()}function gf(t,e){var s=pf;return e+3<t[s(389)]?t[e]<<24|t[e+1]<<16|t[e+2]<<8|t[e+3]:e+2<t[s(389)]?t[e+1]<<16|t[e+2]<<8|t[e+3]:e+1<t[s(389)]?t[e]<<8|t[e+1]:t[e]}function yf(t){var e=new Array(36),s=function(t){for(var e=pf,s=Math[e(379)](t[e(389)]/4),i=new Array(s),r=0;r<t[e(389)];r++)t[r]=255&t[r];for(r=0;r<i[e(389)];r++)i[r]=gf(t,4*r);return i}(t);e[0]=s[0]^cf[0],e[1]=s[1]^cf[1],e[2]=s[2]^cf[2],e[3]=s[3]^cf[3];for(var i=new Array(32),r=0;r<32;r++)e[r+4]=e[r]^Af(e[r+1]^e[r+2]^e[r+3]^df[r]),i[r]=e[r+4];return i}function Af(t){var e=new Array(4),s=ff(t);e[0]=lf[255&s[0]],e[1]=lf[255&s[1]],e[2]=lf[255&s[2]],e[3]=lf[255&s[3]];var i=gf(e,0);return i^(i<<13|i>>>19)^(i<<23|i>>>9)}function bf(t,e){var s=new Array(36);s[0]=gf(e,0),s[1]=gf(e,4),s[2]=gf(e,8),s[3]=gf(e,12);for(var i=0;i<32;i++)s[i+4]=s[i]^vf(s[i+1]^s[i+2]^s[i+3]^t[i]);var r=new Array(4);for(i=35;i>=32;i--)r[35-i]=s[i];return function(t){for(var e=pf,s=new Array(4*t[e(389)]),i=0;i<t[e(389)];i++)uf(ff(t[i]),0,s,4*i,4);return s}(r)}function vf(t){var e=ff(t),s=new Array(4);s[0]=lf[255&e[0]],s[1]=lf[255&e[1]],s[2]=lf[255&e[2]],s[3]=lf[255&e[3]];var i=gf(s,0);return i^(i<<2|i>>>30)^(i<<10|i>>>22)^(i<<18|i>>>14)^(i<<24|i>>>8)}function Sf(t,e,s){var i=pf;if(null==t||null==t||t[i(389)]%16!=0)return console[i(374)](i(384)),null;if(null==s||null==s||s.length<=0)return console[i(374)]("cipher is error!"),null;if(null==e||null==e||e[i(389)]%16!=0)return console.log(i(369)),null;for(var r=yf(t),n=Math.ceil(s.length/16),o=new Array(s[i(389)]),a=e.slice(),h=0;h<n;h++){a=bf(r,a);var l=new Array(16),c=16*h,d=Math.min(c+16,s[i(389)]);uf(s,c,l,0,d-c);for(var u=0;u<d-c;u++)o[c+u]=l[u]^a[u]}return o}const Ef=wf;function wf(t,e){const s=Tf();return(wf=function(t,e){return s[t-=316]})(t,e)}function Tf(){const t=["handlePlaybackRateChange"," and new delay is "," and\n bufferList is ",",local diff is ","preTimestampDuration","accelerate","bufferList",", ts List length is ","shift",", _opt.networkDelay is ","isWasmMp4","getDelay() and preDelayTimestamp is ","isAV1 is true, not support and can contact author wx:bosswancheng","getDelayNotUpdateDelay() and preDelayTimestamp is ","player","hls","demux() isVideoSequenceHeader(enhancedH265) is true and nalUnitSize is ","894554HksshP","isCryptoAudio","encTypeCode",", need clear is ","initPlaybackCacheLoop","ms and diffFps is ","playType","...","getVideoInfo","slice","ms and return -1","video","playbackStreamFps","dts","1ftWQgN","geVodLoadedTime","resetAllDelay","hasIframeInBufferList","isPlayVod","delayFrameAccelerateDecodeMaxNum","preLoopTimestamp","playbackPause",", preTimestamp is ","samples","historyIntervalDiffTimeList","isStreamTsMoreThanLocal","52yGOruS","stopId","getStreamType","cryptoIV","isXorCrypto opt.xorCryptoKey is null","pushBuffer() video\n ts is ","map","cts","byteLength","_postMessageToLoopWorker","calcPlaybackStreamFps","setInterval()","pushLatestDelay","_isEnhancedH265Header","cryptoKey","prevPayloadBufferSize"," and bufferStartDts is ","now","ceil","listenPlaybackEvents"," > maxDelayTs ","preDelayTimestamp","_tempSampleTsList","AAC","playVod","useSIMD"," > ","updateHistoryIntervalDiffTimeList","isRateMoreThanMaxRate","getLastBufferVideoTimestamp","addAudio","getVideoBufferLength","recording","_off",",\n delay is ","pushLatestDelay is ","isFFmpegSIMD","_calcDecodeFps() video fps is ","some","_isUseWorker","802188XEqkuj","delay is more than networkDelay and now dts ","prevPlaybackCacheLoopTimestamp","playbackRateChange","length",", and ts list is "," less than (or equal) preTs is ","delay is -1 and ts is ",", and set streamFps is 25","getMaxDelayTs","calcIframeIntervalTimestamp","_doDecode",", clear and use base fps update ","dropBuffer$2() isAllIframeInBufferList() is true, and index is ","calcPlaybackStreamFps() video fps is ","stringify","decodeAudio","destroy","off","isEmitSEI","\n and resetAllDelay()","dropBuffer$2() iFrameIndex is "," and prevPayloadBufferSize is ","concat","firstTimestamp"," and nalUnitSize is ","visibility","getNotDroppingDelayTs","old dts ","getAudioBufferLength","pushBuffer() audio ts is ","join","isPlayVodUseMSE","suffixSei",",and old bufferList length is ","oldDts","dts is ","isXorCrypto","pushBuffer() video ts is "," ,and new bufferList length is ","PACKET_TYPE_FRAMESX","h265",", and waiting calc","_reset","_doDecodeByPs","isSm4Crypto opt.sm4CryptoKey is null","startPlaybackLoopInterval","videoBuffer","close","initInterval","getInputByteLength","getAudioBufferListLength","debugLog","handlePlaybackNextFrame","isSm4Crypto","_interval","decoderCheckFirstIFrame","isPlayer","interval","isIFrame","isRecordTypeFlv","bufferStartDts","_doDecodeByFmp4","isM7sCrypto cryptoKey.length is ",", bufferList is ","recorder","worker"," null","preIframeTs","debugWarn","filter","type","_off()"," so decode all frame previous","_loop data isIFrame is true and delay is ","pts","bufferStartLocalTs"," and dropBuffer$2()","bind"," pushBuffer audio ts is ","correctSamplePts","getVideoBufferListLength","isWCSDecodeAudio","PACKET_TYPE_SEQ_START"," > timestamp is "," or cryptoIV.length is ",", delay is ","sm4CryptoKey","cryptoPayload","pushBuffer","_opt","updateBaseFps","_calcDecodeFps() _tempSampleTsList is more than ",", old base fps is ","addVideoSequenceHeader","isInPlayNextFrame",", isAacCodecPacket is true",",and ts list is ","isDropping","useMSE","_loop isPushDropping is true and bufferList length is ","_loop","videoInfo.encTypeCode is ","encType","calcPlaybackStreamFps, bufferListLength is ","getDelayNotUpdateDelay","audio",", and intervalDuration is ","_isDestroyed","dropping","intervalUseWorker","bound","useWasm","loop() bufferList is empty and reset delay to -1","forEach","isPlayback","emit","153bhIlyV","cryptoPayloadAudio","isUseHls265","isDemuxDecodeFirstIIframeInit","addVideo","playbackCacheLoop visibility is ","isPlaybackCacheBeforeDecodeForFpsRender","isStreamTypeNotWorker","isDestroyedOrClosed"," -> new dts ","addAACSequenceHeader"," and tempDelay is ","resetDelay","playbackStreamVideoFps","size","isRateLessThanOne","playbackNextIFrame"," < 15,maybe play slowly","PACKET_TYPE_FRAMES","calcNetworkDelay dts is ","isHistoryIntervalDiffTimeAllLarge","set","76617kSKQBi","2365937skEKGk","reset","pushBuffer() video and isIFrame is ","playbackNextFrame"," and _opt.checkFirstIFrame is ","indexOf","_calcDecodeFps() streamVideoFps is null and sample list length is ","_playbackCacheLoop","startTimestamp","updateVideoInfo","useWCS, page visibility is false and\n history interval diff is ","decoderWorker","updateNalUnitSize","_startInterval() decimal playRate is ","TAG_NAME",",\n diff is ",", data.type is ",",ts List length is ","_decodeNext","FT_KEY","handlePlaybackPause","clearBuffer,buffer length is ","decodeVideo",", and bufferList length is ","push"," and has iFrame,buffer length is ","isPushDropping","2113260INIOAZ","getDelayFrameAccelerateDecodeMaxNum","prefixSei","getBufferListLength","_doDecodeByTs",", playbackStreamFps is ","prevEmitNetworkDelayTimestamp","getBufferListVideoTsList","hasAudio","loop demux diff time is ","isM7sCrypto"," ,delay is ","stop","useOffscreen","intervalPlaybackLoopWorker","demux() isVideoSequenceHeader is true and isHevc is ","_decodeEnhancedH265Video","useWCS","findIndex","updateStats","getIsStreamTsMoreThanLocal","getPlaybackRate",", vs start is ","getDelay","getPushLatestDelay","networkDelay","doPlaybackCacheLoop"," < 15, maybe play slowly","correctSamplePts dts and list is ","getVideoBufferDuration","handleRecording","_basefps","demux() isEnhancedH265Header is true and packetEx is ","playbackStreamAudioFps","preTimestamp","_loop delay is ","videoBufferDelay","isRecordTypeMp4","initInterval() and is worker stream so return","isPlaybackOnlyDecodeIFrame","findSei","isPlaybackPauseNotClearCacheAndCacheBeforeDecodeAndUseFpsRender","setStreamFps","emitVideoSei"," pushBuffer video ts is ","CommonDemux","payload","delay","intervalPlayerLoopWorker","352990TnuoAA","isPlayBackPlayRateLessThanOne","_doDecoderDecode","initPlaybackCacheLoop() and fragDuration is ","calcDelayFrameAccelerateDecodeMaxNum","_doDecodeByHls","debugError","ms and fragDuration is ","handleAddNaluTrack","_doDecodeByHls() player is destroyed or closed","videoIframeIntervalTs"," and\n ts is ","delayFrameChasingPolicy","_doDecodeByDHav",", isVideoSequenceHeader is true","initPlaybackCacheLoop and _opt.intervalUseWorker is true and use IntervalWorker","clearStopInterval","initInterval and _opt.intervalUseWorker is true and use IntervalWorker","isPlayUseMSE"," more than ","initInterval() and is hls and support hls265 so return","dropBuffer$2","nalUnitSize","fromCharCode","ms and return ","2349320uADjHR","handlePlaybackNextIFrame"];return(Tf=function(){return t})()}!function(t){const e=wf,s=t();for(;;)try{if(240185===parseInt(e(523))/1*(-parseInt(e(509))/2)+-parseInt(e(388))/3*(-parseInt(e(535))/4)+-parseInt(e(416))/5+parseInt(e(575))/6+parseInt(e(389))/7+-parseInt(e(490))/8+parseInt(e(366))/9*(parseInt(e(465))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Tf);class If extends h{constructor(t){const e=wf;super(),this[e(403)]=e(461),this[e(506)]=t,this._reset(),this[e(536)]=null,this.intervalPlaybackLoopWorker=null,this[e(464)]=null,this[e(360)]={_interval:this._interval[e(327)](this),_playbackCacheLoop:this._playbackCacheLoop.bind(this),handlePlaybackPause:this.handlePlaybackPause[e(327)](this),handlePlaybackRateChange:this[e(492)][e(327)](this),handlePlaybackNextFrame:this[e(628)][e(327)](this),handlePlaybackNextIFrame:this[e(491)][e(327)](this),doPlaybackCacheLoop:this[e(442)][e(327)](this)},this.initInterval(),this[e(554)](),this[e(357)]=!1}[Ef(592)](){const t=Ef;this[t(357)]=!0,this[t(568)](),this[t(481)](),this.intervalPlaybackLoopWorker&&(this[t(430)][t(592)](),this[t(430)]=null),this.intervalPlayerLoopWorker&&(this[t(464)].destroy(),this[t(464)]=null),this[t(618)](),this.off(),this.bound=null}[Ef(568)](){const t=Ef;this[t(506)].isPlaybackPauseNotClearCacheAndCacheBeforeDecodeAndUseFpsRender()&&this[t(506)].isStreamTypeNotWorker()&&(this[t(506)][t(627)](this[t(403)],t(321)),this[t(506)][t(593)](q[t(530)],this.bound[t(409)]),this[t(506)][t(593)](q[t(578)],this[t(360)][t(492)]),this[t(506)].off(q[t(392)],this[t(360)][t(628)]),this.player[t(593)](q[t(382)],this[t(360)][t(491)]))}[Ef(618)](){const t=Ef;this.bufferList=[],this[t(447)]=25,this[t(533)]=[],this[t(557)]=[],this[t(521)]=null,this[t(449)]=null,this[t(379)]=null,this[t(599)]=null,this.startTimestamp=null,this[t(636)]=null,this[t(325)]=null,this[t(556)]=null,this.preLoopTimestamp=null,this[t(317)]=null,this.preTimestamp=null,this[t(496)]=0,this.prevPayloadBufferSize=0,this.prevEmitNetworkDelayTimestamp=null,this.prevPlaybackCacheLoopTimestamp=null,this[t(534)]=!1,this[t(463)]=-1,this[t(547)]=-1,this[t(358)]=!1,this.isPushDropping=!1,this[t(487)]=null,this[t(469)]=null}[Ef(554)](){const t=Ef;this.player[t(457)]()&&this.player[t(373)]()&&(this[t(506)][t(627)](this[t(403)],t(554)),this[t(506)].on(q[t(530)],this[t(360)][t(409)]),this[t(506)].on(q[t(578)],this[t(360)][t(492)]),this.player.on(q[t(392)],this[t(360)].handlePlaybackNextFrame),this[t(506)].on(q[t(382)],this[t(360)][t(491)]))}[Ef(347)](){const t=Ef;return this[t(358)]||this[t(415)]}[Ef(439)](t,e){const s=Ef;if(!t||!this.player[s(369)]())return-1;if(e===W[s(355)])return this[s(463)];if(this[s(556)]&&this[s(556)]>t)return this[s(556)]-t>1e3&&this.player[s(318)](this[s(403)],s(503)+this[s(556)]+s(333)+t+s(484)+(this[s(556)]-t)+s(489)+this.delay),this[s(556)]=t,this[s(463)];if(this[s(599)]){if(t){const e=Date[s(552)]()-this[s(397)],i=t-this[s(599)];e>=i?(this[s(534)]=!1,this.delay=e-i):(this[s(534)]=!0,this[s(463)]=i-e)}}else this[s(599)]=t,this.startTimestamp=Date[s(552)](),this[s(463)]=-1;return this[s(556)]=t,this[s(463)]}[Ef(354)](t,e){const s=Ef;if(!t||!this[s(506)][s(369)]())return-1;if(e===W[s(355)])return this.pushLatestDelay;if(this[s(556)]&&this[s(556)]-t>1e3)return this[s(506)][s(318)](this.TAG_NAME,s(505)+this[s(556)]+s(333)+t+s(484)+(this[s(556)]-t)+s(519)),-1;if(this.firstTimestamp){let e=-1;if(t){const i=Date[s(552)]()-this[s(397)],r=t-this[s(599)];e=i>=r?i-r:r-i}return e}return-1}[Ef(378)](){const t=Ef;this.firstTimestamp=null,this[t(397)]=null,this[t(463)]=-1,this[t(358)]=!1}[Ef(525)](){this[Ef(378)](),this.preDelayTimestamp=null}[Ef(624)](){const t=Ef;this[t(506)].isPlayVodMp4()?this.player[t(627)](this[t(403)],"initInterval() and is vod mp4 so return"):this[t(506)][t(368)]()?this.player[t(627)](this[t(403)],t(485)):-1===this[t(506)][t(537)]()[t(394)](u[t(641)])?this[t(506)][t(372)]()?this.player.debugLog(this[t(403)],"initInterval() and playback and playbackIsCacheBeforeDecodeForFpsRender is true so return"):(this[t(506)][t(627)](this[t(403)],t(546)),this._loop(),this[t(506)][t(339)][t(359)]?(!this[t(464)]&&(this[t(506)][t(627)](this[t(403)],t(482)),this[t(464)]=new fo),this[t(464)][t(633)](this[t(360)][t(630)],20)):this[t(536)]=setInterval(this.bound._interval,20)):this[t(506)].debugLog(this[t(403)],t(454))}[Ef(630)](){const t=Ef;if(this[t(357)])return;let e=Date.now();!this[t(529)]&&(this.preLoopTimestamp=e);const s=e-this[t(529)];this[t(562)](s),s>100&&this.player[t(318)](this[t(403)],t(425)+s),this[t(350)](),this[t(529)]=e}[Ef(481)](){const t=Ef;this[t(536)]&&(clearInterval(this.stopId),this[t(536)]=null),this[t(430)]&&this.intervalPlaybackLoopWorker[t(428)](),this.intervalPlayerLoopWorker&&this[t(464)][t(428)](),this[t(577)]=null}startPlaybackLoopInterval(){this[Ef(513)]()}[Ef(562)](t){const e=Ef;this.historyIntervalDiffTimeList.length>5&&this[e(533)][e(500)](),this.historyIntervalDiffTimeList[e(413)](t)}isHistoryIntervalDiffTimeAllLarge(){const t=Ef;if(this.historyIntervalDiffTimeList[t(579)]<5)return!1;for(let e=0;e<this[t(533)][t(579)];e++)if(this[t(533)][e]<900)return!1;return!0}[Ef(513)](){const t=Ef;this.clearStopInterval();const e=Math[t(553)](1e3/this[t(521)]);if(this[t(506)][t(437)]()<1){this.doPlaybackCacheLoop();const s=this[t(506)][t(437)](),i=Math[t(553)](e/s);return this[t(506)].debugLog(this[t(403)],t(402)+s+t(356)+i+"ms"),void(this[t(506)][t(339)].intervalUseWorker?(!this[t(430)]&&(this[t(506)][t(627)](this[t(403)],t(480)),this[t(430)]=new fo),this[t(430)][t(633)](this[t(360)].doPlaybackCacheLoop,i)):this[t(536)]=setInterval(this[t(360)].doPlaybackCacheLoop,i))}for(let e=0;e<this[t(506)][t(437)]();e++)this[t(442)]();this[t(506)][t(627)](this.TAG_NAME,t(468)+e+t(421)+this.playbackStreamFps),this[t(506)][t(339)].intervalUseWorker?(!this[t(430)]&&(this.player.debugLog(this[t(403)],t(480)),this[t(430)]=new fo),this[t(430)].interval(this[t(360)][t(396)],e)):this[t(536)]=setInterval(this.bound._playbackCacheLoop,e)}_playbackCacheLoop(){const t=Ef,e=os();!this[t(577)]&&(this.prevPlaybackCacheLoopTimestamp=e);const s=Math[t(553)](1e3/this[t(521)]);for(let e=0;e<this[t(506)].getPlaybackRate();e++)this.doPlaybackCacheLoop();let i=e-this[t(577)],r=parseInt(i/s);if(r>1&&this.bufferList[t(579)]>0){this[t(506)].debugWarn(this[t(403)],t(371)+this.player[t(601)]+" and sync frame duration is "+i+t(472)+s+t(514)+r+t(412)+this[t(498)][t(579)]);for(let e=0;e<r;e++)for(let e=0;e<this[t(506)][t(437)]();e++)this[t(442)]()}this.prevPlaybackCacheLoopTimestamp=e}[Ef(442)](){const t=Ef;let e=null;if(this[t(498)].length)if(e=this[t(498)][t(500)](),e[t(320)]===W[t(520)]){this.player[t(455)]()?e[t(634)]&&this._doDecoderDecode(e):this[t(467)](e);let s=this[t(498)][0];for(;s&&s[t(320)]===W[t(355)];)this[t(498)][t(500)](),this[t(506)][t(455)]()||this[t(506)][t(344)]||this[t(506)][t(466)]()||this._doDecoderDecode(s),s=this[t(498)][0]}else if(e[t(320)]===W[t(355)]){this[t(506)][t(455)]()||this.player[t(344)]||this.player[t(466)]()||this[t(467)](e);let s=this.bufferList[0];for(;s;){if(e=this[t(498)][t(500)](),e[t(320)]===W[t(520)]){this[t(506)].isPlaybackOnlyDecodeIFrame()?e[t(634)]&&this[t(467)](e):this._doDecoderDecode(e),s=null;break}e[t(320)]===W[t(355)]&&(this[t(506)][t(455)]()||this[t(506)].isInPlayNextFrame||this[t(506)].isPlayBackPlayRateLessThanOne()||this[t(467)](e),s=this.bufferList[0])}}}_loop(){const t=Ef;let e;const s=this[t(506)][t(339)].videoBuffer,i=this[t(584)](),r=this[t(506)][t(339)].playType===p[t(506)];if(this[t(498)][t(579)]){if(this[t(415)])return void this[t(506)].debugWarn(this[t(403)],t(349)+this[t(498)][t(579)]);if(this.dropping){for(e=this[t(498)][t(500)](),this[t(506)].debugWarn(this[t(403)],"_loop is dropping and data.ts is "+e.ts+t(405)+e[t(320)]+", data.isIFrame is "+e[t(634)]+t(335)+this[t(463)]+" ,buffer list is "+this[t(498)][t(579)]);!e.isIFrame&&this[t(498)][t(579)];)e=this[t(498)][t(500)]();const s=this[t(354)](e.ts,e[t(320)]);e[t(634)]&&s<=this[t(602)]()&&(this[t(506)][t(627)](this.TAG_NAME,t(323)+this[t(463)]),this[t(358)]=!1,this[t(467)](e),this[t(407)](e))}else if(this[t(506)][t(364)]()||this[t(506)][t(483)]()||0===s||this.player[t(527)]())for(;this[t(498)][t(579)];)e=this[t(498)][t(500)](),this[t(467)](e);else if(e=this[t(498)][0],-1===this.getDelay(e.ts,e[t(320)]))this[t(506)].debugLog(this[t(403)],t(582)+e.ts+" type is "+e[t(320)]+" and bufferList length is "+this.bufferList[t(579)]),this[t(498)][t(500)](),this[t(467)](e),this[t(407)](e);else if(this[t(463)]>i&&r)this[t(526)]()?(this.player.debugWarn(this[t(403)],t(451)+this.delay+t(555)+i+t(414)+this[t(498)][t(579)]+" and set dropping is true"),this[t(525)](),this[t(358)]=!0,this[t(506)][t(435)]({isDropping:!0})):(this.bufferList[t(500)](),this._doDecoderDecode(e),this[t(407)](e));else for(;this[t(498)][t(579)]&&(e=this[t(498)][0],this[t(439)](e.ts,e.type)>s);)this[t(498)][t(500)](),this[t(467)](e),e[t(320)]===W[t(520)]&&this[t(407)](e)}else-1!==this[t(463)]&&this[t(506)].debugLog(this[t(403)],t(362)),this[t(525)]()}[Ef(586)](t,e,s,i,r=0){const n=Ef,o=this.player;let a={ts:s,cts:r,type:e,isIFrame:!1};this[n(506)][n(632)]()?(e===W.video&&o._opt[n(515)]===p[n(506)]&&this.calcNetworkDelay(s),o[n(339)].useWCS&&!o[n(339)][n(429)]?(e===W[n(520)]&&(a[n(634)]=i),this.pushBuffer(t,a)):(o[n(339)][n(348)],e===W[n(520)]&&(a[n(634)]=i),this.pushBuffer(t,a))):this[n(506)][n(364)]()?(e===W[n(520)]&&(a[n(634)]=i),this[n(506)].isPlaybackCacheBeforeDecodeForFpsRender()?this[n(338)](t,a):this[n(506)].isPlaybackOnlyDecodeIFrame()?e===W[n(520)]&&i&&this[n(338)](t,a):1===this.player[n(437)]()?this.pushBuffer(t,a):this.pushBuffer(t,a,!1)):this[n(506)].isPlayVod()&&(e===W[n(520)]&&(a[n(634)]=i),this[n(338)](t,a))}_doDecodeByHls(t,e,s,i,r=0,n=Ef(507)){const o=Ef;if(this[o(357)])return;if(this[o(506)][o(374)]())return void this.player[o(627)](this[o(403)],o(474));let a=!1;if(e===W[o(355)]&&Re(t)&&(this[o(506)][o(627)](this[o(403)],n+o(328)+s+o(345)),a=!0,this.player[o(635)]())){const e=new Uint8Array(t);this[o(506)][o(640)][o(376)](e,s)}let h=!1;if(e===W[o(520)]&&i&&Ri(t)&&(this[o(506)][o(627)](this[o(403)],n+o(460)+s+o(479)),h=!0,this[o(506)][o(635)]())){const e=new Uint8Array(t);this[o(506)][o(640)][o(343)](e,s)}this[o(506)][o(567)]&&xi(h)&&xi(a)&&this.handleRecording(t,e,s,i,r),this[o(506)][o(339)][o(594)]&&e===W.video&&this[o(456)](t,s),e===W[o(520)]?this[o(506)][o(527)]()&&xi(this[o(506)][o(607)]())&&this[o(506)][o(559)]&&this[o(506)][o(559)][o(563)]()?i&&this[o(467)]({ts:s,cts:r,payload:t,type:W[o(520)],isIFrame:i}):this[o(467)]({ts:s,cts:r,payload:t,type:W.video,isIFrame:i}):e===W.audio&&(this.player[o(527)]()&&xi(this.player[o(607)]())&&this.player[o(559)]&&(this.player[o(559)][o(563)]()||this[o(506)][o(344)]||this.player[o(559)][o(381)]())||this[o(467)]({ts:s,payload:t,type:W[o(355)]}))}[Ef(637)](t,e,s,i,r=0){this[Ef(586)](t,e,s,i,r)}[Ef(420)](t,e,s,i,r=0){this[Ef(586)](t,e,s,i,r)}[Ef(619)](t,e,s,i,r=0){this._doDecode(t,e,s,i,r)}[Ef(478)](t,e,s,i,r=0){this[Ef(586)](t,e,s,i,r)}_doDecodeByMp4(t,e,s,i,r=0){this[Ef(470)](t,e,s,i,r,"mp4")}[Ef(407)](t){const e=Ef;if(t.ts,0===this[e(498)].length)return;let s=this.bufferList[0];const i=t[e(320)]===W[e(520)]&&Ri(t[e(462)]);if(t[e(320)]===W[e(355)]&&s[e(320)]===W[e(520)]||i)return this[e(498)][e(500)](),void this._doDecoderDecode(s);if(t[e(320)]===W[e(520)])for(;s&&s[e(320)]===W[e(355)];)this[e(498)][e(500)](),this._doDecoderDecode(s),s=this[e(498)][0]}[Ef(467)](t){const e=Ef,s=this[e(506)],{webcodecsDecoder:i,mseDecoder:r}=s;this[e(506)][e(632)]()&&this.player.updateStats({buf:this[e(463)]}),t.type===W[e(355)]?s[e(339)][e(424)]&&(s.isMSEDecodeAudio()?r[e(591)](t[e(462)],t.ts):s[e(331)]()?i[e(591)](t[e(462)],t.ts):s[e(400)]&&s[e(400)][e(591)](t[e(462)],t.ts)):t[e(320)]===W[e(520)]&&(s[e(339)][e(433)]&&!s[e(339)][e(429)]?i[e(411)](t.payload,t.ts,t[e(634)],t[e(542)]):s[e(339)].useMSE?r[e(411)](t.payload,t.ts,t.isIFrame,t[e(542)]):s[e(400)]&&s[e(400)][e(411)](t.payload,t.ts,t.isIFrame))}pushBuffer(t,e,s=!0){const i=Ef;if(this[i(357)])return;const r=this.player[i(632)](),n=this[i(584)]();if(e[i(320)]===W[i(355)]&&Re(t)){if(this.player.debugLog(this[i(403)],i(605)+e.ts+", isAacCodecPacket is true"),this[i(506)][i(635)]()){const s=new Uint8Array(t);this[i(506)][i(640)][i(376)](s,e.ts)}this[i(467)]({ts:e.ts,payload:t,type:W[i(355)]})}else if(e[i(320)]===W[i(520)]&&e[i(634)]&&Ri(t)){if(this[i(506)][i(627)](this.TAG_NAME,i(613)+e.ts+i(479)),this[i(506)][i(635)]()){const s=new Uint8Array(t);this.player[i(640)].addVideoSequenceHeader(s,e.ts)}this._doDecoderDecode({ts:e.ts,payload:t,type:W[i(520)],isIFrame:e.isIFrame,cts:e.cts})}else{if(this[i(506)][i(567)]&&this[i(446)](t,e[i(320)],e.ts,e[i(634)],e[i(542)]),this[i(506)]._opt[i(594)]&&e[i(320)]===W[i(520)]&&this.findSei(t,e.ts),r&&(e[i(320)]===W[i(520)]&&(null!==this.preTimestamp&&this[i(450)]>=e.ts&&(this[i(506)][i(318)](this.TAG_NAME,i(391)+e[i(634)]+i(476)+e.ts+i(581)+this[i(450)]+" and\n payloadBufferSize is "+t[i(543)]+i(597)+this[i(550)]),this[i(450)]-e.ts>C&&(this[i(506)][i(318)](this[i(403)],i(540)+e.ts+i(531)+this.preTimestamp+i(404)+(this.preTimestamp-e.ts)+i(484)+C+i(595)),this[i(525)]())),this[i(450)]>0&&(this[i(496)]=e.ts-this[i(450)]),this[i(550)]=t[i(543)],this[i(450)]=e.ts),this[i(506)][i(369)]())){let t=this[i(354)](e.ts,e[i(320)]);this[i(547)]=t,this[i(463)]>0&&t>n&&this[i(463)]<n&&this[i(526)]()&&!1===this[i(415)]&&(this[i(506)][i(318)](this[i(403)],i(570)+t+i(561)+n+i(639)+this[i(498)].length+i(335)+this[i(463)]+i(326)),this.dropBuffer$2()),this[i(386)]()&&xi(this[i(506)][i(601)])&&(this[i(506)]._opt[i(348)]?this.hasIframeInBufferList()&&!1===this[i(415)]&&(this[i(506)].debugWarn(this[i(403)],"useMSE, page visibility is false and\n history interval diff is "+this[i(533)][i(606)](",")+i(494)+this[i(498)][i(579)]+i(569)+this[i(463)]+i(326)),this.dropBuffer$2()):this[i(526)]()&&!1===this[i(415)]&&(this[i(506)][i(318)](this[i(403)],i(399)+this[i(533)][i(606)](",")+" and\n bufferList is "+this[i(498)][i(579)]+i(569)+this[i(463)]+" and dropBuffer$2()"),this[i(486)]()))}s?e[i(320)]===W[i(355)]?this[i(498)].push({ts:e.ts,payload:t,type:W[i(355)]}):e[i(320)]===W[i(520)]&&this[i(498)][i(413)]({ts:e.ts,cts:e[i(542)],payload:t,type:W.video,isIFrame:e[i(634)]}):e.type===W[i(520)]?this[i(467)]({ts:e.ts,cts:e[i(542)],payload:t,type:W[i(520)],isIFrame:e.isIFrame}):e[i(320)]===W[i(355)]&&this._doDecoderDecode({ts:e.ts,payload:t,type:W[i(355)]}),this.calcPlaybackStreamFps()}}[Ef(545)](){const t=Ef;if(this[t(506)][t(372)]()&&Vs(this[t(379)])){let e=wi(this[t(498)],W[t(520)]);if(e>0){const s=this.getBufferListVideoTsList(this[t(498)]);this[t(506)][t(627)](this[t(403)],t(589)+e+", ts List length is "+s[t(579)]+", and ts list is "+JSON.stringify(s)),e<15&&this.player[t(318)](this[t(403)],"calcPlaybackStreamFps, calc streamVideoFps is "+e+t(443)),this[t(379)]=e,this.player.video&&this[t(506)].video[t(458)](this[t(379)]),this[t(521)]=e,this[t(513)]()}else{const e=100;if(this[t(498)][t(579)]>=e){const s=this[t(423)](this.bufferList);this[t(506)][t(318)](this[t(403)],t(353)+this[t(498)].length+t(484)+e+",ts List length is "+s[t(579)]+t(346)+JSON[t(590)](s)+t(583)),this[t(379)]=25,this[t(506)][t(520)]&&this[t(506)][t(520)][t(458)](this[t(379)]),this.playbackStreamFps=this[t(379)],this[t(513)]()}}}}[Ef(486)](){const t=Ef;if(this[t(498)][t(579)]>0){let e=this[t(498)][t(434)](e=>{const s=t;return Pi(e[s(634)])&&e[s(320)]===W[s(520)]});if(this.isAllIframeInBufferList())for(let s=0;s<this[t(498)][t(579)];s++){const i=this[t(498)][s],r=this[t(354)](i.ts,i[t(320)]);if(r>=this.getNotDroppingDelayTs()){this.player.debugLog(this[t(403)],t(588)+s+t(377)+r+" and notDroppingDelayTs is "+this[t(602)]()),e=s;break}}if(e>=0){this[t(415)]=!0,this.player[t(435)]({isDropping:!0});const s=this[t(498)][t(579)];if(this[t(506)][t(339)][t(477)]===w[t(497)]&&e<=this[t(417)]()){this[t(506)][t(627)](this[t(403)],"dropBuffer$2() _opt.delayFrameChasingPolicy is accelerate and iframe index "+e+" less than "+this[t(417)]()+t(322));this[t(498)].slice(0,e-1)[t(363)](e=>{this[t(467)](e)})}this[t(498)]=this[t(498)][t(518)](e);const i=this[t(498)][t(500)]();this[t(525)](),this[t(439)](i.ts,i[t(320)]),this[t(467)](i),this[t(415)]=!1,this[t(506)][t(627)](this[t(403)],t(596)+e+t(609)+s+t(614)+this[t(498)][t(579)]+t(493)+this.delay+" ")}else this.isPushDropping=!1}0===this[t(498)].length&&(this[t(415)]=!1)}clearBuffer(t=!1){const e=Ef;this[e(506)][e(627)](this[e(403)],e(410)+this[e(498)].length+e(512)+t+e(393)+this[e(506)][e(339)].checkFirstIFrame),t&&(this[e(498)]=[]),this.player[e(632)]()&&(this.resetAllDelay(),Pi(this.player[e(339)].checkFirstIFrame)&&(this[e(358)]=!0,this[e(506)][e(435)]({isDropping:!0}))),this[e(506)][e(631)]()}calcNetworkDelay(t){const e=Ef;if(!(this[e(506)][e(369)]()&&t>0))return;null===this[e(636)]?(this[e(636)]=t,this[e(325)]=os()):t<this[e(636)]&&(this.player[e(318)](this[e(403)],e(385)+t+e(551)+this[e(636)]),this[e(636)]=t,this[e(325)]=os());let s=t-this[e(636)],i=os()-this[e(325)],r=i>s?i-s:0;if(r>this.player._opt[e(441)]&&this.player._opt[e(515)]===p[e(506)]){let n=!1;const o=os();null===this[e(422)]&&(n=!0,this[e(422)]=o),(o-this[e(422)]>=1e3||n)&&(this[e(506)][e(318)](this[e(403)],e(576)+t+",start dts is "+this[e(636)]+e(438)+s+e(495)+i+e(427)+r+e(501)+this.player._opt[e(441)]),this[e(506)][e(365)](q.networkDelayTimeout,r),this[e(422)]=o)}this.player[e(435)]({netBuf:r})}calcIframeIntervalTimestamp(t){const e=Ef;if(null===this[e(317)])this[e(317)]=t;else if(this.preIframeTs<t){const s=t-this[e(317)];this.player&&(this[e(506)][e(475)]=s),this[e(317)]=t}}calcBufferFps(t){}[Ef(602)](){const t=Ef;return this[t(506)]._opt[t(622)]+this[t(506)][t(339)][t(452)]/2}getMaxDelayTs(){const t=Ef;return this.player[t(339)][t(622)]+this.player[t(339)][t(452)]}[Ef(440)](){return this.pushLatestDelay}[Ef(566)](){const t=Ef;let e=0;return this[t(498)][t(363)](s=>{const i=t;s[i(320)]===W[i(520)]&&(e+=1)}),e}[Ef(564)](){const t=Ef;let e=0;if(0===this[t(498)].length)return e;const s=this[t(498)][t(579)]-1;for(let i=s;i>=0;i--){const s=this[t(498)][i];if(s[t(320)]===W.video){e=s.ts;break}}const i=this[t(498)][s];return i.ts-e<1e3&&(e=i.ts),e}[Ef(604)](){const t=Ef;let e=0;return this[t(498)].forEach(s=>{s[t(320)]===W.audio&&(e+=1)}),e}[Ef(526)](){const t=Ef;return this[t(498)][t(573)](e=>{const s=t;return e[s(320)]===W[s(520)]&&e[s(634)]})}isAllIframeInBufferList(){const t=Ef,e=this[t(566)]();let s=0;return this[t(498)][t(363)](e=>{const i=t;e[i(320)]===W.video&&e[i(634)]&&(s+=1)}),e===s}[Ef(625)](){return 0}[Ef(436)](){return this.isStreamTsMoreThanLocal}[Ef(623)](){}[Ef(390)](){}[Ef(456)](t,e,s=!1){const i=Ef;let r=4;Ws(this.nalUnitSize)&&(r=this[i(487)]);const n=Ye(t[i(518)](5),r);if(xi(s)){const t=this[i(506)][i(517)]();t&&t[i(352)]&&(s=t[i(352)]===st.h265)}n[i(363)](t=>{const r=i,n=s?t[0]>>>1&63:31&t[0],o=s&&(n===at[r(608)]||n===at[r(418)]),a=xi(s)&&n===ot.kSliceSEI;if(o||a){const i=$e(Je(t),s);this.player[r(459)]({ts:e,data:i[r(462)],originData:t,type:i.type,uuid:i.uuid,size:i[r(380)]})}})}[Ef(446)](t,e,s,i,r){const n=Ef;if(this[n(506)][n(635)]()){const i=new Uint8Array(t);e===W[n(520)]?this[n(506)][n(640)][n(370)](i,s):e===W[n(355)]&&this[n(506)][n(640)][n(565)](i,s)}else if(this.player[n(453)]()){const o=new Uint8Array(t);if(this[n(506)][n(640)][n(502)]()){if(e===W.video)this[n(506)][n(640)][n(473)](o[n(518)](5),i,s,r);else if(e===W[n(355)]){const e=new Uint8Array(t);this[n(506)].recorder.handleAddAudioTrack(xe(e)?e[n(518)](2):e[n(518)](1),s)}}else e===W.video&&this[n(506)][n(640)][n(473)](o[n(518)](5),i,s,r)}}[Ef(401)](t){const e=Ef,s=15&t[0];this[e(506)].video[e(398)]({encTypeCode:s});const i=s===et.h265;this[e(487)]=function(t,e){const s=Xe;let i=null;return e?t[s(261)]>=28&&(i=1+(3&t[26])):t[s(261)]>=12&&(i=1+(3&t[9])),i}(t,i),this.player.debugLog(this.TAG_NAME,e(431)+i+e(600)+this[e(487)])}cryptoPayload(t,e){const s=Ef;let i=this[s(506)],r=t;if(i._opt[s(426)])if(i._opt[s(549)]&&i[s(339)][s(549)][s(543)]>0&&i[s(339)][s(538)]&&i._opt.cryptoIV.byteLength>0){const e=this[s(506)][s(520)][s(517)]();e[s(511)]?r=function(t,e,s,i=!1){const r=Np;e=new Uint8Array(e),s=new Uint8Array(s);const n=t.byteLength;let o=5;for(;o<n;){let a=Vp(t[r(254)](o,o+4));if(a>n)break;let h=t[o+4],l=!1;if(i?(h=h>>>1&63,l=[0,1,2,3,4,5,6,7,8,9,16,17,18,19,20,21][r(262)](h)):(h&=31,l=1===h||5===h),l){const i=t[r(254)](o+4+2,o+4+a);let n=new(Gd[r(259)][r(246)])(e,new(Gd[r(248)])(s));const h=n[r(263)](i);n=null,t[r(264)](h,o+4+2)}o=o+4+a}return t}(t,i[s(339)].cryptoKey,i[s(339)][s(538)],e[s(511)]===et[s(616)]):i[s(318)](this[s(403)],s(351)+e.encTypeCode)}else i[s(471)](this[s(403)],s(638)+(i[s(339)][s(549)]&&i[s(339)][s(549)][s(543)])+" or cryptoIV.length is "+(i[s(339)].cryptoIV&&i[s(339)][s(538)][s(543)])+" null");else if(i[s(339)][s(629)])if(i[s(339)].sm4CryptoKey){const e=this[s(506)][s(520)][s(517)]()[s(511)]===et[s(616)],n=this[s(506)]._opt.isSm4CryptoH265V2;r=i[s(339)][s(549)]&&i._opt.cryptoKey[s(543)]>0&&i[s(339)][s(538)]&&i[s(339)][s(538)].byteLength>0?function(t,e,s,i=!1,r=!1){var n=pf;e=new Uint8Array(e),s=new Uint8Array(s);const o=t[n(382)];let a=5;for(;a<o;){let h=hf(t.slice(a,a+4));if(h>o)break;let l=t[a+4],c=!1,d=2;if(i?(r&&(d=3),l=l>>>1&63,c=[0,1,2,3,4,5,6,7,8,9,16,17,18,19,20,21][n(375)](l)):(l&=31,c=1===l||5===l),c){const i=Sf(e,s,t[n(378)](a+4+d,a+4+h));t[n(368)](i,a+4+d)}a=a+4+h}return t}(t,i._opt.cryptoKey,i[s(339)][s(538)],e,n):function(t,e,s=!1,i=!1){const r=zp,n=t[r(261)];let o=new Uint8Array(t[r(247)](0,5)),a=5;for(;a<n;){const h=t[r(247)](a,a+4);let l=sf(h);if(l>n){const e=new Uint8Array(o.length+t[r(263)]-a);e.set(o,0),e[r(237)](t[r(247)](a),o[r(263)]),o=e;break}let c=t[a+4],d=!1,u=2;if(s?(i&&(u=3),c=c>>>1&63,d=[0,1,2,3,4,5,6,7,8,9,16,17,18,19,20,21][r(252)](c)):(c&=31,d=1===c||5===c),d){const s=ef(t[r(247)](a+4+u,a+4+l),e,0,{padding:r(241),output:r(266)});let i=s[s[r(263)]-1];if(i>0&&i<16){let t=!0;for(let e=1;e<=i;e++)if(s[s[r(263)]-e]!==i){t=!1;break}t&&s[r(250)](s[r(263)]-i,i)}const n=new Uint8Array(u);n[r(237)](t[r(247)](a+4,a+4+u),0);const h=ts(Vl(n,new Uint8Array(s))),c=new Uint8Array(o[r(263)]+h[r(263)]);c[r(237)](o,0),c[r(237)](h,o.length),o=c}else{const e=t.slice(a+4,a+4+l),s=new Uint8Array(o[r(263)]+4+e[r(263)]);s.set(o,0),s.set(h,o[r(263)]),s[r(237)](e,o[r(263)]+4),o=s}a=a+4+l}return o}(t,i._opt[s(336)],e,n)}else!i[s(339)][s(336)]&&i[s(471)](this[s(403)],s(620));else if(i[s(339)][s(612)])if(i[s(339)].cryptoKey&&i[s(339)].cryptoKey[s(543)]>0&&i[s(339)][s(538)]&&i[s(339)][s(538)][s(543)]>0){const e=this.player[s(520)][s(517)]();r=function(t,e,s,i=!1){const r=af,n=t.byteLength;let o=5;for(;o<n;){let a=nf(t[r(448)](o,o+4));if(a>n)break;let h=t[o+4],l=!1;if(i?(h=h>>>1&63,l=[0,1,2,3,4,5,6,7,8,9,16,17,18,19,20,21][r(441)](h)):(h&=31,l=1===h||5===h),l){const i=rf(t.slice(o+4,o+4+a),e,s);t[r(438)](i,o+4)}o=o+4+a}return t}(t,i[s(339)][s(549)],i[s(339)][s(538)],e[s(511)]===et[s(616)])}else i[s(471)](this[s(403)],s(539));return r}[Ef(367)](t){const e=Ef;let s=this.player;if(xi(s[e(339)][e(510)]))return t;let i=t;if(s._opt[e(426)])if(s[e(339)][e(549)]&&s[e(339)][e(549)][e(543)]>0&&s._opt[e(538)]&&s[e(339)][e(538)][e(543)]>0){t[0]>>4===it[e(558)]&&(i=function(t,e,s){const i=Np;if(t[i(261)]<=30)return t;const r=t.slice(32);let n=new(Gd[i(259)][i(246)])(e,new(Gd[i(248)])(s));const o=n[i(263)](r);return n=null,t[i(264)](o,32),t}(t,s._opt[e(549)],s[e(339)][e(538)]))}else s[e(471)](this[e(403)],e(638)+(s._opt[e(549)]&&s[e(339)][e(549)].byteLength)+e(334)+(s[e(339)][e(538)]&&s._opt.cryptoIV[e(543)])+e(316));else if(s._opt[e(612)])if(s[e(339)][e(549)]&&s._opt[e(549)][e(543)]>0&&s[e(339)][e(538)]&&s[e(339)].cryptoIV.byteLength>0){t[0]>>4===it[e(558)]&&(i=function(t,e,s){const i=af;if(t[i(446)]<=30)return t;const r=rf(t.slice(30),e,s);return t[i(438)](r,30),t}(t,s[e(339)][e(549)],s[e(339)][e(538)]))}else s.debugError(this[e(403)],"isXorCrypto cryptoKey.length is "+(s[e(339)][e(549)]&&s[e(339)][e(549)][e(543)])+e(334)+(s[e(339)][e(538)]&&s[e(339)].cryptoIV.byteLength)+e(316));return i}[Ef(432)](t,e){const s=Ef,i=t[0],r=48&i,n=15&i,o=t.slice(1,5),a=new ArrayBuffer(4),h=new Uint32Array(a),l="a"==String[s(488)](o[0]);if(n===zt[s(332)]){if(r===Ht[s(408)]){const e=t[s(518)](5);if(l)this[s(506)][s(471)](this[s(403)],"isAV1 is true, not support and can contact author wx:bosswancheng");else{const t=new Uint8Array(5+e.length);t.set([28,0,0,0,0],0),t[s(387)](e,5),this[s(401)](t),this.player.debugLog(this.TAG_NAME,s(508)+this[s(487)]),this._doDecode(t,W[s(520)],0,!0,0)}}}else if(n===zt[s(384)]){let i=t,n=0;const o=r===Ht.FT_KEY;if(o&&this[s(585)](e),l)this[s(506)][s(471)](this[s(403)],s(504));else{h[0]=t[4],h[1]=t[3],h[2]=t[2],h[3]=0,n=h[0];i=Al(t[s(518)](8),o),i=this[s(337)](i,o),this[s(586)](i,W[s(520)],e,o,n)}}else if(n===zt[s(615)]){const i=r===Ht[s(408)],n=t[s(518)](5);i&&this[s(585)](e);let o=Al(n,i);o=this[s(337)](o,i),this._doDecode(o,W[s(520)],e,i,0)}else this.player[s(627)](this[s(403)],s(448)+n+" and ignore")}[Ef(548)](t){return!(128&~t)}handlePlaybackPause(t){const e=Ef;Pi(t)?this[e(481)]():this[e(621)]()}handlePlaybackRateChange(t,e){const s=Ef;t>=1&&e>=1||(this[s(481)](),this[s(621)]())}[Ef(628)](){this.doPlaybackCacheLoop()}[Ef(491)](t){const e=Ef;if(this[e(506)][e(627)](this[e(403)],"handlePlaybackNextIFrame and nextIFrameTime is "+t),0===this[e(498)].length)return;let s=this.bufferList[0],i=s.ts-t;for(;i<100&&(this.doPlaybackCacheLoop(),0!==this[e(498)][e(579)]);)s=this.bufferList[0],i=s.ts-t}_calcDecodeFps(t){const e=Ef,s=t[e(541)](t=>{const s=e;return{ts:t[s(522)]||t[s(324)],type:t[s(320)]}});this[e(557)]=this._tempSampleTsList[e(598)](s);let i=wi(this[e(557)],W.video);if(i){const t=this[e(423)](this._tempSampleTsList);let s="";s=t.length>100?JSON[e(590)](t[e(518)](0,100))+e(516):JSON.stringify(t),this[e(506)][e(627)](this[e(403)],e(572)+i+e(342)+this[e(447)]+e(406)+t[e(579)]+e(580)+s),i<15&&this[e(506)][e(318)](this[e(403)],e(572)+i+e(383)),this[e(447)]=i,this[e(557)]=[],this[e(544)]("updateBaseFps",{baseFps:this[e(447)]})}else{this[e(506)][e(627)](this[e(403)],e(395)+this[e(557)][e(579)]);const t=100;if(this[e(557)][e(579)]>=t){const s=this[e(423)](this[e(557)]);return this.player[e(318)](this[e(403)],e(341)+t+e(499)+s[e(579)]+e(580)+JSON[e(590)](s)+e(587)+this[e(447)]),this[e(557)]=[],this._postMessageToLoopWorker(e(340),{baseFps:this[e(447)]}),!0}if(this[e(557)][e(579)]>t/2){const s=this[e(423)](this[e(557)]);this[e(506)][e(318)](this[e(403)],e(341)+t/2+e(499)+s[e(579)]+e(580)+JSON[e(590)](s)+e(617))}}return null!==i}_postMessageToLoopWorker(){}[Ef(574)](){return!this[Ef(506)].isUseMSE()}[Ef(419)](){const t=Ef;return this[t(498)][t(579)]}getBufferLength(){let t={video:0,audio:0};return this.bufferList.forEach(e=>{const s=wf;e[s(320)]===W.video?t.video+=1:e[s(320)]===W[s(355)]&&(t[s(355)]+=1)}),t}[Ef(445)](){const t=this.bufferList.find(t=>{const e=wf;return t[e(320)]===W[e(520)]}),e=function(t,e){const s=es;if(di(t[s(745)]))return t[s(745)](e);for(let s=t.length-1;s>=0;s--)if(e(t[s],s,t))return t[s]}(this.bufferList,t=>t[wf(320)]===W.video);return t&&e?parseInt(e.ts-t.ts,10):0}[Ef(330)](){const t=Ef;let e=0;return this[t(498)][t(363)](s=>{s[t(320)]===W.video&&(e+=1)}),e}[Ef(626)](){const t=Ef;let e=0;return this[t(498)].forEach(s=>{const i=t;s.type===W[i(355)]&&(e+=1)}),e}[Ef(524)](){return 0}[Ef(329)](t,e=5){const s=Ef,i=t[s(532)]||[];let r=!1;i[s(363)](t=>[t[s(610)]=t[s(522)]]);for(let t=0;t<i[s(579)]-1;t++){const n=i[t],o=i[t+1];n[s(522)]>=o[s(522)]&&(r=!0,o[s(522)]=n[s(522)]+e)}if(r){const t=i.map(t=>{const e=s;return t[e(610)]===t[e(522)]?e(611)+t[e(522)]:e(603)+t[e(610)]+e(375)+t.dts});this[s(506)][s(627)](this[s(403)],s(444)+t[s(606)](","))}}[Ef(417)](){const t=Ef;if(this[t(469)])return this[t(469)];const e=this[t(506)].getVideoInfo();if(e&&e.width&&e.height){const s=this[t(506)][t(339)];return this[t(469)]=function(t,e={}){return qi(t,e)}(e,{useWCS:s[t(433)],useWasm:s[t(361)],useSIMD:s[t(560)],isFFmpegSIMD:s[t(571)],useMThreading:s.useMThreading}),this[t(469)]}return this[t(506)][t(339)][t(528)]}getBufferListVideoTsList(t=[]){const e=Ef;return t[e(319)](t=>t.type===W.video)[e(541)](t=>parseInt(t.ts,10))}}const kf=_f;function _f(t,e){const s=Cf();return(_f=function(t,e){return s[t-=279]})(t,e)}function Cf(){const t=["demand","6170UwcIfF","read","need","readU16","consumed","resolve","1665848ebSRjB","3XUJCxP","length","byteLength","done","135852xCSvoG","subarray","U32","buffer","196gZKdop","Unsupported type","35bOXdIL","readU32","flush","8310181TvSCtL","166466hSaIYj","return","then","value","copyWithin","set","__awaiter","number","68816hFhhFV","apply","10188ZzFtCc","pull","writeU32","call","748764WMBOxK","consume","byteOffset","EOF","lastReadPromise","next","malloc","writeU8"];return(Cf=function(){return t})()}!function(t){const e=_f,s=t();for(;;)try{if(484989===-parseInt(e(307))/1+parseInt(e(321))/2+-parseInt(e(293))/3*(-parseInt(e(292))/4)+parseInt(e(303))/5*(parseInt(e(297))/6)+parseInt(e(301))/7*(-parseInt(e(315))/8)+-parseInt(e(317))/9*(-parseInt(e(286))/10)+-parseInt(e(306))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Cf);var Df=function(t,e,s,i){return new(s||(s=Promise))(function(r,n){const o=_f;function a(t){const e=_f;try{l(i[e(282)](t))}catch(t){n(t)}}function h(t){try{l(i.throw(t))}catch(t){n(t)}}function l(t){const e=_f;var i;t[e(296)]?r(t[e(310)]):(i=t[e(310)],i instanceof s?i:new s(function(t){t(i)}))[e(309)](a,h)}l((i=i[o(316)](t,e||[]))[o(282)]())})};const Lf=Symbol(32),Rf=Symbol(16),Pf=Symbol(8);class xf{constructor(t){const e=kf;this.g=t,this[e(290)]=0,t&&(this[e(288)]=t.next()[e(310)])}setG(t){const e=kf;this.g=t,this.demand(t.next()[e(310)],!0)}[kf(322)](){const t=kf;this[t(300)]&&this[t(290)]&&(this.buffer[t(311)](0,this[t(290)]),this[t(300)]=this[t(300)][t(298)](0,this.buffer.length-this.consumed),this[t(290)]=0)}[kf(285)](t,e){const s=kf;return e&&this[s(322)](),this[s(288)]=t,this.flush()}[kf(287)](t){return Df(this,void 0,void 0,function*(){const e=_f;return this[e(281)]&&(yield this.lastReadPromise),this[e(281)]=new Promise((s,i)=>{const r=e;var n;this.reject=i,this.resolve=t=>{const e=_f;delete this.lastReadPromise,delete this[e(291)],delete this[e(288)],s(t)};this[r(285)](t,!0)||null===(n=this[r(318)])||void 0===n||n[r(320)](this,t)})})}[kf(304)](){return this.read(Lf)}[kf(289)](){return this[kf(287)](Rf)}readU8(){return this[kf(287)](Pf)}close(){const t=kf;var e;this.g&&this.g[t(308)](),this[t(300)]&&this[t(300)][t(298)](0,0),null===(e=this.reject)||void 0===e||e.call(this,new Error(t(280))),delete this[t(281)]}[kf(305)](){const t=kf;if(!this[t(300)]||!this[t(288)])return;let e=null;const s=this[t(300)][t(298)](this[t(290)]);let i=0;const r=t=>s.length<(i=t);if(typeof this.need===t(314)){if(r(this[t(288)]))return;e=s[t(298)](0,i)}else if(this[t(288)]===Lf){if(r(4))return;e=s[0]<<24|s[1]<<16|s[2]<<8|s[3]}else if(this[t(288)]===Rf){if(r(2))return;e=s[0]<<8|s[1]}else if(this[t(288)]===Pf){if(r(1))return;e=s[0]}else if(t(300)in this[t(288)]){if("byteOffset"in this.need){if(r(this[t(288)].byteLength-this[t(288)][t(279)]))return;new Uint8Array(this[t(288)].buffer,this[t(288)][t(279)])[t(312)](s[t(298)](0,i)),e=this[t(288)]}else if(this.g)return void this.g.throw(new Error(t(302)))}else{if(r(this[t(288)][t(295)]))return;new Uint8Array(this[t(288)])[t(312)](s[t(298)](0,i)),e=this[t(288)]}return this[t(290)]+=i,this.g?this[t(285)](this.g.next(e).value,!0):this[t(291)]&&this[t(291)](e),e}write(t){const e=kf;if(t instanceof Uint8Array?this.malloc(t.length).set(t):e(300)in t?this[e(283)](t[e(295)])[e(312)](new Uint8Array(t[e(300)],t[e(279)],t[e(295)])):this[e(283)](t[e(295)])[e(312)](new Uint8Array(t)),!this.g&&!this.resolve)return new Promise(t=>this.pull=t);this.flush()}[kf(319)](t){const e=kf;this[e(283)](4)[e(312)]([t>>24&255,t>>16&255,t>>8&255,255&t]),this[e(305)]()}writeU16(t){const e=kf;this[e(283)](2).set([t>>8&255,255&t]),this[e(305)]()}[kf(284)](t){const e=kf;this[e(283)](1)[0]=t,this[e(305)]()}[kf(283)](t){const e=kf;if(this[e(300)]){const s=this[e(300)][e(294)],i=s+t;if(i<=this.buffer[e(300)][e(295)]-this[e(300)].byteOffset)this[e(300)]=new Uint8Array(this.buffer[e(300)],this.buffer[e(279)],i);else{const t=new Uint8Array(i);t[e(312)](this[e(300)]),this.buffer=t}return this[e(300)][e(298)](s,i)}return this[e(300)]=new Uint8Array(t),this[e(300)]}}xf[kf(299)]=Lf,xf.U16=Rf,xf.U8=Pf;const Mf=Ff;function Bf(){const t=["117555qOLYBI","demux() isIFrame is false and unit type is IDR and update to true","byteLength","cryptoPayloadAudio","7hhXXGl","close","video","addMetaData","1080968lZshWS","audio","demux","buffer","onMetaData","debugWarn"," and ignore","1835250enAjRu","getInputByteLength","8491437sOYCpn","_decodeEnhancedH265Video","h265","scriptData","54BpakNB","demux() codecId is ","7437ljkbLZ"," less than 5 and ignore","length","demuxStart","TAG_NAME","updateMetaData","demux() type is ","updateStats","debugLog","2443784xOuZaT","dispatch","calcIframeIntervalTimestamp","3210870SHSxtF","FlvDemux","_times","_opt","input","player","dispatch() this.input is null","recorder","slice","destroy"];return(Bf=function(){return t})()}function Ff(t,e){const s=Bf();return(Ff=function(t,e){return s[t-=266]})(t,e)}!function(t){const e=Ff,s=t();for(;;)try{if(294433===parseInt(e(301))/1*(-parseInt(e(299))/2)+-parseInt(e(278))/3+parseInt(e(286))/4+parseInt(e(293))/5+parseInt(e(268))/6*(parseInt(e(282))/7)+parseInt(e(310))/8+-parseInt(e(295))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Bf);class Uf extends If{constructor(t){const e=Ff;super(t),this.TAG_NAME=e(269),this[e(272)]=new xf(this[e(288)]()),t[e(309)](this[e(305)],"init")}[Mf(277)](){const t=Mf;super[t(277)](),this[t(272)]&&(this.input[t(283)](),this[t(272)]=null),this[t(273)][t(309)](this[t(305)],t(277))}[Mf(266)](t){const e=Mf;this[e(272)]?this[e(272)].write(t):this[e(273)].debugWarn(this[e(305)],e(274))}*[Mf(288)](){const t=Mf;yield 9;const e=new ArrayBuffer(4),s=new Uint8Array(e),i=new Uint32Array(e),r=this[t(273)];for(;;){if(!this[t(272)])return;s[3]=0;const e=yield 15,n=e[4];s[0]=e[7],s[1]=e[6],s[2]=e[5];const o=i[0];s[0]=e[10],s[1]=e[9],s[2]=e[8],s[3]=e[11];let a=i[0];const h=(yield o)[t(276)]();if(!r)return;switch(n){case G[t(287)]:if(r[t(271)].hasAudio&&(r[t(308)]({abps:h[t(280)]}),h[t(280)]>0)){let e=this[t(281)](h);this._doDecode(e,W[t(287)],a)}break;case G[t(284)]:if(r[t(271)].hasVideo&&h[t(303)]>=5){let e=a;r[t(308)]({vbps:8*h[t(280)],dts:e}),!r[t(270)][t(304)]&&(r[t(270)][t(304)]=os());const s=h[0];if(this._isEnhancedH265Header(s))this[t(296)](h,e);else{const e=15&s;let r=(s>>4&15)===Mt.keyFrame;const n=e===et[t(297)];if(xi(n||e===et.h264))return void this[t(273)][t(291)](this[t(305)],t(300)+e+t(292));xi(r)&&Pi(Gi(h,n))&&(this[t(273)][t(309)](this.TAG_NAME,t(279)),r=!0),r&&(this[t(267)](a),null===this.nalUnitSize&&Ri(h)&&this.updateNalUnitSize(h)),i[0]=h[4],i[1]=h[3],i[2]=h[2],i[3]=0;let o=i[0],l=this.cryptoPayload(h,r);this._doDecode(l,W[t(284)],a,r,o)}}else r[t(291)](this.TAG_NAME,"payload.length is "+h[t(303)]+t(302),h.toString());break;case G[t(298)]:if(this[t(273)].isRecordTypeFlv()){const e=new Uint8Array(h);this[t(273)][t(275)][t(285)](e)}const e=vc(h);e&&e[t(290)]&&r[t(306)](e[t(290)]);break;default:r.debugLog(this.TAG_NAME,t(307)+n)}}}close(){const t=Mf;this.input&&(this.input[t(283)](),this.input=null)}[Mf(294)](){const t=Mf;let e=0;return this[t(272)]&&this[t(272)][t(289)]&&(e=this[t(272)].buffer[t(280)]),e}}const Of=Nf;function Nf(t,e){const s=Vf();return(Nf=function(t,e){return s[t-=404]})(t,e)}function Vf(){const t=["1mKaVtb","player","_times"," and ignore","updateNalUnitSize","input","scriptData","demux() isIFrame is false and unit type is IDR and update to true","flvStreamBuffer","debugWarn","set","value","cryptoPayload","1052286sISXPl","flvDemux","_decodeEnhancedH265Video"," less than 6 and ignore","3061988QRWtUO","slice","573890eafUGZ","destroy","debugLog","updateStats","35rMeSXo","keyFrame","hasAudio","17458155YHakqL","6923875eoIFdL","demux() codecId is ","2287604mJNxhc","_isEnhancedH265Header","byteLength","dispatch() this.flvDemux is null","TAG_NAME","init","audio","payload.length is ","264BVqXNq","next","demux() type is ","onMetaData","length","6KyTElN","cryptoPayloadAudio","close","nalUnitSize","demuxStart","hasVideo","getInputByteLength","video","h264","dispatchFlvData","FlvDemuxV2","h265","_opt","demux","7018760xdnldK"];return(Vf=function(){return t})()}!function(t){const e=Nf,s=t();for(;;)try{if(996450===-parseInt(e(405))/1*(-parseInt(e(422))/2)+parseInt(e(447))/3*(parseInt(e(434))/4)+parseInt(e(428))/5*(-parseInt(e(418))/6)+parseInt(e(432))/7+-parseInt(e(404))/8+-parseInt(e(431))/9+-parseInt(e(424))/10*(-parseInt(e(442))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Vf);class jf extends If{constructor(t){const e=Nf;super(t),this.TAG_NAME=e(457),this[e(410)]=this[e(460)](),this[e(413)]=null,this.flvDemux=this[e(456)](this[e(410)]),t[e(426)](this.TAG_NAME,e(439))}[Of(425)](){const t=Of;super[t(425)](),this[t(449)](),this.input=null,this[t(419)]=null,this[t(406)][t(426)](this[t(438)],t(425))}[Of(456)](t){const e=Of;let s=t[e(443)]();return i=>{const r=e;let n=new Uint8Array(i);if(this[r(413)]){let t=new Uint8Array(this.flvStreamBuffer.length+n[r(446)]);t.set(this.flvStreamBuffer),t[r(415)](n,this[r(413)][r(446)]),n=t,this.flvStreamBuffer=null}for(;n[r(446)]>=s.value;){let e=n[r(423)](s[r(416)]);s=t[r(443)](n[r(423)](0,s[r(416)])),n=e}n[r(446)]>0&&(this[r(413)]=n)}}dispatch(t){const e=Of;this[e(419)]?this[e(419)](t):this.player[e(414)](this[e(438)],e(437))}*demux(){const t=Of;yield 9;const e=new ArrayBuffer(4),s=new Uint8Array(e),i=new Uint32Array(e),r=this[t(406)];for(;;){if(!this.flvDemux)return;s[3]=0;const e=yield 15,n=e[4];s[0]=e[7],s[1]=e[6],s[2]=e[5];const o=i[0];s[0]=e[10],s[1]=e[9],s[2]=e[8],s[3]=e[11];let a=i[0];const h=(yield o)[t(423)]();if(!r)return;switch(n){case G[t(440)]:if(r._opt[t(430)]&&(r.updateStats({abps:h.byteLength}),h[t(436)]>0)){let e=this[t(448)](h);this._doDecode(e,W[t(440)],a)}break;case G[t(454)]:if(r[t(459)][t(452)]&&h[t(446)]>=6){let e=a;r[t(427)]({vbps:8*h[t(436)],dts:e}),!r[t(407)][t(451)]&&(r[t(407)][t(451)]=os());const s=h[0];if(this[t(435)](s))this[t(420)](h,e);else{const e=15&s;let r=(s>>4&15)===Mt[t(429)];const n=e===et[t(458)],o=e===et[t(455)];if(xi(n||o))return void this[t(406)][t(414)](this[t(438)],t(433)+e+t(408));xi(r)&&Pi(Gi(h,n))&&(this[t(406)][t(426)](this[t(438)],t(412)),r=!0),r&&(this.calcIframeIntervalTimestamp(a),null===this[t(450)]&&Ri(h)&&this[t(409)](h)),i[0]=h[4],i[1]=h[3],i[2]=h[2],i[3]=0;let l=i[0],c=this[t(417)](h,r);this._doDecode(c,W[t(454)],a,r,l)}}else h.length<6&&r[t(414)](this[t(438)],t(441)+h[t(446)]+t(421));break;case G[t(411)]:if(this[t(406)].isRecordTypeFlv()){const e=new Uint8Array(h);this[t(406)].recorder.addMetaData(e)}const e=vc(h);e&&e[t(445)]&&r.updateMetaData(e[t(445)]);break;default:r[t(426)](this[t(438)],t(444)+n)}}}close(){const t=Of;this[t(413)]&&(this[t(413)]=null)}[Of(453)](){const t=Of;let e=0;return this[t(413)]&&(e=this[t(413)][t(436)]),e}}const Wf=Gf;function Gf(t,e){const s=zf();return(Gf=function(t,e){return s[t-=407]})(t,e)}function zf(){const t=["dispatch","_times","3hejiZz","1511400IjGWwc","10232824FXesmC","and return","812624hxJTIp","cryptoPayloadAudio","updateStats","debugLog","buffer","45464WSHqZZ","destroy","getUint32","calcIframeIntervalTimestamp","getUint8","debugWarn","hasVideo","byteLength","1304106GhKKXl","9tToKNU","_doDecode","_isEnhancedH265Header","_opt","hasAudio","3552844DKgorR","audio","TAG_NAME","player","513188nSrviq"];return(zf=function(){return t})()}!function(t){const e=Gf,s=t();for(;;)try{if(801400===-parseInt(e(409))/1+parseInt(e(427))/2+-parseInt(e(430))/3*(parseInt(e(423))/4)+-parseInt(e(431))/5+parseInt(e(417))/6+parseInt(e(432))/7+parseInt(e(434))/8*(parseInt(e(418))/9))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(zf);class Hf extends If{constructor(t){const e=Gf;super(t),this.TAG_NAME="M7sDemux",t[e(407)](this[e(425)],"init")}[Wf(410)](){const t=Wf;super.destroy(),this[t(426)][t(407)](this[t(425)],t(410))}[Wf(428)](t){const e=Wf;Ki(t)&&(t=t[e(408)]);const s=this[e(426)],i=new DataView(t),r=i[e(413)](0),n=i[e(411)](1,!1),o=new ArrayBuffer(4),a=new Uint32Array(o);switch(r){case W[e(424)]:if(s[e(421)][e(422)]){const i=new Uint8Array(t,5);if(s.updateStats({abps:i[e(416)]}),i[e(416)]>0){const t=this[e(435)](i);this[e(419)](t,r,n)}}break;case W.video:if(s[e(421)][e(415)])if(!s[e(429)].demuxStart&&(s[e(429)].demuxStart=os()),i.byteLength>=11){const o=new Uint8Array(t,5);let h=n;s[e(436)]({vbps:8*o[e(416)],dts:h});const l=o[0];if(this[e(420)](l))this._decodeEnhancedH265Video(o,n);else{const t=i[e(413)](5)>>4==1;t&&this[e(412)](n),a[0]=o[4],a[1]=o[3],a[2]=o[2],a[3]=0;let s=a[0],h=this.cryptoPayload(o,t);this[e(419)](h,r,n,t,s)}}else this[e(426)][e(414)](this.TAG_NAME,e(428),"dv byteLength is",i.byteLength,e(433))}}}function Kf(){var t=["9489WtkhpZ","15245bhioli","2812792aJqTxJ","5662920lBxbgH","1407bAHsua","debugLog","11032BeHNXS","player","14509OfmYZR","2742HlZtER","WebTransportDemux","9EoYrmk","194vuFSYD","4625166iqRWpW","init","TAG_NAME","7850XedKys","destroy"];return(Kf=function(){return t})()}var qf=Qf;function Qf(t,e){var s=Kf();return(Qf=function(t,e){return s[t-=393]})(t,e)}!function(t){for(var e=Qf,s=t();;)try{if(796140===parseInt(e(393))/1*(-parseInt(e(405))/2)+-parseInt(e(397))/3*(-parseInt(e(399))/4)+-parseInt(e(394))/5*(parseInt(e(402))/6)+parseInt(e(406))/7+parseInt(e(395))/8*(-parseInt(e(404))/9)+parseInt(e(409))/10*(parseInt(e(401))/11)+parseInt(e(396))/12)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Kf);class Yf extends Uf{constructor(t){var e=Qf;super(t),this[e(408)]=e(403),t[e(398)](this.TAG_NAME,e(407))}[qf(410)](){var t=qf;super.destroy(),this[t(400)].debugLog(this.TAG_NAME,t(410))}}const Jf=$f;!function(t){const e=$f,s=t();for(;;)try{if(975966===parseInt(e(157))/1+-parseInt(e(162))/2+-parseInt(e(160))/3+-parseInt(e(156))/4+parseInt(e(169))/5*(-parseInt(e(155))/6)+parseInt(e(176))/7+parseInt(e(165))/8*(parseInt(e(163))/9))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Zf);class Xf{constructor(t){const e=$f;this[e(178)]=t,this[e(164)]=0,this.bitLength=8*t[e(166)]}get[Jf(175)](){const t=Jf;return this[t(171)]-this[t(164)]}[Jf(161)](t){if(this[Jf(175)]<t)return!1;this.index+=t}[Jf(170)](t,e=!0){return this[Jf(167)](t,this.index,e)}getBits(t,e,s=!0){const i=Jf;if(this[i(175)]<t)return 0;const r=e%8,n=this[i(178)][e/8|0]&255>>>r,o=8-r;if(o>=t)return s&&(this.index+=t),n>>o-t;{s&&(this[i(164)]+=o);const r=t-o;return n<<r|this[i(167)](r,e+o,s)}}skipLZ(){const t=Jf;let e;for(e=0;e<this[t(171)]-this[t(164)];++e)if(0!==this[t(167)](1,this[t(164)]+e,!1))return this[t(164)]+=e,e;return e}[Jf(174)](){const t=Jf;this[t(161)](1+this[t(172)]())}skipEG(){const t=Jf;this[t(161)](1+this[t(172)]())}readUEG(){const t=Jf,e=this[t(172)]();return this[t(170)](e+1)-1}[Jf(158)](){const t=this[Jf(173)]();return 1&t?1+t>>>1:-1*(t>>>1)}[Jf(168)](){return 1===this[Jf(170)](1)}[Jf(177)](t=1){return this.readBits(8*t)}readUShort(){return this[Jf(170)](16)}[Jf(159)](){return this[Jf(170)](32)}}function $f(t,e){const s=Zf();return($f=function(t,e){return s[t-=155]})(t,e)}function Zf(){const t=["375059bTSeZg","readEG","readUInt","195795bZPDEQ","skipBits","3767970ITXMHf","36990yenakw","index","5080QkguDz","byteLength","getBits","readBoolean","1630410QgBNkQ","readBits","bitLength","skipLZ","readUEG","skipUEG","bitsAvailable","13653997LiHmBg","readUByte","data","6NFRfCd","6736728xoNgdf"];return(Zf=function(){return t})()}const tm=em;function em(t,e){const s=sm();return(em=function(t,e){return s[t-=179]})(t,e)}function sm(){const t=["audio","_opt","extractNALu$3","readUByte","player","vcl","type","isIFrame","debugLog","pps","MULAW","localDts","suffixSei","nakedFlowDemuxUseNew","error","extractH265PPS","readBits","AAC","isSendAACSeqHeader","3932400WubKFR","emitVideoSei","TAG_NAME","handleAddNaluStartCode","6BpyEYQ","handleVideoH264NaluList isSendSeqHeader is false","click","destroy","handleVideoH264Frames","handleNALu","naluList.length === 0","handleVideoH265Nalu","tempNaluBufferList","createElement","1605465fEOrQw","handleVideoFrames streamVideoType is null","extractH264SEI","pendingUnits","debugWarn","handleVideoNalu","sps","h265"," this.streamVideoType is null","reset","createObjectURL","extractH265SEI","size","parseVideo264Header","localAudioDts","push","subarray","payload","slice","ALAW","3105704tiaZXN","h265 naluList.length === 0","href","handleVideoH265Frames_1","8tmruuM","kSliceNonIDR","streamVideoType","audioBufferSize","handleAudioAACNalu","downloadTempNalu","demuxStart","streamAudioType","lastBuf","prefixSei","_doDecode","358178FKWwkc","handleVideoH264Nalu is avc seq head nalType is ","forEach","extractNALu","isSendSeqHeader","now","vps","init","handleVideoH265NaluList","kSliceIDR","handleAudioMp3Nalu","handleVideoFrames","2gPXNhM","extractH264PPS","byteLength","units","downloadNakedFlowFile","getNaluAudioDts","length","681795YhQPXM","_times","URL","video","handleVideoH264Nalu","kSliceSEI","handleAudioG711ANalu","readUEG","extractNALu$2","dispatch naluArray.length === 0","reduce","isEmitSEI","20411110LVNOpY","getNaluDts","_preDoDecode","isfms","MP3","addNaluToBuffer","parseVideo265Header","1226415VrxGSG","set"];return(sm=function(){return t})()}!function(t){const e=em,s=t();for(;;)try{if(521686===-parseInt(e(223))/1*(-parseInt(e(235))/2)+-parseInt(e(261))/3+-parseInt(e(282))/4+-parseInt(e(242))/5*(-parseInt(e(286))/6)+-parseInt(e(208))/7*(parseInt(e(212))/8)+-parseInt(e(188))/9+parseInt(e(254))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(sm);class im extends If{constructor(t){const e=em;super(t),this[e(284)]="NakedFlowDemux",this[e(267)]=t,this[e(197)](),this[e(186)]=new Uint8Array(0),t[e(271)](this[e(284)],e(230))}[tm(181)](){const t=tm;super[t(181)](),this[t(197)](),this[t(267)].debugLog(this[t(284)],t(181))}reset(){const t=tm;this.lastBuf=null,this[t(229)]=null,this.sps=null,this[t(272)]=null,this[t(214)]=null,this.streamAudioType=null,this[t(186)]=null,this.pendingUnits={},this[t(274)]=0,this[t(202)]=0,this.isSendSeqHeader=!1,this[t(281)]=!1}dispatch(t){const e=tm;this[e(267)];const s=new Uint8Array(t);if(this[e(267)][e(264)][e(276)]){const t=this[e(265)](s);if(0===t[e(241)])return void this[e(267)].debugLog(this[e(284)],e(251));this[e(234)](t)}else this.extractNALu$2(s)}[tm(259)](t){const e=tm,s=t[e(237)]+this[e(186)].byteLength,i=new Uint8Array(s);i[e(262)](this[e(186)],0),i[e(262)](t,this[e(186)][e(237)]),this[e(186)]=i}[tm(239)](){const t=tm,e=new Blob([this[t(186)]]);try{const s=document[t(187)]("a");s[t(210)]=window[t(244)][t(198)](e),s.download=Date[t(228)]()+".h264",s[t(180)](),window.URL.revokeObjectURL(s.href)}catch(e){console[t(277)](t(217),e)}}getNaluDts(){const t=tm,e=this[t(267)][t(264)].nakedFlowFps;return this[t(274)]=this[t(274)]+parseInt(1e3/e,10),this[t(274)]}[tm(240)](){const t=tm,e=this.player.audio.getAudioContextSampleRate(),s=this.player[t(263)][t(215)];return this[t(274)]+parseInt(s/e*1e3)}extractNALu(t){const e=tm;let s,i,r=0,n=t.byteLength,o=0,a=[];for(;r<n;)switch(s=t[r++],o){case 0:0===s&&(o=1);break;case 1:o=0===s?2:0;break;case 2:case 3:0===s?o=3:1===s&&r<n?(t[r],i&&a[e(203)](t[e(204)](i,r-o-1)),i=r,o=0):o=0}return i&&a.push(t[e(204)](i,n)),a}[tm(250)](t){const e=tm;let s=null;if(!t||t[e(237)]<1)return;this[e(220)]?(s=new Uint8Array(t[e(237)]+this[e(220)][e(241)]),s[e(262)](this[e(220)]),s[e(262)](new Uint8Array(t),this[e(220)].length)):s=new Uint8Array(t);let i=0,r=-1,n=-2,o=4;const a=new Array;for(let t=0;t<s.length;t+=2){const i=s[t],h=s[t+1];0==r&&0==i&&0==h?(a.push(t-1),o=3):1==h&&0==i&&0==r&&0==n&&(a[e(203)](t-2),o=4),n=i,r=h}if(a[e(241)]>1)for(let t=0;t<a[e(241)]-1;++t){const r=s[e(204)](a[t],a[t+1]+1);this.handleNALu(r,o),i=a[t+1]}else i=a[0];if(0!=i&&i<s[e(241)])this[e(220)]=s[e(204)](i);else{!this.lastBuf&&(this[e(220)]=s);const i=new Uint8Array(this.lastBuf[e(241)]+t[e(237)]);i[e(262)](this[e(220)]),i[e(262)](new Uint8Array(t),this.lastBuf[e(241)]),this[e(220)]=i}}extractNALu$3(t){const e=tm;let s,i,r=0,n=t[e(237)],o=0,a=[],h=new Uint8Array(t);if(this[e(220)]){const t=new Uint8Array(h[e(237)]+this[e(220)][e(237)]);t[e(262)](this.lastBuf),t[e(262)](h,this[e(220)].byteLength),h=t,n=h[e(237)],this[e(220)]=null}for(;r<n;)switch(s=h[r++],o){case 0:0===s&&(o=1);break;case 1:o=0===s?2:0;break;case 2:case 3:0===s?o=3:1===s&&r<n?(i!=r-o-1&&a[e(203)](h[e(204)](i,r-o-1)),i=r,o=0):o=0}return i<n&&(this[e(220)]=h[e(204)](i,n)),a}[tm(183)](t,e=4){const s=tm;t[s(237)]<4||(t=t[s(206)](e),this.handleVideoNalu(t))}handleVideoNalu(t){const e=tm,s=new Uint8Array(t);if(!this[e(214)]&&(this[e(214)]=gi(s)),this[e(214)]===st.h264){const t=this[e(285)](s),i=this.extractNALu(t);if(0===i[e(241)])return void this[e(267)][e(192)](this[e(284)],e(193),e(184));const r=[];if(i.forEach(t=>{const s=e,i=Kh(t);i===ot.pps||i===ot[s(194)]?this[s(246)](t):Qh(i)&&r[s(203)](t)}),1===r[e(241)])this[e(246)](r[0]);else{if(function(t){const e=Yh;if(0===t.length)return!1;const s=Kh(t[0]);for(let i=1;i<t[e(236)];i++)if(s!==Kh(t[i]))return!1;return!0}(r)){const t=Kh(r[0]),e=Jh(t);this.handleVideoH264NaluList(r,e,t)}else r[e(225)](t=>{this[e(246)](t)})}}else if(this.streamVideoType===st.h265)if(this.player[e(264)].nakedFlowH265DemuxUseNew){const t=this[e(285)](s),i=this[e(226)](t);if(0===i.length)return void this.player[e(192)](this[e(284)],e(193),e(209));const r=[];if(i.forEach(t=>{const s=e,i=bl(t);i===at[s(272)]||i===at[s(194)]||i===at[s(229)]?this[s(185)](t):vl(i)&&r[s(203)](t)}),1===r.length)this[e(185)](r[0]);else{if(function(t){const e=pl;if(0===t[e(313)])return!1;const s=bl(t[0]);for(let i=1;i<t[e(313)];i++)if(s!==bl(t[i]))return!1;return!0}(r)){const t=bl(r[0]),s=Sl(t);this[e(231)](r,s,t)}else r[e(225)](t=>{this[e(185)](t)})}}else{bl(s)===at[e(272)]?this[e(278)](s):this[e(185)](s)}else this[e(267)][e(192)](this.TAG_NAME,e(196))}[tm(236)](t){const e=tm,s=this[e(285)](t);this[e(226)](s)[e(225)](t=>{const s=e;qh(Kh(t))?this[s(190)](t):this[s(246)](t)})}extractH265PPS(t){const e=tm,s=this[e(285)](t);this[e(226)](s).forEach(t=>{const s=e,i=bl(t);i===at[pl(200)]?this[s(199)](t):this.handleVideoH265Nalu(t)})}[tm(190)](t){const e=tm,s=this.handleAddNaluStartCode(t);this[e(226)](s)[e(225)](t=>{this[e(246)](t)})}[tm(199)](t){const e=tm,s=this.handleAddNaluStartCode(t);this[e(226)](s)[e(225)](t=>{this.handleVideoH265Nalu(t)})}handleAddNaluStartCode(t){const e=tm,s=[0,0,0,1],i=new Uint8Array(t[e(241)]+s[e(241)]);return i[e(262)](s),i[e(262)](t,s[e(241)]),i}[tm(216)](t){const e=tm;if(!t||t[e(237)]<1)return;!this.streamAudioType&&(this.streamAudioType=rt[e(280)]);let s=new Uint8Array(t);const i=s.slice(0,7);if(s=s[e(206)](7),!this[e(281)]){const t=(192&i[2])>>6,s=(60&i[2])>>2,r=(1&i[2])<<2|(192&i[3])>>6,n=new Uint8Array([175,0,t<<3|(14&s)>>1,(1&s)<<7|r<<3]);this[e(281)]=!0,this[e(222)](n,W[e(263)],0,!1,0)}const r=this.getNaluAudioDts(),n=new Uint8Array(s[e(241)]+2);n.set([175,1],0),n[e(262)](s,2),this[e(222)](n,W[e(263)],r,!1,0)}[tm(248)](t){const e=tm;if(!t||t[e(237)]<1)return;!this[e(219)]&&(this[e(219)]=rt[e(207)]);let s=new Uint8Array(t);const i=this.getNaluAudioDts(),r=new Uint8Array(s.length+1);r[e(262)]([114],0),r.set(s,1),this._doDecode(r,W[e(263)],i,!1,0)}handleAudioG711UNalu(t){const e=tm;if(!t||t[e(237)]<1)return;!this[e(219)]&&(this[e(219)]=rt[e(273)]);let s=new Uint8Array(t);const i=this.getNaluAudioDts(),r=new Uint8Array(s[e(241)]+1);r[e(262)]([130],0),r.set(s,1),this._doDecode(r,W[e(263)],i,!1,0)}[tm(233)](t){const e=tm;if(!t||t[e(237)]<1)return;!this[e(219)]&&(this[e(219)]=rt[e(258)]);let s=new Uint8Array(t);const i=this[e(240)](),r=new Uint8Array(s[e(241)]+1);r.set([32],0),r.set(s,1),this[e(222)](r,W[e(263)],i,!1,0)}[tm(246)](t){const e=tm,s=Kh(t);switch(s){case ot[e(194)]:this[e(194)]=t;break;case ot[e(272)]:this[e(272)]=t}if(this[e(227)]){if(this.sps&&this[e(272)]){const t=zh({sps:this.sps,pps:this[e(272)]}),s=this.localDts;this[e(222)](t,W[e(245)],s,!0,0),this[e(194)]=null,this[e(272)]=null}if(Qh(s)){!this[e(267)][e(243)].demuxStart&&(this[e(267)]._times[e(218)]=os());const i=Jh(s),r=this[e(255)](),n=function(t,e){const s=Yh;let i=[];i[0]=e?23:39,i[1]=1,i[2]=0,i[3]=0,i[4]=0,i[5]=t.byteLength>>24&255,i[6]=t[s(214)]>>16&255,i[7]=t[s(214)]>>8&255,i[8]=255&t[s(214)];const r=new Uint8Array(i.length+t[s(214)]);return r[s(206)](i,0),r.set(t,i[s(236)]),r}(t,i);this[e(256)](n,W.video,r,i,0)}else this.player[e(192)](this[e(284)],e(224)+s)}else if(this.sps&&this[e(272)]){this.isSendSeqHeader=!0;const t=zh({sps:this[e(194)],pps:this.pps});this[e(222)](t,W.video,0,!0,0),this[e(194)]=null,this.pps=null}}handleVideoH264NaluList(t,e,s){const i=tm;if(this[i(227)]){!this[i(267)][i(243)][i(218)]&&(this[i(267)][i(243)].demuxStart=os());const s=this[i(255)](),r=Hh(t[i(252)]((t,e)=>{const s=i,r=ts(t),n=ts(e),o=new Uint8Array(r[s(237)]+n[s(237)]);return o.set(r,0),o[s(262)](n,r[s(237)]),o}),e);this[i(256)](r,W[i(245)],s,e,0)}else this[i(267)].debugWarn(this.TAG_NAME,i(179))}handleVideoH265Nalu(t){const e=tm,s=bl(t);switch(s){case at.vps:this[e(229)]=t;break;case at[e(194)]:this.sps=t;break;case at[e(272)]:this.pps=t}if(this.isSendSeqHeader){if(this.vps&&this.sps&&this.pps){const t=yl({vps:this[e(229)],sps:this[e(194)],pps:this[e(272)]}),s=this[e(274)];this[e(222)](t,W[e(245)],s,!0,0),this.vps=null,this[e(194)]=null,this[e(272)]=null}if(vl(s)){!this[e(267)]._times.demuxStart&&(this[e(267)]._times[e(218)]=os());const i=Sl(s),r=this.getNaluDts(),n=function(t,e){const s=pl;let i=[];i[0]=e?28:44,i[1]=1,i[2]=0,i[3]=0,i[4]=0,i[5]=t.byteLength>>24&255,i[6]=t[s(276)]>>16&255,i[7]=t.byteLength>>8&255,i[8]=255&t.byteLength;const r=new Uint8Array(i.length+t[s(276)]);return r[s(262)](i,0),r[s(262)](t,i[s(313)]),r}(t,i);this._preDoDecode(n,W[e(245)],r,i,0)}}else if(this.vps&&this[e(194)]&&this[e(272)]){this[e(227)]=!0;const t=yl({vps:this[e(229)],sps:this[e(194)],pps:this[e(272)]});this[e(222)](t,W[e(245)],0,!0,0),this.vps=null,this.sps=null,this[e(272)]=null}}[tm(231)](t,e,s){const i=tm;if(this[i(227)]){!this.player[i(243)].demuxStart&&(this[i(267)]._times[i(218)]=os());const s=this.getNaluDts(),r=Al(t[i(252)]((t,e)=>{const s=i,r=ts(t),n=ts(e),o=new Uint8Array(r[s(237)]+n.byteLength);return o.set(r,0),o.set(n,r[s(237)]),o}),e);this._preDoDecode(r,W[i(245)],s,e,0)}else this[i(267)][i(192)](this[i(284)],"handleVideoH265NaluList isSendSeqHeader is false")}[tm(256)](t,e,s,i,r){const n=tm;this.player.updateStats({vbps:8*t[n(237)],dts:s}),i&&this.calcIframeIntervalTimestamp(s),this[n(222)](t,W[n(245)],s,i,r)}getInputByteLength(){const t=tm;let e=0;return this[t(220)]&&(e=this[t(220)][t(237)]),e}[tm(234)](t){const e=tm;if(!this[e(214)])for(let s of t)if(this[e(214)]=gi(s),this.streamVideoType)break;this.streamVideoType?this[e(214)]===st.h264?this.handleVideoH264Frames(t):this[e(214)]===st[e(195)]&&this.handleVideoH265Frames(t):this[e(267)].debugWarn(this[e(284)],e(189))}[tm(182)](t){const e=tm;let s=[],i=[],r=!1,n=!1;this.pendingUnits.units&&(s=this[e(191)].units,n=this[e(191)].vcl,r=this[e(191)].iFrame,this[e(191)]={});let o={};for(let a of t){if(a[e(237)]<4)continue;const t=Kh(a);let h=!1,l=t===ot[e(232)];(t===ot[e(213)]||t===ot[e(232)])&&(o=this.parseVideo264Header(a),h=!0),s[e(241)]&&n&&(o[e(257)]||!h)&&(i.push({units:s,isIFrame:r}),s=[],r=!1,n=!1),s[e(203)](a),r=r||l,n=n||h}s[e(241)]&&(this[e(191)]={units:s,vcl:n,iFrame:r}),i[e(225)](t=>{const s=e,i=t.units,r=t.isIFrame;let n=null,o=null;if(i.forEach(t=>{const e=em,s=31&t[0];switch(s){case ot[e(272)]:this[e(272)]=t;break;case ot[e(194)]:this[e(194)]=t;break;case ot[e(247)]:o=t}if(Qh(s)){const s=ts(t);if(n){const t=new Uint8Array(n.byteLength+s[e(237)]);t[e(262)](n,0),t[e(262)](s,n[e(237)]),n=t}else n=s}}),!this[s(227)]&&this[s(194)]&&this[s(272)]){this.isSendSeqHeader=!0;const t=zh({sps:this[s(194)],pps:this[s(272)]});this._doDecode(t,W.video,0,!0,0),this.sps=null,this.pps=null}if(this.isSendSeqHeader){if(this[s(194)]&&this[s(272)]){const t=zh({sps:this[s(194)],pps:this[s(272)]}),e=this[s(274)];this._doDecode(t,W[s(245)],e,!0,0),this[s(194)]=null,this[s(272)]=null}if(n){!this[s(267)][s(243)][s(218)]&&(this[s(267)][s(243)][s(218)]=os());const t=this[s(255)](),e=Hh(n,r);if(this[s(267)]._opt.isEmitSEI&&o){const e=$e(Je(o),!1);this[s(267)][s(283)]({ts:t,type:e[s(269)],data:e[s(205)],originData:o,uuid:e.uuid,size:e[s(200)]})}this[s(256)](e,W[s(245)],t,r,0)}}})}handleVideoH265Frames(t){const e=tm;let s=[],i=[],r=!1,n=!1;this[e(191)][e(238)]&&(s=this[e(191)].units,n=this[e(191)][e(268)],r=this[e(191)].iFrame,this[e(191)]={});let o={};for(let a of t){if(a.byteLength<4)continue;const t=bl(a);let h=!1,l=Sl(t);vl(t)&&(o=this[e(260)](a),h=!0),s[e(241)]&&n&&(o.isfms||!h)&&(i[e(203)]({units:s,isIFrame:r}),s=[],r=!1,n=!1),s[e(203)](a),r=r||l,n=n||h}s[e(241)]&&(this[e(191)]={units:s,vcl:n,iFrame:r}),i[e(225)](t=>{const s=e,i=t[s(238)],r=t[s(270)];let n=null,o=null;if(i[s(225)](t=>{const e=s,i=t[0]>>>1&63;switch(i){case at[e(272)]:this[e(272)]=t;break;case at.sps:this.sps=t;break;case at[e(229)]:this.vps=t;break;case at[e(275)]:case at[e(221)]:o=t}if(vl(i)){const s=ts(t);if(n){const t=new Uint8Array(n.byteLength+s[e(237)]);t[e(262)](n,0),t[e(262)](s,n[e(237)]),n=t}else n=s}}),!this[s(227)]&&this[s(194)]&&this[s(272)]&&this.vps){this[s(227)]=!0;const t=yl({sps:this[s(194)],pps:this[s(272)],vps:this[s(229)]});this._doDecode(t,W[s(245)],0,!0,0),this[s(194)]=null,this.pps=null,this[s(229)]=null}if(this[s(227)]){if(this[s(194)]&&this[s(272)]&&this[s(229)]){const t=yl({sps:this[s(194)],pps:this.pps,vps:this.vps}),e=this[s(274)];this[s(222)](t,W[s(245)],e,!0,0),this[s(194)]=null,this[s(272)]=null,this[s(229)]=null}if(n){!this[s(267)][s(243)].demuxStart&&(this.player[s(243)][s(218)]=os());const t=this[s(255)](),e=Al(n,r);if(this[s(267)]._opt[s(253)]&&o){const e=$e(Je(o),!0);this[s(267)][s(283)]({ts:t,type:e[s(269)],data:e.payload,originData:o,uuid:e.uuid,size:e[s(200)]})}this[s(256)](e,W[s(245)],t,r,0)}}})}[tm(211)](t){const e=tm;t[e(225)](t=>{this[e(193)](t)})}[tm(201)](t){const e=tm,s=new Xf(t);s.readUByte();return{isfms:0===s.readUEG(),sType:s[e(249)]()}}parseVideo265Header(t){const e=tm,s=new Xf(t);return s[e(266)](),{nalType:s[e(279)](6),isfms:0===s[e(279)](1),sType:s[e(279)](3)}}}var rm=om;!function(t){for(var e=om,s=t();;)try{if(608257===parseInt(e(260))/1+parseInt(e(268))/2*(-parseInt(e(259))/3)+-parseInt(e(254))/4*(parseInt(e(266))/5)+parseInt(e(265))/6*(-parseInt(e(256))/7)+parseInt(e(264))/8*(-parseInt(e(262))/9)+-parseInt(e(253))/10+parseInt(e(257))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(am);class nm extends If{constructor(t){var e=om;super(t),this[e(261)]=t,this[e(255)]=e(258),t[e(267)](this[e(255)],"init")}[rm(263)](){var t=rm;super[t(263)](),this[t(261)][t(267)](this[t(255)],t(263))}}function om(t,e){var s=am();return(om=function(t,e){return s[t-=253]})(t,e)}function am(){var t=["EmptyDemux","5097fCsnrX","173387GLYqGn","player","117cpvZLm","destroy","426072KnkAuG","5182644ozuBrK","3471835dBMzRl","debugLog","902rNzROr","986960vvgdco","4jzFJFi","TAG_NAME","7hSCGkk","39053553uhYhzO"];return(am=function(){return t})()}var hm=dm;!function(t){for(var e=dm,s=t();;)try{if(254660===parseInt(e(914))/1*(parseInt(e(1075))/2)+-parseInt(e(364))/3+parseInt(e(490))/4+-parseInt(e(503))/5*(-parseInt(e(155))/6)+parseInt(e(1123))/7*(-parseInt(e(142))/8)+-parseInt(e(1147))/9*(parseInt(e(642))/10)+-parseInt(e(273))/11*(-parseInt(e(764))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(cm);var lm=me(function(t,e){var s,r,n=dm,o=(s=new Date,r=4,{setLogLevel:function(t){var e=dm;r=t==this[e(749)]?1:t==this.info?2:t==this[e(390)]?3:(this[e(996)],4)},debug:function(t,e){var i=dm;void 0===console[i(749)]&&(console[i(749)]=console[i(1283)]),1>=r&&console[i(749)]("["+o.getDurationString(new Date-s,1e3)+"]","["+t+"]",e)},log:function(t,e){var s=dm;this.debug(t[s(1331)])},info:function(t,e){2>=r&&console[dm(288)]("["+o.getDurationString(new Date-s,1e3)+"]","["+t+"]",e)},warn:function(t,e){var i=dm;3>=r&&console[i(390)]("["+o[i(184)](new Date-s,1e3)+"]","["+t+"]",e)},error:function(t,e){var i=dm;4>=r&&console[i(996)]("["+o[i(184)](new Date-s,1e3)+"]","["+t+"]",e)}});o.getDurationString=function(t,e){var s,i=dm;function r(t,e){for(var s=dm,i=(""+t)[s(183)](".");i[0].length<e;)i[0]="0"+i[0];return i[s(1339)](".")}t<0?(s=!0,t=-t):s=!1;var n=t/(e||1),o=Math.floor(n/3600);n-=3600*o;var a=Math[i(404)](n/60),h=1e3*(n-=60*a);return h-=1e3*(n=Math.floor(n)),h=Math[i(404)](h),(s?"-":"")+o+":"+r(a,2)+":"+r(n,2)+"."+r(h,3)},o[n(860)]=function(t){var e=n,s=t[e(189)];if(s>0){for(var i="",r=0;r<s;r++)r>0&&(i+=","),i+="["+o[e(184)](t[e(741)](r))+","+o[e(184)](t[e(1307)](r))+"]";return i}return e(1193)},"undefined"!==n(430)&&(e[n(700)]=o);var a=function(t){var e=n;if(!(t instanceof ArrayBuffer))throw e(695);this.buffer=t,this[e(1319)]=new DataView(t),this[e(768)]=0};a[n(794)][n(972)]=function(){return this[n(768)]},a[n(794)][n(132)]=function(){return this.buffer.byteLength},a.prototype.getLength=function(){var t=n;return this.buffer[t(783)]},a[n(794)][n(411)]=function(t){var e=n,s=Math[e(549)](0,Math[e(469)](this[e(975)][e(783)],t));return this[e(768)]=isNaN(s)||!isFinite(s)?0:s,!0},a[n(794)][n(862)]=function(){var t=n;return this[t(972)]()>=this[t(132)]()},a[n(794)][n(445)]=function(t,e){var s=n,i=0;if(this[s(768)]+t<=this[s(975)][s(783)]){switch(t){case 1:i=e?this[s(1319)][s(327)](this.position):this[s(1319)][s(373)](this.position);break;case 2:i=e?this[s(1319)][s(1240)](this[s(768)]):this.dataview.getUint16(this[s(768)]);break;case 3:if(e)throw s(234);i=this[s(1319)][s(373)](this.position)<<16,i|=this.dataview[s(373)](this[s(768)]+1)<<8,i|=this[s(1319)][s(373)](this[s(768)]+2);break;case 4:i=e?this.dataview[s(1306)](this[s(768)]):this[s(1319)][s(1020)](this.position);break;case 8:if(e)throw s(1144);i=this.dataview[s(1020)](this[s(768)])<<32,i|=this[s(1319)][s(1020)](this[s(768)]+4);break;default:throw s(1161)+t}return this[s(768)]+=t,i}throw s(1042)},a[n(794)][n(771)]=function(){return this[n(445)](1,!1)},a.prototype[n(997)]=function(){return this[n(445)](2,!1)},a.prototype[n(1001)]=function(){return this[n(445)](3,!1)},a[n(794)].readUint32=function(){return this.readAnyInt(4,!1)},a[n(794)][n(1195)]=function(){return this[n(445)](8,!1)},a[n(794)][n(927)]=function(t){var e=n;if(this[e(768)]+t<=this[e(975)][e(783)]){for(var s="",i=0;i<t;i++)s+=String.fromCharCode(this.readUint8());return s}throw e(1042)},a.prototype[n(694)]=function(){for(var t=n,e=[];;){var s=this[t(771)]();if(0===s)break;e.push(s)}return String[t(945)][t(727)](null,e)},a[n(794)][n(459)]=function(){return this[n(445)](1,!0)},a.prototype[n(707)]=function(){return this[n(445)](2,!0)},a[n(794)][n(590)]=function(){return this[n(445)](4,!0)},a[n(794)].readInt64=function(){return this[n(445)](8,!1)},a[n(794)][n(818)]=function(t){for(var e=n,s=new Uint8Array(t),i=0;i<t;i++)s[i]=this[e(771)]();return s},a[n(794)][n(1034)]=function(t){for(var e=n,s=new Int16Array(t),i=0;i<t;i++)s[i]=this[e(707)]();return s},a[n(794)][n(1074)]=function(t){for(var e=n,s=new Int16Array(t),i=0;i<t;i++)s[i]=this[e(997)]();return s},a[n(794)][n(523)]=function(t){for(var e=new Uint32Array(t),s=0;s<t;s++)e[s]=this.readUint32();return e},a.prototype[n(129)]=function(t){for(var e=n,s=new Int32Array(t),i=0;i<t;i++)s[i]=this[e(590)]();return s},"undefined"!==n(430)&&(e[n(166)]=a);var h=function(t,e,s){var i=n;this[i(285)]=e||0,t instanceof ArrayBuffer?this[i(975)]=t:typeof t==i(430)?(this.dataView=t,e&&(this._byteOffset+=e)):this[i(975)]=new ArrayBuffer(t||0),this.position=0,this[i(690)]=null==s?h.LITTLE_ENDIAN:s};h[n(794)]={},h.prototype[n(972)]=function(){return this[n(768)]},h.prototype[n(1316)]=function(t){var e=n;if(this[e(1026)]){var s=this._byteOffset+this.position+t,i=this._buffer.byteLength;if(s<=i)s>this[e(1156)]&&(this[e(1156)]=s);else{for(i<1&&(i=1);s>i;)i*=2;var r=new ArrayBuffer(i),o=new Uint8Array(this._buffer);new Uint8Array(r,0,o[e(189)])[e(625)](o),this[e(975)]=r,this[e(1156)]=s}}},h.prototype[n(1004)]=function(){var t=n;if(this[t(1156)]!=this[t(348)][t(783)]){var e=new ArrayBuffer(this[t(1156)]),s=new Uint8Array(e),i=new Uint8Array(this._buffer,0,s[t(189)]);s.set(i),this[t(975)]=e}},h[n(1274)]=!1,h.LITTLE_ENDIAN=!0,h[n(794)][n(1156)]=0,Object[n(766)](h[n(794)],n(783),{get:function(){var t=n;return this[t(1156)]-this[t(285)]}}),Object[n(766)](h[n(794)],"buffer",{get:function(){var t=n;return this._trimAlloc(),this[t(348)]},set:function(t){var e=n;this[e(348)]=t,this._dataView=new DataView(this._buffer,this[e(285)]),this[e(1156)]=this[e(348)].byteLength}}),Object[n(766)](h[n(794)],n(216),{get:function(){return this[n(285)]},set:function(t){var e=n;this[e(285)]=t,this[e(714)]=new DataView(this._buffer,this[e(285)]),this._byteLength=this[e(348)][e(783)]}}),Object[n(766)](h[n(794)],n(565),{get:function(){return this[n(714)]},set:function(t){var e=n;this[e(285)]=t.byteOffset,this[e(348)]=t[e(975)],this[e(714)]=new DataView(this._buffer,this[e(285)]),this[e(1156)]=this[e(285)]+t.byteLength}}),h[n(794)][n(411)]=function(t){var e=n,s=Math[e(549)](0,Math[e(469)](this[e(783)],t));this.position=isNaN(s)||!isFinite(s)?0:s},h.prototype.isEof=function(){var t=n;return this[t(768)]>=this[t(1156)]},h[n(794)][n(1071)]=function(t){var e=n;this[e(1316)](1*t);var s=new Uint8Array(this._buffer,this[e(216)]+this[e(768)],t);return this[e(768)]+=1*t,s},h.prototype[n(129)]=function(t,e){var s=n;t=null==t?this[s(783)]-this[s(768)]/4:t;var i=new Int32Array(t);return h[s(391)](i[s(975)],0,this.buffer,this[s(216)]+this[s(768)],t*i[s(934)]),h.arrayToNative(i,null==e?this.endianness:e),this[s(768)]+=i.byteLength,i},h[n(794)][n(1034)]=function(t,e){var s=n;t=null==t?this.byteLength-this.position/2:t;var i=new Int16Array(t);return h[s(391)](i[s(975)],0,this.buffer,this[s(216)]+this.position,t*i[s(934)]),h[s(760)](i,null==e?this[s(690)]:e),this[s(768)]+=i[s(783)],i},h[n(794)][n(159)]=function(t){var e=n;t=null==t?this[e(783)]-this[e(768)]:t;var s=new Int8Array(t);return h[e(391)](s.buffer,0,this.buffer,this[e(216)]+this[e(768)],t*s[e(934)]),this[e(768)]+=s[e(783)],s},h[n(794)].readUint32Array=function(t,e){var s=n;t=null==t?this.byteLength-this[s(768)]/4:t;var i=new Uint32Array(t);return h[s(391)](i[s(975)],0,this[s(975)],this.byteOffset+this.position,t*i[s(934)]),h[s(760)](i,null==e?this[s(690)]:e),this[s(768)]+=i.byteLength,i},h[n(794)][n(1074)]=function(t,e){var s=n;t=null==t?this.byteLength-this[s(768)]/2:t;var i=new Uint16Array(t);return h[s(391)](i[s(975)],0,this[s(975)],this[s(216)]+this[s(768)],t*i[s(934)]),h[s(760)](i,null==e?this[s(690)]:e),this[s(768)]+=i.byteLength,i},h.prototype.readUint8Array=function(t){var e=n;t=null==t?this[e(783)]-this[e(768)]:t;var s=new Uint8Array(t);return h.memcpy(s.buffer,0,this[e(975)],this[e(216)]+this[e(768)],t*s[e(934)]),this[e(768)]+=s[e(783)],s},h.prototype[n(1090)]=function(t,e){var s=n;t=null==t?this.byteLength-this[s(768)]/8:t;var i=new Float64Array(t);return h[s(391)](i[s(975)],0,this[s(975)],this.byteOffset+this[s(768)],t*i[s(934)]),h[s(760)](i,null==e?this[s(690)]:e),this[s(768)]+=i[s(783)],i},h[n(794)][n(617)]=function(t,e){var s=n;t=null==t?this[s(783)]-this[s(768)]/4:t;var i=new Float32Array(t);return h.memcpy(i[s(975)],0,this[s(975)],this[s(216)]+this.position,t*i[s(934)]),h.arrayToNative(i,null==e?this.endianness:e),this[s(768)]+=i[s(783)],i},h[n(794)][n(590)]=function(t){var e=n,s=this[e(714)][e(1306)](this[e(768)],null==t?this[e(690)]:t);return this[e(768)]+=4,s},h[n(794)][n(707)]=function(t){var e=n,s=this[e(714)][e(1240)](this[e(768)],null==t?this.endianness:t);return this[e(768)]+=2,s},h[n(794)][n(459)]=function(){var t=n,e=this[t(714)].getInt8(this[t(768)]);return this.position+=1,e},h[n(794)][n(885)]=function(t){var e=n,s=this._dataView[e(1020)](this.position,null==t?this[e(690)]:t);return this[e(768)]+=4,s},h.prototype[n(997)]=function(t){var e=n,s=this._dataView[e(1049)](this.position,null==t?this[e(690)]:t);return this[e(768)]+=2,s},h[n(794)][n(771)]=function(){var t=n,e=this[t(714)].getUint8(this[t(768)]);return this[t(768)]+=1,e},h[n(794)].readFloat32=function(t){var e=n,s=this[e(714)].getFloat32(this[e(768)],null==t?this[e(690)]:t);return this[e(768)]+=4,s},h.prototype[n(521)]=function(t){var e=n,s=this[e(714)][e(1286)](this[e(768)],null==t?this[e(690)]:t);return this[e(768)]+=8,s},h[n(690)]=new Int8Array(new Int16Array([1])[n(975)])[0]>0,h[n(391)]=function(t,e,s,i,r){var o=n,a=new Uint8Array(t,e,r),h=new Uint8Array(s,i,r);a[o(625)](h)},h[n(760)]=function(t,e){return e==this[n(690)]?t:this.flipArrayEndianness(t)},h.nativeToEndian=function(t,e){return this[n(690)]==e?t:this.flipArrayEndianness(t)},h[n(781)]=function(t){for(var e=n,s=new Uint8Array(t[e(975)],t[e(216)],t.byteLength),i=0;i<t[e(783)];i+=t[e(934)])for(var r=i+t[e(934)]-1,o=i;r>o;r--,o++){var a=s[o];s[o]=s[r],s[r]=a}return t},h[n(794)][n(881)]=0,String.fromCharCodeUint8=function(t){for(var e=n,s=[],i=0;i<t[e(189)];i++)s[i]=t[i];return String[e(945)][e(727)](null,s)},h[n(794)][n(927)]=function(t,e){var s=n;return null==e||"ASCII"==e?String[s(209)][s(727)](null,[this.mapUint8Array(null==t?this[s(783)]-this[s(768)]:t)]):new TextDecoder(e)[s(932)](this[s(1071)](t))},h[n(794)][n(694)]=function(t){var e=n,s=this[e(783)]-this[e(768)],i=new Uint8Array(this[e(348)],this[e(285)]+this.position),r=s;null!=t&&(r=Math.min(t,s));for(var o=0;o<r&&0!==i[o];o++);var a=String[e(209)][e(727)](null,[this.mapUint8Array(o)]);return null!=t?this[e(768)]+=r-o:o!=s&&(this[e(768)]+=1),a};var l=Math[n(171)](2,32);h[n(794)][n(872)]=function(){return this[n(590)]()*l+this.readUint32()},h[n(794)][n(1195)]=function(){return this[n(885)]()*l+this.readUint32()},h[n(794)][n(872)]=function(){var t=n;return this[t(885)]()*l+this[t(885)]()},h[n(794)][n(1001)]=function(){var t=n;return(this[t(771)]()<<16)+(this[t(771)]()<<8)+this.readUint8()},"undefined"!==n(430)&&(e.DataStream=h),h[n(794)].save=function(t){var e=n,s=new Blob([this[e(975)]]);if(!window[e(1238)]||!URL[e(774)])throw e(486);var i=window.URL[e(774)](s),r=document[e(528)]("a");document.body.appendChild(r),r[e(674)]("href",i),r[e(674)](e(457),t),r.setAttribute(e(146),e(554)),r.click(),window.URL.revokeObjectURL(i)},h[n(794)][n(1026)]=!0,Object[n(766)](h[n(794)],n(817),{get:function(){return this[n(1026)]},set:function(t){var e=n;!t&&this._trimAlloc(),this[e(1026)]=t}}),h[n(794)][n(978)]=function(t){var e=n,s=new ArrayBuffer(this[e(1156)]-t),i=new Uint8Array(s),r=new Uint8Array(this[e(348)],t,i.length);i.set(r),this[e(975)]=s,this[e(768)]-=t},h[n(794)][n(1222)]=function(t,e){var s=n;if(this[s(1316)](4*t.length),t instanceof Int32Array&&this[s(216)]+this[s(768)]%t.BYTES_PER_ELEMENT===0)h.memcpy(this[s(348)],this[s(216)]+this.position,t[s(975)],0,t.byteLength),this[s(1126)](t[s(189)],e);else for(var i=0;i<t[s(189)];i++)this[s(989)](t[i],e)},h[n(794)][n(566)]=function(t,e){var s=n;if(this[s(1316)](2*t.length),t instanceof Int16Array&&this[s(216)]+this[s(768)]%t.BYTES_PER_ELEMENT===0)h.memcpy(this[s(348)],this[s(216)]+this[s(768)],t[s(975)],0,t[s(783)]),this.mapInt16Array(t[s(189)],e);else for(var i=0;i<t[s(189)];i++)this.writeInt16(t[i],e)},h[n(794)][n(1332)]=function(t){var e=n;if(this._realloc(1*t.length),t instanceof Int8Array&&this[e(216)]+this[e(768)]%t[e(934)]===0)h[e(391)](this._buffer,this[e(216)]+this.position,t.buffer,0,t[e(783)]),this[e(1255)](t[e(189)]);else for(var s=0;s<t[e(189)];s++)this[e(219)](t[s])},h[n(794)][n(1031)]=function(t,e){var s=n;if(this[s(1316)](4*t[s(189)]),t instanceof Uint32Array&&this[s(216)]+this[s(768)]%t.BYTES_PER_ELEMENT===0)h.memcpy(this._buffer,this[s(216)]+this[s(768)],t[s(975)],0,t[s(783)]),this[s(639)](t[s(189)],e);else for(var i=0;i<t[s(189)];i++)this[s(305)](t[i],e)},h.prototype.writeUint16Array=function(t,e){var s=n;if(this[s(1316)](2*t[s(189)]),t instanceof Uint16Array&&this[s(216)]+this.position%t[s(934)]===0)h[s(391)](this[s(348)],this.byteOffset+this[s(768)],t[s(975)],0,t[s(783)]),this[s(513)](t[s(189)],e);else for(var i=0;i<t[s(189)];i++)this[s(614)](t[i],e)},h[n(794)][n(1158)]=function(t){var e=n;if(this[e(1316)](1*t.length),t instanceof Uint8Array&&this[e(216)]+this.position%t.BYTES_PER_ELEMENT===0)h[e(391)](this[e(348)],this[e(216)]+this[e(768)],t[e(975)],0,t[e(783)]),this[e(1071)](t[e(189)]);else for(var s=0;s<t[e(189)];s++)this.writeUint8(t[s])},h[n(794)][n(1275)]=function(t,e){var s=n;if(this[s(1316)](8*t[s(189)]),t instanceof Float64Array&&this.byteOffset+this.position%t.BYTES_PER_ELEMENT===0)h[s(391)](this._buffer,this[s(216)]+this[s(768)],t[s(975)],0,t[s(783)]),this[s(986)](t[s(189)],e);else for(var i=0;i<t.length;i++)this[s(346)](t[i],e)},h[n(794)][n(376)]=function(t,e){var s=n;if(this[s(1316)](4*t.length),t instanceof Float32Array&&this[s(216)]+this[s(768)]%t[s(934)]===0)h[s(391)](this._buffer,this.byteOffset+this[s(768)],t[s(975)],0,t.byteLength),this[s(169)](t[s(189)],e);else for(var i=0;i<t[s(189)];i++)this[s(747)](t[i],e)},h[n(794)][n(989)]=function(t,e){var s=n;this[s(1316)](4),this[s(714)][s(791)](this[s(768)],t,null==e?this.endianness:e),this[s(768)]+=4},h[n(794)][n(1200)]=function(t,e){var s=n;this[s(1316)](2),this[s(714)].setInt16(this[s(768)],t,null==e?this.endianness:e),this[s(768)]+=2},h.prototype[n(219)]=function(t){var e=n;this[e(1316)](1),this._dataView[e(559)](this[e(768)],t),this[e(768)]+=1},h.prototype[n(305)]=function(t,e){var s=n;this[s(1316)](4),this._dataView[s(518)](this[s(768)],t,null==e?this[s(690)]:e),this[s(768)]+=4},h.prototype.writeUint16=function(t,e){var s=n;this._realloc(2),this[s(714)].setUint16(this[s(768)],t,null==e?this.endianness:e),this[s(768)]+=2},h[n(794)][n(1219)]=function(t){var e=n;this._realloc(1),this[e(714)][e(795)](this[e(768)],t),this.position+=1},h[n(794)][n(747)]=function(t,e){var s=n;this[s(1316)](4),this[s(714)].setFloat32(this.position,t,null==e?this[s(690)]:e),this[s(768)]+=4},h.prototype[n(346)]=function(t,e){var s=n;this[s(1316)](8),this[s(714)][s(1024)](this[s(768)],t,null==e?this[s(690)]:e),this[s(768)]+=8},h[n(794)][n(1318)]=function(t,e,s){var i=n;null==s&&(s=t[i(189)]);for(var r=0;r<t.length&&r<s;r++)this.writeUint16(t[i(863)](r),e);for(;r<s;r++)this.writeUint16(0)},h.prototype[n(798)]=function(t,e,s){var i=n,r=0;if(null==e||e==i(1030))if(null!=s){var o=Math[i(469)](t.length,s);for(r=0;r<o;r++)this[i(1219)](t[i(863)](r));for(;r<s;r++)this.writeUint8(0)}else for(r=0;r<t[i(189)];r++)this[i(1219)](t[i(863)](r));else this[i(1158)](new TextEncoder(e)[i(641)](t[i(355)](0,s)))},h[n(794)].writeCString=function(t,e){var s=n,i=0;if(null!=e){var r=Math.min(t[s(189)],e);for(i=0;i<r;i++)this.writeUint8(t.charCodeAt(i));for(;i<e;i++)this.writeUint8(0)}else{for(i=0;i<t[s(189)];i++)this[s(1219)](t[s(863)](i));this.writeUint8(0)}},h[n(794)][n(603)]=function(t,e){for(var s=n,i=0;i<t[s(189)];i+=2){var r=t[i+1];this[s(1170)](r,e[t[i]],e)}},h.prototype[n(1170)]=function(t,e,s){var i,r=n;if("function"==typeof t)return t(this,e);if(typeof t==r(430)&&!(t instanceof Array))return t.set(this,e,s);var o=null,a=r(1030),l=this.position;switch(typeof t==r(422)&&/:/.test(t)&&(i=t.split(":"),t=i[0],o=parseInt(i[1])),"string"==typeof t&&/,/[r(307)](t)&&(i=t[r(183)](","),t=i[0],a=parseInt(i[1])),t){case"uint8":this[r(1219)](e);break;case r(338):this[r(219)](e);break;case r(1262):this.writeUint16(e,this[r(690)]);break;case r(1086):this[r(1200)](e,this[r(690)]);break;case r(335):this[r(305)](e,this.endianness);break;case"int32":this.writeInt32(e,this[r(690)]);break;case r(977):this.writeFloat32(e,this[r(690)]);break;case r(643):this[r(346)](e,this[r(690)]);break;case r(195):this[r(614)](e,h[r(1274)]);break;case"int16be":this[r(1200)](e,h[r(1274)]);break;case"uint32be":this[r(305)](e,h.BIG_ENDIAN);break;case r(634):this[r(989)](e,h[r(1274)]);break;case r(1313):this[r(747)](e,h[r(1274)]);break;case r(1008):this[r(346)](e,h[r(1274)]);break;case"uint16le":this[r(614)](e,h.LITTLE_ENDIAN);break;case r(711):this[r(1200)](e,h[r(175)]);break;case r(406):this.writeUint32(e,h[r(175)]);break;case"int32le":this[r(989)](e,h[r(175)]);break;case r(1048):this[r(747)](e,h[r(175)]);break;case r(1109):this[r(346)](e,h[r(175)]);break;case"cstring":this[r(246)](e,o);break;case r(422):this[r(798)](e,a,o);break;case r(908):this[r(1318)](e,this.endianness,o);break;case r(1131):this[r(1318)](e,h.LITTLE_ENDIAN,o);break;case"u16stringbe":this[r(1318)](e,h.BIG_ENDIAN,o);break;default:if(3==t.length){for(var c=t[1],d=0;d<e.length;d++)this[r(1170)](c,e[d]);break}this[r(603)](t,e)}null!=o&&(this.position=l,this[r(1316)](o),this[r(768)]=l+o)},h[n(794)].writeUint64=function(t){var e=n,s=Math[e(404)](t/l);this[e(305)](s),this[e(305)](4294967295&t)},h[n(794)].writeUint24=function(t){var e=n;this[e(1219)]((16711680&t)>>16),this[e(1219)]((65280&t)>>8),this[e(1219)](255&t)},h[n(794)][n(182)]=function(t,e){var s=n,i=this[s(768)];this[s(411)](t),this[s(305)](e),this[s(411)](i)},h[n(794)][n(1126)]=function(t,e){var s=n;this._realloc(4*t);var i=new Int32Array(this[s(348)],this[s(216)]+this[s(768)],t);return h[s(760)](i,null==e?this[s(690)]:e),this[s(768)]+=4*t,i},h[n(794)][n(578)]=function(t,e){var s=n;this[s(1316)](2*t);var i=new Int16Array(this[s(348)],this[s(216)]+this[s(768)],t);return h[s(760)](i,null==e?this.endianness:e),this.position+=2*t,i},h.prototype[n(1255)]=function(t){var e=n;this[e(1316)](1*t);var s=new Int8Array(this._buffer,this[e(216)]+this.position,t);return this.position+=1*t,s},h[n(794)].mapUint32Array=function(t,e){var s=n;this[s(1316)](4*t);var i=new Uint32Array(this._buffer,this.byteOffset+this[s(768)],t);return h[s(760)](i,null==e?this[s(690)]:e),this[s(768)]+=4*t,i},h[n(794)][n(513)]=function(t,e){var s=n;this[s(1316)](2*t);var i=new Uint16Array(this._buffer,this[s(216)]+this[s(768)],t);return h[s(760)](i,null==e?this[s(690)]:e),this[s(768)]+=2*t,i},h.prototype[n(986)]=function(t,e){var s=n;this[s(1316)](8*t);var i=new Float64Array(this[s(348)],this.byteOffset+this.position,t);return h[s(760)](i,null==e?this[s(690)]:e),this[s(768)]+=8*t,i},h[n(794)][n(169)]=function(t,e){var s=n;this[s(1316)](4*t);var i=new Float32Array(this[s(348)],this[s(216)]+this[s(768)],t);return h[s(760)](i,null==e?this[s(690)]:e),this[s(768)]+=4*t,i};var c=function(t){var e=n;this.buffers=[],this[e(878)]=-1,t&&(this[e(1154)](t),this.bufferIndex=0)};c[n(794)]=new h(new ArrayBuffer,0,h[n(1274)]),c[n(794)].initialized=function(){var t,e=n;return this[e(878)]>-1||(this.buffers[e(189)]>0?0===(t=this.buffers[0])[e(1124)]?(this.buffer=t,this[e(878)]=0,o[e(749)](e(1254),e(1084)),!0):(this[e(699)](),!1):(this[e(699)](),!1))},ArrayBuffer[n(407)]=function(t,e){var s=n;o.debug("ArrayBuffer","Trying to create a new buffer of size: "+(t[s(783)]+e[s(783)]));var i=new Uint8Array(t[s(783)]+e[s(783)]);return i.set(new Uint8Array(t),0),i[s(625)](new Uint8Array(e),t[s(783)]),i[s(975)]},c[n(794)][n(907)]=function(t,e,s){var i,r=n;return(i=new Uint8Array(s)).set(new Uint8Array(t,e,s)),i[r(975)].fileStart=t[r(1124)]+e,i[r(975)][r(739)]=0,i[r(975)]},c[n(794)][n(1154)]=function(t){for(var e=n,s=!0,i=0;i<this[e(1264)].length;i++){var r=this.buffers[i];if(t.fileStart<=r[e(1124)]){if(t[e(1124)]===r[e(1124)]){if(t[e(783)]>r[e(783)]){this[e(1264)][e(1092)](i,1),i--;continue}}else t[e(1124)]+t.byteLength<=r[e(1124)]||(t=this[e(907)](t,0,r[e(1124)]-t[e(1124)])),o[e(749)]("MultiBufferStream",e(627)+t[e(1124)]+e(1248)+t[e(783)]+")"),this[e(1264)][e(1092)](i,0,t),0===i&&(this[e(975)]=t);s=!1;break}if(t[e(1124)]<r[e(1124)]+r.byteLength){var a=r[e(1124)]+r.byteLength-t[e(1124)],h=t[e(783)]-a;if(!(h>0)){s=!1;break}t=this[e(907)](t,a,h)}}s&&(o[e(749)]("MultiBufferStream",e(627)+t[e(1124)]+e(1248)+t[e(783)]+")"),this[e(1264)].push(t),0===i&&(this.buffer=t))},c[n(794)].logBufferLevel=function(t){var e,s,i,r,a,h=n,l=[],c="";for(i=0,r=0,e=0;e<this[h(1264)].length;e++)s=this[h(1264)][e],0===e?(a={},l[h(967)](a),a[h(741)]=s.fileStart,a[h(1307)]=s[h(1124)]+s[h(783)],c+="["+a[h(741)]+"-"):a[h(1307)]===s[h(1124)]?a[h(1307)]=s[h(1124)]+s.byteLength:((a={})[h(741)]=s[h(1124)],c+=l[l[h(189)]-1][h(1307)]-1+"], ["+a[h(741)]+"-",a[h(1307)]=s.fileStart+s[h(783)],l[h(967)](a)),i+=s[h(739)],r+=s[h(783)];l.length>0&&(c+=a[h(1307)]-1+"]");var d=t?o[h(288)]:o[h(749)];0===this[h(1264)][h(189)]?d(h(1254),h(1015)):d(h(1254),""+this[h(1264)][h(189)]+h(717)+i+"/"+r+" bytes), continuous ranges: "+c)},c[n(794)][n(256)]=function(){var t,e,s=n;for(t=0;t<this.buffers[s(189)];t++)(e=this[s(1264)][t])[s(739)]===e.byteLength&&(o[s(749)](s(1254),s(361)+t),this[s(1264)][s(1092)](t,1),t--)},c.prototype.mergeNextBuffer=function(){var t,e=n;if(this.bufferIndex+1<this[e(1264)].length){if((t=this[e(1264)][this[e(878)]+1])[e(1124)]===this[e(975)][e(1124)]+this[e(975)][e(783)]){var s=this[e(975)].byteLength,i=this[e(975)].usedBytes,r=this[e(975)][e(1124)];return this[e(1264)][this[e(878)]]=ArrayBuffer[e(407)](this.buffer,t),this[e(975)]=this[e(1264)][this[e(878)]],this[e(1264)][e(1092)](this.bufferIndex+1,1),this[e(975)][e(739)]=i,this[e(975)][e(1124)]=r,o[e(749)](e(762),e(687)+s+"->"+this[e(975)][e(783)]+")"),!0}return!1}return!1},c[n(794)][n(1101)]=function(t,e,s){var i,r=n,a=null,h=-1;for(i=!0===t?0:this.bufferIndex;i<this[r(1264)][r(189)]&&(a=this[r(1264)][i])[r(1124)]<=e;)h=i,s&&(a.fileStart+a[r(783)]<=e?a.usedBytes=a[r(783)]:a[r(739)]=e-a[r(1124)],this.logBufferLevel()),i++;return-1!==h?(a=this[r(1264)][h])[r(1124)]+a.byteLength>=e?(o.debug(r(1254),r(427)+h),h):-1:-1},c[n(794)][n(709)]=function(t){var e,s,i,r=n,o=void 0!==t?t:this.bufferIndex;if(s=this.buffers[o],this.buffers.length>o+1)for(e=o+1;e<this[r(1264)][r(189)]&&(i=this[r(1264)][e])[r(1124)]===s[r(1124)]+s.byteLength;e++)s=i;return s.fileStart+s[r(783)]},c.prototype[n(799)]=function(t){var e=n,s=this[e(1101)](!0,t,!1);return-1!==s?this[e(709)](s):t},c.prototype[n(976)]=function(t){this[n(975)].usedBytes+=t,this.logBufferLevel()},c[n(794)][n(987)]=function(){var t=n;this[t(975)][t(739)]=this[t(975)][t(783)],this[t(699)]()},c[n(794)].seek=function(t,e,s){var i,r=n;return-1!==(i=this[r(1101)](e,t,s))?(this[r(975)]=this[r(1264)][i],this[r(878)]=i,this.position=t-this[r(975)].fileStart,o[r(749)](r(1254),r(1294)+this.position),!0):(o.debug(r(1254),r(235)+t+r(1211)),!1)},c.prototype[n(972)]=function(){var t=n;if(-1===this[t(878)]||null===this[t(1264)][this[t(878)]])throw t(1089);return this[t(1264)][this[t(878)]][t(1124)]+this[t(768)]},c.prototype[n(387)]=function(){return this.byteLength},c.prototype[n(132)]=function(){var t=n;if(-1===this[t(878)]||null===this.buffers[this[t(878)]])throw"Error accessing position in the MultiBufferStream";return this.buffers[this[t(878)]][t(1124)]+this[t(783)]},c[n(794)][n(319)]=function(){this.buffers=[],this.bufferIndex=-1},"object"!==n(754)&&(e.MultiBufferStream=c);var d=function(){var t=n,e=[];e[3]=t(888),e[4]=t(738),e[5]=t(1104),e[6]=t(780),this[t(793)]=function(t){return e[t]};var s=this,i={};return this[t(1150)]=function(s){var r,n,a,h=t,l=0;for(r=s.readUint8(),a=s.readUint8();128&a;)l=(127&a)<<7,a=s[h(771)]();return l+=127&a,o[h(749)](h(1229),"Found "+(e[r]||h(208)+r)+", size "+l+h(268)+s[h(972)]()),(n=e[r]?new i[e[r]](l):new(i[h(162)])(l)).parse(s),n},i.Descriptor=function(e,s){var i=t;this[i(1233)]=e,this[i(316)]=s,this[i(1216)]=[]},i[t(162)][t(794)][t(1094)]=function(e){var s=t;this[s(1181)]=e.readUint8Array(this[s(316)])},i.Descriptor.prototype.findDescriptor=function(e){for(var s=t,i=0;i<this[s(1216)].length;i++)if(this[s(1216)][i][s(1233)]==e)return this.descs[i];return null},i[t(162)][t(794)][t(449)]=function(e){for(var i=t,r=e[i(768)];e.position<r+this[i(316)];){var n=s.parseOneDescriptor(e);this[i(1216)][i(967)](n)}},i[t(888)]=function(e){var s=t;i.Descriptor[s(314)](this,3,e)},i.ES_Descriptor[t(794)]=new i.Descriptor,i.ES_Descriptor.prototype[t(1094)]=function(e){var s=t;if(this.ES_ID=e.readUint16(),this[s(360)]=e[s(771)](),this[s(316)]-=3,128&this.flags?(this[s(1046)]=e[s(997)](),this[s(316)]-=2):this[s(1046)]=0,64&this[s(360)]){var i=e[s(771)]();this[s(1238)]=e[s(927)](i),this[s(316)]-=i+1}else this[s(1238)]="";32&this[s(360)]?(this[s(1242)]=e[s(997)](),this[s(316)]-=2):this[s(1242)]=0,this[s(449)](e)},i[t(888)][t(794)][t(874)]=function(e){var s=t,i=this[s(223)](4);return i?i[s(1007)]:0},i[t(888)].prototype[t(287)]=function(e){var s=t,i=this[s(223)](4);if(!i)return null;var r=i[s(223)](5);if(r&&r[s(1181)]){var n=(248&r[s(1181)][0])>>3;return 31===n&&r[s(1181)][s(189)]>=2&&(n=32+((7&r[s(1181)][0])<<3)+((224&r[s(1181)][1])>>5)),n}return null},i[t(738)]=function(t){i.Descriptor.call(this,4,t)},i[t(738)].prototype=new i.Descriptor,i[t(738)].prototype[t(1094)]=function(e){var s=t;this.oti=e[s(771)](),this[s(710)]=e[s(771)](),this[s(350)]=!!(this[s(710)]>>1&1),this.streamType=this[s(710)]>>>2,this[s(671)]=e[s(1001)](),this.maxBitrate=e.readUint32(),this[s(716)]=e.readUint32(),this[s(316)]-=13,this.parseRemainingDescriptors(e)},i[t(1104)]=function(e){var s=t;i.Descriptor[s(314)](this,5,e)},i.DecoderSpecificInfo[t(794)]=new(i[t(162)]),i.SLConfigDescriptor=function(e){var s=t;i[s(162)][s(314)](this,6,e)},i[t(780)].prototype=new i.Descriptor,this};"object"!==n(754)&&(e[n(1229)]=d);var u={ERR_INVALID_DATA:-1,ERR_NOT_ENOUGH_DATA:0,OK:1,BASIC_BOXES:[n(357),n(994),n(1179),n(1189),"meco",n(731)],FULL_BOXES:[n(922),n(924),n(735),"xml ",n(816),n(1259),n(837)],CONTAINER_BOXES:[["moov",[n(485),n(329)]],[n(485)],[n(852)],[n(1202)],[n(1077)],[n(220)],[n(170),["sgpd",n(304)]],[n(448),["trex"]],[n(1268),[n(293)]],[n(293),["trun","sgpd",n(304)]],["vttc"],["tref"],["iref"],[n(1127),[n(461)]],["meco"],[n(497)],[n(294)],[n(731)],[n(1310)],[n(979)],[n(647)],[n(959)],["trgr"],[n(381),[n(806)]],[n(455),[n(606)]],[n(918)],[n(911)],[n(300)],[n(809),[n(176)]]],boxCodes:[],fullBoxCodes:[],containerBoxCodes:[],sampleEntryCodes:{},sampleGroupEntryCodes:[],trackGroupTypes:[],UUIDBoxes:{},UUIDs:[],initialize:function(){var t=n;u.FullBox[t(794)]=new(u[t(734)]),u[t(154)][t(794)]=new(u[t(734)]),u.SampleEntry[t(794)]=new u.Box,u[t(622)][t(794)]=new(u[t(1192)]),u[t(615)][t(664)](function(e){u[t(866)](e)}),u.FULL_BOXES[t(664)](function(e){u[t(396)](e)}),u[t(946)][t(664)](function(e){u[t(1130)](e[0],null,e[1])})},Box:function(t,e,s){var i=n;this.type=t,this[i(316)]=e,this[i(861)]=s},FullBox:function(t,e,s){var i=n;u[i(734)][i(314)](this,t,e,s),this.flags=0,this[i(425)]=0},ContainerBox:function(t,e,s){var i=n;u[i(734)][i(314)](this,t,e,s),this[i(511)]=[]},SampleEntry:function(t,e,s,i){var r=n;u.ContainerBox[r(314)](this,t,e),this[r(733)]=s,this[r(741)]=i},SampleGroupEntry:function(t){this.grouping_type=t},TrackGroupTypeBox:function(t,e){u[n(1192)].call(this,t,e)},createBoxCtor:function(t,e){var s=n;u.boxCodes[s(967)](t),u[t+"Box"]=function(e){var i=s;u[i(734)][i(314)](this,t,e)},u[t+s(734)][s(794)]=new(u[s(734)]),e&&(u[t+s(734)].prototype[s(1094)]=e)},createFullBoxCtor:function(t,e){var s=n;u[t+s(734)]=function(e){u[s(1192)].call(this,t,e)},u[t+"Box"][s(794)]=new(u[s(1192)]),u[t+s(734)][s(794)][s(1094)]=function(t){var i=s;this[i(974)](t),e&&e[i(314)](this,t)}},addSubBoxArrays:function(t){var e=n;if(t){this.subBoxNames=t;for(var s=t[e(189)],i=0;i<s;i++)this[t[i]+"s"]=[]}},createContainerBoxCtor:function(t,e,s){var i=n;u[t+i(734)]=function(e){var r=i;u[r(154)][r(314)](this,t,e),u[r(1322)].call(this,s)},u[t+"Box"][i(794)]=new(u[i(154)]),e&&(u[t+i(734)].prototype[i(1094)]=e)},createMediaSampleEntryCtor:function(t,e,s){var i=n;u[i(1227)][t]=[],u[t+"SampleEntry"]=function(t,e){var r=i;u[r(502)][r(314)](this,t,e),u[r(1322)][r(314)](this,s)},u[t+i(502)][i(794)]=new u.SampleEntry,e&&(u[t+"SampleEntry"][i(794)][i(1094)]=e)},createSampleEntryCtor:function(t,e,s,i){var r=n;u[r(1227)][t][r(967)](e),u[e+"SampleEntry"]=function(s){var n=r;u[t+n(502)][n(314)](this,e,s),u[n(1322)][n(314)](this,i)},u[e+"SampleEntry"][r(794)]=new u[t+"SampleEntry"],s&&(u[e+r(502)][r(794)][r(1094)]=s)},createEncryptedSampleEntryCtor:function(t,e,s){var i=n;u.createSampleEntryCtor[i(314)](this,t,e,s,[i(979)])},createSampleGroupCtor:function(t,e){var s=n;u[t+s(1057)]=function(e){var i=s;u[i(1057)][i(314)](this,t,e)},u[t+s(1057)][s(794)]=new u.SampleGroupEntry,e&&(u[t+s(1057)].prototype[s(1094)]=e)},createTrackGroupCtor:function(t,e){var s=n;u[t+"TrackGroupTypeBox"]=function(e){u[dm(622)].call(this,t,e)},u[t+s(622)][s(794)]=new(u[s(622)]),e&&(u[t+s(622)].prototype.parse=e)},createUUIDBox:function(t,e,s,i){var r=n;u.UUIDs[r(967)](t),u[r(879)][t]=function(i){var n=r;e?u.FullBox[n(314)](this,n(861),i,t):s?u[n(154)][n(314)](this,n(861),i,t):u[n(734)][n(314)](this,n(861),i,t)},u[r(879)][t].prototype=e?new(u[r(1192)]):s?new u.ContainerBox:new(u[r(734)]),i&&(e?u[r(879)][t][r(794)][r(1094)]=function(t){var e=r;this.parseFullHeader(t),i&&i[e(314)](this,t)}:u.UUIDBoxes[t][r(794)][r(1094)]=i)}};function p(t,e){this.x=t,this.y=e}function f(t,e){var s=n;this.bad_pixel_row=t,this[s(728)]=e}u[n(379)](),u.TKHD_FLAG_ENABLED=1,u[n(1116)]=2,u[n(544)]=4,u[n(715)]=1,u[n(435)]=2,u[n(530)]=8,u[n(468)]=16,u[n(279)]=32,u[n(351)]=65536,u[n(1334)]=131072,u.TRUN_FLAGS_DATA_OFFSET=1,u[n(525)]=4,u[n(482)]=256,u.TRUN_FLAGS_SIZE=512,u[n(229)]=1024,u[n(826)]=2048,u[n(734)][n(794)][n(542)]=function(t){var e=n;return this.addBox(new(u[t+e(734)]))},u[n(734)][n(794)][n(301)]=function(t){var e=n;return this[e(511)].push(t),this[t[e(1036)]+"s"]?this[t[e(1036)]+"s"][e(967)](t):this[t.type]=t,t},u[n(734)].prototype[n(625)]=function(t,e){return this[t]=e,this},u[n(734)][n(794)][n(1005)]=function(t,e){var s=n,i=e||s(204);return!this[i]&&(this[i]=[]),this[i][s(967)](t),this},"undefined"!==n(430)&&(e[n(424)]=u),u.parseUUID=function(t){return u.parseHex16(t)},u[n(1122)]=function(t){for(var e=n,s="",i=0;i<16;i++){var r=t.readUint8()[e(847)](16);s+=1===r.length?"0"+r:r}return s},u[n(302)]=function(t,e,s){var i,r,a,h=n,l=t.getPosition(),c=0;if(t[h(132)]()-l<8)return o[h(749)]("BoxParser",h(1333)),{code:u[h(389)]};if(s&&s<8)return o[h(749)](h(424),h(313)),{code:u[h(389)]};var d=t[h(885)](),p=t[h(927)](4);if(o[h(749)](h(424),h(605)+p+h(1347)+d+h(268)+l),c=8,p==h(861)){if(t[h(132)]()-t[h(972)]()<16||s-c<16)return t[h(411)](l),o.debug("BoxParser",h(1168)),{code:u[h(389)]};a=u.parseUUID(t),c+=16}if(1==d){if(t[h(132)]()-t[h(972)]()<8||s&&s-c<8)return t[h(411)](l),{code:u[h(389)]};d=t[h(1195)](),c+=8}else if(0===d)if(s)d=s;else if(p!==h(357))return i=new u.Box(p,d),{code:u.OK,box:i,size:i[h(316)]};return 0!==d&&d<c||0!==d&&s&&d>s?{code:u[h(389)],type:p,size:d,hdr_size:c,start:l}:0!==d&&l+d>t[h(132)]()?(t[h(411)](l),{code:u[h(389)],type:p,size:d,hdr_size:c,start:l}):e?{code:u.OK,type:p,size:d,hdr_size:c,start:l}:(u[p+h(734)]?i=new(u[p+h(734)])(d):p!==h(861)?(i=new(u[h(734)])(p,d))[h(1284)]=!0:u[h(879)][a]?i=new(u[h(879)][a])(d):((i=new u.Box(p,d))[h(861)]=a,i.has_unparsed_data=!0),i[h(733)]=c,i.start=l,i[h(1212)]===u[h(734)].prototype[h(1212)]&&"mdat"!==i[h(1036)]&&i[h(215)](t),i.parse(t),(r=t.getPosition()-(i.start+i.size))<0?t.seek(i[h(741)]+i[h(316)]):r>0&&0!==i.size&&t[h(411)](i[h(741)]+i[h(316)]),{code:u.OK,box:i,size:i[h(316)]})},u[n(734)].prototype.parse=function(t){var e=n;this[e(1036)]!=e(357)?this[e(1181)]=t[e(818)](this[e(316)]-this[e(733)]):0===this[e(316)]?t[e(411)](t[e(132)]()):t[e(411)](this[e(741)]+this[e(316)])},u[n(734)][n(794)][n(215)]=function(t){var e=n;this.data=t.readUint8Array(this[e(316)]-this[e(733)]),t[e(768)]-=this[e(316)]-this.hdr_size},u.FullBox[n(794)].parseDataAndRewind=function(t){var e=n;this.parseFullHeader(t),this[e(1181)]=t.readUint8Array(this[e(316)]-this.hdr_size),this[e(733)]-=4,t.position-=this[e(316)]-this[e(733)]},u[n(1192)][n(794)][n(974)]=function(t){var e=n;this[e(425)]=t[e(771)](),this.flags=t[e(1001)](),this[e(733)]+=4},u[n(1192)].prototype[n(1094)]=function(t){var e=n;this[e(974)](t),this[e(1181)]=t[e(818)](this[e(316)]-this[e(733)])},u[n(154)].prototype[n(1094)]=function(t){for(var e,s,i=n;t[i(972)]()<this[i(741)]+this[i(316)];){if((e=u.parseOneBox(t,!1,this[i(316)]-(t[i(972)]()-this[i(741)]))).code!==u.OK)return;if(s=e[i(683)],this[i(511)][i(967)](s),this[i(412)]&&-1!=this.subBoxNames[i(1260)](s.type))this[this[i(412)][this[i(412)][i(1260)](s[i(1036)])]+"s"].push(s);else{var r=s[i(1036)]!==i(861)?s[i(1036)]:s.uuid;this[r]||(this[r]=s)}}},u.Box.prototype[n(339)]=function(t){var e=n;this[e(284)]=t[e(997)]();var s=[];s[0]=this.language>>10&31,s[1]=this[e(284)]>>5&31,s[2]=31&this[e(284)],this[e(602)]=String[e(945)](s[0]+96,s[1]+96,s[2]+96)},u.SAMPLE_ENTRY_TYPE_VISUAL=n(778),u.SAMPLE_ENTRY_TYPE_AUDIO=n(1148),u.SAMPLE_ENTRY_TYPE_HINT=n(484),u[n(663)]=n(1097),u[n(1273)]="Subtitle",u[n(612)]=n(203),u.SAMPLE_ENTRY_TYPE_TEXT="Text",u[n(502)][n(794)][n(1098)]=function(t){var e=n;t.readUint8Array(6),this[e(1297)]=t[e(997)](),this.hdr_size+=8},u[n(502)][n(794)].parse=function(t){var e=n;this[e(1098)](t),this.data=t.readUint8Array(this[e(316)]-this[e(733)])},u[n(502)][n(794)][n(215)]=function(t){var e=n;this.parseHeader(t),this[e(1181)]=t.readUint8Array(this.size-this.hdr_size),this[e(733)]-=8,t[e(768)]-=this[e(316)]-this[e(733)]},u.SampleEntry[n(794)][n(736)]=function(t){var e=n;u.ContainerBox[e(794)][e(1094)][e(314)](this,t)},u[n(180)](u[n(140)]),u.createMediaSampleEntryCtor(u[n(663)]),u.createMediaSampleEntryCtor(u[n(1273)]),u[n(180)](u.SAMPLE_ENTRY_TYPE_SYSTEM),u[n(180)](u[n(263)]),u.createMediaSampleEntryCtor(u.SAMPLE_ENTRY_TYPE_VISUAL,function(t){var e,s=n;this[s(1098)](t),t.readUint16(),t[s(997)](),t[s(523)](3),this[s(347)]=t[s(997)](),this[s(280)]=t[s(997)](),this[s(763)]=t[s(885)](),this[s(999)]=t[s(885)](),t[s(885)](),this.frame_count=t[s(997)](),e=Math.min(31,t[s(771)]()),this[s(990)]=t[s(927)](e),e<31&&t.readString(31-e),this.depth=t[s(997)](),t[s(997)](),this.parseFooter(t)}),u.createMediaSampleEntryCtor(u.SAMPLE_ENTRY_TYPE_AUDIO,function(t){var e=n;this.parseHeader(t),t[e(523)](2),this[e(688)]=t[e(997)](),this[e(345)]=t[e(997)](),t[e(997)](),t[e(997)](),this[e(787)]=t[e(885)]()/65536,this[e(736)](t)}),u[n(825)](u[n(802)],n(902)),u.createSampleEntryCtor(u[n(802)],"avc2"),u.createSampleEntryCtor(u[n(802)],n(321)),u[n(825)](u[n(802)],n(1010)),u[n(825)](u[n(802)],n(211)),u.createSampleEntryCtor(u[n(802)],n(941)),u[n(825)](u[n(802)],n(269)),u.createSampleEntryCtor(u[n(802)],"hev1"),u[n(825)](u[n(802)],n(384)),u[n(825)](u[n(802)],"lhe1"),u[n(825)](u[n(802)],n(815)),u[n(825)](u.SAMPLE_ENTRY_TYPE_VISUAL,"dvhe"),u[n(825)](u[n(802)],n(705)),u[n(825)](u.SAMPLE_ENTRY_TYPE_VISUAL,n(456)),u[n(825)](u.SAMPLE_ENTRY_TYPE_VISUAL,n(192)),u[n(825)](u[n(802)],n(1206)),u[n(825)](u.SAMPLE_ENTRY_TYPE_VISUAL,n(545)),u[n(825)](u[n(802)],n(980)),u[n(825)](u[n(802)],n(510)),u[n(825)](u.SAMPLE_ENTRY_TYPE_VISUAL,n(873)),u[n(825)](u.SAMPLE_ENTRY_TYPE_VISUAL,n(599)),u[n(825)](u[n(802)],n(315)),u[n(825)](u.SAMPLE_ENTRY_TYPE_VISUAL,n(1247)),u.createSampleEntryCtor(u[n(218)],"mp4a"),u[n(825)](u[n(218)],n(320)),u[n(825)](u[n(218)],n(616)),u[n(825)](u.SAMPLE_ENTRY_TYPE_AUDIO,n(887)),u.createSampleEntryCtor(u.SAMPLE_ENTRY_TYPE_AUDIO,"Opus"),u.createSampleEntryCtor(u[n(218)],"mha1"),u[n(825)](u[n(218)],n(433)),u[n(825)](u.SAMPLE_ENTRY_TYPE_AUDIO,"mhm1"),u.createSampleEntryCtor(u[n(218)],n(514)),u[n(130)](u[n(802)],n(773)),u[n(130)](u[n(218)],"enca"),u[n(130)](u[n(1273)],"encu"),u[n(130)](u[n(612)],n(571)),u[n(130)](u.SAMPLE_ENTRY_TYPE_TEXT,n(1270)),u.createEncryptedSampleEntryCtor(u.SAMPLE_ENTRY_TYPE_METADATA,n(1157)),u[n(866)](n(1166),function(t){var e=n,s=16*(1+(1&(1&t[e(771)]())));this[e(136)]=[];for(var i=0;i<3;i++)this.layer_size[i]=16==s?t[e(997)]():t[e(885)]()}),u[n(866)](n(290),function(t){var e=n;this[e(998)]=t[e(771)]()}),u[n(396)](n(410),function(t){var e=n;this[e(1241)]=t[e(694)]();var s=this[e(316)]-this.hdr_size-(this[e(1241)][e(189)]+1);this[e(206)]=t[e(818)](s)}),u[n(866)](n(1103),function(t){var e=n,s=t[e(771)]();if(!(s>>7&!1)&&(this[e(425)]=127&s,1===this[e(425)]&&(s=t[e(771)](),this[e(556)]=s>>5&7,this[e(324)]=31&s,s=t[e(771)](),this[e(281)]=s>>7&1,this.high_bitdepth=s>>6&1,this[e(1003)]=s>>5&1,this.monochrome=s>>4&1,this.chroma_subsampling_x=s>>3&1,this.chroma_subsampling_y=s>>2&1,this[e(205)]=3&s,s=t[e(771)](),this[e(1151)]=s>>5&7,0===this[e(1151)]))){if(this[e(553)]=s>>4&1,1===this.initial_presentation_delay_present)this[e(1113)]=15&s;else if(this.reserved_2=15&s,0!==this.reserved_2)return;var i=this[e(316)]-this[e(733)]-4;this[e(1292)]=t[e(818)](i)}}),u[n(866)](n(1267),function(t){var e,s,i=n;for(this.configurationVersion=t.readUint8(),this[i(784)]=t.readUint8(),this[i(1152)]=t.readUint8(),this[i(1323)]=t[i(771)](),this.lengthSizeMinusOne=3&t[i(771)](),this[i(1266)]=31&t[i(771)](),s=this.size-this[i(733)]-6,this[i(224)]=[],e=0;e<this.nb_SPS_nalus;e++)this[i(224)][e]={},this[i(224)][e][i(189)]=t[i(997)](),this[i(224)][e][i(501)]=t.readUint8Array(this[i(224)][e][i(189)]),s-=2+this[i(224)][e].length;for(this.nb_PPS_nalus=t[i(771)](),s--,this[i(971)]=[],e=0;e<this[i(217)];e++)this[i(971)][e]={},this.PPS[e][i(189)]=t[i(997)](),this[i(971)][e][i(501)]=t[i(818)](this[i(971)][e][i(189)]),s-=2+this[i(971)][e][i(189)];s>0&&(this[i(757)]=t[i(818)](s))}),u[n(866)]("btrt",function(t){var e=n;this[e(900)]=t[e(885)](),this[e(274)]=t[e(885)](),this[e(716)]=t[e(885)]()}),u[n(396)](n(385),function(t){var e=n,s=t[e(771)]();this[e(413)]=!(128&~s),this[e(310)]=!(64&~s),this[e(177)]=(63&s)>>2,t[e(1001)]()}),u[n(866)]("cdef",function(t){var e,s=n;for(this.channel_count=t[s(997)](),this[s(1205)]=[],this[s(1243)]=[],this[s(1328)]=[],e=0;e<this[s(688)];e++)this[s(1205)][s(967)](t[s(997)]()),this[s(1243)][s(967)](t[s(997)]()),this[s(1328)][s(967)](t[s(997)]())}),u[n(866)](n(1186),function(t){var e=n;this[e(1296)]=t[e(885)](),this[e(495)]=t[e(885)](),this.cleanApertureHeightN=t[e(885)](),this[e(562)]=t[e(885)](),this[e(1054)]=t[e(885)](),this[e(399)]=t.readUint32(),this[e(593)]=t[e(885)](),this[e(984)]=t[e(885)]()}),u.createBoxCtor("clli",function(t){var e=n;this[e(354)]=t[e(997)](),this[e(844)]=t[e(997)]()}),u.createFullBoxCtor(n(157),function(t){var e=n;1&this.flags&&(this[e(517)]=t[e(590)]()),2&this[e(360)]&&(this[e(340)]=t[e(590)]()),4&this[e(360)]&&(this.pos_z=t.readInt32()),8&this[e(360)]&&(0==this[e(425)]?16&this[e(360)]?(this[e(522)]=t.readInt32(),this[e(910)]=t.readInt32(),this.quat_z=t[e(590)]()):(this[e(522)]=t.readInt16(),this.quat_y=t[e(707)](),this[e(532)]=t[e(707)]()):this[e(425)]),32&this[e(360)]&&(this.id=t[e(885)]())}),u[n(396)](n(1038),function(t){var e=n;this[e(915)]=t[e(590)](),this.principal_point_x=t[e(590)](),this[e(961)]=t[e(590)](),1&this[e(360)]&&(this[e(1014)]=t[e(590)](),this.skew_factor=t[e(590)]())}),u[n(866)](n(678),function(t){var e=n;for(this[e(1315)]=t[e(885)](),this[e(1120)]=[],this[e(212)]=[],i=0;i<this.component_count;i++){var s=t[e(997)]();this[e(1120)][e(967)](s),s>=32768&&this[e(212)][e(967)](t[e(694)]())}}),u[n(396)](n(1009),function(t){var e,s,i=n;if(e=t[i(885)](),this[i(1180)]=[],0===this[i(425)])for(s=0;s<e;s++)this.chunk_offsets[i(967)](t[i(1195)]())}),u.createFullBoxCtor(n(336),function(t){var e=n;this[e(258)]=t[e(997)](),this[e(400)]=t[e(997)]()}),u[n(866)](n(1129),function(t){var e=n;if(this[e(397)]=t[e(927)](4),this[e(397)]===e(689)){this[e(555)]=t.readUint16(),this.transfer_characteristics=t[e(997)](),this[e(831)]=t[e(997)]();var s=t[e(771)]();this[e(1028)]=s>>7}else this[e(397)]===e(1064)?this.ICC_profile=t.readUint8Array(this[e(316)]-4):"prof"===this[e(397)]&&(this[e(692)]=t[e(818)](this[e(316)]-4))}),u.createFullBoxCtor(n(1125),function(t){var e=n;this[e(339)](t),this[e(839)]=t.readCString()}),u[n(396)]("cslg",function(t){var e=n;0===this[e(425)]&&(this[e(691)]=t[e(590)](),this.leastDecodeToDisplayDelta=t[e(590)](),this.greatestDecodeToDisplayDelta=t.readInt32(),this[e(1207)]=t[e(590)](),this.compositionEndTime=t[e(590)]())}),u[n(396)](n(909),function(t){var e,s,i=n;if(e=t.readUint32(),this.sample_counts=[],this.sample_offsets=[],0===this[i(425)])for(s=0;s<e;s++){this[i(512)][i(967)](t.readUint32());var r=t[i(590)]();this[i(515)][i(967)](r)}else if(1==this[i(425)])for(s=0;s<e;s++)this.sample_counts[i(967)](t[i(885)]()),this[i(515)][i(967)](t.readInt32())}),u[n(866)](n(135),function(t){var e=n,s=t.readUint8(),i=t.readUint8(),r=t[e(771)]();this[e(704)]=s>>6,this[e(644)]=s>>1&31,this[e(405)]=(1&s)<<2|i>>6&3,this.acmod=i>>3&7,this[e(951)]=i>>2&1,this[e(1118)]=3&i|r>>5&7}),u[n(866)](n(882),function(t){var e=n,s=t[e(997)]();this[e(460)]=s>>3,this.num_ind_sub=7&s,this[e(409)]=[];for(var i=0;i<this[e(677)]+1;i++){var r={};this[e(409)].push(r);var o=t[e(771)](),a=t.readUint8(),h=t[e(771)]();r[e(704)]=o>>6,r[e(644)]=o>>1&31,r.bsmod=(1&o)<<4|a>>4&15,r[e(833)]=a>>1&7,r.lfeon=1&a,r[e(723)]=h>>1&15,r[e(723)]>0&&(r[e(363)]=(1&h)<<8|t.readUint8())}}),u[n(396)](n(221),function(t){var e=n,s=[],i=[e(1314),e(1235),"APPLICATION",e(899),e(631),e(443),e(936),"RESERVED"];for(this[e(974)](t);;){var r=t[e(771)](),o=Math.min(127&r,i[e(189)]-1);if(o?t[e(818)](t[e(1001)]()):(t[e(818)](13),this[e(787)]=t[e(885)]()>>12,t[e(818)](20)),s[e(967)](i[o]),128&r)break}this[e(505)]=s[e(189)]+" ("+s[e(1339)](", ")+")"}),u.createBoxCtor(n(939),function(t){var e=n;this[e(1188)]=t[e(1195)]()}),u[n(866)](n(1231),function(t){var e=n;this[e(1043)]=t[e(885)]()}),u[n(866)]("dmed",function(t){this.bytessent=t.readUint64()}),u[n(866)](n(524),function(t){var e=n;if(this.Version=t[e(771)](),this.OutputChannelCount=t.readUint8(),this[e(651)]=t[e(997)](),this[e(640)]=t[e(885)](),this[e(1190)]=t.readInt16(),this[e(476)]=t[e(771)](),0!==this[e(476)]){this[e(458)]=t[e(771)](),this.CoupledCount=t.readUint8(),this[e(451)]=[];for(var s=0;s<this.OutputChannelCount;s++)this[e(451)][s]=t.readUint8()}}),u[n(396)](n(916),function(t){var e,s,i=n;this[i(204)]=[];for(var r=t[i(885)](),o=0;o<r;o++){if((e=u[i(302)](t,!1,this[i(316)]-(t[i(972)]()-this[i(741)]))).code!==u.OK)return;s=e[i(683)],this[i(204)][i(967)](s)}}),u[n(866)](n(985),function(t){var e=n;this.bytessent=t[e(1195)]()}),u.createFullBoxCtor(n(1213),function(t){var e=n;this.extended_language=t[e(927)](this.size-this[e(733)])}),u[n(396)](n(675),function(t){var e=n;this[e(204)]=[];for(var s=t[e(885)](),i=0;i<s;i++){var r={};this[e(204)][e(967)](r),1===this[e(425)]?(r[e(1349)]=t.readUint64(),r[e(1e3)]=t[e(872)]()):(r.segment_duration=t[e(885)](),r.media_time=t.readInt32()),r[e(1056)]=t[e(707)](),r[e(470)]=t[e(707)]()}}),u[n(396)](n(533),function(t){var e=n;1==this[e(425)]?(this[e(439)]=t[e(885)](),this[e(453)]=t[e(1195)](),this[e(849)]=t[e(885)](),this.id=t[e(885)](),this[e(921)]=t.readCString(),this[e(299)]=t.readCString()):(this[e(921)]=t[e(694)](),this[e(299)]=t[e(694)](),this[e(439)]=t[e(885)](),this[e(1119)]=t.readUint32(),this.event_duration=t[e(885)](),this.id=t.readUint32());var s=this[e(316)]-this[e(733)]-(16+(this[e(921)][e(189)]+1)+(this[e(299)][e(189)]+1));1==this[e(425)]&&(s-=4),this[e(613)]=t[e(818)](s)}),u[n(785)]=function(t,e){var s=n;u[t+s(734)]=function(e){var i=s;u[i(1192)][i(314)](this,t,e)},u[t+s(734)][s(794)]=new(u[s(1192)]),u[t+"Box"][s(794)][s(1094)]=function(t){var r=s;if(this[r(974)](t),e)e[r(314)](this,t);else for(this[r(137)]=t[r(885)](),this[r(729)]=t[r(885)](),this[r(382)]=[],i=0;i<this[r(729)];i++){var n=t[r(885)]();this[r(382)][r(967)](n)}}},u[n(785)](n(401)),u[n(785)](n(519)),u.createEntityToGroupCtor("albc"),u[n(785)](n(583)),u[n(785)](n(1093)),u[n(785)]("dobr"),u[n(785)](n(581)),u[n(785)]("favc"),u.createEntityToGroupCtor(n(1257)),u.createEntityToGroupCtor(n(943)),u[n(785)](n(367)),u[n(785)](n(889)),u[n(785)]("ster"),u.createEntityToGroupCtor("tsyn"),u[n(785)](n(191)),u[n(785)](n(777)),u.createFullBoxCtor(n(144),function(t){var e=n,s=t[e(818)](this[e(316)]-this.hdr_size);if(typeof d!==e(754)){var i=new d;this[e(426)]=i[e(1150)](new h(s[e(975)],0,h[e(1274)]))}}),u.createBoxCtor(n(570),function(t){var e=n;this.fieldCount=t[e(771)](),this[e(1172)]=t[e(771)]()}),u[n(866)](n(1226),function(t){var e=n;this[e(1035)]=t[e(927)](4)}),u[n(866)]("ftyp",function(t){var e=n,s=this[e(316)]-this[e(733)];this[e(782)]=t[e(927)](4),this[e(563)]=t[e(885)](),s-=8,this[e(174)]=[];for(var i=0;s>=4;)this[e(174)][i]=t.readString(4),s-=4,i++}),u.createFullBoxCtor(n(841),function(t){var e=n;0===this[e(425)]&&(t[e(885)](),this[e(277)]=t.readString(4),t[e(523)](3),this[e(1018)]=t[e(927)](this[e(316)]-this[e(733)]-20),"\0"===this[e(1018)][this[e(1018)][e(189)]-1]&&(this[e(1018)]=this[e(1018)].slice(0,-1)))}),u.createBoxCtor(n(237),function(t){var e,s,i,r,o=n;this.configurationVersion=t.readUint8(),r=t.readUint8(),this[o(1335)]=r>>6,this[o(931)]=(32&r)>>5,this[o(352)]=31&r,this[o(507)]=t[o(885)](),this[o(877)]=t[o(818)](6),this[o(1083)]=t[o(771)](),this[o(1309)]=4095&t.readUint16(),this[o(1133)]=3&t.readUint8(),this[o(696)]=3&t[o(771)](),this[o(1061)]=7&t[o(771)](),this.bit_depth_chroma_minus8=7&t[o(771)](),this[o(230)]=t[o(997)](),r=t.readUint8(),this[o(982)]=r>>6,this[o(161)]=(13&r)>>3,this[o(1301)]=(4&r)>>2,this[o(1155)]=3&r,this[o(368)]=[];var a=t[o(771)]();for(e=0;e<a;e++){var h=[];this.nalu_arrays.push(h),r=t[o(771)](),h.completeness=(128&r)>>7,h[o(1278)]=63&r;var l=t[o(997)]();for(s=0;s<l;s++){var c={};h[o(967)](c),i=t[o(997)](),c.data=t[o(818)](i)}}}),u[n(396)](n(807),function(t){var e,s=n;0===this[s(425)]?this[s(953)]=t[s(997)]():this[s(953)]=t[s(885)](),this[s(370)]=[];for(var i=0;i<this[s(953)];i++){if((e=u.parseOneBox(t,!1,this.size-(t[s(972)]()-this[s(741)])))[s(496)]!==u.OK)return;e[s(683)].type,s(843),this[s(370)][i]=e[s(683)]}}),u.createFullBoxCtor(n(1187),function(t){var e,s=n;e=t[s(771)](),this[s(1165)]=e>>4&15,this[s(474)]=15&e,e=t[s(771)](),this[s(1079)]=e>>4&15,1===this[s(425)]||2===this[s(425)]?this.index_size=15&e:this.index_size=0,this[s(420)]=[];var i=0;if(this[s(425)]<2)i=t[s(997)]();else{if(2!==this[s(425)])throw s(702);i=t[s(885)]()}for(var r=0;r<i;r++){var o={};if(this[s(420)].push(o),this[s(425)]<2)o[s(1100)]=t[s(997)]();else{if(2!==this.version)throw s(702);o[s(1100)]=t[s(885)]()}switch(1===this[s(425)]||2===this[s(425)]?o[s(197)]=15&t[s(997)]():o[s(197)]=0,o.data_reference_index=t[s(997)](),this.base_offset_size){case 0:o[s(1281)]=0;break;case 4:o[s(1281)]=t[s(885)]();break;case 8:o[s(1281)]=t[s(1195)]();break;default:throw s(163)}var a=t[s(997)]();o[s(508)]=[];for(var h=0;h<a;h++){var l={};if(o[s(508)][s(967)](l),1===this[s(425)]||2===this[s(425)])switch(this[s(859)]){case 0:l[s(845)]=0;break;case 4:l[s(845)]=t[s(885)]();break;case 8:l.extent_index=t[s(1195)]();break;default:throw s(520)}switch(this[s(1165)]){case 0:l[s(1159)]=0;break;case 4:l.extent_offset=t[s(885)]();break;case 8:l[s(1159)]=t[s(1195)]();break;default:throw s(520)}switch(this.length_size){case 0:l[s(1136)]=0;break;case 4:l[s(1136)]=t.readUint32();break;case 8:l.extent_length=t.readUint64();break;default:throw"Error reading extent index"}}}}),u[n(866)](n(956),function(t){var e=n,s=t.readUint8();this.reserved=s>>7,this[e(1088)]=1&s}),u[n(396)](n(843),function(t){var e=n;if((0===this.version||1===this[e(425)])&&(this.item_ID=t[e(997)](),this[e(1080)]=t[e(997)](),this[e(1055)]=t[e(694)](),this[e(685)]=t.readCString(),this[e(1299)]=t[e(694)]()),1===this[e(425)])return this.extension_type=t[e(927)](4),void t[e(411)](this.start+this[e(316)]);this[e(425)]>=2&&(2===this.version?this[e(1100)]=t[e(997)]():3===this[e(425)]&&(this[e(1100)]=t[e(885)]()),this[e(1080)]=t[e(997)](),this[e(1203)]=t[e(927)](4),this[e(1055)]=t[e(694)](),this[e(1203)]===e(645)?(this.content_type=t[e(694)](),this.content_encoding=t.readCString()):"uri "===this[e(1203)]&&(this[e(1081)]=t[e(694)]()))}),u[n(396)](n(606),function(t){var e,s,i=n;for(entry_count=t[i(885)](),this[i(1217)]=[],e=0;e<entry_count;e++){var r={};this[i(1217)][i(967)](r),this[i(425)]<1?r.id=t[i(997)]():r.id=t[i(885)]();var o=t[i(771)]();for(r.props=[],s=0;s<o;s++){var a=t[i(771)](),h={};r[i(245)][i(967)](h),h[i(178)]=(128&a)>>7==1,1&this[i(360)]?h[i(303)]=(127&a)<<8|t[i(771)]():h[i(303)]=127&a}}}),u[n(396)]("iref",function(t){var e,s,i=n;for(this[i(1044)]=[];t.getPosition()<this[i(741)]+this[i(316)];){if((e=u[i(302)](t,!0,this[i(316)]-(t[i(972)]()-this[i(741)]))).code!==u.OK)return;(s=0===this[i(425)]?new(u[i(884)])(e[i(1036)],e.size,e[i(733)],e.start):new u.SingleItemTypeReferenceBoxLarge(e[i(1036)],e.size,e[i(733)],e.start))[i(1212)]===u.Box[i(794)][i(1212)]&&s[i(1036)]!==i(357)&&s[i(215)](t),s.parse(t),this[i(1044)][i(967)](s)}}),u.createBoxCtor(n(1149),function(t){var e=n;this[e(1230)]=3&t[e(771)]()}),u.createFullBoxCtor(n(1237),function(t){var e=n;this[e(1051)]=t[e(885)](),this[e(960)]=t[e(885)]()}),u[n(396)](n(806),function(t){var e=n;this[e(477)]=t[e(694)](),this[e(299)]=t[e(694)]()}),u[n(396)](n(1184),function(t){var e=n,s=t[e(771)]();this[e(267)]=[];for(var i=0;i<s;i++){var r={};this[e(267)][i]=r,r[e(1072)]=t.readUint32();var o=t[e(771)]();switch(r.padding_flag=o>>7,r[e(127)]=127&o,r.assignment_type){case 0:r.grouping_type=t[e(927)](4);break;case 1:r.grouping_type=t[e(927)](4),r[e(681)]=t.readUint32();break;case 2:case 3:break;case 4:r[e(995)]=t[e(885)]()}}}),u[n(866)](n(652),function(t){this.layer_id=t.readUint16()}),u[n(866)](n(1060),function(t){var e=n;this.period=t[e(885)](),this[e(591)]=t.readUint32()}),p[n(794)][n(847)]=function(){return"("+this.x+","+this.y+")"},u[n(866)]("mdcv",function(t){var e=n;this[e(1132)]=[],this[e(1132)][0]=new p(t[e(997)](),t[e(997)]()),this[e(1132)][1]=new p(t[e(997)](),t[e(997)]()),this[e(1132)][2]=new p(t[e(997)](),t[e(997)]()),this[e(550)]=new p(t[e(997)](),t[e(997)]()),this[e(418)]=t.readUint32(),this[e(1173)]=t.readUint32()}),u[n(396)](n(196),function(t){var e=n;1==this[e(425)]?(this[e(1234)]=t[e(1195)](),this[e(1178)]=t[e(1195)](),this[e(439)]=t[e(885)](),this[e(150)]=t.readUint64()):(this[e(1234)]=t[e(885)](),this.modification_time=t[e(885)](),this[e(439)]=t.readUint32(),this[e(150)]=t[e(885)]()),this.parseLanguage(t),t[e(997)]()}),u[n(396)](n(633),function(t){var e=n;1&this[e(360)]&&(this[e(425)]=1),1==this.version?this.fragment_duration=t.readUint64():this[e(198)]=t[e(885)]()}),u[n(396)](n(913),function(t){var e=n;this[e(511)]=[],u.ContainerBox[e(794)][e(1094)][e(314)](this,t)}),u[n(396)](n(896),function(t){var e=n;this[e(233)]=t[e(885)]()}),u[n(396)](n(1053),function(t){var e=n;this[e(243)]=t[e(885)]()}),u[n(396)](n(462),function(t){var e=n;this[e(480)]=t[e(771)]()}),u[n(396)](n(1337),function(t){var e=n;1==this[e(425)]?(this.creation_time=t[e(1195)](),this.modification_time=t[e(1195)](),this[e(439)]=t.readUint32(),this[e(150)]=t[e(1195)]()):(this.creation_time=t[e(885)](),this[e(1178)]=t[e(885)](),this[e(439)]=t[e(885)](),this[e(150)]=t.readUint32()),this.rate=t[e(885)](),this.volume=t[e(997)]()>>8,t[e(997)](),t.readUint32Array(2),this[e(950)]=t[e(523)](9),t.readUint32Array(6),this[e(1293)]=t[e(885)]()}),u[n(866)](n(558),function(t){this[n(792)]=t.readUint32()}),u[n(866)](n(160),function(t){var e=n;this[e(792)]=t[e(1195)]()}),u[n(396)](n(758),function(t){var e=n,s=t[e(885)]();this[e(1062)]=[];for(var i=0;i<Math.floor((s+1)/2);i++)this.padbits=t[e(771)]()}),u.createBoxCtor("pasp",function(t){var e=n;this[e(1345)]=t[e(885)](),this.vSpacing=t[e(885)]()}),u.createBoxCtor(n(846),function(t){var e=n;this[e(200)]=t[e(927)](this[e(316)]-this[e(733)])}),u[n(866)]("payt",function(t){var e=n;this.payloadID=t[e(885)]();var s=t[e(771)]();this.rtpmap_string=t[e(927)](s)}),u[n(396)](n(811),function(t){var e=n,s=(this.size-this[e(733)])/8;this[e(1223)]=[],this[e(1128)]=[];for(var i=0;i<s;i++)this.rate[i]=t.readUint32(),this[e(1128)][i]=t[e(885)]()}),u[n(396)](n(282),function(t){var e=n;0===this.version?this.item_id=t[e(997)]():this[e(880)]=t[e(885)]()}),u[n(396)](n(353),function(t){var e,s=n;for(this[s(362)]=t[s(771)](),this[s(186)]=[],e=0;e<this.num_channels;e++)this[s(186)][e]=t.readUint8()}),u[n(866)](n(646),function(t){this.bytes=t.readUint32()}),u.createFullBoxCtor(n(1114),function(t){var e=n;if(this[e(679)]=t[e(997)](),this[e(489)]=[],2&this[e(360)])for(var s=0;s<this[e(679)];s++)this[e(489)][s]=t[e(997)]()}),u[n(396)]("prft",function(t){var e=n;this[e(1045)]=t[e(885)](),this.ntp_timestamp=t[e(1195)](),0===this[e(425)]?this[e(1e3)]=t[e(885)]():this.media_time=t[e(1195)]()}),u[n(396)](n(329),function(t){var e=n;if(this[e(626)]=u[e(1122)](t),this.version>0){var s=t[e(885)]();this[e(317)]=[];for(var i=0;i<s;i++)this[e(317)][i]=u.parseHex16(t)}var r=t[e(885)]();r>0&&(this[e(1181)]=t[e(818)](r))}),u.createFullBoxCtor("clef",function(t){var e=n;this[e(347)]=t[e(885)](),this.height=t.readUint32()}),u[n(396)]("enof",function(t){var e=n;this[e(347)]=t.readUint32(),this.height=t[e(885)]()}),u[n(396)]("prof",function(t){var e=n;this[e(347)]=t.readUint32(),this[e(280)]=t[e(885)]()}),u[n(1130)](n(298),null,["clef","prof",n(1082)]),u.createBoxCtor(n(334),function(t){var e=n;this[e(260)]=t[e(927)](4),this[e(1344)]=t[e(927)](this[e(316)]-this[e(733)]-4)}),u[n(396)](n(463),function(t){var e=n;1&this.flags&&(this[e(579)]=t.readUint32(),this[e(275)]=t.readUint32());var s=t.readUint32();this[e(398)]=[];for(var i=0;i<s;i++)0===this[e(425)]?this[e(398)][i]=t[e(885)]():this[e(398)][i]=t.readUint64()}),u.createFullBoxCtor(n(139),function(t){var e=n;1&this[e(360)]&&(this[e(579)]=t[e(885)](),this[e(275)]=t[e(885)]()),this.default_sample_info_size=t[e(771)]();var s=t[e(885)]();if(this[e(725)]=[],0===this[e(957)])for(var i=0;i<s;i++)this.sample_info_size[i]=t[e(771)]()}),u[n(825)](u.SAMPLE_ENTRY_TYPE_METADATA,"mett",function(t){var e=n;this[e(1098)](t),this[e(1299)]=t[e(694)](),this[e(1276)]=t[e(694)](),this[e(736)](t)}),u[n(825)](u[n(663)],"metx",function(t){var e=n;this[e(1098)](t),this[e(1299)]=t[e(694)](),this.namespace=t[e(694)](),this[e(437)]=t[e(694)](),this[e(736)](t)}),u.createSampleEntryCtor(u[n(1273)],"sbtt",function(t){var e=n;this[e(1098)](t),this[e(1299)]=t.readCString(),this[e(1276)]=t.readCString(),this[e(736)](t)}),u[n(825)](u[n(1273)],n(600),function(t){var e=n;this.parseHeader(t),this[e(822)]=t[e(694)](),this[e(437)]=t.readCString(),this.auxiliary_mime_types=t.readCString(),this[e(736)](t)}),u[n(825)](u[n(1273)],n(991),function(t){var e=n;this[e(1098)](t),this.content_encoding=t[e(694)](),this.mime_format=t[e(694)](),this.parseFooter(t)}),u.createSampleEntryCtor(u[n(1273)],n(291),function(t){var e=n;this.parseHeader(t),this.displayFlags=t[e(885)](),this[e(904)]=t.readInt8(),this.vertical_justification=t[e(459)](),this.bg_color_rgba=t.readUint8Array(4),this.box_record=t[e(1034)](4),this[e(481)]=t[e(818)](12),this[e(736)](t)}),u[n(825)](u.SAMPLE_ENTRY_TYPE_METADATA,n(853),function(t){var e=n;this[e(1098)](t),this[e(736)](t)}),u.createSampleGroupCtor(n(295),function(t){var e,s=n,i=t.readUint16();for(this[s(333)]=t[s(997)](),this[s(1143)]=[],e=0;e<i;e++)this.sample_offset[e]=t[s(885)]();var r=this[s(561)]-4-4*i;for(this[s(1137)]=[],this[s(582)]=[],e=0;e<r/4;e++)this[s(1137)][e]=t.readUint16(),this[s(582)][e]=t[s(997)]()}),u[n(323)]("avll",function(t){var e=n;this[e(1017)]=t[e(771)](),this[e(147)]=t[e(771)](),this[e(440)]=t[e(997)](),this[e(230)]=t[e(997)]()}),u[n(323)](n(1019),function(t){var e=n;this[e(244)]=t[e(997)](),this[e(1017)]=t[e(771)]();var s=t.readUint8();this[e(805)]=s>>7,this.avgRateFlag=s>>6&1,this[e(805)]&&(this[e(150)]=t.readUint32()),this[e(1174)]&&(this[e(147)]=t[e(771)](),this[e(440)]=t[e(997)](),this[e(230)]=t[e(997)]()),this[e(328)]=[];for(var i=t[e(771)](),r=0;r<i;r++){var o={};this[e(328)][e(967)](o),o[e(788)]=t.readUint8(),o[e(1017)]=t[e(771)](),o[e(244)]=t[e(997)]()}}),u[n(323)]("dtrt",function(t){}),u.createSampleGroupCtor(n(848),function(t){}),u[n(323)](n(252),function(t){var e=n;this.roll_distance=t[e(707)]()}),u[n(323)]("rap ",function(t){var e=t[n(771)]();this.num_leading_samples_known=e>>7,this.num_leading_samples=127&e}),u[n(323)]("rash",function(t){var e=n;if(this[e(1287)]=t[e(997)](),this[e(561)]!==2+(1===this[e(1287)]?2:6*this[e(1287)])+9)this[e(1181)]=t[e(818)](this[e(561)]-2);else{if(1===this.operation_point_count)this[e(952)]=t[e(997)]();else{this[e(952)]=[],this[e(416)]=[];for(var s=0;s<this.operation_point_count;s++)this.available_bitrate[s]=t[e(885)](),this.target_rate_share[s]=t[e(997)]()}this[e(193)]=t[e(885)](),this[e(450)]=t[e(885)](),this[e(1169)]=t[e(771)]()}}),u[n(323)](n(349),function(t){var e=n;this[e(906)]=t[e(707)]()}),u[n(1057)][n(794)][n(1094)]=function(t){this[n(1181)]=t.readUint8Array(this.description_length)},u[n(323)](n(1271),function(t){}),u[n(323)]("scnm",function(t){}),u[n(323)](n(257),function(t){var e=n;this[e(608)]=t.readUint8();var s=t[e(771)]();this.crypt_byte_block=s>>4,this[e(1340)]=15&s,this[e(248)]=t.readUint8(),this.Per_Sample_IV_Size=t.readUint8(),this[e(207)]=u[e(1122)](t),this[e(1201)]=0,this[e(536)]=0,1===this[e(248)]&&0===this[e(506)]&&(this.constant_IV_size=t[e(771)](),this.constant_IV=t.readUint8Array(this.constant_IV_size))}),u.createSampleGroupCtor(n(365),function(t){}),u[n(323)](n(604),function(t){var e=n,s=t[e(771)]();this[e(662)]=63&s}),u[n(323)](n(584),function(t){var e=t.readUint8();this.level_independently_decodable=e>>7}),u.createSampleGroupCtor("tsas",function(t){}),u[n(323)](n(588),function(t){}),u[n(323)](n(475),function(t){}),u[n(396)](n(304),function(t){var e=n;this.grouping_type=t[e(927)](4),1===this.version?this[e(681)]=t[e(885)]():this[e(681)]=0,this[e(204)]=[];for(var s=t[e(885)](),i=0;i<s;i++){var r={};this[e(204)][e(967)](r),r.sample_count=t[e(590)](),r[e(1272)]=t[e(590)]()}}),f.prototype.toString=function(){var t=n;return t(983)+this[t(573)]+t(378)+this[t(728)]+"]"},u[n(396)](n(1208),function(t){var e,s=n;for(this[s(1315)]=t[s(997)](),this[s(254)]=[],e=0;e<this[s(1315)];e++)this[s(254)][s(967)](t[s(997)]());var i=t.readUint8();for(this[s(744)]=!(128&~i),this[s(1320)]=t[s(885)](),this[s(800)]=t[s(885)](),this[s(660)]=t[s(885)](),this[s(935)]=[],this[s(629)]=[],this[s(577)]=[],e=0;e<this[s(1320)];e++)this[s(935)][s(967)](t[s(885)]());for(e=0;e<this.num_bad_cols;e++)this.bad_columns.push(t.readUint32());for(e=0;e<this[s(660)];e++){var r=t[s(885)](),o=t[s(885)]();this[s(577)][s(967)](new f(r,o))}}),u[n(396)]("schm",function(t){var e=n;this.scheme_type=t[e(927)](4),this[e(239)]=t[e(885)](),1&this.flags&&(this.scheme_uri=t[e(927)](this[e(316)]-this.hdr_size-8))}),u[n(866)](n(447),function(t){var e=n;this[e(1344)]=t[e(927)](this[e(316)]-this.hdr_size)}),u[n(396)](n(1002),function(t){var e,s=n,i=this[s(316)]-this[s(733)];this[s(1304)]=[],this[s(1317)]=[],this.sample_is_depended_on=[],this.sample_has_redundancy=[];for(var r=0;r<i;r++)e=t[s(771)](),this.is_leading[r]=e>>6,this[s(1317)][r]=e>>4&3,this[s(297)][r]=e>>2&3,this[s(686)][r]=3&e}),u[n(396)](n(560)),u[n(396)]("sgpd",function(t){var e=n;this[e(415)]=t[e(927)](4),o[e(749)](e(424),"Found Sample Groups of type "+this[e(415)]),1===this[e(425)]?this[e(635)]=t.readUint32():this[e(635)]=0,this.version>=2&&(this[e(535)]=t.readUint32()),this[e(204)]=[];for(var s=t[e(885)](),i=0;i<s;i++){var r;r=u[this[e(415)]+e(1057)]?new(u[this[e(415)]+"SampleGroupEntry"])(this[e(415)]):new(u[e(1057)])(this.grouping_type),this[e(204)][e(967)](r),1===this[e(425)]&&0===this[e(635)]?r[e(561)]=t.readUint32():r[e(561)]=this[e(635)],r[e(1212)]===u[e(1057)][e(794)].write&&(r[e(1181)]=t.readUint8Array(r.description_length),t[e(768)]-=r.description_length),r[e(1094)](t)}}),u[n(396)](n(527),function(t){var e=n;this.reference_ID=t[e(885)](),this[e(439)]=t[e(885)](),0===this[e(425)]?(this.earliest_presentation_time=t.readUint32(),this.first_offset=t[e(885)]()):(this.earliest_presentation_time=t[e(1195)](),this.first_offset=t[e(1195)]()),t[e(997)](),this[e(1044)]=[];for(var s=t[e(997)](),i=0;i<s;i++){var r={};this[e(1044)].push(r);var o=t[e(885)]();r[e(138)]=o>>31&1,r[e(1065)]=2147483647&o,r.subsegment_duration=t[e(885)](),o=t[e(885)](),r[e(1252)]=o>>31&1,r[e(592)]=o>>28&7,r[e(143)]=268435455&o}}),u[n(884)]=function(t,e,s,i){var r=n;u[r(734)][r(314)](this,t,e),this[r(733)]=s,this[r(741)]=i},u[n(884)][n(794)]=new(u[n(734)]),u[n(884)][n(794)][n(1094)]=function(t){var e=n;this.from_item_ID=t[e(997)]();var s=t[e(997)]();this[e(1044)]=[];for(var i=0;i<s;i++)this[e(1044)][i]={},this.references[i][e(1085)]=t[e(997)]()},u[n(383)]=function(t,e,s,i){var r=n;u[r(734)][r(314)](this,t,e),this[r(733)]=s,this[r(741)]=i},u.SingleItemTypeReferenceBoxLarge[n(794)]=new(u[n(734)]),u[n(383)][n(794)].parse=function(t){var e=n;this[e(185)]=t[e(885)]();var s=t[e(997)]();this[e(1044)]=[];for(var i=0;i<s;i++)this[e(1044)][i]={},this[e(1044)][i][e(1085)]=t[e(885)]()},u.createFullBoxCtor(n(1135),function(t){var e=n;this[e(607)]=t.readUint16(),this[e(919)]=t[e(997)](),this[e(414)]=t[e(997)](),this[e(840)]=t[e(997)](),this[e(242)]=t[e(997)](),this.primaryBChromaticity_y=t[e(997)](),this[e(337)]=t[e(997)](),this[e(789)]=t[e(997)](),this[e(1096)]=t[e(885)](),this[e(1228)]=t[e(885)]()}),u[n(396)](n(548),function(t){var e=n;this[e(546)]=t[e(997)](),t[e(997)]()}),u[n(396)]("ssix",function(t){var e=n;this[e(638)]=[];for(var s=t.readUint32(),i=0;i<s;i++){var r={};this[e(638)][e(967)](r),r[e(292)]=[];for(var o=t[e(885)](),a=0;a<o;a++){var h={};r[e(292)][e(967)](h),h[e(732)]=t.readUint8(),h[e(1327)]=t[e(1001)]()}}}),u.createFullBoxCtor(n(597),function(t){var e,s=n;if(e=t[s(885)](),this[s(1180)]=[],0===this.version)for(var i=0;i<e;i++)this[s(1180)].push(t[s(885)]())}),u[n(396)](n(1282),function(t){var e=n,s=(this[e(316)]-this[e(733)])/2;this[e(623)]=[];for(var i=0;i<s;i++)this[e(623)][i]=t[e(997)]()}),u.createFullBoxCtor(n(926)),u[n(396)](n(494),function(t){var e=n;this[e(306)]=t[e(997)](),this[e(666)]=t[e(997)](),this.sub_track_id=t[e(885)]();var s=(this[e(316)]-this[e(733)]-8)/4;this[e(380)]=[];for(var i=0;i<s;i++)this[e(380)][i]=t[e(885)]()}),u.createFullBoxCtor(n(1305),function(t){var e,s,i=n;if(e=t[i(885)](),this.first_chunk=[],this[i(988)]=[],this[i(742)]=[],0===this[i(425)])for(s=0;s<e;s++)this[i(594)].push(t.readUint32()),this[i(988)].push(t[i(885)]()),this.sample_description_index.push(t[i(885)]())}),u.createFullBoxCtor(n(722),function(t){var e,s,i,r,o=n;for(this[o(204)]=[],i=t.readUint32(),e=1;e<=i;e++){if((s=u[o(302)](t,!0,this[o(316)]-(t.getPosition()-this[o(741)])))[o(496)]!==u.OK)return;u[s.type+o(502)]?((r=new(u[s[o(1036)]+"SampleEntry"])(s[o(316)])).hdr_size=s[o(733)],r[o(741)]=s[o(741)]):r=new(u[o(502)])(s[o(1036)],s.size,s[o(733)],s.start),r.write===u.SampleEntry[o(794)][o(1212)]&&r[o(215)](t),r[o(1094)](t),this[o(204)][o(967)](r)}}),u.createFullBoxCtor(n(149),function(t){var e=n;this[e(415)]=t[e(885)]();var s=t[e(997)]();this[e(1272)]=[];for(var i=0;i<s;i++)this[e(1272)][i]=t[e(885)]()}),u.createFullBoxCtor(n(1167),function(t){var e,s,i=n;if(e=t[i(885)](),this[i(1251)]=[],this[i(930)]=[],0===this[i(425)])for(s=0;s<e;s++)this[i(1251)][i(967)](t[i(885)]()),this[i(930)][i(967)](t.readUint32())}),u[n(396)](n(278),function(t){var e,s,i=n;if(s=t.readUint32(),0===this[i(425)])for(this.sample_numbers=[],e=0;e<s;e++)this.sample_numbers[i(967)](t[i(885)]())}),u[n(396)](n(665),function(t){var e,s=n;if(this.sample_sizes=[],0===this[s(425)])for(this[s(586)]=t[s(885)](),this[s(624)]=t[s(885)](),e=0;e<this[s(624)];e++)0===this[s(586)]?this[s(377)][s(967)](t[s(885)]()):this.sample_sizes[e]=this.sample_size}),u[n(396)](n(356),function(t){var e,s,i,r=n;if(e=t[r(885)](),this.sample_counts=[],this[r(222)]=[],0===this[r(425)])for(s=0;s<e;s++)this[r(512)].push(t[r(885)]()),(i=t.readInt32())<0&&(i=1),this.sample_deltas[r(967)](i)}),u[n(396)]("stvi",function(t){var e=n,s=t[e(885)]();this.single_view_allowed=3&s,this[e(199)]=t[e(885)]();var i,r,o=t.readUint32();for(this.stereo_indication_type=t[e(927)](o),this.boxes=[];t[e(972)]()<this[e(741)]+this[e(316)];){if((i=u.parseOneBox(t,!1,this.size-(t[e(972)]()-this[e(741)])))[e(496)]!==u.OK)return;r=i[e(683)],this[e(511)][e(967)](r),this[r[e(1036)]]=r}}),u.createBoxCtor(n(231),function(t){var e=n;u.ftypBox[e(794)][e(1094)][e(314)](this,t)}),u.createFullBoxCtor(n(636),function(t){var e,s,i=n;if(this[i(377)]=[],0===this.version)if(this[i(608)]=t[i(1001)](),this[i(1160)]=t.readUint8(),s=t[i(885)](),4===this.field_size)for(e=0;e<s;e+=2){var r=t[i(771)]();this[i(377)][e]=r>>4&15,this[i(377)][e+1]=15&r}else if(8===this[i(1160)])for(e=0;e<s;e++)this.sample_sizes[e]=t.readUint8();else if(16===this.field_size)for(e=0;e<s;e++)this[i(377)][e]=t[i(997)]()}),u.createFullBoxCtor(n(1258),function(t){var e,s,i,r,o=n;for(i=t[o(885)](),this.entries=[],e=0;e<i;e++){var a={};if(this.entries[e]=a,a[o(369)]=t[o(885)](),a[o(883)]=[],(r=t[o(997)]())>0)for(s=0;s<r;s++){var h={};a.subsamples[o(967)](h),1==this.version?h[o(316)]=t.readUint32():h[o(316)]=t[o(997)](),h[o(623)]=t[o(771)](),h[o(210)]=t[o(771)](),h[o(761)]=t.readUint32()}}}),u[n(396)](n(428),function(t){var e=n;if(t[e(771)](),0===this.version)t.readUint8();else{var s=t[e(771)]();this.default_crypt_byte_block=s>>4&15,this.default_skip_byte_block=15&s}this[e(374)]=t[e(771)](),this[e(670)]=t[e(771)](),this[e(1312)]=u[e(1122)](t),1===this[e(374)]&&0===this[e(670)]&&(this[e(1069)]=t.readUint8(),this.default_constant_IV=t[e(818)](this[e(1069)]))}),u[n(396)](n(540),function(t){1==this[n(425)]?this.baseMediaDecodeTime=t.readUint64():this.baseMediaDecodeTime=t.readUint32()}),u[n(396)](n(1078),function(t){var e=n,s=0;this.track_id=t.readUint32(),this[e(316)]-this[e(733)]>s&&this[e(360)]&u.TFHD_FLAG_BASE_DATA_OFFSET?(this.base_data_offset=t[e(1195)](),s+=8):this[e(1280)]=0,this[e(316)]-this[e(733)]>s&&this[e(360)]&u.TFHD_FLAG_SAMPLE_DESC?(this[e(724)]=t[e(885)](),s+=4):this[e(724)]=0,this[e(316)]-this[e(733)]>s&&this[e(360)]&u[e(530)]?(this[e(750)]=t[e(885)](),s+=4):this.default_sample_duration=0,this.size-this.hdr_size>s&&this[e(360)]&u[e(468)]?(this[e(958)]=t.readUint32(),s+=4):this[e(958)]=0,this.size-this[e(733)]>s&&this[e(360)]&u[e(279)]?(this[e(1163)]=t[e(885)](),s+=4):this[e(1163)]=0}),u[n(396)](n(461),function(t){var e=n;this[e(1072)]=t.readUint32(),t[e(1001)]();var s=t.readUint8();this.length_size_of_traf_num=s>>4&3,this[e(1106)]=s>>2&3,this[e(1336)]=3&s,this.entries=[];for(var i=t.readUint32(),r=0;r<i;r++)1===this.version?(this[e(1043)]=t[e(1195)](),this.moof_offset=t[e(1195)]()):(this[e(1043)]=t[e(885)](),this.moof_offset=t[e(885)]()),this[e(466)]=t[e(165)+8*(this[e(655)]+1)](),this[e(673)]=t[e(165)+8*(this[e(1106)]+1)](),this[e(1011)]=t[e(165)+8*(this[e(1336)]+1)]()}),u[n(396)](n(1288),function(t){var e=n;1==this[e(425)]?(this[e(1234)]=t[e(1195)](),this[e(1178)]=t.readUint64(),this.track_id=t[e(885)](),t[e(885)](),this[e(150)]=t[e(1195)]()):(this[e(1234)]=t[e(885)](),this[e(1178)]=t.readUint32(),this[e(869)]=t[e(885)](),t[e(885)](),this[e(150)]=t[e(885)]()),t[e(523)](2),this[e(1117)]=t.readInt16(),this.alternate_group=t[e(707)](),this.volume=t[e(707)]()>>8,t[e(997)](),this[e(950)]=t.readInt32Array(9),this[e(347)]=t[e(885)](),this.height=t[e(885)]()}),u.createBoxCtor(n(756),function(t){var e=n;this[e(1043)]=t[e(885)]()}),u[n(866)]("tmin",function(t){var e=n;this.time=t[e(885)]()}),u.createBoxCtor(n(661),function(t){var e=n;this[e(1188)]=t[e(885)]()}),u[n(866)](n(1068),function(t){this[n(1188)]=t.readUint32()}),u[n(866)](n(654),function(t){var e=n;this[e(1188)]=t[e(1195)]()}),u.TrackGroupTypeBox[n(794)].parse=function(t){var e=n;this[e(974)](t),this[e(1224)]=t[e(885)]()},u[n(656)](n(541)),u.TrackReferenceTypeBox=function(t,e,s,i){var r=n;u[r(734)][r(314)](this,t,e),this.hdr_size=s,this[r(741)]=i},u[n(342)][n(794)]=new(u[n(734)]),u[n(342)][n(794)][n(1094)]=function(t){var e=n;this[e(131)]=t.readUint32Array((this[e(316)]-this[e(733)])/4)},u.trefBox.prototype.parse=function(t){for(var e,s,i=n;t.getPosition()<this[i(741)]+this[i(316)];){if((e=u[i(302)](t,!0,this[i(316)]-(t[i(972)]()-this[i(741)])))[i(496)]!==u.OK)return;(s=new(u[i(342)])(e[i(1036)],e[i(316)],e[i(733)],e[i(741)]))[i(1212)]===u.Box[i(794)][i(1212)]&&s[i(1036)]!==i(357)&&s[i(215)](t),s.parse(t),this[i(511)][i(967)](s)}},u[n(396)](n(954),function(t){var e=n;for(this[e(1072)]=t[e(885)](),this[e(511)]=[];t[e(972)]()<this.start+this[e(316)];){if(ret=u.parseOneBox(t,!1,this[e(316)]-(t[e(972)]()-this[e(741)])),ret[e(496)]!==u.OK)return;box=ret.box,this.boxes[e(967)](box)}}),u.createFullBoxCtor("trex",function(t){var e=n;this[e(869)]=t.readUint32(),this.default_sample_description_index=t.readUint32(),this[e(750)]=t[e(885)](),this[e(958)]=t[e(885)](),this[e(1163)]=t.readUint32()}),u[n(866)](n(534),function(t){var e=n;this[e(1188)]=t[e(1195)]()}),u.createFullBoxCtor(n(730),function(t){var e=n,s=0;if(this.sample_count=t[e(885)](),s+=4,this[e(316)]-this[e(733)]>s&&this[e(360)]&u[e(920)]?(this[e(917)]=t[e(590)](),s+=4):this[e(917)]=0,this.size-this[e(733)]>s&&this[e(360)]&u[e(525)]?(this.first_sample_flags=t.readUint32(),s+=4):this[e(271)]=0,this[e(488)]=[],this[e(586)]=[],this.sample_flags=[],this[e(775)]=[],this[e(316)]-this[e(733)]>s)for(var i=0;i<this[e(624)];i++)this[e(360)]&u[e(482)]&&(this[e(488)][i]=t[e(885)]()),this.flags&u[e(179)]&&(this[e(586)][i]=t[e(885)]()),this[e(360)]&u[e(229)]&&(this.sample_flags[i]=t[e(885)]()),this[e(360)]&u[e(826)]&&(0===this[e(425)]?this[e(775)][i]=t[e(885)]():this[e(775)][i]=t[e(590)]())}),u.createFullBoxCtor(n(858),function(t){var e=n;this[e(306)]=t[e(885)]();var s=(this[e(316)]-this[e(733)]-4)/4;this.attribute_list=[];for(var i=0;i<s;i++)this.attribute_list[i]=t.readUint32()}),u[n(396)](n(657),function(t){var e=n;this[e(491)]=t[e(694)]()}),u.createBoxCtor(n(176),function(t){var e=n,s=(this[e(316)]-this.hdr_size)/4;this[e(174)]=[];for(var i=0;i<s;i++)this[e(174)][i]=t[e(927)](4)}),u[n(396)]("udes",function(t){var e=n;this.lang=t[e(694)](),this.name=t[e(694)](),this[e(925)]=t.readCString(),this.tags=t.readCString()}),u[n(396)]("uncC",function(t){var e,s=n;if(this[s(322)]=t.readUint32(),1==this[s(425)]);else if(0==this[s(425)]){for(this[s(1315)]=t.readUint32(),this[s(254)]=[],this[s(567)]=[],this.component_format=[],this.component_align_size=[],e=0;e<this[s(1315)];e++)this[s(254)].push(t[s(997)]()),this[s(567)][s(967)](t.readUint8()),this[s(981)].push(t[s(771)]()),this[s(1023)].push(t[s(771)]());this.sampling_type=t[s(771)](),this[s(569)]=t[s(771)](),this[s(669)]=t[s(771)]();var i=t[s(771)]();this[s(1291)]=i>>7&1,this[s(876)]=i>>6&1,this[s(767)]=i>>5&1,this[s(720)]=i>>4&1,this[s(1138)]=i>>3&1,this[s(864)]=t[s(885)](),this[s(1029)]=t[s(885)](),this[s(680)]=t[s(885)](),this.num_tile_cols_minus_one=t[s(885)](),this[s(737)]=t[s(885)]()}}),u[n(396)](n(719),function(t){var e=n;1!==this[e(360)]&&(this[e(417)]=t[e(694)]())}),u[n(396)](n(201),function(t){var e=n;this[e(1018)]=t[e(694)](),this.size-this[e(733)]-this.name[e(189)]-1>0&&(this[e(417)]=t[e(694)]())}),u[n(580)](n(375),!0,!1,function(t){var e=n;this[e(499)]=t[e(927)](this[e(316)]-this.hdr_size)[e(1107)](/&/g,"&")[e(1107)](/</g,"<")[e(1107)](/>/g,e(388)).replace(/"/g,e(779))[e(1107)](/'/g,"'")}),u[n(580)]("d08a4f1810f34a82b6c832d8aba183d3",!0,!1,function(t){var e=n;this[e(626)]=u[e(1122)](t);var s=t[e(885)]();s>0&&(this[e(1181)]=t[e(818)](s))}),u[n(580)](n(394),!0,!1),u[n(580)](n(814),!0,!1,function(t){var e=n;this[e(628)]=t.readUint24(),this[e(141)]=t[e(771)](),this[e(1312)]=u[e(1122)](t)}),u.createUUIDBox(n(585),!0,!1,function(t){var e=n;this.fragment_count=t[e(771)](),this[e(204)]=[];for(var s=0;s<this[e(1311)];s++){var i={},r=0,o=0;1===this[e(425)]?(r=t.readUint64(),o=t[e(1195)]()):(r=t[e(885)](),o=t[e(885)]()),i[e(992)]=r,i[e(1285)]=o,this[e(204)][e(967)](i)}}),u.createUUIDBox(n(842),!0,!1,function(t){var e=n;1===this[e(425)]?(this.absolute_time=t.readUint64(),this[e(150)]=t[e(1195)]()):(this[e(992)]=t[e(885)](),this[e(150)]=t[e(885)]())}),u[n(396)](n(1032),function(t){var e=n;this[e(797)]=t[e(997)](),this[e(1146)]=t[e(1074)](3)}),u[n(396)](n(225),function(t){var e,s=n;1===this[s(425)]?(this[s(322)]=t[s(771)](),this.level=t.readUint8(),e=t[s(771)](),this[s(1105)]=e>>4,this.chromaSubsampling=e>>1&7,this[s(929)]=1&e,this[s(871)]=t.readUint8(),this[s(259)]=t[s(771)](),this[s(684)]=t[s(771)](),this.codecIntializationDataSize=t[s(997)](),this[s(1141)]=t[s(818)](this[s(855)])):(this[s(322)]=t.readUint8(),this[s(732)]=t[s(771)](),e=t[s(771)](),this[s(1105)]=e>>4&15,this.colorSpace=15&e,e=t[s(771)](),this[s(576)]=e>>4&15,this[s(708)]=e>>1&7,this[s(929)]=1&e,this[s(855)]=t[s(997)](),this.codecIntializationData=t[s(818)](this[s(855)]))}),u.createBoxCtor(n(637),function(t){var e=n;this[e(200)]=t.readString(this[e(316)]-this[e(733)])}),u[n(396)](n(790),function(t){var e,s,i=n,r={held_bits:void 0,num_held_bits:0,stream_read_1_bytes:function(t){var e=dm;this[e(1171)]=t[e(771)](),this[e(151)]=8},stream_read_2_bytes:function(t){var e=dm;this[e(1171)]=t[e(997)](),this[e(151)]=16},extract_bits:function(t){var e=dm,s=this[e(1171)]>>this[e(151)]-t&(1<<t)-1;return this[e(151)]-=t,s}};if(r.stream_read_1_bytes(t),r[i(1265)](5),this[i(1155)]=r[i(1265)](2),this[i(973)]=r[i(1265)](1),this[i(973)]){if(r[i(1185)](t),this[i(830)]=r[i(1265)](9),this.num_sublayers=r[i(1265)](3),this[i(264)]=r[i(1265)](2),this[i(696)]=r[i(1265)](2),r[i(1303)](t),this.bit_depth_minus8=r.extract_bits(3),r.extract_bits(5),r[i(1185)](t),r[i(1265)](2),this[i(1321)]=r[i(1265)](6),this[i(352)]=r[i(1265)](7),this.general_tier_flag=r[i(1265)](1),this[i(1083)]=t.readUint8(),r[i(1303)](t),this.ptl_frame_only_constraint_flag=r.extract_bits(1),this.ptl_multilayer_enabled_flag=r[i(1265)](1),this.general_constraint_info=new Uint8Array(this[i(1321)]),this[i(1321)]){for(e=0;e<this[i(1321)]-1;e++){var o=r.extract_bits(6);r[i(1303)](t);var a=r.extract_bits(2);this[i(712)][e]=o<<2|a}this[i(712)][this.num_bytes_constraint_info-1]=r[i(1265)](6)}else r.extract_bits(6);if(this.num_sublayers>1){for(r[i(1303)](t),this[i(1070)]=0,s=this[i(431)]-2;s>=0;--s){var h=r[i(1265)](1);this.ptl_sublayer_present_mask|=h<<s}for(s=this[i(431)];s<=8&&this[i(431)]>1;++s)r.extract_bits(1);for(this.sublayer_level_idc=[],s=this[i(431)]-2;s>=0;--s)this[i(1070)]&1<<s&&(this[i(1244)][s]=t[i(771)]())}if(this[i(1232)]=t[i(771)](),this[i(1039)]=[],this.ptl_num_sub_profiles)for(e=0;e<this[i(1232)];e++)this[i(1039)][i(967)](t[i(885)]());this[i(253)]=t[i(997)](),this[i(648)]=t[i(997)](),this[i(611)]=t[i(997)]()}this[i(368)]=[];var l=t[i(771)]();for(e=0;e<l;e++){var c=[];this[i(368)][i(967)](c),r.stream_read_1_bytes(t),c[i(1076)]=r.extract_bits(1),r[i(1265)](2),c.nalu_type=r[i(1265)](5);var d=1;for(13!=c[i(1278)]&&12!=c.nalu_type&&(d=t.readUint16()),s=0;s<d;s++){var u=t[i(997)]();c[i(967)]({data:t[i(818)](u),length:u})}}}),u[n(396)]("vvnC",function(t){var e=n,s=strm[e(771)]();this[e(1155)]=3&s}),u[n(502)][n(794)][n(875)]=function(){return!1},u[n(502)][n(794)][n(706)]=function(){return!1},u[n(502)].prototype[n(1021)]=function(){return!1},u[n(502)][n(794)][n(897)]=function(){return!1},u[n(502)][n(794)][n(1162)]=function(){return!1},u[n(502)][n(794)][n(1108)]=function(){var t=n;return this[t(1036)][t(1107)](".","")},u.SampleEntry[n(794)][n(526)]=function(){return""},u[n(502)][n(794)][n(808)]=function(){return""},u[n(502)].prototype.getChannelCount=function(){return""},u[n(502)][n(794)].getSampleRate=function(){return""},u[n(502)][n(794)].getSampleSize=function(){return""},u[n(436)][n(794)][n(875)]=function(){return!0},u.VisualSampleEntry[n(794)].getWidth=function(){return this.width},u.VisualSampleEntry[n(794)][n(808)]=function(){return this[n(280)]},u.AudioSampleEntry[n(794)].isAudio=function(){return!0},u[n(1058)][n(794)][n(1134)]=function(){return this[n(688)]},u[n(1058)][n(794)].getSampleRate=function(){return this[n(787)]},u[n(1058)][n(794)][n(893)]=function(){return this[n(345)]},u[n(372)][n(794)][n(1021)]=function(){return!0},u.MetadataSampleEntry[n(794)].isMetadata=function(){return!0},u[n(743)]=function(t,e){var s=n,i=Number(t).toString(16);for(e=null==e?e=2:e;i[s(189)]<e;)i="0"+i;return i},u.avc1SampleEntry[n(794)][n(1108)]=u.avc2SampleEntry[n(794)].getCodec=u[n(898)][n(794)][n(1108)]=u[n(630)][n(794)][n(1108)]=function(){var t=n,e=u[t(502)][t(794)][t(1108)][t(314)](this);return this[t(1267)]?e+"."+u[t(743)](this[t(1267)][t(784)])+u[t(743)](this[t(1267)][t(1152)])+u.decimalToHex(this[t(1267)][t(1323)]):e},u[n(232)][n(794)][n(1108)]=u[n(500)].prototype.getCodec=function(){var t,e=n,s=u[e(502)][e(794)].getCodec[e(314)](this);if(this[e(237)]){switch(s+=".",this[e(237)].general_profile_space){case 0:s+="";break;case 1:s+="A";break;case 2:s+="B";break;case 3:s+="C"}s+=this[e(237)][e(352)],s+=".";var i=this.hvcC[e(507)],r=0;for(t=0;t<32&&(r|=1&i,31!=t);t++)r<<=1,i>>=1;s+=u[e(743)](r,0),s+=".",0===this[e(237)].general_tier_flag?s+="L":s+="H",s+=this[e(237)][e(1083)];var o=!1,a="";for(t=5;t>=0;t--)(this.hvcC[e(877)][t]||o)&&(a="."+u[e(743)](this[e(237)].general_constraint_indicator[t],0)+a,o=!0);s+=a}return s},u[n(228)][n(794)][n(1108)]=u[n(1263)].prototype.getCodec=function(){var t,e=n,s=u.SampleEntry[e(794)][e(1108)][e(314)](this);if(this[e(790)]){s+="."+this[e(790)][e(352)],this[e(790)][e(931)]?s+=".H":s+=".L",s+=this[e(790)][e(1083)];var i="";if(this.vvcC.general_constraint_info){var r,o=[],a=0;for(a|=this.vvcC.ptl_frame_only_constraint<<7,a|=this[e(790)][e(446)]<<6,t=0;t<this[e(790)][e(712)][e(189)];++t)a|=this.vvcC[e(712)][t]>>2&63,o[e(967)](a),a&&(r=t),a=this.vvcC[e(712)][t]>>2&3;if(void 0===r)i=e(892);else{i=".C";var h=e(366),l=0,c=0;for(t=0;t<=r;++t)for(l=l<<8|o[t],c+=8;c>=5;){i+=h[l>>c-5&31],l&=(1<<(c-=5))-1}c&&(i+=h[31&(l<<=5-c)])}}s+=i}return s},u[n(955)][n(794)][n(1108)]=function(){var t=n,e=u[t(502)][t(794)].getCodec.call(this);if(this.esds&&this.esds.esd){var s=this.esds.esd[t(874)](),i=this.esds[t(426)][t(287)]();return e+"."+u[t(743)](s)+(i?"."+i:"")}return e},u[n(1343)].prototype[n(1108)]=function(){var t=n,e=u[t(502)][t(794)][t(1108)].call(this);return this[t(1276)]?e+"."+this.mime_format:e},u[n(1102)][n(794)][n(1108)]=u[n(963)].prototype[n(1108)]=function(){var t=n,e=u.SampleEntry[t(794)].getCodec[t(314)](this),s=this[t(225)].level;0==s&&(s="00");var i=this.vpcC[t(1105)];return 8==i&&(i="08"),e+".0"+this[t(225)][t(322)]+"."+s+"."+i},u.av01SampleEntry[n(794)][n(1108)]=function(){var t,e=n,s=u[e(502)][e(794)].getCodec.call(this),i=this[e(1103)][e(324)];return i<10&&(i="0"+i),2===this[e(1103)].seq_profile&&1===this[e(1103)].high_bitdepth?t=1===this[e(1103)][e(1003)]?"12":"10":this[e(1103)][e(556)]<=2&&(t=1===this[e(1103)][e(270)]?"10":"08"),s+"."+this[e(1103)][e(556)]+"."+i+(this[e(1103)].seq_tier_0?"H":"M")+"."+t},u[n(734)][n(794)][n(442)]=function(t,e){var s=n;this.size+=8,this.size>l&&(this[s(316)]+=8),this[s(1036)]===s(861)&&(this[s(316)]+=16),o[s(749)]("BoxWriter",s(1269)+this[s(1036)]+" of size: "+this.size+s(268)+t.getPosition()+(e||"")),this[s(316)]>l?t[s(305)](1):(this[s(564)]=t[s(972)](),t[s(305)](this[s(316)])),t[s(798)](this[s(1036)],null,4),this.type===s(861)&&t[s(1158)](this[s(861)]),this[s(316)]>l&&t[s(1012)](this[s(316)])},u[n(1192)][n(794)][n(442)]=function(t){var e=n;this[e(316)]+=4,u[e(734)][e(794)][e(442)][e(314)](this,t,e(835)+this[e(425)]+e(682)+this[e(360)]),t.writeUint8(this[e(425)]),t[e(568)](this[e(360)])},u.Box[n(794)][n(1212)]=function(t){var e=n;"mdat"===this[e(1036)]?this.data&&(this[e(316)]=this[e(1181)][e(189)],this.writeHeader(t),t[e(1158)](this[e(1181)])):(this[e(316)]=this[e(1181)]?this[e(1181)][e(189)]:0,this[e(442)](t),this.data&&t[e(1158)](this[e(1181)]))},u[n(154)][n(794)][n(1212)]=function(t){var e=n;this[e(316)]=0,this[e(442)](t);for(var s=0;s<this[e(511)][e(189)];s++)this.boxes[s]&&(this[e(511)][s].write(t),this.size+=this[e(511)][s].size);o.debug(e(509),"Adjusting box "+this[e(1036)]+" with new size "+this[e(316)]),t[e(182)](this[e(564)],this[e(316)])},u[n(342)][n(794)][n(1212)]=function(t){var e=n;this[e(316)]=4*this.track_ids[e(189)],this.writeHeader(t),t[e(1031)](this[e(131)])},u[n(393)].prototype.write=function(t){var e,s=n;for(this.size=7,e=0;e<this.SPS.length;e++)this.size+=2+this[s(224)][e][s(189)];for(e=0;e<this[s(971)][s(189)];e++)this.size+=2+this[s(971)][e][s(189)];for(this[s(757)]&&(this[s(316)]+=this[s(757)][s(189)]),this[s(442)](t),t[s(1219)](this.configurationVersion),t[s(1219)](this.AVCProfileIndication),t[s(1219)](this[s(1152)]),t.writeUint8(this[s(1323)]),t[s(1219)](this[s(1155)]+252),t[s(1219)](this[s(224)].length+224),e=0;e<this[s(224)][s(189)];e++)t[s(614)](this[s(224)][e][s(189)]),t[s(1158)](this[s(224)][e].nalu);for(t[s(1219)](this[s(971)].length),e=0;e<this[s(971)].length;e++)t.writeUint16(this[s(971)][e][s(189)]),t[s(1158)](this[s(971)][e][s(501)]);this.ext&&t[s(1158)](this.ext)},u.co64Box[n(794)][n(1212)]=function(t){var e,s=n;for(this[s(425)]=0,this.flags=0,this[s(316)]=4+8*this[s(1180)][s(189)],this.writeHeader(t),t[s(305)](this[s(1180)][s(189)]),e=0;e<this.chunk_offsets[s(189)];e++)t[s(1012)](this[s(1180)][e])},u[n(772)][n(794)][n(1212)]=function(t){var e=n;this[e(425)]=0,this[e(360)]=0,this[e(316)]=20,this[e(442)](t),t[e(989)](this[e(691)]),t[e(989)](this[e(598)]),t[e(989)](this.greatestDecodeToDisplayDelta),t[e(989)](this.compositionStartTime),t.writeInt32(this.compositionEndTime)},u.cttsBox[n(794)][n(1212)]=function(t){var e,s=n;for(this[s(425)]=0,this[s(360)]=0,this[s(316)]=4+8*this[s(512)][s(189)],this[s(442)](t),t[s(305)](this[s(512)][s(189)]),e=0;e<this[s(512)][s(189)];e++)t[s(305)](this[s(512)][e]),1===this.version?t[s(989)](this[s(515)][e]):t[s(305)](this[s(515)][e])},u[n(672)].prototype[n(1212)]=function(t){var e=n;this.version=0,this[e(360)]=0,this[e(316)]=4,this[e(442)](t),t.writeUint32(this.entries[e(189)]);for(var s=0;s<this[e(204)].length;s++)this.entries[s][e(1212)](t),this[e(316)]+=this[e(204)][s][e(316)];o[e(749)](e(509),e(718)+this.type+e(309)+this[e(316)]),t[e(182)](this[e(564)],this.size)},u[n(1261)].prototype.write=function(t){var e=n;this[e(425)]=0,this.flags=0,this[e(316)]=this[e(834)].length,this.writeHeader(t),t[e(798)](this[e(834)])},u.elstBox.prototype[n(1212)]=function(t){var e=n;this.version=0,this[e(360)]=0,this.size=4+12*this[e(204)][e(189)],this[e(442)](t),t[e(305)](this.entries[e(189)]);for(var s=0;s<this[e(204)][e(189)];s++){var i=this[e(204)][s];t.writeUint32(i.segment_duration),t[e(989)](i[e(1e3)]),t[e(1200)](i[e(1056)]),t.writeInt16(i[e(470)])}},u[n(1177)][n(794)][n(1212)]=function(t){var e=n;this[e(425)]=0,this[e(360)]=0,this.size=16+this[e(613)][e(189)]+(this.scheme_id_uri[e(189)]+1)+(this.value[e(189)]+1),this[e(442)](t),t[e(246)](this[e(921)]),t[e(246)](this.value),t.writeUint32(this.timescale),t.writeUint32(this[e(1119)]),t[e(305)](this[e(849)]),t.writeUint32(this.id),t.writeUint8Array(this[e(613)])},u[n(261)][n(794)][n(1212)]=function(t){var e=n;this[e(316)]=8+4*this.compatible_brands[e(189)],this[e(442)](t),t[e(798)](this[e(782)],null,4),t[e(305)](this[e(563)]);for(var s=0;s<this[e(174)][e(189)];s++)t[e(798)](this[e(174)][s],null,4)},u[n(827)].prototype[n(1212)]=function(t){var e=n;this[e(316)]=20+this[e(1018)][e(189)]+1,this[e(425)]=0,this[e(360)]=0,this[e(442)](t),t[e(305)](0),t[e(798)](this.handler,null,4),t[e(305)](0),t[e(305)](0),t[e(305)](0),t.writeCString(this[e(1018)])},u[n(572)][n(794)].write=function(t){var e,s,i=n;for(this.size=23,e=0;e<this[i(368)][i(189)];e++)for(this[i(316)]+=3,s=0;s<this[i(368)][e][i(189)];s++)this[i(316)]+=2+this.nalu_arrays[e][s][i(1181)][i(189)];for(this[i(442)](t),t[i(1219)](this[i(126)]),t[i(1219)](this[i(1335)]<<6+this.general_tier_flag<<5+this[i(352)]),t[i(305)](this[i(507)]),t[i(1158)](this[i(877)]),t[i(1219)](this[i(1083)]),t.writeUint16(this[i(1309)]+(15<<24)),t[i(1219)](this[i(1133)]+252),t.writeUint8(this[i(696)]+252),t[i(1219)](this[i(1061)]+248),t[i(1219)](this[i(1220)]+248),t[i(614)](this.avgFrameRate),t[i(1219)]((this[i(982)]<<6)+(this.numTemporalLayers<<3)+(this[i(1301)]<<2)+this[i(1155)]),t.writeUint8(this[i(368)][i(189)]),e=0;e<this[i(368)][i(189)];e++)for(t[i(1219)]((this[i(368)][e][i(1076)]<<7)+this[i(368)][e][i(1278)]),t[i(614)](this[i(368)][e].length),s=0;s<this.nalu_arrays[e][i(189)];s++)t[i(614)](this[i(368)][e][s][i(1181)][i(189)]),t.writeUint8Array(this[i(368)][e][s][i(1181)])},u[n(454)][n(794)].write=function(t){var e=n;this[e(425)]=0,this[e(360)]=0,this[e(316)]=this[e(477)][e(189)]+1+(this[e(299)].length+1),this.writeHeader(t),t.writeCString(this[e(477)]),t[e(246)](this[e(299)])},u[n(473)][n(794)].write=function(t){var e=n;this[e(316)]=20,this.flags=0,this.version=0,this[e(442)](t),t[e(305)](this[e(1234)]),t.writeUint32(this[e(1178)]),t[e(305)](this[e(439)]),t[e(305)](this[e(150)]),t.writeUint16(this[e(284)]),t.writeUint16(0)},u[n(1338)].prototype[n(1212)]=function(t){var e=n;this[e(425)]=0,this[e(360)]=0,this[e(316)]=4,this[e(442)](t),t.writeUint32(this[e(198)])},u.mfhdBox.prototype[n(1212)]=function(t){var e=n;this.version=0,this[e(360)]=0,this[e(316)]=4,this[e(442)](t),t[e(305)](this[e(233)])},u[n(755)][n(794)][n(1212)]=function(t){var e=n;this.version=0,this[e(360)]=0,this[e(316)]=96,this.writeHeader(t),t.writeUint32(this.creation_time),t[e(305)](this[e(1178)]),t[e(305)](this.timescale),t[e(305)](this[e(150)]),t[e(305)](this[e(1223)]),t[e(614)](this[e(247)]<<8),t.writeUint16(0),t.writeUint32(0),t[e(305)](0),t[e(1031)](this[e(950)]),t[e(305)](0),t[e(305)](0),t.writeUint32(0),t.writeUint32(0),t[e(305)](0),t[e(305)](0),t[e(305)](this[e(1293)])},u[n(502)].prototype[n(442)]=function(t){var e=n;this[e(316)]=8,u[e(734)][e(794)][e(442)][e(314)](this,t),t[e(1219)](0),t[e(1219)](0),t[e(1219)](0),t[e(1219)](0),t[e(1219)](0),t.writeUint8(0),t[e(614)](this[e(1297)])},u[n(502)][n(794)].writeFooter=function(t){for(var e=n,s=0;s<this[e(511)][e(189)];s++)this[e(511)][s].write(t),this[e(316)]+=this[e(511)][s][e(316)];o[e(749)](e(509),"Adjusting box "+this[e(1036)]+e(309)+this[e(316)]),t[e(182)](this.sizePosition,this[e(316)])},u[n(502)][n(794)][n(1212)]=function(t){var e=n;this[e(442)](t),t.writeUint8Array(this[e(1181)]),this.size+=this[e(1181)].length,o.debug("BoxWriter",e(718)+this.type+" with new size "+this[e(316)]),t[e(182)](this[e(564)],this[e(316)])},u[n(436)].prototype[n(1212)]=function(t){var e=n;this[e(442)](t),this[e(316)]+=70,t[e(614)](0),t[e(614)](0),t[e(305)](0),t[e(305)](0),t[e(305)](0),t[e(614)](this[e(347)]),t[e(614)](this[e(280)]),t[e(305)](this[e(763)]),t[e(305)](this[e(999)]),t.writeUint32(0),t[e(614)](this[e(265)]),t.writeUint8(Math[e(469)](31,this[e(990)].length)),t[e(798)](this[e(990)],null,31),t.writeUint16(this[e(493)]),t[e(1200)](-1),this.writeFooter(t)},u[n(1058)][n(794)].write=function(t){var e=n;this[e(442)](t),this[e(316)]+=20,t[e(305)](0),t[e(305)](0),t[e(614)](this[e(688)]),t.writeUint16(this[e(345)]),t.writeUint16(0),t[e(614)](0),t[e(305)](this[e(787)]<<16),this.writeFooter(t)},u[n(574)][n(794)][n(1212)]=function(t){var e=n;this[e(442)](t),this[e(316)]+=this[e(822)][e(189)]+1+this[e(437)][e(189)]+1+this[e(1225)].length+1,t[e(246)](this.namespace),t[e(246)](this.schema_location),t[e(246)](this[e(1225)]),this[e(890)](t)},u[n(1057)][n(794)].write=function(t){var e=n;t[e(1158)](this[e(1181)])},u[n(133)][n(794)][n(1212)]=function(t){var e=n;this.version=1,this[e(360)]=0,this[e(316)]=12+8*this[e(204)].length,this[e(442)](t),t.writeString(this[e(415)],null,4),t.writeUint32(this[e(681)]),t[e(305)](this[e(204)][e(189)]);for(var s=0;s<this.entries.length;s++){var i=this[e(204)][s];t[e(989)](i[e(624)]),t.writeInt32(i[e(1272)])}},u[n(776)][n(794)][n(1212)]=function(t){var e,s,i=n;for(this.flags=0,this[i(316)]=12,e=0;e<this[i(204)][i(189)];e++)s=this[i(204)][e],1===this.version&&(0===this[i(635)]&&(this[i(316)]+=4),this.size+=s[i(1181)][i(189)]);for(this.writeHeader(t),t.writeString(this.grouping_type,null,4),1===this[i(425)]&&t.writeUint32(this.default_length),this[i(425)]>=2&&t.writeUint32(this[i(724)]),t[i(305)](this.entries.length),e=0;e<this[i(204)][i(189)];e++)s=this.entries[e],1===this.version&&0===this.default_length&&t[i(305)](s.description_length),s[i(1212)](t)},u.sidxBox[n(794)][n(1212)]=function(t){var e=n;this[e(425)]=0,this.flags=0,this[e(316)]=20+12*this.references.length,this[e(442)](t),t[e(305)](this.reference_ID),t.writeUint32(this[e(439)]),t[e(305)](this[e(438)]),t[e(305)](this[e(539)]),t[e(614)](0),t[e(614)](this[e(1044)].length);for(var s=0;s<this[e(1044)][e(189)];s++){var i=this[e(1044)][s];t.writeUint32(i[e(138)]<<31|i[e(1065)]),t[e(305)](i[e(283)]),t[e(305)](i[e(1252)]<<31|i[e(592)]<<28|i[e(143)])}},u.smhdBox[n(794)][n(1212)]=function(t){var e=n;this[e(425)]=0,this.flags=1,this.size=4,this[e(442)](t),t[e(614)](this[e(546)]),t[e(614)](0)},u[n(1099)][n(794)][n(1212)]=function(t){var e=n;this[e(425)]=0,this[e(360)]=0,this[e(316)]=4+4*this[e(1180)].length,this[e(442)](t),t[e(305)](this[e(1180)][e(189)]),t[e(1031)](this[e(1180)])},u[n(1249)][n(794)][n(1212)]=function(t){var e,s=n;for(this[s(425)]=0,this[s(360)]=0,this.size=4+12*this.first_chunk[s(189)],this[s(442)](t),t[s(305)](this.first_chunk[s(189)]),e=0;e<this.first_chunk.length;e++)t[s(305)](this.first_chunk[e]),t.writeUint32(this[s(988)][e]),t[s(305)](this[s(742)][e])},u.stsdBox[n(794)][n(1212)]=function(t){var e,s=n;for(this.version=0,this[s(360)]=0,this[s(316)]=0,this[s(442)](t),t.writeUint32(this[s(204)][s(189)]),this[s(316)]+=4,e=0;e<this[s(204)][s(189)];e++)this[s(204)][e].write(t),this[s(316)]+=this[s(204)][e][s(316)];o[s(749)](s(509),s(718)+this.type+s(309)+this[s(316)]),t[s(182)](this[s(564)],this.size)},u[n(1176)][n(794)][n(1212)]=function(t){var e,s=n;for(this[s(425)]=0,this[s(360)]=0,this[s(316)]=4+8*this.shadowed_sample_numbers[s(189)],this[s(442)](t),t[s(305)](this[s(1251)].length),e=0;e<this[s(1251)].length;e++)t.writeUint32(this.shadowed_sample_numbers[e]),t[s(305)](this[s(930)][e])},u.stssBox[n(794)].write=function(t){var e=n;this[e(425)]=0,this[e(360)]=0,this.size=4+4*this[e(311)][e(189)],this[e(442)](t),t[e(305)](this.sample_numbers[e(189)]),t[e(1031)](this[e(311)])},u[n(1087)][n(794)].write=function(t){var e,s=n,i=!0;if(this[s(425)]=0,this[s(360)]=0,this.sample_sizes.length>0)for(e=0;e+1<this[s(377)].length;){if(this[s(377)][e+1]!==this[s(377)][0]){i=!1;break}e++}else i=!1;this.size=8,!i&&(this[s(316)]+=4*this[s(377)][s(189)]),this[s(442)](t),i?t.writeUint32(this[s(377)][0]):t[s(305)](0),t[s(305)](this[s(377)][s(189)]),!i&&t[s(1031)](this[s(377)])},u[n(649)][n(794)][n(1212)]=function(t){var e,s=n;for(this[s(425)]=0,this[s(360)]=0,this[s(316)]=4+8*this.sample_counts[s(189)],this[s(442)](t),t[s(305)](this[s(512)][s(189)]),e=0;e<this[s(512)][s(189)];e++)t[s(305)](this.sample_counts[e]),t[s(305)](this[s(222)][e])},u[n(1040)][n(794)][n(1212)]=function(t){var e=n,s=Math.pow(2,32)-1;this[e(425)]=this[e(190)]>s?1:0,this[e(360)]=0,this.size=4,1===this[e(425)]&&(this[e(316)]+=4),this[e(442)](t),1===this[e(425)]?t.writeUint64(this[e(190)]):t[e(305)](this[e(190)])},u[n(472)][n(794)][n(1212)]=function(t){var e=n;this[e(425)]=0,this[e(316)]=4,this[e(360)]&u[e(715)]&&(this[e(316)]+=8),this.flags&u[e(435)]&&(this.size+=4),this[e(360)]&u[e(530)]&&(this[e(316)]+=4),this[e(360)]&u[e(468)]&&(this[e(316)]+=4),this[e(360)]&u[e(279)]&&(this[e(316)]+=4),this[e(442)](t),t.writeUint32(this[e(869)]),this.flags&u[e(715)]&&t[e(1012)](this[e(1280)]),this.flags&u[e(435)]&&t[e(305)](this[e(724)]),this[e(360)]&u[e(530)]&&t.writeUint32(this[e(750)]),this[e(360)]&u[e(468)]&&t[e(305)](this.default_sample_size),this[e(360)]&u[e(279)]&&t[e(305)](this.default_sample_flags)},u[n(344)].prototype.write=function(t){var e=n;this[e(425)]=0,this.size=80,this[e(442)](t),t[e(305)](this[e(1234)]),t[e(305)](this[e(1178)]),t[e(305)](this[e(869)]),t[e(305)](0),t[e(305)](this[e(150)]),t[e(305)](0),t[e(305)](0),t[e(1200)](this[e(1117)]),t[e(1200)](this[e(666)]),t[e(1200)](this.volume<<8),t[e(614)](0),t[e(1222)](this[e(950)]),t.writeUint32(this[e(347)]),t[e(305)](this[e(280)])},u.trexBox[n(794)][n(1212)]=function(t){var e=n;this.version=0,this.flags=0,this[e(316)]=20,this[e(442)](t),t.writeUint32(this.track_id),t.writeUint32(this.default_sample_description_index),t[e(305)](this.default_sample_duration),t[e(305)](this[e(958)]),t.writeUint32(this[e(1163)])},u[n(753)][n(794)][n(1212)]=function(t){var e=n;this[e(425)]=0,this[e(316)]=4,this[e(360)]&u[e(920)]&&(this[e(316)]+=4),this.flags&u[e(525)]&&(this[e(316)]+=4),this[e(360)]&u[e(482)]&&(this[e(316)]+=4*this[e(488)][e(189)]),this[e(360)]&u[e(179)]&&(this[e(316)]+=4*this[e(586)][e(189)]),this[e(360)]&u[e(229)]&&(this[e(316)]+=4*this.sample_flags.length),this[e(360)]&u[e(826)]&&(this[e(316)]+=4*this[e(775)][e(189)]),this[e(442)](t),t[e(305)](this[e(624)]),this[e(360)]&u[e(920)]&&(this.data_offset_position=t.getPosition(),t.writeInt32(this[e(917)])),this[e(360)]&u[e(525)]&&t[e(305)](this[e(271)]);for(var s=0;s<this[e(624)];s++)this[e(360)]&u[e(482)]&&t.writeUint32(this[e(488)][s]),this[e(360)]&u.TRUN_FLAGS_SIZE&&t[e(305)](this[e(586)][s]),this[e(360)]&u[e(229)]&&t[e(305)](this.sample_flags[s]),this[e(360)]&u[e(826)]&&(0===this[e(425)]?t[e(305)](this[e(775)][s]):t.writeInt32(this[e(775)][s]))},u[n(1324)][n(794)][n(1212)]=function(t){var e=n;this[e(425)]=0,this[e(417)]?(this[e(360)]=0,this[e(316)]=this[e(417)].length+1):(this.flags=1,this[e(316)]=0),this[e(442)](t),this[e(417)]&&t[e(246)](this[e(417)])},u["urn Box"][n(794)][n(1212)]=function(t){var e=n;this[e(425)]=0,this.flags=0,this[e(316)]=this[e(1018)][e(189)]+1+(this[e(417)]?this[e(417)][e(189)]+1:0),this[e(442)](t),t.writeCString(this[e(1018)]),this.location&&t[e(246)](this[e(417)])},u[n(172)][n(794)].write=function(t){var e=n;this[e(425)]=0,this.flags=1,this[e(316)]=8,this[e(442)](t),t[e(614)](this[e(797)]),t[e(748)](this[e(1146)])},u[n(1326)][n(794)][n(621)]=function(t){var e,s,i,r=n;for(i=0,e=0;e<this[r(512)][r(189)];e++)for(s=0;s<this[r(512)][e];s++)t[i].pts=t[i][r(801)]+this[r(515)][e],i++},u[n(649)][n(794)][n(621)]=function(t){var e,s,i,r=n;for(i=0,e=0;e<this[r(512)][r(189)];e++)for(s=0;s<this[r(512)][e];s++)t[i][r(801)]=0===i?0:t[i-1][r(801)]+this.sample_deltas[e],i++},u[n(1099)][n(794)].unpack=function(t){var e,s=n;for(e=0;e<this[s(1180)][s(189)];e++)t[e][s(398)]=this[s(1180)][e]},u[n(1249)][n(794)][n(621)]=function(t){var e,s,i,r,o,a=n;for(r=0,o=0,e=0;e<this[a(594)][a(189)];e++)for(s=0;s<(e+1<this[a(594)][a(189)]?this[a(594)][e+1]:1/0);s++)for(o++,i=0;i<this[a(988)][e];i++){if(!t[r])return;t[r][a(1191)]=this[a(742)][e],t[r][a(479)]=o,r++}},u[n(1087)][n(794)][n(621)]=function(t){var e,s=n;for(e=0;e<this[s(377)][s(189)];e++)t[e][s(316)]=this[s(377)][e]},u.DIFF_BOXES_PROP_NAMES=[n(511),n(204),n(1044),n(883),n(420),n(370),n(508),n(1217),n(638),"ranges",n(1295),n(575),"esd",n(267)],u[n(492)]=[n(174),n(950),n(1146),n(512),n(512),n(222),n(594),n(988),n(377),n(1180),n(515),n(742),"sample_duration"],u[n(854)]=function(t,e){var s,i=n;if(t&&!e)return!1;for(s in t)if(!(u[i(821)][i(1260)](s)>-1||t[s]instanceof u[i(734)]||e[s]instanceof u.Box||typeof t[s]===i(754)||void 0===e[s]||typeof t[s]===i(168)||typeof e[s]===i(168)||t[i(412)]&&t[i(412)][i(1260)](s.slice(0,4))>-1||e.subBoxNames&&e.subBoxNames.indexOf(s[i(1111)](0,4))>-1||"data"===s||s===i(741)||"size"===s||s===i(1234)||s===i(1178)||u[i(492)][i(1260)](s)>-1||t[s]===e[s]))return!1;return!0},u.boxEqual=function(t,e){var s=n;if(!u[s(854)](t,e))return!1;for(var i=0;i<u[s(821)][s(189)];i++){var r=u.DIFF_BOXES_PROP_NAMES[i];if(t[r]&&e[r]&&!u[s(543)](t[r],e[r]))return!1}return!0};var m=function(){};m[n(794)][n(164)]=function(t){var e,s,i=n,r=new a(t.buffer);for(e=[];!r[i(862)]();)(s=u[i(302)](r,!1))[i(496)]===u.OK&&s[i(683)][i(1036)]===i(156)&&e.push(s[i(683)]);return e},m.prototype[n(332)]=function(t,e,s){var i=n;function r(t,e,s){var i=dm;return s=s||"0",(t+="")[i(189)]>=e?t:new Array(e-t[i(189)]+1)[i(1339)](s)+t}function o(t){var e=dm,s=Math[e(404)](t/3600),i=Math[e(404)]((t-3600*s)/60),n=Math[e(404)](t-3600*s-60*i),o=Math[e(404)](1e3*(t-3600*s-60*i-n));return r(s,2)+":"+r(i,2)+":"+r(n,2)+"."+r(o,3)}for(var a=this.parseSample(s),h="",l=0;l<a[i(189)];l++){var c=a[l];h+=o(t)+i(465)+o(e)+"\r\n",h+=c[i(846)].text}return h};var g=function(){};g[n(794)][n(164)]=function(t){var e,s=n,i={};i[s(1256)]=[];var r=new a(t.data.buffer);if(t[s(883)]&&0!==t[s(883)][s(189)]){if(i[s(836)]=r[s(927)](t[s(883)][0][s(316)]),t[s(883)].length>1)for(e=1;e<t[s(883)][s(189)];e++)i[s(1256)][e]=r[s(818)](t[s(883)][e][s(316)])}else i[s(836)]=r[s(927)](t.data[s(189)]);return"undefined"!=typeof DOMParser&&(i.document=(new DOMParser)[s(1199)](i[s(836)],s(820))),i};var y=function(){};y[n(794)][n(164)]=function(t){var e=n;return new a(t[e(1181)].buffer)[e(927)](t[e(1181)][e(189)])},y[n(794)].parseConfig=function(t){var e=n,s=new a(t[e(975)]);return s[e(885)](),s.readCString()},n(430)!==n(754)&&(e[n(1236)]=g,e[n(1250)]=y);var A=function(t){var e=n;this.stream=t||new c,this[e(511)]=[],this[e(828)]=[],this[e(1214)]=[],this[e(804)]=!1,this[e(1253)]=!1,this[e(1300)]=null,this.moovStartSent=!1,this[e(1067)]=null,this[e(262)]=!1,this[e(1066)]=null,this[e(765)]=null,this.onError=null,this.sampleListBuilt=!1,this[e(238)]=[],this[e(1164)]=[],this.isFragmentationInitialized=!1,this.sampleProcessingStarted=!1,this[e(167)]=0,this[e(403)]=!1,this[e(745)]=null,this[e(359)]=!1};A.prototype[n(319)]=function(){var t=n;this[t(703)]&&(this[t(703)][t(319)](),this[t(703)]=null),this[t(511)]=[],this[t(828)]=[],this[t(1214)]=[],this[t(804)]=!1,this.moovStartFound=!1,this[t(1300)]=null,this.moovStartSent=!1,this[t(1067)]=null,this[t(262)]=!1,this[t(1066)]=null,this[t(765)]=null,this[t(610)]=null,this[t(1182)]=!1,this[t(238)]=[],this[t(1164)]=[],this[t(551)]=!1,this[t(759)]=!1,this[t(167)]=0,this.itemListBuilt=!1,this[t(745)]=null,this[t(359)]=!1,this[t(1346)]=null,this[t(158)]=null,this[t(420)]=[],this[t(1348)]=[]},A[n(794)][n(870)]=function(t,e,s){var i=n,r=this.getTrackById(t);if(r){var o={};this[i(238)][i(967)](o),o.id=t,o[i(371)]=e,o[i(485)]=r,r.nextSample=0,o[i(964)]=null,o.nb_samples=1e3,o[i(1329)]=!0,s&&(s[i(202)]&&(o[i(148)]=s[i(202)]),s.rapAlignement&&(o[i(1329)]=s[i(1329)]))}},A[n(794)][n(667)]=function(t){for(var e=n,s=-1,i=0;i<this[e(238)][e(189)];i++){this[e(238)][i].id==t&&(s=i)}s>-1&&this[e(238)][e(1092)](s,1)},A[n(794)][n(434)]=function(t,e,s){var i=n,r=this[i(968)](t);if(r){var o={};this[i(1164)][i(967)](o),o.id=t,o.user=e,o.trak=r,r.nextSample=0,o[i(148)]=1e3,o[i(266)]=[],s&&s[i(202)]&&(o.nb_samples=s[i(202)])}},A.prototype[n(1221)]=function(t){for(var e=n,s=-1,i=0;i<this[e(1164)][e(189)];i++){this[e(1164)][i].id==t&&(s=i)}s>-1&&this.extractedTracks[e(1092)](s,1)},A[n(794)][n(1094)]=function(){var t,e,s=n;if(!this[s(421)]||this[s(421)]())for(;;){if(this.hasIncompleteMdat&&this[s(1197)]()){if(this[s(1115)]())continue;return}if(this.saveParsePosition&&this[s(601)](),(t=u[s(302)](this[s(703)],false))[s(496)]===u[s(389)]){if(this[s(1025)]){if(this[s(1025)](t))continue;return}return}var i;switch(i=(e=t[s(683)])[s(1036)]!==s(861)?e[s(1036)]:e[s(861)],this[s(511)].push(e),i){case s(357):this.mdats[s(967)](e);break;case s(1268):this[s(1214)][s(967)](e);break;case"moov":this[s(1253)]=!0,0===this[s(828)][s(189)]&&(this[s(804)]=!0);default:this[i],this[i]=e}this[s(933)]&&this.updateUsedBytes(e,t)}},A.prototype[n(786)]=function(t){var e=n;if(null==t)throw e(1198);if(void 0===t.fileStart)throw e(1052);return 0===t.byteLength?(this.stream[e(699)](),!1):(t[e(739)]=0,this[e(703)][e(1154)](t),this[e(703)][e(699)](),!!this.stream[e(483)]())},A.prototype[n(746)]=function(t,e){var s,i=n;if(this.checkBuffer(t))return this[i(1094)](),this[i(1253)]&&!this[i(537)]&&(this.moovStartSent=!0,this[i(1300)]&&this[i(1300)]()),this[i(1346)]?(!this.sampleListBuilt&&(this[i(341)](),this[i(1182)]=!0),this.updateSampleLists(),this[i(1067)]&&!this[i(262)]&&(this[i(262)]=!0,this[i(1067)](this[i(1016)]())),this.processSamples(e),this[i(1110)]?(s=this[i(1110)],this[i(1110)]=void 0):s=this.nextParsePosition,this[i(703)][i(799)]&&(s=this.stream.getEndFilePositionAfter(s))):s=this[i(516)]?this[i(516)]:0,this[i(527)]&&this[i(745)]&&!this.sidxSent&&(this[i(745)](this[i(527)]),this[i(359)]=!0),this[i(913)]&&(this[i(181)]&&!this.itemListBuilt&&(this[i(181)](),this.itemListBuilt=!0),this[i(213)]&&this[i(213)](this[i(1047)])),this[i(703)][i(256)]&&(this[i(703)].logBufferLevel(),this[i(703)][i(256)](),this[i(703)][i(699)](!0)),s},A[n(794)].getInfo=function(){var t,e,s,i,r,o,a=n,h={},l=new Date("1904-01-01T00:00:00Z")[a(1145)]();if(this.moov)for(h[a(803)]=!0,h[a(150)]=this.moov.mvhd[a(150)],h[a(439)]=this[a(1346)][a(1337)][a(439)],h[a(928)]=null!=this[a(1346)].mvex,h[a(928)]&&this[a(1346)].mvex[a(633)]&&(h[a(198)]=this[a(1346)].mvex[a(633)][a(198)]),h[a(804)]=this[a(804)],h.hasIOD=null!=this[a(1346)][a(735)],h[a(1289)]=[],h[a(1289)].push(this[a(158)][a(782)]),h[a(1289)]=h[a(1289)][a(407)](this[a(158)][a(174)]),h[a(1196)]=new Date(l+1e3*this.moov[a(1337)][a(1234)]),h[a(701)]=new Date(l+1e3*this.moov[a(1337)][a(1178)]),h.tracks=[],h[a(857)]=[],h[a(589)]=[],h[a(429)]=[],h.metadataTracks=[],h[a(903)]=[],h.otherTracks=[],t=0;t<this[a(1346)][a(557)][a(189)];t++){if(o=(s=this[a(1346)][a(557)][t])[a(1202)][a(1077)][a(170)][a(722)][a(204)][0],i={},h[a(856)][a(967)](i),i.id=s.tkhd[a(869)],i[a(1018)]=s.mdia.hdlr[a(1018)],i.references=[],s[a(658)])for(e=0;e<s[a(658)][a(511)][a(189)];e++)r={},i.references.push(r),r[a(1036)]=s[a(658)][a(511)][e][a(1036)],r.track_ids=s[a(658)][a(511)][e][a(131)];s[a(852)]&&(i.edits=s.edts[a(675)][a(204)]),i[a(1196)]=new Date(l+1e3*s[a(1288)][a(1234)]),i[a(701)]=new Date(l+1e3*s[a(1288)].modification_time),i[a(838)]=s[a(1288)].duration,i[a(1041)]=h[a(439)],i[a(1117)]=s[a(1288)][a(1117)],i[a(666)]=s[a(1288)][a(666)],i[a(247)]=s.tkhd.volume,i.matrix=s[a(1288)][a(950)],i[a(1139)]=s.tkhd[a(347)]/65536,i[a(432)]=s[a(1288)].height/65536,i[a(439)]=s[a(1202)][a(196)][a(439)],i[a(851)]=s[a(1202)][a(1077)][a(170)][a(947)],i.duration=s[a(1202)][a(196)][a(150)],i[a(241)]=s[a(241)],i[a(1204)]=o[a(1108)](),i[a(806)]=s.udta&&s[a(381)][a(452)][a(189)]?s[a(381)].kinds[0]:{schemeURI:"",value:""},i[a(284)]=s[a(1202)].elng?s[a(1202)][a(1213)][a(834)]:s.mdia[a(196)][a(602)],i.nb_samples=s[a(266)][a(189)],i[a(316)]=s[a(296)],i[a(1308)]=8*i[a(316)]*i[a(439)]/i[a(241)],o[a(706)]()?(i.type=a(272),h[a(857)].push(i),i.audio={},i[a(272)][a(676)]=o[a(868)](),i[a(272)][a(688)]=o[a(1134)](),i[a(272)][a(586)]=o.getSampleSize()):o[a(875)]()?(i[a(1036)]="video",h[a(589)][a(967)](i),i[a(618)]={},i[a(618)][a(347)]=o.getWidth(),i[a(618)][a(280)]=o[a(808)]()):o[a(1021)]()?(i[a(1036)]=a(1210),h[a(429)][a(967)](i)):o[a(1162)]()?(i[a(1036)]=a(769),h[a(903)][a(967)](i)):o.isMetadata()?(i[a(1036)]="metadata",h.metadataTracks[a(967)](i)):(i[a(1036)]=a(769),h[a(236)][a(967)](i))}else h[a(803)]=!1;if(h[a(645)]="",h[a(803)]&&h[a(856)]){for(h.videoTracks&&h[a(589)].length>0?h[a(645)]+=a(650):h.audioTracks&&h.audioTracks[a(189)]>0?h[a(645)]+=a(1209):h[a(645)]+='application/mp4; codecs="',t=0;t<h.tracks[a(189)];t++)0!==t&&(h[a(645)]+=","),h[a(645)]+=h[a(856)][t][a(1204)];h[a(645)]+=a(938),h[a(645)]+=this[a(158)][a(174)][a(1339)](),h.mime+='"'}return h},A[n(794)][n(325)]=function(t){var e=n;t&&(this.nextSeekPosition?this[e(1110)]=Math.min(t.offset+t[e(912)],this[e(1110)]):this[e(1110)]=t[e(398)]+t.alreadyRead)},A[n(794)].processSamples=function(t){var e,s,i=n;if(this[i(759)]){if(this[i(551)]&&null!==this[i(1066)])for(e=0;e<this[i(238)][i(189)];e++){var r=this.fragmentedTracks[e];for(s=r[i(485)];s[i(498)]<s.samples[i(189)]&&this[i(759)];){o[i(749)](i(762),i(467)+r.id+i(944)+s[i(498)]);var a=this.createFragment(r.id,s[i(498)],r.segmentStream);if(!a)break;if(r.segmentStream=a,s[i(498)]++,(s[i(498)]%r[i(148)]===0||t||s[i(498)]>=s[i(266)][i(189)])&&(this[i(1066)]&&this[i(1066)](r.id,r[i(371)],r[i(964)][i(975)],s.nextSample,t||s[i(498)]>=s[i(266)][i(189)]),r.segmentStream=null,r!==this[i(238)][e]))break}}if(null!==this[i(765)])for(e=0;e<this[i(1164)][i(189)];e++){var h=this.extractedTracks[e];for(s=h[i(485)];s[i(498)]<s[i(266)][i(189)]&&this[i(759)];){o[i(749)](i(762),i(249)+h.id+i(128)+s[i(498)]);var l=this[i(1218)](s,s.nextSample);if(!l){this[i(325)](s[i(266)][s[i(498)]]);break}if(s[i(498)]++,h[i(266)].push(l),(s.nextSample%h[i(148)]===0||s[i(498)]>=s[i(266)][i(189)])&&(o[i(749)](i(762),"Sending samples on track #"+h.id+i(944)+s[i(498)]),this.onSamples&&this.onSamples(h.id,h[i(371)],h.samples),h[i(266)]=[],h!==this.extractedTracks[e]))break}}}},A.prototype[n(1153)]=function(t){var e=n,s=this[e(1277)](t,!0);return s[e(189)]?s[0]:null},A[n(794)][n(1277)]=function(t,e){var s=n,i=[];return A[s(867)][s(314)](this,t,i,e),i},A[n(867)]=function(t,e,s){var i=n;for(var r in this.type&&this[i(1036)]==t&&e.push(this),this[i(511)]){if(e[i(189)]&&s)return;A._sweep[i(314)](this[i(511)][r],t,e,s)}},A[n(794)][n(1342)]=function(t){var e=n,s=this[e(968)](t);return s?s[e(266)]:void 0},A[n(794)].getTrackSample=function(t,e){var s=n,i=this.getTrackById(t);return this[s(1218)](i,e)},A[n(794)].releaseUsedSamples=function(t,e,s){var i=n,r=this[i(968)](t);r[i(227)]||(r.lastValidSample=0);for(var o=r.lastValidSample;o<e;o++)this[i(850)](r,o);r[i(227)]=e,s&&(this.boxes=[],this[i(828)]=[],this[i(1214)]=[],this[i(152)]=0)},A[n(794)][n(632)]=function(t){var e=n,s=this[e(968)](t);const i=s.samples,r=i[i.length-1];r[e(1181)]=null,r.description=null,r[e(912)]=0,s[e(266)]=[],s[e(266)][e(967)](r),s[e(498)]=s[e(266)][e(189)],this[e(511)]=[],this[e(828)]=[],this.moofs=[],this[e(152)]=0},A.prototype.start=function(){this.sampleProcessingStarted=!0,this.processSamples(!1)},A.prototype.stop=function(){this[n(759)]=!1},A[n(794)].flush=function(){var t=n;this.updateSampleLists(),this[t(318)](!0),this.stream.cleanBuffers(),this[t(703)].logBufferLevel(!0)},A[n(794)][n(250)]=function(t,e,s){var i,r,o,a=n,h=0,l=0;if(0===s.samples[a(189)])return{offset:0,time:0};for(i=0;i<s[a(266)][a(189)];i++){if(r=s[a(266)][i],0===i)l=0,o=r[a(439)];else if(r.cts>t*r[a(439)]){l=i-1;break}e&&r[a(937)]&&(h=i)}for(e&&(l=h),t=s.samples[l][a(1091)],s[a(498)]=l;s[a(266)][l][a(912)]===s[a(266)][l][a(316)]&&s[a(266)][l+1];)l++;return{offset:s.samples[l][a(398)]+s[a(266)][l][a(912)],time:t/o}},A[n(794)][n(187)]=function(t){var e,s=n;return t.samples?((e=t.samples[t[s(266)][s(189)]-1])[s(1091)]+e[s(150)])/e[s(439)]:1/0},A[n(794)].seek=function(t,e){var s,i,r,o=n,a=this[o(1346)],h={offset:1/0,time:1/0};if(this[o(1346)]){for(r=0;r<a[o(557)][o(189)];r++)s=a[o(557)][r],t>this[o(187)](s)||((i=this[o(250)](t,e,s))[o(398)]<h.offset&&(h[o(398)]=i[o(398)]),i[o(1043)]<h[o(1043)]&&(h.time=i.time));return h[o(398)]===1/0?h={offset:this[o(516)],time:0}:h[o(398)]=this.stream[o(799)](h[o(398)]),h}throw o(471)},A[n(794)][n(969)]=function(t){for(var e=n,s=0;s<this[e(511)][e(189)]&&s<t[e(511)].length;){var i=this[e(511)][s],r=t[e(511)][s];if(!u[e(543)](i,r))return!1;s++}return!0},n(430)!==n(754)&&(e.ISOFile=A),A[n(794)][n(813)]=0,A[n(794)][n(740)]=null,A.prototype[n(516)]=0,A[n(794)][n(595)]=!1,A[n(794)][n(1025)]=function(t){var e,s=n;return t[s(1036)]===s(357)?(e=new(u[t[s(1036)]+s(734)])(t.size),this[s(740)]=e,this[s(511)].push(e),this[s(828)].push(e),e[s(741)]=t[s(741)],e[s(733)]=t.hdr_size,this[s(703)].addUsedBytes(e.hdr_size),this.lastBoxStartPosition=e.start+e[s(316)],this[s(703)].seek(e[s(741)]+e.size,!1,this[s(595)])?(this[s(740)]=null,!0):(this.moovStartFound?this[s(516)]=this[s(703)][s(709)]():this.nextParsePosition=e[s(741)]+e[s(316)],!1)):(t[s(1036)]===s(1346)&&(this[s(1253)]=!0,0===this[s(828)][s(189)]&&(this[s(804)]=!0)),!!this[s(703)][s(752)]&&this[s(703)][s(752)]()?(this.nextParsePosition=this[s(703)].getEndPosition(),!0):(t.type?this.moovStartFound?this[s(516)]=this.stream.getEndPosition():this[s(516)]=this[s(703)][s(972)]()+t[s(316)]:this.nextParsePosition=this[s(703)][s(132)](),!1))},A.prototype[n(1197)]=function(){return null!==this.parsingMdat},A.prototype.processIncompleteMdat=function(){var t,e=n;return t=this[e(740)],this[e(703)].seek(t[e(741)]+t[e(316)],!1,this.discardMdatData)?(o[e(749)](e(762),"Found 'mdat' end in buffered data"),this.parsingMdat=null,!0):(this[e(516)]=this[e(703)][e(709)](),!1)},A[n(794)][n(421)]=function(){var t=n;return this.stream[t(411)](this[t(813)],!0,this[t(595)])},A.prototype[n(601)]=function(){var t=n;this[t(813)]=this[t(703)][t(972)]()},A[n(794)][n(933)]=function(t,e){var s=n;this.stream[s(976)]&&(t[s(1036)]===s(357)?(this[s(703)][s(976)](t[s(733)]),this[s(595)]&&this.stream.addUsedBytes(t[s(316)]-t[s(733)])):this[s(703)].addUsedBytes(t.size))},A[n(794)].add=u[n(734)][n(794)][n(542)],A[n(794)][n(301)]=u.Box[n(794)][n(301)],A[n(794)][n(940)]=function(t){var e=n,s=t||{};this[e(542)](e(158))[e(625)]("major_brand",s[e(1289)]&&s[e(1289)][0]||e(1095)).set(e(563),0)[e(625)]("compatible_brands",s[e(1289)]||[e(1095)]);var i=this[e(542)](e(1346));return i[e(542)]("mvhd").set(e(439),s[e(439)]||600)[e(625)](e(1223),s[e(1223)]||65536).set(e(1234),0)[e(625)](e(1178),0)[e(625)]("duration",s[e(150)]||0).set(e(247),s.width?0:256).set(e(950),[65536,0,0,0,65536,0,0,0,1073741824])[e(625)]("next_track_id",1),i[e(542)](e(448)),this},A.prototype[n(188)]=function(t){var e=n;!this[e(1346)]&&this[e(940)](t);var s=t||{};s[e(347)]=s[e(347)]||320,s[e(280)]=s.height||320,s.id=s.id||this[e(1346)][e(1337)][e(1293)],s[e(1036)]=s[e(1036)]||"avc1";var i=this[e(1346)].add("trak");this[e(1346)][e(1337)][e(1293)]=s.id+1,i.add(e(1288)).set("flags",u[e(1194)]|u[e(1116)]|u[e(544)])[e(625)](e(1234),0)[e(625)](e(1178),0)[e(625)](e(869),s.id).set("duration",s[e(150)]||0)[e(625)]("layer",s[e(1117)]||0)[e(625)](e(666),0).set("volume",1).set(e(950),[0,0,0,0,0,0,0,0,0]).set(e(347),s[e(347)]<<16)[e(625)](e(280),s[e(280)]<<16);var r=i.add(e(1202));r[e(542)](e(196))[e(625)](e(1234),0)[e(625)](e(1178),0).set(e(439),s[e(439)]||1)[e(625)]("duration",s.media_duration||0)[e(625)](e(284),s[e(284)]||e(810)),r.add(e(841)).set(e(277),s[e(841)]||e(408))[e(625)]("name",s[e(1018)]||"Track created with MP4Box.js"),r[e(542)](e(1213))[e(625)]("extended_language",s[e(284)]||e(214));var o=r[e(542)](e(1077));if(void 0!==u[s[e(1036)]+e(502)]){var h=new(u[s[e(1036)]+"SampleEntry"]);h.data_reference_index=1;var l="";for(var c in u[e(1227)])for(var d=u[e(1227)][c],p=0;p<d.length;p++)if(d[e(1260)](s[e(1036)])>-1){l=c;break}switch(l){case"Visual":if(o.add(e(1032)).set(e(797),0)[e(625)](e(1146),[0,0,0]),h[e(625)](e(347),s[e(347)]).set(e(280),s.height)[e(625)](e(763),72<<16)[e(625)](e(999),72<<16)[e(625)](e(265),1)[e(625)]("compressorname",s[e(1036)]+e(326))[e(625)](e(493),24),s[e(1215)]){var f=new u.avcCBox;f.parse(new a(s[e(1215)])),h.addBox(f)}else if(s[e(824)]){var m=new(u[e(572)]);m[e(1094)](new a(s[e(824)])),h[e(301)](m)}break;case e(1148):o[e(542)](e(548)).set(e(546),s[e(546)]||0),h[e(625)]("channel_count",s.channel_count||2)[e(625)]("samplesize",s[e(345)]||16)[e(625)](e(787),s[e(787)]||65536);break;case e(484):o[e(542)](e(922));break;case e(478):if(o[e(542)](e(926)),s[e(1036)]===e(600))h[e(625)](e(822),s[e(822)]||e(487))[e(625)]("schema_location",s[e(437)]||"")[e(625)](e(1225),s[e(1225)]||"");break;case e(1097):o[e(542)](e(924));break;case e(203):o.add(e(924));break;default:o.add("nmhd")}s.description&&h.addBox(s[e(925)]),s[e(942)]&&s.description_boxes[e(664)](function(t){h[e(301)](t)}),o.add(e(220)).add(e(916)).addEntry((new(u[e(1324)]))[e(625)]("flags",1));var g=o[e(542)]("stbl");return g.add(e(722))[e(1005)](h),g[e(542)](e(356))[e(625)]("sample_counts",[])[e(625)](e(222),[]),g.add(e(1305))[e(625)](e(594),[])[e(625)](e(988),[])[e(625)](e(742),[]),g[e(542)](e(597)).set(e(1180),[]),g[e(542)](e(665))[e(625)]("sample_sizes",[]),this[e(1346)].mvex[e(542)]("trex").set(e(869),s.id)[e(625)](e(724),s[e(724)]||1)[e(625)]("default_sample_duration",s.default_sample_duration||0)[e(625)](e(958),s[e(958)]||0)[e(625)](e(1163),s[e(1163)]||0),this[e(891)](i),s.id}},u[n(734)][n(794)][n(145)]=function(t){var e=n,s=t||new h;s[e(690)]=h.BIG_ENDIAN,this[e(1212)](s)},A[n(794)][n(1298)]=function(t,e,s){var i=n,r=s||{},o={},a=this[i(968)](t);if(null!==a){o[i(1302)]=a[i(266)].length,o[i(869)]=a[i(1288)][i(869)],o.timescale=a[i(1202)][i(196)][i(439)],o[i(1191)]=r[i(742)]?r[i(742)]-1:0,o.description=a.mdia[i(1077)][i(170)].stsd.entries[o[i(1191)]],o[i(1181)]=e,o[i(316)]=e[i(783)],o[i(912)]=o[i(316)],o.duration=r[i(150)]||1,o[i(1091)]=r[i(1091)]||0,o[i(801)]=r.dts||0,o[i(937)]=r[i(937)]||!1,o[i(1304)]=r.is_leading||0,o.depends_on=r.depends_on||0,o.is_depended_on=r[i(531)]||0,o[i(1142)]=r[i(1142)]||0,o[i(312)]=r[i(312)]||0,o[i(398)]=0,o[i(883)]=r.subsamples,a[i(266)].push(o),a[i(296)]+=o[i(316)],a[i(241)]+=o.duration,void 0===a.first_dts&&(a[i(1063)]=r[i(801)]),this.processSamples();var h=this[i(1112)](o);return this.addBox(h),h[i(145)](),h[i(653)][0][i(395)][0][i(917)]=h[i(316)]+8,this[i(542)](i(357))[i(1181)]=new Uint8Array(e),o}},A[n(794)].createSingleSampleMoof=function(t){var e=n,s=0;s=t[e(937)]?1<<25:65536;var i=new u.moofBox;i[e(542)](e(896))[e(625)](e(233),this[e(167)]),this.nextMoofNumber++;var r=i[e(542)](e(293)),o=this[e(968)](t[e(869)]);return r[e(542)]("tfhd")[e(625)]("track_id",t[e(869)])[e(625)](e(360),u.TFHD_FLAG_DEFAULT_BASE_IS_MOOF),r[e(542)](e(540)).set(e(190),t[e(801)]-(o.first_dts||0)),r[e(542)](e(730))[e(625)](e(360),u.TRUN_FLAGS_DATA_OFFSET|u[e(482)]|u[e(179)]|u[e(229)]|u[e(826)])[e(625)](e(917),0)[e(625)]("first_sample_flags",0)[e(625)]("sample_count",1)[e(625)](e(488),[t[e(150)]])[e(625)](e(586),[t[e(316)]])[e(625)]("sample_flags",[s])[e(625)](e(775),[t[e(1091)]-t[e(801)]]),i},A.prototype[n(152)]=0,A[n(794)].samplesDataSize=0,A.prototype[n(255)]=function(){var t,e,s,i,r,o,a=n;for(this[a(1341)]=this[a(1346)][a(1337)][a(150)],this[a(1346)].mvhd[a(150)]=0,t=0;t<this[a(1346)][a(557)][a(189)];t++){(e=this[a(1346)][a(557)][t])[a(1288)].duration=0,e[a(1202)][a(196)][a(150)]=0,(e[a(1202)].minf[a(170)][a(597)]||e[a(1202)][a(1077)][a(170)][a(1009)])[a(1180)]=[],(s=e.mdia.minf[a(170)][a(1305)])[a(594)]=[],s[a(988)]=[],s[a(742)]=[],(e[a(1202)][a(1077)][a(170)][a(665)]||e[a(1202)][a(1077)][a(170)][a(636)])[a(377)]=[],(i=e.mdia[a(1077)][a(170)][a(356)])[a(512)]=[],i[a(222)]=[],(r=e[a(1202)].minf.stbl.ctts)&&(r[a(512)]=[],r[a(515)]=[]),o=e.mdia[a(1077)][a(170)][a(278)];var h=e.mdia[a(1077)][a(170)].boxes[a(1260)](o);-1!=h&&(e.mdia[a(1077)][a(170)][a(511)][h]=null)}},A[n(895)]=function(t,e,s,i,r){var o,a,h,l,c=n;function d(t,e,s){var i=dm;this[i(415)]=t,this[i(681)]=e,this[i(304)]=s,this[i(962)]=-1,this[i(538)]=-1}for(e&&(e[c(276)]=[]),!t.sample_groups_info&&(t[c(276)]=[]),a=0;a<s[c(189)];a++){for(l=s[a][c(415)]+"/"+s[a][c(681)],h=new d(s[a][c(415)],s[a][c(681)],s[a]),e&&(e[c(276)][l]=h),!t[c(276)][l]&&(t[c(276)][l]=h),o=0;o<i[c(189)];o++)i[o][c(415)]===s[a].grouping_type&&(h.description=i[o],h[c(925)][c(726)]=!0);if(r)for(o=0;o<r[c(189)];o++)r[o][c(415)]===s[a][c(415)]&&(h[c(444)]=r[o],h[c(444)].used=!0,h[c(1033)]=!0)}if(e){if(r)for(a=0;a<r[c(189)];a++)!r[a].used&&r[a][c(425)]>=2&&(l=r[a].grouping_type+"/0",(h=new d(r[a][c(415)],0))[c(1033)]=!0,!e[c(276)][l]&&(e[c(276)][l]=h))}else for(a=0;a<i[c(189)];a++)!i[a][c(726)]&&i[a][c(425)]>=2&&(l=i[a].grouping_type+"/0",h=new d(i[a][c(415)],0),!t[c(276)][l]&&(t[c(276)][l]=h))},A[n(796)]=function(t,e,s,i){var r,o,a=n;for(r in e[a(1279)]=[],i){var h;if(e.sample_groups[r]={},e[a(1279)][r][a(415)]=i[r][a(415)],e[a(1279)][r].grouping_type_parameter=i[r][a(681)],s>=i[r][a(962)]&&(i[r][a(962)]<0&&(i[r].last_sample_in_run=0),i[r][a(538)]++,i[r][a(538)]<=i[r][a(304)][a(204)].length-1&&(i[r][a(962)]+=i[r].sbgp.entries[i[r][a(538)]][a(624)])),i[r][a(538)]<=i[r].sbgp.entries.length-1?e[a(1279)][r].group_description_index=i[r][a(304)][a(204)][i[r][a(538)]][a(1272)]:e[a(1279)][r].group_description_index=-1,0!==e[a(1279)][r][a(1272)])h=i[r].fragment_description?i[r][a(444)]:i[r][a(925)],e.sample_groups[r][a(1272)]>0?(o=e[a(1279)][r][a(1272)]>65535?(e[a(1279)][r][a(1272)]>>16)-1:e[a(1279)][r].group_description_index-1,h&&o>=0&&(e.sample_groups[r].description=h[a(204)][o])):h&&h[a(425)]>=2&&h[a(535)]>0&&(e.sample_groups[r][a(925)]=h[a(204)][h[a(535)]-1])}},A[n(289)]=function(t,e,s){var i=n;e&&(t?(e[i(1304)]=t[i(1304)][s],e.depends_on=t.sample_depends_on[s],e[i(531)]=t[i(297)][s],e[i(1142)]=t[i(686)][s]):(e.is_leading=0,e[i(330)]=0,e[i(531)]=0,e[i(1142)]=0))},A[n(794)][n(341)]=function(){var t,e,s=n;for(t=0;t<this.moov.traks[s(189)];t++)e=this[s(1346)][s(557)][t],this.buildTrakSampleLists(e)},A[n(794)][n(891)]=function(t){var e,s,i,r,o,a,h,l,c,d,u,p,f,m,g,y,b,v,S,E,w,T,I,k,_=n;if(t[_(266)]=[],t.samples_duration=0,t[_(296)]=0,s=t[_(1202)][_(1077)][_(170)].stco||t.mdia[_(1077)][_(170)].co64,i=t[_(1202)].minf[_(170)][_(1305)],r=t.mdia[_(1077)][_(170)].stsz||t[_(1202)].minf.stbl[_(636)],o=t[_(1202)][_(1077)][_(170)][_(356)],a=t.mdia[_(1077)].stbl[_(909)],h=t[_(1202)][_(1077)].stbl.stss,l=t.mdia[_(1077)][_(170)][_(722)],c=t.mdia[_(1077)][_(170)][_(1258)],p=t[_(1202)].minf[_(170)][_(1282)],d=t[_(1202)][_(1077)][_(170)][_(1330)],u=t[_(1202)].minf.stbl[_(331)],v=-1,S=-1,E=-1,w=-1,T=0,I=0,k=0,A[_(895)](t,null,d,u),typeof r!==_(754)){for(e=0;e<r.sample_sizes[_(189)];e++){var C={};C[_(1302)]=e,C[_(869)]=t[_(1288)][_(869)],C.timescale=t[_(1202)].mdhd.timescale,C[_(912)]=0,t[_(266)][e]=C,C.size=r.sample_sizes[e],t[_(296)]+=C[_(316)],0===e?(m=1,f=0,C.chunk_index=m,C[_(1246)]=f,b=i[_(988)][f],y=0,g=f+1<i[_(594)].length?i[_(594)][f+1]-1:1/0):e<b?(C[_(479)]=m,C[_(1246)]=f):(m++,C[_(479)]=m,y=0,m<=g||(g=++f+1<i[_(594)].length?i.first_chunk[f+1]-1:1/0),C.chunk_run_index=f,b+=i[_(988)][f]),C.description_index=i[_(742)][C[_(1246)]]-1,C[_(925)]=l[_(204)][C[_(1191)]],C.offset=s.chunk_offsets[C[_(479)]-1]+y,y+=C[_(316)],e>v&&(S++,v<0&&(v=0),v+=o[_(512)][S]),e>0?(t[_(266)][e-1][_(150)]=o[_(222)][S],t[_(241)]+=t.samples[e-1][_(150)],C.dts=t[_(266)][e-1][_(801)]+t.samples[e-1].duration):C[_(801)]=0,a?(e>=E&&(w++,E<0&&(E=0),E+=a[_(512)][w]),C[_(1091)]=t[_(266)][e][_(801)]+a[_(515)][w]):C[_(1091)]=C[_(801)],h?(e==h[_(311)][T]-1?(C[_(937)]=!0,T++):(C.is_sync=!1,C[_(312)]=0),c&&c[_(204)][I][_(369)]+k==e+1&&(C.subsamples=c[_(204)][I][_(883)],k+=c[_(204)][I][_(369)],I++)):C[_(937)]=!0,A[_(289)](t[_(1202)][_(1077)][_(170)][_(1002)],C,C[_(1302)]),C.degradation_priority=p?p.priority[e]:0,c&&c[_(204)][I].sample_delta+k==e&&(C[_(883)]=c[_(204)][I].subsamples,k+=c[_(204)][I][_(369)]),(d[_(189)]>0||u.length>0)&&A.setSampleGroupProperties(t,C,e,t[_(276)])}e>0&&(t[_(266)][e-1][_(150)]=Math.max(t.mdia[_(196)][_(150)]-t[_(266)][e-1][_(801)],0),t[_(241)]+=t[_(266)][e-1][_(150)])}},A[n(794)][n(1325)]=function(){var t,e,s,i,r,o,a,h,l,c,d,p,f,m,g,y=n;if(void 0!==this.moov)for(;this[y(152)]<this[y(1214)][y(189)];)if(l=this[y(1214)][this[y(152)]],this[y(152)]++,l[y(1036)]==y(1268))for(c=l,t=0;t<c[y(653)].length;t++){for(d=c.trafs[t],p=this[y(968)](d[y(1078)][y(869)]),f=this[y(441)](d[y(1078)].track_id),i=d[y(1078)][y(360)]&u[y(435)]?d[y(1078)][y(724)]:f?f[y(724)]:1,r=d[y(1078)][y(360)]&u[y(530)]?d[y(1078)][y(750)]:f?f[y(750)]:0,o=d[y(1078)].flags&u[y(468)]?d.tfhd[y(958)]:f?f[y(958)]:0,a=d[y(1078)][y(360)]&u[y(279)]?d[y(1078)][y(1163)]:f?f[y(1163)]:0,d.sample_number=0,d[y(1330)].length>0&&A[y(895)](p,d,d[y(1330)],p[y(1202)][y(1077)].stbl[y(331)],d[y(331)]),e=0;e<d[y(395)].length;e++){var b=d[y(395)][e];for(s=0;s<b[y(624)];s++){(m={})[y(587)]=this[y(152)],m[y(596)]=d[y(1011)],d[y(1011)]++,m[y(1302)]=p[y(266)][y(189)],d[y(358)]=p[y(266)][y(189)],p[y(266)].push(m),m.track_id=p.tkhd[y(869)],m[y(439)]=p[y(1202)][y(196)][y(439)],m.description_index=i-1,m[y(925)]=p.mdia[y(1077)][y(170)][y(722)][y(204)][m[y(1191)]],m[y(316)]=o,b[y(360)]&u.TRUN_FLAGS_SIZE&&(m[y(316)]=b[y(586)][s]),p[y(296)]+=m.size,m.duration=r,b[y(360)]&u[y(482)]&&(m[y(150)]=b[y(488)][s]),p[y(241)]+=m[y(150)],p.first_traf_merged||s>0?m[y(801)]=p[y(266)][p.samples[y(189)]-2].dts+p[y(266)][p[y(266)][y(189)]-2].duration:(d.tfdt?m[y(801)]=d.tfdt.baseMediaDecodeTime:m.dts=0,p.first_traf_merged=!0),m.cts=m[y(801)],b.flags&u[y(826)]&&(m[y(1091)]=m.dts+b[y(775)][s]),g=a,b[y(360)]&u[y(229)]?g=b[y(1175)][s]:0===s&&b.flags&u.TRUN_FLAGS_FIRST_FLAG&&(g=b[y(271)]),m[y(937)]=!(g>>16&1),m.is_leading=g>>26&3,m[y(330)]=g>>24&3,m.is_depended_on=g>>22&3,m[y(1142)]=g>>20&3,m[y(312)]=65535&g;var v=!!(d.tfhd[y(360)]&u[y(715)]),S=!!(d[y(1078)].flags&u[y(1334)]),E=!!(b[y(360)]&u[y(920)]),w=0;w=v?d.tfhd.base_data_offset:S||0===e?c.start:h,m[y(398)]=0===e&&0===s?E?w+b.data_offset:w:h,h=m.offset+m.size,(d[y(1330)][y(189)]>0||d.sgpds[y(189)]>0||p.mdia[y(1077)][y(170)][y(1330)][y(189)]>0||p[y(1202)][y(1077)][y(170)][y(331)].length>0)&&A.setSampleGroupProperties(p,m,m.number_in_traf,d[y(276)])}}if(d[y(1258)]){p[y(464)]=!0;var T=d[y(358)];for(e=0;e<d[y(1258)][y(204)][y(189)];e++)T+=d.subs[y(204)][e][y(369)],(m=p[y(266)][T-1])[y(883)]=d[y(1258)][y(204)][e][y(883)]}}},A[n(794)][n(1218)]=function(t,e){var s,i=n,r=t[i(266)][e];if(!this[i(1346)])return null;if(r.data){if(r[i(912)]==r[i(316)])return r}else r[i(1181)]=new Uint8Array(r[i(316)]),r[i(912)]=0,this[i(721)]+=r.size,o[i(749)]("ISOFile",i(698)+e+" on track #"+t.tkhd[i(869)]+i(819)+r.size+i(402)+this[i(721)]+")");for(;;){var a=this[i(703)][i(1101)](!0,r[i(398)]+r[i(912)],!1);if(!(a>-1))return null;var l=(s=this[i(703)].buffers[a])[i(783)]-(r.offset+r[i(912)]-s[i(1124)]);if(r[i(316)]-r.alreadyRead<=l)return o[i(749)](i(762),i(134)+e+" data (alreadyRead: "+r[i(912)]+i(832)+(r.offset+r[i(912)]-s.fileStart)+" read size: "+(r[i(316)]-r.alreadyRead)+i(419)+r[i(316)]+")"),h[i(391)](r.data[i(975)],r[i(912)],s,r[i(398)]+r[i(912)]-s[i(1124)],r[i(316)]-r.alreadyRead),s[i(739)]+=r[i(316)]-r[i(912)],this[i(703)][i(699)](),r[i(912)]=r.size,r;if(0===l)return null;o[i(749)](i(762),i(134)+e+i(948)+r.alreadyRead+i(832)+(r[i(398)]+r[i(912)]-s[i(1124)])+" read size: "+l+i(419)+r[i(316)]+")"),h.memcpy(r.data[i(975)],r[i(912)],s,r[i(398)]+r[i(912)]-s[i(1124)],l),r.alreadyRead+=l,s[i(739)]+=l,this[i(703)][i(699)]()}},A[n(794)][n(850)]=function(t,e){var s=n,i=t[s(266)][e];return i.data?(this[s(721)]-=i.size,i[s(1181)]=null,i[s(925)]=null,delete i[s(312)],delete i.depends_on,delete i[s(1191)],delete i[s(1142)],delete i.is_depended_on,delete i[s(1304)],delete i[s(937)],delete i[s(587)],delete i[s(596)],delete i.timescale,delete i[s(1091)],delete i[s(801)],delete i[s(398)],delete i[s(316)],delete i.track_id,delete i[s(150)],i[s(912)]=0,i[s(316)]):0},A.prototype[n(251)]=function(){return this[n(721)]},A[n(794)].getStreamBufferSize=function(){var t=n;const e=this[t(703)][t(1264)]||[];let s=0;return e[t(664)](e=>{const i=e[t(783)];s+=i}),s},A.prototype.getCodecs=function(){var t,e=n,s="";for(t=0;t<this[e(1346)][e(557)][e(189)];t++){t>0&&(s+=","),s+=this[e(1346)][e(557)][t][e(1202)].minf.stbl[e(722)].entries[0].getCodec()}return s},A[n(794)][n(441)]=function(t){var e,s=n;if(!this.moov||!this[s(1346)].mvex)return null;for(e=0;e<this[s(1346)][s(448)][s(552)][s(189)];e++){var i=this[s(1346)].mvex[s(552)][e];if(i[s(869)]==t)return i}return null},A[n(794)][n(968)]=function(t){var e=n;if(void 0===this[e(1346)])return null;for(var s=0;s<this[e(1346)][e(557)][e(189)];s++){var i=this[e(1346)].traks[s];if(i[e(1288)][e(869)]==t)return i}return null},A[n(794)][n(420)]=[],A[n(794)][n(1348)]=[],A[n(794)][n(865)]=0,A[n(794)][n(181)]=function(){var t,e,s,i=n,r=this[i(420)],o=this.entity_groups,a=this[i(913)];if(null!=a&&void 0!==a[i(841)]&&void 0!==a[i(807)]){for(t=0;t<a.iinf.item_infos[i(189)];t++)(s={}).id=a.iinf[i(370)][t][i(1100)],r[s.id]=s,s.ref_to=[],s[i(1018)]=a.iinf[i(370)][t][i(1055)],a.iinf[i(370)][t][i(713)]>0&&(s.protection=a[i(1259)][i(1121)][a[i(807)][i(370)][t][i(713)]-1]),a[i(807)][i(370)][t][i(1203)]?s[i(1036)]=a[i(807)][i(370)][t][i(1203)]:s.type=i(645),s.content_type=a[i(807)][i(370)][t][i(685)],s[i(1299)]=a[i(807)].item_infos[t][i(1299)];if(a[i(911)])for(t=0;t<a[i(911)][i(511)][i(189)];t++)entity_group={},entity_group.id=a[i(911)].boxes[t][i(137)],entity_group[i(382)]=a.grpl[i(511)][t][i(382)],entity_group[i(1036)]=a.grpl[i(511)][t][i(1036)],o[entity_group.id]=entity_group;if(a[i(1187)])for(t=0;t<a[i(1187)][i(420)].length;t++){var h=a[i(1187)][i(420)][t];for(s=r[h.item_ID],0!==h[i(1297)]&&(s[i(886)]=a.dinf[i(511)][h[i(1297)]-1]),h.construction_method,s.extents=[],s[i(316)]=0,e=0;e<h.extents.length;e++)s[i(508)][e]={},s[i(508)][e][i(398)]=h.extents[e][i(1159)]+h[i(1281)],s[i(508)][e][i(189)]=h[i(508)][e][i(1136)],s.extents[e].alreadyRead=0,s.size+=s[i(508)][e][i(189)]}if(a.pitm&&(r[a[i(282)][i(880)]][i(1239)]=!0),a[i(1245)])for(t=0;t<a[i(1245)][i(1044)][i(189)];t++){var l=a[i(1245)][i(1044)][t];for(e=0;e<l[i(1044)][i(189)];e++)r[l[i(185)]][i(965)][i(967)]({type:l.type,id:l.references[e]})}if(a.iprp)for(var c=0;c<a.iprp[i(609)][i(189)];c++){var d=a[i(455)][i(609)][c];for(t=0;t<d[i(1217)].length;t++){var u=d[i(1217)][t];if(!(s=r[u.id])&&(s=o[u.id]),s)for(void 0===s[i(1140)]&&(s.properties={},s[i(1140)][i(511)]=[]),e=0;e<u.props.length;e++){var p=u[i(245)][e];if(p[i(303)]>0&&p[i(303)]-1<a.iprp[i(918)][i(511)][i(189)]){var f=a.iprp[i(918)][i(511)][p[i(303)]-1];s[i(1140)][f[i(1036)]]=f,s[i(1140)][i(511)][i(967)](f)}}}}}},A[n(794)][n(905)]=function(t){var e,s,i=n;if(!this[i(913)])return null;if(!(s=this[i(420)][t]).data&&s[i(316)])s[i(1181)]=new Uint8Array(s[i(316)]),s[i(912)]=0,this[i(865)]+=s[i(316)],o.debug("ISOFile",i(386)+t+i(819)+s[i(316)]+i(402)+this[i(865)]+")");else if(s[i(912)]===s[i(316)])return s;for(var r=0;r<s[i(508)][i(189)];r++){var a=s[i(508)][r];if(a[i(912)]!==a[i(189)]){var l=this[i(703)][i(1101)](!0,a[i(398)]+a[i(912)],!1);if(!(l>-1))return null;var c=(e=this[i(703)].buffers[l])[i(783)]-(a[i(398)]+a[i(912)]-e[i(1124)]);if(!(a.length-a[i(912)]<=c))return o.debug(i(762),i(770)+t+i(308)+r+" partial data (alreadyRead: "+a.alreadyRead+i(832)+(a.offset+a[i(912)]-e[i(1124)])+i(668)+c+" full extent size: "+a[i(189)]+i(1027)+s[i(316)]+")"),h[i(391)](s[i(1181)].buffer,s.alreadyRead,e,a[i(398)]+a[i(912)]-e.fileStart,c),a.alreadyRead+=c,s.alreadyRead+=c,e.usedBytes+=c,this.stream[i(699)](),null;o.debug(i(762),i(770)+t+" extent #"+r+i(343)+a[i(912)]+i(832)+(a.offset+a[i(912)]-e[i(1124)])+i(668)+(a[i(189)]-a[i(912)])+" full extent size: "+a[i(189)]+i(1027)+s[i(316)]+")"),h[i(391)](s[i(1181)][i(975)],s[i(912)],e,a[i(398)]+a.alreadyRead-e[i(1124)],a[i(189)]-a[i(912)]),e[i(739)]+=a[i(189)]-a[i(912)],this[i(703)][i(699)](),s.alreadyRead+=a[i(189)]-a[i(912)],a[i(912)]=a.length}}return s[i(912)]===s[i(316)]?s:null},A[n(794)].releaseItem=function(t){var e=n,s=this[e(420)][t];if(s[e(1181)]){this[e(865)]-=s.size,s.data=null,s.alreadyRead=0;for(var i=0;i<s[e(508)].length;i++){s[e(508)][i].alreadyRead=0}return s[e(316)]}return 0},A[n(794)][n(213)]=function(t){var e=n;for(var s in this[e(420)]){var i=this[e(420)][s];this.getItem(i.id),t&&!i.sent&&(t(i),i[e(823)]=!0,i.data=null)}},A[n(794)][n(619)]=function(t){var e=n;for(var s in this.items){var i=this.items[s];if(i[e(1018)]===t)return i.id}return-1},A[n(794)][n(1006)]=function(){var t=n;return this[t(913)]?this.meta[t(841)].handler:null},A.prototype[n(1183)]=function(){var t=n;return this[t(913)]&&this[t(913)][t(282)]?this[t(905)](this[t(913)][t(282)].item_id):null},A[n(794)][n(1073)]=function(t){var e=n,s=t||{},i=null;if(null==(i=s.itemId?this[e(905)](s[e(153)]):this.getPrimaryItem()))return null;var r=new A;r[e(595)]=!1;var o={type:i[e(1036)],description_boxes:i.properties[e(511)]};i[e(1140)].ispe&&(o[e(347)]=i[e(1140)][e(1237)][e(1051)],o[e(280)]=i[e(1140)][e(1237)][e(960)]);var a=r.addTrack(o);return a?(r[e(1298)](a,i.data),r):null},A.prototype[n(1212)]=function(t){for(var e=n,s=0;s<this[e(511)][e(189)];s++)this[e(511)][s][e(1212)](t)},A[n(794)][n(693)]=function(t,e,s){var i=n,r=this[i(968)](t),a=this[i(1218)](r,e);if(null==a)return this[i(325)](r[i(266)][e]),null;var l=s||new h;l[i(690)]=h[i(1274)];var c=this[i(1112)](a);c[i(1212)](l),c.trafs[0].truns[0][i(917)]=c.size+8,o[i(749)]("MP4Box",i(547)+c[i(653)][0][i(395)][0][i(917)]),l[i(182)](c[i(653)][0][i(395)][0].data_offset_position,c.trafs[0].truns[0][i(917)]);var d=new(u[i(901)]);return d.data=a[i(1181)],d[i(1212)](l),l},A.writeInitializationSegment=function(t,e,s,i){var r,a=n;o[a(749)](a(762),a(970));var l=new h;l[a(690)]=h.BIG_ENDIAN,t.write(l);var c=e[a(542)](a(448));for(s&&c[a(542)](a(633))[a(625)](a(198),s),r=0;r<e.traks.length;r++)c[a(542)](a(659))[a(625)]("track_id",e[a(557)][r].tkhd[a(869)])[a(625)]("default_sample_description_index",1)[a(625)](a(750),i)[a(625)](a(958),0)[a(625)](a(1163),65536);return e[a(1212)](l),l.buffer},A.prototype.save=function(t){var e=n,s=new h;s[e(690)]=h.BIG_ENDIAN,this[e(1212)](s),s[e(1059)](t)},A[n(794)][n(751)]=function(){var t=n,e=new h;return e[t(690)]=h[t(1274)],this[t(1212)](e),e[t(975)]},A[n(794)].initializeSegmentation=function(){var t,e,s,i,r=n;for(this[r(1066)],!this[r(551)]&&(this[r(551)]=!0,this[r(167)]=0,this[r(255)]()),e=[],t=0;t<this[r(238)][r(189)];t++){var o=new(u[r(504)]);o[r(1337)]=this[r(1346)].mvhd,o.boxes[r(967)](o[r(1337)]),s=this.getTrackById(this[r(238)][t].id),o[r(511)].push(s),o[r(557)][r(967)](s),(i={}).id=s.tkhd[r(869)],i[r(371)]=this[r(238)][t][r(371)],i[r(975)]=A[r(949)](this[r(158)],o,this.moov[r(448)]&&this[r(1346)][r(448)].mehd?this.moov[r(448)][r(633)][r(198)]:void 0,this[r(1346)][r(557)][t][r(266)][r(189)]>0?this[r(1346)][r(557)][t][r(266)][0].duration:0),e[r(967)](i)}return e},A[n(794)][n(529)]=function(){var t=n,e={};return e[t(1346)]=this.moov,this[t(1346)]&&this[t(1346)][t(557)]&&this[t(1346)][t(557)][t(189)]>1&&(e.moovAudioNum=this.moov[t(557)][0].samples[t(189)],e[t(226)]=this[t(1346)][t(557)][1][t(266)][t(189)]),e},u[n(734)].prototype[n(894)]=function(t){var e=n;this.size+=8,this[e(316)]>l&&(this[e(316)]+=8),"uuid"===this[e(1036)]&&(this[e(316)]+=16),t.log(t[e(1022)]+e(812)+this[e(316)]),t[e(1283)](t[e(1022)]+"type:"+this[e(1036)])},u[n(1192)][n(794)][n(894)]=function(t){var e=n;this[e(316)]+=4,u[e(734)].prototype[e(894)][e(314)](this,t),t[e(1283)](t[e(1022)]+e(1037)+this.version),t.log(t[e(1022)]+e(620)+this.flags)},u[n(734)][n(794)][n(423)]=function(t){this.printHeader(t)},u[n(154)][n(794)][n(423)]=function(t){var e=n;this.printHeader(t);for(var s=0;s<this[e(511)][e(189)];s++)if(this[e(511)][s]){var i=t[e(1022)];t[e(1022)]+=" ",this[e(511)][s][e(423)](t),t[e(1022)]=i}},A.prototype[n(423)]=function(t){var e=n;t[e(1022)]="";for(var s=0;s<this[e(511)][e(189)];s++)this[e(511)][s]&&this.boxes[s].print(t)},u[n(755)][n(794)][n(423)]=function(t){var e=n;u[e(1192)][e(794)][e(894)][e(314)](this,t),t[e(1283)](t[e(1022)]+e(697)+this[e(1234)]),t[e(1283)](t[e(1022)]+e(173)+this.modification_time),t[e(1283)](t[e(1022)]+e(993)+this[e(439)]),t[e(1283)](t[e(1022)]+e(829)+this[e(150)]),t[e(1283)](t[e(1022)]+e(1050)+this.rate),t[e(1283)](t[e(1022)]+"volume: "+(this.volume>>8)),t[e(1283)](t.indent+e(392)+this[e(950)][e(1339)](", ")),t[e(1283)](t[e(1022)]+e(1290)+this[e(1293)])},u[n(344)][n(794)][n(423)]=function(t){var e=n;u[e(1192)][e(794)][e(894)][e(314)](this,t),t[e(1283)](t.indent+e(697)+this[e(1234)]),t.log(t.indent+e(173)+this[e(1178)]),t.log(t[e(1022)]+"track_id: "+this[e(869)]),t[e(1283)](t.indent+e(829)+this.duration),t[e(1283)](t.indent+e(1013)+(this[e(247)]>>8)),t[e(1283)](t.indent+e(392)+this[e(950)][e(1339)](", ")),t[e(1283)](t[e(1022)]+e(286)+this[e(1117)]),t[e(1283)](t[e(1022)]+e(966)+this[e(666)]),t[e(1283)](t[e(1022)]+e(923)+this[e(347)]),t.log(t[e(1022)]+"height: "+this[e(280)])};var b={createFile:function(t,e){var s=n,i=void 0===t||t,r=new A(e);return r[s(595)]=!i,r}};n(430)!==n(754)&&(e[n(194)]=b[n(194)])});function cm(){var t=["extent_length","num_output_samples","pad_unknown","track_width","properties","codecIntializationData","has_redundancy","sample_offset","No method for reading signed 64 bits values","getTime","opcolor","5193KNjxHU","Audio","irot","parseOneDescriptor","reserved_1","profile_compatibility","getBox","insertBuffer","lengthSizeMinusOne","_byteLength","encm","writeUint8Array","extent_offset","field_size","readInt method not implemented for size: ","isHint","default_sample_flags","extractedTracks","offset_size","a1lx","stsh","Not enough bytes left in the parent box to parse a UUID box","discard_priority","writeType","held_bits","fieldOrdering","min_display_mastering_luminance","avgRateFlag","sample_flags","stshBox","emsgBox","modification_time","free","chunk_offsets","data","sampleListBuilt","getPrimaryItem","leva","stream_read_2_bytes","clap","iloc","bytessent","skip","OutputGain","description_index","FullBox","(empty)","TKHD_FLAG_ENABLED","readUint64","created","hasIncompleteMdat","Buffer must be defined and non empty","parseFromString","writeInt16","constant_IV_size","mdia","item_type","codec","channel_indexes","vvcN","compositionStartTime","sbpm",'audio/mp4; codecs="',"subtitles"," not found in buffered data","write","elng","moofs","avcDecoderConfigRecord","descs","associations","getSample","writeUint8","bit_depth_chroma_minus8","unsetExtractionOptions","writeInt32Array","rate","track_group_id","auxiliary_mime_types","frma","sampleEntryCodes","luminanceMin","MPEG4DescriptorParser","angle","dmax","ptl_num_sub_profiles","tag","creation_time","PADDING","XMLSubtitlein4Parser","ispe","URL","primary","getInt16","aux_type","OCR_ES_ID","channel_types","sublayer_level_idc","iref","chunk_run_index","uncv"," - Length: ","stscBox","Textin4Parser","shadowed_sample_numbers","starts_with_SAP","moovStartFound","MultiBufferStream","mapInt8Array","resources","fobr","subs","ipro","indexOf","elngBox","uint16","vvi1SampleEntry","buffers","extract_bits","nb_SPS_nalus","avcC","moof","Writing box ","enct","scif","group_description_index","SAMPLE_ENTRY_TYPE_SUBTITLE","BIG_ENDIAN","writeFloat64Array","mime_format","getBoxes","nalu_type","sample_groups","base_data_offset","base_offset","stdp","log","has_unparsed_data","absolute_duration","getFloat64","operation_point_count","tkhd","brands","next_track_id: ","component_little_endian","configOBUs","next_track_id","Repositioning parser at buffer position: ","seekLists","cleanApertureWidthN","data_reference_index","addSample","content_encoding","onMoovStart","temporalIdNested","number","stream_read_1_bytes","is_leading","stsc","getInt32","end","bitrate","min_spatial_segmentation_idc","strd","fragment_count","default_KID","float32be","STREAMINFO","component_count","_realloc","sample_depends_on","writeUCS2String","dataview","num_bad_rows","num_bytes_constraint_info","addSubBoxArrays","AVCLevelIndication","url Box","updateSampleLists","cttsBox","range_size","channel_associations","rapAlignement","sbgps","msg","writeInt8Array","Not enough data in stream to parse the type and size of the box","TFHD_FLAG_DEFAULT_BASE_IS_MOOF","general_profile_space","length_size_of_sample_num","mvhd","mehdBox","join","skip_byte_block","initial_duration","getTrackSamplesInfo","stxtSampleEntry","sdptext","hSpacing","moov","' and size ","entity_groups","segment_duration","configurationVersion","assignment_type"," sample #","readInt32Array","createEncryptedSampleEntryCtor","track_ids","getEndPosition","sbgpBox","Getting sample #","dac3","layer_size","group_id","reference_type","saiz","SAMPLE_ENTRY_TYPE_HINT","default_IV_size","24KnwoSw","SAP_delta_time","esds","computeSize","target","accurateStatisticsFlag","nb_samples","stsg","duration","num_held_bits","lastMoofIndex","itemId","ContainerBox","29550STJCfs","vttc","cmex","ftyp","readInt8Array","nump","numTemporalLayers","Descriptor","Error reading base offset size","parseSample","readUint","MP4BoxStream","nextMoofNumber","function","mapFloat32Array","stbl","pow","vmhdBox","modification_time: ","compatible_brands","LITTLE_ENDIAN","tyco","max_ref_per_pic","essential","TRUN_FLAGS_SIZE","createMediaSampleEntryCtor","flattenItemInfo","adjustUint32","split","getDurationString","from_item_ID","bits_per_channels","getTrackDuration","addTrack","length","baseMediaDecodeTime","wbbr","vvs1","maximum_bitrate","createFile","uint16be","mdhd","construction_method","fragment_duration","stereo_scheme","text","urn ","nbSamples","System","entries","chroma_sample_position","aux_subtype","KID","Descriptor ","fromCharCodeUint8","discardable","av01","component_type_urls","processItems","fr-FR","parseDataAndRewind","byteOffset","nb_PPS_nalus","SAMPLE_ENTRY_TYPE_AUDIO","writeInt8","dinf","dfLa","sample_deltas","findDescriptor","SPS","vpcC","moovVideoNum","lastValidSample","vvc1SampleEntry","TRUN_FLAGS_FLAGS","avgFrameRate","styp","hev1SampleEntry","sequence_number","No method for reading signed 24 bits values","Position ","otherTracks","hvcC","fragmentedTracks","scheme_version","DataStream","samples_duration","primaryBChromaticity_x","_size","subSequenceIdentifier","props","writeCString","volume","isProtected","Exporting on track #","seekTrack","getAllocatedSampleDataSize","prol","max_picture_width","component_index","resetTables","cleanBuffers","seig","maxCLL","transferCharacteristics","descriptionformat","ftypBox","readySent","SAMPLE_ENTRY_TYPE_TEXT","constant_frame_rate","frame_count","samples","levels"," at position ","hvc1","high_bitdepth","first_sample_flags","audio","1168002BSRciK","maxBitrate","aux_info_type_parameter","sample_groups_info","handler","stss","TFHD_FLAG_SAMPLE_FLAGS","height","seq_tier_0","pitm","subsegment_duration","language","_byteOffset","layer: ","getAudioConfig","info","process_sdtp","a1op","tx3g","ranges","traf","hinf","alst","samples_size","sample_is_depended_on","tapt","value","j2kH","addBox","parseOneBox","property_index","sbgp","writeUint32","switch_group","test"," extent #"," with new size ","intra_pred_used","sample_numbers","degradation_priority","Not enough bytes left in the parent box to parse a new box","call","mjpg","size","kid","processSamples","destroy","ac-3","avc3","profile","createSampleGroupCtor","seq_level_idx_0","setNextSeekPositionFromSample"," Compressor","getInt8","dependency","pssh","depends_on","sgpds","getText","first_output_sample","rtp ","uint32","CoLL","whitePointChromaticity_x","int8","parseLanguage","pos_y","buildSampleLists","TrackReferenceTypeBox"," data (alreadyRead: ","tkhdBox","samplesize","writeFloat64","width","_buffer","roll","upStream","TFHD_FLAG_DUR_EMPTY","general_profile_idc","pixi","max_content_light_level","substring","stts","mdat","first_sample_index","sidxSent","flags","Removing buffer #","num_channels","chan_loc","212655YzKTAs","stsa","ABCDEFGHIJKLMNOPQRSTUVWXYZ234567","pano","nalu_arrays","sample_delta","item_infos","user","SubtitleSampleEntry","getUint8","default_isProtected","a5d40b30e81411ddba2f0800200c9a66","writeFloat32Array","sample_sizes",", column: ","initialize","attribute_list","udta","entity_ids","SingleItemTypeReferenceBoxLarge","hvt1","ccst","Allocating item #","getLength",">","ERR_NOT_ENOUGH_DATA","warn","memcpy","matrix: ","avcCBox","a2394f525a9b4f14a2446c427c648df4","truns","createFullBoxCtor","colour_type","offset","horizOffD","maxFALL","aebr"," (total: ","itemListBuilt","floor","bsmod","uint32le","concat","vide","ind_subs","auxC","seek","subBoxNames","all_ref_pics_intra","primaryGChromaticity_x","grouping_type","available_bitrate","location","max_display_mastering_luminance"," full size: ","items","restoreParsePosition","string","print","BoxParser","version","esd","Found position in existing buffer #","tenc","subtitleTracks","object","num_sublayers","track_height","mha2","setExtractionOptions","TFHD_FLAG_SAMPLE_DESC","VisualSampleEntry","schema_location","earliest_presentation_time","timescale","avgBitRate","getTrexById","writeHeader","CUESHEET","fragment_description","readAnyInt","ptl_multilayer_enabled","sdp ","mvex","parseRemainingDescriptors","minimum_bitrate","ChannelMapping","kinds","presentation_time","kindBox","iprp","vvi1","download","StreamCount","readInt8","data_rate","tfra","mskC","saio","has_fragment_subsamples"," --\x3e ","traf_number","Creating media fragment on track #","TFHD_FLAG_SAMPLE_SIZE","min","media_rate_fraction","Cannot seek: moov not received!","tfhdBox","mdhdBox","length_size","vipr","ChannelMappingFamily","schemeURI","Subtitle","chunk_index","bits_per_pixel","style_record","TRUN_FLAGS_DURATION","initialized","Hint","trak","DataStream.save: Can't create object URL.","nonamespace","sample_duration","item_count","1475108vPSrEv","config","DIFF_PRIMITIVE_ARRAY_PROP_NAMES","depth","stri","cleanApertureWidthD","code","hnti","nextSample","LiveServerManifest","hvc1SampleEntry","nalu","SampleEntry","125VCVYWa","moovBox","numMetadataBlocks","Per_Sample_IV_Size","general_profile_compatibility","extents","BoxWriter","avs3","boxes","sample_counts","mapUint16Array","mhm2","sample_offsets","nextParsePosition","pos_x","setUint32","afbr","Error reading extent index","readFloat64","quat_x","readUint32Array","dOps","TRUN_FLAGS_FIRST_FLAG","getWidth","sidx","createElement","getPerformanceInfo","TFHD_FLAG_SAMPLE_DUR","is_depended_on","quat_z","emsg","trpy","default_group_description_index","constant_IV","moovStartSent","entry_index","first_offset","tfdt","msrc","add","boxEqual","TKHD_FLAG_IN_PREVIEW","vp08","balance","Adjusting data_offset with new value ","smhd","max","white_point","isFragmentationInitialized","trexs","initial_presentation_delay_present","_self","colour_primaries","seq_profile","traks","npck","setInt8","senc","description_length","cleanApertureHeightD","minor_version","sizePosition","dataView","writeInt16Array","component_bit_depth_minus_one","writeUint24","interleave_type","fiel","encs","hvcCBox","bad_pixel_row","stppSampleEntry","seekPoints","chromaSubsampling","bad_pixels","mapInt16Array","aux_info_type","createUUIDBox","eqiv","num_total_samples","altr","tele","d4807ef2ca3946958e5426cb9e46a79f","sample_size","moof_number","tscl","videoTracks","readInt32","bytes","SAP_type","vertOffN","first_chunk","discardMdatData","number_in_traf","stco","leastDecodeToDisplayDelta","mjp2","stpp","saveParsePosition","languageString","writeStruct","sync","Found box of type '","ipma","primaryRChromaticity_x","reserved","ipmas","onError","avg_frame_rate","SAMPLE_ENTRY_TYPE_SYSTEM","message_data","writeUint16","BASIC_BOXES","ac-4","readFloat32Array","video","hasItem","flags:","unpack","TrackGroupTypeBox","priority","sample_count","set","system_id","Appending new buffer (fileStart: ","default_AlgorithmID","bad_columns","avc4SampleEntry","VORBIS_COMMENT","removeUsedSamples","mehd","int32be","default_length","stz2","vttC","subsegments","mapUint32Array","InputSampleRate","encode","8270xiRynr","float64","bsid","mime","pmax","rinf","max_picture_height","sttsBox",'video/mp4; codecs="',"PreSkip","lsel","trafs","tpyl","length_size_of_traf_num","createTrackGroupCtor","txtC","tref","trex","num_bad_pixels","totl","NAL_unit_type","SAMPLE_ENTRY_TYPE_METADATA","forEach","stsz","alternate_group","unsetSegmentOptions"," read size: ","block_size","default_Per_Sample_IV_Size","bufferSize","drefBox","trun_number","setAttribute","elst","sample_rate","num_ind_sub","cmpd","step_count","tile_align_size","grouping_type_parameter"," f=","box","matrixCoefficients","content_type","sample_has_redundancy","Concatenating buffer for box parsing (length: ","channel_count","nclx","endianness","compositionToDTSShift","ICC_profile","createFragment","readCString","Needs an array buffer","chroma_format_idc","creation_time: ","Allocating sample #","logBufferLevel","Log","modified","version of iloc box not supported","stream","fscod","vvc1","isAudio","readInt16","transferFunction","findEndContiguousBuf","streamType","int16le","general_constraint_info","protection_index","_dataView","TFHD_FLAG_BASE_DATA_OFFSET","avgBitrate"," stored buffer(s) (","Adjusting box ","url ","block_reversed","samplesDataSize","stsd","num_dep_sub","default_sample_description_index","sample_info_size","used","apply","bad_pixel_column","num_entities_in_group","trun","strk","level","hdr_size","Box","iods","parseFooter","num_tile_rows_minus_one","DecoderConfigDescriptor","usedBytes","parsingMdat","start","sample_description_index","decimalToHex","correction_applied","onSidx","appendBuffer","writeFloat32","writeUint16Array","debug","default_sample_duration","getBuffer","mergeNextBuffer","trunBox","undefined","mvhdBox","tmax","ext","padb","sampleProcessingStarted","arrayToNative","codec_specific_parameters","ISOFile","horizresolution","36QafjUT","onSamples","defineProperty","block_little_endian","position","metadata","Getting item #","readUint8","cslgBox","encv","createObjectURL","sample_composition_time_offset","sgpdBox","prgr","Visual",""","SLConfigDescriptor","flipArrayEndianness","major_brand","byteLength","AVCProfileIndication","createEntityToGroupCtor","checkBuffer","samplerate","subSeqDirectionFlag","whitePointChromaticity_y","vvcC","setInt32","packetssent","getDescriptorName","prototype","setUint8","setSampleGroupProperties","graphicsmode","writeString","getEndFilePositionAfter","num_bad_cols","dts","SAMPLE_ENTRY_TYPE_VISUAL","hasMoov","isProgressive","durationFlag","kind","iinf","getHeight","etyp","und","pdin","size:","lastBoxStartPosition","8974dbce7be74c5184f97148f9882554","dvh1","bxml","dynamicSize","readUint8Array"," of size ","application/xml","DIFF_BOXES_PROP_NAMES","namespace","sent","hevcDecoderConfigRecord","createSampleEntryCtor","TRUN_FLAGS_CTS_OFFSET","hdlrBox","mdats","duration: ","ols_idx","matrix_coefficients"," offset: ","acmod","extended_language"," v=","documentString","mere","movie_duration","notice","primaryGChromaticity_y","hdlr","6d1d9b0542d544e680e2141daff757b2","infe","max_pic_average_light_level","extent_index","payl","toString","mvif","event_duration","releaseSample","cts_shift","edts","wvtt","boxEqualFields","codecIntializationDataSize","tracks","audioTracks","tsel","index_size","printRanges","uuid","isEos","charCodeAt","pixel_size","itemsDataSize","createBoxCtor","_sweep","getSampleRate","track_id","setSegmentOptions","colourPrimaries","readInt64","j2ki","getOTI","isVideo","block_pad_lsb","general_constraint_indicator","bufferIndex","UUIDBoxes","item_id","failurePosition","dec3","subsamples","SingleItemTypeReferenceBox","readUint32","source","ec-3","ES_Descriptor","slid","writeFooter","buildTrakSampleLists",".CA","getSampleSize","printHeader","initSampleGroups","mfhd","isMetadata","avc3SampleEntry","SEEKTABLE","bufferSizeDB","mdatBox","avc1","hintTracks","horizontal_justification","getItem","roll_distance","reduceBuffer","u16string","ctts","quat_y","grpl","alreadyRead","meta","1LckTOE","focal_length_x","dref","data_offset","ipco","primaryRChromaticity_y","TRUN_FLAGS_DATA_OFFSET","scheme_id_uri","hmhd","width: ","nmhd","description","sthd","readString","isFragmented","videoFullRangeFlag","sync_sample_numbers","general_tier_flag","decode","updateUsedBytes","BYTES_PER_ELEMENT","bad_rows","PICTURE","is_sync",'"; profiles="',"dimm","init","dav1","description_boxes","iaug"," for sample ","fromCharCode","CONTAINER_BOXES","cslg"," partial data (alreadyRead: ","writeInitializationSegment","matrix","lfeon","target_rate_share","entry_count","trep","mp4aSampleEntry","imir","default_sample_info_size","default_sample_size","schi","image_height","principal_point_y","last_sample_in_run","vp09SampleEntry","segmentStream","ref_to","alternate_group: ","push","getTrackById","equal","Generating initialization segment","PPS","getPosition","ptl_present_flag","parseFullHeader","buffer","addUsedBytes","float32","shift","sinf","vp09","component_format","constantFrameRate","[row: ","vertOffD","drep","mapFloat64Array","setAllUsedBytes","samples_per_chunk","writeInt32","compressorname","stxt","absolute_time","timescale: ","idat","sub_track_id","error","readUint16","op_index","vertresolution","media_time","readUint24","sdtp","twelve_bit","_trimAlloc","addEntry","getMetaHandler","oti","float64be","co64","avc4","sample_number","writeUint64","volume: ","focal_length_y","No more buffer in memory","getInfo","layerNumber","name","avss","getUint32","isSubtitle","indent","component_align_size","setFloat64","processIncompleteBox","_dynamicSize"," full item size: ","full_range_flag","row_align_size","ASCII","writeUint32Array","vmhd","is_fragment","readInt16Array","data_format","type","version:","cmin","general_sub_profile_idc","tfdtBox","movie_timescale","Not enough bytes in buffer","time","references","ref_track_id","dependsOn_ES_ID","onItem","float32le","getUint16","rate: ","image_width","Buffer must have a fileStart property","mfro","horizOffN","item_name","media_rate_integer","SampleGroupEntry","AudioSampleEntry","save","maxr","bit_depth_luma_minus8","padbits","first_dts","rICC","referenced_size","onSegment","onReady","tpay","default_constant_IV_size","ptl_sublayer_present_mask","mapUint8Array","track_ID","itemToFragmentedTrackFile","readUint16Array","734150PvwlTi","completeness","minf","tfhd","base_offset_size","item_protection_index","item_uri_type","enof","general_level_idc","Stream ready for parsing","to_item_ID","int16","stszBox","axis","Error accessing position in the MultiBufferStream","readFloat64Array","cts","splice","brst","parse","iso4","luminanceMax","Metadata","parseHeader","stcoBox","item_ID","findPosition","vp08SampleEntry","av1C","DecoderSpecificInfo","bitDepth","length_size_of_trun_num","replace","getCodec","float64le","nextSeekPosition","slice","createSingleSampleMoof","initial_presentation_delay_minus_one","prdi","processIncompleteMdat","TKHD_FLAG_IN_MOVIE","layer","bit_rate_code","presentation_time_delta","component_types","protections","parseHex16","874531lAGScE","fileStart","cprt","mapInt32Array","mfra","initial_delay","colr","createContainerBoxCtor","u16stringle","display_primaries","parallelismType","getChannelCount","SmDm"];return(cm=function(){return t})()}function dm(t,e){var s=cm();return(dm=function(t,e){return s[t-=126]})(t,e)}lm[hm(700)],lm[hm(166)],lm[hm(240)],lm[hm(1254)],lm[hm(1229)],lm[hm(424)],lm[hm(1236)],lm[hm(1250)],lm[hm(762)],lm[hm(194)];const um=fm;function pm(){const t=["19456zeaNPL","every","exports","16851430cIwnro","53563290hQeroW","Module","TAG_NAME","instance","transport","debugWarn","function","42duOwEe","debugLog","message","412052dgbEeH","parse","126lNYSVj","player","10702475xDIFli","object","slice","instantiate","Instance","buffer","300ORbRqx","destroy","catch","not support wasm","128945DtAOHM","length","debuglog","reverse","map","wasm not supported","init error","1OmuSBv","reduce","init","then","512144PJyiYq","byteLength"];return(pm=function(){return t})()}function fm(t,e){const s=pm();return(fm=function(t,e){return s[t-=218]})(t,e)}!function(t){const e=fm,s=t();for(;;)try{if(858921===parseInt(e(233))/1*(-parseInt(e(253))/2)+-parseInt(e(222))/3*(-parseInt(e(239))/4)+-parseInt(e(226))/5*(parseInt(e(250))/6)+-parseInt(e(257))/7+parseInt(e(237))/8*(-parseInt(e(255))/9)+-parseInt(e(242))/10+parseInt(e(243))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(pm);um(223),um(247);function mm(t,e){const s=gm();return(mm=function(t,e){return s[t-=475]})(t,e)}function gm(){const t=["length","call","109odYjBM","818672kUtsFv","696966gSOaHu","prototype","603820YQrNZx","458KhULgZ","1165cuYXQv","147ZQPBig","slice","34696FPhcZI","822rCIbGR","630549HeSkgl","forEach","set"];return(gm=function(){return t})()}function ym(t){const e=mm,s=new Uint8Array(t.length+1);return s[e(489)]([114],0),s.set(t,1),s}function Am(t){const e=new Uint8Array(t.length+1);return e.set([130],0),e.set(t,1),e}function bm(){const t=["9677048eyhKEt","data","object_type","9XsjJzH","set","channel_count","error","25ipGuWX","32784tkupdi","length","3228450eWDvQS","mp3","Invalid MP3 packet, header missing!","buffer","6055497vtIZmY","Invalid MP3 packet, first byte != 0xFF ","67XpElSI","886892LjYukV","21881490MrdAux","941481NipaAm"];return(bm=function(){return t})()}!function(t){const e=mm,s=t();for(;;)try{if(121450===parseInt(e(476))/1*(parseInt(e(481))/2)+parseInt(e(478))/3+-parseInt(e(477))/4+parseInt(e(482))/5*(-parseInt(e(486))/6)+parseInt(e(483))/7*(parseInt(e(485))/8)+parseInt(e(487))/9+-parseInt(e(480))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(gm);const vm=Sm;!function(t){const e=Sm,s=t();for(;;)try{if(954998===-parseInt(e(289))/1*(-parseInt(e(301))/2)+parseInt(e(292))/3+parseInt(e(290))/4*(-parseInt(e(300))/5)+parseInt(e(303))/6+-parseInt(e(287))/7+-parseInt(e(293))/8*(parseInt(e(296))/9)+parseInt(e(291))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(bm);vm(295),vm(298),vm(294);function Sm(t,e){const s=bm();return(Sm=function(t,e){return s[t-=286]})(t,e)}const Em=[44100,48e3,32e3,0],wm=[22050,24e3,16e3,0],Tm=[11025,12e3,8e3,0],Im=[0,32,64,96,128,160,192,224,256,288,320,352,384,416,448,-1],km=[0,32,48,56,64,80,96,112,128,160,192,224,256,320,384,-1],_m=[0,32,40,48,56,64,80,96,112,128,160,192,224,256,320,-1];function Cm(t){const e=vm;if(t[e(302)]<4)return void console[e(299)](e(305));let s=new Uint8Array(t[e(286)]),i=null;if(255!==s[0])return void console[e(299)](e(288));let r=s[1]>>>3&3,n=(6&s[1])>>1,o=(240&s[2])>>>4,a=(12&s[2])>>>2,h=3!==(s[3]>>>6&3)?2:1,l=0,c=0,d=e(304);switch(r){case 0:l=Tm[a];break;case 2:l=wm[a];break;case 3:l=Em[a]}switch(n){case 1:o<_m[e(302)]&&(c=_m[o]);break;case 2:o<km[e(302)]&&(c=km[o]);break;case 3:o<Im[e(302)]&&(c=Im[o])}return i={bitRate:c,sampleRate:l,channelCount:h,codec:d,originalCodec:d,audioType:e(304)},i}function Dm(t){const e=vm,s=new Uint8Array(t[e(302)]+1);return s[e(297)]([32],0),s.set(t,1),s}function Lm(t,e){const s=Pm();return(Lm=function(t,e){return s[t-=210]})(t,e)}const Rm=Lm;function Pm(){const t=["159757GEZXkP","7nMZSbh","padStart","11766512uFpbmU","getLevelString","11292FKiOJk","16325470lpbKqA","byteLength","parseSeuqneceHeader","4:2:2","push","subarray","readBits","4:4:4","13633686dMLHIL","2PrVPsG","95DsVdHk","4:2:0","getChromaFormatString","toString","5056746BygMks","NaN","4:0:0","readBool","Unknown","parseOBUs","4679124TJMzra","getChromaFormat"];return(Pm=function(){return t})()}!function(t){const e=Lm,s=t();for(;;)try{if(853550===parseInt(e(228))/1*(-parseInt(e(215))/2)+-parseInt(e(226))/3+parseInt(e(233))/4*(parseInt(e(216))/5)+parseInt(e(220))/6+parseInt(e(229))/7*(-parseInt(e(231))/8)+parseInt(e(214))/9+parseInt(e(234))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Pm);class xm{static[Rm(225)](t){const e=Rm;let s=null;for(let i=0;i<t[e(235)];){t[i];let r=(120&t[i])>>3,n=!!(4&t[i]),o=!!(2&t[i]);t[i],i+=1,n&&(i+=1);let a=Number.POSITIVE_INFINITY;if(o){a=0;for(let e=0;a|=(127&t[i])<<7*e,i+=1,128&t[i];e++);}1===r&&(s=xm[e(236)](t[e(211)](i,i+a))),i+=a}return s}static[Rm(236)](t){const e=Rm;let s=new Se(t),i=s[e(212)](3);s[e(223)]();let r=s[e(223)](),n=!0,o=0,a=0,h=[];if(r)h[e(210)]({operating_point_idc:0,level:s[e(212)](5),tier:0});else{let t=!1,i=0;if(s.readBool()){let t=s.readBits(32),r=s.readBits(32),h=s.readBool();if(h){let t=0;for(;;){if(0!==s[e(212)](1))break;t+=1}t>=32||s.readBits(t)}a=t,o=r,n=h,s[e(223)]()&&(i=s.readBits(5),s[e(212)](32),s[e(212)](5),s[e(212)](5))}let r=s[e(223)](),l=s[e(212)](5);for(let n=0;n<=l;n++){let n=s[e(212)](12),o=s[e(212)](5),a=o>7?s[e(212)](1):0;if(h[e(210)]({operating_point_idc:n,level:o,tier:a}),t){s[e(223)]()&&(s[e(212)](i+1),s.readBits(i+1),s[e(223)]())}if(r){s[e(223)]()&&s[e(212)](4)}}}let{level:l,tier:c}=h[0],d=s[e(212)](4),u=s[e(212)](4),p=s[e(212)](d+1)+1,f=s.readBits(u+1)+1,m=!1;!r&&(m=s[e(223)]()),m&&(s[e(212)](4),s[e(212)](4));s[e(223)](),s[e(223)](),s[e(223)]();let g=!1,y=2;if(!r){if(s[e(223)](),s.readBool(),s[e(223)](),s.readBool(),g=s.readBool(),g&&(s[e(223)](),s.readBool()),y=s[e(223)]()?2:s[e(212)](1),y){s[e(223)]()||s.readBits(1)}g&&s[e(212)](3)}s.readBool(),s[e(223)](),s[e(223)]();let A=s[e(223)](),b=8;if(2===i&&A){b=s[e(223)]()?12:10}else b=A?10:8;let v=!1;1!==i&&(v=s[e(223)]()),s[e(223)]()&&(s[e(212)](8),s[e(212)](8),s.readBits(8));let S=1,E=1;if(v)s[e(212)](1),S=1,E=1;else{if(s[e(212)](1),0==i)S=1,E=1;else if(1==i)S=0,E=0;else if(12==b){s.readBits(1)&&s[e(212)](1)}else S=1,E=0;S&&E&&s[e(212)](2),s[e(212)](1)}s[e(223)](),s.destroy(),s=null;return{codec_mimetype:"av01."+i+"."+xm[e(232)](l,c)+"."+b[e(219)](10)[e(230)](2,"0"),level:l,tier:c,level_string:xm[e(232)](l,c),profile_idc:i,profile_string:""+i,bit_depth:b,ref_frames:1,chroma_format:xm.getChromaFormat(v,S,E),chroma_format_string:xm.getChromaFormatString(v,S,E),frame_rate:{fixed:n,fps:o/a,fps_den:a,fps_num:o},sar_ratio:{width:1,height:1},codec_size:{width:p,height:f},present_size:{width:1*p,height:f}}}static[Rm(232)](t,e){return t[Rm(219)](10).padStart(2,"0")+(0===e?"M":"H")}static[Rm(227)](t,e,s){return t?0:0===e&&0===s?3:1===e&&0===s?2:1===e&&1===s?1:Number[Rm(221)]}static[Rm(218)](t,e,s){const i=Rm;return i(t?222:0===e&&0===s?213:1===e&&0===s?237:1===e&&1===s?217:224)}}function Mm(t,e){const s=Bm();return(Mm=function(t,e){return s[t-=318]})(t,e)}function Bm(){const t=["set","presentWidth","level_string","JbPro[xxx][✅✅✅][parseAV1CodecConfigurationRecord] invalid version ","10zdrROX","getUint8","1850124bcYgFH","setUint8","15mFGrTA","72486dEQBVK","codec_size","codec_mimetype","1737aNroNc","fps_num","Invalid AV1CodecConfigurationRecord, parseOBUs failed!","223692VipGVn",", correct to 1","63208VhWKnX","width","level",", valid version is 1 and return","frameRate","sarRatio","present_size","36uinUJE","Invalid AV1CodecConfigurationRecord, invalid version ","parseOBUs","frame_rate","fps_den","fixed","profile_string","codecWidth","139797bEBlPB","height","12285372rsLXUi","length","error","codec","buffer","byteLength","codecHeight","sar_ratio","bitDepth","490036guWDlR","Invalid AV1CodecConfigurationRecord, lack of data!","av1"];return(Bm=function(){return t})()}function Fm(t,e){const s=Mm;if(t.length<4)return void console[s(344)](s(352));let i={},r=new DataView(t[s(346)]),n=127&r.getUint8(0);if(r[s(359)](1),r[s(359)](1),r[s(359)](2),1!==n){if(!e.correctionConfigurationVersion)return console[s(344)](s(333)+n+s(328)),{};{console.log(s(357)+n+s(324));let t=252&r[s(359)](0)|1;r[s(361)](0,t)}}const o=xm[s(334)](new Uint8Array(t[s(346)],4,t.length-4));if(null!=o)return i[s(339)]=o[s(318)][s(326)],i[s(348)]=o.codec_size[s(341)],i[s(355)]=o[s(331)].width,i.presentHeight=o[s(331)][s(341)],i.profile=o[s(338)],i[s(327)]=o[s(356)],i[s(350)]=o.bit_depth,i.chromaFormat=o.chroma_format,i[s(330)]=o[s(349)],i[s(329)]=o[s(335)],(!1===o[s(335)][s(337)]||0===o[s(335)][s(321)]||0===o[s(335)][s(336)])&&(i[s(329)]={fixed:!0,fps:23.976,fps_num:23976,fps_den:1e3}),i[s(329)].fps_den,i[s(329)][s(321)],i[s(345)]=o[s(319)],i.videoType=Et[s(353)],i;console[s(344)](s(322))}function Um(t,e){const s=Mm;let i=[];i[0]=e?29:45,i[1]=1,i[2]=0,i[3]=0,i[4]=0;const r=new Uint8Array(i[s(343)]+t[s(347)]);return r[s(354)](i,0),r[s(354)](t,i[s(343)]),r}!function(t){const e=Mm,s=t();for(;;)try{if(794289===-parseInt(e(340))/1+parseInt(e(332))/2*(parseInt(e(363))/3)+parseInt(e(351))/4*(parseInt(e(362))/5)+-parseInt(e(360))/6+parseInt(e(323))/7+parseInt(e(325))/8*(parseInt(e(320))/9)+-parseInt(e(358))/10*(parseInt(e(342))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Bm);const Om=Vm;function Nm(){const t=["click","getSeqHeader","audioTrackType","demuxStart","appendBuffer","sample_rate","calcIframeIntervalTimestamp","flush","includes","length","name","write","isHevc","invalid codec","cryptoPayload","onSamples() trackId error","av1C","25026SATJsb","ALAW","indexOf","tempFmp4List","950050LHQVyr","find","offset","_listenMp4Box","Fmp4Demux","_doDecodeByFmp4","destroy","9JThBeB","stsd",".fmp4","TAG_NAME","mdia","mp4Box onError","aacADTSHeader","25282360DEXvzr","reset","AAC","1414656eQnxnU","ulaw","createElement","9949534jFebjV",", isIframe is ","465032ifCHdF","byteLength","MP3","is_sync","mp4a.40.","avcC","player","seqHeader"," drop invalid video sample ,length is ","set","download","hvcC","getTrackById","data","_times","isAV1","videoTrackId","createFile","mp3","getStreamBufferSize","hasAudio","cryptoPayloadAudio","videoTracks","duration","onReady","isG711A","8222768rXMrNR",", timestamp is ","audioTracks","downloadFmp4File","debugError","replace","channel_count","onSamples","tracks","timescale","45UUOqGY","cts","debugLog","debugWarn","init","isAAC","DataStream","mp4a","video","fileStart","isG711","updateStats","MULAW","setExtractionOptions","_opt","codec","audioTrackId","mp4Box","audio","isMP3","onError","dispatch","entries","1865nlQYYb","buffer","bind",", duration is ","SoundHandler","isG711U","href",'video/mp4; codecs="avc1.640028,mp4a.40.2"'];return(Nm=function(){return t})()}function Vm(t,e){const s=Nm();return(Vm=function(t,e){return s[t-=442]})(t,e)}!function(t){const e=Vm,s=t();for(;;)try{if(922211===-parseInt(e(527))/1+parseInt(e(544))/2+-parseInt(e(475))/3*(-parseInt(e(549))/4)+parseInt(e(498))/5*(parseInt(e(523))/6)+parseInt(e(547))/7+parseInt(e(465))/8*(-parseInt(e(534))/9)+-parseInt(e(541))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Nm);class jm extends If{constructor(t){const e=Vm;super(t),this[e(537)]=e(531),this.player=t,this[e(492)]=lm[e(456)](),this[e(542)](),this[e(530)](),t.debugLog(this[e(537)],e(479))}[Om(533)](){const t=Om;this[t(492)]&&(this[t(492)].stop(),this[t(492)][t(513)](),this.mp4Box[t(533)](),this[t(492)][t(463)]=null,this[t(492)][t(495)]=null,this[t(492)][t(472)]=null,this[t(492)]=null),this[t(542)](),this.audioTrackType=null,this[t(445)][t(477)](this[t(537)],t(533))}[Om(542)](){const t=Om;this[t(526)]=[],this.offset=0,this[t(455)]=null,this[t(491)]=null,this[t(518)]=!1,this.isAV1=!1,this[t(508)]=null}[Om(530)](){const t=Om;this[t(492)][t(463)]=this[t(463)].bind(this),this[t(492)][t(495)]=this[t(495)][t(500)](this),this[t(492)].onSamples=this[t(472)][t(500)](this)}[Om(463)](t){const e=Om;this[e(445)][e(477)](this.TAG_NAME,e(463));const s=t[e(461)][0];let i=t[e(467)][0];if(s){this[e(455)]=s.id;const t=this[e(507)](s);t&&(this[e(445)][e(477)](this[e(537)],e(446)),this[e(532)](t,W[e(483)],0,!0,0)),this[e(492)][e(488)](s.id)}if(!i&&(i=(t[e(473)]||[])[e(528)](t=>{const s=e;return t[s(516)]===s(502)})),i&&this[e(445)]._opt[e(459)]){this[e(491)]=i.id;const t=i[e(493)]||{},s=i[e(490)]||"";let r="";if(s[e(514)](e(457))?r=it[e(551)]:s[e(514)](e(482))?r=it[e(543)]:s[e(514)](e(545))?r=it.MULAW:s.includes("alaw")&&(r=it[e(524)]),r&&i.id){if(this[e(508)]=r,this[e(445)][e(477)](this[e(537)],"onReady and audioTrack is",nt[r]),this[e(492)].setExtractionOptions(i.id),this[e(480)]()){const s=_e[e(525)](t[e(511)]),r=i.codec[e(470)](e(443),""),n={profile:parseInt(r,10),sampleRate:s,channel:t[e(471)]},o=De(n);this[e(445)][e(477)](this[e(537)],e(540),o,"config",n),this[e(532)](o,W[e(493)],0,!1,0)}}else this[e(445)][e(478)](this[e(537)],e(519),s)}this[e(492)].start()}[Om(495)](t){const e=Om;this[e(445)][e(469)](this[e(537)],e(539),t)}[Om(472)](t,e,s){const i=Om;if(t===this[i(455)]){for(const t of s){const e=t[i(452)],s=t[i(442)],r=1e3*t[i(476)]/t[i(474)],n=1e3*t[i(462)]/t[i(474)];if(e[i(515)]<8){this.player.debugLog(this.TAG_NAME,i(447)+e[i(515)]+i(548)+s+i(501)+n+i(466)+r);continue}this.player[i(486)]({vbps:8*e[i(550)],dts:r}),s&&this[i(512)](r);let o=null;o=this[i(518)]?Al(e,s):this[i(454)]?Um(e,s):Hh(e,s);let a=this[i(520)](o,s);this[i(532)](a,W[i(483)],r,s,0)}this[i(492)].removeUsedSamples(t)}else if(t===this[i(491)]){if(this.player[i(489)][i(459)]){for(const t of s){const e=t[i(452)];this[i(445)][i(486)]({abps:e[i(550)]});const s=1e3*t[i(476)]/t[i(474)];t.duration,t[i(474)];let r=null;this[i(480)]()?r=Le(e):this[i(464)]()?r=ym(e):this[i(503)]()?r=Am(e):this[i(494)]()&&(r=Dm(e));const n=this[i(460)](r);this._doDecodeByFmp4(n,W.audio,s,!1,0)}this.mp4Box.removeUsedSamples(t)}}else this[i(445)][i(478)](this.TAG_NAME,i(521),t)}getSeqHeader(t){const e=Om,s=this[e(492)][e(451)](t.id);for(const t of s[e(538)].minf.stbl[e(535)][e(497)])if(t[e(444)]||t.hvcC||t.av1C){const s=new(lm[e(481)])(void 0,0,lm.DataStream.BIG_ENDIAN);let i=[];t.avcC?(t.avcC[e(517)](s),i=[23,0,0,0,0]):t[e(450)]?(this[e(518)]=!0,t[e(450)].write(s),i=[28,0,0,0,0]):t.av1C&&(this[e(454)]=!0,t[e(522)][e(517)](s),i=[29,0,0,0,0]);const r=new Uint8Array(s[e(499)],8),n=new Uint8Array(i[e(515)]+r.length);return n[e(448)](i,0),n[e(448)](r,i[e(515)]),n}return null}[Om(496)](t){const e=Om;!this[e(445)]._times[e(509)]&&(this[e(445)][e(453)][e(509)]=os());let s=new Uint8Array(t);s[e(499)][e(484)]=this[e(529)],this[e(529)]+=s[e(550)],this[e(492)][e(510)](s[e(499)])}[Om(468)](){const t=Om,e=new Blob(this.tempFmp4List,{type:t(505)}),s=URL.createObjectURL(e),i=document[t(546)]("a");i[t(504)]=s,i[t(449)]=os()+t(536),i[t(506)](),URL.revokeObjectURL(s)}getInputByteLength(){const t=Om;let e=0;return this.mp4Box&&(e=this[t(492)][t(458)]()),e}[Om(480)](){const t=Om;return this[t(508)]===it[t(543)]}[Om(494)](){const t=Om;return this.audioTrackType===it[t(551)]}[Om(485)](){const t=Om;return this[t(508)]===it[t(487)]||this[t(508)]===it.ALAW}[Om(464)](){const t=Om;return this.audioTrackType===it[t(524)]}[Om(503)](){const t=Om;return this[t(508)]===it[t(487)]}}function Wm(){var t=["2175258Fuctrn","1689404FmaQiF","2116674fcsWMP","5729661iGAmjj","3907760LagTbO","5nhyvdX","LOG_NAME","init","553617DGupjP","debugLog","Mpeg4Demux","2235642cxloCi","TAG_NAME","player","destroy"];return(Wm=function(){return t})()}function Gm(t,e){var s=Wm();return(Gm=function(t,e){return s[t-=279]})(t,e)}var zm=Gm;!function(t){for(var e=Gm,s=t();;)try{if(636451===parseInt(e(287))/1+-parseInt(e(279))/2+parseInt(e(281))/3+-parseInt(e(280))/4*(-parseInt(e(284))/5)+parseInt(e(290))/6+-parseInt(e(282))/7+parseInt(e(283))/8)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Wm);class Hm extends If{constructor(t){var e=Gm;super(t),this[e(292)]=t,this[e(291)]=e(289),this[e(292)][e(288)](this[e(285)],e(286))}[zm(293)](){var t=zm;super.destroy(),this[t(292)][t(288)](this[t(285)],t(293))}}function Km(){const t=["3952144IGZRrL","byteLength","reduce","1030HWauCT","839155qnWVde","135758yMEGkU","1131870ToAGDb","20TuNNMX","108891XoiSQg","set","570345rvnsYm","forEach","2sVkTkW","6707856FEfUmO"];return(Km=function(){return t})()}function qm(t,e){const s=Km();return(qm=function(t,e){return s[t-=307]})(t,e)}function Qm(...t){const e=qm;if((t=t.filter(Boolean)).length<2)return t[0];const s=new Uint8Array(t[e(308)]((t,s)=>t+s[e(307)],0));let i=0;return t[e(317)](t=>{s[e(315)](t,i),i+=t.byteLength}),s}!function(t){const e=qm,s=t();for(;;)try{if(437930===parseInt(e(311))/1+-parseInt(e(318))/2*(parseInt(e(316))/3)+parseInt(e(313))/4*(-parseInt(e(310))/5)+-parseInt(e(312))/6+-parseInt(e(320))/7+parseInt(e(319))/8+-parseInt(e(314))/9*(-parseInt(e(309))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Km);const Ym=sg;!function(t){const e=sg,s=t();for(;;)try{if(569446===parseInt(e(517))/1+parseInt(e(528))/2+-parseInt(e(506))/3+parseInt(e(492))/4*(-parseInt(e(543))/5)+parseInt(e(514))/6*(-parseInt(e(513))/7)+parseInt(e(519))/8*(parseInt(e(510))/9)+parseInt(e(509))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Xm);const Jm={kMPEG1Audio:3,kMPEG2Audio:4,kPrivateData:5,kPESPrivateData:6,kADTSAAC:15,kLOASAAC:17,kAC3:129,kEAC3:135,kMetadata:21,kSCTE35:134,kH264:27,kH265:36,G711A:144,G711U:145,G722:146,G723:147,G729:153,OPUS:156};function Xm(){const t=["3643296rlotbp","chromaFormat","codec_mimetype","audioCodec","times","toLowerCase","dts","segments","stream_id","sarDen","hasKeyframesIndex","sampling_rate","level","height","2834340ErVuRo","filepositions","pts","2823090CZqSYQ","12114ECVxOz","fps","length","145712djfHNR","84tVWKIs","userAgent","getNearestKeyframe","888660lkElbS","_search","4312dkjPwU","sampling_index","audioChannelCount","audioSampleRate","mimeType","pid","nearest_pts","audioDataRate","firefox","1640022OFTlHz","refFrames","metadata","original_object_type","width","segmentCount","slices","profile","hasVideo","videoCodec","isComplete","expected_length","data","sampling_freq_index","len","5TtyaXU","channel_config","mp4a.40.","indexOf","keyframesIndex"];return(Xm=function(){return t})()}class $m{constructor(){const t=sg;this[t(534)]=[],this.total_length=0,this[t(539)]=0,this.random_access_indicator=0}}class Zm{constructor(){const t=sg;this[t(524)]=null,this[t(540)]=null,this.stream_type=null,this.random_access_indicator=null}}class tg{constructor(){const t=sg;this[t(524)]=null,this[t(500)]=null,this[t(542)]=null,this[t(540)]=null,this[t(508)]=null,this[t(525)]=null,this[t(498)]=null}}const eg=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350];function sg(t,e){const s=Xm();return(sg=function(t,e){return s[t-=492]})(t,e)}class ig{constructor(){const t=sg;this.mimeType=null,this.duration=null,this.hasAudio=null,this[t(536)]=null,this[t(495)]=null,this[t(537)]=null,this[t(526)]=null,this.videoDataRate=null,this[t(522)]=null,this[t(521)]=null,this[t(532)]=null,this[t(505)]=null,this[t(511)]=null,this.profile=null,this[t(504)]=null,this[t(529)]=null,this[t(493)]=null,this.sarNum=null,this.sarDen=null,this[t(530)]=null,this[t(499)]=null,this[t(533)]=null,this.hasKeyframesIndex=null,this.keyframesIndex=null}[Ym(538)](){const t=Ym;let e=!1===this.hasAudio||!0===this.hasAudio&&null!=this[t(495)]&&null!=this[t(522)]&&null!=this[t(521)],s=!1===this[t(536)]||!0===this[t(536)]&&null!=this[t(537)]&&null!=this.width&&null!=this[t(505)]&&null!=this[t(511)]&&null!=this[t(535)]&&null!=this[t(504)]&&null!=this[t(529)]&&null!=this[t(493)]&&null!=this.sarNum&&null!=this[t(501)];return null!=this[t(523)]&&e&&s}isSeekable(){return!0===this[Ym(502)]}[Ym(516)](t){const e=Ym;if(null==this[e(547)])return null;let s=this[e(547)],i=this._search(s[e(496)],t);return{index:i,milliseconds:s[e(496)][i],fileposition:s[e(507)][i]}}[Ym(518)](t,e){let s=0,i=t[Ym(512)]-1,r=0,n=0,o=i;for(e<t[0]&&(s=0,n=o+1);n<=o;){if(r=n+Math.floor((o-n)/2),r===i||e>=t[r]&&e<t[r+1]){s=r;break}t[r]<e?n=r+1:o=r-1}return s}}class rg{constructor(t){const e=Ym;let s=null,i=t.audio_object_type,r=t.audio_object_type,n=t[e(541)],o=t[e(544)],a=0,h=navigator[e(515)][e(497)]();-1!==h[e(546)](e(527))?n>=6?(r=5,s=new Array(4),a=n-3):(r=2,s=new Array(2),a=n):-1!==h.indexOf("android")?(r=2,s=new Array(2),a=n):(r=5,a=n,s=new Array(4),n>=6?a=n-3:1===o&&(r=2,s=new Array(2),a=n)),s[0]=r<<3,s[0]|=(15&n)>>>1,s[1]=(15&n)<<7,s[1]|=(15&o)<<3,5===r&&(s[1]|=(15&a)>>>1,s[2]=(1&a)<<7,s[2]|=8,s[3]=0),this.config=s,this[e(503)]=eg[n],this[e(520)]=n,this.channel_count=o,this.object_type=r,this[e(531)]=i,this[e(494)]="mp4a.40."+r,this.original_codec_mimetype=e(545)+i}}const ng=ag;function og(){const t=["audio","SMPTE 2038 Metadata: pid=","parsePMT","channelCount","adts_aac","random_access_indicator","AAC: SamplingFrequencyIndex changed from ","261608gChCRr","AAC","parsePES","frame_rate","program_pmt_map_",", not start with 0x47, so break","167412ppsgck","media_info_","channel_count","1815732OnmTLt","Video: Codec mimeType changed from ","parseOpusPayload","Parsed first PMT: ","program_number","tsAudioTrackIndex","AC3: Unsupported codec","parseSection","payload_unit_start_indicator","Opus","original_object_type","parsePAT","fromCharCode","_isEmitVideoTrackPidList","ec-3","pmt_","low_frequency_effects_channel_on","_times","pes_private_data_pids","fps_num","sampling_frequency"," is not corresponded to PAT!","bit_stream_mode","sarDen","Asynchronous KLV Metadata: pid=","audioCodec","kSliceCRA_NUT","cryptoPayload","present_size","common_pids","parseEAC3Payload","Video Track PID List: ","Opus: Channel count changed from ","synchronous_klv_pids","clearSlices","AAC: Detected pts overlapped, ","asynchronous_klv_pids","isInitSegmentDispatched","g711a","timescale_","total_length","parseVPS","audioSampleRateIndex","ac-3","updateVideoInfo","aacADTSHeader profile: ",", so ignore this pid ","parseSCTE35","bit_depth","emitPESSlices","discontinuity_indicator","debugLog","updateAudioInfo","dispatchPESPrivateDataDescriptor",", pts=","samples",", stream_id=","loas_previous_frame",", channel: ","currentVideoTrackIndex","frameRate","has_video_","ms, PES pts: ","readNextAACFrame","pes_slice_queues_","video_metadata_changed_","file_position","kMPEG1Audio","aac_last_incomplete_data_","reset","min","parseChunks() sync_byte = ",", so use this pid ","Generated first HEVCDecoderConfigurationRecord for mimeType: ","version_number","width","readNextNaluPayload",", dts=","kPESPrivateData","chroma_format_string","Generated first AudioSpecificConfig for mimeType: ","vps","tsPacketSizeError","hasAudio","MP3: AudioObjectType changed from ","655350NCEGho","smpte2038_pids","subarray","_remainingPacketData","video","concat","_initPmt","nearest_pts","eac3","1126935ZCnMSK","_opt","AC3: Channel Mode changed from ","kSliceSPS","G711U","TsDemux","_preDoDecode","dispatchAudioInitSegment","hvcc","kEAC3","sampling_freq_index","kH265","audio_metadata_","video_track_","codec_size","MP3: SamplingFrequencyIndex changed from ","payload","emitError","parsePESPrivateDataPayload","data","dispatchVideoInitSegment","presentWidth","Timed ID3 Metadata: pid=","kSCTE35","avcc","Synchronous KLV Metadata: pid=","elementary_stream_priority_indicator","forEach","opus","ts_packet_size = 192, m2ts mode","expected_length","duration_","h264","codec","265255DDFLER","_doDecodeByTs","debugError","kLOASAAC","push","Opus: Unsupported codec","parseSPS$2","audio_object_type","audio_last_sample_pts_","current_program_","parseH264Payload","isFirstDispatch and tsPacketSize = ","player","parseTimedID3MetadataPayload","isHevc","_isTsPacketSizeValid","has_audio_","parseSPS","presentHeight","join","kADTSAAC","chromaFormat","channel_mode","audio_metadata_changed_",", and pid list ","8vGJwKG","first_parse_","sampling_rate","parseAC3Payload","tsVideoTrackIndex","config_","parseAsynchronousKLVMetadataPayload","level","detectAudioMetadataChange","getNearestTimestampMilliseconds","config","buffer","parseSMPTE2038MetadataPayload","descriptor","parseG711Payload","parseMP3Payload","cts","program_pmt_pid","from","emitSectionSlices",", pid: ","slices","set","select video track index is "," is not corresponded to PMT!","type","2247fFpulh","Generated first AVCDecoderConfigurationRecord for mimeType: ","EAC3: Unsupported codec","loas_aac","currentAudioTrackIndex","pat_","Opus: SamplingFrequencyIndex changed from ","kSliceIDR_W_RADL","parseSynchronousKLVMetadataPayload","H265: Critical h265 metadata has been changed, attempt to re-generate InitSegment","section_slice_queues_","abs","correctSamplePts","channel_config","G711A","_isEmitAudioTrackPidList","fps","current_pmt_pid_","kMetadata","TAG","debugWarn","parseChunks","MP3: Channel count changed from ","_audioPidList","match","calcIframeIntervalTimestamp","Parsed first PAT: ","scte_35_pids","handlePESSlice: packet_start_code_prefix should be 1 but with value ","len","handleSectionSlice","parseADTSAACPayload","ID3 ","AC3: Bit Stream Identification changed from ","Video: Present resolution width changed from "," to ","hasIncompleteData","details","pts","timestamp_offset_","timescale","kH264","parseLOASAACPayload","pcr_pid","_videoPidList","pid","g711u","audio_init_segment_dispatched_","dispatchAudioMediaSegment","dispatchVideoMediaSegment","video_init_segment_dispatched_","codecHeight","profile","bitDepth","dispatchAudioVideoMediaSegment","mp3","H264: Critical h264 metadata has been changed, attempt to re-generate InitSegment","dts","AAC: AudioObjectType changed from ","codec_mimetype","AC3: BitStream Mode changed from ","destroy","length","_doDecodeVideo","AC3: Low Frequency Effects Channel On changed from ","duration","4362mUtlNg","codecWidth","mimeType","isMSEDecodeAudio","ac3","video_metadata_","videoCodec","network_pid","kSlicePPS","AAC: Channel configuration changed from ","audio_track_","stream_id","_doDecodeAudio",", sampleRate: ","_getPcrBase","Malformed PES: PES_packet_length < 3 + PES_header_data_length","Unsupported stream. type: ","stringify","ts_packet_size = 204, RS encoded MPEG2-TS stream","includes","getIncompleteData","h265","TAG_NAME","isIFrame","pps","emit","last_pcr_base_","originalCodec","sampling_index","MP3","KLVA","tsPacketSize","last_pcr_","sar_ratio","getVideoTrackPidList","parsePES: packet_start_code_prefix should be 1 but with value ","height","Video: Coded Resolution changed from ","pid_stream_type","isEmitTsPrivateData","profile_string","detectVideoMetadataChange","AC3: Sampling Frequency changed from ","sps","byteLength","object_type","parsePPS","updateStats","audioSampleRate","hasVideo","stream_type","kSliceIDR_N_LP","floor","timed_id3_pids","chroma_format","_getTimestamp","parseH265Payload","parsePAT: table_id ","expected: ","sample_rate","aac","syncOffset","handlePESSlice","bit_stream_identification","sarRatio","refSampleDuration"];return(og=function(){return t})()}function ag(t,e){const s=og();return(ag=function(t,e){return s[t-=181]})(t,e)}!function(t){const e=ag,s=t();for(;;)try{if(184988===parseInt(e(295))/1+-parseInt(e(252))/2+parseInt(e(491))/3+-parseInt(e(485))/4+parseInt(e(261))/5+-parseInt(e(412))/6*(-parseInt(e(346))/7)+parseInt(e(320))/8*(-parseInt(e(494))/9))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(og);class hg extends If{constructor(t){const e=ag;super(t),this[e(307)]=t,this[e(434)]=e(266),this.reset(),this.section_slice_queues_={},this[e(489)]={},this.pes_slice_queues_={},this[e(492)]=new ig,this[e(351)]={version_number:0,network_pid:0,program_map_pid:{}},this.video_metadata_={vps:null,sps:null,pps:null,details:null},this[e(273)]={codec:null,audio_object_type:null,sampling_freq_index:null,sampling_frequency:null,channel_config:null},this[e(274)]={type:e(256),id:1,sequenceNumber:0,samples:[],length:0},this[e(422)]={type:e(478),id:2,sequenceNumber:0,samples:[],length:0},this[e(307)][e(262)][e(324)]&&(this[e(226)]=this[e(307)][e(262)][e(324)]-1),this[e(307)][e(262)][e(499)]&&(this[e(350)]=this[e(307)][e(262)].tsAudioTrackIndex-1),this[e(307)][e(218)](this[e(434)],"init")}[ng(407)](){const t=ng;this.reset(),super[t(407)](),this[t(307)][t(218)](this[t(434)],t(407))}[ng(236)](){const t=ng;this[t(321)]=!0,this.tsPacketSize=0,this[t(473)]=0,this[t(182)]=null,this[t(325)]=null,this.media_info_=null,this[t(206)]=90,this[t(292)]=0,this.pat_=null,this[t(304)]=null,this[t(363)]=-1,this[t(489)]=null,this[t(231)]=null,this[t(356)]=null,this[t(417)]=null,this[t(273)]=null,this[t(444)]=null,this[t(438)]=NaN,this[t(385)]=0,this[t(303)]=void 0,this[t(235)]=null,this[t(228)]=!1,this[t(311)]=!1,this[t(396)]=!1,this[t(393)]=!1,this[t(232)]=!1,this[t(318)]=!1,this.loas_previous_frame=null,this[t(274)]=null,this[t(422)]=null,this[t(255)]=null,this._videoPidList=[],this[t(369)]=[],this.currentVideoTrackIndex=-1,this[t(350)]=-1,this[t(507)]=!1,this[t(361)]=!1}probe(t){const e=ng;let s=new Uint8Array(t),i=-1,r=188;if(s.byteLength<=3*r)return{needMoreData:!0};for(;-1===i;){let t=Math[e(237)](1e3,s.byteLength-3*r);for(let e=0;e<t;){if(71===s[e]&&71===s[e+r]&&71===s[e+2*r]){i=e;break}e++}if(-1===i)if(188===r)r=192;else{if(192!==r)break;r=204}}return-1===i?{match:!1}:(192===r&&i>=4?(this.player[e(218)](this.TAG_NAME,e(290)),i-=4):204===r&&this[e(307)].debugLog(this[e(434)],e(430)),{match:!0,consumed:0,ts_packet_size:r,sync_offset:i})}[ng(258)](){return{program_number:0,version_number:0,pcr_pid:0,pid_stream_type:{},common_pids:{h264:void 0,h265:void 0,adts_aac:void 0,loas_aac:void 0,opus:void 0,ac3:void 0,eac3:void 0,mp3:void 0,g711a:void 0,g711u:void 0},pes_private_data_pids:{},timed_id3_pids:{},synchronous_klv_pids:{},asynchronous_klv_pids:{},scte_35_pids:{},smpte2038_pids:{}}}[ng(310)](){const t=ng;return 188===this[t(443)]||192===this[t(443)]||204===this[t(443)]}dispatch(t){const e=ng;!this[e(307)][e(184)].demuxStart&&(this[e(307)]._times.demuxStart=os());let s=new Uint8Array(t);this._remainingPacketData&&(s=Qm(this[e(255)],s),this._remainingPacketData=null);let i=s[e(331)];const r=this.parseChunks(i);r?this[e(255)]=s[e(254)](r):s[e(408)]<this[e(443)]&&(this[e(255)]=s)}[ng(367)](t){const e=ng;let s=0;if(this[e(321)]){this[e(321)]=!1;const i=this.probe(t);i[e(370)]&&(this.tsPacketSize=i.ts_packet_size,this[e(473)]=i.sync_offset),s=this[e(473)],this[e(307)].debugLog(this.TAG_NAME,e(306)+this.tsPacketSize+", syncOffset = "+this[e(473)]),xi(this[e(310)]())&&this[e(307)][e(278)](J[e(249)],this[e(443)])}if(!xi(this[e(310)]())){for(;s+this.tsPacketSize<=t.byteLength;){192===this[e(443)]&&(s+=4);const i=new Uint8Array(t,s,188);let r=i[0];if(71!==r){this[e(307)][e(366)](this[e(434)],e(238)+r+e(490));break}let n=(64&i[1])>>>6;i[1];let o=(31&i[1])<<8|i[2],a=(48&i[3])>>>4,h=15&i[3],l=!(!this[e(182)]||this[e(182)].pcr_pid!==o),c={},d=4;if(2==a||3==a){let t=i[4];if(t>0&&(l||3==a)){c[e(217)]=(128&i[5])>>>7,c.random_access_indicator=(64&i[5])>>>6,c[e(287)]=(32&i[5])>>>5;let t=(16&i[5])>>>4;if(t){let t=300*this[e(426)](i)+((1&i[10])<<8|i[11]);this.last_pcr_=t}if(this[e(307)]._opt[e(451)]){if(1===(2&i[5])>>>1){let s=6;t&&(s+=6),(8&i[5])>>>3&&(s+=6),(4&i[5])>>>2&&(s+=1);let r=i[s],n=i[e(254)](s+1,s+1+r);const o=new Uint8Array(n);this[e(307)].emitTsPrivateData(o)}}}if(2==a||5+t===188){s+=188,204===this[e(443)]&&(s+=16);continue}d=5+t}if(1==a||3==a)if(0===o||o===this.current_pmt_pid_||null!=this.pmt_&&this.pmt_.pid_stream_type[o]===Jm[e(284)]){let i=188-d;this[e(376)](t,s+d,i,{pid:o,payload_unit_start_indicator:n,continuity_conunter:h,random_access_indicator:c[e(483)]})}else if(null!=this[e(182)]&&null!=this[e(182)][e(450)][o]){let i=188-d,r=this.pmt_[e(450)][o];(o===this[e(182)][e(196)].h264||o===this.pmt_[e(196)][e(433)]||o===this[e(182)][e(196)][e(482)]||o===this.pmt_[e(196)].loas_aac||o===this.pmt_[e(196)][e(416)]||o===this.pmt_[e(196)][e(260)]||o===this.pmt_[e(196)][e(289)]||o===this[e(182)][e(196)].mp3||o===this.pmt_[e(196)].g711a||o===this[e(182)][e(196)][e(392)]||!0===this.pmt_[e(185)][o]||!0===this[e(182)][e(465)][o]||!0===this[e(182)][e(200)][o]||!0===this.pmt_[e(203)][o])&&this[e(474)](t,s+d,i,{pid:o,stream_type:r,payload_unit_start_indicator:n,continuity_conunter:h,random_access_indicator:c[e(483)]})}s+=188,204===this.tsPacketSize&&(s+=16)}return this.dispatchAudioVideoMediaSegment(),s}}handleSectionSlice(t,e,s,i){const r=ng;let n=new Uint8Array(t,e,s),o=this[r(356)][i[r(391)]];if(i[r(502)]){let a=n[0];if(null!=o&&0!==o[r(207)]){let n=new Uint8Array(t,e+1,Math.min(s,a));o.slices.push(n),o[r(207)]+=n[r(456)],o[r(207)]===o[r(291)]?this[r(339)](o,i):this[r(201)](o,i)}for(let h=1+a;h<n.byteLength;){if(255===n[h+0])break;let a=(15&n[h+1])<<8|n[h+2];this.section_slice_queues_[i[r(391)]]=new $m,o=this.section_slice_queues_[i.pid],o[r(291)]=a+3,o[r(483)]=i[r(483)];let l=new Uint8Array(t,e+h,Math[r(237)](s-h,o[r(291)]-o[r(207)]));o.slices.push(l),o[r(207)]+=l[r(456)],o[r(207)]===o[r(291)]?this[r(339)](o,i):o[r(207)]>=o[r(291)]&&this[r(201)](o,i),h+=l[r(456)]}}else if(null!=o&&0!==o[r(207)]){let n=new Uint8Array(t,e,Math.min(s,o[r(291)]-o[r(207)]));o.slices[r(299)](n),o.total_length+=n[r(456)],o[r(207)]===o.expected_length?this.emitSectionSlices(o,i):o[r(207)]>=o.expected_length&&this[r(201)](o,i)}}handlePESSlice(t,e,s,i){const r=ng;let n=new Uint8Array(t,e,s),o=n[0]<<16|n[1]<<8|n[2];n[3];let a=n[4]<<8|n[5];if(i[r(502)]){if(1!==o)return void this.player[r(366)](this.TAG_NAME,r(374)+o);let t=this[r(231)][i[r(391)]];t&&(0===t[r(291)]||t.expected_length===t.total_length?this[r(216)](t,i):this[r(201)](t,i)),this.pes_slice_queues_[i[r(391)]]=new $m,this[r(231)][i[r(391)]][r(483)]=i[r(483)]}if(null==this[r(231)][i[r(391)]])return;let h=this[r(231)][i[r(391)]];h[r(341)][r(299)](n),i.payload_unit_start_indicator&&(h[r(291)]=0===a?0:a+6),h[r(207)]+=n[r(456)],h[r(291)]>0&&h[r(291)]===h[r(207)]?this[r(216)](h,i):h[r(291)]>0&&h[r(291)]<h[r(207)]&&this[r(201)](h,i)}[ng(339)](t,e){const s=ng;let i=new Uint8Array(t.total_length);for(let e=0,r=0;e<t[s(341)][s(408)];e++){let s=t.slices[e];i.set(s,r),r+=s.byteLength}t[s(341)]=[],t[s(291)]=-1,t[s(207)]=0;let r={};r[s(391)]=e[s(391)],r[s(280)]=i,r[s(233)]=t.file_position,r[s(483)]=t[s(483)],this.parseSection(r)}[ng(216)](t,e){const s=ng;let i=new Uint8Array(t[s(207)]);for(let e=0,r=0;e<t[s(341)][s(408)];e++){let n=t[s(341)][e];i.set(n,r),r+=n[s(456)]}t[s(341)]=[],t[s(291)]=-1,t.total_length=0;let r=new Zm;r[s(391)]=e[s(391)],r[s(280)]=i,r[s(462)]=e[s(462)],r[s(483)]=t[s(483)],this[s(487)](r)}[ng(201)](t){const e=ng;t[e(341)]=[],t[e(291)]=-1,t[e(207)]=0}[ng(501)](t){const e=ng;let s=t[e(280)],i=t[e(391)];0===i?this[e(505)](s):i===this.current_pmt_pid_?this[e(480)](s):null!=this[e(182)]&&this.pmt_[e(373)][i]&&this[e(214)](s)}[ng(487)](t){const e=ng;let s=t[e(280)],i=s[0]<<16|s[1]<<8|s[2],r=s[3],n=s[4]<<8|s[5];if(1===i){if(188!==r&&190!==r&&191!==r&&240!==r&&241!==r&&255!==r&&242!==r&&248!==r){s[6];let i,o,a=(192&s[7])>>>6,h=s[8];(2===a||3===a)&&(i=this._getTimestamp(s,9),o=3===a?this[e(467)](s,14):i);let l,c=9+h;if(0!==n){if(n<3+h)return void this[e(307)][e(366)](this.TAG_NAME,e(427));l=n-3-h}else l=s.byteLength-c;let d=s.subarray(c,c+l);switch(t[e(462)]){case Jm[e(234)]:case Jm.kMPEG2Audio:this[e(335)](d,i);break;case Jm[e(245)]:this[e(182)][e(196)].opus===t[e(391)]?this.parseOpusPayload(d,i):this.pmt_[e(196)][e(416)]===t[e(391)]?this[e(323)](d,i):this.pmt_[e(196)].eac3===t.pid?this[e(197)](d,i):this[e(182)].asynchronous_klv_pids[t[e(391)]]?this[e(326)](d,t[e(391)],r):this[e(182)][e(253)][t[e(391)]]?this[e(332)](d,i,o,t[e(391)],r):this.parsePESPrivateDataPayload(d,i,o,t.pid,r);break;case Jm[e(315)]:this.parseADTSAACPayload(d,i);break;case Jm[e(298)]:this[e(388)](d,i);break;case Jm.kAC3:this.parseAC3Payload(d,i);break;case Jm[e(270)]:this[e(197)](d,i);break;case Jm[e(364)]:this[e(182)][e(465)][t[e(391)]]?this[e(308)](d,i,o,t.pid,r):this[e(182)][e(200)][t[e(391)]]&&this[e(354)](d,i,o,t[e(391)],r);break;case Jm[e(387)]:this[e(305)](d,i,o,t[e(483)]);break;case Jm[e(272)]:this[e(468)](d,i,o,t.random_access_indicator);break;case Jm.G711A:this.parseG711Payload(d,i,!0);break;case Jm[e(265)]:this[e(334)](d,i,!1);break;default:this[e(307)][e(366)](this[e(434)],e(428)+t[e(462)]+e(340)+t[e(391)])}}else if((188===r||191===r||240===r||241===r||255===r||242===r||248===r)&&t[e(462)]===Jm[e(245)]){let i,o=6;i=0!==n?n:s[e(456)]-o;let a=s[e(254)](o,o+i);this[e(279)](a,void 0,void 0,t[e(391)],r)}}else this[e(307)][e(297)](this[e(434)],e(447)+i)}[ng(505)](t){const e=ng;let s=t[0];if(0!==s)return void this.player[e(366)](this[e(434)],e(469)+s+e(188));let i=(15&t[1])<<8|t[2];t[3],t[4];let r=(62&t[5])>>>1,n=1&t[5],o=t[6];t[7];let a=null;if(1===n&&0===o)a={version_number:0,network_pid:0,program_pmt_pid:{}},a[e(241)]=r;else if(a=this[e(351)],null==a)return;let h=i-5-4,l=-1,c=-1;for(let s=8;s<8+h;s+=4){let i=t[s]<<8|t[s+1],r=(31&t[s+2])<<8|t[s+3];0===i?a[e(419)]=r:(a[e(337)][i]=r,-1===l&&(l=i),-1===c&&(c=r))}1===n&&0===o&&(null==this[e(351)]&&this[e(307)][e(218)](this[e(434)],e(372)+JSON.stringify(a)),this[e(351)]=a,this[e(304)]=l,this[e(363)]=c)}parsePMT(t){const e=ng;let s=t[0];if(2!==s)return void this[e(307)][e(297)](this[e(434)],"parsePMT: table_id "+s+e(344));let i,r=(15&t[1])<<8|t[2],n=t[3]<<8|t[4],o=(62&t[5])>>>1,a=1&t[5],h=t[6];if(t[7],1===a&&0===h)i=this._initPmt(),i[e(498)]=n,i[e(241)]=o,this.program_pmt_map_[n]=i;else if(i=this.program_pmt_map_[n],null==i)return;i[e(389)]=(31&t[8])<<8|t[9];let l=(15&t[10])<<8|t[11],c=12+l,d=r-9-l-4;for(let s=c;s<c+d;){let r=t[s],n=(31&t[s+1])<<8|t[s+2],o=(15&t[s+3])<<8|t[s+4];i[e(450)][n]=r;let a=i[e(196)][e(293)]||i[e(196)][e(433)],h=i[e(196)][e(482)]||i[e(196)][e(349)]||i[e(196)][e(416)]||i.common_pids[e(260)]||i[e(196)][e(289)]||i[e(196)][e(401)]||i.common_pids[e(205)]||i[e(196)][e(392)];if(r!==Jm[e(387)]||a)if(r!==Jm.kH265||a)if(r!==Jm[e(315)]||h)if(r!==Jm.kLOASAAC||h)if(r!==Jm.kAC3||h)if(r!==Jm[e(270)]||h)if(r!==Jm[e(234)]&&r!==Jm.kMPEG2Audio||h)if(r!==Jm[e(360)]||h)if(r!==Jm[e(265)]||h)if(r===Jm[e(245)]){if(i.pes_private_data_pids[n]=!0,o>0){for(let r=s+5;r<s+5+o;){let s=t[r+0],o=t[r+1];if(5===s){let s=String.fromCharCode(...Array[e(338)](t.subarray(r+2,r+2+o)));"VANC"===s?i.smpte2038_pids[n]=!0:s===e(503)?i[e(196)][e(289)]=n:"KLVA"===s&&(i.asynchronous_klv_pids[n]=!0)}else if(127===s&&n===i[e(196)][e(289)]){let s=null;if(128===t[r+2]&&(s=t[r+3]),null==s){this[e(307)][e(366)](this.TAG_NAME,"Not Supported Opus channel count.");continue}const i={codec:e(289),channel_count:15&s?15&s:2,channel_config_code:s,sample_rate:48e3},n={codec:e(289),meta:i};0==this[e(393)]?(this.audio_metadata_=i,this[e(268)](n)):this[e(328)](n)&&(this[e(394)](),this[e(268)](n))}r+=2+o}let a=t[e(254)](s+5,s+5+o);this[e(220)](n,r,a)}}else if(r===Jm[e(364)]){if(o>0)for(let r=s+5;r<s+5+o;){let s=t[r+0],o=t[r+1];if(38===s){let s=t[r+2]<<8|t[r+3],o=null;65535===s&&(o=String.fromCharCode(...Array[e(338)](t[e(254)](r+4,r+4+4))));let a=null;if(255===t[r+4+(65535===s?4:0)]){let i=4+(65535===s?4:0)+1;a=String[e(506)](...Array[e(338)](t[e(254)](r+i,r+i+4)))}o===e(378)&&"ID3 "===a?i[e(465)][n]=!0:a===e(442)&&(i[e(200)][n]=!0)}r+=2+o}}else r===Jm.kSCTE35&&(i[e(373)][n]=!0);else i[e(196)][e(392)]=n;else i[e(196)][e(205)]=n;else i[e(196)][e(401)]=n;else i[e(196)][e(260)]=n;else i[e(196)][e(416)]=n;else i[e(196)][e(349)]=n;else i.common_pids[e(482)]=n;else!this[e(390)][e(431)](n)&&this[e(390)][e(299)](n),-1===this.currentVideoTrackIndex||-1!==this[e(226)]&&void 0!==this[e(390)][this[e(226)]]?(this[e(307)][e(218)](this.TAG_NAME,e(343)+(this[e(226)]+1)+", and pid list "+this[e(390)][e(314)](",")+e(239)+n),i[e(196)][e(433)]=n):this[e(307)].debugLog(this[e(434)],e(343)+(this.currentVideoTrackIndex+1)+e(319)+this[e(390)].join(",")+e(213)+n);else!this[e(390)][e(431)](n)&&this[e(390)].push(n),-1===this[e(226)]||-1!==this[e(226)]&&void 0!==this[e(390)][this[e(226)]]?(this[e(307)][e(218)](this[e(434)],e(343)+(this[e(226)]+1)+e(319)+this[e(390)].join(",")+e(239)+n),i.common_pids[e(293)]=n):this[e(307)].debugLog(this[e(434)],"select video track index is "+(this.currentVideoTrackIndex+1)+", and pid list "+this[e(390)][e(314)](",")+", so ignore this pid "+n);s+=5+o}n===this[e(304)]&&(null==this[e(182)]&&this[e(307)].debugLog(this[e(434)],e(497)+JSON[e(429)](i)),this[e(182)]=i,(i[e(196)][e(293)]||i[e(196)][e(433)])&&(this[e(228)]=!0),(i[e(196)].adts_aac||i[e(196)][e(349)]||i[e(196)][e(416)]||i[e(196)].opus||i[e(196)][e(401)]||i[e(196)].g711a||i.common_pids.g711u)&&(this[e(311)]=!0),!this[e(507)]&&(this[e(507)]=!0,this[e(307)][e(218)](this.TAG_NAME,e(198)+this[e(390)][e(314)](",")),this[e(307)][e(437)](q.tsVideoTrackPidList,this[e(390)])))}[ng(214)](t){}[ng(305)](t,e,s,i){const r=ng;let n=new Xh(t),o=null,a=null,h=[],l=0,c=!1;for(;null!=(o=n.readNextNaluPayload());){let t=new $h(o);if(t.type===ot[r(264)]){let e=xh[r(301)](o[r(280)]);this[r(396)]?!0===this[r(453)](t,e)&&(this.player[r(218)](this.TAG_NAME,r(402)),this[r(232)]=!0,this[r(417)]={vps:void 0,sps:t,pps:void 0,details:e}):(this[r(417)][r(455)]=t,this[r(417)][r(383)]=e)}else t.type===ot[r(420)]?(!this[r(396)]||this[r(232)])&&(this[r(417)].pps=t,this.video_metadata_[r(455)]&&this[r(417)][r(436)]&&(this[r(232)]&&this[r(395)](),this[r(281)]())):(t[r(345)]===ot.kSliceIDR||t[r(345)]===ot.kSliceNonIDR&&1===i)&&(c=!0);this[r(396)]&&(h[r(299)](t),l+=t.data[r(456)])}let d=Math[r(464)](e/this[r(206)]),u=Math[r(464)](s/this[r(206)]);if(h[r(408)]){let t=this[r(274)];for(let t=0;t<h.length;t++){let e=h[t];if(null==a)a=e[r(280)];else{let t=new Uint8Array(a[r(456)]+e[r(280)][r(456)]);t[r(342)](a,0),t[r(342)](e[r(280)],a[r(456)]),a=t}}let e={length:l,isIFrame:c,dts:u,pts:d,cts:d-u,payload:a,type:W[r(256)],isHevc:!1};t[r(222)].push(e),t[r(408)]=a[r(456)]}}[ng(468)](t,e,s,i){const r=ng;let n=new El(t),o=null,a=null,h=[],l=0,c=!1;for(;null!=(o=n[r(243)]());){let t=new wl(o);if(t[r(345)]===at.kSliceVPS){if(!this.video_init_segment_dispatched_){let e=ul[r(208)](o[r(280)]);this[r(417)][r(248)]=t,this.video_metadata_[r(383)]={...this[r(417)].details,...e}}}else if(t[r(345)]===at.kSliceSPS){let e=ul[r(312)](o.data);this[r(396)]?!0===this.detectVideoMetadataChange(t,e)&&(this[r(307)][r(218)](this.TAG_NAME,r(355)),this[r(232)]=!0,this[r(417)]={vps:void 0,sps:t,pps:void 0,details:e}):(this[r(417)][r(455)]=t,this.video_metadata_[r(383)]={...this.video_metadata_[r(383)],...e})}else if(t.type===at[r(420)]){if(!this.video_init_segment_dispatched_||this[r(232)]){let e=ul[r(458)](o[r(280)]);this[r(417)].pps=t,this[r(417)][r(383)]={...this[r(417)].details,...e},this[r(417)].vps&&this.video_metadata_.sps&&this[r(417)][r(436)]&&(this[r(232)]&&this[r(395)](),this.dispatchVideoInitSegment())}}else(t[r(345)]===at[r(353)]||t.type===at[r(463)]||t[r(345)]===at[r(193)])&&(c=!0);this[r(396)]&&(h.push(t),l+=t[r(280)][r(456)])}let d=Math.floor(e/this[r(206)]),u=Math[r(464)](s/this[r(206)]);if(h[r(408)]){let t=this[r(274)];for(let t=0;t<h[r(408)];t++){let e=h[t];if(null==a)a=e[r(280)];else{let t=new Uint8Array(a[r(456)]+e[r(280)][r(456)]);t.set(a,0),t[r(342)](e.data,a[r(456)]),a=t}}let e={type:W.video,length:l,isIFrame:c,dts:u,pts:d,cts:d-u,payload:a,isHevc:!0};t[r(222)][r(299)](e),t[r(408)]=a.byteLength}}[ng(453)](t,e){const s=ng;if(e.codec_mimetype!==this.video_metadata_[s(383)][s(405)])return this[s(307)][s(218)](this.TAG_NAME,s(495)+(this[s(417)][s(383)][s(405)]+s(381)+e[s(405)])),!0;if(e[s(275)][s(242)]!==this[s(417)].details[s(275)][s(242)]||e[s(275)][s(448)]!==this[s(417)][s(383)][s(275)][s(448)]){let t=this[s(417)][s(383)][s(275)],i=e[s(275)];return this[s(307)][s(218)](this.TAG_NAME,s(449)+(t[s(242)]+"x")+t.height+s(381)+i.width+"x"+i.height),!0}return e.present_size[s(242)]!==this.video_metadata_[s(383)][s(195)][s(242)]&&(this.player[s(218)](this[s(434)],s(380)+(this[s(417)].details[s(195)][s(242)]+s(381)+e[s(195)][s(242)])),!0)}[ng(204)](){const t=ng;return this[t(228)]&&this[t(311)]?this.video_init_segment_dispatched_:this[t(228)]&&!this[t(311)]?this[t(396)]:!(this[t(228)]||!this.has_audio_)&&this[t(393)]}[ng(281)](){const t=ng;let e=this[t(417)].details,s={};s[t(345)]=t(256),s.id=this[t(274)].id,s[t(386)]=1e3,s[t(411)]=this[t(292)],s.codecWidth=e[t(275)][t(242)],s[t(397)]=e[t(275)].height,s[t(282)]=e.present_size[t(242)],s[t(313)]=e[t(195)][t(448)],s[t(398)]=e[t(452)],s.level=e.level_string,s[t(399)]=e[t(215)],s[t(316)]=e[t(466)],s.sarRatio=e[t(445)],s[t(227)]=e[t(488)];let i=s.frameRate.fps_den,r=s.frameRate[t(186)];s.refSampleDuration=i/r*1e3,s[t(294)]=e[t(405)];let n=!1;if(this[t(417)][t(248)]){n=!0;let e=this.video_metadata_[t(248)][t(280)][t(254)](4),i=this[t(417)][t(455)][t(280)][t(254)](4),r=this[t(417)].pps[t(280)][t(254)](4);s[t(269)]=yl({vps:e,sps:i,pps:r}),0==this[t(396)]&&this.player[t(218)](this[t(434)],t(240)+s.codec),s[t(269)]&&this[t(296)](s[t(269)],W[t(256)],0,!0,0)}else{let e=this[t(417)][t(455)].data.subarray(4),i=this[t(417)][t(436)][t(280)][t(254)](4);s[t(285)]=zh({sps:e,pps:i}),0==this[t(396)]&&this.player.debugLog(this[t(434)],t(347)+s[t(294)]),s[t(285)]&&this[t(296)](s[t(285)],W[t(256)],0,!0,0)}this[t(396)]=!0,this[t(232)]=!1;let o=this.media_info_;o[t(461)]=!0,o[t(242)]=s[t(413)],o.height=s.codecHeight,o[t(362)]=s.frameRate[t(362)],o[t(398)]=s[t(398)],o[t(327)]=s.level,o.refFrames=e.ref_frames,o[t(316)]=e[t(246)],o.sarNum=s[t(476)].width,o[t(190)]=s[t(476)][t(448)],o.videoCodec=s.codec,o.hasAudio&&o[t(192)]?o.mimeType='video/mp2t; codecs="'+o.videoCodec+","+o[t(192)]+'"':o[t(414)]='video/mp2t; codecs="'+o[t(418)]+'"',this[t(307)][t(256)][t(211)]({width:s[t(413)],height:s[t(397)],encTypeCode:n?et[t(433)]:et[t(293)]})}dispatchVideoMediaSegment(){const t=ng;this[t(204)]()&&this[t(274)][t(408)]&&this._preDoDecode()}[ng(394)](){const t=ng;this[t(204)]()&&this[t(422)][t(408)]&&this._preDoDecode()}[ng(400)](){const t=ng;this[t(204)]()&&(this[t(422)][t(408)]||this[t(274)][t(408)])&&this[t(267)]()}[ng(377)](t,e){const s=ng;if(this[s(228)]&&!this[s(396)])return;if(this.aac_last_incomplete_data_){let e=new Uint8Array(t[s(456)]+this[s(235)][s(456)]);e[s(342)](this[s(235)],0),e[s(342)](t,this[s(235)].byteLength),t=e}let i,r;if(null!=e&&(r=e/this.timescale_),this.audio_metadata_[s(294)]===s(472)){if(null==e&&null!=this[s(303)])i=1024/this[s(273)][s(187)]*1e3,r=this[s(303)]+i;else if(null==e)return void this[s(307)][s(366)](this[s(434)],"AAC: Unknown pts");if(this[s(235)]&&this[s(303)]){i=1024/this.audio_metadata_[s(187)]*1e3;let t=this[s(303)]+i;Math[s(357)](t-r)>1&&(this[s(307)][s(366)](this[s(434)],s(202)+(s(470)+t+s(229)+r+"ms")),r=t)}}let n,o=new He(t),a=null,h=r;for(;null!=(a=o[s(230)]());){i=1024/a[s(187)]*1e3;const t={codec:s(472),data:a};0==this[s(393)]?(this[s(273)]={codec:s(472),audio_object_type:a.audio_object_type,sampling_freq_index:a.sampling_freq_index,sampling_frequency:a[s(187)],channel_config:a[s(359)]},this[s(268)](t)):this[s(328)](t)&&(this[s(394)](),this[s(268)](t)),n=h;let e=Math.floor(h);const r=new Uint8Array(a.data[s(408)]+2);r.set([175,1],0),r[s(342)](a[s(280)],2);let o={payload:r,length:r.byteLength,pts:e,dts:e,type:W[s(478)]};this[s(422)].samples[s(299)](o),this[s(422)][s(408)]+=r[s(456)],h+=i}o[s(382)]()&&(this[s(235)]=o.getIncompleteData()),n&&(this[s(303)]=n)}[ng(388)](t,e){const s=ng;if(this[s(228)]&&!this[s(396)])return;if(this.aac_last_incomplete_data_){let e=new Uint8Array(t[s(456)]+this[s(235)].byteLength);e[s(342)](this[s(235)],0),e[s(342)](t,this[s(235)][s(456)]),t=e}let i,r;if(null!=e&&(r=e/this[s(206)]),this[s(273)][s(294)]===s(472)){if(null==e&&null!=this[s(303)])i=1024/this[s(273)].sampling_frequency*1e3,r=this[s(303)]+i;else if(null==e)return void this[s(307)][s(366)](this[s(434)],"AAC: Unknown pts");if(this[s(235)]&&this[s(303)]){i=1024/this.audio_metadata_.sampling_frequency*1e3;let t=this[s(303)]+i;Math[s(357)](t-r)>1&&(this[s(307)][s(366)](this[s(365)],s(202)+(s(470)+t+s(229)+r+"ms")),r=t)}}let n,o=new Ke(t),a=null,h=r;for(;null!=(a=o[s(230)](Vs(this[s(224)])?void 0:this[s(224)]));){this.loas_previous_frame=a,i=1024/a[s(187)]*1e3;const t={codec:s(472),data:a};0==this[s(393)]?(this[s(273)]={codec:"aac",audio_object_type:a.audio_object_type,sampling_freq_index:a[s(271)],sampling_frequency:a[s(187)],channel_config:a[s(359)]},this.dispatchAudioInitSegment(t)):this[s(328)](t)&&(this[s(394)](),this[s(268)](t)),n=h;let e=Math.floor(h);const r=new Uint8Array(a[s(280)][s(408)]+2);r[s(342)]([175,1],0),r.set(a.data,2);let o={payload:r,length:r.byteLength,pts:e,dts:e,type:W[s(478)]};this[s(422)][s(222)][s(299)](o),this[s(422)][s(408)]+=r[s(456)],h+=i}o[s(382)]()&&(this[s(235)]=o[s(432)]()),n&&(this[s(303)]=n)}[ng(323)](t,e){}[ng(197)](t,e){}[ng(496)](t,e){}parseMP3Payload(t,e){const s=ng;if(this.has_video_&&!this[s(396)])return;let i=[44100,48e3,32e3,0],r=[22050,24e3,16e3,0],n=[11025,12e3,8e3,0],o=t[1]>>>3&3,a=(6&t[1])>>1,h=(t[2],(12&t[2])>>>2),l=3!==(t[3]>>>6&3)?2:1,c=0,d=34;switch(s(401),o){case 0:c=n[h];break;case 2:c=r[h];break;case 3:c=i[h]}switch(a){case 1:d=34,s(408);break;case 2:d=33;break;case 3:d=32,s(408)}const u={};u[s(457)]=d,u[s(471)]=c,u.channel_count=l,u[s(280)]=t;const p={codec:s(401),data:u};0==this[s(393)]?(this[s(273)]={codec:"mp3",object_type:d,sample_rate:c,channel_count:l},this[s(268)](p)):this[s(328)](p)&&(this[s(394)](),this[s(268)](p));const f=new Uint8Array(t[s(408)]+1);f.set([32],0),f[s(342)](t,1);let m={payload:f,length:f[s(456)],pts:e/this.timescale_,dts:e/this.timescale_,type:W[s(478)]};this[s(422)][s(222)][s(299)](m),this[s(422)][s(408)]+=f[s(456)]}[ng(334)](t,e,s){const i=ng;if(this[i(228)]&&!this[i(396)])return;const r={};r[i(471)]=8e3,r[i(493)]=1;const n={codec:s?i(205):"g711u"};0==this[i(393)]?(this[i(273)]={codec:n[i(294)],sample_rate:r.sample_rate,channel_count:r[i(493)]},this[i(268)](n)):this[i(328)](n)&&(this.dispatchAudioMediaSegment(),this[i(268)](n));const o=new Uint8Array(t[i(408)]+1),a=s?[114]:[130];o[i(342)](a,0),o.set(t,1);let h={payload:o,length:o[i(456)],pts:Math[i(464)](e/this[i(206)]),dts:Math.floor(e/this[i(206)]),type:W.audio};this[i(422)][i(222)][i(299)](h),this[i(422)].length+=o[i(456)]}[ng(328)](t){const e=ng;if(t[e(294)]!==this[e(273)].codec)return this[e(307)][e(218)](this[e(434)],"Audio: Audio Codecs changed from "+(this[e(273)][e(294)]+e(381)+t[e(294)])),!0;if(t[e(294)]===e(472)&&this[e(273)][e(294)]===e(472)){const s=t[e(280)];if(s[e(302)]!==this.audio_metadata_[e(302)])return this[e(307)][e(218)](this.TAG_NAME,e(404)+(this[e(273)][e(302)]+e(381)+s[e(302)])),!0;if(s[e(271)]!==this[e(273)][e(271)])return this[e(307)][e(218)](this.TAG_NAME,e(484)+(this[e(273)].sampling_freq_index+" to ")+s[e(271)]),!0;if(s[e(359)]!==this[e(273)].channel_config)return this[e(307)].debugLog(this[e(434)],e(421)+(this[e(273)].channel_config+" to ")+s[e(359)]),!0}else if("ac-3"===t[e(294)]&&this.audio_metadata_[e(294)]===e(210)){const s=t[e(280)];if(s[e(187)]!==this[e(273)].sampling_frequency)return this[e(307)][e(218)](this[e(434)],e(454)+(this[e(273)][e(187)]+e(381)+s.sampling_frequency)),!0;if(s[e(475)]!==this[e(273)][e(475)])return this[e(307)].debugLog(this[e(434)],e(379)+(this.audio_metadata_[e(475)]+" to ")+s[e(475)]),!0;if(s[e(189)]!==this.audio_metadata_[e(189)])return this.player[e(218)](this[e(434)],e(406)+(this[e(273)][e(189)]+e(381)+s[e(189)])),!0;if(s.channel_mode!==this[e(273)][e(317)])return this[e(307)].debugLog(this.TAG_NAME,e(263)+(this[e(273)].channel_mode+e(381)+s[e(317)])),!0;if(s[e(183)]!==this[e(273)][e(183)])return this.player[e(218)](this[e(434)],e(410)+(this[e(273)][e(183)]+e(381)+s[e(183)])),!0}else if("opus"===t[e(294)]&&"opus"===this.audio_metadata_[e(294)]){const s=t.meta;if(s[e(471)]!==this[e(273)][e(471)])return this[e(307)][e(218)](this[e(434)],e(352)+(this[e(273)].sample_rate+e(381)+s[e(471)])),!0;if(s.channel_count!==this[e(273)].channel_count)return this[e(307)].debugLog(this[e(434)],e(199)+(this[e(273)][e(493)]+e(381)+s[e(493)])),!0}else if(t[e(294)]===e(401)&&this[e(273)].codec===e(401)){const s=t[e(280)];if(s[e(457)]!==this[e(273)][e(457)])return this.player.debugLog(this.TAG_NAME,e(251)+(this[e(273)][e(457)]+e(381)+s[e(457)])),!0;if(s[e(471)]!==this[e(273)][e(471)])return this[e(307)][e(218)](this[e(434)],e(276)+(this[e(273)].sample_rate+e(381)+s.sample_rate)),!0;if(s[e(493)]!==this[e(273)][e(493)])return this[e(307)][e(218)](this[e(434)],e(368)+(this[e(273)].channel_count+e(381)+s[e(493)])),!0}return!1}[ng(268)](t){const e=ng;let s={};s.type=e(478),s.id=this.audio_track_.id,s[e(386)]=1e3,s.duration=this[e(292)];let i="";if(this[e(273)][e(294)]===e(472)){let r=t.codec===e(472)?t[e(280)]:null,n=new rg(r);s[e(460)]=n[e(322)],s.audioSampleRateIndex=n[e(440)],s[e(481)]=n[e(493)],s.codec=n[e(405)],s[e(439)]=n.original_codec_mimetype,s.config=n.config,s[e(477)]=1024/s[e(460)]*s.timescale,i=it[e(486)];const o=De({profile:this[e(307)][e(415)]()?n.object_type:n[e(504)],sampleRate:s[e(209)],channel:s.channelCount});this[e(307)][e(218)](this[e(434)],e(212)+n[e(457)]+e(425)+s.audioSampleRateIndex+e(225)+s[e(481)]),this._doDecodeByTs(o,W[e(478)],0,!1,0)}else this[e(273)][e(294)]===e(210)?this[e(307)][e(366)](this[e(434)],e(500)):this[e(273)].codec===e(181)?this.player[e(366)](this[e(434)],e(348)):"opus"===this[e(273)][e(294)]?this[e(307)].debugWarn(this.TAG_NAME,e(300)):this[e(273)][e(294)]===e(401)?(s[e(460)]=this[e(273)][e(471)],s[e(481)]=this[e(273)][e(493)],s[e(294)]=e(401),s[e(439)]="mp3",s[e(330)]=void 0,i=it[e(441)]):"g711a"===this.audio_metadata_[e(294)]?(s[e(460)]=this[e(273)][e(471)],s[e(481)]=this[e(273)][e(493)],s[e(294)]=e(205),s.originalCodec=e(205),s.config=void 0,i=it.G711A):this[e(273)][e(294)]===e(392)&&(s.audioSampleRate=this.audio_metadata_[e(471)],s[e(481)]=this[e(273)].channel_count,s[e(294)]="g711u",s.originalCodec=e(392),s[e(330)]=void 0,i=it[e(265)]);0==this[e(393)]&&this[e(307)].debugLog(this[e(434)],e(247)+s.codec),this[e(393)]=!0,this[e(232)]=!1,i&&this[e(307)][e(262)][e(250)]&&this.player.audio[e(219)]({encTypeCode:i,channels:s[e(481)],sampleRate:s[e(460)]})}dispatchPESPrivateDataDescriptor(t,e,s){const i=ng;let r={};r[i(391)]=t,r[i(462)]=e,r[i(333)]=s}[ng(279)](t,e,s,i,r){const n=ng;this.player.debugLog(this[n(434)],"parsePESPrivateDataPayload()");let o=new tg;if(o[n(391)]=i,o[n(423)]=r,o[n(375)]=t[n(456)],o[n(280)]=t,null!=e){let t=Math[n(464)](e/this[n(206)]);o[n(384)]=t}else o[n(259)]=this[n(329)]();if(null!=s){let t=Math[n(464)](s/this[n(206)]);o[n(403)]=t}}[ng(308)](t,e,s,i,r){const n=ng;this[n(307)][n(218)](this[n(434)],n(283)+i+", pts="+e+", dts="+s+n(223)+r)}[ng(354)](t,e,s,i,r){const n=ng;this[n(307)][n(218)](this[n(434)],n(286)+i+n(221)+e+", dts="+s+n(223)+r)}parseAsynchronousKLVMetadataPayload(t,e,s){const i=ng;this[i(307)][i(218)](this[i(434)],i(191)+e+i(223)+s)}parseSMPTE2038MetadataPayload(t,e,s,i,r){const n=ng;this[n(307)][n(218)](this[n(434)],n(479)+i+n(221)+e+n(244)+s+", stream_id="+r)}getNearestTimestampMilliseconds(){const t=ng;if(null!=this[t(303)])return Math.floor(this.audio_last_sample_pts_);if(null!=this[t(444)]){return Math[t(464)](this[t(444)]/300/this[t(206)])}}[ng(267)](){const t=ng,e=this[t(274)],s=this[t(422)];let i=e.samples;this[t(358)](e),this[t(358)](s),s[t(222)].length>0&&(i=e.samples[t(257)](s[t(222)]),i=i.sort((e,s)=>{const i=t;return e[i(403)]-s[i(403)]})),i[t(288)](e=>{const s=t,i=new Uint8Array(e[s(277)]);delete e[s(277)],e[s(345)]===W[s(256)]?this._doDecodeVideo({...e,payload:i}):e[s(345)]===W.audio&&this[s(424)]({...e,payload:i})}),e.samples=[],e[t(408)]=0,s[t(222)]=[],s.length=0}[ng(409)](t){const e=ng,s=new Uint8Array(t[e(277)]);let i=null;i=t[e(309)]?Al(s,t.isIFrame):Hh(s,t[e(435)]),this[e(307)][e(459)]({dts:t[e(403)],vbps:8*i[e(456)]}),t.isIFrame&&this[e(371)](t[e(403)]);let r=this[e(194)](i,t[e(435)]);this[e(296)](r,W[e(256)],t[e(403)],t[e(435)],t[e(336)])}[ng(424)](t){const e=ng,s=new Uint8Array(t[e(277)]);this.player[e(459)]({abps:s[e(456)]});let i=this.cryptoPayloadAudio(s);this._doDecodeByTs(i,W[e(478)],t.dts,!1,0)}getInputByteLength(){const t=ng;return this[t(255)]&&this[t(255)].byteLength||0}_getPcrBase(t){const e=ng;let s=33554432*t[6]+131072*t[7]+512*t[8]+2*t[9]+(128&t[10])/128+this[e(385)];return s+4294967296<this.last_pcr_base_&&(s+=8589934592,this[e(385)]+=8589934592),this.last_pcr_base_=s,s}[ng(467)](t,e){const s=ng;let i=536870912*(14&t[e])+4194304*(255&t[e+1])+16384*(254&t[e+2])+128*(255&t[e+3])+(254&t[e+4])/2+this[s(385)];return i+4294967296<this[s(438)]&&(i+=8589934592),i}[ng(446)](){return this[ng(390)]}}function lg(t,e){const s=cg();return(lg=function(t,e){return s[t-=429]})(t,e)}function cg(){const t=["15fysKdJ","7925805GqbGKu","49BwcEUP","1727ypEdXE","57738168mgQJlT","max","1240717ZjBTfS","2ZTQFTQ","50592bmbiwt","786604uuQEec","401304snZCcn","length","min","20HGqpRs","49010RYVOOF"];return(cg=function(){return t})()}function dg(t,e){const s=lg;if(t[s(439)]!==e[s(439)])return!1;for(let i=0;i<t[s(439)];i++)if(t[i]!==e[i])return!1;return!0}!function(t){const e=lg,s=t();for(;;)try{if(714172===parseInt(e(434))/1*(-parseInt(e(435))/2)+-parseInt(e(443))/3*(parseInt(e(437))/4)+-parseInt(e(441))/5*(parseInt(e(438))/6)+parseInt(e(430))/7*(parseInt(e(436))/8)+-parseInt(e(429))/9+-parseInt(e(442))/10*(parseInt(e(431))/11)+parseInt(e(432))/12)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(cg);const ug=fg;function pg(){const t=["subarray","skip","value","psDemux","audioSpecificConfig","h264","psDemuxInput","isIFrame","PSDemux","stringify","G711U","_times","startTime","profile: ","demuxVideo"," and merge","sps","137718HMrgiX","pps changed","679AYdFFy","_parseAudioData","write","dispatch","getUint8","isHevc","cleanup","init and is V2:","decProgramStreamMap","_cleanup","video seq header","now","_isSendVideoSeqHeader","demuxAudio","tmp8","aac","type","280xajYgT","push","TAG_NAME","cts","isDestroyedOrClosed","319128BKXPXo","isAvc","demuxPsUseV2","pts","player","_doDecodeVideo","demuxVideo() and ","uuid","h265","sps changed","22254ecznRS","buffer","videoBufferSize","sps/pps/vps","vps","input","map","Short buffer","forEach","parsePESPacket"," and starTime is null and has not ","549055GtJqoL","g711a","_parseVideoData","payload","currentPTS",", sampleRate:","channelCount","sps/pps",",sampleRateIndex: ","Invalid MAP size","next","assign","debugWarn","2TsOsVk","Invalid audio size","StartCodePS","AAC","set","video","demux","close","videoTrack","_isSendAACSeqHeader","dispatchPsData","unknow audio stream type: ","emitVideoSei","dts","unknow video stream type: ","G711A","_doDecodeByPs","slice","isG711A","StartCodeAudio","getUint16","_init","aac seq header",", return false","updateStats","length","getInputByteLength","isEmitSEI","_doDecodeAudio","debugLog","StartCodeVideo","Invalid skip size","mp3","destroy","vps changed","sampleRate","9amUZtH","reduce","sampleRateIndex","1122264sdTtWu","MEPGProgramEndCode","channel","size","debugError","demuxStart","byteLength","calcIframeIntervalTimestamp","985736vIkxjM","204635fqBwKQ","isG711U","isAAC","_opt","pps","demuxVideo() and currentPTS equal pts ","hasAudio","audioTrack","psStreamBuffer","audio","profile",", channel: ","dispatch() this.input is null","isMP3","audioTrack: "];return(pg=function(){return t})()}function fg(t,e){const s=pg();return(fg=function(t,e){return s[t-=320]})(t,e)}!function(t){const e=fg,s=t();for(;;)try{if(244294===parseInt(e(389))/1*(parseInt(e(341))/2)+-parseInt(e(377))/3*(-parseInt(e(445))/4)+-parseInt(e(328))/5+parseInt(e(455))/6*(parseInt(e(423))/7)+-parseInt(e(388))/8+-parseInt(e(421))/9*(parseInt(e(440))/10)+parseInt(e(380))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(pg);class mg extends If{constructor(t){const e=fg;super(t),this[e(442)]=e(412),this[e(362)](),t[e(392)][e(447)]?(this[e(410)]=this.demux(),this.psDemux=this[e(351)](this[e(410)])):this[e(322)]=new xf(this[e(347)]()),t.debugLog(this[e(442)],e(430),t[e(392)][e(447)])}[ug(374)](){const t=ug;super[t(374)](),this[t(348)](),this[t(362)](),this[t(449)][t(370)](this[t(442)],t(374))}[ug(362)](){const t=ug;this[t(396)]={type:null,channelCount:"",channels:0,sampleRate:"",sampleRateIndex:-1},this[t(349)]={type:null,sps:null,pps:null,vps:null},this[t(350)]=!1,this[t(435)]=!1,this[t(448)]=0,this[t(354)]=0,this.tmp8=new Uint8Array(4),this.dv=new DataView(this[t(437)][t(456)]),this.videoBuffer=[],this[t(457)]=0,this[t(332)]=0,this[t(416)]=0,this[t(407)]=null,this.psDemuxInput=null,this[t(397)]=null}[ug(351)](t){const e=ug;let s=t[e(338)](),i=Ki(s[e(406)]),r=i?s.value.byteLength:s[e(406)];return n=>{const o=e;let a=new Uint8Array(n);if(this.psStreamBuffer){let t=new Uint8Array(this[o(397)][o(366)]+a[o(366)]);t.set(this.psStreamBuffer),t[o(345)](a,this[o(397)].length),a=t,this[o(397)]=null}for(;a[o(366)]>=r;){let e=a[o(358)](r),n=a.slice(0,r);i&&s[o(406)][o(345)](n),s=t[o(338)](n),i=Ki(s[o(406)]),r=i?s[o(406)][o(386)]:s[o(406)],a=e}a[o(366)]>0&&(this[o(397)]=a)}}[ug(426)](t){const e=ug;!this[e(449)][e(415)][e(385)]&&(this[e(449)][e(415)][e(385)]=os()),this[e(449)]._opt[e(447)]?this.psDemux(t):this[e(322)]?this[e(322)][e(425)](t):this[e(449)][e(340)](this[e(442)],e(401))}*[ug(347)](){const t=ug,e=this[t(437)],s=this.dv;try{let i=!0;for(;!this._isDestroyed&&!this[t(449)][t(444)]();){if(e[t(366)]<4){this[t(449)][t(340)](this.TAG_NAME,"Insufficient data for header"),yield e;continue}yield e;const r=s.getUint32(0);if(i){if(r!==$t[t(343)]){yield e.length;continue}i=!1}switch(r){case $t.StartCodePS:yield 9,yield e[t(404)](0,1);const i=7&s[t(427)](0);yield i;break;case $t.StartCodeMAP:yield e.subarray(0,2);const n=s[t(361)](0);if(n>te[t(323)]||n<0){this[t(449)].debugWarn(this[t(442)],t(337)),yield e;continue}const o=yield n;this[t(431)](o);break;case $t[t(371)]:yield e[t(404)](0,2);const a=s[t(361)](0);if(a>te[t(346)]||a<0){this[t(449)][t(340)](this[t(442)],"Invalid video size"),yield e;continue}this.demuxVideo(yield a);break;case $t[t(360)]:yield e.subarray(0,2);const h=s.getUint16(0);if(h>te[t(398)]||h<0){this[t(449)][t(340)](this[t(442)],t(342)),yield e;continue}this[t(436)](yield h);break;case $t[t(381)]:this[t(449)][t(370)](this[t(442)],t(381),r),this[t(432)]();break;default:yield e[t(404)](0,2);const l=s[t(361)](0);if(l>te[t(405)]||l<0){this[t(449)][t(340)](this[t(442)],t(372)),yield e;continue}yield l}}}catch(e){throw this[t(449)][t(384)](this[t(442)],"Demux error:",e),this[t(432)](),e}}[ug(326)](t){const e=ug;if(t.length<4)throw new Error(e(324));const s=t[1],i=s>>7==1,r=(64&s)>>6==1,n=t[2];if(t[e(366)]<n+3)throw new Error(e(324));const o=t[e(404)](3,3+n);return i&&o[e(366)]>4&&(this[e(448)]=(14&o[0])<<29|o[1]<<22|(254&o[2])<<14|o[3]<<7|o[4]>>1,r&&o[e(366)]>9?this.dts=(14&o[5])<<29|o[6]<<22|(254&o[7])<<14|o[8]<<7|o[9]>>1:this[e(354)]=this.pts),t[e(404)](3+n)}[ug(431)](t){const e=ug,s=new DataView(t[e(456)],t.byteOffset,t[e(386)]),i=t[e(366)];let r=2;const n=s[e(361)](r);r+=2,r+=n;let o=s[e(361)](r);for(r+=2;o>0&&!(i<=r+1);){const n=t[r];r++;const a=t[r];if(r++,a>=224&&a<=239?this[e(349)].type||(n===Zt[e(409)]?this.videoTrack[e(439)]=et[e(409)]:n===Zt[e(453)]?this.videoTrack[e(439)]=et[e(453)]:this[e(449)][e(340)](this[e(442)],e(355)+n),this[e(449)][e(370)](this[e(442)],"video type: "+this[e(349)].type)):a>=192&&a<=223&&(this.audioTrack.type||(n===Zt[e(438)]?this[e(396)][e(439)]=it.AAC:n===Zt[e(329)]?this[e(396)][e(439)]=it[e(356)]:n===Zt.g711u?this[e(396)].type=it[e(414)]:n===Zt[e(373)]?this[e(396)][e(439)]=Zt[e(373)]:this[e(449)][e(340)](this[e(442)],e(352)+n),(this[e(359)]()||this[e(390)]())&&(this[e(396)][e(334)]=1,this[e(396)].sampleRate=8e3),this[e(449)][e(370)](this[e(442)],e(403)+JSON[e(413)](this[e(396)])))),i<=r+1)break;const h=s[e(361)](r);r+=2,r+=h,o-=4+h}}[ug(418)](t){const e=ug,s=this[e(326)](t),i=this.videoBuffer;if(!this[e(416)]){if(!function(t,e){const s=Xe,i=Qe(t);let r=!1,n=!1,o=!1;for(let t=0;t<i[s(261)];t++){const a=i[t],h=31&a[0];if(e){const t=a[0]>>1&63;t===at[s(257)]?o=!0:t===at[s(270)]?r=!0:t===at[s(258)]&&(n=!0)}else h===ot.sps?r=!0:h===ot[s(258)]&&(n=!0)}return e?r&&n&&o:r&&n}(s,this.isHevc())){let t=e(451)+(this.isHevc()?e(428):e(446))+e(327)+(this.isHevc()?e(320):e(335))+e(364);return this.player[e(370)](this[e(442)],t),!1}this[e(416)]=Date[e(434)](),this[e(332)]=this.pts}if(this[e(332)]===this[e(448)])return this[e(457)]+=s[e(366)],this[e(449)][e(370)](this[e(442)],e(394)+this.pts/90+e(419)),i[e(441)](s[e(358)]()),!1;if(i[e(366)]&&this[e(332)]!==this[e(448)]){let t=0,s=!0;this[e(428)]()?(126&i[0][4])>>1!=32&&(s=!1):1==(15&i[0][4])&&(s=!1);const r=1==i.length?i[0]:i[e(378)]((s,i)=>{const r=e;return s[r(404)](t)[r(345)](i),t+=i[r(366)],s},new Uint8Array(this[e(457)])),n=this[e(448)]/90,o=this[e(354)]/90;this[e(449)][e(365)]({dts:o,vbps:8*r[e(386)]}),this[e(330)](r,{isIFrame:s,dts:o,pts:n}),i[e(366)]=0}this.videoBufferSize+=s[e(366)],i[e(441)](s.slice()),this[e(332)]=this[e(448)]}demuxAudio(t){const e=ug;if(!this[e(449)][e(392)][e(395)])return;const s=this.parsePESPacket(t);this[e(449)].updateStats({abps:8*s.byteLength}),this[e(424)](s,this[e(354)]/90)}[ug(330)](t,e){const s=ug,i=Qe(t),r=this[s(428)]();if(0===i[s(366)])return;let n=null,o=e[s(411)]||!1;const a=e.dts,h=e[s(448)],l=h-a;i[s(325)](t=>{const e=s,i=r?t[0]>>>1&63:31&t[0];switch(i){case 5:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:if(!r&&5!==i||r&&5===i)break;o=!0;break;case 6:case 39:case 40:if(!r&&6!==i||r&&6===i)break;if(this[e(449)][e(392)][e(368)]){const s=$e(Je(t),r);this[e(449)][e(353)]({ts:a,type:s.type,data:s[e(331)],originData:t,uuid:s[e(452)],size:s[e(383)]})}break;case 32:if(!r)break;this[e(349)].vps?!dg(this.videoTrack[e(321)],t)&&this[e(449)][e(340)](this[e(442)],e(375)):this[e(349)][e(321)]=t;break;case 7:case 33:if(!r&&7!==i||r&&7===i)break;this[e(349)][e(420)]?!dg(this[e(349)][e(420)],t)&&this[e(449)][e(340)](this[e(442)],e(454)):this.videoTrack.sps=t;break;case 8:case 34:if(!r&&8!==i||r&&8===i)break;this.videoTrack.pps?!dg(this.videoTrack[e(393)],t)&&this[e(449)][e(340)](this[e(442)],e(422)):this[e(349)][e(393)]=t}if(r&&vl(i)||!r&&Qh(i)){const s=ts(t);if(n){const t=new Uint8Array(n[e(386)]+s[e(386)]);t[e(345)](n,0),t[e(345)](s,n.byteLength),n=t}else n=s}});let c=null;r?this.videoTrack[s(420)]&&this.videoTrack[s(393)]&&this.videoTrack.vps&&(c=yl({vps:this[s(349)][s(321)],sps:this.videoTrack[s(420)],pps:this[s(349)][s(393)]})):this[s(349)][s(420)]&&this.videoTrack.pps&&(c=zh({sps:this[s(349)][s(420)],pps:this[s(349)].pps})),c&&!this[s(435)]&&(this.player.debugLog(this[s(442)],s(433)),this[s(357)](c,W[s(346)],0,!0,0),this[s(435)]=!0),n&&this[s(450)](n,{pts:h,dts:a,cts:l,isIFrame:o})}[ug(424)](t,e){const s=ug;if(this.audioTrack[s(439)])if(this.isAAC()){if(!this[s(350)]){this[s(350)]=!0;const e=Ce(t[s(404)](0,7));this.audioTrack=Object[s(339)](this.audioTrack,{description:e[s(408)],sampleRate:e[s(376)],channels:e[s(382)]});const i=De({profile:e[s(399)],sampleRate:e[s(379)],channel:e[s(382)]});this.player[s(370)](this[s(442)],s(363),s(417)+e[s(399)]+s(333)+e[s(376)]+s(336)+e[s(379)]+s(400)+e[s(382)]),this[s(357)](i,W[s(398)],0,!1,0)}if(this._isSendAACSeqHeader){let i=Le(t.subarray(7));this[s(369)](i,e)}}else{let i;this[s(359)]()?i=ym(t):this[s(390)]()?i=Am(t):this[s(402)]()&&(i=Dm(t)),this[s(369)](i,e)}}[ug(450)](t,e){const s=ug,i=new Uint8Array(t);let r=null;r=this[s(428)]()?Al(i,e[s(411)]):Hh(i,e[s(411)]),e[s(411)]&&this[s(387)](e.dts),this._doDecodeByPs(r,W[s(346)],e[s(354)],e[s(411)],e[s(443)])}[ug(369)](t,e){const s=ug,i=this.cryptoPayloadAudio(t);this[s(357)](i,W.audio,e,!1,0)}isHevc(){const t=ug;return this[t(349)][t(439)]===et[t(453)]}[ug(391)](){const t=ug;return this.audioTrack[t(439)]===it[t(344)]}[ug(359)](){const t=ug;return this.audioTrack[t(439)]===it.G711A}[ug(390)](){const t=ug;return this[t(349)][t(439)]===it[t(414)]}[ug(402)](){const t=ug;return this.audioTrack[t(439)]===it.MP3}[ug(432)](){const t=ug;this[t(449)].debugLog(this[t(442)],t(429))}close(){const t=ug;this[t(322)]&&(this.input[t(348)](),this[t(322)]=null),this.psDemux&&(this[t(407)]=null,this.psDemuxInput=null,this[t(397)]=null)}[ug(367)](){const t=ug;let e=0;return this[t(322)]&&this[t(322)].buffer&&(e=this.input.buffer[t(386)]),e}}const gg=Ag;function yg(){const t=["_isSendAACSeqHeader","isHevc","_a_last_timestamp","destroy","isSupportedAudio","sps","_v_pts","profile","codecId","_doDecodeByPs","isG711A","_isSendVideoSeqHeader","sampleRateIndex","162weGEdN","23250nvloyb","isG711U","dispatch","unknown"," video: ","3264ejBiSX","video seq header","12NFRTsN","1202255xGIpmB","updateStats"," fps:","mpeg4","payload","_remainingPacketData","_doDecodeVideo","forEach","video","mjpeg","_v_last_time","pcm_s8","sampleRate","_findSignature","subarray","aac seq header","isMP3","_opt","slice","length","pcm_s16le","size","height","cryptoPayloadAudio","isEmitSEI","_doDecodeByDHav","demuxStart"," frame, ts: ","_a_last_time","player","profile: ","adpcm_ms","assign","width","fps","_doDecodeAudio","h264","_mapSampleRate","cts","_a_last_frame_number","isIFrame","mp2","uuid","ch frame, ts: ","_getPTS","audioTrack","isSupportedVideo","pps","Hz ","debugLog","27269aSyeYL","546bjJKYB","vps","channels","calcIframeIntervalTimestamp","floor","videoTrack","3544FNfmGF","byteLength","emitVideoSei",", channel: ","_parseVideoData","_v_last_timestamp","80aYSotD","AAC","dts","_rl16","_v_last_frame_number","UTC",", frame#: ","parsePacket","_a_pts","isAAC","_parseAudioData","73031FubCfe","_parseExt","679842EzneIB","DHavDemux","_times","TAG_NAME","type",", size: ","channel","audio","462412JCYKtS","G711U","_mapAudioCodecId","_rl32",", sampleRate:","init","MP3","isAvc"];return(yg=function(){return t})()}function Ag(t,e){const s=yg();return(Ag=function(t,e){return s[t-=305]})(t,e)}!function(t){const e=Ag,s=t();for(;;)try{if(440020===parseInt(e(387))/1+-parseInt(e(305))/2*(-parseInt(e(418))/3)+parseInt(e(397))/4+parseInt(e(313))/5*(-parseInt(e(312))/6)+-parseInt(e(364))/7*(-parseInt(e(370))/8)+-parseInt(e(389))/9*(parseInt(e(376))/10)+-parseInt(e(363))/11*(-parseInt(e(310))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(yg);class bg extends If{constructor(t){const e=Ag;super(t),this.TAG_NAME=e(390),this[e(318)]=null,this._isSendVideoSeqHeader=!1,this[e(405)]=!1,this[e(369)]={width:0,height:0,sps:null,pps:null,vps:null,type:null,fps:0},this[e(358)]={channels:0,type:null,sampleRate:0,sampleRateIndex:-1,duration:0},this[e(323)]=null,this._v_last_timestamp=null,this._v_last_frame_number=0,this._v_pts=0,this[e(341)]=null,this._a_last_timestamp=null,this[e(352)]=0,this[e(384)]=0,t.debugLog(this[e(392)],e(402))}[gg(408)](){const t=gg;super.destroy(),this[t(318)]=null,this[t(416)]=!1,this[t(405)]=!1,this.videoTrack=null,this.audioTrack=null,this[t(342)].debugLog(this[t(392)],t(408))}[gg(307)](t){const e=gg;!this.player._times[e(339)]&&(this[e(342)][e(391)].demuxStart=os());let s=new Uint8Array(t);this[e(318)]&&(s=Qi(this._remainingPacketData,s),this[e(318)]=null),this[e(383)](s)}[gg(383)](t){const e=gg;let s=t,i=0;if(s&&0!==s.length)for(;;){const t=this[e(326)](s,i);if(!t.found){const t=Math.min(3,s[e(332)]-i);t>0&&(this._remainingPacketData=s[e(331)](s[e(332)]-t));break}let r=t.index;const n=r,o=24;if(s[e(332)]-r<o){this[e(318)]=s[e(331)](n);break}r+=4;const a=s[r++];s[r++],s[r++],s[r++];const h=this[e(400)](s,r);r+=4;const l=this[e(400)](s,r);r+=4;const c=this[e(400)](s,r);if(r+=4,l<24){i=n+1;continue}if(241===a){const t=l-20;if(s[e(332)]-r<t){this[e(318)]=s.slice(n);break}r+=t,i=r;continue}if(s[e(332)]-r<4){this[e(318)]=s[e(331)](n);break}const d=this[e(379)](s,r);r+=2;const u=s[r++];if(r+=1,s.length-r<u){this[e(318)]=s.slice(n);break}const p=r+u;this._parseExt(s,r,u),r=p;const f=l-8-(r-n);if(f<0){i=n+1;continue}if(s[e(332)]-r<f){this[e(318)]=s[e(331)](n);break}const m=s[e(331)](r,r+f);if(r+=f,s[e(332)]-r>=4&&100===s[r]&&104===s[r+1]&&97===s[r+2]&&118===s[r+3]&&(r+=4),240===a){if(this[e(409)]()){const t=this[e(357)](c,d,h,W[e(396)]);this.player[e(362)](this[e(392)]," audio: "+this[e(358)][e(393)]+" "+this[e(358)][e(325)]+e(361)+this[e(358)].channels+e(356)+t+e(382)+h+", size: "+m[e(332)]),this[e(342)][e(314)]({abps:8*m[e(371)]}),this._parseAudioData(m,t)}}else if(this[e(359)]()){const t=this[e(357)](c,d,h,W[e(321)]),s=252!==a;this.player.debugLog(this[e(392)],e(309)+this[e(369)][e(393)]+" "+this[e(369)][e(346)]+"x"+this[e(369)][e(335)]+e(315)+this[e(369)][e(347)]+" "+(s?"I":"P")+e(340)+t+e(382)+h+e(394)+m[e(332)]),this[e(342)][e(314)]({dts:t,vbps:8*m[e(371)]}),this[e(374)](m,{isIFrame:s,dts:t,pts:t})}if(i=r,i>=s.length)break}}_findSignature(t,e){const s=gg;let i=e>>>0;for(;i+4<=t[s(332)];){if(68===t[i]&&72===t[i+1]&&65===t[i+2]&&86===t[i+3])return{found:!0,index:i};i++}return{found:!1,index:-1}}[gg(379)](t,e){return(t[e]|t[e+1]<<8)>>>0}[gg(400)](t,e){return(t[e]|t[e+1]<<8|t[e+2]<<16|t[e+3]<<24)>>>0}[gg(388)](t,e,s){const i=gg;let r=e;const n=e+s;for(;r<n;){const e=t[r++];let s;if(128===e)r+=1,r+2<=n?0===this[i(369)][i(346)]&&0===this[i(369)][i(335)]&&(this[i(369)][i(346)]=8*t[r++],this[i(369)][i(335)]=8*t[r++]):r=n;else if(129===e)if(r+=1,r+2<=n){if(!this.videoTrack[i(393)]){const e=t[r++];this[i(369)][i(413)]=e,this.videoTrack[i(347)]=t[r++],this[i(369)][i(393)]=this._mapVideoCodecId(e)}}else r=n;else if(130===e)r+=3,r+4<=n?(0===this[i(369)][i(346)]&&(this.videoTrack[i(346)]=this[i(379)](t,r)),r+=2,0===this[i(369)].height&&(this.videoTrack.height=this[i(379)](t,r)),r+=2):r=n;else if(131===e)if(r+3<=n){this[i(358)][i(366)]=t[r++];const e=t[r++];this[i(358)].codecId=e,s=t[r++];const n=this[i(350)](s);this.audioTrack.sampleRate=n,!this[i(358)][i(393)]&&(this[i(358)][i(393)]=this[i(399)](e))}else r=n;else if(140===e)if(r+=1,r+5<=n){0===this[i(358)][i(366)]&&(this.audioTrack[i(366)]=t[r++]);const e=t[r++];this[i(358)].codecId=e,!this[i(358)][i(393)]&&(this[i(358)][i(393)]=this[i(399)](e)),s=t[r++];const n=this._mapSampleRate(s);!this[i(358)][i(325)]&&(this[i(358)][i(325)]=n),r+=3}else r=n;else 136===e||145===e||146===e||147===e||149===e||154===e||155===e||179===e?r+=7:132===e||133===e||139===e||148===e||150===e||160===e||178===e||180===e?r+=3:r=n}}[gg(350)](t){const e=[8e3,4e3,8e3,11025,16e3,2e4,22050,32e3,44100,48e3,96e3,192e3,64e3];return t>=0&&t<e[gg(332)]?e[t]:8e3}[gg(399)](t){const e=gg;switch(t){case 7:return e(324);case 12:case 16:return e(333);case 10:return it.G711U;case 22:return it[e(398)];case 14:return it.G711A;case 26:return it[e(377)];case 31:return e(354);case 33:return it.MP3;case 13:return e(344);default:return"unknown"}}_mapVideoCodecId(t){const e=gg;return 12===t?et.h265:2===t||4===t||8===t?et[e(349)]:e(1===t?316:3===t?322:308)}[gg(357)](t,e,s,i=W[gg(321)]){const r=gg,n=63&t,o=t>>>6&63,a=t>>>12&31,h=t>>>17&31,l=t>>>22&15,c=2e3+(t>>>26&63),d=Date[r(381)](c,l-1,h,a,o,n)/1,u=i===W.video;if((u?this[r(323)]:this[r(341)])===d){let t=e-((u?this._v_last_timestamp:this[r(407)])||0);t<0&&(t+=65535),0===t&&this.videoTrack[r(347)]&&(t=Math[r(368)](1e3*(s-((u?this[r(380)]:this[r(352)])||0))/this[r(369)][r(347)])),u?this._v_pts+=t:this[r(384)]+=t}else u?this[r(411)]=d:this[r(384)]=d;return u?(this[r(323)]=d,this[r(375)]=e,this._v_last_frame_number=s,this._v_pts):(this._a_last_time=d,this._a_last_timestamp=e,this[r(352)]=s,this._a_pts)}[gg(374)](t,e){const s=gg,i=Qe(t),r=this[s(406)]();if(0===i[s(332)])return;let n=null,o=e[s(353)]||!1;const a=e[s(378)],h=e.pts,l=h-a;i[s(320)](t=>{const e=s,i=r?t[0]>>>1&63:31&t[0];switch(i){case 5:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:if(!r&&5!==i||r&&5===i)break;o=!0;break;case 6:case 39:case 40:if(!r&&6!==i||r&&6===i)break;if(this.player[e(330)][e(337)]){const s=$e(Je(t),r);this[e(342)][e(372)]({ts:a,type:s[e(393)],data:s[e(317)],originData:t,uuid:s[e(355)],size:s[e(334)]})}break;case 32:if(!r)break;!this[e(369)][e(365)]&&(this[e(369)].vps=t);break;case 7:case 33:if(!r&&7!==i||r&&7===i)break;!this[e(369)][e(410)]&&(this.videoTrack[e(410)]=t);break;case 8:case 34:if(!r&&8!==i||r&&8===i)break;!this[e(369)].pps&&(this[e(369)].pps=t)}if(r&&vl(i)||!r&&Qh(i)){const s=ts(t);if(n){const t=new Uint8Array(n.byteLength+s[e(371)]);t.set(n,0),t.set(s,n[e(371)]),n=t}else n=s}});let c=null;r?this[s(369)][s(410)]&&this.videoTrack[s(360)]&&this[s(369)][s(365)]&&(c=yl({vps:this[s(369)][s(365)],sps:this[s(369)][s(410)],pps:this[s(369)].pps})):this.videoTrack.sps&&this[s(369)].pps&&(c=zh({sps:this.videoTrack[s(410)],pps:this[s(369)][s(360)]})),c&&!this[s(416)]&&(this[s(342)][s(362)](this[s(392)],s(311)),this[s(338)](c,W.video,0,!0,0),this._isSendVideoSeqHeader=!0),n&&this._doDecodeVideo(n,{pts:h,dts:a,cts:l,isIFrame:o})}[gg(319)](t,e){const s=gg,i=new Uint8Array(t);let r=null;r=this.isHevc()?Al(i,e.isIFrame):Hh(i,e[s(353)]),e[s(353)]&&this[s(367)](e[s(378)]),this[s(338)](r,W[s(321)],e.dts,e[s(353)],e[s(351)])}[gg(386)](t,e){const s=gg;if(this.audioTrack[s(393)])if(this[s(385)]()){if(!this[s(405)]){this._isSendAACSeqHeader=!0;const e=Ce(t[s(327)](0,7));this.audioTrack=Object[s(345)](this[s(358)],{description:e.audioSpecificConfig,sampleRate:e.sampleRate,channels:e[s(395)]});const i=De({profile:e[s(412)],sampleRate:e[s(417)],channel:e[s(395)]});this[s(342)].debugLog(this[s(392)],s(328),s(343)+e[s(412)]+s(401)+e[s(325)]+",sampleRateIndex: "+e[s(417)]+s(373)+e[s(395)]),this[s(414)](i,W[s(396)],0,!1,0)}if(this[s(405)]){let i=Le(t[s(327)](7));this[s(348)](i,e)}}else{let i;this[s(415)]()?i=ym(t):this[s(306)]()?i=Am(t):this.isMP3()&&(i=Dm(t)),this[s(348)](i,e)}}[gg(348)](t,e){const s=gg,i=this[s(336)](t);this[s(414)](i,W[s(396)],e,!1,0)}isSupportedVideo(){const t=gg;return this[t(404)]()||this[t(406)]()}isSupportedAudio(){const t=gg;return this[t(385)]()||this[t(415)]()||this.isG711U()||this[t(329)]()}[gg(404)](){const t=gg;return this[t(369)][t(393)]===et.h264}isHevc(){const t=gg;return this[t(369)][t(393)]===et.h265}isAAC(){const t=gg;return this[t(358)][t(393)]===it[t(377)]}isG711A(){const t=gg;return this[t(358)][t(393)]===it.G711A}isG711U(){const t=gg;return this.videoTrack.type===it[t(398)]}isMP3(){const t=gg;return this.audioTrack[t(393)]===it[t(403)]}}!function(t){const e=Cg,s=t();for(;;)try{if(314110===-parseInt(e(352))/1*(-parseInt(e(354))/2)+-parseInt(e(349))/3*(parseInt(e(350))/4)+parseInt(e(351))/5+parseInt(e(356))/6+-parseInt(e(358))/7*(parseInt(e(355))/8)+-parseInt(e(357))/9+parseInt(e(353))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(_g);const vg={h264:2,h264_plug:4,h265:12},Sg={h264:1,h265:2},Eg={g711u:10,g711a:14,aac:26},wg={sampleRate_4000:1,sampleRate_8000:2,sampleRate_11025:3,sampleRate_16000:4,sampleRate_20000:5,sampleRate_22050:6,sampleRate_32000:7,sampleRate_44100:8,sampleRate_48000:9},Tg={sampleRate_4000:1,sampleRate_8000:2,sampleRate_11025:3,sampleRate_16000:4,sampleRate_20000:5,sampleRate_22050:6,sampleRate_24000:7,sampleRate_32000:8,sampleRate_44100:9,sampleRate_48000:10},Ig={g711u:2,g711a:1,aac:3},kg=[252,253,254,240,251,241,0,0,255,0];function _g(){const t=["1237390YEaHov","94662rOOMpU","1900264mQQnnD","1271748kChySf","2969694XxqCts","7xvexfh","265014EmetJc","12giELVI","1214770trgAsw","12yJWfbd"];return(_g=function(){return t})()}function Cg(t,e){const s=_g();return(Cg=function(t,e){return s[t-=349]})(t,e)}const Dg={audio:192,video:224},Lg=1,Rg=16;function Pg(t){return 90===t[0]&&76===t[1]&&65===t[2]&&86===t[3]}function xg(t){const e=Fg;let s=null;switch(t){case Eg[e(262)]:s=it[e(255)];break;case Eg.g711a:s=it[e(273)];break;case Eg[e(265)]:s=it[e(257)];break;case vg[e(248)]:case vg[e(256)]:s=et[e(248)];break;case vg[e(252)]:s=et[e(252)]}return s}function Mg(t){const e=Fg;let s=null;switch(t){case wg[e(266)]:s=4e3;break;case wg[e(272)]:s=8e3;break;case wg[e(260)]:s=11025;break;case wg[e(253)]:s=16e3;break;case wg[e(249)]:s=2e4;break;case wg[e(267)]:s=22050;break;case wg[e(271)]:s=32e3;break;case wg[e(270)]:s=44100;break;case wg[e(263)]:s=48e3}return s}function Bg(){const t=["793804PuQxIR","h265","sampleRate_16000","1403444kPBeWu","G711U","h264_plug","AAC","1180818TMglyA","35ojByJi","sampleRate_11025","495704AouOCT","g711u","sampleRate_48000","4681156qUdkPP","aac","sampleRate_4000","sampleRate_22050","3KVQGGX","slice","sampleRate_44100","sampleRate_32000","sampleRate_8000","G711A","length","1078485Cqcoep","result","index","4996410XcVZHp","g711a","h264","sampleRate_20000","sampleRate_24000"];return(Bg=function(){return t})()}function Fg(t,e){const s=Bg();return(Fg=function(t,e){return s[t-=246]})(t,e)}function Ug(t){return 0===t[0]&&0===t[1]&&1===t[2]}!function(t){const e=Fg,s=t();for(;;)try{if(639782===-parseInt(e(251))/1+parseInt(e(254))/2+-parseInt(e(268))/3*(-parseInt(e(264))/4)+parseInt(e(275))/5+-parseInt(e(246))/6+parseInt(e(259))/7*(parseInt(e(261))/8)+-parseInt(e(258))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Bg);const Og=Ng;function Ng(t,e){const s=Vg();return(Ng=function(t,e){return s[t-=286]})(t,e)}function Vg(){const t=["pps","305tYlNUz","dts","indexOf","_parseVideoData","debugLog","destroy","_parseExtHeadFromData","relativeTimestamp",", data length: ","updatePlaybackStreamFps() and fps is ","_zlPsStreamParse","audio info ","vps","data length is not enough for one frame, frameLength: ","_isH265","byteLength","application/octet-stream","codec","lastAudioIncreaseRelativeTimestamp","G711A","objectType","profile: ","video_init_segment_dispatched_",",sampleRateIndex: ","_isAAC","lastVideoRelativeTimestamp","sampleRate","lastAudioRelativeTimestamp","h265","hasAudio","channels","forEach","101328xRwHrC","slice","length","player",".aac","184xEQNsZ","fps","9548NqwNkD","_hasInitVideo","_isH264","_handlePacket",", channel: ","headLength","_remainingPacketData","updatePlaybackStreamFps","_isTendaPs","_doDecodeAudio","_zlStreamParse","42204rgLeeC","_parsePesHeadFromData","videoTrack","aac seq header","height","_isG711U","10437040LiojYG","type",", sampleRate:","result","lastVideoIncreaseRelativeTimestamp","CommonDemux","TAG_NAME","set","depth","video info type: ","1644FRFuFl","4jUUkpg","setStreamFps","channelCount","frameLength","playbackStreamFps","_parseAudioData","sps","isPlaybackCacheBeforeDecodeForFpsRender","_doDecode","_doDecodeByTenda","_doDecodeVideo","audioTrack","getInputByteLength","sampleRateIndex","calcIframeIntervalTimestamp","audio_init_segment_dispatched_","debugWarn","tempBufferList","video","_opt",", pts: ","index","dataLength","startTimestamp","video seq header","277781iDaFyP","frame type is not support, frameType: ","width","samplingFrequencyIndex","downloadTempFile","G711U","data length is not enough for head length, head length: ","stringify","AAC","payload length: ","1378161dwvSdD","_parseHeadFromData","_isG711A","183994SVSqbO","initPlaybackCacheLoop","audio","isIFrame","init and isTendaPs:","6135OpqByu"];return(Vg=function(){return t})()}!function(t){const e=Ng,s=t();for(;;)try{if(529981===-parseInt(e(390))/1*(parseInt(e(352))/2)+parseInt(e(395))/3*(-parseInt(e(351))/4)+-parseInt(e(397))/5*(parseInt(e(317))/6)+parseInt(e(377))/7*(parseInt(e(322))/8)+-parseInt(e(387))/9+-parseInt(e(341))/10+parseInt(e(324))/11*(parseInt(e(335))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Vg);class jg extends If{constructor(t){const e=Ng;super(t),this.TAG_NAME="TendaDemux",this[e(330)]=null,this[e(307)]=!1,this[e(367)]=!1,this.videoTrack={width:0,height:0,sps:null,pps:null,vps:null,type:null,fps:0},this.audioTrack={channels:0,type:null,sampleRate:0,sampleRateIndex:-1,duration:0},this[e(310)]=0,this.lastAudioRelativeTimestamp=0,this[e(345)]=0,this[e(303)]=0,this[e(369)]=[],this[e(375)]=null,t[e(289)](this[e(347)],e(394),t._opt.isTendaPs)}destroy(){const t=Ng;super[t(290)](),this._remainingPacketData=null,this.video_init_segment_dispatched_=!1,this.audio_init_segment_dispatched_=!1,this[t(337)]=null,this[t(363)]=null,this[t(310)]=0,this[t(312)]=0,this[t(345)]=0,this[t(303)]=0,this.tempBufferList=[],this[t(320)].debugLog(this[t(347)],t(290))}[Og(291)](t){const e=Og;let s=0;for(s=0;s<t[e(319)];)switch(t[s]){case 128:(!this[e(337)].width||!this[e(337)][e(339)])&&(this[e(337)][e(379)]=8*zl(t,s+2),this[e(337)][e(339)]=8*zl(t,s+3)),s+=4;break;case 129:!this[e(337)][e(342)]&&(this.videoTrack[e(323)]=zl(t,s+3),this[e(337)][e(342)]=xg(zl(t,s+2)),this[e(320)][e(289)](this[e(347)],e(350)+this.videoTrack[e(342)]+", fps: "+this[e(337)][e(323)]),this[e(331)](this[e(337)][e(323)])),s+=4;break;case 130:(!this[e(337)].width||!this[e(337)][e(339)])&&(this[e(337)][e(379)]=Kl(t,s+4),this[e(337)][e(339)]=Kl(t,s+6)),s+=8;break;case 131:!this[e(363)][e(342)]&&(this[e(363)][e(315)]=zl(t,s+1),this.audioTrack[e(342)]=xg(zl(t,s+2)),this[e(363)][e(311)]=Mg(zl(t,s+3)),this[e(363)][e(365)]=_e[e(287)](this[e(363)][e(311)])),s+=4;break;case 136:s+=8;break;case 135:s+=4}}[Og(388)](t){const e=Og;if(t[e(319)]<24)return this.player.debugLog(this[e(347)],e(383)+24+e(293)+t[e(319)]),{length:0};const s=t[4];t[5],t[6],t[7],t[8],t[9],t[10],t[11];const i=t[12]|t[13]<<8|t[14]<<16|t[15]<<24,r=t[16]|t[17]<<8|t[18]<<16|t[19]<<24,n=t[20]|t[21]<<8,o=t[22];if(t[e(319)]<i)return this.player.debugLog(this.TAG_NAME,e(298)+i+", data length: "+t[e(319)]),{length:0};if(o>0){let s=t[e(318)](24,24+o);this._parseExtHeadFromData(s)}let a=null,h=!1,l=!1,c=!1;s===kg[1]?(h=!0,a=W.video):s===kg[0]?(l=!0,a=W.video):s===kg[2]?(c=!0,a=W[e(370)]):s===kg[3]?a=W[e(392)]:this.player[e(289)](this[e(347)],e(378)+s+" and frameLength is "+i);let d=n,u=0;if(a===W[e(370)]||a===W[e(392)]){let t=a===W[e(370)]?this[e(310)]:this[e(312)];u=n<t?65535-t+n:n-t,d=(a===W[e(370)]?this[e(345)]:this[e(303)])+u,a===W[e(370)]?(this[e(345)]=d,this[e(310)]=n):(this[e(303)]=d,this[e(312)]=n)}return{type:a,isIFrame:h,isPFrame:l,isBFrame:c,timestamp:r,relativeTimestamp:d,streamRelativeTimestamp:n,frameLength:i,headLength:24+o,extHeadLength:o,duration:u}}[Og(336)](t){const e=Og,s=t[3];let i={frameLength:0};if(s!==Dg[e(392)]&&s!==Dg[e(370)])return i;const r=t[e(318)](0,32)[e(318)](19),n=r[0],o=r[4]|r[3]<<8|r[2]<<16|r[1]<<24,a=32+(r[8]|r[7]<<8|r[6]<<16|r[5]<<24);if(t[e(319)]<a)return this[e(320)][e(289)](this[e(347)],"data length is not enough for one frame, frameLength: "+a+", data length: "+t.length),i;i[e(355)]=a;const h=t[e(318)](32,a);if(n===Rg){if(!this.audioTrack[e(342)]){const t=r[9],s=r[10],i=r[11],n=r[12];this[e(363)][e(342)]=function(t){const e=Fg;let s=null;switch(t){case Ig.g711u:s=it.G711U;break;case Ig[e(247)]:s=it[e(273)];break;case Ig[e(265)]:s=it[e(257)]}return s}(t),this[e(363)][e(315)]=s,this[e(363)][e(311)]=function(t){const e=Fg;let s=null;switch(t){case Tg[e(266)]:s=4e3;break;case Tg[e(272)]:s=8e3;break;case Tg[e(260)]:s=11025;break;case Tg[e(253)]:s=16e3;break;case Tg[e(249)]:s=2e4;break;case Tg[e(267)]:s=22050;break;case Tg[e(250)]:s=24e3;break;case Tg.sampleRate_32000:s=32e3;break;case Tg[e(270)]:s=44100;break;case Tg.sampleRate_48000:s=48e3}return s}(n),this[e(363)][e(365)]=_e[e(287)](this[e(363)].sampleRate),this[e(363)][e(349)]=function(t){let e=null;switch(t){case 1:e=8;break;case 2:e=16;break;case 3:e=32}return e}(i),this[e(320)].debugLog(this[e(347)],e(296)+JSON[e(384)](this[e(363)]))}this._handlePacket(h,{type:W[e(392)],pts:o,relativeTimestamp:o})}else if(n===Lg){!this[e(337)][e(342)]&&(this.videoTrack[e(342)]=function(t){const e=Fg;let s=null;switch(t){case Sg[e(248)]:s=et[e(248)];break;case Sg[e(252)]:s=et[e(252)]}return s}(r[9]),this[e(337)][e(323)]=r[11],this[e(320)].debugLog(this[e(347)],e(350)+this.videoTrack[e(342)]+", fps: "+this.videoTrack[e(323)]),this.updatePlaybackStreamFps(this[e(337)].fps));const t=r[10],s=1===t,i=2===t;this._handlePacket(h,{type:W[e(370)],isIFrame:s,isPFrame:i,pts:o,relativeTimestamp:o})}return i}dispatch(t){const e=Og;let s=new Uint8Array(t);this[e(330)]&&(s=Qi(this[e(330)],s),this[e(330)]=null),this[e(332)]()?this[e(295)](s):this[e(334)](s)}[Og(334)](t){const e=Og,s=function(t){const e=Fg;let s={result:!1,index:0};if(t[e(274)]<4)return s;if(Pg(t))return s[e(276)]=!0,s;for(let i=1;i<t[e(274)]-3;i++)if(Pg(t[e(269)](i,i+4))){s[e(276)]=!0,s[e(277)]=i;break}return!s[e(276)]&&(s[e(277)]=t.length-3),s}(t);if(s[e(344)]){const i=s[e(373)];let r=t.slice(i);const n=this[e(388)](r);if(0===n[e(319)])return void(this[e(330)]=r);const o=n[e(355)]-n.headLength-8;n[e(374)]=o;const a=n[e(329)]+o,h=n[e(329)]+o+8;if(function(t,e){let s=!1;return t.length<8||122!==(i=t)[0]||108!==i[1]||97!==i[2]||118!==i[3]?s:(t[4]|t[5]<<8|t[6]<<16|t[7]<<24)===e||s;var i}(r.slice(a,h),n[e(355)])){const t=n.headLength,s=r[e(318)](t,t+o);return s.length===o?this[e(327)](s,n):this[e(320)][e(368)](this[e(347)],"frame data length is not equal, frame data length: "+s[e(319)]+", dataLength: "+o),r=r[e(318)](n[e(355)]),void this[e(334)](r)}return void(this._remainingPacketData=r)}if(s[e(373)]){const i=t[e(318)](s[e(373)]);return void(this[e(330)]=i)}this[e(330)]=t}[Og(295)](t){const e=Og,s=function(t){const e=Fg;let s={result:!1,index:0};if(t[e(274)]<3)return s;if(Ug(t))return s.result=!0,s;for(let i=1;i<t[e(274)]-2;i++)if(Ug(t[e(269)](i,i+3))){s[e(276)]=!0,s[e(277)]=i;break}return!s[e(276)]&&(s[e(277)]=t[e(274)]-2),s}(t);let i=null;if(s[e(344)]){const r=s[e(373)];i=t.slice(r);const n=this[e(336)](i);return 0===n.frameLength?void(this[e(330)]=t):(i=i[e(318)](n[e(355)]),void this[e(295)](i))}s.index?this[e(330)]=t[e(318)](s.index):this[e(330)]=t}_handlePacket(t,e){const s=Og;e.type===W[s(370)]?this[s(320)][s(371)].hasVideo&&this._parseVideoData(t,e):e[s(342)]===W[s(392)]&&this.player[s(371)][s(314)]&&this[s(357)](t,e)}[Og(288)](t,e){const s=Og;if(!this[s(337)][s(342)])return;const i=Qe(t),r=this[s(299)]();if(0===i[s(319)])return;let n=null,o=e.isIFrame,a=e[s(292)];i[s(316)](t=>{const e=s,i=r?t[0]>>>1&63:31&t[0];switch(i){case 5:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:if(!r&&5!==i||r&&5===i)break;!o&&(this[e(320)][e(289)](this[e(347)],"not I frame and set I frame"),o=!0);break;case 32:if(!r)break;!this[e(337)].vps&&(this[e(337)][e(297)]=t);break;case 7:case 33:if(!r&&7!==i||r&&7===i)break;!this[e(337)][e(358)]&&(this[e(337)][e(358)]=t);break;case 8:case 34:if(!r&&8!==i||r&&8===i)break;!this[e(337)][e(396)]&&(this.videoTrack[e(396)]=t)}if(r&&vl(i)||!r&&Qh(i)){const s=ts(t);if(n){const t=new Uint8Array(n.byteLength+s[e(300)]);t[e(348)](n,0),t[e(348)](s,n[e(300)]),n=t}else n=s}});let h=null;r?this.videoTrack[s(358)]&&this[s(337)][s(396)]&&this[s(337)].vps&&(h=yl({vps:this[s(337)].vps,sps:this[s(337)][s(358)],pps:this.videoTrack[s(396)]})):this[s(337)][s(358)]&&this[s(337)][s(396)]&&(h=zh({sps:this[s(337)][s(358)],pps:this.videoTrack[s(396)]})),h&&!this[s(307)]&&(this[s(320)].debugLog(this.TAG_NAME,s(376)),this[s(361)](h,W.video,0,!0,0),this[s(307)]=!0),n&&(this[s(320)][s(289)](this[s(347)],s(386)+n[s(300)]+", isIFrame: "+o+s(372)+a),this[s(362)](n,{pts:a,dts:a,isIFrame:o}))}[Og(357)](t,e){const s=Og;if(this.audioTrack[s(342)])if(this[s(309)]()){if(!this[s(367)]){const i=Ue(t,e[s(292)]);if(i&&(this[s(363)][s(302)]=i[s(302)],!this[s(367)])){const t=De({profile:i.objectType,sampleRate:i[s(380)],channel:i[s(354)]});this[s(320)][s(289)](this.TAG_NAME,s(338),s(306)+i[s(305)]+s(343)+i[s(311)]+s(308)+i[s(380)]+s(328)+i.channelCount),this[s(367)]=!0,this[s(361)](t,W[s(392)],0,!1,0)}}this[s(367)]&&this[s(333)](t[s(318)](7),e[s(292)])}else this[s(333)](t,e[s(292)])}[Og(362)](t,e){const s=Og,i=new Uint8Array(t);let r=null;r=this[s(299)]()?Al(i,e[s(393)]):Hh(i,e[s(393)]),this.player.updateStats({dts:e.dts,vbps:r[s(300)]}),e[s(393)]&&this[s(366)](e[s(286)]),this[s(361)](r,W[s(370)],e[s(286)],e[s(393)],0)}[Og(333)](t,e){const s=Og,i=new Uint8Array(t);this.player.updateStats({abps:i[s(300)]});let r=null;this[s(309)]()?(r=new Uint8Array(i[s(319)]+2),r.set([175,1],0),r[s(348)](i,2)):this[s(389)]()?(r=new Uint8Array(i[s(319)]+1),r.set([114],0),r.set(i,1)):this[s(340)]()&&(r=new Uint8Array(i[s(319)]+1),r[s(348)]([130],0),r[s(348)](i,1)),this[s(361)](r,W[s(392)],e,!1,0)}_hasInitAudio(){const t=Og;return this[t(363)][t(342)]&&this.audioTrack[t(311)]&&this[t(363)][t(315)]}[Og(325)](){const t=Og;return this[t(337)][t(342)]&&this.videoTrack[t(358)]&&this.videoTrack[t(396)]}[Og(299)](){const t=Og;return this[t(337)][t(342)]===et[t(313)]}[Og(326)](){const t=Og;return this[t(337)][t(342)]===et.h264}[Og(309)](){const t=Og;return this.audioTrack.type===it[t(385)]}[Og(389)](){const t=Og;return this[t(363)].type===it[t(304)]}[Og(340)](){const t=Og;return this[t(363)][t(342)]===it[t(382)]}[Og(332)](){const t=Og;return Pi(this[t(320)][t(371)].isTendaPs)}[Og(364)](){return this[Og(330)]&&this._remainingPacketData.byteLength||0}[Og(331)](t){const e=Og;this[e(320)][e(359)]()&&(this[e(320)][e(289)](e(346),e(294)+t),this[e(356)]=t,this.player[e(370)]&&this[e(320)].video[e(353)](this[e(356)]),this[e(391)]())}[Og(361)](t,e,s,i,r=0){this[Og(360)](t,e,s,i,r)}[Og(381)](){const t=Og;if(0===this[t(369)][t(319)])return;const e=jl(this[t(369)]),s=new Blob([e],{type:t(301)});Ns(os()+t(321),s)}}function Wg(t,e){const s=Gg();return(Wg=function(t,e){return s[t-=110]})(t,e)}function Gg(){const t=["35IVprTw","webTransport","tenda","demuxType","671331ExxpXk","56424UTwmiW","171VsmMaG","98786OMAGPH","getLoaderFactory","121386owNThF","mpeg4","634641exsoWP","isPlayVod","isWebrtcH265","1279896BbBUMW","4CmSfML","114140LKPAQi","flv","_opt","nakedFlow","fmp4"];return(Gg=function(){return t})()}!function(t){const e=Wg,s=t();for(;;)try{if(118950===parseInt(e(118))/1+-parseInt(e(116))/2+parseInt(e(115))/3*(parseInt(e(126))/4)+-parseInt(e(111))/5*(parseInt(e(120))/6)+-parseInt(e(122))/7+-parseInt(e(125))/8+parseInt(e(117))/9*(parseInt(e(127))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Gg);class zg{constructor(t){return new(zg[Wg(119)](t))(t)}static getLoaderFactory(t){const e=Wg,s=t[e(129)][e(114)];return $i()?nm:s===e(113)?jg:s===m.m7s?Hf:s===m[e(128)]||t[e(124)]()?t[e(129)].demuxFlvUseV2?jf:Uf:s===m[e(112)]?Yf:s===m[e(130)]?im:s===m[e(110)]&&xi(t[e(123)]())?jm:s===m[e(121)]?Hm:s===m.ts?hg:s===m.ps?mg:s===m.dhav?bg:nm}}function Hg(t,e){const s=Kg();return(Hg=function(t,e){return s[t-=401]})(t,e)}function Kg(){const t=["length","getUint32","38447046hHMfEf","Invalid Opus MagicSignature","getInt16","11676931cOEywQ","opus","3577600cUJwkP","2169cHDTJK","buffer","OpusHead","32502EbWayY","fromCodePoint","2mXqKYO","297678znltqb","615NYzIEZ","12vktZgu","byteLength","byteOffset","30512SgIWog","34264lMIFAD"];return(Kg=function(){return t})()}!function(t){const e=Hg,s=t();for(;;)try{if(862762===-parseInt(e(414))/1*(-parseInt(e(413))/2)+-parseInt(e(416))/3*(parseInt(e(420))/4)+parseInt(e(415))/5*(-parseInt(e(411))/6)+-parseInt(e(405))/7+-parseInt(e(419))/8*(parseInt(e(408))/9)+parseInt(e(407))/10+parseInt(e(402))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Kg);const qg=Qg;function Qg(t,e){const s=Yg();return(Qg=function(t,e){return s[t-=144]})(t,e)}function Yg(){const t=["decodeVideo has not init , isIframe is ","length","audioSourceNoDataCheckTimeout","_isDestroyed",",so not support play audio","ALAW","toString","decoderFailure","1336554JqHzLm","debugError","isDecodeFirstIIframe","lastPushToDecodeTs","webcodecsDecodeError","getDecodeDiffTimes","_clearAudioNoDataCheckTimeout","emit","decodeVideo has init, and init isVideoInitedAndNotFirstVideoIFrame = true","needInitAudio","mp4","updateVideoInfo","isPlayback","handleDecodeAudio() player is destroyed","decodeAudio and has already initialized and payload is not opus comment packets and type is ","debugLog","h264","channelCount","decodeVideo","recorder","opus","decoderAudio.configure() and codec is ","initDecoder","code","configured","video","handleDecodeAudio() isDecodeFirstIIframe is false and return","initCanvasViewSize","indexOf","close","decodeVideo() player is destroyed","decodeAudio and has already initialized and payload is aac codec packet so drop this frame","isWidthOrHeightChanged","decoderAudio","isOpus","AudioDecoder close error","width","hasInit","configure or configure.code is null","mp3","slice","VideoDecoder first frame is not iFrame","webcodecsH265NotSupport","codec","prevHandleDecodeTimestamp"," and return","hasAudio","decodingError","increaseLocalTimestamp","decoderError","_times","decodeVideo and webcodecs configure is","isAudioDecodeStateClosed","ulaw","configure error","configure",", new height is ","codedHeight","codedWidth"," , payload is ","decoder","bindMediaStream","webcodecsAudioDecodeError","399080pXqkcL","isDecodeStateUnConfigured","codecWidth","hevcDecodingIsNotSupported","sampleRate","numberOfChannels","AudioDecoder isDecodeStateClosed true","webcodecsAudioInitTimeout","timestamp","decodeVideo diff time is ","handleDecode","isVideoInitedAndNotFirstVideoIFrame","audio","decodeStart","_clearAudioSourceBufferCheckTimeout","closed","isPlayVod","MP3","webcodecsUnsupportedConfigurationError","originalCodec","isPlayer","isAudioInitInfo"," is more than ","handleDecode() player is destroyed and return","12174520aTtXtj","type","decodeAudio() and aac channel count ","render$2","removeSeekingTimestamp","updateStats","isDecodeStateClosed","decode","width ","player","_opt","isAudioDecodeStateConfigured","emitError","height","getDecodeDelay","isDecodeStateConfigured","abs","AudioDecoder handleError:","key","seekingTimestamp","lastDecodedTs","AudioDecoder","webcodecsDecodeConfigureError","handleDecode() isDecodeFirstIIframe is false and return","webcodecsAudioNoDataTimeout","isUseLocalCalculateTime","2129316KGdPPa","513653kapnTA","isAAC","recordType","updateAudioInfo","initAudioAacExtraData","1RyLtJL","handleError"," so drop this frame","isDestroyedOrClosed","decodeVideo and payload is too small , payload length is ","codecHeight","videoInfo","destroy","isUseFpsRender","Webcodecs","decodeDiffTimestamp","av1","6622866FsxOPY"," more than ","state","isSeeking","byteLength","isG711","stringify","hardwareAcceleration","audioSourceBufferCheckTimeout","setAudioDisabled","hasAudioInit","now","handleErrorAudio",",\n new width is ","TAG_NAME","playVod","play","handleDecode diff time is ","updatePrevHandleDecodeTimestamp","prevTimestamp","ms, video is stuck","prefer-hardware","1419206piKSyM","decodeAudio"," height ","VideoDecoder:","canNotDecodeClosedCodec","videoStart","WebcodecsDecoder not support hevc decode","unconfigured","playback","423VcttFN","h265","15jxtlEY","delta","isInitInfo","getCorrectionConfiguration","handleDecodeAudio","configure audio error","VideoDecoder close error","OPUS","pushData","debugWarn"];return(Yg=function(){return t})()}!function(t){const e=Qg,s=t();for(;;)try{if(942427===parseInt(e(168))/1*(parseInt(e(202))/2)+parseInt(e(231))/3+parseInt(e(162))/4*(-parseInt(e(213))/5)+parseInt(e(180))/6+-parseInt(e(163))/7+-parseInt(e(318))/8+-parseInt(e(211))/9*(-parseInt(e(294))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Yg);class Jg extends h{constructor(t){const e=Qg;super(),this[e(145)]=t,this[e(194)]=e(177),this.reset(),this[e(233)]=!!xi(t._opt.checkFirstIFrame),this[e(291)]=null,this[e(264)]=null,this[e(188)]=null,this[e(225)]=null,this[e(253)](),this[e(240)]()&&this.initDecoderAudio(),this[e(226)]=!1,t[e(246)](this[e(194)],"init")}async[qg(175)](){const t=qg;if(this[t(226)]=!0,this[t(237)](),this[t(308)](),this[t(291)]){if(xi(this.isDecodeStateClosed()))try{this.decoder[t(260)]()}catch(e){this[t(145)][t(246)](this[t(194)],t(219),e[t(229)](),e)}this[t(291)]=null}if(this[t(264)]){if(xi(this[t(283)]()))try{this.decoderAudio.close()}catch(e){this[t(145)].debugLog(this[t(194)],t(266),e[t(229)](),e)}this[t(264)]=null}this.reset(),this.off(),this[t(145)][t(246)](this.TAG_NAME,t(175))}reset(){const t=qg;this[t(199)]=null,this[t(178)]=null,this.prevHandleDecodeTimestamp=null,this.prevDts=null,this.hasInit=!1,this[t(215)]=!1,this[t(315)]=!1,this[t(164)]=!1,this.isMp3=!1,this[t(265)]=!1,this.isG711=!1,this[t(233)]=!1,this[t(263)]=!1,this[t(234)]=null,this[t(156)]=null}initDecoder(){const t=this;this.decoder=new VideoDecoder({output(e){t[Qg(304)](e)},error(e){t.handleError(e)}})}initDecoderAudio(){const t=qg,e=this;this[t(264)]=new AudioDecoder({output(s){e[t(217)](s)},error(s){e[t(192)](s)}})}[qg(240)](){const t=qg;return this[t(145)]._opt[t(277)]&&this[t(145)][t(146)].wcsDecodeAudio}[qg(304)](t){const e=qg;if(this[e(226)])bi(t);else{if(this[e(145)][e(171)]())return this.player.debugLog(this.TAG_NAME,e(317)),void bi(t);if(xi(this[e(233)]))return this[e(145)][e(246)](this[e(194)],e(159)),void bi(t);if(this[e(240)]()&&xi(this[e(190)]))return null===this[e(188)]&&(this.audioSourceBufferCheckTimeout=setTimeout(()=>{const t=e;this._clearAudioSourceBufferCheckTimeout(),this._isDestroyed||this[t(145)][t(238)](J[t(301)])},1e3)),void bi(t);if(this[e(156)]=t[e(302)],this.player[e(314)]())this.updatePrevHandleDecodeTimestamp(),this[e(145)][e(323)]({dfps:!0}),!this[e(145)][e(281)][e(207)]&&(this[e(145)]._times[e(207)]=os(),this.player.handlePlayToRenderTimes()),this[e(145)][e(256)].render({videoFrame:t,ts:t[e(302)]}),this[e(145)].handleRender();else if(this[e(145)][e(243)]())this[e(145)][e(323)]({dfps:!0}),xi(this.player.playbackPause)?(this[e(145)][e(210)][e(161)]&&this.player.playback[e(279)](),this[e(145)][e(210)].isUseFpsRender?this[e(145)].video[e(221)]({videoFrame:t,ts:t[e(302)]}):this[e(145)][e(256)][e(321)]({videoFrame:t,ts:t[e(302)]})):this.player[e(210)].isPlaybackPauseNotClearCacheAndCacheBeforeDecode()&&this.player[e(210)][e(176)]&&this.player[e(256)].pushData({videoFrame:t,ts:t.timestamp});else if(this[e(145)][e(310)]())if(this[e(145)][e(195)].isSeeking()){const s=this[e(145)][e(195)][e(155)];Math[e(152)](s-t[e(302)])<500?(this[e(145)][e(195)][e(322)](),this[e(145)].updateStats({dfps:!0}),this[e(145)][e(256)].render$2({videoFrame:t,ts:t[e(302)]})):bi(t)}else this.player[e(323)]({dfps:!0}),!this[e(145)][e(281)][e(207)]&&(this.player[e(281)].videoStart=os(),this[e(145)].handlePlayToRenderTimes()),this[e(145)][e(256)].render$2({videoFrame:t,ts:t[e(302)]})}}[qg(169)](t){const e=qg;this[e(145)][e(232)](this.TAG_NAME,"VideoDecoder handleError:",t[e(254)],t);const s=t[e(229)]();-1!==s[e(259)](wt.unsupportedConfiguration)?this[e(145)][e(148)](J[e(312)],s):-1!==s[e(259)](wt[e(230)])?this[e(145)][e(148)](J[e(235)],s):-1!==s[e(259)](wt[e(278)])?this.player.emitError(J[e(235)],s):-1!==s[e(259)](wt[e(280)])?this.player[e(148)](J[e(235)],s):-1!==s.indexOf(wt[e(297)])&&this[e(145)][e(148)](J[e(273)],s)}[qg(217)](t){const e=qg;if(this[e(226)])vi(t);else{if(this[e(145)].isDestroyedOrClosed()&&this[e(145)][e(246)](this[e(194)],e(244)),xi(this[e(233)]))return this[e(145)][e(246)](this[e(194)],e(257)),void vi(t);this[e(145)][e(314)]()?this[e(145)].audio[e(196)](t,t[e(302)]):this.player[e(243)]()?this[e(145)][e(306)][e(196)](t,t[e(302)]):this[e(145)][e(310)]()&&(this[e(145)][e(195)][e(183)]()?vi(t):this[e(145)][e(306)][e(196)](t,t.timestamp))}}[qg(192)](t){const e=qg;this.player[e(232)](this.TAG_NAME,e(153),t[e(254)],t),this[e(145)][e(238)](J[e(293)])}[qg(249)](t,e,s,i){const r=qg;if(!this[r(226)])if(this[r(145)][r(171)]())this[r(145)][r(222)](this[r(194)],r(261));else if(this.hasInit)if(null===this[r(145)][r(305)]&&(this[r(145)][r(246)](this[r(194)],r(239)),this[r(145)][r(305)]=!0),!this[r(233)]&&s&&(this[r(233)]=!0,this[r(145)][r(246)](this.TAG_NAME,"decodeVideo and is first iframe, so set isVideoInitedAndNotFirstVideoIFrame = false"),this[r(145)][r(305)]=!1),this[r(233)]){if(this[r(324)]())return void this.player[r(222)](this[r(194)],"VideoDecoder isDecodeStateClosed true");if(s&&0===t[1]){const e=15&t[0];let s={},i=t.slice(5);const n=this[r(145)][r(216)]();e===et[r(247)]?s=Gh(i,n):e===et[r(212)]?s=gl(i,n):e===et[r(179)]&&(s=Fm(i,n));const o=this.player[r(256)][r(174)];o&&o[r(267)]&&o[r(149)]&&s&&s.codecWidth&&s.codecHeight&&(s[r(296)]!==o[r(267)]||s[r(173)]!==o[r(149)])&&(this.player.debugWarn(this[r(194)],"decodeVideo: video width or height is changed,\n old width is "+o[r(267)]+", old height is "+o[r(149)]+r(193)+s.codecWidth+r(287)+s[r(173)]+",\n and emit change event"),this[r(263)]=!0,this[r(145)][r(148)](J.wcsWidthOrHeightChange,r(144)+o[r(267)]+"->"+o[r(149)]+r(204)+s.codecWidth+"->"+s[r(173)]))}if(this[r(263)])return void this.player[r(222)](this.TAG_NAME,"decodeVideo: video width or height is changed, and return");if(Ri(t))return void this[r(145)][r(246)](this.TAG_NAME,"decodeVideo and payload is video sequence header so drop this frame");if(t[r(184)]<12)return void this[r(145)].debugWarn(this.TAG_NAME,r(172)+t.byteLength+r(276));let i=!1,n=Date[r(191)]();!this[r(199)]&&(this[r(199)]=n,i=!0);const o=n-this[r(199)];this.decodeDiffTimestamp=o,o>85&&!i&&this[r(145)].isPlayer()&&this[r(145)][r(246)](this[r(194)],r(303)+o+r(181)+85+r(200));const a=t[r(271)](5),h=new EncodedVideoChunk({data:a,timestamp:e,type:s?ct.key:ct[r(214)]});this[r(145)].updateStats({p2dfps:!0}),this[r(234)]=e;try{this[r(291)].decode(h)}catch(t){const e=t[r(229)]();this[r(145)][r(232)](this[r(194)],r(205),t,e),-1!==e[r(259)](wt.keyframeIsRequiredError)?this[r(145)][r(148)](J.webcodecsDecodeError,e):-1!==e[r(259)](wt[r(206)])&&this.player[r(148)](J[r(235)],e)}this[r(199)]=n}else this[r(145)].debugLog(this[r(194)],r(272));else if(s&&t[1]===kt.sequenceHeader){const e=15&t[0];if(this[r(145)].video[r(242)]({encTypeCode:e}),e===et.h265&&!Fs()){const t=Ss();return this.player.debugWarn(this.TAG_NAME,r(208),t[r(319)],t.version),void this[r(145)][r(148)](J[r(273)])}!this[r(145)][r(281)][r(307)]&&(this[r(145)][r(281)].decodeStart=os());let s=null,i=null;const n=t[r(271)](5),o=this[r(145)][r(216)]();if(e===et[r(247)]?(i=Gh(n,o),s={codec:i[r(274)],description:n}):e===et.h265?(i=gl(n,o),s={codec:i[r(274)],description:n}):e===et[r(179)]&&(i=Fm(n,o),s={codec:i[r(274)],description:n}),!s||s&&!s.codec||i&&0===i.codecWidth&&0===i.codecHeight)return this.player[r(222)](this[r(194)],r(282),JSON[r(186)](s)),void this[r(145)][r(148)](J[r(158)],r(269));s[r(288)]=i[r(173)],s[r(289)]=i[r(296)],!this[r(215)]&&(this.player[r(246)](this.TAG_NAME,"updateVideoInfo: "+i[r(296)]+","+i[r(173)]),this[r(145)][r(256)][r(242)]({width:i[r(296)],height:i[r(173)]}),this[r(145)][r(256)][r(258)](),this[r(215)]=!0),this[r(145)][r(250)]&&this[r(145)][r(146)][r(165)]===f.mp4&&this.player.recorder.initMetaData(t,e),this.player.video[r(292)](),this[r(145)][r(246)](this.TAG_NAME,"decoder.configure() and codec is "+s[r(274)]);try{s.optimizeForLatency=!0,s[r(187)]=r(201),this[r(291)][r(286)](s),this[r(268)]=!0}catch(t){this.player[r(232)](this.TAG_NAME,r(285),t[r(254)],t);const e=t[r(229)]();-1!==e.indexOf(wt[r(297)])?this.player[r(148)](J[r(273)],e):this[r(145)][r(148)](J[r(158)],e)}}else this[r(145)].debugWarn(this[r(194)],r(223)+s+r(290)+t[1]+r(170))}[qg(203)](t,e){const s=qg;if(!this[s(226)])if(this[s(145)][s(171)]())this[s(145)][s(222)](this[s(194)],"decodeAudio() player is destroyed");else if(this[s(190)]){if(this[s(164)]&&Re(t))return void this[s(145)].debugLog(this[s(194)],s(262));if(this.isOpus&&xi(1===t[1]))return void this[s(145)][s(246)](this[s(194)],s(245)+t[1]+" so drop this frame");if(this[s(237)](),this[s(233)]){if(this[s(283)]())return void this[s(145)][s(222)](this[s(194)],s(300));const i=this[s(164)]||this.isOpus?t[s(271)](2):t[s(271)](1),r=i[s(224)]/this[s(145)][s(306)].audioInfo[s(298)]*1e3,n=new EncodedAudioChunk({type:s(154),data:i,timestamp:e,duration:parseInt(r,10)});try{this.decoderAudio[s(325)](n)}catch(t){const e=t[s(229)]();this.player[s(232)](this[s(194)],s(157),t,e),this[s(145)][s(238)](J.webcodecsAudioDecodeError)}}}else{const e=t[0]>>4&15,i=t[0]>>1&1,r=e===it[s(311)],n=e===it.AAC,o=e===it[s(228)],a=e===it.MULAW,h=e===it[s(220)];let l="";l=n||h?i?16:8:0===i?8:16;const c={codec:"",numberOfChannels:"",sampleRate:""};let d=null;if(n||r){let e=null;if(Re(t)){const i=t[s(271)](2);if(e=Ne(i),e&&(c[s(274)]=e[s(313)],c[s(299)]=e[s(248)],c[s(298)]=e[s(298)]),d=i,c[s(299)]>2)return this[s(145)].debugWarn(this[s(194)],s(320)+c[s(299)]+s(316)+2+s(227)),void this.player[s(189)]();this[s(164)]=n}else if(r){e=Cm(t.slice(1)),e&&(c[s(274)]=ee[s(270)],c.numberOfChannels=e[s(248)],c[s(298)]=e[s(298)],this.isMp3=!0)}else if(h&&0===t[1]){e=function(t){const e=Hg;if(!t[e(421)])return;const s=new DataView(t.buffer,t.byteOffset,t[e(417)]);let i="";for(let s=0;s<8;s++)i+=String[e(412)](t[s]);if(i!==e(410))throw new Error(e(403));const r=t[9],n=s[e(401)](12,!0),o=s[e(404)](16,!0);if(!n)return{};const a=e(406),h=e(406);return{outputGain:o,sampleRate:n,channelCount:r,config:new Uint8Array(t[e(409)],t[e(418)]+8,t[e(417)]-8),codec:a,originCodec:h}}(t[s(271)](2)),e&&(c[s(274)]=ee[s(251)],c[s(299)]=e[s(248)],c[s(298)]=e.sampleRate),this[s(265)]=!0}}else(a||o)&&(c[s(274)]=o?ee.alaw:ee[s(284)],c[s(299)]=1,c.sampleRate=8e3,this[s(185)]=!0);if(c.codec&&c[s(299)]&&c[s(298)]){!this[s(315)]&&(this[s(145)].audio[s(166)]({encTypeCode:e,channels:c[s(299)],sampleRate:c[s(298)],depth:l}),this[s(315)]=!0),this[s(145)][s(250)]&&this.player[s(146)][s(165)]===f[s(241)]&&d&&this[s(145)][s(250)][s(167)](d),this[s(145)][s(246)](this[s(194)],s(252)+c[s(274)]);try{this.decoderAudio[s(286)](c),this._clearAudioSourceBufferCheckTimeout(),this[s(190)]=!0,null===this[s(225)]&&(this[s(225)]=setTimeout(()=>{const t=s;this[t(237)](),this[t(226)]||this[t(145)][t(238)](J[t(160)])},1e3))}catch(t){this.player[s(232)](this[s(194)],s(218),t[s(254)],t),t[s(229)]()}}}}updateMediaSourceDuration(t){}[qg(308)](){const t=qg;this.audioSourceBufferCheckTimeout&&(clearTimeout(this.audioSourceBufferCheckTimeout),this[t(188)]=null)}[qg(237)](){const t=qg;this[t(225)]&&(clearTimeout(this.audioSourceNoDataCheckTimeout),this[t(225)]=null)}[qg(236)](){return this.decodeDiffTimestamp}[qg(198)](){const t=qg;if(!this[t(145)][t(314)]())return;const e=os();null===this[t(275)]&&(this[t(275)]=e);const s=e-this.prevHandleDecodeTimestamp;s>85&&this[t(145)][t(246)](this[t(194)],t(197)+s+" more than 85"+t(200)),this[t(275)]=e}[qg(324)](){const t=qg;return this[t(291)]&&this.decoder[t(182)]===t(309)}[qg(151)](){const t=qg;return this.decoder&&this[t(291)][t(182)]===t(255)}[qg(295)](){const t=qg;return this[t(291)]&&this.decoder.state===t(209)}[qg(283)](){const t=qg;return this[t(264)]&&"closed"===this[t(264)][t(182)]}[qg(147)](){const t=qg;return this[t(264)]&&this[t(264)][t(182)]===t(255)}isAudioDecodeStateUnConfigured(){const t=qg;return this[t(264)]&&this.decoderAudio.state===t(209)}[qg(150)](){const t=qg;let e=0;return this.lastPushToDecodeTs&&this[t(156)]&&(e=this[t(234)]-this[t(156)]),e}}function Xg(){const t=["25308OaUESO","472REayJr","keys","\n ","66Hdbkka","449951zfcTBW","2CmnVEQ","351420hwLKjj",'<span class="icon-title-tips"><span class="icon-title">','"></i>\n ',"345188pvQmld","21088440uzpjop","</span></span>","211176pEecHH","374mhkIhB","15HnMiiz","13VuNoUp","611245VEYKUB"];return(Xg=function(){return t})()}function $g(t,e){const s=Xg();return($g=function(t,e){return s[t-=344]})(t,e)}function Zg(t,e){const s=ty();return(Zg=function(t,e){return s[t-=194]})(t,e)}function ty(){const t=["</div>\n </div>\n ","audio","playbackConfig","performanceLive",'\n <div class="jb-pro-controls-playback-btns">\n <div class="jb-pro-controls-item jb-pro-playback-narrow">',"showControl",'</div><div class="jb-pro-controls-item jb-pro-object-active">',"performance","mute",'</div><div class="jb-pro-controls-item jb-pro-face-active">',"</span>\n </span>\n </div>\n </div>\n ","ptz","ptzShowType","802695PWHcxT","record","controlAutoHide",'<div class="jb-pro-controls-item-wrap"><div class="jb-pro-controls-item jb-pro-screenshot">',"\n ","\n </div>\n ",'\n <div class="jb-pro-controls-item-wrap">\n <div class="jb-pro-controls-item jb-pro-quality-menu">\n <div class="jb-pro-quality-icon-text"></div>\n <div class="jb-pro-quality-menu-list"></div>\n </div>\n </div>\n ',"\n ",'</div>\n <div class="jb-pro-controls-item jb-pro-playback-expand">',"playVod","playVodConfig","aiFace","\n ","objectActive","scale","normal","\n ",' <div class="jb-pro-controls-item-wrap"><div class="jb-pro-controls-item jb-pro-zoom">','\n <div class="jb-pro-ptz-btn">\n <div class="jb-pro-ptz-fog-open jb-pro-ptz-icon">\n <i class="jb-pro-ptz-focus-icon"></i>\n <span class="icon-title-tips">\n <span class="icon-title">','</span>\n </span>\n </div>\n <div class="jb-pro-ptz-focus-near jb-pro-ptz-icon">\n <i class="jb-pro-ptz-focus-icon"></i>\n <span class="icon-title-tips">\n <span class="icon-title">',')"></div>',"occlusionActive","\n ","</span>\n </span>\n </div>\n </div>\n ","loadingIcon","</div>\n </div>\n ","background","getI18n",'\n <div class="jb-pro-ptz-btn">\n <div class="jb-pro-ptz-aperture-far jb-pro-ptz-icon">\n <i class="jb-pro-ptz-aperture-icon"></i>\n <span class="icon-title-tips">\n <span class="icon-title">',"zoom","ptzCruiseShow","fullscreenExit",'\n <div class="jb-pro-volume-panel-wrap">\n <div class="jb-pro-volume-panel">\n <div class="jb-pro-volume-panel-handle"></div>\n </div>\n <div class="jb-pro-volume-panel-text"></div>\n </div>\n </div>\n </div>\n ','</span>\n </span>\n </div>\n <div class="jb-pro-ptz-aperture-near jb-pro-ptz-icon">\n <i class="jb-pro-ptz-aperture-icon"></i>\n <span class="icon-title-tips">\n <span class="icon-title">','</div>\n <div class="jb-pro-performance-panel-tab-btn jb-pro-performance-panel-tab-btn2">',"$container",'\n <div class="jb-pro-controls-item-wrap">\n <div class="jb-pro-controls-item jb-pro-speed-menu">\n <div class="jb-pro-speed-icon-text"></div>\n <div class="jb-pro-speed-menu-list"></div>\n </div>\n </div>\n ',"\n </div>\n </div>\n </div>\n ",'\n <div class="jb-pro-controls-item-wrap">\n <div class="jb-pro-controls-item jb-pro-scale-menu">\n <div class="jb-pro-scale-icon-text"></div>\n <div class="jb-pro-scale-menu-list"></div>\n </div>\n </div>\n ','</div>\n </div>\n <div class="jb-pro-recording">\n <div class="jb-pro-recording-red-point"></div>\n <div class="jb-pro-recording-time">00:00:00</div>\n <div class="jb-pro-recording-stop">',"jb-pro-controls-show-auto-hide",'</span>\n </span>\n </div>\n <div class="jb-pro-ptz-fog-close jb-pro-ptz-icon">\n <i class="jb-pro-ptz-focus-icon"></i>\n <span class="icon-title-tips">\n <span class="icon-title">',"ptzMoreArrowShow","performanceActive",'</div><div class="jb-pro-controls-item jb-pro-occlusion-active">',"\n ","simple","hasVideo",'\n <div class="jb-pro-controls">\n <div class="jb-pro-controls-bottom">\n <div class="jb-pro-controls-left">\n ',"ptzFogShow","logSave","zoomTips",'</div>\n </div>\n <div class="jb-pro-performance-panel-info jb-pro-performance-panel-info-1"></div>\n <div class="jb-pro-performance-panel-info jb-pro-performance-panel-info-2"></div>\n </div>\n <div class="jb-pro-contextmenus"></div>\n <div class="jb-pro-tips-message">\n <div class="jb-pro-tips-message-close">\n <div class="jb-pro-tips-message-close-icon"></div>\n </div>\n <div class="jb-pro-tips-message-content"></div>\n </div>\n ',"i18n",'\n <div class="jb-pro-performance-panel">\n <div class="jb-pro-performance-panel-tab">\n <div class="jb-pro-performance-panel-tab-btn jb-pro-performance-panel-tab-btn1 active">','\n <div class="jb-pro-controls-center">\n <div class="jb-pro-controls-playback-time">\n <div class="jb-pro-controls-playback-time-inner">\n <div class="jb-pro-controls-playback-time-scroll">\n <div class="jb-pro-controls-playback-time-list">\n <div class="jb-pro-playback-time-day">\n <div class="jb-pro-playback-time-one-wrap"></div>\n <div class="jb-pro-playback-time-second-wrap"></div>\n </div>\n </div>\n <div class="jb-pro-controls-playback-current-time">\n <div class="jb-pro-controls-playback-current-time-text">00:00:00</div>\n </div>\n </div>\n </div>\n </div>\n ','</div>\n <div class="jb-pro-zoom-expand">','\n <div class="jb-pro-ptz-btn">\n <div class="jb-pro-ptz-focus-far jb-pro-ptz-icon">\n <i class="jb-pro-ptz-focus-icon"></i>\n <span class="icon-title-tips">\n <span class="icon-title">',"showPrecisionBtn","\n </div>\n </div>\n ","ptzActive",'<div class="jb-pro-controls-item jb-pro-speed" title="网速"></div>','\n <div class="jb-pro-ptz-arrow jb-pro-ptz-arrow-left-up" data-arrow="left-up"></div>\n <div class="jb-pro-ptz-arrow jb-pro-ptz-arrow-right-up" data-arrow="right-up"></div>\n <div class="jb-pro-ptz-arrow jb-pro-ptz-arrow-left-down" data-arrow="left-down"></div>\n <div class="jb-pro-ptz-arrow jb-pro-ptz-arrow-right-down" data-arrow="right-down"></div>\n ',' <div class="jb-pro-controls-item-wrap"><div class="jb-pro-controls-item jb-pro-ptz">',"fogClose",'</div><div class="jb-pro-controls-item jb-pro-record-stop">',"2979441UOrQeu","</div></div>","expand","apertureNear","playbackTF",'\n <div class="jb-pro-controls-right">\n ','\n <div class="jb-pro-ptz-btn">\n <div class="jb-pro-ptz-cruise-play jb-pro-ptz-icon">\n <i class="jb-pro-ptz-focus-icon"></i>\n <span class="icon-title-tips">\n <span class="icon-title">',"playType","fogOpen","7814646fXhLrc",'</div><div class="jb-pro-controls-item jb-pro-performance-active">',"expandPlus","screenshot","fullscreen","4291776pJAiLf","hasControl","_opt",'</div><div class="jb-pro-controls-item jb-pro-zoom-stop">','">\n <div class="jb-pro-ptz-bg-active"></div>\n <div class="jb-pro-ptz-arrow jb-pro-ptz-arrow-up" data-arrow="up"></div>\n <div class="jb-pro-ptz-arrow jb-pro-ptz-arrow-right" data-arrow="right"></div>\n <div class="jb-pro-ptz-arrow jb-pro-ptz-arrow-down" data-arrow="down"></div>\n <div class="jb-pro-ptz-arrow jb-pro-ptz-arrow-left" data-arrow="left"></div>\n ','\n <div class="jb-pro-playback-control-time"></div>\n <div class="jb-pro-controls-item-html">',"play","occlusion",'\n <div class="jb-pro-loading-bg">\n <img class="jb-pro-loading-bg-image" src="" alt="">\n </div>\n ',"21990dPnSGW","controlType","operateBtns",'<div class="jb-pro-poster" style="background-image: url(',"close",'\n <div class="jb-pro-ptz-btn">\n <div class="jb-pro-ptz-expand jb-pro-ptz-icon">\n <i class="jb-pro-ptz-expand-icon"></i>\n <span class="icon-title-tips">\n <span class="icon-title">',"1224ZZtrEX",'\n <div class="jb-pro-zoom-controls">\n <div class="jb-pro-zoom-narrow">',"controlHtml","2026ZgzzFq","8664472CqpPOR",'</div>\n <div class="jb-pro-zoom-tips">','\n <div class="jb-pro-ptz-controls show-',"narrow","aiObject",'</div><div class="jb-pro-controls-item jb-pro-pause">',"5sPCaZf",'\n <div class="jb-pro-controls-item-wrap">\n <div class="jb-pro-controls-item jb-pro-volume">\n ',"focusFar",'</span>\n </span>\n </div>\n <div class="jb-pro-ptz-narrow jb-pro-ptz-icon">\n <i class="jb-pro-ptz-narrow-icon"></i>\n <span class="icon-title-tips">\n <span class="icon-title">','<div class="jb-pro-controls-item-wrap"><div class="jb-pro-controls-item jb-pro-close">',"add",'<div class="jb-pro-controls-item-wrap"><div class="jb-pro-controls-item jb-pro-logSave">',"apertureFar","cruisePlay","beforeend","zoomStop","expandMinus","loadingText","ptzWiperShow","object","ptzApertureShow"];return(ty=function(){return t})()}!function(t){const e=$g,s=t();for(;;)try{if(694401===parseInt(e(351))/1*(parseInt(e(352))/2)+-parseInt(e(361))/3*(-parseInt(e(356))/4)+-parseInt(e(345))/5+parseInt(e(350))/6*(parseInt(e(359))/7)+parseInt(e(347))/8*(parseInt(e(346))/9)+parseInt(e(353))/10*(parseInt(e(360))/11)+-parseInt(e(357))/12*(parseInt(e(344))/13))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Xg),function(t){const e=Zg,s=t();for(;;)try{if(735982===parseInt(e(211))/1*(-parseInt(e(204))/2)+parseInt(e(240))/3+parseInt(e(320))/4+parseInt(e(195))/5*(-parseInt(e(201))/6)+-parseInt(e(315))/7+parseInt(e(205))/8+parseInt(e(306))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(ty);var ey=(t,e)=>{const s=Zg,i=function(t={}){const e=$g,s={};return Object[e(348)](oe).forEach(i=>{const r=e,n=t[i]||oe[i];s[i]='\n <i class="jb-pro-icon jb-pro-icon-'+i+r(355)+(n?r(354)+n+r(358):"")+r(349)}),s}(t._opt[s(293)]||{}),r=t[s(267)]();t[s(322)][s(321)]&&t._opt[s(242)]?t[s(275)].classList[s(216)](s(280)):t[s(275)].classList[s(216)]("jb-pro-controls-show");const n=t[s(322)],o=n[s(197)],a=s(295)+(n[s(229)][s(298)]?s(231)+i[s(208)]+s(248)+i.expand+"</div>\n </div>\n ":"")+s(245),h='\n <div class="jb-pro-control-progress-simple">\n <div class="jb-pro-control-progress-inner">\n <div class="jb-pro-progress-hover"></div>\n <div class="jb-pro-progress-cache"></div>\n <div class="jb-pro-progress-played"></div>\n <div class="jb-pro-progress-indicator"></div>\n <div class="jb-pro-progress-tip">00:00</div>\n </div>\n </div>\n ';Tn(s(252)+(n.background?s(198)+n[s(266)]+s(260):"")+s(194)+(n[s(264)]?'\n <div class="jb-pro-loading">\n '+i.loading+'\n <div class="jb-pro-loading-text">'+n[s(223)]+"</div>\n </div>\n ":"")+"\n "+(n[s(321)]&&o.play?'<div class="jb-pro-play-big"></div>':"")+s(252)+(n[s(321)]&&o.ptz?s(207)+n[s(239)]+s(324)+(n[s(282)]?s(302):"")+'\n <div class="jb-pro-ptz-control"></div>\n <div class="jb-pro-ptz-btns">\n '+(n.ptzZoomShow?s(200)+r[s(317)]+s(214)+r[s(222)]+s(263):"")+s(256)+(n[s(226)]?s(268)+r[s(218)]+s(273)+r[s(309)]+s(263):"")+"\n "+(n.ptzFocusShow?s(297)+r[s(213)]+s(259)+r.focusNear+s(263):"")+s(256)+(n[s(270)]?s(312)+r[s(219)]+'</span>\n </span>\n </div>\n <div class="jb-pro-ptz-cruise-pause jb-pro-ptz-icon">\n <i class="jb-pro-ptz-focus-icon"></i>\n <span class="icon-title-tips">\n <span class="icon-title">'+r.cruisePause+"</span>\n </span>\n </div>\n </div>\n ":"")+s(256)+(n[s(289)]?s(258)+r[s(314)]+s(281)+r[s(304)]+s(237):"")+s(256)+(n[s(224)]?'\n <div class="jb-pro-ptz-btn">\n <div class="jb-pro-ptz-wiper-open jb-pro-ptz-icon">\n <i class="jb-pro-ptz-focus-icon"></i>\n <span class="icon-title-tips">\n <span class="icon-title">'+r.wiperOpen+'</span>\n </span>\n </div>\n <div class="jb-pro-ptz-wiper-close jb-pro-ptz-icon">\n <i class="jb-pro-ptz-focus-icon"></i>\n <span class="icon-title-tips">\n <span class="icon-title">'+r.wiperClose+s(237):"")+s(299):"")+s(285)+(n[s(287)]?s(202)+i[s(208)]+s(206)+r[s(291)]+s(296)+i[s(308)]+'</div>\n <div class="jb-pro-zoom-stop2">'+i[s(221)]+s(279)+i.recordStop+s(227):"")+"\n "+(n.hasControl?s(288)+(n.showBandwidth?s(301):"")+s(325)+n[s(203)]+s(265)+(n[s(313)]===p[s(310)]&&n[s(229)][s(232)]&&n[s(229)][s(196)]===S[s(255)]?a:"")+s(247)+(n[s(313)]===p[s(310)]&&n.playbackConfig[s(232)]&&n[s(229)].controlType===S[s(286)]?h:"")+s(247)+(n[s(313)]===p[s(249)]&&n[s(250)][s(232)]?h:"")+s(311)+(n[s(313)]===p[s(310)]&&n[s(229)].showRateBtn||n[s(313)]===p.playVod&&n[s(250)].showRateBtn?s(276):"")+s(244)+(o.close?s(215)+i[s(199)]+s(307):"")+s(244)+(o[s(290)]?s(217)+i.logSave+s(307):"")+s(244)+(o[s(234)]?'<div class="jb-pro-controls-item-wrap"><div class="jb-pro-controls-item jb-pro-performance">'+i[s(234)]+s(316)+i[s(283)]+"</div></div>":"")+s(244)+(o[s(251)]?'<div class="jb-pro-controls-item-wrap"><div class="jb-pro-controls-item jb-pro-face">'+i.face+s(236)+i.faceActive+"</div></div>":"")+s(244)+(o[s(209)]?'<div class="jb-pro-controls-item-wrap"><div class="jb-pro-controls-item jb-pro-object">'+i[s(225)]+s(233)+i[s(253)]+s(307):"")+s(244)+(o.aiOcclusion?'<div class="jb-pro-controls-item-wrap"><div class="jb-pro-controls-item jb-pro-occlusion">'+i[s(327)]+s(284)+i[s(261)]+s(307):"")+s(244)+(o.quality?s(246):"")+s(244)+(o[s(254)]?s(278):"")+s(244)+(o.audio?s(212)+i[s(228)]+s(262)+i[s(235)]+s(272):"")+s(244)+(o[s(326)]?'<div class="jb-pro-controls-item-wrap"><div class="jb-pro-controls-item jb-pro-play">'+i[s(326)]+s(210)+i.pause+s(307):"")+"\n "+(o.screenshot?s(243)+i[s(318)]+"</div></div>":"")+s(244)+(o[s(241)]?' <div class="jb-pro-controls-item-wrap"><div class="jb-pro-controls-item jb-pro-record">'+i[s(241)]+s(305)+i.recordStop+s(307):"")+s(244)+(o[s(238)]?s(303)+i[s(238)]+'</div><div class="jb-pro-controls-item jb-pro-ptz-active">'+i[s(300)]+s(307):"")+"\n "+(o[s(269)]?s(257)+i[s(269)]+s(323)+i.zoomStop+s(307):"")+s(244)+(o.fullscreen?'<div class="jb-pro-controls-item-wrap"><div class="jb-pro-controls-item jb-pro-fullscreen">'+i[s(319)]+'</div><div class="jb-pro-controls-item jb-pro-fullscreen-exit">'+i[s(271)]+s(307):"")+s(277):"")+s(294)+r[s(230)]+s(274)+r.performanceInfo+s(292),s(220),t[s(275)])};function sy(t,e){const s=ry();return(sy=function(t,e){return s[t-=150]})(t,e)}function iy(t,e){const s=sy;let i=!1;return t[s(156)](t=>{const r=s;!i&&t[r(152)]<=e&&t[r(153)]>e&&(i=!0)}),i}function ry(){const t=[":05",":00","30UAKxHO","title","push","12NsvYVs","255558qQStjD","startTimestamp","endTimestamp","</span></span>\n </div>\n ","315LSwnXR","forEach","19720mZOWqv",'\n <div class="jb-pro-playback-time-hour" data-hour="',"2182566Wkgoqx","$playbackTimeListSecond","$playbackTimeListOne"," start","hour","15Nnzdbe","3012328nzFTYx","beforeend",'">\n <span class="jb-pro-playback-time-title-tips ',"1258083FWLQXx","second","679bUSVNe",":30",'"><span class="jb-pro-playback-time-hour-text">',"insertAdjacentHTML","21503779pMDZPY","ceil",'" data-second="',"replace","8212DNELtl","rafId","hasRecord",'" data-type="',"jb-pro-playback-time-title-tips-left","timestamp"];return(ry=function(){return t})()}function ny(t=[],e=[],s){const i=sy,r=t.length,n=e.length,o=Math.max(r,n),a=Math[i(175)](o/2e3);let h=0,l=0;!function n(){const o=i;let c="",d="";for(let s=0;s<2e3;s++){const s=t[l];s&&(c+='\n <div class="jb-pro-playback-time-minute-one'+(s[o(180)]?" active":"")+(s.isStart?o(162):"")+'" data-has-record="'+s[o(180)]+'"\n data-time="'+s[o(183)]+o(181)+s.dataType+o(167)+(l>r-60?o(182):"")+'"><span class="jb-pro-playback-time-title">'+s.title+o(154));const i=e[l];i&&(d+=o(158)+i[o(163)]+'" data-min="'+i.min+o(176)+i[o(169)]+o(172)+i[o(187)]+"</span></div>\n "),l+=1}c&&s[o(161)][o(173)]("beforeend",c),d&&s[o(160)][o(173)](o(166),d),h+=1,h<a&&(s[o(179)]=window.requestAnimationFrame(n))}()}function oy(t,e){ny(function(t=[]){const e=sy;let s=[];const i=(t[0]||{})[e(152)];for(let r=0;r<1440;r++){const n=r%60==0;let o=!1;i&&(o=iy(t,$s(i,r))),s[e(188)]({title:Js(r),timestamp:r,dataType:"min",hasRecord:o,isStart:n})}return s}(t),function(){const t=sy;let e=[];for(let s=0;s<24;s++){let i=s+":00";s<10&&(i="0"+i),e[t(188)]({title:i,hour:s,min:0,second:0})}return e}(),e)}function ay(t,e){ny(function(t=[]){const e=sy;let s=[];const i=(t[0]||{})[e(152)];for(let r=0;r<1440;r++){let n=60*r,o=n%1800==0,a=!1;i&&(a=iy(t,Zs(i,n))),s.push({title:Xs(n),timestamp:n,dataType:"second",hasRecord:a,isStart:o});let h=60*r+30;o=h%1800==0,i&&(a=iy(t,Zs(i,h))),s.push({title:Xs(h),timestamp:h,dataType:e(169),hasRecord:a,isStart:o})}return s}(t),function(){const t=sy;let e=[];for(let s=0;s<24;s++){let i=s+":00",r=s+t(171);s<10&&(i="0"+i,r="0"+r),e[t(188)]({title:i,hour:s,min:0,second:0}),e.push({title:r,hour:s,min:30,second:0})}return e}(),e)}function hy(t,e){ny(function(t=[]){const e=sy;let s=[];const i=(t[0]||{})[e(152)];for(let r=0;r<144;r++)for(let n=0;n<60;n++){let o=10*n+600*r,a=o%600==0,h=!1;i&&(h=iy(t,Zs(i,o))),s[e(188)]({title:Xs(o),timestamp:o,dataType:e(169),isStart:a,hasRecord:h})}return s}(t),function(){const t=sy;let e=[];for(let s=0;s<24;s++){let i=s+t(185);s<10&&(i="0"+i),e[t(188)]({title:i,hour:s,min:0,second:0});for(let r=1;r<6;r++){let n=r+"0";e[t(188)]({title:i[t(177)](t(185),":"+n),hour:s,min:10*r,second:0})}}return e}(),e)}function ly(t,e){ny(function(t=[]){const e=sy;let s=[];const i=(t[0]||{})[e(152)];for(let r=0;r<288;r++)for(let n=0;n<60;n++){let o=5*n+300*r,a=o%300==0,h=!1;i&&(h=iy(t,Zs(i,o))),s[e(188)]({title:Xs(o),timestamp:o,dataType:e(169),isStart:a,hasRecord:h})}return s}(t),function(){const t=sy;let e=[];for(let s=0;s<24;s++){let i=s+t(185);s<10&&(i="0"+i),e[t(188)]({title:i,hour:s,min:0,second:0}),e[t(188)]({title:i[t(177)](t(185),t(184)),hour:s,min:5,second:0});for(let r=1;r<6;r++){let n=r+"0",o=r+"5";e[t(188)]({title:i[t(177)](t(185),":"+n),hour:s,min:10*r,second:0}),e[t(188)]({title:i[t(177)](":00",":"+o),hour:s,min:10*r+5,second:0})}}return e}(),e)}function cy(t,e){const s=uy();return(cy=function(t,e){return s[t-=312]})(t,e)}function dy(t){const e=cy,s=Math[e(327)](t/3600),i=Math[e(327)]((t-3600*s)/60),r=Math.floor(t-3600*s-60*i);return(s>0?[s,i,r]:[i,r])[e(312)](t=>t<10?"0"+t:String(t))[e(316)](":")}function uy(){const t=["28268dZHfPo","15029deROpQ","1032501gFCnqj","touches","36iRmPtv","21234HmvHbp","$playbackProgress","clientWidth","54IQWVTM","clientX","map","remove","1031407ivptcf","190BhEPVY","join","17wvKEwx","bottom","getBoundingClientRect","clientY","pageX","66HJHdIf","405070ZweOYL","269685JYuQiI","firstElementChild","56UDlNpp","floor"];return(uy=function(){return t})()}function py(t,e,s,i=!1){const r=cy,n=t[r(334)],o=n[r(319)]();let a,h,l=n[r(335)];i?(a=ys()&&s[r(331)]?s[r(331)][0][r(320)]:s.pageY,h=as(o[r(318)]-a,0,n[r(335)])):(a=ys()&&s[r(331)]?s[r(331)][0][r(337)]:s[r(321)],h=as(a-o.left,0,n[r(335)]));const c=parseInt(h/l*e,10);return{second:c,time:dy(c),width:h,percentage:as(h/l,0,1)}}function fy(t,e){return as(t/e,0,1)}function my(t,e){const s=gy();return(my=function(t,e){return s[t-=279]})(t,e)}function gy(){const t=["playVodSeek","playVodWaiting","getSeconds","$playbackProgress",'\n <div class="jb-pro-performance-item">\n <span>视频峰值帧率(fps) ','</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>MSE待解码帧 ',"playback","occlusionDetectActive","disabled","streamTimestamp","</span>\n </div>\n ",'\n <div class="jb-pro-performance-item">\n <span>音频播放模式 ',"togglePerformancePanel","bufferDuration","controlsInnerRect","$container",'\n <div class="jb-pro-performance-item">\n <span>窗口下标 ',"translateX(0) translateY(0) rotate(0)","$playbackCurrentTime",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>推送到解码器帧率(fps) ',"kBps","playType",'\n <div class="jb-pro-performance-item">\n <span>播放器版本 ',"scaleConfig","playVodInitSeekRemoveBackgroundLock",'\n <div class="jb-pro-performance-item">\n <span>播放倍率 ',"demuxBuffer","object",'\n <div class="jb-pro-performance-item">\n <span>网速 ',"bound","$playbackProgressCache","playingTimestamp",'\n <div class="jb-pro-performance-item">\n <span>UUid ','\n <div class="jb-pro-performance-item">\n <span>待解封装数据(byte) ',"getStreamFps","$activeIconWrap","$performancePanelInfo2","315734bpZbQk","isMobileFullscreenChangeRotate","128642UAVYHF","$extendDom","fiveMin","remove"," x ","px) rotate(-90deg)",'\n <div class="jb-pro-performance-item">\n <span>视频录制时间 ',"videoCurrentTimeDiff","</span>\n </div>\n ","orientation","useMSE","value","倍</span>\n </div>\n ","getCpuLevel",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>视频码率(bits) ',"changePercisitionInterval","is30Min","$playbackTimeListOne","buf","isBindVideo","showRateBtn","playbackConfig","tenMin","lock","decodeDelayTs","audio","getCanvasRenderType","setRotate","pushLatestDelay","playVodSeekEnd","loading","isMulti","rect","pTs","playbackCacheDataDuration","showControl","</span>\n </div>\n ","appendChild",'\n <div class="jb-pro-performance-item">\n <span>网络延迟(ms) ','</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>请求响应(ms) ',"left","createdMoment","$volumeOn","点播文件","isPlayVodUseMSE","hlsDemuxVideoLength","24pSrtYj","emit",'\n <div class="jb-pro-performance-item">\n <span>Video渲染帧 ',"audioDemuxBuffer","rate",'\n <div class="jb-pro-scale-menu-item" data-scale="','</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>页面开始渲染(ms) ',"style","hasAudio",'\n <div class="jb-pro-performance-item">\n <span>解封装模式 ',"playVodEndedAndShowPlayBtn","classList","</span>\n </div>\n ","channels","$playbackProgressPlayed","isUseHls265","isInPlayNextFrame","$controlHtml","playbackRateChange","multiIndex","</span>\n </div>\n ","videoCurrentTime","off","jb-pro-auto-orientation-fullscreen","translateX(-50%) translateY(0) rotate(0)","isPlayNotUseMSE","scrollLeft","$playbackExpand",'\n <div class="jb-pro-performance-item">\n <span>最新解封装后时间(ms) ',"push",'\n <div class="jb-pro-performance-item">\n <span>固定FPS ','</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>是否在丢帧 ',"innerHTML","$playbackTimeScroll","getWebrtcPlatform","forEach","fullscreen","isWebrtcH264","controlsLeftRect","</span>\n </div>\n ","_opt","recording","isPlayback","videoDroppedFps",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>音频格式 ','</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>初始化到页面渲染(ms) ','\n <div class="jb-pro-performance-item">\n <span>videoBuffer缓存时间(ms) ',"width",'\n <div class="jb-pro-performance-item">\n <span>视频帧率(fps) ',"isPlayVod","isInMulti","jb-pro-object-","jb-pro-scale-menu-item-active","showAfterLoading","getDecodeType","calc(",'\n <div class="jb-pro-performance-item">\n <span>视频显示时间(ms) ',"isShowZoomingUI",'\n <div class="jb-pro-performance-item">\n <span>播放器初始化(ms) ',"destroys","8850680qSQUBN","objectDetectActive","height","$loadingBg","streamResponseTimestamp","isUseMSE","playVodEndedInner","fullScreenByStart","volumechange","dfps","faceDetectActive","$occlusionDetectActive","delayTs",'\n <div class="jb-pro-performance-item">\n <span>Canvas渲染引擎 ',"getRecordingByteLength","speed",'\n <div class="jb-pro-performance-item">\n <span>缓冲的最新时间 ',"</span>\n </div>\n ","audioBuffer",'\n <div class="jb-pro-performance-item">\n <span>视频缓存时长(ms) ',"canvas","translateX(",'</span>\n </div>\n <div class="jb-pro-performance-item-block"></div>\n ',"$recordingTime","maxFps","video","dts","isPlayer","$volumeHandle",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>Video丢弃帧 ',"display","isFullscreen","$scaleText","21279xxKntm",'\n <div class="jb-pro-performance-item">\n <span>音频码率(bits) ',"controlsRightRect",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>视频待解码缓存时长(ms) ',"isWebrtc","currentPts","0 KB/s","$qualityMenu",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>MSE播放模式 ',"netBuf","playVodTimeCache","oneHour","$play","$zoomControls","$playbackTimeListSecond","controlType","playVod","viewResizeChange","isDropping","destroy","{h}:{i}:{s}","6LqvsXy","jb-pro-speed-menu-item-active",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>开始请求地址(ms) ',"startsWith","scale",'\n <div class="jb-pro-performance-item">\n <span>视频GOP(ms) ',"is5Min","decodeTimestamp",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>视频待渲染帧 ',"_serverInfo","jsHeapSizeLimit","</div>\n ",'\n <div class="jb-pro-performance-item">\n <span>播放时长(s) ',"change","$zoomStop",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>Video丢弃帧率 ',"isAudioNotMute","webFullscreen","block","contentDocument","isAudioPlaybackRateSpeed","$performancePanelInfo1","getPlayVodDuration","jb-pro-ptz-controls-show","volume","$speed","$qualityMenuList","isScreenNowRow","isAliyunRtc",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>最新待解码缓存时长(ms) ',"audioInfo",'\n <div class="jb-pro-performance-item">\n <span>网络请求组件 ',"px) translateY(","rafId","playVodPause","simple","$objectDetect","100%","px)","streamBuffer","audioTs","aria-hidden","getMinutes",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>浏览器可使用内存 ',"streamQuality","mseTs","isPlayFailedAndPaused","528101QGBQJH","src","removeLoadingBgImage and play vod use mse (or use video src) and playVodInitSeekRemoveBackgroundLock is true and return",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>视频格式 ',"$speedMenu","qualityConfig","audioBufferDelayTs",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>浏览器已使用内存 ',"setAttribute","innerText","playbackPrecision","$recordStop","isEnded","mseDelay","getRecordingDuration","$speedText","$loading","$playbackTime","label","totalDuration","stats","normal","absolute",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>解码模式 ','</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>音频采样率 ',"$performancePanel","$volumePanelText","TAG_NAME",'\n <div class="jb-pro-performance-item">\n <span>CPU压力情况 ',"operateBtns","$playbackNarrow","beforeend","getPlayVodBufferedTime",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>视频时长(s) ',"quality","$performance","</span>\n </div>\n ","playVodTime","$ptz",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>视频分辨率(宽x高) ',"listenWindowResizeAuoResize","isUseFpsRender","rotate(0)","389705EzoGaY","isUseWASM","type",'\n <div class="jb-pro-performance-item">\n <span>播放模式 ',"none","getPlayVodFps","动态FPS","isOldHls","zooming","$faceDetect","usedJSHeapSize","demuxTimestamp","$playbackCurrentTimeText","\n ","length","$tipsMessage","84nvOFYF","flex","playVodRateChange","$performanceActive","isWCSDecodeAudio","streamQualityChange",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>HLS待解码音频帧 ',"playbackTime","\n\n ",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>视频录制大小 ',"add","abps","getRenderType","text/html","removeLoadingBgImage","\n ","直播流","playbackTimeScroll","$poster","$playBig","jb-pro-fullscreen-rotate","$scaleMenuItems","showPerformance",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>MSE缓存时长(s) ',"then","top","$playbackProgressIndicator","MB</span>\n </div>\n ","videoDecodedFrames","playing","_times",'\n <div class="jb-pro-performance-item">\n <span>浏览器内存大小 ',"encType","isMSEDecodeAudio"," / ","recordingTimestamp","playTimestamp","isStreamTsMoreThanLocal",'\n <div class="jb-pro-performance-item">\n <span>音频待播放缓存帧 ',"$iconWrap",'\n <div class="jb-pro-performance-item">\n <span>渲染组件 ',"566316huytUS","$objectDetectActive","dataset","playFailedAndPausedShowPlayBtn","$fullscreen","$volumeOff",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>视频待解码帧 ',"% - ","extendBtnList","\n ","controlsPlaybackBtnsRect","abs",'\n <div class="jb-pro-performance-item">\n <span>WASM申请内存 ',"hasControl","playVodConfig","playVodCanplay",'<div class="jb-pro-performance-item">\n <span>HLS缓存时长(ms) ',"debugLog",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>解码帧率(fps) ',"portrait","$record",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>音频通道 ',"totalJSHeapSize","rateConfig","$zoom","isPlaying","true","$pause",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>音频待播放缓存时长(ms) ',"hlsDemuxLength","$speedMenuList","tabindex","$recording","$loadingBgImage","isPaused",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>解码(ms) ',"$ptzActive","resize",'\n <div class="jb-pro-performance-item">\n <span>音视频同步时间戳(ms) ',"controlsPlaybackTimeInner","$occlusionDetect","find","$ptzControl","isPlayVodMp4UseVideoSrc",'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>显示器分辨率(宽x高) ','\n <div class="jb-pro-performance-item">\n <span>视频待解码帧 ',"fps","showBandwidth","control","kbpsShow","totalDelayTs","transform","playbackVideoBuffer","allTimestamp","px) translateY(-","$volumePanel","固定FPS","videoTimestamp","sampleRate","removeChild","events",'\n <div class="jb-pro-performance-item">\n <span>音频显示时间(ms) ','\n <div class="jb-pro-speed-menu-item" data-speed="','\n <div class="jb-pro-quality-menu-item" data-quality="',"$faceDetectActive","$playbackProgressTime","$screenshot"];return(gy=function(){return t})()}!function(t){const e=sy,s=t();for(;;)try{if(660262===parseInt(e(155))/1*(parseInt(e(178))/2)+-parseInt(e(151))/3+-parseInt(e(165))/4+parseInt(e(164))/5*(-parseInt(e(159))/6)+parseInt(e(170))/7*(-parseInt(e(157))/8)+parseInt(e(168))/9*(-parseInt(e(186))/10)+-parseInt(e(174))/11*(-parseInt(e(150))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(ry),function(t){const e=cy,s=t();for(;;)try{if(185759===parseInt(e(317))/1*(-parseInt(e(333))/2)+parseInt(e(330))/3+-parseInt(e(328))/4*(parseInt(e(315))/5)+parseInt(e(336))/6*(parseInt(e(329))/7)+parseInt(e(326))/8*(-parseInt(e(324))/9)+parseInt(e(323))/10*(parseInt(e(322))/11)+-parseInt(e(332))/12*(-parseInt(e(314))/13))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(uy),function(t){const e=my,s=t();for(;;)try{if(107450===-parseInt(e(321))/1+-parseInt(e(319))/2+parseInt(e(460))/3*(-parseInt(e(587))/4)+-parseInt(e(571))/5*(parseInt(e(481))/6)+-parseInt(e(528))/7+parseInt(e(367))/8*(-parseInt(e(628))/9)+parseInt(e(427))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(gy);var yy=(t,e)=>{const s=my,{events:{proxy:i}}=t;let r=null,n=null,o=null,a=null;const h=e.eventListenList,l=e[s(311)];if(t[s(407)][s(568)]){r=document.createElement(s(309)),n=s(418)+ki(),r[s(536)](s(522),s(654)),r.setAttribute(s(659),-1),r.setAttribute("id",n),r[s(573)]=s(600),r.data="about:blank",hs(r,{display:"block",position:s(550),top:"0",left:"0",height:s(518),width:"100%",overflow:"hidden",pointerEvents:"none",zIndex:"-1"}),o=t[s(414)],a=t[s(429)];const C=Ds(()=>{const e=s;(t[e(414)]!==o||t.height!==a)&&(o=t[e(414)],a=t.height,t[e(368)](q.resize))},500),D=i(r,"load",function(){const t=s,e=i(r[t(500)].defaultView,t(665),function(){C()});h[t(396)](e)});h[s(396)](D),t[s(297)][s(358)](r)}l[s(479)]=()=>{const e=s;if(r)try{if(!En(r)){const s=t[e(297)].querySelector("#"+n);s&&t[e(297)]&&t.$container[e(687)](s)}}catch(t){}f&&(clearInterval(f),f=null),m=null,y=null,b=0,r=null,n=null,o=null,a=null},t.on(q[s(479)],l[s(479)]),l[s(435)]=()=>{!function(t){const i=s;if(0===t)hs(e[i(363)],"display","none"),hs(e[i(633)],i(457),i(588)),hs(e.$volumeHandle,"top","48px");else if(e[i(455)]&&e.$volumePanel){const s=ls(e[i(683)],i(429))||60,r=ls(e.$volumeHandle,i(429)),n=s-(s-r)*t-r;hs(e[i(455)],i(612),n+"px"),hs(e.$volumeOn,"display",i(588)),hs(e[i(633)],i(457),i(575))}e[i(554)]&&(e[i(554)].innerHTML=parseInt(100*t))}(t[s(505)])},t.on(q[s(435)],l.volumechange),l[s(351)]=i=>{const r=s;e.isInitPlayer=!1,hs(e.$loading,r(457),i?"flex":r(575)),(xi(t[r(407)].backgroundLoadingShow)&&Pi(i)||xi(i))&&hs(e.$poster,r(457),r(575)),i&&(hs(e[r(606)],r(457),"none"),hs(e[r(586)],"display",r(575)),e[r(636)].forEach(t=>{const e=r;t[e(362)]===ie[e(351)]&&(t[e(626)]&&hs(t[e(626)],e(457),"flex"),t.$activeIconWrap&&hs(t[e(317)],e(457),e(575)))})),!i&&t[r(407)].extendDomConfig[r(420)]&&e[r(322)]&&hs(e.$extendDom,r(457),r(499)),!i&&t[r(599)]()===A[r(447)]&&xi(t[r(407)][r(331)])&&c()},t.on(q[s(351)],l[s(351)]),l.removeLoadingBgImage=()=>{const i=s;t[i(306)]&&(t[i(365)]()||t[i(671)]())?t[i(645)](e[i(555)],i(530)):c()},t.on(q[s(601)],l[s(601)]);const c=()=>{const i=s;e.$loadingBgImage&&e[i(430)]&&e[i(661)][i(529)]&&(t[i(645)](e[i(555)],"remove loading bg image"),e[i(661)][i(414)]=0,e.$loadingBgImage[i(429)]=0,e[i(661)][i(529)]="",hs(e[i(430)],i(457),"none"))},d=()=>{const e=s;if(t[e(403)],v(),ys())if(t._opt.androidMobileFullscreenRotate)t[e(403)]?t[e(508)]()&&(t[e(297)].classList.add(e(607)),t[e(348)](270)):(t[e(297)][e(378)][e(324)](e(607)),t[e(348)](0)),w(()=>{k()});else{if(!screen?.orientation?.lock)return;const s=screen[e(330)][e(573)];if(t[e(403)]){const i=t[e(414)],r=t[e(429)],{clientWidth:n,clientHeight:o}=document.documentElement;if(i>r&&n<o||i<r&&n>o){const i=s[e(484)](e(647))?"landscape":e(647);screen[e(330)][e(344)](i).then(()=>{pn(t[e(297)],"jb-pro-auto-orientation-fullscreen")})}}else mn(t[e(297)],"jb-pro-auto-orientation-fullscreen")&&screen[e(330)][e(344)](s)[e(611)](()=>{const s=e;fn(t.$container,s(390))})}},u=e=>{li(e)===t.$container&&d()};let f=null,m=null,y=null,b=0;function v(i){const r=s;if(xi(t[r(653)]()||t[r(662)]()))return;let n=js(i)?i:t[r(403)];hs(e.$fullscreenExit,r(457),r(n?588:575)),hs(e[r(632)],"display",n?"none":r(588))}function E(){const e=s;return t[e(407)][e(303)]===p.playbackTF&&t[e(407)][e(342)][e(356)]}function w(i){const r=s;e.$controls&&t[r(320)]()?setTimeout(()=>{const s=r;if(t[s(403)]){const i=t.getControlHeight(!1);let r=t.height/2-t[s(414)]+i/2,n=t.height/2-i/2;if(e.$controls[s(374)].transform=s(448)+-r+s(682)+n+s(326),e[s(473)]){const i=156,r=30,n=t.width/2+i/2-r/2;e[s(473)][s(374)][s(679)]=s(448)+-n+s(513)+t.height/2+"px) rotate(-90deg)"}if(e[s(660)]){const i=101,r=20,n=t.width/2+i/2-r/2;e.$recording[s(374)][s(679)]=s(448)+-n+s(513)+t.height/2+s(326)}e[s(670)]&&(e[s(670)].style.transform="rotate(-90deg)")}else e.$controls[s(374)][s(679)]=s(299),e[s(473)]&&(e[s(473)][s(374)][s(679)]=s(391)),e[s(660)]&&(e.$recording[s(374)][s(679)]=s(391)),e[s(670)]&&(e[s(670)][s(374)][s(679)]=s(570));i&&i()},10):i&&i()}try{Ae.on(s(494),u),t[s(688)][s(426)].push(()=>{Ae[s(389)]("change",u)})}catch(L){}function T(){const i=s;t[i(616)]&&(hs(e.$zoom,"display",t[i(579)]?i(575):i(588)),hs(e[i(495)],i(457),t[i(579)]?i(588):"none"),(t[i(407)][i(641)]||t[i(407)][i(424)])&&hs(e[i(473)],i(457),t[i(579)]?i(588):i(575)))}function I(i){const r=s;i?(hs(e[r(472)],r(457),r(575)),hs(e[r(606)],"display",r(575)),t[r(409)]()&&(hs(e[r(545)],"display",r(499)),hs(e.$controlsPlaybackBtns,r(457),r(588)),hs(e[r(285)],"display",r(588))),t[r(416)]()&&hs(e[r(285)],r(457),r(588))):(t[r(527)]&&xi(t[r(407)][r(631)])?(hs(e[r(472)],"display",r(575)),hs(e[r(606)],"display",r(575))):(hs(e[r(472)],r(457),"flex"),xi(t[r(383)])&&hs(e[r(606)],"display","block")),e[r(506)]&&(e[r(506)][r(399)]=function(t){const e=es;if(null==t||""===t)return"0 KB/s";let s=parseFloat(t);return s=s[e(694)](2),s+e(501)}("")),hs(e.$zoomControls,r(457),"none"),hs(e.$recording,r(457),r(575)),e[r(670)]&&e[r(670)][r(378)][r(324)](r(504)),t[r(416)]()&&t[r(407)][r(377)]&&t[r(476)][r(540)]()&&(hs(e[r(472)],r(457),r(588)),hs(e[r(606)],r(457),"block"))),hs(e[r(655)],r(457),i?"flex":"none"),hs(e[r(281)],r(457),i?"flex":"none"),hs(e.$record,"display",r(i?588:575)),hs(e[r(467)],r(457),i?r(588):"none"),hs(e.$volume,r(457),r(i?588:575)),hs(e[r(566)],r(457),r(i?588:575)),hs(e[r(652)],"display",i?"flex":r(575)),hs(e.$scaleMenu,"display",r(i?588:575)),hs(e[r(580)],r(457),i?"flex":"none"),hs(e.$objectDetect,r(457),r(i?588:575)),hs(e[r(668)],r(457),r(i?588:575)),hs(e[r(384)],r(457),i?r(588):"none"),(t[r(409)]()||t[r(416)]())&&hs(e[r(532)],r(457),i?"flex":r(575)),v(),e.extendBtnList.forEach(t=>{const e=r;t[e(362)]===ie[e(616)]&&(t[e(626)]&&hs(t.$iconWrap,"display",e(i?588:575)),t[e(317)]&&hs(t[e(317)],e(457),e(575)))}),t._opt.showPerformance?hs(e.$performanceActive,r(457),r(i?588:575)):(hs(e[r(563)],"display",r(i?588:575)),hs(e.$performanceActive,r(457),r(575))),hs(e[r(605)],r(457),"none"),hs(e[r(664)],r(457),r(575)),hs(e[r(539)],r(457),r(575)),hs(e[r(495)],r(457),"none"),hs(e[r(279)],r(457),r(575)),hs(e[r(629)],"display",r(575)),t.isPlayback()&&(k(),i&&_()),t[r(579)]&&i&&T()}function k(){const i=s;if(E()&&t[i(407)][i(342)][i(475)]===S[i(549)]){let s=e.controlsInnerRect[i(414)]-e[i(405)][i(414)]-e[i(462)][i(414)]-e[i(638)].width;ys()&&t[i(498)]&&(s=e[i(296)].height-e[i(405)].height-e[i(462)][i(429)]-e[i(638)][i(429)]),e.$playbackTimeInner[i(374)][i(414)]=s+"px"}}function _(){const i=s;if(!function(){const e=s;return E()&&t[e(407)][e(342)][e(475)]===S.normal}())return;const r=e[i(300)][i(374)].left;let n=parseInt(r,10);const o=e[i(667)][i(414)];n=n-o/2>0?parseInt(n-o/2,10):0,e.$playbackTimeInner[i(393)]=n}if(l.webFullscreen=t=>{ys()&&(v(t),w(()=>{k()}))},t.on(q[s(498)],l[s(498)]),l[s(434)]=()=>{d()},t.on(q[s(434)],l[s(434)]),l[s(408)]=()=>{const i=s;t[i(616)]&&(hs(e[i(648)],i(457),t[i(408)]?i(575):i(588)),hs(e[i(539)],"display",t[i(408)]?i(588):i(575)),(t[i(407)].hasControl||t[i(407)].isShowRecordingUI)&&(hs(e[i(660)],i(457),t.recording?i(588):i(575)),xi(t[i(408)])&&e[i(450)]&&(e[i(450)][i(399)]=Qs(0))))},t.on(q[s(408)],l[s(408)]),l[s(622)]=t=>{const i=s;e[i(450)]&&(e[i(450)][i(399)]=Qs(t))},t.on(q[s(622)],l[s(622)]),l.zooming=()=>{T()},t.on(q[s(579)],l[s(579)]),l.playing=t=>{I(t)},t.on(q.playing,l[s(616)]),t[s(409)]()&&(l.playbackPause=t=>{I(!t)},t.on(q.playbackPause,l.playbackPause)),l[s(302)]=i=>{const r=s,n=function(t){const e=es;if(null==t||""===t||0===parseFloat(t)||"NaN"===t)return"0 KB/s";const s=[e(596),e(501),e(592),e(383),"TB/s","PB/s",e(401),e(399),"YB/s"];let i=0;const r=parseFloat(t/8);i=Math[e(414)](Math.log(r)/Math[e(586)](1024));let n=r/Math[e(431)](1024,i);return n=n[e(694)](2),n+(s[i]||s[0])}(1e3*i);e[r(677)]=n,t[r(407)][r(675)]&&e[r(506)]&&(e[r(506)][r(399)]=n),k()},t.on(q.kBps,l[s(302)]),E()){function R(){const i=s;if(E()){let s=0;const r=t[i(288)]&&t.playback[i(313)];if(r){const n=new Date(r),o=n.getHours(),a=n[i(523)](),h=n[i(284)]();t[i(288)].is60Min?s=60*o+a:t.playback[i(337)]?s=2*(60*o+a)+parseInt(h/30,10):t[i(288)].is10Min?s=6*(60*o+a)+parseInt(h/10,10):t[i(288)][i(487)]?s=12*(60*o+a)+parseInt(h/5,10):t[i(288)].is1Min&&(s=60*(60*o+a)+parseInt(h,10)),hs(e[i(300)],i(361),s+"px")}}}function P(t){const i=s;e[i(558)][i(378)][i(324)](i(290)),e[i(394)][i(378)][i(324)](i(290)),t===ft[i(471)]&&e[i(558)][i(378)][i(597)](i(290)),t===ft[i(323)]&&e[i(394)].classList[i(597)](i(290))}l[s(594)]=i=>{const r=s;if(t[r(407)][r(342)][r(475)]===S[r(549)])e[r(583)]&&(e[r(583)][r(537)]=Ts(i,r(480))),R();else if(t[r(407)][r(342)][r(475)]===S[r(516)]){const s=fy(i,t[r(288)][r(547)]);hs(e.$playbackProgressPlayed,r(414),100*s+"%"),hs(e[r(613)],r(361),r(422)+100*s+r(635)+7+r(519)),e[r(280)]&&(e[r(280)].innerText=dy(i)+" / "+dy(t[r(288)][r(547)]))}},t.on(q[s(594)],l[s(594)]),l[s(538)]=(i,r)=>{const n=s;E()&&t[n(407)][n(342)][n(475)]===S[n(549)]&&(e[n(400)][n(378)][n(324)](mt[n(471)],mt.halfHour,mt[n(323)],mt[n(343)]),e[n(400)][n(378)][n(597)](mt[i]),e[n(514)]&&(window.cancelAnimationFrame(e.rafId),e.rafId=null),e[n(336)]&&(clearTimeout(e[n(336)]),e[n(336)]=null),e[n(338)][n(399)]="",e[n(474)][n(399)]="",e[n(336)]=setTimeout(()=>{const s=n;switch(e[s(338)][s(399)]="",e[s(474)][s(399)]="",i){case ft[s(471)]:oy(r,e);break;case ft.halfHour:ay(r,e);break;case ft[s(343)]:hy(r,e);break;case ft.fiveMin:ly(r,e)}R(),t[s(407)][s(342)].showPrecisionBtn&&P(i),_()},16))},t.on(q[s(538)],l[s(538)]),l.resize=()=>{w(()=>{k()})},t.on(q[s(665)],l[s(665)]),l[s(604)]=()=>{_()},t.on(q[s(604)],l[s(604)]),k()}if(t.isPlayVod()&&(l[s(515)]=t=>{I(!t)},t.on(q[s(515)],l[s(515)]),l[s(565)]=i=>{const r=s;if(e.$playbackProgress){const s=fy(i,t[r(476)].totalDuration);hs(e[r(381)],r(414),100*s+"%"),hs(e[r(613)],r(361),"calc("+100*s+r(635)+7+r(519)),e[r(280)].innerText=dy(i)+" / "+dy(t[r(476)].totalDuration)}},t.on(q[s(565)],l[s(565)]),l[s(470)]=t=>{hs(e[s(312)],"width",100*t+"%")},t.on(q[s(470)],l.playVodTimeCache),l[s(283)]=()=>{const t=s;hs(e[t(544)],t(457),t(588))},t.on(q.playVodWaiting,l.playVodWaiting),l[s(643)]=()=>{const t=s;hs(e.$loading,t(457),t(575))},t.on(q.playVodCanplay,l[s(643)]),l[s(282)]=()=>{const t=s;hs(e[t(544)],t(457),"flex")},t.on(q[s(282)],l.playVodSeek),l[s(350)]=()=>{const t=s;hs(e.$loading,"display",t(575))},t.on(q[s(350)],l[s(350)]),l[s(433)]=()=>{const i=s;e[i(285)]&&(hs(e[i(381)],i(414),i(518)),hs(e[i(613)],"left","calc(100% - 7"+i(519)),e[i(280)][i(537)]=dy(t.playVod[i(547)])+i(621)+dy(t[i(476)][i(547)]))},t.on(q[s(433)],l[s(433)])),t[s(407)].operateBtns[s(562)]&&t[s(407)].qualityConfig[s(585)]>0){function x(t){const i=s;e.$qualityText[i(537)]=t,e.$qualityMenuItems[i(402)](e=>{const s=i,r=e[s(630)][s(562)];e[s(378)][s(324)]("jb-pro-quality-menu-item-active"),r===t&&e[s(378)][s(597)]("jb-pro-quality-menu-item-active")})}function M(){const i=s,r=t[i(407)][i(533)]||[];let n="";r[i(402)](t=>{const e=i;n+=e(691)+t+'">'+t+e(492)}),n&&Tn(n,"beforeend",e[i(507)])}l[s(592)]=t=>{x(t)},t.on(q.streamQualityChange,l.streamQualityChange),M(),t.streamQuality&&x(t[s(525)])}if(t[s(407)][s(557)][s(485)]&&t[s(407)][s(305)][s(585)]>0){function B(i){const r=s,n=t[r(407)].scaleConfig[i];e[r(459)][r(537)]=n,e[r(608)].forEach(t=>{const e=r,s=t.dataset.scale;t[e(378)][e(324)](e(419)),_s(s)===_s(i)&&t[e(378)][e(597)](e(419))})}function F(){const s=t._opt.scaleConfig||[];let i="";s.forEach((t,e)=>{const s=my;i+=s(372)+e+'">'+t+s(492)}),i&&Tn(i,"beforeend",e.$scaleMenuList)}l[s(477)]=t=>{B(t)},t.on(q[s(477)],l[s(477)]),F(),B(t.scaleType)}if(t[s(409)]()&&t[s(407)][s(342)][s(341)]&&t[s(407)][s(342)][s(651)].length>0){function U(i){const r=s,n=t[r(407)].playbackConfig[r(651)][r(669)](t=>_s(t[r(332)])===_s(i));n&&(e[r(543)][r(537)]=n[r(546)],e.$speedMenuItems[r(402)](t=>{const e=r,s=t[e(630)].speed;t[e(378)].remove(e(482)),_s(s)===_s(i)&&t[e(378)].add(e(482))}))}function O(){const i=s,r=t[i(407)][i(342)][i(651)];let n="";r[i(402)]((t,e)=>{const s=i;n+='\n <div class="jb-pro-speed-menu-item" data-speed="'+t.value+'">'+t[s(546)]+s(492)}),n&&Tn(n,i(559),e[i(658)])}l.playbackRateChange=t=>{U(t)},t.on(q.playbackRateChange,l[s(385)]),O();U(t[s(288)]&&t[s(288)][s(371)]||1)}if(t[s(416)]()&&t[s(407)][s(642)][s(341)]&&t[s(407)][s(642)][s(651)][s(585)]>0){function N(i){const r=s,n=t._opt[r(642)].rateConfig[r(669)](t=>_s(t[r(332)])===_s(i));n&&(e[r(543)][r(537)]=n.label,e.$speedMenuItems[r(402)](t=>{const e=r,s=t[e(630)][e(442)];t[e(378)][e(324)](e(482)),_s(s)===_s(i)&&t[e(378)][e(597)](e(482))}))}function V(){const i=s,r=t[i(407)][i(642)][i(651)];let n="";r.forEach((t,e)=>{const s=i;n+=s(690)+t[s(332)]+'">'+t[s(546)]+"</div>\n "}),n&&Tn(n,i(559),e[i(658)])}l[s(589)]=t=>{N(t)},t.on(q[s(589)],l[s(589)]),V();N(t[s(476)]?t[s(476)].rate:1)}l[s(548)]=(i={})=>{const r=s;if(t[r(407)][r(609)]){hs(e[r(553)],"display",r(499)),e[r(502)].innerHTML="",e[r(318)].innerHTML="";const s=fs,n=Ni(),o=t[r(334)](),a=Ws(o)&&-1!==o?""+Ot[o]:"",h=t[r(452)]&&t[r(452)].videoInfo||{},l=t[r(346)]&&t.audio[r(511)]||{},c=t[r(617)]||{},d=t[r(599)](),u=t.isPlayer()?r(603):t.isPlayback()?"录播流":r(364),p=t[r(620)](),f=t[r(591)](),m=t[r(676)]?t.control[r(677)]:r(466),y=t[r(490)]||"",b=t[r(671)](),v=t[r(407)][r(375)]&&t[r(497)]()&&xi(f)&&xi(p)&&xi(b),S=t[r(454)]()&&xi(t[r(404)]()||t[r(509)]()||t.isOldHls()),E=t[r(464)]();let w=r(584)+(n?r(618)+Ps(n[r(491)])+r(524)+Ps(n[r(650)])+r(535)+Ps(n[r(581)])+r(564):"")+r(584)+(a?r(556)+a+r(379):"")+r(584)+(n&&n[r(581)]>n[r(650)]?'\n <div class="jb-pro-performance-item">\n <span>可能内存泄漏 是}</span>\n </div>\n ':"")+'\n <div class="jb-pro-performance-item">\n <span>播放模式 '+u+r(329)+(t.isPlayback()?'\n <div class="jb-pro-performance-item">\n <span>播放倍率 '+t[r(288)][r(371)]+r(333):"")+"\n "+(t.isPlayVod()?r(307)+t.playVod[r(371)]+r(333):"")+r(584)+(S?r(486)+(t.videoIframeIntervalTs||"-")+r(444):"")+r(584)+(t[r(408)]?r(327)+Qs(t[r(542)]())+r(596)+Ps(t[r(441)]())+"</span>\n </div>\n ":"")+r(584)+(xi(b)?r(461)+i[r(598)]+r(335)+i.vbps+r(329):"")+r(415)+i[r(674)]+r(329)+(S?r(286)+i[r(451)]+r(301)+i.p2dfps+r(646)+i[r(436)]+"</span>\n </div>\n ":"")+r(584)+(t.isAudioUseAudioContext()?r(625)+i[r(445)]+r(656)+i[r(534)]+r(379):"")+"\n "+(t[r(392)]()&&S?r(673)+i[r(308)]+'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>音频待解码帧 '+i.audioDemuxBuffer+r(463)+i[r(295)]+'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>待解码缓存时长(ms) '+i.buf+r(510)+i[r(349)]+r(357):"")+r(584)+(t.isPlayback()?r(446)+i[r(355)]+r(489)+i[r(680)]+r(634)+i.demuxBuffer+'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>音频待解码帧 '+i[r(370)]+r(379):"")+r(584)+(S?r(315)+i[r(520)]+r(329):"")+r(584)+(t[r(407)].useMSE&&!t.isPlayVod()?'\n <div class="jb-pro-performance-item">\n <span>MSE缓存时长(ms) '+i[r(541)]+r(287)+i.msePendingBuffer+r(610)+i.mseStore+'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>MSE解码时间(ms) '+i[r(526)]+r(468)+(i.mseDecodePlaybackRate>1?"加速":"正常")+r(564):"")+r(584)+(t[r(578)]()?r(644)+i.hlsDelay+"</span>\n </div>\n ":"")+r(584)+(t[r(382)]()?r(644)+i.hlsDelay+'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>HLS待解码帧 '+i[r(657)]+'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>HLS待解码视频帧 '+i[r(366)]+r(593)+i.hlsDemuxAudioLength+r(387):"")+r(584)+(t[r(454)]()&&i[r(615)]?r(369)+i[r(615)]+r(456)+i.videoDroppedFrames+r(496)+i[r(410)]+"</span>\n </div>\n ":"")+"\n "+(S?r(359)+i[r(469)]+r(379):"")+r(584)+(t[r(340)]()?'\n <div class="jb-pro-performance-item">\n <span>video显示时间(s) '+i[r(388)]+'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>video间隔时间(s) '+i[r(328)]+r(379):"")+r(584)+(t[r(340)]()&&xi(b)?r(413)+(S||t[r(432)]()?i.mseVideoBufferDelayTime:i[r(339)])+"</span>\n </div>\n ":"")+r(423)+(i[r(465)]||i.ts)+r(329)+(v?r(689)+i[r(521)]+r(292)+(t._opt.hasVideo?r(666)+i.audioSyncVideo+r(406):"")+r(293)+(t[r(501)]()?"加速":"正常")+r(292):"")+r(584)+(xi(b)?r(395)+i[r(453)]+r(329):"")+"\n "+(S?'\n <div class="jb-pro-performance-item">\n <span>解码延迟(ms) '+i[r(345)]+'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>解封装后-解码后延迟(ms) '+i[r(439)]+'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>总延迟(网络+解码)(ms) '+i[r(678)]+r(379):"")+r(584)+(t[r(454)]()&&i[r(624)]?'<div class="jb-pro-performance-item">\n <span>是否超过一倍率推流 是</span>\n </div>\n ':"")+"\n "+(S?'\n <div class="jb-pro-performance-item">\n <span>是否播放流畅 '+i.videoSmooth+r(398)+i[r(478)]+r(564):"")+r(584)+(t[r(416)]()?r(443)+dy(t[r(560)]())+r(379):"")+r(584)+(xi(b)?r(310)+m+r(329):"")+r(493)+Qs(i[r(354)])+r(449),T=r(304)+s+r(329)+(y?'\n <div class="jb-pro-performance-item">\n <span>服务器信息 '+y+r(564):"")+"\n "+(t[r(407)][r(352)]?r(314)+t[r(407)].debugUuid+r(564):"")+"\n "+(t[r(417)]()?r(298)+t._opt[r(386)]+r(564):"")+r(595)+(t.isPlayback()?r(574)+(t.playback[r(569)]?r(684):r(577))+r(564)+(t[r(288)].isUseFpsRender?r(397)+t[r(452)][r(316)]()+r(292):"")+r(602):"")+r(376)+g[t.getDemuxType()]+r(551)+t[r(421)]()+r(329)+(t[r(572)]()?r(640)+i.wasmTotalMB+r(614):"")+r(584)+(E?'\n <div class="jb-pro-performance-item">\n <span>Webrtc平台 '+t[r(401)]()+r(564):"")+r(627)+d+r(329)+(d===A[r(447)]?r(440)+t[r(347)]()+r(564):"")+r(512)+t.getStreamType()+r(531)+(h[r(619)]||"-")+r(567)+(h[r(414)]||"-")+r(325)+(h[r(429)]||"-")+r(672)+screen[r(414)]+r(325)+screen.height+r(411)+(rt[l[r(619)]]||"-")+'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>音频引擎 '+(t.getAudioEngineType()||"-")+r(649)+(l[r(380)]||"-")+r(552)+(l[r(686)]||"-")+r(329)+(S?r(425)+c[r(623)]+r(483)+c[r(291)]+r(360)+c[r(431)]+'</span>\n </div>\n <div class="jb-pro-performance-item">\n <span>解封装(ms) '+c[r(582)]+r(663)+c[r(488)]+r(373)+c[r(685)]+r(412)+c[r(681)]+r(379):"")+"\n "+(t[r(416)]()?'\n <div class="jb-pro-performance-item">\n <span>视频FPS '+t[r(576)]()+r(561)+t[r(503)]()+r(379):"")+r(637);Tn(w,r(559),e.$performancePanelInfo1),Tn(T,r(559),e[r(318)])}else e.$performancePanelInfo1[r(399)]="",e.$performancePanelInfo2[r(399)]="",hs(e[r(553)],r(457),"none")},t.on(q[s(548)],l[s(548)]),l[s(294)]=t=>{const i=s;hs(e[i(563)],i(457),i(t?575:588)),hs(e[i(590)],i(457),t?i(588):"none")},t.on(q.togglePerformancePanel,l[s(294)]),l.faceDetectActive=t=>{const i=s;hs(e[i(580)],i(457),t?"none":i(588)),hs(e[i(279)],i(457),i(t?588:575))},t.on(q[s(437)],l[s(437)]),l[s(428)]=t=>{const i=s;hs(e[i(517)],i(457),t?i(575):"flex"),hs(e[i(629)],i(457),i(t?588:575))},t.on(q[s(428)],l[s(428)]),l[s(289)]=t=>{const i=s;hs(e[i(668)],i(457),i(t?575:588)),hs(e[i(438)],i(457),t?"flex":i(575))},t.on(q[s(289)],l[s(289)])};function Ay(){const t=["zoomExpand","3633006sliENK","$playbackTimeInner","quality","jb-pro-ptz-controls-show","target","currentTarget","mouseup","playFn","3450433FFNSmV","ptzExpandTimeout","streamQuality","jb-pro-ptz-control-","$speedMenu","apertureNear","style","innerHTML","$occlusionDetectActive","fullscreenFn","$objectDetect","$playbackProgressTip","$ptzApertureNear","$tipsMessageClose","$volumeOff","ptzCruiseShow","mouseout","fiStop","tempPtzPosition","occlusionDetect","offsetLeft","$screenshot","$volumeOn","$fullscreen","$ptzCruisePause","playbackPreRateChange","$playbackProgressIndicator","_lastVolume","$tipsMessage","pauseFn","controlAutoHide","zoom","aiOcclusion","$ptzArrows","div.jb-pro-scale-menu-item","dataset","$volumePanel","left","add","fogOpen","$ptzFocusNear","controlAutoHideDelayTime","play","forEach","wheel","TAG_NAME","playbackTF","isPtzControlDroging","_opt","remove","$performancePanelBtn1","operateBtns","delayHiddenTimeout","aiFace","volume","screenshot","expandPrecision","$scaleMenu","$ptzExpand","$faceDetectActive","playVodForward error","playVodResumeInner","$ptzCruisePlay","$qualityMenuList","second","$logSave","ptzFogShow","$performanceActive","cursor","push","4312304lpCbRZ","percentage","grabbing","jb-pro-quality-menu-shown","playType","15778089bRVsNZ","$ptzControlCircular","jb-pro-scale-menu-shown","arrow","recordStopFn","clientWidth","$volume","$playbackExpand","zoomNarrow","pauseForControl error","$volumePanelWrap","playbackPause","$record","4TbbbTJ","then","zooming","ptzApertureFarTimeout","jb-pro-speed-menu-shown","Timeout","$ptz","logSave","speed","$ptzNarrow","575817nebeuB","$zoom","$ptzFogClose","isMobileInFullscreen","top","playVodConfig","$speedMenuList","mousedown","hasControl","$pause","ptzZoomShow","getBoundingClientRect","debugLog","ptzClickType","isVolumeDroging","playVodPauseInner","down","record","totalDuration","$ptzFogOpen","eventListenList","video","audio","scale","$zoomStop","$ptzApertureFar","div.jb-pro-speed-menu-item","$faceDetect","$ptzFocusFar","showRateBtn","playback","$volumeHandle","$performancePanelInfo2","$play","$ptzBgActive","matches","active","playVodSeek","faceDetect","playbackConfig","ptz","click","narrowPrecision","wheelDelta","isFocus","1738587hDrWoW","playbackResumeInner","mouseDownAndUp","$recordingStop","controlType","simple","$ptzControl","classList","ptzFocusNearTimeout","offsetTop","cruiseStart","$objectDetectActive","move","stop","$zoomExpand","ptzArrow","togglePerformancePanel","apertureFar","supportWheel","$playbackTimeList","none","mouseover","focusFar","$zoomNarrow","screenshotFn","ptzApertureNearTimeout","uiUsePlaybackPause","1346372XduLax","resumeAudioAfterPause","fullscreenExitFn","focusNear","playVodPauseInner error","ptzFocusFarTimeout","$scaleMenuList","jb-pro-ptz-bg-active-show","playForControl error","block","$ptzActive","playVod","$container","playVodSeek error","mousemove","emit","contextmenu","$controls","detail","stopPropagation","$playbackProgress","playForControl","$performancePanelInfo1","cruiseStop","seek","ptzSupportDraggable","ptzStopEmitDelay","ptzNarrowTimeout","catch","5gtOMFG","div.jb-pro-playback-time-minute-one","isDroging","flex","objectDetect","display","downloadMemoryLog","ptzWiperShow","fullscreen","jb-pro-ptz-bg-active-","grab","ptzFocusShow","recording","playVodResumeInner error","doDestroy"];return(Ay=function(){return t})()}function by(t,e){const s=Ay();return(by=function(t,e){return s[t-=208]})(t,e)}function vy(){var t=["1787622zDbzby","718975eHqDvq","appendChild","insertBefore","798pJbRxh","2104808ozsayR","633291lZeaXr","undefined","text/css","head","type","getElementsByTagName","102136glfLru","3758220uHsZAM","style","createTextNode","styleSheet","6249160EQsjdU"];return(vy=function(){return t})()}function Sy(t,e){var s=Ey;void 0===e&&(e={});var i=e.insertAt;if(t&&typeof document!==s(414)){var r=document[s(416)]||document[s(400)]("head")[0],n=document.createElement(s(403));n[s(417)]=s(415),"top"===i?r.firstChild?r[s(410)](n,r.firstChild):r[s(409)](n):r.appendChild(n),n[s(405)]?n[s(405)].cssText=t:n.appendChild(document[s(404)](t))}}function Ey(t,e){var s=vy();return(Ey=function(t,e){return s[t-=400]})(t,e)}!function(t){const e=by,s=t();for(;;)try{if(432027===-parseInt(e(294))/1+-parseInt(e(366))/2+parseInt(e(339))/3*(parseInt(e(284))/4)+parseInt(e(395))/5*(-parseInt(e(411))/6)+parseInt(e(419))/7+-parseInt(e(266))/8+parseInt(e(271))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Ay),function(t){for(var e=Ey,s=t();;)try{if(724892===parseInt(e(408))/1+-parseInt(e(412))/2+parseInt(e(413))/3+parseInt(e(402))/4+-parseInt(e(406))/5+-parseInt(e(407))/6+-parseInt(e(411))/7*(-parseInt(e(401))/8))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(vy);function wy(){const t=["tagName","148914naIFAW","TEXTAREA","getAttribute","arrowLeft","INPUT","60beAWaG","keys","_opt","hotKeySeekStep","20668qklJKQ","toUpperCase","playVodBackwordJumping","3fZNAHe","5646XSxiNA","396194quqcIV","playVodForwardJumping","arrowRight","forEach","hotKeyVolumeStep","100iQYocJ","2324BMuiGo","contenteditable","esc","eventListenList","isFocus","arrowDown","keyCode","103332NSelrC","1790296MolaLn","121VjkmMe","push","fullscreen","arrowUp","isPlayVod","volume","158958CpQtKG","activeElement"];return(wy=function(){return t})()}function Ty(t,e){const s=wy();return(Ty=function(t,e){return s[t-=340]})(t,e)}Sy('@keyframes rotation{0%{-webkit-transform:rotate(0deg)}to{-webkit-transform:rotate(1turn)}}@keyframes magentaPulse{0%{background-color:#630030;-webkit-box-shadow:0 0 9px #333}50%{background-color:#a9014b;-webkit-box-shadow:0 0 18px #a9014b}to{background-color:#630030;-webkit-box-shadow:0 0 9px #333}}.jb-pro-container video::-webkit-media-controls{display:none!important}.jb-pro-container .jb-pro-icon{cursor:pointer;width:16px;height:16px;display:inline-block}.jb-pro-container .jb-pro-ptz-controls{position:absolute;width:156px;height:156px;visibility:hidden;opacity:0;border-radius:78px;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAATgAAAE4BAMAAAA9UfJZAAAAMFBMVEUAAABHcEy0tLRZWVmysrKoqKi1tbWvr6+2traBgYG1tbWWlpa1tbW1tbVUVFS1tbVGCHqkAAAAD3RSTlMzAO9U3LSWySp3aZcVRDUDw823AAAJYUlEQVR42u3d32sbVxYH8EPHxgg/lBsa7SBkukmpSbwLI2KbEPpgZ5MQtwmM0wRMmgdhP6RgEuwlSVnYlmGMYaEvMU1KKX4QNq0pocVmm7CYfRBaQguFpbgPKRSC/4V2LGliO+bulWKrkvVrftyZ+WbxeTRG+nDnnnNmRjP3EpMR6tMH18du/0Xj1tGz5+9cf/DUlPKx5PsTkr8s3eZ1cX7ym1zkuI/f1wTFunNt9fP+FIno7/98/tFY+Y8ffBUlLrmkl2Cr96guTv27BMxP5iLCqUvi68+tpqhJKPNXBH3SjACnfimm/7Wmsl3fI/FP75lh457oPH+1Da3M+1T8481QcT0T7UetevR618LDPdH4hTlyHLGH3LoZEk6d4PlvyVW8pfNeMwzcDwa/kCKXoTzk9tfB455o1mXyEIOa+0PrFvcFt+fIU8QM/k6guOQifzNFHkN5l/flgsOJVHibfMR9l2nhBqem+VXyFZ/xghkMTp3il8lnDPKiGQROhs2lzjEuKcVW1uWk4ybk2Eq63pxk3CK/RZLiJO+Ti/vZXw3ZX1E+kon7jv+JJMY/+Q15uIRWIKmRthZk4VTDTsnFKYZtSsItWiskObq1Pjm4f8gqIrUF5W8ycAl+nAKIT/iCf1zSKFAgkW4/7drifrLmgsHF2k87alvhblFAcbJttWuDU/VtCiyyedMXbjGfCg6n6H1+cHE+TQFGFx/3jksa2xRoZO2cZ9xsUJn6e8aOeMX1aGco4Biw1jzilm0KPNJb3nBxvhI8rrtVTlCLK5ptCiEyBS+474POhr2c+NA9Lqm/QaHEiXzONW42yN5Q2ydG3OLU4MvI7+XEdImbCWvgSkN3zB1O1YYptOhoNnRNcDM2hRjGMTc4VZsOE9fVZOioyYyjUKPJrKPGNW44XFxX41rXEPc4vFTdS9iLTnFJ4wyFHAO2U1zcSoWNU7RLDnFTb1DocaLoDJfgc+HjYo3uTjTArW9TBJHdcYJTtdEocJ0NCnE97nGBIon0RQc4YzgaXIfdHhdBHdmrJuNtceubFFFkdtrhVG0lKlx3XUrsxz22KbIwLrbBTQ1Hhxsotsb18FR0OIWvtcT9Z5sijOyfW+KM6ShxXXYrXMJKRYlTtIUWuLubFGlknrXAGaPR4jrt5riERRFH7XGtwc1sRo3LHGuKi/qo7j+uhJOr9flKMBW4QR2uxk1NR4/rKjbGRdpXG/bXKtxrAEdVHNfTDXHLf0TAvbLVCJfU5hBwMSvXABfPE0To4w1wP25i4DLPG+CmRjFwncV6nIpQSF4UE7MOd7hAIJG+VIe7u4GCG3pWh0uPouA6C/txMFOuetIR3JSrmnQEN+WqJh2BVbmaSreLS+JMudKky9Xg4jYBRXq8BndoEwmXOVKDWx5GwnVs1eD0OSRcLF+N67EIKrS1Klx8GwuXHa/C/biBhRt6XoVbnsbCdW1V4bDyoZIRZZwKlg8iI8wKLl5Aw73oEWXcoQ003NCRCm59GA3XsVPBTa2g4bqLFZyWQsMp1h6uJ09woa/t4tCaV6WBEWSy7qYrQSbrbroS2MVNzUUOAXbWSnel0sU+AUbpsl/gEjYizlgo4w5vI+Kyl8o4xEryopYI3N1hRFzHszJueRQR17lVxqXnEHGxQhmHd06yd15CgBcQlcsIYokCJi69IHDxbUycOGki9toGJm7otMC9/ism7tXfBA6zBperMIHW4HIVJsDrwsrVIYE2CNEibIHDbBDlFkFJ0AYhWkSOemxUnLFGqN2r1L8ItXuV+hfFN1FxmXH6wwYqbuivdAgXd4RQ+36p8xNq3y91flqfRsV17dD6KCquc4eWcXFbtLyCiusu0hQ0bg4VFytSGhdXICOFilNs0nFx+QOcZ5xGsGEd4DzjOC6OH+A847QD3P9jtuJ2CGjcQeP3gYM+2YQ+TYe+wMG+NETGQd+OgL6RA30LDPrm4eu/ouJe/Q37hjX0rX7oH0mgf16C/mEO+idN6B+DoX9Gx34AAfrRDeiHXqAfF0Lt/OUHrVAfUcucRn+4D/qxSOgHSqEfxcV+iBn68W/EV3AqD85Dv3IA/bIG9GsumC8IaSb+q1XYL6VBv84H/SIk9Cuk0C/fQr+2jP3CN/Sr8tCLDEAvzwC9sAX0kiDYi6lAL0MDvYAP9NJH0ItGYS+3Bb1QGVaP2LfEG/TieNDLCmIvyAi9lCX0IqDQy6diLzwLvWQv9GLH0MtER76rRqWxPgdemtwYf9kWdYdeDh97IwHoLRigN6/A3vYDesMU6K1msDfpgd7eiOmjSEf1ZdpSC3ozMuht3LA3wIPeOjDSTRdfKb7M21VCb/QJvUUq9uay0NvyYm9oHFFKdDvaChp6E23s7cehN25nh5G3vE8aZ8LGDdjMIY49zoc9dPpFx7ikHnIh7sjnHOPYTMj36oxjzDlO1UI9Xe9oUICb49iMDTBwzXCqFuKsG2gycM1wYtaFlrCK3mTgmuJU7UzkA9cUx2bDGjpFH2FucUk9pA57onGNa4lj31uhnJzEtA+ZexxLh3KpkykwL7g4D+GUuJuPe8Kx5RCuJtJbzBuuJ/hyMmCtecSx2aBzIqaNMK+4pBHwtU7WznnGiZwI9Oykq1U2tMWxxSD7hKL3MT84VQ/wwGbzpi8c+47fCsp2kt9g/nDsp6AyNqb1Mb+4pBFQKU7bpm8cS/DjQdg+aXT/wTWOzfLL8m2DfITJwLFFS/oZQHf7CecQpxq25GqnGO0nnEMcS2iSq13WWmCycKLaHZebDDeYPBz7mb8tz3aff8Rk4tiivJQd5H1MLo5NyNIN8t6cbJw6ZV2WYys6tTnHCZ2MsRM2k8nHSdG5srnBMTXNr/qzfcYLLmyucEyd8FdR7vNeNzZ3OJZc5G967mTKu7wvx4LDMfYFtz2efMYM/o7LL3OLY080byVlULNusqBx7AeDX3B9aJWH3P6aBY8rpUX+W3e2t3SXqeAZVzq0/JyLmRe7wt0fUs849t8Jzv/u8Ngq/+K8d42FhxODp/P8VQc85VPxjzc9folXHFO/1Lh1rc3BjT0S//SeycLGCd6Sxvm51abDp8xf4dyaNL1/gw+caBhLuvj6O6v36mWn5scEPe+H5hMn4uP3hUEAr63e6y+PYX//qflHY+U/fvCVzw/3ixPD98vSbV4X5ye/yfn+aP+4MvDpg+tjZ4+K8bKOnr1z/cFTU8rH/g92biFxn2S73AAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%;transition:visibility .3s,opacity .3s;right:43px;bottom:135px}.jb-pro-container .jb-pro-ptz-controls.show-vertical{right:43px}.jb-pro-container .jb-pro-ptz-controls.show-vertical .jb-pro-ptz-btns{left:0;top:156px}.jb-pro-container .jb-pro-ptz-controls.show-level{right:163px}.jb-pro-container .jb-pro-ptz-controls.show-level .jb-pro-ptz-btns{min-height:156px;left:144px;top:0;display:flex;flex-direction:column;justify-content:center}.jb-pro-container .jb-pro-ptz-controls.jb-pro-ptz-controls-show{visibility:visible;opacity:1}.jb-pro-container .jb-pro-ptz-bg-active{visibility:hidden;opacity:0;width:156px;height:156px;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAATgAAAE4CAMAAAD4oR9YAAAAM1BMVEX///////////////////////////9HcEz///////////////////////////////////85yRS0AAAAEXRSTlO5DCgVgZBxAK2fQDRkBR5XTPLKM/gAABnnSURBVHja7F0Jkqs6DGQPO9z/tD8Jq6WWbCCvIjKfzAGmulrW3ooedr6ui+M4TdP++SXPr1l/SdL3aRrHhv7ZyA5qb9xe0L3Am+DrkzeCL/BeX908MezTuPsfOArdgl3KsZuhq99fk/Tx3waum+ByAHua5QbYilkzY1aP728YhrH5InrfBa57OLAtVjpRbYaumex04dq4APeC7vnVSfo/45bXLe33jGscMx3f0A1vyg3t69e2dRL/NeA6wrgdcCvjyPM2U25mXDt9xVD3f/qN0yi3Mm6P20S54vlXtGPS/R3GPSbYOsC4ZAvmJtiaGiL3Zlzx/Ht+Y/KXTJXbqmaqe9za1VYn3N7YpX/OVGev2qduOLIiB7xqOzGuWCiXFVmWtU3368A5lkqeOJI21I5XXaORxVRnxmUTdNnY/4U3riNvHMJts9XRtdXVUttipdzrK/4x7UyY6sK4Gbo+nU21T1zKcd9AGJetlMvyLKvj3zXVfeqQElMljINx3MK4xVQ3xj2Ry7N/6CiMOIfYyVUXWxUyBx7HuZRbcHt9bf/Lb9zsHlzKzabauJaK47iVcC7jJujS33/joKkmxDnM4QiJ4xDjZuT+DXQW3jgxV012qcPuiePhCGfchlv1/P0D6Czmqmuq2gPGkbIS8Q4ZsNU3dGP3Y2+cW1RyKpkrbAnwqhi3iXHFHrU3bFVV5c3vBsCsOALjkXErAW85F3rjFvBm5Kos+TngCOXYG7fA1ojFER7GPUHbmer0tfGPANeROM6pjvDMQSkrsWQ1d564Fbr61964TvSqDa6O0ELmAtvGuc2rrpQrn/aa/qCpYq+6mSpOVhnjWBy38u2JXFl9yL8acg6CV3Ur5yxVZfW4AsRxG+XKssz6n3njVMYR4Eg8sj1yi3tgtroxrpyhG38gc+h8PYddPQ551dVQW5jju2/cG7kXdB946Uy9cbDnQOpxuCCHcq5dHDcht8D2/K67VxPNGtLJd7qDTcgb1zLGbXEcY9z0Fd39GReTzIH1B/2lcxrGTYxjXnXyqxNyef8zpipVlfDsyCCmDkuumhGvWq6W+vyisqxvDJwwOxJQO6fNmjaQcRt0ZdR2dwWOFZViuculNWtgBZjk+DNq1cq45y+Lf5NxE25B3oEyLueFJWqtT+Ciqr8r48jsCAyAG+2Na53MAdQxX16VhHEL4Z7Ilc2dGad28pskaULiEdDlyijjdqa6gBeNtwSu63AnP3V6NUnAG9cu1RHOuL2hVi5qr6+9Za4qV0dCGcfCEfDIufWRFbsZvKy7KeNgW7XHvRqxWfOGLhO6XCrjoiiPb/rGdZ75uGRfj9u3B1sWAEtdLuxVF/Cq9HaMe4A4TptkZYwLqI44rmGDbUe5E8hZcg54zquRbHXu5NN6HKuO7N84YqwbdGV/Q8YF5arUN7CJTNLkgplD5T5xG+OOI2ehAhxv00ocOlpWwhHwljns5uNg6bxCb9wbueSupip6VTnj2jGudSvnOeqrVo6h7vl2nHM2K8AkV1WyfDYDvHUcWF+1VBl3EDlLKdc2dQ6aNbhXw2eAt14Nf+MqFse5rDuS8tucHUmhqaJppYF6B8440h7E8cjhqMTiLtcaAL+ga9jWZb35hpbHceyNI9WRSmHcE7n4jqbqTp2D2nnzgm154mB1hJQy1cwBIpd3twCOrjnEoDsoTZ2jepybb2VKrhpx3zB92Z29Khpl1ZN8MHWzJV1CdYQHJEeqTMbqcfEMW+obLBwES83w7AgvY0YlMNT3N96GcXEHGQdxG2t3CQ5kDkoFeO8esHd4fc193jinAtxvXhUN3Ywz5VAFGM3cENfgVM4x5YICYRumqu5yIVMdJuhaLXMAFWBKOIhbWFBiO44Dg4Usxx/cCrDyxqESMIYuu4lX1fYcGnVaaVmtKXZxHOzW5Bvfqtk3iLAFuVaLew4HluDUzIH1VYMZF+AgLMZxcAYY1uNYBTgrwPDIaqxOQ1p540IchBFTJW9c2ofNAO99Q+sYaugbJ35Vd4sKsPbGqVM33KsWmdpXLeXqufsVNwhH8FyhOh8n74foKb5WVDr0zFky1Rgt+iaJZyJTWErKMynpqsqgVy4q0xv0VTvZq0pJPq5jzn41zzzVET0aCYjmTO05OLaaBEwWqhvSenUkKtVw5P0N96mOpNr2YCPuh4AJCGEAoioDver7628Sx8WAcU2i1eM259AWhZBzuQEJieN07JR6sCHgXoSLnepI7yo9NqgCLE5A6K4hjHGKsVqK49JYEGyBg4XIq2b7FREUx5Xu2LkXOtmz2pJBW5sOqdjJF3sOjHG5fz7OT7n8DtURwjjPtBKtx7VLOa6Q4zh5Wkn8xhvU4xbG9al/s2bAbxwYkJO7XCGME43VIuMc56Dnqi7hpPE4cVopBLnibozTp5X4DHAQ49iwfsCX3IhxYFoJB8C0y7Xr1iwBSZXDulIUjF11G6+qr5aPALlCmTrfyWfQzCEK49xoPMnnjFMaq3QlX9tzQPuq0QFbLeNbMU6cHRn3Sb60HwJ6NXAhKQi61nzpPAbtQaY8jUUgQnRHSodxZSjjoig161W7HePIRGZDJzJHQXiEzE4DpRtSjotCHzkUkhj2qqJi4V54T1S6cWwVp/nhjAP1JQuDhbs4TtFW0spKTgW4UHJVFv4GQpcZA64jkt1xDNS8lDEv9Y3z5KpRGY4biIINMC7e2lxKNFJDqUfQquGZA2yrHoINUM7G6ZX1iVM2RKDUI08dssVUfduDRyI5QDkbFWCnscrWVWV1/RZ2uaRc9UyKL1LO0r7q1qwBm761WsmEUjdge9ApAB9iHHWslq4kMalHTbHQieO0zXKljHmIc4XdOE695yCpsg7eOE7t5B/4Uqv1uDSGKhDYq0r6yQWYj5NnRw5BNxjOHJAKRJB+nJqr4jcuOki4qOzs5qrgulSDJzJHUcyrCNMdOc44ty5nel815KDZ4HTypeoILAEfZJxbCjYkSpVKgZx/IpOfXgnarDkKXWIrHAm7kiTqxw1er+oQzg2Bj32FTcYJ2kpCIx9PK2XMq1ZCz+EM46LYZK4qaCsdmo+TqiOV5FWPITdYLZ2jOqYa/6LN8kJSZT1dxkSTJEYKmZ2/OuI5aIYYh+UzKn3TN9A9mLjL1cl6LexKkqof575xVJWVx3HRefdgUbGQNGs2U2Ul4HYQ60o+HeBzjCtt9VXVqXMpc3DEzh2NzEJSnr7OuG35wUTpPGjqXN3lQgdE0AWRA2sOHls1eO2yh/uqWM1LbUgvQzeatOhR5NZM39QIBNyQbviBVajYItbOYa56knCbrRrUj0vxTn5QVQlOnUtdrjKKztuqpbMEJ27WtCG3BzX9uMPfYqsmlW7SPnRfFeSqwTrAp9641VZtXi1PlX1VN44THzlvPe4k45aZLys9h+7cvuqsAqEpBAm6I9HJN24pZ9oIRzp5XzVUsVCZOnd0Ry4zbu52GdMBDn7j+NVyYXaEneW6+sbNrQcjtwdJCTh4WmlrSLcF3axRZ4AvMC6zxjj9annty1X9M8BoefBMQGKudB5UjnMnMltQV1JuD5JK5jnGTUU52zeke+4cfMJ7ygxwSZuDJ6EbzDEuZF+VNLnczCETlPdkdf3Tj5yhAHhNVdV9VXgJGV9JyqWjjRdS1fWRs6vmRctK1KuiLD/b22q2KyvlWJT1HOPeo3IWqyNwlwtrxJNrlwW69ZNr0qKnoBsfNrWVcH+w9gzIFXxDeisr5cxSrzCusFVWkpVukH7coF/0zQRt0a2QGZ1HLrfAuIfDOL/uiLOTz9UMMiTmtXMOVXmxW/P+OqM6wPBKEmLcbuiGMw4lq9cmIPbewa5iIb3LdYxxKHMouYDcSeRqcxd9+dS5VFWCGZd3e9DtR5+21dbYRd/1EAaagUC6IzDLV7YHj4pSKbmDkZRLnmRNcHeQ3azZdvLJ9qCUOVyhXGVmQUSpx9GWAzNW6Y0DmYMzrbTeHjzxxTeI41zktugXtQezAsRxon7caUt9VZZMMQ7pAPMnjnTyB5lxJHPgU+enGTeajONUHWB46wfW41jmAE79nHerNiYyFeXpBu/keycyM8983CWv+sxWLe2rsgpwH7qRxPuqb7pl6IKe61RPYpcbvefQy3e58LSSbwY4B071CuNKk31VtswlTyuJ+6oZuss1h3HVCTEDluZb7Ks6prqrjijlOLTLxRlXUhng85RLo+77por7qp5c1fUN8I1Tbw9eqce9ArkvA6eqxOOr5UQGgrdVC1l5GszHnYSuNsC4OKgeF6au73S5Mt983IU3bvwqcN3jAe9y9VgkvvHPskp7DuI9h7PfYOGNw3EcH7rx91XRPbNPT2TOEbCNNw7uJOGhG+naD8+5PG/cJcI9gYu/CxuYVuqd+6reHbgBWqrvavlV5LLvAqfdc6AFYElcyW1IS0eScqg7ch65/MvABXW5ElWvZXDiOL2Tz3VHzn7Vt4F7iNuDobMjwp7DUh3hfKs+EQCbAs43O9KgG9KDrK6vMe5qIPdd4NS7XFLi4NxzADf0eEPa8aqX1lV35REjb5zac1geuYVwtfjGbTmXsJH0qf7g14Hz9xzE9iD0qigewTv5F71qaeKNwz0HXI+jb5zLODABQWaAP+MbXA2SbxdH9KlzMjw9jvAUMr72o6363hQ4VyQ+lU+vkH70ALVFM2cnP8f1uOojhLPgVZnWI7y9Enjtcr+TT/qDJdj0LW9tqlgFQtUdYQfNQupxnHE3dw5aripmDgOcOt90gHOpOvKRF85EOCJKPSrVEa/y9D9QLDQEXKco3UiqVPtdrjZIIxNuSEeX+qomc9U+3S/WUIUgvD2o7nJ9UnfECnAPWQUiSOu8HYKERz6oO2IDuE7THcHOATIO9xzQhnT1IcblVhjnagRp8QjZVw1gHOFb9ZnSuY1OvutVe3/86w4Be7XOc6GvetsuF47jAq5dElFWn9a5oJF5YUDOBHCdds9BzRw2xrWy1jl946qrC6tfb0i7uWoKZ0eaoJs1e8LR+6pQPy66GMiNhqaV4ljbc/DqjrTC1fL8n/RVa0ummiI1r0a/yyUPT2dcXBR08s9Cl9gVpdKvEvgO00LB7qta585g4eP7jIuDxEXdaSV87TID91WdiUx67uf011lkHBTea/R6HN1XhTdr0AmROw9Pd1h5euurJvxKEh2e9uyrfnYn38q4vnp7cLchXXuVbtxdLoFx1UVtpWnv0uLNGudquTCROXj2HHI6riRK791zJakjIxDKRGatMI5fu8z81y4vzU5bE2yJmYLyFsc1jaythPcc+CW4j2grGVi71GTQgnLV1tFrQduDUj3uWvwb27p2Sefjel/PAXXy+QywoFh4IZKrTF67lC6I1H6NTHEGOBeWB88LoVm6dimoGaxO1a+RiafOpX3V8r7yGayOuZfPgGsOQhy3V4Fgew7wSlJ5hXG1aY1Msj2IK8B0BAK8cYIIxBXG9bZuD6ZUlCqk5zC0x/Yczh9YtSVK9ZA3pAN6Dqq6vnAo9ANx3Ndl0LazXPK0kq/n4J06F+45XMkc7Ajv0Sy/VzZrpAsiLUnyhZ38fQX4vOqIOXX9o9cutRlgfZfrSuZgTVxU9KrKPQdQOgd3CZB7OO9VzcnZ4pYDHddnkoVSrprlAXe5ynN5gxF1/Vi7ocenp7XdcueJyxSt8wtjhRYku2EcB3Hb1LxqHMb9192VJTmuw7DxSsfxdv/Tvn7TSceiAEpylqYnH/lWsWBRXABMVLHQ8B4cjvWUfN1xTYU6wJEqqy7y1ynBEIGt8ycqBxe2BGh3JEt3hO3HtXjm0KFJ/kHIOTDCmEUM2RFMH9ygn8N+WoNmDpcLZEgfFuz2pQPMKof7eHBME0RsxAVX3OFS1Y/Zj77jtGQ34nLRWjVeHtFF/pOIc2EvRdf1m/2UKy11s+8qtXzmAKQMhiNNTDefqiWtFIlkQqEbNJFuO7g6oqr84p8PC710IxN0R0bK5VIFV2svTx9CnCPTxspm1iiGiBKeptmh26tAYOXpp+y3HSGuqUwnONzIZN7bRAdYp4bDZpee5qq5OsAKcdTQISjykUjmM/aq3lRZK3rH6a5SOMmPZw5BQ47yQ05rvm3NVVXhkLCs0YqF2EN60A4iw8Ev1dtcNXvmsGK+qukh/QIRtEHE06cK1fXtKRfLqoTLRadcw8Ev1ZkTXBXzVdkdt5k1PvtQo/24I604520lvq0EFAvxXLXlytPHpjUXcRU4tTuiJvkx4EbugxHojrRJTn4p5jY3gcspucLQKW0lVnNhFQhF5ir+VhsvgZsN/Tji9cOcVybD6wcOuQ5MuXpxirhyt0tTea9NTPKLEVf7CdzMaZdZbpd0Pw6LZ1wiN7PhWGpwk1Uz/BzQDsSEnOB6vXT+cLscntoB3sQZ4qiaV/qOixjSJYgrBNwwu0OcSYKzzbe1ExwYrF6InFdpVp3EG+IIJSlsnWv9uEQ/DrMH497IcOgt4hNxC9vXv2b5ElhU32fuuF78IQ4r3XyreV3NST5V86K16uG6YRF3iIt1gJscxRbgE9oG88E2oa5fdMu14h9x5pZX2I9DuaGn+nGXmOdw6PHrvh+X9OWagGdNbzCkI5uk7NhpwHliSDf2sIY4wQHl6ZysWvoaqcUz4hLyGUrsfF85QIZIvASsh1zZsYsA54qTDyuHSAViM7wH+x6NarDWeRHiFpHT3HE1g5zldsk6wEDOdiiwJejFJeKYvaqtWEhFqShfFSkWHikaPHZH0qJUxEOvnK9a4CE9ibvACVQsbMLKwWTWGP6qMeKOAW6o3AWOXHHZ/TiD55BGXHZW3UScfqqPVdbGMjSLa1VVcRG+KmRI53fOOxGnn2piedpgSK9GB5h0MssBVzsM3AwdfXPuuFh3ZGLaonBUk3/J9eIfcXDmcC1RLEwotgTvuDzIDY3LwM1z0kMam/1gjcyWjQePq7VscjrE2YuFxNHMLFWB1vlwKDO4rlX1tj7ROidZNc1XzZJPZh/q73O5BPBVo90R5PaTyKqYPVhcdK3iGXHxJB8RRLT14KZYl1FW7RJa5zkf6uw2cJJ8x5kbmcDsx+yO6NglQreInO+Oy9oBNry348qh2M5hFTkH4sysihA3WXNVvAIciQSVtH2d745kdZUYQ9pa1o8QNxzLqO4m+eFcNRk6BLmWiHZ3gK+a+FZH8Y444q9qbuuTmcMLlad7Ee+Iq9gOcNJ7cFqZDjCXOs98AV9m8Y84OFitI7fLK0VcwHPoqZ+Dks+wPtRhEf+IS4kZ1ElqOZrW3CBH+ar2O24U34GT8rmqntWsif24jjFrrCtuEjkD4qC2kpqrjrQ9cpDLZXlIt+I+cEl/VernsB7Zj9PTQZIYKjkX4iCz5go7mYpZY2qdI77qH+M9MtRyGsQZXC5rrzBWnt77OQCNzKB2YIi7ipwDcZXJ5YJS54p32UM/h84WAmZZdZMTBE435LLt3sm2foajbyqtTnKCwCkVCFMlHnKSpkhev4UdYHDHke5IK2cIXKACYbuWm7UqVp7uzDsOI66bzxE4ogKBZg5ZtWqCIR2+4wDiLtl2s84m+VW8ra+YNXZ3BHaA4VwVvn8vjcipEJezr8/UDOgOMDeYYv24ZGXvtzuS0Y9jO8AT3QHmnPzhz9G4OZs5QKIvFgJW40FYqraAWRP4OQSRK4qbM55Dxpeqd4B/uiNTmj1oVg5ZhZbvKZdi1mBHMyIuanPydXdk97GW4U28GZqFSjdL8h2nkgN+x7E7bo+40rj50AHOkTq3NYIQ4tpolRXKi36/Q0rj5m2uWkV81ZS6/hRvK/XRyIHRHIby95v/d1y9WEk1lmW1uVx4XekWua4SOSHiKuZnZu3HYXV9yh6EPIc74NojBuQe9uMqUz+ujp4jI+2dt6w7Qp3ghuw+krNaNctBrwYqaNB7MHgAdyk/h5K+pdfx4GzusoafKujHRR3gDu/HhfpxfxF3lTMGbrZtCdB+XIi4KDegmQPagbh1zsufIY4QV2ltJcVXDTn5EeKKuFyqcmgrOWng9g05pZG5RFvnd8SNtDuiPKRbw9H3/ztumkVOjrg5ra2kEIe7IxBx4e7IA3DjMwf3eMfhh9xovH/73dZ5n9cBHrpFzhs4hbhgB5iqeaH5IGDWtCazZuhnOXHg5jmdVX9mDte0u9TjAQz9HB6Iu4zPHt2v7kgNe+cb3FbqeVa9qBfw39C1jZw9cMBDmr7jwqHDylzL+5Sfw2V9wcn9Iy5qZFoTaZRV9b7+k1nB55Sr2gEOaysFiFO+tCSrhqsj2yzyjyAu3lYCHnojyap85gAdfV9wu3l+x2V0R36INSvWAUbvuMvzydRprWogTmfVO+AI4uB+XF/JvxK4UHekMZRucHdkQhsQvdqPuwGurV95cl+LhUR3hPfjTN5lkFa78bUH97StdEdcOJC277h0bvgO24ty6RkQV5OtG5Pn0GIy19S8/OCeKofojlu47gjVT+4/EjZvdu9grnq1uVxAB1il1beEzRtBJJQICv1VMeKU93a0OzItbzq5k90RgLhl+XGCqy3ERdYrO0fftXnb2T3VqjfE5aigMbf3YANirN54co93XMjJT20rhWteP5Hrr/NbT+7xjoPMctOzJkqq6/Luk3u84+7vuGUBSzeBweoE3yPTm8Hm444LiA5gyMXuuJU56G3NR07uAXHVwwo5fgBTf1Xo2rjVnzq7r6yK1LwSr5HHHTdt9fy5k5/R7XLcJdX7FbeOy2dP7trPweQ57FRZx7r6+Mndq3ldEzrAY938ysl9uiQ1cJNVa2SO16X6tZP/dj8uDqJW2VfM/O/ftf7FmPkK3OMZ3MAu8G3T6ytiTTU7OK8jxMlfuN1idg/X91/9VUZ81WOVo8P+Bw+0DogP6NDPAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-ptz-bg-active.jb-pro-ptz-bg-active-up{transform:rotate(-90deg)}.jb-pro-container .jb-pro-ptz-bg-active.jb-pro-ptz-bg-active-left{transform:rotate(180deg)}.jb-pro-container .jb-pro-ptz-bg-active.jb-pro-ptz-bg-active-down{transform:rotate(90deg)}.jb-pro-container .jb-pro-ptz-bg-active.jb-pro-ptz-bg-active-left-up{transform:rotate(-135deg)}.jb-pro-container .jb-pro-ptz-bg-active.jb-pro-ptz-bg-active-right-up{transform:rotate(-45deg)}.jb-pro-container .jb-pro-ptz-bg-active.jb-pro-ptz-bg-active-left-down{transform:rotate(135deg)}.jb-pro-container .jb-pro-ptz-bg-active.jb-pro-ptz-bg-active-right-down{transform:rotate(45deg)}.jb-pro-container .jb-pro-ptz-bg-active.jb-pro-ptz-bg-active-show{visibility:visible;opacity:1}.jb-pro-container .jb-pro-ptz-control{position:absolute;left:53px;top:53px;width:50px;height:50px;background:#fff;border-radius:50%;transition:left .3s,top .3s}.jb-pro-container .jb-pro-ptz-control.jb-pro-ptz-control-left{left:33px}.jb-pro-container .jb-pro-ptz-control.jb-pro-ptz-control-up{top:33px}.jb-pro-container .jb-pro-ptz-control.jb-pro-ptz-control-right{left:73px}.jb-pro-container .jb-pro-ptz-control.jb-pro-ptz-control-down{top:73px}.jb-pro-container .jb-pro-ptz-control.jb-pro-ptz-control-left-up{top:39px;left:39px}.jb-pro-container .jb-pro-ptz-control.jb-pro-ptz-control-left-down{left:39px;top:67px}.jb-pro-container .jb-pro-ptz-control.jb-pro-ptz-control-right-up{top:39px;left:67px}.jb-pro-container .jb-pro-ptz-control.jb-pro-ptz-control-right-down{top:67px;left:67px}.jb-pro-container .jb-pro-ptz-icon{position:relative}.jb-pro-container .jb-pro-ptz-icon:hover .icon-title-tips{visibility:visible;opacity:1}.jb-pro-container .jb-pro-ptz-btns{display:block;position:absolute;left:0;top:156px;width:156px;box-sizing:border-box;padding:0 30px}.jb-pro-container .jb-pro-ptz-btns .jb-pro-ptz-btn{display:flex;justify-content:space-between}.jb-pro-container .jb-pro-ptz-expand .jb-pro-ptz-expand-icon{display:inline-block;width:28px;height:28px;cursor:pointer;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAMAAABF0y+mAAAANlBMVEVfX19fX19fX19fX19fX19fX19fX19HcExfX19fX19fX1/////Pz8+oqKjCwsKhoaHn5+eWlpaOqTaDAAAAC3RSTlP/3CaKxwJiAELtp4ri/s4AAACuSURBVCjPfZPREoUgCERXBdPRyv7/Z6/Z1aQp9oWJMyYLiKUrOIpAJBdGCldgbzBkPM/QEoTI3jBEPBRDhwEvChe08Q1Ge0ImvIq4Qj8ljrLdH77CyQPWlCdHC0Q1e9rmmuC+oQN9Q4LwcQg40L6eyqm0uEpXSUqe3fKpkkqL+Y/o+07SrahNEO0T0LBsvOitf4xsLqiNTB32wtqaVKosGLO2mhUrS93+PZ4D99wPqzMJVcbEyA8AAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-ptz-expand:hover .jb-pro-ptz-expand-icon{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAMAAABF0y+mAAAAM1BMVEVHcEyZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZn////i4uLZ2dnIyMjExMS8vLy+iXNeAAAACnRSTlMAYomLxwEm9+NCLo6DKwAAALNJREFUKM99k9kWgyAMRIMmEMLm/39tKaVKFJkXl3sYJ4sAXeQ3ZOcYd0+gRYblFBuFLYoS2ot5lpvYn8zJQ65TO2GVNmdCmQq/qczw4gjpejD14BgmhziEIvCjVRlPioftHW6A7xBB1a8CCUMvsuSqEkPM7eZX6h8GrQ67bYpNIbRL6rb4/k2EfVXKsgmqfQrW9qnGq96a28jGQG1ky2HXpVysyYyeDIhWq7le6ua9P36HD6+2GRi8iBZBAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-ptz-narrow .jb-pro-ptz-narrow-icon{display:inline-block;width:28px;height:28px;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAMAAABF0y+mAAAAM1BMVEVHcExfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX1/9/f2/v7/y8vLUObqxAAAADXRSTlMA3IrE6SZi9wI+y0gNXAn3CgAAAI5JREFUKM+Fk1kOwyAMBQ04bJHT3P+0JVUMNMWv8zvSk1cipfjAKXHwhR7k6KTjYp7dVuWLug1XWB5wz96T/JD2O3Phmv0k5ypL6lVVFIPYpLOka5WKSSFvS0/BloHYlkza5HkMzrvVLo8ZlRr7mtFYWBBsBQ4BjC//GTxcGVw2PpOVHQ6fJj7qS4936OoN2K4e5yE6N1UAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%;cursor:pointer}.jb-pro-container .jb-pro-ptz-narrow:hover .jb-pro-ptz-narrow-icon{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcBAMAAACAI8KnAAAAJ1BMVEVHcEyZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZn+/v7X19ckk9ihAAAACnRSTlMA9+NCAsuKJsRiPv/2GwAAAJlJREFUGNNjYAAC5gxFoTYDBijw1FoFBIumQHjsUavAYGkBmGu0CgqUwRqlYNyFIO2Fq+BAnIGBJQrBXerAwLkKCUxgYELmKjBYIXMXM2Qhc5cxdCFzVzBoIXMXMYAcsRsMdgEdgs4FKT4DBqdAitGMQrMIzRkojlRB9wKaB9G8z+CMGjgshjCuMCjoWNxRAxYt2KGRYgJiAQAnZcjElaB/xwAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-ptz-aperture-far .jb-pro-ptz-aperture-icon{display:inline-block;width:28px;height:28px;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAMAAABF0y+mAAAASFBMVEVHcExfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX1////9fX1+kpKRzc3ODg4PFxcW1tbXW1tbk5OT29vaVlZVmZmZ8vCMFAAAADHRSTlMAxGJ5Mssm9+NCiYtiH91SAAABAklEQVQoz41T7Q6DIAyEJQooUL55/zddhVazzZjdHyqXXo8DhWCYTWqltNyN+MZLuxP69UGti/vAsl6c0e4L+tQ2yv1AEbvecMhO5cXdYhk+6aO3WGrNAMwentlMz/ZAKIlNoRsqY2wtFWu9t8wasc0iYVN0LkQfrG1zbxNyrIBcntOQrH1Ukkb60QcxYF1xMA2dh8zWj6ZDsLCsIrL4Ds5Hm9FMbCEROWUB0COaLXEIZJKV7CKybGO7UuxjxY2C/TkMbxboKBQCxgMN6MCJQ6Ch/QjOZg/B13LGx8FDTe3IFvl+Bc9XBi3UWoex68qeL/vxmdyxyvz3NJ8f9dDef36HN7koIK2LjxB0AAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%;cursor:pointer}.jb-pro-container .jb-pro-ptz-aperture-far:hover .jb-pro-ptz-aperture-icon{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAMAAABF0y+mAAAAOVBMVEVHcEyZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZn+/v6cnJzr6+u/v7+xsbGlpaXNzc3b29vqh7uRAAAAC3RSTlMAyRjKA59J/3PzPhe1wxwAAAD2SURBVCjPjZPrssMgCIR1mkYtisD7P+zBCyZpM5mzv5hs0M8VnZvaok9BlXzc3FXbO5z0vtifFC5Kn8OL4UfxwVvuHm61d5Z0b6ZGZZwZpQAUosWsjVZntVS1sH3ZFo1IRVYfGXgx+VGwNkkIVbhq9/jm3cAhaNv1Uk3IA8mNn7D3kbQeWK3TLH2jCthrDFcTMwUWaKiClc9mJtJWhS3SF5BpJqMQW1b3xwnkDahMoHYomkeJRgSENA/MFsKML7fgoCBVbGvM+Cx4JcKWbWHKK/h1ZYS1Jy/nK3u8bB3KhzG5deMxtfv3aO7/Heq+9ms8h9fxHP4AHzAWU9zlWNgAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-ptz-aperture-near .jb-pro-ptz-aperture-icon{display:inline-block;width:28px;height:28px;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAMAAABF0y+mAAAAQlBMVEVHcExfX19fX19fX19fX19fX19fX19fX19fX19fX19fX1////9fX1+FhYWbm5vz8/Nzc3OwsLDi4uLDw8PW1tZmZmYgm6a+AAAAC3RSTlMAYmOLx4kn9+NCIVJiPGAAAAD+SURBVCjPjVPttoMgDMOJAqOU8uH7v+qKFN2c597lF5LTJg1VqQG3aGuM1bNTV0wWDtjpg3pq+IB+npyzcIE9ejsDXzDCrjccs+tOariF3n2OLyw5xko0vh9MDjNb9Q0hp2GK3cixlIApe4/JD9appR8SFxWAUFLg6n63iB1irnY1Jv0mlrok7nUdcZRa1YeshxBA9iijChlxI6iZEaBgSEL2tkRcymPGGJpqlbZ6uDg0WR/F0DwuMpxDkYwiIXA8hO2uMJdGCCK6teB8RQoY8xGfevQjxYQt25qoRwDT25MRBjZ7GtP/P/afa3LHmrflXa+ruf661Hvv+et3eAF6Fh3v+sSUGgAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%;cursor:pointer}.jb-pro-container .jb-pro-ptz-aperture-near:hover .jb-pro-ptz-aperture-icon{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAMAAABF0y+mAAAAM1BMVEWZmZmZmZmZmZmZmZmZmZmZmZmZmZlHcEyZmZmZmZn///+qqqq9vb3z8/PMzMzo6Oja2tpXGg+mAAAACnRSTlP/JomLxwJiAONCr+rW2wAAAOtJREFUKM99U9sWhCAInEpLBS///7WLEWy7p9O8qEzCMBIOQ15DAlLYsoegS9yFMKQ93skl4Adh+ZI54Q8pG5nxgKzkgkcsk4zhmQxRyN1OPHqtncjOu5AuppcJ6s1EHTA1YzC3Wgq3YmzGqpsmlwZAo7F8oLEVKoeE6+TbSxK0JJ/3FLOwFnUxzXuoltYDDMLoAlmYXLAWIrkqbdZKs+q4KBfkNV1uwGaBim9TdLWS3R7iGRvCNTPB7JvGlc5EXK8cKbrxooint73RzXh7Msl6Oj/uT/b62O9j8sj6gMXX0Xwf6jP3Zr9DtNAHTYMMXrXSK0YAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-ptz-focus-far .jb-pro-ptz-focus-icon{display:inline-block;width:28px;height:28px;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAMAAABF0y+mAAAAPFBMVEVHcExfX19fX19fX19fX19fX19fX19fX19fX19fX19fX1////92dnbs7OyFhYWjo6Pe3t7Ly8uxsbG8vLyG+Q0EAAAAC3RSTlMAiWJjx9wm/0Lti7mfpe0AAADaSURBVCjPfVMJDoQgDERFC/bg8P9/XUSO6CqTqA0TptNDpSrMpC2A1btRT8wrNKzzjdo03KC3zhkLD9imbeAFhd3sG2kvZQ2v0NknfGBJZKkhBM9MxOxDKBV1N4iHi0TRHYjN01Qi7/kK2PtyNDU7DAEJgDAAN0u1jsQEFEkcVVmrqjeXrkWRmC67eqbgG7bJyvkQSQkvUvec7szpek6t9ubWJSK/uJVSm+APzHKCh++DWWuH4plQKNYOpfappcjy2VvJn9744cjGwx6uyXjBxqs5Xuqsvf/9Dj8rLhRg+bQ5VAAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%;cursor:pointer}.jb-pro-container .jb-pro-ptz-focus-far:hover .jb-pro-ptz-focus-icon{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAMAAABF0y+mAAAAOVBMVEWZmZmZmZmZmZmZmZmZmZmZmZmZmZlHcEyZmZmZmZmZmZn///+xsbGoqKjt7e309PTExMTQ0NDe3t774OlGAAAAC3RSTlP/itxixwImAELtp8B2gZgAAADmSURBVCjPjZMLjsUgCEVpq60G8Lf/xQ62gvNeOmZuUiWeKHC1cKnC5iJAdFuwJXgmf+xg2g//G54OPuTOCUOEL8WgMMCLwgPP+Abj2aF38CrnBR7whw6Bo4fWUk7MMrQ2OrpAq0GspTLLgKg1wTailNITZA0EaTkZGjIAY5NwlATah5CGRMJYj50tFtlWiapsLvAPRdtL/WOmET7QzZyl5ywzp7NWsjBJ1odsragJqeJ9HGFNZoLaJw71hMTm0O7NeDE1Z6YsU5rGL69sedmXXz0ToW8PzA/oV09T8OJR32fb7+B17Qe3WwtC9PVbHAAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-ptz-focus-near .jb-pro-ptz-focus-icon{display:inline-block;width:28px;height:28px;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAMAAABF0y+mAAAARVBMVEVHcExfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX1/////t7e2dnZ3W1tbGxsa3t7eDg4Oqqqri4uKTk5NImu/5AAAADXRSTlMAYieJ3MvE/0Lti4oh87zNagAAAOtJREFUKM+NU1sOwyAMY30FtoWS8Lj/UZe2gWpVh2aJH1wcO0mNqbDj4gDc8rLmiscEDdPji3rP8IX5fXLWwQWuaVu4gbKDuyPdsJMz3GLefcIPbJ6PDCEAFDlUAJiORM3NigQFAXAFlqOeRhWJyFFIHxNGvRrN0mp470U++3axGM2RAmXcXqKnkDSN0a9WIk5Sa01MpDXBQAdVtrA8lBhFnnKpsmoo5VBrhszV0KuJ5N2tP92O50iQjpzcctravoihdoi0Q1NrfN56m0VWzFBoje+OrD/s7pr0F0yUr6s5/LvUu/bz+B2ep+IHdMIV2SUZfCsAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%;cursor:pointer}.jb-pro-container .jb-pro-ptz-focus-near:hover .jb-pro-ptz-focus-icon{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAMAAABF0y+mAAAAQlBMVEVHcEyZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZn////c3Nz09PTp6enR0dHFxcW7u7uwsLAUKT0cAAAADXRSTlMA3IrE6WIm9wI+y0gNQZpqdwAAAOdJREFUKM99U9GShCAMQ8BF3Cmlpfz/r15dAe88l8zwQiQkoRrTEa3zIXhno7lhWxcYWNbtN/fa4Q/218VFDzf4of0O8A/h3TQfOGU/ytsOj9gPVyt8warkmYEQQAgABYDxTKROz88koS6AVIB1fRCNbSI1cVUy15Jq27LGjTtyzipPeWw40/IXQkrHyZSRmqw3LaQgctFNKYzYyGACfEXossLMojFEj7J0WfdwJ3dD9uY2X25tL0Hj45mTR87Y66u9IQFsDS1bL57o7JbUDNIofvpk08eej8kTe3Hz0ZwP9UFfv8OgfgBUByCEUZhYtAAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-ptz-cruise-play .jb-pro-ptz-focus-icon{display:inline-block;width:28px;height:28px;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAcCAYAAACdz7SqAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAJWSURBVHgBtZe/b9pAFMefbSYWMjCjdOtmYEYqXVC3umMlBFRiT7qxkexITcdKSDUSYna2iqX+E/DG6LCQgcETUiR+5Pv8I3Kc+McF5ysZ3x2++9x79/zuLFEG9Xq9s/1+r8my/AnVJq4z/2LZfB0Oh1tFUQxd1+208aQ0GAa7kCTpMgRJk4kJXk+nU5NEoe12W8PM/wrAotIx2Z+w3MkE7XQ6Q3S4otNlY5zPUZdL7wiMBUsRIK/fDeWvhQ92XS0HrQia83cCsqoIyMug8gQ9Ho/DpF7FYpEajQa9VTBoyIZxWeEfv6IndSqVSjQYDKhcLtNqtaLtdkuigmGSZVn/XKiqqr9wqyZ1YEtbrRZVKhX3zvX1ei0Eh7Ufa7Xan8C9VRIUg9lyQZfzO19VOOugkBpAgaXRtnq97oLZ5ZvNJm0YQkBZ8m63E7YyKl5ntrrf77vlJCF/qzLlKLZ4NBqRpmmuF2LBlLOyBFYBchDKlIeWyyWNx+PUtS2Qtx+eJA6i2WzmQtMEA+8KnA+73a6N+jkJil1pGAbN5/PMfRBIZsGn3+LFvSABMYiBgpnJgZEeFHQD4EzQrOsWI4N/nrY2uPg/eeefV8WvAKfALOsWJ3jzA++rcqjhB25OXAd244nA62AjV4LGxWLhIBk/oPiF8pc9mUy+BZVnyQEzueEZUb5yjyvhBiX6BCw2YTGvdZNyAkYPZsprT/rgO/K2vDcdQQH7jes7gPcv/kvqyCcKbEVX6PxVAG76QWPGPZAIDcEZqGECTQyokpe9wp8VfNqzyA2L9M+KRzm19l1i6ZQBAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%;cursor:pointer}.jb-pro-container .jb-pro-ptz-cruise-play:hover .jb-pro-ptz-focus-icon{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAdCAYAAABWk2cPAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAJ5SURBVHgBtZe7buJAFIYPjsVFAok3wBUlYcUDLNvQISUSDVVCA0IUYZ8gmzcgBeIiJLwdFau8QToaQKygovI20CJBARKX/Y/jICPAF3B+yRpjZvzNOWfOzLGLLKrZbAaXy+WdKIq32+1WcrlcQe0vZb1e/8XvQT6ff7fyLpdZh0qlEr+5uXne7XZxMpciCIKMSfzGBBSyCwVMAqxpEXYEhzdeAJYtQ2u12h2aJq4gXadSLpf7aQptNBoPm81GJofEsc5ms9/0zwT9j3K5HHUSyEJ4ovV6vXkSyjHEyvxDXyCAHxGy4hEUq+4JjWQ02O/30xV65rTbQ9lKNEWjEYFAgFKpFMViMbpQnOfFPRSKWxnldrtVaDqdpnA4THalefMDinx8sDOYrY7H45RIJOy6PMibjch3F24AJEmSeo3HY+p2u7RYLEzHwNqogOUcpSvFrk4mk5Zcjry9FZCX1+46qj5dzvEOhUKGfQVyWAyPRCLqojsnEYtohpiSE5rP59TpdEhRFMN+Itw7Q3DpGq1WKxqNRurF90YC75+gnXszulBsVbvdpl6vZwpkwasDNWVw9r3BWlu5Op1OVdBkMrEzTD11RO1exmUJytb0+30aDodkV7DyjT2rBpNrG8zg3WwQW9ZqtS4CatASt/sVhAC/GA3glWk1bqcEo+TPwm0P5QeYySt9jRS9UQe54vF4fqEZkMNCdXivrw4PoJlMZoad5IeDYE7F+0KhcPC+syVotVotIQ5PdLm4CD8CGkJZfAIhzlw3SWRdM+T9q9frLbHnTnUwrfBZfPCiecQG8v3MBHj/HvAm4/P55HMwW1C9tG8a/RmsGH1CnNJ/17UakVMOx7kAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-ptz-cruise-pause .jb-pro-ptz-focus-icon{display:inline-block;width:28px;height:28px;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAcCAYAAACdz7SqAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAHySURBVHgBxZc7bsJAEIbHdprQJAU1ckln3FM4J4jTIkSMRB9uQDhBlBPECIk2yQ1MSeeIxg0KZQoKKpSCR/4xtsXTNmA7v2ThHe/ut7M7O7sIFEOGYdzO5/OSJEn3KGp4ZDy33ucxP6vVqo86H71ez47qT4iCLZfLJ0EQmhuQKNlo89rtdk06FVqtVjV49kZrr86RicG2TdMcx4LWarUWGjzT5Rqjn7tdsJAi8Ch4C4op1TGl75S8GKwCPOWC6FsRNDKAL5SOZER30HcAhbFFEUFTLBapXC5v2fL5/J7tiOCXofHLlVfikRhRrSqVChUKBXIchyaTiWtrNBruYLjM9jB5jlmup4vFQqMYyuVydKE03vsuVBTFR8pIcFD317REGQlRXBJ5PSl+iktCskgZC57eZA5l/Q/Uy4lTykjYq1++p5EHb1LC9rRdKA7dT8pO64yERG/SmVM8m81OqW7yckr8Ztv2r6Io1whnLawF59fhcLiVY0ejkWsfDAYUJfRfB+snOE85J2KRvym9RGF2Op06vwRbhg9YHgmlIz7E235B2vwC1x1VVdl7jZLT3nVF2q0BsJUg+ODFTDpU0wP3PfC5a2wB+BD7CuqLgws/TQQYn7cyxYfxfdc6ViEUujMAHUlER4cKHfhbATvPjBUG8/UH1xXJDxHoYGQAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%;cursor:pointer}.jb-pro-container .jb-pro-ptz-cruise-pause:hover .jb-pro-ptz-focus-icon{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAcCAYAAACdz7SqAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAH/SURBVHgBxVY7bsJAEJ01CAkJKUhUULmiDSnpoKYINyBuQIgi3AA4QZQKIQq4QaChhhuQCxAXSERUSDSIb944axSS+CPA5kn27o7X+2Z2dz6CXKDT6URXq1UqGAw+Hg6HDB4V4qj8rAsh9N1uN9rv971KpTJ2Wk84kW2322csVv1BYr+gEGMo8Foul7uWc6w+NJvNjKIoHXRVOgMg74K8AXLdFWm73a7BujpdDh3rZH8TCw8JLYlPSFutVh7NG10feigUetA0bcEDxZTiDFU0L+QN1M1mc1z7SBoIBGrkcGkSiQQlk8kTWSQS+SP7D3CzJ76c3A/yi61kodOP6XSaYrEYzWYzWi6XhiybzVI8HjfGLLeDNGxoWpohF8C50CXgwMK+r0gNCuQTENnyitQgRT4BQSOlyFvrKsRdCapC/uPuFqR0G1IZExfkH94NSzkHkk+Ap4wNUiTqPvmH74gUDoe7dOYWr9dr13M5sfNxBnjQ7/dXuVwuDGHG7ieOr9Pp9CTGzudzQz6ZTMgJ2FFtMBh8HvMpx0Ro/UEeBQq2slgsatw/uoxMsBp5A64WG+bgxE9LpVIPpUWDrgv7csUE4nEdlWCNPCC0JJXEF5Wg8MchHs11CWpCVvZVkBfckksyrneHVnMEuQRXitiqPBS4lwpEJYmORkc7Qju0IzPxBZ2t+3mW/JtqAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-ptz-fog-open .jb-pro-ptz-focus-icon{display:inline-block;width:28px;height:28px;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAdCAYAAABWk2cPAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAKgSURBVHgBtZe/jtpAEMYH28WJioIa+URDF8MTkAalO6cH4YIiFbk8QXS8QO6oUlCAkGjDtTRHJBoa4nQ0KBZdJApoEAV/Mp9jkAF7bXPcJ5ndtdf725nZWdYxiijDMBKr1SqhKIqKNpdms9mcRxkjFqZTsVjMy7J8x1WdL9WjC6D97Xb73G63m0HjxULAvnI1T+FlMfxBBPeEwoW73Q6we7pcViwWe8+utwKhDFQZ+IOrGr1eAH9ksOkLdSz8Rd5xu1RzBmfdFkvupwz8dmUgBENeYNAZtFQqGVwY9DZSnTVi6+Decrn8h0JYWSgUKJfLHdrL5ZKm0ykNBgOazWbCd9nNt3CzgoZjpUohlEqlKJPJHN3DJHRdp16vR51Ox/ddTiVkw70NlSTp7rRDMpmkWq1G4/HYvmANSpHghXg8To1Gw/M5W1oGVEZD07TvXNy4O8Btw+GQFouFbV06nabRaGRbhbaf8AzvTiYTr8c32Wz2p8KrSuMgJ7x6IEa4AIuivau9tNlsNGm9XqsBY9gxhOvCCi728wa7OCHhRzQAZl2pVGyXRZEoBAoFCDGs1+v2QooiUfpIHE+LBEL+VatVezVfDcp/whYJhAWBVHFvCEFCfz8op6cpORuxJRokajz98tSRae+97OJnUS/RanQLkwNQ4FrzsA2yyU0Gf/br2e12A90LlwYAkS5Pdrm/wRs+/rh1ChAshuV7wTqAQoTAarVat6gorll8YWvzXBXmbdTUcY3/sK/L+4ppmnPeF/9SCGsvAXIsH8+gDthkMFyepyuJgS0GHh3w5NNOzO0zeMHVD/R64BMDP53d93vBORW+0GVnpvmpS0NBXXDDSacwR9K5kxaPok+NUJ8VDlzlQucJvKNj63G2/U3/E78fZqx/rk0w4ggu8jUAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%;cursor:pointer}.jb-pro-container .jb-pro-ptz-fog-open:hover .jb-pro-ptz-focus-icon{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAdCAYAAABWk2cPAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAK2SURBVHgBtVa9jtpAEB58/EqArqCBBqehorgTVDQxPVJOiD5QAEJUeYLjniBcgRACKeQJQsQDBBoqkIigookraC1BwT+ZcQBBsNd7Ovgk2LV3vd/M7PyZgBPlclnc7XZPFovFv91uRZPJdL9fktfr9W987udyuRbPWSajDUgm3d3dPSOhBMaQUaAXu93eSKVSCryVtFQqPaBWXznJNMlR8zo3aa1W+7zZbIo4vYd3QBCEQjqdfjEkrVarzyhlAa4EvOt6JpNJ6ZJWKpUnHH7A9VHMZrNfLkjJO9Ecv3Aqwg2A1osevFs4vCQP5SF0Op3g9XrPflar1egzut9vCNVHzPS3j8EkcCAcDkMgELh4PxqNoNvtwmw20/tUXC6XSRyLqqZ7LS80CgaDqiY8IEESiQSIoqi7B53qE40qqVYsolTgdrshEokAeh9IkgRGIDPTPhJYC8SD4eg3k52RQNQi7XQ66txms+kepEUcjUah2Wxqrq9Wq6h5Pp8/4CUzD1osFuqPFwfnIsE1IBKbyDqANIzFYhCPx+EtYPmCGQxAppJlGQaDAVwLaFlBgRtAx7T/SNGNZWCg1WqpoeP3+4EX0+kUJpOJNiEqKWA49HGusA6gwPd4PMCLXq+nu4bpsK+6LVV9YMDlcqnkPKD7JyF1oFD+PSSHV9ZB4/EYQqEQGGE4HEK73dZdR+Ua6nh4gWXtD3AkfCL3+XzHZ4pfyrekIQnHApr2A2oqn4YM1TvDWkr3xbozPVAxJ0KaH1MRFllSvQG3gYztz7FtOct/mLqorZDhulD2BVzWJKW2kTZckVjBnviM8IKUQBtQ40ck/w7vAIUhnvGYz+cvwpHZbGNHkcQMwtXGnICs9YrCF/Q2GHb4e3IJBxLgo44ACsY6afbT4XDUWd09N+kpqOhTDT55Jf9/Z0b4C/UJLQCcLGi1AAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-ptz-fog-close .jb-pro-ptz-focus-icon{display:inline-block;width:28px;height:28px;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAcCAYAAACdz7SqAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAIjSURBVHgBtZe9UsJAEMc3l1Q0WvAA2NEp1MyInVbGnoE8AVrSqW+gT2CY4QGwpTEFNcaOEqksKKiYcYYP/xsSJoRwx8f5n7nRu9u73+7lbu8waAc5jnM6m81sIcQlqhcoOZTTsHvAZT6fv5um2XZdd6Caz1DBMNm9YRgPMYhKHhx8brVaHu0LrVQqNjx/2wOWlAtnn9MiT4VWq9VHDHii4zXAPFdJsPGPwK1gIwHk7/dC+sXgAsBjroioFZsmpznCuHKLxeIxqqwirdVqvGmcbaOy2SyVSqW1tuFwGJTRaES7CEGd8TJbXOEo4YkjG8BQ27ZT+7rdLrXbbSUcx4+P3oOIVQ4Wr0Cj0aBMJiO1Q6Q1PvsirFzSkeKVqNfrKjM+8xeCybRMbUcrn88HRSasqs2R5kijisWitB+reiKm0+mhaS5VvMwqCdIs1WYKoJZljUmj+NwqobS8D7Wp1+tJ+5EPvkWYD33SIE4S/X5faoOHgCdC+jsdKc5GnJUUGiNIzwrpbjwh76tOpxMAJ5OJyjTwKp7wP/CnvM06LeFzdPwNd4AFihL+Chom/U86/HmiAr4CGOR4M2r0fX9cKBR+8e816deg2WzeRJW15ABPXvgxRXoVPFfiDWbSAhF7iJiXvUyagMmHmZlmGYK/aXn7HPSNAWui3AH4s9EnG8ibiy94DL6l3W8jL3zvetsMpNCEAw4cKGPCc9r8WeGj/YuBMlikP+yn3EGZYjlWAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%;cursor:pointer}.jb-pro-container .jb-pro-ptz-fog-close:hover .jb-pro-ptz-focus-icon{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAcCAYAAACdz7SqAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAI5SURBVHgBxZZLjtpAEIbLjUFih8QFnBUrJCIOEHOCROIACStALBhOMMwJMlkgBCyYnCDMCUJWrJCQYB+zBwkJFiBe+QvZyEz86IEezSc1dj/w76pyV5dGEnS73cR6vf4SiUQ+HY9HE0MJu5GmaSNcFrvd7hn3vXK5bIU9TwsTw8Oqh8PhzhGRoIf1tSBxX9F2u12FVfVXiL3ksVgs1khWtNVqfcfljm7HgtW5l1Zrbyh4Fo7FYh8LhcLCGRDu2U6nc69YkDG22+0v98DZ0mazaQgh/tLbUUOMHy9E8eH8treDJ8lkkgzDuBibz+c0m81otVqRBAu4+QO7WecerDSDBB3RbDbrOTcej2kwGFAIvNc5dPVTTLHpv9INpNNpyufzBEsC1yF81dOVf8KslCHIEy4SjUYjIxDLDDoGKYAtDrNW13VT7Pf7azOOJ6lUKnAeySLB7jVIIezmMAS9A/igxIIUwns3VBQ+HpFCLMsKnGcjhX0CKLF2MpnQcrkMXIPzuX+KKax9phthtw6Hw7BlVqVSGel25wntqqy02WxOFnLj+xB6/HNTwmdXTqdTGTHmfKA7lhKSxAOCbPr9g90n82X6AcGfTgVxUTngtKlD+J4UAw/2S6VSzulfJAe8SZ3fiNRiQbTgHvgvI0H4Gxb9IAVwTexVmHmmQbiCD1suHy26En7xaDSa86p/A4ttrpuIT3ohpLcTxw/tAWJ9vzUaSWCLm3DXZzS+z7hELFzYjX/i8fiTu9T04x9LgQk+PbvDKQAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-ptz-wiper-open .jb-pro-ptz-focus-icon{display:inline-block;width:28px;height:28px;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAALxSURBVHgBtVYrrBpBFJ0FFAqBqCIrUXRBk5QaUleewBBIlwSDoW1CUlzz0CSlaJJHA8FgqMBg4CWIKkpRuEfQCDAYAvSeYYfsLgss6fYkk5ndmXvP/c1HYjaQTqdjbrf7PQ0VarLWgBW1Cdput3tutVrdW7qka5OZTEZ1uVwfaBhj9jDf7/ePzWazwe4hVFVVPhwOT3cQnRFLkvS20WjMzRMuCzKFyH7/AxkAg18oQp/ME24LsgENfcwBkJfvQqHQejqd/jr905HJGpnMHIYW3iHGp5AS2df/QabpfiKHfCdCVCN1qh1hv9/PIpEIi0ajLBgMskAgcDZfKBTMYjJVL8+nh7MeS/8ioFiQbDYbtlgseA/lXq+Xt9lsxrrdLkulUmw8Hp/poLB+JC+rkpa7FysiKEokEpyo3+/zBiIrr2EU1kKmWCxariMvsy46IRJWZFBSLpf5GApgvZUSYLlcstFoxMfwHnKQN4Mi+cYdDoe/IGpmslKpxJV0Oh223W7ZLcTjcb6uVqtxLxFayJtkfSga2Sycy+X4YnhlBzAQhGI9euTRqnhAaNjkKA5Unl0yALlD0SC0Au12m/fIvx5nRxsEYV2lUrHMgxmiYMwGwmiE1qzDrSiKSv0r8QMxF2Wdz+fZer3mhXAJCP9gMOCGAiBJJpM8h6jqXq9nWO+hLfGH9ohiVoTFIEbxwFqECMoQInwLy4V3mEMe0SB7YWtMJJzoVK7fLnkgKg65BVBM8Bj5gjHwDORoGNfrdUMu9SDnfl7d+HqAEArFCYNQYoxtAODfJSIBimTWpV2Swxt8PLwiRAgjGrwXuEVGmBNXw6MxP5KXMWYTCKs4U+2COH6g59tCu6uG7A7AYxteCcypVU+EmgVZbcJxkO4HcmplIEQuMcGOTz8nyT6T7on4Npw0mMBzgDnkqUZWNfyzWujQM/FB79lVQh2xeudbZ0VE36mvipzdRagjjtFtnSBlr9nxuS9uGCidk1HPdFp1xcvsGv4CcbeEIeSIw9MAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%;cursor:pointer}.jb-pro-container .jb-pro-ptz-wiper-open:hover .jb-pro-ptz-focus-icon{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAYAAAByDd+UAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAM0SURBVHgBtVa/SyNREJ7dBLVQELU4bdwrtFJOUCxsXEG0Ue4OK6tLKhEb/QsO/4LzChVtvGvE0sPOxtiYJuFyJBBICtOlSSAQCEnIj5tvyC676ybZYPLB4y373ptv5puZt6uQB1xeXup+v/9zs9lc4qHxK621VFAUJYbRaDSeDw4O7rvZUroQBXw+3zcm0ckbMkx8enh4+It6IWQijYlueiByI95g4oxzQXW+OD8/X1JV9e87yACNbbxeXV0dOxcUJxnn6okfx6l/OOHcnr0hhIzsFcg06jNa8obwbErKOfs+CDIhUdUbxrhJiGrknAW8HB4bGyNN02h+fp6mp6dpcnLStj46OkpbW1vOY1q5XJZ8iqTX19dPnYpkZmZGSObm5qharVI+n5cZ5ENDQzKy2SxFIhFaW1ujTCZDqVTKaabA+z4qrdy9uhHB0PLyskSTSCRkVCoV16gRLfYODw/T7e2tOOQE5zKocmRf3Mggzd7eHvEtQnd3dxSNRl3JgGKxaEaE6HEO553gOllXuQ3W3ch2d3fFyMvLS1siKxYXF0XWh4cHOYfzUMgKpE1t3Y026LouhxCVF8DBhYUFcz9m5HF7e9u5VUOV2pp8dnaWpqamPJMBKysrEh2kNRAOh2VG/q14c7XhILzb3993zYMT2IOCcTo4MTEhkqKgrPCx1gGePxgv6vW6EKJYNjc3qVQqSSG0A+RPJpPiKACS1dVVaQ9UdSwWs+33c6n+47ZYchqKx+NCvLOzI80NiWAMEkFyeM75lx5FdFhD4SCXIEJluxRbTLm4uDjmcv3RLgIYgrfILZBOpymXy0m+UImIDLLCATyHQiFbLq1gB/90bHwrcNPAILwGAaREcz8+Pso6CNsRGZDGx0eS8xXqRgh5DYkgIwZuFQPdyGACfwJ+PHGhnHKUOnkEetS4U72Co/uNWdoC3yovUVqBiD1EZW4fGRk5MwkBjjKIBRoAarXa12AwWLARIpdY4McC9RcnR0dHZjPabhosMOkG9S9S2/8MMLDfRKhljawjoYU4wNXby79OgavxJwrEyFlPhBZinasYH+pPPOMaNL4wMJphJZ553Bt/Zp3wHwTYnvHjbDCuAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-ptz-wiper-close .jb-pro-ptz-focus-icon{display:inline-block;width:28px;height:28px;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAcCAYAAACdz7SqAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAANOSURBVHgBtVc9TCJBFB52r7jYyCXWnhcbO1aru8RErjGXWBxX2BijGG1svNhJo56VhQU2ViQsgdDQYEFDc5rQ0BDoaMgRGhoKaMhdCHDve+6QZVhgMfglm9mdn/e9v3kz6xEusL+/79c0bcvj8fjpc8V6gCY9VXqK3W73MZFIpN3I80wj03X9il79wh2q/X7fJAXvTdNszkQaDAZXaHF0BrIRcvLKERE/OQ3qYwh/06shXg8vRPl8PlEqlZ4nktoIV8QcgBxwItbfitBOvL6+XioWi2XZp8kXIryaN6FNdpSM8spvthRWUmPaJ25vb4vV1VVRqVSGBCwtLYm1tTUeW1hY4KfVak2hFe+J+B+5+QkfnL2Hh4fI1KAq/OLiQlxeXorl5WWxsbEhNjc3RbvdFrVajVvMkcTlclmk02nRaDTGETfJ1Z+wlTxWLP84zQoEAkwEodlslh+QqZDWY36hUGByp3m9Xu88Ho+HNaokfidCCAIh2kgkMlYQAOtyuZy4vb1lBW9ubnidCioa37klkw0nQrgWgpLJJMfXDUAOBbEO66GAAkOS+tSRk5MTXgjr4FIAMXULrIObz87O1CHv8fHxR03thXAkDhbahezt7TlpzkA8sc7uUngIQIhUgNRr70AWQsu7u7uBEPTBdaqboQTcCIUgXL4DUBzjTrHVDcP4BmVlR6fTYVLg9PSU9yC2CIghEG7HHIC2GluJOGYyGR6DYiDCGEKD/iErNS2sU238QnH9rGqDopDP5zm+EIJ3aL6zs8NEUAKCQSiVwxp4BFaHQqGRwkJoRqPRkEZ7tCjGAAJQHED28PDAVkirsX1kUcAc7FEXWc5c7+iQTltnpyMgHNYgUSSZBL5BhqTBHkVMAZnxKsijMbQ6Vf+/FFe/mFLs6/X6IJZ20t3dXXb34uIihwFuTqVSI3Mt0nPia3LtpVLot461V0FWLiiBZwzMWCx2xOSy5+DgIEya/BRvA1xfvlKxr+JjUBwola/Fy81u7iDCX5JwiJSPHNJm3sQWoTnUp06a57XFIrxW+0dug8guutM8EvEHpxPIJRDDH6qFA2UmrSSrg0SO5HJLjhDdUxue+bLtQG7QqR8ggVvC4beCFHumRMSxVJxEJvEfnFm91YrgD/sAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%;cursor:pointer}.jb-pro-container .jb-pro-ptz-wiper-close:hover .jb-pro-ptz-focus-icon{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAcCAYAAACdz7SqAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAANwSURBVHgBtZa/SyNBFMffboJaKAS10SZ7hXqFegGbCyjmUPTAH3eHlZWmULG6u/Kqi/9BLEQRIdoKigf2l1Q2ChGtBLmtFAQloPgL1HvfRyZuJhuzBvOFzezOj/eZee/NZAzyoMXFxYjf7+99enqK8GNxlZVtyhiGYXOZ5vo/MzMzW17sGaVgPp/vN2DkTbZpmqs8wfloNJqh10AZZjEs8QpYAfzx8TE6Ozub9AQFkGf7l55dWLbYTmxqamruRehbAl8CG5UEOvTNmWSmekHCVAgIJVgB9eHHD1bJSTPp7NXe3k68Hejg4CBvdF1dHTU0NFBVVRVdXl7S/f09nZ+fl2BS4Pb29geXMXyIe5eXlxM6FMaHh4dpY2ODGhsbybIsamlpyUFQog/geE5PT2l3d5eurq6KgTPc7x22kpGN5T+3Xl1dXdTa2ipGDw8P5bm7uyvoB3hTU5P0t22b9vb2ZFIu+smxjSOmEbfW2tpaAcJgMpkUQ25ACG4+Ojqi7e1tqq6uprGxMRmvi8P1BaXJLyE34MjIiBja2dmhzs5O8iLAMUGMw3h4yCkOobDYs+YHfXAkEpGBWJ1KJMTUqzAObh4cHNSbAisrK0FTrw0Gg5I4GKiEBAmHwwUzV2pubpZJOV0KD0EIkS6TlxxwViALMcvx8fGcEdQhKzs6OvIGYxLIcEwIxuFSvEP19fXSjpzQ5RsdHf3M5XtV8fDwIFDs0f7+frq+vpYtAjAMwu3oA/X09MgqEcf9/X1pQ/wBQhuyPZ1O56/SNOO+oaGhMAM+6rM5Ozuj4+NjiS+M4B2ZGQqFBHRyckLd3d2USqWor6+Pbm5uZAySqa2tjdbX1+VbU2Z6evoX3JumIoIBHA6ATUxMyCl1cXEhQOxD1ON9c3NT9qjufl2K5a+pqdliA4liHWEc7kOiwMXOvYpvwJA02KOILwS3FoGuoTTlWDKMJJUQ4qwfDmoyAwMDkkiYIBIOsS2iJH7k7MW1JPu3VpbUyYWVw91u4oWtcjyjOSi0tLQU54bvVBnh+vKJry82PnKHAydFDI1UATFwTgHzoIgtZvPW4Cxw1VlX0YtZFhjT6wvOXrgBK+ZnjcqXimHMrbHUZXuSV43kCpE3IUTzvPfjr75s61pYWAgx/Ctndy9/WlxaCsKPzZs+xc8Ww9IvwZT+A8hTw5fcMmXrAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-ptz-arrow{cursor:pointer;position:absolute;width:0;height:0}.jb-pro-container .jb-pro-ptz-arrow-up{left:71px;top:15px;border:7px solid transparent;border-bottom:10px solid #fff}.jb-pro-container .jb-pro-ptz-arrow-right{top:71px;right:15px;border:7px solid transparent;border-left:10px solid #fff}.jb-pro-container .jb-pro-ptz-arrow-left{left:15px;top:71px;border:7px solid transparent;border-right:10px solid #fff}.jb-pro-container .jb-pro-ptz-arrow-down{left:71px;bottom:15px;border:7px solid transparent;border-top:10px solid #fff}.jb-pro-container .jb-pro-ptz-arrow-left-up{transform:rotate(45deg);left:32px;top:33px;border:7px solid transparent;border-right:10px solid #fff}.jb-pro-container .jb-pro-ptz-arrow-right-up{transform:rotate(-45deg);right:32px;top:33px;border:7px solid transparent;border-left:10px solid #fff}.jb-pro-container .jb-pro-ptz-arrow-left-down{transform:rotate(45deg);left:32px;bottom:33px;border:7px solid transparent;border-top:10px solid #fff}.jb-pro-container .jb-pro-ptz-arrow-right-down{transform:rotate(-45deg);right:32px;bottom:33px;border:7px solid transparent;border-top:10px solid #fff}.jb-pro-container .jb-pro-loading-bg{display:none}.jb-pro-container .jb-pro-loading-bg,.jb-pro-container .jb-pro-poster{position:absolute;z-index:10;left:0;top:0;right:0;bottom:0;height:100%;width:100%;background-position:50%;background-repeat:no-repeat;background-size:contain;pointer-events:none}.jb-pro-container .jb-pro-play-big{position:absolute;display:none;height:100%;width:100%;z-index:11;background:rgba(0,0,0,.4)}.jb-pro-container .jb-pro-play-big:after{cursor:pointer;content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:block;width:48px;height:48px;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAIVBMVEVHcEzMzMzMzMzNzc3MzMzPz8/Nzc3MzMzMzMzMzMzMzMzLVn6fAAAACnRSTlMA+duduRUwSGSD8toSsAAAAI9JREFUOMvV07ENgzAQhWG3lLSp6MwCViYIRSpG8AiM4FWMaPymDBKESMF/cQ0S136F353vnLuo3gp1kOYEoCXW4LFKIZAnqAXYICeASoAdzgG+cApwgF4EfwF+oDkCqIwA6gnyAKA8AaizQhsBAjzuqUHofInGIQbjRxXjMrTJuHDestR4Bng4eGrN0929PqNfzC6h06weAAAAAElFTkSuQmCC");background-repeat:no-repeat;background-position:50%}.jb-pro-container .jb-pro-play-big:hover:after{background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAJFBMVEVHcEz///////////////////////////////////////////8Uel1nAAAAC3RSTlMA+rbVFUecgC7rYhEEz+4AAACbSURBVDjL1dMhDsJAEIXhdeiGpKYWQVKDWc8ReojFc4ReAlPFFQazad7lIGkb0jK/WEPSsZ+YN5mZEP5UrZIP0vgE0Kv3oPlIJlAk8AJM4ASYwAkww2+ABfQg0ImgugPYsfNBVl99kA0AsjOArAPQpRTGHiBB8whxM0y+3skXNltsvMYriIWrpWPA80mFJ5qL3gAfB1/tcAt7rzdiV+HEgs1oBgAAAABJRU5ErkJggg==")}.jb-pro-container .jb-pro-recording{display:none;position:absolute;box-sizing:border-box;left:50%;top:0;padding:0 3px;transform:translateX(-50%);justify-content:space-around;align-items:center;width:101px;height:20px;background:#000;opacity:1;border-radius:0 0 8px 8px;z-index:1}.jb-pro-container .jb-pro-recording .jb-pro-recording-red-point{width:8px;height:8px;background:#ff1f1f;border-radius:50%;animation:magentaPulse 1s linear infinite}.jb-pro-container .jb-pro-recording .jb-pro-recording-time{font-size:14px;font-weight:500;color:#ddd}.jb-pro-container .jb-pro-recording .jb-pro-recording-stop{height:100%}.jb-pro-container .jb-pro-recording .jb-pro-icon-recordStop{width:16px;height:16px;cursor:pointer}.jb-pro-container .jb-pro-zoom-controls{display:none;position:absolute;box-sizing:border-box;left:50%;top:0;padding:0 3px;transform:translateX(-50%);justify-content:space-around;align-items:center;width:156px;height:30px;background:#000;opacity:1;border-radius:0 0 8px 8px;z-index:1}.jb-pro-container .jb-pro-zoom-controls .jb-pro-icon{vertical-align:top}.jb-pro-container .jb-pro-zoom-controls .jb-pro-zoom-narrow{width:16px;height:16px;cursor:pointer}.jb-pro-container .jb-pro-zoom-controls .jb-pro-zoom-tips{font-size:14px;font-weight:500;color:#ddd}.jb-pro-container .jb-pro-zoom-controls .jb-pro-zoom-expand,.jb-pro-container .jb-pro-zoom-controls .jb-pro-zoom-stop2{width:16px;height:16px;cursor:pointer}.jb-pro-container .jb-pro-loading{display:none;flex-direction:column;justify-content:center;align-items:center;position:absolute;z-index:20;left:0;top:0;right:0;bottom:0;width:100%;height:100%;pointer-events:none}.jb-pro-container .jb-pro-loading-text{line-height:20px;font-size:13px;color:#fff;margin-top:10px}.jb-pro-container .jb-pro-controls{background-color:#161616;box-sizing:border-box;display:flex;flex-direction:column;justify-content:flex-end;position:absolute;z-index:40;left:0;right:0;bottom:0;height:38px;width:100%;padding-left:13px;padding-right:13px;font-size:14px;color:#fff;opacity:0;visibility:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none}.jb-pro-container .jb-pro-controls.jb-pro-controls-small{height:30px;padding-left:8px;padding-right:8px}.jb-pro-container .jb-pro-controls.jb-pro-controls-small .jb-pro-controls-item{padding:0 5px}.jb-pro-container .jb-pro-controls.jb-pro-controls-small .jb-pro-icon{width:14px;height:14px}.jb-pro-container .jb-pro-controls.jb-pro-controls-small .jb-pro-menu-icon-text,.jb-pro-container .jb-pro-controls.jb-pro-controls-small .jb-pro-quality-icon-text,.jb-pro-container .jb-pro-controls.jb-pro-controls-small .jb-pro-scale-icon-text,.jb-pro-container .jb-pro-controls.jb-pro-controls-small .jb-pro-speed-icon-text{font-size:12px}.jb-pro-container .jb-pro-controls.jb-pro-controls-small .jb-pro-menu-item,.jb-pro-container .jb-pro-controls.jb-pro-controls-small .jb-pro-quality-menu-item,.jb-pro-container .jb-pro-controls.jb-pro-controls-small .jb-pro-scale-menu-item,.jb-pro-container .jb-pro-controls.jb-pro-controls-small .jb-pro-speed-menu-item{font-size:12px;text-align:center;width:40px}.jb-pro-container .jb-pro-controls.jb-pro-controls-small .jb-pro-volume-panel,.jb-pro-container .jb-pro-controls.jb-pro-controls-small .jb-pro-volume-panel-text,.jb-pro-container .jb-pro-controls.jb-pro-controls-small .jb-pro-volume-panel-wrap{width:40px}.jb-pro-container .jb-pro-controls .jb-pro-controls-item{position:relative;display:flex;justify-content:center;padding:0 8px}.jb-pro-container .jb-pro-controls .jb-pro-controls-item:hover .icon-title-tips{visibility:visible;opacity:1}.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-face,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-face-active,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-fullscreen,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-fullscreen-exit,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-icon-audio,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-microphone-close,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-object,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-object-active,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-occlusion,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-occlusion-active,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-pause,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-performance,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-performance-active,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-play,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-ptz,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-ptz-active,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-quality-menu,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-record,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-record-stop,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-scale-menu,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-screenshot,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-speed-menu,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-template-menu,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-volume,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-zoom,.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-zoom-stop{display:none}.jb-pro-container .jb-pro-controls .jb-pro-controls-item.jb-pro-speed{padding:0}.jb-pro-container .jb-pro-controls .jb-pro-controls-item-html{position:relative;display:none;justify-content:center}.jb-pro-container .jb-pro-controls .jb-pro-playback-control-time{position:relative;justify-content:center;padding:0 8px}.jb-pro-container .jb-pro-controls .jb-pro-icon-audio,.jb-pro-container .jb-pro-controls .jb-pro-icon-mute{z-index:1}.jb-pro-container .jb-pro-controls .jb-pro-controls-bottom{display:flex;justify-content:space-between;height:100%}.jb-pro-container .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-left,.jb-pro-container .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-right{display:flex;align-items:center}.jb-pro-container.jb-pro-controls-show .jb-pro-controls{opacity:1;visibility:visible}.jb-pro-container.jb-pro-controls-show-auto-hide .jb-pro-controls{opacity:.8;visibility:visible;display:none}.jb-pro-container.jb-pro-hide-cursor *{cursor:none!important}.jb-pro-container .jb-pro-icon-loading{width:50px;height:50px;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8BAMAAADI0sRBAAAAIVBMVEVHcEx4eHh4eHh4eHh4eHh3d3d4eHh4eHh4eHh4eHh4eHiqaCaRAAAACnRSTlMAikwX3CxpwZ7zIGi5xgAAAZ9JREFUOMt9lb9Lw0AUx2Njqm4iGEqmEnBxslKUdhJctFMVcW5wKZ0CLpJJQRw6iVqQbg3FtPdX+l5+XHJ3796bQj557773fe8ujtOI+6jz5p84dHjTkYD4+RhT9CIRZWRPJr1bChnbY532GhT4oUpbI6HEuqvgIH9544dh9J4/rpr0Ms8oV3zMNT7X1MXSmaznzfHjM4n72moe5n8ryYrW9rKRvgf0S93JA7yKa9lbzUg3keJb8OVCtwkrFmoO4MnsAuj5rGqnZg+GZXUXkl9NjEui9n3YA9XgpMgakLXz6ujMTIgrCkPVv0Jil8KgKQN/wRN69hLcb1vrbR2nQkxwiZTGQ5Teb7TO8PUaS8Q03sE+zkjP8qbjzgJtEhRbV4gnlkOFeM7hDYNdxPbiYFvKSHN6L2NmY5WzMYPtplZdTxncRvn2sI+DHIoug22jWMaA12Y7BrXzrG8BX32XPMDKWVzw1bdMOnH1KNqNi8toqn7JGumZnStXLi0e4tcP6R3I635Nc/mzsMxl9aux9b78UVmn2pve8u6eR50j9c0/ywzyVl5+z84AAAAASUVORK5CYII=");background-position:50%;background-repeat:no-repeat;background-size:100% 100%;animation-name:rotation;animation-duration:1s;animation-timing-function:linear;animation-iteration-count:infinite}.jb-pro-container .jb-pro-icon-screenshot{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAJFBMVEVHcEzMzMzMzMzMzMzMzMzNzc3MzMzMzMzNzc3Nzc3MzMzMzMwv5ahDAAAAC3RSTlMAW+8S2UGVwyyZnOTRhEMAAAEfSURBVDjLzZKxbsJADIYdBQpsSCyVMlXAdEuQYGKpWFk6dWHJgsQ7sMDSpUv3PgITAQT0f7ly57ucQ45KXRAZot+/89k+X4ju9KzL4XOhlm3pR0enYrWViSRPXQIQSASkRSkIJEFRimYCuQAHSW89IOv6SH5TCsuAj68Ab1wDzqkAzqoC7AUAPtgsABgkBBgkCJiNHehGok//KRVsHqd+3Dj1/vukt3AH/Jj05s5/AmyZhFVWXDls44iVvfQWkCvgxU6g9ZdJfCLvjJbYaT3GvjOY4mQSG3SJGjhr/Y1Xohp+TGKqqzexZ/1GVGdNCitt6R8zVvb9d+JmKdl8o5sPWbtxT6zFuJcDQtk92MNmYiXHquYlZlVt1j4P6cd7fgHFW7Nhqu29TwAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-screenshot:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAALVBMVEVHcEz////////////////////////////////////////////////////////NXt0CAAAADnRSTlMAWe+X2TINXUYZvctoYyuS2NgAAAEVSURBVDjLzZKhDsJADIZLCAsEg8WgEGCWGSwCgZxB4MgEAonB8wQEXoBH4BEWXgPJgEBG0mdgR3u77raRYAgnlq+9+/t3TQF+dKbZcJXSYSnzlViT457lRScKmBqILSFA3GoO8S4E+Ex5JiSJ4CbVdyOQdZNomX9D4dl+ko3NC8vFFmhPy8FIsi0ZlwLBW/LY5BxYYreUSgoFAEmhB5Rc9OCbUoXmTmDadQKTn4y6A/XTaoSKdb6KyGU6RJ7eHgpb3ABinAoil303xB6vQnRahNhXvMdre+fzOgxVrokX4jHAnBh8PALU8Eq8BqgTg/vePF8tpuPy9/NFaalSc273RizarYqfkswjifNMQ/TyTGMv4v87L+ks5gqDbc9OAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-play{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAIVBMVEVHcEzMzMzMzMzNzc3MzMzPz8/Nzc3MzMzMzMzMzMzMzMzLVn6fAAAACnRSTlMA+duduRUwSGSD8toSsAAAAI9JREFUOMvV07ENgzAQhWG3lLSp6MwCViYIRSpG8AiM4FWMaPymDBKESMF/cQ0S136F353vnLuo3gp1kOYEoCXW4LFKIZAnqAXYICeASoAdzgG+cApwgF4EfwF+oDkCqIwA6gnyAKA8AaizQhsBAjzuqUHofInGIQbjRxXjMrTJuHDestR4Bng4eGrN0929PqNfzC6h06weAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-play:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAJFBMVEVHcEz///////////////////////////////////////////8Uel1nAAAAC3RSTlMA+rbVFUecgC7rYhEEz+4AAACbSURBVDjL1dMhDsJAEIXhdeiGpKYWQVKDWc8ReojFc4ReAlPFFQazad7lIGkb0jK/WEPSsZ+YN5mZEP5UrZIP0vgE0Kv3oPlIJlAk8AJM4ASYwAkww2+ABfQg0ImgugPYsfNBVl99kA0AsjOArAPQpRTGHiBB8whxM0y+3skXNltsvMYriIWrpWPA80mFJ5qL3gAfB1/tcAt7rzdiV+HEgs1oBgAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-pause{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAFVBMVEVHcEzMzMzHx8fMzMzMzMzOzs7MzMz4IlKVAAAABnRSTlMA6xIU1hVqIuOVAAAAMUlEQVQ4y2NgGFYgLS3RAEQziQFZoxKjEqMSaBJpEAkgIw1ZQlBQRAEs4QhkDeIMDgAWx1gMHyIL4wAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-pause:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAFVBMVEVHcEz///////////////////////+3ygHaAAAABnRSTlMA7OgSFBXMmAA4AAAAM0lEQVQ4y2NgGFYgLS3JAUQzi6WlJY5KjEqMSqBJpEEkgIw0ZAklJSUDsISikpLQIM7gAJjhWp6XcaOxAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-record{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAHlBMVEVHcEzGxsbMzMzMzMzLy8vMzMzMzMzNzc3MzMzMzMxEZ/aQAAAACXRSTlMADPKKKeBxlV6neZ4mAAAArUlEQVQ4y2NgGDZgJhpowCURAJeYpIQENJEkCgWRgCeShAGyjfgl2EqwS7BFToZJiLg4ICTEImdOh0pwRM6cDJcIjpw5E6aDFeh8B5gECBCUYAkKCoMbNXNSOlyCgUEQ4apJJmxIEkjOVWFgxi4RgEsikGQJnEYp4pLA6VxUDyJLIAUJcRLIwY7qXKSIQvOHWCQODzKIleBPPjgTHM4kijNR48oGkajiYUMykwMAAfmZhUjBISQAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-record:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAJ1BMVEVHcEz///////////////////////////////////////////////8NopmKAAAADHRSTlMA8gyMLeRw1x2DBpWGN2QDAAAAt0lEQVQ4y2NgGDbgDBpIwCVRAJc4KIgEZM4EwCU2KSEBHySJCcg29iBJGCBLgHUs24FdYlnNYZiESksDXKJALebMaagES8yZw3CJypgzZ2A6WIHOd4BJgABMgh2XBEtpaBjcqDMHs+ESDFyLEK46aMGGkEB2rgQDJ3aJAFwSUSRL4DQKp+VHcTkXxYMoEkhBQpwEcrCjSCBHFJo/1GIO408MOJMPzgSHM4niTNS4skENqnjYkMzkAEgzyFpeX6L3AAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-recordStop{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAOVBMVEVHcEz///////////////////////////////////////////////////////////////////////99PJZNAAAAEnRSTlMAMPndsnZj1CSYPcmL6wsdoU80pOJLAAABu0lEQVRIx5VV26KEIAhMA++p9f8fezatFDPr8LSrjMxwiWlqzRuMYKW0ENH46c3WuGyVLXEduuO83UyK59fl1jX5EEUXD9DOaSh43XEP5zUIdZ4pAecTofVnWSt3ip4rx7N61vjnY1D30CpH4QQR8vsP+RA5Rs3KpjfMU/pMim/LgbvH7DF2F8sU0owqapKLqgnhuGWwImUagn2zhUX6WQQoYkXG9WxSAJd700/ygsCpAoliaDsPiG48GM1X5Ft/06sfp8DrDE+3DpekWjxM6366fgEcnklC+AIIWYQmPEeAaUmjFOnhCLDfxZRH+w1gU5b/DYjfNcyJ0p7dxX8B+FwxQVtvAGB5ig0d5gFA5KbzS91hI8CenvlHflfN/XvzJQnxbBEko1gbvVnPii+FadSVRUEaYylQfJtpLB+aRG4LY/80yKdUbCraM0lozGR4ewZ0Wtnj1iC7hjWKNnjYmR62W15cLlL3+2pyMR09jccyuyUrHKsvthc5xsY1iWJ0Xk3t+2XP7AnWwrAQmBH6asXubmL1Z5Lz6o992jWiu9lnMSiQsK27FS9NxhCumZgB2fTBPFsFolhZr5B/D3o9sJAI6skAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-recordStop:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAMFBMVEVHcEwimP0imPwimP8imPwimP0imPsimP0imfsimPwimP0imPwimf8imPwimPwimPxLmg1rAAAAD3RSTlMA15sisGUvdz3szYwMT8H+hDJEAAABx0lEQVQ4y3WUO08CQRCADxBQchBiMDE24KswFlw0Wtig/oHzUWglJBZWio3GDjUxlhhrEzT+ABMrO2iptLLVRluDggI+xtmdXW73LkxxNzvfzuzszNwZhhDzdOxqaPGgYrgkOgFczh90ezAJQmpL2v6OHYnqk2aWxOTtAnu/O/Y5XNZXmTZjo3ot7aESwLdFeqAM0MoJkMf9ltwVQJ9PcQN0UFIJogvdJgLQVFMsAlxyBaPmVBDCE8W7qd+2SDsx0q4OwhSrCG134W54jDfKLjDNxaL8/9AAMM/solptRnoALBbwEPWYrOEzLnrZsTGoMW+fBHG2SiLPUNI6KMOH8QS/XsCMBYQekIEv7NGZF/Rht2yqmA4i3UG9O0iTqgMfhirDhRdU8XJZqqEO8tDAqje8IIt1r+I5HmBjfD9AxQ1MgJQRpc6GJRALHOAS1WRlhMs4VaSFzwIWzCUF3op71kdNsNs/FDCuA58YqCQl7IhN3WbDnlLtfjnuON515WM17c7w41QPOuBIzDT5wqi0T4ESGV3gjtTjkuPATwHoX9+cPRlmmvJ57YAir2qKy459QL/UhrS/uAu3xf8KiX3DI+b22t6jc9F/qfaum9E1pJ4AAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-fullscreen{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAALVBMVEVHcEzMzMzOzs7Pz8/MzMzMzMzNzc3MzMzMzMzMzMzMzMzMzMzNzc3MzMzMzMxdHBitAAAADnRSTlMA8AwGYt0aUcg+til5kgmZywUAAAGWSURBVDjL1VM9SwNBEB12IcGkMagxNktQSZFCYimIJAqKpZ3Vco3YBYs0NkKQgBg4ECtLFSFVCGgQrERBsLayPE0Ip7n5De73BdKLTrE3ezPvze6+GYDfsAQKy/Rz0i/OZJjY9XREuohTKulS+ZFGiADfyZXU5uHktI44VH5apDx554aXwJqloiIwiEsStAjCAsRNF1jCmGqa4Vc+BvS4JkjwzyPE6xiwzsxxeTbZxqjkANSWZFkoIj5bQBl4aBDfkPDNpeRRialB+SRAFz8UU1sAaEUjSCDoJ7iukZJ1V+c01bFczM1pWaa+a0Rp7MHn4V8Z1R9vLLCv9WjKdVFfk77JP+bZdz35YAfKXx6KhKp93abUYVbrj49g9aAYSuFCLbPUwzdCsYEWTloXgw1oGwQbENeuKwxzXhxwAADRMFd+zzRc6AAASY6RH8VjUHaXTrlOpDgCUP3gelc01e2d+f16cWbnQ46BGCRNVsWAWQJVw2xGfUXVv2k1OsLfazXqblzS99u1FwKFvBJioXBY2+r82U75Ab7O0ypVV0wKAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-fullscreen:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAANlBMVEVHcEz///////////////////////////////////////////////////////////////////+GUsxbAAAAEXRSTlMA3clDHfdfDQbsVG00u4Cqkr04dRsAAAGaSURBVEjH7VXLdsQgCPUBAROdjP//s1UTDUxsz3TRTc+wC94bHsLVmP9hkE8LIdvgupt2tFhcpy2CMZyVxNePEoqDp4hwEGz5PTqWoZNzLrmD9riltBEYzzpZQ8bweXy56Qy6Tivsp5JQYtawuMH3eJlSxIJtdSSa4xer4lMB89pK23mKrwjZVpsRzLq35vEE3+r26h6w5EKppcp3fP2lIpTPWJvoXoobeNI1sM3haHvx56tu2sdElJ54GbnPQ7RZ1sCpl8qPEMXBNQ8vN82jNbzLCPzGSDOZj/2Bqd19R1rELIEbDFrUJfKYdlALbDuDMko/hz7t8DqtCfr8h1Vt4rn7eh/6Ph37ch20aW8McsfGCOXzcr+GOlQG1rJ2HSHUDO/4Mu01qVAqTCpCJfgZ3phTS2pKm5aZOMUbs7Q6nk6L8UzRh6W78jH+gD/VRxHokPuNgUGTaPPR+zDR1mrlvcGgwkAVacSbeoN4Z0rb5/6XLrW/2GTLk2NhXHRKzrqAt9cD4rr4ddvae0NAYgOICdZyvPj4UYRf2BdfbB8iWvnTUwAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-fullscreenExit{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAG1BMVEVHcEzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMxi4XDRAAAACHRSTlMAf3WqJmy+7azWNnMAAADNSURBVDjLxZQ9E4IwDIaLfMzCOTDSOz07OjLir5CR0dmJFVHIzzZtnMzbOzcyZHnuaXpJWmO2ji4GhpAzzZeQzw8FKCj1pMHss9OgpwsGOS0YGOcVUMPsfBVkmJoVCBJW0FFB6SFIaMKAlRGDnEiDkuM00lP3SmL6H5QSh+iIr9ZWVWntUV9Z4qWbHAWrhcUYNLC4Wwm3xb1r2mOQYoVn2EKFAVb81KHiQQq6L3vSUoMBUmSzgCKbVeiL3eTp3Odf8H1sxRAZZNZt/Vt8AHcPQbiQQVF+AAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-fullscreenExit:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAJ1BMVEVHcEz///////////////////////////////////////////////8NopmKAAAADHRSTlMAe4Fzh7MZbKPtN8gpX19xAAAA3klEQVQ4y8XUIQ7CQBAF0CWhKQHDGtQKQFcURUgqEARBED0Aoqp3IKnoATAEW8MNOACmhQYKcyi6uyjmr+aLqXj56bSbVoh/J3HBxcw0ZfA2c3FiQLGeQcWh1lOVDDJTAeCbCgAR6QqCDj0xCEU5Bl2BIALKMwhdKjGILRUYfCIOEynlvABANk64M5jabJxHfJY2I76yzYu/ZCc0s1WbNYAQ3jxqwMoGHoqWGHpUQajEgcYYcKWFtjLE4FGJQewoxODRDQOqKPPcHl9sfzSXa/0L349tEDsOsp/8+2/xAY+BZBY9KhM5AAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-audio{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAIVBMVEVHcEzKysrMzMzMzMzMzMzMzMzMzMzMzMzMzMzNzc3MzMz8gU00AAAACnRSTlMAL0jMZKt96hGJsSKv1QAAAJ9JREFUOMvN078KQFAYBfCbJEw2q6SUyWxTnsJT2JTJ6D38Gb6n5PpT6BwbuaNfTnz3fEp9fZwAP7czD0MsGCzBYJcEYsGwBEHQQRB0EII1CMAWdAOzyJUvJ4jyDVyZVHKGpj9guEI2IuhaDFadYnCkIm9I+kPgn8t+kI7kOsT72HcwQnJR9Gofy8DrwwtHK8pLzdeALg5fNb6cdJ1fOjOGYrl5CLFcggAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-audio:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAJ1BMVEVHcEz///////////////////////////////////////////////8NopmKAAAADHRSTlMAL0TQf2frEaZYt8E+idL4AAAAnUlEQVQ4y2NgoDdgUcAuzr4Hh4TaGQHsBp3BLsG+BoeE2hnsEkCDsEqADMIqATIImwTYICwSEIPQJFhnBjKInUGSUA2CSPCcOcIwB1ki5xRM4iiDDrKEzQlsEuUF2CVY0jbgkDhjMLQkEkj0IM4gQQ1EHMHOOXMiakRpTiQQtXgTA+7kgzvB4UyiuBM17myAM+Pgzmq4MyfO7EwjAAAEf+BAxqI/agAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-mute{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAMFBMVEVHcEzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMztXryaAAAAD3RSTlMAHd4P7ztyiy1OnKhdx7uY2gyAAAAB8ElEQVQ4y72Uu0vDQBzHE45C3SJFaSGjUEiRpJRCBifXokkpSv0DfOBrEKxUUSoFH9ClFAUfU7c4OARRCs5WjThIsJuDlLo4ldvPe8SYxGyCt1zgw+dev+8vHPcvYybvfCR2OgUv2CoLdI62bUn3gq5UJxOomZofXPUNrIChJRklfcDSiKK2bYQ6PiCaREk0EQoYPFYa3F73F+DGsBJLmAjBAMBKakG15KAxqIhd2KuK5reRccBDNbqGJhfSlnNc/kBh4OY+vaoR5QrRC0afKgxMrKdXNKI8yxRENpyd+i0VA6wMm5IOBmORCwfAFjGwolofevbuPrvpGhRgpVaqiJflrLuUQQFRToS9l894EMDe7q6yL7/G5wMATc5mQCiAvQo3HAbwLtyYHQZgTxhohgGUa/CP12EA16W2/Ou4ZEj1dNG9oPMkZGiwJWQ8j+huPoJy9Z/XHTfUFSbAURveCtE5px5vs7hQDKS25FSDn2KR5Up1/lRmIHne7BvKd82LMRJbSjr5M40lmaYZ5/PRpiCpizjJyk+CwOGOzACLpSdz02QxkiuRhd8dNOwkV7zl2YX1mcySKJrQiPkXY9klSt6rkJPRwIlmzrcWSGyzHuTb11V/N0y/S6SdwdCR4m/47OIN7XOQCfwJwHGp8IcfyRdBLEZK4Uxp6wAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-mute:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAP1BMVEVHcEz///////////////////////////////////////////////////////////////////////////////9KjZoYAAAAFHRSTlMAbk2o8o0P5TsGnVojFi/XHcV9urLaq0oAAAIQSURBVEjH3ZZZkqswDEXxLM8T+1/rkw0BuwM0f131+IvDyZVk6SrL8p88QCHp8UAnWmoWoG8AwQRN4/vOiqwUuwWqiob646MMhEW+KnMLMIXffgiZoODBusb7kCzjByF7OOszkOyp4amJ7fWVPwCN6BpyWRypvANPCvi7u4aTXe13YI+KkYA5bMRTSMlLnSyGwisSH40B0FJOrKVB6iAw2U7sGgPgQ/DTPQjitCOZT4Q6gWCtGwGFbSM34ENUNSpAKTACmC31rnRgJwjDdkFAJpfkAsZcAJvCSVQB2FaWWKdB/ATMAHwIUYL21lRBZRDiC5AnsBHBUqxEyaraFMoz0AnvHNa6xDWS34FGgNf6PYAEZoCt+BroUWFVbeb5HbCqSvB2cToyca+Adjlycdawt0C/HeyScl1W/w3gsU3aAd7JF8AuAN6isr7NAogXAFeq59Ec7ifAm49hF8wCMWfVNXAeCAkjEGuBr6R5ZGJzBrl4gGniBME+w8aMMyCsNZtfaemnmYaAQ6I3Rz0fnDhHJxc93Vrr7sHWjP3XRtTba2L3EkdFVaPC6YmXxKI9DGF1YPLdiwfD2r37cL5nDVw+uKzU5K27hsXCXPtyC2uyyl0D0p2TY7VaIvFYWU0Dm8TdOXmrVp52HG4lU4K/N38PpS/Kw70dbmb/sC0WCcQwNNzzjrzUj7veUyIIyL/4m/EP8V829O8zh5EAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-ptz{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAM1BMVEVHcEzMzMzMzMzMzMzMzMzMzMzNzc3MzMzNzc3MzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMxDm1AzAAAAEXRSTlMAHqw+E8It/gjxc03jhGDTlgAjE2kAAAI6SURBVEjHpVbZkoQgDBwg3Of/f+12gtfMbK1Yy4NampCju4Ov1y8ruNyyo9fyCibVlNW6vUu29GpWQwTVdPTernqwffHex0WP4Nro3k+PrMKCvew/PcZ95aoNsY9yua+cGxTZsnf2K7ch4CAdGnWwYx/5LgKZCgxGdrhH3BeqNmnwviFXPZbQJmcM25HJ5n7/Pczr2QqksMJfO7BJOHLKLWFdMiL1QXYRwFagMklb4GB1zS7s8Le3fqH7Q28tVLkKdIzeaOJB2OKtY8KfTQCUa4++dNsLbrqpTR7xguHGt8hfg8P+seuaEkNdBjahzOD7g1cHP21SL2LtMNBKMdTRJjffTX1wVgrsEb1ITJU6QknwYJAcQky2cE02NbzPp70KyKggtpu9xM7Ik+CBIqY+8FrYyRUkrs+MEm1TG6tG9LZxNDNFGDue63TYGgIHqUUcuNhvhyZtn5LnlDq3Juxa4noCuX0scErOpNMDCrVcHPCS5rFGuQR9KZpxnB6CQ0ZO+AIBcTPk3UdbTx1L7jLEEHsMW7ZYm8NlIFyxn8+xdL7MURYEhzd5k2N2TabxIAORwC2r00QQfNSgrnqTJfh7cDmDu9ggtV0EZFr7kGu4KAxtNDln406TLwF9iZCIwn9EfjPuncRHYm5x3NfK3cFAS5kWxljSnTFlPHBAUFg5HsCCVOd9cdwXq+027un2QJlMjqISJutCDceRtTTuT4+1Q3HWHR8cu0fh9sGvADTYH9iLah/9nPz5+/MDJnQfoIVoAnQAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-ptz:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAQlBMVEVHcEz////////////////////////////////////////////////////////////////////////////////////1bZCPAAAAFXRSTlMAeVoYDS1pBiPv4/g6lkzO2qSxvoixscijAAACi0lEQVRIx51W2ZLcIAwcLnPf+P9/NS2wp5xkq0ziF3ZRC3R0i/l8fvi04oxx89n+RBi1sqB38TKw7lw7lNzDa3U0e57bHhJ4d567HlqGC08eLAj9Gv8XD4/OwtsdhlfCW2s9LfWtuNrMhG1uLWP17Xh14LF4m8dx1OJ9jkm85YCYch5JzDVy81on3MFYkpTNYGmHHloYI+aqlNhlh5ZSvmH1AyBUwPcMX+u/clW3XYvA2YgRGXyZIZX6PXv0l3GlV9Jp9FKcK7mytJIg8xEeBdaBtV4P8tAixexnp73tY7ZBkrk9WEL8t7ZUDqtIA3jXa8sODSeUVqw5aztT+g4QeNAgM0PGTA0+EmfVeUvU0CEW4hX+lt/zseE7jJKDSmi0EUKBhr7EAMKPvNjOA9Fz4Yk/CFgcGRSdkYOHCLRxQfzKRN5SB/b5Ot8SzzQiKqcb6ipFdCfi1JI84OBdxzarhJ8RkpxHOQszl7bpn0GpmnXq6R4OfTkwwlyUWzeQg7rSLNhNUzEUEqJF3DMHeeXgqRIaYwHimLKipK8hMZOYVfJ5oKtIFSgXk5z4KcNx3GOIPGYfPigh9YGHBNQKVKbZhxMnqq+OHfWBHARZfWm1dnfSXfJuXInplse8wy39zkisdQ5kuLY+Bpc5hwGiH8Mx1rE24DFaLqXkfrNVkjk+8JPTPF0bUw+R9MCVuA8ks/xDyF/9orMqpBQeiob5RbIbmv7/TxvoX1Oqa914TsYg7QUWx8Y7R89JQY8mY6Dat1G5GARuMOgYHY9cbL1vNvc++fk67olLk4nrQSl7457OPqdeKn+vEwm4LPzW87DyXvqIyei9znHS+cZz9SxV+Qf8nNbjn37NkDx4+PmCXzHOLUMtjgmUAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-ptzActive{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAANlBMVEVHcEwgmv8imPwimPwhmP8imP8imPwimPwmmf8imPwimPwhmP0imPwimPwimPwimPsimP0imPoLqfILAAAAEnRSTlMADprCJBnU/gXwh3LiUKxAXjJ/ELXKAAACbklEQVRIx5VW2bbjIAwLa1jM9v8/O7Iht+09MwPlpS2VwLZkJ9f1lxVG1joPdZ0u1ZIxurhv8DH6dMpQI5t439GAEc7xYPgTRnAtV7plReRhd5kDP8+fd+wzt70yPhIJzWT7/6DCJCAYLReZPMIuJC4pClSktHqbNpJO1aTmmAme3cvtWs9NSfq52CPhnJNjlbVHwgmWSWGHeQHcKFjj7fygwidf2fa4mbVOuladcnsoDn9/CKKAWf6HEtpANiJvUp9Fgr0SvocPP/sqjOCK9ktpyCAo4Kt/d4n4/6baseNKAt5XrauPN1A4ZLAd30RUI4kNfELVx+yd3lrXYIg1Bp/B/dGs5N8mPsJoVyiwkofQSlm+K9aiwmoQMDoI4wefoK/rhkESrSuV+BR2i6HZH9juLzxCtBmn6rFmB66gNJQwBOSxncT/N3FAlxAoLQfJDy2+6rMLI3aznl9fhOcGSdZzoNhex2K3TXJEVe3M4Zb6QhHuJc5BWakYIqqietcPw6FK+EHofUHRqtLEQ5X8dKVENXXgEpLOpcjwkFI30YFVHE8fyx2ShZJ/ydTKlZwZ4BCOv/af9uMi0DILe4kieynScgPbhai+DRDckTT6N6zJpI3HMghM3BMg+q9pHmwrbR0Q0D5wc0JHPy0E5Ur7Nf3Rk68LnR0NHfO28/T5P4cNr+uLFR7eEdiNxvMRbd5Onlqsis4iIVdme4di3akWOz+3T0aUnFWHa8QZrO51NO69MeLPafrNuBenxel/3d21j8k/jyxf+75OQabFxOtuT94G3Lpjzb0zBn2Dl0ep/waPidQ/p/XB60Dp7e8F/QO7WSJg4zEzdwAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-ptzActive:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAANlBMVEVHcExru/9ru/9qu/9ru/9ru/9ru/9ru/9svP9ruv9ru/9ru/9ru/9ru/9ru/9ru/9ru/9ru/+3uxEqAAAAEnRSTlMA5q0cR/PC/ggSKtN5OIhaa5izIOiAAAACV0lEQVRIx5VW2ZLjMAiMToNu/f/PboNsJ5PaKWv8kKRkWkDTQF6v/zyUfO+JX9sP1dKKd/v2acQcm992kbo1R4il7iHIif0BRNtCUOozH4cikAdt2YfjRLTnzN15/8I85wFCI2xDzlnyMLO7R0aFoTzbFGB+jIkYLkyePvmW8d2fs2ZfZuv8It9s6zvV5uSr2LmKb9oVh37QvpjYOcf8fcO3Cb1jGqOU0SvTTd6X2KUBLgKdLzaiDtE2n+isTh8/+AX7E6/Vh/NNSyfVm10RXIe1nxXRapmsDQB7SMnkmE0IxgqvUn0jteEf1T2CHXgr0gjZllGk1HoJL7lD7fRpD20CgJcwQ6EdSh3lLK0zVfuqz2WvPlPJh7HqnCQ4MysxoAYQE0vHub/toRuqzRy5pEUvbg62MzlJQn1MHBe1x7WSAddpNDSN1c9wRMhKfi2jrICwAIsQvHkD7Al41bOrBNC1Y7QdmSg15LDokGETJB/imxYJKfmFMDqI3FjUkDS3NSEDjBaxknRYSb+4nj4kC43W2OKrkqGB8jV2Fq03YiWbhHQTpUV1mMHXWYf8HlNX7ZUQRC6iwBAIK0r0ILr1UxqKsPattAkhwSIiMl76bT/Ft/TbTy2jHQoM7Cz9isHVMb6GILl0H4DGivbw7xNc8rAtiJn3O/qvD6JT/wgs7Y370ZSdWmbZWEKiG1lXImldW7Q1jGMbZW9tUVKZmGjjGvf+EXAqzWiX5OfFSHVp/zjbfGPc3whdcbTF67V2N1e79qYMru2/AnzVYFsdWFt/+nOypv8vQvoHou4gOtSrG5EAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-performance{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAnUExURUdwTM7OzszMzM3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzW8hQDoAAAAMdFJOUwC/gO8ra6tUQNmVEKtAA1gAAAE4SURBVDjLzZMhT8RAEIWnpS3tXcWdQ6wgOJIKfFdUICv6AyruB5w4EuSJCwRXgUBWkGArLsEi6JVuaZkfxawguSWz/p7azLdtdt97C3ASagp+PpeXPDjHVx7McMWDCBc8qPCZB4m44YFIeOBh+ckCf9z+sCCYqi8WvA/5Nwu26cfA+JRBs4h7WmX/tr9AXcQHAPdgzEPZh5idTQBOZ3zyiModISKQGxZ7dd85E0SKfMGjM7vXeI/5AE5LvrwpcK9IOrQYB5BlCsFIvjzgrkaSjsBZbmC9XsGsAxfn8gKXpL9sSlnQFBwFTTuaKWXgI5Ar+sfHTrW6DUDO+2jEEtCNQ9wL6gNujMvvdFS3eugxGT51fBXxTvF1wLLngbT0BGphKalAy0MQ3Z4Ha2V7UoMFJKkFVAWcvH4B0OJfd9YsTl0AAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-performance:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAzUExURUdwTP///////////////////////////////////////////////////////////////8/RimEAAAAQdFJOUwD2qdfrViyAwW2XORBGtSCsD6SyAAABN0lEQVRIx+2VzQ7DIAyDYfxToH7/p10CbQ+T2s33Rb1MijM3/qDG/EurolD9zSNRggBU0hFelMABmenfADhGkJDhGUFGgiX6I1AAQlDgZK/td8ELtQORiTmIq42I2bYdCD8NjzPmYQxO+rbn2S5qzEUF6YjkgcJude56X3s0SoL7LRAeylyaVPiFq0Jyx230mpeXmXVOHssRbhackhCq25Sny++xcBW1n6Snqw6BTgrqRP6kzfDcgmRLGonDWSf2OecwB491dOrEVZpNsxiyiHzWJ0Z+BbBwzaoWVb49HrqVfSkxHen7WNznLhzl8xpQlT3E9oHUtYaufB+7NY9g9ctbjFfj/h1DwXUrzDltMn1Ql9M814EQWPLmEBg4R7JSzpFQxTmSBMkLvJKOhFHfKEEnv3L/+qw3DuMPzAFH9pIAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-performanceActive{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAtUExURUdwTBGW2xKV2hKW3BKW2xGW3BKW2xGW3BGW2xKW2xKV3RGW2xGW2xGW3BKW2+P2IvgAAAAOdFJOUwC/gCvzq1RAleURc9VmrA9rXAAAAT9JREFUOMvNkzFLw1AUhU+SxtTahnZyC+IsIeAenDuE/oJQcS/FTYTi6hKcHYpDZ/EXBME95BeURpM0Me39Db4Mgk/u23umcL8kvHfOucBBKEr5eW95xoMjeuBBlyY86NOQBwt654HrPPHAca/YuUHrDQsG9eybBWa1+GLBqvS3LJiNX0vGJw/R0N6LJ+/f6x9I3uwG0D+luRU0FnmdCtBy6ZM7KvQdjgXwJYuNZVNrFfqF8IX+nFm/oBvyS2iZ8OWxgH4u1IZmU4kgfoa5E77c0jwhoTYCbTRFGE7QrXFCveCURkK/2cRBCp2gFYiyWk7Jw4AgXOmQZMAqa9uAeCP+JsViihtb9OKIPtBUuvy8jeqyHRpMhvc5X0W6Lvg60HrPg0DREySOoqQJKRbByRWbExaqlSoVwB0rwCLFwesHquttxhcsa64AAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-performanceActive:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAnUExURUdwTH3G63zE6n3G7H3F633G7H3F633G633F7H3F7HvG7H3G7H3F6xOzy+EAAAAMdFJOUwC/hKbvK0BT2XURZct0z00AAAE3SURBVDjLzZMhU8NAEIX3LiSUNqI1qBMMChFRgYxAd07E4CI6HQwzEUXgKjC4CH5ABAKJyA+oaHqBJO3+KPaYYSZh9nyfyuyXu7l77x3ASSgu+flYX/HgHOc8kC4wwikPMnzhQaTueKAiHvi43bFg0m4OLPBM9sWCjyb9ZsHm8NkwPiUQT8MjfSX/fn+F/C3syJf9YB7oLsDkjIaiHix5QCNbGBmAFPve+3lXi/0viLB3ZnmDz5g2ICry5daAvCbZhSE2oIsFeC35ssJljiQbgZitIY7nIGu4wLG+xBnpL5tClxQhCANR1Q5TSmCCQK7YjftOVbYNUOxot0EsHl0uwHdFfcD14PJLG9W9HfpMho81X0V8MnwdcHvkgS4cBcqVo6QKHQ9B1a6XY1zAcSiIFg6QlXDy+gEd714RcAqEowAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-face{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAeUExURUdwTL+/v76+vsDAwL+/v7+/v7+/v8DAwL+/v7+/v96T4QgAAAAJdFJOUwBAgSCbs9hZap+hQJoAAADvSURBVDjLY2AYRkAJCAygbEZBQUEBKJtpJhDAOJpA9kSYxESgKphuIaBuhASqyYzESjC2hDRilQBZ64BFgm2qMLPYNCwSkQpAwlMBWYIRzJsKYrKCxZSRncKSDFYzBSNY2MD2MqRhSFgqgClPAwwJBxwSbAk4jGKZDCKZp2JIsEOcOx0ztjQDYL5ENwsYJKrTsMSvGSgepzVg2pE5qSikPRPT8sopBuDod0ATZ54JsbZyBrJgAVAp1Ax2oPXMykjxYQaLA2CMoERUZQDMrgBUCc8CKIdzAvHJhyQJpLQLSu0TCaV2lPwBSu0KQy+LAwBuJj5UbruNggAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-face:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAnUExURUdwTP///////////////////////////////////////////////w2imYoAAAAMdFJOUwBAgBvfrFmcw4wrbtGliFoAAAD2SURBVDjLY2AYRkAJCAygbEZBQUEBKJvpDBDAODpA9kGYxEGgKphuIaBuhASqyYzESjBu79yIVWIP0NoCLBIsR4WZJY5gkYiZACRqFJAlGMG8EyAmK1hMGdkp7M4gkus4RrCwBIApFwwJmwlgqsYAQ6IAIrEAwygHHEaxngJbfhRDgg0sxHoMM7Z0AmC+RAPsJ4S5NE5gid8VoHg8sgHTDh/PzM60HkzLc44bgKMf3RKuMwoQ+dNIgswJDAycUDPYjhgwMCsjxYcJLA6AMYISUTkBMLsaUCVqEqAcngPEJx+SJJDSLii1HySU2lHyByi1Kwy9LA4AqflRBKNSA88AAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-faceActive{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAhUExURUdwTBCT2xKV2hGY2hKW2xGW2xGW2xGW2xKX3BGX3BKW23povfoAAAAKdFJOUwBAgRybs9hZLG6hrV9tAAAA80lEQVQ4y2NgGEZACQgMoGxGQUFBASibaRUQwDhaQPZCmMRCoCqYbiGgboQEqsmMxEowTgmZiFViFtBaBywSbEuFmcWWYZGIUgASXgrIEoxg3lIQkxUspozsFJZkEMmxBCNY2MD2MqRhSFgpgCkvAwwJBxwSbAk4jGJZAbZ8KYYEO8S5yzFjSysA5kt0s5YKc6guwxK/baB4XDYB045Vi4pCyrMwLa9aYgCOfgc0cY5VEGurViIJMhcAlULNYF9mwMCsjBQfZrA4AMYISkRVBcDsCkCV8CqAcrgWEJ98SJJASrug1L6QUGpHyR+g1K4w9LI4ALk0RHtSETFcAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-faceActive:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAhUExURUdwTHzD63zE6n7H7H3F7H3F633G63zF7H3G7H3F7H3F68TinBIAAAAKdFJOUwBAgR+Z31ipwW4yAjb9AAAA+UlEQVQ4y2NgGEZACQgMoGxGQUFBASibaRUQwDhaQPZCmMRCoCqYbiGgboQEqsmMxEowTmmZiFViFtBaBywSrMuFmSWWYpGoUgASXgrIEowgHtsKEJMDLKaM7BSWYLCaJRjBwloAploxJKwUwJSXAYYE2KUMVRgSrAFgKhTDKPbFIJJ5OYYEG1iIfRlmbGkVwHyJBlhWCDNrrMASvxageFw6AdOOqKCklrQuTMuzlhiAo98BTZx5FcTarJXIgglApVBr2ZYaMDArI8WHKSwOgDGCElFZBTC7GlAlvBKgHK4FxCcfkiSQ0i4otS8klNpR8gcotSsMvSwOAIs+RIlIrewIAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-object{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAA51JREFUaEPtmT1oFEEUx9/bnRALGxE70btkZjcR7QMiRisRbCzEQvxCLGyEhCDRBC/RoNaWFgYLFUSwUBAUDKKFFqIQ3OzNJpfCyspS8HaejNyG87J7t7N3l03gttydefP/vbcz8+YNwhZ/cIvrhx5A3hFMjEAQBDwMwzOmAi3LWhBCLDTr5/t+ycSubdtLnPOncX1iAfQAlmXdNBmkru2RVgBSSspg+5kQ4lRjv1iAIAgqRFTIMIju0i2AWNvrAKSUowDwLqP4tACm9rWmbABCiFxXKimlhu0BtPFHtdc19wj4vn/Wtu3XnPOfWVByA5BSngCAuwCwryb8Hud8EhGNltANB/B9/5BlWXcA4GCMx/8g4jjn/H7aaGwYgOd5BxhjcwCgPd/0QcRVAJhM2l3rO3cdQEq5GxFvEdH5VsLX7aKIH8MwLLmu+zapb9cAFhcXt/f3988AwJip8Jj2L2zbLg0MDHxr/NY1gCAIpohIJ2V2BwC0iUd9fX2lQqFQ6cQvtJbICSGOxHhlVOdKjuPMl8vlqzrxI6IdWUAQ8Um1Wp0ZGhryiYghYrUtgDQionxJT0al1IwGkVJeBAANvieNDQB4joglzvmilHIXAIwrpX67rmuUamfKcxoTvnoQ3/dP27Z9g4j2J4C81KBCiC9LS0suY2yMiC7rttoZuQBEQhsiopfT6wAwUvv+hjE2XSwWP0kpRxBxgohO1kPmDhAHEgTBUaVU1XGc98vLy8eVUhoqbpPLPwIx6/wqEV2ovX8AALzZ/Ng0EWgQGa1iLQ8xPYCUyx8YHjt7EWjm2I7sAy0it7ERqNWEDkeiklIJg8pFWwC1ZC6SM9NYc1oXgcaiVlxVYmVlZW8YhlMAcCnFvOkEQPqqRBqASLTneTsZY3pjapZSpwF4Y1nW7ODg4Ie202kTgGiwSqWyrVqtXgOA6Zj0OhGAiF4R0azrup87dqDJAlA/eLlcnkDESQCI0us4gOdEdNtxnK+tfkHjA027AJEgKeUVANBROVd7p3fixwAwJ4T43kp4nR2zylynAOoE/JuAiPiDcx6kFb5pAEwF5zKJ2xXZrH9uc6BTUD0AAGh639Xo6bjUI+G/NglS+p3Y87wCY+y/2ozJSGkuRDLekQFjbEexWPxVryfpjuxhllKhNtwtAESc55xHx9M1hsR0WlcOlFLHTLyv26Ypi5hesyql5oeHh3VBeN2T6TxgCtXN9j2Abno3je0tH4G/KbtRT7VUKs8AAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-object:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAwdJREFUaEPtmTuIFTEUhv8fLSxsFrET3UIQRHtBRNdKBBsLsRBfiIWNoIisD1xfqLWlhYuFCiJYKAgKLqKFFqIgoiBoYWVlKbjwy4HMJXs3M5Nk7tzZCzfdvZPk/F9OHicnxIgXjrh+jAG69mCpByStB3AgQ+AcybmqdpJmEvv9SvJhqE0QwBm4lGikqD4VAaCMvh+R3NffrgzgB4DJDCPWpC2AYN+LACTtAPAqU3wsQGr/pikPgGSnO5Ukgx0DNJhRzZp27gFJBwE8J/k7B6UzAEl7ANwEsNEJvwVgmmTSFjp0AEnbANwAsDUw4v8AnCZ5O9YbQwOQtBnAdQA28nXlp/NG8HT1G7cOIGkNgKsADtepDnx/C2CG5Muytq0BSFoJ4DKAUxnC+5s8cSCf+j+0CXDBjAJYNgAA6+Keg7AwpldyAXqBHMmpwKjYyThJclbSSQBWfyIT5IF5kuQ3SctJzjcCiBHhxUu2GM24gRx1IGtj+gDw2I34Z0mrbXcC8JdkUqidFecEAj4fZD+A8wA2lYA8NVCSHyRtcGvouKtrg9EJQKHVB7Ht9ByALe7jCwAXSb6TZP+dAbC3D7JzgBDITgDzJF9L2u2gQoectV0yAD7IEffjDgC7plaVJQdgYotdLOYSMwaI2gETr51jD1SN6qDOgSobw/WAywltLxRVhBIxi7LxInaxUCHHFvmCpFkorWInoR8LheqsA2DB3LGIRdPIAznBXC1AIVrSKncwVYXUMQB2Sl8h+SYQOCanVaIBPJAVAM5aqBAIr6sAnjnh78s82aoHQkYlWYwz7YXXIQCLRK+R/Fg3BYcO4HnlhPPKIfefTYX7dm8m+aVOuNdP+1OoSow79KzKL5LfY4UvGYBUwZ0s4qYiazzY7RRqCtfZIm4qfGBrAEDle1e/0FDoUTKvUxiT3gfsaWlBbibFUsyDiKSkBK9nf4LkH19P2RvZ3cxUIVoEmCVZXE97DFXPrJY52JUy+lY3Ji2S8cxq4i3jsahk3QdSodqsPwZoc3Rj+h55D/wH5CHfQHNA9EUAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-objectActive{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAA9JJREFUaEPtmU+IE1ccx7+/N7O0BwUn24UeRKOd7LalvS+I6HoSwYsH8SCtLf1jEqWoyLJVMfEP6nlNIgi6eFChCB4UChaU0h7aQ1GQrnFSdw9e/JNs9LTFzPvJZI27m8xk5k02m13I3sK+33vfz/u9N+/7fo+wzP9ometHF6DTGfTMQF+mYNqwd6sKlFLcK++P3WsWF8nkUyr9stAeTcXN624xrgDVAUgcVxmk1lbaGPIFyFocou9fSonYzvo4d4BsYQLgaIhB0EYA174bAFaNWpuFhrthxDsxQQCMrKXUPwGbvfr2BSglYh39UjmwXYCwy2kh4jqegd5M/itdaL8+i5vPwwB1DMDIWNuJcBbA545wAs4V4+YIiJQ+oYsOYGTzGwniDIANLjP+hkCHiglzNGg2Fg3AGB3/Ugj9NBO2+4ujSSaMeJ2uc+PbDhC5aK1GhU6CeY+/8IZz9E+CnSomBn7zim0bQF/m4QqbPkgDOKgufH4EAzdZaKny3vUP6vtqG0BvtnCUwY4p01oFcOIZuCJ7elKvvo9OtLyESMN7IzeViA3VC3TshiY4Wkz2j0Uyj3+aMX5shAIhuia4kn6Z+DSPu6xjiCotAQQRMeuXaJJYpqsgOetbcBV8TZA+ANxgotRU3Hz48SWr7800DjHL6VJyQMlqh/I5jYZvFsTI5XcRa0cA/sLDv98iieMv98X++Sj7aEBCPwjwD9W2LNMdAqhJnQMyc5D9DGBwRhzukK4fK/647q9I1hoE6DDAO+ZBdh6gEaQ3V9hi27JS3tf/u3Hhv20kpQPldsgthQw0fOcnpc3fVK2EhosEmE33x9LJwKxM54Lj/Ap0SeoCBPz+qVw7uxnwmdQFOge8R1n0DDg1ISaxqSbJy0oE2pTvqhStbOK5FQy2ka6vOTVkoL6o5VaVWHX+yVoh7KMAvvPbNq1mQNmNBgGoiV55fry3R+jOweRpqQMBMO4wxImp5Cd/tGynVQBqg0UvT3z4eroyDMaxenvdHIBvE/GJYnzgb69MtjUDboMa2ceHCTQCoGqvPQBuSOZT5WT/fb8luOgANUFGxkoQYVja+Lq2iQm4ygKnS3tj//oJf9+PamUuzBJqJsY59Jz/9wh6+iJpFoIKXzIAqoI7solbFdksvmN7YKGgugAMNH3vqp9pN+vhtq5VMqT2PpAbjwrW59VmVAYL8iASCfdGBvm/bpQPrCvP1eP+RpYrXA5XKgTaBkA0Voqb1eupL4DToFo5YLlVZfadtkHKIqrPrFLIsXL8s0k3LaHuA6pQ7WzfBWjn7Abpe9ln4C11Qo9Pmb2aMgAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-objectActive:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAA8hJREFUaEPtmU1oU1kUx//nvthx4cJqX3RgGLsQBNG1tq8Z7axkwM0sxIX4hbhwIygibfPMeyapunY5iymzGAURZjEDAwoVm8SPhSiIKAjtQtAmiooLiyb3yEtNm76+5L37kjQp5C2Te879/+65H+eeS1jlH61y/egCtDuCNSOQyH3cWirNHVIXKO6kYvqdenbxqVlLxS8J8Txp6Ne9bDwBnA5IiIRKJ5W2LDHsB2BmC6zqmxk3UkP6AbedJ4CZfTsNcL9qJ077VgHU8r0MID5V2EsCk2HEBwbIFdT8M/aGBkgaelt3KtOB7QKEnU9NsGt7BMyp2cOa4P8tY3M+DE/bAC7cK+xnxmUwtjvCCXzFHtRHiEhpC11xADOTjwG4BCLDY8S/MvhsyoheDRqNFQMwc292QmppEPb7i6MZgEdqna7V9i0HSNx/95MscRLgo/7CXS0IWS6VrFRs8+1ati0DSEzm18kesgGcURa+3OAfSGklY5ueuP9qGYCZzceZySKC1gQAgPkvXtNjpXatn258CmlYSOSSg/qwW+B8usH9SSM6Ec/lTxM7iR/3hgEh4Jpk2Kkh/UVikiP2MBUbAggiYjFfchajtB0QM/fuOFg64D8H8QHQTQ3CsowNT8cffdLnPn8+KyXPpWKb1FLtYJ0tbbU84asCyRYOEmiMwTtq+P63JJAYH9AfxTOFbUTlNXRyPlmTdpsAKlIXQZyDDJJGGbx7/l++BSHM5EDfg7HMm91CRM6B+fdqyA4AWA5iZd/++hWymDaid+OZ/G8EGgXB65DrhAi4Jw3NsORj5VRC4A8AW+tN2Q6KwKJM54b2HcD3EtMFCLojqVw7uxHwGdVQ992OjkC5JqSJPRXw2qlEsMpFo1OonMx9/7gE211z8iirLC1qeVUlxrLvtwgU4wBO+K2bpgCoVSX8ASqiRx682hgp/jBaL6UOBsC3pMTFdCyaaUI6HRyg0llicnptqWfdeTBMd3pdH4D/kyQupgf7HtaKZIj7gDpAdefxzOw5IjECoJxeewEQ6CZBpmwj+thvCq44QEWQmZ09BYjzLHFk4SQm/C2KIm3/svGZn/AFP+qVucYi4BbmbLnOb5rGr+zB6MugwjsGQFVwWxZxoyLr2bdtDTQLqgsAQt33LvdIe6UenvNaJUQqJ3Hi3ut+KSNLajMqfQV5EAnzRuZoEF8ivfZw74dqPbXeyP4MVSoE0DoAmkgafeXrqS+A08CpHBDTPpXRd9oGKYuoPrNqETlhD/w446Ul1H1AFaqV7bsArRzdIL5XfQS+AaeCtE+rbksUAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-occlusion{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAACCVJREFUaEO9Wn2MXFUVP+e96X5oa9UoYpUszrzzZlqLKDYhgAFaaKU2+M2W9Q8TNUQSQEsiRUjFVaHGNmoBMTUmaPwD2iIhqKR8WEBFGkLFUjbtzDtvpjYrVhpCXAtm1867x5zxvnXm9c28mR13b7LpdO65557fveeez0GYp1Gr1d4VRdF7lL3rui/n8/lX5mMr/H8wDcPwIgC4QkQuAwAVWv9eA4BJy/8sAHg7ALysf4i4DwAe9Tzvj/3uP2cA5XL5CsdxNiLi5QBwUkQeQcRHrNB/JaKZZuGYeRAA3gsAZ4nIBkTcAABLROS3xpjdpVLp0bmA6RlApVI5FxE3OY4zGkXRdkTc6/v+c3PZPAiC80Vkveu6Nxlj9ojIjmKx+GIvvLoGcODAgTctXbp0CwBsEpGHEXEbEf25l83a0TLzh0RkMyJ+AgB2TE1N3b5q1ap/dcO7KwC6AQDsRMQhAPiu53m7umHeK00YhlcDwC0iMg0A13ZzQJkAlKmI3A8ADyDi9Z7nnehVsF7owzA8Q0R+BABXIeJY1mF1BMDM3wSAcRHZ5Pv+nb0I0i9tEARfRcQdxphvFYvF8Xb82gJg5gsA4FkiyrylfoQVEScIgttyudxLhULhwSQvZhYAuJCI9qftkyrckSNHzs7lckdFZJ3v+0/0I2CntRMTEwNDQ0P3i8inAeCUPmLP8/Y2rwmCYC0iPl6v19+3fPnyvyT5nQZAmQ4ODv5aRF70fX/zfAk/OTk5PD09rcbg4/EeiPgPEfkUET2dALENEc+dmZm5cuXKlf9unjsNADNvBYD1AHAJEf1zPgCUy+UljuPsQsSPpfD/m95Is29h5rcAwO8AYC8R3doWgDopx3H2I+IXs17/XIEdOnTobcPDw3ry6zrwCKMo+kypVDoU01hreK8x5oJmZ9dyA0EQ/AwAhnzfH5urgJ3WVSqVd7iuu8vGTB23SLM+QRCoOZ/2ff8Ls2oXf9DYJpfLPSgiH+nGgfQKcGJi4szBwUE9+Uuy1orIQREZKxaL5WZadaiI+Ey9XtfbacROszfAzL8wxtQ62dysjdvNM7MGcSq8Rq1ZY/+pU6fGVqxYcSyNsFKpjDuOkyeizycBHBeRjb7v/z5rh17ma7XaSBRFuwHg/C7WPYWIV3fy9kEQXIyIu4no3bMAqtXqZcaYnUREXWzSNQkzFwBAhf9wF4v2RlG0sVQqncyiZWZ2HOfaQqGwr6FCYRhuE5E3E9F1WYuT83qluVzu74VCYWfzXLlcLuqDBYAPZvEUkYeIaBQR61m0Os/M9yDiG57nbW4AYOZnAeDWpAPJYsbMNwLAD5TOdd2L8/n8Hyy/FfbkV2bxaKgB4s89z5u1LFlrmPlSANhKRBfGAPTBrCGiatbieN7GSpoaDut3IvLa4sWLi8uWLXvVbvBUFi+NchFR00/V6+16ollr7AGpaj5JRCMxAL06VaGWNLATM2ZW4dc00yDinZ7nbdLvrLXQaDZ1iMi9vu9/ySb/BwHgTAC4kYh2ZIGw6ekbRJRDy+AlIjoja2E8X6vVilEUtdhoOzdBROdY4fcYY0Ydx0kDcQ8RXd90m+qVH9P/qwPTf9WcK5+YJmnemfmE67rnIDOfBwA/JaJuLEWDHzNrAPZwGmCNGnO53HYAWA4Aoykgvk9EX0uuDcPwBhG5KwahAjOzqqHqewNYMwhm/hMAXDMnAEEQaP76vTY39v4oiiZd1/0VALyzGYSI3OH7vubVqYOZ9fE3NEENin1LDdqkgZkFMBcVqlarG4wxv0mR4nUiWqLfHz58eGTRokXfdl33tnw+n+pVu1XZNLpZFbIq0fKIm6yIOhX10K8g4t1E9IDSa84wMDBwHBG1WNU8NIObDReY+RYA0EqDhhJqbQ4SkRYI+hotj9gCaDGj1Wp1lTHm+ZRdvk5EDdVh5h9qiaWZBhHXe57XCLKYWVXoygSPk0SksX1fw3r4FjPa4shsVqanP5DcyRhzebFY3Hf06NG31ut1fWQNT4uIWzzPu0M/d3gjTxPR6r6k/+/htDqyMAy/Y4zRPOCmmLn1zprYJ8eriLja87yJSqXyScdxHtKSi4YCVvgxRLyvjZCpFqhXQEEQbHccZ9rzvG/EsdBFIqKmVK1AYzQJl8Z/NH4PzHxV/NkCuAsRb0hb1C4x7xUAMx9GxGu0ONycD0yKyGcTuegLAJD26K4joh+nbczMe7QolZwTkZt939/Wq7BJeq2nIuIviUgr3v9LaDSdFJFjKR7vtMcYOxXVRWPMpY7jCBE1PGiz84k3F5G7fd//Sr/CW80YR8SROK2cvYFOKSUzr0PED2hGZYw5ISLHrafUx9QI2uICmFY1RORsx3FmEPE5EXne8zz1mn2Pjiml1d+ekvrmqHO+K3hWvvZJvb2ensoqCwmgq7KK1eGttnuyNqsSvVAAtGINAE9oF6hjYUsB2EaG6vWx2La3U96FAmAt28jU1NTqZOMjtbhrGxovZJXVFwJAXGYHgPPS6lVtS+dxY6PT41wIAFpe79To6Fj7j9PCdmX2TvF6vzYzLqtrgyX2MWk8M5sXcaNDRLQjeft8Vaxj4bQSLSJbEFHjsraNjZg+E4AS2obHTzRb0kxsvirXVm1vBoAT9Xr9y2kNjeQtdAVAF9kQW5PseW+zzszMjCcbGe1UsmsAMYOURveTc62nap1TRNYsSKM7eQIaO7mu+zkAWAsArwPA45oXdPNTAxutaillsTqoKIruW7CfGqRdpRaHReSj2lvo8scezyDiY1qc7dda9axC3W64UD+3+Q/fZENVhTDr2gAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-occlusion:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAABphJREFUaEO9WmnIVVUUXSuiuahopOLLIqTBBgtCC01Ty8JmS/sRVESBNgiVJVZaaag0WBlGYNEPrSyiQdTKskEjpNKSCBqlzAqJSAsbYMV67vt13/3uffe+93pvw+Mb7rn77HXOPntY5xEdEkkHAjgk1G8k+VMnpuL/oVTSaQDOBnBmGG3DfwHwXeg/DMC+ADbGZwWAZSRXtTt/ywAk2eDLAIwAsAXAkvjY6O9J/pk2TtLOAA4FYDDnxmdPAG8AeJbkslbANA1A0gkAbgJwKYA5AJaS/KCVySWdCmA0gFsAPAfgIZLrmtFVGYCk3QBMDeNfAjCb5MfNTFY0VtJJAG4FcL5BALiX5B9VdFcCEBPMB7ALgPtIPlNFebNjJI0DcDuAbQCuq7JApQBC6SIAiwFMJPlzs4Y1M17SAQAeBTAWwPiyxWoIQNJdAKbZbUjObcaQdsdKujHcaTpJ25ArhQAkDQKwmmTpLrVjrKQdANwJ4FOSL2R1SRKAwSTfz5sn1zhJhwP4BsAokq+3Y2CjdyXtBMDueRGAv32ISS7NhN+RAF4D0I/kt1l9fQCE0lcArCPpyNARkbQrAAeD81IT/ArgQpIrMyBmA3D4HkPyr/SzPAAzIzYPJflbJ6yX5ARm48/J0f+DdySdWyTtBeDtyDlTCgFEkrKvXVV2+lsFJmmfMH5UAx1fAriY5CfJmIiGCwAMSie7uh2Q9KRjPcnxrRpY4vP7hfGumcqkT/SR5POyjeSVycu9AKK2cRQ4vUoCKZs9J5ocFMYPrfDu2sgBn2fOgjP2e7E7tdopDeBpAF83irkVJs4dIslFnH3eVWuZ2IWdwDbkDZTknHAEySuyADa5uiT5TtkMzTyX1ONqE4ALtzJ5C8C4Rtle0pCoXg/uBSDJPjmf5FFlMzTzXNKRYfzJFd5z/PcCujRvKJK+iFppRc2FJDnO7k5yQtnLOb7tLf2RpIu9XpHUP9zmxAo6X3R5TvKfCmNt7zwAvztPJQBWA5iSTSBlyiRNAvBAjBtC8t1YkGNi5Y8r0xHPn0pHlrJ3JJ0BYCbJwQkAH5jhJL8qezl5HrWSW0NnVItbyP4kN8cE9ucycVh0+2m/nlM184drvkmyJwHgrbML1bWBjWaXZOOHZ8bMJeluzdts13I1WyQLSF4dzb/DpsPsJJJuaBpKtKd2oR0ZClwJug6vJOHfdTE6XlxPckAY7xbRbWceiHkkJ6Z201l5efw93T8dzkNP7d/Z8C7JfckAAxgI4AmSVSJFTZkkF2BuK/OkX/TKRweALIj7Sd6cfVHS9QAeTkAEALuh/d1Sl5klfQjgmlYBuEqdVQDg2KBTXgawfwbEDJLuq3NFkg9/zRMcUOIsJTuQrVB7AZiAataFTIu8mmPFVpKuNL1LTmB3u1kpyqqV/LUY7HYXisnqDnEqijipOEObVXuEpPtiG+dGxP83WZUWd3C95YIkN+hmGlxKONqsJel6pi2pO8RhUF0YlXQKgDU5s9xGsuY6kh4MiiU9bHRCUEmyC43J6NhC0rV9W5IXRusSWaywV98rnZURJFdI2huAD1mSaaeSnBHgis7ISpLD2rJ+++L1SWT3RB9ghqwmkgzKjX1WNgMYRnK9pAsAuAxYTNLRxu+5l1hYYGRuBGoWkCQzgu4L7kjOgP3WodRRIAGQGJen33VLch7GJr8HAIdCh8Q8yW3MWwDwWS2EkqvS/YBJ2UsyvehHAPIO3QSSj+VNLMkJzKRUViaTdNHYlgSf+jxJk8R1DY3byQ05GS/vMNaSSvii/VEkaxlUUjr5JMY6gt3QluX/eYZLlJ6k+KvUUkpyqj8+OirH300pALWiLSHAJJnVMK/kusqs9RqSTjptS3C0+S1lrF5TTX266uw0gxf2FTf1McDkUWVapZsAKtEqAcIu4FJhZBkT3S0AwVib4lxCspjYCgC+yLBf+0DXYnuRdBGAI5trK+efuouPInLXodMhtCGt3g0AKZp9YB5f1Yhe923JokaHs0sATK8XXnSUXXAkbWEuzd6oXm83ZkpKaPVpSY7J01l6eZFcdESX5cu3jjDWiXHBRLvpcV1WeLGRjC8FEAfbienx6JZmdZC5tttOBuBkeW3ehUZ2FyoBCBAurWv3ZdEPd/Ka1W5Td5FR5JKVAaS2OHvRbX6mJT41eE5TM52/6M6uQNDxlzvhAdga91gusat81cDVquurPQA4QS3s2lcN8rYyyOGzfLdQ8cseLsiWu7NrN1o17UJVJ+zW123+BfogD+TkdLQFAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-occlusionActive{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAACItJREFUaEO9Wn+MVNUV/s59+wOqyM7bFaxAsDBvFqnWak0MYhBQUEqUVssi/aNJawg7bxaKScFqqKyt0gip4sK8XUKqjX/IL43RlqBSxLZWYqwWdWNh3oIlFClkebMUaXfZefc0983MMjv7Zt7MLrvvn93MPec753v33HPuPfcRhukZt+3YeCndCQpeCO3kmWVTTg+HKbocoKHWjpnEuBfMd4GgnJ7ADAcCJzx8iUlE0AGcBOMkiPYz4c1kNPzXodofNAE9fvheQCyBoLvBOA/wHunSHq7CiXM9+BdWGj39nGuxq8dWYyJdxCSh8UKAFoIwBpL/CMidTmzam4MhUzaBmpYjNwmNVoFEA9jdSEx7zzZFPhiM8dotiduYeAFIWw2Wu6TLm7pW1n9SDlbJBK7d+rev/c8du5aAVQC/Lok2dEWNv5djrJBsTat9s2BeA9AiBjaN1s499eXyW/9bCnZJBNIG0AbQKCb8OhkN7ygFvFyZUGvHQ8R4DOBuSWgs5QUFEkiD8nYAuyuJmk5Hw2fKdawc+fGtHeN6mbcAWMxES4NeVlECequ9DoxmMK9yYpHny3FkqLJ6PPFTEG0CyyedWH1zIbyCBPQ2ewYk3ndMI3CWhuTsOhb6uMQTEBWfOdGpr+Zj6ZbNELjdaTQO+tnxda6m9R/XCa74AoLnO42RfUNysJjyuvYqffyo7QA/AKCXQYuSZnhvrorelpgHSW9LSn2jK3r9P/PhBhLY1V6ld1b/HuBPHDOyZricn/jsidEXRnXvIOD+SzaoS7r8/a4Vxrv9SFiJDQDd5NT13IeGGy7mjg0gELLs9QQsQAp3OiuN/wwHgbrfHh4ju8UOEH3XB/9LkvxAbm3RW+yrUIE/MbA3aRqPFyTgFakKcZCJfhK0+gdLbKz1aUjDaJWG5xfCYKADcB9MmtM+zcpksuELMiVn5Ba7fjOgxxMvgjDKMSNLB+tgMb0xW4/UVUpth7dnCnp8so9uJbaD0e3EIj/OqvcR8PY2VPGqJL6jlAISZD9//Op4+zWSqncwcGewLh8il5eeXVF/OFc2XVDpPXDqwezeqY9AyLJfIpbHiuXcYMP+EnqLPREVUGEzMxCDcFC6vUu7mqYf95PV40eamcSUpGn8SI1fmgHLPiUFL+lqjPw50EgZAjVbjk0Wwt0J4LYgNQYOVBE9VKza17QlZglJOx3T+Hofgdq2o3dJKduSpmEEGSlnfOxWe6pwsZOA75Sgt1dUu0s6H552Pkg2ZNm2EKLxbOPU/d4M6FbHBma+IhkzYkHK+ePpKa34d9Kc2pY7VmcdrpfQVNh8OxCT+TVnutGAOZQKlAUQittxIrrgmOE1aQJx+30p8Xh+AQkC01vtR8B4VskxtFlJc8pfPLw2ezokVNjcEIThjRP9zomG+zJLkE7NZnu2EFjvxIzbMzNgH3c1zD233DgapJwd17fYM0DYD8Lo9G/s9GpX1p9ffm2nZ0DDgUAstcsVNAGMWQBtVG80UAeACk3NxTuOaUzOEkg5KVwx4BhYBE237P0A5vYTIXreiYZXpWf1SDNIrCsIwfyCE4s8rA7/qV73EIBrADzimMamQBItdrVegQuOaVSQAui96H6WjBnjAhUzAnXWsXoJt1+Ozgy1O6Zxo+e8JnbBlQ1+JBiIJ02jqW824/Z8EN5KT6R8Uv1R6dzDyTz56T0Ut89UVmk3Ut1W+xZXYlsyapSSKTy4Osu+XwKv+xFWu0aBio1gXA+BhgEkGL9xYsbP8nVrrY4VDG7JklAOhyz7AAGzc3/L6oVa7Y80gWWDIhCKJ9YQ0TO+MybwTVHpnnB7tDcIuDqXBDM/nYxF1haaabX4ZS+8SFAJRa2lrGx+gukjMJgQCllHFxLkH3wc+coxjTHq95otn08mUflLltoTXU1TfKtqqSHrJ9cXQt6Cs+x+izgni6iicgrg0wBtdkxjtwfmHUSqTgGkmlW5jzrB9W0Xai37MQYWAZioml0ADjmmcfNQHPd0cxdxhkC/NFrXdvRWKeWH+YYY+HnSNLzQ0S37OXgtlpyHaYETC3sNqlrLfoOB+/IwzjumcdVQCQxMo/mFzHvD1ertV+UbIynvPttUv7/muS9qRHVK5Xqv0hLT2rOx8NPq/0JrhIF3k6YxZ6gEfApZx68Aqc4Bq7PgqjqDMMPHWCcTzUlGw+211pHvMcRrquXimEZDxvmlRPSyr5MFMlC5hHQrsREQ3Y4Z/oVXyNLNWd7mmMb0LFiOc374Ddn1oFv24r61obCsRAuBVvgpFTqYl0/A/pyJlqnm8KXtdKt9glz+Qe5ZtNayP2ZgwKJjRiwZMyw/w7pl71JNqQHrh/nRZCyyoVxn8+W9fqpGrzhRY5IXupdCJvEiwMfzK57vYswc99KxKGdDCHaihldB+xWfDDiDNyfNyMqhOu8lD6860+TssbKkI6WuSj3oW0yYSZBnwHxKEc3dtGUbYF5Xg/k6CNHDTB9o4A87zfBHl8P5okfKNLvyDvV+BC6Ho4Uwih7qlVK5bZWRJFBSWyUTw+sJtLCSMC+oEz1SBNIda+xj8J6ijS1FQF1kdLtjVYE6ns3thaZ0pAhkMtvkUdq5OfkXHwWau96FxsdBbfWRIJBts0vCLX79qoKt8+zFRrH2+ogQsGwudtFR/IIjeyws0GYvtl8fajbKttVBaM7WGD/MwMuL7EUHwBuRoqeGq2PdV1C9TjSvBWh1sYuNrHwgAS+9pi88tgIYx0TPDFfnOhO2jwI4Iym13O9CI38WSiLgKe1qrwp1VjePxDVrsq6nOf8io1BIlk4gg5B/0S01emew/VSvz+ny3BG56M5/A6odz6T9kIB5DHwFxtsssbuUTw1IYDEI8wm4koF9xO7LI/apgd9UquYwS74HzHeU+LHHeyToLdWcHWq2KjuESjU4Up/b/B9u0kgtWdqPkwAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-occlusionActive:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAACJpJREFUaEO9WntsW9UZ/33HaZJCX7S5TmhalQ1NaAzGYJUgvk7pe5QKusGa0v0xaZvQkKBbK60BWl/b8XWKaLWtUJg6IcG0P+hrCMHWlcdK2OLrFPFYGdU0ac+q9BHfFPoC2sQ+33SufVPXvfa1kyaWolg+3+t3zznfd87vu4Qx+nQfONc8yF+0KvP1NPHoxjsm9Y+FK7oSRo2+fh0I3AUpFwHUyoxWIv6EiI4o+8w8m5mmE+EowEchxH4g95rZ1myN1v+IAUR6M3eRwCqAFgM4C8ZeZuyFmHDk9OmpH2+7my4UB7fmj9wwderpWZBDs4mwHOoPmAzwn1hiV7I9+NpIwNQMwOjtvwWC1gLUwVJuIfA+s73lnZE4N3pP3M6gZSTEeoB3Q/JWs735w1psVQ0g/t6xq+T5uogkrCXQKyDebIaCf63FWTlZI525FUydDF4hGFtFYzYZnzvz82psVwVAOSCI7QA3MuMJU9d2VmO8VhnDsh8gwuMAnWfIh6p5QL4AlFEAO5ixp45yj8T1lkytgdUiH7dOBLMceIYIKwGs9ntYFQFELDtGQJyJ1yZDwadqCWS0spF05qfEtJWl7Eq2N8fL2SsLwLBOtgEybeqa7yyNJthYjEVucSYqRN1HCX3GS6W2DMtmQIRMfUaflx/P4GJ9x6+Tsu6/xGJpIjzjzdEEWEk3tvtQvZzVsgPM9zEwJJhXJMLBfcU60dTJJUzyDSGyX+pqu/Z/pfYuAxA7xPXytP17YvowEdY6xyr4dekjEydxo0oG9170QadY8neS7drbl4KwNzPxLWKqdk/XTTRYPHYZgGgqs0kSLQsExJ1dd8w4MxYAOlP25AaCCv5uD/vHIHP3FdeW2IGTU3I5+WfBvC8RDm4oC0AVKRbUR6Af+u3+kQJ7rPfwNXVi4k4CLS1vg/+Vy/H9m+Y1/82VUdmQwc+T5LbiYnfJDBhW5gWAGk1dWz3SACvpxd8705QbHNwJ5kV+9r2yj2HZOwA+b+rBH7j6wwDyZxt6CcThagqIXwCl47GeTIusJ7Vs7vTTZfDBHGVXPxGa+Y9i2ULFTrHk+92z00UAlv1bSPmfSjnXz3G58c6ej2c1TGjYCYLub4P6JAZXd+szD3vJRnr74xDiy0ld+74aHwZgpOzjknhVtx78i7+T6iU2Wp/OEZzdBcLtVWj1BJB7oFK132hl5gmmXWZYu3YYQDQ9sIiZt5u69pUqnFQtErH6rycWKvhv+ioR9l2QWLU5rJ31kzUs+59E9FAi1LTfmYFo2t7MzFebevBhP+XScTWlVCdOmG3a9uKxSMq+QRB2MvANX5vML4shraNrAWV9ZQEYVuZZIvosEdI6HQCGlUmzpA2lBcTPWLTPXscSv3DkmOeZ4WCv+ho7cPLGXC63i0A3+dnIj9NvTL1pOLP46UR67fkkeJOpB0MFAPZhxoSFSX3av/2U3XHD6m9j0H4CTSz89kmgoeGG+NwpA3kH6PGzxcAOAbQyMI8IW9QT9dNR4xHr1PWEobdMXZvjAIik7OzpM01Xl14DKxkzLHs/gIXFMgR6KqE3rXVsqqUlRKy8DX7e1IM/2nCgvzmQFQdBaAFjnRnWtvqBcK6nUwY+S4a1OlLswfnc5x+ZejDop+iOq/VNhEtytLOKwIeSevBmFXxgQt3u3FC2wwsEMT+bCAcfGbZn9S8liNcdG1J2qf8qnTsps/ApTe+Glck0Bq66mWJ99m3MeC4R0vwzRcFYpM++lyRe8QKsTo1STtgC4KsiQB2lIAj4eULXflaqG7UG1jD4aReECthI2z1gzC/+zdWLpu33ifDgiAAYVn8nIJ70BBAQX/siK480CLwKJq0YBIG7E3owUm6mnc0/JJ2VoBKK2ksXZ6DkhOoCGMkSilr2cgb+4BHIOVPXJqvfN1rH5giqT0gORLv1azyrarVL1ktueAl5beKiLKL4nuMg9BPxtkQouEfJOxeR1ubjAKaXbOJ0Qm8aPi5E0gOPE7ACzLMAtBJwMKFrt44mcKV7ySZWPxjWpWk0lrLnSsK7pY4Y9FhSb3KWjpG2fwmGk3HcD5NYlgzNcAgqI22/CsY9JTbOmro2ZbQALkujpYWs8IRVSa8vdUa53OLEvJb9sZ5Pp3F9tsettAyKJPWm7vwDKbNHCG+bIW3BqAFcVsj6BkzkuNEMa+td4woUQG0ezgYCCCyI69MPRdL93yYWLyvKJRnWOpy1n7ZXC8aLXkGWy0C1AjJS9hYE6LzZ1mTkK7EiZ6V4ztS1G11jbnCegRB3uPshms6sdL87+8nKPE2gNV565S7mNQOw7L9DyAcVOXzxOG3ZRyBz3y2+ixqW/QEAj01HD5t606+8HEdS9u4CKVUyLB819ebNtQZbKq/4VIjA70xdm63GigBkXmDJhy+reB6b0b3u5fO0nA8hOKlrTgUtLj7Dmxu8LakHfzLa4J0Zdo4oNMe9VlZ1pYyoUk/i62DSAc6wlMfzpf7ioc0lwAqsxnUEugDB7yCLd8127f0rEXzFK2U+e9R2qfcCcCUCLWej4qXeAVAjrTKeAKqiVRQItQQgaLng3BI/Jnq8ACjGWlLgTUjeW5HYUgCcRsZgfY9UG7qQ28tN6XgBUJlNCJoj6gcXlDY+PMndwmb5wI9WHw8ALs0O4tu8+KoK9Hq+sVGJXh8PAHl6vXyjo3KDo3AtLEezVzqvjzYbubQ6A3G3xpQ5nlR25TY6iLGF6kRyrBhrNwrFRHNWRpiwvlJjw5WvqvuSb3gEfs2gIAFPjhVznU+VeJTAGSFyP/ZqaJQ+7qoAKCXV+OBTdnw82qw0TYuXNjLKrZOqAbgGShvdLOitkfKpiuckyQvHpdFd+gQUHQ9B3yPGEhDOAfwGS9pT1asGgldCNTgYk5igCtSL4/aqgddUKnIY4G8xc7ialz2IKAXQ64qcHW22qnkJVetwvF63+T9nAHfjRfzL0gAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-logSave{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAA1RJREFUaEPtmT1oFEEUx9/bFLFKJzG2WiknZObFxlO8RtFC8SuFWlrYGBtRRNCghV9YmFQWgoVaaAS1ULRRRKvbmYBBQezVYBOIGFMkT0ZuYXPufOxdspuDO7jibmfe/H/z3sy8eYvQ4R/scP3QBSjbg8EemJyc3La4uHgUETcx82YAWNum+N8A8IWZrxLR41ZtBQForUeY+Xarg/j6MfMVIrroa5f13AuglOJWDLfQ56aU8mzefk4ApdR9ADiW12ir7RFxXAgxkqe/FUBrvYeZXzQbY+bh3t7ed5VKZTrPQM2eNHYQ8VGGjTtSypOhtq0AcRyPIeKptCEppTfkbAM3AxhbcRwfyYJg5nEiCvKEVZBS6hUA7EoEIeJ+IcTz0JlpbpcFYNrYIBDxlhDijG88lwd+IGJ/YoCZ1xPRd5/BUA/Mzc31VavVWRcEM18jovOuMV0eWLL7tBM+RoBS6isAbEzERFFUHRwc/JD8dnjishDikg2iSIAJADiU8uhdIjqRFuZYEweI6Gmuc8AWs6EhVK/XR3t6eg4zMyKiEQ/MvOSwQsS3iHhhZmbmY61W++UIp/dSyu2FAmit3zDzTjMoItaFEFuVUt8AYCB0ElLtZqWUfYUCZHlQKXUQAJ60AAC2Nbhia8AWglprAoB7jYQwmGXVACSKzRqJomgLAJjvBh/JqgPwCQ7dRAoPIZ/w5HkXIHQGQlOHvCd56PjdEOpoD6TShT/MfD19OXeFQCPnOYeIaxYWFiaGhoZGQ9Pv5nZthVA6XWjkOsMJRGj+b/IhIURtVQCkIUJvYKUCONLf/+67tjuw+T+rLlTYLmSDCDmwbOIbF6CgC1Vba8B3m3JBuMQXDuC4iGQy+MSXAhAKESK+NAAfRKj4UgFsEHnElw5gBGit9wFAUqy9kbco1vY2Gsfxsha2QrbV1K42gIimAPDvw8zTRLQuy0ZhpcU8AMZ7zPws1ee1lHJ3LoDlLu7mAcioZFuLvYWV130AU1NT/fPz8zuyqtWIuFcI8TKXBxo7QaEvOCyQD6SUx20T4K33F/iKKVOj7yrqBWhsiSv6ki8zNBBPCyHGfKEXBGCMrMBr1mZtPxHxEzN/jqLoYbr07oIIBvDNRFnPuwBlzXwybsd74C95KWhPrxIhsgAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-logSave:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAthJREFUaEPtmTuMTUEYx3//TrWdeLRUJCrReISGUBCvLVAqNGiEiASh8IoClUKyBQqPBAWhsREqnYRE9NgoV0T3yci5m9mzc2bmnHvvOXuTO8ktbs7MN//ffPP45hsx4kUjrp8xQNcezPaAmW0EDgFrgLXA0j7F/wG+AlckPW5qKwvAzE4At5p2ktHusqTzGfUWVEkCmJk1MdygzQ1Jp+u2iwKY2X3gcF2jfdS/I8l5O7tUApjZTuBlwNIk8E7STHYvQMCTzs6jgI27ko7l2o4B3AaO+4YkJadcVcdlAGfLzA5WQGR7IgbwGtjuCdoj6UXuyJTrhQBcnQjETUmnUv3FAH4CyzwDKyX9SBnM9QAwIWk2AXFV0tlYnzGAebtPP9OnEPkNWO2J2STpQ+9/xBOXJF2ogmgT4Amw3xNyT9JRX1gEYq+kZyGIoQGY2UXgAPyPt5x4V8qH1TRwDvgk6XdkOr2XtLltgLfA1qLTj5I2mNl3YEWDdTQraaJtgAVryMz2AU8bAFC1Boc5hYKbgJmtB6aKgDCbZdEAeLuOWyPrit+qFMmiA0gJrjr4yu1an0Ip4Z6Hss6hMUBu6FD3JB9PodwRGGkPeOHCX+CafzmPDUAR85wBlrgwQ5LbUueV3AHsaxGbmR8uOAGTPYga8f+0pG2LBWAOosYNrFOAqith6L5bdQee81optG7nHIjE8DlnVlB8EVa3AxCJ4VMAleJbB2gAERXfCUANiKT4zgAyILLEdwoQgcgW3zlAIWA30EvWXq+bFBvESTzQxFZqSyqdAe7i7xIAvTIjaXnIRmupxZoAznvPvTZvJO2oCzDQ5G5NgPKbRGWyt7X0egrAzFwedktFtnqXpFe1PFAsxLYfOEIaH0g6UjUAyXx/i09MQY2pq2gSoPDEsB/5QuJPSnLrMFqyAAqIQT+zloX9Aj4DX4CHfuo9RpANkBqJrr6PAboa+V6/I++Bf0in3kCazcMZAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-zoom{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAkUExURUdwTMDAwL+/v7+/v7+/v76+vr+/v7+/v7+/v7+/v7+/v7+/vxtcv/AAAAALdFJOUwBVdZCpGdZE7C3B0wnY6AAAAV9JREFUOMt1lDtPwzAQx20ghGwVsHVJhQRDlsywWKqEULsw8FhRJ2iWiglGGJvFCw8xIVVCSEwkKU25L4ftpOHs2Cclsu7v370smxCLecRh+xOH8Ja5kGEs/6dtYf1XONcWZurbwwRCQjYZ9l7uHAPAOBHpI1QC/QSY9g84ldmnAn7Z3htwsfZnvSe54eJd5hlcC7gccxTwSETZEr5+714vLRdfkFraVNtetXLpR7ha+mkHCV1Y/q8ZOW8AgDkecsIaAEIcGbIGyLUq4KcBYl0o7QAB4FZACBMrQKpaJOCZQqyAIhgayYEpgD1DZghXCvBTNJFKmCvgzmhcCEsBwMjSRx6BslYftRX0JLYKrAsLqzDC54EFMwvy58QhMM8hFNq0UpwET+sLC9/4BmEBTytyRCIbDoAEiR1Qp1dbRxfoyv9g3ogaKVuXhVZZbtqX6Ez6H23PxG4CM259QDwt/h8ABfK8nDqSAAAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-zoom:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAzUExURUdwTP///////////////////////////////////////////////////////////////8/RimEAAAAQdFJOUwCCyreU7KZVRCDaZnETLwj6WaYVAAABUUlEQVRIx5WV2Q6EIAxFoVBWxf7/184AOnGUsvTBqDmXrqRCzNou1kwGtyZIQNuiD0P6evWTURFUMtIoPO+iVoGIZPkMqkdKA0jZgoJ6suQc2EoiGBldOoQ9HSDk5+GTs1Fqo9IlcEpvNv3qv0MBhSalIFSv3+MCJCY8fUaCxasycrMu9dp5VTUhubXZ6CqsAvn66ZAsx+e8fON37oT3bZ4aiRU0kDlavGSrQI95HPBZACt8FuCL16IruBVkzBeBW+CLYHvyfiDQd96IpHpOMqP++fAq9VMQ7rwrM5+6gjwG/3y/D/m8ylPYpvpAeqO7DfvwMPO9D6jnBabG56YFZx77fEjD+9AyLdYEhp8nxoNh5wmJtfY8AS+wzIZZrJNcC4h3wV8IH1p87Iyfnc6XVaAd7ICHAsebw97zgDSxZ/yvViiPuYUfTe650knM2+7Ywz9yOCklzohLOwAAAABJRU5ErkJggg==") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-zoomStop{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAzUExURUdwTP///////////////////////////////////////////////////////////////8/RimEAAAAQdFJOUwDjmTC6Y0KBVakX8s8iC3JYR1wyAAABVUlEQVRIx62V2baFIAiGcwJRS97/aU/Zbtht0VzrcJOuvl/AAabpXy1RF0F/m2h2PX5mzucEuO9gMon1MY7KlG8w4LImC1XFQmxDGVkm1DYpXi0qS1gXTEGzKoqNS1ajAxPqJDikFLcFS+aukYJffRfXnAj9kYUXFVi86wzzPjuCFRXBwS3KaC/Pt02Ww7uf1jz3BVYtX/OsyDQFDn7yswPXb+Ovs39eJJWwxrOXV4thgC+//QBf/uMAXwAa4AuRBvgdWR58CB2B+eaRG5e8QO7Jn2sIAvzhbdsDnXzev8q0BengGXv8EciH3y1CY5++yI/BRNx82g/La7lc7b0Am/tUC6n3HoZ4SbDyy5BgzSNivV6wbPXeIPOpHlOU+CjkTQKvQOpXdRdJvn+5xttWQa4EZUOzluonT6+q72X6Zb0+T/lNhQd7hg9vm8LWUhW5gT4iN7c/0ZUo8Q3AttYAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-zoomStop:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAqUExURUdwTBKV2hGW2xKW2xKW2xKW2xGV3BGW2xGW3BGX2xKW3BKW2xCX2xKW2yDN61kAAAANdFJOUwCAVKxm3T/DmhrxKw97YQBGAAABaklEQVQ4y2NgIA6wGqCLMCqAqV4HdIm9F0Ek22UMM9hiG4AkVzQDA+cmx+YyJJnDlw8wMNQaNpfevbu0QgxJgrN3JQPD3VvhjU57kESnOZqvvXuJgcEXxVFMEkDt1w11gZYwoVgue3d5SzaQSgCydZG1TMkBU8vBuq9guBcqNBNDgj0GQrMEb0CVYEmA2ViANRQZ795tQPZduADciXcVUNSthGu4hGrAJawagBIXsWoAClzGqgEocRWrBqDIrQNQDTPRXZ8A0cB41wBNQgGiQfbubTQJAagGDB0GIA0OsnevbkCTCADiu4J374ahW34JqAEIbiXMRJOAgkvMKJYgJBx6717AKiF4F4eOu+jxgQCXGHBIKPDgkBC8JYCURJDtQHYWN4oEcvpZiyR+C9lZtkgSKKG1CyGOGrxItleixjrcLFBWRAYcMIkG9NQMiY67N7AlcxAQwMwA6SBxM2xZQ3jtVRPsRQ83sg8ACMIUxzzE8wsAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-close{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAeUExURUdwTM3Nzc7Ozs7Ozs3Nzc3NzcrKys3Nzc3Nzc3NzePZJxkAAAAJdFJOUwCtKdPBGAmNTt3jdDcAAADfSURBVDjL1dOxDoIwEADQgwR07GTCZtI/IGHgAzBhM9EPkMTB0Y3V0ZXIcn/rtRR6pefgSKeSu3ellyvA9lZ/5F9p/3K7PZY8oPG5BD6MpPUSgIITzdIStifAshjRQV1PCFT8TxaicTzzwEwINOEdHVmDmcTAkRhMhMAp7iQRjcMtDhCp8SA1v0ARGIIK/gnkv0p1OBTS4QRUIpE7DiYYXTBrzcld3JIrAarXrps4AVNwRSZgExoJmIyAaAdsShUMn/JF2fh4YEkpAcgvnuwYCIb6EbbbP4PsDfLD2dD6Av1qTvAQlzUTAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-close:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAeUExURUdwTP///////////////////////////////////8kBMKEAAAAJdFJOUwCt0igUwJdJePGbgLgAAADcSURBVDjL1ZMxEoIwFESTCaOWFDapqeicnAALTiANnaWlnVewDTMW/7b+aCAb8jkAVIHN2/lsNkrt73lf8M08nnF1pAYFR/dFmAAx7SIoi4iDbRrWDMAuQFzmmxAGbjjJgjj6dCjMCAND/o8RWQMzUgIRKYE/wsC5TJIRR74rBUZaqqXwLZEXT0WTDGwLW1aavJWQir9qadw++NgykWoMNtcykh8Q5EECgr5C+jjpGjHjPGhPU5eVzyfPJitfnUyhPg6ywMKZ7BygcYcsPCj1Kc8uXYPqpeSLs6PnC4w8S+8OJ9MLAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-narrow{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAABm1JREFUaEPVWWuIVVUUXmvfYRosHzUZUUqKjkSXSe5Z+5qJhfawLELCR5ohPhKjjB4EWgkpkopRSWEPS1Mqy7Gkd0iPGaKy6ey9Z3z0opwEQytSMiS5NZ4Ve7j3dubMOfecO96buf/cx17rW+vba52919oH4RQfeIr7DxUjoLW+BhHHAsAAZh5gPwGghpl/TKVSHZ7n7T9+/Ph+ANg/atQo+1mRcUIEtNYzAWAiM09ExLPK8KgNADYw8wYp5Z9l6PUQ7RWBvON3AMClJ2Kcmb9DxAKR33qDVRYBrfUNzLwQESf0xliUDjPvR8T1RLSsXNzEBIwxc5l5fYSBnxGxxfO8bQCwN5VKHc7lcofr6+tzR44cGcTMg4UQgxDRfp8IAJdH4KwlooXlkEhEQGv9EAAsDQF+GwDWEdE75Rg1xlwFADcx83QAOCOg29SvX79ZDQ0NuSSYsQS01h8BwBUBsF45HnTIGHMBM9uFmR2Ya0bEWxzHORBHoiQBY8xmZp4RAFlNRIvigMuZN8asYOb7Azq7hBCTMpnMvlJYkQSMMUuYeblf2fO8ZdlsNiyVyvE3VNZ13XFCiGb/JCK+6DjOrLIJ2N0GAN4KKG4hIpuzVRtKqf6I+HvAwAIiWhdlNDQCSqntga3yUyK6rGqe+4Db2tqu8zzv3cJfiPiLfQYdx/k6zH4PAvlD6iWf8B7P8yZls9mO/4KAtaG1fhgAHvCReN1xnClJCXweOGFLhrAapJqamlLDhg372H9eMPNMKeXmoL1uEVBKTUXEJp+QJiJZDSfjMIOZgIibHMcJbrfdq1Gt9WMAcI8P/D9f/YJtpVQfW7n6isSDRHReyQhorXcCwMV5oWN1dXWD0un04bjVqta81to+i7bi7RpCiAmZTOYDv71iCu3cuXNQZ2env07fRkSTq+VcEtyQ7XwNEfkz5N8Ucl13khDiDR/b+ZlM5vkkhqopo5Q65Euj74loRGgElFJ3IuIThUnP8xqz2eyeajqXBFtrvR0AiuU7EXXbeIo/tNaPAMB9BVBmrpVS/l3KiDFmBjNPKbMbK0A+6zjOq3EktNavAUAxlUsR2AIA0ywgM3dIKYfFgRtjmph5apxc2Dwz/ySlHBynq7V+wV+tliLwPgBcmwdsJaLRceDGmD3MnI6Ti5j/g4j6x+lqrZ8EgGKTE0nAGPM0M9+Wj8BhKWV9HLjrukuFEPMBoMf+HKdrm3oimhcnFyy1IwkopRYj4soCYF1dXf3JPAMKfiilNiFisaSOJOC67nQhxCu+h3i0lLI1boWqPW+M6WDmoXk7+4io8L3rr+IuZIwZycztPocWEdHqajtYCl8pdSEifuOT2UhEc/w63fZUrfWvADCwixlii+M4408mAa31AgB4xufDHCLaGElAKbUZEf09cAMR/XCySGit7TXO3IJ9IcTQYI8cLKfvQsQ1BYVq9sBxi9La2jqipqbmMwA4Oy8bWtoHCTiIaBua0/JKB5hZSikPxhms9LxSah0i2i26MHoUct0eYt+2tRIRF5/MKGit7YFqD9auYU9tRBwfls49emJjzEBm3gEAxVKCmadJKbdWepWj8LTWHwLAlb75hUS0Nkw+6lbidkTspoCI6aibgUoSU0otR8QlBUxE3Oo4TleNlpiAFQwWUfa/XC7XZ8yYMccq6bAfS2v9OADcHUidqUT0RdkE8iS+BIBsQHkkEe2qNAml1HOIeGsA914isqQiR5LL3aMAcHoAYTIR2av0Ex7t7e3ne563mplvDoIh4le2xC+VurEE8pGwh1m3/sBec3ie96iUcndvWLS3t4/o7OycK4SYw8znRKZIDIlEBPIk7IrfGDB01JIAgJZsNtuShIjruplUKmWdtidsMLK2lFmFiPP8fUapSCQmYJ2L6cDsNfh7iLiXme1VjG3GOwFguOd5DYg4HAAa7O/Q3QTRXiavchxnhzHmIgCw3V6xWYoiURYBa9h13atTqdTssJxNEoEImQeJaIV/LimJsgkUjCilLrGXToho33mFrmoMod2I+LLneW9KKb8Nk01CotcE/AaVUmOFENcz8zgAGAIA54Y4dAgADiCifejtjcQnSSIWRgIAniIi+5q3cm/q/c40NzfX9e3bd4gQ4kxEPFhbW3sgnU7/lcThJJHwV8kViUBvHStHz0aCme2qe7W1tasbGxu7rkFPGQKR50Q5q/B/lP0HjgOoT/ydvaYAAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-narrow:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAABS1JREFUaEPVmgmoVVUUhr+fosKC5ogGSsqIpKQwMqjIBpsICdMGQ7ISo4wGApugJCoxLClssElpNEuaI5okKjOI5onKhEQrSiKiaKA/Vu3zOu+8c88593qvj7fgcO99e6/h33udtdda+4khThri9tM1ALaPAQ4Btso9GwNfAyuBb7JHUnzvCq0XANuTgePSs00bFr0L3BuPpF/b4BswtSMAyfDzgYPXRznweQ7ID53IaguA7ROBGcC4TpRV8IRL3SNpVrtyGwOwfVYoaaHgW2AZsBT4CliXnt+BXYBd02d8D5c7rIWc+ZJigRpTIwC2rwauKZH6NLBA0jONNQK2jwJOAU4FtijwPgpMkRTga6kWgO2XgSMKkjoyvGiN7d3SwpxZGHsVOEPSmjoElQBsPwScVhAyR9LMOsHtjNu+Hri8wPMBMF7SqipZLQHYvgq4tsA8S1KZK7Vjb+lc24cDsfJ5ul/SlLYBpGjzVIFxsaTw2Z6R7S2BnwoKpkta0Epp6Q7YfqEQKl+XdGjPLM8Jtn088GzuT9/FOyjpkzL9AwCkQ+qB3OSPki9GOrBByPZ1wBU5ZY9LOrkpgDcLJ2zlFvYCke2NgFcK58VkSRFU+lG/HbA9EYg4nNE7kkb3wsg6mSWesEhSMdz2z0Zt3wRcnBO+wVc/0217WMpesyRxraSd6nbgfWC/NOm3OP4lRVowKGQ73sXIeDMaJ+nFvDF9LmQ78pR8nr5U0oRBsTwpLQnn8yTlPeR/F7I9HngiZ/A0SXcPJoDQbftHIHOjLyTt1WoHLgBuyQ3uKylC6KBS8UyS1C/w5F3oRuDSnLWbSPqzynrbkSdFfG6nGstE3inpkbrVsf0Y0OfKVQAWA5OSwJWS9mggPEJuhN5OaLWkqBMqyfZ9QF/4rALwPHBskrZC0pgGwsPFRtbNazH+s6TIfeoA3JqqwH/nVQG4HTg3SVsnadsGwiMznQYMiM91vKmgP7tuXjHVrgJwGXBDTuC2g3kGZHbYXhQVWva7CkCkyg/nAIyRtKJuhXo9bjuSyOFJzypJ2ff/XCqHdBTwXs6gmZLm9NrAKvm29wY+zc1ZKGlqnqeYzH0PbJ8mLJM0dpABTAfuyNkwVdLCKgDFGniEpC8HC4TtaONEOyej4cUaubgDFwLzcgw9q4HrFsV2pAxvANuluaWpfRHAAUAUNJsmpmhrjJa0tk5ht8dtRx0cITqjAYlcv5c49zJHKI2QmtEG3wXbcaDGwZrRamBsmTuX1cTxEi8H8qnEJElLur3KreTZfgk4Mjc+Q9L8svmtuhLnAUWGka06A90EZjt6UdGTymiJpCxHG6CqqrHVL4lKnMMkRaXWE7J9M3BRwXUmSnqrlcK61uLbwIEF5lGSou3XVbJ9F3BOQeglkgJUS2rS3P0F2LwgYYKkaKWvN9neGYgT//QSYR9Hil/lurUAQqjtOMyK9UEkWXMlfdgJihTn45CK1GCHChmVIBoBSCBixU8qKIrdmRuXG5LigqOWbO+fjA7jizsbqcxsINLsfJ3REkRjAAlEVQUWbfDncjc0UYz/BewJjCh8lgGNZvJsSctt75MabLUg2gKQQBydSrwyn63dgRYTrpQUdwR91BRE2wAyDbYPSk2nuPOKVW6X4t15EHhS0mdlzE1AdAygsFpxwX0CEJcUuwM7lhgULhW5VRgeHYnXmiBuAeI2SXHN272b+gKgzRKQrYFIBNdI+qOJwQ13oi8/68oOdGpYO3xpJ2LV/45zI/t3hSEDoBXYIQ/gH99H3EBePlczAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-expand{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAABvJJREFUaEPVWWmIXEUQrnqzZseYxGM9QBNF4hrJEDfzqieuAY/gFRXPyMYbzUHwQBQUzx+KeBAJKhrRqEhEQWMU75AYXREPlunu3bjxIDGraIwiuJpFkL26pMK84eXtm3lvZieGFAzsTtf1VVd3V9Ug7OOE+7j/0BAAnZ2d2UmTJl2cyWTaAOBA+TDzgYjYDAB/y4eZ5fNjc3Pze7NmzfqlUYEbFwBr7TUAcAEzXwAA2bROIeKnzrkNALBeKWXTysXx1QXAGHMVANwEACePxzgzjyLi057nrczn81vr0VUTAGOMRPtmRDy7HmOVZBDxL+fcyr6+vgc7OjqGatGdGoC19hZmfrKC8t9LafEWAGzLZDL9g4OD/S0tLYM7d+6cyszTPM+biojy97kAcGoFPV8ODw8vbG9v354WRCoAxpiXAUDyPUrvAcAqIno/rUHhs9aeCQALmflyAJgUlkXEf5xzp6U9G4kAjDHcKMejeqy1xzDz/QBwXYyNViL6ISkwVQEYY74AgLkRJcuJ6M4kxbWsW2sfZua7ozJNTU1HtLW1/VFNV0UAxpjlAHBHWNg590ChUJCINZyKxeLpnud1RhSvmzJlyiWtra2DFS+AuAW5bQDg3cja60QkObvHSGstj588fGVi5heVUktqAqC1Xh+5Kj8nolP2mOchxd3d3ec55z6I2JpPROvj7I9JodIj9UqIebNz7qJCodD3fwAQG8aYhwDgnpC99UQ0Py2ALyMv7DIiWvV/OS921qxZk5k+ffon4fcCEZf4vv9i1I/ddkBrfSUivhpiMkSkanXeWnsFAFwCADNHR0fX1nPwYzJhAxGdkwTgJUQM38l1Rd8Y8yYAXFoytoOIjqo1CFrriQDwCyIeEsh6nndsPp//KayrvANbt25tHhgY+AsA9i8x/JvNZqfmcrn+Wo1bazuZ+fRAjogSH8w4G8YYOYtSOAZ0GxE9EQvAGCMRk8gF9BYRLajVeeFvIIDdrnOpt3zfnxcLwFr7CDPfFdqupfl8/oW9CUBsa63/DKXRz0R0TCUAzzDzDcGic25WoVDYvLcBGGPk/i+X7wMDA/vNmzdvJPCrnJvW2leZ+cpggZknKKWGqwGw1l7IzOcg4swoX/gMyNbH6HnO9/3XkgJkjFkLAOVUzmQyM2bPnr1lDABjjJTE58sCM/cppaanUK4BgJL44taZebtSalqSrDHmpXC1ysynKKU+j9uBj5hZ6nShLiJqT1Jurd3MzLkkvgrrfxPRwUmyxpinAODmSqkdTqE3mPmy0g70K6VakpQXi8X7Pc9bCgBHJvHGrEsjtCxJLlpqDw8PTwt3bGEAzzNzuerLZrMt9bwB4lCjrtHSLbQaEa8NgGaz2cm5XO6fuDPwGADcHjrE7UqprqQIxa03EoC1to+Zjy3ZGZN25R3QWt+IiCtDDt1JRNLU1EyNAqC1PgERvws58DYRSY1VpjKA3t7eaUNDQz+Xtybm1UuLpFEAjDFyRp4N2a1cSsTlLgCkaqyjwBoIQMrnRYH+0dHR/Jw5c3pid6B0YO5GxIdDV1ZdPbC19nLn3GOIOAUA1hLR4rS7F/B1dXUd39TUJEOFQ+U7RNzo+/5ZUT3RfsBHRGloZCgrtIOZlVLqt1odGC+/1noVIsoVHdAiIpJHbTcaU+ZqrR9BxHJRtycnEZVAGmOkfVwXOo9bJk+efGLcdGIMAGvtYcz8FQCUSwlm7lBKvTHeqKaVN8ZsBIAz0qRybKMRc6VKDuZ83/82rRP18mmtH0TE+0LyHxNRUOKMUVuxU7LWlkuLQGpwcHDi3Llz/63XuSQ5Y8zjAHBrwMfM/cy8oFAoxFWzu9iSRou/xtQ5bUT0dZIzta5rrZ+XyUNYDhFv931/RTVdVQF0d3e3OufKtXdI0QIiklH6uKmnp+co59zycC8SOrzfAEBHtdRNbLaLxeIMz/O+H3N9Ia52zq1QSvXWg6Knp+f4kZGRRZ7nXc/Mh1fSgYhVQSQCEMW9vb1HDA0NyS0UHS/KLF+2+NNqeRp2rlgs5jOZjDgtL+wBEcdlEv0oIi4O9xnVQKQCIEZkTuN53uqgZ4iJmMxrPkTEbXL4AECaceldj3POtSLicVKayP9x0UZEGSY/6vv+V9ZaaVHXpAGRGkBgtFgsnpXJZK6Ly9l6Uqkkcy8RlUsY+S4tiJoBBE5qrU9CxKvlZ1YA2G3UkRJIr4wxnXPvKKXGnLG0IOoGEHZSnn5EvIiZTwKAowEgrh39U2orRJRDLxOJz9IAjdsJAHiGiORn3sb8Uh91ZNOmTQeMjIwcjYgHIeJvEyZM2JHL5Wr6+TSsMwoCEVf4vr+re2zIDqSJ5Hh5BAQzS9R/IiJpf3fRPgOg4jsx3sjsbfn/AH37LF5g3/BiAAAAAElFTkSuQmCC") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-icon-expand:hover{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAABYZJREFUaEPVmXmoVVUUxn8f0WRzVkJlIWVGUmIJWWADTVaUldFclCnSQBQYNv1RSCWGVFRSlkRh0GBS2YBmJWGJUBHNNJiYWQSZfwTRxBfrce5jv/3Ovefc++4z3oKLD/fea61v7bXXdMQQJw1x/ekKANs7AOcA44Ddkt/2wJbk9z2wTNIP3TLcgADYvhw4q/gFiLq0ClgBLJf0Ud1DZfs6AmD7UuA64JiBCAf+BR4GHpH0TSe82gJgO6x9PXBqJ8JanPktQABzJP3VDu/aAGzfADzYhPnPQLjFUuA7YHPx+xPYHxhZ/Bt/nw4c14TP+8CFkjbWBVELgO2ngfD3nJYBCyW9Wldg7LN9cigKXATsnJ39HTi+7tuoBGDb3VI852P7QOBO4MoSGaMlfVtlmJYAbL8HHJsxmSdpdhXjdtZt3wPcWnJmhKRfWvFqCsD2PODm7PBdksJiXSfbJwDvZIzfAM6VFG+plEoBFNHmlezEc5LCZweNbEcSjMSX0iJJ09sFsDwLlaslTRo0zRPGts8AXstkTZYUOvWjfjdQJKnFyc7PgCmS1m0NACHD9t3AbYm8yNiT6wKIWJxm2JmSFm4t5QsA2wBvZ/liuqRFuR59bsD2JcAzyaYPJU1oV3nbF8fjAw4DlnTy8Es8YYWk06oAPJnF5I6sb/tF4LxC2CZJ+3VghGFAVK17JmdHSVqf8uq9AdtR+kZNsmOx4Y9I/5KiLGiLbEc4jLDYQ5IqE2aZANvxFqNwbNBNkh5oBiAsFpZr0FJJU9vSvNjcRQBRPKbhfJWkE5sBuBe4JVmcIemJ/xNAyLb9a+JGGyRF+dFLqQstAK5J1g6XFCG0berWDRQA8py0raR/et2z8YftiD4RhRq0naS/W2lv+2wgIkNEm5x630BRaufrj0l6tso6tpcAqSuPkfR1GYAoic8sFtZJOqgG8w+Ao6r2NVnfKCn6hJZkO4+MkyStLgPwJhB1etBaSRNrMA8XG1u1r8n6Fkl7VJ21/VDRBTa29nHt9A28AJxf7NosaXgN5lGZzgD2rdpbsh6N0MyqcyWl9si0Y0sBPA6kVd/wTnJAKNTlR/wUcEUCdBdJ0bX1UArgPmBWsnGipLVVFipb7zKAKCJHFXL6uV0K4NpiMtDQabakaGrapm4BsH0o8GWiwEuSosbqpRRARIQNyVq/rFcXSRcBxBt5NJHbvJQo812gVmOdA+sigCifpyX8x0v6uPQGCgDRWEeD3aCOemDb0XrGm9q1KKevrnt7jX22DwFiqLBX8X8rJZ2S88n7gSOBaGiiMg3aBEyQ9FO7Cgx0v+1ooiJEN2iapEhqfaispcyLuo5uYSAAbEf7GBOJBkXpcETZdKIMwN7AGiAtJS6QFIluq5DtlcBJdVy52VglD6nBa6ykLwYbge05wB2JnLckNUqcfuJbDbbS0qJxcJik6NQGhWzfD9yYMI9ucKqkGByXUtVo8ceSOmecpE+6jcB2XsqEiFmS5reSVQVgNNBbeyeMwioxSh8w2Y6GPzJ+2os0+H4OxPtr6rqVzbbtMcBXJZpGkTVf0qedoCjifCSpq4B9WvBoCaISQDC2PQKIN5GPF6MqjCuOsqOpn6bK2R5fKB3K75QpHpPouUAkvrTPaAqiFoACRMxpwuqNniE3WsxrXk++0EQzHr3rwVGSZP+WGTymD3MlrbEdLerzdUDUBtCQaDvSeXyQKPPZTrwpztwuKS1h4tZrgWgbQALkaOCy4hNrn1FHTRTxdmKQ8LKksjdWC0THADK/jtQ/BQhQBwBl7Wi4VNRWoXhMJN6tA7TJTSyQFJ95u/OlPlfEdjzOALI7EIVgzEfb+nyaGSh3p4h+Pd1jV26gjiUHuqe4ibD6eklRqvfQkAHQzABDHsB/7aMVT352GH8AAAAASUVORK5CYII=") no-repeat 50%;background-size:100% 100%}.jb-pro-container .jb-pro-menu-icon-text,.jb-pro-container .jb-pro-quality-icon-text,.jb-pro-container .jb-pro-scale-icon-text,.jb-pro-container .jb-pro-speed-icon-text{font-size:14px;min-width:30px;height:20px;line-height:20px;cursor:pointer;text-align:center}.jb-pro-container .jb-pro-speed{box-sizing:border-box;text-align:center;font-size:14px;color:#fff;width:90px}.jb-pro-container .jb-pro-menu-list,.jb-pro-container .jb-pro-quality-menu-list,.jb-pro-container .jb-pro-scale-menu-list,.jb-pro-container .jb-pro-speed-menu-list{position:absolute;left:50%;bottom:100%;visibility:hidden;opacity:0;transform:translateX(-50%);transition:visibility .3s,opacity .3s;background-color:rgba(0,0,0,.5);border-radius:4px;overflow:hidden;width:-moz-max-content;width:max-content}.jb-pro-container .jb-pro-menu-list.jb-pro-menu-shown,.jb-pro-container .jb-pro-menu-list.jb-pro-quality-menu-shown,.jb-pro-container .jb-pro-menu-list.jb-pro-scale-menu-shown,.jb-pro-container .jb-pro-menu-list.jb-pro-speed-menu-shown,.jb-pro-container .jb-pro-quality-menu-list.jb-pro-menu-shown,.jb-pro-container .jb-pro-quality-menu-list.jb-pro-quality-menu-shown,.jb-pro-container .jb-pro-quality-menu-list.jb-pro-scale-menu-shown,.jb-pro-container .jb-pro-quality-menu-list.jb-pro-speed-menu-shown,.jb-pro-container .jb-pro-scale-menu-list.jb-pro-menu-shown,.jb-pro-container .jb-pro-scale-menu-list.jb-pro-quality-menu-shown,.jb-pro-container .jb-pro-scale-menu-list.jb-pro-scale-menu-shown,.jb-pro-container .jb-pro-scale-menu-list.jb-pro-speed-menu-shown,.jb-pro-container .jb-pro-speed-menu-list.jb-pro-menu-shown,.jb-pro-container .jb-pro-speed-menu-list.jb-pro-quality-menu-shown,.jb-pro-container .jb-pro-speed-menu-list.jb-pro-scale-menu-shown,.jb-pro-container .jb-pro-speed-menu-list.jb-pro-speed-menu-shown{visibility:visible;opacity:1}.jb-pro-container .icon-title-tips{pointer-events:none;position:absolute;left:50%;bottom:100%;visibility:hidden;opacity:0;transform:translateX(-50%);transition:visibility .3s ease 0s,opacity .3s ease 0s;background-color:rgba(0,0,0,.5);border-radius:4px}.jb-pro-container .icon-title{display:inline-block;padding:5px 10px;font-size:12px;white-space:nowrap;color:#fff}.jb-pro-container .jb-pro-quality-menu{padding:8px 0}.jb-pro-container .jb-pro-menu-item,.jb-pro-container .jb-pro-quality-menu-item,.jb-pro-container .jb-pro-scale-menu-item,.jb-pro-container .jb-pro-speed-menu-item{display:block;height:25px;line-height:25px;margin:0;padding:0 10px;cursor:pointer;font-size:14px;text-align:center;width:50px;color:hsla(0,0%,100%,.5);transition:color .3s,background-color .3s}.jb-pro-container .jb-pro-menu-item:hover,.jb-pro-container .jb-pro-quality-menu-item:hover,.jb-pro-container .jb-pro-scale-menu-item:hover,.jb-pro-container .jb-pro-speed-menu-item:hover{background-color:hsla(0,0%,100%,.2)}.jb-pro-container .jb-pro-menu-item:focus,.jb-pro-container .jb-pro-quality-menu-item:focus,.jb-pro-container .jb-pro-scale-menu-item:focus,.jb-pro-container .jb-pro-speed-menu-item:focus{outline:none}.jb-pro-container .jb-pro-menu-item.jb-pro-menu-item-active,.jb-pro-container .jb-pro-menu-item.jb-pro-quality-menu-item-active,.jb-pro-container .jb-pro-menu-item.jb-pro-scale-menu-item-active,.jb-pro-container .jb-pro-menu-item.jb-pro-speed-menu-item-active,.jb-pro-container .jb-pro-quality-menu-item.jb-pro-menu-item-active,.jb-pro-container .jb-pro-quality-menu-item.jb-pro-quality-menu-item-active,.jb-pro-container .jb-pro-quality-menu-item.jb-pro-scale-menu-item-active,.jb-pro-container .jb-pro-quality-menu-item.jb-pro-speed-menu-item-active,.jb-pro-container .jb-pro-scale-menu-item.jb-pro-menu-item-active,.jb-pro-container .jb-pro-scale-menu-item.jb-pro-quality-menu-item-active,.jb-pro-container .jb-pro-scale-menu-item.jb-pro-scale-menu-item-active,.jb-pro-container .jb-pro-scale-menu-item.jb-pro-speed-menu-item-active,.jb-pro-container .jb-pro-speed-menu-item.jb-pro-menu-item-active,.jb-pro-container .jb-pro-speed-menu-item.jb-pro-quality-menu-item-active,.jb-pro-container .jb-pro-speed-menu-item.jb-pro-scale-menu-item-active,.jb-pro-container .jb-pro-speed-menu-item.jb-pro-speed-menu-item-active{color:#2298fc}.jb-pro-container .jb-pro-volume-panel-wrap{position:absolute;left:50%;bottom:100%;visibility:hidden;opacity:0;transform:translateX(-50%) translateY(22%);transition:visibility .3s,opacity .3s;background-color:rgba(0,0,0,.5);border-radius:4px;height:120px;width:50px;overflow:hidden}.jb-pro-container .jb-pro-volume-panel-wrap.jb-pro-volume-panel-wrap-show{visibility:visible;opacity:1}.jb-pro-container .jb-pro-volume-panel{cursor:pointer;position:absolute;top:21px;height:60px;width:50px;overflow:hidden}.jb-pro-container .jb-pro-volume-panel-text{position:absolute;left:0;top:0;width:50px;height:20px;line-height:20px;text-align:center;color:#fff;font-size:12px}.jb-pro-container .jb-pro-volume-panel-handle{position:absolute;top:48px;left:50%;width:12px;height:12px;border-radius:12px;margin-left:-6px;background:#fff}.jb-pro-container .jb-pro-volume-panel-handle:before{bottom:-54px;background:#fff}.jb-pro-container .jb-pro-volume-panel-handle:after{bottom:6px;background:hsla(0,0%,100%,.2)}.jb-pro-container .jb-pro-volume-panel-handle:after,.jb-pro-container .jb-pro-volume-panel-handle:before{content:"";position:absolute;display:block;left:50%;width:3px;margin-left:-1px;height:60px}.jb-pro-container.jb-pro-fullscreen-rotate .jb-pro-controls,.jb-pro-container.jb-pro-fullscreen-web .jb-pro-controls{width:100vh}.jb-pro-container.jb-pro-fullscreen-rotate .jb-pro-play-big:after,.jb-pro-container.jb-pro-fullscreen-web .jb-pro-play-big:after{transform:translate(-50%,-50%) rotate(270deg)}.jb-pro-container.jb-pro-fullscreen-rotate .jb-pro-loading,.jb-pro-container.jb-pro-fullscreen-web .jb-pro-loading{flex-direction:row}.jb-pro-container.jb-pro-fullscreen-rotate .jb-pro-loading-text,.jb-pro-container.jb-pro-fullscreen-web .jb-pro-loading-text{transform:rotate(270deg)}.jb-pro-container .jb-pro-contextmenus{display:none;flex-direction:column;position:absolute;z-index:120;left:10px;top:10px;min-width:200px;padding:5px 0;background-color:rgba(0,0,0,.9);border-radius:3px}.jb-pro-container .jb-pro-contextmenus .jb-pro-contextmenu{cursor:pointer;font-size:12px;display:block;color:#fff;padding:10px 15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 0 2px rgba(0,0,0,.5);border-bottom:1px solid hsla(0,0%,100%,.1)}.jb-pro-container .jb-pro-contextmenus .jb-pro-contextmenu a{color:#fff;text-decoration:none}.jb-pro-container .jb-pro-contextmenus .jb-pro-contextmenu span{display:inline-block;padding:0 7px}.jb-pro-container .jb-pro-contextmenus .jb-pro-contextmenu span.art-current,.jb-pro-container .jb-pro-contextmenus .jb-pro-contextmenu span:hover{color:var(--theme)}.jb-pro-container .jb-pro-contextmenus .jb-pro-contextmenu:hover{background-color:hsla(0,0%,100%,.1)}.jb-pro-container .jb-pro-contextmenus .jb-pro-contextmenu:last-child{border-bottom:none}.jb-pro-container.jb-pro-contextmenus-show .jb-pro-contextmenus{display:flex}.jb-pro-container .jb-pro-extend-dom{position:relative;width:100%;height:100%;display:none}.jb-pro-container-playback .jb-pro-controls{height:48px}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center{flex:1;display:flex;box-sizing:border-box;justify-content:space-between;font-size:12px}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-controls-playback-time{box-sizing:border-box;flex:1;position:relative;height:100%;display:none}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-controls-playback-time-inner{width:300px;height:100%;overflow-y:hidden;overflow-x:auto}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-controls-playback-time-inner::-webkit-scrollbar{-webkit-appearance:none;background-color:transparent}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-controls-playback-time-inner::-webkit-scrollbar:vertical{width:2px}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-controls-playback-time-inner::-webkit-scrollbar:horizontal{height:6px}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-controls-playback-time-inner:hover::-webkit-scrollbar-thumb{border-radius:8px;-webkit-box-shadow:inset 0 0 6px rgba(0,0,0,.1);border:3px solid hsla(0,0%,100%,.4);background-color:rgba(0,0,0,.3)}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-controls-playback-current-time{position:absolute;left:0;top:0;height:15px;width:1px;background-color:red;text-align:center;z-index:1}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-controls-playback-current-time-text{position:absolute;box-sizing:border-box;padding:0 5px;width:60px;left:-25px;top:15px;border:1px solid red;height:15px;line-height:15px;cursor:move;background-color:#fff;color:#000;-webkit-user-select:none;-moz-user-select:none;user-select:none}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-controls-playback-time-scroll{position:relative;width:1440px;margin:0 auto}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-controls-playback-time-scroll.one-hour{width:1440px}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-controls-playback-time-scroll.half-hour{width:2880px}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-controls-playback-time-scroll.ten-min{width:8640px}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-controls-playback-time-scroll.five-min{width:17280px}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-controls-playback-time-scroll.one-min{width:86400px}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-controls-playback-time-list{position:relative;background-color:#ccc;height:48px}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-day{height:100%;overflow:hidden}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-one-wrap{height:8px;z-index:1}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-second-wrap{height:25px}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-controls-playback-btns{display:none;align-items:center}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-minute-one,.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-second-one{float:left;width:1px;height:8px;margin:0;cursor:default;position:relative;z-index:1}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-minute-one.active,.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-second-one.active{background-color:orange;cursor:pointer}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-minute-one.start,.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-second-one.start{background-color:#999}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-minute-one:hover .jb-pro-playback-time-title-tips,.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-second-one:hover .jb-pro-playback-time-title-tips{visibility:visible;opacity:1}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-title-tips{pointer-events:none;position:absolute;left:0;top:100%;visibility:hidden;opacity:0;transform:translateX(13%);transition:visibility .3s ease 0s,opacity .3s ease 0s;background-color:#000;border-radius:4px;z-index:1}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-title-tips.jb-pro-playback-time-title-tips-left{transform:translateX(-100%)}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-title-tips .jb-pro-playback-time-title{display:inline-block;padding:2px 5px;font-size:12px;white-space:nowrap;color:#fff}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-hour,.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-minute{float:left;position:relative;width:60px;box-sizing:border-box;border-top:1px solid #999;-webkit-user-select:none;-moz-user-select:none;user-select:none;text-align:left;height:25px;line-height:25px}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-hour:first-child,.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-minute:first-child{border-left:0}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-hour:first-child .jb-pro-playback-time-hour-text,.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-minute:first-child .jb-pro-playback-time-hour-text{left:0}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-hour:after,.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-minute:after{content:"";position:absolute;left:0;top:-8px;width:1px;height:14px;background-color:#999}.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-hour-text,.jb-pro-container-playback .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-center .jb-pro-playback-time-minute-text{position:absolute;left:-13px}.jb-pro-container-playback .jb-pro-playback-expand.disabled .jb-pro-icon-expand,.jb-pro-container-playback .jb-pro-playback-narrow.disabled .jb-pro-icon-narrow{cursor:no-drop}.jb-pro-container-playback .jb-pro-control-progress-simple{position:absolute;box-sizing:border-box;left:0;top:-2px;width:100%;display:none;flex-direction:row;align-items:center;height:8px;cursor:pointer}.jb-pro-container-playback .jb-pro-control-progress-simple:hover{top:0;align-items:flex-start}.jb-pro-container-playback .jb-pro-control-progress-simple:hover .jb-pro-control-progress-inner{height:100%}.jb-pro-container-playback .jb-pro-control-progress-simple:hover .jb-pro-control-progress-inner .jb-pro-progress-indicator{transform:scale(1);visibility:visible}.jb-pro-container-playback .jb-pro-control-progress-inner{display:flex;align-items:center;position:relative;height:50%;width:100%;transition:all .2s ease;background:hsla(0,0%,100%,.5)}.jb-pro-container-playback .jb-pro-progress-hover{display:none;width:0}.jb-pro-container-playback .jb-pro-progress-played{position:absolute;left:0;top:0;right:0;bottom:0;height:100%;width:0;background-color:orange}.jb-pro-container-playback .jb-pro-progress-cache{position:absolute;height:100%;width:0;left:0;top:0;right:0;bottom:0;background-color:hsla(0,0%,100%,.5)}.jb-pro-container-playback .jb-pro-progress-indicator{visibility:hidden;align-items:center;justify-content:center;position:absolute;z-index:40;border-radius:50%;transform:scale(.1);transition:transform .1s ease-in-out}.jb-pro-container-playback .jb-pro-progress-indicator .jb-pro-icon{width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.jb-pro-container-playback .jb-pro-progress-indicator:hover{transform:scale(1.2)!important}.jb-pro-container-playback .jb-pro-progress-tip{display:none;position:absolute;z-index:50;top:-25px;left:0;height:20px;padding:0 5px;line-height:20px;color:#fff;font-size:12px;text-align:center;background:rgba(0,0,0,.7);border-radius:3px;font-weight:700;white-space:nowrap}.jb-pro-container-play-vod .jb-pro-control-progress-simple{position:absolute;box-sizing:border-box;left:0;top:-2px;width:100%;display:none;flex-direction:row;align-items:center;height:8px;cursor:pointer}.jb-pro-container-play-vod .jb-pro-control-progress-simple:hover{top:0;align-items:flex-start}.jb-pro-container-play-vod .jb-pro-control-progress-simple:hover .jb-pro-control-progress-inner{height:100%}.jb-pro-container-play-vod .jb-pro-control-progress-simple:hover .jb-pro-control-progress-inner .jb-pro-progress-indicator{transform:scale(1);visibility:visible}.jb-pro-container-play-vod .jb-pro-control-progress-inner{display:flex;align-items:center;position:relative;height:50%;width:100%;transition:all .2s ease;background:hsla(0,0%,100%,.5)}.jb-pro-container-play-vod .jb-pro-progress-hover{display:none;width:0}.jb-pro-container-play-vod .jb-pro-progress-played{position:absolute;left:0;top:0;right:0;bottom:0;height:100%;width:0;background-color:orange}.jb-pro-container-play-vod .jb-pro-progress-cache{position:absolute;height:100%;width:0;left:0;top:0;right:0;bottom:0;background-color:hsla(0,0%,100%,.5)}.jb-pro-container-play-vod .jb-pro-progress-indicator{visibility:hidden;align-items:center;justify-content:center;position:absolute;z-index:40;border-radius:50%;transform:scale(.1);transition:transform .1s ease-in-out}.jb-pro-container-play-vod .jb-pro-progress-indicator .jb-pro-icon{width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.jb-pro-container-play-vod .jb-pro-progress-indicator:hover{transform:scale(1.2)!important}.jb-pro-container-play-vod .jb-pro-progress-tip{display:none;position:absolute;z-index:50;top:-25px;left:0;height:20px;padding:0 5px;line-height:20px;color:#fff;font-size:12px;text-align:center;background:rgba(0,0,0,.7);border-radius:3px;font-weight:700;white-space:nowrap}.jb-pro-container-playback.jb-pro-fullscreen-web .jb-pro-controls .jb-pro-controls-bottom .jb-pro-controls-playback-time-inner{overflow-y:auto}.jb-pro-zoom-control{cursor:grab}.jb-pro-performance-panel{position:absolute;box-sizing:border-box;z-index:10000;left:0;top:0;font-size:10px;background:rgba(0,0,0,.2);color:#fff;max-height:100%;display:none;overflow-y:auto}.jb-pro-performance-panel .jb-pro-performance-panel-tab{height:20px;width:100%;display:flex;justify-content:space-around;align-items:center}.jb-pro-performance-panel .jb-pro-performance-panel-tab-btn{width:45%;text-align:center;min-width:30px;height:15px;line-height:15px;background:#5fb495;border:none;color:#fff;cursor:pointer;transition:all .3s ease}.jb-pro-performance-panel .jb-pro-performance-panel-tab-btn.active{background:linear-gradient(90deg,#7b2cbf 0,#7b2cbf 10%,#6e35b9 30%,#5fb495);box-shadow:inset 0 2px 4px rgba(0,0,0,.2);transform:scale(.98)}.jb-pro-performance-panel .jb-pro-performance-panel-info{box-sizing:border-box;display:none;padding:5px;height:calc(100% - 20px)}.jb-pro-performance-panel .jb-pro-performance-panel-info.jb-pro-performance-panel-info-1{display:block}.jb-pro-performance-panel .jb-pro-performance-item{display:flex;align-items:center;margin-top:3px;color:#fff}.jb-pro-performance-panel .jb-pro-performance-item-block{height:10px}.jb-pro-tips-message{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,rgba(0,0,0,.8),hsla(0,0%,100%,0));overflow:auto;box-sizing:content-box;z-index:10;display:none}.jb-pro-tips-message:before{color:hsla(0,0%,100%,.3);content:"X";font-family:Arial,Helvetica,sans-serif;font-size:40px;left:0;line-height:1;margin-top:-20px;position:absolute;text-shadow:2em 2em 4em #000;text-align:center;top:50%;vertical-align:middle;width:100%}.jb-pro-tips-message .jb-pro-tips-message-close{position:absolute;z-index:99999;right:0;top:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.jb-pro-tips-message .jb-pro-tips-message-close .jb-pro-tips-message-close-icon{width:20px;height:20px;border-radius:10px;cursor:pointer;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAeUExURUdwTM3Nzc7Ozs7Ozs3Nzc3NzcrKys3Nzc3Nzc3NzePZJxkAAAAJdFJOUwCtKdPBGAmNTt3jdDcAAADfSURBVDjL1dOxDoIwEADQgwR07GTCZtI/IGHgAzBhM9EPkMTB0Y3V0ZXIcn/rtRR6pefgSKeSu3ellyvA9lZ/5F9p/3K7PZY8oPG5BD6MpPUSgIITzdIStifAshjRQV1PCFT8TxaicTzzwEwINOEdHVmDmcTAkRhMhMAp7iQRjcMtDhCp8SA1v0ARGIIK/gnkv0p1OBTS4QRUIpE7DiYYXTBrzcld3JIrAarXrps4AVNwRSZgExoJmIyAaAdsShUMn/JF2fh4YEkpAcgvnuwYCIb6EbbbP4PsDfLD2dD6Av1qTvAQlzUTAAAAAElFTkSuQmCC") no-repeat 50%;background-color:#fff;background-size:100% 100%}.jb-pro-tips-message .jb-pro-tips-message-content{overflow:auto;padding:35px;box-sizing:border-box;width:100%;height:100%;z-index:99999}.jb-pro-tips-message .jb-pro-tips-message-content .jb-pro-tips-message-content-item{font-size:14px;color:#fff;text-align:center;line-height:1.5}'),function(t){const e=Ty,s=t();for(;;)try{if(166225===parseInt(e(354))/1+parseInt(e(368))/2*(-parseInt(e(366))/3)+-parseInt(e(363))/4*(-parseInt(e(373))/5)+parseInt(e(367))/6*(-parseInt(e(374))/7)+parseInt(e(344))/8+-parseInt(e(351))/9*(-parseInt(e(359))/10)+parseInt(e(345))/11*(parseInt(e(343))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(wy);function Iy(t,e){const s=_y();return(Iy=function(t,e){return s[t-=310]})(t,e)}const ky=Iy;function _y(){const t=[".jb-pro-tips-message-content","$playbackProgressTip",".jb-pro-playback-control-time","$playbackProgressCache","$pause","ptzApertureNearTimeout","$playBig","ptzArrow","initLoadingBackground()",".jb-pro-performance-panel-info-1","updateLoadingText","getControlHeight","kbpsShow","activeClick","$zoomControls","$zoomExpand"," is already exist","$activeIconWrap",".jb-pro-performance-panel-tab-btn2","ptzArrowTimeout","jb-pro-controls-small",".jb-pro-face",".jb-pro-logSave","showPlayBtn","$recordStop","$controlHtml","$close",".jb-pro-icon-loading","0 KB/s",".jb-pro-progress-indicator",".jb-pro-zoom-stop2","$recording",".jb-pro-controls-playback-time",".jb-pro-ptz-cruise-play","800584gTynJl","calc(100% - ","$zoomStop2",".jb-pro-object","playing","from","_off","$faceDetectActive",".jb-pro-controls-item-html",".jb-pro-scale-menu-list","background","</span></span>\n ",".jb-pro-ptz-expand","$performancePanel",".jb-pro-contextmenus",".jb-pro-speed",".jb-pro-ptz-aperture-near",".jb-pro-progress-played","btnIndex",".jb-pro-speed-menu",".jb-pro-controls-playback-time-list","$performancePanelInfo2",".jb-pro-tips-message",".jb-pro-speed-menu-item","loadingBackgroundHeight","$container"," rotateX(180deg)","controlsLeftRect","$playbackCurrentTime","$tipsMessageContent","$ptzArrows","beforebegin","animationName","videoRenderSupportScale","$recordingTime","$playbackProgress","index","$logSave",".jb-pro-zoom-controls","$playbackProgressIndicator","$videoElement",'\n <div class="jb-pro-tips-message-content-item">',".jb-pro-progress-cache","block","$ptzFocusNear","hasAnimation","eventListenList","$speedMenuItems",".jb-pro-controls-playback-btns","toggleExtendDom","5eYmEqV","$performancePanelBtn2","jb-pro-controls-show",".jb-pro-recording"," rotate(","initShowLoadingIconInner","$playbackProgressHover","100% 100%","4226hJXfiG",".jb-pro-record-stop","left-up",".jb-pro-quality-icon-text","7xoAIJy","$loadingBgImage",".jb-pro-volume-panel",".jb-pro-zoom-narrow","100%","$playbackCurrentTimeText","$volumePanelWrap","ptzNarrowTimeout",".jb-pro-ptz","right","$volumeHandle",".jb-pro-close","-active","addExtendBtn",".jb-pro-controls-right","$controlsInner","height","$playbackTimeListSecond","getShowVideoRect","background-size","display","\n ","$ptzFocusFar","$recordingStop",".jb-pro-zoom-stop","querySelector",".jb-pro-progress-hover","small",".jb-pro-playback-expand","$qualityMenu","mouseover",".jb-pro-speed-icon-text","$ptzFogClose","$occlusionDetectActive","$loadingText","$playbackProgressTime","$playbackExpand","length","$fullscreen",".jb-pro-play","beforeend","icon","$scaleText",".jb-pro-fullscreen-exit","isInMulti","activeIconTitle","$loadingBg","delayHiddenTimeout","$speedMenuList","removeChild","$fullscreenExit",".jb-pro-quality-menu-item","$faceDetect","$zoom","$volume","$qualityMenuList","extend button icon is required",".jb-pro-ptz-wiper-open",".jb-pro-ptz-narrow","$ptzFogOpen","699153gGyymD","controlsInnerRect",".jb-pro-controls-playback-current-time-text",".jb-pro-ptz-cruise-pause","getControlHtml","updatePtzPosition","src","$controlsRight",".jb-pro-loading-bg-image",".jb-pro-pause","top","</div>","initLoadingBackground",".jb-pro-performance","extendOperateBtns","assign","% - ",'-active">\n <i class="jb-pro-icon jb-pro-icon-extend-',"children","$ptzApertureFar","width","left","182qhEEWl","destroy","isInitPlayer","call","html","preventDefault","$tipsMessage","multiIndex","$speed","loadingBackgroundWidth","$tipsMessageClose","$ptzControl","vertical","\n </div>","controlsRect","animationDuration","video",") no-repeat center","ptzFocusNearTimeout","isResize","iconTitle","level",'">\n <i class="jb-pro-icon jb-pro-icon-extend-',".jb-pro-zoom","extend button name is required","$playbackTimeList","getExtendDom","debugWarn","$ptz",".jb-pro-controls-left","bound",'<div class="jb-pro-controls-item jb-pro-control-extend-',"$qualityText","calc(","resizeLoadingBackground",".jb-pro-ptz-control","style","deg)","initShowPlayBtn","$ptzWiperOpen","activeIconHover","loadingIconStyle","$playbackTimeListOne","_opt",".jb-pro-controls-playback-current-time",".jb-pro-icon-mute","$scaleMenuList",".jb-pro-scale-icon-text","ptzFocusFarTimeout",".jb-pro-occlusion","isFullResize",".jb-pro-scale-menu-item","$performanceActive","showTipsMessage","$scaleMenuItems","px)",".jb-pro-quality-menu",".jb-pro-performance-panel","$controls",".jb-pro-ptz-active","name","$performancePanelBtn1",'\n <span class="icon-title-tips"><span class="icon-title">',"445698rvtFJR","$speedText","hideTipsMessage","$playbackNarrow","innerText",".jb-pro-playback-time-one-wrap","TAG_NAME","$playbackTimeInner","keys","updateExtendDom","ease","$performancePanelInfo1","click","$ptzExpand","getBoundingClientRect",".jb-pro-ptz-fog-open","url(","$playbackTime","off","extendBtnList",'-active"></i>\n ','\n <div class="jb-pro-extend-dom">\n ',"objectFit","$iconWrap",".jb-pro-loading-text","$occlusionDetect","addExtendDom","$contextmenus","$volumeOn","classList","jb-pro-controls-show-auto-hide","$loading",".jb-pro-performance-active",".jb-pro-ptz-focus-far",".jb-pro-record","remove","normal","$objectDetect","find","none","$domMap","flex","$poster","bottom","debugLog","$play","$ptzControlCircular",".jb-pro-performance-panel-info-2","$ptzWiperClose","13412210Yezqni",".jb-pro-loading",".jb-pro-extend-dom",".jb-pro-fullscreen","$performance","animationTimingFunction",".jb-pro-icon-audio","$volumeOff","$record",".jb-pro-performance-panel-tab-btn1",".jb-pro-controls-playback-time-scroll","rotate","</div>\n ","aspectRatio","insertAdjacentHTML","getBtnIndex","iconHover",'\n <div class="jb-pro-controls-item-wrap jb-pro-controls-item-wrap-',".jb-pro-controls-bottom","$extendDom","getRenderType","$zoomStop","forEach","getExtendBtnList","_initLoadingBackgroundForCanvas",".jb-pro-scale-menu","1268682JwpbYm","_validateExtendBtn",".jb-pro-controls","scale(","$zoomNarrow",".jb-pro-controls-playback-time-inner","$playbackTimeScroll","$qualityMenuItems","left-down","$speedMenu","$ptzCruisePlay","\n </div>\n ","Control","loadingBackground","_initLoadingBackgroundForRatio","142776jkZzca","mirrorRotate","$ptzCruisePause",".jb-pro-volume-panel-wrap","$volumePanelText","padding"," rotateY(180deg)","auto","_initLoadingBackgroundForVideo","$ptzBgActive","Timeout",".jb-pro-ptz-wiper-close",".jb-pro-play-big","toggleExtendBtn","transform","$ptzActive","initLoadingIconStyle","ptzApertureFarTimeout","mouseout",".jb-pro-recording-time","init","$controlsPlaybackBtns","right-up","map","default","$objectDetectActive",".jb-pro-ptz-focus-near","px 0","canvas","$volumePanel",".jb-pro-loading-bg","player","$controlsLeft","updateControlSize","querySelectorAll","$scaleMenu","$screenshot","right-down","activeIcon",".jb-pro-speed-menu-list","$ptzNarrow","innerHTML","ptzPositionConfig","ptzExpandTimeout","$ptzApertureNear","$playbackProgressPlayed","extendDomConfig",".jb-pro-object-active","extend button name: "];return(_y=function(){return t})()}!function(t){const e=Iy,s=t();for(;;)try{if(280336===-parseInt(e(612))/1*(parseInt(e(526))/2)+-parseInt(e(590))/3+-parseInt(e(468))/4*(parseInt(e(518))/5)+-parseInt(e(370))/6*(parseInt(e(530))/7)+parseInt(e(385))/8+-parseInt(e(675))/9+parseInt(e(344))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(_y);class Cy{constructor(t){const e=Iy;this[e(416)]=t,this[e(681)]=e(382),this[e(314)]=[],this[e(514)]=[],this[e(577)]=null,this[e(537)]=null,this[e(453)]=null,this.ptzApertureFarTimeout=null,this.ptzApertureNearTimeout=null,this[e(660)]=null,this[e(630)]=null,this[e(335)]={},this.bound={},ey(t),t[e(655)][e(604)][e(567)]>0&&t[e(655)][e(604)][e(366)](t=>{this.addExtendBtn(t)}),t[e(655)][e(431)]&&t[e(655)].extendDomConfig[e(616)]&&this.addExtendDom(t[e(655)][e(431)]),yy(t,this),function(t,e){const s=by,{events:{proxy:i}}=t,r=e[s(314)],n=t[s(244)],o=n[s(247)];function a(t){const i=s,{bottom:r,height:n}=e[i(232)][i(305)](),{height:o}=e[i(325)][i(305)]();return as(r-t.y-o/2,0,n-o/2)/(n-o)}function h(i,r=!1){const n=s;i.composedPath().indexOf(t[n(378)])>-1?e[n(338)]=!0:e[n(338)]=!1,r&&t[n(244)][n(302)]&&t._opt[n(226)]&&(e[n(338)]?(hs(e[n(383)],n(400),n(398)),u()):(f(),hs(e[n(383)],"display",n(359))))}if(As()){const w=i(document,[s(335),s(382)],function(t){t[s(385)](),h(t)});w&&w.length>0&&r.push(...w)}else{const T=i(document,s(335),function(t){t[s(385)](),h(t,!0)});T&&r[s(265)](T)}const l=i(e[s(383)],"click",function(t){t[s(385)]()});if(l&&r[s(265)](l),o[s(238)]){const I=i(e[s(303)],s(335),function(i){const r=s;n[r(270)]===p[r(242)]&&n.playbackConfig[r(365)]?t.playbackPause=!0:n[r(270)]===p[r(377)]?t[r(309)]()[r(394)](s=>{const i=r;t[i(306)](e[i(241)],i(370),s)}):di(o.pauseFn)?o[r(225)]():t.pauseForControl()[r(394)](s=>{const i=r;t[i(306)](e[i(241)],i(280),s)})}),k=i(e[s(327)],"click",function(i){const r=s;n.playType===p[r(242)]&&t[r(282)]?t[r(340)]():n[r(270)]===p[r(377)]?t[r(257)]()[r(394)](s=>{const i=r;t[i(306)](e[i(241)],i(408),s)}):di(o[r(418)])?o[r(418)]():t[r(387)]()[r(285)](()=>{t[r(367)]()})[r(394)](s=>{const i=r;t[i(306)](e[i(241)],i(374),s)})});I&&r[s(265)](I),k&&r[s(265)](k)}const c=i(e.$playBig,s(335),function(i){const r=s;n.playType===p[r(242)]&&t.playbackPause?t[r(282)]=!1:n[r(270)]===p[r(377)]?t[r(257)]()[r(394)](s=>{const i=r;t[i(306)](e[i(241)],i(408),s)}):e.isInitPlayer?t[r(381)](q.clickInitPlayer):di(o[r(418)])?o[r(418)]():t[r(387)]().then(()=>{t[r(367)]()})});if(c&&r[s(265)](c),o[s(251)]){const _=i(e[s(217)],s(335),function(e){const i=s;e[i(385)](),di(o[i(363)])?o.screenshotFn():t[i(315)].screenshot()});_&&r[s(265)](_)}if(o[s(316)]){if(As()){const L=i(e.$volume,s(360),function(t){const i=s;e[i(281)][i(346)][i(234)]("jb-pro-volume-panel-wrap-show")});L&&r.push(L);const R=i(e[s(277)],s(212),function(t){const i=s;e.$volumePanelWrap[i(346)][i(245)]("jb-pro-volume-panel-wrap-show")});R&&r[s(265)](R);const P=i(e[s(232)],"click",function(e){const i=s;e[i(385)](),t[i(250)]=a(e)});P&&r[s(265)](P);const x=i(e[s(325)],s(301),function(t){t.stopPropagation(),e.isVolumeDroging=!0});x&&r[s(265)](x);const M=i(e[s(325)],"mousemove",function(i){const r=s;e.isVolumeDroging&&(t[r(250)]=a(i))});M&&r.push(M);const B=i(document,s(417),function(t){const i=s;e.isVolumeDroging&&(e[i(308)]=!1)});B&&r[s(265)](B)}const C=i(e.$volumeOn,s(335),function(i){const r=s;i[r(385)](),hs(e[r(218)],r(400),r(359)),hs(e.$volumeOff,r(400),"block");const n=t[r(250)];t[r(250)]=0,t[r(223)]=As()?n:1});C&&r.push(C);const D=i(e[s(210)],s(335),function(i){const r=s;i[r(385)](),hs(e[r(218)],"display","block"),hs(e[r(210)],r(400),r(359)),t[r(250)]=As()?t.lastVolume||.5:1});D&&r[s(265)](D)}if(o[s(311)]){const F=i(e[s(283)],s(335),function(e){const i=s;e[i(385)](),di(o.recordFn)?o.recordFn():t[i(407)]=!0});F&&r[s(265)](F);const U=i(e.$recordStop,s(335),function(e){const i=s;e.stopPropagation(),di(o[i(275)])?o[i(275)]():t[i(407)]=!1});U&&r[s(265)](U)}const d=i(e[s(342)],"click",function(e){const i=s;e[i(385)](),di(o[i(275)])?o[i(275)]():t.recording=!1});if(d&&r.push(d),o[s(403)]){const O=i(e[s(219)],s(335),function(e){const i=s;e.stopPropagation(),di(o.fullscreenFn)?o[i(428)]():t[i(403)]=!0});O&&r[s(265)](O);const N=i(e.$fullscreenExit,"click",function(e){const i=s;e[i(385)](),di(o.fullscreenExitFn)?o[i(368)]():t[i(403)]=!1});N&&r[s(265)](N)}if(o.ptz){const V=i(e[s(290)],s(335),function(t){const i=s;t[i(385)](),hs(e[i(376)],i(400),"flex"),hs(e[i(290)],i(400),"none"),e.$ptzControl[i(346)].add(i(414))});V&&r[s(265)](V);const j=i(e[s(376)],s(335),function(t){const i=s;t[i(385)](),hs(e.$ptz,i(400),i(398)),hs(e[i(376)],i(400),"none"),e.$ptzControl.classList.remove(i(414))});j&&r[s(265)](j);const W=zi();if(e[s(229)].forEach(o=>{const a=s;if(n[a(307)]===v[a(335)]){const h=i(o,a(335),function(s){const i=a;s[i(385)]();const r=s.currentTarget[i(231)][i(274)];e[i(328)][i(346)][i(234)](i(373)),e[i(328)].classList.add(i(404)+r),e[i(272)][i(346)][i(234)](i(422)+r),t.emit(q[i(334)],Ui(r));const o=i(354)+r+i(289);e[o]=setTimeout(function(){const s=i;e[o]=null,e[s(328)][s(346)][s(245)]("jb-pro-ptz-bg-active-show"),yt[s(239)](t=>{const i=s;e.$ptzBgActive.classList[i(245)](i(404)+t),e.$ptzControlCircular.classList.remove("jb-pro-ptz-control-"+t)}),t.emit(q[s(334)],At[s(352)])},1e3*n[i(392)])});h&&r[a(265)](h)}else if(n[a(307)]===v[a(341)]){let l=!1;const c=i(o,W[a(310)],function(s){const i=a;s[i(385)](),l=!0;const r=s[i(416)][i(231)].arrow;e[i(328)][i(346)][i(234)](i(373)),e[i(328)][i(346)][i(234)]("jb-pro-ptz-bg-active-"+r),e.$ptzControlCircular[i(346)][i(234)]("jb-pro-ptz-control-"+r),t[i(381)](q.ptz,Ui(r))});function d(){const s=a;l=!1,e.$ptzBgActive[s(346)].remove(s(373)),yt[s(239)](t=>{const i=s;e[i(328)].classList[i(245)](i(404)+t),e[i(272)][i(346)][i(245)](i(422)+t)}),t[s(381)](q[s(334)],At[s(352)])}c&&r.push(c);const u=i(o,W.up,function(t){t[a(385)](),l&&d()});u&&r[a(265)](u);const p=i(window,W.up,function(t){t.stopPropagation(),l&&d()});p&&r.push(p)}}),n[s(304)])if(n[s(307)]===v[s(335)]){const G=i(e.$ptzExpand,s(335),function(i){const r=s;i[r(385)](),t[r(381)](q[r(334)],At.zoomExpand),e.ptzExpandTimeout=setTimeout(function(){const s=r;e[s(420)]=null,t[s(381)](q[s(334)],At.stop)},1e3*n[r(392)])});G&&r.push(G);const z=i(e.$ptzNarrow,s(335),function(i){const r=s;i[r(385)](),t[r(381)](q[r(334)],At[r(279)]),e[r(393)]=setTimeout(function(){const s=r;e[s(420)]=null,t[s(381)](q[s(334)],At[s(352)])},1e3*n[r(392)])});z&&r[s(265)](z)}else if(n[s(307)]===v[s(341)]){let H=!1,K=!1;const Q=i(e[s(254)],W.down,function(e){const i=s;e[i(385)](),H=!0,t.emit(q[i(334)],At[i(410)])});Q&&r[s(265)](Q);const Y=i(e[s(293)],W[s(310)],function(e){e.stopPropagation(),K=!0,t.emit(q.ptz,At.zoomNarrow)});function J(){H=!1,K=!1,t[s(381)](q.ptz,At.stop)}Y&&r[s(265)](Y);const X=i(e[s(254)],W.up,function(t){t[s(385)](),H&&J()});X&&r[s(265)](X);const $=i(e[s(293)],W.up,function(t){t[s(385)](),K&&J()});$&&r[s(265)]($);const Z=i(window,W.up,function(t){t[s(385)](),(H||K)&&J()});Z&&r[s(265)](Z)}if(n.ptzApertureShow)if(n[s(307)]===v[s(335)]){const tt=i(e.$ptzApertureFar,s(335),function(i){const r=s;i.stopPropagation(),t[r(381)](q.ptz,At[r(356)]),e[r(287)]=setTimeout(function(){const s=r;e[s(287)]=null,t[s(381)](q[s(334)],At.fiStop)},1e3*n.ptzStopEmitDelay)});tt&&r[s(265)](tt);const et=i(e.$ptzApertureNear,s(335),function(i){const r=s;i.stopPropagation(),t[r(381)](q[r(334)],At[r(424)]),e[r(364)]=setTimeout(function(){const s=r;e[s(364)]=null,t.emit(q[s(334)],At[s(213)])},1e3*n[r(392)])});et&&r.push(et)}else if(n.ptzClickType===v[s(341)]){let st=!1,it=!1;const rt=i(e[s(319)],W[s(310)],function(e){const i=s;e.stopPropagation(),st=!0,t[i(381)](q.ptz,At.apertureFar)});rt&&r[s(265)](rt);const nt=i(e[s(208)],W.down,function(e){const i=s;e.stopPropagation(),it=!0,t.emit(q.ptz,At[i(424)])});function ot(){const e=s;st=!1,it=!1,t[e(381)](q[e(334)],At[e(213)])}nt&&r[s(265)](nt);const at=i(e[s(319)],W.up,function(t){t[s(385)](),st&&ot()});at&&r[s(265)](at);const ht=i(e[s(208)],W.up,function(t){t.stopPropagation(),it&&ot()});ht&&r[s(265)](ht);const lt=i(window,W.up,function(t){t[s(385)](),(st||it)&&ot()});lt&&r[s(265)](lt)}if(n[s(406)])if(n[s(307)]===v.click){const ct=i(e[s(322)],s(335),function(i){const r=s;i[r(385)](),t[r(381)](q[r(334)],At.focusFar),e.ptzFocusFarTimeout=setTimeout(function(){const s=r;e[s(371)]=null,t[s(381)](q.ptz,At[s(213)])},1e3*n[r(392)])});ct&&r[s(265)](ct);const dt=i(e[s(236)],"click",function(i){const r=s;i[r(385)](),t[r(381)](q[r(334)],At[r(369)]),e.ptzFocusNearTimeout=setTimeout(function(){const s=r;e[s(347)]=null,t[s(381)](q.ptz,At.fiStop)},1e3*n[r(392)])});dt&&r[s(265)](dt)}else if(n[s(307)]===v.mouseDownAndUp){let ut=!1,pt=!1;const ft=i(e.$ptzFocusFar,W.down,function(e){const i=s;e[i(385)](),ut=!0,t[i(381)](q.ptz,At[i(361)])});ft&&r[s(265)](ft);const mt=i(e[s(236)],W.down,function(e){const i=s;e.stopPropagation(),pt=!0,t[i(381)](q[i(334)],At[i(369)])});function gt(){const e=s;ut=!1,pt=!1,t.emit(q[e(334)],At[e(213)])}mt&&r[s(265)](mt);const bt=i(e.$ptzFocusFar,W.up,function(t){t[s(385)](),ut&>()});bt&&r[s(265)](bt);const vt=i(e.$ptzFocusNear,W.up,function(t){t[s(385)](),pt&>()});vt&&r[s(265)](vt);const St=i(window,W.up,function(t){t.stopPropagation(),(ut||pt)&>()});St&&r[s(265)](St)}if(n[s(211)]){const Et=i(e[s(258)],s(335),function(e){const i=s;e.stopPropagation(),t[i(381)](q[i(334)],At[i(349)])});Et&&r[s(265)](Et);const wt=i(e[s(220)],s(335),function(e){const i=s;e[i(385)](),t[i(381)](q.ptz,At[i(389)])});wt&&r.push(wt)}if(n[s(262)]){const Tt=i(e[s(313)],s(335),function(e){const i=s;e.stopPropagation(),t.emit(q[i(334)],At[i(235)])});Tt&&r.push(Tt);const It=i(e[s(296)],s(335),function(e){const i=s;e[i(385)](),t[i(381)](q[i(334)],At.fogClose)});It&&r[s(265)](It)}if(n[s(402)]){const kt=i(e.$ptzWiperOpen,s(335),function(e){const i=s;e.stopPropagation(),t[i(381)](q[i(334)],At.wiperOpen)});kt&&r.push(kt);const _t=i(e.$ptzWiperClose,s(335),function(e){const i=s;e[i(385)](),t.emit(q[i(334)],At.wiperClose)});_t&&r[s(265)](_t)}if(n[s(391)]){e[s(243)]=!1,e[s(214)]={x:0,y:0};const Ct=i(e.$ptzControl,W[s(310)],function(t){const i=s;t[i(385)](),e.isPtzControlDroging=!0,e[i(345)][i(425)][i(264)]=i(268);const{posX:r,posY:n}=pi(t);e[i(214)]={x:r,y:n}});Ct&&r[s(265)](Ct);const Dt=i(e.$ptzControl,W[s(351)],function(t){const i=s;if(e[i(243)]){t[i(385)]();const{posX:s,posY:r}=pi(t),n=e[i(214)].x-s,o=e[i(214)].y-r;e.$ptzControl.style[i(233)]=e[i(345)][i(216)]-n+"px",e.$ptzControl[i(425)][i(298)]=e.$ptzControl[i(348)]-o+"px",e.tempPtzPosition={x:s,y:r}}});function Lt(){const t=s;e[t(243)]&&(e.isPtzControlDroging=!1,e[t(345)][t(425)][t(264)]=t(405),e[t(214)]={x:0,y:0})}Dt&&r[s(265)](Dt);const Rt=i(e[s(345)],W.up,function(t){t[s(385)](),Lt()});Rt&&r[s(265)](Rt);const Pt=i(window,W.up,function(t){t[s(385)](),Lt()});Pt&&r[s(265)](Pt)}}if(o.performance){const xt=i(e.$performance,s(335),function(e){const i=s;e.stopPropagation(),t[i(355)](!0)});xt&&r.push(xt);const Mt=i(e[s(263)],s(335),function(e){const i=s;e[i(385)](),t[i(355)](!1)});Mt&&r[s(265)](Mt)}if(o[s(291)]){const Bt=i(e[s(261)],"click",function(e){const i=s;e[i(385)](),t[i(401)]()});Bt&&r[s(265)](Bt)}if(o[s(249)]){const Ft=i(e[s(321)],s(335),function(e){const i=s;e[i(385)](),t[i(332)](!0)});Ft&&r.push(Ft);const Ut=i(e[s(255)],"click",function(e){const i=s;e.stopPropagation(),t[i(332)](!1)});Ut&&r[s(265)](Ut)}if(o.aiObject){const Ot=i(e[s(429)],s(335),function(e){e.stopPropagation(),t.objectDetect(!0)});Ot&&r[s(265)](Ot);const Nt=i(e[s(350)],s(335),function(e){const i=s;e[i(385)](),t[i(399)](!1)});Nt&&r[s(265)](Nt)}if(o[s(228)]){const Vt=i(e.$occlusionDetect,s(335),function(e){const i=s;e[i(385)](),t[i(215)](!0)});Vt&&r[s(265)](Vt);const jt=i(e[s(427)],s(335),function(e){const i=s;e[i(385)](),t[i(215)](!1)});jt&&r[s(265)](jt)}function u(){const i=s;f(),e[i(248)]=setTimeout(function(){const t=i;hs(e[t(383)],"display",t(359))},1e3*t._opt[i(237)])}function f(){const t=s;e.delayHiddenTimeout&&(clearTimeout(e[t(248)]),e.delayHiddenTimeout=null)}if(e[s(248)]=null,t[s(244)].hasControl&&t[s(244)].controlAutoHide&&As()){const Wt=i(t[s(378)],s(360),function(){const i=s;!t[i(403)]&&(hs(e.$controls,i(400),"block"),u())});Wt&&r.push(Wt);const Gt=i(t[s(378)],s(380),function(){const i=s;t.$container&&e[i(383)]&&(t[i(403)]?e[i(383)].style[i(400)]===i(359)&&(hs(e.$controls,i(400),"block"),u()):e[i(383)][i(425)].display===i(359)&&(hs(e[i(383)],i(400),i(375)),u()))});Gt&&r.push(Gt);const zt=i(t[s(378)],s(212),function(){const t=s;f(),hs(e[t(383)],t(400),"none")});zt&&r.push(zt)}if(t._opt[s(270)]===p.playbackTF){let Ht=t[s(244)][s(333)][s(343)];if(t[s(244)][s(333)][s(323)]){const Kt=i(e.$speedMenu,s(360),function(){const t=s;e[t(300)][t(346)].add(t(288))});Kt&&r[s(265)](Kt);const qt=i(e[s(423)],s(212),function(){const t=s;e[t(300)][t(346)][t(245)](t(288))});qt&&r.push(qt);const Qt=i(e[s(300)],"click",function(e){const i=s,r=li(e);if(r[i(329)](i(320))){const e=r[i(231)];t.emit(q[i(221)],e.speed)}});Qt&&r[s(265)](Qt)}if(Ht===S.normal){const Yt=i(e.$playbackNarrow,s(335),function(e){const i=s;e[i(385)](),t[i(324)]&&t[i(324)].narrowPrecision()});Yt&&r[s(265)](Yt);const Jt=i(e[s(278)],s(335),function(e){const i=s;e[i(385)](),t.playback&&t[i(324)][i(252)]()});Jt&&r[s(265)](Jt);const Xt=i(e[s(358)],s(335),function(e){const i=s,r=li(e);r[i(329)](i(396))&&t[i(324)]&&t[i(324)][i(390)](r[i(231)])});if(Xt&&r[s(265)](Xt),t._opt[s(333)][s(357)]){const $t=i(e[s(412)],s(240),function(e){const i=s;e.preventDefault(),(e[i(337)]?e[i(337)]/120:-(e[i(384)]||0)/3)>0?t[i(324)]&&t[i(324)][i(252)]():t[i(324)]&&t[i(324)].narrowPrecision()});$t&&r[s(265)]($t)}}else if(Ht===S[s(344)]){const Zt=i(e[s(386)],s(335),function(i){const r=s;if(i[r(415)]!==e[r(222)]){let s=0;const n=py(e,t.playback[r(312)],i,t[r(297)]());n.percentage,s=n[r(260)],t.playback&&t[r(324)].seek({time:s})}});if(Zt&&r[s(265)](Zt),As()){e[s(397)]=!1;const te=i(e.$playbackProgress,s(380),function(i){const r=s;hs(e[r(430)],r(400),r(375));const{width:n,time:o}=py(e,t.playback[r(312)],i);e.$playbackProgressTip[r(426)]=o;const a=e[r(430)][r(276)];if(n<=a/2?hs(e[r(430)],r(233),0):n>e.$playbackProgress[r(276)]-a/2?hs(e[r(430)],r(233),e[r(386)].clientWidth-a+"px"):hs(e[r(430)],r(233),n-a/2+"px"),e.isDroging){const{second:s,percentage:n}=py(e,t[r(324)][r(312)],i);t[r(324)]&&t[r(324)][r(390)]({time:s})}});te&&r[s(265)](te);const ee=i(e[s(386)],"mouseout",function(t){hs(e[s(430)],"display","none")});ee&&r[s(265)](ee);const se=i(e[s(222)],"mousedown",t=>{e[s(397)]=!0});se&&r[s(265)](se);const ie=i(e.$playbackProgress,s(417),function(t){const i=s;e[i(397)]&&(e[i(397)]=!1)});ie&&r.push(ie)}}}if(t.isPlayVod()){if(t[s(244)][s(299)][s(323)]){const ne=i(e[s(423)],s(360),function(t){const i=s;e[i(300)][i(346)][i(234)](i(288))});ne&&r[s(265)](ne);const oe=i(e[s(423)],s(212),function(t){const i=s;e[i(300)].classList[i(245)]("jb-pro-speed-menu-shown")});oe&&r[s(265)](oe);const ae=i(e[s(300)],s(335),function(i){const r=s,n=li(i);if(n.matches(r(320))){const s=n.dataset;t.playVodForward(s[r(292)]).catch(s=>{const i=r;t.debugLog(e[i(241)],i(256),s)})}});ae&&r[s(265)](ae)}const re=i(e.$playbackProgress,s(335),function(i){const r=s;if(i[r(415)]!==e[r(222)]){let s=0;const n=py(e,t[r(377)][r(312)],i,t[r(297)]());n[r(267)],s=n[r(260)],t.playVodSeek(s)[r(394)](s=>{const i=r;t[i(306)](e[i(241)],i(379),s)})}});if(re&&r[s(265)](re),As()){e.isDroging=!1;const he=i(e[s(386)],s(380),function(i){const r=s;hs(e[r(430)],r(400),r(375));const{width:n,time:o}=py(e,t[r(377)][r(312)],i);e.$playbackProgressTip[r(426)]=o;const a=e[r(430)][r(276)];if(n<=a/2?hs(e[r(430)],r(233),0):n>e[r(386)][r(276)]-a/2?hs(e[r(430)],r(233),e.$playbackProgress-a+"px"):hs(e.$playbackProgressTip,r(233),n-a/2+"px"),e[r(397)]){const{second:s,percentage:n}=py(e,t[r(377)].totalDuration,i);t[r(331)](s)[r(394)](s=>{const i=r;t[i(306)](e[i(241)],i(379),s)})}});he&&r[s(265)](he);const le=i(e[s(386)],s(212),function(t){const i=s;hs(e[i(430)],i(400),i(359))});le&&r[s(265)](le);const ce=i(e[s(222)],s(301),t=>{e[s(397)]=!0});ce&&r[s(265)](ce);const de=i(e[s(386)],s(417),function(t){const i=s;e[i(397)]&&(e[i(397)]=!1)});de&&r[s(265)](de)}}if(o[s(413)]){const ue=i(e.$qualityMenu,"mouseover",function(t){const i=s;e[i(259)].classList[i(234)](i(269))});ue&&r[s(265)](ue);const pe=i(e.$qualityMenu,s(212),function(t){const i=s;e[i(259)][i(346)][i(245)]("jb-pro-quality-menu-shown")});pe&&r[s(265)](pe);const fe=i(e[s(259)],s(335),function(e){const i=s,r=li(e);if(r.matches("div.jb-pro-quality-menu-item")){const e=r[i(231)];t[i(421)]=e[i(413)]}});fe&&r[s(265)](fe)}if(o[s(317)]){const me=i(e[s(253)],s(360),function(t){const i=s;e[i(372)][i(346)][i(234)](i(273))});me&&r[s(265)](me);const ge=i(e[s(253)],s(212),function(t){e[s(372)].classList.remove("jb-pro-scale-menu-shown")});ge&&r[s(265)](ge);const ye=i(e[s(372)],s(335),function(e){const i=s,r=li(e);if(r[i(329)](i(230))){const e=r.dataset;t.setScaleMode(e[i(317)])}});ye&&r[s(265)](ye)}if(o[s(227)]){const Ae=i(e[s(295)],"click",function(e){const i=s;e[i(385)](),t[i(286)]=!0});Ae&&r[s(265)](Ae);const be=i(e[s(318)],s(335),function(e){const i=s;e[i(385)](),t[i(286)]=!1});be&&r[s(265)](be)}const m=i(e[s(353)],"click",function(e){const i=s;e[i(385)](),t[i(227)]&&t[i(227)][i(252)]()});m&&r[s(265)](m);const g=i(e[s(362)],"click",function(e){const i=s;e[i(385)](),t.zoom&&t[i(227)][i(336)]()});g&&r[s(265)](g);const y=i(e.$zoomStop2,s(335),function(e){e[s(385)](),t.zooming=!1});if(y&&r[s(265)](y),o.close){const ve=i(e.$close,s(335),function(e){const i=s;e.stopPropagation(),t[i(409)]()});ve&&r.push(ve)}const A=i(e[s(209)],s(335),function(t){const i=s;t[i(385)](),e.$tipsMessageContent[i(426)]="",hs(e[i(224)],i(400),"none")});A&&r[s(265)](A);const b=i(e[s(246)],s(335),function(t){const i=s;t.stopPropagation(),fn(e.$performancePanelBtn2,i(330)),pn(e[i(246)],i(330)),hs(e[i(388)],i(400),i(375)),hs(e[i(326)],"display",i(359))});b&&r[s(265)](b);const E=i(e.$performancePanelBtn2,s(335),function(t){const i=s;t.stopPropagation(),fn(e.$performancePanelBtn1,i(330)),pn(e.$performancePanelBtn2,i(330)),hs(e[i(388)],i(400),i(359)),hs(e[i(326)],i(400),"block")});E&&r[s(265)](E)}(t,this),t._opt.hotKey&&As()&&((t,e)=>{const s=Ty,{events:{proxy:i}}=t,r=e[s(377)];let n={};function o(t,e){const i=s;n[t]?n[t][i(346)](e):n[t]=[e]}e[s(360)]=n,o(pt[s(376)],()=>{const e=s;t[e(347)]&&(t[e(347)]=!1)}),o(pt[s(348)],()=>{const e=s;t[e(350)]+=t[e(361)][e(372)]}),o(pt[s(341)],()=>{const e=s;t.volume-=t[e(361)].hotKeyVolumeStep}),t[s(349)]()&&(o(pt[s(357)],()=>{const e=s;t[e(365)](t[e(361)][e(362)])}),o(pt[s(370)],()=>{const e=s;t[e(369)](t[e(361)][e(362)])}));const a=i(window,"keydown",t=>{const i=s;if(e[i(340)]){const e=document[i(352)][i(353)][i(364)](),s=document[i(352)][i(356)](i(375));if(e!==i(358)&&e!==i(355)&&""!==s&&"true"!==s){const e=n[t[i(342)]];e&&(t.preventDefault(),e[i(371)](t=>t()))}}});a&&r[s(346)](a)})(t,this),this[e(486)]=0,this[e(602)](),ii(t._opt.loadingIconStyle)&&this[e(401)](t._opt[e(653)]),ii(t[e(655)].ptzPositionConfig)&&this.updatePtzPosition(t._opt[e(427)]),t._opt[e(650)]&&(this[e(614)]=!0,this[e(457)]()),t[e(655)][e(523)]&&this.showLoadingIcon(),this[e(418)](),this.kbpsShow=e(462),this[e(416)].debugLog(e(382),e(405))}[ky(613)](){const t=ky;if(this[t(474)](),this[t(577)]&&(clearTimeout(this[t(577)]),this[t(577)]=null),["up","right","down",t(611),t(528),t(407),t(378),t(422)][t(366)](e=>{const s=t;let i=this[s(441)+e+s(395)];i&&(clearTimeout(i),i=null)}),this[t(428)]&&(clearTimeout(this[t(428)]),this[t(428)]=null),this[t(537)]&&(clearTimeout(this[t(537)]),this[t(537)]=null),this[t(402)]&&(clearTimeout(this[t(402)]),this[t(402)]=null),this.ptzApertureNearTimeout&&(clearTimeout(this[t(439)]),this[t(439)]=null),this[t(660)]&&(clearTimeout(this[t(660)]),this.ptzFocusFarTimeout=null),this[t(630)]&&(clearTimeout(this[t(630)]),this[t(630)]=null),this.eventListenList[t(567)]>0&&(this.eventListenList.forEach(t=>t&&t()),this[t(514)]=[]),this.$performancePanel){this.$performancePanel.innerHTML="";if(!En(this[t(481)])){const e=this[t(416)][t(493)][t(555)](t(669));e&&this[t(416)].$container&&this[t(416)].$container[t(579)](e)}}if(this[t(337)]){if(!En(this[t(337)])){const e=this[t(416)][t(493)][t(555)](".jb-pro-poster");e&&this[t(416)][t(493)]&&this[t(416)].$container[t(579)](e)}}if(this[t(326)]){this.$loading[t(426)]="";if(!En(this[t(326)])){const e=this[t(416)][t(493)][t(555)](t(345));e&&this[t(416)][t(493)]&&this[t(416)][t(493)][t(579)](e)}}if(this.$loadingBg){this.$loadingBg[t(426)]="";if(!En(this[t(576)])){const e=this.player.$container[t(555)](".jb-pro-loading-bg");e&&this.player[t(493)]&&this[t(416)][t(493)].removeChild(e)}}if(this[t(620)]&&(this[t(620)][t(426)]=""),this[t(670)]){this.$controls.innerHTML="";if(!En(this[t(670)])){const e=this.player[t(493)][t(555)](t(372));e&&this.player.$container&&this[t(416)].$container.removeChild(e)}}if(this[t(440)]){if(!En(this[t(440)])){const e=this.player.$container[t(555)](t(397));e&&this[t(416)][t(493)]&&this[t(416)].$container[t(579)](e)}}if(this[t(465)]){this[t(465)][t(426)]="";if(!En(this[t(465)])){const e=this[t(416)].$container[t(555)](t(521));e&&this[t(416)][t(493)]&&this.player.$container[t(579)](e)}}if(this[t(623)]){this[t(623)][t(426)]="";if(!En(this[t(623)])){const e=this[t(416)][t(493)][t(555)](".jb-pro-ptz-controls");e&&this[t(416)][t(493)]&&this[t(416)][t(493)][t(579)](e)}}if(this[t(448)]){this[t(448)].innerHTML="";if(!En(this[t(448)])){const e=this.player[t(493)][t(555)](".jb-pro-zoom-controls");e&&this[t(416)][t(493)]&&this[t(416)][t(493)][t(579)](e)}}if(this[t(322)]){this.$contextmenus[t(426)]="";if(!En(this.$contextmenus)){const e=this.player[t(493)][t(555)](t(482));e&&this[t(416)].$container&&this[t(416)][t(493)].removeChild(e)}}if(this[t(618)]){this[t(618)][t(426)]="";if(!En(this[t(618)])){const e=this[t(416)][t(493)][t(555)](t(490));e&&this[t(416)].$container&&this.player[t(493)][t(579)](e)}}if(this[t(363)]){this[t(363)].innerHTML="";if(!En(this[t(363)])){const e=this.player.$container[t(555)](".jb-pro-extend-dom");e&&this[t(416)].$container&&this.player[t(493)][t(579)](e)}}this[t(335)]=null,this[t(683)]=null,this.btnIndex=0,this[t(314)]=null,this[t(446)]="",this[t(416)][t(493)]&&(this[t(416)][t(493)][t(324)][t(330)](t(325)),this[t(416)][t(493)][t(324)][t(330)](t(520))),this[t(642)]=null,this[t(416)][t(339)](t(382),t(613))}[ky(474)](){const t=ky;Object[t(683)](this.bound)[t(366)](e=>{const s=t;this[s(642)][e]&&this[s(416)][s(313)](e,this[s(642)][e])})}get[ky(337)](){const t=ky;return!this[t(335)][t(337)]&&(this.$domMap[t(337)]=this[t(416)][t(493)]&&this[t(416)].$container[t(555)](".jb-pro-poster")),this.$domMap[t(337)]}get[ky(576)](){const t=ky;return!this[t(335)].$loadingBg&&(this[t(335)][t(576)]=this[t(416)][t(493)]&&this.player.$container[t(555)](t(415))),this[t(335)][t(576)]}get[ky(531)](){const t=ky;return!this.$domMap[t(531)]&&(this[t(335)][t(531)]=this.player[t(493)]&&this[t(416)][t(493)][t(555)](t(598))),this[t(335)][t(531)]}get[ky(326)](){const t=ky;return!this.$domMap[t(326)]&&(this.$domMap.$loading=this[t(416)].$container&&this[t(416)][t(493)].querySelector(t(345))),this[t(335)][t(326)]}get[ky(564)](){const t=ky;return!this[t(335)][t(564)]&&(this.$domMap[t(564)]=this[t(416)][t(493)]&&this.player.$container[t(555)](t(319))),this.$domMap.$loadingText}get $play(){const t=ky;return!this[t(335)][t(340)]&&(this[t(335)][t(340)]=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](t(569))),this[t(335)][t(340)]}get[ky(440)](){const t=ky;return!this[t(335)][t(440)]&&(this[t(335)].$playBig=this[t(416)][t(493)]&&this.player[t(493)][t(555)](t(397))),this[t(335)][t(440)]}get[ky(465)](){const t=ky;return!this[t(335)].$recording&&(this[t(335)][t(465)]=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](".jb-pro-recording")),this[t(335)][t(465)]}get[ky(502)](){const t=ky;return!this.$domMap.$recordingTime&&(this[t(335)].$recordingTime=this.player[t(493)]&&this[t(416)][t(493)][t(555)](t(404))),this[t(335)][t(502)]}get $recordingStop(){const t=ky;return!this.$domMap[t(553)]&&(this[t(335)].$recordingStop=this[t(416)][t(493)]&&this[t(416)][t(493)].querySelector(".jb-pro-recording-stop")),this[t(335)][t(553)]}get[ky(438)](){const t=ky;return!this.$domMap.$pause&&(this[t(335)][t(438)]=this[t(416)].$container&&this[t(416)][t(493)].querySelector(t(599))),this[t(335)][t(438)]}get[ky(670)](){const t=ky;return!this[t(335)].$controls&&(this[t(335)].$controls=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](t(372))),this.$domMap[t(670)]}get[ky(545)](){const t=ky;return!this.$domMap[t(545)]&&(this[t(335)][t(545)]=this[t(416)].$container&&this[t(416)].$container[t(555)](t(362))),this.$domMap[t(545)]}get[ky(417)](){const t=ky;return!this.$domMap[t(417)]&&(this.$domMap[t(417)]=this[t(416)][t(493)]&&this[t(416)][t(493)].querySelector(t(641))),this[t(335)][t(417)]}get[ky(597)](){const t=ky;return!this[t(335)][t(597)]&&(this[t(335)][t(597)]=this.player.$container&&this[t(416)][t(493)][t(555)](t(544))),this[t(335)][t(597)]}get $volume(){const t=ky;return!this[t(335)][t(584)]&&(this.$domMap[t(584)]=this[t(416)][t(493)]&&this.player[t(493)][t(555)](".jb-pro-volume")),this[t(335)][t(584)]}get[ky(536)](){const t=ky;return!this[t(335)].$volumePanelWrap&&(this[t(335)][t(536)]=this.player.$container&&this[t(416)].$container.querySelector(t(388))),this[t(335)].$volumePanelWrap}get[ky(389)](){const t=ky;return!this.$domMap[t(389)]&&(this[t(335)][t(389)]=this[t(416)][t(493)]&&this[t(416)].$container[t(555)](".jb-pro-volume-panel-text")),this[t(335)].$volumePanelText}get[ky(414)](){const t=ky;return!this[t(335)][t(414)]&&(this[t(335)][t(414)]=this[t(416)][t(493)]&&this.player[t(493)][t(555)](t(532))),this.$domMap[t(414)]}get[ky(540)](){const t=ky;return!this.$domMap[t(540)]&&(this[t(335)][t(540)]=this.player[t(493)]&&this[t(416)][t(493)][t(555)](".jb-pro-volume-panel-handle")),this.$domMap.$volumeHandle}get $volumeOn(){const t=ky;return!this[t(335)][t(323)]&&(this[t(335)].$volumeOn=this.player[t(493)]&&this[t(416)][t(493)].querySelector(t(350))),this[t(335)].$volumeOn}get[ky(351)](){const t=ky;return!this[t(335)][t(351)]&&(this[t(335)].$volumeOff=this.player.$container&&this[t(416)][t(493)].querySelector(t(657))),this[t(335)][t(351)]}get[ky(568)](){const t=ky;return!this[t(335)][t(568)]&&(this[t(335)].$fullscreen=this.player[t(493)]&&this[t(416)].$container[t(555)](t(347))),this[t(335)][t(568)]}get $fullscreenExit(){const t=ky;return!this[t(335)][t(580)]&&(this[t(335)].$fullscreenExit=this[t(416)][t(493)]&&this[t(416)].$container[t(555)](t(573))),this.$domMap[t(580)]}get $record(){const t=ky;return!this[t(335)][t(352)]&&(this.$domMap.$record=this.player[t(493)]&&this[t(416)].$container[t(555)](t(329))),this[t(335)][t(352)]}get[ky(458)](){const t=ky;return!this[t(335)][t(458)]&&(this[t(335)].$recordStop=this[t(416)][t(493)]&&this[t(416)].$container[t(555)](t(527))),this[t(335)][t(458)]}get[ky(421)](){const t=ky;return!this[t(335)][t(421)]&&(this[t(335)][t(421)]=this.player[t(493)]&&this[t(416)].$container[t(555)](".jb-pro-screenshot")),this[t(335)][t(421)]}get[ky(620)](){const t=ky;return!this[t(335)][t(620)]&&(this[t(335)][t(620)]=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](t(483))),this.$domMap[t(620)]}get[ky(459)](){const t=ky;return!this[t(335)].$controlHtml&&(this.$domMap[t(459)]=this[t(416)][t(493)]&&this.player[t(493)][t(555)](t(476))),this[t(335)][t(459)]}get $playbackTime(){const t=ky;return!this[t(335)][t(312)]&&(this[t(335)][t(312)]=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](t(466))),this[t(335)].$playbackTime}get[ky(682)](){const t=ky;return!this[t(335)][t(682)]&&(this[t(335)][t(682)]=this[t(416)][t(493)]&&this[t(416)].$container[t(555)](t(375))),this[t(335)][t(682)]}get[ky(376)](){const t=ky;return!this[t(335)].$playbackTimeScroll&&(this[t(335)][t(376)]=this[t(416)].$container&&this[t(416)][t(493)].querySelector(t(354))),this[t(335)][t(376)]}get[ky(637)](){const t=ky;return!this[t(335)][t(637)]&&(this[t(335)][t(637)]=this[t(416)][t(493)]&&this[t(416)][t(493)].querySelector(t(488))),this[t(335)].$playbackTimeList}get[ky(654)](){const t=ky;return!this[t(335)][t(654)]&&(this[t(335)][t(654)]=this[t(416)].$container&&this.player[t(493)][t(555)](t(680))),this[t(335)][t(654)]}get $playbackTimeListSecond(){const t=ky;return!this.$domMap[t(547)]&&(this[t(335)][t(547)]=this.player[t(493)]&&this[t(416)][t(493)][t(555)](".jb-pro-playback-time-second-wrap")),this[t(335)][t(547)]}get[ky(496)](){const t=ky;return!this[t(335)][t(496)]&&(this.$domMap.$playbackCurrentTime=this[t(416)].$container&&this[t(416)].$container[t(555)](t(656))),this[t(335)][t(496)]}get[ky(535)](){const t=ky;return!this[t(335)].$playbackCurrentTimeText&&(this.$domMap[t(535)]=this.player[t(493)]&&this.player[t(493)].querySelector(t(592))),this.$domMap[t(535)]}get[ky(406)](){const t=ky;return!this[t(335)][t(406)]&&(this.$domMap.$controlsPlaybackBtns=this[t(416)][t(493)]&&this.player.$container[t(555)](t(516))),this.$domMap[t(406)]}get $playbackNarrow(){const t=ky;return!this[t(335)][t(678)]&&(this.$domMap[t(678)]=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](".jb-pro-playback-narrow")),this[t(335)][t(678)]}get $playbackExpand(){const t=ky;return!this[t(335)].$playbackExpand&&(this[t(335)][t(566)]=this[t(416)][t(493)]&&this.player[t(493)].querySelector(t(558))),this[t(335)][t(566)]}get[ky(640)](){const t=ky;return!this[t(335)][t(640)]&&(this[t(335)][t(640)]=this[t(416)].$container&&this.player[t(493)][t(555)](t(538))),this.$domMap[t(640)]}get[ky(400)](){const t=ky;return!this[t(335)][t(400)]&&(this.$domMap[t(400)]=this[t(416)][t(493)]&&this.player[t(493)][t(555)](t(671))),this[t(335)].$ptzActive}get[ky(623)](){const t=ky;return!this.$domMap[t(623)]&&(this[t(335)][t(623)]=this[t(416)].$container&&this[t(416)][t(493)][t(555)](".jb-pro-ptz-controls")),this[t(335)][t(623)]}get[ky(394)](){const t=ky;return!this[t(335)][t(394)]&&(this[t(335)][t(394)]=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](".jb-pro-ptz-bg-active")),this.$domMap.$ptzBgActive}get[ky(341)](){const t=ky;return!this[t(335)][t(341)]&&(this[t(335)][t(341)]=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](t(647))),this[t(335)][t(341)]}get $ptzArrows(){const t=ky;return!this[t(335)][t(498)]&&(this[t(335)][t(498)]=this[t(416)].$container&&this[t(416)][t(493)][t(419)](".jb-pro-ptz-arrow")),this.$domMap.$ptzArrows}get[ky(688)](){const t=ky;return!this.$domMap[t(688)]&&(this[t(335)][t(688)]=this[t(416)][t(493)]&&this[t(416)][t(493)].querySelector(t(480))),this[t(335)][t(688)]}get[ky(425)](){const t=ky;return!this.$domMap[t(425)]&&(this[t(335)][t(425)]=this[t(416)][t(493)]&&this.player.$container[t(555)](t(588))),this.$domMap[t(425)]}get[ky(609)](){const t=ky;return!this[t(335)][t(609)]&&(this.$domMap[t(609)]=this[t(416)].$container&&this[t(416)][t(493)][t(555)](".jb-pro-ptz-aperture-far")),this.$domMap[t(609)]}get[ky(429)](){const t=ky;return!this.$domMap[t(429)]&&(this[t(335)][t(429)]=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](t(484))),this.$domMap[t(429)]}get $ptzFocusFar(){const t=ky;return!this[t(335)][t(552)]&&(this.$domMap[t(552)]=this[t(416)][t(493)]&&this.player.$container[t(555)](t(328))),this[t(335)][t(552)]}get[ky(512)](){const t=ky;return!this[t(335)][t(512)]&&(this.$domMap[t(512)]=this[t(416)][t(493)]&&this[t(416)].$container[t(555)](t(411))),this[t(335)][t(512)]}get[ky(380)](){const t=ky;return!this[t(335)][t(380)]&&(this.$domMap[t(380)]=this[t(416)][t(493)]&&this[t(416)].$container[t(555)](t(467))),this[t(335)].$ptzCruisePlay}get[ky(387)](){const t=ky;return!this[t(335)][t(387)]&&(this[t(335)][t(387)]=this.player[t(493)]&&this.player.$container[t(555)](t(593))),this[t(335)][t(387)]}get[ky(589)](){const t=ky;return!this.$domMap[t(589)]&&(this[t(335)].$ptzFogOpen=this[t(416)][t(493)]&&this[t(416)].$container[t(555)](t(310))),this[t(335)][t(589)]}get[ky(562)](){const t=ky;return!this.$domMap[t(562)]&&(this[t(335)].$ptzFogClose=this[t(416)][t(493)]&&this.player[t(493)][t(555)](".jb-pro-ptz-fog-close")),this[t(335)].$ptzFogClose}get[ky(651)](){const t=ky;return!this[t(335)][t(651)]&&(this[t(335)][t(651)]=this[t(416)][t(493)]&&this.player[t(493)][t(555)](t(587))),this[t(335)][t(651)]}get[ky(343)](){const t=ky;return!this[t(335)][t(343)]&&(this.$domMap[t(343)]=this.player[t(493)]&&this.player[t(493)][t(555)](t(396))),this.$domMap[t(343)]}get[ky(644)](){const t=ky;return!this[t(335)][t(644)]&&(this[t(335)][t(644)]=this.player[t(493)]&&this.player[t(493)][t(555)](t(529))),this[t(335)][t(644)]}get[ky(559)](){const t=ky;return!this[t(335)].$qualityMenu&&(this[t(335)].$qualityMenu=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](t(668))),this[t(335)][t(559)]}get $qualityMenuList(){const t=ky;return!this[t(335)][t(585)]&&(this[t(335)][t(585)]=this[t(416)][t(493)]&&this.player[t(493)].querySelector(".jb-pro-quality-menu-list")),this[t(335)].$qualityMenuList}get[ky(572)](){const t=ky;return!this[t(335)][t(572)]&&(this[t(335)][t(572)]=this[t(416)][t(493)]&&this[t(416)][t(493)].querySelector(t(659))),this[t(335)][t(572)]}get[ky(420)](){const t=ky;return!this[t(335)][t(420)]&&(this[t(335)][t(420)]=this.player[t(493)]&&this.player[t(493)][t(555)](t(369))),this[t(335)][t(420)]}get $scaleMenuList(){const t=ky;return!this.$domMap[t(658)]&&(this[t(335)][t(658)]=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](t(477))),this[t(335)][t(658)]}get[ky(583)](){const t=ky;return!this[t(335)][t(583)]&&(this[t(335)].$zoom=this[t(416)].$container&&this[t(416)].$container[t(555)](t(635))),this[t(335)][t(583)]}get[ky(365)](){const t=ky;return!this[t(335)].$zoomStop&&(this[t(335)][t(365)]=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](t(554))),this.$domMap[t(365)]}get[ky(374)](){const t=ky;return!this[t(335)].$zoomNarrow&&(this.$domMap[t(374)]=this[t(416)].$container&&this[t(416)][t(493)].querySelector(t(533))),this.$domMap[t(374)]}get[ky(449)](){const t=ky;return!this[t(335)][t(449)]&&(this[t(335)][t(449)]=this.player[t(493)]&&this[t(416)][t(493)].querySelector(".jb-pro-zoom-expand")),this.$domMap.$zoomExpand}get[ky(470)](){const t=ky;return!this[t(335)].$zoomStop2&&(this[t(335)][t(470)]=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](t(464))),this[t(335)].$zoomStop2}get[ky(460)](){const t=ky;return!this.$domMap[t(460)]&&(this[t(335)][t(460)]=this[t(416)][t(493)]&&this.player[t(493)][t(555)](t(541))),this[t(335)][t(460)]}get $zoomControls(){const t=ky;return!this[t(335)][t(448)]&&(this[t(335)].$zoomControls=this.player[t(493)]&&this[t(416)].$container[t(555)](t(506))),this[t(335)][t(448)]}get[ky(481)](){const t=ky;return!this[t(335)][t(481)]&&(this[t(335)].$performancePanel=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](t(669))),this[t(335)][t(481)]}get[ky(673)](){const t=ky;return!this[t(335)].$performancePanelBtn1&&(this[t(335)].$performancePanelBtn1=this[t(416)].$container&&this.player[t(493)].querySelector(t(353))),this.$domMap[t(673)]}get[ky(519)](){const t=ky;return!this.$domMap[t(519)]&&(this[t(335)][t(519)]=this[t(416)][t(493)]&&this.player.$container[t(555)](t(452))),this[t(335)][t(519)]}get[ky(686)](){const t=ky;return!this[t(335)][t(686)]&&(this.$domMap[t(686)]=this[t(416)][t(493)]&&this[t(416)].$container[t(555)](t(443))),this[t(335)][t(686)]}get[ky(489)](){const t=ky;return!this[t(335)][t(489)]&&(this[t(335)][t(489)]=this[t(416)].$container&&this[t(416)][t(493)][t(555)](t(342))),this[t(335)][t(489)]}get[ky(348)](){const t=ky;return!this.$domMap.$performance&&(this[t(335)][t(348)]=this[t(416)].$container&&this[t(416)][t(493)][t(555)](t(603))),this[t(335)].$performance}get[ky(664)](){const t=ky;return!this[t(335)][t(664)]&&(this[t(335)][t(664)]=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](t(327))),this.$domMap.$performanceActive}get[ky(582)](){const t=ky;return!this[t(335)][t(582)]&&(this[t(335)].$faceDetect=this[t(416)][t(493)]&&this[t(416)][t(493)].querySelector(t(455))),this[t(335)][t(582)]}get[ky(475)](){const t=ky;return!this[t(335)].$faceDetectActive&&(this[t(335)][t(475)]=this[t(416)].$container&&this.player[t(493)][t(555)](".jb-pro-face-active")),this.$domMap[t(475)]}get[ky(332)](){const t=ky;return!this[t(335)][t(332)]&&(this[t(335)][t(332)]=this[t(416)][t(493)]&&this[t(416)].$container[t(555)](t(471))),this[t(335)][t(332)]}get[ky(410)](){const t=ky;return!this[t(335)][t(410)]&&(this[t(335)][t(410)]=this[t(416)][t(493)]&&this.player[t(493)][t(555)](t(432))),this[t(335)][t(410)]}get[ky(320)](){const t=ky;return!this.$domMap[t(320)]&&(this[t(335)].$occlusionDetect=this[t(416)][t(493)]&&this.player[t(493)][t(555)](t(661))),this[t(335)][t(320)]}get[ky(563)](){const t=ky;return!this[t(335)][t(563)]&&(this[t(335)].$occlusionDetectActive=this[t(416)][t(493)]&&this[t(416)].$container[t(555)](".jb-pro-occlusion-active")),this[t(335)].$occlusionDetectActive}get $contextmenus(){const t=ky;return!this[t(335)].$contextmenus&&(this[t(335)][t(322)]=this[t(416)].$container&&this[t(416)].$container.querySelector(t(482))),this[t(335)][t(322)]}get[ky(676)](){const t=ky;return!this.$domMap.$speedText&&(this[t(335)].$speedText=this.player[t(493)]&&this[t(416)][t(493)].querySelector(t(561))),this.$domMap[t(676)]}get[ky(379)](){const t=ky;return!this.$domMap[t(379)]&&(this[t(335)].$speedMenu=this.player[t(493)]&&this[t(416)][t(493)][t(555)](t(487))),this[t(335)][t(379)]}get[ky(578)](){const t=ky;return!this[t(335)].$speedMenuList&&(this[t(335)][t(578)]=this.player[t(493)]&&this.player[t(493)][t(555)](t(424))),this[t(335)][t(578)]}get[ky(505)](){const t=ky;return!this[t(335)][t(505)]&&(this[t(335)][t(505)]=this.player[t(493)]&&this[t(416)][t(493)][t(555)](t(456))),this[t(335)][t(505)]}get[ky(503)](){const t=ky;return!this[t(335)].$playbackProgress&&(this[t(335)][t(503)]=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](".jb-pro-control-progress-simple")),this.$domMap.$playbackProgress}get[ky(435)](){const t=ky;return!this[t(335)][t(435)]&&(this[t(335)][t(435)]=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](".jb-pro-progress-tip")),this[t(335)][t(435)]}get[ky(524)](){const t=ky;return!this.$domMap[t(524)]&&(this[t(335)].$playbackProgressHover=this.player.$container&&this.player.$container[t(555)](t(556))),this[t(335)].$playbackProgressHover}get[ky(430)](){const t=ky;return!this.$domMap[t(430)]&&(this.$domMap[t(430)]=this[t(416)][t(493)]&&this[t(416)].$container[t(555)](t(485))),this[t(335)][t(430)]}get[ky(437)](){const t=ky;return!this[t(335)][t(437)]&&(this[t(335)][t(437)]=this[t(416)][t(493)]&&this.player[t(493)][t(555)](t(510))),this[t(335)][t(437)]}get[ky(507)](){const t=ky;return!this[t(335)][t(507)]&&(this[t(335)][t(507)]=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](t(463))),this.$domMap[t(507)]}get[ky(565)](){const t=ky;return!this[t(335)][t(565)]&&(this[t(335)][t(565)]=this.player[t(493)]&&this[t(416)][t(493)][t(555)](t(436))),this[t(335)].$playbackProgressTime}get[ky(618)](){const t=ky;return!this[t(335)][t(618)]&&(this[t(335)][t(618)]=this[t(416)][t(493)]&&this[t(416)][t(493)].querySelector(t(490))),this.$domMap[t(618)]}get[ky(622)](){const t=ky;return!this[t(335)][t(622)]&&(this.$domMap[t(622)]=this.player[t(493)]&&this[t(416)][t(493)][t(555)](".jb-pro-tips-message-close")),this[t(335)][t(622)]}get[ky(497)](){const t=ky;return!this[t(335)][t(497)]&&(this[t(335)].$tipsMessageContent=this.player[t(493)]&&this[t(416)][t(493)][t(555)](t(434))),this[t(335)][t(497)]}get[ky(363)](){const t=ky;return!this.$domMap[t(363)]&&(this[t(335)][t(363)]=this[t(416)][t(493)]&&this[t(416)][t(493)][t(555)](t(346))),this[t(335)].$extendDom}get $qualityMenuItems(){const t=ky;return!this[t(335)].$qualityMenuItems&&(this[t(335)][t(377)]=this[t(416)][t(493)]&&this[t(416)][t(493)][t(419)](t(581))),this.$domMap[t(377)]}get $scaleMenuItems(){const t=ky;return!this[t(335)][t(666)]&&(this[t(335)].$scaleMenuItems=this[t(416)].$container&&this[t(416)].$container[t(419)](t(663))),this[t(335)][t(666)]}get $speedMenuItems(){const t=ky;return!this[t(335)][t(515)]&&(this[t(335)][t(515)]=this[t(416)].$container&&this[t(416)].$container[t(419)](t(491))),this[t(335)][t(515)]}get[ky(626)](){const t=ky;return this.$controls&&this[t(670)][t(689)]()||{width:0,height:0}}get[ky(591)](){const t=ky;return this[t(545)]&&this[t(545)].getBoundingClientRect()||{width:0,height:0}}get[ky(495)](){const t=ky;return this[t(417)]&&this.$controlsLeft[t(689)]()||{width:0,height:0}}get controlsRightRect(){const t=ky;return this[t(597)]&&this[t(597)][t(689)]()||{width:0,height:0}}get controlsPlaybackTimeInner(){const t=ky;return this[t(682)]&&this[t(682)].getBoundingClientRect()||{width:0,height:0}}get controlsPlaybackBtnsRect(){const t=ky;return this[t(406)]&&this[t(406)][t(689)]()||{width:0,height:0}}[ky(359)](){return this[ky(486)]++}autoSize(){const t=ky,e=this.player;e[t(493)][t(648)][t(390)]="0 0";const s=e.width,i=e[t(546)],r=s/i,n=e[t(628)][t(508)][t(610)]/e[t(628)][t(508)].height;if(r>n){const r=(s-i*n)/2;e[t(493)][t(648)].padding="0 "+r+"px"}else{const r=(i-s/n)/2;e.$container[t(648)][t(390)]=r+t(412)}}initLoadingBackground(){const t=ky,e=this[t(416)];e[t(655)][t(383)]&&e[t(655)][t(621)]&&e._opt[t(492)]&&(e[t(339)](this[t(681)],t(442)),this.player[t(655)].aspectRatio===t(409)||ys()?e[t(364)]()===A[t(413)]?this[t(368)]():e[t(364)]()===A.video&&this._initLoadingBackgroundForVideo():this._initLoadingBackgroundForRatio(),yn(this.$loadingBg,"display","block"),e._opt[t(383)]="")}[ky(646)](){const t=ky,e=this[t(531)];e&&e[t(596)]&&e.width>0&&e.height>0&&ls(this.$loadingBg,t(550),!1)!==t(334)&&(this.player[t(339)](this[t(681)],"resizeLoadingBackground()"),this.player[t(655)][t(357)]===t(409)||ys()?this[t(416)][t(364)]()===A[t(413)]?this[t(368)]():this[t(416)][t(364)]()===A.video&&this[t(393)]():this[t(384)]())}[ky(401)](t){const e=ky,s=this[e(416)][e(493)][e(555)](e(461));s&&(t[e(610)]&&yn(s,e(610),t.width+"px"),t[e(546)]&&yn(s,"height",t[e(546)]+"px"),t[e(478)]&&yn(s,"backgroundImage",'url("'+t[e(478)]+'")'),!1===t[e(513)]&&(yn(s,e(500),e(334)),yn(s,e(627),0),yn(s,e(349),e(685)),yn(s,"animationIterationCount",1)))}[ky(384)](){const t=ky,e=this.player[t(655)][t(357)].split(":")[t(408)](Number),s=this[t(416)].getShowVideoRect(),i=this[t(416)][t(445)](),r=s[t(610)],n=s[t(546)],o=this[t(531)],a={width:this[t(416)]._opt[t(621)],height:this.player[t(655)][t(492)]},h=a[t(610)]/a[t(546)],l=e[0]/e[1];if(this.player[t(655)][t(383)]&&(o[t(596)]=this[t(416)][t(655)][t(383)]),h>l){const e=l*a[t(546)]/a[t(610)];o[t(648)].width=100*e+"%",o[t(648)][t(546)]=t(469)+i+t(667),o[t(648)][t(390)]="0 "+(r-r*e)/2+"px"}else{const e=a[t(610)]/l/a[t(546)];o[t(648)][t(610)]=t(534),o[t(648)].height=t(645)+100*e+t(606)+i+t(667),o[t(648)][t(390)]=(n-n*e)/2+t(412)}}[ky(368)](){const t=ky,e=this[t(416)],s=e[t(655)],i=e[t(548)](),r=i[t(546)],n=i.width,o=this[t(531)],a={width:this.player[t(655)][t(621)],height:this[t(416)]._opt[t(492)]};let h=a[t(610)],l=a[t(546)];const c=s[t(355)];let d=(n-h)/2,u=(r-l)/2;(270===c||90===c)&&(h=a[t(546)],l=a[t(610)]);const p=n/h,f=r/l;let m=p>f?f:p;xi(s[t(631)])&&p!==f&&(m=p+","+f),s.isFullResize&&(m=p>f?p:f);let g=t(373)+m+")";s.mirrorRotate===t(334)&&c&&(g+=t(522)+c+t(649)),"level"===s.mirrorRotate?g+=t(391):s[t(386)]===t(624)&&(g+=t(494)),o[t(610)]=a[t(610)],o[t(546)]=a[t(546)],e[t(655)][t(383)]&&(o[t(596)]=e[t(655)].loadingBackground),o.style[t(390)]="0",o[t(648)][t(399)]=g,o[t(648)][t(611)]=d+"px",o[t(648)][t(600)]=u+"px"}[ky(393)](){const t=ky,e=this.player,s=e[t(655)],i=e[t(548)](),r=i[t(610)],n=i[t(546)];let o=i[t(610)],a=i[t(546)];const h=s[t(355)],l=this[t(531)];(270===h||90===h)&&(o=n,a=r),l[t(610)]=o,l[t(546)]=a,e[t(655)][t(383)]&&(l.src=e[t(655)][t(383)]);let c=(r-o)/2,d=(n-a)/2,u="contain";!s[t(631)]&&(u="fill"),s[t(662)]&&(u=t(334));let p="";s[t(386)]===t(334)&&h&&(p+=t(522)+h+t(649)),s[t(386)]===t(633)?p+=" rotateY(180deg)":s[t(386)]===t(624)&&(p+=" rotateX(180deg)"),this[t(416)][t(655)][t(501)]&&(l[t(648)][t(317)]=u),l[t(648)][t(399)]=p,l[t(648)][t(390)]="0",l[t(648)].left=c+"px",l.style.top=d+"px"}_validateExtendBtn(t){const e=ky;let s=!0;if(!t[e(672)]&&(this[e(416)][e(639)](e(382),e(636)),s=!1),s){-1!==this[e(314)].findIndex(s=>s[e(672)]===t[e(672)])&&(this.player[e(639)](e(382),e(433)+t[e(672)]+e(450)),s=!1)}return s&&!t[e(571)]&&(this.player[e(639)]("Control",e(586)),s=!1),s}[ky(543)](t={}){const e=ky,s=Ci(Dt);if(t=Object[e(605)]({},s,t),!this[e(371)](t))return;const i=t.name||"",r=this.$controlsRight,n=t.createdMoment||ie[e(472)],o=t[e(423)]&&t[e(447)],a=e(361)+i+'">\n '+(t[e(571)]?'<div class="jb-pro-controls-item jb-pro-control-extend-'+i+e(634)+i+'"></i>\n '+(t[e(632)]?e(674)+t.iconTitle+"</span></span>\n ":"")+e(625):"")+"\n "+(t[e(423)]?e(643)+i+e(607)+i+e(315)+(t[e(575)]?e(674)+t.activeIconTitle+e(479):"")+"\n </div>":"")+"\n </div>\n ",h=Array[e(473)](r[e(608)])[t[e(504)]];h?h[e(358)](e(499),a):gn(r,a);const l=r[e(555)](".jb-pro-controls-item-wrap-"+i),c=t[e(571)]?r[e(555)](".jb-pro-icon-extend-"+i):null,d=t.icon?r[e(555)](".jb-pro-control-extend-"+i):null,u=t[e(423)]?r.querySelector(".jb-pro-icon-extend-"+i+"-active"):null,p=t[e(423)]?r.querySelector(".jb-pro-control-extend-"+i+e(542)):null,{events:{proxy:f}}=this.player;t[e(571)]&&(yn(c,e(478),e(311)+t[e(571)]+") no-repeat center"),yn(c,e(549),e(525)),n===ie.created?yn(d,e(550),e(336)):yn(d,"display",e(334)),t.iconHover&&(f(c,e(560),()=>{const s=e;yn(c,s(478),s(311)+t[s(360)]+s(629)),yn(c,s(549),s(525))}),f(c,e(403),()=>{const s=e;yn(c,s(478),s(311)+t[s(571)]+s(629)),yn(c,"background-size",s(525))}))),t[e(423)]&&(yn(u,e(478),"url("+t[e(423)]+") no-repeat center"),yn(u,"background-size",e(525)),yn(p,e(550),"none"),t[e(652)]&&(f(u,"mouseover",()=>{const s=e;yn(u,s(478),s(311)+t[s(652)]+s(629)),yn(u,s(549),s(525))}),f(u,e(403),()=>{const s=e;yn(u,s(478),"url("+t[s(423)]+s(629)),yn(u,"background-size",s(525))}))),t[e(687)]&&c&&f(c,"click",s=>{const i=e;s[i(617)](),o&&(yn(d,i(550),i(334)),yn(p,"display",i(336))),this[i(416)].isInMulti()?t[i(687)].call(this[i(416)],s,this[i(416)][i(655)].multiIndex):t.click[i(615)](this[i(416)],s)}),t[e(447)]&&u&&f(u,"click",s=>{const i=e;s[i(617)](),yn(d,i(550),i(336)),yn(p,i(550),"none"),this[i(416)][i(574)]()?t[i(447)].call(this[i(416)],s,this[i(416)][i(655)][i(619)]):t.activeClick[i(615)](this[i(416)],s)}),this[e(314)].push({name:i,createdMoment:n,$iconContainer:l,$iconWrap:d,$activeIconWrap:p})}[ky(398)](t,e){const s=ky,i=this.extendBtnList[s(333)](e=>e.name===t);i&&i.$activeIconWrap&&i.$iconWrap&&(!js(e)&&(e=ls(i[s(451)],s(550),!1)===s(334)),e?(yn(i[s(318)],s(550),s(334)),yn(i[s(451)],s(550),s(336))):(yn(i[s(318)],s(550),s(336)),yn(i[s(451)],"display","none")))}getExtendBtnActive(t){const e=ky,s=this[e(314)][e(333)](s=>s[e(672)]===t);let i=!1;return s&&s[e(451)]&&(i=ls(s[e(451)],e(550),!1)!==e(334)),i}[ky(321)](t){const e=ky;if(t[e(616)]){const s=e(316)+t[e(616)]+e(381);this.player.$container[e(358)](e(570),s),t.showBeforePlay&&yn(this[e(363)],e(550),e(511))}}[ky(517)](t){const e=ky;this[e(363)]&&(!js(t)&&(t=ls(this[e(363)],e(550),!1)===e(334)),yn(this[e(363)],e(550),t?"block":e(334)))}[ky(684)](t){this[ky(363)]&&(this.$extendDom.innerHTML=t)}removeExtendDom(){const t=ky;this.$extendDom&&(this[t(363)][t(426)]="")}[ky(444)](t){const e=ky;this[e(564)]&&(this.$loadingText[e(679)]=t)}[ky(367)](){return this.extendBtnList}[ky(665)](t,e){const s=ky,i=this.$tipsMessage,r=this[s(497)];if(!t&&(t=this.player[s(655)].showMessageConfig[e]||""),i){const n=s(509)+t+s(356)+(e?'<div class="jb-pro-tips-message-content-item">Error Type:'+e+s(601):"")+s(551);r[s(426)]=n,yn(i,"display",s(511))}}[ky(677)](){const t=ky,e=this[t(618)],s=this[t(497)];e&&(s.innerHTML="",yn(e,t(550),"none"))}[ky(595)](t){const e=ky,s=this.$ptzControl;if(ii(t)&&s){let i=e(392);t[e(611)]&&(i=Number(t[e(611)])===t[e(611)]?t[e(611)]+"px":t[e(611)]),yn(s,e(611),i);let r="auto";t[e(600)]&&(r=Number(t[e(600)])===t.top?t[e(600)]+"px":t[e(600)]),yn(s,e(600),r);let n=e(392);t[e(338)]&&(n=Number(t[e(338)])===t[e(338)]?t[e(338)]+"px":t[e(338)]),yn(s,e(338),n);let o=e(392);t[e(539)]&&(o=Number(t.right)===t[e(539)]?t[e(539)]+"px":t[e(539)]),yn(s,e(539),o)}}showPlayBtn(){const t=ky;yn(this.$playBig,"display",t(511))}showLoadingIcon(){const t=ky;yn(this[t(326)],t(550),t(336))}toggleBar(t){const e=ky;this.$controls&&(!js(t)&&(t=ls(this[e(670)],"display",!1)===e(334)),yn(this.$controls,e(550),e(t?336:334)))}getBarIsShow(){const t=ky;let e=!1;return this.$controls&&(e=ls(this[t(670)],t(550),!1)!==t(334)),e}toggleControlHtml(t){const e=ky;this[e(459)]&&(!js(t)&&(t=ls(this.$controlHtml,e(550),!1)===e(334)),t?yn(this.$controlHtml,"display",e(511)):yn(this[e(459)],"display","none"))}getControlHtmlIsShow(){const t=ky;let e=!1;return this[t(459)]&&(e=ls(this.$controlHtml,t(550),!1)!==t(334)),e}getExtendDomIsShow(){const t=ky;let e=!1;return this.$extendDom&&(e="none"!==ls(this.$extendDom,t(550),!1)),e}[ky(638)](){const t=ky;return this.$extendDom?this[t(363)]:null}[ky(594)](){const t=ky;return this[t(459)]?this[t(459)]:null}[ky(418)](){const t=ky;if(this.$controls){const e=this[t(416)][t(655)].controlSize,s=t(454);e===E[t(557)]?xi(mn(this[t(670)],s))&&pn(this[t(670)],s):e===E[t(331)]&&mn(this[t(670)],s)&&fn(this[t(670)],s)}}}function Dy(){const t=["type","hiddenAutoPause is true ","video","6462jyphgS","click","onchange","contextmenu","INPUT","nodeName","965dVKuaq","isInView","orientation","172636qiJtmO","inView","tagName","pause","visible","isInput","visibilityState","fullscreen","scroll","change","orientationChangeResize","disableContextmenu","_isPlayingBeforePageHidden","14052Ezjmhl","debugLog","resize","target","4041569YPcfJv","orientationchange","isFocus","1185378tOwEaB","playing","_opt","play","hiddenAutoPause","dblclick","$container","emit","1816tHbCVG","blur","4959656fPYBUf","supportDblclickFullscreen","toLowerCase","visibilitychange","isCheckInView","11620bqWgSp","9WaUQzH"];return(Dy=function(){return t})()}function Ly(t,e){const s=Dy();return(Ly=function(t,e){return s[t-=346]})(t,e)}Sy(".jb-pro-container{position:relative;width:100%;height:100%;overflow:hidden}.jb-pro-container.jb-pro-fullscreen-web{position:fixed;z-index:9999;left:0;top:0;right:0;bottom:0;width:100vw!important;height:100vh!important;background:#000}.jb-pro-container .jb-pro-loading-bg-for-ios{position:absolute;z-index:100;left:0;top:0;right:0;bottom:0;height:100%;width:100%;opacity:0;visibility:hidden;background-position:50%;background-repeat:no-repeat;background-size:contain;pointer-events:none}.jb-pro-container .jb-pro-loading-bg-for-ios.show{opacity:1;visibility:visible}"),function(t){const e=Ly,s=t();for(;;)try{if(349986===-parseInt(e(354))/1+-parseInt(e(346))/2+parseInt(e(362))/3*(parseInt(e(375))/4)+parseInt(e(372))/5*(parseInt(e(388))/6)+parseInt(e(392))/7+parseInt(e(356))/8+parseInt(e(366))/9*(-parseInt(e(361))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Dy);function Ry(t,e){const s=Py();return(Ry=function(t,e){return s[t-=113]})(t,e)}function Py(){const t=["452815pGvGCA","8624862zWOjfL","generateInitSegment","210387YcbXwT","mp3","dec3","moov","dOps","dac3",".mp3","prototype","stbl","HDLR_VIDEO","trak","call","audio","codecHeight","channelConfigCode","isNonSync","STSC","vmhd","2ZJSwnS","ac-3","type","SMHD","timescale","tfhd","codecWidth","DREF","constants","duration","STSD_PREFIX","avc1","videoType","hasOwnProperty","audioSampleRate","av1C","227592ReRoNd","presentWidth","mdat","stsc","flags","Opus","mdia","stsd","FTYP","tkhd","isDependedOn","sequenceNumber","HDLR_AUDIO","STSZ","STCO","mfhd","tfdt","traf","dref","presentHeight","stco","6090zIOutw","isLeading","size","set","hvcC","config","charCodeAt","VMHD","mdhd","dinf","trun","dependsOn","channelCount","hasRedundancy","byteLength","moof","concat","minf","2238yuDRzv","hvc1","avcc","sdtp","av1","mp4a","types","mvex","avcC","smhd","av01","hdlr","cts","esds","length","349437clZXWM","slice","trex","118760Xcnhhe","avc","STTS","box","stts","ec-3"];return(Py=function(){return t})()}const xy=Ry;!function(t){const e=Ry,s=t();for(;;)try{if(217620===-parseInt(e(134))/1+parseInt(e(152))/2*(-parseInt(e(122))/3)+parseInt(e(125))/4+-parseInt(e(131))/5+-parseInt(e(207))/6*(parseInt(e(189))/7)+-parseInt(e(168))/8+parseInt(e(132))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Py);class My{static init(){const t=Ry;My[t(113)]={avc1:[],avcC:[],hvc1:[],hvcC:[],av01:[],av1C:[],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":[],Opus:[],dOps:[],"ac-3":[],dac3:[],"ec-3":[],dec3:[]};for(let e in My[t(113)])My[t(113)][t(165)](e)&&(My.types[e]=[e[t(195)](0),e[t(195)](1),e[t(195)](2),e.charCodeAt(3)]);let e=My.constants={};e.FTYP=new Uint8Array([105,115,111,109,0,0,0,1,105,115,111,109,97,118,99,49]),e[t(162)]=new Uint8Array([0,0,0,0,0,0,0,1]),e[t(127)]=new Uint8Array([0,0,0,0,0,0,0,0]),e[t(150)]=e[t(182)]=e[t(127)],e[t(181)]=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),e.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]),e.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]),e[t(159)]=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),e.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),e[t(196)]=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0])}static box(t){const e=Ry;let s=8,i=null,r=Array[e(141)][e(123)][e(145)](arguments,1),n=r[e(121)];for(let t=0;t<n;t++)s+=r[t][e(203)];i=new Uint8Array(s),i[0]=s>>>24&255,i[1]=s>>>16&255,i[2]=s>>>8&255,i[3]=255&s,i.set(t,4);let o=8;for(let t=0;t<n;t++)i[e(192)](r[t],o),o+=r[t].byteLength;return i}static[xy(133)](t){const e=xy;let s=My[e(128)](My[e(113)].ftyp,My.constants[e(176)]),i=My[e(137)](t),r=new Uint8Array(s[e(203)]+i.byteLength);return r.set(s,0),r[e(192)](i,s[e(203)]),r}static[xy(137)](t){const e=xy;let s=My.mvhd(t[e(156)],t[e(161)]),i=My.trak(t),r=My[e(114)](t);return My.box(My[e(113)].moov,s,i,r)}static mvhd(t,e){const s=xy;return My[s(128)](My[s(113)].mvhd,new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t,e>>>24&255,e>>>16&255,e>>>8&255,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]))}static[xy(144)](t){const e=xy;return My[e(128)](My[e(113)].trak,My[e(177)](t),My[e(174)](t))}static[xy(177)](t){const e=xy;let s=t.id,i=t[e(161)],r=t[e(169)],n=t[e(187)];return My[e(128)](My.types[e(177)],new Uint8Array([0,0,0,7,0,0,0,0,0,0,0,0,s>>>24&255,s>>>16&255,s>>>8&255,255&s,0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i,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,n>>>8&255,255&n,0,0]))}static[xy(174)](t){const e=xy;return My.box(My[e(113)][e(174)],My.mdhd(t),My[e(118)](t),My[e(206)](t))}static[xy(197)](t){const e=xy;let s=t[e(156)],i=t[e(161)];return My[e(128)](My[e(113)][e(197)],new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,s>>>24&255,s>>>16&255,s>>>8&255,255&s,i>>>24&255,i>>>16&255,i>>>8&255,255&i,85,196,0,0]))}static hdlr(t){const e=xy;let s=null;return s=t[e(154)]===e(146)?My[e(160)][e(180)]:My.constants[e(143)],My[e(128)](My[e(113)][e(118)],s)}static[xy(206)](t){const e=xy;let s=null;return s="audio"===t[e(154)]?My[e(128)](My[e(113)][e(116)],My[e(160)][e(155)]):My[e(128)](My[e(113)][e(151)],My[e(160)].VMHD),My[e(128)](My[e(113)][e(206)],s,My.dinf(),My.stbl(t))}static[xy(198)](){const t=xy;return My[t(128)](My[t(113)][t(198)],My[t(128)](My.types[t(186)],My[t(160)].DREF))}static[xy(142)](t){const e=xy;return My.box(My[e(113)][e(142)],My[e(175)](t),My[e(128)](My[e(113)][e(129)],My[e(160)][e(127)]),My[e(128)](My[e(113)][e(171)],My.constants.STSC),My[e(128)](My.types.stsz,My[e(160)].STSZ),My[e(128)](My.types[e(188)],My[e(160)][e(182)]))}static[xy(175)](t){const e=xy;return"audio"===t[e(154)]?t.audioType===e(135)?My.box(My[e(113)][e(175)],My[e(160)][e(162)],My.mp3(t)):My[e(128)](My[e(113)][e(175)],My[e(160)].STSD_PREFIX,My[e(212)](t)):t.videoType===e(126)?My[e(128)](My[e(113)][e(175)],My[e(160)][e(162)],My[e(163)](t)):t[e(164)]===e(211)?My.box(My.types[e(175)],My[e(160)][e(162)],My[e(117)](t)):My[e(128)](My[e(113)][e(175)],My[e(160)][e(162)],My.hvc1(t))}static[xy(135)](t){const e=xy;let s=t[e(201)],i=t[e(166)],r=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,s,0,16,0,0,0,0,i>>>8&255,255&i,0,0]);return My.box(My[e(113)][e(140)],r)}static[xy(212)](t){const e=xy;let s=t.channelCount,i=t[e(166)],r=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,s,0,16,0,0,0,0,i>>>8&255,255&i,0,0]);return My[e(128)](My[e(113)][e(212)],r,My[e(120)](t))}static ac3(t){const e=xy;let s=t.channelCount,i=t[e(166)],r=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,s,0,16,0,0,0,0,i>>>8&255,255&i,0,0]);return My[e(128)](My[e(113)][e(153)],r,My.box(My[e(113)][e(139)],new Uint8Array(t[e(194)])))}static ec3(t){const e=xy;let s=t[e(201)],i=t[e(166)],r=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,s,0,16,0,0,0,0,i>>>8&255,255&i,0,0]);return My[e(128)](My[e(113)][e(130)],r,My[e(128)](My[e(113)][e(136)],new Uint8Array(t[e(194)])))}static esds(t){const e=xy;let s=t[e(194)]||[],i=s.length,r=new Uint8Array([0,0,0,0,3,23+i,0,1,0,4,15+i,64,21,0,0,0,0,0,0,0,0,0,0,0,5][e(205)]([i])[e(205)](s)[e(205)]([6,1,2]));return My[e(128)](My[e(113)][e(120)],r)}static[xy(173)](t){const e=xy;let s=t[e(201)],i=t.audioSampleRate,r=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,s,0,16,0,0,0,0,i>>>8&255,255&i,0,0]);return My[e(128)](My[e(113)][e(173)],r,My.dOps(t))}static[xy(138)](t){const e=xy;let s=t[e(201)],i=t[e(148)],r=t.audioSampleRate;if(t[e(194)])return My.box(My.types[e(138)],o);let n=[];switch(i){case 1:case 2:n=[0];break;case 0:n=[255,1,1,0,1];break;case 128:n=[255,2,0,0,1];break;case 3:n=[1,2,1,0,2,1];break;case 4:n=[1,2,2,0,1,2,3];break;case 5:n=[1,3,2,0,4,1,2,3];break;case 6:n=[1,4,2,0,4,1,2,3,5];break;case 7:n=[1,4,2,0,4,1,2,3,5,6];break;case 8:n=[1,5,3,0,6,1,2,3,4,5,7];break;case 130:n=[1,1,2,0,1];break;case 131:n=[1,1,3,0,1,2];break;case 132:n=[1,1,4,0,1,2,3];break;case 133:n=[1,1,5,0,1,2,3,4];break;case 134:n=[1,1,6,0,1,2,3,4,5];break;case 135:n=[1,1,7,0,1,2,3,4,5,6];break;case 136:n=[1,1,8,0,1,2,3,4,5,6,7]}let o=new Uint8Array([0,s,0,0,r>>>24&255,r>>>17&255,r>>>8&255,r>>>0&255,0,0,...n]);return My[e(128)](My[e(113)][e(138)],o)}static[xy(163)](t){const e=xy;let s=t[e(209)];const i=t.codecWidth,r=t[e(147)];let n=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,i>>>8&255,255&i,r>>>8&255,255&r,0,72,0,0,0,72,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,255,255]);return My[e(128)](My[e(113)][e(163)],n,My.box(My[e(113)][e(115)],s))}static hvc1(t){const e=xy;let s=t[e(209)];const i=t[e(158)],r=t[e(147)];let n=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,i>>>8&255,255&i,r>>>8&255,255&r,0,72,0,0,0,72,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,255,255]);return My.box(My[e(113)][e(208)],n,My[e(128)](My[e(113)][e(193)],s))}static[xy(117)](t){const e=xy;let s=t[e(209)],i=t[e(158)]||192,r=t.codecHeight||108,n=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,i>>>8&255,255&i,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 My[e(128)](My[e(113)].av01,n,My[e(128)](My[e(113)][e(167)],s))}static[xy(114)](t){const e=xy;return My.box(My[e(113)][e(114)],My[e(124)](t))}static[xy(124)](t){const e=xy;let s=t.id,i=new Uint8Array([0,0,0,0,s>>>24&255,s>>>16&255,s>>>8&255,255&s,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]);return My.box(My[e(113)][e(124)],i)}static moof(t,e){const s=xy;return My[s(128)](My[s(113)][s(204)],My[s(183)](t[s(179)]),My[s(185)](t,e))}static mfhd(t){const e=xy;let s=new Uint8Array([0,0,0,0,t>>>24&255,t>>>16&255,t>>>8&255,255&t]);return My.box(My[e(113)][e(183)],s)}static[xy(185)](t,e){const s=xy;let i=t.id,r=My.box(My[s(113)][s(157)],new Uint8Array([0,0,0,0,i>>>24&255,i>>>16&255,i>>>8&255,255&i])),n=My[s(128)](My.types[s(184)],new Uint8Array([0,0,0,0,e>>>24&255,e>>>16&255,e>>>8&255,255&e])),o=My[s(210)](t),a=My[s(199)](t,o[s(203)]+16+16+8+16+8+8);return My[s(128)](My[s(113)][s(185)],r,n,a,o)}static[xy(210)](t){const e=xy;let s=new Uint8Array(5),i=t[e(172)];return s[4]=i.isLeading<<6|i[e(200)]<<4|i.isDependedOn<<2|i[e(202)],My[e(128)](My[e(113)].sdtp,s)}static[xy(199)](t,e){const s=xy;let i=new Uint8Array(28);e+=36,i[s(192)]([0,0,15,1,0,0,0,1,e>>>24&255,e>>>16&255,e>>>8&255,255&e],0);let r=t[s(161)],n=t[s(191)],o=t[s(172)],a=t[s(119)];return i[s(192)]([r>>>24&255,r>>>16&255,r>>>8&255,255&r,n>>>24&255,n>>>16&255,n>>>8&255,255&n,o[s(190)]<<2|o[s(200)],o[s(178)]<<6|o[s(202)]<<4|o[s(149)],0,0,a>>>24&255,a>>>16&255,a>>>8&255,255&a],12),My[s(128)](My.types.trun,i)}static[xy(170)](t){const e=xy;return My[e(128)](My[e(113)].mdat,t)}}My.init();const By=Fy;function Fy(t,e){const s=Uy();return(Fy=function(t,e){return s[t-=201]})(t,e)}function Uy(){const t=["removeSourceBuffer","video play"," is equal to prev payload size ","setLiveSeekableRange","getLastBufferDelayEndTime","mseAutoCleanupSourceBuffer","data","video waiting","init and using ManagedMediaSource",",\n and mseCorrectTimeDuration is ","slice","playVodPause","_useManagedMediaSource",";codecs=","generateInitSegment","ended","code","decodeAudio is max diff, prevTs is ","_doAppendSegments() mediaSource is closed or ended and return","src","cacheTrack","appendBuffer() and isStateClosed is true and isMediaSourceBeenOpened is false, wait media source open","_clearVisibilityChangeTimeout","then"," < 0, and buffered is ","video is paused and replay success","appendAudioBuffer","cacheAudioTrack = {} now dts is ","play","isPlayer","handlePlayToRenderTimes","_clearAudioNoDataCheckTimeout","audioSourceBufferCheckTimeout"," and set {}","moof"," and isIframe is ","_initAudioSourceBuffer() this.mediaSource.addSourceBuffer()","appendAudioBuffer() this.mediaSourceAppendBufferFull is true","handleUpdatePlaybackRate and buffered is ","_decodeConfigurationRecord","pendingSegments","clearSourceBuffer() start is "," ms, and cacheTrack dts is ","8662797VUhcwc","prevAudioTs","isAAC","decodeVideo","sourceClose"," = ","URL","decodeVideo: video width or height is changed, and return","mediaSourceTsIsMaxDiff","destroy"," and waiting for sourceBuffer","_decodeAudio","isCurrentTimeInBufferEnd is true and currentTime is "," set playbackRate is "," and _isMacOsFirefox is ","isVideoPlaying","9HqecqZ","codecWidth","message",", mediaError: ","cacheTrack = {} now dts is ","decodeLastDataForVod","AAC","mediaSourceUseCanvasRenderPlayFailed","decodeVideo is max diff, prevTs is ","_stopCanvasRender","stringify","_bindMediaSourceEvents","mseCorrectTimeDuration","mediaSource audio sourceBuffer error","bind","fps","video.buffered is empty","_hasPendingSegments","$videoElement","isPlaying","debug","h265","mseAddSourceBufferError","mseSourceOpen","removeBuffer() start is ",",\n firstAudioTime is ","mediaSourceBufferedIsZeroError","checkIsInRender","prevTs","getVideoBufferLastTime","_checkTsIsMaxDiff","muted"," and mseCorrectTimeDuration is ","mseAutoCleanupMinBackwardDuration",", so drop this frame","av1","type","video playback Rate change","_initAudioSourceBuffer","videoFrameCallback() player is destroyed","h264","visibilityChange is true and lastTime is ","decodeLastDataForVod and cacheTrack is "," and message is ","audioSourceBuffer updateend and hasPendingEos is true, next endOfStream()","videoSourceBuffer updateend and hasPendingEos is true, next endOfStream()","handleVisibilityChange","byteLength","mseDecodeAudio","audioSourceNoDataCheckTimeout","appendAudioBuffer() this.mediaSourceBufferError is true","shift","_resetInIt","disableRemotePlayback","removeBuffer"," ,currentTime is ","push","handlePlaybackPause","width","config"," and return",", and cacheAudioTrack dts is ","debugWarn","currentTime","mdat"," ms, dts is ","pendingAudioSegments","avc","_needCleanupSourceBuffer","buffered","mseUseCanvasRender is ","firstAudioTime","closed","_isDestroyed",",\n new width is ","video is paused and replay error "," and prev time is ","appendAudioBuffer() this.mediaSourceAppendBufferError is true","channelCount"," so set currentTime to ","isPlaybackPauseClearCache","visibilityChange","isStateEnded","sourceOpen","isCurrentTimeInBufferEnd","codec","_doRemoveRanges","mediaSourceAudioG711NotSupport","decodeVideo and is first iframe, so set isVideoInitedAndNotFirstVideoIFrame = false","checkFirstIFrame","getMimeType","videoMeta","isMSECurrentMoreThanBufferedPause","appendBuffer() this.mediaSource.addSourceBuffer()","isPlayStream","decodeVideo() player is destroyed","firstRenderTime","_initSourceBuffer"," ,\n and diff is ","pause","getMseBufferMaxDelayTime","isKeyframe","mediaSourceAppendBufferFull","_onMediaSourceSourceOpen"," and payload size is ","abort"," , payload is ","mediaSourceAudioInitTimeout","_opt","mpeg"," and isAvc is ","decodeAudio\n local dts is < 0 , ts is ","removeSourceBuffer() audioSourceBuffer error","mediaSourceError","getVideoBufferEndTime","_times"," and cacheAudioTrack is ","video canplay and use canvas render and fps is 25","_stats","mediaSourceAppendBufferError"," and isAV1 is ","mseUseCanvasRender","_clearAudioSourceBufferCheckTimeout","prevPayloadBufferSize","isPlaybackPauseNotClearCacheAndCacheBeforeDecode"," so drop this frame","_doAppendSegments() audioSourceBuffer is null and need init audio source buffer","sampleRate","off","abs","isHevc"," ms ,and cacheAudioTrack dts is ","checkVideoPlayCurrentTime","max","video canplay","handleRender","video is paused and next try to replay","getVideoBufferStartTime","decodeAudio and has already initialized and payload is aac codec packet so drop this frame","playback","visibilityChangeTimeout","sequenceNumber","decodeLastDataForVod cacheAudioTrack duration is ","hasAudioInit","119750jaSfES","playbackPause","decodeVideo has not init , isIframe is ","checkSourceBufferStore","(ts:","7295030lOEapJ","_doAppendSegments","mseCorrectAudioTimeDuration","debugLog","eventListenList","hasPendingEos","removeAttribute","decodeLastDataForVod cacheTrack duration is ","2810916tXerVv"," , delay buffer is more than ","set"," and codecHeight is ","removeSourceBuffer() sourceBuffer error",", but not in render and vbps is "," and prev dts is ","updateVideoCurrentTimeByBufferStart","getDecodePlaybackRate","ManagedMediaSource","decodeVideo and payload is too small , payload length is ","isAV1","_handleUpdatePlaybackRate","render","types","srcObject","abortSourceBuffer() abort audioSourceBuffer","mp4","waiting","revokeObjectURL","1986468wFHlvj","pendingAudioRemoveRanges","mediaSourceH265NotSupport","isPlaybackOnlyDecodeIFrame","prevAudioDts","SourceBuffer Error - updating: ","checkMSESourceBufferDelay ","mseSourceStartStreaming","isUseLocalCalculateTime",",\n and prevPayloadBufferSize is ","appendAudioBuffer() this.mediaSource.addSourceBuffer()","createElement"," and current is ",'video/mp4; codecs="',"decodeAudio","endstreaming","sourceended","needInitAudio","ManagedMediaSource startstreaming","player","videoMimeType","appendBuffer() this.mediaSourceAppendBufferError is true","mseWidthOrHeightChange","_handleUpdateBufferDelayTime",", and cacheTrack dts is ","getDecodeDiffTimes","removeSourceBuffer() sourceBuffer","videoBufferDelay","\n decodeAudio dts is less than(or equal) prev dts ,\n dts is ","end","removeBuffer() audioSourceBuffer error","appendBuffer() player is destroyed","isDecodeFirstIIframe"," to ","_initSourceBuffer() this.mediaSource.addSourceBuffer()","firstRenderTime is ","qualitychange",") and payload size "," and prevTs is ","_off","mseAutoCleanupMaxBackwardDuration","audioMimeType","video","getVideoBufferDelayTime","appendBuffer() this.mediaSourceAppendBufferFull is true","playbackRate"," , try to seek ","videoInfo","prevDuration","onMediaSourceSourceOpen() audioSourceBuffer is null and next init","_doRemoveRanges() sourceBuffer error","mseSourceBufferError","flags","decodeStart"," and\n $videoElement ts is ","addSourceBuffer","_doAppendSegments() sourceBuffer is null and wait init and return","pendingRemoveRanges","isDestroyedOrClosed","getAudioSourceBufferUpdating","recorder","videoFrameCallback","mediaSourceFull",") is equal to prev dts ","updateStats","8HpNtix","state","appendBuffer","createObjectURL","audio"," and ts is ","config is empty object"," and firstRenderTime is ","updateend","timeUpdate","isPlayVod","checkVideoPlayCurrentTime store is ","2VpbYKh","requestVideoFrameCallback","code is ","updating","videoStart","4VGEUnM","checkMSESourceBufferDelay and video is paused and sent isMSECurrentMoreThanBufferedPause true","videoType","291853BsjjnT","isAvc","getVideoCurrentTime","_decodeAudioConfigurationRecord audio codec is not support , codecId is ","codecHeight","cancelVideoFrameCallback"," and delay is ","audioSampleRate",", height "," and diff is ","mediaSource is not attached to video or mediaSource is closed","72oAhpUS"," and emit replay","_checkAudioTsIsMaxDiff","getSourceBufferUpdating"," ,\n and now ts is ","appendAudioBuffer() this.mediaSourceAddSourceBufferError is true","initVideoEvents","isSupportVideoFrameCallback","mseSourceBufferError this.sourceBuffer","decodeAudio() player is destroyed","emitError","vbps","decodeDiffTimestamp","mediaSourceObjectURL","mediaSourceAddSourceBufferError","TAG_NAME","isVideoInitedAndNotFirstVideoIFrame","height","endOfStream","endOfStream()","bound","isAudioInitInfo","hasInit","setLiveSeekableRange start is ","remove","_doCleanUpSourceBuffer","initCanvasViewSize","readyState"," and videoMimeType is "," and buffer end is ","decodeVideo is max diff , ts is "," and prev ts is ","MP3","decodeAudio first frame is not iFrame","updateVideoInfo: ","mediaSourceAudioNoDataTimeout","_getPlaybackRate","mseSourceBufferError this.audioSourceBuffer","width ","_hasPendingRemoveRanges","552391XAbJjn","mediaTime"," and this.audioMimeType is ","isUseHls265","canvasRenderInterval","getCorrectionConfiguration","emit"," ms ,and dts is "," is ","videoBuffer","playbackPause is false and _opt.checkFirstIFrame is true so set isDecodeFirstIIframe = false"," and end is ","cacheAudioTrack","increaseLocalTimestamp","isWidthOrHeightChanged","recordType","mediaSourceBufferError","decodeVideo and payload is video sequence header so drop this frame","stop","warn","ratechange and video is paused","dts",", old height is "," < 0 and set currentTime ","mseSourceended"," cacheTrack dts is ",", diff is ","MediaSource","isStateClosed",",\n and emit change event","onMediaSourceSourceOpen() sourceBuffer is null and next init","isPlayback","catch","audioSourceBuffer","this.sourceBuffer.appendBuffer()","start","sequenceHeader","prevTimestamp","checkSourceBufferDelay","getVideoBufferRangeList","mediaSource","updateMediaSourceDuration","_decodeVideo","handlePlayVodPause","video play error ","_off()","supportVideoFrameCallbackHandle","updateVideoCurrentTimeByBufferStart current time is ","sourceBuffer","paused","prevDts","updateAudioInfo","abortSourceBuffer",", new height is ","size","isMediaSourceBeenOpened","buffer","isInitInfo"," and new time is null and use last buffer start time","length","setAudioDisabled","debugError","error","duration","firstAudioTime is ","audioMeta","_checkVideoPlayCurrentTime","open","decodeVideo dts "," so set to ","_decodeAudioConfigurationRecord audio channel count is ","appendBuffer() this.mediaSourceBufferError is true","isStateOpen","decodeVideo first frame is not iFrame"];return(Uy=function(){return t})()}!function(t){const e=Fy,s=t();for(;;)try{if(453255===-parseInt(e(244))/1*(-parseInt(e(236))/2)+parseInt(e(605))/3*(parseInt(e(241))/4)+-parseInt(e(572))/5*(parseInt(e(255))/6)+parseInt(e(295))/7*(parseInt(e(224))/8)+parseInt(e(428))/9*(parseInt(e(577))/10)+-parseInt(e(412))/11+-parseInt(e(585))/12)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Uy);class Oy extends h{constructor(t){const e=Fy;super(),this.TAG_NAME=e(322),this.player=t,this._resetInIt(),this[e(568)]=null,this[e(381)]=e(594)in re&&!(e(322)in re),this[e(335)]=this[e(381)]?new(re[e(594)]):new(re[e(322)]),this.isDecodeFirstIIframe=!!xi(t._opt.checkFirstIFrame),this[e(268)]=null,!this[e(381)]&&(this.mediaSourceObjectURL=re[e(418)][e(227)](this[e(335)])),this[e(262)]=ji(),this[e(299)]=null,this[e(275)]={videoFrameCallback:this[e(220)].bind(this),handlePlaybackPause:this[e(485)].bind(this),handlePlayVodPause:this.handlePlayVodPause[e(442)](this),handleVisibilityChange:this[e(474)][e(442)](this)},t[e(536)].mseUseCanvasRender?(this[e(446)]=document[e(616)](e(201)),this[e(381)]?(this.$videoElement[e(481)]=!0,this[e(446)].srcObject=this.mediaSource):this[e(446)].src=this.mediaSourceObjectURL,this[e(261)]()):(this[e(381)]?(this.player[e(201)][e(446)][e(481)]=!0,this[e(624)][e(201)][e(446)][e(600)]=this[e(335)]):this.player[e(201)][e(446)].src=this[e(268)],this[e(446)]=this[e(624)][e(201)].$videoElement),this[e(439)](),this[e(401)]=null,this[e(477)]=null,this[e(582)]=!1,this[e(624)][e(326)]()?this[e(624)].on(q[e(573)],this[e(275)][e(485)]):this[e(624)][e(234)]()&&this[e(624)].on(q[e(380)],this.bound[e(338)]),this._isDestroyed=!1,this[e(381)]?this[e(624)][e(580)](this.TAG_NAME,e(377)):this.player.debugLog(this[e(270)],"init")}[By(421)](){const t=By;this[t(501)]=!0,this[t(644)](),this._clearVisibilityChangeTimeout(),this[t(313)](),this[t(550)](),this._clearAudioNoDataCheckTimeout(),this[t(437)](),this[t(581)].length&&(this[t(581)].forEach(t=>t()),this[t(581)]=[]),this[t(341)]&&this.$videoElement&&(this.$videoElement[t(249)](this.supportVideoFrameCallbackHandle),this.supportVideoFrameCallbackHandle=null),this.$videoElement&&(this[t(624)][t(536)][t(549)]&&(this[t(446)].pause&&(this.$videoElement[t(527)](),this[t(446)][t(459)]=!0),this[t(446)][t(491)]=0,this[t(446)][t(388)]&&(this.$videoElement[t(388)]="",this.$videoElement[t(583)]("src"))),this.$videoElement=null),this[t(268)]&&(window[t(418)][t(604)](this[t(268)]),this[t(268)]=null),this[t(480)](),this[t(335)]=null,this[t(275)]=null,this[t(556)](),this[t(624)][t(580)](this[t(270)],t(421))}[By(644)](){const t=By;this[t(624)][t(580)](this[t(270)],t(340)),this[t(624)].isPlayback()?this[t(624)][t(556)](q[t(573)],this.bound[t(485)]):this.player[t(234)]()&&this[t(624)][t(556)](q.playVodPause,this[t(275)][t(338)]),this.player[t(536)][t(549)]&&this[t(624)][t(556)](q[t(509)],this[t(275)].handleVisibilityChange)}[By(622)](){const t=By;return this[t(624)]._opt.hasAudio&&this.player[t(536)][t(476)]}_resetInIt(){const t=By;this.isAvc=null,this[t(414)]=null,this.isOpus=null,this[t(596)]=null,this[t(558)]=null,this[t(519)]={},this[t(360)]={},this[t(343)]=null,this[t(328)]=null,this[t(277)]=!1,this[t(571)]=!1,this.isInitInfo=!1,this[t(276)]=!1,this[t(646)]="",this[t(625)]="",this.cacheTrack={},this[t(307)]={},this.sequenceNumber=0,this.audioSequenceNumber=0,this[t(524)]=null,this[t(499)]=null,this[t(446)]=null,this[t(530)]=!1,this.mediaSourceAppendBufferError=!1,this[t(269)]=!1,this[t(311)]=!1,this[t(541)]=!1,this[t(332)]=null,this.decodeDiffTimestamp=null,this[t(345)]=null,this.prevAudioDts=null,this.prevPayloadBufferSize=0,this[t(309)]=!1,this[t(456)]=null,this[t(413)]=null,this[t(581)]=[],this.pendingRemoveRanges=[],this[t(409)]=[],this[t(606)]=[],this.pendingAudioSegments=[],this[t(341)]=null,this[t(350)]=!1}get[By(225)](){const t=By;return this.mediaSource&&this[t(335)].readyState}get[By(367)](){const t=By;return this[t(225)]===ut[t(362)]}get[By(323)](){const t=By;return this[t(225)]===ut[t(500)]}get[By(510)](){const t=By;return this[t(225)]===ut[t(384)]}get[By(358)](){const t=By;return this[t(335)]&&this[t(335)][t(358)]||-1}set duration(t){this[By(335)].duration=t}_bindMediaSourceEvents(){const t=By,{events:{proxy:e}}=this[t(624)],s=e(this[t(335)],vt[t(511)],()=>{const e=t;this[e(624)].debugLog(this.TAG_NAME,"sourceOpen"),this[e(350)]=!0,this._onMediaSourceSourceOpen(),this.player[e(301)](q[e(451)])}),i=e(this.mediaSource,vt[t(416)],()=>{const e=t;this[e(624)][e(580)](this[e(270)],e(416)),this.player.emit(q.mseSourceClose)}),r=e(this.mediaSource,vt[t(621)],()=>{const e=t;this[e(624)].debugLog(this[e(270)],e(621)),this[e(624)][e(301)](q[e(319)])});this[t(581)][t(484)](s,i,r);const n=e(this[t(446)],St.timeUpdate,e=>{const s=t;if(xi(this.isSupportVideoFrameCallback))if(this.player[s(455)]())this.player[s(563)]();else{const t=parseInt(e.timeStamp,10);this.player.debugLog(this[s(270)],s(498)+this[s(624)]._opt[s(549)]+s(213)+t+s(590)+this[s(624)][s(546)][s(266)]+" and fps is "+this[s(624)]._stats[s(443)])}});if(this.eventListenList[t(484)](n),this[t(381)]){const s=e(this[t(335)],vt.startstreaming,()=>{const e=t;this.player[e(580)](this[e(270)],e(623)),this[e(624)][e(301)](q[e(612)])}),i=e(this.mediaSource,vt[t(620)],()=>{const e=t;this[e(624)].debugLog(this[e(270)],"ManagedMediaSource endstreaming"),this[e(624)].emit(q.mseSourceEndStreaming)}),r=e(this.mediaSource,vt[t(641)],()=>{const e=t;this.player[e(580)](this[e(270)],"ManagedMediaSource qualitychange")});this.eventListenList[t(484)](s,i,r)}}[By(531)](){const t=By;!this[t(343)]&&(this[t(624)][t(580)](t(322),t(325)),this[t(525)]()),!this.audioSourceBuffer&&(this.player[t(580)]("MediaSource",t(208)),this[t(466)]()),this[t(445)]()&&this[t(578)]()}[By(261)](){const t=By,{proxy:e}=this.player.events;this.player.on(q[t(509)],this[t(275)].handleVisibilityChange);const s=e(this.$videoElement,St.canplay,()=>{const e=t;this[e(624)][e(580)](this[e(270)],e(562)),this[e(446)].play()[e(392)](()=>{const t=e;this[t(624)][t(301)](q.removeLoadingBgImage),ji()?!this[t(341)]&&(this[t(624)][t(580)](this.TAG_NAME,"video canplay and requestVideoFrameCallback and use videoFrameCallback"),this[t(341)]=this[t(446)][t(237)](this[t(275)].videoFrameCallback)):this[t(624)][t(298)]()&&(this[t(624)].debugLog(this.TAG_NAME,t(545)),this._stopCanvasRender(),this[t(299)]=setInterval(()=>{const e=t;this.player[e(201)][e(598)]({$video:this.$videoElement,ts:parseInt(1e3*this[e(446)].currentTime,10)||0})},40)),this.player.debugLog(this[t(270)],t(370))})[e(327)](t=>{const s=e;this.player[s(356)](this[s(270)],s(339),t),this.player[s(265)](J[s(435)],s(238)+t[s(385)]+s(471)+t[s(430)])})}),i=e(this[t(446)],St[t(603)],()=>{const e=t;this[e(624)].debugLog(this[e(270)],e(376))}),r=e(this[t(446)],St.loadedmetadata,()=>{const e=t;this[e(624)][e(580)](this[e(270)],"video loadedmetadata")}),n=e(this[t(446)],St[t(233)],e=>{const s=t;this[s(446)][s(344)]&&(this[s(624)].debugWarn(this.TAG_NAME,s(564)),this.$videoElement[s(397)]()[s(392)](()=>{const t=s;this[t(624)][t(580)](this.TAG_NAME,t(394))})[s(327)](t=>{const e=s;this[e(624)][e(490)](this[e(270)],e(503),t)}))}),o=e(this[t(446)],St.ratechange,()=>{const e=t;this[e(624)][e(580)](this.TAG_NAME,e(465),this[e(446)]&&this[e(446)][e(204)]),this[e(446)]&&this[e(446)].paused&&this[e(624)][e(490)](this[e(270)],e(315))});this[t(581)][t(484)](s,i,n,o,r)}_clearVisibilityChangeTimeout(){const t=By;this.visibilityChangeTimeout&&(clearTimeout(this[t(568)]),this.visibilityChangeTimeout=null)}[By(220)](t,e={}){const s=By;if(this._isDestroyed)return;if(this[s(624)][s(217)]())return void this[s(624)][s(580)](this.TAG_NAME,s(467));const i=parseInt(1e3*Math[s(561)](e[s(296)],this[s(446)][s(491)]),10)||0;this[s(624)].isUseHls265()&&this.player.updateStats({fps:!0,ts:i}),this[s(624)][s(201)].render({$video:this[s(446)],ts:i}),this[s(624)][s(563)](),this[s(341)]=this.$videoElement[s(237)](this.bound.videoFrameCallback)}[By(485)](t){const e=By;xi(t)?(this.player[e(536)][e(508)]&&(Pi(this[e(624)][e(536)][e(517)])&&(this[e(624)][e(580)](this[e(270)],e(305)),this[e(637)]=!1),this.clearUpAllSourceBuffer()),this[e(446)][e(397)]()):(this[e(446)][e(527)](),this[e(389)]={})}[By(338)](t){const e=By;xi(t)?this.$videoElement[e(397)]():(this[e(446)].pause(),this[e(389)]={})}handleVisibilityChange(t){const e=By;t&&(this[e(391)](),this.visibilityChangeTimeout=setTimeout(()=>{const t=e;if(this[t(568)]=null,this[t(624)][t(447)]()&&this[t(446)]){const e=this[t(457)]();if(e-this[t(446)].currentTime>this[t(528)]()){const s=this[t(373)](1);this[t(624)][t(580)](this[t(270)],t(469)+e+" and currentTime is "+this[t(446)].currentTime+t(507)+s),this.$videoElement[t(491)]=s}}},300))}[By(415)](t,e,s,i){const r=By;if(!this._isDestroyed)if(this[r(624)],this[r(624)][r(217)]())this[r(624)][r(490)](this.TAG_NAME,r(523));else if(this[r(277)])if(null===this.player[r(271)]&&(this[r(624)].debugLog(this[r(270)],"decodeVideo has init, and init isVideoInitedAndNotFirstVideoIFrame = true"),this[r(624)][r(271)]=!0),!this[r(637)]&&s&&(this[r(637)]=!0,this[r(624)][r(580)](this[r(270)],r(516)),this[r(624)][r(271)]=!1),this.isDecodeFirstIIframe){if(s&&0===t[1]){const e=15&t[0];let s={};const i=this.player[r(300)]();let n=t[r(379)](5);e===et[r(468)]?s=Gh(n,i):e===et.h265&&(s=gl(n,i));const o=this[r(624)][r(201)][r(206)];o&&o[r(486)]&&o.height&&s&&s[r(429)]&&s.codecHeight&&(s[r(429)]!==o[r(486)]||s[r(248)]!==o[r(272)])&&(this[r(624)][r(490)](this[r(270)],"\n decodeVideo: video width or height is changed,\n old width is "+o.width+r(317)+o[r(272)]+r(502)+s[r(429)]+r(348)+s[r(248)]+r(324)),this.isWidthOrHeightChanged=!0,this[r(624)].emitError(J[r(627)],r(293)+o[r(486)]+"->"+s[r(429)]+r(252)+o[r(272)]+"->"+s.codecHeight))}if(this[r(309)])return void this.player[r(490)](this[r(270)],r(419));if(Ri(t))return void this.player[r(580)](this[r(270)],r(312));if(t.byteLength<12)return void this[r(624)][r(490)](this[r(270)],r(595)+t.byteLength+r(488));let n=e;if(this[r(624)].isPlayer()){if(null===this.firstRenderTime&&(this[r(524)]=e,this[r(624)].debugLog(this[r(270)],r(640)+this[r(524)])),n=e-this[r(524)],n<0&&(this.player[r(490)](this[r(270)],"decodeVideo\n local dts is < 0 , ts is "+e+r(643)+this[r(456)]+",\n firstRenderTime is "+this[r(524)]+r(460)+this[r(624)]._opt.mseCorrectTimeDuration),n=null===this[r(345)]?0:this[r(345)]+this[r(624)][r(536)][r(440)],this._checkTsIsMaxDiff(e)))return this[r(624)][r(490)](this[r(270)],r(285)+e+r(643)+this[r(456)]+", diff is "+(this[r(456)]-e)+r(256)),void this[r(624)][r(265)](J[r(420)],r(436)+this.prevTs+r(229)+e);if(null!==this.prevDts&&n<=this[r(345)]){if(this[r(624)][r(490)](this[r(270)],"\n decodeVideo dts is less than(or equal) prev dts ,\n dts is "+n+" and prev dts is "+this[r(345)]+" ,\n and now ts is "+e+r(286)+this[r(456)]+r(526)+(e-this[r(456)])+r(231)+this[r(524)]+r(404)+s+r(378)+this[r(624)][r(536)][r(440)]+r(614)+this.prevPayloadBufferSize+r(532)+t[r(475)]),n===this[r(345)]&&this[r(551)]===t.byteLength)return void this[r(624)].debugWarn(this[r(270)],r(363)+n+"(ts:"+e+r(222)+this[r(345)]+r(576)+this[r(456)]+r(642)+t[r(475)]+r(371)+this[r(551)]+r(462));if(n=this.prevDts+this.player[r(536)][r(440)],this[r(458)](e))return this[r(624)].debugWarn(this[r(270)],r(285)+e+" and prevTs is "+this.prevTs+r(321)+(this[r(456)]-e)+" and emit replay"),void this.emit(J.mediaSourceTsIsMaxDiff,"decodeVideo is max diff, prevTs is "+this[r(456)]+r(229)+e)}}this[r(624)][r(398)]()?this[r(337)](t,n,s,i,e):this[r(624)][r(326)]()?xi(this.player[r(573)])?(this[r(624)].playback[r(613)]&&this.player[r(567)][r(308)](),this[r(337)](t,n,s,i,e)):this[r(624)].playback[r(552)]()&&this[r(337)](t,n,s,i,e):this[r(624)][r(234)]()&&this[r(337)](t,n,s,i,e),this.prevDts=n,this[r(551)]=t.byteLength,this[r(456)]=e}else this[r(624)].debugLog(this[r(270)],r(368));else if(s&&t[1]===kt[r(331)]){const i=15&t[0];if(this.player[r(201)].updateVideoInfo({encTypeCode:i}),i===et[r(449)]&&xi(Ms()))return void this[r(624)][r(265)](J[r(607)]);!this[r(624)][r(543)][r(212)]&&(this[r(624)][r(543)].decodeStart=os()),this[r(277)]=this[r(408)](t,e,s,i)}else this[r(624)].debugWarn(this.TAG_NAME,r(574)+s+r(534)+t[1]+r(553))}[By(619)](t,e){const s=By;if(!this._isDestroyed)if(this[s(624)],this[s(624)][s(217)]())this[s(624)][s(490)](this.TAG_NAME,s(264));else if(xi(this.hasAudioInit))this[s(571)]=this._decodeAudioConfigurationRecord(t,e);else{let i=e;if(Re(t))return void this.player[s(580)](this.TAG_NAME,s(566));if(this[s(400)](),this[s(637)]){if(this[s(624)][s(398)]()){if(null===this[s(499)]&&(this.firstAudioTime=e,this[s(624)][s(580)](this.TAG_NAME,s(359)+this[s(499)])),i=e-this[s(499)],i<0&&(this[s(624)][s(490)](this.TAG_NAME,s(539)+e+s(643)+this[s(413)]+s(453)+this.firstAudioTime),i=null===this[s(609)]?0:this.prevAudioDts+this.player[s(536)][s(579)],this[s(257)](e)))return this[s(624)].debugWarn(this[s(270)],"decodeAudio is max diff , ts is "+e+" and prevTs is "+this.prevAudioDts+s(321)+(this.prevAudioDts-e)+" and emit replay"),void this[s(624)].emitError(J.mediaSourceTsIsMaxDiff,s(386)+this[s(609)]+" and ts is "+e);null!==this[s(413)]&&i<=this.prevAudioDts&&(this[s(624)][s(490)](this[s(270)],s(633)+i+s(591)+this.prevAudioDts+s(259)+e+s(286)+this.prevAudioTs+s(526)+(e-this.prevAudioTs)),i=this[s(609)]+this[s(624)][s(536)][s(579)])}this[s(624)][s(398)]()?this[s(423)](t,i,e):this[s(624)][s(326)]()?xi(this[s(624)][s(573)])?this[s(423)](t,i,e):this[s(624)].playback.isPlaybackPauseNotClearCacheAndCacheBeforeDecode()&&this._decodeAudio(t,i,e):this[s(624)][s(234)]()&&this[s(423)](t,i,e),this[s(413)]=e,this[s(609)]=i}else this[s(624)].debugLog(this.TAG_NAME,s(288))}}[By(433)](){const t=By;if(this.player[t(580)](this.TAG_NAME,t(470)+!(!this.cacheTrack||!this[t(389)].prevDuration)+t(544)+!(!this.cacheAudioTrack||!this[t(307)].prevDuration)),this[t(389)]&&this[t(389)].prevDuration){const e=this.cacheTrack[t(316)];let s=8+this[t(389)][t(349)],i=new Uint8Array(s);i[0]=s>>>24&255,i[1]=s>>>16&255,i[2]=s>>>8&255,i[3]=255&s,i[t(587)](My[t(599)].mdat,4),i.set(this[t(389)][t(375)],8),this.cacheTrack[t(358)]=this[t(389)][t(207)],this[t(389)][t(358)]>1e3&&this[t(624)][t(490)](this[t(270)],t(584)+this.cacheTrack[t(358)]+t(411)+this.cacheTrack[t(316)]);let r=My[t(403)](this[t(389)],this.cacheTrack[t(316)]);this.cacheTrack={};let n=new Uint8Array(r[t(475)]+i[t(475)]);n.set(r,0),n[t(587)](i,r.byteLength),this[t(226)](n[t(351)]),this[t(624)].updateStats({dfps:!0,p2dfps:!0,mseTs:e})}if(this[t(307)]&&this[t(307)][t(207)]){let e=8+this[t(307)][t(349)],s=new Uint8Array(e);s[0]=e>>>24&255,s[1]=e>>>16&255,s[2]=e>>>8&255,s[3]=255&e,s[t(587)](My[t(599)][t(492)],4),s[t(587)](this[t(307)][t(375)],8),this[t(307)][t(358)]=this[t(307)].prevDuration,this[t(307)].duration>1e3&&this[t(624)][t(490)](this[t(270)],t(570)+this[t(307)].duration+t(559)+this[t(307)].dts);let i=My[t(403)](this[t(307)],this.cacheAudioTrack.dts);this.cacheAudioTrack={};let r=new Uint8Array(i[t(475)]+s.byteLength);r[t(587)](i,0),r[t(587)](s,i[t(475)]),this[t(395)](r[t(351)])}}[By(458)](t){const e=By;return this.prevTs>0&&t<this[e(456)]&&this[e(456)]-t>C}[By(257)](t){const e=By;return this.prevAudioTs>0&&t<this[e(413)]&&this[e(413)]-t>C}[By(408)](t,e,s,i){const r=By;let n=t[r(379)](5),o={};const a=this[r(624)].getCorrectionConfiguration();if(i===et.h264?o=Gh(n,a):i===et[r(449)]?o=gl(n,a):i===et[r(463)]&&(o=Fm(n,a)),si(o)||0===o[r(429)]&&0===o.codecHeight){this[r(624)][r(490)](this[r(270)],r(408),o);let t="";return t=si(o)?r(230):"config is not empty object and codecWidth is "+o[r(429)]+r(588)+o[r(248)],this[r(624)][r(265)](J.mediaSourceDecoderConfigurationError,t),!1}!this.isInitInfo&&(this.player[r(580)](this.TAG_NAME,r(289)+o[r(429)]+","+o[r(248)]),this[r(624)][r(201)].updateVideoInfo({width:o[r(429)],height:o.codecHeight}),this[r(624)].video[r(281)](),this[r(352)]=!0),this.player[r(219)]&&this[r(624)][r(536)][r(310)]===f.mp4&&this.player[r(219)].initMetaData(t,i);const h={id:Gt.video,type:r(201),timescale:1e3,duration:0,avcc:n,codecWidth:o[r(429)],codecHeight:o[r(248)],videoType:o[r(243)]},l=My.generateInitSegment(h);return this.isAvc=i===et.h264,this[r(596)]=i===et[r(463)],this[r(558)]=i===et[r(449)],o[r(513)]?this[r(625)]=r(618)+o[r(513)]+'"':this[r(245)]?this[r(625)]=dt[r(495)]:this[r(558)]?this.videoMimeType=dt.hev:this[r(596)]&&(this.videoMimeType=dt[r(463)]),this[r(525)](),this[r(226)](l[r(351)]),this[r(569)]=0,this.cacheTrack={},!0}_decodeAudioConfigurationRecord(t,e){const s=By,i=t[0]>>4&15,r=t[0]>>1&1,n=i===it[s(287)],o=i===it[s(434)],a=i===it.OPUS;let h="";if(h=o?r?16:8:0===r?8:16,xi(o||n))return this.player[s(490)](this.TAG_NAME,s(247)+i+" ant auto wasm decode"),this[s(624)].emit(J[s(515)]),!1;const l={id:Gt[s(228)],type:s(228),timescale:1e3};let c={};if(Re(t)){if(c=Ne(t.slice(2)),!c)return!1;if(l.audioSampleRate=c.sampleRate,l[s(506)]=c[s(506)],l.config=c[s(487)],l.refSampleDuration=1024/l[s(251)]*l.timescale,l[s(506)]>2)return this[s(624)][s(490)](this[s(270)],s(365)+l.channelCount+" ,but max support 2"+s(364)+2),this[s(624)][s(355)](),!1}else{if(!n)return!1;if(c=Cm(t.slice(1)),!c)return!1;l[s(251)]=c[s(555)],l[s(506)]=c[s(506)],l.refSampleDuration=1152/l[s(251)]*l.timescale}l[s(513)]=c[s(513)],l[s(358)]=0;let d=s(602),u=c.codec,p=null;n&&xi(vs())?(d=s(537),u="",p=new Uint8Array):p=My[s(383)](l);let f=l[s(464)]+"/"+d;return u&&u[s(354)]>0&&(f+=s(382)+u),xi(this[s(276)])&&(this[s(624)].audio[s(346)]({encTypeCode:i,channels:l[s(506)],sampleRate:l[s(251)],depth:h}),this[s(276)]=!0),this[s(646)]=f,this.isAAC=o,this.isOpus=a,this[s(466)](),this[s(395)](p[s(351)]),!0}[By(525)](){const t=By,{events:{proxy:e}}=this.player;if(null===this[t(343)]&&null!==this[t(335)]&&this[t(367)]&&this.videoMimeType){try{this[t(343)]=this.mediaSource[t(214)](this[t(625)]),this[t(624)].debugLog(this.TAG_NAME,t(639),this[t(625)])}catch(e){return this[t(624)].debugError(this[t(270)],t(521),e.code,e),this[t(624)][t(265)](J[t(450)],t(238)+e.code+t(471)+e[t(430)]),void(this.mediaSourceAddSourceBufferError=!0)}if(this[t(343)]){const s=e(this.sourceBuffer,t(357),e=>{const s=t;this[s(311)]=!0;const i=s(610)+this[s(343)].updating+", readyState: "+this[s(335)].readyState+s(431)+JSON[s(438)](this[s(446)][s(357)]||{});this[s(624)][s(356)](this.TAG_NAME,s(263),i,e),this.player[s(265)](J[s(210)],"mediaSource video sourceBuffer error")}),i=e(this[t(343)],"updateend",()=>{const e=t;this[e(294)]()?this[e(514)]():this[e(445)]()?this[e(578)]():this[e(582)]&&(this[e(624)][e(580)](this[e(270)],e(473)),this.endOfStream())});this[t(581)].push(s,i)}}else this[t(624)][t(580)](this[t(270)],"_initSourceBuffer and isStateOpen is "+this[t(367)]+t(283)+this.videoMimeType+t(538)+this[t(245)]+" and isHevc is "+this[t(558)]+t(548)+this[t(596)]+t(422))}[By(466)](){const t=By,{events:{proxy:e}}=this[t(624)];if(null===this[t(328)]&&null!==this[t(335)]&&this.isStateOpen&&this[t(646)]){try{this[t(328)]=this[t(335)].addSourceBuffer(this.audioMimeType),this[t(550)](),this[t(624)][t(580)](this[t(270)],t(405),this.audioMimeType)}catch(e){return this.player[t(356)](this[t(270)],t(615),e.code,e),this[t(624)][t(265)](J.mseAddSourceBufferError,t(238)+e[t(385)]+" and message is "+e[t(430)]),void(this[t(269)]=!0)}if(this[t(328)]){const s=e(this[t(328)],t(357),e=>{const s=t;this.mediaSourceBufferError=!0;const i=s(610)+this.audioSourceBuffer[s(239)]+", readyState: "+this[s(335)].readyState+", mediaError: "+JSON[s(438)](this[s(446)][s(357)]||{});this[s(624)][s(356)](this[s(270)],s(292),i,e),this.player[s(265)](J[s(210)],s(441))}),i=e(this[t(328)],t(232),()=>{const e=t;this[e(294)]()?this[e(514)]():this._hasPendingSegments()?this[e(578)]():this[e(582)]&&(this[e(624)][e(580)](this[e(270)],e(472)),this.endOfStream())});this[t(581)][t(484)](s,i),null===this.audioSourceNoDataCheckTimeout&&(this[t(477)]=setTimeout(()=>{const e=t;this[e(400)](),this[e(624)][e(301)](J[e(290)])},1e3))}}else this[t(624)][t(580)](this[t(270)],"_initAudioSourceBuffer and this.isStateOpen is "+this[t(367)]+t(297)+this[t(646)])}[By(337)](t,e,s,i,r){const n=By,o=this[n(624)];let a=t[n(379)](5),h=a[n(475)];if(0===h)return void o.debugWarn(this[n(270)],"_decodeVideo payload bytes is 0 and return");let l=os(),c=!1;!this[n(332)]&&(this[n(332)]=l,c=!0);const d=l-this[n(332)];this[n(267)]=d,d>1e3&&!c&&this[n(624)][n(398)]()&&o.debugLog(this[n(270)],"_decodeVideo now time is "+l+n(504)+this.prevTimestamp+", diff time is "+d+" ms");const u=this.$videoElement;let p=null;if(this[n(389)].id&&e>=this[n(389)][n(316)]){let t=8+this[n(389)][n(349)],s=new Uint8Array(t);s[0]=t>>>24&255,s[1]=t>>>16&255,s[2]=t>>>8&255,s[3]=255&t,s[n(587)](My[n(599)][n(492)],4),s[n(587)](this[n(389)][n(375)],8),this[n(389)][n(358)]=e-this[n(389)].dts,p=this[n(389)][n(358)],(this[n(624)][n(398)]()||this[n(624)][n(234)]())&&this[n(389)][n(358)]>1e3?this[n(624)][n(490)](this[n(270)],"cacheTrack duration is "+this.cacheTrack.duration+" ms, dts is "+e+n(629)+this.cacheTrack[n(316)]):this[n(624)][n(326)]()&&this[n(624)][n(608)]()&&this.cacheTrack[n(358)]>1e3&&this[n(624)][n(490)](this.TAG_NAME,"isPlayback and only decode iframe and cacheTrack duration is "+this[n(389)][n(358)]+n(493)+e+n(629)+this[n(389)][n(316)]);let i=My[n(403)](this[n(389)],this[n(389)][n(316)]);this[n(389)]={};let r=new Uint8Array(i[n(475)]+s[n(475)]);r.set(i,0),r[n(587)](s,i[n(475)]),this.appendBuffer(r[n(351)]),o.updateStats({dfps:!0,p2dfps:!0,mseTs:e}),!o[n(543)].videoStart&&(o._times[n(240)]=os(),o[n(399)]())}else o.debugLog(this[n(270)],n(432)+e+", and ts is "+r+n(320)+(this[n(389)]&&this[n(389)][n(316)])+n(402)),this.cacheTrack={};!this.cacheTrack&&(this[n(389)]={}),this.cacheTrack.id=Gt[n(201)],this.cacheTrack[n(569)]=++this.sequenceNumber,this[n(389)][n(349)]=h,this.cacheTrack.dts=e,this[n(389)].cts=i,this[n(389)][n(529)]=s,this[n(389)][n(375)]=a,this[n(389)][n(211)]={isLeading:0,dependsOn:s?2:1,isDependedOn:s?1:0,hasRedundancy:0,isNonSync:s?0:1},null!==p&&(this.cacheTrack[n(207)]=p),o[n(536)][n(549)]&&xi(this[n(262)])&&xi(o.isUseHls265())&&o[n(201)][n(598)]({$video:u,ts:e}),this[n(332)]=os()}[By(437)](){const t=By;this.canvasRenderInterval&&(clearInterval(this[t(299)]),this[t(299)]=null)}[By(423)](t,e,s){const i=By,r=this[i(624)];let n=this[i(414)]?t[i(379)](2):t[i(379)](1),o=n[i(475)],a=null;if(this.cacheAudioTrack.id&&e>=this.cacheAudioTrack.dts){let t=8+this.cacheAudioTrack[i(349)],s=new Uint8Array(t);s[0]=t>>>24&255,s[1]=t>>>16&255,s[2]=t>>>8&255,s[3]=255&t,s[i(587)](My[i(599)][i(492)],4),s.set(this.cacheAudioTrack[i(375)],8),this[i(307)].duration=e-this.cacheAudioTrack[i(316)],a=this[i(307)][i(358)],this[i(307)][i(358)]>1e3&&this[i(624)].debugWarn(this.TAG_NAME,"cacheAudioTrack duration is "+this[i(307)].duration+i(302)+e+i(489)+this[i(307)].dts);let r=My.moof(this.cacheAudioTrack,this.cacheAudioTrack.dts);this.cacheAudioTrack={};let n=new Uint8Array(r[i(475)]+s[i(475)]);n.set(r,0),n[i(587)](s,r[i(475)]),this[i(395)](n[i(351)])}else r[i(580)](this[i(270)],i(396)+e+" cacheAudioTrack dts is "+(this[i(307)]&&this[i(307)][i(316)])),this[i(307)]={};!this.cacheAudioTrack&&(this[i(307)]={}),this[i(307)].id=Gt[i(228)],this.cacheAudioTrack[i(569)]=++this.audioSequenceNumber,this[i(307)][i(349)]=o,this[i(307)][i(316)]=e,this[i(307)].cts=0,this.cacheAudioTrack[i(375)]=n,this.cacheAudioTrack.flags={isLeading:0,dependsOn:1,isDependedOn:0,hasRedundancy:0},null!==a&&(this[i(307)][i(207)]=a)}[By(226)](t){const e=By;if(!this._isDestroyed)if(this[e(624)][e(217)]())this[e(624)][e(490)](this[e(270)],e(636));else if(this[e(624)],this.mediaSourceAddSourceBufferError)this[e(624)][e(490)](this[e(270)],"appendBuffer() this.mediaSourceAddSourceBufferError is true");else if(this[e(530)])this[e(624)][e(490)](this[e(270)],e(203));else if(this[e(547)])this[e(624)][e(490)](this[e(270)],e(626));else if(this[e(311)])this.player.debugWarn(this[e(270)],e(366));else{if(this[e(510)])return this[e(311)]=!0,void this[e(624)][e(265)](J[e(210)],"mediaSource is end");if(this[e(323)]){if(this.isMediaSourceBeenOpened)return this[e(311)]=!0,void this[e(624)][e(265)](J[e(210)],e(254));this[e(624)].debugLog(this[e(270)],e(390))}this.pendingSegments[e(484)](t),this.sourceBuffer&&(this[e(624)][e(398)]()&&this[e(597)](),this.player[e(326)]()&&(this[e(628)](),this[e(361)]()),this[e(624)][e(234)]()&&this[e(628)](),Pi(this.player[e(522)]())&&this.player[e(536)][e(374)]&&this._needCleanupSourceBuffer()&&this[e(280)](),xi(this.getSourceBufferUpdating())&&this[e(367)]&&xi(this[e(294)]())&&this._doAppendSegments())}}[By(395)](t){const e=By;if(!this[e(501)])if(this[e(624)][e(217)]())this[e(624)][e(490)](this.TAG_NAME,"appendAudioBuffer() player is destroyed");else if(this[e(624)],this.mediaSourceAddSourceBufferError)this[e(624)][e(490)](this.TAG_NAME,e(260));else if(this[e(530)])this[e(624)].debugWarn(this[e(270)],e(406));else if(this[e(547)])this[e(624)][e(490)](this.TAG_NAME,e(505));else if(this[e(311)])this[e(624)].debugWarn(this[e(270)],e(478));else{if(this[e(510)])return this[e(311)]=!0,void this[e(624)].emitError(J[e(210)],"mediaSource is end");if(this.isStateClosed){if(this.isMediaSourceBeenOpened)return this.mediaSourceBufferError=!0,void this.player[e(265)](J[e(210)],e(254));this.player.debugLog(this[e(270)],"appendBuffer() and isStateClosed is true and isMediaSourceBeenOpened is false, wait media source open")}this[e(494)].push(t),this[e(328)]&&(this[e(624)].isPlayer()&&this[e(597)](),this[e(624)][e(326)]()&&(this[e(628)](),this._checkVideoPlayCurrentTime()),this[e(624)][e(234)]()&&this._handleUpdateBufferDelayTime(),Pi(this[e(624)][e(522)]())&&this[e(624)]._opt.mseAutoCleanupSourceBuffer&&this[e(496)]()&&this[e(280)](),xi(this[e(218)]())&&this[e(367)]&&xi(this._hasPendingRemoveRanges())&&this[e(578)]())}}getSourceBufferUpdating(){const t=By;return this.sourceBuffer&&this.sourceBuffer[t(239)]}[By(218)](){const t=By;return this.audioSourceBuffer&&this[t(328)][t(239)]}[By(313)](){const t=By;this[t(347)](),this.removeSourceBuffer(),this[t(273)]()}[By(333)](){const t=By,e=this[t(446)];let s=0,i=0;return e.buffered[t(354)]>0&&(i=e.buffered[t(634)](e.buffered[t(354)]-1),s=i-e.currentTime),s<0&&(this[t(624)].debugWarn(this.TAG_NAME,t(611)+s+t(393)+i+t(483)+e[t(491)]+t(205)+e.currentTime+t(638)+i),e[t(491)]=i,e[t(344)]&&(this.player[t(490)](this[t(270)],t(242)),this[t(624)][t(520)]=!0),s=0),s}checkSourceBufferStore(){const t=By,e=this.$videoElement;let s=0;return e[t(497)][t(354)]>0&&(s=e[t(491)]-e[t(497)].start(0)),s}checkSourceBufferEndLessThanCurrentTime(){const t=By,e=this[t(446)];let s=0;return e.buffered[t(354)]>0&&(s=e[t(497)][t(634)](e[t(497)][t(354)]-1)-e[t(491)]),s}[By(630)](){return this[By(267)]}[By(482)](t,e){const s=By,i=ci();if(this[s(624)][s(580)](this[s(270)],s(452)+t+s(306)+e+s(426)+i),this[s(367)]&&xi(i)){if(xi(this.getSourceBufferUpdating()))try{this.sourceBuffer[s(279)](t,e)}catch(t){this[s(624)][s(490)](this[s(270)],"removeBuffer() sourceBuffer error",t)}if(xi(this[s(218)]()))try{this[s(328)][s(279)](t,e)}catch(t){this.player.debugWarn(this[s(270)],s(635),t)}}}clearSourceBuffer(t,e){const s=By;this.player.debugLog(this[s(270)],s(410)+t+s(306)+e),this[s(343)]&&this[s(216)][s(484)]({start:t,end:e}),this.audioSourceBuffer&&this[s(606)][s(484)]({start:t,end:e}),this._doRemoveRanges()}clearUpAllSourceBuffer(){const t=By;if(this[t(343)]){const e=this[t(343)].buffered;for(let s=0;s<e[t(354)];s++){let i=e[t(330)](s),r=e[t(634)](s);this[t(216)][t(484)]({start:i,end:r})}xi(this[t(258)]())&&this._doRemoveRanges()}if(this.audioSourceBuffer){const e=this[t(328)][t(497)];for(let s=0;s<e[t(354)];s++){let i=e[t(330)](s),r=e[t(634)](s);this[t(606)][t(484)]({start:i,end:r})}xi(this[t(218)]())&&this[t(514)]()}}[By(273)](){const t=By;if(this[t(367)]&&this.$videoElement&&this[t(446)].readyState>=1)if(this[t(258)]()||this[t(218)]())this[t(582)]=!0;else{this[t(582)]=!1;try{this[t(624)].debugLog(this[t(270)],t(274)),this[t(335)].endOfStream()}catch(e){this[t(624)][t(490)](this.TAG_NAME,"endOfStream() error",e)}}}[By(347)](){const t=By;if(this.isStateOpen){if(this[t(343)]){try{this[t(624)][t(580)](this[t(270)],"abortSourceBuffer() abort sourceBuffer"),this[t(343)][t(533)]()}catch(t){}xi(this[t(258)]())&&this[t(514)]()}if(this[t(328)]){try{this[t(624)][t(580)](this[t(270)],t(601)),this[t(328)][t(533)]()}catch(t){}xi(this[t(218)]())&&this[t(514)]()}}this.sourceBuffer=null,this.audioSourceBuffer=null}removeSourceBuffer(){const t=By;if(!this.isStateClosed&&this[t(335)]){if(this[t(343)])try{this[t(624)][t(580)](this[t(270)],t(631)),this[t(335)].removeSourceBuffer(this.sourceBuffer)}catch(e){this[t(624)].debugError(this[t(270)],t(589),e)}if(this.audioSourceBuffer)try{this[t(624)][t(580)](this[t(270)],"removeSourceBuffer() audioSourceBuffer"),this.mediaSource[t(369)](this.audioSourceBuffer)}catch(e){this[t(624)][t(356)](this[t(270)],t(540),e)}}}[By(445)](){const t=By;return this.pendingSegments[t(354)]>0||this[t(494)][t(354)]>0}getPendingSegmentsLength(){const t=By;return this[t(409)][t(354)]}[By(597)](){const t=By;if(!this[t(446)])return;const e=this[t(446)];this[t(624)][t(536)].videoBuffer,this.player._opt[t(632)];const s=e[t(497)];s[t(354)]&&s[t(330)](0);const i=s[t(354)]?s[t(634)](s.length-1):0;let r=e[t(491)];const n=i-r,o=this[t(528)]();if(this[t(624)][t(223)]({mseVideoBufferDelayTime:n}),0===this[t(446)].readyState)return;if(n>o){const s=this.getLastBufferDelayEndTime(1);this.player[t(580)](this.TAG_NAME,t(407)+i+t(617)+r+t(586)+o+t(303)+n+" and new time is "+s),e[t(491)]=s,r=e[t(491)]}else if(n<0&&0===i)return this.player[t(490)](this[t(270)],"handleUpdatePlaybackRate and delay buffer is "+i+" - current is "+r+t(417)+n+" < 0 and check video is paused : "+e[t(344)]+" "),void this[t(624)][t(301)](J[t(454)],t(444));const a=this[t(291)](i-r);e[t(204)]!==a&&(this[t(624)][t(580)](this[t(270)],t(407)+i+" and current time is "+r+t(250)+(i-r)+t(425)+a+" "),e.playbackRate=a)}_handleUpdateBufferDelayTime(){const t=By,e=this[t(202)]();this[t(624)][t(223)]({mseVideoBufferDelayTime:e})}_checkVideoPlayCurrentTime(){const t=By,e=this.checkSourceBufferStore();if(e<0){const s=this.getVideoBufferStartTime();this[t(624)][t(490)](this.TAG_NAME,t(235)+e+t(318)+this[t(446)][t(491)]+t(638)+s),this[t(446)][t(491)]=s}}[By(592)](){const t=By;if(!this[t(446)])return;const e=this.$videoElement[t(491)],s=this.getVideoBufferRangeList();if(0===s.length)return void this[t(624)][t(490)](this[t(270)],"updateVideoCurrentTimeByBufferStart bufferRangeList is empty and return");if(1===s[t(354)]){const i=s[0][t(634)],r=Math[t(557)](i-e);if(r<1)return void this[t(624)][t(580)](this[t(270)],t(342)+e+t(284)+i+t(253)+r+t(488))}let i=null;for(let r=0;r<s[t(354)];r++){const n=s[r];if(e<n[t(330)]){i=n[t(330)];break}}null===i&&(this[t(624)].debugWarn(this[t(270)],"updateVideoCurrentTimeByBufferStart current time is "+e+t(353)),i=s[s.length-1].start),this[t(624)].debugLog(this.TAG_NAME,"updateVideoCurrentTimeByBufferStart bufferRangeList is\n "+JSON[t(438)](s)+"\n and current time is "+e+" and new time is "+i),this[t(446)][t(491)]=i}[By(578)](){const t=By;if(this[t(323)]||this[t(510)])this[t(624)][t(580)](this.TAG_NAME,t(387));else if(null!==this[t(343)]){if(this.needInitAudio()&&null===this[t(328)])return this[t(624)].debugLog(this[t(270)],t(554)),void(null===this[t(401)]&&(this[t(401)]=setTimeout(()=>{const e=t;this[e(550)](),this.player.emit(J[e(535)])},1e3)));if(xi(this.getSourceBufferUpdating())&&this[t(343)]&&this[t(409)].length>0){const e=this[t(409)][t(479)]();try{this[t(343)][t(226)](e)}catch(e){this[t(624)].debugError(this[t(270)],t(329),e[t(385)],e),22===e.code?(this[t(313)](),this[t(530)]=!0,this[t(624)][t(265)](J[t(221)],t(238)+e[t(385)]+" and message is "+e[t(430)])):11===e[t(385)]?(this[t(313)](),this[t(547)]=!0,this[t(624)].emitError(J[t(547)],t(238)+e.code+t(471)+e[t(430)])):(this[t(313)](),this.mediaSourceBufferError=!0,this[t(624)].emitError(q.mseSourceBufferError,t(238)+e.code+t(471)+e[t(430)]))}}if(xi(this.getAudioSourceBufferUpdating())&&this[t(328)]&&this.pendingAudioSegments[t(354)]>0){const e=this[t(494)][t(479)]();try{this.audioSourceBuffer[t(226)](e)}catch(e){this[t(624)][t(356)](this[t(270)],"this.audioSourceBuffer.appendBuffer()",e[t(385)],e),22===e.code?(this[t(313)](),this[t(530)]=!0,this.player[t(265)](J.mediaSourceFull,t(238)+e[t(385)]+" and message is "+e[t(430)])):11===e.code?(this.stop(),this[t(547)]=!0,this.player[t(265)](J.mediaSourceAppendBufferError,t(238)+e[t(385)]+t(471)+e[t(430)])):(this.stop(),this[t(311)]=!0,this[t(624)][t(265)](q[t(210)],t(238)+e[t(385)]+" and message is "+e.message))}}}else this[t(624)].debugLog(this.TAG_NAME,t(215))}_doCleanUpSourceBuffer(){const t=By;if(!this.$videoElement)return;const e=this.$videoElement[t(491)];if(this[t(343)]){const s=this[t(343)][t(497)];let i=!1;for(let r=0;r<s.length;r++){let n=s[t(330)](r),o=s[t(634)](r);if(n<=e&&e<o+3){if(e-n>=this[t(624)][t(536)][t(645)]){i=!0;let s=e-this.player[t(536)][t(461)];this[t(216)][t(484)]({start:n,end:s})}}else o<e&&(i=!0,this[t(216)].push({start:n,end:o}))}i&&xi(this[t(258)]())&&this[t(514)]()}if(this.audioSourceBuffer){const s=this[t(328)][t(497)];let i=!1;for(let r=0;r<s.length;r++){let n=s[t(330)](r),o=s.end(r);if(n<=e&&e<o+3){if(e-n>=this[t(624)]._opt.mseAutoCleanupMaxBackwardDuration){i=!0;let s=e-this[t(624)][t(536)].mseAutoCleanupMinBackwardDuration;this.pendingAudioRemoveRanges.push({start:n,end:s})}}else o<e&&(i=!0,this[t(606)][t(484)]({start:n,end:o}))}i&&xi(this[t(218)]())&&this[t(514)]()}}[By(294)](){const t=By;return this.pendingRemoveRanges[t(354)]>0||this.pendingAudioRemoveRanges[t(354)]>0}[By(514)](){const t=By;if(this[t(343)]&&xi(this[t(258)]())){let e=this.pendingRemoveRanges;for(;e[t(354)]&&xi(this[t(258)]());){let s=e.shift();try{this[t(343)].remove(s[t(330)],s[t(634)])}catch(e){this[t(624)][t(490)](this.TAG_NAME,t(209),e)}}}if(this[t(328)]&&xi(this[t(218)]())){let e=this[t(606)];for(;e[t(354)]&&xi(this[t(218)]());){let s=e[t(479)]();try{this[t(328)][t(279)](s[t(330)],s[t(634)])}catch(e){this[t(624)].debugWarn(this[t(270)],"_doRemoveRanges() audioSourceBuffer error",e)}}}}[By(593)](){const t=By;let e=0;const s=this.$videoElement;return s&&(e=s[t(204)]),e}[By(291)](t){const e=By,s=this.$videoElement;let i=this[e(624)][e(536)].videoBufferDelay+this[e(624)]._opt[e(304)];const r=this[e(624)][e(536)].mseVideoBufferMinDelay,n=Math[e(561)](i,r),o=n/2;return t*=1e3,1===s[e(204)]?t>n?1.2:1:t<=o?1:s.playbackRate}_needCleanupSourceBuffer(){const t=By;if(xi(this[t(624)][t(536)][t(374)])||!this.$videoElement)return!1;const e=this[t(446)],s=e[t(497)],i=e.currentTime;return s[t(354)]>=1&&i-s[t(330)](0)>=this.player[t(536)][t(645)]}[By(246)](){const t=By;let e=0;return this[t(446)]&&(e=this[t(446)][t(491)]),e}[By(457)](){const t=By,e=this[t(446)];let s=0;if(e){const i=e[t(497)];i[t(354)]&&i[t(330)](0);s=i[t(354)]?i[t(634)](i[t(354)]-1):0}return s}getVideoBufferTimeRange(){const t=By,e=this[t(446)];let s=null;if(e){const i=e.buffered,r=i[t(354)]?i[t(330)](0):0,n=i[t(354)]?i[t(634)](i.length-1):0;s={start:r,end:n,diff:n-r}}return s}getVideoBufferStartTime(){const t=By,e=this.$videoElement;let s=0;if(e){const i=e[t(497)];s=i.length?i[t(330)](0):0}return s}[By(542)](){const t=By,e=this[t(446)];let s=0;if(e){const i=e.buffered;s=i.length?i[t(634)](i.length-1):0}return s}[By(334)](){const t=By,e=this.$videoElement;let s=[];if(e){const i=e.buffered;for(let e=0;e<i[t(354)];e++){let r=i[t(330)](e),n=i[t(634)](e);s[t(484)]({start:r,end:n})}}return s}[By(202)](){const t=By,e=this[t(446)];const s=this[t(457)]()-e[t(491)];return s>0?s:0}[By(550)](){const t=By;this[t(401)]&&(clearTimeout(this[t(401)]),this[t(401)]=null)}[By(400)](){const t=By;this[t(477)]&&(clearTimeout(this[t(477)]),this[t(477)]=null)}[By(518)](){const t=By;return{video:this[t(625)],audio:this[t(646)]}}[By(528)](){const t=By;let e=(this.player[t(536)][t(304)]+this[t(624)][t(536)][t(632)])/1e3;return Math.max(5,e+3)}[By(427)](){const t=By;return this[t(446)]&&xi(this[t(446)][t(344)])&&xi(this[t(446)][t(384)])&&0!==this.$videoElement[t(204)]&&0!==this[t(446)].readyState}[By(512)](){const t=By;let e=!1;if(this.$videoElement){const s=this[t(446)][t(491)],i=this.getVideoBufferEndTime(),r=Math[t(557)](i-s);e=r<1,e&&this[t(624)][t(580)](this[t(270)],t(424)+s+t(306)+i+t(253)+r)}return e}[By(560)](){const t=By,e=this[t(575)]();if(e<0){const s=this[t(565)]();this[t(624)][t(448)][t(314)](this.TAG_NAME,t(235)+e+t(318)+this[t(446)].currentTime+t(638)+s),this[t(446)][t(491)]=s}}[By(336)](t){const e=By;this.mediaSource&&(this[e(335)][e(358)]=t)}[By(372)](t,e){const s=By;if(this[s(335)]){this[s(624)].debugLog(this[s(270)],s(278)+t+" and end is "+e);const i=this[s(335)];if(t<0||e<t||!i?.setLiveSeekableRange||i[s(282)]!==s(362))return;i[s(372)](t,e)}}[By(373)](t=1){const e=By;let s=this.$videoElement[e(491)];const i=this[e(334)]();if(0===i[e(354)])return s;const r=i[i.length-1];return s=r[e(634)]-r.start<1?r.start:r.end-(t||1),s}}const Ny=Vy;function Vy(t,e){const s=jy();return(Vy=function(t,e){return s[t-=323]})(t,e)}function jy(){const t=["src","visibilityState","setAttribute","debugWarn","1971088zUgXFO","style","visible","Wake Lock active.","type","Wake Lock released.","name","message","handleNoSleepVideoTimeUpdate","-100%","3266585hCvnlf","then","mp4","wakeLock","1401339oWBHqT","1gjgXRy","8552392NETcMw","_addSourceToVideo","Native Wake Lock API supported.","visibilitychange","catch","pause","indexOf","request","body","assign","Native Wake Lock API not supported. so use video element.","removeEventListener","playsinline","webm","append","video/","addEventListener","navigator","598078RYnORU","absolute","1053732PMvLbA","timeupdate","2804485CUgLJr","noSleepVideo ","userAgent","createElement","Samsung","enable","9AqWgSL","noSleepVideo Wake Lock active.","release","screen","No Sleep","handleVisibilityChange","noSleepVideo","currentTime","NoSleep","video","parentNode","removeChild","debugLog","_wakeLock","title","disable","player","destroy","enabled","appendChild","source"];return(jy=function(){return t})()}!function(t){const e=Vy,s=t();for(;;)try{if(474487===-parseInt(e(381))/1*(parseInt(e(331))/2)+parseInt(e(380))/3+-parseInt(e(366))/4+-parseInt(e(335))/5+-parseInt(e(333))/6+parseInt(e(376))/7+-parseInt(e(382))/8*(-parseInt(e(341))/9))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(jy);const Wy=()=>Ny(379)in navigator&&-1===window[Ny(330)][Ny(337)][Ny(388)](Ny(339))&&xi(Es());class Gy{constructor(t){const e=Ny;this[e(357)]=t,this.enabled=!1,Wy()?(this[e(357)][e(353)](e(349),e(384)),this._wakeLock=null,this[e(346)]=()=>{const t=e;null!==this[t(354)]&&document[t(363)]===t(368)&&this[t(340)]()},document[e(329)](e(385),this.handleVisibilityChange),document[e(329)]("fullscreenchange",this[e(346)])):(this[e(357)][e(353)](e(349),e(323)),this[e(347)]=document[e(338)](e(350)),this[e(347)][e(364)](e(355),e(345)),this[e(347)][e(364)](e(325),""),this[e(383)](this.noSleepVideo,e(326),"data:video/webm;base64,GkXfo59ChoEBQveBAULygQRC84EIQoKEd2VibUKHgQRChYECGFOAZwEAAAAAABLfEU2bdLpNu4tTq4QVSalmU6yBoU27i1OrhBZUrmtTrIHYTbuMU6uEElTDZ1OsggGXTbuMU6uEHFO7a1OsghLJ7AEAAAAAAABZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVSalmsirXsYMPQkBNgI1MYXZmNTguNDUuMTAwV0GNTGF2ZjU4LjQ1LjEwMESJiECzmgAAAAAAFlSua0C5rgEAAAAAAABO14EBc8WI9UhIq9EDJPCcgQAitZyDdW5khoVWX1ZQOIOBASPjg4QF9eEA4AEAAAAAAAAbsIIBQLqB8FSwggElVLqB8FWwiFW3gQFVuIECrgEAAAAAAABZ14ECc8WIUEWPA9J/iJ6cgQAitZyDdW5khoZBX09QVVNWqoNjLqBWu4QExLQAg4EC4ZGfgQG1iEDncAAAAAAAYmSBIGOik09wdXNIZWFkAQE4AYC7AAAAAAASVMNnQcJzcwEAAAAAAACXY8CAZ8gBAAAAAAAAFUWji01BSk9SX0JSQU5ERIeEaXNvbWfIAQAAAAAAABZFo41NSU5PUl9WRVJTSU9ORIeDNTEyZ8gBAAAAAAAAJ0WjkUNPTVBBVElCTEVfQlJBTkRTRIeQaXNvbWlzbzJhdmMxbXA0MWfIAQAAAAAAABpFo4dFTkNPREVSRIeNTGF2ZjU4LjQ1LjEwMHNzAQAAAAAAAIZjwItjxYj1SEir0QMk8GfIAQAAAAAAAB5Fo4xIQU5ETEVSX05BTUVEh4xWaWRlb0hhbmRsZXJnyAEAAAAAAAAhRaOHRU5DT0RFUkSHlExhdmM1OC45MS4xMDAgbGlidnB4Z8iiRaOIRFVSQVRJT05Eh5QwMDowMDowNS4wMDcwMDAwMDAAAHNzAQAAAAAAAIdjwItjxYhQRY8D0n+InmfIAQAAAAAAAB5Fo4xIQU5ETEVSX05BTUVEh4xTb3VuZEhhbmRsZXJnyAEAAAAAAAAiRaOHRU5DT0RFUkSHlUxhdmM1OC45MS4xMDAgbGlib3B1c2fIokWjiERVUkFUSU9ORIeUMDA6MDA6MDUuMDE4MDAwMDAwAAAfQ7Z1T2TngQCjh4IAAID4//6jQKSBAAeAMBIAnQEqQAHwAABHCIWFiIWEiAICAAYWBPcGgWSfa9ubJzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh7Jzh69AD+/6tQgKOHggAVgPj//qOHggApgPj//qOHggA9gPj//qOHggBRgPj//qOHggBlgPj//qOegQBrANECAAUQrAAYABhYL/QACIAEM1+tck+ccwAAo4eCAHmA+P/+o4eCAI2A+P/+o4eCAKGA+P/+o4eCALWA+P/+o4eCAMmA+P/+o56BAM8A0QIABRCsABgAGFgv9AAIgAQzX61yT5xzAACjh4IA3YD4//6jh4IA8YD4//6jh4IBBYD4//6jh4IBGYD4//6jh4IBLYD4//6jnoEBMwDRAgAFEKwAGAAYWC/0AAiABDNfrXJPnHMAAKOHggFBgPj//qOHggFVgPj//qOHggFpgPj//qOHggF9gPj//qOHggGRgPj//qOegQGXANECAAUQrAAYABhYL/QACIAEM1+tck+ccwAAo4eCAaWA+P/+o4eCAbmA+P/+o4eCAc2A+P/+o4eCAeGA+P/+o4eCAfWA+P/+o56BAfsA0QIABRCsABgAGFgv9AAIgAQzX61yT5xzAACjh4ICCYD4//6jh4ICHYD4//6jh4ICMYD4//6jh4ICRYD4//6jh4ICWYD4//6jnoECXwDRAgAFEKwAGAAYWC/0AAiABDNfrXJPnHMAAKOHggJtgPj//qOHggKBgPj//qOHggKVgPj//qOHggKpgPj//qOHggK9gPj//qOegQLDANECAAUQEBRgAGFgv9AAIgAQzX61yT5xzAAAo4eCAtGA+P/+o4eCAuWA+P/+o4eCAvmA+P/+o4eCAw2A+P/+o4eCAyGA+P/+o56BAycA0QIABRCsABgAGFgv9AAIgAQzX61yT5xzAACjh4IDNYD4//6jh4IDSYD4//6jh4IDXYD4//6jh4IDcYD4//6jh4IDhYD4//6jnoEDiwDRAgAFEKwAGAAYWC/0AAiABDNfrXJPnHMAAKOHggOZgPj//qOHggOtgPj//qOHggPBgPj//qOHggPVgPj//qOHggPpgPj//qOegQPvANECAAUQrAAYABhYL/QACIAEM1+tck+ccwAAo4eCA/2A+P/+o4eCBBGA+P/+o4eCBCWA+P/+o4eCBDmA+P/+o4eCBE2A+P/+o56BBFMA0QIABRCsABgAGFgv9AAIgAQzX61yT5xzAACjh4IEiID4//6jh4IEnID4//6jh4IEsID4//6jnoEEtwDRAgAFEKwAGAAYWC/0AAiABDNfrXJPnHMAAKOHggTEgPj//qOHggTYgPj//qOHggTsgPj//qOHggUAgPj//qOHggUUgPj//qOegQUbANECAAUQrAAYABhYL/QACIAEM1+tck+ccwAAo4eCBSiA+P/+o4eCBTyA+P/+o4eCBVCA+P/+o4eCBWSA+P/+o4eCBXiA+P/+o56BBX8A0QIABRCsABgAGFgv9AAIgAQzX61yT5xzAACjh4IFjID4//6jh4IFoID4//6jh4IFtID4//6jh4IFyID4//6jh4IF3ID4//6jnoEF4wDRAgAFEKwAGAAYWC/0AAiABDNfrXJPnHMAAKOHggXwgPj//qOHggYEgPj//qOHggYYgPj//qOHggYsgPj//qOHggZAgPj//qOegQZHANECAAUQrAAYABhYL/QACIAEM1+tck+ccwAAo4eCBlSA+P/+o4eCBmiA+P/+o4eCBnyA+P/+o4eCBpCA+P/+o4eCBqSA+P/+o56BBqsA0QIABRCsABgAGFgv9AAIgAQzX61yT5xzAACjh4IGuID4//6jh4IGzID4//6jh4IG4ID4//6jh4IG9ID4//6jh4IHCID4//6jnoEHDwDRAgAFEBAUYABhYL/QACIAEM1+tck+ccwAAKOHggccgPj//qOHggcwgPj//qOHggdEgPj//qOHggdYgPj//qOHggdsgPj//qOegQdzANECAAUQrAAYABhYL/QACIAEM1+tck+ccwAAo4eCB4CA+P/+o4eCB5SA+P/+o4eCB6iA+P/+o4eCB7yA+P/+o4eCB9CA+P/+o56BB9cA0QIABRCsABgAGFgv9AAIgAQzX61yT5xzAACjh4IH5ID4//6jh4IH+ID4//6jh4IIDID4//6jh4IIIID4//6jh4IINID4//6jnoEIOwDRAgAFEKwAGAAYWC/0AAiABDNfrXJPnHMAAKOHgghIgPj//qOHgghcgPj//qOHgghwgPj//qOHggiEgPj//qOegQifANECAAUQrAAYABhYL/QACIAEM1+tck+ccwAAo4eCCMCA+P/+o4eCCNSA+P/+o4eCCOiA+P/+o4eCCPyA+P/+o56BCQMA0QIABRCsABgAGFgv9AAIgAQzX61yT5xzAACjh4IJEID4//6jh4IJJID4//6jh4IJOID4//6jh4IJTID4//6jh4IJYID4//6jnoEJZwDRAgAFEKwAGAAYWC/0AAiABDNfrXJPnHMAAKOHggl0gPj//qOHggmIgPj//qOHggmcgPj//qOHggmwgPj//qOHggnEgPj//qOegQnLANECAAUQrAAYABhYL/QACIAEM1+tck+ccwAAo4eCCdiA+P/+o4eCCeyA+P/+o4eCCgCA+P/+o4eCChSA+P/+o4eCCiiA+P/+o56BCi8A0QIABRCsABgAGFgv9AAIgAQzX61yT5xzAACjh4IKPID4//6jh4IKUID4//6jh4IKZID4//6jh4IKeID4//6jh4IKjID4//6jnoEKkwDRAgAFEKwAGAAYWC/0AAiABDNfrXJPnHMAAKOHggqggPj//qOHggq0gPj//qOHggrIgPj//qOHggrcgPj//qOHggrwgPj//qOegQr3ANECAAUQrAAYABhYL/QACIAEM1+tck+ccwAAo4eCCwSA+P/+o4eCCxiA+P/+o4eCCyyA+P/+o4eCC0CA+P/+o4eCC1SA+P/+o56BC1sA0QIABRAQFGAAYWC/0AAiABDNfrXJPnHMAACjh4ILaID4//6jh4ILfID4//6jh4ILkID4//6jh4ILpID4//6jh4ILuID4//6jnoELvwDRAgAFEKwAGAAYWC/0AAiABDNfrXJPnHMAAKOHggvMgPj//qOHggvggPj//qOHggv0gPj//qOHggwIgPj//qOHggwcgPj//qOegQwjANECAAUQrAAYABhYL/QACIAEM1+tck+ccwAAo4eCDDCA+P/+o4eCDESA+P/+o4eCDFiA+P/+o4eCDGyA+P/+o4eCDICA+P/+o56BDIcA0QIABRCsABgAGFgv9AAIgAQzX61yT5xzAACjh4IMlID4//6jh4IMqID4//6jh4IMvID4//6jh4IM0ID4//6jnoEM6wDRAgAFEKwAGAAYWC/0AAiABDNfrXJPnHMAAKOHgg0MgPj//qOHgg0ggPj//qOHgg00gPj//qOHgg1IgPj//qOegQ1PANECAAUQrAAYABhYL/QACIAEM1+tck+ccwAAo4eCDVyA+P/+o4eCDXCA+P/+o4eCDYSA+P/+o4eCDZiA+P/+o4eCDayA+P/+o56BDbMA0QIABRCsABgAGFgv9AAIgAQzX61yT5xzAACjh4INwID4//6jh4IN1ID4//6jh4IN6ID4//6jh4IN/ID4//6jh4IOEID4//6jnoEOFwDRAgAFEKwAGAAYWC/0AAiABDNfrXJPnHMAAKOHgg4kgPj//qOHgg44gPj//qOHgg5MgPj//qOHgg5ggPj//qOHgg50gPj//qOegQ57ANECAAUQrAAYABhYL/QACIAEM1+tck+ccwAAo4eCDoiA+P/+o4eCDpyA+P/+o4eCDrCA+P/+o4eCDsSA+P/+o4eCDtiA+P/+o56BDt8A0QIABRCsABgAGFgv9AAIgAQzX61yT5xzAACjh4IO7ID4//6jh4IPAID4//6jh4IPFID4//6jh4IPKID4//6jh4IPPID4//6jnoEPQwDRAgAFEKwAGAAYWC/0AAiABDNfrXJPnHMAAKOHgg9QgPj//qOHgg9kgPj//qOHgg94gPj//qOHgg+MgPj//qOHgg+ggPj//qOegQ+nANECAAUQEBRgAGFgv9AAIgAQzX61yT5xzAAAo4eCD7SA+P/+o4eCD8iA+P/+o4eCD9yA+P/+o4eCD/CA+P/+o4eCEASA+P/+o56BEAsA0QIABRCsABgAGFgv9AAIgAQzX61yT5xzAACjh4IQGID4//6jh4IQLID4//6jh4IQQID4//6jh4IQVID4//6jh4IQaID4//6jnoEQbwDRAgAFEKwAGAAYWC/0AAiABDNfrXJPnHMAAKOHghB8gPj//qOHghCQgPj//qOHghCkgPj//qOHghC4gPj//qOHghDMgPj//qOegRDTANECAAUQrAAYABhYL/QACIAEM1+tck+ccwAAo4eCEOCA+P/+o4eCEPSA+P/+o4eCEQiA+P/+o56BETcA0QIABRCsABgAGFgv9AAIgAQzX61yT5xzAACjh4IRQ4D4//6jh4IRV4D4//6jh4IRa4D4//6jh4IRf4D4//6jh4IRk4D4//6jnoERmwDRAgAFEKwAGAAYWC/0AAiABDNfrXJPnHMAAKOHghGngPj//qOHghG7gPj//qOHghHPgPj//qOHghHjgPj//qOHghH3gPj//qOegRH/ANECAAUQrAAYABhYL/QACIAEM1+tck+ccwAAo4eCEguA+P/+o4eCEh+A+P/+o4eCEjOA+P/+o4eCEkeA+P/+o4eCEluA+P/+o56BEmMA0QIABRCsABgAGFgv9AAIgAQzX61yT5xzAACjh4ISb4D4//6jh4ISg4D4//6jh4ISl4D4//6jh4ISq4D4//6jh4ISv4D4//6jnoESxwDRAgAFEKwAGAAYWC/0AAiABDNfrXJPnHMAAKOHghLTgPj//qOHghLngPj//qOHghL7gPj//qOHghMPgPj//qOHghMjgPj//qOegRMrANECAAUQrAAYABhYL/QACIAEM1+tck+ccwAAo4eCEzeA+P/+o4eCE0uA+P/+o4eCE1+A+P/+o4eCE3OA+P/+oAEAAAAAAAAPoYeCE4cA+P/+daKDB/KBHFO7a5G7j7OBB7eK94EB8YIDX/CBDA=="),this[e(383)](this.noSleepVideo,e(378),"data:video/mp4;base64,AAAAIGZ0eXBpc29tAAACAGlzb21pc28yYXZjMW1wNDEAAAAIZnJlZQAACORtZGF03gIATGF2YzU4LjM1LjEwMAACMEAOAAACcQYF//9t3EXpvebZSLeWLNgg2SPu73gyNjQgLSBjb3JlIDE2MSByMzAyNyA0MTIxMjc3IC0gSC4yNjQvTVBFRy00IEFWQyBjb2RlYyAtIENvcHlsZWZ0IDIwMDMtMjAyMCAtIGh0dHA6Ly93d3cudmlkZW9sYW4ub3JnL3gyNjQuaHRtbCAtIG9wdGlvbnM6IGNhYmFjPTAgcmVmPTMgZGVibG9jaz0xOjA6MCBhbmFseXNlPTB4MToweDExMSBtZT1oZXggc3VibWU9NyBwc3k9MSBwc3lfcmQ9MS4wMDowLjAwIG1peGVkX3JlZj0xIG1lX3JhbmdlPTE2IGNocm9tYV9tZT0xIHRyZWxsaXM9MSA4eDhkY3Q9MCBjcW09MCBkZWFkem9uZT0yMSwxMSBmYXN0X3Bza2lwPTEgY2hyb21hX3FwX29mZnNldD0tMiB0aHJlYWRzPTcgbG9va2FoZWFkX3RocmVhZHM9MSBzbGljZWRfdGhyZWFkcz0wIG5yPTAgZGVjaW1hdGU9MSBpbnRlcmxhY2VkPTAgYmx1cmF5X2NvbXBhdD0wIGNvbnN0cmFpbmVkX2ludHJhPTAgYmZyYW1lcz0wIHdlaWdodHA9MCBrZXlpbnQ9MjUwIGtleWludF9taW49MTAgc2NlbmVjdXQ9NDAgaW50cmFfcmVmcmVzaD0wIHJjX2xvb2thaGVhZD00MCByYz1jcmYgbWJ0cmVlPTEgY3JmPTIzLjAgcWNvbXA9MC42MCBxcG1pbj0wIHFwbWF4PTY5IHFwc3RlcD00IGlwX3JhdGlvPTEuNDAgYXE9MToxLjAwAIAAAADvZYiED/JigADD7JycnJycnJycnJycnJycnJycnJ11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111114BGCAHARggBwEYIAcBGCAHARggBwAAAAdBmjgf4BLYARggBwEYIAcBGCAHARggBwAAAAdBmlQH+AS2ARggBwEYIAcBGCAHARggBwAAAAdBmmA/wCWwARggBwEYIAcBGCAHARggBwEYIAcAAAAHQZqAP8AlsAEYIAcBGCAHARggBwEYIAcAAAAHQZqgP8AlsAEYIAcBGCAHARggBwEYIAcAAAAHQZrAP8AlsAEYIAcBGCAHARggBwEYIAcBGCAHAAAAB0Ga4D/AJbABGCAHARggBwEYIAcBGCAHAAAAB0GbAD/AJbABGCAHARggBwEYIAcBGCAHAAAAB0GbID/AJbABGCAHARggBwEYIAcBGCAHARggBwAAAAdBm0A/wCWwARggBwEYIAcBGCAHAAAAB0GbYD/AJbABGCAHARggBwEYIAcAAAAHQZuAP8AlsAEYIAcBGCAHARggBwEYIAcBGCAHAAAAB0GboD/AJbABGCAHARggBwEYIAcBGCAHAAAAB0GbwD/AJbABGCAHARggBwEYIAcBGCAHAAAAB0Gb4D/AJbABGCAHARggBwEYIAcBGCAHARggBwAAAAdBmgA/wCWwARggBwEYIAcBGCAHARggBwAAAAdBmiA/wCWwARggBwEYIAcBGCAHARggBwAAAAdBmkA/wCWwARggBwEYIAcBGCAHARggBwEYIAcAAAAHQZpgP8AlsAEYIAcBGCAHARggBwEYIAcAAAAHQZqAP8AlsAEYIAcBGCAHARggBwEYIAcAAAAHQZqgP8AlsAEYIAcBGCAHARggBwAAAAdBmsA/wCWwARggBwEYIAcBGCAHARggBwAAAAdBmuA/wCWwARggBwEYIAcBGCAHARggBwAAAAdBmwA/wCWwARggBwEYIAcBGCAHARggBwEYIAcAAAAHQZsgP8AlsAEYIAcBGCAHARggBwEYIAcAAAAHQZtAP8AlsAEYIAcBGCAHARggBwEYIAcAAAAHQZtgP8AlsAEYIAcBGCAHARggBwEYIAcBGCAHAAAAB0GbgD/AJbABGCAHARggBwEYIAcBGCAHAAAAB0GboD/AJbABGCAHARggBwEYIAcBGCAHAAAAB0GbwD/AJbABGCAHARggBwEYIAcBGCAHARggBwAAAAdBm+A/wCWwARggBwEYIAcBGCAHARggBwAAAAdBmgA/wCWwARggBwEYIAcAAAAHQZogP8AlsAEYIAcBGCAHARggBwEYIAcBGCAHAAAAB0GaQD/AJbABGCAHARggBwEYIAcBGCAHAAAAB0GaYD/AJbABGCAHARggBwEYIAcBGCAHAAAAB0GagD/AJbABGCAHARggBwEYIAcBGCAHARggBwAAAAdBmqA/wCWwARggBwEYIAcBGCAHARggBwAAAAdBmsA/wCWwARggBwEYIAcBGCAHARggBwAAAAdBmuA/wCWwARggBwEYIAcBGCAHARggBwEYIAcAAAAHQZsAP8AlsAEYIAcBGCAHARggBwEYIAcAAAAHQZsgP8AlsAEYIAcBGCAHARggBwEYIAcAAAAHQZtAP8AlsAEYIAcBGCAHARggBwEYIAcBGCAHAAAAB0GbYD/AJbABGCAHARggBwAAAAdBm4A/wCWwARggBwEYIAcBGCAHARggBwAAAAdBm6A/wCWwARggBwEYIAcBGCAHARggBwEYIAcAAAAHQZvAP8AlsAEYIAcBGCAHARggBwEYIAcAAAAHQZvgP8AlsAEYIAcBGCAHARggBwEYIAcAAAAHQZoAO8AlsAEYIAcBGCAHARggBwEYIAcBGCAHAAAAB0GaIDfAJbABGCAHARggBwEYIAcBGCAHAAAMxm1vb3YAAABsbXZoZAAAAAAAAAAAAAAAAAAAA+gAABOgAAEAAAEAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAPLdHJhawAAAFx0a2hkAAAAAwAAAAAAAAAAAAAAAQAAAAAAABOIAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAQAAAAAElVVUA8AAAAAAAJGVkdHMAAAAcZWxzdAAAAAAAAAABAAATiAAAAAAAAQAAAAADQ21kaWEAAAAgbWRoZAAAAAAAAAAAAAAAAAAAKAAAAMgAVcQAAAAAAC1oZGxyAAAAAAAAAAB2aWRlAAAAAAAAAAAAAAAAVmlkZW9IYW5kbGVyAAAAAu5taW5mAAAAFHZtaGQAAAABAAAAAAAAAAAAAAAkZGluZgAAABxkcmVmAAAAAAAAAAEAAAAMdXJsIAAAAAEAAAKuc3RibAAAAKpzdHNkAAAAAAAAAAEAAACaYXZjMQAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAFAAPAASAAAAEgAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABj//wAAADRhdmNDAULAC//hABxnQsAL2QFB+/8ACwAMEAAAAwAQAAADAUDxQqSAAQAFaMuDyyAAAAAQcGFzcAAAAAsAAAAMAAAAGHN0dHMAAAAAAAAAAQAAADIAAAQAAAAAFHN0c3MAAAAAAAAAAQAAAAEAAAAcc3RzYwAAAAAAAAABAAAAAQAAAAEAAAABAAAA3HN0c3oAAAAAAAAAAAAAADIAAANoAAAACwAAAAsAAAALAAAACwAAAAsAAAALAAAACwAAAAsAAAALAAAACwAAAAsAAAALAAAACwAAAAsAAAALAAAACwAAAAsAAAALAAAACwAAAAsAAAALAAAACwAAAAsAAAALAAAACwAAAAsAAAALAAAACwAAAAsAAAALAAAACwAAAAsAAAALAAAACwAAAAsAAAALAAAACwAAAAsAAAALAAAACwAAAAsAAAALAAAACwAAAAsAAAALAAAACwAAAAsAAAALAAAACwAAANhzdGNvAAAAAAAAADIAAABFAAADwQAAA9wAAAP3AAAEFgAABDEAAARMAAAEawAABIYAAAShAAAEwAAABNcAAATuAAAFDQAABSgAAAVDAAAFYgAABX0AAAWYAAAFtwAABdIAAAXtAAAGBAAABh8AAAY6AAAGWQAABnQAAAaPAAAGrgAABskAAAbkAAAHAwAABx4AAAcxAAAHUAAAB2sAAAeGAAAHpQAAB8AAAAfbAAAH+gAACBUAAAgwAAAITwAACGIAAAh9AAAInAAACLcAAAjSAAAI8QAACCV0cmFrAAAAXHRraGQAAAADAAAAAAAAAAAAAAACAAAAAAAAE6AAAAAAAAAAAAAAAAEBAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAkZWR0cwAAABxlbHN0AAAAAAAAAAEAABOIAAAEAAABAAAAAAedbWRpYQAAACBtZGhkAAAAAAAAAAAAAAAAAACsRAADYVRVxAAAAAAALWhkbHIAAAAAAAAAAHNvdW4AAAAAAAAAAAAAAABTb3VuZEhhbmRsZXIAAAAHSG1pbmYAAAAQc21oZAAAAAAAAAAAAAAAJGRpbmYAAAAcZHJlZgAAAAAAAAABAAAADHVybCAAAAABAAAHDHN0YmwAAABqc3RzZAAAAAAAAAABAAAAWm1wNGEAAAAAAAAAAQAAAAAAAAAAAAIAEAAAAACsRAAAAAAANmVzZHMAAAAAA4CAgCUAAgAEgICAF0AVAAAAAAENiAAABVQFgICABRIIVuUABoCAgAECAAAAYHN0dHMAAAAAAAAACgAAAC8AAAQAAAAAAQAACtUAAAAsAAAEAAAAAAEAAArWAAAALAAABAAAAAABAAAK1QAAACwAAAQAAAAAAQAACtUAAAAaAAAEAAAAAAEAAAH/AAABzHN0c2MAAAAAAAAAJQAAAAEAAAABAAAAAQAAAAIAAAAFAAAAAQAAAAMAAAAEAAAAAQAAAAUAAAAFAAAAAQAAAAYAAAAEAAAAAQAAAAgAAAAFAAAAAQAAAAkAAAAEAAAAAQAAAAsAAAAFAAAAAQAAAAwAAAADAAAAAQAAAA4AAAAFAAAAAQAAAA8AAAAEAAAAAQAAABEAAAAFAAAAAQAAABIAAAAEAAAAAQAAABQAAAAFAAAAAQAAABUAAAAEAAAAAQAAABcAAAADAAAAAQAAABgAAAAEAAAAAQAAABoAAAAFAAAAAQAAABsAAAAEAAAAAQAAAB0AAAAFAAAAAQAAAB4AAAAEAAAAAQAAACAAAAAFAAAAAQAAACEAAAAEAAAAAQAAACIAAAACAAAAAQAAACMAAAAFAAAAAQAAACQAAAAEAAAAAQAAACYAAAAFAAAAAQAAACcAAAAEAAAAAQAAACkAAAAFAAAAAQAAACoAAAAEAAAAAQAAACwAAAAFAAAAAQAAAC0AAAACAAAAAQAAAC4AAAAEAAAAAQAAAC8AAAAFAAAAAQAAADAAAAAEAAAAAQAAADIAAAAFAAAAAQAAADMAAAAEAAAAAQAAA1xzdHN6AAAAAAAAAAAAAADSAAAAFQAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAA3HN0Y28AAAAAAAAAMwAAADAAAAOtAAADzAAAA+cAAAQCAAAEIQAABDwAAARXAAAEdgAABJEAAASsAAAEywAABOIAAAT5AAAFGAAABTMAAAVOAAAFbQAABYgAAAWjAAAFwgAABd0AAAX4AAAGDwAABioAAAZFAAAGZAAABn8AAAaaAAAGuQAABtQAAAbvAAAHDgAABykAAAc8AAAHWwAAB3YAAAeRAAAHsAAAB8sAAAfmAAAIBQAACCAAAAg7AAAIWgAACG0AAAiIAAAIpwAACMIAAAjdAAAI/AAAABpzZ3BkAQAAAHJvbGwAAAACAAAAAf//AAAAHHNiZ3AAAAAAcm9sbAAAAAEAAADSAAAAAQAAAGJ1ZHRhAAAAWm1ldGEAAAAAAAAAIWhkbHIAAAAAAAAAAG1kaXJhcHBsAAAAAAAAAAAAAAAALWlsc3QAAAAlqXRvbwAAAB1kYXRhAAAAAQAAAABMYXZmNTguMjAuMTAw"),Object[e(391)](this.noSleepVideo[e(367)],{position:e(332),left:"-100%",top:e(375)}),document.querySelector(e(390))[e(327)](this[e(347)]),this.handleNoSleepVideoTimeUpdate=()=>{const t=e;this.noSleepVideo&&this[t(347)][t(348)]>4&&(this[t(347)][t(348)]=1)},this[e(347)][e(329)]("timeupdate",this[e(374)]))}[Ny(358)](){const t=Ny;if(this[t(354)]&&(this._wakeLock[t(343)](),this[t(354)]=null),this[t(347)]){this.handleNoSleepVideoTimeUpdate&&this.noSleepVideo[t(324)](t(334),this.handleNoSleepVideoTimeUpdate);try{this[t(347)].parentNode&&this[t(347)][t(351)][t(352)](this[t(347)])}catch(e){this[t(357)].debugWarn("NoSleep","Failed to remove noSleepVideo element.")}this[t(347)]=null}this[t(346)]&&(document[t(324)](t(385),this[t(346)]),document.removeEventListener("fullscreenchange",this[t(346)]))}[Ny(383)](t,e,s){const i=Ny;var r=document[i(338)](i(361));r[i(362)]=s,r[i(370)]=i(328)+e,t[i(360)](r)}get isEnabled(){return this[Ny(359)]}enable(){const t=Ny;if(Wy())return navigator[t(379)][t(389)](t(344))[t(377)](e=>{const s=t;this._wakeLock=e,this[s(359)]=!0,this.player[s(353)](s(379),s(369)),this._wakeLock[s(329)]("release",()=>{const t=s;this[t(357)][t(353)](t(379),t(371))})})[t(386)](e=>{const s=t;throw this[s(359)]=!1,this[s(357)][s(365)](s(379),e[s(372)]+", "+e[s(373)]),e});return this[t(347)].play()[t(377)](e=>{const s=t;return this[s(357)][s(353)](s(379),s(342)),this[s(359)]=!0,e})[t(386)](e=>{const s=t;throw this[s(357)][s(365)]("wakeLock",s(336)+e.name+", "+e[s(373)]),this.enabled=!1,e})}[Ny(356)](){const t=Ny;Wy()?(this[t(354)]&&this._wakeLock.release(),this[t(354)]=null):this[t(347)]&&this[t(347)][t(387)](),this[t(359)]=!1,this.player[t(353)](t(379),"Disabling wake lock.")}}const zy=Number.isFinite||function(t){return"number"==typeof t&&isFinite(t)},Hy=Number.isSafeInteger||function(t){return"number"==typeof t&&Math.abs(t)<=Ky},Ky=Number.MAX_SAFE_INTEGER||9007199254740991;let qy=function(t){return t.NETWORK_ERROR="networkError",t.MEDIA_ERROR="mediaError",t.KEY_SYSTEM_ERROR="keySystemError",t.MUX_ERROR="muxError",t.OTHER_ERROR="otherError",t}({}),Qy=function(t){return t.KEY_SYSTEM_NO_KEYS="keySystemNoKeys",t.KEY_SYSTEM_NO_ACCESS="keySystemNoAccess",t.KEY_SYSTEM_NO_SESSION="keySystemNoSession",t.KEY_SYSTEM_NO_CONFIGURED_LICENSE="keySystemNoConfiguredLicense",t.KEY_SYSTEM_LICENSE_REQUEST_FAILED="keySystemLicenseRequestFailed",t.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED="keySystemServerCertificateRequestFailed",t.KEY_SYSTEM_SERVER_CERTIFICATE_UPDATE_FAILED="keySystemServerCertificateUpdateFailed",t.KEY_SYSTEM_SESSION_UPDATE_FAILED="keySystemSessionUpdateFailed",t.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED="keySystemStatusOutputRestricted",t.KEY_SYSTEM_STATUS_INTERNAL_ERROR="keySystemStatusInternalError",t.KEY_SYSTEM_DESTROY_MEDIA_KEYS_ERROR="keySystemDestroyMediaKeysError",t.KEY_SYSTEM_DESTROY_CLOSE_SESSION_ERROR="keySystemDestroyCloseSessionError",t.KEY_SYSTEM_DESTROY_REMOVE_SESSION_ERROR="keySystemDestroyRemoveSessionError",t.MANIFEST_LOAD_ERROR="manifestLoadError",t.MANIFEST_LOAD_TIMEOUT="manifestLoadTimeOut",t.MANIFEST_PARSING_ERROR="manifestParsingError",t.MANIFEST_INCOMPATIBLE_CODECS_ERROR="manifestIncompatibleCodecsError",t.LEVEL_EMPTY_ERROR="levelEmptyError",t.LEVEL_LOAD_ERROR="levelLoadError",t.LEVEL_LOAD_TIMEOUT="levelLoadTimeOut",t.LEVEL_PARSING_ERROR="levelParsingError",t.LEVEL_SWITCH_ERROR="levelSwitchError",t.AUDIO_TRACK_LOAD_ERROR="audioTrackLoadError",t.AUDIO_TRACK_LOAD_TIMEOUT="audioTrackLoadTimeOut",t.SUBTITLE_LOAD_ERROR="subtitleTrackLoadError",t.SUBTITLE_TRACK_LOAD_TIMEOUT="subtitleTrackLoadTimeOut",t.FRAG_LOAD_ERROR="fragLoadError",t.FRAG_LOAD_TIMEOUT="fragLoadTimeOut",t.FRAG_DECRYPT_ERROR="fragDecryptError",t.FRAG_PARSING_ERROR="fragParsingError",t.FRAG_GAP="fragGap",t.REMUX_ALLOC_ERROR="remuxAllocError",t.KEY_LOAD_ERROR="keyLoadError",t.KEY_LOAD_TIMEOUT="keyLoadTimeOut",t.BUFFER_ADD_CODEC_ERROR="bufferAddCodecError",t.BUFFER_INCOMPATIBLE_CODECS_ERROR="bufferIncompatibleCodecsError",t.BUFFER_APPEND_ERROR="bufferAppendError",t.BUFFER_APPENDING_ERROR="bufferAppendingError",t.BUFFER_STALLED_ERROR="bufferStalledError",t.BUFFER_FULL_ERROR="bufferFullError",t.BUFFER_SEEK_OVER_HOLE="bufferSeekOverHole",t.BUFFER_NUDGE_ON_STALL="bufferNudgeOnStall",t.ASSET_LIST_LOAD_ERROR="assetListLoadError",t.ASSET_LIST_LOAD_TIMEOUT="assetListLoadTimeout",t.ASSET_LIST_PARSING_ERROR="assetListParsingError",t.INTERSTITIAL_ASSET_ITEM_ERROR="interstitialAssetItemError",t.INTERNAL_EXCEPTION="internalException",t.INTERNAL_ABORTED="aborted",t.ATTACH_MEDIA_ERROR="attachMediaError",t.UNKNOWN="unknown",t}({}),Yy=function(t){return t.MEDIA_ATTACHING="hlsMediaAttaching",t.MEDIA_ATTACHED="hlsMediaAttached",t.MEDIA_DETACHING="hlsMediaDetaching",t.MEDIA_DETACHED="hlsMediaDetached",t.MEDIA_ENDED="hlsMediaEnded",t.STALL_RESOLVED="hlsStallResolved",t.BUFFER_RESET="hlsBufferReset",t.BUFFER_CODECS="hlsBufferCodecs",t.BUFFER_CREATED="hlsBufferCreated",t.BUFFER_APPENDING="hlsBufferAppending",t.BUFFER_APPENDED="hlsBufferAppended",t.BUFFER_EOS="hlsBufferEos",t.BUFFERED_TO_END="hlsBufferedToEnd",t.BUFFER_FLUSHING="hlsBufferFlushing",t.BUFFER_FLUSHED="hlsBufferFlushed",t.MANIFEST_LOADING="hlsManifestLoading",t.MANIFEST_LOADED="hlsManifestLoaded",t.MANIFEST_PARSED="hlsManifestParsed",t.LEVEL_SWITCHING="hlsLevelSwitching",t.LEVEL_SWITCHED="hlsLevelSwitched",t.LEVEL_LOADING="hlsLevelLoading",t.LEVEL_LOADED="hlsLevelLoaded",t.LEVEL_UPDATED="hlsLevelUpdated",t.LEVEL_PTS_UPDATED="hlsLevelPtsUpdated",t.LEVELS_UPDATED="hlsLevelsUpdated",t.AUDIO_TRACKS_UPDATED="hlsAudioTracksUpdated",t.AUDIO_TRACK_SWITCHING="hlsAudioTrackSwitching",t.AUDIO_TRACK_SWITCHED="hlsAudioTrackSwitched",t.AUDIO_TRACK_LOADING="hlsAudioTrackLoading",t.AUDIO_TRACK_LOADED="hlsAudioTrackLoaded",t.AUDIO_TRACK_UPDATED="hlsAudioTrackUpdated",t.SUBTITLE_TRACKS_UPDATED="hlsSubtitleTracksUpdated",t.SUBTITLE_TRACKS_CLEARED="hlsSubtitleTracksCleared",t.SUBTITLE_TRACK_SWITCH="hlsSubtitleTrackSwitch",t.SUBTITLE_TRACK_LOADING="hlsSubtitleTrackLoading",t.SUBTITLE_TRACK_LOADED="hlsSubtitleTrackLoaded",t.SUBTITLE_TRACK_UPDATED="hlsSubtitleTrackUpdated",t.SUBTITLE_FRAG_PROCESSED="hlsSubtitleFragProcessed",t.CUES_PARSED="hlsCuesParsed",t.NON_NATIVE_TEXT_TRACKS_FOUND="hlsNonNativeTextTracksFound",t.INIT_PTS_FOUND="hlsInitPtsFound",t.FRAG_LOADING="hlsFragLoading",t.FRAG_LOAD_EMERGENCY_ABORTED="hlsFragLoadEmergencyAborted",t.FRAG_LOADED="hlsFragLoaded",t.FRAG_DECRYPTED="hlsFragDecrypted",t.FRAG_PARSING_INIT_SEGMENT="hlsFragParsingInitSegment",t.FRAG_PARSING_USERDATA="hlsFragParsingUserdata",t.FRAG_PARSING_METADATA="hlsFragParsingMetadata",t.FRAG_PARSED="hlsFragParsed",t.FRAG_BUFFERED="hlsFragBuffered",t.FRAG_CHANGED="hlsFragChanged",t.FPS_DROP="hlsFpsDrop",t.FPS_DROP_LEVEL_CAPPING="hlsFpsDropLevelCapping",t.MAX_AUTO_LEVEL_UPDATED="hlsMaxAutoLevelUpdated",t.ERROR="hlsError",t.DESTROYING="hlsDestroying",t.KEY_LOADING="hlsKeyLoading",t.KEY_LOADED="hlsKeyLoaded",t.LIVE_BACK_BUFFER_REACHED="hlsLiveBackBufferReached",t.BACK_BUFFER_REACHED="hlsBackBufferReached",t.STEERING_MANIFEST_LOADED="hlsSteeringManifestLoaded",t.ASSET_LIST_LOADING="hlsAssetListLoading",t.ASSET_LIST_LOADED="hlsAssetListLoaded",t.INTERSTITIALS_UPDATED="hlsInterstitialsUpdated",t.INTERSTITIALS_BUFFERED_TO_BOUNDARY="hlsInterstitialsBufferedToBoundary",t.INTERSTITIAL_ASSET_PLAYER_CREATED="hlsInterstitialAssetPlayerCreated",t.INTERSTITIAL_STARTED="hlsInterstitialStarted",t.INTERSTITIAL_ASSET_STARTED="hlsInterstitialAssetStarted",t.INTERSTITIAL_ASSET_ENDED="hlsInterstitialAssetEnded",t.INTERSTITIAL_ASSET_ERROR="hlsInterstitialAssetError",t.INTERSTITIAL_ENDED="hlsInterstitialEnded",t.INTERSTITIALS_PRIMARY_RESUMED="hlsInterstitialsPrimaryResumed",t.PLAYOUT_LIMIT_REACHED="hlsPlayoutLimitReached",t.EVENT_CUE_ENTER="hlsEventCueEnter",t}({});var Jy="manifest",Xy="level",$y="audioTrack",Zy="subtitleTrack",tA="main",eA="audio",sA="subtitle";class iA{constructor(t,e=0,s=0){this.halfLife=void 0,this.alpha_=void 0,this.estimate_=void 0,this.totalWeight_=void 0,this.halfLife=t,this.alpha_=t?Math.exp(Math.log(.5)/t):0,this.estimate_=e,this.totalWeight_=s}sample(t,e){const s=Math.pow(this.alpha_,t);this.estimate_=e*(1-s)+s*this.estimate_,this.totalWeight_+=t}getTotalWeight(){return this.totalWeight_}getEstimate(){if(this.alpha_){const t=1-Math.pow(this.alpha_,this.totalWeight_);if(t)return this.estimate_/t}return this.estimate_}}class rA{constructor(t,e,s,i=100){this.defaultEstimate_=void 0,this.minWeight_=void 0,this.minDelayMs_=void 0,this.slow_=void 0,this.fast_=void 0,this.defaultTTFB_=void 0,this.ttfb_=void 0,this.defaultEstimate_=s,this.minWeight_=.001,this.minDelayMs_=50,this.slow_=new iA(t),this.fast_=new iA(e),this.defaultTTFB_=i,this.ttfb_=new iA(t)}update(t,e){const{slow_:s,fast_:i,ttfb_:r}=this;s.halfLife!==t&&(this.slow_=new iA(t,s.getEstimate(),s.getTotalWeight())),i.halfLife!==e&&(this.fast_=new iA(e,i.getEstimate(),i.getTotalWeight())),r.halfLife!==t&&(this.ttfb_=new iA(t,r.getEstimate(),r.getTotalWeight()))}sample(t,e){const s=(t=Math.max(t,this.minDelayMs_))/1e3,i=8*e/s;this.fast_.sample(s,i),this.slow_.sample(s,i)}sampleTTFB(t){const e=t/1e3,s=Math.sqrt(2)*Math.exp(-Math.pow(e,2)/2);this.ttfb_.sample(s,Math.max(t,5))}canEstimate(){return this.fast_.getTotalWeight()>=this.minWeight_}getEstimate(){return this.canEstimate()?Math.min(this.fast_.getEstimate(),this.slow_.getEstimate()):this.defaultEstimate_}getEstimateTTFB(){return this.ttfb_.getTotalWeight()>=this.minWeight_?this.ttfb_.getEstimate():this.defaultTTFB_}get defaultEstimate(){return this.defaultEstimate_}destroy(){}}function nA(t,e,s){return(e=function(t){var e=function(t,e){if("object"!=typeof t||!t)return t;var s=t[Symbol.toPrimitive];if(void 0!==s){var i=s.call(t,e);if("object"!=typeof i)return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(t)}(t,"string");return"symbol"==typeof e?e:e+""}(e))in t?Object.defineProperty(t,e,{value:s,enumerable:!0,configurable:!0,writable:!0}):t[e]=s,t}function oA(){return oA=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var s=arguments[e];for(var i in s)({}).hasOwnProperty.call(s,i)&&(t[i]=s[i])}return t},oA.apply(null,arguments)}function aA(t,e){var s=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),s.push.apply(s,i)}return s}function hA(t){for(var e=1;e<arguments.length;e++){var s=null!=arguments[e]?arguments[e]:{};e%2?aA(Object(s),!0).forEach(function(e){nA(t,e,s[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(s)):aA(Object(s)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(s,e))})}return t}class lA{constructor(t,e){this.trace=void 0,this.debug=void 0,this.log=void 0,this.warn=void 0,this.info=void 0,this.error=void 0;const s=`[${t}]:`;this.trace=cA,this.debug=e.debug.bind(null,s),this.log=e.log.bind(null,s),this.warn=e.warn.bind(null,s),this.info=e.info.bind(null,s),this.error=e.error.bind(null,s)}}const cA=function(){},dA={trace:cA,debug:cA,log:cA,warn:cA,info:cA,error:cA};function uA(){return oA({},dA)}function pA(t,e,s){return e[t]?e[t].bind(e):function(t,e){const s=self.console[t];return s?s.bind(self.console,`${e?"["+e+"] ":""}[${t}] >`):cA}(t,s)}const fA=uA();const mA=fA;function gA(t=!0){if("undefined"==typeof self)return;return(t||!self.MediaSource)&&self.ManagedMediaSource||self.MediaSource||self.WebKitMediaSource}function yA(t,e){const s=Object.keys(t),i=Object.keys(e),r=s.length,n=i.length;return!r||!n||r===n&&!s.some(t=>-1===i.indexOf(t))}function AA(t,e=!1){if("undefined"!=typeof TextDecoder){const s=new TextDecoder("utf-8").decode(t);if(e){const t=s.indexOf("\0");return-1!==t?s.substring(0,t):s}return s.replace(/\0/g,"")}const s=t.length;let i,r,n,o="",a=0;for(;a<s;){if(i=t[a++],0===i&&e)return o;if(0!==i&&3!==i)switch(i>>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:o+=String.fromCharCode(i);break;case 12:case 13:r=t[a++],o+=String.fromCharCode((31&i)<<6|63&r);break;case 14:r=t[a++],n=t[a++],o+=String.fromCharCode((15&i)<<12|(63&r)<<6|63&n)}}return o}const bA=function(t){let e="";for(let s=0;s<t.length;s++){let i=t[s].toString(16);i.length<2&&(i="0"+i),e+=i}return e};function vA(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var SA,EA={exports:{}};var wA=(SA||(SA=1,function(t){var e,s,i,r,n;e=/^(?=((?:[a-zA-Z0-9+\-.]+:)?))\1(?=((?:\/\/[^\/?#]*)?))\2(?=((?:(?:[^?#\/]*\/)*[^;?#\/]*)?))\3((?:;[^?#]*)?)(\?[^#]*)?(#[^]*)?$/,s=/^(?=([^\/?#]*))\1([^]*)$/,i=/(?:\/|^)\.(?=\/)/g,r=/(?:\/|^)\.\.\/(?!\.\.\/)[^\/]*(?=\/)/g,n={buildAbsoluteURL:function(t,e,i){if(i=i||{},t=t.trim(),!(e=e.trim())){if(!i.alwaysNormalize)return t;var r=n.parseURL(t);if(!r)throw new Error("Error trying to parse base URL.");return r.path=n.normalizePath(r.path),n.buildURLFromParts(r)}var o=n.parseURL(e);if(!o)throw new Error("Error trying to parse relative URL.");if(o.scheme)return i.alwaysNormalize?(o.path=n.normalizePath(o.path),n.buildURLFromParts(o)):e;var a=n.parseURL(t);if(!a)throw new Error("Error trying to parse base URL.");if(!a.netLoc&&a.path&&"/"!==a.path[0]){var h=s.exec(a.path);a.netLoc=h[1],a.path=h[2]}a.netLoc&&!a.path&&(a.path="/");var l={scheme:a.scheme,netLoc:o.netLoc,path:null,params:o.params,query:o.query,fragment:o.fragment};if(!o.netLoc&&(l.netLoc=a.netLoc,"/"!==o.path[0]))if(o.path){var c=a.path,d=c.substring(0,c.lastIndexOf("/")+1)+o.path;l.path=n.normalizePath(d)}else l.path=a.path,o.params||(l.params=a.params,o.query||(l.query=a.query));return null===l.path&&(l.path=i.alwaysNormalize?n.normalizePath(o.path):o.path),n.buildURLFromParts(l)},parseURL:function(t){var s=e.exec(t);return s?{scheme:s[1]||"",netLoc:s[2]||"",path:s[3]||"",params:s[4]||"",query:s[5]||"",fragment:s[6]||""}:null},normalizePath:function(t){for(t=t.split("").reverse().join("").replace(i,"");t.length!==(t=t.replace(r,"")).length;);return t.split("").reverse().join("")},buildURLFromParts:function(t){return t.scheme+t.netLoc+t.path+t.params+t.query+t.fragment}},t.exports=n}(EA)),EA.exports);class TA{constructor(){this.aborted=!1,this.loaded=0,this.retry=0,this.total=0,this.chunkCount=0,this.bwEstimate=0,this.loading={start:0,first:0,end:0},this.parsing={start:0,end:0},this.buffering={start:0,first:0,end:0}}}var IA="audio",kA="video",_A="audiovideo";class CA{constructor(t){this._byteRange=null,this._url=null,this._stats=null,this._streams=null,this.base=void 0,this.relurl=void 0,"string"==typeof t&&(t={url:t}),this.base=t,function(t,e){const s=PA(t,e);s&&(s.enumerable=!0,Object.defineProperty(t,e,s))}(this,"stats")}setByteRange(t,e){const s=t.split("@",2);let i;i=1===s.length?(null==e?void 0:e.byteRangeEndOffset)||0:parseInt(s[1]),this._byteRange=[i,parseInt(s[0])+i]}get baseurl(){return this.base.url}get byteRange(){return null===this._byteRange?[]:this._byteRange}get byteRangeStartOffset(){return this.byteRange[0]}get byteRangeEndOffset(){return this.byteRange[1]}get elementaryStreams(){return null===this._streams&&(this._streams={[IA]:null,[kA]:null,[_A]:null}),this._streams}set elementaryStreams(t){this._streams=t}get hasStats(){return null!==this._stats}get hasStreams(){return null!==this._streams}get stats(){return null===this._stats&&(this._stats=new TA),this._stats}set stats(t){this._stats=t}get url(){return!this._url&&this.baseurl&&this.relurl&&(this._url=wA.buildAbsoluteURL(this.baseurl,this.relurl,{alwaysNormalize:!0})),this._url||""}set url(t){this._url=t}clearElementaryStreamInfo(){const{elementaryStreams:t}=this;t[IA]=null,t[kA]=null,t[_A]=null}}function DA(t){return"initSegment"!==t.sn}class LA extends CA{constructor(t,e){super(e),this._decryptdata=null,this._programDateTime=null,this._ref=null,this._bitrate=void 0,this.rawProgramDateTime=null,this.tagList=[],this.duration=0,this.sn=0,this.levelkeys=void 0,this.type=void 0,this.loader=null,this.keyLoader=null,this.level=-1,this.cc=0,this.startPTS=void 0,this.endPTS=void 0,this.startDTS=void 0,this.endDTS=void 0,this.start=0,this.playlistOffset=0,this.deltaPTS=void 0,this.maxStartPTS=void 0,this.minEndPTS=void 0,this.data=void 0,this.bitrateTest=!1,this.title=null,this.initSegment=null,this.endList=void 0,this.gap=void 0,this.urlId=0,this.type=t}get byteLength(){if(this.hasStats){const t=this.stats.total;if(t)return t}if(this.byteRange){const t=this.byteRange[0],e=this.byteRange[1];if(zy(t)&&zy(e))return e-t}return null}get bitrate(){return this.byteLength?8*this.byteLength/this.duration:this._bitrate?this._bitrate:null}set bitrate(t){this._bitrate=t}get decryptdata(){const{levelkeys:t}=this;if(!t&&!this._decryptdata)return null;if(!this._decryptdata&&this.levelkeys&&!this.levelkeys.NONE){const t=this.levelkeys.identity;if(t)this._decryptdata=t.getDecryptData(this.sn);else{const t=Object.keys(this.levelkeys);if(1===t.length)return this._decryptdata=this.levelkeys[t[0]].getDecryptData(this.sn)}}return this._decryptdata}get end(){return this.start+this.duration}get endProgramDateTime(){if(null===this.programDateTime)return null;const t=zy(this.duration)?this.duration:0;return this.programDateTime+1e3*t}get encrypted(){var t;if(null!=(t=this._decryptdata)&&t.encrypted)return!0;if(this.levelkeys){const t=Object.keys(this.levelkeys),e=t.length;if(e>1||1===e&&this.levelkeys[t[0]].encrypted)return!0}return!1}get programDateTime(){return null===this._programDateTime&&this.rawProgramDateTime&&(this.programDateTime=Date.parse(this.rawProgramDateTime)),this._programDateTime}set programDateTime(t){zy(t)?this._programDateTime=t:this._programDateTime=this.rawProgramDateTime=null}get ref(){return DA(this)?(this._ref||(this._ref={base:this.base,start:this.start,duration:this.duration,sn:this.sn,programDateTime:this.programDateTime}),this._ref):null}addStart(t){this.setStart(this.start+t)}setStart(t){this.start=t,this._ref&&(this._ref.start=t)}setDuration(t){this.duration=t,this._ref&&(this._ref.duration=t)}setKeyFormat(t){if(this.levelkeys){const e=this.levelkeys[t];e&&!this._decryptdata&&(this._decryptdata=e.getDecryptData(this.sn))}}abortRequests(){var t,e;null==(t=this.loader)||t.abort(),null==(e=this.keyLoader)||e.abort()}setElementaryStreamInfo(t,e,s,i,r,n=!1){const{elementaryStreams:o}=this,a=o[t];a?(a.startPTS=Math.min(a.startPTS,e),a.endPTS=Math.max(a.endPTS,s),a.startDTS=Math.min(a.startDTS,i),a.endDTS=Math.max(a.endDTS,r)):o[t]={startPTS:e,endPTS:s,startDTS:i,endDTS:r,partial:n}}}class RA extends CA{constructor(t,e,s,i,r){super(s),this.fragOffset=0,this.duration=0,this.gap=!1,this.independent=!1,this.relurl=void 0,this.fragment=void 0,this.index=void 0,this.duration=t.decimalFloatingPoint("DURATION"),this.gap=t.bool("GAP"),this.independent=t.bool("INDEPENDENT"),this.relurl=t.enumeratedString("URI"),this.fragment=e,this.index=i;const n=t.enumeratedString("BYTERANGE");n&&this.setByteRange(n,r),r&&(this.fragOffset=r.fragOffset+r.duration)}get start(){return this.fragment.start+this.fragOffset}get end(){return this.start+this.duration}get loaded(){const{elementaryStreams:t}=this;return!!(t.audio||t.video||t.audiovideo)}}function PA(t,e){const s=Object.getPrototypeOf(t);if(s){const t=Object.getOwnPropertyDescriptor(s,e);return t||PA(s,e)}}const xA=Math.pow(2,32)-1,MA=[].push,BA={video:1,audio:2,id3:3,text:4};function FA(t){return String.fromCharCode.apply(null,t)}function UA(t,e){const s=t[e]<<8|t[e+1];return s<0?65536+s:s}function OA(t,e){const s=VA(t,e);return s<0?4294967296+s:s}function NA(t,e){let s=OA(t,e);return s*=Math.pow(2,32),s+=OA(t,e+4),s}function VA(t,e){return t[e]<<24|t[e+1]<<16|t[e+2]<<8|t[e+3]}function jA(t,e,s){t[e]=s>>24,t[e+1]=s>>16&255,t[e+2]=s>>8&255,t[e+3]=255&s}function WA(t,e){const s=[];if(!e.length)return s;const i=t.byteLength;for(let r=0;r<i;){const n=OA(t,r),o=n>1?r+n:i;if(FA(t.subarray(r+4,r+8))===e[0])if(1===e.length)s.push(t.subarray(r+8,o));else{const i=WA(t.subarray(r+8,o),e.slice(1));i.length&&MA.apply(s,i)}r=o}return s}function GA(t){const e=[],s=t[0];let i=8;const r=OA(t,i);i+=4;let n=0,o=0;0===s?(n=OA(t,i),o=OA(t,i+4),i+=8):(n=NA(t,i),o=NA(t,i+8),i+=16),i+=2;let a=t.length+o;const h=UA(t,i);i+=2;for(let s=0;s<h;s++){let s=i;const n=OA(t,s);s+=4;const o=2147483647&n;if(1===(2147483648&n)>>>31)return mA.warn("SIDX has hierarchical references (not supported)"),null;const h=OA(t,s);s+=4,e.push({referenceSize:o,subsegmentDuration:h,info:{duration:h/r,start:a,end:a+o-1}}),a+=o,s+=4,i=s}return{earliestPresentationTime:n,timescale:r,version:s,referencesCount:h,references:e}}function zA(t){const e=[],s=WA(t,["moov","trak"]);for(let t=0;t<s.length;t++){const i=s[t],r=WA(i,["tkhd"])[0];if(r){let t=r[0];const s=OA(r,0===t?12:20),n=WA(i,["mdia","mdhd"])[0];if(n){t=n[0];const r=OA(n,0===t?12:20),o=WA(i,["mdia","hdlr"])[0];if(o){const t=FA(o.subarray(8,12)),n={soun:IA,vide:kA}[t],a=HA(WA(i,["mdia","minf","stbl","stsd"])[0]);n?(e[s]={timescale:r,type:n,stsd:a},e[n]=hA({timescale:r,id:s},a)):e[s]={timescale:r,type:t,stsd:a}}}}}return WA(t,["moov","mvex","trex"]).forEach(t=>{const s=OA(t,4),i=e[s];i&&(i.default={duration:OA(t,12),flags:OA(t,20)})}),e}function HA(t){const e=t.subarray(8),s=e.subarray(86),i=FA(e.subarray(4,8));let r,n=i;const o="enca"===i||"encv"===i;if(o){const t=WA(e,[i])[0];WA(t.subarray("enca"===i?28:78),["sinf"]).forEach(t=>{const e=WA(t,["schm"])[0];if(e){const s=FA(e.subarray(4,8));if("cbcs"===s||"cenc"===s){const e=WA(t,["frma"])[0];e&&(n=FA(e))}}})}const a=n;switch(n){case"avc1":case"avc2":case"avc3":case"avc4":{const t=WA(s,["avcC"])[0];t&&t.length>3&&(n+="."+QA(t[1])+QA(t[2])+QA(t[3]),r=KA("avc1"===a?"dva1":"dvav",s));break}case"mp4a":{const t=WA(e,[i])[0],s=WA(t.subarray(28),["esds"])[0];if(s&&s.length>7){let t=4;if(3!==s[t++])break;t=qA(s,t),t+=2;const e=s[t++];if(128&e&&(t+=2),64&e&&(t+=s[t++]),4!==s[t++])break;t=qA(s,t);const i=s[t++];if(64!==i)break;if(n+="."+QA(i),t+=12,5!==s[t++])break;t=qA(s,t);const r=s[t++];let o=(248&r)>>3;31===o&&(o+=1+((7&r)<<3)+((224&s[t])>>5)),n+="."+o}break}case"hvc1":case"hev1":{const t=WA(s,["hvcC"])[0];if(t&&t.length>12){const e=t[1],s=["","A","B","C"][e>>6],i=31&e,r=OA(t,2),o=(32&e)>>5?"H":"L",a=t[12],h=t.subarray(6,12);n+="."+s+i,n+="."+function(t){let e=0;for(let s=0;s<32;s++)e|=(t>>s&1)<<31-s;return e>>>0}(r).toString(16).toUpperCase(),n+="."+o+a;let l="";for(let t=h.length;t--;){const e=h[t];if(e||l){l="."+e.toString(16).toUpperCase()+l}}n+=l}r=KA("hev1"==a?"dvhe":"dvh1",s);break}case"dvh1":case"dvhe":case"dvav":case"dva1":case"dav1":n=KA(n,s)||n;break;case"vp09":{const t=WA(s,["vpcC"])[0];if(t&&t.length>6){const e=t[4],s=t[5],i=t[6]>>4&15;n+="."+YA(e)+"."+YA(s)+"."+YA(i)}break}case"av01":{const t=WA(s,["av1C"])[0];if(t&&t.length>2){const e=t[1]>>>5,i=31&t[1],o=t[2]>>>7?"H":"M",a=(64&t[2])>>6,h=(32&t[2])>>5,l=2===e&&a?h?12:10:a?10:8,c=(16&t[2])>>4,d=(8&t[2])>>3,u=(4&t[2])>>2,p=3&t[2],f=1,m=1,g=1,y=0;n+="."+e+"."+YA(i)+o+"."+YA(l)+"."+c+"."+d+u+p+"."+YA(f)+"."+YA(m)+"."+YA(g)+"."+y,r=KA("dav1",s)}break}}return{codec:n,encrypted:o,supplemental:r}}function KA(t,e){const s=WA(e,["dvvC"]),i=s.length?s[0]:WA(e,["dvcC"])[0];if(i){const e=i[2]>>1&127,s=i[2]<<5&32|i[3]>>3&31;return t+"."+YA(e)+"."+YA(s)}}function qA(t,e){const s=e+5;for(;128&t[e++]&&e<s;);return e}function QA(t){return("0"+t.toString(16).toUpperCase()).slice(-2)}function YA(t){return(t<10?"0":"")+t}function JA(t){const e=WA(t,["schm"])[0];if(e){const s=FA(e.subarray(4,8));if("cbcs"===s||"cenc"===s)return WA(t,["schi","tenc"])[0]}return null}function XA(t,e){const s=new Uint8Array(t.length+e.length);return s.set(t),s.set(e,t.length),s}function $A(t,e){const s=[],i=e.samples,r=e.timescale,n=e.id;let o=!1;return WA(i,["moof"]).map(a=>{const h=a.byteOffset-8;WA(a,["traf"]).map(a=>{const l=WA(a,["tfdt"]).map(t=>{const e=t[0];let s=OA(t,4);return 1===e&&(s*=Math.pow(2,32),s+=OA(t,8)),s/r})[0];return void 0!==l&&(t=l),WA(a,["tfhd"]).map(l=>{const c=OA(l,4),d=16777215&OA(l,0);let u=0;const p=!!(16&d);let f=0;const m=!!(32&d);let g=8;c===n&&(!!(1&d)&&(g+=8),!!(2&d)&&(g+=4),!!(8&d)&&(u=OA(l,g),g+=4),p&&(f=OA(l,g),g+=4),m&&(g+=4),"video"===e.type&&(o=ZA(e.codec)),WA(a,["trun"]).map(n=>{const a=n[0],l=16777215&OA(n,0),c=!!(1&l);let d=0;const p=!!(4&l),m=!!(256&l);let g=0;const y=!!(512&l);let A=0;const b=!!(1024&l),v=!!(2048&l);let S=0;const E=OA(n,4);let w=8;c&&(d=OA(n,w),w+=4),p&&(w+=4);let T=d+h;for(let h=0;h<E;h++){if(m?(g=OA(n,w),w+=4):g=u,y?(A=OA(n,w),w+=4):A=f,b&&(w+=4),v&&(S=0===a?OA(n,w):VA(n,w),w+=4),e.type===kA){let e=0;for(;e<A;){const n=OA(i,T);if(T+=4,tb(o,i[T])){eb(i.subarray(T,T+n),o?2:1,t+S/r,s)}T+=n,e+=n+4}}t+=g/r}}))})})}),s}function ZA(t){if(!t)return!1;const e=t.substring(0,4);return"hvc1"===e||"hev1"===e||"dvh1"===e||"dvhe"===e}function tb(t,e){if(t){const t=e>>1&63;return 39===t||40===t}return 6===(31&e)}function eb(t,e,s,i){const r=sb(t);let n=0;n+=e;let o=0,a=0,h=0;for(;n<r.length;){o=0;do{if(n>=r.length)break;h=r[n++],o+=h}while(255===h);a=0;do{if(n>=r.length)break;h=r[n++],a+=h}while(255===h);const e=r.length-n;let l=n;if(a<e)n+=a;else if(a>e){mA.error(`Malformed SEI payload. ${a} is too small, only ${e} bytes left to parse.`),i.push({pts:s,originData:new Uint8Array(t)});break}if(4===o){if(181===r[l++]){const e=UA(r,l);if(l+=2,49===e){const e=OA(r,l);if(l+=4,1195456820===e){const e=r[l++];if(3===e){const n=r[l++],a=64&n,h=a?2+3*(31&n):0,c=new Uint8Array(h);if(a){c[0]=n;for(let t=1;t<h;t++)c[t]=r[l++]}i.push({type:e,payloadType:o,pts:s,bytes:c,originData:new Uint8Array(t)})}}}}}else if(5===o&&a>16){const e=[];for(let t=0;t<16;t++){const s=r[l++].toString(16);e.push(1==s.length?"0"+s:s),3!==t&&5!==t&&7!==t&&9!==t||e.push("-")}const n=a-16,h=new Uint8Array(n);for(let t=0;t<n;t++)h[t]=r[l++];i.push({payloadType:o,pts:s,uuid:e.join(""),userData:AA(h),userDataBytes:h,originData:new Uint8Array(t)})}}}function sb(t){const e=t.byteLength,s=[];let i=1;for(;i<e-2;)0===t[i]&&0===t[i+1]&&3===t[i+2]?(s.push(i+2),i+=2):i++;if(0===s.length)return t;const r=e-s.length,n=new Uint8Array(r);let o=0;for(i=0;i<r;o++,i++)o===s[0]&&(o++,s.shift()),n[i]=t[o];return n}function ib(t,e,s){if(16!==t.byteLength)throw new RangeError("Invalid system id");let i,r,n;i=0,r=new Uint8Array,n=new Uint8Array;const o=new Uint8Array(4);return s&&s.byteLength>0&&new DataView(o.buffer).setUint32(0,s.byteLength,!1),function(t,...e){const s=e.length;let i=8,r=s;for(;r--;)i+=e[r].byteLength;const n=new Uint8Array(i);for(n[0]=i>>24&255,n[1]=i>>16&255,n[2]=i>>8&255,n[3]=255&i,n.set(t,4),r=0,i=8;r<s;r++)n.set(e[r],i),i+=e[r].byteLength;return n}([112,115,115,104],new Uint8Array([0,0,0,0]),t,n,r,o,s||new Uint8Array)}function rb(t){const e=t.getUint32(0),s=t.byteOffset,i=t.byteLength;if(i<e)return{offset:s,size:i};if(1886614376!==t.getUint32(4))return{offset:s,size:e};const r=t.getUint32(8)>>>24;if(0!==r&&1!==r)return{offset:s,size:e};const n=t.buffer,o=bA(new Uint8Array(n,s+12,16)),a=t.getUint32(28);let h=null,l=null;if(0===r){if(e-32<a||a<22)return{offset:s,size:e};l=new Uint8Array(n,s+32,a)}else if(1===r){if(!a||i<s+32+16*a+16)return{offset:s,size:e};h=[];for(let t=0;t<a;t++)h.push(new Uint8Array(n,s+32+16*t,16))}return{version:r,systemId:o,kids:h,data:l,offset:s,size:e}}const nb=()=>/\(Windows.+Firefox\//i.test(navigator.userAgent),ob={audio:{a3ds:1,"ac-3":.95,"ac-4":1,alac:.9,alaw:1,dra1:1,"dts+":1,"dts-":1,dtsc:1,dtse:1,dtsh:1,"ec-3":.9,enca:1,fLaC:.9,flac:.9,FLAC:.9,g719:1,g726:1,m4ae:1,mha1:1,mha2:1,mhm1:1,mhm2:1,mlpa:1,mp4a:1,"raw ":1,Opus:1,opus:1,samr:1,sawb:1,sawp:1,sevc:1,sqcp:1,ssmv:1,twos:1,ulaw:1},video:{avc1:1,avc2:1,avc3:1,avc4:1,avcp:1,av01:.8,dav1:.8,drac:1,dva1:1,dvav:1,dvh1:.7,dvhe:.7,encv:1,hev1:.75,hvc1:.75,mjp2:1,mp4v:1,mvc1:1,mvc2:1,mvc3:1,mvc4:1,resv:1,rv60:1,s263:1,svc1:1,svc2:1,"vc-1":1,vp08:1,vp09:.9},text:{stpp:1,wvtt:1}};function ab(t,e){const s=ob[e];return!!s&&!!s[t.slice(0,4)]}function hb(t,e,s=!0){return!t.split(",").some(t=>!lb(t,e,s))}function lb(t,e,s=!0){var i;const r=gA(s);return null!=(i=null==r?void 0:r.isTypeSupported(cb(t,e)))&&i}function cb(t,e){return`${e}/mp4;codecs=${t}`}function db(t){if(t){const e=t.substring(0,4);return ob.video[e]}return 2}function ub(t){const e=nb();return t.split(",").reduce((t,s)=>{const i=e&&ZA(s)?9:ob.video[s];return i?(2*i+t)/(t?3:2):(ob.audio[s]+t)/(t?2:1)},0)}const pb={};const fb=/flac|opus|mp4a\.40\.34/i;function mb(t,e=!0){return t.replace(fb,t=>function(t,e=!0){if(pb[t])return pb[t];const s={flac:["flac","fLaC","FLAC"],opus:["opus","Opus"],"mp4a.40.34":["mp3"]}[t];for(let r=0;r<s.length;r++){var i;if(lb(s[r],"audio",e))return pb[t]=s[r],s[r];if("mp3"===s[r]&&null!=(i=gA(e))&&i.isTypeSupported("audio/mpeg"))return""}return t}(t.toLowerCase(),e))}function gb(t,e){if(t&&(t.length>4||-1!==["ac-3","ec-3","alac","fLaC","Opus"].indexOf(t)))return t;if(e){const s=e.split(",");if(s.length>1){if(t)for(let e=s.length;e--;)if(s[e].substring(0,4)===t.substring(0,4))return s[e];return s[0]}}return e||t}function yb(t){if(t.startsWith("av01.")){const e=t.split("."),s=["0","111","01","01","01","0"];for(let t=e.length;t>4&&t<10;t++)e[t]=s[t-4];return e.join(".")}return t}function Ab(t){const e=gA(t)||{isTypeSupported:()=>!1};return{mpeg:e.isTypeSupported("audio/mpeg"),mp3:e.isTypeSupported('audio/mp4; codecs="mp3"'),ac3:e.isTypeSupported('audio/mp4; codecs="ac-3"')}}function bb(t){return t.replace(/^.+codecs=["']?([^"']+).*$/,"$1")}const vb={supported:!0,configurations:[],decodingInfoResults:[{supported:!0,powerEfficient:!0,smooth:!0}]};function Sb(t,e){return{supported:!1,configurations:e,decodingInfoResults:[{supported:!1,smooth:!1,powerEfficient:!1}],error:t}}const Eb={};function wb(t,e,s,i,r,n){const o=t.audioCodec?t.audioGroups:null,a=null==n?void 0:n.audioCodec,h=null==n?void 0:n.channels,l=h?parseInt(h):a?1/0:2;let c=null;if(null!=o&&o.length)try{c=1===o.length&&o[0]?e.groups[o[0]].channels:o.reduce((t,s)=>{if(s){const i=e.groups[s];if(!i)throw new Error(`Audio track group ${s} not found`);Object.keys(i.channels).forEach(e=>{t[e]=(t[e]||0)+i.channels[e]})}return t},{2:0})}catch(t){return!0}return void 0!==t.videoCodec&&(t.width>1920&&t.height>1088||t.height>1920&&t.width>1088||t.frameRate>Math.max(i,30)||"SDR"!==t.videoRange&&t.videoRange!==s||t.bitrate>Math.max(r,8e6))||!!c&&zy(l)&&Object.keys(c).some(t=>parseInt(t)>l)}function Tb(t,e,s){const i=t.videoCodec,r=t.audioCodec;if(!i&&!r||!s)return Promise.resolve(vb);const n=[];if(i){const e={width:t.width,height:t.height,bitrate:Math.ceil(Math.max(.9*t.bitrate,t.averageBitrate)),framerate:t.frameRate||30},s=t.videoRange;"SDR"!==s&&(e.transferFunction=s.toLowerCase());const r=i.split(","),o=navigator.userAgent;if(r.some(t=>ZA(t))&&nb())return Promise.resolve(Sb(new Error(`Overriding Windows Firefox HEVC MediaCapabilities result based on user-agent sting: (${o})`),n));n.push.apply(n,r.map(t=>({type:"media-source",video:hA(hA({},e),{},{contentType:cb(yb(t),"video")})})))}return r&&t.audioGroups&&t.audioGroups.forEach(t=>{var s;t&&(null==(s=e.groups[t])||s.tracks.forEach(e=>{if(e.groupId===t){const t=e.channels||"",s=parseFloat(t);zy(s)&&s>2&&n.push.apply(n,r.split(",").map(t=>({type:"media-source",audio:{contentType:cb(t,"audio"),channels:""+s}})))}}))}),Promise.all(n.map(t=>{const e=function(t){const{audio:e,video:s}=t,i=s||e;if(i){const t=bb(i.contentType);if(s)return`r${s.height}x${s.width}f${Math.ceil(s.framerate)}${s.transferFunction||"sd"}_${t}_${Math.ceil(s.bitrate/1e5)}`;if(e)return`c${e.channels}${e.spatialRendering?"s":"n"}_${t}`}return""}(t);return Eb[e]||(Eb[e]=s.decodingInfo(t))})).then(t=>({supported:!t.some(t=>!t.supported),configurations:n,decodingInfoResults:t})).catch(t=>({supported:!1,configurations:n,decodingInfoResults:[],error:t}))}const Ib=["NONE","TYPE-0","TYPE-1",null];const kb=["SDR","PQ","HLG"];var _b="",Cb="YES",Db="v2";function Lb(t){const{canSkipUntil:e,canSkipDateRanges:s,age:i}=t;return e&&i<e/2?s?Db:Cb:_b}class Rb{constructor(t,e,s){this.msn=void 0,this.part=void 0,this.skip=void 0,this.msn=t,this.part=e,this.skip=s}addDirectives(t){const e=new self.URL(t);return void 0!==this.msn&&e.searchParams.set("_HLS_msn",this.msn.toString()),void 0!==this.part&&e.searchParams.set("_HLS_part",this.part.toString()),this.skip&&e.searchParams.set("_HLS_skip",this.skip),e.href}}class Pb{constructor(t){if(this._attrs=void 0,this.audioCodec=void 0,this.bitrate=void 0,this.codecSet=void 0,this.url=void 0,this.frameRate=void 0,this.height=void 0,this.id=void 0,this.name=void 0,this.supplemental=void 0,this.videoCodec=void 0,this.width=void 0,this.details=void 0,this.fragmentError=0,this.loadError=0,this.loaded=void 0,this.realBitrate=0,this.supportedPromise=void 0,this.supportedResult=void 0,this._avgBitrate=0,this._audioGroups=void 0,this._subtitleGroups=void 0,this._urlId=0,this.url=[t.url],this._attrs=[t.attrs],this.bitrate=t.bitrate,t.details&&(this.details=t.details),this.id=t.id||0,this.name=t.name,this.width=t.width||0,this.height=t.height||0,this.frameRate=t.attrs.optionalFloat("FRAME-RATE",0),this._avgBitrate=t.attrs.decimalInteger("AVERAGE-BANDWIDTH"),this.audioCodec=t.audioCodec,this.videoCodec=t.videoCodec,this.codecSet=[t.videoCodec,t.audioCodec].filter(t=>!!t).map(t=>t.substring(0,4)).join(","),"supplemental"in t){var e;this.supplemental=t.supplemental;const s=null==(e=t.supplemental)?void 0:e.videoCodec;s&&s!==t.videoCodec&&(this.codecSet+=`,${s.substring(0,4)}`)}this.addGroupId("audio",t.attrs.AUDIO),this.addGroupId("text",t.attrs.SUBTITLES)}get maxBitrate(){return Math.max(this.realBitrate,this.bitrate)}get averageBitrate(){return this._avgBitrate||this.realBitrate||this.bitrate}get attrs(){return this._attrs[0]}get codecs(){return this.attrs.CODECS||""}get pathwayId(){return this.attrs["PATHWAY-ID"]||"."}get videoRange(){return this.attrs["VIDEO-RANGE"]||"SDR"}get score(){return this.attrs.optionalFloat("SCORE",0)}get uri(){return this.url[0]||""}hasAudioGroup(t){return xb(this._audioGroups,t)}hasSubtitleGroup(t){return xb(this._subtitleGroups,t)}get audioGroups(){return this._audioGroups}get subtitleGroups(){return this._subtitleGroups}addGroupId(t,e){if(e)if("audio"===t){let t=this._audioGroups;t||(t=this._audioGroups=[]),-1===t.indexOf(e)&&t.push(e)}else if("text"===t){let t=this._subtitleGroups;t||(t=this._subtitleGroups=[]),-1===t.indexOf(e)&&t.push(e)}}get urlId(){return 0}set urlId(t){}get audioGroupIds(){return this.audioGroups?[this.audioGroupId]:void 0}get textGroupIds(){return this.subtitleGroups?[this.textGroupId]:void 0}get audioGroupId(){var t;return null==(t=this.audioGroups)?void 0:t[0]}get textGroupId(){var t;return null==(t=this.subtitleGroups)?void 0:t[0]}addFallback(){}}function xb(t,e){return!(!e||!t)&&-1!==t.indexOf(e)}function Mb(t,e){let s=!1,i=[];if(t&&(s="SDR"!==t,i=[t]),e){i=e.allowedVideoRanges||kb.slice(0);const t="SDR"!==i.join("")&&!e.videoCodec;s=void 0!==e.preferHDR?e.preferHDR:t&&function(){if("function"==typeof matchMedia){const t=matchMedia("(dynamic-range: high)"),e=matchMedia("bad query");if(t.media!==e.media)return!0===t.matches}return!1}(),s||(i=["SDR"])}return{preferHDR:s,allowedVideoRanges:i}}const Bb=(t,e)=>JSON.stringify(t,(t=>{const e=new WeakSet;return(s,i)=>{if(t&&(i=t(s,i)),"object"==typeof i&&null!==i){if(e.has(i))return;e.add(i)}return i}})(e));function Fb(t,e){mA.log(`[abr] start candidates with "${t}" ignored because ${e}`)}function Ub(t){return t.reduce((t,e)=>{let s=t.groups[e.groupId];s||(s=t.groups[e.groupId]={tracks:[],channels:{2:0},hasDefault:!1,hasAutoSelect:!1}),s.tracks.push(e);const i=e.channels||"2";return s.channels[i]=(s.channels[i]||0)+1,s.hasDefault=s.hasDefault||e.default,s.hasAutoSelect=s.hasAutoSelect||e.autoselect,s.hasDefault&&(t.hasDefaultAudio=!0),s.hasAutoSelect&&(t.hasAutoSelectAudio=!0),t},{hasDefaultAudio:!1,hasAutoSelectAudio:!1,groups:{}})}function Ob(t){if(!t)return t;const{lang:e,assocLang:s,characteristics:i,channels:r,audioCodec:n}=t;return{lang:e,assocLang:s,characteristics:i,channels:r,audioCodec:n}}function Nb(t,e,s){if("attrs"in t){const s=e.indexOf(t);if(-1!==s)return s}for(let i=0;i<e.length;i++){if(Vb(t,e[i],s))return i}return-1}function Vb(t,e,s){const{groupId:i,name:r,lang:n,assocLang:o,default:a}=t,h=t.forced;return(void 0===i||e.groupId===i)&&(void 0===r||e.name===r)&&(void 0===n||function(t,e="--"){if(t.length===e.length)return t===e;return t.startsWith(e)||e.startsWith(t)}(n,e.lang))&&(void 0===n||e.assocLang===o)&&(void 0===a||e.default===a)&&(void 0===h||e.forced===h)&&(!("characteristics"in t)||function(t,e=""){const s=t.split(","),i=e.split(",");return s.length===i.length&&!s.some(t=>-1===i.indexOf(t))}(t.characteristics||"",e.characteristics))&&(void 0===s||s(t,e))}function jb(t,e){const{audioCodec:s,channels:i}=t;return!(void 0!==s&&(e.audioCodec||"").substring(0,4)!==s.substring(0,4)||void 0!==i&&i!==(e.channels||"2"))}function Wb(t,e,s){for(let i=e;i>-1;i--)if(s(t[i]))return i;for(let i=e+1;i<t.length;i++)if(s(t[i]))return i;return-1}function Gb(t,e){var s;return!!t&&t!==(null==(s=e.loadLevelObj)?void 0:s.uri)}const zb=function(t,e){let s=0,i=t.length-1,r=null,n=null;for(;s<=i;){r=(s+i)/2|0,n=t[r];const o=e(n);if(o>0)s=r+1;else{if(!(o<0))return n;i=r-1}}return null};function Hb(t,e,s=0,i=0,r=.005){let n=null;if(t){n=e[1+t.sn-e[0].sn]||null;const i=t.endDTS-s;i>0&&i<15e-7&&(s+=15e-7),n&&t.level!==n.level&&n.end<=t.end&&(n=e[2+t.sn-e[0].sn]||null)}else 0===s&&0===e[0].start&&(n=e[0]);if(n&&((!t||t.level===n.level)&&0===Kb(s,i,n)||function(t,e,s){if(e&&0===e.start&&e.level<t.level&&(e.endPTS||0)>0){const i=e.tagList.reduce((t,e)=>("INF"===e[0]&&(t+=parseFloat(e[1])),t),s);return t.start<=i}return!1}(n,t,Math.min(r,i))))return n;const o=zb(e,Kb.bind(null,s,i));return!o||o===t&&n?n:o}function Kb(t=0,e=0,s){if(s.start<=t&&s.start+s.duration>t)return 0;const i=Math.min(e,s.duration+(s.deltaPTS?s.deltaPTS:0));return s.start+s.duration-i<=t?1:s.start-i>t&&s.start?-1:0}function qb(t,e,s){const i=1e3*Math.min(e,s.duration+(s.deltaPTS?s.deltaPTS:0));return(s.endProgramDateTime||0)-i>t}function Qb(t,e,s){if(t&&t.startCC<=e&&t.endCC>=e){let i=t.fragments;const{fragmentHint:r}=t;let n;return r&&(i=i.concat(r)),zb(i,t=>t.cc<e?1:t.cc>e?-1:(n=t,t.end<=s?1:t.start>s?-1:0)),n||null}return null}function Yb(t){switch(t.details){case Qy.FRAG_LOAD_TIMEOUT:case Qy.KEY_LOAD_TIMEOUT:case Qy.LEVEL_LOAD_TIMEOUT:case Qy.MANIFEST_LOAD_TIMEOUT:return!0}return!1}function Jb(t,e){const s=Yb(e);return t.default[(s?"timeout":"error")+"Retry"]}function Xb(t,e){const s="linear"===t.backoff?1:Math.pow(2,e);return Math.min(s*t.retryDelayMs,t.maxRetryDelayMs)}function $b(t){return hA(hA({},t),{errorRetry:null,timeoutRetry:null})}function Zb(t,e,s,i){if(!t)return!1;const r=null==i?void 0:i.code,n=e<t.maxNumRetry&&(function(t){return 0===t&&!1===navigator.onLine||!!t&&(t<400||t>499)}(r)||!!s);return t.shouldRetry?t.shouldRetry(t,e,s,i,n):n}var tv=0,ev=2,sv=3,iv=5,rv=0,nv=1,ov=2;function av(t){const e={action:tv,flags:rv};return t&&(e.resolved=!0),e}var hv="NOT_LOADED",lv="APPENDING",cv="PARTIAL",dv="OK";class uv{constructor(t){this.activePartLists=Object.create(null),this.endListFragments=Object.create(null),this.fragments=Object.create(null),this.timeRanges=Object.create(null),this.bufferPadding=.2,this.hls=void 0,this.hasGaps=!1,this.hls=t,this._registerListeners()}_registerListeners(){const{hls:t}=this;t.on(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.on(Yy.BUFFER_APPENDED,this.onBufferAppended,this),t.on(Yy.FRAG_BUFFERED,this.onFragBuffered,this),t.on(Yy.FRAG_LOADED,this.onFragLoaded,this)}_unregisterListeners(){const{hls:t}=this;t.off(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.off(Yy.BUFFER_APPENDED,this.onBufferAppended,this),t.off(Yy.FRAG_BUFFERED,this.onFragBuffered,this),t.off(Yy.FRAG_LOADED,this.onFragLoaded,this)}destroy(){this._unregisterListeners(),this.fragments=this.activePartLists=this.endListFragments=this.timeRanges=null}getAppendedFrag(t,e){const s=this.activePartLists[e];if(s)for(let e=s.length;e--;){const i=s[e];if(!i)break;const r=i.end;if(i.start<=t&&null!==r&&t<=r)return i}return this.getBufferedFrag(t,e)}getBufferedFrag(t,e){return this.getFragAtPos(t,e,!0)}getFragAtPos(t,e,s){const{fragments:i}=this,r=Object.keys(i);for(let n=r.length;n--;){const o=i[r[n]];if((null==o?void 0:o.body.type)===e&&(!s||o.buffered)){const e=o.body;if(e.start<=t&&t<=e.end)return e}}return null}detectEvictedFragments(t,e,s,i,r){this.timeRanges&&(this.timeRanges[t]=e);const n=(null==i?void 0:i.fragment.sn)||-1;Object.keys(this.fragments).forEach(i=>{const o=this.fragments[i];if(!o)return;if(n>=o.body.sn)return;if(!o.buffered&&(!o.loaded||r))return void(o.body.type===s&&this.removeFragment(o.body));const a=o.range[t];a&&(0!==a.time.length?a.time.some(t=>{const s=!this.isTimeBuffered(t.startPTS,t.endPTS,e);return s&&this.removeFragment(o.body),s}):this.removeFragment(o.body))})}detectPartialFragments(t){const e=this.timeRanges;if(!e||"initSegment"===t.frag.sn)return;const s=t.frag,i=fv(s),r=this.fragments[i];if(!r||r.buffered&&s.gap)return;const n=!s.relurl;if(Object.keys(e).forEach(i=>{const o=s.elementaryStreams[i];if(!o)return;const a=e[i],h=n||!0===o.partial;r.range[i]=this.getBufferedTimes(s,t.part,h,a)}),r.loaded=null,Object.keys(r.range).length){r.buffered=!0;(r.body.endList=s.endList||r.body.endList)&&(this.endListFragments[r.body.type]=r),pv(r)||this.removeParts(s.sn-1,s.type)}else this.removeFragment(r.body)}removeParts(t,e){const s=this.activePartLists[e];s&&(this.activePartLists[e]=mv(s,e=>e.fragment.sn>=t))}fragBuffered(t,e){const s=fv(t);let i=this.fragments[s];!i&&e&&(i=this.fragments[s]={body:t,appendedPTS:null,loaded:null,buffered:!1,range:Object.create(null)},t.gap&&(this.hasGaps=!0)),i&&(i.loaded=null,i.buffered=!0)}getBufferedTimes(t,e,s,i){const r={time:[],partial:s},n=t.start,o=t.end,a=t.minEndPTS||o,h=t.maxStartPTS||n;for(let t=0;t<i.length;t++){const e=i.start(t)-this.bufferPadding,s=i.end(t)+this.bufferPadding;if(h>=e&&a<=s){r.time.push({startPTS:Math.max(n,i.start(t)),endPTS:Math.min(o,i.end(t))});break}if(n<s&&o>e){const e=Math.max(n,i.start(t)),s=Math.min(o,i.end(t));s>e&&(r.partial=!0,r.time.push({startPTS:e,endPTS:s}))}else if(o<=e)break}return r}getPartialFragment(t){let e,s,i,r=null,n=0;const{bufferPadding:o,fragments:a}=this;return Object.keys(a).forEach(h=>{const l=a[h];l&&pv(l)&&(s=l.body.start-o,i=l.body.end+o,t>=s&&t<=i&&(e=Math.min(t-s,i-t),n<=e&&(r=l.body,n=e)))}),r}isEndListAppended(t){const e=this.endListFragments[t];return void 0!==e&&(e.buffered||pv(e))}getState(t){const e=fv(t),s=this.fragments[e];return s?s.buffered?pv(s)?cv:dv:lv:hv}isTimeBuffered(t,e,s){let i,r;for(let n=0;n<s.length;n++){if(i=s.start(n)-this.bufferPadding,r=s.end(n)+this.bufferPadding,t>=i&&e<=r)return!0;if(e<=i)return!1}return!1}onManifestLoading(){this.removeAllFragments()}onFragLoaded(t,e){if("initSegment"===e.frag.sn||e.frag.bitrateTest)return;const s=e.frag,i=e.part?null:e,r=fv(s);this.fragments[r]={body:s,appendedPTS:null,loaded:i,buffered:!1,range:Object.create(null)}}onBufferAppended(t,e){const{frag:s,part:i,timeRanges:r,type:n}=e;if("initSegment"===s.sn)return;const o=s.type;if(i){let t=this.activePartLists[o];t||(this.activePartLists[o]=t=[]),t.push(i)}this.timeRanges=r;const a=r[n];this.detectEvictedFragments(n,a,o,i)}onFragBuffered(t,e){this.detectPartialFragments(e)}hasFragment(t){const e=fv(t);return!!this.fragments[e]}hasFragments(t){const{fragments:e}=this,s=Object.keys(e);if(!t)return s.length>0;for(let i=s.length;i--;){const r=e[s[i]];if((null==r?void 0:r.body.type)===t)return!0}return!1}hasParts(t){var e;return!(null==(e=this.activePartLists[t])||!e.length)}removeFragmentsInRange(t,e,s,i,r){i&&!this.hasGaps||Object.keys(this.fragments).forEach(n=>{const o=this.fragments[n];if(!o)return;const a=o.body;a.type!==s||i&&!a.gap||a.start<e&&a.end>t&&(o.buffered||r)&&this.removeFragment(a)})}removeFragment(t){const e=fv(t);t.clearElementaryStreamInfo();const s=this.activePartLists[t.type];if(s){const e=t.sn;this.activePartLists[t.type]=mv(s,t=>t.fragment.sn!==e)}delete this.fragments[e],t.endList&&delete this.endListFragments[t.type]}removeAllFragments(){var t,e;this.fragments=Object.create(null),this.endListFragments=Object.create(null),this.activePartLists=Object.create(null),this.hasGaps=!1;const s=null==(t=this.hls)||null==(e=t.latestLevelDetails)?void 0:e.partList;s&&s.forEach(t=>t.clearElementaryStreamInfo())}}function pv(t){var e,s,i;return t.buffered&&(t.body.gap||(null==(e=t.range.video)?void 0:e.partial)||(null==(s=t.range.audio)?void 0:s.partial)||(null==(i=t.range.audiovideo)?void 0:i.partial))}function fv(t){return`${t.type}_${t.level}_${t.sn}`}function mv(t,e){return t.filter(t=>{const s=e(t);return s||t.clearElementaryStreamInfo(),s})}var gv=0,yv=1;class Av{constructor(t,e,s){this.subtle=void 0,this.aesIV=void 0,this.aesMode=void 0,this.subtle=t,this.aesIV=e,this.aesMode=s}decrypt(t,e){switch(this.aesMode){case gv:return this.subtle.decrypt({name:"AES-CBC",iv:this.aesIV},e,t);case yv:return this.subtle.decrypt({name:"AES-CTR",counter:this.aesIV,length:64},e,t);default:throw new Error(`[AESCrypto] invalid aes mode ${this.aesMode}`)}}}class bv{constructor(){this.rcon=[0,1,2,4,8,16,32,64,128,27,54],this.subMix=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)],this.invSubMix=[new Uint32Array(256),new Uint32Array(256),new Uint32Array(256),new Uint32Array(256)],this.sBox=new Uint32Array(256),this.invSBox=new Uint32Array(256),this.key=new Uint32Array(0),this.ksRows=0,this.keySize=0,this.keySchedule=void 0,this.invKeySchedule=void 0,this.initTable()}uint8ArrayToUint32Array_(t){const e=new DataView(t),s=new Uint32Array(4);for(let t=0;t<4;t++)s[t]=e.getUint32(4*t);return s}initTable(){const t=this.sBox,e=this.invSBox,s=this.subMix,i=s[0],r=s[1],n=s[2],o=s[3],a=this.invSubMix,h=a[0],l=a[1],c=a[2],d=a[3],u=new Uint32Array(256);let p=0,f=0,m=0;for(m=0;m<256;m++)u[m]=m<128?m<<1:m<<1^283;for(m=0;m<256;m++){let s=f^f<<1^f<<2^f<<3^f<<4;s=s>>>8^255&s^99,t[p]=s,e[s]=p;const a=u[p],m=u[a],g=u[m];let y=257*u[s]^16843008*s;i[p]=y<<24|y>>>8,r[p]=y<<16|y>>>16,n[p]=y<<8|y>>>24,o[p]=y,y=16843009*g^65537*m^257*a^16843008*p,h[s]=y<<24|y>>>8,l[s]=y<<16|y>>>16,c[s]=y<<8|y>>>24,d[s]=y,p?(p=a^u[u[u[g^a]]],f^=u[u[f]]):p=f=1}}expandKey(t){const e=this.uint8ArrayToUint32Array_(t);let s=!0,i=0;for(;i<e.length&&s;)s=e[i]===this.key[i],i++;if(s)return;this.key=e;const r=this.keySize=e.length;if(4!==r&&6!==r&&8!==r)throw new Error("Invalid aes key size="+r);const n=this.ksRows=4*(r+6+1);let o,a;const h=this.keySchedule=new Uint32Array(n),l=this.invKeySchedule=new Uint32Array(n),c=this.sBox,d=this.rcon,u=this.invSubMix,p=u[0],f=u[1],m=u[2],g=u[3];let y,A;for(o=0;o<n;o++)o<r?y=h[o]=e[o]:(A=y,o%r===0?(A=A<<8|A>>>24,A=c[A>>>24]<<24|c[A>>>16&255]<<16|c[A>>>8&255]<<8|c[255&A],A^=d[o/r|0]<<24):r>6&&o%r===4&&(A=c[A>>>24]<<24|c[A>>>16&255]<<16|c[A>>>8&255]<<8|c[255&A]),h[o]=y=(h[o-r]^A)>>>0);for(a=0;a<n;a++)o=n-a,A=3&a?h[o]:h[o-4],l[a]=a<4||o<=4?A:p[c[A>>>24]]^f[c[A>>>16&255]]^m[c[A>>>8&255]]^g[c[255&A]],l[a]=l[a]>>>0}networkToHostOrderSwap(t){return t<<24|(65280&t)<<8|(16711680&t)>>8|t>>>24}decrypt(t,e,s){const i=this.keySize+6,r=this.invKeySchedule,n=this.invSBox,o=this.invSubMix,a=o[0],h=o[1],l=o[2],c=o[3],d=this.uint8ArrayToUint32Array_(s);let u=d[0],p=d[1],f=d[2],m=d[3];const g=new Int32Array(t),y=new Int32Array(g.length);let A,b,v,S,E,w,T,I,k,_,C,D,L,R;const P=this.networkToHostOrderSwap;for(;e<g.length;){for(k=P(g[e]),_=P(g[e+1]),C=P(g[e+2]),D=P(g[e+3]),E=k^r[0],w=D^r[1],T=C^r[2],I=_^r[3],L=4,R=1;R<i;R++)A=a[E>>>24]^h[w>>16&255]^l[T>>8&255]^c[255&I]^r[L],b=a[w>>>24]^h[T>>16&255]^l[I>>8&255]^c[255&E]^r[L+1],v=a[T>>>24]^h[I>>16&255]^l[E>>8&255]^c[255&w]^r[L+2],S=a[I>>>24]^h[E>>16&255]^l[w>>8&255]^c[255&T]^r[L+3],E=A,w=b,T=v,I=S,L+=4;A=n[E>>>24]<<24^n[w>>16&255]<<16^n[T>>8&255]<<8^n[255&I]^r[L],b=n[w>>>24]<<24^n[T>>16&255]<<16^n[I>>8&255]<<8^n[255&E]^r[L+1],v=n[T>>>24]<<24^n[I>>16&255]<<16^n[E>>8&255]<<8^n[255&w]^r[L+2],S=n[I>>>24]<<24^n[E>>16&255]<<16^n[w>>8&255]<<8^n[255&T]^r[L+3],y[e]=P(A^u),y[e+1]=P(S^p),y[e+2]=P(v^f),y[e+3]=P(b^m),u=k,p=_,f=C,m=D,e+=4}return y.buffer}}class vv{constructor(t,e,s){this.subtle=void 0,this.key=void 0,this.aesMode=void 0,this.subtle=t,this.key=e,this.aesMode=s}expandKey(){const t=function(t){switch(t){case gv:return"AES-CBC";case yv:return"AES-CTR";default:throw new Error(`[FastAESKey] invalid aes mode ${t}`)}}(this.aesMode);return this.subtle.importKey("raw",this.key,{name:t},!1,["encrypt","decrypt"])}}class Sv{constructor(t,{removePKCS7Padding:e=!0}={}){if(this.logEnabled=!0,this.removePKCS7Padding=void 0,this.subtle=null,this.softwareDecrypter=null,this.key=null,this.fastAesKey=null,this.remainderData=null,this.currentIV=null,this.currentResult=null,this.useSoftware=void 0,this.enableSoftwareAES=void 0,this.enableSoftwareAES=t.enableSoftwareAES,this.removePKCS7Padding=e,e)try{const t=self.crypto;t&&(this.subtle=t.subtle||t.webkitSubtle)}catch(t){}this.useSoftware=!this.subtle}destroy(){this.subtle=null,this.softwareDecrypter=null,this.key=null,this.fastAesKey=null,this.remainderData=null,this.currentIV=null,this.currentResult=null}isSync(){return this.useSoftware}flush(){const{currentResult:t,remainderData:e}=this;if(!t||e)return this.reset(),null;const s=new Uint8Array(t);return this.reset(),this.removePKCS7Padding?function(t){const e=t.byteLength,s=e&&new DataView(t.buffer).getUint8(e-1);return s?t.slice(0,e-s):t}(s):s}reset(){this.currentResult=null,this.currentIV=null,this.remainderData=null,this.softwareDecrypter&&(this.softwareDecrypter=null)}decrypt(t,e,s,i){return this.useSoftware?new Promise((r,n)=>{const o=ArrayBuffer.isView(t)?t:new Uint8Array(t);this.softwareDecrypt(o,e,s,i);const a=this.flush();a?r(a.buffer):n(new Error("[softwareDecrypt] Failed to decrypt data"))}):this.webCryptoDecrypt(new Uint8Array(t),e,s,i)}softwareDecrypt(t,e,s,i){const{currentIV:r,currentResult:n,remainderData:o}=this;if(i!==gv||16!==e.byteLength)return mA.warn("SoftwareDecrypt: can only handle AES-128-CBC"),null;this.logOnce("JS AES decrypt"),o&&(t=XA(o,t),this.remainderData=null);const a=this.getValidChunk(t);if(!a.length)return null;r&&(s=r);let h=this.softwareDecrypter;h||(h=this.softwareDecrypter=new bv),h.expandKey(e);const l=n;return this.currentResult=h.decrypt(a.buffer,0,s),this.currentIV=a.slice(-16).buffer,l||null}webCryptoDecrypt(t,e,s,i){if(this.key!==e||!this.fastAesKey){if(!this.subtle)return Promise.resolve(this.onWebCryptoError(t,e,s,i));this.key=e,this.fastAesKey=new vv(this.subtle,e,i)}return this.fastAesKey.expandKey().then(e=>{if(!this.subtle)return Promise.reject(new Error("web crypto not initialized"));this.logOnce("WebCrypto AES decrypt");return new Av(this.subtle,new Uint8Array(s),i).decrypt(t.buffer,e)}).catch(r=>(mA.warn(`[decrypter]: WebCrypto Error, disable WebCrypto API, ${r.name}: ${r.message}`),this.onWebCryptoError(t,e,s,i)))}onWebCryptoError(t,e,s,i){const r=this.enableSoftwareAES;if(r){this.useSoftware=!0,this.logEnabled=!0,this.softwareDecrypt(t,e,s,i);const r=this.flush();if(r)return r.buffer}throw new Error("WebCrypto"+(r?" and softwareDecrypt":"")+": failed to decrypt data")}getValidChunk(t){let e=t;const s=t.length-t.length%16;return s!==t.length&&(e=t.slice(0,s),this.remainderData=t.slice(s)),e}logOnce(t){this.logEnabled&&(mA.log(`[decrypter]: ${t}`),this.logEnabled=!1)}}const Ev=Math.pow(2,17);class wv{constructor(t){this.config=void 0,this.loader=null,this.partLoadTimeout=-1,this.config=t}destroy(){this.loader&&(this.loader.destroy(),this.loader=null)}abort(){this.loader&&this.loader.abort()}load(t,e){const s=t.url;if(!s)return Promise.reject(new kv({type:qy.NETWORK_ERROR,details:Qy.FRAG_LOAD_ERROR,fatal:!1,frag:t,error:new Error("Fragment does not have a "+(s?"part list":"url")),networkDetails:null}));this.abort();const i=this.config,r=i.fLoader,n=i.loader;return new Promise((o,a)=>{if(this.loader&&this.loader.destroy(),t.gap){if(t.tagList.some(t=>"GAP"===t[0]))return void a(Iv(t));t.gap=!1}const h=this.loader=r?new r(i):new n(i),l=Tv(t);t.loader=h;const c=$b(i.fragLoadPolicy.default),d={loadPolicy:c,timeout:c.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0,highWaterMark:"initSegment"===t.sn?1/0:Ev};t.stats=h.stats;const u={onSuccess:(e,s,i,r)=>{this.resetLoader(t,h);let n=e.data;i.resetIV&&t.decryptdata&&(t.decryptdata.iv=new Uint8Array(n.slice(0,16)),n=n.slice(16)),o({frag:t,part:null,payload:n,networkDetails:r})},onError:(e,i,r,n)=>{this.resetLoader(t,h),a(new kv({type:qy.NETWORK_ERROR,details:Qy.FRAG_LOAD_ERROR,fatal:!1,frag:t,response:hA({url:s,data:void 0},e),error:new Error(`HTTP Error ${e.code} ${e.text}`),networkDetails:r,stats:n}))},onAbort:(e,s,i)=>{this.resetLoader(t,h),a(new kv({type:qy.NETWORK_ERROR,details:Qy.INTERNAL_ABORTED,fatal:!1,frag:t,error:new Error("Aborted"),networkDetails:i,stats:e}))},onTimeout:(e,s,i)=>{this.resetLoader(t,h),a(new kv({type:qy.NETWORK_ERROR,details:Qy.FRAG_LOAD_TIMEOUT,fatal:!1,frag:t,error:new Error(`Timeout after ${d.timeout}ms`),networkDetails:i,stats:e}))}};e&&(u.onProgress=(s,i,r,n)=>e({frag:t,part:null,payload:r,networkDetails:n})),h.load(l,d,u)})}loadPart(t,e,s){this.abort();const i=this.config,r=i.fLoader,n=i.loader;return new Promise((o,a)=>{if(this.loader&&this.loader.destroy(),t.gap||e.gap)return void a(Iv(t,e));const h=this.loader=r?new r(i):new n(i),l=Tv(t,e);t.loader=h;const c=$b(i.fragLoadPolicy.default),d={loadPolicy:c,timeout:c.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0,highWaterMark:Ev};e.stats=h.stats,h.load(l,d,{onSuccess:(i,r,n,a)=>{this.resetLoader(t,h),this.updateStatsFromPart(t,e);const l={frag:t,part:e,payload:i.data,networkDetails:a};s(l),o(l)},onError:(s,i,r,n)=>{this.resetLoader(t,h),a(new kv({type:qy.NETWORK_ERROR,details:Qy.FRAG_LOAD_ERROR,fatal:!1,frag:t,part:e,response:hA({url:l.url,data:void 0},s),error:new Error(`HTTP Error ${s.code} ${s.text}`),networkDetails:r,stats:n}))},onAbort:(s,i,r)=>{t.stats.aborted=e.stats.aborted,this.resetLoader(t,h),a(new kv({type:qy.NETWORK_ERROR,details:Qy.INTERNAL_ABORTED,fatal:!1,frag:t,part:e,error:new Error("Aborted"),networkDetails:r,stats:s}))},onTimeout:(s,i,r)=>{this.resetLoader(t,h),a(new kv({type:qy.NETWORK_ERROR,details:Qy.FRAG_LOAD_TIMEOUT,fatal:!1,frag:t,part:e,error:new Error(`Timeout after ${d.timeout}ms`),networkDetails:r,stats:s}))}})})}updateStatsFromPart(t,e){const s=t.stats,i=e.stats,r=i.total;if(s.loaded+=i.loaded,r){const i=Math.round(t.duration/e.duration),n=Math.min(Math.round(s.loaded/r),i),o=(i-n)*Math.round(s.loaded/n);s.total=s.loaded+o}else s.total=Math.max(s.loaded,s.total);const n=s.loading,o=i.loading;n.start?n.first+=o.first-o.start:(n.start=o.start,n.first=o.first),n.end=o.end}resetLoader(t,e){t.loader=null,this.loader===e&&(self.clearTimeout(this.partLoadTimeout),this.loader=null),e.destroy()}}function Tv(t,e=null){const s=e||t,i={frag:t,part:e,responseType:"arraybuffer",url:s.url,headers:{},rangeStart:0,rangeEnd:0},r=s.byteRangeStartOffset,n=s.byteRangeEndOffset;if(zy(r)&&zy(n)){var o;let e=r,s=n;if("initSegment"===t.sn&&("AES-128"===(a=null==(o=t.decryptdata)?void 0:o.method)||"AES-256"===a)){const t=n-r;t%16&&(s=n+(16-t%16)),0!==r&&(i.resetIV=!0,e=r-16)}i.rangeStart=e,i.rangeEnd=s}var a;return i}function Iv(t,e){const s=new Error(`GAP ${t.gap?"tag":"attribute"} found`),i={type:qy.MEDIA_ERROR,details:Qy.FRAG_GAP,fatal:!1,frag:t,error:s,networkDetails:null};return e&&(i.part=e),(e||t).stats.aborted=!0,new kv(i)}class kv extends Error{constructor(t){super(t.error.message),this.data=void 0,this.data=t}}class _v extends lA{constructor(t,e){super(t,e),this._boundTick=void 0,this._tickTimer=null,this._tickInterval=null,this._tickCallCount=0,this._boundTick=this.tick.bind(this)}destroy(){this.onHandlerDestroying(),this.onHandlerDestroyed()}onHandlerDestroying(){this.clearNextTick(),this.clearInterval()}onHandlerDestroyed(){}hasInterval(){return!!this._tickInterval}hasNextTick(){return!!this._tickTimer}setInterval(t){return!this._tickInterval&&(this._tickCallCount=0,this._tickInterval=self.setInterval(this._boundTick,t),!0)}clearInterval(){return!!this._tickInterval&&(self.clearInterval(this._tickInterval),this._tickInterval=null,!0)}clearNextTick(){return!!this._tickTimer&&(self.clearTimeout(this._tickTimer),this._tickTimer=null,!0)}tick(){this._tickCallCount++,1===this._tickCallCount&&(this.doTick(),this._tickCallCount>1&&this.tickImmediate(),this._tickCallCount=0)}tickImmediate(){this.clearNextTick(),this._tickTimer=self.setTimeout(this._boundTick,0)}doTick(){}}class Cv{constructor(t,e,s,i=0,r=-1,n=!1){this.level=void 0,this.sn=void 0,this.part=void 0,this.id=void 0,this.size=void 0,this.partial=void 0,this.transmuxing={start:0,executeStart:0,executeEnd:0,end:0},this.buffering={audio:{start:0,executeStart:0,executeEnd:0,end:0},video:{start:0,executeStart:0,executeEnd:0,end:0},audiovideo:{start:0,executeStart:0,executeEnd:0,end:0}},this.level=t,this.sn=e,this.id=s,this.size=i,this.part=r,this.partial=n}}const Dv={length:0,start:()=>0,end:()=>0};class Lv{static isBuffered(t,e){if(t){const s=Lv.getBuffered(t);for(let t=s.length;t--;)if(e>=s.start(t)&&e<=s.end(t))return!0}return!1}static bufferedRanges(t){if(t){const e=Lv.getBuffered(t);return Lv.timeRangesToArray(e)}return[]}static timeRangesToArray(t){const e=[];for(let s=0;s<t.length;s++)e.push({start:t.start(s),end:t.end(s)});return e}static bufferInfo(t,e,s){if(t){const i=Lv.bufferedRanges(t);if(i.length)return Lv.bufferedInfo(i,e,s)}return{len:0,start:e,end:e,bufferedIndex:-1}}static bufferedInfo(t,e,s){e=Math.max(0,e),t.length>1&&t.sort((t,e)=>t.start-e.start||e.end-t.end);let i=-1,r=[];if(s)for(let n=0;n<t.length;n++){e>=t[n].start&&e<=t[n].end&&(i=n);const o=r.length;if(o){const e=r[o-1].end;t[n].start-e<s?t[n].end>e&&(r[o-1].end=t[n].end):r.push(t[n])}else r.push(t[n])}else r=t;let n,o=0,a=e,h=e;for(let t=0;t<r.length;t++){const l=r[t].start,c=r[t].end;if(-1===i&&e>=l&&e<=c&&(i=t),e+s>=l&&e<c)a=l,h=c,o=h-e;else if(e+s<l){n=l;break}}return{len:o,start:a||0,end:h||0,nextStart:n,buffered:t,bufferedIndex:i}}static getBuffered(t){try{return t.buffered||Dv}catch(t){return mA.log("failed to get media.buffered",t),Dv}}}const Rv=/\{\$([a-zA-Z0-9-_]+)\}/g;function Pv(t){return Rv.test(t)}function xv(t,e){if(null!==t.variableList||t.hasVariableRefs){const s=t.variableList;return e.replace(Rv,e=>{const i=e.substring(2,e.length-1),r=null==s?void 0:s[i];return void 0===r?(t.playlistParsingError||(t.playlistParsingError=new Error(`Missing preceding EXT-X-DEFINE tag for Variable Reference: "${i}"`)),e):r})}return e}function Mv(t,e,s){let i,r,n=t.variableList;if(n||(t.variableList=n={}),"QUERYPARAM"in e){i=e.QUERYPARAM;try{const t=new self.URL(s).searchParams;if(!t.has(i))throw new Error(`"${i}" does not match any query parameter in URI: "${s}"`);r=t.get(i)}catch(e){t.playlistParsingError||(t.playlistParsingError=new Error(`EXT-X-DEFINE QUERYPARAM: ${e.message}`))}}else i=e.NAME,r=e.VALUE;i in n?t.playlistParsingError||(t.playlistParsingError=new Error(`EXT-X-DEFINE duplicate Variable Name declarations: "${i}"`)):n[i]=r||""}function Bv(t,e,s){const i=e.IMPORT;if(s&&i in s){let e=t.variableList;e||(t.variableList=e={}),e[i]=s[i]}else t.playlistParsingError||(t.playlistParsingError=new Error(`EXT-X-DEFINE IMPORT attribute not found in Multivariant Playlist: "${i}"`))}const Fv=/^(\d+)x(\d+)$/,Uv=/(.+?)=(".*?"|.*?)(?:,|$)/g;class Ov{constructor(t,e){"string"==typeof t&&(t=Ov.parseAttrList(t,e)),oA(this,t)}get clientAttrs(){return Object.keys(this).filter(t=>"X-"===t.substring(0,2))}decimalInteger(t){const e=parseInt(this[t],10);return e>Number.MAX_SAFE_INTEGER?1/0:e}hexadecimalInteger(t){if(this[t]){let e=(this[t]||"0x").slice(2);e=(1&e.length?"0":"")+e;const s=new Uint8Array(e.length/2);for(let t=0;t<e.length/2;t++)s[t]=parseInt(e.slice(2*t,2*t+2),16);return s}return null}hexadecimalIntegerAsNumber(t){const e=parseInt(this[t],16);return e>Number.MAX_SAFE_INTEGER?1/0:e}decimalFloatingPoint(t){return parseFloat(this[t])}optionalFloat(t,e){const s=this[t];return s?parseFloat(s):e}enumeratedString(t){return this[t]}enumeratedStringList(t,e){const s=this[t];return(s?s.split(/[ ,]+/):[]).reduce((t,e)=>(t[e.toLowerCase()]=!0,t),e)}bool(t){return"YES"===this[t]}decimalResolution(t){const e=Fv.exec(this[t]);if(null!==e)return{width:parseInt(e[1],10),height:parseInt(e[2],10)}}static parseAttrList(t,e){let s;const i={};for(Uv.lastIndex=0;null!==(s=Uv.exec(t));){const r=s[1].trim();let n=s[2];const o=0===n.indexOf('"')&&n.lastIndexOf('"')===n.length-1;let a=!1;if(o)n=n.slice(1,-1);else switch(r){case"IV":case"SCTE35-CMD":case"SCTE35-IN":case"SCTE35-OUT":a=!0}if(e&&(o||a))n=xv(e,n);else if(!a&&!o)switch(r){case"CLOSED-CAPTIONS":if("NONE"===n)break;case"ALLOWED-CPC":case"CLASS":case"ASSOC-LANGUAGE":case"AUDIO":case"BYTERANGE":case"CHANNELS":case"CHARACTERISTICS":case"CODECS":case"DATA-ID":case"END-DATE":case"GROUP-ID":case"ID":case"IMPORT":case"INSTREAM-ID":case"KEYFORMAT":case"KEYFORMATVERSIONS":case"LANGUAGE":case"NAME":case"PATHWAY-ID":case"QUERYPARAM":case"RECENTLY-REMOVED-DATERANGES":case"SERVER-URI":case"STABLE-RENDITION-ID":case"STABLE-VARIANT-ID":case"START-DATE":case"SUBTITLES":case"SUPPLEMENTAL-CODECS":case"URI":case"VALUE":case"VIDEO":case"X-ASSET-LIST":case"X-ASSET-URI":mA.warn(`${t}: attribute ${r} is missing quotes`)}i[r]=n}return i}}function Nv(t){return"ID"!==t&&"CLASS"!==t&&"CUE"!==t&&"START-DATE"!==t&&"DURATION"!==t&&"END-DATE"!==t&&"END-ON-NEXT"!==t}function Vv(t){return"SCTE35-OUT"===t||"SCTE35-IN"===t||"SCTE35-CMD"===t}class jv{constructor(t,e,s=0){var i;if(this.attr=void 0,this.tagAnchor=void 0,this.tagOrder=void 0,this._startDate=void 0,this._endDate=void 0,this._dateAtEnd=void 0,this._cue=void 0,this._badValueForSameId=void 0,this.tagAnchor=(null==e?void 0:e.tagAnchor)||null,this.tagOrder=null!=(i=null==e?void 0:e.tagOrder)?i:s,e){const s=e.attr;for(const e in s)if(Object.prototype.hasOwnProperty.call(t,e)&&t[e]!==s[e]){mA.warn(`DATERANGE tag attribute: "${e}" does not match for tags with ID: "${t.ID}"`),this._badValueForSameId=e;break}t=oA(new Ov({}),s,t)}if(this.attr=t,e?(this._startDate=e._startDate,this._cue=e._cue,this._endDate=e._endDate,this._dateAtEnd=e._dateAtEnd):this._startDate=new Date(t["START-DATE"]),"END-DATE"in this.attr){const t=(null==e?void 0:e.endDate)||new Date(this.attr["END-DATE"]);zy(t.getTime())&&(this._endDate=t)}}get id(){return this.attr.ID}get class(){return this.attr.CLASS}get cue(){const t=this._cue;return void 0===t?this._cue=this.attr.enumeratedStringList(this.attr.CUE?"CUE":"X-CUE",{pre:!1,post:!1,once:!1}):t}get startTime(){const{tagAnchor:t}=this;return null===t||null===t.programDateTime?(mA.warn(`Expected tagAnchor Fragment with PDT set for DateRange "${this.id}": ${t}`),NaN):t.start+(this.startDate.getTime()-t.programDateTime)/1e3}get startDate(){return this._startDate}get endDate(){const t=this._endDate||this._dateAtEnd;if(t)return t;const e=this.duration;return null!==e?this._dateAtEnd=new Date(this._startDate.getTime()+1e3*e):null}get duration(){if("DURATION"in this.attr){const t=this.attr.decimalFloatingPoint("DURATION");if(zy(t))return t}else if(this._endDate)return(this._endDate.getTime()-this._startDate.getTime())/1e3;return null}get plannedDuration(){return"PLANNED-DURATION"in this.attr?this.attr.decimalFloatingPoint("PLANNED-DURATION"):null}get endOnNext(){return this.attr.bool("END-ON-NEXT")}get isInterstitial(){return"com.apple.hls.interstitial"===this.class}get isValid(){return!!this.id&&!this._badValueForSameId&&zy(this.startDate.getTime())&&(null===this.duration||this.duration>=0)&&(!this.endOnNext||!!this.class)&&(!this.attr.CUE||!this.cue.pre&&!this.cue.post||this.cue.pre!==this.cue.post)&&(!this.isInterstitial||"X-ASSET-URI"in this.attr||"X-ASSET-LIST"in this.attr)}}class Wv{constructor(t){this.PTSKnown=!1,this.alignedSliding=!1,this.averagetargetduration=void 0,this.endCC=0,this.endSN=0,this.fragments=void 0,this.fragmentHint=void 0,this.partList=null,this.dateRanges=void 0,this.dateRangeTagCount=0,this.live=!0,this.requestScheduled=-1,this.ageHeader=0,this.advancedDateTime=void 0,this.updated=!0,this.advanced=!0,this.misses=0,this.startCC=0,this.startSN=0,this.startTimeOffset=null,this.targetduration=0,this.totalduration=0,this.type=null,this.url=void 0,this.m3u8="",this.version=null,this.canBlockReload=!1,this.canSkipUntil=0,this.canSkipDateRanges=!1,this.skippedSegments=0,this.recentlyRemovedDateranges=void 0,this.partHoldBack=0,this.holdBack=0,this.partTarget=0,this.preloadHint=void 0,this.renditionReports=void 0,this.tuneInGoal=0,this.deltaUpdateFailed=void 0,this.driftStartTime=0,this.driftEndTime=0,this.driftStart=0,this.driftEnd=0,this.encryptedFragments=void 0,this.playlistParsingError=null,this.variableList=null,this.hasVariableRefs=!1,this.appliedTimelineOffset=void 0,this.fragments=[],this.encryptedFragments=[],this.dateRanges={},this.url=t}reloaded(t){if(!t)return this.advanced=!0,void(this.updated=!0);const e=this.lastPartSn-t.lastPartSn,s=this.lastPartIndex-t.lastPartIndex;this.updated=this.endSN!==t.endSN||!!s||!!e||!this.live,this.advanced=this.endSN>t.endSN||e>0||0===e&&s>0,this.updated||this.advanced?this.misses=Math.floor(.6*t.misses):this.misses=t.misses+1}get hasProgramDateTime(){return!!this.fragments.length&&zy(this.fragments[this.fragments.length-1].programDateTime)}get levelTargetDuration(){return this.averagetargetduration||this.targetduration||10}get drift(){const t=this.driftEndTime-this.driftStartTime;if(t>0){return 1e3*(this.driftEnd-this.driftStart)/t}return 1}get edge(){return this.partEnd||this.fragmentEnd}get partEnd(){var t;return null!=(t=this.partList)&&t.length?this.partList[this.partList.length-1].end:this.fragmentEnd}get fragmentEnd(){var t;return null!=(t=this.fragments)&&t.length?this.fragments[this.fragments.length-1].end:0}get fragmentStart(){var t;return null!=(t=this.fragments)&&t.length?this.fragments[0].start:0}get age(){return this.advancedDateTime?Math.max(Date.now()-this.advancedDateTime,0)/1e3:0}get lastPartIndex(){var t;return null!=(t=this.partList)&&t.length?this.partList[this.partList.length-1].index:-1}get maxPartIndex(){const t=this.partList;if(t){const e=this.lastPartIndex;if(-1!==e){for(let s=t.length;s--;)if(t[s].index>e)return t[s].index;return e}}return 0}get lastPartSn(){var t;return null!=(t=this.partList)&&t.length?this.partList[this.partList.length-1].fragment.sn:this.endSN}get expired(){if(this.live&&this.age&&this.misses<3){const t=this.partEnd-this.fragmentStart;return this.age>Math.max(t,this.totalduration)+this.levelTargetDuration}return!1}}function Gv(t){return"AES-128"===t||"AES-256"===t||"AES-256-CTR"===t}function zv(t){switch(t){case"AES-128":case"AES-256":return gv;case"AES-256-CTR":return yv;default:throw new Error(`invalid full segment method ${t}`)}}function Hv(t){return Uint8Array.from(atob(t),t=>t.charCodeAt(0))}function Kv(t){return Uint8Array.from(unescape(encodeURIComponent(t)),t=>t.charCodeAt(0))}function qv(t){const e=t.split(":");let s=null;if("data"===e[0]&&2===e.length){const t=e[1].split(";"),i=t[t.length-1].split(",");if(2===i.length){const e="base64"===i[0],r=i[1];e?(t.splice(-1,1),s=Hv(r)):s=function(t){const e=Kv(t).subarray(0,16),s=new Uint8Array(16);return s.set(e,16-e.length),s}(r)}}return s}const Qv="undefined"!=typeof self?self:void 0;var Yv={CLEARKEY:"org.w3.clearkey",FAIRPLAY:"com.apple.fps",PLAYREADY:"com.microsoft.playready",WIDEVINE:"com.widevine.alpha"},Jv="org.w3.clearkey",Xv="com.apple.streamingkeydelivery",$v="com.microsoft.playready",Zv="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed";function tS(t){switch(t){case Xv:return Yv.FAIRPLAY;case $v:return Yv.PLAYREADY;case Zv:return Yv.WIDEVINE;case Jv:return Yv.CLEARKEY}}var eS="1077efecc0b24d02ace33c1e52e2fb4b",sS="e2719d58a985b3c9781ab030af78d30e",iS="9a04f07998404286ab92e65be0885f95",rS="edef8ba979d64acea3c827dcd51d21ed";function nS(t){return t===rS?Yv.WIDEVINE:t===iS?Yv.PLAYREADY:t===eS||t===sS?Yv.CLEARKEY:void 0}function oS(t){switch(t){case Yv.FAIRPLAY:return Xv;case Yv.PLAYREADY:return $v;case Yv.WIDEVINE:return Zv;case Yv.CLEARKEY:return Jv}}function aS(t){const{drmSystems:e,widevineLicenseUrl:s}=t,i=e?[Yv.FAIRPLAY,Yv.WIDEVINE,Yv.PLAYREADY,Yv.CLEARKEY].filter(t=>!!e[t]):[];return!i[Yv.WIDEVINE]&&s&&i.push(Yv.WIDEVINE),i}const hS=null!=Qv&&null!=(lS=Qv.navigator)&&lS.requestMediaKeySystemAccess?self.navigator.requestMediaKeySystemAccess.bind(self.navigator):null;var lS;function cS(t){const e=new Uint16Array(t.buffer,t.byteOffset,t.byteLength/2),s=String.fromCharCode.apply(null,Array.from(e)),i=s.substring(s.indexOf("<"),s.length),r=(new DOMParser).parseFromString(i,"text/xml").getElementsByTagName("KID")[0];if(r){const t=r.childNodes[0]?r.childNodes[0].nodeValue:r.getAttribute("VALUE");if(t){const e=Hv(t).subarray(0,16);return function(t){const e=function(t,e,s){const i=t[e];t[e]=t[s],t[s]=i};e(t,0,3),e(t,1,2),e(t,4,5),e(t,6,7)}(e),e}}return null}let dS={};class uS{static clearKeyUriToKeyIdMap(){dS={}}constructor(t,e,s,i=[1],r=null){this.uri=void 0,this.method=void 0,this.keyFormat=void 0,this.keyFormatVersions=void 0,this.encrypted=void 0,this.isCommonEncryption=void 0,this.iv=null,this.key=null,this.keyId=null,this.pssh=null,this.method=t,this.uri=e,this.keyFormat=s,this.keyFormatVersions=i,this.iv=r,this.encrypted=!!t&&"NONE"!==t,this.isCommonEncryption=this.encrypted&&!Gv(t)}isSupported(){if(this.method){if(Gv(this.method)||"NONE"===this.method)return!0;if("identity"===this.keyFormat)return"SAMPLE-AES"===this.method;switch(this.keyFormat){case Xv:case Zv:case $v:case Jv:return-1!==["ISO-23001-7","SAMPLE-AES","SAMPLE-AES-CENC","SAMPLE-AES-CTR"].indexOf(this.method)}}return!1}getDecryptData(t){if(!this.encrypted||!this.uri)return null;if(Gv(this.method)&&this.uri&&!this.iv){"number"!=typeof t&&(mA.warn(`missing IV for initialization segment with method="${this.method}" - compliance issue`),t=0);const e=function(t){const e=new Uint8Array(16);for(let s=12;s<16;s++)e[s]=t>>8*(15-s)&255;return e}(t);return new uS(this.method,this.uri,"identity",this.keyFormatVersions,e)}const e=qv(this.uri);if(e)switch(this.keyFormat){case Zv:this.pssh=e,e.length>=22&&(this.keyId=e.subarray(e.length-22,e.length-6));break;case $v:{const t=new Uint8Array([154,4,240,121,152,64,66,134,171,146,230,91,224,136,95,149]);this.pssh=ib(t,0,e),this.keyId=cS(e);break}default:{let t=e.subarray(0,16);if(16!==t.length){const e=new Uint8Array(16);e.set(t,16-t.length),t=e}this.keyId=t;break}}if(!this.keyId||16!==this.keyId.byteLength){let t=dS[this.uri];if(!t){const e=Object.keys(dS).length%Number.MAX_SAFE_INTEGER;t=new Uint8Array(16);new DataView(t.buffer,12,4).setUint32(0,e),dS[this.uri]=t}this.keyId=t}return this}}const pS=/#EXT-X-STREAM-INF:([^\r\n]*)(?:[\r\n](?:#[^\r\n]*)?)*([^\r\n]+)|#EXT-X-(SESSION-DATA|SESSION-KEY|DEFINE|CONTENT-STEERING|START):([^\r\n]*)[\r\n]+/g,fS=/#EXT-X-MEDIA:(.*)/g,mS=/^#EXT(?:INF|-X-TARGETDURATION):/m,gS=new RegExp([/#EXTINF:\s*(\d*(?:\.\d+)?)(?:,(.*)\s+)?/.source,/(?!#) *(\S[^\r\n]*)/.source,/#.*/.source].join("|"),"g"),yS=new RegExp([/#EXT-X-(PROGRAM-DATE-TIME|BYTERANGE|DATERANGE|DEFINE|KEY|MAP|PART|PART-INF|PLAYLIST-TYPE|PRELOAD-HINT|RENDITION-REPORT|SERVER-CONTROL|SKIP|START):(.+)/.source,/#EXT-X-(BITRATE|DISCONTINUITY-SEQUENCE|MEDIA-SEQUENCE|TARGETDURATION|VERSION): *(\d+)/.source,/#EXT-X-(DISCONTINUITY|ENDLIST|GAP|INDEPENDENT-SEGMENTS)/.source,/(#)([^:]*):(.*)/.source,/(#)(.*)(?:.*)\r?\n?/.source].join("|"));class AS{static findGroup(t,e){for(let s=0;s<t.length;s++){const i=t[s];if(i.id===e)return i}}static resolve(t,e){return wA.buildAbsoluteURL(e,t,{alwaysNormalize:!0})}static isMediaPlaylist(t){return mS.test(t)}static parseMasterPlaylist(t,e){const s={contentSteering:null,levels:[],playlistParsingError:null,sessionData:null,sessionKeys:null,startTimeOffset:null,variableList:null,hasVariableRefs:Pv(t)},i=[];let r;for(pS.lastIndex=0;null!=(r=pS.exec(t));)if(r[1]){var n;const t=new Ov(r[1],s),o=xv(s,r[2]),a={attrs:t,bitrate:t.decimalInteger("BANDWIDTH")||t.decimalInteger("AVERAGE-BANDWIDTH"),name:t.NAME,url:AS.resolve(o,e)},h=t.decimalResolution("RESOLUTION");h&&(a.width=h.width,a.height=h.height),wS(t.CODECS,a);const l=t["SUPPLEMENTAL-CODECS"];l&&(a.supplemental={},wS(l,a.supplemental)),null!=(n=a.unknownCodecs)&&n.length||i.push(a),s.levels.push(a)}else if(r[3]){const t=r[3],i=r[4];switch(t){case"SESSION-DATA":{const t=new Ov(i,s),e=t["DATA-ID"];e&&(null===s.sessionData&&(s.sessionData={}),s.sessionData[e]=t);break}case"SESSION-KEY":{const t=SS(i,e,s);t.encrypted&&t.isSupported()?(null===s.sessionKeys&&(s.sessionKeys=[]),s.sessionKeys.push(t)):mA.warn(`[Keys] Ignoring invalid EXT-X-SESSION-KEY tag: "${i}"`);break}case"DEFINE":Mv(s,new Ov(i,s),e);break;case"CONTENT-STEERING":{const t=new Ov(i,s);s.contentSteering={uri:AS.resolve(t["SERVER-URI"],e),pathwayId:t["PATHWAY-ID"]||"."};break}case"START":s.startTimeOffset=ES(i)}}const o=i.length>0&&i.length<s.levels.length;return s.levels=o?i:s.levels,0===s.levels.length&&(s.playlistParsingError=new Error("no levels found in manifest")),s}static parseMasterPlaylistMedia(t,e,s){let i;const r={},n=s.levels,o={AUDIO:n.map(t=>({id:t.attrs.AUDIO,audioCodec:t.audioCodec})),SUBTITLES:n.map(t=>({id:t.attrs.SUBTITLES,textCodec:t.textCodec})),"CLOSED-CAPTIONS":[]};let a=0;for(fS.lastIndex=0;null!==(i=fS.exec(t));){const t=new Ov(i[1],s),n=t.TYPE;if(n){const s=o[n],i=r[n]||[];r[n]=i;const h=t.LANGUAGE,l=t["ASSOC-LANGUAGE"],c=t.CHANNELS,d=t.CHARACTERISTICS,u=t["INSTREAM-ID"],p={attrs:t,bitrate:0,id:a++,groupId:t["GROUP-ID"]||"",name:t.NAME||h||"",type:n,default:t.bool("DEFAULT"),autoselect:t.bool("AUTOSELECT"),forced:t.bool("FORCED"),lang:h,url:t.URI?AS.resolve(t.URI,e):""};if(l&&(p.assocLang=l),c&&(p.channels=c),d&&(p.characteristics=d),u&&(p.instreamId=u),null!=s&&s.length){const t=AS.findGroup(s,p.groupId)||s[0];TS(p,t,"audioCodec"),TS(p,t,"textCodec")}i.push(p)}}return r}static parseLevelPlaylist(t,e,s,i,r,n){var o;const a={url:e},h=new Wv(e),l=h.fragments,c=[];let d,u,p,f,m=null,g=0,y=0,A=0,b=0,v=0,S=null,E=new LA(i,a),w=-1,T=!1,I=null;if(gS.lastIndex=0,h.m3u8=t,h.hasVariableRefs=Pv(t),"#EXTM3U"!==(null==(o=gS.exec(t))?void 0:o[0]))return h.playlistParsingError=new Error("Missing format identifier #EXTM3U"),h;for(;null!==(d=gS.exec(t));){T&&(T=!1,E=new LA(i,a),E.playlistOffset=A,E.start=A,E.sn=g,E.cc=b,v&&(E.bitrate=v),E.level=s,m&&(E.initSegment=m,m.rawProgramDateTime&&(E.rawProgramDateTime=m.rawProgramDateTime,m.rawProgramDateTime=null),I&&(E.setByteRange(I),I=null)));const t=d[1];if(t){E.duration=parseFloat(t);const e=(" "+d[2]).slice(1);E.title=e||null,E.tagList.push(e?["INF",t,e]:["INF",t])}else if(d[3]){if(zy(E.duration)){E.playlistOffset=A,E.start=A,p&&_S(E,p,h),E.sn=g,E.level=s,E.cc=b,l.push(E);const t=(" "+d[3]).slice(1);E.relurl=xv(h,t),IS(E,S,c),S=E,A+=E.duration,g++,y=0,T=!0}}else{if(d=d[0].match(yS),!d){mA.warn("No matches on slow regex match for level playlist!");continue}for(u=1;u<d.length&&void 0===d[u];u++);const t=(" "+d[u]).slice(1),r=(" "+d[u+1]).slice(1),o=d[u+2]?(" "+d[u+2]).slice(1):null;switch(t){case"BYTERANGE":S?E.setByteRange(r,S):E.setByteRange(r);break;case"PROGRAM-DATE-TIME":E.rawProgramDateTime=r,E.tagList.push(["PROGRAM-DATE-TIME",r]),-1===w&&(w=l.length);break;case"PLAYLIST-TYPE":h.type&&CS(h,t,d),h.type=r.toUpperCase();break;case"MEDIA-SEQUENCE":0!==h.startSN?CS(h,t,d):l.length>0&&DS(h,t,d),g=h.startSN=parseInt(r);break;case"SKIP":{h.skippedSegments&&CS(h,t,d);const e=new Ov(r,h),s=e.decimalInteger("SKIPPED-SEGMENTS");if(zy(s)){h.skippedSegments+=s;for(let t=s;t--;)l.push(null);g+=s}const i=e.enumeratedString("RECENTLY-REMOVED-DATERANGES");i&&(h.recentlyRemovedDateranges=(h.recentlyRemovedDateranges||[]).concat(i.split("\t")));break}case"TARGETDURATION":0!==h.targetduration&&CS(h,t,d),h.targetduration=Math.max(parseInt(r),1);break;case"VERSION":null!==h.version&&CS(h,t,d),h.version=parseInt(r);break;case"INDEPENDENT-SEGMENTS":break;case"ENDLIST":h.live||CS(h,t,d),h.live=!1;break;case"#":(r||o)&&E.tagList.push(o?[r,o]:[r]);break;case"DISCONTINUITY":b++,E.tagList.push(["DIS"]);break;case"GAP":E.gap=!0,E.tagList.push([t]);break;case"BITRATE":E.tagList.push([t,r]),v=1e3*parseInt(r),zy(v)?E.bitrate=v:v=0;break;case"DATERANGE":{const t=new Ov(r,h),e=new jv(t,h.dateRanges[t.ID],h.dateRangeTagCount);h.dateRangeTagCount++,e.isValid||h.skippedSegments?h.dateRanges[e.id]=e:mA.warn(`Ignoring invalid DATERANGE tag: "${r}"`),E.tagList.push(["EXT-X-DATERANGE",r]);break}case"DEFINE":{const t=new Ov(r,h);"IMPORT"in t?Bv(h,t,n):Mv(h,t,e)}break;case"DISCONTINUITY-SEQUENCE":0!==h.startCC?CS(h,t,d):l.length>0&&DS(h,t,d),h.startCC=b=parseInt(r);break;case"KEY":{const t=SS(r,e,h);if(t.isSupported()){if("NONE"===t.method){p=void 0;break}p||(p={}),p[t.keyFormat]&&(p=oA({},p)),p[t.keyFormat]=t}else mA.warn(`[Keys] Ignoring invalid EXT-X-KEY tag: "${r}"`);break}case"START":h.startTimeOffset=ES(r);break;case"MAP":{const t=new Ov(r,h);if(E.duration){const e=new LA(i,a);kS(e,t,s,p),m=e,E.initSegment=m,m.rawProgramDateTime&&!E.rawProgramDateTime&&(E.rawProgramDateTime=m.rawProgramDateTime)}else{const e=E.byteRangeEndOffset;if(e){const t=E.byteRangeStartOffset;I=`${e-t}@${t}`}else I=null;kS(E,t,s,p),m=E,T=!0}m.cc=b;break}case"SERVER-CONTROL":f&&CS(h,t,d),f=new Ov(r),h.canBlockReload=f.bool("CAN-BLOCK-RELOAD"),h.canSkipUntil=f.optionalFloat("CAN-SKIP-UNTIL",0),h.canSkipDateRanges=h.canSkipUntil>0&&f.bool("CAN-SKIP-DATERANGES"),h.partHoldBack=f.optionalFloat("PART-HOLD-BACK",0),h.holdBack=f.optionalFloat("HOLD-BACK",0);break;case"PART-INF":{h.partTarget&&CS(h,t,d);const e=new Ov(r);h.partTarget=e.decimalFloatingPoint("PART-TARGET");break}case"PART":{let t=h.partList;t||(t=h.partList=[]);const e=y>0?t[t.length-1]:void 0,s=y++,i=new Ov(r,h),n=new RA(i,E,a,s,e);t.push(n),E.duration+=n.duration;break}case"PRELOAD-HINT":{const t=new Ov(r,h);h.preloadHint=t;break}case"RENDITION-REPORT":{const t=new Ov(r,h);h.renditionReports=h.renditionReports||[],h.renditionReports.push(t);break}default:mA.warn(`line parsed but not handled: ${d}`)}}}S&&!S.relurl?(l.pop(),A-=S.duration,h.partList&&(h.fragmentHint=S)):h.partList&&(IS(E,S,c),E.cc=b,h.fragmentHint=E,p&&_S(E,p,h)),h.targetduration||(h.playlistParsingError=new Error("#EXT-X-TARGETDURATION is required"));const k=l.length,_=l[0],C=l[k-1];if(A+=h.skippedSegments*h.targetduration,A>0&&k&&C){h.averagetargetduration=A/k;const t=C.sn;h.endSN="initSegment"!==t?t:0,h.live||(C.endList=!0),_&&void 0===h.startCC&&(h.startCC=_.cc),w>0&&(!function(t,e){let s=t[e];for(let i=e;i--;){const e=t[i];if(!e)return;e.programDateTime=s.programDateTime-1e3*e.duration,s=e}}(l,w),_&&c.unshift(_))}else h.endSN=0,h.startCC=0;return h.fragmentHint&&(A+=h.fragmentHint.duration),h.totalduration=A,c.length&&h.dateRangeTagCount&&_&&bS(c,h),h.endCC=b,h}}function bS(t,e){const s=t.length;if(!s)return;const i=t[s-1],r=e.live?1/0:e.totalduration,n=Object.keys(e.dateRanges);for(let o=n.length;o--;){const a=e.dateRanges[n[o]],h=a.startDate.getTime();a.tagAnchor=i.ref;for(let i=s;i--;){const s=vS(e,h,t,i,r);if(-1!==s){a.tagAnchor=e.fragments[s].ref;break}}}}function vS(t,e,s,i,r){const n=s[i];if(n){const a=n.programDateTime;if(e>=a||0===i){var o;if(e<=a+1e3*(((null==(o=s[i+1])?void 0:o.start)||r)-n.start)){const r=s[i].sn-t.startSN,n=t.fragments;if(n.length>s.length){for(let o=(s[i+1]||n[n.length-1]).sn-t.startSN;o>r;o--){const t=n[o].programDateTime;if(e>=t&&e<t+1e3*n[o].duration)return o}}return r}}}return-1}function SS(t,e,s){var i,r;const n=new Ov(t,s),o=null!=(i=n.METHOD)?i:"",a=n.URI,h=n.hexadecimalInteger("IV"),l=n.KEYFORMATVERSIONS,c=null!=(r=n.KEYFORMAT)?r:"identity";a&&n.IV&&!h&&mA.error(`Invalid IV: ${n.IV}`);const d=a?AS.resolve(a,e):"",u=(l||"1").split("/").map(Number).filter(Number.isFinite);return new uS(o,d,c,u,h)}function ES(t){const e=new Ov(t).decimalFloatingPoint("TIME-OFFSET");return zy(e)?e:null}function wS(t,e){let s=(t||"").split(/[ ,]+/).filter(t=>t);["video","audio","text"].forEach(t=>{const i=s.filter(e=>ab(e,t));i.length&&(e[`${t}Codec`]=i.map(t=>t.split("/")[0]).join(","),s=s.filter(t=>-1===i.indexOf(t)))}),e.unknownCodecs=s}function TS(t,e,s){const i=e[s];i&&(t[s]=i)}function IS(t,e,s){t.rawProgramDateTime?s.push(t):null!=e&&e.programDateTime&&(t.programDateTime=e.endProgramDateTime)}function kS(t,e,s,i){t.relurl=e.URI,e.BYTERANGE&&t.setByteRange(e.BYTERANGE),t.level=s,t.sn="initSegment",i&&(t.levelkeys=i),t.initSegment=null}function _S(t,e,s){t.levelkeys=e;const{encryptedFragments:i}=s;i.length&&i[i.length-1].levelkeys===e||!Object.keys(e).some(t=>e[t].isCommonEncryption)||i.push(t)}function CS(t,e,s){t.playlistParsingError=new Error(`#EXT-X-${e} must not appear more than once (${s[0]})`)}function DS(t,e,s){t.playlistParsingError=new Error(`#EXT-X-${e} must appear before the first Media Segment (${s[0]})`)}function LS(t,e){const s=e.startPTS;if(zy(s)){let i,r=0;e.sn>t.sn?(r=s-t.start,i=t):(r=t.start-s,i=e),i.duration!==r&&i.setDuration(r)}else if(e.sn>t.sn){t.cc===e.cc&&t.minEndPTS?e.setStart(t.start+(t.minEndPTS-t.start)):e.setStart(t.start+t.duration)}else e.setStart(Math.max(t.start-e.duration,0))}function RS(t,e,s,i,r,n){i-s<=0&&(mA.warn("Fragment should have a positive duration",e),i=s+e.duration,n=r+e.duration);let o=s,a=i;const h=e.startPTS,l=e.endPTS;if(zy(h)){const t=Math.abs(h-s);zy(e.deltaPTS)?e.deltaPTS=Math.max(t,e.deltaPTS):e.deltaPTS=t,o=Math.max(s,h),s=Math.min(s,h),r=Math.min(r,e.startDTS),a=Math.min(i,l),i=Math.max(i,l),n=Math.max(n,e.endDTS)}const c=s-e.start;0!==e.start&&e.setStart(s),e.setDuration(i-e.start),e.startPTS=s,e.maxStartPTS=o,e.startDTS=r,e.endPTS=i,e.minEndPTS=a,e.endDTS=n;const d=e.sn;if(!t||d<t.startSN||d>t.endSN)return 0;let u;const p=d-t.startSN,f=t.fragments;for(f[p]=e,u=p;u>0;u--)LS(f[u],f[u-1]);for(u=p;u<f.length-1;u++)LS(f[u],f[u+1]);return t.fragmentHint&&LS(f[f.length-1],t.fragmentHint),t.PTSKnown=t.alignedSliding=!0,c}function PS(t,e){if(t===e)return;let s=null;const i=t.fragments;for(let t=i.length-1;t>=0;t--){const e=i[t].initSegment;if(e){s=e;break}}let r;t.fragmentHint&&delete t.fragmentHint.endPTS,function(t,e,s){const i=e.skippedSegments,r=Math.max(t.startSN,e.startSN)-e.startSN,n=(t.fragmentHint?1:0)+(i?e.endSN:Math.min(t.endSN,e.endSN))-e.startSN,o=e.startSN-t.startSN,a=e.fragmentHint?e.fragments.concat(e.fragmentHint):e.fragments,h=t.fragmentHint?t.fragments.concat(t.fragmentHint):t.fragments;for(let l=r;l<=n;l++){const r=h[o+l];let n=a[l];if(i&&!n&&r&&(n=e.fragments[l]=r),r&&n){if(s(r,n,l,a),r.url&&r.url!==n.url)return void(e.playlistParsingError=xS(`media sequence mismatch ${n.sn}:`,t,e,r,n));if(r.cc!==n.cc)return void(e.playlistParsingError=xS(`discontinuity sequence mismatch (${r.cc}!=${n.cc})`,t,e,r,n))}}}(t,e,(t,i,n,o)=>{if((!e.startCC||e.skippedSegments)&&i.cc!==t.cc){const s=t.cc-i.cc;for(let t=n;t<o.length;t++)o[t].cc+=s;e.endCC=o[o.length-1].cc}zy(t.startPTS)&&zy(t.endPTS)&&(i.setStart(i.startPTS=t.startPTS),i.startDTS=t.startDTS,i.maxStartPTS=t.maxStartPTS,i.endPTS=t.endPTS,i.endDTS=t.endDTS,i.minEndPTS=t.minEndPTS,i.setDuration(t.endPTS-t.startPTS),i.duration&&(r=i),e.PTSKnown=e.alignedSliding=!0),t.hasStreams&&(i.elementaryStreams=t.elementaryStreams),i.loader=t.loader,t.hasStats&&(i.stats=t.stats),t.initSegment&&(i.initSegment=t.initSegment,s=t.initSegment)});const n=e.fragments,o=e.fragmentHint?n.concat(e.fragmentHint):n;if(s&&o.forEach(t=>{var e;!t||t.initSegment&&t.initSegment.relurl!==(null==(e=s)?void 0:e.relurl)||(t.initSegment=s)}),e.skippedSegments){if(e.deltaUpdateFailed=n.some(t=>!t),e.deltaUpdateFailed){mA.warn("[level-helper] Previous playlist missing segments skipped in delta playlist");for(let t=e.skippedSegments;t--;)n.shift();e.startSN=n[0].sn}else{e.canSkipDateRanges&&(e.dateRanges=function(t,e){const{dateRanges:s,recentlyRemovedDateranges:i}=e,r=oA({},t);i&&i.forEach(t=>{delete r[t]});const n=Object.keys(r).length;n&&Object.keys(s).forEach(t=>{const e=r[t],i=new jv(s[t].attr,e);i.isValid?(r[t]=i,e||(i.tagOrder+=n)):mA.warn(`Ignoring invalid Playlist Delta Update DATERANGE tag: "${Bb(s[t].attr)}"`)});return r}(t.dateRanges,e));const s=t.fragments.filter(t=>t.rawProgramDateTime);if(t.hasProgramDateTime&&!e.hasProgramDateTime)for(let t=1;t<o.length;t++)null===o[t].programDateTime&&IS(o[t],o[t-1],s);bS(s,e)}e.endCC=n[n.length-1].cc}if(!e.startCC){var a;const s=US(t,e.startSN-1);e.startCC=null!=(a=null==s?void 0:s.cc)?a:n[0].cc}!function(t,e,s){if(t&&e){let i=0;for(let r=0,n=t.length;r<=n;r++){const n=t[r],o=e[r+i];n&&o&&n.index===o.index&&n.fragment.sn===o.fragment.sn?s(n,o):i--}}}(t.partList,e.partList,(t,e)=>{e.elementaryStreams=t.elementaryStreams,e.stats=t.stats}),r?RS(e,r,r.startPTS,r.endPTS,r.startDTS,r.endDTS):MS(t,e),n.length&&(e.totalduration=e.edge-n[0].start),e.driftStartTime=t.driftStartTime,e.driftStart=t.driftStart;const h=e.advancedDateTime;if(e.advanced&&h){const t=e.edge;e.driftStart||(e.driftStartTime=h,e.driftStart=t),e.driftEndTime=h,e.driftEnd=t}else e.driftEndTime=t.driftEndTime,e.driftEnd=t.driftEnd,e.advancedDateTime=t.advancedDateTime;-1===e.requestScheduled&&(e.requestScheduled=t.requestScheduled)}function xS(t,e,s,i,r){return new Error(`${t} ${r.url}\nPlaylist starting @${e.startSN}\n${e.m3u8}\n\nPlaylist starting @${s.startSN}\n${s.m3u8}`)}function MS(t,e,s=!0){const i=e.startSN+e.skippedSegments-t.startSN,r=t.fragments,n=i>=0;let o=0;if(n&&i<r.length)o=r[i].start;else if(n&&e.startSN===t.endSN+1)o=t.fragmentEnd;else if(n&&s)o=t.fragmentStart+i*e.levelTargetDuration;else{if(e.skippedSegments||0!==e.fragmentStart)return;o=t.fragmentStart}BS(e,o)}function BS(t,e){if(e){const s=t.fragments;for(let i=t.skippedSegments;i<s.length;i++)s[i].addStart(e);t.fragmentHint&&t.fragmentHint.addStart(e)}}function FS(t,e=1/0){let s=1e3*t.targetduration;if(t.updated){const i=t.fragments,r=4;if(i.length&&s*r>e){const t=1e3*i[i.length-1].duration;t<s&&(s=t)}}else s/=2;return Math.round(s)}function US(t,e,s){if(!t)return null;let i=t.fragments[e-t.startSN];return i||(i=t.fragmentHint,i&&i.sn===e?i:e<t.startSN&&s&&s.sn===e?s:null)}function OS(t,e,s){return t?NS(t.partList,e,s):null}function NS(t,e,s){if(t)for(let i=t.length;i--;){const r=t[i];if(r.index===s&&r.fragment.sn===e)return r}return null}function VS(t){t.forEach((t,e)=>{var s;null==(s=t.details)||s.fragments.forEach(t=>{t.level=e,t.initSegment&&(t.initSegment.level=e)})})}function jS(t,e){for(let i=0,r=t.length;i<r;i++){var s;if((null==(s=t[i])?void 0:s.cc)===e)return t[i]}return null}function WS(t,e){if(t){const s=t.start+e;t.start=t.startPTS=s,t.endPTS=s+t.duration}}function GS(t,e){const s=e.fragments;for(let e=0,i=s.length;e<i;e++)WS(s[e],t);e.fragmentHint&&WS(e.fragmentHint,t),e.alignedSliding=!0}function zS(t,e){if(!function(t,e){return!!(t&&e.startCC<t.endCC&&e.endCC>t.startCC)}(e,t))return;const s=Math.min(e.endCC,t.endCC),i=jS(e.fragments,s),r=jS(t.fragments,s);if(!i||!r)return;mA.log(`Aligning playlist at start of dicontinuity sequence ${s}`);GS(i.start-r.start,t)}function HS(t,e){if(!t.hasProgramDateTime||!e.hasProgramDateTime)return;const s=t.fragments,i=e.fragments;if(!s.length||!i.length)return;let r,n;const o=Math.min(e.endCC,t.endCC);e.startCC<o&&t.startCC<o&&(r=jS(i,o),n=jS(s,o)),r&&n||(r=i[Math.floor(i.length/2)],n=jS(s,r.cc)||s[Math.floor(s.length/2)]);const a=r.programDateTime,h=n.programDateTime;if(!a||!h)return;GS((h-a)/1e3-(n.start-r.start),t)}const KS=function(t){let e="";const s=t.length;for(let i=0;i<s;i++)e+=`[${t.start(i).toFixed(3)}-${t.end(i).toFixed(3)}]`;return e},qS="STOPPED",QS="IDLE",YS="KEY_LOADING",JS="FRAG_LOADING",XS="FRAG_LOADING_WAITING_RETRY",$S="WAITING_TRACK",ZS="PARSING",tE="PARSED",eE="ENDED",sE="ERROR",iE="WAITING_INIT_PTS",rE="WAITING_LEVEL";class nE extends _v{constructor(t,e,s,i,r){super(i,t.logger),this.hls=void 0,this.fragPrevious=null,this.fragCurrent=null,this.fragmentTracker=void 0,this.transmuxer=null,this._state=qS,this.playlistType=void 0,this.media=null,this.mediaBuffer=null,this.config=void 0,this.bitrateTest=!1,this.lastCurrentTime=0,this.nextLoadPosition=0,this.startPosition=0,this.startTimeOffset=null,this.retryDate=0,this.levels=null,this.fragmentLoader=void 0,this.keyLoader=void 0,this.levelLastLoaded=null,this.startFragRequested=!1,this.decrypter=void 0,this.initPTS=[],this.buffering=!0,this.loadingParts=!1,this.loopSn=void 0,this.onMediaSeeking=()=>{const{config:t,fragCurrent:e,media:s,mediaBuffer:i,state:r}=this,n=s?s.currentTime:0,o=Lv.bufferInfo(i||s,n,t.maxBufferHole);if(this.log(`media seeking to ${zy(n)?n.toFixed(3):n}, state: ${r}`),this.state===eE)this.resetLoadingState();else if(e){const s=t.maxFragLookUpTolerance,i=e.start-s,r=e.start+e.duration+s;if(!o.len||r<o.start||i>o.end){const t=n>r;(n<i||t)&&(t&&e.loader&&(this.log("seeking outside of buffer while fragment load in progress, cancel fragment load"),e.abortRequests(),this.resetLoadingState()),this.fragPrevious=null)}}if(s){this.fragmentTracker.removeFragmentsInRange(n,1/0,this.playlistType,!0);if(n>this.lastCurrentTime&&(this.lastCurrentTime=n),!this.loadingParts){const t=Math.max(o.end,n),e=this.shouldLoadParts(this.getLevelDetails(),t);e&&(this.log(`LL-Part loading ON after seeking to ${n.toFixed(2)} with buffer @${t.toFixed(2)}`),this.loadingParts=e)}}this.hls.hasEnoughToStart||o.len||(this.log(`setting startPosition to ${n} because of seek before start`),this.nextLoadPosition=this.startPosition=n),this.tickImmediate()},this.onMediaEnded=()=>{this.log("setting startPosition to 0 because media ended"),this.startPosition=this.lastCurrentTime=0},this.playlistType=r,this.hls=t,this.fragmentLoader=new wv(t.config),this.keyLoader=s,this.fragmentTracker=e,this.config=t.config,this.decrypter=new Sv(t.config)}registerListeners(){const{hls:t}=this;t.on(Yy.MEDIA_ATTACHED,this.onMediaAttached,this),t.on(Yy.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.on(Yy.MANIFEST_LOADED,this.onManifestLoaded,this),t.on(Yy.ERROR,this.onError,this)}unregisterListeners(){const{hls:t}=this;t.off(Yy.MEDIA_ATTACHED,this.onMediaAttached,this),t.off(Yy.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.off(Yy.MANIFEST_LOADED,this.onManifestLoaded,this),t.off(Yy.ERROR,this.onError,this)}doTick(){this.onTickEnd()}onTickEnd(){}startLoad(t){}stopLoad(){if(this.state===qS)return;this.fragmentLoader.abort(),this.keyLoader.abort(this.playlistType);const t=this.fragCurrent;null!=t&&t.loader&&(t.abortRequests(),this.fragmentTracker.removeFragment(t)),this.resetTransmuxer(),this.fragCurrent=null,this.fragPrevious=null,this.clearInterval(),this.clearNextTick(),this.state=qS}get startPositionValue(){const{nextLoadPosition:t,startPosition:e}=this;return-1===e&&t?t:e}get bufferingEnabled(){return this.buffering}pauseBuffering(){this.buffering=!1}resumeBuffering(){this.buffering=!0}get inFlightFrag(){return{frag:this.fragCurrent,state:this.state}}_streamEnded(t,e){if(e.live||!this.media)return!1;const s=t.end||0,i=this.config.timelineOffset||0;if(s<=i)return!1;const r=t.buffered;this.config.maxBufferHole&&r&&r.length>1&&(t=Lv.bufferedInfo(r,t.start,0));const n=t.nextStart;if(n&&n>i&&n<e.edge)return!1;if(this.media.currentTime<t.start)return!1;const o=e.partList;if(null!=o&&o.length){const t=o[o.length-1];return Lv.isBuffered(this.media,t.start+t.duration/2)}const a=e.fragments[e.fragments.length-1].type;return this.fragmentTracker.isEndListAppended(a)}getLevelDetails(){var t;if(this.levels&&null!==this.levelLastLoaded)return null==(t=this.levelLastLoaded)?void 0:t.details}get timelineOffset(){const t=this.config.timelineOffset;var e;return t?(null==(e=this.getLevelDetails())?void 0:e.appliedTimelineOffset)||t:0}onMediaAttached(t,e){const s=this.media=this.mediaBuffer=e.media;s.removeEventListener("seeking",this.onMediaSeeking),s.removeEventListener("ended",this.onMediaEnded),s.addEventListener("seeking",this.onMediaSeeking),s.addEventListener("ended",this.onMediaEnded);const i=this.config;this.levels&&i.autoStartLoad&&this.state===qS&&this.startLoad(i.startPosition)}onMediaDetaching(t,e){const s=!!e.transferMedia,i=this.media;if(null!==i){if(i.ended&&(this.log("MSE detaching and video ended, reset startPosition"),this.startPosition=this.lastCurrentTime=0),i.removeEventListener("seeking",this.onMediaSeeking),i.removeEventListener("ended",this.onMediaEnded),this.keyLoader&&!s&&this.keyLoader.detach(),this.media=this.mediaBuffer=null,this.loopSn=void 0,s)return this.resetLoadingState(),void this.resetTransmuxer();this.loadingParts=!1,this.fragmentTracker.removeAllFragments(),this.stopLoad()}}onManifestLoading(){this.initPTS=[],this.levels=this.levelLastLoaded=this.fragCurrent=null,this.lastCurrentTime=this.startPosition=0,this.startFragRequested=!1}onError(t,e){}onManifestLoaded(t,e){this.startTimeOffset=e.startTimeOffset}onHandlerDestroying(){this.stopLoad(),this.transmuxer&&(this.transmuxer.destroy(),this.transmuxer=null),super.onHandlerDestroying(),this.hls=this.onMediaSeeking=this.onMediaEnded=null}onHandlerDestroyed(){this.state=qS,this.fragmentLoader&&this.fragmentLoader.destroy(),this.keyLoader&&this.keyLoader.destroy(),this.decrypter&&this.decrypter.destroy(),this.hls=this.log=this.warn=this.decrypter=this.keyLoader=this.fragmentLoader=this.fragmentTracker=null,super.onHandlerDestroyed()}loadFragment(t,e,s){this.startFragRequested=!0,this._loadFragForPlayback(t,e,s)}_loadFragForPlayback(t,e,s){this._doFragLoad(t,e,s,t=>{const e=t.frag;if(this.fragContextChanged(e))return this.warn(`${e.type} sn: ${e.sn}${t.part?" part: "+t.part.index:""} of ${this.fragInfo(e,!1,t.part)}) was dropped during download.`),void this.fragmentTracker.removeFragment(e);e.stats.chunkCount++,this._handleFragmentLoadProgress(t)}).then(t=>{if(!t)return;const e=this.state,s=t.frag;this.fragContextChanged(s)?(e===JS||!this.fragCurrent&&e===ZS)&&(this.fragmentTracker.removeFragment(s),this.state=QS):("payload"in t&&(this.log(`Loaded ${s.type} sn: ${s.sn} of ${this.playlistLabel()} ${s.level}`),this.hls.trigger(Yy.FRAG_LOADED,t)),this._handleFragmentLoadComplete(t))}).catch(e=>{this.state!==qS&&this.state!==sE&&(this.warn(`Frag error: ${(null==e?void 0:e.message)||e}`),this.resetFragmentLoading(t))})}clearTrackerIfNeeded(t){var e;const{fragmentTracker:s}=this;if(s.getState(t)===lv){const e=t.type,i=this.getFwdBufferInfo(this.mediaBuffer,e),r=Math.max(t.duration,i?i.len:this.config.maxBufferLength),n=this.backtrackFragment;(1===(n?t.sn-n.sn:0)||this.reduceMaxBufferLength(r,t.duration))&&s.removeFragment(t)}else 0===(null==(e=this.mediaBuffer)?void 0:e.buffered.length)?s.removeAllFragments():s.hasParts(t.type)&&(s.detectPartialFragments({frag:t,part:null,stats:t.stats,id:t.type}),s.getState(t)===cv&&s.removeFragment(t))}checkLiveUpdate(t){if(t.updated&&!t.live){const e=t.fragments[t.fragments.length-1];this.fragmentTracker.detectPartialFragments({frag:e,part:null,stats:e.stats,id:e.type})}t.fragments[0]||(t.deltaUpdateFailed=!0)}waitForLive(t){const e=t.details;return(null==e?void 0:e.live)&&"EVENT"!==e.type&&(this.levelLastLoaded!==t||e.expired)}flushMainBuffer(t,e,s=null){if(!(t-e))return;const i={startOffset:t,endOffset:e,type:s};this.hls.trigger(Yy.BUFFER_FLUSHING,i)}_loadInitSegment(t,e){this._doFragLoad(t,e).then(t=>{const e=null==t?void 0:t.frag;if(!e||this.fragContextChanged(e)||!this.levels)throw new Error("init load aborted");return t}).then(t=>{const{hls:e}=this,{frag:s,payload:i}=t,r=s.decryptdata;if(i&&i.byteLength>0&&null!=r&&r.key&&r.iv&&Gv(r.method)){const n=self.performance.now();return this.decrypter.decrypt(new Uint8Array(i),r.key.buffer,r.iv.buffer,zv(r.method)).catch(t=>{throw e.trigger(Yy.ERROR,{type:qy.MEDIA_ERROR,details:Qy.FRAG_DECRYPT_ERROR,fatal:!1,error:t,reason:t.message,frag:s}),t}).then(i=>{const r=self.performance.now();return e.trigger(Yy.FRAG_DECRYPTED,{frag:s,payload:i,stats:{tstart:n,tdecrypt:r}}),t.payload=i,this.completeInitSegmentLoad(t)})}return this.completeInitSegmentLoad(t)}).catch(e=>{this.state!==qS&&this.state!==sE&&(this.warn(e),this.resetFragmentLoading(t))})}completeInitSegmentLoad(t){const{levels:e}=this;if(!e)throw new Error("init load aborted, missing levels");const s=t.frag.stats;this.state!==qS&&(this.state=QS),t.frag.data=new Uint8Array(t.payload),s.parsing.start=s.buffering.start=self.performance.now(),s.parsing.end=s.buffering.end=self.performance.now(),this.tick()}fragContextChanged(t){const{fragCurrent:e}=this;return!t||!e||t.sn!==e.sn||t.level!==e.level}fragBufferedComplete(t,e){const s=this.mediaBuffer?this.mediaBuffer:this.media;if(this.log(`Buffered ${t.type} sn: ${t.sn}${e?" part: "+e.index:""} of ${this.fragInfo(t,!1,e)} > buffer:${s?KS(Lv.getBuffered(s)):"(detached)"})`),DA(t)){var i;if(t.type!==sA){const e=t.elementaryStreams;if(!Object.keys(e).some(t=>!!e[t]))return void(this.state=QS)}const e=null==(i=this.levels)?void 0:i[t.level];null!=e&&e.fragmentError&&(this.log(`Resetting level fragment error count of ${e.fragmentError} on frag buffered`),e.fragmentError=0)}this.state=QS}_handleFragmentLoadComplete(t){const{transmuxer:e}=this;if(!e)return;const{frag:s,part:i,partsLoaded:r}=t,n=!r||0===r.length||r.some(t=>!t),o=new Cv(s.level,s.sn,s.stats.chunkCount+1,0,i?i.index:-1,!n);e.flush(o)}_handleFragmentLoadProgress(t){}_doFragLoad(t,e,s=null,i){var r;this.fragCurrent=t;const n=null==e?void 0:e.details;if(!this.levels||!n)throw new Error(`frag load aborted, missing level${n?"":" detail"}s`);let o=null;!t.encrypted||null!=(r=t.decryptdata)&&r.key?t.encrypted||(o=this.keyLoader.loadClear(t,n.encryptedFragments),o&&this.log("[eme] blocking frag load until media-keys acquired")):(this.log(`Loading key for ${t.sn} of [${n.startSN}-${n.endSN}], ${this.playlistLabel()} ${t.level}`),this.state=YS,this.fragCurrent=t,o=this.keyLoader.load(t).then(t=>{if(!this.fragContextChanged(t.frag))return this.hls.trigger(Yy.KEY_LOADED,t),this.state===YS&&(this.state=QS),t}),this.hls.trigger(Yy.KEY_LOADING,{frag:t}),null===this.fragCurrent&&(o=Promise.reject(new Error("frag load aborted, context changed in KEY_LOADING"))));const a=this.fragPrevious;if(DA(t)&&(!a||t.sn!==a.sn)){const s=this.shouldLoadParts(e.details,t.end);s!==this.loadingParts&&(this.log(`LL-Part loading ${s?"ON":"OFF"} loading sn ${null==a?void 0:a.sn}->${t.sn}`),this.loadingParts=s)}if(s=Math.max(t.start,s||0),this.loadingParts&&DA(t)){const r=n.partList;if(r&&i){s>t.end&&n.fragmentHint&&(t=n.fragmentHint);const a=this.getNextPart(r,t,s);if(a>-1){const h=r[a];let l;return t=this.fragCurrent=h.fragment,this.log(`Loading ${t.type} sn: ${t.sn} part: ${h.index} (${a}/${r.length-1}) of ${this.fragInfo(t,!1,h)}) cc: ${t.cc} [${n.startSN}-${n.endSN}], target: ${parseFloat(s.toFixed(3))}`),this.nextLoadPosition=h.start+h.duration,this.state=JS,l=o?o.then(s=>!s||this.fragContextChanged(s.frag)?null:this.doFragPartsLoad(t,h,e,i)).catch(t=>this.handleFragLoadError(t)):this.doFragPartsLoad(t,h,e,i).catch(t=>this.handleFragLoadError(t)),this.hls.trigger(Yy.FRAG_LOADING,{frag:t,part:h,targetBufferTime:s}),null===this.fragCurrent?Promise.reject(new Error("frag load aborted, context changed in FRAG_LOADING parts")):l}if(!t.url||this.loadedEndOfParts(r,s))return Promise.resolve(null)}}if(DA(t)&&this.loadingParts)this.log(`LL-Part loading OFF after next part miss @${s.toFixed(2)}`),this.loadingParts=!1;else if(!t.url)return Promise.resolve(null);this.log(`Loading ${t.type} sn: ${t.sn} of ${this.fragInfo(t,!1)}) cc: ${t.cc} ${n?"["+n.startSN+"-"+n.endSN+"]":""}, target: ${parseFloat(s.toFixed(3))}`),zy(t.sn)&&!this.bitrateTest&&(this.nextLoadPosition=t.start+t.duration),this.state=JS;const h=this.config.progressive;let l;return l=h&&o?o.then(e=>!e||this.fragContextChanged(null==e?void 0:e.frag)?null:this.fragmentLoader.load(t,i)).catch(t=>this.handleFragLoadError(t)):Promise.all([this.fragmentLoader.load(t,h?i:void 0),o]).then(([t])=>(!h&&t&&i&&i(t),t)).catch(t=>this.handleFragLoadError(t)),this.hls.trigger(Yy.FRAG_LOADING,{frag:t,targetBufferTime:s}),null===this.fragCurrent?Promise.reject(new Error("frag load aborted, context changed in FRAG_LOADING")):l}doFragPartsLoad(t,e,s,i){return new Promise((r,n)=>{var o;const a=[],h=null==(o=s.details)?void 0:o.partList,l=e=>{this.fragmentLoader.loadPart(t,e,i).then(i=>{a[e.index]=i;const n=i.part;this.hls.trigger(Yy.FRAG_LOADED,i);const o=OS(s.details,t.sn,e.index+1)||NS(h,t.sn,e.index+1);if(!o)return r({frag:t,part:n,partsLoaded:a});l(o)}).catch(n)};l(e)})}handleFragLoadError(t){if("data"in t){const e=t.data;t.data&&e.details===Qy.INTERNAL_ABORTED?this.handleFragLoadAborted(e.frag,e.part):this.hls.trigger(Yy.ERROR,e)}else this.hls.trigger(Yy.ERROR,{type:qy.OTHER_ERROR,details:Qy.INTERNAL_EXCEPTION,err:t,error:t,fatal:!0});return null}_handleTransmuxerFlush(t){const e=this.getCurrentContext(t);if(!e||this.state!==ZS)return void(this.fragCurrent||this.state===qS||this.state===sE||(this.state=QS));const{frag:s,part:i,level:r}=e,n=self.performance.now();s.stats.parsing.end=n,i&&(i.stats.parsing.end=n);const o=this.getLevelDetails(),a=o&&s.sn>o.endSN||this.shouldLoadParts(o,s.end);a!==this.loadingParts&&(this.log(`LL-Part loading ${a?"ON":"OFF"} after parsing segment ending @${s.end.toFixed(2)}`),this.loadingParts=a),this.updateLevelTiming(s,i,r,t.partial)}shouldLoadParts(t,e){if(this.config.lowLatencyMode){if(!t)return this.loadingParts;if(null!=t&&t.partList){var s;const r=t.partList[0];if(e>=r.end+((null==(s=t.fragmentHint)?void 0:s.duration)||0)){var i;if((this.hls.hasEnoughToStart?(null==(i=this.media)?void 0:i.currentTime)||this.lastCurrentTime:this.getLoadPosition())>r.start-r.fragment.duration)return!0}}}return!1}getCurrentContext(t){const{levels:e,fragCurrent:s}=this,{level:i,sn:r,part:n}=t;if(null==e||!e[i])return this.warn(`Levels object was unset while buffering fragment ${r} of ${this.playlistLabel()} ${i}. The current chunk will not be buffered.`),null;const o=e[i],a=o.details,h=n>-1?OS(a,r,n):null,l=h?h.fragment:US(a,r,s);return l?(s&&s!==l&&(l.stats=s.stats),{frag:l,part:h,level:o}):null}bufferFragmentData(t,e,s,i,r){var n;if(!t||this.state!==ZS)return;const{data1:o,data2:a}=t;let h=o;if(o&&a&&(h=XA(o,a)),null==(n=h)||!n.length)return;const l={type:t.type,frag:e,part:s,chunkMeta:i,parent:e.type,data:h};if(this.hls.trigger(Yy.BUFFER_APPENDING,l),t.dropped&&t.independent&&!s){if(r)return;this.flushBufferGap(e)}}flushBufferGap(t){const e=this.media;if(!e)return;if(!Lv.isBuffered(e,e.currentTime))return void this.flushMainBuffer(0,t.start);const s=e.currentTime,i=Lv.bufferInfo(e,s,0),r=t.duration,n=Math.min(2*this.config.maxFragLookUpTolerance,.25*r),o=Math.max(Math.min(t.start-n,i.end-n),s+n);t.start-o>n&&this.flushMainBuffer(o,t.start)}getFwdBufferInfo(t,e){var s;const i=this.getLoadPosition();if(!zy(i))return null;const r=this.lastCurrentTime>i||null!=(s=this.media)&&s.paused?0:this.config.maxBufferHole;return this.getFwdBufferInfoAtPos(t,i,e,r)}getFwdBufferInfoAtPos(t,e,s,i){const r=Lv.bufferInfo(t,e,i);if(0===r.len&&void 0!==r.nextStart){const n=this.fragmentTracker.getBufferedFrag(e,s);if(n&&(r.nextStart<=n.end||n.gap)){const s=Math.max(Math.min(r.nextStart,n.end)-e,i);return Lv.bufferInfo(t,e,s)}}return r}getMaxBufferLength(t){const{config:e}=this;let s;return s=t?Math.max(8*e.maxBufferSize/t,e.maxBufferLength):e.maxBufferLength,Math.min(s,e.maxMaxBufferLength)}reduceMaxBufferLength(t,e){const s=this.config,i=Math.max(Math.min(t-e,s.maxBufferLength),e),r=Math.max(t-3*e,s.maxMaxBufferLength/2,i);return r>=i&&(s.maxMaxBufferLength=r,this.warn(`Reduce max buffer length to ${r}s`),!0)}getAppendedFrag(t,e=tA){var s;const i=null==(s=this.fragmentTracker)?void 0:s.getAppendedFrag(t,e);return i&&"fragment"in i?i.fragment:i}getNextFragment(t,e){const s=e.fragments,i=s.length;if(!i)return null;const{config:r}=this,n=s[0].start,o=r.lowLatencyMode&&!!e.partList;let a=null;if(e.live){const s=r.initialLiveManifestSize;if(i<s)return this.warn(`Not enough fragments to start playback (have: ${i}, need: ${s})`),null;if(!e.PTSKnown&&!this.startFragRequested&&-1===this.startPosition||t<n){var h;o&&!this.loadingParts&&(this.log("LL-Part loading ON for initial live fragment"),this.loadingParts=!0),a=this.getInitialLiveFragment(e);const s=this.hls.startPosition,i=this.hls.liveSyncPosition,r=a?(-1!==s&&s>=n?s:i)||a.start:t;this.log(`Setting startPosition to ${r} to match start frag at live edge. mainStart: ${s} liveSyncPosition: ${i} frag.start: ${null==(h=a)?void 0:h.start}`),this.startPosition=this.nextLoadPosition=r}}else t<=n&&(a=s[0]);if(!a){const s=this.loadingParts?e.partEnd:e.fragmentEnd;a=this.getFragmentAtPosition(t,s,e)}let l=this.filterReplacedPrimary(a,e);if(!l&&a){const t=a.sn-e.startSN;l=this.filterReplacedPrimary(s[t+1]||null,e)}return this.mapToInitFragWhenRequired(l)}isLoopLoading(t,e){const s=this.fragmentTracker.getState(t);return(s===dv||s===cv&&!!t.gap)&&this.nextLoadPosition>e}getNextFragmentLoopLoading(t,e,s,i,r){let n=null;if(t.gap&&(n=this.getNextFragment(this.nextLoadPosition,e),n&&!n.gap&&s.nextStart)){const t=this.getFwdBufferInfoAtPos(this.mediaBuffer?this.mediaBuffer:this.media,s.nextStart,i,0);if(null!==t&&s.len+t.len>=r){const t=n.sn;return this.loopSn!==t&&(this.log(`buffer full after gaps in "${i}" playlist starting at sn: ${t}`),this.loopSn=t),null}}return this.loopSn=void 0,n}get primaryPrefetch(){if(oE(this.hls.config)){var t,e;if(null==(t=this.hls.interstitialsManager)||null==(e=t.playingItem)?void 0:e.event)return!0}return!1}filterReplacedPrimary(t,e){if(!t)return t;if(oE(this.hls.config)&&t.type!==sA){const s=this.hls.interstitialsManager,i=null==s?void 0:s.bufferingItem;if(i){const s=i.event;if(s){if(s.appendInPlace||Math.abs(t.start-i.start)>1||0===i.start)return null}else{if(t.end<=i.start&&!1===(null==e?void 0:e.live))return null;if(t.start>i.end&&i.nextEvent&&(i.nextEvent.appendInPlace||t.start-i.end>1))return null}}const r=null==s?void 0:s.playerQueue;if(r)for(let e=r.length;e--;){const s=r[e].interstitial;if(s.appendInPlace&&t.start>=s.startTime&&t.end<=s.resumeTime)return null}}return t}mapToInitFragWhenRequired(t){return null==t||!t.initSegment||null!=t&&t.initSegment.data||this.bitrateTest?t:t.initSegment}getNextPart(t,e,s){let i=-1,r=!1,n=!0;for(let o=0,a=t.length;o<a;o++){const a=t[o];if(n=n&&!a.independent,i>-1&&s<a.start)break;const h=a.loaded;h?i=-1:(r||a.independent||n)&&a.fragment===e&&(i=o),r=h}return i}loadedEndOfParts(t,e){const s=t[t.length-1];return s&&e>s.start&&s.loaded}getInitialLiveFragment(t){const e=t.fragments,s=this.fragPrevious;let i=null;if(s){if(t.hasProgramDateTime&&(this.log(`Live playlist, switching playlist, load frag with same PDT: ${s.programDateTime}`),i=function(t,e,s){if(null===e||!Array.isArray(t)||!t.length||!zy(e))return null;if(e<(t[0].programDateTime||0))return null;if(e>=(t[t.length-1].endProgramDateTime||0))return null;for(let i=0;i<t.length;++i){const r=t[i];if(qb(e,s,r))return r}return null}(e,s.endProgramDateTime,this.config.maxFragLookUpTolerance)),!i){const r=s.sn+1;if(r>=t.startSN&&r<=t.endSN){const n=e[r-t.startSN];s.cc===n.cc&&(i=n,this.log(`Live playlist, switching playlist, load frag with next SN: ${i.sn}`))}i||(i=Qb(t,s.cc,s.end),i&&this.log(`Live playlist, switching playlist, load frag with same CC: ${i.sn}`))}}else{const e=this.hls.liveSyncPosition;null!==e&&(i=this.getFragmentAtPosition(e,this.bitrateTest?t.fragmentEnd:t.edge,t))}return i}getFragmentAtPosition(t,e,s){const{config:i}=this;let{fragPrevious:r}=this,{fragments:n,endSN:o}=s;const{fragmentHint:a}=s,{maxFragLookUpTolerance:h}=i,l=s.partList,c=!!(this.loadingParts&&null!=l&&l.length&&a);let d;if(c&&a&&!this.bitrateTest&&l[l.length-1].fragment.sn===a.sn&&(n=n.concat(a),o=a.sn),t<e){var u;d=Hb(r,n,t,t<this.lastCurrentTime||t>e-h||null!=(u=this.media)&&u.paused||!this.startFragRequested?0:h)}else d=n[n.length-1];if(d){const t=d.sn-s.startSN,e=this.fragmentTracker.getState(d);if((e===dv||e===cv&&d.gap)&&(r=d),r&&d.sn===r.sn&&(!c||l[0].fragment.sn>d.sn||!s.live&&!c)){if(r&&d.level===r.level){const e=n[t+1];d=d.sn<o&&this.fragmentTracker.getState(e)!==dv?e:null}}}return d}alignPlaylists(t,e,s){const i=t.fragments.length;if(!i)return this.warn("No fragments in live playlist"),0;const r=t.fragmentStart,n=!e,o=t.alignedSliding&&zy(r);if(n||!o&&!r){!function(t,e){t&&(zS(e,t),!e.alignedSliding&&t&&HS(e,t),e.alignedSliding||!t||e.skippedSegments||MS(t,e,!1))}(s,t);const r=t.fragmentStart;return this.log(`Live playlist sliding: ${r.toFixed(2)} start-sn: ${e?e.startSN:"na"}->${t.startSN} fragments: ${i}`),r}return r}waitForCdnTuneIn(t){return t.live&&t.canBlockReload&&t.partTarget&&t.tuneInGoal>Math.max(t.partHoldBack,3*t.partTarget)}setStartPosition(t,e){let s=this.startPosition;s<e&&(s=-1);const i=this.timelineOffset;if(-1===s){const r=null!==this.startTimeOffset,n=r?this.startTimeOffset:t.startTimeOffset;null!==n&&zy(n)?(s=e+n,n<0&&(s+=t.edge),s=Math.min(Math.max(e,s),e+t.totalduration),this.log(`Setting startPosition to ${s} for start time offset ${n} found in ${r?"multivariant":"media"} playlist`),this.startPosition=s):t.live?(s=this.hls.liveSyncPosition||e,this.log(`Setting startPosition to -1 to start at live edge ${s}`),this.startPosition=-1):(this.log("setting startPosition to 0 by default"),this.startPosition=s=0),this.lastCurrentTime=s+i}this.nextLoadPosition=s+i}getLoadPosition(){var t;const{media:e}=this;let s=0;return null!=(t=this.hls)&&t.hasEnoughToStart&&e?s=e.currentTime:this.nextLoadPosition>=0&&(s=this.nextLoadPosition),s}handleFragLoadAborted(t,e){this.transmuxer&&t.type===this.playlistType&&DA(t)&&t.stats.aborted&&(this.warn(`Fragment ${t.sn}${e?" part "+e.index:""} of ${this.playlistLabel()} ${t.level} was aborted`),this.resetFragmentLoading(t))}resetFragmentLoading(t){this.fragCurrent&&(this.fragContextChanged(t)||this.state===XS)||(this.state=QS)}onFragmentOrKeyLoadError(t,e){if(e.chunkMeta&&!e.frag){const t=this.getCurrentContext(e.chunkMeta);t&&(e.frag=t.frag)}const s=e.frag;if(!s||s.type!==t||!this.levels)return;var i;if(this.fragContextChanged(s))return void this.warn(`Frag load error must match current frag to retry ${s.url} > ${null==(i=this.fragCurrent)?void 0:i.url}`);const r=e.details===Qy.FRAG_GAP;r&&this.fragmentTracker.fragBuffered(s,!0);const n=e.errorAction,{action:o,flags:a,retryCount:h=0,retryConfig:l}=n||{},c=!!n&&!!l,d=c&&o===iv,u=c&&!n.resolved&&a===nv;if(!d&&u&&DA(s)&&!s.endList)this.resetFragmentErrors(t),this.treatAsGap(s),n.resolved=!0;else if((d||u)&&h<l.maxNumRetry){this.resetStartWhenNotLoaded(this.levelLastLoaded);const i=Xb(l,h);this.warn(`Fragment ${s.sn} of ${t} ${s.level} errored with ${e.details}, retrying loading ${h+1}/${l.maxNumRetry} in ${i}ms`),n.resolved=!0,this.retryDate=self.performance.now()+i,this.state=XS}else if(l&&n){if(this.resetFragmentErrors(t),!(h<l.maxNumRetry))return void this.warn(`${e.details} reached or exceeded max retry (${h})`);r||o===sv||(n.resolved=!0)}else this.state=o===ev?rE:sE;this.tickImmediate()}reduceLengthAndFlushBuffer(t){if(this.state===ZS||this.state===tE){const e=t.frag,s=t.parent,i=this.getFwdBufferInfo(this.mediaBuffer,s),r=i&&i.len>.5;r&&this.reduceMaxBufferLength(i.len,(null==e?void 0:e.duration)||10);const n=!r;return n&&this.warn(`Buffer full error while media.currentTime is not buffered, flush ${s} buffer`),e&&(this.fragmentTracker.removeFragment(e),this.nextLoadPosition=e.start),this.resetLoadingState(),n}return!1}resetFragmentErrors(t){t===eA&&(this.fragCurrent=null),this.hls.hasEnoughToStart||(this.startFragRequested=!1),this.state!==qS&&(this.state=QS)}afterBufferFlushed(t,e,s){if(!t)return;const i=Lv.getBuffered(t);this.fragmentTracker.detectEvictedFragments(e,i,s),this.state===eE&&this.resetLoadingState()}resetLoadingState(){this.log("Reset loading state"),this.fragCurrent=null,this.fragPrevious=null,this.state!==qS&&(this.state=QS)}resetStartWhenNotLoaded(t){if(!this.hls.hasEnoughToStart){this.startFragRequested=!1;const e=t?t.details:null;null!=e&&e.live?(this.log("resetting startPosition for live start"),this.startPosition=-1,this.setStartPosition(e,e.fragmentStart),this.resetLoadingState()):this.nextLoadPosition=this.startPosition}}resetWhenMissingContext(t){this.warn(`The loading context changed while buffering fragment ${t.sn} of ${this.playlistLabel()} ${t.level}. This chunk will not be buffered.`),this.removeUnbufferedFrags(),this.resetStartWhenNotLoaded(this.levelLastLoaded),this.resetLoadingState()}removeUnbufferedFrags(t=0){this.fragmentTracker.removeFragmentsInRange(t,1/0,this.playlistType,!1,!0)}updateLevelTiming(t,e,s,i){const r=s.details;if(!r)return void this.warn("level.details undefined");var n;if(!Object.keys(t.elementaryStreams).reduce((e,n)=>{const o=t.elementaryStreams[n];if(o){const a=o.endPTS-o.startPTS;if(a<=0)return this.warn(`Could not parse fragment ${t.sn} ${n} duration reliably (${a})`),e||!1;const h=i?0:RS(r,t,o.startPTS,o.endPTS,o.startDTS,o.endDTS);return this.hls.trigger(Yy.LEVEL_PTS_UPDATED,{details:r,level:s,drift:h,type:n,frag:t,start:o.startPTS,end:o.endPTS}),!0}return e},!1)&&(0===s.fragmentError&&this.treatAsGap(t,s),null===(null==(n=this.transmuxer)?void 0:n.error))){const e=new Error(`Found no media in fragment ${t.sn} of ${this.playlistLabel()} ${t.level} resetting transmuxer to fallback to playlist timing`);if(this.warn(e.message),this.hls.trigger(Yy.ERROR,{type:qy.MEDIA_ERROR,details:Qy.FRAG_PARSING_ERROR,fatal:!1,error:e,frag:t,reason:`Found no media in msn ${t.sn} of ${this.playlistLabel()} "${s.url}"`}),!this.hls)return;this.resetTransmuxer()}this.state=tE,this.log(`Parsed ${t.type} sn: ${t.sn}${e?" part: "+e.index:""} of ${this.fragInfo(t,!1,e)})`),this.hls.trigger(Yy.FRAG_PARSED,{frag:t,part:e})}playlistLabel(){return this.playlistType===tA?"level":"track"}fragInfo(t,e=!0,s){var i,r;return`${this.playlistLabel()} ${t.level} (${s?"part":"frag"}:[${(null!=(i=e&&!s?t.startPTS:(s||t).start)?i:NaN).toFixed(3)}-${(null!=(r=e&&!s?t.endPTS:(s||t).end)?r:NaN).toFixed(3)}]${s&&"main"===t.type?"INDEPENDENT="+(s.independent?"YES":"NO"):""}`}treatAsGap(t,e){e&&e.fragmentError++,t.gap=!0,this.fragmentTracker.removeFragment(t),this.fragmentTracker.fragBuffered(t,!0)}resetTransmuxer(){var t;null==(t=this.transmuxer)||t.reset()}recoverWorkerError(t){"demuxerWorker"===t.event&&(this.fragmentTracker.removeAllFragments(),this.transmuxer&&(this.transmuxer.destroy(),this.transmuxer=null),this.resetStartWhenNotLoaded(this.levelLastLoaded),this.resetLoadingState())}set state(t){const e=this._state;e!==t&&(this._state=t,this.log(`${e}->${t}`))}get state(){return this._state}}function oE(t){return!!t.interstitialsController&&!1!==t.enableInterstitialPlayback}class aE{constructor(){this.chunks=[],this.dataLength=0}push(t){this.chunks.push(t),this.dataLength+=t.length}flush(){const{chunks:t,dataLength:e}=this;let s;return t.length?(s=1===t.length?t[0]:function(t,e){const s=new Uint8Array(e);let i=0;for(let e=0;e<t.length;e++){const r=t[e];s.set(r,i),i+=r.length}return s}(t,e),this.reset(),s):new Uint8Array(0)}reset(){this.chunks.length=0,this.dataLength=0}}var hE,lE={exports:{}};var cE=(hE||(hE=1,function(t){var e=Object.prototype.hasOwnProperty,s="~";function i(){}function r(t,e,s){this.fn=t,this.context=e,this.once=s||!1}function n(t,e,i,n,o){if("function"!=typeof i)throw new TypeError("The listener must be a function");var a=new r(i,n||t,o),h=s?s+e:e;return t._events[h]?t._events[h].fn?t._events[h]=[t._events[h],a]:t._events[h].push(a):(t._events[h]=a,t._eventsCount++),t}function o(t,e){0===--t._eventsCount?t._events=new i:delete t._events[e]}function a(){this._events=new i,this._eventsCount=0}Object.create&&(i.prototype=Object.create(null),(new i).__proto__||(s=!1)),a.prototype.eventNames=function(){var t,i,r=[];if(0===this._eventsCount)return r;for(i in t=this._events)e.call(t,i)&&r.push(s?i.slice(1):i);return Object.getOwnPropertySymbols?r.concat(Object.getOwnPropertySymbols(t)):r},a.prototype.listeners=function(t){var e=s?s+t:t,i=this._events[e];if(!i)return[];if(i.fn)return[i.fn];for(var r=0,n=i.length,o=new Array(n);r<n;r++)o[r]=i[r].fn;return o},a.prototype.listenerCount=function(t){var e=s?s+t:t,i=this._events[e];return i?i.fn?1:i.length:0},a.prototype.emit=function(t,e,i,r,n,o){var a=s?s+t:t;if(!this._events[a])return!1;var h,l,c=this._events[a],d=arguments.length;if(c.fn){switch(c.once&&this.removeListener(t,c.fn,void 0,!0),d){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,e),!0;case 3:return c.fn.call(c.context,e,i),!0;case 4:return c.fn.call(c.context,e,i,r),!0;case 5:return c.fn.call(c.context,e,i,r,n),!0;case 6:return c.fn.call(c.context,e,i,r,n,o),!0}for(l=1,h=new Array(d-1);l<d;l++)h[l-1]=arguments[l];c.fn.apply(c.context,h)}else{var u,p=c.length;for(l=0;l<p;l++)switch(c[l].once&&this.removeListener(t,c[l].fn,void 0,!0),d){case 1:c[l].fn.call(c[l].context);break;case 2:c[l].fn.call(c[l].context,e);break;case 3:c[l].fn.call(c[l].context,e,i);break;case 4:c[l].fn.call(c[l].context,e,i,r);break;default:if(!h)for(u=1,h=new Array(d-1);u<d;u++)h[u-1]=arguments[u];c[l].fn.apply(c[l].context,h)}}return!0},a.prototype.on=function(t,e,s){return n(this,t,e,s,!1)},a.prototype.once=function(t,e,s){return n(this,t,e,s,!0)},a.prototype.removeListener=function(t,e,i,r){var n=s?s+t:t;if(!this._events[n])return this;if(!e)return o(this,n),this;var a=this._events[n];if(a.fn)a.fn!==e||r&&!a.once||i&&a.context!==i||o(this,n);else{for(var h=0,l=[],c=a.length;h<c;h++)(a[h].fn!==e||r&&!a[h].once||i&&a[h].context!==i)&&l.push(a[h]);l.length?this._events[n]=1===l.length?l[0]:l:o(this,n)}return this},a.prototype.removeAllListeners=function(t){var e;return t?(e=s?s+t:t,this._events[e]&&o(this,e)):(this._events=new i,this._eventsCount=0),this},a.prototype.off=a.prototype.removeListener,a.prototype.addListener=a.prototype.on,a.prefixed=s,a.EventEmitter=a,t.exports=a}(lE)),lE.exports),dE=vA(cE);const uE="1.6.5",pE={};function fE(t,e){return e+10<=t.length&&51===t[e]&&68===t[e+1]&&73===t[e+2]&&t[e+3]<255&&t[e+4]<255&&t[e+6]<128&&t[e+7]<128&&t[e+8]<128&&t[e+9]<128}function mE(t,e){return e+10<=t.length&&73===t[e]&&68===t[e+1]&&51===t[e+2]&&t[e+3]<255&&t[e+4]<255&&t[e+6]<128&&t[e+7]<128&&t[e+8]<128&&t[e+9]<128}function gE(t,e){let s=0;return s=(127&t[e])<<21,s|=(127&t[e+1])<<14,s|=(127&t[e+2])<<7,s|=127&t[e+3],s}function yE(t,e){const s=e;let i=0;for(;mE(t,e);){i+=10;i+=gE(t,e+6),fE(t,e+10)&&(i+=10),e+=i}if(i>0)return t.subarray(s,s+i)}function AE(t,e){return 255===t[e]&&240==(246&t[e+1])}function bE(t,e){return 1&t[e+1]?7:9}function vE(t,e){return(3&t[e+3])<<11|t[e+4]<<3|(224&t[e+5])>>>5}function SE(t,e){return e+1<t.length&&AE(t,e)}function EE(t,e){if(SE(t,e)){const s=bE(t,e);if(e+s>=t.length)return!1;const i=vE(t,e);if(i<=s)return!1;const r=e+i;return r===t.length||SE(t,r)}return!1}function wE(t,e,s,i,r){if(!t.samplerate){const n=function(t,e,s,i){const r=e[s+2],n=r>>2&15;if(n>12){const e=new Error(`invalid ADTS sampling index:${n}`);return void t.emit(Yy.ERROR,Yy.ERROR,{type:qy.MEDIA_ERROR,details:Qy.FRAG_PARSING_ERROR,fatal:!0,error:e,reason:e.message})}const o=1+(r>>6&3),a=e[s+3]>>6&3|(1&r)<<2,h="mp4a.40."+o,l=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350][n];let c=n;5!==o&&29!==o||(c-=3);const d=[o<<3|(14&c)>>1,(1&c)<<7|a<<3];return mA.log(`manifest codec:${i}, parsed codec:${h}, channels:${a}, rate:${l} (ADTS object type:${o} sampling index:${n})`),{config:d,samplerate:l,channelCount:a,codec:h,parsedCodec:h,manifestCodec:i}}(e,s,i,r);if(!n)return;oA(t,n)}}function TE(t){return 9216e4/t}function IE(t,e,s,i,r){const n=i+r*TE(t.samplerate),o=function(t,e){const s=bE(t,e);if(e+s<=t.length){const i=vE(t,e)-s;if(i>0)return{headerLength:s,frameLength:i}}}(e,s);let a;if(o){const{frameLength:i,headerLength:r}=o,h=r+i,l=Math.max(0,s+h-e.length);l?(a=new Uint8Array(h-r),a.set(e.subarray(s+r,e.length),0)):a=e.subarray(s+r,s+h);const c={unit:a,pts:n};return l||t.samples.push(c),{sample:c,length:h,missing:l}}const h=e.length-s;a=new Uint8Array(h),a.set(e.subarray(s,e.length),0);return{sample:{unit:a,pts:n},length:h,missing:-1}}function kE(t,e){return mE(t,e)&&gE(t,e+6)+10<=t.length-e}function _E(t,e=0,s=1/0){return function(t,e,s,i){const r=function(t){return t instanceof ArrayBuffer?t:t.buffer}(t);let n=1;"BYTES_PER_ELEMENT"in i&&(n=i.BYTES_PER_ELEMENT);const o=(d=t,d&&d.buffer instanceof ArrayBuffer&&void 0!==d.byteLength&&void 0!==d.byteOffset?t.byteOffset:0),a=(o+t.byteLength)/n,h=(o+e)/n,l=Math.floor(Math.max(0,Math.min(h,a))),c=Math.floor(Math.min(l+Math.max(s,0),a));var d;return new i(r,l,c-l)}(t,e,s,Uint8Array)}function CE(t){const e={key:t.type,description:"",data:"",mimeType:null,pictureType:null};if(t.size<2)return;if(3!==t.data[0])return void console.log("Ignore frame with unrecognized character encoding");const s=t.data.subarray(1).indexOf(0);if(-1===s)return;const i=AA(_E(t.data,1,s)),r=t.data[2+s],n=t.data.subarray(3+s).indexOf(0);if(-1===n)return;const o=AA(_E(t.data,3+s,n));let a;return a="--\x3e"===i?AA(_E(t.data,4+s+n)):function(t){return t instanceof ArrayBuffer?t:0==t.byteOffset&&t.byteLength==t.buffer.byteLength?t.buffer:new Uint8Array(t).buffer}(t.data.subarray(4+s+n)),e.mimeType=i,e.pictureType=r,e.description=o,e.data=a,e}function DE(t){return"PRIV"===t.type?function(t){if(t.size<2)return;const e=AA(t.data,!0),s=new Uint8Array(t.data.subarray(e.length+1));return{key:t.type,info:e,data:s.buffer}}(t):"W"===t.type[0]?function(t){if("WXXX"===t.type){if(t.size<2)return;let e=1;const s=AA(t.data.subarray(e),!0);e+=s.length+1;const i=AA(t.data.subarray(e));return{key:t.type,info:s,data:i}}const e=AA(t.data);return{key:t.type,info:"",data:e}}(t):"APIC"===t.type?CE(t):function(t){if(t.size<2)return;if("TXXX"===t.type){let e=1;const s=AA(t.data.subarray(e),!0);e+=s.length+1;const i=AA(t.data.subarray(e));return{key:t.type,info:s,data:i}}const e=AA(t.data.subarray(1));return{key:t.type,info:"",data:e}}(t)}function LE(t){const e=String.fromCharCode(t[0],t[1],t[2],t[3]),s=gE(t,4);return{type:e,size:s,data:t.subarray(10,10+s)}}function RE(t){let e=0;const s=[];for(;mE(t,e);){const i=gE(t,e+6);t[e+5]>>6&1&&(e+=10),e+=10;const r=e+i;for(;e+10<r;){const i=LE(t.subarray(e)),r=DE(i);r&&s.push(r),e+=i.size+10}fE(t,e)&&(e+=10)}return s}function PE(t){return t&&"PRIV"===t.key&&"com.apple.streaming.transportStreamTimestamp"===t.info}function xE(t){if(8===t.data.byteLength){const e=new Uint8Array(t.data),s=1&e[3];let i=(e[4]<<23)+(e[5]<<15)+(e[6]<<7)+e[7];return i/=45,s&&(i+=47721858.84),Math.round(i)}}function ME(t){const e=RE(t);for(let t=0;t<e.length;t++){const s=e[t];if(PE(s))return xE(s)}}let BE=function(t){return t.audioId3="org.id3",t.dateRange="com.apple.quicktime.HLS",t.emsg="https://aomedia.org/emsg/ID3",t.misbklv="urn:misb:KLV:bin:1910.1",t}({});function FE(t="",e=9e4){return{type:t,id:-1,pid:-1,inputTimeScale:e,sequenceNumber:-1,samples:[],dropped:0}}class UE{constructor(){this._audioTrack=void 0,this._id3Track=void 0,this.frameIndex=0,this.cachedData=null,this.basePTS=null,this.initPTS=null,this.lastPTS=null}resetInitSegment(t,e,s,i){this._id3Track={type:"id3",id:3,pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0}}resetTimeStamp(t){this.initPTS=t,this.resetContiguity()}resetContiguity(){this.basePTS=null,this.lastPTS=null,this.frameIndex=0}canParse(t,e){return!1}appendFrame(t,e,s){}demux(t,e){this.cachedData&&(t=XA(this.cachedData,t),this.cachedData=null);let s,i=yE(t,0),r=i?i.length:0;const n=this._audioTrack,o=this._id3Track,a=i?ME(i):void 0,h=t.length;for((null===this.basePTS||0===this.frameIndex&&zy(a))&&(this.basePTS=OE(a,e,this.initPTS),this.lastPTS=this.basePTS),null===this.lastPTS&&(this.lastPTS=this.basePTS),i&&i.length>0&&o.samples.push({pts:this.lastPTS,dts:this.lastPTS,data:i,type:BE.audioId3,duration:Number.POSITIVE_INFINITY});r<h;){if(this.canParse(t,r)){const e=this.appendFrame(n,t,r);e?(this.frameIndex++,this.lastPTS=e.sample.pts,r+=e.length,s=r):r=h}else kE(t,r)?(i=yE(t,r),o.samples.push({pts:this.lastPTS,dts:this.lastPTS,data:i,type:BE.audioId3,duration:Number.POSITIVE_INFINITY}),r+=i.length,s=r):r++;if(r===h&&s!==h){const e=t.slice(s);this.cachedData?this.cachedData=XA(this.cachedData,e):this.cachedData=e}}return{audioTrack:n,videoTrack:FE(),id3Track:o,textTrack:FE()}}demuxSampleAes(t,e,s){return Promise.reject(new Error(`[${this}] This demuxer does not support Sample-AES decryption`))}flush(t){const e=this.cachedData;return e&&(this.cachedData=null,this.demux(e,0)),{audioTrack:this._audioTrack,videoTrack:FE(),id3Track:this._id3Track,textTrack:FE()}}destroy(){this.cachedData=null,this._audioTrack=this._id3Track=void 0}}const OE=(t,e,s)=>{if(zy(t))return 90*t;return 9e4*e+(s?9e4*s.baseTime/s.timescale:0)};let NE=null;const VE=[32,64,96,128,160,192,224,256,288,320,352,384,416,448,32,48,56,64,80,96,112,128,160,192,224,256,320,384,32,40,48,56,64,80,96,112,128,160,192,224,256,320,32,48,56,64,80,96,112,128,144,160,176,192,224,256,8,16,24,32,40,48,56,64,80,96,112,128,144,160],jE=[44100,48e3,32e3,22050,24e3,16e3,11025,12e3,8e3],WE=[[0,72,144,12],[0,0,0,0],[0,72,144,12],[0,144,144,12]],GE=[0,1,1,4];function zE(t,e,s,i,r){if(s+24>e.length)return;const n=HE(e,s);if(n&&s+n.frameLength<=e.length){const o=i+r*(9e4*n.samplesPerFrame/n.sampleRate),a={unit:e.subarray(s,s+n.frameLength),pts:o,dts:o};return t.config=[],t.channelCount=n.channelCount,t.samplerate=n.sampleRate,t.samples.push(a),{sample:a,length:n.frameLength,missing:0}}}function HE(t,e){const s=t[e+1]>>3&3,i=t[e+1]>>1&3,r=t[e+2]>>4&15,n=t[e+2]>>2&3;if(1!==s&&0!==r&&15!==r&&3!==n){const o=t[e+2]>>1&1,a=t[e+3]>>6,h=1e3*VE[14*(3===s?3-i:3===i?3:4)+r-1],l=jE[3*(3===s?0:2===s?1:2)+n],c=3===a?1:2,d=WE[s][i],u=GE[i],p=8*d*u,f=Math.floor(d*h/l+o)*u;if(null===NE){const t=(navigator.userAgent||"").match(/Chrome\/(\d+)/i);NE=t?parseInt(t[1]):0}return!!NE&&NE<=87&&2===i&&h>=224e3&&0===a&&(t[e+3]=128|t[e+3]),{sampleRate:l,channelCount:c,frameLength:f,samplesPerFrame:p}}}function KE(t,e){return!(255!==t[e]||224&~t[e+1]||!(6&t[e+1]))}function qE(t,e){return e+1<t.length&&KE(t,e)}function QE(t,e){if(e+1<t.length&&KE(t,e)){const s=4,i=HE(t,e);let r=s;null!=i&&i.frameLength&&(r=i.frameLength);const n=e+r;return n===t.length||qE(t,n)}return!1}const YE=(t,e)=>{let s=0,i=5;e+=i;const r=new Uint32Array(1),n=new Uint32Array(1),o=new Uint8Array(1);for(;i>0;){o[0]=t[e];const a=Math.min(i,8),h=8-a;n[0]=4278190080>>>24+h<<h,r[0]=(o[0]&n[0])>>h,s=s?s<<a|r[0]:r[0],e+=1,i-=a}return s};class JE extends UE{constructor(t){super(),this.observer=void 0,this.observer=t}resetInitSegment(t,e,s,i){super.resetInitSegment(t,e,s,i),this._audioTrack={container:"audio/ac-3",type:"audio",id:2,pid:-1,sequenceNumber:0,segmentCodec:"ac3",samples:[],manifestCodec:e,duration:i,inputTimeScale:9e4,dropped:0}}canParse(t,e){return e+64<t.length}appendFrame(t,e,s){const i=XE(t,e,s,this.basePTS,this.frameIndex);if(-1!==i){return{sample:t.samples[t.samples.length-1],length:i,missing:0}}}static probe(t){if(!t)return!1;const e=yE(t,0);if(!e)return!1;const s=e.length;return 11===t[s]&&119===t[s+1]&&void 0!==ME(e)&&YE(t,s)<16}}function XE(t,e,s,i,r){if(s+8>e.length)return-1;if(11!==e[s]||119!==e[s+1])return-1;const n=e[s+4]>>6;if(n>=3)return-1;const o=[48e3,44100,32e3][n],a=63&e[s+4],h=2*[64,69,96,64,70,96,80,87,120,80,88,120,96,104,144,96,105,144,112,121,168,112,122,168,128,139,192,128,140,192,160,174,240,160,175,240,192,208,288,192,209,288,224,243,336,224,244,336,256,278,384,256,279,384,320,348,480,320,349,480,384,417,576,384,418,576,448,487,672,448,488,672,512,557,768,512,558,768,640,696,960,640,697,960,768,835,1152,768,836,1152,896,975,1344,896,976,1344,1024,1114,1536,1024,1115,1536,1152,1253,1728,1152,1254,1728,1280,1393,1920,1280,1394,1920][3*a+n];if(s+h>e.length)return-1;const l=e[s+6]>>5;let c=0;2===l?c+=2:(1&l&&1!==l&&(c+=2),4&l&&(c+=2));const d=(e[s+6]<<8|e[s+7])>>12-c&1,u=[2,1,2,3,3,4,4,5][l]+d,p=e[s+5]>>3,f=7&e[s+5],m=new Uint8Array([n<<6|p<<1|f>>2,(3&f)<<6|l<<3|d<<2|a>>4,a<<4&224]),g=i+r*(1536/o*9e4),y=e.subarray(s,s+h);return t.config=m,t.channelCount=u,t.samplerate=o,t.samples.push({unit:y,pts:g}),h}const $E=/\/emsg[-/]ID3/i;function ZE(t,e){return zy(t.presentationTime)?t.presentationTime/t.timeScale:e+t.presentationTimeDelta/t.timeScale}class tw{constructor(t,e,s){this.keyData=void 0,this.decrypter=void 0,this.keyData=s,this.decrypter=new Sv(e,{removePKCS7Padding:!1})}decryptBuffer(t){return this.decrypter.decrypt(t,this.keyData.key.buffer,this.keyData.iv.buffer,gv)}decryptAacSample(t,e,s){const i=t[e].unit;if(i.length<=16)return;const r=i.subarray(16,i.length-i.length%16),n=r.buffer.slice(r.byteOffset,r.byteOffset+r.length);this.decryptBuffer(n).then(r=>{const n=new Uint8Array(r);i.set(n,16),this.decrypter.isSync()||this.decryptAacSamples(t,e+1,s)})}decryptAacSamples(t,e,s){for(;;e++){if(e>=t.length)return void s();if(!(t[e].unit.length<32)&&(this.decryptAacSample(t,e,s),!this.decrypter.isSync()))return}}getAvcEncryptedData(t){const e=16*Math.floor((t.length-48)/160)+16,s=new Int8Array(e);let i=0;for(let e=32;e<t.length-16;e+=160,i+=16)s.set(t.subarray(e,e+16),i);return s}getAvcDecryptedUnit(t,e){const s=new Uint8Array(e);let i=0;for(let e=32;e<t.length-16;e+=160,i+=16)t.set(s.subarray(i,i+16),e);return t}decryptAvcSample(t,e,s,i,r){const n=sb(r.data),o=this.getAvcEncryptedData(n);this.decryptBuffer(o.buffer).then(o=>{r.data=this.getAvcDecryptedUnit(n,o),this.decrypter.isSync()||this.decryptAvcSamples(t,e,s+1,i)})}decryptAvcSamples(t,e,s,i){if(t instanceof Uint8Array)throw new Error("Cannot decrypt samples of type Uint8Array");for(;;e++,s=0){if(e>=t.length)return void i();const r=t[e].units;for(;!(s>=r.length);s++){const n=r[s];if(!(n.data.length<=48||1!==n.type&&5!==n.type||(this.decryptAvcSample(t,e,s,i,n),this.decrypter.isSync())))return}}}}class ew{constructor(){this.VideoSample=null}createVideoSample(t,e,s){return{key:t,frame:!1,pts:e,dts:s,units:[],length:0}}getLastNalUnit(t){var e;let s,i=this.VideoSample;if(i&&0!==i.units.length||(i=t[t.length-1]),null!=(e=i)&&e.units){const t=i.units;s=t[t.length-1]}return s}pushAccessUnit(t,e){if(t.units.length&&t.frame){if(void 0===t.pts){const s=e.samples,i=s.length;if(!i)return void e.dropped++;{const e=s[i-1];t.pts=e.pts,t.dts=e.dts}}e.samples.push(t)}}parseNALu(t,e,s){const i=e.byteLength;let r=t.naluState||0;const n=r,o=[];let a,h,l,c=0,d=-1,u=0;for(-1===r&&(d=0,u=this.getNALuType(e,0),r=0,c=1);c<i;)if(a=e[c++],r)if(1!==r)if(a)if(1===a){if(h=c-r-1,d>=0){const t={data:e.subarray(d,h),type:u};o.push(t)}else{const s=this.getLastNalUnit(t.samples);s&&(n&&c<=4-n&&s.state&&(s.data=s.data.subarray(0,s.data.byteLength-n)),h>0&&(s.data=XA(s.data,e.subarray(0,h)),s.state=0))}c<i?(l=this.getNALuType(e,c),d=c,u=l,r=0):r=-1}else r=0;else r=3;else r=a?0:2;else r=a?0:1;if(d>=0&&r>=0){const t={data:e.subarray(d,i),type:u,state:r};o.push(t)}if(0===o.length){const s=this.getLastNalUnit(t.samples);s&&(s.data=XA(s.data,e))}return t.naluState=r,o}}class sw{constructor(t){this.data=void 0,this.bytesAvailable=void 0,this.word=void 0,this.bitsAvailable=void 0,this.data=t,this.bytesAvailable=t.byteLength,this.word=0,this.bitsAvailable=0}loadWord(){const t=this.data,e=this.bytesAvailable,s=t.byteLength-e,i=new Uint8Array(4),r=Math.min(4,e);if(0===r)throw new Error("no bytes available");i.set(t.subarray(s,s+r)),this.word=new DataView(i.buffer).getUint32(0),this.bitsAvailable=8*r,this.bytesAvailable-=r}skipBits(t){let e;t=Math.min(t,8*this.bytesAvailable+this.bitsAvailable),this.bitsAvailable>t?(this.word<<=t,this.bitsAvailable-=t):(e=(t-=this.bitsAvailable)>>3,t-=e<<3,this.bytesAvailable-=e,this.loadWord(),this.word<<=t,this.bitsAvailable-=t)}readBits(t){let e=Math.min(this.bitsAvailable,t);const s=this.word>>>32-e;if(t>32&&mA.error("Cannot read more than 32 bits at a time"),this.bitsAvailable-=e,this.bitsAvailable>0)this.word<<=e;else{if(!(this.bytesAvailable>0))throw new Error("no bits available");this.loadWord()}return e=t-e,e>0&&this.bitsAvailable?s<<e|this.readBits(e):s}skipLZ(){let t;for(t=0;t<this.bitsAvailable;++t)if(this.word&2147483648>>>t)return this.word<<=t,this.bitsAvailable-=t,t;return this.loadWord(),t+this.skipLZ()}skipUEG(){this.skipBits(1+this.skipLZ())}skipEG(){this.skipBits(1+this.skipLZ())}readUEG(){const t=this.skipLZ();return this.readBits(t+1)-1}readEG(){const t=this.readUEG();return 1&t?1+t>>>1:-1*(t>>>1)}readBoolean(){return 1===this.readBits(1)}readUByte(){return this.readBits(8)}readUShort(){return this.readBits(16)}readUInt(){return this.readBits(32)}}class iw extends ew{parsePES(t,e,s,i){const r=this.parseNALu(t,s.data,i);let n,o=this.VideoSample,a=!1;s.data=null,o&&r.length&&!t.audFound&&(this.pushAccessUnit(o,t),o=this.VideoSample=this.createVideoSample(!1,s.pts,s.dts)),r.forEach(i=>{var r,h;switch(i.type){case 1:{let e=!1;n=!0;const r=i.data;if(a&&r.length>4){const t=this.readSliceType(r);2!==t&&4!==t&&7!==t&&9!==t||(e=!0)}var l;if(e)null!=(l=o)&&l.frame&&!o.key&&(this.pushAccessUnit(o,t),o=this.VideoSample=null);o||(o=this.VideoSample=this.createVideoSample(!0,s.pts,s.dts)),o.frame=!0,o.key=e;break}case 5:n=!0,null!=(r=o)&&r.frame&&!o.key&&(this.pushAccessUnit(o,t),o=this.VideoSample=null),o||(o=this.VideoSample=this.createVideoSample(!0,s.pts,s.dts)),o.key=!0,o.frame=!0;break;case 6:n=!0,eb(i.data,1,s.pts,e.samples);break;case 7:{var c,d;n=!0,a=!0;const e=i.data,s=this.readSPS(e);if(!t.sps||t.width!==s.width||t.height!==s.height||(null==(c=t.pixelRatio)?void 0:c[0])!==s.pixelRatio[0]||(null==(d=t.pixelRatio)?void 0:d[1])!==s.pixelRatio[1]){t.width=s.width,t.height=s.height,t.pixelRatio=s.pixelRatio,t.sps=[e];const i=e.subarray(1,4);let r="avc1.";for(let t=0;t<3;t++){let e=i[t].toString(16);e.length<2&&(e="0"+e),r+=e}t.codec=r}break}case 8:n=!0,t.pps=[i.data];break;case 9:n=!0,t.audFound=!0,null!=(h=o)&&h.frame&&(this.pushAccessUnit(o,t),o=null),o||(o=this.VideoSample=this.createVideoSample(!1,s.pts,s.dts));break;case 12:n=!0;break;default:n=!1}if(o&&n){o.units.push(i)}}),i&&o&&(this.pushAccessUnit(o,t),this.VideoSample=null)}getNALuType(t,e){return 31&t[e]}readSliceType(t){const e=new sw(t);return e.readUByte(),e.readUEG(),e.readUEG()}skipScalingList(t,e){let s,i=8,r=8;for(let n=0;n<t;n++)0!==r&&(s=e.readEG(),r=(i+s+256)%256),i=0===r?i:r}readSPS(t){const e=new sw(t);let s,i,r,n=0,o=0,a=0,h=0;const l=e.readUByte.bind(e),c=e.readBits.bind(e),d=e.readUEG.bind(e),u=e.readBoolean.bind(e),p=e.skipBits.bind(e),f=e.skipEG.bind(e),m=e.skipUEG.bind(e),g=this.skipScalingList.bind(this);l();const y=l();if(c(5),p(3),l(),m(),100===y||110===y||122===y||244===y||44===y||83===y||86===y||118===y||128===y){const t=d();if(3===t&&p(1),m(),m(),p(1),u())for(i=3!==t?8:12,r=0;r<i;r++)u()&&g(r<6?16:64,e)}m();const A=d();if(0===A)d();else if(1===A)for(p(1),f(),f(),s=d(),r=0;r<s;r++)f();m(),p(1);const b=d(),v=d(),S=c(1);0===S&&p(1),p(1),u()&&(n=d(),o=d(),a=d(),h=d());let E=[1,1];if(u()&&u()){switch(l()){case 1:E=[1,1];break;case 2:E=[12,11];break;case 3:E=[10,11];break;case 4:E=[16,11];break;case 5:E=[40,33];break;case 6:E=[24,11];break;case 7:E=[20,11];break;case 8:E=[32,11];break;case 9:E=[80,33];break;case 10:E=[18,11];break;case 11:E=[15,11];break;case 12:E=[64,33];break;case 13:E=[160,99];break;case 14:E=[4,3];break;case 15:E=[3,2];break;case 16:E=[2,1];break;case 255:E=[l()<<8|l(),l()<<8|l()]}}return{width:Math.ceil(16*(b+1)-2*n-2*o),height:(2-S)*(v+1)*16-(S?2:4)*(a+h),pixelRatio:E}}}class rw extends ew{constructor(...t){super(...t),this.initVPS=null}parsePES(t,e,s,i){const r=this.parseNALu(t,s.data,i);let n,o=this.VideoSample,a=!1;s.data=null,o&&r.length&&!t.audFound&&(this.pushAccessUnit(o,t),o=this.VideoSample=this.createVideoSample(!1,s.pts,s.dts)),r.forEach(i=>{var r,h;switch(i.type){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:o||(o=this.VideoSample=this.createVideoSample(!1,s.pts,s.dts)),o.frame=!0,n=!0;break;case 16:case 17:case 18:case 21:var l;if(n=!0,a)null!=(l=o)&&l.frame&&!o.key&&(this.pushAccessUnit(o,t),o=this.VideoSample=null);o||(o=this.VideoSample=this.createVideoSample(!0,s.pts,s.dts)),o.key=!0,o.frame=!0;break;case 19:case 20:n=!0,null!=(r=o)&&r.frame&&!o.key&&(this.pushAccessUnit(o,t),o=this.VideoSample=null),o||(o=this.VideoSample=this.createVideoSample(!0,s.pts,s.dts)),o.key=!0,o.frame=!0;break;case 39:n=!0,eb(i.data,2,s.pts,e.samples);break;case 32:n=!0,t.vps||("object"!=typeof t.params&&(t.params={}),t.params=oA(t.params,this.readVPS(i.data)),this.initVPS=i.data),t.vps=[i.data];break;case 33:if(n=!0,a=!0,void 0===t.vps||t.vps[0]===this.initVPS||void 0===t.sps||this.matchSPS(t.sps[0],i.data)||(this.initVPS=t.vps[0],t.sps=t.pps=void 0),!t.sps){const e=this.readSPS(i.data);t.width=e.width,t.height=e.height,t.pixelRatio=e.pixelRatio,t.codec=e.codecString,t.sps=[],"object"!=typeof t.params&&(t.params={});for(const s in e.params)t.params[s]=e.params[s]}this.pushParameterSet(t.sps,i.data,t.vps),o||(o=this.VideoSample=this.createVideoSample(!0,s.pts,s.dts)),o.key=!0;break;case 34:if(n=!0,"object"==typeof t.params){if(!t.pps){t.pps=[];const e=this.readPPS(i.data);for(const s in e)t.params[s]=e[s]}this.pushParameterSet(t.pps,i.data,t.vps)}break;case 35:n=!0,t.audFound=!0,null!=(h=o)&&h.frame&&(this.pushAccessUnit(o,t),o=null),o||(o=this.VideoSample=this.createVideoSample(!1,s.pts,s.dts));break;default:n=!1}if(o&&n){o.units.push(i)}}),i&&o&&(this.pushAccessUnit(o,t),this.VideoSample=null)}pushParameterSet(t,e,s){(s&&s[0]===this.initVPS||!s&&!t.length)&&t.push(e)}getNALuType(t,e){return(126&t[e])>>>1}ebsp2rbsp(t){const e=new Uint8Array(t.byteLength);let s=0;for(let i=0;i<t.byteLength;i++)i>=2&&3===t[i]&&0===t[i-1]&&0===t[i-2]||(e[s]=t[i],s++);return new Uint8Array(e.buffer,0,s)}pushAccessUnit(t,e){super.pushAccessUnit(t,e),this.initVPS&&(this.initVPS=null)}readVPS(t){const e=new sw(t);e.readUByte(),e.readUByte(),e.readBits(4),e.skipBits(2),e.readBits(6);return{numTemporalLayers:e.readBits(3)+1,temporalIdNested:e.readBoolean()}}readSPS(t){const e=new sw(this.ebsp2rbsp(t));e.readUByte(),e.readUByte(),e.readBits(4);const s=e.readBits(3);e.readBoolean();const i=e.readBits(2),r=e.readBoolean(),n=e.readBits(5),o=e.readUByte(),a=e.readUByte(),h=e.readUByte(),l=e.readUByte(),c=e.readUByte(),d=e.readUByte(),u=e.readUByte(),p=e.readUByte(),f=e.readUByte(),m=e.readUByte(),g=e.readUByte(),y=[],A=[];for(let t=0;t<s;t++)y.push(e.readBoolean()),A.push(e.readBoolean());if(s>0)for(let t=s;t<8;t++)e.readBits(2);for(let t=0;t<s;t++)y[t]&&(e.readUByte(),e.readUByte(),e.readUByte(),e.readUByte(),e.readUByte(),e.readUByte(),e.readUByte(),e.readUByte(),e.readUByte(),e.readUByte(),e.readUByte()),A[t]&&e.readUByte();e.readUEG();const b=e.readUEG();3==b&&e.skipBits(1);const v=e.readUEG(),S=e.readUEG(),E=e.readBoolean();let w=0,T=0,I=0,k=0;E&&(w+=e.readUEG(),T+=e.readUEG(),I+=e.readUEG(),k+=e.readUEG());const _=e.readUEG(),C=e.readUEG(),D=e.readUEG();for(let t=e.readBoolean()?0:s;t<=s;t++)e.skipUEG(),e.skipUEG(),e.skipUEG();e.skipUEG(),e.skipUEG(),e.skipUEG(),e.skipUEG(),e.skipUEG(),e.skipUEG();if(e.readBoolean()){if(e.readBoolean())for(let t=0;t<4;t++)for(let s=0;s<(3===t?2:6);s++){if(e.readBoolean()){const s=Math.min(64,1<<4+(t<<1));t>1&&e.readEG();for(let t=0;t<s;t++)e.readEG()}else e.readUEG()}}e.readBoolean(),e.readBoolean();e.readBoolean()&&(e.readUByte(),e.skipUEG(),e.skipUEG(),e.readBoolean());const L=e.readUEG();let R=0;for(let t=0;t<L;t++){let s=!1;if(0!==t&&(s=e.readBoolean()),s){t===L&&e.readUEG(),e.readBoolean(),e.readUEG();let s=0;for(let t=0;t<=R;t++){const t=e.readBoolean();let i=!1;t||(i=e.readBoolean()),(t||i)&&s++}R=s}else{const t=e.readUEG(),s=e.readUEG();R=t+s;for(let s=0;s<t;s++)e.readUEG(),e.readBoolean();for(let t=0;t<s;t++)e.readUEG(),e.readBoolean()}}if(e.readBoolean()){const t=e.readUEG();for(let s=0;s<t;s++){for(let t=0;t<D+4;t++)e.readBits(1);e.readBits(1)}}let P=0,x=1,M=1,B=!0,F=1,U=0;e.readBoolean(),e.readBoolean();let O=!1;if(e.readBoolean()){if(e.readBoolean()){const t=e.readUByte();t>0&&t<16?(x=[1,12,10,16,40,24,20,32,80,18,15,64,160,4,3,2][t-1],M=[1,11,11,11,33,11,11,11,33,11,11,33,99,3,2,1][t-1]):255===t&&(x=e.readBits(16),M=e.readBits(16))}e.readBoolean()&&e.readBoolean();if(e.readBoolean()){e.readBits(3),e.readBoolean();e.readBoolean()&&(e.readUByte(),e.readUByte(),e.readUByte())}e.readBoolean()&&(e.readUEG(),e.readUEG()),e.readBoolean(),e.readBoolean(),e.readBoolean(),O=e.readBoolean(),O&&(w+=e.readUEG(),T+=e.readUEG(),I+=e.readUEG(),k+=e.readUEG());if(e.readBoolean()){F=e.readBits(32),U=e.readBits(32);e.readBoolean()&&e.readUEG();if(e.readBoolean()){const t=e.readBoolean(),i=e.readBoolean();let r=!1;(t||i)&&(r=e.readBoolean(),r&&(e.readUByte(),e.readBits(5),e.readBoolean(),e.readBits(5)),e.readBits(4),e.readBits(4),r&&e.readBits(4),e.readBits(5),e.readBits(5),e.readBits(5));for(let n=0;n<=s;n++){B=e.readBoolean();let s=!1;B||e.readBoolean()?e.readEG():s=e.readBoolean();const n=s?1:e.readUEG()+1;if(t)for(let t=0;t<n;t++)e.readUEG(),e.readUEG(),r&&(e.readUEG(),e.readUEG()),e.skipBits(1);if(i)for(let t=0;t<n;t++)e.readUEG(),e.readUEG(),r&&(e.readUEG(),e.readUEG()),e.skipBits(1)}}}e.readBoolean()&&(e.readBoolean(),e.readBoolean(),e.readBoolean(),P=e.readUEG())}let N=v,V=S;if(E||O){let t=1,e=1;1===b?t=e=2:2==b&&(t=2),N=v-t*T-t*w,V=S-e*k-e*I}const j=i?["A","B","C"][i]:"",W=o<<24|a<<16|h<<8|l;let G=0;for(let t=0;t<32;t++)G=(G|(W>>t&1)<<31-t)>>>0;let z=G.toString(16);1===n&&"2"===z&&(z="6");return{codecString:`hvc1.${j}${n}.${z}.${r?"H":"L"}${g}.B0`,params:{general_tier_flag:r,general_profile_idc:n,general_profile_space:i,general_profile_compatibility_flags:[o,a,h,l],general_constraint_indicator_flags:[c,d,u,p,f,m],general_level_idc:g,bit_depth:_+8,bit_depth_luma_minus8:_,bit_depth_chroma_minus8:C,min_spatial_segmentation_idc:P,chroma_format_idc:b,frame_rate:{fixed:B,fps:U/F}},width:N,height:V,pixelRatio:[x,M]}}readPPS(t){const e=new sw(this.ebsp2rbsp(t));e.readUByte(),e.readUByte(),e.skipUEG(),e.skipUEG(),e.skipBits(2),e.skipBits(3),e.skipBits(2),e.skipUEG(),e.skipUEG(),e.skipEG(),e.skipBits(2);e.readBoolean()&&e.skipUEG(),e.skipEG(),e.skipEG(),e.skipBits(4);const s=e.readBoolean(),i=e.readBoolean();let r=1;return i&&s?r=0:i?r=3:s&&(r=2),{parallelismType:r}}matchSPS(t,e){return String.fromCharCode.apply(null,t).substr(3)===String.fromCharCode.apply(null,e).substr(3)}}const nw=188;class ow{constructor(t,e,s,i){this.logger=void 0,this.observer=void 0,this.config=void 0,this.typeSupported=void 0,this.sampleAes=null,this.pmtParsed=!1,this.audioCodec=void 0,this.videoCodec=void 0,this._pmtId=-1,this._videoTrack=void 0,this._audioTrack=void 0,this._id3Track=void 0,this._txtTrack=void 0,this.aacOverFlow=null,this.remainderData=null,this.videoParser=void 0,this.observer=t,this.config=e,this.typeSupported=s,this.logger=i,this.videoParser=null}static probe(t,e){const s=ow.syncOffset(t);return s>0&&e.warn(`MPEG2-TS detected but first sync word found @ offset ${s}`),-1!==s}static syncOffset(t){const e=t.length;let s=Math.min(940,e-nw)+1,i=0;for(;i<s;){let r=!1,n=-1,o=0;for(let a=i;a<e;a+=nw){if(71!==t[a]||e-a!==nw&&71!==t[a+nw]){if(o)return-1;break}if(o++,-1===n&&(n=a,0!==n&&(s=Math.min(n+18612,t.length-nw)+1)),r||(r=0===aw(t,a)),r&&o>1&&(0===n&&o>2||a+nw>s))return n}i++}return-1}static createTrack(t,e){return{container:"video"===t||"audio"===t?"video/mp2t":void 0,type:t,id:BA[t],pid:-1,inputTimeScale:9e4,sequenceNumber:0,samples:[],dropped:0,duration:"audio"===t?e:void 0}}resetInitSegment(t,e,s,i){this.pmtParsed=!1,this._pmtId=-1,this._videoTrack=ow.createTrack("video"),this._videoTrack.duration=i,this._audioTrack=ow.createTrack("audio",i),this._id3Track=ow.createTrack("id3"),this._txtTrack=ow.createTrack("text"),this._audioTrack.segmentCodec="aac",this.aacOverFlow=null,this.remainderData=null,this.audioCodec=e,this.videoCodec=s}resetTimeStamp(){}resetContiguity(){const{_audioTrack:t,_videoTrack:e,_id3Track:s}=this;t&&(t.pesData=null),e&&(e.pesData=null),s&&(s.pesData=null),this.aacOverFlow=null,this.remainderData=null}demux(t,e,s=!1,i=!1){let r;s||(this.sampleAes=null);const n=this._videoTrack,o=this._audioTrack,a=this._id3Track,h=this._txtTrack;let l=n.pid,c=n.pesData,d=o.pid,u=a.pid,p=o.pesData,f=a.pesData,m=null,g=this.pmtParsed,y=this._pmtId,A=t.length;if(this.remainderData&&(A=(t=XA(this.remainderData,t)).length,this.remainderData=null),A<nw&&!i)return this.remainderData=t,{audioTrack:o,videoTrack:n,id3Track:a,textTrack:h};const b=Math.max(0,ow.syncOffset(t));A-=(A-b)%nw,A<t.byteLength&&!i&&(this.remainderData=new Uint8Array(t.buffer,A,t.buffer.byteLength-A));let v=0;for(let e=b;e<A;e+=nw)if(71===t[e]){const i=!!(64&t[e+1]),A=aw(t,e);let v;if((48&t[e+3])>>4>1){if(v=e+5+t[e+4],v===e+nw)continue}else v=e+4;switch(A){case l:if(i){if(c&&(r=uw(c,this.logger))){if(null===this.videoParser)switch(n.segmentCodec){case"avc":this.videoParser=new iw;break;case"hevc":this.videoParser=new rw}null!==this.videoParser&&this.videoParser.parsePES(n,h,r,!1)}c={data:[],size:0}}c&&(c.data.push(t.subarray(v,e+nw)),c.size+=e+nw-v);break;case d:if(i){if(p&&(r=uw(p,this.logger)))switch(o.segmentCodec){case"aac":this.parseAACPES(o,r);break;case"mp3":this.parseMPEGPES(o,r);break;case"ac3":this.parseAC3PES(o,r)}p={data:[],size:0}}p&&(p.data.push(t.subarray(v,e+nw)),p.size+=e+nw-v);break;case u:i&&(f&&(r=uw(f,this.logger))&&this.parseID3PES(a,r),f={data:[],size:0}),f&&(f.data.push(t.subarray(v,e+nw)),f.size+=e+nw-v);break;case 0:i&&(v+=t[v]+1),y=this._pmtId=hw(t,v);break;case y:{i&&(v+=t[v]+1);const r=lw(t,v,this.typeSupported,s,this.observer,this.logger);l=r.videoPid,l>0&&(n.pid=l,n.segmentCodec=r.segmentVideoCodec),d=r.audioPid,d>0&&(o.pid=d,o.segmentCodec=r.segmentAudioCodec),u=r.id3Pid,u>0&&(a.pid=u),null===m||g||(this.logger.warn(`MPEG-TS PMT found at ${e} after unknown PID '${m}'. Backtracking to sync byte @${b} to parse all TS packets.`),m=null,e=b-188),g=this.pmtParsed=!0;break}case 17:case 8191:break;default:m=A}}else v++;v>0&&cw(this.observer,new Error(`Found ${v} TS packet/s that do not start with 0x47`),void 0,this.logger),n.pesData=c,o.pesData=p,a.pesData=f;const S={audioTrack:o,videoTrack:n,id3Track:a,textTrack:h};return i&&this.extractRemainingSamples(S),S}flush(){const{remainderData:t}=this;let e;return this.remainderData=null,e=t?this.demux(t,-1,!1,!0):{videoTrack:this._videoTrack,audioTrack:this._audioTrack,id3Track:this._id3Track,textTrack:this._txtTrack},this.extractRemainingSamples(e),this.sampleAes?this.decrypt(e,this.sampleAes):e}extractRemainingSamples(t){const{audioTrack:e,videoTrack:s,id3Track:i,textTrack:r}=t,n=s.pesData,o=e.pesData,a=i.pesData;let h;if(n&&(h=uw(n,this.logger))){if(null===this.videoParser)switch(s.segmentCodec){case"avc":this.videoParser=new iw;break;case"hevc":this.videoParser=new rw}null!==this.videoParser&&(this.videoParser.parsePES(s,r,h,!0),s.pesData=null)}else s.pesData=n;if(o&&(h=uw(o,this.logger))){switch(e.segmentCodec){case"aac":this.parseAACPES(e,h);break;case"mp3":this.parseMPEGPES(e,h);break;case"ac3":this.parseAC3PES(e,h)}e.pesData=null}else null!=o&&o.size&&this.logger.log("last AAC PES packet truncated,might overlap between fragments"),e.pesData=o;a&&(h=uw(a,this.logger))?(this.parseID3PES(i,h),i.pesData=null):i.pesData=a}demuxSampleAes(t,e,s){const i=this.demux(t,s,!0,!this.config.progressive),r=this.sampleAes=new tw(this.observer,this.config,e);return this.decrypt(i,r)}decrypt(t,e){return new Promise(s=>{const{audioTrack:i,videoTrack:r}=t;i.samples&&"aac"===i.segmentCodec?e.decryptAacSamples(i.samples,0,()=>{r.samples?e.decryptAvcSamples(r.samples,0,0,()=>{s(t)}):s(t)}):r.samples&&e.decryptAvcSamples(r.samples,0,0,()=>{s(t)})})}destroy(){this.observer&&this.observer.removeAllListeners(),this.config=this.logger=this.observer=null,this.aacOverFlow=this.videoParser=this.remainderData=this.sampleAes=null,this._videoTrack=this._audioTrack=this._id3Track=this._txtTrack=void 0}parseAACPES(t,e){let s=0;const i=this.aacOverFlow;let r,n,o,a=e.data;if(i){this.aacOverFlow=null;const e=i.missing,r=i.sample.unit.byteLength;if(-1===e)a=XA(i.sample.unit,a);else{const n=r-e;i.sample.unit.set(a.subarray(0,e),n),t.samples.push(i.sample),s=i.missing}}for(r=s,n=a.length;r<n-1&&!SE(a,r);r++);if(r!==s){let t;const e=r<n-1;if(t=e?`AAC PES did not start with ADTS header,offset:${r}`:"No ADTS header found in AAC PES",cw(this.observer,new Error(t),e,this.logger),!e)return}if(wE(t,this.observer,a,r,this.audioCodec),void 0!==e.pts)o=e.pts;else{if(!i)return void this.logger.warn("[tsdemuxer]: AAC PES unknown PTS");{const e=TE(t.samplerate);o=i.sample.pts+e}}let h,l=0;for(;r<n;){if(h=IE(t,a,r,o,l),r+=h.length,h.missing){this.aacOverFlow=h;break}for(l++;r<n-1&&!SE(a,r);r++);}}parseMPEGPES(t,e){const s=e.data,i=s.length;let r=0,n=0;const o=e.pts;if(void 0!==o)for(;n<i;)if(qE(s,n)){const e=zE(t,s,n,o,r);if(!e)break;n+=e.length,r++}else n++;else this.logger.warn("[tsdemuxer]: MPEG PES unknown PTS")}parseAC3PES(t,e){{const s=e.data,i=e.pts;if(void 0===i)return void this.logger.warn("[tsdemuxer]: AC3 PES unknown PTS");const r=s.length;let n,o=0,a=0;for(;a<r&&(n=XE(t,s,a,i,o++))>0;)a+=n}}parseID3PES(t,e){if(void 0===e.pts)return void this.logger.warn("[tsdemuxer]: ID3 PES unknown PTS");const s=oA({},e,{type:this._videoTrack?BE.emsg:BE.audioId3,duration:Number.POSITIVE_INFINITY});t.samples.push(s)}}function aw(t,e){return((31&t[e+1])<<8)+t[e+2]}function hw(t,e){return(31&t[e+10])<<8|t[e+11]}function lw(t,e,s,i,r,n){const o={audioPid:-1,videoPid:-1,id3Pid:-1,segmentVideoCodec:"avc",segmentAudioCodec:"aac"},a=e+3+((15&t[e+1])<<8|t[e+2])-4;for(e+=12+((15&t[e+10])<<8|t[e+11]);e<a;){const a=aw(t,e),h=(15&t[e+3])<<8|t[e+4];switch(t[e]){case 207:if(!i){dw("ADTS AAC",n);break}case 15:-1===o.audioPid&&(o.audioPid=a);break;case 21:-1===o.id3Pid&&(o.id3Pid=a);break;case 219:if(!i){dw("H.264",n);break}case 27:-1===o.videoPid&&(o.videoPid=a);break;case 3:case 4:s.mpeg||s.mp3?-1===o.audioPid&&(o.audioPid=a,o.segmentAudioCodec="mp3"):n.log("MPEG audio found, not supported in this browser");break;case 193:if(!i){dw("AC-3",n);break}case 129:s.ac3?-1===o.audioPid&&(o.audioPid=a,o.segmentAudioCodec="ac3"):n.log("AC-3 audio found, not supported in this browser");break;case 6:if(-1===o.audioPid&&h>0){let i=e+5,r=h;for(;r>2;){if(106===t[i])!0!==s.ac3?n.log("AC-3 audio found, not supported in this browser for now"):(o.audioPid=a,o.segmentAudioCodec="ac3");const e=t[i+1]+2;i+=e,r-=e}}break;case 194:case 135:return cw(r,new Error("Unsupported EC-3 in M2TS found"),void 0,n),o;case 36:-1===o.videoPid&&(o.videoPid=a,o.segmentVideoCodec="hevc",n.log("HEVC in M2TS found"))}e+=h+5}return o}function cw(t,e,s,i){i.warn(`parsing error: ${e.message}`),t.emit(Yy.ERROR,Yy.ERROR,{type:qy.MEDIA_ERROR,details:Qy.FRAG_PARSING_ERROR,fatal:!1,levelRetry:s,error:e,reason:e.message})}function dw(t,e){e.log(`${t} with AES-128-CBC encryption found in unencrypted stream`)}function uw(t,e){let s,i,r,n,o,a=0;const h=t.data;if(!t||0===t.size)return null;for(;h[0].length<19&&h.length>1;)h[0]=XA(h[0],h[1]),h.splice(1,1);s=h[0];if(1===(s[0]<<16)+(s[1]<<8)+s[2]){if(i=(s[4]<<8)+s[5],i&&i>t.size-6)return null;const l=s[7];192&l&&(n=536870912*(14&s[9])+4194304*(255&s[10])+16384*(254&s[11])+128*(255&s[12])+(254&s[13])/2,64&l?(o=536870912*(14&s[14])+4194304*(255&s[15])+16384*(254&s[16])+128*(255&s[17])+(254&s[18])/2,n-o>54e5&&(e.warn(`${Math.round((n-o)/9e4)}s delta between PTS and DTS, align them`),n=o)):o=n),r=s[8];let c=r+9;if(t.size<=c)return null;t.size-=c;const d=new Uint8Array(t.size);for(let t=0,e=h.length;t<e;t++){s=h[t];let e=s.byteLength;if(c){if(c>e){c-=e;continue}s=s.subarray(c),e-=c,c=0}d.set(s,a),a+=e}return i&&(i-=r+3),{data:d,pts:n,dts:o,len:i}}return null}class pw{static getSilentFrame(t,e){if("mp4a.40.2"===t){if(1===e)return new Uint8Array([0,200,0,128,35,128]);if(2===e)return new Uint8Array([33,0,73,144,2,25,0,35,128]);if(3===e)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,142]);if(4===e)return new Uint8Array([0,200,0,128,32,132,1,38,64,8,100,0,128,44,128,8,2,56]);if(5===e)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===e)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===e)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===e)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===e)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])}}}const fw=Math.pow(2,32)-1;class mw{static init(){let t;for(t in mw.types={avc1:[],avcC:[],hvc1:[],hvcC:[],btrt:[],dinf:[],dref:[],esds:[],ftyp:[],hdlr:[],mdat:[],mdhd:[],mdia:[],mfhd:[],minf:[],moof:[],moov:[],mp4a:[],".mp3":[],dac3:[],"ac-3":[],mvex:[],mvhd:[],pasp:[],sdtp:[],stbl:[],stco:[],stsc:[],stsd:[],stsz:[],stts:[],tfdt:[],tfhd:[],traf:[],trak:[],trun:[],trex:[],tkhd:[],vmhd:[],smhd:[]},mw.types)mw.types.hasOwnProperty(t)&&(mw.types[t]=[t.charCodeAt(0),t.charCodeAt(1),t.charCodeAt(2),t.charCodeAt(3)]);const e=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]),s=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]);mw.HDLR_TYPES={video:e,audio:s};const i=new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,12,117,114,108,32,0,0,0,1]),r=new Uint8Array([0,0,0,0,0,0,0,0]);mw.STTS=mw.STSC=mw.STCO=r,mw.STSZ=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0]),mw.VMHD=new Uint8Array([0,0,0,1,0,0,0,0,0,0,0,0]),mw.SMHD=new Uint8Array([0,0,0,0,0,0,0,0]),mw.STSD=new Uint8Array([0,0,0,0,0,0,0,1]);const n=new Uint8Array([105,115,111,109]),o=new Uint8Array([97,118,99,49]),a=new Uint8Array([0,0,0,1]);mw.FTYP=mw.box(mw.types.ftyp,n,a,n,o),mw.DINF=mw.box(mw.types.dinf,mw.box(mw.types.dref,i))}static box(t,...e){let s=8,i=e.length;const r=i;for(;i--;)s+=e[i].byteLength;const n=new Uint8Array(s);for(n[0]=s>>24&255,n[1]=s>>16&255,n[2]=s>>8&255,n[3]=255&s,n.set(t,4),i=0,s=8;i<r;i++)n.set(e[i],s),s+=e[i].byteLength;return n}static hdlr(t){return mw.box(mw.types.hdlr,mw.HDLR_TYPES[t])}static mdat(t){return mw.box(mw.types.mdat,t)}static mdhd(t,e){e*=t;const s=Math.floor(e/(fw+1)),i=Math.floor(e%(fw+1));return mw.box(mw.types.mdhd,new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,t>>24&255,t>>16&255,t>>8&255,255&t,s>>24,s>>16&255,s>>8&255,255&s,i>>24,i>>16&255,i>>8&255,255&i,85,196,0,0]))}static mdia(t){return mw.box(mw.types.mdia,mw.mdhd(t.timescale||0,t.duration||0),mw.hdlr(t.type),mw.minf(t))}static mfhd(t){return mw.box(mw.types.mfhd,new Uint8Array([0,0,0,0,t>>24,t>>16&255,t>>8&255,255&t]))}static minf(t){return"audio"===t.type?mw.box(mw.types.minf,mw.box(mw.types.smhd,mw.SMHD),mw.DINF,mw.stbl(t)):mw.box(mw.types.minf,mw.box(mw.types.vmhd,mw.VMHD),mw.DINF,mw.stbl(t))}static moof(t,e,s){return mw.box(mw.types.moof,mw.mfhd(t),mw.traf(s,e))}static moov(t){let e=t.length;const s=[];for(;e--;)s[e]=mw.trak(t[e]);return mw.box.apply(null,[mw.types.moov,mw.mvhd(t[0].timescale||0,t[0].duration||0)].concat(s).concat(mw.mvex(t)))}static mvex(t){let e=t.length;const s=[];for(;e--;)s[e]=mw.trex(t[e]);return mw.box.apply(null,[mw.types.mvex,...s])}static mvhd(t,e){e*=t;const s=Math.floor(e/(fw+1)),i=Math.floor(e%(fw+1)),r=new Uint8Array([1,0,0,0,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,t>>24&255,t>>16&255,t>>8&255,255&t,s>>24,s>>16&255,s>>8&255,255&s,i>>24,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]);return mw.box(mw.types.mvhd,r)}static sdtp(t){const e=t.samples||[],s=new Uint8Array(4+e.length);let i,r;for(i=0;i<e.length;i++)r=e[i].flags,s[i+4]=r.dependsOn<<4|r.isDependedOn<<2|r.hasRedundancy;return mw.box(mw.types.sdtp,s)}static stbl(t){return mw.box(mw.types.stbl,mw.stsd(t),mw.box(mw.types.stts,mw.STTS),mw.box(mw.types.stsc,mw.STSC),mw.box(mw.types.stsz,mw.STSZ),mw.box(mw.types.stco,mw.STCO))}static avc1(t){let e,s,i,r=[],n=[];for(e=0;e<t.sps.length;e++)s=t.sps[e],i=s.byteLength,r.push(i>>>8&255),r.push(255&i),r=r.concat(Array.prototype.slice.call(s));for(e=0;e<t.pps.length;e++)s=t.pps[e],i=s.byteLength,n.push(i>>>8&255),n.push(255&i),n=n.concat(Array.prototype.slice.call(s));const o=mw.box(mw.types.avcC,new Uint8Array([1,r[3],r[4],r[5],255,224|t.sps.length].concat(r).concat([t.pps.length]).concat(n))),a=t.width,h=t.height,l=t.pixelRatio[0],c=t.pixelRatio[1];return mw.box(mw.types.avc1,new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,a>>8&255,255&a,h>>8&255,255&h,0,72,0,0,0,72,0,0,0,0,0,0,0,1,18,100,97,105,108,121,109,111,116,105,111,110,47,104,108,115,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,17]),o,mw.box(mw.types.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192])),mw.box(mw.types.pasp,new Uint8Array([l>>24,l>>16&255,l>>8&255,255&l,c>>24,c>>16&255,c>>8&255,255&c])))}static esds(t){const e=t.config;return new Uint8Array([0,0,0,0,3,25,0,1,0,4,17,64,21,0,0,0,0,0,0,0,0,0,0,0,5,2,...e,6,1,2])}static audioStsd(t){const e=t.samplerate||0;return new Uint8Array([0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,t.channelCount||0,0,16,0,0,0,0,e>>8&255,255&e,0,0])}static mp4a(t){return mw.box(mw.types.mp4a,mw.audioStsd(t),mw.box(mw.types.esds,mw.esds(t)))}static mp3(t){return mw.box(mw.types[".mp3"],mw.audioStsd(t))}static ac3(t){return mw.box(mw.types["ac-3"],mw.audioStsd(t),mw.box(mw.types.dac3,t.config))}static stsd(t){const{segmentCodec:e}=t;if("audio"===t.type){if("aac"===e)return mw.box(mw.types.stsd,mw.STSD,mw.mp4a(t));if("ac3"===e&&t.config)return mw.box(mw.types.stsd,mw.STSD,mw.ac3(t));if("mp3"===e&&"mp3"===t.codec)return mw.box(mw.types.stsd,mw.STSD,mw.mp3(t))}else{if(!t.pps||!t.sps)throw new Error("video track missing pps or sps");if("avc"===e)return mw.box(mw.types.stsd,mw.STSD,mw.avc1(t));if("hevc"===e&&t.vps)return mw.box(mw.types.stsd,mw.STSD,mw.hvc1(t))}throw new Error(`unsupported ${t.type} segment codec (${e}/${t.codec})`)}static tkhd(t){const e=t.id,s=(t.duration||0)*(t.timescale||0),i=t.width||0,r=t.height||0,n=Math.floor(s/(fw+1)),o=Math.floor(s%(fw+1));return mw.box(mw.types.tkhd,new Uint8Array([1,0,0,7,0,0,0,0,0,0,0,2,0,0,0,0,0,0,0,3,e>>24&255,e>>16&255,e>>8&255,255&e,0,0,0,0,n>>24,n>>16&255,n>>8&255,255&n,o>>24,o>>16&255,o>>8&255,255&o,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,i>>8&255,255&i,0,0,r>>8&255,255&r,0,0]))}static traf(t,e){const s=mw.sdtp(t),i=t.id,r=Math.floor(e/(fw+1)),n=Math.floor(e%(fw+1));return mw.box(mw.types.traf,mw.box(mw.types.tfhd,new Uint8Array([0,0,0,0,i>>24,i>>16&255,i>>8&255,255&i])),mw.box(mw.types.tfdt,new Uint8Array([1,0,0,0,r>>24,r>>16&255,r>>8&255,255&r,n>>24,n>>16&255,n>>8&255,255&n])),mw.trun(t,s.length+16+20+8+16+8+8),s)}static trak(t){return t.duration=t.duration||4294967295,mw.box(mw.types.trak,mw.tkhd(t),mw.mdia(t))}static trex(t){const e=t.id;return mw.box(mw.types.trex,new Uint8Array([0,0,0,0,e>>24,e>>16&255,e>>8&255,255&e,0,0,0,1,0,0,0,0,0,0,0,0,0,1,0,1]))}static trun(t,e){const s=t.samples||[],i=s.length,r=12+16*i,n=new Uint8Array(r);let o,a,h,l,c,d;for(e+=8+r,n.set(["video"===t.type?1:0,0,15,1,i>>>24&255,i>>>16&255,i>>>8&255,255&i,e>>>24&255,e>>>16&255,e>>>8&255,255&e],0),o=0;o<i;o++)a=s[o],h=a.duration,l=a.size,c=a.flags,d=a.cts,n.set([h>>>24&255,h>>>16&255,h>>>8&255,255&h,l>>>24&255,l>>>16&255,l>>>8&255,255&l,c.isLeading<<2|c.dependsOn,c.isDependedOn<<6|c.hasRedundancy<<4|c.paddingValue<<1|c.isNonSync,61440&c.degradPrio,15&c.degradPrio,d>>>24&255,d>>>16&255,d>>>8&255,255&d],12+16*o);return mw.box(mw.types.trun,n)}static initSegment(t){mw.types||mw.init();const e=mw.moov(t);return XA(mw.FTYP,e)}static hvc1(t){const e=t.params,s=[t.vps,t.sps,t.pps],i=new Uint8Array([1,e.general_profile_space<<6|(e.general_tier_flag?32:0)|e.general_profile_idc,e.general_profile_compatibility_flags[0],e.general_profile_compatibility_flags[1],e.general_profile_compatibility_flags[2],e.general_profile_compatibility_flags[3],e.general_constraint_indicator_flags[0],e.general_constraint_indicator_flags[1],e.general_constraint_indicator_flags[2],e.general_constraint_indicator_flags[3],e.general_constraint_indicator_flags[4],e.general_constraint_indicator_flags[5],e.general_level_idc,240|e.min_spatial_segmentation_idc>>8,255&e.min_spatial_segmentation_idc,252|e.parallelismType,252|e.chroma_format_idc,248|e.bit_depth_luma_minus8,248|e.bit_depth_chroma_minus8,0,parseInt(e.frame_rate.fps),3|e.temporal_id_nested<<2|e.num_temporal_layers<<3|(e.frame_rate.fixed?64:0),s.length]);let r=i.length;for(let t=0;t<s.length;t+=1){r+=3;for(let e=0;e<s[t].length;e+=1)r+=2+s[t][e].length}const n=new Uint8Array(r);n.set(i,0),r=i.length;const o=s.length-1;for(let t=0;t<s.length;t+=1){n.set(new Uint8Array([32+t|(t===o?128:0),0,s[t].length]),r),r+=3;for(let e=0;e<s[t].length;e+=1)n.set(new Uint8Array([s[t][e].length>>8,255&s[t][e].length]),r),r+=2,n.set(s[t][e],r),r+=s[t][e].length}const a=mw.box(mw.types.hvcC,n),h=t.width,l=t.height,c=t.pixelRatio[0],d=t.pixelRatio[1];return mw.box(mw.types.hvc1,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,h>>8&255,255&h,l>>8&255,255&l,0,72,0,0,0,72,0,0,0,0,0,0,0,1,18,100,97,105,108,121,109,111,116,105,111,110,47,104,108,115,46,106,115,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,17,17]),a,mw.box(mw.types.btrt,new Uint8Array([0,28,156,128,0,45,198,192,0,45,198,192])),mw.box(mw.types.pasp,new Uint8Array([c>>24,c>>16&255,c>>8&255,255&c,d>>24,d>>16&255,d>>8&255,255&d])))}}mw.types=void 0,mw.HDLR_TYPES=void 0,mw.STTS=void 0,mw.STSC=void 0,mw.STCO=void 0,mw.STSZ=void 0,mw.VMHD=void 0,mw.SMHD=void 0,mw.STSD=void 0,mw.FTYP=void 0,mw.DINF=void 0;function gw(t,e,s=1,i=!1){const r=t*e*s;return i?Math.round(r):r}function yw(t,e=!1){return gw(t,1e3,1/9e4,e)}let Aw,bw=null,vw=null;function Sw(t,e,s,i){return{duration:e,size:s,cts:i,flags:{isLeading:0,isDependedOn:0,hasRedundancy:0,degradPrio:0,dependsOn:t?2:1,isNonSync:t?0:1}}}class Ew{constructor(t,e,s,i){if(this.logger=void 0,this.observer=void 0,this.config=void 0,this.typeSupported=void 0,this.ISGenerated=!1,this._initPTS=null,this._initDTS=null,this.nextAvcDts=null,this.nextAudioPts=null,this.videoSampleDuration=null,this.isAudioContiguous=!1,this.isVideoContiguous=!1,this.videoTrackConfig=void 0,this.observer=t,this.config=e,this.typeSupported=s,this.logger=i,this.ISGenerated=!1,null===bw){const t=(navigator.userAgent||"").match(/Chrome\/(\d+)/i);bw=t?parseInt(t[1]):0}if(null===vw){const t=navigator.userAgent.match(/Safari\/(\d+)/i);vw=t?parseInt(t[1]):0}}destroy(){this.config=this.videoTrackConfig=this._initPTS=this._initDTS=null}resetTimeStamp(t){this.logger.log("[mp4-remuxer]: initPTS & initDTS reset"),this._initPTS=this._initDTS=t}resetNextTimestamp(){this.logger.log("[mp4-remuxer]: reset next timestamp"),this.isVideoContiguous=!1,this.isAudioContiguous=!1}resetInitSegment(){this.logger.log("[mp4-remuxer]: ISGenerated flag reset"),this.ISGenerated=!1,this.videoTrackConfig=void 0}getVideoStartPts(t){let e=!1;const s=t[0].pts,i=t.reduce((t,i)=>{let r=i.pts,n=r-t;return n<-4294967296&&(e=!0,r=ww(r,s),n=r-t),n>0?t:r},s);return e&&this.logger.debug("PTS rollover detected"),i}remux(t,e,s,i,r,n,o,a){let h,l,c,d,u,p,f=r,m=r;const g=t.pid>-1,y=e.pid>-1,A=e.samples.length,b=t.samples.length>0,v=o&&A>0||A>1;if((!g||b)&&(!y||v)||this.ISGenerated||o){if(this.ISGenerated){var S,E,w,T;const t=this.videoTrackConfig;(t&&(e.width!==t.width||e.height!==t.height||(null==(S=e.pixelRatio)?void 0:S[0])!==(null==(E=t.pixelRatio)?void 0:E[0])||(null==(w=e.pixelRatio)?void 0:w[1])!==(null==(T=t.pixelRatio)?void 0:T[1]))||!t&&v||null===this.nextAudioPts&&b)&&this.resetInitSegment()}this.ISGenerated||(c=this.generateIS(t,e,r,n));const s=this.isVideoContiguous;let i,o=-1;if(v&&(o=function(t){for(let e=0;e<t.length;e++)if(t[e].key)return e;return-1}(e.samples),!s&&this.config.forceKeyFrameOnDiscontinuity))if(p=!0,o>0){this.logger.warn(`[mp4-remuxer]: Dropped ${o} out of ${A} video samples due to a missing keyframe`);const t=this.getVideoStartPts(e.samples);e.samples=e.samples.slice(o),e.dropped+=o,m+=(e.samples[0].pts-t)/e.inputTimeScale,i=m}else-1===o&&(this.logger.warn(`[mp4-remuxer]: No keyframe found out of ${A} video samples`),p=!1);if(this.ISGenerated){if(b&&v){const s=this.getVideoStartPts(e.samples),i=(ww(t.samples[0].pts,s)-s)/e.inputTimeScale;f+=Math.max(0,i),m+=Math.max(0,-i)}if(b){if(t.samplerate||(this.logger.warn("[mp4-remuxer]: regenerate InitSegment as audio detected"),c=this.generateIS(t,e,r,n)),l=this.remuxAudio(t,f,this.isAudioContiguous,n,y||v||a===eA?m:void 0),v){const i=l?l.endPTS-l.startPTS:0;e.inputTimeScale||(this.logger.warn("[mp4-remuxer]: regenerate InitSegment as video detected"),c=this.generateIS(t,e,r,n)),h=this.remuxVideo(e,m,s,i)}}else v&&(h=this.remuxVideo(e,m,s,0));h&&(h.firstKeyFrame=o,h.independent=-1!==o,h.firstKeyFramePTS=i)}}return this.ISGenerated&&this._initPTS&&this._initDTS&&(s.samples.length&&(u=Tw(s,r,this._initPTS,this._initDTS)),i.samples.length&&(d=Iw(i,r,this._initPTS))),{audio:l,video:h,initSegment:c,independent:p,text:d,id3:u}}generateIS(t,e,s,i){const r=t.samples,n=e.samples,o=this.typeSupported,a={},h=this._initPTS;let l,c,d,u,p=!h||i,f="audio/mp4";if(p&&(l=c=1/0),t.config&&r.length){switch(t.timescale=t.samplerate,t.segmentCodec){case"mp3":o.mpeg?(f="audio/mpeg",t.codec=""):o.mp3&&(t.codec="mp3");break;case"ac3":t.codec="ac-3"}a.audio={id:"audio",container:f,codec:t.codec,initSegment:"mp3"===t.segmentCodec&&o.mpeg?new Uint8Array(0):mw.initSegment([t]),metadata:{channelCount:t.channelCount}},p&&(u=t.id,d=t.inputTimeScale,h&&d===h.timescale?p=!1:l=c=r[0].pts-Math.round(d*s))}if(e.sps&&e.pps&&n.length){if(e.timescale=e.inputTimeScale,a.video={id:"main",container:"video/mp4",codec:e.codec,initSegment:mw.initSegment([e]),metadata:{width:e.width,height:e.height}},p)if(u=e.id,d=e.inputTimeScale,h&&d===h.timescale)p=!1;else{const t=this.getVideoStartPts(n),e=Math.round(d*s);c=Math.min(c,ww(n[0].dts,t)-e),l=Math.min(l,t-e)}this.videoTrackConfig={width:e.width,height:e.height,pixelRatio:e.pixelRatio}}if(Object.keys(a).length)return this.ISGenerated=!0,p?(this._initPTS={baseTime:l,timescale:d},this._initDTS={baseTime:c,timescale:d}):l=d=void 0,{tracks:a,initPTS:l,timescale:d,trackId:u}}remuxVideo(t,e,s,i){const r=t.inputTimeScale,n=t.samples,o=[],a=n.length,h=this._initPTS;let l,c,d=this.nextAvcDts,u=8,p=this.videoSampleDuration,f=Number.POSITIVE_INFINITY,m=Number.NEGATIVE_INFINITY,g=!1;if(!s||null===d){const t=e*r,i=n[0].pts-ww(n[0].dts,n[0].pts);bw&&null!==d&&Math.abs(t-i-d)<15e3?s=!0:d=t-i}const y=h.baseTime*r/h.timescale;for(let t=0;t<a;t++){const e=n[t];e.pts=ww(e.pts-y,d),e.dts=ww(e.dts-y,d),e.dts<n[t>0?t-1:t].dts&&(g=!0)}g&&n.sort(function(t,e){const s=t.dts-e.dts,i=t.pts-e.pts;return s||i}),l=n[0].dts,c=n[n.length-1].dts;const A=c-l,b=A?Math.round(A/(a-1)):p||t.inputTimeScale/30;if(s){const s=l-d,i=s>b,r=s<-1;if((i||r)&&(i?this.logger.warn(`${(t.segmentCodec||"").toUpperCase()}: ${yw(s,!0)} ms (${s}dts) hole between fragments detected at ${e.toFixed(3)}`):this.logger.warn(`${(t.segmentCodec||"").toUpperCase()}: ${yw(-s,!0)} ms (${s}dts) overlapping between fragments detected at ${e.toFixed(3)}`),!r||d>=n[0].pts||bw)){l=d;const t=n[0].pts-s;if(i)n[0].dts=l,n[0].pts=t;else{let e=!0;for(let i=0;i<n.length&&!(n[i].dts>t&&e);i++){const t=n[i].pts;if(n[i].dts-=s,n[i].pts-=s,i<n.length-1){const s=n[i+1].pts;e=s<=n[i].pts==s<=t}}}this.logger.log(`Video: Initial PTS/DTS adjusted: ${yw(t,!0)}/${yw(l,!0)}, delta: ${yw(s,!0)} ms`)}}l=Math.max(0,l);let v=0,S=0,E=l;for(let t=0;t<a;t++){const e=n[t],s=e.units,i=s.length;let r=0;for(let t=0;t<i;t++)r+=s[t].data.length;S+=r,v+=i,e.length=r,e.dts<E?(e.dts=E,E+=b/4|0||1):E=e.dts,f=Math.min(e.pts,f),m=Math.max(e.pts,m)}c=n[a-1].dts;const w=S+4*v+8;let T;try{T=new Uint8Array(w)}catch(t){return void this.observer.emit(Yy.ERROR,Yy.ERROR,{type:qy.MUX_ERROR,details:Qy.REMUX_ALLOC_ERROR,fatal:!1,error:t,bytes:w,reason:`fail allocating video mdat ${w}`})}const I=new DataView(T.buffer);I.setUint32(0,w),T.set(mw.types.mdat,4);let k=!1,_=Number.POSITIVE_INFINITY,C=Number.POSITIVE_INFINITY,D=Number.NEGATIVE_INFINITY,L=Number.NEGATIVE_INFINITY;for(let t=0;t<a;t++){const e=n[t],s=e.units;let h,l=0;for(let t=0,e=s.length;t<e;t++){const e=s[t],i=e.data,r=e.data.byteLength;I.setUint32(u,r),u+=4,T.set(i,u),u+=r,l+=4+r}if(t<a-1)p=n[t+1].dts-e.dts,h=n[t+1].pts-e.pts;else{const s=this.config,o=t>0?e.dts-n[t-1].dts:b;if(h=t>0?e.pts-n[t-1].pts:b,s.stretchShortVideoTrack&&null!==this.nextAudioPts){const t=Math.floor(s.maxBufferHole*r),n=(i?f+i*r:this.nextAudioPts)-e.pts;n>t?(p=n-o,p<0?p=o:k=!0,this.logger.log(`[mp4-remuxer]: It is approximately ${n/90} ms to the next segment; using duration ${p/90} ms for the last video frame.`)):p=o}else p=o}const c=Math.round(e.pts-e.dts);_=Math.min(_,p),D=Math.max(D,p),C=Math.min(C,h),L=Math.max(L,h),o.push(Sw(e.key,p,l,c))}if(o.length)if(bw){if(bw<70){const t=o[0].flags;t.dependsOn=2,t.isNonSync=0}}else if(vw&&L-C<D-_&&b/D<.025&&0===o[0].cts){this.logger.warn("Found irregular gaps in sample duration. Using PTS instead of DTS to determine MP4 sample duration.");let t=l;for(let e=0,s=o.length;e<s;e++){const i=t+o[e].duration,r=t+o[e].cts;if(e<s-1){const t=i+o[e+1].cts;o[e].duration=t-r}else o[e].duration=e?o[e-1].duration:b;o[e].cts=0,t=i}}p=k||!p?b:p,this.nextAvcDts=d=c+p,this.videoSampleDuration=p,this.isVideoContiguous=!0;const R={data1:mw.moof(t.sequenceNumber++,l,oA(t,{samples:o})),data2:T,startPTS:f/r,endPTS:(m+p)/r,startDTS:l/r,endDTS:d/r,type:"video",hasAudio:!1,hasVideo:!0,nb:o.length,dropped:t.dropped};return t.samples=[],t.dropped=0,R}getSamplesPerFrame(t){switch(t.segmentCodec){case"mp3":return 1152;case"ac3":return 1536;default:return 1024}}remuxAudio(t,e,s,i,r){const n=t.inputTimeScale,o=n/(t.samplerate?t.samplerate:n),a=this.getSamplesPerFrame(t),h=a*o,l=this._initPTS,c="mp3"===t.segmentCodec&&this.typeSupported.mpeg,d=[],u=void 0!==r;let p=t.samples,f=c?0:8,m=this.nextAudioPts||-1;const g=e*n,y=l.baseTime*n/l.timescale;if(this.isAudioContiguous=s=s||p.length&&m>0&&(i&&Math.abs(g-m)<9e3||Math.abs(ww(p[0].pts-y,g)-m)<20*h),p.forEach(function(t){t.pts=ww(t.pts-y,g)}),!s||m<0){if(p=p.filter(t=>t.pts>=0),!p.length)return;m=0===r?0:i&&!u?Math.max(0,g):p[0].pts}if("aac"===t.segmentCodec){const e=this.config.maxAudioFramesDrift;for(let s=0,i=m;s<p.length;s++){const r=p[s],o=r.pts,a=o-i,l=Math.abs(1e3*a/n);if(a<=-e*h&&u)0===s&&(this.logger.warn(`Audio frame @ ${(o/n).toFixed(3)}s overlaps nextAudioPts by ${Math.round(1e3*a/n)} ms.`),this.nextAudioPts=m=i=o);else if(a>=e*h&&l<1e4&&u){let e=Math.round(a/h);i=o-e*h,i<0&&(e--,i+=h),0===s&&(this.nextAudioPts=m=i),this.logger.warn(`[mp4-remuxer]: Injecting ${e} audio frame @ ${(i/n).toFixed(3)}s due to ${Math.round(1e3*a/n)} ms gap.`);for(let n=0;n<e;n++){const e=Math.max(i,0);let n=pw.getSilentFrame(t.parsedCodec||t.manifestCodec||t.codec,t.channelCount);n||(this.logger.log("[mp4-remuxer]: Unable to get silent frame for given audio codec; duplicating last frame instead."),n=r.unit.subarray()),p.splice(s,0,{unit:n,pts:e}),i+=h,s++}}r.pts=i,i+=h}}let A,b=null,v=null,S=0,E=p.length;for(;E--;)S+=p[E].unit.byteLength;for(let e=0,i=p.length;e<i;e++){const i=p[e],r=i.unit;let n=i.pts;if(null!==v){d[e-1].duration=Math.round((n-v)/o)}else{if(s&&"aac"===t.segmentCodec&&(n=m),b=n,!(S>0))return;S+=f;try{A=new Uint8Array(S)}catch(t){return void this.observer.emit(Yy.ERROR,Yy.ERROR,{type:qy.MUX_ERROR,details:Qy.REMUX_ALLOC_ERROR,fatal:!1,error:t,bytes:S,reason:`fail allocating audio mdat ${S}`})}if(!c){new DataView(A.buffer).setUint32(0,S),A.set(mw.types.mdat,4)}}A.set(r,f);const h=r.byteLength;f+=h,d.push(Sw(!0,a,h,0)),v=n}const w=d.length;if(!w)return;const T=d[d.length-1];this.nextAudioPts=m=v+o*T.duration;const I=c?new Uint8Array(0):mw.moof(t.sequenceNumber++,b/o,oA({},t,{samples:d}));t.samples=[];const k=b/n,_=m/n,C={data1:I,data2:A,startPTS:k,endPTS:_,startDTS:k,endDTS:_,type:"audio",hasAudio:!0,hasVideo:!1,nb:w};return this.isAudioContiguous=!0,C}}function ww(t,e){let s;if(null===e)return t;for(s=e<t?-8589934592:8589934592;Math.abs(t-e)>4294967296;)t+=s;return t}function Tw(t,e,s,i){const r=t.samples.length;if(!r)return;const n=t.inputTimeScale;for(let o=0;o<r;o++){const r=t.samples[o];r.pts=ww(r.pts-s.baseTime*n/s.timescale,e*n)/n,r.dts=ww(r.dts-i.baseTime*n/i.timescale,e*n)/n}const o=t.samples;return t.samples=[],{samples:o}}function Iw(t,e,s){const i=t.samples.length;if(!i)return;const r=t.inputTimeScale;for(let n=0;n<i;n++){const i=t.samples[n];i.pts=ww(i.pts-s.baseTime*r/s.timescale,e*r)/r}t.samples.sort((t,e)=>t.pts-e.pts);const n=t.samples;return t.samples=[],{samples:n}}function kw(t,e,s=!1){return void 0!==(null==t?void 0:t.start)?(t.start+(s?t.duration:0))/t.timescale:e}function _w(t,e,s){const i=null==t?void 0:t.codec;if(i&&i.length>4)return i;if(e===IA){if("ec-3"===i||"ac-3"===i||"alac"===i)return i;if("fLaC"===i||"Opus"===i){return mb(i,!1)}return s.warn(`Unhandled audio codec "${i}" in mp4 MAP`),i||"mp4a"}return s.warn(`Unhandled video codec "${i}" in mp4 MAP`),i||"avc1"}try{Aw=self.performance.now.bind(self.performance)}catch(t){Aw=Date.now}const Cw=[{demux:class{constructor(t,e){this.remainderData=null,this.timeOffset=0,this.config=void 0,this.videoTrack=void 0,this.audioTrack=void 0,this.id3Track=void 0,this.txtTrack=void 0,this.config=e}resetTimeStamp(){}resetInitSegment(t,e,s,i){const r=this.videoTrack=FE("video",1),n=this.audioTrack=FE("audio",1),o=this.txtTrack=FE("text",1);if(this.id3Track=FE("id3",1),this.timeOffset=0,null==t||!t.byteLength)return;const a=zA(t);if(a.video){const{id:t,timescale:e,codec:s,supplemental:i}=a.video;r.id=t,r.timescale=o.timescale=e,r.codec=s,r.supplemental=i}if(a.audio){const{id:t,timescale:e,codec:s}=a.audio;n.id=t,n.timescale=e,n.codec=s}o.id=BA.text,r.sampleDuration=0,r.duration=n.duration=i}resetContiguity(){this.remainderData=null}static probe(t){return function(t){const e=t.byteLength;for(let s=0;s<e;){const i=OA(t,s);if(i>8&&109===t[s+4]&&111===t[s+5]&&111===t[s+6]&&102===t[s+7])return!0;s=i>1?s+i:e}return!1}(t)}demux(t,e){this.timeOffset=e;let s=t;const i=this.videoTrack,r=this.txtTrack;if(this.config.progressive){this.remainderData&&(s=XA(this.remainderData,t));const e=function(t){const e={valid:null,remainder:null},s=WA(t,["moof"]);if(s.length<2)return e.remainder=t,e;const i=s[s.length-1];return e.valid=t.slice(0,i.byteOffset-8),e.remainder=t.slice(i.byteOffset-8),e}(s);this.remainderData=e.remainder,i.samples=e.valid||new Uint8Array}else i.samples=s;const n=this.extractID3Track(i,e);return r.samples=$A(e,i),{videoTrack:i,audioTrack:this.audioTrack,id3Track:n,textTrack:this.txtTrack}}flush(){const t=this.timeOffset,e=this.videoTrack,s=this.txtTrack;e.samples=this.remainderData||new Uint8Array,this.remainderData=null;const i=this.extractID3Track(e,this.timeOffset);return s.samples=$A(t,e),{videoTrack:e,audioTrack:FE(),id3Track:i,textTrack:FE()}}extractID3Track(t,e){const s=this.id3Track;if(t.samples.length){const i=WA(t.samples,["emsg"]);i&&i.forEach(t=>{const i=function(t){const e=t[0];let s="",i="",r=0,n=0,o=0,a=0,h=0,l=0;if(0===e){for(;"\0"!==FA(t.subarray(l,l+1));)s+=FA(t.subarray(l,l+1)),l+=1;for(s+=FA(t.subarray(l,l+1)),l+=1;"\0"!==FA(t.subarray(l,l+1));)i+=FA(t.subarray(l,l+1)),l+=1;i+=FA(t.subarray(l,l+1)),l+=1,r=OA(t,12),n=OA(t,16),a=OA(t,20),h=OA(t,24),l=28}else if(1===e){l+=4,r=OA(t,l),l+=4;const e=OA(t,l);l+=4;const n=OA(t,l);for(l+=4,o=2**32*e+n,Hy(o)||(o=Number.MAX_SAFE_INTEGER,mA.warn("Presentation time exceeds safe integer limit and wrapped to max safe integer in parsing emsg box")),a=OA(t,l),l+=4,h=OA(t,l),l+=4;"\0"!==FA(t.subarray(l,l+1));)s+=FA(t.subarray(l,l+1)),l+=1;for(s+=FA(t.subarray(l,l+1)),l+=1;"\0"!==FA(t.subarray(l,l+1));)i+=FA(t.subarray(l,l+1)),l+=1;i+=FA(t.subarray(l,l+1)),l+=1}return{schemeIdUri:s,value:i,timeScale:r,presentationTime:o,presentationTimeDelta:n,eventDuration:a,id:h,payload:t.subarray(l,t.byteLength)}}(t);if($E.test(i.schemeIdUri)){const t=ZE(i,e);let r=4294967295===i.eventDuration?Number.POSITIVE_INFINITY:i.eventDuration/i.timeScale;r<=.001&&(r=Number.POSITIVE_INFINITY);const n=i.payload;s.samples.push({data:n,len:n.byteLength,dts:t,pts:t,type:BE.emsg,duration:r})}else if(this.config.enableEmsgKLVMetadata&&i.schemeIdUri.startsWith("urn:misb:KLV:bin:1910.1")){const t=ZE(i,e);s.samples.push({data:i.payload,len:i.payload.byteLength,dts:t,pts:t,type:BE.misbklv,duration:Number.POSITIVE_INFINITY})}})}return s}demuxSampleAes(t,e,s){return Promise.reject(new Error("The MP4 demuxer does not support SAMPLE-AES decryption"))}destroy(){this.config=null,this.remainderData=null,this.videoTrack=this.audioTrack=this.id3Track=this.txtTrack=void 0}},remux:class{constructor(t,e,s,i){this.logger=void 0,this.emitInitSegment=!1,this.audioCodec=void 0,this.videoCodec=void 0,this.initData=void 0,this.initPTS=null,this.initTracks=void 0,this.lastEndTime=null,this.isVideoContiguous=!1,this.logger=i}destroy(){}resetTimeStamp(t){this.initPTS=t,this.lastEndTime=null}resetNextTimestamp(){this.isVideoContiguous=!1,this.lastEndTime=null}resetInitSegment(t,e,s,i){this.audioCodec=e,this.videoCodec=s,this.generateInitSegment(function(t,e){if(!t||!e)return t;const s=e.keyId;s&&e.isCommonEncryption&&WA(t,["moov","trak"]).forEach(t=>{const e=WA(t,["mdia","minf","stbl","stsd"])[0].subarray(8);let i=WA(e,["enca"]);const r=i.length>0;r||(i=WA(e,["encv"])),i.forEach(t=>{WA(r?t.subarray(28):t.subarray(78),["sinf"]).forEach(t=>{const e=JA(t);if(e){const t=e.subarray(8,24);t.some(t=>0!==t)||(mA.log(`[eme] Patching keyId in 'enc${r?"a":"v"}>sinf>>tenc' box: ${bA(t)} -> ${bA(s)}`),e.set(s,8))}})})});return t}(t,i)),this.emitInitSegment=!0}generateInitSegment(t){let{audioCodec:e,videoCodec:s}=this;if(null==t||!t.byteLength)return this.initTracks=void 0,void(this.initData=void 0);const i=this.initData=zA(t);i.audio&&(e=_w(i.audio,IA,this.logger)),i.video&&(s=_w(i.video,kA,this.logger));const r={};i.audio&&i.video?r.audiovideo={container:"video/mp4",codec:e+","+s,supplemental:i.video.supplemental,initSegment:t,id:"main"}:i.audio?r.audio={container:"audio/mp4",codec:e,initSegment:t,id:"audio"}:i.video?r.video={container:"video/mp4",codec:s,supplemental:i.video.supplemental,initSegment:t,id:"main"}:this.logger.warn("[passthrough-remuxer.ts]: initSegment does not contain moov or trak boxes."),this.initTracks=r}remux(t,e,s,i,r,n){var o,a;let{initPTS:h,lastEndTime:l}=this;const c={audio:void 0,video:void 0,text:i,id3:s,initSegment:void 0};zy(l)||(l=this.lastEndTime=r||0);const d=e.samples;if(null==d||!d.length)return c;const u={initPTS:void 0,timescale:void 0,trackId:void 0};let p=this.initData;if(null!=(o=p)&&o.length||(this.generateInitSegment(d),p=this.initData),null==(a=p)||!a.length)return this.logger.warn("[passthrough-remuxer.ts]: Failed to generate initSegment."),c;this.emitInitSegment&&(u.tracks=this.initTracks,this.emitInitSegment=!1);const f=function(t,e,s){const i={},r=WA(t,["moof","traf"]);for(let t=0;t<r.length;t++){const n=r[t],o=WA(n,["tfhd"])[0],a=OA(o,4),h=e[a];if(!h)continue;const l=i[a]||(i[a]={start:NaN,duration:0,sampleCount:0,timescale:h.timescale,type:h.type}),c=WA(n,["tfdt"])[0];if(c){const t=c[0];let e=OA(c,4);1===t&&(e===xA?s.warn("[mp4-demuxer]: Ignoring assumed invalid signed 64-bit track fragment decode time"):(e*=xA+1,e+=OA(c,8))),zy(e)&&(!zy(l.start)||e<l.start)&&(l.start=e)}const d=h.default,u=OA(o,0)|(null==d?void 0:d.flags);let p=(null==d?void 0:d.duration)||0;8&u&&(p=OA(o,2&u?12:8));const f=WA(n,["trun"]);let m=l.start||0,g=0,y=p;for(let t=0;t<f.length;t++){const e=f[t],s=OA(e,4),i=l.sampleCount;l.sampleCount+=s;const r=1&e[3],n=4&e[3],o=1&e[2],a=2&e[2],h=4&e[2],c=8&e[2];let d=8,u=s;for(r&&(d+=4),n&&s&&(1&e[d+1]||void 0!==l.keyFrameIndex||(l.keyFrameIndex=i),d+=4,o?(y=OA(e,d),d+=4):y=p,a&&(d+=4),c&&(d+=4),m+=y,g+=y,u--);u--;)o?(y=OA(e,d),d+=4):y=p,a&&(d+=4),h&&(1&e[d+1]||void 0===l.keyFrameIndex&&(l.keyFrameIndex=l.sampleCount-(u+1),l.keyFrameStart=m),d+=4),c&&(d+=4),m+=y,g+=y;!g&&p&&(g+=p*s)}l.duration+=g}if(!Object.keys(i).some(t=>i[t].duration)){let e=1/0,s=0;const r=WA(t,["sidx"]);for(let t=0;t<r.length;t++){const i=GA(r[t]);if(null!=i&&i.references){e=Math.min(e,i.earliestPresentationTime/i.timescale);const t=i.references.reduce((t,e)=>t+e.info.duration||0,0);s=Math.max(s,t+i.earliestPresentationTime/i.timescale)}}s&&zy(s)&&Object.keys(i).forEach(t=>{i[t].duration||(i[t].duration=s*i[t].timescale-i[t].start)})}return i}(d,p,this.logger),m=p.audio?f[p.audio.id]:null,g=p.video?f[p.video.id]:null,y=kw(g,1/0),A=kw(m,1/0),b=kw(g,0,!0),v=kw(m,0,!0);let S,E=r,w=0;if(m&&(!g||!h&&A<y||h&&h.trackId===p.audio.id)?(u.trackId=p.audio.id,S=m,w=v-A):g&&(u.trackId=p.video.id,S=g,w=b-y),S){const t=S.timescale;E=S.start/t,u.timescale=t,h||(u.initPTS=S.start-r*t,this.initPTS=h={baseTime:u.initPTS,timescale:t,trackId:u.trackId})}!n&&h||!function(t,e,s,i){if(null===t)return!0;const r=Math.max(i,1),n=e-t.baseTime/t.timescale;return Math.abs(n-s)>r}(h,E,r,w)&&u.timescale===h.timescale||(u.initPTS=E-r,h&&1===h.timescale&&this.logger.warn(`Adjusting initPTS @${r} from ${h.baseTime/h.timescale} to ${u.initPTS}`),this.initPTS=h={baseTime:u.initPTS,timescale:1});const T=t?E-h.baseTime/h.timescale:l;!function(t,e,s){WA(e,["moof","traf"]).forEach(e=>{WA(e,["tfhd"]).forEach(i=>{const r=OA(i,4),n=t[r];if(!n)return;const o=n.timescale||9e4;WA(e,["tfdt"]).forEach(t=>{const e=t[0],i=s*o;if(i){let s=OA(t,4);if(0===e)s-=i,s=Math.max(s,0),jA(t,4,s);else{s*=Math.pow(2,32),s+=OA(t,8),s-=i,s=Math.max(s,0);const e=Math.floor(s/(xA+1)),r=Math.floor(s%(xA+1));jA(t,4,e),jA(t,8,r)}}})})})}(p,d,h.baseTime/h.timescale);const I=T+w;w>0?this.lastEndTime=I:(this.logger.warn("Duration parsed from mp4 should be greater than zero"),this.resetNextTimestamp());const k=!!p.audio,_=!!p.video;let C="";k&&(C+="audio"),_&&(C+="video");const D={data1:d,startPTS:T,startDTS:T,endPTS:I,endDTS:I,type:C,hasAudio:k,hasVideo:_,nb:1,dropped:0};c.audio=k&&!_?D:void 0,c.video=_?D:void 0;const L=null==g?void 0:g.sampleCount;if(L){const t=g.keyFrameIndex,e=-1!==t;D.nb=L,D.dropped=0===t||this.isVideoContiguous?0:e?t:L,D.independent=e,D.firstKeyFrame=t,e&&g.keyFrameStart&&(D.firstKeyFramePTS=g.keyFrameStart-h.baseTime/h.timescale),this.isVideoContiguous||(c.independent=e),this.isVideoContiguous||(this.isVideoContiguous=e),D.dropped&&this.logger.warn(`fmp4 does not start with IDR: firstIDR ${t}/${L} dropped: ${D.dropped} pts: ${D.firstKeyFramePTS||"NA"}`)}return c.initSegment=u,c.id3=Tw(s,r,h,h),i.samples.length&&(c.text=Iw(i,r,h)),c}}},{demux:ow,remux:Ew},{demux:class extends UE{constructor(t,e){super(),this.observer=void 0,this.config=void 0,this.observer=t,this.config=e}resetInitSegment(t,e,s,i){super.resetInitSegment(t,e,s,i),this._audioTrack={container:"audio/adts",type:"audio",id:2,pid:-1,sequenceNumber:0,segmentCodec:"aac",samples:[],manifestCodec:e,duration:i,inputTimeScale:9e4,dropped:0}}static probe(t,e){if(!t)return!1;const s=yE(t,0);let i=(null==s?void 0:s.length)||0;if(QE(t,i))return!1;for(let s=t.length;i<s;i++)if(EE(t,i))return e.log("ADTS sync word found !"),!0;return!1}canParse(t,e){return function(t,e){return function(t,e){return e+5<t.length}(t,e)&&AE(t,e)&&vE(t,e)<=t.length-e}(t,e)}appendFrame(t,e,s){wE(t,this.observer,e,s,t.manifestCodec);const i=IE(t,e,s,this.basePTS,this.frameIndex);if(i&&0===i.missing)return i}},remux:Ew},{demux:class extends UE{resetInitSegment(t,e,s,i){super.resetInitSegment(t,e,s,i),this._audioTrack={container:"audio/mpeg",type:"audio",id:2,pid:-1,sequenceNumber:0,segmentCodec:"mp3",samples:[],manifestCodec:e,duration:i,inputTimeScale:9e4,dropped:0}}static probe(t){if(!t)return!1;const e=yE(t,0);let s=(null==e?void 0:e.length)||0;if(e&&11===t[s]&&119===t[s+1]&&void 0!==ME(e)&&YE(t,s)<=16)return!1;for(let e=t.length;s<e;s++)if(QE(t,s))return mA.log("MPEG Audio sync word found !"),!0;return!1}canParse(t,e){return function(t,e){return KE(t,e)&&4<=t.length-e}(t,e)}appendFrame(t,e,s){if(null!==this.basePTS)return zE(t,e,s,this.basePTS,this.frameIndex)}},remux:Ew}];Cw.splice(2,0,{demux:JE,remux:Ew});class Dw{constructor(t,e,s,i,r,n){this.asyncResult=!1,this.logger=void 0,this.observer=void 0,this.typeSupported=void 0,this.config=void 0,this.id=void 0,this.demuxer=void 0,this.remuxer=void 0,this.decrypter=void 0,this.probe=void 0,this.decryptionPromise=null,this.transmuxConfig=void 0,this.currentTransmuxState=void 0,this.observer=t,this.typeSupported=e,this.config=s,this.id=r,this.logger=n}configure(t){this.transmuxConfig=t,this.decrypter&&this.decrypter.reset()}push(t,e,s,i){const r=s.transmuxing;r.executeStart=Aw();let n=new Uint8Array(t);const{currentTransmuxState:o,transmuxConfig:a}=this;i&&(this.currentTransmuxState=i);const{contiguous:h,discontinuity:l,trackSwitch:c,accurateTimeOffset:d,timeOffset:u,initSegmentChange:p}=i||o,{audioCodec:f,videoCodec:m,defaultInitPts:g,duration:y,initSegmentData:A}=a,b=function(t,e){let s=null;t.byteLength>0&&null!=(null==e?void 0:e.key)&&null!==e.iv&&null!=e.method&&(s=e);return s}(n,e);if(b&&Gv(b.method)){const t=this.getDecrypter(),e=zv(b.method);if(!t.isSync())return this.asyncResult=!0,this.decryptionPromise=t.webCryptoDecrypt(n,b.key.buffer,b.iv.buffer,e).then(t=>{const e=this.push(t,null,s);return this.decryptionPromise=null,e}),this.decryptionPromise;{let i=t.softwareDecrypt(n,b.key.buffer,b.iv.buffer,e);if(s.part>-1){const e=t.flush();i=e?e.buffer:e}if(!i)return r.executeEnd=Aw(),Lw(s);n=new Uint8Array(i)}}const v=this.needsProbing(l,c);if(v){const t=this.configureTransmuxer(n);if(t)return this.logger.warn(`[transmuxer] ${t.message}`),this.observer.emit(Yy.ERROR,Yy.ERROR,{type:qy.MEDIA_ERROR,details:Qy.FRAG_PARSING_ERROR,fatal:!1,error:t,reason:t.message}),r.executeEnd=Aw(),Lw(s)}(l||c||p||v)&&this.resetInitSegment(A,f,m,y,e),(l||p||v)&&this.resetInitialTimestamp(g),h||this.resetContiguity();const S=this.transmux(n,b,u,d,s);this.asyncResult=Rw(S);const E=this.currentTransmuxState;return E.contiguous=!0,E.discontinuity=!1,E.trackSwitch=!1,r.executeEnd=Aw(),S}flush(t){const e=t.transmuxing;e.executeStart=Aw();const{decrypter:s,currentTransmuxState:i,decryptionPromise:r}=this;if(r)return this.asyncResult=!0,r.then(()=>this.flush(t));const n=[],{timeOffset:o}=i;if(s){const e=s.flush();e&&n.push(this.push(e.buffer,null,t))}const{demuxer:a,remuxer:h}=this;if(!a||!h){e.executeEnd=Aw();const s=[Lw(t)];return this.asyncResult?Promise.resolve(s):s}const l=a.flush(o);return Rw(l)?(this.asyncResult=!0,l.then(e=>(this.flushRemux(n,e,t),n))):(this.flushRemux(n,l,t),this.asyncResult?Promise.resolve(n):n)}flushRemux(t,e,s){const{audioTrack:i,videoTrack:r,id3Track:n,textTrack:o}=e,{accurateTimeOffset:a,timeOffset:h}=this.currentTransmuxState;this.logger.log(`[transmuxer.ts]: Flushed ${this.id} sn: ${s.sn}${s.part>-1?" part: "+s.part:""} of ${this.id===tA?"level":"track"} ${s.level}`);const l=this.remuxer.remux(i,r,n,o,h,a,!0,this.id);t.push({remuxResult:l,chunkMeta:s}),s.transmuxing.executeEnd=Aw()}resetInitialTimestamp(t){const{demuxer:e,remuxer:s}=this;e&&s&&(e.resetTimeStamp(t),s.resetTimeStamp(t))}resetContiguity(){const{demuxer:t,remuxer:e}=this;t&&e&&(t.resetContiguity(),e.resetNextTimestamp())}resetInitSegment(t,e,s,i,r){const{demuxer:n,remuxer:o}=this;n&&o&&(n.resetInitSegment(t,e,s,i),o.resetInitSegment(t,e,s,r))}destroy(){this.demuxer&&(this.demuxer.destroy(),this.demuxer=void 0),this.remuxer&&(this.remuxer.destroy(),this.remuxer=void 0)}transmux(t,e,s,i,r){let n;return n=e&&"SAMPLE-AES"===e.method?this.transmuxSampleAes(t,e,s,i,r):this.transmuxUnencrypted(t,s,i,r),n}transmuxUnencrypted(t,e,s,i){const{audioTrack:r,videoTrack:n,id3Track:o,textTrack:a}=this.demuxer.demux(t,e,!1,!this.config.progressive);return{remuxResult:this.remuxer.remux(r,n,o,a,e,s,!1,this.id),chunkMeta:i}}transmuxSampleAes(t,e,s,i,r){return this.demuxer.demuxSampleAes(t,e,s).then(t=>({remuxResult:this.remuxer.remux(t.audioTrack,t.videoTrack,t.id3Track,t.textTrack,s,i,!1,this.id),chunkMeta:r}))}configureTransmuxer(t){const{config:e,observer:s,typeSupported:i}=this;let r;for(let e=0,s=Cw.length;e<s;e++){var n;if(null!=(n=Cw[e].demux)&&n.probe(t,this.logger)){r=Cw[e];break}}if(!r)return new Error("Failed to find demuxer by probing fragment data");const o=this.demuxer,a=this.remuxer,h=r.remux,l=r.demux;a&&a instanceof h||(this.remuxer=new h(s,e,i,this.logger)),o&&o instanceof l||(this.demuxer=new l(s,e,i,this.logger),this.probe=l.probe)}needsProbing(t,e){return!this.demuxer||!this.remuxer||t||e}getDecrypter(){let t=this.decrypter;return t||(t=this.decrypter=new Sv(this.config)),t}}const Lw=t=>({remuxResult:{},chunkMeta:t});function Rw(t){return"then"in t&&t.then instanceof Function}class Pw{constructor(t,e,s,i,r){this.audioCodec=void 0,this.videoCodec=void 0,this.initSegmentData=void 0,this.duration=void 0,this.defaultInitPts=void 0,this.audioCodec=t,this.videoCodec=e,this.initSegmentData=s,this.duration=i,this.defaultInitPts=r||null}}class xw{constructor(t,e,s,i,r,n){this.discontinuity=void 0,this.contiguous=void 0,this.accurateTimeOffset=void 0,this.trackSwitch=void 0,this.timeOffset=void 0,this.initSegmentChange=void 0,this.discontinuity=t,this.contiguous=e,this.accurateTimeOffset=s,this.trackSwitch=i,this.timeOffset=r,this.initSegmentChange=n}}let Mw=0;class Bw{constructor(t,e,s,i){this.error=null,this.hls=void 0,this.id=void 0,this.instanceNo=Mw++,this.observer=void 0,this.frag=null,this.part=null,this.useWorker=void 0,this.workerContext=null,this.transmuxer=null,this.onTransmuxComplete=void 0,this.onFlush=void 0,this.onWorkerMessage=t=>{const e=t.data,s=this.hls;if(s&&null!=e&&e.event&&e.instanceNo===this.instanceNo)switch(e.event){case"init":{var i;const t=null==(i=this.workerContext)?void 0:i.objectURL;t&&self.URL.revokeObjectURL(t);break}case"transmuxComplete":this.handleTransmuxComplete(e.data);break;case"flush":this.onFlush(e.data);break;case"workerLog":s.logger[e.data.logType]&&s.logger[e.data.logType](e.data.message);break;default:e.data=e.data||{},e.data.frag=this.frag,e.data.part=this.part,e.data.id=this.id,s.trigger(e.event,e.data)}},this.onWorkerError=t=>{if(!this.hls)return;const e=new Error(`${t.message} (${t.filename}:${t.lineno})`);this.hls.config.enableWorker=!1,this.hls.logger.warn(`Error in "${this.id}" Web Worker, fallback to inline`),this.hls.trigger(Yy.ERROR,{type:qy.OTHER_ERROR,details:Qy.INTERNAL_EXCEPTION,fatal:!1,event:"demuxerWorker",error:e})};const r=t.config;this.hls=t,this.id=e,this.useWorker=!!r.enableWorker,this.onTransmuxComplete=s,this.onFlush=i;const n=(t,e)=>{(e=e||{}).frag=this.frag||void 0,t===Yy.ERROR&&(e.parent=this.id,e.part=this.part,this.error=e.error),this.hls.trigger(t,e)};this.observer=new dE,this.observer.on(Yy.FRAG_DECRYPTED,n),this.observer.on(Yy.ERROR,n);const o=Ab(r.preferManagedMediaSource);if(this.useWorker&&"undefined"!=typeof Worker){const s=this.hls.logger;if(r.workerPath||"function"==typeof __HLS_WORKER_BUNDLE__){try{r.workerPath?(s.log(`loading Web Worker ${r.workerPath} for "${e}"`),this.workerContext=function(t){const e=pE[t];if(e)return e.clientCount++,e;const s=new self.URL(t,self.location.href).href,i={worker:new self.Worker(s),scriptURL:s,clientCount:1};return pE[t]=i,i}(r.workerPath)):(s.log(`injecting Web Worker for "${e}"`),this.workerContext=function(){const t=pE[uE];if(t)return t.clientCount++,t;const e=new self.Blob([`var exports={};var module={exports:exports};function define(f){f()};define.amd=true;(${__HLS_WORKER_BUNDLE__.toString()})(true);`],{type:"text/javascript"}),s=self.URL.createObjectURL(e),i={worker:new self.Worker(s),objectURL:s,clientCount:1};return pE[uE]=i,i}());const{worker:t}=this.workerContext;t.addEventListener("message",this.onWorkerMessage),t.addEventListener("error",this.onWorkerError),t.postMessage({instanceNo:this.instanceNo,cmd:"init",typeSupported:o,id:e,config:Bb(r)})}catch(i){s.warn(`Error setting up "${e}" Web Worker, fallback to inline`,i),this.terminateWorker(),this.error=null,this.transmuxer=new Dw(this.observer,o,r,"",e,t.logger)}return}}this.transmuxer=new Dw(this.observer,o,r,"",e,t.logger)}reset(){if(this.frag=null,this.part=null,this.workerContext){const t=this.instanceNo;this.instanceNo=Mw++;const e=this.hls.config,s=Ab(e.preferManagedMediaSource);this.workerContext.worker.postMessage({instanceNo:this.instanceNo,cmd:"reset",resetNo:t,typeSupported:s,id:this.id,config:Bb(e)})}}terminateWorker(){if(this.workerContext){const{worker:t}=this.workerContext;this.workerContext=null,t.removeEventListener("message",this.onWorkerMessage),t.removeEventListener("error",this.onWorkerError),function(t){const e=pE[t||uE];if(e&&1===e.clientCount--){const{worker:s,objectURL:i}=e;delete pE[t||uE],i&&self.URL.revokeObjectURL(i),s.terminate()}}(this.hls.config.workerPath)}}destroy(){if(this.workerContext)this.terminateWorker(),this.onWorkerMessage=this.onWorkerError=null;else{const t=this.transmuxer;t&&(t.destroy(),this.transmuxer=null)}const t=this.observer;t&&t.removeAllListeners(),this.frag=null,this.part=null,this.observer=null,this.hls=null}push(t,e,s,i,r,n,o,a,h,l){var c,d;h.transmuxing.start=self.performance.now();const{instanceNo:u,transmuxer:p}=this,f=n?n.start:r.start,m=r.decryptdata,g=this.frag,y=!(g&&r.cc===g.cc),A=!(g&&h.level===g.level),b=g?h.sn-g.sn:-1,v=this.part?h.part-this.part.index:-1,S=0===b&&h.id>1&&h.id===(null==g?void 0:g.stats.chunkCount),E=!A&&(1===b||0===b&&(1===v||S&&v<=0)),w=self.performance.now();(A||b||0===r.stats.parsing.start)&&(r.stats.parsing.start=w),!n||!v&&E||(n.stats.parsing.start=w);const T=!(g&&(null==(c=r.initSegment)?void 0:c.url)===(null==(d=g.initSegment)?void 0:d.url)),I=new xw(y,E,a,A,f,T);if(!E||y||T){this.hls.logger.log(`[transmuxer-interface]: Starting new transmux session for ${r.type} sn: ${h.sn}${h.part>-1?" part: "+h.part:""} ${this.id===tA?"level":"track"}: ${h.level} id: ${h.id}\n discontinuity: ${y}\n trackSwitch: ${A}\n contiguous: ${E}\n accurateTimeOffset: ${a}\n timeOffset: ${f}\n initSegmentChange: ${T}`);const t=new Pw(s,i,e,o,l);this.configureTransmuxer(t)}if(this.frag=r,this.part=n,this.workerContext)this.workerContext.worker.postMessage({instanceNo:u,cmd:"demux",data:t,decryptdata:m,chunkMeta:h,state:I},t instanceof ArrayBuffer?[t]:[]);else if(p){const e=p.push(t,m,h,I);Rw(e)?e.then(t=>{this.handleTransmuxComplete(t)}).catch(t=>{this.transmuxerError(t,h,"transmuxer-interface push error")}):this.handleTransmuxComplete(e)}}flush(t){t.transmuxing.start=self.performance.now();const{instanceNo:e,transmuxer:s}=this;if(this.workerContext)this.workerContext.worker.postMessage({instanceNo:e,cmd:"flush",chunkMeta:t});else if(s){const e=s.flush(t);Rw(e)?e.then(e=>{this.handleFlushResult(e,t)}).catch(e=>{this.transmuxerError(e,t,"transmuxer-interface flush error")}):this.handleFlushResult(e,t)}}transmuxerError(t,e,s){this.hls&&(this.error=t,this.hls.trigger(Yy.ERROR,{type:qy.MEDIA_ERROR,details:Qy.FRAG_PARSING_ERROR,chunkMeta:e,frag:this.frag||void 0,part:this.part||void 0,fatal:!1,error:t,err:t,reason:s}))}handleFlushResult(t,e){t.forEach(t=>{this.handleTransmuxComplete(t)}),this.onFlush(e)}configureTransmuxer(t){const{instanceNo:e,transmuxer:s}=this;this.workerContext?this.workerContext.worker.postMessage({instanceNo:e,cmd:"configure",config:t}):s&&s.configure(t)}handleTransmuxComplete(t){t.chunkMeta.transmuxing.end=self.performance.now(),this.onTransmuxComplete(t)}}class Fw extends lA{constructor(t,e){super(e,t.logger),this.hls=void 0,this.canLoad=!1,this.timer=-1,this.hls=t}destroy(){this.clearTimer(),this.hls=this.log=this.warn=null}clearTimer(){-1!==this.timer&&(self.clearTimeout(this.timer),this.timer=-1)}startLoad(){this.canLoad=!0,this.loadPlaylist()}stopLoad(){this.canLoad=!1,this.clearTimer()}switchParams(t,e,s){const i=null==e?void 0:e.renditionReports;if(i){let r=-1;for(let s=0;s<i.length;s++){const n=i[s];let o;try{o=new self.URL(n.URI,e.url).href}catch(t){this.warn(`Could not construct new URL for Rendition Report: ${t}`),o=n.URI||""}if(o===t){r=s;break}o===t.substring(0,o.length)&&(r=s)}if(-1!==r){const t=i[r],n=parseInt(t["LAST-MSN"])||(null==e?void 0:e.lastPartSn);let o=parseInt(t["LAST-PART"])||(null==e?void 0:e.lastPartIndex);if(this.hls.config.lowLatencyMode){const t=Math.min(e.age-e.partTarget,e.targetduration);o>=0&&t>e.partTarget&&(o+=1)}const a=s&&Lb(s);return new Rb(n,o>=0?o:void 0,a)}}}loadPlaylist(t){this.clearTimer()}loadingPlaylist(t,e){this.clearTimer()}shouldLoadPlaylist(t){return this.canLoad&&!!t&&!!t.url&&(!t.details||t.details.live)}getUrlWithDirectives(t,e){if(e)try{return e.addDirectives(t)}catch(t){this.warn(`Could not construct new URL with HLS Delivery Directives: ${t}`)}return t}playlistLoaded(t,e,s){const{details:i,stats:r}=e,n=self.performance.now(),o=r.loading.first?Math.max(0,n-r.loading.first):0;i.advancedDateTime=Date.now()-o;const a=this.hls.config.timelineOffset;if(a!==i.appliedTimelineOffset){const t=Math.max(a||0,0);i.appliedTimelineOffset=t,i.fragments.forEach(e=>{e.start=e.playlistOffset+t})}if(i.live||null!=s&&s.live){const a="levelInfo"in e?e.levelInfo:e.track;if(i.reloaded(s),s&&i.fragments.length>0){PS(s,i);const t=i.playlistParsingError;if(t){this.warn(t);const s=this.hls;if(!s.config.ignorePlaylistParsingErrors){var h;const{networkDetails:n}=e;return void s.trigger(Yy.ERROR,{type:qy.NETWORK_ERROR,details:Qy.LEVEL_PARSING_ERROR,fatal:!1,url:i.url,error:t,reason:t.message,level:e.level||void 0,parent:null==(h=i.fragments[0])?void 0:h.type,networkDetails:n,stats:r})}i.playlistParsingError=null}}-1===i.requestScheduled&&(i.requestScheduled=r.loading.start);const l=this.hls.mainForwardBufferInfo,c=l?l.end-l.len:0,d=FS(i,1e3*(i.edge-c));if(i.requestScheduled+d<n?i.requestScheduled=n:i.requestScheduled+=d,this.log(`live playlist ${t} ${i.advanced?"REFRESHED "+i.lastPartSn+"-"+i.lastPartIndex:i.updated?"UPDATED":"MISSED"}`),!this.canLoad||!i.live)return;let u,p,f;if(i.canBlockReload&&i.endSN&&i.advanced){const t=this.hls.config.lowLatencyMode,r=i.lastPartSn,o=i.endSN,h=i.lastPartIndex,l=r===o;-1!==h?l?(p=o+1,f=t?0:h):(p=r,f=t?h+1:i.maxPartIndex):p=o+1;const c=i.age,d=c+i.ageHeader;let m=Math.min(d-i.partTarget,1.5*i.targetduration);if(m>0){if(d>3*i.targetduration)this.log(`Playlist last advanced ${c.toFixed(2)}s ago. Omitting segment and part directives.`),p=void 0,f=void 0;else if(null!=s&&s.tuneInGoal&&d-i.partTarget>s.tuneInGoal)this.warn(`CDN Tune-in goal increased from: ${s.tuneInGoal} to: ${m} with playlist age: ${i.age}`),m=0;else{const t=Math.floor(m/i.targetduration);if(p+=t,void 0!==f){f+=Math.round(m%i.targetduration/i.partTarget)}this.log(`CDN Tune-in age: ${i.ageHeader}s last advanced ${c.toFixed(2)}s goal: ${m} skip sn ${t} to part ${f}`)}i.tuneInGoal=m}if(u=this.getDeliveryDirectives(i,e.deliveryDirectives,p,f),t||!l)return i.requestScheduled=n,void this.loadingPlaylist(a,u)}else(i.canBlockReload||i.canSkipUntil)&&(u=this.getDeliveryDirectives(i,e.deliveryDirectives,p,f));u&&void 0!==p&&i.canBlockReload&&(i.requestScheduled=r.loading.first+Math.max(d-2*o,d/2)),this.scheduleLoading(a,u,i)}else this.clearTimer()}scheduleLoading(t,e,s){const i=s||t.details;if(!i)return void this.loadingPlaylist(t,e);const r=self.performance.now(),n=i.requestScheduled;if(r>=n)return void this.loadingPlaylist(t,e);const o=n-r;this.log(`reload live playlist ${t.name||t.bitrate+"bps"} in ${Math.round(o)} ms`),this.clearTimer(),this.timer=self.setTimeout(()=>this.loadingPlaylist(t,e),o)}getDeliveryDirectives(t,e,s,i){let r=Lb(t);return null!=e&&e.skip&&t.deltaUpdateFailed&&(s=e.msn,i=e.part,r=_b),new Rb(s,i,r)}checkRetry(t){const e=t.details,s=Yb(t),i=t.errorAction,{action:r,retryCount:n=0,retryConfig:o}=i||{},a=!!i&&!!o&&(r===iv||!i.resolved&&r===ev);if(a){var h;if(n>=o.maxNumRetry)return!1;if(s&&null!=(h=t.context)&&h.deliveryDirectives)this.warn(`Retrying playlist loading ${n+1}/${o.maxNumRetry} after "${e}" without delivery-directives`),this.loadPlaylist();else{const t=Xb(o,n);this.clearTimer(),this.timer=self.setTimeout(()=>this.loadPlaylist(),t),this.warn(`Retrying playlist loading ${n+1}/${o.maxNumRetry} after "${e}" in ${t}ms`)}t.levelRetry=!0,i.resolved=!0}return a}}function Uw(t,e){if(t.length!==e.length)return!1;for(let s=0;s<t.length;s++)if(!Ow(t[s].attrs,e[s].attrs))return!1;return!0}function Ow(t,e,s){const i=t["STABLE-RENDITION-ID"];return i&&!s?i===e["STABLE-RENDITION-ID"]:!(s||["LANGUAGE","NAME","CHARACTERISTICS","AUTOSELECT","DEFAULT","FORCED","ASSOC-LANGUAGE"]).some(s=>t[s]!==e[s])}function Nw(t,e){return e.label.toLowerCase()===t.name.toLowerCase()&&(!e.language||e.language.toLowerCase()===(t.lang||"").toLowerCase())}class Vw{constructor(t){this.tracks=void 0,this.queues={video:[],audio:[],audiovideo:[]},this.tracks=t}destroy(){this.tracks=this.queues=null}append(t,e,s){if(null===this.queues||null===this.tracks)return;const i=this.queues[e];i.push(t),1!==i.length||s||this.executeNext(e)}appendBlocker(t){return new Promise(e=>{const s={label:"async-blocker",execute:e,onStart:()=>{},onComplete:()=>{},onError:()=>{}};this.append(s,t)})}prependBlocker(t){return new Promise(e=>{if(this.queues){const s={label:"async-blocker-prepend",execute:e,onStart:()=>{},onComplete:()=>{},onError:()=>{}};this.queues[t].unshift(s)}})}removeBlockers(){null!==this.queues&&[this.queues.video,this.queues.audio,this.queues.audiovideo].forEach(t=>{var e;const s=null==(e=t[0])?void 0:e.label;"async-blocker"!==s&&"async-blocker-prepend"!==s||(t[0].execute(),t.splice(0,1))})}unblockAudio(t){if(null===this.queues)return;this.queues.audio[0]===t&&this.shiftAndExecuteNext("audio")}executeNext(t){if(null===this.queues||null===this.tracks)return;const e=this.queues[t];if(e.length){const i=e[0];try{i.execute()}catch(e){var s;if(i.onError(e),null===this.queues||null===this.tracks)return;const r=null==(s=this.tracks[t])?void 0:s.buffer;null!=r&&r.updating||this.shiftAndExecuteNext(t)}}}shiftAndExecuteNext(t){null!==this.queues&&(this.queues[t].shift(),this.executeNext(t))}current(t){var e;return(null==(e=this.queues)?void 0:e[t][0])||null}toString(){const{queues:t,tracks:e}=this;return null===t||null===e?"<destroyed>":`\n${this.list("video")}\n${this.list("audio")}\n${this.list("audiovideo")}}`}list(t){var e,s;return null!=(e=this.queues)&&e[t]||null!=(s=this.tracks)&&s[t]?`${t}: (${this.listSbInfo(t)}) ${this.listOps(t)}`:""}listSbInfo(t){var e;const s=null==(e=this.tracks)?void 0:e[t],i=null==s?void 0:s.buffer;return i?`SourceBuffer${i.updating?" updating":""}${s.ended?" ended":""}${s.ending?" ending":""}`:"none"}listOps(t){var e;return(null==(e=this.queues)?void 0:e[t].map(t=>t.label).join(", "))||""}}const jw=/(avc[1234]|hvc1|hev1|dvh[1e]|vp09|av01)(?:\.[^.,]+)+/,Ww="HlsJsTrackRemovedError";class Gw extends Error{constructor(t){super(t),this.name=Ww}}function zw(t){const e=t.querySelectorAll("source");[].slice.call(e).forEach(e=>{t.removeChild(e)})}function Hw(t){return"audio"===t?1:0}class Kw{constructor(t){this.hls=void 0,this.autoLevelCapping=void 0,this.firstLevel=void 0,this.media=void 0,this.restrictedLevels=void 0,this.timer=void 0,this.clientRect=void 0,this.streamController=void 0,this.hls=t,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.firstLevel=-1,this.media=null,this.restrictedLevels=[],this.timer=void 0,this.clientRect=null,this.registerListeners()}setStreamController(t){this.streamController=t}destroy(){this.hls&&this.unregisterListener(),this.timer&&this.stopCapping(),this.media=null,this.clientRect=null,this.hls=this.streamController=null}registerListeners(){const{hls:t}=this;t.on(Yy.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),t.on(Yy.MEDIA_ATTACHING,this.onMediaAttaching,this),t.on(Yy.MANIFEST_PARSED,this.onManifestParsed,this),t.on(Yy.LEVELS_UPDATED,this.onLevelsUpdated,this),t.on(Yy.BUFFER_CODECS,this.onBufferCodecs,this),t.on(Yy.MEDIA_DETACHING,this.onMediaDetaching,this)}unregisterListener(){const{hls:t}=this;t.off(Yy.FPS_DROP_LEVEL_CAPPING,this.onFpsDropLevelCapping,this),t.off(Yy.MEDIA_ATTACHING,this.onMediaAttaching,this),t.off(Yy.MANIFEST_PARSED,this.onManifestParsed,this),t.off(Yy.LEVELS_UPDATED,this.onLevelsUpdated,this),t.off(Yy.BUFFER_CODECS,this.onBufferCodecs,this),t.off(Yy.MEDIA_DETACHING,this.onMediaDetaching,this)}onFpsDropLevelCapping(t,e){const s=this.hls.levels[e.droppedLevel];this.isLevelAllowed(s)&&this.restrictedLevels.push({bitrate:s.bitrate,height:s.height,width:s.width})}onMediaAttaching(t,e){this.media=e.media instanceof HTMLVideoElement?e.media:null,this.clientRect=null,this.timer&&this.hls.levels.length&&this.detectPlayerSize()}onManifestParsed(t,e){const s=this.hls;this.restrictedLevels=[],this.firstLevel=e.firstLevel,s.config.capLevelToPlayerSize&&e.video&&this.startCapping()}onLevelsUpdated(t,e){this.timer&&zy(this.autoLevelCapping)&&this.detectPlayerSize()}onBufferCodecs(t,e){this.hls.config.capLevelToPlayerSize&&e.video&&this.startCapping()}onMediaDetaching(){this.stopCapping(),this.media=null}detectPlayerSize(){if(this.media){if(this.mediaHeight<=0||this.mediaWidth<=0)return void(this.clientRect=null);const t=this.hls.levels;if(t.length){const e=this.hls,s=this.getMaxLevel(t.length-1);s!==this.autoLevelCapping&&e.logger.log(`Setting autoLevelCapping to ${s}: ${t[s].height}p@${t[s].bitrate} for media ${this.mediaWidth}x${this.mediaHeight}`),e.autoLevelCapping=s,e.autoLevelEnabled&&e.autoLevelCapping>this.autoLevelCapping&&this.streamController&&this.streamController.nextLevelSwitch(),this.autoLevelCapping=e.autoLevelCapping}}}getMaxLevel(t){const e=this.hls.levels;if(!e.length)return-1;const s=e.filter((e,s)=>this.isLevelAllowed(e)&&s<=t);return this.clientRect=null,Kw.getMaxLevelByMediaSize(s,this.mediaWidth,this.mediaHeight)}startCapping(){this.timer||(this.autoLevelCapping=Number.POSITIVE_INFINITY,self.clearInterval(this.timer),this.timer=self.setInterval(this.detectPlayerSize.bind(this),1e3),this.detectPlayerSize())}stopCapping(){this.restrictedLevels=[],this.firstLevel=-1,this.autoLevelCapping=Number.POSITIVE_INFINITY,this.timer&&(self.clearInterval(this.timer),this.timer=void 0)}getDimensions(){if(this.clientRect)return this.clientRect;const t=this.media,e={width:0,height:0};if(t){const s=t.getBoundingClientRect();e.width=s.width,e.height=s.height,e.width||e.height||(e.width=s.right-s.left||t.width||0,e.height=s.bottom-s.top||t.height||0)}return this.clientRect=e,e}get mediaWidth(){return this.getDimensions().width*this.contentScaleFactor}get mediaHeight(){return this.getDimensions().height*this.contentScaleFactor}get contentScaleFactor(){let t=1;if(!this.hls.config.ignoreDevicePixelRatio)try{t=self.devicePixelRatio}catch(t){}return Math.min(t,this.hls.config.maxDevicePixelRatio)}isLevelAllowed(t){return!this.restrictedLevels.some(e=>t.bitrate===e.bitrate&&t.width===e.width&&t.height===e.height)}static getMaxLevelByMediaSize(t,e,s){if(null==t||!t.length)return-1;const i=(t,e)=>!e||(t.width!==e.width||t.height!==e.height);let r=t.length-1;const n=Math.max(e,s);for(let e=0;e<t.length;e+=1){const s=t[e];if((s.width>=n||s.height>=n)&&i(s,t[e+1])){r=e;break}}return r}}const qw={MANIFEST:"m",AUDIO:"a",VIDEO:"v",MUXED:"av",INIT:"i",CAPTION:"c",TIMED_TEXT:"tt",KEY:"k",OTHER:"o"},Qw={HLS:"h"},Yw="CMCD-Object",Jw="CMCD-Request",Xw="CMCD-Session",$w="CMCD-Status",Zw={[Yw]:["br","d","ot","tb"],[Jw]:["bl","dl","mtp","nor","nrr","su"],[Xw]:["cid","pr","sf","sid","st","v"],[$w]:["bs","rtp"]};class tT{constructor(t,e){Array.isArray(t)&&(t=t.map(t=>t instanceof tT?t:new tT(t))),this.value=t,this.params=e}}function eT(t,e,s,i){return new Error(`failed to ${t} "${r=e,Array.isArray(r)?JSON.stringify(r):r instanceof Map?"Map{}":r instanceof Set?"Set{}":"object"==typeof r?JSON.stringify(r):String(r)}" as ${s}`,{cause:i});var r}function sT(t,e,s){return eT("serialize",t,e,s)}class iT{constructor(t){this.description=t}}const rT="Bare Item";function nT(t){if(!1===ArrayBuffer.isView(t))throw sT(t,"Byte Sequence");return`:${e=t,btoa(String.fromCharCode(...e))}:`;var e}function oT(t){if(function(t){return t<-999999999999999||999999999999999<t}(t))throw sT(t,"Integer");return t.toString()}function aT(t,e){if(t<0)return-aT(-t,e);const s=Math.pow(10,e);if(Math.abs(t*s%1-.5)<Number.EPSILON){const e=Math.floor(t*s);return(e%2==0?e:e+1)/s}return Math.round(t*s)/s}function hT(t){const e=aT(t,3);if(Math.floor(Math.abs(e)).toString().length>12)throw sT(t,"Decimal");const s=e.toString();return s.includes(".")?s:`${s}.0`}const lT=/[\x00-\x1f\x7f]+/;function cT(t){const e=(s=t).description||s.toString().slice(7,-1);var s;if(!1===/^([a-zA-Z*])([!#$%&'*+\-.^_`|~\w:/]*)$/.test(e))throw sT(e,"Token");return e}function dT(t){switch(typeof t){case"number":if(!zy(t))throw sT(t,rT);return Number.isInteger(t)?oT(t):hT(t);case"string":return function(t){if(lT.test(t))throw sT(t,"String");return`"${t.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}"`}(t);case"symbol":return cT(t);case"boolean":return function(t){if("boolean"!=typeof t)throw sT(t,"Boolean");return t?"?1":"?0"}(t);case"object":if(t instanceof Date)return function(t){return`@${oT(t.getTime()/1e3)}`}(t);if(t instanceof Uint8Array)return nT(t);if(t instanceof iT)return cT(t);default:throw sT(t,rT)}}function uT(t){if(!1===/^[a-z*][a-z0-9\-_.*]*$/.test(t))throw sT(t,"Key");return t}function pT(t){return null==t?"":Object.entries(t).map(([t,e])=>!0===e?`;${uT(t)}`:`;${uT(t)}=${dT(e)}`).join("")}function fT(t){return t instanceof tT?`${dT(t.value)}${pT(t.params)}`:dT(t)}function mT(t,e={whitespace:!0}){if("object"!=typeof t)throw sT(t,"Dict");const s=t instanceof Map?t.entries():Object.entries(t),i=(null==e?void 0:e.whitespace)?" ":"";return Array.from(s).map(([t,e])=>{e instanceof tT==!1&&(e=new tT(e));let s=uT(t);var i;return!0===e.value?s+=pT(e.params):(s+="=",Array.isArray(e.value)?s+=`(${(i=e).value.map(fT).join(" ")})${pT(i.params)}`:s+=fT(e)),s}).join(`,${i}`)}const gT=t=>Math.round(t),yT=t=>100*gT(t/100),AT={br:gT,d:gT,bl:yT,dl:yT,mtp:yT,nor:(t,e)=>((null==e?void 0:e.baseUrl)&&(t=function(t,e){const s=new URL(t),i=new URL(e);if(s.origin!==i.origin)return t;const r=s.pathname.split("/").slice(1),n=i.pathname.split("/").slice(1,-1);for(;r[0]===n[0];)r.shift(),n.shift();for(;n.length;)n.shift(),r.unshift("..");return r.join("/")}(t,e.baseUrl)),encodeURIComponent(t)),rtp:yT,tb:gT};function bT(t,e){const s={};if(null==t||"object"!=typeof t)return s;const i=Object.keys(t).sort(),r=oA({},AT,null==e?void 0:e.formatters),n=null==e?void 0:e.filter;return i.forEach(i=>{if(null==n?void 0:n(i))return;let o=t[i];const a=r[i];a&&(o=a(o,e)),"v"===i&&1===o||"pr"==i&&1===o||function(t){return"number"==typeof t?zy(t):null!=t&&""!==t&&!1!==t}(o)&&(function(t){return"ot"===t||"sf"===t||"st"===t}(i)&&"string"==typeof o&&(o=new iT(o)),s[i]=o)}),s}function vT(t,e={}){return t?function(t,e){return mT(t,e)}(bT(t,e),oA({whitespace:!1},e)):""}function ST(t,e,s){return oA(t,function(t,e={}){const s={};if(!t)return s;const i=Object.entries(t),r=Object.entries(Zw).concat(Object.entries((null==e?void 0:e.customHeaderMap)||{})),n=i.reduce((t,e)=>{var s,i;const[n,o]=e,a=(null===(s=r.find(t=>t[1].includes(n)))||void 0===s?void 0:s[0])||Jw;return null!==(i=t[a])&&void 0!==i||(t[a]={}),t[a][n]=o,t},{});return Object.entries(n).reduce((t,[s,i])=>(t[s]=vT(i,e),t),s)}(e,s))}const ET=/CMCD=[^&#]+/;function wT(t,e,s){const i=function(t,e={}){if(!t)return"";const s=vT(t,e);return`CMCD=${encodeURIComponent(s)}`}(e,s);if(!i)return t;if(ET.test(t))return t.replace(ET,i);const r=t.includes("?")?"&":"?";return`${t}${r}${i}`}function TT(t,e,s,i){t&&Object.keys(e).forEach(r=>{const n=t.filter(t=>t.groupId===r).map(t=>{const n=oA({},t);return n.details=void 0,n.attrs=new Ov(n.attrs),n.url=n.attrs.URI=IT(t.url,t.attrs["STABLE-RENDITION-ID"],"PER-RENDITION-URIS",s),n.groupId=n.attrs["GROUP-ID"]=e[r],n.attrs["PATHWAY-ID"]=i,n});t.push(...n)})}function IT(t,e,s,i){const{HOST:r,PARAMS:n,[s]:o}=i;let a;e&&(a=null==o?void 0:o[e],a&&(t=a));const h=new self.URL(t);return r&&!a&&(h.host=r),n&&Object.keys(n).sort().forEach(t=>{t&&h.searchParams.set(t,n[t])}),h.href}function kT(t,e,s){_T(t,e,s),t.addEventListener(e,s)}function _T(t,e,s){t.removeEventListener(e,s)}class CT extends lA{constructor(t){super("eme",t.logger),this.hls=void 0,this.config=void 0,this.media=null,this.keyFormatPromise=null,this.keySystemAccessPromises={},this._requestLicenseFailureCount=0,this.mediaKeySessions=[],this.keyIdToKeySessionPromise={},this.mediaKeys=null,this.setMediaKeysQueue=CT.CDMCleanupPromise?[CT.CDMCleanupPromise]:[],this.onMediaEncrypted=t=>{const{initDataType:e,initData:s}=t,i=`"${t.type}" event: init data type: "${e}"`;if(this.debug(i),null!==s){if(!this.keyFormatPromise){let t=Object.keys(this.keySystemAccessPromises);t.length||(t=aS(this.config));const e=t.map(oS).filter(t=>!!t);this.keyFormatPromise=this.getKeyFormatPromise(e)}this.keyFormatPromise.then(r=>{const n=tS(r);let o,a;if("sinf"===e){if(n!==Yv.FAIRPLAY)return void this.warn(`Ignoring unexpected "${t.type}" event with init data type: "${e}" for selected key-system ${n}`);const r=FA(new Uint8Array(s));try{const t=JA(Hv(JSON.parse(r).sinf));if(!t)throw new Error("'schm' box missing or not cbcs/cenc with schi > tenc");o=new Uint8Array(t.subarray(8,24)),a=Yv.FAIRPLAY}catch(t){return void this.warn(`${i} Failed to parse sinf: ${t}`)}}else{if(n!==Yv.WIDEVINE&&n!==Yv.PLAYREADY)return void this.warn(`Ignoring unexpected "${t.type}" event with init data type: "${e}" for selected key-system ${n}`);const r=function(t){const e=[];if(t instanceof ArrayBuffer){const s=t.byteLength;let i=0;for(;i+32<s;){const s=rb(new DataView(t,i));e.push(s),i+=s.size}}return e}(s),h=r.filter(t=>!!t.systemId&&nS(t.systemId)===n);h.length>1&&this.warn(`${i} Using first of ${h.length} pssh found for selected key-system ${n}`);const l=h[0];if(!l)return void(0===r.length||r.some(t=>!t.systemId)?this.warn(`${i} contains incomplete or invalid pssh data`):this.log(`ignoring ${i} for ${r.map(t=>nS(t.systemId)).join(",")} pssh data in favor of playlist keys`));if(a=nS(l.systemId),0===l.version&&l.data)if(a===Yv.WIDEVINE){const t=l.data.length-22;o=new Uint8Array(l.data.subarray(t,t+16))}else a===Yv.PLAYREADY&&(o=cS(l.data))}if(!a||!o)return;const h=bA(o),{keyIdToKeySessionPromise:l,mediaKeySessions:c}=this;let d=l[h];for(let t=0;t<c.length;t++){const i=c[t],r=i.decryptdata;if(!r.keyId)continue;const n=bA(r.keyId);if(h===n||-1!==r.uri.replace(/-/g,"").indexOf(h)){if(d=l[n],r.pssh)break;delete l[n],r.pssh=new Uint8Array(s),r.keyId=o,d=l[h]=d.then(()=>this.generateRequestWithPreferredKeySession(i,e,s,"encrypted-event-key-match")),d.catch(t=>this.handleError(t));break}}if(!d){if(a!==n)return void this.log(`Ignoring "${t.type}" event with ${a} init data for selected key-system ${n}`);d=l[h]=this.getKeySystemSelectionPromise([a]).then(({keySystem:t,mediaKeys:i})=>{var r;this.throwIfDestroyed();const n=new uS("ISO-23001-7",h,null!=(r=oS(t))?r:"");return n.pssh=new Uint8Array(s),n.keyId=o,this.attemptSetMediaKeys(t,i).then(()=>{this.throwIfDestroyed();const r=this.createMediaKeySessionContext({decryptdata:n,keySystem:t,mediaKeys:i});return this.generateRequestWithPreferredKeySession(r,e,s,"encrypted-event-no-match")})}),d.catch(t=>this.handleError(t))}})}},this.onWaitingForKey=t=>{this.log(`"${t.type}" event`)},this.hls=t,this.config=t.config,this.registerListeners()}destroy(){this.onDestroying(),this.onMediaDetached();const t=this.config;t.requestMediaKeySystemAccessFunc=null,t.licenseXhrSetup=t.licenseResponseCallback=void 0,t.drmSystems=t.drmSystemOptions={},this.hls=this.config=this.keyIdToKeySessionPromise=null,this.onMediaEncrypted=this.onWaitingForKey=null}registerListeners(){this.hls.on(Yy.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.on(Yy.MEDIA_DETACHED,this.onMediaDetached,this),this.hls.on(Yy.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.on(Yy.MANIFEST_LOADED,this.onManifestLoaded,this),this.hls.on(Yy.DESTROYING,this.onDestroying,this)}unregisterListeners(){this.hls.off(Yy.MEDIA_ATTACHED,this.onMediaAttached,this),this.hls.off(Yy.MEDIA_DETACHED,this.onMediaDetached,this),this.hls.off(Yy.MANIFEST_LOADING,this.onManifestLoading,this),this.hls.off(Yy.MANIFEST_LOADED,this.onManifestLoaded,this),this.hls.off(Yy.DESTROYING,this.onDestroying,this)}getLicenseServerUrl(t){const{drmSystems:e,widevineLicenseUrl:s}=this.config,i=e[t];return i?i.licenseUrl:t===Yv.WIDEVINE&&s?s:void 0}getLicenseServerUrlOrThrow(t){const e=this.getLicenseServerUrl(t);if(void 0===e)throw new Error(`no license server URL configured for key-system "${t}"`);return e}getServerCertificateUrl(t){const{drmSystems:e}=this.config,s=e[t];if(s)return s.serverCertificateUrl;this.log(`No Server Certificate in config.drmSystems["${t}"]`)}attemptKeySystemAccess(t){const e=this.hls.levels,s=(t,e,s)=>!!t&&s.indexOf(t)===e,i=e.map(t=>t.audioCodec).filter(s),r=e.map(t=>t.videoCodec).filter(s);return i.length+r.length===0&&r.push("avc1.42e01e"),new Promise((e,s)=>{const n=t=>{const o=t.shift();this.getMediaKeysPromise(o,i,r).then(t=>e({keySystem:o,mediaKeys:t})).catch(e=>{t.length?n(t):s(e instanceof DT?e:new DT({type:qy.KEY_SYSTEM_ERROR,details:Qy.KEY_SYSTEM_NO_ACCESS,error:e,fatal:!0},e.message))})};n(t)})}requestMediaKeySystemAccess(t,e){const{requestMediaKeySystemAccessFunc:s}=this.config;if("function"!=typeof s){let t=`Configured requestMediaKeySystemAccess is not a function ${s}`;return null===hS&&"http:"===self.location.protocol&&(t=`navigator.requestMediaKeySystemAccess is not available over insecure protocol ${location.protocol}`),Promise.reject(new Error(t))}return s(t,e)}getMediaKeysPromise(t,e,s){const i=function(t,e,s,i){let r;switch(t){case Yv.FAIRPLAY:r=["cenc","sinf"];break;case Yv.WIDEVINE:case Yv.PLAYREADY:r=["cenc"];break;case Yv.CLEARKEY:r=["cenc","keyids"];break;default:throw new Error(`Unknown key-system: ${t}`)}return function(t,e,s,i){return[{initDataTypes:t,persistentState:i.persistentState||"optional",distinctiveIdentifier:i.distinctiveIdentifier||"optional",sessionTypes:i.sessionTypes||[i.sessionType||"temporary"],audioCapabilities:e.map(t=>({contentType:`audio/mp4; codecs=${t}`,robustness:i.audioRobustness||"",encryptionScheme:i.audioEncryptionScheme||null})),videoCapabilities:s.map(t=>({contentType:`video/mp4; codecs=${t}`,robustness:i.videoRobustness||"",encryptionScheme:i.videoEncryptionScheme||null}))}]}(r,e,s,i)}(t,e,s,this.config.drmSystemOptions),r=this.keySystemAccessPromises[t];let n=null==r?void 0:r.keySystemAccess;if(!n){this.log(`Requesting encrypted media "${t}" key-system access with config: ${Bb(i)}`),n=this.requestMediaKeySystemAccess(t,i);const e=this.keySystemAccessPromises[t]={keySystemAccess:n};return n.catch(e=>{this.log(`Failed to obtain access to key-system "${t}": ${e}`)}),n.then(s=>{this.log(`Access for key-system "${s.keySystem}" obtained`);const i=this.fetchServerCertificate(t);return this.log(`Create media-keys for "${t}"`),e.mediaKeys=s.createMediaKeys().then(s=>(this.log(`Media-keys created for "${t}"`),e.hasMediaKeys=!0,i.then(e=>e?this.setMediaKeysServerCertificate(s,t,e):s))),e.mediaKeys.catch(e=>{this.error(`Failed to create media-keys for "${t}"}: ${e}`)}),e.mediaKeys})}return n.then(()=>r.mediaKeys)}createMediaKeySessionContext({decryptdata:t,keySystem:e,mediaKeys:s}){this.log(`Creating key-system session "${e}" keyId: ${bA(t.keyId||[])}`);const i=s.createSession(),r={decryptdata:t,keySystem:e,mediaKeys:s,mediaKeysSession:i,keyStatus:"status-pending"};return this.mediaKeySessions.push(r),r}renewKeySession(t){const e=t.decryptdata;if(e.pssh){const s=this.createMediaKeySessionContext(t),i=this.getKeyIdString(e),r="cenc";this.keyIdToKeySessionPromise[i]=this.generateRequestWithPreferredKeySession(s,r,e.pssh.buffer,"expired")}else this.warn("Could not renew expired session. Missing pssh initData.");this.removeSession(t)}getKeyIdString(t){if(!t)throw new Error("Could not read keyId of undefined decryptdata");if(null===t.keyId)throw new Error("keyId is null");return bA(t.keyId)}updateKeySession(t,e){var s;const i=t.mediaKeysSession;return this.log(`Updating key-session "${i.sessionId}" for keyID ${bA((null==(s=t.decryptdata)?void 0:s.keyId)||[])}\n } (data length: ${e?e.byteLength:e})`),i.update(e)}getSelectedKeySystemFormats(){return Object.keys(this.keySystemAccessPromises).map(t=>({keySystem:t,hasMediaKeys:this.keySystemAccessPromises[t].hasMediaKeys})).filter(({hasMediaKeys:t})=>!!t).map(({keySystem:t})=>oS(t)).filter(t=>!!t)}getKeySystemAccess(t){return this.getKeySystemSelectionPromise(t).then(({keySystem:t,mediaKeys:e})=>this.attemptSetMediaKeys(t,e))}selectKeySystem(t){return new Promise((e,s)=>this.getKeySystemSelectionPromise(t).then(({keySystem:t})=>{const i=oS(t);i?e(i):s(new Error(`Unable to find format for key-system "${t}"`))}).catch(s))}selectKeySystemFormat(t){const e=Object.keys(t.levelkeys||{});return this.keyFormatPromise||(this.log(`Selecting key-system from fragment (sn: ${t.sn} ${t.type}: ${t.level}) key formats ${e.join(", ")}`),this.keyFormatPromise=this.getKeyFormatPromise(e)),this.keyFormatPromise}getKeyFormatPromise(t){const e=aS(this.config),s=t.map(tS).filter(t=>!!t&&-1!==e.indexOf(t));return this.selectKeySystem(s)}loadKey(t){const e=t.keyInfo.decryptdata,s=this.getKeyIdString(e),i=`(keyId: ${s} format: "${e.keyFormat}" method: ${e.method} uri: ${e.uri})`;this.log(`Starting session for key ${i}`);let r=this.keyIdToKeySessionPromise[s];if(!r){r=this.getKeySystemForKeyPromise(e).then(({keySystem:s,mediaKeys:r})=>(this.throwIfDestroyed(),this.log(`Handle encrypted media sn: ${t.frag.sn} ${t.frag.type}: ${t.frag.level} using key ${i}`),this.attemptSetMediaKeys(s,r).then(()=>(this.throwIfDestroyed(),this.createMediaKeySessionContext({keySystem:s,mediaKeys:r,decryptdata:e})))));(this.keyIdToKeySessionPromise[s]=r.then(t=>{const s=e.pssh?e.pssh.buffer:null;return this.generateRequestWithPreferredKeySession(t,"cenc",s,"playlist-key")})).catch(t=>this.handleError(t))}return r}throwIfDestroyed(t="Invalid state"){if(!this.hls)throw new Error("invalid state")}handleError(t){this.hls&&(this.error(t.message),t instanceof DT?this.hls.trigger(Yy.ERROR,t.data):this.hls.trigger(Yy.ERROR,{type:qy.KEY_SYSTEM_ERROR,details:Qy.KEY_SYSTEM_NO_KEYS,error:t,fatal:!0}))}getKeySystemForKeyPromise(t){const e=this.getKeyIdString(t),s=this.keyIdToKeySessionPromise[e];if(!s){const e=tS(t.keyFormat),s=e?[e]:aS(this.config);return this.attemptKeySystemAccess(s)}return s}getKeySystemSelectionPromise(t){if(t.length||(t=aS(this.config)),0===t.length)throw new DT({type:qy.KEY_SYSTEM_ERROR,details:Qy.KEY_SYSTEM_NO_CONFIGURED_LICENSE,fatal:!0},`Missing key-system license configuration options ${Bb({drmSystems:this.config.drmSystems})}`);return this.attemptKeySystemAccess(t)}attemptSetMediaKeys(t,e){if(this.mediaKeys===e)return Promise.resolve();const s=this.setMediaKeysQueue.slice();this.log(`Setting media-keys for "${t}"`);const i=Promise.all(s).then(()=>{if(!this.media)throw this.mediaKeys=null,new Error("Attempted to set mediaKeys without media element attached");return this.media.setMediaKeys(e)});return this.mediaKeys=e,this.setMediaKeysQueue.push(i),i.then(()=>{this.log(`Media-keys set for "${t}"`),s.push(i),this.setMediaKeysQueue=this.setMediaKeysQueue.filter(t=>-1===s.indexOf(t))})}generateRequestWithPreferredKeySession(t,e,s,i){var r,n;const o=null==(r=this.config.drmSystems)||null==(n=r[t.keySystem])?void 0:n.generateRequest;if(o)try{const i=o.call(this.hls,e,s,t);if(!i)throw new Error("Invalid response from configured generateRequest filter");e=i.initDataType,s=i.initData?i.initData:null,t.decryptdata.pssh=s?new Uint8Array(s):null}catch(t){var a;if(this.warn(t.message),null!=(a=this.hls)&&a.config.debug)throw t}if(null===s)return this.log(`Skipping key-session request for "${i}" (no initData)`),Promise.resolve(t);const h=this.getKeyIdString(t.decryptdata);this.log(`Generating key-session request for "${i}": ${h} (init data type: ${e} length: ${s?s.byteLength:null})`);const l=new dE,c=t._onmessage=e=>{const s=t.mediaKeysSession;if(!s)return void l.emit("error",new Error("invalid state"));const{messageType:i,message:r}=e;this.log(`"${i}" message event for session "${s.sessionId}" message size: ${r.byteLength}`),"license-request"===i||"license-renewal"===i?this.renewLicense(t,r).catch(t=>{l.eventNames().length?l.emit("error",t):this.handleError(t)}):"license-release"===i?t.keySystem===Yv.FAIRPLAY&&(this.updateKeySession(t,Kv("acknowledged")),this.removeSession(t)):this.warn(`unhandled media key message type "${i}"`)},d=t._onkeystatuseschange=e=>{if(!t.mediaKeysSession)return void l.emit("error",new Error("invalid state"));this.onKeyStatusChange(t);const s=t.keyStatus;l.emit("keyStatus",s),"expired"===s&&(this.warn(`${t.keySystem} expired for key ${h}`),this.renewKeySession(t))};kT(t.mediaKeysSession,"message",c),kT(t.mediaKeysSession,"keystatuseschange",d);const u=new Promise((t,e)=>{l.on("error",e),l.on("keyStatus",s=>{s.startsWith("usable")?t():"output-restricted"===s?e(new DT({type:qy.KEY_SYSTEM_ERROR,details:Qy.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED,fatal:!1},"HDCP level output restricted")):"internal-error"===s?e(new DT({type:qy.KEY_SYSTEM_ERROR,details:Qy.KEY_SYSTEM_STATUS_INTERNAL_ERROR,fatal:!0},`key status changed to "${s}"`)):"expired"===s?e(new Error("key expired while generating request")):this.warn(`unhandled key status change "${s}"`)})});return t.mediaKeysSession.generateRequest(e,s).then(()=>{var e;this.log(`Request generated for key-session "${null==(e=t.mediaKeysSession)?void 0:e.sessionId}" keyId: ${h}`)}).catch(t=>{throw new DT({type:qy.KEY_SYSTEM_ERROR,details:Qy.KEY_SYSTEM_NO_SESSION,error:t,fatal:!1},`Error generating key-session request: ${t}`)}).then(()=>u).catch(e=>{throw l.removeAllListeners(),this.removeSession(t),e}).then(()=>(l.removeAllListeners(),t))}onKeyStatusChange(t){t.mediaKeysSession.keyStatuses.forEach((e,s)=>{if("string"==typeof s&&"object"==typeof e){const t=s;s=e,e=t}this.log(`key status change "${e}" for keyStatuses keyId: ${bA("buffer"in s?new Uint8Array(s.buffer,s.byteOffset,s.byteLength):new Uint8Array(s))} session keyId: ${bA(new Uint8Array(t.decryptdata.keyId||[]))} uri: ${t.decryptdata.uri}`),t.keyStatus=e})}fetchServerCertificate(t){const e=this.config,s=new(0,e.loader)(e),i=this.getServerCertificateUrl(t);return i?(this.log(`Fetching server certificate for "${t}"`),new Promise((r,n)=>{const o={responseType:"arraybuffer",url:i},a=e.certLoadPolicy.default,h={loadPolicy:a,timeout:a.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0},l={onSuccess:(t,e,s,i)=>{r(t.data)},onError:(e,s,r,a)=>{n(new DT({type:qy.KEY_SYSTEM_ERROR,details:Qy.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED,fatal:!0,networkDetails:r,response:hA({url:o.url,data:void 0},e)},`"${t}" certificate request failed (${i}). Status: ${e.code} (${e.text})`))},onTimeout:(e,s,r)=>{n(new DT({type:qy.KEY_SYSTEM_ERROR,details:Qy.KEY_SYSTEM_SERVER_CERTIFICATE_REQUEST_FAILED,fatal:!0,networkDetails:r,response:{url:o.url,data:void 0}},`"${t}" certificate request timed out (${i})`))},onAbort:(t,e,s)=>{n(new Error("aborted"))}};s.load(o,h,l)})):Promise.resolve()}setMediaKeysServerCertificate(t,e,s){return new Promise((i,r)=>{t.setServerCertificate(s).then(r=>{this.log(`setServerCertificate ${r?"success":"not supported by CDM"} (${null==s?void 0:s.byteLength}) on "${e}"`),i(t)}).catch(t=>{r(new DT({type:qy.KEY_SYSTEM_ERROR,details:Qy.KEY_SYSTEM_SERVER_CERTIFICATE_UPDATE_FAILED,error:t,fatal:!0},t.message))})})}renewLicense(t,e){return this.requestLicense(t,new Uint8Array(e)).then(e=>this.updateKeySession(t,new Uint8Array(e)).catch(t=>{throw new DT({type:qy.KEY_SYSTEM_ERROR,details:Qy.KEY_SYSTEM_SESSION_UPDATE_FAILED,error:t,fatal:!0},t.message)}))}unpackPlayReadyKeyMessage(t,e){const s=String.fromCharCode.apply(null,new Uint16Array(e.buffer));if(!s.includes("PlayReadyKeyMessage"))return t.setRequestHeader("Content-Type","text/xml; charset=utf-8"),e;const i=(new DOMParser).parseFromString(s,"application/xml"),r=i.querySelectorAll("HttpHeader");if(r.length>0){let e;for(let s=0,i=r.length;s<i;s++){var n,o;e=r[s];const i=null==(n=e.querySelector("name"))?void 0:n.textContent,a=null==(o=e.querySelector("value"))?void 0:o.textContent;i&&a&&t.setRequestHeader(i,a)}}const a=i.querySelector("Challenge"),h=null==a?void 0:a.textContent;if(!h)throw new Error("Cannot find <Challenge> in key message");return Kv(atob(h))}setupLicenseXHR(t,e,s,i){const r=this.config.licenseXhrSetup;return r?Promise.resolve().then(()=>{if(!s.decryptdata)throw new Error("Key removed");return r.call(this.hls,t,e,s,i)}).catch(n=>{if(!s.decryptdata)throw n;return t.open("POST",e,!0),r.call(this.hls,t,e,s,i)}).then(s=>{t.readyState||t.open("POST",e,!0);return{xhr:t,licenseChallenge:s||i}}):(t.open("POST",e,!0),Promise.resolve({xhr:t,licenseChallenge:i}))}requestLicense(t,e){const s=this.config.keyLoadPolicy.default;return new Promise((i,r)=>{const n=this.getLicenseServerUrlOrThrow(t.keySystem);this.log(`Sending license request to URL: ${n}`);const o=new XMLHttpRequest;o.responseType="arraybuffer",o.onreadystatechange=()=>{if(!this.hls||!t.mediaKeysSession)return r(new Error("invalid state"));if(4===o.readyState)if(200===o.status){this._requestLicenseFailureCount=0;let e=o.response;this.log(`License received ${e instanceof ArrayBuffer?e.byteLength:e}`);const s=this.config.licenseResponseCallback;if(s)try{e=s.call(this.hls,o,n,t)}catch(t){this.error(t)}i(e)}else{const a=s.errorRetry,h=a?a.maxNumRetry:0;if(this._requestLicenseFailureCount++,this._requestLicenseFailureCount>h||o.status>=400&&o.status<500)r(new DT({type:qy.KEY_SYSTEM_ERROR,details:Qy.KEY_SYSTEM_LICENSE_REQUEST_FAILED,fatal:!0,networkDetails:o,response:{url:n,data:void 0,code:o.status,text:o.statusText}},`License Request XHR failed (${n}). Status: ${o.status} (${o.statusText})`));else{const s=h-this._requestLicenseFailureCount+1;this.warn(`Retrying license request, ${s} attempts left`),this.requestLicense(t,e).then(i,r)}}},t.licenseXhr&&t.licenseXhr.readyState!==XMLHttpRequest.DONE&&t.licenseXhr.abort(),t.licenseXhr=o,this.setupLicenseXHR(o,n,t,e).then(({xhr:e,licenseChallenge:s})=>{t.keySystem==Yv.PLAYREADY&&(s=this.unpackPlayReadyKeyMessage(e,s)),e.send(s)})})}onDestroying(){this.unregisterListeners(),this._clear()}onMediaAttached(t,e){if(!this.config.emeEnabled)return;const s=e.media;this.media=s,kT(s,"encrypted",this.onMediaEncrypted),kT(s,"waitingforkey",this.onWaitingForKey)}onMediaDetached(){const t=this.media;t&&(_T(t,"encrypted",this.onMediaEncrypted),_T(t,"waitingforkey",this.onWaitingForKey),this.media=null,this.mediaKeys=null)}_clear(){var t;if(this._requestLicenseFailureCount=0,this.keyIdToKeySessionPromise={},!this.mediaKeys&&!this.mediaKeySessions.length)return;const e=this.media,s=this.mediaKeySessions.slice();this.mediaKeySessions=[],this.mediaKeys=null,uS.clearKeyUriToKeyIdMap();const i=s.length;CT.CDMCleanupPromise=Promise.all(s.map(t=>this.removeSession(t)).concat(null==e||null==(t=e.setMediaKeys(null))?void 0:t.catch(t=>{var e;this.log(`Could not clear media keys: ${t}`),null==(e=this.hls)||e.trigger(Yy.ERROR,{type:qy.OTHER_ERROR,details:Qy.KEY_SYSTEM_DESTROY_MEDIA_KEYS_ERROR,fatal:!1,error:new Error(`Could not clear media keys: ${t}`)})}))).catch(t=>{var e;this.log(`Could not close sessions and clear media keys: ${t}`),null==(e=this.hls)||e.trigger(Yy.ERROR,{type:qy.OTHER_ERROR,details:Qy.KEY_SYSTEM_DESTROY_CLOSE_SESSION_ERROR,fatal:!1,error:new Error(`Could not close sessions and clear media keys: ${t}`)})}).then(()=>{i&&this.log("finished closing key sessions and clearing media keys")})}onManifestLoading(){this.keyFormatPromise=null}onManifestLoaded(t,{sessionKeys:e}){if(e&&this.config.emeEnabled&&!this.keyFormatPromise){const t=e.reduce((t,e)=>(-1===t.indexOf(e.keyFormat)&&t.push(e.keyFormat),t),[]);this.log(`Selecting key-system from session-keys ${t.join(", ")}`),this.keyFormatPromise=this.getKeyFormatPromise(t)}}removeSession(t){const{mediaKeysSession:e,licenseXhr:s}=t;if(e){this.log(`Remove licenses and keys and close session ${e.sessionId}`),t._onmessage&&(e.removeEventListener("message",t._onmessage),t._onmessage=void 0),t._onkeystatuseschange&&(e.removeEventListener("keystatuseschange",t._onkeystatuseschange),t._onkeystatuseschange=void 0),s&&s.readyState!==XMLHttpRequest.DONE&&s.abort(),t.mediaKeysSession=t.decryptdata=t.licenseXhr=void 0;const i=this.mediaKeySessions.indexOf(t);i>-1&&this.mediaKeySessions.splice(i,1);const{drmSystemOptions:r}=this.config,n=function(t){var e;return"persistent-license"===t.sessionType||!(null==(e=t.sessionTypes)||!e.some(t=>"persistent-license"===t))}(r)?new Promise((t,s)=>{self.setTimeout(()=>s(new Error("MediaKeySession.remove() timeout")),8e3),e.remove().then(t)}):Promise.resolve();return n.catch(t=>{var e;this.log(`Could not remove session: ${t}`),null==(e=this.hls)||e.trigger(Yy.ERROR,{type:qy.OTHER_ERROR,details:Qy.KEY_SYSTEM_DESTROY_REMOVE_SESSION_ERROR,fatal:!1,error:new Error(`Could not remove session: ${t}`)})}).then(()=>e.close()).catch(t=>{var e;this.log(`Could not close session: ${t}`),null==(e=this.hls)||e.trigger(Yy.ERROR,{type:qy.OTHER_ERROR,details:Qy.KEY_SYSTEM_DESTROY_CLOSE_SESSION_ERROR,fatal:!1,error:new Error(`Could not close session: ${t}`)})})}}}CT.CDMCleanupPromise=void 0;class DT extends Error{constructor(t,e){super(e),this.data=void 0,t.error||(t.error=new Error(e)),this.data=t,t.err=t.error}}function LT(t,e){let s;try{s=new Event("addtrack")}catch(t){s=document.createEvent("Event"),s.initEvent("addtrack",!1,!1)}s.track=t,e.dispatchEvent(s)}function RT(t,e){const s=t.mode;if("disabled"===s&&(t.mode="hidden"),t.cues&&!t.cues.getCueById(e.id))try{if(t.addCue(e),!t.cues.getCueById(e.id))throw new Error(`addCue is failed for: ${e}`)}catch(s){mA.debug(`[texttrack-utils]: ${s}`);try{const s=new self.TextTrackCue(e.startTime,e.endTime,e.text);s.id=e.id,t.addCue(s)}catch(t){mA.debug(`[texttrack-utils]: Legacy TextTrackCue fallback failed: ${t}`)}}"disabled"===s&&(t.mode=s)}function PT(t,e){const s=t.mode;if("disabled"===s&&(t.mode="hidden"),t.cues)for(let s=t.cues.length;s--;)e&&t.cues[s].removeEventListener("enter",e),t.removeCue(t.cues[s]);"disabled"===s&&(t.mode=s)}function xT(t,e,s,i){const r=t.mode;if("disabled"===r&&(t.mode="hidden"),t.cues&&t.cues.length>0){const r=function(t,e,s){const i=[],r=function(t,e){if(e<=t[0].startTime)return 0;const s=t.length-1;if(e>t[s].endTime)return-1;let i,r=0,n=s;for(;r<=n;)if(i=Math.floor((n+r)/2),e<t[i].startTime)n=i-1;else{if(!(e>t[i].startTime&&r<s))return i;r=i+1}return t[r].startTime-e<e-t[n].startTime?r:n}(t,e);if(r>-1)for(let n=r,o=t.length;n<o;n++){const r=t[n];if(r.startTime>=e&&r.endTime<=s)i.push(r);else if(r.startTime>s)return i}return i}(t.cues,e,s);for(let e=0;e<r.length;e++)i&&!i(r[e])||t.removeCue(r[e])}"disabled"===r&&(t.mode=r)}function MT(t){const e=[];for(let s=0;s<t.length;s++){const i=t[s];"subtitles"!==i.kind&&"captions"!==i.kind||!i.label||e.push(t[s])}return e}function BT(t){let e=5381,s=t.length;for(;s;)e=33*e^t.charCodeAt(--s);return(e>>>0).toString()}const FT=.025;let UT=function(t){return t[t.Point=0]="Point",t[t.Range=1]="Range",t}({});function OT(t,e,s){return`${t.identifier}-${s+1}-${BT(e)}`}class NT{constructor(t,e){this.base=void 0,this._duration=null,this._timelineStart=null,this.appendInPlaceDisabled=void 0,this.appendInPlaceStarted=void 0,this.dateRange=void 0,this.hasPlayed=!1,this.cumulativeDuration=0,this.resumeOffset=NaN,this.playoutLimit=NaN,this.restrictions={skip:!1,jump:!1},this.snapOptions={out:!1,in:!1},this.assetList=[],this.assetListLoader=void 0,this.assetListResponse=null,this.resumeAnchor=void 0,this.error=void 0,this.resetOnResume=void 0,this.base=e,this.dateRange=t,this.setDateRange(t)}setDateRange(t){this.dateRange=t,this.resumeOffset=t.attr.optionalFloat("X-RESUME-OFFSET",this.resumeOffset),this.playoutLimit=t.attr.optionalFloat("X-PLAYOUT-LIMIT",this.playoutLimit),this.restrictions=t.attr.enumeratedStringList("X-RESTRICT",this.restrictions),this.snapOptions=t.attr.enumeratedStringList("X-SNAP",this.snapOptions)}reset(){var t;this.appendInPlaceStarted=!1,null==(t=this.assetListLoader)||t.destroy(),this.assetListLoader=void 0,this.supplementsPrimary||(this.assetListResponse=null,this.assetList=[],this._duration=null)}isAssetPastPlayoutLimit(t){var e;if(t>0&&t>=this.assetList.length)return!0;const s=this.playoutLimit;if(t<=0||isNaN(s))return!1;if(0===s)return!0;return((null==(e=this.assetList[t])?void 0:e.startOffset)||0)>s}findAssetIndex(t){return this.assetList.indexOf(t)}get identifier(){return this.dateRange.id}get startDate(){return this.dateRange.startDate}get startTime(){const t=this.dateRange.startTime;if(this.snapOptions.out){const e=this.dateRange.tagAnchor;if(e)return VT(t,e)}return t}get startOffset(){return this.cue.pre?0:this.startTime}get startIsAligned(){if(0===this.startTime||this.snapOptions.out)return!0;const t=this.dateRange.tagAnchor;if(t){const e=this.dateRange.startTime;return e-VT(e,t)<.1}return!1}get resumptionOffset(){const t=this.resumeOffset,e=zy(t)?t:this.duration;return this.cumulativeDuration+e}get resumeTime(){const t=this.startOffset+this.resumptionOffset;if(this.snapOptions.in){const e=this.resumeAnchor;if(e)return VT(t,e)}return t}get appendInPlace(){return!!this.appendInPlaceStarted||!this.appendInPlaceDisabled&&!(this.cue.once||this.cue.pre||!this.startIsAligned||!(isNaN(this.playoutLimit)&&isNaN(this.resumeOffset)||this.resumeOffset&&this.duration&&Math.abs(this.resumeOffset-this.duration)<FT))}set appendInPlace(t){this.appendInPlaceStarted?this.resetOnResume=!t:this.appendInPlaceDisabled=!t}get timelineStart(){return null!==this._timelineStart?this._timelineStart:this.startTime}set timelineStart(t){this._timelineStart=t}get duration(){const t=this.playoutLimit;let e;return e=null!==this._duration?this._duration:this.dateRange.duration?this.dateRange.duration:this.dateRange.plannedDuration||0,!isNaN(t)&&t<e&&(e=t),e}set duration(t){this._duration=t}get cue(){return this.dateRange.cue}get timelineOccupancy(){return"RANGE"===this.dateRange.attr["X-TIMELINE-OCCUPIES"]?UT.Range:UT.Point}get supplementsPrimary(){return"PRIMARY"===this.dateRange.attr["X-TIMELINE-STYLE"]}get contentMayVary(){return"NO"!==this.dateRange.attr["X-CONTENT-MAY-VARY"]}get assetUrl(){return this.dateRange.attr["X-ASSET-URI"]}get assetListUrl(){return this.dateRange.attr["X-ASSET-LIST"]}get baseUrl(){return this.base.url}get assetListLoaded(){return this.assetList.length>0||null!==this.assetListResponse}toString(){return`["${(t=this).identifier}" ${t.cue.pre?"<pre>":t.cue.post?"<post>":""}${t.timelineStart.toFixed(2)}-${t.resumeTime.toFixed(2)}]`;var t}}function VT(t,e){return t-e.start<e.duration/2&&!(Math.abs(t-(e.start+e.duration))<FT)?e.start:e.start+e.duration}function jT(t,e,s){const i=new self.URL(t,s);return"data:"!==i.protocol&&i.searchParams.set("_HLS_primary_id",e),i}function WT(t,e){for(;null!=(s=t.assetList[++e])&&s.error;)var s;return e}function GT(t){const e=t.timelineStart,s=t.duration||0;return`["${t.identifier}" ${e.toFixed(2)}-${(e+s).toFixed(2)}]`}class zT{constructor(t,e,s,i){this.hls=void 0,this.interstitial=void 0,this.assetItem=void 0,this.tracks=null,this.hasDetails=!1,this.mediaAttached=null,this._currentTime=void 0,this._bufferedEosTime=void 0,this.checkPlayout=()=>{this.reachedPlayout(this.currentTime)&&this.hls.trigger(Yy.PLAYOUT_LIMIT_REACHED,{})};const r=this.hls=new t(e);this.interstitial=s,this.assetItem=i;let n=i.uri;try{n=jT(n,e.primarySessionId).href}catch(t){}r.loadSource(n);const o=()=>{this.hasDetails=!0};r.once(Yy.LEVEL_LOADED,o),r.once(Yy.AUDIO_TRACK_LOADED,o),r.once(Yy.SUBTITLE_TRACK_LOADED,o),r.on(Yy.MEDIA_ATTACHING,(t,{media:e})=>{this.removeMediaListeners(),this.mediaAttached=e;this.interstitial.playoutLimit&&(e.addEventListener("timeupdate",this.checkPlayout),this.appendInPlace&&r.on(Yy.BUFFER_APPENDED,()=>{const t=this.bufferedEnd;this.reachedPlayout(t)&&(this._bufferedEosTime=t,r.trigger(Yy.BUFFERED_TO_END,void 0))}))})}get appendInPlace(){var t;return(null==(t=this.interstitial)?void 0:t.appendInPlace)||!1}bufferedInPlaceToEnd(t){var e;if(!this.appendInPlace)return!1;if(null!=(e=this.hls)&&e.bufferedToEnd)return!0;if(!t||!this._bufferedEosTime)return!1;const s=this.timelineOffset,i=Lv.bufferInfo(t,s,0);return this.getAssetTime(i.end)>=this._bufferedEosTime-.02}reachedPlayout(t){const e=this.interstitial.playoutLimit;return this.startOffset+t>=e}get destroyed(){var t;return!(null!=(t=this.hls)&&t.userConfig)}get assetId(){return this.assetItem.identifier}get interstitialId(){return this.assetItem.parentIdentifier}get media(){var t;return(null==(t=this.hls)?void 0:t.media)||null}get bufferedEnd(){const t=this.media||this.mediaAttached;if(!t)return this._bufferedEosTime?this._bufferedEosTime:this.currentTime;const e=Lv.bufferInfo(t,t.currentTime,.001);return this.getAssetTime(e.end)}get currentTime(){const t=this.media||this.mediaAttached;return t?this.getAssetTime(t.currentTime):this._currentTime||0}get duration(){const t=this.assetItem.duration;return t||0}get remaining(){const t=this.duration;return t?Math.max(0,t-this.currentTime):0}get startOffset(){return this.assetItem.startOffset}get timelineOffset(){var t;return(null==(t=this.hls)?void 0:t.config.timelineOffset)||0}set timelineOffset(t){const e=this.timelineOffset;if(t!==e){const s=t-e;if(Math.abs(s)>1/9e4){if(this.hasDetails)throw new Error("Cannot set timelineOffset after playlists are loaded");this.hls.config.timelineOffset=t}}}getAssetTime(t){const e=this.timelineOffset,s=this.duration;return Math.min(Math.max(0,t-e),s)}removeMediaListeners(){const t=this.mediaAttached;t&&(this._currentTime=t.currentTime,this.bufferSnapShot(),t.removeEventListener("timeupdate",this.checkPlayout))}bufferSnapShot(){var t;this.mediaAttached&&(null!=(t=this.hls)&&t.bufferedToEnd&&(this._bufferedEosTime=this.bufferedEnd))}destroy(){this.removeMediaListeners(),this.hls.destroy(),this.hls=this.interstitial=null,this.tracks=this.mediaAttached=this.checkPlayout=null}attachMedia(t){this.hls.attachMedia(t)}detachMedia(){this.removeMediaListeners(),this.mediaAttached=null,this.hls.detachMedia()}resumeBuffering(){this.hls.resumeBuffering()}pauseBuffering(){this.hls.pauseBuffering()}transferMedia(){return this.bufferSnapShot(),this.hls.transferMedia()}resetDetails(){const t=this.hls;if(this.hasDetails){t.stopLoad();const e=t=>delete t.details;t.levels.forEach(e),t.allAudioTracks.forEach(e),t.allSubtitleTracks.forEach(e),this.hasDetails=!1}}on(t,e,s){this.hls.on(t,e)}once(t,e,s){this.hls.once(t,e)}off(t,e,s){this.hls.off(t,e)}toString(){var t;return`HlsAssetPlayer: ${GT(this.assetItem)} ${null==(t=this.hls)?void 0:t.sessionId} ${this.appendInPlace?"append-in-place":""}`}}class HT extends lA{constructor(t,e){super("interstitials-sched",e),this.onScheduleUpdate=void 0,this.eventMap={},this.events=null,this.items=null,this.durations={primary:0,playout:0,integrated:0},this.onScheduleUpdate=t}destroy(){this.reset(),this.onScheduleUpdate=null}reset(){this.eventMap={},this.setDurations(0,0,0),this.events&&this.events.forEach(t=>t.reset()),this.events=this.items=null}resetErrorsInRange(t,e){return this.events?this.events.reduce((s,i)=>t<=i.startOffset&&e>i.startOffset?(delete i.error,s+1):s,0):0}get duration(){const t=this.items;return t?t[t.length-1].end:0}get length(){return this.items?this.items.length:0}getEvent(t){return t&&this.eventMap[t]||null}hasEvent(t){return t in this.eventMap}findItemIndex(t,e){if(t.event)return this.findEventIndex(t.event.identifier);let s=-1;t.nextEvent?s=this.findEventIndex(t.nextEvent.identifier)-1:t.previousEvent&&(s=this.findEventIndex(t.previousEvent.identifier)+1);const i=this.items;if(i)for(i[s]||(void 0===e&&(e=t.start),s=this.findItemIndexAtTime(e));s>=0&&null!=(r=i[s])&&r.event;){var r;s--}return s}findItemIndexAtTime(t,e){const s=this.items;if(s)for(let i=0;i<s.length;i++){let r=s[i];if(e&&"primary"!==e&&(r=r[e]),t===r.start||t>r.start&&t<r.end)return i}return-1}findJumpRestrictedIndex(t,e){const s=this.items;if(s)for(let i=t;i<=e&&s[i];i++){const t=s[i].event;if(null!=t&&t.restrictions.jump&&!t.appendInPlace)return i}return-1}findEventIndex(t){const e=this.items;if(e)for(let i=e.length;i--;){var s;if((null==(s=e[i].event)?void 0:s.identifier)===t)return i}return-1}findAssetIndex(t,e){const s=t.assetList,i=s.length;if(i>1)for(let t=0;t<i;t++){const i=s[t];if(!i.error){const s=i.timelineStart;if(e===s||e>s&&e<s+(i.duration||0))return t}}return 0}get assetIdAtEnd(){var t,e;const s=null==(t=this.items)||null==(e=t[this.length-1])?void 0:e.event;if(s){const t=s.assetList,e=t[t.length-1];if(e)return e.identifier}return null}parseInterstitialDateRanges(t,e){const s=t.main.details,{dateRanges:i}=s,r=this.events,n=this.parseDateRanges(i,{url:s.url},e),o=Object.keys(i),a=r?r.filter(t=>!o.includes(t.identifier)):[];n.length&&n.sort((t,e)=>{const s=t.cue.pre,i=t.cue.post,r=e.cue.pre,n=e.cue.post;if(s&&!r)return-1;if(r&&!s)return 1;if(i&&!n)return 1;if(n&&!i)return-1;if(!(s||r||i||n)){const s=t.startTime,i=e.startTime;if(s!==i)return s-i}return t.dateRange.tagOrder-e.dateRange.tagOrder}),this.events=n,a.forEach(t=>{this.removeEvent(t)}),this.updateSchedule(t,a)}updateSchedule(t,e=[]){const s=this.events||[];if(s.length||e.length||this.length<2){const i=this.items,r=this.parseSchedule(s,t);(e.length||(null==i?void 0:i.length)!==r.length||r.some((t,e)=>Math.abs(t.playout.start-i[e].playout.start)>.005||Math.abs(t.playout.end-i[e].playout.end)>.005))&&(this.items=r,this.onScheduleUpdate(e,i))}}parseDateRanges(t,e,s){const i=[],r=Object.keys(t);for(let n=0;n<r.length;n++){const o=r[n],a=t[o];if(a.isInterstitial){let t=this.eventMap[o];t?t.setDateRange(a):(t=new NT(a,e),this.eventMap[o]=t,!1===s&&(t.appendInPlace=s)),i.push(t)}}return i}parseSchedule(t,e){const s=[],i=e.main.details,r=i.live?1/0:i.edge;let n=0;if((t=t.filter(t=>!(t.error||t.cue.once&&t.hasPlayed))).length){this.resolveOffsets(t,e);let i=0,a=0;if(t.forEach((e,o)=>{const h=e.cue.pre,l=e.cue.post,c=t[o-1]||null,d=e.appendInPlace,u=l?r:e.startOffset,p=e.duration,f=e.timelineOccupancy===UT.Range?p:0,m=e.resumptionOffset,g=(null==c?void 0:c.startTime)===u,y=u+e.cumulativeDuration;let A=d?y+p:u+m;if(h||!l&&u<=0){const t=a;a+=f,e.timelineStart=y;const i=n;n+=p,s.push({event:e,start:y,end:A,playout:{start:i,end:n},integrated:{start:t,end:a}})}else{if(!(u<=r))return;{if(!g){const r=u-i;if(r>.033){const h=i,l=a;a+=r;const c=n;n+=r;const d={previousEvent:t[o-1]||null,nextEvent:e,start:h,end:h+r,playout:{start:c,end:n},integrated:{start:l,end:a}};s.push(d)}else r>0&&c&&(c.cumulativeDuration+=r,s[s.length-1].end=u)}l&&(A=y),e.timelineStart=y;const r=a;a+=f;const h=n;n+=p,s.push({event:e,start:y,end:A,playout:{start:h,end:n},integrated:{start:r,end:a}})}}const b=e.resumeTime;i=l||b>r?r:b}),i<r){var o;const t=i,e=a,h=r-i;a+=h;const l=n;n+=h,s.push({previousEvent:(null==(o=s[s.length-1])?void 0:o.event)||null,nextEvent:null,start:i,end:t+h,playout:{start:l,end:n},integrated:{start:e,end:a}})}this.setDurations(r,n,a)}else{const t=0;s.push({previousEvent:null,nextEvent:null,start:t,end:r,playout:{start:t,end:r},integrated:{start:t,end:r}}),this.setDurations(r,r,r)}return s}setDurations(t,e,s){this.durations={primary:t,playout:e,integrated:s}}resolveOffsets(t,e){const s=e.main.details,i=s.live?1/0:s.edge;let r=0,n=-1;t.forEach((o,a)=>{const h=o.cue.pre,l=o.cue.post,c=h?0:l?i:o.startTime;this.updateAssetDurations(o);if(n===c?o.cumulativeDuration=r:(r=0,n=c),!l&&o.snapOptions.in&&(o.resumeAnchor=Hb(null,s.fragments,o.startOffset+o.resumptionOffset,0,0)||void 0),o.appendInPlace&&!o.appendInPlaceStarted){this.primaryCanResumeInPlaceAt(o,e)||(o.appendInPlace=!1)}if(!o.appendInPlace&&a+1<t.length){t[a+1].startTime-t[a].resumeTime<.033&&(t[a+1].appendInPlace=!1,t[a+1].appendInPlace&&this.warn(`Could not change append strategy for abutting event ${o}`))}const d=zy(o.resumeOffset)?o.resumeOffset:o.duration;r+=d})}primaryCanResumeInPlaceAt(t,e){const s=t.resumeTime,i=t.startTime+t.resumptionOffset;if(Math.abs(s-i)>FT)return this.log(`"${t.identifier}" resumption ${s} not aligned with estimated timeline end ${i}`),!1;if(!e)return this.log(`"${t.identifier}" resumption ${s} can not be aligned with media (none selected)`),!1;return!Object.keys(e).some(i=>{const r=e[i].details,n=r.edge;if(s>=n)return this.log(`"${t.identifier}" resumption ${s} past ${i} playlist end ${n}`),!1;const o=Hb(null,r.fragments,s);if(!o)return this.log(`"${t.identifier}" resumption ${s} does not align with any fragments in ${i} playlist (${r.fragStart}-${r.fragmentEnd})`),!0;const a="audio"===i?.175:0;return!(Math.abs(o.start-s)<FT+a||Math.abs(o.end-s)<FT+a)&&(this.log(`"${t.identifier}" resumption ${s} not aligned with ${i} fragment bounds (${o.start}-${o.end} sn: ${o.sn} cc: ${o.cc})`),!0)})}updateAssetDurations(t){if(!t.assetListLoaded)return;const e=t.timelineStart;let s=0,i=!1,r=!1;t.assetList.forEach((t,n)=>{const o=e+s;t.startOffset=s,t.timelineStart=o,i||(i=null===t.duration),r||(r=!!t.error);const a=t.error?0:t.duration||0;s+=a}),t.duration=i&&!r?Math.max(s,t.duration):s}removeEvent(t){t.reset(),delete this.eventMap[t.identifier]}}function KT(t){return`[${t.event?'"'+t.event.identifier+'"':"primary"}: ${t.start.toFixed(2)}-${t.end.toFixed(2)}]`}class qT{constructor(t){this.hls=void 0,this.hls=t}destroy(){this.hls=null}loadAssetList(t,e){const s=t.assetListUrl;let i;try{i=jT(s,this.hls.sessionId,t.baseUrl)}catch(e){const i=this.assignAssetListError(t,Qy.ASSET_LIST_LOAD_ERROR,e,s);return void this.hls.trigger(Yy.ERROR,i)}e&&"data:"!==i.protocol&&i.searchParams.set("_HLS_start_offset",""+e);const r=this.hls.config,n=new(0,r.loader)(r),o={responseType:"json",url:i.href},a=r.interstitialAssetListLoadPolicy.default,h={loadPolicy:a,timeout:a.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0},l={onSuccess:(e,s,i,r)=>{const n=e.data,o=null==n?void 0:n.ASSETS;if(!Array.isArray(o)){const e=this.assignAssetListError(t,Qy.ASSET_LIST_PARSING_ERROR,new Error("Invalid interstitial asset list"),i.url,s,r);return void this.hls.trigger(Yy.ERROR,e)}t.assetListResponse=n,this.hls.trigger(Yy.ASSET_LIST_LOADED,{event:t,assetListResponse:n,networkDetails:r})},onError:(e,s,i,r)=>{const n=this.assignAssetListError(t,Qy.ASSET_LIST_LOAD_ERROR,new Error(`Error loading X-ASSET-LIST: HTTP status ${e.code} ${e.text} (${s.url})`),s.url,r,i);this.hls.trigger(Yy.ERROR,n)},onTimeout:(e,s,i)=>{const r=this.assignAssetListError(t,Qy.ASSET_LIST_LOAD_TIMEOUT,new Error(`Timeout loading X-ASSET-LIST (${s.url})`),s.url,e,i);this.hls.trigger(Yy.ERROR,r)}};return n.load(o,h,l),this.hls.trigger(Yy.ASSET_LIST_LOADING,{event:t}),n}assignAssetListError(t,e,s,i,r,n){return t.error=s,{type:qy.NETWORK_ERROR,details:e,fatal:!1,interstitial:t,url:i,error:s,networkDetails:n,stats:r}}}function QT(t){null==t||t.play().catch(()=>{})}class YT{constructor(t){this.buffered=void 0;const e=(e,s,i)=>{if((s>>>=0)>i-1)throw new DOMException(`Failed to execute '${e}' on 'TimeRanges': The index provided (${s}) is greater than the maximum bound (${i})`);return t[s][e]};this.buffered={get length(){return t.length},end:s=>e("end",s,t.length),start:s=>e("start",s,t.length)}}}const JT={42:225,92:233,94:237,95:243,96:250,123:231,124:247,125:209,126:241,127:9608,128:174,129:176,130:189,131:191,132:8482,133:162,134:163,135:9834,136:224,137:32,138:232,139:226,140:234,141:238,142:244,143:251,144:193,145:201,146:211,147:218,148:220,149:252,150:8216,151:161,152:42,153:8217,154:9473,155:169,156:8480,157:8226,158:8220,159:8221,160:192,161:194,162:199,163:200,164:202,165:203,166:235,167:206,168:207,169:239,170:212,171:217,172:249,173:219,174:171,175:187,176:195,177:227,178:205,179:204,180:236,181:210,182:242,183:213,184:245,185:123,186:125,187:92,188:94,189:95,190:124,191:8764,192:196,193:228,194:214,195:246,196:223,197:165,198:164,199:9475,200:197,201:229,202:216,203:248,204:9487,205:9491,206:9495,207:9499},XT=t=>String.fromCharCode(JT[t]||t),$T=15,ZT=100,tI={17:1,18:3,21:5,22:7,23:9,16:11,19:12,20:14},eI={17:2,18:4,21:6,22:8,23:10,19:13,20:15},sI={25:1,26:3,29:5,30:7,31:9,24:11,27:12,28:14},iI={25:2,26:4,29:6,30:8,31:10,27:13,28:15},rI=["white","green","blue","cyan","red","yellow","magenta","black","transparent"];class nI{constructor(){this.time=null,this.verboseLevel=0}log(t,e){if(this.verboseLevel>=t){const s="function"==typeof e?e():e;mA.log(`${this.time} [${t}] ${s}`)}}}const oI=function(t){const e=[];for(let s=0;s<t.length;s++)e.push(t[s].toString(16));return e};class aI{constructor(){this.foreground="white",this.underline=!1,this.italics=!1,this.background="black",this.flash=!1}reset(){this.foreground="white",this.underline=!1,this.italics=!1,this.background="black",this.flash=!1}setStyles(t){const e=["foreground","underline","italics","background","flash"];for(let s=0;s<e.length;s++){const i=e[s];t.hasOwnProperty(i)&&(this[i]=t[i])}}isDefault(){return"white"===this.foreground&&!this.underline&&!this.italics&&"black"===this.background&&!this.flash}equals(t){return this.foreground===t.foreground&&this.underline===t.underline&&this.italics===t.italics&&this.background===t.background&&this.flash===t.flash}copy(t){this.foreground=t.foreground,this.underline=t.underline,this.italics=t.italics,this.background=t.background,this.flash=t.flash}toString(){return"color="+this.foreground+", underline="+this.underline+", italics="+this.italics+", background="+this.background+", flash="+this.flash}}class hI{constructor(){this.uchar=" ",this.penState=new aI}reset(){this.uchar=" ",this.penState.reset()}setChar(t,e){this.uchar=t,this.penState.copy(e)}setPenState(t){this.penState.copy(t)}equals(t){return this.uchar===t.uchar&&this.penState.equals(t.penState)}copy(t){this.uchar=t.uchar,this.penState.copy(t.penState)}isEmpty(){return" "===this.uchar&&this.penState.isDefault()}}class lI{constructor(t){this.chars=[],this.pos=0,this.currPenState=new aI,this.cueStartTime=null,this.logger=void 0;for(let t=0;t<ZT;t++)this.chars.push(new hI);this.logger=t}equals(t){for(let e=0;e<ZT;e++)if(!this.chars[e].equals(t.chars[e]))return!1;return!0}copy(t){for(let e=0;e<ZT;e++)this.chars[e].copy(t.chars[e])}isEmpty(){let t=!0;for(let e=0;e<ZT;e++)if(!this.chars[e].isEmpty()){t=!1;break}return t}setCursor(t){this.pos!==t&&(this.pos=t),this.pos<0?(this.logger.log(3,"Negative cursor position "+this.pos),this.pos=0):this.pos>ZT&&(this.logger.log(3,"Too large cursor position "+this.pos),this.pos=ZT)}moveCursor(t){const e=this.pos+t;if(t>1)for(let t=this.pos+1;t<e+1;t++)this.chars[t].setPenState(this.currPenState);this.setCursor(e)}backSpace(){this.moveCursor(-1),this.chars[this.pos].setChar(" ",this.currPenState)}insertChar(t){t>=144&&this.backSpace();const e=XT(t);this.pos>=ZT?this.logger.log(0,()=>"Cannot insert "+t.toString(16)+" ("+e+") at position "+this.pos+". Skipping it!"):(this.chars[this.pos].setChar(e,this.currPenState),this.moveCursor(1))}clearFromPos(t){let e;for(e=t;e<ZT;e++)this.chars[e].reset()}clear(){this.clearFromPos(0),this.pos=0,this.currPenState.reset()}clearToEndOfRow(){this.clearFromPos(this.pos)}getTextString(){const t=[];let e=!0;for(let s=0;s<ZT;s++){const i=this.chars[s].uchar;" "!==i&&(e=!1),t.push(i)}return e?"":t.join("")}setPenStyles(t){this.currPenState.setStyles(t);this.chars[this.pos].setPenState(this.currPenState)}}class cI{constructor(t){this.rows=[],this.currRow=14,this.nrRollUpRows=null,this.lastOutputScreen=null,this.logger=void 0;for(let e=0;e<$T;e++)this.rows.push(new lI(t));this.logger=t}reset(){for(let t=0;t<$T;t++)this.rows[t].clear();this.currRow=14}equals(t){let e=!0;for(let s=0;s<$T;s++)if(!this.rows[s].equals(t.rows[s])){e=!1;break}return e}copy(t){for(let e=0;e<$T;e++)this.rows[e].copy(t.rows[e])}isEmpty(){let t=!0;for(let e=0;e<$T;e++)if(!this.rows[e].isEmpty()){t=!1;break}return t}backSpace(){this.rows[this.currRow].backSpace()}clearToEndOfRow(){this.rows[this.currRow].clearToEndOfRow()}insertChar(t){this.rows[this.currRow].insertChar(t)}setPen(t){this.rows[this.currRow].setPenStyles(t)}moveCursor(t){this.rows[this.currRow].moveCursor(t)}setCursor(t){this.logger.log(2,"setCursor: "+t);this.rows[this.currRow].setCursor(t)}setPAC(t){this.logger.log(2,()=>"pacData = "+Bb(t));let e=t.row-1;if(this.nrRollUpRows&&e<this.nrRollUpRows-1&&(e=this.nrRollUpRows-1),this.nrRollUpRows&&this.currRow!==e){for(let t=0;t<$T;t++)this.rows[t].clear();const t=this.currRow+1-this.nrRollUpRows,s=this.lastOutputScreen;if(s){const i=s.rows[t].cueStartTime,r=this.logger.time;if(null!==i&&null!==r&&i<r)for(let i=0;i<this.nrRollUpRows;i++)this.rows[e-this.nrRollUpRows+i+1].copy(s.rows[t+i])}}this.currRow=e;const s=this.rows[this.currRow];if(null!==t.indent){const e=t.indent,i=Math.max(e-1,0);s.setCursor(t.indent),t.color=s.chars[i].penState.foreground}const i={foreground:t.color,underline:t.underline,italics:t.italics,background:"black",flash:!1};this.setPen(i)}setBkgData(t){this.logger.log(2,()=>"bkgData = "+Bb(t)),this.backSpace(),this.setPen(t),this.insertChar(32)}setRollUpRows(t){this.nrRollUpRows=t}rollUp(){if(null===this.nrRollUpRows)return void this.logger.log(3,"roll_up but nrRollUpRows not set yet");this.logger.log(1,()=>this.getDisplayText());const t=this.currRow+1-this.nrRollUpRows,e=this.rows.splice(t,1)[0];e.clear(),this.rows.splice(this.currRow,0,e),this.logger.log(2,"Rolling up")}getDisplayText(t){t=t||!1;const e=[];let s="",i=-1;for(let s=0;s<$T;s++){const r=this.rows[s].getTextString();r&&(i=s+1,t?e.push("Row "+i+": '"+r+"'"):e.push(r.trim()))}return e.length>0&&(s=t?"["+e.join(" | ")+"]":e.join("\n")),s}getTextAndFormat(){return this.rows}}class dI{constructor(t,e,s){this.chNr=void 0,this.outputFilter=void 0,this.mode=void 0,this.verbose=void 0,this.displayedMemory=void 0,this.nonDisplayedMemory=void 0,this.lastOutputScreen=void 0,this.currRollUpRow=void 0,this.writeScreen=void 0,this.cueStartTime=void 0,this.logger=void 0,this.chNr=t,this.outputFilter=e,this.mode=null,this.verbose=0,this.displayedMemory=new cI(s),this.nonDisplayedMemory=new cI(s),this.lastOutputScreen=new cI(s),this.currRollUpRow=this.displayedMemory.rows[14],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null,this.logger=s}reset(){this.mode=null,this.displayedMemory.reset(),this.nonDisplayedMemory.reset(),this.lastOutputScreen.reset(),this.outputFilter.reset(),this.currRollUpRow=this.displayedMemory.rows[14],this.writeScreen=this.displayedMemory,this.mode=null,this.cueStartTime=null}getHandler(){return this.outputFilter}setHandler(t){this.outputFilter=t}setPAC(t){this.writeScreen.setPAC(t)}setBkgData(t){this.writeScreen.setBkgData(t)}setMode(t){t!==this.mode&&(this.mode=t,this.logger.log(2,()=>"MODE="+t),"MODE_POP-ON"===this.mode?this.writeScreen=this.nonDisplayedMemory:(this.writeScreen=this.displayedMemory,this.writeScreen.reset()),"MODE_ROLL-UP"!==this.mode&&(this.displayedMemory.nrRollUpRows=null,this.nonDisplayedMemory.nrRollUpRows=null),this.mode=t)}insertChars(t){for(let e=0;e<t.length;e++)this.writeScreen.insertChar(t[e]);const e=this.writeScreen===this.displayedMemory?"DISP":"NON_DISP";this.logger.log(2,()=>e+": "+this.writeScreen.getDisplayText(!0)),"MODE_PAINT-ON"!==this.mode&&"MODE_ROLL-UP"!==this.mode||(this.logger.log(1,()=>"DISPLAYED: "+this.displayedMemory.getDisplayText(!0)),this.outputDataUpdate())}ccRCL(){this.logger.log(2,"RCL - Resume Caption Loading"),this.setMode("MODE_POP-ON")}ccBS(){this.logger.log(2,"BS - BackSpace"),"MODE_TEXT"!==this.mode&&(this.writeScreen.backSpace(),this.writeScreen===this.displayedMemory&&this.outputDataUpdate())}ccAOF(){}ccAON(){}ccDER(){this.logger.log(2,"DER- Delete to End of Row"),this.writeScreen.clearToEndOfRow(),this.outputDataUpdate()}ccRU(t){this.logger.log(2,"RU("+t+") - Roll Up"),this.writeScreen=this.displayedMemory,this.setMode("MODE_ROLL-UP"),this.writeScreen.setRollUpRows(t)}ccFON(){this.logger.log(2,"FON - Flash On"),this.writeScreen.setPen({flash:!0})}ccRDC(){this.logger.log(2,"RDC - Resume Direct Captioning"),this.setMode("MODE_PAINT-ON")}ccTR(){this.logger.log(2,"TR"),this.setMode("MODE_TEXT")}ccRTD(){this.logger.log(2,"RTD"),this.setMode("MODE_TEXT")}ccEDM(){this.logger.log(2,"EDM - Erase Displayed Memory"),this.displayedMemory.reset(),this.outputDataUpdate(!0)}ccCR(){this.logger.log(2,"CR - Carriage Return"),this.writeScreen.rollUp(),this.outputDataUpdate(!0)}ccENM(){this.logger.log(2,"ENM - Erase Non-displayed Memory"),this.nonDisplayedMemory.reset()}ccEOC(){if(this.logger.log(2,"EOC - End Of Caption"),"MODE_POP-ON"===this.mode){const t=this.displayedMemory;this.displayedMemory=this.nonDisplayedMemory,this.nonDisplayedMemory=t,this.writeScreen=this.nonDisplayedMemory,this.logger.log(1,()=>"DISP: "+this.displayedMemory.getDisplayText())}this.outputDataUpdate(!0)}ccTO(t){this.logger.log(2,"TO("+t+") - Tab Offset"),this.writeScreen.moveCursor(t)}ccMIDROW(t){const e={flash:!1};if(e.underline=t%2==1,e.italics=t>=46,e.italics)e.foreground="white";else{const s=Math.floor(t/2)-16,i=["white","green","blue","cyan","red","yellow","magenta"];e.foreground=i[s]}this.logger.log(2,"MIDROW: "+Bb(e)),this.writeScreen.setPen(e)}outputDataUpdate(t=!1){const e=this.logger.time;null!==e&&this.outputFilter&&(null!==this.cueStartTime||this.displayedMemory.isEmpty()?this.displayedMemory.equals(this.lastOutputScreen)||(this.outputFilter.newCue(this.cueStartTime,e,this.lastOutputScreen),t&&this.outputFilter.dispatchCue&&this.outputFilter.dispatchCue(),this.cueStartTime=this.displayedMemory.isEmpty()?null:e):this.cueStartTime=e,this.lastOutputScreen.copy(this.displayedMemory))}cueSplitAtTime(t){this.outputFilter&&(this.displayedMemory.isEmpty()||(this.outputFilter.newCue&&this.outputFilter.newCue(this.cueStartTime,t,this.displayedMemory),this.cueStartTime=t))}}class uI{constructor(t,e,s){this.channels=void 0,this.currentChannel=0,this.cmdHistory={a:null,b:null},this.logger=void 0;const i=this.logger=new nI;this.channels=[null,new dI(t,e,i),new dI(t+1,s,i)]}getHandler(t){return this.channels[t].getHandler()}setHandler(t,e){this.channels[t].setHandler(e)}addData(t,e){this.logger.time=t;for(let t=0;t<e.length;t+=2){const s=127&e[t],i=127&e[t+1];let r=!1,n=null;if(0===s&&0===i)continue;this.logger.log(3,()=>"["+oI([e[t],e[t+1]])+"] -> ("+oI([s,i])+")");const o=this.cmdHistory;if(s>=16&&s<=31){if(fI(s,i,o)){pI(null,null,o),this.logger.log(3,()=>"Repeated command ("+oI([s,i])+") is dropped");continue}pI(s,i,this.cmdHistory),r=this.parseCmd(s,i),r||(r=this.parseMidrow(s,i)),r||(r=this.parsePAC(s,i)),r||(r=this.parseBackgroundAttributes(s,i))}else pI(null,null,o);if(!r&&(n=this.parseChars(s,i),n)){const t=this.currentChannel;if(t&&t>0){this.channels[t].insertChars(n)}else this.logger.log(2,"No channel found yet. TEXT-MODE?")}r||n||this.logger.log(2,()=>"Couldn't parse cleaned data "+oI([s,i])+" orig: "+oI([e[t],e[t+1]]))}}parseCmd(t,e){if(!((20===t||28===t||21===t||29===t)&&e>=32&&e<=47)&&!((23===t||31===t)&&e>=33&&e<=35))return!1;const s=20===t||21===t||23===t?1:2,i=this.channels[s];return 20===t||21===t||28===t||29===t?32===e?i.ccRCL():33===e?i.ccBS():34===e?i.ccAOF():35===e?i.ccAON():36===e?i.ccDER():37===e?i.ccRU(2):38===e?i.ccRU(3):39===e?i.ccRU(4):40===e?i.ccFON():41===e?i.ccRDC():42===e?i.ccTR():43===e?i.ccRTD():44===e?i.ccEDM():45===e?i.ccCR():46===e?i.ccENM():47===e&&i.ccEOC():i.ccTO(e-32),this.currentChannel=s,!0}parseMidrow(t,e){let s=0;if((17===t||25===t)&&e>=32&&e<=47){if(s=17===t?1:2,s!==this.currentChannel)return this.logger.log(0,"Mismatch channel in midrow parsing"),!1;const i=this.channels[s];return!!i&&(i.ccMIDROW(e),this.logger.log(3,()=>"MIDROW ("+oI([t,e])+")"),!0)}return!1}parsePAC(t,e){let s;if(!((t>=17&&t<=23||t>=25&&t<=31)&&e>=64&&e<=127)&&!((16===t||24===t)&&e>=64&&e<=95))return!1;const i=t<=23?1:2;s=e>=64&&e<=95?1===i?tI[t]:sI[t]:1===i?eI[t]:iI[t];const r=this.channels[i];return!!r&&(r.setPAC(this.interpretPAC(s,e)),this.currentChannel=i,!0)}interpretPAC(t,e){let s;const i={color:null,italics:!1,indent:null,underline:!1,row:t};return s=e>95?e-96:e-64,i.underline=!(1&~s),s<=13?i.color=["white","green","blue","cyan","red","yellow","magenta","white"][Math.floor(s/2)]:s<=15?(i.italics=!0,i.color="white"):i.indent=4*Math.floor((s-16)/2),i}parseChars(t,e){let s,i=null,r=null;if(t>=25?(s=2,r=t-8):(s=1,r=t),r>=17&&r<=19){let t;t=17===r?e+80:18===r?e+112:e+144,this.logger.log(2,()=>"Special char '"+XT(t)+"' in channel "+s),i=[t]}else t>=32&&t<=127&&(i=0===e?[t]:[t,e]);return i&&this.logger.log(3,()=>"Char codes = "+oI(i).join(",")),i}parseBackgroundAttributes(t,e){if(!((16===t||24===t)&&e>=32&&e<=47)&&!((23===t||31===t)&&e>=45&&e<=47))return!1;let s;const i={};16===t||24===t?(s=Math.floor((e-32)/2),i.background=rI[s],e%2==1&&(i.background=i.background+"_semi")):45===e?i.background="transparent":(i.foreground="black",47===e&&(i.underline=!0));const r=t<=23?1:2;return this.channels[r].setBkgData(i),!0}reset(){for(let t=0;t<Object.keys(this.channels).length;t++){const e=this.channels[t];e&&e.reset()}pI(null,null,this.cmdHistory)}cueSplitAtTime(t){for(let e=0;e<this.channels.length;e++){const s=this.channels[e];s&&s.cueSplitAtTime(t)}}}function pI(t,e,s){s.a=t,s.b=e}function fI(t,e,s){return s.a===t&&s.b===e}var mI=function(){if(null!=Qv&&Qv.VTTCue)return self.VTTCue;const t=["","lr","rl"],e=["start","middle","end","left","right"];function s(t,e){if("string"!=typeof e)return!1;if(!Array.isArray(t))return!1;const s=e.toLowerCase();return!!~t.indexOf(s)&&s}function i(t){return s(e,t)}function r(t,...e){let s=1;for(;s<arguments.length;s++){const e=arguments[s];for(const s in e)t[s]=e[s]}return t}function n(e,n,o){const a=this,h={enumerable:!0};a.hasBeenReset=!1;let l="",c=!1,d=e,u=n,p=o,f=null,m="",g=!0,y="auto",A="start",b=50,v="middle",S=50,E="middle";Object.defineProperty(a,"id",r({},h,{get:function(){return l},set:function(t){l=""+t}})),Object.defineProperty(a,"pauseOnExit",r({},h,{get:function(){return c},set:function(t){c=!!t}})),Object.defineProperty(a,"startTime",r({},h,{get:function(){return d},set:function(t){if("number"!=typeof t)throw new TypeError("Start time must be set to a number.");d=t,this.hasBeenReset=!0}})),Object.defineProperty(a,"endTime",r({},h,{get:function(){return u},set:function(t){if("number"!=typeof t)throw new TypeError("End time must be set to a number.");u=t,this.hasBeenReset=!0}})),Object.defineProperty(a,"text",r({},h,{get:function(){return p},set:function(t){p=""+t,this.hasBeenReset=!0}})),Object.defineProperty(a,"region",r({},h,{get:function(){return f},set:function(t){f=t,this.hasBeenReset=!0}})),Object.defineProperty(a,"vertical",r({},h,{get:function(){return m},set:function(e){const i=function(e){return s(t,e)}(e);if(!1===i)throw new SyntaxError("An invalid or illegal string was specified.");m=i,this.hasBeenReset=!0}})),Object.defineProperty(a,"snapToLines",r({},h,{get:function(){return g},set:function(t){g=!!t,this.hasBeenReset=!0}})),Object.defineProperty(a,"line",r({},h,{get:function(){return y},set:function(t){if("number"!=typeof t&&"auto"!==t)throw new SyntaxError("An invalid number or illegal string was specified.");y=t,this.hasBeenReset=!0}})),Object.defineProperty(a,"lineAlign",r({},h,{get:function(){return A},set:function(t){const e=i(t);if(!e)throw new SyntaxError("An invalid or illegal string was specified.");A=e,this.hasBeenReset=!0}})),Object.defineProperty(a,"position",r({},h,{get:function(){return b},set:function(t){if(t<0||t>100)throw new Error("Position must be between 0 and 100.");b=t,this.hasBeenReset=!0}})),Object.defineProperty(a,"positionAlign",r({},h,{get:function(){return v},set:function(t){const e=i(t);if(!e)throw new SyntaxError("An invalid or illegal string was specified.");v=e,this.hasBeenReset=!0}})),Object.defineProperty(a,"size",r({},h,{get:function(){return S},set:function(t){if(t<0||t>100)throw new Error("Size must be between 0 and 100.");S=t,this.hasBeenReset=!0}})),Object.defineProperty(a,"align",r({},h,{get:function(){return E},set:function(t){const e=i(t);if(!e)throw new SyntaxError("An invalid or illegal string was specified.");E=e,this.hasBeenReset=!0}})),a.displayState=void 0}return n.prototype.getCueAsHTML=function(){return self.WebVTT.convertCueToDOMTree(self,this.text)},n}();class gI{decode(t,e){if(!t)return"";if("string"!=typeof t)throw new Error("Error - expected string data.");return decodeURIComponent(encodeURIComponent(t))}}function yI(t){function e(t,e,s,i){return 3600*(0|t)+60*(0|e)+(0|s)+parseFloat(i||0)}const s=t.match(/^(?:(\d+):)?(\d{2}):(\d{2})(\.\d+)?/);return s?parseFloat(s[2])>59?e(s[2],s[3],0,s[4]):e(s[1],s[2],s[3],s[4]):null}class AI{constructor(){this.values=Object.create(null)}set(t,e){this.get(t)||""===e||(this.values[t]=e)}get(t,e,s){return s?this.has(t)?this.values[t]:e[s]:this.has(t)?this.values[t]:e}has(t){return t in this.values}alt(t,e,s){for(let i=0;i<s.length;++i)if(e===s[i]){this.set(t,e);break}}integer(t,e){/^-?\d+$/.test(e)&&this.set(t,parseInt(e,10))}percent(t,e){if(/^([\d]{1,3})(\.[\d]*)?%$/.test(e)){const s=parseFloat(e);if(s>=0&&s<=100)return this.set(t,s),!0}return!1}}function bI(t,e,s,i){const r=i?t.split(i):[t];for(const t in r){if("string"!=typeof r[t])continue;const i=r[t].split(s);if(2!==i.length)continue;e(i[0],i[1])}}const vI=new mI(0,0,""),SI="middle"===vI.align?"middle":"center";function EI(t,e,s){const i=t;function r(){const e=yI(t);if(null===e)throw new Error("Malformed timestamp: "+i);return t=t.replace(/^[^\sa-zA-Z-]+/,""),e}function n(){t=t.replace(/^\s+/,"")}if(n(),e.startTime=r(),n(),"--\x3e"!==t.slice(0,3))throw new Error("Malformed time stamp (time stamps must be separated by '--\x3e'): "+i);t=t.slice(3),n(),e.endTime=r(),n(),function(t,e){const i=new AI;bI(t,function(t,e){let r;switch(t){case"region":for(let r=s.length-1;r>=0;r--)if(s[r].id===e){i.set(t,s[r].region);break}break;case"vertical":i.alt(t,e,["rl","lr"]);break;case"line":r=e.split(","),i.integer(t,r[0]),i.percent(t,r[0])&&i.set("snapToLines",!1),i.alt(t,r[0],["auto"]),2===r.length&&i.alt("lineAlign",r[1],["start",SI,"end"]);break;case"position":r=e.split(","),i.percent(t,r[0]),2===r.length&&i.alt("positionAlign",r[1],["start",SI,"end","line-left","line-right","auto"]);break;case"size":i.percent(t,e);break;case"align":i.alt(t,e,["start",SI,"end","left","right"])}},/:/,/\s/),e.region=i.get("region",null),e.vertical=i.get("vertical","");let r=i.get("line","auto");"auto"===r&&-1===vI.line&&(r=-1),e.line=r,e.lineAlign=i.get("lineAlign","start"),e.snapToLines=i.get("snapToLines",!0),e.size=i.get("size",100),e.align=i.get("align",SI);let n=i.get("position","auto");"auto"===n&&50===vI.position&&(n="start"===e.align||"left"===e.align?0:"end"===e.align||"right"===e.align?100:50),e.position=n}(t,e)}function wI(t){return t.replace(/<br(?: \/)?>/gi,"\n")}class TI{constructor(){this.state="INITIAL",this.buffer="",this.decoder=new gI,this.regionList=[],this.cue=null,this.oncue=void 0,this.onparsingerror=void 0,this.onflush=void 0}parse(t){const e=this;function s(){let t=e.buffer,s=0;for(t=wI(t);s<t.length&&"\r"!==t[s]&&"\n"!==t[s];)++s;const i=t.slice(0,s);return"\r"===t[s]&&++s,"\n"===t[s]&&++s,e.buffer=t.slice(s),i}function i(t){bI(t,function(t,e){},/:/)}t&&(e.buffer+=e.decoder.decode(t,{stream:!0}));try{let t="";if("INITIAL"===e.state){if(!/\r\n|\n/.test(e.buffer))return this;t=s();const i=t.match(/^()?WEBVTT([ \t].*)?$/);if(null==i||!i[0])throw new Error("Malformed WebVTT signature.");e.state="HEADER"}let r=!1;for(;e.buffer;){if(!/\r\n|\n/.test(e.buffer))return this;switch(r?r=!1:t=s(),e.state){case"HEADER":/:/.test(t)?i(t):t||(e.state="ID");continue;case"NOTE":t||(e.state="ID");continue;case"ID":if(/^NOTE($|[ \t])/.test(t)){e.state="NOTE";break}if(!t)continue;if(e.cue=new mI(0,0,""),e.state="CUE",-1===t.indexOf("--\x3e")){e.cue.id=t;continue}case"CUE":if(!e.cue){e.state="BADCUE";continue}try{EI(t,e.cue,e.regionList)}catch(t){e.cue=null,e.state="BADCUE";continue}e.state="CUETEXT";continue;case"CUETEXT":{const s=-1!==t.indexOf("--\x3e");if(!t||s&&(r=!0)){e.oncue&&e.cue&&e.oncue(e.cue),e.cue=null,e.state="ID";continue}if(null===e.cue)continue;e.cue.text&&(e.cue.text+="\n"),e.cue.text+=t}continue;case"BADCUE":t||(e.state="ID")}}}catch(t){"CUETEXT"===e.state&&e.cue&&e.oncue&&e.oncue(e.cue),e.cue=null,e.state="INITIAL"===e.state?"BADWEBVTT":"BADCUE"}return this}flush(){const t=this;try{if((t.cue||"HEADER"===t.state)&&(t.buffer+="\n\n",t.parse()),"INITIAL"===t.state||"BADWEBVTT"===t.state)throw new Error("Malformed WebVTT signature.")}catch(e){t.onparsingerror&&t.onparsingerror(e)}return t.onflush&&t.onflush(),this}}const II=/\r\n|\n\r|\n|\r/g,kI=function(t,e,s=0){return t.slice(s,s+e.length)===e};function _I(t,e,s){return BT(t.toString())+BT(e.toString())+BT(s)}function CI(t,e,s,i,r,n,o){const a=new TI,h=AA(new Uint8Array(t)).trim().replace(II,"\n").split("\n"),l=[],c=e?function(t,e=1){return gw(t,9e4,1/e)}(e.baseTime,e.timescale):0;let d,u="00:00.000",p=0,f=0,m=!0;a.oncue=function(t){const n=s[i];let o=s.ccOffset;const a=(p-c)/9e4;if(null!=n&&n.new&&(void 0!==f?o=s.ccOffset=n.start:function(t,e,s){let i=t[e],r=t[i.prevCC];if(!r||!r.new&&i.new)return t.ccOffset=t.presentationOffset=i.start,void(i.new=!1);for(;null!=(n=r)&&n.new;){var n;t.ccOffset+=i.start-r.start,i.new=!1,i=r,r=t[i.prevCC]}t.presentationOffset=s}(s,i,a)),a){if(!e)return void(d=new Error("Missing initPTS for VTT MPEGTS"));o=a-s.presentationOffset}const h=t.endTime-t.startTime,u=ww(9e4*(t.startTime+o-f),9e4*r)/9e4;t.startTime=Math.max(u,0),t.endTime=Math.max(u+h,0);const m=t.text.trim();t.text=decodeURIComponent(encodeURIComponent(m)),t.id||(t.id=_I(t.startTime,t.endTime,m)),t.endTime>0&&l.push(t)},a.onparsingerror=function(t){d=t},a.onflush=function(){d?o(d):n(l)},h.forEach(t=>{if(m){if(kI(t,"X-TIMESTAMP-MAP=")){m=!1,t.slice(16).split(",").forEach(t=>{kI(t,"LOCAL:")?u=t.slice(6):kI(t,"MPEGTS:")&&(p=parseInt(t.slice(7)))});try{f=function(t){let e=parseInt(t.slice(-3));const s=parseInt(t.slice(-6,-4)),i=parseInt(t.slice(-9,-7)),r=t.length>9?parseInt(t.substring(0,t.indexOf(":"))):0;if(!(zy(e)&&zy(s)&&zy(i)&&zy(r)))throw Error(`Malformed X-TIMESTAMP-MAP: Local:${t}`);return e+=1e3*s,e+=6e4*i,e+=36e5*r,e}(u)/1e3}catch(t){d=t}return}""===t&&(m=!1)}a.parse(t+"\n")}),a.flush()}const DI="stpp.ttml.im1t",LI=/^(\d{2,}):(\d{2}):(\d{2}):(\d{2})\.?(\d+)?$/,RI=/^(\d*(?:\.\d*)?)(h|m|s|ms|f|t)$/,PI={left:"start",center:"center",right:"end",start:"start",end:"end"};function xI(t,e,s,i){const r=WA(new Uint8Array(t),["mdat"]);if(0===r.length)return void i(new Error("Could not parse IMSC1 mdat"));const n=r.map(t=>AA(t)),o=function(t,e,s=1,i=!1){return gw(t,e,1/s,i)}(e.baseTime,1,e.timescale);try{n.forEach(t=>s(function(t,e){const s=(new DOMParser).parseFromString(t,"text/xml"),i=s.getElementsByTagName("tt")[0];if(!i)throw new Error("Invalid ttml");const r={frameRate:30,subFrameRate:1,frameRateMultiplier:0,tickRate:0},n=Object.keys(r).reduce((t,e)=>(t[e]=i.getAttribute(`ttp:${e}`)||r[e],t),{}),o="preserve"!==i.getAttribute("xml:space"),a=BI(MI(i,"styling","style")),h=BI(MI(i,"layout","region")),l=MI(i,"body","[begin]");return[].map.call(l,t=>{const s=FI(t,o);if(!s||!t.hasAttribute("begin"))return null;const i=NI(t.getAttribute("begin"),n),r=NI(t.getAttribute("dur"),n);let l=NI(t.getAttribute("end"),n);if(null===i)throw OI(t);if(null===l){if(null===r)throw OI(t);l=i+r}const c=new mI(i-e,l-e,s);c.id=_I(c.startTime,c.endTime,c.text);const d=function(t,e,s){const i="http://www.w3.org/ns/ttml#styling";let r=null;const n=["displayAlign","textAlign","color","backgroundColor","fontSize","fontFamily"],o=null!=t&&t.hasAttribute("style")?t.getAttribute("style"):null;o&&s.hasOwnProperty(o)&&(r=s[o]);return n.reduce((s,n)=>{const o=UI(e,i,n)||UI(t,i,n)||UI(r,i,n);return o&&(s[n]=o),s},{})}(h[t.getAttribute("region")],a[t.getAttribute("style")],a),{textAlign:u}=d;if(u){const t=PI[u];t&&(c.lineAlign=t),c.align=u}return oA(c,d),c}).filter(t=>null!==t)}(t,o)))}catch(t){i(t)}}function MI(t,e,s){const i=t.getElementsByTagName(e)[0];return i?[].slice.call(i.querySelectorAll(s)):[]}function BI(t){return t.reduce((t,e)=>{const s=e.getAttribute("xml:id");return s&&(t[s]=e),t},{})}function FI(t,e){return[].slice.call(t.childNodes).reduce((t,s,i)=>{var r;return"br"===s.nodeName&&i?t+"\n":null!=(r=s.childNodes)&&r.length?FI(s,e):e?t+s.textContent.trim().replace(/\s+/g," "):t+s.textContent},"")}function UI(t,e,s){return t&&t.hasAttributeNS(e,s)?t.getAttributeNS(e,s):null}function OI(t){return new Error(`Could not parse ttml timestamp ${t}`)}function NI(t,e){if(!t)return null;let s=yI(t);return null===s&&(LI.test(t)?s=function(t,e){const s=LI.exec(t),i=(0|s[4])+(0|s[5])/e.subFrameRate;return 3600*(0|s[1])+60*(0|s[2])+(0|s[3])+i/e.frameRate}(t,e):RI.test(t)&&(s=function(t,e){const s=RI.exec(t),i=Number(s[1]);switch(s[2]){case"h":return 3600*i;case"m":return 60*i;case"ms":return 1e3*i;case"f":return i/e.frameRate;case"t":return i/e.tickRate}return i}(t,e))),s}class VI{constructor(t,e){this.timelineController=void 0,this.cueRanges=[],this.trackName=void 0,this.startTime=null,this.endTime=null,this.screen=null,this.timelineController=t,this.trackName=e}dispatchCue(){null!==this.startTime&&(this.timelineController.addCues(this.trackName,this.startTime,this.endTime,this.screen,this.cueRanges),this.startTime=null)}newCue(t,e,s){(null===this.startTime||this.startTime>t)&&(this.startTime=t),this.endTime=e,this.screen=s,this.timelineController.createCaptionsTrack(this.trackName)}reset(){this.cueRanges=[],this.startTime=null}}function jI(t){return t.characteristics&&/transcribes-spoken-dialog/gi.test(t.characteristics)&&/describes-music-and-sound/gi.test(t.characteristics)?"captions":"subtitles"}function WI(t,e){return!!t&&t.kind===jI(e)&&Nw(e,t)}function GI(t,e,s,i){return Math.min(e,i)-Math.max(t,s)}const zI=/\s/,HI={newCue(t,e,s,i){const r=[];let n,o,a,h,l;const c=self.VTTCue||self.TextTrackCue;for(let u=0;u<i.rows.length;u++)if(n=i.rows[u],a=!0,h=0,l="",!n.isEmpty()){var d;for(let t=0;t<n.chars.length;t++)zI.test(n.chars[t].uchar)&&a?h++:(l+=n.chars[t].uchar,a=!1);n.cueStartTime=e,e===s&&(s+=1e-4),h>=16?h--:h++;const i=wI(l.trim()),p=_I(e,s,i);null!=t&&null!=(d=t.cues)&&d.getCueById(p)||(o=new c(e,s,i),o.id=p,o.line=u+1,o.align="left",o.position=10+Math.min(80,10*Math.floor(8*h/32)),r.push(o))}return t&&r.length&&(r.sort((t,e)=>"auto"===t.line||"auto"===e.line?0:t.line>8&&e.line>8?e.line-t.line:t.line-e.line),r.forEach(e=>RT(t,e))),r}};const KI=/(\d+)-(\d+)\/(\d+)/;class qI{constructor(t){this.fetchSetup=void 0,this.requestTimeout=void 0,this.request=null,this.response=null,this.controller=void 0,this.context=null,this.config=null,this.callbacks=null,this.stats=void 0,this.loader=null,this.fetchSetup=t.fetchSetup||QI,this.controller=new self.AbortController,this.stats=new TA}destroy(){this.loader=this.callbacks=this.context=this.config=this.request=null,this.abortInternal(),this.response=null,this.fetchSetup=this.controller=this.stats=null}abortInternal(){this.controller&&!this.stats.loading.end&&(this.stats.aborted=!0,this.controller.abort())}abort(){var t;this.abortInternal(),null!=(t=this.callbacks)&&t.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.response)}load(t,e,s){const i=this.stats;if(i.loading.start)throw new Error("Loader can only be used once.");i.loading.start=self.performance.now();const r=function(t,e){const s={method:"GET",mode:"cors",credentials:"same-origin",signal:e,headers:new self.Headers(oA({},t.headers))};t.rangeEnd&&s.headers.set("Range","bytes="+t.rangeStart+"-"+String(t.rangeEnd-1));return s}(t,this.controller.signal),n="arraybuffer"===t.responseType,o=n?"byteLength":"length",{maxTimeToFirstByteMs:a,maxLoadTimeMs:h}=e.loadPolicy;this.context=t,this.config=e,this.callbacks=s,this.request=this.fetchSetup(t,r),self.clearTimeout(this.requestTimeout),e.timeout=a&&zy(a)?a:h,this.requestTimeout=self.setTimeout(()=>{this.callbacks&&(this.abortInternal(),this.callbacks.onTimeout(i,t,this.response))},e.timeout);(Rw(this.request)?this.request.then(self.fetch):self.fetch(this.request)).then(s=>{var r;this.response=this.loader=s;const o=Math.max(self.performance.now(),i.loading.start);if(self.clearTimeout(this.requestTimeout),e.timeout=h,this.requestTimeout=self.setTimeout(()=>{this.callbacks&&(this.abortInternal(),this.callbacks.onTimeout(i,t,this.response))},h-(o-i.loading.start)),!s.ok){const{status:t,statusText:e}=s;throw new YI(e||"fetch, bad network response",t,s)}i.loading.first=o,i.total=function(t){const e=t.get("Content-Range");if(e){const t=function(t){const e=KI.exec(t);if(e)return parseInt(e[2])-parseInt(e[1])+1}(e);if(zy(t))return t}const s=t.get("Content-Length");if(s)return parseInt(s)}(s.headers)||i.total;const a=null==(r=this.callbacks)?void 0:r.onProgress;return a&&zy(e.highWaterMark)?this.loadProgressively(s,i,t,e.highWaterMark,a):n?s.arrayBuffer():"json"===t.responseType?s.json():s.text()}).then(s=>{var r,n;const a=this.response;if(!a)throw new Error("loader destroyed");self.clearTimeout(this.requestTimeout),i.loading.end=Math.max(self.performance.now(),i.loading.first);const h=s[o];h&&(i.loaded=i.total=h);const l={url:a.url,data:s,code:a.status},c=null==(r=this.callbacks)?void 0:r.onProgress;c&&!zy(e.highWaterMark)&&c(i,t,s,a),null==(n=this.callbacks)||n.onSuccess(l,i,t,a)}).catch(e=>{var s;if(self.clearTimeout(this.requestTimeout),i.aborted)return;const r=e&&e.code||0,n=e?e.message:null;null==(s=this.callbacks)||s.onError({code:r,text:n},t,e?e.details:null,i)})}getCacheAge(){let t=null;if(this.response){const e=this.response.headers.get("age");t=e?parseFloat(e):null}return t}getResponseHeader(t){return this.response?this.response.headers.get(t):null}loadProgressively(t,e,s,i=0,r){const n=new aE,o=t.body.getReader(),a=()=>o.read().then(o=>{if(o.done)return n.dataLength&&r(e,s,n.flush().buffer,t),Promise.resolve(new ArrayBuffer(0));const h=o.value,l=h.length;return e.loaded+=l,l<i||n.dataLength?(n.push(h),n.dataLength>=i&&r(e,s,n.flush().buffer,t)):r(e,s,h.buffer,t),a()}).catch(()=>Promise.reject());return a()}}function QI(t,e){return new self.Request(t.url,e)}class YI extends Error{constructor(t,e,s){super(t),this.code=void 0,this.details=void 0,this.code=e,this.details=s}}const JI=/^age:\s*[\d.]+\s*$/im;class XI{constructor(t){this.xhrSetup=void 0,this.requestTimeout=void 0,this.retryTimeout=void 0,this.retryDelay=void 0,this.config=null,this.callbacks=null,this.context=null,this.loader=null,this.stats=void 0,this.xhrSetup=t&&t.xhrSetup||null,this.stats=new TA,this.retryDelay=0}destroy(){this.callbacks=null,this.abortInternal(),this.loader=null,this.config=null,this.context=null,this.xhrSetup=null}abortInternal(){const t=this.loader;self.clearTimeout(this.requestTimeout),self.clearTimeout(this.retryTimeout),t&&(t.onreadystatechange=null,t.onprogress=null,4!==t.readyState&&(this.stats.aborted=!0,t.abort()))}abort(){var t;this.abortInternal(),null!=(t=this.callbacks)&&t.onAbort&&this.callbacks.onAbort(this.stats,this.context,this.loader)}load(t,e,s){if(this.stats.loading.start)throw new Error("Loader can only be used once.");this.stats.loading.start=self.performance.now(),this.context=t,this.config=e,this.callbacks=s,this.loadInternal()}loadInternal(){const{config:t,context:e}=this;if(!t||!e)return;const s=this.loader=new self.XMLHttpRequest,i=this.stats;i.loading.first=0,i.loaded=0,i.aborted=!1;const r=this.xhrSetup;r?Promise.resolve().then(()=>{if(this.loader===s&&!this.stats.aborted)return r(s,e.url)}).catch(t=>{if(this.loader===s&&!this.stats.aborted)return s.open("GET",e.url,!0),r(s,e.url)}).then(()=>{this.loader!==s||this.stats.aborted||this.openAndSendXhr(s,e,t)}).catch(t=>{var r;null==(r=this.callbacks)||r.onError({code:s.status,text:t.message},e,s,i)}):this.openAndSendXhr(s,e,t)}openAndSendXhr(t,e,s){t.readyState||t.open("GET",e.url,!0);const i=e.headers,{maxTimeToFirstByteMs:r,maxLoadTimeMs:n}=s.loadPolicy;if(i)for(const e in i)t.setRequestHeader(e,i[e]);e.rangeEnd&&t.setRequestHeader("Range","bytes="+e.rangeStart+"-"+(e.rangeEnd-1)),t.onreadystatechange=this.readystatechange.bind(this),t.onprogress=this.loadprogress.bind(this),t.responseType=e.responseType,self.clearTimeout(this.requestTimeout),s.timeout=r&&zy(r)?r:n,this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),s.timeout),t.send()}readystatechange(){const{context:t,loader:e,stats:s}=this;if(!t||!e)return;const i=e.readyState,r=this.config;if(!s.aborted&&i>=2&&(0===s.loading.first&&(s.loading.first=Math.max(self.performance.now(),s.loading.start),r.timeout!==r.loadPolicy.maxLoadTimeMs&&(self.clearTimeout(this.requestTimeout),r.timeout=r.loadPolicy.maxLoadTimeMs,this.requestTimeout=self.setTimeout(this.loadtimeout.bind(this),r.loadPolicy.maxLoadTimeMs-(s.loading.first-s.loading.start)))),4===i)){self.clearTimeout(this.requestTimeout),e.onreadystatechange=null,e.onprogress=null;const i=e.status,h="text"===e.responseType?e.responseText:null;if(i>=200&&i<300){const r=null!=h?h:e.response;if(null!=r){var n,o;s.loading.end=Math.max(self.performance.now(),s.loading.first);const a="arraybuffer"===e.responseType?r.byteLength:r.length;s.loaded=s.total=a,s.bwEstimate=8e3*s.total/(s.loading.end-s.loading.first);const h=null==(n=this.callbacks)?void 0:n.onProgress;h&&h(s,t,r,e);const l={url:e.responseURL,data:r,code:i};return void(null==(o=this.callbacks)||o.onSuccess(l,s,t,e))}}const l=r.loadPolicy.errorRetry;var a;if(Zb(l,s.retry,!1,{url:t.url,data:void 0,code:i}))this.retry(l);else mA.error(`${i} while loading ${t.url}`),null==(a=this.callbacks)||a.onError({code:i,text:e.statusText},t,e,s)}}loadtimeout(){if(!this.config)return;const t=this.config.loadPolicy.timeoutRetry;if(Zb(t,this.stats.retry,!0))this.retry(t);else{var e;mA.warn(`timeout while loading ${null==(e=this.context)?void 0:e.url}`);const t=this.callbacks;t&&(this.abortInternal(),t.onTimeout(this.stats,this.context,this.loader))}}retry(t){const{context:e,stats:s}=this;this.retryDelay=Xb(t,s.retry),s.retry++,mA.warn(`${status?"HTTP Status "+status:"Timeout"} while loading ${null==e?void 0:e.url}, retrying ${s.retry}/${t.maxNumRetry} in ${this.retryDelay}ms`),this.abortInternal(),this.loader=null,self.clearTimeout(this.retryTimeout),this.retryTimeout=self.setTimeout(this.loadInternal.bind(this),this.retryDelay)}loadprogress(t){const e=this.stats;e.loaded=t.loaded,t.lengthComputable&&(e.total=t.total)}getCacheAge(){let t=null;if(this.loader&&JI.test(this.loader.getAllResponseHeaders())){const e=this.loader.getResponseHeader("age");t=e?parseFloat(e):null}return t}getResponseHeader(t){return this.loader&&new RegExp(`^${t}:\\s*[\\d.]+\\s*$`,"im").test(this.loader.getAllResponseHeaders())?this.loader.getResponseHeader(t):null}}const $I=hA(hA({autoStartLoad:!0,startPosition:-1,defaultAudioCodec:void 0,debug:!1,capLevelOnFPSDrop:!1,capLevelToPlayerSize:!1,ignoreDevicePixelRatio:!1,maxDevicePixelRatio:Number.POSITIVE_INFINITY,preferManagedMediaSource:!0,initialLiveManifestSize:1,maxBufferLength:30,backBufferLength:1/0,frontBufferFlushThreshold:1/0,startOnSegmentBoundary:!1,maxBufferSize:6e7,maxFragLookUpTolerance:.25,maxBufferHole:.1,detectStallWithCurrentTimeMs:1250,highBufferWatchdogPeriod:2,nudgeOffset:.1,nudgeMaxRetry:3,nudgeOnVideoHole:!0,liveSyncMode:"edge",liveSyncDurationCount:3,liveSyncOnStallIncrease:1,liveMaxLatencyDurationCount:1/0,liveSyncDuration:void 0,liveMaxLatencyDuration:void 0,maxLiveSyncPlaybackRate:1,liveDurationInfinity:!1,liveBackBufferLength:null,maxMaxBufferLength:600,enableWorker:!0,workerPath:null,enableSoftwareAES:!0,startLevel:void 0,startFragPrefetch:!1,fpsDroppedMonitoringPeriod:5e3,fpsDroppedMonitoringThreshold:.2,appendErrorMaxRetry:3,ignorePlaylistParsingErrors:!1,loader:XI,fLoader:void 0,pLoader:void 0,xhrSetup:void 0,licenseXhrSetup:void 0,licenseResponseCallback:void 0,abrController:class extends lA{constructor(t){super("abr",t.logger),this.hls=void 0,this.lastLevelLoadSec=0,this.lastLoadedFragLevel=-1,this.firstSelection=-1,this._nextAutoLevel=-1,this.nextAutoLevelKey="",this.audioTracksByGroup=null,this.codecTiers=null,this.timer=-1,this.fragCurrent=null,this.partCurrent=null,this.bitrateTestDelay=0,this.rebufferNotice=-1,this.bwEstimator=void 0,this._abandonRulesCheck=t=>{var e;const{fragCurrent:s,partCurrent:i,hls:r}=this,{autoLevelEnabled:n,media:o}=r;if(!s||!o)return;const a=performance.now(),h=i?i.stats:s.stats,l=i?i.duration:s.duration,c=a-h.loading.start,d=r.minAutoLevel,u=s.level,p=this._nextAutoLevel;if(h.aborted||h.loaded&&h.loaded===h.total||u<=d)return this.clearTimer(),void(this._nextAutoLevel=-1);if(!n)return;const f=p>-1&&p!==u,m=!!t||f;if(!m&&(o.paused||!o.playbackRate||!o.readyState))return;const g=r.mainForwardBufferInfo;if(!m&&null===g)return;const y=this.bwEstimator.getEstimateTTFB(),A=Math.abs(o.playbackRate);if(c<=Math.max(y,l/(2*A)*1e3))return;const b=g?g.len/A:0,v=h.loading.first?h.loading.first-h.loading.start:-1,S=h.loaded&&v>-1,E=this.getBwEstimate(),w=r.levels,T=w[u],I=Math.max(h.loaded,Math.round(l*(s.bitrate||T.averageBitrate)/8));let k=S?c-v:c;k<1&&S&&(k=Math.min(c,8*h.loaded/E));const _=S?1e3*h.loaded/k:0,C=y/1e3,D=_?(I-h.loaded)/_:8*I/E+C;if(D<=b)return;const L=_?8*_:E,R=!0===(null==(e=(null==t?void 0:t.details)||this.hls.latestLevelDetails)?void 0:e.live),P=this.hls.config.abrBandWidthUpFactor;let x,M=Number.POSITIVE_INFINITY;for(x=u-1;x>d;x--){const t=w[x].maxBitrate,e=!w[x].details||R;if(M=this.getTimeToLoadFrag(C,L,l*t,e),M<Math.min(b,l+C))break}if(M>=D)return;if(M>10*l)return;S?this.bwEstimator.sample(c-Math.min(y,v),h.loaded):this.bwEstimator.sampleTTFB(c);const B=w[x].maxBitrate;this.getBwEstimate()*P>B&&this.resetEstimator(B);const F=this.findBestLevel(B,d,x,0,b,1,1);F>-1&&(x=F),this.warn(`Fragment ${s.sn}${i?" part "+i.index:""} of level ${u} is loading too slowly;\n Fragment duration: ${s.duration.toFixed(3)}\n Time to underbuffer: ${b.toFixed(3)} s\n Estimated load time for current fragment: ${D.toFixed(3)} s\n Estimated load time for down switch fragment: ${M.toFixed(3)} s\n TTFB estimate: ${0|v} ms\n Current BW estimate: ${zy(E)?0|E:"Unknown"} bps\n New BW estimate: ${0|this.getBwEstimate()} bps\n Switching to level ${x} @ ${0|B} bps`),r.nextLoadLevel=r.nextAutoLevel=x,this.clearTimer();const U=()=>{if(this.clearTimer(),this.fragCurrent===s&&this.hls.loadLevel===x&&x>0){const t=this.getStarvationDelay();if(this.warn(`Aborting inflight request ${x>0?"and switching down":""}\n Fragment duration: ${s.duration.toFixed(3)} s\n Time to underbuffer: ${t.toFixed(3)} s`),s.abortRequests(),this.fragCurrent=this.partCurrent=null,x>d){let e=this.findBestLevel(this.hls.levels[d].bitrate,d,x,0,t,1,1);-1===e&&(e=d),this.hls.nextLoadLevel=this.hls.nextAutoLevel=e,this.resetEstimator(this.hls.levels[e].bitrate)}}};f||D>2*M?U():this.timer=self.setInterval(U,1e3*M),r.trigger(Yy.FRAG_LOAD_EMERGENCY_ABORTED,{frag:s,part:i,stats:h})},this.hls=t,this.bwEstimator=this.initEstimator(),this.registerListeners()}resetEstimator(t){t&&(this.log(`setting initial bwe to ${t}`),this.hls.config.abrEwmaDefaultEstimate=t),this.firstSelection=-1,this.bwEstimator=this.initEstimator()}initEstimator(){const t=this.hls.config;return new rA(t.abrEwmaSlowVoD,t.abrEwmaFastVoD,t.abrEwmaDefaultEstimate)}registerListeners(){const{hls:t}=this;t.on(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.on(Yy.FRAG_LOADING,this.onFragLoading,this),t.on(Yy.FRAG_LOADED,this.onFragLoaded,this),t.on(Yy.FRAG_BUFFERED,this.onFragBuffered,this),t.on(Yy.LEVEL_SWITCHING,this.onLevelSwitching,this),t.on(Yy.LEVEL_LOADED,this.onLevelLoaded,this),t.on(Yy.LEVELS_UPDATED,this.onLevelsUpdated,this),t.on(Yy.MAX_AUTO_LEVEL_UPDATED,this.onMaxAutoLevelUpdated,this),t.on(Yy.ERROR,this.onError,this)}unregisterListeners(){const{hls:t}=this;t&&(t.off(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.off(Yy.FRAG_LOADING,this.onFragLoading,this),t.off(Yy.FRAG_LOADED,this.onFragLoaded,this),t.off(Yy.FRAG_BUFFERED,this.onFragBuffered,this),t.off(Yy.LEVEL_SWITCHING,this.onLevelSwitching,this),t.off(Yy.LEVEL_LOADED,this.onLevelLoaded,this),t.off(Yy.LEVELS_UPDATED,this.onLevelsUpdated,this),t.off(Yy.MAX_AUTO_LEVEL_UPDATED,this.onMaxAutoLevelUpdated,this),t.off(Yy.ERROR,this.onError,this))}destroy(){this.unregisterListeners(),this.clearTimer(),this.hls=this._abandonRulesCheck=null,this.fragCurrent=this.partCurrent=null}onManifestLoading(t,e){this.lastLoadedFragLevel=-1,this.firstSelection=-1,this.lastLevelLoadSec=0,this.fragCurrent=this.partCurrent=null,this.onLevelsUpdated(),this.clearTimer()}onLevelsUpdated(){this.lastLoadedFragLevel>-1&&this.fragCurrent&&(this.lastLoadedFragLevel=this.fragCurrent.level),this._nextAutoLevel=-1,this.onMaxAutoLevelUpdated(),this.codecTiers=null,this.audioTracksByGroup=null}onMaxAutoLevelUpdated(){this.firstSelection=-1,this.nextAutoLevelKey=""}onFragLoading(t,e){const s=e.frag;if(!this.ignoreFragment(s)){var i;if(!s.bitrateTest)this.fragCurrent=s,this.partCurrent=null!=(i=e.part)?i:null;this.clearTimer(),this.timer=self.setInterval(this._abandonRulesCheck,100)}}onLevelSwitching(t,e){this.clearTimer()}onError(t,e){if(!e.fatal)switch(e.details){case Qy.BUFFER_ADD_CODEC_ERROR:case Qy.BUFFER_APPEND_ERROR:this.lastLoadedFragLevel=-1,this.firstSelection=-1;break;case Qy.FRAG_LOAD_TIMEOUT:{const t=e.frag,{fragCurrent:s,partCurrent:i}=this;if(t&&s&&t.sn===s.sn&&t.level===s.level){const e=performance.now(),s=i?i.stats:t.stats,r=e-s.loading.start,n=s.loading.first?s.loading.first-s.loading.start:-1;if(s.loaded&&n>-1){const t=this.bwEstimator.getEstimateTTFB();this.bwEstimator.sample(r-Math.min(t,n),s.loaded)}else this.bwEstimator.sampleTTFB(r)}break}}}getTimeToLoadFrag(t,e,s,i){return t+s/e+(i?t+this.lastLevelLoadSec:0)}onLevelLoaded(t,e){const s=this.hls.config,{loading:i}=e.stats,r=i.end-i.first;zy(r)&&(this.lastLevelLoadSec=r/1e3),e.details.live?this.bwEstimator.update(s.abrEwmaSlowLive,s.abrEwmaFastLive):this.bwEstimator.update(s.abrEwmaSlowVoD,s.abrEwmaFastVoD),this.timer>-1&&this._abandonRulesCheck(e.levelInfo)}onFragLoaded(t,{frag:e,part:s}){const i=s?s.stats:e.stats;if(e.type===tA&&this.bwEstimator.sampleTTFB(i.loading.first-i.loading.start),!this.ignoreFragment(e)){if(this.clearTimer(),e.level===this._nextAutoLevel&&(this._nextAutoLevel=-1),this.firstSelection=-1,this.hls.config.abrMaxWithRealBitrate){const t=s?s.duration:e.duration,r=this.hls.levels[e.level],n=(r.loaded?r.loaded.bytes:0)+i.loaded,o=(r.loaded?r.loaded.duration:0)+t;r.loaded={bytes:n,duration:o},r.realBitrate=Math.round(8*n/o)}if(e.bitrateTest){const t={stats:i,frag:e,part:s,id:e.type};this.onFragBuffered(Yy.FRAG_BUFFERED,t),e.bitrateTest=!1}else this.lastLoadedFragLevel=e.level}}onFragBuffered(t,e){const{frag:s,part:i}=e,r=null!=i&&i.stats.loaded?i.stats:s.stats;if(r.aborted)return;if(this.ignoreFragment(s))return;const n=r.parsing.end-r.loading.start-Math.min(r.loading.first-r.loading.start,this.bwEstimator.getEstimateTTFB());this.bwEstimator.sample(n,r.loaded),r.bwEstimate=this.getBwEstimate(),s.bitrateTest?this.bitrateTestDelay=n/1e3:this.bitrateTestDelay=0}ignoreFragment(t){return t.type!==tA||"initSegment"===t.sn}clearTimer(){this.timer>-1&&(self.clearInterval(this.timer),this.timer=-1)}get firstAutoLevel(){const{maxAutoLevel:t,minAutoLevel:e}=this.hls,s=this.getBwEstimate(),i=this.hls.config.maxStarvationDelay,r=this.findBestLevel(s,e,t,0,i,1,1);if(r>-1)return r;const n=this.hls.firstLevel,o=Math.min(Math.max(n,e),t);return this.warn(`Could not find best starting auto level. Defaulting to first in playlist ${n} clamped to ${o}`),o}get forcedAutoLevel(){return this.nextAutoLevelKey?-1:this._nextAutoLevel}get nextAutoLevel(){const t=this.forcedAutoLevel,e=this.bwEstimator.canEstimate(),s=this.lastLoadedFragLevel>-1;if(!(-1===t||e&&s&&this.nextAutoLevelKey!==this.getAutoLevelKey()))return t;const i=e&&s?this.getNextABRAutoLevel():this.firstAutoLevel;if(-1!==t){const e=this.hls.levels;if(e.length>Math.max(t,i)&&e[t].loadError<=e[i].loadError)return t}return this._nextAutoLevel=i,this.nextAutoLevelKey=this.getAutoLevelKey(),i}getAutoLevelKey(){return`${this.getBwEstimate()}_${this.getStarvationDelay().toFixed(2)}`}getNextABRAutoLevel(){const{fragCurrent:t,partCurrent:e,hls:s}=this;if(s.levels.length<=1)return s.loadLevel;const{maxAutoLevel:i,config:r,minAutoLevel:n}=s,o=e?e.duration:t?t.duration:0,a=this.getBwEstimate(),h=this.getStarvationDelay();let l=r.abrBandWidthFactor,c=r.abrBandWidthUpFactor;if(h){const t=this.findBestLevel(a,n,i,h,0,l,c);if(t>=0)return this.rebufferNotice=-1,t}let d=o?Math.min(o,r.maxStarvationDelay):r.maxStarvationDelay;if(!h){const t=this.bitrateTestDelay;if(t){d=(o?Math.min(o,r.maxLoadingDelay):r.maxLoadingDelay)-t,this.info(`bitrate test took ${Math.round(1e3*t)}ms, set first fragment max fetchDuration to ${Math.round(1e3*d)} ms`),l=c=1}}const u=this.findBestLevel(a,n,i,h,d,l,c);if(this.rebufferNotice!==u&&(this.rebufferNotice=u,this.info(`${h?"rebuffering expected":"buffer is empty"}, optimal quality level ${u}`)),u>-1)return u;const p=s.levels[n],f=s.loadLevelObj;return f&&(null==p?void 0:p.bitrate)<f.bitrate?n:s.loadLevel}getStarvationDelay(){const t=this.hls,e=t.media;if(!e)return 1/0;const s=e&&0!==e.playbackRate?Math.abs(e.playbackRate):1,i=t.mainForwardBufferInfo;return(i?i.len:0)/s}getBwEstimate(){return this.bwEstimator.canEstimate()?this.bwEstimator.getEstimate():this.hls.config.abrEwmaDefaultEstimate}findBestLevel(t,e,s,i,r,n,o){var a;const h=i+r,l=this.lastLoadedFragLevel,c=-1===l?this.hls.firstLevel:l,{fragCurrent:d,partCurrent:u}=this,{levels:p,allAudioTracks:f,loadLevel:m,config:g}=this.hls;if(1===p.length)return 0;const y=p[c],A=!(null==(a=this.hls.latestLevelDetails)||!a.live),b=-1===m||-1===l;let v,S="SDR",E=(null==y?void 0:y.frameRate)||0;const{audioPreference:w,videoPreference:T}=g,I=this.audioTracksByGroup||(this.audioTracksByGroup=Ub(f));let k=-1;if(b){if(-1!==this.firstSelection)return this.firstSelection;const i=this.codecTiers||(this.codecTiers=function(t,e,s,i){return t.slice(s,i+1).reduce((t,s,i)=>{if(!s.codecSet)return t;const r=s.audioGroups;let n=t[s.codecSet];n||(t[s.codecSet]=n={minBitrate:1/0,minHeight:1/0,minFramerate:1/0,minIndex:i,maxScore:0,videoRanges:{SDR:0},channels:{2:0},hasDefaultAudio:!r,fragmentError:0}),n.minBitrate=Math.min(n.minBitrate,s.bitrate);const o=Math.min(s.height,s.width);return n.minHeight=Math.min(n.minHeight,o),n.minFramerate=Math.min(n.minFramerate,s.frameRate),n.minIndex=Math.min(n.minIndex,i),n.maxScore=Math.max(n.maxScore,s.score),n.fragmentError+=s.fragmentError,n.videoRanges[s.videoRange]=(n.videoRanges[s.videoRange]||0)+1,r&&r.forEach(t=>{if(!t)return;const s=e.groups[t];s&&(n.hasDefaultAudio=n.hasDefaultAudio||e.hasDefaultAudio?s.hasDefault:s.hasAutoSelect||!e.hasDefaultAudio&&!e.hasAutoSelectAudio,Object.keys(s.channels).forEach(t=>{n.channels[t]=(n.channels[t]||0)+s.channels[t]}))}),t},{})}(p,I,e,s)),r=function(t,e,s,i,r){const n=Object.keys(t),o=null==i?void 0:i.channels,a=null==i?void 0:i.audioCodec,h=null==r?void 0:r.videoCodec,l=o&&2===parseInt(o);let c=!1,d=!1,u=1/0,p=1/0,f=1/0,m=1/0,g=0,y=[];const{preferHDR:A,allowedVideoRanges:b}=Mb(e,r);for(let e=n.length;e--;){const s=t[n[e]];c||(c=s.channels[2]>0),u=Math.min(u,s.minHeight),p=Math.min(p,s.minFramerate),f=Math.min(f,s.minBitrate);const i=b.filter(t=>s.videoRanges[t]>0);i.length>0&&(d=!0)}u=zy(u)?u:0,p=zy(p)?p:0;const v=Math.max(1080,u),S=Math.max(30,p);f=zy(f)?f:s,s=Math.max(f,s),d||(e=void 0);const E=n.length>1,w=n.reduce((e,i)=>{const r=t[i];if(i===e)return e;if(y=d?b.filter(t=>r.videoRanges[t]>0):[],E){if(r.minBitrate>s)return Fb(i,`min bitrate of ${r.minBitrate} > current estimate of ${s}`),e;if(!r.hasDefaultAudio)return Fb(i,"no renditions with default or auto-select sound found"),e;if(a&&i.indexOf(a.substring(0,4))%5!=0)return Fb(i,`audio codec preference "${a}" not found`),e;if(o&&!l){if(!r.channels[o])return Fb(i,`no renditions with ${o} channel sound found (channels options: ${Object.keys(r.channels)})`),e}else if((!a||l)&&c&&0===r.channels[2])return Fb(i,"no renditions with stereo sound found"),e;if(r.minHeight>v)return Fb(i,`min resolution of ${r.minHeight} > maximum of ${v}`),e;if(r.minFramerate>S)return Fb(i,`min framerate of ${r.minFramerate} > maximum of ${S}`),e;if(!y.some(t=>r.videoRanges[t]>0))return Fb(i,`no variants with VIDEO-RANGE of ${Bb(y)} found`),e;if(h&&i.indexOf(h.substring(0,4))%5!=0)return Fb(i,`video codec preference "${h}" not found`),e;if(r.maxScore<g)return Fb(i,`max score of ${r.maxScore} < selected max of ${g}`),e}return e&&(ub(i)>=ub(e)||r.fragmentError>t[e].fragmentError)?e:(m=r.minIndex,g=r.maxScore,i)},void 0);return{codecSet:w,videoRanges:y,preferHDR:A,minFramerate:p,minBitrate:f,minIndex:m}}(i,S,t,w,T),{codecSet:n,videoRanges:o,minFramerate:a,minBitrate:h,minIndex:l,preferHDR:c}=r;k=l,v=n,S=c?o[o.length-1]:o[0],E=a,t=Math.max(t,h),this.log(`picked start tier ${Bb(r)}`)}else v=null==y?void 0:y.codecSet,S=null==y?void 0:y.videoRange;const _=u?u.duration:d?d.duration:0,C=this.bwEstimator.getEstimateTTFB()/1e3,D=[];for(let a=s;a>=e;a--){var L;const e=p[a],d=a>c;if(!e)continue;if(g.useMediaCapabilities&&!e.supportedResult&&!e.supportedPromise){const s=navigator.mediaCapabilities;"function"==typeof(null==s?void 0:s.decodingInfo)&&(wb(e,I,S,E,t,w)||ZA(e.videoCodec))?(e.supportedPromise=Tb(e,I,s),e.supportedPromise.then(t=>{if(!this.hls)return;e.supportedResult=t;const s=this.hls.levels,i=s.indexOf(e);t.error?this.warn(`MediaCapabilities decodingInfo error: "${t.error}" for level ${i} ${Bb(t)}`):t.supported||(this.warn(`Unsupported MediaCapabilities decodingInfo result for level ${i} ${Bb(t)}`),i>-1&&s.length>1&&(this.log(`Removing unsupported level ${i}`),this.hls.removeLevel(i),-1===this.hls.loadLevel&&(this.hls.nextLoadLevel=0)))})):e.supportedResult=vb}if((v&&e.codecSet!==v||S&&e.videoRange!==S||d&&E>e.frameRate||!d&&E>0&&E<e.frameRate||e.supportedResult&&(null==(L=e.supportedResult.decodingInfoResults)||!L[0].smooth))&&(!b||a!==k)){D.push(a);continue}const f=e.details,y=(u?null==f?void 0:f.partTarget:null==f?void 0:f.averagetargetduration)||_;let T;T=d?o*t:n*t;const R=_&&i>=2*_&&0===r?e.averageBitrate:e.maxBitrate,P=this.getTimeToLoadFrag(C,T,R*y,void 0===f);if(T>=R&&(a===l||0===e.loadError&&0===e.fragmentError)&&(P<=C||!zy(P)||A&&!this.bitrateTestDelay||P<h)){const t=this.forcedAutoLevel;return a===m||-1!==t&&t===m||(D.length&&this.trace(`Skipped level(s) ${D.join(",")} of ${s} max with CODECS and VIDEO-RANGE:"${p[D[0]].codecs}" ${p[D[0]].videoRange}; not compatible with "${v}" ${S}`),this.info(`switch candidate:${c}->${a} adjustedbw(${Math.round(T)})-bitrate=${Math.round(T-R)} ttfb:${C.toFixed(1)} avgDuration:${y.toFixed(1)} maxFetchDuration:${h.toFixed(1)} fetchDuration:${P.toFixed(1)} firstSelection:${b} codecSet:${e.codecSet} videoRange:${e.videoRange} hls.loadLevel:${m}`)),b&&(this.firstSelection=a),a}}return-1}set nextAutoLevel(t){const e=this.deriveNextAutoLevel(t);this._nextAutoLevel!==e&&(this.nextAutoLevelKey="",this._nextAutoLevel=e)}deriveNextAutoLevel(t){const{maxAutoLevel:e,minAutoLevel:s}=this.hls;return Math.min(Math.max(t,s),e)}},bufferController:class extends lA{constructor(t,e){var s;super("buffer-controller",t.logger),this.hls=void 0,this.fragmentTracker=void 0,this.details=null,this._objectUrl=null,this.operationQueue=null,this.bufferCodecEventsTotal=0,this.media=null,this.mediaSource=null,this.lastMpegAudioChunk=null,this.blockedAudioAppend=null,this.lastVideoAppendEnd=0,this.appendSource=void 0,this.transferData=void 0,this.overrides=void 0,this.appendErrors={audio:0,video:0,audiovideo:0},this.tracks={},this.sourceBuffers=[[null,null],[null,null]],this._onEndStreaming=t=>{var e;this.hls&&"open"===(null==(e=this.mediaSource)?void 0:e.readyState)&&this.hls.pauseBuffering()},this._onStartStreaming=t=>{this.hls&&this.hls.resumeBuffering()},this._onMediaSourceOpen=t=>{const{media:e,mediaSource:s}=this;t&&this.log("Media source opened"),e&&s&&(s.removeEventListener("sourceopen",this._onMediaSourceOpen),e.removeEventListener("emptied",this._onMediaEmptied),this.updateDuration(),this.hls.trigger(Yy.MEDIA_ATTACHED,{media:e,mediaSource:s}),null!==this.mediaSource&&this.checkPendingTracks())},this._onMediaSourceClose=()=>{this.log("Media source closed")},this._onMediaSourceEnded=()=>{this.log("Media source ended")},this._onMediaEmptied=()=>{const{mediaSrc:t,_objectUrl:e}=this;t!==e&&this.error(`Media element src was set while attaching MediaSource (${e} > ${t})`)},this.hls=t,this.fragmentTracker=e,this.appendSource=(s=gA(t.config.preferManagedMediaSource),"undefined"!=typeof self&&s===self.ManagedMediaSource),this.initTracks(),this.registerListeners()}hasSourceTypes(){return Object.keys(this.tracks).length>0}destroy(){this.unregisterListeners(),this.details=null,this.lastMpegAudioChunk=this.blockedAudioAppend=null,this.transferData=this.overrides=void 0,this.operationQueue&&(this.operationQueue.destroy(),this.operationQueue=null),this.hls=this.fragmentTracker=null,this._onMediaSourceOpen=this._onMediaSourceClose=null,this._onMediaSourceEnded=null,this._onStartStreaming=this._onEndStreaming=null}registerListeners(){const{hls:t}=this;t.on(Yy.MEDIA_ATTACHING,this.onMediaAttaching,this),t.on(Yy.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.on(Yy.MANIFEST_PARSED,this.onManifestParsed,this),t.on(Yy.BUFFER_RESET,this.onBufferReset,this),t.on(Yy.BUFFER_APPENDING,this.onBufferAppending,this),t.on(Yy.BUFFER_CODECS,this.onBufferCodecs,this),t.on(Yy.BUFFER_EOS,this.onBufferEos,this),t.on(Yy.BUFFER_FLUSHING,this.onBufferFlushing,this),t.on(Yy.LEVEL_UPDATED,this.onLevelUpdated,this),t.on(Yy.FRAG_PARSED,this.onFragParsed,this),t.on(Yy.FRAG_CHANGED,this.onFragChanged,this),t.on(Yy.ERROR,this.onError,this)}unregisterListeners(){const{hls:t}=this;t.off(Yy.MEDIA_ATTACHING,this.onMediaAttaching,this),t.off(Yy.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.off(Yy.MANIFEST_PARSED,this.onManifestParsed,this),t.off(Yy.BUFFER_RESET,this.onBufferReset,this),t.off(Yy.BUFFER_APPENDING,this.onBufferAppending,this),t.off(Yy.BUFFER_CODECS,this.onBufferCodecs,this),t.off(Yy.BUFFER_EOS,this.onBufferEos,this),t.off(Yy.BUFFER_FLUSHING,this.onBufferFlushing,this),t.off(Yy.LEVEL_UPDATED,this.onLevelUpdated,this),t.off(Yy.FRAG_PARSED,this.onFragParsed,this),t.off(Yy.FRAG_CHANGED,this.onFragChanged,this),t.off(Yy.ERROR,this.onError,this)}transferMedia(){const{media:t,mediaSource:e}=this;if(!t)return null;const s={};if(this.operationQueue){const t=this.isUpdating();t||this.operationQueue.removeBlockers();const e=this.isQueued();(t||e)&&this.warn(`Transfering MediaSource with${e?" operations in queue":""}${t?" updating SourceBuffer(s)":""} ${this.operationQueue}`),this.operationQueue.destroy()}const i=this.transferData;return!this.sourceBufferCount&&i&&i.mediaSource===e?oA(s,i.tracks):this.sourceBuffers.forEach(t=>{const[e]=t;e&&(s[e]=oA({},this.tracks[e]),this.removeBuffer(e)),t[0]=t[1]=null}),{media:t,mediaSource:e,tracks:s}}initTracks(){this.sourceBuffers=[[null,null],[null,null]],this.tracks={},this.resetQueue(),this.resetAppendErrors(),this.lastMpegAudioChunk=this.blockedAudioAppend=null,this.lastVideoAppendEnd=0}onManifestLoading(){this.bufferCodecEventsTotal=0,this.details=null}onManifestParsed(t,e){var s;let i=2;(e.audio&&!e.video||!e.altAudio)&&(i=1),this.bufferCodecEventsTotal=i,this.log(`${i} bufferCodec event(s) expected.`),null!=(s=this.transferData)&&s.mediaSource&&this.sourceBufferCount&&i&&this.bufferCreated()}onMediaAttaching(t,e){const s=this.media=e.media,i=gA(this.appendSource);if(this.transferData=this.overrides=void 0,s&&i){const t=!!e.mediaSource;(t||e.overrides)&&(this.transferData=e,this.overrides=e.overrides);const r=this.mediaSource=e.mediaSource||new i;if(this.assignMediaSource(r),t)this._objectUrl=s.src,this.attachTransferred();else{const t=this._objectUrl=self.URL.createObjectURL(r);if(this.appendSource)try{s.removeAttribute("src");const e=self.ManagedMediaSource;s.disableRemotePlayback=s.disableRemotePlayback||e&&r instanceof e,zw(s),function(t,e){const s=self.document.createElement("source");s.type="video/mp4",s.src=e,t.appendChild(s)}(s,t),s.load()}catch(e){s.src=t}else s.src=t}s.addEventListener("emptied",this._onMediaEmptied)}}assignMediaSource(t){var e,s;this.log(`${(null==(e=this.transferData)?void 0:e.mediaSource)===t?"transferred":"created"} media source: ${null==(s=t.constructor)?void 0:s.name}`),t.addEventListener("sourceopen",this._onMediaSourceOpen),t.addEventListener("sourceended",this._onMediaSourceEnded),t.addEventListener("sourceclose",this._onMediaSourceClose),this.appendSource&&(t.addEventListener("startstreaming",this._onStartStreaming),t.addEventListener("endstreaming",this._onEndStreaming))}attachTransferred(){const t=this.media,e=this.transferData;if(!e||!t)return;const s=this.tracks,i=e.tracks,r=i?Object.keys(i):null,n=r?r.length:0,o=()=>{this.media&&this.mediaSourceOpenOrEnded&&this._onMediaSourceOpen()};if(i&&r&&n){if(!this.tracksReady)return this.hls.config.startFragPrefetch=!0,void this.log("attachTransferred: waiting for SourceBuffer track info");if(this.log(`attachTransferred: (bufferCodecEventsTotal ${this.bufferCodecEventsTotal})\nrequired tracks: ${Bb(s,(t,e)=>"initSegment"===t?void 0:e)};\ntransfer tracks: ${Bb(i,(t,e)=>"initSegment"===t?void 0:e)}}`),!yA(i,s)){e.mediaSource=null,e.tracks=void 0;const r=t.currentTime,n=this.details,o=Math.max(r,(null==n?void 0:n.fragments[0].start)||0);return o-r>1?void this.log(`attachTransferred: waiting for playback to reach new tracks start time ${r} -> ${o}`):(this.warn(`attachTransferred: resetting MediaSource for incompatible tracks ("${Object.keys(i)}"->"${Object.keys(s)}") start time: ${o} currentTime: ${r}`),this.onMediaDetaching(Yy.MEDIA_DETACHING,{}),this.onMediaAttaching(Yy.MEDIA_ATTACHING,e),void(t.currentTime=o))}this.transferData=void 0,r.forEach(t=>{const e=t,s=i[e];if(s){const t=s.buffer;if(t){const i=this.fragmentTracker,r=s.id;if(i.hasFragments(r)||i.hasParts(r)){const s=Lv.getBuffered(t);i.detectEvictedFragments(e,s,r,null,!0)}const n=Hw(e),o=[e,t];this.sourceBuffers[n]=o,t.updating&&this.operationQueue&&this.operationQueue.prependBlocker(e),this.trackSourceBuffer(e,s)}}}),o(),this.bufferCreated()}else this.log("attachTransferred: MediaSource w/o SourceBuffers"),o()}get mediaSourceOpenOrEnded(){var t;const e=null==(t=this.mediaSource)?void 0:t.readyState;return"open"===e||"ended"===e}onMediaDetaching(t,e){const s=!!e.transferMedia;this.transferData=this.overrides=void 0;const{media:i,mediaSource:r,_objectUrl:n}=this;if(r){if(this.log("media source "+(s?"transferring":"detaching")),s)this.sourceBuffers.forEach(([t])=>{t&&this.removeBuffer(t)}),this.resetQueue();else{if(this.mediaSourceOpenOrEnded){const t="open"===r.readyState;try{const e=r.sourceBuffers;for(let s=e.length;s--;)t&&e[s].abort(),r.removeSourceBuffer(e[s]);t&&r.endOfStream()}catch(t){this.warn(`onMediaDetaching: ${t.message} while calling endOfStream`)}}this.sourceBufferCount&&this.onBufferReset()}r.removeEventListener("sourceopen",this._onMediaSourceOpen),r.removeEventListener("sourceended",this._onMediaSourceEnded),r.removeEventListener("sourceclose",this._onMediaSourceClose),this.appendSource&&(r.removeEventListener("startstreaming",this._onStartStreaming),r.removeEventListener("endstreaming",this._onEndStreaming)),this.mediaSource=null,this._objectUrl=null}i&&(i.removeEventListener("emptied",this._onMediaEmptied),s||(n&&self.URL.revokeObjectURL(n),this.mediaSrc===n?(i.removeAttribute("src"),this.appendSource&&zw(i),i.load()):this.warn("media|source.src was changed by a third party - skip cleanup")),this.media=null),this.hls.trigger(Yy.MEDIA_DETACHED,e)}onBufferReset(){this.sourceBuffers.forEach(([t])=>{t&&this.resetBuffer(t)}),this.initTracks()}resetBuffer(t){var e;const s=null==(e=this.tracks[t])?void 0:e.buffer;if(this.removeBuffer(t),s)try{var i;null!=(i=this.mediaSource)&&i.sourceBuffers.length&&this.mediaSource.removeSourceBuffer(s)}catch(e){this.warn(`onBufferReset ${t}`,e)}delete this.tracks[t]}removeBuffer(t){this.removeBufferListeners(t),this.sourceBuffers[Hw(t)]=[null,null];const e=this.tracks[t];e&&(e.buffer=void 0)}resetQueue(){this.operationQueue&&this.operationQueue.destroy(),this.operationQueue=new Vw(this.tracks)}onBufferCodecs(t,e){const s=this.tracks,i=Object.keys(e);this.log(`BUFFER_CODECS: "${i}" (current SB count ${this.sourceBufferCount})`);const r="audiovideo"in e&&(s.audio||s.video)||s.audiovideo&&("audio"in e||"video"in e),n=!r&&this.sourceBufferCount&&this.media&&i.some(t=>!s[t]);r||n?this.warn(`Unsupported transition between "${Object.keys(s)}" and "${i}" SourceBuffers`):(i.forEach(t=>{var i,r,n;const o=e[t],{id:a,codec:h,levelCodec:l,container:c,metadata:d,supplemental:u}=o;let p=s[t];const f=null==(i=this.transferData)||null==(r=i.tracks)?void 0:r[t],m=null!=f&&f.buffer?f:p,g=(null==m?void 0:m.pendingCodec)||(null==m?void 0:m.codec),y=null==m?void 0:m.levelCodec;p||(p=s[t]={buffer:void 0,listeners:[],codec:h,supplemental:u,container:c,levelCodec:l,metadata:d,id:a});const A=gb(g,y),b=null==A?void 0:A.replace(jw,"$1");let v=gb(h,l);const S=null==(n=v)?void 0:n.replace(jw,"$1");v&&A&&b!==S&&("audio"===t.slice(0,5)&&(v=mb(v,this.appendSource)),this.log(`switching codec ${g} to ${v}`),v!==(p.pendingCodec||p.codec)&&(p.pendingCodec=v),p.container=c,this.appendChangeType(t,c,v))}),(this.tracksReady||this.sourceBufferCount)&&(e.tracks=this.sourceBufferTracks),this.sourceBufferCount||this.mediaSourceOpenOrEnded&&this.checkPendingTracks())}get sourceBufferTracks(){return Object.keys(this.tracks).reduce((t,e)=>{const s=this.tracks[e];return t[e]={id:s.id,container:s.container,codec:s.codec,levelCodec:s.levelCodec},t},{})}appendChangeType(t,e,s){const i=`${e};codecs=${s}`,r={label:`change-type=${i}`,execute:()=>{const r=this.tracks[t];if(r){const n=r.buffer;null!=n&&n.changeType&&(this.log(`changing ${t} sourceBuffer type to ${i}`),n.changeType(i),r.codec=s,r.container=e)}this.shiftAndExecuteNext(t)},onStart:()=>{},onComplete:()=>{},onError:e=>{this.warn(`Failed to change ${t} SourceBuffer type`,e)}};this.append(r,t,this.isPending(this.tracks[t]))}blockAudio(t){var e;const s=t.start,i=s+.05*t.duration;if(!0===(null==(e=this.fragmentTracker.getAppendedFrag(s,tA))?void 0:e.gap))return;const r={label:"block-audio",execute:()=>{var t;const e=this.tracks.video;(this.lastVideoAppendEnd>i||null!=e&&e.buffer&&Lv.isBuffered(e.buffer,i)||!0===(null==(t=this.fragmentTracker.getAppendedFrag(i,tA))?void 0:t.gap))&&(this.blockedAudioAppend=null,this.shiftAndExecuteNext("audio"))},onStart:()=>{},onComplete:()=>{},onError:t=>{this.warn("Error executing block-audio operation",t)}};this.blockedAudioAppend={op:r,frag:t},this.append(r,"audio",!0)}unblockAudio(){const{blockedAudioAppend:t,operationQueue:e}=this;t&&e&&(this.blockedAudioAppend=null,e.unblockAudio(t.op))}onBufferAppending(t,e){const{tracks:s}=this,{data:i,type:r,parent:n,frag:o,part:a,chunkMeta:h}=e,l=h.buffering[r],c=o.sn,d=self.performance.now();l.start=d;const u=o.stats.buffering,p=a?a.stats.buffering:null;0===u.start&&(u.start=d),p&&0===p.start&&(p.start=d);const f=s.audio;let m=!1;"audio"===r&&"audio/mpeg"===(null==f?void 0:f.container)&&(m=!this.lastMpegAudioChunk||1===h.id||this.lastMpegAudioChunk.sn!==h.sn,this.lastMpegAudioChunk=h);const g=this.tracks.video,y=null==g?void 0:g.buffer;if(y&&"initSegment"!==c){const t=a||o,e=this.blockedAudioAppend;if("audio"!==r||"main"===n||this.blockedAudioAppend){if("video"===r){const s=t.end;if(e){const t=e.frag.start;(s>t||s<this.lastVideoAppendEnd||Lv.isBuffered(y,t))&&this.unblockAudio()}this.lastVideoAppendEnd=s}}else{const e=t.start+.05*t.duration,s=y.buffered,i=this.currentOp("video");s.length||i?!i&&!Lv.isBuffered(y,e)&&this.lastVideoAppendEnd<e&&this.blockAudio(t):this.blockAudio(t)}}const A=(a||o).start,b={label:`append-${r}`,execute:()=>{if(l.executeStart=self.performance.now(),m){const t=this.tracks[r];if(t){const e=t.buffer;if(e){const t=A-e.timestampOffset;Math.abs(t)>=.1&&(this.log(`Updating audio SourceBuffer timestampOffset to ${A} (delta: ${t}) sn: ${c})`),e.timestampOffset=A)}}}this.appendExecutor(i,r)},onStart:()=>{},onComplete:()=>{const t=self.performance.now();l.executeEnd=l.end=t,0===u.first&&(u.first=t),p&&0===p.first&&(p.first=t);const e={};this.sourceBuffers.forEach(([t,s])=>{t&&(e[t]=Lv.getBuffered(s))}),this.appendErrors[r]=0,"audio"===r||"video"===r?this.appendErrors.audiovideo=0:(this.appendErrors.audio=0,this.appendErrors.video=0),this.hls.trigger(Yy.BUFFER_APPENDED,{type:r,frag:o,part:a,chunkMeta:h,parent:o.type,timeRanges:e})},onError:t=>{var e;const s={type:qy.MEDIA_ERROR,parent:o.type,details:Qy.BUFFER_APPEND_ERROR,sourceBufferName:r,frag:o,part:a,chunkMeta:h,error:t,err:t,fatal:!1},i=null==(e=this.media)?void 0:e.error;if(t.code===DOMException.QUOTA_EXCEEDED_ERR)s.details=Qy.BUFFER_FULL_ERROR;else if(t.code===DOMException.INVALID_STATE_ERR&&this.mediaSourceOpenOrEnded&&!i)s.errorAction=av(!0);else if(t.name===Ww&&0===this.sourceBufferCount)s.errorAction=av(!0);else{const t=++this.appendErrors[r];this.warn(`Failed ${t}/${this.hls.config.appendErrorMaxRetry} times to append segment in "${r}" sourceBuffer (${i||"no media error"})`),(t>=this.hls.config.appendErrorMaxRetry||i)&&(s.fatal=!0)}this.hls.trigger(Yy.ERROR,s)}};this.append(b,r,this.isPending(this.tracks[r]))}getFlushOp(t,e,s){return this.log(`queuing "${t}" remove ${e}-${s}`),{label:"remove",execute:()=>{this.removeExecutor(t,e,s)},onStart:()=>{},onComplete:()=>{this.hls.trigger(Yy.BUFFER_FLUSHED,{type:t})},onError:i=>{this.warn(`Failed to remove ${e}-${s} from "${t}" SourceBuffer`,i)}}}onBufferFlushing(t,e){const{type:s,startOffset:i,endOffset:r}=e;s?this.append(this.getFlushOp(s,i,r),s):this.sourceBuffers.forEach(([t])=>{t&&this.append(this.getFlushOp(t,i,r),t)})}onFragParsed(t,e){const{frag:s,part:i}=e,r=[],n=i?i.elementaryStreams:s.elementaryStreams;n[_A]?r.push("audiovideo"):(n[IA]&&r.push("audio"),n[kA]&&r.push("video"));0===r.length&&this.warn(`Fragments must have at least one ElementaryStreamType set. type: ${s.type} level: ${s.level} sn: ${s.sn}`),this.blockBuffers(()=>{const t=self.performance.now();s.stats.buffering.end=t,i&&(i.stats.buffering.end=t);const e=i?i.stats:s.stats;this.hls.trigger(Yy.FRAG_BUFFERED,{frag:s,part:i,stats:e,id:s.type})},r).catch(t=>{this.warn(`Fragment buffered callback ${t}`),this.stepOperationQueue(this.sourceBufferTypes)})}onFragChanged(t,e){this.trimBuffers()}get bufferedToEnd(){return this.sourceBufferCount>0&&!this.sourceBuffers.some(([t])=>{var e,s;return t&&(!(null!=(e=this.tracks[t])&&e.ended)||(null==(s=this.tracks[t])?void 0:s.ending))})}onBufferEos(t,e){var s;this.sourceBuffers.forEach(([t])=>{if(t){const s=this.tracks[t];e.type&&e.type!==t||(s.ending=!0,s.ended||(s.ended=!0,this.log(`${t} buffer reached EOS`)))}});const i=!1!==(null==(s=this.overrides)?void 0:s.endOfStream);this.sourceBufferCount>0&&!this.sourceBuffers.some(([t])=>{var e;return t&&!(null!=(e=this.tracks[t])&&e.ended)})&&(i?(this.log("Queueing EOS"),this.blockUntilOpen(()=>{this.tracksEnded();const{mediaSource:t}=this;t&&"open"===t.readyState?(this.log("Calling mediaSource.endOfStream()"),t.endOfStream(),this.hls.trigger(Yy.BUFFERED_TO_END,void 0)):t&&this.log(`Could not call mediaSource.endOfStream(). mediaSource.readyState: ${t.readyState}`)})):(this.tracksEnded(),this.hls.trigger(Yy.BUFFERED_TO_END,void 0)))}tracksEnded(){this.sourceBuffers.forEach(([t])=>{if(null!==t){const e=this.tracks[t];e&&(e.ending=!1)}})}onLevelUpdated(t,{details:e}){e.fragments.length&&(this.details=e,this.updateDuration())}updateDuration(){const t=this.getDurationAndRange();t&&this.blockUntilOpen(()=>this.updateMediaSource(t))}onError(t,e){if(e.details===Qy.BUFFER_APPEND_ERROR&&e.frag){var s;const t=null==(s=e.errorAction)?void 0:s.nextAutoLevel;zy(t)&&t!==e.frag.level&&this.resetAppendErrors()}}resetAppendErrors(){this.appendErrors={audio:0,video:0,audiovideo:0}}trimBuffers(){const{hls:t,details:e,media:s}=this;if(!s||null===e)return;if(!this.sourceBufferCount)return;const i=t.config,r=s.currentTime,n=e.levelTargetDuration,o=e.live&&null!==i.liveBackBufferLength?i.liveBackBufferLength:i.backBufferLength;if(zy(o)&&o>=0){const t=Math.max(o,n),e=Math.floor(r/n)*n-t;this.flushBackBuffer(r,n,e)}if(zy(i.frontBufferFlushThreshold)&&i.frontBufferFlushThreshold>0){const t=Math.max(i.maxBufferLength,i.frontBufferFlushThreshold),e=Math.max(t,n),s=Math.floor(r/n)*n+e;this.flushFrontBuffer(r,n,s)}}flushBackBuffer(t,e,s){this.sourceBuffers.forEach(([t,e])=>{if(e){const r=Lv.getBuffered(e);if(r.length>0&&s>r.start(0)){var i;this.hls.trigger(Yy.BACK_BUFFER_REACHED,{bufferEnd:s});const e=this.tracks[t];if(null!=(i=this.details)&&i.live)this.hls.trigger(Yy.LIVE_BACK_BUFFER_REACHED,{bufferEnd:s});else if(null!=e&&e.ended)return void this.log(`Cannot flush ${t} back buffer while SourceBuffer is in ended state`);this.hls.trigger(Yy.BUFFER_FLUSHING,{startOffset:0,endOffset:s,type:t})}}})}flushFrontBuffer(t,e,s){this.sourceBuffers.forEach(([e,i])=>{if(i){const r=Lv.getBuffered(i),n=r.length;if(n<2)return;const o=r.start(n-1),a=r.end(n-1);if(s>o||t>=o&&t<=a)return;this.hls.trigger(Yy.BUFFER_FLUSHING,{startOffset:o,endOffset:1/0,type:e})}})}getDurationAndRange(){var t;const{details:e,mediaSource:s}=this;if(!e||!this.media||"open"!==(null==s?void 0:s.readyState))return null;const i=e.edge;if(e.live&&this.hls.config.liveDurationInfinity){if(e.fragments.length&&e.live&&s.setLiveSeekableRange){const t=Math.max(0,e.fragmentStart);return{duration:1/0,start:t,end:Math.max(t,i)}}return{duration:1/0}}const r=null==(t=this.overrides)?void 0:t.duration;if(r)return zy(r)?{duration:r}:null;const n=this.media.duration;return i>(zy(s.duration)?s.duration:0)&&i>n||!zy(n)?{duration:i}:null}updateMediaSource({duration:t,start:e,end:s}){const i=this.mediaSource;this.media&&i&&"open"===i.readyState&&(i.duration!==t&&(zy(t)&&this.log(`Updating MediaSource duration to ${t.toFixed(3)}`),i.duration=t),void 0!==e&&void 0!==s&&(this.log(`MediaSource duration is set to ${i.duration}. Setting seekable range to ${e}-${s}.`),i.setLiveSeekableRange(e,s)))}get tracksReady(){const t=this.pendingTrackCount;return t>0&&(t>=this.bufferCodecEventsTotal||this.isPending(this.tracks.audiovideo))}checkPendingTracks(){const{bufferCodecEventsTotal:t,pendingTrackCount:e,tracks:s}=this;if(this.log(`checkPendingTracks (pending: ${e} codec events expected: ${t}) ${Bb(s)}`),this.tracksReady){var i;const t=null==(i=this.transferData)?void 0:i.tracks;t&&Object.keys(t).length?this.attachTransferred():this.createSourceBuffers()}}bufferCreated(){if(this.sourceBufferCount){const t={};this.sourceBuffers.forEach(([e,s])=>{if(e){const i=this.tracks[e];t[e]={buffer:s,container:i.container,codec:i.codec,supplemental:i.supplemental,levelCodec:i.levelCodec,id:i.id,metadata:i.metadata}}}),this.hls.trigger(Yy.BUFFER_CREATED,{tracks:t}),this.log(`SourceBuffers created. Running queue: ${this.operationQueue}`),this.sourceBuffers.forEach(([t])=>{this.executeNext(t)})}else{const t=new Error("could not create source buffer for media codec(s)");this.hls.trigger(Yy.ERROR,{type:qy.MEDIA_ERROR,details:Qy.BUFFER_INCOMPATIBLE_CODECS_ERROR,fatal:!0,error:t,reason:t.message})}}createSourceBuffers(){const{tracks:t,sourceBuffers:e,mediaSource:s}=this;if(!s)throw new Error("createSourceBuffers called when mediaSource was null");for(const r in t){const n=r,o=t[n];if(this.isPending(o)){const t=this.getTrackCodec(o,n),r=`${o.container};codecs=${t}`;o.codec=t,this.log(`creating sourceBuffer(${r})${this.currentOp(n)?" Queued":""} ${Bb(o)}`);try{const t=s.addSourceBuffer(r),i=Hw(n),a=[n,t];e[i]=a,o.buffer=t}catch(t){var i;return this.error(`error while trying to add sourceBuffer: ${t.message}`),this.shiftAndExecuteNext(n),null==(i=this.operationQueue)||i.removeBlockers(),delete this.tracks[n],void this.hls.trigger(Yy.ERROR,{type:qy.MEDIA_ERROR,details:Qy.BUFFER_ADD_CODEC_ERROR,fatal:!1,error:t,sourceBufferName:n,mimeType:r,parent:o.id})}this.trackSourceBuffer(n,o)}}this.bufferCreated()}getTrackCodec(t,e){const s=t.supplemental;let i=t.codec;s&&("video"===e||"audiovideo"===e)&&hb(s,"video")&&(i=function(t,e){const s=[];if(t){const e=t.split(",");for(let t=0;t<e.length;t++)ab(e[t],"video")||s.push(e[t])}return e&&s.push(e),s.join(",")}(i,s));const r=gb(i,t.levelCodec);return r?"audio"===e.slice(0,5)?mb(r,this.appendSource):r:""}trackSourceBuffer(t,e){const s=e.buffer;if(!s)return;const i=this.getTrackCodec(e,t);this.tracks[t]={buffer:s,codec:i,container:e.container,levelCodec:e.levelCodec,supplemental:e.supplemental,metadata:e.metadata,id:e.id,listeners:[]},this.removeBufferListeners(t),this.addBufferListener(t,"updatestart",this.onSBUpdateStart),this.addBufferListener(t,"updateend",this.onSBUpdateEnd),this.addBufferListener(t,"error",this.onSBUpdateError),this.appendSource&&this.addBufferListener(t,"bufferedchange",(t,e)=>{const s=e.removedRanges;null!=s&&s.length&&this.hls.trigger(Yy.BUFFER_FLUSHED,{type:t})})}get mediaSrc(){var t,e;const s=(null==(t=this.media)||null==(e=t.querySelector)?void 0:e.call(t,"source"))||this.media;return null==s?void 0:s.src}onSBUpdateStart(t){const e=this.currentOp(t);e&&e.onStart()}onSBUpdateEnd(t){var e;if("closed"===(null==(e=this.mediaSource)?void 0:e.readyState))return void this.resetBuffer(t);const s=this.currentOp(t);s&&(s.onComplete(),this.shiftAndExecuteNext(t))}onSBUpdateError(t,e){var s;const i=new Error(`${t} SourceBuffer error. MediaSource readyState: ${null==(s=this.mediaSource)?void 0:s.readyState}`);this.error(`${i}`,e),this.hls.trigger(Yy.ERROR,{type:qy.MEDIA_ERROR,details:Qy.BUFFER_APPENDING_ERROR,sourceBufferName:t,error:i,fatal:!1});const r=this.currentOp(t);r&&r.onError(i)}removeExecutor(t,e,s){const{media:i,mediaSource:r}=this,n=this.tracks[t],o=null==n?void 0:n.buffer;if(!i||!r||!o)return this.warn(`Attempting to remove from the ${t} SourceBuffer, but it does not exist`),void this.shiftAndExecuteNext(t);const a=zy(i.duration)?i.duration:1/0,h=zy(r.duration)?r.duration:1/0,l=Math.max(0,e),c=Math.min(s,a,h);c>l&&(!n.ending||n.ended)?(n.ended=!1,this.log(`Removing [${l},${c}] from the ${t} SourceBuffer`),o.remove(l,c)):this.shiftAndExecuteNext(t)}appendExecutor(t,e){const s=this.tracks[e],i=null==s?void 0:s.buffer;if(!i)throw new Gw(`Attempting to append to the ${e} SourceBuffer, but it does not exist`);s.ending=!1,s.ended=!1,i.appendBuffer(t)}blockUntilOpen(t){if(this.isUpdating()||this.isQueued())this.blockBuffers(t).catch(t=>{this.warn(`SourceBuffer blocked callback ${t}`),this.stepOperationQueue(this.sourceBufferTypes)});else try{t()}catch(t){this.warn(`Callback run without blocking ${this.operationQueue} ${t}`)}}isUpdating(){return this.sourceBuffers.some(([t,e])=>t&&e.updating)}isQueued(){return this.sourceBuffers.some(([t])=>t&&!!this.currentOp(t))}isPending(t){return!!t&&!t.buffer}blockBuffers(t,e=this.sourceBufferTypes){if(!e.length)return this.log("Blocking operation requested, but no SourceBuffers exist"),Promise.resolve().then(t);const{operationQueue:s}=this,i=e.map(t=>this.appendBlocker(t));return e.length>1&&!!this.blockedAudioAppend&&this.unblockAudio(),Promise.all(i).then(e=>{s===this.operationQueue&&(t(),this.stepOperationQueue(this.sourceBufferTypes))})}stepOperationQueue(t){t.forEach(t=>{var e;const s=null==(e=this.tracks[t])?void 0:e.buffer;s&&!s.updating&&this.shiftAndExecuteNext(t)})}append(t,e,s){this.operationQueue&&this.operationQueue.append(t,e,s)}appendBlocker(t){if(this.operationQueue)return this.operationQueue.appendBlocker(t)}currentOp(t){return this.operationQueue?this.operationQueue.current(t):null}executeNext(t){t&&this.operationQueue&&this.operationQueue.executeNext(t)}shiftAndExecuteNext(t){this.operationQueue&&this.operationQueue.shiftAndExecuteNext(t)}get pendingTrackCount(){return Object.keys(this.tracks).reduce((t,e)=>t+(this.isPending(this.tracks[e])?1:0),0)}get sourceBufferCount(){return this.sourceBuffers.reduce((t,[e])=>t+(e?1:0),0)}get sourceBufferTypes(){return this.sourceBuffers.map(([t])=>t).filter(t=>!!t)}addBufferListener(t,e,s){const i=this.tracks[t];if(!i)return;const r=i.buffer;if(!r)return;const n=s.bind(this,t);i.listeners.push({event:e,listener:n}),r.addEventListener(e,n)}removeBufferListeners(t){const e=this.tracks[t];if(!e)return;const s=e.buffer;s&&(e.listeners.forEach(t=>{s.removeEventListener(t.event,t.listener)}),e.listeners.length=0)}},capLevelController:Kw,errorController:class extends lA{constructor(t){super("error-controller",t.logger),this.hls=void 0,this.playlistError=0,this.penalizedRenditions={},this.hls=t,this.registerListeners()}registerListeners(){const t=this.hls;t.on(Yy.ERROR,this.onError,this),t.on(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.on(Yy.LEVEL_UPDATED,this.onLevelUpdated,this)}unregisterListeners(){const t=this.hls;t&&(t.off(Yy.ERROR,this.onError,this),t.off(Yy.ERROR,this.onErrorOut,this),t.off(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.off(Yy.LEVEL_UPDATED,this.onLevelUpdated,this))}destroy(){this.unregisterListeners(),this.hls=null,this.penalizedRenditions={}}startLoad(t){}stopLoad(){this.playlistError=0}getVariantLevelIndex(t){return(null==t?void 0:t.type)===tA?t.level:this.hls.loadLevel}onManifestLoading(){this.playlistError=0,this.penalizedRenditions={}}onLevelUpdated(){this.playlistError=0}onError(t,e){var s;if(e.fatal)return;const i=this.hls,r=e.context;switch(e.details){case Qy.FRAG_LOAD_ERROR:case Qy.FRAG_LOAD_TIMEOUT:case Qy.KEY_LOAD_ERROR:case Qy.KEY_LOAD_TIMEOUT:return void(e.errorAction=this.getFragRetryOrSwitchAction(e));case Qy.FRAG_PARSING_ERROR:if(null!=(s=e.frag)&&s.gap)return void(e.errorAction=av());case Qy.FRAG_GAP:case Qy.FRAG_DECRYPT_ERROR:return e.errorAction=this.getFragRetryOrSwitchAction(e),void(e.errorAction.action=ev);case Qy.LEVEL_EMPTY_ERROR:case Qy.LEVEL_PARSING_ERROR:{var n,o;const t=e.parent===tA?e.level:i.loadLevel;e.details===Qy.LEVEL_EMPTY_ERROR&&null!=(n=e.context)&&null!=(o=n.levelDetails)&&o.live?e.errorAction=this.getPlaylistRetryOrSwitchAction(e,t):(e.levelRetry=!1,e.errorAction=this.getLevelSwitchAction(e,t))}return;case Qy.LEVEL_LOAD_ERROR:case Qy.LEVEL_LOAD_TIMEOUT:return void("number"==typeof(null==r?void 0:r.level)&&(e.errorAction=this.getPlaylistRetryOrSwitchAction(e,r.level)));case Qy.AUDIO_TRACK_LOAD_ERROR:case Qy.AUDIO_TRACK_LOAD_TIMEOUT:case Qy.SUBTITLE_LOAD_ERROR:case Qy.SUBTITLE_TRACK_LOAD_TIMEOUT:if(r){const t=i.loadLevelObj;if(t&&(r.type===$y&&t.hasAudioGroup(r.groupId)||r.type===Zy&&t.hasSubtitleGroup(r.groupId)))return e.errorAction=this.getPlaylistRetryOrSwitchAction(e,i.loadLevel),e.errorAction.action=ev,void(e.errorAction.flags=nv)}return;case Qy.KEY_SYSTEM_STATUS_OUTPUT_RESTRICTED:{const t=i.loadLevelObj,s=null==t?void 0:t.attrs["HDCP-LEVEL"];s?e.errorAction={action:ev,flags:ov,hdcpLevel:s}:this.keySystemError(e)}return;case Qy.BUFFER_ADD_CODEC_ERROR:case Qy.REMUX_ALLOC_ERROR:case Qy.BUFFER_APPEND_ERROR:var a;if(!e.errorAction)e.errorAction=this.getLevelSwitchAction(e,null!=(a=e.level)?a:i.loadLevel);return;case Qy.INTERNAL_EXCEPTION:case Qy.BUFFER_APPENDING_ERROR:case Qy.BUFFER_FULL_ERROR:case Qy.LEVEL_SWITCH_ERROR:case Qy.BUFFER_STALLED_ERROR:case Qy.BUFFER_SEEK_OVER_HOLE:case Qy.BUFFER_NUDGE_ON_STALL:return void(e.errorAction=av())}e.type===qy.KEY_SYSTEM_ERROR&&this.keySystemError(e)}keySystemError(t){const e=this.getVariantLevelIndex(t.frag);t.levelRetry=!1,t.errorAction=this.getLevelSwitchAction(t,e)}getPlaylistRetryOrSwitchAction(t,e){const s=Jb(this.hls.config.playlistLoadPolicy,t),i=this.playlistError++;if(Zb(s,i,Yb(t),t.response))return{action:iv,flags:rv,retryConfig:s,retryCount:i};const r=this.getLevelSwitchAction(t,e);return s&&(r.retryConfig=s,r.retryCount=i),r}getFragRetryOrSwitchAction(t){const e=this.hls,s=this.getVariantLevelIndex(t.frag),i=e.levels[s],{fragLoadPolicy:r,keyLoadPolicy:n}=e.config,o=Jb(t.details.startsWith("key")?n:r,t),a=e.levels.reduce((t,e)=>t+e.fragmentError,0);if(i){t.details!==Qy.FRAG_GAP&&i.fragmentError++;if(Zb(o,a,Yb(t),t.response))return{action:iv,flags:rv,retryConfig:o,retryCount:a}}const h=this.getLevelSwitchAction(t,s);return o&&(h.retryConfig=o,h.retryCount=a),h}getLevelSwitchAction(t,e){const s=this.hls;null==e&&(e=s.loadLevel);const i=this.hls.levels[e];if(i){var r,n;const e=t.details;i.loadError++,e===Qy.BUFFER_APPEND_ERROR&&i.fragmentError++;let h=-1;const{levels:l,loadLevel:c,minAutoLevel:d,maxAutoLevel:u}=s;s.autoLevelEnabled||s.config.preserveManualLevelOnError||(s.loadLevel=-1);const p=null==(r=t.frag)?void 0:r.type,f=(p===eA&&e===Qy.FRAG_PARSING_ERROR||"audio"===t.sourceBufferName&&(e===Qy.BUFFER_ADD_CODEC_ERROR||e===Qy.BUFFER_APPEND_ERROR))&&l.some(({audioCodec:t})=>i.audioCodec!==t),m="video"===t.sourceBufferName&&(e===Qy.BUFFER_ADD_CODEC_ERROR||e===Qy.BUFFER_APPEND_ERROR)&&l.some(({codecSet:t,audioCodec:e})=>i.codecSet!==t&&i.audioCodec===e),{type:g,groupId:y}=null!=(n=t.context)?n:{};for(let s=l.length;s--;){const r=(s+c)%l.length;if(r!==c&&r>=d&&r<=u&&0===l[r].loadError){var o,a;const s=l[r];if(e===Qy.FRAG_GAP&&p===tA&&t.frag){const e=l[r].details;if(e){const s=Hb(t.frag,e.fragments,t.frag.start);if(null!=s&&s.gap)continue}}else{if(g===$y&&s.hasAudioGroup(y)||g===Zy&&s.hasSubtitleGroup(y))continue;if(p===eA&&null!=(o=i.audioGroups)&&o.some(t=>s.hasAudioGroup(t))||p===sA&&null!=(a=i.subtitleGroups)&&a.some(t=>s.hasSubtitleGroup(t))||f&&i.audioCodec===s.audioCodec||!f&&i.audioCodec!==s.audioCodec||m&&i.codecSet===s.codecSet)continue}h=r;break}}if(h>-1&&s.loadLevel!==h)return t.levelRetry=!0,this.playlistError=0,{action:ev,flags:rv,nextAutoLevel:h}}return{action:ev,flags:nv}}onErrorOut(t,e){var s;switch(null==(s=e.errorAction)?void 0:s.action){case tv:break;case ev:this.sendAlternateToPenaltyBox(e),e.errorAction.resolved||e.details===Qy.FRAG_GAP?/MediaSource readyState: ended/.test(e.error.message)&&(this.warn(`MediaSource ended after "${e.sourceBufferName}" sourceBuffer append error. Attempting to recover from media error.`),this.hls.recoverMediaError()):e.fatal=!0}e.fatal&&this.hls.stopLoad()}sendAlternateToPenaltyBox(t){const e=this.hls,s=t.errorAction;if(!s)return;const{flags:i,hdcpLevel:r,nextAutoLevel:n}=s;switch(i){case rv:this.switchLevel(t,n);break;case ov:r&&(e.maxHdcpLevel=Ib[Ib.indexOf(r)-1],s.resolved=!0),this.warn(`Restricting playback to HDCP-LEVEL of "${e.maxHdcpLevel}" or lower`)}s.resolved||this.switchLevel(t,n)}switchLevel(t,e){if(void 0!==e&&t.errorAction&&(this.warn(`switching to level ${e} after ${t.details}`),this.hls.nextAutoLevel=e,t.errorAction.resolved=!0,this.hls.nextLoadLevel=this.hls.nextAutoLevel,t.details===Qy.BUFFER_ADD_CODEC_ERROR&&t.mimeType&&"audiovideo"!==t.sourceBufferName)){const e=bb(t.mimeType),s=this.hls.levels;for(let i=s.length;i--;)s[i][`${t.sourceBufferName}Codec`]===e&&this.hls.removeLevel(i)}}},fpsController:class{constructor(t){this.hls=void 0,this.isVideoPlaybackQualityAvailable=!1,this.timer=void 0,this.media=null,this.lastTime=void 0,this.lastDroppedFrames=0,this.lastDecodedFrames=0,this.streamController=void 0,this.hls=t,this.registerListeners()}setStreamController(t){this.streamController=t}registerListeners(){this.hls.on(Yy.MEDIA_ATTACHING,this.onMediaAttaching,this),this.hls.on(Yy.MEDIA_DETACHING,this.onMediaDetaching,this)}unregisterListeners(){this.hls.off(Yy.MEDIA_ATTACHING,this.onMediaAttaching,this),this.hls.off(Yy.MEDIA_DETACHING,this.onMediaDetaching,this)}destroy(){this.timer&&clearInterval(this.timer),this.unregisterListeners(),this.isVideoPlaybackQualityAvailable=!1,this.media=null}onMediaAttaching(t,e){const s=this.hls.config;if(s.capLevelOnFPSDrop){const t=e.media instanceof self.HTMLVideoElement?e.media:null;this.media=t,t&&"function"==typeof t.getVideoPlaybackQuality&&(this.isVideoPlaybackQualityAvailable=!0),self.clearInterval(this.timer),this.timer=self.setInterval(this.checkFPSInterval.bind(this),s.fpsDroppedMonitoringPeriod)}}onMediaDetaching(){this.media=null}checkFPS(t,e,s){const i=performance.now();if(e){if(this.lastTime){const t=i-this.lastTime,r=s-this.lastDroppedFrames,n=e-this.lastDecodedFrames,o=1e3*r/t,a=this.hls;if(a.trigger(Yy.FPS_DROP,{currentDropped:r,currentDecoded:n,totalDroppedFrames:s}),o>0&&r>a.config.fpsDroppedMonitoringThreshold*n){let t=a.currentLevel;a.logger.warn("drop FPS ratio greater than max allowed value for currentLevel: "+t),t>0&&(-1===a.autoLevelCapping||a.autoLevelCapping>=t)&&(t-=1,a.trigger(Yy.FPS_DROP_LEVEL_CAPPING,{level:t,droppedLevel:a.currentLevel}),a.autoLevelCapping=t,this.streamController.nextLevelSwitch())}}this.lastTime=i,this.lastDroppedFrames=s,this.lastDecodedFrames=e}}checkFPSInterval(){const t=this.media;if(t)if(this.isVideoPlaybackQualityAvailable){const e=t.getVideoPlaybackQuality();this.checkFPS(t,e.totalVideoFrames,e.droppedVideoFrames)}else this.checkFPS(t,t.webkitDecodedFrameCount,t.webkitDroppedFrameCount)}},stretchShortVideoTrack:!1,maxAudioFramesDrift:1,forceKeyFrameOnDiscontinuity:!0,abrEwmaFastLive:3,abrEwmaSlowLive:9,abrEwmaFastVoD:3,abrEwmaSlowVoD:9,abrEwmaDefaultEstimate:5e5,abrEwmaDefaultEstimateMax:5e6,abrBandWidthFactor:.95,abrBandWidthUpFactor:.7,abrMaxWithRealBitrate:!1,maxStarvationDelay:4,maxLoadingDelay:4,minAutoBitrate:0,emeEnabled:!1,widevineLicenseUrl:void 0,drmSystems:{},drmSystemOptions:{},requestMediaKeySystemAccessFunc:hS,requireKeySystemAccessOnStart:!1,testBandwidth:!0,progressive:!1,lowLatencyMode:!0,cmcd:void 0,enableDateRangeMetadataCues:!0,enableEmsgMetadataCues:!0,enableEmsgKLVMetadata:!1,enableID3MetadataCues:!0,enableInterstitialPlayback:!0,interstitialAppendInPlace:!0,interstitialLiveLookAhead:10,useMediaCapabilities:!0,preserveManualLevelOnError:!1,certLoadPolicy:{default:{maxTimeToFirstByteMs:8e3,maxLoadTimeMs:2e4,timeoutRetry:null,errorRetry:null}},keyLoadPolicy:{default:{maxTimeToFirstByteMs:8e3,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:2e4,backoff:"linear"},errorRetry:{maxNumRetry:8,retryDelayMs:1e3,maxRetryDelayMs:2e4,backoff:"linear"}}},manifestLoadPolicy:{default:{maxTimeToFirstByteMs:1/0,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},playlistLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:2,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},fragLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:12e4,timeoutRetry:{maxNumRetry:4,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:6,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},steeringManifestLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:2e4,timeoutRetry:{maxNumRetry:2,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:1,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},interstitialAssetListLoadPolicy:{default:{maxTimeToFirstByteMs:1e4,maxLoadTimeMs:3e4,timeoutRetry:{maxNumRetry:0,retryDelayMs:0,maxRetryDelayMs:0},errorRetry:{maxNumRetry:0,retryDelayMs:1e3,maxRetryDelayMs:8e3}}},manifestLoadingTimeOut:1e4,manifestLoadingMaxRetry:1,manifestLoadingRetryDelay:1e3,manifestLoadingMaxRetryTimeout:64e3,levelLoadingTimeOut:1e4,levelLoadingMaxRetry:4,levelLoadingRetryDelay:1e3,levelLoadingMaxRetryTimeout:64e3,fragLoadingTimeOut:2e4,fragLoadingMaxRetry:6,fragLoadingRetryDelay:1e3,fragLoadingMaxRetryTimeout:64e3},{cueHandler:HI,enableWebVTT:!0,enableIMSC1:!0,enableCEA708Captions:!0,captionsTextTrack1Label:"English",captionsTextTrack1LanguageCode:"en",captionsTextTrack2Label:"Spanish",captionsTextTrack2LanguageCode:"es",captionsTextTrack3Label:"Unknown CC",captionsTextTrack3LanguageCode:"",captionsTextTrack4Label:"Unknown CC",captionsTextTrack4LanguageCode:"",renderTextTracksNatively:!0}),{},{subtitleStreamController:class extends nE{constructor(t,e,s){super(t,e,s,"subtitle-stream-controller",sA),this.currentTrackId=-1,this.tracksBuffered=[],this.mainDetails=null,this.registerListeners()}onHandlerDestroying(){this.unregisterListeners(),super.onHandlerDestroying(),this.mainDetails=null}registerListeners(){super.registerListeners();const{hls:t}=this;t.on(Yy.LEVEL_LOADED,this.onLevelLoaded,this),t.on(Yy.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),t.on(Yy.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),t.on(Yy.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),t.on(Yy.SUBTITLE_FRAG_PROCESSED,this.onSubtitleFragProcessed,this),t.on(Yy.BUFFER_FLUSHING,this.onBufferFlushing,this)}unregisterListeners(){super.unregisterListeners();const{hls:t}=this;t.off(Yy.LEVEL_LOADED,this.onLevelLoaded,this),t.off(Yy.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),t.off(Yy.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),t.off(Yy.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),t.off(Yy.SUBTITLE_FRAG_PROCESSED,this.onSubtitleFragProcessed,this),t.off(Yy.BUFFER_FLUSHING,this.onBufferFlushing,this)}startLoad(t,e){this.stopLoad(),this.state=QS,this.setInterval(500),this.nextLoadPosition=this.lastCurrentTime=t+this.timelineOffset,this.startPosition=e?-1:t,this.tick()}onManifestLoading(){super.onManifestLoading(),this.mainDetails=null}onMediaDetaching(t,e){this.tracksBuffered=[],super.onMediaDetaching(t,e)}onLevelLoaded(t,e){this.mainDetails=e.details}onSubtitleFragProcessed(t,e){const{frag:s,success:i}=e;if(DA(s)&&(this.fragPrevious=s),this.state=QS,!i)return;const r=this.tracksBuffered[this.currentTrackId];if(!r)return;let n;const o=s.start;for(let t=0;t<r.length;t++)if(o>=r[t].start&&o<=r[t].end){n=r[t];break}const a=s.start+s.duration;n?n.end=a:(n={start:o,end:a},r.push(n)),this.fragmentTracker.fragBuffered(s),this.fragBufferedComplete(s,null),this.media&&this.tick()}onBufferFlushing(t,e){const{startOffset:s,endOffset:i}=e;if(0===s&&i!==Number.POSITIVE_INFINITY){const t=i-1;if(t<=0)return;e.endOffsetSubtitles=Math.max(0,t),this.tracksBuffered.forEach(e=>{for(let s=0;s<e.length;)if(e[s].end<=t)e.shift();else{if(!(e[s].start<t))break;e[s].start=t,s++}}),this.fragmentTracker.removeFragmentsInRange(s,t,sA)}}onError(t,e){const s=e.frag;(null==s?void 0:s.type)===sA&&(e.details===Qy.FRAG_GAP&&this.fragmentTracker.fragBuffered(s,!0),this.fragCurrent&&this.fragCurrent.abortRequests(),this.state!==qS&&(this.state=QS))}onSubtitleTracksUpdated(t,{subtitleTracks:e}){this.levels&&Uw(this.levels,e)?this.levels=e.map(t=>new Pb(t)):(this.tracksBuffered=[],this.levels=e.map(t=>{const e=new Pb(t);return this.tracksBuffered[e.id]=[],e}),this.fragmentTracker.removeFragmentsInRange(0,Number.POSITIVE_INFINITY,sA),this.fragPrevious=null,this.mediaBuffer=null)}onSubtitleTrackSwitch(t,e){var s;if(this.currentTrackId=e.id,null==(s=this.levels)||!s.length||-1===this.currentTrackId)return void this.clearInterval();const i=this.levels[this.currentTrackId];null!=i&&i.details?this.mediaBuffer=this.mediaBufferTimeRanges:this.mediaBuffer=null,i&&this.state!==qS&&this.setInterval(500)}onSubtitleTrackLoaded(t,e){var s;const{currentTrackId:i,levels:r}=this,{details:n,id:o}=e;if(!r)return void this.warn(`Subtitle tracks were reset while loading level ${o}`);const a=r[o];if(o>=r.length||!a)return;this.log(`Subtitle track ${o} loaded [${n.startSN},${n.endSN}]${n.lastPartSn?`[part-${n.lastPartSn}-${n.lastPartIndex}]`:""},duration:${n.totalduration}`),this.mediaBuffer=this.mediaBufferTimeRanges;let h=0;if(n.live||null!=(s=a.details)&&s.live){const t=this.mainDetails;if(n.deltaUpdateFailed||!t)return;const e=t.fragments[0];var l;if(a.details)h=this.alignPlaylists(n,a.details,null==(l=this.levelLastLoaded)?void 0:l.details),0===h&&e&&(h=e.start,BS(n,h));else n.hasProgramDateTime&&t.hasProgramDateTime?(HS(n,t),h=n.fragmentStart):e&&(h=e.start,BS(n,h))}if(a.details=n,this.levelLastLoaded=a,o===i&&(this.hls.trigger(Yy.SUBTITLE_TRACK_UPDATED,{details:n,id:o,groupId:e.groupId}),this.tick(),n.live&&!this.fragCurrent&&this.media&&this.state===QS)){Hb(null,n.fragments,this.media.currentTime,0)||(this.warn("Subtitle playlist not aligned with playback"),a.details=void 0)}}_handleFragmentLoadComplete(t){const{frag:e,payload:s}=t,i=e.decryptdata,r=this.hls;if(!this.fragContextChanged(e)&&s&&s.byteLength>0&&null!=i&&i.key&&i.iv&&Gv(i.method)){const t=performance.now();this.decrypter.decrypt(new Uint8Array(s),i.key.buffer,i.iv.buffer,zv(i.method)).catch(t=>{throw r.trigger(Yy.ERROR,{type:qy.MEDIA_ERROR,details:Qy.FRAG_DECRYPT_ERROR,fatal:!1,error:t,reason:t.message,frag:e}),t}).then(s=>{const i=performance.now();r.trigger(Yy.FRAG_DECRYPTED,{frag:e,payload:s,stats:{tstart:t,tdecrypt:i}})}).catch(t=>{this.warn(`${t.name}: ${t.message}`),this.state=QS})}}doTick(){if(this.media){if(this.state===QS){const{currentTrackId:t,levels:e}=this,s=null==e?void 0:e[t];if(!s||!e.length||!s.details)return;if(this.waitForLive(s))return;const{config:i}=this,r=this.getLoadPosition(),n=Lv.bufferedInfo(this.tracksBuffered[this.currentTrackId]||[],r,i.maxBufferHole),{end:o,len:a}=n,h=s.details;if(a>this.hls.maxBufferLength+h.levelTargetDuration)return;const l=h.fragments,c=l.length,d=h.edge;let u=null;const p=this.fragPrevious;if(o<d){const t=i.maxFragLookUpTolerance,e=o>d-t?0:t;u=Hb(p,l,Math.max(l[0].start,o),e),!u&&p&&p.start<l[0].start&&(u=l[0])}else u=l[c-1];if(u=this.filterReplacedPrimary(u,s.details),!u)return;const f=l[u.sn-h.startSN-1];if(f&&f.cc===u.cc&&this.fragmentTracker.getState(f)===hv&&(u=f),this.fragmentTracker.getState(u)===hv){const t=this.mapToInitFragWhenRequired(u);t&&this.loadFragment(t,s,o)}}}else this.state=QS}loadFragment(t,e,s){DA(t)?super.loadFragment(t,e,s):this._loadInitSegment(t,e)}get mediaBufferTimeRanges(){return new YT(this.tracksBuffered[this.currentTrackId]||[])}},subtitleTrackController:class extends Fw{constructor(t){super(t,"subtitle-track-controller"),this.media=null,this.tracks=[],this.groupIds=null,this.tracksInGroup=[],this.trackId=-1,this.currentTrack=null,this.selectDefaultTrack=!0,this.queuedDefaultTrack=-1,this.useTextTrackPolling=!1,this.subtitlePollingInterval=-1,this._subtitleDisplay=!0,this.asyncPollTrackChange=()=>this.pollTrackChange(0),this.onTextTracksChanged=()=>{if(this.useTextTrackPolling||self.clearInterval(this.subtitlePollingInterval),!this.media||!this.hls.config.renderTextTracksNatively)return;let t=null;const e=MT(this.media.textTracks);for(let s=0;s<e.length;s++)if("hidden"===e[s].mode)t=e[s];else if("showing"===e[s].mode){t=e[s];break}const s=this.findTrackForTextTrack(t);this.subtitleTrack!==s&&this.setSubtitleTrack(s)},this.registerListeners()}destroy(){this.unregisterListeners(),this.tracks.length=0,this.tracksInGroup.length=0,this.currentTrack=null,this.onTextTracksChanged=this.asyncPollTrackChange=null,super.destroy()}get subtitleDisplay(){return this._subtitleDisplay}set subtitleDisplay(t){this._subtitleDisplay=t,this.trackId>-1&&this.toggleTrackModes()}registerListeners(){const{hls:t}=this;t.on(Yy.MEDIA_ATTACHED,this.onMediaAttached,this),t.on(Yy.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.on(Yy.MANIFEST_PARSED,this.onManifestParsed,this),t.on(Yy.LEVEL_LOADING,this.onLevelLoading,this),t.on(Yy.LEVEL_SWITCHING,this.onLevelSwitching,this),t.on(Yy.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),t.on(Yy.ERROR,this.onError,this)}unregisterListeners(){const{hls:t}=this;t.off(Yy.MEDIA_ATTACHED,this.onMediaAttached,this),t.off(Yy.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.off(Yy.MANIFEST_PARSED,this.onManifestParsed,this),t.off(Yy.LEVEL_LOADING,this.onLevelLoading,this),t.off(Yy.LEVEL_SWITCHING,this.onLevelSwitching,this),t.off(Yy.SUBTITLE_TRACK_LOADED,this.onSubtitleTrackLoaded,this),t.off(Yy.ERROR,this.onError,this)}onMediaAttached(t,e){this.media=e.media,this.media&&(this.queuedDefaultTrack>-1&&(this.subtitleTrack=this.queuedDefaultTrack,this.queuedDefaultTrack=-1),this.useTextTrackPolling=!(this.media.textTracks&&"onchange"in this.media.textTracks),this.useTextTrackPolling?this.pollTrackChange(500):this.media.textTracks.addEventListener("change",this.asyncPollTrackChange))}pollTrackChange(t){self.clearInterval(this.subtitlePollingInterval),this.subtitlePollingInterval=self.setInterval(this.onTextTracksChanged,t)}onMediaDetaching(t,e){const s=this.media;if(!s)return;const i=!!e.transferMedia;if(self.clearInterval(this.subtitlePollingInterval),this.useTextTrackPolling||s.textTracks.removeEventListener("change",this.asyncPollTrackChange),this.trackId>-1&&(this.queuedDefaultTrack=this.trackId),this.subtitleTrack=-1,this.media=null,i)return;MT(s.textTracks).forEach(t=>{PT(t)})}onManifestLoading(){this.tracks=[],this.groupIds=null,this.tracksInGroup=[],this.trackId=-1,this.currentTrack=null,this.selectDefaultTrack=!0}onManifestParsed(t,e){this.tracks=e.subtitleTracks}onSubtitleTrackLoaded(t,e){const{id:s,groupId:i,details:r}=e,n=this.tracksInGroup[s];if(!n||n.groupId!==i)return void this.warn(`Subtitle track with id:${s} and group:${i} not found in active group ${null==n?void 0:n.groupId}`);const o=n.details;n.details=e.details,this.log(`Subtitle track ${s} "${n.name}" lang:${n.lang} group:${i} loaded [${r.startSN}-${r.endSN}]`),s===this.trackId&&this.playlistLoaded(s,e,o)}onLevelLoading(t,e){this.switchLevel(e.level)}onLevelSwitching(t,e){this.switchLevel(e.level)}switchLevel(t){const e=this.hls.levels[t];if(!e)return;const s=e.subtitleGroups||null,i=this.groupIds;let r=this.currentTrack;if(!s||(null==i?void 0:i.length)!==(null==s?void 0:s.length)||null!=s&&s.some(t=>-1===(null==i?void 0:i.indexOf(t)))){this.groupIds=s,this.trackId=-1,this.currentTrack=null;const t=this.tracks.filter(t=>!s||-1!==s.indexOf(t.groupId));if(t.length)this.selectDefaultTrack&&!t.some(t=>t.default)&&(this.selectDefaultTrack=!1),t.forEach((t,e)=>{t.id=e});else if(!r&&!this.tracksInGroup.length)return;this.tracksInGroup=t;const e=this.hls.config.subtitlePreference;if(!r&&e){this.selectDefaultTrack=!1;const s=Nb(e,t);if(s>-1)r=t[s];else{const t=Nb(e,this.tracks);r=this.tracks[t]}}let i=this.findTrackId(r);-1===i&&r&&(i=this.findTrackId(null));const n={subtitleTracks:t};this.log(`Updating subtitle tracks, ${t.length} track(s) found in "${null==s?void 0:s.join(",")}" group-id`),this.hls.trigger(Yy.SUBTITLE_TRACKS_UPDATED,n),-1!==i&&-1===this.trackId&&this.setSubtitleTrack(i)}}findTrackId(t){const e=this.tracksInGroup,s=this.selectDefaultTrack;for(let i=0;i<e.length;i++){const r=e[i];if((!s||r.default)&&(s||t)&&(!t||Vb(r,t)))return i}if(t){for(let s=0;s<e.length;s++){const i=e[s];if(Ow(t.attrs,i.attrs,["LANGUAGE","ASSOC-LANGUAGE","CHARACTERISTICS"]))return s}for(let s=0;s<e.length;s++){const i=e[s];if(Ow(t.attrs,i.attrs,["LANGUAGE"]))return s}}return-1}findTrackForTextTrack(t){if(t){const e=this.tracksInGroup;for(let s=0;s<e.length;s++){if(Nw(e[s],t))return s}}return-1}onError(t,e){!e.fatal&&e.context&&(e.context.type!==Zy||e.context.id!==this.trackId||this.groupIds&&-1===this.groupIds.indexOf(e.context.groupId)||this.checkRetry(e))}get allSubtitleTracks(){return this.tracks}get subtitleTracks(){return this.tracksInGroup}get subtitleTrack(){return this.trackId}set subtitleTrack(t){this.selectDefaultTrack=!1,this.setSubtitleTrack(t)}setSubtitleOption(t){if(this.hls.config.subtitlePreference=t,t){if(-1===t.id)return this.setSubtitleTrack(-1),null;const e=this.allSubtitleTracks;if(this.selectDefaultTrack=!1,e.length){const s=this.currentTrack;if(s&&Vb(t,s))return s;const i=Nb(t,this.tracksInGroup);if(i>-1){const t=this.tracksInGroup[i];return this.setSubtitleTrack(i),t}if(s)return null;{const s=Nb(t,e);if(s>-1)return e[s]}}}return null}loadPlaylist(t){super.loadPlaylist(),this.shouldLoadPlaylist(this.currentTrack)&&this.scheduleLoading(this.currentTrack,t)}loadingPlaylist(t,e){super.loadingPlaylist(t,e);const s=t.id,i=t.groupId,r=this.getUrlWithDirectives(t.url,e),n=t.details,o=null==n?void 0:n.age;this.log(`Loading subtitle ${s} "${t.name}" lang:${t.lang} group:${i}${void 0!==(null==e?void 0:e.msn)?" at sn "+e.msn+" part "+e.part:""}${o&&n.live?" age "+o.toFixed(1)+(n.type&&" "+n.type||""):""} ${r}`),this.hls.trigger(Yy.SUBTITLE_TRACK_LOADING,{url:r,id:s,groupId:i,deliveryDirectives:e||null,track:t})}toggleTrackModes(){const{media:t}=this;if(!t)return;const e=MT(t.textTracks),s=this.currentTrack;let i;if(s&&(i=e.filter(t=>Nw(s,t))[0],i||this.warn(`Unable to find subtitle TextTrack with name "${s.name}" and language "${s.lang}"`)),[].slice.call(e).forEach(t=>{"disabled"!==t.mode&&t!==i&&(t.mode="disabled")}),i){const t=this.subtitleDisplay?"showing":"hidden";i.mode!==t&&(i.mode=t)}}setSubtitleTrack(t){const e=this.tracksInGroup;if(!this.media)return void(this.queuedDefaultTrack=t);if(t<-1||t>=e.length||!zy(t))return void this.warn(`Invalid subtitle track id: ${t}`);this.selectDefaultTrack=!1;const s=this.currentTrack,i=e[t]||null;if(this.trackId=t,this.currentTrack=i,this.toggleTrackModes(),!i)return void this.hls.trigger(Yy.SUBTITLE_TRACK_SWITCH,{id:t});const r=!!i.details&&!i.details.live;if(t===this.trackId&&i===s&&r)return;this.log(`Switching to subtitle-track ${t}`+(i?` "${i.name}" lang:${i.lang} group:${i.groupId}`:""));const{id:n,groupId:o="",name:a,type:h,url:l}=i;this.hls.trigger(Yy.SUBTITLE_TRACK_SWITCH,{id:n,groupId:o,name:a,type:h,url:l});const c=this.switchParams(i.url,null==s?void 0:s.details,i.details);this.loadPlaylist(c)}},timelineController:class{constructor(t){this.hls=void 0,this.media=null,this.config=void 0,this.enabled=!0,this.Cues=void 0,this.textTracks=[],this.tracks=[],this.initPTS=[],this.unparsedVttFrags=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.cea608Parser1=void 0,this.cea608Parser2=void 0,this.lastCc=-1,this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs={ccOffset:0,presentationOffset:0,0:{start:0,prevCC:-1,new:!0}},this.captionsProperties=void 0,this.hls=t,this.config=t.config,this.Cues=t.config.cueHandler,this.captionsProperties={textTrack1:{label:this.config.captionsTextTrack1Label,languageCode:this.config.captionsTextTrack1LanguageCode},textTrack2:{label:this.config.captionsTextTrack2Label,languageCode:this.config.captionsTextTrack2LanguageCode},textTrack3:{label:this.config.captionsTextTrack3Label,languageCode:this.config.captionsTextTrack3LanguageCode},textTrack4:{label:this.config.captionsTextTrack4Label,languageCode:this.config.captionsTextTrack4LanguageCode}},t.on(Yy.MEDIA_ATTACHING,this.onMediaAttaching,this),t.on(Yy.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.on(Yy.MANIFEST_LOADED,this.onManifestLoaded,this),t.on(Yy.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),t.on(Yy.FRAG_LOADING,this.onFragLoading,this),t.on(Yy.FRAG_LOADED,this.onFragLoaded,this),t.on(Yy.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),t.on(Yy.FRAG_DECRYPTED,this.onFragDecrypted,this),t.on(Yy.INIT_PTS_FOUND,this.onInitPtsFound,this),t.on(Yy.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),t.on(Yy.BUFFER_FLUSHING,this.onBufferFlushing,this)}destroy(){const{hls:t}=this;t.off(Yy.MEDIA_ATTACHING,this.onMediaAttaching,this),t.off(Yy.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.off(Yy.MANIFEST_LOADED,this.onManifestLoaded,this),t.off(Yy.SUBTITLE_TRACKS_UPDATED,this.onSubtitleTracksUpdated,this),t.off(Yy.FRAG_LOADING,this.onFragLoading,this),t.off(Yy.FRAG_LOADED,this.onFragLoaded,this),t.off(Yy.FRAG_PARSING_USERDATA,this.onFragParsingUserdata,this),t.off(Yy.FRAG_DECRYPTED,this.onFragDecrypted,this),t.off(Yy.INIT_PTS_FOUND,this.onInitPtsFound,this),t.off(Yy.SUBTITLE_TRACKS_CLEARED,this.onSubtitleTracksCleared,this),t.off(Yy.BUFFER_FLUSHING,this.onBufferFlushing,this),this.hls=this.config=this.media=null,this.cea608Parser1=this.cea608Parser2=void 0}initCea608Parsers(){const t=new VI(this,"textTrack1"),e=new VI(this,"textTrack2"),s=new VI(this,"textTrack3"),i=new VI(this,"textTrack4");this.cea608Parser1=new uI(1,t,e),this.cea608Parser2=new uI(3,s,i)}addCues(t,e,s,i,r){let n=!1;for(let t=r.length;t--;){const i=r[t],o=GI(i[0],i[1],e,s);if(o>=0&&(i[0]=Math.min(i[0],e),i[1]=Math.max(i[1],s),n=!0,o/(s-e)>.5))return}if(n||r.push([e,s]),this.config.renderTextTracksNatively){const r=this.captionsTracks[t];this.Cues.newCue(r,e,s,i)}else{const r=this.Cues.newCue(null,e,s,i);this.hls.trigger(Yy.CUES_PARSED,{type:"captions",cues:r,track:t})}}onInitPtsFound(t,{frag:e,id:s,initPTS:i,timescale:r}){const{unparsedVttFrags:n}=this;s===tA&&(this.initPTS[e.cc]={baseTime:i,timescale:r}),n.length&&(this.unparsedVttFrags=[],n.forEach(t=>{this.onFragLoaded(Yy.FRAG_LOADED,t)}))}getExistingTrack(t,e){const{media:s}=this;if(s)for(let i=0;i<s.textTracks.length;i++){const r=s.textTracks[i];if(WI(r,{name:t,lang:e,characteristics:"transcribes-spoken-dialog,describes-music-and-sound"}))return r}return null}createCaptionsTrack(t){this.config.renderTextTracksNatively?this.createNativeTrack(t):this.createNonNativeTrack(t)}createNativeTrack(t){if(this.captionsTracks[t])return;const{captionsProperties:e,captionsTracks:s,media:i}=this,{label:r,languageCode:n}=e[t],o=this.getExistingTrack(r,n);if(o)s[t]=o,PT(s[t]),LT(s[t],i);else{const e=this.createTextTrack("captions",r,n);e&&(e[t]=!0,s[t]=e)}}createNonNativeTrack(t){if(this.nonNativeCaptionsTracks[t])return;const e=this.captionsProperties[t];if(!e)return;const s={_id:t,label:e.label,kind:"captions",default:!!e.media&&!!e.media.default,closedCaptions:e.media};this.nonNativeCaptionsTracks[t]=s,this.hls.trigger(Yy.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:[s]})}createTextTrack(t,e,s){const i=this.media;if(i)return i.addTextTrack(t,e,s)}onMediaAttaching(t,e){this.media=e.media,e.mediaSource||this._cleanTracks()}onMediaDetaching(t,e){const s=!!e.transferMedia;if(this.media=null,s)return;const{captionsTracks:i}=this;Object.keys(i).forEach(t=>{PT(i[t]),delete i[t]}),this.nonNativeCaptionsTracks={}}onManifestLoading(){this.lastCc=-1,this.lastSn=-1,this.lastPartIndex=-1,this.prevCC=-1,this.vttCCs={ccOffset:0,presentationOffset:0,0:{start:0,prevCC:-1,new:!0}},this._cleanTracks(),this.tracks=[],this.captionsTracks={},this.nonNativeCaptionsTracks={},this.textTracks=[],this.unparsedVttFrags=[],this.initPTS=[],this.cea608Parser1&&this.cea608Parser2&&(this.cea608Parser1.reset(),this.cea608Parser2.reset())}_cleanTracks(){const{media:t}=this;if(!t)return;const e=t.textTracks;if(e)for(let t=0;t<e.length;t++)PT(e[t])}onSubtitleTracksUpdated(t,e){const s=e.subtitleTracks||[],i=s.some(t=>t.textCodec===DI);if(this.config.enableWebVTT||i&&this.config.enableIMSC1){if(Uw(this.tracks,s))return void(this.tracks=s);if(this.textTracks=[],this.tracks=s,this.config.renderTextTracksNatively){const t=this.media,e=t?MT(t.textTracks):null;if(this.tracks.forEach((t,s)=>{let i;if(e){let s=null;for(let i=0;i<e.length;i++)if(e[i]&&WI(e[i],t)){s=e[i],e[i]=null;break}s&&(i=s)}if(i)PT(i);else{const e=jI(t);i=this.createTextTrack(e,t.name,t.lang),i&&(i.mode="disabled")}i&&this.textTracks.push(i)}),null!=e&&e.length){const t=e.filter(t=>null!==t).map(t=>t.label);t.length&&this.hls.logger.warn(`Media element contains unused subtitle tracks: ${t.join(", ")}. Replace media element for each source to clear TextTracks and captions menu.`)}}else if(this.tracks.length){const t=this.tracks.map(t=>({label:t.name,kind:t.type.toLowerCase(),default:t.default,subtitleTrack:t}));this.hls.trigger(Yy.NON_NATIVE_TEXT_TRACKS_FOUND,{tracks:t})}}}onManifestLoaded(t,e){this.config.enableCEA708Captions&&e.captions&&e.captions.forEach(t=>{const e=/(?:CC|SERVICE)([1-4])/.exec(t.instreamId);if(!e)return;const s=`textTrack${e[1]}`,i=this.captionsProperties[s];i&&(i.label=t.name,t.lang&&(i.languageCode=t.lang),i.media=t)})}closedCaptionsForLevel(t){const e=this.hls.levels[t.level];return null==e?void 0:e.attrs["CLOSED-CAPTIONS"]}onFragLoading(t,e){if(this.enabled&&e.frag.type===tA){var s,i;const{cea608Parser1:t,cea608Parser2:r,lastSn:n}=this,{cc:o,sn:a}=e.frag,h=null!=(s=null==(i=e.part)?void 0:i.index)?s:-1;t&&r&&(a!==n+1||a===n&&h!==this.lastPartIndex+1||o!==this.lastCc)&&(t.reset(),r.reset()),this.lastCc=o,this.lastSn=a,this.lastPartIndex=h}}onFragLoaded(t,e){const{frag:s,payload:i}=e;if(s.type===sA)if(i.byteLength){const t=s.decryptdata,r="stats"in e;if(null==t||!t.encrypted||r){const t=this.tracks[s.level],r=this.vttCCs;r[s.cc]||(r[s.cc]={start:s.start,prevCC:this.prevCC,new:!0},this.prevCC=s.cc),t&&t.textCodec===DI?this._parseIMSC1(s,i):this._parseVTTs(e)}}else this.hls.trigger(Yy.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:s,error:new Error("Empty subtitle payload")})}_parseIMSC1(t,e){const s=this.hls;xI(e,this.initPTS[t.cc],e=>{this._appendCues(e,t.level),s.trigger(Yy.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:t})},e=>{s.logger.log(`Failed to parse IMSC1: ${e}`),s.trigger(Yy.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:t,error:e})})}_parseVTTs(t){var e;const{frag:s,payload:i}=t,{initPTS:r,unparsedVttFrags:n}=this,o=r.length-1;if(!r[s.cc]&&-1===o)return void n.push(t);const a=this.hls;CI(null!=(e=s.initSegment)&&e.data?XA(s.initSegment.data,new Uint8Array(i)).buffer:i,this.initPTS[s.cc],this.vttCCs,s.cc,s.start,t=>{this._appendCues(t,s.level),a.trigger(Yy.SUBTITLE_FRAG_PROCESSED,{success:!0,frag:s})},e=>{const r="Missing initPTS for VTT MPEGTS"===e.message;r?n.push(t):this._fallbackToIMSC1(s,i),a.logger.log(`Failed to parse VTT cue: ${e}`),r&&o>s.cc||a.trigger(Yy.SUBTITLE_FRAG_PROCESSED,{success:!1,frag:s,error:e})})}_fallbackToIMSC1(t,e){const s=this.tracks[t.level];s.textCodec||xI(e,this.initPTS[t.cc],()=>{s.textCodec=DI,this._parseIMSC1(t,e)},()=>{s.textCodec="wvtt"})}_appendCues(t,e){const s=this.hls;if(this.config.renderTextTracksNatively){const s=this.textTracks[e];if(!s||"disabled"===s.mode)return;t.forEach(t=>RT(s,t))}else{const i=this.tracks[e];if(!i)return;const r=i.default?"default":"subtitles"+e;s.trigger(Yy.CUES_PARSED,{type:"subtitles",cues:t,track:r})}}onFragDecrypted(t,e){const{frag:s}=e;s.type===sA&&this.onFragLoaded(Yy.FRAG_LOADED,e)}onSubtitleTracksCleared(){this.tracks=[],this.captionsTracks={}}onFragParsingUserdata(t,e){if(!this.enabled||!this.config.enableCEA708Captions)return;const{frag:s,samples:i}=e;if(s.type!==tA||"NONE"!==this.closedCaptionsForLevel(s))for(let t=0;t<i.length;t++){const e=i[t].bytes;if(e){this.cea608Parser1||this.initCea608Parsers();const s=this.extractCea608Data(e);this.cea608Parser1.addData(i[t].pts,s[0]),this.cea608Parser2.addData(i[t].pts,s[1])}}}onBufferFlushing(t,{startOffset:e,endOffset:s,endOffsetSubtitles:i,type:r}){const{media:n}=this;if(n&&!(n.currentTime<s)){if(!r||"video"===r){const{captionsTracks:t}=this;Object.keys(t).forEach(i=>xT(t[i],e,s))}if(this.config.renderTextTracksNatively&&0===e&&void 0!==i){const{textTracks:t}=this;Object.keys(t).forEach(s=>xT(t[s],e,i))}}}extractCea608Data(t){const e=[[],[]],s=31&t[0];let i=2;for(let r=0;r<s;r++){const s=t[i++],r=127&t[i++],n=127&t[i++];if(0===r&&0===n)continue;if(!!(4&s)){const t=3&s;0!==t&&1!==t||(e[t].push(r),e[t].push(n))}}return e}},audioStreamController:class extends nE{constructor(t,e,s){super(t,e,s,"audio-stream-controller",eA),this.mainAnchor=null,this.mainFragLoading=null,this.audioOnly=!1,this.bufferedTrack=null,this.switchingTrack=null,this.trackId=-1,this.waitingData=null,this.mainDetails=null,this.flushing=!1,this.bufferFlushed=!1,this.cachedTrackLoadedData=null,this.registerListeners()}onHandlerDestroying(){this.unregisterListeners(),super.onHandlerDestroying(),this.resetItem()}resetItem(){this.mainDetails=this.mainAnchor=this.mainFragLoading=this.bufferedTrack=this.switchingTrack=this.waitingData=this.cachedTrackLoadedData=null}registerListeners(){super.registerListeners();const{hls:t}=this;t.on(Yy.LEVEL_LOADED,this.onLevelLoaded,this),t.on(Yy.AUDIO_TRACKS_UPDATED,this.onAudioTracksUpdated,this),t.on(Yy.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),t.on(Yy.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),t.on(Yy.BUFFER_RESET,this.onBufferReset,this),t.on(Yy.BUFFER_CREATED,this.onBufferCreated,this),t.on(Yy.BUFFER_FLUSHING,this.onBufferFlushing,this),t.on(Yy.BUFFER_FLUSHED,this.onBufferFlushed,this),t.on(Yy.INIT_PTS_FOUND,this.onInitPtsFound,this),t.on(Yy.FRAG_LOADING,this.onFragLoading,this),t.on(Yy.FRAG_BUFFERED,this.onFragBuffered,this)}unregisterListeners(){const{hls:t}=this;t&&(super.unregisterListeners(),t.off(Yy.LEVEL_LOADED,this.onLevelLoaded,this),t.off(Yy.AUDIO_TRACKS_UPDATED,this.onAudioTracksUpdated,this),t.off(Yy.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),t.off(Yy.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),t.off(Yy.BUFFER_RESET,this.onBufferReset,this),t.off(Yy.BUFFER_CREATED,this.onBufferCreated,this),t.off(Yy.BUFFER_FLUSHING,this.onBufferFlushing,this),t.off(Yy.BUFFER_FLUSHED,this.onBufferFlushed,this),t.off(Yy.INIT_PTS_FOUND,this.onInitPtsFound,this),t.off(Yy.FRAG_LOADING,this.onFragLoading,this),t.off(Yy.FRAG_BUFFERED,this.onFragBuffered,this))}onInitPtsFound(t,{frag:e,id:s,initPTS:i,timescale:r}){if(s===tA){const t=e.cc,s=this.fragCurrent;if(this.initPTS[t]={baseTime:i,timescale:r},this.log(`InitPTS for cc: ${t} found from main: ${i}/${r}`),this.mainAnchor=e,this.state===iE){const s=this.waitingData;(!s&&!this.loadingParts||s&&s.frag.cc!==t)&&this.syncWithAnchor(e,null==s?void 0:s.frag)}else!this.hls.hasEnoughToStart&&s&&s.cc!==t?(s.abortRequests(),this.syncWithAnchor(e,s)):this.state===QS&&this.tick()}}getLoadPosition(){return!this.startFragRequested&&this.nextLoadPosition>=0?this.nextLoadPosition:super.getLoadPosition()}syncWithAnchor(t,e){var s;const i=(null==(s=this.mainFragLoading)?void 0:s.frag)||null;if(e&&(null==i?void 0:i.cc)===e.cc)return;const r=(i||t).cc,n=Qb(this.getLevelDetails(),r,this.getLoadPosition());n&&(this.log(`Waiting fragment cc (${null==e?void 0:e.cc}) cancelled because video is at cc ${t.cc}`),this.startFragRequested=!1,this.nextLoadPosition=n.start,this.resetLoadingState(),this.state===QS&&this.doTickIdle())}startLoad(t,e){if(!this.levels)return this.startPosition=t,void(this.state=qS);const s=this.lastCurrentTime;this.stopLoad(),this.setInterval(100),s>0&&-1===t?(this.log(`Override startPosition with lastCurrentTime @${s.toFixed(3)}`),t=s,this.state=QS):this.state=$S,this.nextLoadPosition=this.lastCurrentTime=t+this.timelineOffset,this.startPosition=e?-1:t,this.tick()}doTick(){switch(this.state){case QS:this.doTickIdle();break;case $S:{const{levels:t,trackId:e}=this,s=null==t?void 0:t[e],i=null==s?void 0:s.details;if(i&&!this.waitForLive(s)){if(this.waitForCdnTuneIn(i))break;this.state=iE}break}case XS:{var t;const e=performance.now(),s=this.retryDate;if(!s||e>=s||null!=(t=this.media)&&t.seeking){const{levels:t,trackId:e}=this;this.log("RetryDate reached, switch back to IDLE state"),this.resetStartWhenNotLoaded((null==t?void 0:t[e])||null),this.state=QS}break}case iE:{const t=this.waitingData;if(t){const{frag:e,part:s,cache:i,complete:r}=t,n=this.mainAnchor;if(void 0!==this.initPTS[e.cc]){this.waitingData=null,this.state=JS;const t={frag:e,part:s,payload:i.flush().buffer,networkDetails:null};this._handleFragmentLoadProgress(t),r&&super._handleFragmentLoadComplete(t)}else n&&n.cc!==t.frag.cc&&this.syncWithAnchor(n,t.frag)}else this.state=QS}}this.onTickEnd()}resetLoadingState(){const t=this.waitingData;t&&(this.fragmentTracker.removeFragment(t.frag),this.waitingData=null),super.resetLoadingState()}onTickEnd(){const{media:t}=this;null!=t&&t.readyState&&(this.lastCurrentTime=t.currentTime)}doTickIdle(){var t;const{hls:e,levels:s,media:i,trackId:r}=this,n=e.config;if(!this.buffering||!i&&!this.primaryPrefetch&&(this.startFragRequested||!n.startFragPrefetch)||null==s||!s[r])return;const o=s[r],a=o.details;if(!a||this.waitForLive(o)||this.waitForCdnTuneIn(a))return this.state=$S,void(this.startFragRequested=!1);const h=this.mediaBuffer?this.mediaBuffer:this.media;this.bufferFlushed&&h&&(this.bufferFlushed=!1,this.afterBufferFlushed(h,IA,eA));const l=this.getFwdBufferInfo(h,eA);if(null===l)return;if(!this.switchingTrack&&this._streamEnded(l,a))return e.trigger(Yy.BUFFER_EOS,{type:"audio"}),void(this.state=eE);const c=l.len,d=e.maxBufferLength,u=a.fragments,p=u[0].start,f=this.getLoadPosition(),m=this.flushing?f:l.end;if(this.switchingTrack&&i){const t=f;a.PTSKnown&&t<p&&(l.end>p||l.nextStart)&&(this.log("Alt audio track ahead of main track, seek to start of alt audio track"),i.currentTime=p+.05)}if(c>=d&&!this.switchingTrack&&m<u[u.length-1].start)return;let g=this.getNextFragment(m,a);if(g&&this.isLoopLoading(g,m)&&(g=this.getNextFragmentLoopLoading(g,a,l,tA,d)),!g)return void(this.bufferFlushed=!0);let y=(null==(t=this.mainFragLoading)?void 0:t.frag)||null;if(!this.audioOnly&&this.startFragRequested&&y&&DA(g)&&!g.endList&&(!a.live||!this.loadingParts&&m<this.hls.liveSyncPosition)&&(this.fragmentTracker.getState(y)===dv&&(this.mainFragLoading=y=null),y&&DA(y))){if(g.start>y.end){const t=this.fragmentTracker.getFragAtPos(m,tA);t&&t.end>y.end&&(y=t,this.mainFragLoading={frag:t,targetBufferTime:null})}if(g.start>y.end)return}this.loadFragment(g,o,m)}onMediaDetaching(t,e){this.bufferFlushed=this.flushing=!1,super.onMediaDetaching(t,e)}onAudioTracksUpdated(t,{audioTracks:e}){this.resetTransmuxer(),this.levels=e.map(t=>new Pb(t))}onAudioTrackSwitching(t,e){const s=!!e.url;this.trackId=e.id;const{fragCurrent:i}=this;i&&(i.abortRequests(),this.removeUnbufferedFrags(i.start)),this.resetLoadingState(),s?(this.switchingTrack=e,this.flushAudioIfNeeded(e),this.state!==qS&&(this.setInterval(100),this.state=QS,this.tick())):(this.resetTransmuxer(),this.switchingTrack=null,this.bufferedTrack=e,this.clearInterval())}onManifestLoading(){super.onManifestLoading(),this.bufferFlushed=this.flushing=this.audioOnly=!1,this.resetItem(),this.trackId=-1}onLevelLoaded(t,e){this.mainDetails=e.details;const s=this.cachedTrackLoadedData;s&&(this.cachedTrackLoadedData=null,this.onAudioTrackLoaded(Yy.AUDIO_TRACK_LOADED,s))}onAudioTrackLoaded(t,e){var s;const{levels:i}=this,{details:r,id:n,groupId:o,track:a}=e;if(!i)return void this.warn(`Audio tracks reset while loading track ${n} "${a.name}" of "${o}"`);const h=this.mainDetails;if(!h||r.endCC>h.endCC||h.expired)return this.cachedTrackLoadedData=e,void(this.state!==qS&&(this.state=$S));this.cachedTrackLoadedData=null,this.log(`Audio track ${n} "${a.name}" of "${o}" loaded [${r.startSN},${r.endSN}]${r.lastPartSn?`[part-${r.lastPartSn}-${r.lastPartIndex}]`:""},duration:${r.totalduration}`);const l=i[n];let c=0;if(r.live||null!=(s=l.details)&&s.live){if(this.checkLiveUpdate(r),r.deltaUpdateFailed)return;var d;if(l.details)c=this.alignPlaylists(r,l.details,null==(d=this.levelLastLoaded)?void 0:d.details);r.alignedSliding||(zS(r,h),r.alignedSliding||HS(r,h),c=r.fragmentStart)}l.details=r,this.levelLastLoaded=l,this.startFragRequested||this.setStartPosition(h,c),this.hls.trigger(Yy.AUDIO_TRACK_UPDATED,{details:r,id:n,groupId:e.groupId}),this.state!==$S||this.waitForCdnTuneIn(r)||(this.state=QS),this.tick()}_handleFragmentLoadProgress(t){var e;const s=t.frag,{part:i,payload:r}=t,{config:n,trackId:o,levels:a}=this;if(!a)return void this.warn(`Audio tracks were reset while fragment load was in progress. Fragment ${s.sn} of level ${s.level} will not be buffered`);const h=a[o];if(!h)return void this.warn("Audio track is undefined on fragment load progress");const l=h.details;if(!l)return this.warn("Audio track details undefined on fragment load progress"),void this.removeUnbufferedFrags(s.start);const c=n.defaultAudioCodec||h.audioCodec||"mp4a.40.2";let d=this.transmuxer;d||(d=this.transmuxer=new Bw(this.hls,eA,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this)));const u=this.initPTS[s.cc],p=null==(e=s.initSegment)?void 0:e.data;if(void 0!==u){const t=!1,e=i?i.index:-1,n=-1!==e,o=new Cv(s.level,s.sn,s.stats.chunkCount,r.byteLength,e,n);d.push(r,p,c,"",s,i,l.totalduration,t,o,u)}else{this.log(`Unknown video PTS for cc ${s.cc}, waiting for video PTS before demuxing audio frag ${s.sn} of [${l.startSN} ,${l.endSN}],track ${o}`);const{cache:t}=this.waitingData=this.waitingData||{frag:s,part:i,cache:new aE,complete:!1};t.push(new Uint8Array(r)),this.state!==qS&&(this.state=iE)}}_handleFragmentLoadComplete(t){this.waitingData?this.waitingData.complete=!0:super._handleFragmentLoadComplete(t)}onBufferReset(){this.mediaBuffer=null}onBufferCreated(t,e){this.bufferFlushed=this.flushing=!1;const s=e.tracks.audio;s&&(this.mediaBuffer=s.buffer||null)}onFragLoading(t,e){!this.audioOnly&&e.frag.type===tA&&DA(e.frag)&&(this.mainFragLoading=e,this.state===QS&&this.tick())}onFragBuffered(t,e){const{frag:s,part:i}=e;if(s.type===eA)if(this.fragContextChanged(s))this.warn(`Fragment ${s.sn}${i?" p: "+i.index:""} of level ${s.level} finished buffering, but was aborted. state: ${this.state}, audioSwitch: ${this.switchingTrack?this.switchingTrack.name:"false"}`);else{if(DA(s)){this.fragPrevious=s;const t=this.switchingTrack;t&&(this.bufferedTrack=t,this.switchingTrack=null,this.hls.trigger(Yy.AUDIO_TRACK_SWITCHED,hA({},t)))}this.fragBufferedComplete(s,i),this.media&&this.tick()}else this.audioOnly||s.type!==tA||s.elementaryStreams.video||s.elementaryStreams.audiovideo||(this.audioOnly=!0,this.mainFragLoading=null)}onError(t,e){var s;if(e.fatal)this.state=sE;else switch(e.details){case Qy.FRAG_GAP:case Qy.FRAG_PARSING_ERROR:case Qy.FRAG_DECRYPT_ERROR:case Qy.FRAG_LOAD_ERROR:case Qy.FRAG_LOAD_TIMEOUT:case Qy.KEY_LOAD_ERROR:case Qy.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(eA,e);break;case Qy.AUDIO_TRACK_LOAD_ERROR:case Qy.AUDIO_TRACK_LOAD_TIMEOUT:case Qy.LEVEL_PARSING_ERROR:e.levelRetry||this.state!==$S||(null==(s=e.context)?void 0:s.type)!==$y||(this.state=QS);break;case Qy.BUFFER_ADD_CODEC_ERROR:case Qy.BUFFER_APPEND_ERROR:if("audio"!==e.parent)return;this.resetLoadingState();break;case Qy.BUFFER_FULL_ERROR:if("audio"!==e.parent)return;this.reduceLengthAndFlushBuffer(e)&&(this.bufferedTrack=null,super.flushMainBuffer(0,Number.POSITIVE_INFINITY,"audio"));break;case Qy.INTERNAL_EXCEPTION:this.recoverWorkerError(e)}}onBufferFlushing(t,{type:e}){e!==kA&&(this.flushing=!0)}onBufferFlushed(t,{type:e}){if(e!==kA){this.flushing=!1,this.bufferFlushed=!0,this.state===eE&&(this.state=QS);const t=this.mediaBuffer||this.media;t&&(this.afterBufferFlushed(t,e,eA),this.tick())}}_handleTransmuxComplete(t){var e;const s="audio",{hls:i}=this,{remuxResult:r,chunkMeta:n}=t,o=this.getCurrentContext(n);if(!o)return void this.resetWhenMissingContext(n);const{frag:a,part:h,level:l}=o,{details:c}=l,{audio:d,text:u,id3:p,initSegment:f}=r;if(!this.fragContextChanged(a)&&c){if(this.state=ZS,this.switchingTrack&&d&&this.completeAudioSwitch(this.switchingTrack),null!=f&&f.tracks){const t=a.initSegment||a;this._bufferInitSegment(l,f.tracks,t,n),i.trigger(Yy.FRAG_PARSING_INIT_SEGMENT,{frag:t,id:s,tracks:f.tracks})}if(d){const{startPTS:t,endPTS:e,startDTS:s,endDTS:i}=d;h&&(h.elementaryStreams[IA]={startPTS:t,endPTS:e,startDTS:s,endDTS:i}),a.setElementaryStreamInfo(IA,t,e,s,i),this.bufferFragmentData(d,a,h,n)}if(null!=p&&null!=(e=p.samples)&&e.length){const t=oA({id:s,frag:a,details:c},p);i.trigger(Yy.FRAG_PARSING_METADATA,t)}if(u){const t=oA({id:s,frag:a,details:c},u);i.trigger(Yy.FRAG_PARSING_USERDATA,t)}}else this.fragmentTracker.removeFragment(a)}_bufferInitSegment(t,e,s,i){if(this.state!==ZS)return;if(e.video&&delete e.video,e.audiovideo&&delete e.audiovideo,!e.audio)return;const r=e.audio;r.id=eA;const n=t.audioCodec;this.log(`Init audio buffer, container:${r.container}, codecs[level/parsed]=[${n}/${r.codec}]`),n&&1===n.split(",").length&&(r.levelCodec=n),this.hls.trigger(Yy.BUFFER_CODECS,e);const o=r.initSegment;if(null!=o&&o.byteLength){const t={type:"audio",frag:s,part:null,chunkMeta:i,parent:s.type,data:o};this.hls.trigger(Yy.BUFFER_APPENDING,t)}this.tickImmediate()}loadFragment(t,e,s){const i=this.fragmentTracker.getState(t);var r;if(this.switchingTrack||i===hv||i===cv)if(DA(t))if(null!=(r=e.details)&&r.live&&!this.initPTS[t.cc]){this.log(`Waiting for video PTS in continuity counter ${t.cc} of live stream before loading audio fragment ${t.sn} of level ${this.trackId}`),this.state=iE;const s=this.mainDetails;s&&s.fragmentStart!==e.details.fragmentStart&&HS(e.details,s)}else super.loadFragment(t,e,s);else this._loadInitSegment(t,e);else this.clearTrackerIfNeeded(t)}flushAudioIfNeeded(t){if(this.media&&this.bufferedTrack){const{name:e,lang:s,assocLang:i,characteristics:r,audioCodec:n,channels:o}=this.bufferedTrack;Vb({name:e,lang:s,assocLang:i,characteristics:r,audioCodec:n,channels:o},t,jb)||(Gb(t.url,this.hls)?(this.log("Switching audio track : flushing all audio"),super.flushMainBuffer(0,Number.POSITIVE_INFINITY,"audio"),this.bufferedTrack=null):this.bufferedTrack=t)}}completeAudioSwitch(t){const{hls:e}=this;this.flushAudioIfNeeded(t),this.bufferedTrack=t,this.switchingTrack=null,e.trigger(Yy.AUDIO_TRACK_SWITCHED,hA({},t))}},audioTrackController:class extends Fw{constructor(t){super(t,"audio-track-controller"),this.tracks=[],this.groupIds=null,this.tracksInGroup=[],this.trackId=-1,this.currentTrack=null,this.selectDefaultTrack=!0,this.registerListeners()}registerListeners(){const{hls:t}=this;t.on(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.on(Yy.MANIFEST_PARSED,this.onManifestParsed,this),t.on(Yy.LEVEL_LOADING,this.onLevelLoading,this),t.on(Yy.LEVEL_SWITCHING,this.onLevelSwitching,this),t.on(Yy.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),t.on(Yy.ERROR,this.onError,this)}unregisterListeners(){const{hls:t}=this;t.off(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.off(Yy.MANIFEST_PARSED,this.onManifestParsed,this),t.off(Yy.LEVEL_LOADING,this.onLevelLoading,this),t.off(Yy.LEVEL_SWITCHING,this.onLevelSwitching,this),t.off(Yy.AUDIO_TRACK_LOADED,this.onAudioTrackLoaded,this),t.off(Yy.ERROR,this.onError,this)}destroy(){this.unregisterListeners(),this.tracks.length=0,this.tracksInGroup.length=0,this.currentTrack=null,super.destroy()}onManifestLoading(){this.tracks=[],this.tracksInGroup=[],this.groupIds=null,this.currentTrack=null,this.trackId=-1,this.selectDefaultTrack=!0}onManifestParsed(t,e){this.tracks=e.audioTracks||[]}onAudioTrackLoaded(t,e){const{id:s,groupId:i,details:r}=e,n=this.tracksInGroup[s];if(!n||n.groupId!==i)return void this.warn(`Audio track with id:${s} and group:${i} not found in active group ${null==n?void 0:n.groupId}`);const o=n.details;n.details=e.details,this.log(`Audio track ${s} "${n.name}" lang:${n.lang} group:${i} loaded [${r.startSN}-${r.endSN}]`),s===this.trackId&&this.playlistLoaded(s,e,o)}onLevelLoading(t,e){this.switchLevel(e.level)}onLevelSwitching(t,e){this.switchLevel(e.level)}switchLevel(t){const e=this.hls.levels[t];if(!e)return;const s=e.audioGroups||null,i=this.groupIds;let r=this.currentTrack;if(!s||(null==i?void 0:i.length)!==(null==s?void 0:s.length)||null!=s&&s.some(t=>-1===(null==i?void 0:i.indexOf(t)))){this.groupIds=s,this.trackId=-1,this.currentTrack=null;const t=this.tracks.filter(t=>!s||-1!==s.indexOf(t.groupId));if(t.length)this.selectDefaultTrack&&!t.some(t=>t.default)&&(this.selectDefaultTrack=!1),t.forEach((t,e)=>{t.id=e});else if(!r&&!this.tracksInGroup.length)return;this.tracksInGroup=t;const e=this.hls.config.audioPreference;if(!r&&e){const s=Nb(e,t,jb);if(s>-1)r=t[s];else{const t=Nb(e,this.tracks);r=this.tracks[t]}}let i=this.findTrackId(r);-1===i&&r&&(i=this.findTrackId(null));const o={audioTracks:t};this.log(`Updating audio tracks, ${t.length} track(s) found in group(s): ${null==s?void 0:s.join(",")}`),this.hls.trigger(Yy.AUDIO_TRACKS_UPDATED,o);const a=this.trackId;if(-1!==i&&-1===a)this.setAudioTrack(i);else if(t.length&&-1===a){var n;const e=new Error(`No audio track selected for current audio group-ID(s): ${null==(n=this.groupIds)?void 0:n.join(",")} track count: ${t.length}`);this.warn(e.message),this.hls.trigger(Yy.ERROR,{type:qy.MEDIA_ERROR,details:Qy.AUDIO_TRACK_LOAD_ERROR,fatal:!0,error:e})}}}onError(t,e){!e.fatal&&e.context&&(e.context.type!==$y||e.context.id!==this.trackId||this.groupIds&&-1===this.groupIds.indexOf(e.context.groupId)||this.checkRetry(e))}get allAudioTracks(){return this.tracks}get audioTracks(){return this.tracksInGroup}get audioTrack(){return this.trackId}set audioTrack(t){this.selectDefaultTrack=!1,this.setAudioTrack(t)}setAudioOption(t){const e=this.hls;if(e.config.audioPreference=t,t){const s=this.allAudioTracks;if(this.selectDefaultTrack=!1,s.length){const i=this.currentTrack;if(i&&Vb(t,i,jb))return i;const r=Nb(t,this.tracksInGroup,jb);if(r>-1){const t=this.tracksInGroup[r];return this.setAudioTrack(r),t}if(i){let i=e.loadLevel;-1===i&&(i=e.firstAutoLevel);const r=function(t,e,s,i,r){const n=e[i],o=e.reduce((t,e,s)=>{const i=e.uri;return(t[i]||(t[i]=[])).push(s),t},{})[n.uri];o.length>1&&(i=Math.max.apply(Math,o));const a=n.videoRange,h=n.frameRate,l=n.codecSet.substring(0,4),c=Wb(e,i,e=>{if(e.videoRange!==a||e.frameRate!==h||e.codecSet.substring(0,4)!==l)return!1;const i=e.audioGroups,n=s.filter(t=>!i||-1!==i.indexOf(t.groupId));return Nb(t,n,r)>-1});return c>-1?c:Wb(e,i,e=>{const i=e.audioGroups,n=s.filter(t=>!i||-1!==i.indexOf(t.groupId));return Nb(t,n,r)>-1})}(t,e.levels,s,i,jb);if(-1===r)return null;e.nextLoadLevel=r}if(t.channels||t.audioCodec){const e=Nb(t,s);if(e>-1)return s[e]}}}return null}setAudioTrack(t){const e=this.tracksInGroup;if(t<0||t>=e.length)return void this.warn(`Invalid audio track id: ${t}`);this.selectDefaultTrack=!1;const s=this.currentTrack,i=e[t],r=i.details&&!i.details.live;if(t===this.trackId&&i===s&&r)return;if(this.log(`Switching to audio-track ${t} "${i.name}" lang:${i.lang} group:${i.groupId} channels:${i.channels}`),this.trackId=t,this.currentTrack=i,this.hls.trigger(Yy.AUDIO_TRACK_SWITCHING,hA({},i)),r)return;const n=this.switchParams(i.url,null==s?void 0:s.details,i.details);this.loadPlaylist(n)}findTrackId(t){const e=this.tracksInGroup;for(let s=0;s<e.length;s++){const i=e[s];if((!this.selectDefaultTrack||i.default)&&(!t||Vb(t,i,jb)))return s}if(t){const{name:s,lang:i,assocLang:r,characteristics:n,audioCodec:o,channels:a}=t;for(let t=0;t<e.length;t++){if(Vb({name:s,lang:i,assocLang:r,characteristics:n,audioCodec:o,channels:a},e[t],jb))return t}for(let s=0;s<e.length;s++){const i=e[s];if(Ow(t.attrs,i.attrs,["LANGUAGE","ASSOC-LANGUAGE","CHARACTERISTICS"]))return s}for(let s=0;s<e.length;s++){const i=e[s];if(Ow(t.attrs,i.attrs,["LANGUAGE"]))return s}}return-1}loadPlaylist(t){super.loadPlaylist();const e=this.currentTrack;this.shouldLoadPlaylist(e)&&Gb(e.url,this.hls)&&this.scheduleLoading(e,t)}loadingPlaylist(t,e){super.loadingPlaylist(t,e);const s=t.id,i=t.groupId,r=this.getUrlWithDirectives(t.url,e),n=t.details,o=null==n?void 0:n.age;this.log(`Loading audio-track ${s} "${t.name}" lang:${t.lang} group:${i}${void 0!==(null==e?void 0:e.msn)?" at sn "+e.msn+" part "+e.part:""}${o&&n.live?" age "+o.toFixed(1)+(n.type&&" "+n.type||""):""} ${r}`),this.hls.trigger(Yy.AUDIO_TRACK_LOADING,{url:r,id:s,groupId:i,deliveryDirectives:e||null,track:t})}},emeController:CT,cmcdController:class{constructor(t){this.hls=void 0,this.config=void 0,this.media=void 0,this.sid=void 0,this.cid=void 0,this.useHeaders=!1,this.includeKeys=void 0,this.initialized=!1,this.starved=!1,this.buffering=!0,this.audioBuffer=void 0,this.videoBuffer=void 0,this.onWaiting=()=>{this.initialized&&(this.starved=!0),this.buffering=!0},this.onPlaying=()=>{this.initialized||(this.initialized=!0),this.buffering=!1},this.applyPlaylistData=t=>{try{this.apply(t,{ot:qw.MANIFEST,su:!this.initialized})}catch(t){this.hls.logger.warn("Could not generate manifest CMCD data.",t)}},this.applyFragmentData=t=>{try{const{frag:e,part:s}=t,i=this.hls.levels[e.level],r=this.getObjectType(e),n={d:1e3*(s||e).duration,ot:r};r!==qw.VIDEO&&r!==qw.AUDIO&&r!=qw.MUXED||(n.br=i.bitrate/1e3,n.tb=this.getTopBandwidth(r)/1e3,n.bl=this.getBufferLength(r));const o=s?this.getNextPart(s):this.getNextFrag(e);null!=o&&o.url&&o.url!==e.url&&(n.nor=o.url),this.apply(t,n)}catch(t){this.hls.logger.warn("Could not generate segment CMCD data.",t)}},this.hls=t;const e=this.config=t.config,{cmcd:s}=e;null!=s&&(e.pLoader=this.createPlaylistLoader(),e.fLoader=this.createFragmentLoader(),this.sid=s.sessionId||t.sessionId,this.cid=s.contentId,this.useHeaders=!0===s.useHeaders,this.includeKeys=s.includeKeys,this.registerListeners())}registerListeners(){const t=this.hls;t.on(Yy.MEDIA_ATTACHED,this.onMediaAttached,this),t.on(Yy.MEDIA_DETACHED,this.onMediaDetached,this),t.on(Yy.BUFFER_CREATED,this.onBufferCreated,this)}unregisterListeners(){const t=this.hls;t.off(Yy.MEDIA_ATTACHED,this.onMediaAttached,this),t.off(Yy.MEDIA_DETACHED,this.onMediaDetached,this),t.off(Yy.BUFFER_CREATED,this.onBufferCreated,this)}destroy(){this.unregisterListeners(),this.onMediaDetached(),this.hls=this.config=this.audioBuffer=this.videoBuffer=null,this.onWaiting=this.onPlaying=this.media=null}onMediaAttached(t,e){this.media=e.media,this.media.addEventListener("waiting",this.onWaiting),this.media.addEventListener("playing",this.onPlaying)}onMediaDetached(){this.media&&(this.media.removeEventListener("waiting",this.onWaiting),this.media.removeEventListener("playing",this.onPlaying),this.media=null)}onBufferCreated(t,e){var s,i;this.audioBuffer=null==(s=e.tracks.audio)?void 0:s.buffer,this.videoBuffer=null==(i=e.tracks.video)?void 0:i.buffer}createData(){var t;return{v:1,sf:Qw.HLS,sid:this.sid,cid:this.cid,pr:null==(t=this.media)?void 0:t.playbackRate,mtp:this.hls.bandwidthEstimate/1e3}}apply(t,e={}){oA(e,this.createData());const s=e.ot===qw.INIT||e.ot===qw.VIDEO||e.ot===qw.MUXED;this.starved&&s&&(e.bs=!0,e.su=!0,this.starved=!1),null==e.su&&(e.su=this.buffering);const{includeKeys:i}=this;i&&(e=Object.keys(e).reduce((t,s)=>(i.includes(s)&&(t[s]=e[s]),t),{}));const r={baseUrl:t.url};this.useHeaders?(t.headers||(t.headers={}),ST(t.headers,e,r)):t.url=wT(t.url,e,r)}getNextFrag(t){var e;const s=null==(e=this.hls.levels[t.level])?void 0:e.details;if(s){const e=t.sn-s.startSN;return s.fragments[e+1]}}getNextPart(t){var e,s;const{index:i,fragment:r}=t,n=null==(e=this.hls.levels[r.level])||null==(s=e.details)?void 0:s.partList;if(n){const{sn:t}=r;for(let e=n.length-1;e>=0;e--){const s=n[e];if(s.index===i&&s.fragment.sn===t)return n[e+1]}}}getObjectType(t){const{type:e}=t;return"subtitle"===e?qw.TIMED_TEXT:"initSegment"===t.sn?qw.INIT:"audio"===e?qw.AUDIO:"main"===e?this.hls.audioTracks.length?qw.VIDEO:qw.MUXED:void 0}getTopBandwidth(t){let e,s=0;const i=this.hls;if(t===qw.AUDIO)e=i.audioTracks;else{const t=i.maxAutoLevel,s=t>-1?t+1:i.levels.length;e=i.levels.slice(0,s)}return e.forEach(t=>{t.bitrate>s&&(s=t.bitrate)}),s>0?s:NaN}getBufferLength(t){const e=this.media,s=t===qw.AUDIO?this.audioBuffer:this.videoBuffer;if(!s||!e)return NaN;return 1e3*Lv.bufferInfo(s,e.currentTime,this.config.maxBufferHole).len}createPlaylistLoader(){const{pLoader:t}=this.config,e=this.applyPlaylistData,s=t||this.config.loader;return class{constructor(t){this.loader=void 0,this.loader=new s(t)}get stats(){return this.loader.stats}get context(){return this.loader.context}destroy(){this.loader.destroy()}abort(){this.loader.abort()}load(t,s,i){e(t),this.loader.load(t,s,i)}}}createFragmentLoader(){const{fLoader:t}=this.config,e=this.applyFragmentData,s=t||this.config.loader;return class{constructor(t){this.loader=void 0,this.loader=new s(t)}get stats(){return this.loader.stats}get context(){return this.loader.context}destroy(){this.loader.destroy()}abort(){this.loader.abort()}load(t,s,i){e(t),this.loader.load(t,s,i)}}}},contentSteeringController:class extends lA{constructor(t){super("content-steering",t.logger),this.hls=void 0,this.loader=null,this.uri=null,this.pathwayId=".",this._pathwayPriority=null,this.timeToLoad=300,this.reloadTimer=-1,this.updated=0,this.started=!1,this.enabled=!0,this.levels=null,this.audioTracks=null,this.subtitleTracks=null,this.penalizedPathways={},this.hls=t,this.registerListeners()}registerListeners(){const t=this.hls;t.on(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.on(Yy.MANIFEST_LOADED,this.onManifestLoaded,this),t.on(Yy.MANIFEST_PARSED,this.onManifestParsed,this),t.on(Yy.ERROR,this.onError,this)}unregisterListeners(){const t=this.hls;t&&(t.off(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.off(Yy.MANIFEST_LOADED,this.onManifestLoaded,this),t.off(Yy.MANIFEST_PARSED,this.onManifestParsed,this),t.off(Yy.ERROR,this.onError,this))}pathways(){return(this.levels||[]).reduce((t,e)=>(-1===t.indexOf(e.pathwayId)&&t.push(e.pathwayId),t),[])}get pathwayPriority(){return this._pathwayPriority}set pathwayPriority(t){this.updatePathwayPriority(t)}startLoad(){if(this.started=!0,this.clearTimeout(),this.enabled&&this.uri){if(this.updated){const t=1e3*this.timeToLoad-(performance.now()-this.updated);if(t>0)return void this.scheduleRefresh(this.uri,t)}this.loadSteeringManifest(this.uri)}}stopLoad(){this.started=!1,this.loader&&(this.loader.destroy(),this.loader=null),this.clearTimeout()}clearTimeout(){-1!==this.reloadTimer&&(self.clearTimeout(this.reloadTimer),this.reloadTimer=-1)}destroy(){this.unregisterListeners(),this.stopLoad(),this.hls=null,this.levels=this.audioTracks=this.subtitleTracks=null}removeLevel(t){const e=this.levels;e&&(this.levels=e.filter(e=>e!==t))}onManifestLoading(){this.stopLoad(),this.enabled=!0,this.timeToLoad=300,this.updated=0,this.uri=null,this.pathwayId=".",this.levels=this.audioTracks=this.subtitleTracks=null}onManifestLoaded(t,e){const{contentSteering:s}=e;null!==s&&(this.pathwayId=s.pathwayId,this.uri=s.uri,this.started&&this.startLoad())}onManifestParsed(t,e){this.audioTracks=e.audioTracks,this.subtitleTracks=e.subtitleTracks}onError(t,e){const{errorAction:s}=e;if((null==s?void 0:s.action)===ev&&s.flags===nv){const t=this.levels;let i=this._pathwayPriority,r=this.pathwayId;if(e.context){const{groupId:s,pathwayId:i,type:n}=e.context;s&&t?r=this.getPathwayForGroupId(s,n,r):i&&(r=i)}r in this.penalizedPathways||(this.penalizedPathways[r]=performance.now()),!i&&t&&(i=this.pathways()),i&&i.length>1&&(this.updatePathwayPriority(i),s.resolved=this.pathwayId!==r),s.resolved||this.warn(`Could not resolve ${e.details} ("${e.error.message}") with content-steering for Pathway: ${r} levels: ${t?t.length:t} priorities: ${Bb(i)} penalized: ${Bb(this.penalizedPathways)}`)}}filterParsedLevels(t){this.levels=t;let e=this.getLevelsForPathway(this.pathwayId);if(0===e.length){const s=t[0].pathwayId;this.log(`No levels found in Pathway ${this.pathwayId}. Setting initial Pathway to "${s}"`),e=this.getLevelsForPathway(s),this.pathwayId=s}return e.length!==t.length&&this.log(`Found ${e.length}/${t.length} levels in Pathway "${this.pathwayId}"`),e}getLevelsForPathway(t){return null===this.levels?[]:this.levels.filter(e=>t===e.pathwayId)}updatePathwayPriority(t){let e;this._pathwayPriority=t;const s=this.penalizedPathways,i=performance.now();Object.keys(s).forEach(t=>{i-s[t]>3e5&&delete s[t]});for(let i=0;i<t.length;i++){const r=t[i];if(r in s)continue;if(r===this.pathwayId)return;const n=this.hls.nextLoadLevel,o=this.hls.levels[n];if(e=this.getLevelsForPathway(r),e.length>0){this.log(`Setting Pathway to "${r}"`),this.pathwayId=r,VS(e),this.hls.trigger(Yy.LEVELS_UPDATED,{levels:e});const t=this.hls.levels[n];o&&t&&this.levels&&(t.attrs["STABLE-VARIANT-ID"]!==o.attrs["STABLE-VARIANT-ID"]&&t.bitrate!==o.bitrate&&this.log(`Unstable Pathways change from bitrate ${o.bitrate} to ${t.bitrate}`),this.hls.nextLoadLevel=n);break}}}getPathwayForGroupId(t,e,s){const i=this.getLevelsForPathway(s).concat(this.levels||[]);for(let s=0;s<i.length;s++)if(e===$y&&i[s].hasAudioGroup(t)||e===Zy&&i[s].hasSubtitleGroup(t))return i[s].pathwayId;return s}clonePathways(t){const e=this.levels;if(!e)return;const s={},i={};t.forEach(t=>{const{ID:r,"BASE-ID":n,"URI-REPLACEMENT":o}=t;if(e.some(t=>t.pathwayId===r))return;const a=this.getLevelsForPathway(n).map(t=>{const e=new Ov(t.attrs);e["PATHWAY-ID"]=r;const n=e.AUDIO&&`${e.AUDIO}_clone_${r}`,a=e.SUBTITLES&&`${e.SUBTITLES}_clone_${r}`;n&&(s[e.AUDIO]=n,e.AUDIO=n),a&&(i[e.SUBTITLES]=a,e.SUBTITLES=a);const h=IT(t.uri,e["STABLE-VARIANT-ID"],"PER-VARIANT-URIS",o),l=new Pb({attrs:e,audioCodec:t.audioCodec,bitrate:t.bitrate,height:t.height,name:t.name,url:h,videoCodec:t.videoCodec,width:t.width});if(t.audioGroups)for(let e=1;e<t.audioGroups.length;e++)l.addGroupId("audio",`${t.audioGroups[e]}_clone_${r}`);if(t.subtitleGroups)for(let e=1;e<t.subtitleGroups.length;e++)l.addGroupId("text",`${t.subtitleGroups[e]}_clone_${r}`);return l});e.push(...a),TT(this.audioTracks,s,o,r),TT(this.subtitleTracks,i,o,r)})}loadSteeringManifest(t){const e=this.hls.config,s=e.loader;let i;this.loader&&this.loader.destroy(),this.loader=new s(e);try{i=new self.URL(t)}catch(e){return this.enabled=!1,void this.log(`Failed to parse Steering Manifest URI: ${t}`)}if("data:"!==i.protocol){const t=0|(this.hls.bandwidthEstimate||e.abrEwmaDefaultEstimate);i.searchParams.set("_HLS_pathway",this.pathwayId),i.searchParams.set("_HLS_throughput",""+t)}const r={responseType:"json",url:i.href},n=e.steeringManifestLoadPolicy.default,o=n.errorRetry||n.timeoutRetry||{},a={loadPolicy:n,timeout:n.maxLoadTimeMs,maxRetry:o.maxNumRetry||0,retryDelay:o.retryDelayMs||0,maxRetryDelay:o.maxRetryDelayMs||0},h={onSuccess:(t,e,s,r)=>{this.log(`Loaded steering manifest: "${i}"`);const n=t.data;if(1!==(null==n?void 0:n.VERSION))return void this.log(`Steering VERSION ${n.VERSION} not supported!`);this.updated=performance.now(),this.timeToLoad=n.TTL;const{"RELOAD-URI":o,"PATHWAY-CLONES":a,"PATHWAY-PRIORITY":h}=n;if(o)try{this.uri=new self.URL(o,i).href}catch(t){return this.enabled=!1,void this.log(`Failed to parse Steering Manifest RELOAD-URI: ${o}`)}this.scheduleRefresh(this.uri||s.url),a&&this.clonePathways(a);const l={steeringManifest:n,url:i.toString()};this.hls.trigger(Yy.STEERING_MANIFEST_LOADED,l),h&&this.updatePathwayPriority(h)},onError:(t,e,s,i)=>{if(this.log(`Error loading steering manifest: ${t.code} ${t.text} (${e.url})`),this.stopLoad(),410===t.code)return this.enabled=!1,void this.log(`Steering manifest ${e.url} no longer available`);let r=1e3*this.timeToLoad;if(429===t.code){const t=this.loader;if("function"==typeof(null==t?void 0:t.getResponseHeader)){const e=t.getResponseHeader("Retry-After");e&&(r=1e3*parseFloat(e))}return void this.log(`Steering manifest ${e.url} rate limited`)}this.scheduleRefresh(this.uri||e.url,r)},onTimeout:(t,e,s)=>{this.log(`Timeout loading steering manifest (${e.url})`),this.scheduleRefresh(this.uri||e.url)}};this.log(`Requesting steering manifest: ${i}`),this.loader.load(r,a,h)}scheduleRefresh(t,e=1e3*this.timeToLoad){this.clearTimeout(),this.reloadTimer=self.setTimeout(()=>{var e;const s=null==(e=this.hls)?void 0:e.media;!s||s.ended?this.scheduleRefresh(t,1e3*this.timeToLoad):this.loadSteeringManifest(t)},e)}},interstitialsController:class extends lA{constructor(t,e){super("interstitials",t.logger),this.HlsPlayerClass=void 0,this.hls=void 0,this.assetListLoader=void 0,this.mediaSelection=null,this.altSelection=null,this.media=null,this.detachedData=null,this.requiredTracks=null,this.manager=null,this.playerQueue=[],this.bufferedPos=-1,this.timelinePos=-1,this.schedule=void 0,this.playingItem=null,this.bufferingItem=null,this.waitingItem=null,this.endedItem=null,this.playingAsset=null,this.endedAsset=null,this.bufferingAsset=null,this.shouldPlay=!1,this.onPlay=()=>{this.shouldPlay=!0},this.onPause=()=>{this.shouldPlay=!1},this.onSeeking=()=>{const t=this.currentTime;if(void 0===t||this.playbackDisabled)return;const e=t-this.timelinePos;if(Math.abs(e)<1/7056e5)return;const s=e<=-.01;this.timelinePos=t,this.bufferedPos=t;const i=this.playingItem;if(!i)return void this.checkBuffer();if(s){this.schedule.resetErrorsInRange(t,t-e)&&this.updateSchedule()}if(this.checkBuffer(),s&&t<i.start||t>=i.end){var r;const t=this.schedule.findItemIndexAtTime(this.timelinePos);if(!this.isInterstitial(i)&&null!=(r=this.media)&&r.paused&&(this.shouldPlay=!1),!s){const e=this.findItemIndex(i);if(t>e){const s=this.schedule.findJumpRestrictedIndex(e+1,t);if(s>e)return void this.setSchedulePosition(s)}}return void this.setSchedulePosition(t)}const n=this.playingAsset;if(!n){if(this.playingLastItem&&this.isInterstitial(i)){const e=i.event.assetList[0];e&&(this.endedItem=this.playingItem,this.playingItem=null,this.setScheduleToAssetAtTime(t,e))}return}const o=n.timelineStart,a=n.duration||0;(s&&t<o||t>=o+a)&&this.setScheduleToAssetAtTime(t,n)},this.onTimeupdate=()=>{const t=this.currentTime;if(void 0===t||this.playbackDisabled)return;if(!(t>this.timelinePos))return;this.timelinePos=t,t>this.bufferedPos&&this.checkBuffer();const e=this.playingItem;if(!e||this.playingLastItem)return;if(t>=e.end){this.timelinePos=e.end;const t=this.findItemIndex(e);this.setSchedulePosition(t+1)}const s=this.playingAsset;if(!s)return;t>=s.timelineStart+(s.duration||0)&&this.setScheduleToAssetAtTime(t,s)},this.onScheduleUpdate=(t,e)=>{const s=this.schedule,i=this.playingItem,r=s.events||[],n=s.items||[],o=s.durations,a=t.map(t=>t.identifier),h=!(!r.length&&!a.length);(h||e)&&this.log(`INTERSTITIALS_UPDATED (${r.length}): ${r}\nSchedule: ${n.map(t=>KT(t))} pos: ${this.timelinePos}`),a.length&&this.log(`Removed events ${a}`),this.playerQueue.forEach(t=>{if(t.interstitial.appendInPlace){const e=t.assetItem.timelineStart,s=t.timelineOffset-e;if(s)try{t.timelineOffset=e}catch(i){Math.abs(s)>FT&&this.warn(`${i} ("${t.assetId}" ${t.timelineOffset}->${e})`)}}});let l=null;if(i){const t=this.updateItem(i,this.timelinePos);this.itemsMatch(i,t)&&(this.playingItem=t,this.waitingItem=this.endedItem=null,l=()=>this.trimInPlace(t,i))}else this.waitingItem=this.updateItem(this.waitingItem),this.endedItem=this.updateItem(this.endedItem);const c=this.bufferingItem;if(c){const t=this.updateItem(c,this.bufferedPos);this.itemsMatch(c,t)?(this.bufferingItem=t,l||(l=()=>this.trimInPlace(t,c))):c.event&&(this.bufferingItem=this.playingItem,this.clearInterstitial(c.event,null))}if(t.forEach(t=>{t.assetList.forEach(t=>{this.clearAssetPlayer(t.identifier,null)})}),h||e){if(this.hls.trigger(Yy.INTERSTITIALS_UPDATED,{events:r.slice(0),schedule:n.slice(0),durations:o,removedIds:a}),this.isInterstitial(i)&&a.includes(i.event.identifier))return this.warn(`Interstitial "${i.event.identifier}" removed while playing`),void this.primaryFallback(i.event);l&&l(),this.checkBuffer()}},this.hls=t,this.HlsPlayerClass=e,this.assetListLoader=new qT(t),this.schedule=new HT(this.onScheduleUpdate,t.logger),this.registerListeners()}registerListeners(){const t=this.hls;t.on(Yy.MEDIA_ATTACHING,this.onMediaAttaching,this),t.on(Yy.MEDIA_ATTACHED,this.onMediaAttached,this),t.on(Yy.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.on(Yy.LEVEL_UPDATED,this.onLevelUpdated,this),t.on(Yy.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),t.on(Yy.AUDIO_TRACK_UPDATED,this.onAudioTrackUpdated,this),t.on(Yy.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),t.on(Yy.SUBTITLE_TRACK_UPDATED,this.onSubtitleTrackUpdated,this),t.on(Yy.EVENT_CUE_ENTER,this.onInterstitialCueEnter,this),t.on(Yy.ASSET_LIST_LOADED,this.onAssetListLoaded,this),t.on(Yy.BUFFER_APPENDED,this.onBufferAppended,this),t.on(Yy.BUFFER_FLUSHED,this.onBufferFlushed,this),t.on(Yy.BUFFERED_TO_END,this.onBufferedToEnd,this),t.on(Yy.MEDIA_ENDED,this.onMediaEnded,this),t.on(Yy.ERROR,this.onError,this),t.on(Yy.DESTROYING,this.onDestroying,this)}unregisterListeners(){const t=this.hls;t&&(t.off(Yy.MEDIA_ATTACHING,this.onMediaAttaching,this),t.off(Yy.MEDIA_ATTACHED,this.onMediaAttached,this),t.off(Yy.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.off(Yy.LEVEL_UPDATED,this.onLevelUpdated,this),t.off(Yy.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),t.off(Yy.AUDIO_TRACK_UPDATED,this.onAudioTrackUpdated,this),t.off(Yy.SUBTITLE_TRACK_SWITCH,this.onSubtitleTrackSwitch,this),t.off(Yy.SUBTITLE_TRACK_UPDATED,this.onSubtitleTrackUpdated,this),t.off(Yy.EVENT_CUE_ENTER,this.onInterstitialCueEnter,this),t.off(Yy.ASSET_LIST_LOADED,this.onAssetListLoaded,this),t.off(Yy.BUFFER_CODECS,this.onBufferCodecs,this),t.off(Yy.BUFFER_APPENDED,this.onBufferAppended,this),t.off(Yy.BUFFER_FLUSHED,this.onBufferFlushed,this),t.off(Yy.BUFFERED_TO_END,this.onBufferedToEnd,this),t.off(Yy.MEDIA_ENDED,this.onMediaEnded,this),t.off(Yy.ERROR,this.onError,this),t.off(Yy.DESTROYING,this.onDestroying,this))}startLoad(){this.resumeBuffering()}stopLoad(){this.pauseBuffering()}resumeBuffering(){var t;null==(t=this.getBufferingPlayer())||t.resumeBuffering()}pauseBuffering(){var t;null==(t=this.getBufferingPlayer())||t.pauseBuffering()}destroy(){this.unregisterListeners(),this.stopLoad(),this.assetListLoader&&this.assetListLoader.destroy(),this.emptyPlayerQueue(),this.clearScheduleState(),this.schedule&&this.schedule.destroy(),this.media=this.detachedData=this.mediaSelection=this.requiredTracks=this.altSelection=this.manager=null,this.hls=this.HlsPlayerClass=this.schedule=this.log=null,this.assetListLoader=null,this.onPlay=this.onPause=this.onSeeking=this.onTimeupdate=null,this.onScheduleUpdate=null}onDestroying(){const t=this.primaryMedia||this.media;t&&this.removeMediaListeners(t)}removeMediaListeners(t){_T(t,"play",this.onPlay),_T(t,"pause",this.onPause),_T(t,"seeking",this.onSeeking),_T(t,"timeupdate",this.onTimeupdate)}onMediaAttaching(t,e){const s=this.media=e.media;kT(s,"seeking",this.onSeeking),kT(s,"timeupdate",this.onTimeupdate),kT(s,"play",this.onPlay),kT(s,"pause",this.onPause)}onMediaAttached(t,e){const s=this.effectivePlayingItem,i=this.detachedData;if(this.detachedData=null,null===s)this.checkStart();else if(!i){this.clearScheduleState();const t=this.findItemIndex(s);this.setSchedulePosition(t)}}clearScheduleState(){this.playingItem=this.bufferingItem=this.waitingItem=this.endedItem=this.playingAsset=this.endedAsset=this.bufferingAsset=null}onMediaDetaching(t,e){const s=!!e.transferMedia,i=this.media;if(this.media=null,!s&&(i&&this.removeMediaListeners(i),this.detachedData)){const t=this.getBufferingPlayer();t&&(this.playingAsset=this.endedAsset=this.bufferingAsset=this.bufferingItem=this.waitingItem=this.detachedData=null,t.detachMedia()),this.shouldPlay=!1}}get interstitialsManager(){if(!this.manager){if(!this.hls)return null;const t=this,e=()=>t.bufferingItem||t.waitingItem,s=e=>e?t.getAssetPlayer(e.identifier):e,i=(e,i,r,o,a)=>{if(e){let h=e[i].start;const l=e.event;if(l){if("playout"===i||l.timelineOccupancy!==UT.Point){const t=s(r);(null==t?void 0:t.interstitial)===l&&(h+=t.assetItem.startOffset+t[a])}}else{h+=("bufferedPos"===o?n():t[o])-e.start}return h}return 0},r=(e,s)=>{if(0!==e&&"primary"!==s&&t.schedule.length){var i;const r=t.schedule.findItemIndexAtTime(e),n=null==(i=t.schedule.items)?void 0:i[r];if(n){return e+(n[s].start-n.start)}}return e},n=()=>{const e=t.bufferedPos;return e===Number.MAX_VALUE?o("primary"):Math.max(e,0)},o=e=>{var s;return null!=(s=t.primaryDetails)&&s.live?t.primaryDetails.edge:t.schedule.durations[e]},a=(e,r)=>{var n,o;const a=t.effectivePlayingItem;if(null!=a&&null!=(n=a.event)&&n.restrictions.skip)return;t.log(`seek to ${e} "${r}"`);const h=t.effectivePlayingItem,l=t.schedule.findItemIndexAtTime(e,r),c=null==(o=t.schedule.items)?void 0:o[l],d=t.getBufferingPlayer(),u=null==d?void 0:d.interstitial,p=null==u?void 0:u.appendInPlace,f=h&&t.itemsMatch(h,c);if(h&&(p||f)){const n=s(t.playingAsset),o=(null==n?void 0:n.media)||t.primaryMedia;if(o){const s="primary"===r?o.currentTime:i(h,r,t.playingAsset,"timelinePos","currentTime"),a=e-s,l=(p?s:o.currentTime)+a;if(l>=0&&(!n||p||l<=n.duration))return void(o.currentTime=l)}}if(c){let s=e;if("primary"!==r){const t=e-c[r].start;s=c.start+t}const i=!t.isInterstitial(c);if(t.isInterstitial(h)&&!h.event.appendInPlace||!i&&!c.event.appendInPlace){if(h){const n=t.findItemIndex(h);if(l>n){const e=t.schedule.findJumpRestrictedIndex(n+1,l);if(e>n)return void t.setSchedulePosition(e)}let o=0;if(i)t.timelinePos=s,t.checkBuffer();else{var m;const t=null==c||null==(m=c.event)?void 0:m.assetList;if(t){const s=e-(c[r]||c).start;for(let e=t.length;e--;){const i=t[e];if(i.duration&&s>=i.startOffset&&s<i.startOffset+i.duration){o=e;break}}}}t.setSchedulePosition(l,o)}}else{const e=t.media||(p?null==d?void 0:d.media:null);e&&(e.currentTime=s)}}},h=()=>{const s=t.effectivePlayingItem;if(t.isInterstitial(s))return s;const i=e();return t.isInterstitial(i)?i:null},l={get currentTime(){const e=h(),s=t.effectivePlayingItem;return s&&s===e?i(s,"playout",t.effectivePlayingAsset,"timelinePos","currentTime")-s.playout.start:0},set currentTime(e){const s=h(),i=t.effectivePlayingItem;i&&i===s&&a(e+i.playout.start,"playout")},get duration(){const t=h();return t?t.playout.end-t.playout.start:0},get assetPlayers(){var e;const s=null==(e=h())?void 0:e.event.assetList;return s?s.map(e=>t.getAssetPlayer(e.identifier)):[]},get playingIndex(){var e;const s=null==(e=h())?void 0:e.event;return s&&t.effectivePlayingAsset?s.findAssetIndex(t.effectivePlayingAsset):-1},get scheduleItem(){return h()}};this.manager={get events(){var e,s;return(null==(e=t.schedule)||null==(s=e.events)?void 0:s.slice(0))||[]},get schedule(){var e,s;return(null==(e=t.schedule)||null==(s=e.items)?void 0:s.slice(0))||[]},get interstitialPlayer(){return h()?l:null},get playerQueue(){return t.playerQueue.slice(0)},get bufferingAsset(){return t.bufferingAsset},get bufferingItem(){return e()},get bufferingIndex(){const s=e();return t.findItemIndex(s)},get playingAsset(){return t.effectivePlayingAsset},get playingItem(){return t.effectivePlayingItem},get playingIndex(){const e=t.effectivePlayingItem;return t.findItemIndex(e)},primary:{get bufferedEnd(){return n()},get currentTime(){const e=t.timelinePos;return e>0?e:0},set currentTime(t){a(t,"primary")},get duration(){return o("primary")},get seekableStart(){var e;return(null==(e=t.primaryDetails)?void 0:e.fragmentStart)||0}},integrated:{get bufferedEnd(){return i(e(),"integrated",t.bufferingAsset,"bufferedPos","bufferedEnd")},get currentTime(){return i(t.effectivePlayingItem,"integrated",t.effectivePlayingAsset,"timelinePos","currentTime")},set currentTime(t){a(t,"integrated")},get duration(){return o("integrated")},get seekableStart(){var e;return r((null==(e=t.primaryDetails)?void 0:e.fragmentStart)||0,"integrated")}},skip:()=>{const e=t.effectivePlayingItem,s=null==e?void 0:e.event;if(s&&!s.restrictions.skip){const i=t.findItemIndex(e);if(s.appendInPlace){const t=e.playout.start+e.event.duration;a(t+.001,"playout")}else t.advanceAfterAssetEnded(s,i,1/0)}}}}return this.manager}get effectivePlayingItem(){return this.waitingItem||this.playingItem||this.endedItem}get effectivePlayingAsset(){return this.playingAsset||this.endedAsset}get playingLastItem(){var t;const e=this.playingItem,s=null==(t=this.schedule)?void 0:t.items;return!!(this.playbackStarted&&e&&s)&&this.findItemIndex(e)===s.length-1}get playbackStarted(){return null!==this.effectivePlayingItem}get currentTime(){var t,e,s;if(null===this.mediaSelection)return;const i=this.waitingItem||this.playingItem;if(this.isInterstitial(i)&&!i.event.appendInPlace)return;let r=this.media;!r&&null!=(t=this.bufferingItem)&&null!=(e=t.event)&&e.appendInPlace&&(r=this.primaryMedia);const n=null==(s=r)?void 0:s.currentTime;return void 0!==n&&zy(n)?n:void 0}get primaryMedia(){var t;return this.media||(null==(t=this.detachedData)?void 0:t.media)||null}isInterstitial(t){return!(null==t||!t.event)}retreiveMediaSource(t,e){const s=this.getAssetPlayer(t);s&&this.transferMediaFromPlayer(s,e)}transferMediaFromPlayer(t,e){const s=t.interstitial.appendInPlace,i=t.media;if(s&&i===this.primaryMedia){if(this.bufferingAsset=null,(!e||this.isInterstitial(e)&&!e.event.appendInPlace)&&e&&i)return void(this.detachedData={media:i});const s=t.transferMedia();this.log(`transfer MediaSource from ${t} ${Bb(s)}`),this.detachedData=s}else e&&i&&(this.shouldPlay||(this.shouldPlay=!i.paused))}transferMediaTo(t,e){var s,i;if(t.media===e)return;let r=null;const n=this.hls,o=t!==n,a=o&&t.interstitial.appendInPlace,h=null==(s=this.detachedData)?void 0:s.mediaSource;let l;if(n.media)a&&(r=n.transferMedia(),this.detachedData=r),l="Primary";else if(h){const t=this.getBufferingPlayer();t?(r=t.transferMedia(),l=`${t}`):l="detached MediaSource"}else l="detached media";if(!r)if(h)r=this.detachedData,this.log(`using detachedData: MediaSource ${Bb(r)}`);else if(!this.detachedData||n.media===e){const t=this.playerQueue;t.length>1&&t.forEach(t=>{if(o&&t.interstitial.appendInPlace!==a){const e=t.interstitial;this.clearInterstitial(t.interstitial,null),e.appendInPlace=!1,e.appendInPlace&&this.warn(`Could not change append strategy for queued assets ${e}`)}}),this.hls.detachMedia(),this.detachedData={media:e}}const c=r&&"mediaSource"in r&&"closed"!==(null==(i=r.mediaSource)?void 0:i.readyState),d=c&&r?r:e;if(this.log(`${c?"transfering MediaSource":"attaching media"} to ${o?t:"Primary"} from ${l}`),d===r){const e=o&&t.assetId===this.schedule.assetIdAtEnd;d.overrides={duration:this.schedule.duration,endOfStream:!o||e,cueRemoval:!o}}t.attachMedia(d)}onInterstitialCueEnter(){this.onTimeupdate()}checkStart(){const t=this.schedule,e=t.events;if(!e||this.playbackDisabled||!this.media)return;-1===this.bufferedPos&&(this.bufferedPos=0);const s=this.timelinePos,i=this.effectivePlayingItem;if(-1===s){const s=this.hls.startPosition;if(this.timelinePos=s,e.length&&e[0].cue.pre){const s=t.findEventIndex(e[0].identifier);this.setSchedulePosition(s)}else if(s>=0||!this.primaryLive){const e=this.timelinePos=s>0?s:0,i=t.findItemIndexAtTime(e);this.setSchedulePosition(i)}}else if(i&&!this.playingItem){const e=t.findItemIndex(i);this.setSchedulePosition(e)}}advanceAfterAssetEnded(t,e,s){const i=WT(t,s);if(t.isAssetPastPlayoutLimit(i)){const s=this.schedule.items;if(s){const i=e+1;if(i>=s.length)return void this.setSchedulePosition(-1);const r=t.resumeTime;this.timelinePos<r&&(this.timelinePos=r,this.checkBuffer()),this.setSchedulePosition(i)}}else this.setSchedulePosition(e,i)}setScheduleToAssetAtTime(t,e){const s=this.schedule,i=e.parentIdentifier,r=s.getEvent(i);if(r){const e=s.findEventIndex(i),n=s.findAssetIndex(r,t);this.advanceAfterAssetEnded(r,e,n-1)}}setSchedulePosition(t,e){const s=this.schedule.items;if(!s||this.playbackDisabled)return;this.log(`setSchedulePosition ${t}, ${e}`);const i=t>=0?s[t]:null,r=this.playingItem,n=this.playingLastItem;if(this.isInterstitial(r)){var o;const h=r.event,l=this.playingAsset,c=null==l?void 0:l.identifier,d=c?this.getAssetPlayer(c):null;if(d&&c&&(!this.eventItemsMatch(r,i)||void 0!==e&&c!==(null==(o=h.assetList)?void 0:o[e].identifier))){var a;const e=h.findAssetIndex(l);this.log(`INTERSTITIAL_ASSET_ENDED ${e+1}/${h.assetList.length} ${GT(l)}`),this.endedAsset=l,this.playingAsset=null,this.hls.trigger(Yy.INTERSTITIAL_ASSET_ENDED,{asset:l,assetListIndex:e,event:h,schedule:s.slice(0),scheduleIndex:t,player:d}),this.retreiveMediaSource(c,i),!d.media||null!=(a=this.detachedData)&&a.mediaSource||d.detachMedia()}if(!this.eventItemsMatch(r,i)&&(this.endedItem=r,this.playingItem=null,this.log(`INTERSTITIAL_ENDED ${h} ${KT(r)}`),h.hasPlayed=!0,this.hls.trigger(Yy.INTERSTITIAL_ENDED,{event:h,schedule:s.slice(0),scheduleIndex:t}),h.cue.once)){this.updateSchedule();const t=this.schedule.items;if(i&&t){const s=this.schedule.findItemIndex(i);this.advanceSchedule(s,t,e,r,n)}return}}this.advanceSchedule(t,s,e,r,n)}advanceSchedule(t,e,s,i,r){const n=t>=0?e[t]:null,o=this.primaryMedia,a=this.playerQueue;if(a.length&&a.forEach(e=>{const s=e.interstitial,i=this.schedule.findEventIndex(s.identifier);(i<t||i>t+1)&&this.clearInterstitial(s,n)}),this.isInterstitial(n)){this.timelinePos=Math.min(Math.max(this.timelinePos,n.start),n.end);const r=n.event;if(void 0===s){const e=WT(r,(s=this.schedule.findAssetIndex(r,this.timelinePos))-1);if(r.isAssetPastPlayoutLimit(e))return void this.advanceAfterAssetEnded(r,t,s);s=e}const a=this.waitingItem;this.assetsBuffered(n,o)||this.setBufferingItem(n);let h=this.preloadAssets(r,s);if(this.eventItemsMatch(n,a||i)||(this.waitingItem=n,this.log(`INTERSTITIAL_STARTED ${KT(n)} ${r.appendInPlace?"append in place":""}`),this.hls.trigger(Yy.INTERSTITIAL_STARTED,{event:r,schedule:e.slice(0),scheduleIndex:t})),!r.assetListLoaded)return void this.log(`Waiting for ASSET-LIST to complete loading ${r}`);if(r.assetListLoader&&(r.assetListLoader.destroy(),r.assetListLoader=void 0),!o)return void this.log(`Waiting for attachMedia to start Interstitial ${r}`);this.waitingItem=this.endedItem=null,this.playingItem=n;const l=r.assetList[s];if(!l){const i=e[t+1],n=this.media;return i&&n&&!this.isInterstitial(i)&&n.currentTime<i.start&&(n.currentTime=this.timelinePos=i.start),void this.advanceAfterAssetEnded(r,t,s||0)}if(h||(h=this.getAssetPlayer(l.identifier)),null===h||h.destroyed){const t=r.assetList.length;this.warn(`asset ${s+1}/${t} player destroyed ${r}`),h=this.createAssetPlayer(r,l,s)}if(!this.eventItemsMatch(n,this.bufferingItem)&&r.appendInPlace&&this.isAssetBuffered(l))return;this.startAssetPlayer(h,s,e,t,o),this.shouldPlay&&QT(h.media)}else null!==n?(this.resumePrimary(n,t,i),this.shouldPlay&&QT(this.hls.media)):r&&this.isInterstitial(i)&&(this.endedItem=null,this.playingItem=i,i.event.appendInPlace||this.attachPrimary(this.schedule.durations.primary,null))}get playbackDisabled(){return!1===this.hls.config.enableInterstitialPlayback}get primaryDetails(){var t,e;return null==(t=this.mediaSelection)||null==(e=t.main)?void 0:e.details}get primaryLive(){var t;return!(null==(t=this.primaryDetails)||!t.live)}resumePrimary(t,e,s){var i;if(this.playingItem=t,this.playingAsset=this.endedAsset=null,this.waitingItem=this.endedItem=null,this.bufferedToItem(t),this.log(`resuming ${KT(t)}`),null==(i=this.detachedData)||!i.mediaSource){let s=this.timelinePos;(s<t.start||s>=t.end)&&(s=this.getPrimaryResumption(t,e),this.timelinePos=s),this.attachPrimary(s,t)}if(!s)return;const r=this.schedule.items;r&&(this.log(`INTERSTITIALS_PRIMARY_RESUMED ${KT(t)}`),this.hls.trigger(Yy.INTERSTITIALS_PRIMARY_RESUMED,{schedule:r.slice(0),scheduleIndex:e}),this.checkBuffer())}getPrimaryResumption(t,e){const s=t.start;if(this.primaryLive){const t=this.primaryDetails;if(0===e)return this.hls.startPosition;if(t&&(s<t.fragmentStart||s>t.edge))return this.hls.liveSyncPosition||-1}return s}isAssetBuffered(t){const e=this.getAssetPlayer(t.identifier);if(null!=e&&e.hls)return e.hls.bufferedToEnd;return Lv.bufferInfo(this.primaryMedia,this.timelinePos,0).end+1>=t.timelineStart+(t.duration||0)}attachPrimary(t,e,s){e?this.setBufferingItem(e):this.bufferingItem=this.playingItem,this.bufferingAsset=null;const i=this.primaryMedia;if(!i)return;const r=this.hls;r.media?this.checkBuffer():(this.transferMediaTo(r,i),s&&this.startLoadingPrimaryAt(t,s)),s||(this.timelinePos=t,this.startLoadingPrimaryAt(t,s))}startLoadingPrimaryAt(t,e){var s;const i=this.hls;!i.loadingEnabled||!i.media||Math.abs(((null==(s=i.mainForwardBufferInfo)?void 0:s.start)||i.media.currentTime)-t)>.5?i.startLoad(t,e):i.bufferingEnabled||i.resumeBuffering()}onManifestLoading(){this.stopLoad(),this.schedule.reset(),this.emptyPlayerQueue(),this.clearScheduleState(),this.shouldPlay=!1,this.bufferedPos=this.timelinePos=-1,this.mediaSelection=this.altSelection=this.manager=this.requiredTracks=null,this.hls.off(Yy.BUFFER_CODECS,this.onBufferCodecs,this),this.hls.on(Yy.BUFFER_CODECS,this.onBufferCodecs,this)}onLevelUpdated(t,e){if(-1===e.level)return;const s=this.hls.levels[e.level],i=hA(hA({},this.mediaSelection||this.altSelection),{},{main:s});this.mediaSelection=i,this.schedule.parseInterstitialDateRanges(i,this.hls.config.interstitialAppendInPlace),!this.effectivePlayingItem&&this.schedule.items&&this.checkStart()}onAudioTrackUpdated(t,e){const s=this.hls.audioTracks[e.id],i=this.mediaSelection;if(!i)return void(this.altSelection=hA(hA({},this.altSelection),{},{audio:s}));const r=hA(hA({},i),{},{audio:s});this.mediaSelection=r}onSubtitleTrackUpdated(t,e){const s=this.hls.subtitleTracks[e.id],i=this.mediaSelection;if(!i)return void(this.altSelection=hA(hA({},this.altSelection),{},{subtitles:s}));const r=hA(hA({},i),{},{subtitles:s});this.mediaSelection=r}onAudioTrackSwitching(t,e){const s=Ob(e);this.playerQueue.forEach(t=>t.hls.setAudioOption(e)||t.hls.setAudioOption(s))}onSubtitleTrackSwitch(t,e){const s=Ob(e);this.playerQueue.forEach(t=>t.hls.setSubtitleOption(e)||-1!==e.id&&t.hls.setSubtitleOption(s))}onBufferCodecs(t,e){const s=e.tracks;s&&(this.requiredTracks=s)}onBufferAppended(t,e){this.checkBuffer()}onBufferFlushed(t,e){const s=this.playingItem;if(s&&!this.itemsMatch(s,this.bufferingItem)&&!this.isInterstitial(s)){const t=this.timelinePos;this.bufferedPos=t,this.checkBuffer()}}onBufferedToEnd(t){const e=this.schedule.events;if(this.bufferedPos<Number.MAX_VALUE&&e){for(let t=0;t<e.length;t++){const i=e[t];if(i.cue.post){var s;const t=this.schedule.findEventIndex(i.identifier),e=null==(s=this.schedule.items)?void 0:s[t];this.isInterstitial(e)&&this.eventItemsMatch(e,this.bufferingItem)&&this.bufferedToItem(e,0);break}}this.bufferedPos=Number.MAX_VALUE}}onMediaEnded(t){const e=this.playingItem;if(!this.playingLastItem&&e){const t=this.findItemIndex(e);this.setSchedulePosition(t+1)}else this.shouldPlay=!1}updateItem(t,e){const s=this.schedule.items;if(t&&s){return s[this.findItemIndex(t,e)]||null}return null}trimInPlace(t,e){if(this.isInterstitial(t)&&t.event.appendInPlace&&e.end-t.end>.25){t.event.assetList.forEach((e,s)=>{t.event.isAssetPastPlayoutLimit(s)&&this.clearAssetPlayer(e.identifier,null)});const e=t.end+.25,s=Lv.bufferInfo(this.primaryMedia,e,0);(s.end>e||(s.nextStart||0)>e)&&(this.attachPrimary(e,null),this.flushFrontBuffer(e))}}itemsMatch(t,e){return!!e&&(t===e||t.event&&e.event&&this.eventItemsMatch(t,e)||!t.event&&!e.event&&this.findItemIndex(t)===this.findItemIndex(e))}eventItemsMatch(t,e){var s;return!!e&&(t===e||t.event.identifier===(null==(s=e.event)?void 0:s.identifier))}findItemIndex(t,e){return t?this.schedule.findItemIndex(t,e):-1}updateSchedule(){const t=this.mediaSelection;t&&this.schedule.updateSchedule(t,[])}checkBuffer(t){const e=this.schedule.items;if(!e)return;const s=Lv.bufferInfo(this.primaryMedia,this.timelinePos,0);t&&(this.bufferedPos=this.timelinePos),t||(t=s.len<1),this.updateBufferedPos(s.end,e,t)}updateBufferedPos(t,e,s){const i=this.schedule,r=this.bufferingItem;if(this.bufferedPos>t)return;if(1===e.length&&this.itemsMatch(e[0],r))return void(this.bufferedPos=t);const n=this.playingItem,o=this.findItemIndex(n);let a=i.findItemIndexAtTime(t);if(this.bufferedPos<t){var h,l;const s=this.findItemIndex(r),i=Math.min(s+1,e.length-1),n=e[i];if((-1===a&&r&&t>=r.end||null!=(h=n.event)&&h.appendInPlace&&t+.01>=n.start)&&(a=i),i-o>1&&!1===(null==r||null==(l=r.event)?void 0:l.appendInPlace))return;if(this.bufferedPos=t,a>s&&a>o)this.bufferedToItem(n);else{const e=this.primaryDetails;this.primaryLive&&e&&t>e.edge-e.targetduration&&n.start<e.edge+this.hls.config.interstitialLiveLookAhead&&this.isInterstitial(n)&&this.preloadAssets(n.event,0)}}else s&&n&&!this.itemsMatch(n,r)&&(a===o?this.bufferedToItem(n):a===o+1&&this.bufferedToItem(e[a]))}assetsBuffered(t,e){return 0!==t.event.assetList.length&&!t.event.assetList.some(t=>{const s=this.getAssetPlayer(t.identifier);return!(null!=s&&s.bufferedInPlaceToEnd(e))})}setBufferingItem(t){const e=this.bufferingItem,s=this.schedule;if(this.itemsMatch(t,e))this.bufferingItem!==t&&(this.bufferingItem=t);else{const{items:i,events:r}=s;if(!i||!r)return e;const n=this.isInterstitial(t),o=this.getBufferingPlayer();this.bufferingItem=t,this.bufferedPos=Math.max(t.start,Math.min(t.end,this.timelinePos));const a=o?o.remaining:e?e.end-this.timelinePos:0;this.log(`INTERSTITIALS_BUFFERED_TO_BOUNDARY ${KT(t)}`+(e?` (${a.toFixed(2)} remaining)`:"")),this.playbackDisabled||(n?t.event.assetList.forEach(t=>{const e=this.getAssetPlayer(t.identifier);e&&e.resumeBuffering()}):(this.hls.resumeBuffering(),this.playerQueue.forEach(t=>t.pauseBuffering()))),this.hls.trigger(Yy.INTERSTITIALS_BUFFERED_TO_BOUNDARY,{events:r.slice(0),schedule:i.slice(0),bufferingIndex:this.findItemIndex(t),playingIndex:this.findItemIndex(this.playingItem)})}return e}bufferedToItem(t,e=0){const s=this.setBufferingItem(t);if(!this.playbackDisabled)if(this.isInterstitial(t))this.bufferedToEvent(t,e);else if(null!==s){this.bufferingAsset=null;const e=this.detachedData;if(e)if(e.mediaSource){const e=!0;this.attachPrimary(t.start,t,e)}else this.preloadPrimary(t);else this.preloadPrimary(t)}}preloadPrimary(t){const e=this.findItemIndex(t),s=this.getPrimaryResumption(t,e);this.startLoadingPrimaryAt(s)}bufferedToEvent(t,e){const s=t.event,i=0===s.assetList.length&&!s.assetListLoader,r=s.cue.once;if(i||!r){const t=this.preloadAssets(s,e);if(null!=t&&t.interstitial.appendInPlace){const i=s.assetList[e],r=this.primaryMedia;i&&r&&this.bufferAssetPlayer(t,r)}}}preloadAssets(t,e){const s=t.assetUrl,i=t.assetList.length,r=0===i&&!t.assetListLoader,n=t.cue.once;if(r){const r=t.timelineStart;if(t.appendInPlace){var o;const e=this.playingItem;this.isInterstitial(e)||(null==e||null==(o=e.nextEvent)?void 0:o.identifier)!==t.identifier||this.flushFrontBuffer(r+.25)}let n,a=0;if(!this.playingItem&&this.primaryLive&&(a=this.hls.startPosition,-1===a&&(a=this.hls.liveSyncPosition||0)),a&&!t.cue.pre&&!t.cue.post){const t=a-r;t>0&&(n=Math.round(1e3*t)/1e3)}if(this.log(`Load interstitial asset ${e+1}/${s?1:i} ${t}${n?` live-start: ${a} start-offset: ${n}`:""}`),s)return this.createAsset(t,0,0,r,t.duration,s);const h=this.assetListLoader.loadAssetList(t,n);h&&(t.assetListLoader=h)}else if(!n&&i){for(let s=e;s<i;s++){const e=t.assetList[s],i=this.getAssetPlayerQueueIndex(e.identifier);-1!==i&&!this.playerQueue[i].destroyed||e.error||this.createAssetPlayer(t,e,s)}return this.getAssetPlayer(t.assetList[e].identifier)}return null}flushFrontBuffer(t){const e=this.requiredTracks;if(!e)return;this.log(`Removing front buffer starting at ${t}`);Object.keys(e).forEach(e=>{this.hls.trigger(Yy.BUFFER_FLUSHING,{startOffset:t,endOffset:1/0,type:e})})}getAssetPlayerQueueIndex(t){const e=this.playerQueue;for(let s=0;s<e.length;s++)if(t===e[s].assetId)return s;return-1}getAssetPlayer(t){const e=this.getAssetPlayerQueueIndex(t);return this.playerQueue[e]||null}getBufferingPlayer(){const{playerQueue:t,primaryMedia:e}=this;if(e)for(let s=0;s<t.length;s++)if(t[s].media===e)return t[s];return null}createAsset(t,e,s,i,r,n){const o={parentIdentifier:t.identifier,identifier:OT(t,n,e),duration:r,startOffset:s,timelineStart:i,uri:n};return this.createAssetPlayer(t,o,e)}createAssetPlayer(t,e,s){const i=this.hls,r=i.userConfig;let n=r.videoPreference;const o=i.loadLevelObj||i.levels[i.currentLevel];(n||o)&&(n=oA({},n),o.videoCodec&&(n.videoCodec=o.videoCodec),o.videoRange&&(n.allowedVideoRanges=[o.videoRange]));const a=i.audioTracks[i.audioTrack],h=i.subtitleTracks[i.subtitleTrack];let l=0;if(this.primaryLive||t.appendInPlace){const t=this.timelinePos-e.timelineStart;if(t>1){const s=e.duration;s&&t<s&&(l=t)}}const c=e.identifier,d=hA(hA({},r),{},{autoStartLoad:!0,startFragPrefetch:!0,primarySessionId:i.sessionId,assetPlayerId:c,abrEwmaDefaultEstimate:i.bandwidthEstimate,interstitialsController:void 0,startPosition:l,liveDurationInfinity:!1,testBandwidth:!1,videoPreference:n,audioPreference:a||r.audioPreference,subtitlePreference:h||r.subtitlePreference});t.appendInPlace&&(t.appendInPlaceStarted=!0,e.timelineStart&&(d.timelineOffset=e.timelineStart));const u=d.cmcd;null!=u&&u.sessionId&&u.contentId&&(d.cmcd=oA({},u,{contentId:BT(e.uri)})),this.getAssetPlayer(c)&&this.warn(`Duplicate date range identifier ${t} and asset ${c}`);const p=new zT(this.HlsPlayerClass,d,t,e);this.playerQueue.push(p),t.assetList[s]=e;const f=i=>{if(i.live){const e=new Error(`Interstitials MUST be VOD assets ${t}`),i={fatal:!0,type:qy.OTHER_ERROR,details:Qy.INTERSTITIAL_ASSET_ITEM_ERROR,error:e};return void this.handleAssetItemError(i,t,this.schedule.findEventIndex(t.identifier),s,e.message)}const r=i.edge-i.fragmentStart,n=e.duration;(null===n||r>n)&&(this.log(`Interstitial asset "${c}" duration change ${n} > ${r}`),e.duration=r,this.updateSchedule())};p.on(Yy.LEVEL_UPDATED,(t,{details:e})=>f(e)),p.on(Yy.LEVEL_PTS_UPDATED,(t,{details:e})=>f(e));const m=(t,e)=>{const s=this.getAssetPlayer(c);if(s&&e.tracks){s.off(Yy.BUFFER_CODECS,m),s.tracks=e.tracks;const t=this.primaryMedia;this.bufferingAsset===s.assetItem&&t&&!s.media&&this.bufferAssetPlayer(s,t)}};p.on(Yy.BUFFER_CODECS,m);const g=()=>{var s;const i=this.getAssetPlayer(c);if(this.log(`buffered to end of asset ${i}`),!i)return;const r=this.schedule.findEventIndex(t.identifier),n=null==(s=this.schedule.items)?void 0:s[r];if(this.isInterstitial(n)){const s=t.findAssetIndex(e),i=WT(t,s);if(t.isAssetPastPlayoutLimit(i)){var o;const t=null==(o=this.schedule.items)?void 0:o[r+1];t&&this.bufferedToItem(t)}else this.bufferedToItem(n,i)}};p.on(Yy.BUFFERED_TO_END,g);const y=e=>()=>{if(!this.getAssetPlayer(c))return;this.shouldPlay=!0;const s=this.schedule.findEventIndex(t.identifier);this.advanceAfterAssetEnded(t,s,e)};return p.once(Yy.MEDIA_ENDED,y(s)),p.once(Yy.PLAYOUT_LIMIT_REACHED,y(1/0)),p.on(Yy.ERROR,(e,i)=>{const r=this.getAssetPlayer(c);if(i.details!==Qy.BUFFER_STALLED_ERROR)this.handleAssetItemError(i,t,this.schedule.findEventIndex(t.identifier),s,`Asset player error ${i.error} ${t}`);else if(null!=r&&r.media){const e=r.currentTime,s=r.duration-e;e&&t.appendInPlace&&s/r.media.playbackRate<.5?(this.log(`Advancing buffer past end of asset ${c} ${t} at ${r.media.currentTime}`),g()):(this.warn(`Stalled at ${e} of ${e+s} in asset ${c} ${t}`),this.onTimeupdate(),this.checkBuffer(!0))}}),p.on(Yy.DESTROYING,()=>{if(!this.getAssetPlayer(c))return;const e=new Error(`Asset player destroyed unexpectedly ${c}`),i={fatal:!0,type:qy.OTHER_ERROR,details:Qy.INTERSTITIAL_ASSET_ITEM_ERROR,error:e};this.handleAssetItemError(i,t,this.schedule.findEventIndex(t.identifier),s,e.message)}),this.log(`INTERSTITIAL_ASSET_PLAYER_CREATED ${GT(e)}`),this.hls.trigger(Yy.INTERSTITIAL_ASSET_PLAYER_CREATED,{asset:e,assetListIndex:s,event:t,player:p}),p}clearInterstitial(t,e){t.assetList.forEach(t=>{this.clearAssetPlayer(t.identifier,e)}),t.reset()}resetAssetPlayer(t){const e=this.getAssetPlayerQueueIndex(t);if(-1!==e){this.log(`reset asset player "${t}" after error`);const s=this.playerQueue[e];this.transferMediaFromPlayer(s,null),s.resetDetails()}}clearAssetPlayer(t,e){const s=this.getAssetPlayerQueueIndex(t);if(-1!==s){this.log(`clear asset player "${t}" toSegment: ${e?KT(e):e}`);const i=this.playerQueue[s];this.transferMediaFromPlayer(i,e),this.playerQueue.splice(s,1),i.destroy()}}emptyPlayerQueue(){let t;for(;t=this.playerQueue.pop();)t.destroy();this.playerQueue=[]}startAssetPlayer(t,e,s,i,r){const{interstitial:n,assetItem:o,assetId:a}=t,h=n.assetList.length,l=this.playingAsset;this.endedAsset=null,this.playingAsset=o,l&&l.identifier===a||(l&&(this.clearAssetPlayer(l.identifier,s[i]),delete l.error),this.log(`INTERSTITIAL_ASSET_STARTED ${e+1}/${h} ${GT(o)}`),this.hls.trigger(Yy.INTERSTITIAL_ASSET_STARTED,{asset:o,assetListIndex:e,event:n,schedule:s.slice(0),scheduleIndex:i,player:t})),this.bufferAssetPlayer(t,r)}bufferAssetPlayer(t,e){var s,i;const{interstitial:r,assetItem:n}=t,o=this.schedule.findEventIndex(r.identifier),a=null==(s=this.schedule.items)?void 0:s[o];if(!a)return;this.setBufferingItem(a),this.bufferingAsset=n;const h=this.getBufferingPlayer();if(h===t)return;const l=r.appendInPlace;if(l&&!1===(null==h?void 0:h.interstitial.appendInPlace))return;const c=(null==h?void 0:h.tracks)||(null==(i=this.detachedData)?void 0:i.tracks)||this.requiredTracks;if(l&&n!==this.playingAsset){if(!t.tracks)return;if(c&&!yA(c,t.tracks)){const e=new Error(`Asset ${GT(n)} SourceBuffer tracks ('${Object.keys(t.tracks)}') are not compatible with primary content tracks ('${Object.keys(c)}')`),s={fatal:!0,type:qy.OTHER_ERROR,details:Qy.INTERSTITIAL_ASSET_ITEM_ERROR,error:e},i=r.findAssetIndex(n);return void this.handleAssetItemError(s,r,o,i,e.message)}}this.transferMediaTo(t,e)}handleAssetItemError(t,e,s,i,r){if(t.details===Qy.BUFFER_STALLED_ERROR)return;const n=e.assetList[i];this.warn(`INTERSTITIAL_ASSET_ERROR ${n?GT(n):n} ${t.error}`);const o=null==n?void 0:n.identifier,a=this.getAssetPlayerQueueIndex(o),h=this.playerQueue[a]||null,l=this.schedule.items,c=oA({},t,{fatal:!1,errorAction:av(!0),asset:n,assetListIndex:i,event:e,schedule:l,scheduleIndex:s,player:h});if(this.hls.trigger(Yy.INTERSTITIAL_ASSET_ERROR,c),!t.fatal)return;const d=this.playingAsset,u=new Error(r);if(n&&(this.clearAssetPlayer(o,null),n.error=u),e.assetList.some(t=>!t.error)){if(e.appendInPlace){for(let t=i;t<e.assetList.length;t++)this.resetAssetPlayer(e.assetList[t].identifier);this.updateSchedule()}}else e.error=u;e.error?this.primaryFallback(e):d&&d.identifier===o&&this.advanceAfterAssetEnded(e,s,i)}primaryFallback(t){const e=t.timelineStart,s=this.effectivePlayingItem;if(this.updateSchedule(),s){this.log(`Fallback to primary from event "${t.identifier}" start: ${e} pos: ${this.timelinePos} playing: ${s?KT(s):"<none>"} error: ${t.error}`);let i=this.timelinePos;-1===i&&(i=this.hls.startPosition);const r=this.updateItem(s,i);this.itemsMatch(s,r)&&this.clearInterstitial(t,null),t.appendInPlace&&(this.attachPrimary(e,null),this.flushFrontBuffer(e));const n=this.schedule.findItemIndexAtTime(i);this.setSchedulePosition(n)}else this.checkStart()}onAssetListLoaded(t,e){var s;const i=e.event,r=i.identifier,n=e.assetListResponse.ASSETS;if(!this.schedule.hasEvent(r))return;const o=i.timelineStart,a=i.duration;let h=0;n.forEach((t,e)=>{const s=parseFloat(t.DURATION);this.createAsset(i,e,h,o+h,s,t.URI),h+=s}),i.duration=h,this.log(`Loaded asset-list with duration: ${h} (was: ${a}) ${i}`);const l=this.waitingItem,c=(null==l?void 0:l.event.identifier)===r;this.updateSchedule();const d=null==(s=this.bufferingItem)?void 0:s.event;if(c){var u;const t=this.schedule.findEventIndex(r),e=null==(u=this.schedule.items)?void 0:u[t];if(e){if(!this.playingItem&&this.timelinePos>e.end){if(this.schedule.findItemIndexAtTime(this.timelinePos)!==t)return i.error=new Error(`Interstitial no longer within playback range ${this.timelinePos} ${i}`),void this.primaryFallback(i)}this.setBufferingItem(e)}this.setSchedulePosition(t)}else if((null==d?void 0:d.identifier)===r&&d.appendInPlace){const t=i.assetList[0],e=this.getAssetPlayer(t.identifier),s=this.primaryMedia;t&&e&&s&&this.bufferAssetPlayer(e,s)}}onError(t,e){switch(e.details){case Qy.ASSET_LIST_PARSING_ERROR:case Qy.ASSET_LIST_LOAD_ERROR:case Qy.ASSET_LIST_LOAD_TIMEOUT:{const t=e.interstitial;t&&this.primaryFallback(t);break}case Qy.BUFFER_STALLED_ERROR:this.onTimeupdate(),this.checkBuffer(!0)}}}});function ZI(t){return t&&"object"==typeof t?Array.isArray(t)?t.map(ZI):Object.keys(t).reduce((e,s)=>(e[s]=ZI(t[s]),e),{}):t}function tk(t,e){const s=t.loader;if(s!==qI&&s!==XI)e.log("[config]: Custom loader detected, cannot enable progressive streaming"),t.progressive=!1;else{(function(){if(self.fetch&&self.AbortController&&self.ReadableStream&&self.Request)try{return new self.ReadableStream({}),!0}catch(t){}return!1})()&&(t.loader=qI,t.progressive=!0,t.enableSoftwareAES=!0,e.log("[config]: Progressive streaming enabled, using FetchLoader"))}}class ek extends _v{constructor(t,e){super("gap-controller",t.logger),this.hls=null,this.fragmentTracker=null,this.media=null,this.mediaSource=void 0,this.nudgeRetry=0,this.stallReported=!1,this.stalled=null,this.moved=!1,this.seeking=!1,this.buffered={},this.lastCurrentTime=0,this.ended=0,this.waiting=0,this.onMediaPlaying=()=>{this.ended=0,this.waiting=0},this.onMediaWaiting=()=>{var t;null!=(t=this.media)&&t.seeking||(this.waiting=self.performance.now(),this.tick())},this.onMediaEnded=()=>{var t;this.hls&&(this.ended=(null==(t=this.media)?void 0:t.currentTime)||1,this.hls.trigger(Yy.MEDIA_ENDED,{stalled:!1}))},this.hls=t,this.fragmentTracker=e,this.registerListeners()}registerListeners(){const{hls:t}=this;t&&(t.on(Yy.MEDIA_ATTACHED,this.onMediaAttached,this),t.on(Yy.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(Yy.BUFFER_APPENDED,this.onBufferAppended,this))}unregisterListeners(){const{hls:t}=this;t&&(t.off(Yy.MEDIA_ATTACHED,this.onMediaAttached,this),t.off(Yy.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(Yy.BUFFER_APPENDED,this.onBufferAppended,this))}destroy(){super.destroy(),this.unregisterListeners(),this.media=this.hls=this.fragmentTracker=null,this.mediaSource=void 0}onMediaAttached(t,e){this.setInterval(100),this.mediaSource=e.mediaSource;const s=this.media=e.media;kT(s,"playing",this.onMediaPlaying),kT(s,"waiting",this.onMediaWaiting),kT(s,"ended",this.onMediaEnded)}onMediaDetaching(t,e){this.clearInterval();const{media:s}=this;s&&(_T(s,"playing",this.onMediaPlaying),_T(s,"waiting",this.onMediaWaiting),_T(s,"ended",this.onMediaEnded),this.media=null),this.mediaSource=void 0}onBufferAppended(t,e){this.buffered=e.timeRanges}get hasBuffered(){return Object.keys(this.buffered).length>0}tick(){var t;if(null==(t=this.media)||!t.readyState||!this.hasBuffered)return;const e=this.media.currentTime;this.poll(e,this.lastCurrentTime),this.lastCurrentTime=e}poll(t,e){var s,i;const r=null==(s=this.hls)?void 0:s.config;if(!r)return;const n=this.media;if(!n)return;const{seeking:o}=n,a=this.seeking&&!o,h=!this.seeking&&o,l=n.paused&&!o||n.ended||0===n.playbackRate;if(this.seeking=o,t!==e)return e&&(this.ended=0),this.moved=!0,o||(this.nudgeRetry=0,r.nudgeOnVideoHole&&!l&&t>e&&this.nudgeOnVideoHole(t,e)),void(0===this.waiting&&this.stallResolved(t));if(h||a)return void(a&&this.stallResolved(t));if(l)return this.nudgeRetry=0,this.stallResolved(t),void(!this.ended&&n.ended&&this.hls&&(this.ended=t||1,this.hls.trigger(Yy.MEDIA_ENDED,{stalled:!1})));if(!Lv.getBuffered(n).length)return void(this.nudgeRetry=0);const c=Lv.bufferInfo(n,t,0),d=c.nextStart||0,u=this.fragmentTracker;if(o&&u&&this.hls){const e=sk(this.hls.inFlightFragments,t),s=c.len>2,i=!d||e||d-t>2&&!u.getPartialFragment(t);if(s||i)return;this.moved=!1}const p=null==(i=this.hls)?void 0:i.latestLevelDetails;if(!this.moved&&null!==this.stalled&&u){if(!(c.len>0)&&!d)return;const e=Math.max(d,c.start||0)-t,s=!(null==p||!p.live)?2*p.targetduration:2,i=u.getPartialFragment(t);if(e>0&&(e<=s||i))return void(n.paused||this._trySkipBufferHole(i))}const f=r.detectStallWithCurrentTimeMs,m=self.performance.now(),g=this.waiting;let y=this.stalled;if(null===y){if(!(g>0&&m-g<f))return void(this.stalled=m);y=this.stalled=g}const A=m-y;if(!o&&(A>=f||g)&&this.hls){var b;if("ended"===(null==(b=this.mediaSource)?void 0:b.readyState)&&(null==p||!p.live)&&Math.abs(t-((null==p?void 0:p.edge)||0))<1){if(this.ended)return;return this.ended=t||1,void this.hls.trigger(Yy.MEDIA_ENDED,{stalled:!0})}if(this._reportStall(c),!this.media||!this.hls)return}const v=Lv.bufferInfo(n,t,r.maxBufferHole);this._tryFixBufferStall(v,A,t)}stallResolved(t){const e=this.stalled;if(e&&this.hls&&(this.stalled=null,this.stallReported)){const s=self.performance.now()-e;this.log(`playback not stuck anymore @${t}, after ${Math.round(s)}ms`),this.stallReported=!1,this.waiting=0,this.hls.trigger(Yy.STALL_RESOLVED,{})}}nudgeOnVideoHole(t,e){var s;const i=this.buffered.video;if(this.hls&&this.media&&this.fragmentTracker&&null!=(s=this.buffered.audio)&&s.length&&i&&i.length>1&&t>i.end(0)){const s=Lv.bufferedInfo(Lv.timeRangesToArray(this.buffered.audio),t,0);if(s.len>1&&e>=s.start){const s=Lv.timeRangesToArray(i),r=Lv.bufferedInfo(s,e,0).bufferedIndex;if(r>-1&&r<s.length-1){const e=Lv.bufferedInfo(s,t,0).bufferedIndex,i=s[r].end,n=s[r+1].start;if((-1===e||e>r)&&n-i<1&&t-i<2){const s=new Error(`nudging playhead to flush pipeline after video hole. currentTime: ${t} hole: ${i} -> ${n} buffered index: ${e}`);this.warn(s.message),this.media.currentTime+=1e-6;const r=this.fragmentTracker.getPartialFragment(t)||void 0,o=Lv.bufferInfo(this.media,t,0);this.hls.trigger(Yy.ERROR,{type:qy.MEDIA_ERROR,details:Qy.BUFFER_SEEK_OVER_HOLE,fatal:!1,error:s,reason:s.message,frag:r,buffer:o.len,bufferInfo:o})}}}}}_tryFixBufferStall(t,e,s){var i,r;const{fragmentTracker:n,media:o}=this,a=null==(i=this.hls)?void 0:i.config;if(!o||!n||!a)return;const h=null==(r=this.hls)?void 0:r.latestLevelDetails,l=n.getPartialFragment(s);if(l||null!=h&&h.live&&s<h.fragmentStart){if(this._trySkipBufferHole(l)||!this.media)return}const c=t.buffered,d=this.adjacentTraversal(t,s);(c&&c.length>1&&t.len>a.maxBufferHole||t.nextStart&&(t.nextStart-s<a.maxBufferHole||d))&&(e>1e3*a.highBufferWatchdogPeriod||this.waiting)&&(this.warn("Trying to nudge playhead over buffer-hole"),this._tryNudgeBuffer(t))}adjacentTraversal(t,e){const s=this.fragmentTracker,i=t.nextStart;if(s&&i){const t=s.getFragAtPos(e,tA),r=s.getFragAtPos(i,tA);if(t&&r)return r.sn-t.sn<2}return!1}_reportStall(t){const{hls:e,media:s,stallReported:i,stalled:r}=this;if(!i&&null!==r&&s&&e){this.stallReported=!0;const i=new Error(`Playback stalling at @${s.currentTime} due to low buffer (${Bb(t)})`);this.warn(i.message),e.trigger(Yy.ERROR,{type:qy.MEDIA_ERROR,details:Qy.BUFFER_STALLED_ERROR,fatal:!1,error:i,buffer:t.len,bufferInfo:t,stalled:{start:r}})}}_trySkipBufferHole(t){var e;const{fragmentTracker:s,media:i}=this,r=null==(e=this.hls)?void 0:e.config;if(!i||!s||!r)return 0;const n=i.currentTime,o=Lv.bufferInfo(i,n,0),a=n<o.start?o.start:o.nextStart;if(a&&this.hls){const e=o.len<=r.maxBufferHole,l=o.len>0&&o.len<1&&i.readyState<3,c=a-n;if(c>0&&(e||l)){if(c>r.maxBufferHole){let e=!1;if(0===n){const t=s.getAppendedFrag(0,tA);t&&a<t.end&&(e=!0)}if(!e){const e=t||s.getAppendedFrag(n,tA);if(e){var h;if(null==(h=this.hls.loadLevelObj)||!h.details)return 0;if(sk(this.hls.inFlightFragments,a))return 0;let t=!1,i=e.end;for(;i<a;){const e=s.getPartialFragment(i);if(!e){t=!0;break}i+=e.duration}if(t)return 0}}}const e=Math.max(a+.05,n+.1);if(this.warn(`skipping hole, adjusting currentTime from ${n} to ${e}`),this.moved=!0,i.currentTime=e,null==t||!t.gap){const s=new Error(`fragment loaded with buffer holes, seeking from ${n} to ${e}`);this.hls.trigger(Yy.ERROR,{type:qy.MEDIA_ERROR,details:Qy.BUFFER_SEEK_OVER_HOLE,fatal:!1,error:s,reason:s.message,frag:t||void 0,buffer:o.len,bufferInfo:o})}return e}}return 0}_tryNudgeBuffer(t){const{hls:e,media:s,nudgeRetry:i}=this,r=null==e?void 0:e.config;if(!s||!r)return 0;const n=s.currentTime;if(this.nudgeRetry++,i<r.nudgeMaxRetry){const o=n+(i+1)*r.nudgeOffset,a=new Error(`Nudging 'currentTime' from ${n} to ${o}`);this.warn(a.message),s.currentTime=o,e.trigger(Yy.ERROR,{type:qy.MEDIA_ERROR,details:Qy.BUFFER_NUDGE_ON_STALL,error:a,fatal:!1,buffer:t.len,bufferInfo:t})}else{const s=new Error(`Playhead still not moving while enough data buffered @${n} after ${r.nudgeMaxRetry} nudges`);this.error(s.message),e.trigger(Yy.ERROR,{type:qy.MEDIA_ERROR,details:Qy.BUFFER_STALLED_ERROR,error:s,fatal:!0,buffer:t.len,bufferInfo:t})}}}function sk(t,e){const s=ik(t.main);if(s&&s.start<=e)return s;const i=ik(t.audio);return i&&i.start<=e?i:null}function ik(t){if(!t)return null;switch(t.state){case QS:case qS:case eE:case sE:return null}return t.frag}function rk(){if("undefined"!=typeof self)return self.VTTCue||self.TextTrackCue}function nk(t,e,s,i,r){let n=new t(e,s,"");try{n.value=i,r&&(n.type=r)}catch(o){n=new t(e,s,Bb(r?hA({type:r},i):i))}return n}const ok=(()=>{const t=rk();try{t&&new t(0,Number.POSITIVE_INFINITY,"")}catch(t){return Number.MAX_VALUE}return Number.POSITIVE_INFINITY})();function ak(t){return Uint8Array.from(t.replace(/^0x/,"").replace(/([\da-fA-F]{2}) ?/g,"0x$1 ").replace(/ +$/,"").split(" ")).buffer}class hk{constructor(t){this.hls=void 0,this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.removeCues=!0,this.onEventCueEnter=()=>{this.hls&&this.hls.trigger(Yy.EVENT_CUE_ENTER,{})},this.hls=t,this._registerListeners()}destroy(){this._unregisterListeners(),this.id3Track=null,this.media=null,this.dateRangeCuesAppended={},this.hls=this.onEventCueEnter=null}_registerListeners(){const{hls:t}=this;t.on(Yy.MEDIA_ATTACHING,this.onMediaAttaching,this),t.on(Yy.MEDIA_ATTACHED,this.onMediaAttached,this),t.on(Yy.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.on(Yy.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),t.on(Yy.BUFFER_FLUSHING,this.onBufferFlushing,this),t.on(Yy.LEVEL_UPDATED,this.onLevelUpdated,this),t.on(Yy.LEVEL_PTS_UPDATED,this.onLevelPtsUpdated,this)}_unregisterListeners(){const{hls:t}=this;t.off(Yy.MEDIA_ATTACHING,this.onMediaAttaching,this),t.off(Yy.MEDIA_ATTACHED,this.onMediaAttached,this),t.off(Yy.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.off(Yy.FRAG_PARSING_METADATA,this.onFragParsingMetadata,this),t.off(Yy.BUFFER_FLUSHING,this.onBufferFlushing,this),t.off(Yy.LEVEL_UPDATED,this.onLevelUpdated,this),t.off(Yy.LEVEL_PTS_UPDATED,this.onLevelPtsUpdated,this)}onMediaAttaching(t,e){var s;this.media=e.media,!1===(null==(s=e.overrides)?void 0:s.cueRemoval)&&(this.removeCues=!1)}onMediaAttached(){const t=this.hls.latestLevelDetails;t&&this.updateDateRangeCues(t)}onMediaDetaching(t,e){this.media=null;!!e.transferMedia||(this.id3Track&&(this.removeCues&&PT(this.id3Track,this.onEventCueEnter),this.id3Track=null),this.dateRangeCuesAppended={})}onManifestLoading(){this.dateRangeCuesAppended={}}createTrack(t){const e=this.getID3Track(t.textTracks);return e.mode="hidden",e}getID3Track(t){if(this.media){for(let e=0;e<t.length;e++){const s=t[e];if("metadata"===s.kind&&"id3"===s.label)return LT(s,this.media),s}return this.media.addTextTrack("metadata","id3")}}onFragParsingMetadata(t,e){if(!this.media)return;const{hls:{config:{enableEmsgMetadataCues:s,enableID3MetadataCues:i}}}=this;if(!s&&!i)return;const{samples:r}=e;this.id3Track||(this.id3Track=this.createTrack(this.media));const n=rk();if(n)for(let t=0;t<r.length;t++){const e=r[t].type;if(e===BE.emsg&&!s||!i)continue;const o=RE(r[t].data);if(o){const s=r[t].pts;let i=s+r[t].duration;i>ok&&(i=ok);i-s<=0&&(i=s+.25);for(let t=0;t<o.length;t++){const r=o[t];if(!PE(r)){this.updateId3CueEnds(s,e);const t=nk(n,s,i,r,e);t&&this.id3Track.addCue(t)}}}}}updateId3CueEnds(t,e){var s;const i=null==(s=this.id3Track)?void 0:s.cues;if(i)for(let s=i.length;s--;){const r=i[s];r.type===e&&r.startTime<t&&r.endTime===ok&&(r.endTime=t)}}onBufferFlushing(t,{startOffset:e,endOffset:s,type:i}){const{id3Track:r,hls:n}=this;if(!n)return;const{config:{enableEmsgMetadataCues:o,enableID3MetadataCues:a}}=n;if(r&&(o||a)){let t;t="audio"===i?t=>t.type===BE.audioId3&&a:"video"===i?t=>t.type===BE.emsg&&o:t=>t.type===BE.audioId3&&a||t.type===BE.emsg&&o,xT(r,e,s,t)}}onLevelUpdated(t,{details:e}){this.updateDateRangeCues(e,!0)}onLevelPtsUpdated(t,e){Math.abs(e.drift)>.01&&this.updateDateRangeCues(e.details)}updateDateRangeCues(t,e){if(!this.media||!t.hasProgramDateTime||!this.hls.config.enableDateRangeMetadataCues)return;const{id3Track:s}=this,{dateRanges:i}=t,r=Object.keys(i);let n=this.dateRangeCuesAppended;var o;if(s&&e)if(null!=(o=s.cues)&&o.length){const t=Object.keys(n).filter(t=>!r.includes(t));for(let e=t.length;e--;){const i=t[e],r=n[i].cues;delete n[i],Object.keys(r).forEach(t=>{try{const e=r[t];e.removeEventListener("enter",this.onEventCueEnter),s.removeCue(e)}catch(t){}})}}else n=this.dateRangeCuesAppended={};const a=t.fragments[t.fragments.length-1];if(0===r.length||!zy(null==a?void 0:a.programDateTime))return;this.id3Track||(this.id3Track=this.createTrack(this.media));const h=rk();for(let t=0;t<r.length;t++){const e=r[t],s=i[e],o=s.startTime,a=n[e],l=(null==a?void 0:a.cues)||{};let c=(null==a?void 0:a.durationKnown)||!1,d=ok;const{duration:u,endDate:p}=s;if(p&&null!==u)d=o+u,c=!0;else if(s.endOnNext&&!c){const t=r.reduce((t,e)=>{if(e!==s.id){const r=i[e];if(r.class===s.class&&r.startDate>s.startDate&&(!t||s.startDate<t.startDate))return r}return t},null);t&&(d=t.startTime,c=!0)}const f=Object.keys(s.attr);for(let t=0;t<f.length;t++){const i=f[t];if(!Nv(i))continue;const r=l[i];if(r)c&&!a.durationKnown?r.endTime=d:Math.abs(r.startTime-o)>.01&&(r.startTime=o,r.endTime=d);else if(h){let t=s.attr[i];Vv(i)&&(t=ak(t));const r=nk(h,o,d,{key:i,data:t},BE.dateRange);r&&(r.id=e,this.id3Track.addCue(r),l[i]=r,this.hls.config.interstitialsController&&("X-ASSET-LIST"!==i&&"X-ASSET-URL"!==i||r.addEventListener("enter",this.onEventCueEnter)))}}n[e]={cues:l,dateRange:s,durationKnown:c}}}}class lk{constructor(t){this.hls=void 0,this.config=void 0,this.media=null,this.currentTime=0,this.stallCount=0,this._latency=null,this._targetLatencyUpdated=!1,this.onTimeupdate=()=>{const{media:t}=this,e=this.levelDetails;if(!t||!e)return;this.currentTime=t.currentTime;const s=this.computeLatency();if(null===s)return;this._latency=s;const{lowLatencyMode:i,maxLiveSyncPlaybackRate:r}=this.config;if(!i||1===r||!e.live)return;const n=this.targetLatency;if(null===n)return;const o=s-n;if(o<Math.min(this.maxLatency,n+e.targetduration)&&o>.05&&this.forwardBufferLength>1){const e=Math.min(2,Math.max(1,r)),s=Math.round(2/(1+Math.exp(-.75*o-this.edgeStalled))*20)/20,i=Math.min(e,Math.max(1,s));this.changeMediaPlaybackRate(t,i)}else 1!==t.playbackRate&&0!==t.playbackRate&&this.changeMediaPlaybackRate(t,1)},this.hls=t,this.config=t.config,this.registerListeners()}get levelDetails(){var t;return(null==(t=this.hls)?void 0:t.latestLevelDetails)||null}get latency(){return this._latency||0}get maxLatency(){const{config:t}=this;if(void 0!==t.liveMaxLatencyDuration)return t.liveMaxLatencyDuration;const e=this.levelDetails;return e?t.liveMaxLatencyDurationCount*e.targetduration:0}get targetLatency(){const t=this.levelDetails;if(null===t||null===this.hls)return null;const{holdBack:e,partHoldBack:s,targetduration:i}=t,{liveSyncDuration:r,liveSyncDurationCount:n,lowLatencyMode:o}=this.config,a=this.hls.userConfig;let h=o&&s||e;(this._targetLatencyUpdated||a.liveSyncDuration||a.liveSyncDurationCount||0===h)&&(h=void 0!==r?r:n*i);const l=i;return h+Math.min(this.stallCount*this.config.liveSyncOnStallIncrease,l)}set targetLatency(t){this.stallCount=0,this.config.liveSyncDuration=t,this._targetLatencyUpdated=!0}get liveSyncPosition(){const t=this.estimateLiveEdge(),e=this.targetLatency;if(null===t||null===e)return null;const s=this.levelDetails;if(null===s)return null;const i=s.edge,r=t-e-this.edgeStalled,n=i-s.totalduration,o=i-(this.config.lowLatencyMode&&s.partTarget||s.targetduration);return Math.min(Math.max(n,r),o)}get drift(){const t=this.levelDetails;return null===t?1:t.drift}get edgeStalled(){const t=this.levelDetails;if(null===t)return 0;const e=3*(this.config.lowLatencyMode&&t.partTarget||t.targetduration);return Math.max(t.age-e,0)}get forwardBufferLength(){const{media:t}=this,e=this.levelDetails;if(!t||!e)return 0;const s=t.buffered.length;return(s?t.buffered.end(s-1):e.edge)-this.currentTime}destroy(){this.unregisterListeners(),this.onMediaDetaching(),this.hls=null}registerListeners(){const{hls:t}=this;t&&(t.on(Yy.MEDIA_ATTACHED,this.onMediaAttached,this),t.on(Yy.MEDIA_DETACHING,this.onMediaDetaching,this),t.on(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.on(Yy.LEVEL_UPDATED,this.onLevelUpdated,this),t.on(Yy.ERROR,this.onError,this))}unregisterListeners(){const{hls:t}=this;t&&(t.off(Yy.MEDIA_ATTACHED,this.onMediaAttached,this),t.off(Yy.MEDIA_DETACHING,this.onMediaDetaching,this),t.off(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.off(Yy.LEVEL_UPDATED,this.onLevelUpdated,this),t.off(Yy.ERROR,this.onError,this))}onMediaAttached(t,e){this.media=e.media,this.media.addEventListener("timeupdate",this.onTimeupdate)}onMediaDetaching(){this.media&&(this.media.removeEventListener("timeupdate",this.onTimeupdate),this.media=null)}onManifestLoading(){this._latency=null,this.stallCount=0}onLevelUpdated(t,{details:e}){e.advanced&&this.onTimeupdate(),!e.live&&this.media&&this.media.removeEventListener("timeupdate",this.onTimeupdate)}onError(t,e){var s;e.details===Qy.BUFFER_STALLED_ERROR&&(this.stallCount++,this.hls&&null!=(s=this.levelDetails)&&s.live&&this.hls.logger.warn("[latency-controller]: Stall detected, adjusting target latency"))}changeMediaPlaybackRate(t,e){var s,i;t.playbackRate!==e&&(null==(s=this.hls)||s.logger.debug(`[latency-controller]: latency=${this.latency.toFixed(3)}, targetLatency=${null==(i=this.targetLatency)?void 0:i.toFixed(3)}, forwardBufferLength=${this.forwardBufferLength.toFixed(3)}: adjusting playback rate from ${t.playbackRate} to ${e}`),t.playbackRate=e)}estimateLiveEdge(){const t=this.levelDetails;return null===t?null:t.edge+t.age}computeLatency(){const t=this.estimateLiveEdge();return null===t?null:t-this.currentTime}}class ck extends Fw{constructor(t,e){super(t,"level-controller"),this._levels=[],this._firstLevel=-1,this._maxAutoLevel=-1,this._startLevel=void 0,this.currentLevel=null,this.currentLevelIndex=-1,this.manualLevelIndex=-1,this.steering=void 0,this.onParsedComplete=void 0,this.steering=e,this._registerListeners()}_registerListeners(){const{hls:t}=this;t.on(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.on(Yy.MANIFEST_LOADED,this.onManifestLoaded,this),t.on(Yy.LEVEL_LOADED,this.onLevelLoaded,this),t.on(Yy.LEVELS_UPDATED,this.onLevelsUpdated,this),t.on(Yy.FRAG_BUFFERED,this.onFragBuffered,this),t.on(Yy.ERROR,this.onError,this)}_unregisterListeners(){const{hls:t}=this;t.off(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.off(Yy.MANIFEST_LOADED,this.onManifestLoaded,this),t.off(Yy.LEVEL_LOADED,this.onLevelLoaded,this),t.off(Yy.LEVELS_UPDATED,this.onLevelsUpdated,this),t.off(Yy.FRAG_BUFFERED,this.onFragBuffered,this),t.off(Yy.ERROR,this.onError,this)}destroy(){this._unregisterListeners(),this.steering=null,this.resetLevels(),super.destroy()}stopLoad(){this._levels.forEach(t=>{t.loadError=0,t.fragmentError=0}),super.stopLoad()}resetLevels(){this._startLevel=void 0,this.manualLevelIndex=-1,this.currentLevelIndex=-1,this.currentLevel=null,this._levels=[],this._maxAutoLevel=-1}onManifestLoading(t,e){this.resetLevels()}onManifestLoaded(t,e){const s=this.hls.config.preferManagedMediaSource,i=[],r={},n={};let o=!1,a=!1,h=!1;e.levels.forEach(t=>{const e=t.attrs;let{audioCodec:l,videoCodec:c}=t;l&&(t.audioCodec=l=mb(l,s)||void 0),c&&(c=t.videoCodec=function(t){const e=t.split(",");for(let t=0;t<e.length;t++){const s=e[t].split(".");s.length>2&&"avc1"===s[0]&&(e[t]=`avc1.${parseInt(s[1]).toString(16)}${("000"+parseInt(s[2]).toString(16)).slice(-4)}`)}return e.join(",")}(c));const{width:d,height:u,unknownCodecs:p}=t;let f=p?p.length:0;if(p)for(let e=f;e--;){const s=p[e];this.isAudioSupported(s)?(t.audioCodec=l=l?`${l},${s}`:s,f--,ob.audio[l.substring(0,4)]=2):this.isVideoSupported(s)&&(t.videoCodec=c=c?`${c},${s}`:s,f--,ob.video[c.substring(0,4)]=2)}if(o||(o=!(!d||!u)),a||(a=!!c),h||(h=!!l),f||l&&!this.isAudioSupported(l)||c&&!this.isVideoSupported(c))return void this.log(`Some or all CODECS not supported "${e.CODECS}"`);const{CODECS:m,"FRAME-RATE":g,"HDCP-LEVEL":y,"PATHWAY-ID":A,RESOLUTION:b,"VIDEO-RANGE":v}=e,S=`${`${A||"."}-`}${t.bitrate}-${b}-${g}-${m}-${v}-${y}`;if(r[S])if(r[S].uri===t.url||t.attrs["PATHWAY-ID"])r[S].addGroupId("audio",e.AUDIO),r[S].addGroupId("text",e.SUBTITLES);else{const e=n[S]+=1;t.attrs["PATHWAY-ID"]=new Array(e+1).join(".");const s=this.createLevel(t);r[S]=s,i.push(s)}else{const e=this.createLevel(t);r[S]=e,n[S]=1,i.push(e)}}),this.filterAndSortMediaOptions(i,e,o,a,h)}createLevel(t){const e=new Pb(t),s=t.supplemental;if(null!=s&&s.videoCodec&&!this.isVideoSupported(s.videoCodec)){const t=new Error(`SUPPLEMENTAL-CODECS not supported "${s.videoCodec}"`);this.log(t.message),e.supportedResult=Sb(t,[])}return e}isAudioSupported(t){return hb(t,"audio",this.hls.config.preferManagedMediaSource)}isVideoSupported(t){return hb(t,"video",this.hls.config.preferManagedMediaSource)}filterAndSortMediaOptions(t,e,s,i,r){let n=[],o=[],a=t;if((s||i)&&r&&(a=a.filter(({videoCodec:t,videoRange:e,width:s,height:i})=>{return(!!t||!(!s||!i))&&(!!(r=e)&&kb.indexOf(r)>-1);var r})),0===a.length)return void Promise.resolve().then(()=>{if(this.hls){let t="no level with compatible codecs found in manifest",s=t;e.levels.length&&(s=`one or more CODECS in variant not supported: ${Bb(e.levels.map(t=>t.attrs.CODECS).filter((t,e,s)=>s.indexOf(t)===e))}`,this.warn(s),t+=` (${s})`);const i=new Error(t);this.hls.trigger(Yy.ERROR,{type:qy.MEDIA_ERROR,details:Qy.MANIFEST_INCOMPATIBLE_CODECS_ERROR,fatal:!0,url:e.url,error:i,reason:s})}});e.audioTracks&&(n=e.audioTracks.filter(t=>!t.audioCodec||this.isAudioSupported(t.audioCodec)),dk(n)),e.subtitles&&(o=e.subtitles,dk(o));const h=a.slice(0);a.sort((t,e)=>{if(t.attrs["HDCP-LEVEL"]!==e.attrs["HDCP-LEVEL"])return(t.attrs["HDCP-LEVEL"]||"")>(e.attrs["HDCP-LEVEL"]||"")?1:-1;if(s&&t.height!==e.height)return t.height-e.height;if(t.frameRate!==e.frameRate)return t.frameRate-e.frameRate;if(t.videoRange!==e.videoRange)return kb.indexOf(t.videoRange)-kb.indexOf(e.videoRange);if(t.videoCodec!==e.videoCodec){const s=db(t.videoCodec),i=db(e.videoCodec);if(s!==i)return i-s}if(t.uri===e.uri&&t.codecSet!==e.codecSet){const s=ub(t.codecSet),i=ub(e.codecSet);if(s!==i)return i-s}return t.averageBitrate!==e.averageBitrate?t.averageBitrate-e.averageBitrate:0});let l=h[0];if(this.steering&&(a=this.steering.filterParsedLevels(a),a.length!==h.length))for(let t=0;t<h.length;t++)if(h[t].pathwayId===a[0].pathwayId){l=h[t];break}this._levels=a;for(let t=0;t<a.length;t++)if(a[t]===l){var c;this._firstLevel=t;const e=l.bitrate,s=this.hls.bandwidthEstimate;if(this.log(`manifest loaded, ${a.length} level(s) found, first bitrate: ${e}`),void 0===(null==(c=this.hls.userConfig)?void 0:c.abrEwmaDefaultEstimate)){const t=Math.min(e,this.hls.config.abrEwmaDefaultEstimateMax);t>s&&s===this.hls.abrEwmaDefaultEstimate&&(this.hls.bandwidthEstimate=t)}break}const d=r&&!i,u=this.hls.config,p=!(!u.audioStreamController||!u.audioTrackController),f={levels:a,audioTracks:n,subtitleTracks:o,sessionData:e.sessionData,sessionKeys:e.sessionKeys,firstLevel:this._firstLevel,stats:e.stats,audio:r,video:i,altAudio:p&&!d&&n.some(t=>!!t.url)};this.hls.trigger(Yy.MANIFEST_PARSED,f)}get levels(){return 0===this._levels.length?null:this._levels}get loadLevelObj(){return this.currentLevel}get level(){return this.currentLevelIndex}set level(t){const e=this._levels;if(0===e.length)return;if(t<0||t>=e.length){const s=new Error("invalid level idx"),i=t<0;if(this.hls.trigger(Yy.ERROR,{type:qy.OTHER_ERROR,details:Qy.LEVEL_SWITCH_ERROR,level:t,fatal:i,error:s,reason:s.message}),i)return;t=Math.min(t,e.length-1)}const s=this.currentLevelIndex,i=this.currentLevel,r=i?i.attrs["PATHWAY-ID"]:void 0,n=e[t],o=n.attrs["PATHWAY-ID"];if(this.currentLevelIndex=t,this.currentLevel=n,s===t&&i&&r===o)return;this.log(`Switching to level ${t} (${n.height?n.height+"p ":""}${n.videoRange?n.videoRange+" ":""}${n.codecSet?n.codecSet+" ":""}@${n.bitrate})${o?" with Pathway "+o:""} from level ${s}${r?" with Pathway "+r:""}`);const a={level:t,attrs:n.attrs,details:n.details,bitrate:n.bitrate,averageBitrate:n.averageBitrate,maxBitrate:n.maxBitrate,realBitrate:n.realBitrate,width:n.width,height:n.height,codecSet:n.codecSet,audioCodec:n.audioCodec,videoCodec:n.videoCodec,audioGroups:n.audioGroups,subtitleGroups:n.subtitleGroups,loaded:n.loaded,loadError:n.loadError,fragmentError:n.fragmentError,name:n.name,id:n.id,uri:n.uri,url:n.url,urlId:0,audioGroupIds:n.audioGroupIds,textGroupIds:n.textGroupIds};this.hls.trigger(Yy.LEVEL_SWITCHING,a);const h=n.details;if(!h||h.live){const t=this.switchParams(n.uri,null==i?void 0:i.details,h);this.loadPlaylist(t)}}get manualLevel(){return this.manualLevelIndex}set manualLevel(t){this.manualLevelIndex=t,void 0===this._startLevel&&(this._startLevel=t),-1!==t&&(this.level=t)}get firstLevel(){return this._firstLevel}set firstLevel(t){this._firstLevel=t}get startLevel(){if(void 0===this._startLevel){const t=this.hls.config.startLevel;return void 0!==t?t:this.hls.firstAutoLevel}return this._startLevel}set startLevel(t){this._startLevel=t}get pathways(){return this.steering?this.steering.pathways():[]}get pathwayPriority(){return this.steering?this.steering.pathwayPriority:null}set pathwayPriority(t){if(this.steering){const e=this.steering.pathways(),s=t.filter(t=>-1!==e.indexOf(t));if(t.length<1)return void this.warn(`pathwayPriority ${t} should contain at least one pathway from list: ${e}`);this.steering.pathwayPriority=s}}onError(t,e){!e.fatal&&e.context&&e.context.type===Xy&&e.context.level===this.level&&this.checkRetry(e)}onFragBuffered(t,{frag:e}){if(void 0!==e&&e.type===tA){const t=e.elementaryStreams;if(!Object.keys(t).some(e=>!!t[e]))return;const s=this._levels[e.level];null!=s&&s.loadError&&(this.log(`Resetting level error count of ${s.loadError} on frag buffered`),s.loadError=0)}}onLevelLoaded(t,e){var s;const{level:i,details:r}=e,n=e.levelInfo;var o;if(!n)return this.warn(`Invalid level index ${i}`),void(null!=(o=e.deliveryDirectives)&&o.skip&&(r.deltaUpdateFailed=!0));if(n===this.currentLevel||e.withoutMultiVariant){0===n.fragmentError&&(n.loadError=0);let t=n.details;t===e.details&&t.advanced&&(t=void 0),this.playlistLoaded(i,e,t)}else null!=(s=e.deliveryDirectives)&&s.skip&&(r.deltaUpdateFailed=!0)}loadPlaylist(t){super.loadPlaylist(),this.shouldLoadPlaylist(this.currentLevel)&&this.scheduleLoading(this.currentLevel,t)}loadingPlaylist(t,e){super.loadingPlaylist(t,e);const s=this.getUrlWithDirectives(t.uri,e),i=this.currentLevelIndex,r=t.attrs["PATHWAY-ID"],n=t.details,o=null==n?void 0:n.age;this.log(`Loading level index ${i}${void 0!==(null==e?void 0:e.msn)?" at sn "+e.msn+" part "+e.part:""}${r?" Pathway "+r:""}${o&&n.live?" age "+o.toFixed(1)+(n.type&&" "+n.type||""):""} ${s}`),this.hls.trigger(Yy.LEVEL_LOADING,{url:s,level:i,levelInfo:t,pathwayId:t.attrs["PATHWAY-ID"],id:0,deliveryDirectives:e||null})}get nextLoadLevel(){return-1!==this.manualLevelIndex?this.manualLevelIndex:this.hls.nextAutoLevel}set nextLoadLevel(t){this.level=t,-1===this.manualLevelIndex&&(this.hls.nextAutoLevel=t)}removeLevel(t){var e;if(1===this._levels.length)return;const s=this._levels.filter((e,s)=>s!==t||(this.steering&&this.steering.removeLevel(e),e===this.currentLevel&&(this.currentLevel=null,this.currentLevelIndex=-1,e.details&&e.details.fragments.forEach(t=>t.level=-1)),!1));VS(s),this._levels=s,this.currentLevelIndex>-1&&null!=(e=this.currentLevel)&&e.details&&(this.currentLevelIndex=this.currentLevel.details.fragments[0].level),this.manualLevelIndex>-1&&(this.manualLevelIndex=this.currentLevelIndex);const i=s.length-1;this._firstLevel=Math.min(this._firstLevel,i),this._startLevel&&(this._startLevel=Math.min(this._startLevel,i)),this.hls.trigger(Yy.LEVELS_UPDATED,{levels:s})}onLevelsUpdated(t,{levels:e}){this._levels=e}checkMaxAutoUpdated(){const{autoLevelCapping:t,maxAutoLevel:e,maxHdcpLevel:s}=this.hls;this._maxAutoLevel!==e&&(this._maxAutoLevel=e,this.hls.trigger(Yy.MAX_AUTO_LEVEL_UPDATED,{autoLevelCapping:t,levels:this.levels,maxAutoLevel:e,minAutoLevel:this.hls.minAutoLevel,maxHdcpLevel:s}))}}function dk(t){const e={};t.forEach(t=>{const s=t.groupId||"";t.id=e[s]=e[s]||0,e[s]++})}function uk(){return self.SourceBuffer||self.WebKitSourceBuffer}function pk(){if(!gA())return!1;const t=uk();return!t||t.prototype&&"function"==typeof t.prototype.appendBuffer&&"function"==typeof t.prototype.remove}class fk extends nE{constructor(t,e,s){super(t,e,s,"stream-controller",tA),this.audioCodecSwap=!1,this.level=-1,this._forceStartLoad=!1,this._hasEnoughToStart=!1,this.altAudio=0,this.audioOnly=!1,this.fragPlaying=null,this.fragLastKbps=0,this.couldBacktrack=!1,this.backtrackFragment=null,this.audioCodecSwitch=!1,this.videoBuffer=null,this.onMediaPlaying=()=>{this.tick()},this.onMediaSeeked=()=>{const t=this.media,e=t?t.currentTime:null;if(null===e||!zy(e))return;if(this.log(`Media seeked to ${e.toFixed(3)}`),!this.getBufferedFrag(e))return;const s=this.getFwdBufferInfoAtPos(t,e,tA,0);null!==s&&0!==s.len?this.tick():this.warn(`Main forward buffer length at ${e} on "seeked" event ${s?s.len:"empty"})`)},this.registerListeners()}registerListeners(){super.registerListeners();const{hls:t}=this;t.on(Yy.MANIFEST_PARSED,this.onManifestParsed,this),t.on(Yy.LEVEL_LOADING,this.onLevelLoading,this),t.on(Yy.LEVEL_LOADED,this.onLevelLoaded,this),t.on(Yy.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),t.on(Yy.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),t.on(Yy.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),t.on(Yy.BUFFER_CREATED,this.onBufferCreated,this),t.on(Yy.BUFFER_FLUSHED,this.onBufferFlushed,this),t.on(Yy.LEVELS_UPDATED,this.onLevelsUpdated,this),t.on(Yy.FRAG_BUFFERED,this.onFragBuffered,this)}unregisterListeners(){super.unregisterListeners();const{hls:t}=this;t.off(Yy.MANIFEST_PARSED,this.onManifestParsed,this),t.off(Yy.LEVEL_LOADED,this.onLevelLoaded,this),t.off(Yy.FRAG_LOAD_EMERGENCY_ABORTED,this.onFragLoadEmergencyAborted,this),t.off(Yy.AUDIO_TRACK_SWITCHING,this.onAudioTrackSwitching,this),t.off(Yy.AUDIO_TRACK_SWITCHED,this.onAudioTrackSwitched,this),t.off(Yy.BUFFER_CREATED,this.onBufferCreated,this),t.off(Yy.BUFFER_FLUSHED,this.onBufferFlushed,this),t.off(Yy.LEVELS_UPDATED,this.onLevelsUpdated,this),t.off(Yy.FRAG_BUFFERED,this.onFragBuffered,this)}onHandlerDestroying(){this.onMediaPlaying=this.onMediaSeeked=null,this.unregisterListeners(),super.onHandlerDestroying()}startLoad(t,e){if(this.levels){const{lastCurrentTime:s,hls:i}=this;if(this.stopLoad(),this.setInterval(100),this.level=-1,!this.startFragRequested){let t=i.startLevel;-1===t&&(i.config.testBandwidth&&this.levels.length>1?(t=0,this.bitrateTest=!0):t=i.firstAutoLevel),i.nextLoadLevel=t,this.level=i.loadLevel,this._hasEnoughToStart=!!e}s>0&&-1===t&&!e&&(this.log(`Override startPosition with lastCurrentTime @${s.toFixed(3)}`),t=s),this.state=QS,this.nextLoadPosition=this.lastCurrentTime=t+this.timelineOffset,this.startPosition=e?-1:t,this.tick()}else this._forceStartLoad=!0,this.state=qS}stopLoad(){this._forceStartLoad=!1,super.stopLoad()}doTick(){switch(this.state){case rE:{const{levels:t,level:e}=this,s=null==t?void 0:t[e],i=null==s?void 0:s.details;if(i&&(!i.live||this.levelLastLoaded===s&&!this.waitForLive(s))){if(this.waitForCdnTuneIn(i))break;this.state=QS;break}if(this.hls.nextLoadLevel!==this.level){this.state=QS;break}break}case XS:{var t;const e=self.performance.now(),s=this.retryDate;if(!s||e>=s||null!=(t=this.media)&&t.seeking){const{levels:t,level:e}=this,s=null==t?void 0:t[e];this.resetStartWhenNotLoaded(s||null),this.state=QS}}}this.state===QS&&this.doTickIdle(),this.onTickEnd()}onTickEnd(){var t;super.onTickEnd(),null!=(t=this.media)&&t.readyState&&!1===this.media.seeking&&(this.lastCurrentTime=this.media.currentTime),this.checkFragmentChanged()}doTickIdle(){const{hls:t,levelLastLoaded:e,levels:s,media:i}=this;if(null===e||!i&&!this.primaryPrefetch&&(this.startFragRequested||!t.config.startFragPrefetch))return;if(this.altAudio&&this.audioOnly)return;const r=this.buffering?t.nextLoadLevel:t.loadLevel;if(null==s||!s[r])return;const n=s[r],o=this.getMainFwdBufferInfo();if(null===o)return;const a=this.getLevelDetails();if(a&&this._streamEnded(o,a)){const t={};return 2===this.altAudio&&(t.type="video"),this.hls.trigger(Yy.BUFFER_EOS,t),void(this.state=eE)}if(!this.buffering)return;t.loadLevel!==r&&-1===t.manualLevel&&this.log(`Adapting to level ${r} from level ${this.level}`),this.level=t.nextLoadLevel=r;const h=n.details;if(!h||this.state===rE||this.waitForLive(n))return this.level=r,this.state=rE,void(this.startFragRequested=!1);const l=o.len,c=this.getMaxBufferLength(n.maxBitrate);if(l>=c)return;this.backtrackFragment&&this.backtrackFragment.start>o.end&&(this.backtrackFragment=null);const d=this.backtrackFragment?this.backtrackFragment.start:o.end;let u=this.getNextFragment(d,h);if(this.couldBacktrack&&!this.fragPrevious&&u&&DA(u)&&this.fragmentTracker.getState(u)!==dv){var p;const t=(null!=(p=this.backtrackFragment)?p:u).sn-h.startSN,e=h.fragments[t-1];e&&u.cc===e.cc&&(u=e,this.fragmentTracker.removeFragment(e))}else this.backtrackFragment&&o.len&&(this.backtrackFragment=null);if(u&&this.isLoopLoading(u,d)){if(!u.gap){const t=this.audioOnly&&!this.altAudio?IA:kA,e=(t===kA?this.videoBuffer:this.mediaBuffer)||this.media;e&&this.afterBufferFlushed(e,t,tA)}u=this.getNextFragmentLoopLoading(u,h,o,tA,c)}u&&(!u.initSegment||u.initSegment.data||this.bitrateTest||(u=u.initSegment),this.loadFragment(u,n,d))}loadFragment(t,e,s){const i=this.fragmentTracker.getState(t);i===hv||i===cv?DA(t)?this.bitrateTest?(this.log(`Fragment ${t.sn} of level ${t.level} is being downloaded to test bitrate and will not be buffered`),this._loadBitrateTestFrag(t,e)):super.loadFragment(t,e,s):this._loadInitSegment(t,e):this.clearTrackerIfNeeded(t)}getBufferedFrag(t){return this.fragmentTracker.getBufferedFrag(t,tA)}followingBufferedFrag(t){return t?this.getBufferedFrag(t.end+.5):null}immediateLevelSwitch(){this.abortCurrentFrag(),this.flushMainBuffer(0,Number.POSITIVE_INFINITY)}nextLevelSwitch(){const{levels:t,media:e}=this;if(null!=e&&e.readyState){let s;const i=this.getAppendedFrag(e.currentTime);i&&i.start>1&&this.flushMainBuffer(0,i.start-1);const r=this.getLevelDetails();if(null!=r&&r.live){const t=this.getMainFwdBufferInfo();if(!t||t.len<2*r.targetduration)return}if(!e.paused&&t){const e=t[this.hls.nextLoadLevel],i=this.fragLastKbps;s=i&&this.fragCurrent?this.fragCurrent.duration*e.maxBitrate/(1e3*i)+1:0}else s=0;const n=this.getBufferedFrag(e.currentTime+s);if(n){const t=this.followingBufferedFrag(n);if(t){this.abortCurrentFrag();const e=t.maxStartPTS?t.maxStartPTS:t.start,s=t.duration,i=Math.max(n.end,e+Math.min(Math.max(s-this.config.maxFragLookUpTolerance,s*(this.couldBacktrack?.5:.125)),s*(this.couldBacktrack?.75:.25)));this.flushMainBuffer(i,Number.POSITIVE_INFINITY)}}}}abortCurrentFrag(){const t=this.fragCurrent;switch(this.fragCurrent=null,this.backtrackFragment=null,t&&(t.abortRequests(),this.fragmentTracker.removeFragment(t)),this.state){case YS:case JS:case XS:case ZS:case tE:this.state=QS}this.nextLoadPosition=this.getLoadPosition()}flushMainBuffer(t,e){super.flushMainBuffer(t,e,2===this.altAudio?"video":null)}onMediaAttached(t,e){super.onMediaAttached(t,e);const s=e.media;kT(s,"playing",this.onMediaPlaying),kT(s,"seeked",this.onMediaSeeked)}onMediaDetaching(t,e){const{media:s}=this;s&&(_T(s,"playing",this.onMediaPlaying),_T(s,"seeked",this.onMediaSeeked)),this.videoBuffer=null,this.fragPlaying=null,super.onMediaDetaching(t,e);!!e.transferMedia||(this._hasEnoughToStart=!1)}onManifestLoading(){super.onManifestLoading(),this.log("Trigger BUFFER_RESET"),this.hls.trigger(Yy.BUFFER_RESET,void 0),this.couldBacktrack=!1,this.fragLastKbps=0,this.fragPlaying=this.backtrackFragment=null,this.altAudio=0,this.audioOnly=!1}onManifestParsed(t,e){let s=!1,i=!1;e.levels.forEach(t=>{const e=t.audioCodec;e&&(s=s||-1!==e.indexOf("mp4a.40.2"),i=i||-1!==e.indexOf("mp4a.40.5"))}),this.audioCodecSwitch=s&&i&&!function(){var t;const e=uk();return"function"==typeof(null==e||null==(t=e.prototype)?void 0:t.changeType)}(),this.audioCodecSwitch&&this.log("Both AAC/HE-AAC audio found in levels; declaring level codec as HE-AAC"),this.levels=e.levels,this.startFragRequested=!1}onLevelLoading(t,e){const{levels:s}=this;if(!s||this.state!==QS)return;const i=e.levelInfo;(!i.details||i.details.live&&(this.levelLastLoaded!==i||i.details.expired)||this.waitForCdnTuneIn(i.details))&&(this.state=rE)}onLevelLoaded(t,e){var s;const{levels:i,startFragRequested:r}=this,n=e.level,o=e.details,a=o.totalduration;if(!i)return void this.warn(`Levels were reset while loading level ${n}`);this.log(`Level ${n} loaded [${o.startSN},${o.endSN}]${o.lastPartSn?`[part-${o.lastPartSn}-${o.lastPartIndex}]`:""}, cc [${o.startCC}, ${o.endCC}] duration:${a}`);const h=e.levelInfo,l=this.fragCurrent;!l||this.state!==JS&&this.state!==XS||l.level!==e.level&&l.loader&&this.abortCurrentFrag();let c=0;if(o.live||null!=(s=h.details)&&s.live){var d;if(this.checkLiveUpdate(o),o.deltaUpdateFailed)return;c=this.alignPlaylists(o,h.details,null==(d=this.levelLastLoaded)?void 0:d.details)}if(h.details=o,this.levelLastLoaded=h,r||this.setStartPosition(o,c),this.hls.trigger(Yy.LEVEL_UPDATED,{details:o,level:n}),this.state===rE){if(this.waitForCdnTuneIn(o))return;this.state=QS}r&&o.live&&this.synchronizeToLiveEdge(o),this.tick()}synchronizeToLiveEdge(t){const{config:e,media:s}=this;if(!s)return;const i=this.hls.liveSyncPosition,r=this.getLoadPosition(),n=t.fragmentStart,o=t.edge,a=r>=n-e.maxFragLookUpTolerance&&r<=o;if(null!==i&&s.duration>i&&(r<i||!a)){const n=void 0!==e.liveMaxLatencyDuration?e.liveMaxLatencyDuration:e.liveMaxLatencyDurationCount*t.targetduration;if((!a&&s.readyState<4||r<o-n)&&(this._hasEnoughToStart||(this.nextLoadPosition=i),s.readyState))if(this.warn(`Playback: ${r.toFixed(3)} is located too far from the end of live sliding playlist: ${o}, reset currentTime to : ${i.toFixed(3)}`),"buffered"===this.config.liveSyncMode){var h;const t=Lv.bufferInfo(s,i,0);if(null==t||null==(h=t.buffered)||!h.length)return void(s.currentTime=i);if(t.start<=r)return void(s.currentTime=i);const{nextStart:e}=Lv.bufferedInfo(t.buffered,r,0);e&&(s.currentTime=e)}else s.currentTime=i}}_handleFragmentLoadProgress(t){var e;const s=t.frag,{part:i,payload:r}=t,{levels:n}=this;if(!n)return void this.warn(`Levels were reset while fragment load was in progress. Fragment ${s.sn} of level ${s.level} will not be buffered`);const o=n[s.level];if(!o)return void this.warn(`Level ${s.level} not found on progress`);const a=o.details;if(!a)return this.warn(`Dropping fragment ${s.sn} of level ${s.level} after level details were reset`),void this.fragmentTracker.removeFragment(s);const h=o.videoCodec,l=a.PTSKnown||!a.live,c=null==(e=s.initSegment)?void 0:e.data,d=this._getAudioCodec(o),u=this.transmuxer=this.transmuxer||new Bw(this.hls,tA,this._handleTransmuxComplete.bind(this),this._handleTransmuxerFlush.bind(this)),p=i?i.index:-1,f=-1!==p,m=new Cv(s.level,s.sn,s.stats.chunkCount,r.byteLength,p,f),g=this.initPTS[s.cc];u.push(r,c,d,h,s,i,a.totalduration,l,m,g)}onAudioTrackSwitching(t,e){const s=this.hls,i=2===this.altAudio;if(Gb(e.url,s))this.altAudio=1;else{if(this.mediaBuffer!==this.media){this.log("Switching on main audio, use media.buffered to schedule main fragment loading"),this.mediaBuffer=this.media;const t=this.fragCurrent;t&&(this.log("Switching to main audio track, cancel main fragment load"),t.abortRequests(),this.fragmentTracker.removeFragment(t)),this.resetTransmuxer(),this.resetLoadingState()}else this.audioOnly&&this.resetTransmuxer();if(i)return this.fragmentTracker.removeAllFragments(),s.once(Yy.BUFFER_FLUSHED,()=>{var t;null==(t=this.hls)||t.trigger(Yy.AUDIO_TRACK_SWITCHED,e)}),void s.trigger(Yy.BUFFER_FLUSHING,{startOffset:0,endOffset:Number.POSITIVE_INFINITY,type:null});s.trigger(Yy.AUDIO_TRACK_SWITCHED,e)}}onAudioTrackSwitched(t,e){const s=Gb(e.url,this.hls);if(s){const t=this.videoBuffer;t&&this.mediaBuffer!==t&&(this.log("Switching on alternate audio, use video.buffered to schedule main fragment loading"),this.mediaBuffer=t)}this.altAudio=s?2:0,this.tick()}onBufferCreated(t,e){const s=e.tracks;let i,r,n=!1;for(const t in s){const e=s[t];if("main"===e.id){if(r=t,i=e,"video"===t){const e=s[t];e&&(this.videoBuffer=e.buffer)}}else n=!0}n&&i?(this.log(`Alternate track found, use ${r}.buffered to schedule main fragment loading`),this.mediaBuffer=i.buffer):this.mediaBuffer=this.media}onFragBuffered(t,e){const{frag:s,part:i}=e,r=s.type===tA;if(r){if(this.fragContextChanged(s))return this.warn(`Fragment ${s.sn}${i?" p: "+i.index:""} of level ${s.level} finished buffering, but was aborted. state: ${this.state}`),void(this.state===tE&&(this.state=QS));const t=i?i.stats:s.stats;this.fragLastKbps=Math.round(8*t.total/(t.buffering.end-t.loading.first)),DA(s)&&(this.fragPrevious=s),this.fragBufferedComplete(s,i)}const n=this.media;n&&(!this._hasEnoughToStart&&Lv.getBuffered(n).length&&(this._hasEnoughToStart=!0,this.seekToStartPos()),r&&this.tick())}get hasEnoughToStart(){return this._hasEnoughToStart}onError(t,e){var s;if(e.fatal)this.state=sE;else switch(e.details){case Qy.FRAG_GAP:case Qy.FRAG_PARSING_ERROR:case Qy.FRAG_DECRYPT_ERROR:case Qy.FRAG_LOAD_ERROR:case Qy.FRAG_LOAD_TIMEOUT:case Qy.KEY_LOAD_ERROR:case Qy.KEY_LOAD_TIMEOUT:this.onFragmentOrKeyLoadError(tA,e);break;case Qy.LEVEL_LOAD_ERROR:case Qy.LEVEL_LOAD_TIMEOUT:case Qy.LEVEL_PARSING_ERROR:e.levelRetry||this.state!==rE||(null==(s=e.context)?void 0:s.type)!==Xy||(this.state=QS);break;case Qy.BUFFER_ADD_CODEC_ERROR:case Qy.BUFFER_APPEND_ERROR:if("main"!==e.parent)return;this.resetLoadingState();break;case Qy.BUFFER_FULL_ERROR:if("main"!==e.parent)return;this.reduceLengthAndFlushBuffer(e)&&this.flushMainBuffer(0,Number.POSITIVE_INFINITY);break;case Qy.INTERNAL_EXCEPTION:this.recoverWorkerError(e)}}onFragLoadEmergencyAborted(){this.state=QS,this._hasEnoughToStart||(this.startFragRequested=!1,this.nextLoadPosition=this.lastCurrentTime),this.tickImmediate()}onBufferFlushed(t,{type:e}){if(e!==IA||!this.altAudio){const t=(e===kA?this.videoBuffer:this.mediaBuffer)||this.media;t&&(this.afterBufferFlushed(t,e,tA),this.tick())}}onLevelsUpdated(t,e){this.level>-1&&this.fragCurrent&&(this.level=this.fragCurrent.level,-1===this.level&&this.resetWhenMissingContext(this.fragCurrent)),this.levels=e.levels}swapAudioCodec(){this.audioCodecSwap=!this.audioCodecSwap}seekToStartPos(){const{media:t}=this;if(!t)return;const e=t.currentTime;let s=this.startPosition;if(s>=0&&e<s){if(t.seeking)return void this.log(`could not seek to ${s}, already seeking at ${e}`);const i=this.timelineOffset;i&&s&&(s+=i);const r=this.getLevelDetails(),n=Lv.getBuffered(t),o=n.length?n.start(0):0,a=o-s,h=Math.max(this.config.maxBufferHole,this.config.maxFragLookUpTolerance);(this.config.startOnSegmentBoundary||a>0&&(a<h||this.loadingParts&&a<2*((null==r?void 0:r.partTarget)||0)))&&(this.log(`adjusting start position by ${a} to match buffer start`),s+=a,this.startPosition=s),e<s&&(this.log(`seek to target start position ${s} from current time ${e} buffer start ${o}`),t.currentTime=s)}}_getAudioCodec(t){let e=this.config.defaultAudioCodec||t.audioCodec;return this.audioCodecSwap&&e&&(this.log("Swapping audio codec"),e=-1!==e.indexOf("mp4a.40.5")?"mp4a.40.2":"mp4a.40.5"),e}_loadBitrateTestFrag(t,e){t.bitrateTest=!0,this._doFragLoad(t,e).then(t=>{const{hls:s}=this,i=null==t?void 0:t.frag;if(!i||this.fragContextChanged(i))return;e.fragmentError=0,this.state=QS,this.startFragRequested=!1,this.bitrateTest=!1;const r=i.stats;r.parsing.start=r.parsing.end=r.buffering.start=r.buffering.end=self.performance.now(),s.trigger(Yy.FRAG_LOADED,t),i.bitrateTest=!1})}_handleTransmuxComplete(t){var e;const s=this.playlistType,{hls:i}=this,{remuxResult:r,chunkMeta:n}=t,o=this.getCurrentContext(n);if(!o)return void this.resetWhenMissingContext(n);const{frag:a,part:h,level:l}=o,{video:c,text:d,id3:u,initSegment:p}=r,{details:f}=l,m=this.altAudio?void 0:r.audio;if(this.fragContextChanged(a))this.fragmentTracker.removeFragment(a);else{if(this.state=ZS,p){if(null!=p&&p.tracks){const t=a.initSegment||a;this._bufferInitSegment(l,p.tracks,t,n),i.trigger(Yy.FRAG_PARSING_INIT_SEGMENT,{frag:t,id:s,tracks:p.tracks})}const t=p.initPTS,e=p.timescale;zy(t)&&(this.initPTS[a.cc]={baseTime:t,timescale:e},i.trigger(Yy.INIT_PTS_FOUND,{frag:a,id:s,initPTS:t,timescale:e}))}if(c&&f){m&&"audiovideo"===c.type&&this.logMuxedErr(a);const t=f.fragments[a.sn-1-f.startSN],e=a.sn===f.startSN,s=!t||a.cc>t.cc;if(!1!==r.independent){const{startPTS:t,endPTS:i,startDTS:r,endDTS:o}=c;if(h)h.elementaryStreams[c.type]={startPTS:t,endPTS:i,startDTS:r,endDTS:o};else if(c.firstKeyFrame&&c.independent&&1===n.id&&!s&&(this.couldBacktrack=!0),c.dropped&&c.independent){const r=this.getMainFwdBufferInfo(),n=(r?r.end:this.getLoadPosition())+this.config.maxBufferHole,h=c.firstKeyFramePTS?c.firstKeyFramePTS:t;if(!e&&n<h-this.config.maxBufferHole&&!s)return void this.backtrack(a);s&&(a.gap=!0),a.setElementaryStreamInfo(c.type,a.start,i,a.start,o,!0)}else e&&t-(f.appliedTimelineOffset||0)>2&&(a.gap=!0);a.setElementaryStreamInfo(c.type,t,i,r,o),this.backtrackFragment&&(this.backtrackFragment=a),this.bufferFragmentData(c,a,h,n,e||s)}else{if(!e&&!s)return void this.backtrack(a);a.gap=!0}}if(m){const{startPTS:t,endPTS:e,startDTS:s,endDTS:i}=m;h&&(h.elementaryStreams[IA]={startPTS:t,endPTS:e,startDTS:s,endDTS:i}),a.setElementaryStreamInfo(IA,t,e,s,i),this.bufferFragmentData(m,a,h,n)}if(f&&null!=u&&null!=(e=u.samples)&&e.length){const t={id:s,frag:a,details:f,samples:u.samples};i.trigger(Yy.FRAG_PARSING_METADATA,t)}if(f&&d){const t={id:s,frag:a,details:f,samples:d.samples};i.trigger(Yy.FRAG_PARSING_USERDATA,t)}}}logMuxedErr(t){this.warn(`${DA(t)?"Media":"Init"} segment with muxed audiovideo where only video expected: ${t.url}`)}_bufferInitSegment(t,e,s,i){if(this.state!==ZS)return;this.audioOnly=!!e.audio&&!e.video,this.altAudio&&!this.audioOnly&&(delete e.audio,e.audiovideo&&this.logMuxedErr(s));const{audio:r,video:n,audiovideo:o}=e;if(r){let s=gb(r.codec,t.audioCodec);"mp4a"===s&&(s="mp4a.40.5");const i=navigator.userAgent.toLowerCase();if(this.audioCodecSwitch){s&&(s=-1!==s.indexOf("mp4a.40.5")?"mp4a.40.2":"mp4a.40.5");const t=r.metadata;t&&"channelCount"in t&&1!==(t.channelCount||1)&&-1===i.indexOf("firefox")&&(s="mp4a.40.5")}s&&-1!==s.indexOf("mp4a.40.5")&&-1!==i.indexOf("android")&&"audio/mpeg"!==r.container&&(s="mp4a.40.2",this.log(`Android: force audio codec to ${s}`)),t.audioCodec&&t.audioCodec!==s&&this.log(`Swapping manifest audio codec "${t.audioCodec}" for "${s}"`),r.levelCodec=s,r.id=tA,this.log(`Init audio buffer, container:${r.container}, codecs[selected/level/parsed]=[${s||""}/${t.audioCodec||""}/${r.codec}]`),delete e.audiovideo}if(n){n.levelCodec=t.videoCodec,n.id=tA;const s=n.codec;if(4===(null==s?void 0:s.length))switch(s){case"hvc1":case"hev1":n.codec="hvc1.1.6.L120.90";break;case"av01":n.codec="av01.0.04M.08";break;case"avc1":n.codec="avc1.42e01e"}this.log(`Init video buffer, container:${n.container}, codecs[level/parsed]=[${t.videoCodec||""}/${s}]${n.codec!==s?" parsed-corrected="+n.codec:""}${n.supplemental?" supplemental="+n.supplemental:""}`),delete e.audiovideo}o&&(this.log(`Init audiovideo buffer, container:${o.container}, codecs[level/parsed]=[${t.codecs}/${o.codec}]`),delete e.video,delete e.audio);const a=Object.keys(e);if(a.length){if(this.hls.trigger(Yy.BUFFER_CODECS,e),!this.hls)return;a.forEach(t=>{const r=e[t].initSegment;null!=r&&r.byteLength&&this.hls.trigger(Yy.BUFFER_APPENDING,{type:t,data:r,frag:s,part:null,chunkMeta:i,parent:s.type})})}this.tickImmediate()}getMainFwdBufferInfo(){const t=this.mediaBuffer&&2===this.altAudio?this.mediaBuffer:this.media;return this.getFwdBufferInfo(t,tA)}get maxBufferLength(){const{levels:t,level:e}=this,s=null==t?void 0:t[e];return s?this.getMaxBufferLength(s.maxBitrate):this.config.maxBufferLength}backtrack(t){this.couldBacktrack=!0,this.backtrackFragment=t,this.resetTransmuxer(),this.flushBufferGap(t),this.fragmentTracker.removeFragment(t),this.fragPrevious=null,this.nextLoadPosition=t.start,this.state=QS}checkFragmentChanged(){const t=this.media;let e=null;if(t&&t.readyState>1&&!1===t.seeking){const s=t.currentTime;if(Lv.isBuffered(t,s)?e=this.getAppendedFrag(s):Lv.isBuffered(t,s+.1)&&(e=this.getAppendedFrag(s+.1)),e){this.backtrackFragment=null;const t=this.fragPlaying,s=e.level;t&&e.sn===t.sn&&t.level===s||(this.fragPlaying=e,this.hls.trigger(Yy.FRAG_CHANGED,{frag:e}),t&&t.level===s||this.hls.trigger(Yy.LEVEL_SWITCHED,{level:s}))}}}get nextLevel(){const t=this.nextBufferedFrag;return t?t.level:-1}get currentFrag(){var t;if(this.fragPlaying)return this.fragPlaying;const e=(null==(t=this.media)?void 0:t.currentTime)||this.lastCurrentTime;return zy(e)?this.getAppendedFrag(e):null}get currentProgramDateTime(){var t;const e=(null==(t=this.media)?void 0:t.currentTime)||this.lastCurrentTime;if(zy(e)){const t=this.getLevelDetails(),s=this.currentFrag||(t?Hb(null,t.fragments,e):null);if(s){const t=s.programDateTime;if(null!==t){const i=t+1e3*(e-s.start);return new Date(i)}}}return null}get currentLevel(){const t=this.currentFrag;return t?t.level:-1}get nextBufferedFrag(){const t=this.currentFrag;return t?this.followingBufferedFrag(t):null}get forceStartLoad(){return this._forceStartLoad}}class mk{constructor(t){this.config=void 0,this.keyUriToKeyInfo={},this.emeController=null,this.config=t}abort(t){for(const s in this.keyUriToKeyInfo){const i=this.keyUriToKeyInfo[s].loader;if(i){var e;if(t&&t!==(null==(e=i.context)?void 0:e.frag.type))return;i.abort()}}}detach(){for(const t in this.keyUriToKeyInfo){const e=this.keyUriToKeyInfo[t];(e.mediaKeySessionContext||e.decryptdata.isCommonEncryption)&&delete this.keyUriToKeyInfo[t]}}destroy(){this.detach();for(const t in this.keyUriToKeyInfo){const e=this.keyUriToKeyInfo[t].loader;e&&e.destroy()}this.keyUriToKeyInfo={}}createKeyLoadError(t,e=Qy.KEY_LOAD_ERROR,s,i,r){return new kv({type:qy.NETWORK_ERROR,details:e,fatal:!1,frag:t,response:r,error:s,networkDetails:i})}loadClear(t,e){if(this.emeController&&this.config.emeEnabled&&!this.emeController.getSelectedKeySystemFormats().length)if(e.length){const{sn:s,cc:i}=t;for(let t=0;t<e.length;t++){const r=e[t];if(i<=r.cc&&("initSegment"===s||"initSegment"===r.sn||s<r.sn))return this.emeController.selectKeySystemFormat(r).then(t=>{if(r.setKeyFormat(t),this.emeController&&this.config.requireKeySystemAccessOnStart){const e=tS(t);if(e)return this.emeController.getKeySystemAccess([e])}})}}else if(this.config.requireKeySystemAccessOnStart){const t=aS(this.config);if(t.length)return this.emeController.getKeySystemAccess(t)}return null}load(t){return!t.decryptdata&&t.encrypted&&this.emeController&&this.config.emeEnabled?this.emeController.selectKeySystemFormat(t).then(e=>this.loadInternal(t,e)):this.loadInternal(t)}loadInternal(t,e){var s,i;e&&t.setKeyFormat(e);const r=t.decryptdata;if(!r){const s=new Error(e?`Expected frag.decryptdata to be defined after setting format ${e}`:"Missing decryption data on fragment in onKeyLoading");return Promise.reject(this.createKeyLoadError(t,Qy.KEY_LOAD_ERROR,s))}const n=r.uri;if(!n)return Promise.reject(this.createKeyLoadError(t,Qy.KEY_LOAD_ERROR,new Error(`Invalid key URI: "${n}"`)));let o=this.keyUriToKeyInfo[n];if(null!=(s=o)&&s.decryptdata.key)return r.key=o.decryptdata.key,Promise.resolve({frag:t,keyInfo:o});var a;if(null!=(i=o)&&i.keyLoadPromise)switch(null==(a=o.mediaKeySessionContext)?void 0:a.keyStatus){case void 0:case"status-pending":case"usable":case"usable-in-future":return o.keyLoadPromise.then(e=>(r.key=e.keyInfo.decryptdata.key,{frag:t,keyInfo:o}))}switch(o=this.keyUriToKeyInfo[n]={decryptdata:r,keyLoadPromise:null,loader:null,mediaKeySessionContext:null},r.method){case"ISO-23001-7":case"SAMPLE-AES":case"SAMPLE-AES-CENC":case"SAMPLE-AES-CTR":return"identity"===r.keyFormat?this.loadKeyHTTP(o,t):this.loadKeyEME(o,t);case"AES-128":case"AES-256":case"AES-256-CTR":return this.loadKeyHTTP(o,t);default:return Promise.reject(this.createKeyLoadError(t,Qy.KEY_LOAD_ERROR,new Error(`Key supplied with unsupported METHOD: "${r.method}"`)))}}loadKeyEME(t,e){const s={frag:e,keyInfo:t};if(this.emeController&&this.config.emeEnabled){const e=this.emeController.loadKey(s);if(e)return(t.keyLoadPromise=e.then(e=>(t.mediaKeySessionContext=e,s))).catch(e=>{throw t.keyLoadPromise=null,e})}return Promise.resolve(s)}loadKeyHTTP(t,e){const s=this.config,i=new(0,s.loader)(s);return e.keyLoader=t.loader=i,t.keyLoadPromise=new Promise((r,n)=>{const o={keyInfo:t,frag:e,responseType:"arraybuffer",url:t.decryptdata.uri},a=s.keyLoadPolicy.default,h={loadPolicy:a,timeout:a.maxLoadTimeMs,maxRetry:0,retryDelay:0,maxRetryDelay:0},l={onSuccess:(t,e,s,i)=>{const{frag:o,keyInfo:a,url:h}=s;if(!o.decryptdata||a!==this.keyUriToKeyInfo[h])return n(this.createKeyLoadError(o,Qy.KEY_LOAD_ERROR,new Error("after key load, decryptdata unset or changed"),i));a.decryptdata.key=o.decryptdata.key=new Uint8Array(t.data),o.keyLoader=null,a.loader=null,r({frag:o,keyInfo:a})},onError:(t,s,i,r)=>{this.resetLoader(s),n(this.createKeyLoadError(e,Qy.KEY_LOAD_ERROR,new Error(`HTTP Error ${t.code} loading key ${t.text}`),i,hA({url:o.url,data:void 0},t)))},onTimeout:(t,s,i)=>{this.resetLoader(s),n(this.createKeyLoadError(e,Qy.KEY_LOAD_TIMEOUT,new Error("key loading timed out"),i))},onAbort:(t,s,i)=>{this.resetLoader(s),n(this.createKeyLoadError(e,Qy.INTERNAL_ABORTED,new Error("key loading aborted"),i))}};i.load(o,h,l)})}resetLoader(t){const{frag:e,keyInfo:s,url:i}=t,r=s.loader;e.keyLoader===r&&(e.keyLoader=null,s.loader=null),delete this.keyUriToKeyInfo[i],r&&r.destroy()}}function gk(t){const{type:e}=t;switch(e){case $y:return eA;case Zy:return sA;default:return tA}}function yk(t,e){let s=t.url;return void 0!==s&&0!==s.indexOf("data:")||(s=e.url),s}class Ak{constructor(t){this.hls=void 0,this.loaders=Object.create(null),this.variableList=null,this.onManifestLoaded=this.checkAutostartLoad,this.hls=t,this.registerListeners()}startLoad(t){}stopLoad(){this.destroyInternalLoaders()}registerListeners(){const{hls:t}=this;t.on(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.on(Yy.LEVEL_LOADING,this.onLevelLoading,this),t.on(Yy.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),t.on(Yy.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this),t.on(Yy.LEVELS_UPDATED,this.onLevelsUpdated,this)}unregisterListeners(){const{hls:t}=this;t.off(Yy.MANIFEST_LOADING,this.onManifestLoading,this),t.off(Yy.LEVEL_LOADING,this.onLevelLoading,this),t.off(Yy.AUDIO_TRACK_LOADING,this.onAudioTrackLoading,this),t.off(Yy.SUBTITLE_TRACK_LOADING,this.onSubtitleTrackLoading,this),t.off(Yy.LEVELS_UPDATED,this.onLevelsUpdated,this)}createInternalLoader(t){const e=this.hls.config,s=e.pLoader,i=e.loader,r=new(s||i)(e);return this.loaders[t.type]=r,r}getInternalLoader(t){return this.loaders[t.type]}resetInternalLoader(t){this.loaders[t]&&delete this.loaders[t]}destroyInternalLoaders(){for(const t in this.loaders){const e=this.loaders[t];e&&e.destroy(),this.resetInternalLoader(t)}}destroy(){this.variableList=null,this.unregisterListeners(),this.destroyInternalLoaders()}onManifestLoading(t,e){const{url:s}=e;this.variableList=null,this.load({id:null,level:0,responseType:"text",type:Jy,url:s,deliveryDirectives:null,levelOrTrack:null})}onLevelLoading(t,e){const{id:s,level:i,pathwayId:r,url:n,deliveryDirectives:o,levelInfo:a}=e;this.load({id:s,level:i,pathwayId:r,responseType:"text",type:Xy,url:n,deliveryDirectives:o,levelOrTrack:a})}onAudioTrackLoading(t,e){const{id:s,groupId:i,url:r,deliveryDirectives:n,track:o}=e;this.load({id:s,groupId:i,level:null,responseType:"text",type:$y,url:r,deliveryDirectives:n,levelOrTrack:o})}onSubtitleTrackLoading(t,e){const{id:s,groupId:i,url:r,deliveryDirectives:n,track:o}=e;this.load({id:s,groupId:i,level:null,responseType:"text",type:Zy,url:r,deliveryDirectives:n,levelOrTrack:o})}onLevelsUpdated(t,e){const s=this.loaders[Xy];if(s){const t=s.context;t&&!e.levels.some(e=>e===t.levelOrTrack)&&(s.abort(),delete this.loaders[Xy])}}load(t){var e;const s=this.hls.config;let i,r=this.getInternalLoader(t);if(r){const e=this.hls.logger,s=r.context;if(s&&s.levelOrTrack===t.levelOrTrack&&(s.url===t.url||s.deliveryDirectives&&!t.deliveryDirectives))return void(s.url===t.url?e.log(`[playlist-loader]: ignore ${t.url} ongoing request`):e.log(`[playlist-loader]: ignore ${t.url} in favor of ${s.url}`));e.log(`[playlist-loader]: aborting previous loader for type: ${t.type}`),r.abort()}if(i=t.type===Jy?s.manifestLoadPolicy.default:oA({},s.playlistLoadPolicy.default,{timeoutRetry:null,errorRetry:null}),r=this.createInternalLoader(t),zy(null==(e=t.deliveryDirectives)?void 0:e.part)){let e;if(t.type===Xy&&null!==t.level?e=this.hls.levels[t.level].details:t.type===$y&&null!==t.id?e=this.hls.audioTracks[t.id].details:t.type===Zy&&null!==t.id&&(e=this.hls.subtitleTracks[t.id].details),e){const t=e.partTarget,s=e.targetduration;if(t&&s){const e=1e3*Math.max(3*t,.8*s);i=oA({},i,{maxTimeToFirstByteMs:Math.min(e,i.maxTimeToFirstByteMs),maxLoadTimeMs:Math.min(e,i.maxTimeToFirstByteMs)})}}}const n=i.errorRetry||i.timeoutRetry||{},o={loadPolicy:i,timeout:i.maxLoadTimeMs,maxRetry:n.maxNumRetry||0,retryDelay:n.retryDelayMs||0,maxRetryDelay:n.maxRetryDelayMs||0},a={onSuccess:(t,e,s,i)=>{const r=this.getInternalLoader(s);this.resetInternalLoader(s.type);const n=t.data;0===n.indexOf("#EXTM3U")?(e.parsing.start=performance.now(),AS.isMediaPlaylist(n)||s.type!==Jy?this.handleTrackOrLevelPlaylist(t,e,s,i||null,r):this.handleMasterPlaylist(t,e,s,i)):this.handleManifestParsingError(t,s,new Error("no EXTM3U delimiter"),i||null,e)},onError:(t,e,s,i)=>{this.handleNetworkError(e,s,!1,t,i)},onTimeout:(t,e,s)=>{this.handleNetworkError(e,s,!0,void 0,t)}};r.load(t,o,a)}checkAutostartLoad(){if(!this.hls)return;const{config:{autoStartLoad:t,startPosition:e},forceStartLoad:s}=this.hls;(t||s)&&(this.hls.logger.log(`${t?"auto":"force"} startLoad with configured startPosition ${e}`),this.hls.startLoad(e))}handleMasterPlaylist(t,e,s,i){const r=this.hls,n=t.data,o=yk(t,s),a=AS.parseMasterPlaylist(n,o);if(a.playlistParsingError)return void this.handleManifestParsingError(t,s,a.playlistParsingError,i,e);const{contentSteering:h,levels:l,sessionData:c,sessionKeys:d,startTimeOffset:u,variableList:p}=a;this.variableList=p;const{AUDIO:f=[],SUBTITLES:m,"CLOSED-CAPTIONS":g}=AS.parseMasterPlaylistMedia(n,o,a);if(f.length){f.some(t=>!t.url)||!l[0].audioCodec||l[0].attrs.AUDIO||(this.hls.logger.log("[playlist-loader]: audio codec signaled in quality level, but no embedded audio track signaled, create one"),f.unshift({type:"main",name:"main",groupId:"main",default:!1,autoselect:!1,forced:!1,id:-1,attrs:new Ov({}),bitrate:0,url:""}))}r.trigger(Yy.MANIFEST_LOADED,{levels:l,audioTracks:f,subtitles:m,captions:g,contentSteering:h,url:o,stats:e,networkDetails:i,sessionData:c,sessionKeys:d,startTimeOffset:u,variableList:p})}handleTrackOrLevelPlaylist(t,e,s,i,r){const n=this.hls,{id:o,level:a,type:h}=s,l=yk(t,s),c=zy(a)?a:zy(o)?o:0,d=gk(s),u=AS.parseLevelPlaylist(t.data,l,c,d,0,this.variableList);if(h===Jy){const t={attrs:new Ov({}),bitrate:0,details:u,name:"",url:l};u.requestScheduled=e.loading.start+FS(u,0),n.trigger(Yy.MANIFEST_LOADED,{levels:[t],audioTracks:[],url:l,stats:e,networkDetails:i,sessionData:null,sessionKeys:null,contentSteering:null,startTimeOffset:null,variableList:null})}e.parsing.end=performance.now(),s.levelDetails=u,this.handlePlaylistLoaded(u,t,e,s,i,r)}handleManifestParsingError(t,e,s,i,r){this.hls.trigger(Yy.ERROR,{type:qy.NETWORK_ERROR,details:Qy.MANIFEST_PARSING_ERROR,fatal:e.type===Jy,url:t.url,err:s,error:s,reason:s.message,response:t,context:e,networkDetails:i,stats:r})}handleNetworkError(t,e,s=!1,i,r){let n=`A network ${s?"timeout":"error"+(i?" (status "+i.code+")":"")} occurred while loading ${t.type}`;t.type===Xy?n+=`: ${t.level} id: ${t.id}`:t.type!==$y&&t.type!==Zy||(n+=` id: ${t.id} group-id: "${t.groupId}"`);const o=new Error(n);this.hls.logger.warn(`[playlist-loader]: ${n}`);let a=Qy.UNKNOWN,h=!1;const l=this.getInternalLoader(t);switch(t.type){case Jy:a=s?Qy.MANIFEST_LOAD_TIMEOUT:Qy.MANIFEST_LOAD_ERROR,h=!0;break;case Xy:a=s?Qy.LEVEL_LOAD_TIMEOUT:Qy.LEVEL_LOAD_ERROR,h=!1;break;case $y:a=s?Qy.AUDIO_TRACK_LOAD_TIMEOUT:Qy.AUDIO_TRACK_LOAD_ERROR,h=!1;break;case Zy:a=s?Qy.SUBTITLE_TRACK_LOAD_TIMEOUT:Qy.SUBTITLE_LOAD_ERROR,h=!1}l&&this.resetInternalLoader(t.type);const c={type:qy.NETWORK_ERROR,details:a,fatal:h,url:t.url,loader:l,context:t,error:o,networkDetails:e,stats:r};if(i){const s=(null==e?void 0:e.url)||t.url;c.response=hA({url:s,data:void 0},i)}this.hls.trigger(Yy.ERROR,c)}handlePlaylistLoaded(t,e,s,i,r,n){const o=this.hls,{type:a,level:h,id:l,groupId:c,deliveryDirectives:d}=i,u=yk(e,i),p=gk(i),f="number"==typeof i.level&&p===tA?h:void 0;if(!t.fragments.length){const n=t.playlistParsingError=new Error("No Segments found in Playlist");return void o.trigger(Yy.ERROR,{type:qy.NETWORK_ERROR,details:Qy.LEVEL_EMPTY_ERROR,fatal:!1,url:u,error:n,reason:n.message,response:e,context:i,level:f,parent:p,networkDetails:r,stats:s})}t.targetduration||(t.playlistParsingError=new Error("Missing Target Duration"));const m=t.playlistParsingError;if(m){if(this.hls.logger.warn(m),!o.config.ignorePlaylistParsingErrors)return void o.trigger(Yy.ERROR,{type:qy.NETWORK_ERROR,details:Qy.LEVEL_PARSING_ERROR,fatal:!1,url:u,error:m,reason:m.message,response:e,context:i,level:f,parent:p,networkDetails:r,stats:s});t.playlistParsingError=null}switch(t.live&&n&&(n.getCacheAge&&(t.ageHeader=n.getCacheAge()||0),n.getCacheAge&&!isNaN(t.ageHeader)||(t.ageHeader=0)),a){case Jy:case Xy:o.trigger(Yy.LEVEL_LOADED,{details:t,levelInfo:i.levelOrTrack||o.levels[0],level:f||0,id:l||0,stats:s,networkDetails:r,deliveryDirectives:d,withoutMultiVariant:a===Jy});break;case $y:o.trigger(Yy.AUDIO_TRACK_LOADED,{details:t,track:i.levelOrTrack,id:l||0,groupId:c||"",stats:s,networkDetails:r,deliveryDirectives:d});break;case Zy:o.trigger(Yy.SUBTITLE_TRACK_LOADED,{details:t,track:i.levelOrTrack,id:l||0,groupId:c||"",stats:s,networkDetails:r,deliveryDirectives:d})}}}class bk{static get version(){return uE}static isMSESupported(){return pk()}static isSupported(){return function(){if(!pk())return!1;const t=gA();return"function"==typeof(null==t?void 0:t.isTypeSupported)&&(["avc1.42E01E,mp4a.40.2","av01.0.01M.08","vp09.00.50.08"].some(e=>t.isTypeSupported(cb(e,"video")))||["mp4a.40.2","fLaC"].some(e=>t.isTypeSupported(cb(e,"audio"))))}()}static getMediaSource(){return gA()}static get Events(){return Yy}static get MetadataSchema(){return BE}static get ErrorTypes(){return qy}static get ErrorDetails(){return Qy}static get DefaultConfig(){return bk.defaultConfig?bk.defaultConfig:$I}static set DefaultConfig(t){bk.defaultConfig=t}constructor(t={}){this.config=void 0,this.userConfig=void 0,this.logger=void 0,this.coreComponents=void 0,this.networkControllers=void 0,this._emitter=new dE,this._autoLevelCapping=-1,this._maxHdcpLevel=null,this.abrController=void 0,this.bufferController=void 0,this.capLevelController=void 0,this.latencyController=void 0,this.levelController=void 0,this.streamController=void 0,this.audioStreamController=void 0,this.subtititleStreamController=void 0,this.audioTrackController=void 0,this.subtitleTrackController=void 0,this.interstitialsController=void 0,this.gapController=void 0,this.emeController=void 0,this.cmcdController=void 0,this._media=null,this._url=null,this._sessionId=void 0,this.triggeringException=void 0,this.started=!1;const e=this.logger=function(t,e,s){const i=uA();if("object"==typeof console&&!0===t||"object"==typeof t){const r=["debug","log","info","warn","error"];r.forEach(e=>{i[e]=pA(e,t,s)});try{i.log(`Debug logs enabled for "${e}" in hls.js version 1.6.5`)}catch(t){return uA()}r.forEach(e=>{fA[e]=pA(e,t)})}else oA(fA,i);return i}(t.debug||!1,"Hls instance",t.assetPlayerId),s=this.config=function(t,e,s){if((e.liveSyncDurationCount||e.liveMaxLatencyDurationCount)&&(e.liveSyncDuration||e.liveMaxLatencyDuration))throw new Error("Illegal hls.js config: don't mix up liveSyncDurationCount/liveMaxLatencyDurationCount and liveSyncDuration/liveMaxLatencyDuration");if(void 0!==e.liveMaxLatencyDurationCount&&(void 0===e.liveSyncDurationCount||e.liveMaxLatencyDurationCount<=e.liveSyncDurationCount))throw new Error('Illegal hls.js config: "liveMaxLatencyDurationCount" must be greater than "liveSyncDurationCount"');if(void 0!==e.liveMaxLatencyDuration&&(void 0===e.liveSyncDuration||e.liveMaxLatencyDuration<=e.liveSyncDuration))throw new Error('Illegal hls.js config: "liveMaxLatencyDuration" must be greater than "liveSyncDuration"');const i=ZI(t),r=["TimeOut","MaxRetry","RetryDelay","MaxRetryTimeout"];return["manifest","level","frag"].forEach(t=>{const n=`${"level"===t?"playlist":t}LoadPolicy`,o=void 0===e[n],a=[];r.forEach(s=>{const r=`${t}Loading${s}`,h=e[r];if(void 0!==h&&o){a.push(r);const t=i[n].default;switch(e[n]={default:t},s){case"TimeOut":t.maxLoadTimeMs=h,t.maxTimeToFirstByteMs=h;break;case"MaxRetry":t.errorRetry.maxNumRetry=h,t.timeoutRetry.maxNumRetry=h;break;case"RetryDelay":t.errorRetry.retryDelayMs=h,t.timeoutRetry.retryDelayMs=h;break;case"MaxRetryTimeout":t.errorRetry.maxRetryDelayMs=h,t.timeoutRetry.maxRetryDelayMs=h}}}),a.length&&s.warn(`hls.js config: "${a.join('", "')}" setting(s) are deprecated, use "${n}": ${Bb(e[n])}`)}),hA(hA({},i),e)}(bk.DefaultConfig,t,e);this.userConfig=t,s.progressive&&tk(s,e);const{abrController:i,bufferController:r,capLevelController:n,errorController:o,fpsController:a}=s,h=new o(this),l=this.abrController=new i(this),c=new uv(this),d=s.interstitialsController,u=d?this.interstitialsController=new d(this,bk):null,p=this.bufferController=new r(this,c),f=this.capLevelController=new n(this),m=new a(this),g=new Ak(this),y=s.contentSteeringController,A=y?new y(this):null,b=this.levelController=new ck(this,A),v=new hk(this),S=new mk(this.config),E=this.streamController=new fk(this,c,S),w=this.gapController=new ek(this,c);f.setStreamController(E),m.setStreamController(E);const T=[g,b,E];u&&T.splice(1,0,u),A&&T.splice(1,0,A),this.networkControllers=T;const I=[l,p,w,f,m,v,c];this.audioTrackController=this.createController(s.audioTrackController,T);const k=s.audioStreamController;k&&T.push(this.audioStreamController=new k(this,c,S)),this.subtitleTrackController=this.createController(s.subtitleTrackController,T);const _=s.subtitleStreamController;_&&T.push(this.subtititleStreamController=new _(this,c,S)),this.createController(s.timelineController,I),S.emeController=this.emeController=this.createController(s.emeController,I),this.cmcdController=this.createController(s.cmcdController,I),this.latencyController=this.createController(lk,I),this.coreComponents=I,T.push(h);const C=h.onErrorOut;"function"==typeof C&&this.on(Yy.ERROR,C,h),this.on(Yy.MANIFEST_LOADED,g.onManifestLoaded,g)}createController(t,e){if(t){const s=new t(this);return e&&e.push(s),s}return null}on(t,e,s=this){this._emitter.on(t,e,s)}once(t,e,s=this){this._emitter.once(t,e,s)}removeAllListeners(t){this._emitter.removeAllListeners(t)}off(t,e,s=this,i){this._emitter.off(t,e,s,i)}listeners(t){return this._emitter.listeners(t)}emit(t,e,s){return this._emitter.emit(t,e,s)}trigger(t,e){if(this.config.debug)return this.emit(t,t,e);try{return this.emit(t,t,e)}catch(e){if(this.logger.error("An internal error happened while handling event "+t+'. Error message: "'+e.message+'". Here is a stacktrace:',e),!this.triggeringException){this.triggeringException=!0;const s=t===Yy.ERROR;this.trigger(Yy.ERROR,{type:qy.OTHER_ERROR,details:Qy.INTERNAL_EXCEPTION,fatal:s,event:t,error:e}),this.triggeringException=!1}}return!1}listenerCount(t){return this._emitter.listenerCount(t)}destroy(){this.logger.log("destroy"),this.trigger(Yy.DESTROYING,void 0),this.detachMedia(),this.removeAllListeners(),this._autoLevelCapping=-1,this._url=null,this.networkControllers.forEach(t=>t.destroy()),this.networkControllers.length=0,this.coreComponents.forEach(t=>t.destroy()),this.coreComponents.length=0;const t=this.config;t.xhrSetup=t.fetchSetup=void 0,this.userConfig=null}attachMedia(t){if(!t||"media"in t&&!t.media){const e=new Error(`attachMedia failed: invalid argument (${t})`);return void this.trigger(Yy.ERROR,{type:qy.OTHER_ERROR,details:Qy.ATTACH_MEDIA_ERROR,fatal:!0,error:e})}this.logger.log("attachMedia"),this._media&&(this.logger.warn("media must be detached before attaching"),this.detachMedia());const e="media"in t,s=e?t.media:t,i=e?t:{media:s};this._media=s,this.trigger(Yy.MEDIA_ATTACHING,i)}detachMedia(){this.logger.log("detachMedia"),this.trigger(Yy.MEDIA_DETACHING,{}),this._media=null}transferMedia(){this._media=null;const t=this.bufferController.transferMedia();return this.trigger(Yy.MEDIA_DETACHING,{transferMedia:t}),t}loadSource(t){this.stopLoad();const e=this.media,s=this._url,i=this._url=wA.buildAbsoluteURL(self.location.href,t,{alwaysNormalize:!0});this._autoLevelCapping=-1,this._maxHdcpLevel=null,this.logger.log(`loadSource:${i}`),e&&s&&(s!==i||this.bufferController.hasSourceTypes())&&(this.detachMedia(),this.attachMedia(e)),this.trigger(Yy.MANIFEST_LOADING,{url:t})}get url(){return this._url}get hasEnoughToStart(){return this.streamController.hasEnoughToStart}get startPosition(){return this.streamController.startPositionValue}startLoad(t=-1,e){this.logger.log(`startLoad(${t+(e?", <skip seek to start>":"")})`),this.started=!0,this.resumeBuffering();for(let s=0;s<this.networkControllers.length&&(this.networkControllers[s].startLoad(t,e),this.started&&this.networkControllers);s++);}stopLoad(){this.logger.log("stopLoad"),this.started=!1;for(let t=0;t<this.networkControllers.length&&(this.networkControllers[t].stopLoad(),!this.started&&this.networkControllers);t++);}get loadingEnabled(){return this.started}get bufferingEnabled(){return this.streamController.bufferingEnabled}resumeBuffering(){this.bufferingEnabled||(this.logger.log("resume buffering"),this.networkControllers.forEach(t=>{t.resumeBuffering&&t.resumeBuffering()}))}pauseBuffering(){this.bufferingEnabled&&(this.logger.log("pause buffering"),this.networkControllers.forEach(t=>{t.pauseBuffering&&t.pauseBuffering()}))}get inFlightFragments(){const t={[tA]:this.streamController.inFlightFrag};return this.audioStreamController&&(t[eA]=this.audioStreamController.inFlightFrag),this.subtititleStreamController&&(t[sA]=this.subtititleStreamController.inFlightFrag),t}swapAudioCodec(){this.logger.log("swapAudioCodec"),this.streamController.swapAudioCodec()}recoverMediaError(){this.logger.log("recoverMediaError");const t=this._media,e=null==t?void 0:t.currentTime;this.detachMedia(),t&&(this.attachMedia(t),e&&this.startLoad(e))}removeLevel(t){this.levelController.removeLevel(t)}get sessionId(){let t=this._sessionId;return t||(t=this._sessionId=function(){try{return crypto.randomUUID()}catch(t){try{const t=URL.createObjectURL(new Blob),e=t.toString();return URL.revokeObjectURL(t),e.slice(e.lastIndexOf("/")+1)}catch(t){let e=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,t=>{const s=(e+16*Math.random())%16|0;return e=Math.floor(e/16),("x"==t?s:3&s|8).toString(16)})}}}()),t}get levels(){const t=this.levelController.levels;return t||[]}get latestLevelDetails(){return this.streamController.getLevelDetails()||null}get loadLevelObj(){return this.levelController.loadLevelObj}get currentLevel(){return this.streamController.currentLevel}set currentLevel(t){this.logger.log(`set currentLevel:${t}`),this.levelController.manualLevel=t,this.streamController.immediateLevelSwitch()}get nextLevel(){return this.streamController.nextLevel}set nextLevel(t){this.logger.log(`set nextLevel:${t}`),this.levelController.manualLevel=t,this.streamController.nextLevelSwitch()}get loadLevel(){return this.levelController.level}set loadLevel(t){this.logger.log(`set loadLevel:${t}`),this.levelController.manualLevel=t}get nextLoadLevel(){return this.levelController.nextLoadLevel}set nextLoadLevel(t){this.levelController.nextLoadLevel=t}get firstLevel(){return Math.max(this.levelController.firstLevel,this.minAutoLevel)}set firstLevel(t){this.logger.log(`set firstLevel:${t}`),this.levelController.firstLevel=t}get startLevel(){const t=this.levelController.startLevel;return-1===t&&this.abrController.forcedAutoLevel>-1?this.abrController.forcedAutoLevel:t}set startLevel(t){this.logger.log(`set startLevel:${t}`),-1!==t&&(t=Math.max(t,this.minAutoLevel)),this.levelController.startLevel=t}get capLevelToPlayerSize(){return this.config.capLevelToPlayerSize}set capLevelToPlayerSize(t){const e=!!t;e!==this.config.capLevelToPlayerSize&&(e?this.capLevelController.startCapping():(this.capLevelController.stopCapping(),this.autoLevelCapping=-1,this.streamController.nextLevelSwitch()),this.config.capLevelToPlayerSize=e)}get autoLevelCapping(){return this._autoLevelCapping}get bandwidthEstimate(){const{bwEstimator:t}=this.abrController;return t?t.getEstimate():NaN}set bandwidthEstimate(t){this.abrController.resetEstimator(t)}get abrEwmaDefaultEstimate(){const{bwEstimator:t}=this.abrController;return t?t.defaultEstimate:NaN}get ttfbEstimate(){const{bwEstimator:t}=this.abrController;return t?t.getEstimateTTFB():NaN}set autoLevelCapping(t){this._autoLevelCapping!==t&&(this.logger.log(`set autoLevelCapping:${t}`),this._autoLevelCapping=t,this.levelController.checkMaxAutoUpdated())}get maxHdcpLevel(){return this._maxHdcpLevel}set maxHdcpLevel(t){(function(t){return Ib.indexOf(t)>-1})(t)&&this._maxHdcpLevel!==t&&(this._maxHdcpLevel=t,this.levelController.checkMaxAutoUpdated())}get autoLevelEnabled(){return-1===this.levelController.manualLevel}get manualLevel(){return this.levelController.manualLevel}get minAutoLevel(){const{levels:t,config:{minAutoBitrate:e}}=this;if(!t)return 0;const s=t.length;for(let i=0;i<s;i++)if(t[i].maxBitrate>=e)return i;return 0}get maxAutoLevel(){const{levels:t,autoLevelCapping:e,maxHdcpLevel:s}=this;let i;if(i=-1===e&&null!=t&&t.length?t.length-1:e,s)for(let e=i;e--;){const i=t[e].attrs["HDCP-LEVEL"];if(i&&i<=s)return e}return i}get firstAutoLevel(){return this.abrController.firstAutoLevel}get nextAutoLevel(){return this.abrController.nextAutoLevel}set nextAutoLevel(t){this.abrController.nextAutoLevel=t}get playingDate(){return this.streamController.currentProgramDateTime}get mainForwardBufferInfo(){return this.streamController.getMainFwdBufferInfo()}get maxBufferLength(){return this.streamController.maxBufferLength}setAudioOption(t){var e;return(null==(e=this.audioTrackController)?void 0:e.setAudioOption(t))||null}setSubtitleOption(t){var e;return(null==(e=this.subtitleTrackController)?void 0:e.setSubtitleOption(t))||null}get allAudioTracks(){const t=this.audioTrackController;return t?t.allAudioTracks:[]}get audioTracks(){const t=this.audioTrackController;return t?t.audioTracks:[]}get audioTrack(){const t=this.audioTrackController;return t?t.audioTrack:-1}set audioTrack(t){const e=this.audioTrackController;e&&(e.audioTrack=t)}get allSubtitleTracks(){const t=this.subtitleTrackController;return t?t.allSubtitleTracks:[]}get subtitleTracks(){const t=this.subtitleTrackController;return t?t.subtitleTracks:[]}get subtitleTrack(){const t=this.subtitleTrackController;return t?t.subtitleTrack:-1}get media(){return this._media}set subtitleTrack(t){const e=this.subtitleTrackController;e&&(e.subtitleTrack=t)}get subtitleDisplay(){const t=this.subtitleTrackController;return!!t&&t.subtitleDisplay}set subtitleDisplay(t){const e=this.subtitleTrackController;e&&(e.subtitleDisplay=t)}get lowLatencyMode(){return this.config.lowLatencyMode}set lowLatencyMode(t){this.config.lowLatencyMode=t}get liveSyncPosition(){return this.latencyController.liveSyncPosition}get latency(){return this.latencyController.latency}get maxLatency(){return this.latencyController.maxLatency}get targetLatency(){return this.latencyController.targetLatency}set targetLatency(t){this.latencyController.targetLatency=t}get drift(){return this.latencyController.drift}get forceStartLoad(){return this.streamController.forceStartLoad}get pathways(){return this.levelController.pathways}get pathwayPriority(){return this.levelController.pathwayPriority}set pathwayPriority(t){this.levelController.pathwayPriority=t}get bufferedToEnd(){var t;return!(null==(t=this.bufferController)||!t.bufferedToEnd)}get interstitialsManager(){var t;return(null==(t=this.interstitialsController)?void 0:t.interstitialsManager)||null}getMediaDecodingInfo(t,e=this.allAudioTracks){return Tb(t,Ub(e),navigator.mediaCapabilities)}}bk.defaultConfig=void 0;const vk=Ek;function Sk(){const t=["video play","currentTime","video is paused and replay success","56400yaQFpe","FRAG_PARSING_INIT_SEGMENT and video codec is ","_initRenderSize","5001062eCuhEH","metadata","MEDIA_ERROR","MANIFEST_PARSED","originData","canVideoPlay","init hls error ,not support ","mp3","play","_startFpsInterval","1172840XrGixS","style","includes","tracks","video waiting","16045uCedmQ","totalVideoFrames"," and hasAudioVideo is ","fpsInterval","timeStamp","video play error ","isInitInfo","mediaSourceH265NotSupport","FRAG_LOADED","destroy","position","NETWORK_ERROR","videoCodec is not support","demuxStart","init","encTypeCode","videoWidth","_startCanvasRender","bind","LEVELS_UPDATED","uuid","length","isDestroyedOrClosed","FRAG_PARSING_USERDATA","getVideoPlaybackQuality","ERROR","FPS_DROP","debugLog","events","split","loadSource and canVideoPlay and use video src to play","end","player","hlsPrevFrams","MEDIA_ATTACHING","loadSource and use hls decode and listen hlsMediaAttached","ratechange"," and hasVideo is ","hasVideo","videoFrameCallback","BUFFER_CODECS","absolute","_stopCanvasRender","max","bandwidthEstimate","debugWarn","MANIFEST_LOADED","recoverMediaError","_parseVideoCodec","videoStart","samples","autoplay","hlsFps","fatal","BUFFER_EOS","round","requestVideoFrameCallback","7YeRaoQ","$videoElement","_times","loadSource and use hls decode and listen hlsMediaAttached success and next load source","ErrorTypes","BUFFER_FLUSHED","prevBandwidthEstimate","mediaTime","buffered","videoHeight","_stopBandwidthEstimateInterval","handleRender","MEDIA_DETACHED","decodeStart","width","indexOf","isHlsCanVideoPlay","audiovideo","pause","height","h265","video is paused and next try to replay","emitVideoSei","hls","Events","codec","video","initVideoEvents","bound","6oYTsHO","kBps","211800YmHdNa","useCanvasRender","url","catch","paused","_startBandwidthEstimateInterval","removeAttribute","fatal media error encountered, try to recover","isUseVideoPlay","canvasRenderInterval","createElement","push","audio","initVideoPlay","muted","TAG_NAME","bandwidthEstimateInterval","_initHls","36vaUbsd","BUFFER_CREATED","BUFFER_RESET","video canplay","channelCount","canplay","262210FLIGhk","isArray","hasAudio","toFixed","playbackRate","_opt","isEmitSEI","webkitDecodedFrameCount","loadSource","fatal network error encountered, try to recover","388VADVuS","eventsDestroy","KEY_LOADING","MEDIA_ATTACHED","src","updateAudioInfo","supportVideoFrameCallbackHandle","FRAG_PARSING_INIT_SEGMENT and hasAudio is ","hev","debugError","FPS_DROP_LEVEL_CAPPING","h264","getFps","load","FRAG_PARSING_INIT_SEGMENT","_isDestroyed","render","LEVEL_LOADING","_bindEvents","12jUCjTU","AAC","BUFFER_APPENDING","updateVideoInfo","userData","MANIFEST_LOADING","378768rtWWOi","avc","emitError","isSupported","HlsDecoder","initCanvasViewSize","MEDIA_DETACHING","BUFFER_APPENDED","channels","_parseAudioCodec","updateStats","getHasInit","MP3"];return(Sk=function(){return t})()}function Ek(t,e){const s=Sk();return(Ek=function(t,e){return s[t-=269]})(t,e)}!function(t){const e=Ek,s=t();for(;;)try{if(232012===parseInt(e(357))/1+parseInt(e(306))/2*(-parseInt(e(280))/3)+parseInt(e(316))/4*(-parseInt(e(375))/5)+-parseInt(e(341))/6*(-parseInt(e(432))/7)+parseInt(e(370))/8+parseInt(e(300))/9*(parseInt(e(282))/10)+-parseInt(e(360))/11*(-parseInt(e(335))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Sk);class wk extends h{constructor(t){const e=Ek;super(),this[e(407)]=t,this.TAG_NAME=e(345),t[e(311)],this[e(365)]=!1,this.$videoElement=null,this.canvasRenderInterval=null,this.bandwidthEstimateInterval=null,this.fpsInterval=null,this.hlsFps=0,this[e(408)]=0,this[e(381)]=!1,this[e(317)]=[],this[e(322)]=null,this[e(438)]=null,this[e(413)]=!0,this[e(308)]=!0,this[e(279)]={videoFrameCallback:this[e(414)][e(393)](this)},this[e(407)][e(448)]()?(this.$videoElement=this.player[e(277)][e(433)],this[e(365)]=!0):bk[e(344)]()?(this[e(433)]=this[e(407)][e(277)][e(433)],this[e(274)]=new bk({}),this[e(299)](),this[e(334)]()):this.player[e(325)](this.TAG_NAME,e(366)),this[e(331)]=!1,this.player.debugLog(this[e(297)],e(389))}destroy(){return new Promise((t,e)=>{const s=Ek;if(this[s(331)]=!0,this.supportVideoFrameCallbackHandle&&this[s(433)]&&(this.$videoElement.cancelVideoFrameCallback(this.supportVideoFrameCallbackHandle),this[s(322)]=null),this[s(274)]&&(this[s(274)][s(384)](),this.hls=null),this[s(317)][s(396)]&&(this[s(317)].forEach(t=>t()),this.eventsDestroy=[]),this[s(381)]=!1,this[s(417)](),this[s(442)](),this._stopFpsInterval(),this[s(407)][s(311)][s(283)]&&this[s(433)]){this.$videoElement[s(269)]&&(this.$videoElement[s(269)](),this[s(433)].muted=!0),this.$videoElement.currentTime=0,this[s(433)].src&&(this[s(433)][s(320)]="",this[s(433)][s(288)](s(320)));try{this[s(433)][s(329)]()}catch(t){}}this.$videoElement=null,this.prevBandwidthEstimate=null,this[s(427)]=0,this.bound=null,this.player[s(402)](this[s(297)],s(384)),setTimeout(()=>{t()},0)})}checkHlsBufferedDelay(){const t=Ek,e=this.$videoElement;let s=0;const i=e[t(440)];return s=(i[t(396)]?i[t(406)](i[t(396)]-1):0)-e.currentTime,s}[vk(328)](){return this[vk(427)]}[vk(392)](){const t=vk;ji()?this.supportVideoFrameCallbackHandle=this.$videoElement[t(431)](this[t(279)].videoFrameCallback):(this[t(417)](),this[t(291)]=setInterval(()=>{const e=t;this[e(407)][e(277)].render({$video:this[e(433)],ts:parseInt(1e3*this[e(433)][e(355)],10)||0})},40))}[vk(417)](){const t=vk;this.canvasRenderInterval&&(clearInterval(this[t(291)]),this.canvasRenderInterval=null)}[vk(414)](t,e={}){const s=vk;if(this._isDestroyed)return;if(this.player[s(397)]())return void this[s(407)][s(402)](this[s(297)],"videoFrameCallback() player is destroyed");const i=parseInt(1e3*Math[s(418)](e[s(439)],this[s(433)].currentTime),10)||0;this.player[s(351)]({dts:i}),this[s(407)][s(277)][s(332)]({$video:this.$videoElement,ts:i}),this[s(407)].handleRender(),this[s(322)]=this[s(433)][s(431)](this.bound[s(414)])}_startBandwidthEstimateInterval(){this._stopBandwidthEstimateInterval(),this.bandwidthEstimateInterval=setInterval(()=>{const t=Ek;let e=0;this[t(274)]&&this[t(274)][t(419)]&&this[t(438)]!==this[t(274)][t(419)]&&(e=this[t(274)][t(419)]),this.prevBandwidthEstimate=e,this[t(407)].emit(q[t(281)],(e/1e3/8)[t(309)](2)),this.hasVideo&&xi(this[t(308)])&&this[t(407)][t(351)]({vbps:parseInt(e,10)})},1e3)}[vk(442)](){const t=vk;this[t(298)]&&(clearInterval(this[t(298)]),this[t(298)]=null)}[vk(369)](){const t=vk;this[t(417)](),this.fpsInterval=setInterval(()=>{const e=t;if(this[e(433)])if(di(this[e(433)][e(399)])){const t=this.$videoElement.getVideoPlaybackQuality();this.hlsFps=t[e(376)]-this[e(408)],this.hlsPrevFrams=t[e(376)]}else{const t=this.$videoElement[e(313)]||0;this.hlsFps=t-this[e(408)],this.hlsPrevFrams=t}},1e3)}_stopFpsInterval(){const t=vk;this.fpsInterval&&(clearInterval(this[t(378)]),this[t(378)]=null)}[vk(299)](){const t=vk;this[t(407)][t(311)][t(283)]&&(this.$videoElement=document[t(292)](t(277)),this.$videoElement.muted=!0,ws()&&(this[t(433)][t(371)][t(385)]=t(416)),this[t(278)]()),this[t(274)].attachMedia(this[t(433)])}[vk(334)](){const t=vk,e=this[t(407)],{proxy:s}=this.player[t(403)];this[t(274)];const i=this[t(433)],r=ji(),n=s(i,St.timeUpdate,s=>{const i=t;if(this.hls){const t=parseInt(s[i(379)],10);this[i(407)][i(311)][i(283)]&&xi(r)&&e[i(351)]({ts:t,dts:t})}});this[t(317)][t(293)](n),this[t(274)].on(bk[t(275)][t(400)],(e,s)=>{const i=t;if(s[i(428)])switch(s.type){case bk.ErrorTypes[i(386)]:this[i(407)].debugWarn(this[i(297)],i(315)),this[i(274)].startLoad();break;case bk[i(436)][i(362)]:this[i(407)][i(420)](this[i(297)],i(289)),this[i(274)][i(422)]()}}),this.hls.on(bk[t(275)][t(409)],()=>{}),this[t(274)].on(bk[t(275)].MEDIA_ATTACHED,()=>{}),this.hls.on(bk.Events[t(347)],()=>{}),this[t(274)].on(bk[t(275)][t(444)],()=>{}),this[t(274)].on(bk[t(275)][t(302)],()=>{}),this[t(274)].on(bk.Events[t(415)],t=>{}),this[t(274)].on(bk[t(275)][t(301)],()=>{}),this.hls.on(bk[t(275)][t(337)],(t,e)=>{}),this[t(274)].on(bk[t(275)].BUFFER_APPENDED,()=>{}),this[t(274)].on(bk[t(275)][t(429)],()=>{}),this[t(274)].on(bk[t(275)].BUFFER_FLUSHING,()=>{}),this[t(274)].on(bk[t(275)][t(437)],()=>{}),this.hls.on(bk[t(275)][t(340)],()=>{const e=t;this.player[e(402)](this[e(297)],"MANIFEST_LOADING 开始加载playlist m3u8资源")}),this.hls.on(bk[t(275)][t(421)],(e,s)=>{const i=t;this[i(407)][i(402)](this[i(297)],"MANIFEST_LOADED playlist m3u8文件加载完成",s[i(284)])}),this[t(274)].on(bk[t(275)][t(363)],(s,i)=>{const r=t;this[r(407)][r(402)](this[r(297)],"MANIFEST_PARSED playlist m3u8解析完成"),!e[r(434)][r(388)]&&(e[r(434)][r(388)]=os())}),this[t(274)].on(bk.Events[t(394)],function(t,e){}),this[t(274)].on(bk[t(275)][t(333)],()=>{}),this[t(274)].on(bk[t(275)].LEVEL_LOADED,(t,e)=>{}),this.hls.on(bk[t(275)].FRAG_LOADING,()=>{}),this[t(274)].on(bk.Events[t(383)],(s,i)=>{const r=t;!e[r(434)][r(445)]&&(e[r(434)][r(445)]=os())}),this[t(274)].on(bk.Events[t(348)],(s,i)=>{const r=t;!e._times[r(424)]&&(e._times[r(424)]=os(),e.handlePlayToRenderTimes())}),this.hls.on(bk[t(275)].FRAG_DECRYPTED,()=>{}),this[t(274)].on(bk[t(275)][t(318)],()=>{}),this.hls.on(bk[t(275)][t(318)],()=>{}),this[t(274)].on(bk[t(275)][t(401)],t=>{}),this[t(274)].on(bk[t(275)][t(326)],t=>{}),this[t(407)][t(311)][t(312)]&&this.hls.on(bk[t(275)][t(398)],(e,s={})=>{const i=t;Array[i(307)](s.samples)&&s.samples[i(396)]>0&&s[i(425)].forEach(t=>{const e=i;this.player[e(273)]({ts:Math[e(430)](1e3*t.pts),originData:t[e(364)],data:t[e(339)]||t[e(364)],uuid:t[e(395)],type:t.payloadType})})}),this[t(274)].on(bk.Events[t(330)],(e,s)=>{const i=t,r=!!(s&&s.tracks&&s[i(373)].audio),n=!!(s&&s[i(373)]&&s.tracks[i(277)]),o=!!(s&&s.tracks&&s.tracks[i(449)]);if(this.player.debugLog(this[i(297)],i(323)+r+i(412)+n+i(377)+o),this[i(308)]=r,this[i(413)]=n,r&&s[i(373)][i(294)]){let t=s[i(373)][i(294)];const e=t[i(361)]&&t.metadata[i(304)]?t[i(361)][i(304)]:2,r=t[i(276)]||"";this._parseAudioCodec(r,{channels:e})}if(n&&s[i(373)][i(277)]){let t=s[i(373)].video,e=t[i(276)];this[i(423)](e,{metadata:t.metadata})}if(o&&s[i(373)].audiovideo){const t=s.tracks[i(449)][i(276)][i(404)](","),e=t[0],r=t[1];this._parseAudioCodec(e),this[i(423)](r)}})}[vk(350)](t,e={}){const s=vk;this.player.debugLog(this.TAG_NAME,"FRAG_PARSING_INIT_SEGMENT and audio codec is "+t);let i="";t[s(372)](s(367))?i=it[s(353)]:t.includes("mp4a")&&(i=it[s(336)]),i&&this[s(407)][s(294)]&&this[s(407)][s(294)][s(321)]({encTypeCode:i,channels:e[s(349)]||2,sampleRate:44100})}[vk(423)](t,e={}){const s=vk;this[s(407)][s(402)](this[s(297)],s(358)+t);const i={encTypeCode:""};-1!==t[s(447)](s(342))?i.encTypeCode=et[s(327)]:-1!==t[s(447)](s(324))||-1!==t[s(447)]("hvc")?i[s(390)]=et[s(271)]:(this[s(407)][s(402)](this[s(297)],s(387),t),i[s(390)]=et[s(327)]),i[s(390)]===et[s(271)]&&xi(Ms())&&this[s(407)][s(343)](J[s(382)]),e[s(361)]&&(i[s(446)]=e[s(361)][s(446)],i.height=e[s(361)][s(270)]),this[s(407)][s(277)]&&(this.player[s(277)][s(338)](i),this[s(407)][s(277)][s(352)]()&&this[s(407)][s(277)].initCanvasViewSize())}[vk(295)](t){const e=vk;this[e(407)][e(311)][e(283)]&&(this.$videoElement=document[e(292)]("video"),this[e(278)]()),this[e(433)][e(426)]=!0,this[e(433)][e(296)]=!0,this[e(433)][e(320)]=t}[vk(359)](){const t=vk;!this[t(381)]&&(this[t(407)].video[t(338)]({width:this[t(433)][t(391)],height:this[t(433)][t(441)]}),this[t(407)][t(277)][t(346)](),this.isInitInfo=!0)}[vk(278)](){const t=vk,{proxy:e}=this[t(407)].events,s=e(this[t(433)],St[t(305)],()=>{const e=t;this[e(407)][e(402)](this[e(297)],e(303)),this[e(433)][e(368)]().then(()=>{const t=e;this[t(407)].debugLog(this[t(297)],t(354)),this[t(392)](),this[t(359)]()}).catch(t=>{const s=e;this[s(407)][s(420)](this.TAG_NAME,s(380),t)})}),i=e(this.$videoElement,St.waiting,()=>{const e=t;this[e(407)][e(402)](this.TAG_NAME,e(374))}),r=e(this[t(433)],St.timeUpdate,e=>{const s=t,i=parseInt(e.timeStamp,10);this.player[s(351)]({ts:i}),this[s(407)][s(443)](),this[s(433)][s(286)]&&(this[s(407)].debugWarn(this[s(297)],s(272)),this[s(433)].play().then(()=>{const t=s;this[t(407)][t(402)](this[t(297)],t(356))})[s(285)](t=>{const e=s;this.player[e(420)](this.TAG_NAME,"video is paused and replay error ",t)}))}),n=e(this[t(433)],St[t(411)],()=>{const e=t;this[e(407)][e(402)](this[e(297)],"video playback Rate change",this[e(433)]&&this[e(433)][e(310)])});this[t(317)].push(s,i,r,n)}[vk(314)](t){return new Promise((e,s)=>{const i=Ek;this.canVideoPlay?(this[i(407)][i(402)](this[i(297)],i(405),t),this[i(295)](t),this[i(369)](),e()):(this[i(407)][i(402)](this.TAG_NAME,i(410)),this[i(274)].on(bk[i(275)][i(319)],()=>{const s=i;this[s(407)].debugLog(this.TAG_NAME,s(435),t),this.hls[s(314)](t),this[s(287)](),this[s(369)](),e()}))})}[vk(290)](){return this[vk(365)]}}function Tk(t,e){var s=Ik();return(Tk=function(t,e){return s[t-=138]})(t,e)}function Ik(){var t=["69110slGRzp","846CbmPfN","5qvdDmJ","4355274EbdsWD","7AMRpeF","5137408xQDtBu","17850096aQDXVO","793018RzvcIp","9099894iODxLd","2vsLyod","6571616yOlWSZ"];return(Ik=function(){return t})()}!function(t){for(var e=Tk,s=t();;)try{if(830283===parseInt(e(142))/1*(parseInt(e(140))/2)+-parseInt(e(147))/3+parseInt(e(143))/4*(-parseInt(e(146))/5)+-parseInt(e(141))/6*(-parseInt(e(148))/7)+parseInt(e(138))/8+-parseInt(e(145))/9*(parseInt(e(144))/10)+parseInt(e(139))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Ik);const kk=Gk;function _k(){const t=["_onLoad","_reader","arrayBuffer","promise","used","responseType","614444qjPRrR","ontimeout","startTime","stringify","withCredentials","[xhr_loader->],tast :","_withCredentials","_body","endTime","alive","12662270CSCRQP",", SubRange, ",", start,","emit","_retryTimer","_logger",",receivedLength","_config","_loader","isTimeout","_writeIdx","running","_onCancel","REAL_TIME_SPEED","_processTask","url","map","isNaN","Range","append","xhr.onerror.status:","3470965MaeelQ","_transformResponse","_credentials","_range","_currentTask","status","request","onProgress of bad response.body.getReader","8416VbkTQQ",", start","load","value","loaderType","catch","assign","loader","_method","content-length","_currentChunkSizeKB","setRequestHeader","prototype","send","isArray","【fetchLoader,onProgress call】,task,","_onProgress","end ","round","bad response,status:","receiveLen","_url","removeAllListeners","_onReadyStatechange","_startTime","XHR","_timeoutTimer","_responseType","abort","destroy","FetchLoader","【fetchLoader,onProgress extra end】,len,","_priOptions",",statusText,","number","Task","JSON","_canceled","indexOf","fetch",",load sub range, ","timeout","_headers",", writeIdx,","Content-Length","statusText","keys","get","getPrototypeOf","real_time_speed","ARRAY_BUFFER","vid","join",",dataLen,","credentials","range","getAllResponseHeaders","_getHeaders","options","1237806RyKlOH","_request","push","[object Date]","_response","toString","filter","_index",",len,",",index,","_loadChunk","target","450896WwSZOf","arraybuffer","3524046YGZcvc","finally","debugLog","include","headers","message","now","_retryCheckFunc","slice","object","【fetchLoader,onProgress extra start】,size,","_queue","text","onreadystatechange","toISOString","[task request catch err]","trim","then","[xhr.send->] tast,","isFetch","FETCH","index","12FaTxVj","currentTarget","_running","_loadCompleteResolve","_xhr","retryCount","getReader","forEach","call","resolve","_onProcessMinLen","transformRequest","onload","byteLength","reject","[xhr load done->], tast :","_loadCompleteReject","age","_runing","_vid","_startLoad","isSupported","_internalOpen","63XqsHNs","TAG_NAME","GET","body","_timeout","_receivedLength","signal","done","json",", done,","replace","_cache","exec","xhr",", allRange, ","player","length","split","cancel","set","onProgress","_firstRtt","bad network response, status is ","type","method","_retryCount","shift","_aborted","bytes=","priOptions","221bPGMVW","onerror","params","undefined","read","[fetchLoader onProgress end],task,","_abortController","bind","TEXT",", datalen,","[object Object]","_alive","response"];return(_k=function(){return t})()}!function(t){const e=Gk,s=t();for(;;)try{if(541057===-parseInt(e(412))/1*(-parseInt(e(470))/2)+parseInt(e(565))/3*(parseInt(e(431))/4)+-parseInt(e(462))/5+parseInt(e(543))/6+-parseInt(e(588))/7*(-parseInt(e(541))/8)+-parseInt(e(529))/9+-parseInt(e(441))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(_k);const Ck=2097152,Dk={FETCH:kk(509),XHR:kk(601)},Lk={ARRAY_BUFFER:kk(542),TEXT:kk(555),JSON:kk(596)},Rk={REAL_TIME_SPEED:kk(519)},Pk=Object[kk(482)][kk(534)];function xk(t){const e=kk;if(Pk[e(573)](t)!==e(422))return!1;const s=Object[e(518)](t);return null===s||s===Object[e(482)]}function Mk(t){const e=kk;if(!t||null===t[0]||void 0===t[0]||0===t[0]&&(null===t[1]||void 0===t[1]))return;let s=e(410)+t[0]+"-";return t[1]&&(s+=t[1]),s}function Bk(t){const e=kk;return encodeURIComponent(t)[e(598)](/%3A/gi,":")[e(598)](/%24/g,"$")[e(598)](/%2C/gi,",")[e(598)](/%20/g,"+")[e(598)](/%5B/gi,"[")[e(598)](/%5D/gi,"]")}function Fk(t,e){const s=kk;if(!t)return;if(!e)return t;let i;const r=Object.keys(e)[s(457)](t=>{const r=s;if(i=e[t],null!=i)return Array[r(484)](i)?t+="[]":i=[i],i[r(457)](e=>{const s=r;var i;return!function(t){const e=kk;return Pk[e(573)](t)===e(532)}(e)?null!==(i=e)&&typeof i===kk(552)&&(e=JSON[s(434)](e)):e=e[s(557)](),Bk(t)+"="+Bk(e)})[r(522)]("&")})[s(535)](Boolean).join("&");if(r){const e=t[s(508)]("#");-1!==e&&(t=t[s(551)](0,e)),t+=(-1===t[s(508)]("?")?"?":"&")+r}return t}function Uk(t,e,s,i,r,n,o,a,h,l,c){const d=kk;r=null!=r?parseFloat(r):null,i=parseInt(i||"0",10),Number[d(458)](i)&&(i=0);return{data:t,done:e,options:{range:h,vid:l,index:a,contentLength:i,age:r,startTime:n,firstByteTime:o,endTime:Date[d(549)](),priOptions:c},response:s}}function Ok(t,e){return Math[kk(488)](8*t*1e3/e/1024)}class Nk extends Error{[kk(570)]=0;[kk(450)]=!1;[kk(474)]=Dk[kk(563)];startTime=0;[kk(439)]=0;options={};constructor(t,e,s,i){const r=kk;super(i),this.url=t,this[r(468)]=e,this[r(424)]=s}}class Vk extends h{_abortController=null;[kk(496)]=null;[kk(426)]=null;[kk(533)]=null;[kk(409)]=!1;[kk(536)]=-1;[kk(465)]=null;_receivedLength=0;_running=!1;_logger=null;[kk(584)]="";[kk(575)]=0;[kk(453)]=null;[kk(502)]=null;[kk(589)]=kk(500);constructor(t){const e=kk;super(),this[e(603)]=t}[kk(472)]({url:t,vid:e,timeout:s,responseType:i,onProgress:r,index:n,onTimeout:o,onCancel:a,range:h,transformResponse:l,request:c,params:d,logger:u,method:p,headers:f,body:m,mode:g,credentials:y,cache:A,redirect:b,referrer:v,referrerPolicy:S,onProcessMinLen:E,priOptions:w}){const T=kk;this[T(409)]=!1,this[T(575)]=E,this[T(453)]=a,this[T(418)]=typeof AbortController!==T(415)&&new AbortController,this._running=!0,this[T(536)]=n,this[T(465)]=h||[0,0],this[T(584)]=e||t,this._priOptions=w||{};const I={method:p,headers:f,body:m,mode:g,credentials:y,cache:A,redirect:b,referrer:v,referrerPolicy:S,signal:this[T(418)]?.[T(594)]};let k=!1;clearTimeout(this[T(496)]),t=Fk(t,d);const _=Mk(h);_&&(f=c?c.headers:I[T(547)]=I[T(547)]||(Headers?new Headers:{}),Headers&&f instanceof Headers?f[T(460)](T(459),_):f[T(459)]=_),s&&(this[T(496)]=setTimeout(()=>{const e=T;if(k=!0,this[e(606)](),o){const s=new Nk(t,I,null,"timeout");s[e(450)]=!0,o(s,{index:this[e(536)],range:this[e(465)],vid:this._vid,priOptions:this._priOptions})}},s));const C=Date[T(549)]();return new Promise((e,s)=>{const o=T;fetch(c||t,c?void 0:I)[o(560)](async a=>{const c=o;if(clearTimeout(this[c(496)]),this[c(533)]=a,this[c(409)]||!this._running)return;if(l&&(a=l(a,t)||a),!a.ok)throw new Nk(t,I,a,c(404)+a.status);const d=Date.now();let u;if(i===Lk[c(420)])u=await a[c(555)](),this[c(567)]=!1;else if(i===Lk[c(506)])u=await a[c(596)](),this._running=!1;else{if(r)return this[c(574)]=e,this[c(579)]=s,void this._loadChunk(a,r,C,d);{u=await a[c(427)](),u=new Uint8Array(u),this[c(567)]=!1;const t=Date[c(549)]()-C,e=Ok(u[c(578)],t);this[c(444)](Rk[c(454)],{speed:e,len:u.byteLength,time:t,vid:this[c(584)],index:this[c(536)],range:this[c(465)],priOptions:this[c(502)]})}}e(Uk(u,!0,a,a[c(547)].get(c(514)),a.headers[c(517)]("age"),C,d,n,h,this[c(584)],this[c(502)]))})[o(475)](e=>{const i=o;clearTimeout(this[i(496)]),this[i(567)]=!1,this[i(409)]&&!k||((e=e instanceof Nk?e:new Nk(t,I,null,e?.[i(548)]))[i(433)]=C,e[i(439)]=Date[i(549)](),e[i(450)]=k,e[i(528)]={index:this[i(536)],range:this[i(465)],vid:this[i(584)],priOptions:this._priOptions},s(e))})})}async cancel(){const t=kk;if(!this[t(409)]){if(this[t(409)]=!0,this._running=!1,this[t(533)]){try{this[t(426)]&&await this[t(426)][t(606)]()}catch(t){}this[t(533)]=this[t(426)]=null}if(this[t(418)]){try{this[t(418)][t(498)]()}catch(t){}this[t(418)]=null}this[t(453)]&&this[t(453)]({index:this[t(536)],range:this[t(465)],vid:this[t(584)],priOptions:this[t(502)]})}}[kk(539)](t,e,s,i){const r=kk;if(!t[r(591)]||!t.body[r(571)]){this._running=!1;const e=new Nk(t.url,"",t,r(469));return e.options={index:this[r(536)],range:this[r(465)],vid:this[r(584)],priOptions:this[r(502)]},void this[r(579)](e)}this[r(575)]>0&&(this[r(599)]=new Uint8Array(Ck),this[r(451)]=0);const n=this._reader=t[r(591)][r(571)]();let o,a,h;const l=async()=>{const c=r;a=Date[c(549)]();try{o=await n[c(416)](),h=Date[c(549)]()}catch(t){return h=Date.now(),void(!this[c(409)]&&(this[c(567)]=!1,t[c(528)]={index:this._index,range:this._range,vid:this._vid,priOptions:this[c(502)]},this[c(579)](t)))}const d=this[c(465)]?.[c(604)]>0?this[c(465)][0]:0,u=d+this[c(593)];if(this[c(409)])return this[c(567)]=!1,void e(void 0,!1,{range:[u,u],vid:this._vid,index:this._index,startTime:a,endTime:h,st:s,firstByteTime:i,priOptions:this[c(502)]},t);const p=o[c(473)]?o.value[c(578)]:0;let f;if(this[c(593)]+=p,this[c(603)].debugLog(this.TAG_NAME,c(485),this._range,c(443),u,", end,",d+this[c(593)],c(597),o[c(595)]),this._onProcessMinLen>0){if(this[c(451)]+p>=this._onProcessMinLen||o.done)f=new Uint8Array(this._writeIdx+p),f[c(607)](this[c(599)][c(551)](0,this[c(451)]),0),p>0&&f[c(607)](o[c(473)],this[c(451)]),this[c(451)]=0,this[c(603)][c(545)](this[c(589)],"【fetchLoader,onProgress enough】,done,",o[c(595)],c(537),f[c(578)],c(513),this._writeIdx);else if(p>0&&this[c(451)]+p<Ck)this[c(599)][c(607)](o[c(473)],this[c(451)]),this[c(451)]+=p,this.player[c(545)](this[c(589)],"【fetchLoader,onProgress cache】,len,",p,", writeIdx,",this[c(451)]);else if(p>0){const t=new Uint8Array(this[c(451)]+p+2048);this.player[c(545)](this[c(589)],c(553),this[c(451)]+p+2048,c(421),p,", writeIdx,",this._writeIdx),t[c(607)](this[c(599)].slice(0,this[c(451)]),0),p>0&&t[c(607)](o.value,this[c(451)]),this[c(451)]+=p,delete this._cache,this[c(599)]=t,this[c(603)][c(545)](this[c(589)],c(501),p,", writeIdx,",this._writeIdx)}}else f=o[c(473)];if((f&&f[c(578)]>0||o[c(595)])&&e(f,o.done,{range:[this[c(465)][0]+this[c(593)]-(f?f[c(578)]:0),this[c(465)][0]+this._receivedLength],vid:this[c(584)],index:this[c(536)],startTime:a,endTime:h,st:s,firstByteTime:i,priOptions:this[c(502)]},t),o.done){const e=Date[c(549)]()-s,r=Ok(this[c(593)],e);this[c(444)](Rk[c(454)],{speed:r,len:this[c(593)],time:e,vid:this[c(584)],index:this[c(536)],range:this[c(465)],priOptions:this._priOptions}),this[c(567)]=!1,this[c(603)][c(545)](this[c(589)],c(417),this[c(465)],",done,",o[c(595)]),this[c(574)](Uk(o,!0,t,t[c(547)][c(517)]("Content-Length"),t[c(547)][c(517)](c(582)),s,i,this[c(536)],this[c(465)],this[c(584)],this[c(502)]))}else l()};l()}get[kk(490)](){return this._receivedLength}get[kk(452)](){return this[kk(567)]}set[kk(452)](t){this[kk(567)]=t}static[kk(586)](){return!(typeof fetch===kk(415))}}class jk{[kk(589)]=kk(505);constructor(t,e,s){const i=kk;this[i(428)]=function(){const t=kk;let e,s;const i=new Promise((t,i)=>{e=t,s=i});return i[t(429)]=!1,i.resolve=(...s)=>(i[t(429)]=!0,e(...s)),i[t(579)]=(...t)=>(i.used=!0,s(...t)),i}(),this[i(440)]=!!e.onProgress,this._loaderType=t,this[i(603)]=s,this[i(449)]=t===Dk.FETCH&&window.fetch?new Vk(s):new Wk(s),this[i(448)]=e,this._retryCount=0,this[i(445)]=null,this[i(507)]=!1,this[i(550)]=e.retryCheckFunc}[kk(600)](){const t=kk,{retry:e,retryDelay:s,onRetryError:i,transformError:r,...n}=this[t(448)],o=async()=>{const a=t;try{const t=await this[a(449)][a(472)](n);this[a(428)][a(574)](t)}catch(t){if(this[a(449)][a(452)]=!1,this[a(603)][a(545)](this[a(589)],a(558),t),this[a(507)])return;t.loaderType=this._loaderType,t[a(570)]=this[a(407)];let h=t;r&&(h=r(h)||h),i&&this[a(407)]>0&&i(h,this[a(407)],{index:n.index,vid:n[a(521)],range:n[a(525)],priOptions:n[a(411)]}),this[a(407)]++;let l=!0;if(this[a(550)]&&(l=this[a(550)](t)),l&&this._retryCount<=e)return clearTimeout(this[a(445)]),this[a(603)].debugLog(this[a(589)],"[task request setTimeout],retry",this[a(407)],",retry range,",n[a(525)]),void(this[a(445)]=setTimeout(o,s));this[a(428)][a(579)](h)}};return o(),this[t(428)]}async[kk(606)](){const t=kk;return clearTimeout(this[t(445)]),this[t(507)]=!0,this[t(449)][t(452)]=!1,this[t(449)][t(606)]()}get running(){const t=kk;return this._loader&&this[t(449)][t(452)]}get[kk(477)](){return this[kk(449)]}}class Wk extends h{[kk(569)]=null;_aborted=!1;[kk(496)]=null;[kk(465)]=null;[kk(593)]=0;[kk(491)]=null;_onProgress=null;[kk(536)]=-1;[kk(512)]=null;[kk(480)]=384;_timeout=null;[kk(569)]=null;[kk(437)]=null;[kk(494)]=-1;[kk(568)]=null;_loadCompleteReject=null;[kk(583)]=!1;[kk(446)]=!1;[kk(584)]="";[kk(497)];[kk(464)];_method;[kk(463)];[kk(609)];[kk(453)]=null;[kk(502)]=null;[kk(589)]="XhrLoader";constructor(t){const e=kk;super(),this[e(603)]=t}load(t){const e=kk;clearTimeout(this[e(496)]),this[e(465)]=t[e(525)],this[e(486)]=t[e(608)],this._index=t[e(564)],this[e(512)]=t.headers,this[e(437)]=t[e(524)]===e(546)||"same-origin"===t[e(524)],this._body=t[e(591)]||null,t[e(406)]&&(this._method=t.method),this._timeout=t[e(511)]||null,this[e(583)]=!0,this[e(584)]=t[e(521)]||t.url,this._responseType=t[e(430)],this[e(609)]=-1,this._onTimeout=t.onTimeout,this[e(453)]=t.onCancel,this[e(530)]=t[e(468)],this[e(502)]=t[e(411)]||{},this.player[e(545)](this[e(589)],"【xhrLoader task】, range",this[e(465)]),this._url=Fk(t[e(456)],t[e(414)]);const s=Date.now();return new Promise((t,s)=>{const i=e;this[i(568)]=t,this[i(581)]=s,this[i(585)]()})[e(475)](t=>{const i=e;if(clearTimeout(this[i(496)]),this[i(583)]=!1,!this[i(409)])throw(t=t instanceof Nk?t:new Nk(this[i(491)],this[i(530)]))[i(433)]=s,t[i(439)]=Date[i(549)](),t.options={index:this._index,vid:this[i(584)],priOptions:this[i(502)]},t})}[kk(585)](){const t=kk;let e=null;if(this._responseType===Lk.ARRAY_BUFFER&&this._range&&this._range[t(604)]>1)if(this[t(486)]){this[t(609)]=-1;const s=1024*this[t(480)],i=this._range[0]+this[t(593)];let r=this[t(465)][1];s<this._range[1]-i&&(r=i+s),e=[i,r],this[t(603)][t(545)](this[t(589)],t(436),this._range,t(442),e)}else e=this[t(465)],this[t(603)][t(545)](this[t(589)],"[xhr_loader->],tast :",this[t(465)],t(602),e);this[t(587)](e)}[kk(587)](t){const e=kk;try{this[e(494)]=Date.now();const s=this._xhr=new XMLHttpRequest;s.open(this[e(478)]||"GET",this[e(491)],!0),s[e(430)]=this[e(497)],this[e(592)]&&(s.timeout=this[e(592)]),s[e(435)]=this[e(437)],s[e(577)]=this[e(425)][e(419)](this),s[e(556)]=this[e(493)][e(419)](this),s[e(413)]=t=>{const s=e;this[s(567)]=!1;const i=new Nk(this._url,this[s(530)],t?.[s(566)]?.response,s(461)+t?.currentTarget?.[s(467)]+s(503)+t?.[s(566)]?.[s(515)]);i[s(528)]={index:this[s(536)],range:this[s(465)],vid:this[s(584)],priOptions:this[s(502)]},this[s(581)](i)},s[e(432)]=t=>{const s=e;this[s(606)]();const i=new Nk(this._url,this._request,{status:408},s(511));this._onTimeout&&(i[s(450)]=!0,this._onTimeout(i,{index:this[s(536)],range:this[s(465)],vid:this[s(584)],priOptions:this._priOptions})),i[s(528)]={index:this[s(536)],range:this._range,vid:this[s(584)],priOptions:this[s(502)]},this[s(581)](i)};const i=this[e(512)]||{},r=Mk(t);r&&(i.Range=r),i&&Object[e(516)](i)[e(572)](t=>{s[e(481)](t,i[t])}),this.player.debugLog(this[e(589)],e(561),this[e(465)],e(510),t),s[e(483)](this[e(438)])}catch(s){s[e(528)]={index:this._index,range:t,vid:this[e(584)],priOptions:this[e(502)]},this[e(581)](s)}}[kk(493)](t){const e=kk;2===t[e(540)].readyState&&this[e(609)]<0&&(this._firstRtt=Date[e(549)]())}[kk(425)](t){const e=kk,s=t[e(540)][e(467)];if(s<200||s>299){const i=new Nk(this[e(491)],null,{...t[e(540)][e(424)],status:s},e(489)+s);return i[e(528)]={index:this._index,range:this[e(465)],vid:this[e(584)],priOptions:this._priOptions},this[e(581)](i)}let i,r=null,n=!1;const o=this[e(465)]?.length>0?this._range[0]:0;if(this[e(497)]===Lk[e(520)]){const s=new Uint8Array(t[e(540)].response);if(i=o+this[e(593)],s&&s[e(578)]>0){this._receivedLength+=s.byteLength;const t=Date.now()-this[e(494)],r=Ok(this[e(593)],t);this[e(444)](Rk[e(454)],{speed:r,len:this[e(593)],time:t,vid:this[e(584)],index:this[e(536)],range:[i,o+this[e(593)]],priOptions:this[e(502)]})}r=s,n=!(this[e(465)]?.[e(604)]>1&&this._range[1]&&this[e(593)]<this[e(465)][1]-this._range[0]),this[e(603)][e(545)](this[e(589)],e(580),this[e(465)],e(471),i,e(487),o+this[e(593)],e(523),s?s.byteLength:0,e(447),this[e(593)],e(538),this[e(536)],e(597),n)}else n=!0,r=t[e(540)].response;let a={ok:s>=200&&s<300,status:s,statusText:this._xhr[e(515)],url:this[e(569)].responseURL,headers:this[e(527)](this[e(569)]),body:this[e(569)].response};this[e(463)]&&(a=this[e(463)](a,this[e(491)])||a),this[e(486)]&&this._onProgress(r,n,{index:this[e(536)],vid:this[e(584)],range:[i,o+this._receivedLength],startTime:this[e(494)],endTime:Date[e(549)](),priOptions:this[e(502)]},a),n?(this._runing=!1,this._loadCompleteResolve&&this[e(568)](Uk(this._onProgress?null:r,n,a,a[e(547)][e(479)],a.headers.age,this[e(494)],this._firstRtt,this[e(536)],this[e(465)],this[e(584)],this[e(502)]))):this._startLoad()}[kk(606)](){const t=kk;if(!this._aborted)return this[t(409)]=!0,this[t(583)]=!1,super[t(492)](),this[t(453)]&&this[t(453)]({index:this[t(536)],range:this[t(465)],vid:this._vid,priOptions:this[t(502)]}),this[t(569)]?this[t(569)][t(498)]():void 0}static isSupported(){return typeof XMLHttpRequest!==kk(415)}get[kk(490)](){return this[kk(593)]}get[kk(452)](){return this._running}set running(t){this[kk(567)]=t}_getHeaders(t){const e=kk,s=t[e(526)]()[e(559)]()[e(605)]("\r\n"),i={};for(const t of s){const s=t[e(605)](": ");i[s[0].toLowerCase()]=s[e(551)](1)[e(522)](": ")}return i}}function Gk(t,e){const s=_k();return(Gk=function(t,e){return s[t-=404]})(t,e)}class zk extends h{[kk(405)]=Dk[kk(563)];_queue=[];[kk(423)]=[];[kk(466)]=null;_config;constructor(t,e){const s=kk;super(),this[s(603)]=e,this[s(448)]=function(t){const e=kk;return{loaderType:Dk[e(563)],retry:0,retryDelay:0,timeout:0,request:null,onTimeout:void 0,onProgress:void 0,onRetryError:void 0,transformRequest:void 0,transformResponse:void 0,transformError:void 0,responseType:Lk[e(420)],range:void 0,url:"",params:void 0,method:e(590),headers:{},body:void 0,mode:void 0,credentials:void 0,cache:void 0,redirect:void 0,referrer:void 0,referrerPolicy:void 0,integrity:void 0,onProcessMinLen:0,...t}}(t),(this[s(448)][s(474)]===Dk[s(495)]||!Vk.isSupported())&&(this.type=Dk[s(495)])}[kk(499)](){const t=kk;this[t(554)]=[],this[t(423)]=[],this[t(466)]=null}[kk(562)](){const t=kk;return this.type===Dk[t(563)]}static isFetchSupport(){return Vk[kk(586)]()}[kk(472)](t,e={}){const s=kk;"string"!=typeof t&&t?e=t:e[s(456)]=t||e[s(456)]||this[s(448)][s(456)],(e=Object[s(476)]({},this[s(448)],e))[s(414)]&&(e[s(414)]=Object[s(476)]({},e[s(414)])),e.headers&&xk(e.headers)&&(e[s(547)]=Object[s(476)]({},e[s(547)])),e.body&&xk(e.body)&&(e[s(591)]=Object.assign({},e.body)),e[s(576)]&&(e=e[s(576)](e)||e);const i=new jk(this[s(405)],e,this.player);return i[s(477)].on(Rk[s(454)],t=>{const e=s;this[e(444)](Rk[e(454)],t)}),this[s(554)][s(531)](i),1===this[s(554)].length&&(!this[s(466)]||!this[s(466)][s(452)])&&this[s(455)](),i[s(428)]}async[kk(606)](){const t=kk,e=this[t(554)][t(457)](t=>t.cancel()).concat(this[t(423)][t(457)](e=>e[t(606)]()));this[t(466)]&&e.push(this[t(466)][t(606)]()),this[t(554)]=[],this[t(423)]=[],await Promise.all(e),await function(t=0){return new Promise(e=>setTimeout(e,t))}()}[kk(455)](){const t=kk;if(this[t(466)]=this[t(554)][t(408)](),!this._currentTask)return;this[t(466)][t(440)]&&this[t(423)][t(531)](this[t(466)]);const e=this[t(466)][t(600)]()[t(475)](t=>{});e&&"function"==typeof e.finally&&e[t(544)](()=>{const e=t;this._currentTask?.alive&&this[e(423)]?.[e(604)]>0&&(this[e(423)]=this[e(423)][e(535)](t=>t&&t!==this._currentTask)),this[e(455)]()})}}const Hk=Qk;function Kk(){const t=["network","network_timeout","manifest","originError","message","5830KpCPdZ","6tNKvTF","NETWORK_TIMEOUT","26004NqKDbw","hls","949WheZRu","3EzUaNF","4166421WhdHnJ","errorMessage","33710DqJXDS","status","response","176376xPaBZE","29480QijawR","324851bgfOWm","5680076oGZoHo","978TGDVeN","NETWORK","other","2529rScxAU","isTimeout"];return(Kk=function(){return t})()}!function(t){const e=Qk,s=t();for(;;)try{if(798872===parseInt(e(133))/1*(-parseInt(e(146))/2)+-parseInt(e(151))/3*(-parseInt(e(134))/4)+-parseInt(e(154))/5*(-parseInt(e(135))/6)+parseInt(e(152))/7+-parseInt(e(132))/8*(parseInt(e(138))/9)+parseInt(e(145))/10*(-parseInt(e(148))/11)+parseInt(e(131))/12*(parseInt(e(150))/13))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Kk);const qk={NETWORK:Hk(140),NETWORK_TIMEOUT:Hk(141),NETWORK_FORBIDDEN:"network_forbidden",OTHER:Hk(137),MANIFEST:Hk(142),HLS:Hk(149),DEMUX:"demux"};function Qk(t,e){const s=Kk();return(Qk=function(t,e){return s[t-=131]})(t,e)}class Yk extends Error{constructor(t,e,s,i,r){const n=Hk;super(r||s?.[n(144)]),this.errorType=t===qk[n(147)]?qk[n(136)]:t,this[n(143)]=s,this.ext=i,this[n(153)]=this.message}static create(t,e,s,i,r){return t instanceof Yk?t:(t instanceof Error&&(s=t,t=""),t||(t=qk.OTHER),new Yk(t,e,s,i,r))}static network(t){const e=Hk;return new Yk(t?.[e(139)]?qk[e(147)]:qk[e(136)],null,t instanceof Error?t:null,{url:t?.url,response:t?.[e(156)],httpCode:t?.[e(156)]?.[e(155)]})}}function Jk(t,e){const s=$k();return(Jk=function(t,e){return s[t-=336]})(t,e)}const Xk=Jk;function $k(){const t=["SAMPLE-AES","PLAYREADY","group","6633830gJdaYx","channels","default","partIndex","length","autoSelect","isSegmentEncrypted","canBlockReload","endSN","CLOSED-CAPTIONS","searchParams","indexOf","version","2903220ElCuDV","textCodec","isMaster","endCC","closedCaptionsStream","URL","width","skippedSegments","keyFormatVersions","_HLS_msn","Audio","com.widevine","SAMPLE-AES-CTR","231046cwCLoJ","targetDuration","height","dataTime","_HLS_skip","addDirectives","segments","partHoldBack","push","38241rTJGeu","title","name","end","lowLatency","method","concat","com.microsoft.playready","isSupported","start","set","1038501YYCgCz","keyFormat","msn","ClosedCaptions","isArray","startCC","toString","440IdglUi","split","part","setByteRange","canSkipUntil","independent","clone","byteRange","hasAudio","2nLIsvH","setTrackExist","key","mediaType","VIDEO","live","initSegment","435RguCLR","href","bitrate","duration","audioCodec","url","dateRanges","SUBTITLE","audioGroup","videoCodec","4441269aTeNqC","_HLS_part","hasVideo","CLEAR_KEY","subtitleStreams","28540ukjULE","com.widevine.alpha","skip","isLast","parentUrl","isValidKeySystem","FAIRPLAY"];return($k=function(){return t})()}!function(t){const e=Jk,s=t();for(;;)try{if(322623===-parseInt(e(372))/1*(parseInt(e(336))/2)+-parseInt(e(356))/3+parseInt(e(394))/4*(parseInt(e(379))/5)+parseInt(e(417))/6+-parseInt(e(389))/7+-parseInt(e(363))/8*(parseInt(e(345))/9)+parseInt(e(404))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}($k);class Zk{constructor(){const t=Jk;this.streams=[],this.version=0,this[t(419)]=!0}}const t_={Audio:"AUDIO",Video:Xk(376),SubTitle:Xk(386),ClosedCaptions:Xk(413)},e_={CLEAR_KEY:"org.w3.clearkey",FAIRPLAY:["urn:uuid:94ce86fb-07ff-4f43-adb8-93d2fa968ca2","com.apple.streamingkeydelivery"],WIDEVINE:["urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed",Xk(395),Xk(428)],PLAYREADY:["urn:uuid:9a04f079-9840-4286-ab92-e65be0885f95",Xk(352)]};function s_(t){const e=Xk;let s=[];for(let i=0;i<t[e(408)];i++)Array[e(360)](t[i])?s=s[e(351)](s_(t[i])):s[e(344)](t[i]);return s}class i_{constructor(){const t=Xk;this.id=0,this.url="",this[t(406)]=!1,this[t(409)]=!1,this.forced=!1,this[t(403)]="",this[t(347)]="",this.lang="",this[t(342)]=[],this[t(412)]=0}}class r_ extends i_{constructor(){const t=Xk;super(),this[t(375)]=t_[t(427)],this[t(405)]=0}}class n_ extends i_{constructor(){const t=Xk;super(),this[t(375)]=t_.SubTitle}}class o_{constructor(){const t=Xk;this.id=0,this[t(381)]=0,this[t(423)]=0,this[t(338)]=0,this[t(347)]="",this[t(384)]="",this[t(383)]="",this[t(388)]="",this[t(418)]="",this[t(387)]="",this.audioStreams=[],this[t(393)]=[],this[t(421)]=[]}}class a_{constructor(){const t=Xk;this[t(416)]=0,this[t(384)]="",this.type="",this[t(361)]=0,this[t(420)]=0,this.startSN=0,this[t(412)]=0,this.totalDuration=0,this[t(337)]=0,this.partTargetDuration=0,this[t(367)]=0,this.canSkipDateRanges=!1,this[t(424)]=0,this[t(411)]=!1,this[t(343)]=0,this[t(377)]=!0,this[t(349)]=!1,this.endPartIndex=0,this[t(342)]=[],this[t(385)]={}}}class h_{constructor(t){const e=Xk;this.sn=0,this.cc=0,this.url="",this.parentUrl="",this[e(346)]="",this[e(354)]=0,this[e(382)]=0,this[e(339)]="",this[e(374)]=null,this[e(370)]=null,this.isInitSegment=!1,this[e(378)]=null,this[e(397)]=!1,this[e(371)]=!1,this[e(391)]=!1,this[e(368)]=!1,this[e(407)]=0,this[e(398)]=t}get[Xk(348)](){const t=Xk;return this.start+this[t(382)]}[Xk(373)](t,e){const s=Xk;this[s(391)]=t,this[s(371)]=e}[Xk(366)](t,e){const s=Xk;this[s(370)]=[0];const i=t[s(364)]("@");1===i[s(408)]&&e&&e[s(370)]?(this[s(370)][0]=e[s(370)][1]||0,this[s(370)][0]&&(this[s(370)][0]+=1)):this[s(370)][0]=parseInt(i[1]),this[s(370)][1]=this.byteRange[0]+parseInt(i[0])-1}}class l_{constructor(t){const e=Xk;this[e(350)]="",this[e(384)]="",this.iv=null,this[e(357)]="",this[e(425)]="",t instanceof l_&&(this[e(350)]=t[e(350)],this[e(384)]=t[e(384)],this[e(357)]=t[e(357)],this[e(425)]=t.keyFormatVersions,t.iv&&(this.iv=new Uint8Array(t.iv)))}[Xk(369)](t){const e=new l_(this);return null!=t&&e.setIVFromSN(t),e}setIVFromSN(t){const e=Xk;if(!this.iv&&"AES-128"===this[e(350)]&&"number"==typeof t&&this[e(384)]){this.iv=new Uint8Array(16);for(let e=12;e<16;e++)this.iv[e]=t>>8*(15-e)&255}}[Xk(410)](){const{method:t}=this;return"AES-128"===t}[Xk(399)](){const t=Xk;if(!(s_([e_[t(392)],e_[t(400)],e_.WIDEVINE,e_[t(402)]])[t(415)](this[t(357)])>-1))return!1;return!!([t(401),"SAMPLE-AES-CENC",t(429)][t(415)](this.method)>-1)}[Xk(353)](){const t=Xk;return!!this[t(350)]&&(!!this.isSegmentEncrypted()||!!this[t(399)]())}}class c_{constructor(t,e,s){const i=Xk;this[i(358)]=t,this[i(365)]=e,this.skip=s}[Xk(341)](t){const e=Xk,s=new(self[e(422)])(t);return void 0!==this[e(358)]&&s.searchParams[e(355)](e(426),this[e(358)].toString()),this[e(365)]&&s[e(414)][e(355)](e(390),this[e(365)][e(362)]()),this[e(396)]&&s[e(414)].set(e(340),this[e(396)]),s[e(380)]}}function d_(){const t=["exec","X-ASSET-LIST","_startDate","6330jsihUA","CUE","1098gftxKY","toLowerCase","filter","post","42070249BFkDUa","EXT-X-","test","2348rfvrxS","X-CUE","12KMEzWZ","map","X-ASSET-URI","isFinite","trim","END_ON_NEXT","split","132xBagNl","match","766430BoakNs","8KETeDG","prototype","replace","getTime","CLASS","1380210tViDTu","12jYmcon","pre","418lTZsoO","130855ZpJsOW","2060109gtKHGv","_endDate","DURATION","length","call"];return(d_=function(){return t})()}!function(t){const e=g_,s=t();for(;;)try{if(780228===parseInt(e(246))/1*(-parseInt(e(239))/2)+-parseInt(e(224))/3*(parseInt(e(225))/4)+parseInt(e(228))/5*(parseInt(e(255))/6)+-parseInt(e(257))/7+-parseInt(e(258))/8*(parseInt(e(229))/9)+-parseInt(e(237))/10*(parseInt(e(227))/11)+-parseInt(e(248))/12*(-parseInt(e(243))/13))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(d_);const u_=/^#(EXT[^:]*)(?::(.*))?$/,p_=/([^=]+)=(?:"([^"]*)"|([^",]*))(?:,|$)/g,f_=/^(?:[a-zA-Z0-9+\-.]+:)?\/\//,m_=/^((?:[a-zA-Z0-9+\-.]+:)?\/\/[^/?#]*)?([^?#]*\/)?/;function g_(t,e){const s=d_();return(g_=function(t,e){return s[t-=223]})(t,e)}function y_(t){const e=g_,s=t[e(256)](u_);if(s&&s[1])return[s[1][e(260)](e(244),""),s[2]]}function A_(t){const e=g_,s={};let i=p_[e(234)](t);for(;i;)s[i[1]]=i[2]||i[3],i=p_[e(234)](t);return s}function b_(t,e){const s=g_;if(!e||!t||f_[s(245)](t))return t;const i=m_[s(234)](e);return i?"/"===t[0]?i[1]+t:i[1]+i[2]+t:t}const v_={audio:[/^mp4a/,/^vorbis$/,/^opus$/,/^flac$/,/^[ae]c-3$/],video:[/^avc/,/^hev/,/^hvc/,/^vp0?[89]/,/^av1$/],text:[/^vtt$/,/^wvtt/,/^stpp/]};function S_(t,e){const s=g_,i=v_[t];if(i&&e&&e[s(232)])for(let t=0;t<i.length;t++)for(let r=0;r<e[s(232)];r++)if(i[t][s(245)](e[r]))return e[r]}function E_(t,e){const s=g_;let i;if(e)for(const r in e)if(Object[s(259)].hasOwnProperty[s(233)](e,r)&&t[r]!==e[r]){i=r;break}let r=null;t[s(231)]&&(r=parseFloat(t[s(231)]),Number[s(251)](r)?t._endDate&&(r=(t[s(230)][s(261)]()-t[s(236)][s(261)]())/1e3):r=null);const n=function(t,e){const s=g_;return(t?t[s(254)](/[ ,]+/):[]).reduce((t,e)=>(t[e[s(240)]()]=!0,t),e)}(t[s(238)]||t[s(247)],{pre:!1,post:!1,once:!1});return!!t.ID&&!i&&Number[s(251)](t[s(236)][s(261)]())&&(null===r||r>=0)&&(!("YES"===t[s(253)])||!!t[s(223)])&&(!t[s(238)]||!n[s(226)]&&!n[s(242)]||n.pre!==n[s(242)])&&(!("com.apple.hls.interstitial"===t[s(223)])||s(250)in t||s(235)in t)}function w_(t,e){const s=T_();return(w_=function(t,e){return s[t-=110]})(t,e)}function T_(){const t=["1wYRMTe","405090HJJTrV","streams","audio","length","filter","lang","2418084lacZHQ","AUDIO","BANDWIDTH","height","13431sARkXm","SUBTITLES","1871969NbIebF","name","AVERAGE-BANDWIDTH","width","group","channels","text","LANGUAGE","isNaN","forEach","split","subtitleGroup","8XmGwXd","20NROIJV","url","push","DEFAULT","CODECS","YES","version","STREAM-INF","131092YbjgPQ","AUTOSELECT","CHANNELS","4387866OOgoAY","audioGroup","20MJkdTK","video","NAME","TYPE","18QuQKGZ","RESOLUTION","428670nNWvvb","videoCodec","audioStreams","456MVOyFW"];return(T_=function(){return t})()}function I_(){const t=["targetDuration","7ZjwMlG","slice","6233405TVXWpP","PART-HOLD-BACK","SERVER-CONTROL","START-DATE","start","CAN-SKIP-DATERANGES","24789488auOsjm","1595048CcBZOi","push","initSegment","isSupported","KEYFORMATVERSIONS","split","duration","SKIP","filter","YES","NONE","DISCONTINUITY","endCC","isInitSegment","_endDate","VERSION","692038LWzGNe","_startDate","DURATION","nextIndex","setByteRange","endSN","KEY","keyFormat","independent","key","startSN","INDEPENDENT","nextSN","PRELOAD-HINT","partHoldBack","DISCONTINUITY-SEQUENCE","METHOD","PART","canBlockReload","TARGETDURATION","CAN-SKIP-UNTIL","URI","title","partIndex","1395394rjhrsB","3123126UmdUom","segments","DATERANGE","version","BYTERANGE","END_DATE",".ts","canSkipDateRanges","type","dataTime","encrypt ","KEYFORMAT","MEDIA-SEQUENCE","TYPE","clone","length","toUpperCase","endPartIndex","canSkipUntil","SKIPPED-SEGMENTS","PART-TARGET","lowLatency","partTargetDuration","live","dateRanges","skippedSegments","MAX_SAFE_INTEGER","url","identity","3036237xkhWyy"];return(I_=function(){return t})()}function k_(t,e){const s=I_();return(k_=function(t,e){return s[t-=378]})(t,e)}!function(t){const e=w_,s=t();for(;;)try{if(392370===-parseInt(e(124))/1*(parseInt(e(125))/2)+-parseInt(e(135))/3*(-parseInt(e(150))/4)+parseInt(e(120))/5*(parseInt(e(118))/6)+parseInt(e(112))/7*(parseInt(e(149))/8)+-parseInt(e(131))/9+-parseInt(e(114))/10*(-parseInt(e(137))/11)+parseInt(e(123))/12*(-parseInt(e(158))/13))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(T_),function(t){const e=k_,s=t();for(;;)try{if(723826===-parseInt(e(417))/1+parseInt(e(441))/2+-parseInt(e(390))/3+parseInt(e(401))/4+-parseInt(e(394))/5+-parseInt(e(442))/6+-parseInt(e(392))/7*(-parseInt(e(400))/8))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(I_);const __=C_;function C_(t,e){const s=D_();return(C_=function(t,e){return s[t-=171]})(t,e)}function D_(){const t=["3587334RembOC","Invalid m3u8 file","10tDrxzw","64NOWKtZ","13513620WpYHcl","#EXTINF:","isMediaPlaylist","14GSFkYx","2578180fBmILs","27830000ESmRNm","12IhwnRo","parse","306981MiJVhg","1200696Ayqjsj","#EXTM3U","176484mgduKr","includes"];return(D_=function(){return t})()}!function(t){const e=C_,s=t();for(;;)try{if(699526===parseInt(e(186))/1*(-parseInt(e(174))/2)+parseInt(e(172))/3+parseInt(e(184))/4*(-parseInt(e(178))/5)+-parseInt(e(176))/6*(-parseInt(e(183))/7)+parseInt(e(179))/8*(parseInt(e(171))/9)+-parseInt(e(180))/10+parseInt(e(185))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(D_);class L_{static[__(187)](t="",e,s){const i=__;if(!t[i(175)](i(173)))throw new Error(i(177));const r=function(t){const e=g_;return t[e(254)](/[\r\n]/)[e(249)](t=>t[e(252)]())[e(241)](Boolean)}(t);return L_[i(182)](t)?function(t,e,s){const i=k_,r=new a_;r[i(388)]=e;let n,o=new h_(e),a=null,h=null,l=0,c=0,d=0,u=0,p=!1,f=0;for(;n=t[u++];){if("#"!==n[0]){if(r.lowLatency){c++;continue}o.sn=c,o.cc=d,o.url=b_(n,e),h&&(o[i(426)]=h.clone(c)),a&&(o[i(403)]=a),r.segments.push(o),o=new h_(e),c++;continue}const t=y_(n);if(!t)continue;const[u,m]=t;switch(u){case i(416):r[i(445)]=parseInt(m);break;case"PLAYLIST-TYPE":r[i(450)]=m?.[i(458)]();break;case i(436):r[i(391)]=parseFloat(m);break;case"PART-INF":{s&&(r[i(382)]=!0);const t=A_(m);t["PART-TARGET"]&&(r[i(383)]=parseFloat(t[i(381)]))}break;case i(396):{const t=A_(m);r[i(435)]="YES"===t["CAN-BLOCK-RELOAD"],r[i(431)]=parseFloat(t[i(395)]||0),r.canSkipUntil=parseFloat(t[i(437)]||0),r[i(449)]=r[i(379)]>0&&t[i(399)]===i(410)}break;case"ENDLIST":p=!0;break;case i(454):c=r[i(427)]=parseInt(m);break;case i(432):d=r.startCC=parseInt(m);break;case i(412):d++;break;case i(446):o[i(421)](m,r[i(443)][r.segments.length-1]);break;case i(434):{if(!r[i(382)])break;const t=A_(m);o[i(407)]=parseFloat(t[i(419)]),o[i(425)]="YES"===t[i(428)],o.sn=c,o.cc=d,o.partIndex=f,o[i(398)]=l,o[i(407)]=parseFloat(t[i(419)]),l+=o[i(407)],o[i(388)]=b_(t[i(438)],e),h&&(o[i(426)]=h[i(456)](c)),a&&(o[i(403)]=a),r[i(443)][i(402)](o),o=new h_(e),f++}break;case i(430):{const t=A_(m);if(r.preloadHint=t,t[i(455)]===i(434)&&t[i(438)]){const e=t[i(438)][i(406)](i(448))[0][i(406)]("-");r[i(429)]=e[3],r[i(420)]=e[e[i(457)]-1]}}break;case"PROGRAM-DATE-TIME":o[i(451)]=m;break;case"EXTINF":{if(r.lowLatency){f=0;break}const[t,e]=m[i(406)](",");o[i(398)]=l,o[i(407)]=parseFloat(t),l+=o[i(407)],o[i(439)]=e}break;case i(423):{const t=A_(m);if(t[i(433)]===i(411)){h=null;break}if(h=new l_,h.method=t[i(433)],h[i(388)]=/^blob:/.test(t[i(438)])?t[i(438)]:b_(t.URI,e),h[i(424)]=t[i(453)]||i(389),h.keyFormatVersions=t[i(405)],!h[i(404)]())throw new Error(i(452)+t[i(433)]+"/"+t[i(453)]+" is not supported");if(t.IV){let e=t.IV[i(393)](2);e=(1&e[i(457)]?"0":"")+e,h.iv=new Uint8Array(e[i(457)]/2);for(let t=0,s=e[i(457)]/2;t<s;t++)h.iv[t]=parseInt(e[i(393)](2*t,2*t+2),16)}}break;case"MAP":{const t=A_(m);o[i(388)]=b_(t[i(438)],e),t[i(446)]&&o[i(421)](t.BYTERANGE),o[i(414)]=!0,o.sn=0,h&&(o.key=h.clone(0)),a=o,o=new h_(e)}break;case i(408):{const t=A_(m),e=parseInt(t[i(380)],10);e<=Number[i(387)]&&(r[i(386)]+=e,c+=e)}break;case i(444):{const t=A_(m),e=r[i(385)][t.ID];t[i(418)]=e?e[i(418)]:new Date(t[i(397)]);const s=e?.[i(415)]||new Date(t[i(447)]);Number.isFinite(s)&&(t[i(415)]=s),(E_(t,e)||r.skippedSegments)&&(r[i(385)][t.ID]=t)}}}r[i(443)]=r[i(443)][i(409)](t=>0!==t[i(407)]);const m=r.segments[r[i(443)][i(457)]-1];return m&&(p&&(m.isLast=!0),r[i(422)]=m.sn,r[i(378)]=m[i(440)]),p&&(r[i(384)]=!1),r.totalDuration=l,r[i(413)]=d,r}(r,e,s):function(t,e){const s=w_,i=new Zk;let r,n=0;const o=[],a=[];for(;r=t[n++];){const h=y_(r);if(!h)continue;const[l,c]=h;if("VERSION"===l)i[s(156)]=parseInt(c);else if("MEDIA"===l&&c){const t=A_(c);let i;switch(t[s(117)]){case s(132):i=new r_;break;case s(136):i=new n_;break;default:i=new i_}i[s(151)]=b_(t.URI,e),i.default="YES"===t[s(153)],i.autoSelect=t[s(110)]===s(155),i[s(141)]=t["GROUP-ID"],i[s(138)]=t[s(116)],i[s(130)]=t[s(144)],t[s(111)]&&(i[s(142)]=Number(t[s(111)][s(147)]("/")[0]),Number[s(145)](i[s(142)])&&(i[s(142)]=0)),t[s(117)]===s(132)&&t.URI&&o[s(152)](i),t.TYPE===s(136)&&a[s(152)](i)}else if(l===s(157)&&c){const r=new o_,o=A_(c);if(r.bitrate=parseInt(o[s(139)]||o[s(133)]),r[s(138)]=o.NAME,r[s(151)]=b_(t[n++],e),o[s(119)]){const[t,e]=o[s(119)][s(147)]("x");r[s(140)]=parseInt(t),r[s(134)]=parseInt(e)}if(o[s(154)]){const t=o[s(154)].split(/[ ,]+/).filter(Boolean);r[s(121)]=S_(s(115),t),r.audioCodec=S_(s(127),t),r.textCodec=S_(s(143),t)}r[s(113)]=o[s(132)],r.subtitleGroup=o.SUBTITLES,i[s(126)][s(152)](r)}}return i[s(126)][s(146)]((t,e)=>{t.id=e}),o[s(128)]&&(o[s(146)]((t,e)=>{t.id=e}),i[s(126)][s(146)](t=>{const e=s;t.audioGroup&&(t[e(122)]=o[e(129)](s=>s[e(141)]===t.audioGroup))})),a.length&&(a.forEach((t,e)=>{t.id=e}),i.streams[s(146)](t=>{const e=s;t[e(148)]&&(t.subtitleStreams=a.filter(s=>s[e(141)]===t[e(148)]))})),i}(r,e)}static[__(182)](t){const e=__;return t[e(175)](e(181))||t[e(175)]("#EXT-X-TARGETDURATION:")}}const R_=P_;function P_(t,e){const s=M_();return(P_=function(t,e){return s[t-=125]})(t,e)}!function(t){const e=P_,s=t();for(;;)try{if(750218===-parseInt(e(125))/1*(-parseInt(e(136))/2)+-parseInt(e(130))/3+parseInt(e(170))/4*(-parseInt(e(175))/5)+parseInt(e(131))/6*(parseInt(e(148))/7)+-parseInt(e(152))/8*(parseInt(e(129))/9)+parseInt(e(167))/10*(parseInt(e(134))/11)+-parseInt(e(160))/12*(-parseInt(e(138))/13))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(M_);class x_{constructor(t){const e=P_;this[e(172)]=t,this[e(161)]=t[e(161)],this[e(142)]="HlsManifestLoader",this[e(182)]=t.config[e(128)],this[e(165)]=null;const{retryCount:s,retryDelay:i,manifestLoadTimeout:r,fetchOptions:n}=this[e(172)][e(155)];this[e(140)]=new zk({...n,responseType:"text",retry:s,retryDelay:i,timeout:r,onRetryError:this[e(145)]},this[e(161)]),this._audioLoader=new zk({...n,responseType:e(150),retry:s,retryDelay:i,timeout:r,onRetryError:this._onLoaderRetry},this[e(161)]),this[e(132)]=new zk({...n,responseType:e(150),retry:s,retryDelay:i,timeout:r,onRetryError:this[e(145)]},this[e(161)]),this[e(171)]=!1}async destroy(){const t=P_;this[t(171)]=!0,await this[t(133)](),this[t(157)]&&(this[t(157)][t(126)](),this[t(157)]=null),this[t(132)]&&(this._subtitleLoader[t(126)](),this[t(132)]=null),this[t(140)]&&(this[t(140)][t(126)](),this[t(140)]=null),this[t(182)]=null,this.hls=null}async[R_(168)](t,e,s){const i=R_;this.player[i(181)](this[i(142)],"load()",t,e,s);const r=[this[i(140)][i(168)](t)];let n,o,a,h,l,c;e&&r.push(this._audioLoader.load(e)),s&&r[i(139)](this._subtitleLoader[i(168)](s));try{const[d,u,p]=await Promise[i(159)](r);if(!d)return[];this[i(143)](d,t),n=d.data,h=d[i(137)][i(177)]||t,e?(o=u?.[i(151)],a=p?.[i(151)],l=u?.response?.[i(177)]||e,c=p?.response?.[i(177)]||s,o&&this[i(143)](u,e),a&&this[i(143)](p,s)):(a=u?.[i(151)],c=u?.response?.[i(177)]||s,a&&this[i(143)](u,s))}catch(t){throw Yk[i(178)](t)}const{onPreM3U8Parse:d}=this[i(172)][i(155)];let u,p,f;try{if(d&&(n=d(n)||n,o&&(o=d(o,!0)||o),a&&(a=d(a,!0)||a)),u=L_[i(162)](n,h,this[i(182)]),!1===u?.[i(169)]&&u[i(173)]&&!u[i(173)][i(174)])throw new Error(i(156));o&&(p=L_[i(162)](o,l,this[i(182)])),a&&(f=L_[i(162)](a,c,this[i(182)]))}catch(t){throw new Yk(qk[i(127)],qk[i(141)],t)}return u&&(u[i(163)]?this[i(172)].emit(Bt[i(179)],{playlist:u}):(this[i(182)]&&(u[i(147)]?this[i(149)]=new c_(u[i(135)],u[i(158)],""):this[i(149)]=null),this.hls[i(164)](Bt[i(176)],{playlist:u}))),[u,p,f]}[R_(153)](t,e){const s=R_,{onPreM3U8Parse:i}=this[s(172)].config;let r;try{if(i&&(t=i(t)||t),r=L_[s(162)](t,e,this._useLowLatency),!1===r?.[s(169)]&&r[s(173)]&&!r.segments.length)throw new Error("empty segments list")}catch(t){throw new Yk(qk[s(127)],qk[s(141)],t)}return r&&r[s(163)],[r]}poll(t,e,s,i,r,n){const o=R_;clearTimeout(this[o(165)]),n=n||3e3;let a=this[o(172)][o(155)][o(146)];const h=async()=>{const l=o;if(clearTimeout(this._timer),this[l(171)])return;let c=t;try{this[l(149)]&&(c=this.deliveryDirectives[l(166)](t));const r=await this[l(168)](c,e,s);if(!r[0])return;a=this.hls[l(155)].pollRetryCount,i(r[0],r[1],r[2])}catch(t){a--,a<=0&&r(t)}this[l(165)]=setTimeout(h,n)};this._timer=setTimeout(h,n)}[R_(133)](){const t=R_;return this[t(165)]&&(clearTimeout(this[t(165)]),this._timer=null),this[t(180)]()}cancel(){const t=R_;return Promise.all([this[t(140)][t(180)](),this[t(157)][t(180)]()])}_emitOnLoaded=(t,e)=>{const s=R_,{response:i,options:r}=t,{firstByteTime:n,startTime:o,endTime:a,contentLength:h}=r||{};this[s(172)][s(164)](Bt[s(144)],{url:e,responseUrl:i[s(177)],elapsed:n-o})};_onLoaderRetry=(t,e)=>{const s=R_;this[s(172)][s(164)](Bt[s(154)],{error:Yk.network(t),retryTime:e})}}function M_(){const t=["player","parse","isMaster","emit","_timer","addDirectives","106540XtqKsl","load","live","4KkbJtl","_isDestroyed","hls","segments","length","7303490idZYfV","HLS_LEVEL_LOADED","url","network","HLS_MANIFEST_LOADED","cancel","debugLog","_useLowLatency","854951mpqUex","destroy","MANIFEST","useLowLatency","4457853NWYDhi","3090126LVhSGy","2272206WEvZpj","_subtitleLoader","stopPoll","561QKFBDb","nextSN","2icUbxI","response","10273692GbzLJf","push","_loader","HLS","TAG_NAME","_emitOnLoaded","TTFB","_onLoaderRetry","pollRetryCount","canBlockReload","14NxtjJP","deliveryDirectives","text","data","8cFJsfU","parseText","LOAD_RETRY","config","empty segments list","_audioLoader","nextIndex","all","24iSgYnS"];return(M_=function(){return t})()}var B_=U_;function F_(){var t=["124UDiyYH","length","1572696vMecVJ","reduce","slice","3SeEQvl","_totalBits","13056tMNkIr","push","addChunkRecord","reset","_chunkSpeeds","276RHlasp","292650fHENrz","592647zrdXfX","10jrsIpw","destroy","getAvgSpeed","addRecord","3751892Leknao","5540472TisaNy","getLatestSpeed","_speeds","7GOYinc","2887305fnCYwq"];return(F_=function(){return t})()}function U_(t,e){var s=F_();return(U_=function(t,e){return s[t-=274]})(t,e)}!function(t){for(var e=U_,s=t();;)try{if(497403===-parseInt(e(295))/1*(-parseInt(e(288))/2)+parseInt(e(293))/3*(parseInt(e(282))/4)+-parseInt(e(287))/5+parseInt(e(276))/6+-parseInt(e(286))/7*(-parseInt(e(283))/8)+-parseInt(e(290))/9*(parseInt(e(278))/10)+-parseInt(e(277))/11*(parseInt(e(275))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(F_);class O_{constructor(){var t=U_;this[t(274)]=[],this[t(285)]=[],this[t(294)]=0}[B_(279)](){var t=B_;this[t(274)]=[],this[t(285)]=[],this[t(294)]=0}[B_(281)](t,e){var s=B_;t&&e&&(this[s(285)][s(296)](8e3*t/e),this[s(285)]=this[s(285)].slice(-3),this._totalBits+=8*t)}[B_(297)](t,e){var s=B_;t&&e&&(this[s(274)].push(8e3*t/e),this[s(274)]=this[s(274)][s(292)](-100),this[s(294)]+=8*t)}[B_(280)](){var t=B_;return this[t(274)].length||this[t(285)][t(289)]?this[t(285)][t(289)]?this._speeds[t(291)]((t,e)=>t+e)/this[t(285)][t(289)]:this[t(274)][t(291)]((t,e)=>t+e)/this[t(274)].length:0}[B_(284)](){var t=B_;return this[t(274)].length||this._speeds[t(289)]?this._speeds.length?this[t(285)][this[t(285)][t(289)]-1]:this._chunkSpeeds[this._chunkSpeeds.length-1]:0}getTotalBits(){return this[B_(294)]}[B_(298)](){var t=B_;this[t(274)]=[],this[t(285)]=[],this[t(294)]=0}}const N_=V_;function V_(t,e){const s=j_();return(V_=function(t,e){return s[t-=422]})(t,e)}function j_(){const t=["reset","emit","1080212hTNZIj","hls","all","239540NvxuGU","_mapCache","_audioSegmentLoader","byteLength","loadVideoSegment","data","then","272840LBNQSR","length","_segmentLoader","addRecord","error","_loadSegment","resetBandwidth","LOAD_START","6RuJHtL","45XADdxj","player","load","30kBAFTZ","cancel","isArray","key","byteRange","loadAudioSegment","LOAD_RETRY","553420aNJTWW","destroy","url","8552104CqSYLN","_keyCache","isSegmentEncrypted","getAvgSpeed","207rJStPJ","getLatestSpeed","arraybuffer","TTFB","initSegment","6863860iLATWb","speedInfo","_bandwidthService","_keyLoader","_emitOnLoaded","369106EeOidj","_onLoaderRetry"];return(j_=function(){return t})()}!function(t){const e=V_,s=t();for(;;)try{if(840136===parseInt(e(464))/1+parseInt(e(457))/2*(parseInt(e(429))/3)+parseInt(e(440))/4*(-parseInt(e(430))/5)+parseInt(e(433))/6*(-parseInt(e(461))/7)+parseInt(e(471))/8*(parseInt(e(447))/9)+parseInt(e(452))/10+parseInt(e(443))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(j_);class W_{constructor(t){const e=V_;this[e(462)]=t,this[e(431)]=t[e(431)],this[e(425)]=null,this[e(465)]={},this._keyCache={},this._bandwidthService=new O_;const{retryCount:s,retryDelay:i,loadTimeout:r,fetchOptions:n}=this[e(462)].config;this[e(423)]=new zk({...n,responseType:e(449),retry:s,retryDelay:i,timeout:r,onRetryError:this[e(458)]},this[e(431)]),this[e(466)]=new zk({...n,responseType:e(449),retry:s,retryDelay:i,timeout:r,onRetryError:this._onLoaderRetry},this.player),this[e(455)]=new zk({...n,responseType:e(449),retry:s,retryDelay:i,timeout:r,onRetryError:this[e(458)]},this[e(431)])}destroy(){const t=V_;this.reset(),this[t(455)]&&(this[t(455)][t(441)](),this[t(455)]=null),this[t(466)]&&(this[t(466)].destroy(),this[t(466)]=null),this[t(423)]&&(this[t(423)][t(441)](),this._segmentLoader=null),this[t(454)]&&(this[t(454)][t(441)](),this[t(454)]=null),this[t(462)]=null}[N_(453)](){const t=N_;return{speed:this[t(454)][t(448)](),avgSpeed:this[t(454)][t(446)](),totalBits:this[t(454)].getTotalBits()}}[N_(427)](){this.reset()}[N_(432)](t,e,s,i=s){const r=N_,n=[];return t&&(n[0]=this[r(468)](t,s)),e&&(n[1]=this.loadAudioSegment(e,i)),Promise[r(463)](n)}[N_(468)](t,e){const s=N_;return this[s(426)](this[s(423)],t,e)}[N_(438)](t,e){const s=N_;return this[s(426)](this[s(466)],t,e)}async _loadSegment(t,e,s){const i=N_;let r,n,o,a,h;const l=[];this[i(462)][i(460)](Bt[i(428)],{url:e[i(442)]});const c={};if(Array[i(435)](e[i(437)])&&2===e[i(437)][i(422)]&&(c.range=e[i(437)]),l[0]=t[i(432)](e[i(442)],c),s&&e[i(451)]){const s=e[i(451)][i(442)];r=this._mapCache[s],!r&&(this.hls[i(460)](Bt[i(428)],{url:s}),l[1]=t[i(432)](s)[i(470)](t=>{const e=i;if(t){Object.keys(this[e(465)])>30&&(this[e(465)]={}),r=this[e(465)][s]=t.data,this._emitOnLoaded(t,s)}}));const n=e[i(451)][i(436)]?.[i(442)];n&&(h=e.initSegment[i(436)].iv,a=this._keyCache[n],!a&&(this[i(462)].emit(Bt.LOAD_START,{url:n}),l[2]=this[i(455)][i(432)](n)[i(470)](t=>{const e=i;t&&(a=this[e(444)][n]=t[e(469)],this[e(456)](t,n))})))}const d=e.key?.[i(442)];d&&e[i(436)][i(445)]()&&(o=e[i(436)].iv,n=this[i(444)][d],!n&&(this[i(462)].emit(Bt[i(428)],{url:d}),l[3]=this._keyLoader[i(432)](d)[i(470)](t=>{const e=i;t&&(n=this[e(444)][d]=t[e(469)],this[e(456)](t,d))})));const[u]=await Promise[i(463)](l);if(!u)return;const p=u[i(469)];return this[i(456)](u,e[i(442)]),{data:p,map:r,key:n,mapKey:a,keyIv:o,mapKeyIv:h}}[N_(459)](){const t=N_;this.error=null,this[t(465)]={},this._keyCache={},this[t(454)][t(459)]()}async[N_(434)](){const t=N_;await Promise[t(463)]([this[t(455)][t(434)](),this[t(423)][t(434)](),this[t(466)].cancel()])}_emitOnLoaded=(t,e)=>{const s=N_,{data:i,response:r,options:n}=t,{firstByteTime:o,startTime:a,endTime:h,contentLength:l}=n||{},c=h-a;this[s(454)][s(424)](l||i[s(467)],c),this[s(462)].emit(Bt[s(450)],{url:e,responseUrl:r[s(442)],elapsed:o-a})};[N_(458)]=(t,e)=>{const s=N_;this[s(462)].emit(Bt[s(439)],{error:Yk.network(t),retryTime:e})}}const G_=H_;function z_(){const t=["endPartIndex","bitrate","audioStreams","start","_setLLPlaybackPoint","partHoldBack","16GdqZTI","url","5657700vfHNIb","isArray","partTargetDuration","TAG_NAME","destroy","targetDuration","243TUWjhw","width","endTime","switchSubtitle","partIndex","duration","lang","6NjhoKh","closedCaptions","textCodec","updateSubtitle","lastSegment","totalDuration","currentSubtitleEndSn","clearOldSegment","canSkipUntil","getAudioSegment","liveEdge","16904CEaETQ","currentAudioStream","videoCodec","canSkipDateRanges","endSN","1344YKcwAa","end","3227kRAUPM","segments","4447665xuUpdI","lowLatency","subtitleStreams","currentSubtitleStream","skippedSegments","height","live","1809dUOnyN","update","79774hZYMXu","HlsStream","canBlockReload","_clearSegments","forEach","snDiff","name","find","default","slice","_updateSegments","endCC","269860VlSkjv","independent","findIndex","audioCodec","startCC","length","startSN","segmentDuration","concat","8519918jAhUmm"];return(z_=function(){return t})()}function H_(t,e){const s=z_();return(H_=function(t,e){return s[t-=171]})(t,e)}!function(t){const e=H_,s=t();for(;;)try{if(499801===-parseInt(e(236))/1*(-parseInt(e(192))/2)+-parseInt(e(234))/3*(-parseInt(e(223))/4)+-parseInt(e(227))/5*(parseInt(e(207))/6)+parseInt(e(225))/7*(parseInt(e(218))/8)+parseInt(e(200))/9*(-parseInt(e(176))/10)+parseInt(e(185))/11+-parseInt(e(194))/12)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(z_);class K_{constructor(t,e,s){const i=H_;this[i(233)]=void 0,this.id=0,this.bitrate=0,this[i(201)]=0,this[i(232)]=0,this[i(242)]="",this.url="",this[i(179)]="",this[i(220)]="",this[i(209)]="",this.startCC=0,this[i(175)]=0,this.startSN=0,this[i(222)]=-1,this.totalDuration=0,this[i(199)]=0,this[i(196)]=0,this.canSkipUntil=0,this[i(221)]=!1,this[i(231)]=0,this.canBlockReload=!1,this[i(191)]=0,this[i(228)]=!1,this[i(186)]=0,this.snDiff=null,this.segments=[],this[i(188)]=[],this[i(229)]=[],this[i(208)]=[],this[i(219)]=null,this[i(230)]=null,this[i(197)]=i(237),this[i(235)](t,e,s)}[G_(198)](){const t=G_;this[t(226)]=[],this[t(188)]=[],this[t(229)]=[],this[t(219)]=null,this[t(230)]=null}get[G_(211)](){const t=G_;return this[t(226)].length?this[t(226)][this.segments.length-1]:null}get[G_(183)](){const t=G_;return this.targetDuration||this[t(226)][0]?.duration||0}get[G_(217)](){return this[G_(202)]}set[G_(217)](t){this[G_(202)]=t}get[G_(202)](){return this.lastSegment?.end||0}set[G_(202)](t){const e=G_,s=this[e(211)];s&&(s[e(205)]=t-s.start)}get[G_(213)](){const t=G_;return this.currentSubtitleStream?.[t(222)]||0}[G_(214)](t,e){const s=G_;return this[s(219)]&&this[s(239)](t,e),this[s(239)](t,e)}[G_(216)](t){const e=G_;if(!t||!this[e(219)])return;const s=t.sn-this.snDiff;return this[e(219)][e(226)].find(t=>t.sn===s)}[G_(235)](t,e){const s=G_;this[s(193)]=t[s(193)],Array[s(195)](t[s(226)])?((null===this[s(233)]||void 0===this[s(233)])&&(this[s(233)]=t[s(233)]),this[s(174)](t,this),this[s(180)]=t[s(180)],this.endCC=t[s(175)],this[s(182)]=t[s(182)],this[s(222)]=t[s(222)]||-1,this[s(212)]=t[s(212)],this[s(199)]=t[s(199)],this[s(233)]=t.live,this[s(228)]=t[s(228)],this[s(238)]=t[s(238)],this[s(221)]=t[s(221)],this.canSkipUntil=t[s(215)],this[s(191)]=t.partHoldBack,this[s(196)]=t[s(196)],this[s(231)]=t[s(231)],this[s(186)]=t[s(186)],e&&this[s(219)]&&Array[s(195)](e.segments)&&(this[s(174)](e,this[s(219)]),(null===this[s(241)]||void 0===this.snDiff)&&t[s(226)][s(181)]&&e[s(226)][s(181)]&&(this[s(241)]=t[s(226)][0].sn-e[s(226)][0].sn))):(this.id=t.id,this[s(187)]=t[s(187)],this.width=t[s(201)],this[s(232)]=t[s(232)],this[s(242)]=t[s(242)],this.audioCodec=t[s(179)],this[s(220)]=t[s(220)],this[s(209)]=t[s(209)],this[s(188)]=t[s(188)],this[s(229)]=t[s(229)],!this.currentAudioStream&&this[s(188)][s(181)]&&(this[s(219)]=this.audioStreams[s(171)](t=>t[s(172)])||this[s(188)][0]),!this[s(230)]&&this[s(229)][s(181)]&&(this[s(230)]=this[s(229)][s(171)](t=>t[s(172)])||this[s(229)][0]))}[G_(210)](t){const e=G_;if(!(t&&this[e(230)]&&Array[e(195)](t[e(226)])))return;const s=this[e(174)](t,this[e(230)]),i=this[e(230)][e(226)];return i[e(181)]>100&&(this[e(230)][e(226)]=i[e(173)](100)),s?s.map(t=>{const s=e;return{sn:t.sn,url:t.url,duration:t[s(205)],start:t[s(189)],end:t[s(224)],lang:this[s(230)].lang}}):void 0}[G_(203)](t){const e=G_,s=this[e(229)][e(171)](s=>s[e(206)]===t),i=this[e(230)];s&&(this[e(230)]=s,i[e(226)]=[])}[G_(190)](t){const e=G_;if(!t[e(228)]||!t[e(226)][e(181)])return t;const s=t[e(212)]-t[e(191)],i=t[e(226)];let r=0;for(let t=0,n=i[e(181)];t<n;t++)i[t][e(189)]<=s&&i[t][e(177)]&&(r=t);const n=i[e(173)](r);let o=0;return n[e(240)](t=>{const s=e;t.start=o,o=t[s(224)]}),t[e(226)]=n,t[e(212)]=o,t[e(182)]=n[0].sn,t[e(180)]=n[0].cc,t}[G_(239)](t,e){const s=G_;let i=0;const r=this.segments;for(let e=0,n=r[s(181)];e<n;e++)if(r[e][s(224)]>=t){i=e;break}return i>e&&(i=e),i&&(this[s(226)]=this[s(226)][s(173)](i),this[s(219)]&&(this[s(219)][s(226)]=this.currentAudioStream[s(226)][s(173)](i))),e-i}[G_(174)](t,e){const s=G_,i=e[s(226)];if(this.live){const r=t[s(228)],n=i[i[s(181)]-1],o=n?.sn??-1,a=n?.partIndex||0;let h=o<t[s(222)]&&t.segments[s(181)];if(r&&(h=h||a<t[s(186)]),h){const r=t[s(226)][s(178)](t=>t.sn===o&&t[s(204)]===a),h=r<0?t[s(226)]:t.segments[s(173)](r+1);if(i[s(181)]&&h.length){let t=n[s(224)];h[s(240)](e=>{const i=s;e[i(189)]=t,t=e[i(224)]});const e=n?.cc||-1;e>h[0].cc&&h[s(240)](t=>t.cc+=e)}return e[s(222)]=t[s(222)],e[s(226)]=i[s(184)](h),h}}else e.segments=t[s(226)]}}const q_=Q_;function Q_(t,e){const s=Y_();return(Q_=function(t,e){return s[t-=191]})(t,e)}function Y_(){const t=["currentSegments","currentSegment","findIndex","1351539VpwokD","setNextSegmentByIndex()","liveEdge","forEach","emit","SUBTITLE_SEGMENTS","isMaster","filter","url","200627FgefTg","5lUGTRA","start","endTime","reset","debugLog",", this.dvrWindow:","totalDuration","currentSubtitleEndSn","HlsPlaylist","switchSubtitle","21512sXmtIY","clearOldSegment","isArray","findSegmentIndexByTime","setNextSegmentBySN","updateSegmentsRanges","update","1152jytRQi","destroy","lastSegment","827020wdTFlm","hls","hadSegmentLoaded","hasAudio","segments","293334zVkzKs","currentStream","getAudioSegment","lowLatency","streams","player","duration","end","getSegmentByIndex","8oxlVrj","reduce","_segmentPointer","maxPlaylistSize","seekRange","upsertPlaylist() playlist is null","hasSubtitle","nextSegment","hasVideo","nbSegments","updateSubtitle"," <= maxPlaylistSize:","348186NsMRHE","currentSubtitleStream","live","checkSegmentTrackChange","331538MBOUbS","length","isLive","setNextSegmentByIndex","upsertPlaylist","TAG_NAME","dvrWindow"];return(Y_=function(){return t})()}!function(t){const e=Q_,s=t();for(;;)try{if(192842===parseInt(e(235))/1+parseInt(e(216))/2+-parseInt(e(212))/3*(-parseInt(e(200))/4)+-parseInt(e(236))/5*(-parseInt(e(191))/6)+-parseInt(e(226))/7+parseInt(e(246))/8*(-parseInt(e(253))/9)+parseInt(e(256))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(Y_);class J_{constructor(t){const e=Q_;this[e(257)]=t,this[e(196)]=t[e(196)],this[e(195)]=[],this[e(192)]=null,this[e(222)]=0,this._segmentPointer=-1,this[e(221)]=e(244)}destroy(){this[Q_(239)](),this.hls=null}get lowLatency(){const t=Q_;return this[t(192)]?.[t(194)]}get lastSegment(){const t=Q_;return this[t(192)]?.[t(255)]}get[q_(224)](){const t=q_;return this[t(223)]?.[this[t(202)]]}get[q_(207)](){const t=q_;return this[t(223)]?.[this._segmentPointer+1]}get[q_(223)](){const t=q_;return this[t(192)]?.[t(260)]}get[q_(243)](){const t=q_;return this[t(192)]?.[t(243)]}get liveEdge(){const t=q_;return this[t(192)]?.liveEdge}set liveEdge(t){this[q_(192)]&&(this.currentStream.liveEdge=t)}get[q_(242)](){const t=q_;return this.currentStream?.[t(242)]||0}get[q_(204)](){const t=q_,e=this[t(223)];if(e&&e[t(217)])return[e[0][t(237)],e[e[t(217)]-1].end]}get[q_(209)](){const t=q_;return this[t(223)]?.[t(217)]||0}get isEmpty(){const t=q_;return!this[t(223)]?.length}get[q_(218)](){const t=q_;return this.currentStream?.[t(214)]}get[q_(258)](){return-1!==this[q_(202)]}get[q_(206)](){const t=q_;return!!this[t(192)]?.[t(213)]}[q_(193)](t){const e=q_;return this[e(192)]?.[e(193)](t)}moveSegmentPointer(t){const e=q_;null==t&&(t=this[e(202)]+1),this[e(202)]=as(t,-1,this.currentSegments?.[e(217)]),this[e(196)][e(240)](this[e(221)],"moveSegmentPointer() and param pos is "+t+" and clamp result is "+this._segmentPointer)}reset(){const t=q_;this[t(195)][t(217)]>0&&(this.streams.forEach(e=>{e[t(254)]()}),this[t(195)]=[]),this[t(192)]=null,this[t(222)]=0,this._segmentPointer=-1}[q_(199)](t){const e=q_;return this[e(223)]?.[t]}[q_(219)](t=0){const e=q_;this[e(202)]=t-1,this.player[e(240)](this[e(221)],e(227),t,this[e(202)])}[q_(250)](t=0){const e=q_,s=this[e(223)]?.[e(225)](e=>e.sn===t);return-1!==s&&this[e(219)](s+1),s}[q_(249)](t){const e=q_,s=this[e(223)];if(s){for(let i,r=0,n=s[e(217)];r<n;r++)if(i=s[r],t>=i[e(237)]&&t<i.end)return r;const i=s[s[e(217)]-1];if(Math.abs(t-i?.[e(198)])<.2)return s[e(217)]-1}}[q_(220)](t,e,s){const i=q_;if(!t)return void this[i(196)].debugWarn(this[i(221)],i(205));if(t[i(232)])this[i(195)][i(217)]=t.streams.length,t[i(195)][i(233)](t=>t[i(234)]).forEach((t,e)=>{const s=i;this[s(195)][e]?this[s(195)][e].update(t):this[s(195)][e]=new K_(t)}),this[i(192)]=this[i(195)][0];else if(Array[i(248)](t[i(260)])){const r=this[i(192)];if(r){r[i(252)](t,e,s);const n=r[i(210)](s);n&&this[i(257)][i(230)](Bt[i(231)],{list:n})}else this[i(239)](),this[i(192)]=this.streams[0]=new K_(t,e,s)}this[i(192)]&&this[i(257)].isLive&&!this[i(222)]&&(this.dvrWindow=this[i(223)][i(201)]((t,e)=>t+=e[i(197)],0))}[q_(251)](t,e){const s=q_,i=this.currentSegments?.[s(233)](e=>e.sn>=t);i[s(229)](t=>{t[s(237)]=e,e=t.end})}[q_(245)](t){const e=q_;this[e(192)]?.[e(245)](t)}[q_(247)](t=this[q_(257)].config[q_(203)]||50){const e=q_,s=this[e(192)];if(!this[e(222)]||!s)return;const i=s.endTime-this[e(222)];if(i<=0)return void this.player[e(240)](this[e(221)],"clearOldSegment() stream.endTime:"+s[e(238)]+e(241)+this[e(222)]+" startTime <= 0");const r=s[e(260)];if(r[e(217)]<=t)return void this[e(196)][e(240)](this[e(221)],"clearOldSegment() segments.length:"+r.length+e(211)+t);const n=this._segmentPointer;this._segmentPointer=s[e(247)](i,n),this[e(196)][e(240)](this.TAG_NAME,"clearOldSegment() update _segmentPointer: old -> new",n,this[e(202)])}[q_(215)](t,e){const s=q_,i=this[s(249)](t),r=this[s(199)](i);if(!r)return;if(!r[s(259)]&&!r[s(208)])return;if(2!==e&&r[s(259)]&&r[s(208)])return r;if(r.end-t>.3)return;const n=this[s(199)](i+1);return n&&(n.hasAudio||n.hasVideo)&&(n.hasAudio!==r[s(259)]||n.hasVideo!==r.hasVideo)?n:void 0}feedbackLiveEdge(t,e){const s=q_;if(!this[s(223)])return;this[s(255)]?.sn===t.sn?this[s(228)]=e:this[s(251)](t.sn+1,e)}}const X_=$_;function $_(t,e){const s=tC();return($_=function(t,e){return s[t-=464]})(t,e)}!function(t){const e=$_,s=t();for(;;)try{if(223307===-parseInt(e(474))/1+-parseInt(e(467))/2*(-parseInt(e(478))/3)+-parseInt(e(488))/4+-parseInt(e(484))/5+-parseInt(e(475))/6+parseInt(e(486))/7*(parseInt(e(479))/8)+parseInt(e(480))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(tC);X_(476);class Z_{constructor(t,e){const s=X_;this[s(489)]=t,this.player=e;const i=window.crypto||window[s(464)];this[s(473)]=i&&(i[s(473)]||i.webkitSubtle),this[s(477)]=null}[X_(472)](){const t=X_;this[t(477)]?.[t(472)]&&this[t(477)].destroy(),this[t(473)]=null,this[t(489)]=null}[X_(476)](t,e){const s=X_;if(!t&&!e)return;const i=[];return t&&(i[0]=this[s(481)](t)),e&&(i[1]=this._decryptSegment(e)),Promise[s(466)](i)}async _decryptSegment(t){const e=X_;let s=t[e(485)];return t[e(468)]&&(s=await this._decryptData(t[e(485)],t[e(468)],t[e(469)])),t[e(490)]?Qm(t[e(490)],s):s}async[X_(470)](t,e,s){const i=X_;if(this[i(477)])return await this[i(477)].decrypt(t,e,s);if(this[i(473)]){const r=await this[i(473)][i(487)](i(465),e,{name:"AES-CBC"},!1,["encrypt",i(476)]),n=await this[i(473)].decrypt({name:"AES-CBC",iv:s},r,t);return new Uint8Array(n)}t=Wp(t),e=Wp(e),s=Wp(s);return function(t){const{words:e}=t,{sigBytes:s}=t,i=new Uint8Array(s);for(let t=0;t<s;t+=1)i[t]=e[t>>>2]>>>24-t%4*8&255;return i}(Op[i(483)].decrypt({ciphertext:t},e,{iv:s,mode:Op[i(482)][i(471)]}))}}function tC(){const t=["key","keyIv","_decryptData","CBC","destroy","subtle","198476OasBuy","2281332iyDSKT","decrypt","externalDecryptor","822105HIDSQX","8RUbspx","5789250LChyLS","_decryptSegment","mode","AES","1066795bNVCjq","data","984494vUqKKW","importKey","170252tFmbir","hls","map","msCrypto","raw","all","2fTnQBu"];return(tC=function(){return t})()}function eC(){const t=1,e=2,s="hlsTs";class i{constructor(t){this.type=t.type,this.baseFps=0,this.playRate=1,this.fpsInterval=null,this.calcSampleInterval=null,this.preLoopTimestamp=null,this.seekingTime=null,this.seekingMaxDiff=t.seekingMaxDiff||1e4,this.allSampleList=[],this.isDebug=t.debug||!1,this.TAG_NAME=t.type+"LoopWorker",this.debugUuid=t.debugUuid||"xxxx",this.debugLevel=t.debugLevel||"warn",this._startCalcSampleInterval(),this.debugLog(this.TAG_NAME,"init")}destroy(){this._clearInterval(),this._clearCalcSampleInterval(),this.baseFps=0,this.playRate=1,this.allSampleList=[],this.preLoopTimestamp=null,this.seekingTime=null}updateBaseFps(t){this.debugLog(this.TAG_NAME,`updateBaseFps() baseFps is ${t}`),this.baseFps=t+1,this._clearInterval(),this._startInterval()}updatePlayRate(t){this.debugLog(this.TAG_NAME,`updatePlayRate() rate is ${t} and prevPlayRate is ${this.playRate}`);const e=this.playRate;this.playRate=t,e>=1&&t>=1||(this._clearInterval(),this._startInterval())}seekSampleRange(t){this.debugLog(this.TAG_NAME,`seekSampleRange() time is ${t}`);const s=1e3*t;let i=0,r=-1;for(let t=0;t<this.allSampleList.length;t++){const n=this.allSampleList[t];if(n.type===e&&n.isIFrame){const e=Math.abs(s-n.dts);(-1===r||e<r)&&(r=e,i=t)}}this.allSampleList=this.allSampleList.slice(i)}cleanSampleList(){this.debugLog(this.TAG_NAME,"cleanSampleList()"),this.allSampleList=[]}setSeekingTime(t){this.seekingTime=1e3*t,this.debugLog(this.TAG_NAME,`setSeekingTime() time is ${this.seekingTime}`)}pause(){this.debugLog(this.TAG_NAME,"pause()"),this._clearInterval()}resume(){this.debugLog(this.TAG_NAME,"resume()"),this._clearInterval(),this._startInterval()}demuxNextFrame(){this._loop()}demuxNextIFrame(t){this._loopNextIFrame(t)}pushSample(t){if(delete t.cmd,null!==this.seekingTime){const s=Math.abs(t.dts-this.seekingTime);if(!(t.type===e&&t.isIFrame&&s<=this.seekingMaxDiff))return t.dts-this.seekingTime>this.seekingMaxDiff?(this.debugWarn(this.TAG_NAME,`pushSample() seekingTime is ${this.seekingTime}, sample dts is ${t.dts}, diff is ${s}ms more than seekingMaxDiff ${this.seekingMaxDiff}ms, and set this.seekingTime = null`),void(this.seekingTime=null)):void 0;this.debugLog(this.TAG_NAME,`pushSample() seekingTime is ${this.seekingTime}, sample dts is ${t.dts}, diff is ${s}ms and set this.seekingTime = null`),this.seekingTime=null}this.allSampleList.push(t)}_startInterval(){const t=Math.ceil(1e3/this.baseFps);if(this.debugLog(this.TAG_NAME,`_startInterval() fragDuration is ${t}ms and baseFps is ${this.baseFps}`),this.playRate<1){this._loop();const e=Math.ceil(t/this.playRate);return this.debugLog(this.TAG_NAME,`_startInterval() decimal playRate is ${this.playRate}, and intervalDuration is ${e}ms`),void(this.fpsInterval=setInterval(()=>{this._loop()},e))}for(let t=0;t<this.playRate;t++)this._loop();this.fpsInterval=setInterval(()=>{let e=Date.now();for(let t=0;t<this.playRate;t++)this._loop();this.preLoopTimestamp||(this.preLoopTimestamp=e);const s=e-this.preLoopTimestamp,i=parseInt(s/t,10);i>1&&this.allSampleList.length>0&&this.debugWarn(this.TAG_NAME,`loop interval is ${s}ms, and fragDuration is ${t}ms, diffFps is ${i}, and allSampleList length is ${this.allSampleList.length}`),this.preLoopTimestamp=e},t)}_clearInterval(){this.fpsInterval&&(clearInterval(this.fpsInterval),this.fpsInterval=null),this.preLoopTimestamp=null}_startCalcSampleInterval(){this.debugLog(this.TAG_NAME,"_startCalcSampleInterval()"),this._clearCalcSampleInterval(),this.calcSampleInterval=setInterval(()=>{this._calcSampleList()},1e3)}_clearCalcSampleInterval(){this.calcSampleInterval&&(clearInterval(this.calcSampleInterval),this.calcSampleInterval=null)}_calcSampleList(){const i={buferredDuration:0,allListLength:this.allSampleList.length,start:this.allSampleList[0]?this.allSampleList[0].dts:0,end:this.allSampleList[this.allSampleList.length-1]?this.allSampleList[this.allSampleList.length-1].dts:0,audioListLength:0,videoListLength:0};this.allSampleList.forEach(r=>{r.type===e?(i.videoListLength++,r.duration&&(this.type===s?i.buferredDuration+=Math.round(r.duration/90):i.buferredDuration+=r.duration)):r.type===t&&i.audioListLength++}),postMessage({cmd:"sampleListInfo",...i})}_loop(){let s=null;if(this.allSampleList.length)if(s=this.allSampleList.shift(),s.type===e){postMessage({cmd:"decodeVideo",...s},[s.payload.buffer]);let e=this.allSampleList[0];for(;e&&e.type===t;)s=this.allSampleList.shift(),postMessage({cmd:"decodeAudio",...s},[s.payload.buffer]),e=this.allSampleList[0]}else if(s.type===t){postMessage({cmd:"decodeAudio",...s},[s.payload.buffer]);let i=this.allSampleList[0];for(;i;){if(s=this.allSampleList.shift(),s.type===e){postMessage({cmd:"decodeVideo",...s},[s.payload.buffer]),i=null;break}s.type===t&&(postMessage({cmd:"decodeAudio",...s},[s.payload.buffer]),i=this.allSampleList[0])}}}_loopNextIFrame(t){if(0===this.allSampleList.length)return;let e=this.allSampleList[0],s=e.dts-t;for(;s<100&&(this._loop(),0!==this.allSampleList.length);)e=this.allSampleList[0],s=e.dts-t}_hasIFrameInList(){let t=!1;for(let s=0;s<this.allSampleList.length;s++){const i=this.allSampleList[s];if(i.type===e&&i.isIFrame){t=!0;break}}return t}debugLog(t,...e){this.isDebug&&"debug"==this.debugLevel&&console.log(`JbPro[${this.debugUuid}][✅✅✅][${t}]`,...e)}debugWarn(t,...e){!this.isDebug||"debug"!=this.debugLevel&&"warn"!=this.debugLevel||console.log(`JbPro[${this.debugUuid}][❗❗❗][${t}]`,...e)}debugError(t,...e){console.log(`JbPro[${this.debugUuid}][❌❌❌][${t}]`,...e)}}let r=null;self.onmessage=t=>{const e=t.data;switch(e.cmd){case"init":r=new i(e.options);break;case"updateBaseFps":r.updateBaseFps(e.baseFps);break;case"updatePlayRate":r.updatePlayRate(e.rate);break;case"seekSampleRange":r.seekSampleRange(e.time);break;case"cleanSampleList":r.cleanSampleList();break;case"setSeekingTime":r.setSeekingTime(e.time);break;case"pause":r.pause();break;case"resume":r.resume();break;case"demuxNextFrame":r.demuxNextFrame();break;case"demuxNextIFrame":r.demuxNextIFrame(e.nextIFrameTime);break;case"sample":r.pushSample(e);break;case"destroy":r.destroy(),r=null}}}function sC(){const t=["1022470CehZBu","752193OYLkMf","380160JvbRLo","floor","293658rqrtyV","16jwLfrp","2651327zTCVKW","userAgent","2776548ZTrGKF","366302yqFdNT"];return(sC=function(){return t})()}function iC(t,e){const s=sC();return(iC=function(t,e){return s[t-=471]})(t,e)}!function(t){const e=iC,s=t();for(;;)try{if(378940===parseInt(e(480))/1+-parseInt(e(478))/2+parseInt(e(471))/3+parseInt(e(477))/4+-parseInt(e(479))/5+-parseInt(e(473))/6+parseInt(e(475))/7*(-parseInt(e(474))/8))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(sC);const rC=[32,64,96,128,160,192,224,256,288,320,352,384,416,448,32,48,56,64,80,96,112,128,160,192,224,256,320,384,32,40,48,56,64,80,96,112,128,160,192,224,256,320,32,48,56,64,80,96,112,128,144,160,176,192,224,256,8,16,24,32,40,48,56,64,80,96,112,128,144,160],nC=[44100,48e3,32e3,22050,24e3,16e3,11025,12e3,8e3],oC=[[0,72,144,12],[0,0,0,0],[0,72,144,12],[0,144,144,12]],aC=[0,1,1,4];let hC=null;function lC(t,e){return e+1<t.length&&255===t[e]&&!(224&~t[e+1])&&!!(6&t[e+1])}function cC(t,e){const s=iC,i=t[e+1]>>3&3,r=t[e+1]>>1&3,n=t[e+2]>>4&15,o=t[e+2]>>2&3;if(1!==i&&0!==n&&15!==n&&3!==o){const a=t[e+2]>>1&1,h=t[e+3]>>6,l=1e3*rC[14*(3===i?3-r:3===r?3:4)+n-1],c=nC[3*(3===i?0:2===i?1:2)+o],d=3===h?1:2,u=oC[i][r],p=aC[r],f=8*u*p,m=Math[s(472)](u*l/c+a)*p;if(null===hC){const t=(navigator[s(476)]||"").match(/Chrome\/(\d+)/i);hC=t?parseInt(t[1]):0}return!!hC&&hC<=87&&2===r&&l>=224e3&&0===h&&(t[e+3]=128|t[e+3]),{sampleRate:c,channelCount:d,frameLength:m,samplesPerFrame:f}}}const dC=pC;function uC(){const t=["_basefps",",sampleRateIndex: ","_parseAudioData","_hasCalcFps","baseMediaDecodeTime",",\n nextPts is ","push","audio","_doDecodeVideo","frameLength","videoListLength","handlePlayVodRateChange",", channel: ","fpsNum",",\n ref sample duration is "," > ","timescale","forEach","end","codec",",\n nextPts is ","isPlayVodNotUseMSE","objectType",",\n next dts is ","baseDts",",\n count is ","_lastAudioExceptionOverlapDot","getInputByteLength","aac seq header","_isEmitAudioTrackPidList",",\n originPts is ","destroy","revokeObjectURL","pts","channelCount","floor","_audioPesData","duration","videoTrack",",\n originPts is ","workerClearTimeout","_doDecodeAudio"," select video track index is ","probe","_remainingPacketData","emit","vps",", so ignore this pid "," < 0,\n ref Sample DurationInt is ","hasAudio","_audioPidList","byteLength","cts",",\n nextPts is ","subarray","player",", sampleRate:","isUseMSE","setPlayVodBufferedTime","_videoTimestampBreak","data","\n ref sample duration is ","frames","_baseVideoDts","reset","formatTimescale","_videoPidList","_demux() sync_byte = ","updateStats","cryptoPayload","sampleListInfo","abs","originPts","type","max","1756746iuRkMd","_off","_audioLastSample","originalDts","video","updatePlayRate","aac seq header not send","decodeVideo","seekSampleRange",", and pid list ",",\n first dts is ",",\n duration is ","audioTrack","debugLevel","no video pes data","tempSampleListInfo","loop worker is not init, can not post message","_videoPid","includes","loopWorker","geVodLoadedTime","postMessage","min","10tuEgez","_initLoopWorker","cleanSampleListAndSetSeekTime","5470194mlNMyj","playVodRateChange","_isSendAACSeqHeader","4LBQvHC","_parseVideoData","getSampleAudioListLength","pps","startPrefixError","_isDestroyed","_fixVideo","getSampleRange","debugUuid","error","emitVideoSei","_largeGapThreshold","cleanSampleList","3856976dTTgOe","TAG_NAME","length","pause","_codecType","code","_parseAudioData() MPEG PES unknown PTS","_parsePES","samplingFrequencyIndex","setSeekingTime","_doDecodeByHls","_audioPid",",\n sample Duration is ","201225DRDYOO","_audioCodecType","playVodConfig","_fix",",\n dts is ","isEmitTsPrivateData","14vkMXVu","G711A","clear","_pmtId","AAC","_baseDtsInited","debugWarn","payload","HlsTsDemux","_prevPlayVodTimeCache","isIFrame","resume","_postMessageToLoopWorker","getSampleListLength","hls264UseOldDemuxer","audioListLength","seqHeader","fpsDen","samples","26fUmULs","7035995tLVNvJ",",\n sample duration is ",", pid: ","Unsupported stream. type: ","_off()","demuxStart","_fixAudio","listen playVodRateChange","terminate","isEmitSEI","dts","_demux","isPlayVod","audio gap detected, silent frame is not support, count is ","_isUseWorker","hlsTs","sort","initVideoTrack","getVideoTrackPidList","_parsePES startPrefix should be 1 but with value ","_videoPesData",",\n ref sample duration is ","originData","14258511anPEfA","seiSamples","join","_calcDecodeFps","sampleDuration","isHevc","h264","isPlayer",", so use this pid ","_resetBaseDtsWhenStreamBreaked","sampleRate","_lastAudioExceptionGapDot","getPlayVodDuration","_baseDts","large av first frame gap,\n video pts: ","_times"," || ","playVod","MP3","currentAudioTrackIndex","buffer","hlsTsVideoTrackPidList","bound","start","metadataTrack","size","_calculateBaseDts","splice","G711U","_createVideoSample","_videoNextDts","large video gap between frames,\n time is ","debugLog","demuxAndFix","originalPts","\n pts is ","_parseAudioData() and parse pes error, code is startPrefixError and set audioPesData to []","large video gap between chunk,\n next dts is ","_baseAudioDts","currentVideoTrackIndex","initMetadataTrack","uuid","h265","correctSamplePts","_doFixAudioInternal","samplesPerFrame","concat","set","hlsTsVideoTrackIndex","debug","demuxNextIFrame","calcIframeIntervalTimestamp","map","playVodTimeCache","select video track index is ","sample",",\n detect is: ",",\n next dts is ","_initLoopWorker()","sps","workerUrl","getSampleVideoListLength",",\n audio pts: ","_audioTimestampBreak","12182951TJnuVV","_needForceFixLargeGap","initAudioTrack","_lastAudioExceptionLargeGapDot","_audioNextPts","large audio gap detected,\n time is ","_isEmitVideoTrackPidList","_opt"];return(uC=function(){return t})()}function pC(t,e){const s=uC();return(pC=function(t,e){return s[t-=378]})(t,e)}!function(t){const e=pC,s=t();for(;;)try{if(961420===-parseInt(e(470))/1+parseInt(e(550))/2*(-parseInt(e(525))/3)+-parseInt(e(499))/4*(parseInt(e(551))/5)+parseInt(e(496))/6*(parseInt(e(531))/7)+parseInt(e(512))/8+parseInt(e(574))/9+parseInt(e(493))/10*(parseInt(e(387))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(uC);class fC extends If{constructor(t){const e=pC;super(t),this.player=t,this[e(513)]=e(539),this[e(459)](),this[e(516)]=et[e(580)],this[e(526)]=it[e(535)],this[e(571)]=[],this[e(431)]=[],this[e(485)]={},this[e(433)]=fC[e(568)](),this.audioTrack=fC[e(389)](),this[e(598)]=fC[e(614)](),this[e(510)]=45e4,this[e(613)]=-1,this[e(593)]=-1,this[e(393)]=!1,this._isEmitAudioTrackPidList=!1,this[e(435)]=null,this[e(383)]=null,this[e(489)]=null,this[e(596)]={handlePlayVodRateChange:this[e(406)].bind(this)},this._isUseWorker()&&this[e(494)](),this[e(450)][e(563)]()&&(this[e(450)][e(394)][e(527)][e(622)]&&(this.currentVideoTrackIndex=this.player[e(394)][e(527)][e(622)]-1),this[e(450)][e(394)][e(527)].hlsTsAudioTrackIndex&&(this[e(593)]=this[e(450)]._opt[e(527)].hlsTsAudioTrackIndex-1),this[e(565)]()&&this[e(450)].on(q.playVodRateChange,this[e(596)][e(406)])),this[e(450)].debugLog(this[e(513)],"init")}[dC(426)](){const t=dC;super[t(426)](),this[t(383)]&&(URL.revokeObjectURL(this[t(383)]),this[t(383)]=null),this[t(435)]&&(clearTimeout(this[t(435)]),this[t(435)]=null),this[t(489)]&&(this[t(489)].postMessage({cmd:t(426)}),this[t(489)][t(559)](),this[t(489)]=null),this.reset(),this[t(596)]=null,this.player[t(606)](this.TAG_NAME,"destroy")}_off(){const t=dC;super[t(471)](),this.player[t(563)]()&&this[t(565)]()&&(this[t(450)].debugLog(this.TAG_NAME,t(555)),this[t(450)].on(q[t(497)],this[t(596)][t(406)]))}[dC(459)](){const t=dC;this[t(534)]=-1,this[t(487)]=-1,this[t(461)]=[],this._audioPid=-1,this[t(445)]=[],this[t(439)]=null,this[t(516)]=null,this._audioCodecType=null,this._videoPesData=null,this._audioPesData=null,this._gopId=0,this[t(433)]=null,this[t(482)]=null,this[t(598)]=null,this.tempSampleListInfo=null,this[t(587)]=-1,this[t(458)]=-1,this[t(612)]=-1,this[t(536)]=!1,this[t(395)]=25,this[t(398)]=!1,this[t(540)]=0,this[t(391)]=void 0,this[t(604)]=void 0,this._audioTimestampBreak=!1,this[t(454)]=!1,this[t(585)]=0,this[t(421)]=0,this._lastAudioExceptionLargeGapDot=0,this[t(388)]=!0,this[t(498)]=!1,this[t(441)]=null,this[t(382)]=null,this[t(502)]=null,this[t(613)]=-1,this[t(593)]=-1,this[t(393)]=!1,this[t(424)]=!1}static[dC(568)](){return{samples:[]}}static[dC(389)](){return{samples:[]}}static[dC(614)](){return{flvScriptSamples:[],seiSamples:[]}}static[dC(438)](t){return!!t[dC(514)]&&(71===t[0]&&71===t[188]&&71===t[376])}handlePlayVodRateChange(t){const e=dC;this[e(450)].debugLog(this[e(513)],e(558),t),this[e(543)](e(475),{rate:t})}[dC(519)](t){const e=dC,s=t[8];if(null==s||t[e(514)]<s+9)return;const i=t[0]<<16|t[1]<<8|t[2];if(1!==i)return this.player[e(537)](this[e(513)],e(570)+i),{error:!0,code:e(503)};const r=(t[4]<<8)+t[5];if(r&&r>t[e(514)]-6)return;let n,o;const a=t[7];return 192&a&&(n=536870912*(14&t[9])+4194304*(255&t[10])+16384*(254&t[11])+128*(255&t[12])+(254&t[13])/2,64&a?(o=536870912*(14&t[14])+4194304*(255&t[15])+16384*(254&t[16])+128*(255&t[17])+(254&t[18])/2,n-o>54e5&&(n=o)):o=n),{data:t[e(449)](9+s),pts:n,dts:o,originalPts:n,originalDts:o}}[dC(562)](t,e=!1,s=!0){const i=dC;e&&(this[i(534)]=-1,this[i(433)]=fC[i(568)](),this[i(482)]=fC[i(389)](),this[i(598)]=fC[i(614)]()),!s||e?(this[i(439)]=null,this[i(571)]=[],this[i(431)]=[],this[i(450)][i(563)]()&&this[i(450)][i(591)].isSeeking()&&(this.videoTrack[i(549)]=[],this[i(482)].samples=[],this[i(598)][i(575)]=[])):(this[i(433)][i(549)]=[],this[i(482)][i(549)]=[],this.metadataTrack[i(575)]=[],this[i(439)]&&(t=Qm(this._remainingPacketData,t),this[i(439)]=null));let r=t[i(514)];const n=r%188;n&&(this[i(439)]=t.subarray(r-n),r-=n);for(let e=0;e<r;e+=188){if(71!==t[e]){this.player[i(537)](this[i(513)],i(462)+t[e]+", not start with 0x47, so break");break}const s=!!(64&t[e+1]),r=((31&t[e+1])<<8)+t[e+2];let n;if((48&t[e+3])>>4>1){const s=t[e+4];if(n=e+5+s,n===e+188)continue;if(s>0){const s=t[e+5],r=(16&s)>>>4;if(this[i(450)][i(394)][i(530)]){if(1===(2&s)>>>1){let n=e+6;r&&(n+=6);(8&s)>>>3&&(n+=6);(4&s)>>>2&&(n+=1);const o=t[n],a=t[i(449)](n+1,n+1+o);this[i(450)].emitTsPrivateData(a)}}}}else n=e+4;switch(r){case 0:s&&(n+=t[n]+1),this[i(534)]=(31&t[n+10])<<8|t[n+11];break;case this[i(534)]:{s&&(n+=t[n]+1);const e=n+3+((15&t[n+1])<<8|t[n+2])-4;for(n+=12+((15&t[n+10])<<8|t[n+11]);n<e;){const e=(31&t[n+1])<<8|t[n+2],s=t[n];let r=-1;switch(s){case 15:if(xi(this[i(445)][i(488)](e))&&this[i(445)][i(401)](e),-1!==this[i(523)])break;this._audioPid=e,this._audioCodecType=it[i(535)];break;case 3:case 4:if(xi(this[i(445)][i(488)](e))&&this[i(445)][i(401)](e),-1!==this[i(523)])break;this[i(523)]=e,this[i(526)]=it.MP3;break;case 144:if(xi(this[i(445)][i(488)](e))&&this[i(445)][i(401)](e),-1!==this[i(523)])break;this[i(523)]=e,this[i(526)]=it.G711A;break;case 145:if(xi(this[i(445)][i(488)](e))&&this[i(445)].push(e),-1!==this[i(523)])break;this._audioPid=e,this[i(526)]=it[i(602)];break;case 27:if(xi(this[i(461)].includes(e))&&this[i(461)][i(401)](e),-1!==this[i(487)])break;if(r=-1===this[i(613)]||-1!==this[i(613)]&&void 0!==this[i(461)][this[i(613)]],xi(r)){this[i(450)][i(606)](this[i(513)],i(628)+(this[i(613)]+1)+i(479)+this[i(461)][i(576)](",")+i(442)+e);break}this[i(450)].debugLog(this[i(513)],"select video track index is "+(this[i(613)]+1)+i(479)+this[i(461)].join(",")+i(582)+e),this._videoPid=e,this[i(516)]=et.h264,this[i(450)][i(581)]()&&this[i(450)][i(394)][i(545)]&&this[i(450)].emit(q[i(545)]);break;case 36:if(xi(this[i(461)].includes(e))&&this[i(461)].push(e),-1!==this[i(487)])break;if(r=-1===this[i(613)]||-1!==this[i(613)]&&void 0!==this[i(461)][this.currentVideoTrackIndex],xi(r)){this[i(450)][i(606)](this[i(513)],i(437)+(this[i(613)]+1)+i(479)+this[i(461)][i(576)](",")+i(442)+e);break}this[i(450)][i(606)](this[i(513)],i(437)+(this[i(613)]+1)+i(479)+this[i(461)][i(576)](",")+i(582)+e),this[i(487)]=e,this[i(516)]=et[i(616)];break;default:this.player[i(537)](this[i(513)],i(554)+s+i(553)+e)}n+=5+((15&t[n+3])<<8|t[n+4])}}break;case this[i(487)]:s&&this._videoPesData[i(514)]&&this._parseVideoData(),this[i(571)][i(401)](t[i(449)](n,e+188));break;case this[i(523)]:s&&this[i(431)].length&&this[i(397)](),this._audioPesData[i(401)](t[i(449)](n,e+188));break;case 17:this[i(450)][i(606)](this[i(513)],"pid is 17 and ignore");break;case 8191:this.player[i(606)](this.TAG_NAME,"pid is 0x1fff and ignore")}}this[i(500)](),this[i(397)](),this.audioTrack[i(460)]=this[i(433)][i(460)]=this[i(433)][i(411)]=9e4,this[i(482)][i(411)]=this[i(482)][i(584)]||0,!this[i(393)]&&(this._isEmitVideoTrackPidList=!0,this[i(450)][i(440)](q[i(595)],this[i(461)]))}[dC(607)](t,e,s,i){const r=dC;!this[r(450)][r(589)][r(556)]&&(this[r(450)][r(589)][r(556)]=os()),this[r(562)](t,e,s),this[r(528)](i,e,s)}[dC(500)](){const t=dC;if(!this._videoPesData[t(514)])return void this.player.debugLog(this.TAG_NAME,t(500),t(484));const e=this._parsePES(Qm(...this._videoPesData));if(!e||e[t(508)])return void(e&&"startPrefixError"===e[t(517)]&&(this._videoPesData=[]));const s=Qe(e[t(455)]);s?this[t(603)](s,e[t(428)],e[t(561)]):this[t(450)].debugWarn(this[t(513)],"Cannot parse avc units",e),this[t(571)]=[]}[dC(603)](t,e,s){const i=dC;if(!t[i(514)])return;const r=this[i(516)]===et[i(616)],n={isIFrame:!1,type:W.video,isHevc:r,vps:null,sps:null,pps:null,pts:e,dts:s,payload:null};t.forEach(t=>{const s=i,o=r?t[0]>>>1&63:31&t[0];switch(o){case 5:case 16:case 17:case 18:case 19:case 20:case 21:case 22:case 23:if(!r&&5!==o||r&&5===o)break;n[s(541)]=!0,this._gopId++;break;case 6:case 39:case 40:if(!r&&6!==o||r&&6===o)break;const i=$e(Je(t),r);return void this[s(598)][s(575)][s(401)]({data:i[s(538)],originData:t,type:i[s(468)],uuid:i[s(615)],size:i[s(599)],originPts:e});case 32:if(!r)break;!n[s(441)]&&(n[s(441)]=t,this.vps=t);break;case 7:case 33:if(!r&&7!==o||r&&7===o)break;!n[s(382)]&&(n.sps=t,this[s(382)]=t);break;case 8:case 34:if(!r&&8!==o||r&&8===o)break;!n[s(502)]&&(n.pps=t,this[s(502)]=t)}if(r&&vl(o)||!r&&Qh(o)){const e=ts(t);if(n.payload){const t=new Uint8Array(n[s(538)].byteLength+e[s(446)]);t[s(621)](n[s(538)],0),t[s(621)](e,n[s(538)][s(446)]),n[s(538)]=t}else n[s(538)]=e}});let o=null;r?n[i(382)]&&n.vps&&n[i(502)]?(o=yl({vps:n[i(441)],sps:n[i(382)],pps:n[i(502)]}),this[i(441)]=null,this.sps=null,this[i(502)]=null):this[i(441)]&&this.sps&&this.pps&&(o=yl({vps:this.vps,sps:this[i(382)],pps:this.pps}),this.vps=null,this[i(382)]=null,this[i(502)]=null):n[i(382)]&&n[i(502)]?(o=zh({sps:n[i(382)],pps:n.pps}),this[i(382)]=null,this.pps=null):this[i(382)]&&this[i(502)]&&(o=zh({sps:this[i(382)],pps:this[i(502)]}),this[i(382)]=null,this[i(502)]=null),o&&(this.player[i(606)](this[i(513)],i(603),i(547)),this[i(522)](o,W.video,Math.floor(n.pts/90),!0,0)),n[i(541)]&&this[i(625)](Math[i(430)](n[i(561)]/90)),this[i(433)].samples[i(401)](n)}[dC(397)](){const t=dC;if(!this[t(431)][t(514)])return;if(!this[t(450)][t(394)][t(444)])return;const e=this[t(519)](Qm(...this[t(431)]));if(e&&!e[t(508)]){if(this[t(526)]===it.AAC){const s=Ue(e[t(455)],e[t(608)]);if(s){if(this.audioTrack[t(414)]=s.codec,this[t(482)][t(584)]=s[t(584)],this[t(482)][t(429)]=s[t(429)],!this[t(498)]){const e=De({profile:s[t(417)],sampleRate:s[t(520)],channel:s[t(429)]});this[t(498)]=!0,this.player[t(606)](this[t(513)],t(423),"profile: "+s[t(417)]+t(451)+s[t(584)]+t(396)+s[t(520)]+t(407)+s[t(429)]),this._doDecodeByHls(e,W[t(402)],0,!1,0)}if(this._isSendAACSeqHeader){const e=[];s[t(457)].forEach(s=>{const i=t,r=s.pts,n=new Uint8Array(s.data[i(514)]+2);n.set([175,1],0),n[i(621)](s[i(455)],2);const o={type:W[i(402)],pts:r,dts:r,payload:n};e.push(o)}),this[t(482)].samples=this[t(482)][t(549)][t(620)](e)}else this[t(450)][t(537)](this[t(513)],t(476))}else this.player.debugWarn(this[t(513)],"aac parseADTS error")}else if(this[t(526)]===it[t(592)]){const s=e[t(455)],i=s[t(514)];let r=0,n=0;const o=e.pts;if(void 0===o)return void this.player[t(537)](this.TAG_NAME,t(518));const a=[];for(;n<i;)if(lC(s,n)){if(n+24>s.length)return;const e=cC(s,n);if(!(e&&n+e.frameLength<=s[t(514)]))break;{const i=o+r*(9e4*e[t(619)]/e[t(584)]),h=s[t(449)](n,n+e[t(404)]);this[t(482)].channelCount=e[t(429)],this.audioTrack[t(584)]=e[t(584)];const l=new Uint8Array(h+1);l[t(621)]([32],0),l[t(621)](h,1);const c={type:W[t(402)],pts:i,dts:i,payload:l};a[t(401)](c),n+=e[t(404)],r++}}else n++;this[t(482)].samples=this[t(482)][t(549)][t(620)](a)}else if(this[t(526)]===it[t(532)]||this[t(526)]===it.G711U){this[t(482)][t(429)]=1,this[t(482)][t(584)]=8e3;const s=e.pts;if(void 0===s)return void this[t(450)].debugWarn(this[t(513)],"_parseAudioData() G711 PES unknown PTS");const i=this[t(526)]===it.G711A;let r=e[t(455)];const n=new Uint8Array(r[t(514)]+1),o=i?[114]:[130];n[t(621)](o,0),n[t(621)](r,1);const a={type:W[t(402)],pts:s,dts:s,payload:n};this[t(482)][t(549)][t(401)](a)}this[t(431)]=[]}else e&&"startPrefixError"===e[t(517)]&&(this.player[t(606)](this.TAG_NAME,t(610)),this[t(431)]=[])}[dC(528)](t=0,e=!1,s=!0){const i=dC;t=Math[i(430)](9e4*t);const r=this[i(433)],n=this.audioTrack,o=r[i(549)],a=n[i(549)];if(!o[i(514)]&&!a.length)return;const h=o[0],l=a[0];let c=0;if(o[i(514)]&&a[i(514)]&&(c=h[i(561)]-l.pts),!this[i(536)]&&this[i(600)](),e&&(this[i(600)](),this[i(587)]-=t,this._baseAudioDts-=t,this[i(458)]-=t),!s){this[i(604)]=c>0?t+c:t,this[i(391)]=c>0?t:t-c,this[i(388)]&&(this[i(604)]=0,this[i(391)]=0);const e=h?h[i(561)]-this[i(587)]-this[i(604)]:0,s=l?l[i(428)]-this[i(587)]-this[i(391)]:0;Math[i(466)](e||s)>Jt&&(this[i(600)](this[i(482)],this[i(433)]),this[i(587)]-=t)}this._resetBaseDtsWhenStreamBreaked(),this[i(557)](n),this[i(505)](r),this[i(598)][i(575)][i(514)]&&this[i(450)]._opt[i(560)]&&this[i(598)][i(575)][i(412)](t=>{const e=i;this[e(450)][e(509)]({ts:(t[e(467)]-this._baseDts)/90,data:t.data,originData:t[e(573)],type:t[e(468)],uuid:t[e(615)],size:t[e(599)]})}),r[i(549)][i(514)]&&(r[i(399)]=r[i(549)][0][i(561)]),n.samples[i(514)]&&(n.baseMediaDecodeTime=n[i(549)][0][i(428)]*n[i(411)]/9e4),this[i(617)](r,450),this[i(617)](n,450);let d=r[i(549)][i(620)](n[i(549)]);d=d[i(626)](t=>{const e=i;return t[e(561)]=Math[e(430)](t.dts/90),t[e(428)]=Math[e(430)](t[e(428)]/90),t[e(447)]=t[e(428)]-t[e(561)],t})[i(567)]((t,e)=>t[i(561)]-e.dts),d[i(412)](t=>{const e=i,s=new Uint8Array(t[e(538)]);delete t[e(538)],this[e(565)]()?this[e(489)][e(491)]({...t,payload:s,cmd:e(378)},[s[e(594)]]):t[e(468)]===W[e(474)]?this[e(403)]({...t,payload:s}):t[e(468)]===W[e(402)]&&this._doDecodeAudio({...t,payload:s})}),xi(this[i(398)])&&this[i(565)]()&&(this._hasCalcFps=this[i(577)](d),this[i(398)]&&this[i(450)][i(563)]()&&this[i(450)][i(591)].setFps(this[i(395)]))}[dC(600)](){const t=dC,e=this[t(482)],s=this[t(433)],i=e[t(549)],r=s.samples;if(!i[t(514)]&&!r[t(514)])return!1;let n=1/0,o=1/0;i[t(514)]&&(e[t(419)]=n=i[0].pts),r[t(514)]&&(s.baseDts=o=r[0].dts),this[t(587)]=Math[t(492)](n,o);const a=o-n;let h=!1;return Number.isFinite(a)&&Math.abs(a)>45e3&&this[t(450)][t(537)](this[t(513)],t(588)+o+t(385)+n+",\n base dts: "+this[t(587)]+t(379)+a),Number.isFinite(a)&&Math[t(466)](a)>this[t(510)]*Qt&&(h=!0),!this[t(536)]&&(h&&this[t(388)]?this[t(388)]=!0:this._needForceFixLargeGap=!1),this._baseDtsInited=!0,!0}[dC(583)](){const t=dC;if(this[t(536)]&&this[t(454)]&&this[t(386)]){if(!this[t(600)](this[t(482)],this[t(433)]))return;this[t(587)]-=Math[t(492)](this._audioNextPts,this[t(604)]),this[t(472)]=null,this._videoLastSample=null,this[t(454)]=!1,this[t(386)]=!1}}[dC(557)](t){const e=dC,s=t.samples;s[e(514)]&&(s[e(412)](t=>{const s=e;t[s(428)]-=this[s(388)]?this[s(612)]:this[s(587)],t[s(561)]=t[s(428)]}),xi(this[e(526)]===it[e(602)]||this[e(526)]===it[e(532)])&&this[e(618)](t,s,9e4))}[dC(505)](t){const e=dC,s=t[e(549)];if(!s.length)return;if(s.forEach(t=>{const s=e;t.dts-=this[s(388)]?this[s(458)]:this[s(587)],t[s(428)]-=this[s(388)]?this._baseVideoDts:this._baseDts}),void 0===this[e(604)]){const t=s[0];this._videoNextDts=t[e(561)]}const i=s[e(514)];let r=0;const n=s[0],o=s[1],a=this[e(604)]-n[e(561)];if(Math[e(466)](a)>45e3)if(n[e(561)]+=a,n[e(428)]+=a,this[e(450)][e(537)](this[e(513)],e(611)+this[e(604)]/90+e(480)+n[e(561)]/90+e(380)+(o&&o[e(561)]||0)/90+e(481)+a/90+e(410)+45e3),n[e(561)]+=a,n[e(428)]+=a,o&&Math[e(466)](o[e(561)]-n.dts)>Jt)this[e(454)]=!0,s.forEach((t,s)=>{const i=e;0!==s&&(t[i(561)]+=a,t[i(428)]+=a)});else for(let t=1;t<i-1;t++){const i=s[t]?.[e(561)],r=s[t-1][e(561)];i&&i-r<0&&(s[t][e(561)]+=a,s[t][e(428)]+=a)}let h;if(t[e(408)]&&t[e(548)]&&(h=t.timescale*(t.fpsDen/t.fpsNum)),h<900&&(h=0),!h){const s=t.samples[0],r=t.samples[1];h=1===i?9e3:Math[e(430)](r[e(561)]-s[e(561)])}for(let n=0;n<i;n++){const o=s[n][e(561)],a=s[n+1];if(r=n<i-1?a[e(561)]-o:s[n-1]?Math[e(492)](o-s[n-1][e(561)],h):h,r>Jt||r<0){this[e(454)]=!0,r=this[e(386)]?h:Math[e(469)](r,2700);const i=this[e(391)]||0;a&&a[e(561)]>i&&(r=h),this[e(450)].debugWarn(this.TAG_NAME,e(605)+o/t[e(411)]+e(529)+o+",\n origin dts is "+s[n][e(473)]+e(418)+this._videoNextDts+e(524)+r+e(410)+Jt+e(590)+r+e(443)+h)}s[n][e(432)]=r,this[e(604)]+=r}}_doFixAudioInternal(t,e,s){const i=dC;!t.sampleDuration&&(t[i(578)]=Fe(t.timescale,s));const r=t[i(578)];if(void 0===this._audioNextPts){const t=e[0];this._audioNextPts=t[i(428)]}for(let s=0;s<e[i(514)];s++){const n=this[i(391)],o=e[s],a=o[i(428)]-n;if(!this[i(386)]&&a>=3*r&&a<=Qt&&!ws()){Me(t.codec,t.channelCount)||e[0].data[i(449)]();const h=Math[i(430)](a/r);Math[i(466)](o[i(428)]-this._lastAudioExceptionGapDot)>Yt&&(this[i(585)]=o[i(428)]),this[i(450)].debugWarn(this[i(513)],"audio gap detected,\n pts is "+e.pts/90+i(425)+e[i(608)]+i(420)+h+i(415)+n/90+i(409)+r);for(let t=0;t<h;t++)this[i(450)].debugWarn(this.TAG_NAME,i(564)+h),this[i(391)]+=r,s++;s--}else a<=-3*r&&a>=-9e4?(Math[i(466)](o[i(428)]-this[i(421)])>Yt&&(this[i(421)]=o[i(428)],this[i(450)].debugWarn(this[i(513)],"audio overlap detected,\n pts is "+o[i(428)]/90+i(434)+o[i(608)]+i(448)+n/90+i(572)+r)),e[i(601)](s,1),s--):(Math.abs(a)>=Qt&&(this[i(386)]=!0,Math[i(466)](o[i(428)]-this[i(390)])>Yt&&(this._lastAudioExceptionLargeGapDot=o[i(428)],this[i(450)].debugWarn(this[i(513)],i(392)+o[i(428)]/1e3+i(609)+o[i(428)]/90+",\n originPts is "+o.originalPts+i(400)+n/90+i(552)+a+i(456)+r))),o.dts=o[i(428)]=n,this[i(391)]+=r)}}[dC(565)](){const t=dC;return!this[t(450)][t(452)]()}[dC(494)](){const t=dC;this[t(450)][t(606)](this[t(513)],t(381));const e=Ai(eC);let s=new Worker(e);this[t(383)]=e,this[t(435)]=setTimeout(()=>{const e=t;window.URL[e(427)](this[e(383)]),this[e(383)]=null,this[e(435)]=null},P),s.postMessage({cmd:"init",options:{type:t(566),seekingMaxDiff:1e4,debug:this[t(450)][t(394)][t(623)],debugUuid:this[t(450)]._opt[t(507)],debugLevel:this[t(450)][t(394)][t(483)]}}),s.onmessage=e=>{const s=t;if(this[s(504)])return;const i=e[s(455)];switch(i.cmd){case s(477):this._doDecodeVideo(i);break;case"decodeAudio":this[s(436)](i);break;case s(465):if(this[s(485)]=i,this[s(450)][s(416)]()){const t=this.geVodLoadedTime(),e=this[s(450)][s(586)]();if(t&&e){let i=t/(1e3*e);i!==this._prevPlayVodTimeCache&&(this[s(450)][s(453)](t),this.player[s(440)](q[s(627)],i)),this._prevPlayVodTimeCache=i}}}},this[t(489)]=s}[dC(543)](t,e){const s=dC;this._isUseWorker()&&(this[s(489)]?this.loopWorker[s(491)]({cmd:t,...e}):this[s(450)][s(537)](this[s(513)],s(486)))}[dC(436)](t){const e=dC,s=new Uint8Array(t[e(538)]);this[e(450)][e(463)]({abps:s[e(446)]});let i=this.cryptoPayloadAudio(s);this[e(522)](i,W.audio,t[e(561)],!1,0)}_doDecodeVideo(t){const e=dC,s=new Uint8Array(t.payload);let i=null;i=t[e(579)]?Al(s,t.isIFrame):Hh(s,t[e(541)]),this[e(450)][e(463)]({dts:t[e(561)],vbps:8*i[e(446)]});const r=t[e(428)]-t[e(561)];let n=this[e(464)](i,t.isIFrame);this._doDecodeByHls(n,W.video,t.dts,t.isIFrame,r)}getBuferredDuration(){return this.tempSampleListInfo.buferredDuration||0}[dC(544)](){return this[dC(485)].allListLength||0}[dC(501)](){const t=dC;return this[t(485)][t(546)]||0}[dC(384)](){const t=dC;return this.tempSampleListInfo[t(405)]||0}[dC(422)](){const t=dC;return this[t(439)]&&this[t(439)][t(446)]||0}getSampleRange(){const t=dC;return{start:this.tempSampleListInfo[t(597)]||0,end:this[t(485)][t(413)]||0}}[dC(478)](t){this._postMessageToLoopWorker("seekSampleRange",{time:t})}[dC(495)](t){const e=dC;this[e(450)][e(402)]&&this.player.audio[e(533)](),xi(this[e(450)].isUseMSE())&&(this.clearBuffer(!0),this[e(543)](e(511)),this[e(543)](e(521),{time:t}))}[dC(515)](){const t=dC;this[t(543)](t(515))}[dC(542)](){const t=dC;this[t(543)](t(542))}demuxNextFrame(){this[dC(543)]("demuxNextFrame")}[dC(624)](t){const e=dC;this._postMessageToLoopWorker(e(624),{nextIFrameTime:t})}[dC(490)](){let t=0;return t=this[dC(506)]().end,t}[dC(569)](){return this[dC(461)]}}function mC(t,e){const s=AC();return(mC=function(t,e){return s[t-=460]})(t,e)}const gC=mC;!function(t){const e=mC,s=t();for(;;)try{if(350214===parseInt(e(495))/1+-parseInt(e(465))/2+-parseInt(e(464))/3+parseInt(e(467))/4*(parseInt(e(489))/5)+parseInt(e(481))/6+parseInt(e(472))/7+parseInt(e(460))/8*(-parseInt(e(480))/9))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(AC);class yC{constructor(t,e,s){const i=mC;this.dv=new DataView(t),this[i(463)]=this[i(462)]=e||this.dv.byteOffset,this[i(485)]=s?this[i(463)]+s:this[i(463)]+this.dv[i(494)]}static[gC(461)](t){const e=gC;return new yC(t.buffer,t.byteOffset,t[e(494)])}static[gC(466)](t){const e=gC,s=new Uint8Array(t.reduce((t,s)=>t+s[e(494)],0));let i=0;return t[e(493)](t=>{const r=e;s[r(475)](t,i),i+=t[r(494)]}),s}static[gC(486)](...t){return this[gC(466)](t)}get[gC(500)](){const t=gC;return this.dv[t(500)]}get[gC(470)](){const t=gC;return Math[t(479)](this[t(485)]-this[t(462)],0)}get[gC(501)](){const t=gC;return this[t(485)]-this[t(463)]}[gC(497)](t){const e=gC;let s=0;switch(t){case 4:s=this.dv.getFloat32(this[e(462)]);break;case 8:s=this.dv[e(491)](this[e(462)]);break;default:throw new Error(e(473)+t+e(482))}return this[e(462)]+=t,s}[gC(469)](t){this[gC(462)]-=t}skip(t){this.offset+=t}readInt(t){const e=gC,s=this[e(462)];switch(this[e(462)]+=t,t){case 1:return this.dv.getInt8(s);case 2:return this.dv[e(474)](s);case 4:return this.dv[e(490)](s);default:throw new Error(e(473)+t+e(492))}}read(t){const e=gC,s=this[e(462)];switch(this.offset+=t,t){case 1:return this.dv[e(484)](s);case 2:return this.dv[e(471)](s);case 3:return(this.dv[e(471)](s)<<8)+this.dv[e(484)](s+2);case 4:return this.dv[e(488)](s);default:return this.back(t-4),this[e(483)](t-4)+this.dv[e(488)](s)*Math[e(496)](256,t-4)}}[gC(502)](t,e){const s=gC,i=this[s(462)];switch(this[s(462)]+=t,t){case 1:return this.dv[s(478)](i,e);case 2:return this.dv[s(477)](i,e);case 3:return this.dv[s(478)](i,e>>>16),this.dv[s(477)](i+1,65535&e);case 4:return this.dv[s(499)](i,e);default:throw new Error(s(468)+t+"-byte integers is not supported")}}[gC(498)](t){const e=gC;let s;return s=this[e(462)]||t?this.dv[e(500)][e(476)](this[e(462)],t?this[e(462)]+t:this[e(485)]):this.dv[e(500)],this.offset+=s[e(494)],s}readToUint8(t){const e=gC,s=new Uint8Array(this.dv[e(500)],this.offset,t||this.unreadLength);return this[e(462)]+=s[e(494)],s}[gC(487)](t){const e=gC;let s=0,i="";for(;s<t;s++)i+=String.fromCharCode(this.dv[e(484)](this[e(462)])),this[e(462)]++;return i}}function AC(){const t=["2464ZoDblM","write ","back","unreadLength","getUint16","2160291AWMxrl","read ","getInt16","set","slice","setUint16","setUint8","max","21897UOzAtO","2679474RnsEHz","-byte float is not supported","read","getUint8","end","concatUint8","readString","getUint32","3580fdDnNd","getInt32","getFloat64","-byte integers is not supported","forEach","byteLength","571014qGvbij","pow","readFloat","readToBuffer","setUint32","buffer","size","write","1304UXEPHL","fromUint8","offset","start","1287888eeCamV","1182346JKKiXp","concatUint8s"];return(AC=function(){return t})()}const bC=SC;function vC(){const t=["1731702XUstrf","761728fDZxQy","643514qeLDCC","50NBNQCQ","14HTVYhM","1107335yVIyNQ","10ybsYfK","27heQVDJ","offset","2532EKMwXT","364947UHQePE","the number of the read operation exceeds the total length limit of bits","size","pow","val","read","12TuTygi","189293kPlgyX","1601116jmAUwG"];return(vC=function(){return t})()}function SC(t,e){const s=vC();return(SC=function(t,e){return s[t-=311]})(t,e)}!function(t){const e=SC,s=t();for(;;)try{if(434451===parseInt(e(322))/1+parseInt(e(326))/2*(parseInt(e(311))/3)+-parseInt(e(317))/4*(-parseInt(e(325))/5)+-parseInt(e(320))/6*(-parseInt(e(324))/7)+-parseInt(e(321))/8*(-parseInt(e(327))/9)+-parseInt(e(323))/10*(-parseInt(e(319))/11)+-parseInt(e(329))/12*(parseInt(e(318))/13))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(vC);class EC{constructor(t,e){const s=SC;this[s(315)]=t,this[s(313)]=e,this[s(328)]=0}static fromByte(t,e){return new EC(t[SC(316)](e),e<<3)}skip(t){this[SC(328)]+=t}[bC(316)](t){const e=bC,s=this[e(313)]-this[e(328)]-t;if(s>=0){let i=0,r=0;if(this[e(328)]+=t,this[e(313)]>31){for(;r<t;r++)i+=Math[e(314)](2,r);return this[e(315)]/Math.pow(2,s)&i}for(;r<t;r++)i+=1<<r;return this[e(315)]>>>s&i}throw new Error(e(312))}}const wC=PC;function TC(t,e=0){return(t[e]<<8)+(t[e+1]||0)}function IC(){const t=["marker","MP3","chromaSubsamplingX","earliest_presentation_time","colorType","pow","ppsLength","timescale","BytesOfProtectedData","version","soun","buffer","channelCount","data_size","mp3","codec","colorPrimaries","probe","defaultSampleDuration","esds","includes","matrixCoefficients","apply","codecType","monochrome","av01","stsz","mp4a.40.2","tfhd","map","default_KID","hvc1","handlerType","261uxdHXU","trackId","11996TCPMCK","381545pLMRhP","default_IV_size","readToUint8","firstSampleFlags","firstChunk","hSpacing","InitializationVector","FREQ","configurationVersion","stts","filter","profileCompatibility","stss","hevc","isVideoEncryption","hvcC","subarray","height","formatTimescale","sampleSize","stbl","width","seqLevelIdx0","rotation","4376vQDtgh","sidx","present","parseSampleFlags","moovToSamples","getRateIndexByRate","config","schi","SAP_delta_time","pasp","unknown video stsd entry","depth","stsd","duration","spsLength","headerSize","objectType","prof","moov","generalTierFlag","vps","fromUint8","mfhd","stsc","chromaSubsamplingY","1960392wOfKKF","avc1","hypot","skip","nextTrackId","hdlr","generalProfileSpace","samplesPerChunk","defaultSampleFlags","isAudioEncryption","ftyp","moovToTrack","senc","ulaw","reference_type","minf","join","system_id","mp4a.","moofToSamples","ext","highBitdepth","5614iSTFtr","pssh","sampleDuration","defaultSampleSize","trak","mvhd","baseDataOffset","sps","horizresolution","aac","opcolor","iccProfile","entries","entryCount","frma","pps","keyframe","forEach","av1","tenc","sinf","10jhGeTm","514481gQlVWP","seqTier0","push","fromCharCode","length","fullRangeFlag","kidValue","G711PCMA","g7110m","references","data_format","frameCount","AAC","reference_ID","enca","padStart","type","traf","twelveBit","getFrameDuration","matrix","readString","AV1","g7110a","vSpacing","sequenceNumber","ceil","hev1.1.6.L93.B0","lengthSizeMinusOne","flags","mvhdTimecale","avc","initialPresentationDelayMinusOne","baseMediaDecodeTime","240VkNsMQ","ctts","balance","mdhd","encv","sampleCount","default_IsEncrypted","SAP_type","numOfArrays","tkhdDuration","substring","av1C","moof","HEVC","3284KZEuro","avc2","first_offset","readInt","alaw","2270qMYalF","pts","findBox","avc1.","samples","stco","size","gopId","configOBUs","avc3","generalProfileCompatibility","from","useEME","mdia","referenced_size","cts","mp4a","start","colr","sampleRate","dataOffset","box ","mvhdDurtion","avgFrameRate","smhd","read","entrySizes","tfdt","generalLevelIdc","AVCLevelIndication","seqProfile","nclx","vmhd","slice","vide","subsamples","vertresolution","avcC","kid","tkhd","AVC","220212BtLSQh","BytesOfClearData","graphicsmode","data","samplesize","initialPresentationDelayPresent","find","dataReferenceIndex","trun","co64","starts_with_SAP","generalProfileIdc","sampleRateIndex"];return(IC=function(){return t})()}function kC(t,e=0){return(t[e]<<24>>>0)+(t[e+1]<<16)+(t[e+2]<<8)+(t[e+3]||0)}function _C(t,e=0){const s=Math[PC(682)](2,32);return kC(t,e)*s+kC(t,e+4)}function CC(t,e){return Number(t+"."+e)}!function(t){const e=PC,s=t();for(;;)try{if(400273===-parseInt(e(477))/1+-parseInt(e(476))/2*(parseInt(e(474))/3)+-parseInt(e(618))/4*(parseInt(e(623))/5)+parseInt(e(526))/6+parseInt(e(548))/7*(parseInt(e(501))/8)+parseInt(e(664))/9*(-parseInt(e(569))/10)+parseInt(e(570))/11*(parseInt(e(604))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(IC);const DC={AAC:wC(557),G711PCMA:wC(593),G711PCMU:wC(578),MP3:"mp3"},LC={AVC:wC(601),HEVC:wC(490),AV1:wC(566)};class RC{static[wC(484)]=[96e3,88200,64e3,48e3,44100,32e3,24e3,22050,16e3,12e3,11025,8e3,7350];static getFrameDuration(t,e=9e4){return 1024*e/t}static[wC(506)](t){return RC[wC(484)].indexOf(t)}}function PC(t,e){const s=IC();return(PC=function(t,e){return s[t-=453]})(t,e)}function xC(t,e,s,i,r,n){const o=wC,a=[],h=r?.[o(560)],l=e[o(560)],c=i[o(560)],d=s[o(649)],u=n?.[o(560)];let p,f;u&&(p={},u[o(565)](t=>{p[t-1]=!0})),h&&(f=[],h.forEach(({count:t,offset:e})=>{const s=o;for(let i=0;i<t;i++)f[s(572)](e)}));let m,g=-1,y=0,A=0,b=0,v=0,S=0,E=l[0][o(533)],w=l[1]?l[1][o(481)]-1:1/0;return t[o(560)][o(565)](({count:t,delta:e})=>{const i=o;for(let r=0;r<t;r++)m={dts:y,duration:e,size:d[A]||s[i(496)],offset:c[b]+S,index:A},u&&(m[i(564)]=p[A],m.keyframe&&g++,m.gopId=g),f&&A<f[i(574)]&&(m[i(624)]=m.dts+f[A]),a.push(m),y+=e,A++,A<E?S+=m[i(629)]:(b++,S=0,b>=w&&(v++,w=l[v+1]?l[v+1][i(481)]-1:1/0),E+=l[v][i(533)])}),a}function MC(t,e){const s=wC;return t[s(671)]=TC(e,6),t[s(498)]=TC(e,24),t[s(494)]=TC(e,26),t[s(556)]=kC(e,28),t.vertresolution=kC(e,32),t[s(581)]=TC(e,40),t[s(512)]=TC(e,74),78}function BC(t,e){const s=wC;return t.dataReferenceIndex=TC(e,6),t[s(453)]=TC(e,16),t[s(496)]=TC(e,18),t[s(642)]=kC(e,24)/65536,28}function FC(t,e,s){const i=wC;if(!t)return;if(t.size!==t.data[i(574)])throw new Error(i(644)+t[i(586)]+" size !== data.length");const r={start:t.start,size:t[i(629)],headerSize:t[i(516)],type:t[i(586)]};return e&&(r[i(686)]=t[i(667)][t[i(516)]],r[i(599)]=function(t,e=0){return(t[e]<<16)+(t[e+1]<<8)+(t[e+2]||0)}(t[i(667)],t[i(516)]+1),r[i(516)]+=4),s(r,t[i(667)][i(493)](r[i(516)]),r[i(640)]+r.headerSize),r}const UC=function(...t){const e=wC,s=[];return t[e(565)](t=>{s[e(572)](function(t,e,s){const i=wC,r=String(s),n=0|e;let o=Math[i(596)](n/r[i(574)]);const a=[],h=String(t);for(;o--;)a[i(572)](r);return a[i(542)]("")[i(614)](0,n-h[i(574)])+h}(Number(t).toString(16),2,0))}),s[0]};class OC{static probe(t){const e=wC;return!!OC[e(625)](t,[e(536)])}static findBox(t,e,s=0){const i=wC,r=[];if(!t)return r;let n=0,o="",a=0;for(;t[i(574)]>7;){if(n=kC(t),o=String[i(573)][i(463)](null,t[i(493)](4,8)),a=8,1===n?(n=_C(t,8),a+=8):!n&&(n=t[i(574)]),!e[0]||o===e[0]){const h=t[i(493)](0,n);if(!(e[i(574)]<2))return OC[i(625)](h[i(493)](a),e[i(656)](1),s+a);r.push({start:s,size:n,headerSize:a,type:o,data:h})}s+=n,t=t[i(493)](n)}return r}static[wC(469)](t){return FC(t,!0,(t,e)=>{const s=PC;t[s(475)]=kC(e);let i=4;const r=1&t[s(599)],n=2&t[s(599)],o=8&t[s(599)],a=16&t[s(599)],h=32&t[s(599)];r&&(i+=4,t[s(554)]=kC(e,i),i+=4),n&&(t.sampleDescriptionIndex=kC(e,i),i+=4),o&&(t.defaultSampleDuration=kC(e,i),i+=4),a&&(t[s(551)]=kC(e,i),i+=4),h&&(t[s(534)]=kC(e,i))})}static[wC(502)](t){return FC(t,!0,(t,e)=>{const s=PC;let i=0;t[s(583)]=kC(e,i),i+=4,t.timescale=kC(e,i),i+=4,0===t[s(686)]?(t[s(680)]=kC(e,i),i+=4,t[s(620)]=kC(e,i),i+=4):(t[s(680)]=_C(e,i),i+=8,t[s(620)]=_C(e,i),i+=8),i+=2,t[s(579)]=[];const r=TC(e,i);i+=2;for(let n=0;n<r;n++){const r={};t[s(579)][s(572)](r);let n=kC(e,i);i+=4,r[s(540)]=n>>31&1,r[s(637)]=2147483647&n,r.subsegment_duration=kC(e,i),i+=4,n=kC(e,i),i+=4,r[s(674)]=n>>31&1,r[s(611)]=n>>28&7,r[s(509)]=268435455&n}})}static[wC(519)](t){return FC(t,!1,(t,e,s)=>{const i=PC;t[i(553)]=OC[i(553)](OC[i(625)](e,["mvhd"],s)[0]),t[i(552)]=OC[i(625)](e,[i(552)],s).map(t=>OC.trak(t)),t[i(549)]=OC.pssh(OC.findBox(e,[i(549)],s)[0])})}static[wC(553)](t){return FC(t,!0,(t,e)=>{const s=PC;let i=0;1===t[s(686)]?(t[s(684)]=kC(e,16),t[s(514)]=_C(e,20),i+=28):(t[s(684)]=kC(e,8),t[s(514)]=kC(e,12),i+=16),t[s(530)]=kC(e,i+76)})}static[wC(552)](t){return FC(t,!1,(t,e,s)=>{const i=PC;t[i(662)]=OC[i(662)](OC[i(625)](e,[i(662)],s)[0]),t.mdia=OC[i(636)](OC[i(625)](e,["mdia"],s)[0])})}static tkhd(t){return FC(t,!0,(t,e)=>{const s=PC,i=yC[s(522)](e);1===t[s(686)]?(i[s(648)](8),i.read(8),t.trackId=i[s(648)](4),i[s(648)](4),t.duration=i.read(8)):(i[s(648)](4),i[s(648)](4),t[s(475)]=i[s(648)](4),i[s(648)](4),t.duration=i[s(648)](4)),i[s(529)](16),t[s(590)]=[];for(let e=0;e<36;e++)t[s(590)][s(572)](i.read(1));i.back(36);const r=[];for(let t,e=0;e<3;e++)r[s(572)](CC(i[s(621)](2),i[s(621)](2))),r[s(572)](CC(i.readInt(2),i[s(621)](2))),t=i[s(621)](4),r[s(572)](CC(t>>30,1073741823&t));t.rotation=function(t){const e=PC;if(t[e(574)]<5)return 0;const s=Math[e(528)](t[0],t[3]),i=Math[e(528)](t[1],t[4]);return 0===s||0===i?0:180*Math.atan2(t[1]/i,t[0]/s)/Math.PI}(r),t[s(498)]=i.read(4),t.height=i.read(4)})}static[wC(636)](t){return FC(t,!1,(t,e,s)=>{const i=PC;t.mdhd=OC[i(607)](OC.findBox(e,["mdhd"],s)[0]),t[i(531)]=OC.hdlr(OC[i(625)](e,["hdlr"],s)[0]),t[i(541)]=OC[i(541)](OC[i(625)](e,[i(541)],s)[0])})}static[wC(607)](t){return FC(t,!0,(t,e)=>{const s=PC;let i=0;1===t[s(686)]?(t[s(684)]=kC(e,16),t.duration=_C(e,20),i+=28):(t[s(684)]=kC(e,8),t.duration=kC(e,12),i+=16);const r=TC(e,i);t.language=String[s(573)](96+(r>>10&31),96+(r>>5&31),96+(31&r))})}static[wC(531)](t){return FC(t,!0,(t,e)=>{const s=PC;0===t[s(686)]&&(t[s(473)]=String[s(573)][s(463)](null,e[s(493)](4,8)))})}static[wC(541)](t){return FC(t,!1,(t,e,s)=>{const i=PC;t[i(655)]=OC[i(655)](OC.findBox(e,[i(655)],s)[0]),t.smhd=OC[i(647)](OC.findBox(e,[i(647)],s)[0]),t[i(497)]=OC[i(497)](OC[i(625)](e,[i(497)],s)[0])})}static[wC(655)](t){return FC(t,!0,(t,e)=>{const s=PC;t[s(666)]=TC(e),t[s(558)]=[TC(e,2),TC(e,4),TC(e,6)]})}static[wC(647)](t){return FC(t,!0,(t,e)=>{t[PC(606)]=TC(e)})}static[wC(497)](t){return FC(t,!1,(t,e,s)=>{const i=PC;t[i(513)]=OC[i(513)](OC[i(625)](e,[i(513)],s)[0]),t[i(486)]=OC.stts(OC[i(625)](e,[i(486)],s)[0]),t[i(605)]=OC[i(605)](OC[i(625)](e,[i(605)],s)[0]),t[i(524)]=OC[i(524)](OC[i(625)](e,[i(524)],s)[0]),t[i(467)]=OC[i(467)](OC.findBox(e,["stsz"],s)[0]),t[i(628)]=OC[i(628)](OC[i(625)](e,[i(628)],s)[0]),!t[i(628)]&&(t.co64=OC[i(673)](OC[i(625)](e,[i(673)],s)[0]),t.stco=t[i(673)]);const r=t[i(513)][i(560)][0]?.[i(568)]?.schi?.[i(567)].default_IV_size;t[i(489)]=OC[i(489)](OC[i(625)](e,[i(489)],s)[0]),t.senc=OC.senc(OC[i(625)](e,["senc"],s)[0],r)})}static[wC(538)](t,e=8){return FC(t,!0,(t,s)=>{const i=PC;let r=0;const n=kC(s,r);r+=4,t[i(627)]=[];for(let o=0;o<n;o++){const n={};n[i(483)]=[];for(let t=0;t<e;t++)n[i(483)][t]=s[r+t];if(r+=e,2&t[i(599)]){n[i(658)]=[];const t=TC(s,r);r+=2;for(let e=0;e<t;e++){const t={};t[i(665)]=TC(s,r),r+=2,t[i(685)]=kC(s,r),r+=4,n.subsamples[i(572)](t)}}t[i(627)][i(572)](n)}})}static[wC(549)](t){return FC(t,!0,(t,e)=>{const s=PC,i=[],r=[];let n=0;for(let t=0;t<16;t++)r[s(572)](UC(e[n+t]));if(n+=16,t[s(686)]>0){const t=kC(e,n);n+=4;for(let r=0;r<(""+t)[s(574)];r++)for(let t=0;t<16;t++){const t=e[n];n+=1,i.push(UC(t))}}const o=kC(e,n);t[s(454)]=o,n+=4,t[s(661)]=i,t[s(543)]=r,t[s(688)]=e})}static[wC(513)](t){return FC(t,!0,(t,e,s)=>{const i=PC;t.entryCount=kC(e),t[i(560)]=OC[i(625)](e[i(493)](4),[],s+4).map(t=>{const e=i;switch(t[e(586)]){case e(466):return OC[e(466)](t);case e(527):case e(619):case e(632):case"avc4":return OC.avc1(t);case e(472):case"hev1":return OC[e(472)](t);case e(639):return OC.mp4a(t);case"alaw":case e(539):return OC.alaw(t);case e(584):return FC(t,!1,(t,s,i)=>{const r=e;t[r(453)]=TC(s,16),t[r(668)]=TC(s,18),t[r(642)]=kC(s,24)/65536,s=s[r(493)](28),t.sinf=OC[r(568)](OC[r(625)](s,[r(568)],i)[0]),t[r(460)]=OC[r(460)](OC[r(625)](s,["esds"],i)[0])});case e(608):return FC(t,!1,(t,s,i)=>{const r=e;t[r(498)]=TC(s,24),t[r(494)]=TC(s,26),t[r(556)]=kC(s,28),t[r(659)]=kC(s,32),s=s[r(493)](78),t[r(568)]=OC[r(568)](OC[r(625)](s,["sinf"],i)[0]),t.avcC=OC.avcC(OC[r(625)](s,["avcC"],i)[0]),t.hvcC=OC[r(492)](OC.findBox(s,[r(492)],i)[0]),t.pasp=OC.pasp(OC.findBox(s,[r(510)],i)[0])})}})[i(487)](Boolean)})}static[wC(567)](t){return FC(t,!1,(t,e)=>{const s=PC;let i=6;t[s(610)]=e[i],i+=1,t[s(478)]=e[i],i+=1,t[s(471)]=[];for(let r=0;r<16;r++)t[s(471)][s(572)](UC(e[i])),i+=1})}static[wC(508)](t){return FC(t,!1,(t,e,s)=>{const i=PC;t[i(567)]=OC.tenc(OC[i(625)](e,["tenc"],s)[0])})}static[wC(568)](t){return FC(t,!1,(t,e,s)=>{const i=PC;t[i(508)]=OC[i(508)](OC[i(625)](e,[i(508)],s)[0]),t[i(562)]=OC[i(562)](OC[i(625)](e,[i(562)],s)[0])})}static[wC(562)](t){return FC(t,!1,(t,e)=>{const s=PC;t[s(580)]="";for(let i=0;i<4;i++)t[s(580)]+=String[s(573)](e[i])})}static[wC(641)](t){return FC(t,!1,(e,s)=>{const i=PC,r=yC[i(522)](s);e[i(667)]=t[i(667)],e[i(681)]=r[i(591)](4),e[i(681)]===i(654)?(e[i(457)]=r[i(648)](2),e.transferCharacteristics=r.read(2),e[i(462)]=r[i(648)](2),e[i(575)]=r[i(648)](1)>>7):("rICC"===e[i(681)]||e[i(681)]===i(518))&&(e[i(559)]=s[i(479)]())})}static av01(t){return FC(t,!1,(t,e,s)=>{const i=PC,r=MC(t,e),n=e[i(493)](r);s+=r,t[i(615)]=OC[i(615)](OC[i(625)](n,[i(615)],s)[0]),t.colr=OC[i(641)](OC.findBox(n,[i(641)],s)[0])})}static[wC(615)](t){return FC(t,!1,(e,s)=>{const i=PC;e[i(667)]=t[i(667)];const r=yC[i(522)](s),n=EC.fromByte(r,4);let o;e[i(677)]=n[i(648)](1),e[i(686)]=n[i(648)](7),e[i(653)]=n[i(648)](3),e[i(499)]=n[i(648)](5),e[i(571)]=n.read(1),e[i(547)]=n[i(648)](1),e.twelveBit=n[i(648)](1),e[i(465)]=n[i(648)](1),e[i(679)]=n[i(648)](1),e[i(525)]=n[i(648)](1),e.chromaSamplePosition=n[i(648)](2),e.reserved=n.read(3),e[i(669)]=n[i(648)](1),e.initialPresentationDelayPresent?e[i(602)]=n[i(648)](4):e[i(602)]=0,e[i(631)]=r[i(479)](),2===e[i(499)]&&1===e[i(547)]?o=1===e[i(588)]?"12":"10":e[i(653)]<=2&&(o=1===e.highBitdepth?"10":"08"),e[i(456)]=[i(466),e[i(653)],(e[i(499)]<10?"0"+e[i(499)]:e[i(499)])+(e[i(571)]?"H":"M"),o][i(542)](".")})}static[wC(527)](t){return FC(t,!1,(t,e,s)=>{const i=PC,r=MC(t,e),n=e[i(493)](r);s+=r,t[i(660)]=OC.avcC(OC[i(625)](n,[i(660)],s)[0]),t.pasp=OC[i(510)](OC[i(625)](n,["pasp"],s)[0])})}static[wC(660)](t){return FC(t,!1,(e,s)=>{const i=PC;e[i(667)]=t.data,e[i(485)]=s[0],e.AVCProfileIndication=s[1],e[i(488)]=s[2],e[i(652)]=s[3],e.codec=function(t){const e=wC;let s,i=e(626);for(let r=0;r<3;r++)s=t[r].toString(16),s[e(574)]<2&&(s="0"+s),i+=s;return i}([s[1],s[2],s[3]]),e[i(598)]=3&s[4],e[i(515)]=31&s[5],e[i(555)]=[];let r=6;for(let t=0;t<e.spsLength;t++){const t=TC(s,r);r+=2,e[i(555)].push(s[i(493)](r,r+t)),r+=t}e[i(683)]=s[r],r+=1,e[i(563)]=[];for(let t=0;t<e[i(683)];t++){const t=TC(s,r);r+=2,e[i(563)][i(572)](s[i(493)](r,r+=t)),r+=t}})}static[wC(472)](t){return FC(t,!1,(t,e,s)=>{const i=PC,r=MC(t,e),n=e[i(493)](r);s+=r,t[i(492)]=OC[i(492)](OC[i(625)](n,[i(492)],s)[0]),t[i(510)]=OC.pasp(OC[i(625)](n,[i(510)],s)[0])})}static[wC(492)](t){return FC(t,!1,(e,s)=>{const i=PC;e[i(667)]=t[i(667)],e[i(456)]=i(597),e[i(485)]=s[0];const r=s[1];e[i(532)]=r>>6,e[i(520)]=(32&r)>>5,e[i(675)]=31&r,e[i(633)]=kC(s,2),e.generalConstraintIndicatorFlags=s.subarray(6,12),e[i(651)]=s[12],e[i(646)]=TC(s,19),e[i(612)]=s[22],e[i(521)]=[],e.sps=[],e.pps=[];let n=23,o=0,a=0,h=0;for(let t=0;t<e.numOfArrays;t++){o=63&s[n],a=TC(s,n+1),n+=3;const t=[];for(let e=0;e<a;e++)h=TC(s,n),n+=2,t[i(572)](s[i(493)](n,n+h)),n+=h;32===o?e[i(521)][i(572)](...t):33===o?e[i(555)][i(572)](...t):34===o&&e[i(563)].push(...t)}})}static[wC(510)](t){return FC(t,!1,(t,e)=>{const s=PC;t[s(482)]=kC(e),t[s(594)]=kC(e,4)})}static[wC(639)](t){return FC(t,!1,(t,e,s)=>{const i=PC,r=BC(t,e);t.esds=OC[i(460)](OC[i(625)](e[i(493)](r),["esds"],s+r)[0])})}static[wC(460)](t){return FC(t,!0,(t,e)=>{const s=PC;t[s(456)]=s(544);let i=0,r=0,n=0,o=0;for(;e[s(574)];){for(i=0,o=e[i],r=e[i+1],i+=2;128&r;)n=(127&r)<<7,r=e[i],i+=1;if(n+=127&r,3===o)e=e.subarray(i+3);else{if(4!==o){if(5===o){const r=t[s(507)]=e[s(493)](i,i+n);let o=(248&r[0])>>3;return 31===o&&r[s(574)]>=2&&(o=32+((7&r[0])<<3)+((224&r[1])>>5)),t.objectType=o,t.codec+=o.toString(16),void("."===t[s(456)][t.codec[s(574)]-1]&&(t[s(456)]=t[s(456)][s(614)](0,t.codec[s(574)]-1)))}return void("."===t.codec[t[s(456)][s(574)]-1]&&(t[s(456)]=t.codec[s(614)](0,t[s(456)][s(574)]-1)))}t[s(456)]+=(e[i].toString(16)+".")[s(585)](3,"0"),e=e.subarray(i+13)}}})}static alaw(t){return FC(t,!1,(t,e)=>{BC(t,e)})}static[wC(486)](t){return FC(t,!0,(t,e)=>{const s=PC,i=kC(e),r=[];let n=4;for(let t=0;t<i;t++)r[s(572)]({count:kC(e,n),delta:kC(e,n+4)}),n+=8;t.entryCount=i,t.entries=r})}static[wC(605)](t){return FC(t,!0,(t,e)=>{const s=PC,i=kC(e),r=[];let n=4;if(1===t[s(686)])for(let t=0;t<i;t++)r[s(572)]({count:kC(e,n),offset:kC(e,n+4)}),n+=8;else for(let t=0;t<i;t++)r[s(572)]({count:kC(e,n),offset:-(1+~kC(e,n+4))}),n+=8;t[s(561)]=i,t.entries=r})}static[wC(524)](t){return FC(t,!0,(t,e)=>{const s=PC,i=kC(e),r=[];let n=4;for(let t=0;t<i;t++)r[s(572)]({firstChunk:kC(e,n),samplesPerChunk:kC(e,n+4),sampleDescriptionIndex:kC(e,n+8)}),n+=12;t.entryCount=i,t[s(560)]=r})}static[wC(467)](t){return FC(t,!0,(t,e)=>{const s=PC,i=kC(e),r=kC(e,4),n=[];if(!i){let t=8;for(let i=0;i<r;i++)n[s(572)](kC(e,t)),t+=4}t.sampleSize=i,t[s(609)]=r,t[s(649)]=n})}static[wC(628)](t){return FC(t,!0,(t,e)=>{const s=PC,i=kC(e),r=[];let n=4;for(let t=0;t<i;t++)r[s(572)](kC(e,n)),n+=4;t[s(561)]=i,t.entries=r})}static[wC(673)](t){return FC(t,!0,(t,e)=>{const s=PC,i=kC(e),r=[];let n=4;for(let t=0;t<i;t++)r[s(572)](_C(e,n)),n+=8;t[s(561)]=i,t[s(560)]=r})}static[wC(489)](t){return FC(t,!0,(t,e)=>{const s=PC,i=kC(e),r=[];let n=4;for(let t=0;t<i;t++)r[s(572)](kC(e,n)),n+=4;t[s(561)]=i,t[s(560)]=r})}static[wC(616)](t){return FC(t,!1,(t,e,s)=>{const i=PC;t[i(523)]=OC.mfhd(OC[i(625)](e,[i(523)],s)[0]),t.traf=OC.findBox(e,[i(587)],s)[i(470)](t=>OC.traf(t))})}static[wC(523)](t){return FC(t,!0,(t,e)=>{t.sequenceNumber=kC(e)})}static traf(t){return FC(t,!1,(t,e,s)=>{const i=PC;t[i(469)]=OC.tfhd(OC[i(625)](e,["tfhd"],s)[0]),t[i(650)]=OC[i(650)](OC.findBox(e,[i(650)],s)[0]),t[i(672)]=OC[i(672)](OC[i(625)](e,["trun"],s)[0])})}static[wC(672)](t){return FC(t,!0,(t,e)=>{const s=PC,{version:i,flags:r}=t,n=e[s(574)],o=t[s(609)]=kC(e);let a=4;if(n>a&&1&r&&(t[s(643)]=-(1+~kC(e,a)),a+=4),n>a&&4&r&&(t[s(480)]=kC(e,a),a+=4),t.samples=[],n>a){let n;for(let h=0;h<o;h++)n={},256&r&&(n[s(514)]=kC(e,a),a+=4),512&r&&(n[s(629)]=kC(e,a),a+=4),1024&r&&(n.flags=kC(e,a),a+=4),2048&r&&(n[s(638)]=i?-(1+~kC(e,a+4)):kC(e,a),a+=4),t[s(627)][s(572)](n)}})}static[wC(650)](t){return FC(t,!0,(t,e)=>{const s=PC;1===t[s(686)]?t[s(603)]=_C(e):t[s(603)]=kC(e)})}static[wC(458)](t){const e=wC;return!!OC.findBox(t,[e(536)])}static[wC(504)](t){return{isLeading:(12&t[0])>>>2,dependsOn:3&t[0],isDependedOn:(192&t[1])>>>6,hasRedundancy:(48&t[1])>>>4,paddingValue:(14&t[1])>>>1,isNonSyncSample:1&t[1],degradationPriority:t[2]<<8|t[3]}}static[wC(537)](t,e,s){const i=wC,r=t[i(552)];if(!r||!r[i(574)])return;const n=r.find(t=>t[i(636)]?.[i(531)]?.handlerType===i(657)),o=r[i(670)](t=>t[i(636)]?.hdlr?.[i(473)]===i(687));if(n&&e){const s=e,r=n[i(662)]?.[i(475)];null!=r&&(s.id=n[i(662)][i(475)]),s[i(613)]=n[i(662)][i(514)],s[i(645)]=t.mvhd[i(514)],s[i(600)]=t[i(553)][i(684)],s[i(684)]=s[i(495)]=n[i(636)][i(607)][i(684)],s[i(514)]=n.mdia[i(607)][i(514)]||s.mvhdDurtion/s[i(600)]*s.timescale,s[i(500)]=n[i(662)][i(500)],s[i(590)]=n[i(662)].matrix;const o=n.mdia[i(541)].stbl[i(513)][i(560)][0];if(!o)throw new Error(i(511));if(s.width=o[i(498)],s[i(494)]=o[i(494)],o.pasp&&(s.sarRatio=[o[i(510)][i(482)],o[i(510)][i(594)]]),o[i(615)])s[i(464)]=LC[i(592)],s[i(456)]=o[i(615)].codec,s.av1C=o[i(615)][i(667)],o.colr&&(s[i(641)]=o.colr[i(667)]);else if(o.hvcC)s.codecType=LC[i(617)],s[i(456)]=o[i(492)][i(456)],s.vps=o[i(492)][i(521)],s[i(555)]=o.hvcC[i(555)],s[i(563)]=o[i(492)][i(563)],s.hvcC=o[i(492)].data;else{if(!o[i(660)])throw new Error("unknown video stsd entry");s.codecType=LC[i(663)],s.codec=o.avcC.codec,s[i(555)]=o[i(660)][i(555)],s[i(563)]=o.avcC.pps}s.present=!0,s[i(546)]={},s[i(546)][i(489)]=n.mdia?.minf?.[i(497)]?.[i(489)],s.ext[i(605)]=n[i(636)]?.[i(541)]?.stbl?.[i(605)],o&&o[i(586)]===i(608)&&(s[i(491)]=!0,o[i(471)]=o[i(568)]?.[i(508)]?.[i(567)][i(471)],o[i(610)]=o[i(568)]?.schi?.[i(567)][i(610)],o[i(478)]=o.sinf?.[i(508)]?.[i(567)].default_IV_size,s.videoSenc=n[i(636)][i(541)][i(497)][i(538)]&&n[i(636)].minf[i(497)][i(538)][i(627)],o[i(580)]=o[i(568)]?.[i(562)]?.data_format,s.useEME=t[i(635)],s[i(576)]=t[i(576)],s[i(549)]=t[i(549)],s[i(608)]=o)}if(o&&s){const e=s,r=o[i(662)]?.[i(475)];null!=r&&(e.id=o[i(662)].trackId),e.tkhdDuration=o[i(662)][i(514)],e[i(645)]=t[i(553)][i(514)],e[i(600)]=t.mvhd.timescale,e[i(684)]=e.formatTimescale=o[i(636)].mdhd[i(684)],e.duration=o[i(636)].mdhd[i(514)]||e[i(645)]/e[i(600)]*e.timescale;const n=o[i(636)][i(541)].stbl[i(513)][i(560)][0];switch(e[i(496)]=n.sampleSize,e[i(642)]=n.sampleRate,e[i(453)]=n[i(453)],e[i(503)]=!0,n[i(586)]){case i(622):e.codecType=e[i(456)]=DC[i(577)],e.sampleRate=8e3;break;case i(539):e[i(464)]=e[i(456)]=DC.G711PCMU,e[i(642)]=8e3;break;default:n[i(586)][i(461)](i(455))?e[i(464)]=e.codec=DC[i(678)]:(e[i(464)]=DC[i(582)],e[i(550)]=RC[i(589)](e[i(642)],e[i(684)]),e.sampleRateIndex=RC[i(506)](e[i(642)]),e[i(517)]=n[i(460)]?.[i(517)]||2,n[i(460)]&&n[i(460)].config&&(e[i(507)]=Array[i(634)](n[i(460)][i(507)])),e[i(456)]=n.esds?.[i(456)]||i(468))}e[i(550)]=RC[i(589)](e[i(642)],e[i(684)]),e[i(517)]=n.esds?.[i(517)]||2,n[i(460)]&&(n.esds.config?e[i(507)]=Array[i(634)](n[i(460)][i(507)]):console.warn("esds config is null")),e[i(456)]=n.esds?.[i(456)]||i(468),e[i(676)]=RC[i(506)](e[i(642)]),e.ext={},e.ext[i(489)]=o[i(636)]?.minf?.[i(497)]?.[i(489)],e[i(546)][i(605)]=o[i(636)]?.minf?.[i(497)]?.[i(605)],e[i(503)]=!0,n&&n.type===i(584)&&(e.isAudioEncryption=!0,n[i(580)]=n[i(568)]?.[i(562)]?.[i(580)],n[i(471)]=n[i(568)]?.[i(508)]?.[i(567)][i(471)],n[i(610)]=n.sinf?.schi?.[i(567)][i(610)],n[i(478)]=n[i(568)]?.[i(508)]?.[i(567)].default_IV_size,e.audioSenc=o[i(636)][i(541)].stbl[i(538)]&&o[i(636)][i(541)][i(497)].senc[i(627)],e.useEME=t.useEME,e[i(576)]=t[i(576)],e[i(584)]=n)}if(s&&(s[i(491)]=!!e&&e.isVideoEncryption),e&&(e.isAudioEncryption=!!s&&s[i(535)]),e?.[i(608)]||s?.[i(584)]){const t=e?.[i(608)]?.default_KID,r=s?.[i(584)]?.default_KID,n=t||r?(t||r).join(""):null;e&&(e[i(661)]=n),s&&(s[i(661)]=n)}return e&&(e[i(599)]=3841),s&&(s.flags=1793),{videoTrack:e,audioTrack:s}}static evaluateDefaultDuration(t,e,s){const i=wC,r=e?.[i(627)]?.[i(574)];if(!r)return 1024;return 1024*r/e[i(684)]*t.timescale/s}static[wC(545)](t,e,s){const i=wC,r={};return t[i(523)]&&(e&&(e[i(595)]=t[i(523)][i(595)]),s&&(s[i(595)]=t[i(523)][i(595)])),t[i(587)][i(565)](({tfhd:t,tfdt:n,trun:o})=>{const a=i;if(!t||!o)return;n&&(e&&e.id===t[a(475)]&&(e[a(603)]=n[a(603)]),s&&s.id===t.trackId&&(s[a(603)]=n[a(603)]));const h=t[a(551)]||0,l=t[a(459)]||OC.evaluateDefaultDuration(e,s,o[a(627)].length||o.sampleCount);let c=o[a(643)]||0,d=0,u=-1;const p=o[a(599)]||0,f=t[a(599)]||0;if(!o[a(627)].length&&o[a(609)]){r[t[a(475)]]=[];for(let e=0;e<o.sampleCount;e++){const s=0===e&&4&p?o.firstSampleFlags:32&f?t[a(534)]:void 0,i=void 0!==s?!(16842752&s):0===e,n={offset:c,dts:d,duration:l,size:h,gopId:u,keyframe:i};i&&(u++,n[a(630)]=u),r[t.trackId][a(572)](n),d+=l,c+=h}}else r[t[a(475)]]=o[a(627)][a(470)]((e,s)=>{const i=a,r=null!==e[i(599)]&&void 0!==e.flags?e[i(599)]:0===s&&4&p?o[i(480)]:32&f?t.defaultSampleFlags:void 0,n=void 0!==r?!(16842752&r):0===s;return(e={offset:c,dts:d,pts:d+(e.cts||0),duration:e[i(514)]||l,size:e[i(629)]||h,gopId:u,keyframe:n})[i(564)]&&(u++,e[i(630)]=u),d+=e[i(514)],c+=e[i(629)],e})}),r}static[wC(505)](t){const e=wC,s=t[e(552)];if(!s||!s[e(574)])return;const i=s.find(t=>"vide"===t.mdia?.hdlr?.[e(473)]),r=s.find(t=>"soun"===t[e(636)]?.hdlr?.[e(473)]);if(!i&&!r)return;let n,o;if(i){const t=i[e(636)]?.minf?.[e(497)];if(!t)return;const{stts:s,stsc:r,stsz:o,stco:a,stss:h,ctts:l}=t;if(!(s&&r&&o&&a&&h))return;n=xC(s,r,o,a,l,h)}if(r){const t=r[e(636)]?.[e(541)]?.[e(497)];if(!t)return;const s=r[e(636)].mdhd?.[e(684)],{stts:i,stsc:n,stsz:a,stco:h}=t;if(!(s&&i&&n&&a&&h))return;o=xC(i,n,a,h)}return{videoSamples:n,audioSamples:o}}}const NC=VC;function VC(t,e){const s=jC();return(VC=function(t,e){return s[t-=496]})(t,e)}function jC(){const t=["end","terminate","_doDecodeVideo","reset","bound","hlsFmp4","_isDestroyed","sps","seekSampleRange","correctSamplePts","isUseMSE","channelCount","4988109hAtenR","_basefps","objectType","isInitVideo","pause","_sendAccADTSHeader","keyframe","getSampleAudioListLength","video","demux","checkInitVideo","getBuferredDuration","demuxStart","5886896qrqQWO","audio","debugLevel","G711PCMU","floor","push","hls264UseOldDemuxer","concat","geVodLoadedTime","isPlayVodNotUseMSE","isAudioAac","emit","subarray","_off()","videoData audio init success and type is","audioListLength","byteLength","duration","data","3045192qsRFkN","keys","listen playVodRateChange","onmessage","videoListLength","1120hpGZlx","revokeObjectURL","_opt","resume","_initLoopWorker()","isPlayVod","video init success","cannot found moov box","addAudioTagHeader","tempSampleListInfo","_isUseWorker","h265","set","debugLog","isInitAudio","URL","pps","isHevc","playVodTimeCache","getPlayVodDuration","_doDecodeAudio","forEach","destroy","codec","allListLength","cmd","clearBuffer","_hasCalcFps","samples","cleanSampleList","player","size","moofToSamples","baseMediaDecodeTime","debug","303921pIfICe","_prevPlayVodTimeCache","decodeAudio","handlePlayVodRateChange","updateStats","payload","init","TAG_NAME","_doDecodeByHls","workerClearTimeout","playVod","demuxNextFrame","videoTrack","sort","setSeekingTime","audioData audio init success and type is","sampleRate","clear","101105kmbAco","gopId","setPlayVodBufferedTime","isAudioG711u","vps","findBox","_postMessageToLoopWorker","getSampleRange","postMessage","2ubDLNq","4790728MVnCIC","_off","length","audioTrack","loopWorker","codecType","dts","cleanSampleListAndSetSeekTime","pts","sampleRateIndex","_initLoopWorker","1122148vRLKqg","AAC","offset","moov","isIFrame","type","moof","start","_times","demuxNextIFrame","decodeVideo","G711PCMA","workerUrl","loop worker is not init, can not post message","setFps","_calcDecodeFps","checkInitAudio","isPlayer","map","off","isAudioG711a","54QXbrFr"];return(jC=function(){return t})()}!function(t){const e=VC,s=t();for(;;)try{if(652498===-parseInt(e(518))/1*(parseInt(e(506))/2)+-parseInt(e(584))/3+-parseInt(e(507))/4+parseInt(e(497))/5*(parseInt(e(539))/6)+-parseInt(e(552))/7+parseInt(e(565))/8+-parseInt(e(624))/9*(-parseInt(e(589))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(jC);class WC extends If{constructor(t){const e=VC;super(t),this.player=t,this.TAG_NAME="HlsFmp4Demux",this.reset(),this.tempSampleListInfo={},this.videoTrack={id:1,samples:[],sps:[],pps:[],vps:[],codec:""},this[e(510)]={id:2,samples:[],sampleRate:0,channelCount:0,codec:"",codecType:""},this[e(633)]=null,this[e(530)]=null,this[e(511)]=null,this[e(544)]={handlePlayVodRateChange:this.handlePlayVodRateChange.bind(this)},this[e(599)]()&&this[e(517)](),this.player.isPlayVod()&&this[e(599)]()&&this[e(619)].on(q.playVodRateChange,this[e(544)][e(627)]),t[e(602)](this.TAG_NAME,e(630))}destroy(){const t=VC;super[t(611)](),this[t(530)]&&(URL[t(590)](this[t(530)]),this[t(530)]=null),this[t(633)]&&(clearTimeout(this.workerClearTimeout),this[t(633)]=null),this[t(511)]&&(this.loopWorker[t(505)]({cmd:t(611)}),this[t(511)][t(541)](),this[t(511)]=null),this[t(543)](),this[t(544)]=null,this[t(619)][t(602)](this[t(631)],"destroy")}[NC(508)](){const t=NC;super[t(508)](),this[t(619)].isPlayVod()&&this[t(599)]()&&(this[t(619)][t(602)](this[t(631)],t(578)),this[t(619)][t(537)](q.playVodRateChange,this[t(544)][t(627)]))}[NC(543)](){const t=NC;this._hasCalcFps=!1,this[t(636)]=null,this[t(510)]=null,this.isInitVideo=!1,this.isInitAudio=!1,this[t(553)]=25,this[t(625)]=0,this[t(598)]=null}handlePlayVodRateChange(t){const e=NC;this[e(619)][e(602)](this[e(631)],e(586),t),this[e(503)]("updatePlayRate",{rate:t})}[NC(561)](t,e){const s=NC;!this[s(619)][s(526)][s(564)]&&(this[s(619)][s(526)][s(564)]=os());let i=this.audioTrack,r=this.videoTrack;if(this.checkInitAudio(),this.checkInitVideo(),i.samples=[],r[s(617)]=[],e){if(this[s(619)].updateStats({abps:e.byteLength}),xi(this.isInitAudio)){const t=OC[s(502)](e,[s(521)])[0];if(!t)return void this[s(619)].debugError(this.TAG_NAME,s(596));OC.moovToTrack(OC[s(521)](t),null,i),this[s(534)]()&&(this[s(619)].debugLog(this[s(631)],s(639),i[s(512)]),this[s(575)]()&&this._sendAccADTSHeader(i))}const t=OC[s(502)](e,[s(524)])[0];if(t){const r=OC[s(621)](OC[s(524)](t),null,i)[i.id],n=i[s(622)];if(r){const o=t.start;r[s(536)](t=>{const r=s;t.offset+=o;const a=e[r(577)](t[r(520)],t[r(520)]+t[r(620)]),h=t.dts+n,l=this[r(597)](a);i.samples.push({type:W[r(566)],pts:h,dts:h,payload:l,duration:t[r(582)],size:l.byteLength})})}}}if(t){if(this[s(619)].updateStats({vbps:8*t[s(581)]}),xi(this.isInitVideo)&&xi(this[s(603)])){const e=OC[s(502)](t,["moov"])[0];if(!e)throw new Error(s(596));if(OC.moovToTrack(OC[s(521)](e),r,i),this.checkInitAudio()&&(this.player[s(602)](this[s(631)],s(579),i[s(512)]),this[s(575)]()&&this[s(557)](i)),this.checkInitVideo()){this[s(619)][s(602)](this[s(631)],s(595));const t=r[s(512)]===Et[s(600)];if(xi(t)&&this[s(619)][s(535)]()&&this.player._opt[s(571)])return void this[s(619)][s(576)](q[s(571)]);let e=null;t?r[s(547)].length&&r[s(501)][s(509)]&&r[s(605)][s(509)]&&(e=yl({sps:r[s(547)][0],pps:r[s(605)][0],vps:r[s(501)][0]})):r.sps[s(509)]&&r[s(605)][s(509)]&&(e=zh({sps:r[s(547)][0],pps:r[s(605)][0]})),e&&(this.player[s(602)](this[s(631)],"seqHeader"),this[s(632)](e,W.video,0,!0,0))}}const e=OC.findBox(t,[s(524)]);e[s(509)]>0&&e[s(610)](e=>{const n=s;if(!e)return;const o=OC.moofToSamples(OC[n(524)](e),r,i),a=r.baseMediaDecodeTime,h=i[n(622)],l=e[n(525)];Object[n(585)](o)[n(610)](e=>{const s=n;r.id==e?o[e][s(536)](e=>{const i=s;e.offset+=l;const n={type:W.video,pts:(e.pts||e[i(513)])+a,dts:e[i(513)]+a,payload:null,isIFrame:!1};n[i(582)]=e[i(582)],n[i(498)]=e.gopId,e[i(558)]&&(n.isIFrame=!0);const o=t.subarray(e.offset,e[i(520)]+e[i(620)]);n[i(629)]=o,r[i(617)][i(570)](n)}):i.id==e&&o[e][s(536)](e=>{const r=s;e[r(520)]+=l;const n=t[r(577)](e[r(520)],e[r(520)]+e[r(620)]),o=e[r(513)]+h,a=this[r(597)](n);i[r(617)][r(570)]({type:W[r(566)],pts:o,dts:o,payload:a,duration:e[r(582)],size:a[r(581)]})})})})}const n=9e4===r.timescale?450:5;this[s(549)](r,n),this[s(549)](i,n);const o=r[s(617)][s(572)](i[s(617)]);o[s(637)]((t,e)=>{const i=s;return t[i(513)]-e[i(513)]}),9e4===r.timescale&&o[s(610)](t=>{const e=s;t[e(513)]=Math.floor(t.dts/90),t[e(515)]=Math[e(569)](t.pts/90),t.cts=t[e(515)]-t[e(513)],t[e(582)]&&(t[e(582)]=Math[e(569)](t[e(582)]/90))}),o.forEach(t=>{const e=s,i=new Uint8Array(t[e(629)]);delete t[e(629)],this[e(599)]()?this.loopWorker[e(505)]({...t,payload:i,cmd:"sample"},[i.buffer]):t[e(523)]===W[e(560)]?this[e(542)]({...t,payload:i}):t.type===W[e(566)]&&this[e(609)]({...t,payload:i})}),xi(this[s(616)])&&this[s(599)]()&&(this[s(616)]=this[s(533)](o),this._hasCalcFps&&this[s(619)][s(594)]()&&this[s(619)][s(634)][s(532)](this[s(553)]))}checkInitAudio(){const t=NC;return this[t(603)]=!!(this.audioTrack[t(640)]&&this[t(510)].channelCount&&this[t(510)].codec),this[t(603)]}[NC(575)](){const t=NC;return this[t(510)][t(512)]===DC[t(519)]}[NC(538)](){const t=NC;return this[t(510)].codecType===DC[t(529)]}isAudioG711u(){const t=NC;return this[t(510)][t(512)]===DC[t(568)]}[NC(562)](){const t=NC;return this[t(555)]=!!(this[t(636)].pps.length&&this[t(636)][t(547)][t(509)]&&this[t(636)][t(612)]),this[t(555)]}_sendAccADTSHeader(t){const e=NC,s=De({profile:t[e(554)],sampleRate:t[e(516)],channel:t[e(551)]});this._doDecodeByHls(s,W.audio,0,!0,0)}[NC(517)](){const t=NC;this[t(619)].debugLog(this.TAG_NAME,t(593));const e=Ai(eC);let s=new Worker(e);this[t(530)]=e,this[t(633)]=setTimeout(()=>{const e=t;window[e(604)][e(590)](this[e(530)]),this.workerUrl=null,this.workerClearTimeout=null},P),s[t(505)]({cmd:"init",options:{type:t(545),seekingMaxDiff:1e4,debug:this[t(619)][t(591)][t(623)],debugUuid:this[t(619)][t(591)].debugUuid,debugLevel:this[t(619)][t(591)][t(567)]}}),s[t(587)]=e=>{const s=t,i=e[s(583)];if(!this[s(546)])switch(i[s(614)]){case s(528):this._doDecodeVideo(i);break;case s(626):this[s(609)](i);break;case"sampleListInfo":if(this[s(598)]=i,this[s(619)][s(574)]()){const t=this[s(573)](),e=this[s(619)][s(608)]();if(t&&e){let i=t/(1e3*e);i!==this[s(625)]&&(this[s(619)][s(499)](t),this[s(619)][s(576)](q[s(607)],i)),this._prevPlayVodTimeCache=i}}}},this[t(511)]=s}[NC(503)](t,e){const s=NC;this[s(599)]()&&(this[s(511)]?this.loopWorker.postMessage({cmd:t,...e}):this[s(619)].debugWarn(this[s(631)],s(531)))}_doDecodeAudio(t){const e=NC,s=new Uint8Array(t[e(629)]);this[e(619)].updateStats({abps:s[e(581)]});let i=this.cryptoPayloadAudio(s);this._doDecodeByHls(i,W[e(566)],t[e(513)],!1,0)}_doDecodeVideo(t){const e=NC,s=new Uint8Array(t[e(629)]);let i=null;i=t[e(606)]?Al(s,t[e(522)]):Hh(s,t.isIFrame),this.player[e(628)]({dts:t[e(513)],vbps:8*i[e(581)]});const r=t[e(515)]-t[e(513)];let n=this.cryptoPayload(i,t[e(522)]);this[e(632)](n,W[e(560)],t[e(513)],t[e(522)],r)}[NC(563)](){return this[NC(598)].buferredDuration||0}getSampleListLength(){const t=NC;return this[t(598)][t(613)]||0}[NC(559)](){const t=NC;return this[t(598)][t(580)]||0}getSampleVideoListLength(){const t=NC;return this[t(598)][t(588)]||0}[NC(504)](){const t=NC;return{start:this[t(598)][t(525)]||0,end:this.tempSampleListInfo[t(540)]||0}}[NC(548)](t){const e=NC;this[e(503)](e(548),{time:t})}[NC(514)](t){const e=NC;this[e(619)][e(566)]&&this.player[e(566)][e(496)](),xi(this.player[e(550)]())&&(this[e(615)](!0),this[e(503)](e(618)),this._postMessageToLoopWorker(e(638),{time:t}))}[NC(556)](){this[NC(503)]("pause")}resume(){const t=NC;this._postMessageToLoopWorker(t(592))}[NC(635)](){this[NC(503)]("demuxNextFrame")}[NC(527)](t){const e=NC;this[e(503)](e(527),{nextIFrameTime:t})}geVodLoadedTime(){const t=NC;let e=0;return e=this[t(504)]()[t(540)],e}[NC(597)](t){const e=NC;let s=[];this[e(575)]()?s=[175,1]:this[e(538)]()?s=[114]:this[e(500)]()&&(s=[130]);const i=new Uint8Array(t[e(509)]+s[e(509)]);return i[e(601)](s,0),i[e(601)](t,s[e(509)]),i}}function GC(t,e){const s=HC();return(GC=function(t,e){return s[t-=298]})(t,e)}!function(t){const e=GC,s=t();for(;;)try{if(218834===-parseInt(e(300))/1*(parseInt(e(304))/2)+parseInt(e(298))/3*(parseInt(e(321))/4)+-parseInt(e(323))/5+parseInt(e(317))/6*(parseInt(e(305))/7)+-parseInt(e(328))/8*(-parseInt(e(302))/9)+parseInt(e(303))/10+parseInt(e(299))/11*(-parseInt(e(324))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(HC);class zC{constructor(t,e){const s=GC;this.hls=t,this.player=this.hls[s(310)],this.isMP4=e,this[s(306)]=s(316),e?this._demuxer=new WC(this[s(327)][s(310)]):this[s(313)]=new fC(this[s(327)][s(310)]),this.player.debugLog(this[s(306)],s(315)+(e?s(318):"ts")+" demuxer")}destroy(){const t=GC;this[t(313)]&&(this[t(313)][t(326)](),this._demuxer=null),this.hls=null,this[t(310)].debugLog(this[t(306)],t(326))}transmux(t,e,s,i,r,n){const o=GC;this.player[o(312)](this.TAG_NAME,o(309)+(t&&t[o(308)])+o(320)+(e&&e.byteLength)+o(322)+s+o(307)+i+o(319)+r+o(311)+n);const a=this[o(313)];try{this[o(325)]?a[o(301)](t,e):a.demuxAndFix(Qm(t,e),s,i,r)}catch(t){throw new Yk(qk.DEMUX,qk[o(314)],t)}}}function HC(){const t=[", startTime:",", audioChunk:","6828mAYNTs",", discontinuity:","1865870kqHdfQ","180HzsAps","isMP4","destroy","hls","920WZHUiU","207nLFaDz","73018mINsaD","1QCeCZh","demux","5571BwQsMR","4282070dOULDN","450022edWzWG","1047949LlgmRV","TAG_NAME",", contiguous:","byteLength","transmux videoChunk:","player",", needInit:","debugLog","_demuxer","HLS","init and is ","HlsTransmuxer","12PUiuDV","mp4"];return(HC=function(){return t})()}function KC(t){const e=qC;return t&&t[e(246)]?1===t[e(246)]&&t[e(237)](0)-t[e(249)](0)<1e-6||1===t[e(246)]&&t[e(249)](0)<0?0:t[e(249)](0):0}function qC(t,e){const s=YC();return(qC=function(t,e){return s[t-=235]})(t,e)}function QC(t){const e=qC;if(t)try{return t[e(238)]}catch(t){}}function YC(){const t=["1326366BNsNYG","24aMhcNA","5xNjsRd","end","buffered","310xOQTLX","2xCJsAg","125289QspRKe","reduce","push","10243090iTtOoX","3183224SwtygD","length","266447ePNFBO","1996524mVXBoO","start","81214pjUoxR"];return(YC=function(){return t})()}function JC(t){const e=qC;return t&&t[e(246)]?t[e(242)]((t,e)=>t+(e[1]-e[0]),0):0}function XC(t,e=0,s=0){const i=qC;if(!t||!t[i(246)])return{start:0,end:0,buffers:[]};let r=0,n=0,o=0,a=0,h=0,l=0,c=0;const d=function(t,e){const s=qC;if(!t||!t.length)return[];const i=[];for(let r=0,n=t.length;r<n;r++){const n=i[s(246)];if(n&&e){const o=i[n-1],a=o[1],h=t.start(r);h-a<=e?o[1]=t[s(237)](r):i[s(243)]([h,t[s(237)](r)])}else i.push([t.start(r),t[s(237)](r)])}return i}(t,s);for(let t=0,u=d[i(246)];t<u;t++){const i=d[t];if(e+s>=i[0]&&e<i[1])r=i[0],n=i[1],o=t;else{if(e+s<i[0]){a=i[0],h=i[1];break}e+s>i[1]&&(l=i[0],c=i[1])}}return{start:r,end:n,index:o,buffers:d,nextStart:a,nextEnd:h,prevStart:l,prevEnd:c,currentTime:e,behind:e-r,remaining:n?n-e:0,length:JC(d)}}!function(t){const e=qC,s=t();for(;;)try{if(356566===parseInt(e(247))/1*(parseInt(e(240))/2)+parseInt(e(251))/3+-parseInt(e(248))/4*(-parseInt(e(236))/5)+parseInt(e(235))/6*(parseInt(e(250))/7)+-parseInt(e(245))/8+parseInt(e(241))/9*(parseInt(e(239))/10)+-parseInt(e(244))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(YC);const $C=ZC;function ZC(t,e){const s=tD();return(ZC=function(t,e){return s[t-=463]})(t,e)}function tD(){const t=["isStateOpen","getBufferedVideoSegments","updateDuration()","detachMedia","probe","updateMediaSourceDuration","clearAllBuffer","updateDuration","351oWmlwR","isPlayVodUseMSE","9305SIyriw","_needInitSegment","duration","isPlayVod","isVideoWaiting","getBufferedAudioSegments","transmux","evictBuffer() mse start ","TAG_NAME","pause","mseDecoder","appendBuffer","getSampleRange","_decryptor","getSampleListLength","demuxNextFrame","8374185AlHsvF"," return","length","20993940QBSifM","removeBuffer","decrypt","HlsBufferService"," <= 0 return","resume","endOfStream","isFull","3162dmiNdj","currentTime","seekSampleRange","demuxNextIFrame","clearSourceBuffer","msIsOpened","demuxerNextFrame","reset","getTsSampleRange","hls","debugError","seamlessSwitch",", clearSourceBuffer(","debugLog","player","msStreaming","nbSb","12177207RaFKoJ","getBufferedSegments","demuxerResume","getSampleAudioListLength","428XcyylE","evictBuffer() video is waiting, return","updateMSE","254uWPDQU","_transmuxer"," + 1 >= removeEnd ","getBuferredDuration","evictBuffer() start ","video","demuxerPause","setLiveSeekableRange","_sourceCreated","_directAppend","destroy","getSampleVideoListLength","_mse","evictBuffer() removeEnd ","evictBuffer","13741XQQXPB","3279456ewYyhC","demuxerNextIFrame","_demuxer","media"];return(tD=function(){return t})()}!function(t){const e=ZC,s=t();for(;;)try{if(861107===-parseInt(e(468))/1*(-parseInt(e(519))/2)+parseInt(e(466))/3*(parseInt(e(516))/4)+parseInt(e(484))/5+-parseInt(e(495))/6*(-parseInt(e(534))/7)+parseInt(e(535))/8+-parseInt(e(512))/9+-parseInt(e(487))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(tD);class eD{constructor(t){const e=ZC;this[e(504)]=t,this[e(509)]=t.player,this[e(481)]=new Z_(this[e(504)],this.player),this._transmuxer=null,this._mse=null,this[e(527)]=!1,this[e(469)]=!0,this[e(528)]=!1,this.player[e(467)]()&&(this[e(531)]=this[e(509)].mseDecoder),this[e(476)]=e(490)}async[$C(529)](){const t=$C;await this.detachMedia(),this._transmuxer&&(this[t(520)][t(529)](),this._transmuxer=null),this[t(481)]&&(this[t(481)][t(529)](),this[t(481)]=null),this[t(531)]=null,this[t(527)]=!1,this[t(469)]=!0,this[t(528)]=!1,this[t(504)]=null}[$C(518)](){const t=$C;this[t(509)][t(467)]()&&!this[t(531)]&&(this[t(531)]=this[t(509)][t(478)])}get baseDts(){const t=$C;return this[t(520)]?.[t(537)]?._baseDts}get[$C(511)](){return 0}get[$C(500)](){return!0}get msHasOpTasks(){return!1}get[$C(510)](){return!0}async[$C(465)](t){const e=$C;this[e(509)][e(471)]()&&(this[e(509)].debugLog(this[e(476)],e(541),t),this[e(509)].playVod[e(465)](t),this[e(509)][e(467)]()&&this[e(509)][e(478)]&&this[e(509)][e(478)][e(539)]&&this[e(509)][e(478)][e(463)](t))}createSource(t,e,s,i){const r=$C;if(this[r(527)])return;const n=t||e;n&&(fC[r(543)](n)?!this._transmuxer&&(this[r(520)]=new zC(this[r(504)],!1)):OC[r(543)](n)?!this[r(520)]&&(this[r(520)]=new zC(this.hls,!0)):this[r(509)][r(505)](this[r(476)],"createSource error: chunk is not ts"))}async[$C(479)](t,e,s,i,r,n,o){const a=$C;if(!s?.[a(486)]&&!i?.length)return;const h=this[a(469)]||r;return this[a(520)][a(474)](s,i,h,n,o,h),this[a(469)]=!1,!0}async[$C(488)](t=0,e=1/0){const s=$C,i=this[s(504)][s(538)];!this[s(531)]||!i||t<0||e<t||t>=this[s(531)][s(470)]||this[s(531)][s(499)](t,e)}async[$C(533)](t){const e=$C,s=this[e(504)][e(538)];if(!this[e(531)]||!s||!t||t<0)return;const i=s[e(496)]-t;if(i<=0)return void this[e(509)][e(508)](this[e(476)],e(532)+i+e(491));const r=KC(QC(s));if(r+1>=i)this[e(509)][e(508)](this.TAG_NAME,e(523)+r+e(521)+i+e(485));else{if(!this[e(509)][e(524)][e(472)]())return this[e(509)][e(508)](this[e(476)],e(475)+r+" and end "+i+e(507)+"0, "+i+")"),this[e(488)](0,i);this[e(509)][e(508)](this.TAG_NAME,e(517))}}async[$C(464)](){const t=$C;this[t(509)][t(508)](this[t(476)],"clearAllBuffer"),this[t(531)]&&this[t(531)].clearUpAllSourceBuffer()}decryptBuffer(t,e){const s=$C;return this[s(481)][s(489)](t,e)}async[$C(502)](t=!1){const e=$C;this._transmuxer=null,this[e(469)]=!0,this[e(528)]=!1}async endOfStream(){const t=$C;this[t(531)]&&this[t(527)]&&await this[t(531)][t(493)]()}async[$C(526)](t,e){const s=$C;this._mse&&this[s(531)][s(526)](t,e)}async[$C(542)](){}[$C(506)](){this[$C(469)]=!0}[$C(503)](){const t=$C;return this[t(520)]?.[t(537)]?.[t(480)]()}[$C(497)](t){return this._transmuxer?._demuxer?.seekSampleRange(t)}cleanSampleListAndSetSeekTime(t){const e=$C;this[e(520)]?._demuxer?.cleanSampleListAndSetSeekTime(t)}[$C(525)](){const t=$C;this[t(520)]?.[t(537)]?.[t(477)]()}[$C(514)](){const t=$C;this[t(520)]?._demuxer?.[t(492)]()}[$C(501)](){const t=$C;this._transmuxer?.[t(537)]?.[t(483)]()}[$C(536)](t){const e=$C;this[e(520)]?.[e(537)]?.[e(498)](t)}[$C(494)](){return!1}getBuferredDuration(){const t=$C;return this[t(520)]?._demuxer?.[t(522)]()}[$C(513)](){const t=$C;return this[t(520)]?.[t(537)]?.[t(482)]()}[$C(473)](){const t=$C;return this[t(520)]?.[t(537)]?.[t(515)]()}[$C(540)](){const t=$C;return this[t(520)]?._demuxer?.[t(530)]()}}const sD=iD;function iD(t,e){const s=rD();return(iD=function(t,e){return s[t-=421]})(t,e)}function rD(){const t=["forEach","71388JUeObA","249395gepAfy","add","24zjuBcT","push","SEI_IN_TIME","1258452xBjiyd","_seiSet","10tSpkxx","delete","904995dbjeka","size","clear","53256avnHFD","reset","destroy","emitter","240037PeVePP","3yTdrcE","emit","189krzYkr","664620HTXOeC"];return(rD=function(){return t})()}!function(t){const e=iD,s=t();for(;;)try{if(154515===-parseInt(e(429))/1+parseInt(e(435))/2*(-parseInt(e(430))/3)+parseInt(e(438))/4*(parseInt(e(436))/5)+-parseInt(e(441))/6+parseInt(e(432))/7*(parseInt(e(425))/8)+-parseInt(e(422))/9*(-parseInt(e(443))/10)+parseInt(e(433))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(rD);class nD{constructor(t){const e=iD;this[e(428)]=t,this[e(442)]=new Set,t.on(Bt.SEI,t=>{const s=e;t&&this[s(442)][s(437)](t)})}[sD(427)](){const t=sD;this[t(426)](),this[t(442)]=null}throw(t){const e=sD;if(null==t||!this[e(442)][e(423)])return;const s=t-.2,i=t+.2,r=[];this[e(442)][e(434)](t=>{const n=e;t.time>=s&&t.time<=i&&r[n(439)](t)}),r[e(434)](t=>{const s=e;this[s(442)][s(421)](t),this[s(428)][s(431)](Bt[s(440)],t)})}reset(){const t=sD;this[t(442)][t(424)]()}}const oD=aD;function aD(t,e){const s=cD();return(aD=function(t,e){return s[t-=255]})(t,e)}!function(t){const e=aD,s=t();for(;;)try{if(548428===parseInt(e(296))/1+-parseInt(e(318))/2*(parseInt(e(277))/3)+-parseInt(e(285))/4*(-parseInt(e(299))/5)+parseInt(e(278))/6+parseInt(e(309))/7*(-parseInt(e(293))/8)+-parseInt(e(274))/9*(parseInt(e(317))/10)+parseInt(e(284))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(cD);class hD{constructor(t){const e=aD;this.reset(),this[e(258)]=t}[oD(303)](){this[oD(268)]()}[oD(268)](){const t=oD;this[t(258)]=null,this[t(307)]="",this[t(273)]="",this.videoCodec="",this.domain="",this[t(276)]=0,this.bitrate=0,this[t(263)]=0,this.height=0,this[t(264)]=0,this[t(314)]=0,this[t(260)]=0,this[t(255)]=0,this._bitsAccumulateDuration=0}[oD(269)](){const t=oD;return{encodeType:this[t(307)],audioCodec:this[t(273)],videoCodec:this[t(286)],domain:this[t(298)],fps:this[t(276)],bitrate:this[t(301)],width:this[t(263)],height:this[t(295)],samplerate:this[t(264)],channelCount:this[t(314)],gop:this[t(260)]}}setEncodeType(t){this[oD(307)]=t}[oD(261)]({data:t}){const e=oD,s=t?.[e(265)]?.[e(266)];s&&s>0&&s<100&&(this[e(276)]=s)}setVideoMeta(t){const e=oD;if(this[e(263)]=t[e(263)],this[e(295)]=t[e(295)],this[e(286)]=t[e(308)],this[e(307)]=t[e(270)],t[e(292)]&&t[e(300)]){const s=t[e(292)]/t[e(300)];s>0&&s<100&&(this[e(276)]=s)}}[oD(259)](t){const e=oD;this.audioCodec=t[e(308)],this[e(264)]=t[e(287)],this.channelCount=t[e(314)]}[oD(294)](t){const e=oD;this[e(298)]=t[e(310)]("/").slice(2,3)[0]}[oD(279)](t){const e=oD;if((!this[e(276)]||this[e(276)]>=100)&&t[e(311)]){const s=t[e(289)]((t,s)=>t+s[e(272)],0)/t[e(311)];this[e(276)]=Math[e(305)](this._timescale/s)}t[e(312)](t=>{const s=e;1===t[s(304)]&&this.gop++,this[s(306)]+=t[s(272)]/(this[s(258)]/1e3),this[s(255)]+=t.units[s(289)]((t,e)=>t+e[s(311)],0),this._bitsAccumulateDuration>=1e3&&(this[s(301)]=8*this._bitsAccumulateSize,this[s(306)]=0,this[s(255)]=0)})}}class lD{constructor(t,e=1e3){const s=oD;this[s(280)]=t,this[s(262)]=[],this[s(258)]=e,this[s(275)]=new hD(e),this[s(302)]()}destroy(){const t=oD;this._core=null,this[t(262)]=[],this[t(275)]&&(this._stats[t(303)](),this._stats=null),this[t(258)]=null}[oD(269)](){const t=oD,{currentTime:e=0,decodeFps:s=0}=this._core?.[t(281)]||{};return{...this._stats[t(269)](),downloadSpeed:this._core?.[t(316)]?.()[t(313)]||0,avgSpeed:this[t(280)]?.speedInfo?.().avgSpeed||0,totalReceivedByte:this[t(280)]?.[t(316)]?.()[t(297)]||0,totalReceivedCost:this._core?.[t(316)]?.()[t(256)]||0,currentTime:e,bufferEnd:this[t(280)]?.[t(283)]()?.remaining||0,decodeFps:s}}_bindEvents(){const t=oD;this[t(280)].on(Bt[t(267)],e=>this[t(275)][t(279)](e[t(257)])),this._core.on(Bt[t(290)],e=>{const s=t;this[s(275)][s(261)](e)}),this[t(280)].on(Bt.METADATA_PARSED,e=>{const s=t;e[s(282)]===s(291)?this[s(275)][s(271)](e.track):this[s(275)][s(259)](e[s(315)])}),this[t(280)].on(Bt.TTFB,e=>{const s=t;this[s(275)][s(294)](e[s(288)])})}[oD(268)](){const t=oD;this[t(262)]=[],this[t(275)]=new hD(this._timescale)}}function cD(){const t=["setFpsFromScriptData","_samples","width","samplerate","onMetaData","framerate","DEMUXED_TRACK","reset","getStats","codecType","setVideoMeta","duration","audioCodec","18ZxIHQZ","_stats","fps","141iNvZDd","5048862HWLqGo","updateBitrate","_core","media","type","bufferInfo","1392248FMvJsw","4aDxoUj","videoCodec","sampleRate","responseUrl","reduce","FLV_SCRIPT_DATA","video","fpsNum","216mWaXaG","setDomain","height","182510XQToWn","totalSize","domain","3972035numHxc","fpsDen","bitrate","_bindEvents","destroy","gopId","round","_bitsAccumulateDuration","encodeType","codec","20783RdwLmp","split","length","forEach","speed","channelCount","track","speedInfo","4483070SqVLMh","17862AVwtEv","_bitsAccumulateSize","totalCost","samples","_timescale","setAudioMeta","gop"];return(cD=function(){return t})()}const dD=pD;function uD(){const t=["245AABaNI","216858FQyddM","129656HNJZVH","35CaSYas","get","14751462sddosO","reduce","41278kHXkDh","66724vegdEu","buffered","info","start","totalLength","isBuffered","77607RVOaaq","150UeQimH","6ZNGscb","end","push","buffers","length","825436vrXAsw"];return(uD=function(){return t})()}function pD(t,e){const s=uD();return(pD=function(t,e){return s[t-=190]})(t,e)}!function(t){const e=pD,s=t();for(;;)try{if(293094===parseInt(e(197))/1+parseInt(e(196))/2*(parseInt(e(205))/3)+-parseInt(e(210))/4+-parseInt(e(192))/5*(parseInt(e(190))/6)+parseInt(e(211))/7*(-parseInt(e(191))/8)+parseInt(e(203))/9*(-parseInt(e(204))/10)+parseInt(e(194))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(uD);class fD{static start(t){const e=pD;return t&&t[e(209)]?1===t[e(209)]&&t[e(206)](0)-t[e(200)](0)<1e-6||1===t[e(209)]&&t[e(200)](0)<0?0:t[e(200)](0):0}static[dD(206)](t){const e=dD;return t&&t[e(209)]?1===t[e(209)]&&t[e(206)](0)-t.start(0)<1e-6?0:t.end(t[e(209)]-1):0}static[dD(193)](t){const e=dD;if(t)try{return t[e(198)]}catch(t){}}static[dD(208)](t,e){const s=dD;if(!t||!t[s(209)])return[];const i=[];for(let r=0,n=t[s(209)];r<n;r++){const n=i[s(209)];if(n&&e){const o=i[n-1],a=o[1];if(t[s(200)](r)-a<=e){const e=t[s(206)](r);e>a&&(o[1]=e)}else i[s(207)]([t[s(200)](r),t.end(r)])}else i[s(207)]([t[s(200)](r),t[s(206)](r)])}return i}static[dD(201)](t){const e=dD;return t&&t[e(209)]?t[e(195)]((t,e)=>t+(e[1]-e[0]),0):0}static[dD(199)](t,e=0,s=0){const i=dD;if(!t||!t[i(209)])return{start:0,end:0,buffers:[]};let r=0,n=0,o=0,a=0,h=0,l=0,c=0;const d=fD[i(208)](t,s);for(let t=0,i=d.length;t<i;t++){const i=d[t];if(e+s>=i[0]&&e<i[1])r=i[0],n=i[1],o=t;else{if(e+s<i[0]){a=i[0],h=i[1];break}e+s>i[1]&&(l=i[0],c=i[1])}}return{start:r,end:n,index:o,buffers:d,nextStart:a,nextEnd:h,prevStart:l,prevEnd:c,currentTime:e,behind:e-r,remaining:n?n-e:0,length:fD[i(201)]&&fD[i(201)](d)}}static[dD(202)](t,e){const s=dD;if(t){const i=fD[s(193)](t);if(i?.[s(209)])for(let t=0;t<i[s(209)];t++)if(e>=i[s(200)](t)&&e<=i[s(206)](t))return!0}return!1}}const mD=gD;function gD(t,e){const s=AD();return(gD=function(t,e){return s[t-=400]})(t,e)}!function(t){const e=gD,s=t();for(;;)try{if(121051===-parseInt(e(404))/1+-parseInt(e(407))/2*(parseInt(e(416))/3)+-parseInt(e(409))/4*(parseInt(e(408))/5)+parseInt(e(414))/6+-parseInt(e(412))/7*(-parseInt(e(405))/8)+parseInt(e(400))/9*(parseInt(e(402))/10)+parseInt(e(420))/11*(parseInt(e(411))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(AD);class yD{constructor(t){this[gD(410)]=t,this._prevCurrentTime=0}[mD(417)](){const t=mD;this[t(421)]=0,this[t(410)]=null}do(t,e=3,s,i=1){const r=mD;if(!t)return;const n=t[r(418)];let o=0;if(this[r(421)]===n){const a=fD[r(401)](fD[r(419)](t),n);if(!a.buffers[r(403)])return;s&&a[r(413)]||a.nextStart&&a[r(413)]-n<e?o=a[r(413)]+.1:a[r(415)]&&a[r(415)]-n>i&&!t[r(406)]&&(o=n+.1)}this[r(421)]=n,o&&n!==o&&(t[r(418)]=o)}}function AD(){const t=["nextStart","1240710sjTOkU","end","118056DzdTee","destroy","currentTime","get","3905JyJMdB","_prevCurrentTime","9qYLhjR","info","220450MAHrEf","length","31457AMxPVt","1223176bXpWNa","seeking","12mXAWXn","15605qojmAR","8PzEntD","hls","444DqiaEW","7pJJlKZ"];return(AD=function(){return t})()}const bD=vD;function vD(t,e){const s=SD();return(vD=function(t,e){return s[t-=191]})(t,e)}function SD(){const t=["appendBuffer","getDemuxBufferedListLength","moveSegmentPointer","upsertPlaylist","onPlayVodNextFrame","getStats","eventListenList","removeBuffer","m3u8 url is missing","bind","seg.isLast","playVodNextIFrame","manifestList","debugWarn","player","remaining"," and _segmentProcessing is ","in range","filter","setNextSegmentBySN","loadSource","buffered","originError","currentTime","getBufferedVideoSegments","segment: ","manifest","debugLog","_segmentLoader","getDemuxAudioBufferedListLength","error","stopPoll","playVodVideoSeekingByMse","msStreaming","seekSampleRange","_urlSwitching","_stopTick","SWITCH_URL_SUCCESS","decryptBuffer return null","_loadData"," and seg is","init","handlePlayVodPause","isPlayVodUseMSE","preferMMSStreaming","subtitleStreams","_tick","_prevSegSn","_loadM3U8","get","load","_getSeamlessSwitchPoint","_prevSegmentEndTime","curSeg","and seekTime is","setNextSegmentByIndex"," or bufferThroughout is ","getBufferedAudioSegments","streamStart","STREAM_PARSED","_gapService","hadSegmentLoaded","off","_seiService","maxJumpDistance","duration","url","seekRange"," and return","673912mHEJLr","bufferInfo","_end()","594352LIzwpe","length","streamResponse","baseDts","isBuffered","number","video","rate","nbSegments","onPlay()","isPlayVod","_refreshM3U8","seeking","OTHER","_startTick"," expected end=","resetBandwidth","_times","_clear","onPlayVodNextIFrame","currentStream","_loadSegment() this._playlist is null and return","media","1000638TchsEm","setLiveSeekableRange","reset","abs","_prevSegCc","onSeeking() seek to tsSampleRange","clear buffer from ",";audio seg:","targetLatency","playVodBackBufferLength","ERROR","_stats","and next _loadSegment()","readyState","getDemuxBuferredDuration","listen playVodVideoSeekingByMse","_clear()","_loadM3U8() is not master playlist","parseText","assign","18mXeVds","isSeeking","_end","trim","isMaster","bitrate","info","_loadSegmentDirect() not appended","updateSegmentsRanges","getAudioSegment","paused","forEach","1300030GzeKmH","isVideo4k","_loadM3U8() playlist is empty","then"," in the new playlist","msHasOpTasks","playVod","currentSubtitleStream","playVodMaxBufferLength","create","_loadSegment()","minSegmentsStartPlay","currentSegment","_loadSegmentDirect()","_tickTimer","unsupported switchURL args: ","$videoElement","_off","msIsOpened","357002XjoEQZ","2nRgyET","_bufferService","_isDestroyed","listen playVodSeek","emit","nextSegment","softDecode","isFull","updateMSE","24iEJmRQ","onPause()","bound"," and current time is ","debugError","playVodPause","onSeeking","nbSb","isLive","currentAudioStream","speedInfo","_disconnectTimer","_tickInterval","fatal","start","nextSeg is null and return","_onVideoTimeUpdate","min","config","audioCodec","destroy","demuxerNextIFrame","_off()","hasSubtitle","segment nb=","_opt","_onCheckQuotaExceeded","_segmentProcessing","object","demuxerPause","_isProcessQuotaExceeded","updateDuration","_emitError","lowLatency","_manifestLoader","demuxerNextFrame","getSegmentByIndex","evictBuffer","startTime","cancel","_reloadOnPlay","onVideoSeeking() and seekRange is","2413675HIZsdP"," > "," and segIndex is ","lastSegment","nextStart","getRenderCurrentPts","isEmpty","_reset","_reset()","playVodSeek","onVideoSeeking() update current time","_switchUrlOpts","endOfStream","end","_loadSegment()_segmentProcessing is ture and return","catch","isLast","onSeeking() segIndex is ","_checkStreamTrackChange","onVideoSeeking","_reqAndBufferSegment","buffer remaining ","findSegmentIndexByTime","255983DNfXgr","createSource","nextSeg","videoCodec","_loadSegmentDirect() !seg","_loadSegment() and _prevSegmentEndTime is ","play","clearOldSegment","_emitError()","onPlay","_playlist","getBuferredDuration","_tick() player is destroyed","all","onPause","max","totalDuration","getBufferedSegments","cleanSampleListAndSetSeekTime","_pollM3U8","switchURL","Hls256","_loadSegment"," index of ","TAG_NAME"];return(SD=function(){return t})()}!function(t){const e=vD,s=t();for(;;)try{if(248600===parseInt(e(282))/1*(parseInt(e(283))/2)+parseInt(e(231))/3+parseInt(e(205))/4+-parseInt(e(334))/5+-parseInt(e(292))/6*(parseInt(e(357))/7)+-parseInt(e(208))/8*(-parseInt(e(251))/9)+-parseInt(e(263))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(SD);class ED extends h{constructor(t,e={}){const s=vD;var i;super(),this[s(396)]=t,this[s(381)]=s(378),this[s(310)]=null,this[s(326)]=null,this[s(410)]=null,this[s(367)]=null,this[s(284)]=null,this[s(199)]=null,this[s(242)]=null,this._prevSegSn=null,this[s(235)]=null,this[s(277)]=null,this[s(304)]=500,this[s(319)]=!1,this[s(332)]=!1,this[s(345)]=null,this[s(322)]=!1,this._disconnectTimer=null,this[s(434)]=0,this[s(388)]=[],this[s(310)]=(i=e,e={isLive:!1,maxPlaylistSize:50,retryCount:3,retryDelay:1e3,pollRetryCount:2,loadTimeout:1e4,manifestLoadTimeout:1e4,preloadTime:30,softDecode:!1,bufferBehind:10,maxJumpDistance:3,startTime:0,useLowLatency:!0,targetLatency:10,maxLatency:20,allowedStreamTrackChange:!0,seiInTime:!1,manifestList:[],minSegmentsStartPlay:3,preferMMS:!1,preferMMSStreaming:!1,mseLowLatency:!0,fixerConfig:{forceFixLargeGap:!1,largeGapThreshold:5},...i}),this[s(230)]=null,this._manifestLoader=new x_(this),this[s(410)]=new W_(this),this[s(367)]=new J_(this),this._bufferService=new eD(this),this[s(199)]=new nD(this),this[s(196)]=new yD(this),this[s(242)]=new lD(this,9e4),this.player,this.bound={handlePlayVodPause:this[s(424)][s(391)](this),onVideoSeeking:this.onVideoSeeking[s(391)](this),onSeeking:this[s(298)][s(391)](this),onPlayVodNextFrame:this[s(386)][s(391)](this),onPlayVodNextIFrame:this[s(227)].bind(this)},this.player.isPlayer()&&(this[s(310)][s(300)]=!0),this[s(396)][s(218)]()&&(this[s(396)].on(q[s(297)],this[s(294)].handlePlayVodPause),this[s(396)].on(q.playVodNextFrame,this[s(294)][s(386)]),this[s(396)].on(q[s(393)],this.bound[s(227)]),this[s(396)][s(425)]()?(this[s(230)]=this[s(396)][s(214)][s(279)],this.player.on(q[s(414)],this[s(294)][s(353)])):this.player.on(q[s(343)],this.bound[s(298)])),this[s(285)]=!1,this.player[s(409)](this.TAG_NAME,s(423))}async[bD(312)](){const t=bD;this._isDestroyed=!0,this[t(280)](),this[t(396)].debugLog(this[t(381)],t(312)),this._playlist[t(233)](),this[t(410)][t(233)](),this[t(199)].reset(),this.eventListenList.length&&(this[t(388)][t(262)](t=>t()),this[t(388)]=[]),await Promise[t(370)]([this._clear(),this[t(284)][t(312)]()]),this[t(326)]&&(await this[t(326)][t(312)](),this._manifestLoader=null),this[t(410)]&&(this[t(410)][t(312)](),this._segmentLoader=null),this[t(367)]&&(this[t(367)].destroy(),this[t(367)]=null),this[t(284)]&&(await this[t(284)][t(312)](),this[t(284)]=null),this[t(199)]&&(this._seiService[t(312)](),this[t(199)]=null),this[t(196)]&&(this[t(196)][t(312)](),this._gapService=null),this[t(242)]&&(this[t(242)][t(312)](),this._stats=null),this[t(310)]=null,this[t(230)]=null,this[t(429)]=null,this._prevSegCc=null,this[t(294)]=null,this[t(198)](),this.player[t(409)](this[t(381)],"destroy end")}[bD(280)](){const t=bD;this[t(396)][t(218)]()&&(this.player.debugLog(this.TAG_NAME,t(314)),this[t(396)][t(198)](q[t(297)],this[t(294)][t(424)]),this[t(396)][t(198)](q.playVodNextFrame,this[t(294)].onPlayVodNextFrame),this[t(396)][t(198)](q[t(393)],this[t(294)].onPlayVodNextIFrame),this[t(396)][t(425)]()?this[t(396)][t(198)](q[t(414)],this[t(294)].onVideoSeeking):this[t(396)][t(198)](q.playVodSeek,this[t(294)][t(298)]))}async[bD(233)](){}get[bD(300)](){return this._playlist.isLive}get streams(){return this[bD(367)].streams}get[bD(228)](){const t=bD;return this[t(367)][t(228)]}get[bD(315)](){const t=bD;return this._playlist[t(315)]}get[bD(373)](){const t=bD;return this[t(367)][t(373)]}get baseDts(){const t=bD;return this[t(284)]?.[t(211)]}[bD(222)](){const t=bD;this[t(418)](),this._tickTimer=setTimeout(()=>{this[t(428)]()},this._tickInterval)}[bD(418)](){const t=bD;this[t(277)]&&(clearTimeout(this[t(277)]),this[t(277)]=null)}[bD(428)](){const t=bD;if(!this[t(285)])if(this[t(396)].isDestroyedOrClosed())this[t(396)].debugLog(this[t(381)],t(369));else if(!this[t(396)].playVodPause){if(this[t(222)](),this[t(230)]){const e=this[t(230)],s=this[t(410)][t(412)];if(this[t(318)](),this[t(322)]&&!this[t(284)][t(290)]()&&(this._isProcessQuotaExceeded=!1,this[t(319)]=!1),s){const i=.5;return void((!e[t(244)]||this.bufferInfo(i)[t(397)]<1)&&(s[t(305)]=!0,this[t(324)](Yk.network(s))))}e[t(244)]&&(Hi(e)?(this[t(379)](),this[t(196)]&&this[t(196)].do(e,this[t(310)][t(200)],this.isLive)):e[t(244)]<2&&this._gapService&&this._gapService.do(e,this[t(310)][t(200)],!e[t(405)]||this.isLive))}else this[t(379)]();!this.isLive&&this._tryEos()}}[bD(302)](){const t=bD;return this[t(410)][t(302)]()}bufferInfo(t=.1){const e=bD;return this[e(230)]?fD.info(fD[e(431)](this[e(230)]),this[e(230)]?.[e(405)],t):{}}[bD(387)](){return this._stats.getStats()}[bD(224)](){const t=bD;this[t(410)][t(224)]()}async[bD(402)](t){const e=bD;return t&&(this[e(310)][e(202)]=t),t=this[e(310)].url,this._bufferService[e(291)](),await this[e(341)](),await this[e(421)](t),this[e(222)](),!0}async[bD(421)](t){const e=bD;try{t&&(t=t[e(254)]())}catch(t){}if(!t)throw this[e(324)](new Yk(qk[e(221)],qk[e(221)],null,null,e(390)));!this[e(396)][e(225)][e(194)]&&(this[e(396)][e(225)][e(194)]=os());const s=await this[e(430)](t);!this[e(396)][e(225)][e(210)]&&(this[e(396)][e(225)][e(210)]=os());const{currentStream:i}=this[e(367)];if(i){if(this[e(417)])if(this.isLive){const t=this[e(367)][e(401)](this[e(429)]);this[e(396)][e(409)](this[e(381)],e(316)+this[e(429)]+e(380)+t+e(267)),-1===t&&(this[e(235)]=null,this[e(429)]=null)}else{0===i[e(256)]&&this._switchUrlOpts?.[e(256)]&&(i[e(256)]=this[e(345)]?.[e(256)]);const t=typeof this._switchUrlOpts?.[e(330)]===e(213)?this[e(345)]?.[e(330)]:this._getSeamlessSwitchPoint();this[e(310)].startTime=t;const s=this[e(367)][e(356)](t),r=this[e(367)][e(328)](s+1);if(r){const t=r[e(306)];this[e(396)].debugWarn(this.TAG_NAME,e(237)+t),await this[e(284)][e(389)](t)}}if(s)if(this.isLive){if(this[e(284)][e(232)](0,4294967295),this[e(396)][e(409)](this[e(381)],"is live and totalDuration first time got: ",this._playlist.totalDuration,", nb segments got:",this[e(367)].nbSegments),this.config[e(239)]<this[e(367)].totalDuration&&(this.config[e(239)]=this[e(367)][e(373)],this[e(310)].maxLatency=1.5*this[e(310)][e(239)]),!s.isMaster&&this[e(376)](t),this[e(367)][e(216)]<this[e(310)][e(274)])return;await this[e(379)]()}else await this._bufferService[e(323)](i[e(373)]),this[e(396)][e(218)]()&&this[e(367)][e(191)](0),await this._loadSegment()}}async[bD(377)](t,e={}){const s=bD;switch(typeof e){case s(213):e={startTime:e};break;case"boolean":e={seamless:e};break;case s(320):for(const t in e)(void 0===e[t]||null===e[t])&&delete e[t];break;default:throw s(278)+e}e=Object[s(250)]({},{seamless:!1,startTime:0,bitrate:0},e);const{seamless:i,startTime:r}=e;if(this[s(310)][s(202)]=t,this[s(310)].startTime=r,this[s(345)]=e,!i){let e;try{e=this[s(310)][s(289)]?this[s(402)](t):await this[s(402)](t)}catch(t){throw this[s(287)](Bt.SWITCH_URL_FAILED,t),t}return this[s(332)]=!1,e&&this[s(287)](Bt[s(419)],{url:t}),this.media[s(363)](!0)}this[s(417)]=!0,!this[s(300)]&&(this._prevSegSn=null,this[s(235)]=null),this[s(367)][s(233)](),this[s(284)].seamlessSwitch(),await this._clear(),await this[s(421)](t),this[s(222)](),this[s(345)]=null}async[bD(430)](t){const e=bD;let s;try{const i=this.config[e(394)]?.[e(400)](s=>s[e(202)]===t)[0]?.[e(408)];[s]=i?this[e(326)][e(249)](i,t):await this[e(326)][e(432)](t)}catch(t){throw this[e(324)](Yk[e(272)](t))}if(s)return this._playlist.upsertPlaylist(s),s[e(255)]?(this._playlist?.[e(228)]?.[e(427)]?.[e(209)]&&this.emit(Bt.SUBTITLE_PLAYLIST,{list:this._playlist[e(228)][e(427)]}),await this[e(219)]()):this[e(396)][e(409)](this.TAG_NAME,e(248)),this[e(287)](Bt[e(195)]),s;this[e(396)][e(395)](this[e(381)],e(265))}_refreshM3U8(){const t=bD;this.player[t(409)](this[t(381)],"_refreshM3U8()");const e=this[t(367)][t(228)];if(!e||!e[t(202)])return void this[t(396)].emitError(J.hlsM3u8Empty);const s=e[t(202)],i=e[t(301)]?.[t(202)],r=e[t(270)]?.[t(202)];return this[t(326)][t(432)](s,i,r)[t(266)](([e,n,o])=>{const a=t;e?(this[a(367)][a(385)](e,n,o),this[a(300)]&&this[a(376)](s,i,r)):this.player[a(395)](this.TAG_NAME,"_refreshM3U8() mediaPlaylist is empty")})[t(349)](e=>{throw this[t(324)](Yk.create(e))})}[bD(376)](t,e,s){const i=bD;let r,n=this[i(367)].isEmpty;r=this[i(367)][i(325)]?1e3*(this[i(367)].currentStream.partTargetDuration||0):1e3*(this[i(367)][i(337)]?.duration||0),this[i(326)].poll(t,e,s,(t,e,s)=>{const r=i;this[r(367)][r(385)](t,e,s),this[r(367)][r(364)]();(t&&n&&!this[r(367)][r(340)]||!this[r(367)][r(197)]&&this._playlist[r(216)]>=this[r(310)][r(274)])&&this[r(379)](),n&&(n=this[r(367)][r(340)])},t=>{const e=i;this[e(324)](Yk[e(272)](t))},r)}[bD(379)]=async()=>{const t=bD;if(this[t(319)])return void this[t(396)][t(409)](this[t(381)],t(348));if(!this[t(367)])return void this[t(396)][t(409)](this[t(381)],t(229));const e=this[t(367)][t(275)],s=this[t(367)].nextSegment,i=this[t(367)][t(337)];this.player.debugLog(this[t(381)],t(273),t(435),e&&e[t(202)],t(359),s&&s[t(202)],"lastSeg",i&&i[t(202)]);const r=Math[t(309)](Math[t(372)](i?.[t(201)]-.008||0,.016),.1);if(s){if(!this[t(300)]){const e=this[t(310)];if(this.media){let i=this[t(206)]();this[t(230)][t(261)]&&!this[t(230)][t(405)]&&(i=this[t(206)](i[t(338)]||.5));const n=Math[t(234)](i[t(347)]-this[t(230)][t(201)])<r;let o=1;this[t(396)][t(218)]()&&(o=this.player.playVod[t(215)],this.player[t(425)]()&&(o=Math[t(309)](o,8)));const a=this.player._opt[t(271)]*o;if(i[t(397)]>=a||n)return this[t(396)][t(409)](this.TAG_NAME,t(355)+i[t(397)]+t(335)+a+t(192)+n+" and return"),void this._tryEos();if(e[t(426)]&&!this[t(284)][t(415)])return;!this[t(417)]&&this[t(429)]!==s.sn-1&&i[t(347)]&&Math[t(234)](s.start-i[t(347)])>1&&this[t(367)][t(191)](this[t(367)].findSegmentIndexByTime(i.end+.1))}else if(this.player[t(218)]()){let e=this[t(396)][t(339)]();e/=1e3;let i=this[t(396)][t(269)][t(252)](),r=this.player[t(269)][t(215)],n=this[t(396)][t(317)][t(271)];this[t(396)][t(425)]()&&(r=Math[t(309)](r,8),this[t(396)][t(264)]()&&(n=Math[t(309)](n,15)));const o=n*r+e;if(this[t(434)]&&xi(i)&&this[t(434)]>o)return void this[t(396)][t(409)](this[t(381)],t(362)+this._prevSegmentEndTime+t(295)+e+" more than "+o+t(204));this[t(434)]=s[t(347)]}}return this._loadSegmentDirect()}this.player[t(409)](this[t(381)],t(307))};async _loadSegmentDirect(t){const e=bD,s=this[e(367)].nextSegment;if(!s)return void this[e(396)][e(409)](this[e(381)],e(361));let i=!1,r=null;try{this._segmentProcessing=!0,i=await this[e(354)](s,this[e(367)][e(260)](s))}catch(t){r=t}finally{this[e(319)]=!1}if(r)return this._bufferService[e(290)]()?(this[e(319)]=!0,this[e(322)]=!0,!1):this[e(324)](Yk[e(272)](r));if(i){const i=this[e(206)]()[e(347)];this[e(300)]&&this.media&&!this.media[e(220)]&&i&&Math[e(234)](s[e(347)]-i)>1&&(this[e(396)][e(395)](this[e(381)],e(407)+s.sn+e(223)+s.end+", real end="+i),this[e(367)].feedbackLiveEdge(s,i));const r=this[e(367)][e(228)]?.[e(202)]===s.parentUrl;this._urlSwitching&&!r&&this[e(284)].seamlessSwitch(),this.isLive&&this[e(417)]&&r&&(this[e(417)]=!1,this[e(287)](Bt[e(419)],{url:this.config.url})),this[e(367)][e(384)](),this[e(396)][e(409)](this[e(381)],e(276),e(392),s.isLast),s[e(350)]?(this.player[e(409)](this[e(381)],"_loadSegmentDirect()",e(392)),this[e(253)]()):!t&&(this[e(396)][e(409)](this.TAG_NAME,e(276),e(243)),this._loadSegment())}else this[e(396)][e(409)](this.TAG_NAME,e(258));return i}async[bD(354)](t,e){const s=bD;this[s(396)][s(409)](this[s(381)],"video seg:",t&&t[s(202)],t&&t.byteRange,s(238),e&&e[s(202)],e&&e.byteRange);const i=t?t.cc:e.cc,r=this[s(235)]!==i;let n=[];try{n=await this[s(410)][s(432)](t,e,r)}catch(t){throw t.fatal=!1,this._segmentLoader.error=t,t}if(!n[0])return;const o=await this[s(284)].decryptBuffer(...n);if(!o)return void this.player[s(409)](this[s(381)],s(420));const a=t?t.sn:e.sn;let h=t?t[s(306)]:e.start;const l=this[s(367)].currentStream;this[s(284)][s(358)](o[0],o[1],l?.[s(360)],l?.[s(311)]);const c=this[s(429)]===a-1;if(this[s(300)]&&this[s(417)]){const t=this[s(206)]()[s(347)];this[s(367)][s(259)](a,t),h=t}return await this._bufferService[s(382)](t,e,o[0],o[1],r,c,h),await this[s(284)][s(329)](this[s(396)]._opt[s(240)]),this[s(235)]=i,this[s(429)]=a,!0}async[bD(226)](){const t=bD;this[t(396)].debugLog(this[t(381)],t(247)),this[t(303)]&&(clearTimeout(this[t(303)]),this._disconnectTimer=null),this[t(418)](),await Promise.all([this[t(410)][t(331)](),this[t(326)][t(413)]()]),this[t(319)]=!1}async[bD(341)](t=!1){const e=bD;return this[e(396)][e(409)](this[e(381)],e(342)),this[e(332)]=!1,this[e(429)]=null,this[e(235)]=null,this[e(345)]=null,this[e(434)]=0,this._playlist[e(233)](),this[e(410)].reset(),this._seiService[e(233)](),this[e(242)].reset(),await this[e(226)](),this[e(284)].reset(t)}_end(){const t=bD;this[t(396)][t(409)](this[t(381)],t(207)),this[t(226)](),this[t(284)][t(346)](),this[t(230)]&&(this[t(230)][t(244)]<=2||this[t(230)].buffered[t(209)]>1)&&this._startTick()}[bD(324)](t,e=!1){const s=bD;return!1===t[s(404)]?.[s(305)]?this[s(396)][s(395)](this[s(381)],"_emitError()",t):(this[s(396)][s(296)](this[s(381)],s(365),t,this[s(230)]?.[s(412)]),this[s(418)](),this[s(417)]&&(this[s(417)]=!1,this[s(287)](Bt.SWITCH_URL_FAILED,t)),e&&this._end(),this._seiService[s(233)](),this[s(287)](Bt[s(241)],t)),t}[bD(433)](){const t=bD,{media:e}=this;let s=e[t(405)];if(!e.paused){const i=this[t(367)][t(356)](e[t(405)]),r=this[t(367)][t(328)](i),n=this[t(242)]?.[t(387)]().downloadSpeed;if(n&&r){s+=r.duration*this._playlist[t(228)].bitrate/n+1}else s+=5}return s}_tryEos(){const t=bD,{media:e}=this;if(!e)return;const{nextSegment:s,lastSegment:i}=this[t(367)];if(!((!s||i&&fD[t(212)](e,i.start+i.duration/2))&&e[t(244)]&&e[t(201)]>0&&this._bufferService?.[t(281)]&&!this._bufferService?.[t(268)]))return;let r=this[t(206)]();e[t(261)]&&!e[t(405)]&&(r=this.bufferInfo(r[t(338)]||.5));(Math.abs(r[t(347)]-e[t(201)])<.1||!this.isLive&&i&&r[t(347)]>=i.start+i[t(201)])&&this[t(284)][t(346)]()}async[bD(318)](){const t=bD;if(!this[t(230)])return;const e=this[t(230)][t(405)],s=this[t(230)][t(403)];let i=!1;for(let r=0;r<s[t(209)];r++)if(s[t(306)](0)>=e&&e<s.end(r)){i=!0;break}if(this[t(284)][t(290)]()){const e=i?this[t(396)][t(317)][t(240)]:5,s=this[t(230)].currentTime;s-e>0&&await this._bufferService.removeBuffer(0,s-e)}}async[bD(366)](){const t=bD;this[t(396)].debugLog(this[t(381)],t(217)),this[t(284)].demuxerResume(),await this[t(379)](),this[t(222)]()}[bD(371)](){const t=bD;this[t(396)].debugLog(this[t(381)],t(293)),this[t(284)][t(321)](),this[t(418)](),this[t(410)].reset()}async[bD(424)](t){const e=bD;t?this.onPause():await this[e(366)]()}[bD(386)](){const t=bD;this._bufferService[t(327)]()}[bD(227)](t){const e=bD;this[e(284)][e(313)](t),this[e(379)]()}async[bD(298)](t,e=!1){const s=bD;this[s(396)][s(409)](this[s(381)],s(286),t);const i=this[s(284)].getTsSampleRange();if(this.player[s(409)](this[s(381)],s(236),i),i&&i.start<=t&&t<=i[s(347)])return this.player[s(409)](this[s(381)],"onSeeking() seek to tsSampleRange",i,s(399)),void this._bufferService[s(416)](t);const r=this[s(367)][s(356)](t),n=this[s(367)][s(328)](r);null==r||!n||this[s(319)]&&n===this[s(367)][s(288)]?this[s(396)][s(409)](this.TAG_NAME,s(351)+r+s(398)+this._segmentProcessing+s(422),n,"and return"):(this[s(396)][s(409)](this.TAG_NAME,"onSeeking() seek to "+t+s(336)+r+s(422),n),this._bufferService[s(375)](t),this[s(367)][s(191)](r),this[s(418)](),this._prevSegmentEndTime=0,await this[s(410)][s(331)](),this[s(319)]=!1,(!e||this[s(300)])&&await this._loadSegmentDirect(!0),this[s(222)]())}async[bD(353)](t){const e=bD;this[e(396)][e(409)](this[e(381)],e(246),t),this[e(318)]();const s=this[e(367)][e(203)];if(this.player[e(409)](this[e(381)],e(333),s,e(436),t),s){const i=as(t,s[0]+.1,s[1]-.1);if(i>=0&&Math[e(234)](t-i)>=.1)return this[e(396)][e(409)](this[e(381)],e(344),i),void(this.media.currentTime=i)}const i=this._playlist[e(275)],r=fD[e(257)](fD[e(431)](this[e(230)]),t,.1);if(i){if(r.end&&Math[e(234)](r[e(347)]-i[e(347)])<.2)return;if(this[e(300)]&&r[e(347)])return}await this[e(298)](t,r[e(347)])}[bD(308)](){this.config}[bD(352)](t){const e=bD,s=this[e(367)].checkSegmentTrackChange(t,this._bufferService[e(299)]);s&&this[e(377)](this.config.url,s[e(306)]+.2)}[bD(245)](){const t=bD;return this[t(284)][t(368)]()||0}[bD(383)](){const t=bD;return this[t(284)][t(374)]()||0}[bD(411)](){const t=bD;return this[t(284)][t(193)]()||0}getDemuxVideoBufferedListLength(){const t=bD;return this[t(284)][t(406)]()||0}}const wD=ID;function TD(){const t=["TAG_NAME","emitError","url","length","checkHlsBufferedDelay","234VTJWLI","bandwidthLastTime","_stopBandwidthEstimateInterval","64463GzfgKU","179929QjUxLK","102738UwrirY","getDemuxAudioBufferedListLength","27ZDjCuY","bandwidthEstimateInterval","video","emit","1583417XACKtS","8OmfBKx","speedInfo","loadSource","getDemuxBufferedListLength","hlsError","debugLog","$videoElement","destroy","forEach","60iWfQkv","1221470oyjSsN","2672UkmSqx","resetBandwidth","kBps","eventsDestroy","init","_isDestroyed","hls","getDemuxVideoBufferedListLength","_startBandwidthEstimateInterval","player","711578HCckRw","_bindEvents"];return(TD=function(){return t})()}function ID(t,e){const s=TD();return(ID=function(t,e){return s[t-=359]})(t,e)}!function(t){const e=ID,s=t();for(;;)try{if(190365===parseInt(e(386))/1+-parseInt(e(375))/2+parseInt(e(382))/3*(parseInt(e(365))/4)+parseInt(e(363))/5*(-parseInt(e(387))/6)+-parseInt(e(385))/7*(-parseInt(e(394))/8)+-parseInt(e(389))/9*(-parseInt(e(364))/10)+parseInt(e(393))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(TD);class kD extends h{constructor(t){const e=ID;super(),this.player=t,this.TAG_NAME="Hls256Decoder",this.$videoElement=this[e(374)][e(391)][e(360)],this[e(371)]=null,this[e(368)]=[],this[e(390)]=null,this[e(383)]=0,this[e(371)]=new ED(t),this[e(376)](),this[e(370)]=!1,this[e(374)].debugLog(this[e(377)],e(369))}async destroy(){const t=ID;return this._isDestroyed=!0,this[t(384)](),this[t(371)]&&(await this.hls.destroy(),this[t(371)]=null),this[t(368)][t(380)]&&(this[t(368)][t(362)](t=>t()),this[t(368)]=[]),this[t(360)]=null,this[t(374)].debugLog(this[t(377)],t(361)),!0}[wD(376)](){this.hls.on(Bt.ERROR,t=>{const e=ID;this[e(374)][e(378)](J[e(398)],t)})}[wD(373)](){const t=wD;this[t(384)](),this.bandwidthLastTime=cs(),this.bandwidthEstimateInterval=setInterval(()=>{const e=t;if(!this.hls)return;const s=this[e(371)][e(395)]().totalBits,i=cs(),r=s/(i-this[e(383)])*1e3;this.player[e(392)](q[e(367)],(r/1e3).toFixed(2)),this[e(371)][e(366)](),this.bandwidthLastTime=i},1e3)}[wD(384)](){const t=wD;this.player[t(359)](this[t(377)],t(384)),this[t(390)]&&(clearInterval(this[t(390)]),this[t(390)]=null),this[t(383)]=0}async[wD(396)](t){const e=wD;return this[e(379)]=t,await this[e(371)][e(396)](t),this._startBandwidthEstimateInterval(),!0}[wD(381)](){const t=wD;let e=0;return this[t(371)]&&(e=this[t(371)].getDemuxBuferredDuration()),e}[wD(397)](){const t=wD;let e=0;return this[t(371)]&&(e=this[t(371)][t(397)]()),e}getDemuxAudioBufferedListLength(){const t=wD;let e=0;return this[t(371)]&&(e=this.hls[t(388)]()),e}[wD(372)](){let t=0;return this[wD(371)]&&(t=this.hls.getDemuxVideoBufferedListLength()),t}}function _D(t,e){const s=xD();return(_D=function(t,e){return s[t-=116]})(t,e)}function CD(t,e){const s=_D,i=t[s(134)];if(!i||!i.length)return;const r=i[s(126)](t=>t[s(154)]?.hdlr?.[s(193)]===s(183)),n=i.find(t=>t[s(154)]?.[s(175)]?.[s(193)]===s(185));if(!r&&!n)return;let o=[],a=[];if(e){const t=[];let i=0,r=e[s(172)]+e.size;e[s(127)][s(137)]((n,o)=>{const a=s;t[a(124)]({index:o,startTime:i,endTime:i+n[a(169)]/e.timescale,duration:n[a(169)]/e[a(156)],range:[r,r+n[a(173)]],frames:[]}),i+=n[a(169)]/e.timescale,r+=n[a(173)]}),o=t,a=t}else{const e=e=>{const i=s;return e?[{index:0,startTime:0,endTime:e.duration/e[i(156)],duration:e.duration/e.timescale,range:[t.start+t.size,""],frames:[]}]:[]};a=e(t[s(178)].duration?t[s(178)]:r[s(154)]?.[s(120)]),o=e(t.mvhd[s(181)]?t.mvhd:n[s(154)]?.[s(120)])}return{videoSegments:a,audioSegments:o}}function DD(t,e){const s=_D,i=t[s(134)];if(!i||!i[s(166)])return{error:!0,msg:s(196)};const r=i[s(126)](t=>t[s(154)]?.hdlr?.[s(193)]===s(183)),n=i[s(126)](t=>t.mdia?.hdlr?.handlerType===s(185));if(!r&&!n)return{error:!0,msg:s(187)};let o,a=[],h=[];if(r){const t=r[s(154)]?.minf?.[s(149)];if(!t)return{error:!0,msg:"video stbl not found"};const i=r.mdia[s(120)]?.[s(156)],{stts:n,stsc:h,stsz:l,stco:c,stss:d,ctts:u}=t;if(!(i&&n&&h&&l&&c&&d))return{error:!0,msg:s(155)+!!i+" or stts:"+!!n+" or stsc:"+!!h+s(160)+!!l+s(176)+!!c+s(157)+!!d+s(177)};a=LD(e,i,n,h,l,c,d,u),o=a[s(118)](t=>t[s(181)])}if(n){const t=n[s(154)]?.[s(164)]?.[s(149)];if(!t)return{error:!0,msg:s(180)};const i=n.mdia[s(120)]?.[s(156)],{stts:r,stsc:a,stsz:l,stco:c}=t;if(!(i&&r&&a&&l&&c))return{error:!0,msg:s(202)};h=LD(e,i,r,a,l,c,null,null,o)}return{videoSegments:a,audioSegments:h}}function LD(t,e,s,i,r,n,o,a,h){const l=_D,c=[],d=[],u=[],p=i[l(142)],f=n[l(142)],m=r[l(159)],g=o?.entries,y=a?.entries;let A,b;y&&(A=[],y[l(137)](({count:t,offset:e})=>{const s=l;for(let i=0;i<t;i++)A[s(124)](e)})),g&&(b={},g[l(137)](t=>{b[t-1]=!0}));let v,S,E=0,w=0,T=0,I=0,k=0,_=p[0]?.[l(136)],C=p[1]?p[1][l(188)]-1:1/0,D=0,L=-1;s.entries.forEach(({count:t,delta:e})=>{const s=l;S=e;for(let i=0;i<t;i++){if(v={dts:D,startTime:E,duration:S,size:m[w]||r[s(191)],offset:f[T]+k,index:w},g){if(v[s(163)]=b[w],v[s(163)])L++,d[s(124)]([v]),u.push(v[s(181)]);else{if(0===d[s(166)]){w++;continue}d[d.length-1][s(124)](v),u[d[s(166)]-1]+=v[s(181)]}v[s(144)]=L}A&&w<A[s(166)]&&(v[s(121)]=D+A[w]),0===w&&(v.pts=0),c[s(124)](v),E+=S,D+=e,w++,w<_?k+=v[s(148)]:(T++,k=0,T>=C&&(I++,C=p[I+1]?p[I+1].firstChunk-1:1/0),_+=p[I][s(136)])}});const R=c[l(166)];if(!R||o&&!c[0].keyframe)return[];const P=[];let x,M=[],B=0,F=0;const U=t=>{const s=l;x=M[M[s(166)]-1],P[s(124)]({index:P[s(166)],startTime:P[P[s(166)]-1]?.[s(140)]||M[0][s(122)]/e,endTime:(x[s(122)]+x[s(181)])/e,duration:t,range:[M[0][s(132)],x[s(132)]+x.size],frames:M}),B=0,M=[]};if(o){const s=t*e;for(let t=0,i=d[l(166)];t<i;t++)B+=u[t],M[l(124)](...d[t]),t+1<i?(0===t||B>s)&&U(B/e):U(B/e)}else{let s=(h=h||[])[0]||t;for(let i=0;i<R;i++){M[l(124)](c[i]),B+=c[i][l(181)];const r=B/e;(i+1>=R||r+F>=s)&&(F+=r-s,U(r),s=h[P.length]||t)}}return P}function RD(t,e){const s=_D;let i="",r="",n=0,o=0,a=0,h=0,l=0,c=0,d=0;t[s(178)]&&(l=t.mvhd[s(181)]/t[s(178)].timescale);const u=t[s(134)];if(u){const p=u[s(126)](t=>t[s(154)]?.hdlr?.[s(193)]===s(183)),f=u[s(126)](t=>t.mdia?.[s(175)]?.[s(193)]===s(185));let m,g=null;return p&&(g=p[s(154)]?.minf?.stbl?.stsd[s(142)][0],g&&(n=g[s(179)],o=g[s(146)],c=p[s(154)]?.[s(120)]?.[s(156)],i=(g.avcC||g[s(192)]||g.av1C)?.[s(116)],g[s(162)]===s(141)&&(m=g[s(168)]?.[s(123)]?.[s(151)].default_KID))),f&&(g=f[s(154)]?.[s(164)]?.stbl?.[s(174)][s(142)][0],g&&(a=g[s(190)],h=g[s(119)],r=g.esds?.[s(116)],d=f.mdia?.[s(120)]?.[s(156)],g[s(162)]===s(150)&&(m=m||g[s(168)]?.schi?.tenc[s(197)]))),{kid:m?m[s(125)](""):null,videoCodec:i,audioCodec:r,width:n,height:o,videoTimescale:c,audioChannelCount:a,audioSampleRate:h,duration:l,audioTimescale:d,moov:t,isFragmentMP4:e}}}function PD(t){return typeof t===_D(161)&&!Number.isNaN(t)}function xD(){const t=[" or stss:","dts","entrySizes"," or stsz:","number","type","keyframe","minf","CTS_OFFSET","length","4mzrXFB","sinf","subsegment_duration","520920PQMcAQ","990447jdzwnY","start","referenced_size","stsd","hdlr"," or stco:"," not found","mvhd","width","audio stbl not found","duration","695976KhICqg","vide","concat","soun","IS_NON_SYNC","video or audio track not found","firstChunk","defaultSampleDuration","channelCount","sampleSize","hvcC","handlerType","byteLength","274247jmcKmO","trak not found","default_KID","3174300awEHLb","316405wBdeLw","baseDataOffset","FIRST_FLAG","audio timescale or stts or stsc or stsz or stco not found","DURATION","codec","BASE_DATA_OFFSET","map","sampleRate","mdhd","pts","startTime","schi","push","join","find","references","flags","defaultSampleFlags","SAMPLE_DUR","defaultSampleSize","offset","set","trak","baseMediaDecodeTime","samplesPerChunk","forEach","297031ALpQag","DEFAULT_BASE_IS_MOOF","endTime","encv","entries","cts","gopId","132IyxvUH","height","DEPENDS_YES","size","stbl","enca","tenc","2CtOACz","16OWlrna","mdia","video timescale:","timescale"];return(xD=function(){return t})()}function MD(...t){const e=_D;if((t=t.filter(Boolean))[e(166)]<2)return t[0];const s=new Uint8Array(t.reduce((t,s)=>t+s[e(194)],0));let i=0;return t[e(137)](t=>{const r=e;s[r(133)](t,i),i+=t[r(194)]}),s}function BD(){var t=["clear","6328040MdNKvd","_data","2467332MNTcnH","339296cFkqup","get","2130325eyfPyr","56RyuVRx","684887vUcBBa","create","6rTPzkO","set","18RFpaED","1447758wkoOLW","3152595WuLvtP"];return(BD=function(){return t})()}function FD(t,e){var s=BD();return(FD=function(t,e){return s[t-=174]})(t,e)}!function(t){const e=_D,s=t();for(;;)try{if(248653===-parseInt(e(195))/1*(-parseInt(e(152))/2)+-parseInt(e(171))/3+-parseInt(e(167))/4*(-parseInt(e(199))/5)+-parseInt(e(182))/6+parseInt(e(138))/7*(parseInt(e(153))/8)+-parseInt(e(198))/9+parseInt(e(170))/10*(parseInt(e(145))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(xD);var UD=FD;!function(t){for(var e=FD,s=t();;)try{if(550319===parseInt(e(187))/1*(parseInt(e(178))/2)+parseInt(e(182))/3+parseInt(e(186))/4+-parseInt(e(174))/5+parseInt(e(181))/6+-parseInt(e(176))/7*(parseInt(e(175))/8)+parseInt(e(180))/9*(-parseInt(e(184))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(BD);class OD{constructor(){this[FD(185)]=Object.create(null)}[UD(179)](t,e){this[UD(185)][t]=e}[UD(188)](t){return this._data[t]}[UD(183)](){var t=UD;this._data=Object[t(177)](null)}}const ND=VD;function VD(t,e){const s=jD();return(VD=function(t,e){return s[t-=333]})(t,e)}function jD(){const t=["MP4Loader","_error","stringify","isMetaLoaded","12056539LnlUvI","data","mp4","sidx","push","getUint32",",\n and audioInfo length is ","load moov end success,\n and videoInfo length is ","_loader","range","14958XWsTEb","loadMeta()->moovToSegments() and error is ","loadMetaProcess","_transformError","moovEnd",",\n and next update duration ","cancel","findBox","[loadMetaProcess],data done,setstate true,[","find","maxDownloadInfoSize","cannot parse moov box","load","TAG_NAME","1214610PEVMjo","cache","debugLog","byteLength","real_time_speed","destroy","MP4loader reset func call loader.cancel","message","mdat","_loadSegment","duration","1191642LFoDsw","preload","loadMeta()->MP4Parser.moov() and return parsedMoov is null throw cannot parse moov box","segmentDuration","24EQxSkw","2DUuZBt","loadData","clear","size","895bpiamb","loadMeta","start","length","loadMeta()->MP4Parser.findBox() and return mdat is null throw cannot find moov or mdat box","_currentLoadingSegmentIndex","max","audio","buffer","slice","startTime","loadCacheMeta",",err,","26278beIaYD","url","vid","loadSegmentByTime","meta","min"," and list is ",",dataLen,","videoSegments","2664wjOSKT","cannot parse segments and is fmp4 ","[loadMetaProcess],data not done,setstate false,[","_config","getSegmentByTime","player","moof","index","msg","4539104pYVpWq","reset","cannot find moov box","cannot parse segments"," and throw cannot parse segments","init","9RnELkO","_bufferService","video","transformError","moov","_getCacheKey","isSegmentLoading","isLastSegment","get","200961USlqXd","], range,","loadMeta()->MP4Parser.findBox() and return moov is null and try to find mdat","map",", state,","downloadInfo","endTime","debugWarn","audioSegments","_currentSegmentIndex","error"];return(jD=function(){return t})()}!function(t){const e=VD,s=t();for(;;)try{if(713799===-parseInt(e(413))/1+parseInt(e(363))/2*(parseInt(e(358))/3)+parseInt(e(398))/4+parseInt(e(367))/5*(parseInt(e(333))/6)+-parseInt(e(380))/7*(-parseInt(e(389))/8)+parseInt(e(404))/9*(-parseInt(e(347))/10)+parseInt(e(428))/11*(-parseInt(e(362))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(jD);class WD{constructor(t,e){const s=VD;this.type="file",this[s(354)]=t,this[s(429)]=e}}class GD extends h{constructor(t,e,s={}){const i=VD;var r;super(),this[i(346)]=i(424),this._config=(r=s,{vid:"",moovEnd:8e4,segmentDuration:2,maxDownloadInfoSize:30,responseType:"arraybuffer",cache:null,...r});const{vid:n,cache:o,...a}=this._config;this[i(430)]=t,this[i(394)]=e,this[i(382)]=n||a[i(381)],this[i(381)]=a[i(381)],a[i(407)]=this[i(336)],this[i(384)]={},this[i(418)]=[],this[i(388)]=[],this[i(421)]=[],this[i(348)]=new OD,this._currentSegmentIndex=-1,this[i(372)]=-1,this.buffer=null,this._error=null,this[i(436)]=new zk(a,e),this[i(436)].on(i(351),t=>{}),this.player.debugLog(this[i(346)],i(403))}async[ND(352)](){const t=ND;await this[t(399)](),this[t(348)][t(365)](),this[t(436)]&&(this[t(436)].destroy(),this[t(436)]=null),this[t(394)].debugLog(this[t(346)],"destroy")}get[ND(427)](){const t=ND;return this[t(388)][t(370)]||this[t(421)][t(370)]}setCurrentSegment(t){PD(t)&&(this._currentSegmentIndex=t)}[ND(411)](t){const e=ND;if(PD(t)){return t>=(this.videoSegments[this.videoSegments[e(370)]-1]?.[e(396)]||this.audioSegments[this.audioSegments[e(370)]-1]?.index||0)}return!1}[ND(410)](t){return t===this._currentLoadingSegmentIndex}async changeUrl(t,e=t,s,i){const r=ND;await this.reset(i),t&&(this[r(381)]=t),e&&(this[r(382)]=e),s&&(this[r(392)][r(337)]=s)}async getOrLoadMeta(t){const e=ND;return!this.isMetaLoaded&&await this[e(368)](t),this[e(384)]}async[ND(335)](t,[e,s],i,r){const n=ND;this[n(425)]=!1,this[n(394)][n(349)](this[n(346)],"[loadMetaProcess start], range,",[e,s]);await this[n(364)]([e,s||this._config.moovEnd],t,{onProgress:async(o,a,h)=>{const l=n;if(this.meta&&h?.[l(437)]&&h.range[l(370)]>0&&h[l(437)][1]>=s&&(a=!0,this[l(394)][l(349)](this[l(346)],l(341),e,s,"]")),a&&h?.[l(437)]&&h.range[l(370)]>0&&h[l(437)][1]<s&&(a=!1,this[l(394)][l(349)](this.TAG_NAME,l(391),e,s,"]")),this[l(394)][l(349)](this[l(346)],"[loadMetaProcess],task,[",e,s,l(414),h[l(437)],l(387),o?o.byteLength:void 0,l(417),a,l(379),this[l(425)]),!this[l(425)]&&o&&o[l(350)]>0&&i(o,a,h),!this.meta[l(408)]&&!this[l(425)]&&o&&o[l(350)]>0){this[l(375)]=MD(this[l(375)],o);let e=OC[l(340)](this[l(375)],["moov"])[0];if(!e){const s=OC[l(340)](this[l(375)],[l(355)])[0];if(a){if(!s)return this[l(425)]=!0,void i(null,a,h,{err:"cannot find moov or mdat box"});{const i=s[l(369)]+s.size,n=await this[l(364)]([i,""],t,r);n&&(e=OC.findBox(n[l(429)],[l(408)])[0])}}}if(e&&a&&e[l(366)]>e[l(429)][l(370)]&&(this[l(394)][l(349)](this[l(346)],"[loadMetaProcess],moov not all, range,",h[l(437)][1],l(387),this[l(375)].byteLength,l(417),a),await this[l(335)](t,[h[l(437)][1],e[l(369)]+e[l(366)]-1],i)),e&&e[l(366)]<=e.data.length&&!this[l(384)][l(408)]){const s=OC[l(408)](e);if(!s)return this[l(425)]=!0,void i(null,a,h,{err:l(344)});let n=DD(s,this[l(392)][l(361)]);const o=async e=>{const s=l,i=OC.findBox(this[s(375)],[e])[0];if(i){if(!(i[s(366)]>i[s(429)][s(370)]))return i;{const n=await this[s(364)]([i[s(369)],i[s(369)]+i[s(366)]-1],t,r);if(n)return OC[s(340)](n[s(429)],[e])[0]}}};let c=!1;if(!(n&&n[l(388)][l(370)]&&n[l(421)][l(370)])){const t=await o(l(431));if(t){const e=OC[l(431)](t);e&&(n=CD(s,e),c=!0)}}if(!n||n&&n[l(423)])return this[l(425)]=!0,void i(null,a,h,{err:l(390)+c+" and error is "+(n&&n.msg)});this.meta=RD(s,c);const{videoSegments:d,audioSegments:u}=n;this[l(388)]=d,this[l(421)]=u,this[l(394)].debugLog(this.TAG_NAME,"[loadMetaProcess] moov ok"),i(void 0,a,{meta:{meta:this[l(384)],videoSegments:d,audioSegments:u}})}}},...r})}async[ND(368)](t,e,s){const i=ND,r=[];this.player[i(349)](this.TAG_NAME,"loadMeta start");let n=await this[i(364)]([0,e||this._config[i(337)]],t,s);if(!n)return;r[i(432)](n);let o=OC[i(340)](n[i(429)],["moov"])[0];if(!o){this[i(394)][i(349)](this[i(346)],i(415));const e=OC.findBox(n[i(429)],[i(355)])[0];if(!e)throw this.player[i(420)](this[i(346)],i(371)),new WD("cannot find moov or mdat box",n.data);const a=e[i(369)]+e[i(366)];if(n=await this[i(364)]([a],t,s),!n)return;if(r[i(432)](n),o=OC[i(340)](n[i(429)],[i(408)],a)[0],!o)throw this[i(394)][i(420)](this[i(346)],"loadMeta()->MP4Parser.findBox() and return moov is null throw cannot find moov box"),new WD(i(400),n[i(429)])}if(o[i(366)]>o.data[i(370)]){if(n=await this[i(364)]([n.data[i(370)],o[i(369)]+o[i(366)]-1],t,s),!n)return;r[i(432)](n),o[i(429)]=MD(o[i(429)],n[i(429)])}const a=OC.moov(o);if(!a)throw this.player[i(420)](this.TAG_NAME,i(360)),new WD("cannot parse moov box",o[i(429)]);let h,l=DD(a,this[i(392)].segmentDuration);if(!l||l&&l[i(423)])throw this.player[i(420)](this.TAG_NAME,i(334)+(l&&l[i(397)])+i(402)),new WD(i(401),o[i(429)]);if(!l[i(388)][i(370)]||!l.audioSegments[i(370)]){const t=OC[i(340)](this[i(375)],["moof"])[0],e=OC[i(340)](this[i(375)],[i(431)])[0];if(t&&t[i(366)]<=t[i(429)].length&&e){const s=OC[i(395)](t);h=OC.sidx(e),s&&h&&(l=CD(a,h))}}this[i(384)]=RD(a,h);const{videoSegments:c,audioSegments:d}=l;this.videoSegments=c,this.audioSegments=d;const u=this[i(388)].slice(0,100)[i(416)](t=>{const e=i;return{s:t[e(377)],e:t[e(419)],d:t[e(357)]}}),p=this[i(421)][i(376)](0,100)[i(416)](t=>{const e=i;return{s:t[e(377)],e:t[e(419)],d:t[e(357)]}});return this.player[i(349)](this.TAG_NAME,i(435)+this[i(388)][i(370)]+i(386)+JSON[i(426)](u)+i(434)+this[i(421)].length+" and list is "+JSON[i(426)](p)+i(338)+this[i(384)][i(357)]),this[i(384)]&&this[i(430)][i(405)].updateDuration(this[i(384)][i(357)]),{meta:this.meta,videoSegments:c,audioSegments:d,responses:r}}async scanForMoov(t,e){const s=ND;let i=0;for(;;){const r=await this.loadData([i,i+8-1],t,e);if(!r||!r[s(429)].length)break;const n=new DataView(r.data.buffer)[s(433)](0,!1);if(String.fromCharCode(r[s(429)][4],r[s(429)][5],r[s(429)][6],r[s(429)][7])===s(408)){const r=await this[s(364)]([i,i+n-1],t,e);return r?{start:i,size:n,data:r[s(429)],type:s(408)}:null}i+=n>0?n:8}return null}[ND(378)](t,e){const s=ND,{moov:i}=t,r=DD(i,this[s(392)][s(361)]),{videoSegments:n,audioSegments:o}=r;this.videoSegments=n,this.audioSegments=o,this[s(422)]=e,this[s(384)]=t}getSegmentByTime(t){const e=ND;let s,i;return this.videoSegments[e(370)]?(s=this[e(388)][e(342)](s=>s.startTime<=t&&s[e(419)]>t),s&&(i=this[e(421)][s[e(396)]])):i=this[e(421)][e(342)](e=>e.startTime<=t&&e.endTime>t),{video:s,audio:i}}async[ND(383)](t,e,s=!0,i={}){const r=ND;!this.isMetaLoaded&&await this[r(368)](e);const{video:n,audio:o}=this[r(393)](t);return this[r(356)](n,o,e,s,i)}async loadNextSegment(t,e=!0,s={}){const i=ND;!this[i(427)]&&await this[i(368)]();const r=this[i(388)][this[i(422)]+1],n=this[i(421)][this[i(422)]+1];return this[i(356)](r,n,t,e,s)}async[ND(359)](t){const e=ND;if(!this[e(427)]&&await this[e(368)](!0),!t||t<0)return;const{video:s,audio:i}=this[e(393)](t),r=Math.max(s?.[e(396)]||0,i?.[e(396)]||0);if(!r)return;const n=this[e(388)][e(376)](0,r),o=this[e(421)].slice(0,r),a=async t=>{t>r||(await this._loadSegment(n[t],o[t],!0,!1),await a(t+1))};await a(0)}[ND(339)](){const t=ND;return this._loader[t(339)]()}async[ND(399)](t=!1){const e=ND;!t&&(this[e(394)][e(349)](this[e(346)],e(353)),await this._loader[e(339)]()),this[e(382)]=this[e(381)]="",this[e(384)]={},this[e(418)]=[],this.videoSegments=[],this[e(421)]=[],this[e(422)]=-1,this[e(372)]=-1}async[ND(352)](){const t=ND;await this.reset(),this[t(348)][t(365)]()}async[ND(356)](t,e,s,i,r){const n=ND;if(!t&&!e)return;const o=t?.[n(396)]||e?.[n(396)]||0;let a;this._currentLoadingSegmentIndex=o;try{a=await this[n(364)]([Math[n(385)](t?.[n(437)][0]||1/0,e?.range[0]||1/0),Math[n(373)](t?.[n(437)][1]||0,e?.range[1]||0)],s,r)}finally{this[n(372)]=-1}return a?(i&&(this._currentSegmentIndex=o),a[n(406)]=t,a[n(374)]=e,a):void 0}async loadData(t,e,s){const i=ND,r=this[i(409)](t),n=await this[i(348)][i(412)](r);let o;if(n)o={data:n,state:!0,options:{fromCache:!0,range:t,vid:this[i(382)]}};else{const e=s&&s[i(381)]?s[i(381)]:this[i(381)];o=await this[i(436)][i(345)](e,{range:t,vid:this.vid,...s})}if(o)return!n&&(o[i(429)]&&this.downloadInfo.push({startTime:o[i(377)],endTime:o[i(419)],size:o[i(429)].byteLength,range:t}),this.downloadInfo&&this[i(418)][i(370)]>this[i(392)][i(343)]&&(this[i(418)]=this[i(418)][i(376)](-this[i(392)][i(343)]))),o}[ND(336)]=t=>t;_getCacheKey(t){const e=ND;return(this[e(382)]||this[e(381)])+":"+t}}const zD=KD;function HD(){const t=["setFps","MP4VodDemux","terminate","sps","onmessage","audioSamples","video seqHeader","kidValue","_isUseWorker","267599OWSJHd","isAudioAac","isAV1","workerUrl","_audioSamples","postMessage","cleanSampleListAndSetSeekTime","bound","keyframe","_hasCalcFps","videoListLength","addAudioTagHeader","decoderData","revokeObjectURL","cleanSampleList","data","size","_prevPlayVodTimeCache","sort","audio","cannot parse samples from moov box","timescale","payload","allListLength","playVodRateChange","G711PCMU","_times","video","isAudioG711u","isIFrame","getSampleVideoListLength","baseMediaDecodeTime","_initLoopWorker","isUseMSE","_opt","metadataTrack","sampleRate","checkInitVideo","2JnJhfR","loop worker is not init, can not post message","demuxNextIFrame","av1C","off","2881941DmdRVk","setSeekingTime","_off","duration","workerClearTimeout","debug","initAudioTrack","codecType","isPlayVod","pause","endPts","294596miSwNU","end","geVodLoadedTime","dts","max","gopId","_calcDecodeFps","useEME","isHevc","URL","codec","_basefps","_doDecodeAudio","seekSampleRange","offset","isAudioG711a","_isDestroyed","slice","set","push","getPlayVodDuration","correctSamplePts","warn","av1","subarray","decodeAudio","index","isAudioMP3","cmd","isPlayVodNotUseMSE","buferredDuration","_doDecodeVideo","init","initVideoTrack","audioTrack","_doDecodeByMp4","_lastRemainBufferStartPos","byteLength","loopWorker","_videoSamples","debugLog","playVodTimeCache","TAG_NAME","1421208QcBhZn","samples","moovToTrack","demuxPart","handlePlayVodRateChange","debugUuid",", duration is ","errorMessage","vps","type","audioSenc","videoSenc","player","destroy","pts","decodeVideo","parseSamples"," drop invalid video sample ,length is ","sample","G711PCMA","4007542YiIkCr","pps","updatePlayRate","playVod","start","startPts","_lastRemainBuffer","resume","checkInitAudio","MP3",", timestamp is ","isInitAudio","986860lbAiZr","getSampleRange","demuxNextFrame","cannot found video frame #","sampleOffset","new Uint8Array error:,","isInitVideo","AAC","reset","tempSampleListInfo","987432OARejF","moovToSamples","cryptoPayload","initMetadataTrack","updateStats","h265","concat","_postMessageToLoopWorker","demux","length","videoTrack"];return(HD=function(){return t})()}function KD(t,e){const s=HD();return(KD=function(t,e){return s[t-=321]})(t,e)}!function(t){const e=KD,s=t();for(;;)try{if(498158===parseInt(e(442))/1*(parseInt(e(321))/2)+parseInt(e(326))/3+-parseInt(e(337))/4+-parseInt(e(412))/5+parseInt(e(380))/6+-parseInt(e(400))/7+-parseInt(e(422))/8)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(HD);class qD extends If{constructor(t){const e=KD;super(t),this[e(392)]=t,this[e(379)]=e(434),this[e(420)](),this.tempSampleListInfo={},this._videoSamples=[],this[e(446)]=[],this[e(406)]=[],this.videoTrack=qD[e(370)](),this[e(371)]=qD.initAudioTrack(),this[e(477)]=qD[e(425)](),this[e(449)]={handlePlayVodRateChange:this[e(384)].bind(this)},this[e(441)]()&&this[e(474)](),this[e(392)][e(334)]()&&this[e(441)]()&&this[e(392)].on(q[e(466)],this.bound.handlePlayVodRateChange),this[e(392)][e(377)](this[e(379)],"init")}destroy(){const t=KD;super[t(393)](),this[t(445)]&&(URL[t(455)](this.workerUrl),this.workerUrl=null),this[t(330)]&&(clearTimeout(this[t(330)]),this.workerClearTimeout=null),this[t(375)]&&(this[t(375)][t(447)]({cmd:"destroy"}),this.loopWorker[t(435)](),this[t(375)]=null),this[t(420)](),this[t(449)]=null,this[t(392)][t(377)](this[t(379)],"destroy")}[zD(420)](){const t=zD;this[t(376)]=null,this[t(446)]=null,this[t(406)]=null,this[t(373)]=0,this[t(459)]=0,this[t(432)]=null,this[t(371)]=null,this[t(477)]=null,this[t(421)]=null,this[t(345)]=!1,this[t(444)]=!1,this._hasCalcFps=!1,this[t(348)]=25,this.isInitVideo=!1,this[t(411)]=!1}[zD(328)](){const t=zD;super._off(),this[t(392)][t(334)]()&&this._isUseWorker()&&(this[t(392)][t(377)](this[t(379)],"_off()"),this[t(392)][t(325)](q[t(466)],this[t(449)][t(384)]))}[zD(384)](t){const e=zD;this[e(392)][e(377)](this[e(379)],"listen playVodRateChange",t),this[e(429)](e(402),{rate:t})}static[zD(370)](){return{id:1,samples:[],sps:[],pps:[],vps:[],codec:""}}static[zD(332)](){return{id:2,samples:[],sampleRate:0,channelCount:0,codec:"",codecType:""}}static[zD(425)](){return{flvScriptSamples:[],seiSamples:[]}}parseSamples(t){const e=zD;if(!t)throw new Error("moov is required");if(!this[e(432)][e(347)]&&!this[e(371)][e(347)]&&(OC[e(382)](t,this[e(432)],this[e(371)]),this.videoSenc=this.videoTrack[e(391)],this[e(390)]=this[e(371)][e(390)],this[e(408)]()&&this[e(443)]()&&this._sendAccADTSHeader(this[e(371)]),this[e(479)]())){const t=this[e(432)].codecType===Et[e(427)],s=this.videoTrack[e(333)]===Et[e(360)];this[e(345)]=t,this[e(444)]=s;let i=null;if(t)this.videoTrack[e(436)][e(431)]&&this[e(432)][e(388)][e(431)]&&this.videoTrack[e(401)][e(431)]&&(i=yl({sps:this[e(432)][e(436)][0],pps:this[e(432)].pps[0],vps:this.videoTrack[e(388)][0]}));else if(s){if(this.videoTrack[e(324)]){const t=this[e(432)].av1C[e(361)](8),s=[29,0,0,0,0];i=new Uint8Array(s[e(431)]+t[e(431)]),i[e(355)](s,0),i[e(355)](t,s.length)}}else this[e(432)][e(436)][e(431)]&&this.videoTrack[e(401)].length&&(i=zh({sps:this.videoTrack[e(436)][0],pps:this.videoTrack.pps[0]}));i&&(this.player.debugLog(this[e(379)],e(439)),this[e(372)](i,W[e(469)],0,!0,0))}if(!this[e(446)].length&&!this[e(376)][e(431)]){const s=OC[e(423)](t);if(!s)throw new Error(e(462));this[e(376)]=s.videoSamples||[],this[e(446)]=s[e(438)]||[]}}[zD(430)](t,e,s,i,r){const n=zD;!this[n(392)][n(468)].demuxStart&&(this[n(392)][n(468)].demuxStart=os()),this[n(408)](),this[n(479)](),this.parseSamples(r);const o=this[n(432)],a=this[n(371)];let h,l,c;if(o[n(381)]=[],a[n(381)]=[],s){let i;for(let r=s[0],a=s[1];r<=a;r++){if(h=this[n(376)][r],!h)throw new Error(n(415)+r);c=h[n(351)]-e,l=t[n(361)](c,c+h.size),l.length<8?this[n(392)][n(377)](this[n(379)],n(397)+l[n(431)]+", isIframe is "+h.keyframe+n(386)+h[n(329)]+n(410)+1e3*h[n(340)]/o[n(463)]):(i={type:W[n(469)],dts:1e3*h[n(340)]/o[n(463)],pts:1e3*(h[n(394)]||h[n(340)])/o[n(463)],payload:null,isIFrame:!1},i[n(329)]=h[n(329)],i[n(342)]=h[n(342)],h.keyframe&&(i[n(471)]=!0),i[n(464)]=l,this[n(392)][n(426)]({vbps:l[n(374)]}),o[n(381)][n(356)](i))}o[n(381)][n(431)]>0&&(o[n(473)]=o[n(381)][0].dts)}if(i){for(let s=i[0],r=i[1];s<=r;s++){if(h=this[n(446)][s],!h)throw new Error("cannot found video frame #"+s);c=h.offset-e,l=t.subarray(c,c+h[n(458)]);const i=1e3*h[n(340)]/a[n(463)],r=this[n(453)](l);this[n(392)][n(426)]({abps:l.byteLength}),a.samples.push({type:W[n(461)],dts:i,pts:i,payload:r,duration:h.duration,size:r[n(374)]})}a[n(473)]=a[n(381)][0].dts}this.correctSamplePts(o),this[n(358)](a);const d=o.samples[n(428)](a[n(381)]);d[n(460)]((t,e)=>{const s=n;return t[s(340)]-e[s(340)]}),d.forEach(t=>{const e=n,s=new Uint8Array(t.payload);delete t[e(464)],this[e(441)]()?this[e(375)].postMessage({...t,payload:s,cmd:e(398)},[s.buffer]):t[e(389)]===W[e(469)]?this[e(368)]({...t,payload:s}):t[e(389)]===W[e(461)]&&this[e(349)]({...t,payload:s})}),xi(this[n(451)])&&this[n(441)]()&&(this[n(451)]=this[n(343)](d),this[n(451)]&&this[n(392)][n(403)][n(433)](this[n(348)]))}[zD(383)](t,e,s,i,r,n,o,a){const h=zD;if(this[h(408)](),this.checkInitVideo(),this[h(396)](r),this[h(432)][h(344)]=n,this.audioTrack[h(344)]=n,this[h(406)]&&this[h(406)][h(374)]>0&&e>this._lastRemainBufferStartPos&&e<=this[h(373)]+this[h(406)].byteLength){let s=0;for(;s<20;)try{const s=this[h(406)][h(361)](0,e-this[h(373)]),i=new Uint8Array(t[h(374)]+s[h(374)]);i[h(355)](s,0),i[h(355)](new Uint8Array(t),s.byteLength),t=i,e-=s[h(374)],this[h(406)]=null,this[h(373)]=0;break}catch(t){if(!(s<20))throw new Error(h(417)+t[h(387)]);s++}}const l=this.videoTrack,c=this[h(371)];l.samples=[],c[h(381)]=[],l[h(391)]=null,c.audioSenc=null;let d,u,p,f=0,m=0;if(this[h(376)][h(431)]>0&&s.length>0){let i;const r=t.byteLength+e;for(let n=s[0];n<=s[1];n++){if(d=this[h(376)][n],!d)throw new Error(h(415)+n);d[h(351)]>=e&&d[h(351)]+d.size<=r&&(p=d.offset-e,f=p+d[h(458)],u=t.subarray(p,f),i={type:W[h(469)],dts:d[h(340)],pts:d[h(394)]||d[h(340)],payload:null,isIFrame:!1},i[h(329)]=d.duration,i.gopId=d[h(342)],i.sampleOffset=d[h(363)],d[h(450)]&&(i[h(471)]=!0),i[h(464)]=u,i.size=d[h(458)],l[h(381)][h(356)](i))}l[h(381)][h(431)]>0&&(l[h(342)]=l[h(381)][0][h(342)],l[h(473)]=l[h(381)][0].dts,l.startPts=l.samples[0][h(394)]/l[h(463)],l[h(336)]=l.samples[l.samples[h(431)]-1][h(394)]/l.timescale,this.videoSenc&&(l[h(391)]=this[h(391)][h(354)](l[h(381)][0][h(416)],l[h(381)][0][h(416)]+l[h(381)][h(431)]),l.kidValue=o))}if(this._audioSamples.length>0&&i[h(431)]>0){for(let s=i[0];s<=i[1];s++){if(d=this[h(446)][s],!d)throw new Error(h(415)+s);if(d[h(351)]>=e&&d[h(351)]+d[h(458)]<=t[h(374)]+e){p=d[h(351)]-e,m=p+d[h(458)],u=t[h(361)](p,m);const s=this.addAudioTagHeader(u);c[h(381)][h(356)]({type:W[h(461)],dts:d.dts,pts:d[h(340)],payload:s,duration:d[h(329)],sampleOffset:d[h(363)],size:s[h(374)]})}}c[h(381)].length>0&&(c[h(342)]=c[h(381)][0][h(342)]||l.gopId,c[h(473)]=c[h(381)][0][h(340)],c[h(405)]=c.samples[0].pts/c.timescale,c[h(336)]=c[h(381)][c[h(381)].length-1].pts/c[h(463)],this[h(390)]&&(c[h(390)]=this[h(390)][h(354)](c.samples[0][h(416)],c.samples[0].sampleOffset+c[h(381)][h(431)]),c[h(440)]=o))}this.decoderData(l,c,a),this._lastRemainBuffer=t.subarray(Math[h(341)](f,m)),this[h(406)][h(374)]>0?this._lastRemainBufferStartPos=e+t.byteLength-this[h(406)][h(374)]:this[h(373)]=0}reset(){const t=zD;this._videoSamples=[],this[t(446)]=[],this[t(406)]=null,this._lastRemainBufferStartPos=0,this[t(432)]=qD[t(370)](),this[t(371)]=qD[t(332)](),this[t(477)]=qD[t(425)]()}[zD(454)](t,e,s){}[zD(408)](){const t=zD;return this.isInitAudio=!!(this[t(371)][t(478)]&&this[t(371)].channelCount&&this[t(371)][t(347)]),this[t(411)]}isAudioAac(){const t=zD;return this[t(371)][t(333)]===DC[t(419)]}[zD(352)](){const t=zD;return this.audioTrack[t(333)]===DC[t(399)]}[zD(470)](){const t=zD;return this[t(371)][t(333)]===DC[t(467)]}isAudioMP3(){const t=zD;return this[t(371)][t(333)]===DC[t(409)]}[zD(479)](){const t=zD;return this[t(432)][t(333)]===Et.av1?this[t(418)]=!(!this[t(432)][t(324)]||!this.videoTrack[t(347)]):this[t(418)]=!!(this[t(432)][t(401)][t(431)]&&this[t(432)][t(436)][t(431)]&&this[t(432)].codec),this.isInitVideo}_sendAccADTSHeader(t){const e=zD,s=De({profile:t.objectType,sampleRate:t.sampleRateIndex,channel:t.channelCount});this.player.debugLog(this[e(379)],"audio accADTSHeader"),this[e(372)](s,W[e(461)],0,!0,0)}_initLoopWorker(){const t=zD,e=Ai(eC);let s=new Worker(e);this[t(445)]=e,this[t(330)]=setTimeout(()=>{const e=t;window[e(346)][e(455)](this[e(445)]),this[e(445)]=null,this[e(330)]=null},P),s[t(447)]({cmd:t(369),options:{type:"mp4",seekingMaxDiff:1e4,debug:this[t(392)][t(476)][t(331)],debugUuid:this[t(392)][t(476)][t(385)],debugLevel:this[t(392)][t(476)].debugLevel}}),s[t(437)]=e=>{const s=t;if(this[s(353)])return;const i=e[s(457)];switch(i[s(365)]){case s(395):this._doDecodeVideo(i);break;case s(362):this[s(349)](i);break;case"sampleListInfo":if(this[s(421)]=i,this[s(392)][s(366)]()){const t=this[s(339)](),e=this[s(392)][s(357)]();if(t&&e){let i=t/(1e3*e);i!==this._prevPlayVodTimeCache&&(this[s(392)].setPlayVodBufferedTime(t),this[s(392)].emit(q[s(378)],i)),this[s(459)]=i}}}},this[t(375)]=s}[zD(429)](t,e){const s=zD;this[s(392)][s(475)]()||(this[s(375)]?this[s(375)].postMessage({cmd:t,...e}):this[s(392)][s(331)][s(359)](this[s(379)],s(322)))}[zD(349)](t){const e=zD,s=new Uint8Array(t.payload),i=this.cryptoPayloadAudio(s);this._doDecodeByMp4(i,W.audio,t[e(340)],!1,0)}[zD(368)](t){const e=zD,s=new Uint8Array(t[e(464)]);let i=null;i=this[e(345)]?Al(s,t[e(471)]):this[e(444)]?Um(s,t[e(471)]):Hh(s,t[e(471)]),this[e(392)][e(426)]({dts:t[e(340)]});const r=t.pts-t[e(340)];i=this[e(424)](i,t[e(471)]),this._doDecodeByMp4(i,W.video,t[e(340)],t[e(471)],r)}getBuferredDuration(){const t=zD;return this[t(421)][t(367)]||0}getSampleListLength(){const t=zD;return this.tempSampleListInfo[t(465)]||0}getSampleAudioListLength(){return this[zD(421)].audioListLength||0}[zD(472)](){const t=zD;return this.tempSampleListInfo[t(452)]||0}[zD(413)](){const t=zD;return{start:this.tempSampleListInfo[t(404)]||0,end:this[t(421)].end||0}}[zD(350)](t){const e=zD;this[e(429)](e(350),{time:t})}[zD(448)](t){const e=zD;this[e(392)][e(461)]&&this[e(392)].audio.clear(),xi(this[e(392)][e(475)]())&&(this.clearBuffer(!0),this._postMessageToLoopWorker(e(456)),this._postMessageToLoopWorker(e(327),{time:t}))}[zD(335)](){const t=zD;this[t(429)](t(335))}[zD(407)](){const t=zD;this[t(429)](t(407))}[zD(414)](){this._postMessageToLoopWorker("demuxNextFrame")}[zD(323)](t){const e=zD;this[e(429)](e(323),{nextIFrameTime:t})}[zD(339)](){const t=zD;let e=0;return e=this[t(413)]()[t(338)],e}[zD(453)](t){const e=zD;let s=[];this[e(443)]()?s=[175,1]:this[e(352)]()?s=[114]:this[e(470)]()?s=[130]:this[e(364)]()&&(s=[32]);const i=new Uint8Array(t.length+s[e(431)]);return i[e(355)](s,0),i[e(355)](t,s.length),i}}const QD=YD;function YD(t,e){const s=JD();return(YD=function(t,e){return s[t-=491]})(t,e)}function JD(){const t=["242322NunHIW","isInitVideo","demuxerResume","seekSampleRange","getBufferedVideoSegments","length","_demuxer",", clearSourceBuffer(","updateDuration","updateDuration()","endOfStream"," and end ","currentTime","media","demuxerPause","index","reset","cleanSampleListAndSetSeekTime","_mseOpened","mseDecoder","4856sWRtpc","955132ZKBuoI","demux","player"," <= 0 return","MP4BufferService","evictBuffer() removeEnd ","2286gXtnUO","getSampleAudioListLength","getBufferedSegments","isInitAudio","_mse","_needInitSegment","pause","demuxNextFrame","mp4","demuxNextIFrame","evictBuffer() video is waiting, return","updateMSE","getSampleVideoListLength","1382367BKohab","isPlayVod","destroy","4DJhKUB","debugLog","_sourceCreated","evictBuffer() mse start ","674590AJcEQj","55dYMIrw","getSampleListLength","3575840pWwydB"," return","isVideoWaiting","TAG_NAME","isPlayVodUseMSE","clearSourceBuffer","getSampleRange","631449sEnrmX","getBuferredDuration","evictBuffer","evictBuffer() start "];return(JD=function(){return t})()}!function(t){const e=YD,s=t();for(;;)try{if(360309===parseInt(e(513))/1+parseInt(e(548))/2+-parseInt(e(506))/3*(parseInt(e(509))/4)+-parseInt(e(514))/5*(parseInt(e(527))/6)+-parseInt(e(523))/7+-parseInt(e(547))/8*(parseInt(e(493))/9)+parseInt(e(516))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(JD);class XD{constructor(t,e){const s=YD;this.TAG_NAME=s(491),this[s(501)]=t,this.player=e,this[s(533)]=new qD(e),this[s(497)]=null,this[s(550)].isPlayVodUseMSE()&&(this._mse=this.player[s(546)]),this[s(498)]=!0,this[s(511)]=!1}async[QD(508)](){const t=QD;this[t(497)]=null,this[t(533)]&&(this[t(533)][t(508)](),this[t(533)]=null),this[t(501)]=null}[QD(504)](){const t=QD;this[t(550)][t(520)]()&&!this[t(497)]&&(this[t(497)]=this[t(550)][t(546)])}async appendBuffer(t,e,s,i,r){const n=QD;if(!t||!t.length)return;if(!this[n(533)])return;let o,a;s&&(o=[s[0][n(542)],s[s[n(532)]-1][n(542)]]),i&&(a=[i[0][n(542)],i[i.length-1].index]),(o||a)&&this[n(533)][n(549)](t,e,o,a,r)}async[QD(525)](t){const e=QD,s=this[e(501)][e(540)];if(!this[e(497)]||!this[e(533)]||!s||!t||t<0)return;const i=s[e(539)]-t;if(i<=0)return void this[e(550)].debugLog(this[e(519)],e(492)+i+e(551));const r=KC(QC(s));if(r+1>=i)return void this[e(550)][e(510)](this[e(519)],e(526)+r+" + 1 >= removeEnd "+i+e(517));if(this[e(550)].video[e(518)]())return void this.player[e(510)](this.TAG_NAME,e(503));const n=this[e(533)];return(n[e(496)]||n[e(528)])&&(this[e(550)][e(510)](this[e(519)],e(512)+r+e(538)+i+e(534)+0+", "+i+")"),this[e(497)][e(521)](0,i)),!0}async[QD(543)](){const t=QD;this._mse&&(this[t(545)]=!1),this[t(511)]=!1,this[t(498)]=!0}async[QD(537)](){this[QD(497)]}async[QD(535)](t){const e=QD;this.player[e(510)](this[e(519)],e(536),t),this[e(550)][e(507)]()&&(this[e(550)].playVod[e(535)](t),this[e(550)][e(520)]()&&this.player[e(546)]&&this[e(550)][e(546)].isStateOpen&&this[e(550)].mseDecoder.updateMediaSourceDuration(t))}[QD(530)](t){const e=QD;this[e(533)][e(530)](t)}[QD(544)](t){const e=QD;this[e(533)][e(544)](t)}[QD(541)](){const t=QD;this[t(533)]?.[t(499)]()}[QD(529)](){const t=QD;this[t(533)]?.resume()}demuxerNextFrame(){const t=QD;this[t(533)][t(500)]()}demuxerNextIFrame(t){const e=QD;this[e(533)][e(502)](t)}[QD(522)](){const t=QD;return this[t(533)][t(522)]()}[QD(524)](){const t=QD;return this._demuxer?.[t(524)]()}[QD(495)](){const t=QD;return this[t(533)]?.[t(515)]()}getBufferedAudioSegments(){const t=QD;return this[t(533)]?.[t(494)]()}[QD(531)](){const t=QD;return this[t(533)]?.[t(505)]()}}const $D=ZD;function ZD(t,e){const s=tL();return(ZD=function(t,e){return s[t-=453]})(t,e)}function tL(){const t=["min","demuxerNextFrame","onSeeking"," is loading so return","assign","destroy","_off","moov","_startTick","playVodPause","653463PuLaIB","isSeeking","getDemuxBuferredDuration","getTotalBits","resetBandwidth","frames","error","10RAmxsm","_opt","12651vBezhi","getDemuxBufferedListLength","_loader _end()","isLastSegment","playVod","debugLog","off"," and end is ","changeUrl","getBufferedSegments","demuxerNextIFrame","readyState","getDemuxVideoBufferedListLength","onSeeking() ","byteLength","getVideoCurrentTime","end","getSegmentByTime","275LnRPQi","playVodSeek","_prevSegmentEndTime","_bufferService","appendBuffer","_loadSegment() and _prevSegmentEndTime is ","28385AYRjBh","data","updateMSE","_emitOnLoaded"," more than maxEndTime ","_tick","_tickTimer","_end","playVodNextFrame","getBufferedAudioSegments","demuxerPause","_loadSegment() and error is","TAG_NAME","bound","emit","playVodVideoSeekingByMse","retry","40UZkrMw","reset","loadSource() "," and error is","playVodMaxBufferLength"," and segment is null so return","range","_loader","_setPrevSegmentEndTime","evictBuffer","addRecord","endOfStream","init","video","186RpVoON","onPause","audio","listen playVodSeek onSeeking() ","835790QsPZFv","onPlayVodPause","_reset","media","_loadSegment","onVideoSeeking","options","2925864zTPlxQ","onPlayVodNextIFrame","tickInterval","index","duration","_stopTick","endTime","_config","getAvgSpeed","_bandwidthService","isVideo4k","loadSource","getLatestSpeed","isPlayVod","speedInfo","Mp4","loadSegmentByTime","_loading","onPlayVodNextFrame","getRenderCurrentPts","$videoElement","519335YFmqLi","playVodNextIFrame"," and segment ","message","1006785ldmCUg","bind","rate","isPlayVodUseMSE","isSegmentLoading","player","url"];return(tL=function(){return t})()}!function(t){const e=ZD,s=t();for(;;)try{if(421072===-parseInt(e(529))/1+-parseInt(e(557))/2*(-parseInt(e(559))/3)+-parseInt(e(508))/4+-parseInt(e(533))/5+-parseInt(e(497))/6*(-parseInt(e(466))/7)+-parseInt(e(483))/8*(parseInt(e(550))/9)+parseInt(e(501))/10*(parseInt(e(460))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(tL);class eL extends h{constructor(t,e={}){const s=ZD;var i;super(),this[s(478)]=s(523),this.player=t,this._prevSegmentEndTime=0,this._tickTimer=null,this[s(525)]=!1,this[s(515)]=(i=e,Object[ZD(544)]({tickInterval:500,preloadTime:10,bufferBehind:10,segmentDuration:void 0,url:"",retry:3,retryDelay:100},i)),this[s(463)]=new XD(this,t),this[s(517)]=new O_,this._loader=new GD(this,this.player,{url:e[s(539)],retry:e[s(482)],retryDelay:e.retryDelay}),this[s(504)]=null,this.bound={onVideoSeeking:this.onVideoSeeking[s(534)](this),onSeeking:this[s(542)][s(534)](this),onPlayVodPause:this.onPlayVodPause.bind(this),onPlayVodNextFrame:this[s(526)].bind(this),onPlayVodNextIFrame:this[s(509)][s(534)](this)},this[s(538)][s(521)]()&&(this.player.on(q[s(549)],this[s(479)][s(502)]),this.player.on(q.playVodNextFrame,this[s(479)][s(526)]),this[s(538)].on(q[s(530)],this.bound[s(509)]),this[s(538)][s(536)]()?(this[s(504)]=this.player[s(496)][s(528)],this[s(538)].on(q[s(481)],this[s(479)][s(506)])):this.player.on(q[s(461)],this[s(479)][s(542)])),this[s(538)][s(564)](this.TAG_NAME,s(495))}async[$D(545)](){const t=$D;this[t(546)](),await this[t(503)](),this._bufferService&&(await this[t(463)][t(545)](),this[t(463)]=null),this[t(490)]&&(await this[t(490)][t(545)](),this._loader=null),this[t(517)]&&(this[t(517)].destroy(),this[t(517)]=null),this[t(479)]=null,this[t(504)]=null,this[t(538)][t(564)](this.TAG_NAME,t(545))}[$D(546)](){const t=$D;this.player[t(521)]()&&(this[t(538)][t(564)](this[t(478)],"_off()"),this[t(538)][t(565)](q[t(549)],this[t(479)][t(502)]),this[t(538)][t(565)](q[t(474)],this[t(479)].onPlayVodNextFrame),this[t(538)][t(565)](q.playVodNextIFrame,this[t(479)][t(509)]),this[t(538)][t(536)]()?this[t(538)][t(565)](q.playVodVideoSeekingByMse,this[t(479)].onVideoSeeking):this[t(538)][t(565)](q[t(461)],this[t(479)].onSeeking))}async[$D(503)](){const t=$D;this[t(513)](),await this._loader.reset(),await this[t(463)][t(484)](),this[t(462)]=0,this[t(525)]=!1,this[t(517)][t(484)]()}async[$D(519)](t){const e=$D;this.player.debugLog(this[e(478)],e(485)+t),this._bufferService[e(468)](),t&&await this._loader[e(567)](t),this[e(548)](this[e(515)].tickInterval),await this[e(505)](0)}async[$D(505)](t){const e=$D;if(this[e(525)])return;let s=this[e(538)][e(527)]();s/=1e3;let i=this[e(538)][e(563)][e(535)];this[e(538)][e(563)][e(551)]();let r=this[e(538)]._opt[e(487)];this.player.isPlayVodUseMSE()&&(s=this.player[e(457)](),i=Math[e(540)](i,8),this[e(538)][e(518)]()&&(r=Math[e(540)](r,15)));const n=r*i+s;if(this._prevSegmentEndTime&&this[e(462)]>n)return void this[e(538)][e(564)](this[e(478)],e(465)+this[e(462)]+" and current time is "+s+e(470)+n+" and return");let o;this[e(525)]=!0;try{o=null!=t?await this._loader[e(524)](t):await this._loader.loadNextSegment()}catch(s){this[e(538)].debugError(this[e(478)],"_loadSegment() and time is "+t+e(486),s[e(532)]),this.emit(ne[e(556)],s[e(532)])}if(!o)return void(this[e(525)]=!1);this[e(469)](o);const a=Math[e(540)](o[e(496)]?.endTime||1/0,o[e(499)]?.[e(514)]||1/0);this[e(491)](a);try{await this[e(463)][e(464)](o[e(467)],o[e(507)][e(489)][0],o[e(496)]?.frames,o[e(499)]?.[e(555)],this[e(490)].meta[e(547)]),await this[e(463)][e(492)](this[e(538)][e(558)].playVodBackBufferLength)}catch(t){this[e(538)].debugError(this[e(478)],e(477),t[e(532)]),this[e(480)](ne[e(556)],t[e(532)])}finally{this[e(525)]=!1}this._loader[e(562)](o.video?.index||o[e(499)]?.[e(511)]||0)?this[e(473)]():this[e(505)]()}[$D(473)](){const t=$D;this[t(538)].debugLog(this[t(478)],t(561)),this[t(463)][t(494)](),this[t(513)]()}[$D(469)](t){const e=$D,{data:s,response:i,options:r}=t,{firstByteTime:n,startTime:o,endTime:a,contentLength:h}=r||{},l=a-o;this[e(517)][e(493)](h||s[e(456)],l)}[$D(554)](){const t=$D;this._bandwidthService[t(484)]()}onPlayVodPause=async t=>{t?this[$D(498)]():await this.onPlay()};[$D(526)]=()=>{const t=$D;this[t(463)][t(541)]()};onPlayVodNextIFrame=t=>{const e=$D;this._bufferService[e(569)](t),this._loadSegment()};[$D(506)]=async t=>{const e=$D;this.player[e(564)](this[e(478)],"listen playVodVideoSeekingByMse",t),await this[e(542)](t)};[$D(542)]=async t=>{const e=$D;this.player[e(564)](this.TAG_NAME,e(500)+t);const s=this[e(490)],{video:i,audio:r}=s[e(459)](t),n=i||r;if(n)if(s[e(537)](n[e(511)]))this[e(538)][e(564)](this.TAG_NAME,e(455)+t+e(531)+n[e(511)]+e(543));else{if(this[e(504)]){const s=this[e(504)],i=XC(QC(s),t,.1);if(i[e(458)]&&(i[e(458)]>=n[e(514)]||i[e(458)]>=s[e(512)]))return void this.player[e(564)](this[e(478)],"onSeeking() "+t+e(566)+i[e(458)]+" and segment "+n.index+" is loading so return")}this._bufferService.cleanSampleListAndSetSeekTime(t),await s.cancel(),this[e(525)]=!1,this[e(491)](0),await this[e(505)](t),this[e(548)]()}else this[e(538)].debugLog(this[e(478)],e(455)+t+e(488))};[$D(491)](t){this[$D(462)]=t}[$D(548)](t=0){const e=$D;this[e(513)](),this._tickTimer=setTimeout(this[e(471)],t)}[$D(513)](){const t=$D;this[t(472)]&&(clearTimeout(this[t(472)]),this._tickTimer=null)}[$D(471)]=async()=>{const t=$D;if(this[t(513)](),this[t(548)](this[t(515)][t(510)]),this.media){const e=this[t(504)];if(function(t){const e=qC;return t&&t.length?1===t.length&&t.end(0)-t.start(0)<1e-6?0:t[e(237)](t.length-1):0}(QC(e))<.1||!e[t(453)])return;Hi(e)&&this[t(505)]()}else this[t(505)]()};onPause(){const t=$D;this[t(538)][t(564)](this[t(478)],"onPause()"),this[t(463)][t(476)](),this[t(513)]()}async onPlay(){const t=$D;this[t(538)][t(564)](this[t(478)],"onPlay()"),this[t(463)].demuxerResume(),await this[t(505)](),this._startTick()}[$D(522)](){const t=$D;return{speed:this[t(517)][t(520)](),avgSpeed:this._bandwidthService[t(516)](),totalBits:this[t(517)][t(553)]()}}[$D(552)](){return this[$D(463)].getBuferredDuration()||0}[$D(560)](){const t=$D;return this[t(463)][t(568)]()||0}getDemuxAudioBufferedListLength(){const t=$D;return this[t(463)][t(475)]()||0}[$D(454)](){return this[$D(463)].getBufferedVideoSegments()||0}}const sL=iL;function iL(t,e){const s=rL();return(iL=function(t,e){return s[t-=355]})(t,e)}function rL(){const t=[", audioCodec is ","mdia","530540BIFONt","findBox"," and isSupportHevc is ","stbl","40DHTjox","error","g711NotSupported","size","data","_startBandwidthEstimateInterval","584XmLNLp","isUseVideoPlay","_checkVideoCanPlay","codec","$videoElement","crossOrigin","handleMp4Error","loadSource() ","load","_bindEvents","soun","getDemuxAudioBufferedListLength","bandwidthEstimateInterval","540069VNZrli","length","kBps",", isG711 is ","anonymous","minf","_loader","find","Mp4Decoder","debugLog","destroy","hevcNotSupported","entries","trak","totalBits","_stopBandwidthEstimateInterval","canVideoPlay","mp4a","bind","bandwidthLastTime","speedInfo","hdlr","initVideoPlay","_opt","G711U","G711A","start","12UwUtli","no moov box found","eventsDestroy","autoplay","audioCodec","video"," and not support","6161280jpYkfo","_handlePlayVodPause","_off","audioTrack","AAC","playVodPause","no mdat box found","_checkVideoCanPlay and videoCodec is ","38276ykaXtG","loadSource and canVideoPlay and use video src to play","off","pause","_handlePlayVodPause(): ","load moov box failed","src","sampleRate","loadSource","mp3","getDemuxBufferedListLength","channelCount","emitError","mdat","stsd","77211XMOIkc","resetBandwidth","playVodMp4UseSrc","MP3","indexOf","init","playVodMp4Error","moov","videoTrack","bound","6887560PFORYI","handlePlayVodPause","player","url","message","ulaw","forEach","getDemuxVideoBufferedListLength","hvc","load mp4 file failed","TAG_NAME","videoCodec","5639319VabDSc","mp4","h265"];return(rL=function(){return t})()}!function(t){const e=iL,s=t();for(;;)try{if(784924===-parseInt(e(434))/1+-parseInt(e(377))/2*(-parseInt(e(457))/3)+parseInt(e(392))/4*(parseInt(e(438))/5)+parseInt(e(384))/6+-parseInt(e(429))/7+-parseInt(e(444))/8*(-parseInt(e(407))/9)+-parseInt(e(417))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(rL);class nL extends h{constructor(t){const e=iL;super(),this[e(419)]=t,this.TAG_NAME=e(358),this[e(366)]=!1,this[e(448)]=this[e(419)][e(382)].$videoElement,this[e(430)]=null,this[e(379)]=[],this[e(456)]=null,this[e(369)]=0,this[e(428)]="",this[e(381)]="",this.audioTrack={sampleRate:0,channelCount:0,codec:"",codecType:""},this.videoTrack={codec:""},this.bound={handlePlayVodPause:this[e(385)][e(368)](this),handleMp4Error:this._handleMp4Error[e(368)](this)},this[e(356)]=null,this.player[e(373)][e(409)]?this.canVideoPlay=!0:(this.mp4=new eL(t),this[e(453)]()),this[e(419)][e(359)](this[e(427)],e(412))}async[sL(360)](){const t=sL;return this[t(386)](),this[t(365)](),this._loader&&(this[t(356)][t(360)](),this[t(356)]=null),this.mp4&&(await this.mp4.destroy(),this[t(430)]=null),this[t(379)][t(458)]&&(this[t(379)][t(423)](t=>t()),this.eventsDestroy=[]),this.audioCodec=null,this[t(428)]=null,this[t(415)]=null,this[t(387)]=null,this[t(448)]=null,this[t(416)]=null,this[t(419)][t(359)](this[t(427)],t(360)),!0}[sL(386)](){const t=sL;this.player[t(359)](this[t(427)],"_off()"),this[t(430)]&&this[t(430)][t(394)](ne[t(439)],this[t(416)].handleMp4Error),this[t(366)]&&this.player[t(394)](q[t(389)],this.bound.handlePlayVodPause)}async[sL(372)](t){const e=sL,s=await this._checkVideoCanPlay(t);return s.result?(this[e(448)][e(449)]=e(461),this[e(448)][e(380)]=!0,this.$videoElement[e(398)]=t,this[e(419)].on(q.playVodPause,this[e(416)][e(418)])):this[e(419)][e(404)](J.playVodMp4UseSrcError,s[e(421)]),!0}async[sL(446)](t){const e=sL,s=Ms()||Bs();Es(),!this._loader&&(this[e(356)]=new zk({responseType:"arraybuffer"},this[e(419)]));let i=await this._loader[e(452)](t,{range:[0,8e4]});if(!i)return{result:!1,message:e(426)};let r=OC.findBox(i.data,[e(414)])[0];if(!r){const s=OC[e(435)](i[e(442)],[e(405)])[0];if(!s)return{result:!1,message:e(390)};const n=s[e(376)]+s[e(441)];if(i=await this[e(356)].load(t,{range:[n]}),!i)return{result:!1,message:e(397)};if(r=OC[e(435)](i[e(442)],[e(414)],n)[0],!r)return{result:!1,message:e(378)}}if(r.size>r[e(442)][e(458)]){if(i=await this[e(356)][e(452)](t,{range:[i.data[e(458)],r[e(376)]+r.size-1]}),!i)return{result:!1,message:e(397)};r.data=Qi(r.data,i[e(442)])}const n=OC[e(414)](r);if(!n)return{result:!1,message:"parse moov box failed"};const o=RD(n),a=o[e(381)],h=o[e(428)];this[e(419)][e(359)](this[e(427)],e(391)+h+e(432)+a);let l=!1;this[e(428)]=et.h264,h&&(-1!==h[e(411)]("hev")||-1!==h.indexOf(e(425)))&&(l=!0,this[e(428)]=et[e(431)]);let c=!1;if(a){const t=n[e(363)][e(357)](t=>t[e(433)]?.[e(371)]?.handlerType===e(454));if(-1!==a[e(411)](e(401))){if(this[e(381)]=it.MP3,this[e(387)][e(447)]=it[e(410)],t){const s=t[e(433)][e(355)].stbl[e(406)][e(362)][0];this[e(387)][e(399)]=s[e(399)],this.audioTrack[e(403)]=s[e(403)]}}else if(-1!==a.indexOf(e(367))){if(this[e(381)]=it[e(388)],this[e(387)][e(447)]=it[e(388)],t){const s=t[e(433)][e(355)][e(437)][e(406)][e(362)][0];this[e(387)][e(399)]=s[e(399)],this[e(387)][e(403)]=s.channelCount}}else-1!==a.indexOf(e(422))?(c=!0,this.audioCodec=it[e(374)],this[e(387)].codec=it[e(374)],this.audioTrack[e(399)]=8e3,this[e(387)][e(403)]=1):-1!==a[e(411)]("alaw")&&(c=!0,this[e(381)]=it[e(375)],this[e(387)][e(447)]=it[e(375)],this[e(387)][e(399)]=8e3,this.audioTrack[e(403)]=1)}if(l&&xi(s)||c){const t=l?U[e(361)]:U[e(440)];return this.player[e(359)](this[e(427)]," _checkVideoCanPlay and isHevc is "+l+e(436)+s+e(460)+c+e(383)),{result:!1,message:t,isHevc:l,isG711:c}}return{result:!0}}[sL(385)](t){const e=sL;this[e(419)][e(359)](this[e(427)],e(396)+t),t?this.$videoElement[e(395)]():this[e(448)].play()}[sL(453)](){const t=sL;this.mp4.on(ne[t(439)],this[t(416)][t(450)])}_handleMp4Error(t){const e=sL;this[e(419)][e(404)](J[e(413)],t)}[sL(443)](){const t=sL;this[t(365)](),this.bandwidthLastTime=cs(),this.bandwidthEstimateInterval=setInterval(()=>{const e=t;if(!this[e(430)])return;const s=this[e(430)][e(370)]()[e(364)],i=cs(),r=s/(i-this[e(369)])*1e3;this[e(419)].emit(q[e(459)],(r/1e3).toFixed(2)),this[e(430)][e(408)](),this[e(369)]=i},1e3)}_stopBandwidthEstimateInterval(){const t=sL;this[t(456)]&&(clearInterval(this[t(456)]),this.bandwidthEstimateInterval=null),this[t(369)]=0}async[sL(400)](t){const e=sL;return this[e(420)]=t,this[e(366)]?(this.player[e(359)](this[e(427)],e(393),t),await this[e(372)](t)):(this[e(419)][e(359)](this[e(427)],e(451)+t),await this[e(430)][e(400)](t),this[e(443)]()),!0}[sL(402)](){const t=sL;let e=0;return this[t(430)]&&(e=this[t(430)][t(402)]()),e}[sL(455)](){const t=sL;let e=0;return this.mp4&&(e=this[t(430)][t(455)]()),e}[sL(424)](){const t=sL;let e=0;return this.mp4&&(e=this.mp4[t(424)]()),e}getDemuxBufferedListLength(){const t=sL;let e=0;return this[t(430)]&&(e=this[t(430)].getDemuxBufferedListLength()),e}[sL(445)](){return this[sL(366)]}}function oL(t,e){const s=hL();return(oL=function(t,e){return s[t-=235]})(t,e)}const aL=oL;function hL(){const t=["controlType","_startLocalCalculateTime","_totalDuration","startTime","_localOneFrameTimestamp","_listen","videoCurrentTimeDiff"," * ","currentPts","decoderWorker","updateSpecialPlaybackDuration","true","useWasm","getPlaybackDemuxBufferLastTimestamp","clearStatsInterval","_isUseLocalCalculateTime","_startFpsTimestamp","isRateLessThanOne","is10Min","listenStats","isPlaybackPauseClearCache","rate","getControlType","oneHour","_isTimeInPlaybackList","isPlaybackH24","setShowPrecision","_audioTimestamp","totalDuration","showControl","indexOf","round"," and\n useSIMD is ","localOneFrameTimestamp","forEach","bufferSize","bound","playbackShowPrecisionChange","playbackStats","_playStartTime","debugLog"," > this.totalDuration ","init","once","playbackList"," , playbackStreamBufferByteLength is ","TAG_NAME","tenMin","playbackTimestamp","handlePlaybackPause","hasRecord","setStartTime","halfHour","useSIMD","_isPlaybackPauseClearCache"," and\n useMThreading is ","13927628wAbMpw","261iVDANT","$container","destroy","isUseLocalCalculateTime","off","updateStats and videoCurrentTimeDiff is 0 and\n videoCurrentTime is ","playbackSeek","playbackCacheDataDuration","isEnded","_startTime","mseDecoder","_rate","useMThreading","571200byudAG","playbackPause","isPlaybackPauseNotClearCacheAndCacheBeforeDecode","setShowPrecision()","_opt","fiveMin","_calcFps","20IdHdfO","_isUpdateSpecialPlaybackDurationOnce","calcPlaybackForwardMaxRateDecodeIFrame() and\n useWCS is ","playbackForwardMaxRateDecodeIFrame","playList","_isCacheBeforeDecodeForFpsRender"," and\n isFFmpegSIMD is ","type","classList","videoInfo","pause"," and _playStartTime is ","_playbackListStartTimestamp"," and\n calcForwardMaxRateDecodeIFrame is ","constructor()","calcPlaybackForwardMaxRateDecodeIFrame is true and next calc","setRate","expandPrecision","videoCurrentTime","emit","updateSpecialPlaybackDuration and demuxLastTimestamp is 0 and return","_localCalculateTimeInterval","playbackTimeScroll","jb-pro-container-playback","isUseFpsRender","1815942BFRrGJ","controlType is not in [normal,simple]","_videoTimestamp","playbackEndInner","streamBuffer","video","increaseLocalTimestamp","isCacheBeforeDecodeForFpsRender","_fps","includes","start","calcForwardMaxRateDecodeIFrame","playbackFps","fps","second","_prevSpecialPlaybackLastTimestamp","playbackPrecision","_showPrecision","isPlaybackUseMSE","useWCS","startTimestamp","setPlayingTimestamp","width","setHours","55864WpuiKe","type is not in PLAYBACK_CONTROL_TIME_PRECISION_ARRAY","seek()","updateSpecialPlaybackDuration() and demuxLastTimestamp is "," and check is ended","_prevPlayingTimestamp"," and\n video encode code is ","766305xfxSNE","resume","stopLocalCalculateTime","isPlaybackSimple","end","playingTimestamp","updateStats","isControlTypeSimple","_off()","endTime","simple","is30Min","_playingTimestamp","length","initPlaybackList","init _playStartTime ts is ","_isUseFpsRender","setPlayingTimestamp()","player"," and totalDuration is ","playbackRateChange","_startfpsTime","add","isRateMoreThanMaxRateDecodeIFrame","audio","6CKLfdm"," and\n video info is ","isSpecialPlaybackVod","uiUsePlaybackPause","_isEndedInner","setStartTime()","3604455Ztazau","is1Min","isPlaying","_playbackTs","time"," and return","listenCurrentPts","endTimestamp","_stopLocalCalculateTime","calcPlaybackForwardMaxRateDecodeIFrame","_off","more","_renderFps","updateLocalOneFrameTimestamp","3549490REzsbU","_findMoreInfoByTimestamp","bind","emitPlaybackPrecisionForNormal","seek","_checkStatsInterval","duration","debugWarn","20HZTLvR","stats","Playback","startCheckStatsInterval","min","showPrecision","isPlaybackStreamEnd","normal","hour","playbackTime"," and\n useWasm is ","_reset"];return(hL=function(){return t})()}!function(t){const e=oL,s=t();for(;;)try{if(937312===parseInt(e(399))/1+-parseInt(e(431))/2+-parseInt(e(295))/3+parseInt(e(406))/4*(-parseInt(e(264))/5)+parseInt(e(289))/6*(parseInt(e(309))/7)+-parseInt(e(257))/8*(-parseInt(e(386))/9)+-parseInt(e(317))/10*(-parseInt(e(385))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(hL);class lL extends h{constructor(t,e){const s=oL;if(super(),this.player=t,this[s(375)]=s(319),this[s(282)].$container[s(414)][s(286)](s(429)),this._reset(),this[s(241)]=parseInt(e[s(246)],10)||t[s(403)][s(245)],this[s(280)]=!!Pi(e[s(430)]),this.controlType=e.controlType||S[s(324)],e[s(329)]&&-1===[S.normal,S[s(274)]][s(359)](e[s(329)])&&(this[s(282)][s(316)](this.TAG_NAME,s(420),s(432),e[s(329)]),this[s(329)]=S[s(324)]),this[s(333)]=e[s(362)]||40,this[s(427)]=null,this[s(344)]=!!Pi(e[s(389)]),this._isPlaybackPauseClearCache=!xi(e[s(349)]),this[s(411)]=!!Pi(e[s(240)]),this[s(314)]=null,this[s(293)]=!1,this.bound={updateStats:this[s(270)].bind(this),calcPlaybackForwardMaxRateDecodeIFrame:this[s(304)].bind(this),handlePlaybackPause:this[s(378)][s(311)](this),listenCurrentPts:this[s(301)][s(311)](this),listenStats:this[s(348)][s(311)](this)},this[s(344)]?this[s(330)]():this[s(334)](),this[s(331)]=0,this.controlType===S[s(324)])this[s(278)](e[s(410)],e[s(322)],e.startTime);else if(this[s(329)]===S.simple){e[s(315)]&&(this[s(331)]=1e3*e[s(315)]);let t=e.startTime||0;t>this[s(357)]&&(t=this[s(357)]),this.setStartTime(t)}this[s(282)].on(q.playbackPause,this.bound[s(378)]);const i={fps:this._fps,isUseFpsRender:this._isUseFpsRender,localOneFrameTimestamp:this[s(333)],isUseLocalCalculateTime:this[s(344)],uiUsePlaybackPause:e[s(292)],showControl:e[s(358)]};this.calcForwardMaxRateDecodeIFrame=this[s(282)][s(403)][s(409)],this[s(282)][s(403)][s(304)]&&(this[s(282)].debugLog(this[s(375)],s(371),s(421)),this[s(282)][s(372)](q[s(415)],this.bound[s(304)]));try{t[s(369)](this.TAG_NAME,"init",JSON.stringify(i))}catch(e){t[s(369)](this[s(375)],s(371),i)}}destroy(){const t=oL;this[t(305)](),this._stopLocalCalculateTime(),this[t(343)](),this[t(328)](),this[t(282)][t(387)]&&this[t(282)].$container.classList.remove(t(429)),this[t(390)](),this[t(293)]=!1,this[t(365)]=null,this[t(282)][t(369)](this[t(375)],t(388))}_off(){const t=oL;this[t(282)][t(369)](this.TAG_NAME,t(272)),this[t(282)][t(390)](q[t(400)],this.bound.handlePlaybackPause),this[t(282)][t(390)](q[t(337)],this[t(365)].listenCurrentPts),this[t(282)][t(390)](q.stats,this[t(365)][t(348)])}[aL(378)](t){t?this[aL(416)]():this.resume()}[aL(328)](){const t=aL;this[t(395)]=null,this[t(250)]=null,this._playStartTime=null,this._playingTimestamp=null,this[t(262)]=null,this[t(331)]=0,this[t(356)]=0,this[t(235)]=0,this[t(241)]=null,this[t(405)]=null,this._isUseFpsRender=!1,this[t(397)]=1,this[t(373)]=[],this[t(418)]=null,this[t(244)]=null,this._currentLocalTimestamp=0,this[t(285)]=null,this[t(345)]=null,this[t(307)]=0,this[t(298)]=0,this._isUpdateSpecialPlaybackDurationOnce=!1,this[t(248)]=0}[aL(334)](){const t=aL;this[t(282)].on(q.currentPts,this.bound[t(301)]),this[t(282)].on(q[t(318)],this.bound[t(348)])}[aL(301)](t){const e=aL,s=t;null===this[e(368)]&&(this.player.debugLog(this[e(375)],e(279)+s),this._playStartTime=s);let i=s-this[e(368)];this[e(254)](i)}listenStats(t){const e=aL;if(!this[e(282)][e(400)]&&(this[e(282)].isPlaybackUseMSE()&&this[e(282)].isPlaying()&&0===t[e(335)]&&(this[e(282)][e(316)](this.TAG_NAME,e(391)+t[e(424)]+"\n and next update video currentTime"),this[e(282)][e(396)].updateVideoCurrentTimeByBufferStart()),this[e(282)][e(323)]()&&this[e(282)][e(297)]()))if(this[e(339)](),this.player[e(251)]()){const s=0===t[e(335)];this[e(282)].mseDecoder.isCurrentTimeInBufferEnd()&&s&&(this[e(282)][e(369)](this[e(375)],"check stats and is playback use mse and check is ended"),this._isEndedInner=!0,this[e(282)][e(425)](q[e(236)]))}else{const s=t[e(393)],i=t[e(237)];0===s&&i<500&&(this[e(282)][e(369)](this[e(375)],"check stats and is playback use (wasm or wcs) and playbackCacheDataDuration is "+s+e(374)+i+e(261)),this[e(293)]=!0,this.player[e(425)](q[e(236)]))}}[aL(416)](){this.clearStatsInterval()}[aL(265)](){this[aL(320)]()}[aL(270)](t={}){const e=aL;!this[e(345)]&&(this[e(345)]=os()),Ws(t.ts)&&(this[e(282)][e(270)]({fps:!0,ts:t.ts}),this[e(298)]=t.ts,!this[e(285)]&&(this._startfpsTime=t.ts),this._renderFps+=1);const s=os(),i=s-this[e(345)];if(i<1e3)return;let r=null;this._startfpsTime&&(r=this[e(298)]-this._startfpsTime),this[e(282)].emit(q[e(367)],{fps:this[e(307)],rate:this.rate,start:this[e(285)],end:this[e(298)],timestamp:i,dataTimestamp:r,audioBufferSize:this[e(282)][e(288)]?this.player[e(288)][e(364)]:0,videoBufferSize:this[e(282)].video?this[e(282)][e(238)][e(364)]:0,ts:this._playbackTs}),this[e(307)]=0,this[e(285)]=this[e(298)],this[e(345)]=s}[aL(308)](t){this[aL(333)]=t}[aL(330)](){const t=aL;this[t(282)].debugLog(this[t(375)],"_startLocalCalculateTime()"),this[t(303)](),this[t(427)]=setInterval(()=>{const e=t,s=this._currentLocalTimestamp;null===this._playStartTime&&(this[e(368)]=s);let i=s-this._playStartTime;this.setPlayingTimestamp(i)},1e3)}[aL(320)](){const t=aL;this[t(343)](),this[t(314)]=setInterval(this[t(365)][t(270)],1e3)}[aL(266)](){this[aL(303)]()}[aL(303)](){const t=aL;this._localCalculateTimeInterval&&(clearInterval(this._localCalculateTimeInterval),this[t(427)]=null)}[aL(343)](){const t=aL;this._checkStatsInterval&&(clearInterval(this[t(314)]),this[t(314)]=null)}[aL(239)](){const t=aL;this._isUseLocalCalculateTime&&(this._currentLocalTimestamp+=this[t(333)])}[aL(278)](t,e,s){const i=aL;this[i(373)]=t||[];let r=0;if(this[i(373)][i(363)]((t,e)=>{const s=i;10===ti(t[s(243)])?(t[s(253)]=1e3*t[s(243)],t[s(332)]=Ts(t.startTimestamp)):(t.startTimestamp=t[s(243)],t.startTime=Ts(t.startTimestamp)),10===ti(t.end)?(t[s(302)]=1e3*t[s(268)],t[s(273)]=Ts(t[s(302)])):(t.endTimestamp=t[s(268)],t[s(273)]=Ts(t[s(302)])),t[s(315)]=t.end-t[s(243)],r+=t.duration}),this[i(331)]=r,this.player[i(369)](this[i(375)],this[i(373)]),this[i(373)][i(277)]>0){const t=this.playbackList[0][i(253)];this[i(418)]=t;let e=t;s&&(10===ti(s)&&(s*=1e3),this[i(353)](s)&&(e=s)),this[i(380)](e)}const n=e||ft[i(352)];this.setShowPrecision(n)}get[aL(357)](){return(this._totalDuration||0)/1e3}get[aL(332)](){return this[aL(395)]||0}[aL(380)](t){const e=aL;this[e(282)][e(369)](this.TAG_NAME,e(294),t),this[e(395)]=t,this[e(276)]=t,this[e(262)]=null,this[e(368)]=null}[aL(422)](t){const e=aL,s=this._rate;this[e(397)]=t,this.player[e(425)](q[e(284)],t,s)}get fps(){const t=aL;return this[t(405)]||this[t(241)]}get rate(){return this[aL(397)]}get isUseFpsRender(){return this[aL(280)]}get[aL(389)](){return this[aL(344)]}get[aL(322)](){return this[aL(250)]}get is60Min(){return this.showPrecision===ft.oneHour}get[aL(275)](){const t=aL;return this[t(322)]===ft[t(381)]}get[aL(347)](){const t=aL;return this[t(322)]===ft[t(376)]}get is5Min(){const t=aL;return this[t(322)]===ft[t(404)]}get[aL(296)](){return this[aL(322)]===ft.fiveMin}get[aL(349)](){return this[aL(383)]}get isCacheBeforeDecodeForFpsRender(){return this._isCacheBeforeDecodeForFpsRender}setShowPrecision(t){const e=aL;!gt[e(242)](t)&&(this.player[e(316)](this[e(375)],e(402),e(258),t),t=ft[e(352)]),this[e(250)]&&this[e(250)]===t||(this._showPrecision=t,this[e(312)]())}emitPlaybackPrecisionForNormal(){const t=aL;this[t(354)]()&&(this.player[t(425)](q[t(249)],this[t(250)],this[t(373)]),this[t(282)][t(425)](q[t(366)],this[t(250)]))}[aL(254)](t){const e=aL;let s;if(this[e(329)]===S.normal){if(s=this[e(332)]+t,this[e(276)]=s,null!==this[e(262)]&&this._playingTimestamp-this[e(262)]<1e3)return;if(null===this[e(262)]||null!==this._prevPlayingTimestamp&&this[e(276)]>this[e(262)]){this[e(282)][e(425)](q.playbackTime,s);const t=function(t){const e=es;return 0===arguments.length?null:(typeof t===e(487)?s=t:(10===(""+t).length&&(t=1e3*parseInt(t)),t=+t,s=new Date(t)),{year:s.getFullYear(),month:s[e(680)]()+1,data:s[e(565)](),hour:s[e(708)](),min:s[e(423)](),second:s[e(657)](),ms:s.getMilliseconds(),day:s[e(638)]()});var s}(s);this[e(282)][e(425)](q[e(377)],{ts:s,hour:t[e(325)],min:t.min,second:t[e(247)]}),this._prevPlayingTimestamp=this[e(276)]}}else this[e(329)]===S[e(274)]&&(s=this[e(332)]+Math[e(360)](t/1e3),s>this[e(357)]&&this[e(357)]>0&&(this[e(282)][e(369)](this[e(375)],e(281),"timestamp "+s+e(370)+this.totalDuration),s=this.totalDuration),this._playingTimestamp=s,(null===this[e(262)]||null!==this._prevPlayingTimestamp&&this[e(276)]>this[e(262)])&&(this.player[e(425)](q[e(326)],s),this[e(282)][e(425)](q[e(377)],{ts:s}),this[e(262)]=this[e(276)]))}get[aL(269)](){return this[aL(276)]}getFps(){return this.fps}narrowPrecision(){const t=aL,e=gt[t(359)](this[t(322)])-1;if(e>=0){const s=gt[e];this[t(355)](s)}}[aL(423)](){const t=aL,e=gt.indexOf(this.showPrecision)+1;if(e<=gt[t(277)]-1){const s=gt[e];this[t(355)](s)}}[aL(313)](t){const e=aL;if(this[e(282)][e(369)](this[e(375)],e(259),t),this[e(329)]===S[e(324)]){if(t[e(379)]===e(340)){let s=t[e(299)];t[e(413)]===e(321)&&(s=60*t[e(299)]);let i=function(t){let e={};t>-1&&(e={hour:Math.floor(t/60/60)%60,min:Math.floor(t/60)%60,second:t%60});return e}(s);if(this._playbackListStartTimestamp){const t=new Date(this[e(418)])[e(256)](i[e(325)],i[e(321)],i[e(247)],0);i.timestamp=t;const s=this[e(310)](t);i&&s.more&&(i[e(306)]=s[e(306)])}this[e(282)][e(425)](q.playbackSeek,i)}}else if(this.controlType===S[e(274)]){let s=t[e(299)];this[e(282)][e(425)](q[e(392)],{ts:s})}}currentTimeScroll(){const t=aL;this[t(282)][t(425)](q[t(428)])}[aL(339)](){const t=aL;if(!this[t(282)].isPlaybackCacheBeforeDecodeAndUseFpsRender()||!this[t(282)]._opt[t(291)])return;if(this[t(331)]>0)return;const e=this[t(282)][t(342)]();if(0!==e){if(!this[t(407)])return this._prevSpecialPlaybackLastTimestamp=e,this[t(407)]=!0,void this[t(282)][t(369)](this[t(375)],"updateSpecialPlaybackDuration and first set _prevSpecialPlaybackLastTimestamp is "+this[t(248)]+t(300));if(e>=this[t(248)]){let s=e-this[t(368)];this.player.debugLog(this[t(375)],t(260)+e+t(417)+this._playStartTime+t(283)+s),this[t(331)]=s}}else this[t(282)][t(369)](this.TAG_NAME,t(426))}[aL(310)](t){const e=aL;let s=null;return this[e(373)][e(363)]((i,r)=>{const n=e;i[n(253)]<=t&&i[n(302)]>=t&&(s=i)}),s}[aL(353)](t){const e=aL;let s=!1;return this[e(373)][e(363)]((i,r)=>{const n=e;i[n(253)]<=t&&i[n(302)]>=t&&(s=!0)}),s}calcPlaybackForwardMaxRateDecodeIFrame(t){const e=aL,s=this[e(282)][e(403)];let i=qi(t,{useWCS:s[e(252)],useWasm:s.useWasm,useSIMD:s[e(382)],isFFmpegSIMD:s.isFFmpegSIMD,useMThreading:s[e(398)]});this[e(282)][e(369)](this[e(375)],e(408)+this.player[e(403)][e(252)]+e(327)+this[e(282)][e(403)][e(341)]+e(361)+this[e(282)][e(403)].useSIMD+e(412)+this[e(282)][e(403)].isFFmpegSIMD+e(384)+this[e(282)][e(403)][e(398)]+e(290)+t[e(255)]+e(336)+t.height+e(263)+t.encType+e(419)+i),this[e(244)]=i,this[e(282)][e(338)]&&this.player[e(338)].updateForwardMaxRateDecodeIFrame(i)}[aL(351)](){return this[aL(329)]}[aL(394)](){return Pi(this[aL(293)])}isControlTypeNormal(){return this[aL(329)]===S.normal}[aL(271)](){return this[aL(329)]===S.simple}isPlaybackPauseNotClearCacheAndCacheBeforeDecode(){return xi(this.isPlaybackPauseClearCache)&&this.isCacheBeforeDecodeForFpsRender}isPlaybackPauseNotClearCacheAndCacheBeforeDecodeAndUseFpsRender(){const t=aL;return this[t(401)]()&&this[t(430)]}[aL(287)](){const t=aL;return this[t(282)]._opt[t(304)]?this[t(350)]>this[t(244)]:this[t(350)]>=this[t(282)][t(403)][t(409)]}[aL(346)](){return this.rate<1}[aL(354)](){const t=aL;return this[t(329)]===S[t(324)]}[aL(267)](){const t=aL;return this[t(329)]===S[t(274)]}}const cL=dL;function dL(t,e){const s=uL();return(dL=function(t,e){return s[t-=222]})(t,e)}function uL(){const t=["gestureend","zoomSupportGestureInMobile","handleWheelChangeThrottle","handleGestureChangeThrottle","video","replace","$videoElement","forEach","handleWheelChange","isDragging","grabbing","handleMouseUp is dragging false","offsetHeight","656418tZfJVW","3293296uPhGiF","_isZooming","resize","touchend","initVideoPosition","handleGestureStartForAndroid","14FtFPcp","updatePrevVideoElementStyleScale","zooming"," scale(","minLeft","player","bind","stopPropagation","vertical","934632vFGzjn","offsetWidth","wheel","remove","_handleZooming","prevVideoElementStyleScale","handleMouseDown","_unbindEvents","zoomMaxScale","updateCurrentZoom","maxLeft","atan2","zoomCheckBorderRange","handleMouseDown is dragging true","handleGestureChange","touches","zoomSupportGestureInMobileSpeed","isZooming","_getVideoPostion","gesturechange","jb-pro-zoom-control","expandPrecision","destroy","indexOf","pageX","1654122EiBGrA","horizontal","updateVideoElementScale","videoPosition","handleGestureStart","classList","down","boundHandleWheelChangeThrottle","_resetVideoPosition","isGesturing","handleGestureEnd","maxTop","handleGestureEndForAndroid","style","tempPosition","init","length","zoomSupportWheelInPc","1494682AujCeJ","828230yVtPrR","handleMouseUp","pageY","cursor","deltaY","narrowPrecision","boundHandleGestureChangeThrottle","matches","zoom","left","handleMouseMove","scale","getMinAndMaxRange","debugLog","bound","prevGestureScale","bindEvents","getScale","handleGestureChangeForAndroid","updateVideoPosition","prevGestureTouches","scale(","minTop","4394421RarCSY","checkPosition","_opt","top","offsetLeft","prevVideoElementStyleTransform","canvas","fullscreen","isMobileFullscreenChangeRotate","auto","move","updateInitVideoPosition","20GsfYYp","currentZoom","grab","push","preventDefault","touchstart","$container"];return(uL=function(){return t})()}!function(t){const e=dL,s=t();for(;;)try{if(612542===parseInt(e(268))/1+parseInt(e(327))/2+-parseInt(e(284))/3+parseInt(e(248))/4*(-parseInt(e(328))/5)+parseInt(e(309))/6*(-parseInt(e(275))/7)+parseInt(e(269))/8+parseInt(e(236))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(uL);class pL extends h{constructor(t){const e=dL;super(),this[e(280)]=t,this.TAG_NAME=e(336),this[e(229)]=[],this[e(264)]=!1,this[e(318)]=!1,this.currentZoom=1,this[e(241)]=null,this[e(289)]=null,this[e(228)]=null,this[e(233)]=[],this[e(270)]=!1,this[e(273)]={left:0,top:0},this[e(323)]={x:0,y:0},this[e(312)]={left:0,top:0},this[e(227)]={_handleZooming:this[e(288)][e(281)](this),handleMouseMove:this[e(223)][e(281)](this),handleMouseDown:this[e(290)].bind(this),handleMouseUp:this.handleMouseUp[e(281)](this),handleWheelChange:this[e(263)][e(281)](this),handleGestureChangeForAndroid:this[e(231)][e(281)](this),handleGestureStartForAndroid:this[e(274)].bind(this),handleGestureEndForAndroid:this[e(321)][e(281)](this),handleGestureStart:this[e(313)][e(281)](this),handleGestureChange:this.handleGestureChange[e(281)](this),handleGestureEnd:this[e(319)][e(281)](this)},this[e(280)].on(q[e(277)],this.bound._handleZooming),t[e(226)]("zoom",e(324))}[cL(306)](){const t=cL;this[t(301)]()&&this[t(280)].$container[t(314)][t(287)](t(304)),this[t(291)](),this[t(241)]=null,this.prevVideoElementStyleScale=null,this[t(317)](),this[t(258)]=null,this[t(257)]=null,this[t(334)]=null,this[t(316)]=null,this[t(227)]=null,this[t(270)]=!1,this.off(),this[t(280)].debugLog("zoom",t(306))}[cL(288)](t){const e=cL;if(t){this[e(280)].$container[e(314)].add(e(304)),this._bindEvents();const t=this._getVideoPostion();t[e(222)]&&(this[e(312)].left=t[e(222)]),t[e(239)]&&(this[e(312)].top=t[e(239)]),this[e(247)](),this.updatePrevVideoElementStyleScale(),this[e(270)]=!0}else this[e(280)][e(254)][e(314)][e(287)]("jb-pro-zoom-control"),this[e(291)](),this[e(317)](),this.player.$container[e(322)][e(331)]=e(245),this.prevVideoElementStyleTransform=null,this[e(289)]=null,this[e(270)]=!1,this[e(280)][e(271)]()}_bindEvents(){const t=cL,{events:{proxy:e}}=this[t(280)],s=zi(),i=e(this[t(280)][t(254)],s[t(246)],this[t(227)][t(223)]),r=e(this[t(280)][t(254)],s[t(315)],this.bound[t(290)]),n=e(window,s.up,this[t(227)].handleMouseUp);if(this[t(229)][t(251)](i,r,n),this[t(280)][t(238)][t(326)]&&As()){this[t(257)]=Ds(this[t(227)][t(263)],100),this[t(316)]=this[t(257)][t(281)](this);const i=e(this[t(280)].$container,s[t(286)],this[t(316)]);this.bindEvents[t(251)](i)}if(ys()&&this[t(280)][t(238)][t(256)])if(bs()){this.handleGestureChangeThrottle=Ds(this.bound[t(231)],100),this.boundHandleGestureChangeThrottle=this[t(258)][t(281)](this);const s=e(this.player[t(254)],t(253),this[t(227)][t(274)]),i=e(this[t(280)][t(254)],"touchmove",this[t(334)]),r=e(this[t(280)][t(254)],t(272),this.bound.handleGestureEndForAndroid);this[t(229)][t(251)](s,i,r)}else{this[t(258)]=Ds(this[t(227)][t(298)],100),this.boundHandleGestureChangeThrottle=this[t(258)][t(281)](this);const s=e(this[t(280)].$container,"gesturestart",this[t(227)].handleGestureStart),i=e(this[t(280)][t(254)],t(303),this[t(334)]),r=e(this[t(280)].$container,t(255),this.bound[t(319)]);this[t(229)][t(251)](s,i,r)}}[cL(291)](){const t=cL;this[t(229)][t(325)]>0&&(this.bindEvents[t(262)](t=>{t&&t()}),this.bindEvents=[])}handleMouseMove(t){const e=cL;if(t[e(282)](),this[e(264)]&&this[e(280)].zooming){t[e(252)]();const{posX:s,posY:i}=pi(t),r=this[e(323)].x-s,n=this[e(323)].y-i;this[e(312)][e(222)]=this[e(312)][e(222)]-r,this[e(312)][e(239)]=this.videoPosition[e(239)]-n,this[e(323)].x=s,this[e(323)].y=i,this.updateVideoPosition()}}handleMouseDown(t){const e=cL;t[e(282)]();const s=li(t);if(this.player.zooming&&(s[e(335)](e(259))||s[e(335)](e(242)))){t[e(252)]();const{posX:s,posY:i}=pi(t);this[e(280)].$container.style[e(331)]=e(265),this[e(323)].x=s,this[e(323)].y=i,this[e(264)]=!0,this.player[e(226)](e(336),e(297))}}[cL(329)](t){const e=cL;t[e(282)](),this[e(264)]&&this.player.zooming&&(t.preventDefault(),this[e(323)]={x:0,y:0},this[e(264)]=!1,this[e(280)].$container[e(322)][e(331)]=e(250),this[e(280)].debugLog(e(336),e(266)))}[cL(263)](t){const e=cL;if(t.stopPropagation(),!this[e(280)][e(277)])return;t.preventDefault();let s=this.player[e(238)].zoomSupportWheelInPcSpeed;t[e(332)]<0?this[e(305)](s):t[e(332)]>0&&this[e(333)](s)}[cL(313)](t){const e=cL;t.stopPropagation(),this[e(280)][e(277)]&&(null===this[e(228)]&&(this.prevGestureScale=t[e(224)]),this[e(318)]=!0)}[cL(274)](t){const e=cL;t[e(282)](),this[e(280)][e(277)]&&t.touches[e(325)]>=2&&(this.isGesturing=!0,this[e(233)]=t[e(299)])}[cL(231)](t){const e=cL;if(t[e(282)](),t[e(252)](),this.player.zooming&&this[e(318)]&&t.touches[e(325)]>=2){const r=t[e(299)],n=s(r[0],r[1])/s(this[e(233)][0],this.prevGestureTouches[1]);i(r[0],r[1]),i(this[e(233)][0],this.prevGestureTouches[1]),null===this[e(228)]&&(this[e(228)]=n);const o=n-this[e(228)],a=this.player[e(238)][e(300)];o>0?this[e(305)](a):o<0&&this[e(333)](a)}function s(t,s){const i=e;var r=s[i(308)]-t[i(308)],n=s[i(330)]-t[i(330)];return Math.sqrt(r*r+n*n)}function i(t,s){const i=e;var r=t.pageX-s[i(308)],n=t[i(330)]-s[i(330)];return 180*Math[i(295)](n,r)/Math.PI}}[cL(321)](t){const e=cL;t[e(282)](),this[e(280)].zooming&&(this[e(228)]=null,this[e(318)]=!1,this[e(233)]=[])}[cL(298)](t){const e=cL;if(t.stopPropagation(),this.player[e(277)]&&this[e(318)]&&null!==this.prevGestureScale){const s=t.scale,i=s-this[e(228)],r=this[e(280)][e(238)][e(300)];i>0?this[e(305)](r):i<0&&this[e(333)](r),this[e(228)]=s}}[cL(319)](t){const e=cL;t.stopPropagation(),this[e(280)][e(277)]&&(this[e(228)]=null,this.isGesturing=!1)}[cL(232)](t=!1){const e=cL;this[e(237)](t);const s=this[e(280)][e(259)][e(261)];s[e(322)].left=this[e(312)].left+"px",s.style[e(239)]=this[e(312)][e(239)]+"px"}_resetVideoPosition(){const t=cL;this[t(323)]={x:0,y:0},this[t(312)]={left:0,top:0},this[t(273)]={left:0,top:0},this[t(249)]=1,this[t(264)]=!1}[cL(333)](t){const e=cL;this.currentZoom<=1||(this[e(249)]-=1,this[e(311)](t))}expandPrecision(t){const e=cL;this.currentZoom>=this[e(280)]._opt[e(292)]||(this[e(249)]+=1,this[e(311)](t))}[cL(293)](t,e){const s=cL;t<1||t>this[s(280)][s(238)].zoomMaxScale||(this.currentZoom=t,this[s(311)](e))}[cL(276)](){const t=cL;this[t(289)]=wn(this.player[t(259)][t(261)])}[cL(302)](){const t=cL;let e=this[t(280)].video.$videoElement[t(240)],s=this[t(280)][t(259)][t(261)].offsetTop;return e=parseFloat(e),s=parseFloat(s),{left:e,top:s}}[cL(247)](){const t=cL,e=this._getVideoPostion();this[t(273)][t(222)]=0,this[t(273)][t(239)]=0,e[t(222)]&&(this[t(273)][t(222)]=e[t(222)]),e.top&&(this[t(273)][t(239)]=e[t(239)])}updateVideoElementScale(t=.5){const e=cL,s=this[e(280)].video[e(261)];let i=s.style.transform,r=1,n=1;if(this[e(289)]){const t=this.prevVideoElementStyleScale[0];void 0!==t&&(r=t,n=t);const s=this[e(289)][1];void 0!==s&&(n=s)}n=_s(n),r=_s(r);const o=t*r*(this[e(249)]-1)+r,a=t*n*(this[e(249)]-1)+n;let h;h=-1===i[e(307)](e(234))?i+(e(278)+o+",")+a+")":i[e(260)](/scale\([0-9., ]*\)/,e(234)+o+","+a+")"),s.style.transform=h,this[e(280)][e(238)][e(296)]&&this[e(232)]()}updateVideoElementScaleByResize(){const t=cL;this.updateVideoElementScale(),this[t(232)](!0)}isZooming(){return this[cL(270)]}[cL(237)](t=!1){const e=cL;if(Pi(this[e(280)][e(238)][e(296)])||Pi(t)){const t=this[e(225)]();this[e(312)].left<t[e(279)]?this.videoPosition[e(222)]=t[e(279)]:this[e(312)][e(222)]>t[e(294)]&&(this[e(312)][e(222)]=t.maxLeft),this.videoPosition[e(239)]<t.minTop?this[e(312)][e(239)]=t[e(235)]:this[e(312)].top>t.maxTop&&(this.videoPosition[e(239)]=t[e(320)])}}[cL(230)](){const t=cL;let e={horizontal:0,vertical:0};const s=wn(this[t(280)][t(259)][t(261)]);let i=1,r=1,n=1,o=1;return s&&(i=s[0],r=s[1]||s[0]),this[t(289)]&&(n=this[t(289)][0],o=this[t(289)][1]||this[t(289)][0]),e[t(310)]=i-n,e.vertical=r-o,e}getMinAndMaxRange(){const t=cL,e=this[t(230)](),s=parseInt(this[t(280)].video.$videoElement[t(285)]),i=parseInt(this[t(280)][t(259)][t(261)][t(267)]);let r,n,o,a;return this[t(280)][t(243)]&&this.player[t(244)]()?(r=this[t(273)][t(222)]-i*e[t(310)]/2,n=this.initVideoPosition[t(222)]+i*e[t(310)]/2,o=this[t(273)].top-s*e[t(283)]/2,a=this[t(273)][t(239)]+s*e[t(283)]/2):(r=this[t(273)][t(222)]-s*e[t(310)]/2,n=this[t(273)][t(222)]+s*e[t(310)]/2,o=this[t(273)][t(239)]-i*e[t(283)]/2,a=this[t(273)][t(239)]+i*e[t(283)]/2),{minLeft:r,maxLeft:n,minTop:o,maxTop:a}}}const fL=mL;function mL(t,e){const s=gL();return(mL=function(t,e){return s[t-=168]})(t,e)}function gL(){const t=["JessibucaProFaceDetector","jessibuca-pro-face-detector-info","fontSize","initFaceDetector","destroy","5024130LpzaoX","load","faceDetector","initObjectDetector","map","video","updateConfig","updateObjectDetectorConfig","updateFaceDetectorConfig","screenshotByRect","list","1786936hFTbLz","13qHbkSJ","aiObjectDetectorInfo","off","initImageDetector","forEach","addAiContentToCanvas","borderColor","length","TAG_NAME","then","56kWyWHB","debugLog","aiFaceDetectRectConfig","debugLevel","debugUuid","imageDetector","aiObjectDetectTarget","debug","3744684wGdkBI","initOcclusionDetector","JessibucaProObjectDetector","7007616pMQjMb","JessibucaProLicensePlateDetector","40445YxOiSN","12116Cnmacn","isArray","objectDetector","borderWidth","aiObjectDetectShowRect","base64","updateImageDetectorConfig","aiObjectDetectWidth","player","rect","width","useFaceDetector","aiFaceDetectEmitBase64","useOcclusionDetector","init license plate detector success","aiObjectDetectEmitBase64","updateLicensePlateDetectorConfig","186ktgIOP","7oovXIc","JessibucaProOcclusionDetector","toFixed","useLicensePlateDetector","aiFaceDetectorInfo","type","useImageDetector","filter","_opt","init occlusion detector success","useObjectDetector","_isDestroyed","height","occlusionDetector","1071633VaoZDG","jessibuca-pro-object-detector-info","aiFaceDetectShowRect","init image detector success","#0000FF","color","trim","licensePlateDetector","init","18kbvGza","push","includes","aiObjectDetectRectConfig","12QbHHml"];return(gL=function(){return t})()}!function(t){const e=mL,s=t();for(;;)try{if(649280===parseInt(e(182))/1*(-parseInt(e(168))/2)+parseInt(e(214))/3*(parseInt(e(227))/4)+parseInt(e(181))/5*(-parseInt(e(199))/6)+parseInt(e(200))/7*(parseInt(e(244))/8)+-parseInt(e(223))/9*(parseInt(e(233))/10)+parseInt(e(179))/11+-parseInt(e(176))/12*(-parseInt(e(245))/13))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(gL);class yL extends h{constructor(t){const e=mL;super(),this[e(190)]=t,this.TAG_NAME="AiLoader",this[e(235)]=null,this[e(184)]=null,this[e(173)]=null,this[e(213)]=null,this[e(221)]=null,this.aiObjectDetectTarget=[],this[e(231)](),this[e(236)](),this[e(248)](),this[e(177)](),this.initLicensePlateDetector(),this[e(211)]=!1,this[e(190)].debugLog(this[e(253)],e(222))}destroy(){const t=mL;this._isDestroyed=!0,this[t(247)](),this[t(174)]=[],this[t(235)]&&(this.faceDetector[t(232)](),this.faceDetector=null),this[t(184)]&&(this[t(184)][t(232)](),this[t(184)]=null),this[t(173)]&&(this[t(173)][t(232)](),this[t(173)]=null),this[t(213)]&&(this[t(213)][t(232)](),this[t(213)]=null),this[t(221)]&&(this[t(221)][t(232)](),this.licensePlateDetector=null),this[t(190)].debugLog(this[t(253)],"destroy")}[fL(231)](){const t=fL;if(this[t(190)][t(208)][t(193)]&&window[t(228)]){const e=new JessibucaProFaceDetector({detectWidth:this[t(190)][t(208)].aiFaceDetectWidth,showRect:!1,debug:this[t(190)][t(208)][t(175)],debugLevel:this[t(190)][t(208)][t(171)],debugUuid:this[t(190)][t(208)][t(172)],name:I,buildTime:k});e[t(234)]()[t(254)](()=>{const s=t;this[s(190)][s(169)](this[s(253)],"init face detector success"),this[s(235)]=e,this[s(235)].on(s(229),t=>{const e=s;if(this[e(190)]._opt[e(194)]&&this[e(190)][e(238)]&&(t[e(243)]=t[e(243)][e(237)](t=>{const s=e;return t[s(187)]=this[s(190)][s(238)].screenshotByRect(t),t})),this[e(190)].emit(q[e(204)],t),this[e(190)]._opt[e(216)]){const s=this[e(190)][e(208)][e(170)]||{},i=(t[e(243)]||[])[e(237)](t=>{const i=e;return t[i(205)]=i(191),t[i(219)]=s[i(251)]||i(218),t.lineWidth=s[i(185)]||2,t});this.player[e(238)]&&this.player.video[e(250)](i)}})})}}[fL(236)](){const t=fL;if(this[t(190)][t(208)][t(210)]&&window[t(178)]){const e=new JessibucaProObjectDetector({detectWidth:this.player[t(208)][t(189)],showRect:!1,debug:this[t(190)]._opt[t(175)],debugLevel:this[t(190)]._opt[t(171)],debugUuid:this.player[t(208)][t(172)],name:I,buildTime:k});e[t(234)]()[t(254)](()=>{const s=t;this[s(190)][s(169)](this[s(253)],"init object detector success"),this[s(184)]=e,this[s(174)]=[],this.player[s(208)][s(174)]&&(Array[s(183)](this[s(190)]._opt.aiObjectDetectTarget)?this.aiObjectDetectTarget=this[s(190)]._opt[s(174)][s(207)](t=>""!==(t||"")[s(220)]()):this[s(174)]=[this[s(190)][s(208)][s(174)]]),this.objectDetector.on(s(215),t=>{const e=s,i=t.ts;let r=t[e(243)]||[];if(this[e(174)][e(252)]>0&&(r=r[e(207)](t=>{const s=e;return this.aiObjectDetectTarget[s(225)](t.en)})),this[e(190)][e(208)][e(197)]&&this[e(190)][e(238)]&&r.forEach(t=>{const s=e;t.base64=this[s(190)][s(238)][s(242)](t.rect)}),this.player.emit(q[e(246)],{ts:i,list:r}),this[e(190)][e(208)][e(186)]){const t=[],s=this[e(190)][e(208)][e(226)]||{};r[e(249)](i=>{const r=e,n={type:r(191),color:s[r(251)]||r(218),lineWidth:s[r(185)]||2,x:i[r(191)].x,y:i[r(191)].y,width:i[r(191)][r(192)],height:i[r(191)][r(212)]},o={type:"text",color:s[r(219)]||"#000",fontSize:s[r(230)]||14,text:i.zh+"("+i.confidence[r(202)](2)+")",x:i[r(191)].x,y:i[r(191)].y-25};t[r(224)](n,o)}),this[e(190)][e(238)]&&this[e(190)][e(238)][e(250)](t)}})})}}[fL(248)](){const t=fL;if(this[t(190)][t(208)][t(206)]&&window.JessibucaProImageDetector){const e=new JessibucaProImageDetector({debug:this[t(190)][t(208)][t(175)],debugLevel:this[t(190)][t(208)][t(171)],debugUuid:this[t(190)][t(208)][t(172)],name:I,buildTime:k});e[t(234)]()[t(254)](()=>{const s=t;this[s(190)][s(169)](this.TAG_NAME,s(217)),this[s(173)]=e})}}[fL(177)](){const t=fL;if(this[t(190)][t(208)][t(195)]&&window[t(201)]){const e=new JessibucaProOcclusionDetector({debug:this[t(190)][t(208)][t(175)],debugLevel:this[t(190)][t(208)].debugLevel,debugUuid:this[t(190)][t(208)][t(172)],name:I,buildTime:k});e[t(234)]()[t(254)](()=>{const s=t;this[s(190)].debugLog(this.TAG_NAME,s(209)),this[s(213)]=e})}}initLicensePlateDetector(){const t=fL;if(this[t(190)][t(208)][t(203)]&&window[t(180)]){const e=new JessibucaProLicensePlateDetector({debug:this[t(190)][t(208)][t(175)],debugLevel:this[t(190)][t(208)][t(171)],debugUuid:this[t(190)]._opt[t(172)],name:I,buildTime:k});e.load()[t(254)](()=>{const s=t;this[s(190)].debugLog(this[s(253)],s(196)),this[s(221)]=e})}}[fL(241)](t={}){const e=fL;this.faceDetector&&this[e(235)].updateConfig(t)}[fL(240)](t={}){const e=fL;this.objectDetector&&this[e(184)].updateConfig(t)}[fL(188)](t={}){const e=fL;this[e(173)]&&this[e(173)].updateConfig(t)}updateOcclusionDetectorConfig(t={}){const e=fL;this.occlusionDetector&&this[e(213)][e(239)](t)}[fL(198)](t={}){const e=fL;this[e(221)]&&this[e(221)][e(239)](t)}}const AL=vL;function bL(){const t=["content","bound","$contextmenus","_off()","777689jMIUFm","beforebegin","destroy","content is required","addMenuItem","7iIBaAg","LOG_NAME",'">\n ',"10EyAgSk","jb-pro-contextmenus-show","length","69408ogNTbr","clientX","only support pc","329348IvSXRn","226676NrVXCx","children","14TXBcQZ","init","blur","eventListenList","contextmenu","_opt","$container","_validateMenuItem","bind","25VbaTuc","_off","querySelector","debugLog","control","contextmenuBtns","call","2023677RCqSxF","clientY","hide",".jb-pro-contextmenu-","getBoundingClientRect","forEach","2210064OlLZre","click","player","debugWarn","TAG_NAME","preventDefault","\n </div>\n ","push",'\n <div class="jb-pro-contextmenu jb-pro-contextmenu-',"index","show","menuList","130359DLNFqD"];return(bL=function(){return t})()}function vL(t,e){const s=bL();return(vL=function(t,e){return s[t-=232]})(t,e)}!function(t){const e=vL,s=t();for(;;)try{if(273006===parseInt(e(262))/1+parseInt(e(265))/2*(-parseInt(e(243))/3)+-parseInt(e(263))/4*(parseInt(e(274))/5)+parseInt(e(287))/6+-parseInt(e(253))/7*(-parseInt(e(259))/8)+-parseInt(e(281))/9*(-parseInt(e(256))/10)+-parseInt(e(248))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(bL);class SL extends h{constructor(t){const e=vL;super(),this[e(233)]=t,this.LOG_NAME="Contextmenu",this.menuList=[],this.$contextmenus=null,this.eventListenList=[],this.bound={hide:this[e(283)][e(273)](this)},As()&&t[e(278)]?(this[e(246)]=t[e(278)][e(246)],this.init()):this.player[e(234)](this[e(254)],e(261)),t[e(277)](this[e(254)],"init")}[AL(250)](){const t=AL;this[t(275)](),this[t(268)].length&&(this[t(268)][t(286)](t=>{t()}),this[t(268)]=[]),this[t(242)]=[],this.$contextmenus=null,this[t(245)]=null,this[t(233)][t(277)](this.LOG_NAME,t(250))}[AL(275)](){const t=AL;this[t(246)]&&(this[t(233)][t(277)](this[t(235)],t(247)),this[t(233)].off(q.blur,this[t(245)][t(283)]))}get isShow(){const t=AL;return mn(this[t(233)][t(271)],t(257))}show(){const t=AL;this[t(246)]&&pn(this.player[t(271)],t(257))}[AL(283)](){const t=AL;this[t(246)]&&fn(this[t(233)][t(271)],"jb-pro-contextmenus-show")}[AL(266)](){const t=AL,{events:{proxy:e}}=this[t(233)];if(!this[t(246)])return;this[t(233)][t(270)][t(279)][t(258)]>0&&this.player[t(270)][t(279)][t(286)](e=>{this[t(252)](e)});const s=e(this[t(233)][t(271)],t(269),e=>{const s=t;e[s(236)](),this[s(241)]();const i=e[s(260)],r=e[s(282)],{height:n,width:o,left:a,top:h}=this[s(233)][s(271)].getBoundingClientRect(),{height:l,width:c}=this[s(246)][s(285)]();let d=i-a,u=r-h;i+c>a+o&&(d=o-c),r+l>h+n&&(u=n-l),hs(this.$contextmenus,{left:d+"px",top:u+"px"})}),i=e(this.player.$container,t(232),e=>{const s=t;!Sn(e,this[s(246)])&&this[s(283)]()});this[t(268)][t(238)](s,i),this[t(233)].on(q[t(267)],this.bound[t(283)])}[AL(272)](t){const e=AL;let s=!0;return!t[e(244)]&&(this[e(233)].debugWarn(this[e(254)],e(251)),s=!1),s}[AL(252)](t={}){const e=AL,s=Ci(Lt);if(t=Object.assign({},s,t),!this[e(272)](t))return;const{events:{proxy:i},debug:r}=this.player,n=Cs(),o=e(239)+n+e(255)+t.content+e(237),a=Array.from(this[e(246)][e(264)])[t[e(240)]];a?Tn(o,e(249),a):gn(this[e(246)],o);const h=this[e(246)][e(276)](e(284)+n);t[e(232)]&&i(h,"click",s=>{const i=e;s[i(236)](),t.click[i(280)](this[i(233)],this,s),this[i(283)]()}),this[e(242)].push({uuid:n,$menuItem:h})}}const EL=TL;function wL(){const t=["_requestAbort","type","isWebrtcH264","ontrack audio","videoCodec","slice","ontrack video codec:","requestVideoFrameCallback","timeStamp","_initVideoEvents()","floor","readyState","pause","bound","src","stringify","onconnectionstatechange","pipeTo","isVideoPlaying","position","supportVideoFrameCallbackHandle","connected","new","TAG_NAME","video play","catch","13371867mstQsS","currentWebrtcStats","videoFrameCallback","isDestroyedOrClosed","autoplay","encodedInsertableStreams","mediaTime","canplay","style","ontrack","removeAttribute","undefined","pipeThrough","events","parseSdp","52586OsJgBT","jitterBufferDelay","toJSON","codecs","prevWebrtcVideoStats",", transform=","866256tWmdBx","webrtcPlayType","Using createEncodedStreams","abortController","rtcPeerTrackAudioReceiver","emitVideoSei","muted","LocalCandidate","start","WebRTC support: createEncodedStreams=","ratechange","handleRender","toString","frameWidth is ","getVideoBufferRangeList"," and webrtcSupportH265 is ","currentTime","hevc","h264","webrtcOnConnectionStateChange","$videoElement","39NWSqXj","connectionState","port","jitterBufferEmittedCount","and iceGatheringState is ","fetchPromise","localCandidate","hasAudio","rtcPeerConnection","282RycvJk","candidate","max","264abhMOd","protocol","vbps","videoCodecType","_isDestroyed","eventsDestroy","abort","Using transform","remoteCandidate","frameHeight","failed","onicecandidateerror","_startBandwidthEstimateInterval","render","_createEncodedStreams","onnegotiationneeded","getVideoCurrentTime","streams","webrtcOnIceConnectionStateChange","video is paused and replay success","set video receiver playOutDelayHint to ","InboundRtp","playbackRate","receiver","isEmitSEI","srcObject","rtcPeerTrackVideoReceiver","absolute","readable","enqueue","framesDecoded","destroy","iceGatheringState","getStats","9066710lnPXDc","state","lastTimeStamp","updateVideoInfo","oniceconnectionstatechange","Error in createEncodedStreams:","abortController.abort() success","videoHeight","isWebrtcForSRS","loadedmetadata","abps","updateStats","onicecandidateerror:","connecting","video loadedmetadata","load","payload","4RcnVew","frameWidth","buf","addTransceiver","videoStream","isDisconnected","onicecandidate: candidate is ","kSliceSEI","webrtcIceCandidateError","suffixSei","isH264","buffered","webrtcForSRSByWhipWhepOldVersion","104dLMCpc","_startCanvasRender","isInitInfo","RTCRtpReceiver is not supported","toFixed","delta","TransformStream","forEach","RemoteCandidate","prototype","_initRtcPeerConnection","track","iceConnectionState","webrtcFailed","m=video","926513SSsbTX","video isHevc is ","debugWarn"," and isH264 is ","completed","rtt","videoFrameCallback() player is destroyed","prevWebrtcAudioStats","stop","video waiting","closed","bandwidthEstimateInterval","then","writable","push","getTracks","Error in _createEncodedStreams:","split","find","getReceivers","onicegatheringstatechange","ended"," and supportH265 is ","_checkWebRTCSupport","ontrack video","kind","bytesSent","video","length","ondatachannel","canvasRenderInterval","transform",", frameHeight is ","_opt","onsignalingstatechange","_stopBandwidthEstimateInterval","debugLog","jitterBufferTarget","startsWith","play","payloadType","CandidatePair","responseSdpInfo","audio","h265","end","_initRenderSize","mimeType","paused","disconnected","_stopCanvasRender","map","CommonWebrtc","timestamp","prefixSei","dfps","data","player","onicegatheringstatechange:","timeUpdate","bytesReceived","14035TUfXqF","onsignalingstatechange:type is","webrtcUseCanvasRender","recvonly","Error checking WebRTC support:","video play error ","onicecandidate","3225147xmvvpA","type is ","H265","emit","createEncodedStreams","playoutDelayHint"];return(wL=function(){return t})()}function TL(t,e){const s=wL();return(TL=function(t,e){return s[t-=114]})(t,e)}!function(t){const e=TL,s=t();for(;;)try{if(905540===-parseInt(e(327))/1*(parseInt(e(300))/2)+-parseInt(e(253))/3*(parseInt(e(157))/4)+-parseInt(e(246))/5*(-parseInt(e(336))/6)+parseInt(e(185))/7*(parseInt(e(170))/8)+-parseInt(e(285))/9+parseInt(e(140))/10+parseInt(e(339))/11*(parseInt(e(306))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(wL);class IL extends h{constructor(t){const e=TL;super(),this[e(242)]=t,this[e(282)]=e(237),this[e(335)]=null,this[e(161)]=null,this[e(162)]=!1,this.isH264=this[e(242)][e(261)](),this.responseSdpInfo=null,this[e(344)]=[],this[e(279)]=null,this.isInitInfo=!1,this.$videoElement=this[e(242)].video[e(326)],this[e(196)]=null,this[e(132)]=null,this[e(310)]=null,this[e(304)]={},this[e(192)]={},this[e(286)]={},this[e(259)]=!1,this[e(309)]=null,this.fetchPromise=null,this.bound={videoFrameCallback:this[e(287)].bind(this)},this.player._opt.webrtcUseCanvasRender&&this[e(167)]&&(this[e(326)]=document.createElement(e(212)),ws()&&(this.$videoElement[e(293)][e(278)]=e(133)),this._initVideoEvents()),this[e(326)][e(312)]=!0,this[e(180)](),this._isDestroyed=!1}[EL(137)](){const t=EL;if(this[t(343)]=!0,this[t(345)](),this[t(220)](),this[t(227)]=null,this[t(162)]=!1,this[t(172)]=!1,this[t(304)]={},this[t(286)]={},this.rtcPeerTrackVideoReceiver=null,this[t(310)]=null,this[t(279)]&&this[t(326)]&&(this[t(326)].cancelVideoFrameCallback(this[t(279)]),this[t(279)]=null),this[t(344)].length&&(this[t(344)][t(177)](t=>t()),this[t(344)]=[]),this[t(167)]&&(this[t(161)]&&(this[t(161)][t(200)]()[t(177)](e=>e[t(193)]()),this.videoStream=null),this[t(326)]))if(this.player[t(218)][t(248)]){this[t(326)].pause&&(this[t(326)][t(271)](),this[t(326)][t(312)]=!0),this[t(326)].currentTime=0,this[t(326)][t(273)]&&(this[t(326)][t(273)]="",this.$videoElement[t(295)](t(273)));try{this[t(326)][t(155)]()}catch(t){}}else this[t(326)].srcObject&&(this.$videoElement.srcObject=null,this[t(326)][t(295)](t(131)));this[t(326)]=null,this.rtcPeerConnection&&(this[t(335)][t(252)]=null,this[t(335)].ontrack=null,this[t(335)][t(275)]=null,this.rtcPeerConnection[t(214)]=null,this.rtcPeerConnection.close(),this.rtcPeerConnection=null),this[t(272)]=null}[EL(345)](){const t=EL;if(this[t(259)]=!0,this[t(309)])try{this[t(309)].abort(),this[t(309)]=null,this[t(242)][t(221)](this[t(282)],t(146))}catch(e){this[t(309)]=null,this[t(242)][t(221)](this[t(282)],"abortController.abort() error",e)}this.fetchPromise&&this.fetchPromise[t(345)]&&(this.fetchPromise[t(345)](),this[t(332)]=null)}_initVideoEvents(){const t=EL;this.player[t(221)](this.TAG_NAME,t(268));const{proxy:e}=this[t(242)][t(298)],s=e(this[t(326)],St[t(292)],()=>{const e=t;this.player.debugLog(this.TAG_NAME,"video canplay"),this[e(326)].play()[e(197)](()=>{const t=e;this[t(242)].debugLog(this[t(282)],t(283)),this[t(171)](),this._initRenderSize()}).catch(t=>{const s=e;this[s(242)][s(187)](this.TAG_NAME,s(251),t)})}),i=e(this.$videoElement,St.waiting,()=>{const e=t;this[e(242)][e(221)](this.TAG_NAME,e(194))}),r=e(this[t(326)],St[t(149)],()=>{const e=t;this[e(242)].debugLog(this[e(282)],e(154))}),n=e(this[t(326)],St[t(244)],e=>{const s=t;parseInt(e[s(267)],10),this[s(326)][s(233)]&&(this[s(242)].debugWarn(this[s(282)],"video is paused and next try to replay"),this.$videoElement[s(224)]().then(()=>{const t=s;this[t(242)][t(221)](this[t(282)],t(125))}).catch(t=>{const e=s;this.player[e(187)](this[e(282)],"video is paused and replay error ",t)}))}),o=e(this[t(326)],St[t(316)],()=>{const e=t;this[e(242)][e(221)](this[e(282)],"video playback Rate change",this[e(326)]&&this[e(326)][e(128)])});this[t(344)][t(199)](s,i,n,o,r)}[EL(208)](){const t=EL;try{if(!(typeof RTCRtpReceiver!==t(296)))return this[t(242)].debugWarn(this[t(282)],t(173)),!1;const e=t(257)in RTCRtpReceiver[t(179)],s=t(216)in RTCRtpReceiver[t(179)];return this[t(242)].debugLog(this[t(282)],t(315)+e+t(305)+s),{createEncodedStreams:e,transform:s}}catch(e){return this[t(242)][t(187)](this[t(282)],t(250),e.toString(),e),!1}}[EL(180)](){const t=EL,e={},s=this[t(208)](),i=s&&s[t(257)];this[t(242)][t(218)][t(130)]&&i&&(e[t(290)]=!0);const r=new RTCPeerConnection(e),n=this[t(242)],o=this[t(242)][t(218)];let a=null;o[t(148)]?o[t(169)]?a=r[t(160)](t(212),{direction:t(249)}):(this[t(242)][t(218)].hasAudio&&r.addTransceiver(t(228),{direction:"recvonly"}),a=r.addTransceiver(t(212),{direction:"recvonly"})):o.isWebrtcForQiNiu||o.isWebrtcForDJI?(this.player[t(218)][t(334)]&&r[t(160)](t(228),{direction:t(249)}),a=r[t(160)]("video",{direction:t(249)})):(a=r[t(160)](t(212),{direction:"recvonly"}),this[t(242)][t(218)][t(334)]&&r[t(160)]("audio",{direction:t(249)})),this[t(242)][t(218)][t(130)]&&s&&this[t(120)](a[t(129)],s),r[t(219)]=e=>{const s=t;this[s(242)][s(221)](this[s(282)],s(247),e[s(260)])},r[t(205)]=e=>{const s=t;this[s(242)][s(221)](this[s(282)],s(243),s(254)+e[s(260)],s(331)+r[s(138)])},r[t(121)]=e=>{const s=t;this[s(242)][s(221)](this.TAG_NAME,"onnegotiationneeded:type is",e[s(260)])},r[t(144)]=e=>{const s=t;this[s(242)][s(221)](this[s(282)],"oniceconnectionstatechange:ice connection state is",r.iceConnectionState);const i=r[s(182)];switch(this.player[s(256)](q[s(124)],i),this[s(162)]=i===s(234),r[s(182)]){case s(281):case"checking":case s(195):break;case s(116):n[s(256)](q[s(183)]);break;case s(234):n[s(256)](q.webrtcDisconnect);break;case"connected":case s(189):break;case s(195):n[s(256)](q.webrtcClosed)}},r.onicecandidate=e=>{const s=t;e[s(337)]&&this[s(242)].debugLog(this[s(282)],s(163),e[s(337)],JSON[s(274)](e[s(337)][s(302)]()))},r.ontrack=e=>{const s=t;if(this[s(242)][s(221)](this[s(282)],s(294)),e[s(181)].kind===s(212)){if(this[s(242)][s(221)](this[s(282)],s(209)),this[s(132)]=r[s(204)]()[s(203)](function(t){return t[s(181)]===e.track}),this[s(132)]){this._startBandwidthEstimateInterval();const t=(this[s(132)].getParameters()[s(303)]||[])[s(236)](t=>{const e=s;return{p:t[e(225)],m:t[e(232)]}});if(this[s(242)][s(221)](this[s(282)],s(265),JSON[s(274)](t)),this[s(242)][s(218)].webrtcPlayType&&T[this[s(242)]._opt[s(307)]]){const t=T[this[s(242)][s(218)][s(307)]];s(258)in this[s(132)]&&(this[s(132)][s(258)]=t[s(258)],this[s(242)][s(221)](this[s(282)],s(126)+t[s(258)])),"jitterBufferTarget"in this[s(132)]&&(this[s(132)][s(222)]=t[s(222)],this.player[s(221)](this[s(282)],"set video receiver jitterBufferTarget to "+t.jitterBufferTarget))}}let t=e[s(123)][0];this[s(326)][s(289)]=!0,this[s(326)].srcObject=t,this[s(161)]=t}else if(e.track[s(210)]===s(228)&&(this[s(242)][s(221)](this[s(282)],s(262)),this[s(310)]=r[s(204)]()[s(203)](function(t){const i=s;return t[i(181)]===e[i(181)]}),this[s(310)]&&(this[s(118)](),this[s(242)][s(218)][s(307)]&&T[this.player[s(218)][s(307)]]))){const t=T[this.player[s(218)].webrtcPlayType];"playoutDelayHint"in this[s(310)]&&(this[s(310)][s(258)]=t[s(258)]),"jitterBufferTarget"in this[s(310)]&&(this[s(310)][s(222)]=t[s(222)])}},r[t(117)]=e=>{const s=t;this[s(242)][s(221)](this[s(282)],s(152),e),this[s(242)].emitError(J[s(165)],e)},r.onconnectionstatechange=e=>{const s=t;switch(this[s(242)][s(221)](this[s(282)],"onconnectionstatechange:","connectionState is "+r[s(328)]),this.player[s(256)](q[s(325)],r.connectionState),r[s(328)]){case s(281):case s(153):case s(280):case s(234):break;case s(116):this[s(162)]&&n[s(256)](q[s(183)]);case s(195):}},this[t(335)]=r}[EL(118)](){const t=EL;this[t(242)][t(221)](this.TAG_NAME,"_startBandwidthEstimateInterval"),this[t(220)](),this[t(196)]=setInterval(()=>{const e=t;this.rtcPeerTrackVideoReceiver&&this[e(132)][e(139)]()[e(197)](t=>{const s=e;let i={},r=0;t[s(177)](t=>{const e=s;if(t)switch(t[e(260)]){case Kt[e(226)]:("succeeded"===t[e(141)]||t[e(245)])&&(this[e(286)][e(238)]=t.timestamp,this[e(286)][e(190)]=t.currentRoundTripTime||-1,this[e(286)][e(245)]=t.bytesReceived||0,this.currentWebrtcStats.bytesSent=t[e(211)]||0);break;case Kt[e(178)]:this[e(286)][e(114)]=t||{};break;case Kt[e(313)]:this[e(286)][e(333)]=t||{};break;case Kt[e(127)]:this[e(286)][e(142)]=t[e(238)];const s=((t.timestamp||0)-(this.prevWebrtcVideoStats[e(238)]||0))/1e3,n=Number(t[e(245)]||0)-Number(this[e(304)][e(245)]||0),o=8*Math[e(269)](n/s);r+=o,i[e(341)]=o;const a=(t[e(136)]||0)-(this.prevWebrtcVideoStats[e(136)]||0),h=Math[e(269)](a/s);if(i[e(240)]=h,void 0!==t[e(301)]&&void 0!==t[e(330)]){const s=Number(t[e(301)]||0)-Number(this[e(304)][e(301)]||0),r=Number(t[e(330)]||0)-Number(this[e(304)][e(330)]||0);if(s>=0&&r>0){const t=s/r;i[e(159)]=parseInt(1e3*t[e(174)](3),10)}}this.prevWebrtcVideoStats=t;break;case Kt.Track:t[e(158)]&&t.frameHeight&&(this[e(286)][e(158)]=t[e(158)]||0,this[e(286)][e(115)]=t.frameHeight||0,this[e(242)].debugLog(this[e(282)],e(319)+this[e(286)][e(158)]+e(217)+this[e(286)][e(115)]));break;case Kt.Codec:if(!this[e(227)].videoCodec){const s=t.mimeType||"";(-1!==s.indexOf(e(255))||-1!==s.indexOf(e(323)))&&(this[e(227)][e(263)]=et[e(229)],this[e(227)][e(342)]=tt[et[e(229)]])}}}),this.rtcPeerTrackAudioReceiver?this[s(310)][s(139)]()[s(197)](t=>{const e=s;t[e(177)](t=>{const s=e;if(t&&t.type===Kt[s(127)]){this[s(286)][s(142)]=t[s(238)];const e=((t[s(238)]||0)-(this[s(192)][s(238)]||0))/1e3,n=Number(t[s(245)]||0)-Number(this[s(192)][s(245)]||0),o=8*Math.floor(n/e);r+=o,i[s(150)]=o,this.prevWebrtcAudioStats=t}}),this.player[e(151)](i),this.player[e(256)](q.kBps,(r/1e3)[e(174)](2))}):(this[s(242)][s(151)](i),this.player[s(256)](q.kBps,(r/1e3)[s(174)](2)))})},1e3)}_stopBandwidthEstimateInterval(){const t=EL;this[t(196)]&&(this[t(242)][t(221)](this.TAG_NAME,t(220)),clearInterval(this[t(196)]),this.bandwidthEstimateInterval=null)}_createEncodedStreams(t,e){const s=EL;if(this[s(242)][s(221)](this[s(282)],s(120)),e)try{const i=new(window[s(176)])({transform:(t,e)=>{const i=s;if("key"===t[i(260)]||t[i(260)]===i(175)){const e=Qe(new Uint8Array(t[i(241)])),s=this.getVideoCodec()===et[i(229)];e[i(177)](t=>{const e=i,r=s?t[0]>>>1&63:31&t[0],n=s&&(r===at[e(166)]||r===at[e(239)]),o=xi(s)&&r===ot[e(164)];if(n||o){const i=$e(Je(t),s),r=parseInt(1e3*this[e(122)](),10);this[e(242)][e(311)]({ts:r,type:i[e(260)],data:i[e(156)],originData:t,uuid:i.uuid,size:i.size})}})}e[i(135)](t)}});if(e[s(257)]){this[s(242)].debugLog(this[s(282)],s(308));const e=t.createEncodedStreams();e[s(134)][s(297)](i)[s(276)](e[s(198)])[s(284)](t=>{const e=s;this.player[e(221)](this[e(282)],e(145),t.toString(),t)})}else e[s(216)]&&(this[s(242)][s(221)](this[s(282)],s(346)),t[s(216)]=i)}catch(t){this[s(242)][s(221)](this[s(282)],s(201),t[s(318)](),t)}}[EL(171)](){const t=EL;ji()?this[t(279)]=this[t(326)][t(266)](this[t(272)][t(287)]):(this[t(235)](),this.canvasRenderInterval=setInterval(()=>{const e=t;this[e(242)][e(212)][e(119)]({$video:this[e(326)],ts:0})},40))}[EL(235)](){const t=EL;this[t(215)]&&(clearInterval(this[t(215)]),this[t(215)]=null)}videoFrameCallback(t,e={}){const s=EL;if(this[s(242)][s(288)]())return void this[s(242)][s(221)](this.TAG_NAME,s(191));const i=parseInt(1e3*Math[s(338)](e[s(291)],this[s(326)][s(322)]),10)||0;this[s(242)][s(151)]({dts:i}),this.player[s(317)](),this[s(242)][s(212)][s(119)]({$video:this[s(326)],ts:i}),this[s(279)]=this[s(326)][s(266)](this[s(272)][s(287)])}[EL(231)](){const t=EL;!this[t(172)]&&(this.player[t(212)][t(143)]({width:this[t(326)].videoWidth,height:this[t(326)][t(147)]}),this.player.video.initCanvasViewSize(),this[t(172)]=!0)}getVideoCurrentTime(){const t=EL;let e=0;return this[t(326)]&&(e=this.$videoElement[t(322)]),e}[EL(277)](){const t=EL;return this[t(326)]&&xi(this[t(326)][t(233)])&&xi(this[t(326)][t(206)])&&0!==this[t(326)][t(128)]&&0!==this[t(326)][t(270)]}getVideoBufferTimeRange(){const t=EL,e=this[t(326)];let s=null;if(e){const i=e.buffered,r=i[t(213)]?i[t(314)](0):0,n=i[t(213)]?i[t(230)](i[t(213)]-1):0;s={start:r,end:n,diff:n-r}}return s}[EL(320)](){const t=EL,e=this[t(326)];let s=[];if(e){const i=e[t(168)];for(let e=0;e<i[t(213)];e++){let r=i[t(314)](e),n=i[t(230)](e);s[t(199)]({start:r,end:n})}}return s}[EL(299)](t){const e=EL,s=t[e(202)]("\r\n");let i={};s[e(177)](t=>{const s=e;if(t[s(223)](s(184))){const e=t[s(202)](" "),r=e[1],n=e[2],o=e[s(264)](3),a=_s(o[0]);_s(o[1]),i[s(329)]=r,i[s(340)]=n,i[s(225)]=a,ws()?104===a?i.videoCodec=et.h265:(96===a||98===a||100===a||102===a)&&(i[s(263)]=et[s(324)]):49===a||51===a?i.videoCodec=et.h265:(103===a||107===a||109===a||115===a||117===a||39===a||41===a||43===a||119===a||121===a)&&(i.videoCodec=et[s(324)]),i[s(342)]=tt[i[s(263)]]}}),this.responseSdpInfo=i,this.player.debugLog(this[e(282)],e(299),JSON[e(274)](i))}getVideoCodec(){const t=EL;return this.responseSdpInfo&&this.responseSdpInfo[t(263)]?this[t(227)].videoCodec:et[t(324)]}isVideoCodecSupported(){const t=EL,e=this.getVideoCodec()===et[t(229)],s=this.getVideoCodec()===et[t(324)],i=Ms(),r=function(){const t=es,e=Ss(),s=e.type[t(637)]();return s===t(525)&&e[t(533)]>=136||s===t(673)}();return this[t(242)][t(221)](this.TAG_NAME,t(186)+e+t(188)+s+t(207)+i+t(321)+r),{result:e&&i&&r||s,error:t(186)+e+t(188)+s+" and supportH265 is "+i+t(321)+r}}getPlatform(){return""}}var kL=_L;function _L(t,e){var s=CL();return(_L=function(t,e){return s[t-=209]})(t,e)}function CL(){var t=["port","random","hostname","user_query","1034890JLDeEH","slice","location","parse","http","/rtc/v1/play/","1530260AlrYmg","href","pathname","play","protocol","schema","rtmp","__defaultVhost__","://","...vhost...","8481636DNcFth","rtmp://","41443fBujUF","replace","split","length","vhost","createElement","16FIaCrP","substring","493500MMBCfR","rtc://",":80","domain","8418970tUEeLE","8683482DzBZvV","http://","https","4ydrINy","now","https://","api","test","lastIndexOf","webrtc","webrtc://","vhost=","indexOf","toString","url"];return(CL=function(){return t})()}!function(t){for(var e=_L,s=t();;)try{if(853485===parseInt(e(258))/1+parseInt(e(240))/2+-parseInt(e(216))/3+parseInt(e(224))/4*(-parseInt(e(246))/5)+parseInt(e(221))/6+parseInt(e(220))/7+-parseInt(e(214))/8*(parseInt(e(256))/9))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(CL);const DL={defaultPath:kL(245),prepareUrl:function(t){var e=kL,s=DL[e(243)](t),i=s[e(239)][e(251)];i=i?i+":":window[e(242)][e(250)];var r=s[e(236)]||1985;"https:"===i&&(r=s[e(236)]||443);var n=s.user_query.play||DL.defaultPath;n.lastIndexOf("/")!==n[e(211)]-1&&(n+="/");var o=i+"//"+s.server+":"+r+n;for(var a in s[e(239)])a!==e(227)&&a!==e(249)&&(o+="&"+a+"="+s[e(239)][a]);return{apiUrl:o=o[e(209)](n+"&",n+"?"),streamUrl:s[e(235)],schema:i,urlObject:s,port:r,tid:Number(parseInt(Date[e(225)]()*Math[e(237)]()*100))[e(234)](16)[e(241)](0,7)}},parse:function(t){var e=kL,s=document[e(213)]("a");s[e(247)]=t.replace(e(257),"http://")[e(209)](e(231),"http://")[e(209)](e(217),e(222));var i=s[e(238)],r=s[e(248)][e(215)](1,s[e(248)][e(229)]("/")),n=s[e(248)][e(241)](s[e(248)].lastIndexOf("/")+1);if((r=r.replace(e(255),"?vhost="))[e(233)]("?")>=0){var o=r.slice(r[e(233)]("?"));r=r.slice(0,r[e(233)]("?")),o[e(233)](e(232))>0&&((i=o[e(241)](o[e(233)](e(232))+e(232)[e(211)]))[e(233)]("&")>0&&(i=i[e(241)](0,i[e(233)]("&"))))}if(s.hostname===i){/^(\d+)\.(\d+)\.(\d+)\.(\d+)$/[e(228)](s.hostname)&&(i=e(253))}var a=e(252);t[e(233)](e(254))>0&&(a=t[e(241)](0,t[e(233)](e(254))));var h=s[e(236)];h||(a===e(230)&&0===t[e(233)](e(231)+s.host+":")&&(h=0===t[e(233)]("webrtc://"+s.host+e(218))?80:443),a===e(244)?h=80:a===e(223)?h=443:a===e(252)&&(h=1935));var l={url:t,schema:a,server:s[e(238)],port:h,vhost:i,app:r,stream:n};return DL.fill_query(s.search,l),l[e(236)]||a!==e(230)&&"rtc"!==a||(l[e(239)][e(251)]===e(223)||0===window.location[e(247)][e(233)](e(226))?l.port=443:l[e(236)]=1985),l},fill_query:function(t,e){var s=kL;if(e[s(239)]={},0!==t[s(211)]){t.indexOf("?")>=0&&(t=t[s(210)]("?")[1]);for(var i=t[s(210)]("&"),r=0;r<i[s(211)];r++){var n=i[r][s(210)]("=");e[n[0]]=n[1],e[s(239)][n[0]]=n[1]}e[s(219)]&&(e[s(212)]=e[s(219)])}}};function LL(){const t=["5825831GdQCTV","signal","prepareUrl","2461475WkiKIv","cors","no-referrer","onerror","application/sdp","9yMkdwJ","tid","3229832bRMCUg","parse","111soqgyz","2xjrRLL","code","open","readyState","password","POST","452174ntSiji","12OikRkB","abort","144263JJEivF"," and error is ","67756zSLeVF","text/plain;charset=utf-8","setRequestHeader","follow","Failed to get sdp from ","6MigsAK","json","apiUrl","no-cache","streamUrl","3107390CBmEhK"," and response code is ","username","onload","include","Authorization","DONE","status"," and http status is "];return(LL=function(){return t})()}function RL(t,e){const s=LL();return(RL=function(t,e){return s[t-=497]})(t,e)}function PL(t,e,s){const i=RL;return fetch(t,{method:"POST",mode:"cors",cache:i(523),credentials:i(529),redirect:i(518),referrerPolicy:i(539),headers:{"Content-Type":i(498)},body:e,signal:s?s[i(535)]:null})}function xL(t,e){const s=RL;let i=null;const r=new Promise((s,r)=>{const n=RL,o=DL[n(536)](t);var a={api:o[n(522)],tid:o[n(500)],streamurl:o[n(524)],clientip:null,sdp:e};i=new XMLHttpRequest,i[n(528)]=function(){const t=n;if(i[t(507)]===i[t(531)]){if(200!==i[t(532)]&&201!==i[t(532)])return i=null,r(new Error(t(519)+o[t(522)]+t(533)+i[t(532)]));try{const e=JSON[t(502)](i.responseText);return i=null,e[t(505)]?r(new Error(t(519)+o[t(522)]+t(526)+e[t(505)])):s(e)}catch(t){r(t.toString())}}},i[n(497)]=function(t){const e=n;i=null,r(new Error(e(519)+o[e(522)]+e(514)+t))},i[n(506)](n(509),o.apiUrl,!0),i.setRequestHeader("Content-type","application/json"),i.send(JSON.stringify(a))});return r[s(512)]=function(){i&&(i.abort(),i=null)},r}function ML(t,e){let s=null;const i=new Promise((i,r)=>{const n=RL;s=new XMLHttpRequest,s[n(528)]=function(){const e=n;if(s[e(507)]!==s[e(531)])return;if(200!==s[e(532)]&&201!==s[e(532)])return s=null,r(new Error(e(519)+t+e(533)+s[e(532)]));const o=s.responseText;return s=null,o[e(505)]?r(new Error(e(519)+t+e(526)+o[e(505)])):i(o)},s.onerror=function(e){s=null,r(new Error("Failed to get sdp from "+t+n(514)+e))},s.open(n(509),t,!0),s[n(517)]("Content-type",n(498)),s.send(e)});return i.abort=function(){s&&(s[RL(512)](),s=null)},i}!function(t){const e=RL,s=t();for(;;)try{if(325494===-parseInt(e(504))/1*(parseInt(e(510))/2)+-parseInt(e(503))/3*(-parseInt(e(515))/4)+-parseInt(e(537))/5+parseInt(e(520))/6*(parseInt(e(513))/7)+parseInt(e(501))/8*(parseInt(e(499))/9)+-parseInt(e(525))/10+parseInt(e(534))/11*(parseInt(e(511))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(LL);const BL=FL;function FL(t,e){const s=OL();return(FL=function(t,e){return s[t-=494]})(t,e)}!function(t){const e=FL,s=t();for(;;)try{if(984362===-parseInt(e(517))/1*(parseInt(e(529))/2)+-parseInt(e(520))/3+parseInt(e(501))/4+parseInt(e(497))/5+-parseInt(e(500))/6+parseInt(e(538))/7+parseInt(e(528))/8*(parseInt(e(502))/9))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(OL);class UL extends IL{constructor(t){const e=FL;super(t),this.TAG_NAME="WebrtcForSRSDecoder",this[e(537)]=null,this[e(512)][e(527)](this[e(509)],"init")}destroy(){const t=FL;super[t(522)](),this.player[t(527)](this[t(509)],t(522))}[BL(510)](t){return new Promise((e,s)=>{const i=FL,r=this[i(536)];r[i(494)]()[i(513)](n=>{const o=i;r[o(505)](n),this[o(512)][o(527)](this[o(509)],o(524),t);let a=null,h=t;this.player[o(532)].webrtcForSRSBySDK?(a=xL,h=t[o(533)](window[o(514)][o(535)],o(507))):this[o(512)][o(532)].webrtcForSRSByWhipWhep?a=ML:(this.abortController=new AbortController,a=PL);let l=a(h,n[o(534)],this.abortController);this[o(539)]=l,l[o(513)](t=>{const i=o;if(this._requestAbort)return void(t[i(495)]&&t[i(495)][i(530)]&&t[i(495)][i(530)]()[i(503)](()=>{}));this[i(539)]=null,this[i(537)]=null,this[i(512)][i(527)](this[i(509)],"getWebRtcRemoteSdp response and code is "+t.code);const n=t;if(n&&Ws(n[i(519)])&&0!==n.code)return this[i(512)][i(516)](this.TAG_NAME,i(531)+n[i(519)]),s(n[i(496)]);if(n){const t=n[i(534)]||n;if(!t)return this[i(512)][i(516)](this.TAG_NAME,i(523)),s(i(523));this[i(498)](t);const o=this[i(521)]();if(xi(o[i(506)]))return s(o[i(526)]);r[i(508)](new RTCSessionDescription({type:"answer",sdp:t}))[i(513)](()=>{e()})[i(503)](t=>{const e=i;this[e(512)]&&this[e(512)][e(516)](this[e(509)],e(515),t.toString(),t),s(t)})}else this[i(512)].debugError(this[i(509)],i(523)),s(i(523))})[o(503)](t=>{const e=o;t[e(511)]!==e(499)&&null!==this[e(539)]&&(this.fetchPromise=null,this.abortController=null,this[e(512)][e(516)](this.TAG_NAME,"loadSource getWebRtcRemoteSdp response error",t[e(525)](),t),s(t))})})[i(503)](t=>{const e=i;this[e(512)][e(516)](this[e(509)],e(518),t[e(525)](),t),s(t)})})}getPlatform(){return he[BL(504)]}}function OL(){const t=["abortController","2967594qhziWD","fetchPromise","createOffer","body","msg","7268180xkBdSm","parseSdp","AbortError","8171916QWVEjZ","5177832HwnGPG","27009JisUCz","catch","srs","setLocalDescription","result","webrtc:","setRemoteDescription","TAG_NAME","loadSource","name","player","then","location","loadSource setRemoteDescription error","debugError","53MQDvsu","loadSource rtcPeerConnection.createOffer() error","code","5656056OvWpfj","isVideoCodecSupported","destroy","response sdp is null","getWebRtcRemoteSdp loadSource","toString","error","debugLog","4120hodbLs","18334moHsQF","cancel","response json code ","_opt","replace","sdp","protocol","rtcPeerConnection"];return(OL=function(){return t})()}const NL=VL;function VL(t,e){const s=jL();return(VL=function(t,e){return s[t-=443]})(t,e)}function jL(){const t=["14224zNIYrO","getWebRtcRemoteSdp loadSource","player","init","6YvblZX","WebrtcForOthersDecoder","AbortError","body","getWebRtcRemoteSdp response and code is ","_requestAbort","getWebRtcRemoteSdp response","loadSource sdp is null","signal","response sdp json code: ","aborted","loadSource getWebRtcRemoteSdp response error","setLocalDescription","2054475pmqRsE","abortController","toString","loadSource rtcPeerConnection.createOffer() error","loadSource response.text() error","debugError","getPlatform","130393KITPVw","catch","1539664soElxI","sdp is null","4txsUng","10zRPzsf","destroy","423126CAxPDw","code","loadSource setRemoteDescription error","rtcPeerConnection","setRemoteDescription","debugLog","parse","cancel","then","text","728milDeM","name","TAG_NAME","loadSource","210055AHwhXd","830949iZsJqX"];return(jL=function(){return t})()}!function(t){const e=VL,s=t();for(;;)try{if(583424===parseInt(e(481))/1+parseInt(e(483))/2+parseInt(e(456))/3*(-parseInt(e(485))/4)+-parseInt(e(455))/5*(-parseInt(e(461))/6)+parseInt(e(451))/7*(parseInt(e(457))/8)+-parseInt(e(474))/9+parseInt(e(486))/10*(-parseInt(e(488))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(jL);class WL extends IL{constructor(t){const e=VL;super(t),this[e(453)]=e(462),this[e(459)][e(446)](this.TAG_NAME,e(460))}[NL(487)](){const t=NL;super[t(487)](),this[t(459)][t(446)](this[t(453)],t(487))}[NL(454)](t){return new Promise((e,s)=>{const i=VL,r=this[i(444)];r.createOffer()[i(449)](n=>{const o=i;r[o(473)](n),this[o(459)][o(446)](this[o(453)],o(458),t),this[o(475)]=new AbortController,function(t,e,s){const i=RL;return fetch(t,{method:i(509),mode:"cors",cache:i(523),credentials:i(529),redirect:i(518),referrerPolicy:i(539),headers:{"Content-Type":i(498)},body:e,signal:s?s.signal:null})}(t,n.sdp,this.abortController)[o(449)](t=>{const i=o;this[i(466)]?t[i(464)][i(448)]()[i(482)](()=>{}):(this[i(475)]=null,this[i(459)][i(446)](this[i(453)],i(465)+t[i(489)]),t[i(450)]()[i(449)](t=>{const n=i;this.player.debugLog(this[n(453)],n(467));try{let e=JSON[n(447)](t);this[n(459)][n(446)](this[n(453)],"this is json sdp response"),Ws(e[n(489)])&&0!=e.code&&(this[n(459)].debugError(this[n(453)],"response json code "+e[n(489)]),s(new Error(n(470)+e[n(489)]))),t=e.sdp}catch(t){this[n(459)][n(446)](this[n(453)],"this is raw sdp response")}t?r[n(445)](new RTCSessionDescription({type:"answer",sdp:t})).then(()=>{e()})[n(482)](t=>{const e=n;this.player[e(479)](this[e(453)],e(443),t[e(476)](),t),s(t)}):(this[n(459)][n(479)](this[n(453)],n(468)),s(n(484)))})[i(482)](t=>{const e=i;this[e(459)][e(479)](this[e(453)],e(478),t.toString(),t),s(t)}))}).catch(t=>{const e=o;this.abortController&&this[e(475)][e(469)]&&this.abortController[e(469)][e(471)]||t[e(452)]!==e(463)&&(this[e(475)]=null,this.player.debugError(this[e(453)],e(472),t[e(476)](),t),s(t))})})[i(482)](t=>{const e=i;this[e(459)][e(479)](this[e(453)],e(477),t[e(476)](),t),s(t)})})}[NL(480)](){return he.other}}const GL=HL;function zL(){const t=["loadSource response.text() error","emitError","onnegotiationneeded","rtcPeerTrackAudioReceiver","debugLog","new","loadSource sdp is null","getWebRtcRemoteSdp response","video","rtcPeerTrackVideoReceiver","streams","74009caSSwZ","recvonly","disconnected","ontrack video","track","aborted","6ibPHnw","onsignalingstatechange","ondatachannel is H265 but decode is h264 so emit webrtcStreamH265 ","hasAudio","ontrack","text","_opt","rtcPeerConnection","onicecandidateerror[candidate错误]","ontrack audio","toString","iceGatheringState","getReceivers","isWebrtcH264","Remote ICE candidate: ","data","debugError","onopen","debugWarn","_isDestroyed","11602192xJkOsw","onicegatheringstatechange","addTransceiver","catch","answer","srcObject","loadSource rtcPeerConnection.createOffer() error","ondatachannel","783966HhOKGf","getWebRtcRemoteSdp loadSource","webrtcClosed","stopStreamRateInterval","_initRtcPeerConnection","failed","connectionState","oniceconnectionstatechange","streamRateInterval","toFixed","loadSource","sdp","loadSource setRemoteDescription error","offer","isVideoCodecSupported","error","webrtcFailed","_startBandwidthEstimateInterval","2141084nSkWsz","1273920WSyhRL","isDestroyedOrClosed","name","find","setRemoteDescription","isEmitSEI","remove","abortController","ondatachannel and onopen","destroy","autoplay","onconnectionstatechange","emit","onclose","signalChannel,onmessage","iceConnectionState","dispatch","loadSource getWebRtcRemoteSdp response error","sdp is null","setLocalDescription","checking","then","TAG_NAME","demux","streamRate","isWebrtcH265","webrtcDisconnect","webrtcIceCandidateError","onicecandidate","signal","channel","getWebrtcVideo","rtcPeerConnectionDataChannel","close","kBps","onmessage","cancel","completed","connected","startStreamRateInterval","audio","WebrtcForM7SDecoder","candidate","7893950FyySJw","getPlatform","AbortError","kind","35PfeEji","createDataChannel","closed","onconnectionstatechange[所有ICE 状态总览]","webrtcOnConnectionStateChange","init","2335113hyBdgV","byteLength","player","webrtcStreamH265"];return(zL=function(){return t})()}function HL(t,e){const s=zL();return(HL=function(t,e){return s[t-=113]})(t,e)}!function(t){const e=HL,s=t();for(;;)try{if(934364===parseInt(e(138))/1*(-parseInt(e(144))/2)+-parseInt(e(191))/3+-parseInt(e(190))/4+parseInt(e(113))/5+parseInt(e(172))/6*(-parseInt(e(117))/7)+parseInt(e(164))/8+-parseInt(e(123))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(zL);class KL extends IL{constructor(t){const e=HL;super(t),this[e(223)]=null,this[e(125)].isWebrtcH265()&&(this[e(215)]=ds(s=>{const i=e;t[i(203)](q[i(225)],(s/1e3)[i(181)](2))})),this.TAG_NAME=e(232),this[e(125)][e(131)](this[e(213)],e(122))}[GL(200)](){const t=GL;super[t(200)](),this[t(175)](),this[t(223)]&&(this.rtcPeerConnectionDataChannel[t(161)]=null,this[t(223)][t(204)]=null,this.rtcPeerConnectionDataChannel[t(226)]=null,this.rtcPeerConnectionDataChannel[t(224)](),this[t(223)]=null),this.player[t(131)](this[t(213)],"destroy")}[GL(176)](){const t=GL,e=new RTCPeerConnection,s=this.player,i=e[t(166)]("video",{direction:"recvonly"});this[t(125)]._opt[t(147)]&&e[t(166)](t(231),{direction:t(139)}),s[t(157)]()&&this[t(125)][t(150)][t(196)]&&this._createEncodedStreams(i.receiver),e[t(145)]=e=>{const s=t;this[s(125)][s(131)](this[s(213)],"onsignalingstatechange[本地端的信号状态]",e)},e[t(165)]=s=>{const i=t;this[i(125)][i(131)](this[i(213)],"onicegatheringstatechange[ICE收集状态]",s,e[i(155)])},e[t(129)]=e=>{const s=t;this[s(125)][s(131)](this[s(213)],"onnegotiationneeded[通信环境发生变化]",e)},e.oniceconnectionstatechange=i=>{const r=t;this[r(125)].debugLog(this[r(213)],r(179),e[r(206)]);const n=e[r(206)];switch(this[r(125)][r(203)](q.webrtcOnIceConnectionStateChange,n),this.isDisconnected=n===r(140),e[r(206)]){case"new":case r(211):case r(119):break;case r(177):s.emit(q[r(188)]);break;case r(140):s.emit(q[r(217)]);break;case r(229):case r(228):break;case r(119):s.emit(q[r(174)])}},e[t(219)]=e=>{const s=t;this.player.debugLog(this[s(213)],s(219),e),e.candidate&&this[s(125)][s(131)](this[s(213)],s(158),e.candidate[s(233)])},e[t(148)]=i=>{const r=t;this[r(125)][r(131)](this[r(213)],r(148),i);const n=s[r(222)]();if(s[r(157)]())if(i[r(142)].kind===r(135)){this.player[r(131)](this.TAG_NAME,r(141)),this.rtcPeerTrackVideoReceiver=e.getReceivers()[r(194)](function(t){const e=r;return t[e(142)]===i[e(142)]}),this[r(136)]&&this[r(189)]();let t=i[r(137)][0];n[r(201)]=!0,n[r(169)]=t,this.videoStream=t}else i[r(142)][r(116)]===r(231)&&(this[r(125)].debugLog(this[r(213)],r(153)),this[r(130)]=e[r(156)]()[r(194)](function(t){const e=r;return t.track===i[e(142)]}),this[r(130)]&&this._startBandwidthEstimateInterval())},e.onicecandidateerror=e=>{const s=t;this[s(125)][s(131)](this[s(213)],s(152),e),this[s(125)][s(128)](J[s(218)],e)},e[t(202)]=i=>{const r=t;switch(this[r(125)].debugLog(this[r(213)],r(120),i),this[r(125)][r(203)](q[r(121)],e[r(178)]),e.connectionState){case r(132):case"connecting":case r(229):case r(140):break;case r(177):this.isDisconnected&&s[r(203)](q[r(188)]);case r(119):}},e[t(171)]=e=>{const s=t,i=e[s(221)];this[s(125)][s(131)](this.TAG_NAME,"ondatachannel"),i[s(161)]=()=>{const t=s;this[t(125)].debugLog(this[t(213)],t(199))},i.onmessage=t=>{const e=s,i=t[e(159)];if(!this[e(163)]){if(!this[e(125)][e(192)]())return this[e(125)].isWebrtcH264()?(this[e(125)][e(162)](this[e(213)],e(146)),void this.player[e(203)](q[e(126)])):(this[e(215)]&&this.streamRate(i[e(124)]),void(this[e(125)][e(214)]&&this.player[e(214)][e(207)](i)));this.player.debugWarn(this[e(213)],"ondatachannel and player is destroyed and return")}},i.onclose=()=>{const t=s;this[t(125)][t(162)](this[t(213)],"ondatachannel and onclose")},this[s(223)]=i};e[t(118)]("signal")[t(226)]=e=>{const s=t;this[s(125)][s(131)](this.TAG_NAME,s(205),e);switch(JSON.parse(e[s(159)]).type){case s(185):case s(168):case s(233):case s(197):}},this.rtcPeerConnection=e}[GL(230)](){const t=GL;this[t(175)](),this[t(180)]=setInterval(()=>{this.streamRate&&this.streamRate(0)},1e3)}[GL(175)](){const t=GL;this.streamRateInterval&&(clearInterval(this[t(180)]),this[t(180)]=null)}[GL(182)](t,e={}){return new Promise((s,i)=>{const r=HL,n=this[r(151)];n.createOffer()[r(212)](o=>{const a=r;n[a(210)](o),this[a(125)][a(131)](this[a(213)],a(173),t),this[a(198)]=new AbortController,function(t,e,s={},i){const r=RL;let n={"Content-Type":r(498)};return s.username&&s[r(508)]&&(n[r(530)]="Basic "+btoa(s[r(527)]+":"+s[r(508)])),fetch(t,{method:r(509),mode:r(538),cache:r(523),credentials:r(529),redirect:r(518),referrerPolicy:r(539),headers:n,body:e,signal:i?i.signal:null})}(t,o[a(183)],e,this[a(198)])[a(212)](t=>{const e=a;this._requestAbort?t.body[e(227)]()[e(167)](()=>{}):(this[e(198)]=null,t[e(149)]().then(t=>{const r=e;if(this[r(125)][r(131)](this[r(213)],r(134)),t){this.parseSdp(t);const e=this[r(186)]();if(xi(e.result))return i(e[r(187)]);n[r(195)](new RTCSessionDescription({type:r(168),sdp:t}))[r(212)](()=>{const t=r;this[t(125)][t(216)]()&&this.startStreamRateInterval(),s()})[r(167)](t=>{const e=r;this[e(125)][e(160)](this.TAG_NAME,e(184),t[e(154)](),t),i(t)})}else this[r(125)][r(160)](this[r(213)],r(133)),i(r(209))}).catch(t=>{const s=e;this.player.debugError(this[s(213)],s(127),t[s(154)](),t),i(t)}))})[a(167)](t=>{const e=a;this[e(198)]&&this[e(198)][e(220)]&&this[e(198)][e(220)][e(143)]||t[e(193)]!==e(115)&&(this.abortController=null,this[e(125)][e(160)](this[e(213)],e(208),t.toString(),t),i(t))})})[r(167)](t=>{const e=r;this[e(125)][e(160)](this[e(213)],e(170),t.toString(),t),i(t)})})}[GL(114)](){return he.m7s}}const qL=QL;function QL(t,e){const s=YL();return(QL=function(t,e){return s[t-=469]})(t,e)}function YL(){const t=["2936670IytAKJ","destroy","fetchPromise","code","437560vWdKAn","zlm","sdp","isVideoCodecSupported","debugLog","rtcPeerConnection","toString","response json code ","6QfUtRP","player","debugError","answer","50jFHBpy","302152YBdlKx","4204773JyqblK","parseSdp","response sdp is null","loadSource","596328ewTyxY","27919Dgmlhq","TAG_NAME","then","msg","getWebRtcRemoteSdp response and code is ","result","sdp is null","init","6973799eGyRWo","catch","8uikVyD","error","getWebRtcRemoteSdp loadSource","loadSource rtcPeerConnection.createOffer() error"];return(YL=function(){return t})()}!function(t){const e=QL,s=t();for(;;)try{if(508257===parseInt(e(499))/1*(parseInt(e(488))/2)+-parseInt(e(476))/3+parseInt(e(493))/4+parseInt(e(480))/5+-parseInt(e(498))/6+-parseInt(e(470))/7*(parseInt(e(472))/8)+parseInt(e(494))/9*(parseInt(e(492))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(YL);class JL extends IL{constructor(t){const e=QL;super(t),this[e(500)]="WebrtcForZLMDecoder",this[e(478)]=null,this.player[e(484)](this[e(500)],e(469))}[qL(477)](){const t=qL;super[t(477)](),this[t(489)][t(484)](this[t(500)],t(477))}[qL(497)](t){return new Promise((e,s)=>{const i=QL,r=this[i(485)];r.createOffer().then(n=>{const o=i;r.setLocalDescription(n),this[o(489)][o(484)](this[o(500)],o(474),t);let a=function(t,e){const s=RL;return qc({url:t,type:s(509),data:e,contentType:s(516),processData:!1,dataType:s(521)})}(t,n.sdp);this.fetchPromise=a,a[o(501)](t=>{const i=o;this[i(478)]=null,this.player.debugLog(this[i(500)],i(503)+t[i(479)]);const n=t;if(n&&Ws(n[i(479)])&&0!==n[i(479)])return this[i(489)][i(490)](this.TAG_NAME,i(487)+n[i(479)]),s(n[i(502)]);if(n&&n[i(482)]){this[i(495)](n[i(482)]);const t=this[i(483)]();if(xi(t[i(504)]))return s(t[i(473)]);r.setRemoteDescription(new RTCSessionDescription({type:i(491),sdp:n[i(482)]}))[i(501)](()=>{e()})[i(471)](t=>{const e=i;this[e(489)].debugError(this.TAG_NAME,"loadSource setRemoteDescription error",t[e(486)](),t),s(t)})}else this[i(489)][i(490)](this.TAG_NAME,i(496)),s(i(505))})[o(471)](t=>{const e=o;null!==this[e(478)]&&(this[e(478)]=null,this[e(489)].debugError(this[e(500)],"loadSource getWebRtcRemoteSdp response error",t.toString(),t),s(t))})})[i(471)](t=>{const e=i;this[e(489)][e(490)](this.TAG_NAME,e(475),t[e(486)](),t),s(t)})})}getPlatform(){return he[qL(481)]}}const XL=ZL;function $L(){const t=["destroy","isSupport","debugError","aliyunRtc","aliyunRtcError","bytesReceivedPerSecond","catch","2PGjntr","buffered","push","getVideoBufferRangeList","71003PZDceI","aliyun","56VCBrnt","getPlatform","getVideoCodec","onPlayEvent and playing - > waiting","toFixed","aliyunRtcRemoteStream","AliyunRtc is not defined","$videoElement","end","AliyunRtc","playing","player","kBps","510372iGAADO","590448ScQgvD","reconnect","onError and code is ","onPlayEvent","data","playbackRate"," and message: ","debugLog","2304CjAeTm","event","createClient","32142fBEDrR","WAITING","5056030vKTxcW","updateStats","errorCode","unsubscribe","emitError","CANPLAY","currentTime","message","start","subscribe","audio","video","media","loadSource and is not support: ","length","canplay","7SLxZVe","floor","loadSource and subscribe is not success: ","458555VZnXXl","AliRTS","PLAYING","listenEvents","readyState","TAG_NAME","onPlayEvent and waiting -> playing","isVideoPlaying","onError","MEDIA","waiting"];return($L=function(){return t})()}function ZL(t,e){const s=$L();return(ZL=function(t,e){return s[t-=163]})(t,e)}!function(t){const e=ZL,s=t();for(;;)try{if(101293===-parseInt(e(212))/1+-parseInt(e(208))/2*(parseInt(e(169))/3)+-parseInt(e(228))/4+-parseInt(e(190))/5+-parseInt(e(227))/6*(parseInt(e(187))/7)+-parseInt(e(214))/8*(-parseInt(e(166))/9)+parseInt(e(171))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}($L);class tR extends h{constructor(t){const e=ZL;if(super(),this[e(195)]=e(223),this[e(225)]=t,!window.AliRTS)throw new Error(e(220));this.aliyunRtc=window[e(191)][e(168)](),this.aliyunRtcRemoteStream=null,this[e(221)]=this[e(225)][e(182)][e(221)],this.listenEvents(),this._isDestroyed=!1,this[e(225)][e(165)](this[e(195)],"init")}[XL(201)](){const t=XL;this._isDestroyed=!0,this[t(204)]&&(this[t(219)]&&(this[t(219)]=null),this[t(204)][t(174)](),this[t(204)]=null),this[t(221)]=null,this.off(),this.player[t(165)](this.TAG_NAME,t(201))}[XL(193)](){const t=XL;this[t(204)].on(t(198),e=>{const s=t;this[s(225)][s(165)](this.TAG_NAME,s(230)+e[s(173)]+s(164)+e[s(178)]),10400!==e[s(173)]&&(this.player[s(203)](this[s(195)],s(230)+e.errorCode+s(164)+e[s(178)]),this[s(225)][s(175)](J[s(205)],e[s(178)]))}),this[t(204)].on(t(229),e=>{const s=t;this.player[s(165)](this[s(195)],s(229),e)});const e={CANPLAY:t(186),WAITING:t(200),PLAYING:t(224),MEDIA:t(183)};this[t(204)].on(t(231),s=>{const i=t;if(s.event===e[i(176)])this[i(225)][i(165)](this.TAG_NAME,"onPlayEvent and canplay");else if(s[i(167)]===e[i(170)])this[i(225)].debugLog(this[i(195)],i(217));else if(s.event===e[i(192)])this[i(225)][i(165)](this[i(195)],i(196));else if(s[i(167)]===e[i(199)]){const t=s[i(232)];let e={},r=0;if(t[i(181)]){const s=Math.floor(t[i(181)].bytesReceivedPerSecond);r+=s,e.abps=s}if(t.video){const s=Math[i(188)](t[i(182)][i(206)]);r+=s,e.vbps=s}this.player[i(172)](e),this[i(225)].emit(q[i(226)],(r/1e3)[i(218)](2))}})}loadSource(t){return new Promise((e,s)=>{const i=ZL;this[i(204)][i(202)]({isReceiveVideo:!0}).then(()=>{const r=i;this[r(204)][r(180)](t,{}).then(t=>{const s=r;this.aliyunRtcRemoteStream=t,t.play(this[s(221)]),e()})[r(207)](t=>{const e=r;this[e(225)][e(203)](this[e(195)],e(189),t[e(178)]),s(t[e(178)])})}).catch(t=>{const e=i;this[e(225)].debugError(this[e(195)],e(184),t[e(178)]),s(t[e(178)])})})}getVideoCurrentTime(){const t=XL;let e=0;return this.$videoElement&&(e=this.$videoElement[t(177)]),e}[XL(197)](){const t=XL;return this[t(221)]&&xi(this[t(221)].paused)&&xi(this[t(221)].ended)&&0!==this[t(221)][t(163)]&&0!==this[t(221)][t(194)]}getVideoBufferTimeRange(){const t=XL,e=this[t(221)];let s=null;if(e){const i=e.buffered,r=i[t(185)]?i.start(0):0,n=i[t(185)]?i[t(222)](i[t(185)]-1):0;s={start:r,end:n,diff:n-r}}return s}[XL(211)](){const t=XL,e=this[t(221)];let s=[];if(e){const i=e[t(209)];for(let e=0;e<i[t(185)];e++){let r=i[t(179)](e),n=i[t(222)](e);s[t(210)]({start:r,end:n})}}return s}[XL(216)](){return et.h264}[XL(215)](){return he[XL(213)]}}const eR=iR;function sR(){const t=["671tVKsYu","previousLevel","9080334jLPynp","currentLevel","player","132yHHCKR","98581GQMLSV","debugLog","8IXqqBz","observeCpuSuccess","then","1351720tQAqca","destroy","TAG_NAME","4020648XeTfse","nominal","latestCpuInfo","_init","754275tHfmHR","PressureObserverCpu","cpu","source","observer","fair","catch","273303AMoYeV","observe cpu success","119160bFasbZ","critical","emit","5CRgWFj","pressureObserverCpu"];return(sR=function(){return t})()}function iR(t,e){const s=sR();return(iR=function(t,e){return s[t-=173]})(t,e)}!function(t){const e=iR,s=t();for(;;)try{if(693538===parseInt(e(204))/1+parseInt(e(187))/2*(parseInt(e(197))/3)+parseInt(e(190))/4*(parseInt(e(177))/5)+parseInt(e(184))/6*(parseInt(e(185))/7)+parseInt(e(193))/8+-parseInt(e(181))/9+parseInt(e(174))/10*(-parseInt(e(179))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(sR);class rR{constructor(t){const e=iR;this[e(183)]=t,this[e(192)]=e(198),this[e(201)]=null,this.latestCpuInfo=null,this.currentLevel=-1,this.previousLevel=-1,this[e(188)]=!1,this[e(196)](),this[e(183)][e(186)](this[e(192)],"init")}destroy(){const t=iR;this[t(201)]&&(this[t(188)]&&this.observer.disconnect(),this[t(201)]=null),this[t(188)]=!1,this[t(195)]=null,this[t(182)]=-1,this[t(180)]=-1,this[t(183)][t(186)](this[t(192)],t(191))}getCurrentCpuState(){return this[iR(182)]}[eR(196)](){const t=eR;xi(Wi())?this[t(183)][t(186)](this.TAG_NAME,"not support PressureObserver"):(this.observer=new PressureObserver(e=>{const s=t,i=(e||[]).find(t=>{const e=iR;return t[e(200)]===e(199)});if(i){switch(this[s(195)]=i,i.state){case s(194):this[s(182)]=0;break;case s(202):this.currentLevel=1;break;case"serious":this[s(182)]=2;break;case s(175):this.currentLevel=3;break;default:this[s(182)]=-1}this[s(182)]!==this[s(180)]&&this[s(183)][s(176)](q[s(178)],this[s(182)]),this[s(180)]=this[s(182)]}}),this[t(201)]&&this.observer.observe(t(199),{sampleInterval:1e3})[t(189)](()=>{const e=t;this[e(188)]=!0,this.player[e(186)](this[e(192)],e(173))})[t(203)](()=>{const e=t;this[e(188)]=!1,this[e(183)][e(186)](this.TAG_NAME,"observe cpu fail")}))}}const nR=aR;function oR(){const t=["20vMNhyT","ghostConfig","left","42LHQRgM","getVideoInfo","bind","startAndResize","player","bound","color","isStopAnimation","isGhost","1410525MkZCTM","shadowRootDynamicDom","shadowRootInnerDom","455DKpvhk","destroy","fontSize","_addDom","removeDomTimeout","options","TAG_NAME","startAnimation","66252hAtWba","12765159PyRpze","4436RYYvIM","getBoundingClientRect","off","447sjOqaP","waterMarkWillRemove","random","322lnLrsT","24596FUBBoL","min","GhostWatermark","speed","content","start","waterMarkWillAdd","DynamicWatermark","appendChild","height","opacity","rafID","resize","251915sWnNXL","1996477oLZNBk","top","16EJdpwm","addDomTimeout","style","isPauseAnimation","width"];return(oR=function(){return t})()}function aR(t,e){const s=oR();return(aR=function(t,e){return s[t-=159]})(t,e)}!function(t){const e=aR,s=t();for(;;)try{if(669520===parseInt(e(177))/1*(parseInt(e(183))/2)+-parseInt(e(180))/3*(parseInt(e(184))/4)+-parseInt(e(197))/5*(parseInt(e(208))/6)+parseInt(e(198))/7*(parseInt(e(200))/8)+parseInt(e(164))/9*(-parseInt(e(205))/10)+parseInt(e(176))/11+-parseInt(e(175))/12*(parseInt(e(167))/13))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(oR);class hR extends Cn{constructor(t,e={}){const s=aR;super(t),this[s(173)]=s(191),this[s(203)]=!1,this[s(162)]=!1,this[s(195)]=null,this[s(172)]=e,this.speed=e[s(187)]||.2,this.isDynamic=!0,this.shadowRootDynamicDom=null,this[s(163)]=!0===e[s(163)],this[s(163)]&&(this[s(173)]=s(186)),this[s(206)]={on:e.on||5,off:e[s(179)]||5},this[s(181)]=!1,this.waterMarkWillAdd=!1,this.removeDomTimeout=null,this[s(201)]=null,this[s(160)]={start:this[s(189)][s(210)](this)},this[s(159)].once(q[s(189)],this[s(160)].start)}[nR(168)](){const t=nR;this[t(171)]&&(clearTimeout(this.removeDomTimeout),this[t(171)]=null),this[t(201)]&&(clearTimeout(this.addDomTimeout),this[t(201)]=null),this[t(165)]=null,this.stopAnimation(),this[t(195)]&&(cancelAnimationFrame(this[t(195)]),this[t(195)]=null),this[t(172)]=null,this[t(206)]=null,this.bound=null,super[t(168)]()}start(){const t=nR;let e;Xi()?e=decodeURIComponent(I+"%20%E4%BD%93%E9%AA%8C"):Yi()&&(e=this[t(172)][t(188)]);let s=this[t(159)][t(209)]();!s&&(s={width:200,height:200}),e&&(this.update({text:{content:e,fontSize:this[t(172)][t(169)]||18,color:this.options[t(161)]||"black"},left:s[t(204)]*Math[t(182)](),top:s.height*Math.random(),opacity:this[t(172)][t(194)]||.15}),this[t(174)]())}[nR(211)](){const t=nR;this.start(),this[t(196)]()}startAnimation(){const t=nR;if(!this.rafID){let e=1,s=1,i=Math[t(182)](),r={width:0,height:0};const n=()=>{const o=t;try{if(xi(this[o(203)])&&this[o(165)]&&this[o(166)]){const t=this[o(166)],a=this[o(165)],h=t[o(178)](),l=a[o(178)]();if(l[o(204)]&&l[o(193)]&&(r[o(204)]=l[o(204)],r[o(193)]=l[o(193)]),!this[o(166)].contains(this[o(165)]))return this[o(163)]?xi(this[o(190)])&&(this[o(190)]=!0,this[o(201)]=setTimeout(()=>{const t=o;this[t(170)](h,r),this[t(190)]=!1,this[t(201)]=null},1e3*this.ghostConfig[o(179)])):this[o(170)](h,r),void(0!==this[o(187)]&&requestAnimationFrame(n));const c=Math.min(1,0===this[o(187)]?0:this.speed?this[o(187)]:.2);let d=l[o(207)]-h.left,u=l[o(199)]-h[o(199)];d+=c*s*i,u+=c*e*(1-i),d+r[o(204)]>h[o(204)]?(s=-1,i=Math[o(182)]()):d<0&&(s=1,i=Math.random()),u+r.height>h[o(193)]?(e=-1,i=Math[o(182)]()):u<0&&(e=1,i=Math[o(182)]()),d=Math[o(185)](h[o(204)]-r[o(204)],d),u=Math[o(185)](h[o(193)]-r[o(193)],u);const p=d/h[o(204)]*100,f=u/h.height*100;this[o(165)][o(202)].left=p+"%",this[o(165)][o(202)][o(199)]=f+"%",xi(this[o(181)])&&this[o(163)]&&(this[o(181)]=!0,this[o(171)]=setTimeout(()=>{const t=o;this._removeDom(),this.waterMarkWillRemove=!1,this[t(171)]=null},1e3*this[o(206)].on))}}catch(t){}if(this[o(162)])return this[o(162)]=!1,cancelAnimationFrame(this[o(195)]),void(this[o(195)]=null);0!==this[o(187)]&&requestAnimationFrame(n)};this.rafID=requestAnimationFrame(n)}}[nR(170)](t,e){const s=nR;if(this[s(166)]&&this[s(165)]){this[s(166)][s(192)](this[s(165)]);let i=t[s(204)]*Math.random(),r=t.height*Math[s(182)]();i=Math[s(185)](t[s(204)]-2*e[s(204)],i),r=Math[s(185)](t[s(193)]-2*e.height,r),this[s(165)][s(202)][s(207)]=i+"px",this[s(165)][s(202)][s(199)]=r+"px"}}resumeAnimation(){this.isPauseAnimation=!1}pauseAnimation(){this.isPauseAnimation=!0}stopAnimation(){this[nR(162)]=!0}}const lR=dR;function cR(){const t=["3VwrSwK","_off()","max","pageX","zIndex","add","floor","height","drawingRectInfo","handleMouseDown","getDrawingMinLeftTop","createElement","absolute","$rectBox","forEach","offsetTop","abs","minX","getRenderType","length","min","1493368oFYdvX","appendChild","debugLog","map","jb-pro-drawing-rect-box","_off","_resetPoint","1108356aQGkon","drawingRectangle","isResize","width","style","_addRectCanvasContainer","push","init","querySelector","maxY","player","endPoint","drawingRectColor","_bindEvents","_removeRectCanvasContainer","position","isDragging","canvas","off","_unbindEvents","split","isFullResize","default","_handleDrawingRect","getControlHeight","395210ttJnnZ","_opt","bind","drawingRectLineWidth","mouseup","removeChild","div","getVideoInfo","emit","getShowVideoRect","7tdyoyI","preventDefault","14093SYAkOv","minY","stopPropagation","mousemove","8UTieLF","18izrrNl","px solid ","handleMouseUp","offsetLeft","startPagePoint","reset","100%","left","DrawRectangle","bound","maxX","_removeRectBox","$element","startPoint","$container","862750lVRJWm","791592GwpChN","pageY","aspectRatio","360004xKZTSy","handleMouseMove","143nzzRoV","top","drawingRect","TAG_NAME","bindEvents","destroy"];return(cR=function(){return t})()}function dR(t,e){const s=cR();return(dR=function(t,e){return s[t-=167]})(t,e)}!function(t){const e=dR,s=t();for(;;)try{if(268198===-parseInt(e(179))/1*(parseInt(e(183))/2)+parseInt(e(211))/3*(parseInt(e(203))/4)+-parseInt(e(199))/5+-parseInt(e(239))/6+-parseInt(e(177))/7*(parseInt(e(232))/8)+parseInt(e(184))/9*(-parseInt(e(167))/10)+-parseInt(e(205))/11*(-parseInt(e(200))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(cR);class uR extends h{constructor(t){const e=dR;super(),this[e(249)]=t,this[e(208)]=e(192),this.reset(),this[e(238)](),this.bindEvents=[],this[e(224)]=null,this[e(196)]=null,this[e(193)]={_handleDrawingRect:this._handleDrawingRect[e(169)](this),handleMouseMove:this[e(204)][e(169)](this),handleMouseDown:this[e(220)][e(169)](this),handleMouseUp:this[e(186)][e(169)](this)},this[e(249)].on(q[e(207)],this[e(193)]._handleDrawingRect),this[e(249)][e(234)](this[e(208)],e(246))}[lR(210)](){const t=lR;this[t(237)](),this[t(258)](),this[t(189)](),this[t(195)](),this.off(),this[t(193)]=null,this[t(249)][t(234)](this[t(208)],t(210))}_off(){const t=lR;this[t(249)][t(234)](this.TAG_NAME,t(212)),this[t(249)][t(257)](q.drawingRect,this[t(193)][t(262)])}[lR(189)](){const t=lR;this[t(240)]=!1,this[t(255)]=!1,this[t(197)]=null,this[t(250)]=null,this[t(188)]=null}[lR(238)](){const t=lR;this[t(188)]={x:0,y:0},this[t(197)]={x:0,y:0},this[t(250)]={x:0,y:0}}_handleDrawingRect(t){const e=lR;this[e(240)]=t,t?this._bindEvents():(this[e(258)](),this[e(195)]())}[lR(252)](){const t=lR,{events:{proxy:e}}=this[t(249)],s=e(this[t(249)][t(198)],t(182),this[t(193)].handleMouseMove),i=e(this[t(249)][t(198)],"mousedown",this[t(193)][t(220)]),r=e(window,t(171),this[t(193)].handleMouseUp);this[t(244)](),this.bindEvents[t(245)](s,i,r)}[lR(258)](){const t=lR;this[t(253)](),this[t(209)][t(230)]>0&&(this[t(209)][t(225)](t=>{t&&t()}),this[t(209)]=[])}[lR(244)](){const t=lR;this.player[t(229)]()===A[t(256)]&&(this[t(196)]=document[t(222)](t(173)),this.$element.style[t(254)]=t(223),this.$element.classList[t(216)]("jb-pro-drawing-rect-box-canvas-container"),this.$element.style[t(242)]=t(190),this.$element[t(243)].height=t(190),this.$element.style[t(215)]=1,this[t(249)][t(198)].appendChild(this[t(196)]))}[lR(253)](){const t=lR;if(this[t(196)]){if(!En(this[t(196)])){const e=this[t(249)].$container[t(247)](".jb-pro-drawing-rect-box-canvas-container");e&&this[t(249)].$container&&this[t(249)][t(198)].removeChild(e)}this[t(196)]=null}}_removeRectBox(){const t=lR;if(this.$rectBox){if(!En(this.$rectBox)){const e=this[t(249)][t(198)][t(247)](".jb-pro-drawing-rect-box");e&&this[t(249)][t(198)]&&this[t(249)].$container[t(172)](e)}this[t(224)]=null}}handleMouseDown(t){const e=lR;if(t[e(181)](),!this[e(240)])return;this._removeRectBox();const s=t.offsetX,i=t.offsetY;this[e(197)].x=s,this[e(197)].y=i,this[e(188)].x=t[e(214)]-this[e(249)][e(198)][e(187)],this.startPagePoint.y=t[e(201)]-this.player.$container[e(226)],this[e(224)]=document[e(222)]("div"),this[e(224)].classList[e(216)](e(236)),this[e(224)][e(243)].border=this[e(249)][e(168)][e(170)]+e(185)+this[e(249)][e(168)][e(251)],this[e(224)][e(243)].position=e(223),this.$rectBox[e(243)][e(191)]=this[e(197)].x+"px",this.$rectBox.style[e(206)]=this[e(197)].y+"px",this[e(249)][e(198)][e(233)](this[e(224)]),this[e(255)]=!0}[lR(204)](t){const e=lR;if(t[e(181)](),!this[e(255)])return;if(!this[e(240)])return;if(!this[e(224)])return;const s=this.player[e(198)],i=this[e(249)][e(263)](),r=t[e(214)]-s.offsetLeft,n=t[e(201)]-s[e(226)];if(r<this[e(188)].x||n<this[e(188)].y)return;this[e(250)].x=r,this.endPoint.y=n;let o=Math[e(227)](this[e(250)].x-this[e(188)].x),a=Math.abs(this[e(250)].y-this[e(188)].y),h=this[e(249)].width-this[e(197)].x-1-2*this.player[e(168)].drawingRectLineWidth,l=this[e(249)][e(218)]-this[e(197)].y-i-1-2*this[e(249)][e(168)][e(170)];o>h&&(o=h,this.endPoint.x=this[e(197)].x+o),a>l&&(a=l,this[e(250)].y=this[e(197)].y+a),this.$rectBox.style[e(242)]=o+"px",this.$rectBox[e(243)][e(218)]=a+"px"}handleMouseUp(t){const e=lR;if(t.stopPropagation(),this[e(240)]&&this[e(255)]){t[e(178)](),this[e(255)]=!1;const s=this.endPoint.x-this[e(197)].x>0,i=this[e(250)].y-this[e(197)].y>0,r=!s||!i;if((this[e(249)][e(168)].drawingRectEndRemoveDom||r)&&this[e(195)](),r)return;const n={startPoint:this[e(197)],endPoint:this[e(250)],width:Math[e(227)](this[e(250)].x-this[e(197)].x),height:Math[e(227)](this[e(250)].y-this[e(197)].y)},o={},a=this.player[e(174)]();if(a.width&&a[e(218)])if(this[e(249)][e(168)].aspectRatio===e(261)){const t=this[e(249)][e(176)]();let s=t.width,i=t[e(218)],r=a[e(242)],h=a[e(218)],l=s/r,c=i/h;const d=this.player[e(168)][e(241)],u=this[e(249)]._opt[e(260)];let p=0,f=0;if(d&&(l>c?(l=c,p=Math[e(217)]((s-r*l)/2)):(c=l,f=Math[e(217)]((i-h*c)/2))),u){let t=l>c?l:c;l=t,c=t}const m=h,g=r;o.startPoint={x:Math.max(0,Math[e(231)](Math[e(217)]((n.startPoint.x-p)/l),g)),y:Math[e(213)](0,Math[e(231)](Math.floor((n.startPoint.y-f)/c),m))},o[e(250)]={x:Math[e(213)](0,Math[e(231)](Math[e(217)]((n[e(250)].x-p)/l),g)),y:Math[e(213)](0,Math.min(Math.floor((n[e(250)].y-f)/c),m))},o.width=o[e(250)].x-o[e(197)].x,o.height=o.endPoint.y-o[e(197)].y}else{const t=this.player._opt[e(202)][e(259)](":")[e(235)](Number),s=this[e(249)][e(176)]();let i=s.width,r=s.height;const h=a[e(242)]/a[e(218)],l=t[0]/t[1];let c=0,d=0,u=0,p=0,f=a[e(242)],m=a[e(218)];if(h>l){c=i*(l*a[e(218)]/a[e(242)]),d=r,u=(i-c)/2}else{c=i,d=r*(a[e(242)]/l/a[e(218)]),p=(r-d)/2}o[e(197)]={x:Math[e(213)](0,Math[e(231)](Math[e(217)]((n[e(197)].x-u)/(c/a[e(242)])),f)),y:Math[e(213)](0,Math[e(231)](Math[e(217)]((n[e(197)].y-p)/(d/a.height)),m))},o[e(250)]={x:Math.max(0,Math[e(231)](Math[e(217)]((n.endPoint.x-u)/(c/a.width)),f)),y:Math.max(0,Math[e(231)](Math.floor((n[e(250)].y-p)/(d/a[e(218)])),m))},o[e(242)]=o.endPoint.x-o[e(197)].x,o[e(218)]=o.endPoint.y-o[e(197)].y}this.player[e(175)](q[e(219)],{container:n,video:o}),this._resetPoint()}}[lR(221)](){const t=lR,e=this[t(249)][t(176)](),s=this[t(249)][t(174)]();let i=e[t(242)],r=e[t(218)],n={minX:0,minY:0,maxX:i,maxY:r};if(this[t(249)]._opt[t(202)]===t(261)){const e=this[t(249)][t(168)][t(241)];let o=s[t(242)],a=s[t(218)],h=i/o,l=r/a;e&&(h>l?(n[t(228)]=Math[t(217)]((i-o*h)/2),n[t(194)]=Math[t(217)](n.minX+o*h)):(n[t(180)]=Math[t(217)]((r-a*l)/2),n[t(248)]=Math.floor(n[t(180)]+a*l)))}else{const e=this[t(249)][t(168)].aspectRatio[t(259)](":")[t(235)](Number),o=s.width/s[t(218)],a=e[0]/e[1];let h=0,l=0;if(o>a){h=i*(a*s[t(218)]/s[t(242)]),n[t(228)]=Math[t(217)]((i-h)/2),n[t(194)]=Math[t(217)](n[t(228)]+h)}else{l=r*(s[t(242)]/a/s.height),n[t(180)]=(r-l)/2,n[t(180)]=Math.floor(n[t(228)]+l)}}return n}}const pR=mR;function fR(){const t=[" and\n isFFmpegSIMD is ","lessThanCurrentTimeTimeout","decoderWorker","_removeSeekingTimestamp","_calcFps","791480xCeJGs","video"," and diff is ","playVodSeeking","useMThreading","_startFpsTimestamp","decodeLastDataForVod","_opt","_seekingTimestamp","_startfpsTime","playVodMaxGopDuration","bufferSize","_startTime","_checkStatsInterval","playVodStats","debugLog","width","calcPlayVodForwardMaxRateDecodeIFrame","use mse and video is ended","playVodFps","isEnded() check isRateMoreThanMaxRate:"," < maxDiff + 1000:","clearLessThanCurrentTimeTimeout","destroy","playVodEndedAndReplay","handlePlayVodPause","checkIsEnded","_fps","_allStatsData","isFFmpegSIMD","isPlayVodMp4UseVideoSrc and video is ended","player"," and ts is ","stats","classList","playVodForwardMaxRateDecodeIFrame","_isLessThanCurrentTime","_prevTs","totalDuration","120xxukkq","debugWarn","off","videoCurrentTime","updateDuration() success and startTime is ","emitError","getVideoCurrentTime","_off","jb-pro-container-play-vod"," < playVodMaxGopDuration "," < diff ","updateStats and calcFps is ","_isEnded"," < "," and\n useWasm is ","clearStatsInterval","_totalDuration","videoInfo","playVodRateChange","obj.time is ","135908ZpyErI"," and isBufferEnd and ts is "," and totalDuration is "," and listen start event to seek","71004OJFSDi","playVodTime","debug","_renderFps","getBufferedTime"," > this._totalDuration ","updateDuration() success and no startTime and playVodForward with rate ","uiUsePlaybackPause","mseDecoder","isRateMoreThanMaxRate","bound","listenStats","log","useWCS","jessibuca-container-play-vod","pause"," and bufferedTime is ","isPlayVodNotUseMseAndNotVideoSrc"," and\n useSIMD is ","275457BSwfJQ","_prevTime","useSIMD","_playbackTs","start","isPlaying","removeSeekingTimestamp","useWasm","calcRateMoreThanMaxRate","playVodEndedInner","playVodBufferedTime","videoCurrentTimeDiff","audio","_isEndedOnce","isEnded()","setRate","calcRateMoreThanMaxRate() and\n useWCS is ","catch","_bufferedTimestamp","startTime","playVodPause","bind","isPlayVodUseMSE","TAG_NAME","220464wFyken","playVodForward","listenCurrentPts","_rate","fps","isRateLessThanOne","setCurrentTime","time","isSeeking","startCheckStatsInterval","remove","showControl","updatePlayVodFps","_reset","isPlayVodMp4UseVideoSrc","forwardRate","can not calc fps, video fps must more than 10","height"," * ","seek()","rate"," and set _isEndedOnce to true","once","_listen","emit","setPlayingTimestamp()","setStartTime","823668fvlnGg","isPlayVodUseWASM","playVodCalcFpsError","getCurrentTime","PlayVod","updateStats","6hqqbMY","seek","_playingTimestamp","abs","isSeekingLessThanCurrentTimeForMse","playVodDuration","isEnded() diff ","isEnded"," < maxDiff "," and videoCurrentTimeDiff is 0","24FUotVZ","playVodSeekEnd","stringify","updateStats and videoCurrentTimeDiff is 0 and\n videoCurrentTime is ","updateDuration","init","resume","currentPts","timestamp ","isEnded() maxDiff:","_initForwardRate","playingTimestamp","setPlayingTimestamp","2274416DQBQuf"];return(fR=function(){return t})()}function mR(t,e){const s=fR();return(mR=function(t,e){return s[t-=302]})(t,e)}!function(t){const e=mR,s=t();for(;;)try{if(217737===parseInt(e(392))/1+parseInt(e(466))/2+parseInt(e(396))/3*(-parseInt(e(314))/4)+-parseInt(e(333))/5+-parseInt(e(304))/6*(parseInt(e(415))/7)+-parseInt(e(327))/8+parseInt(e(439))/9*(parseInt(e(372))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(fR);class gR extends h{constructor(t,e){const s=mR;super(),this.player=t,this[s(438)]=s(302),this[s(364)].$container[s(367)].add(s(380)),this._reset(),this._fps=parseInt(e[s(443)],10)||t[s(340)][s(352)],this[s(346)]=null,this[s(329)]=null,this[s(324)]=null,this.bound={updateStats:this[s(303)].bind(this),calcRateMoreThanMaxRate:this[s(423)].bind(this),handlePlayVodPause:this.handlePlayVodPause[s(436)](this),listenCurrentPts:this.listenCurrentPts[s(436)](this),listenStats:this.listenStats.bind(this)},this._listen();let i=e[s(434)]||0;null!==e.forwardRate&&1!==e[s(454)]&&(this._initForwardRate=e.forwardRate),this[s(465)](i),this[s(364)].on(q.playVodPause,this[s(406)][s(358)]);const r={fps:this[s(360)],uiUsePlaybackPause:e[s(403)],showControl:e[s(450)]};this[s(350)]=this[s(364)][s(340)][s(368)],this[s(364)].once(q[s(389)],this.bound[s(423)]),t[s(398)][s(408)](this.TAG_NAME,s(319),JSON[s(316)](r))}[pR(356)](){const t=pR;this._off(),this[t(355)](),this[t(387)](),this[t(452)](),this[t(364)].$container&&this.player.$container[t(367)][t(449)](t(410)),this[t(374)](),this.bound=null,this[t(364)].debugLog(this[t(438)],t(356))}[pR(379)](){const t=pR;this[t(364)][t(348)](this[t(438)],"_off()"),this[t(364)].off(q[t(435)],this[t(406)][t(358)]),this[t(364)][t(374)](q[t(321)],this.bound[t(441)]),this.player[t(374)](q[t(366)],this[t(406)][t(407)])}[pR(452)](){const t=pR;this[t(345)]=null,this[t(306)]=null,this[t(433)]=null,this[t(388)]=0,this._seekingTimestamp=null,this[t(369)]=!1,this._fps=null,this._calcFps=null,this[t(442)]=1,this._startfpsTime=null,this[t(338)]=null,this[t(399)]=0,this._playbackTs=0,this._prevTs=0,this[t(416)]=null,this[t(428)]=!1,this[t(384)]=!1,this[t(324)]=null}[pR(462)](){const t=pR;this.player.on(q[t(321)],this[t(406)][t(441)]),this[t(364)].on(q[t(366)],this[t(406)][t(407)])}listenCurrentPts(t){const e=pR;let s=t;(this[e(364)][e(437)]()||this[e(364)][e(453)]())&&(s=1e3*(this[e(364)][e(378)]()||0)),this[e(326)](s)}listenStats(t){const e=pR;if(this[e(364)][e(435)])return;let s=t.ts;this[e(364)].isPlayVodUseMSE()?(this[e(364)][e(420)]()&&0===t[e(426)]&&this[e(364)][e(373)](this[e(438)],e(317)+t[e(375)]+"\n and next update video currentTime"),s=1e3*t.videoCurrentTime):this[e(364)][e(453)]()&&(s=1e3*t[e(375)]);const i=this[e(370)];this[e(370)]=s,this[e(359)](i)}[pR(359)](t){const e=pR;this[e(311)](t)&&(this[e(331)](),this.player.emit(q[e(424)]))}[pR(311)](t){const e=pR;let s=!1;const i=as(700*this[e(459)],700,1e3);if(this[e(384)])return!0;if(this[e(364)][e(453)]()){if(this[e(364)].video&&this.player[e(334)].isEnded())return this[e(364)].debugLog(this.TAG_NAME,"isEnded()",e(363)),this[e(384)]=!0,!0;const t=this[e(364)]._allStatsData[e(375)],r=this[e(364)][e(361)][e(426)],n=Math[e(307)](t-this[e(388)]);return n<i&&0===r?(this.player.debugLog(this[e(438)],e(429),"isPlayVodMp4UseVideoSrc and diff is "+n+e(312)+i+e(313)),this[e(384)]=!0,!0):s}if(this[e(364)][e(437)]()&&this.player[e(334)]&&this[e(364)].video[e(311)]())return this[e(364)][e(348)](this[e(438)],"isEnded()",e(351)),this[e(384)]=!0,!0;const r=Math.abs(this[e(325)]-this._totalDuration);if(r<i){if(this[e(428)])return this[e(364)][e(348)](this.TAG_NAME,e(429),"_isEndedOnce is true and diff playingTimestamp is "+this[e(325)]+e(394)+this[e(388)]+" "+r+e(385)+i),this._isEnded=!0,!0;!this[e(428)]&&(this[e(428)]=!0,this[e(364)][e(348)](this.TAG_NAME,e(310)+r+" < maxDiff "+i+" and set _isEndedOnce to true"),this.player[e(437)]()&&this[e(364)][e(404)]&&this[e(364)].mseDecoder[e(339)]())}if(xi(s)&&t&&t===this[e(370)]){const s=Math[e(307)](this[e(388)]-this[e(433)])<=1e3,n=this[e(405)](),o=1e3*this.player[e(340)][e(343)],a=n&&r<=o,h=xi(n)&&i<r&&r<i+1e3;if(s&&(a||h)){if(this[e(428)])return this[e(364)][e(348)](this[e(438)],e(353)+n+e(393)+t+" duration is "+this._totalDuration+e(335)+r+" and maxDiff is "+i+" and playVodMaxGopDuration is "+o+" and return true"),this[e(384)]=!0,!0;!this[e(428)]&&(this[e(428)]=!0,a?this[e(364)][e(348)](this.TAG_NAME,e(310)+r+e(381)+o+e(460)):this[e(364)][e(348)](this[e(438)],e(323)+i+e(382)+r+e(354)+(i+1e3)+e(460)),this[e(364)][e(437)]()&&this[e(364)][e(404)]&&this[e(364)].mseDecoder[e(339)]())}}return s}[pR(318)](t){const e=pR;this[e(388)]=1e3*t,this[e(364)][e(463)](q[e(309)],this[e(388)]),this.startTime?(this.player[e(348)](this.TAG_NAME,"updateDuration() success and startTime is "+this[e(434)]+e(395)),this[e(364)].playVodInitSeekRemoveBackgroundLock=!0,this.player[e(461)](q[e(419)],()=>{const t=e;this[t(305)]({time:this[t(434)]}),this[t(324)]&&this[t(364)][t(461)](q[t(315)],e=>{const s=t;this[s(364)][s(348)](this[s(438)],s(376)+this.startTime+" and playVodSeekEnd and playVodForward with rate "+this[s(324)]),e===this[s(434)]&&(this.player[s(440)](this[s(324)]).catch(()=>{}),this[s(324)]=null)})})):this._initForwardRate&&(this.player[e(348)](this[e(438)],e(402)+this[e(324)]),this[e(364)][e(440)](this[e(324)])[e(432)](()=>{}),this[e(324)]=null),this[e(448)]()}[pR(411)](){this[pR(387)]()}[pR(320)](){this[pR(448)]()}[pR(303)](t={}){const e=pR;!this[e(338)]&&(this[e(338)]=os()),Ws(t.ts)&&(this[e(364)][e(303)]({fps:!0,ts:t.ts}),this[e(418)]=t.ts,!this[e(342)]&&(this._startfpsTime=t.ts),this._renderFps+=1);const s=os(),i=s-this[e(338)];if(i<1e3)return;let r=null;if(this._startfpsTime&&(r=this[e(418)]-this._startfpsTime),this[e(364)][e(413)]()&&null===this[e(332)]&&this[e(388)]>0&&this[e(433)]>0){const t=this._totalDuration,s=this[e(433)],i=Math.abs(t-s);if(i<1e3)return this[e(364)][e(373)](this[e(438)],e(383)+this[e(332)]+e(412)+s+e(394)+t+e(335)+i+" < 1000 so return and emit error"),void this[e(364)][e(377)](J[e(468)],e(455))}this[e(364)][e(463)](q[e(347)],{fps:this[e(399)],rate:this.rate,start:this[e(342)],end:this._playbackTs,timestamp:i,dataTimestamp:r,audioBufferSize:this[e(364)][e(427)]?this[e(364)][e(427)][e(344)]:0,videoBufferSize:this[e(364)].video?this.player[e(334)].bufferSize:0,bufferedTime:this[e(400)](),ts:this[e(418)]}),this[e(399)]=0,this[e(342)]=this[e(418)],this._startFpsTimestamp=s}[pR(448)](){const t=pR;this[t(387)](),this._checkStatsInterval=setInterval(this[t(406)][t(303)],1e3)}clearStatsInterval(){const t=pR;this._checkStatsInterval&&(clearInterval(this[t(346)]),this[t(346)]=null)}get[pR(371)](){return Math.round(this._totalDuration/1e3)}get[pR(434)](){return this[pR(345)]||0}[pR(465)](t){const e=pR;this[e(345)]=t,this[e(306)]=t}[pR(430)](t){const e=pR;this._rate=t,this.player[e(463)](q[e(390)],t)}setFps(t){const e=pR;this.player[e(348)](this[e(438)],"setFps()",t),this._calcFps=t,this[e(364)][e(467)]()&&this.player.decoderWorker&&this[e(364)][e(330)][e(451)](t)}get fps(){const t=pR;return this._calcFps||this[t(360)]}get[pR(459)](){return this[pR(442)]}setPlayingTimestamp(t){const e=pR;let s=t;s>this[e(388)]&&(this[e(364)].debugLog(this[e(438)],e(464),e(322)+s+e(401)+this._totalDuration),s=this._totalDuration),this[e(306)]=s;const i=this[e(469)]();(null===this[e(416)]||null!==this[e(416)]&&this[e(416)]<i)&&(this[e(364)][e(463)](q[e(397)],i),this[e(416)]=i)}get[pR(325)](){return this._playingTimestamp||0}[pR(469)](){const t=pR;return Math.round(this[t(325)]/1e3)}setBufferedTime(t){const e=pR;this._bufferedTimestamp=t,this.player[e(463)](q[e(425)],this.getBufferedTime())}[pR(400)](){const t=pR;let e=0;return this[t(433)]&&(e=parseInt(this[t(433)]/1e3,10)),e}get seekingTimestamp(){const t=pR;return null===this[t(341)]?null:1e3*this[t(341)]}[pR(447)](){return null!==this[pR(341)]}[pR(308)](){const t=pR;return this.isSeeking()&&this[t(369)]}[pR(331)](){const t=pR;this[t(341)]=null,this[t(369)]=!1}[pR(421)](){const t=pR,e=this[t(341)];this[t(331)](),this[t(416)]=null,this.player[t(463)](q[t(315)],e)}[pR(305)](t){const e=pR;let s=t[e(446)];if(this[e(447)]())this[e(364)].debugLog(this[e(438)],e(458),"isSeeking and return");else if(s>this[e(371)]&&(s=parseInt(this[e(371)],10)),s<0&&(s=0),this.player.debugLog(this[e(438)],e(458),e(391)+t[e(446)]+e(365)+s),this[e(311)]())this[e(364)][e(463)](q[e(357)],s);else if(this[e(341)]=s,this[e(364)][e(463)](q.playVodSeek,s),this[e(364)].emit(q[e(336)],s),this[e(364)][e(453)]())this[e(364)].video.setCurrentTime(s);else if(this[e(364)][e(437)]()){const t=this.player.video[e(469)]();this[e(369)]=s<t,this[e(369)]?(this[e(364)].mseDecoder.clearUpAllSourceBuffer(),this[e(355)](),this.lessThanCurrentTimeTimeout=setTimeout(()=>{const t=e;this[t(364)][t(334)][t(445)](s)},100)):this[e(364)][e(334)][e(445)](s)}}[pR(423)](t){const e=pR,s=this[e(364)][e(340)];let i=qi(t,{useWCS:s[e(409)],useWasm:s[e(422)],useSIMD:s[e(417)],isFFmpegSIMD:s[e(362)],useMThreading:s.useMThreading});this[e(364)][e(348)](this[e(438)],e(431)+this.player[e(340)][e(409)]+e(386)+this.player._opt[e(422)]+e(414)+this.player[e(340)][e(417)]+e(328)+this[e(364)][e(340)][e(362)]+" and\n useMThreading is "+this[e(364)][e(340)][e(337)]+" and\n video info is "+t[e(349)]+e(457)+t[e(456)]+" and\n video encode code is "+t.encType+" and\n calcForwardMaxRateDecodeIFrame is "+i),this[e(350)]=i}[pR(358)](t){const e=pR;t?this[e(411)]():this[e(320)]()}[pR(405)](){return this.rate>this.calcPlayVodForwardMaxRateDecodeIFrame}[pR(444)](){return this.rate<1}[pR(355)](){const t=pR;this[t(329)]&&(clearTimeout(this[t(329)]),this.lessThanCurrentTimeTimeout=null)}}var yR=AR;function AR(t,e){var s=vR();return(AR=function(t,e){return s[t-=148]})(t,e)}!function(t){for(var e=AR,s=t();;)try{if(658375===-parseInt(e(148))/1*(-parseInt(e(166))/2)+-parseInt(e(151))/3*(-parseInt(e(157))/4)+-parseInt(e(168))/5+-parseInt(e(171))/6*(-parseInt(e(160))/7)+-parseInt(e(152))/8*(parseInt(e(163))/9)+-parseInt(e(153))/10+parseInt(e(149))/11*(parseInt(e(169))/12))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(vR);var bR={expandPlus:"放大",expandMinus:"缩小",apertureFar:yR(150),apertureNear:yR(155),focusFar:yR(161),focusNear:yR(167),cruisePlay:"巡航开",cruisePause:yR(154),fogOpen:yR(159),fogClose:yR(162),wiperOpen:yR(158),wiperClose:yR(164),zoomTips:yR(165),performanceInfo:yR(170),performanceLive:yR(156),...oe};function vR(){var t=["206292gwFmBq","基本信息","3931866YLEsKY","788vbmAGQ","935LhAVyo","光圈+","86082oIIFtv","3592mHKWLQ","2294970Qamxay","巡航关","光圈-","动态信息","16NqgoYN","雨刷开","透雾开","7AKHYGV","聚焦+","透雾关","23670oWRxYp","雨刷关","电子放大","1006OEyKen","聚焦-","2794720lEhFZx"];return(vR=function(){return t})()}const SR=wR;function ER(){const t=["toString","debugLog","setRemoteDescription","1934055rPBQuN","then","getPlatform","474680pzdnHU","player","115040urxwRW","loadSource setRemoteDescription error","name","qiniu","init","msg","8295597xazhVV","_requestAbort","abortController","destroy","loadSource getWebRtcRemoteSdp response error","getWebRtcRemoteSdp response and code is ","createOffer","44xUmCSc","3681300xTNboL","body","answer","error","297935MDQSDW","TAG_NAME","553oldkVD","AbortError","response json code ","setLocalDescription","catch","getWebRtcRemoteSdp loadSource","result","sdp","713796yWsmqh","cancel","2qbePdp","loadSource rtcPeerConnection.createOffer() error","fetchPromise","code","rtcPeerConnection","parseSdp","response sdp is null","debugError"];return(ER=function(){return t})()}function wR(t,e){const s=ER();return(wR=function(t,e){return s[t-=350]})(t,e)}!function(t){const e=wR,s=t();for(;;)try{if(948903===-parseInt(e(379))/1*(-parseInt(e(365))/2)+-parseInt(e(376))/3+-parseInt(e(394))/4*(-parseInt(e(353))/5)+-parseInt(e(363))/6+-parseInt(e(355))/7*(-parseInt(e(381))/8)+-parseInt(e(387))/9+parseInt(e(395))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(ER);class TR extends IL{constructor(t){const e=wR;super(t),this[e(354)]="WebrtcForQiNiuDecoder",this[e(389)]=null,this[e(380)][e(374)](this[e(354)],e(385))}[SR(390)](){const t=SR;super[t(390)](),this.player.debugLog(this[t(354)],t(390))}loadSource(t){return new Promise((e,s)=>{const i=wR,r=this[i(369)];r[i(393)]().then(n=>{const o=i;r[o(358)](n),this[o(380)].debugLog(this[o(354)],o(360),t);let a=(h=t,l=n.sdp,xL(h,l));var h,l;this.fetchPromise=a,a[o(377)](t=>{const i=o;if(this[i(388)])return void(t[i(350)]&&t.body[i(364)]&&t[i(350)][i(364)]()[i(359)](()=>{}));this[i(367)]=null,this.abortController=null,this.player[i(374)](this.TAG_NAME,i(392)+t[i(368)]);const n=t;if(n&&Ws(n[i(368)])&&0!==n[i(368)])return this[i(380)][i(372)](this[i(354)],i(357)+n[i(368)]),s(n[i(386)]);if(n){const t=n[i(362)]||n;this[i(370)](t);const o=this.isVideoCodecSupported();if(xi(o[i(361)]))return s(o[i(352)]);r[i(375)](new RTCSessionDescription({type:i(351),sdp:t}))[i(377)](()=>{e()})[i(359)](t=>{const e=i;this[e(380)]&&this[e(380)][e(372)](this.TAG_NAME,e(382),t[e(373)](),t),s(t)})}else this[i(380)][i(372)](this[i(354)],"response sdp is null"),s(i(371))})[o(359)](t=>{const e=o;t[e(383)]!==e(356)&&null!==this[e(367)]&&(this[e(367)]=null,this[e(389)]=null,this[e(380)].debugError(this.TAG_NAME,e(391),t[e(373)](),t),s(t))})})[i(359)](t=>{const e=i;this[e(380)][e(372)](this.TAG_NAME,e(366),t[e(373)](),t),s(t)})})}[SR(378)](){return he[SR(384)]}}const IR=_R;function kR(){const t=["cancel","player","body","getWebRtcRemoteSdp loadSource","fetchPromise","8641510hUlFTx","loadSource rtcPeerConnection.createOffer() error","toString","3336113HqxwXc","4347385xqRVvK","getWebRtcRemoteSdp response and code is ","TAG_NAME","sdp","dji","loadSource setRemoteDescription error","then","catch","12nhhHSl","code","6cumVHY","msg","destroy","debugLog","result","abortController","name","WebrtcForJDIDecoder","_requestAbort","2YJYArh","getPlatform","9dGbYaL","132280CkGSbt","519368DiBGhJ","setLocalDescription","49Wytcia","loadSource getWebRtcRemoteSdp response error","47103rfoXrr","response json code ","68sEkLux","setRemoteDescription","6367816KYHNQi","AbortError","response sdp is null","rtcPeerConnection","debugError"];return(kR=function(){return t})()}function _R(t,e){const s=kR();return(_R=function(t,e){return s[t-=440]})(t,e)}!function(t){const e=_R,s=t();for(;;)try{if(478665===parseInt(e(462))/1*(parseInt(e(458))/2)+-parseInt(e(466))/3*(-parseInt(e(468))/4)+-parseInt(e(484))/5*(parseInt(e(449))/6)+parseInt(e(464))/7*(-parseInt(e(461))/8)+-parseInt(e(460))/9*(-parseInt(e(480))/10)+-parseInt(e(483))/11*(-parseInt(e(447))/12)+-parseInt(e(470))/13)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(kR);class CR extends IL{constructor(t){const e=_R;super(t),this[e(441)]=e(456),this[e(454)]=null,this.player[e(452)](this[e(441)],"init")}destroy(){const t=_R;super[t(451)](),this[t(476)][t(452)](this[t(441)],t(451))}loadSource(t){return new Promise((e,s)=>{const i=_R,r=this[i(473)];r.createOffer()[i(445)](n=>{const o=i;r[o(463)](n),this[o(476)][o(452)](this[o(441)],o(478),t);let a=(h=t,l=n[o(442)],ML(h,l));var h,l;this[o(479)]=a,a.then(t=>{const i=o;if(this[i(457)])return void(t.body&&t.body[i(475)]&&t[i(477)][i(475)]().catch(()=>{}));this[i(479)]=null,this[i(454)]=null,this.player.debugLog(this[i(441)],i(440)+t.code);const n=t;if(n&&Ws(n[i(448)])&&0!==n.code)return this[i(476)][i(474)](this[i(441)],i(467)+n[i(448)]),s(n[i(450)]);if(n){const t=n[i(442)]||n;this.parseSdp(t);const o=this.isVideoCodecSupported();if(xi(o[i(453)]))return s(o.error);r[i(469)](new RTCSessionDescription({type:"answer",sdp:t}))[i(445)](()=>{e()}).catch(t=>{const e=i;this[e(476)]&&this[e(476)][e(474)](this[e(441)],e(444),t[e(482)](),t),s(t)})}else this[i(476)][i(474)](this[i(441)],i(472)),s(i(472))})[o(446)](t=>{const e=o;t[e(455)]!==e(471)&&null!==this[e(479)]&&(this[e(479)]=null,this[e(454)]=null,this[e(476)].debugError(this[e(441)],e(465),t[e(482)](),t),s(t))})})[i(446)](t=>{const e=i;this[e(476)][e(474)](this[e(441)],e(481),t.toString(),t),s(t)})})}[IR(459)](){return he[IR(443)]}}const DR=RR;function LR(){const t=["109FtQHEg","576554JqLIdf","TAG_NAME","vr is not in vr mode","assign","toggleCompass","renderFrame","JessibucaProVr is not defined","2365772zRIZbg","player","enableSensor","catch","then","destroy","8632OEKRdh","55BnOGAw","opt","60SaaqgV","setGyroMode","1626037uKAAff","init","35016GWUpYn","isEnterVr","3NxBfOg","13Tgefus","451881WIXBoM","24Jrvcmt","exitVr","JessibucaProVr","8925924yAVEfC","debugLog","enterVr","vr is not defined","isInVr"];return(LR=function(){return t})()}function RR(t,e){const s=LR();return(RR=function(t,e){return s[t-=188]})(t,e)}!function(t){const e=RR,s=t();for(;;)try{if(502934===-parseInt(e(215))/1*(parseInt(e(195))/2)+parseInt(e(204))/3*(parseInt(e(189))/4)+parseInt(e(196))/5*(parseInt(e(202))/6)+parseInt(e(200))/7*(parseInt(e(207))/8)+parseInt(e(206))/9+-parseInt(e(198))/10*(-parseInt(e(216))/11)+parseInt(e(210))/12*(-parseInt(e(205))/13))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(LR);class PR extends h{constructor(t,e={}){const s=RR;if(super(),this[s(190)]=t,this.TAG_NAME="VrLoader",this.vr=null,this[s(197)]=Object[s(219)]({},e,{name:I,buildTime:k}),!window.JessibucaProVr)throw new Error(s(188));this.vr=new(window[s(209)])(this[s(190)],this[s(197)]),this[s(190)][s(211)](this.TAG_NAME,s(201))}destroy(){const t=RR;this.off(),this.vr&&(this.vr[t(194)](),this.vr=null),this[t(190)][t(211)](this[t(217)],t(194))}[DR(203)](){const t=DR;let e=!1;return this.vr&&(e=this.vr[t(214)]()),e}[DR(212)](t){return new Promise((e,s)=>{if(!this.vr)return s("vr is not defined");this.vr.enterVr(t),e()})}[DR(208)](){return new Promise((t,e)=>{const s=RR;if(!this.vr)return e(s(213));this.vr.exitVr(),t()})}[DR(221)](t,e){const s=DR;this.vr&&this.vr[s(221)](t,e)}lookAt(t,e){return new Promise((s,i)=>{const r=RR;return this.vr?xi(this.vr[r(214)]())?i(r(218)):(this.vr.lookAt(t,e),void s()):i("vr is not defined")})}[DR(220)](t){return new Promise((e,s)=>{const i=RR;return this.vr?xi(this.vr[i(214)]())?s(i(218)):(this.vr.toggleCompass(t),void e()):s(i(213))})}[DR(191)](){return new Promise((t,e)=>{const s=RR;return this.vr?xi(this.vr[s(214)]())?e(s(218)):void this.vr[s(191)]()[s(193)](()=>{t()})[s(192)](t=>{e(t)}):e(s(213))})}setGyroMode(t){return new Promise((e,s)=>{const i=RR;return this.vr?xi(this.vr[i(214)]())?s("vr is not in vr mode"):void this.vr[i(199)](t).then(()=>{e()}).catch(t=>{s(t)}):s(i(213))})}}const xR=MR;function MR(t,e){const s=BR();return(MR=function(t,e){return s[t-=421]})(t,e)}function BR(){const t=["catch","stats","playbackExitNextIFrameAndPlay","isUseFileProtocol","handleRender but player is destroyed or closed","setPlayFailedAndPaused",", playing is ","getWindowScreenInfo","isFmp4Demux","useOldWasm is true, so set useMSE,useWCS,useSIMD,useMThreading,useSThreading,checkFirstIFrame to false","$videoElement","16333097ALOlpR","isPlayStream","aliyunRtcDecoder","websocketOpenTimeout","removeGhostWatermark","mseDecoderUseWorker","checkLoadingTimeout loadingTimeout is ","\n useMSE is true,\n and supportMSE is ","7952FCPgXw","play() url is ","isPlaybackUseWCS","debugWarn","watermarkConfig","6957kiVvZU","drawRectangle","isWasmUseSThreading"," or window.JessibucaProImageDetector is null","emitVideSeiSyncPts","isUseWorkerDemuxAndDecode","licensePlateDetectActive","clearVisibilityHiddenTimeout","updateCurrentPts","isInPlayNextFrameStatus","isPlayVodPlayRateLessThanOne","52kHbLFF","decodeStart","getDecodeType","emitFirstStatsEvent","nakedFlowH265DemuxUseNew","updateMetaData","checkVideoSmooth false because ","getAudioEngineType","_checkLoadingTimeout","renderFrame","isUseFpsRender","decodeTimestamp","getIsStreamTsMoreThanLocal","getMseVideoBufferDelayTime","toggleExtendBtn","isPlayUseMSE","keys","JessibucaProImageDetector","pushLatestDelay","decoder-pro-f-simd-mt.js","checkLoadingTimeout ","clearBuffer","useSIMD","_destroy","isDropping","init() failed and player is destroyed","hasAudio: ","mseDecodeAudio","playbackExitNextFrameAndPlay() is in playbackNextIFrame status, please exit playbackNextIFrame first","playbackNextFrame","isWasmUseMThreading","_destroyLock","fetchError","pTs","doDestroy","use face detector, useWasm is "," and\n history FpsList is ","use wcs video render, but not support so set wcsUseVideoRender false","play() init and call resolve and next fetch stream","isRateMoreThanMaxRateDecodeIFrame","hardDecodingNotSupportAutoWasm","performance","recorder is null","loading","isPlayVodNotUseMseAndNotVideoSrc","playbackTF","isMSENotSupportAudioFormat","videoSmooth","28715FaMXBR","isAliyunRtc","isControlBarShow","dfps","delayFrameChasingPolicy","web transport","emitError","updateLoadingText","_licensePlateDetectActive","playbackForward and rate is ","videoBuffer","getPlayVodFps"," or window.JessibucaProOcclusionDetector is null","play vod reach the end","videoDecodedFrames","mpeg4","getHistoryVideoDiffList","objectDetectActive","abps","volumechange","setAudioDisabled","playInitStart","control","getVideoBufferTimeRangeList","debugUuid","mute","isMSEPlaybackRateChangePause","decoder-pro-hard.js","handleOffline","clearStatsInterval","clearWorkBuffer","operateBtns","playVodExitNextIFrameAndPlay() is in playVodNextFrame status, please exit playVodNextFrame first","calcPlaybackForwardMaxRateDecodeIFrame","handlePlayToRenderTimes","useSThreading","isMobileFullscreenChangeRotate","isScreenNowRow","exitPlayVodNextFrame","drawingRect","_isStreamEnd","isUseWASM","mediaSourceAudioNoDataTimeoutReplay","hiddenControl","pauseForControl() and videoInfo is null","playVodExitNextFrameAndPlay","JessibucaProFaceDetector","_opt","checkLoadingTimeout but player is destroyed","playVodExitNextFrameAndPlay() is in playVodNextIFrame status, please exit playVodNextIFrame first","-simd","mseUseCanvasRender","decoder","getCorrectionConfiguration","click","isCacheBeforeDecodeForFpsRender","maxFps","ghostWatermark","getPlaybackRate","isPlayVodMp4","videoCurrentTimeDiff","webrtcLowFps",", so set mseWaitVideoCanplayTimeout = loadingTimeout -1","downloadG711File","canvas","isPlayer","url"," is greater than heartTimeout ","pushTempStream","playbackPauseOrResume","getControlHeight","isPlayback and wcsDecodeAudio is true, so set wcsDecodeAudio false","isPlaybackRateSpeed","recording","getRecordingByteLength","fmp4","quality","right","_checkHeartTimeout","502xhQlut","JessibucaProLicensePlateDetector","enableWakeLock","and update _opt.hasAudio","then","getVideoCodec","2038918zZAyRv","getDemuxType","p2dfps","getPlaybackFps","auto","getPlayVodBufferedTime","objectDetect","netBuf","playbackCheckStreamEnd","enterVr","indexOf","isInWebFullscreen","disableContextmenu is true, but contextmenuBtns is not empty, so Contextmenu can not be created,please check","isXorCrypto","webTransport","decoder-pro-f-simd.js","bind","webm","checkHeartTimeout$2 but fps is not all zero","playbackForwardMaxRateDecodeIFrame","getCanvasType","decoder-pro-video-simd-only.js","_drawingRect",", currentRate is ","pauseForControl() and loadingBackground width is ","nakedFlowFps","setVolume","playbackNextIFrame() and current time is ","useOffscreen","isDecoderWorkerInitError","isInitError","getPlayingTimestamp","use simd wasm st","getControlHtmlIsShow","full","10nFjwcd","poster"," , _opt.isH265 is ","isPlaybackStreamEnd","getBarIsShow","videoBufferDelay","isCryptoAudio","decoderErrorAutoWasm","checkWebrtcLowFpsCalcType","checkWebrtcLowFpsDuration","isRecordTypeFlv","loadingBackgroundHeight","isPlayFailedAndPaused",".mpeg4","getAudioInfo","all","demuxPsUseV2","useWASM","getCurrentCpuState","mediaSourceUseCanvasRenderPlayFailedReplay","ghostWatermarkConfig","getVideoBufferRangeList","_canPlayAppleMpegurl","getFps","lookAt","checkHlsBufferedDelay","loadingTimeout","isMSECurrentMoreThanBufferedPause","streamQuality","videoSEI","isVideoPlaying","replace","wasmUseVideoRender","aiObject","playVodPauseOrResume","isResize","decoder-pro.js","mse","_mseWorkerData","isDebug","log","decoderOnlyAudio","rect","audioTimestamp","random","use image detector, useWasm is ","removeExtendDom","isHls","_tempInnerPlayBgobj","isBindVideo","mseTs","s, nextIFrameTime: ","clearControlHtml","widthOrHeightChangeReplay","getMseMineType","setControlHtml","canVideoTrackWritter","setPtzPosition","supportHls265","_latestAudioTimestamp","isLoading","innerHTML","vrSetGyroMode","updateControlSize","updateOption","useOcclusionDetector","isWasmPlayAudioUseVideoRender","_isInZoom","sendWebsocketMessage"," and useWCS is ","playbackEndedAndReplay","recordType","download","fps: ","addAiContentToCanvas","_streamQuality","useFaceDetector","use play vod","_audioTimestamp","playVodNextIFrame() is in seeking status, please wait seek complete","isIphone and set _opt.videoRenderSupportScale false","isDropSameTimestampGop","$iconWrap","isMSEVideoDecoderInitializationFailedNotSupportHevc","handleOnline","getStreamType","decoder-pro-simd-mt.js","playbackNextFrame is not support, please set isPlaybackPauseClearCache false, isCacheBeforeDecodeForFpsRender true and isUseFpsRender true","playVodExitNextIFrameAndPlay() is not in play next I frame status","getPlayToRenderTimes","isVideoInitedAndNotFirstVideoIFrame","debugLog","showTipsMessageByContent","updatePtzPosition","error","streamResponse","showTipsMessage",", supportHevcMSE is ","websocket","rate","playbackExitNextFrameAndPlay() is not in play next I frame status","_opt.qualityConfig is empty, so set operateBtns.quality false","stopRecordAndSave","isMpeg4 is true, so set _opt.useWasm true and others params false","latestDelay","isNotMute","isHistoryFpsListAllZero","mseDecoderUseWorker is true but not support so set _opt.mseDecoderUseWorker = false","visibilityChange","isSm4CryptoH265V2","isRecording","seek"," ,isIphone is ","mseWaitVideoCanplayTimeout","downloadNakedFlowFile","isAudioMute","mseDecoder","checkVideoSmooth","useImageDetector"," and isEnded, emit playVodEndedAndReplay","exitPlaybackNextFrame","videoTimestamp","max","decoder-pro-simd.js","exitPlayVodNextIFrame","$controlHtml","_historyVideoDiffList","isHlsCanVideoPlay","isEmitSEI","androidMobileFullscreenRotate","isStreamTsMoreThanLocal","playVodForward","pageVisibilityHiddenTimeout","delayTimeout","isRecordTypeMp4","isWebrtc","videoRenderType is ","playVod","videoCurrentTime","webFullscreen","isMpeg4Demux","isPlaybackOnlyDecodeIFrame","isPlayVodEnded","updateStats","togglePerformancePanel","isPlayVodSeeking","isEnterVr","exitVr","correctionConfigurationProfileIndication",", and decoderCheckFirstIFrame","getRecordingDuration","showMessageConfig","decoder-pro-old.js","isMSEDecodeAudio","demuxFlvUseV2","play is destroying"," and height is ","debugError","demuxStart","currentPts","controlHtml","playing","pauseForControl","_videoIframeIntervalTs","checkSourceBufferStore","playbackExitNextIFrameAndPlay() is not in play next I frame status","update","nakedFlowDemuxUseNew"," and","isWebrtcForDJI","Player options"," and playing is ","playVodExitNextFrameAndPlay() is not in play next frame status","getExtendBtnList","isSm4Crypto","playback","wcsDecodeAudio","_close","useSIMD is true, but not support(isSupportSimd is ","getAudioBufferListLength","contains","correctionConfigurationVersion","worker","use webrtc for M7S","isM7SDemux","qualityConfig","playToRenderTimes","aliyun rtc","hasVideo: ","isClosed","isFFmpegSIMD","isTsDemux","simdH264DecodeVideoWidthIsTooLargeReplay","playVod is seeking","_flvMetaData","_checkStatsInterval","decoderHard","_closed","openWebglAlignment","_videoTimestamp","removeWatermark","10656sIZgtx","playbackConfig","useWebCanvas","totalDuration","fullscreen","useWebGPU is true, but not support so set useWebGPU false","use WCS","lastVolume","downloadFlvFile","wasmAudioTotalMB","checkVideoSmooth false\n because fps is ","playVodSeek and is recording, stop recording","playbackNextIFrameDuration","useWasmDecode","decoderAudio","updateDynamicWatermark","isWebrtcForZLM","stream","JessibucaProObjectDetector","updateWorkConfig",", isRateMoreThanMaxRate and less than calcPlayVodForwardMaxRateDecodeIFrame ","checkHeartTimeout$2 but player is destroyed","aliyunRtc","decoder-pro-video-only.js","name","mseDecodeErrorReplay","demuxType","container width is 0, please check the container width","vrEnableSensor","downloadFmp4File","isM7sCrypto","downloadMpeg4File"," < min fix is ","stringify","webcodecsAudioNoDataTimeoutReplay","getVideoBufferListLength","isWebrtcByBrowser","h264","isFmp4","isStreamByProtocol","faceDetectActive","faceDetect","playbackNextFrame is in playbackNextIFrame status, please exit playbackNextIFrame first","latestAudioTimestamp","aliyunRtcError","streamBufferByteLength","getPlayVodCurrentTime","getType","js heap size limit is ","controlSize","webglAlignmentErrorReplay","isUseWCS","isWCSDecodeAudio","isPlayVodUseMSE","useLicensePlateDetector","browser","isWasmMp4","Player","hasControl","_opt.playFailedAndReplay is false and set others replay params false","isPlayVod","_loading","\n so set useMSE false","dts","wasmVideoTotalMB","loadingTimeoutReplay","occlusionDetectActive","webrtc","_playingStartTimestamp","_zooming","_startBpsTime","viewResizeChange","playVodSeek","player is closed, so can not play","playType","isRecordTypeWebm","use hls 265","playbackRate","toggleControlHtml","pauseAndNextPlayUseLastFrameShow"," and webFullscreen is ","map","decoder-pro-audio.js","toggleBar","zoom","startRecord","getPlaybackDemuxBufferLastTimestamp","\n and current ts list is ","location","use wasm st","playForControl","_i18n","preferredHardDecode","decoderWorkerInit","playVodConfig","dynamicWatermarkConfig","getPushLatestDelay","isMpeg4","_historyFpsList","buf","playVod is null","TAG_NAME","hlsError","_hasControl","URL","fps","resetStats","jsHeapSizeLimit","getWorkerConfig","wasmDecodeDelay","isPlayVod and wcsDecodeAudio is true, so set wcsDecodeAudio false","_playVodPause","startInner","demux","resize","checkHeartTimeout$2 and\n pause and emit delayTimeout event and\n current vbps is ","demuxBuffer","use simd wasm mt","playStart","_pauseInner()","hasVideo"," and avgFps is ","getDemuxVideoBufferedListLength","playVodNextIFrame() is in playVodNextFrame status, please exit playVodNextFrame first","getBufferListLength","removeDynamicWatermark","singleWatermark","networkDelay","getVideoPlaybackQuality","use occlusion detector, useWasm is ","openSyncAudioAndVideo","isWebrtcForOthers","getDemuxBufferLength","getEngineType","scaleType","getRenderCurrentPts","isPlaybackCacheBeforeDecodeAndUseFpsRender","init and version is","sm4CryptoKey","getVideoInfo","1473960delwZI","small","controlType","useMThreading","playVodResumeInner","isAliyunRtc is true and demuxUseWorker is true then demuxUseWorker set true->false","toggleExtendHtml","oneBufferDuration","screenfull.isEnabled is false and _opt.useWebFullScreen is false , set _opt.useWebFullScreen true","_occlusionDetectActive","set volume error, audio is null","checkVideoSmooth and videoCurrentTimeDiff is 0 so check\n videoCurrentTime is ","isDestroyed","getWebrtcPlatform","isPlaybackPauseClearCache","_lastVolume","checkSourceBufferDelay","decoder-pro-hard-not-wasm.js","hasInit","playVodNextFrame","play","releaseWakeLock","useVideoPlayAudio"," and isPlaying is ","networkDelayTimeoutReplay","getAudioBufferSize","checkFirstIFrame","isPlaybackPauseNotClearCacheAndCacheBeforeDecodeAndUseFpsRender","updateWorkerOption","emitPlaybackPrecisionForNormal","startAndResize","getVideoBufferDuration","isNakedFlow is true, so set _opt.mseDecodeAudio,_opt.wcsDecodeAudio false","remove","isRateLessThanOne","zooming","left","_playing","setBufferedTime","_flvMetaDataFps","supportLockScreenPlayAudio","isEnded","isVideo4k","demuxUseWorker","demuxBufferDelay","_tempTsList","playVodNextIFrameDuration","demuxLastBufferTimestamp","addMemoryLog","use aliyun rtc","playVodNextIFrame() and current time is ","bound","assign","useCanvasRender","JessibucaProOcclusionDetector","_isMute","isDemuxInWorker","useWebCanvas is true, but not support so set useWebCanvas false","png","playbackExitNextFrameAndPlay","isMSEAudioDecoderError","visibilityHiddenTimeout","wasmPlayAudioUseVideoRender","_imageDetectActive","imageDetectActive","length","isStreamWebTransport","once","$extendDom","checkHeartTimeout$2 playbackPause is ","use simd wasm","videoRenderType","_lastestVisibilityChangeTimestamp","getExtendHtmlIsShow","screenfull.isEnabled is true and _opt.useWebFullScreen is true , set _opt.useWebFullScreen false","_times","simd","isPlayback","vbpsIsZero","loadingBackground","isWebrtcH264","isPlaybackH24","playVodPause","screenshot","mseCorrectTimeDuration","_visibility","isWCSPlayAudioUseVideoRender","use webrtc for DJI","ms, nextIFrameTime: ","getDecodePlaybackRate","isWebrtc is true and demuxUseWorker is true then demuxUseWorker set true->false","webrtcUseCanvasRender","getMimeType","avgFps is ","videoSEISyncPtsDiff","checkVideoSmooth false because videoCurrentTimeDiff is ","getLastBufferVideoTimestamp","getI18n","flvMetaData","useOldWasm","mseAutoCleanupMinBackwardDuration"," or isDingDingInAndroid ","clearCheckLoadingTimeout"," and\n current visibility is ","checkIsInRender","playVodPauseInner","warn","decoderCheckFirstIFrame","getExtendBtnActive","cancelRecord","_checkVisibleHiddenTimeout","useWebFullScreen","isUseMSE","networkDisconnectReplay","getBufferedTime","mediaSourceTsIsMaxDiffReplay","checkLoadingTimeout","pressureObserverCpu","_close()","_tempWorkerStats","isPlaybackUseWASM","isFirefox is true, so set _opt.mseDecodeAudio false","playbackPause","bufferList","use webrtc for QiNiu","syncAudioAndVideo","framerate","isNakedFlow","updateStreamEndInner","showBandwidth","join","wcsUseVideoRender is true, but not support so set wcsUseVideoRender false","decoderHardNotWasm","getDemuxAudioBufferedListLength","isMobileInFullscreen","playForControl() is playback and is ended emit replay","getOption","setCurrentTime","isOldHls","record"," and webrtcLowFps is ","streamBuffer","handleRender","checkWebrtcLowFpsDuration ","resetInit","useMThreading is true, but not support so set useMThreading false","timeout","isDestroyedOrClosed","getDecodeDelay","defaultStreamQuality","init","isPaused","isMseVideoStateInited","streamStart","useWasm","checkFirstIFrame is true, so set useMSE,useWCS to false","wasmSimdFirstFrameDecodeDelayTimeout","vbps","_faceDetectActive","decoder-pro-video-f-simd-only.js","isPlayVodMp4UseVideoSrc","toFixed","decoderOld","bottom","useMSE is true and useWCS is true then useWCS set true->false","height","getTotalDuration","MetaDataCreator","video","pushTempG711Data","getVideoBufferTimeRange","forEach"," or window.JessibucaProLicensePlateDetector is null","setRate","updateWatermark","visibility","getExtendDom","mseAutoCleanupMaxBackwardDuration","decoderWorker","getControlHtml","getStreamFps","stopLocalCalculateTime","simdDecodeErrorReplay","isEnabled","useVideoRender","_destroyed","playbackNextIFrame is in playbackNextFrame status, please exit playbackNextFrame first","isInPlayNextIFrameStatus","extendOperateBtns","loaded","toggleCompass","isWebrtcForSRS","isFlvDemux","webcodecsAudioInitTimeoutReplay","hlsDecoder","isPlaybackSimple","pts","playVodEndedAndReplay","disableContextmenu","width","$iconContainer","toggleControlExtendBtn","_allStatsData",", supportHevcWCS is ","is stream use webTransport is true and demuxUseWorker is true then demuxUseWorker set true->false","playVodNextIFrame","getPlayVodDuration"," and\n current fps is ","reduce","aiImageDetectActive","emitTsPrivateData","renderedVideoFrames","player","toggleControlBar","mediaSourceAudioInitTimeoutReplay","clearVisibilityHiddenTimeout()","downloadMemoryLog","workerStats","playbackResumeInner","setRotate","webcodecsDecoder","showControl","close","mp4Decoder","isWebrtcForM7S","flvDemuxBufferSizeTooLarge","streamSuccess","server","showPlayBtn","getPlayVodRate","top","isRateMoreThanMaxRate","now","isUseFileProtocol so set demuxUseWorker, mainThreadFetchUseWorker, useMSE, useWCS, useSIMD, useWASM, decoderErrorAutoWasm to false","use wasm","getMetaData","isAudioNotMute","isDestroying","isPlaybackUseMSE","isUseHls265","isPlayVodUseWCS","use wasm video render, but not support so set wasmUseVideoRender false","playVodInitSeekRemoveBackgroundLock","heartTimeout","recorder","keepScreenOn","getBoundingClientRect","pause","isWebrtcH265","createElement","fullscreenInner","isFullResize","useWCS","use webrtc for SRS","isUseVideoPlay","isOldHls or isWebrtcH264 or isAliyunRtc is true, so set some params false and set _opt.recordType = webm","aiOcclusion","shift","wasmDecodeErrorReplay","getDemuxBufferedListLength","playVodExitNextIFrameAndPlay","isCheckStreamEnd","destroy","reason","mseCorrectAudioTimeDuration","resumeAudioAfterPause","audio","events","_serverInfo","decoder-pro-audio-only.js","push","useCanvasRender is true and useVideoPlayAudio() return true, so set wcsDecodeAudio false","getInputByteLength","$container","autoUseSystemFullScreen","_stats","useObjectDetector","getVideoCurrentTime","streamEndReplay","isEmitTsPrivateData","destroy end","use playback","pauseForControl() and loadingBackground is null","calcPlayVodForwardMaxRateDecodeIFrame","playVodForward and rate is ","startVisibilityHiddenTimeout","getRenderType","enable","clearView","isInPlayNextFrame","isOldHlsUseVideoSrc","controlAutoHide","correctionConfigurationLevelIndication","_objectDetectActive","playForControl() and pauseAndNextPlayUseLastFrameShow is ","wcs","use hls","getStreamBufferByteLength","setExtendHtml","vr is not defined","isDecodeFirstIIframe","isPlaybackCacheBeforeDecodeForFpsRender","hideTipsMessage","getToTalByteLength","reload",", so set checkWebrtcLowFpsDuration = heartTimeout","isPlayVodMp4UseVideoSrc is true, so set useWasm false, useWCS false, useMSE false and recordType = webm","checkHeartTimeout$2","toggleVrCompass","isH265","7177140akxyMa","_seiList","hls","getPendingSegmentsLength","mseVideoBufferDelayTime","emit","getCurrentVideoAndAudio","handlePlayToRenderTimes but player is closed or destroyed","initLoadingBackground","result","playbackNextIFrame","playVodPause false and isEnded, emit playVodEndedAndReplay","videoStart","isWebrtcForQiNiu","start","isPlayBackPlayRateLessThanOne","audioDemuxBufferDelay","webrtc is low fps","wcsUseVideoRender","hasAudio","clearExtendHtml","flvDemuxBufferSizeTooLargeReplay","addContentToCanvas","getPlayType","playVodRate","forceNoOffscreen","isScreenNowColumn","use worker MSE","volume","_startTimestamp","use webrtc h265","_tempStreamList","use webrtc for Others","calcForwardMaxRateDecodeIFrame","isAudioPlaybackRateSpeed","content","aiFace","isWebrtcNotH265","videoIframeIntervalTs","checkStatsInterval","playTimestamp","removeControl","getMaxDelayTs","playVodSeek ts is ","decoder-pro-mt.js","isAudioUseAudioContext","_hasLoaded","autoCalcFps","_playbackPause","screen","useMSE","filter","jb-pro-fullscreen-web","use fmp4","isInPlayNextIFrame","_tempG711DataList","playbackForward","href","showRateBtn","isFlv","debug","dynamicWatermark","isPlayVodUseWASM","flv","contextmenuBtns","isMseDecoderUseWorker","decoderOnlyVideo","checkIsFullscreenByInit","isSeeking","checkHeartTimeout$2 but fps is "];return(BR=function(){return t})()}!function(t){const e=MR,s=t();for(;;)try{if(956429===parseInt(e(802))/1+-parseInt(e(1344))/2*(-parseInt(e(1206))/3)+-parseInt(e(1217))/4*(-parseInt(e(1265))/5)+parseInt(e(1112))/6+parseInt(e(426))/7+parseInt(e(1201))/8*(-parseInt(e(662))/9)+parseInt(e(461))/10*(-parseInt(e(1193))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(BR);class FR extends h{constructor(t,e={}){const s=MR;super(),this[s(1312)]={},this.TAG_NAME=s(719),this[s(1075)]=t;const i=Li();this[s(1312)]=Object.assign({},i,e),this[s(1312)][s(612)]=Object[s(854)]({},O,this[s(1312)][s(612)]),this[s(1172)]=new ue(this),this[s(552)](this[s(763)],s(799),fs+":"+ps),this[s(1312)].forceNoOffscreen=!0,this[s(1312)][s(782)]=!0,this._canPlayAppleMpegurl=!1,this[s(1312)][s(1185)]&&(this.debugLog(this[s(763)],s(1035)),this[s(1312)][s(845)]=!1,this._opt.mainThreadFetchUseWorker=!1,this[s(1312)][s(1162)]=!0,this[s(1312)][s(1054)]=!1,this[s(1312)][s(1239)]=!1,this[s(1312)][s(478)]=!1,this[s(1312)][s(468)]=!1),xi(this[s(1312)][s(828)])&&(this[s(552)](this[s(763)],s(957)),this[s(1312)].useMSE=!1,this[s(1312)][s(1054)]=!1),this[s(1312)][s(901)]&&(this[s(552)](this[s(763)],s(1191)),this[s(1312)][s(1162)]=!1,this[s(1312)].useWCS=!1,this._opt[s(1239)]=!1,this[s(1312)].useMThreading=!1,this._opt[s(1300)]=!1,this[s(1312)][s(828)]=!1),(ws()||Es())&&(this[s(483)]=fi(),this[s(552)](this[s(763)],"isIOS or isSafari and canPlayAppleMpegurl",this[s(483)]));const r=ai()&&xi((()=>{const t=es,e=window.navigator[t(601)];return/wxwork/i[t(527)](e)})()),n=hi();if((r||n)&&this[s(1312)][s(590)]&&(this[s(552)](this[s(763)],"isWeiChatInAndroid "+r+s(903)+n+" and androidMobileFullscreenRotate is true and set androidMobileFullscreenRotate false"),this._opt.androidMobileFullscreenRotate=!1),this[s(1312)][s(1076)]&&(Pi(Ae.isEnabled)&&Pi(this[s(1312)][s(913)])&&(this[s(552)](this[s(763)],s(876)),this._opt.useWebFullScreen=!1),xi(Ae[s(985)])&&xi(this[s(1312)].useWebFullScreen)&&(this[s(552)](this[s(763)],s(810)),this._opt.useWebFullScreen=!0)),Oi()&&(this[s(552)](this.TAG_NAME,s(541)),this._opt.videoRenderSupportScale=!1),xi(this._opt.playFailedAndReplay)&&(this.debugLog(this[s(763)],s(721)),this[s(1312)][s(712)]=!1,this._opt.webglContextLostErrorReplay=!1,this._opt.autoWasm=!1,this[s(1312)][s(687)]=!1,this[s(1312)][s(917)]=!1,this[s(1312)].wcsDecodeErrorReplay=!1,this[s(1312)][s(1060)]=!1,this._opt[s(984)]=!1,this[s(1312)].videoElementPlayingFailedReplay=!1,this[s(1312)][s(826)]=!1,this[s(1312)][s(514)]=!1,this._opt[s(653)]=!1,this[s(1312)][s(480)]=!1,this._opt.heartTimeoutReplay=!1,this._opt[s(727)]=!1,this[s(1312)].websocket1006ErrorReplay=!1,this._opt.streamErrorReplay=!1,this[s(1312)][s(1080)]=!1,this[s(1312)].mseWaitVideoCanplayAutoWasm=!1,this._opt.mediaSourceAudioG711NotSupportReplay=!1,this[s(1312)][s(1257)]=!1,this[s(1312)][s(1016)]=!1,this[s(1312)][s(1307)]=!1,this._opt[s(696)]=!1,this[s(1312)][s(995)]=!1,this[s(1312)][s(1133)]=!1,this[s(1312)][s(915)]=!1),this[s(1312)][s(1308)]&&(this.debugLog(this[s(763)],"_opt.hiddenControl is true and set others show btn to false"),Object.keys(this[s(1312)][s(1296)])[s(973)](t=>{const e=s;this[e(1312)][e(1296)][t]&&-1===(""+t)[e(436)]("Fn")&&(this[e(1312)][e(1296)][t]=!1)}),this[s(1312)].showBandwidth=!1,this[s(1312)][s(990)]=[],this[s(1312)][s(621)]="",this[s(879)]()?(this._opt[s(663)].showControl=!1,this._opt.playbackConfig[s(1170)]=!1):this[s(722)]()&&(this._opt[s(756)][s(1023)]=!1,this[s(1312)].playVodConfig[s(1170)]=!1)),this._opt[s(754)]&&(this._opt[s(1162)]=!0,this[s(1312)][s(1054)]=!0,this[s(1312)].decoderErrorAutoWasm=!1,this[s(1312)][s(1244)]=!0,this[s(1312)][s(637)]=!0,this[s(1312)][s(1198)]=!0),Xi()&&(this._opt[s(1205)]={image:{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAS4AAABgCAYAAACjZZ/rAAAK4mlDQ1BJQ0MgUHJvZmlsZQAASImVlwdUU1kagO976SEhkIQISAm9SW8BpIQeivQqKiEJJJQQE4KCDZXBERwVRESwDOCoiIKjIyBjQSxYUWzYB2RQUNbBgg2VfcASZmbP7p7937nvfufPf/9yz705/wOAHMKVSDJhFQCyxDnSyABvZnxCIhP3DOAAA9CBA7Dm8mQSdnh4CEBkev6rvL8LoIn5luWEr3///b8KlS+Q8QCAkhBO4ct4WQi3I2OEJ5HmAIA6jOgNluRIJvg2wnQpkiDCgxOcNsVfJjhlktEqkzbRkT4IGwKAJ3G50jQASDaInpnLS0P8kMIRthHzRWKECxD24Am5fISRuGBOVlb2BA8jbIrYSwAg0xFmpfzJZ9pf/Kco/HO5aQqeqmtS8L4imSSTm/d/bs3/lqxM+XQMY2SQhNLASGRWR/bvXkZ2sILFKfPCplnEn7SfZKE8MGaaeTKfxGnmc32DFWsz54VMc6rIn6Pwk8OJnmaBzC9qmqXZkYpYqVIf9jRzpTNx5RkxCr1QwFH4zxdGx01zrih23jTLMqKCZ2x8FHqpPFKRv0Ac4D0T119Re5bsT/WKOIq1OcLoQEXt3Jn8BWL2jE9ZvCI3vsDXb8YmRmEvyfFWxJJkhivsBZkBCr0sN0qxNgc5nDNrwxV7mM4NCp9m4Av8QAjyMEEMsAPOwBawQAQIzREszZkoxidbkicVpQlzmGzkxgmYHDHPag7TzsbODoCJ+zt1JN5GTt5LiHFqRpe9BznK75E7UzqjSykHoKUICf1gRme4CwBKIQDNHTy5NHdKh554YQARUJB/Bg2gAwyAKbBE8nMCbsALyTgIhIFokAAWAh4QgiwgBUvAcrAaFIESsBlsBVVgN6gD+8EhcAS0gBPgDLgAroAb4A54CHrBAHgJRsB7MAZBEA4iQzRIA9KFjCALyA5iQR6QHxQCRUIJUDKUBokhObQcWguVQGVQFVQD1UM/Q8ehM9AlqBu6D/VBQ9Ab6DOMgkkwHdaGjWFrmAWz4WA4Gl4Ap8GL4Xy4EN4IV8K18EG4GT4DX4HvwL3wS3gUBVBKKAZKD2WJYqF8UGGoRFQqSopaiSpGVaBqUY2oNlQn6haqFzWM+oTGomloJtoS7YYORMegeejF6JXoDegq9H50M/oc+ha6Dz2C/oYhY7QwFhhXDAcTj0nDLMEUYSowezHHMOcxdzADmPdYLJaBNcE6YwOxCdh07DLsBuxObBO2HduN7ceO4nA4DZwFzh0XhuPicnBFuO24g7jTuJu4AdxHvBJeF2+H98cn4sX4NfgK/AH8KfxN/HP8GEGFYERwJYQR+IQ8wibCHkIb4TphgDBGVCWaEN2J0cR04mpiJbGReJ74iPhWSUlJX8lFKUJJpFSgVKl0WOmiUp/SJxKVZE7yISWR5KSNpH2kdtJ90lsymWxM9iInknPIG8n15LPkJ+SPyjRlK2WOMl95lXK1crPyTeVXFALFiMKmLKTkUyooRynXKcMqBBVjFR8VrspKlWqV4yo9KqOqNFVb1TDVLNUNqgdUL6kOUnFUY6oflU8tpNZRz1L7aSiaAc2HxqOtpe2hnacN0LF0EzqHnk4voR+id9FH1KhqDmqxakvVqtVOqvUyUAxjBoeRydjEOMK4y/g8S3sWe5Zg1vpZjbNuzvqgPlvdS12gXqzepH5H/bMGU8NPI0OjVKNF47EmWtNcM0JzieYuzfOaw7Pps91m82YXzz4y+4EWrGWuFam1TKtO66rWqLaOdoC2RHu79lntYR2GjpdOuk65zimdIV2aroeuSLdc97TuC6Yak83MZFYyzzFH9LT0AvXkejV6XXpj+ib6Mfpr9Jv0HxsQDVgGqQblBh0GI4a6hqGGyw0bDB8YEYxYRkKjbUadRh+MTYzjjNcZtxgPmqibcEzyTRpMHpmSTT1NF5vWmt42w5qxzDLMdprdMIfNHc2F5tXm1y1gCycLkcVOi+45mDkuc8Rzauf0WJIs2Za5lg2WfVYMqxCrNVYtVq+sDa0TrUutO62/2TjaZNrssXloS7UNsl1j22b7xs7cjmdXbXfbnmzvb7/KvtX+tYOFg8Bhl8M9R5pjqOM6xw7Hr07OTlKnRqchZ0PnZOcdzj0sOiuctYF10QXj4u2yyuWEyydXJ9cc1yOuf7hZumW4HXAbnGsyVzB3z9x+d313rnuNe68H0yPZ40ePXk89T65nredTLwMvvtder+dsM3Y6+yD7lbeNt9T7mPcHH1efFT7tvijfAN9i3y4/ql+MX5XfE399/zT/Bv+RAMeAZQHtgZjA4MDSwB6ONofHqeeMBDkHrQg6F0wKjgquCn4aYh4iDWkLhUODQreEPppnNE88ryUMhHHCtoQ9DjcJXxz+awQ2IjyiOuJZpG3k8sjOKFrUoqgDUe+jvaM3RT+MMY2Rx3TEUmKTYutjP8T5xpXF9cZbx6+Iv5KgmSBKaE3EJcYm7k0cne83f+v8gSTHpKKkuwtMFixdcGmh5sLMhScXURZxFx1NxiTHJR9I/sIN49ZyR1M4KTtSRng+vG28l3wvfjl/SOAuKBM8T3VPLUsdTHNP25I2JPQUVgiHRT6iKtHr9MD03ekfMsIy9mWMZ8ZlNmXhs5Kzjoup4gzxuWyd7KXZ3RILSZGkd7Hr4q2LR6TB0r0ySLZA1ppDRxqlq3JT+XfyvlyP3Orcj0tilxxdqrpUvPRqnnne+rzn+f75Py1DL+Mt61iut3z18r4V7BU1K6GVKSs7VhmsKlw1UBBQsH81cXXG6mtrbNaUrXm3Nm5tW6F2YUFh/3cB3zUUKRdJi3rWua3b/T36e9H3Xevt129f/62YX3y5xKakouTLBt6Gyz/Y/lD5w/jG1I1dm5w27dqM3SzefLfUs3R/mWpZfln/ltAtzeXM8uLyd1sXbb1U4VCxextxm3xbb2VIZet2w+2bt3+pElbdqfaubtqhtWP9jg87+Ttv7vLa1bhbe3fJ7s8/in68VxNQ01xrXFtRh63LrXu2J3ZP50+sn+r3au4t2ft1n3hf7/7I/efqnevrD2gd2NQAN8gbhg4mHbxxyPdQa6NlY00To6nkMDgsP/zi5+Sf7x4JPtJxlHW08RejX3Ycox0rboaa85pHWoQtva0Jrd3Hg453tLm1HfvV6td9J/ROVJ9UO7npFPFU4anx0/mnR9sl7cNn0s70dyzqeHg2/uztcxHnus4Hn794wf/C2U525+mL7hdPXHK9dPwy63LLFacrzVcdrx675njtWJdTV/N15+utN1xutHXP7T510/PmmVu+ty7c5ty+cmfene67MXfv9ST19N7j3xu8n3n/9YPcB2MPCx5hHhU/Vnlc8UTrSe1vZr819Tr1nuzz7bv6NOrpw35e/8vfZb9/GSh8Rn5W8Vz3ef2g3eCJIf+hGy/mvxh4KXk5Nlz0D9V/7Hhl+uqXP7z+uDoSPzLwWvp6/M2Gtxpv971zeNcxGj765H3W+7EPxR81Pu7/xPrU+Tnu8/OxJV9wXyq/mn1t+xb87dF41vi4hCvlTrYCKGTAqakAvNmH9McJANBuAECcP9VfTwo09U0wSeA/8VQPPilOANT1ABC9DICQawBsr0JaWsQ/BfkuCKcgejcA29srxr9ElmpvN+WL5Im0Jo/Hx9+aAoArBeBr6fj4WN34+Nc6JNmHALTnTfX1E6JyEIAacxtH+5D7VPMC8DeZ6vn/VOPfZzCRgQP4+/xPeFgcU9phDh8AAABsZVhJZk1NACoAAAAIAAQBGgAFAAAAAQAAAD4BGwAFAAAAAQAAAEYBKAADAAAAAQACAACHaQAEAAAAAQAAAE4AAAAAAAAAkAAAAAEAAACQAAAAAQACoAIABAAAAAEAAAEuoAMABAAAAAEAAABgAAAAADApncsAAAAJcEhZcwAAFiUAABYlAUlSJPAAAB1BSURBVHgB7V0HeBTVFj6b3fRCAgSQ3qSKIuoDRESx8OzloaIIiqhYUIEHiIJIU6QpVkRRwMaTp4INBBsoRZQiIFhACL1DQtpusuWdf8IsM7Ozu0nYDQzvnO/bzMyd2+a/N/+ce+65d2w+FhIRBAQBQcBCCMRYqK5SVUFAEBAEFASEuKQjCAKCgOUQEOKyXJNJhQUBQUCIS/qAICAIWA4BIS7LNZlUWBAQBIS4pA8IAoKA5RAQ4rJck0mFBQFBQIhL+oAgIAhYDgEhLss1mVRYEBAEhLikDwgCgoDlEBDislyTSYUFAUFAiEv6gCAgCFgOASEuyzWZVFgQEASEuKQPCAKCgOUQEOKyXJNJhQUBQUCIS/qAICAIWA4BIS7LNZlUWBAQBIS4pA8IAoKA5RAQ4rJck0mFBQFBQIhL+oAgIAhYDgEhLss1mVRYEBAEhLikDwgCgoDlEBDislyTSYUFAUFAiEv6gCAgCFgOASEuyzWZVFgQEASEuKQPCAKCgOUQEOKyXJNJhQUBQcBxqkDgK8gmT+5+Ik8RuTYvJtefC6l430YiO9fQxj+mWHvluhTX4GJKaNKFYhLSKSaRf8nV+L7w76nSjlIPQaAiELD5WCqioGBlFGetJOfGb8nNJFW07RciX3EJUamEpR7BTfgdIzGcO6o1pbja7Siu1gUU37BLsCIkXBAQBE4zBE4qcR2adDV5cnYxVxWUkJKWnFTCUo/ae+r5saMtLoHsabUordMzFFvjvNOsieRxBAFBwIhAhROXz5VPBd+/SfmLppHP42LC8lGMzcOjPS/5mIhsdi+H8bmdL2LwYyUsxkY+W2yJtqXRuBQNjO9rNbHElt0piX+O9DONzyrX/0cIbNuxm5yuImrcoA7Z7Xj7iZxOCFQocRVvX0f5C14h18bvFdtVrLeQSctNNlsx2RwgK4bWwSNXPvrY+uaz8zkfvUxiIC6fL5a8nqQSolIJSz1qCM2eXo/SLhxJcTU7nE5tJc9SCgQKCp3Ub9hztHzlWiV2g7q16OWxQ6le7TN0qQ8dyaZNW7bpwtIrpVGzxg10YXJxaiJQYcTlWruQjr4/mLxF+WRnO1a8O5e1K59CVipBBSMukBgnUjQyctjI40xnEovTE5iGuFRNLLXdcEpqdicnxk1ryr4Dh2jjn3/rKp+YGE/tzjtHFyYXJQhMmjKTZvxnrg6O885pSTNeGqMLm//tEho8apIu7KK2bWjK+Kd0YXJxaiIASoi6OFfNY9J6nMhdSHFuF8V62KYFzapc4iN78mHyulOYBJM5h+CklLvqObaf5VByy/uZ5JjoLCi/rPmNnnhmsq7mdWrWoHmzpujC5KIEgdXreCbaIGs3/MEvOh9r9sH7iiGJXJ7iCGCgFVVxrf2ajr43hMhVQPGF+RTHx0iILSGPbMk5nFUIAmTXivyNb5Nrz5JIFCl5WACB2mdUD6hlzerVhLQCULF2QFSJy5t7iPK/eZt8RYUU73KSw10UHi28FRPSKCa1JtmrNKH4s3tRUscxFN+sO9krNWK/rZqsrSUq+djinGRLyg2Zp68ol7IX9yFPwb6Q8eTm6YHAQ/fcThlsq1IlNtZBg/r2Ui/leJogENWhYt6ciVS8eSVrWYUUW+xSDO6hcLMlVaa49veQo3FnctRtx1FNVHufh1xbPqaiXQvIuX022RLz2XDP1nwnho3B5ch3d1LGJdPInlIveCS5Y3kEYISfM/NFgg3LxbOKl3S4gBrVr2P555IH0CMQNeJy78uiwmUfM2k5FW1L8YDXl627sjfqRAk3jCM7O5WGFCap+Ea3Uly9aym+8W2Us+QORevyFUELC65AevK2k2vvckpqLMQVEt/T4GaVjHS6s+u1p8GTyCMEQyD4f3qwFKUI97F2dWRsV7J5veQoYk/4MGKvfS4l3zc3PGlp8rE5ktjd4UpKa/8G2eIqkS0t21RB8yfxeSl39Qj2HSv0B8mJICAIWBOBqGhczhWfk4+N8Ha3mxzF7pBDxNhzb6aEnm+WG734OjdTWoydcpb3YNsX29A8IWYPeZiZt34SpbYeVu7yrJgwNy+fdu7ZR3v2HqD8wkKqnlmFzqieSbVqVGMf3/K/u5xOF/35dxYdPpJD2UdzKSU5iapkVKKGPDRLT0stF1TRyLNcFTmWyOv10a69+2jrtl38fIlUu2Z1yqxS+ZQ29hcVF9PuPftp74GDtO/AYUpMiKeqVTKobq0zqGrl9HLDgZnZv7N2cL6H6Eh2DhtybFSZ27ta1crKcLwiZ20jTlw+1mzcO34nn7uY7EXukCDFZDaiuC7sJmFmywqZUn8zvtYNlNZ2KuUsGsTEpb9nvCrY9M7/BXGhky395Vea9cmXtGTFasI/oFHQ4bped6Xyy+SOXVpZ+vMaev/jL+nn1evIZaJRx/BKh3NaNqV/XXMFXdflUiZHE1ulobBI5Tn70wU04bXputxv/GdnGtqfXWLKIAcPZ9Pz7BO2cPEyxVamTVqtahXqeet1Cm7JSSUTRdr76vnAERNp8fKV6qVyHDnoIbr68ot1YcaLT7/6nsa8MFUXfPnF7Wjs0H66MOPF739toY++WEhffv0D5RcEjixALGiXa6/sRF2vvaLUKwqwCmHa+5/QDz+tVF5SxnJxDUK8pMM/6L4eXakmvxSjLREnLu/BXeRa841S74RCNsiHWG1hb345xVSPzNIcR/q55Khcm9x7DoXBzEcuNuzH1zp9F2VDw8I/zTImrlCy/+Bhem36f2j6rLk0dthjdFlHTIgEF/wzPDFmMn2/9OfgkfgOSHLN+j+U3wdz5tGLY4ZQjWpVTdNEOk+3x03Q2rQCDaQsMu+bH2j081MpL9/cdWf/wUM08bUZCnm/OWkE1avDM90mgnKNdXF7wrxZOR83j1SM6YpMXhBqkR7OE/V576Mv1CDTI15mv/72h/L7+POv6ZknH6UzGwa3+SL+5Knv0szZnxHKCCUg+o8+X0hffL2YBjxwF91+01Whop/wvfKPE4IU7XPmk+fwbnavCnzDG5PEXTvUGFTua0dqM3LUaFmq9M6d80oVz4qRdu87QN0ffDwsaWmfrdDppP5PjVcITBuuPcc/0oODR4UlLW0anMPrv9djwwgd2yjRyNNYRlmvUd+nnnslKGlp89vDWPfo+wRt3rpdG1yh52i7ewc8HZa0jJX6fdMWuvvRYbRl207jLf/10GdfordnzQlLWv4EfII2fXbyGzRn3rfa4IifR5y4irPWK5W0u0MztK1SDbIlpET0gRJq3liq/HxerhsPaU83gaYzZPTztHX7roBHgy0Lw4TrrrzEVJVX3q5vvENmnufIDENDaFFGObdVM+rT8xYa9XhfuvWGLooNyBhn5+59/OZ+xxgclTwDCilDAJZXDXh6Amk1NIfDTkmJCUFzOZJ9lIaPe0XxzA8aKYo3oGmt/HWDaQkYsrVt04qan9nQ9BmO5ubRg4NGBWh3yOyr75bQ5wsXmeabkZ5Gl/KwsGO786iWicMvEo1hjRW2z2hJxIeKzqVzlLrGeEITQ8Jdr0f8meKqdipVnl7nAfK6DvFmhNEfi5eqQhGK9P7HX5iSC1T3rtddQakpx33dtu3cw8O+F2j975v8pYP4ho19mT6ZPpkS2KCrlZkffqq9VM773d+Dene/2R9+09WXKeewVz02dKzO/oV/gn59euqMw9HI01+ZcpxoF11f0am9Yq9p2qi+MoFx4NAR+viLr9nW83GAzQsYQsO4+ZrLy1Fq+ZMAZ9j0jAIj/MjBD9P5rY+PQGCLfO+/n9Or02dRMU+YqQINfdac+dTrdv1Lf8qMD9Uo/iPyGzHwId3QGC+8+Uxyw8a+pMsX5D/7swX0wF23+tNH8iTiGlfR5jVK/Xj1dsh62ng300iLLfa4x3SovD1528hbwMPZ00jcrOFOfWd2wBPdc/tNSqfUkhYiwVHzpWefVGYXtYl27N5L3/64QhtEsIUdyTmqC8Nb9+5uN+jC1IsO/ziXut10tXqpHEGK6zb86Q+LRp7+zE/wpHPHtvT8qMGKpqLOumLyAv+ETw14wDR3aKQVLW+xwdwo8XGxSt21pIU4CMdL5ul/P2hMEjDMhA3POITETPSkEYN0pIWMYPC/+rKOdH+PWwLyXbP+94CwSAVEXOMiNo7C2dQTbg8kdmE4WQJty+M6gh1zThv5iWf4co7m6Z4HuyL069NDF6a9wEzQ+OEDqMfDT2iDlWHCNVccn/mCsd8oCfHxIWelHul9R4ATaFrqcdNANPI01rE81yD0Z554NGjSG/55KWu1vyvalzbSX+wWsnf/waCTENq4kTiHzXDVug0BWQ3u25uaNq4fEK4G3HBVZ8KEiXbHERDVLnaXUYd9aSkpitatpsERbg/4BRO8rF59e5bu9q69+3XXkbyI2v+u1xFGmeMF0CKRQ2DBd0sDMmt//jlh/Y3ObsHrQfltrHVrWPrLGmU4FB9f4hPXoG5tZZipJRsYpqfOnE19ggwFkDbYTCIqGo08AwAoR0D/B3oq/mihkg55pDfNnf9dgNH6x59W0S3XV8xs9XesFUOL1QrWaMLOGE7688sMu45oRTt8hJkg1GyjNp16Dtcao+Tlmc/KGuOV5zpqxOUL49joO/A3UbVG5amzpDFBQGufUW9XYY0KQ7JwUomdRbXx0In38VsYthII/LBghP9h+SpdVq/wG/YLdh3AUAFvXBiBsai5NBKNPEtTbrg4zZuE75P4x67PLhBwxtQK7IYVJVk7Aidg4PhbGsFebpHaz83Lq2NymaCgsVWklK6XlaFGtvgEdj51Kim8TF687Z9p6sKZD1PK+OOGYdNIUQq0J9XkLwRVj1LuJydbGI+NMnLCa8agUl8f5PxU4kKi3nfczG/pDYTpd61k8QwmfMHwi4uNpeZNGlLrs5oRtL3zW5+laHPa+NrzaOSpzb+s5/D8L63zZOMGdQOICzOMFSUHDwe2d+NSEldZ64jZ1kXLfqE/N2cpBIVrkFVePm/DzjvOngyJOHHFt76MnCtLDJXO5ARKLAi0jygPmn+IvHk8s5dSpcKf255Sl0Bep4tgyICtiCMpRr+rNme3oNcnPMW+XKODdlbMJK1lAzx+mDGEVzlm2u7t/i9T+0g08jwRDJqEcMY05ouh1ILv9cPzwxFuA2OZ2muzF1Wkd8GAFj/+len006q12qJPifMwhqiy1zGxY1d/IuwVD60rmLhm3hfsVlTDbXEZvCFqcENjVAuPSua8rXWE/dLMPLxBNLOmTqDu/7pGt+dVsEeCV/y7PAUP4z+m3c0kGnmalVOaMFuIvmpMb7YuT29xMqaI7HWMybdEuRdErBD4cXXtPeCUJC08ZMQ1rpi0qn7wPA4HudlIG1tsrk569/5F3m0rKabe+f40FXFi1ukqotxolYEp+8rplQK808fxjKF2U72ylB/MONuwXm0a8ui9NPChXgRjNNbiQcPasm1HgLFYLW/7rj10V98n6d1Xx5oa7KORp1p2WY5mdsJg6Tdv3RZwC21QUWK2WNpocytvXTb8uVnZLhz2K63AGfcCHv5Ds8N6zdTUZEpj30C42hTw4v1+w8Zpo0f1POLEZUvJ4E0AW/BC641KxV1syAxGXL4c/oTU7AGUNHARO4QE18zCIVC46UNKPPO2cNFO+n34WsFhTyvhjNlGmxLSqrN92nyqVs4IIC6QFmxN0RB04ksv+ofyQ/5Y17du419swF9J8775McDvC64CXy9eTj1uuS5odaKRZ9DCTG7AkxyuAfinDCebtmwPiBLKXUCNXGhYR6mGa4+wL4YT7PZglL+zdhqDynX9xrsf8XpJvW0as88TRwwM8PtTC4DdqyKl/GwRpJb2jOq8zXJ7/13MLuamp8NTzR+mPfHs/o2ODqrC2zuXferUx9vU5K8ZzYurW2mzLMW5eV1KkfCEolx9x4PU5vJbdD/1M1rBMsZyGaOY7eRQnz/DZRSsR6sogWH7wgtaK9rYlx+8xt8zDHQwXrW25GVW2jpFI89wZf+xKStcFMV1xGxWTzuZgUxiecRhFLiRhJOsneGdo/HZNaNsMcxyGu+r1/DhwioA7U9br+W/BNq04O+HrZCCSUWv14w4ceHB4pq3I1usZn0Xk1ZBcjJvsRy8uIIpXaj41w+D4RIQ7snfRQVrx1LeL7wdcxmX7sSwjetkSKvmZwYUiy1nQskqk6/WmPnMYImKUcw6oDEOrjGVjc6MIcJvf2xWlgFp/XqghYBAtT/tej5jnhg6GJeQIM4fm7f6o0YjT3/mJ3DyAq+pNNNytVlOfHV6gEaC+x3btdFGU/Ym0wXwBfANJfCVW/JT6D6B9J0vaqssRdLmhdUNHzEhhRI822P83ckRPOOs/akjAcyMGp8fLxDVOTVY3kZXmWDxIhUe+EqIQM5xZ3WimPRM8hw67uficcRSoT2VkgpzTEvw7PmNCub2I8eqt3nf+YcotsX1HC9QM/J53VS4bhK5smZT0W72UcL3Fcso3uLcMqaITHQscl64aJkus8947yWs8TPTUDC0gv3IKDBoG+ViXvCamJCg63SYDXp52vv0yL3djdH91/A9uvXeAbqZQnTSeR9M8ceZ8OoMxZveH8AnqDMWVgcTh4m2gWUjqkQjTzXvEzlCcxgx/jWCfdBM5n37I/1n7vyAW/BWN2okZkPOFavWKS8Gs5cYMkV7YVPGcIJh6QW8dnDF6vW6qM+9NI1acz8z60+I+PqM2YqHvzYRXEBq8qaSELMF5TADYCiobT9tetgG5zMuFSnBVaATqQVrWFXGLOQPWRxf4oHsvLwMKD8lnWca7ea5sxHfvX0FFXx0F2U/m0HZL9Sm/C96UQFvEJg793o6PK0m/ypTwc/jqWgH2wE85eRd/iDtyZDzeQmOUdBJ7+3/NH224HtF84FrA4zZr7NXuvGDpUgLL/crL7nQmI2yKNpsn3XYK/CBVLO9pRYvW0n38ZYoRl+cbjf+U3E6VQvBDgNGwaJi7FtlJujkM3iPL6PATqJKNPJU8z7RI8gJ37KEsVvVRNBO2OIFpGYmd9x8TUBw+wvM7YsPsUsJXmCq1oo2x44ejzzxrLLgOSCjIAH3sG+dUfCBkP7Dx+sWzyMO9tPC0PCd/35mTEK333x8XSnsp2YE9eQzL5rODGPPt5488WJcyxpQSIQDovol6/yveDO2TyeWfMMCFIkflCibj2J9Lr4sIrutmDcbZIM1c1C4L1l7KY47Ujx/DDaR8+KMjuWZefcy/mxZyfh73zQejqllqeWBJ1HusfCEuldTpbYvckDFC9RzdKBgYmdyD7VpG1wRMKtnJhjedesziLBuziiYeWzBzqFnt2hKBw4dpr/4LYmdLY2CGb73p4zTLXvBP8P1PfqadlzEx0zTua2a01Ee5sDOgs3kjEQJb/P5s1737w4RjTzxLB/wjq9jX5ymeyz4kmG3BK2YfckadsI8fgatDxv+kRP4Z1wHqs0L2hMwM5utvur2B5Qhtja+eo42qVkjkw4dztFpylgvafTCx8tq0shBalL/ceTEKcoGfv4AzQnapk6tGtwWhUyMO023mYGW+Pl7r+ochaH14YVnJphRbNvmbEUDw6aEqv8gNDXjCxAfLVk0d7pZNiccVk6VpXTlJl12FxX9vZKKNi7SJ2CNrNjONjBbPE8m8pepyUUOG4zz+hk3JPL52Pe+OJGN9/yDjQxGfhCQRpxbF1DSWXcqITZHPG+15dLcPbVOBz3ci31j1gVdIhGKtJo0qk/9eYuaYIIZShhR+wwcqXQsbTxMbcO+EsrGgjft1IlP60gLeeCfd9SQR+jhIWMCtnTBLgL4ffjpV9ridOf4B8WWxdop/GjkqSu0HBf4mOw9d9ykaMCqKwAIFr9ggplbDJnNSAtphva7X3HaNUuPMoyTLxfx0qnL2F5Z2lUP6E94Waw22YlBbRuzshEGW+Rr44bpSAvhPW69XlnepbVJIhwCLdTodoF8Xhj9OOM2vCRSBfw1UEBkS4SBPr33CxRbu3mQjG1MVTHkjkkkZ0wV/lUlJ2WS05tJLk8mq9LVeI+fTNawUpjAVLUpMKvcJaPBcMqNytfPCYxgCPHk7yRvYeBsnSFaVC7hTY6tjEOt4DcrGPaxV58bGtDJjHHxRvzwzYnUhjWgsgjWrr31wihTPyvkg6Hd1AnDlQ8jlCVf2GKeHzXIdJ/1aORZlrqZxYX2CI02nJsK0oLoZ77ybFB7EuJc1LYN9eWdMoIRG+KoglnJ0bwzBQYHpRVoOm9NHl2qxdXaPNFP0N5mtjB86GTGy89Q2/PO1iYxPUf5aF+s3axIsY9giWaBNkccxbfqTO79W8hzMKtkyIaWCfcDpSKOegwZn7W2lBoUm9mS1yBWJnf2ZvLk8OyNmsaQh6/oIMVV73DSPg4LzQMfqUjntzXUbdXWwU8bIDCcwpaBoY52W5iAiJoAdKbru1xC0NDgm7SLv/hiJvCbAiGOYW3qwV63cX1SzaL5w2DA7XbjVcpSHgynDmebT7QgAYYp3XjfcWiAzRo38OdhPIl0ntjUzzhTi/WT2LFTKzDCY/JDK3V5iHbtFZ0IQ7+reOH4Tt6bDPuTGVzveLYwnfef6kpjmGTM7EHaPHEO22bLpo2V/Mz8nbDGEx+ZGDf834pDJz56gbWBWgHRdLm0gzbIfw6NtlP78xV3FGhxWWwCCKa544V592030Ghu8+rVjk+W+DM7doI6XdW5IzlZ29zOEzhOl34Ug76DPjyZX8JNGtZXPs7xDu9NrxX0w7u73agNith5VG1c2lrCT+vIy3dS8Q6eBQGRqGSinmuPIBxVwVKP6n3cU881x7ha7Sjj2rf5XizPNi6hnMX9yFvM/1javNT4HJbSaiAlN+2jreJJOcce3TDMlqj1O9gB8oiyrg++Wi2aNqJzecFyad7WoSoPOwSGJHACzWYjM8gQH3jA58lgUyuvYEcJzChl5+QqBJnMn++C9zhIS52lKmve0cizrHXQxsd2P7APwR4It4DaNWsouOEftzyCfLbyzg77+bNhldJSFKzQFiCKSAlsTdvYFwztDTwT4uKUz5PVq13TdGvtcOWCBGETRZ29vLSsfp1aVIdxKC8G4corzf0KIy61MtnT+1LRX0vJV5x3XKNSCUU9asmmlMQFgko6525KbT9UKSp/w9uU9+vzPJXJb4ogeWRes5xi4o8vUVLrKEdBQBA4tRGocOLyuYuoOGsN5cz6N3mPsp1JJSvtsZzEFZOUQZk9f/Yj7tr5PeWtnUzunI16kkT+XF5c9Qspo8NMf3w5EQQEAWsgUOHEpYXFufozyp03lrzObDauu4+TWFmIi4c6MUmVKK5+Z6rUaTQTVOBEac6ygeTau5iLYMc+G6/BOkZccKlIOrMXpbYYzGHlU/21zyPngoAgUDEInFTiUh6RPxVWsGIWf4sxi4p3r6finatLiEUd3qlHVSM7Rjr2Kg0pvkEnsqeeQYln3c58pVliZIKdj73lC7d+wiS5l5z8QVhP4Q6FKG3xaZTS7BFKanC3SSoJEgQEgVMRgZNPXCoqbPTz5rPxL++gEuIpOMhLhrbwcHKXsqNqTEZtcmQ24ZnAkp1LbfGpZE/DFCyYrGwCdwifO4/c/LWfgi1v8Ycz9lHm5YvLlonEFgQEgZOGwKlDXCcNAilYEBAErIYABmAigoAgIAhYCgEhLks1l1RWEBAEgIAQl/QDQUAQsBwCQlyWazKpsCAgCAhxSR8QBAQByyEgxGW5JpMKCwKCgBCX9AFBQBCwHAJCXJZrMqmwICAICHFJHxAEBAHLISDEZbkmkwoLAoKAEJf0AUFAELAcAkJclmsyqbAgIAgIcUkfEAQEAcshIMRluSaTCgsCgoAQl/QBQUAQsBwCQlyWazKpsCAgCAhxSR8QBAQByyEgxGW5JpMKCwKCgBCX9AFBQBCwHAJCXJZrMqmwICAICHFJHxAEBAHLISDEZbkmkwoLAoKAEJf0AUFAELAcAkJclmsyqbAgIAgIcUkfEAQEAcshIMRluSaTCgsCgsD/AFt/MVAlcetCAAAAAElFTkSuQmCC",width:75,height:24},opacity:.5,right:10,top:10}),!this[s(1312)][s(1137)]&&(typeof OffscreenCanvas===_i(645)?(this[s(1312)][s(1137)]=!0,this[s(1312)][s(454)]=!1):this[s(1312)][s(454)]=!0),this._opt[s(759)]&&(this[s(552)](this[s(763)],s(564)),this[s(1312)][s(1054)]=!1,this[s(1312)][s(1162)]=!1,this[s(1312)][s(929)]=!1,this._opt[s(1239)]=!1,this[s(1312)].isFmp4=!1,this._opt[s(956)]=!0),this[s(879)]()&&(Pi(this._opt[s(1162)])&&Pi(this[s(1312)].mseDecoderUseWorker)&&this[s(552)](this[s(763)],"isPlayback and mseDecoderUseWorker is true, so set mseDecoderUseWorker false"),this._opt[s(1198)]=!1,this[s(714)]()&&this.debugLog(this[s(763)],s(1336)),this[s(1312)][s(637)]=!1,this[s(1312)].isSpecialPlaybackVod&&(this[s(552)](this.TAG_NAME,"isSpecialPlaybackVod is true, so set useMSE:false and demuxPsUseV2 and demuxFlvUseV2 true and playbackCheckStreamEnd false and calc Playback Forward MaxRate DecodeIFrame and next update playbackConfig"),this[s(1312)][s(477)]=!0,this[s(1312)][s(615)]=!0,this._opt[s(434)]=!1,this._opt[s(1298)]=!0,this[s(1312)][s(1162)]=!1,this._opt[s(663)][s(804)]=S.simple,this[s(1312)][s(663)][s(1227)]=!0,this[s(1312)][s(663)][s(1320)]=!0,this._opt[s(663)].uiUsePlaybackPause=!0,this[s(1312)][s(663)][s(816)]=!1,this[s(1312)].playbackConfig.duration=0)),this[s(722)]()&&(this._opt.mseDecoderUseWorker=!1,this[s(714)]()&&this.debugLog(this[s(763)],s(772)),this._opt.wcsDecodeAudio=!1,this._opt[s(519)]=!0,this[s(962)]()&&(this[s(552)](this[s(763)],s(1108)),this._opt[s(956)]=!1,this[s(1312)][s(1162)]=!1,this._opt[s(1054)]=!1,this[s(1312)][s(1239)]=!1,this[s(1312)].recordType=f[s(443)],this._opt[s(931)]=!1)),this[s(1312)][s(462)]&&(this[s(1312)].background=this[s(1312)][s(462)]),xi(this._opt.muted)&&(this[s(1312)][s(566)]=!0),this._opt.mseDecoderUseWorker&&(this._opt[s(1198)]=function(){const t=es;return!!(re[t(519)]&&re[t(670)]&&t(661)in re[t(670)]&&!0===re.MediaSource[t(661)])}(),xi(this[s(1312)][s(1198)])&&this[s(552)](this[s(763)],s(568))),(this[s(940)]()||this.isWebrtcH264()||this[s(1266)]())&&(this[s(552)](this.TAG_NAME,s(1057)),this[s(1312)].useWCS=!1,this._opt.useMSE=!1,this._opt[s(929)]=!1,this._opt.useSIMD=!1,this[s(1312)][s(700)]=!1,this._opt.useWasm=!1,this[s(1312)][s(532)]=f[s(443)]),this[s(1312)][s(929)]&&(this.debugLog(this.TAG_NAME,s(834)),this[s(1312)][s(1244)]=!1,this._opt[s(637)]=!1),vs()&&(this.debugLog(this[s(763)],s(923)),this[s(1312)][s(1244)]=!1),!this[s(940)]()&&!this.isWebrtcH264()){if(this[s(1312)][s(1054)]){const t=function(){const t=es;let e=!1;return t(537)in re&&typeof re[t(537)]===t(646)&&(e=!0),e}(),e=Fs();this[s(1312)][s(1054)]=t,this[s(1312)][s(1054)]&&this._opt[s(1111)]&&(this._opt[s(1054)]=e),!this[s(1312)][s(1054)]&&this[s(1204)](this[s(763)],"\n useWCS is true,\n and supportWCS is "+t+s(1005)+e+" , _opt.isH265 is "+this[s(1312)][s(1111)]+"\n so set useWCS false"),this[s(1312)][s(1054)]&&(this[s(1312)].wcsDecodeAudio&&(this._opt[s(637)]=function(){const t=es;let e=!1;return t(538)in re&&typeof re[t(538)]===t(646)&&(e=!0),e}(),!this[s(1312)][s(637)]&&this[s(1204)](this.TAG_NAME,"wcsDecodeAudio is true, but not support so set wcsDecodeAudio false")),this[s(1312)][s(454)]?this[s(1312)][s(1130)]=!1:this._opt.wcsUseVideoRender&&(this._opt[s(1130)]=Us()&&Os(),!this[s(1312)][s(1130)]&&this.debugWarn(this[s(763)],s(933))))}if(this[s(1312)].useMSE){const t=function(){const t=es;let e=!1;return"MediaSource"in re&&typeof re[t(670)]===t(646)&&typeof re[t(670)][t(660)]===t(646)&&(e=!0),e}()||function(){const t=es;let e=!1;return!(t(670)in re)&&"ManagedMediaSource"in re&&typeof re[t(650)]===t(646)&&"function"==typeof re[t(650)][t(660)]&&(e=!0),e}(),e=Ms()||Bs();this[s(1312)][s(1162)]=t,this[s(1312)][s(1162)]&&this[s(1312)].isH265&&(this._opt[s(1162)]=e),!this[s(1312)][s(1162)]&&this[s(1204)](this[s(763)],s(1200)+t+s(558)+e+s(463)+this[s(1312)][s(1111)]+s(724))}}if(xi(this[s(1312)].useMSE)&&(this[s(1312)][s(1244)]=!1),xi(this._opt.useWCS)&&(this[s(1312)][s(637)]=!1),this[s(1312)][s(1162)]?(this[s(1312)][s(1054)]&&this[s(1204)](this[s(763)],s(966)),!this[s(1312)][s(1137)]&&this[s(1204)](this[s(763)],"useMSE is true and forceNoOffscreen is false then forceNoOffscreen set false->true"),this[s(1312)].useWCS=!1,this[s(1312)].forceNoOffscreen=!0):this[s(1312)][s(1054)],this._opt[s(596)]&&this[s(1312)][s(845)]&&(this.debugWarn(this[s(763)],s(892)),this[s(1312)][s(845)]=!1),this[s(1312)].isHls&&this[s(1312)][s(845)]&&(this[s(1204)](this[s(763)],"isHls is true and demuxUseWorker is true then demuxUseWorker set true->false"),this[s(1312)][s(845)]=!1),this[s(722)]()&&this[s(1312)][s(845)]&&(this[s(1204)](this[s(763)],"isPlayVod is true and demuxUseWorker is true then demuxUseWorker set true->false"),this[s(1312)][s(845)]=!1),this[s(1312)][s(1266)]&&this[s(1312)].demuxUseWorker&&(this[s(1204)](this[s(763)],s(807)),this[s(1312)][s(845)]=!1),this[s(868)]()&&this[s(1312)].demuxUseWorker&&(this.debugWarn(this.TAG_NAME,s(1006)),this[s(1312)][s(845)]=!1),xi(this[s(1312)][s(845)])&&(this[s(1312)][s(1198)]=!1),(this[s(879)]()||this.isPlayVod())&&(this[s(1312)][s(1198)]=!1),this._opt[s(805)]&&(this[s(1312)][s(805)]=typeof SharedArrayBuffer!==es(645),!this[s(1312)][s(805)]&&this.debugWarn(this[s(763)],s(947)),this[s(1312)].useMThreading&&this[s(1312)].useSThreading&&(this.debugWarn(this.TAG_NAME,"useSThreading is true, but useMThreading is true, so set useSThreading false"),this[s(1312)][s(1300)]=!0)),this._opt.useSIMD||-1!==this._opt[s(1317)][s(436)](s(1315))){const t=WebAssembly[es(640)](new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11])),e=Oi();this[s(1312)][s(1239)]=t&&xi(e),!this[s(1312)].useSIMD&&this[s(1204)](this[s(763)],s(639)+t+s(573)+e+") so set useSIMD false")}if(this[s(1312)].useSIMD?-1===this[s(1312)].decoder[s(436)](s(1315))?this[s(1312)][s(805)]?this[s(1312)].isFFmpegSIMD?this._opt[s(1317)]=this[s(1312)].decoder.replace("decoder-pro.js",s(1236)):this[s(1312)][s(1317)]=this[s(1312)][s(1317)][s(492)]("decoder-pro.js",s(547)):this._opt.isFFmpegSIMD?this[s(1312)].decoder=this[s(1312)][s(1317)][s(492)]("decoder-pro.js","decoder-pro-f-simd.js"):this[s(1312)][s(1317)]=this._opt.decoder.replace("decoder-pro.js",s(584)):this[s(1312)][s(805)]?this[s(1312)][s(651)]?this[s(1312)].decoder=this[s(1312)].decoder[s(492)](s(584),s(1236)):this[s(1312)].decoder=this[s(1312)][s(1317)][s(492)](s(584),"decoder-pro-simd-mt.js"):this[s(1312)].isFFmpegSIMD&&(this[s(1312)][s(1317)]=this[s(1312)][s(1317)][s(492)](s(497),s(441))):-1!==this._opt[s(1317)][s(436)]("-simd")?this[s(1312)][s(805)]?this[s(1312)].decoder=this[s(1312)][s(1317)].replace(s(584),s(1156)):this[s(1312)][s(1317)]=this[s(1312)][s(1317)][s(492)](s(584),s(497)):this[s(1312)].useMThreading&&(this._opt[s(1317)]=this[s(1312)][s(1317)][s(492)](s(497),"decoder-pro-mt.js")),-1!==this._opt[s(1317)][s(436)](s(1315))?this._opt[s(805)]?this[s(1312)][s(651)]?(this._opt[s(676)]=this[s(1312)].decoder.replace(s(1236),"decoder-pro-audio.js"),this._opt[s(657)]=this[s(1312)][s(1317)][s(492)](s(1236),s(1292)),this[s(1312)].decoderHardNotWasm=this[s(1312)].decoder.replace(s(1236),"decoder-pro-hard-not-wasm.js"),this._opt[s(964)]=this._opt[s(1317)].replace("decoder-pro-f-simd-mt.js",s(613)),this._opt[s(502)]=this._opt[s(1317)][s(492)]("decoder-pro-f-simd-mt.js",s(1071)),this[s(1312)][s(1178)]=this[s(1312)][s(1317)][s(492)](s(1236),s(961))):(this[s(1312)].decoderAudio=this[s(1312)].decoder[s(492)]("decoder-pro-simd-mt.js",s(744)),this[s(1312)][s(657)]=this[s(1312)].decoder[s(492)](s(547),"decoder-pro-hard.js"),this[s(1312)][s(934)]=this[s(1312)][s(1317)][s(492)]("decoder-pro-simd-mt.js",s(819)),this[s(1312)][s(964)]=this[s(1312)][s(1317)][s(492)](s(547),"decoder-pro-old.js"),this[s(1312)][s(502)]=this[s(1312)].decoder.replace(s(547),"decoder-pro-audio-only.js"),this[s(1312)][s(1178)]=this[s(1312)][s(1317)][s(492)](s(547),"decoder-pro-video-simd-only.js")):this[s(1312)][s(651)]?(this[s(1312)][s(676)]=this._opt[s(1317)][s(492)](s(441),"decoder-pro-audio.js"),this[s(1312)][s(657)]=this[s(1312)].decoder[s(492)](s(441),s(1292)),this[s(1312)][s(934)]=this._opt[s(1317)][s(492)](s(441),s(819)),this[s(1312)].decoderOld=this[s(1312)][s(1317)][s(492)]("decoder-pro-f-simd.js",s(613)),this[s(1312)].decoderOnlyAudio=this._opt.decoder[s(492)](s(441),s(1071)),this._opt.decoderOnlyVideo=this[s(1312)][s(1317)][s(492)](s(441),s(961))):(this[s(1312)][s(676)]=this._opt[s(1317)].replace(s(584),s(744)),this[s(1312)].decoderHard=this[s(1312)][s(1317)][s(492)](s(584),s(1292)),this[s(1312)][s(934)]=this[s(1312)][s(1317)].replace(s(584),s(819)),this[s(1312)][s(964)]=this._opt[s(1317)][s(492)](s(584),s(613)),this[s(1312)].decoderOnlyAudio=this[s(1312)][s(1317)].replace("decoder-pro-simd.js",s(1071)),this[s(1312)][s(1178)]=this[s(1312)].decoder[s(492)](s(584),s(447))):this[s(1312)][s(805)]?(this[s(1312)][s(676)]=this[s(1312)][s(1317)][s(492)](s(1156),s(744)),this[s(1312)][s(657)]=this[s(1312)].decoder[s(492)](s(1156),s(1292)),this[s(1312)][s(934)]=this[s(1312)].decoder[s(492)]("decoder-pro-mt.js",s(819)),this[s(1312)][s(964)]=this._opt[s(1317)][s(492)](s(1156),s(613)),this[s(1312)][s(502)]=this._opt.decoder[s(492)](s(1156),"decoder-pro-audio-only.js"),this[s(1312)][s(1178)]=this[s(1312)][s(1317)][s(492)](s(1156),"decoder-pro-video-only.js")):(this[s(1312)][s(676)]=this[s(1312)][s(1317)][s(492)](s(497),s(744)),this[s(1312)].decoderHard=this[s(1312)].decoder[s(492)](s(497),"decoder-pro-hard.js"),this._opt[s(934)]=this._opt[s(1317)].replace(s(497),s(819)),this._opt[s(964)]=this._opt[s(1317)].replace(s(497),"decoder-pro-old.js"),this._opt[s(502)]=this[s(1312)][s(1317)][s(492)](s(497),"decoder-pro-audio-only.js"),this[s(1312)][s(1178)]=this[s(1312)].decoder[s(492)](s(497),s(685))),xi(this._opt[s(1131)])&&(this._opt[s(1296)][s(1068)]=!1),xi(this[s(1312)].hasVideo)&&(this[s(1312)][s(1296)][s(666)]=!1,this[s(1312)][s(1296)][s(885)]=!1,this[s(1312)][s(1296)][s(941)]=!1,this[s(1312)][s(1296)].ptz=!1,this[s(1312)][s(1296)].quality=!1,this[s(1312)][s(1296)].zoom=!1),this[s(1312)][s(646)]&&0===this._opt[s(646)][s(867)]&&this[s(1312)].operateBtns[s(1341)]&&(this[s(1312)][s(1296)].quality=!1,this[s(1204)](this.TAG_NAME,s(562))),Pi(this[s(1312)].useWebGPU)&&(this[s(1312)].useWebGPU=function(){let t=!1;return es(463)in navigator&&(t=!0),t}(),xi(this[s(1312)].useWebGPU)&&this.debugWarn(this[s(763)],s(667))),Pi(this._opt[s(664)])&&(this[s(1312)][s(664)]=ks(),xi(this[s(1312)].useWebCanvas)&&this.debugWarn(this.TAG_NAME,s(859))),this[s(1312)][s(1162)]&&this[s(1312)][s(574)]>this[s(1312)][s(487)]&&(this[s(1204)](this[s(763)],"mseWaitVideoCanplayTimeout "+this._opt[s(574)]+" is greater than loadingTimeout "+this._opt[s(487)]+s(1327)),this._opt[s(574)]=Math.max(this._opt[s(487)]-1,1)),this[s(1312)].checkWebrtcLowFps&&this[s(1312)].checkWebrtcLowFpsDuration>this[s(1312)][s(1045)]&&(this[s(1204)](this[s(763)],s(945)+this[s(1312)][s(470)]+s(1332)+this[s(1312)].heartTimeout+s(1107)),this[s(1312)][s(470)]=this._opt[s(1045)]),this[s(1312)].hasControl=this[s(765)](),this[s(723)]=!1,this[s(839)]=!1,this[s(1160)]=!1,this[s(773)]=!1,this[s(1158)]=!1,this._zooming=!1,this[s(448)]=!1,this._destroyed=!1,this[s(1248)]=!1,this._closed=!1,this[s(1343)]=null,this._checkLoadingTimeout=null,this[s(656)]=null,this[s(912)]=null,this[s(732)]=null,this._isPlayingBeforePageHidden=!1,this[s(1077)]={buf:0,netBuf:0,fps:0,maxFps:0,dfps:0,p2dfps:0,abps:0,vbps:0,ts:0,mseTs:0,currentPts:0,pTs:0,dts:0,mseVideoBufferDelayTime:0,isDropping:!1},this[s(853)]={updateStats:this[s(604)][s(442)](this)},this[s(847)]=[],this._allStatsData={},this[s(960)]=!1,this[s(1095)]=!1,this[s(811)]=!1,this[s(865)]=!1,this[s(1273)]=!1,this[s(877)]={playInitStart:"",playStart:"",streamStart:"",streamResponse:"",demuxStart:"",decodeStart:"",videoStart:"",playTimestamp:"",streamTimestamp:"",streamResponseTimestamp:"",demuxTimestamp:"",decodeTimestamp:"",videoTimestamp:"",allTimestamp:""},this[s(660)]=0,this[s(539)]=0,this[s(520)]=0,this._videoIframeIntervalTs=0,this[s(536)]=this[s(1312)][s(951)]||"",!this._streamQuality&&this[s(1312)][s(646)][s(867)]>0&&(this[s(536)]=this._opt[s(646)][0]||""),this._visibility=!0,this._lastestVisibilityChangeTimestamp=null,this._tempWorkerStats=null,this[s(760)]=[],this._historyVideoDiffList=[],this[s(1143)]=[],this[s(509)]=null,this[s(655)]=null,this[s(841)]=null,this._serverInfo=null,this._computerInfo=null,this[s(499)]={},this[s(1305)]=!1,this[s(1141)]=null,this._tempG711DataList=[],xi(this[s(1312)][s(1162)])&&xi(this[s(1312)][s(1054)])&&!this[s(882)]()&&!this[s(940)]()&&!this[s(1266)]()&&!this[s(962)]()&&(this[s(1312)][s(956)]=!0),(this[s(940)]()||this[s(882)]()||this[s(1266)]()||this[s(962)]())&&(this[s(1312)][s(782)]=!0,this[s(1312)].hasAudio=!0),xi(this._opt.hasVideo)&&(this[s(1312)][s(1162)]=!1,this[s(1312)][s(1054)]=!1),this[s(1312)][s(956)]&&(this[s(1312)][s(454)]?this[s(1312)].wasmUseVideoRender=!1:this[s(1312)][s(493)]&&(this[s(1312)][s(493)]=Is()&&Us()&&Os(),!this[s(1312)][s(493)]&&this[s(1204)](this.TAG_NAME,s(1043)),this._opt.wasmUseVideoRender&&this[s(1312)][s(864)]&&(this[s(1312)][s(864)]=function(){const t=es;let e=!1;return t(573)in re&&"function"==typeof re[t(573)]&&(e=!0),e}(),!this[s(1312)][s(864)]&&this[s(1204)](this[s(763)],"use wasm video render play audio, but not support so set wasmPlayAudioUseVideoRender false"))),this[s(1312)][s(1239)]?this._opt[s(805)]?this[s(552)](this[s(763)],s(779)):this[s(1312)][s(1300)]?this.debugLog(this[s(763)],s(458)):this[s(552)](this[s(763)],s(872)):this[s(1312)][s(805)]?this[s(552)](this[s(763)],"use wasm mt"):this[s(1312)].useSThreading?this[s(552)](this[s(763)],s(751)):this[s(552)](this[s(763)],s(1036))),(this._opt[s(956)]||this[s(1312)][s(1054)])&&(this[s(1312)][s(537)]&&window.JessibucaProFaceDetector||this[s(1312)][s(1078)]&&window.JessibucaProObjectDetector||this[s(1312)][s(526)]&&window[s(856)]||this._opt[s(579)]&&window[s(1234)]||this._opt[s(716)]&&window.JessibucaProLicensePlateDetector)?(this.ai=new yL(this),!(this[s(1312)][s(537)]&&window[s(1311)])&&(this[s(1312)][s(1296)][s(1148)]=!1),!(this[s(1312)][s(1078)]&&window[s(680)])&&(this[s(1312)][s(1296)][s(494)]=!1),!(this[s(1312)][s(526)]&&window[s(856)])&&(this[s(1312)][s(1296)][s(1058)]=!1),this._opt[s(579)]&&this[s(1312)][s(1011)]&&window[s(1234)]&&(this[s(866)]=!0),this[s(1312)].useLicensePlateDetector&&this[s(1312)].aiLicensePlateDetectActive&&window[s(421)]&&(this[s(1212)]=!0)):(this[s(1312)][s(1296)][s(494)]=!1,this[s(1312)].operateBtns[s(1148)]=!1,this[s(1312)].operateBtns[s(1058)]=!1),this._opt[s(537)]&&(!this._opt.useWasm&&!this[s(1312)].useWCS||!window[s(1311)])&&this[s(1204)](this[s(763)],s(1252)+this._opt[s(956)]+s(530)+this[s(1312)][s(1054)]+" or window.JessibucaProFaceDetector is null"),this[s(1312)][s(1078)]&&(!this[s(1312)][s(956)]&&!this[s(1312)][s(1054)]||!window.JessibucaProObjectDetector)&&this[s(1204)](this.TAG_NAME,"use object detector, useWasm is "+this._opt[s(956)]+s(530)+this[s(1312)][s(1054)]+" or window.JessibucaProObjectDetector is null"),this[s(1312)][s(526)]&&(!this[s(1312)].useWasm&&!this[s(1312)].useWCS||!window[s(856)])&&this.debugWarn(this[s(763)],s(791)+this[s(1312)][s(956)]+s(530)+this._opt.useWCS+s(1277)),this[s(1312)][s(579)]&&(!this._opt[s(956)]&&!this[s(1312)][s(1054)]||!window[s(1234)])&&this[s(1204)](this[s(763)],s(506)+this[s(1312)][s(956)]+s(530)+this[s(1312)][s(1054)]+s(1209)),this._opt[s(716)]&&(!this[s(1312)][s(956)]&&!this[s(1312)][s(1054)]||!window[s(421)])&&this[s(1204)](this[s(763)],"use license plate detector, useWasm is "+this[s(1312)][s(956)]+" and useWCS is "+this._opt[s(1054)]+s(974)),this._opt[s(873)]&&(this[s(552)](this[s(763)],s(597)+this[s(1312)][s(873)]),this[s(1312)][s(873)]===A[s(970)]?(this[s(1312)][s(986)]=!0,this[s(1312)][s(855)]=!1):this[s(1312)].videoRenderType===A[s(1329)]&&(this[s(1312)].useVideoRender=!1,this[s(1312)][s(855)]=!0)),this._opt.useVideoRender&&(this._opt.useWasm&&!this[s(1312)].useOffscreen?(this[s(1312)].wasmUseVideoRender=Is()&&Us()&&Os(),!this[s(1312)][s(493)]&&this[s(1204)](this.TAG_NAME,s(1043))):this._opt.useWCS&&!this[s(1312)][s(454)]&&(this[s(1312)][s(1130)]=Us()&&Os(),!this[s(1312)].wcsUseVideoRender&&this[s(1204)](this[s(763)],s(1254)))),this._opt[s(855)]&&(this[s(1312)][s(1162)]&&xi(this._opt[s(1198)])&&(this[s(1312)][s(1316)]=!0),this[s(1312)][s(956)]&&(this._opt[s(493)]=!1),this[s(1312)][s(1054)]&&(this[s(1312)][s(1130)]=!1),this[s(940)]()&&!ws()&&(this._opt.hlsUseCanvasRender=!0),this[s(882)]()&&(this._opt[s(893)]=!0)),this[s(1312)][s(986)]=!1,this[s(1312)][s(855)]=!1,this[s(1312)][s(956)]?this[s(1312)].wasmUseVideoRender?this[s(1312)][s(986)]=!0:this[s(1312)][s(855)]=!0:this._opt[s(1054)]?this[s(1312)][s(1130)]?this[s(1312)][s(986)]=!0:this[s(1312)].useCanvasRender=!0:this._opt[s(1162)]?this._opt.mseUseCanvasRender?this._opt[s(855)]=!0:this._opt[s(986)]=!0:this[s(940)]()?this._opt.hlsUseCanvasRender?this[s(1312)].useCanvasRender=!0:this[s(1312)].useVideoRender=!0:this.isWebrtcH264()&&(this[s(1312)][s(893)]?this[s(1312)][s(855)]=!0:this[s(1312)][s(986)]=!0),xi(this[s(1312)][s(956)])&&(this[s(1312)][s(805)]=!1,this[s(1312)].useSThreading=!1),this[s(1312)][s(855)]&&this[s(824)]()&&(this[s(552)](this[s(763)],s(1073)),this[s(1312)][s(637)]=!1,this[s(1312)][s(864)]=!1),this[s(1069)]=new sr(this),this.isPlayback()&&(this.playback=new lL(this,this[s(1312)][s(663)])),this.isPlayVod()&&(this[s(598)]=new gR(this,this[s(1312)].playVodConfig)),this._opt[s(782)]&&(this[s(970)]=new ko(this),this.recorder=new hc(this)),this[s(940)]()?(this.hlsDecoder=new wk(this),this[s(991)]=!0):this[s(882)]()?(this[s(1312)][s(678)]?this[s(729)]=new JL(this):this._opt[s(993)]?this[s(729)]=new UL(this):this._opt.isWebrtcForOthers?this[s(729)]=new WL(this):this[s(1312)][s(1125)]?this[s(729)]=new TR(this):this[s(1312)].isWebrtcForDJI?this.webrtc=new CR(this):this.webrtc=new KL(this),this[s(991)]=!0):this.isAliyunRtc()?(this[s(1195)]=new tR(this),this[s(991)]=!0):this[s(962)]()?(this[s(1025)]=new nL(this),this[s(991)]=!0):(this[s(1041)]()&&(this[s(996)]=new kD(this)),this[s(1050)]()&&(this.webrtc=new KL(this)),this[s(1324)]()&&(this.mp4Decoder=new nL(this)),xi(mi(this[s(1312)]))?this[s(1247)]()?this[s(980)]=new Dc(this):this[s(1208)]()?this[s(980)]=new xc(this):this[s(980)]=new Ic(this):this.loaded=!0),this[s(679)]=null,this.demux=null,this[s(817)]=null,this[s(857)]=null,this[s(528)]=!1,this[s(730)]=null,this[s(544)]=!1,this[s(862)]=!1,this[s(1263)]=!1,this.isMSEPlaybackRateChangePause=!1,this[s(488)]=!1,this.isPlayFailedAndPaused=!1,this.isInPlayNextFrame=!1,this[s(1166)]=!1,this[s(551)]=null,this[s(1044)]=!1,this[s(1113)]=[],this[s(753)]=null,this._opt[s(1054)]&&!this[s(1312)][s(1131)]&&xi(this[s(1312)][s(845)])&&(this[s(991)]=!0),this[s(1312)][s(1162)]&&xi(this._opt[s(1198)])&&!this._opt[s(1131)]&&xi(this[s(1312)][s(845)])&&(this[s(991)]=!0),xi(this[s(1312)][s(1153)])&&(this[s(1287)]=new Cy(this)),this._opt[s(1176)][s(867)]>0&&xi(this[s(1312)][s(1e3)])&&As()?this.contextmenu=new SL(this):Pi(this[s(1312)][s(1e3)])&&this[s(1312)][s(1176)][s(867)]>0&&As()&&this[s(1204)](this[s(763)],s(438)),this._opt[s(1296)].zoom&&(this[s(746)]=new pL(this)),function(){const t=es;return/(iphone|ipad|ipod|ios|android)/i[t(527)](window[t(396)][t(601)].toLowerCase())}()&&xi(this[s(1312)][s(842)]&&Es())&&(this[s(1047)]=new Gy(this)),(t=>{const e=rr;try{const s=e=>{const s=rr;li(e)===t[s(425)]&&(t[s(417)]?t[s(423)].useMSE&&t[s(395)]():t.resize(),t.emit(q.fullscreen,t[s(417)]))};Ae.on(e(366),s),t[e(394)].destroys[e(397)](()=>{const t=e;Ae.off(t(366),s)})}catch(t){}if(t.on(q[e(400)],()=>{const s=e;t[s(386)]("player",s(372)),t[s(376)]=!0}),t.on(q[e(396)],()=>{t[e(401)]=!1}),t.on(q.fullscreenInner,s=>{const i=e;if(s)try{Ae.request(t[i(425)])[i(411)](()=>{const e=i;t[e(386)](e(382),e(381))})[i(404)](e=>{const s=i;t[s(368)]("player",s(406),e,e.toString()),t[s(387)](J.fullscreenError,e[s(365)]()),ys()&&t[s(423)][s(413)]&&(t[s(370)]=!0)})}catch(e){ys()&&t[i(423)][i(413)]&&(t[i(370)]=!0)}else try{Ae[i(389)]()[i(411)](()=>{const e=i;t[e(386)](e(382),e(377)),t.webFullscreen&&(t[e(370)]=!1)}).catch(e=>{const s=i;t[s(368)](s(382),"fullscreen exit error",e,e[s(365)]()),t[s(387)](J[s(403)],e[s(365)]()),t[s(370)]&&(t.webFullscreen=!1)})}catch(e){t[i(370)]&&(t[i(370)]=!1)}}),ys()&&t.on(q[e(370)],s=>{const i=e;s?t[i(425)][i(390)].add(i(410)):t[i(425)][i(390)][i(407)](i(410)),t[i(379)](q[i(417)],t[i(417)])}),t.on(q.resize,()=>{t.resize()}),t[e(423)][e(424)]){const s=[q[e(383)],q[e(418)],q[e(380)],q.videoSEISyncPts,q[e(421)],q[e(384)],q[e(393)]],i=[q[e(373)],q[e(408)],q[e(398)],q[e(414)],q[e(392)],q.playToRenderTimes,q[e(367)],q[e(412)]];Object.keys(q).forEach(e=>{t.on(q[e],(r,...n)=>{const o=rr;s.includes(e)||(i[o(415)](e)&&(r=JSON[o(409)](r)),t[o(386)](o(402),q[e],r,...n))})}),Object[e(420)](J)[e(371)](e=>{t.on(J[e],(...s)=>{t[rr(388)]("player event error",J[e],...s)})})}})(this),(t=>{const e=Ly,{_opt:s,events:{proxy:i}}=t;if(s[e(357)]&&i(t.$container,e(351),s=>{const i=e,r=li(s)[i(371)][i(358)]();("canvas"===r||r===i(365))&&(t[i(382)]=!t.fullscreen)}),i(document,e(359),()=>{const i=e;t.visibility=i(379)===document.visibilityState,t[i(389)](i(359),document[i(381)]),s[i(350)]&&(t[i(389)](i(359),i(364),document[i(381)],t[i(387)]),i(379)===document[i(381)]?t._isPlayingBeforePageHidden&&t[i(349)]():(t[i(387)]=t[i(347)],t[i(347)]&&t[i(378)]()))}),As()&&i(document,[e(367),e(369)],s=>{const i=e;Sn(s,t.$container)?(Pi(t[i(348)][i(386)])&&s[i(363)]===i(369)&&s.preventDefault(),t.isInput=s[i(391)][i(377)]===i(370),t[i(394)]=!0,t[i(353)](q.focus)):(t[i(380)]=!1,t[i(394)]=!1,t[i(353)](q[i(355)]))}),s[e(360)]){t.isInView=vn(t.$container);const s=Ds(()=>{const s=e,i=vn(t[s(352)]);i!==t[s(373)]&&(t[s(373)]=i,t.emit(q[s(376)],i))},200);i(window,e(383),()=>s())}if(s[e(385)]){const s=Ds(()=>{const s=e;t[s(353)](q[s(390)])},500);i(window,e(393),()=>{s()}),screen&&screen[e(374)]&&screen[e(374)][e(368)]&&i(screen[e(374)],e(384),()=>{s()})}})(this),Yi()&&this[s(1312)][s(481)][s(1147)]){const t=Object[s(854)]({},this._opt[s(481)],{isGhost:!0});this[s(1322)]=new hR(this,t)}if(Xi()){const t=Object.assign({},this[s(1312)].ghostWatermarkConfig,{isGhost:!0});this[s(1322)]=new hR(this,t)}Yi()&&this[s(1312)][s(757)].content&&(this[s(1173)]=new hR(this,this[s(1312)][s(757)])),Xi()&&(this.dynamicWatermark=new hR(this,this._opt[s(757)])),ii(this._opt[s(1205)])&&this[s(976)](this[s(1312)][s(1205)]),this[s(1312)][s(1054)]&&this.debugLog(this[s(763)],s(668)),this[s(1312)][s(1162)]&&(this[s(1312)][s(1198)]?this[s(552)](this[s(763)],s(1139)):this[s(552)](this[s(763)],"use MSE")),this._opt[s(454)]&&this[s(552)](this[s(763)],"use offscreen"),this._opt[s(508)]&&(this[s(1312)][s(519)]?this[s(552)](this[s(763)],s(738)):this[s(552)](this[s(763)],s(1098))),this[s(1312)][s(596)]&&(this[s(1312)].isWebrtcH265?this.debugLog(this.TAG_NAME,s(1142)):this[s(1312)].isWebrtcForZLM?this[s(552)](this[s(763)],"use webrtc for ZLM"):this[s(1312)].isWebrtcForSRS?this[s(552)](this[s(763)],s(1055)):this._opt[s(793)]?this.debugLog(this[s(763)],s(1144)):this[s(1312)][s(1125)]?this[s(552)](this[s(763)],s(926)):this._opt.isWebrtcForDJI?this[s(552)](this[s(763)],s(889)):this.debugLog(this[s(763)],s(644))),this[s(1266)]()&&this.debugLog(this[s(763)],s(851)),this._opt.isFmp4&&this[s(552)](this.TAG_NAME,s(1165)),this[s(1312)][s(759)]&&this[s(552)](this[s(763)],"use mpeg4"),this.isPlayback()&&this[s(552)](this[s(763)],s(1083)),this[s(722)]()&&this.debugLog(this[s(763)],s(538));const o=Ni();if(o){const t=Ps(o[s(769)]);this[s(552)](this[s(763)],s(710)+t)}this[s(1312)].hasVideo&&(0===this[s(1001)]&&this[s(1204)](this.TAG_NAME,s(689)),0===this[s(967)]&&this[s(1204)](this[s(763)],"container height is 0, please check the container height"));try{this[s(552)](s(631),JSON[s(695)](this[s(1312)]))}catch(t){this[s(552)](s(631),this[s(1312)])}}async[xR(1064)](){const t=xR;if(this[t(552)](this.TAG_NAME,t(1064)),this[t(1248)])return new Error(t(616));this[t(1248)]=!0,this[t(987)]=!0,this[t(1117)](q.destroy),this.off(),this.events&&(this[t(1069)].destroy(),this[t(1069)]=null),this.clearCheckLoadingTimeout(),this[t(1294)](),this[t(1213)](),this.decoderWorker&&(await this[t(980)][t(1064)](),this[t(980)]=null),await this[t(1240)](),this[t(1248)]=!1}async[xR(1240)](){const t=xR;this[t(723)]=!1,this._playing=!1,this._playbackPause=!1,this._hasLoaded=!1,this[t(817)]=null,this._isMute=null,this[t(731)]=!1,this[t(448)]=!1,this._faceDetectActive=!1,this[t(1095)]=!1,this[t(811)]=!1,this[t(865)]=!1,this[t(1273)]=!1,this[t(877)]={playInitStart:"",playStart:"",streamStart:"",streamResponse:"",demuxStart:"",decodeStart:"",videoStart:"",playTimestamp:"",streamTimestamp:"",streamResponseTimestamp:"",demuxTimestamp:"",decodeTimestamp:"",videoTimestamp:"",allTimestamp:""},this[t(788)]&&(this[t(788)][t(1064)](),this[t(788)]=null),this[t(1322)]&&(this[t(1322)][t(1064)](),this.ghostWatermark=null),this[t(1173)]&&(this[t(1173)].destroy(),this[t(1173)]=null),this[t(919)]&&(this[t(919)][t(1064)](),this[t(919)]=null),this[t(679)]&&(await this[t(679)][t(1064)](),this.stream=null),this[t(996)]&&(await this[t(996)][t(1064)](),this[t(996)]=null),this[t(577)]&&(this[t(577)][t(1064)](),this[t(577)]=null),this.webrtc&&(this.webrtc[t(1064)](),this[t(729)]=null),this[t(1195)]&&(this[t(1195)][t(1064)](),this[t(1195)]=null),this.vr&&(this.vr[t(1064)](),this.vr=null),this[t(970)]&&(await this[t(970)].destroy(),this.video=null),this[t(1068)]&&(await this[t(1068)][t(1064)](),this[t(1068)]=null),this.recorder&&(this.recorder.destroy(),this[t(1046)]=null),this[t(1287)]&&(this.control.destroy(),this[t(1287)]=null),this[t(1022)]&&(await this[t(1022)][t(1064)](),this[t(1022)]=null),this.mp4Decoder&&(await this[t(1025)].destroy(),this[t(1025)]=null),this[t(775)]&&(this[t(775)][t(1064)](),this[t(775)]=null),this[t(636)]&&(this.playback[t(1064)](),this[t(636)]=null),this[t(598)]&&(this[t(598)].destroy(),this[t(598)]=null),this[t(746)]&&(this[t(746)].destroy(),this[t(746)]=null),this[t(1207)]&&(this.drawRectangle[t(1064)](),this[t(1207)]=null),this.ai&&(this.ai[t(1064)](),this.ai=null),this[t(1047)]&&(this[t(823)](),this[t(1047)].destroy(),this.keepScreenOn=null),this.resetStats(),this[t(539)]=0,this._latestAudioTimestamp=0,this[t(660)]=0,this[t(536)]="",this[t(887)]=!0,this._isInZoom=!1,this._playingStartTimestamp=null,this[t(874)]=null,this[t(624)]=null,this[t(921)]=null,this[t(1143)]=[],this[t(1167)]=[],this[t(1113)]=[],this[t(509)]={},this[t(655)]=null,this[t(841)]=null,this[t(1070)]=null,this._computerInfo=null,this[t(499)]={},this[t(1305)]=!1,this[t(1141)]=null,this.isMSEVideoDecoderInitializationFailedNotSupportHevc=!1,this[t(862)]=!1,this.isMSENotSupportAudioFormat=!1,this[t(1291)]=!1,this.isMSECurrentMoreThanBufferedPause=!1,this.isPlayFailedAndPaused=!1,this[t(1044)]=!1,this[t(753)]=null,this.isInPlayNextFrame=!1,this[t(1166)]=!1,this[t(551)]=!1,delete this[t(666)],delete this[t(600)],this[t(552)](t(822),t(1082)),this[t(1077)]={},this[t(853)]=null,this[t(1312)]={},this[t(877)]=null,this[t(1075)][t(522)]="",this[t(1075)]=null,this[t(1172)]=null}set[xR(666)](t){const e=xR;ys()&&this[e(1312)][e(913)]?this[e(600)]=t:this[e(1117)](q[e(1052)],t)}get fullscreen(){const t=xR;return Ls()||this[t(600)]}set[xR(600)](t){const e=xR;this[e(1117)](q[e(600)],t),setTimeout(()=>{this.updateOption({rotate:t?270:0}),this.resize()},10)}get[xR(600)](){const t=xR;return this[t(1075)]&&this.$container.classList[t(641)](t(1164))}set[xR(991)](t){this[xR(1158)]=t}get[xR(991)](){const t=xR;return this[t(1158)]||this[t(940)]()||this[t(882)]()||this.isAliyunRtc()||this[t(962)]()||this[t(1312)][t(1162)]&&xi(this[t(1312)][t(1131)])&&xi(this._opt.demuxUseWorker)||this[t(1312)][t(1054)]&&!this._opt.hasAudio&&xi(this[t(1312)][t(845)])}set[xR(622)](t){const e=xR;this[e(650)]()&&t?this[e(552)](this.TAG_NAME,e(735)):(t&&Pi(this.loading)&&(this.loading=!1),this[e(622)]!==t&&(this._playing=t,this[e(1117)](q.playing,t),t?(this[e(1117)](q[e(1284)],this[e(1140)]),this[e(1117)](q[e(822)])):this[e(1117)](q[e(1049)])))}get[xR(622)](){return this._playing}get[xR(1140)](){return this[xR(1068)]&&this.audio.volume||0}set[xR(1140)](t){const e=xR;t!==this.volume&&(this.audio?(this[e(1068)][e(452)](t),this[e(817)]=this[e(1140)],this[e(857)]=0===this[e(1140)]):this[e(1204)](this[e(763)],e(812)))}get lastVolume(){return this[xR(817)]}set[xR(1260)](t){const e=xR;this[e(1260)]!==t&&(this[e(723)]=t,this.emit(q[e(1260)],this[e(723)]))}get[xR(1260)](){return this[xR(723)]}set[xR(837)](t){const e=xR;this[e(949)]()||this[e(837)]!==t&&(!this[e(746)]&&(this[e(746)]=new pL(this)),this[e(731)]=t,this[e(1117)](q[e(837)],this.zooming))}get zooming(){return this[xR(731)]}set[xR(1304)](t){const e=xR;this[e(949)]()||this[e(1304)]!==t&&(!this[e(1207)]&&(this[e(1207)]=new uR(this)),this[e(448)]=t,this[e(1117)](q.drawingRect,this[e(1304)]))}get[xR(1304)](){return this[xR(448)]}set[xR(1338)](t){const e=xR;t?this.playing&&!this.recording&&(this[e(1046)]&&this[e(1046)][e(747)](),this[e(858)]()&&this.decoderWorker&&this[e(980)].updateWorkConfig({key:e(571),value:!0})):this.recording&&(this[e(858)]()&&this.decoderWorker&&this.decoderWorker.updateWorkConfig({key:e(571),value:!1}),this[e(1046)]&&this[e(1046)][e(563)]()[e(424)](()=>{})[e(1182)](t=>{}))}get[xR(1338)](){const t=xR;return!!this[t(1046)]&&this[t(1046)].isRecording}set audioTimestamp(t){null!==t&&(this[xR(539)]=t)}get[xR(504)](){return this[xR(539)]}set[xR(705)](t){null!==t&&(this._latestAudioTimestamp=t)}get[xR(705)](){return this[xR(520)]}get[xR(582)](){const t=xR;return this[t(1077)][t(620)]||this[t(1077)].ts}set[xR(489)](t){const e=xR;this[e(489)]!==t&&(this[e(536)]=t,this[e(1117)](q.streamQualityChange,t))}get streamQuality(){return this[xR(536)]}get[xR(500)](){const t=xR;return Pi(this[t(1312)][t(1172)])}get[xR(796)](){const t=xR,e=this._opt,s=e[t(496)],i=e[t(1053)];let r=ht[t(460)];return xi(i)&&xi(s)?r=ht[t(460)]:xi(i)&&Pi(s)?r=ht[t(430)]:Pi(i)&&Pi(s)&&(r=ht.fullAuto),r}set visibility(t){const e=xR;this._visibility!==t&&(this[e(887)]=t,this.emit(q[e(569)],t),this[e(874)]=os(),t?this[e(1213)]():this[e(1087)]())}get[xR(977)](){return this[xR(887)]}set[xR(924)](t){const e=xR;this._playbackPause!==t&&(this[e(1160)]=t,this[e(1117)](q[e(924)],t),this[e(1117)](q[e(1334)],t),Pi(t)&&this.recording&&(this[e(552)](this.TAG_NAME,"playbackPause set true and is recording, so stop recording"),this[e(1338)]=!1))}get[xR(924)](){return this[xR(879)]()&&this._playbackPause}set[xR(884)](t){const e=xR;if(this[e(598)])return this.playVod[e(843)]()&&xi(t)?(this[e(552)](this[e(763)],e(1123)),void this.emit(q[e(999)])):void(this._playVodPause!==t&&(this[e(773)]=t,this[e(1117)](q[e(884)],t),this[e(1117)](q[e(495)],t),Pi(t)&&this[e(1338)]&&(this[e(552)](this.TAG_NAME,"playVodPause set true and is recording, so stop recording"),this.recording=!1)))}get[xR(884)](){const t=xR;return this.isPlayVod()&&this[t(773)]}set videoIframeIntervalTs(t){this[xR(624)]=t}get[xR(1150)](){return this._videoIframeIntervalTs}set[xR(702)](t){const e=xR;this[e(960)]!==t&&(this[e(960)]=t,this[e(1117)](q[e(702)],t))}get[xR(702)](){return this[xR(960)]}set[xR(1282)](t){const e=xR;this[e(1095)]!==t&&(this[e(1095)]=t,this[e(1117)](q.objectDetectActive,t))}get[xR(1282)](){return this._objectDetectActive}set[xR(728)](t){const e=xR;this._occlusionDetectActive!==t&&(this._occlusionDetectActive=t,this[e(1117)](q.occlusionDetectActive,t))}get occlusionDetectActive(){return this._occlusionDetectActive}set[xR(866)](t){const e=xR;this[e(865)]!==t&&(this[e(865)]=t)}get[xR(866)](){return this[xR(865)]}set[xR(1212)](t){const e=xR;this[e(1273)]!==t&&(this[e(1273)]=t)}get[xR(1212)](){return this[xR(1273)]}get[xR(1211)](){const t=xR;return this[t(679)]&&-1!==this[t(679)][t(546)]()[t(436)](u.worker)}get[xR(503)](){const t=xR;let e={width:0,height:0,bottom:0,left:0,right:0,top:0};return this.$container&&(e=this[t(1075)][t(1048)](),e[t(1001)]=Math[t(583)](e[t(1001)],this[t(1075)].clientWidth),e.height=Math[t(583)](e[t(967)],this[t(1075)].clientHeight)),e}get[xR(1001)](){const t=xR;return this.rect[t(1001)]||0}get[xR(967)](){return this[xR(503)].height||0}get[xR(965)](){const t=xR;return this.rect[t(965)]||0}get[xR(838)](){const t=xR;return this[t(503)][t(838)]||0}get[xR(1342)](){const t=xR;return this.rect[t(1342)]||0}get[xR(1032)](){const t=xR;return this.rect[t(1032)]||0}[xR(814)](){return this[xR(987)]}[xR(1039)](){const t=xR;return this[t(987)]&&this[t(1248)]}isClosed(){return this[xR(658)]}[xR(953)](){const t=xR;return xi(this[t(814)]())&&this[t(650)]()}[xR(949)](){const t=xR;return this[t(814)]()||this[t(650)]()}[xR(521)](){return this.loading}isPlaying(){const t=xR;let e=!1;return this[t(1330)]()?e=this.playing:this[t(879)]()?e=xi(this.playbackPause)&&this[t(622)]:this[t(722)]()&&(e=xi(this[t(884)])&&this.playing),e}[xR(525)](t,e=!1){const s=xR;this[s(1312)]=Object[s(854)]({},this._opt,t),Pi(e)&&this[s(830)](t)}[xR(830)](t){const e=xR;this[e(980)]&&Object[e(1233)](t)[e(973)](s=>{this[e(980)].updateWorkConfig({key:s,value:t[s]})})}[xR(952)](){return new Promise((t,e)=>{const s=MR;Wi()&&!this[s(919)]&&(this[s(919)]=new rR(this)),!this[s(970)]&&this[s(1312)].hasVideo&&(this[s(970)]=new ko(this)),!this[s(1068)]&&this[s(1312)][s(1131)]&&(this[s(1068)]=new Ea(this)),!this[s(679)]&&(this.stream=new Sh(this)),this[s(940)]()?(!this[s(996)]&&(this[s(996)]=new wk(this),this.loaded=!0),t()):this[s(882)]()?(this[s(729)]||(this[s(1312)][s(678)]?this.webrtc=new JL(this):this[s(1312)][s(993)]?this[s(729)]=new UL(this):this[s(1312)][s(793)]?this[s(729)]=new WL(this):this._opt.isWebrtcForQiNiu?this.webrtc=new TR(this):this[s(1312)][s(630)]?this.webrtc=new CR(this):this.webrtc=new KL(this),this[s(991)]=!0),t()):this.isAliyunRtc()?(!this.aliyunRtcDecoder&&(this[s(1195)]=new tR(this),this.loaded=!0),t()):this[s(962)]()?(!this[s(1025)]&&(this[s(1025)]=new nL(this),this[s(991)]=!0),t()):(!this[s(775)]&&this._opt[s(782)]&&!this.isUseWorkerDemuxAndDecode&&(this[s(775)]=new zg(this)),this._opt[s(1054)]&&!this[s(1022)]&&(this[s(1022)]=new Jg(this),!this[s(1312)].hasAudio&&xi(this[s(1312)][s(845)])&&(this[s(991)]=!0)),this[s(1312)][s(1162)]&&xi(this._opt[s(1198)])&&!this[s(577)]&&(this[s(577)]=new Oy(this),!this[s(1312)].hasAudio&&xi(this[s(1312)].demuxUseWorker)&&(this.loaded=!0)),this.isUseHls265()&&!this.hlsDecoder&&(this[s(996)]=new kD(this)),this.isWebrtcH265()&&!this[s(729)]&&(this[s(729)]=new KL(this)),this.isPlayVodMp4()&&!this[s(1025)]&&(this.mp4Decoder=new nL(this)),this[s(980)]?this[s(991)]?t():this[s(455)]()?e("init() and decoderWorker is init error"):this.once(q[s(755)],()=>{const i=s;this[i(949)]()?(this[i(618)](this[i(763)],i(1242)),e(i(1242))):(this.loaded=!0,t())}):xi(mi(this[s(1312)]))?(this[s(1247)]()?this[s(980)]=new Dc(this):this.isWasmUseSThreading()?this[s(980)]=new xc(this):this[s(980)]=new Ic(this),this.once(q.decoderWorkerInit,()=>{const i=s;this[i(949)]()?(this[i(618)](this.TAG_NAME,"init() failed and player is destroyed"),e(i(1242))):(this[i(991)]=!0,t())})):t())})}[xR(822)](t,e={}){return new Promise((s,i)=>{const r=MR;if(!t&&!this[r(1312)][r(1331)])return i("url is empty");this[r(658)]=!1,this[r(1260)]=!0,this[r(622)]=!1,this[r(877)][r(1286)]=os(),!t&&(t=this._opt[r(1331)]),this[r(1312)][r(1331)]=t,this[r(552)](this.TAG_NAME,r(1202)+t),this[r(1287)]&&this[r(1312)].loadingBackground&&this[r(1287)][r(1120)](),this[r(952)]()[r(424)](()=>{const n=r;if(this.debugLog(this[n(763)],n(1255)),this._times.playStart=os(),this._opt[n(566)]&&this[n(1290)](!1),this[n(422)](),this[n(918)](),this[n(679)][n(869)](J[n(1249)],t=>{this.emitError(J.fetchError,t)}),this[n(679)][n(869)](J[n(764)],t=>{const e=n;this[e(1271)](J[e(764)],t)}),this.stream[n(869)](J.webrtcError,t=>{this[n(1271)](J.webrtcError,t)}),this[n(679)][n(869)](J[n(706)],t=>{const e=n;this[e(1271)](J[e(706)],t)}),this[n(679)][n(869)](q[n(1028)],()=>{const t=n;if(!this[t(949)]()&&(this[t(877)][t(556)]=os(),this[t(970)]&&this[t(970)].play(),this[t(1151)](),this.isPlayback()&&this[t(636)]?(this.playback.startCheckStatsInterval(),this.playback[t(831)]()):this[t(722)]()&&this[t(598)]&&this[t(598)].startCheckStatsInterval(),Xi())){const e=Number("1")||1;setTimeout(()=>{const e=t;this.destroy(),console[e(555)](decodeURIComponent(ce)),alert(decodeURIComponent(le)),window[e(750)][e(1106)]()},60*e*60*1e3)}}),$i())return i(decodeURIComponent(le));this[n(679)].fetchStream(t,e),s()})[r(1182)](t=>{i(t)})})}[xR(752)](){return new Promise((t,e)=>{const s=MR;if(this.isPlayback()&&this[s(636)][s(843)]())return this[s(552)](this[s(763)],s(937)),void this.emit(q[s(531)]);this[s(552)](this.TAG_NAME,s(1096)+this[s(1312)][s(741)]),this._opt.pauseAndNextPlayUseLastFrameShow&&this[s(509)]&&this._tempInnerPlayBgobj[s(881)]&&this[s(525)]({loadingBackground:this._tempInnerPlayBgobj[s(881)],loadingBackgroundWidth:this._tempInnerPlayBgobj.loadingBackgroundWidth,loadingBackgroundHeight:this[s(509)][s(472)]}),this[s(822)]()[s(424)](e=>{t(e)})[s(1182)](t=>{e(t)})})}[xR(1024)](){return new Promise((t,e)=>{const s=MR;this[s(638)]()[s(424)](()=>{const e=s;this.video&&this[e(970)][e(1090)](),t()}).catch(t=>{e(t)})})}[xR(1067)](){const t=xR;this[t(669)]&&xi(this[t(857)])&&(this[t(1140)]=this[t(669)])}async _close(){const t=xR;this[t(552)](this[t(763)],t(920)),this._closed=!0,this.video&&(this.video[t(946)](),this[t(970)][t(1049)](!0)),this.loading=!1,this[t(1338)]=!1,this[t(837)]=!1,this.clearCheckLoadingTimeout(),this[t(1294)](),this[t(879)]()&&this[t(636)]&&(this[t(636)].clearStatsInterval(),this.playback[t(983)]()),this[t(722)]()&&this[t(598)]&&this[t(598)][t(1294)](),this[t(823)](),this.resetStats(),this._audioTimestamp=0,this[t(660)]=0,this[t(877)]={playInitStart:"",playStart:"",streamStart:"",streamResponse:"",demuxStart:"",decodeStart:"",videoStart:"",playTimestamp:"",streamTimestamp:"",streamResponseTimestamp:"",demuxTimestamp:"",decodeTimestamp:"",videoTimestamp:"",allTimestamp:""},this.decoderWorker&&(await this[t(980)].destroy(),this[t(980)]=null),this.stream&&(await this.stream.destroy(),this[t(679)]=null),this[t(775)]&&(this[t(775)][t(1064)](),this.demux=null),this[t(1022)]&&(await this.webcodecsDecoder[t(1064)](),this[t(1022)]=null),this[t(577)]&&(this.mseDecoder.destroy(),this.mseDecoder=null),this[t(996)]&&(await this.hlsDecoder[t(1064)](),this[t(996)]=null),this[t(729)]&&(this[t(729)][t(1064)](),this[t(729)]=null),this[t(1195)]&&(this.aliyunRtcDecoder.destroy(),this[t(1195)]=null),this[t(1068)]&&(await this[t(1068)].destroy(),this[t(1068)]=null),this[t(1025)]&&(await this.mp4Decoder[t(1064)](),this[t(1025)]=null),this[t(919)]&&(this.pressureObserverCpu[t(1064)](),this[t(919)]=null),this[t(622)]=!1}pause(t=!1){return new Promise((e,s)=>{const i=MR;t?this[i(1024)]()[i(424)](()=>{e()})[i(1182)](t=>{s(t)}):this[i(638)]()[i(424)](()=>{e()}).catch(t=>{s(t)})})}[xR(623)](){return new Promise((t,e)=>{const s=MR;if(this[s(552)](this[s(763)],s(781)),this[s(1312)][s(741)]&&this.video){const t=this.video[s(885)]("",s(860),.92,"base64");if(t){const e=this.getVideoInfo();e?(this[s(552)](this.TAG_NAME,s(450)+e[s(1001)]+s(617)+e.height),this[s(509)]={loadingBackground:t,loadingBackgroundWidth:e[s(1001)],loadingBackgroundHeight:e.height}):this[s(1204)](this[s(763)],s(1309))}else this[s(1204)](this[s(763)],s(1084))}this[s(1049)]()[s(424)](e=>{t(e)})[s(1182)](t=>{e(t)})})}[xR(576)](){const t=xR;let e=!0;return this[t(1068)]&&(e=this[t(1068)].isMute),e}[xR(1038)](){return!this[xR(576)]()}[xR(1290)](t){const e=xR;this[e(1068)]&&this[e(1068)][e(1290)](t)}[xR(776)](){const t=xR;this[t(970)]&&this[t(970)][t(776)]()}[xR(747)](t,e){const s=xR;this[s(1338)]||(this[s(1046)].setFileName(t,e),this[s(1338)]=!0)}[xR(911)](){return new Promise((t,e)=>{const s=MR;!this[s(1046)]&&e(s(1259)),this[s(1338)]&&(this._opt[s(956)]&&this.decoderWorker&&this[s(980)][s(681)]({key:s(571),value:!1}),this[s(1046)][s(911)]().then(()=>{t()}).catch(t=>{e(t)}))})}[xR(563)](t,e){return new Promise((s,i)=>{const r=MR;!this[r(1046)]&&i(r(1259)),this[r(1338)]?(this[r(858)]()&&this[r(980)]&&this[r(980)][r(681)]({key:"isRecording",value:!1}),this[r(1046)][r(563)](t,e)[r(424)](t=>{s(t)})[r(1182)](t=>{i(t)})):i("recorder is not recording")})}[xR(765)](){const t=xR;let e=!1,s=!1;return Object.keys(this[t(1312)][t(1296)]).forEach(e=>{const i=t;this[i(1312)][i(1296)][e]&&-1===(""+e)[i(436)]("Fn")&&(s=!0)}),(this[t(1312)][t(931)]||s)&&(e=!0),this[t(1312)][t(990)]&&this._opt[t(990)][t(867)]>0&&(e=!0),this[t(879)]()&&(this[t(1312)][t(663)][t(1023)]||this._opt[t(663)][t(1170)])&&(e=!0),this[t(722)]()&&(this[t(1312)][t(756)][t(1023)]||this[t(1312)][t(756)][t(1170)])&&(e=!0),this._opt[t(621)]&&(e=!0),e}[xR(675)](){const t=xR;return xi(this[t(1312)][t(1162)])&&xi(this[t(1312)][t(1054)])}[xR(517)](){const t=xR,e=this[t(1312)];return!this[t(940)]()&&!this.isWebrtcH264()&&xi(e[t(1162)])&&!this.isAliyunRtc()&&!this[t(962)]()&&(e[t(1054)]&&xi(e.useOffscreen)&&e.wcsUseVideoRender||this[t(675)]())}[xR(1109)](){const t=xR;if(xi(this[t(924)])&&xi(this[t(884)])&&this[t(622)]){if(this[t(949)]())return void this.debugWarn(this[t(763)],t(683));if(xi(this[t(567)]()))return void this[t(1204)](this.TAG_NAME,t(444));if(0!==this[t(1077)][t(767)])return void this[t(1204)](this[t(763)],t(1181)+this[t(1077)][t(767)]);const e=this[t(760)].join(",");this[t(1204)](this[t(763)],t(777)+this[t(1077)][t(959)]+t(1009)+this[t(1077)][t(767)]+t(1253)+e+t(905)+this.visibility+t(629)),this.emit(q[t(948)],q[t(594)]),this[t(1117)](q[t(594)])}else this[t(552)](this[t(763)],t(871)+this[t(924)]+t(1188)+this.playing)}[xR(1151)](){const t=xR;this[t(656)]=setInterval(this[t(853)][t(604)],1e3)}[xR(918)](){const t=xR;if(this[t(722)]())return void this[t(552)](this.TAG_NAME,"checkLoadingTimeout and is playVod so return");const e=parseFloat((Math.floor(11*Math[t(505)]())-5)/10),s=this[t(1312)][t(487)]+e;this[t(552)](this.TAG_NAME,t(1199)+this[t(1312)][t(487)]+" and newLoadingTimeout is "+s),this._checkLoadingTimeout=setTimeout(()=>{const e=t;this[e(622)]?this[e(1204)](this.TAG_NAME,"checkLoadingTimeout but loading is "+this[e(1260)]+e(632)+this.playing):this[e(949)]()?this[e(1204)](this[e(763)],e(1313)):(this[e(1204)](this[e(763)],e(1237)+s+" and pause and emit loadingTimeout event"),this.emit(q[e(948)],q[e(487)]),this[e(1117)](q.loadingTimeout))},1e3*s)}[xR(904)](){const t=xR;this[t(1225)]&&(this[t(552)](this[t(763)],"clearCheckLoadingTimeout"),clearTimeout(this._checkLoadingTimeout),this._checkLoadingTimeout=null)}clearStatsInterval(){const t=xR;this[t(656)]&&(this.debugLog(this.TAG_NAME,t(1294)),clearInterval(this[t(656)]),this[t(656)]=null)}[xR(944)](){const t=xR;this[t(949)]()?this.debugLog(this.TAG_NAME,t(1186)):(this[t(1260)]&&(this[t(904)](),this.loading=!1,this[t(1117)](q[t(1126)]),this[t(1117)](q[t(774)]),this[t(1220)](),this[t(1179)]()),!this[t(622)]&&(this[t(622)]=!0))}[xR(1179)](){const t=xR,e=Rs(this[t(1075)]);(e||this.webFullscreen)&&(this.debugLog(this[t(763)],"checkIsFullscreenByInit and isFullScreen is "+e+t(742)+this.webFullscreen),this[t(666)]=!0,this[t(1117)](q.fullScreenByStart))}[xR(1220)](){const t=xR,e=this[t(1077)],s=Object[t(854)]({},e,{audioBuffer:0,audioBufferDelayTs:0,audioTs:this[t(504)],latestAudioTs:this.latestAudioTimestamp,playbackVideoBuffer:0,playbackVideoWaitingBuffer:0,playbackAudioWaitingBuffer:0,playbackCacheDataDuration:0,demuxBuffer:0,pushLatestDelay:0,audioDemuxBuffer:0,streamBuffer:0,mseDelay:0,mseStore:0,mseDecodePlaybackRate:0,msePendingBuffer:0,wcsDecodeDiffTimes:0,wasmDecodeDelay:0,hlsDelay:0,hlsDemuxLength:0,hlsDemuxAudioLength:0,hlsDemuxVideoLength:0,delayTs:0,totalDelayTs:0,isStreamTsMoreThanLocal:!1,videoCurrentTime:0,videoCurrentTimeDiff:-1,audioSyncVideo:0});this.emit(q.stats,s)}[xR(604)](t={}){const e=xR;if(this[e(949)]())return void this[e(552)](this.TAG_NAME,"updateStats but player is closed or destroyed",t);if(!this._startBpsTime&&(this[e(732)]=os(),this._startTimestamp=this[e(732)]),Ws(t.ts)){const s=parseInt(t.ts,10);this[e(1077)].ts=s,this._tempTsList.push(s),null===this._playingStartTimestamp&&s>0&&(this._playingStartTimestamp=s)}Ws(t[e(725)])&&(this[e(1077)][e(725)]=parseInt(t.dts,10)),Ws(t[e(511)])&&(this[e(1077)][e(511)]=t[e(511)]),Ws(t[e(761)])&&(this[e(1077)][e(761)]=t[e(761)]),Ws(t.netBuf)&&(this[e(1077)][e(433)]=t.netBuf),Ws(t[e(620)])&&(this[e(1077)][e(620)]=t.currentPts),t[e(767)]&&(this[e(1077)][e(767)]+=1),Pi(t.dfps)&&(this[e(1077)][e(1268)]+=1),xs(t.dfps)&&(this._stats[e(1268)]=t.dfps),t.p2dfps&&(this._stats.p2dfps+=1),t[e(1283)]&&(this[e(1077)].abps+=t[e(1283)]),t[e(959)]&&(this[e(1077)].vbps+=t[e(959)]),t.workerStats&&(this[e(921)]=t[e(1019)]),t.isDropping&&(this._stats[e(1241)]=t[e(1241)]),t[e(1116)]&&(this[e(1077)][e(1116)]=parseInt(1e3*t[e(1116)],10));const s=os();if(s-this[e(732)]<1e3)return;null!==this[e(730)]&&this[e(1077)].fps>0&&(this[e(1077)][e(1250)]+=1);let i=0,r=0,n=0,o=0;this[e(1194)]()&&this[e(1312)].useMSE&&(this[e(577)]?(i=this[e(577)][e(818)](),i=parseInt(1e3*i,10),r=this.mseDecoder[e(625)](),r=r[e(963)](2),n=this[e(577)][e(891)](),o=this[e(577)][e(1115)]()):this.isMseDecoderUseWorker()&&(i=this[e(970)][e(818)](),i=parseInt(1e3*i,10),r=this[e(970)][e(625)](),r=r[e(963)](2),n=this[e(970)].getDecodePlaybackRate())),this[e(940)]()&&this[e(996)]&&(i=this.hlsDecoder[e(486)](),i=parseInt(1e3*i,10));let a=0,h=0,l=0;this[e(1041)]()&&this.hlsDecoder&&(i=this[e(996)][e(486)](),i=i[e(963)](2),a=this.hlsDecoder[e(1061)](),l=this.hlsDecoder[e(784)](),h=this[e(996)][e(935)]());let c,d=0,u=0,p=0,f=!1,g=0,y=0,A=0,b=0,v=0;if(this[e(858)]()){if(this[e(921)]&&(u=this[e(921)][e(846)]||0,p=this._tempWorkerStats[e(1128)]||0,d=this[e(921)][e(707)]||0,Ws(this[e(921)][e(433)])&&(this[e(1077)][e(433)]=this[e(921)][e(433)]),g=this[e(921)][e(1235)]||0,f=this[e(921)][e(591)]||0,Ws(this[e(921)][e(565)])&&(this[e(1077)][e(761)]=this[e(921)][e(565)]),Ws(this[e(921)].videoBufferDuration)&&(v=this[e(921)].videoBufferDuration),y=this[e(921)][e(771)]||0,Ws(this[e(921)].p2dfps)&&xi(this[e(713)]())&&(this[e(1077)][e(428)]=this[e(921)][e(428)]),b=this[e(921)][e(671)]||0,A=this[e(921)][e(726)]||0),this[e(722)]()&&this[e(775)]){const t=this.demux.getBufferLength();d=this[e(775)][e(1074)]()+this[e(679)][e(1099)](),g=this[e(775)].getPushLatestDelay(),f=this[e(775)].getIsStreamTsMoreThanLocal(),u=t[e(970)],p=t[e(1068)],v=this[e(775)][e(833)]()}}else this.demux&&(d=this[e(775)][e(1074)]()+this[e(679)].getStreamBufferByteLength(),g=this[e(775)][e(758)](),f=this[e(775)][e(1229)](),u=this.demux[e(697)](),p=this[e(775)][e(640)](),v=this[e(775)][e(833)]());this.isUseWCS()&&this[e(1022)]&&(c=this[e(1022)][e(950)]());let S=0,E=0;this.audio&&this[e(1068)][e(925)]&&(S=this.audio[e(925)][e(867)],E=parseInt(S*this[e(1068)][e(809)],10));let w=0,T=0;if(this[e(879)]()){if(this[e(970)]){this[e(1312)].playbackConfig[e(1227)]&&(w=this.video[e(925)]&&this.video[e(925)].length||0);let t=this[e(970)][e(982)]();const s=t>0?1e3/t:0;T=parseInt(s*w+s*u,10)}}else this[e(722)]()&&this[e(970)]&&(w=this[e(970)].bufferList&&this[e(970)][e(925)][e(867)]||0);let I=0;this.videoTimestamp>0&&(I=this[e(1077)][e(725)]-this[e(582)]);const k=I+this[e(1077)][e(433)];this.isOldHls()&&(this._stats.fps=this.hlsDecoder.getFps()),this[e(1077)][e(767)]>this[e(1077)].maxFps&&(this._stats[e(1321)]=this[e(1077)].fps);let _=this[e(1079)]();const C=this[e(1077)][e(599)];let D=-1;C&&_&&(D=_s((_-C)[e(963)](2)),_=_[e(963)](2));let L=0;this[e(504)]>0&&(L=this[e(504)]-this[e(797)]());let R={demuxBuffer:u,audioDemuxBuffer:p,bufferDuration:v,streamBuffer:d,audioSyncVideo:L,gop:this[e(1150)]};if(this[e(1330)]()){R=Object[e(854)](R,{delayTs:I,totalDelayTs:k}),xi(this.isUseMSE())&&(R=Object[e(854)](R,{pushLatestDelay:g,isStreamTsMoreThanLocal:f}));const t=this.getVideoPlaybackQuality();t&&t[e(1279)]&&(R=Object.assign(R,{videoDroppedFps:t.videoDroppedFps,videoDroppedFrames:t.videoDroppedFrames,videoDecodedFrames:t[e(1279)],totalVideoFrames:t.totalVideoFrames,totalDroppedVideoFrames:t.droppedVideoFrames,totalRenderedVideoFrames:t[e(1013)]}))}else this[e(879)]()?R=Object[e(854)](R,{playbackVideoBuffer:w,playbackVideoWaitingBuffer:0,playbackAudioWaitingBuffer:0,playbackCacheDataDuration:T}):this[e(722)]();this.isUseMSE()?xi(this[e(722)]())&&(R=Object[e(854)](R,{mseDelay:i,decodeDelayTs:i,mseStore:r,msePendingBuffer:o,mseDecodePlaybackRate:n})):this[e(713)]()?R=Object.assign(R,{decodeDelayTs:c}):this[e(1306)]()&&(R=Object[e(854)](R,{decodeDelayTs:y,wasmAudioTotalMB:b,wasmVideoTotalMB:A,wasmTotalMB:(Number(A)+Number(b))[e(963)](2)})),this.isOldHls()?R=Object.assign(R,{hlsDelay:i}):this[e(1041)]()&&(R=Object[e(854)](R,{hlsDelay:i,hlsDemuxLength:a,hlsDemuxAudioLength:h,hlsDemuxVideoLength:l})),this[e(510)]()&&(R=Object[e(854)](R,{videoCurrentTime:_,videoCurrentTimeDiff:D})),this[e(1157)]()&&(R=Object[e(854)](R,{audioBuffer:S,audioBufferDelayTs:E,audioTs:this.audioTimestamp,latestAudioTs:this[e(705)]})),this[e(1004)]=Object.assign(this[e(1077)],R);let P=null,x=null,M="";if(this.isPlayer()&&this[e(1312)][e(782)]&&this.playing){P=function(t,e){let s=3;const i=e||25;return t<=i*(1/4)?s=0:t<=.5*i?s=1:t<=i*(3/4)&&(s=2),s}(this._stats[e(767)],this._flvMetaDataFps),this[e(1004)][e(1258)]=P;const t=this[e(578)](this[e(1004)]);M=t[e(1065)],x=t[e(1121)],this[e(1004)][e(1264)]=x}if(this.emit(q[e(1183)],this[e(1004)]),this._allStatsData[e(943)]>this[e(1312)].flvDemuxBufferSizeMaxLarge&&this[e(427)]()===m[e(1175)]&&xi(this.isPlaybackCacheBeforeDecodeForFpsRender())&&this[e(1117)](J[e(1027)],this[e(1004)][e(943)]),this[e(1312)][e(782)]?(this.updateHistoryFpsList(this[e(1077)].fps,this[e(1004)].videoCurrentTimeDiff),Ws(P)&&this[e(1117)](q.performance,P),Ws(x)&&this[e(1117)](q[e(1264)],x,M)):this[e(1312)][e(1131)]&&this.updateHistoryFpsList(this[e(1077)][e(1283)],0),this.isWebrtcByBrowser()&&this[e(622)]&&this[e(1312)].checkWebrtcLowFps&&this[e(760)][e(867)]>=this[e(1312)].checkWebrtcLowFpsDuration){const t=this._historyFpsList.slice(-this[e(1312)][e(470)]);let s=!1,i="";if(this[e(1312)][e(469)]===F[e(476)]){let i=!0;for(let s=0;s<t[e(867)];s++){if(t[s]>this._opt[e(1326)]){i=!1;break}}s=i}else if(this[e(1312)].checkWebrtcLowFpsCalcType===F.average){const r=t[e(1010)]((t,e)=>t+e,0)/t[e(867)];s=r<=this[e(1312)].webrtcLowFps,i=e(895)+r}s&&(this[e(552)](this[e(763)],"webrtc check low fps type is "+this[e(1312)][e(469)]+","+i+e(942)+this._opt[e(1326)]+", and history fps is "+this._historyFpsList[e(932)](",")),this[e(1117)](q[e(1326)],e(1129)))}if(this[e(1077)][e(767)]=0,this._stats[e(1268)]=0,this[e(1077)][e(1283)]=0,this[e(1077)][e(959)]=0,this[e(1077)][e(428)]=0,this[e(847)]=[],this._stats[e(1241)]=!1,this[e(732)]=s,Xi()){const t=s-this[e(1141)];t>60*(Number("1")||1)*60*1e3&&Xi()&&this[e(1064)]()}}resetStartBpsTime(){this[xR(732)]=null}[xR(768)](){const t=xR;this[t(732)]=null,this._playingStartTimestamp=null,this._historyFpsList=[],this[t(587)]=[],this[t(1077)]={buf:0,netBuf:0,fps:0,maxFps:0,dfps:0,p2dfps:0,abps:0,vbps:0,ts:0,mseTs:0,currentPts:0,pTs:0,dts:0,mseVideoBufferDelayTime:0,isDropping:!1},this._allStatsData={},this._tempTsList=[]}[xR(578)](t){const e=xR;let s=!0,i="";if(this[e(1312)].videoBuffer,this[e(1312)][e(466)],this.isWebrtcByBrowser()||this[e(940)]())return{result:s,reason:i};if(0===t[e(959)]&&xi(this[e(1312)][e(508)])&&(i=e(880),this[e(552)](this[e(763)],"checkVideoSmooth false because "+i),s=!1),s&&t[e(1241)]&&(i="isDroppingIsTrue",this[e(552)](this[e(763)],e(1223)+i),s=!1),s&&this[e(977)]&&this[e(760)][e(867)]>=this._opt.heartTimeout){const r=function(t){const e=es;if(!Array.isArray(t)||t[e(581)]<3)return t;const s=Math[e(495)](...t),i=Math[e(627)](...t);let r=!1,n=!1;return t[e(471)](t=>t!==s||r?!(t===i&&!n&&(n=!0,1)):(r=!0,!1))}(this._historyFpsList),n=r[e(1010)]((t,e)=>t+e,0)/r[e(867)],o=.83*n;t[e(767)]<o&&(i="fpsIsLow",this[e(552)](this[e(763)],e(672)+t[e(767)]+e(694)+o+e(783)+n+e(749)+this[e(847)][e(932)](",")),s=!1)}if(s&&this.visibility&&this._opt.useMSE&&(t[e(1325)]>=1.5||t[e(1325)]<=.5)&&-1!==t[e(1325)]){if(i="videoCurrentTimeDiffIsNotNormal",this.debugLog(this[e(763)],e(897)+t[e(1325)]),0===Number(t[e(1325)])){const t=this[e(491)](),s=this[e(1079)](),i=this[e(1288)](),r=JSON.stringify(i);this[e(552)](this[e(763)],e(813)+s+e(825)+t+"\n bufferRangeList is "+r)}s=!1}return{result:s,reason:i}}[xR(422)](){const t=xR;this[t(1312)][t(1047)]&&this[t(1047)]&&this[t(1047)][t(1089)]()}releaseWakeLock(){const t=xR;this[t(1312)][t(1047)]&&this[t(1047)]&&this[t(1047)].disable()}clearBufferDelay(){const t=xR;this[t(1312)][t(956)]?(this.decoderWorker&&this[t(980)][t(1295)](!0),(this[t(1247)]()||this[t(1208)]())&&this[t(775)]&&this[t(775)][t(1238)](!0)):this[t(775)]&&this[t(775)].clearBuffer(!0)}[xR(1251)](){this[xR(1117)](q.beforeDestroy)}[xR(1299)](){const t=xR;if(this[t(949)]())return void this[t(552)](this[t(763)],t(1119));const e=this[t(550)]();this[t(1117)](q[t(647)],e)}[xR(550)](){const t=xR,e=this[t(877)];return e[t(1152)]=e[t(780)]-e.playInitStart,e.streamTimestamp=e[t(955)]-e[t(780)],e.streamResponseTimestamp=e.streamResponse-e.streamStart>0?e[t(556)]-e[t(955)]:0,e.demuxTimestamp=e[t(619)]-e[t(556)]>0?e[t(619)]-e[t(556)]:0,e[t(1228)]=e[t(1218)]-e[t(619)]>0?e[t(1218)]-e[t(619)]:0,e[t(582)]=e[t(1124)]-e[t(1218)],e.allTimestamp=e.videoStart-e.playInitStart,e}getOption(){return this[xR(1312)]}[xR(1135)](){return this[xR(1312)].playType}[xR(1330)](){const t=xR;return this[t(1312)].playType===p[t(1014)]}[xR(879)](){const t=xR;return this[t(1312)][t(736)]===p[t(1262)]}isPlayVod(){const t=xR;return this[t(1312)].playType===p[t(598)]}[xR(606)](){const t=xR;let e=!1;return this[t(722)]()&&this.playVod&&(e=this[t(598)][t(1180)]()),e}[xR(1216)](){const t=xR;let e=!1;return this[t(722)]()&&this[t(598)]&&(e=this[t(598)][t(836)]()),e}[xR(603)](){const t=xR;let e=!1;return this[t(722)]()&&this[t(598)]&&(e=this[t(598)].isEnded()),e}[xR(1247)](){const t=xR;return this[t(1312)][t(956)]&&this[t(1312)][t(805)]}[xR(1208)](){const t=xR;return this[t(1312)].useWasm&&this[t(1312)][t(1300)]}[xR(1194)](){const t=xR;return this.isPlayer()||this[t(879)]()}isDemuxSetCodecInit(){const t=xR;let e=!0,s=this[t(1312)];return s[t(1054)]&&!s[t(454)]?e=!!this[t(1022)]&&this.webcodecsDecoder[t(820)]:s[t(1162)]&&(e=!!this.mseDecoder&&this[t(577)][t(820)]),e}isDemuxDecodeFirstIIframeInit(){const t=xR;let e=!0,s=this[t(1312)];return s[t(1054)]&&!s[t(454)]?e=!!this[t(1022)]&&this[t(1022)][t(1102)]:s[t(1162)]&&(e=!!this[t(577)]&&this[t(577)][t(1102)]),e}[xR(1146)](){const t=xR;let e=!1;return this[t(1068)]&&(e=this.audio[t(1337)]()),e}[xR(457)](){const t=xR;return this[t(1077)][t(1250)]}getRecordingType(){const t=xR;let e=null;return this[t(1046)]&&(e=this[t(1046)][t(709)]()),e}[xR(1339)](){const t=xR;let e=0;return this[t(1338)]&&(e=this[t(1046)][t(1105)]()),e}[xR(611)](){const t=xR;let e=0;return this[t(1338)]&&(e=this[t(1046)][t(968)]()),e}[xR(1219)](){const t=xR;let e="";const s=this[t(938)]();return this[t(882)]()?y.webrtc:this[t(1266)]()?y[t(684)]:this[t(940)]()?y[t(1114)]:this[t(962)]()?y[t(717)]:(s[t(1162)]&&(e+=y[t(498)]+" ",s[t(1198)]&&(e+="worker")),s[t(1054)]&&(e+=y[t(1097)]+" "),s[t(956)]&&(e+=y.wasm+" ",s.useSIMD&&(e+=y[t(878)]+" ",s[t(651)]&&(e+="v2 ")),s.useMThreading&&(e+=y.mt+" ")),s[t(454)]&&(e+=y.offscreen+" "),e)}[xR(427)](){const t=xR;return this._opt[t(688)]}[xR(1088)](){const t=xR;let e="";return this[t(970)]&&(e=this[t(970)][t(709)]()),e}getCanvasRenderType(){const t=xR;let e="";return this.video&&(e=this[t(970)][t(446)]()),e}[xR(1224)](){const t=xR;let e="";return this[t(1068)]&&(e=this[t(1068)][t(795)]()),e}getStreamType(){const t=xR;let e="";return this.stream&&(e=this[t(679)][t(546)]()),e}isStreamTypeNotWorker(){const t=xR;return-1===this[t(546)]()[t(436)](u[t(643)])}getAllStatsData(){return this[xR(1004)]}[xR(994)](){return this._opt.demuxType===m.flv}[xR(645)](){const t=xR;return this._opt[t(688)]===m.m7s}isNakedFlowDemux(){return this[xR(1312)].demuxType===m.nakedFlow}[xR(601)](){const t=xR;return this[t(1312)][t(688)]===m[t(1280)]}[xR(652)](){const t=xR;return this[t(1312)][t(688)]===m.ts}[xR(1190)](){const t=xR;return this[t(1312)][t(688)]===m[t(1340)]}[xR(605)](t){const e=xR;this[e(525)]({showPerformance:t}),this[e(1117)](q.togglePerformancePanel,t)}setScaleMode(t){const e=xR;let s={isFullResize:!1,isResize:!1,aspectRatio:"default"};switch(t=Number(t)){case ht.full:s[e(1053)]=!1,s[e(496)]=!1;break;case ht.auto:s.isFullResize=!1,s[e(496)]=!0;break;case ht.fullAuto:s.isFullResize=!0,s[e(496)]=!0}this[e(525)](s),this.resize(),this[e(1117)](q[e(733)],t)}[xR(1087)](){const t=xR;this[t(1213)](),this[t(1312)][t(593)]>0&&(this[t(552)](this[t(763)],"startVisibilityHiddenTimeout()"),this[t(863)]=setTimeout(()=>{const e=t;this.emit(q[e(863)])},1e3*this[t(1312)][t(593)]))}[xR(1213)](){const t=xR;this[t(912)]&&(this.debugLog(this[t(763)],t(1017)),clearTimeout(this[t(912)]),this[t(912)]=null)}[xR(703)](t){const e=xR;this[e(702)]=t,xi(t)&&this.video&&this.video[e(535)]([])}[xR(432)](t){const e=xR;this[e(1282)]=t,xi(t)&&this[e(970)]&&this[e(970)].addAiContentToCanvas([])}occlusionDetect(t){this[xR(728)]=t}[xR(575)](){const t=xR;this[t(775)]&&this[t(775)][t(575)]&&this[t(775)][t(575)]()}[xR(691)](){const t=xR;this[t(775)]&&this[t(775)][t(691)]&&this[t(775)][t(691)]()}[xR(693)](){const t=xR,e=new Blob([this[t(1143)]]);try{const s=document[t(1051)]("a");s.href=window[t(766)].createObjectURL(e),s[t(533)]=Date[t(1034)]()+t(474),s[t(1319)](),window[t(766)].revokeObjectURL(s[t(1169)])}catch(e){console.error(t(693),e)}}downloadFlvFile(){const t=xR;this[t(775)]&&this[t(775)][t(670)]&&this[t(775)][t(670)]()}[xR(1328)](){const t=xR,e=new Blob([this._tempG711DataList]);try{const s=document[t(1051)]("a");s[t(1169)]=window.URL.createObjectURL(e),s[t(533)]=Date[t(1034)]()+".data",s[t(1319)](),window.URL.revokeObjectURL(s[t(1169)])}catch(e){console[t(555)](t(1328),e)}}hasCacheOnGopBuffer(){const t=xR,e=this.videoIframeIntervalTs,s=this[t(1004)][t(778)],i=this[t(1004)][t(1321)];let r=!1;if(e&&s&&i){r=1e3/i*s>e}return r}[xR(1134)](t=[]){const e=xR;this.video&&this[e(970)][e(1134)](t)}addContentToContainer(t=[]){}[xR(529)](t){const e=xR,s=this[e(546)]();s===u[e(559)]||s===u[e(643)]+" "+u[e(559)]?this.stream.sendMessage(t):this.debugWarn(this.TAG_NAME,"sendWebsocketMessage: stream type is not websocket, current stream type is "+this[e(546)]())}[xR(906)](){const t=xR,e=this._stats;return e[t(959)]>0&&e.fps>0}[xR(516)](t){const e=xR;this[e(1287)]&&this[e(1287)][e(586)]&&(this[e(1287)][e(586)][e(522)]=t)}[xR(513)](){const t=xR;this[t(1287)]&&this.control.$controlHtml&&(this[t(1287)].$controlHtml.innerHTML="")}[xR(740)](t){const e=xR;this.control&&this[e(1287)].toggleControlHtml(t)}[xR(459)](){const t=xR;return!!this[t(1287)]&&this[t(1287)].getControlHtmlIsShow()}[xR(981)](){const t=xR;return this.control?this[t(1287)][t(981)]():null}[xR(1100)](t){const e=xR;this[e(1287)]&&(this[e(1287)][e(870)]?this[e(1287)].updateExtendDom(t):this[e(1287)].addExtendDom({html:t,showBeforePlay:!0}))}[xR(1132)](){const t=xR;this[t(1287)]&&this.control[t(507)]()}[xR(808)](t){this[xR(1287)]&&this.control.toggleExtendDom(t)}[xR(875)](){const t=xR;return!!this[t(1287)]&&this[t(1287)].getExtendDomIsShow()}getExtendHtml(){const t=xR;return this[t(1287)]?this[t(1287)][t(978)]():null}[xR(976)](t){const e=xR;!this.singleWatermark&&(this[e(788)]=new Cn(this)),this[e(788)]&&this[e(788)][e(627)](t)}[xR(661)](){const t=xR;this[t(788)]&&this[t(788)][t(835)]()}getVideoInfo(){let t=null;return this[xR(970)]&&(t=this.video.getVideoInfo()),t}[xR(475)](){const t=xR;let e=null;return this[t(1068)]&&(e=this[t(1068)][t(475)]()),e}[xR(790)](){let t=null;return this[xR(970)]&&(t=this.video.getPlaybackQuality()),t}[xR(1271)](t,e=""){const s=xR;this[s(1117)](q[s(555)],t,e),this[s(1117)](t,e)}updateHistoryFpsList(t,e){const s=xR;this[s(924)]||this[s(722)]()||xi(this.visibility)||(this[s(760)][s(867)]>this[s(1312)][s(1045)]&&(this[s(760)][s(1059)](),this[s(587)][s(1059)]()),this[s(760)][s(1072)](t),this[s(587)][s(1072)](e),this[s(567)]()&&this.checkHeartTimeout$2())}[xR(567)](){const t=xR;let e=!0;if(this[t(760)][t(867)]<this[t(1312)][t(1045)]&&(e=!1),e)for(let s=0;s<this[t(760)][t(867)];s++)if(this[t(760)][s]>0){e=!1;break}if(e)for(let s=0;s<this[t(587)][t(867)];s++)if(this[t(587)][s]>0){e=!1;break}return e}[xR(1041)](){const t=xR;return Pi(this[t(1312)][t(508)])&&Pi(this[t(1312)][t(519)])}[xR(508)](){const t=xR;return Pi(this[t(1312)][t(508)])}[xR(940)](){const t=xR;return Pi(this._opt[t(508)])&&xi(this[t(1312)][t(519)])}[xR(1092)](){const t=xR;return this[t(940)]()&&this[t(996)]&&this[t(996)][t(1056)](),!0}[xR(596)](){const t=xR;return Pi(this[t(1312)][t(596)])}[xR(1149)](){const t=xR;return this[t(596)]()&&xi(this._opt[t(1050)])}[xR(882)](){const t=xR;return this[t(596)]()&&xi(this[t(1312)].isWebrtcH265)}[xR(1050)](){const t=xR;return this[t(596)]()&&Pi(this[t(1312)][t(1050)])}[xR(698)](){const t=xR;return this[t(882)]()||this[t(1266)]()}[xR(1266)](){return Pi(this._opt.isAliyunRtc)}isUseHls265UseMse(){const t=xR;return this[t(1041)]()&&this[t(914)]()}[xR(868)](){const t=xR;return this.getStreamType()===u[t(440)]}[xR(1103)](){const t=xR;return this[t(879)]()&&Pi(this._opt[t(663)][t(1320)])}[xR(798)](){const t=xR;return this.isPlayback()&&Pi(this._opt[t(663)][t(1320)])&&Pi(this._opt.playbackConfig.isUseFpsRender)}[xR(829)](){const t=xR;return this[t(879)]()&&xi(this._opt[t(663)][t(816)])&&Pi(this[t(1312)].playbackConfig[t(1320)])&&Pi(this._opt[t(663)].isUseFpsRender)}[xR(1203)](){const t=xR;return this[t(879)]()&&Pi(this._opt[t(1054)])}[xR(1040)](){const t=xR;return this.isPlayback()&&Pi(this[t(1312)].useMSE)}[xR(922)](){const t=xR;return this[t(879)]()&&Pi(this._opt[t(956)])}[xR(1232)](){const t=xR;return this[t(1330)]()&&Pi(this[t(1312)][t(1162)])}isPlayNotUseMSE(){return this.isPlayer()&&xi(this._opt.useMSE)}isMSEDecodeAudio(){const t=xR;return this[t(1312)].useMSE&&this[t(1312)][t(1244)]}[xR(714)](){const t=xR;return this._opt[t(1054)]&&this[t(1312)].wcsDecodeAudio}[xR(715)](){const t=xR;return this[t(722)]()&&Pi(this[t(1312)][t(1162)])}[xR(962)](){const t=xR;return this[t(1324)]()&&Pi(this[t(1312)].playVodMp4UseSrc)}isPlayVodHlsUseHlsJs(){}[xR(1042)](){const t=xR;return this[t(722)]()&&Pi(this[t(1312)][t(1054)])}[xR(1174)](){const t=xR;return this.isPlayVod()&&Pi(this[t(1312)][t(956)])}[xR(1261)](){const t=xR;return this[t(722)]()&&xi(this[t(1312)][t(1162)])&&xi(this[t(1312)].playVodMp4UseSrc)}isPlayVodNotUseMSE(){const t=xR;return this[t(722)]()&&xi(this[t(1312)].useMSE)}[xR(1324)](){const t=xR;return this.isPlayVod()&&Pi(this[t(1312)][t(700)])}[xR(701)](){const t=xR;return this[t(722)]()||this[t(508)]()||this[t(596)]()||this[t(1266)]()||this.isStreamWebTransport()}getStreamByProtocol(){const t=xR;return this[t(722)]()?t(598):this[t(508)]()?"hls":this[t(596)]()?"webrtc":this[t(1266)]()?t(648):this[t(868)]()?t(1270):void 0}[xR(437)](){const t=xR;return this._opt[t(913)]&&ys()&&this[t(666)]}[xR(936)](){return this[xR(666)]&&this.isMobileFullscreenChangeRotate()}[xR(1323)](){const t=xR;let e=1;return Pi(this[t(879)]())&&this.playback&&(e=this.playback[t(560)]),e}getPlayVodRate(){const t=xR;let e=1;return this[t(722)]()&&this[t(598)]&&(e=this.playVod.rate),e}[xR(602)](){const t=xR;return Pi(this[t(879)]())&&this[t(636)][t(1256)]()&&xi(this.isMSEDecodeAudio())}[xR(1127)](){const t=xR;return Pi(this[t(879)]())&&this[t(636)].isRateLessThanOne()&&xi(this[t(614)]())}[xR(1333)](t){const e=xR,s=new Uint8Array(t);this[e(1143)][e(1072)](s)}[xR(971)](t){const e=xR,s=new Uint8Array(t);this[e(1167)][e(1072)](s)}updateLoadingText(t){const e=xR;this[e(1260)]&&this.control&&this.control[e(1272)](t)}[xR(1079)](){const t=xR;let e=0;return this.video&&(this[t(962)]()?e=this[t(970)][t(1079)]():this.isWebrtcH264()&&this.webrtc?e=this[t(729)][t(1079)]():this[t(1266)]()&&this[t(1195)]?e=this[t(1195)][t(1079)]():this[t(1312)][t(1162)]&&(this[t(577)]?e=this[t(577)][t(1079)]():this.isMseDecoderUseWorker()&&(e=this.video.getVideoCurrentTime()))),e}[xR(844)](){const t=xR;let e=!1;const s=this[t(801)]();return s&&(s[t(1001)]>=3840||s[t(967)]>=2160)&&(e=!0),e}[xR(972)](){const t=xR;let e=null;return this[t(970)]&&(this._opt[t(1162)]?this[t(577)]?e=this[t(577)].getVideoBufferTimeRange():this[t(1177)]()&&(e=this[t(970)][t(972)]()):this[t(882)]()&&this[t(729)]?e=this[t(729)].getVideoBufferTimeRange():this.isAliyunRtc()&&this[t(1195)]&&(e=this[t(1195)].getVideoBufferTimeRange())),e}[xR(1288)](){const t=xR;let e=[];return this[t(970)]&&(this[t(1312)][t(1162)]?this.mseDecoder?e=this[t(577)][t(482)]():this[t(1177)]()&&(e=this.video[t(482)]()):this.isWebrtcH264()&&this[t(729)]?e=this.webrtc.getVideoBufferRangeList():this.isAliyunRtc()&&this[t(1195)]&&(e=this[t(1195)][t(482)]())),e}[xR(491)](){const t=xR;let e=!0;return this.video&&(this[t(1312)][t(1162)]?this[t(577)]?e=this[t(577)][t(491)]():this.isMseDecoderUseWorker()&&(e=this[t(970)][t(491)]()):this[t(882)]()&&this[t(729)]?e=this[t(729)][t(491)]():this[t(1266)]()&&this[t(1195)]&&(e=this[t(1195)].isVideoPlaying())),e}[xR(850)](t,...e){this[xR(1117)](q.memoryLog," ["+t+"] ",...e)}downloadMemoryLog(){const t=xR;this[t(1117)](q[t(1018)])}isInMulti(){return-1!==this._opt.multiIndex}[xR(1026)](){const t=xR;return xi(this[t(1312)][t(678)])&&xi(this._opt[t(993)])&&xi(this[t(1312)][t(793)])&&xi(this._opt.isWebrtcForQiNiu)&&xi(this[t(1312)][t(630)])}[xR(1222)](t){const e=xR;try{this[e(552)](this.TAG_NAME,e(1222),JSON.stringify(t))}catch(s){this[e(552)](this[e(763)],e(1222),t)}if(this[e(655)]=t,this[e(655)]){const t=this._flvMetaData;if(xs(t[e(928)])){const s=Math.floor(1e3*t[e(928)]);if(s>0){const t=s/1e3;this._flvMetaDataFps=t,this.debugLog(this[e(763)],e(1222),e(534),t)}}js(t[e(1131)])&&xi(t[e(1131)])&&(this.debugLog(this.TAG_NAME,e(1222),e(1243),t[e(1131)],e(423)),this[e(1312)].hasAudio=t[e(1131)]),js(t[e(782)])&&xi(t.hasVideo)&&this[e(552)](this[e(763)],e(1222),e(649),t[e(782)]),t[e(1029)]&&(this[e(1070)]=(t.server+"").substring(0,13)),t.MetaDataCreator&&(this._serverInfo=t[e(969)])}this[e(1117)](q[e(900)],t)}[xR(1037)](){return this[xR(655)]}[xR(634)](){const t=xR;if(!this[t(1287)])return[];return this.control.getExtendBtnList()[t(743)](e=>{const s=t;return{name:e[s(686)],$container:e[s(1002)],$btn:e[s(543)],$activeBtn:e.$activeIconWrap}})}getCpuLevel(){const t=xR;let e=null;return this.pressureObserverCpu&&(e=this.pressureObserverCpu[t(479)]()),e}[xR(471)](){const t=xR;return this.recorder&&this[t(1312)].recordType===f[t(1175)]}[xR(595)](){const t=xR;return this[t(1046)]&&this[t(1312)][t(532)]===f.mp4}[xR(737)](){const t=xR;return this.recorder&&this[t(1312)][t(532)]===f[t(443)]}[xR(858)](){const t=xR;return this[t(1312)][t(956)]||this[t(1312)].demuxUseWorker}[xR(914)](){return Pi(this._opt.useMSE)}[xR(713)](){return Pi(this[xR(1312)].useWCS)}[xR(1306)](){const t=xR;return Pi(this[t(1312)][t(956)])}isMseDecoderUseMain(){const t=xR;return this[t(914)]()&&xi(this[t(1312)][t(1198)])}[xR(1177)](){const t=xR;return this.isUseMSE()&&Pi(this[t(1312)][t(1198)])}isBindVideo(){const t=xR;return this[t(914)]()||this[t(882)]()||this.isAliyunRtc()||this[t(962)]()}isAudioUseAudioContext(){const t=xR;let e=!0;return this[t(1068)]&&this[t(1068)][t(795)]()===t(1068)&&(e=!1),e}getAudioSyncVideoDiff(){const t=xR;return this[t(504)]-this[t(797)]()}[xR(1118)](){const t=xR;return{video:this.getRenderCurrentPts(),audio:this[t(504)]}}[xR(1230)](){const t=xR;let e=0;return this[t(1312)][t(1162)]&&this.mseDecoder&&(this.mseDecoder?e=this.mseDecoder.getVideoBufferDelayTime():this[t(1177)]()&&(e=this[t(970)].getVideoBufferDelayTime()),e=parseInt(1e3*e,10)),e}[xR(1214)](t){const e=xR;this.updateStats({currentPts:t}),this.emit(q[e(620)],t),this[e(1210)](t)}emitVideoSei(t){const e=xR;this[e(1117)](q[e(490)],t),this[e(1113)][e(1072)](t)}[xR(1210)](t){const e=xR;if(0===this[e(1113)].length||xi(this[e(1312)][e(589)]))return;const s=1e3*this[e(1312)][e(896)],i=t-s,r=t+s,n=[];this._seiList[e(973)](s=>{const o=e;s.ts>=i&&s.ts<=r&&(s[o(998)]=t,n[o(1072)](s))}),n[e(973)](t=>{this[e(1117)](q.videoSEISyncPts,t)}),this[e(1113)]=this[e(1113)][e(1163)](t=>t.ts>r)}[xR(1012)](t){this[xR(1117)](q.tsPrivateData,t)}[xR(797)](){const t=xR;let e=0;return this[t(914)]()&&xi(this._opt[t(1316)])?this[t(1077)][t(620)]:(e=this._stats.currentPts?this._stats[t(620)]:this[t(582)]-this.getMseVideoBufferDelayTime(),e)}[xR(792)](){const t=xR;return this[t(1312)][t(927)]&&this[t(1312)][t(782)]}showTipsMessageByCode(t){const e=xR;if(this[e(1287)]){const s=this._opt.showMessageConfig[t]||"";this[e(1287)][e(557)](s,t)}}[xR(553)](t){const e=xR;this[e(1287)]&&t&&this.control[e(557)](t)}[xR(557)](t="",e){const s=xR;this.control&&this[s(1287)][s(557)](t,e)}[xR(1104)](){const t=xR;this[t(1287)]&&this[t(1287)][t(1104)]()}[xR(909)](){const t=xR;Pi(this[t(1312)][t(828)])&&(this[t(577)]?this.mseDecoder[t(1102)]=!1:this[t(1022)]?this.webcodecsDecoder[t(1102)]=!1:this.isUseWASM()&&this.decoderWorker&&this.decoderWorker[t(909)]())}[xR(588)](){return this[xR(483)]&&this.isOldHls()}[xR(518)](t){const e=xR;this.control&&this.control[e(554)](t)}[xR(1021)](t){const e=xR;this[e(525)]({rotate:t}),this[e(776)]()}[xR(1187)](){this[xR(473)]=!0}[xR(515)](){const t=xR;let e={};return this[t(577)]&&(e=this[t(577)][t(894)]()),e}[xR(1154)](){const t=xR;return this[t(1312)].videoBuffer+this[t(1312)][t(466)]}[xR(954)](){const t=xR;return!this[t(970)]||this[t(970)].getReadyStateInited()}[xR(1030)](){const t=xR;this[t(1287)]&&this.control[t(1030)]()}[xR(1003)](t,e){const s=xR;this.control&&this[s(1287)][s(1231)](t,e)}getControlExtendBtnActive(t){const e=xR;let s=!1;return this.control&&(s=this.control[e(910)](t)),s}[xR(824)](){const t=xR;return this[t(1312)][t(1131)]&&(this[t(888)]()||this[t(527)]())}[xR(888)](){const t=xR;return this[t(1312)][t(1054)]&&this[t(1312)][t(637)]}[xR(527)](){const t=xR;return this[t(1312)][t(956)]&&this[t(1312)][t(864)]}[xR(1267)](){const t=xR,e=this[t(1312)][t(720)],s=this[t(1312)][t(1093)];let i=e&&!s;return i&&this.control&&(i=this[t(1287)][t(465)]()),i}getControlBarShow(){const t=xR;let e=!1;return this[t(1287)]&&(e=this[t(1287)][t(465)]()),e}[xR(1015)](t){const e=xR;this[e(1287)]&&(this[e(1287)][e(745)](t),this.resize())}[xR(552)](t,...e){const s=xR;this[s(1312)][s(1172)]&&this[s(1172)]&&this[s(1172)][s(501)](t,...e)}[xR(1204)](t,...e){const s=xR;this._opt[s(1172)]&&this.debug&&this[s(1172)][s(908)](t,...e)}[xR(618)](t,...e){this.debug&&this.debug.error(t,...e)}getRenderElement(){const t=xR;let e=null;return this.video&&(e=this[t(970)][t(1192)]),e}[xR(1335)](t=!0){const e=xR;let s=0;return(this[e(1267)]()||xi(t))&&(this[e(1330)]()?s=this[e(1312)][e(711)]===E[e(803)]?30:38:this[e(879)]()?this.playback[e(883)]()?s=48:this[e(636)][e(997)]()&&(s=38):this[e(722)]()&&(s=38)),s}getHistoryVideoDiffList(){return this[xR(587)]}isLastVideoDiffIsZero(){const t=xR,e=this[t(1281)]();return e[t(867)]>1&&0===e[e[t(867)]-1]&&0===e[e[t(867)]-2]}getShowVideoRect(){const t=xR;let e=this[t(1001)],s=this.height;const i=this[t(1335)]();return this[t(1301)]()&&this[t(666)]?e-=i:s-=i,{width:e,height:s}}[xR(1301)](){const t=xR;return ys()&&(this[t(1312)].useWebFullScreen||this[t(1312)][t(590)])}[xR(524)](t){const e=xR;this[e(525)]({controlSize:t}),this.control&&this.control[e(524)](),this[e(776)]()}[xR(464)](){let t=!1;return this.isPlayback()&&(t=this._isStreamEnd),t}isCheckStreamEnd(){const t=xR;let e=!0;return this[t(879)]()&&xi(this[t(1312)][t(434)])&&(e=!1),e}[xR(794)](){const t=xR;let e=0;return this[t(858)]()?this[t(921)]&&(e=this[t(921)][t(846)]):this[t(775)]&&(e=this[t(775)][t(786)]()),e}getCanvasVideoBufferLength(){const t=xR;let e=0;return this[t(970)]&&(e=this[t(970)][t(786)]()),e}[xR(930)](){const t=xR;this[t(552)](this[t(763)],t(930)),this[t(1305)]=!0}[xR(748)](){const t=xR;return xi(this[t(879)]())?0:this[t(775)]?this[t(775)][t(898)]():this[t(858)]()&&this._tempWorkerStats?this[t(921)][t(849)]:0}getWebrtcVideo(){const t=xR;let e=null;return this[t(729)]&&(e=this[t(729)].$videoElement),e}getWebrtcVideoCodec(){const t=xR;let e=et[t(699)];return this[t(729)]&&this[t(729)][t(425)]&&(e=this[t(729)][t(425)]()),e}[xR(677)](t){const e=xR;this[e(1173)]&&this[e(787)](),this[e(1173)]=new hR(this,t),this[e(1173)][e(832)]()}updateGhostWatermark(t){const e=xR;this[e(1322)]&&this[e(1197)]();const s=Object[e(854)]({},t,{isGhost:!0});this[e(1322)]=new hR(this,s),this.ghostWatermark.startAndResize()}[xR(787)](){const t=xR;this[t(1173)]&&(this[t(1173)][t(1064)](),this[t(1173)]=null)}[xR(1197)](){const t=xR;this[t(1322)]&&(this[t(1322)][t(1064)](),this[t(1322)]=null)}[xR(770)](){const t=xR;return{debug:this._opt[t(1172)],debugLevel:this[t(1312)].debugLevel,debugUuid:this._opt[t(1289)],useOffscreen:this[t(1312)][t(454)],useWasm:this[t(1312)][t(956)],useWCS:this[t(1312)].useWCS,useMSE:this._opt.useMSE,videoBuffer:this[t(1312)][t(1275)],videoBufferDelay:this[t(1312)][t(466)],openWebglAlignment:this._opt[t(659)],playType:this[t(1312)][t(736)],hasAudio:this[t(1312)].hasAudio,hasVideo:this[t(1312)][t(782)],playbackRate:1,playVodRate:1,playbackFps:this[t(1312)].playbackConfig[t(767)],playbackAutoCalcFps:this._opt[t(663)][t(1159)],playbackForwardMaxRateDecodeIFrame:this._opt[t(445)],calcPlaybackForwardMaxRateDecodeIFrame:this[t(1312)][t(1298)],playbackIsCacheBeforeDecodeForFpsRender:this[t(1312)][t(663)].isCacheBeforeDecodeForFpsRender,sampleRate:this[t(1068)]&&this[t(1068)].getAudioContextSampleRate()||se,audioBufferSize:this[t(1068)]&&this[t(1068)][t(827)]()||1024,networkDelay:this[t(1312)][t(789)],visibility:this.visibility,useSIMD:this[t(1312)][t(1239)],useMThreading:this[t(1312)][t(805)],useSThreading:this._opt[t(1300)],isFFmpegSIMD:this[t(1312)][t(651)],recordType:this[t(1312)][t(532)],checkFirstIFrame:this[t(1312)][t(828)],isM7sCrypto:this[t(1312)][t(692)],isXorCrypto:this[t(1312)][t(439)],isSm4Crypto:this._opt[t(635)],isSm4CryptoH265V2:this._opt[t(570)],sm4CryptoKey:this[t(1312)][t(800)],isCryptoAudio:this[t(1312)][t(467)],isFlv:this[t(1312)][t(1171)],isFmp4:this._opt[t(700)],isMpeg4:this[t(1312)][t(759)],isTs:this[t(1312)].isTs,isPs:this[t(1312)].isPs,isDHav:this[t(1312)].isDHav,isNakedFlow:this[t(1312)].isNakedFlow,isHls265:this[t(1041)](),isEmitSEI:this[t(1312)][t(589)],isRecordTypeFlv:this[t(471)](),isWasmMp4:this[t(1046)]&&this[t(1046)][t(718)]()||!1,isChrome:oi(),isFirefox:vs(),supportMSEDecodeHevc:Ms(),isDropSameTimestampGop:this[t(1312)][t(542)],mseDecodeAudio:this[t(1312)][t(1244)],wcsDecodeAudio:this[t(1312)][t(637)],nakedFlowH265DemuxUseNew:this[t(1312)][t(1221)],mseDecoderUseWorker:this[t(1312)][t(1198)],mseAutoCleanupMinBackwardDuration:this._opt[t(902)],mseAutoCleanupMaxBackwardDuration:this._opt[t(979)],mseCorrectTimeDuration:this[t(1312)][t(886)],mseCorrectAudioTimeDuration:this[t(1312)][t(1066)],nakedFlowDemuxUseNew:this[t(1312)][t(628)],nakedFlowFps:this._opt[t(451)],checkStreamEnd:this[t(1063)](),websocketOpenTimeout:this[t(1312)][t(1196)],correctionConfigurationProfileIndication:this[t(1312)][t(609)],correctionConfigurationLevelIndication:this[t(1312)][t(1094)],demuxFlvUseV2:this[t(1312)][t(615)],demuxPsUseV2:this[t(1312)][t(477)],wasmSimdFirstFrameDecodeDelayTimeout:this[t(1312)][t(958)],delayFrameChasingPolicy:this[t(1312)][t(1269)],delayFrameAccelerateDecodeMaxNum:this[t(1312)].delayFrameAccelerateDecodeMaxNum,isEmitTsPrivateData:this[t(1312)][t(1081)],tsVideoTrackIndex:this._opt.tsVideoTrackIndex,tsAudioTrackIndex:this[t(1312)].tsAudioTrackIndex}}[xR(1168)](t){return new Promise((e,s)=>{const i=MR;t=this.isPlaybackPauseNotClearCacheAndCacheBeforeDecodeAndUseFpsRender()?as(Number(t),.1,16):as(Number(t),1,16);const r=this.getPlaybackRate();if(t===r)return e();xi(this[i(914)]())&&this[i(636)][i(1256)]()&&t<=this[i(636)][i(1145)]&&(this[i(552)](this.TAG_NAME,i(1274)+t+i(449)+r+", isRateMoreThanMaxRate and less than calcPlaybackForwardMaxRateDecodeIFrame "+this[i(636)][i(1298)]+i(610)),this[i(909)]()),this[i(980)]&&this[i(980)].updateWorkConfig({key:i(739),value:t}),this[i(636)].setRate(t),this[i(970)]&&this[i(970)][i(975)](t),this[i(1068)]&&this[i(1068)][i(975)](t),e()})}[xR(1246)](){return new Promise((t,e)=>{const s=MR;if(!this[s(829)]())return e(s(548));if(this[s(924)]&&this.isInPlayNextIFrameStatus())return e(s(704));if(this[s(1091)]=!0,!this[s(924)]&&(this[s(924)]=!0),this.isPlaybackUseMSE()){let e=this[s(1079)]();return e+=1/this[s(429)](),this[s(970)][s(939)](e),t()}return this[s(1117)](q[s(1246)]),t()})}[xR(861)](){return new Promise((t,e)=>{const s=MR;return this[s(924)]&&this.isInPlayNextIFrameStatus()?e(s(1245)):xi(this[s(1215)]())?e(s(561)):(this.playbackResumeInner(),void t())})}playbackNextIFrame(){return new Promise((t,e)=>{const s=MR;if(!this[s(829)]())return e("playbackNextIFrame is not support, please set isPlaybackPauseClearCache false, isCacheBeforeDecodeForFpsRender true and isUseFpsRender true");if(this[s(924)]&&this[s(1215)]())return e(s(988));this.isInPlayNextFrame=!0,this[s(1166)]=!0,!this[s(924)]&&(this[s(924)]=!0);let i=null;if(this[s(1040)]()){let e=this.getVideoCurrentTime();return i=e+this._opt[s(674)],this[s(552)](this[s(763)],"playbackNextIFrame() and current time is "+e+s(512)+i+"s"),this[s(970)][s(939)](i),t()}const r=this[s(797)]();return i=r+1e3*this[s(1312)].playbackNextIFrameDuration,this.debugLog(this.TAG_NAME,s(453)+r+s(890)+i+"ms"),this[s(1117)](q[s(1122)],i),t()})}[xR(1184)](){return new Promise((t,e)=>{const s=MR;return this.playbackPause&&this[s(1215)]()?e("playbackExitNextIFrameAndPlay() is in playbackNextFrame status, please exit playbackNextFrame first"):xi(this[s(989)]())?e(s(626)):(this[s(1020)](),this.isInPlayNextIFrame&&(this[s(1166)]=!1,this[s(980)]&&this.decoderWorker.exitPlaybackNextIFrame()),void t())})}[xR(429)](){const t=xR;let e=0;return this.playback&&(e=this.playback[t(484)]()),e}[xR(1020)](){const t=xR;this[t(1091)]&&(this[t(1091)]=!1,this[t(980)]&&this[t(980)][t(581)]()),this[t(924)]=!1}[xR(907)](){return new Promise((t,e)=>{const s=MR;return this[s(598)]?this[s(606)]()?e(s(654)):(this[s(884)]=!0,void t()):e(s(762))})}[xR(806)](){return new Promise((t,e)=>{const s=MR;return this.playVod?this[s(606)]()?e(s(654)):(this.isInPlayNextFrame&&(this.isInPlayNextFrame=!1,this.decoderWorker&&this[s(980)][s(1303)]()),this[s(884)]=!1,void t()):e("playVod is null")})}[xR(592)](t){return new Promise((e,s)=>{const i=MR;if(!this[i(598)])return s(i(762));if(this.isPlayVodSeeking())return s(i(654));t=as(Number(t),.1,16);const r=this[i(1031)]();if(t===r)return e();xi(this[i(914)]())&&xi(this[i(962)]())&&this[i(598)][i(1033)]()&&t<=this[i(598)][i(1085)]&&(this[i(552)](this.TAG_NAME,i(1086)+t+", currentRate is "+r+i(682)+this[i(598)][i(1085)]+i(610)),this[i(909)]()),this[i(980)]&&this.decoderWorker[i(681)]({key:i(1136),value:t}),this[i(598)][i(975)](t),this[i(970)]&&this[i(970)][i(975)](t),this[i(1068)]&&this.audio.setRate(t),e()})}[xR(734)](t){return new Promise((e,s)=>{const i=MR;return this[i(598)]?this[i(606)]()?s(i(654)):this[i(598)][i(843)]()?(this.debugLog(this[i(763)],i(1155)+t+i(580)),void this.emit(q[i(999)],t)):(this.playVodPause=!1,this[i(598)][i(572)]({time:t}),this.recording&&(this[i(552)](this[i(763)],i(673)),this[i(1338)]=!1),void e()):s("playVod is null")})}playVodForwardJumping(t){return new Promise((e,s)=>{const i=MR;if(!this[i(598)])return s("playVod is null");if(this[i(606)]())return s(i(654));let r=this[i(797)]()/1e3;(this.isPlayVodUseMSE()||this.isPlayVodMp4UseVideoSrc())&&(r=this[i(1079)]()),this[i(734)](r+t)[i(424)](()=>{e()})[i(1182)](t=>{s(t)})})}playVodBackwordJumping(t){return new Promise((e,s)=>{const i=MR;if(!this[i(598)])return s(i(762));if(this.isPlayVodSeeking())return s(i(654));let r=this[i(797)]()/1e3;(this[i(715)]()||this.isPlayVodMp4UseVideoSrc())&&(r=this[i(1079)]()),this[i(734)](r-t)[i(424)](()=>{e()}).catch(t=>{s(t)})})}[xR(821)](){return new Promise((t,e)=>{const s=MR;if(this[s(884)]&&this[s(989)]())return e("playVodNextFrame() is in playVodNextIFrame status, please exit playVodNextIFrame first");if(this[s(1091)]=!0,!this[s(884)]&&(this[s(884)]=!0),this.isPlayVodMp4UseVideoSrc()||this[s(715)]()){let e=this[s(1079)]();return e+=1/this[s(1276)](),this.video[s(939)](e),t()}return this[s(1117)](q[s(821)]),t()})}[xR(1310)](){return new Promise((t,e)=>{const s=MR;return this[s(884)]&&this.isInPlayNextIFrameStatus()?e(s(1314)):xi(this[s(1215)]())?e(s(633)):void this[s(806)]()[s(424)](()=>{t()})[s(1182)](t=>{e(t)})})}[xR(1007)](){return new Promise((t,e)=>{const s=MR;if(this[s(884)]&&this[s(1215)]())return e(s(785));if(this[s(606)]())return e(s(540));this[s(1091)]=!0,this[s(1166)]=!0,!this[s(884)]&&(this[s(884)]=!0);let i=null;if(this[s(962)]()||this.isPlayVodUseMSE()){let r=this[s(1079)]();return i=r+this[s(1312)][s(848)],i>this.getPlayVodDuration()?e(s(1278)):(this.debugLog(this.TAG_NAME,s(852)+r+s(512)+i+"s"),this[s(970)].setCurrentTime(i),t())}const r=this.getRenderCurrentPts();return i=r+1e3*this[s(1312)][s(848)],i>1e3*this[s(1008)]()?e(s(1278)):(this.debugLog(this.TAG_NAME,"playVodNextIFrame and current time is "+r+"ms, nextIFrameTime: "+i+"ms"),this[s(1117)](q[s(1007)],i),t())})}[xR(1062)](){return new Promise((t,e)=>{const s=MR;return this[s(884)]&&this[s(1215)]()?e(s(1297)):xi(this[s(989)]())?e(s(549)):void this[s(806)]()[s(424)](()=>{const e=s;this[e(1166)]&&(this[e(1166)]=!1,this[e(980)]&&this[e(980)][e(585)]()),t()}).catch(t=>{e(t)})})}getPlayVodDuration(){const t=xR;return this[t(598)]?this[t(598)][t(665)]:0}[xR(708)](){const t=xR;return this.playVod?this[t(598)].getCurrentTime():0}[xR(431)](){const t=xR;return this[t(598)]?this[t(598)][t(916)]():0}setPlayVodBufferedTime(t){const e=xR;this.playVod&&this.playVod[e(840)](t)}getPlayVodFps(){const t=xR;return this.playVod?this[t(598)][t(767)]:0}[xR(899)](){const t=xR;return!this[t(753)]&&(this._i18n=Object[t(854)]({},bR,this[t(1312)].i18n||{})),this[t(753)]}[xR(1189)](){const t=xR;let e={width:0,height:0};return window.screen?(e.width=window[t(1161)].width,e[t(967)]=window[t(1161)].height,e):e}[xR(1138)](){const t=xR,e=this[t(1189)]();return e[t(1001)]>e[t(967)]}[xR(1302)](){const t=xR,e=this.getWindowScreenInfo();return e[t(1001)]<e[t(967)]}[xR(1318)](){const t=xR;return{correctionConfigurationProfileIndication:this[t(1312)].correctionConfigurationProfileIndication,correctionConfigurationVersion:this._opt[t(642)]}}[xR(815)](){const t=xR;return this[t(729)]?this[t(729)].getPlatform():""}[xR(455)](){const t=xR;let e=!1;return this[t(980)]&&(e=this[t(980)][t(456)]),e}[xR(1285)](){this[xR(1312)].hasAudio=!1}[xR(545)](){}[xR(1293)](){}[xR(1215)](){const t=xR;return Pi(this[t(1091)])&&xi(this[t(1166)])}isInPlayNextIFrameStatus(){return Pi(this[xR(1091)])&&Pi(this.isInPlayNextIFrame)}[xR(435)](t){return new Promise((e,s)=>{const i=MR;if(!this.vr)try{this.vr=new PR(this)}catch(t){return s(t)}this.vr.enterVr(t)[i(424)](()=>{e()})[i(1182)](t=>{s(t)})})}exitVr(){return new Promise((t,e)=>{const s=MR;if(!this.vr)return e(s(1101));this.vr[s(608)]()[s(424)](()=>{t()})[s(1182)](t=>{e(t)})})}[xR(485)](t,e){return new Promise((s,i)=>{const r=MR;if(!this.vr)return i(r(1101));this.vr.lookAt(t,e)[r(424)](()=>{s()})[r(1182)](t=>{i(t)})})}[xR(1110)](t){return new Promise((e,s)=>{const i=MR;if(!this.vr)return s(i(1101));this.vr[i(992)](t)[i(424)](()=>{e()}).catch(t=>{s(t)})})}vrLookAt(t,e){return new Promise((s,i)=>{const r=MR;if(!this.vr)return i(r(1101));this.vr[r(485)](t,e)[r(424)](()=>{s()})[r(1182)](t=>{i(t)})})}isEnterVr(){const t=xR;let e=!1;return this.vr&&(e=this.vr[t(607)]()),e}vrRenderFrame(t,e){const s=xR;this.vr&&this.vr[s(1226)](t,e)}[xR(690)](){return new Promise((t,e)=>{const s=MR;if(!this.vr)return e("vr is not defined");this.vr.enableSensor()[s(424)](()=>{t()}).catch(t=>{e(t)})})}[xR(523)](t){return new Promise((e,s)=>{const i=MR;if(!this.vr)return s(i(1101));this.vr.setGyroMode(t)[i(424)](()=>{e()}).catch(t=>{s(t)})})}}var UR=OR;function OR(t,e){var s=VR();return(OR=function(t,e){return s[t-=305]})(t,e)}!function(t){for(var e=OR,s=t();;)try{if(948698===-parseInt(e(371))/1*(-parseInt(e(389))/2)+parseInt(e(312))/3*(-parseInt(e(380))/4)+-parseInt(e(378))/5+parseInt(e(368))/6+parseInt(e(345))/7*(parseInt(e(396))/8)+parseInt(e(318))/9*(-parseInt(e(306))/10)+parseInt(e(327))/11)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(VR);class NR{constructor(t){var e=OR;this[e(384)]=t,this[e(334)]=null;const s=Cs();this[e(369)]={watermark_id:e(321)+s,watermark_prefix:e(347)+s,watermark_txt:e(325),watermark_x:0,watermark_y:0,watermark_rows:0,watermark_cols:0,watermark_x_space:100,watermark_y_space:100,watermark_font:e(305),watermark_color:e(377),watermark_fontsize:"18",watermark_alpha:.15,watermark_angle:-15,watermark_parent_width:0,watermark_parent_height:0,watermark_parent_node:null},Xi()&&this[e(356)]({text:decodeURIComponent(I+"%20%E4%BD%93%E9%AA%8C"),color:e(350)}),this.player[e(395)]("Watermark",e(367))}[UR(382)](){var t=UR;this[t(360)](),this.globalSetting=null,this[t(369)]=null,this.player[t(395)](t(329),t(382))}[UR(403)](){var t=UR;Yi()&&(this[t(334)]=null,this[t(360)]())}[UR(356)](t){var e=UR;this[e(334)]=t,this[e(336)](t)}[UR(392)](){var t=UR;this.player.debugLog(t(329),"resize()"),this[t(334)]&&this._loadMark(this[t(334)])}[UR(336)](){var t=UR;let e=this[t(369)];if(1===arguments[t(320)]&&typeof arguments[0]===t(404)){var s=arguments[0]||{};for(let t in s)s[t]&&e[t]&&s[t]===e[t]||(s[t]||0===s[t])&&(e[t]=s[t])}var i=document[t(343)](e.watermark_id);i&&i[t(370)]&&i[t(370)].removeChild(i);var r=typeof e[t(323)]===t(388)?document[t(343)](e[t(323)]):e[t(323)],n=r||document[t(363)];const o=n.getBoundingClientRect();var a=Math[t(330)](n[t(406)],n[t(366)],o[t(322)]),h=Math.max(n[t(344)],n[t(391)],o[t(357)]),l=arguments[0]||{},c=n;(l[t(310)]||l[t(351)])&&c&&(e[t(332)]=e[t(332)]+0,e[t(364)]=e[t(364)]+0);var d=document[t(343)](e[t(393)]),u=null;if(d)d[t(341)]&&(u=d[t(341)]);else{(d=document[t(405)](t(365))).id=e[t(393)],d[t(385)](t(309),t(346)),u=typeof d.attachShadow===t(352)?d[t(359)]({mode:t(372)}):d;var p=n[t(337)],f=Math[t(379)](Math[t(333)]()*(p[t(320)]-1))+1;p[f]?n[t(339)](d,p[f]):n[t(307)](d)}const m=this[t(348)](),g=m[t(322)],y=m[t(357)];e.watermark_cols=parseInt((a-e[t(332)])/(g+e[t(349)]))||1;var A,b=parseInt((a-e[t(332)]-g*e.watermark_cols)/e[t(331)]);e[t(349)]=b?e[t(349)]:b,e[t(381)]=parseInt((h-e[t(364)])/(y+e[t(376)]))||1;var v,S,E,w=parseInt((h-e.watermark_y-y*e[t(381)])/e[t(381)]);e[t(376)]=w?e.watermark_y_space:w,r?(A=e[t(332)]+g*e[t(331)]+e.watermark_x_space*(e[t(331)]-1),v=e[t(364)]+y*e[t(381)]+e[t(376)]*(e[t(381)]-1)):(A=0+e[t(332)]+g*e[t(331)]+e[t(349)]*(e[t(331)]-1),v=0+e.watermark_y+y*e.watermark_rows+e.watermark_y_space*(e[t(381)]-1));for(var T=0;T<e.watermark_rows;T++){E=r?0+e[t(364)]+(h-v)/2+(e[t(376)]+e[t(400)])*T:e.watermark_y+(h-v)/2+(e[t(376)]+e.watermark_height)*T;for(var I=0;I<e.watermark_cols;I++){S=r?0+e[t(332)]+(a-A)/2+(g+e[t(349)])*I:e[t(332)]+(a-A)/2+(g+e[t(349)])*I;var k=document.createElement(t(365)),_=document[t(401)](e.watermark_txt);k[t(307)](_),k.id=e[t(319)]+T+I,k[t(309)][t(314)]=t(361)+e[t(374)]+t(390),k[t(309)][t(311)]=t(361)+e[t(374)]+t(390),k[t(309)][t(386)]=t(361)+e[t(374)]+t(390),k[t(309)].OTransform=t(361)+e[t(374)]+t(390),k.style[t(316)]=t(361)+e[t(374)]+t(390),k[t(309)][t(317)]="",k[t(309)][t(383)]=t(308),k.style[t(324)]=S+"px",k[t(309)][t(353)]=E+"px",k[t(309)].overflow=t(326),k.style[t(387)]=t(358),k[t(309)].opacity=e[t(338)],k[t(309)][t(313)]=e[t(375)]+"px",k.style[t(373)]=e[t(407)],k[t(309)][t(342)]=e[t(315)],k[t(309)].textAlign=t(335),k[t(309)][t(322)]=g+e.watermark_x_space+"px",k[t(309)].height=y+e[t(376)]+"px",k[t(309)][t(397)]="block",k[t(309)]["-ms-user-select"]=t(354),u[t(307)](k)}}}[UR(360)](){var t=UR;const e=this[t(369)];var s=document[t(343)](e.watermark_id);if(s){var i=s[t(370)];i&&i[t(394)](s)}}[UR(348)](){var t=UR;let e=this[t(334)].watermark_txt||this[t(369)][t(399)],s=this.globalSetting.watermark_font||this[t(369)][t(407)],i=this.globalSetting[t(375)]||this[t(369)][t(375)];const r=document[t(405)](t(398));r[t(402)]=e,r.setAttribute(t(309),t(328)+s+t(362)+i+t(340)),document.querySelector(t(363))[t(307)](r);const n={width:r.offsetWidth,height:r[t(355)]};return r.remove(),n}}function VR(){var t=["height","9999999","attachShadow","_removeMark","rotate(","; font-size: ","body","watermark_y","div","clientWidth","int","7228458VnfLPC","defaultSettings","parentNode","109wqFLln","open","fontFamily","watermark_angle","watermark_fontsize","watermark_y_space","black","6301215IuuKTU","floor","1145168gXSIyH","watermark_rows","destroy","position","player","setAttribute","msTransform","zIndex","string","19298MBiLzO","deg)","clientHeight","resize","watermark_id","removeChild","debugLog","37328wlGuxy","display","span","watermark_txt","watermark_height","createTextNode","innerHTML","remove","object","createElement","scrollWidth","watermark_font","微软雅黑","13400320UuSGCA","appendChild","absolute","style","watermark_parent_width","MozTransform","12svDmFV","fontSize","webkitTransform","watermark_color","transform","visibility","9KkoqTf","watermark_prefix","length","JbPro_","width","watermark_parent_node","left","JbPro 测试水印","hidden","8696149vBxlKj","font-family: ","Watermark","max","watermark_cols","watermark_x","random","globalSetting","center","_loadMark","children","watermark_alpha","insertBefore","px; visibility: hidden; display: inline-block","shadowRoot","color","getElementById","scrollHeight","2471cIdLbE","pointer-events: none !important; display: block !important","JbPro_mask_","_calcTextSize","watermark_x_space","white","watermark_parent_height","function","top","none","offsetHeight","load"];return(VR=function(){return t})()}var jR=GR;function WR(){var t=["4682060vfAirf","395840JPDNpX","watermark_id","watermark_angle","7HNNHzb","clientWidth","_loadMark","805122ZXEnYC",')">\n <text x="0" y="',"clientHeight","player","; font-size: ","appendChild","_calcTextSize",'<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" preserveAspectRatio="none">\n <defs>\n <pattern id="pattern1" x="0" y="0" width="',"getBoundingClientRect",'" patternUnits="userSpaceOnUse" patternTransform="rotate(',"defaultSettings",'</text>\n </pattern>\n </defs>\n <rect x="0" y="0" width="100%" height="100%" style="fill:url(#pattern1); fill-opacity:1;" />\n <rect x="0" y="0" width="100%" height="100%" style="fill:url(#pattern2); fill-opacity:1;" />\n </svg>','" style="font-family:',"div","watermark_txt","watermark_x_space","none","parentNode","remove","random","1273107UQctYx","height","white","block","8099970GVyMHv","top","watermark_alpha","style","querySelector","watermark_parent_node","pointer-events: none !important; display: block !important","resize()","floor","resize",'" y="',"span","watermark_x","JbPro_","; fill-opacity:","debugLog","display","watermark_y_space","removeChild","shadowRoot","_removeMark","Watermark","scrollHeight","watermark_parent_width","JbPro 测试水印","46530mfZeNK","max","; fill:","getElementById","watermark_fontsize","watermark_font","offsetWidth","4fOqPAK","40qsvfpa","watermark_y","open","createElement","font-family: ","left","offsetHeight","insertBefore","children","px; visibility: hidden; display: inline-block",'" height="',"length","globalSetting","width","string","attachShadow","black","btoa","load","backgroundImage","3418500clfsxs","scrollWidth","watermark_color","JbPro_mask_","; font-size:","absolute","position","setAttribute","7535rVBOYQ","zIndex","0px"];return(WR=function(){return t})()}function GR(t,e){var s=WR();return(GR=function(t,e){return s[t-=225]})(t,e)}!function(t){for(var e=GR,s=t();;)try{if(722486===parseInt(e(264))/1*(parseInt(e(297))/2)+parseInt(e(228))/3+parseInt(e(285))/4+parseInt(e(296))/5+parseInt(e(232))/6*(parseInt(e(300))/7)+-parseInt(e(265))/8*(parseInt(e(303))/9)+-parseInt(e(257))/10*(parseInt(e(293))/11))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(WR);class zR{constructor(t){var e=GR;this[e(306)]=t,this[e(277)]=null;const s=Cs();this.defaultSettings={watermark_id:e(245)+s,watermark_prefix:e(288)+s,watermark_txt:e(256),watermark_x:0,watermark_y:0,watermark_rows:0,watermark_cols:0,watermark_x_space:100,watermark_y_space:100,watermark_font:"微软雅黑",watermark_color:e(281),watermark_fontsize:18,watermark_alpha:.15,watermark_angle:-15,watermark_parent_width:0,watermark_parent_height:0,watermark_parent_node:null},Xi()&&this[e(283)]({text:decodeURIComponent(I+"%20%E4%BD%93%E9%AA%8C"),color:e(230)}),this[e(306)][e(247)](e(253),"int")}destroy(){var t=GR;this[t(252)](),this[t(277)]=null,this[t(313)]=null,this.player[t(247)](t(253),"destroy")}remove(){var t=GR;Yi()&&(this[t(277)]=null,this[t(252)]())}load(t){var e=GR;this.globalSetting=t,this[e(302)](t)}[jR(241)](){var t=jR;this.player[t(247)]("Watermark",t(239)),this.globalSetting&&this._loadMark(this.globalSetting)}[jR(302)](){var t=jR;let e=this[t(313)];if(1===arguments[t(276)]&&"object"==typeof arguments[0]){var s=arguments[0]||{};for(let t in s)s[t]&&e[t]&&s[t]===e[t]||(s[t]||0===s[t])&&(e[t]=s[t])}var i=document.getElementById(e[t(298)]);i&&i[t(225)]&&i[t(225)][t(250)](i);var r=typeof e[t(237)]===t(279)?document[t(260)](e.watermark_parent_node):e[t(237)],n=r||document.body;const o=n[t(311)]();var a=Math[t(258)](n[t(286)],n[t(301)],o[t(278)]),h=Math.max(n[t(254)],n[t(305)],o[t(229)]),l=arguments[0]||{},c=n;(l[t(255)]||l.watermark_parent_height)&&c&&(e[t(244)]=e[t(244)]+0,e[t(266)]=e[t(266)]+0);var d=document[t(260)](e[t(298)]),u=null;if(d)d.shadowRoot&&(u=d[t(251)]);else{(d=document[t(268)]("div")).id=e[t(298)],d.setAttribute("style",t(238)),u="function"==typeof d[t(280)]?d[t(280)]({mode:t(267)}):d;var p=n[t(273)],f=Math[t(240)](Math[t(227)]()*(p.length-1))+1;p[f]?n[t(272)](d,p[f]):n.appendChild(d)}const m=this[t(309)](),g=this[t(313)],y=g[t(318)]+m.width,A=g[t(249)]+m[t(229)],b=2*A,v=y/2,S=t(310)+y+t(275)+b+t(312)+g[t(299)]+')">\n <text x="0" y="'+g.watermark_fontsize+t(315)+g[t(262)]+t(289)+g[t(261)]+t(259)+g[t(287)]+t(246)+g[t(234)]+'">'+g[t(317)]+'</text>\n </pattern>\n <pattern id="pattern2" x="'+v+t(242)+A+'" width="'+y+t(275)+b+'" patternUnits="userSpaceOnUse" patternTransform="rotate('+g[t(299)]+t(304)+g[t(261)]+t(315)+g[t(262)]+t(289)+g[t(261)]+"; fill:"+g[t(287)]+t(246)+g[t(234)]+'">'+g.watermark_txt+t(314),E=window[t(282)](unescape(encodeURIComponent(S)));var w=document.createElement(t(316));w[t(235)][t(291)]=t(290),w[t(235)][t(270)]=t(295),w[t(235)][t(233)]=t(295),w[t(235)].overflow="hidden",w[t(235)][t(294)]="9999999",w[t(235)].width=a+"px",w[t(235)][t(229)]=h+"px",w.style[t(248)]=t(231),w[t(235)]["-ms-user-select"]=t(319),w[t(235)][t(284)]="url(data:image/svg+xml;base64,"+E+")",u[t(308)](w)}[jR(252)](){var t=jR;const e=this[t(313)];var s=document.getElementById(e[t(298)]);if(s){var i=s[t(225)];i&&i[t(250)](s)}}[jR(309)](){var t=jR;let e=this[t(277)][t(317)]||this[t(313)][t(317)],s=this.globalSetting[t(262)]||this[t(313)][t(262)],i=this[t(277)][t(261)]||this.defaultSettings[t(261)];const r=document[t(268)](t(243));r.innerHTML=e,r[t(292)](t(235),t(269)+s+t(307)+i+t(274)),document[t(236)]("body").appendChild(r);const n={width:r[t(263)],height:r[t(271)]};return r[t(226)](),n}}function HR(t,e){const s=ZR();return(HR=function(t,e){return s[t-=401]})(t,e)}const KR=HR;!function(t){const e=HR,s=t();for(;;)try{if(627627===parseInt(e(431))/1*(parseInt(e(416))/2)+-parseInt(e(419))/3*(parseInt(e(429))/4)+parseInt(e(432))/5*(parseInt(e(421))/6)+parseInt(e(406))/7+parseInt(e(428))/8*(-parseInt(e(426))/9)+-parseInt(e(414))/10*(parseInt(e(420))/11)+parseInt(e(401))/12)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(ZR);const qR={stop:KR(412),fiStop:KR(407),right:"right",left:KR(424),up:"up",down:KR(422),leftUp:"leftUp",leftDown:KR(409),rightUp:KR(413),rightDown:KR(418),zoomExpand:"zoomExpand",zoomNarrow:KR(405),apertureFar:"apertureFar",apertureNear:KR(403),focusFar:"focusFar",focusNear:KR(402),setPos:KR(436),calPos:KR(415),delPos:KR(417),wiperOpen:KR(408),wiperClose:KR(427),cruiseStart:KR(423),cruiseStop:KR(434)},QR={stop:0,fiStop:0,right:1,left:2,up:8,down:4,leftUp:10,leftDown:6,rightUp:9,rightDown:5,zoomExpand:16,zoomNarrow:32,apertureFar:72,apertureNear:68,focusFar:66,focusNear:65,setPos:129,calPos:130,delPos:131,wiperOpen:140,wiperClose:141,setCruise:132,decCruise:133,cruiseStart:136,cruiseStop:0},YR=[25,50,75,100,125,150,175,200,225,250],JR=[1,2,3,4,5,6,7,8,9,16],XR=[16,48,80,112,144,160,176,192,208,224];function $R(t){const e=KR,{type:s,speed:i=5,index:r=0}=t,n=YR[(i||5)-1]||YR[4];let o,a,h,l;if(o=QR[s],Vs(o))return"";switch(s){case qR.up:case qR[e(422)]:case qR[e(435)]:case qR[e(403)]:h=n;break;case qR[e(433)]:case qR[e(424)]:case qR[e(410)]:case qR[e(402)]:a=n;break;case qR[e(425)]:case qR[e(409)]:case qR[e(413)]:case qR.rightDown:a=n,h=n;break;case qR[e(430)]:case qR[e(405)]:l=XR[(i||5)-1]||XR[4];break;case qR.calPos:case qR.delPos:case qR[e(436)]:h=tP(r);break;case qR[e(427)]:case qR.wiperOpen:a=1;break;case qR[e(423)]:a=tP(r)}return function(t,e,s,i){let r=[];return r[0]=165,r[1]=15,r[2]=1,r[3]=0,r[4]=0,r[5]=0,r[6]=0,t&&(r[3]=t),e&&(r[4]=e),s&&(r[5]=s),i&&(r[6]=i),r[7]=(r[0]+r[1]+r[2]+r[3]+r[4]+r[5]+r[6])%256,function(t){const e=KR;let s="";for(let i=0;i<t.length;i++){let r=t[i][e(437)](16);1===r[e(404)]&&(r="0"+r),s+=r[e(411)]()}return s}(r)}(o,a,h,l)}function ZR(){const t=["zoomExpand","6871cZqfkd","2282110JVbIkd","right","cruiseStop","apertureFar","setPos","toString","20100216FSQHcp","focusNear","apertureNear","length","zoomNarrow","3629164ffJmXK","fiStop","wiperOpen","leftDown","focusFar","toUpperCase","stop","rightUp","774980knGcMm","calPos","2HYIqzH","delPos","rightDown","63cPISPH","55JaxOjn","6olIFlJ","down","cruiseStart","left","leftUp","10962873qHNgqd","wiperClose","8OoYOXi","80676wNghcb"];return(ZR=function(){return t})()}function tP(t){return JR[t-1]}const eP=iP;function sP(){const t=["download",".log","logMaxSize","logTextArray","stringify","[JbPro] ","410jfYQTn","prototype","JbPro-","TAG_NAME","Null","debugLog","player","6EPpVKr","44770HvMkQX","hasOwnProperty","clear","2149jURLOp","destroy","Array","toLocaleString","logCache","toString","19017mODKMv","length","join","object","Object","Boolean","map","Date","218640QBEgLG","logSize","String","call","init","377804snDwum","579876aDpuML","ArrayBuffer","push","text/plain","418505EMnutg","4424gLITyc","slice","includes","MemoryLogger","getLog"];return(sP=function(){return t})()}function iP(t,e){const s=sP();return(iP=function(t,e){return s[t-=185]})(t,e)}!function(t){const e=iP,s=t();for(;;)try{if(117454===-parseInt(e(222))/1+-parseInt(e(192))/2+parseInt(e(198))/3+-parseInt(e(197))/4+-parseInt(e(202))/5*(parseInt(e(221))/6)+parseInt(e(225))/7*(parseInt(e(203))/8)+parseInt(e(231))/9*(parseInt(e(214))/10))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(sP);const rP=[eP(189),"Number",eP(194),"Undefined",eP(218),eP(191),eP(188)];function nP(t){const e=eP;if(typeof t!==e(187))return t;const s=Object[e(215)][e(230)][e(195)](t)[e(204)](8,-1);switch(s){case e(227):case"Uint8Array":case e(199):return s+"["+t[e(185)]+"]";case e(188):return"{}";default:return s}}function oP(t,e,s){const i=eP;s||(s=1),e||(e=2);const r={};if(!t||typeof t!==i(187))return t;const n=Object[i(215)].toString[i(195)](t)[i(204)](8,-1);if(!rP[i(205)](n))return n;if(!(s>e)){for(const n in t)Object.prototype[i(223)].call(t,n)&&(s===e?r[n]=nP(t[n]):typeof t[n]===i(187)?r[n]=oP(t[n],e,s+1):r[n]=t[n]);return r}}function aP(){const t=eP;return(new Date)[t(228)]()}class hP{constructor(t,e={}){const s=eP;this[s(220)]=t,this[s(217)]=s(206),this[s(210)]=e?.[s(210)]||204800,this[s(193)]=0,this[s(211)]=[],this[s(220)][s(219)](this[s(217)],s(196))}[eP(226)](){const t=eP;this[t(224)](),this.player.debugLog(this[t(217)],t(226))}[eP(224)](){const t=eP;this[t(193)]=0,this[t(211)]=[]}[eP(229)](...t){const e=eP;let s="";try{const i=t[e(190)](t=>oP(t));s=e(213)+aP()+JSON[e(212)](i)}catch(t){return}if(this[e(193)]+=s[e(185)],this[e(211)][e(200)](s),this[e(193)]>this[e(210)]){const t=this[e(211)].shift();this.logSize-=t[e(185)]}}[eP(207)](){const t=eP;return this.logTextArray[t(186)]("\n")}getLogBlob(){const t=eP,e=this[t(207)]();return new Blob([e],{type:t(201)})}[eP(208)](){const t=eP,e=this[t(207)]();this[t(224)]();const s=new Blob([e],{type:t(201)});jn(s,t(216)+aP()+t(209))}}const lP=dP;function cP(){const t=["addEventListener","isOffline","player","_stopCheck","destroy","offline","5lAZtEL","_updateOnlineStatus","bind","4GwCMyR","167672gaLSxj","2551475vgNlGc","6562200xsDEhc","interval","online","removeEventListener","TAG_NAME","1101609POftSa","prevOnline: ","_boundUpdateOfflineStatus","emit","debugLog","isOnline","3402384codXRM","init","Network","prevOnline",", online: ","logStatus","_initListener","_boundUpdateOnlineStatus","6GynDlm","14ekjtdr","3385960tsxhDP","110kPxYoi","12911173wcWNKR","_updateOfflineStatus"];return(cP=function(){return t})()}function dP(t,e){const s=cP();return(dP=function(t,e){return s[t-=499]})(t,e)}!function(t){const e=dP,s=t();for(;;)try{if(676961===parseInt(e(528))/1*(-parseInt(e(532))/2)+parseInt(e(508))/3*(parseInt(e(531))/4)+parseInt(e(533))/5*(-parseInt(e(516))/6)+-parseInt(e(517))/7*(-parseInt(e(518))/8)+parseInt(e(502))/9*(parseInt(e(519))/10)+-parseInt(e(520))/11+-parseInt(e(534))/12)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(cP);class uP extends h{constructor(t){const e=dP;super(),this[e(524)]=t,this.TAG_NAME=e(510),this.online=this[e(507)](),this[e(511)]=this.online,this[e(535)]=null,this[e(515)]=this._updateOnlineStatus[e(530)](this),this[e(504)]=this[e(521)][e(530)](this),this[e(514)](),this[e(524)][e(506)](this.TAG_NAME,e(509))}[lP(526)](){const t=lP;this.off(),this[t(525)](),window[t(500)]("online",this[t(515)]),window.removeEventListener(t(527),this[t(504)]),this[t(504)]=null,this[t(515)]=null,this[t(524)][t(506)](this[t(501)],t(526))}[lP(514)](){const t=lP;window[t(522)]("online",this[t(515)]),window.addEventListener(t(527),this[t(504)])}[lP(525)](){const t=lP;this[t(535)]&&(clearInterval(this[t(535)]),this[t(535)]=null)}_startCheck(){const t=lP;this[t(535)]=setInterval(()=>{const e=t;this[e(507)]()!==this[e(511)]&&(this[e(507)]()?this[e(529)]():this[e(521)]())},1e3)}[lP(529)](){const t=lP;this[t(511)]=this[t(499)],this[t(499)]=!0,this.logStatus(),this[t(505)](t(499))}[lP(521)](){const t=lP;this[t(511)]=this[t(499)],this.online=!1,this[t(513)](),this[t(505)](t(527))}[lP(513)](){const t=lP,e=this[t(511)]?t(499):t(527),s=this[t(499)]?"online":t(527);this[t(524)][t(506)](this[t(501)],t(503)+this[t(511)]+t(512)+this[t(499)]+", status: "+e+" -> "+s)}[lP(507)](){return void 0===navigator.onLine||navigator.onLine}[lP(523)](){return!this[lP(507)]()}}function pP(){const t=["length","port","28nupXtt","match","4372950koQjud","origin","70255BvjfOk","test","substr","516Cufmqc","host","apply","filetype","10629600SUMbkN","pathname","2810370yfakNr","fromCharCode","filename","location","search","href","782VNoTmj","hostname","2678964vEntHm","protocol","4155687slonPF","hash","1018OunGwF","SyntaxError"];return(pP=function(){return t})()}function fP(t,e){const s=pP();return(fP=function(t,e){return s[t-=194]})(t,e)}!function(t){const e=fP,s=t();for(;;)try{if(995017===parseInt(e(206))/1*(-parseInt(e(212))/2)+parseInt(e(200))/3+-parseInt(e(194))/4*(-parseInt(e(220))/5)+-parseInt(e(208))/6*(parseInt(e(216))/7)+parseInt(e(198))/8+-parseInt(e(210))/9+-parseInt(e(218))/10)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(pP);const mP=yP;function gP(){const t=["paused","toggleControlHtml() ","simdDecodeDelayTimeout error simdDecodeErrorReplayType is ","loading timeout and reset player and play success","calcPlaybackForwardMaxRateDecodeIFrame","decoder-pro-simd.js","mseWorkerAddSourceBufferError","CANVAS","6069876LznEMd","updatePlaybackForwardMaxRateDecodeIFrame","webcodecsDecodeConfigureError auto wasm [wcs-> wasm] reset player and play","jb-pro-container","hideErrorMessageTips()","updateDynamicWatermark","_playBefore _play error","destroy","_initPlayer","scale(","screenshot() ","failedToAsynchronouslyPrepareWasm,pause success","setControlHtml","simdH264DecodeVideoWidthIsTooLargeReplay","_handleFlvDemuxBufferSizeTooLarge","clientWidth","network offline","_initLoadingBackgroundForIOS","replayUseLastFrameShow","streamErrorReplayDelayTime","playVodMseDecodeVideoError reset player and play error","updateDebugLevel","finally","aliyunRtcErrorOnLock","mediaSourceAudioInitTimeout and _resetPlayer error","videoInfo","_handleNetworkDelayTimeout","_handlePlayVodMp4Error","setTimeout","updateAiObjectDetectLevel()","webcodecsUnsupportedConfigurationError auto wasm [wcs-> wasm] reset player and play error","webrtcStreamH265",'JbPro option "',",and\n local._heartTimeoutReplayTimes is ","keys","updateAiFaceDetectLevel","level","mediaSourceDecoderConfigurationError auto wasm [mse-> wasm] reset player and play success","mediaSourceAudioG711NotSupport but player is destroyed","playVodMp4UseSrcVideoError and reset player and play error"," and end is ","_handlePlayVodMp4UseSrcVideoError and too many retry in short time and playingTime is 0, so set playVodMp4UseSrc false and downgrade to custom decode","nakedFlow","isPlaying","mediaSourceH265NotSupport and pause error","_pause() player has not loaded and load success,next pause","networkDelay","isFFmpegSIMD","zoom","webrtcLowFps and reset player and play success"," rotateY(180deg)","startTime","removeWatermark() player is not init","playOptions","isDestroyed","ghostWatermarkConfig","websocket1006Error","faceDetectOpen","decoderWorkerUncaughtError but player is destroyed","mediaSourceDecoderConfigurationError and autoWasm is false ,pause success","artc:","mediaSourceBufferedIsZeroError"," [mse-> ","this.player.play 5","setXorCryptoKey()","playbackCurrentTimeScroll()","ws1006","setScaleMode","channels","getAudioEngineType","playVodResume","playbackConfig.rateConfig.length is 0, showRateBtn can not be ture, showRateBtn is set to false","updateDynamicWatermark()","_handlePlayVodEnded","toggleExtendHtml","proxy","videoBuffer ","setFullscreen() fullscreen is ","decoderErrorAutoWasm","flvDemuxBufferSizeTooLarge","mediaSourceBufferedIsZeroError reset player and play success","webcodecs decode error and autoWasm is false , pause success","isMSEVideoDecoderInitializationFailedNotSupportHevc","playbackResume()","setBufferTime() ","playVodNextIFrame()","_handleVideoElementPlayingFailed","_handleHlsError","getPlayType","mediaSourceFull and pause error","_handleWasmWidthOrHeightChange","transform","mediaSourceUseCanvasRenderPlayFailed but player is destroyed","wasmUseVideoRenderErrorOnLock","_initOnLock","setAspectRatio() ","mseWaitVideoCanplayTimeout auto wasm [mse-> wasm] _resetPlayer error",".jb-pro-loading-bg-for-ios","classList","_resetPlayer() end","mediaSourceTsIsMaxDiff _resetPlayer error","getRenderType","bind","setDebug","mediaSourceTsIsMaxDiff and pause error","toggleControlHtml() player is not init","mpeg4","_initPlayerOptionsForPlayVodOrPlayback","playbackPause","updateCurrentZoom()","playVodMp4ErrorOnLock is true","mseSourceBufferError and opt.mseDecodeErrorReplay is false, so pause","_bindPlayerEvents","hlsM3u8Empty and pause","addContentToContainer()","videoInfoError and pause player success","mediaSourceAudioNoDataTimeoutOnLock is true","closeDrawRectangle()","setMirrorRotate"," [到期会暂停解码]","videoInfoError and pause","this.player.play 6","_clearInitDecoderWorkerTimeout","screenshotWatermark()","_replaySuccessAndNext","closeZoom","isUseFpsRender","watermarkConfig","_handleWebrtcLowFps","playbackExitNextFrameAndPlay","playVodMseDecodeVideoErrorOnLock is true","_handlePlayerPlayFailedAndPaused","isOffline","mediaSourceAudioG711NotSupport and reset player and play success","playbackClearCacheBuffer","position","getPlayVodCurrentTime","toggleDrawRectangle","destroy() _nextDestroy called","setVolume","mediaSourceUseCanvasRenderPlayFailed","isWebFullscreen",'" can not be undefined',"player is null","webTransport","setFullscreen() ","simdH264DecodeVideoWidthIsTooLarge and _resetPlayer error","_getVideoLastIframeInfo","wasmWidthOrHeightChangeOnLock is true","catch","simdH264DecodeVideoWidthIsTooLargeOnLock is true"," and\n isHlsButDemuxUseWorker is ","isMSENotSupportAudioFormat","controlType","load","getPTZCmd() player is null","flv Demux Buffer Size Too Large and reset player and play error","decoderWorkerUncaughtError"," rotateX(180deg)","mseAddSourceBufferError and pause error"," rotate(","defaultStreamQuality","showTipsMessageByContent","webrtcStreamH265OnLock is true","rateConfig","playVodBackwordJumping() ","playVodMp4UseSrcError and reset player and play error","webTransportErrorOnLock","Hls264UseOldDemuxerOnLock is true","removeGhostWatermark() player is not init","webcodecsH265NotSupport auto wasm [wcs-> wasm] reset player and play","notSupportNewWasm","showErrorMessageTips() player is null","_play","setRotate() ","widthOrHeightChangeReplayDelayTimeout","webTransportError","mediaSourceAppendBufferError and autoWasm is false ,pause success","removeAttribute","playVodResume()","_pause() ","videoElementPlayingFailedOnLock is true","mseSourceBufferError and pause error:","mseWorkerAddSourceBufferError and reset player and play error","isInView","nodeName","_hasLoaded() and play error","playVodCalcFpsError and pause","isPlayVodPaused","screenshotCopyrightWatermark() player is not ready","setBufferDelayTime() buffer time delay is ",".mp4","getCopyrightWatermarkHash","delay timeout replay but player is destroyed","flvDemuxBufferSizeTooLargeOnLock","_streamErrorReplayTimes","webTransportError is true","m7sCryptoKey","mediaSourceTsIsMaxDiff and replay is false ,pause success","isPlayVodEnded","getDecodeType","closeDrawRectangle() failed, this.player is destroyed or paused","notSupportNewWasm auto wasm [wasm-> old wasm] reset player and play error","122hcEtWM","decoder-pro.js","setShowPrecision","delayTimeout","mediaSourceBufferedIsZeroErrorOnLock","encType","enterVr",", and retry length is ","isCrypto","isDestroyedOrClosed","jb-pro-fullscreen-web"," mediaSourceH265NotSupport and old hls, so set supportHls265 true","play vod ended and replay player","_handlePlayVodEndedAndReplay and reset player and start time is","updateDebugLevel() level is same, level: "," playVodResume() but already playing, just return resolve()","setPtzPosition()","showRateBtn","addContentToCanvas","this.player.play 4","playbackPauseTimeout","isFullResize","_pause() end","split","mediaSourceAudioNoDataTimeout but player is destroyed","webcodecsAudioDecodeError and _resetPlayer error","audio","mseDecodeAudio","_handleMediaSourceBufferedIsZeroError","webcodecsH265NotSupportOnLock","loadingTimeout","resetPlayer()","isFocus","$videoElement","playbackNextFrame()","mseWorkerAddSourceBufferError and reset player and play"," and streamErrorReplayDelayTime is ","_destroyed"," must be decoder-pro.js or decoder-pro-simd.js","playbackResumeTimeout","_updateMultiIndex ","websocketError error and _resetPlayer error","JbPro is destroying","play vod ended and pause player","keyframeIsRequiredError","mediaSourceUseCanvasRenderPlayFailedOnLock","isWebrtcH265"," is invalid'","fetchErrorOnLock is true","wasm decode error and reset player and play success","getControlExtendBtnActive() player is null","_isNetworkOfflinePausedAndNextPlayConfig","isCryptoAudio","setAspectRatio() player is null","multiIndex","cryptoKeyUrl","_handleMediaSourceAudioNoDataTimeout","mseWidthOrHeightChange and reset player and play error","fps","clearContentToContainer","_handlePlayerFullscreen",", and start is ","_handleOutOfMemoryWasm","delayTimeoutRetryEnd and\n opt.heartTimeout is ","setPtzPosition() player is null"," and this.player.fullscreen is ","mediaSourceAudioG711NotSupport and mediaSourceAudioG711NotSupportReplay is false,pause success","mseWidthOrHeightChange and reset player and play success","_handleWebrtcStreamH265","websocket1006ErrorReplay","getPlayingTimestamp","playVodSeek","'updateAiFaceDetectLevel() level ","loadingTimeoutReplayTimes","_handlePlayVodEndedAndReplay but player is destroyed","toggleZoom","_handleAliyunRtcError"," and next playingTimestamp is ","playbackForwardMaxRateDecodeIFrame","mediaSourceAudioG711NotSupport and reset player and play error","_parsePlaybackOptions","playbackEnd","mediaSourceUseCanvasRenderPlayFailedOnLock is true"," protocol is ","replayShowLoadingIcon","useSIMD"," and network online and play error","mseAddSourceBufferError","toggleControlExtendBtn() ","this.player.play 3","hideTipsMessage",", not support this method","forEach","mseWidthOrHeightChange","mediaSourceFull and autoWasm is false ,pause success","getFlvMetaData()","webglAlignmentError but player is destroyed","mseWorkerAddSourceBufferError and reset player and play success","webcodecsDecodeConfigureError auto wasm [wcs-> wasm] reset player and play success","getPlaybackRate","webcodecsUnsupportedConfigurationErrorOnLock","webglAlignmentError and pause error","isPlayer","syncAudioAndVideo","faceDetectClose","websocketError error and network is offline and wait network online to play , so return","updateAiFaceDetectLevel() player is null","wcsWidthOrHeightChange and reset player and play","notSupportNewWasmOnLock is true","_handleDecoderWorkerUncaughtError","_handlePlayVodCalcFpsError","resize()","websocketError error and reset player and play success","mirrorRotate","autoWasm","aliyunRtcError and pause player","playVodCalcFpsError"," second, is too small","playVod() ","updateAiObjectDetectLevel() player is null","destroy()#_nextDestroy() player destroyed successfully and calling _destroy()","webcodecsDecodeError but player is destroyed","isDHav"," and\n isAliyunRtc is ","getExtendBtnList","videoElementPlayingFailedForWebrtcOnLock","mediaSourceFull and reset player and play success","clearControlHtml()","origin",".dav"," and\n isHlsCanVideoPlay is ","simdDecodeDelayTimeoutOnLock","failedToAsynchronouslyPrepareWasm and _pause error","setPlaybackStartTime","websocketErrorOnLock","exitVr","loadingTimeoutReplay","updateAiObjectDetectInterval()","playbackNextFrame","mediaSourceAudioInitTimeout and reset player and play success","webcodecsAudioDecodeError and reset player and play error","mediaSourceDecoderConfigurationErrorOnLock is true","downloadFmp4File","decoderWorkerInitErrorOnLock is true","webrtc","padding","videoElementPlayingFailedForWebrtc"," and\n opt.loadingTimeoutReplay is ","_doInitLoadingBackgroundForCanvas","%20%E4%BD%93%E9%AA%8C","startRecord() player is not ready","fetch error and network is disconnect and reset player and play","updatePlaybackForwardMaxRateDecodeIFrame() player is null","trim"," second buffer data","drawingRect","setNakedFlowFps()","_isPlayerPlayStarted","playbackResume"," is not a number","pause -> play and destroy play"," and network online and play success","decoder","setNetworkDelayTime() network delay is ","playbackForward","playing and resolve()","_handlePlayVodMp4UseSrcVideoError and too many retry in short time, so set playVodMp4UseSrc false and downgrade to custom decode","_handleSimdH264DecodeVideoWidthIsTooLarge","setCryptoKeyUrl","_handlePlaybackEnd","simdDecodeDelayTimeout and reset player and play error","decoderWorkerUncaughtErrorOnLock is true","delayTimeoutRetryEnd","mediaSourceAudioInitTimeoutOnLock","$container","openDrawRectangle() failed, this.player is not init","getPlayVodBufferedDuration","\n and destroy and play new url","setAspectRatio"," type","videoInfoErrorOnLock","playbackNextIFrame","streamEnd and network is disconnect and _resetPlayer() but player is destroyed and return","toggleExtendHtml() ","setScaleMode() ","flv Demux Buffer Size Too Large and flvDemuxBufferSizeTooLargeEmitFailed = true and pause player","webrtcError error and network is offline and wait network online to play , so _resetPlayer and wait play","cryptoKey","decoderWorkerWasmErrorOnLock","endsWith","websocket","hlsError and pause player success","_resetPlayer error","isFlv"," and network online and _streamErrorReplayTimes is ","setWebFullscreen() player is not ready","this.player.play 2","_initNetwork","quality: ","hls264UseOldDemuxer and reset player and play error","tsPacketSizeErrorOnLock","startsWith","playVodMp4UseSrcVideoError and _resetPlayer error","online","resetStartBpsTime","updateDynamicWatermark() player is not init","show","videoElementPlayingFailed and reset player and play error","webrtcError","sendWebsocketMessage","downloadNakedFlowFile","objectDetectClose() player is not init","JbPro decoder ","canvas"," and reset player and play","mseDecodeErrorReplay","_hasLoadedError","play url ","play vod ended and pause success","updateControlSize() ","sm4CryptoKey","updatePlaybackLocalOneFrameTimestamp","wcsWidthOrHeightChange and widthOrHeightChangeReplayDelayTime but player is destroyed","playVodPause","crashLog","simple","wcs","network delay time out and reset player and play","playFailedAndPaused","wasmUseVideoRenderError","contain","playbackPause() isPause:","handleOffline","wss:","webcodecs decode error _resetPlayer error"," is not valid","setStartTime","_handleMseWidthOrHeightChange","totalDuration","_tempPlayerIsMute","_handleWebTransportError","mediaSourceDecoderConfigurationError and pause error","getAudioInfo","isFmp4","\n this._url.url is ","simdH264DecodeVideoWidthIsTooLarge and pause error","isWebrtc","loading timeout and\n replay time is ","outOfMemoryWasm auto wasm [wasm-> old wasm] reset player and play","removeDynamicWatermark","aliyunRtcError","mediaSourceTsIsMaxDiffOnLock","mseWidthOrHeightChangeOnLock is true","] reset player and play","videoBuffer","videoElementPlayingFailedOnLock","mediaSourceAppendBufferError and reset player and play error","simdDecodeErrorOnLock","faceDetectOpen() player is not init","delayTimeout and network is offline and wait network online to play , so return","playbackEndOnLock","mediaSourceAudioNoDataTimeout and reset player and play error","toggleVrCompass() player is null","destroy() player has not loaded and waiting load","wcsWidthOrHeightChange and reset player and play error"," [wcs-> ","getContainerRect","screenshotByRect()","base64","screenshot"," and is not meaningful Retry","delayTimeout and reset player and play success","videoElementPlayingFailed and _pause error","\n and isReplay is ","mediaSourceH265NotSupport auto wasm [mse-> wasm] _resetPlayer error","hideErrorMessageTips","_handleWebcodecsAudioNoDataTimeout","rotate","loadingIcon","vrEnableSensor()","webcodecsDecodeConfigureError but player is destroyed","keepScreenOn","clearContentToCanvas","normal","streamEndReplayDelayTime","init start","_handlePlayerBeforeDestroy","mse","openDrawRectangle() failed, this.player is destroyed or paused","playVodMp4UseSrc set false and reset player and play","_handlePlaybackEndedAndReplay and reset player","isEmitSEI","streamEndReplayDelayTimeout"," and\n opt.loadingTimeoutReplayTimes is ","video","webcodecsUnsupportedConfigurationErrorOnLock is true","_pause() player has loaded","loadingBackgroundHeight","outOfMemoryWasmOnLock is true","m7sCryptoAudio","Options: ","Hls264UseOldDemuxer and reset player and play success","webcodecsAudioNoDataTimeout and _resetPlayer error","webcodecsUnsupportedConfigurationError auto wasm [wcs-> wasm] reset player and play","setTimeout error: ","originalOptions","_handleMseWorkerAddSourceBufferError","_bindEvents","_handleWebcodecsUnsupportedConfigurationError","mediaSourceDecoderConfigurationError auto wasm [mse-> wasm] reset player and play error","streamEnd and 1006 error and _resetPlayer() but player is destroyed and return","updateLoadingText() player is null","clearExtendHtml","debug","hlsError but player is destroyed","wcsWidthOrHeightChange","JbPro videoBuffer ","notSupportNewWasm auto wasm [wasm-> old wasm] reset player and play success","extractScreenshotCopyrightWatermark","simdH264DecodeVideoWidthIsTooLarge and reset player and play error"," and\n isMpeg4 is ","wcsDecodeError","_isNetworkOfflinePaused","decoderWorkerWasmError but player is destroyed","wasmWidthOrHeightChange and widthOrHeightChangeReplayDelayTime but player is destroyed","webcodecsAudioDecodeError and reset player and play success","getI18n","playbackResumeInner","mediaSourceBufferedIsZeroErrorOnLock is true","webglContextLostError and play error","JbPro need container option","playVod","aiFaceDetectLevel","webcodecsAudioInitTimeout and webcodecsAudioInitTimeoutReplay is false , pause success","getExtendBtnList() player is null","muted","aliyunRtcError but player is destroyed","toString","vrEnableSensor","heartTimeoutReplay","qualityConfig","heartTimeoutReplayTimes","mediaSourceAppendBufferErrorOnLock","376rjTnxY","toggleControlBar() player is null","webcodecsAudioNoDataTimeoutOnLock","playVodMp4UseSrcVideoErrorOnLock","_handleDelayTimeout","webcodecsDecodeConfigureError","_handleVideoElementPlayingFailedForWebrtc","websocketError"," !== 32","tsPacketSizeError, tsPacketSize is ","img","download","isPause","_mseDecodeErrorRetryLog","isRecording","getFlvMetaData","_isNeedNetworkDisconnectReplay","setBufferTime","getPlayVodBufferedTime","_resetPlayerBeforeUpdateOptions() and is not mute and set isNotMute is true","playType","playFailedUseLastFrameShow",'playVodForwardJumping() params "time": ',"screenshot() player is not ready","simdDecodeError","downloadTempG711File","4839483fWcUtX","removeWatermark()","mediaSourceFull and _resetPlayer error","_playNext and waiting decoderWorkerInit callback","mseWaitVideoCanplayTimeoutOnLock is true","dhav","setKeepScreenOn","flvDemuxBufferSizeTooLarge but player is destroyed","webcodecsAudioDecodeError but player is destroyed","setKeepScreenOn() player is not ready",".mpeg4","updateLoadingText","loadingTimeoutRetryEndShowPlayBtn","mediaSourceAudioG711NotSupport error and pause error","mseSourceBufferError auto wasm [mse worker -> mse] reset player and play","mediaSourceAudioInitTimeout and reset player and play error"," ","streamEnd and _resetPlayer error","Hls264UseOldDemuxer but player is destroyed","mseWidthOrHeightChange but player is destroyed","cancelMute","simdDecodeDelayTimeout and reset player and play success","player","decoderWorkerWasmError and pause player success","srcObject","openZoom() failed, this.player is destroyed or paused","_resetPlayer() error","removeChild","_handleMseSourceBufferError","simdH264DecodeVideoWidthIsTooLarge and reset player and play","_resetPlayer","mediaSourceAppendBufferError","fetch error and reset player and play success","decoderWorkerInit timeout","playbackNextIFrame()","isPlayVod","mseWorkerAddSourceBufferError but player is destroyed","webcodecsAudioDecodeError and webcodecsAudioDecodeErrorReplay is false, pause success","cancelRecord","_handleSimdDecodeDelayTimeout","downloadTempFmp4File","mseWidthOrHeightChange and _resetPlayer error","mediaSourceFull","streamEnd and 1006 error and reset player and play success","isPaused","flvDemuxBufferSizeTooLargeEmitFailed","setWebFullscreen() ","audioDecodeFailed","webrtcError but player is destroyed","webglAlignmentError and webglAlignmentErrorReplay is false, so pause","player is not init","decoderWorkerInitError but player is destroyed","reject","getControlHtml","JbPro container is invalid, must be a DOM Element","webcodecsDecodeConfigureError and pause error","_playerOnLock","_handleFailedToAsynchronouslyPrepareWasm","InitDecoderWorkerTimeout but player is destroyed","objectDetectClose()","wasmWidthOrHeightChange error and pause error","webcodecsAudioInitTimeout and reset player and play success","_handleWebsocketError","_resetPlayer() player has not loaded and waiting load","mediaSourceTsIsMaxDiff replay error","_handleTsPacketSizeError","playVodMp4Error and pause","webcodecs decode error reset player and play success","vrLookAt","setDebug() ","webglContextLostErrorOnLock is true","updateGhostWatermark","wasmWidthOrHeightChange and widthOrHeightChangeReplay is false, pause success","VIDEO","showErrorMessageTips","debugLevel","vrSetGyroMode() player is null","_handlePlayVodMseDecodeVideoError","clearContentToContainer()","handleOnline","outOfMemoryWasm auto wasm [simd wasm-> wasm] reset player and play","webrtcLowFpsOnLock","fetch","delay timeout and\n replay time is ","playVodMp4UseSrc","_handleMediaSourceDecoderConfigurationError","mediaSourceUseCanvasRenderPlayFailedReplayType","play() ","playVodEnded","waitingCheckFirstIframeTimeoutAutoWasmAndNoCheck","exitVr() JbPro is destroyed","mediaSourceUseCanvasRenderPlayFailed and pause","wcsWidthOrHeightChange and reset player and play success","screenshotCopyrightWatermark","getPTZCmd()","_handleWebglAlignmentError","webcodecsAudioDecodeError","toggleExtendHtml() player is not init","warn","s is too long, will black screen for ","pauseAndNextPlayUseLastFrameShow","updateFullscreenWatermark()","playVodNormal()","isHls","simdDecodeError error and pause error","playbackStream","_handleDecoderWorkerInitError","failedToAsynchronouslyPrepareWasm","videoElementPlayingFailedReplay","websocketError and pause player","webcodecsUnsupportedConfigurationError auto wasm [wcs-> wasm] _resetPlayer and play error","webglContextLostError and webglContextLostErrorReplay is false, pause success","decoderWorkerWasmErrorOnLock is true","playVodExitNextFrameAndPlay()","_checkInitDecoderWorkerTimeout","network","mediaSourceFullOnLock","height","playFailedAndPausedShowMessage","mseWaitVideoCanplayTimeout auto wasm [mse-> wasm] reset player and play","https://","mediaSourceAppendBufferError and ","100%","vrLookAt() player is null","webrtcError and pause","playbackEnd and pause success","pause() ","updateAiFaceDetectInterval","mediaSourceUseCanvasRenderPlayFailed and reset player and play error","simdH264DecodeVideoWidthIsTooLargeOnLock","string"," and diff is ","4mEnPhg","events","cryptoKeyUrl: getM7SCryptoStreamKey ","setMirrorRotate() player is null","loadingTimeoutRetryEnd","webglAlignmentErrorReplay","videoElementPlayingFailed and useMSE is ","cancelMute() and is mute is ","TAG_NAME","webcodecsUnsupportedConfigurationError but player is destroyed","websocketErrorOnLock is true","getDemuxType","setNetworkDelayTime","_handleNotSupportNewWasm","webcodecsDecodeConfigureError auto wasm [wcs-> wasm] reset player and play error","getVideoInfo","_websocket1006ErrorReplayTimes"," is invalid, play vod must be hls or mp4","cancelRecord()","webcodecsDecodeConfigureErrorOnLock is true","startRecord","faceDetect","isMpeg4","_handleHls264UseOldDemuxer","playVodMp4Error and pause success","_getOriginalOpt"," , delay ","isPs","playVodMp4Error","webcodecsUnsupportedConfigurationError auto wasm [wcs-> wasm] reset player and play success","widthOrHeightChangeReplay","memoryLogger","getCurrentTime","webrtcError and _resetPlayer error","fetch error and pause","streamEnd pause player","isWebrtcForSRS","JbPro Version is ","_handleWebglContextLostError","getControlHeight","getExtendHtml","updateWatermark() player is not init","left","webrtcStreamH265 and reset player and play","_handleMediaSourceAudioG711NotSupport","isFullscreen","pTs","render type is video, not support clearView, please use canvas render type","wcsWidthOrHeightChange error and pause error","narrowZoom failed, zoom is not open or not init","tsPacketSizeError but player is destroyed","playVodMseDecodeVideoError and playingTime is 0, so downgrade to wasm","expandZoom","playVodMp4UseSrcVideoError but player is destroyed","clearView","_handlePlayVodEndedAndReplay","not playing","network offline and JbPro is destroyed","decoderWorkerInit error","isTenda","type","_handleSimdDecodeError","webglContextLostErrorOnLock","isDecoderWorkerInitError","webcodecs decode error autoWasm ","setStreamQuality() ","wasmWidthOrHeightChange and reset player and play success","Hls264UseOldDemuxer and reset player and play","_tempPlayBgObj","_tempContentToCanvasData","startRecord() player is not playing","_destroy","fullscreenWatermarkConfig","enterVr()","playVodEndedAndAutoReplay","aiFaceDetectInterval","playVodMseDecodeVideoErrorOnLock","clearContentToCanvas() player is not init","JessibucaPro","toggleVrCompass","aiObjectDetectInterval","_handleMediaSourceAudioInitTimeout","mediaSourceAudioG711NotSupportOnLock is true","decoderWorkerUncaughtError and pause","websocketError and pause","'updateAiObjectDetectLevel() level ","hlsError and pause","_watermarkResize","videoElementPlayingFailed and videoElementPlayingFailedReplay is false,pause success","videoInfoError","webcodecsAudioInitTimeout and reset player and play","wcsWidthOrHeightChangeOnLock is true","tenda","fetch error and streamErrorReplay is true and _streamErrorReplayTimes is ","s , it is recommended to set it to less than 10s","_handleMediaSourceUseCanvasRenderPlayFailed","not recording","playbackEndedAndReplay","mseAddSourceBufferErrorOnLock is true","streamEnd","zooming","stopRecordAndSave() ","webcodecsAudioNoDataTimeout error and pause error","mseWaitVideoCanplayTimeout auto wasm [mse-> wasm] reset player and play success","playVodMp4UseSrcError and _resetPlayer error","getPlayVodDuration","streamEnd and isStreamEndReplay is true and and _streamEndReplayTimes is ","?stream=","white","mediaSourceAudioInitTimeoutOnLock is true","mseWorkerAddSourceBufferErrorOnLock is true","webcodecsAudioDecodeErrorOnLock is true","getControlExtendBtnActive() ","default","openWebglAlignment","mediaSourceBufferedIsZeroError _resetPlayer and play error","checkFirstIFrame","_tempVideoLastIframeInfo","streamEnd pause player "," so set mseDecodeAudio = false","playVodNormal","_handlePlayerResize","playVodMp4UseSrcError","\n and new url is ","mediaSourceAudioG711NotSupport and reset player and play","http:","hls264UseOldDemuxerOnLock","network online and JbPro is destroyed","_getContainerRect","_parsePlayVodOptions","removeFullscreenWatermark","fetchError","setNetworkDelayTime() ","_handlePlayVodMp4UseSrcVideoError",".flv","fullscreen","83727TURbaf","s must be less than heartTimeout ","audioInfo","websocketError error and network is disconnect and reset player and play","screenshotCopyrightWatermark()","openZoom","getStatus","quality","webcodecsH265NotSupportOnLock is true","_removeLoadingBackgroundForIOS","mseDecodeErrorReplayDelayTimeout","5aGtphI","webglContextLostError and play success","_opt","mediaSourceAudioInitTimeout and reset player and play","closeDrawRectangle() failed, this.player is not init","includes","simdH264DecodeVideoWidthIsTooLarge and simdDecodeErrorReplay is false, pause success","updateAiObjectDetectInterval() player is null","nodownload","close() and inner destroy()","closeZoom()","decoderWorkerWasmError and pause player","getCrashLog","simdDecodeErrorOnLock is true","useLastFrameShow","mediaSourceBufferedIsZeroError but player is destroyed","891956WNgMpx","mediaSourceBufferedIsZeroError and pause error:","isPlaybackPause","playbackConfig","_wcsDecodeErrorRetryLog","hls264UseOldDemuxer","isControlTypeSimple",".ps",".ts","playFailedError","removeGhostWatermark","webcodecsAudioNoDataTimeout and reset player and play error"," [ ]","isNotMute","isOldHls","_handlePlayVodEnded but player is destroyed","outOfMemoryWasm","retry type is ","setBufferTime() buffer time is ","toLowerCase","mediaSourceAudioNoDataTimeout","_handleWebcodecsAudioInitTimeout","setStreamQuality","filename","UA:","init success and version is ","destroy() player has loaded and calling _nextDestroy()","networkState","/isMSENotSupportAudioFormat is ","isPlayback","fetch error and reset player and play error","playbackEndedAndReplay and reset player and play error","setPlaybackStartTime() player is not playing","wasmUseVideoRenderError and reset player and play error","webcodecsAudioNoDataTimeout and webcodecsAudioNoDataTimeoutReplay is false, pause success","streamEnd and network is offline and wait network online to play , so return","playbackExitNextIFrameAndPlay","_removeLoadingBackgroundForIOS()","webglContextLostError","isWebrtcForZLM","_pause","mediaSourceH265NotSupport","artc://","webrtcErrorOnLock","recording","reset player error","playVodForward() ","url","InitDecoderWorkerTimeout and pause player","setPlayFailedAndPaused",'playVodBackwordJumping() params "time": ',"objectDetectClose","narrowPrecision"," and\n opt.heartTimeoutReplay is ","setNakedFlowFps() player is null","mseAddSourceBufferError auto wasm [mse-> wasm] reset player and play error","updatePlaybackLocalOneFrameTimestamp() ","off","_handleLoadingTimeout","updateDebugLevel() level is not valid, level: ","webglAlignmentError and play success","playVodMp4UseSrcError and hevcNotSupported or videoNotSupported and set useMSE false and useWCS false","simdH264DecodeVideoWidthIsTooLarge","mediaSourceAudioG711NotSupport","wcsDecodeAudio","mediaSourceAppendBufferError and reset player and play success","toggleControlExtendBtn() player is null","playVodEndedAndReplay and _resetPlayer error","_resetPlayerBeforeUpdateOptions","assign","playVodMseDecodeVideoError _resetPlayer and play error","_handleMseAddSourceBufferError","toggleControlHtml","exitVr() player is null","isResize","setM7sCryptoKey() player is null","disablePictureInPicture","play vod ended and pause error","then","decoderWorkerUncaughtErrorOnLock","unknown","mediaSourceH265NotSupportOnLock","JbPro","setBufferTime() player is null","setExtendHtml","resetPlayer","playVodConfig","close",'playVodForward() params "rate": ',"_resetPlayer()","mediaSourceAppendBufferError and pause error","deg)","zoomMaxScale","mediaSourceFull and auto wasm ","setPlaybackShowPrecision","videoInfoError and pause player","playVodEndedAndReplay","wasmUseVideoRenderErrorOnLock is true","mseWaitVideoCanplayTimeout","_handleHlsM3u8Empty","expandPrecision","webcodecsH265NotSupport auto wasm [wcs-> wasm] reset player and play error","updateControlSize","updateControlSize() failed, this.player is not init","webglContextLostError and _resetPlayer error","loaded","vrSetGyroMode"," and\n loadingTimeoutReplayTimes is ","_handleMediaSourceH265NotSupport","_handleWebcodecsH265NotSupport","webcodecsUnsupportedConfigurationError","websocketError error and reset player and play error","get cryptoIV or cryptoKey error","destroy() no player, calling _destroy() directly","narrowZoom()","playError","playVodPauseInner","_removeTimeout","player is destroyed","_handleWebcodecsDecodeError","mediaSourceUseCanvasRenderPlayFailed relayType is ","mseWidthOrHeightChange error and pause error"," and this._opt.mirrorRotate is ","setBufferDelayTime() ","isMulti","_handleVideoInfoError","playVodMp4UseSrcError and reset player and play success","mseWorkerAddSourceBufferError and hardDecodingNotSupportAutoWasm is false, pause success","mediaSourceH265NotSupport auto wasm [mse-> wasm] reset player and play error","removeDynamicWatermark() player is not init","g711NotSupported","isWebrtcForQiNiu","isLoading","webrtcLowFps error and _resetPlayer error","_doInitLoadingBackgroundForVideo","offline","useWCS","downloadMpeg4File","failedToAsynchronouslyPrepareWasm is true","playbackExitNextFrameAndPlay()","_handlePlayerStart","mediaSourceFull and reset player and play error","isMute","isControlTypeNormal","JbPro is destroyed","vrEnableSensor() JbPro is destroyed","videoInfoError but player is destroyed",", demuxType is ","11727729hwxljA","isTs","aiObjectDetectWidth","stringify","setSm4CryptoKey() key is invalid and key length is ","webTransportError and pause success","webcodecsAudioNoDataTimeout","hevcNotSupported","isLive","clearBufferDelay()","resetPlayer() success","playVodExitNextFrameAndPlay","playVodNextFrame()","webglAlignmentErrorOnLock is true","top","sendWebsocketMessage() player is not init","objectDetectOpen()","closeZoom() failed, this.player is not init","isWebrtcForOthers","webrtcStreamH265 and reset player and play success","playVodMp4UseSrcVideoError","_resetPlayerBeforeUpdateOptions() and is not player play started and loadingIcon is false and set loadingIcon is true","setSm4CryptoKey()","flvDemuxBufferSizeTooLargeReplay","webcodecs decode error reset player and play error","mediaSourceTsIsMaxDiffReplay","mseSourceBufferError reset player and play success","isXorCrypto","mseDecodeError","isDrawRectangleOpen","streamEnd and _resetPlayer() but player is destroyed and return","notSupportNewWasm but player is destroyed","hlsError","playVodSeek() ","beforeDestroy","networkDelayTimeout but player is destroyed","clear","createElement","_handleDecoderWorkerWasmError","EVENTS","streamQuality","kbps2Speed","downloadTempFlvFile","getExtendHtmlIsShow","setAttribute","JbPro container type can not be "," error","_doInitLoadingBackgroundForRatio","_handleFetchError","enterVr() player is playVodMp4UseVideoSrc, not support enterVr","setCryptoKeyUrl()","flv Demux Buffer Size Too Large and flvDemuxBufferSizeTooLargeReplay = true and reset player and play","checkIsMeaningfulRetryTimes","mediaSourceUseCanvasRenderPlayFailed auto and _resetPlayer and play error","indexOf","webrtcLowFps","initDecoderWorkerTimeout","loading timeout but player is destroyed","webcodecsAudioInitTimeout","src","wcsWidthOrHeightChangeOnLock","videoElementPlayingFailedForWebrtc and pause","webrtc://","supportHls265","controls","watermark","style","playVodNextFrame","updateFaceDetectorConfig","webcodecsAudioInitTimeout and reset player and play error","px)","wasm","mediaSourceAudioInitTimeout but player is destroyed","isMSEAudioDecoderError","_initLoadingBg","simdDecodeDelayTimeout error and pause error","_cryptoPlay","png","webrtc:","_handleMseWaitVideoCanplayTimeout","mediaSourceBufferedIsZeroError auto wasm ","audioResume","wt:","setExtendHtml()","videoElementPlayingFailedForWebrtc and pause player",' must be "http:" or "https:" or "webrtc:" or "ws:" or "wss:" or "wt:" or "artc:" protocol',"decoderWorkerUncaughtError and pause player","tsPacketSizeError","mseWidthOrHeightChangeOnLock","_resetPlayerBeforeUpdateOptions() and isInitDecodeError and playVod playingTime is ","72rLMWxL","webrtcStreamH265OnLock","_playBefore","setFullscreen","showTipsMessage","enterVr() JbPro is destroyed","webcodecsDecodeConfigureErrorOnLock","decoderWorkerWasmError and pause","clearContentToCanvas()","mediaSourceAppendBufferError and isMSEAudioDecoderError is ","fetchError but player is destroyed","url is null and this._opt.url is null","getCurrentZoomIndex","playing","mediaSourceAudioInitTimeout","updateAiFaceDetectLevel()","hardDecodingNotSupportAutoWasm","updateAiObjectDetectLevel"," and old is ",", and retryLog is ","enterVr() player is null","isPlayVodSeeking","simdFFmpeg","mseWaitVideoCanplayAutoWasm","_playNext and _hasLoaded() is true","forward","mediaSourceTsIsMaxDiffOnLock is true","mseWorkerAddSourceBufferError and _resetPlayer error","replay","_resetPlayerBeforeUpdateOptions() and replayUseLastFrameShow is true and is player started and set loadingIcon by replayShowLoadingIcon ","webcodecsAudioDecodeErrorReplay","fetch error and _resetPlayer error","networkDelayTimeout","_streamEndReplayTimes","_checkHasCreated","playVodForwardJumping","width","playbackTF","getVolume","16:9","playVodForward","_handleStreamEnd","setPlaybackStartTime() control type is simple and timestamp: ","networkDelayTimeoutOnLock","setPlaybackStartTime() control type is normal and timestamp: ","removeWatermark","_handleWebcodecsDecodeConfigureError","_loadingTimeoutReplayTimes","playVodMp4ErrorOnLock","mseWorkerAddSourceBufferErrorOnLock","mseSourceBufferError reset player and play error","webcodecsAudioInitTimeout error and pause error","clientHeight","showPlayBtn","webcodecsH265NotSupport and pause error"," and opt.cryptoKeyUrl: ","webcodecsAudioDecodeErrorOnLock"," res is null","webcodecsDecodeConfigureError auto wasm [wcs-> wasm] _resetPlayer and play error","wasm decode error and _resetPlayer error","watermark_txt","openDrawRectangle()","decoderWorkerInitError and pause player","playVodEndedInner","updateIsEmitSEI()","playVodMp4UseSrcVideoErrorOnLock is true","setPtzPosition","playVodCalcFpsError and pause success","aspectRatio","hlsError and pause player","videoBufferDelay","videoElementPlayingFailed but player is destroyed","webglAlignmentErrorOnLock","updateCurrentZoom","mute()","_handleWcsWidthOrHeightChange","togglePerformancePanel","webcodecsH265NotSupport","_updateMultiIndex","setM7sCryptoKey","querySelector","hls","getFlvMetaData() player is null","aliyunRtc","clearBufferDelay() player is not init","widthOrHeightChangeReplayDelayTime"," second, is too large, video will show blank screen until cache ","8991VybzRV","mediaSourceUseCanvasRenderPlayFailedReplay","playbackClearCacheBuffer()","mediaSourceTsIsMaxDiff but player is destroyed","togglePerformancePanel() failed, showPerformance is prev: ","websocketError but player is destroyed","hlsError error and network is offline and wait network online to play , so _resetPlayer and wait play","updatePlaybackForwardMaxRateDecodeIFrame() ","getControlBarShow","isInitDecodeError","wasmUseVideoRenderError and reset player and play success","simdDecodeErrorReplay","_pause() error","loadingBackground","openDrawRectangle","videoElementPlayingFailedForWebrtc and pause player success","mseWaitVideoCanplayTimeoutOnLock","vrSetGyroMode() JbPro is destroyed","webglAlignmentError","loading timeout and pause error","setRotate() player is null","addContentToCanvas() player is not init","mediaSourceAudioNoDataTimeout error and pause error","setNetworkDelayTime() player is null","objectDetectOpen","destroy() rejected - already destroying","playbackEndedAndReplay and _resetPlayer error","stopRecordAndSave","getIsDebug","debugError","_checkIsMeaningfulRetry","addContentToContainer","wasmWidthOrHeightChangeOnLock","max","debugWarn","webcodecsAudioInitTimeout and _resetPlayer error","mediaSourceH265NotSupport auto wasm [mse-> wasm] reset player and play success","m7s","vertical","player is not ready"," and\n needResetPlayer(url change) is ","_handleMediaSourceFull","error","timeout","mseSourceBufferError but player is destroyed","decoderWorkerInitErrorOnLock","mediaSourceAudioNoDataTimeout and reset player and play success","hlsError and _resetPlayer error",", next replay","mediaSourceTsIsMaxDiff","simdDecodeDelayTimeout and _resetPlayer error","http://","mediaSourceAudioG711NotSupportOnLock","mseSourceBufferError","wss://","vrEnableSensor() player is null","mseDecoderUseWorker","playback","playVodMp4UseSrcErrorOnLock is true",".m3u8","streamEnd and reset player and play success","liveStream","emit","isWebrtcForDJI","setNakedFlowFps","wt://","getPTZCmd() ptz is null","loadingTimeoutRetryEnd and\n opt.loadingTimeout is ","_resetReplayTimes","playVodMp4UseSrcErrorOnLock","_hasLoaded","px 0","mseDecoderUseWorker and mseSourceBufferError and isMSEVideoDecoderInitializationFailedNotSupportHevc is true so auto wasm","_playBefore this.player.play error","setSm4CryptoKey() player is null","_handlePlaybackEndedAndReplay","getPlayVodCurrentRate","mediaSourceAudioG711NotSupportReplay","clearControlHtml() player is not init","mseWidthOrHeightChange and widthOrHeightChangeReplay is false,pause success","webcodecsAudioNoDataTimeout and reset player and play","streamEnd and websocket1006ErrorReplay is true and error is 1006 and _websocket1006ErrorReplayTimes is ","loading","getExtendBtnList()","onload","appendChild","updateWatermark()","toggleDrawRectangle() ","networkDelayTimeoutReplay","playVodBackwordJumping","/index/api/webrtc","heartTimeout","decoderWorkerInit and play error","streamEnd pause","_handleWebrtcError","control type is not normal , not support!","$loadingBgImage","updateOption","debugUuid","debugLog","bound","playVodForwardJumping() ","wcsDecodeErrorReplay","mseSourceBufferErrorOnLock",", options: ","JbPro need container option and now container is","playbackEnd and pause","webcodecsAudioInitTimeoutReplay","_handleWasmUseVideoRenderError","_handlePlayVodMp4UseSrcError","isAudioMute"," and this._opt.rotate is ","destroy()#_nextDestroy() player destroy failed","expandZoom()","_resetPlayer() player has loaded","outOfMemoryWasmOnLock","setExtendHtml() player is not init","toggleControlExtendBtn","cryptoIV","webglContextLostError but player is destroyed","join","ws://","mediaSourceBufferedIsZeroError and autoWasm is false ,pause success","failedToAsynchronouslyPrepareWasmLock","_websocket1006ErrorRetryLog","webrtcLowFps and reset player and play error","/rtc/v1/play/","_resetDemuxType","streamErrorReplayDelayTimeout","playVodEndedAndReplay and reset player and play error","hlsErrorOnLock is true","mediaSourceDecoderConfigurationErrorOnLock","wasmWidthOrHeightChange","setXorCryptoKey","objectDetect","mseWidthOrHeightChange and reset player and play","videoElementPlayingFailedForWebrtcOnLock is true","loading timeout _resetPlayer error","screenshotWatermark","playbackConfig.isUseFpsRender is false, isCacheBeforeDecodeForFpsRender can not be ture, isCacheBeforeDecodeForFpsRender is set to false","playVodMseDecodeVideoError but player is destroyed","mediaSourceDecoderConfigurationError","remove","simdDecodeDelayTimeout","setPlaybackStartTime() ","playback() ","_pause() player has not loaded and waiting load","streamEnd pause player success","playVodMseDecodeVideoError","flv Demux Buffer Size Too Large and reset player and play success","isPlayFailedAndPausedSaveLastIframeInfo","$loadingBg","playVodExitNextIFrameAndPlay","mediaSourceUseCanvasRenderPlayFailed and mediaSourceUseCanvasRenderPlayFailedReplay is false, pause success","setKeepScreenOn()","setVolume() ","networkDelayTimeoutOnLock is true","playType is not playback","decoderWorkerInitError and pause player success","div","mediaSourceUseCanvasRenderPlayFailed and reset player and play success","notSupportNewWasmOnLock","vrLookAt() JbPro is destroyed","_handleWebcodecsAudioDecodeError","webcodecsH265NotSupport and autoWasm is false , pause success","playbackExitNextIFrameAndPlay()","mediaSourceH265NotSupport auto wasm [mse-> wasm] reset player and play","tsPacketSizeError and pause success","isNakedFlow","11kRLcoK","getRenderElement","isPlayVodMp4UseVideoSrc","startRecord() ","tsPacketSizeError and pause","togglePerformancePanel() ","setM7sCryptoKey()","playbackNormal","togglePerformancePanel() failed, this.player is not init","mseAddSourceBufferError auto wasm [mse-> wasm] _resetPlayer and play error","mute","streamEndReplay","videoElementPlayingFailed","_handleMediaSourceAppendBufferError","isZoomOpen","webglAlignmentError and _resetPlayer error","setScaleMode() player is null","_playNext and decoderWorkerInit callback and next play","updateAiFaceDetectInterval() player is null"," must be number type","aliyunRtcError and pause player success","mseSourceBufferError and isMSEVideoDecoderInitializationFailedNotSupportHevc is true so auto wasm","clearControlHtml","updateGhostWatermark() player is not init","fmp4","videoElementPlayingFailed and _resetPlayer error","container","_destroyLock","mediaSourceAudioInitTimeoutReplay","isCacheBeforeDecodeForFpsRender","playFailedAndPausedShowPlayBtn","screenshotByRect","toFixed","wasmWidthOrHeightChange and reset player and play error","fetchErrorOnLock","setRotate","streamEndOnLock","webcodecsUnsupportedConfigurationError and pause error","_resetPlayerBeforeUpdateOptions() and is playback playingTimestamp is ","s reset player and play","downloadTempNakedFlowFile","playbackEndInner","mediaSourceAudioNoDataTimeoutOnLock","none","objectFit","vrLookAt()","11238140TAYkcg","complete","webcodecsDecodeErrorOnLock","wasmUseVideoRenderError and _resetPlayer error","webFullscreen","setPlaybackShowPrecision() ",'playVodSeek() params "time": ',"webcodecsDecodeError","fullscreenWatermarkConfig text is empty","hlsM3u8EmptyOnLock","pause","simdDecodeErrorReplayType","updateLoadingText()","streamEnd and 1006 error network is offline and wait network online to play , so return","websocket1006ErrorReplayDelayTime","currentZoom","destroy() start","https:","xorCryptoKey","_heartTimeoutReplayTimes","log","hls264UseOldDemuxer and _resetPlayer error","updateIsEmitSEI","once","updateGhostWatermark()","_playFailedAndPausedLastFrameInfo","toggleControlBar","simdDecodeError and simdDecodeErrorReplay is false , pause success","useMSE","playVodNextIFrame","push"," success","isSpecialPlaybackVod","4:3","webcodecsH265NotSupport but player is destroyed","fetch error and pause player success","resize","mediaSourceAudioInitTimeout error and pause error"," and\n opt.heartTimeoutReplayTimes is ","fetch error and _resetPlayer but player is destroyed and return","\n isMp4UseUseVideoSrc is ","clearExtendHtml()","mediaSourceAppendBufferErrorOnLock is true","getPlaybackCurrentRate","aiFaceDetectWidth","mediaSourceAudioG711NotSupport and _resetPlayer error","mediaSourceAppendBufferError but player is destroyed","hlsErrorOnLock","playType is ","_handleMediaSourceTsIsMaxDiff","play","mediaSourceAudioNoDataTimeout and reset player and play","decoderWorkerWasmError","decoderWorkerInitError","webcodecsAudioInitTimeoutOnLock","_resetPlayer() player has not loaded and load success,next destroy and init player","controlsList","getUrl","hlsM3u8Empty","initShowLoadingIconInner","decoderWorkerUncaughtError and pause player success","_playVodMp4UseSrcVideoErrorRetryLog","need reset player and\n isOldHls is ","streamEnd and 1006 error and reset player and play error","playVodMp4UseSrcError and audioDecodeFailed and set mseDecodeAudio false and syncAudioAndVideo true","updateWatermark","setTimeout() ","setControlHtml() player is not init",".h264","isM7sCrypto","webrtcError and pause player","mseWorkerAddSourceBufferError error and pause error","mseAddSourceBufferErrorOnLock","updateDrawRectangleConfig","nakedFlowFps","url is not support","narrowZoom","JbPro container has been created and can not be created again","dynamicWatermarkConfig","1006","updateDebugLevel() player is null","autoCalcFps","setRotate() rotate is ","setSm4CryptoKey() key is invalid and length is ","websocketError error and _resetPlayer() but player is destroyed and return","playVodCalcFpsErrorOnLock","this._opt.url === url and ","length","streamEnd and reset player and play error"];return(gP=function(){return t})()}function yP(t,e){const s=gP();return(yP=function(t,e){return s[t-=131]})(t,e)}!function(t){const e=yP,s=t();for(;;)try{if(847636===-parseInt(e(969))/1*(parseInt(e(1484))/2)+parseInt(e(349))/3*(parseInt(e(481))/4)+-parseInt(e(628))/5*(parseInt(e(1281))/6)+-parseInt(e(617))/7*(-parseInt(e(323))/8)+-parseInt(e(792))/9+-parseInt(e(1184))/10*(-parseInt(e(1138))/11)+parseInt(e(882))/12*(parseInt(e(644))/13))break;s.push(s.shift())}catch(t){s.push(s.shift())}}(gP);class AP extends h{constructor(t={}){const e=yP;super(),this[e(630)]={},this[e(489)]=e(726),this[e(154)]=null,Object[e(1315)](t)[e(1576)](s=>{const i=e;if(void 0===t[s])throw new Error(i(1313)+s+i(1423))});const s=Di();let i=Object.assign({},s,t);i[e(691)]="",Ws(i[e(1012)])&&(Vs(t[e(1514)])&&(i[e(1514)]=i.timeout),Vs(t.heartTimeout)&&(i[e(1060)]=i[e(1012)])),i[e(768)]&&(i[e(1067)]=ki()),this[e(293)]=new ue(this);let r=t[e(1164)];if(typeof t[e(1164)]===e(479)&&(r=document[e(962)](t[e(1164)])),!r)throw this[e(998)](e(726),e(1074),t[e(1164)]),new Error(e(310));if(xi(i[e(800)])){const t=document[e(829)](e(274));return t[e(315)]=!0,t[e(836)](e(1240),e(636)),t.disablePictureInPicture=e(720),t[e(858)][e(1416)]="absolute",t[e(858)][e(806)]=0,t[e(858)][e(523)]=0,t[e(858)][e(466)]=e(471),t[e(858)][e(918)]=e(471),r[e(1054)](t),this[e(1517)]=t,this.$container=r,void(this._opt=i)}if(i.decoder&&xi(-1!==i.decoder[e(846)](e(1485))||-1!==i[e(142)].indexOf(e(1278))))throw this.debugError(e(726),"JbPro decoder "+i[e(142)]+" must be decoder-pro.js or decoder-pro-simd.js"),new Error(e(192)+i[e(142)]+e(1522));if(r[e(1466)]===e(1280)||r.nodeName===e(422))throw this.debugError(e(726),e(837)+r[e(1466)]+" type"),new Error("JbPro container type can not be "+r[e(1466)]+e(159));if(i[e(234)]>=i[e(1060)])throw this.debugError(e(726),"JbPro videoBuffer "+i[e(234)]+e(618)+i[e(1060)]+"s"),new Error(e(296)+i[e(234)]+e(618)+i[e(1060)]+"s");if(!r[e(1379)])throw this[e(998)](this.TAG_NAME,e(403),r),new Error(e(403),r);if(this[e(916)](r))throw this[e(998)](e(726),e(1261),r),new Error(e(1261),r);if(r[e(1379)].add("jb-pro-container"),Mi(r,L,Cs()),delete i.container,Ws(i[e(234)])&&(i.videoBuffer=1e3*Number(i[e(234)])),Ws(i[e(952)])&&(i.videoBufferDelay=1e3*Number(i.videoBufferDelay)),Ws(i[e(1327)])&&(i[e(1327)]=1e3*Number(i[e(1327)])),Ws(i[e(556)])&&(i[e(556)]=1e3*Number(i.aiFaceDetectInterval)),Ws(i[e(561)])&&(i.aiObjectDetectInterval=1e3*Number(i[e(561)])),Ws(i[e(1598)])&&(Vs(i[e(1359)])&&(i.decoderErrorAutoWasm=i.autoWasm),Vs(i[e(898)])&&(i.hardDecodingNotSupportAutoWasm=i.autoWasm),Vs(i[e(905)])&&(i[e(905)]=i[e(1598)])),Ws(i[e(312)])&&Vs(i[e(1228)])){const t=Ft[i[e(312)]];t&&(i.aiFaceDetectWidth=t)}if(Ws(i.aiObjectDetectLevel)&&Vs(i[e(794)])){const t=Ut[i.aiObjectDetectLevel];t&&(i[e(794)]=t)}Pi(i[e(1492)])&&(i[e(1253)]=!0),Pi(i[e(279)])&&(i[e(1536)]=!0),this._opt=i,this.originalOptions=Object[e(713)]({},this._opt),this[e(1068)](this[e(489)],e(265));try{this[e(1068)](this[e(489)],e(280),JSON.stringify(this._opt))}catch(t){this.debugLog(this[e(489)],e(280),this[e(630)])}i[e(234)]>1e4&&this[e(1003)](this[e(489)],e(1357)+i.videoBuffer/1e3+e(448)+i[e(234)]/1e3+e(575)),this[e(1521)]=!1,this[e(1165)]=!1,this[e(154)]=r,this[e(549)]={},this[e(598)]={},this._tempPlayerIsMute=!0,this[e(929)]=0,this[e(1203)]=0,this[e(1476)]=0,this._streamEndReplayTimes=0,this._websocket1006ErrorReplayTimes=0,this.bound={_handlePlayerPlayFailedAndPaused:this._handlePlayerPlayFailedAndPaused.bind(this),_handlePlayerBeforeDestroy:this._handlePlayerBeforeDestroy[e(1383)](this),_handlePlayerResize:this[e(602)][e(1383)](this),_handlePlayerFullscreen:this[e(1544)][e(1383)](this),_handlePlayerStart:this[e(784)][e(1383)](this),_handleWebglAlignmentError:this[e(444)][e(1383)](this),_handleWebglContextLostError:this._handleWebglContextLostError[e(1383)](this),_handleMediaSourceH265NotSupport:this[e(752)][e(1383)](this),_handleMseWaitVideoCanplayTimeout:this[e(871)].bind(this),_handleMediaSourceFull:this[e(1010)][e(1383)](this),_handleMediaSourceAppendBufferError:this[e(1151)][e(1383)](this),_handleMseSourceBufferError:this[e(377)][e(1383)](this),_handleMediaSourceBufferedIsZeroError:this._handleMediaSourceBufferedIsZeroError[e(1383)](this),_handleMseAddSourceBufferError:this._handleMseAddSourceBufferError[e(1383)](this),_handleMediaSourceDecoderConfigurationError:this._handleMediaSourceDecoderConfigurationError[e(1383)](this),_handleMediaSourceTsIsMaxDiff:this._handleMediaSourceTsIsMaxDiff.bind(this),_handleMseWidthOrHeightChange:this._handleMseWidthOrHeightChange[e(1383)](this),_handleMediaSourceAudioG711NotSupport:this._handleMediaSourceAudioG711NotSupport[e(1383)](this),_handleMediaSourceAudioInitTimeout:this[e(562)][e(1383)](this),_handleMediaSourceAudioNoDataTimeout:this[e(1540)].bind(this),_handleMseWorkerAddSourceBufferError:this[e(286)][e(1383)](this),_handlePlayVodMseDecodeVideoError:this[e(426)][e(1383)](this),_handleMediaSourceUseCanvasRenderPlayFailed:this[e(576)][e(1383)](this),_handleWebcodecsH265NotSupport:this._handleWebcodecsH265NotSupport[e(1383)](this),_handleWebcodecsUnsupportedConfigurationError:this[e(288)].bind(this),_handleWebcodecsDecodeConfigureError:this._handleWebcodecsDecodeConfigureError.bind(this),_handleWebcodecsDecodeError:this._handleWebcodecsDecodeError[e(1383)](this),_handleWcsWidthOrHeightChange:this[e(957)].bind(this),_handleWebcodecsAudioNoDataTimeout:this[e(256)][e(1383)](this),_handleWebcodecsAudioInitTimeout:this[e(665)][e(1383)](this),_handleWebcodecsAudioDecodeError:this[e(1132)][e(1383)](this),_handleSimdDecodeError:this[e(542)][e(1383)](this),_handleSimdDecodeDelayTimeout:this[e(388)].bind(this),_handleWasmWidthOrHeightChange:this._handleWasmWidthOrHeightChange[e(1383)](this),_handleWasmUseVideoRenderError:this._handleWasmUseVideoRenderError[e(1383)](this),_handleNotSupportNewWasm:this[e(494)].bind(this),_handleOutOfMemoryWasm:this[e(1546)][e(1383)](this),_handleFailedToAsynchronouslyPrepareWasm:this[e(406)].bind(this),_handleVideoElementPlayingFailed:this[e(1367)][e(1383)](this),_handleSimdH264DecodeVideoWidthIsTooLarge:this[e(147)].bind(this),_handleNetworkDelayTimeout:this[e(1307)][e(1383)](this),_handleFlvDemuxBufferSizeTooLarge:this[e(1295)][e(1383)](this),_handleFetchError:this[e(840)][e(1383)](this),_handleStreamEnd:this._handleStreamEnd[e(1383)](this),_handleWebsocketError:this[e(411)][e(1383)](this),_handleHlsError:this._handleHlsError[e(1383)](this),_handleHls264UseOldDemuxer:this._handleHls264UseOldDemuxer[e(1383)](this),_handleHlsM3u8Empty:this[e(743)].bind(this),_handleDecoderWorkerInitError:this[e(455)].bind(this),_handleDecoderWorkerUncaughtError:this[e(1593)][e(1383)](this),_handleDecoderWorkerWasmError:this[e(830)][e(1383)](this),_handleVideoElementPlayingFailedForWebrtc:this[e(329)][e(1383)](this),_handleVideoInfoError:this[e(769)][e(1383)](this),_handleTsPacketSizeError:this[e(414)][e(1383)](this),_handleDelayTimeout:this[e(327)][e(1383)](this),_handleLoadingTimeout:this[e(702)][e(1383)](this),_handleAliyunRtcError:this[e(1560)][e(1383)](this),_handleWebrtcError:this[e(1063)].bind(this),_handleWebrtcStreamH265:this[e(1552)][e(1383)](this),_handleWebrtcLowFps:this[e(1409)][e(1383)](this),_handleWebTransportError:this[e(220)][e(1383)](this),_handlePlayVodEnded:this._handlePlayVodEnded[e(1383)](this),_handlePlayVodEndedAndReplay:this._handlePlayVodEndedAndReplay[e(1383)](this),_handlePlayVodMp4Error:this._handlePlayVodMp4Error[e(1383)](this),_handlePlayVodMp4UseSrcError:this._handlePlayVodMp4UseSrcError[e(1383)](this),_handlePlayVodMp4UseSrcVideoError:this[e(614)][e(1383)](this),_handlePlayVodCalcFpsError:this[e(1594)][e(1383)](this),_handlePlaybackEnd:this[e(149)][e(1383)](this),_handlePlaybackEndedAndReplay:this[e(1044)][e(1383)](this)},this[e(482)]=new sr(this),this[e(630)].isUseNewFullscreenWatermark?this[e(857)]=new zR(this):this[e(857)]=new NR(this),this[e(512)]=new hP(this),this[e(464)]=new uP(this),this[e(1093)]=[],this._mseDecodeErrorRetryLog=[],this[e(648)]=[],this[e(1245)]=[],this[e(550)]=[],this[e(302)]=!1,this[e(1535)]={},this.widthOrHeightChangeReplayDelayTimeout=null,this.streamErrorReplayDelayTimeout=null,this[e(272)]=null,this[e(627)]=null,this.playbackPauseTimeout=null,this[e(1523)]=null,this[e(848)]=null,this[e(1065)]=null,this[e(1120)]=null,this[e(137)]=!1,this[e(1209)]=null,this._initOnLock(),this[e(287)](),this[e(1289)](r,i,!0),this._initWatermark(),this[e(177)](),this[e(1068)](e(726),e(669)+fs+":"+ps),this.debugLog(this[e(489)],e(668),navigator.userAgent);let n=e(518)+fs+":"+ps+e(365);Yi()?n+=' and delay time is "2046-2-1"'+e(1400):n+=e(656),console[e(1204)](n)}[mP(1288)](){return new Promise((t,e)=>{const s=yP;if(this.debugLog(s(726),s(1200)),this._destroyLock)return this[s(1068)](s(726),s(994)),e(s(1526));this._destroyLock=!0,this._destroyed=!0,this[s(701)](),this[s(761)](),this[s(1403)](),this[s(1375)](),this[s(1517)]&&(this[s(1068)](s(726),"destroy() cleaning up video element"),this[s(1517)].pause(),this[s(1517)].currentTime=0,this[s(1517)][s(373)]&&(this[s(1517)][s(373)]=null,this[s(1517)][s(1459)](s(373))),this.$videoElement.src&&(this[s(1517)][s(851)]="",this[s(1517)].removeAttribute(s(851))),this[s(154)]&&this[s(154)][s(376)](this.$videoElement),this[s(1517)]=null),this[s(626)]();const i=()=>{const i=s;this[i(1068)](i(726),i(1419)),this[i(371)][i(1288)]()[i(722)](()=>{const e=i;this[e(1068)]("JbPro",e(1604)),this.player=null,this._destroy(),this[e(1165)]=!1,t()})[i(1430)](t=>{const s=i;this[s(998)](s(726),s(1081),t),this[s(1165)]=!1,e(t)})};this[s(371)]?this[s(1039)]()?(this[s(1068)](this[s(489)],s(670)),i()):(this[s(1068)](this[s(489)],s(243)),this[s(371)].on(q[s(1435)],()=>{const t=s;this[t(1068)](this[t(489)],"destroy() player has not loaded and load success and calling _nextDestroy()"),i()})):(this.debugLog(s(726),s(757)),this[s(552)](),this[s(1165)]=!1,t())})}[mP(761)](){const t=mP;this.widthOrHeightChangeReplayDelayTimeout&&(clearTimeout(this[t(1456)]),this[t(1456)]=null),this.streamErrorReplayDelayTimeout&&(clearTimeout(this[t(1097)]),this.streamErrorReplayDelayTimeout=null),this[t(272)]&&(clearTimeout(this[t(272)]),this.streamEndReplayDelayTimeout=null),this[t(1504)]&&(clearTimeout(this[t(1504)]),this[t(1504)]=null),this[t(1523)]&&(clearTimeout(this[t(1523)]),this.playbackResumeTimeout=null)}[mP(552)](){const t=mP;this.events&&(this[t(482)].destroy(),this.events=null),this[t(857)]&&(this[t(857)][t(1288)](),this[t(857)]=null),this.network&&(this.network[t(1288)](),this[t(464)]=null),this[t(512)]&&(this[t(512)][t(1288)](),this[t(512)]=null),this[t(154)]&&(this[t(154)][t(1379)][t(1111)](t(1284)),this[t(154)][t(1379)][t(1111)](t(1494)),Fi(this.$container,L),this.$container=null),this._tempPlayBgObj=null,this[t(598)]=null,this._isNetworkOfflinePaused=!1,this._tempContentToCanvasData=[],this[t(405)]=!1,this[t(1535)]={},this[t(219)]=!0,this._playFailedAndPausedLastFrameInfo=null,this[t(1037)](),this[t(1068)]("JbPro","_destroy() end and calling resolve()"),this[t(630)]={},this[t(285)]={},this.bound=null,this[t(293)]=null}[mP(287)](){const t=mP;(this[t(630)][t(467)]||this._opt[t(1168)])&&this.on(q[t(208)],this[t(1069)][t(1412)])}_resetReplayTimes(){const t=mP;this[t(929)]=0,this[t(1203)]=0,this[t(1476)]=0,this._streamEndReplayTimes=0,this[t(497)]=0,this[t(1093)]=[],this[t(336)]=[],this._wcsDecodeErrorRetryLog=[],this._playVodMp4UseSrcVideoErrorRetryLog=[],this[t(137)]=!1}[mP(506)](t={}){const e=mP,s=Di();let i=Object[e(713)]({},s,this[e(285)],{playType:this[e(630)][e(343)]});return ii(t)&&(i[e(343)]===p[e(919)]?i[e(647)]=Object.assign({},s[e(647)],t):i.playType===p.playVod&&(i[e(730)]=Object[e(713)]({},s[e(730)],t)),i=this[e(1388)](i)),i}[mP(1289)](t,e,s){const i=mP;s&&(e=this._initPlayerOptionsForPlayVodOrPlayback(e)),this.player=new FR(t,e),this[i(1393)]()}[mP(1388)](t){const e=mP;if(t[e(343)]===p[e(919)]){t[e(595)]=!0,t[e(234)]=0;const s=this[e(1564)](t[e(647)]);t[e(1562)]=s.playbackForwardMaxRateDecodeIFrame||t[e(1562)],t[e(1277)]=s[e(1277)]||t[e(1277)],t.playbackConfig=s,t.useWCS=s[e(780)],t[e(1212)]=s[e(1212)],t[e(1569)]=s.useSIMD,js(s[e(1328)])&&(t[e(1328)]=s[e(1328)])}else if(t.playType===p[e(311)]){t[e(595)]=!0,t.videoBuffer=0,t[e(855)]=!0;const s=this._parsePlayVodOptions(t[e(730)]);t[e(730)]=s,t[e(780)]=s[e(780)],t[e(1212)]=s[e(1212)],t[e(1569)]=s.useSIMD,s.useMSE&&(t[e(1511)]=!0),js(s.isFFmpegSIMD)&&(t.isFFmpegSIMD=s[e(1328)])}return t}_resetPlayer(t={}){return new Promise((e,s)=>{const i=yP;try{this[i(1068)](this[i(489)],i(733),JSON.stringify(t))}catch(e){this[i(1068)](this[i(489)],i(733),t)}if(this._hasLoadedError())return s(i(539));const r=()=>{const e=i;this[e(630)].url="",this._opt[e(1334)]={},this[e(630)]=Object[e(713)](this._opt,t),this[e(1289)](this[e(154)],this[e(630)],!1)},n=()=>{const t=i;this[t(371)][t(1288)]()[t(722)](()=>{const s=t;this[s(371)]=null,r(),this[s(1068)](this[s(489)],s(1380)),e()}).catch(e=>{const i=t;this[i(998)](this[i(489)],i(375),e),s(e)})};this[i(371)]?this[i(1039)]()?(this.debugLog(this[i(489)],i(1083)),n()):(this[i(1068)](this[i(489)],i(412)),this[i(371)].on(q[i(1435)],()=>{const t=i;this.debugLog(this[t(489)],t(1239)),n()})):(r(),this.debugLog(this[i(489)],i(1380)),e())})}_bindPlayerEvents(){const t=mP;Object[t(1315)](Q)[t(1576)](e=>{const s=t;this[s(371)].on(Q[e],(...t)=>{this[s(1031)](e,...t)})}),this.player[t(1207)](q[t(826)],this[t(1069)][t(266)]),this.player.on(q[t(1220)],this[t(1069)][t(602)]),this.player.on(q[t(616)],this[t(1069)]._handlePlayerFullscreen),this.player.once(q.startInner,this[t(1069)][t(784)])}_initWatermark(){const t=mP;if(Xi()&&(this[t(630)][t(553)]={text:decodeURIComponent(I+t(1633)),color:t(589)}),ii(this[t(630)].fullscreenWatermarkConfig)){const e=zs(this[t(154)],this[t(630)][t(553)]);if(!e[t(942)])return void this[t(1003)]("JbPro",t(1192));this.watermark.load(e)}}[mP(177)](){const t=mP;this[t(464)].on(q.online,()=>{const e=t;if(this[e(1031)](q[e(671)],q[e(183)]),this[e(1335)]())this[e(1068)](this[e(489)],e(608));else if(this[e(1068)](this[e(489)],"network online"),this.player&&this[e(371)][e(428)](),this[e(302)]&&this[e(1535)]&&this[e(1535)][e(691)]){const t=this[e(1535)][e(691)],s=this._isNetworkOfflinePausedAndNextPlayConfig.playOptions;this[e(1476)]++;const i=this[e(1535)][e(541)]||e(724);this[e(302)]=!1,this[e(1535)]={},this[e(1068)](this[e(489)],i+e(174)+this[e(1476)]+" and reset player and play"),this[e(1234)](t,s)[e(722)](()=>{const t=e;this[t(1068)](this.TAG_NAME,i+t(141))}).catch(t=>{const s=e;this[s(1031)](q[s(208)],J[s(612)],{},t.toString()),this[s(998)](this[s(489)],i+s(1570),t[s(317)](),t)})}}),this[t(464)].on(q.offline,()=>{const e=t;this[e(1031)](q[e(671)],q[e(779)]),this[e(1068)](this.TAG_NAME,e(1297)),this.isDestroyed()?this[e(1068)](this[e(489)],e(538)):this[e(371)]&&this[e(371)][e(212)]()})}[mP(916)](t){if(!t)return!1;return!!Bi(t,L)}[mP(1375)](){const t=mP;this.webglAlignmentErrorOnLock=!1,this.webglContextLostErrorOnLock=!1,this.mediaSourceH265NotSupportOnLock=!1,this.mediaSourceFullOnLock=!1,this[t(322)]=!1,this[t(1072)]=!1,this[t(1488)]=!1,this[t(1256)]=!1,this[t(1100)]=!1,this[t(231)]=!1,this.mseWidthOrHeightChangeOnLock=!1,this[t(1021)]=!1,this[t(153)]=!1,this[t(1180)]=!1,this[t(931)]=!1,this[t(1529)]=!1,this[t(1513)]=!1,this[t(1584)]=!1,this[t(888)]=!1,this[t(1186)]=!1,this.wcsWidthOrHeightChangeOnLock=!1,this[t(325)]=!1,this.webcodecsAudioInitTimeoutOnLock=!1,this[t(938)]=!1,this[t(237)]=!1,this[t(1615)]=!1,this[t(1001)]=!1,this[t(1374)]=!1,this[t(1130)]=!1,this.outOfMemoryWasmOnLock=!1,this[t(1092)]=!1,this[t(235)]=!1,this[t(478)]=!1,this.networkDelayTimeoutOnLock=!1,this[t(1475)]=!1,this[t(1172)]=!1,this[t(1174)]=!1,this[t(1618)]=!1,this[t(687)]=!1,this[t(1231)]=!1,this.hlsM3u8EmptyOnLock=!1,this[t(1304)]=!1,this[t(1014)]=!1,this[t(168)]=!1,this[t(723)]=!1,this.videoElementPlayingFailedForWebrtcOnLock=!1,this.videoInfoErrorOnLock=!1,this[t(240)]=!1,this[t(883)]=!1,this[t(985)]=!1,this[t(557)]=!1,this.tsPacketSizeErrorOnLock=!1,this.playVodMp4ErrorOnLock=!1,this[t(430)]=!1,this.hls264UseOldDemuxerOnLock=!1,this.playVodMp4UseSrcErrorOnLock=!1,this[t(326)]=!1,this.playVodCalcFpsErrorOnLock=!1,this[t(1448)]=!1}[mP(1335)](){return this[mP(1521)]}getOption(){const t=mP;return this.player?this[t(371)].getOption():{}}[mP(1384)](t){const e=mP;this[e(1068)](e(726),e(418)+t),this[e(630)].debug=!!t,this[e(371)]?this[e(371)][e(1066)]({debug:!!t},!0):this[e(1003)]("JbPro",e(399))}[mP(997)](){const t=mP;let e=!1;return this[t(371)]&&(e=this[t(371)][t(630)][t(293)]),e}[mP(1148)](){const t=mP;this[t(1068)](t(726),t(956)),this[t(371)]&&this.player[t(1148)](!0)}[mP(369)](){const t=mP;this[t(1068)]("JbPro",t(488),this[t(786)]()),this[t(371)]&&this[t(371)].isAudioMute()&&this[t(371)][t(1148)](!1)}[mP(1420)](t){const e=mP;this.debugLog(e(726),e(1124)+t),this.player&&(this.player.volume=t)}[mP(920)](){const t=mP;let e=null;return this.player&&(e=this.player.volume,e=parseFloat(e)[t(1170)](2)),e}[mP(873)](){const t=mP;this[t(1068)](t(726),"audioResume() and call cancelMute()"),this[t(369)]()}[mP(1309)](t){const e=mP;this.debugLog(e(726),e(1250)+t),t=Number(t),isNaN(t)?this[e(1003)](e(726),e(284)+t+e(139)):(this[e(630)][e(1012)]=t,this[e(630)][e(1514)]=t,this[e(630)][e(1060)]=t,this[e(371)]&&this[e(371)][e(1066)]({timeout:t,loadingTimeout:t,heartTimeout:t}))}[mP(1348)](t){const e=mP;this[e(1068)](e(726),e(164)+t),this[e(371)]?this.player[e(1348)](t):this[e(1003)](e(726),e(1154))}pause(t=!1){return new Promise((e,s)=>{const i=yP;this.debugLog("JbPro",i(475)+t),this.isDestroyed()&&s(i(788)),(this[i(630)][i(449)]||this._opt.replayUseLastFrameShow)&&(this[i(549)]=this[i(1428)]()),this[i(219)]=this.isMute(),this[i(684)](t).then(t=>{e(t)})[i(1430)](t=>{s(t)})})}[mP(684)](t=!1){return new Promise((e,s)=>{const i=yP;if(this[i(1068)](i(726),i(1461)+t),this.isDestroyed())return s(i(788));this[i(1037)](),this[i(371)]?this[i(1039)]()?(this[i(1068)](this[i(489)],i(276)),this.player[i(1194)](t).then(t=>{e(t)})[i(1430)](t=>{s(t)})):(this[i(1068)](this[i(489)],i(1115)),this[i(371)].on(q[i(1435)],()=>{const r=i;this[r(1068)](this[r(489)],r(1326)),this.player[r(1194)](t)[r(722)](t=>{const s=r;this[s(1068)](this[s(489)],s(1506)),e(t)})[r(1430)](t=>{const e=r;this.debugError(this[e(489)],e(981),t),s(t)})})):s(i(1424))})}[mP(731)](){return new Promise((t,e)=>{const s=yP;if(this[s(1335)]())return e(s(788));this[s(1068)]("JbPro",s(637)),this[s(1288)]()[s(722)](()=>{t()}).catch(t=>{e(t)})})}clearView(){const t=mP;this[t(1068)](t(726),"clearView()"),this[t(371)]&&this[t(371)][t(274)]?this.getRenderType()===A.canvas?this.player.video[t(535)]():this.debugWarn(t(726),"clearView",t(528)):this[t(1003)]("JbPro",t(535),t(1424))}play(t="",e={}){return new Promise((s,i)=>{const r=yP;if(this[r(1335)]())return i(r(788));if($i()){const t=decodeURIComponent(le);return this.debugError(this.TAG_NAME,t),void i(t)}try{this[r(1068)](r(726),r(436)+t,JSON[r(795)](e))}catch(s){this[r(1068)](r(726),"play() "+t,e)}if(!t&&!this[r(630)][r(691)])return this.emit(q[r(1011)],J[r(759)]),void i(r(893));if(t&&-1===(t=(""+t)[r(133)]())[r(846)](r(606))&&-1===t[r(846)](r(1201))&&-1===t[r(846)](r(870))&&-1===t[r(846)]("ws:")&&-1===t.indexOf(r(213))&&-1===t[r(846)](r(874))&&-1===t.indexOf(r(1341)))return i("url "+t+r(877));if(xi(this[r(630)][r(800)]))return this[r(1517)].controls=r(856),this[r(1517)][r(315)]=!1,this[r(1517)].src=t,this[r(1517)][r(1234)](),void s(this[r(1517)]);if(this._opt[r(1253)]){let n=e[r(167)]||this[r(630)][r(1334)][r(167)],o=e[r(1087)]||this[r(630)][r(1334)][r(1087)];if(this._opt[r(1478)]&&(!n||!o)){const t=this[r(630)][r(1478)][r(1507)](".");n=Ti(t[0]),o=Ti(t[1])}if(!n||!o){const n=t||this[r(630)][r(691)];return void this._cryptoPlay(n).then(({cryptoIV:n,cryptoKey:o})=>{const a=r;this[a(630)][a(1334)][a(167)]=o,this[a(630)].playOptions[a(1087)]=n,e[a(1087)]=n,e[a(167)]=o,this[a(884)](t,e)[a(722)](()=>{s()})[a(1430)](t=>{i(t)})})[r(1430)](t=>{i(t)})}this[r(630)][r(1334)][r(167)]=n,this[r(630)][r(1334)][r(1087)]=o,e.cryptoIV=o,e[r(167)]=n}else if(this._opt[r(819)]){let t=e[r(167)]||this._opt[r(1334)][r(167)],s=e[r(1087)]||this._opt[r(1334)][r(1087)];if(this._opt[r(1202)]&&(!t||!s)){const e=this[r(630)].xorCryptoKey.split(".");t=Ti(e[0]),s=Ti(e[1])}t&&s&&(this[r(630)][r(1334)][r(167)]=t,this[r(630)][r(1334)][r(1087)]=s,e.cryptoIV=s,e[r(167)]=t)}else if(this[r(630)].isSm4Crypto){let t=e.cryptoKey||this._opt.playOptions[r(167)],s=e[r(1087)]||this._opt[r(1334)][r(1087)];if(this[r(630)].sm4CryptoKey&&(!t||!s)){const e=this[r(630)][r(200)][r(1507)](".");2===e.length&&(t=Gl(e[0]),s=Gl(e[1]))}t&&s&&(this[r(630)][r(1334)].cryptoKey=t,this[r(630)][r(1334)][r(1087)]=s,e[r(1087)]=s,e.cryptoKey=t)}this[r(884)](t,e)[r(722)](()=>{s()})[r(1430)](t=>{i(t)})})}[mP(884)](t,e={}){return new Promise((s,i)=>{const r=yP;if(this[r(371)])if(t)if(this[r(630)][r(691)]){const n=Pi(e[r(910)]);if(t===this[r(630)][r(691)]&&xi(n))if(this[r(371)][r(895)])this[r(1068)](r(726),r(884),r(145)),s();else{this.debugLog("JbPro",r(884),r(1270)+r(140));let t=this._getOriginalOpt(e);if(this._opt[r(449)]||this[r(630)][r(1299)])this[r(549)]&&this[r(549)].loadingBackground&&(t=Object[r(713)](t,this[r(549)]));else if(e[r(642)]){const e=this._playFailedAndPausedLastFrameInfo||this[r(1428)]();t=Object.assign(t,e)}xi(this[r(219)])&&(t[r(657)]=!0,this[r(219)]=!0),Ws(e[r(258)])&&(t.loadingIcon=e[r(258)]);const n=this[r(630)].url,o=Object.assign({},this[r(630)].playOptions,e);this._resetPlayer(t)[r(722)](()=>{const t=r;this[t(1454)](n,o)[t(722)](()=>{s()})[t(1430)](e=>{const s=t;this[s(998)]("JbPro",s(1042),e),this[s(1031)](q.crashLog,this[s(640)]("this.player.play 1",e)),this.emit(q[s(208)],J[s(653)],{},e),i(e)})})[r(1430)](t=>{const e=r;this[e(998)](e(726),e(172),t),i(t)})}else{this[r(1068)](r(726),"_playBefore",r(224)+this._opt[r(691)]+r(604)+t+r(253)+n+r(157));let o=this._getOriginalOpt(e);if(e[r(642)]){const t=this[r(1209)]||this._getVideoLastIframeInfo();o=Object.assign(o,t),this[r(1209)]=null}Ws(e.loadingIcon)&&(o[r(258)]=e.loadingIcon),this[r(379)](o).then(()=>{const n=r;this[n(1454)](t,e)[n(722)](()=>{s()})[n(1430)](t=>{const e=n;this.debugError(e(726),e(1287),t),this[e(1031)](q[e(204)],this[e(640)](e(176),t)),this.emit(q[e(208)],J[e(653)],{},t),i(t)})})[r(1430)](t=>{const e=r;this.debugError("JbPro",e(172),t),i(t)})}}else this[r(1454)](t,e)[r(722)](()=>{s()})[r(1430)](t=>{const e=r;this.debugError("JbPro",e(1287),t),this[e(1031)](q[e(204)],this.getCrashLog(e(1573),t)),this.emit(q[e(208)],J.playFailedError,{},t),i(t)});else{let t=this._getOriginalOpt(e);if(this[r(630)][r(449)]||this[r(630)].replayUseLastFrameShow)this[r(549)]&&this[r(549)][r(982)]&&(t=Object[r(713)](t,this[r(549)]));else if(e[r(642)]){const e=this[r(1209)]||this[r(1428)]();t=Object[r(713)](t,e),this[r(1209)]=null}xi(this[r(219)])&&(t[r(657)]=!0,this[r(219)]=!0),Ws(e[r(258)])&&(t[r(258)]=e[r(258)]);const n=this[r(630)].url;this[r(379)](t)[r(722)](()=>{const t=r;this._play(n,this[t(630)].playOptions)[t(722)](()=>{s()})[t(1430)](e=>{const s=t;this[s(998)](s(726),s(1287),e),this.emit(q[s(204)],this[s(640)](s(1503),e)),this[s(1031)](q[s(208)],J[s(653)],{},e),i(e)})})[r(1430)](t=>{const e=r;this[e(998)](e(726),"_resetPlayer error",t),i(t)})}else t?this[r(1454)](t,e).then(()=>{s()})[r(1430)](t=>{const e=r;this.debugError(e(726),e(1287),t),this[e(1031)](q.crashLog,this[e(640)](e(1344),t)),this[e(1031)](q.playFailedAndPaused,J[e(653)],{},t),i(t)}):this[r(1454)](this[r(630)][r(691)],this._opt[r(1334)])[r(722)](()=>{s()}).catch(t=>{const e=r;this[e(998)](e(726),"_playBefore _play error",t),this[e(1031)](q[e(204)],this[e(640)](e(1402),t)),this[e(1031)](q.playFailedAndPaused,J[e(653)],{},t),i(t)})})}[mP(868)](t){return new Promise((e,s)=>{const i=yP,r=function(t){const e=es,s=(t||document[e(488)][e(522)]()).split("//"),i=s[1][e(610)]("/");let r=s[1].substring(i);return-1!=r.indexOf("?")&&(r=r.split("?")[0]),r}(t);let n=this[i(630)][i(1539)],o="";const a=Ii(t);if(n){if(o=n,this[i(630)][i(1253)]&&-1===o[i(846)](D+i(588))){const t=Ii(n);o=t[i(1612)]+D+"?stream="+r}}else n=a[i(1612)]+D,o=n+"?stream="+r;var h;this[i(371)][i(1068)](i(726),"_cryptoPlay() cryptoKeyUrl: "+o+i(937)+this[i(630)][i(1539)]),(h=o,new Promise((t,e)=>{const s=Np;qc[s(244)](h)[s(266)](e=>{t(e)})[s(258)](t=>{e(t)})}))[i(722)](t=>{const r=i;if(t){const i=t[r(1507)]("."),n=Ti(i[0]),o=Ti(i[1]);o&&n?e({cryptoIV:o,cryptoKey:n}):s(r(756))}else s(r(483)+o+r(939))})[i(1430)](t=>{s(t)})})}playback(t,e={}){return new Promise((s,i)=>{const r=yP;if(this[r(1335)]())return i(r(788));try{this[r(1068)](r(726),r(1114)+t+", options: ",JSON[r(795)](e))}catch(s){this[r(1068)](r(726),r(1114)+t+r(1073),e)}if(this[r(630)][r(343)]===p[r(919)]&&!this[r(630)][r(691)]&&si(e))this[r(1234)](t,e)[r(722)](()=>{s()})[r(1430)](t=>{i(t)});else{const n=this[r(1564)](e);let o=n[r(1562)]||this[r(630)][r(1562)],a=n[r(1277)]||this._opt[r(1277)],h=n.isSpecialPlaybackVod||this._opt[r(1216)];const l={videoBuffer:0,playbackConfig:n,playType:p[r(919)],openWebglAlignment:!0,useMSE:n.useMSE,useWCS:n[r(780)],useSIMD:n.useSIMD,playbackForwardMaxRateDecodeIFrame:o,calcPlaybackForwardMaxRateDecodeIFrame:a,isSpecialPlaybackVod:h};js(n[r(1328)])&&(l[r(1328)]=n[r(1328)]),this._resetPlayer(l)[r(722)](()=>{const n=r;this[n(1234)](t,e)[n(722)](()=>{s()})[n(1430)](t=>{i(t)})})[r(1430)](t=>{i(t)})}})}[mP(1564)](t={}){const e=mP,s=Li(),i=Object[e(713)]({},s[e(647)],this[e(630)][e(647)],t);return xi(i[e(1407)])&&i[e(1167)]&&(i.isCacheBeforeDecodeForFpsRender=!1,this[e(1003)](e(726),e(1108))),0===i[e(1445)][e(1271)]&&i[e(1501)]&&(i[e(1501)]=!1,this[e(1003)]("JbPro",e(1352))),Pi(i[e(1407)])&&!i[e(1542)]&&xi(i[e(1265)])&&(i.autoCalcFps=!0,this[e(1003)](this[e(489)],"playbackConfig.fps is null and playbackConfig.autoCalcFps is false, set playbackConfig.autoCalcFps is true")),i[e(1434)],S[e(205)],i}[mP(1389)](t=!1){const e=mP;return this[e(1068)](e(726),e(211)+t),this[e(1335)]()?Promise.reject(e(788)):this[e(371)]?xi(this[e(371)][e(673)]())?Promise[e(401)]("playType is "+this[e(371)][e(1369)]()+", not support this method"):new Promise((s,i)=>{const r=e;Pi(t)?this._pause()[r(722)](()=>{s()})[r(1430)](t=>{i(t)}):(this[r(371)].playbackPause=!0,this[r(371)][r(688)]=!1,this.player[r(581)]=!1,this.playbackPauseTimeout=setTimeout(()=>{this[r(1504)]=null,s()},100))}):Promise[e(401)](e(1424))}[mP(138)](){const t=mP;return this[t(1068)](t(726),t(1364)),this[t(1335)]()?Promise[t(401)](t(788)):this[t(371)]?xi(this[t(371)][t(673)]())?Promise[t(401)](t(1232)+this[t(371)][t(1369)]()+", not support this method"):new Promise((e,s)=>{const i=t;if(xi(this.player[i(1389)]))return this[i(1068)](this[i(489)]," playbackResume() but already playing, just return resolve()"),e();this[i(371)][i(307)](),this[i(1523)]=setTimeout(()=>{this[i(1523)]=null,e()},100)}):Promise[t(401)]("player is null")}forward(t){const e=mP;return this[e(1068)](e(726),"forward() "+t),this.isDestroyed()?Promise[e(401)]("JbPro is destroyed"):this[e(371)]?xi(this.player[e(673)]())?Promise[e(401)]("playType is "+this[e(371)][e(1369)]()+", not support this method"):xs(Number(t))?new Promise((s,i)=>{const r=e;this.player[r(144)](t)[r(722)](()=>{s()})[r(1430)](t=>{i(t)})}):Promise[e(401)]('forward() params "rate": '+t+" must be number type"):Promise[e(401)]("player is null")}[mP(144)](t){return new Promise((e,s)=>{const i=yP;this[i(907)](t)[i(722)](()=>{e()})[i(1430)](t=>{s(t)})})}[mP(263)](){return new Promise((t,e)=>{const s=yP;this[s(907)](1)[s(722)](()=>{t()}).catch(t=>{e(t)})})}[mP(1145)](){return new Promise((t,e)=>{const s=yP;this[s(263)]().then(()=>{t()})[s(1430)](t=>{e(t)})})}[mP(1622)](){const t=mP;return this[t(1068)](t(726),t(1518)),this.isDestroyed()?Promise[t(401)](t(788)):this[t(371)]?xi(this[t(371)][t(673)]())?Promise[t(401)]("playType is "+this[t(371)].getPlayType()+", not support this method"):new Promise((e,s)=>{const i=t;this[i(371)][i(1622)]()[i(722)](()=>{e()})[i(1430)](t=>{s(t)})}):Promise[t(401)](t(1424))}[mP(1410)](){const t=mP;return this[t(1068)](t(726),t(783)),this[t(1335)]()?Promise[t(401)](t(788)):this[t(371)]?xi(this[t(371)][t(673)]())?Promise[t(401)](t(1232)+this[t(371)][t(1369)]()+t(1575)):new Promise((e,s)=>{const i=t;this.player[i(1410)]()[i(722)](()=>{e()})[i(1430)](t=>{s(t)})}):Promise.reject(t(1424))}[mP(161)](){const t=mP;return this[t(1068)](t(726),t(383)),this[t(1335)]()?Promise[t(401)](t(788)):this[t(371)]?xi(this[t(371)].isPlayback())?Promise.reject(t(1232)+this.player[t(1369)]()+", not support this method"):new Promise((e,s)=>{const i=t;this[i(371)][i(161)]()[i(722)](()=>{e()})[i(1430)](t=>{s(t)})}):Promise[t(401)](t(1424))}[mP(680)](){const t=mP;return this.debugLog(t(726),t(1134)),this[t(1335)]()?Promise[t(401)](t(788)):this[t(371)]?xi(this[t(371)].isPlayback())?Promise.reject(t(1232)+this[t(371)][t(1369)]()+t(1575)):new Promise((e,s)=>{const i=t;this[i(371)].playbackExitNextIFrameAndPlay()[i(722)](()=>{e()})[i(1430)](t=>{s(t)})}):Promise[t(401)](t(1424))}[mP(1282)](t){const e=mP;this[e(1335)]()?this.debugLog(this[e(489)],e(788)):this[e(371)]?(this.debugLog(e(726),e(976)+t),t=Number(t),t=as(t=parseInt(t,10),1,8),this[e(630)][e(1562)]=t,this.player[e(1066)]({playbackForwardMaxRateDecodeIFrame:t},!0)):this[e(1068)](this.TAG_NAME,e(132))}[mP(1617)](t){const e=mP;if(this[e(1335)]())return void this[e(1068)](this[e(489)],"JbPro is destroyed");if(!this[e(371)])return void this[e(1068)]("JbPro","setPlaybackStartTime() player is null");if(xi(this[e(371)][e(673)]()))return void this[e(1003)](e(726),"setPlaybackStartTime() playType is not playback");this[e(1068)](e(726),e(1113)+t);const s=ti(t);s<10&&0!==t&&this[e(371)][e(1026)].isControlTypeNormal()?this[e(1003)](e(726),e(926)+t+e(215)):this[e(371)][e(1026)][e(650)]()&&t>this[e(371)][e(1026)][e(218)]?this.debugWarn(e(726),e(924)+t+" is more than "+this[e(371)][e(1026)][e(218)]):(this[e(371)][e(1026)].isControlTypeNormal()&&10===s&&(t*=1e3),this[e(371)].playback[e(216)](t),this.player[e(895)]?this.playbackClearCacheBuffer():this[e(1068)](this.TAG_NAME,e(676)))}[mP(738)](t){const e=mP;this.debugLog("JbPro",e(1189)+t),this[e(1335)]()?this.debugLog(this[e(489)],"JbPro is destroyed"):this[e(371)]?this[e(371)][e(673)]()?this[e(371)][e(1026)][e(787)]()?this[e(371)][e(1026)][e(1486)](t):this[e(1003)](e(726),"control type is not normal , not support!"):this[e(1003)](e(726),e(1126)):this[e(1003)](e(726),e(1424))}playbackCurrentTimeScroll(){const t=mP;this.debugLog(t(726),t(1346)),this[t(1335)]()?this.debugLog(this[t(489)],"JbPro is destroyed"):this[t(371)]?this[t(371)][t(673)]()?this[t(371)][t(1026)][t(787)]()?this[t(371)][t(1026)].currentTimeScroll():this[t(1003)](t(726),t(1064)):this[t(1003)](t(726),t(1126)):this.debugWarn(t(726),t(1424))}[mP(1415)](){const t=mP;this[t(1068)](t(726),t(971)),this[t(1335)]()?this.debugLog(this.TAG_NAME,t(788)):this[t(371)]?this.player[t(673)]()?(this.clearBufferDelay(),this[t(371)].video&&this[t(371)][t(274)].clear(),this[t(371)].audio&&this[t(371)].audio[t(828)](),this[t(371)][t(184)]()):this[t(1003)](t(726),t(1126)):this[t(1003)](t(726),"player is null")}[mP(1227)](){const t=mP;return this[t(371)]?this.player[t(673)]()?this[t(371)][t(1583)]():(this.debugWarn("JbPro","playType is not playback"),1):(this[t(1003)]("JbPro",t(1424)),1)}[mP(201)](t){const e=mP;this.debugLog("JbPro",e(700)+t),this.isDestroyed()?this[e(1068)](this[e(489)],e(788)):this[e(371)]?this[e(371)].isPlayback()?this.player[e(1026)].updateLocalOneFrameTimestamp(t):this[e(1003)](e(726),e(1126)):this[e(1003)](e(726),e(1424))}[mP(646)](){const t=mP;let e=!1;return this[t(630)].playType===p[t(919)]&&this[t(371)]&&(e=this[t(371)][t(1389)]),e}isPlaybackPaused(){return this[mP(646)]()}[mP(149)](){const t=mP;this.isDestroyed()?this.debug&&this[t(1068)](t(726),"playbackEnd but player is destroyed"):this.playbackEndOnLock?this[t(1068)](t(726),"playbackEndOnLock is true"):(this.playbackEndOnLock=!0,this[t(684)]()[t(722)](()=>{const e=t;this[e(1031)](q[e(1565)]),this.debugLog(e(726),e(474))})[t(1430)](e=>{const s=t;this[s(1031)](q[s(1565)]),this.debugError(s(726),s(1075),e)})[t(1303)](()=>{this[t(240)]=!1}))}[mP(1044)](){const t=mP;if(this[t(1335)]())return void this[t(1068)](t(726),"_handlePlaybackEndedAndReplay but player is destroyed");const e=this._opt[t(691)],s=this[t(630)].playOptions;this[t(1068)](t(726),t(270)),this[t(379)]().then(()=>{const i=t;this[i(1234)](e,s)[i(722)](()=>{const t=i;this[t(630)][t(730)][t(1332)]=null,this[t(293)][t(1204)](this[t(489)],"playbackEndedAndReplay and reset player and play success"),this[t(1405)]()})[i(1430)](t=>{const e=i;this.emit(q.playFailedAndPaused,q[e(578)],{},t[e(317)]()),this[e(293)][e(1011)](this[e(489)],e(675),t)})})[t(1430)](e=>{const s=t;this[s(1031)](q.playFailedAndPaused,q[s(578)],{},""),this[s(998)](this[s(489)],s(995),e)})}[mP(666)](t){const e=mP;if(this[e(1335)]())return;if(this.debugLog(e(726),e(546)+t),!this.player)return void this[e(1003)](e(726),"player is null");if(!this[e(371)][e(630)].operateBtns[e(624)])return void this[e(1003)](e(726),"player._opt.operateBtns.quality is false");(this[e(371)][e(630)][e(320)]||[])[e(633)](t)?(this[e(630)][e(1442)]=t,this[e(371)][e(832)]=t):this[e(1003)]("JbPro",e(178)+t+" is not in qualityList")}[mP(1454)](t="",e={}){return new Promise((s,i)=>{const r=yP;if(!this.player)return i(r(1424));let n=!1;this[r(630)][r(691)]&&this[r(630)][r(691)]!==t&&(n=!0),this[r(630)][r(691)]=t,this._opt[r(1334)]=e;const o=(t[r(1507)]("?")[0]||"")[r(663)](),a=o[r(181)](r(1020))||o.startsWith(r(469)),h=o[r(181)](r(854)),l=o.startsWith(r(686)),u=o[r(181)](r(1034)),p=o[r(181)](r(1090))||o[r(181)](r(1023)),f=a||p,g=a&&o[r(169)](r(1028)),y=f&&o.endsWith(r(615)),A=f&&(o[r(169)](".fmp4")||o[r(169)](r(1472))),b=f&&o[r(169)](r(359)),v=f&&(o[r(169)](r(1252))||o[r(169)](".h265")),S=f&&o[r(169)](r(652)),E=f&&o[r(169)](r(651)),w=f&&o[r(169)](r(1613));let T=this[r(630)][r(683)]||!1,I=this[r(630)].isWebrtcForSRS||!1,k=this[r(630)][r(810)]||!1,_=this[r(630)][r(775)]||!1,C=this[r(630)][r(1032)]||!1;h&&(-1!==t[r(846)](r(1059))?(T=!0,I=!1,k=!1,_=!1,C=!1):-1!==t[r(846)](r(1095))&&(I=!0,T=!1,k=!1,_=!1,C=!1));let D=null,L=null;if(y&&xi(this._opt[r(173)])&&this._resetDemuxType(r(173)),A&&xi(this[r(630)][r(223)])&&this[r(1096)](r(223)),b&&xi(this[r(630)][r(503)])&&this[r(1096)](r(503)),v&&xi(this[r(630)][r(1137)])&&this[r(1096)](r(1137)),S&&xi(this[r(630)][r(793)])&&this[r(1096)](r(793)),E&&xi(this[r(630)][r(508)])&&this[r(1096)](r(508)),w&&xi(this[r(630)][r(1606)])&&this._resetDemuxType(r(1606)),g&&xi(this[r(630)][r(452)])&&this[r(1096)](r(452)),this[r(371)][r(384)]()&&xi(this._opt[r(452)]||this._opt[r(223)]))return this[r(630)][r(467)]&&this[r(423)](r(1259)),void i(r(197)+t+r(498));if(a?D=this[r(630)][r(452)]?c.hls:c[r(431)]:u?D=c.webTransport:h?D=c.webrtc:l?D=c.aliyunRtc:p&&(D=c[r(170)]),this[r(630)][r(1137)]?L=m[r(1323)]:this[r(630)].isFmp4?L=m[r(1162)]:this[r(630)].isMpeg4?L=m[r(1387)]:this[r(630)][r(173)]?L=m.flv:this[r(630)][r(793)]?L=m.ts:this[r(630)][r(508)]?L=m.ps:this[r(630)][r(1606)]?L=m[r(354)]:this[r(630)].isHls?L=m[r(963)]:h?L=m[r(1628)]:l?L=m[r(965)]:u?L=m[r(1425)]:p&&(L=m[r(1006)]),this._opt[r(540)]&&(L=r(573)),!D||!L)return this[r(630)].playFailedAndPausedShowMessage&&this.showErrorMessageTips("url is not support"),i("play url "+t+" is invalid, protocol is "+d[D]+r(791)+L);if(this[r(1068)](r(726),"play url "+t+r(1567)+d[D]+r(791)+L),this[r(371)].isDecoderWorkerInitError())return i("decoderWorkerInit error");const R=()=>{const n=r;this.player.on(J[n(987)],this[n(1069)][n(444)]),this[n(371)].on(J[n(682)],this[n(1069)][n(519)]),this[n(371)].on(J[n(685)],this[n(1069)][n(752)]),this.player.on(J.mseWaitVideoCanplayTimeout,this[n(1069)][n(871)]),this[n(371)].on(J[n(391)],this[n(1069)][n(1010)]),this.player.on(J.mediaSourceAppendBufferError,this[n(1069)][n(1151)]),this[n(371)].on(J[n(1022)],this[n(1069)]._handleMseSourceBufferError),this.player.on(J[n(1342)],this[n(1069)][n(1512)]),this.player.on(J[n(1571)],this[n(1069)][n(715)]),this[n(371)].on(J[n(1110)],this.bound._handleMediaSourceDecoderConfigurationError),this[n(371)].on(J[n(1018)],this[n(1069)][n(1233)]),this[n(371)].on(J[n(1577)],this[n(1069)][n(217)]),this[n(371)].on(J[n(707)],this.bound[n(525)]),this.player.on(J[n(896)],this[n(1069)][n(562)]),this[n(371)][n(1207)](J[n(664)],this[n(1069)]._handleMediaSourceAudioNoDataTimeout),this.player.on(J[n(1279)],this[n(1069)][n(286)]),this[n(371)].on(J[n(1421)],this[n(1069)][n(576)]),this[n(371)].on(J[n(959)],this[n(1069)][n(753)]),this.player.on(J[n(754)],this[n(1069)]._handleWebcodecsUnsupportedConfigurationError),this[n(371)].on(J[n(328)],this[n(1069)][n(928)]),this[n(371)].on(J[n(1191)],this[n(1069)][n(763)]),this.player.on(J[n(295)],this[n(1069)]._handleWcsWidthOrHeightChange),this.player.on(J[n(798)],this.bound[n(256)]),this[n(371)].on(J[n(850)],this[n(1069)]._handleWebcodecsAudioInitTimeout),this[n(371)].on(J.webcodecsAudioDecodeError,this.bound._handleWebcodecsAudioDecodeError),this.player.on(J.simdDecodeError,this[n(1069)]._handleSimdDecodeError),this[n(371)].on(J[n(1112)],this.bound._handleSimdDecodeDelayTimeout),this[n(371)].on(J[n(1101)],this[n(1069)][n(1371)]),this[n(371)].on(J[n(209)],this[n(1069)][n(1077)]),this[n(371)].on(J[n(1452)],this[n(1069)][n(494)]),this[n(371)].on(J[n(660)],this.bound[n(1546)]),this[n(371)].on(J[n(456)],this[n(1069)]._handleFailedToAsynchronouslyPrepareWasm),this[n(371)].on(J[n(1150)],this[n(1069)][n(1367)]),this[n(371)].on(J[n(706)],this[n(1069)][n(147)]),this[n(371)].on(q.networkDelayTimeout,this.bound._handleNetworkDelayTimeout),this[n(371)].on(q[n(1360)],this.bound[n(1295)]),this[n(371)].on(J.fetchError,this.bound[n(840)]),this[n(371)].on(q.streamEnd,this[n(1069)][n(923)]),this.player.on(J[n(330)],this.bound._handleWebsocketError),this[n(371)].on(J[n(188)],this[n(1069)][n(1063)]),this[n(371)].on(J[n(824)],this[n(1069)][n(1368)]),this[n(371)].on(q[n(649)],this[n(1069)][n(504)]),this.player.on(J.hlsM3u8Empty,this[n(1069)]._handleHlsM3u8Empty),this.player.on(J[n(230)],this.bound._handleAliyunRtcError),this[n(371)].on(J[n(1457)],this[n(1069)]._handleWebTransportError),this[n(371)].on(J[n(1237)],this.bound._handleDecoderWorkerInitError),this[n(371)].on(J[n(1438)],this[n(1069)][n(1593)]),this.player.on(J[n(1236)],this.bound[n(830)]),this[n(371)].on(J[n(1630)],this[n(1069)][n(329)]),this[n(371)].on(J[n(570)],this[n(1069)]._handleVideoInfoError),this.player.on(q[n(1312)],this.bound[n(1552)]),this.player.on(q[n(847)],this.bound._handleWebrtcLowFps),this[n(371)].on(J[n(879)],this.bound[n(414)]),this[n(371)].on(q.delayTimeout,this[n(1069)][n(327)]),this[n(371)].on(q.loadingTimeout,this.bound._handleLoadingTimeout),this.player[n(673)]()&&(this[n(371)].on(q[n(1179)],this[n(1069)][n(149)]),this.player.on(q[n(578)],this[n(1069)][n(1044)])),this.player.isPlayVod()&&(this[n(371)].on(J[n(509)],this[n(1069)][n(1308)]),this[n(371)].on(J.playVodMp4UseSrcError,this[n(1069)][n(1078)]),this[n(371)].on(q[n(945)],this[n(1069)]._handlePlayVodEnded),this[n(371)].on(q[n(740)],this.bound[n(536)]),this[n(371)].on(J[n(812)],this[n(1069)][n(614)]),this[n(371)].on(J.playVodCalcFpsError,this[n(1069)][n(1594)]),this[n(371)].on(J[n(1117)],this[n(1069)][n(426)])),this._hasLoaded()?(this.debugLog(this[n(489)],n(906)),this[n(371)][n(1234)](t,e)[n(722)](()=>{s()})[n(1430)](t=>{const e=n;this[e(998)](e(726),e(1467),t),this[e(371)]&&this[e(371)][e(1194)]()[e(722)](()=>{i(t)})[e(1430)](t=>{const s=e;i(t),this[s(998)](s(726),"_hasLoaded() and play error and next pause error",t)})})):(this[n(1068)](this[n(489)],n(352)),this[n(463)](()=>{i(n(382))}),this.player.once(q.decoderWorkerInit,()=>{const r=n;if(this[r(1403)](),this[r(1335)]())return this.debugLog(r(726),"decoderWorkerInit but player is destroyed"),void s();this[r(1068)](this[r(489)],r(1155)),this[r(371)][r(1234)](t,e)[r(722)](()=>{s()})[r(1430)](t=>{const e=r;this[e(998)](e(726),e(1061),t),this[e(1031)](q[e(204)],this[e(640)](e(1061),t)),this[e(371)]?this[e(371)][e(1194)]()[e(722)](()=>{i(t)})[e(1430)](t=>{const s=e;i(t),this[s(998)](s(726),"decoderWorkerInit and play error and next pause error",t)}):i(t)})}))},P=this[r(371)].getOption(),x=this._opt[r(452)]&&xi(this[r(630)][r(855)]),M=h&&xi(this._opt[r(1530)]),B=this._opt[r(452)]&&!!fi(),F=this._opt[r(452)]&&P.demuxUseWorker,U=this[r(630)][r(223)]&&this[r(630)][r(433)];if(x||M||l||n||b||B||F||U)this[r(1068)](r(726),r(1246)+x+" and isOldWebrtc is "+M+r(1607)+l+r(1009)+n+r(300)+b+r(1614)+B+r(1432)+F+r(1224)+U),this[r(379)]({protocol:D,demuxType:L,isHls:this[r(630)][r(452)],isFmp4:this[r(630)][r(223)],isWebrtc:h,isWebrtcForZLM:T,isWebrtcForSRS:I,isWebrtcForOthers:k,isWebrtcForQiNiu:_,isWebrtcForDJI:C,isAliyunRtc:l,cryptoKey:e.cryptoKey||"",cryptoIV:e[r(1087)]||"",url:t,playOptions:e})[r(722)](()=>{R()}).catch(t=>{const e=r;this.debugError(this[e(489)],"reset player error",t),i(e(689))});else{const t={protocol:D,demuxType:L,isHls:this[r(630)].isHls,isWebrtc:h,isAliyunRtc:l,isFlv:this._opt[r(173)],isFmp4:this[r(630)][r(223)],isMpeg4:this[r(630)][r(503)],isNakedFlow:this[r(630)][r(1137)],isTs:this[r(630)][r(793)],isPs:this[r(630)][r(508)],isDHav:this[r(630)][r(1606)],cryptoKey:e[r(167)]||"",cryptoIV:e[r(1087)]||""};this[r(630)][r(1137)]&&(t[r(1511)]=!1,t[r(708)]=!1),this[r(371)].updateOption(t),R()}})}[mP(1096)](t){const e=mP;this[e(630)].isFlv=!1,this[e(630)].isFmp4=!1,this[e(630)][e(503)]=!1,this._opt[e(1137)]=!1,this._opt[e(452)]=!1,this[e(630)][e(226)]=!1,this[e(630)].isWebrtcForZLM=!1,this._opt[e(517)]=!1,this._opt.isWebrtcForOthers=!1,this[e(630)][e(775)]=!1,this[e(630)][e(1032)]=!1,this[e(630)].isAliyunRtc=!1,this[e(630)][e(793)]=!1,t&&(this[e(630)][t]=!0)}resize(){const t=mP;this.isDestroyed()||(this[t(1068)](t(726),t(1595)),this.player&&this[t(371)][t(1220)]())}[mP(340)](t){const e=mP;if(this[e(1335)]())return;this[e(1068)](e(726),e(1365)+t),(t=Number(t))>10&&this[e(1003)](e(726),e(662)+t+e(968)+t+e(134));const s=1e3*t;this[e(630)][e(234)]=s,this[e(371)]?this[e(371)][e(1066)]({videoBuffer:s},!0):this[e(1003)](e(726),e(727))}setBufferDelayTime(t){const e=mP;if(this[e(1335)]())return;this[e(1068)](e(726),e(767)+t),(t=Number(t))<.2&&this[e(1003)](e(726),e(1471)+t+e(1601));const s=1e3*(t=as(t,.2,100));this[e(630)][e(952)]=s,this[e(371)]?this[e(371)][e(1066)]({videoBufferDelay:s},!0):this.debugWarn(e(726),"setBufferDelayTime() player is null")}[mP(1173)](t){const e=mP;if(this[e(1335)]())return;this[e(1068)](e(726),e(1455)+t),t=parseInt(t,10);this[e(630)][e(257)]!==t&&-1!==[0,90,180,270][e(846)](t)?(this._opt[e(257)]=t,this[e(371)]?this[e(371)][e(1173)](t):this[e(1003)]("JbPro",e(989))):this.debugWarn(e(726),e(1266)+t+e(1080)+this._opt[e(257)])}[mP(1399)](t){const e=mP;if(this[e(1335)]())return;this[e(1068)](e(726),"setMirrorRotate() "+t);const s=[e(1181),e(1317),e(1007)];!t&&(t="none"),this._opt[e(1597)]!==t&&-1!==s[e(846)](t)?(this[e(630)].mirrorRotate=t,this[e(371)]?(this[e(371)][e(1066)]({mirrorRotate:t}),this[e(1220)]()):this[e(1003)](e(726),e(484))):this[e(1003)](e(726),"setMirrorRotate() mirrorRotate is "+t+e(766)+this[e(630)][e(1597)])}[mP(158)](t){const e=mP;if(this[e(1335)]())return;this[e(1068)](e(726),e(1376)+t);const s=[e(594),e(1217),e(921)];!t&&(t=e(594)),this._opt.aspectRatio!==t&&-1!==s[e(846)](t)?(this[e(630)][e(950)]=t,this.player?(this[e(371)][e(1066)]({aspectRatio:t}),this.resize()):this[e(1003)](e(726),e(1537))):this.debugWarn(e(726),"setAspectRatio() aspectRatio is "+t+" and this._opt.aspectRatio is "+this[e(630)][e(1597)])}hasLoaded(){return!0}[mP(1039)](){const t=mP;return this[t(371)]&&this[t(371)][t(749)]||!1}[mP(196)](){const t=mP;let e=!1;return this[t(371)]&&(e=this.player[t(544)]()),e}[mP(355)](){const t=mP;this.isDestroyed()||(this[t(1068)](t(726),t(1123)),this[t(630)][t(261)]=!0,this[t(371)]?this[t(371)].updateOption({keepScreenOn:!0}):this[t(1003)](t(726),t(358)))}[mP(885)](t){const e=mP;if(this.isDestroyed())return;this[e(1068)](e(726),e(1426)+t);const s=!!t;this[e(371)]?this[e(371)].fullscreen!==s?this[e(371)][e(616)]=s:this[e(1003)](e(726),e(1358)+s+e(1549)+this[e(371)][e(616)]):this.debugWarn("JbPro","setFullscreen() player is not ready")}setWebFullscreen(t){const e=mP;if(this[e(1335)]())return;this.debugLog(e(726),e(395)+t);const s=!!t;this.player?this[e(371)][e(1188)]=s:this[e(1003)]("JbPro",e(175))}[mP(249)](t,e,s,i){const r=mP;if(!this[r(1335)]()){if(ei(t)){const n=t;t=n[r(667)]||"",e=n.format||"",s=n[r(624)]||void 0,i=n[r(541)]||""}return this[r(1068)]("JbPro",r(1291)+t+" "+e+" "+s+" "+i),this[r(371)]&&this[r(371)][r(274)]?this[r(371)][r(274)].screenshot(t,e,s,i):(this[r(1003)](r(726),r(346)),null)}}[mP(1107)](t){return new Promise((e,s)=>{const i=yP;if(this[i(1335)]())return s(i(762));this.debugLog(i(726),i(1404),t),this[i(371)]&&this[i(371)][i(274)]?this[i(371)][i(274)][i(1107)](t)[i(722)](t=>{e(t)})[i(1430)](t=>{s(t)}):(this.debugWarn(i(726),"screenshotWatermark() player is not ready"),s(i(1008)))})}screenshotCopyrightWatermark(t){return new Promise((e,s)=>{const i=yP;if(this[i(1335)]())return s(i(762));this[i(1068)](i(726),i(621),t),this[i(371)]&&this[i(371)][i(274)]?this.player[i(274)][i(442)](t)[i(722)](t=>{e(t)})[i(1430)](t=>{s(t)}):(this[i(1003)](i(726),i(1470)),s(i(1008)))})}[mP(1169)](t){return new Promise((e,s)=>{const i=yP;if(this[i(1335)]())return s("player is destroyed");if(this[i(1068)]("JbPro",i(247),t),this[i(371)]&&this[i(371)][i(274)]){e(this[i(371)][i(274)][i(1169)](t))}else this[i(1003)](i(726),"screenshotByRect() player is not ready"),s(i(1008))})}[mP(501)](t,e){return new Promise((s,i)=>{const r=yP;return this.isDestroyed()?i(r(762)):(this.debugLog("JbPro",r(1141)+t+" "+e),this.player?void(this.player.playing?(this[r(371)][r(501)](t,e),s()):(this[r(1003)]("JbPro",r(551)),i(r(537)))):(this[r(1003)](r(726),r(1634)),i("player is not ready")))})}[mP(996)](t,e){return new Promise((s,i)=>{const r=yP;if(this.isDestroyed())return i("player is destroyed");this[r(1068)]("JbPro",r(582)+t+" "+e),this[r(371)]&&this[r(371)].recording?this[r(371)].stopRecordAndSave(t,e)[r(722)](t=>{s(t)})[r(1430)](t=>{i(t)}):i(r(577))})}[mP(387)](){return new Promise((t,e)=>{const s=yP;return this[s(1335)]()?e("player is destroyed"):(this[s(1068)](s(726),s(499)),this[s(371)]?void this[s(371)][s(387)]()[s(722)](()=>{t()})[s(1430)](t=>{e(t)}):(this[s(1003)](s(726),"cancelRecord() player is not ready"),e(s(1008))))})}isPlaying(){const t=mP;let e=!1;return this.player&&(e=this.player[t(1324)]()),e}isLoading(){const t=mP;return!!this[t(371)]&&this[t(371)][t(1051)]}[mP(335)](){const t=mP;let e=!1;return this[t(630)][t(343)]===p[t(371)]?e=!this[t(1324)]()&&!this[t(776)]():this[t(630)][t(343)]===p[t(919)]&&this[t(371)]?e=this.player[t(1389)]:this[t(630)].playType===p[t(311)]&&this[t(371)]&&(e=this[t(371)][t(203)]),e}[mP(393)](){return this[mP(335)]()}[mP(786)](){const t=mP;let e=!0;return this.player&&(e=this[t(371)][t(1079)]()),e}[mP(337)](){const t=mP;let e=!1;return this.player&&(e=this[t(371)][t(688)]),e}[mP(526)](){const t=mP;let e=!1;return this[t(371)]&&(e=this[t(371)][t(616)]),e}[mP(1422)](){const t=mP;let e=!1;return this[t(371)]&&(e=this[t(371)].webFullscreen),e}clearBufferDelay(){const t=mP;this[t(1068)](t(726),t(801)),this[t(1335)]()?this.debugLog(this.TAG_NAME,t(762)):this[t(371)]?this[t(371)].clearBufferDelay():this[t(1068)]("JbPro",t(966))}[mP(493)](t){const e=mP;if(this[e(1335)]())return;this[e(1068)](e(726),e(613)+t),(t=Number(t))<1&&this[e(1003)](e(726),e(143)+t+e(1601));const s=1e3*(t=as(t,1,100));this[e(630)][e(1327)]=s,this[e(371)]?this[e(371)].updateOption({networkDelay:s},!0):this[e(1003)](e(726),e(992))}[mP(1481)](){const t=mP;let e="";return this.player&&(e=this[t(371)][t(1481)]()),e}getRenderType(){const t=mP;let e="";return this.player&&(e=this.player[t(1382)]()),e}[mP(1350)](){const t=mP;let e="";return this[t(371)]&&(e=this.player[t(1350)]()),e}[mP(1554)](){const t=mP;let e=0;return this[t(371)]&&(e=this[t(371)][t(1554)]()),e}[mP(623)](){const t=mP;let e=It.destroy;return this.player&&(e=this.player[t(1051)]?It.loading:this[t(371)][t(895)]?It[t(895)]:It[t(1273)]),e}[mP(1369)](){const t=mP;return this[t(371)]?this[t(371)][t(630)].playType:p[t(371)]}[mP(958)](t){const e=mP;if(this[e(1335)]())return;this.debugLog(e(726),e(1143)+t);const s=this[e(371)]._opt.showPerformance;let i=!s;js(t)&&(i=t),i!==s?this[e(371)]?this[e(371)][e(958)](i):this[e(1003)](e(726),e(1146)):this.debugWarn(e(726),e(973)+s+" === now: "+i)}openZoom(){const t=mP;if(!this[t(1335)]())if(this[t(1068)]("JbPro","openZoom()"),this[t(371)]){if(this[t(371)][t(1493)]())return void this.debugWarn("JbPro","openZoom() failed, this.player is destroyed or paused");this[t(371)].zooming=!0}else this[t(1003)](t(726),"openZoom() failed, this.player is not init")}[mP(1406)](){const t=mP;if(!this.isDestroyed())if(this[t(1068)](t(726),t(638)),this[t(371)]){if(this[t(371)][t(1493)]())return void this.debugWarn(t(726),t(374));this[t(371)][t(581)]=!1}else this[t(1003)](t(726),t(809))}[mP(1152)](){const t=mP;let e=!1;return this.player&&(e=this.player[t(581)]),e}[mP(1559)](t){const e=mP;this[e(1335)]()||(this[e(1068)]("JbPro","toggleZoom() "+t),!js(t)&&(t=!this[e(1152)]()),Pi(t)?this[e(622)]():xi(!1)&&this[e(1406)]())}[mP(533)](){const t=mP;this[t(1335)]()||(this[t(1068)](t(726),t(1082)),this.player&&this[t(371)].zoom&&this.player.zooming?this[t(371)][t(1329)][t(744)]():this[t(1003)]("JbPro","expandZoom() failed, zoom is not open or not init"))}[mP(1260)](){const t=mP;this.isDestroyed()||(this[t(1068)](t(726),t(758)),this.player&&this[t(371)][t(1329)]&&this[t(371)][t(581)]?this.player[t(1329)][t(696)]():this[t(1003)](t(726),t(530)))}[mP(955)](t){const e=mP;this[e(1335)]()||(this[e(1068)]("JbPro",e(1390),t),this[e(371)]&&this.player[e(1329)]&&this[e(371)][e(581)]?this[e(371)][e(1329)].updateCurrentZoom(t):this[e(1003)](e(726),e(530)))}[mP(894)](){const t=mP;if(this[t(1335)]())return null;let e=1;return this[t(371)]&&this[t(371)][t(1329)]&&(e=this[t(371)][t(1329)][t(1199)]),e}[mP(1033)](t){return new Promise((e,s)=>{const i=yP;if(this[i(1335)]())return s(i(762));if(this[i(1068)]("JbPro",i(136),t),Vs(t))return s("setNakedFlowFps() fps is empty");let r=Number(t);r=as(r,1,100),this._opt[i(1258)]=r,this[i(371)]?this[i(371)].updateOption({nakedFlowFps:r}):this[i(1003)](i(726),i(698)),e()})}[mP(640)](t,e=""){const s=mP;if(!this[s(371)])return;const i=this.player.getAllStatsData(),r=this.player;let n=r[s(1586)]()?s(1030):r[s(673)]()?s(454):"playVod",o={url:this[s(630)].url,playType:n,demuxType:r[s(492)](),decoderType:r[s(1481)](),renderType:r.getRenderType(),videoInfo:{encType:"",width:"",height:""},audioInfo:{encType:"",sampleRate:"",channels:""},audioEngine:r[s(1350)](),allTimes:i[s(527)],timestamp:os(),type:t,error:Ei(e)||t};if(r.video){const t=r[s(274)][s(1306)]||{};o.videoInfo={encType:t[s(1489)]||"",width:t[s(918)]||"",height:t.height||""}}if(r[s(1510)]){const t=r[s(1510)][s(619)]||{};o.audioInfo={encType:t[s(1489)]||"",sampleRate:t.sampleRate||"",channels:t[s(1349)]||""}}return o}[mP(1302)](t){const e=mP;this.isDestroyed()||(this[e(1068)](e(726),"updateDebugLevel()",t),t===b[e(293)]||t===b.warn?t!==this[e(371)][e(630)][e(424)]?(this[e(630)].debugLevel=t,this[e(371)]?this[e(371)][e(1066)]({debugLevel:t},!0):this[e(1003)](e(726),e(1264))):this[e(1003)](e(726),e(1498)+t):this[e(1003)](e(726),e(703)+t))}updateWatermark(t){const e=mP;this[e(1335)]()||(this[e(1068)]("JbPro",e(1055),t),this.player?(this[e(371)][e(1249)](t),this[e(630)].watermarkConfig=t):this[e(1003)](e(726),e(522)))}[mP(927)](){const t=mP;this[t(1335)]()||(this[t(1068)](t(726),t(350)),this.player?(this[t(371)][t(927)](),this._opt[t(1408)]={}):this.debugWarn(t(726),t(1333)))}updateFullscreenWatermark(t){const e=mP;if(!this[e(1335)]())if(this[e(1068)](e(726),e(450),t),ii(t)){this[e(630)][e(553)]=t;const s=zs(this[e(154)],t);if(!s[e(942)])return void this[e(1003)]("JbPro",e(1192));this.watermark[e(1435)](s)}else this[e(1003)](e(726),"updateFullscreenWatermark() config is not valid, config: "+t)}[mP(611)](){const t=mP;this[t(1335)]()||(this[t(1068)](t(726),"removeFullscreenWatermark()"),this[t(857)]?this.watermark[t(1111)]():this[t(1003)]("JbPro","removeFullscreenWatermark() watermark is not init"))}[mP(1338)](){const t=mP;this[t(1335)]()||(this[t(1068)](t(726),"faceDetectOpen()"),this[t(371)]?this.player[t(502)](!0):this[t(1003)](t(726),t(238)))}[mP(1588)](){const t=mP;this[t(1335)]()||(this[t(1068)](t(726),"faceDetectClose()"),this.player?this[t(371)].faceDetect(!1):this[t(1003)](t(726),"faceDetectClose() player is not init"))}[mP(993)](){const t=mP;this.isDestroyed()||(this.debugLog("JbPro",t(808)),this.player?this[t(371)][t(1103)](!0):this.debugWarn(t(726),"objectDetectOpen() player is not init"))}[mP(695)](){const t=mP;this[t(1335)]()||(this.debugLog(t(726),t(408)),this.player?this[t(371)][t(1103)](!1):this.debugWarn(t(726),t(191)))}sendWebsocketMessage(t){const e=mP;this[e(1335)]()||(this[e(1068)](e(726),"sendWebsocketMessage()",t),this[e(371)]?this[e(371)][e(189)](t):this[e(1003)](e(726),e(807)))}[mP(1502)](t){const e=mP;this[e(1335)]()||(this[e(1068)]("JbPro","addContentToCanvas()"),this[e(371)]?(this[e(371)][e(1502)](t),this._tempContentToCanvasData=t):this.debugWarn(e(726),e(990)))}[mP(262)](){const t=mP;this[t(1335)]()||(this[t(1068)](t(726),t(890)),this[t(371)]?(this[t(371)][t(1502)]([]),this._tempContentToCanvasData=[]):this[t(1003)](t(726),t(558)))}[mP(1e3)](t){const e=mP;this[e(1335)]()||(this.debugLog(e(726),e(1395)),this[e(371)]?this[e(371)][e(1e3)](t):this[e(1003)]("JbPro","addContentToContainer() player is not init"))}[mP(1543)](){const t=mP;this[t(1335)]()||(this[t(1068)](t(726),t(427)),this.player?this.player[t(1e3)]([]):this[t(1003)](t(726),"clearContentToContainer() player is not init"))}[mP(1293)](t){const e=mP;this.isDestroyed()||(this[e(1068)](e(726),"setControlHtml()",t),this[e(371)]?this[e(371)][e(1293)](t):this[e(1003)](e(726),e(1251)))}[mP(1160)](){const t=mP;this[t(1335)]()||(this[t(1068)](t(726),t(1611)),this.player?this[t(371)][t(1160)]():this[t(1003)](t(726),t(1047)))}[mP(716)](t){const e=mP;this[e(1335)]()||(this[e(1068)](e(726),e(1274)+t),this[e(371)]?this[e(371)][e(716)](t):this.debugWarn("JbPro",e(1386)))}getControlHtmlIsShow(){const t=mP;return!!this.player&&this[t(371)].getControlHtmlIsShow()}[mP(402)](){const t=mP;return this[t(371)]?this[t(371)][t(402)]():null}setExtendHtml(t){const e=mP;this[e(1335)]()||(this[e(1068)](e(726),e(875),t),this.player?this[e(371)][e(728)](t):this[e(1003)](e(726),e(1085)))}[mP(292)](){const t=mP;this[t(1335)]()||(this[t(1068)]("JbPro",t(1225)),this[t(371)]?this[t(371)][t(292)]():this[t(1003)]("JbPro","clearExtendHtml() player is not init"))}[mP(1355)](t){const e=mP;this[e(1335)]()||(this.debugLog("JbPro",e(163)+t),this.player?this[e(371)][e(1355)](t):this.debugWarn("JbPro",e(446)))}[mP(835)](){const t=mP;return!!this[t(371)]&&this[t(371)][t(835)]()}[mP(521)](){const t=mP;return this[t(371)]?this[t(371)][t(521)]():null}[mP(496)](){const t=mP;let e=null;return this.player&&(e=this[t(371)][t(496)]()),e}[mP(222)](){const t=mP;let e=null;return this.player&&(e=this[t(371)][t(222)]()),e}setSm4CryptoKey(t){const e=mP;if(this[e(1335)]())return;this[e(1068)](e(726),e(814),t);const s=(t=""+t)[e(1507)](".");if(32!==t[e(1271)]&&2!==s.length)return void this[e(1003)](e(726),e(1267)+t[e(1271)]+e(331));if(2===s[e(1271)]&&(32!==s[0][e(1271)]||32!==s[1][e(1271)]))return void this[e(1003)]("JbPro",e(796)+s[0].length+" !== 32 or iv length "+s[1][e(1271)]+e(331));this[e(630)].sm4CryptoKey=t;let i=2===s[e(1271)];if(i&&(this[e(630)][e(1334)].cryptoKey=Gl(s[0]),this[e(630)][e(1334)].cryptoIV=Gl(s[1])),this.player){const s={sm4CryptoKey:t};i&&(s.cryptoKey=this._opt[e(1334)][e(167)],s[e(1087)]=this._opt[e(1334)].cryptoIV),this.player[e(1066)](s,!0)}else this[e(1003)](e(726),e(1043))}[mP(961)](t){const e=mP;this.isDestroyed()||(this[e(1068)](e(726),e(1144),t),t=""+t,this._opt[e(1478)]=t,this[e(371)]?this[e(371)][e(1066)]({m7sCryptoKey:t},!0):this[e(1003)](e(726),e(719)))}[mP(1102)](t){const e=mP;this[e(1335)]()||(this[e(1068)]("JbPro",e(1345),t),t=""+t,this[e(630)][e(1202)]=t,this.player?this.player[e(1066)]({xorCryptoKey:t},!0):this[e(1003)](e(726),"setXorCryptoKey() player is null"))}[mP(360)](t){const e=mP;this[e(1335)]()||(this[e(1068)](e(726),e(1196),t),this[e(371)]?this[e(371)][e(360)](t):this.debugWarn(e(726),e(291)))}[mP(1206)](t){const e=mP;this.isDestroyed()||(this[e(1068)]("JbPro",e(946),t),this._opt[e(271)]=t,this[e(371)]?this[e(371)][e(1066)]({isEmitSEI:t},!0):this[e(1003)](e(726),"updateIsEmitSEI() player is null"))}getPTZCmd(t,e){const s=mP;return this[s(1068)](s(726),s(443),t),t?this[s(371)]?$R({type:t,index:0,speed:e}):(this[s(1003)]("JbPro",s(1436)),null):(this[s(1003)]("JbPro",s(1035)),null)}[mP(1178)](){return new Promise((t,e)=>{const s=yP;this[s(371)]?(this[s(371)][s(190)](),t()):e(s(399))})}[mP(389)](){return new Promise((t,e)=>{const s=yP;if(this[s(1335)]())return e(s(762));this.player?(this.player[s(1626)](),t()):e("player is not init")})}downloadTempMpeg4File(){return new Promise((t,e)=>{const s=yP;if(this[s(1335)]())return e(s(762));this[s(371)]?(this[s(371)][s(781)](),t()):e(s(399))})}[mP(834)](){return new Promise((t,e)=>{const s=yP;if(this[s(1335)]())return e("player is destroyed");this[s(371)]?(this[s(371)].downloadFlvFile(),t()):e(s(399))})}[mP(348)](){return new Promise((t,e)=>{const s=yP;if(this.isDestroyed())return e(s(762));this[s(371)]?(this.player.downloadG711File(),t()):e(s(399))})}downloadMemoryLog(){const t=mP;this[t(1335)]()||this.memoryLogger&&this.memoryLogger[t(334)]()}[mP(1428)](){const t=mP;if(xi(this[t(630)][t(1119)]))return{};const e=this.getVideoInfo()||{},s={loadingBackground:this.screenshot("",t(869),.5,t(248)),loadingBackgroundWidth:e.width||0,loadingBackgroundHeight:e[t(466)]||0};return s.loadingBackground&&s.loadingBackgroundWidth&&s[t(277)]&&(this[t(598)]=s),this[t(598)]||{}}[mP(1608)](){const t=mP;this[t(1068)](t(726),t(1052));let e=[];return this[t(371)]?e=this.player[t(1608)]():this[t(1003)](t(726),t(314)),e}[mP(338)](){const t=mP;this[t(1068)](t(726),t(1579));let e=null;return this[t(371)]?e=this[t(371)].getMetaData():this[t(1003)]("JbPro",t(964)),e}[mP(476)](t){const e=mP;if(this[e(1335)]())return;this.debugLog(e(726),"updateAiFaceDetectInterval()",t);const s=1e3*(t=Number(t));this[e(630)][e(556)]=s,this[e(371)]?this[e(371)][e(1066)]({aiFaceDetectInterval:s}):this.debugWarn(e(726),e(1156))}[mP(1316)](t){const e=mP;if(this[e(1335)]())return;if(this.debugLog(e(726),e(897),t),!Ft[t])return void this[e(1003)](e(726),e(1556)+t+e(1531));const s=Ft[t];this[e(630)].aiFaceDetectWidth=s,this[e(371)]?(this[e(371)][e(1066)]({aiFaceDetectWidth:s}),this.player.ai&&this.player.ai[e(860)]({detectWidth:s})):this[e(1003)](e(726),e(1590))}updateAiObjectDetectInterval(t){const e=mP;if(this.isDestroyed())return;this[e(1068)]("JbPro",e(1621),t);const s=1e3*(t=Number(t));this[e(630)][e(561)]=s,this[e(371)]?this[e(371)][e(1066)]({aiObjectDetectInterval:s}):this[e(1003)]("JbPro",e(635))}[mP(899)](t){const e=mP;if(this[e(1335)]())return;if(this[e(1068)](e(726),e(1310),t),!Ut[t])return void this.debugWarn(e(726),e(566)+t+e(1531));const s=Ut[t];this._opt[e(794)]=s,this.player?(this[e(371)].updateOption({aiObjectDetectWidth:s}),this[e(371)].ai&&this[e(371)].ai.updateObjectDetectorConfig({detectWidth:s})):this.debugWarn("JbPro",e(1603))}[mP(148)](t){const e=mP;this.isDestroyed()||(this[e(1068)](e(726),e(842),t),t&&(this[e(630)][e(1539)]=t))}[mP(423)](t){const e=mP;this.isDestroyed()||(this[e(1068)](e(726),"showErrorMessageTips()",t),t&&(this[e(371)]?this[e(371)][e(1443)](t):this[e(1003)](e(726),e(1453))))}[mP(948)](t){const e=mP;this[e(1068)](e(726),e(1500),t),t&&!si(t)&&(this[e(371)]?this[e(371)][e(948)](t):this[e(1003)]("JbPro",e(1548)))}[mP(255)](){const t=mP;this[t(1335)]()||(this.debugLog(t(726),t(1285)),this[t(371)]?this[t(371)][t(1574)]():this[t(1003)](t(726),"hideErrorMessageTips() player is null"))}[mP(246)](){return this[mP(609)]()}[mP(1356)](t,e,s,i){const r=mP;return this[r(482)][r(1356)](t,e,s,i)}[mP(1241)](){const t=mP;return this[t(630)][t(691)]}[mP(1086)](t,e){const s=mP;this[s(1335)]()||(this[s(1068)](this[s(489)],s(1572)+t+" "+e),this[s(371)]?this[s(371)].toggleControlExtendBtn(t,e):this[s(1003)](this[s(489)],s(710)))}getControlExtendBtnActive(t){const e=mP;if(this[e(1335)]())return;this[e(1068)](this[e(489)],e(593)+t);let s=!1;return this[e(371)]?s=this.player.getControlExtendBtnActive(t):this[e(1003)](this[e(489)],e(1534)),s}[mP(1210)](t){const e=mP;this[e(1335)]()||(this[e(1068)](this.TAG_NAME,"toggleControlBar() "+t),this[e(371)]?this.player.toggleControlBar(t):this.debugWarn(this[e(489)],e(324)))}[mP(977)](){const t=mP;if(this[t(1335)]())return!1;this[t(1068)](this[t(489)],"getControlBarShow()");let e=!1;return this.player?e=this.player[t(977)]():this[t(1003)](this[t(489)],"getControlBarShow() player is null"),e}static[mP(1473)](t){return Ks(t)}static[mP(298)](t){return function(t){for(var e=t,s=0,i=0,r=0;r<32;r++)i|=(1&e[s])<<r,s+=4;return i}(t)}[mP(999)](t){const e=mP;let s=!0,i=[];if(t===Xt[e(1347)]?i=this[e(1093)]:t===Xt[e(820)]?i=this._mseDecodeErrorRetryLog:t===Xt[e(301)]?i=this._wcsDecodeErrorRetryLog:t===Xt[e(812)]&&(i=this[e(1245)]),this[e(1068)](this[e(489)],"_checkIsMeaningfulRetry() type is "+t+e(901)+i[e(1089)](",")),i.length>=this[e(630)][e(844)]){const r=i[0],n=i[i[e(1271)]-1],o=n-r;o<=1e4&&(this[e(1003)](this[e(489)],e(661)+t+e(1491)+i[e(1271)]+e(1545)+r+e(1321)+n+e(480)+o),s=!1)}return s}[mP(1298)](t){const e=mP;(Es()||ws())&&t[e(982)]&&t.loadingBackgroundWidth&&t[e(277)]&&(this[e(866)](),this[e(371)][e(630)][e(950)]===e(594)||ys()?this[e(371)][e(1382)]()===A.canvas?this[e(1632)](t):this[e(371)][e(1382)]()===A[e(274)]&&this._doInitLoadingBackgroundForVideo(t):this[e(839)](t))}[mP(778)](t){const e=mP;this[e(1068)](this[e(489)],"_doInitLoadingBackgroundForVideo");const s=this[e(609)]();let i=s[e(918)],r=s[e(466)];const n=this[e(371)][e(630)];r-=this.player[e(520)]();let o=i,a=r;const h=n[e(257)];(270===h||90===h)&&(o=r,a=i),this[e(1065)][e(918)]=o,this[e(1065)][e(466)]=a,this[e(1065)].src=t[e(982)];let l=(i-o)/2,c=(r-a)/2,d=e(210);!n.isResize&&(d="fill"),n[e(1505)]&&(d=e(1181));let u="";n.mirrorRotate===e(1181)&&h&&(u+=e(1441)+h+e(735)),"level"===n[e(1597)]?u+=e(1331):"vertical"===n[e(1597)]&&(u+=e(1439)),this._opt.videoRenderSupportScale&&(this[e(1065)][e(858)][e(1182)]=d),this[e(1065)][e(858)][e(1372)]=u,this[e(1065)][e(858)].padding="0",this[e(1065)][e(858)][e(523)]=l+"px",this[e(1065)].style[e(806)]=c+"px",this[e(1065)][e(1185)]?pn(this[e(1120)],e(186)):this[e(1065)][e(1053)]=()=>{const t=e;pn(this[t(1120)],"show"),this[t(1065)][t(1053)]=null}}[mP(1632)](t){const e=mP;this[e(1068)](this[e(489)],"_doInitLoadingBackgroundForCanvas");const s=this[e(609)]();let i=s.width,r=s[e(466)];const n=this[e(371)][e(630)];r-=this[e(371)][e(520)]();let o=i,a=r;const h=n[e(257)];let l=(i-o)/2,c=(r-a)/2;(270===h||90===h)&&(o=r,a=i),this.$loadingBgImage[e(918)]=o,this[e(1065)][e(466)]=a,this.$loadingBgImage.src=t[e(982)];const d=i/o,u=r/a;let p=d>u?u:d;xi(n[e(718)])&&d!==u&&(p=d+","+u),n[e(1505)]&&(p=d>u?d:u);let f=e(1290)+p+")";n.mirrorRotate===e(1181)&&h&&(f+=e(1441)+h+e(735)),n[e(1597)]===e(1317)?f+=" rotateY(180deg)":n[e(1597)]===e(1007)&&(f+=e(1439)),this[e(1065)].style[e(1629)]="0",this.$loadingBgImage[e(858)][e(1372)]=f,this[e(1065)][e(858)].left=l+"px",this[e(1065)].style[e(806)]=c+"px",this[e(1065)][e(1185)]?pn(this[e(1120)],"show"):this[e(1065)][e(1053)]=()=>{const t=e;pn(this[t(1120)],"show"),this.$loadingBgImage[t(1053)]=null}}[mP(839)](t){const e=mP;this[e(1068)](this[e(489)],e(839));const s=this[e(371)][e(630)].aspectRatio.split(":").map(Number),i=this[e(609)]();let r=i[e(918)],n=i.height,o=this[e(371)][e(520)]();n-=o;const a={width:t.loadingBackgroundWidth,height:t[e(277)]},h=a[e(918)]/a[e(466)],l=s[0]/s[1];if(this.$loadingBgImage[e(851)]=t.loadingBackground,h>l){const t=l*a[e(466)]/a.width;this[e(1065)][e(858)][e(918)]=100*t+"%",this.$loadingBgImage[e(858)][e(466)]="calc(100% - "+o+e(862),this.$loadingBgImage[e(858)][e(1629)]="0 "+(r-r*t)/2+"px"}else{const t=a[e(918)]/l/a.height;this[e(1065)].style[e(918)]=e(471),this[e(1065)][e(858)].height="calc("+100*t+"% - "+o+e(862),this.$loadingBgImage[e(858)][e(1629)]=(n-n*t)/2+e(1040)}this.$loadingBgImage[e(1185)]?pn(this[e(1120)],e(186)):this[e(1065)][e(1053)]=()=>{const t=e;pn(this[t(1120)],"show"),this[t(1065)][t(1053)]=null}}[mP(866)](){const t=mP;if(!this[t(1120)]){const e=document[t(829)](t(1128)),s=document[t(829)](t(333));e.className="jb-pro-loading-bg-for-ios",this[t(1120)]=e,this[t(1065)]=s,e[t(1054)](s),this[t(154)].appendChild(e)}}[mP(626)](){const t=mP;if(this[t(1120)]){this[t(1068)](this[t(489)],t(681));if(!En(this[t(1120)])){const e=this.$container.querySelector(t(1378));e&&this[t(154)]&&this[t(154)].removeChild(e)}this[t(1120)]=null,this[t(1065)]=null}}[mP(609)](){const t=mP;let e={};return this[t(154)]&&(e=this[t(154)].getBoundingClientRect(),e[t(918)]=Math[t(1002)](e.width,this[t(154)][t(1296)]),e[t(466)]=Math[t(1002)](e[t(466)],this[t(154)][t(934)])),e}_isNeedNetworkDisconnectReplay(){const t=mP;return this[t(630)].networkDisconnectReplay&&this.network[t(1413)]()}[mP(444)](t){const e=mP;if(this[e(1335)]())this[e(1068)]("JbPro",e(1580));else if(this[e(954)])this[e(1068)](e(726),e(805));else if(this[e(1031)](q[e(204)],this.getCrashLog(J[e(987)],t)),this[e(954)]=!0,this[e(371)]&&this.player._opt[e(486)]){this[e(1068)]("JbPro",e(987));const s=this[e(630)][e(691)],i=this[e(630)][e(1334)];this[e(379)]({openWebglAlignment:!0})[e(722)](()=>{const r=e;this[r(1234)](s,i).then(()=>{const t=r;this[t(1068)]("JbPro",t(704)),this._replaySuccessAndNext()})[r(1430)](e=>{const s=r;this[s(1031)](q[s(208)],J[s(987)],{},t),this[s(998)](s(726),"webglAlignmentError and play error",e)}).finally(()=>{this[r(954)]=!1})}).catch(t=>{const s=e;this[s(954)]=!1,this.debugError(s(726),s(1153),t)})}else{const s=!1===this._opt[e(344)];this.player[e(693)](),this[e(684)](s)[e(722)](()=>{const s=e;this[s(1031)](q[s(208)],J.webglAlignmentError,{},t),this[s(1068)](s(726),s(398))}).catch(s=>{const i=e;this[i(1031)](q[i(208)],J[i(987)],{},t),this[i(998)](i(726),"webglAlignmentError and pause error",s)})[e(1303)](()=>{this[e(954)]=!1})}}[mP(519)](t){const e=mP;if(this[e(1335)]())return void this[e(1068)](e(726),e(1088));if(this[e(543)])return void this[e(1068)](e(726),e(419));this[e(1031)](q[e(204)],this[e(640)](J[e(682)],t));const s=this[e(1428)]();if(this[e(543)]=!0,this[e(371)]&&this.player[e(630)].webglContextLostErrorReplay){this[e(1068)]("JbPro","webglContextLostError");const i=this[e(630)][e(691)],r=this[e(630)][e(1334)];let n=this[e(712)](s);this[e(379)](n)[e(722)](()=>{const n=e;this.play(i,r)[n(722)](()=>{const t=n;this[t(1068)]("JbPro",t(629)),this[t(1405)]()})[n(1430)](e=>{const i=n;this[i(1031)](q.playFailedAndPaused,J[i(682)],s,t),this.debugError("JbPro",i(309),e.toString())})[n(1303)](()=>{this[n(543)]=!1})}).catch(i=>{const r=e;this.webglContextLostErrorOnLock=!1,this[r(1031)](q[r(208)],J[r(682)],s,t),this[r(998)](r(726),r(748),i)})}else{const i=!1===this[e(630)][e(344)];this.player[e(693)](),this[e(1209)]=s,this[e(684)](i)[e(722)](()=>{const i=e;this[i(1031)](q[i(208)],J.webglContextLostError,s,t),this[i(1068)]("JbPro",i(460))})[e(1430)](i=>{const r=e;this.emit(q[r(208)],J[r(682)],s,t),this[r(998)](r(726),r(1585),i)})[e(1303)](()=>{this[e(543)]=!1})}}_handleMediaSourceH265NotSupport(t){const e=mP;if(this[e(1335)]())this[e(1068)](e(726),"mediaSourceH265NotSupport but player is destroyed");else if(this.mediaSourceH265NotSupportOnLock)this[e(1068)](e(726),"mediaSourceH265NotSupportOnLock is true");else if(this[e(1031)](q.crashLog,this[e(640)](J.mediaSourceH265NotSupport,t)),this[e(725)]=!0,this[e(371)]&&this[e(371)][e(630)].hardDecodingNotSupportAutoWasm){this[e(1068)](e(726),e(1135));const s=this._opt.url,i=this._opt[e(1334)],r={useMSE:!1,useWCS:!1};this.player[e(658)]()&&(this[e(1068)](this.TAG_NAME,e(1495)),r[e(855)]=!0),this[e(379)](r)[e(722)](()=>{const r=e;this[r(1234)](s,i)[r(722)](()=>{const t=r;this[t(1068)](t(726),t(1005)),this[t(1405)]()})[r(1430)](e=>{const s=r;this[s(1031)](q[s(208)],J[s(685)],{},t),this.debugError("JbPro",s(772),e)})[r(1303)](()=>{this[r(725)]=!1})})[e(1430)](s=>{const i=e;this[i(725)]=!1,this[i(1031)](q[i(208)],J[i(685)],{},t),this[i(998)](i(726),i(254),s)})}else{const s=!1===this[e(630)].playFailedUseLastFrameShow;this[e(371)][e(693)](),this._pause(s)[e(722)](()=>{const s=e;this.emit(q[s(208)],J[s(685)],{},t),this.debugLog(s(726),"mediaSourceH265NotSupport and autoWasm is false ,pause success")}).catch(s=>{const i=e;this.emit(q.playFailedAndPaused,J[i(685)],{},t),this[i(998)]("JbPro",i(1325),s)}).finally(()=>{this.mediaSourceH265NotSupportOnLock=!1})}}[mP(871)](t){const e=mP;if(this[e(1335)]())this.debug&&this[e(1068)](e(726),"mseWaitVideoCanplayTimeout but player is destroyed");else if(this[e(985)])this[e(1068)](e(726),e(353));else if(this.emit(q[e(204)],this[e(640)](J[e(742)],t)),this[e(985)]=!0,this.player&&this[e(371)]._opt[e(905)]){this[e(1068)]("JbPro",e(468));const s=this._opt[e(691)],i=this[e(630)].playOptions;this._resetPlayer({useMSE:!1,useWCS:!1})[e(722)](()=>{const r=e;this[r(1234)](s,i)[r(722)](()=>{const t=r;this[t(1068)](t(726),t(584)),this._replaySuccessAndNext()})[r(1430)](e=>{const s=r;this[s(1031)](q[s(208)],J[s(742)],t),this[s(998)](s(726),"mseWaitVideoCanplayTimeout auto wasm [mse-> wasm] reset player and play error",e)})[r(1303)](()=>{this.mseWaitVideoCanplayTimeoutOnLock=!1})}).catch(s=>{const i=e;this.mseWaitVideoCanplayTimeoutOnLock=!1,this.emit(q[i(208)],J[i(742)],{},t),this[i(998)]("JbPro",i(1377),s)})}else{const s=!1===this[e(630)].playFailedUseLastFrameShow;this.player[e(693)](),this._pause(s)[e(722)](()=>{const s=e;this[s(1031)](q[s(208)],J[s(742)],{},t),this.debugLog(s(726),"mseWaitVideoCanplayTimeout and autoWasm is false ,pause success")})[e(1430)](s=>{const i=e;this[i(1031)](q.playFailedAndPaused,J[i(685)],{},t),this[i(998)](i(726),i(1325),s)})[e(1303)](()=>{this[e(985)]=!1})}}[mP(1010)](t){const e=mP;if(this.isDestroyed())return void(this[e(293)]&&this[e(1068)](e(726),"mediaSourceFull but player is destroyed"));if(this.mediaSourceFullOnLock)return void this.debugLog(e(726),"mediaSourceFullOnLock is true");this[e(1031)](q[e(204)],this.getCrashLog(J[e(391)],t));const s=this._getVideoLastIframeInfo();if(this[e(465)]=!0,this[e(371)]&&this[e(371)]._opt[e(195)]){const i=this[e(630)].url,r=this._opt[e(1334)];let n={},o=this.player[e(630)][e(1359)],a=!0;o?n={useMSE:!1,useWCS:!1}:this[e(999)](Xt[e(820)])?this[e(336)].push(os()):(o=!0,a=!1,n={useMSE:!1,useWCS:!1}),this[e(1068)]("JbPro",e(737)+(xi(a)?e(250):"")+e(1343)+(o?e(863):"mse")+e(233)),n=this[e(712)](s,n),this[e(379)](n)[e(722)](()=>{const n=e;this.play(i,r)[n(722)](()=>{const t=n;this.debugLog(t(726),t(1610)),this[t(1405)]()})[n(1430)](e=>{const i=n;this[i(1031)](q[i(208)],J[i(391)],s,t),this.debugError(i(726),i(785),e)}).finally(()=>{this[n(465)]=!1})}).catch(i=>{const r=e;this[r(465)]=!1,this[r(1031)](q[r(208)],J[r(391)],s,t),this[r(998)](r(726),r(351),i)})}else{const i=!1===this[e(630)][e(344)];this.player[e(693)](),this[e(1209)]=s,this._pause(i).then(()=>{const i=e;this[i(1031)](q[i(208)],J.mediaSourceFull,s,t),this[i(1068)]("JbPro",i(1578))})[e(1430)](i=>{const r=e;this[r(1031)](q[r(208)],J[r(391)],s,t),this.debugError(r(726),r(1370),i)}).finally(()=>{this.mediaSourceFullOnLock=!1})}}[mP(1151)](t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this.debugLog(e(726),e(1230)));if(this.mediaSourceAppendBufferErrorOnLock)return void this.debugLog(e(726),e(1226));this.emit(q[e(204)],this[e(640)](J[e(380)],t));const s=this[e(1428)]();if(this[e(322)]=!0,this[e(371)]&&this[e(371)][e(630)][e(195)]){const i=this[e(630)][e(691)],r=this[e(630)].playOptions;let n={},o=this.player[e(630)][e(1359)],a=!0;o?n={useMSE:!1,useWCS:!1}:this[e(999)](Xt.mseDecodeError)?this._mseDecodeErrorRetryLog[e(1214)](os()):(o=!0,a=!1,n={useMSE:!1,useWCS:!1}),(this[e(371)][e(865)]||this[e(371)][e(1433)])&&(this[e(371)].debugLog("JbPro",e(891)+this.player[e(865)]+e(672)+this.player[e(1433)]+e(600)),n[e(1511)]=!1,n[e(1587)]=!0),this[e(1068)](e(726),e(470)+(xi(a)?e(250):"")+e(1343)+(o?"wasm":"mse")+e(233)),n=this._resetPlayerBeforeUpdateOptions(s,n),this[e(379)](n)[e(722)](()=>{const n=e;this.play(i,r).then(()=>{const t=yP;this.debugLog("JbPro",t(709)),this[t(1405)]()})[n(1430)](e=>{const i=n;this.emit(q[i(208)],J[i(380)],s,t),this[i(998)](i(726),i(236),e)}).finally(()=>{this[n(322)]=!1})})[e(1430)](i=>{const r=e;this.mediaSourceAppendBufferErrorOnLock=!1,this[r(1031)](q[r(208)],J[r(380)],s,t),this[r(998)](r(726),"mediaSourceAppendBufferError and _resetPlayer error",i)})}else{const i=!1===this._opt[e(344)];this[e(371)][e(693)](),this._playFailedAndPausedLastFrameInfo=s,this._pause(i).then(()=>{const i=e;this[i(1031)](q[i(208)],J[i(380)],s,t),this[i(1068)]("JbPro",i(1458))}).catch(i=>{const r=e;this[r(1031)](q[r(208)],J[r(380)],s,t),this[r(998)](r(726),r(734),i)})[e(1303)](()=>{this.mediaSourceAppendBufferErrorOnLock=!1})}}[mP(377)](t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this[e(1068)](e(726),e(1013)));if(this.mseSourceBufferErrorOnLock)return void this[e(1068)](e(726),"mseSourceBufferErrorOnLock is true");this[e(1031)](q[e(204)],this[e(640)](J[e(1022)],t));const s=this[e(1428)]();if(this[e(1072)]=!0,this.player&&this[e(371)]._opt[e(195)]){const i=this[e(630)].url,r=this[e(630)][e(1334)];let n={};if(this[e(371)][e(630)][e(1025)])this[e(371)][e(1363)]?(n={useMSE:!1,useWCS:!1,mseDecoderUseWorker:!1},this[e(1068)](e(726),e(1041))):(n={mseDecoderUseWorker:!1},this[e(1068)](e(726),e(363)));else{let t=this.player[e(630)][e(1359)],s=!0;t?n={useMSE:!1,useWCS:!1}:this[e(999)](Xt.mseDecodeError)?this[e(336)].push(os()):(t=!0,s=!1,n={useMSE:!1,useWCS:!1}),this[e(371)][e(1363)]&&(this[e(1068)](e(726),e(1159)),t=!0,n={useMSE:!1,useWCS:!1}),this[e(1068)](e(726),"mseSourceBufferError auto wasm "+(xi(s)?e(250):"")+e(1343)+e(t?863:267)+"] reset player and play")}n=this._resetPlayerBeforeUpdateOptions(s,n),this[e(379)](n)[e(722)](()=>{const n=e;this[n(1234)](i,r).then(()=>{const t=n;this[t(1068)](t(726),t(818)),this._replaySuccessAndNext()})[n(1430)](e=>{const i=n;this.emit(q[i(208)],J[i(1022)],s,t),this[i(998)]("JbPro",i(932),e)})[n(1303)](()=>{this.mseSourceBufferErrorOnLock=!1})})[e(1430)](i=>{const r=e;this[r(1072)]=!1,this.emit(q[r(208)],J[r(1022)],s,t),this[r(998)](r(726),"mseSourceBufferError _resetPlayer and play error",i)})}else{this[e(1068)](this[e(489)],e(1392));const i=!1===this[e(630)][e(344)];this.player[e(693)](),this[e(1209)]=s,this[e(684)](i).then(()=>{const i=e;this[i(1031)](q[i(208)],J.mseSourceBufferError,s,t),this[i(1068)](i(726),"mseSourceBufferError and autoWasm is false ,pause success")})[e(1430)](i=>{const r=e;this[r(1031)](q.playFailedAndPaused,J.mseSourceBufferError,s,t),this.debugError(r(726),r(1463),i)})[e(1303)](()=>{this[e(1072)]=!1})}}[mP(1512)](t){const e=mP;if(this.isDestroyed())return void(this.debug&&this.debugLog(e(726),e(643)));if(this[e(1488)])return void this.debugLog(e(726),e(308));this[e(1031)](q.crashLog,this[e(640)](J[e(1342)],t));const s=this[e(1428)]();if(this[e(1488)]=!0,this[e(371)]&&this[e(371)]._opt[e(195)]){const i=this._opt[e(691)],r=this._opt[e(1334)];let n={},o=this[e(371)][e(630)].decoderErrorAutoWasm,a=!0;o?n={useMSE:!1,useWCS:!1}:this[e(999)](Xt[e(820)])?this[e(336)][e(1214)](os()):(o=!0,a=!1,n={useMSE:!1,useWCS:!1}),this[e(1068)](e(726),e(872)+(xi(a)?" and is not meaningful Retry":"")+" [mse-> "+(o?"wasm":"mse")+e(233)),n=this._resetPlayerBeforeUpdateOptions(s,n),this._resetPlayer(n)[e(722)](()=>{const n=e;this[n(1234)](i,r).then(()=>{const t=n;this[t(1068)]("JbPro",t(1361)),this._replaySuccessAndNext()})[n(1430)](e=>{const i=n;this.emit(q.playFailedAndPaused,J[i(1342)],s,t),this[i(998)](i(726),"mediaSourceBufferedIsZeroError reset player and play error",e)})[n(1303)](()=>{this[n(1488)]=!1})}).catch(i=>{const r=e;this[r(1488)]=!1,this[r(1031)](q[r(208)],J[r(1342)],s,t),this.debugError(r(726),r(596),i)})}else{const i=!1===this[e(630)][e(344)];this[e(371)][e(693)](),this._playFailedAndPausedLastFrameInfo=s,this[e(684)](i).then(()=>{const i=e;this[i(1031)](q.playFailedAndPaused,J.mediaSourceBufferedIsZeroError,s,t),this.debugLog(i(726),i(1091))})[e(1430)](i=>{const r=e;this[r(1031)](q[r(208)],J[r(1342)],s,t),this[r(998)](r(726),r(645),i)}).finally(()=>{this[e(1488)]=!1})}}[mP(715)](t){const e=mP;if(this[e(1335)]())return void(this.debug&&this[e(1068)]("JbPro","mseAddSourceBufferError but player is destroyed"));if(this.mseAddSourceBufferErrorOnLock)return void this[e(1068)]("JbPro",e(579));this.emit(q.crashLog,this[e(640)](J[e(1571)],t));const s=this[e(1428)]();if(this[e(1256)]=!0,this[e(371)]&&this.player._opt[e(898)]){this[e(1068)](e(726),"mseAddSourceBufferError auto wasm [mse-> wasm] reset player and play");const i=this[e(630)][e(691)],r=this._opt[e(1334)];let n={useMSE:!1,useWCS:!1};n=this[e(712)](s,n),this[e(379)](n).then(()=>{const n=e;this[n(1234)](i,r)[n(722)](()=>{const t=n;this[t(1068)](t(726),"mseAddSourceBufferError auto wasm [mse-> wasm] reset player and play success"),this[t(1405)]()})[n(1430)](e=>{const i=n;this[i(1031)](q[i(208)],J[i(1571)],s,t),this[i(998)](i(726),i(699),e)})[n(1303)](()=>{this[n(1256)]=!1})}).catch(i=>{const r=e;this.mseAddSourceBufferErrorOnLock=!1,this.emit(q[r(208)],J[r(1571)],s,t),this[r(998)](r(726),r(1147),i)})}else{const i=!1===this[e(630)][e(344)];this.player[e(693)](),this._playFailedAndPausedLastFrameInfo=s,this[e(684)](i)[e(722)](()=>{const i=e;this.emit(q[i(208)],J.mseAddSourceBufferError,s,t),this[i(1068)]("JbPro","mseAddSourceBufferError and autoWasm is false ,pause success")})[e(1430)](i=>{const r=e;this.emit(q[r(208)],J[r(1571)],s,t),this[r(998)](r(726),r(1440),i)})[e(1303)](()=>{this[e(1256)]=!1})}}[mP(434)](t){const e=mP;if(this[e(1335)]())this[e(293)]&&this[e(1068)](e(726),"mediaSourceDecoderConfigurationError but player is destroyed");else if(this[e(1100)])this[e(1068)](e(726),e(1625));else if(this[e(1031)](q[e(204)],this.getCrashLog(J[e(1110)],t)),this[e(1100)]=!0,this[e(371)]&&this[e(371)]._opt[e(898)]){this.debugLog(e(726),"mediaSourceDecoderConfigurationError auto wasm [mse-> wasm] reset player and play");const s=this[e(630)][e(691)],i=this[e(630)].playOptions;let r={useMSE:!1,useWCS:!1};this._resetPlayer(r).then(()=>{const r=e;this[r(1234)](s,i)[r(722)](()=>{const t=r;this[t(1068)](t(726),t(1318)),this[t(1405)]()})[r(1430)](e=>{const s=r;this[s(1031)](q[s(208)],J[s(1110)],{},t),this.debugError(s(726),s(289),e)})[r(1303)](()=>{this[r(1100)]=!1})})[e(1430)](s=>{const i=e;this[i(1100)]=!1,this[i(1031)](q[i(208)],J[i(1110)],{},t),this[i(998)]("JbPro","mediaSourceDecoderConfigurationError auto wasm [mse-> wasm] _resetPlayer and play error",s)})}else{const s=!1===this[e(630)][e(344)];this[e(371)][e(693)](),this[e(684)](s)[e(722)](()=>{const s=e;this[s(1031)](q[s(208)],J[s(1110)],{},t),this[s(1068)]("JbPro",s(1340))})[e(1430)](s=>{const i=e;this.emit(q.playFailedAndPaused,J.mediaSourceDecoderConfigurationError,{},t),this[i(998)](i(726),i(221),s)}).finally(()=>{this.mediaSourceDecoderConfigurationErrorOnLock=!1})}}[mP(1233)](t){const e=mP;if(this[e(1335)]())return void(this.debug&&this[e(1068)](e(726),e(972)));if(this[e(231)])return void this[e(1068)]("JbPro",e(908));this.emit(q.crashLog,this[e(640)](J[e(1018)],t));const s=this[e(1428)]();if(this[e(231)]=!0,this[e(371)]&&this[e(371)][e(630)][e(817)]){this.debugLog(e(726),"mediaSourceTsIsMaxDiff reset player and play");const i=this[e(630)][e(691)],r=this._opt[e(1334)];let n=this._resetPlayerBeforeUpdateOptions(s);this[e(379)](n)[e(722)](()=>{const n=e;this[n(1234)](i,r).then(()=>{const t=n;this[t(1068)]("JbPro","mediaSourceTsIsMaxDiff replay success"),this[t(1405)]()})[n(1430)](e=>{const i=n;this[i(1031)](q.playFailedAndPaused,J[i(1018)],s,t),this[i(998)](i(726),i(413),e)})[n(1303)](()=>{this[n(231)]=!1})}).catch(i=>{const r=e;this[r(231)]=!1,this[r(1031)](q[r(208)],J.mediaSourceTsIsMaxDiff,s,t),this.debugError("JbPro",r(1381),i)})}else{const i=!1===this._opt[e(344)];this[e(371)][e(693)](),this[e(1209)]=s,this._pause(i).then(()=>{const i=e;this.emit(q.playFailedAndPaused,J[i(1018)],s,t),this.debugLog(i(726),i(1479))})[e(1430)](i=>{const r=e;this[r(1031)](q.playFailedAndPaused,J[r(1018)],s,t),this[r(998)](r(726),r(1385),i)})[e(1303)](()=>{this[e(231)]=!1})}}_handleMseWidthOrHeightChange(t){const e=mP;if(this[e(1335)]())return void(this.debug&&this[e(1068)]("JbPro",e(368)));if(this[e(880)])return void this[e(1068)](e(726),e(232));this.emit(q[e(204)],this[e(640)](J[e(1577)],t));const s=this[e(1428)]();if(this[e(880)]=!0,this.player&&this[e(371)][e(630)][e(511)]){this[e(1068)](e(726),e(1104));const i=this[e(630)][e(691)],r=this._opt[e(1334)];let n=this[e(712)](s);this[e(379)](n)[e(722)](()=>{const n=e;this.player._opt.widthOrHeightChangeReplayDelayTime>0?this[n(1456)]=setTimeout(()=>{const e=n;this[e(1456)]=null,this[e(1335)]()?this[e(293)]&&this[e(1068)]("JbPro","mseWidthOrHeightChange and widthOrHeightChangeReplayDelayTime but player is destroyed"):this.play(i,r)[e(722)](()=>{const t=e;this[t(1068)](t(726),t(1551)),this[t(1405)]()})[e(1430)](i=>{const r=e;this.emit(q.playFailedAndPaused,J[r(1577)],s,t),this[r(998)](r(726),r(1541),i)})[e(1303)](()=>{this[e(880)]=!1})},1e3*this[n(371)]._opt.widthOrHeightChangeReplayDelayTime):this[n(1234)](i,r)[n(722)](()=>{const t=n;this[t(1068)]("JbPro",t(1551))})[n(1430)](e=>{const i=n;this.emit(q[i(208)],J[i(1577)],s,t),this[i(998)]("JbPro","mseWidthOrHeightChange and reset player and play error",e)})[n(1303)](()=>{this[n(880)]=!1})})[e(1430)](i=>{const r=e;this[r(880)]=!1,this[r(1031)](q[r(208)],J[r(1577)],s,t),this[r(998)](r(726),r(390),i)})}else{const i=!1===this[e(630)][e(344)];this[e(371)][e(693)](),this[e(1209)]=s,this[e(684)](i).then(()=>{const i=e;this[i(1031)](q[i(208)],J[i(1577)],s,t),this[i(998)](i(726),i(1048))})[e(1430)](i=>{const r=e;this[r(1031)](q[r(208)],J[r(1577)],s,t),this[r(998)]("JbPro",r(765),i)}).finally(()=>{this.mseWidthOrHeightChangeOnLock=!1})}}_handleMediaSourceAudioG711NotSupport(t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this[e(1068)]("JbPro",e(1319)));if(this[e(1021)])return void this[e(1068)](e(726),e(563));const s=this._getVideoLastIframeInfo();if(this[e(1021)]=!0,this[e(371)]&&this[e(371)][e(630)][e(1046)]){this[e(1068)](e(726),e(605));const i=this[e(630)].url,r=this[e(630)][e(1334)];let n={mseDecodeAudio:!1,syncAudioAndVideo:!0};n=this[e(712)](s,n,{isInitDecodeError:!0}),this._resetPlayer(n)[e(722)](()=>{const n=e;this[n(1234)](i,r)[n(722)](()=>{const t=n;this.debugLog(t(726),t(1414)),this[t(1405)]()})[n(1430)](e=>{const i=n;this[i(1031)](q.playFailedAndPaused,J[i(707)],s,t),this[i(998)](i(726),i(1563),e)})[n(1303)](()=>{this[n(1021)]=!1})})[e(1430)](i=>{const r=e;this[r(1021)]=!1,this.emit(q[r(208)],J[r(707)],s,t),this.debugError(r(726),r(1229),i)})}else{const i=!1===this._opt[e(344)];this.player[e(693)](),this[e(1209)]=s,this[e(684)](i)[e(722)](()=>{const i=e;this[i(1031)](q[i(208)],J[i(707)],s,t),this.debugError(i(726),i(1550))})[e(1430)](i=>{const r=e;this.emit(q.playFailedAndPaused,J[r(707)],s,t),this[r(998)](r(726),r(362),i)})[e(1303)](()=>{this[e(1021)]=!1})}}[mP(562)](t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this.debugLog("JbPro",e(864)));if(this.mediaSourceAudioInitTimeoutOnLock)return void this[e(1068)]("JbPro",e(590));const s=this[e(1428)]();if(this.mediaSourceAudioInitTimeoutOnLock=!0,this[e(371)]&&this[e(371)][e(630)][e(1166)]){this[e(1068)](e(726),e(631));const i=this._opt[e(691)],r=this[e(630)].playOptions;let n={mseDecodeAudio:!1,syncAudioAndVideo:!0};n=this[e(712)](s,n,{isInitDecodeError:!0}),this[e(379)](n)[e(722)](()=>{const n=e;this[n(1234)](i,r)[n(722)](()=>{const t=n;this[t(1068)](t(726),t(1623)),this[t(1405)]()}).catch(e=>{const i=n;this[i(1031)](q.playFailedAndPaused,J[i(896)],s,t),this[i(998)](i(726),i(364),e)})[n(1303)](()=>{this[n(153)]=!1})})[e(1430)](i=>{const r=e;this[r(153)]=!1,this[r(1031)](q[r(208)],J[r(896)],s,t),this[r(998)](r(726),r(1305),i)})}else{const i=!1===this[e(630)].playFailedUseLastFrameShow;this[e(371)][e(693)](),this[e(1209)]=s,this[e(684)](i)[e(722)](()=>{const i=e;this[i(1031)](q[i(208)],J[i(896)],s,t),this.debugError(i(726),"mediaSourceAudioInitTimeout and mediaSourceAudioInitTimeoutReplay is false,pause success")})[e(1430)](i=>{const r=e;this[r(1031)](q.playFailedAndPaused,J[r(896)],s,t),this[r(998)](r(726),r(1221),i)})[e(1303)](()=>{this[e(153)]=!1})}}[mP(1540)](t){const e=mP;if(this[e(1335)]())return void(this.debug&&this.debugLog(e(726),e(1508)));if(this[e(1180)])return void this.debugLog(e(726),e(1397));const s=this[e(1428)]();if(this.mediaSourceAudioNoDataTimeoutOnLock=!0,this.player&&this[e(371)]._opt.mediaSourceAudioNoDataTimeoutReplay){this[e(1068)](e(726),e(1235));const i=this[e(630)][e(691)],r=this[e(630)][e(1334)];let n={mseDecodeAudio:!1};n=this._resetPlayerBeforeUpdateOptions(s,n,{isInitDecodeError:!0}),this[e(379)](n)[e(722)](()=>{const n=e;this[n(1234)](i,r)[n(722)](()=>{const t=n;this[t(1068)](t(726),t(1015)),this[t(1405)]()})[n(1430)](e=>{const i=n;this[i(1031)](q[i(208)],J.mediaSourceAudioNoDataTimeout,s,t),this[i(998)](i(726),i(241),e)})[n(1303)](()=>{this[n(1180)]=!1})})[e(1430)](i=>{const r=e;this[r(1180)]=!1,this[r(1031)](q.playFailedAndPaused,J[r(664)],s,t),this[r(998)](r(726),"mediaSourceAudioNoDataTimeout and _resetPlayer error",i)})}else{const i=!1===this[e(630)][e(344)];this[e(371)][e(693)](),this[e(1209)]=s,this[e(684)](i)[e(722)](()=>{const i=e;this[i(1031)](q[i(208)],J.mediaSourceAudioNoDataTimeout,s,t),this[i(998)](i(726),"mediaSourceAudioNoDataTimeout and mediaSourceAudioNoDataTimeoutReplay isfalse pause success")})[e(1430)](i=>{const r=e;this[r(1031)](q[r(208)],J.mediaSourceAudioNoDataTimeout,s,t),this[r(998)](r(726),r(991),i)})[e(1303)](()=>{this[e(1180)]=!1})}}_handleMseWorkerAddSourceBufferError(t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this[e(1068)](e(726),e(385)));if(this[e(931)])return void this[e(1068)](e(726),e(591));const s=this[e(1428)]();if(this[e(931)]=!0,this[e(371)]&&this[e(371)]._opt[e(898)]){this.debugLog(e(726),e(1519));const i=this[e(630)][e(691)],r=this[e(630)].playOptions;let n={mseDecoderUseWorker:!1};n=this._resetPlayerBeforeUpdateOptions(s,n),this[e(379)](n)[e(722)](()=>{const n=e;this.play(i,r)[n(722)](()=>{const t=n;this[t(1068)](t(726),t(1581)),this[t(1405)]()}).catch(e=>{const i=n;this[i(1031)](q[i(208)],J[i(1279)],s,t),this[i(998)](i(726),i(1464),e)})[n(1303)](()=>{this.mseWorkerAddSourceBufferErrorOnLock=!1})})[e(1430)](i=>{const r=e;this[r(931)]=!1,this[r(1031)](q.playFailedAndPaused,J.mseWorkerAddSourceBufferError,s,t),this[r(998)](r(726),r(909),i)})}else{const i=!1===this._opt.playFailedUseLastFrameShow;this[e(371)].setPlayFailedAndPaused(),this[e(1209)]=s,this._pause(i).then(()=>{const i=e;this.emit(q.playFailedAndPaused,J[i(1279)],s,t),this[i(998)]("JbPro",i(771))})[e(1430)](i=>{const r=e;this[r(1031)](q[r(208)],J[r(1279)],s,t),this[r(998)](r(726),r(1255),i)})[e(1303)](()=>{this.mseWorkerAddSourceBufferErrorOnLock=!1})}}_handlePlayVodMseDecodeVideoError(t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this[e(1068)]("JbPro",e(1109)));if(this[e(557)])return void this[e(1068)](e(726),e(1411));this[e(1031)](q[e(204)],this[e(640)](J[e(1117)],t));const s=this._getVideoLastIframeInfo();this[e(557)]=!0;const i=this[e(630)][e(691)],r=this[e(630)].playOptions;let n={};let o={};0===this[e(371)][e(311)][e(513)]()&&(this[e(1068)](this[e(489)],e(532)),n[e(1212)]=!1,n[e(780)]=!1,o[e(978)]=!0),n=this[e(712)](s,n,o),this._resetPlayer(n)[e(722)](()=>{const n=e;this[n(1234)](i,r)[n(722)](()=>{const t=n;this.debugLog("JbPro","playVodMseDecodeVideoError reset player and play success"),this[t(1405)]()})[n(1430)](e=>{const i=n;this.emit(q[i(208)],J.playVodMseDecodeVideoError,s,t),this.debugError("JbPro",i(1301),e)}).finally(()=>{this[n(557)]=!1})})[e(1430)](i=>{const r=e;this[r(557)]=!1,this.emit(q[r(208)],J[r(1117)],s,t),this.debugError(r(726),r(714),i)})}_handleMediaSourceUseCanvasRenderPlayFailed(t){const e=mP;if(this[e(1335)]())this[e(293)]&&this.debugLog(e(726),e(1373));else if(this[e(1529)])this[e(1068)]("JbPro",e(1566));else if(this[e(1031)](q.crashLog,this.getCrashLog(J.mediaSourceUseCanvasRenderPlayFailed,t)),this.mediaSourceUseCanvasRenderPlayFailedOnLock=!0,this[e(371)]&&this[e(371)]._opt[e(970)]&&this[e(371)]._opt[e(435)]){this[e(1068)](e(726),e(764)+this[e(371)][e(630)][e(435)]+" and reset player and play");const s=this[e(630)][e(691)],i=this[e(630)][e(1334)];let r={};const n=this[e(371)][e(630)][e(435)];n===A[e(193)]?r={useMSE:!1,useWCS:!1}:n===A[e(274)]&&(r={videoRenderType:A.video}),this._resetPlayer(r)[e(722)](()=>{const r=e;this[r(1234)](s,i)[r(722)](()=>{const t=r;this[t(1068)](t(726),t(1129)),this._replaySuccessAndNext()})[r(1430)](e=>{const s=r;this[s(1031)](q[s(208)],J[s(1421)],{},t),this[s(998)](s(726),s(477),e)})[r(1303)](()=>{this.mediaSourceUseCanvasRenderPlayFailedOnLock=!1})})[e(1430)](s=>{const i=e;this[i(1529)]=!1,this[i(1031)](q[i(208)],J[i(1421)],{},t),this[i(998)](i(726),i(845),s)})}else{const s=!1===this[e(630)].playFailedUseLastFrameShow;this[e(371)].setPlayFailedAndPaused(),this[e(684)](s).then(()=>{const t=e;this[t(1068)](t(726),t(1122))}).catch(s=>{const i=e;this[i(1031)](q.playFailedAndPaused,J.mediaSourceUseCanvasRenderPlayFailed,{},t),this[i(998)](i(726),i(440),s)})[e(1303)](()=>{this[e(1529)]=!1})}}[mP(753)](t){const e=mP;if(this[e(1335)]())this[e(293)]&&this[e(1068)]("JbPro",e(1218));else if(this[e(1513)])this[e(1068)](e(726),e(625));else if(this[e(1031)](q[e(204)],this[e(640)](J.webcodecsH265NotSupport,t)),this[e(1513)]=!0,this[e(371)]&&this[e(371)][e(630)][e(898)]){this[e(1068)](e(726),e(1451));const s=this[e(630)][e(691)],i=this[e(630)][e(1334)];this[e(379)]({useMSE:!1,useWCS:!1})[e(722)](()=>{const r=e;this[r(1234)](s,i)[r(722)](()=>{const t=r;this.debugLog(t(726),"webcodecsH265NotSupport auto wasm [wcs-> wasm] reset player and play success"),this[t(1405)]()})[r(1430)](e=>{const s=r;this[s(1031)](q[s(208)],J[s(959)],{},t),this[s(998)](s(726),s(745),e)})[r(1303)](()=>{this[r(1513)]=!1})})[e(1430)](t=>{const s=e;this[s(1513)]=!1,this.debugError(s(726),"webcodecsH265NotSupport auto wasm [wcs-> wasm] _resetPlayer and play error",t)})}else{const s=!1===this[e(630)][e(344)];this[e(371)][e(693)](),this[e(684)](s)[e(722)](()=>{const s=e;this[s(1031)](q[s(208)],J[s(959)],{},t),this[s(1068)](s(726),s(1133))})[e(1430)](s=>{const i=e;this[i(1031)](q.playFailedAndPaused,J[i(959)],{},t),this[i(998)](i(726),i(936),s)})[e(1303)](()=>{this[e(1513)]=!1})}}_handleWebcodecsUnsupportedConfigurationError(t){const e=mP;if(this.isDestroyed())this.debug&&this[e(1068)]("JbPro",e(490));else if(this[e(1584)])this[e(1068)](e(726),e(275));else if(this[e(1031)](q.crashLog,this[e(640)](J.webcodecsUnsupportedConfigurationError,t)),this.webcodecsUnsupportedConfigurationErrorOnLock=!0,this[e(371)]&&this[e(371)]._opt[e(898)]){this.debugLog(e(726),e(283));const s=this[e(630)][e(691)],i=this[e(630)].playOptions;this[e(379)]({useMSE:!1,useWCS:!1})[e(722)](()=>{const r=e;this[r(1234)](s,i)[r(722)](()=>{const t=r;this[t(1068)](t(726),t(510)),this[t(1405)]()})[r(1430)](e=>{const s=r;this[s(1031)](q[s(208)],J[s(754)],{},t),this[s(998)]("JbPro",s(1311),e)}).finally(()=>{this[r(1584)]=!1})})[e(1430)](s=>{const i=e;this[i(1584)]=!1,this[i(1031)](q.playFailedAndPaused,J[i(754)],{},t),this[i(998)](i(726),i(459),s)})}else{const s=!1===this[e(630)].playFailedUseLastFrameShow;this[e(371)][e(693)](),this[e(684)](s)[e(722)](()=>{const s=e;this.emit(q[s(208)],J[s(754)],{},t),this[s(1068)]("JbPro","webcodecsUnsupportedConfigurationError and autoWasm is false , pause success")}).catch(s=>{const i=e;this[i(1031)](q[i(208)],J[i(754)],{},t),this[i(998)](i(726),i(1175),s)})[e(1303)](()=>{this[e(1584)]=!1})}}[mP(928)](t){const e=mP;if(this[e(1335)]())this[e(293)]&&this[e(1068)]("JbPro",e(260));else if(this.webcodecsDecodeConfigureErrorOnLock)this.debugLog(e(726),e(500));else if(this[e(1031)](q[e(204)],this[e(640)](J[e(328)],t)),this[e(371)]&&this.player[e(630)][e(898)]){this[e(1068)](e(726),e(1283));const s=this[e(630)][e(691)],i=this[e(630)][e(1334)];this._resetPlayer({useMSE:!1,useWCS:!1})[e(722)](()=>{const r=e;this.play(s,i)[r(722)](()=>{const t=r;this.debugLog(t(726),t(1582)),this[t(1405)]()}).catch(e=>{const s=r;this[s(1031)](q[s(208)],J[s(328)],{},t),this[s(998)](s(726),s(495),e)})[r(1303)](()=>{this.webcodecsDecodeConfigureErrorOnLock=!1})})[e(1430)](s=>{const i=e;this[i(888)]=!1,this.emit(q.playFailedAndPaused,J[i(328)],{},t),this.debugError(i(726),i(940),s)})}else{const s=!1===this._opt[e(344)];this.player.setPlayFailedAndPaused(),this[e(684)](s)[e(722)](()=>{const s=e;this.emit(q[s(208)],J.webcodecsDecodeConfigureError,{},t),this[s(1068)](s(726),"webcodecsDecodeConfigureError and autoWasm is false , pause success")}).catch(s=>{const i=e;this.emit(q[i(208)],J[i(328)],{},t),this.debugError("JbPro",i(404),s)}).finally(()=>{this[e(888)]=!1})}}[mP(763)](t){const e=mP;if(this[e(1335)]())return void(this.debug&&this.debugLog(e(726),e(1605)));if(this[e(1186)])return void this[e(1068)](e(726),"webcodecsDecodeErrorOnLock is true");this[e(1031)](q[e(204)],this[e(640)](J.webcodecsDecodeError,t));const s=this[e(1428)]();if(this[e(1186)]=!0,this.player&&this[e(371)][e(630)][e(1071)]){const i=this._opt[e(691)],r=this[e(630)][e(1334)];let n={},o=this.player[e(630)][e(1359)],a=!0,h=this[e(371)][e(384)]()&&-1!==t[e(846)](wt[e(1528)]),l=!1;o||h?(n={useMSE:!1,useWCS:!1},l=!0):this[e(999)](Xt.wcsDecodeError)?this[e(648)].push(os()):(o=!0,a=!1,n={useMSE:!1,useWCS:!1},l=!0),this[e(1068)]("JbPro",e(545)+(xi(a)?e(250):"")+e(245)+(l?"wasm":e(206))+"] reset player and play");let c={};h&&(c[e(978)]=!0),n=this[e(712)](s,n,c),this[e(379)](n)[e(722)](()=>{const n=e;this[n(1234)](i,r)[n(722)](()=>{const t=n;this.debugLog(t(726),t(416)),this[t(1405)]()})[n(1430)](e=>{const i=n;this[i(1031)](q[i(208)],J[i(1191)],s,t),this[i(998)]("JbPro",i(816),e)})[n(1303)](()=>{this[n(1186)]=!1})}).catch(()=>{const i=e;this[i(1186)]=!1,this[i(1031)](q[i(208)],J[i(1191)],s,t),this[i(998)]("JbPro",i(214))})}else{const i=!1===this[e(630)][e(344)];this.player[e(693)](),this[e(1209)]=s,this[e(684)](i)[e(722)](()=>{const i=e;this[i(1031)](q[i(208)],J[i(1191)],s,t),this.debugLog(i(726),i(1362))})[e(1430)](i=>{const r=e;this[r(1031)](q.playFailedAndPaused,J.webcodecsDecodeError,s,t),this[r(998)](r(726),"webcodecs decode error and pause error",i)})[e(1303)](()=>{this.webcodecsDecodeErrorOnLock=!1})}}[mP(957)](t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this[e(1068)](e(726),"wcsWidthOrHeightChange but player is destroyed"));if(this[e(852)])return void this.debugLog(e(726),e(572));this[e(1031)](q[e(204)],this[e(640)](J.wcsWidthOrHeightChange,t));const s=this[e(1428)]();if(this[e(852)]=!0,this[e(371)]&&this[e(371)]._opt[e(511)]){this[e(1068)]("JbPro",e(1591));const i=this[e(630)].url,r=this[e(630)].playOptions;let n=this[e(712)](s);this[e(379)](n)[e(722)](()=>{const n=e;this[n(630)][n(967)]>0?this[n(1456)]=setTimeout(()=>{const e=n;this[e(1456)]=null,this[e(1335)]()?this[e(293)]&&this[e(1068)](e(726),e(202)):this.play(i,r)[e(722)](()=>{const t=e;this.debugLog(t(726),"wcsWidthOrHeightChange and reset player and play success"),this[t(1405)]()})[e(1430)](i=>{const r=e;this.emit(q.playFailedAndPaused,J[r(295)],s,t),this[r(998)]("JbPro",r(244),i)})[e(1303)](()=>{this[e(852)]=!1})},1e3*this._opt[n(967)]):this[n(1234)](i,r)[n(722)](()=>{const t=n;this[t(1068)](t(726),t(441))})[n(1430)](e=>{const i=n;this.emit(q[i(208)],J[i(295)],s,t),this[i(998)](i(726),i(244),e)}).finally(()=>{this[n(852)]=!1})}).catch(i=>{const r=e;this[r(852)]=!1,this[r(1031)](q[r(208)],J.wcsWidthOrHeightChange,s,t),this[r(998)](r(726),"wcsWidthOrHeightChange and _resetPlayer error",i)})}else{const i=!1===this[e(630)][e(344)];this.player[e(693)](),this[e(1209)]=s,this[e(684)](i)[e(722)](()=>{const i=e;this.emit(q[i(208)],J[i(295)],s,t),this.debugError("JbPro","wcsWidthOrHeightChange and widthOrHeightChangeReplay is false , pause success")}).catch(i=>{const r=e;this.emit(q[r(208)],J.wcsWidthOrHeightChange,s,t),this[r(998)]("JbPro",r(529),i)})[e(1303)](()=>{this[e(852)]=!1})}}_handleWebcodecsAudioNoDataTimeout(t){const e=mP;if(this.isDestroyed())return void(this[e(293)]&&this[e(1068)](e(726),"webcodecsAudioNoDataTimeout but player is destroyed"));if(this[e(325)])return void this[e(1068)](e(726),"webcodecsAudioNoDataTimeoutOnLock is true");const s=this[e(1428)]();if(this[e(325)]=!0,this[e(371)]&&this.player[e(630)].webcodecsAudioNoDataTimeoutReplay){this.debugLog(e(726),e(1049));const i=this[e(630)][e(691)],r=this[e(630)][e(1334)];let n={wcsDecodeAudio:!1};n=this[e(712)](s,n,{isInitDecodeError:!0}),this._resetPlayer(n)[e(722)](()=>{const n=e;this[n(1234)](i,r).then(()=>{const t=n;this[t(1068)](t(726),"webcodecsAudioNoDataTimeout and reset player and play success"),this._replaySuccessAndNext()})[n(1430)](e=>{const i=n;this[i(1031)](q[i(208)],J[i(798)],s,t),this.debugError("JbPro",i(655),e)})[n(1303)](()=>{this[n(325)]=!1})})[e(1430)](i=>{const r=e;this[r(325)]=!1,this[r(1031)](q[r(208)],J.webcodecsAudioNoDataTimeout,s,t),this[r(998)]("JbPro",r(282),i)})}else{const i=!1===this[e(630)][e(344)];this.player[e(693)](),this[e(1209)]=s,this[e(684)](i)[e(722)](()=>{const i=e;this.emit(q[i(208)],J.webcodecsAudioNoDataTimeout,s,t),this.debugError(i(726),i(678))})[e(1430)](i=>{const r=e;this[r(1031)](q[r(208)],J[r(798)],s,t),this[r(998)](r(726),r(583),i)})[e(1303)](()=>{this[e(325)]=!1})}}_handleWebcodecsAudioInitTimeout(t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this[e(1068)](e(726),"webcodecsAudioInitTimeout but player is destroyed"));if(this[e(1238)])return void this[e(1068)](e(726),"webcodecsAudioInitTimeoutOnLock is true");const s=this[e(1428)]();if(this[e(1238)]=!0,this[e(371)]&&this[e(371)]._opt[e(1076)]){this[e(1068)](e(726),e(571));const i=this[e(630)].url,r=this[e(630)][e(1334)];let n={wcsDecodeAudio:!1};n=this[e(712)](s,n,{isInitDecodeError:!0}),this[e(379)](n)[e(722)](()=>{const n=e;this[n(1234)](i,r)[n(722)](()=>{const t=n;this.debugLog(t(726),t(410)),this[t(1405)]()})[n(1430)](e=>{const i=n;this[i(1031)](q[i(208)],J[i(850)],s,t),this[i(998)]("JbPro",i(861),e)})[n(1303)](()=>{this[n(1238)]=!1})})[e(1430)](i=>{const r=e;this.webcodecsAudioInitTimeoutOnLock=!1,this[r(1031)](q.playFailedAndPaused,J.webcodecsAudioInitTimeout,s,t),this[r(998)](r(726),r(1004),i)})}else{const i=!1===this[e(630)][e(344)];this[e(371)][e(693)](),this[e(1209)]=s,this[e(684)](i)[e(722)](()=>{const i=e;this[i(1031)](q[i(208)],J.webcodecsAudioInitTimeout,s,t),this[i(998)](i(726),i(313))})[e(1430)](i=>{const r=e;this.emit(q[r(208)],J[r(850)],s,t),this[r(998)](r(726),r(933),i)}).finally(()=>{this[e(1238)]=!1})}}[mP(1132)](){const t=mP;if(this.isDestroyed())return void(this.debug&&this[t(1068)]("JbPro",t(357)));if(this.webcodecsAudioDecodeErrorOnLock)return void this[t(1068)](t(726),t(592));const e=this[t(1428)]();if(this.webcodecsAudioDecodeErrorOnLock=!0,this[t(371)]&&this[t(371)]._opt[t(912)]){this.debugLog(t(726),"webcodecsAudioDecodeError and reset player and play");const s=this[t(630)][t(691)],i=this._opt[t(1334)];let r={wcsDecodeAudio:!1};r=this[t(712)](e,r),this[t(379)](r).then(()=>{const r=t;this[r(1234)](s,i).then(()=>{const t=r;this.debugLog(t(726),t(305)),this[t(1405)]()}).catch(t=>{const s=r;this[s(1031)](q[s(208)],J[s(445)],e,error),this.debugError("JbPro",s(1624),t)})[r(1303)](()=>{this[r(938)]=!1})})[t(1430)](s=>{const i=t;this[i(938)]=!1,this.emit(q[i(208)],J[i(445)],e,error),this[i(998)](i(726),i(1509),s)})}else{const s=!1===this[t(630)][t(344)];this.player.setPlayFailedAndPaused(),this._playFailedAndPausedLastFrameInfo=e,this[t(684)](s).then(()=>{const s=t;this[s(1031)](q.playFailedAndPaused,J[s(445)],e,error),this[s(998)](s(726),s(386))})[t(1430)](s=>{const i=t;this[i(1031)](q.playFailedAndPaused,J[i(445)],e,error),this[i(998)](i(726),"webcodecsAudioDecodeError error and pause error",s)}).finally(()=>{this.webcodecsAudioDecodeErrorOnLock=!1})}}_handleSimdDecodeError(t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this.debugLog(e(726),"simdDecodeError but player is destroyed"));if(this.simdDecodeErrorOnLock)return void this[e(1068)](e(726),e(641));this[e(1031)](q[e(204)],this.getCrashLog(J[e(347)],t));const s=this._getVideoLastIframeInfo();if(this[e(237)]=!0,this[e(371)]&&this[e(371)]._opt.simdDecodeErrorReplay){this[e(1068)](e(726),"simdDecodeError error simdDecodeErrorReplayType is "+this[e(371)][e(630)].simdDecodeErrorReplayType+" and reset player and play");const i=this[e(630)].url,r=this[e(630)][e(1334)];let n={};this.player._opt[e(1195)]===y[e(863)]&&(n={useSIMD:!1}),n=this[e(712)](s,n),this[e(379)](n)[e(722)](()=>{const n=e;this.play(i,r)[n(722)](()=>{const t=n;this.debugLog(t(726),"simdDecodeError and reset player and play success"),this._replaySuccessAndNext()})[n(1430)](e=>{const i=n;this[i(1031)](q[i(208)],J[i(347)],s,t),this.debugError(i(726),"simdDecodeError and reset player and play error",e)}).finally(()=>{this[n(237)]=!1})})[e(1430)](i=>{const r=e;this[r(237)]=!1,this[r(1031)](q[r(208)],J[r(347)],s,t),this[r(998)](r(726),"simdDecodeError and _resetPlayer error",i)})}else{const i=!1===this[e(630)].playFailedUseLastFrameShow;this[e(371)][e(693)](),this._playFailedAndPausedLastFrameInfo=s,this._pause(i)[e(722)](()=>{const i=e;this[i(1031)](q.playFailedAndPaused,J.simdDecodeError,s,t),this.debugError(i(726),i(1211))})[e(1430)](i=>{const r=e;this[r(1031)](q[r(208)],J[r(347)],s,t),this[r(998)](r(726),r(453),i)})[e(1303)](()=>{this[e(237)]=!1})}}[mP(388)](t){const e=mP;if(this[e(1335)]())return void(this.debug&&this[e(1068)](e(726),"simdDecodeDelayTimeout but player is destroyed"));if(this[e(1615)])return void this[e(1068)](e(726),"simdDecodeDelayTimeoutOnLock is true");this[e(1031)](q[e(204)],this.getCrashLog(J[e(1112)],t));const s=this._getVideoLastIframeInfo();if(this.simdDecodeDelayTimeoutOnLock=!0,this[e(371)]&&this[e(371)][e(630)][e(980)]){this[e(1068)](e(726),e(1275)+this.player[e(630)].simdDecodeErrorReplayType+e(194));const i=this[e(630)][e(691)],r=this[e(630)][e(1334)];let n={};this[e(371)][e(630)].simdDecodeErrorReplayType===y[e(863)]?n={useSIMD:!1}:this[e(371)][e(630)][e(1195)]===y[e(904)]&&(n={isFFmpegSIMD:!0}),n=this[e(712)](s,n),this[e(379)](n)[e(722)](()=>{const n=e;this.play(i,r)[n(722)](()=>{const t=n;this[t(1068)]("JbPro",t(370)),this[t(1405)]()}).catch(e=>{const i=n;this[i(1031)](q[i(208)],J.simdDecodeDelayTimeout,s,t),this[i(998)](i(726),i(150),e)})[n(1303)](()=>{this[n(1615)]=!1})})[e(1430)](i=>{const r=e;this[r(1615)]=!1,this.emit(q[r(208)],J[r(1112)],s,t),this[r(998)]("JbPro",r(1019),i)})}else{const i=!1===this[e(630)][e(344)];this[e(371)][e(693)](),this._playFailedAndPausedLastFrameInfo=s,this[e(684)](i).then(()=>{const i=e;this[i(1031)](q[i(208)],J[i(1112)],s,t),this.debugError("JbPro","simdDecodeDelayTimeout and simdDecodeErrorReplay is false , pause success")}).catch(i=>{const r=e;this[r(1031)](q.playFailedAndPaused,J.simdDecodeDelayTimeout,s,t),this[r(998)]("JbPro",r(867),i)}).finally(()=>{this[e(1615)]=!1})}}[mP(1371)](t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this.debugLog(e(726),"wasmWidthOrHeightChange but player is destroyed"));if(this.wasmWidthOrHeightChangeOnLock)return void this[e(1068)](e(726),e(1429));this[e(1031)](q[e(204)],this[e(640)](J.wasmWidthOrHeightChange,t));const s=this[e(1428)]();if(this[e(1001)]=!0,this[e(371)]&&this[e(371)]._opt[e(511)]){this.debugLog(e(726),"wasmWidthOrHeightChange and reset player and play");const i=this._opt[e(691)],r=this[e(630)][e(1334)];let n=this[e(712)](s);this[e(379)](n)[e(722)](()=>{const n=e;this[n(630)][n(967)]>0?this[n(1456)]=setTimeout(()=>{const e=n;this[e(1456)]=null,this[e(1335)]()?this.debug&&this[e(1068)](e(726),e(304)):this[e(1234)](i,r)[e(722)](()=>{const t=e;this[t(1068)](t(726),t(547)),this._replaySuccessAndNext()}).catch(i=>{const r=e;this[r(1031)](q[r(208)],J[r(1101)],s,t),this[r(998)]("JbPro",r(1171),i)}).finally(()=>{this[e(1001)]=!1})},1e3*this._opt.widthOrHeightChangeReplayDelayTime):this.play(i,r)[n(722)](()=>{const t=n;this[t(1068)](t(726),"wasmWidthOrHeightChange and reset player and play success")}).catch(e=>{const i=n;this[i(1031)](q[i(208)],J[i(1101)],s,t),this.debugError(i(726),i(1171),e)})[n(1303)](()=>{this.wasmWidthOrHeightChangeOnLock=!1})})[e(1430)](i=>{const r=e;this[r(1001)]=!1,this[r(1031)](q[r(208)],J[r(1101)],s,t),this[r(998)](r(726),"wasmWidthOrHeightChange and _resetPlayer error",i)})}else{const i=!1===this[e(630)][e(344)];this[e(371)][e(693)](),this._playFailedAndPausedLastFrameInfo=s,this._pause(i)[e(722)](()=>{const i=e;this[i(1031)](q[i(208)],J[i(1101)],s,t),this[i(998)]("JbPro",i(421))})[e(1430)](i=>{const r=e;this.emit(q[r(208)],J[r(1101)],s,t),this[r(998)](r(726),r(409),i)})[e(1303)](()=>{this.wasmWidthOrHeightChangeOnLock=!1})}}[mP(1077)](t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this[e(1068)](e(726),"wasmUseVideoRenderError but player is destroyed"));if(this[e(1374)])return void this.debugLog(e(726),e(741));this[e(1031)](q.crashLog,this[e(640)](J[e(209)],t)),this[e(1068)](e(726),"wasmUseVideoRenderError and reset player and play");const s=this[e(630)][e(691)],i=this[e(630)][e(1334)];this.wasmUseVideoRenderErrorOnLock=!0,this._resetPlayer({videoRenderType:A[e(193)]})[e(722)](()=>{const r=e;this.play(s,i)[r(722)](()=>{const t=r;this[t(1068)](t(726),t(979)),this[t(1405)]()})[r(1430)](e=>{const s=r;this.emit(q[s(208)],J[s(209)],{},t),this[s(998)](s(726),s(677),e)})[r(1303)](()=>{this[r(1374)]=!1})})[e(1430)](s=>{const i=e;this[i(1374)]=!1,this[i(1031)](q[i(208)],J.wasmUseVideoRenderError,{},t),this[i(998)](i(726),i(1187),s)})}[mP(494)](t){const e=mP;if(this.isDestroyed())return void(this[e(293)]&&this[e(1068)](e(726),e(823)));if(this[e(1130)])return void this[e(1068)]("JbPro",e(1592));this.emit(q[e(204)],this[e(640)](J[e(1452)],t)),this[e(1130)]=!0,this[e(1068)](e(726),"notSupportNewWasm auto wasm [wasm-> old wasm] reset player and play");const s=this[e(630)][e(691)],i=this[e(630)][e(1334)];this[e(379)]({useOldWasm:!0})[e(722)](()=>{const r=e;this[r(1234)](s,i).then(()=>{const t=r;this[t(1068)](t(726),t(297)),this[t(1405)]()})[r(1430)](e=>{const s=r;this[s(1031)](q[s(208)],J[s(1452)],{},t),this[s(998)](s(726),s(1483),e)})[r(1303)](()=>{this[r(1130)]=!1})})[e(1430)](t=>{const s=e;this[s(1130)]=!1,this[s(1031)](q.playFailedAndPaused,J[s(1452)],{},t),this[s(998)]("JbPro","notSupportNewWasm auto wasm [wasm-> old wasm] _resetPlayer and play error",t)})}[mP(1546)](t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this[e(1068)]("JbPro","outOfMemoryWasm but player is destroyed"));if(this[e(1084)])return void this[e(1068)](e(726),e(278));this[e(1031)](q[e(204)],this.getCrashLog(J[e(660)],t)),this[e(1084)]=!0;let s={};const i=this[e(371)][e(630)].useSIMD;let r="";i?(s={useSIMD:!1},r=e(429)):(s={useOldWasm:!0},r=e(228)),this[e(1068)](e(726),r);const n=this._opt[e(691)],o=this[e(630)][e(1334)];this[e(379)](s)[e(722)](()=>{const s=e;this[s(1234)](n,o).then(()=>{const t=s;this.debugLog("JbPro",r+t(1215)),this[t(1405)]()})[s(1430)](e=>{const i=s;this[i(1031)](q[i(208)],J[i(660)],{},t),this[i(998)](i(726),r+i(838),e)})[s(1303)](()=>{this.outOfMemoryWasmOnLock=!1})})[e(1430)](t=>{const s=e;this.outOfMemoryWasmOnLock=!1,this[s(1031)](q[s(208)],J[s(660)],{},t),this[s(998)](s(726),r+s(838),t)})}[mP(406)](t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this[e(1068)](e(726),"failedToAsynchronouslyPrepareWasm but player is destroyed"));if(this[e(1092)])return void this[e(1068)]("JbPro",e(782));this.emit(q.crashLog,this[e(640)](J.failedToAsynchronouslyPrepareWasm,t)),this[e(1092)]=!0;const s=!1===this._opt[e(344)];this.player.setPlayFailedAndPaused(),this[e(684)](s)[e(722)](()=>{const s=e;this[s(1031)](q[s(208)],J[s(456)],{},t),this[s(998)](s(726),s(1292))})[e(1430)](s=>{const i=e;this.emit(q[i(208)],J.failedToAsynchronouslyPrepareWasm,{},t),this.debugError(i(726),i(1616),s)})[e(1303)](()=>{this[e(1092)]=!1})}_handleVideoElementPlayingFailed(t){const e=mP;if(this.isDestroyed())return void(this[e(293)]&&this[e(1068)](e(726),e(953)));if(this[e(235)])return void this.debugLog("JbPro",e(1462));this[e(1031)](q.crashLog,this[e(640)](J[e(1150)],t));const s=this[e(1428)]();if(this[e(235)]=!0,this[e(371)]&&this[e(371)][e(630)][e(457)]){this[e(1068)]("JbPro",e(487)+this[e(630)].useMSE+e(194));const i=this[e(630)][e(691)],r=this._opt[e(1334)];let n={useMSE:!1,videoRenderType:A[e(193)]};n=this._resetPlayerBeforeUpdateOptions(s,n),this[e(379)](n)[e(722)](()=>{const n=e;this[n(1234)](i,r)[n(722)](()=>{const t=n;this[t(1068)](t(726),"videoElementPlayingFailed and reset player and play success"),this[t(1405)]()})[n(1430)](e=>{const i=n;this[i(1031)](q[i(208)],J.videoElementPlayingFailed,s,t),this[i(998)]("JbPro",i(187),e)})[n(1303)](()=>{this.videoElementPlayingFailedOnLock=!1})})[e(1430)](i=>{const r=e;this[r(235)]=!1,this[r(1031)](q[r(208)],J[r(1150)],s,t),this.debugError("JbPro",r(1163),i)})}else{const i=!1===this[e(630)][e(344)];this[e(371)][e(693)](),this[e(1209)]=s,this[e(684)](i).then(()=>{const i=e;this[i(1031)](q[i(208)],J.videoElementPlayingFailed,s,t),this[i(998)](i(726),i(569))})[e(1430)](i=>{const r=e;this.emit(q[r(208)],J[r(1150)],s,t),this.debugError("JbPro",r(252),i)}).finally(()=>{this[e(235)]=!1})}}[mP(147)](t){const e=mP;if(this[e(1335)]())this[e(293)]&&this[e(1068)](e(726),"simdH264DecodeVideoWidthIsTooLarge but player is destroyed");else if(this.simdH264DecodeVideoWidthIsTooLargeOnLock)this[e(1068)](e(726),e(1431));else if(this[e(1031)](q[e(204)],this[e(640)](J[e(706)],t)),this[e(478)]=!0,this.player&&this[e(371)]._opt[e(1294)]){this[e(1068)](e(726),e(378));const s=this[e(630)].url,i=this._opt.playOptions;this._resetPlayer({useSIMD:!1})[e(722)](()=>{const r=e;this.play(s,i)[r(722)](()=>{const t=r;this[t(1068)](t(726),"simdH264DecodeVideoWidthIsTooLarge and reset player and play success"),this[t(1405)]()})[r(1430)](e=>{const s=r;this[s(1031)](q[s(208)],J.simdH264DecodeVideoWidthIsTooLarge,{},t),this.debugError("JbPro",s(299),e)})[r(1303)](()=>{this[r(478)]=!1})})[e(1430)](s=>{const i=e;this[i(478)]=!1,this[i(1031)](q[i(208)],J[i(706)],{},t),this[i(998)](i(726),i(1427),s)})}else{const s=!1===this[e(630)][e(344)];this[e(371)][e(693)](),this[e(684)](s)[e(722)](()=>{const s=e;this[s(1031)](q[s(208)],J[s(706)],{},t),this[s(998)](s(726),s(634))})[e(1430)](s=>{const i=e;this[i(1031)](q.playFailedAndPaused,J[i(706)],{},t),this.debugError("JbPro",i(225),s)})[e(1303)](()=>{this[e(478)]=!1})}}[mP(1307)](t){const e=mP;if(this[e(371)][e(630)][e(1057)]){if(this.isDestroyed())return void(this[e(293)]&&this.debugLog(e(726),e(827)));if(this[e(925)])return void this.debugLog(e(726),e(1125));this[e(1031)](q[e(204)],this[e(640)](q[e(914)],t));const s=this[e(1428)]();this[e(1068)](e(726),e(207));const i=this[e(630)][e(691)],r=this._opt[e(1334)];let n=this[e(712)](s);this[e(925)]=!0,this[e(379)](n)[e(722)](()=>{const n=e;this[n(1234)](i,r)[n(722)](()=>{const t=n;this.debugLog(t(726),t(1533)),this[t(1405)]()})[n(1430)](e=>{const i=n;this[i(1031)](q[i(208)],q[i(914)],s,t),this[i(998)](i(726),"wasm decode error and reset player and play error",e)})[n(1303)](()=>{this[n(925)]=!1})}).catch(i=>{const r=e;this[r(925)]=!1,this[r(1031)](q.playFailedAndPaused,q[r(914)],s,t),this[r(998)](r(726),r(941),i)})}}[mP(1295)](t){const e=mP;if(this[e(1335)]())return void(this.debug&&this.debugLog(e(726),e(356)));if(xi(this[e(371)][e(630)][e(815)]||this[e(630)][e(394)]))return;if(this[e(1475)])return void this[e(1068)](e(726),"flvDemuxBufferSizeTooLargeOnLock is true");const s=this[e(1428)]();if(this[e(1475)]=!0,this[e(1031)](q[e(204)],this.getCrashLog(q[e(1360)],t)),this[e(371)][e(630)][e(815)]){this.debugLog(e(726),e(843));const i=this[e(630)][e(691)],r=this[e(630)][e(1334)];let n=this[e(712)](s);this[e(379)](n)[e(722)](()=>{const n=e;this[n(1234)](i,r)[n(722)](()=>{const t=n;this.debugLog(this[t(489)],t(1118)),this._replaySuccessAndNext()})[n(1430)](e=>{const i=n;this[i(1031)](q.playFailedAndPaused,q.flvDemuxBufferSizeTooLarge,s,t),this[i(998)](this[i(489)],i(1437),e)})[n(1303)](()=>{this[n(1475)]=!1})}).catch(i=>{const r=e;this.flvDemuxBufferSizeTooLargeOnLock=!1,this[r(1031)](q[r(208)],q.flvDemuxBufferSizeTooLarge,s,t),this.debugError(this[r(489)],"flv Demux Buffer Size Too Large and _resetPlayer error",i)})}else if(this[e(630)].flvDemuxBufferSizeTooLargeEmitFailed){this[e(1068)](this[e(489)],e(165));const i=!1===this[e(630)][e(344)];this.player[e(693)](),this[e(1209)]=s,this[e(684)](i)[e(722)](()=>{const i=e;this[i(1031)](q[i(208)],J[i(1360)],s,t),this[i(1068)](this.TAG_NAME,"flv Demux Buffer Size Too Large and flvDemuxBufferSizeTooLargeEmitFailed = true and pause player success")}).catch(i=>{const r=e;this[r(1031)](q[r(208)],J[r(1360)],s,t),this[r(998)](this[r(489)],"flv Demux Buffer Size Too Large",i)})[e(1303)](()=>{this[e(1475)]=!1})}}[mP(840)](t){const e=mP;if(this[e(1335)]())return void(this.debug&&this.debugLog(e(726),e(892)));if(this.fetchErrorOnLock)return void this.debugLog("JbPro",e(1532));this[e(1031)](q[e(204)],this[e(640)](J[e(612)],t));const s=this._getVideoLastIframeInfo(),i=this._isNeedNetworkDisconnectReplay();if(this[e(1172)]=!0,this.player[e(630)].streamErrorReplay||i){i?this[e(1068)](e(726),e(131)):this[e(1068)](e(726),e(574)+this[e(1476)]+", streamErrorReplayDelayTime is "+this[e(630)][e(1300)]+e(1017));let r=this[e(712)](s);const n=this._opt.playOptions,o=this[e(630)][e(691)],a=i?1:this[e(630)][e(1300)];this[e(379)](r)[e(722)](()=>{const s=e;this[s(1097)]=setTimeout(()=>{const e=s;if(this.streamErrorReplayDelayTimeout=null,!this[e(1335)]())return this[e(339)]()?(this[e(1068)](e(726),"fetch error and network is offline and wait network online to play , so return"),this[e(302)]=!0,void(this._isNetworkOfflinePausedAndNextPlayConfig={url:o,options:n,type:J[e(612)]})):(this._streamErrorReplayTimes++,void this[e(1234)](o,n)[e(722)](()=>{const t=e;this[t(1068)](t(726),t(381)),this[t(1405)]()}).catch(s=>{const i=e;this[i(1031)](q[i(208)],J[i(612)],{},t),this[i(998)]("JbPro",i(674),s)})[e(1303)](()=>{this[e(1172)]=!1}));this.debug&&this[e(1068)](e(726),e(1223))},1e3*a)}).catch(s=>{const i=e;this[i(1172)]=!1,this[i(1031)](q.playFailedAndPaused,J[i(612)],{},t),this[i(998)](i(726),i(913),s)})}else{this[e(1068)]("JbPro","fetch error and pause player");const i=!1===this[e(630)][e(344)];this[e(371)][e(693)](),this[e(1209)]=s,this[e(684)](i)[e(722)](()=>{const i=e;this[i(1031)](q.playFailedAndPaused,J[i(612)],s,t),this.debugLog(i(726),i(1219))}).catch(i=>{const r=e;this.emit(q.playFailedAndPaused,J[r(612)],s,t),this[r(998)]("JbPro",r(515),i)})[e(1303)](()=>{this[e(1172)]=!1})}}[mP(923)](t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this[e(1068)](e(726),"streamEnd but player is destroyed and return"));if(this.streamEndOnLock)return void this[e(1068)]("JbPro","streamEndOnLock is true");this[e(1031)](q[e(204)],this[e(640)](q[e(580)],t));const s=this[e(1428)](),i=""+t===e(1263)&&this.player[e(630)][e(1553)],r=!!i&&this[e(999)](Xt.ws1006),n=i&&r,o=this.player[e(630)][e(1149)],a=this[e(339)]();if(this[e(1174)]=!0,n||o||a){a?this[e(1068)](e(726),"streamEnd and network is disconnect and reset player and play"):n?this.debugLog(e(726),e(1050)+this._websocket1006ErrorReplayTimes+e(507)+this[e(630)][e(1198)]+e(1177)):this.debugLog(e(726),e(587)+this[e(915)]+e(507)+this[e(630)][e(264)]+e(1177));const r=this[e(630)].playOptions,o=this[e(630)][e(691)];i&&this[e(1093)][e(1214)](os());let h=this._resetPlayerBeforeUpdateOptions(s),l=n?this[e(630)].websocket1006ErrorReplayDelayTime:this._opt.streamEndReplayDelayTime;a&&(l=1),this[e(379)](h).then(()=>{const s=e;this[s(272)]=setTimeout(()=>{const e=s;if(this[e(272)]=null,this[e(626)](),!this[e(1335)]())return this[e(339)]()?(n?this[e(1068)](e(726),e(1197)):this.debugLog(e(726),e(679)),this[e(302)]=!0,void(this[e(1535)]={url:o,options:r,type:n?J[e(1337)]:J[e(580)]})):(n?this._websocket1006ErrorReplayTimes++:this[e(915)]++,void this[e(1234)](o,r)[e(722)](()=>{const t=e;n?this[t(1068)](t(726),t(392)):this[t(1068)]("JbPro",t(1029)),this[t(1405)]()})[e(1430)](s=>{const i=e;this.emit(q[i(208)],J[i(580)],{},t),n?this.debugError("JbPro",i(1247),s):this[i(998)](i(726),i(1272),s)})[e(1303)](()=>{this[e(1174)]=!1}));a?this[e(293)]&&this[e(1068)](e(726),e(162)):n?this[e(293)]&&this[e(1068)](e(726),e(290)):this[e(293)]&&this[e(1068)](e(726),e(822))},1e3*l)}).catch(s=>{const i=e;this.streamEndOnLock=!1,this[i(1031)](q[i(208)],J[i(580)],{},t),n?this[i(998)](i(726),"streamEnd and 1006 and _resetPlayer error",s):this.debugError(i(726),i(366),s)})}else{i?this.debugLog(e(726),e(599)+(xi(r)?"and is not meaningful retry":"")):this[e(1068)](e(726),e(516));const n=!1===this[e(630)].playFailedUseLastFrameShow;this[e(371)].setPlayFailedAndPaused(),this[e(1209)]=s,this._pause(n).then(()=>{const i=e;this[i(1031)](q[i(208)],q.streamEnd,s,t),this[i(1068)]("JbPro",i(1116))}).catch(i=>{const r=e;this[r(1031)](q[r(208)],q.streamEnd,s,t),this.debugError("JbPro",r(1062),i)}).finally(()=>{this[e(1174)]=!1})}}_handleWebsocketError(t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this[e(1068)](e(726),e(974)));if(this[e(1618)])return void this.debugLog(e(726),e(491));this[e(1031)](q[e(204)],this[e(640)](J[e(330)],t));const s=this._getVideoLastIframeInfo(),i=this._isNeedNetworkDisconnectReplay();if(this[e(1618)]=!0,this[e(371)]._opt.streamErrorReplay||i){i?this.debugLog(e(726),e(620)):this[e(1068)](e(726),"websocketError error and streamErrorReplay is true and _streamErrorReplayTimes is "+this._streamErrorReplayTimes+e(1520)+this[e(630)].streamErrorReplayDelayTime+e(1017));let r=this._resetPlayerBeforeUpdateOptions(s);const n=this[e(630)].playOptions,o=this[e(630)][e(691)],a=i?1:this[e(630)][e(1300)];this[e(379)](r)[e(722)](()=>{const s=e;this[s(1097)]=setTimeout(()=>{const e=s;if(this[e(1097)]=null,!this[e(1335)]())return this._isNeedNetworkDisconnectReplay()?(this[e(1068)](e(726),e(1589)),this._isNetworkOfflinePaused=!0,void(this[e(1535)]={url:o,options:n,type:J[e(330)]})):(this._streamErrorReplayTimes++,void this[e(1234)](o,n)[e(722)](()=>{const t=e;this[t(1068)](t(726),t(1596)),this[t(1405)]()})[e(1430)](s=>{const i=e;this.emit(q[i(208)],J[i(612)],{},t),this.debugError(i(726),i(755),s)})[e(1303)](()=>{this[e(1618)]=!1}));i?this.debug&&this.debugLog(e(726),"websocketError error and network is disconnect and _resetPlayer() but player is destroyed and return"):this[e(293)]&&this[e(1068)]("JbPro",e(1268))},1e3*a)})[e(1430)](s=>{const i=e;this.websocketErrorOnLock=!1,this[i(1031)](q[i(208)],J.fetchError,{},t),this.debugError("JbPro",i(1525),s)})}else{this[e(1068)]("JbPro",e(458));const i=!1===this[e(630)][e(344)];this[e(371)][e(693)](),this[e(1209)]=s,this[e(684)](i)[e(722)](()=>{const i=e;this[i(1031)](q[i(208)],J[i(330)],s,t),this[i(1068)]("JbPro","websocketError and pause player success")})[e(1430)](i=>{const r=e;this[r(1031)](q[r(208)],J[r(330)],s,t),this[r(998)](r(726),r(565),i)})[e(1303)](()=>{this[e(1618)]=!1})}}[mP(1063)](t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this.debugLog(e(726),e(397)));if(this[e(687)])return void this[e(1068)](e(726),"webrtcErrorOnLock is true");this[e(1031)](q[e(204)],this.getCrashLog(J[e(188)],t));const s=this[e(1428)]();if(this._isNeedNetworkDisconnectReplay()){this.debugLog(e(726),e(166));const i=this[e(630)][e(1334)],r=this[e(630)].url;let n=this[e(712)](s);this[e(379)](n)[e(722)](()=>{const t=e;this._isNetworkOfflinePaused=!0,this[t(1535)]={url:r,options:i,type:J[t(188)]}})[e(1430)](i=>{const r=e;this.emit(q[r(208)],J.webrtcError,s,t),this.debugError(r(726),r(514),i)})[e(1303)](()=>{this[e(687)]=!1})}else{this[e(1068)]("JbPro",e(1254));const i=!1===this[e(630)][e(344)];this.player[e(693)](),this._playFailedAndPausedLastFrameInfo=s,this[e(687)]=!0,this[e(684)](i)[e(722)](()=>{const i=e;this[i(1031)](q[i(208)],J.webrtcError,s,t),this[i(1068)](i(726),"webrtcError and pause player success")}).catch(i=>{const r=e;this[r(1031)](q.playFailedAndPaused,J[r(188)],s,t),this[r(998)](r(726),r(473),i)})[e(1303)](()=>{this[e(687)]=!1})}}[mP(1368)](t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this[e(1068)](e(726),e(294)));if(this[e(1231)])return void this.debugLog(e(726),e(1099));this[e(1031)](q.crashLog,this[e(640)](J[e(824)],t));const s=this[e(1428)]();if(this[e(339)]()){this.debugLog("JbPro",e(975));const i=this[e(630)].playOptions,r=this[e(630)][e(691)];let n=this._resetPlayerBeforeUpdateOptions(s);this[e(379)](n)[e(722)](()=>{const t=e;this[t(302)]=!0,this[t(1535)]={url:r,options:i,type:J[t(824)]}})[e(1430)](i=>{const r=e;this.emit(q[r(208)],J[r(824)],s,t),this.debugError(r(726),r(1016),i)})[e(1303)](()=>{this[e(1231)]=!1})}else{this[e(1068)](e(726),e(951));const i=!1===this[e(630)].playFailedUseLastFrameShow;this.player[e(693)](),this[e(1209)]=s,this.hlsErrorOnLock=!0,this[e(684)](i)[e(722)](()=>{const i=e;this[i(1031)](q[i(208)],J.hlsError,s,t),this[i(1068)](i(726),i(171))})[e(1430)](i=>{const r=e;this[r(1031)](q.playFailedAndPaused,J[r(824)],s,t),this[r(998)](r(726),r(567),i)})[e(1303)](()=>{this[e(1231)]=!1})}}[mP(504)](t){const e=mP;if(this.isDestroyed())return void this[e(1068)](this.TAG_NAME,e(367));if(this[e(607)])return void this[e(1068)](this[e(489)],e(1449));this[e(1068)]("JbPro",e(548));const s=this[e(630)][e(691)],i=this[e(630)][e(1334)];this[e(607)]=!0,this[e(379)]({supportHls265:!1}).then(()=>{const r=e;this[r(1234)](s,i)[r(722)](()=>{const t=r;this[t(1068)]("JbPro",t(281)),this._replaySuccessAndNext()})[r(1430)](e=>{const s=r;this[s(1031)](q.playFailedAndPaused,q[s(649)],{},t),this[s(998)](s(726),s(179),e)})[r(1303)](()=>{this[r(607)]=!1})})[e(1430)](s=>{const i=e;this[i(607)]=!1,this[i(1031)](q.playFailedAndPaused,q.hls264UseOldDemuxer,{},t),this.debugError("JbPro",i(1205),s)})}_handleHlsM3u8Empty(){const t=mP;this[t(1335)]()?this[t(293)]&&this.debugLog(t(726),"hlsM3u8Empty but player is destroyed"):this.hlsM3u8EmptyOnLock?this[t(1068)]("JbPro","hlsM3u8Empty is true"):(this[t(1193)]=!0,this._pause()[t(722)](()=>{const e=t;this[e(1031)](q[e(208)],J.hlsM3u8Empty,{},""),this.debugLog("JbPro","hlsM3u8Empty and pause success")})[t(1430)](e=>{const s=t;this[s(1031)](q.playFailedAndPaused,J[s(1242)],{},""),this.debugError(s(726),s(1394),e)})[t(1303)](()=>{this[t(1193)]=!1}))}[mP(1560)](t){const e=mP;if(this.isDestroyed())return void this[e(1068)](e(726),e(316));if(this[e(1304)])return void this[e(1068)]("JbPro","aliyunRtcErrorOnLock is true");this.emit(q[e(204)],this.getCrashLog(J.aliyunRtcError,t));const s=this[e(1428)]();this[e(1068)](e(726),e(1599));const i=!1===this[e(630)][e(344)];this[e(371)][e(693)](),this[e(1209)]=s,this[e(1304)]=!0,this[e(684)](i)[e(722)](()=>{const i=e;this.emit(q[i(208)],J.aliyunRtcError,s,t),this.debugLog("JbPro",i(1158))})[e(1430)](i=>{const r=e;this[r(1031)](q[r(208)],J[r(230)],s,t),this.debugError(r(726),"aliyunRtcError and pause",i)})[e(1303)](()=>{this.aliyunRtcErrorOnLock=!1})}_handleDecoderWorkerInitError(t){const e=mP;if(this[e(1335)]())return void this[e(1068)]("JbPro",e(400));if(this.decoderWorkerInitErrorOnLock)return void this[e(1068)](e(726),e(1627));this[e(1031)](q[e(204)],this[e(640)](J[e(1237)],t));const s=this[e(1428)]();this[e(1068)](e(726),e(944));const i=!1===this[e(630)][e(344)];this[e(371)].setPlayFailedAndPaused(),this._playFailedAndPausedLastFrameInfo=s,this[e(1014)]=!0,this[e(684)](i).then(()=>{const i=e;this.emit(q[i(208)],J[i(1237)],s,t),this[i(1068)](i(726),i(1127))})[e(1430)](i=>{const r=e;this[r(1031)](q.playFailedAndPaused,J[r(1237)],s,t),this[r(998)]("JbPro","decoderWorkerInitError and pause",i)})[e(1303)](()=>{this[e(1014)]=!1})}_handleDecoderWorkerUncaughtError(t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this[e(1068)]("JbPro",e(1339)));if(this[e(723)])return void this[e(1068)]("JbPro",e(151));this[e(1031)](q[e(204)],this.getCrashLog(J[e(1438)],t));const s=this._getVideoLastIframeInfo();this[e(1068)]("JbPro",e(878));const i=!1===this[e(630)].playFailedUseLastFrameShow;this[e(371)][e(693)](),this._playFailedAndPausedLastFrameInfo=s,this[e(723)]=!0,this[e(684)](i)[e(722)](()=>{const i=e;this.emit(q[i(208)],J[i(1438)],s,t),this[i(1068)](i(726),i(1244))})[e(1430)](i=>{const r=e;this.emit(q[r(208)],J.decoderWorkerUncaughtError,s,t),this[r(998)](r(726),r(564),i)})[e(1303)](()=>{this[e(723)]=!1})}_handleDecoderWorkerWasmError(t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this[e(1068)]("JbPro",e(303)));if(this[e(168)])return void this[e(1068)]("JbPro",e(461));this[e(1031)](q[e(204)],this[e(640)](J[e(1236)],t)),this[e(1068)](e(726),e(639));const s=!1===this[e(630)][e(344)];this[e(371)][e(693)](),this.decoderWorkerWasmErrorOnLock=!0,this._pause(s)[e(722)](()=>{const s=e;this.emit(q[s(208)],J[s(1236)],{},t),this[s(1068)](s(726),s(372))})[e(1430)](s=>{const i=e;this[i(1031)](q[i(208)],J[i(1236)],{},t),this[i(998)]("JbPro",i(889),s)})[e(1303)](()=>{this[e(168)]=!1})}[mP(329)](t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this.debugLog(e(726),"videoElementPlayingFailedForWebrtc but player is destroyed"));if(this[e(1609)])return void this[e(1068)]("JbPro",e(1105));this[e(1031)](q[e(204)],this[e(640)](J[e(1630)],t)),this[e(1068)](e(726),e(876));const s=!1===this[e(630)][e(344)];this[e(371)][e(693)](),this[e(1609)]=!0,this[e(684)](s).then(()=>{const s=e;this[s(1031)](q[s(208)],J[s(1630)],{},t),this[s(1068)](s(726),s(984))})[e(1430)](s=>{const i=e;this[i(1031)](q[i(208)],J[i(1630)],{},t),this.debugError("JbPro",i(853),s)}).finally(()=>{this[e(1609)]=!1})}[mP(769)](t){const e=mP;if(this[e(1335)]())return void(this.debug&&this.debugLog(e(726),e(790)));if(this[e(160)])return void this.debugLog(e(726),"videoInfoErrorOnLock is true");this[e(1031)](q.crashLog,this[e(640)](J[e(570)],t)),this.debugLog(e(726),e(739));const s=!1===this._opt[e(344)];this[e(371)][e(693)](),this.videoInfoErrorOnLock=!0,this._pause(s)[e(722)](()=>{const s=e;this[s(1031)](q[s(208)],J[s(570)],{},t),this[s(1068)]("JbPro",s(1396))})[e(1430)](s=>{const i=e;this[i(1031)](q[i(208)],J[i(570)],{},t),this[i(998)](i(726),i(1401),s)}).finally(()=>{this.videoInfoErrorOnLock=!1})}[mP(1552)](t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this[e(1068)](e(726),"webrtcStreamH265 but player is destroyed"));if(this[e(883)])return void this[e(1068)](e(726),e(1444));this[e(1068)](e(726),e(524));const s=this[e(630)][e(691)],i=this[e(630)].playOptions;this[e(883)]=!0,this[e(379)]({isWebrtcH265:!0})[e(722)](()=>{const r=e;this.play(s,i)[r(722)](()=>{const t=r;this[t(1068)]("JbPro",t(811)),this._replaySuccessAndNext()})[r(1430)](e=>{const s=r;this.emit(q[s(208)],q[s(1312)],{},t),this[s(998)](s(726),"webrtcStreamH265 and reset player and play error",e)}).finally(()=>{this[r(883)]=!1})})[e(1430)](s=>{const i=e;this[i(883)]=!1,this.emit(q.playFailedAndPaused,q[i(1312)],{},t),this[i(998)](i(726),"webrtcStreamH265 and _resetPlayer error",s)})}[mP(1409)](t){const e=mP;if(this[e(1335)]())return void this.debugLog(e(726),"webrtcLowFps but player is destroyed");if(this[e(430)])return void this.debugLog("JbPro","webrtcLowFpsOnLock is true");this[e(430)]=!0,this[e(1031)](q[e(204)],this[e(640)](q[e(847)],t));const s=this[e(1428)](),i=this[e(630)][e(1334)],r=this[e(630)][e(691)];let n=this[e(712)](s);this._resetPlayer(n)[e(722)](()=>{const n=e;this.play(r,i)[n(722)](()=>{const t=n;this[t(1068)](this[t(489)],t(1330)),this[t(1405)]()})[n(1430)](e=>{const i=n;this[i(1031)](q[i(208)],q[i(847)],s,t),this[i(998)](this[i(489)],i(1094),e)})[n(1303)](()=>{this[n(430)]=!1})})[e(1430)](i=>{const r=e;this[r(430)]=!1,this[r(1031)](q[r(208)],q[r(847)],s,t),this[r(998)](this[r(489)],r(777),i)})}_handleWebTransportError(t){const e=mP;this[e(1335)]()?this[e(293)]&&this[e(1068)]("JbPro","webTransportError but player is destroyed"):this[e(1448)]?this[e(1068)](e(726),e(1477)):(this[e(1448)]=!0,this[e(1031)](q[e(204)],this.getCrashLog(J[e(1457)],t)),this[e(684)]()[e(722)](()=>{const s=e;this[s(1031)](q[s(208)],J[s(1457)],{},t),this[s(1068)]("JbPro",s(797))})[e(1430)](s=>{const i=e;this[i(1031)](q.playFailedAndPaused,J[i(1457)],{},t),this[i(998)]("JbPro","webTransportError and pause",s)})[e(1303)](()=>{this.webTransportErrorOnLock=!1}))}[mP(414)](t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this[e(1068)](e(726),e(531)));if(this[e(180)])return void this[e(1068)]("JbPro","tsPacketSizeErrorOnLock is true");this.tsPacketSizeErrorOnLock=!0;const s=e(332)+t;this[e(1031)](q[e(204)],this.getCrashLog(J[e(879)],s)),this[e(684)]()[e(722)](()=>{const t=e;this.emit(q[t(208)],J[t(879)],{},s),this.debugLog(t(726),t(1136))}).catch(t=>{const i=e;this[i(1031)](q[i(208)],J[i(879)],{},s),this[i(998)](i(726),i(1142),t)}).finally(()=>{this.tsPacketSizeErrorOnLock=!1})}[mP(1308)](t){const e=mP;this[e(1335)]()?this[e(293)]&&this[e(1068)](e(726),"playVodMp4Error but player is destroyed"):this[e(930)]?this[e(1068)](e(726),e(1391)):(this[e(930)]=!0,this[e(684)]()[e(722)](()=>{const s=e;this.emit(q[s(208)],J[s(509)],{},t),this[s(1068)]("JbPro",s(505))})[e(1430)](s=>{const i=e;this[i(1031)](q[i(208)],J.playVodMp4Error,{},t),this[i(998)](i(726),i(415),s)})[e(1303)](()=>{this.playVodMp4ErrorOnLock=!1}))}[mP(1078)](t){const e=mP;if(this[e(1335)]())return void(this.debug&&this.debugLog(e(726),"playVodMp4UseSrcError but player is destroyed"));if(this[e(1038)])return void this.debugLog(e(726),e(1027));this[e(1068)](e(726),e(269));const s=this._opt[e(691)],i=this[e(630)][e(1334)],r={playVodMp4UseSrc:!1};t===U[e(774)]?(this[e(1068)](this[e(489)],"playVodMp4UseSrcError and g711NotSupported and set mseDecodeAudio false and syncAudioAndVideo true"),r[e(1511)]=!1,r[e(1587)]=!0):t===U[e(799)]||t===U.videoNotSupported?(this[e(1068)](this.TAG_NAME,e(705)),r[e(1212)]=!1,r[e(780)]=!1):t===U[e(396)]&&(this[e(1068)](this.TAG_NAME,e(1248)),r.mseDecodeAudio=!1,r[e(1587)]=!0),this.playVodMp4UseSrcErrorOnLock=!0,this[e(379)](r)[e(722)](()=>{const t=e;this[t(1234)](s,i)[t(722)](()=>{const e=t;this.debugLog(e(726),e(770)),this[e(1405)]()})[t(1430)](e=>{const s=t;this[s(1031)](q[s(208)],J[s(603)],{},error),this[s(998)](s(726),s(1447),e)}).finally(()=>{this[t(1038)]=!1})})[e(1430)](t=>{const s=e;this[s(1038)]=!1,this[s(1031)](q[s(208)],J[s(603)],{},error),this[s(998)]("JbPro",s(585),t)})}_handlePlayVodMp4UseSrcVideoError(t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this.debugWarn("JbPro",e(534)));if(this[e(326)])return void this[e(1068)](e(726),e(947));this[e(326)]=!0,this[e(1031)](q.crashLog,this[e(640)](J[e(812)],t));const s=this[e(1428)](),i=this._opt[e(691)],r=this[e(630)][e(1334)];let n={},o={};if(this[e(999)](Xt[e(812)]))this._playVodMp4UseSrcVideoErrorRetryLog.push(os());else{n.playVodMp4UseSrc=!1;let t=e(146);0===this.player[e(311)][e(513)]()&&(t=e(1322),o[e(978)]=!0),this.debugLog(this.TAG_NAME,t)}n=this[e(712)](s,n,o),this[e(379)](n)[e(722)](()=>{const n=e;this[n(1234)](i,r)[n(722)](()=>{const t=n;this[t(630)][t(730)][t(1332)]=null,this[t(1068)](t(726),"playVodMp4UseSrcVideoError and reset player and play success"),this[t(1405)]()})[n(1430)](e=>{const i=n;this[i(1031)](q[i(208)],J[i(812)],s,t),this.debugError(i(726),i(1320),e)}).finally(()=>{this[n(326)]=!1})})[e(1430)](i=>{const r=e;this[r(326)]=!1,this.emit(q.playFailedAndPaused,J[r(812)],s,t),this[r(998)](r(726),r(182),i)})}[mP(1594)](t){const e=mP;this[e(1335)]()?this[e(293)]&&this[e(1068)]("JbPro","playVodCalcFpsError but player is destroyed"):this.playVodCalcFpsErrorOnLock?this.debugLog("JbPro","playVodCalcFpsError is true"):(this.playVodCalcFpsErrorOnLock=!0,this._pause()[e(722)](()=>{const s=e;this.emit(q[s(208)],J[s(1600)],{},t),this[s(1068)]("JbPro",s(949))})[e(1430)](s=>{const i=e;this[i(1031)](q[i(208)],J[i(1600)],{},t),this[i(998)](i(726),i(1468),s)})[e(1303)](()=>{this[e(1269)]=!1}))}[mP(327)](t){const e=mP;if(this.isDestroyed())return void(this[e(293)]&&this[e(1003)](e(726),e(1474)));this[e(1031)](q[e(204)],this[e(640)](q[e(1487)],t));const s=this[e(1428)]();if(this[e(371)]&&this[e(371)][e(630)][e(319)]&&(this[e(1203)]<this[e(371)]._opt[e(321)]||-1===this[e(371)]._opt[e(321)])){this[e(1068)](e(726),e(432)+this._heartTimeoutReplayTimes+" and\n heartTimeoutReplayTimes is "+this[e(371)]._opt[e(321)]),this[e(1203)]+=1;const i=this[e(630)][e(691)],r=this[e(630)][e(1334)];let n=this[e(712)](s);this[e(379)](n)[e(722)](()=>{const n=e;if(this[n(339)]())return this[n(1068)]("JbPro",n(239)),this._isNetworkOfflinePaused=!0,void(this[n(1535)]={url:i,options:r,type:q.delayTimeout});this[n(1234)](i,r).then(()=>{const t=n;this.debugLog(this[t(489)],t(251)),this[t(1405)]()})[n(1430)](e=>{const i=n;this[i(1031)](q[i(208)],q[i(1487)],s,t),this.debugError(i(726),"delay timeout replay error",e)})})[e(1430)](i=>{const r=e;this[r(1031)](q[r(208)],q.delayTimeout,s,t),this[r(998)](r(726),"delay timeout _resetPlayer error",i)})}else{const i=!1===this[e(630)][e(344)];this.player[e(693)](),this[e(1209)]=s,this[e(684)](i).then(()=>{const i=e;this[i(1031)](q[i(208)],q[i(1487)],s,t),this.player&&(this[i(1031)](q[i(152)]),this[i(1031)](q[i(208)],q.delayTimeoutRetryEnd,s,t)),this[i(1003)](i(726),i(1547)+(this[i(371)]&&this[i(371)][i(630)][i(1060)])+i(697)+(this.player&&this[i(371)][i(630)][i(319)])+i(1222)+(this[i(371)]&&this.player[i(630)].heartTimeoutReplayTimes)+i(1314)+this[i(1203)])})[e(1430)](i=>{const r=e;this[r(1031)](q[r(208)],q[r(1487)],s,t),this[r(998)]("JbPro","delay timeout and pause error",i)})}}[mP(702)](t){const e=mP;if(this[e(1335)]())return void(this[e(293)]&&this[e(1068)](e(726),e(849)));this[e(1031)](q[e(204)],this[e(640)](q.loadingTimeout,t));const s=this[e(1428)]();if(this.player&&this.player[e(630)][e(1620)]&&(this._loadingTimeoutReplayTimes<this.player[e(630)][e(1557)]||-1===this.player[e(630)][e(1557)])){this[e(1068)](e(726),e(227)+this[e(929)]+e(751)+this[e(371)]._opt[e(1557)]),this[e(929)]+=1;const i=this[e(630)][e(691)],r=this[e(630)][e(1334)];let n=this[e(712)](s);this[e(630)][e(438)]&&Pi(this[e(371)].isVideoInitedAndNotFirstVideoIFrame)&&(this.debugLog(this[e(489)],"loading timeout and video inited and not first video i frame and set useMSE,useWCS,checkFirstIFrame false"),n[e(1212)]=!1,n[e(780)]=!1,n[e(597)]=!1),this._resetPlayer(n).then(()=>{const n=e;if(this[n(339)]())return this[n(1068)]("JbPro","loadingTimeout and network is offline and wait network online to play , so return"),this[n(302)]=!0,void(this[n(1535)]={url:i,options:r,type:q[n(1514)]});this[n(1234)](i,r)[n(722)](()=>{const t=n;this.debugLog(this[t(489)],t(1276)),this[t(1405)]()})[n(1430)](e=>{const i=n;this[i(1031)](q[i(208)],q[i(1514)],s,t),this[i(998)](i(726),"loading timeout replay error",e)})})[e(1430)](i=>{const r=e;this[r(1031)](q[r(208)],q.loadingTimeout,s,t),this[r(998)](r(726),r(1106),i)})}else{const i=!1===this[e(630)].playFailedUseLastFrameShow;this[e(371)][e(693)](),this[e(1209)]=s,this._pause(i)[e(722)](()=>{const i=e;this.emit(q[i(208)],q[i(1514)],s,t),this[i(371)]&&(this.emit(q[i(485)]),this[i(1031)](q[i(208)],q[i(485)],s,t),this[i(630)][i(361)]&&this[i(371)][i(935)]()),this.debugLog("JbPro",i(1036)+(this[i(371)]&&this.player._opt[i(1514)])+i(1631)+(this[i(371)]&&this[i(371)]._opt[i(1620)])+" and\n local._loadingTimeoutReplayTimes time is "+this._loadingTimeoutReplayTimes+i(273)+(this[i(371)]&&this[i(371)][i(630)][i(1557)]))})[e(1430)](i=>{const r=e;this[r(1031)](q[r(208)],q[r(1514)],s,t),this[r(998)](r(726),r(988),i)})}}_handleInitDecoderWorkerTimeout(t){const e=mP;if(this.isDestroyed())return void this[e(1068)]("JbPro",e(407));this[e(1031)](q[e(204)],this.getCrashLog(J.initDecoderWorkerTimeout,t)),this.debugLog(e(726),e(692));const s=this[e(1428)](),i=!1===this._opt[e(344)];this.player.setPlayFailedAndPaused(),this._playFailedAndPausedLastFrameInfo=s,this[e(684)](i)[e(722)](()=>{const i=e;this[i(1031)](q[i(208)],J[i(848)],s,t),this.debugLog(i(726),"InitDecoderWorkerTimeout and pause player success")}).catch(i=>{const r=e;this.emit(q[r(208)],J[r(848)],s,t),this[r(998)](r(726),"videoInfoError and pause",i)})}[mP(463)](t){const e=mP;this[e(1403)](),this[e(848)]=setTimeout(()=>{const s=e;t&&t(),this._handleInitDecoderWorkerTimeout(J[s(848)])},1e3*this._opt[e(848)])}[mP(1403)](){const t=mP;this.initDecoderWorkerTimeout&&(this[t(1068)](this.TAG_NAME,t(1403)),clearTimeout(this.initDecoderWorkerTimeout),this[t(848)]=null)}debugLog(t,...e){const s=mP;this._opt[s(293)]&&this[s(293)]&&this[s(293)][s(1204)](t,...e)}[mP(1003)](t,...e){const s=mP;this[s(630)][s(293)]&&this[s(293)]&&this[s(293)][s(447)](t,...e)}debugError(t,...e){const s=mP;this[s(293)]&&this[s(293)][s(1011)](t,...e)}[mP(1139)](){const t=mP;let e=null;return this[t(371)]&&(e=this[t(371)].getRenderElement()),e}[mP(960)](t){const e=mP;this[e(1068)](e(726),e(1524)+t+e(900)+this[e(630)][e(1538)]),this[e(630)][e(1538)]=t,this[e(371)]&&this[e(371)][e(1066)]({multiIndex:t})}[mP(983)](t){const e=mP;if(!this.isDestroyed())if(this[e(1068)](e(726),e(943)),this.player){if(this.player[e(1493)]())return void this[e(1003)]("JbPro",e(268));this[e(371)][e(135)]=!0}else this.debugWarn("JbPro",e(155))}[mP(1257)](){}closeDrawRectangle(){const t=mP;if(!this[t(1335)]())if(this[t(1068)](t(726),t(1398)),this[t(371)]){if(this.player[t(1493)]())return void this[t(1003)]("JbPro",t(1482));this[t(371)][t(135)]=!1}else this[t(1003)](t(726),t(632))}[mP(821)](){let t=!1;return this[mP(371)]&&(t=this.player.drawingRect),t}[mP(1418)](t){const e=mP;this[e(1335)]()||(this[e(1068)]("JbPro",e(1056)+t),!js(t)&&(t=!this.isDrawRectangleOpen()),Pi(t)?this.openDrawRectangle():xi(!1)&&this.closeDrawRectangle())}[mP(746)](t){const e=mP;this[e(1335)]()||(this[e(1068)](e(726),e(199)+t),this[e(630)].controlSize=t,this.player?this[e(371)].updateControlSize(t):this[e(1003)]("JbPro",e(747)))}[mP(729)](){return new Promise((t,e)=>{const s=yP;if(this.isDestroyed())return e(s(762));this.debugLog("JbPro",s(1515));const i=this[s(506)]();this._resetPlayer(i).then(()=>{const e=s;this[e(1068)](e(726),e(802)),t()}).catch(t=>{const i=s;this[i(1003)]("JbPro","resetPlayer() error",t[i(317)](),t),e(t)})})}updateDynamicWatermark(t){const e=mP;this.isDestroyed()||(this.debugLog(e(726),e(1353),t),this[e(371)]?(this.player[e(1286)](t),this[e(630)][e(1262)]=t):this[e(1003)](e(726),e(185)))}removeDynamicWatermark(){const t=mP;this.isDestroyed()||(this[t(1068)](t(726),"removeDynamicWatermark()"),this.player?(this[t(371)][t(229)](),this[t(630)][t(1262)]={}):this[t(1003)](t(726),t(773)))}[mP(420)](t){const e=mP;this[e(1335)]()||(this.debugLog(e(726),e(1208),t),this[e(371)]?(this.player[e(420)](t),this[e(630)][e(1336)]=t):this[e(1003)](e(726),e(1161)))}[mP(654)](){const t=mP;this.isDestroyed()||(this[t(1068)](t(726),"removeGhostWatermark()"),this[t(371)]?(this[t(371)].removeGhostWatermark(),this._opt[t(1336)]={}):this.debugWarn(t(726),t(1450)))}[mP(712)](t={},e={},s={}){const i=mP;let r=e;if(this.player[i(630)][i(1299)]&&this[i(137)]){const e=this[i(371)][i(630)][i(1568)];this[i(1068)](this[i(489)],i(911)+e),r=Object[i(713)]({},r,t,{loadingIcon:this[i(371)]._opt[i(1568)],initShowLoadingIconInner:this[i(371)][i(630)][i(1568)]})}if(!this._isPlayerPlayStarted&&(this[i(1068)](this[i(489)],i(813)),r[i(258)]=!0,r[i(1243)]=!0),xi(this.isMute())&&(this[i(1068)](this.TAG_NAME,i(342)),r[i(657)]=!0),this.player[i(673)]()){const t=this[i(371)][i(1026)].playingTimestamp;if(t){this[i(1068)](this[i(489)],i(1176)+t);const e=this[i(371)][i(630)][i(647)];e[i(1332)]=t,r.playbackConfig=e}}else if(this[i(371)][i(384)]()){const t=this.player._opt.playVodConfig;if(s[i(978)])t.startTime=this[i(371)].playVod[i(1332)],this[i(1068)](this.TAG_NAME,i(881)+t.startTime);else{const e=this[i(371)].playVod[i(513)]();t.startTime=e,(this[i(371)].isPlayVodUseMSE()||this[i(371)].isPlayVodUseWCS()||this.player.isPlayVodMp4UseVideoSrc())&&(t[i(1332)]+=this[i(630)].playVodDecodeErrorAndStepTime),this[i(1068)](this[i(489)],"_resetPlayerBeforeUpdateOptions() and is playVod playingTime is "+e+i(1561)+t[i(1332)])}r[i(730)]=t}return r}_replaySuccessAndNext(){const t=mP;this[t(550)]&&this[t(550)][t(1271)]&&this[t(371)].addContentToCanvas(this._tempContentToCanvasData)}getI18nConfig(){const t=mP;let e={};return this.player&&(e=this[t(371)][t(306)](),delete e.audio,delete e[t(1051)],delete e.mute),e}[mP(833)](t){return Number((1e3*t/8/1024).toFixed(2))}updateZoomMaxScale(t){const e=mP;t=as(Number(t),1,100),this.debugLog(this[e(489)],"updateZoomMaxScale() "+t),this[e(630)][e(736)]=t,this.player&&this[e(371)][e(1066)]({zoomMaxScale:t})}[mP(1465)](){const t=mP;let e=!1;return this[t(371)]&&(e=!0===this[t(371)][t(1465)]),e}[mP(1516)](){const t=mP;let e=!1;return this[t(371)]&&(e=!0===this[t(371)][t(1516)]),e}[mP(1412)](t,e,s){const i=mP;this[i(371)]&&(this[i(630)][i(467)]&&this.player[i(886)](s,t),this._opt[i(1168)]&&this[i(371)][i(935)]())}[mP(266)](){const t=mP;this[t(1031)](q.close),this.destroy()[t(722)](()=>{})[t(1430)](t=>{})}[mP(784)](){this._isPlayerPlayStarted=!0}[mP(1544)](){this[mP(568)]()}[mP(602)](){this[mP(568)]()}[mP(568)](){const t=mP;this[t(857)]&&this[t(857)][t(1220)]()}[mP(311)](t,e={}){return new Promise((s,i)=>{const r=yP;if(this[r(1335)]())return i(r(788));try{this[r(1068)](r(726),r(1602)+t+", options: ",JSON.stringify(e))}catch(s){this[r(1068)](r(726),r(1602)+t+r(1073),e)}if(this[r(630)].playType===p[r(311)]&&!this[r(630)][r(691)]&&si(e))this[r(1234)](t,e)[r(722)](()=>{s()})[r(1430)](t=>{i(t)});else{const n=this[r(610)](e),o={videoBuffer:0,playType:p[r(311)],playVodConfig:n,cryptoKey:e[r(167)]||"",cryptoIV:e[r(1087)]||"",openWebglAlignment:!0,useMSE:n[r(1212)],useWCS:n[r(780)],useSIMD:n[r(1569)],supportHls265:!0};n.useMSE&&(o[r(1511)]=!0),js(e[r(1328)])&&(o[r(1328)]=e.isFFmpegSIMD),js(e.playVodMp4UseSrc)&&(o[r(433)]=e[r(433)]),this[r(379)](o).then(()=>{const n=r;this[n(1234)](t,e)[n(722)](()=>{s()}).catch(t=>{i(t)})}).catch(t=>{i(t)})}})}[mP(610)](t={}){const e=mP,s=Li();return Object[e(713)]({},s.playVodConfig,this[e(630)][e(730)],t)}[mP(203)](){const t=mP;return this[t(293)][t(1204)](t(726),"playVodPause()"),this[t(1335)]()?Promise[t(401)]("JbPro is destroyed"):this[t(371)]?xi(this[t(371)][t(384)]())?Promise[t(401)](t(1232)+this.player.getPlayType()+", not support this method"):new Promise((e,s)=>{const i=t;this[i(371)][i(760)]().then(()=>{e()})[i(1430)](t=>{s(t)})}):Promise.reject(t(1424))}[mP(1351)](){const t=mP;return this[t(293)].log(t(726),t(1460)),this[t(1335)]()?Promise.reject("JbPro is destroyed"):this[t(371)]?xi(this[t(371)].isPlayVod())?Promise[t(401)](t(1232)+this[t(371)][t(1369)]()+t(1575)):new Promise((e,s)=>{const i=t;if(xi(this[i(371)].playVodPause))return this[i(1068)](this[i(489)],i(1499)),e();this[i(371)].playVodResumeInner().then(()=>{e()}).catch(t=>{s(t)})}):Promise[t(401)](t(1424))}playVodForward(t){const e=mP;return this[e(1068)]("JbPro",e(690)+t),this[e(1335)]()?Promise[e(401)](e(788)):this[e(371)]?xi(this[e(371)][e(384)]())?Promise.reject("playType is "+this[e(371)][e(1369)]()+e(1575)):xs(Number(t))?new Promise((s,i)=>{const r=e;this.player[r(922)](t)[r(722)](()=>{s()})[r(1430)](t=>{i(t)})}):Promise[e(401)](e(732)+t+e(1157)):Promise.reject(e(1424))}[mP(601)](){const t=mP;return this[t(1068)]("JbPro",t(451)),new Promise((e,s)=>{const i=t;this[i(922)](1)[i(722)](()=>{e()})[i(1430)](t=>{s(t)})})}[mP(1555)](t){const e=mP;return this.debugLog(e(726),e(825)+t),this.isDestroyed()?Promise[e(401)](e(788)):this[e(371)]?xi(this.player[e(384)]())?Promise[e(401)](e(1232)+this[e(371)][e(1369)]()+", not support this method"):xs(Number(t))?new Promise((s,i)=>{const r=e;this[r(371)][r(1555)](t).then(()=>{s()})[r(1430)](t=>{i(t)})}):Promise.reject(e(1190)+t+e(1157)):Promise.reject(e(1424))}playVodForwardJumping(t){const e=mP;return this.debugLog("JbPro",e(1070)+t),this[e(1335)]()?Promise.reject(e(788)):this[e(371)]?xi(this[e(371)][e(384)]())?Promise.reject(e(1232)+this.player[e(1369)]()+e(1575)):xs(Number(t))?new Promise((s,i)=>{const r=e;this[r(371)][r(917)](t).then(()=>{s()})[r(1430)](t=>{i(t)})}):Promise.reject(e(345)+t+" must be number type"):Promise[e(401)]("player is null")}[mP(1058)](t){const e=mP;return this[e(1068)]("JbPro",e(1446)+t),this[e(1335)]()?Promise[e(401)](e(788)):this.player?xi(this[e(371)][e(384)]())?Promise[e(401)](e(1232)+this[e(371)][e(1369)]()+", not support this method"):xs(Number(t))?new Promise((s,i)=>{const r=e;this.player[r(1058)](t)[r(722)](()=>{s()})[r(1430)](t=>{i(t)})}):Promise[e(401)](e(694)+t+e(1157)):Promise.reject(e(1424))}[mP(859)](){const t=mP;return this[t(1068)]("JbPro",t(804)),this[t(1335)]()?Promise.reject("JbPro is destroyed"):this.player?xi(this[t(371)][t(384)]())?Promise[t(401)](t(1232)+this[t(371)][t(1369)]()+t(1575)):new Promise((e,s)=>{const i=t;this[i(371)][i(859)]().then(()=>{e()})[i(1430)](t=>{s(t)})}):Promise[t(401)](t(1424))}[mP(803)](){const t=mP;return this[t(1068)](t(726),t(462)),this[t(1335)]()?Promise[t(401)](t(788)):this[t(371)]?xi(this[t(371)][t(384)]())?Promise[t(401)](t(1232)+this.player[t(1369)]()+t(1575)):new Promise((e,s)=>{const i=t;this[i(371)][i(803)]()[i(722)](()=>{e()}).catch(t=>{s(t)})}):Promise[t(401)](t(1424))}[mP(1213)](){const t=mP;return this[t(1068)](t(726),t(1366)),this[t(1335)]()?Promise[t(401)](t(788)):this.player?xi(this.player[t(384)]())?Promise[t(401)](t(1232)+this[t(371)].getPlayType()+t(1575)):new Promise((e,s)=>{const i=t;this[i(371)][i(1213)]()[i(722)](()=>{e()}).catch(t=>{s(t)})}):Promise[t(401)](t(1424))}playVodExitNextIFrameAndPlay(){const t=mP;return this.debugLog(t(726),"playVodExitNextIFrameAndPlay()"),this[t(1335)]()?Promise[t(401)](t(788)):this[t(371)]?xi(this.player[t(384)]())?Promise[t(401)]("playType is "+this.player[t(1369)]()+", not support this method"):new Promise((e,s)=>{const i=t;this[i(371)][i(1121)]().then(()=>{e()})[i(1430)](t=>{s(t)})}):Promise.reject(t(1424))}[mP(586)](){const t=mP;let e=0;return this[t(371)]&&this.player[t(384)]()&&(e=this[t(371)][t(586)]()),e}[mP(1417)](){const t=mP;let e=0;return this[t(371)]&&this[t(371)].isPlayVod()&&(e=this[t(371)][t(1417)]()),e}getPlayVodBufferedTime(){const t=mP;let e=0;return this[t(371)]&&this[t(371)][t(384)]()&&(e=this[t(371)][t(341)]()),e}[mP(156)](){return this.getPlayVodBufferedTime()-this.getPlayVodCurrentTime()}getPlayVodCurrentRate(){const t=mP;let e=1;return this[t(371)]&&this[t(371)][t(384)]()&&(e=this[t(371)][t(1045)]()),e}[mP(1469)](){const t=mP;let e=!1;return this[t(630)][t(343)]===p[t(311)]&&this[t(371)]&&(e=this[t(371)][t(203)]),e}isPlayVodSeeking(){const t=mP;let e=!1;return this[t(371)]&&(e=this[t(371)][t(903)]()),e}[mP(1480)](){const t=mP;let e=!1;return this[t(371)]&&(e=this.player[t(1480)]()),e}[mP(1354)](){const t=mP;if(this.isDestroyed())return void this.debugLog(t(726),t(659));if(this[t(371)][t(630)][t(555)])return this.debugLog(this[t(489)],t(1496)),void this[t(536)]();this[t(1068)](this[t(489)],t(1527));const e=!1===this[t(630)][t(344)];this._pause(e)[t(722)](()=>{const e=t;this.debugLog(e(726),e(198)),this[e(1031)](q[e(437)])}).catch(e=>{const s=t;this[s(998)]("JbPro",s(721),e),this.emit(q[s(208)],q[s(437)],{},"")})}_handlePlayVodEndedAndReplay(t){const e=mP;if(this[e(1335)]())return void this[e(1068)](e(726),e(1558));const s=this._opt[e(691)],i=this[e(630)][e(1334)];t&&(this[e(630)][e(730)][e(1332)]=t),this.debugLog("JbPro",e(1497),t),this[e(379)]().then(()=>{const t=e;this[t(1234)](s,i)[t(722)](()=>{const e=t;this[e(630)].playVodConfig[e(1332)]=null,this.debug.log(this[e(489)],"playVodEndedAndReplay and reset player and play success"),this[e(1405)]()})[t(1430)](e=>{const s=t;this[s(1031)](q[s(208)],q[s(740)],{},e[s(317)]()),this[s(293)][s(1011)](this[s(489)],s(1098),e)})})[e(1430)](t=>{const s=e;this[s(1031)](q[s(208)],q[s(740)],{},""),this[s(998)](this[s(489)],s(711),t)})}[mP(1490)](t){const e=mP;return this[e(1335)]()?Promise[e(401)](e(887)):this[e(371)]?this[e(371)][e(1140)]()?Promise.reject(e(841)):new Promise((s,i)=>{const r=e;this[r(1068)](this.TAG_NAME,r(554),t),this[r(371)].enterVr(t).then(()=>{s()})[r(1430)](t=>{i(t)})}):Promise[e(401)](e(902))}[mP(1619)](){const t=mP;return this[t(1335)]()?Promise.reject(t(439)):this[t(371)]?new Promise((e,s)=>{const i=t;this[i(1068)](this[i(489)],"exitVr()"),this[i(371)][i(1619)]().then(()=>{e()})[i(1430)](t=>{s(t)})}):Promise.reject(t(717))}[mP(560)](t){const e=mP;return this.isDestroyed()?Promise[e(401)]("toggleVrCompass() JbPro is destroyed"):this[e(371)]?new Promise((s,i)=>{const r=e;this[r(1068)](this[r(489)],"toggleVrCompass()",t),this.player[r(560)](t)[r(722)](()=>{s()})[r(1430)](t=>{i(t)})}):Promise[e(401)](e(242))}[mP(417)](t,e){const s=mP;return this[s(1335)]()?Promise[s(401)](s(1131)):this.player?new Promise((i,r)=>{const n=s;this[n(1068)](this.TAG_NAME,n(1183),t,e),this[n(371)][n(417)](t,e)[n(722)](()=>{i()}).catch(t=>{r(t)})}):Promise.reject(s(472))}vrEnableSensor(){const t=mP;return this[t(1335)]()?Promise[t(401)](t(789)):this[t(371)]?new Promise((e,s)=>{const i=t;this[i(1068)](this.TAG_NAME,i(259)),this[i(371)][i(318)]()[i(722)](()=>{e()})[i(1430)](t=>{s(t)})}):Promise[t(401)](t(1024))}[mP(750)](t){const e=mP;return this[e(1335)]()?Promise[e(401)](e(986)):this[e(371)]?new Promise((s,i)=>{const r=e;this[r(1068)](this[r(489)],"vrSetGyroMode()"),this[r(371)][r(750)](t)[r(722)](()=>{s()})[r(1430)](t=>{i(t)})}):Promise[e(401)](e(425))}}AP.ERROR=J,AP[mP(831)]=Q,window[mP(559)]=AP,window[mP(726)]=AP,window.WebPlayerPro=AP;function bP(t,e){const s=SP();return(bP=function(t,e){return s[t-=233]})(t,e)}Sy('.jb-pro-multi-container .jb-pro-multi-player-container-v2{overflow:hidden;width:100%;height:100%;position:relative;display:grid;grid-template-columns:repeat(var(--split),1fr);grid-template-rows:repeat(var(--split),1fr)}.jb-pro-multi-container .jb-pro-multi-player-container-v2 .jb-pro-multi-player{overflow:hidden;position:relative;width:100%;height:100%}.jb-pro-multi-container .jb-pro-multi-player-container-v2 .jb-pro-multi-player .jb-pro-multi-player-draw-window{position:absolute;z-index:1;width:calc(100% - 2px);height:calc(100% - 2px);color:#fff;transition:all .25s}.jb-pro-multi-container .jb-pro-multi-player-container-v2 .jb-pro-multi-player .jb-pro-multi-player-video-window{position:absolute;left:1px;top:1px;z-index:2;width:calc(100% - 2px);height:calc(100% - 2px)}.jb-pro-multi-container .jb-pro-multi-player[fullscreen="1"]{grid-column-start:1;grid-column-end:9;grid-row-start:1;grid-row-end:9;z-index:1}.jb-pro-multi-container .jb-pro-multi-layout-6 .jb-pro-multi-player[order="0"]{grid-column-start:1;grid-column-end:3;grid-row-start:1;grid-row-end:3}.jb-pro-multi-container .jb-pro-multi-layout-6 .jb-pro-multi-player[fullscreen="1"]{grid-column-start:1;grid-column-end:9;grid-row-start:1;grid-row-end:9;z-index:1}.jb-pro-multi-container .jb-pro-multi-layout-9 .jb-pro-multi-player[order="0"]{grid-column-start:1;grid-column-end:4;grid-row-start:1;grid-row-end:4}.jb-pro-multi-container .jb-pro-multi-layout-9 .jb-pro-multi-player[fullscreen="1"]{grid-column-start:1;grid-column-end:9;grid-row-start:1;grid-row-end:9;z-index:1}');const vP=bP;function SP(){const t=["hideErrorMessageTips","isInFullscreen ","playerMouseupDestroy() data-uuid is not exist","uuid","background","_arrangeSpecialWindow() type ","container","log","left","openZoom() windowIndex "," type","setScaleMode() windowIndex ","debugError","arrangeWindow","filter","togglePerformancePanel() windowIndex ","_getCurrentMaxSplit","warn","getDecodeType","narrowZoom","LOG_TAG","toUuid","VIDEO","fullscreen","setBufferTime","playerContainerHeight","length","updateAiObjectDetectLevel","then","_handleFullscreenResize","faceDetectClose() windowIndex ","setVolume","debugWarn","remove","faceDetectClose","special2","Jb-pro-multi container type can not be ","objectDetectClose","sendWebsocketMessage","cancelMute","isRecording() windowIndex ","addContentToCanvas","_handleWindowSelect","setTimeout","\n </div>","getCurrentSplit","resize","_opt","setMirrorRotate","keys",'"></div>\n <div class="jb-pro-multi-player-video-window" wid="',"isPlaying() windowIndex ","auto","_initWindows$2","' style='order:","_updateWindows$2","initSingle","clearBufferDelay() windowIndex ","24QvRtXI","clearBufferDelay","toOrderIndex","change","push","setCryptoKeyUrl","getCurrentZoomIndex","catch","setScaleMode","startRecord() windowIndex ","\" style='position:absolute;left: 1px;top:1px; z-index: 2;'></div>\n </div>\n ","request","isFullscreen","querySelector","narrowZoom() windowIndex ","setAttribute","$container","removeWatermark() windowIndex ","add","screenshot","windowIndex is not exist","destroySingle"," , checkRectInterval times : ","togglePerformancePanel","isLoading() windowIndex ","playerWidth","updateAiObjectDetectLevel() windowIndex ","EVENTS","find","innerHTML","getOption","fullscreen exit error","updateWatermark","updateDebugLevel","setSingleWindowContainerFullscreen","TAG_NAME","off","hideErrorMessageTips() windowIndex ","playerHeight","type","checkRectInterval","JbProMulti","specialLayoutType","fromOrderIndex","isRecording","playerMouseoverDestroy() data-uuid is not exist","_updateWindows"," is not valid",'">\n ',"getRenderType","order","selectWindow","removeWatermark","absolute","close() windowIndex ","getFlvMetaData() windowIndex ","293034VuJPXK","CANVAS","getPlayingTimestamp","JessibucaProMulti","position","stopRecordAndSave","replace"," ,window screen rect:","events"," nowRect:","getNextWindowItem","$playerContainer","faceDetectOpen","format","filename","isPaused","dblclickDestroy() data-uuid is not exist","setFullscreen","startDragWindowItem","setControlHtml() windowIndex ","multiIndex","showErrorMessageTips","height","mute","playerDragStartDestroy() data-uuid is not exist",".jb-pro-multi-player-draw-window","debug","getPlayType() windowIndex ","nodeName","getSelectedWindowUuid","setAspectRatio"," -> ","updateAiFaceDetectLevel() windowIndex ","getPTZCmd() windowIndex ","screenshotWatermark","fullscreen request error","1052781hYibKW","setVolume() windowIndex ","arrangeWindow() split ","mouseup","_findWindowItemIndexByUuid"," is not exist","play() windowIndex ","none","prevInfo","$playerBorder",";background-color:","setDebug","audioResume","\" style='float: left;position:relative;overflow: hidden; background-color:","jb-pro-multi-layout-6","player Drop ","border","playerDragLeaveDestroy() data-uuid is not exist","updateFullscreenWatermark","mouseout","display","setFullscreenMulti","addContentToCanvas() windowIndex ","playerMousedownDestroy() data-uuid is not exist","$multiContainer","closeZoom() windowIndex ","788296zPFlsV",'" can not be undefined',"$playerContainerEvents","draggable","pause() windowIndex ","setFullscreen() windowIndex ","fullscreen request inner error","close","supportMousemoveEvent",".jb-pro-multi-player-video-window","screenshot() windowIndex ","string","ERROR",'jb-pro-multi option "',"WebPlayerProMulti","setControlHtml",'<div class="jb-pro-multi-player-container-v2" style="--split:',"player","_listenFullscreenChange","getFlvMetaData","mousedown","play","width","windowIndex ","showSelectedBorder","getBoundingClientRect","updateAiFaceDetectInterval() windowIndex "," is not valid because maxSplit is ","_arrangeSpecialWindow","_getSpecialMaxSplit","clearControlHtml","_findWindowItemIndex","audioResume() windowIndex ","MULTI_EVENTS","updateAiFaceDetectLevel","setTimeout() windowIndex ","showErrorMessageTips() windowIndex ","_getWindowItem","hasLoaded","playerContainerWidth","35191ZCcgJm","\" order='","480490ZtzOwF","split","maxWindowSize","dragstart","updateWatermark() windowIndex ","isLoading","isContainerFullscreen","click","currentWindowUuid","exit",".jb-pro-multi-player-container-v2","$player","toggleSingleWindowContainerFullscreen","clearView() windowIndex ","_sortWindows","mousemove",';\'></div>\n <div class="jb-pro-multi-player-video-window" wid="',"supportDblclickContainerFullscreen","getAudioEngineType","_createPlayer","error","isZoomOpen","top","clearView","relative","1px solid ","removeFullscreenWatermark","3460536ysXubL","cancelMute() windowIndex ","playerMouseoutDestroy() data-uuid is not exist","assign","maxSplit","_innerArrangeWindow","querySelectorAll","pow","fullscreen exit inner error","setRotate","mouseover","2842680UfTxBg","expandZoom() windowIndex ","setAspectRatio() windowIndex ","findIndex","forEach","getExtendBtnList() windowIndex ","drop","getWindowUuidList","Jb-pro-multi container has been created and can not be created again","zIndex","dragenter","playerDropDestroy() data-uuid is not exist","closeZoom","playerDragEnterDestroy() data-uuid is not exist","4DRcJWE","multiFullscreen","classList","setRotate() windowIndex ","emit","clearContentToCanvas","hasLoaded() windowIndex ","updateIsEmitSEI","getWindowItem","_getWindowUuidList","setNetworkDelayTime","_initEvents","destroy","getPrevWindowItem","isMute() windowIndex ","openZoom","_getContainerRect","map"," is not changed","handleWindowContainerFullscreen() ","dblclick","destroy()","setKeepScreenOn","jb-pro-multi-container","startRecord","preventDefault","jb-pro-multi-layout-9","\" style='position:absolute; z-index: 1; border: 1px solid ",".jb-pro-multi-player","setStreamQuality","setNakedFlowFps() windowIndex ","quality","debugLog",'<div class="jb-pro-multi-player-container" style="overflow: hidden;width:100%; height:100%; position: relative;">',';\'>\n <div class="jb-pro-multi-player-draw-window" wid="',"updateIsEmitSEI() windowIndex ","stringify","--split","special1",'\n <div class="jb-pro-multi-player" wid="',"_handleWindowContainerFullscreen","setBufferDelayTime() windowIndex ","getPTZCmd","destroySingle() windowIndex ","objectDetectClose() windowIndex ","currentWindowIndex","Jb-pro-multi need container option","updateAiFaceDetectInterval","Jb-pro-multi container is invalid, must be a DOM Element","setNetworkDelayTime() windowIndex ","mute() windowIndex ","playerClickDestroy() data-uuid is not exist","dragover","supportDblclickFullscreen","pause",'"></div>\n </div>\n ',"block","getExtendBtnList","setNakedFlowFps","_updateMultiIndex","_initWindows","style","updateAiObjectDetectInterval","_arrangeWindow","_checkHasCreated","setDebug() windowIndex ","setCryptoKeyUrl() windowIndex ","windowList","_findWindowItemByUuid","isPlaying","objectDetectOpen","dragleave"];return(SP=function(){return t})()}!function(t){const e=bP,s=t();for(;;)try{if(235173===-parseInt(e(468))/1+-parseInt(e(428))/2+-parseInt(e(402))/3*(-parseInt(e(522))/4)+-parseInt(e(470))/5*(parseInt(e(310))/6)+-parseInt(e(366))/7+parseInt(e(508))/8+parseInt(e(497))/9)break;s.push(s.shift())}catch(t){s.push(s.shift())}}(SP);class EP extends h{constructor(t={}){const e=bP;super(),this[e(299)]={},Object.keys(t)[e(512)](s=>{const i=e;if(void 0===t[s])throw new Error(i(441)+s+i(429))});const s=Ci(Rt);this[e(299)]=Object.assign({},s,t),this.LOG_TAG="jbProMulti",this[e(392)]=new ue(this);let i=t.container;if(typeof t[e(258)]===e(439)&&(i=document.querySelector(t[e(258)])),!i)throw this[e(264)](this.TAG_NAME,"Jb-pro-multi need container option"),new Error(e(568));if(i.nodeName===e(367)||i.nodeName===e(274))throw new Error(e(288)+i[e(394)]+e(262));if(!i[e(524)])throw this.debugError(this[e(345)],e(570),i),new Error(e(570),i);if(this[e(244)](i))throw this[e(264)](this.TAG_NAME,"Jb-pro-multi container has been created and can not be created again",i),new Error(e(516),i);i.classList[e(328)]("jb-pro-multi-container"),Mi(i,R,Cs()),delete this[e(299)][e(258)],this.maxWindowSize=this[e(299)][e(501)]*this[e(299)][e(501)],this.currentWindowIndex=-1,this[e(478)]=null,this[e(352)]=null,this[e(384)]=null,this.checkRectInterval=null,this[e(247)]=[],this.$container=i,this[e(374)]=new sr(this),!this[e(299)].split&&(this[e(299)][e(471)]=1),Pi(this._opt[e(431)])?this[e(305)]():this[e(240)](),this._innerArrangeWindow(this[e(299)][e(471)],!0),this[e(533)](),this[e(294)](0),this._listenFullscreenChange()}[vP(534)](){return new Promise((t,e)=>{const s=bP;if(this[s(554)](this[s(272)],s(543)),this[s(346)](),this[s(374)]&&(this[s(374)][s(534)](),this[s(374)]=null),this.checkRectInterval&&(clearInterval(this.checkRectInterval),this[s(350)]=null),this[s(352)]=null,this[s(384)]=null,this[s(478)]=null,this[s(567)]=-1,this[s(326)]&&(this[s(326)][s(524)].remove(s(545)),Fi(this[s(326)],R),this[s(326)]=null),this[s(247)]){const i=[];this[s(247)].forEach(t=>{const e=s;t[e(430)][e(512)](t=>{t()}),t.player&&i[e(314)](t[e(445)].destroy())}),Promise.all(i).then(()=>{const e=s;this[e(247)].forEach(t=>{t[e(445)]=null}),this.windowList=[],t()}).catch(t=>{e(t)})}else t();this[s(554)](this[s(272)],"destroy")})}[vP(489)](t,e={}){const s=vP,i=this[s(459)](t),r=t[s(255)],n=Object[s(500)]({},this[s(299)],e);n[s(487)]&&(n[s(233)]=!1);const o=new AP({...n,isMulti:!0,multiIndex:i,multiUuid:r,container:t[s(481)]});return Object[s(301)](Q)[s(512)](t=>{o.on(Q[t],(...e)=>{const s=bP;this[s(526)](t,o._opt[s(386)],...e)})}),o.on(q[s(435)],()=>{const e=s;this[e(526)](q[e(435)],i),t[e(445)]=null}),o}[vP(240)](){const t=vP;let e="";for(let s=0;s<this[t(472)];s++)e+=t(561)+s+t(415)+this[t(299)][t(241)][t(256)]+t(556)+s+t(549)+this._opt[t(241)][t(418)]+t(486)+s+t(320);const s=t(555)+e+"</div>";this[t(326)].innerHTML=s;const i=this.$container[t(503)](t(550));for(let e=0;e<this.maxWindowSize;e++){const s=i[e],r=s.querySelector(".jb-pro-multi-player-draw-window"),n=s[t(323)](".jb-pro-multi-player-video-window"),o=Cs();Mi(s,"uuid",o),this.windowList[e]={uuid:o,index:e,isContainerFullscreen:!1,$playerContainer:s,$playerBorder:r,$player:n,$playerContainerEvents:[],player:null}}}[vP(305)](){const t=vP;let e="";const s=this[t(299)][t(471)];for(let s=0;s<this[t(472)];s++)e+=t(561)+s+t(469)+s+t(306)+s+t(412)+this[t(299)][t(241)][t(256)]+t(556)+s+t(302)+s+t(235);const i=t(444)+s+t(358)+e+t(296);this.$container[t(339)]=i,this.$multiContainer=this[t(326)][t(323)](t(480));const r=this[t(326)][t(503)](t(550));for(let e=0;e<this[t(472)];e++){const s=r[e],i=s.querySelector(t(391)),n=s[t(323)](t(437)),o=Cs();Mi(s,"uuid",o),this[t(247)][e]={uuid:o,index:e,isContainerFullscreen:!1,$playerContainer:s,$playerBorder:i,$player:n,$playerContainerEvents:[],player:null}}}[vP(533)](){const t=vP,{proxy:e}=this.events;this[t(247)][t(512)]((s,i)=>{const r=t,n=s[r(377)],o=e(n,r(477),t=>{const e=r;t[e(547)]();const s=Bi(n,e(255));if(!s)return void this[e(264)](this.LOG_TAG,e(573));const i=this[e(406)](s);if(this[e(526)](Pt.selected,i,t),this[e(395)]()===s){if(this[e(465)](s)[e(476)])return}1!==this[e(299)].split&&this[e(294)](i)}),a=e(n,r(542),t=>{const e=r;t.preventDefault();const s=Bi(n,"uuid");if(!s)return void this.debugError(this.LOG_TAG,e(382));const i=this[e(406)](s);this[e(526)](Pt.dblSelected,i,t),this[e(299)][e(487)]&&1!==this[e(299)][e(471)]&&this[e(562)](i)}),h=e(n,r(405),t=>{const e=r,s=Bi(n,e(255));if(!s)return void this[e(264)](this[e(272)],e(254));const i=this[e(406)](s);this[e(526)](Pt.mouseup,i,t)}),l=e(n,"mouseover",t=>{const e=r,s=Bi(n,e(255));if(!s)return void this[e(264)](this[e(272)],e(355));const i=this[e(406)](s);this[e(526)](Pt[e(507)],i,t)}),c=e(n,"mouseout",t=>{const e=r,s=Bi(n,"uuid");if(!s)return void this[e(264)](this.LOG_TAG,e(499));const i=this[e(406)](s);this[e(526)](Pt[e(421)],i,t)}),d=e(n,"mousedown",t=>{const e=r,s=Bi(n,"uuid");if(!s)return void this[e(264)](this[e(272)],e(425));const i=this[e(406)](s);this[e(526)](Pt[e(448)],i,t)}),u=e(n,r(574),t=>{t[r(547)]()}),p=e(n,r(518),t=>{const e=r,s=Bi(n,"uuid");if(!s)return void this[e(264)](this[e(272)],e(521));const i=this[e(406)](s);this[e(465)](s),this[e(526)](Pt[e(518)],i,t,{uuid:s})}),f=e(n,r(251),t=>{const e=r,s=Bi(n,e(255));if(!s)return void this[e(264)](this[e(272)],e(419));const i=this[e(406)](s);this._getWindowItem(s),this[e(526)](Pt[e(251)],i,t,{uuid:s})}),m=e(n,r(514),t=>{const e=r;t[e(547)]();const s=Bi(n,"uuid");if(!s)return void this.debugError(this[e(272)],e(519));const i=this[e(406)](s),o={};if(this[e(299)][e(431)]&&this[e(384)]){const t=this.startDragWindowItem.$playerContainer,i=this.startDragWindowItem.player,r=this[e(384)][e(255)],a=t[e(241)][e(360)];t.style[e(360)]=n[e(241)][e(360)],t.setAttribute(e(360),t[e(241)].order),n[e(241)][e(360)]=a,n[e(325)](e(360),a);const h=this[e(530)](s);this[e(554)](this[e(272)],e(417)+a+e(397)+t[e(241)][e(360)]),this[e(484)](),o.fromUuid=r,o[e(273)]=s,o[e(353)]=_s(a),o[e(312)]=_s(t[e(241)].order),i&&i[e(239)](_s(t[e(241)].order)),h[e(445)]&&h[e(445)][e(239)](_s(a))}this[e(526)](Pt[e(514)],i,t,o)});if(s.$playerContainerEvents=[o,h,l,c,d,a,u,p,f,m],this[r(299)][r(431)]){const t=e(n,"dragstart",t=>{const e=r,s=Bi(n,"uuid");if(!s)return void this.debugError(this[e(272)],e(390));const i=this[e(406)](s);this[e(294)](i),this[e(384)]=this[e(465)](i),this[e(526)](Pt[e(473)],i,t,{uuid:s})});s.$playerContainerEvents[r(314)](t)}if(this._opt[r(436)]){const t=e(n,r(485),t=>{const e=r,s=Bi(n,e(255));if(!s)return void this[e(264)](this[e(272)],"playerMousemoveDestroy() data-uuid is not exist");const i=this[e(406)](s);this.emit(Pt[e(485)],i,t)});s[r(430)][r(314)](t)}})}[vP(538)](){const t=vP;if(!this[t(326)])return{width:0,height:0};const e=this[t(326)][t(453)]();return{width:parseInt(e[t(450)]),height:parseInt(e.height)}}[vP(356)](){const t=vP,e=this[t(538)](),s=e[t(450)],i=e[t(388)],r=this._opt[t(471)],n=s%r,o=i%r,a=(s-n-2*r)/r,h=(i-o-2*r)/r,l=(s-n)/r,c=(i-o)/r;let d=this._getCurrentMaxSplit();for(let e=0;e<d;e++){const s=this[t(247)][e];s[t(476)]=!1;const i=s[t(377)];i[t(241)][t(370)]=t(494),i[t(241)].left=t(304),i.style[t(492)]=t(304),i.style[t(517)]=t(304);const d=s[t(411)],u=s.$player,p=a+(e%r===r-1?n:0),f=h+(e+r>=Math[t(504)](r,2)?o:0),m=l+(e%r===r-1?n:0),g=c+(e+r>=Math.pow(r,2)?o:0);i.style.width=m+"px",i.style[t(388)]=g+"px",i[t(241)][t(422)]=t(236),u[t(241)].width=p+"px",u[t(241)][t(388)]=f+"px",u[t(241)][t(422)]="block",d[t(241)].width=p+"px",d[t(241)][t(388)]=f+"px",d[t(241)].display=t(236),s.player&&s[t(445)][t(298)]()}if(this.specialLayoutType){const e=this.windowList[0],s=e[t(377)],i=e[t(481)],r=e[t(411)],n=s.style[t(450)].replace("px",""),o=s[t(241)][t(388)][t(372)]("px",""),a=i[t(241)][t(450)][t(372)]("px",""),h=i[t(241)].height.replace("px","");let l,c,u,p;this[t(352)]===xt[t(560)]?(l=2*n,c=2*o,u=2*a+2,p=2*h+2):this[t(352)]===xt[t(287)]&&(l=3*n,c=3*o,u=3*a+4,p=3*h+4),s[t(241)][t(450)]=l+"px",s.style.height=c+"px",i[t(241)][t(450)]=u+"px",i[t(241)].height=p+"px",r.style[t(450)]=u+"px",r[t(241)][t(388)]=p+"px",e[t(445)]&&e[t(445)].resize(),d=this._getSpecialMaxSplit()}for(let e=d;e<this[t(472)];e++){const s=this.windowList[e];s[t(445)]&&(s.player[t(534)](),s[t(445)]=null),s[t(377)].style[t(422)]=t(409),s[t(377)][t(241)][t(450)]="0",s[t(377)].style[t(388)]="0",s[t(481)][t(241)][t(422)]=t(409),s[t(411)][t(241)].display=t(409)}if(1===this._opt.split){this[t(247)][0][t(411)][t(241)][t(422)]=t(409)}}[vP(307)](){const t=vP,e=this[t(299)][t(471)];let s=this._getCurrentMaxSplit();if(this.$multiContainer){const s=t(416),i=t(548);this[t(426)][t(524)][t(285)](s,i),this[t(352)]===xt[t(560)]?this[t(426)][t(524)][t(328)](s):this[t(352)]===xt[t(287)]&&this[t(426)].classList[t(328)](i),this[t(426)][t(241)].setProperty(t(559),""+e)}this[t(484)]();for(let e=s;e<this[t(472)];e++){const s=this[t(247)][e];s&&s[t(445)]&&(s[t(445)].destroy(),s[t(445)]=null)}if(1===this[t(299)][t(471)]){this[t(247)][0][t(411)][t(241)][t(422)]=t(409)}this[t(247)][t(512)]((e,s)=>{const i=t;0===s&&hs(e[i(377)],i(422),i(236)),e[i(377)][i(325)](i(275),"0"),e[i(377)].style.fullscreen="0",e[i(377)][i(431)]=this._opt.split>1})}_sortWindows(){const t=vP,e=[];for(let s=0;s<this.maxWindowSize;s++){const i=this[t(247)][s];e[i[t(377)].style[t(360)]]=i}this[t(247)]=e}[vP(294)](t){const e=vP,s=this[e(465)](t);s?(this[e(567)]=this[e(459)](s),this[e(478)]=s[e(255)],this[e(247)][e(278)]>1&&(this.windowList[e(512)](t=>{const i=e;s[i(411)][i(241)].display=i(236),t[i(411)][i(241)][i(418)]=i(495)+this[i(299)][i(241)][i(418)]}),this[e(299)][e(452)]&&(s[e(411)][e(241)].border="1px solid "+this[e(299)][e(241)].borderSelect))):this[e(284)](this[e(272)],"_handleWindowSelect() "+t+" is not exist"),1===this[e(299)].split&&(s[e(411)].style[e(422)]=e(409))}_handleWindowContainerFullscreen(t,e){const s=vP,i=this[s(465)](t);if(i){if(js(e)&&e===i[s(476)])return;if(this[s(299)].draggable){if(i.isContainerFullscreen){if(i[s(377)][s(325)]("fullscreen","0"),i[s(377)][s(241)][s(275)]="0",this[s(352)]){hs(this[s(247)][0].$playerContainer,"display","block")}}else if(i[s(377)][s(325)]("fullscreen","1"),i.$playerContainer[s(241)].fullscreen="1",this[s(352)]){if(0!==this[s(406)](i[s(255)])){hs(this[s(247)][0][s(377)],s(422),s(409))}}}else if(i[s(476)])i[s(377)][s(241)][s(370)]=s(494),i.$playerContainer[s(241)].left=s(304),i[s(377)][s(241)][s(492)]=s(304),i[s(377)].style[s(517)]=s(304),i[s(377)][s(241)][s(450)]=i[s(410)][s(467)],i[s(377)].style[s(388)]=i[s(410)][s(277)],i[s(481)][s(241)][s(450)]=i.prevInfo[s(335)],i[s(481)][s(241)].height=i[s(410)][s(348)],this[s(395)]()===i[s(255)]&&(i[s(411)][s(241)][s(422)]=s(236));else{const t=this[s(538)](),e=t[s(450)],r=t[s(388)];i[s(410)]={playerContainerWidth:i[s(377)][s(241)][s(450)],playerContainerHeight:i.$playerContainer[s(241)][s(388)],playerWidth:i[s(481)][s(241)][s(450)],playerHeight:i.$player[s(241)][s(388)]},i[s(377)][s(241)][s(370)]=s(363),i.$playerContainer[s(241)][s(492)]="0",i[s(377)][s(241)][s(260)]="0",i[s(377)].style[s(517)]="10",i[s(377)].style[s(450)]=e+"px",i[s(377)].style[s(388)]=r+"px",i[s(481)][s(241)][s(450)]=e+"px",i.$player[s(241)][s(388)]=r+"px",i[s(411)][s(241)][s(422)]="none"}i[s(476)]=!i[s(476)],i[s(445)]&&i.player[s(298)]()}else this[s(284)](this[s(272)],s(541)+t+s(407))}[vP(281)](t=5){const e=vP;let s=this[e(538)](),i=0;this[e(350)]=setInterval(()=>{const r=e,n=Ae[r(322)],o=this._getContainerRect(),a={width:screen[r(450)],height:screen[r(388)]};this[r(554)](this[r(272)],r(253)+n+r(332)+i+r(375)+JSON[r(558)](o)+", prevRect:"+JSON[r(558)](s)+r(373)+JSON[r(558)](a));const h=o[r(450)]===s[r(450)]&&o.height===s.height,l=!n||a[r(450)]-o[r(450)]<10&&a[r(388)]-o.height<10;if(h&&l||i>=t)return this[r(350)]&&(clearInterval(this[r(350)]),this[r(350)]=null),void this[r(298)]();s=o,i++},1e3)}[vP(446)](){const t=vP;try{const e=t=>{const e=bP;li(t)===this[e(326)]&&(this[e(526)](Pt[e(523)],Ae.isFullscreen),Ae.isFullscreen?this[e(281)]():function(){const t=es,e=window.navigator[t(601)];return-1!==e[t(610)](t(553))||-1!==e[t(610)](t(453))}()?this._handleFullscreenResize():this.resize())};Ae.on(t(313),e),this.events.destroys[t(314)](()=>{const s=t;Ae[s(346)](s(313),e)})}catch(t){}}play(t,e,s){return new Promise((i,r)=>{const n=bP;(xs(e)||ri(e))&&(s=e,e={});const o=this[n(465)](s);if(o)if(o[n(445)])o.player[n(449)](t,e)[n(280)](()=>{i()})[n(317)](t=>{r(t)});else{const s=this[n(489)](o);o[n(445)]=s,s.play(t,e)[n(280)](()=>{i()})[n(317)](t=>{r(t)})}else r(n(408)+s+n(407))})}[vP(340)](t){const e=vP,s=this[e(465)](t);return s&&s.player?s[e(445)][e(340)]():(this[e(284)](this[e(272)],"getOption() windowIndex "+t+e(407)),{})}[vP(413)](t,e){const s=vP,i=this[s(465)](e);i&&i[s(445)]?i[s(445)][s(413)](t):this[s(284)](this[s(272)],s(245)+e+s(407))}[vP(389)](t){const e=vP,s=this[e(465)](t);s&&s[e(445)]?s[e(445)][e(389)]():this.debugWarn(this[e(272)],e(572)+t+e(407))}cancelMute(t){const e=vP,s=this[e(465)](t);s&&s[e(445)]?s[e(445)][e(291)]():this.debugWarn(this[e(272)],e(498)+t+" is not exist")}[vP(283)](t,e){const s=vP,i=this[s(465)](e);i&&i[s(445)]?i[s(445)][s(283)](t):this[s(284)](this[s(272)],s(403)+e+s(407))}[vP(414)](t){const e=vP,s=this[e(465)](t);s&&s[e(445)]?s[e(445)][e(414)]():this[e(284)](this[e(272)],e(460)+t+" is not exist")}setTimeout(t,e){const s=vP,i=this[s(465)](e);i&&i[s(445)]?i[s(445)][s(295)](t):this[s(284)](this[s(272)],s(463)+e+s(407))}[vP(318)](t,e){const s=vP,i=this[s(465)](e);i&&i[s(445)]?i.player.setScaleMode(t):this[s(284)](this[s(272)],s(263)+e+s(407))}[vP(234)](t=!1,e){return new Promise((s,i)=>{const r=bP,n=this[r(465)](e);n&&n[r(445)]?n[r(445)].pause(t).then(()=>{s()}).catch(t=>{i(t)}):i(r(432)+e+" is not exist")})}[vP(435)](t){return new Promise((e,s)=>{const i=bP,r=this[i(465)](t);r&&r.player?r[i(445)][i(435)]()[i(280)](()=>{e()}).catch(t=>{s(t)}):s(i(364)+t+i(407))})}[vP(493)](t){const e=vP,s=this[e(465)](t);s&&s[e(445)]?s[e(445)].clearView():this[e(284)](this.LOG_TAG,e(483)+t+e(407))}setStreamQuality(t,e){const s=vP,i=this._getWindowItem(e);i&&i.player?i[s(445)][s(551)](t):this[s(284)](this[s(272)],"setStreamQuality() windowIndex "+e+" is not exist")}[vP(298)](){const t=vP;this[t(299)][t(431)]?this._updateWindows$2():this[t(356)]()}[vP(276)](t,e){const s=vP,i=this._getWindowItem(e);i&&i[s(445)]?i[s(445)][s(276)](t):this[s(284)](this[s(272)],"setBufferTime() windowIndex "+e+" is not exist")}setBufferDelayTime(t,e){const s=vP,i=this[s(465)](e);i&&i[s(445)]?i[s(445)].setBufferDelayTime(t):this[s(284)](this[s(272)],s(563)+e+s(407))}[vP(506)](t,e){const s=vP,i=this[s(465)](e);i&&i[s(445)]?i.player[s(506)](t):this[s(284)](this[s(272)],s(525)+e+s(407))}[vP(300)](t,e){const s=vP,i=this[s(465)](e);i&&i[s(445)]?i[s(445)].setMirrorRotate(t):this[s(284)](this[s(272)],"setMirrorRotate() windowIndex "+e+s(407))}[vP(529)](t,e){const s=vP,i=this[s(465)](e);i&&i.player?i[s(445)][s(529)](t):this.debugWarn(this[s(272)],s(557)+e+" is not exist")}[vP(564)](t,e,s){const i=vP,r=this[i(465)](s);if(!r||!r[i(445)])return this[i(284)](this[i(272)],i(399)+s+i(407)),null;returnwindowItem[i(445)][i(564)](t,e)}setAspectRatio(t,e){const s=vP,i=this._getWindowItem(e);i&&i.player?i[s(445)][s(396)](t):this[s(284)](this.LOG_TAG,s(510)+e+s(407))}[vP(466)](t){const e=vP,s=this[e(465)](t);return!(!s||!s.player)&&s[e(445)][e(466)]()}setKeepScreenOn(t){const e=vP,s=this[e(465)](t);s&&s[e(445)]?s[e(445)][e(544)]():this.debugWarn(this[e(272)],"setKeepScreenOn() windowIndex "+t+e(407))}setFullscreen(t,e){const s=vP,i=this._getWindowItem(e);i&&i[s(445)]?i.player[s(383)](t):this.debugWarn(this.LOG_TAG,s(433)+e+s(407))}[vP(329)](t,e){const s=vP,i=this[s(465)](e);return i&&i[s(445)]?i.player[s(329)](t[s(380)],t[s(379)],t[s(553)],t[s(349)]):null}[vP(400)](t,e){const s=vP,i=this[s(465)](e);return i&&i[s(445)]?i.player.screenshotWatermark(t):null}[vP(546)](t,e,s){return new Promise((i,r)=>{const n=bP,o=this[n(465)](s);o&&o[n(445)]?o[n(445)][n(546)](t,e)[n(280)](()=>{i()})[n(317)](t=>{r(t)}):(this[n(284)](this[n(272)],n(319)+s+n(407)),r(n(451)+s+n(407)))})}[vP(371)](t,e,s){return new Promise((i,r)=>{const n=bP,o=this._getWindowItem(s);o&&o[n(445)]?o[n(445)].stopRecordAndSave(t,e).then(t=>{i(t)})[n(317)](t=>{r(t)}):(this[n(284)](this[n(272)],"stopRecordAndSave() windowIndex "+s+n(407)),r(n(451)+s+" is not exist"))})}[vP(249)](t){const e=vP,s=this[e(465)](t);return s&&s[e(445)]?s[e(445)][e(249)]():(this[e(284)](this[e(272)],e(303)+t+" is not exist"),!1)}[vP(475)](t){const e=vP,s=this[e(465)](t);return s&&s[e(445)]?s[e(445)].isLoading():(this[e(284)](this[e(272)],e(334)+t+e(407)),!1)}isPaused(t){const e=vP,s=this[e(465)](t);return s&&s[e(445)]?s[e(445)][e(381)]():(this[e(284)](this[e(272)],e(451)+t+e(407)),!1)}isMute(t){const e=vP,s=this[e(465)](t);return s&&s.player?s[e(445)].isMute():(this[e(284)](this[e(272)],e(536)+t+" is not exist"),!1)}[vP(354)](t){const e=vP,s=this[e(465)](t);return s&&s[e(445)]?s.player[e(354)]():(this.debugWarn(this[e(272)],e(292)+t+e(407)),!1)}clearBufferDelay(t){const e=vP,s=this[e(465)](t);s&&s.player?s.player[e(311)]():this[e(284)](this.LOG_TAG,e(309)+t+e(407))}[vP(532)](t,e){const s=vP,i=this[s(465)](e);i&&i[s(445)]?i.player.setNetworkDelayTime(t):this[s(284)](this[s(272)],s(571)+e+s(407))}[vP(270)](t){const e=vP,s=this[e(465)](t);return s&&s[e(445)]?s[e(445)][e(270)]():(this[e(284)](this[e(272)],"getDecodeType() windowIndex "+t+e(407)),null)}[vP(359)](t){const e=vP,s=this[e(465)](t);return s&&s[e(445)]?s.player.getRenderType():(this[e(284)](this[e(272)],e(451)+t+e(407)),null)}[vP(488)](t){const e=vP,s=this[e(465)](t);return s&&s.player?s.player[e(488)]():(this[e(284)](this[e(272)],"windowIndex "+t+" is not exist"),null)}[vP(368)](t){const e=vP,s=this._getWindowItem(t);return s&&s.player?s[e(445)][e(368)]():(this[e(284)](this[e(272)],e(451)+t+" is not exist"),null)}getStatus(t){const e=vP,s=this[e(465)](t);return s&&s[e(445)]?s[e(445)].getStatus():(this[e(284)](this.LOG_TAG,"getStatus() windowIndex "+t+e(407)),null)}getPlayType(t){const e=vP,s=this._getWindowItem(t);return s&&s.player?s[e(445)].getPlayType():(this.debugWarn(this.LOG_TAG,e(393)+t+" is not exist"),null)}togglePerformancePanel(t,e){const s=vP,i=this[s(465)](e);i&&i.player?i[s(445)][s(333)](t):this[s(284)](this[s(272)],s(267)+e+s(407))}[vP(537)](t){const e=vP,s=this[e(465)](t);s&&s[e(445)]?s[e(445)][e(537)]():this[e(284)](this[e(272)],e(261)+t+e(407))}[vP(520)](t){const e=vP,s=this._getWindowItem(t);s&&s[e(445)]?s[e(445)][e(520)]():this.debugWarn(this[e(272)],e(427)+t+e(407))}[vP(491)](t){const e=vP,s=this[e(465)](t);return s&&s.player?s[e(445)][e(491)]():(this[e(284)](this.LOG_TAG,"isZoomOpen() windowIndex "+t+" is not exist"),!1)}expandZoom(t){const e=vP,s=this._getWindowItem(t);s&&s[e(445)]?s[e(445)].expandZoom():this[e(284)](this[e(272)],e(509)+t+e(407))}[vP(271)](t){const e=vP,s=this._getWindowItem(t);s&&s[e(445)]?s[e(445)][e(271)]():this[e(284)](this[e(272)],e(324)+t+e(407))}[vP(316)](t){const e=vP,s=this[e(465)](t);return s&&s[e(445)]?s.player[e(316)]():(this[e(284)](this.LOG_TAG,"getCurrentZoomIndex() windowIndex "+t+e(407)),0)}[vP(238)](t,e){const s=vP,i=this[s(465)](e);i&&i.player?i.player[s(238)](t):this[s(284)](this.LOG_TAG,s(552)+e+" is not exist")}[vP(343)](t,e){const s=vP,i=this[s(465)](e);i&&i[s(445)]?i[s(445)][s(343)](t):this.debugWarn(this[s(272)],"updateDebugLevel() windowIndex "+e+s(407))}[vP(342)](t,e){const s=vP,i=this._getWindowItem(e);i&&i[s(445)]?i[s(445)][s(342)](t):this[s(284)](this[s(272)],s(474)+e+" is not exist")}[vP(362)](t){const e=vP,s=this[e(465)](t);s&&s[e(445)]?s[e(445)].removeWatermark():this[e(284)](this[e(272)],e(327)+t+e(407))}[vP(420)](t,e){const s=vP,i=this[s(465)](e);i&&i[s(445)]?i[s(445)][s(420)](t):this[s(284)](this[s(272)],"updateFullscreenWatermark() windowIndex "+e+s(407))}removeFullscreenWatermark(t){const e=vP,s=this._getWindowItem(t);s&&s.player?s[e(445)][e(496)]():this[e(284)](this[e(272)],"removeFullscreenWatermark() windowIndex "+t+" is not exist")}[vP(378)](t){const e=vP,s=this._getWindowItem(t);s&&s[e(445)]?s[e(445)][e(378)]():this[e(284)](this[e(272)],"faceDetectOpen() windowIndex "+t+e(407))}[vP(286)](t){const e=vP,s=this[e(465)](t);s&&s.player?s.player[e(286)]():this[e(284)](this[e(272)],e(282)+t+e(407))}[vP(250)](t){const e=vP,s=this[e(465)](t);s&&s.player?s[e(445)][e(250)]():this.debugWarn(this[e(272)],"objectDetectOpen() windowIndex "+t+e(407))}objectDetectClose(t){const e=vP,s=this[e(465)](t);s&&s.player?s.player[e(289)]():this[e(284)](this[e(272)],e(566)+t+e(407))}[vP(290)](t,e){const s=vP,i=this[s(465)](e);i&&i[s(445)]?i.player.sendWebsocketMessage(t):this[s(284)](this[s(272)],"sendWebsocketMessage() windowIndex "+e+" is not exist")}addContentToCanvas(t,e){const s=vP,i=this._getWindowItem(e);i&&i[s(445)]?i.player[s(293)](t):this.debugWarn(this[s(272)],s(424)+e+s(407))}[vP(527)](t){const e=vP,s=this[e(465)](t);s&&s[e(445)]?s[e(445)][e(527)]():this[e(284)](this[e(272)],"clearContentToCanvas() windowIndex "+t+e(407))}[vP(443)](t,e){const s=vP,i=this._getWindowItem(e);i&&i[s(445)]?i[s(445)][s(443)](t):this.debugWarn(this.LOG_TAG,s(385)+e+s(407))}clearControlHtml(t){const e=vP,s=this[e(465)](t);s&&s[e(445)]?s[e(445)][e(458)]():this[e(284)](this[e(272)],"clearControlHtml() windowIndex "+t+" is not exist")}getFlvMetaData(t){const e=vP,s=this._getWindowItem(t);return s&&s[e(445)]?s.player[e(447)]():(this.debugWarn(this.LOG_TAG,e(365)+t+e(407)),null)}[vP(237)](t){const e=vP,s=this[e(465)](t);return s&&s[e(445)]?s[e(445)][e(237)]():(this[e(284)](this[e(272)],e(513)+t+e(407)),null)}[vP(569)](t,e){const s=vP,i=this[s(465)](e);if(!i||!i[s(445)])return this[s(284)](this.LOG_TAG,s(454)+e+s(407)),null;i[s(445)].updateAiFaceDetectInterval(t)}[vP(462)](t,e){const s=vP,i=this._getWindowItem(e);if(!i||!i[s(445)])return this.debugWarn(this[s(272)],s(398)+e+s(407)),null;i.player[s(462)](t)}[vP(242)](t,e){const s=vP,i=this[s(465)](e);if(!i||!i.player)return this[s(284)](this[s(272)],"updateAiObjectDetectInterval() windowIndex "+e+s(407)),null;i[s(445)].updateAiObjectDetectInterval(t)}[vP(279)](t,e){const s=vP,i=this[s(465)](e);if(!i||!i[s(445)])return this[s(284)](this.LOG_TAG,s(336)+e+s(407)),null;i[s(445)][s(279)](t)}[vP(315)](t,e){const s=vP,i=this[s(465)](e);if(!i||!i[s(445)])return this[s(284)](this[s(272)],s(246)+e+s(407)),null;i[s(445)][s(315)](t)}[vP(387)](t,e){const s=vP,i=this._getWindowItem(e);if(!i||!i.player)return this[s(284)](this[s(272)],s(464)+e+" is not exist"),null;i[s(445)][s(387)](t)}[vP(252)](t){const e=vP,s=this[e(465)](t);if(!s||!s[e(445)])return this[e(284)](this[e(272)],e(347)+t+e(407)),null;s[e(445)].hideErrorMessageTips()}[vP(331)](t){return new Promise((e,s)=>{const i=bP,r=this[i(465)](t);r?r.player&&r.player[i(534)]()[i(280)](()=>{r[i(445)]=null,e()}).catch(t=>{s(t)}):(s("windowIndex is not exist"),this[i(284)](this[i(272)],i(565)+t+i(407)))})}[vP(308)](t,e={}){return new Promise((s,i)=>{const r=bP;ei(t)&&(e=t,t=null);const n=this._getWindowItem(t);if(n)if(n[r(445)])n.player.destroy()[r(280)](()=>{const t=r;n.player=null;const i=this[t(489)](n,e);n[t(445)]=i,s()})[r(317)](t=>{i(t)});else{const t=this[r(489)](n,e);n[r(445)]=t,s()}else i(r(330)),this[r(284)](this.LOG_TAG,r(565)+t+" is not exist")})}[vP(423)](t){return new Promise((e,s)=>{const i=bP;if(this[i(554)](this[i(272)],"setFullscreenMulti",t),t)try{Ae[i(321)](this[i(326)])[i(280)](()=>{e()})[i(317)](t=>{const e=i;this[e(264)](this[e(272)],e(434),t),s(t)})}catch(t){this.debugError(this.LOG_TAG,i(401),t),s(t)}else try{Ae[i(479)]()[i(280)](()=>{e()})[i(317)](t=>{const e=i;this.debugError(this[e(272)],e(505),t),s(t)})}catch(t){this[i(264)](this[i(272)],i(341),t),s(t)}})}[vP(482)](t,e){const s=vP;this[s(554)](this.LOG_TAG,s(344),e);const i=this[s(465)](e);this[s(247)][s(512)](t=>{const e=s;t[e(255)]!==i.uuid&&this[e(562)](t[e(255)],!1)}),this._handleWindowContainerFullscreen(i.uuid,t)}[vP(361)](t){const e=vP;this[e(554)](this[e(272)],e(361),t),this._handleWindowSelect(t)}selectNextWindow(t,e=!1){const s=vP;this[s(554)](this.LOG_TAG,"selectNextWindow",t,e);let i=!1;js(t)&&(e=t,t=null);let r=this[s(465)](t);if(r){const t=this[s(531)]()||[],n=t[s(511)](t=>t===r[s(255)]);let o=-1;if(n<t.length-1){o=t[n+1]}else e&&(o=t[0]);-1!==o&&(i=!0,this._handleWindowSelect(o))}return i}selectPrevWindow(t,e=!1){const s=vP;this[s(554)](this[s(272)],"selectPrevWindow",t,e);let i=!1;js(t)&&(e=t,t=null);let r=this._getWindowItem(t);if(r){const t=this[s(531)]()||[],n=t[s(511)](t=>t===r[s(255)]);let o=-1;if(n>0){o=t[n-1]}else e&&(o=t[t[s(278)]-1]);return-1!==o&&(i=!0,this[s(294)](o)),i}}arrangeWindow(t){const e=vP;this.debugLog(this[e(272)],e(265),t),this[e(502)](t)}[vP(502)](t,e=!1){const s=vP;if(!t)return void this[s(284)](this.LOG_TAG,s(404)+t+s(357));if([xt[s(560)],xt[s(287)]].includes(t))this[s(456)](t);else{if(this[s(299)][s(471)]===t&&null===this[s(352)]&&xi(e))return void this[s(284)](this.LOG_TAG,s(404)+t+s(540));this.specialLayoutType=null,this[s(243)](t)}}[vP(243)](t){const e=vP;(t=_s(t))<1||!xs(t)?this[e(284)](this.LOG_TAG,e(404)+t+" is not valid"):(t>this._opt[e(501)]&&(t=this[e(299)][e(501)]),this[e(299)][e(471)]=t,this[e(567)]=0,this[e(299)][e(431)]?this[e(307)]():this._updateWindows(),this[e(294)](this[e(567)]))}[vP(456)](t){const e=vP;this[e(299)][e(501)]<=3&&t===xt[e(287)]?this[e(284)](this.LOG_TAG,"_arrangeSpecialWindow() type "+t+" is not valid because maxSplit is "+this[e(299)][e(501)]):this._opt[e(501)]<=2&&t===xt.special1?this[e(284)](this[e(272)],e(257)+t+e(455)+this[e(299)].maxSplit):this[e(352)]&&this[e(352)]===t?this[e(284)](this[e(272)],e(257)+t+e(540)):(this[e(352)]=t,t===xt.special1?this[e(243)](3):t===xt[e(287)]?this[e(243)](4):this[e(284)](this.LOG_TAG,e(257)+t+e(357)))}[vP(297)](){const t=vP;return this[t(352)]?this[t(352)]:this[t(299)][t(471)]}[vP(268)](){const t=vP;if(this[t(352)]){let e=0;return this[t(352)]===xt[t(560)]?e=9:this.specialLayoutType===xt[t(287)]&&(e=16),e}return this[t(299)][t(471)]*this[t(299)][t(471)]}_getCurrentMaxSplitV2(){const t=vP;return this[t(352)]?this[t(457)]():this[t(299)].split*this[t(299)][t(471)]}[vP(457)](){const t=vP;let e=0;return this[t(352)]===xt[t(560)]?e=6:this[t(352)]===xt.special2&&(e=8),e}getSelectedWindowIndex(){return this[vP(567)]}[vP(395)](){return this.currentWindowUuid}[vP(530)](t){const e=vP;let s=this[e(465)](t),i=this[e(406)](s[e(255)]),r=null;return s&&(r={index:i,$player:s.$player,$playerContainer:s[e(377)],player:s[e(445)],uuid:s[e(255)]}),r}[vP(376)](t,e=!1){const s=vP;this.debugLog(this[s(272)],s(376),t,e);let i=null;js(t)&&(e=t,t=null);let r=this[s(465)](t);if(r){const t=this._getWindowUuidList()||[],e=t[s(511)](t=>t===r[s(255)]);let n=-1;if(n=e<t[s(278)]-1?e+1:0,-1!==n){const e=this[s(248)](t[n]);if(e){i={index:this[s(406)](e[s(255)]),$player:e[s(481)],$playerContainer:e[s(377)],player:e[s(445)],uuid:e[s(255)]}}}}return i}getPrevWindowItem(t,e=!1){const s=vP;this[s(554)](this[s(272)],s(535),t,e);let i=null;js(t)&&(e=t,t=null);let r=this[s(465)](t);if(r){const t=this[s(531)]()||[],n=t[s(511)](t=>t===r[s(255)]);let o=-1;if(n>0?o=n-1:e&&(o=t[t[s(278)]-1]),-1!==o){const e=this[s(248)](t[o]);if(e){i={index:this[s(406)](e[s(255)]),$player:e[s(481)],$playerContainer:e.$playerContainer,player:e[s(445)],uuid:e[s(255)]}}}}return i}[vP(515)](){return this[vP(531)]()||[]}isWindowItemHasInitPlayer(t){const e=vP;let s=!1,i=this[e(465)](t);return i&&i[e(445)]&&(s=!0),s}[vP(465)](t){const e=vP;let s=null;const i=ri(t)&&16===t.length;return s=i||!xs(t)?this._findWindowItemByUuid(i?t:this[e(478)]):this[e(247)][t]||this.windowList[this[e(567)]],s}_getWindowUuidList(){const t=vP;return this[t(247)][t(266)]((t,e)=>e<this._getCurrentMaxSplitV2())[t(539)](e=>e[t(255)])}[vP(459)](t){const e=vP;return t&&t[e(255)]?this._findWindowItemIndexByUuid(t[e(255)]):null}[vP(406)](t){const e=vP;return this[e(247)][e(511)](e=>e.uuid===t)}[vP(248)](t){const e=vP;return this[e(247)][e(338)](s=>s[e(255)]===t)}_checkHasCreated(t){if(!t)return!1;return!!Bi(t,R)}[vP(554)](t,...e){const s=vP;this._opt[s(392)]&&this[s(392)]&&this[s(392)][s(259)](t,...e)}[vP(284)](t,...e){const s=vP;this._opt[s(392)]&&this[s(392)]&&this[s(392)][s(269)](t,...e)}[vP(264)](t,...e){const s=vP;this[s(392)]&&this[s(392)][s(490)](t,...e)}}return EP[vP(461)]=Pt,EP[vP(337)]={...Q,...Pt},EP[vP(440)]=J,window[vP(369)]=EP,window[vP(351)]=EP,window[vP(442)]=EP,EP});