{"version":3,"sources":["webpack:///./node_modules/core-js/internals/to-string-tag-support.js","webpack:///./node_modules/core-js/internals/get-substitution.js","webpack:///./src/assets/orangeImg/top/ranking.png","webpack:///./src/assets/blackImg/top/ranking.png","webpack:///./node_modules/core-js/internals/is-regexp.js","webpack:///./src/assets/blackImg/bannerOrdefault/default.png","webpack:///./src/assets/orangeImg/bannerOrdefault/default.png","webpack:///./node_modules/core-js/internals/to-string.js","webpack:///./node_modules/core-js/modules/es.string.replace-all.js","webpack:///./src/assets/redImg/bannerOrdefault/default.png","webpack:///./src/assets/blueImg/top/ranking.png","webpack:///./src/utils/msg/fn.js","webpack:///./src/assets/pinkImg/top/ranking.png","webpack:///./src/assets/redImg/top/ranking.png","webpack:///./src/assets/lotteryBtn.png","webpack:///./src/assets/greenImg/top/ranking.png","webpack:///./src/assets/lotteryFrame.png","webpack:///./node_modules/core-js/internals/regexp-get-flags.js","webpack:///./node_modules/@kwai-video-team/kwai-player-web/vue2/kwai-player-web-vue2.es.js","webpack:///./node_modules/core-js/internals/regexp-flags.js","webpack:///./src/assets/greenImg/bannerOrdefault/default.png","webpack:///./src/utils/share1.js","webpack:///./src/assets/blueImg/bannerOrdefault/default.png","webpack:///./src/assets/pinkImg/bannerOrdefault/default.png","webpack:///./node_modules/core-js/internals/classof.js"],"names":["wellKnownSymbol","TO_STRING_TAG","test","module","exports","String","uncurryThis","toObject","floor","Math","charAt","replace","stringSlice","slice","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","matched","str","position","captures","namedCaptures","replacement","tailPos","length","m","symbols","undefined","match","ch","capture","n","f","isObject","classof","MATCH","it","isRegExp","$String","argument","TypeError","$","call","requireObjectCoercible","isCallable","toString","getMethod","getRegExpFlags","getSubstitution","IS_PURE","REPLACE","$TypeError","indexOf","max","stringIndexOf","string","searchValue","fromIndex","target","proto","replaceAll","replaceValue","IS_REG_EXP","flags","replacer","searchString","functionalReplace","searchLength","advanceBy","O","this","endOfLastMatch","result","fn","id","herf","setTimeout","urls","window","location","href","vote_id","GetQueryString","fenxiang","sessionStorage","getItem","AndroidShortUrl","download","IosShortUrl","document","getElementsByClassName","style","background","url","encodeURIComponent","removeURLParameter","parameter","urlparts","split","prefix","pars","i","lastIndexOf","splice","join","obj","allUrl","name","navigator","userAgent","iosScheme","protocol","host","androidScheme","options","scheme","intent","package","universal","appstore","yingyongbao","fallback","timeout","callLib","CallApp","open","param","route","u","isWeixin","toLowerCase","QQ","isAndroid","isIOS","display","hidden","mozHidden","msHidden","webkitHidden","hasOwn","isPrototypeOf","regExpFlags","RegExpPrototype","RegExp","prototype","R","lE","Object","defineProperty","Dh","getOwnPropertySymbols","uE","hasOwnProperty","_E","propertyIsEnumerable","Oh","t","e","enumerable","configurable","writable","value","Nh","createElement","appendChild","createTextNode","head","console","error","dE","hE","et","fE","pE","Qn","Hn","available","localStorage","setItem","JSON","stringify","time","Date","now","r","o","l","parse","_available","Av","mE","os","unshift","Jt","ENABLE_ERROR","ENABLE_WARN","ENABLE_INFO","ENABLE_DEBUG","ENABLE_VERBOSE","warn","log","apply","info","debug","Be","vE","globalThis","global","self","Jo","gE","v","E","C","x","g","D","_","p","d","U","w","S","z","W","fe","q","ve","Ae","P","Me","Ie","je","ke","H","ie","ye","we","J","le","me","he","re","Se","Pe","Xe","Oe","st","K","Z","Y","_e","concat","ze","toUpperCase","rt","Fe","G","k","substring","F","ee","Ve","ce","qe","Ce","Ye","tt","exec","I","V","ne","ME","XP","Vista","7","8","10","RT","oe","browser","cpu","device","engine","te","getResult","getBrowser","major","version","getCPU","getDevice","getEngine","getOS","ua","getUA","setUA","VERSION","BROWSER","CPU","DEVICE","ENGINE","OS","UAParser","Ee","jQuery","Zepto","xe","get","set","bE","Tv","level","read","ln","ec","yE","EE","wE","type","Ki","c","Symbol","toStringTag","__esModule","create","bind","default","s","unknown","h264","hevc","av1","kvc3","kvc4","kvc5","kvc6","aac","mp3","opus","yuv","rawvideo","vvc","bvc2","kvc30","h265","kw265","video","canvas","buildin","wasm","none","unsupported","KWAI_FLV_ABR","KWAI_FLV_MP","KWAI","FILE","OTHERS","flv","hls","hls_ts","hls_fmp4","webrtc","mp4","raw","matroska","ts","ivf","LIVE","RTC","CODEC_AUDIO","CODEC_REMUX_TYPE","HLS_NATIVE","MSE","REMUX","HEVC_DEC","FALLBACK_H264","BACKUP","AUTO","ALL_NON_REF","MIN","NONE","WAITING","NEXT","PREV","STANDARD","QUERY_START_END","MAIN","AUDIO","SUBTITLE","VIDEO","native","mse","rtc","Normal","V360","V180","normal","internal","retry","METADATA","MEDIA_INFO","PARSING_INIT_SEGMENT","PARSING_DATA","PARSED_DATA","SCRIPT_PARSED","KEY_FRAME_INDEXS","VIDEO_FRAME_INFO","DISCONTINUITY","REPORT","LOAD_END","ERROR","MANIFEST_PARSED","LEVEL_SWITCHING","LEVEL_SWITCHED","LEVEL_SWITCH_PLAYING","LEVEL_SWITCH_FAILED","LEVEL_LOADED","LEVEL_UPDATED","AUDIO_TRACK_SWITCHING","AUDIO_TRACK_SWITCHED","AUDIO_TRACK_UPDATED","HLS_MANIFEST_PARSED","HLS_KEY_LOADED","AUDIO_TRACK_LOADED","SUBTITLE_TRACK_LOADED","SUBTITLE_LOADED","SUBTITLE_TRACK_SWITCHED","SUBTITLE_TRACK_UPDATED","BUFFER_CLEANING","VIDEO_SEEK","PRELOAD_COMPLETE","ABR_NEXT","PRIV_NAL","SEI","RAW_DATA","MP4_NOT_FASTSTART","VIDEO_CODEC_DETECTED","H265_DETECTED","VIDEO_RENDERER_CHANGE","DEC_LIB_LOADED","DEC_INIT_COMPLETE","DEC_VIDEO_READY","STEP","RENDERER_BUF_EXPIRED","RENDERER_SEEK","RENDERER_BUF_UPDATE","RENDERER_DRAW","DECODER_FRAME","DECODER_IMG","DECODER_SEEK","DECODER_SEEK_ABORT","DECODER_WAITING","DECODER_DATA_END","DECODER_BUF_LOW","DECODER_DROP_FRAME","DECODER_MEDIA_INFO","MEDIA_CONNECTED","LOADER_CHUNK_ARRIVAL","DEMUXER_DETECTED","MEDIA_DEMUX","KEY_FRAME","USE_BACKUP","NEW_SOURCE","DOWNLOAD","STOP_LOAD","LOAD","LOADEDDATA","CANPLAY","SEEKING","SEEK_WITH_LOAD","SEEKED","PLAYING","PAUSE","PLAY","ENDED","TIMEUPDATE","PROGRESS","RATE_CHANGE","DURATION_CHANGE","HEARTBEAT","MSE_UPDATE","MSE_BUFFER_FULL","RETRY","INIT_PTS_FOUND","a","LEVEL_ERROR","LEVEL_WARN","LEVEL_INFO","LEVEL_DEBUG","LEVEL_VERBOSE","arguments","Array","byteLength","fromCharCode","subarray","pow","NETWORK_ERROR","MEDIA_ERROR","KEY_SYSTEM_ERROR","MUX_ERROR","OTHER_ERROR","MSE_ERROR","DECODER_ERROR","RENDERER_ERROR","LOAD_ERROR","MANIFEST_LOAD_ERROR","LEVEL_LOAD_ERROR","AUDIO_TRACK_LOAD_ERROR","KEY_LOAD_ERROR","KEY_SYSTEM_LICENSE_REQUEST_FAILED","DEC_LIB_LOAD_ERROR","RTC_SDP_LOAD_ERROR","SUBTITLE_TRACK_LOAD_ERROR","CANNOT_SEEK","VIDEO_ERROR","UNSUPPORTED","CONFIG_ERROR","OTHER","UNKNOWN","CANNOT_SEEK_BY_FRAME_INDEX","SRC_EMPTY","VIDEO_ERROR_1","VIDEO_ERROR_2","VIDEO_ERROR_3","VIDEO_ERROR_4","MEDIASOURCE_ERROR","ADDSOURCEBUFFER_ERROR","SOURCEBUFFER_ERROR","ENDOFSTREAM_ERROR","APPENDBUFFER_ERROR","CHANGETYPE_ERROR","PARSING_ERROR","REMUX_ERROR","REMUX_ALLOC_ERROR","REMUX_WORKER_ERROR","DEMUX_NOT_FOUND","MANIFEST_PARSING_ERROR","KEY_SYSTEM_NO_ACCESS","KEY_SYSTEM_NO_SESSION","KEY_SYSTEM_URL_ERROR","KEY_SYSTEM_NO_KEYS","FRAG_DECRYPT_ERROR","KEY_SYSTEM_NO_INIT_DATA","KEY_SYSTEM_UNSUPPORTED","DECODER_LOAD_ERROR","DECODER_INIT_ERROR","DECODER_DRAW_ERROR","DECODER_WEBGL_ERROR","DECODER_UNSUPPORTED","PRELOAD_ERROR","LIVE_DISCONNECTED_ERROR","WEBRTC_DISCONNECTED_ERROR","WEBRTC_FAILED_ERROR","WEBRTC_CLOSED_ERROR","WEBRTC_ICE_CANDIDATE_ERROR","WEBRTC_ICE_CONNECTION_ERROR","WEBRTC_OFFER_ERROR","WEBRTC_ANSWER_ERROR","WEBRTC_TRANSMISSION_DATA_NULL","WEBRTC_CONNECT_TIMEOUT","WEBRTC_CONNECT_FAILED","key","HEVC_NAL_TRAIL_N","HEVC_NAL_TRAIL_R","HEVC_NAL_TSA_N","HEVC_NAL_TSA_R","HEVC_NAL_STSA_N","HEVC_NAL_STSA_R","HEVC_NAL_RADL_N","HEVC_NAL_RADL_R","HEVC_NAL_RASL_N","HEVC_NAL_RASL_R","HEVC_NAL_VCL_N10","HEVC_NAL_VCL_R11","HEVC_NAL_VCL_N12","HEVC_NAL_VCL_R13","HEVC_NAL_VCL_N14","HEVC_NAL_VCL_R15","HEVC_NAL_BLA_W_LP","HEVC_NAL_BLA_W_RADL","HEVC_NAL_BLA_N_LP","HEVC_NAL_IDR_W_RADL","HEVC_NAL_IDR_N_LP","HEVC_NAL_CRA_NUT","HEVC_NAL_RSV_IRAP_VCL22","HEVC_NAL_RSV_IRAP_VCL23","HEVC_NAL_RSV_VCL24","HEVC_NAL_RSV_VCL25","HEVC_NAL_RSV_VCL26","HEVC_NAL_RSV_VCL27","HEVC_NAL_RSV_VCL28","HEVC_NAL_RSV_VCL29","HEVC_NAL_RSV_VCL30","HEVC_NAL_RSV_VCL31","HEVC_NAL_VPS","HEVC_NAL_SPS","HEVC_NAL_PPS","HEVC_NAL_AUD","HEVC_NAL_EOS_NUT","HEVC_NAL_EOB_NUT","HEVC_NAL_FD_NUT","HEVC_NAL_SEI_PREFIX","HEVC_NAL_SEI_SUFFIX","HEVC_NAL_RSV_NVCL41","HEVC_NAL_RSV_NVCL42","HEVC_NAL_RSV_NVCL43","HEVC_NAL_RSV_NVCL44","HEVC_NAL_RSV_NVCL45","HEVC_NAL_RSV_NVCL46","HEVC_NAL_RSV_NVCL47","HEVC_NAL_UNSPEC48","HEVC_NAL_UNSPEC49","HEVC_NAL_UNSPEC50","HEVC_NAL_UNSPEC51","HEVC_NAL_UNSPEC52","HEVC_NAL_UNSPEC53","HEVC_NAL_UNSPEC54","HEVC_NAL_UNSPEC55","HEVC_NAL_UNSPEC56","HEVC_NAL_UNSPEC57","HEVC_NAL_UNSPEC58","HEVC_NAL_UNSPEC59","HEVC_NAL_UNSPEC60","HEVC_NAL_UNSPEC61","HEVC_NAL_UNSPEC62","PRIV_NAL_MAGIC_HEVC","NAL_UNIT_INVALID","assign","majorVersion","platform","x5","xweb","parseInt","minor","build","chrome","opr","safari","webkit","rv","iemobile","msie","edg","edge","msedge","opera","android","iphone","ipad","mobile","ios","Number","isFinite","audio","ADTS","ASC","videoFrame","decoderConfig","FLV","FMP4","TS","MP4","RAW","IVF","YUV","constructor","INIT_265","APPEND_DATA","UPDATE_STATE","RESET","DESTROY","SEEK","END_OF_DATA","DEC_DROP_FRAME","CLEAN","EXPIRED_DATA_SYNC","INIT_RENDERER","__evt","EventEmitter","on","prependListener","removeAllListeners","off","listeners","emit","listenerCount","AVCOL_PRI_RESERVED0","AVCOL_PRI_BT709","AVCOL_PRI_UNSPECIFIED","AVCOL_PRI_RESERVED","AVCOL_PRI_BT470M","AVCOL_PRI_BT470BG","AVCOL_PRI_SMPTE170M","AVCOL_PRI_SMPTE240M","AVCOL_PRI_FILM","AVCOL_PRI_BT2020","AVCOL_PRI_SMPTE428","AVCOL_PRI_SMPTEST428_1","AVCOL_PRI_SMPTE431","AVCOL_PRI_SMPTE432","AVCOL_PRI_EBU3213","AVCOL_PRI_JEDEC_P22","AVCOL_PRI_NB","AVCOL_TRC_RESERVED0","AVCOL_TRC_BT709","AVCOL_TRC_UNSPECIFIED","AVCOL_TRC_RESERVED","AVCOL_TRC_GAMMA22","AVCOL_TRC_GAMMA28","AVCOL_TRC_SMPTE170M","AVCOL_TRC_SMPTE240M","AVCOL_TRC_LINEAR","AVCOL_TRC_LOG","AVCOL_TRC_LOG_SQRT","AVCOL_TRC_IEC61966_2_4","AVCOL_TRC_BT1361_ECG","AVCOL_TRC_IEC61966_2_1","AVCOL_TRC_BT2020_10","AVCOL_TRC_BT2020_12","AVCOL_TRC_SMPTE2084","AVCOL_TRC_SMPTEST2084","AVCOL_TRC_SMPTE428","AVCOL_TRC_SMPTEST428_1","AVCOL_TRC_ARIB_STD_B67","AVCOL_TRC_NB","AVCOL_SPC_RGB","AVCOL_SPC_BT709","AVCOL_SPC_UNSPECIFIED","AVCOL_SPC_RESERVED","AVCOL_SPC_FCC","AVCOL_SPC_BT470BG","AVCOL_SPC_SMPTE170M","AVCOL_SPC_SMPTE240M","AVCOL_SPC_YCGCO","AVCOL_SPC_YCOCG","AVCOL_SPC_BT2020_NCL","AVCOL_SPC_BT2020_CL","AVCOL_SPC_SMPTE2085","AVCOL_SPC_CHROMA_DERIVED_NCL","AVCOL_SPC_CHROMA_DERIVED_CL","AVCOL_SPC_ICTCP","AVCOL_SPC_NB","AVCOL_RANGE_UNSPECIFIED","AVCOL_RANGE_MPEG","AVCOL_RANGE_JPEG","colorRange","matrixCoefficients","colourPrimaries","transferCharacteristics","SCRIPT","tagType","dataSize","timestamp","size","cts","frameType","codecId","body","packetType","VVC_NAL_UNIT_CODED_SLICE_TRAIL","VVC_NAL_UNIT_CODED_SLICE_STSA","VVC_NAL_UNIT_CODED_SLICE_RADL","VVC_NAL_UNIT_CODED_SLICE_RASL","VVC_NAL_UNIT_RESERVED_VCL_4","VVC_NAL_UNIT_RESERVED_VCL_5","VVC_NAL_UNIT_RESERVED_VCL_6","VVC_NAL_UNIT_CODED_SLICE_IDR_W_RADL","VVC_NAL_UNIT_CODED_SLICE_IDR_N_LP","VVC_NAL_UNIT_CODED_SLICE_CRA","VVC_NAL_UNIT_CODED_SLICE_GDR","VVC_NAL_UNIT_RESERVED_IRAP_VCL_11","VVC_NAL_UNIT_OPI","VVC_NAL_UNIT_DCI","VVC_NAL_UNIT_VPS","VVC_NAL_UNIT_SPS","VVC_NAL_UNIT_PPS","VVC_NAL_UNIT_PREFIX_APS","VVC_NAL_UNIT_SUFFIX_APS","VVC_NAL_UNIT_PH","VVC_NAL_UNIT_ACCESS_UNIT_DELIMITER","VVC_NAL_UNIT_EOS","VVC_NAL_UNIT_EOB","VVC_NAL_UNIT_PREFIX_SEI","VVC_NAL_UNIT_SUFFIX_SEI","VVC_NAL_UNIT_FD","VVC_NAL_UNIT_RESERVED_NVCL_26","VVC_NAL_UNIT_RESERVED_NVCL_27","VVC_NAL_UNIT_UNSPECIFIED_28","VVC_NAL_UNIT_UNSPECIFIED_29","VVC_NAL_UNIT_UNSPECIFIED_30","VVC_NAL_UNIT_UNSPECIFIED_31","VVC_NAL_UNIT_INVALID","Uint8Array","asc","samplerate","configParsed","objectType","sampleingIndex","chanelConfig","b","details","fatal","reason","config","extensionSamplerate","channelCount","codec","manifestCodec","sampleDuration","inputTimescale","headerLength","frameLength","stamp","unit","pts","dts","originDTS","samples","push","sample","missing","pid","timescale","sequenceNumber","mp4Samples","duration","fillDuration","codedWidth","codedHeight","rotation","sar","width","height","profile","chromaFormat","fps","codecType","dpb","ReferenceError","_size","_cache","_index","_offset","put","unreadLen","MAX_CACHE_SIZE","Error","buffer","min","_collateCache","skip","clear","shift","AV_PIX_FMT_MONO","AV_PIX_FMT_YUV420P","AV_PIX_FMT_YUV422P","AV_PIX_FMT_YUV444P","fill","initAudioForFillSilent","fillAACFrameByCount","getSilentFrame","ensureAudioFrame","alignStartByVideo","active","preferLowPowerToHighPerformance","preserveDrawingBuffer","getContext","HTMLCanvasElement","OffscreenCanvas","webGL","performance","failIfMajorPerformanceCaveat","getExtension","UNMASKED_VENDOR_WEBGL","vendor","getParameter","UNMASKED_RENDERER_WEBGL","renderer","loseContext","NaN","hash","query","unescape","pathname","slashes","slashesCount","rest","index","port","hostname","username","password","auth","decodeURIComponent","origin","pop","extractProtocol","trimLeft","qs","round","INIT","FLUSH","PUSH","UPDATE_CONFIG","buildAbsoluteURL","trim","alwaysNormalize","parseURL","path","normalizePath","buildURLFromParts","netLoc","params","fragment","reverse","bitDepth","colorInfo","decConf","data","getFillTrackBySamples","outputRaw","units","moov","types","avc1","hev1","av01","_getMoovLen","offset","_writeMoov","videoMediaSegment","reduce","_getMediaSegmentData","_mediaSegmentHead","forEach","audioMediaSegment","audioRawMpeg","_writeBoxHead","mdat","_getTrakLen","_getMvexLen","_writeMvhd","_writeTrak","_writeMvex","_writePssh","pssh","_getMoofLen","_getEncLen","_writeEnc","_getSaizLen","saiz","auxiliaryInfo","enc","_getSaioLen","saio","_getSencLen","senc","useSubSampleEnc","_writeMoof","_writeTkhd","j","_getMdiaLen","trak","_writeMdia","_getMinfLen","mdia","_writeMdhd","_writeMinf","_getStblLen","minf","_writeStbl","_getStsdLen","stbl","_writeStsd","stsd","_getAudioStsdLen","_getVideoStsdLen","_writeVideoStsd","_writeAudioStsd","_getDecConfLen","avcC","hvcC","av1C","_writeBoxHeadAt","_getMp4aEsdsLen","_getMp4aStsdLen","_writeMp4aStsd","_writeOpusStsd","_writeMp3Stsd","mvex","_writeTrex","moof","mfhd","traf","tfhd","sampleDescIndex","tfdt","sdtp","dependsOn","isDependedOn","hasRedundancy","trun","len","isLeading","isNonSync","degradPrio","btrt","dinf","dref","esds","ftyp","hdlr","mdhd","mp4a","mvhd","pasp","stco","stsc","stsz","stts","trex","tkhd","vmhd","smhd","_evt","_config","_typeSupported","_isSafari","_forceFirstIDR","_rawVideoTimeOffset","_ISGenerated","_lastVideoCodec","_transmuxData","_aNextPTS","_vNextDTS","_initPTS","_initDTS","_initSegment","_pssh","_videoTrack","_vLastSample","_onError","destroy","resetTimeStamp","resetInitSegment","getLastDTS","flush","_remuxVideo","segments","extra","remux","gopRemux","audioCodec","_getRawVideoInfo","ensureVideo","_fillVideoByAudio","isLive","_generateIS","_remuxAudio","Ht","startDTS","originFirstDTS","$t","abs","xt","container","metadata","videoBitrate","bitrate","videoMaxBitrate","maxBitrate","tracks","mpeg","channel","audioSampleRate","audioBitrate","audioMaxBitrate","isFillVideo","enhancedFlv","rawVideo","keys","Bt","sort","gt","bt","Wt","Ct","Et","bi","yi","Ei","wi","Yi","Fi","Cr","isNaN","Vr","or","gr","_r","Oi","lt","fi","Zt","_getMoovByType","pi","payload","adjustedStart","startPTS","endPTS","endDTS","firstParseTime","parseTime","filter","maxAudioFramesDrift","toFixed","updateTimestampOffset","ENTRY_MODULE","main","all","map","Blob","bare","URL","webkitURL","mozURL","msURL","createObjectURL","Worker","objectURL","_lastEndTime","reset","update","ceil","0","64","1","65","17","81","33","97","49","113","2","34","35","42","43","66","98","99","16","32","48","51","67","80","83","86","96","102","105","_vppList","_originSizeCanvas","_originSizeGL","_video","_webGLFrameSink","_inputRendererType","_draw","vpp","draw","_destroyOriginSizeCanvas","updateFormatSize","_fSize","h","_calculateUpperSize","_calculateDisplaySize","setVideo","_applayVPP","setWebGLFrameSink","afterDraw","updateRendererType","rendererType","hasVPP","_canvas","_createOutputCanvas","bindVPP","originSize","originalSizeInput","unbindVPP","detachSource","detachOutputCanvas","_destroyCanvas","webgl","setWebGLCtx","drawToCanvas","reDraw","_createOriginSizeCanvas","drawToFBO","attachOutputCanvas","attachSource","_createCanvas","search","searchIndex","fromCodePoint","RangeError","Reflect","Function","ownKeys","getOwnPropertyNames","init","once","Promise","removeListener","_events","_eventsCount","_maxListeners","defaultMaxListeners","newListener","listener","warned","emitter","count","fired","wrapFn","addEventListener","removeEventListener","getPrototypeOf","setMaxListeners","getMaxListeners","message","context","addListener","prependOnceListener","rawListeners","eventNames","_gl","_cSize","_dSize","updateCanvasSize","remove","getPosByTime","MAX_SAFE_INTEGER","B","y","_subtle","_aesIV","decrypt","iv","rcon","subMix","Uint32Array","invSubMix","sBox","invSBox","ksRows","keySize","keySchedule","invKeySchedule","initTable","uint8ArrayToUint32Array_","DataView","T","getUint32","M","X","de","be","Q","ae","pe","Le","Ue","He","Ge","Qe","ot","nt","ut","expandKey","networkToHostOrderSwap","Ft","Lt","dt","jt","li","Ri","ui","Ni","Ci","_i","Int32Array","Pi","zi","_key","importKey","removePKCS7Padding","_logEnabled","_removePKCS7Padding","_softwareDecrypter","_fastAesKey","_remainderData","_currentIV","_currentResult","crypto","subtle","webkitSubtle","enableSoftwareAES","isSync","getUint8","softwareDecrypt","webCryptoDecrypt","then","logOnce","getValidChunk","reject","catch","onWebCryptoError","INTER_FRAME","INTRA_ONLY_FRAME","SWITCH_FRAME","AV1_OBU_SEQUENCE_HEADER","AV1_OBU_TEMPORAL_DELIMITER","AV1_OBU_FRAME_HEADER","AV1_OBU_TILE_GROUP","AV1_OBU_METADATA","AV1_OBU_FRAME","AV1_OBU_REDUNDANT_FRAME_HEADER","AV1_OBU_TILE_LIST","AV1_OBU_PADDING","byteOffset","getUint16","_readElem","_readString","getFloat32","getFloat64","samplesPerFrame","sampleRate","parseMetadata","parseScript","parseObject","parseString","objectEnd","parseVariable","parseLongString","parseDate","getInt16","_tag","_result","tags","_parseLen","_parseFunc","_hasVideo","_hasAudio","_parseFlvHead","append","_parseFlvTagHead","_parseFlvTag","hasVideo","hasAudio","H264_NAL_UNSPECIFIED","H264_NAL_SLICE","H264_NAL_DPA","H264_NAL_DPB","H264_NAL_DPC","H264_NAL_IDR_SLICE","H264_NAL_SEI","H264_NAL_SPS","H264_NAL_PPS","H264_NAL_AUD","H264_NAL_END_SEQUENCE","H264_NAL_END_STREAM","H264_NAL_FILLER_DATA","H264_NAL_SPS_EXT","H264_NAL_PREFIX","H264_NAL_SUB_SPS","H264_NAL_DPS","H264_NAL_RESERVED17","H264_NAL_RESERVED18","H264_NAL_AUXILIARY_SLICE","H264_NAL_EXTEN_SLICE","H264_NAL_DEPTH_EXTEN_SLICE","H264_NAL_RESERVED22","H264_NAL_RESERVED23","H264_NAL_UNSPECIFIED24","H264_NAL_UNSPECIFIED25","H264_NAL_UNSPECIFIED26","H264_NAL_UNSPECIFIED27","H264_NAL_UNSPECIFIED28","H264_NAL_UNSPECIFIED29","H264_NAL_UNSPECIFIED30","NAL_FF_IGNORE","PRIV_NAL_MAGIC_H264","byteIndex","bitIndex","seq_profile","seq_level_idx_0","seq_tier_0","high_bitdepth","twelve_bit","monochrome","chroma_subsampling_x","chroma_subsampling_y","chroma_sample_position","initial_presentation_delay_present","profile_string","level_string","chroma_format_string","bit_depth_luma","color_info","buffer_delay_length_minus_1","frame_presentation_time_length_minus_1","frame_id_numbers_present_flag","reduced_still_picture_header","decoder_model_info_present_flag","equal_picture_interval","delta_frame_id_length_minus_2","additional_frame_id_length_minus_1","timingInfo","decoderModelInfo","operatingParametersInfo","colorConfig","num_units_in_decoding_tick","buffer_removal_time_length_minus_1","decoder_buffer_delay","encoder_buffer_delay","low_delay_mode_flag","getOwnPropertyDescriptor","getOwnPropertyDescriptors","defineProperties","createCtx","seenFrameHeader","ref","parseOBU","parseOBUHeader","obu_extension_flag","obu_has_size_field","obu_type","content","sh","frameHeaderOBU","frameOBU","obu_forbidden_bit","temporal_id","spatial_id","frame","keyframe","show_existing_frame","uncompressedHeader","temporalPointInfo","pps_id","sps_id","cabac","pic_order_present","slice_group_count","mb_slice_group_map_type","ref_count","weighted_pred","weighted_bipred_idc","chroma_qp_index_offset","deblocking_filter_parameters_present","constrained_intra_pred","redundant_pic_cnt_present","transform_8x8_mode","Ir","_skipScalingList","vn","Bn","gn","Vn","yr","wa","Fn","is","Aa","Mi","Dl","ao","rs","Ta","bit_depth_chroma","chroma_format_idc","frame_rate","fixed","fps_den","fps_num","codec_size","pic_order_cnt_type","log2_max_frame_num","log2_max_poc_lsb","frame_mbs_only_flag","delta_pic_order_always_zero_flag","num_ref_frames_in_pic_order_cnt_cycle","offset_for_ref_frame","offset_for_non_ref_pic","offset_for_top_to_bottom_field","ref_frame_count","3","4","30","60","63","90","93","120","123","150","153","156","180","183","186","255","dependent_slice_segments_enabled_flag","output_flag_present_flag","num_extra_slice_header_bits","sign_data_hiding_enabled_flag","cabac_init_present_flag","num_ref_idx_l0_default_active","num_ref_idx_l1_default_active","init_qp_minus26","constrained_intra_pred_flag","transform_skip_enabled_flag","tiles_enabled_flag","entropy_coding_sync_enabled_flag","parsePTL","_decodeProfileTierLevel","general_ptl","level_idc","sub_layer_profile_present_flag","sub_layer_level_present_flag","sub_layer_ptl","getPTLCommon","getPTL","profile_space","tier_flag","profile_idc","profile_compatibility","profile_compatibility_flag","constraint_indicator","vps_id","conformance_window_flag","min_spatial_segmentation_idc","separate_colour_plane_flag","log2_min_cb_size","log2_diff_max_min_coding_block_size","log2_min_tb_size","log2_max_trafo_size","log2_ctb_size","ctb_width","ctb_height","temporal_layer","ptl","conf_win_left_offset","conf_win_right_offset","conf_win_top_offset","conf_win_bottom_offset","max_dec_pic_buffering","skipScalingListData","parseRps","hvccParseVui","getCodec","getGeneralPTL","parseTimingInfo","skipHrdParameters","_skipSubLayerHrdParameters","pps_conf_win_left_offset","pps_conf_win_right_offset","pps_conf_win_top_offset","pps_conf_win_bottom_offset","max_sublayers_minus1","bitdepth","general_nal_hrd_params_present_flag","general_vcl_hrd_params_present_flag","general_du_hrd_params_present_flag","hrd_cpb_cnt_minus1","sps_num_ref_pic_lists","sps_long_term_ref_pics_flag","sps_inter_layer_prediction_enabled_flag","sps_log2_max_pic_order_cnt_lsb_minus4","sps_weighted_pred_flag","sps_weighted_bipred_flag","_profileTierLevel","_dpbParameters","_refPicListStruct","_generalTimingHrdParameters","_olsTimingHrdParameters","_vuiPayload","_generalConstraintsInfo","_sublayerHrdParameters","parseAV1C","marker","parseAVCC","avcProfile","profileCompatibility","avcLevel","naluLengthSize","paramSets","spsList","ppsList","sps","pps","parseHVCC","vpsList","seiList","_vvcPTLRecord","parseVvcC","parseBV2C","parseKvLC","generateAV1C","generateAVCC","generateHVCC","setUint32","setUint8","nalus","setUint16","hevDecoderConfigToSample","hevDecoderConfigToNalu","vvcDecoderConfigToNalu","avcDecoderConfigToNalu","vvcDecoderConfigToSample","getDPB264","getDPBHEVC","getDPBLenAV1","updateAV1Track","onAV1Detected","updateAVCTrack","updateHEVCTrack","vps","updateVVCTrack","onHEVCDetected","wasmDecoderEnabled","preferDecoder","onKVCDetected","onVVCDetected","_remuxer","_duration","_naluLengthSize","_audioTrack","_slientAudio","_remuxStat","_firstRemux","_aLastDTS","_vLastDTS","_tagDump","_gopRemux","_timeException","_firstVideoTag","_av1Ctx","probe","_onKeyFrame","_remux","trackInfo","timeOffset","contiguous","accurateTimeOffset","_discontinuity","_parseVideoData","_parseAudioData","_parseScriptTag","updateConfig","ISGenerated","_getTimeException","_checkTimestamp","diff","_fixTime","_audioOnlyStart","_resetTrackSamples","onMetaData","framerate","videodatarate","audiodatarate","keyframes","filepositions","isArray","times","_parseVideoTagEx","_parseVideoTagNormal","_parseVideoTagCodecConf","_parseVideoTagCodedFrames","_parseAVCDecoderConfigurationRecord","_parseHEVCDecoderConfigurationRecord","_parseAV1DecoderConfigurationRecord","_parseAVCVideoData","abst","enabled","decoder","sei","_parseASC","_getAudioTrackDuration","_getVideoTrackDuration","_pts","_vFrameIdx","_parseStart","_initTrack","_parseHead","_parseFrameHead","_parseFrame","videoFramesInfo","parseOneDescriptor","pos","_parseESDesc","_parseDecoderConfigDescriptor","tag","getAudioConfig","descs","getObjectTypeIndication","oti","dependsOnESID","ocrESID","_parseRemainingDescriptors","streamType","bufferSize","avgBitrate","Fr","atan2","PI","sqrt","SIZE","NAME","BIG_SIZE","DATA","Qt","Xi","Vt","Yt","Zi","findBox","readBoxes","headSize","readBox","major_brand","minor_version","compatible_brands","_mvhd","_trak","_mvex","_traf","sidx","referenceID","earliestPresentationTime","firstOffset","referenceCount","references","bufferSizeDB","hSpacing","vSpacing","_tfhd","_tfdt","_trun","_saiz","_saio","_senc","trackID","baseDataOffset","sampleDescriptionIndex","defaultSampleDuration","defaultSampleSize","defaultSampleFlags","baseMediaDecodeTime","sampleCount","dataOffset","firstSampleFlags","sampleSize","sampleFlags","sampleCompositionTimeOffset","defaultSampleInfoSize","sampleInfoSize","entryCount","encItemData","encData","mehd","_mehd","_trex","fragmentDuration","_tkhd","tref","_tref","_mdia","trackId","matrix","referenceType","_minf","_hdlr","_mdhd","_dinf","_stbl","_dref","_stsd","_stts","_stsc","_stco","_co64","_stsz","_stz2","stss","_stss","ctts","_ctts","sgpd","_sgpd","stdp","_stdp","_sdtp","sbgp","_sbgp","subs","_subs","entries","sampleDelta","subSamples","priority","discardable","codecSpecificParameters","groupingType","groupDescriptionIndex","sampleDependsOn","sampleIsDependedOn","sampleHasRedundancy","descriptionLength","sampleEntrys","boxData","timeToSample","firstChunk","samplesPerChunk","sampleToChunkBox","chunkOffset","SampleSize","sampleNumber","sampleOffset","compositionOffset","Mn","ya","kr","hvc1","kvc7","kvLC","bv2C","vvc1","vvcC","Ea","_ftyp","_moov","_vSampleIndex","_aSampleIndex","_vSampleInfoList","_aSampleInfoList","_nextSampleInfo","_readingBox","_isFMP4","_readingBoxWaiting","_fragmentEndOffset","_readSamples","_remuxOnMoof","_mdatOffset","_isCurretFragmentEnd","_nextFragment","_readBox","_seek","_hasMoreSamples","_getNextSampleInfo","start","end","_parseVideoSample","_parseAudioSample","_readNextBox","_updateSampleListDataOffset","_parseMOOV","_parseMOOF","_parseSIDX","noOffset","temporalId","_getTrexByID","_getTrakByID","gopID","mp4MoovSize","_parseSTBL","description","_parseVideoDescription","_parseAudioDescription","_findSampleIndexByPos","_findSampleIndexByTime","_parseVideoSampleEntry","_parseAudioSampleEntry","_readEsds","_parseAvcC","_checkFps","_parseHvcC","_parseAv1C","_parseVvcC","AV_PICTURE_STRUCTURE_UNKNOWN","AV_PICTURE_STRUCTURE_TOP_FIELD","AV_PICTURE_STRUCTURE_BOTTOM_FIELD","AV_PICTURE_STRUCTURE_FRAME","MMCO_END","MMCO_SHORT2UNUSED","MMCO_LONG2UNUSED","MMCO_SHORT2LONG","MMCO_SET_MAX_LONG","MMCO_RESET","MMCO_LONG","AV_PICTURE_TYPE_NONE","AV_PICTURE_TYPE_I","AV_PICTURE_TYPE_P","AV_PICTURE_TYPE_B","AV_PICTURE_TYPE_S","AV_PICTURE_TYPE_SI","AV_PICTURE_TYPE_SP","AV_PICTURE_TYPE_BI","HEVC_SLICE_B","HEVC_SLICE_P","HEVC_SLICE_I","ji","br","jr","_psUpdated","_vSample","_vSampleIndexOnGOPStart","_lastPTS","_frameDuration","_codecParserContext","_newSample","_findStartCode","state","_parseNalu","_nextSample","naluState","pict_type","picture_structure","key_frame","priv_data","poc","poc_lsb","poc_msb","delta_poc_bottom","delta_poc","frame_num","prev_poc_msb","prev_poc_lsb","frame_num_offset","prev_frame_num_offset","prev_frame_num","ps","pocTid0","suffix","_parseH264Nalu","_parseHEVCNalu","ref_idc","nuh_layer_id","gbCtx","ff_h264_init_poc","scan_mmco_reset","hevc_parse_slice_header","log2","ff_hevc_compute_poc","list_count","ff_h264_parse_ref_count","ff_h264_pred_weight_table","use_weight","use_weight_chroma","luma_log2_weight_denom","chroma_log2_weight_denom","luma_weight_flag","chroma_weight_flag","Qa","_decrypter","_decryptdata","decryptAacSamples","_decryptAacSample","decryptAvcSamples","_decryptAvcSample","_decryptBuffer","_getAvcEncryptedData","_getAvcDecryptedUnit","registration","Ja","5","descriptor_name","format_identifier","es","descriptor_tag","descriptor_length","mn","_sampleAes","_pmtParsed","_pmtId","_vLastDts","_aLastDts","_aacOverFlow","_aacLastPTS","_videoSample","_contiguous","_timeOffset","_accurateTimeOffset","_audioNonMonotonous","_tsException","aacOverhead","unknownTSPacketCount","_hevcParamSets","_avcParamSets","_av1sh","_remuxOnFlush","_parsePMT","id3","aCodecType","_readDescriptors","_pushAccesUnit","forceKeyFrameOnDiscontinuity","_createVSample","_parseVideoPES","_readVideoNALu","audFound","_parseAVCNalu","_remuxByStat","_parseMPEGPES","_parseAACPES","setDecryptData","method","syncOffset","createTrack","stat","_parsePAT","_parsePES","pesData","_onParsed","_flushPES","audioNonMonotonous","_decryptAndRemux","_decryptAndRemuxAvc","_checkRegistrationDescriptors","_checkParamSets","_getLastNalUnit","Un","_vendor","_nextIV","_probe","_muxConfig","_demuxer","_stat","_minChunkSize","Demux","Remux","probeSize","progress","trackSwitch","discontinuity","_pushDecrypted","_probeData","encryptedChunkSize","minChunkSize","_module","_libde265","_waitingData","_ctx","_more","_stridePtr","_chromaStridePtr","_threads","js","jsw","wasmBinary","mainScriptUrlOrBlob","locateFile","_malloc","_cwrapLibde265Fun","_initDecoder","de265_flush_data","free","de265_free_decoder","_free","rebuild","setValue","_newDecoder","de265_reset","pushData","de265_push_data","de265_isOK","_decode","pushNalus","de265_push_NAL","de265_push_end_of_NAL","getPendingNALNumber","de265_get_number_of_NAL_units_pending","endOfFrame","de265_push_end_of_frame","nextFrame","isWaitingData","getValue","de265_decode","de265_get_next_picture","_getImage","startTime","DE265_ERROR_WAITING_FOR_INPUT_DATA","de265_new_decoder","de265_start_worker_threads","_disableFilters","de265_set_parameter_bool","DE265_DECODER_PARAM_DISABLE_DEBLOCKING","DE265_DECODER_PARAM_DISABLE_SAO","de265_get_image_width","de265_get_image_height","de265_get_chroma_format","de265_get_bits_per_pixel","de265_get_image_plane","HEAPU8","format","chroma","chromaWidth","chromaHeight","cropLeft","cropTop","cropWidth","cropHeight","displayWidth","displayHeight","de265_get_image_PTS","bytes","stride","bits","DE265_OK","DE265_ERROR_NO_SUCH_FILE","DE265_ERROR_EOF","DE265_ERROR_COEFFICIENT_OUT_OF_IMAGE_BOUNDS","DE265_ERROR_CHECKSUM_MISMATCH","DE265_ERROR_CTB_OUTSIDE_IMAGE_AREA","DE265_ERROR_OUT_OF_MEMORY","DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE","DE265_ERROR_IMAGE_BUFFER_FULL","DE265_ERROR_CANNOT_START_THREADPOOL","DE265_ERROR_LIBRARY_INITIALIZATION_FAILED","DE265_ERROR_LIBRARY_NOT_INITIALIZED","DE265_ERROR_CANNOT_PROCESS_SEI","DE265_ERROR_PARAMETER_PARSING","DE265_ERROR_NO_INITIAL_SLICE_HEADER","DE265_ERROR_PREMATURE_END_OF_SLICE","DE265_ERROR_UNSPECIFIED_DECODING_ERROR","DE265_ERROR_MAX_THREAD_CONTEXTS_EXCEEDED","DE265_ERROR_MAX_NUMBER_OF_SLICES_EXCEEDED","DE265_ERROR_NOT_IMPLEMENTED_YET","DE265_WARNING_NO_WPP_CANNOT_USE_MULTITHREADING","DE265_WARNING_WARNING_BUFFER_FULL","DE265_WARNING_PREMATURE_END_OF_SLICE_SEGMENT","DE265_WARNING_INCORRECT_ENTRY_POINT_OFFSET","DE265_WARNING_CTB_OUTSIDE_IMAGE_AREA","DE265_WARNING_SPS_HEADER_INVALID","DE265_WARNING_PPS_HEADER_INVALID","DE265_WARNING_SLICEHEADER_INVALID","DE265_WARNING_INCORRECT_MOTION_VECTOR_SCALING","DE265_WARNING_NONEXISTING_PPS_REFERENCED","DE265_WARNING_NONEXISTING_SPS_REFERENCED","DE265_WARNING_BOTH_PREDFLAGS_ZERO","DE265_WARNING_NONEXISTING_REFERENCE_PICTURE_ACCESSED","DE265_WARNING_NUMMVP_NOT_EQUAL_TO_NUMMVQ","DE265_WARNING_NUMBER_OF_SHORT_TERM_REF_PIC_SETS_OUT_OF_RANGE","DE265_WARNING_SHORT_TERM_REF_PIC_SET_OUT_OF_RANGE","DE265_WARNING_FAULTY_REFERENCE_PICTURE_LIST","DE265_WARNING_EOSS_BIT_NOT_SET","DE265_WARNING_MAX_NUM_REF_PICS_EXCEEDED","DE265_WARNING_INVALID_CHROMA_FORMAT","DE265_WARNING_SLICE_SEGMENT_ADDRESS_INVALID","DE265_WARNING_DEPENDENT_SLICE_WITH_ADDRESS_ZERO","DE265_WARNING_NUMBER_OF_THREADS_LIMITED_TO_MAXIMUM","DE265_NON_EXISTING_LT_REFERENCE_CANDIDATE_IN_SLICE_HEADER","DE265_WARNING_CANNOT_APPLY_SAO_OUT_OF_MEMORY","DE265_WARNING_SPS_MISSING_CANNOT_DECODE_SEI","DE265_WARNING_COLLOCATED_MOTION_VECTOR_OUTSIDE_IMAGE_AREA","cwrap","de265_get_version","de265_get_version_number","de265_get_error_text","de265_set_verbosity","de265_chroma_mono","de265_chroma_420","de265_chroma_422","de265_chroma_444","de265_get_image_plane_user_data","de265_get_image_user_data","de265_set_image_user_data","de265_get_number_of_input_bytes_pending","de265_peek_next_picture","de265_release_next_picture","de265_get_warning","de265_get_highest_TID","de265_get_current_TID","de265_set_limit_TID","de265_set_framerate_ratio","de265_change_framerate","DE265_DECODER_PARAM_BOOL_SEI_CHECK_HASH","DE265_DECODER_PARAM_DUMP_SPS_HEADERS","DE265_DECODER_PARAM_DUMP_VPS_HEADERS","DE265_DECODER_PARAM_DUMP_PPS_HEADERS","DE265_DECODER_PARAM_DUMP_SLICE_HEADERS","DE265_DECODER_PARAM_ACCELERATION_CODE","DE265_DECODER_PARAM_SUPPRESS_FAULTY_PICTURES","de265_acceleration_SCALAR","de265_acceleration_MMX","de265_acceleration_SSE","de265_acceleration_SSE2","de265_acceleration_SSE4","de265_acceleration_AVX","de265_acceleration_AVX2","de265_acceleration_ARM","de265_acceleration_NEON","de265_acceleration_AUTO","de265_set_parameter_int","KS265_PIXFMT_YUV_420P","KS265_PIXFMT_YUV_420SP","KS265_PIXFMT_YUV_420SP_VU","nWidth","nHeight","nCodedWidth","nCodedHeight","nLumaBitDepth","nChromaBitDepth","nChromaFormatIdc","has_b_frames","bIllegalStream","_libks265","_needNextFrame","_pendingNum","_isDataEnded","pAuth","threads","nal_mode","pic_out_pos","bEnableOutputRecToFile","strRecYuvFileName","logLevel","outputPixfmt","b_use_pthread","_configPtr","_framePtr","_cwrapLibKS265Fun","_updateKS265FrameInfo","KS265DecodeFrame","_tryGetFrame","KS265DecoderDestroy","KS265DecodeFlush","KS265DecoderGetDecodedFrame","_readKS265Frame","bValid","KS265DecoderReturnDecodedFrame","_mallocKS265DecConfig","_mallocKS265Frame","KS265DecoderCreate","frameinfo","pData","iStride","_readKS265FrameInfo","KS265DecoderSetDecConfig","KS265DecodeFrameHeader","KS265DumpVUIParameters","KVC_PIXFMT_YUV_420P","KVC_PIXFMT_YUV_420SP","KVC_PIXFMT_YUV_420SP_VU","hasBFrames","_libkvc","_codecType","_leastKVC5","_postProcessYuv","ysize","usize","vsize","queueDecode","picOutPos","_cwrapLibKVCFun","KVCDecoderPostProcess","_updateKVCFrameInfo","KVCDecodeFrame","KVCDecoderDestroy","_freePostProcess","KVCDecodeFlush","KVCDecoderGetDecodedFrame","_readKVCFrame","valid","_postProcess","KVCDecoderReturnDecodedFrame","_mallocPostProcessYUV","_mallocKVCDecConfig","_mallocKVCFrame","KVCDecoderCreate","_mallocKVCFrameInfo","_readKVCFrameInfo","KVCDecoderSetDecConfig","KVCDecodeFrameHeader","KVCDecoderGetVersion","KVC19DumpVUIParameters","_KVCDecoderPostProcess","needOutput","_inputPtr","_videoInfoPtr","_streamPtrs","_videoInfo","_writeKVCInput","_dec","_freeStreamPtr","_getColorInfo","bufs","bytesPerPixel","outputFrame","colorFormat","planes","hasOutput","_readVideoInfo","b_vui_valid","aspect_ratio_info_present_flag","video_full_range_flag","sar_width","sar_height","colour_description_present_flag","colour_primaries","transfer_characteristics","matrix_coeffs","_updateVideoInfo","KVCDecodeUnrefFrame","KVCExportParams","KVCGetVersion","_decoder","_clock","_frameBufLen","_maxFrameBufLen","_vLastPTS","_dataCache","_gopId","_droppedFrames","_decodedFrames","_loop","_decodeTimes","_avgDecodeDuration","_mediaInfo","_hasOverriddenFPS","_output","_decConfigData","_seeking","_seekingTime","_decId","_defaultDropPolicy","_dropPolicy","_lastDataCachePTS","_endOfData","_expiredDataSync","_lastPushPTS","_appendDecActive","_lowBufThreshold","_decBufInfo","_idrFrame","_checkSkip","_onSeeked","hitCache","_onSeekAbort","_onFrame","_preprocessYUV","droped","decoded","decId","_checkHevcSkip","_isIDR","_checkVvcSkip","_checkVvcNaluSkip","videoDropFramePolicy","_startLoop","simd","decoderType","expiredDataSync","appendData","gopId","endOfData","updateState","updateMediaInfo","_updateFPS","_stopLoop","clean","seek","_dataEnded","_preprocessYUVPlane","_pushDataToDecoder","_resetTime","_update","_syncIndex","_dropFrame","setInterval","clearInterval","Float32Array","_textures","_framebuffers","_program","_buf","_positionLocation","_lumaPositionBuffer","_lumaPositionLocation","_chromaPositionBuffer","_chromaPositionLocation","_colorCovYoffset","_texsizeLocation","_colorCovLocation","_colorTrcLocation","_bitsPerPixelLocation","_matrixLocation","_vertexShader","_fragmentShader","_frameInfo","_outputFBO","_pictMode","_afterDrawCB","getRotMatrix","_texParam","bindTexture","TEXTURE_2D","texParameteri","TEXTURE_WRAP_S","CLAMP_TO_EDGE","TEXTURE_WRAP_T","TEXTURE_MIN_FILTER","LINEAR","TEXTURE_MAG_FILTER","_clearWebGL","createTexture","createFramebuffer","bindFramebuffer","FRAMEBUFFER","texImage2D","LUMINANCE","UNSIGNED_BYTE","framebufferTexture2D","COLOR_ATTACHMENT0","texture","framebuffer","deleteFramebuffer","deleteTexture","_createOrReuseTexture","_uploadTexture","activeTexture","TEXTURE0","LUMINANCE_ALPHA","_init","_initProgram","createBuffer","bindBuffer","ARRAY_BUFFER","bufferData","STATIC_DRAW","getAttribLocation","getUniformLocation","pixelStorei","UNPACK_ALIGNMENT","_attachTexture","uniform1i","_compileShader","VERTEX_SHADER","FRAGMENT_SHADER","createProgram","attachShader","linkProgram","getProgramParameter","LINK_STATUS","getProgramInfoLog","deleteProgram","createShader","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","getShaderInfoLog","deleteShader","drawFrame","_checkFormatUpdated","_setupTexturePosition","useProgram","viewport","TEXTURE1","TEXTURE2","TEXTURE3","RGBA","uniformMatrix3fv","uniform1f","uniform2fv","enableVertexAttribArray","vertexAttribPointer","FLOAT","drawArrays","TRIANGLES","finish","clearColor","COLOR_BUFFER_BIT","disableVertexAttribArray","deleteBuffer","OK","REORDER","_totalSize","_lastDuration","_maxCacheSize","next","getFrameByIndex","prev","_checkTotalSize","decDropFrameInfo","ptsToIndex","getLessPtsIdxThen","hasDropedAfterIdx","_yuvCache","_yuv","_decBlockPolicy","_waitingVideoSync","_nextDraw","_yuvBufferLenOnWaiting","_cOutput","videoDecBlockPolicy","videoFrameBufferSize","remaining","current","_checkWaitingReady","needMore","yuvBufLen","_onWaitingReady","step","_updateRenderer","_onWaiting","displaySize","atob","btoa","Buffer","TextDecoder","TextEncoder","from","charCodeAt","encode","decode","atobPolyfill","btoaPolyfill","fromBase64","toBase64","encodeURI","encodeURL","utob","btou","isValid","fromUint8Array","toUint8Array","extendString","extendUint8Array","extendBuiltins","Base64","postMessage","event","cmd","kwaiKernelLog","typeSupported","decryptdata","initSegment","fragEnd","transmuxData","setPrototypeOf","__proto__","streamTime","stoped","output","maxFrameBufLen","seeking","mediaInfo","frameBufLen","playbackRate","lib","Ch","oE","Ai","zr","L","_waitingRec","_frameBufLenIdx","onWaiting","_renderer","_rendererW","_id","_onWorkMessage","_onMessage","cOutput","A","getDecConfig","transferControlToOffscreen","terminate","N","dropFrame","_active","_waiting","_ready","_pausedOnWaiting","_bufRules","_updateState","requestAnimationFrame","stop","setMediaInfo","_checkResize","devicePixelRatio","clientWidth","clientHeight","toLocaleLowerCase","_context","_callbacks","_controller","_reader","_abort","isSupported","fetch","ReadableStream","load","Headers","headers","header","range","requestMethod","mode","cache","referrerPolicy","signal","_getAbortSignal","requestBody","credentials","responseUrl","responseHeader","onConnect","status","ok","getReader","cancel","responseType","_pump","arrayBuffer","se","_onEnd","text","statusText","abort","_onProgress","onProgress","onEnd","onError","done","AbortController","MOZ_CHUNK","UNKNOW","UNSUPPORT","_xhr","_progress","_onReadyStateChange","readyState","responseURL","getAllResponseHeaders","response","_onLoadEnd","isSupportChunk","supportChunk","XMLHttpRequest","onprogress","onload","onreadystatechange","onerror","withCredentials","setRequestHeader","send","_loader","_loaderCallback","_stats","_retryDelay","_loading","_aborted","_requestTimeout","_transTimer","_retryTimeout","_rangeStart","_progressTime","_loadInternal","code","tfirst","loaded","clearTimeout","_getInternalLoader","connectionTimeout","_onTimeout","_httpRange","tsload","tstart","_onConnect","_getContentLen","_startTransmissionTimer","trequest","breakpointContinuation","_callProgress","_stopTimer","_destroyLoader","maxRetry","rangeStart","_abortInternal","useFetch","transmissionTimeout","retryDelay","tload","total","onAbort","_stopTransmissionTimer","rangeEnd","rangeType","contentTotalLength","contentLength","write","libS","libT","libST","jsT","jsST","jsW","_ls","_decoderType","_wasmLoader","_jsLoader","_jswLoader","_loadStartTime","_onLoaderError","statusCode","_decLibURL","ue","Te","De","_checkEnd","_loadJs","_loadWasm","_loadJsw","_destroyWasmLoader","_destroyJsLoader","_destroyJswLoader","ArrayBuffer","decLibConnectionTimeout","decLibLoadingMaxRetry","hardwareConcurrency","MediaSource","WebKitMediaSource","SourceBuffer","WebKitSourceBuffer","WIDEVINE","PLAYREADY","FAIRPLAY","requestMediaKeySystemAccess","_drmSystemOptions","audioRobustness","videoRobustness","_mediaKeysList","_hasSetMediaKeys","_loaderConfig","_mediaKeysPromise","_licenseServerUrl","_videoCodecs","_onMediaEncrypted","initDataType","initData","widevineLicenseUrl","_attemptKeySystemAccess","_attemptSetMediaKeys","_generateRequestWithPreferredKeySession","_onKeySessionMessage","_requestLicense","isBrowserSupported","firefox","keyLoadingMaxRetry","keyConnectionTimeout","keyTransmissionTimeout","keyLoadingRetryDelay","getSupportedMediaKeySystemConfigurations","audioCapabilities","contentType","robustness","videoCapabilities","onManifestParsed","videoCodec","drmSchemaId","drmToken","mediaKeysSession","close","setMediaKeys","destory","mediaKeys","mediaKeysSessionInitialized","generateRequest","mediaKeySystemAccess","mediaKeySystemDomain","resolve","createMediaKeys","createSession","_getLicenseServerUrl","playreadyLicenseUrl","fairplayLicenseUrl","_disposeLoader","_avStat","_sourceBuffer","_mediaSource","_mimeCodec","_cleanUpTask","_appendQueue","_appendEnabled","_appendError","_appendBufferError","_mseDuration","_sbHandler","_souceBufferLocked","_sbAppendStarted","_startBufSec","_startBufTimer","_lastAppendInfo","_changeTypeSupported","pt","isChangeTypeSupported","_onSourceOpen","_checkSourceBuffer","refresh","_onSourceEnded","_onSourceClose","_onSourceBufferUpdateEnd","_endOfStream","_updateDuration","mseUpdate","_onSourceBufferError","_getSourceBufferType","currentTarget","_startBufEnded","_removeStartBufTimer","mseBufferFull","mseRemove","attach","src","updateDuration","setStartBufSec","updating","liveShiftEnabled","bufferedEndByType","_addSourceBuffer","addSourceBuffer","sn","subSn","updateend","_hasPendingData","_doAppend","_getBufferQueueSize","_appendBuffer","mediaSegment","bufferedByType","buffered","bufferSliceNumByType","pendingSecByType","pendingNum","_calculateRemoveRange","currentTime","_cleanUpRange","changeType","timestampOffset","appendBuffer","appendErrorMaxRetry","hasCleanUpTask","_cleanUp","POSITIVE_INFINITY","setAppendEnabled","getAppendEnabled","ended","endOfStream","removeSourceBuffer","hasSourceBuffer","hasTrackInfo","hasSourceBufferAppendStarted","getBufferQueueSec","ed","400","401","403","404","other4xx","serverError","timeoutOpen","timeoutIO","200","206","urlId","qualityType","qualityLabel","enableAdaptive","comment","hdr","vCodecType","getKLevel","startSN","endSN","fragments","live","needSidxRanges","startTimeOffset","targetduration","totalduration","PTSKnown","m3u8Slice","audioGroupIds","attrs","averagetargetduration","lang","groupId","instreamId","autoselect","forced","partOfData","http416","mergeFrom","hasFrag","programDateTime","utcs","_uri","baseuri","reluri","_url","_byteRange","_elementaryStreams","rawProgramDateTime","tagList","relurl","baseurl","levelkey","cc","maxStartPTS","deltaPTS","dropped","backtracked","loader","title","setByteRange","byteRangeEndOffset","addElementaryStream","hasElementaryStream","createInitializationVector","setDecryptDataFromLevelKey","uri","byteRange","parseAttrList","decimalInteger","hexadecimalInteger","hexadecimalIntegerAsNumber","decimalFloatingPoint","parseFloat","optionalFloat","enumeratedString","bool","decimalResolution","lastIndex","a3ds","alac","alaw","dra1","dtsc","dtse","dtsh","enca","g719","g726","m4ae","mha1","mha2","mhm1","mhm2","mlpa","Opus","samr","sawb","sawp","sevc","sqcp","ssmv","twos","ulaw","avc2","avc3","avc4","avcp","drac","dvav","dvhe","encv","mjp2","mp4v","mvc1","mvc2","mvc3","mvc4","resv","rv60","s263","svc1","svc2","vp08","vp09","source","endProgramDateTime","findGroup","convertAVC1ToAVCOTI","substr","parseMasterPlaylist","CODECS","parseMasterPlaylistMedia","TYPE","URI","LANGUAGE","DEFAULT","AUTOSELECT","FORCED","parseLevelPlaylist","Ne","$e","ht","Je","kt","Xt","vt","zt","_t","di","ct","Ii","wt","Gt","Or","Hr","BYTERANGE","every","nr","hr","wr","bn","jn","LEVEL","SUBTITLE_TRACK","AUDIO_TRACK","MANIFEST","loaders","_loadsuccess","SUCCESS","isSidxRequest","_resetInternalLoader","levelDetails","_handleTrackOrLevelPlaylist","_handleManifestParsingError","_handleMasterPlaylist","_loaderror","_handleNetworkError","_loadAbort","ABORT","canHaveQualityLevels","mapContextToLevelType","getResponseUrl","_createInternalLoader","_destroyInternalLoaders","manifestLoadingMaxRetry","manifestConnectionTimeout","manifestTransmissionTimeout","manifestLoadingRetryDelay","levelLoadingMaxRetry","levelConnectionTimeout","levelTransmissionTimeout","levelLoadingRetryDelay","preprocessUrl","manifest","levels","audioTracks","subtitleTracks","def","stream","_handlePlaylistLoaded","FAIL","stats","setResourceTimingBufferSize","webkitSetResourceTimingBufferSize","clearResourceTimings","webkitClearResourceTimings","domain","stream_host","download_url","download_start_time","download_spend_time","http_response_time","download_status","http_status_code","retry_index","error_code","error_message","loader_id","download_size","resource_type","preload","quality_type","frag","slice_play_start_time","slice_play_duration","slice_index","slice_level_index","custom_http_header","range_start","range_end","transcoding_template","getEntriesByName","redirectStart","redirect","redirectEnd","dns","domainLookupEnd","domainLookupStart","tcp","connectEnd","connectStart","request","requestStart","firstResponse","responseStart","responseEnd","fetchStart","time_redirect","time_dns","time_tcp","time_request","time_first_response","time_response","beacon","predictStep","targetBuffer","smoothRatioToTarget","switchpanelty","slidingWindowSize","kalmanR","kalmanQ","initBitrate","startBitrateLimit","speedPredictRatio","speedPredictNum","algorithm","speedPredictRatioOnStart","lowProfileThreshold","lowProfileBitrate","lowProfileStartThreshold","Default","Seek","_conf","_bufferSize","_lastBufferSize","_pastThroughput","_bitrates","_qos","_storage","_nextIndex","_status","_speedPredictCnt","_lowProfile","_lowProfileIndex","_lowProfileHistory","_renderBlockCount","_initBitrate","onManifestUpdated","lctx","abrLevels","abrDefault","_maxBitrateIndex","bitrateInit","_bitrateToIndex","speed","lowProfile","onLevelLoad","onKeyPoint","spendTime","_nextRateIndex","nextBitrate","currentBitrate","onSeek","isInBuffer","_resetAlgorithm","onDownloadEnabled","_nextRateBySpeed","_nextRateBySpeedAndBuffered","_algorithm","_downloadEnd","_downloadStartTime","hlsAdaptiveConfig","onAbrLevelsUpdated","onDownload","isAbrAvailable","onNewSource","currentIdx","orignIndexToAbr","nextBitrateIndex","abr","abrIndexToOrign","nextLevel","setDownloadEnabled","_onManifestLoaded","loadManifest","loadLevel","verify","adaptationSet","representation","averageBitrate","defaultSelect","srcType","startUtcTime","periodId","bandwidth","m3u8","baseUrl","codecs","backupUrl","HLSTS","HLSFMP4","LongVideo","ShortVideo","LiveGame","LiveShow","LivePlayBack","avc","mediaType","stereoType","businessType","mimeType","language","hdrType","disableAdaptive","processingSubtitleType","defAudio","defSubtitle","drm","box","currentUrl","getAdaptationIdxByType","vCodec","verifyMix","isSrcEmpty","filterLevels","isMSEAvailable","isMSECodecStrSupportedInMp4","isVideoCodecStrSupportedInMp4","isMSECodecSupported","isVideoCodecSupported","preParse","_formatStrData","_preParseMd","mime","nativeFirst","isVideoBoxSupported","mixContainerInput","_getBoxBySrc","_getNativeFirstByBox","getVideoCodecCompatibilityByCodec","smooth","mix","compatibility","ss","Wl","Gl","cE","lr","frameRate","Kl","Ih","kh","qualityList","mediaLevels","mixQualityList","mixCodecInput","mixCodecAvailable","_getIsLiveByBox","File","multipart","parseLevelSlice","_playlistLoader","audioIdx","subtitleIdx","_onLevelLoaded","_onAudioLevelLoaded","_onSubtitleLevelLoaded","_loaders","_decryptkey","_decrypturl","_loadEnd","_loadError","local","server","_callback","_onLoaderEnd","serverMs","_ntp","_priv","_vLastExtraInfo","_aLastExtraInfo","serverNowMs","onPrivNal","onParsing","getDisplayDelay","_renderDelay","getAudioRenderDelay","getRecDelay","_workerStartMs","_w","_internalEvt","_chunkIndex","_mux","_lastTRequest","_ended","webWorker","muxWorker","workerTimeOffset","remuxId","isSupportHW","TYPE_SUPPORTED","getRemuxConfig","onFragProgress","_demux","onFragLoaded","updateSuffix","timeCost","remuxContiguous","_push","_onParsing","trackType","_frag","_fragInfo","_type","_levels","_pos","_failPos","_loadEnabled","_newSource","_startSN","_fragLoadFailSec","_demuxing","_initFragLoader","_keyLoader","_remuxContiguous","_fragAlign","_loadConfig","_keyLoadConfig","_parallelStartCache","_tryLoadNext","getNextIdx","getLevelIdx","setLevelIdx","_isLevelEnd","_loadFrag","_fragParsed","startSec","_getFragStartByPos","_tryStartDemux","_isReady","_startDemux","_preprocessed","_destroyInitLoader","isPreload","_resetIO","maxFragFailSec","_onAbort","setNextIdx","levelUpdated","totalDuration","_reset","sec","nextBackup","setIndex","setNext","_fragAlignStart","_getFragByPos","_loadKey","encrypted","streamingMux","byteRangeStartOffset","httpRangeType","sync","_updateParallelStartCache","getLevel","auto","alignPTS","_fullyLoaded","subtitle","startDelay","rule","rate","lower","upper","_abr","_main","_audio","_timer","_seekKeyframe","_manifestReady","_mediaProtocol","_subtitle","_subtitleStarted","_startSubtitle","abrInitLevel","_updateLiveShiftEnabled","_updateLiveDelay","_updateStartSecByLiveDelay","_levelUpdated","_loadLevel","_getTrack","_clearLevelTimer","_onLevelUpdated","_onAudioTrackUpdated","_onSubtitleTrackUpdated","timeInfo","startFromSec","_abrNext","setNextLevel","_syncStream","lastLoadedFrag","_getTrackLevels","startFromKeyframe","_initMultirate","loadSource","isNetworkInUse","isSeekable","setAudioTrack","_checkNextLevel","setSubtitleTrack","setCurrentLevel","_abrActive","setManualNextLevel","manualNext","nextIdx","liveDelayFragNum","multipartLiveDelay","autoPlaybackRateConf","liveShift","liveStartLocalTime","kabr_spts","_loaderConf","_loaderCallbacks","_startTime","_testEnd","firstPackageDuration","succeeded","_startTimer","stableBufferDiffThresholdSecond","stableBufferIntervalMs","speedTestTimeoutMs","generateSpeedGapMs","bufferCheckIntervalMs","smoothedSpeedUtilizationRatio","smallSpeedToBitrateRatio","enoughSpeedToBitrateRatio","bufferLowerLimitSecond","recentBufferedSize","smoothedSpeedRatio","isSpeedFullyUsed","_pastBuffer","_current","_next","_stableBufferStartTime","_speedTester","_generatedSpeed","_lastCheckBuffer","_lastSpeed","_checkBuffer","_updateStableBuffer","_isSpeedFullyUsed","bufferedSec","abrSpeedTest","_startTesting","loadRec","traffic","_quantization","_getSmoothedSpeed","_getPredictedBuffer","_getBufferSpeed","_isSpeedTooSmall","_isSpeedEnough","_smooth","_downloadSize","_keyCount","liveAdaptiveConfig","onLoaderChunk","onKeyFrame","getRequestUrl","defaultSpts","tagSize","Ol","_y","_isFlv","_header","_headerPos","_detectType","_tagSize","_tagSizeLen","_timestamp","_timestampLen","_tagType","_frameType","_keyframeList","dy","hy","Jd","eh","fy","Sa","py","my","th","_frameIdx","_params","_fullFrameInfo","_append","_checkParams","bpp","_getFrame","updateVideoPlaybackQuality","_getFrameData","yuvParams","contentLen","Nl","flvHeader","scriptData","seliceSeq","xa","vy","_slices","_newSlice","_flvHead","bodyLen","_readSliceBody","_readSliceHead","sliceSeq","segmentId","posFlag","extended","gy","_contentTotalLen","_internalCallback","_slice","_firstReq","_nextRangeStart","_downloadEnabled","_currentReqLen","_connetced","_rangeWithoutPreflight","_defaultRangeLen","_onLoaderConnect","_updateContentLen","_onLoaderProgress","_request","_callbackProgress","_onLoaderAbort","_callbackEnd","onRangeEnd","isKwaiSlice","_unpackSlice","by","yy","Ey","_multirate","_baseTimeSec","_flvKeyDetector","_metadata","_keyframes","_appendFLVHead","_faststart","_loadEndCallbackonMeta","_hasContentLength","isFlv","localTimeOffset","getLocalTime","_onFlvSeekFirstChunk","_load","_onDownload","onLoaderRangeEnd","flvLoadEndError","_onMetadata","mp4FastStart","_onKeyFrameIndex","_onNotFaststart","_onDemuxerDetected","demuxerType","currentLevel","ih","_trans","_initSegments","_initSegmentReady","_mediaSegmentsBuffer","_getInitSegment","mediaTrackNum","retryWithBackup","_bindEvents","heartbeat","_resetInitSegments","waiting","working","ready","wy","_data","ctx","_bind","levelCnt","rh","_running","_updateTimer","_timeout","_onPreloadComplete","_stopTimeout","app","_onPreloadError","_onPreloadDownload","add","getNewCtx","setSrc","_stopUpdateTimer","_startTimeout","Ay","Ty","nh","VTTCue","hasBeenReset","SyntaxError","displayState","getCueAsHTML","WebVTT","convertCueToDOMTree","Sy","xy","values","has","alt","integer","percent","ah","Pl","so","align","Ly","endTime","region","vertical","line","lineAlign","snapToLines","Ry","regionList","cue","oncue","onstyle","onparsingerror","onflush","Cy","Ml","Ul","ky","ccOffset","new","prevCC","presentationOffset","_list","_listPos","_vttCCs","_styleNode","_onTextTrackChange","track","textTracks","addTracks","_getTextTrack","select","_removeStyle","_applyStyle","cues","removeCue","parseVTTs","getCueById","addCue","TextTrackCue","addTextTrack","innerHTML","removeChild","Iy","_sec1LoadDuration","autoLazyLoad","lazyLoadMaxDuration","lazyLoadRecoverDuration","_checkLazyLoadConf","smoothedDownloadSpeed","checkStreamingMux","_getLazyloadRange","_currentTargetDurationMP","_currentTargetDuration","_updateLazyloadConf","Bl","Nt","Dy","_startDelay","_enabled","_lastTickTime","tick","paused","_nextPlayBackRate","autoPlaybackRate","oh","_info","timeToIndex","isIndexInRange","indexToTime","getNextFramePTSByTime","getPrevFramePTSByTime","Oy","_media","_lastPlayTime","_lastCheckTime","_start","check","_customEvent","dispatchEvent","createEvent","initCustomEvent","Ny","Hi","SELECT_BITRATE","LOADING","dr","Vl","_error","_hbTimer","_levelSwitchId","_nextLevel","_nextAudio","_eventHandlers","loadedmetadata","_onVideoLoadedmetadata","loadeddata","_onVideoLoadeddata","canplay","_onVideoCanplay","_onVideoSeeking","seeked","_onVideoSeeked","_onVideoWaiting","playing","_onVideoPlaying","pause","_onVideoPause","play","_onVideoPlay","_onVideoError","_onVideoEnded","ratechange","_onVideoRatechange","durationchange","_onVideoDurationchange","timeupdate","_onVideoTimeupdate","_onVideoProgress","emptied","_onVideoEmptied","resize","_onVideoResize","_bindVideoEvents","_stopHeartbeat","_unbindVideoEvents","getError","seekToNextFrame","_getNextFrameTime","seekToPrevFrame","_getPrevFrameTime","getTotalVideoFrames","getCurrentVideoFrame","setCurretVideoFrame","getTrackBufInfo","_startHeartbeat","_heartbeat","_audioSegmentCnt","_state","_onDecVideoReady","_onDecWaiting","_onRenBufUpdate","_onRenSeek","_onRenError","seekWithLoad","decoderChange","onParsingData","Py","At","Fl","_mse","_seekOnCanplay","_internalSeekFlag","_waitingHelper","_audioCodecSwap","_mainTimer","_skipSeekEvent","_nextLevelMinBuffer","_seekRollbackTime","_videoDecProxy","_recoverMediaErrorTime","_eme","_autoLazyload","_nativeVideoFunc","_internalPauseFlag","_setLevelOnManifestParsed","_preloader","_playbackRateManager","_flvLiveRetry","_flvLiveRetryTimer","_liveEnd","_catchUpLive","_videoFrameMap","_lastTimeupdateTime","_onMSEBufferFull","stopLoad","_initMSE","_onMSEUpdate","isTimeinBuffered","_detectSeekOnCanplay","_seekWithLoad","_internalSeek","isCanvasRenderer","alwaysSeekKeyframe","catchUpPausedLive","HTMLVideoElement","_stopFlvLiveRetryTimer","_destroyTrans","_stopMainTimer","_stopVideo","_destroyDecoder","resume","_reload","_verifyLevelValue","_verifyLevel","isSwitchLevelByReload","_destroyMSE","liveEnd","jumpToLiveTime","totalVideoFrames","trackBufInfo","videoWidth","canCodecFallback","bufferedEnd","pausedOnWaiting","_internalPause","isActive","revokeObjectURL","_initTrans","_transmuxerEvent","_onParsingData","switched","audioCodecType","colorSpace","videoCodecType","videoDecoder","_startMainTimer","_onVideoFrameInfo","startIdx","_initSubtitle","emeEnabled","onRaw","_customWaitingEnded","oo","_initCanvasRenderer","mainThreadRendering","_injectVideo","_videoDecFrameReady","_videoDecStep","_h265Seek","_videoDecWaiting","_updateBufferControl","decBufLow","forceRenderOnSeekEnd","updateLiveShiftStatuByTime","_customWaiting","CustomEvent","_mainLoop","firstFrameLoaded","currentBuffer","nextBuffer","_jumpToBuf","_checkLevelChange","clearFrag","startPlayBufferSec","liveDelay","block","_recoverSwapRemuxType","_recoverSwapAudioCodec","_startFlvLiveRetryTimer","La","lh","uh","My","cr","MSE_AVAILABLE","MSE_API_AVAILABLE","playHEVCTest","isMSECodecStrSupported","canPlayType","isWebRTCSupported","isTypeSupported","wasmSmooth","WebAssembly","MessageChannel","port1","SharedArrayBuffer","validate","_simd","_isSupportSimd","_isSupportThreads","_wasmSmooth","isSupportThreads","_playHEVCTest","Ra","Uy","By","_decInline","_decW","Vy","Fy","_initCache","_d","_decAppendActive","_libCacheHit","_activeTimes","decAppendActive","_simdEnabled","_threadsEnabled","_lastDecoder","_nextSeek","_libLoader","_decBufLow","_onDecLibLoaded","_onDecImg","_onDecSeek","_onDecSeekAbort","_onDecMediaInfo","_onDecInitComplete","_updateMediaInfo","wasmSimd","wasmThreads","wasmDecoder","_onDecBufLow","_onDecError","_loadLib","_onRenExp","isSupportSimd","maxVideoDecThreads","_getThreadNum","co","resourceBuffer","resourceBufferSize","ntp","adaptive","sdpConnectionTimeout","peerConnectionTimeout","peerConnectionMaxRetry","peerConnectionRetryDelay","jy","ns","isStreamingSupported","_streamingSupported","processConfig","_initPlayBackRateRule","zy","_lastDroppedFrames","_lastDecodedFrames","_lastTime","_decoded","_dropped","getFPS","droppedVideoFrames","decodedFPS","droppedFPS","_h","_traffic","_streams","_download","_trafficGroupedByVCodecType","_trafficGroupedByLevel","_currentLoad","_contentLen","_fillA","_fillV","onStreamOpen","startPos","loadTimeCost","keyFrame","videoDataRate","audioDataRate","onMediaInfo","setRTCStats","totalReceive","onDataReceive","_calculateDataRate","downloadInfoByRange","reduceRight","as","Hy","$y","Wy","dh","_startIdx","_currentIdx","_nextIdx","_audioIdx","_audioTracks","_subtitleIdx","_subtitleTracks","_abrLevels","_default","_availableList","_generateAbrList","hh","_src","_srcUpdateTime","_originSrc","_streamingMuxEnabled","_streamingMux","_liveDelay","_fps","_yuvParams","_setConfig","_destroyLevels","_destroyCanvasOutput","videoPlaybackQuality","corruptedVideoFrames","creationTime","getStreamTime","hasChangeCore","retryInfos","change","_resetStat","_processSrc","reProcessSrc","startFrom","interval","coreType","fallback264","mixManifestEnabled","baseURL","getVideoPlaybackQuality","webkitDecodedFrameCount","webkitDroppedFrameCount","streamingMuxEnabled","instanceCount","Dr","REALTIME_BEACON","EVENT","Er","jl","Gy","fh","NORMEL","END","LEVEL_SWITCH","FIRST_FRAME","Ky","qy","getRandomValues","msCrypto","Yy","Xy","$i","zl","Hl","mi","Ti","Zy","Qy","random","rng","Jy","ph","mh","vh","support_mse","support_aac","support_h264","support_h265_mse","support_h265","support_av1_mse","support_simd","support_thread","support_hw","support_change_type","support_streaming","hardware_concurrency","wasm_dec_smooth","$l","session_id","sessionId","kernel_version","pack_name","packName","creation_time","src_update_time","srcUpdateTime","load_start_time","loadStartTime","instance_count","webdriver","onLine","on_line","gh","network_on_line","connection","mozConnection","webkitConnection","rtt","network_rtt","network_downlink","downlink","effectiveType","network_effective_type","saveData","network_save_data","bh","play_url","url_id","reuse","play_start_time","playStartTime","stream_duration","max_bitrate","play_pos","playPos","v_data_rate","currentLoad","a_data_rate","adaptive_multi_rate","use_backup","useBackup","play_to_end","playToEnd","v_decoder","video_codec_type","start_codec","startCodec","demuxer","core_type","kwai_slice","elem_crossorigin","crossOrigin","elem_autoplay","autoplay","elem_loop","loop","elem_volume","volume","elem_muted","muted","elem_preload","elem_controls","controls","elem_ready_state","elem_network_state","networkState","play_hevc_test","live_shift_enabled","stream_id","cdnIP","cdn_ip","customeHttpHeader","quality_label","startQualityType","start_quality_type","deviceMemory","device_memory","gpu_renderer","wasm_dec","wasm_dec_simd","wasm_dec_threads","yh","screen","screen_w","screen_h","colorDepth","screen_color_depth","Eh","src_type","stereo_type","mix_codec_input","mix_container_input","mix_codec_available","fallback_264","wh","playDuration","playStartMS","actualPlay","actualPlayDuration","actualPlayStartMS","pauseDuration","pauseStartMS","bufferTime","bufferingStartMS","BLOCK_START","BLOCK_END","SEEK_START","SEEK_END","LIVE_STOP","STOP","DESTORY","QUALITY_CHANGE","QUALITY_CHANGE_DATA","QUALITY_CHANGE_RENDER","SPEED_CHANGE","AUDIO_OUTPUT_DEVICE_CHANGE","NETWORK_CHANGE","VIDEO_DOM_EVENT","FIRST_SCREEN_RENDER","PREPARED","METADATA_LOAD","START","DEMUX","SEGMENT","Ah","detailName","eE","_complete","_lastEventTime","_details","process","onDownloadError","download_retry","onRetry","tE","_snapshot","_tickIndex","_statTimestampMillis","_statTimestampMillisUTC","_firstScreen","_firstScreenDetails","_firstScreenDuration","_clickToFirstFrame","_errorCode","_errorMessage","blockCount","pauseCnt","renderBlockCount","seekCnt","seekLoadCnt","decodedFrames","droppedFrames","segment","preloadCount","fillA","fillV","onLineChange","visibilityChange","heartbeatTimeout","loadCnt","refreshCnt","_resetForNewInterval","_updateSnapshot","setFirstScreenDuration","setError","tick_index","tick_start","tick_duration","block_cnt","render_block_cnt","decoded_video_frames","dropped_video_frames","segment_cnt","play_duration","buffer_time","actual_play_duration","played_video_duration","download_speed","seek_cnt","seek_load_cnt","pause_duration","pause_cnt","preload_cnt","on_line_change","visibility_change","heartbeat_timeout","load_cnt","refresh_cnt","mediaBufferedSec","a_buf_start","a_buf_end","a_buf_len","a_buf_slices","bufferSliceNum","v_buf_start","v_buf_end","v_buf_len","v_buf_slices","buffer_queue_cnt","v_rec_delay","v_render_delay","a_render_delay","fill_a","fill_v","mse_update_cnt","mse_remove_cnt","key_frame_cnt","live_shift","lazyload_min","lazyload_max","first_screen_total_duration","first_screen_details","mp4_moov_size","mp4_fast_start","click_to_first_frame","Th","Sh","iE","_beaconTimer","_creationTime","_runningStartTime","_firstFrame","_realtimeBeacon","_hiddenStart","_playing","_seekLoadFlag","_seekingThrottle","_seekedDebounce","_onOnlineChange","triggerEventReport","online","_onVisibilityChange","_sendRealtimeBeacon","seek_record","seekRecord","seekDuration","seekLoadDuration","seekStartTime","startBitrate","smoothBitrate","errorCode","errorMessage","firstScreenTotalDuration","clickToFirstFrame","lastHeartbeatTime","onLoaderChunkArrival","_processFirstFrame","onMediaConnect","onMediaDemux","onDecLibLoaded","decLibLoadDuration","decLibCacheHit","onDiscontinuity","complete","first_screen","videoBuffered","audioBuffered","fillAudio","fillVideo","lazyloadMin","lazyloadMax","audioRenderDelay","displayDelay","recDelay","_stopBeaconTimer","onPreload","onLoad","initial_speed","onStopLoad","_waitingEnd","onManifest","onLevel","onAudioTrack","sid","hardwareAccelerated","streamHost","gpu","onSegment","onSEI","onPlay","_startBeaconTimer","onLoadeddata","onCanplay","onPlaying","_playStart","_pauseEnd","onPause","_playEnd","_pauseStart","_waitingStart","to","onSeekWithLoad","_resetBeaconTimer","onSeeked","onTimeupdate","mediaCapabilities","levelSwitching","trigger_mode","is_smooth","levelSwitched","levelSwitchPlaying","onAudioSwitching","onAudioSwitched","retry_type","retry_message","onRefresh","onRateChange","error_type","_onFirstFrame","firstScreenDetails","initial_rate","inital_quality_type","a_codec","v_codec","channels","sample_rate","streams","decSimd","decThreads","remux_process_type","hidden_start","current_running_time","running_time","smooth_bitrate","start_bitrate","retry_record","traffic_vcodec","trafficGroupedByVCodecType","traffic_level","trafficGroupedByLevel","seek_duration","seek_load_duration","start_sec","browser_name","browser_major","coded_width","coded_height","enhanced_flv","mse_buffer_full","mse_remove","unknown_ts_packet_count","audio_non_monotonous","aac_overhead","dec_lib_load_duration","dec_lib_hit","rE","_callbackFunc","_detectEnd","_onReadystatechange","nE","_httpStatusDetector","_setStartFromOnTimeupdate","_startLoadLevel","_applyStartFrom","videoHeight","aE","_prevVideoTimestamp","_prevAudioTimestamp","_prevVideoReceived","_prevAudioReceived","_newInfo","bytesReceived","keyFramesDecoded","videoPacketsLost","packetsLost","audioPacketsLost","audioChannelCount","clockRate","frameWidth","frameHeight","videoAvgJitterBufferDelay","jitterBufferDelay","jitterBufferEmittedCount","audioAvgJitterBufferDelay","selectedCandidatePairId","selected","remoteCandidateId","rtcRemoteAddress","address","ip","ipAddress","rtcRemotePort","portNumber","xh","Lh","ki","Rh","_pc","_stream","_rtcStatParser","_retrying","_retryTimer","_retryCount","transmissionTimeoutTimer","_parseStats","getStats","_stopRetry","srcObject","_disconnect","connectionState","_retry","_createPeerConnection","_connect","fetchAnwserSdp","sdp","RTCPeerConnection","_onPCTrack","_onPCConnectionStateChange","_onPCIceCandidateError","_onPCSignalingStateChange","_onPCIceConnecttionStateChange","_onIceGatheringStateChange","addTransceiver","direction","_createOffer","_setAnwser","onconnectionstatechange","createOffer","setLocalDescription","signalingState","RTCSessionDescription","setRemoteDescription","getTracks","getSettings","iceConnectionState","iceGatheringState","_onIcecandidate","candidate","addIceCandidate","RTCIceCandidate","sdpMLineIndex","sdpMid","sE","_onVideoEvent","_onComplete","_startVideoTest","_clearTestVideo","It","_monitor","_hevcTest","_avcore","_loadLogLevel","_initLogger","_initAVCore","isSupport","videoCodecCapabilities","getTimeNow","setAvailableAbrLevels","availableList","getAudienceStat","audienceStat","getMediaInfo","experiment","seekByFrameIndex","_rendererChanged","audioTrack","subtitleTrack","_recover","_recodeRetry","snapshot","AE","createKernel","DownloadStatus","LOG_LEVEL","Ar","KEvents","REPORT_TYPES","CodecType","Decoder","DemuxerType","HttpRangeType","MediaBox","VideoDecBlockPolicy","VideoDropFramePolicy","VideoRendererType","WasmDecoder","StereoType","Oo","Os","TE","Fa","Ph","SE","Sv","Kt","CE","Mh","Zc","xv","Lv","xE","Rv","Cv","RE","Iv","kv","LE","Dv","kE","ge","AUDIO_TRACKS_SWITCHING","AUDIO_TRACKS_SWITCHED","LOADSTART","SUSPEND","EMPTIED","STALLED","LOADEDMETADATA","CANPLAYTHROUGH","DURATIONCHANGE","RATECHANGE","RESIZE","VOLUMECHANGE","ENTER_PICTURE_IN_PICTURE","LEAVE_PICTURE_IN_PICTURE","FULLSCREEN_CHANGE","TIME_SHIFT_PLAYBACK_CHANGE","ATTRIBUTE_CHANGE_CONFIG","ATTRIBUTE_CHANGE_SRC","ATTRIBUTE_CHANGE_VIDEO_ID","ATTRIBUTE_CHANGE_PREVIEW_URL","ATTRIBUTE_CHANGE_MASK_URL","ATTRIBUTE_CHANGE_PLAYBACK_SRC","ATTRIBUTE_CHANGE_CROSS_ORIGIN","ATTRIBUTE_CHANGE_PRELOAD","ATTRIBUTE_CHANGE_CURRENT_TIME","ATTRIBUTE_CHANGE_DEFAULT_PLAYBACK_RATE","ATTRIBUTE_CHANGE_PLAYBACK_RATE","ATTRIBUTE_CHANGE_AUTOPLAY","ATTRIBUTE_CHANGE_LOOP","ATTRIBUTE_CHANGE_CONTROLS","ATTRIBUTE_CHANGE_VOLUME","ATTRIBUTE_CHANGE_MUTED","ATTRIBUTE_CHANGE_DEFAULT_MUTED","ATTRIBUTE_CHANGE_POSTER","ATTRIBUTE_CHANGE_DISABLE_PICTURE_IN_PICTURE","ATTRIBUTE_CHANGE_PLAYSINLINE","ATTRIBUTE_CHANGE_DISABLE_ADAPTIVE","ATTRIBUTE_CHANGE_DISABLE_DOWNLOAD","ATTRIBUTE_CHANGE_DISABLE_MASK","ATTRIBUTE_CHANGE_DISABLE_HOTKEY","ATTRIBUTE_CHANGE_DISABLE_DANMAKU","ATTRIBUTE_CHANGE_DANMAKU_RENDERING","ATTRIBUTE_CHANGE_DANMAKU_CONTROLS_POS","ATTRIBUTE_CHANGE_DANMAKU_CONTROLS_POS_FULLSCREEN","ATTRIBUTE_CHANGE_CURRENT_LEVEL","ATTRIBUTE_CHANGE_NEXT_LEVEL","ATTRIBUTE_CHANGE_CURRENT_FRAME","ATTRIBUTE_CHANGE_AUDIO_TRACK","ATTRIBUTE_CHANGE_PREFETCH","ATTRIBUTE_CHANGE_SHOW_PROGRESS","ATTRIBUTE_CHANGE_SHOW_TIME","ATTRIBUTE_CHANGE_SHOW_NEXT","ATTRIBUTE_CHANGE_SHOW_PREV","ATTRIBUTE_CHANGE_BIZ_DATA","ATTRIBUTE_CHANGE_SHOW_INFO_PANEL","CLICK_NEXT","CLICK_PREV","CLICK_LOGIN","CLICK_REGISTER","CLICK_SEND_DANMAKU","CLICK_VIP","tr","SYSTEM","WINDOW","ja","VIDEO_INTERACTIVE","Tn","IE","DE","isFull","_recoverStyle","classList","_isFillWindow","_isSupportFullscreen","_getExitFullscreenFunc","_onFullscreenChange","requestFullscreen","requestFillWindow","exitFullscreen","exitFillWindow","isFullScreen","isFillWindow","_element","_originStyle","_saveOriginStyle","mozRequestFullScreen","webkitRequestFullScreen","webkitRequestFullscreen","msRequestFullscreen","webkitCancelFullScreen","mozCancelFullScreen","msExitFullscreen","fullscreen","fullscreenElement","webkitIsFullScreen","mozFullScreen","msFullscreenElement","left","top","zIndex","mozRequestFullscreen","right","OE","Ov","Nv","NE","Pv","PE","Mv","Uv","Bv","cd","e_","DARK","LIGHT","BOTTOM","PLAY_BAR","Bi","Vv","label","Fv","jv","zv","Hv","$v","Wv","Gv","Kv","qv","Yv","Xv","Zv","Qv","Jv","e0","t0","i0","r0","n0","a0","s0","Qi","UE","_plugins","findIndex","_instances","getLabel","beforeInstall","afterInstall","beforeUninstall","afterUninstall","Uh","BE","requestPictureInPicture","VE","at","Tr","_mainDom","_full","requestFull","exitFull","_updateCanvasSize","_posterLayer","packVersion","querySelector","playbackSrc","_playbackSrc","className","setAttribute","_onFullscreenchange","loadstart","_onVideoLoadstart","suspend","_onVideoSuspend","_onVideoAbort","stalled","_onVideoStalled","canplaythrough","_onVideoCanplaythrough","volumechange","_onVideoVolumechange","enterpictureinpicture","_onVideoEnterpictureinpicture","leavepictureinpicture","_onVideoLeavepictureinpicture","_videoLayer","_videoInteractiveLayer","_bindVideo","_pluginBase","initialize","plugins","beforeInstallPlugins","_parseData","_initKernel","afterInstallPlugins","_kernelStart","videoId","previewUrl","maskUrl","disableMask","_preprocessSrcFunc","_isTimeShiftPlayback","_preload","defaultPlaybackRate","played","seekable","_autoplay","_controls","defaultMuted","_videoWidth","_videoHeight","_poster","_updatePosterDom","disablePictureInPicture","disableDownload","playsinline","WebKitPlaysInline","removeAttribute","hasAttribute","_kernel","_livePaused","currentVideoFrame","currentLevelTimeInfo","productName","prefetch","showProgress","showTime","disableHotkey","disableDanmaku","danmakuRendering","showInfoPanel","showNext","showPrev","bizData","_preprocessURL","_kernelLoaded","beforeUninstallPlugins","_destroyKernel","_unbindVideo","parentElement","afterUninstallPlugins","register","deregister","getPlugin","_subContainerNumber","children","insertAdjacentElement","isFullscreenAvailable","backgroundImage","_setError","_setIsUseCanvas","poster","_resetPlayerStat","_onMutedChange","ci","FE","jE","Jn","$n","o0","zE","cs","ei","Rt","HE","tc","$E","WE","GE","lo","KE","c0","ic","Pt","qE","YE","props","Boolean","player","cid","watch","methods","isFullscreen","getPluginInstance","$emit","XE","$createElement","_self","_c","ZE","QE","render","staticRenderFns","_compiled","functional","_scopeId","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","$root","$options","shadowRoot","_injectStyles","beforeCreate","Bh","JE","ew","E6","tw","iw","ea","l0","Map","some","__entries__","delete","t_","rc","rw","nw","aw","sw","ow","cw","MutationObserver","lw","connected_","mutationEventsAdded_","mutationsObserver_","observers_","onTransitionEnd_","addObserver","connect_","removeObserver","disconnect_","updateObservers_","gatherActive","hasActive","broadcastActive","observe","attributes","childList","characterData","subtree","disconnect","propertyName","getInstance","instance_","u0","Wa","ownerDocument","defaultView","_0","Qc","nc","Vh","uw","getBBox","dw","getComputedStyle","bottom","boxSizing","fw","hw","SVGGraphicsElement","SVGElement","documentElement","pw","mw","DOMRectReadOnly","vw","broadcastWidth","broadcastHeight","contentRect_","broadcastRect","gw","contentRect","bw","activeObservations_","observations_","callback_","controller_","callbackCtx_","Element","unobserve","clearActive","d0","WeakMap","h0","yw","ResizeObserver","Ew","Fh","watermark","f0","super","_player","_container","_fit","_getContainerDisplay","getVideoLayer","getBoundingClientRect","getMainContainer","createSubContainer","_applyClassName","_observer","_updateDomPosition","removeSubContainer","i_","ww","Aw","In","_a","Tw","r_","Sw","xw","n_","Lw","Rw","Cw","freeze","kw","jh","Iw","randomBytes","readInt32LE","Base","extend","mixIn","$super","clone","WordArray","words","sigBytes","clamp","Hex","Latin1","Utf8","escape","BufferedBlockAlgorithm","_nDataBytes","_process","blockSize","_minBufferSize","_doProcessBlock","Hasher","cfg","_doReset","finalize","_doFinalize","_createHelper","_createHmacHelper","HMAC","algo","sin","MD5","_hash","HmacMD5","Nw","Dw","ld","Ow","zh","Hh","Pw","Mw","p0","Jc","Uw","m0","Bw","v0","Vw","Fw","ud","a_","Yr","$h","g0","Qr","b0","jw","zw","Hw","uo","$w","Ww","Gw","Kw","qw","Wi","ql","Yw","Xw","Zw","ls","Qw","_hashParams","rand","uid","auth_key","_processParams","setPreprocessURL","_addAuthKey","Wh","Gh","Ls","_verifyMixCodec","_verifyCZTVSrc","_parseCZTVSrc","_parseMixCodecCZTVSrc","_verifyMixContainer","_parseMixContainerCZTVSrc","vr","dispatch","_parseCZTVSrcVod","_parseCZTVSrcLive","QUALITY_MAP","weight","vtype","QUALITY_MAP_LIVE","cdnKey","defaultrate","800","1200","1500","4001","标清","高清","超清","蓝光","Jw","Kh","y0","cdnAuth","_cdnAuth","registerCDNAuth","cdnAuthParams","setPreprocessSrcFunc","_preprocessSrc","qualityMapLive","qualityMap","s_","eA","tA","pr","iA","rA","nA","aA","sA","oA","cA","lA","uA","_A","dA","hA","fA","pA","mA","vA","Ze","large","panel","disabled","timeline","thumb","overlay","overflow","closed","loading","wave","spinner","tooltip","preview","gA","bA","ta","Wn","yA","EA","us","ti","_s","wA","ac","AA","TA","E0","sc","SA","xA","Si","Yl","el","ft","w0","ia","qh","A0","o_","oc","T0","LA","xn","S0","parentNode","c_","defaultProps","No","__k","__","__b","__e","__d","__c","__h","__v","vnode","hn","dn","Ns","x0","base","Yh","__r","debounceRendering","__P","__n","ownerSVGElement","I0","L0","R0","C0","k0","nextSibling","O0","D0","lc","insertBefore","RA","uc","Xh","setProperty","cssText","Qh","Zh","contextType","__E","kA","sub","_sb","__s","getDerivedStateFromProps","componentWillMount","componentDidMount","componentWillReceiveProps","shouldComponentUpdate","componentWillUpdate","componentDidUpdate","getChildContext","getSnapshotBeforeUpdate","CA","diffed","localName","nodeType","createElementNS","childNodes","dangerouslySetInnerHTML","__html","checked","unmount","componentWillUnmount","Xl","firstChild","getDerivedStateFromError","setState","componentDidCatch","forceUpdate","N0","l_","IA","DA","OA","NA","PA","MA","UA","P0","Ga","M0","tl","dc","Jh","BA","VA","FA","zA","jA","HA","$A","WA","GA","KA","U0","B0","qA","YA","fontSize","_target","XA","Re","__source","__self","ZA","viewBox","transform","color","QA","JA","stroke","rx","eT","tT","iT","x1","y1","x2","y2","cx","cy","rT","nT","aT","sT","oT","cT","V0","points","lT","uT","$s","vi","Zl","ef","hc","F0","Po","tf","rf","nf","af","sf","il","__H","__V","mt","_T","j0","__N","Ut","dd","Di","Ot","Ws","dT","Mo","u_","hT","of","cancelAnimationFrame","z0","cf","lf","isPureReactComponent","uf","__f","fT","for","Gs","$$typeof","isReactComponent","displayName","pT","_f","H0","$0","Ql","__u","W0","__a","_o","__R","__O","df","revealOrder","mT","vT","gT","bT","yT","ET","hf","wT","AT","cancelBubble","TT","defaultPrevented","persist","isPropagationStopped","isDefaultPrevented","nativeEvent","ST","class","ff","multiple","defaultValue","pf","mf","xT","onChangeShowContextMenu","contextMenuItems","visibility","visible","onMouseLeave","onMouseEnter","onClick","handle","isChecked","Dt","REFRESH","TURN_ON_LOOP","TURN_OFF_LOOP","LOOP","PLAYBACK_RATE_NORMAL","OPTIONS","VIDEO_TRACK","PLAYBACK_RATE","PLAYBACK_RATE_SHORT","PICTURE_IN_PICTURE","EXIT_PICTURE_IN_PICTURE","PLAY_INFO","MIRROR_IMAGE","ROTATE","FULLSCREEN","EXIT_FULLSCREEN","WINDOW_FULLSCREEN","EXIT_WINDOW_FULLSCREEN","CURRENT_VOLUME","CURRENTLY_MUTED","SWITCH_TO_VIDEO","SWITCHING_TO_VIDEO","SWITCHED_TO_VIDEO","SWITCH_TO_AUDIO","SWITCHING_TO_AUDIO","SWITCHED_TO_AUDIO","ERROR_PANEL_TITLE","ERROR_PANEL_RETRY_BTN","LT","turnOnLoop","turnOffLoop","playbackRateNromal","videoTrack","playbackRateShort","pictureInPicture","exitPictureInPicture","playInfo","mirrorImage","rotate","windowFullscreen","exitWindowFullscreen","currentVolume","currentlyMuted","switchToVideo","switchingToVideo","switchedToVideo","switchToAudio","switchingToAudio","switchedToAudio","fail","errorPanelTitle","errorPanelRetryBtn","val","Gn","MIRROR","Ur","HOVER","DISABLED","Ps","CT","oi","kT","onClickRefresh","IT","Jl","checkedValue","onBack","onCheck","onClickPlaybackRate","onChangeLevel","currentAudioLevel","audioLevels","onChangeAudioLevel","showOverflow","Pa","paddingLeft","showPictureInPicture","onClickPictureInPicture","overflowItems","onClickItem","icon","Nr","setShowChildren","tip","lowTipPos","resetOnClick","isChildrenShow","contains","onMouseMove","DT","outerRotate","preventDefault","MouseEvent","clientX","changedTouches","clientY","PointerEvent","onChange","onChangeEnd","getTimelineHeight","stopImmediatePropagation","cursor","onMouseDown","onTouchStart","onTouchMove","onTouchEnd","beforeWidth","leftWidth","OT","onMouseUp","NT","videoInteractive","onclick","ondblclick","onDbClick","showPanel","onClickVolumeButton","find","backgroundPosition","hasPreview","getImgByTime","danmakuControls","dankamuControlsActive","opacity","onClickPlayButton","showRefresh","leftItems","showPlaybackRate","onChangeVolume","isInPicture","isWindowFullscreen","onClickWindowFullscreenButton","showFullScreen","onClickFullscreenButton","vf","PT","isShow","isMirror","innerRotate","getControlPanelDom","videoLayer","activeElement","getSelection","removeAllRanges","selection","empty","vrX","xAxis","vrY","yAxis","interactiveX","interactiveY","pictureInPictureElement","danmakuControlsFull","danmaku","isLoop","isPictureInPictureAvailable","showLoop","MT","G0","_i18n","_renderUI","_danmaku","_onSrcChange","_options","danmakuControlsPos","danmakuControlsPosFullscreen","_videoInteractive","getVideoInteractiveLayer","_adaptiveSize","_getText","ho","UT","BT","fr","VT","FT","jT","zT","Gi","eu","HT","$T","WT","Ms","GT","gf","Gr","fc","FormData","qT","service_name","KT","sendBeacon","tu","Ts","kwai_player_client_increment_id","identity","page","client_timestamp","client_increment_id","time_zone","stat_package","custom_stat_event","url_package","player_version","pack_version","YT","kwai_player_device_id","identity_package","device_id","global_id","user_id","app_package","package_name","product_name","version_name","device_package","os_version","model","need_encrypt","sdk_version","XT","summary","realtimeBeacon","ds","d_","resourceId","_id2String","userId","_reportTypes","_productName","biz","_getBizData","_sendSummary","_summaryAlreadySend","_extraSummaryFields","_bizSummaryFields","_onReport","reportTypes","_onBeforeunload","ZT","QT","_n","JT","eS","ra","tS","Kn","iS","rS","hs","ii","fs","nS","pc","aS","sS","K0","mc","oS","cS","yn","lS","_imgList","_parse","ontimeout","_updateListTime","onabort","_verify","spriteCount","spritePrefix","uS","q0","_cztvPreview","_clear","_onDurationChange","_onPreviewUrlChange","_destroyParser","_S","dS","Rs","iu","hS","h_","defaultDict","_langDict","langDict","_getLocalDict","_lang","userLanguage","f_","fS","pS","Cs","Y0","_logger","_check","appendSummaryField","_getHostname","_domainList","_send","_pickUrl","p_","mS","vS","Uo","gS","bS","na","qn","yS","ES","ri","ms","wS","vc","AS","X0","gc","SS","xS","Bo","rl","Tt","Z0","aa","bf","Q0","m_","bc","J0","LS","Ln","eg","RS","Vo","nl","Fo","Us","tg","yf","yc","hd","sg","ig","rg","ng","ag","cg","og","CS","Ec","Ef","Af","wf","IS","kS","DS","Ks","gi","ru","Tf","wc","lg","jo","Sf","xf","Lf","Rf","Cf","al","Ji","_g","ug","fd","NS","v_","PS","MS","zo","g_","US","kf","BS","VS","ir","actions","FS","Mt","Pr","jS","dataArray","fo","zS","rangeCount","getRangeAt","tagName","blur","addRange","focus","HS","If","$S","WS","GS","createRange","textContent","ariaHidden","clip","whiteSpace","webkitUserSelect","MozUserSelect","msUserSelect","userSelect","stopPropagation","clipboardData","clearData","setData","onCopy","selectNodeContents","execCommand","prompt","removeRange","KS","Df","qS","YS","onChangeShowEventLog","DID","playerVersion","dataStr","date","did","res","vBuffer","aBuffer","mediainfo","onContextMenu","dg","maxHeight","overflowY","_onChangeShowEventLog","hg","XS","ZS","Sr","Ca","KEEP_DOWN","KEEP_DOWN_END","SINGLE_DOWN","ar","ArrowRight","ArrowLeft","ArrowUp","ArrowDown","Space","QS","fg","_isValidInput","_disable","_currentKey","_isKeepDown","_emitKeepDownLastTime","_emitKeepDownInterval","_onSpaceDown","_onChangeRate","_onSeek","_getSeekTickTime","_onChangeVolume","_onDown","_onUp","_onKeepDown","_onKeepDownEnd","_onSingleDown","isComposing","innerHeight","innerWidth","JS","ex","pg","mg","_isMirror","_applyMirror","tx","ix","wn","vg","b_","Ac","nx","ax","sx","ox","lx","gg","Ka","bg","sl","Tc","Of","ux","_x","dx","fx","hx","px","mx","vx","gx","bx","yg","Eg","yx","Nf","Pf","wg","_mainContainer","_resizeObserver","_onPlayerRendererChange","_resizeLoop","_innerRotate","_normalizeAngle","_setInnerRotate","_outerRotate","_setOuterRotate","transformOrigin","Ex","wx","An","Ax","Tx","sa","Yn","Sx","xx","vs","ni","gs","Lx","Sc","Rx","Cx","pd","xc","pa","_delay","_updateTarget","_toFov","_delayTimer","eye","fov","sensorActive","needUpdateView","userInput","_startDleay","_stopDelay","AMBISONIC","BYPASS","OFF","f10","f15","f30","f60","texImageSource","texImageSourceStatic","setPixelRatioByDevice","pixelRatioByDevice","pixelRatio","startAnimation","startAnimationDuration","startAnimationDelay","maxFps","_z","setFromEuler","order","cos","setFromAxisAngle","multiply","multiplyQuaternions","normalize","slerp","copy","EPSILON","angle","rotateAround","applyQuaternion","subVectors","cross","crossVectors","divideScalar","multiplyScalar","lengthSq","dot","angleTo","acos","_order","DefaultOrder","RotationOrders","perspective","tan","invert","lookAt","multiplyMatrices","WEBGL_INIT_ERROR","WEBGL_PROGRAM_ERROR","SENSOR_NOT_SUPPORTED","SENSOR_INIT_ERROR","SENSOR_INIT_DENIED","AMBISONIC_CHANGE","AMBISONIC_FAILED","_screenOrientation","_deviceOrientation","_zee","_euler","_q0","_q1","_q2","_alphaOffset","_updated","_onDeviceOrientationChangeEvent","_onScreenOrientationChangeEvent","orientation","_setObjectQuaternion","connect","DeviceOrientationEvent","requestPermission","alpha","beta","gamma","dispose","hasData","_vy","_qy","_vx","_qx","_xAxis","_yAxis","_xAxisOffset","_yAxisOffset","_axisUpdate","setAxis","updateAxis","_up","_q","_device","_userInput","_sensorActive","_horizontalAngle","_deviceYOffset","_zAngle","_normalVector","_inputAxis","isReady","_getHorizontalAngle","yAxisOffset","axisUpdate","_getZAngle","up","atan","bindAttribLocation","_isVideoPlaybackQualityAvailable","_sourceFPS","_lastCalculateFPSFrames","_lastCalculateFPSTime","_lastRenderTime","_lastRenderAndUploadTime","_skip","_renderTimeRecord","_quality","drawn","texUploads","_seeked","detachMedia","attachMedia","setFPS","_source","_needUpdateView","_vShader","_fShader","_positionBuffer","_texcoordBuffer","_indicesBuffer","_texcoordLocation","_texture","_matrixUniform","_textureUniform","_inputType","_model","_eye","_fov","_updateTexImage","_projection","_view","_canvasWidth","_canvasHeight","_externalGLCtx","_isActivated","UNPACK_FLIP_Y_WEBGL","drawElements","indices","UNSIGNED_SHORT","_fpsCallback","_updateView","coordinate","textureCoordinate","_getInputType","_bindSource","powerPreference","_destroyWebGL","detachOutput","setAudioRenderingMode","_isCanvasResized","_recordCanvasSize","HTMLImageElement","_createAndSetupTexture","_initWebGL","program","vertexShader","fragmentShader","ELEMENT_ARRAY_BUFFER","Uint16Array","uniformMatrix4fv","quality","CURRENT_PROGRAM","isTBS","iOSVersion","isIE","_playPos","_animation","_animationPlayed","_skipUpdate","_stopPlayer","_onVideoStateChange","_isSourceReady","_startPlayer","_onImgLoad","WebGLRenderingContext","isSensorSupported","_unbindSource","horizontalAngle","toFov","outputResource","Lc","K360Events","AudioRenderingMode","MAX_FPS","ErrorCode","kx","y_","kernel","_vpp360","_onManifest","_onPlaying","E_","Ix","Dx","We","Ox","Nx","oa","Xn","md","Px","bs","ai","Sn","Mx","Rc","Ux","Bx","Ag","Cc","Tg","w_","kc","Vx","Fx","jx","zx","Hx","$x","Wx","Sg","qa","xg","ol","Ic","Mf","Gx","Kx","qx","Xx","Yx","Zx","Qx","Jx","e2","t2","Lg","Rg","a2","i2","Uf","r2","vd","n2","Bf","Vf","s2","o2","Cg","cl","c2","kg","l2","Ig","u2","_2","gd","A_","Xr","Ff","Dg","Jr","Og","d2","h2","f2","p2","Dc","PROD","STAGEING","DEV","m2","env","networkTimeout","networkMaxRetry","vodPullRangeSec","vodPullIntervalSec","vodPullMaxBufSec","xr","jf","Lr","v2","Oc","Nc","Ng","Pg","zf","T_","Mg","nu","g2","b2","Ho","Bs","za","Hf","E2","Ug","qt","S2","$f","ll","Bg","Vg","w2","Fg","jg","T2","Hg","zg","A2","$g","Dn","LIKE","CANCEL_LIKE","SETTING_UPDATE","L2","R2","_read","showDanmaku","opacityMultiple","fontSizeMultiple","durationMultiple","C2","_danmakuDataList","_setting","likeNum","createTime","_getUrl","_getBaseUrl","Action","ul","St","Wg","ca","Wf","Gg","S_","Pc","Kg","k2","Rn","qg","I2","$o","_l","Wo","Vs","Yg","Gf","Mc","bd","eb","Xg","Zg","Qg","Jg","ib","tb","D2","Uc","Kf","Yf","qf","N2","O2","Xf","qr","P2","M2","V2","U2","yd","B2","Zf","Qf","F2","j2","rb","dl","z2","nb","H2","ab","$2","W2","Ed","x_","Zr","Jf","sb","en","ob","G2","K2","q2","ep","L_","Y2","X2","R_","Z2","Q2","J2","eL","tp","hl","cb","C_","tL","k_","iL","lb","SHA256","HmacSHA256","rp","I_","rL","nL","_hasher","_oKey","_iKey","aL","sL","oL","po","np","cL","getUTCFullYear","getUTCMonth","getUTCDate","wd","secretKey","secretId","Authorization","SignatureVersion","AccessKey","lL","On","Ha","SCROLL","TOP","Ma","SMALL","MIDDLE","LARGE","Kr","ErrorMessage","ResponseMeta","ResponseData","Danmakus","LikeCount","Size","Color","UserId","CreateTime","Body","DanmakuId","verifyResponseMeta","verifyPullData","RequestId","PositionFromInclude","PositionToExclude","startsWith","Position","isMyLike","isLike","rank","Rank","isReviewed","IsReviewed","requestId","danmakus","danmakuId","Message","Result","ap","Ad","responseText","_retryCnt","_onXHRError","_onXHRTimeout","_onXHRLoad","ka","uL","parseSendData","_loaderEnd","_loaderError","_lastRequestTs","ResourceId","DanmakuType","GenerateType","sendUrl","service","fl","xi","au","sp","Bc","ub","Go","op","cp","lp","_p","Td","Ui","_L","db","kn","_b","dp","dL","hL","Ko","D_","fL","hp","Ua","fp","pL","Ke","mL","vL","gL","bL","yL","EL","yt","setup","login","wL","selectedTextColor","changeTextColor","backgroundColor","su","showStops","updateHandle","AL","selectedOpacity","selectedFontSizeObj","selectedSpeedObj","changeOpacity","changeFontSizeMultiple","changeSpeedMultiple","TL","sender","setting","fontSizeMultipleItem","durationMultipleItem","isVip","addDanmakuData","timeUpdate","placeholder","onInput","ou","SL","_sender","_renderPanel","xL","LL","parseLikeData","like","likeUrl","likeCancelUrl","hb","getContinuousRanges","list","_ranges","idx","_getHitIdx","_getAfterRangeIdx","RL","CL","parsePullData","_checkUpdate","_currentTime","_timeUpdated","getNextRangeByTime","pullUrl","kL","_getDanmaku","IL","DL","_density","scrollComment","OL","NL","PL","ML","Cn","scroll","barrage","center","UL","_pool","_createNum","_maxNum","role","BL","_dom","_onAnimationend","_initDom","_height","_width","_opacity","VL","FL","jL","_delayEmit","_updateLikeDom","_clearTimer","_delayVal","_likeIconDom","_likeNumDom","_onClick","zL","_like","dom","_isFromCurrentUser","_stageWidth","_scrollAnimationend","animationPlayState","remainingDistance","totalDistance","HL","$L","WL","recycle","_arr","_disposeComment","_updateContainerSize","_containerW","stageWidth","_getTrackH","_containerH","_renderAreatop","scrollDanmakuAreaRatio","_selectTrackIndex","_renderToTheTrack","mustRender","initAnimation","_scrollXSpace","remainDuration","_containerL","_scrollYSpace","GL","closest","_commentMouseleave","_globalPause","_commentContainerDom","_commentMousemove","_domPool","_scrollRenderer","getDanmakuDataByTime","KL","Mr","Ss","_danmakuRenderer","_danmakuPullerVod","_mockDanmakuPullerVod","_setActive","_mockEnabled","cancelLike","_onDisableDanmakuChange","_onDanmakuRenderingChange","_onBizChange","_onPause","_onTimeUpdate","_onLike","_onCancelLike","mock","mockDanmaku","_mask","addLayer","removeLayer","_infoDom","innerText","O_","CSS","supports","qL","YL","er","XL","ZL","fb","QL","JL","ma","pp","Zn","eR","tR","ys","si","iR","N_","rR","pb","Vc","Za","sR","oR","mb","cR","lR","vb","uR","_R","dR","hR","fR","pR","mR","vR","P_","gR","bR","yR","$r","M_","Sd","Z_NO_FLUSH","Z_PARTIAL_FLUSH","Z_SYNC_FLUSH","Z_FULL_FLUSH","Z_FINISH","Z_BLOCK","Z_TREES","Z_OK","Z_STREAM_END","Z_NEED_DICT","Z_ERRNO","Z_STREAM_ERROR","Z_DATA_ERROR","Z_MEM_ERROR","Z_BUF_ERROR","Z_NO_COMPRESSION","Z_BEST_SPEED","Z_BEST_COMPRESSION","Z_DEFAULT_COMPRESSION","Z_FILTERED","Z_HUFFMAN_ONLY","Z_RLE","Z_FIXED","Z_DEFAULT_STRATEGY","Z_BINARY","Z_TEXT","Z_UNKNOWN","Z_DEFLATED","ER","wR","AR","gb","flattenChunks","bb","Fs","TR","SR","xR","LR","U_","string2buf","buf2string","utf8border","RR","input","next_in","avail_in","total_in","next_out","avail_out","total_out","msg","data_type","adler","CR","mo","kR","IR","dmax","wsize","whave","wnext","hold","lencode","distcode","lenbits","distbits","sane","Ia","mp","vp","gp","cu","bp","DR","OR","NR","PR","MR","ks","UR","yb","Eb","yp","BR","vo","da","VR","FR","Rr","wb","Ab","jR","Ep","pl","wp","Ap","Tp","Sp","xp","Lp","Rp","Cp","kp","Fc","cn","lu","Ip","uu","Dp","Op","Np","Pp","go","bo","Mp","Up","Bp","Vp","Fp","_u","jp","zp","hi","Tb","Sb","zR","HR","$R","WR","Hp","GR","strm","last","wrap","havedict","wbits","ncode","nlen","ndist","have","lens","work","lendyn","distdyn","back","was","va","xb","Lb","Rb","Cb","KR","du","hu","$p","qR","kb","YR","xflags","extra_len","hcrc","XR","ZR","QR","JR","eC","tC","iC","rC","nC","aC","sC","oC","cC","un","inflateReset","inflateReset2","inflateResetKeep","inflateInit","inflateInit2","inflate","inflateEnd","inflateGetHeader","inflateSetDictionary","inflateInfo","lC","uC","Ib","_C","dC","fu","pu","hC","Wp","fC","Ys","chunkSize","windowBits","err","chunks","dictionary","xd","pC","onData","mC","vC","gC","bC","yC","EC","Inflate","inflateRaw","ungzip","constants","F6","wC","j6","z6","AC","TC","SC","xC","LC","masks","_maskRangeList","_compress","_parseVTT","_getRangeIdxByTime","_getMaskByTime","_loadMaskData","svg","Db","_kwaiMask","hasMask","_layers","_lastMask","getMaskByTime","sameAsVideoRotate","_isVideoRotate","_applyMask","layer","_removeMask","_refresh","_loadMask","_onMaskUrlChange","_onDisableMaskChange","_removeAllLayer","_removeAllMask","maskImage","webkitMaskImage","maskSize","webkitMaskSize","Gp","yo","Vi","ml","ur","RC","tn","CC","vl","kC","Eo","Ob","Nb","Pb","IC","Br","jc","Xs","Mb","Ub","B_","DC","qi","Bb","OC","NC","Zs","PC","MC","UC","mu","BC","Vb","gl","VC","FC","Ld","jC","zC","Qs","V_","HC","Fb","IS_HTMLDDA","jb","$C","Li","Kp","zb","WC","rn","vu","GC","KC","qC","bl","yl","Hb","gu","qp","Yp","Deno","Xp","versions","Zp","v8","$b","Qp","YC","Wb","sham","XC","Gb","iterator","ZC","QC","JC","ek","tk","Kb","ik","El","rk","nk","ak","nn","sk","Rd","bu","yu","Eu","ck","lk","valueOf","zc","uk","Jp","_k","Cd","dk","hk","em","fk","kd","tm","copyright","license","pk","mk","wl","vk","gk","bk","an","yk","Ek","wk","Ak","qb","Tk","Sk","im","xk","Lk","Rk","Ba","wu","Ck","withoutSetter","rr","kk","rm","nm","Ik","Dk","Ok","Nk","Pk","Mk","Uk","Bk","Yb","Vk","am","F_","Fk","Al","jk","zk","Hk","Xb","$k","Wk","Gk","Kk","qk","Yk","Xk","Zk","sm","pn","Qk","Jk","Zb","eI","tI","iI","rI","nI","aI","wo","om","sI","Au","oI","Tu","Su","xu","cI","lI","uI","ga","Hc","_I","j_","dI","Qb","hI","Id","fI","pI","Jb","EXISTS","PROPER","CONFIGURABLE","mI","vI","z_","gI","inspectSource","$c","zs","Wc","Dd","bI","yI","cm","EI","wI","AI","lm","Od","Nd","TI","e1","SI","xI","Lu","Ru","LI","RI","um","H_","CI","kI","II","Wr","facade","Da","Tl","enforce","getterFor","Pd","DI","OI","Ao","$_","NI","t1","MI","UI","_m","qo","BI","VI","FI","jI","zI","HI","getter","setter","arity","$I","WI","GI","KI","ba","unsafe","nonConfigurable","nonWritable","i1","qI","YI","XI","trunc","ZI","Md","QI","JI","eD","r1","tD","iD","rD","nD","Sl","aD","sD","oD","dm","cD","includes","lD","Cu","uD","_D","dD","hm","n1","Ud","hD","fD","pD","a1","mD","vD","gD","bD","yD","ED","wD","fm","AD","TD","SD","s1","xD","LD","RD","Js","kD","CD","DD","ID","NATIVE","POLYFILL","o1","ku","OD","ND","PD","MD","UD","BD","sr","dontCallGetSet","VD","FD","jD","zD","HD","$D","WD","pm","W_","GD","Bd","KD","qD","YD","XD","ZD","QD","JD","eO","tO","iO","Vd","c1","rO","nO","aO","sO","oO","cO","lO","uO","_O","To","dO","l1","hO","fO","mm","pO","mO","vO","gO","vm","gm","G_","K_","u1","Iu","_1","bm","parentWindow","bO","contentWindow","Yo","ActiveXObject","Fd","yO","EO","wO","cause","AO","d1","TO","SO","stack","h1","xO","LO","prepareStackTrace","RO","CO","kO","IO","DO","OO","ym","captureStackTrace","NO","PO","MO","UO","Em","BO","VO","FO","xl","eo","jO","zO","HO","$O","WO","GO","KO","f1","jd","qO","YO","Xo","XO","ZO","QO","JO","eN","Ll","callee","tN","wm","iN","rN","nN","aN","p1","sN","oN","cN","lN","uN","_N","dN","hN","Am","fN","pN","mN","vN","gN","bN","yN","EN","Tm","wN","AN","Sm","TN","Zo","stopped","xm","that","AS_ENTRIES","IS_RECORD","IS_ITERATOR","INTERRUPTED","SN","xN","zd","LN","RN","CN","kN","IN","Gc","DN","m1","Du","Ou","ON","NN","PN","MN","UN","BN","Kc","VN","Ya","Nu","AggregateError","FN","jN","zN","q_","Y_","ha","Pu","Mu","Rl","HN","$N","WN","Lm","GN","KN","X_","v1","qN","g1","IteratorPrototype","BUGGY_SAFARI_ITERATORS","YN","XN","ZN","Rm","Hd","QN","JN","e3","t3","i3","r3","n3","a3","s3","b1","o3","c3","Cm","km","l3","u3","Uu","_3","d3","h3","f3","Im","So","Es","Dm","ws","Om","p3","E1","w1","m3","$d","Nm","A1","v3","g3","xo","b3","T1","y3","E3","w3","kind","Pm","Arguments","A3","T3","S3","x3","L3","R3","C3","Cl","Mm","k3","I3","D3","O3","N3","P3","Um","M3","U3","B3","V3","F3","j3","S1","z3","H3","$3","W3","L1","Wd","G3","K3","As","R1","Hs","zn","Fu","ju","C1","q3","Y3","X3","Z3","Bm","Q3","J3","e4","t4","k1","i4","I1","Vm","Fm","r4","n4","a4","s4","o4","c4","D1","mr","l4","u4","jm","_4","O1","zm","d4","Hm","h4","f4","p4","Z_","setImmediate","Q_","clearImmediate","m4","Bu","Dispatch","v4","$m","g4","Vu","Is","Wm","Gd","zu","Gm","Km","nextTick","port2","onmessage","importScripts","N1","P1","tail","item","Oa","Wu","Gu","Ro","Jm","M1","b4","y4","Pebble","E4","w4","fa","qm","A4","Hu","T4","S4","x4","L4","$u","Ym","WebKitMutationObserver","Xm","Zm","Lo","Qm","J_","Co","ko","exit","enter","R4","C4","io","k4","ro","U1","I4","D4","O4","N4","Ds","P4","M4","U4","B4","V4","F4","Ku","j4","B1","PromiseRejectionEvent","z4","no","CONSTRUCTOR","REJECTION_EVENT","SUBCLASSING","Pn","ev","H4","$4","promise","Do","nv","cP","av","W4","qc","Nn","Xa","tv","G4","K4","q4","Qo","Y4","X4","Z4","V1","Kd","Q4","J4","eP","F1","Yc","qd","j1","kl","z1","tP","iP","qu","rP","Na","la","Io","H1","td","Yd","nP","aP","$1","sP","W1","oP","Xd","G1","K1","q1","rejection","uP","Y1","notified","reactions","lP","X1","initEvent","sv","Va","$a","rd","_P","Z1","Q1","dP","ov","return","hP","fP","pP","mP","Il","vP","gP","bP","yP","EP","wP","AP","TP","SP","nd","xP","LP","RP","cv","real","lv","CP","kP","IP","DP","OP","NP","PP","race","MP","UP","BP","VP","FP","jP","zP","J1","HP","$P","WP","GP","KP","qP","YP","ZP","QP","JP","allSettled","e5","t5","i5","r5","n5","a5","s5","o5","uv","any","c5","Xc","l5","ey","ty","u5","_v","_5","ad","d5","finally","dv","Zd","h5","f5","p5","m5","hv","v5","fv","g5","codeAt","b5","y5","iy","E5","pv","ry","w5","A5","T5","ny","S5","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","L5","Yu","mv","R5","vv","ay","C5","xs","Xu","sy","Zu","gv","Qu","oy","Ju","k5","I5","bv","D5","O5","N5","P5","yv","M5","U5","B5","V5","F5","j5","z5","H5","$5","Ev","En","filterReject","W5","G5","K5","sd","ly","q5","Y5","Qd","X5","Z5","Q5","J5","od","uy","e6","t6","wv","i6","r6","n6","a6","s6","o6","c6","l6","u6","_6","d6","h6","anObject","hasIndices","ignoreCase","multiline","dotAll","unicode","unicodeSets","sticky","android2","wechat","chinabluenews","getJSON","success","appId","nonceStr","signature","jsApiList","news_title","news_link","news_image","news_intro","onMenuShareTimeline","link","imgUrl","onMenuShareAppMessage","desc","onMenuShareQQ","onMenuShareWeibo","ua_str","TO_STRING_TAG_SUPPORT","classofRaw","$Object","CORRECT_ARGUMENTS","tryGet"],"mappings":"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AK,IAAIp2L,WAAW,CACtB,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,KACEq2L,GAAK,IAAIjoB,YAAY,CACvB,EACA,EACA,EACA,EACA,EACA,EACA,EACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,KACA,KACA,KACA,KACA,KACA,MACA,MACA,MACA,EACA,IACEkoB,GAAK,IAAIt2L,WAAW,CACtB,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,KACEu2L,GAAK,CAACn+M,EAAGC,EAAGxD,EAAGmF,EAAGC,EAAGC,EAAGyB,EAAGC,KAC7B,MAAMC,EAAID,EAAEm3D,KACZ,IAA0Ez2D,EAAG7E,EAAG8E,EAAGC,EAAGC,EAAcE,EAAhGb,EAAI,EAAGC,EAAI,EAAGC,EAAI,EAAGC,EAAI,EAAGhM,EAAI,EAAGiM,EAAI,EAAGC,EAAI,EAAG3F,EAAI,EAAG4F,EAAI,EAAGC,EAAI,EAAmBK,EAAI,KAC9F,MAAME,EAAK,IAAIwxL,YAAYynB,GAAK,GAAIh5M,EAAI,IAAIuxL,YAAYynB,GAAK,GAC7D,IAAe94M,EAAIC,EAAIC,EAAnBH,EAAK,KACT,IAAKhB,EAAI,EAAGA,GAAK+5M,GAAI/5M,IACnBc,EAAGd,GAAK,EACV,IAAKC,EAAI,EAAGA,EAAI/B,EAAG+B,IACjBa,EAAGvE,EAAExD,EAAIkH,MACX,IAAK9L,EAAI4L,EAAGI,EAAI45M,GAAI55M,GAAK,GAAe,IAAVW,EAAGX,GAAUA,KAE3C,GAAIhM,EAAIgM,IAAMhM,EAAIgM,GAAU,IAANA,EACpB,OAAOhC,EAAEC,KAAO,SAAwBD,EAAEC,KAAO,SA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","file":"static/js/chunk-50bc506d.1053ed62.js","sourcesContent":["var wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar test = {};\n\ntest[TO_STRING_TAG] = 'z';\n\nmodule.exports = String(test) === '[object z]';\n","var uncurryThis = require('../internals/function-uncurry-this');\nvar toObject = require('../internals/to-object');\n\nvar floor = Math.floor;\nvar charAt = uncurryThis(''.charAt);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\nvar SUBSTITUTION_SYMBOLS = /\\$([$&'`]|\\d{1,2}|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&'`]|\\d{1,2})/g;\n\n// `GetSubstitution` abstract operation\n// https://tc39.es/ecma262/#sec-getsubstitution\nmodule.exports = function (matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return replace(replacement, symbols, function (match, ch) {\n var capture;\n switch (charAt(ch, 0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return stringSlice(str, 0, position);\n case \"'\": return stringSlice(str, tailPos);\n case '<':\n capture = namedCaptures[stringSlice(ch, 1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? charAt(ch, 1) : captures[f - 1] + charAt(ch, 1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n};\n","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAYCAYAAADpnJ2CAAAAAXNSR0IArs4c6QAAAl1JREFUSEu9VT1oFFEQ/mbD6XGXmFsrsbONggHBUkWCIuJ/YaGWYiGicFjo3d7fXrSQiD+VWqqIhf+KIkHUUhBSmLR2YqHcqckZPbITdt/uuXn7dt/iia/bmfneNzPf7Dxyrh+fZsIIIocAsGR1bcGRffIFUTwxzdDCnUoDRFY4nFRcfoCOxg2LwxOzTfzkynoewFSkGA+pKFJViGtTZSLhycEoMUDOowkn2tJ/bzH2FA1PlO5tK02n+s4gc8j2uo1f1078IQzmIrDEtVWOC9JJwC8/dlUQ/rx4JFKhxxOyet/+ZeFZTZRPwmeLN33C8wdiWxp2qIqSyeW+h/G5M/cEYefc/v+iYe7sfUE419wb1VA3InEpJpScLz0UhLP27h68F0+ShqFvgQrtHEkrz6PA58uPfcLGLk1LwyOr2HZaQUTAYOWpIPzR2MnKTZHU1jSjKuGHqs8E4ffajmhLNRr+hYQYqj33CavbVSr4lKoNkFRenI+wov5CEH6rbNOqoBvaNP7hxkuf0BqbBZBPA+ojZm7Ynhz0KmxZW21iKsdfFjelCdO79Mdx12LTtF9ZvYa3y1vGwMY4gzf2UUUESkTvAKdUaL6e9H/PpTGt0uZ9ANlgXut6VLs0VUJE0wBb5vibB+F45SLiKox2d9NhADVmXiOe/nSHCB9dXCHz9hbVEXnYE2/6UB1Ztrq78ig7cPVdpaH8TIbR/JT5cmNdfeZ3XGyq1Lm2Ife1kz1JxKcZMCVQi5gumLn5y1R739H1IRVhcEnr1GhhIZMtgnDQszHuDnTnJ8xLU20dUeBfBPmwwws6GLZxAAAAAElFTkSuQmCC\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAYCAYAAADpnJ2CAAAAAXNSR0IArs4c6QAAAk9JREFUSEtj/H+n/ioDA6MWA13A/2uM/x/NbmL4z1hLF/sY/zcz/n+yWf8/E/MFTAv/Q4UY0aSQxXGpAWnBlGP899eA8f9/BsZfD9f/AxtLjFloasBcRjAiqJ9VPpAJrO7L1dlQY0BcmInkBDJ+/TzaqYxgC9+dbv8PdSMZtuALVlTjhEwrIBa+OFhCibeIdqSEfQ/Ewkc70yFRgZ4+oEYhuwam5D8WJxLSL+c2E6Lk3tZEuvhQyXs+xMKbG6IRFqLHO7Z0gCxGSD2SvHrAUoiFV9aEYvUhtdOsTshqiIXnl/vDshPWBIA1DrGoxJEE4BnNMHIjxMLTiz3/YykY8Kc+9NxARO4wjd0OsfDYPGe6JBqrpL0QCw/OsoVYiGYtSBZb8kfxOnI4EtBvn34YYuGeqeZ0iUOX7JMQC3dMMPzCwMDATXSRQV7y/epRcJ4HbOHmHu1mhv8MNZAinwxARIJhYGBo8S25Wgu3YkO7qst/RsbW////m8GsJM8jCAeDDWdkPMX4/391QOXtPWAuun9WtcgHMv5nbP7P8F8bJoeccGDlJc6yFFbRMTJc/c/IUBtW83A9sh1YA7G+noFJjVE6huHfvwYGBgZF3IGMNQzuMzAxNdz6/3RJYyPDP3S9eGNtVT0D24+/oqn//v6vYWD4L4E/dhlfMDEztnAwv54d1sjwC5daopLJzAYGLuZv/Pn///8rZWBgEEQz7D0jI1P3X66PE9MbGL4RSnJEWQgzZH4Bg8BPRo7i////h0PSA+NK9v8/ehMnMHwgZBFMHgCH1coK09HwvAAAAABJRU5ErkJggg==\"","var isObject = require('../internals/is-object');\nvar classof = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar MATCH = wellKnownSymbol('match');\n\n// `IsRegExp` abstract operation\n// https://tc39.es/ecma262/#sec-isregexp\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp');\n};\n","module.exports = __webpack_public_path__ + \"static/img/default.69865cf3.png\";","module.exports = __webpack_public_path__ + \"static/img/default.09e93624.png\";","var classof = require('../internals/classof');\n\nvar $String = String;\n\nmodule.exports = function (argument) {\n if (classof(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string');\n return $String(argument);\n};\n","'use strict';\nvar $ = require('../internals/export');\nvar call = require('../internals/function-call');\nvar uncurryThis = require('../internals/function-uncurry-this');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar isCallable = require('../internals/is-callable');\nvar isRegExp = require('../internals/is-regexp');\nvar toString = require('../internals/to-string');\nvar getMethod = require('../internals/get-method');\nvar getRegExpFlags = require('../internals/regexp-get-flags');\nvar getSubstitution = require('../internals/get-substitution');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\nvar IS_PURE = require('../internals/is-pure');\n\nvar REPLACE = wellKnownSymbol('replace');\nvar $TypeError = TypeError;\nvar indexOf = uncurryThis(''.indexOf);\nvar replace = uncurryThis(''.replace);\nvar stringSlice = uncurryThis(''.slice);\nvar max = Math.max;\n\nvar stringIndexOf = function (string, searchValue, fromIndex) {\n if (fromIndex > string.length) return -1;\n if (searchValue === '') return fromIndex;\n return indexOf(string, searchValue, fromIndex);\n};\n\n// `String.prototype.replaceAll` method\n// https://tc39.es/ecma262/#sec-string.prototype.replaceall\n$({ target: 'String', proto: true }, {\n replaceAll: function replaceAll(searchValue, replaceValue) {\n var O = requireObjectCoercible(this);\n var IS_REG_EXP, flags, replacer, string, searchString, functionalReplace, searchLength, advanceBy, replacement;\n var position = 0;\n var endOfLastMatch = 0;\n var result = '';\n if (searchValue != null) {\n IS_REG_EXP = isRegExp(searchValue);\n if (IS_REG_EXP) {\n flags = toString(requireObjectCoercible(getRegExpFlags(searchValue)));\n if (!~indexOf(flags, 'g')) throw $TypeError('`.replaceAll` does not allow non-global regexes');\n }\n replacer = getMethod(searchValue, REPLACE);\n if (replacer) {\n return call(replacer, searchValue, O, replaceValue);\n } else if (IS_PURE && IS_REG_EXP) {\n return replace(toString(O), searchValue, replaceValue);\n }\n }\n string = toString(O);\n searchString = toString(searchValue);\n functionalReplace = isCallable(replaceValue);\n if (!functionalReplace) replaceValue = toString(replaceValue);\n searchLength = searchString.length;\n advanceBy = max(1, searchLength);\n position = stringIndexOf(string, searchString, 0);\n while (position !== -1) {\n replacement = functionalReplace\n ? toString(replaceValue(searchString, position, string))\n : getSubstitution(searchString, string, position, [], undefined, replaceValue);\n result += stringSlice(string, endOfLastMatch, position) + replacement;\n endOfLastMatch = position + searchLength;\n position = stringIndexOf(string, searchString, position + advanceBy);\n }\n if (endOfLastMatch < string.length) {\n result += stringSlice(string, endOfLastMatch);\n }\n return result;\n }\n});\n","module.exports = __webpack_public_path__ + \"static/img/default.fbc5ab16.png\";","module.exports = \"data:image/png;base64,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\"","// import \"@/utils/jweixin-1.0.0\"\r\nimport { fenxiang } from \"@/utils/share1\"\r\nimport { GetQueryString } from \"../msg/guidePages\";\r\nfunction fn(id, herf) {\r\n setTimeout(() => {\r\n let urls = window.location.href;\r\n console.log(sessionStorage.getItem('shareTiele'))\r\n console.log(\"获取到的参数\",sessionStorage.getItem('shareLogo'))\r\n console.log(urls)\r\n var vote_id = GetQueryString('id');\r\n if(vote_id==170){\r\n fenxiang(\r\n sessionStorage.getItem('shareTiele'),//标题\r\n \"为小小艺术家加油!\",//描述\r\n sessionStorage.getItem('shareLogo'),//图片\r\n urls\r\n )\r\n }else{\r\n fenxiang(\r\n sessionStorage.getItem('shareTiele'),//标题\r\n \"\",//描述\r\n sessionStorage.getItem('shareLogo'),//图片\r\n urls\r\n )\r\n }\r\n }, 300);\r\n\r\n var AndroidShortUrl = 'chinablue', //安卓短路径\r\n download = 'https://ztv.cztv.com/ap/zt2023/download/index.shtml', //下载地址\r\n IosShortUrl = \"chinablue\"; //IOS短路径\r\n if (id != \"detail\") {\r\n setTimeout(() => {\r\n document.getElementsByClassName(\"bottomLogo\")[0].style.background = `url(\"https://ohudong.cztv.com/1/265908/png/logo.224f53c6.png\") center center / 100% no-repeat`; //logo\r\n // document.getElementsByClassName(\"page1\")[0].innerHTML = 'Z视介-视听新物种'; //显示title\r\n }, 300);\r\n }\r\n\r\n var url = encodeURIComponent(window.location.href);\r\n function removeURLParameter(url, parameter) {\r\n var urlparts = url.split('?');\r\n if (urlparts.length >= 2) {\r\n //参数名前缀\r\n var prefix = encodeURIComponent(parameter);\r\n var pars = urlparts[1].split(/[&;]/g);\r\n\r\n //循环查找匹配参数\r\n for (var i = pars.length; i-- > 0;) {\r\n if (pars[i].lastIndexOf(prefix, 0) !== -1) {\r\n //存在则删除\r\n pars.splice(i, 1);\r\n }\r\n }\r\n\r\n return urlparts[0] + (pars.length > 0 ? '?' + pars.join('&') : '');\r\n }\r\n return url;\r\n }\r\n var obj = {\r\n AndroidShortUrl: AndroidShortUrl,\r\n allUrl: url,\r\n // title: title, //网络请求获取\r\n download: download, //下载链接\r\n IosShortUrl: IosShortUrl,\r\n name() {\r\n console.log(1);\r\n if (window.navigator.userAgent.indexOf('chinablue') !== -1) {\r\n console.log(2);\r\n const iosScheme = {\r\n protocol: \"ChinaBlueTV\",\r\n host: \"CallingAppFlag\",\r\n };\r\n const androidScheme = {\r\n protocol: \"chinablue\",\r\n host: \"cztvrouter\",\r\n };\r\n const userAgent = window.navigator.userAgent || \"\";\r\n const options = {\r\n scheme: /iphone|ipad|ipod/i.test(userAgent) ? iosScheme : androidScheme,\r\n intent: {\r\n package: 'com.chinablue.tv',\r\n scheme: 'chinablue'\r\n },\r\n universal: {\r\n host: \"ztv.cztv.com/ap/zt2023/download/index.shtml\", //企业包\r\n },\r\n appstore: \"https://itunes.apple.com/cn/app/zhong-guo-lantv/id988616225?mt=8\",\r\n yingyongbao: \"https://a.app.qq.com/o/simple.jsp?pkgname=com.chinablue.tv\",\r\n fallback: \"https://ztv.cztv.com/ap/zt2023/download/index.shtml\",\r\n timeout: 2000,\r\n };\r\n const callLib = new CallApp(options);\r\n callLib.open({\r\n param: {\r\n route: encodeURIComponent(\"chinablue://cztvrouter/business/h5?path=\" + encodeURIComponent(window.location.href))\r\n }\r\n });\r\n } else {\r\n console.log(3);\r\n var u = navigator.userAgent;\r\n var isWeixin = u.toLowerCase().indexOf('micromessenger') !== -1; // 微信内\r\n var QQ = window.navigator.userAgent.indexOf('QQ/') !== -1; // QQ内\r\n var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1; //android终端\r\n var isIOS = !!u.match(/\\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端\r\n // 微信内\r\n // if (isWeixin) {\r\n // console.log(4);\r\n // document.getElementsByClassName(\"cover\")[0].style.display = \"block\";\r\n // } else \r\n if (QQ) {\r\n console.log(5);\r\n document.getElementsByClassName(\"cover\")[0].style.display = \"block\";\r\n } else {\r\n console.log(6);\r\n obj.allUrl = removeURLParameter(obj.allUrl, \"stemFrom\")\r\n obj.allUrl = removeURLParameter(obj.allUrl, \"sessionid\")\r\n // android端\r\n if (isAndroid) {\r\n console.log(7);\r\n //安卓app的scheme协议\r\n if (isWeixin) {\r\n console.log(8);\r\n console.log(isWeixin);\r\n document.getElementsByClassName(\"cover\")[0].style.display = \"block\";\r\n } else {\r\n console.log(9);\r\n console.log(isWeixin);\r\n const iosScheme = {\r\n protocol: \"ChinaBlueTV\",\r\n host: \"CallingAppFlag\",\r\n };\r\n const androidScheme = {\r\n protocol: \"chinablue\",\r\n host: \"cztvrouter\",\r\n };\r\n const userAgent = window.navigator.userAgent || \"\";\r\n const options = {\r\n scheme: /iphone|ipad|ipod/i.test(userAgent) ? iosScheme : androidScheme,\r\n intent: {\r\n package: 'com.chinablue.tv',\r\n scheme: 'chinablue'\r\n },\r\n universal: {\r\n host: \"zmtv.cztv.com/ap/download/index.shtml\", //企业包\r\n },\r\n appstore: \"https://itunes.apple.com/cn/app/zhong-guo-lantv/id988616225?mt=8\",\r\n yingyongbao: \"https://a.app.qq.com/o/simple.jsp?pkgname=com.chinablue.tv\",\r\n fallback: \"https://ztv.cztv.com/ap/zt2023/download/index.shtml?111\",\r\n timeout: 2000,\r\n };\r\n const callLib = new CallApp(options);\r\n callLib.open({\r\n param: {\r\n route: encodeURIComponent(\"chinablue://cztvrouter/business/h5?path=\" + encodeURIComponent(window.location.href))\r\n }\r\n });\r\n setTimeout(function () {\r\n var hidden = window.document.hidden || window.document.mozHidden || window.document.msHidden || window.document.webkitHidden\r\n if (typeof hidden == \"undefined\" || hidden == false) {\r\n //应用宝下载地址 (emmm 找不到淘宝应用宝的地址,这里放的是 lucky coffee 地址)\r\n window.location.href = `${obj.download}`;\r\n }\r\n }, 2000);\r\n }\r\n\r\n }\r\n //ios端\r\n if (isIOS) {\r\n //ios的scheme协议\r\n const iosScheme = {\r\n protocol: \"ChinaBlueTV\",\r\n host: \"CallingAppFlag\",\r\n };\r\n const androidScheme = {\r\n protocol: \"chinablue\",\r\n host: \"cztvrouter\",\r\n };\r\n const userAgent = window.navigator.userAgent || \"\";\r\n const options = {\r\n scheme: /iphone|ipad|ipod/i.test(userAgent) ? iosScheme : androidScheme,\r\n intent: {\r\n package: 'com.chinablue.tv',\r\n scheme: 'chinablue'\r\n },\r\n universal: {\r\n host: \"zmtv.cztv.com/ap/download/index.shtml\", //企业包\r\n },\r\n appstore: \"https://itunes.apple.com/cn/app/zhong-guo-lantv/id988616225?mt=8\",\r\n yingyongbao: \"https://a.app.qq.com/o/simple.jsp?pkgname=com.chinablue.tv\",\r\n fallback: \"https://ztv.cztv.com/ap/zt2023/download/index.shtml?111\",\r\n timeout: 2000,\r\n };\r\n console.log(options)\r\n const callLib = new CallApp(options);\r\n callLib.open({\r\n param: {\r\n route: encodeURIComponent(\"chinablue://cztvrouter/business/h5?path=\" + encodeURIComponent(window.location.href))\r\n }\r\n });\r\n setTimeout(function () {\r\n var hidden = window.document.hidden || window.document.mozHidden || window.document.msHidden || window.document.webkitHidden\r\n if (typeof hidden == \"undefined\" || hidden == false) {\r\n //App store下载地址\r\n window.location.href = `${obj.download}`;\r\n }\r\n }, 2000);\r\n \r\n\r\n }\r\n }\r\n }\r\n\r\n }\r\n }\r\n return obj\r\n}\r\n\r\nexport {\r\n fn\r\n}\r\n\r\n\r\n\r\n","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABwAAAAYCAYAAADpnJ2CAAAAAXNSR0IArs4c6QAAAl1JREFUSEu9VT1oFFEQ/mbD6XGXmFsrsbONggHBUkWCIuJ/YaGWYiGicFjo3d7fXrSQiD+VWqqIhf+KIkHUUhBSmLR2YqHcqckZPbITdt/uuXn7dt/iia/bmfneNzPf7Dxyrh+fZsIIIocAsGR1bcGRffIFUTwxzdDCnUoDRFY4nFRcfoCOxg2LwxOzTfzkynoewFSkGA+pKFJViGtTZSLhycEoMUDOowkn2tJ/bzH2FA1PlO5tK02n+s4gc8j2uo1f1078IQzmIrDEtVWOC9JJwC8/dlUQ/rx4JFKhxxOyet/+ZeFZTZRPwmeLN33C8wdiWxp2qIqSyeW+h/G5M/cEYefc/v+iYe7sfUE419wb1VA3InEpJpScLz0UhLP27h68F0+ShqFvgQrtHEkrz6PA58uPfcLGLk1LwyOr2HZaQUTAYOWpIPzR2MnKTZHU1jSjKuGHqs8E4ffajmhLNRr+hYQYqj33CavbVSr4lKoNkFRenI+wov5CEH6rbNOqoBvaNP7hxkuf0BqbBZBPA+ojZm7Ynhz0KmxZW21iKsdfFjelCdO79Mdx12LTtF9ZvYa3y1vGwMY4gzf2UUUESkTvAKdUaL6e9H/PpTGt0uZ9ANlgXut6VLs0VUJE0wBb5vibB+F45SLiKox2d9NhADVmXiOe/nSHCB9dXCHz9hbVEXnYE2/6UB1Ztrq78ig7cPVdpaH8TIbR/JT5cmNdfeZ3XGyq1Lm2Ife1kz1JxKcZMCVQi5gumLn5y1R739H1IRVhcEnr1GhhIZMtgnDQszHuDnTnJ8xLU20dUeBfBPmwwws6GLZxAAAAAElFTkSuQmCC\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKwAAAAsCAYAAAD4gVMAAAAAAXNSR0IArs4c6QAAC0dJREFUeF7tXWt0VNUV/s6dd96TSYAwCQQikGgF1Agi9QFCiyhIUEGqPJa4WgVLsV26CC1QsEJXa5csJNFaHyAgVTBBINhVeRapPAKVICaAgZhkSGAmmWRmksyd1+k6J8wwkwQyQZeJc+/5k8yd89rf+e6+++y97xmCGyiULhPctcOzqYeOFQjuoMAQACkUiAWguYEu5SaRi4BIADuAGgKc8VEcJ0qyV9Xny2JClvu6KjbpSgNatcPoIp75AH0KQFpX2sp1ZQTaIFAFkI1qqswjaZNM4aITFmFt1QUGLSErKKVzZQ0aLrRyvTAREAkh7zgpXRqXOrWuszadElY0bZtOqG8tBZI660z+XkbgRhEggIUS4XmNccqH1+vjmoSldJ/SfbFhDaX0WQCdEvtGJyq3kxEIQoASQt5U9U1YQMgYT0fIdEhEWvWRzkWUWwA8JMMpI9ANCBSpqedxkjatpe3Y7QjLNKvLZN0mk7UblkkeMhiBIrVRP6Wtpm1HWJepMJ9S+pyMnYxAdyNACHlDbcyZFzyPEMKyDRaob7Nss3b3UsnjX0GAgggzgjdiAcJy1xVQJnsDZLL0JASY98AJZPpdXgHCukyFeZTSEPXbkyYuz0W6CBBC8tXGnPkMAU7Y1giWu1wOCkiXFD1cclFNVRksIsYJK1YXrgRobg+f9A82PW9TMx9LER3V6ZjU64WvRYSg04AoFCH1qc8Hn6MZRKuBoFZ12pfP5QYIgaBS8rqUUsDrA1GG9ttpRxFZgazSpOYsJiyRxWUaViHnBlxdZdMrf+cfjL//VadL3/x1OWr++i76vvQ0dFkZIfXdlyyoXPQakufkIO6+7HZ9eZta4DbXQ5tu5N9V/zEPQrQOfV98mn+2fX4C5ncL0GfhLEQPHdzpXCK8QpXaeDKduGoKR1AvPRLhwnZJvB+KsJbNRWj87L+IvfdOJP1iIi6u/EeAsM5vKnHx1fdARReIRh2Yvy5zAFIWzuqSPJFSmSjISCJWFSwCwapIEaorcnjqG8FI07a0lF3glxg52pbkmZOhiIuBr8UJVk+sqoW1cDcSp46D7pabQD1euC9e5s08tib+Xczdw6Eb1J9fY+ZB7F3D+P/MBGjYdQDW7fuRNGsy7PuPQYjSImrYENR//BlUvQyIu/9OXpeZHvUf70b07Vno/ez0rogZOXUpcom7umCLD3gscqQKXxL2OL6Ux9zOocVVa+EX1H3a5/v0+c1MKPVxECtrUL1sbUjDqOGZUCbGw7b32g8spSEB/V99MaQd06aagamoXp4PRUwUlMl6eO3N0N7UD95GOwzTJsDyQRFsew5zM4Vdl2IRgK3EVV1QQoFbpQjAtWQOxySgbg/cFiuc5ZUwv1OAXnMfhe6WDFh3HoCj+Cv0e2Uht09NK96AYcZDiL17OCed82xFCGGZpnYUn0bj3iNwVZiguzkDKb+dDSIIaC49j9rXN0KZEAd3rQX6yWOQmDNOsktFgFPEZSowUyqnDgazIBzC+uu33XSZN2xH0/HTSF+di7abrsvvFaLl9DecsD7Rjdq8D9BSWg54vNBmDYS7xgx1315IeWE2nOe+hf3wSTgOn2TuAiROm4CEcaMkS1ZuThFYiFhd4JSi/9XTYEfDp//pkACOo6f49ZgRHT94Eh66D8q4GF7HT1j9I2Phc4pgmjccwrK2l97eCmV8LGJGDYcmtXfASxA3ZgQ3VQSdln+XMPEeqAwJkibrFeFFyRLWVWOGX5MGmEApfM1OEJUS5Dp+09Qlz0HV2wCP1YbG3V+gYVcr8WNH3w6iUcH++QnE/vR23hfTkNrMAVxztpSeB3W529mw/vHZjcLGph4PHMdL0XvuVP5ZLgEEROK88FEjUSnjZFDAyWfZtLPV7zmMvVcJNJ86C03/vtwzEFyaTp5B7er3A5fYLj9+zEgwk8C2/xjUqb058dwXzXwjJsREwVPXCEGrDhDWfqSEP+7bFnYDMGLrpzzQflkIQezIoZJcLur22EjdsbdsMSlJ7G1XSRevoxmVua9BnZIEY+4vucHktTnw7Ut/gzYjDSm/m8M3Qv7CTIrGPV9AqY+HZcP2QOAgXBuW9VP+zFLA6+0a7goFMt5e0bU2EVLbUWOxk/NbljiNo26T/KvZtfmbue2ZunQe16j+Yjt4nEebEh8dD/3D97db+hvddLGO3Jfr2/VXV/AZmo6UcFMgOvsWJE5p7xVQ9UqMEAp2TQzTF/8TybE/zXQOnZMjacI2/PsQ6jbvQsLkMTB04DbiZD7xNYx/eDYQRvVD/V0IG7xcLH+h7sNPYT94AvHjR0GdlsJvFGYLG554MKy8hq4t/4+vdsm6QpEUPX6nedxruZJ8I5YlpzQUHUB9wW6o+iTBMH0C3yh57U3ccc//2hzcn+o2XeZ2aeqy+SHJKE0ny1C7ekOIScA2XTF3DePRsKZjX0E7qD9UKcncB8u8CP7AARtfLK+C/egpOA6dgM/tQeKUB5Aw8V4QQtC47yjqNheBKJWIGTWM96kdkCrZZJjdL6yykPU3J5ZM3vSXW6OSpfeY8TlduDB/BeC7svFhmVIssypaB0VsNBSxUfyvEBvNY/q2fUdhmDERCT8bzdVT5ZI18JjrQUU30lYuhDol+cqm6ygPq7YtLGolROk4YVk0jUW2qFPkuQKMkPoH70Xbxz27WaxFB7i3gY3DvBf9Vr3AN3JSKs3memx/8qVTZH1mwpahzzz22M1PTJSS/AFZxepLEDQqTiSeIhi0sQoGhKX6WbftQfy4UZzErDD7lmdbDUhF9G1Z/Jrj2CmeX2CYOr4dnsxtxYiaOHkM/67+k71ca0f9ZBCEoASXjhbCJ7rQfPobeMxWJPy89YaRUvn6n7tQ8vbWreS9TP2iqGT9qknv/xkK2ecnJQ78aGT1uj3YMWsRms3WXLJ+cNwIqlAcyV7wFAZNar3z5SIj0JMQOLdjH4rXbATxekeSZYAwIEtfoY6LTnv43ZXQxIc6yHvSxOW5SA8BsdGBnU8vhsvWVHWh1JrOX5FZl6lfCYLcfvePwOjFrU5zucgIdDsClOLQyrdQuf8oQLFqTpl1MWfm+sE6o0+hKScgmuwFMzFoUnsHebdPXp6A5BA4t2M/itdsAAUVBa+YMftsS+tLiJy0Wfo8CswjCgH3LP81jBKNV0uOFT1UYNOREhxc9jooewkTyJ9dar36mjcnbGasgUJRBkKSFBoVRi+ZJ5O2hy5mpE+LkfXQy/nwim6WHGQh8GbOLrPzs2NDjNX1WfHTKQR+VBHTtHfMfxKDHr5PtmkjnSE9RT5KcW7nARzP28Q1K3uVjcA3Y3ZpY+DM2Ha7q3VZ+nwAgcPg2EYs+/knZe9BT1nUCJ0H8wYUr93UusG6Wt6YU2q99mFwrN4yQDkgU78N5OrZsOq4aAydk4OBE+6RgwsRSpjuEosFBc7/6yBK1hUy19XVaVAUXSizTlkOhBxs3KH/6qNU6Jpj9FuCSct60iXpMfiRsUh/4C5IMfeguxY1EsdluQEVew7j7Cd70WKxhopIURTlsD4+rRqdH2jsb8k1bZZ+DYD2R8YTAsOQdPQangXD4HTEpvaGzpAApU4ra+BIZNd3kIlpUA87w6GuAfbqS6g7W4HLX5ai7kxFR29bsCykNy+UWhe01az+KXQaIeAbMUrWMu/Bd5i33FRG4PoIMG8Aoc8Hb7A6atApYf0uLxDlCh/oXBZckLGXEfi+EOBBAZB3QD1L/a6r6/UdFmH9HbCIGBW080Eg/7Dc97Vi0u2nChQbic+ZxyJY4cLQJcIG2bfCwMFx2T5BMVYAvYMSMoSAXvnpTlkDhwu+NOpR/tOdFKSGUHrGB3Jc8Hn3nj9rK14OdPmnO/8POSW8VaPB8doAAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEYAAAA8CAYAAADbl8wjAAAABGdBTUEAALGPC/xhBQAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAAARqADAAQAAAABAAAAPAAAAAD+j9pMAAAN2ElEQVR4AcVbbahmVRV+z3vvNMZMRpEp4qjpjGXB0Af9i7I/Ef0JpB8RagiTBjWRUFFqRmYfVGBkQZYgSIE/wrAfEaQkEf0RI4TCrzF1BtEMI5oZZ7z3nrfnWWs9++yzzrn3zKsz43bmXWvvtdazPvba+5z7zrX50ENXXN+2i3NmGItmgT8N/iwWnIsn5XzpQSsiyVq8oQ/RlvW/rL7FoRjoXnzEIzwInls9c/X1j24sFpcOw/R8ZDsmlyxwh56GkUCVRfbCd7wXfrqOfY8N8Bf4j5SjL7Wl3sc0vqs3s5UHVne0Ox6abd+42pamkHtuMJny1MwRbQs9UBvgZ+RJMab8vVb4x1f+Stezax7/yt0I8nzySw2cOmw+Ngx0bEhGihGn1E4o59XJNbnhyIb61AkKMqlfYgl/3SZssjEEzaOZPfPzPd//5CrXz3zdzr/M2sVeZIme5gXjiQxtXEYdyrK+kvAsh4llvDx/9fZbxzf0N6I/n99NPRXm/sXG+g1IBQl3d0ADdoElUo5gbckWkn5nGwYTcjQaBtAZn+NX3rGQKsW7BJuBT8XjsTEgH4pd/mO5SLM/980YXAXcyrb7ycfCbHbrcz/5Bxphd2AYgTu2DttDnmsxjU1GGgLqkZe+eJMTB0zB6wkdIC9tiRd+ZEME8aQMIvvL8VKtG4vmievO+fw7uWAdQ6adrd0HmEtZ/a5D+jvC9Z6chhiqgmSkHAP9wD5ZcnNSfWR/FCk28m34Jx0bTTO/T+ulMEfXjr1Y9tLqDRXaaw9s6m3Mdh4budWLbeDlwmWMbK9jc6L+sv4UXpbP5s2LiqkU5qX1l1DRjbLLUqjp2I7U8px41l9WXmOTn8LLG5ETn/KvfqCvUpij60dxTDboHZ2ijlC7uMnUjuTABoFAQRh0nodkpBy5EFMdnPWz/+wv648X5uXDdlMJjCDiSTkyUJabUv3RryvK0i/MwD7p11DGMwzpcEE86QmMKf/z+UpB6XVMu8ndIe1cGOususPEk3KkRHJHuFL3mQPPiedCZv2MP4wXvlRMC69/Z85N6PFUhTmGPHCUasvCe6I5MIeoPuU06pILk+vW+Ro3YKPKhl5yojmegRwBqHgWZdqorK8oqFsV5uj05QsDYdNYPClHrkvJqnQQNKtMp+wHctiqGPQnnpQj+8/2plR9nGBhcMfAgcBov+yOTUaWItdukrq//nvTFF5OLB+lkozXbVg589p9zLWBWOo65mV0DJAUe6e+OSddT2ukgyZ2eHPkccmUv2yl5uzyTQhp57VBxCmFObZ+zApTg2dgdZM2YLAjg4UUyJR8Sj3bTwZYZzPNj16+NMtnNo6uHSnBlqJgwY4ClOpKS89oTtT6kRIKhv7wfQRSBx5/wuEg4Vc3MU0bbMu2Rl2NKsCcj1RE81GMb4lMXDqmjQAWLZAjkLxBAhT1G4lHqIqm5scqK+Ogujg5FY5ogarge/qBX6/14NFRns94ZWUn2syVeHWUuDX8so3h2ZseOKrVO8KArUsiYvGlY8wgDEFMTWvDqeNX6oMFFqSyx2zLkePzMJmPm3k+fo9yJes3VcuUjpm1/JYLPyvhP+1Y4AkXcsnowoG7NS5EFjoKtNSaWUzZmxKBu1HzpUru3xXD5wi+g0iX2gRTDOScLxvrnWFmXWF4mJmHGTukw7j7boWcR+sh5R3oMJaVu4/uM/tXSqQcLu8iHpcrWhbCY1OpZCnKO0ejFIZ3TO3OFHCO7Mst3RXpKeD6sqMFXbh7n42FsrVc4Zv/2FFfA7qda6Rf4uEaNCMf+e62qo5t3D6qa+7a0um9OwYyZepR+We1xoAsLQWmoELH6wadCLSGIU8z1dZk+i6PFCO3tpdZfeD5KwYzCL+K22TwrcLlpw7V5dL8YUFrhlfFXTrGTpJFDhUlLo+iyMqc1pkrOJrx8mJgusQURSROXFMv+JaFG5lbSKvEGLbDx2dUtfqKFvrCIAzis6cq1oRXUfNPUfjXaRCewqRtVxjq4z+9S1A42EE4tV2gc1egkSXjUy+cLjMGWeuLJ7VhAXaJcVrF7bZY7PTdS1TL8uvpQywManoHxWZygcN8OitbUo62eiyVwrT2IuNgFh0UvTuC0hIIvfec6BB7CaN+RCxKE7W18ZTbH1aTMkBimxQr68UwSt1s96GnjTCr/kcPP4DKWo63b1pyEX7ZAOiVwvhDiQETzQPveKy5xJOxGT6kJkq1gJBKTXMHUVZcmaJ8uz9bEnbosmiyEV8KCYF1ZShYx3NNO22A3QfVLOTwselRKkkpGLMCUMTp3RLnmIFShI+iHnztoAvDubKbnKbMMn625TxyNpF4UeIJw3St41K8xDBrum/QodVRjXWSrmMw8Qp2rV2iCM9eXe7ACY5U2Fx4FkmYRBQvfCYgCJNjYjGGgvgID5vkhzj+/Y4m/Ur6SvUZOxmlGn1c2x1DPfMyHlq+xRml1iyGcKkdKVtTFqBQ80g7UjFL/9oDuxhKPAJaM/yIrXRd7hDKuWZ6EUyP9P0pV+nDtIyuY3DpMUjKPFjtVtchBDB5OBZf4RVgZxzNkYSv4LiqstTVGuO1lvAsnlSIqih2x1hOdYQ1n8It7xnpKAGDf8oQL0rBGN+tkVPwgqmkDBpi7VDZ3WqrOu3OV7eWHoNWWq3JX0e1waKdpOY69CqM6o4pHaN9rI2DJ0aVt54AeswlcVHVHtnTAUp6SngH1jsucLfoz7xQWmNE4l07YqyI4ddHKxnkjqrfCspRYt29Y7oKVj46thJr50XNvnpM4Ve3HFOPKdoqOCKCN9uSmcCdxkMFX9K7e+6o//uzz2Vb/Au74AW+q1ssxgaeOklUG0ydUhi+WZm+tbsjZz8MQF1iDhhp1geI4oqTYyqmz48IiqxqqLpxbTAq/WIbayTCMLuxSlbxDbGBoByIpcDBd4Xhr4C18U+0sUX6KqX7oVNtHwgpED2h9LOH76hs6Nh57UyWW6IIKvK2Atc3SMZnxbVmSTMzxcQFA8KaAFUkUo6sH2//FJXC1D8SqHC8pGnbXdbFA21Dxi6yqb1cub7rid9M7plDN+xJaBnT0owlD0gtt8hUvORmba7dfwGL6SAeGJrPAiDPVWH8RwImyBPnCnb20C5GLWDny+Xp6uafrO0gbcOR/yock5FD8RFp0Q1/tEP03Z0BvuoAvaWSctDKxDaLFfMd/uQmqN1PsNLvx5h94NC6NURydWEaXjIB6LKiplW/Y5h3eEqOqWc6YW8A1AmAyBs6oSAmqB01ZFqOWvBWnGIi48Ct8U0fMbBaFLPIFZ7toAVpYo+rskec9gyitBwlFOWgAAFtluwUx+kcadcCukcsPxgo38LEgnUeoIzCMj8uVfBCGUetH92kwimWroO8G0pHy69owmMjeEy+c818cVAJlcKc0a789shs/QhUdigwhu5JuKGvY61kLhinlihkJTBYK3lqiN9M3keDfiqE33nsgk6zFwrD5B56uBanMGShTbF5rd80R1gD6QWETy+4a8/luIR/BfAzuCIfpBw1DudTcupsNZa1X1Z/K9+UCQ+JHcOva37q0Kcf+41s9JvBNn/6qsfvmc/n78XkXusKWIoaCpGW+Gu7aRjEcayOusDxpUR88sv5kb5iJa35Tu64HkP4mDX3rixW3lMXBRI1Hdn+2HXnJe/HS98ti1n7kU6NEatvPAd0u+VCa/GkHAxAa5yLl7zDCgPLYAl8YtIPwTHyUXVJp5Hi+cN8ZfWGg1c/9qBb9z8VUX+1mu26Y88H22bj2/D+gWp5lFUIm4H2yzqEyPZZf0o+REwrBJzP/jxfrNxwcN/jf0rS3nSzHHpKnJx3x8UfRXFuaRft+/RUYLvWl1vuiLRDZXeL02QwxPOLfnN/fXlu0V5hm+Yh/P7LjYf2Hfj9ILmRhRLjiGx06bxfXHQ5Hgo3I4h3Te1gbm0+EbQ2Ct7LBBrJQZrmOozoo3DN7O+4SG869Jkn7xn1ucli7/LdRKe3TAfX7LtqL34x4Ep4PcADzsen/0XqxpP6BVgo2qfwlPElLHTttQq8DVFOxJPir72vBNW7i2jPFjr4Z6ADTbu4krEuWxRiLd0xFkB8XPbHy1YffeTpq9HqX0equ/IW6pjpKNS25PPRybfzsEPy0U1HCZjoyIP4dY5v7d6z684HPvzAevZ5ovNXVRg52f273duPPLP+WfxMdD2+iH4rTwRHukJy3QZydl85PmDTdKDfu8Oa5l/4N6rv7Dh/9WdPfOyJ4/T/asZJKYwC2HvX3h0vHD78BbyYfxlJvakXuJS2oMsWkvg40v9ZzOY/OGvnzh8/fNXDR7aAX0p0UgsjzxfdftEbX9pYfAlPsC+itXfayxaEg6OVKpc7RHiiurhJAXZ40bQ/2rGy8sMnr33yv9I5WfSUFEbBnXv7JW9p19a+ikPxORTHfsyQ7JVQdhQqcgyP3Z/OVrd979lrH/v3K8E5EZtTWhgFsOu2t5+7tjh+I74D3oeLY5vfHpTSvfqEXP9xnjpkDcW9Y3tzxi0H9z/6rLBPFT0thVHwZ992wduatvlGO2uvQA1WUl0wxVMmikMb45sG//fz4pd40nzz+f1P/1NYp5qe1sIomXNvu/AdaxvtzTgan8D7DK4eD0O9Qxo1+vW2lflNz+5/6hHZni76mhRGyZ1164Xvxmvb11CXj6MrtnMdRTqOO/lePG+++8J1T/1NuqebvqaFUbJn4zG/ePF/F3PevPkNB54/iY9d+ViW/h+VNvJm3qPFmwAAAABJRU5ErkJggg==\"","module.exports = __webpack_public_path__ + \"static/img/lotteryFrame.af6a8277.png\";","var call = require('../internals/function-call');\nvar hasOwn = require('../internals/has-own-property');\nvar isPrototypeOf = require('../internals/object-is-prototype-of');\nvar regExpFlags = require('../internals/regexp-flags');\n\nvar RegExpPrototype = RegExp.prototype;\n\nmodule.exports = function (R) {\n var flags = R.flags;\n return flags === undefined && !('flags' in RegExpPrototype) && !hasOwn(R, 'flags') && isPrototypeOf(RegExpPrototype, R)\n ? call(regExpFlags, R) : flags;\n};\n","var lE = Object.defineProperty;\nvar Dh = Object.getOwnPropertySymbols;\nvar uE = Object.prototype.hasOwnProperty, _E = Object.prototype.propertyIsEnumerable;\nvar Oh = (t, e, i) => e in t ? lE(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, Nh = (t, e) => {\n for (var i in e || (e = {}))\n uE.call(e, i) && Oh(t, i, e[i]);\n if (Dh)\n for (var i of Dh(e))\n _E.call(e, i) && Oh(t, i, e[i]);\n return t;\n};\n(function() {\n try {\n if (typeof document < \"u\") {\n var t = document.createElement(\"style\");\n t.appendChild(document.createTextNode(\".kwai-player{position:relative;z-index:1;display:inline-block;margin:0;padding:0}.kwai-player>*{margin:0;padding:0}.kwai-player-video-interactive{display:block;width:100%;height:100%;position:absolute;top:0;left:0}.kwai-player-poster{width:100%;height:100%;position:absolute;left:0;top:0;background-color:#333;background-size:contain;background-position:center;background-repeat:no-repeat}.kwai-player-video{display:block;width:100%;height:100%;position:absolute;top:0;left:0}.kwai-player-video video{display:block;width:100%;height:100%}.kwai-player-video canvas{display:block;margin:0 auto;max-width:100%;max-height:100%;position:relative}.kwai-player-disable-scroll{overflow:hidden;height:100%}\")), document.head.appendChild(t);\n }\n } catch (e) {\n console.error(\"vite-plugin-css-injected-by-js\", e);\n }\n})();\nvar dE = Object.defineProperty, hE = (t, e, i) => e in t ? dE(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, et = (t, e, i) => (hE(t, typeof e != \"symbol\" ? e + \"\" : e, i), i), fE = Object.defineProperty, pE = (t, e, i) => e in t ? fE(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, Qn = (t, e, i) => (pE(t, typeof e != \"symbol\" ? e + \"\" : e, i), i);\nconst Hn = class {\n constructor() {\n Qn(this, \"timeout\", 7 * 24 * 3600 * 1e3);\n }\n write(e, i) {\n if (Hn.available)\n try {\n localStorage.setItem(\n e,\n JSON.stringify({ value: i, time: Date.now() })\n );\n } catch (r) {\n }\n }\n read(e, i = !0) {\n if (Hn.available)\n try {\n const r = localStorage.getItem(e);\n if (r) {\n const { value: o, time: l = 0 } = JSON.parse(r);\n if (!i || Date.now() - l < this.timeout)\n return o;\n }\n } catch (r) {\n }\n }\n static get available() {\n if (typeof Hn._available > \"u\")\n try {\n localStorage.setItem(\"alg\", \"test\"), Hn._available = !0;\n } catch (e) {\n Hn._available = !1;\n }\n return Hn._available;\n }\n};\nlet Av = Hn;\nQn(Av, \"_available\");\nconst mE = \"kwai-p\";\nfunction os(t, e) {\n return (!e || e.length === 0) && (e = [t], t = \"\"), t = mE + (t ? \"::\" + t : \"\"), e.unshift(\"[\" + t + \"] > \"), e;\n}\nconst Jt = class {\n /**\n * 设置日志输出等级\n * @param l 日志等级\n */\n static level(e) {\n switch (Jt.ENABLE_ERROR = Jt.ENABLE_WARN = Jt.ENABLE_INFO = Jt.ENABLE_DEBUG = Jt.ENABLE_VERBOSE = !1, e) {\n case \"e\":\n Jt.ENABLE_ERROR = !0;\n break;\n case \"w\":\n Jt.ENABLE_ERROR = Jt.ENABLE_WARN = !0;\n break;\n case \"i\":\n Jt.ENABLE_ERROR = Jt.ENABLE_WARN = Jt.ENABLE_INFO = !0;\n break;\n case \"d\":\n Jt.ENABLE_ERROR = Jt.ENABLE_WARN = Jt.ENABLE_INFO = Jt.ENABLE_DEBUG = !0;\n break;\n case \"v\":\n Jt.ENABLE_ERROR = Jt.ENABLE_WARN = Jt.ENABLE_INFO = Jt.ENABLE_DEBUG = Jt.ENABLE_VERBOSE = !0;\n break;\n }\n }\n /**\n * error日志\n * @param tag tag\n * @param msg 日志信息\n */\n static e(e, ...i) {\n if (!Jt.ENABLE_ERROR)\n return;\n const r = os(e, i);\n (console.error || console.warn || console.log).apply(console, r);\n }\n /**\n * warn日志\n * @param tag tag\n * @param msg 日志信息\n */\n static w(e, ...i) {\n if (!Jt.ENABLE_WARN)\n return;\n const r = os(e, i);\n (console.warn || console.log).apply(console, r);\n }\n /**\n * info日志\n * @param tag tag\n * @param msg 日志信息\n */\n static i(e, ...i) {\n if (!Jt.ENABLE_INFO)\n return;\n const r = os(e, i);\n (console.info || console.log).apply(console, r);\n }\n /**\n * debug日志\n * @param tag tag\n * @param msg 日志信息\n */\n static d(e, ...i) {\n if (!Jt.ENABLE_DEBUG)\n return;\n const r = os(e, i);\n (console.debug || console.log).apply(console, r);\n }\n /**\n * verbose日志\n * @param tag tag\n * @param msg 日志信息\n */\n static v(e, ...i) {\n if (!Jt.ENABLE_VERBOSE)\n return;\n const r = os(e, i);\n console.log.apply(console, r);\n }\n};\nlet Be = Jt;\nQn(Be, \"ENABLE_ERROR\", !0), Qn(Be, \"ENABLE_WARN\", !1), Qn(Be, \"ENABLE_INFO\", !1), Qn(Be, \"ENABLE_DEBUG\", !1), Qn(Be, \"ENABLE_VERBOSE\", !1);\nvar vE = typeof globalThis < \"u\" ? globalThis : typeof window < \"u\" ? window : typeof global < \"u\" ? global : typeof self < \"u\" ? self : {}, Jo = {}, gE = {\n get exports() {\n return Jo;\n },\n set exports(t) {\n Jo = t;\n }\n};\n(function(t, e) {\n (function(i, r) {\n var o = \"1.0.33\", l = \"\", v = \"?\", E = \"function\", C = \"undefined\", x = \"object\", g = \"string\", D = \"major\", _ = \"model\", m = \"name\", p = \"type\", d = \"vendor\", u = \"version\", U = \"architecture\", w = \"console\", S = \"mobile\", R = \"tablet\", z = \"smarttv\", W = \"wearable\", fe = \"embedded\", q = 350, ve = \"Amazon\", Ae = \"Apple\", P = \"ASUS\", Me = \"BlackBerry\", Ie = \"Browser\", je = \"Chrome\", ke = \"Edge\", H = \"Firefox\", ie = \"Google\", ye = \"Huawei\", we = \"LG\", J = \"Microsoft\", le = \"Motorola\", me = \"Opera\", he = \"Samsung\", re = \"Sharp\", Se = \"Sony\", Pe = \"Xiaomi\", Xe = \"Zebra\", Oe = \"Facebook\", st = function(K, Z) {\n var Y = {};\n for (var _e in K)\n Z[_e] && Z[_e].length % 2 === 0 ? Y[_e] = Z[_e].concat(K[_e]) : Y[_e] = K[_e];\n return Y;\n }, ze = function(K) {\n for (var Z = {}, Y = 0; Y < K.length; Y++)\n Z[K[Y].toUpperCase()] = K[Y];\n return Z;\n }, rt = function(K, Z) {\n return typeof K === g ? Fe(Z).indexOf(Fe(K)) !== -1 : !1;\n }, Fe = function(K) {\n return K.toLowerCase();\n }, G = function(K) {\n return typeof K === g ? K.replace(/[^\\d\\.]/g, l).split(\".\")[0] : r;\n }, k = function(K, Z) {\n if (typeof K === g)\n return K = K.replace(/^\\s\\s*/, l), typeof Z === C ? K : K.substring(0, q);\n }, F = function(K, Z) {\n for (var Y = 0, _e, ee, Ve, ce, qe, Ce; Y < Z.length && !qe; ) {\n var Ye = Z[Y], tt = Z[Y + 1];\n for (_e = ee = 0; _e < Ye.length && !qe; )\n if (qe = Ye[_e++].exec(K), qe)\n for (Ve = 0; Ve < tt.length; Ve++)\n Ce = qe[++ee], ce = tt[Ve], typeof ce === x && ce.length > 0 ? ce.length === 2 ? typeof ce[1] == E ? this[ce[0]] = ce[1].call(this, Ce) : this[ce[0]] = ce[1] : ce.length === 3 ? typeof ce[1] === E && !(ce[1].exec && ce[1].test) ? this[ce[0]] = Ce ? ce[1].call(this, Ce, ce[2]) : r : this[ce[0]] = Ce ? Ce.replace(ce[1], ce[2]) : r : ce.length === 4 && (this[ce[0]] = Ce ? ce[3].call(this, Ce.replace(ce[1], ce[2])) : r) : this[ce] = Ce || r;\n Y += 2;\n }\n }, I = function(K, Z) {\n for (var Y in Z)\n if (typeof Z[Y] === x && Z[Y].length > 0) {\n for (var _e = 0; _e < Z[Y].length; _e++)\n if (rt(Z[Y][_e], K))\n return Y === v ? r : Y;\n } else if (rt(Z[Y], K))\n return Y === v ? r : Y;\n return K;\n }, V = {\n \"1.0\": \"/8\",\n \"1.2\": \"/1\",\n \"1.3\": \"/3\",\n \"2.0\": \"/412\",\n \"2.0.2\": \"/416\",\n \"2.0.3\": \"/417\",\n \"2.0.4\": \"/419\",\n \"?\": \"/\"\n }, ne = {\n ME: \"4.90\",\n \"NT 3.11\": \"NT3.51\",\n \"NT 4.0\": \"NT4.0\",\n 2e3: \"NT 5.0\",\n XP: [\"NT 5.1\", \"NT 5.2\"],\n Vista: \"NT 6.0\",\n 7: \"NT 6.1\",\n 8: \"NT 6.2\",\n \"8.1\": \"NT 6.3\",\n 10: [\"NT 6.4\", \"NT 10.0\"],\n RT: \"ARM\"\n }, oe = {\n browser: [\n [\n /\\b(?:crmo|crios)\\/([\\w\\.]+)/i\n // Chrome for Android/iOS\n ],\n [u, [m, \"Chrome\"]],\n [\n /edg(?:e|ios|a)?\\/([\\w\\.]+)/i\n // Microsoft Edge\n ],\n [u, [m, \"Edge\"]],\n [\n // Presto based\n /(opera mini)\\/([-\\w\\.]+)/i,\n // Opera Mini\n /(opera [mobiletab]{3,6})\\b.+version\\/([-\\w\\.]+)/i,\n // Opera Mobi/Tablet\n /(opera)(?:.+version\\/|[\\/ ]+)([\\w\\.]+)/i\n // Opera\n ],\n [m, u],\n [\n /opios[\\/ ]+([\\w\\.]+)/i\n // Opera mini on iphone >= 8.0\n ],\n [u, [m, me + \" Mini\"]],\n [\n /\\bopr\\/([\\w\\.]+)/i\n // Opera Webkit\n ],\n [u, [m, me]],\n [\n // Mixed\n /(kindle)\\/([\\w\\.]+)/i,\n // Kindle\n /(lunascape|maxthon|netfront|jasmine|blazer)[\\/ ]?([\\w\\.]*)/i,\n // Lunascape/Maxthon/Netfront/Jasmine/Blazer\n // Trident based\n /(avant |iemobile|slim)(?:browser)?[\\/ ]?([\\w\\.]*)/i,\n // Avant/IEMobile/SlimBrowser\n /(ba?idubrowser)[\\/ ]?([\\w\\.]+)/i,\n // Baidu Browser\n /(?:ms|\\()(ie) ([\\w\\.]+)/i,\n // Internet Explorer\n // Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon\n /(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale|qqbrowserlite|qq|duckduckgo)\\/([-\\w\\.]+)/i,\n // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ, aka ShouQ\n /(weibo)__([\\d\\.]+)/i\n // Weibo\n ],\n [m, u],\n [\n /(?:\\buc? ?browser|(?:juc.+)ucweb)[\\/ ]?([\\w\\.]+)/i\n // UCBrowser\n ],\n [u, [m, \"UC\" + Ie]],\n [\n /microm.+\\bqbcore\\/([\\w\\.]+)/i,\n // WeChat Desktop for Windows Built-in Browser\n /\\bqbcore\\/([\\w\\.]+).+microm/i\n ],\n [u, [m, \"WeChat(Win) Desktop\"]],\n [\n /micromessenger\\/([\\w\\.]+)/i\n // WeChat\n ],\n [u, [m, \"WeChat\"]],\n [\n /konqueror\\/([\\w\\.]+)/i\n // Konqueror\n ],\n [u, [m, \"Konqueror\"]],\n [\n /trident.+rv[: ]([\\w\\.]{1,9})\\b.+like gecko/i\n // IE11\n ],\n [u, [m, \"IE\"]],\n [\n /yabrowser\\/([\\w\\.]+)/i\n // Yandex\n ],\n [u, [m, \"Yandex\"]],\n [\n /(avast|avg)\\/([\\w\\.]+)/i\n // Avast/AVG Secure Browser\n ],\n [[m, /(.+)/, \"$1 Secure \" + Ie], u],\n [\n /\\bfocus\\/([\\w\\.]+)/i\n // Firefox Focus\n ],\n [u, [m, H + \" Focus\"]],\n [\n /\\bopt\\/([\\w\\.]+)/i\n // Opera Touch\n ],\n [u, [m, me + \" Touch\"]],\n [\n /coc_coc\\w+\\/([\\w\\.]+)/i\n // Coc Coc Browser\n ],\n [u, [m, \"Coc Coc\"]],\n [\n /dolfin\\/([\\w\\.]+)/i\n // Dolphin\n ],\n [u, [m, \"Dolphin\"]],\n [\n /coast\\/([\\w\\.]+)/i\n // Opera Coast\n ],\n [u, [m, me + \" Coast\"]],\n [\n /miuibrowser\\/([\\w\\.]+)/i\n // MIUI Browser\n ],\n [u, [m, \"MIUI \" + Ie]],\n [\n /fxios\\/([-\\w\\.]+)/i\n // Firefox for iOS\n ],\n [u, [m, H]],\n [\n /\\bqihu|(qi?ho?o?|360)browser/i\n // 360\n ],\n [[m, \"360 \" + Ie]],\n [\n /(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i\n ],\n [[m, /(.+)/, \"$1 \" + Ie], u],\n [\n // Oculus/Samsung/Sailfish/Huawei Browser\n /(comodo_dragon)\\/([\\w\\.]+)/i\n // Comodo Dragon\n ],\n [[m, /_/g, \" \"], u],\n [\n /(electron)\\/([\\w\\.]+) safari/i,\n // Electron-based App\n /(tesla)(?: qtcarbrowser|\\/(20\\d\\d\\.[-\\w\\.]+))/i,\n // Tesla\n /m?(qqbrowser|baiduboxapp|2345Explorer)[\\/ ]?([\\w\\.]+)/i\n // QQBrowser/Baidu App/2345 Browser\n ],\n [m, u],\n [\n /(metasr)[\\/ ]?([\\w\\.]+)/i,\n // SouGouBrowser\n /(lbbrowser)/i,\n // LieBao Browser\n /\\[(linkedin)app\\]/i\n // LinkedIn App for iOS & Android\n ],\n [m],\n [\n // WebView\n /((?:fban\\/fbios|fb_iab\\/fb4a)(?!.+fbav)|;fbav\\/([\\w\\.]+);)/i\n // Facebook App for iOS & Android\n ],\n [[m, Oe], u],\n [\n /safari (line)\\/([\\w\\.]+)/i,\n // Line App for iOS\n /\\b(line)\\/([\\w\\.]+)\\/iab/i,\n // Line App for Android\n /(chromium|instagram)[\\/ ]([-\\w\\.]+)/i\n // Chromium/Instagram\n ],\n [m, u],\n [\n /\\bgsa\\/([\\w\\.]+) .*safari\\//i\n // Google Search Appliance on iOS\n ],\n [u, [m, \"GSA\"]],\n [\n /headlesschrome(?:\\/([\\w\\.]+)| )/i\n // Chrome Headless\n ],\n [u, [m, je + \" Headless\"]],\n [\n / wv\\).+(chrome)\\/([\\w\\.]+)/i\n // Chrome WebView\n ],\n [[m, je + \" WebView\"], u],\n [\n /droid.+ version\\/([\\w\\.]+)\\b.+(?:mobile safari|safari)/i\n // Android Browser\n ],\n [u, [m, \"Android \" + Ie]],\n [\n /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\/v?([\\w\\.]+)/i\n // Chrome/OmniWeb/Arora/Tizen/Nokia\n ],\n [m, u],\n [\n /version\\/([\\w\\.\\,]+) .*mobile\\/\\w+ (safari)/i\n // Mobile Safari\n ],\n [u, [m, \"Mobile Safari\"]],\n [\n /version\\/([\\w(\\.|\\,)]+) .*(mobile ?safari|safari)/i\n // Safari & Safari Mobile\n ],\n [u, m],\n [\n /webkit.+?(mobile ?safari|safari)(\\/[\\w\\.]+)/i\n // Safari < 3.0\n ],\n [m, [u, I, V]],\n [\n /(webkit|khtml)\\/([\\w\\.]+)/i\n ],\n [m, u],\n [\n // Gecko based\n /(navigator|netscape\\d?)\\/([-\\w\\.]+)/i\n // Netscape\n ],\n [[m, \"Netscape\"], u],\n [\n /mobile vr; rv:([\\w\\.]+)\\).+firefox/i\n // Firefox Reality\n ],\n [u, [m, H + \" Reality\"]],\n [\n /ekiohf.+(flow)\\/([\\w\\.]+)/i,\n // Flow\n /(swiftfox)/i,\n // Swiftfox\n /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\/ ]?([\\w\\.\\+]+)/i,\n // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror/Klar\n /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\/([-\\w\\.]+)$/i,\n // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix\n /(firefox)\\/([\\w\\.]+)/i,\n // Other Firefox-based\n /(mozilla)\\/([\\w\\.]+) .+rv\\:.+gecko\\/\\d+/i,\n // Mozilla\n // Other\n /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\. ]?browser)[-\\/ ]?v?([\\w\\.]+)/i,\n // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Sleipnir/Obigo/Mosaic/Go/ICE/UP.Browser\n /(links) \\(([\\w\\.]+)/i\n // Links\n ],\n [m, u],\n [\n /(cobalt)\\/([\\w\\.]+)/i\n // Cobalt\n ],\n [m, [u, /master.|lts./, \"\"]]\n ],\n cpu: [\n [\n /(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\)]/i\n // AMD64 (x64)\n ],\n [[U, \"amd64\"]],\n [\n /(ia32(?=;))/i\n // IA32 (quicktime)\n ],\n [[U, Fe]],\n [\n /((?:i[346]|x)86)[;\\)]/i\n // IA32 (x86)\n ],\n [[U, \"ia32\"]],\n [\n /\\b(aarch64|arm(v?8e?l?|_?64))\\b/i\n // ARM64\n ],\n [[U, \"arm64\"]],\n [\n /\\b(arm(?:v[67])?ht?n?[fl]p?)\\b/i\n // ARMHF\n ],\n [[U, \"armhf\"]],\n [\n // PocketPC mistakenly identified as PowerPC\n /windows (ce|mobile); ppc;/i\n ],\n [[U, \"arm\"]],\n [\n /((?:ppc|powerpc)(?:64)?)(?: mac|;|\\))/i\n // PowerPC\n ],\n [[U, /ower/, l, Fe]],\n [\n /(sun4\\w)[;\\)]/i\n // SPARC\n ],\n [[U, \"sparc\"]],\n [\n /((?:avr32|ia64(?=;))|68k(?=\\))|\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\b|pa-risc)/i\n // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC\n ],\n [[U, Fe]]\n ],\n device: [\n [\n //////////////////////////\n // MOBILES & TABLETS\n // Ordered by popularity\n /////////////////////////\n // Samsung\n /\\b(sch-i[89]0\\d|shw-m380s|sm-[ptx]\\w{2,4}|gt-[pn]\\d{2,4}|sgh-t8[56]9|nexus 10)/i\n ],\n [_, [d, he], [p, R]],\n [\n /\\b((?:s[cgp]h|gt|sm)-\\w+|galaxy nexus)/i,\n /samsung[- ]([-\\w]+)/i,\n /sec-(sgh\\w+)/i\n ],\n [_, [d, he], [p, S]],\n [\n // Apple\n /\\((ip(?:hone|od)[\\w ]*);/i\n // iPod/iPhone\n ],\n [_, [d, Ae], [p, S]],\n [\n /\\((ipad);[-\\w\\),; ]+apple/i,\n // iPad\n /applecoremedia\\/[\\w\\.]+ \\((ipad)/i,\n /\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i\n ],\n [_, [d, Ae], [p, R]],\n [\n /(macintosh);/i\n ],\n [_, [d, Ae]],\n [\n // Huawei\n /\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i\n ],\n [_, [d, ye], [p, R]],\n [\n /(?:huawei|honor)([-\\w ]+)[;\\)]/i,\n /\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i\n ],\n [_, [d, ye], [p, S]],\n [\n // Xiaomi\n /\\b(poco[\\w ]+)(?: bui|\\))/i,\n // Xiaomi POCO\n /\\b; (\\w+) build\\/hm\\1/i,\n // Xiaomi Hongmi 'numeric' models\n /\\b(hm[-_ ]?note?[_ ]?(?:\\d\\w)?) bui/i,\n // Xiaomi Hongmi\n /\\b(redmi[\\-_ ]?(?:note|k)?[\\w_ ]+)(?: bui|\\))/i,\n // Xiaomi Redmi\n /\\b(mi[-_ ]?(?:a\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\d?\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\))/i\n // Xiaomi Mi\n ],\n [[_, /_/g, \" \"], [d, Pe], [p, S]],\n [\n /\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i\n // Mi Pad tablets\n ],\n [[_, /_/g, \" \"], [d, Pe], [p, R]],\n [\n // OPPO\n /; (\\w+) bui.+ oppo/i,\n /\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i\n ],\n [_, [d, \"OPPO\"], [p, S]],\n [\n // Vivo\n /vivo (\\w+)(?: bui|\\))/i,\n /\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i\n ],\n [_, [d, \"Vivo\"], [p, S]],\n [\n // Realme\n /\\b(rmx[12]\\d{3})(?: bui|;|\\))/i\n ],\n [_, [d, \"Realme\"], [p, S]],\n [\n // Motorola\n /\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\b[\\w ]+build\\//i,\n /\\bmot(?:orola)?[- ](\\w*)/i,\n /((?:moto[\\w\\(\\) ]+|xt\\d{3,4}|nexus 6)(?= bui|\\)))/i\n ],\n [_, [d, le], [p, S]],\n [\n /\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i\n ],\n [_, [d, le], [p, R]],\n [\n // LG\n /((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i\n ],\n [_, [d, we], [p, R]],\n [\n /(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i,\n /\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i,\n /\\blg-?([\\d\\w]+) bui/i\n ],\n [_, [d, we], [p, S]],\n [\n // Lenovo\n /(ideatab[-\\w ]+)/i,\n /lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i\n ],\n [_, [d, \"Lenovo\"], [p, R]],\n [\n // Nokia\n /(?:maemo|nokia).*(n900|lumia \\d+)/i,\n /nokia[-_ ]?([-\\w\\.]*)/i\n ],\n [[_, /_/g, \" \"], [d, \"Nokia\"], [p, S]],\n [\n // Google\n /(pixel c)\\b/i\n // Google Pixel C\n ],\n [_, [d, ie], [p, R]],\n [\n /droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i\n // Google Pixel\n ],\n [_, [d, ie], [p, S]],\n [\n // Sony\n /droid.+ (a?\\d[0-2]{2}so|[c-g]\\d{4}|so[-gl]\\w+|xq-a\\w[4-7][12])(?= bui|\\).+chrome\\/(?![1-6]{0,1}\\d\\.))/i\n ],\n [_, [d, Se], [p, S]],\n [\n /sony tablet [ps]/i,\n /\\b(?:sony)?sgp\\w+(?: bui|\\))/i\n ],\n [[_, \"Xperia Tablet\"], [d, Se], [p, R]],\n [\n // OnePlus\n / (kb2005|in20[12]5|be20[12][59])\\b/i,\n /(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i\n ],\n [_, [d, \"OnePlus\"], [p, S]],\n [\n // Amazon\n /(alexa)webm/i,\n /(kf[a-z]{2}wi)( bui|\\))/i,\n // Kindle Fire without Silk\n /(kf[a-z]+)( bui|\\)).+silk\\//i\n // Kindle Fire HD\n ],\n [_, [d, ve], [p, R]],\n [\n /((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i\n // Fire Phone\n ],\n [[_, /(.+)/g, \"Fire Phone $1\"], [d, ve], [p, S]],\n [\n // BlackBerry\n /(playbook);[-\\w\\),; ]+(rim)/i\n // BlackBerry PlayBook\n ],\n [_, d, [p, R]],\n [\n /\\b((?:bb[a-f]|st[hv])100-\\d)/i,\n /\\(bb10; (\\w+)/i\n // BlackBerry 10\n ],\n [_, [d, Me], [p, S]],\n [\n // Asus\n /(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i\n ],\n [_, [d, P], [p, R]],\n [\n / (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i\n ],\n [_, [d, P], [p, S]],\n [\n // HTC\n /(nexus 9)/i\n // HTC Nexus 9\n ],\n [_, [d, \"HTC\"], [p, R]],\n [\n /(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i,\n // HTC\n // ZTE\n /(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i,\n /(alcatel|geeksphone|nexian|panasonic|sony(?!-bra))[-_ ]?([-\\w]*)/i\n // Alcatel/GeeksPhone/Nexian/Panasonic/Sony\n ],\n [d, [_, /_/g, \" \"], [p, S]],\n [\n // Acer\n /droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i\n ],\n [_, [d, \"Acer\"], [p, R]],\n [\n // Meizu\n /droid.+; (m[1-5] note) bui/i,\n /\\bmz-([-\\w]{2,})/i\n ],\n [_, [d, \"Meizu\"], [p, S]],\n [\n // Sharp\n /\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i\n ],\n [_, [d, re], [p, S]],\n [\n // MIXED\n /(blackberry|benq|palm(?=\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\w]*)/i,\n // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron\n /(hp) ([\\w ]+\\w)/i,\n // HP iPAQ\n /(asus)-?(\\w+)/i,\n // Asus\n /(microsoft); (lumia[\\w ]+)/i,\n // Microsoft Lumia\n /(lenovo)[-_ ]?([-\\w]+)/i,\n // Lenovo\n /(jolla)/i,\n // Jolla\n /(oppo) ?([\\w ]+) bui/i\n // OPPO\n ],\n [d, _, [p, S]],\n [\n /(archos) (gamepad2?)/i,\n // Archos\n /(hp).+(touchpad(?!.+tablet)|tablet)/i,\n // HP TouchPad\n /(kindle)\\/([\\w\\.]+)/i,\n // Kindle\n /(nook)[\\w ]+build\\/(\\w+)/i,\n // Nook\n /(dell) (strea[kpr\\d ]*[\\dko])/i,\n // Dell Streak\n /(le[- ]+pan)[- ]+(\\w{1,9}) bui/i,\n // Le Pan Tablets\n /(trinity)[- ]*(t\\d{3}) bui/i,\n // Trinity Tablets\n /(gigaset)[- ]+(q\\w{1,9}) bui/i,\n // Gigaset Tablets\n /(vodafone) ([\\w ]+)(?:\\)| bui)/i\n // Vodafone\n ],\n [d, _, [p, R]],\n [\n /(surface duo)/i\n // Surface Duo\n ],\n [_, [d, J], [p, R]],\n [\n /droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i\n // Fairphone\n ],\n [_, [d, \"Fairphone\"], [p, S]],\n [\n /(u304aa)/i\n // AT&T\n ],\n [_, [d, \"AT&T\"], [p, S]],\n [\n /\\bsie-(\\w*)/i\n // Siemens\n ],\n [_, [d, \"Siemens\"], [p, S]],\n [\n /\\b(rct\\w+) b/i\n // RCA Tablets\n ],\n [_, [d, \"RCA\"], [p, R]],\n [\n /\\b(venue[\\d ]{2,7}) b/i\n // Dell Venue Tablets\n ],\n [_, [d, \"Dell\"], [p, R]],\n [\n /\\b(q(?:mv|ta)\\w+) b/i\n // Verizon Tablet\n ],\n [_, [d, \"Verizon\"], [p, R]],\n [\n /\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i\n // Barnes & Noble Tablet\n ],\n [_, [d, \"Barnes & Noble\"], [p, R]],\n [\n /\\b(tm\\d{3}\\w+) b/i\n ],\n [_, [d, \"NuVision\"], [p, R]],\n [\n /\\b(k88) b/i\n // ZTE K Series Tablet\n ],\n [_, [d, \"ZTE\"], [p, R]],\n [\n /\\b(nx\\d{3}j) b/i\n // ZTE Nubia\n ],\n [_, [d, \"ZTE\"], [p, S]],\n [\n /\\b(gen\\d{3}) b.+49h/i\n // Swiss GEN Mobile\n ],\n [_, [d, \"Swiss\"], [p, S]],\n [\n /\\b(zur\\d{3}) b/i\n // Swiss ZUR Tablet\n ],\n [_, [d, \"Swiss\"], [p, R]],\n [\n /\\b((zeki)?tb.*\\b) b/i\n // Zeki Tablets\n ],\n [_, [d, \"Zeki\"], [p, R]],\n [\n /\\b([yr]\\d{2}) b/i,\n /\\b(dragon[- ]+touch |dt)(\\w{5}) b/i\n // Dragon Touch Tablet\n ],\n [[d, \"Dragon Touch\"], _, [p, R]],\n [\n /\\b(ns-?\\w{0,9}) b/i\n // Insignia Tablets\n ],\n [_, [d, \"Insignia\"], [p, R]],\n [\n /\\b((nxa|next)-?\\w{0,9}) b/i\n // NextBook Tablets\n ],\n [_, [d, \"NextBook\"], [p, R]],\n [\n /\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i\n // Voice Xtreme Phones\n ],\n [[d, \"Voice\"], _, [p, S]],\n [\n /\\b(lvtel\\-)?(v1[12]) b/i\n // LvTel Phones\n ],\n [[d, \"LvTel\"], _, [p, S]],\n [\n /\\b(ph-1) /i\n // Essential PH-1\n ],\n [_, [d, \"Essential\"], [p, S]],\n [\n /\\b(v(100md|700na|7011|917g).*\\b) b/i\n // Envizen Tablets\n ],\n [_, [d, \"Envizen\"], [p, R]],\n [\n /\\b(trio[-\\w\\. ]+) b/i\n // MachSpeed Tablets\n ],\n [_, [d, \"MachSpeed\"], [p, R]],\n [\n /\\btu_(1491) b/i\n // Rotor Tablets\n ],\n [_, [d, \"Rotor\"], [p, R]],\n [\n /(shield[\\w ]+) b/i\n // Nvidia Shield Tablets\n ],\n [_, [d, \"Nvidia\"], [p, R]],\n [\n /(sprint) (\\w+)/i\n // Sprint Phones\n ],\n [d, _, [p, S]],\n [\n /(kin\\.[onetw]{3})/i\n // Microsoft Kin\n ],\n [[_, /\\./g, \" \"], [d, J], [p, S]],\n [\n /droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i\n // Zebra\n ],\n [_, [d, Xe], [p, R]],\n [\n /droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i\n ],\n [_, [d, Xe], [p, S]],\n [\n ///////////////////\n // CONSOLES\n ///////////////////\n /(ouya)/i,\n // Ouya\n /(nintendo) ([wids3utch]+)/i\n // Nintendo\n ],\n [d, _, [p, w]],\n [\n /droid.+; (shield) bui/i\n // Nvidia\n ],\n [_, [d, \"Nvidia\"], [p, w]],\n [\n /(playstation [345portablevi]+)/i\n // Playstation\n ],\n [_, [d, Se], [p, w]],\n [\n /\\b(xbox(?: one)?(?!; xbox))[\\); ]/i\n // Microsoft Xbox\n ],\n [_, [d, J], [p, w]],\n [\n ///////////////////\n // SMARTTVS\n ///////////////////\n /smart-tv.+(samsung)/i\n // Samsung\n ],\n [d, [p, z]],\n [\n /hbbtv.+maple;(\\d+)/i\n ],\n [[_, /^/, \"SmartTV\"], [d, he], [p, z]],\n [\n /(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i\n // LG SmartTV\n ],\n [[d, we], [p, z]],\n [\n /(apple) ?tv/i\n // Apple TV\n ],\n [d, [_, Ae + \" TV\"], [p, z]],\n [\n /crkey/i\n // Google Chromecast\n ],\n [[_, je + \"cast\"], [d, ie], [p, z]],\n [\n /droid.+aft(\\w)( bui|\\))/i\n // Fire TV\n ],\n [_, [d, ve], [p, z]],\n [\n /\\(dtv[\\);].+(aquos)/i,\n /(aquos-tv[\\w ]+)\\)/i\n // Sharp\n ],\n [_, [d, re], [p, z]],\n [\n /(bravia[\\w ]+)( bui|\\))/i\n // Sony\n ],\n [_, [d, Se], [p, z]],\n [\n /(mitv-\\w{5}) bui/i\n // Xiaomi\n ],\n [_, [d, Pe], [p, z]],\n [\n /\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i,\n // Roku\n /hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w ]*; *(\\w[^;]*);([^;]*)/i\n // HbbTV devices\n ],\n [[d, k], [_, k], [p, z]],\n [\n /\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i\n // SmartTV from Unidentified Vendors\n ],\n [[p, z]],\n [\n ///////////////////\n // WEARABLES\n ///////////////////\n /((pebble))app/i\n // Pebble\n ],\n [d, _, [p, W]],\n [\n /droid.+; (glass) \\d/i\n // Google Glass\n ],\n [_, [d, ie], [p, W]],\n [\n /droid.+; (wt63?0{2,3})\\)/i\n ],\n [_, [d, Xe], [p, W]],\n [\n /(quest( 2)?)/i\n // Oculus Quest\n ],\n [_, [d, Oe], [p, W]],\n [\n ///////////////////\n // EMBEDDED\n ///////////////////\n /(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i\n // Tesla\n ],\n [d, [p, fe]],\n [\n ////////////////////\n // MIXED (GENERIC)\n ///////////////////\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i\n // Android Phones from Unidentified Vendors\n ],\n [_, [p, S]],\n [\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i\n // Android Tablets from Unidentified Vendors\n ],\n [_, [p, R]],\n [\n /\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i\n // Unidentifiable Tablet\n ],\n [[p, R]],\n [\n /(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i\n // Unidentifiable Mobile\n ],\n [[p, S]],\n [\n /(android[-\\w\\. ]{0,9});.+buil/i\n // Generic Android Device\n ],\n [_, [d, \"Generic\"]]\n ],\n engine: [\n [\n /windows.+ edge\\/([\\w\\.]+)/i\n // EdgeHTML\n ],\n [u, [m, ke + \"HTML\"]],\n [\n /webkit\\/537\\.36.+chrome\\/(?!27)([\\w\\.]+)/i\n // Blink\n ],\n [u, [m, \"Blink\"]],\n [\n /(presto)\\/([\\w\\.]+)/i,\n // Presto\n /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\/([\\w\\.]+)/i,\n // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna\n /ekioh(flow)\\/([\\w\\.]+)/i,\n // Flow\n /(khtml|tasman|links)[\\/ ]\\(?([\\w\\.]+)/i,\n // KHTML/Tasman/Links\n /(icab)[\\/ ]([23]\\.[\\d\\.]+)/i\n // iCab\n ],\n [m, u],\n [\n /rv\\:([\\w\\.]{1,9})\\b.+(gecko)/i\n // Gecko\n ],\n [u, m]\n ],\n os: [\n [\n // Windows\n /microsoft (windows) (vista|xp)/i\n // Windows (iTunes)\n ],\n [m, u],\n [\n /(windows) nt 6\\.2; (arm)/i,\n // Windows RT\n /(windows (?:phone(?: os)?|mobile))[\\/ ]?([\\d\\.\\w ]*)/i,\n // Windows Phone\n /(windows)[\\/ ]?([ntce\\d\\. ]+\\w)(?!.+xbox)/i\n ],\n [m, [u, I, ne]],\n [\n /(win(?=3|9|n)|win 9x )([nt\\d\\.]+)/i\n ],\n [[m, \"Windows\"], [u, I, ne]],\n [\n // iOS/macOS\n /ip[honead]{2,4}\\b(?:.*os ([\\w]+) like mac|; opera)/i,\n // iOS\n /cfnetwork\\/.+darwin/i\n ],\n [[u, /_/g, \".\"], [m, \"iOS\"]],\n [\n /(mac os x) ?([\\w\\. ]*)/i,\n /(macintosh|mac_powerpc\\b)(?!.+haiku)/i\n // Mac OS\n ],\n [[m, \"Mac OS\"], [u, /_/g, \".\"]],\n [\n // Mobile OSes\n /droid ([\\w\\.]+)\\b.+(android[- ]x86|harmonyos)/i\n // Android-x86/HarmonyOS\n ],\n [u, m],\n [\n // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS\n /(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\/ ]?([\\w\\.]*)/i,\n /(blackberry)\\w*\\/([\\w\\.]*)/i,\n // Blackberry\n /(tizen|kaios)[\\/ ]([\\w\\.]+)/i,\n // Tizen/KaiOS\n /\\((series40);/i\n // Series 40\n ],\n [m, u],\n [\n /\\(bb(10);/i\n // BlackBerry 10\n ],\n [u, [m, Me]],\n [\n /(?:symbian ?os|symbos|s60(?=;)|series60)[-\\/ ]?([\\w\\.]*)/i\n // Symbian\n ],\n [u, [m, \"Symbian\"]],\n [\n /mozilla\\/[\\d\\.]+ \\((?:mobile|tablet|tv|mobile; [\\w ]+); rv:.+ gecko\\/([\\w\\.]+)/i\n // Firefox OS\n ],\n [u, [m, H + \" OS\"]],\n [\n /web0s;.+rt(tv)/i,\n /\\b(?:hp)?wos(?:browser)?\\/([\\w\\.]+)/i\n // WebOS\n ],\n [u, [m, \"webOS\"]],\n [\n // Google Chromecast\n /crkey\\/([\\d\\.]+)/i\n // Google Chromecast\n ],\n [u, [m, je + \"cast\"]],\n [\n /(cros) [\\w]+ ([\\w\\.]+\\w)/i\n // Chromium OS\n ],\n [[m, \"Chromium OS\"], u],\n [\n // Console\n /(nintendo|playstation) ([wids345portablevuch]+)/i,\n // Nintendo/Playstation\n /(xbox); +xbox ([^\\);]+)/i,\n // Microsoft Xbox (360, One, X, S, Series X, Series S)\n // Other\n /\\b(joli|palm)\\b ?(?:os)?\\/?([\\w\\.]*)/i,\n // Joli/Palm\n /(mint)[\\/\\(\\) ]?(\\w*)/i,\n // Mint\n /(mageia|vectorlinux)[; ]/i,\n // Mageia/VectorLinux\n /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\/ ]?(?!chrom|package)([-\\w\\.]*)/i,\n // Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire\n /(hurd|linux) ?([\\w\\.]*)/i,\n // Hurd/Linux\n /(gnu) ?([\\w\\.]*)/i,\n // GNU\n /\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\/ ]?(?!amd|[ix346]{1,2}86)([\\w\\.]*)/i,\n // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly\n /(haiku) (\\w+)/i\n // Haiku\n ],\n [m, u],\n [\n /(sunos) ?([\\w\\.\\d]*)/i\n // Solaris\n ],\n [[m, \"Solaris\"], u],\n [\n /((?:open)?solaris)[-\\/ ]?([\\w\\.]*)/i,\n // Solaris\n /(aix) ((\\d)(?=\\.|\\)| )[\\w\\.])*/i,\n // AIX\n /\\b(beos|os\\/2|amigaos|morphos|openvms|fuchsia|hp-ux)/i,\n // BeOS/OS2/AmigaOS/MorphOS/OpenVMS/Fuchsia/HP-UX\n /(unix) ?([\\w\\.]*)/i\n // UNIX\n ],\n [m, u]\n ]\n }, te = function(K, Z) {\n if (typeof K === x && (Z = K, K = r), !(this instanceof te))\n return new te(K, Z).getResult();\n var Y = K || (typeof i !== C && i.navigator && i.navigator.userAgent ? i.navigator.userAgent : l), _e = Z ? st(oe, Z) : oe;\n return this.getBrowser = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.browser), ee.major = G(ee.version), ee;\n }, this.getCPU = function() {\n var ee = {};\n return ee[U] = r, F.call(ee, Y, _e.cpu), ee;\n }, this.getDevice = function() {\n var ee = {};\n return ee[d] = r, ee[_] = r, ee[p] = r, F.call(ee, Y, _e.device), ee;\n }, this.getEngine = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.engine), ee;\n }, this.getOS = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.os), ee;\n }, this.getResult = function() {\n return {\n ua: this.getUA(),\n browser: this.getBrowser(),\n engine: this.getEngine(),\n os: this.getOS(),\n device: this.getDevice(),\n cpu: this.getCPU()\n };\n }, this.getUA = function() {\n return Y;\n }, this.setUA = function(ee) {\n return Y = typeof ee === g && ee.length > q ? k(ee, q) : ee, this;\n }, this.setUA(Y), this;\n };\n te.VERSION = o, te.BROWSER = ze([m, u, D]), te.CPU = ze([U]), te.DEVICE = ze([_, d, p, w, S, z, R, W, fe]), te.ENGINE = te.OS = ze([m, u]), t.exports && (e = t.exports = te), e.UAParser = te;\n var Ee = typeof i !== C && (i.jQuery || i.Zepto);\n if (Ee && !Ee.ua) {\n var xe = new te();\n Ee.ua = xe.getResult(), Ee.ua.get = function() {\n return xe.getUA();\n }, Ee.ua.set = function(K) {\n xe.setUA(K);\n var Z = xe.getResult();\n for (var Y in Z)\n Ee.ua[Y] = Z[Y];\n };\n }\n })(typeof window == \"object\" ? window : vE);\n})(gE, Jo);\nconst bE = Jo;\nfunction Tv() {\n const t = new Av();\n Be.level(t.read(\"kwai-player-log\"));\n}\nconst ln = new bE(), ec = ln.getOS().name, yE = ec && ec.toLowerCase().indexOf(\"android\") >= 0, EE = ec && ec.toLowerCase().indexOf(\"ios\") >= 0, wE = ln.getDevice().type === \"mobile\" || yE || EE;\nvar Ki = function(t) {\n var e = {};\n function i(r) {\n if (e[r])\n return e[r].exports;\n var o = e[r] = { i: r, l: !1, exports: {} };\n return t[r].call(o.exports, o, o.exports, i), o.l = !0, o.exports;\n }\n return i.m = t, i.c = e, i.d = function(r, o, l) {\n i.o(r, o) || Object.defineProperty(r, o, { enumerable: !0, get: l });\n }, i.r = function(r) {\n typeof Symbol < \"u\" && Symbol.toStringTag && Object.defineProperty(r, Symbol.toStringTag, { value: \"Module\" }), Object.defineProperty(r, \"__esModule\", { value: !0 });\n }, i.t = function(r, o) {\n if (1 & o && (r = i(r)), 8 & o || 4 & o && typeof r == \"object\" && r && r.__esModule)\n return r;\n var l = /* @__PURE__ */ Object.create(null);\n if (i.r(l), Object.defineProperty(l, \"default\", { enumerable: !0, value: r }), 2 & o && typeof r != \"string\")\n for (var v in r)\n i.d(l, v, function(E) {\n return r[E];\n }.bind(null, v));\n return l;\n }, i.n = function(r) {\n var o = r && r.__esModule ? function() {\n return r.default;\n } : function() {\n return r;\n };\n return i.d(o, \"a\", o), o;\n }, i.o = function(r, o) {\n return Object.prototype.hasOwnProperty.call(r, o);\n }, i.p = \"\", i(i.s = 52);\n}([function(t, e, i) {\n var r, o, l, v, E, C, x, g, D, _, m, p, d, u, U, w;\n i.d(e, \"b\", function() {\n return r;\n }), i.d(e, \"p\", function() {\n return o;\n }), i.d(e, \"o\", function() {\n return l;\n }), i.d(e, \"c\", function() {\n return v;\n }), i.d(e, \"i\", function() {\n return E;\n }), i.d(e, \"g\", function() {\n return C;\n }), i.d(e, \"h\", function() {\n return x;\n }), i.d(e, \"n\", function() {\n return g;\n }), i.d(e, \"m\", function() {\n return D;\n }), i.d(e, \"j\", function() {\n return _;\n }), i.d(e, \"d\", function() {\n return m;\n }), i.d(e, \"e\", function() {\n return p;\n }), i.d(e, \"l\", function() {\n return d;\n }), i.d(e, \"a\", function() {\n return u;\n }), i.d(e, \"k\", function() {\n return U;\n }), i.d(e, \"f\", function() {\n return w;\n }), function(S) {\n S.unknown = \"unknown\", S.h264 = \"h264\", S.hevc = \"hevc\", S.av1 = \"av1\", S.kvc3 = \"kvc3\", S.kvc4 = \"kvc4\", S.kvc5 = \"kvc5\", S.kvc6 = \"kvc6\", S.aac = \"aac\", S.mp3 = \"mp3\", S.opus = \"opus\", S.yuv = \"yuv\", S.rawvideo = \"rawvideo\", S.vvc = \"vvc\", S.bvc2 = \"bvc2\", S.kvc30 = \"kvc30\";\n }(r || (r = {})), function(S) {\n S.kvc3 = \"kvc3\", S.kvc4 = \"kvc4\", S.kvc5 = \"kvc5\", S.kvc6 = \"kvc6\", S.h265 = \"h265\", S.kw265 = \"kw265\", S.kvc30 = \"kvc30\";\n }(o || (o = {})), function(S) {\n S.video = \"video\", S.canvas = \"canvas\";\n }(l || (l = {})), function(S) {\n S.buildin = \"buildin\", S.wasm = \"wasm\", S.none = \"none\", S.unsupported = \"unsupported\";\n }(v || (v = {})), function(S) {\n S.KWAI_FLV_ABR = \"kwaiFlvAbr\", S.KWAI_FLV_MP = \"kwaiFlvMultipart\", S.KWAI = \"kwai\", S.FILE = \"file\", S.OTHERS = \"others\";\n }(E || (E = {})), function(S) {\n S.flv = \"flv\", S.hls = \"hls\", S.hls_ts = \"hls_ts\", S.hls_fmp4 = \"hls_fmp4\", S.webrtc = \"webrtc\", S.mp4 = \"mp4\", S.raw = \"raw\", S.mp3 = \"mp3\", S.aac = \"aac\", S.matroska = \"matroska\", S.ts = \"ts\", S.ivf = \"ivf\", S.yuv = \"yuv\", S.unknown = \"unknown\";\n }(C || (C = {})), function(S) {\n S.LIVE = \"live_retry\", S.RTC = \"rtc_retry\", S.CODEC_AUDIO = \"codec_audio\", S.CODEC_REMUX_TYPE = \"codec_remux_type\", S.HLS_NATIVE = \"hls_native\", S.MSE = \"mse\", S.REMUX = \"remux\", S.HEVC_DEC = \"hevc_dec\", S.FALLBACK_H264 = \"fallback_h264\", S.BACKUP = \"backup\";\n }(x || (x = {})), function(S) {\n S.AUTO = \"auto\", S.ALL_NON_REF = \"allNonRef\", S.MIN = \"min\";\n }(g || (g = {})), function(S) {\n S.NONE = \"none\", S.WAITING = \"waiting\";\n }(D || (D = {})), function(S) {\n S.NEXT = \"next\", S.PREV = \"prev\";\n }(_ || (_ = {})), function(S) {\n S.STANDARD = \"standard\", S.QUERY_START_END = \"queryStartEnd\";\n }(m || (m = {})), function(S) {\n S.MAIN = \"main\", S.AUDIO = \"audio\", S.SUBTITLE = \"subtitle\";\n }(p || (p = {})), function(S) {\n S.VIDEO = \"video\", S.AUDIO = \"audio\";\n }(d || (d = {})), function(S) {\n S.unknown = \"unknown\", S.native = \"native\", S.mse = \"mse\", S.rtc = \"rtc\";\n }(u || (u = {})), function(S) {\n S[S.Normal = 0] = \"Normal\", S[S.V360 = 1] = \"V360\", S[S.V180 = 2] = \"V180\";\n }(U || (U = {})), function(S) {\n S[S.normal = 0] = \"normal\", S[S.internal = 1] = \"internal\", S[S.retry = 2] = \"retry\";\n }(w || (w = {}));\n}, function(t, e, i) {\n var r;\n (function(o) {\n o.METADATA = \"metadata\", o.MEDIA_INFO = \"mediaInfo\", o.PARSING_INIT_SEGMENT = \"parsingInitSegment\", o.PARSING_DATA = \"parsingData\", o.PARSED_DATA = \"parsedData\", o.SCRIPT_PARSED = \"scriptParsed\", o.KEY_FRAME_INDEXS = \"keyFrameIndexs\", o.VIDEO_FRAME_INFO = \"videoFrameInfo\", o.DISCONTINUITY = \"discontinuity\", o.REPORT = \"report\", o.LOAD_END = \"loadEnd\", o.ERROR = \"error\", o.MANIFEST_PARSED = \"manifestParsed\", o.LEVEL_SWITCHING = \"levelSwitching\", o.LEVEL_SWITCHED = \"levelSwitched\", o.LEVEL_SWITCH_PLAYING = \"levelSwitchPlaying\", o.LEVEL_SWITCH_FAILED = \"levelSwitchFailed\", o.LEVEL_LOADED = \"levelLoaded\", o.LEVEL_UPDATED = \"levelUpdated\", o.AUDIO_TRACK_SWITCHING = \"audioTrackSwitching\", o.AUDIO_TRACK_SWITCHED = \"audioTrackSwitched\", o.AUDIO_TRACK_UPDATED = \"audioTrackUpdated\", o.HLS_MANIFEST_PARSED = \"hlsManifestParsed\", o.HLS_KEY_LOADED = \"hlsKeyLoaded\", o.AUDIO_TRACK_LOADED = \"audioLoaded\", o.SUBTITLE_TRACK_LOADED = \"subtitleTrackLoaded\", o.SUBTITLE_LOADED = \"subtitleLoaded\", o.SUBTITLE_TRACK_SWITCHED = \"subtitleTrackSwitched\", o.SUBTITLE_TRACK_UPDATED = \"subtitleTrackUpdated\", o.BUFFER_CLEANING = \"bufferCleaning\", o.VIDEO_SEEK = \"vdeoSeek\", o.PRELOAD_COMPLETE = \"preloadComplete\", o.ABR_NEXT = \"abrNext\", o.PRIV_NAL = \"privNal\", o.SEI = \"sei\", o.RAW_DATA = \"rawData\", o.MP4_NOT_FASTSTART = \"mp4NotFaststart\", o.VIDEO_CODEC_DETECTED = \"videoCodecChange\", o.H265_DETECTED = \"h265Detected\", o.VIDEO_RENDERER_CHANGE = \"videoRendererChange\", o.DEC_LIB_LOADED = \"decLibLoaded\", o.DEC_INIT_COMPLETE = \"decoderInitComplete\", o.DEC_VIDEO_READY = \"decVideoReady\", o.STEP = \"step\", o.RENDERER_BUF_EXPIRED = \"rendererBufExpired\", o.RENDERER_SEEK = \"rendererSeek\", o.RENDERER_BUF_UPDATE = \"rendererBufUpdate\", o.RENDERER_DRAW = \"rendererDraw\", o.DECODER_FRAME = \"decoderFrame\", o.DECODER_IMG = \"decoderImg\", o.DECODER_SEEK = \"decoderSeek\", o.DECODER_SEEK_ABORT = \"decoderSeekAbort\", o.DECODER_WAITING = \"decoderWaiting\", o.DECODER_DATA_END = \"decoderDataEnd\", o.DECODER_BUF_LOW = \"decoderDataEmpty\", o.DECODER_DROP_FRAME = \"decocerDropFrame\", o.DECODER_MEDIA_INFO = \"decoderMediaInfo\", o.MEDIA_CONNECTED = \"mediaConnected\", o.LOADER_CHUNK_ARRIVAL = \"loaderChunkArrival\", o.DEMUXER_DETECTED = \"demuxerDetected\", o.MEDIA_DEMUX = \"mediaDemux\", o.KEY_FRAME = \"keyFrame\", o.USE_BACKUP = \"useBackup\", o.NEW_SOURCE = \"newSource\", o.DOWNLOAD = \"download\", o.STOP_LOAD = \"stopLoad\", o.LOAD = \"load\", o.WAITING = \"wating\", o.LOADEDDATA = \"loadeddata\", o.CANPLAY = \"canplay\", o.SEEKING = \"seeking\", o.SEEK_WITH_LOAD = \"onSeekWithLoad\", o.SEEKED = \"seeked\", o.PLAYING = \"playing\", o.PAUSE = \"pause\", o.PLAY = \"play\", o.ENDED = \"ended\", o.TIMEUPDATE = \"timeupdate\", o.PROGRESS = \"progress\", o.RATE_CHANGE = \"ratechange\", o.DURATION_CHANGE = \"durationchange\", o.HEARTBEAT = \"heartbeat\", o.MSE_UPDATE = \"mseUpdate\", o.MSE_BUFFER_FULL = \"mseBufferFull\", o.RETRY = \"retry\", o.INIT_PTS_FOUND = \"initPtsFopund\", o.FALLBACK_H264 = \"fallbackH264\";\n })(r || (r = {})), e.a = r;\n}, function(t, e, i) {\n i.d(e, \"a\", function() {\n return r;\n }), i.d(e, \"b\", function() {\n return l;\n });\n var r;\n function o(v, E) {\n return E && E.length !== 0 || (E = [v], v = \"\"), v = \"kwai-k\" + (v ? \"::\" + v : \"\"), E.unshift(\"[\" + v + \"] > \"), E;\n }\n (function(v) {\n v.LEVEL_ERROR = \"e\", v.LEVEL_WARN = \"w\", v.LEVEL_INFO = \"i\", v.LEVEL_DEBUG = \"d\", v.LEVEL_VERBOSE = \"v\";\n })(r || (r = {}));\n var l = function() {\n function v() {\n }\n return v.level = function(E) {\n switch (v.ENABLE_ERROR = v.ENABLE_WARN = v.ENABLE_INFO = v.ENABLE_DEBUG = v.ENABLE_VERBOSE = !1, E) {\n case r.LEVEL_ERROR:\n v.ENABLE_ERROR = !0;\n break;\n case r.LEVEL_WARN:\n v.ENABLE_ERROR = v.ENABLE_WARN = !0;\n break;\n case r.LEVEL_INFO:\n v.ENABLE_ERROR = v.ENABLE_WARN = v.ENABLE_INFO = !0;\n break;\n case r.LEVEL_DEBUG:\n v.ENABLE_ERROR = v.ENABLE_WARN = v.ENABLE_INFO = v.ENABLE_DEBUG = !0;\n break;\n case r.LEVEL_VERBOSE:\n v.ENABLE_ERROR = v.ENABLE_WARN = v.ENABLE_INFO = v.ENABLE_DEBUG = v.ENABLE_VERBOSE = !0;\n }\n }, v.e = function(E) {\n if (v.ENABLE_ERROR) {\n for (var C = arguments.length, x = new Array(C > 1 ? C - 1 : 0), g = 1; g < C; g++)\n x[g - 1] = arguments[g];\n var D = o(E, x);\n (console.error || console.warn || console.log).apply(console, D);\n }\n }, v.w = function(E) {\n if (v.ENABLE_WARN) {\n for (var C = arguments.length, x = new Array(C > 1 ? C - 1 : 0), g = 1; g < C; g++)\n x[g - 1] = arguments[g];\n var D = o(E, x);\n (console.warn || console.log).apply(console, D);\n }\n }, v.i = function(E) {\n if (v.ENABLE_INFO) {\n for (var C = arguments.length, x = new Array(C > 1 ? C - 1 : 0), g = 1; g < C; g++)\n x[g - 1] = arguments[g];\n var D = o(E, x);\n (console.info || console.log).apply(console, D);\n }\n }, v.d = function(E) {\n if (v.ENABLE_DEBUG) {\n for (var C = arguments.length, x = new Array(C > 1 ? C - 1 : 0), g = 1; g < C; g++)\n x[g - 1] = arguments[g];\n var D = o(E, x);\n (console.debug || console.log).apply(console, D);\n }\n }, v.v = function(E) {\n if (v.ENABLE_VERBOSE) {\n for (var C = arguments.length, x = new Array(C > 1 ? C - 1 : 0), g = 1; g < C; g++)\n x[g - 1] = arguments[g];\n var D = o(E, x);\n console.log.apply(console, D);\n }\n }, v;\n }();\n l.ENABLE_ERROR = !0, l.ENABLE_WARN = !1, l.ENABLE_INFO = !1, l.ENABLE_DEBUG = !1, l.ENABLE_VERBOSE = !1;\n}, function(t, e, i) {\n function r(p, d, u) {\n var U = u ? d + u : p.byteLength - 1;\n return String.fromCharCode.apply(null, p.subarray(d, U));\n }\n function o(p, d, u) {\n d === void 0 && (d = 0), u === void 0 && (u = !1);\n var U = 0;\n return (U = u ? (p[d + 1] << 8) + p[d] : (p[d] << 8) + p[d + 1]) < 0 ? 65536 + U : U;\n }\n function l(p, d, u) {\n u === void 0 && (u = 0), d.byteLength - u < 2 || (d[u] = p >> 8 & 255, d[u + 1] = 255 & p);\n }\n function v(p, d, u) {\n d === void 0 && (d = 0), u === void 0 && (u = !1);\n var U = 0;\n return (U = u ? (p[d + 2] << 16) + (p[d + 1] << 8) + p[d] : (p[d] << 16) + (p[d + 1] << 8) + p[d + 2]) < 0 ? 16777215 + U : U;\n }\n function E(p, d, u) {\n d === void 0 && (d = 0), u === void 0 && (u = !1);\n var U = 0;\n return 8388608 & (U = u ? (p[d + 2] << 16) + (p[d + 1] << 8) + p[d] : (p[d] << 16) + (p[d + 1] << 8) + p[d + 2]) && (U = U - 1 - 16777215), U;\n }\n function C(p, d, u) {\n d === void 0 && (d = 0), u === void 0 && (u = !1);\n var U = 0;\n return (U = u ? p[d + 3] * Math.pow(2, 24) + (p[d + 2] << 16) + (p[d + 1] << 8) + p[d] : p[d] * Math.pow(2, 24) + (p[d + 1] << 16) + (p[d + 2] << 8) + p[d + 3]) < 0 ? 4294967296 + U : U;\n }\n function x(p, d, u) {\n u === void 0 && (u = 0), d.byteLength - u < 4 || (d[u] = p >> 24 & 255, d[u + 1] = p >> 16 & 255, d[u + 2] = p >> 8 & 255, d[u + 3] = 255 & p);\n }\n function g(p, d, u) {\n u === void 0 && (u = !1);\n var U = 0;\n return 2147483648 & (U = u ? p[d + 3] * Math.pow(2, 24) + (p[d + 2] << 16) + (p[d + 1] << 8) + p[d] : p[d] * Math.pow(2, 24) + (p[d + 1] << 16) + (p[d + 2] << 8) + p[d + 3]) && (U = U - 1 - 4294967295), U;\n }\n function D(p, d, u) {\n u === void 0 && (u = 0), d.byteLength - u < 4 || (p < 0 && (p += 4294967296), x(p, d, u));\n }\n function _(p, d, u) {\n return d === void 0 && (d = 0), u === void 0 && (u = !1), u ? p[d + 7] * Math.pow(2, 56) + p[d + 6] * Math.pow(2, 48) + p[d + 5] * Math.pow(2, 40) + p[d + 4] * Math.pow(2, 32) + p[d + 3] * Math.pow(2, 24) + (p[d + 2] << 16) + (p[d + 1] << 8) + p[d] : p[d] * Math.pow(2, 56) + p[d + 1] * Math.pow(2, 48) + p[d + 2] * Math.pow(2, 40) + p[d + 3] * Math.pow(2, 32) + p[d + 4] * Math.pow(2, 24) + (p[d + 5] << 16) + (p[d + 6] << 8) + p[d + 7];\n }\n function m(p, d) {\n if (p.length !== d.length)\n return !1;\n for (var u = 0; u < p.length; u++)\n if (p[u] !== d[u])\n return !1;\n return !0;\n }\n i.d(e, \"a\", function() {\n return r;\n }), i.d(e, \"e\", function() {\n return o;\n }), i.d(e, \"j\", function() {\n return l;\n }), i.d(e, \"f\", function() {\n return v;\n }), i.d(e, \"c\", function() {\n return E;\n }), i.d(e, \"g\", function() {\n return C;\n }), i.d(e, \"k\", function() {\n return x;\n }), i.d(e, \"d\", function() {\n return g;\n }), i.d(e, \"i\", function() {\n return D;\n }), i.d(e, \"h\", function() {\n return _;\n }), i.d(e, \"b\", function() {\n return m;\n });\n}, function(t, e, i) {\n var r, o;\n i.d(e, \"b\", function() {\n return r;\n }), i.d(e, \"a\", function() {\n return o;\n }), i.d(e, \"c\", function() {\n return l;\n }), function(v) {\n v.NETWORK_ERROR = \"networkError\", v.MEDIA_ERROR = \"mediaError\", v.KEY_SYSTEM_ERROR = \"keySystemError\", v.MUX_ERROR = \"muxError\", v.OTHER_ERROR = \"otherError\", v.MSE_ERROR = \"mseError\", v.DECODER_ERROR = \"decoderError\", v.RENDERER_ERROR = \"rendererError\";\n }(r || (r = {})), function(v) {\n v[v.LOAD_ERROR = 10] = \"LOAD_ERROR\", v[v.MANIFEST_LOAD_ERROR = 11] = \"MANIFEST_LOAD_ERROR\", v[v.LEVEL_LOAD_ERROR = 12] = \"LEVEL_LOAD_ERROR\", v[v.AUDIO_TRACK_LOAD_ERROR = 13] = \"AUDIO_TRACK_LOAD_ERROR\", v[v.KEY_LOAD_ERROR = 14] = \"KEY_LOAD_ERROR\", v[v.KEY_SYSTEM_LICENSE_REQUEST_FAILED = 15] = \"KEY_SYSTEM_LICENSE_REQUEST_FAILED\", v[v.DEC_LIB_LOAD_ERROR = 16] = \"DEC_LIB_LOAD_ERROR\", v[v.RTC_SDP_LOAD_ERROR = 17] = \"RTC_SDP_LOAD_ERROR\", v[v.SUBTITLE_TRACK_LOAD_ERROR = 18] = \"SUBTITLE_TRACK_LOAD_ERROR\", v[v.CANNOT_SEEK = 100] = \"CANNOT_SEEK\", v[v.VIDEO_ERROR = 101] = \"VIDEO_ERROR\", v[v.UNSUPPORTED = 102] = \"UNSUPPORTED\", v[v.CONFIG_ERROR = 103] = \"CONFIG_ERROR\", v[v.OTHER = 104] = \"OTHER\", v[v.UNKNOWN = 105] = \"UNKNOWN\", v[v.CANNOT_SEEK_BY_FRAME_INDEX = 106] = \"CANNOT_SEEK_BY_FRAME_INDEX\", v[v.SRC_EMPTY = 107] = \"SRC_EMPTY\", v[v.VIDEO_ERROR_1 = 111] = \"VIDEO_ERROR_1\", v[v.VIDEO_ERROR_2 = 112] = \"VIDEO_ERROR_2\", v[v.VIDEO_ERROR_3 = 113] = \"VIDEO_ERROR_3\", v[v.VIDEO_ERROR_4 = 114] = \"VIDEO_ERROR_4\", v[v.MEDIASOURCE_ERROR = 200] = \"MEDIASOURCE_ERROR\", v[v.ADDSOURCEBUFFER_ERROR = 201] = \"ADDSOURCEBUFFER_ERROR\", v[v.SOURCEBUFFER_ERROR = 202] = \"SOURCEBUFFER_ERROR\", v[v.ENDOFSTREAM_ERROR = 203] = \"ENDOFSTREAM_ERROR\", v[v.APPENDBUFFER_ERROR = 204] = \"APPENDBUFFER_ERROR\", v[v.CHANGETYPE_ERROR = 205] = \"CHANGETYPE_ERROR\", v[v.PARSING_ERROR = 301] = \"PARSING_ERROR\", v[v.REMUX_ERROR = 302] = \"REMUX_ERROR\", v[v.REMUX_ALLOC_ERROR = 303] = \"REMUX_ALLOC_ERROR\", v[v.REMUX_WORKER_ERROR = 304] = \"REMUX_WORKER_ERROR\", v[v.DEMUX_NOT_FOUND = 305] = \"DEMUX_NOT_FOUND\", v[v.MANIFEST_PARSING_ERROR = 400] = \"MANIFEST_PARSING_ERROR\", v[v.KEY_SYSTEM_NO_ACCESS = 500] = \"KEY_SYSTEM_NO_ACCESS\", v[v.KEY_SYSTEM_NO_SESSION = 501] = \"KEY_SYSTEM_NO_SESSION\", v[v.KEY_SYSTEM_URL_ERROR = 502] = \"KEY_SYSTEM_URL_ERROR\", v[v.KEY_SYSTEM_NO_KEYS = 505] = \"KEY_SYSTEM_NO_KEYS\", v[v.FRAG_DECRYPT_ERROR = 506] = \"FRAG_DECRYPT_ERROR\", v[v.KEY_SYSTEM_NO_INIT_DATA = 507] = \"KEY_SYSTEM_NO_INIT_DATA\", v[v.KEY_SYSTEM_UNSUPPORTED = 508] = \"KEY_SYSTEM_UNSUPPORTED\", v[v.DECODER_LOAD_ERROR = 600] = \"DECODER_LOAD_ERROR\", v[v.DECODER_INIT_ERROR = 601] = \"DECODER_INIT_ERROR\", v[v.DECODER_DRAW_ERROR = 602] = \"DECODER_DRAW_ERROR\", v[v.DECODER_WEBGL_ERROR = 603] = \"DECODER_WEBGL_ERROR\", v[v.DECODER_UNSUPPORTED = 604] = \"DECODER_UNSUPPORTED\", v[v.PRELOAD_ERROR = 700] = \"PRELOAD_ERROR\", v[v.LIVE_DISCONNECTED_ERROR = 1009] = \"LIVE_DISCONNECTED_ERROR\", v[v.WEBRTC_DISCONNECTED_ERROR = 1010] = \"WEBRTC_DISCONNECTED_ERROR\", v[v.WEBRTC_FAILED_ERROR = 1011] = \"WEBRTC_FAILED_ERROR\", v[v.WEBRTC_CLOSED_ERROR = 1012] = \"WEBRTC_CLOSED_ERROR\", v[v.WEBRTC_ICE_CANDIDATE_ERROR = 1013] = \"WEBRTC_ICE_CANDIDATE_ERROR\", v[v.WEBRTC_ICE_CONNECTION_ERROR = 1014] = \"WEBRTC_ICE_CONNECTION_ERROR\", v[v.WEBRTC_OFFER_ERROR = 1015] = \"WEBRTC_OFFER_ERROR\", v[v.WEBRTC_ANSWER_ERROR = 1016] = \"WEBRTC_ANSWER_ERROR\", v[v.WEBRTC_TRANSMISSION_DATA_NULL = 1017] = \"WEBRTC_TRANSMISSION_DATA_NULL\", v[v.WEBRTC_CONNECT_TIMEOUT = 1018] = \"WEBRTC_CONNECT_TIMEOUT\", v[v.WEBRTC_CONNECT_FAILED = 1019] = \"WEBRTC_CONNECT_FAILED\";\n }(o || (o = {}));\n var l = [o.VIDEO_ERROR, o.VIDEO_ERROR_1, o.VIDEO_ERROR_2, o.VIDEO_ERROR_3, o.VIDEO_ERROR_4];\n}, function(t, e) {\n function i(r, o) {\n for (var l = 0; l < o.length; l++) {\n var v = o[l];\n v.enumerable = v.enumerable || !1, v.configurable = !0, \"value\" in v && (v.writable = !0), Object.defineProperty(r, v.key, v);\n }\n }\n t.exports = function(r, o, l) {\n return o && i(r.prototype, o), l && i(r, l), Object.defineProperty(r, \"prototype\", { writable: !1 }), r;\n }, t.exports.__esModule = !0, t.exports.default = t.exports;\n}, function(t, e, i) {\n i.d(e, \"d\", function() {\n return r;\n }), i.d(e, \"b\", function() {\n return o;\n }), i.d(e, \"c\", function() {\n return l;\n }), i.d(e, \"e\", function() {\n return v;\n }), i.d(e, \"a\", function() {\n return E;\n }), i.d(e, \"l\", function() {\n return C;\n }), i.d(e, \"f\", function() {\n return x;\n }), i.d(e, \"m\", function() {\n return g;\n }), i.d(e, \"j\", function() {\n return D;\n }), i.d(e, \"k\", function() {\n return _;\n }), i.d(e, \"g\", function() {\n return m;\n }), i.d(e, \"h\", function() {\n return p;\n }), i.d(e, \"i\", function() {\n return d;\n });\n var r = 1048576, o = 10485760, l = 25, v = 1e3, E = 1e3, C = 9e4, x = 1e3, g = 0.1, D = 240, _ = 1e3, m = 1e3, p = 1500, d = 2;\n}, function(t, e, i) {\n var r;\n i.d(e, \"a\", function() {\n return r;\n }), function(o) {\n o[o.HEVC_NAL_TRAIL_N = 0] = \"HEVC_NAL_TRAIL_N\", o[o.HEVC_NAL_TRAIL_R = 1] = \"HEVC_NAL_TRAIL_R\", o[o.HEVC_NAL_TSA_N = 2] = \"HEVC_NAL_TSA_N\", o[o.HEVC_NAL_TSA_R = 3] = \"HEVC_NAL_TSA_R\", o[o.HEVC_NAL_STSA_N = 4] = \"HEVC_NAL_STSA_N\", o[o.HEVC_NAL_STSA_R = 5] = \"HEVC_NAL_STSA_R\", o[o.HEVC_NAL_RADL_N = 6] = \"HEVC_NAL_RADL_N\", o[o.HEVC_NAL_RADL_R = 7] = \"HEVC_NAL_RADL_R\", o[o.HEVC_NAL_RASL_N = 8] = \"HEVC_NAL_RASL_N\", o[o.HEVC_NAL_RASL_R = 9] = \"HEVC_NAL_RASL_R\", o[o.HEVC_NAL_VCL_N10 = 10] = \"HEVC_NAL_VCL_N10\", o[o.HEVC_NAL_VCL_R11 = 11] = \"HEVC_NAL_VCL_R11\", o[o.HEVC_NAL_VCL_N12 = 12] = \"HEVC_NAL_VCL_N12\", o[o.HEVC_NAL_VCL_R13 = 13] = \"HEVC_NAL_VCL_R13\", o[o.HEVC_NAL_VCL_N14 = 14] = \"HEVC_NAL_VCL_N14\", o[o.HEVC_NAL_VCL_R15 = 15] = \"HEVC_NAL_VCL_R15\", o[o.HEVC_NAL_BLA_W_LP = 16] = \"HEVC_NAL_BLA_W_LP\", o[o.HEVC_NAL_BLA_W_RADL = 17] = \"HEVC_NAL_BLA_W_RADL\", o[o.HEVC_NAL_BLA_N_LP = 18] = \"HEVC_NAL_BLA_N_LP\", o[o.HEVC_NAL_IDR_W_RADL = 19] = \"HEVC_NAL_IDR_W_RADL\", o[o.HEVC_NAL_IDR_N_LP = 20] = \"HEVC_NAL_IDR_N_LP\", o[o.HEVC_NAL_CRA_NUT = 21] = \"HEVC_NAL_CRA_NUT\", o[o.HEVC_NAL_RSV_IRAP_VCL22 = 22] = \"HEVC_NAL_RSV_IRAP_VCL22\", o[o.HEVC_NAL_RSV_IRAP_VCL23 = 23] = \"HEVC_NAL_RSV_IRAP_VCL23\", o[o.HEVC_NAL_RSV_VCL24 = 24] = \"HEVC_NAL_RSV_VCL24\", o[o.HEVC_NAL_RSV_VCL25 = 25] = \"HEVC_NAL_RSV_VCL25\", o[o.HEVC_NAL_RSV_VCL26 = 26] = \"HEVC_NAL_RSV_VCL26\", o[o.HEVC_NAL_RSV_VCL27 = 27] = \"HEVC_NAL_RSV_VCL27\", o[o.HEVC_NAL_RSV_VCL28 = 28] = \"HEVC_NAL_RSV_VCL28\", o[o.HEVC_NAL_RSV_VCL29 = 29] = \"HEVC_NAL_RSV_VCL29\", o[o.HEVC_NAL_RSV_VCL30 = 30] = \"HEVC_NAL_RSV_VCL30\", o[o.HEVC_NAL_RSV_VCL31 = 31] = \"HEVC_NAL_RSV_VCL31\", o[o.HEVC_NAL_VPS = 32] = \"HEVC_NAL_VPS\", o[o.HEVC_NAL_SPS = 33] = \"HEVC_NAL_SPS\", o[o.HEVC_NAL_PPS = 34] = \"HEVC_NAL_PPS\", o[o.HEVC_NAL_AUD = 35] = \"HEVC_NAL_AUD\", o[o.HEVC_NAL_EOS_NUT = 36] = \"HEVC_NAL_EOS_NUT\", o[o.HEVC_NAL_EOB_NUT = 37] = \"HEVC_NAL_EOB_NUT\", o[o.HEVC_NAL_FD_NUT = 38] = \"HEVC_NAL_FD_NUT\", o[o.HEVC_NAL_SEI_PREFIX = 39] = \"HEVC_NAL_SEI_PREFIX\", o[o.HEVC_NAL_SEI_SUFFIX = 40] = \"HEVC_NAL_SEI_SUFFIX\", o[o.HEVC_NAL_RSV_NVCL41 = 41] = \"HEVC_NAL_RSV_NVCL41\", o[o.HEVC_NAL_RSV_NVCL42 = 42] = \"HEVC_NAL_RSV_NVCL42\", o[o.HEVC_NAL_RSV_NVCL43 = 43] = \"HEVC_NAL_RSV_NVCL43\", o[o.HEVC_NAL_RSV_NVCL44 = 44] = \"HEVC_NAL_RSV_NVCL44\", o[o.HEVC_NAL_RSV_NVCL45 = 45] = \"HEVC_NAL_RSV_NVCL45\", o[o.HEVC_NAL_RSV_NVCL46 = 46] = \"HEVC_NAL_RSV_NVCL46\", o[o.HEVC_NAL_RSV_NVCL47 = 47] = \"HEVC_NAL_RSV_NVCL47\", o[o.HEVC_NAL_UNSPEC48 = 48] = \"HEVC_NAL_UNSPEC48\", o[o.HEVC_NAL_UNSPEC49 = 49] = \"HEVC_NAL_UNSPEC49\", o[o.HEVC_NAL_UNSPEC50 = 50] = \"HEVC_NAL_UNSPEC50\", o[o.HEVC_NAL_UNSPEC51 = 51] = \"HEVC_NAL_UNSPEC51\", o[o.HEVC_NAL_UNSPEC52 = 52] = \"HEVC_NAL_UNSPEC52\", o[o.HEVC_NAL_UNSPEC53 = 53] = \"HEVC_NAL_UNSPEC53\", o[o.HEVC_NAL_UNSPEC54 = 54] = \"HEVC_NAL_UNSPEC54\", o[o.HEVC_NAL_UNSPEC55 = 55] = \"HEVC_NAL_UNSPEC55\", o[o.HEVC_NAL_UNSPEC56 = 56] = \"HEVC_NAL_UNSPEC56\", o[o.HEVC_NAL_UNSPEC57 = 57] = \"HEVC_NAL_UNSPEC57\", o[o.HEVC_NAL_UNSPEC58 = 58] = \"HEVC_NAL_UNSPEC58\", o[o.HEVC_NAL_UNSPEC59 = 59] = \"HEVC_NAL_UNSPEC59\", o[o.HEVC_NAL_UNSPEC60 = 60] = \"HEVC_NAL_UNSPEC60\", o[o.HEVC_NAL_UNSPEC61 = 61] = \"HEVC_NAL_UNSPEC61\", o[o.HEVC_NAL_UNSPEC62 = 62] = \"HEVC_NAL_UNSPEC62\", o[o.PRIV_NAL_MAGIC_HEVC = 63] = \"PRIV_NAL_MAGIC_HEVC\", o[o.NAL_UNIT_INVALID = 64] = \"NAL_UNIT_INVALID\";\n }(r || (r = {}));\n}, function(t, e) {\n function i() {\n return t.exports = i = Object.assign || function(r) {\n for (var o = 1; o < arguments.length; o++) {\n var l = arguments[o];\n for (var v in l)\n Object.prototype.hasOwnProperty.call(l, v) && (r[v] = l[v]);\n }\n return r;\n }, t.exports.__esModule = !0, t.exports.default = t.exports, i.apply(this, arguments);\n }\n t.exports = i, t.exports.__esModule = !0, t.exports.default = t.exports;\n}, function(t, e, i) {\n var r = i(8), o = i.n(r), l = {};\n (function(v) {\n if (typeof navigator < \"u\") {\n v = v ? v.toLowerCase() : navigator.userAgent.toLowerCase();\n var E = /(edge)\\/([\\w.]+)/.exec(v) || /(edg)\\/([\\w.]+)/.exec(v) || /(opr)[\\/]([\\w.]+)/.exec(v) || /(chrome)[ \\/]([\\w.]+)/.exec(v) || /(iemobile)[\\/]([\\w.]+)/.exec(v) || /(version)(applewebkit)[ \\/]([\\w.]+).*(safari)[ \\/]([\\w.]+)/.exec(v) || /(webkit)[ \\/]([\\w.]+).*(version)[ \\/]([\\w.]+).*(safari)[ \\/]([\\w.]+)/.exec(v) || /(webkit)[ \\/]([\\w.]+)/.exec(v) || /(opera)(?:.*version|)[ \\/]([\\w.]+)/.exec(v) || /(msie) ([\\w.]+)/.exec(v) || v.indexOf(\"trident\") >= 0 && /(rv)(?::| )([\\w.]+)/.exec(v) || v.indexOf(\"compatible\") < 0 && /(firefox)[ \\/]([\\w.]+)/.exec(v) || [], C = /(ipad)/.exec(v) || /(ipod)/.exec(v) || /(windows phone)/.exec(v) || /(iphone)/.exec(v) || /(kindle)/.exec(v) || /(android)/.exec(v) || /(windows)/.exec(v) || /(mac)/.exec(v) || /(linux)/.exec(v) || /(cros)/.exec(v) || [], x = { browser: E[5] || E[3] || E[1] || \"\", version: E[2] || E[4] || \"0\", majorVersion: E[4] || E[2] || \"0\", platform: C[0] || \"\" }, g = { x5: / tbs\\//.test(v), xweb: / xweb\\//.test(v) };\n if (x.browser) {\n g[x.browser] = !0;\n var D = x.majorVersion.split(\".\");\n g.version = { major: parseInt(x.majorVersion, 10), string: x.version }, D.length > 1 && (g.version.minor = parseInt(D[1], 10)), D.length > 2 && (g.version.build = parseInt(D[2], 10));\n }\n x.platform && (g[x.platform] = !0), (g.chrome || g.opr || g.safari) && (g.webkit = !0), (g.rv || g.iemobile) && (g.rv && delete g.rv, x.browser = \"msie\", g.msie = !0), (g.edg || g.edge) && (delete g.edg, delete g.edge, x.browser = \"msedge\", g.msedge = !0), g.opr && (x.browser = \"opera\", g.opera = !0), g.safari && g.android && (x.browser = \"android\", g.android = !0);\n for (var _ in (g.android || g.iphone || g.ipad) && (g.mobile = !0), g.ios = g.iphone || g.ipad, g.name = x.browser, g.platform = x.platform, l)\n l.hasOwnProperty(_) && delete l[_];\n o()(l, g);\n }\n })(), e.a = l;\n}, function(t, e, i) {\n i.d(e, \"a\", function() {\n return r;\n });\n var r = Number.isFinite || function(o) {\n return typeof o == \"number\" && isFinite(o);\n };\n}, function(t, e, i) {\n i.d(e, \"d\", function() {\n return r;\n }), i.d(e, \"a\", function() {\n return o;\n }), i.d(e, \"c\", function() {\n return l;\n }), i.d(e, \"b\", function() {\n return v;\n });\n var r, o, l, v;\n i(0), function(E) {\n E[E.video = 1] = \"video\", E[E.audio = 2] = \"audio\";\n }(r || (r = {})), function(E) {\n E[E.ADTS = 0] = \"ADTS\", E[E.ASC = 1] = \"ASC\";\n }(o || (o = {})), function(E) {\n E.videoFrame = \"videoFrame\", E.decoderConfig = \"decoderConfig\";\n }(l || (l = {})), function(E) {\n E.UNKNOWN = \"unknown\", E.FLV = \"flv\", E.FMP4 = \"fmp4\", E.TS = \"ts\", E.MP4 = \"mp4\", E.RAW = \"raw\", E.IVF = \"ivf\", E.YUV = \"yuv\";\n }(v || (v = {}));\n}, function(t, e, i) {\n var r = i(47);\n t.exports = function(o, l) {\n o.prototype = Object.create(l.prototype), o.prototype.constructor = o, r(o, l);\n }, t.exports.__esModule = !0, t.exports.default = t.exports;\n}, function(t, e, i) {\n var r;\n i.d(e, \"a\", function() {\n return r;\n }), function(o) {\n o.INIT_265 = \"init265\", o.APPEND_DATA = \"appendData\", o.MEDIA_INFO = \"mediaInfo\", o.UPDATE_STATE = \"updateState\", o.RESET = \"reset\", o.DESTROY = \"destroy\", o.STEP = \"step\", o.SEEK = \"seek\", o.END_OF_DATA = \"endOfData\", o.DEC_DROP_FRAME = \"dropFrame\", o.CLEAN = \"clean\", o.EXPIRED_DATA_SYNC = \"expiredDataSync\", o.INIT_RENDERER = \"initRenderer\";\n }(r || (r = {}));\n}, function(t, e, i) {\n var r = i(39), o = function() {\n function l() {\n this.__evt = new r.EventEmitter();\n }\n var v = l.prototype;\n return v.on = function(E, C) {\n this.__evt.on(E, C);\n }, v.prependListener = function(E, C) {\n this.__evt.prependListener(E, C);\n }, v.removeAllListeners = function(E) {\n this.__evt.removeAllListeners(E);\n }, v.off = function(E, C) {\n this.__evt.off(E, C);\n }, v.listeners = function(E) {\n return this.__evt.listeners(E);\n }, v.emit = function(E, C) {\n return this.__evt.emit(E, C);\n }, v.listenerCount = function(E) {\n return this.__evt.listenerCount(E);\n }, l;\n }();\n e.a = o;\n}, function(t, e, i) {\n var r, o, l, v, E, C, x;\n i.d(e, \"a\", function() {\n return E;\n }), i.d(e, \"d\", function() {\n return C;\n }), i.d(e, \"c\", function() {\n return x;\n }), i.d(e, \"b\", function() {\n return g;\n }), i.d(e, \"e\", function() {\n return d;\n }), function(u) {\n u[u.AVCOL_PRI_RESERVED0 = 0] = \"AVCOL_PRI_RESERVED0\", u[u.AVCOL_PRI_BT709 = 1] = \"AVCOL_PRI_BT709\", u[u.AVCOL_PRI_UNSPECIFIED = 2] = \"AVCOL_PRI_UNSPECIFIED\", u[u.AVCOL_PRI_RESERVED = 3] = \"AVCOL_PRI_RESERVED\", u[u.AVCOL_PRI_BT470M = 4] = \"AVCOL_PRI_BT470M\", u[u.AVCOL_PRI_BT470BG = 5] = \"AVCOL_PRI_BT470BG\", u[u.AVCOL_PRI_SMPTE170M = 6] = \"AVCOL_PRI_SMPTE170M\", u[u.AVCOL_PRI_SMPTE240M = 7] = \"AVCOL_PRI_SMPTE240M\", u[u.AVCOL_PRI_FILM = 8] = \"AVCOL_PRI_FILM\", u[u.AVCOL_PRI_BT2020 = 9] = \"AVCOL_PRI_BT2020\", u[u.AVCOL_PRI_SMPTE428 = 10] = \"AVCOL_PRI_SMPTE428\", u[u.AVCOL_PRI_SMPTEST428_1 = 10] = \"AVCOL_PRI_SMPTEST428_1\", u[u.AVCOL_PRI_SMPTE431 = 11] = \"AVCOL_PRI_SMPTE431\", u[u.AVCOL_PRI_SMPTE432 = 12] = \"AVCOL_PRI_SMPTE432\", u[u.AVCOL_PRI_EBU3213 = 22] = \"AVCOL_PRI_EBU3213\", u[u.AVCOL_PRI_JEDEC_P22 = 22] = \"AVCOL_PRI_JEDEC_P22\", u[u.AVCOL_PRI_NB = 23] = \"AVCOL_PRI_NB\";\n }(E || (E = {})), function(u) {\n u[u.AVCOL_TRC_RESERVED0 = 0] = \"AVCOL_TRC_RESERVED0\", u[u.AVCOL_TRC_BT709 = 1] = \"AVCOL_TRC_BT709\", u[u.AVCOL_TRC_UNSPECIFIED = 2] = \"AVCOL_TRC_UNSPECIFIED\", u[u.AVCOL_TRC_RESERVED = 3] = \"AVCOL_TRC_RESERVED\", u[u.AVCOL_TRC_GAMMA22 = 4] = \"AVCOL_TRC_GAMMA22\", u[u.AVCOL_TRC_GAMMA28 = 5] = \"AVCOL_TRC_GAMMA28\", u[u.AVCOL_TRC_SMPTE170M = 6] = \"AVCOL_TRC_SMPTE170M\", u[u.AVCOL_TRC_SMPTE240M = 7] = \"AVCOL_TRC_SMPTE240M\", u[u.AVCOL_TRC_LINEAR = 8] = \"AVCOL_TRC_LINEAR\", u[u.AVCOL_TRC_LOG = 9] = \"AVCOL_TRC_LOG\", u[u.AVCOL_TRC_LOG_SQRT = 10] = \"AVCOL_TRC_LOG_SQRT\", u[u.AVCOL_TRC_IEC61966_2_4 = 11] = \"AVCOL_TRC_IEC61966_2_4\", u[u.AVCOL_TRC_BT1361_ECG = 12] = \"AVCOL_TRC_BT1361_ECG\", u[u.AVCOL_TRC_IEC61966_2_1 = 13] = \"AVCOL_TRC_IEC61966_2_1\", u[u.AVCOL_TRC_BT2020_10 = 14] = \"AVCOL_TRC_BT2020_10\", u[u.AVCOL_TRC_BT2020_12 = 15] = \"AVCOL_TRC_BT2020_12\", u[u.AVCOL_TRC_SMPTE2084 = 16] = \"AVCOL_TRC_SMPTE2084\", u[u.AVCOL_TRC_SMPTEST2084 = 16] = \"AVCOL_TRC_SMPTEST2084\", u[u.AVCOL_TRC_SMPTE428 = 17] = \"AVCOL_TRC_SMPTE428\", u[u.AVCOL_TRC_SMPTEST428_1 = 17] = \"AVCOL_TRC_SMPTEST428_1\", u[u.AVCOL_TRC_ARIB_STD_B67 = 18] = \"AVCOL_TRC_ARIB_STD_B67\", u[u.AVCOL_TRC_NB = 19] = \"AVCOL_TRC_NB\";\n }(C || (C = {})), function(u) {\n u[u.AVCOL_SPC_RGB = 0] = \"AVCOL_SPC_RGB\", u[u.AVCOL_SPC_BT709 = 1] = \"AVCOL_SPC_BT709\", u[u.AVCOL_SPC_UNSPECIFIED = 2] = \"AVCOL_SPC_UNSPECIFIED\", u[u.AVCOL_SPC_RESERVED = 3] = \"AVCOL_SPC_RESERVED\", u[u.AVCOL_SPC_FCC = 4] = \"AVCOL_SPC_FCC\", u[u.AVCOL_SPC_BT470BG = 5] = \"AVCOL_SPC_BT470BG\", u[u.AVCOL_SPC_SMPTE170M = 6] = \"AVCOL_SPC_SMPTE170M\", u[u.AVCOL_SPC_SMPTE240M = 7] = \"AVCOL_SPC_SMPTE240M\", u[u.AVCOL_SPC_YCGCO = 8] = \"AVCOL_SPC_YCGCO\", u[u.AVCOL_SPC_YCOCG = 8] = \"AVCOL_SPC_YCOCG\", u[u.AVCOL_SPC_BT2020_NCL = 9] = \"AVCOL_SPC_BT2020_NCL\", u[u.AVCOL_SPC_BT2020_CL = 10] = \"AVCOL_SPC_BT2020_CL\", u[u.AVCOL_SPC_SMPTE2085 = 11] = \"AVCOL_SPC_SMPTE2085\", u[u.AVCOL_SPC_CHROMA_DERIVED_NCL = 12] = \"AVCOL_SPC_CHROMA_DERIVED_NCL\", u[u.AVCOL_SPC_CHROMA_DERIVED_CL = 13] = \"AVCOL_SPC_CHROMA_DERIVED_CL\", u[u.AVCOL_SPC_ICTCP = 14] = \"AVCOL_SPC_ICTCP\", u[u.AVCOL_SPC_NB = 15] = \"AVCOL_SPC_NB\";\n }(x || (x = {}));\n var g, D = ((r = {})[E.AVCOL_PRI_RESERVED0] = \"reserved\", r[E.AVCOL_PRI_BT709] = \"bt709\", r[E.AVCOL_PRI_UNSPECIFIED] = \"unknown\", r[E.AVCOL_PRI_RESERVED] = \"reserved\", r[E.AVCOL_PRI_BT470M] = \"bt470m\", r[E.AVCOL_PRI_BT470BG] = \"bt470bg\", r[E.AVCOL_PRI_SMPTE170M] = \"smpte170m\", r[E.AVCOL_PRI_SMPTE240M] = \"smpte240m\", r[E.AVCOL_PRI_FILM] = \"film\", r[E.AVCOL_PRI_BT2020] = \"bt2020\", r[E.AVCOL_PRI_SMPTE428] = \"smpte428\", r[E.AVCOL_PRI_SMPTE431] = \"smpte431\", r[E.AVCOL_PRI_SMPTE432] = \"smpte432\", r[E.AVCOL_PRI_EBU3213] = \"ebu3213\", r), _ = ((o = {})[C.AVCOL_TRC_RESERVED0] = \"reserved\", o[C.AVCOL_TRC_BT709] = \"bt709\", o[C.AVCOL_TRC_UNSPECIFIED] = \"unknown\", o[C.AVCOL_TRC_RESERVED] = \"reserved\", o[C.AVCOL_TRC_GAMMA22] = \"bt470m\", o[C.AVCOL_TRC_GAMMA28] = \"bt470bg\", o[C.AVCOL_TRC_SMPTE170M] = \"smpte170m\", o[C.AVCOL_TRC_SMPTE240M] = \"smpte240m\", o[C.AVCOL_TRC_LINEAR] = \"linear\", o[C.AVCOL_TRC_LOG] = \"log100\", o[C.AVCOL_TRC_LOG_SQRT] = \"log316\", o[C.AVCOL_TRC_IEC61966_2_4] = \"iec61966-2-4\", o[C.AVCOL_TRC_BT1361_ECG] = \"bt1361e\", o[C.AVCOL_TRC_IEC61966_2_1] = \"iec61966-2-1\", o[C.AVCOL_TRC_BT2020_10] = \"bt2020-10\", o[C.AVCOL_TRC_BT2020_12] = \"bt2020-12\", o[C.AVCOL_TRC_SMPTE2084] = \"smpte2084\", o[C.AVCOL_TRC_SMPTE428] = \"smpte428\", o[C.AVCOL_TRC_ARIB_STD_B67] = \"arib-std-b67\", o), m = ((l = {})[x.AVCOL_SPC_RGB] = \"gbr\", l[x.AVCOL_SPC_BT709] = \"bt709\", l[x.AVCOL_SPC_UNSPECIFIED] = \"unknown\", l[x.AVCOL_SPC_RESERVED] = \"reserved\", l[x.AVCOL_SPC_FCC] = \"fcc\", l[x.AVCOL_SPC_BT470BG] = \"bt470bg\", l[x.AVCOL_SPC_SMPTE170M] = \"smpte170m\", l[x.AVCOL_SPC_SMPTE240M] = \"smpte240m\", l[x.AVCOL_SPC_YCGCO] = \"ycgco\", l[x.AVCOL_SPC_BT2020_NCL] = \"bt2020nc\", l[x.AVCOL_SPC_BT2020_CL] = \"bt2020c\", l[x.AVCOL_SPC_SMPTE2085] = \"smpte2085\", l[x.AVCOL_SPC_CHROMA_DERIVED_NCL] = \"chroma-derived-nc\", l[x.AVCOL_SPC_CHROMA_DERIVED_CL] = \"chroma-derived-c\", l[x.AVCOL_SPC_ICTCP] = \"ictcp\", l);\n (function(u) {\n u[u.AVCOL_RANGE_UNSPECIFIED = 0] = \"AVCOL_RANGE_UNSPECIFIED\", u[u.AVCOL_RANGE_MPEG = 1] = \"AVCOL_RANGE_MPEG\", u[u.AVCOL_RANGE_JPEG = 2] = \"AVCOL_RANGE_JPEG\";\n })(g || (g = {}));\n var p = ((v = {})[g.AVCOL_RANGE_UNSPECIFIED] = \"unknown\", v[g.AVCOL_RANGE_MPEG] = \"tv\", v[g.AVCOL_RANGE_JPEG] = \"pc\", v);\n function d(u) {\n if (u && typeof u.colorRange == \"number\" && typeof u.matrixCoefficients == \"number\" && typeof u.colourPrimaries == \"number\" && typeof u.transferCharacteristics == \"number\") {\n var U = m[u.matrixCoefficients], w = D[u.colourPrimaries], S = _[u.transferCharacteristics];\n return U === w && U === S ? \"(\" + (u.colorRange ? p[u.colorRange] + \" \" : \"\") + U + \")\" : \"(\" + (u.colorRange ? p[u.colorRange] + \" \" : \"\") + U + \"/\" + w + \"/\" + S + \")\";\n }\n return \"\";\n }\n}, function(t, e, i) {\n var r;\n i.d(e, \"j\", function() {\n return r;\n }), i.d(e, \"e\", function() {\n return o;\n }), i.d(e, \"f\", function() {\n return l;\n }), i.d(e, \"g\", function() {\n return v;\n }), i.d(e, \"h\", function() {\n return E;\n }), i.d(e, \"d\", function() {\n return C;\n }), i.d(e, \"a\", function() {\n return x;\n }), i.d(e, \"b\", function() {\n return g;\n }), i.d(e, \"c\", function() {\n return D;\n }), i.d(e, \"i\", function() {\n return _;\n }), function(m) {\n m[m.AUDIO = 8] = \"AUDIO\", m[m.VIDEO = 9] = \"VIDEO\", m[m.SCRIPT = 18] = \"SCRIPT\";\n }(r || (r = {}));\n var o = 13, l = 11, v = 4, E = 5, C = 0, x = 1, g = 3, D = 5, _ = function() {\n this.tagType = r.VIDEO, this.dataSize = 0, this.timestamp = 0, this.size = 0, this.cts = 0, this.frameType = 0, this.codecId = 0, this.body = void 0, this.packetType = void 0;\n };\n}, function(t, e, i) {\n var r;\n i.d(e, \"a\", function() {\n return r;\n }), function(o) {\n o[o.VVC_NAL_UNIT_CODED_SLICE_TRAIL = 0] = \"VVC_NAL_UNIT_CODED_SLICE_TRAIL\", o[o.VVC_NAL_UNIT_CODED_SLICE_STSA = 1] = \"VVC_NAL_UNIT_CODED_SLICE_STSA\", o[o.VVC_NAL_UNIT_CODED_SLICE_RADL = 2] = \"VVC_NAL_UNIT_CODED_SLICE_RADL\", o[o.VVC_NAL_UNIT_CODED_SLICE_RASL = 3] = \"VVC_NAL_UNIT_CODED_SLICE_RASL\", o[o.VVC_NAL_UNIT_RESERVED_VCL_4 = 4] = \"VVC_NAL_UNIT_RESERVED_VCL_4\", o[o.VVC_NAL_UNIT_RESERVED_VCL_5 = 5] = \"VVC_NAL_UNIT_RESERVED_VCL_5\", o[o.VVC_NAL_UNIT_RESERVED_VCL_6 = 6] = \"VVC_NAL_UNIT_RESERVED_VCL_6\", o[o.VVC_NAL_UNIT_CODED_SLICE_IDR_W_RADL = 7] = \"VVC_NAL_UNIT_CODED_SLICE_IDR_W_RADL\", o[o.VVC_NAL_UNIT_CODED_SLICE_IDR_N_LP = 8] = \"VVC_NAL_UNIT_CODED_SLICE_IDR_N_LP\", o[o.VVC_NAL_UNIT_CODED_SLICE_CRA = 9] = \"VVC_NAL_UNIT_CODED_SLICE_CRA\", o[o.VVC_NAL_UNIT_CODED_SLICE_GDR = 10] = \"VVC_NAL_UNIT_CODED_SLICE_GDR\", o[o.VVC_NAL_UNIT_RESERVED_IRAP_VCL_11 = 11] = \"VVC_NAL_UNIT_RESERVED_IRAP_VCL_11\", o[o.VVC_NAL_UNIT_OPI = 12] = \"VVC_NAL_UNIT_OPI\", o[o.VVC_NAL_UNIT_DCI = 13] = \"VVC_NAL_UNIT_DCI\", o[o.VVC_NAL_UNIT_VPS = 14] = \"VVC_NAL_UNIT_VPS\", o[o.VVC_NAL_UNIT_SPS = 15] = \"VVC_NAL_UNIT_SPS\", o[o.VVC_NAL_UNIT_PPS = 16] = \"VVC_NAL_UNIT_PPS\", o[o.VVC_NAL_UNIT_PREFIX_APS = 17] = \"VVC_NAL_UNIT_PREFIX_APS\", o[o.VVC_NAL_UNIT_SUFFIX_APS = 18] = \"VVC_NAL_UNIT_SUFFIX_APS\", o[o.VVC_NAL_UNIT_PH = 19] = \"VVC_NAL_UNIT_PH\", o[o.VVC_NAL_UNIT_ACCESS_UNIT_DELIMITER = 20] = \"VVC_NAL_UNIT_ACCESS_UNIT_DELIMITER\", o[o.VVC_NAL_UNIT_EOS = 21] = \"VVC_NAL_UNIT_EOS\", o[o.VVC_NAL_UNIT_EOB = 22] = \"VVC_NAL_UNIT_EOB\", o[o.VVC_NAL_UNIT_PREFIX_SEI = 23] = \"VVC_NAL_UNIT_PREFIX_SEI\", o[o.VVC_NAL_UNIT_SUFFIX_SEI = 24] = \"VVC_NAL_UNIT_SUFFIX_SEI\", o[o.VVC_NAL_UNIT_FD = 25] = \"VVC_NAL_UNIT_FD\", o[o.VVC_NAL_UNIT_RESERVED_NVCL_26 = 26] = \"VVC_NAL_UNIT_RESERVED_NVCL_26\", o[o.VVC_NAL_UNIT_RESERVED_NVCL_27 = 27] = \"VVC_NAL_UNIT_RESERVED_NVCL_27\", o[o.VVC_NAL_UNIT_UNSPECIFIED_28 = 28] = \"VVC_NAL_UNIT_UNSPECIFIED_28\", o[o.VVC_NAL_UNIT_UNSPECIFIED_29 = 29] = \"VVC_NAL_UNIT_UNSPECIFIED_29\", o[o.VVC_NAL_UNIT_UNSPECIFIED_30 = 30] = \"VVC_NAL_UNIT_UNSPECIFIED_30\", o[o.VVC_NAL_UNIT_UNSPECIFIED_31 = 31] = \"VVC_NAL_UNIT_UNSPECIFIED_31\", o[o.VVC_NAL_UNIT_INVALID = 32] = \"VVC_NAL_UNIT_INVALID\";\n }(r || (r = {}));\n}, function(t, e, i) {\n i.d(e, \"b\", function() {\n return x;\n }), i.d(e, \"f\", function() {\n return m;\n }), i.d(e, \"g\", function() {\n return p;\n }), i.d(e, \"d\", function() {\n return d;\n }), i.d(e, \"e\", function() {\n return u;\n }), i.d(e, \"c\", function() {\n return U;\n }), i.d(e, \"a\", function() {\n return w;\n });\n var r = i(4), o = i(1), l = i(11), v = i(2), E = i(3), C = [96e3, 88200, 64e3, 48e3, 44100, 32e3, 24e3, 22050, 16e3, 12e3, 11025, 8e3, 7350];\n function x(S, R, z) {\n z === void 0 && (z = \"mp4a.40.2\"), z = z || \"mp4a.40.2\";\n var W = C.indexOf(S);\n if (!(W < 0 || z !== \"mp4a.40.5\" && z !== \"mp4a.40.2\"))\n return z === \"mp4a.40.5\" && (W += 3), new Uint8Array([((31 & (z === \"mp4a.40.2\" ? 2 : 5)) << 3) + (W >> 1 & 7), ((1 & W) << 7) + ((15 & R) << 3)]);\n }\n function g(S, R) {\n return S[R] === 255 && (246 & S[R + 1]) == 240;\n }\n function D(S, R) {\n return 1 & S[R + 1] ? 7 : 9;\n }\n function _(S, R) {\n return (3 & S[R + 3]) << 11 | S[R + 4] << 3 | (224 & S[R + 5]) >>> 5;\n }\n function m(S, R) {\n return !!(R + 1 < S.length && g(S, R));\n }\n function p(S, R) {\n return S.asc !== Object(E.e)(R);\n }\n function d(S, R, z, W, fe) {\n if (fe === void 0 && (fe = \"\"), p(S, z) || !S.samplerate || !S.configParsed) {\n var q = W === l.a.ADTS ? function(P) {\n return { objectType: 1 + ((192 & P[0]) >>> 6), sampleingIndex: (60 & P[0]) >>> 2, chanelConfig: (1 & P[0]) << 2 | (192 & P[1]) >>> 6 };\n }(z) : function(P) {\n return { objectType: P[0] >>> 3, sampleingIndex: (7 & P[0]) << 1 | P[1] >>> 7, chanelConfig: (120 & P[1]) >>> 3 };\n }(z);\n if (q.sampleingIndex < 0 || q.sampleingIndex >= 13) {\n var ve = { type: r.b.MUX_ERROR, details: r.a.PARSING_ERROR, fatal: !0, reason: \"invalid sampling index:\" + q.sampleingIndex };\n return void R.emit(o.a.ERROR, ve);\n }\n if (q.chanelConfig < 0 || q.chanelConfig >= 8) {\n var Ae = { type: r.b.MUX_ERROR, details: r.a.PARSING_ERROR, fatal: !0, reason: \"invalid chanelConfig:\" + q.chanelConfig };\n return void R.emit(o.a.ERROR, Ae);\n }\n u(S, q, fe), S.asc = Object(E.e)(z), S.configParsed = !0;\n }\n }\n function u(S, R, z) {\n z === void 0 && (z = \"\");\n var W = function(fe, q) {\n q === void 0 && (q = \"\");\n var ve, Ae, P = fe.objectType, Me = fe.sampleingIndex, Ie = fe.chanelConfig, je = navigator.userAgent.toLowerCase(), ke = q || \"mp4a.40.\" + P;\n return v.b.v(\"manifest codec:\" + q + \",data:type:\" + P + \",sampleingIndex:\" + Me + \"[\" + C[Me] + \"Hz],channelConfig:\" + Ie), /firefox/i.test(je) ? Me >= 6 ? (P = 5, Ae = new Array(4), ve = Me - 3) : (P = 2, Ae = new Array(2), ve = Me) : je.indexOf(\"android\") !== -1 ? (P = 2, Ae = new Array(2), ve = Me) : (P = 5, Ae = new Array(4), q && (q.indexOf(\"mp4a.40.29\") !== -1 || q.indexOf(\"mp4a.40.5\") !== -1) || !q && Me >= 6 ? ve = Me - 3 : ((q && q.indexOf(\"mp4a.40.2\") !== -1 && (Me >= 6 && Ie === 1 || /vivaldi/i.test(je)) || !q && Ie === 1) && (P = 2, Ae = new Array(2)), ve = Me)), Ae[0] = P << 3, Ae[0] |= (14 & Me) >> 1, Ae[1] |= (1 & Me) << 7, Ae[1] |= Ie << 3, P === 5 && (Ae[1] |= (14 & ve) >> 1, Ae[2] = (1 & ve) << 7, Ae[2] |= 8, Ae[3] = 0), { config: Ae, samplerate: C[Me], extensionSamplerate: C[ve], channelCount: Ie, codec: \"mp4a.40.\" + P, manifestCodec: ke };\n }(R, z);\n W && (S.config = W.config, S.samplerate = W.samplerate, S.extensionSamplerate = W.extensionSamplerate, S.channelCount = W.channelCount, S.codec = W.codec, S.manifestCodec = W.manifestCodec, S.sampleDuration = U(S.samplerate, S.inputTimescale), v.b.v(\"parsed codec:\" + S.codec + \",rate:\" + W.samplerate + \",nb channel:\" + W.channelCount));\n }\n function U(S, R) {\n return 1024 * R / S;\n }\n function w(S, R, z, W, fe) {\n var q = function(ke, H, ie, ye, we) {\n var J, le = ke.length, me = D(ke, H);\n return J = _(ke, H), (J -= me) > 0 && H + me + J <= le ? { headerLength: me, frameLength: J, stamp: ie + ye * we } : null;\n }(R, z, W, fe, U(S.samplerate, S.inputTimescale));\n if (q) {\n var ve = q.frameLength, Ae = q.headerLength, P = q.stamp, Me = Ae + ve, Ie = Math.max(0, z + Me - R.length);\n Ie ? new Uint8Array(Me - Ae).set(R.subarray(z + Ae, R.length), 0) : R.subarray(z + Ae, z + Me);\n var je = { unit: R.subarray(z + Ae, z + Ae + ve), pts: P, dts: P, originDTS: 0 };\n return Ie || S.samples.push(je), { sample: je, length: Me, missing: Ie };\n }\n }\n}, function(t, e, i) {\n i.d(e, \"b\", function() {\n return E;\n }), i.d(e, \"a\", function() {\n return C;\n });\n var r = i(6), o = i(0), l = i(11);\n function v(x, g, D) {\n return D === void 0 && (D = r.e), { type: x, id: l.d[x], pid: -1, inputTimescale: D, timescale: D, codec: \"\", sequenceNumber: 0, samples: [], mp4Samples: [], duration: g, sampleDuration: 0, fillDuration: 0 };\n }\n function E(x, g) {\n g === void 0 && (g = r.e);\n var D = v(o.l.VIDEO, x, g);\n return D.codedWidth = 0, D.codedHeight = 0, D.rotation = 0, D.sar = { width: 1, height: 1 }, D.profile = \"\", D.level = \"\", D.chromaFormat = \"\", D.fps = 0, D.codecType = o.b.unknown, D.dpb = 16, D;\n }\n function C(x, g) {\n g === void 0 && (g = r.e);\n var D = v(o.l.AUDIO, x, g);\n return D.config = [], D.samplerate = 0, D.channelCount = 0, D.codecType = o.b.unknown, D;\n }\n}, function(t, e) {\n t.exports = function(i) {\n if (i === void 0)\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n return i;\n }, t.exports.__esModule = !0, t.exports.default = t.exports;\n}, function(t, e, i) {\n var r = i(5), o = i.n(r), l = function() {\n function v() {\n this._size = 0, this._cache = [], this._index = 0, this._offset = 0;\n }\n var E = v.prototype;\n return E.put = function(C) {\n if (this.unreadLen + C.byteLength >= v.MAX_CACHE_SIZE)\n throw new Error(\"max cache size\");\n this._cache.push(C), this._size += C.byteLength;\n }, E.get = function(C) {\n if (!(C > this.unreadLen)) {\n var x, g = this._cache[this._index];\n if (this._offset === 0 && C === g.byteLength)\n C === g.buffer.byteLength ? x = g : (x = new Uint8Array(C)).set(g), this._index++, this._offset = 0;\n else {\n x = new Uint8Array(C);\n for (var D = 0, _ = 0, m = 0; D < C; )\n m = this._offset, _ = Math.min(g.byteLength, C - D + m), m === 0 && _ === g.byteLength ? x.set(g, D) : x.set(g.subarray(m, _), D), D += _ - m, _ >= g.byteLength ? (this._index++, g = this._cache[this._index], this._offset = 0) : this._offset = _;\n }\n return this._collateCache(), x;\n }\n }, E.read = function(C) {\n if (!(C > this.unreadLen)) {\n for (var x = new Uint8Array(C), g = this._index, D = 0, _ = 0, m = this._offset; D < C; ) {\n var p = this._cache[g];\n g > 0 && (m = 0), _ = Math.min(p.byteLength, C - D + m), x.set(p.subarray(m, _), D), D += _ - m, g++;\n }\n return x;\n }\n }, E.skip = function(C) {\n var x = this._offset + C;\n if (!(x > this._size)) {\n if (x === this._size)\n this.clear();\n else\n for (; x > 0; ) {\n var g = this._cache[this._index].byteLength;\n x < g ? (this._offset = x, x = 0) : x === g ? (this._offset = 0, x = 0, this._index++) : (this._offset = 0, x -= g, this._index++);\n }\n this._collateCache();\n }\n }, E.clear = function() {\n this._size = 0, this._cache = [], this._index = 0, this._offset = 0;\n }, E._collateCache = function() {\n for (; this._index; ) {\n var C = this._cache.shift();\n C && (this._size -= C.byteLength), this._index--;\n }\n }, o()(v, [{ key: \"unreadLen\", get: function() {\n return this._size - this._offset;\n } }]), v;\n }();\n l.MAX_CACHE_SIZE = 104857600, e.a = l;\n}, function(t, e, i) {\n var r, o;\n i.d(e, \"a\", function() {\n return r;\n }), i.d(e, \"b\", function() {\n return o;\n }), function(l) {\n l[l.AV_PIX_FMT_MONO = 0] = \"AV_PIX_FMT_MONO\", l[l.AV_PIX_FMT_YUV420P = 1] = \"AV_PIX_FMT_YUV420P\", l[l.AV_PIX_FMT_YUV422P = 2] = \"AV_PIX_FMT_YUV422P\", l[l.AV_PIX_FMT_YUV444P = 3] = \"AV_PIX_FMT_YUV444P\";\n }(r || (r = {})), function(l) {\n l[l.normal = 0] = \"normal\", l[l.fill = 1] = \"fill\";\n }(o || (o = {}));\n}, function(t, e, i) {\n var r = i(37), o = i(0), l = i(2), v = i(18), E = { chanelConfig: 2, objectType: 2, sampleingIndex: 7 }, C = \"audio-helper\", x = function() {\n function g() {\n }\n return g.initAudioForFillSilent = function(D, _) {\n _ === void 0 && (_ = \"\"), D.codec || (v.e(D, E, _ || (/firefox/.test(navigator.userAgent.toLowerCase()) ? \"mp4a.40.2\" : \"mp4a.40.5\")), D.codecType = o.b.aac);\n }, g.fillAACFrameByCount = function(D, _, m, p, d) {\n p === void 0 && (p = 0), d === void 0 && (d = \"\"), g.initAudioForFillSilent(D, d);\n var u = r.a.getSilentFrame(D.manifestCodec || D.codec, D.channelCount);\n if (u && m > 0) {\n for (var U = v.c(D.samplerate, D.inputTimescale), w = _ * D.inputTimescale || 0, S = 0; S < m; S++)\n D.samples.push({ unit: u, pts: w, dts: w, duration: U, originDTS: p * D.inputTimescale + U * S }), w += U;\n return D.fillDuration += U * m, w / D.inputTimescale;\n }\n return _;\n }, g.ensureAudioFrame = function(D, _, m, p) {\n if (m === void 0 && (m = \"\"), _.samples.length) {\n if (D.samples.length === 0) {\n var d = _.samples[0].dts / _.inputTimescale;\n l.b.i(C, \"fill audio before remux frame @\" + d + \". audio sample num:\" + D.samples.length + \" video sample num:\" + _.samples.length), g.fillAACFrameByCount(D, d, 1, _.samples[0].originDTS / _.inputTimescale, m);\n }\n var u = _.samples[_.samples.length - 1], U = u.dts / _.inputTimescale - (D.samples.length ? D.samples[D.samples.length - 1].dts / D.inputTimescale : _.samples[0].dts / _.inputTimescale);\n p && U > 1 && (l.b.i(C, \"fill audio @end:\" + u.dts / _.inputTimescale + \". diff:\" + U), g.fillAACFrameByCount(D, u.dts / _.inputTimescale, 1, u.originDTS / _.inputTimescale, m));\n }\n }, g.alignStartByVideo = function(D, _) {\n if (_.samples.length && D.active && D.samples.length) {\n var m = v.c(D.samplerate, D.inputTimescale), p = _.samples[0], d = D.samples[0], u = p.pts / _.inputTimescale * D.inputTimescale;\n if (d.pts - u < m)\n return;\n var U = r.a.getSilentFrame(D.manifestCodec || D.codec, D.channelCount);\n U && (l.b.i(C, \"align start by video. fill audio \" + p.pts / _.inputTimescale + \". gap:\" + (p.pts / _.inputTimescale - d.pts / D.inputTimescale)), D.samples.unshift({ unit: U, pts: u, dts: u, duration: m, originDTS: p.originDTS / _.inputTimescale * D.inputTimescale }));\n }\n }, g;\n }();\n e.a = x;\n}, function(t, e, i) {\n i.d(e, \"b\", function() {\n return E;\n }), i.d(e, \"a\", function() {\n return C;\n });\n var r, o = i(8), l = i.n(o), v = { preferLowPowerToHighPerformance: !0, preserveDrawingBuffer: !0 };\n function E(g) {\n return g.getContext(\"webgl\", v) || g.getContext(\"experimental-webgl\", v);\n }\n function C() {\n if (!r) {\n var g = typeof HTMLCanvasElement > \"u\" ? new OffscreenCanvas(1, 1) : document.createElement(\"canvas\");\n x(g, r = { webGL: !1, performance: !1 }, !0) || x(g, r, !1);\n }\n return r;\n }\n function x(g, D, _) {\n _ === void 0 && (_ = !1);\n var m = !1, p = l()({ failIfMajorPerformanceCaveat: _ }, v);\n try {\n var d = g.getContext(\"webgl\", p) || g.getContext(\"experimental-webgl\", p);\n if (d) {\n var u = d.getExtension(\"WEBGL_debug_renderer_info\");\n D.webGL = !0, D.performance = _, u != null && u.UNMASKED_VENDOR_WEBGL && (D.vendor = d.getParameter(u == null ? void 0 : u.UNMASKED_VENDOR_WEBGL)), u != null && u.UNMASKED_RENDERER_WEBGL && (D.renderer = d.getParameter(u == null ? void 0 : u.UNMASKED_RENDERER_WEBGL)), m = !0;\n var U = d.getExtension(\"WEBGL_lose_context\");\n U && U.loseContext();\n }\n } catch (w) {\n }\n return m;\n }\n}, function(t, e, i) {\n var r = i(49), o = i(50), l = /^[\\x00-\\x20\\u00a0\\u1680\\u2000-\\u200a\\u2028\\u2029\\u202f\\u205f\\u3000\\ufeff]+/, v = /[\\n\\r\\t]/g, E = /^[A-Za-z][A-Za-z0-9+-.]*:\\/\\//, C = /:\\d+$/, x = /^([a-z][a-z0-9.+-]*:)?(\\/\\/)?([\\\\/]+)?([\\S\\s]*)/i, g = /^[a-zA-Z]:/;\n function D(w) {\n return (w || \"\").toString().replace(l, \"\");\n }\n var _ = [[\"#\", \"hash\"], [\"?\", \"query\"], function(w, S) {\n return d(S.protocol) ? w.replace(/\\\\/g, \"/\") : w;\n }, [\"/\", \"pathname\"], [\"@\", \"auth\", 1], [NaN, \"host\", void 0, 1, 1], [/:(\\d*)$/, \"port\", void 0, 1], [NaN, \"hostname\", void 0, 1, 1]], m = { hash: 1, query: 1 };\n function p(w) {\n var S, R = (typeof window < \"u\" ? window : typeof global < \"u\" ? global : typeof self < \"u\" ? self : {}).location || {}, z = {}, W = typeof (w = w || R);\n if (w.protocol === \"blob:\")\n z = new U(unescape(w.pathname), {});\n else if (W === \"string\")\n for (S in z = new U(w, {}), m)\n delete z[S];\n else if (W === \"object\") {\n for (S in w)\n S in m || (z[S] = w[S]);\n z.slashes === void 0 && (z.slashes = E.test(w.href));\n }\n return z;\n }\n function d(w) {\n return w === \"file:\" || w === \"ftp:\" || w === \"http:\" || w === \"https:\" || w === \"ws:\" || w === \"wss:\";\n }\n function u(w, S) {\n w = (w = D(w)).replace(v, \"\"), S = S || {};\n var R, z = x.exec(w), W = z[1] ? z[1].toLowerCase() : \"\", fe = !!z[2], q = !!z[3], ve = 0;\n return fe ? q ? (R = z[2] + z[3] + z[4], ve = z[2].length + z[3].length) : (R = z[2] + z[4], ve = z[2].length) : q ? (R = z[3] + z[4], ve = z[3].length) : R = z[4], W === \"file:\" ? ve >= 2 && (R = R.slice(2)) : d(W) ? R = z[4] : W ? fe && (R = R.slice(2)) : ve >= 2 && d(S.protocol) && (R = z[4]), { protocol: W, slashes: fe || d(W), slashesCount: ve, rest: R };\n }\n function U(w, S, R) {\n if (w = (w = D(w)).replace(v, \"\"), !(this instanceof U))\n return new U(w, S, R);\n var z, W, fe, q, ve, Ae, P = _.slice(), Me = typeof S, Ie = this, je = 0;\n for (Me !== \"object\" && Me !== \"string\" && (R = S, S = null), R && typeof R != \"function\" && (R = o.parse), z = !(W = u(w || \"\", S = p(S))).protocol && !W.slashes, Ie.slashes = W.slashes || z && S.slashes, Ie.protocol = W.protocol || S.protocol || \"\", w = W.rest, (W.protocol === \"file:\" && (W.slashesCount !== 2 || g.test(w)) || !W.slashes && (W.protocol || W.slashesCount < 2 || !d(Ie.protocol))) && (P[3] = [/(.*)/, \"pathname\"]); je < P.length; je++)\n typeof (q = P[je]) != \"function\" ? (fe = q[0], Ae = q[1], fe != fe ? Ie[Ae] = w : typeof fe == \"string\" ? ~(ve = fe === \"@\" ? w.lastIndexOf(fe) : w.indexOf(fe)) && (typeof q[2] == \"number\" ? (Ie[Ae] = w.slice(0, ve), w = w.slice(ve + q[2])) : (Ie[Ae] = w.slice(ve), w = w.slice(0, ve))) : (ve = fe.exec(w)) && (Ie[Ae] = ve[1], w = w.slice(0, ve.index)), Ie[Ae] = Ie[Ae] || z && q[3] && S[Ae] || \"\", q[4] && (Ie[Ae] = Ie[Ae].toLowerCase())) : w = q(w, Ie);\n R && (Ie.query = R(Ie.query)), z && S.slashes && Ie.pathname.charAt(0) !== \"/\" && (Ie.pathname !== \"\" || S.pathname !== \"\") && (Ie.pathname = function(ke, H) {\n if (ke === \"\")\n return H;\n for (var ie = (H || \"/\").split(\"/\").slice(0, -1).concat(ke.split(\"/\")), ye = ie.length, we = ie[ye - 1], J = !1, le = 0; ye--; )\n ie[ye] === \".\" ? ie.splice(ye, 1) : ie[ye] === \"..\" ? (ie.splice(ye, 1), le++) : le && (ye === 0 && (J = !0), ie.splice(ye, 1), le--);\n return J && ie.unshift(\"\"), we !== \".\" && we !== \"..\" || ie.push(\"\"), ie.join(\"/\");\n }(Ie.pathname, S.pathname)), Ie.pathname.charAt(0) !== \"/\" && d(Ie.protocol) && (Ie.pathname = \"/\" + Ie.pathname), r(Ie.port, Ie.protocol) || (Ie.host = Ie.hostname, Ie.port = \"\"), Ie.username = Ie.password = \"\", Ie.auth && (~(ve = Ie.auth.indexOf(\":\")) ? (Ie.username = Ie.auth.slice(0, ve), Ie.username = encodeURIComponent(decodeURIComponent(Ie.username)), Ie.password = Ie.auth.slice(ve + 1), Ie.password = encodeURIComponent(decodeURIComponent(Ie.password))) : Ie.username = encodeURIComponent(decodeURIComponent(Ie.auth)), Ie.auth = Ie.password ? Ie.username + \":\" + Ie.password : Ie.username), Ie.origin = Ie.protocol !== \"file:\" && d(Ie.protocol) && Ie.host ? Ie.protocol + \"//\" + Ie.host : \"null\", Ie.href = Ie.toString();\n }\n U.prototype = { set: function(w, S, R) {\n var z = this;\n switch (w) {\n case \"query\":\n typeof S == \"string\" && S.length && (S = (R || o.parse)(S)), z[w] = S;\n break;\n case \"port\":\n z[w] = S, r(S, z.protocol) ? S && (z.host = z.hostname + \":\" + S) : (z.host = z.hostname, z[w] = \"\");\n break;\n case \"hostname\":\n z[w] = S, z.port && (S += \":\" + z.port), z.host = S;\n break;\n case \"host\":\n z[w] = S, C.test(S) ? (S = S.split(\":\"), z.port = S.pop(), z.hostname = S.join(\":\")) : (z.hostname = S, z.port = \"\");\n break;\n case \"protocol\":\n z.protocol = S.toLowerCase(), z.slashes = !R;\n break;\n case \"pathname\":\n case \"hash\":\n if (S) {\n var W = w === \"pathname\" ? \"/\" : \"#\";\n z[w] = S.charAt(0) !== W ? W + S : S;\n } else\n z[w] = S;\n break;\n case \"username\":\n case \"password\":\n z[w] = encodeURIComponent(S);\n break;\n case \"auth\":\n var fe = S.indexOf(\":\");\n ~fe ? (z.username = S.slice(0, fe), z.username = encodeURIComponent(decodeURIComponent(z.username)), z.password = S.slice(fe + 1), z.password = encodeURIComponent(decodeURIComponent(z.password))) : z.username = encodeURIComponent(decodeURIComponent(S));\n }\n for (var q = 0; q < _.length; q++) {\n var ve = _[q];\n ve[4] && (z[ve[1]] = z[ve[1]].toLowerCase());\n }\n return z.auth = z.password ? z.username + \":\" + z.password : z.username, z.origin = z.protocol !== \"file:\" && d(z.protocol) && z.host ? z.protocol + \"//\" + z.host : \"null\", z.href = z.toString(), z;\n }, toString: function(w) {\n w && typeof w == \"function\" || (w = o.stringify);\n var S, R = this, z = R.host, W = R.protocol;\n W && W.charAt(W.length - 1) !== \":\" && (W += \":\");\n var fe = W + (R.protocol && R.slashes || d(R.protocol) ? \"//\" : \"\");\n return R.username ? (fe += R.username, R.password && (fe += \":\" + R.password), fe += \"@\") : R.password ? (fe += \":\" + R.password, fe += \"@\") : R.protocol !== \"file:\" && d(R.protocol) && !z && R.pathname !== \"/\" && (fe += \"@\"), (z[z.length - 1] === \":\" || C.test(R.hostname) && !R.port) && (z += \":\"), fe += z + R.pathname, (S = typeof R.query == \"object\" ? w(R.query) : R.query) && (fe += S.charAt(0) !== \"?\" ? \"?\" + S : S), R.hash && (fe += R.hash), fe;\n } }, U.extractProtocol = u, U.location = p, U.trimLeft = D, U.qs = o, t.exports = U;\n}, function(t, e, i) {\n i.d(e, \"c\", function() {\n return l;\n }), i.d(e, \"b\", function() {\n return v;\n }), i.d(e, \"a\", function() {\n return E;\n });\n var r = i(6);\n function o(C, x, g, D) {\n g === void 0 && (g = 1), D === void 0 && (D = !1);\n var _ = C * x * g;\n return D ? Math.round(_) : _;\n }\n function l(C, x, g) {\n return g === void 0 && (g = !1), o(C, x, 1e-3, g);\n }\n function v(C, x, g) {\n return g === void 0 && (g = !1), o(C, 1e3, 1 / x, g);\n }\n function E(C, x) {\n return x === void 0 && (x = 1), o(C, r.l, 1 / x);\n }\n}, function(t, e, i) {\n var r;\n i.d(e, \"a\", function() {\n return r;\n }), function(o) {\n o.INIT = \"init\", o.FLUSH = \"flush\", o.LOAD_END = \"loadEnd\", o.DESTROY = \"destroy\", o.PUSH = \"push\", o.UPDATE_CONFIG = \"updateConfig\";\n }(r || (r = {}));\n}, function(t, e, i) {\n var r, o, l, v, E;\n r = /^(?=((?:[a-zA-Z0-9+\\-.]+:)?))\\1(?=((?:\\/\\/[^\\/?#]*)?))\\2(?=((?:(?:[^?#\\/]*\\/)*[^;?#\\/]*)?))\\3((?:;[^?#]*)?)(\\?[^#]*)?(#[^]*)?$/, o = /^(?=([^\\/?#]*))\\1([^]*)$/, l = /(?:\\/|^)\\.(?=\\/)/g, v = /(?:\\/|^)\\.\\.\\/(?!\\.\\.\\/)[^\\/]*(?=\\/)/g, E = { buildAbsoluteURL: function(C, x, g) {\n if (g = g || {}, C = C.trim(), !(x = x.trim())) {\n if (!g.alwaysNormalize)\n return C;\n var D = E.parseURL(C);\n if (!D)\n throw new Error(\"Error trying to parse base URL.\");\n return D.path = E.normalizePath(D.path), E.buildURLFromParts(D);\n }\n var _ = E.parseURL(x);\n if (!_)\n throw new Error(\"Error trying to parse relative URL.\");\n if (_.scheme)\n return g.alwaysNormalize ? (_.path = E.normalizePath(_.path), E.buildURLFromParts(_)) : x;\n var m = E.parseURL(C);\n if (!m)\n throw new Error(\"Error trying to parse base URL.\");\n if (!m.netLoc && m.path && m.path[0] !== \"/\") {\n var p = o.exec(m.path);\n m.netLoc = p[1], m.path = p[2];\n }\n m.netLoc && !m.path && (m.path = \"/\");\n var d = { scheme: m.scheme, netLoc: _.netLoc, path: null, params: _.params, query: _.query, fragment: _.fragment };\n if (!_.netLoc && (d.netLoc = m.netLoc, _.path[0] !== \"/\"))\n if (_.path) {\n var u = m.path, U = u.substring(0, u.lastIndexOf(\"/\") + 1) + _.path;\n d.path = E.normalizePath(U);\n } else\n d.path = m.path, _.params || (d.params = m.params, _.query || (d.query = m.query));\n return d.path === null && (d.path = g.alwaysNormalize ? E.normalizePath(_.path) : _.path), E.buildURLFromParts(d);\n }, parseURL: function(C) {\n var x = r.exec(C);\n return x ? { scheme: x[1] || \"\", netLoc: x[2] || \"\", path: x[3] || \"\", params: x[4] || \"\", query: x[5] || \"\", fragment: x[6] || \"\" } : null;\n }, normalizePath: function(C) {\n for (C = C.split(\"\").reverse().join(\"\").replace(l, \"\"); C.length !== (C = C.replace(v, \"\")).length; )\n ;\n return C.split(\"\").reverse().join(\"\");\n }, buildURLFromParts: function(C) {\n return C.scheme + C.netLoc + C.path + C.params + C.query + C.fragment;\n } }, t.exports = E;\n}, function(t, e, i) {\n i.d(e, \"a\", function() {\n return Fe;\n });\n var r = i(8), o = i.n(r), l = i(5), v = i.n(l), E = i(4), C = i(1), x = i(23), g = i(0), D = i(11), _ = i(9);\n function m(G, k, F) {\n return F.width > F.height ? { width: Math.round(F.width / F.height * G), height: k } : F.width < F.height ? { width: G, height: Math.round(k * F.height / F.width) } : { width: G, height: k };\n }\n var p = i(2), d = i(26), u = i(37), U = i(19), w = Object(U.b)(0);\n w.bitDepth = 8, w.chromaFormat = \"4:2:0\", w.codec = \"avc1.64000a\", w.colorInfo = { colorRange: 1, colourPrimaries: 2, transferCharacteristics: 0, matrixCoefficients: 0 }, w.fps = 15, w.codedHeight = 48, w.id = 1, w.level = \"1.0\", w.sar = { width: 1, height: 1 }, w.profile = \"High\", w.codedWidth = 64, w.decConf = new Uint8Array([1, 100, 0, 10, 255, 225, 0, 24, 103, 100, 0, 10, 172, 114, 4, 68, 122, 16, 0, 0, 3, 0, 16, 0, 0, 3, 3, 32, 241, 34, 88, 70, 1, 0, 6, 104, 232, 67, 143, 44, 139]);\n var S = [{ type: 5, data: new Uint8Array([101, 136, 129, 0, 5, 127, 254, 246, 115, 124, 10, 107, 109, 176, 149, 46, 5, 118, 246, 150, 55, 45, 60, 239, 89, 160, 124, 49, 129]) }], R = function() {\n function G() {\n }\n return G.getFillTrackBySamples = function(k, F) {\n if (F.length) {\n k.bitDepth = w.bitDepth, k.chromaFormat = w.chromaFormat, k.codec = w.codec, k.colorInfo = w.colorInfo, k.fps = k.fps || w.fps, k.id = w.id, k.level = w.level, k.sar = w.sar, k.profile = w.profile, k.codedWidth = w.codedWidth, k.codedHeight = w.codedHeight, k.duration = 1 / 0, k.decConf = w.decConf, k.outputRaw = !1;\n for (var I = k.sampleDuration = k.inputTimescale / k.fps || Object(d.c)(1, k.inputTimescale), V = F[0].dts, ne = F[0].originDTS, oe = 0; V <= F[F.length - 1].dts; )\n k.samples.push({ cts: 0, dts: V, key: !0, pts: V, originDTS: ne, units: S }), V += I, ne += I, oe++;\n return k.fillDuration += I * oe, k;\n }\n }, G;\n }(), z = i(3), W = Math.pow(2, 32) - 1, fe = { video: new Uint8Array([0, 0, 0, 45, 104, 100, 108, 114, 0, 0, 0, 0, 0, 0, 0, 0, 118, 105, 100, 101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86, 105, 100, 101, 111, 72, 97, 110, 100, 108, 101, 114, 0]), audio: new Uint8Array([0, 0, 0, 45, 104, 100, 108, 114, 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]) }, q = new Uint8Array([0, 0, 0, 24, 102, 116, 121, 112, 105, 115, 111, 109, 0, 0, 0, 1, 105, 115, 111, 109, 97, 118, 99, 49]), ve = new Uint8Array([0, 0, 0, 16, 115, 116, 116, 115, 0, 0, 0, 0, 0, 0, 0, 0]), Ae = new Uint8Array([0, 0, 0, 16, 115, 116, 115, 99, 0, 0, 0, 0, 0, 0, 0, 0]), P = new Uint8Array([0, 0, 0, 16, 115, 116, 99, 111, 0, 0, 0, 0, 0, 0, 0, 0]), Me = new Uint8Array([0, 0, 0, 20, 115, 116, 115, 122, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), Ie = new Uint8Array([0, 0, 0, 36, 100, 105, 110, 102, 0, 0, 0, 28, 100, 114, 101, 102, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 12, 117, 114, 108, 32, 0, 0, 0, 1]), je = new Uint8Array([0, 0, 0, 20, 118, 109, 104, 100, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]), ke = new Uint8Array([0, 0, 0, 16, 115, 109, 104, 100, 0, 0, 0, 0, 0, 0, 0, 0]), H = new Uint8Array([0, 0, 0, 120, 109, 118, 104, 100, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 255, 255]), ie = new Uint8Array([0, 0, 0, 104, 116, 107, 104, 100, 1, 0, 0, 7, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]), ye = new Uint8Array([0, 0, 0, 32, 116, 114, 101, 120, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1]), we = new Uint8Array([0, 0, 0, 44, 109, 100, 104, 100, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 172, 68, 0, 0, 0, 0, 0, 0, 0, 0, 85, 196, 0, 0]), J = new Uint8Array([0, 0, 0, 93, 115, 116, 115, 100, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 77, 109, 112, 52, 97, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 16, 0, 0, 0, 0, 172, 68, 0, 0, 0, 0, 0, 41, 101, 115, 100, 115, 0, 0, 0, 0, 3, 27, 0, 1, 0, 4, 19, 64, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5]), le = new Uint8Array([0, 0, 0, 52, 115, 116, 115, 100, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 36, 46, 109, 112, 51, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0]), me = new Uint8Array([0, 0, 0, 71, 115, 116, 115, 100, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 55, 79, 112, 117, 115, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 100, 79, 112, 115, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0]), he = new Uint8Array([0, 0, 0, 0, 115, 116, 115, 100, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 97, 118, 48, 49, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 2, 208, 0, 72, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 1, 10, 107, 119, 97, 105, 45, 118, 105, 100, 101, 111, 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]), re = new Uint8Array([0, 0, 0, 16, 112, 97, 115, 112, 0, 0, 0, 1, 0, 0, 0, 1]), Se = new Uint8Array([255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64]), Pe = new Uint8Array([0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64]), Xe = new Uint8Array([0, 0, 0, 0, 255, 255, 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, 64]), Oe = function() {\n function G() {\n }\n return G.moov = function(k, F) {\n for (var I = q, V = k.length, ne = G.types.avc1; V--; )\n k[V].type === g.l.VIDEO && (k[V].codec.indexOf(\"hev1\") === 0 ? ne = G.types.hev1 : k[V].codec.indexOf(\"av01\") === 0 && (ne = G.types.av01));\n var oe = I.byteLength + G._getMoovLen(k, F), te = { data: new Uint8Array(oe), offset: 0 };\n return te.data.set(I, 0), te.data.set(ne, 16), te.offset += I.byteLength, G._writeMoov(te, k, F), te.data;\n }, G.videoMediaSegment = function(k, F, I, V) {\n var ne = I.codec.indexOf(\"av01\") === 0 ? 0 : 4, oe = 8 + I.mp4Samples.reduce(function(Ee, xe) {\n return Ee + xe.units.reduce(function(K, Z) {\n return K + Z.data.byteLength + ne;\n }, 0);\n }, 0), te = G._getMediaSegmentData(I, oe, V);\n return G._mediaSegmentHead(te, k, F, I, oe, V), I.samples.forEach(function(Ee) {\n Ee.units.forEach(function(xe) {\n var K = xe.data.byteLength;\n ne ? (Object(z.k)(K, te.data, te.offset), te.data.set(xe.data, te.offset + ne), te.offset += ne + K) : (te.data.set(xe.data, te.offset), te.offset += K);\n });\n }), te.data;\n }, G.audioMediaSegment = function(k, F, I, V) {\n var ne = 8 + I.mp4Samples.reduce(function(te, Ee) {\n return te + Ee.unit.byteLength;\n }, 0), oe = G._getMediaSegmentData(I, ne, V);\n return G._mediaSegmentHead(oe, k, F, I, ne, V), I.mp4Samples.forEach(function(te) {\n oe.data.set(te.unit, oe.offset), oe.offset += te.unit.byteLength;\n }), oe.data;\n }, G.audioRawMpeg = function(k) {\n var F = 8 + k.mp4Samples.reduce(function(V, ne) {\n return V + ne.unit.byteLength;\n }, 0), I = { data: new Uint8Array(F), offset: 0 };\n return G._writeBoxHead(I, G.types.mdat, F), k.mp4Samples.forEach(function(V) {\n I.data.set(V.unit, I.offset), I.offset += V.unit.byteLength;\n }), I.data;\n }, G._getMoovLen = function(k, F) {\n var I = k.reduce(function(ne, oe) {\n return ne + G._getTrakLen(oe);\n }, 0), V = F ? F.reduce(function(ne, oe) {\n return ne + oe.byteLength + 8;\n }, 0) : 0;\n return 8 + H.byteLength + I + G._getMvexLen(k) + V;\n }, G._writeMoov = function(k, F, I) {\n var V = this, ne = G._getMoovLen(F, I);\n G._writeBoxHead(k, G.types.moov, ne), G._writeMvhd(k, F[0].timescale, F[0].duration), F.forEach(function(oe) {\n G._writeTrak(k, oe);\n }), G._writeMvex(k, F), I && I.forEach(function(oe) {\n V._writePssh(k, oe);\n });\n }, G._writePssh = function(k, F) {\n this._writeBoxHead(k, G.types.pssh, F.byteLength + 8), k.data.set(F, k.offset), k.offset += F.byteLength;\n }, G._getMoofLen = function(k) {\n return 104 + 17 * k.mp4Samples.length + this._getEncLen(k);\n }, G._writeEnc = function(k, F, I) {\n if (this._getEncLen(F)) {\n var V = this._getSaizLen(F);\n this._writeBoxHead(k, G.types.saiz, V), k.offset += 5;\n var ne = F.samples.length;\n Object(z.k)(ne, k.data, k.offset), k.offset += 4, F.samples.forEach(function(xe) {\n xe.auxiliaryInfo && (k.data[k.offset] = xe.auxiliaryInfo.enc.byteLength), k.offset++;\n });\n var oe = this._getSaioLen();\n this._writeBoxHead(k, G.types.saio, oe), k.offset += 4, k.data[k.offset + 3] = 1, k.offset += 4;\n var te = k.offset - I + 4 + 16;\n Object(z.k)(te, k.data, k.offset), k.offset += 4;\n var Ee = this._getSencLen(F);\n this._writeBoxHead(k, G.types.senc, Ee), F.useSubSampleEnc && (k.data[k.offset + 3] = 2), k.offset += 4, Object(z.k)(ne, k.data, k.offset), k.offset += 4, F.samples.forEach(function(xe) {\n xe.auxiliaryInfo && (k.data.set(xe.auxiliaryInfo.enc, k.offset), k.offset += xe.auxiliaryInfo.enc.byteLength);\n });\n }\n }, G._getEncLen = function(k) {\n var F = this._getSencLen(k);\n return F ? F + this._getSaizLen(k) + this._getSaioLen() : 0;\n }, G._getSaizLen = function(k) {\n return 17 + k.samples.length;\n }, G._getSencLen = function(k) {\n var F = k.samples.reduce(function(I, V) {\n return I + (V.auxiliaryInfo ? V.auxiliaryInfo.enc.byteLength : 0);\n }, 0);\n return F ? 16 + F : 0;\n }, G._getSaioLen = function() {\n return 20;\n }, G._mediaSegmentHead = function(k, F, I, V, ne, oe) {\n oe && (k.data.set(oe), k.offset = oe.byteLength), G._writeMoof(k, F, I, V), G._writeBoxHead(k, G.types.mdat, ne);\n }, G._getMediaSegmentData = function(k, F, I) {\n var V = G._getMoofLen(k);\n return { data: new Uint8Array(V + F + (I ? I.byteLength : 0)), offset: 0 };\n }, G._writeMvhd = function(k, F, I) {\n var V = Math.floor(I / (W + 1)), ne = Math.floor(I % (W + 1)), oe = H;\n Object(z.k)(F, oe, 28), Object(z.k)(V, oe, 32), Object(z.k)(ne, oe, 36), k.data.set(oe, k.offset), k.offset += H.byteLength;\n }, G._writeTkhd = function(k, F) {\n var I = F.id, V = Math.floor(F.duration / (W + 1)), ne = Math.floor(F.duration % (W + 1)), oe = 0, te = 0;\n F.hasOwnProperty(\"codedWidth\") && (oe = F.codedWidth), F.hasOwnProperty(\"codedHeight\") && (te = F.codedHeight);\n var Ee = ie;\n Object(z.k)(I, Ee, 28), Object(z.k)(V, Ee, 36), Object(z.k)(ne, Ee, 40), F.rotation === 90 ? Pe.forEach(function(xe, K) {\n return Ee[60 + K] = xe;\n }) : F.rotation === 180 ? Se.forEach(function(xe, K) {\n return Ee[60 + K] = xe;\n }) : F.rotation === 270 && Xe.forEach(function(xe, K) {\n return Ee[60 + K] = xe;\n }), Object(z.j)(oe, Ee, 96), Object(z.j)(te, Ee, 100), k.data.set(Ee, k.offset), k.offset += ie.byteLength;\n }, G._getTrakLen = function(k) {\n return 8 + ie.byteLength + G._getMdiaLen(k);\n }, G._writeTrak = function(k, F) {\n var I = G._getTrakLen(F);\n this._writeBoxHead(k, G.types.trak, I), this._writeTkhd(k, F), this._writeMdia(k, F);\n }, G._getMdiaLen = function(k) {\n return 8 + we.byteLength + fe[k.type].byteLength + G._getMinfLen(k);\n }, G._writeMdia = function(k, F) {\n var I = G._getMdiaLen(F);\n this._writeBoxHead(k, G.types.mdia, I), this._writeMdhd(k, F.timescale, F.duration), k.data.set(fe[F.type], k.offset), k.offset += fe[F.type].byteLength, this._writeMinf(k, F);\n }, G._writeMdhd = function(k, F, I) {\n var V = Math.floor(I / (W + 1)), ne = Math.floor(I % (W + 1)), oe = we;\n Object(z.k)(F, oe, 28), Object(z.k)(V, oe, 32), Object(z.k)(ne, oe, 36), k.data.set(oe, k.offset), k.offset += oe.byteLength;\n }, G._getMinfLen = function(k) {\n return k.type === g.l.AUDIO ? 8 + ke.byteLength + Ie.byteLength + G._getStblLen(k) : 8 + je.byteLength + Ie.byteLength + G._getStblLen(k);\n }, G._writeMinf = function(k, F) {\n if (this._writeBoxHead(k, G.types.minf, G._getMinfLen(F)), F.type === g.l.AUDIO)\n return k.data.set(ke, k.offset), k.offset += ke.byteLength, k.data.set(Ie, k.offset), k.offset += Ie.byteLength, void this._writeStbl(k, F);\n k.data.set(je, k.offset), k.offset += je.byteLength, k.data.set(Ie, k.offset), k.offset += Ie.byteLength, this._writeStbl(k, F);\n }, G._getStblLen = function(k) {\n return 8 + this._getStsdLen(k) + ve.byteLength + Ae.byteLength + Me.byteLength + P.byteLength;\n }, G._writeStbl = function(k, F) {\n var I = this._getStblLen(F);\n this._writeBoxHead(k, G.types.stbl, I), this._writeStsd(k, F), k.data.set(ve, k.offset), k.offset += ve.byteLength, k.data.set(Ae, k.offset), k.offset += Ae.byteLength, k.data.set(Me, k.offset), k.offset += Me.byteLength, k.data.set(P, k.offset), k.offset += P.byteLength;\n }, G._getStsdLen = function(k) {\n return k.stsd ? k.stsd.byteLength + 8 : k.type === g.l.AUDIO ? G._getAudioStsdLen(k) : G._getVideoStsdLen(k);\n }, G._writeStsd = function(k, F) {\n if (F.stsd)\n return this._writeBoxHead(k, G.types.stsd, F.stsd.byteLength + 8), k.data.set(F.stsd, k.offset), void (k.offset += F.stsd.byteLength);\n F.type !== g.l.AUDIO ? G._writeVideoStsd(k, F) : this._writeAudioStsd(k, F);\n }, G._getDecConfLen = function(k) {\n return k.decConf ? 8 + k.decConf.byteLength : 0;\n }, G._getVideoStsdLen = function(k) {\n var F = k.sar.width !== 1 || k.sar.height !== 1 ? re.length : 0;\n return he.byteLength + G._getDecConfLen(k) + F;\n }, G._writeVideoStsd = function(k, F) {\n var I = this._getDecConfLen(F), V = this._getVideoStsdLen(F), ne = he, oe = V - 16, te = G.types.avc1, Ee = G.types.avcC;\n F.codec.indexOf(\"hev1\") === 0 ? (te = G.types.hev1, Ee = G.types.hvcC) : F.codec.indexOf(\"av01\") === 0 && (te = G.types.av01, Ee = G.types.av1C);\n var xe = F.codedWidth, K = F.codedHeight, Z = F.sar.width !== 1 || F.sar.height !== 1;\n Object(z.k)(V, ne, 0), this._writeBoxHeadAt(ne, te, oe, 16), Object(z.j)(xe, ne, 48), Object(z.j)(K, ne, 50), k.data.set(ne, k.offset), k.offset += ne.byteLength, this._writeBoxHead(k, Ee, I), F.decConf && (k.data.set(F.decConf, k.offset), k.offset += F.decConf.byteLength), Z && (k.data.set(re, k.offset), Object(z.k)(F.sar.width || 0, k.data, k.offset + 8), Object(z.k)(F.sar.height || 0, k.data, k.offset + 12), k.offset += re.length);\n }, G._getMp4aEsdsLen = function(k) {\n return 33 + k.config.length + 4;\n }, G._getMp4aStsdLen = function(k) {\n return 52 + G._getMp4aEsdsLen(k);\n }, G._writeMp4aStsd = function(k, F) {\n var I = F.config.length, V = G._getMp4aEsdsLen(F), ne = G._getMp4aStsdLen(F), oe = ne - 16, te = J;\n Object(z.k)(ne, te, 0), Object(z.k)(oe, te, 16), te[41] = F.channelCount, Object(z.j)(F.samplerate, te, 48), Object(z.k)(V, te, 52), te[65] = 23 + I, te[70] = 15 + I, k.data.set(te, k.offset), k.offset += te.byteLength;\n var Ee = [I].concat(F.config).concat([6, 1, 2]);\n k.data.set(Ee, k.offset), k.offset += Ee.length;\n }, G._writeOpusStsd = function(k, F) {\n var I = me;\n I[41] = I[61] = F.channelCount, Object(z.j)(F.samplerate, I, 48), Object(z.j)(F.samplerate, I, 66), k.data.set(I, k.offset), k.offset += I.byteLength;\n }, G._writeMp3Stsd = function(k, F) {\n var I = le;\n I[41] = F.channelCount, Object(z.j)(F.samplerate, I, 48), k.data.set(I, k.offset), k.offset += I.byteLength;\n }, G._getAudioStsdLen = function(k) {\n return k.codec === \"mp3\" ? le.length : k.codec === \"opus\" ? me.length : G._getMp4aStsdLen(k);\n }, G._writeAudioStsd = function(k, F) {\n F.codec === \"mp3\" ? G._writeMp3Stsd(k, F) : F.codec === \"opus\" ? G._writeOpusStsd(k, F) : G._writeMp4aStsd(k, F);\n }, G._getMvexLen = function(k) {\n return 8 + k.length * ye.byteLength;\n }, G._writeMvex = function(k, F) {\n var I = G._getMvexLen(F);\n this._writeBoxHead(k, G.types.mvex, I), F.forEach(function(V) {\n G._writeTrex(k, V);\n });\n }, G._writeTrex = function(k, F) {\n var I = F.id, V = ye;\n Object(z.k)(I, V, 12), k.data.set(V, k.offset), k.offset += V.byteLength;\n }, G._writeMoof = function(k, F, I, V) {\n var ne = V.mp4Samples.length, oe = k.offset, te = G._getMoofLen(V), Ee = te - 24, xe = 12 + ne, K = 20 + 16 * ne, Z = te + 8, Y = V.id, _e = V.mp4Samples || [], ee = Math.floor(I / (W + 1)), Ve = Math.floor(I % (W + 1));\n G._writeBoxHead(k, G.types.moof, te), G._writeBoxHead(k, G.types.mfhd, 16), Object(z.k)(F, k.data, k.offset + 4), k.offset += 8, G._writeBoxHead(k, G.types.traf, Ee), G._writeBoxHead(k, G.types.tfhd, 20), k.data[k.offset + 1] = 2, k.data[k.offset + 3] = 2, Object(z.k)(Y, k.data, k.offset + 4), k.data[k.offset + 11] = V.sampleDescIndex || 1, k.offset += 12, G._writeBoxHead(k, G.types.tfdt, 20), k.data[k.offset] = 1, Object(z.k)(ee, k.data, k.offset + 4), Object(z.k)(Ve, k.data, k.offset + 8), k.offset += 12, G._writeBoxHead(k, G.types.sdtp, xe), k.offset += 4, _e.forEach(function(ce, qe) {\n var Ce = ce.flags;\n k.data[k.offset + qe] = Ce.dependsOn << 4 | Ce.isDependedOn << 2 | Ce.hasRedundancy;\n }), k.offset += ne, G._writeBoxHead(k, G.types.trun, K), k.data[k.offset] = 1, k.data[k.offset + 2] = 15, k.data[k.offset + 3] = 1, Object(z.k)(ne, k.data, k.offset + 4), Object(z.k)(Z, k.data, k.offset + 8), k.offset += 12, _e.forEach(function(ce, qe) {\n if (ce) {\n var Ce = k.offset + 16 * qe;\n Object(z.k)(ce.duration, k.data, Ce), Object(z.k)(ce.len, k.data, Ce + 4), k.data[Ce + 8] = ce.flags.isLeading << 2 | ce.flags.dependsOn, k.data[Ce + 9] = ce.flags.isDependedOn << 6 | ce.flags.hasRedundancy << 4 | ce.flags.isNonSync, k.data[Ce + 10] = 61440 & ce.flags.degradPrio, k.data[Ce + 11] = 15 & ce.flags.degradPrio, Object(z.i)(ce.cts, k.data, Ce + 12);\n }\n }), k.offset += 16 * ne, this._getEncLen(V) && this._writeEnc(k, V, oe);\n }, G._writeBoxHead = function(k, F, I) {\n G._writeBoxHeadAt(k.data, F, I, k.offset), k.offset += 8;\n }, G._writeBoxHeadAt = function(k, F, I, V) {\n Object(z.k)(I, k, V), k.set(F, V + 4);\n }, G;\n }();\n Oe.types = { avc1: [97, 118, 99, 49], avcC: [97, 118, 99, 67], btrt: [98, 116, 114, 116], dinf: [100, 105, 110, 102], dref: [100, 114, 101, 102], esds: [101, 115, 100, 115], ftyp: [102, 116, 121, 112], hdlr: [104, 100, 108, 114], mdat: [109, 100, 97, 116], mdhd: [109, 100, 104, 100], mdia: [109, 100, 105, 97], mfhd: [109, 102, 104, 100], minf: [109, 105, 110, 102], moof: [109, 111, 111, 102], moov: [109, 111, 111, 118], mp4a: [109, 112, 52, 97], mvex: [109, 118, 101, 120], mvhd: [109, 118, 104, 100], pasp: [112, 97, 115, 112], sdtp: [115, 100, 116, 112], stbl: [115, 116, 98, 108], stco: [115, 116, 99, 111], stsc: [115, 116, 115, 99], stsd: [115, 116, 115, 100], stsz: [115, 116, 115, 122], stts: [115, 116, 116, 115], tfdt: [116, 102, 100, 116], tfhd: [116, 102, 104, 100], traf: [116, 114, 97, 102], trak: [116, 114, 97, 107], trun: [116, 114, 117, 110], trex: [116, 114, 101, 120], tkhd: [116, 107, 104, 100], vmhd: [118, 109, 104, 100], smhd: [115, 109, 104, 100], hvcC: [104, 118, 99, 67], pssh: [112, 115, 115, 104], saiz: [115, 97, 105, 122], saio: [115, 97, 105, 111], senc: [115, 101, 110, 99], av1C: [97, 118, 49, 67], hev1: [104, 101, 118, 49], av01: [97, 118, 48, 49] };\n var st = Oe, ze = \"remuxer\", rt = function() {\n function G(F, I, V, ne) {\n var oe = this;\n ne === void 0 && (ne = \"\"), this._evt = void 0, this._config = void 0, this._typeSupported = void 0, this._isSafari = void 0, this._forceFirstIDR = void 0, this._rawVideoTimeOffset = 0, this._ISGenerated = !1, this._lastVideoCodec = \"\", this._transmuxData = void 0, this._aNextPTS = void 0, this._vNextDTS = void 0, this._initPTS = void 0, this._initDTS = void 0, this._initSegment = {}, this._pssh = void 0, this._videoTrack = void 0, this._vLastSample = void 0, this._onError = function(Ee) {\n oe._evt.emit(C.a.ERROR, Ee);\n }, this._evt = F, this._config = I, this._typeSupported = V;\n var te = navigator.userAgent;\n this._isSafari = !(!(ne && ne.indexOf(\"Apple\") > -1 && te) || te.match(\"CriOS\")), this._ISGenerated = !1, this._forceFirstIDR = !!(_.a.chrome && _.a.version.major < 70), this._vLastSample = {};\n }\n var k = G.prototype;\n return k.destroy = function() {\n }, k.resetTimeStamp = function(F) {\n p.b.i(ze, \"reset timestamp\", F), this._initPTS = this._initDTS = F;\n }, k.resetInitSegment = function(F) {\n this._ISGenerated = !1, this._initSegment = {}, this._transmuxData = F, this._rawVideoTimeOffset = 0, this._pssh = void 0, this._lastVideoCodec = \"\", this._vLastSample = {};\n }, k.getLastDTS = function() {\n return { video: this._vNextDTS, audio: this._aNextPTS };\n }, k.flush = function(F) {\n var I;\n if (F === void 0 && (F = !0), p.b.i(ze, \"flush \", !!this._vLastSample.sample), this._vLastSample.sample && this._videoTrack && (this._videoTrack.samples = [this._vLastSample.sample], this._vLastSample.sample = void 0, I = this._remuxVideo(this._videoTrack, this._vNextDTS || 0, !0, !1)), I && F) {\n var V = [I];\n this._evt.emit(C.a.PARSING_DATA, { segments: V, extra: this._transmuxData });\n }\n return I;\n }, k.remux = function(F, I, V, ne, oe, te, Ee) {\n var xe, K, Z, Y;\n if (te === void 0 && (te = !1), Ee && (this._pssh = Ee), this._videoTrack = I, ne || (this._vNextDTS = this._aNextPTS = void 0), I.active && !I.outputRaw && (this._vLastSample.sample && (ne && I.samples.unshift(this._vLastSample.sample), this._vLastSample.sample = void 0), !this._config.gopRemux && ne && I.samples.length > 1 && !te && (this._vLastSample.sample = I.samples.pop())), F.active && x.a.ensureAudioFrame(F, I, (Y = this._transmuxData) == null ? void 0 : Y.audioCodec, te), I.active) {\n if (!this._ISGenerated && I.outputRaw && (K = this._getRawVideoInfo(I)), ne || x.a.alignStartByVideo(F, I), I.outputRaw && I.samples.length) {\n if (xe = I.samples, I.samples = [], I.mp4Samples = [], this._config.ensureVideo && F.samples.length && F.samplerate) {\n var _e = this._fillVideoByAudio(I, F);\n _e && (I = _e, Z = !0, p.b.i(ze, \"fill black video. raw output.\"));\n }\n } else if ((this._config.isLive || !ne) && te && !I.outputRaw && I.samples.length === 0 && F.samples.length && F.samplerate && (!this._ISGenerated || (F.samples[F.samples.length - 1].pts - F.samples[0].pts) / F.inputTimescale >= 1)) {\n var ee = this._fillVideoByAudio(I, F);\n ee && (I = ee, Z = !0, p.b.i(ze, \"fill black video, no video samples.\"));\n }\n }\n if (this._lastVideoCodec = I.codec, this._ISGenerated || this._generateIS(F, I, V, K, Z), !ne && I.samples.length && (I.samples[0].pts = I.samples[0].dts), this._ISGenerated) {\n var Ve, ce, qe = V, Ce = V;\n if (F.samples.length && I.samples.length)\n if (!ne && oe) {\n if (F.samples[0].pts - I.samples[0].pts < 0) {\n var Ye = I.samples[0];\n Ye.pts = F.samples[0].pts, Ye.dts = Ye.pts - Ye.cts;\n }\n } else {\n var tt = (F.samples[0].pts - I.samples[0].pts) / I.inputTimescale;\n qe += Math.max(0, tt), Ce += Math.max(0, -tt);\n }\n Ve = this._remuxAudio(F, qe, ne, oe), ce = this._remuxVideo(I, Ce, ne, oe, te), Z && (this._ISGenerated = !1);\n var Ht = [];\n if (Ve && (Ht.push(Ve), xe && (this._rawVideoTimeOffset = Ve.startDTS - Ve.originFirstDTS)), ce && Ht.push(ce), Ht.length && this._evt.emit(C.a.PARSING_DATA, { segments: Ht, extra: this._transmuxData }), xe) {\n var $t = Math.abs(this._rawVideoTimeOffset) > 1e-3 ? this._rawVideoTimeOffset * I.inputTimescale : 0;\n xe.forEach(function(xt) {\n xt.dts = Math.max(0, xt.dts + $t) / I.inputTimescale, xt.cts = xt.cts / I.inputTimescale, xt.pts = xt.dts + xt.cts, xt.originDTS = xt.originDTS / I.inputTimescale;\n }), this._evt.emit(C.a.RAW_DATA, { type: D.c.videoFrame, samples: xe, extra: this._transmuxData });\n }\n }\n }, k._getRawVideoInfo = function(F) {\n if (F.codec) {\n var I = m(F.codedWidth, F.codedHeight, F.sar);\n return { container: \"video/mp4\", codec: F.codec, codecType: F.codecType || g.b.unknown, metadata: { width: I.width, height: I.height, codedWidth: F.codedWidth, codedHeight: F.codedHeight, sar: F.sar, rotation: F.rotation, fps: F.fps, profile: F.profile, level: F.level, chromaFormat: F.chromaFormat, bitDepth: F.bitDepth, colorInfo: F.colorInfo, videoBitrate: F.bitrate, videoMaxBitrate: F.maxBitrate } };\n }\n if (F.codecType)\n return { container: \"video/mp4\", codec: F.codec, codecType: F.codecType || g.b.unknown };\n }, k._generateIS = function(F, I, V, ne, oe) {\n var te, Ee, xe = this._evt, K = F.samples, Z = I.samples, Y = this._typeSupported, _e = {}, ee = { tracks: _e }, Ve = this._initPTS === void 0, ce = \"audio/mp4\";\n if (Ve && (te = Ee = 1 / 0), F.config && K.length && (F.duration = F.duration / F.timescale * F.samplerate, F.timescale = F.samplerate, p.b.v(ze, \"audio sampling rate : \" + F.samplerate), F.codecType === g.b.mp3 ? Y.mpeg ? (ce = \"audio/mpeg\", F.codec = \"\") : Y.mp3 && (F.codec = \"mp3\") : F.codecType === g.b.opus && (F.codec = \"opus\"), this._initSegment.audio = F.codecType === g.b.mp3 && Y.mpeg ? new Uint8Array() : st.moov([F], this._pssh), _e.audio = { container: ce, codec: F.codec, codecType: F.codecType || g.b.unknown, metadata: { channel: F.channelCount, audioSampleRate: F.extensionSamplerate || F.samplerate, audioBitrate: F.bitrate, audioMaxBitrate: F.maxBitrate } }, Ve && (te = Ee = K[0].pts / F.inputTimescale - V)), I.codec && Z.length) {\n var qe = I.inputTimescale;\n I.timescale = qe, I.duration <= 0 && (p.b.i(ze, \"videoTrack.duration === 0\"), I.duration = 1), I.outputRaw || (this._initSegment.video = st.moov([I], this._pssh));\n var Ce = m(I.codedWidth, I.codedHeight, I.sar);\n _e.video = { container: \"video/mp4\", codec: I.codec, codecType: I.codecType || g.b.unknown, metadata: { width: Ce.width, height: Ce.height, codedWidth: I.codedWidth, codedHeight: I.codedHeight, sar: I.sar, rotation: I.rotation, fps: I.fps, profile: I.profile, level: I.level, chromaFormat: I.chromaFormat, bitDepth: I.bitDepth, colorInfo: I.colorInfo, videoBitrate: I.bitrate, videoMaxBitrate: I.maxBitrate, isFillVideo: oe, enhancedFlv: I.enhancedFlv } }, Ve && (te = Math.min(typeof te == \"number\" ? te : 1 / 0, Z[0].pts / qe - V), Ee = Math.min(typeof Ee == \"number\" ? Ee : 1 / 0, Z[0].dts / qe - V));\n }\n ne && (_e.rawVideo = ne), Object.keys(_e).length ? (xe.emit(C.a.PARSING_INIT_SEGMENT, ee), this._ISGenerated = !0, Ve && (this._initPTS = te, this._initDTS = Ee, p.b.i(ze, \"init pts:\" + te + \" dts:\" + Ee + \" offset:\" + V))) : this._onError({ type: E.b.MUX_ERROR, details: E.a.PARSING_ERROR, fatal: !1, reason: \"no audio/video samples found\" });\n }, k._remuxVideo = function(F, I, V, ne, oe) {\n var te = this;\n if (ne === void 0 && (ne = !1), oe === void 0 && (oe = !1), F.samples.length && this._initPTS !== void 0 && this._initDTS !== void 0) {\n var Ee, xe, K = F.inputTimescale, Z = F.samples, Y = [], _e = this._initDTS * K, ee = this._initPTS * K, Ve = Object(d.c)(1, K), ce = 0, qe = 0, Ce = 0, Ye = Z.length, tt = this._vNextDTS ? this._vNextDTS * K : 0, Ht = this._isSafari;\n if (Ye !== 0 && K !== 0 && (Ht && (V = V || !!(Ye && tt && (ne && Math.abs(I - tt / K) < 0.1 || Math.abs(Z[0].pts - tt - _e) < K / 5))), V || (tt = I * K), tt !== void 0)) {\n Z.forEach(function(Bt) {\n Bt.pts = Fe(Bt.pts - ee, tt), Bt.dts = Fe(Bt.dts - ee, tt);\n }), Z.sort(function(Bt, gt) {\n var bt = Bt.dts - gt.dts, Wt = Bt.pts - gt.pts;\n return bt || Wt;\n });\n var $t = Z.reduce(function(Bt, gt) {\n return Math.max(Math.min(Bt, gt.pts - gt.dts), -0.2 * K);\n }, 0);\n if ($t < 0) {\n p.b.i(ze, \"PTS < DTS detected in video samples, shifting DTS by \" + Math.round(Object(d.b)($t, K)) + \" ms to overcome this issue\");\n for (var xt = 0; xt < Ye; xt++)\n Z[xt].dts += $t;\n }\n Ce = Math.max(Z[0].dts, 0), qe = Math.max(Z[0].pts, 0);\n var Ct = Ce - tt;\n if (V && Ct) {\n if (qe -= Ct, Ce = tt, Z[0].dts = Ce, Z[0].pts = qe, Ct < 0)\n for (var Et = 1; Z[Et] && Z[Et].dts <= Z[Et - 1].dts; ) {\n var bi = Z[Et - 1].dts + Ve - Z[Et].dts;\n Z[Et].dts += bi, Z[Et].pts += bi, Et++;\n }\n p.b.v(ze, \"Video/PTS/DTS adjusted: \" + Object(d.b)(qe, K, !0) + \"/\" + Object(d.b)(Ce, K, !0));\n }\n xe = Math.max(Z[Ye - 1].dts, 0), Ee = Math.max(Z[Ye - 1].pts, 0, xe), Ht && (ce = Math.round((xe - Ce) / (Ye - 1)));\n for (var yi = 0; yi < Ye; yi++) {\n var Ei = Z[yi];\n Ei.dts = Ht ? Ce + yi * ce : Math.max(Ei.dts, Ce), Ei.pts = Math.max(Ei.pts, Ei.dts);\n }\n for (var wi = function(Bt) {\n var gt, bt, Wt = Z[Bt];\n if (!Ht)\n if (Bt < Ye - 1)\n ce = Math.round(Z[Bt + 1].dts - Wt.dts);\n else {\n if (te._vLastSample.sample) {\n var Yi = Fe(te._vLastSample.sample.dts - ee, tt);\n ce = Yi - Wt.dts;\n } else\n ce = F.sampleDuration || ce;\n if (oe) {\n var Fi = !1;\n if (te._aNextPTS) {\n var Cr = te._aNextPTS * K - Wt.pts;\n Cr > 0.5 * F.inputTimescale && (ce = Cr - ce, Fi = !0);\n }\n !Fi && Ye === 1 && Ct && (ce += Ct);\n }\n }\n if (bt = Wt.pts - Wt.dts, ce < 0 || isNaN(ce) || !isFinite(ce)) {\n var Vr = V && Ye < 2 ? Ct : 0;\n ce = Math.round(Math.max(F.sampleDuration - Vr, Ve)), console.log(\"debug mp4 sample du\", ce);\n var or = Z[Bt + 1];\n or && (or.dts = Wt.dts + ce, or.pts = or.dts + or.cts);\n }\n var gr = F.codec.indexOf(\"av01\") === 0 ? 0 : 4;\n gt = Wt.units.reduce(function(_r, Oi) {\n return Oi.data.byteLength + gr + _r;\n }, 0), Y.push({ len: gt, units: Wt.units, duration: ce, cts: bt, flags: { isLeading: 0, isDependedOn: 0, hasRedundancy: 0, degradPrio: 0, dependsOn: Wt.key ? 2 : 1, isNonSync: Wt.key ? 0 : 1 }, auxiliaryInfo: Wt.auxiliaryInfo });\n }, lt = 0; lt < Ye; lt++)\n wi(lt);\n if (this._vNextDTS = (xe + ce) / K, Y.length && this._forceFirstIDR) {\n var fi = Y[0].flags;\n fi.dependsOn = 2, fi.isNonSync = 0;\n }\n F.mp4Samples = Y;\n var Zt = st.videoMediaSegment(F.sequenceNumber++, Ce, F, this._getMoovByType(g.l.VIDEO));\n this._videoTrack && (this._videoTrack.sequenceNumber = F.sequenceNumber);\n var pi = { payload: Zt, adjustedStart: Ct / K, startPTS: qe / K, endPTS: (Ee + ce) / K, startDTS: Ce / K, endDTS: this._vNextDTS, type: g.l.VIDEO, originFirstDTS: Z[0].originDTS / K, firstParseTime: Z[0].parseTime, fillDuration: F.fillDuration / K };\n return F.fillDuration = 0, F.samples = [], F.mp4Samples = [], pi;\n }\n }\n }, k._remuxAudio = function(F, I, V, ne) {\n if (ne === void 0 && (ne = !1), F.samples.length && this._initPTS !== void 0) {\n var oe, te, Ee, xe = F.inputTimescale, K = F.timescale, Z = xe / K, Y = F.codecType === g.b.aac ? 1024 : 1152, _e = Y * Z, ee = this._initPTS * xe, Ve = [], ce = F.codecType === g.b.mp3 && this._typeSupported.mpeg, qe = 0, Ce = F.samples, Ye = this._aNextPTS ? this._aNextPTS * xe : this._aNextPTS, tt = !1;\n if (V = V || !!(Ce.length && Ye && (ne && Math.abs(I - Ye / xe) < 0.1 || Math.abs(Ce[0].pts - Ye - ee) < 20 * _e)), Ce.forEach(function(_r) {\n _r.pts = _r.dts = Fe(_r.pts - ee, I * xe);\n }), (Ce = Ce.filter(function(_r) {\n return _r.pts >= 0;\n })).length !== 0 && (V && Ye !== void 0 || (Ye = ne ? I * xe : Ce[0].pts, tt = !0), Ye !== void 0)) {\n if (F.codecType === g.b.aac)\n for (var Ht = this._config.maxAudioFramesDrift, $t = 0, xt = Ye; $t < Ce.length; ) {\n var Ct = Ce[$t], Et = Ct.pts - xt;\n if (Et <= -Ht * _e)\n Ce.splice($t, 1);\n else if (Et >= Ht * _e && Et < 100 * xe && xt) {\n var bi = Math.round(Et / _e);\n p.b.i(ze, \"Injecting \" + bi + \" audio frame @ \" + (xt / xe).toFixed(3) + \"s due to \" + Math.round(Object(d.b)(Et, xe)) + \" ms gap. \" + $t + \" \" + F.manifestCodec + \" \" + F.codec);\n for (var yi = 0; yi < bi; yi++) {\n var Ei = Math.max(xt, 0);\n (te = u.a.getSilentFrame(F.manifestCodec || F.codec, F.channelCount)) || (p.b.v(ze, \"Unable to get silent frame for given audio codec; duplicating last frame instead.\"), te = Ct.unit.subarray()), Ce.splice($t, 0, { unit: te, pts: Ei, dts: Ei, originDTS: Ct.originDTS - (bi - yi) * _e }), xt += _e, $t++;\n }\n Ct.pts = Ct.dts = xt, xt += Ct.duration || _e, $t++;\n } else\n Ct.pts = Ct.dts = xt, xt += Ct.duration || _e, $t++;\n }\n for (var wi = Ce.length, lt = 0, fi = Ce.length; lt < fi; lt++) {\n var Zt = Ce[lt], pi = Zt.unit, Bt = Zt.duration ? Math.round(Zt.duration / Z) : Y, gt = Zt.pts;\n if (Ee !== void 0 && oe)\n oe.duration = Math.round((gt - Ee) / Z);\n else {\n var bt = Math.round(gt - Ye), Wt = 0;\n if (V && F.codecType === g.b.aac && bt) {\n if (bt > 0 && bt < 100 * xe)\n Wt = Math.round((gt - Ye) / _e), p.b.v(ze, bt + \" ms hole between AAC samples detected,filling it\");\n else if (bt < -0.012 * xe) {\n p.b.v(ze, \"drop overlapping AAC sample, expected/parsed/delta:\" + (Ye / xe).toFixed(3) + \"s/\" + (gt / xe).toFixed(3) + \"s/\" + -bt / xe * 1e3 + \"ms\");\n continue;\n }\n gt = Ye;\n }\n qe = gt;\n for (var Yi = 0; Yi < Wt; Yi++) {\n var Fi = Y;\n (te = u.a.getSilentFrame(F.manifestCodec || F.codec, F.channelCount)) || (p.b.v(ze, \"Unable to get silent frame for given audio codec; duplicating this frame instead.\"), te = pi.subarray(), Zt.duration && (Fi = Bt)), oe = { len: te.byteLength, cts: 0, duration: Fi, unit: te, flags: { isLeading: 0, isDependedOn: 0, hasRedundancy: 0, degradPrio: 0, dependsOn: 1, isNonSync: 0 }, auxiliaryInfo: Zt.auxiliaryInfo }, Ve.push(oe);\n }\n }\n oe = { len: pi.byteLength, cts: 0, duration: Bt, unit: pi, flags: { isLeading: 0, isDependedOn: 0, hasRedundancy: 0, degradPrio: 0, dependsOn: 1, isNonSync: 0 }, auxiliaryInfo: Zt.auxiliaryInfo }, Ve.push(oe), Ee = gt;\n }\n if (wi = Ve.length, oe) {\n if (wi && typeof Ee == \"number\") {\n var Cr;\n oe && oe.duration === 0 && (oe.duration = Y), Ye = Ee + Z * oe.duration, F.mp4Samples = Ve, Cr = ce ? st.audioRawMpeg(F) : st.audioMediaSegment(F.sequenceNumber++, qe / Z, F, this._getMoovByType(g.l.AUDIO)), F.samples = [], F.mp4Samples = [];\n var Vr = qe / xe, or = this._aNextPTS = Ye / xe, gr = { payload: Cr, startPTS: Vr, endPTS: or, startDTS: Vr, endDTS: or, type: g.l.AUDIO, originFirstDTS: Ce[0].originDTS / xe, firstParseTime: Ce[0].parseTime, fillDuration: F.fillDuration / xe };\n return ce && (gr.updateTimestampOffset = !0), F.fillDuration = 0, gr;\n }\n tt && delete this._aNextPTS, F.samples = [], F.mp4Samples = [];\n }\n }\n }\n }, k._getMoovByType = function(F) {\n var I;\n return this._initSegment && this._initSegment[F] && (I = this._initSegment[F], delete this._initSegment[F]), I;\n }, k._fillVideoByAudio = function(F, I) {\n var V = o()({}, F);\n V.samples = [], V.codecType = g.b.h264, V.inputTimescale = F.inputTimescale, V.timescale = F.timescale;\n var ne = R.getFillTrackBySamples(V, I.samples);\n return ne && (this._ISGenerated = V.codec === this._lastVideoCodec), ne;\n }, v()(G, [{ key: \"ISGenerated\", get: function() {\n return this._ISGenerated;\n } }]), G;\n }();\n function Fe(G, k) {\n var F;\n if (k === void 0)\n return G;\n for (F = k < G ? -8589934592 : 8589934592; Math.abs(G - k) > 4294967296; )\n G += F;\n return G;\n }\n e.b = rt;\n}, function(t, e, i) {\n function r(E) {\n var C = {};\n function x(D) {\n if (C[D])\n return C[D].exports;\n var _ = C[D] = { i: D, l: !1, exports: {} };\n return E[D].call(_.exports, _, _.exports, x), _.l = !0, _.exports;\n }\n x.m = E, x.c = C, x.i = function(D) {\n return D;\n }, x.d = function(D, _, m) {\n x.o(D, _) || Object.defineProperty(D, _, { configurable: !1, enumerable: !0, get: m });\n }, x.r = function(D) {\n Object.defineProperty(D, \"__esModule\", { value: !0 });\n }, x.n = function(D) {\n var _ = D && D.__esModule ? function() {\n return D.default;\n } : function() {\n return D;\n };\n return x.d(_, \"a\", _), _;\n }, x.o = function(D, _) {\n return Object.prototype.hasOwnProperty.call(D, _);\n }, x.p = \"/\", x.oe = function(D) {\n throw console.error(D), D;\n };\n var g = x(x.s = ENTRY_MODULE);\n return g.default || g;\n }\n function o(E) {\n return (E + \"\").replace(/[.?*+^$[\\]\\\\(){}|-]/g, \"\\\\$&\");\n }\n function l(E, C, x) {\n var g = {};\n g[x] = [];\n var D = C.toString(), _ = D.match(/^function\\s?\\w*\\(\\w+,\\s*\\w+,\\s*(\\w+)\\)/);\n if (!_)\n return g;\n for (var m, p = _[1], d = new RegExp(\"(\\\\\\\\n|\\\\W)\" + o(p) + \"\\\\(\\\\s*(/\\\\*.*?\\\\*/)?\\\\s*.*?([\\\\.|\\\\-|\\\\+|\\\\w|/|@]+).*?\\\\)\", \"g\"); m = d.exec(D); )\n m[3] !== \"dll-reference\" && g[x].push(m[3]);\n for (d = new RegExp(\"\\\\(\" + o(p) + '\\\\(\"(dll-reference\\\\s([\\\\.|\\\\-|\\\\+|\\\\w|/|@]+))\"\\\\)\\\\)\\\\(\\\\s*(/\\\\*.*?\\\\*/)?\\\\s*.*?([\\\\.|\\\\-|\\\\+|\\\\w|/|@]+).*?\\\\)', \"g\"); m = d.exec(D); )\n E[m[2]] || (g[x].push(m[1]), E[m[2]] = i(m[1]).m), g[m[2]] = g[m[2]] || [], g[m[2]].push(m[4]);\n for (var u, U = Object.keys(g), w = 0; w < U.length; w++)\n for (var S = 0; S < g[U[w]].length; S++)\n u = g[U[w]][S], isNaN(1 * u) || (g[U[w]][S] = 1 * g[U[w]][S]);\n return g;\n }\n function v(E) {\n return Object.keys(E).reduce(function(C, x) {\n return C || E[x].length > 0;\n }, !1);\n }\n t.exports = function(E, C) {\n C = C || {};\n var x = { main: i.m }, g = C.all ? { main: Object.keys(x.main) } : function(d, u) {\n for (var U = { main: [u] }, w = { main: [] }, S = { main: {} }; v(U); )\n for (var R = Object.keys(U), z = 0; z < R.length; z++) {\n var W = R[z], fe = U[W].pop();\n if (S[W] = S[W] || {}, !S[W][fe] && d[W][fe]) {\n S[W][fe] = !0, w[W] = w[W] || [], w[W].push(fe);\n for (var q = l(d, d[W][fe], W), ve = Object.keys(q), Ae = 0; Ae < ve.length; Ae++)\n U[ve[Ae]] = U[ve[Ae]] || [], U[ve[Ae]] = U[ve[Ae]].concat(q[ve[Ae]]);\n }\n }\n return w;\n }(x, E), D = \"\";\n Object.keys(g).filter(function(d) {\n return d !== \"main\";\n }).forEach(function(d) {\n for (var u = 0; g[d][u]; )\n u++;\n g[d].push(u), x[d][u] = \"(function(module, exports, __webpack_require__) { module.exports = __webpack_require__; })\", D = D + \"var \" + d + \" = (\" + r.toString().replace(\"ENTRY_MODULE\", JSON.stringify(u)) + \")({\" + g[d].map(function(U) {\n return JSON.stringify(U) + \": \" + x[d][U].toString();\n }).join(\",\") + `});\n`;\n }), D = D + \"new ((\" + r.toString().replace(\"ENTRY_MODULE\", JSON.stringify(E)) + \")({\" + g.main.map(function(d) {\n return JSON.stringify(d) + \": \" + x.main[d].toString();\n }).join(\",\") + \"}))(self);\";\n var _ = new window.Blob([D], { type: \"text/javascript\" });\n if (C.bare)\n return _;\n var m = (window.URL || window.webkitURL || window.mozURL || window.msURL).createObjectURL(_), p = new window.Worker(m);\n return p.objectURL = m, p;\n };\n}, function(t, e, i) {\n var r = i(2), o = i(18), l = i(23), v = function() {\n function E() {\n this._lastEndTime = -1;\n }\n var C = E.prototype;\n return C.reset = function() {\n this._lastEndTime = -1;\n }, C.update = function(x, g) {\n if (g.samples.length) {\n var D = g.samples.reduce(function(S, R, z) {\n return g.samples[S].pts > R.pts ? S : z;\n }, 0), _ = g.samples[0].dts / g.inputTimescale, m = g.samples[0].originDTS / g.inputTimescale, p = g.samples[D], d = (p.pts + (p.duration || 0)) / g.inputTimescale, u = o.c(x.samplerate, 1), U = d;\n x.samples.length && (U = Math.min(x.samples[0].dts / x.inputTimescale, d)), this._lastEndTime === -1 ? this._lastEndTime = _ : (m = this._lastEndTime - _ + m, _ = this._lastEndTime);\n var w = Math.max(0, Math.ceil((U - _) / u));\n w > 0 && (r.b.i(\"slient-audio\", \"fill cnt: \" + w + \"@\" + _ + \" duration: \" + (U - _)), this._lastEndTime = l.a.fillAACFrameByCount(x, _, w, m));\n }\n }, E;\n }();\n e.a = v;\n}, function(t, e, i) {\n i.d(e, \"a\", function() {\n return l;\n }), i.d(e, \"b\", function() {\n return v;\n }), i.d(e, \"c\", function() {\n return E;\n });\n var r = { 0: \"NONE\", 8: \"INTRA\", 64: \"STILL_PICTURE\", 1: \"MAIN_10\", 65: \"MAIN_10_STILL_PICTURE\", 17: \"MULTILAYER_MAIN_10\", 81: \"MULTILAYER_MAIN_10_STILL_PICTURE\", 33: \"MAIN_10_444\", 97: \"MAIN_10_444_STILL_PICTURE\", 49: \"MULTILAYER_MAIN_10_444\", 113: \"MULTILAYER_MAIN_10_444_STILL_PICTURE\", 2: \"MAIN_12\", 34: \"MAIN_12_444\", 35: \"MAIN_16_444\", 10: \"MAIN_12_INTRA\", 42: \"MAIN_12_444_INTRA\", 43: \"MAIN_16_444_INTRA\", 66: \"MAIN_12_STILL_PICTURE\", 98: \"MAIN_12_444_STILL_PICTURE\", 99: \"MAIN_16_444_STILL_PICTURE\" }, o = { 16: \"1.0\", 32: \"2.0\", 35: \"2.1\", 48: \"3.0\", 51: \"3.1\", 64: \"4.0\", 67: \"4.1\", 80: \"5.0\", 83: \"5.1\", 86: \"5.2\", 96: \"6.0\", 99: \"6.1\", 102: \"6.2\", 105: \"6.3\" };\n function l(C) {\n switch (C) {\n case 0:\n return \"Monochrome\";\n case 1:\n return \"4:2:0\";\n case 2:\n return \"4:2:2\";\n case 3:\n return \"4:4:4\";\n default:\n return \"Unknown\";\n }\n }\n var v = function(C) {\n return o[C];\n }, E = function(C) {\n return r[C];\n };\n}, function(t, e) {\n t.exports = function(i, r, o) {\n return r in i ? Object.defineProperty(i, r, { value: o, enumerable: !0, configurable: !0, writable: !0 }) : i[r] = o, i;\n }, t.exports.__esModule = !0, t.exports.default = t.exports;\n}, function(t, e, i) {\n function r(o, l) {\n var v = [];\n return o.samples.forEach(function(E) {\n var C = o.inputTimescale;\n v.push({ index: 0, dts: E.dts / C, pts: E.pts / C, duration: (E.duration || 0) / C });\n }), v.sort(function(E, C) {\n return E.pts - C.pts;\n }), v.forEach(function(E, C) {\n E.index = l + C;\n }), v;\n }\n i.d(e, \"a\", function() {\n return r;\n });\n}, function(t, e, i) {\n var r = i(5), o = i.n(r), l = i(12), v = i.n(l), E = i(0), C = i(22), x = i(2), g = i(24), D = i(40), _ = \"canvas-output-vpp\", m = function(p) {\n function d() {\n for (var U, w = arguments.length, S = new Array(w), R = 0; R < w; R++)\n S[R] = arguments[R];\n return (U = p.call.apply(p, [this].concat(S)) || this)._vppList = [], U._originSizeCanvas = void 0, U._originSizeGL = null, U._video = void 0, U._webGLFrameSink = void 0, U._inputRendererType = E.o.video, U._draw = function() {\n U._vppList.forEach(function(z) {\n return z.vpp.draw();\n });\n }, U;\n }\n v()(d, p);\n var u = d.prototype;\n return u.reset = function() {\n p.prototype.reset.call(this), this._destroyOriginSizeCanvas(), this._webGLFrameSink = void 0, this._inputRendererType = E.o.video;\n }, u.updateFormatSize = function(U, w, S) {\n var R = !1, z = S % 180 == 90 || S % 180 == -90, W = z ? w : U, fe = z ? U : w;\n return W === this._fSize.w && fe === this._fSize.h || (R = !0, this._fSize.w = W, this._fSize.h = fe, this._calculateUpperSize(), this._originSizeCanvas && (x.b.i(_, \"updateFormatSize. w:\" + U + \" h:\" + w + \" rotation:\" + S), this._originSizeCanvas.width = U, this._originSizeCanvas.height = w, this._originSizeGL && (this._originSizeGL.canvas.width = U, this._originSizeGL.canvas.height = w)), this._calculateDisplaySize()), R;\n }, u.setVideo = function(U) {\n x.b.i(_, \"setVideo\", U), this._video = U, this._applayVPP();\n }, u.setWebGLFrameSink = function(U) {\n x.b.i(_, \"setWebGLFrameSink\"), this._webGLFrameSink = U, this._applayVPP(), U.afterDraw(this._draw);\n }, u.updateRendererType = function(U) {\n x.b.i(_, \"updateRendererType: \" + U);\n var w = this.rendererType;\n return U !== E.o.canvas && !this.hasVPP || this._canvas || this._createOutputCanvas(), this._inputRendererType = U, this._applayVPP(), w !== this.rendererType;\n }, u.bindVPP = function(U) {\n x.b.i(_, \"bind vpp\");\n for (var w = this.rendererType, S = 0; S < this._vppList.length; S++)\n if (this._vppList[S].vpp === U)\n return x.b.i(_, \"vpp has been bound.\"), !1;\n return this._vppList.push({ vpp: U, originSize: U.originalSizeInput }), this._canvas || this._createOutputCanvas(), this._applayVPP(), w !== this.rendererType;\n }, u.unbindVPP = function(U) {\n x.b.i(_, \"unbind vpp\");\n var w = this.rendererType;\n if (!this.hasVPP)\n return !1;\n if (U) {\n for (var S = 0; S < this._vppList.length; S++)\n if (U === this._vppList[S].vpp) {\n var R = this._vppList.splice(S, 1);\n R.length && (R[0].vpp.detachSource(), R[0].vpp.detachOutputCanvas());\n break;\n }\n } else\n this._vppList.forEach(function(z) {\n z.vpp.detachSource(), z.vpp.detachOutputCanvas();\n }), this._vppList.splice(0);\n return this.hasVPP ? this._applayVPP() : (x.b.i(_, \"unbind all vpp\"), this._inputRendererType === E.o.video && this._canvas && this._destroyCanvas(), this._inputRendererType === E.o.canvas && this._webGLFrameSink && (this.webgl && this._webGLFrameSink.setWebGLCtx(this.webgl, C.b.normal), this._webGLFrameSink.drawToCanvas(), this._webGLFrameSink.reDraw())), w !== this.rendererType;\n }, u.destroy = function() {\n p.prototype.destroy.call(this), this._destroyOriginSizeCanvas();\n }, u._calculateUpperSize = function() {\n p.prototype._calculateUpperSize.call(this), this._draw();\n }, u._applayVPP = function() {\n var U = this;\n if (this._canvas && this.hasVPP) {\n var w, S = this.webgl;\n if (this._inputRendererType === E.o.canvas) {\n if (!this._webGLFrameSink)\n return;\n w = this._canvas;\n } else\n this._inputRendererType === E.o.video && (w = this._video);\n if (w && S) {\n if (this._inputRendererType === E.o.canvas)\n if (this._vppList[0].originSize) {\n var R, z;\n this._originSizeGL || this._createOriginSizeCanvas(), this._originSizeGL && (x.b.i(_, \"webgl set origin size\", this._originSizeGL), (R = this._webGLFrameSink) == null || R.setWebGLCtx(this._originSizeGL, C.b.fill), (z = this._webGLFrameSink) == null || z.drawToCanvas()), w = this._originSizeCanvas;\n } else {\n var W, fe;\n (W = this._webGLFrameSink) == null || W.setWebGLCtx(S, C.b.normal), (fe = this._webGLFrameSink) == null || fe.drawToFBO();\n }\n x.b.i(_, \"apply vpp\", w, S, JSON.stringify(this._fSize)), this._vppList.forEach(function(q, ve) {\n w && (q.vpp.attachOutputCanvas(S), q.vpp.attachSource(w), ve < U._vppList.length - 1 && (w = q.vpp.drawToFBO())), q.vpp.draw();\n });\n }\n }\n }, u._createOriginSizeCanvas = function() {\n this._originSizeCanvas = this._createCanvas(this._fSize), !this._originSizeGL && this._originSizeCanvas && (this._originSizeGL = Object(g.b)(this._originSizeCanvas));\n }, u._destroyOriginSizeCanvas = function() {\n if (x.b.i(_, \"destroy origin size canvas\"), this._originSizeGL) {\n x.b.i(_, \"origin size lose ctx\");\n var U = this._originSizeGL.getExtension(\"WEBGL_lose_context\");\n U && U.loseContext(), this._originSizeGL = null;\n }\n this._originSizeCanvas && (this._originSizeCanvas = void 0);\n }, o()(d, [{ key: \"rendererType\", get: function() {\n return this._inputRendererType === E.o.video ? this.hasVPP ? E.o.canvas : E.o.video : E.o.canvas;\n } }, { key: \"output\", get: function() {\n return this.rendererType === E.o.video ? this._video : this._canvas;\n } }, { key: \"hasVPP\", get: function() {\n return this._vppList.length > 0;\n } }]), d;\n }(D.a);\n e.a = m;\n}, function(t, e, i) {\n e.a = { search: function(r, o) {\n for (var l = 0, v = r.length - 1, E = null, C = null; l <= v; ) {\n var x = o(C = r[E = (l + v) / 2 | 0]);\n if (x > 0)\n l = E + 1;\n else {\n if (!(x < 0))\n return C;\n v = E - 1;\n }\n }\n return null;\n }, searchIndex: function(r, o) {\n for (var l = 0, v = r.length - 1, E = null; l <= v; ) {\n var C = o(r[E = (l + v) / 2 | 0]);\n if (C > 0)\n l = E + 1;\n else {\n if (!(C < 0))\n return E;\n v = E - 1;\n }\n }\n return -1;\n } };\n}, function(t, e, i) {\n var r = function() {\n function o() {\n }\n return o.getSilentFrame = function(l, v) {\n switch (l) {\n case \"mp4a.40.2\":\n if (v === 1)\n return new Uint8Array([0, 200, 0, 128, 35, 128]);\n if (v === 2)\n return new Uint8Array([33, 0, 73, 144, 2, 25, 0, 35, 128]);\n if (v === 3)\n return new Uint8Array([0, 200, 0, 128, 32, 132, 1, 38, 64, 8, 100, 0, 142]);\n if (v === 4)\n return new Uint8Array([0, 200, 0, 128, 32, 132, 1, 38, 64, 8, 100, 0, 128, 44, 128, 8, 2, 56]);\n if (v === 5)\n return new Uint8Array([0, 200, 0, 128, 32, 132, 1, 38, 64, 8, 100, 0, 130, 48, 4, 153, 0, 33, 144, 2, 56]);\n if (v === 6)\n 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]);\n break;\n default:\n if (v === 1)\n 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]);\n if (v === 2)\n 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]);\n if (v === 3)\n 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]);\n }\n return null;\n }, o;\n }();\n e.a = r;\n}, function(t, e, i) {\n function r(l) {\n for (var v = [], E = 0, C = l.byteLength; E < C; ) {\n if (l[E] < 128)\n v.push(l[E]);\n else if (!(l[E] < 192)) {\n if (l[E] < 224) {\n if (E < C - 1 && l[E + 1] >> 6 == 2) {\n v.push((31 & l[E]) << 6 | 63 & l[E + 1]), E += 2;\n continue;\n }\n } else if (l[E] < 240) {\n if (E < C - 2 && l[E + 1] >> 6 == 2 && l[E + 2] >> 6 == 2) {\n v.push((15 & l[E]) << 12 | (63 & l[E + 1]) << 6 | 63 & l[E + 2]), E += 3;\n continue;\n }\n } else if (l[E] < 248 && E < C - 3 && l[E + 1] >> 6 == 2 && l[E + 2] >> 6 == 2 && l[E + 3] >> 6 == 2) {\n v.push((7 & l[E]) << 18 | (63 & l[E + 1]) << 12 | (63 & l[E + 2]) << 6 | 63 & l[E + 3]), E += 4;\n continue;\n }\n }\n E++;\n }\n return (String.fromCodePoint || o).apply(null, v);\n }\n function o() {\n for (var l = [], v = 0, E = \"\", C = 0, x = arguments.length; C !== x; ++C) {\n var g = +arguments[C];\n if (!(g < 1114111 && g >>> 0 === g))\n throw RangeError(\"Invalid code point: \" + g);\n g <= 65535 ? v = l.push(g) : (g -= 65536, v = l.push(55296 + (g >> 10), g % 1024 + 56320)), v >= 16383 && (E += String.fromCharCode.apply(null, l), l.length = 0);\n }\n return E + String.fromCharCode.apply(null, l);\n }\n i.d(e, \"a\", function() {\n return r;\n });\n}, function(t, e, i) {\n var r, o = typeof Reflect == \"object\" ? Reflect : null, l = o && typeof o.apply == \"function\" ? o.apply : function(w, S, R) {\n return Function.prototype.apply.call(w, S, R);\n };\n r = o && typeof o.ownKeys == \"function\" ? o.ownKeys : Object.getOwnPropertySymbols ? function(w) {\n return Object.getOwnPropertyNames(w).concat(Object.getOwnPropertySymbols(w));\n } : function(w) {\n return Object.getOwnPropertyNames(w);\n };\n var v = Number.isNaN || function(w) {\n return w != w;\n };\n function E() {\n E.init.call(this);\n }\n t.exports = E, t.exports.once = function(w, S) {\n return new Promise(function(R, z) {\n function W(q) {\n w.removeListener(S, fe), z(q);\n }\n function fe() {\n typeof w.removeListener == \"function\" && w.removeListener(\"error\", W), R([].slice.call(arguments));\n }\n U(w, S, fe, { once: !0 }), S !== \"error\" && function(q, ve, Ae) {\n typeof q.on == \"function\" && U(q, \"error\", ve, Ae);\n }(w, W, { once: !0 });\n });\n }, E.EventEmitter = E, E.prototype._events = void 0, E.prototype._eventsCount = 0, E.prototype._maxListeners = void 0;\n var C = 10;\n function x(w) {\n if (typeof w != \"function\")\n throw new TypeError('The \"listener\" argument must be of type Function. Received type ' + typeof w);\n }\n function g(w) {\n return w._maxListeners === void 0 ? E.defaultMaxListeners : w._maxListeners;\n }\n function D(w, S, R, z) {\n var W, fe, q, ve;\n if (x(R), (fe = w._events) === void 0 ? (fe = w._events = /* @__PURE__ */ Object.create(null), w._eventsCount = 0) : (fe.newListener !== void 0 && (w.emit(\"newListener\", S, R.listener ? R.listener : R), fe = w._events), q = fe[S]), q === void 0)\n q = fe[S] = R, ++w._eventsCount;\n else if (typeof q == \"function\" ? q = fe[S] = z ? [R, q] : [q, R] : z ? q.unshift(R) : q.push(R), (W = g(w)) > 0 && q.length > W && !q.warned) {\n q.warned = !0;\n var Ae = new Error(\"Possible EventEmitter memory leak detected. \" + q.length + \" \" + String(S) + \" listeners added. Use emitter.setMaxListeners() to increase limit\");\n Ae.name = \"MaxListenersExceededWarning\", Ae.emitter = w, Ae.type = S, Ae.count = q.length, ve = Ae, console && console.warn && console.warn(ve);\n }\n return w;\n }\n function _() {\n if (!this.fired)\n return this.target.removeListener(this.type, this.wrapFn), this.fired = !0, arguments.length === 0 ? this.listener.call(this.target) : this.listener.apply(this.target, arguments);\n }\n function m(w, S, R) {\n var z = { fired: !1, wrapFn: void 0, target: w, type: S, listener: R }, W = _.bind(z);\n return W.listener = R, z.wrapFn = W, W;\n }\n function p(w, S, R) {\n var z = w._events;\n if (z === void 0)\n return [];\n var W = z[S];\n return W === void 0 ? [] : typeof W == \"function\" ? R ? [W.listener || W] : [W] : R ? function(fe) {\n for (var q = new Array(fe.length), ve = 0; ve < q.length; ++ve)\n q[ve] = fe[ve].listener || fe[ve];\n return q;\n }(W) : u(W, W.length);\n }\n function d(w) {\n var S = this._events;\n if (S !== void 0) {\n var R = S[w];\n if (typeof R == \"function\")\n return 1;\n if (R !== void 0)\n return R.length;\n }\n return 0;\n }\n function u(w, S) {\n for (var R = new Array(S), z = 0; z < S; ++z)\n R[z] = w[z];\n return R;\n }\n function U(w, S, R, z) {\n if (typeof w.on == \"function\")\n z.once ? w.once(S, R) : w.on(S, R);\n else {\n if (typeof w.addEventListener != \"function\")\n throw new TypeError('The \"emitter\" argument must be of type EventEmitter. Received type ' + typeof w);\n w.addEventListener(S, function W(fe) {\n z.once && w.removeEventListener(S, W), R(fe);\n });\n }\n }\n Object.defineProperty(E, \"defaultMaxListeners\", { enumerable: !0, get: function() {\n return C;\n }, set: function(w) {\n if (typeof w != \"number\" || w < 0 || v(w))\n throw new RangeError('The value of \"defaultMaxListeners\" is out of range. It must be a non-negative number. Received ' + w + \".\");\n C = w;\n } }), E.init = function() {\n this._events !== void 0 && this._events !== Object.getPrototypeOf(this)._events || (this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0), this._maxListeners = this._maxListeners || void 0;\n }, E.prototype.setMaxListeners = function(w) {\n if (typeof w != \"number\" || w < 0 || v(w))\n throw new RangeError('The value of \"n\" is out of range. It must be a non-negative number. Received ' + w + \".\");\n return this._maxListeners = w, this;\n }, E.prototype.getMaxListeners = function() {\n return g(this);\n }, E.prototype.emit = function(w) {\n for (var S = [], R = 1; R < arguments.length; R++)\n S.push(arguments[R]);\n var z = w === \"error\", W = this._events;\n if (W !== void 0)\n z = z && W.error === void 0;\n else if (!z)\n return !1;\n if (z) {\n var fe;\n if (S.length > 0 && (fe = S[0]), fe instanceof Error)\n throw fe;\n var q = new Error(\"Unhandled error.\" + (fe ? \" (\" + fe.message + \")\" : \"\"));\n throw q.context = fe, q;\n }\n var ve = W[w];\n if (ve === void 0)\n return !1;\n if (typeof ve == \"function\")\n l(ve, this, S);\n else {\n var Ae = ve.length, P = u(ve, Ae);\n for (R = 0; R < Ae; ++R)\n l(P[R], this, S);\n }\n return !0;\n }, E.prototype.addListener = function(w, S) {\n return D(this, w, S, !1);\n }, E.prototype.on = E.prototype.addListener, E.prototype.prependListener = function(w, S) {\n return D(this, w, S, !0);\n }, E.prototype.once = function(w, S) {\n return x(S), this.on(w, m(this, w, S)), this;\n }, E.prototype.prependOnceListener = function(w, S) {\n return x(S), this.prependListener(w, m(this, w, S)), this;\n }, E.prototype.removeListener = function(w, S) {\n var R, z, W, fe, q;\n if (x(S), (z = this._events) === void 0)\n return this;\n if ((R = z[w]) === void 0)\n return this;\n if (R === S || R.listener === S)\n --this._eventsCount == 0 ? this._events = /* @__PURE__ */ Object.create(null) : (delete z[w], z.removeListener && this.emit(\"removeListener\", w, R.listener || S));\n else if (typeof R != \"function\") {\n for (W = -1, fe = R.length - 1; fe >= 0; fe--)\n if (R[fe] === S || R[fe].listener === S) {\n q = R[fe].listener, W = fe;\n break;\n }\n if (W < 0)\n return this;\n W === 0 ? R.shift() : function(ve, Ae) {\n for (; Ae + 1 < ve.length; Ae++)\n ve[Ae] = ve[Ae + 1];\n ve.pop();\n }(R, W), R.length === 1 && (z[w] = R[0]), z.removeListener !== void 0 && this.emit(\"removeListener\", w, q || S);\n }\n return this;\n }, E.prototype.off = E.prototype.removeListener, E.prototype.removeAllListeners = function(w) {\n var S, R, z;\n if ((R = this._events) === void 0)\n return this;\n if (R.removeListener === void 0)\n return arguments.length === 0 ? (this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0) : R[w] !== void 0 && (--this._eventsCount == 0 ? this._events = /* @__PURE__ */ Object.create(null) : delete R[w]), this;\n if (arguments.length === 0) {\n var W, fe = Object.keys(R);\n for (z = 0; z < fe.length; ++z)\n (W = fe[z]) !== \"removeListener\" && this.removeAllListeners(W);\n return this.removeAllListeners(\"removeListener\"), this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0, this;\n }\n if (typeof (S = R[w]) == \"function\")\n this.removeListener(w, S);\n else if (S !== void 0)\n for (z = S.length - 1; z >= 0; z--)\n this.removeListener(w, S[z]);\n return this;\n }, E.prototype.listeners = function(w) {\n return p(this, w, !0);\n }, E.prototype.rawListeners = function(w) {\n return p(this, w, !1);\n }, E.listenerCount = function(w, S) {\n return typeof w.listenerCount == \"function\" ? w.listenerCount(S) : d.call(w, S);\n }, E.prototype.listenerCount = d, E.prototype.eventNames = function() {\n return this._eventsCount > 0 ? r(this._events) : [];\n };\n}, function(t, e, i) {\n var r = i(5), o = i.n(r), l = i(2), v = i(24), E = \"canvas-output\", C = function() {\n function x(D) {\n this._canvas = void 0, this._gl = null, this._cSize = { w: 0, h: 0 }, this._fSize = { w: 0, h: 0 }, this._dSize = { w: 0, h: 0 }, l.b.i(E, \"constructor\"), this._canvas = D;\n }\n var g = x.prototype;\n return g.reset = function() {\n l.b.i(E, \"reset\"), this._destroyCanvas();\n }, g.updateCanvasSize = function(D, _) {\n var m = !1;\n return D === this._cSize.w && _ === this._cSize.h || (m = !0, this._cSize.w = D, this._cSize.h = _, this._calculateUpperSize()), this._calculateDisplaySize(), m;\n }, g.updateFormatSize = function(D, _, m) {\n var p = !1, d = m % 180 == 90 || m % 180 == -90, u = d ? _ : D, U = d ? D : _;\n return u === this._fSize.w && U === this._fSize.h || (p = !0, this._fSize.w = u, this._fSize.h = U, this._calculateUpperSize(), this._calculateDisplaySize()), p;\n }, g.destroy = function() {\n l.b.i(E, \"destroy\"), this._destroyCanvas();\n }, g._calculateUpperSize = function() {\n if (this._canvas && this._cSize.h) {\n var D = this._cSize, _ = D.w, m = D.h, p = this._fSize, d = p.w, u = p.h;\n if (u) {\n var U = _ / m;\n U > d / u ? m > u && (_ = (m = u) * U) : _ > d && (m = (_ = d) / U);\n }\n this._canvas.width = _, this._canvas.height = m, l.b.i(E, \"update canvas size\", _, m);\n }\n }, g._calculateDisplaySize = function() {\n var D, _, m = ((D = this._canvas) == null ? void 0 : D.width) || this._cSize.w, p = ((_ = this._canvas) == null ? void 0 : _.height) || this._cSize.h, d = this._fSize, u = d.w / d.h;\n u > m / p ? (this._dSize.w = m, this._dSize.h = Math.round(m / u)) : (this._dSize.w = Math.round(p * u), this._dSize.h = p);\n }, g._createCanvas = function(D) {\n l.b.i(E, \"create canvas\");\n var _ = document.createElement(\"canvas\");\n return D.w ? (_.width = D.w, _.height = D.h) : (D.w = _.width, D.h = _.height), _;\n }, g._createOutputCanvas = function() {\n this._canvas || (this._canvas = this._createCanvas(this._cSize));\n }, g._destroyCanvas = function() {\n if (l.b.i(E, \"destroy canvas\"), this._gl) {\n var D = this._gl.getExtension(\"WEBGL_lose_context\");\n D && D.loseContext();\n }\n this._gl = null, this._canvas && (typeof HTMLCanvasElement < \"u\" && this._canvas instanceof HTMLCanvasElement && this._canvas.remove(), this._canvas = void 0);\n }, o()(x, [{ key: \"canvas\", get: function() {\n return this._canvas;\n } }, { key: \"webgl\", get: function() {\n return !this._gl && this._canvas && (this._gl = Object(v.b)(this._canvas)), this._gl;\n } }, { key: \"canvasSize\", get: function() {\n return this._cSize;\n } }, { key: \"formatSize\", get: function() {\n return this._fSize;\n } }, { key: \"displaySize\", get: function() {\n return this._dSize;\n } }]), x;\n }();\n e.a = C;\n}, function(t, e, i) {\n var r = function() {\n function o() {\n }\n return o.getPosByTime = function(l, v) {\n if (l) {\n if (l[0] && v <= l[0].time)\n return l[0];\n if (l[l.length - 1] && v >= l[l.length - 1].time)\n return l[l.length - 1];\n for (var E = 0, C = l.length - 1, x = 0, g = 0; E <= C; )\n if (v > (g = l[(x = (E + C) / 2 | 0) + 1] ? l[x + 1].time : Number.MAX_SAFE_INTEGER))\n E = x + 1;\n else {\n if (!(v < l[x].time))\n return v === g ? l[x + 1] : l[x];\n C = x - 1;\n }\n return l[0];\n }\n }, o;\n }();\n e.a = r;\n}, function(t, e, i) {\n var r = i(4), o = i(1), l = i(2);\n function v(B, y, c) {\n return Uint8Array.prototype.slice ? B.slice(y, c) : new Uint8Array(Array.prototype.slice.call(B, y, c));\n }\n var E = function() {\n function B(y, c) {\n this._subtle = void 0, this._aesIV = void 0, this._subtle = y, this._aesIV = c;\n }\n return B.prototype.decrypt = function(y, c) {\n return this._subtle.decrypt({ name: \"AES-CBC\", iv: this._aesIV }, c, y);\n }, B;\n }(), C = function() {\n function B() {\n 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();\n }\n var y = B.prototype;\n return y.uint8ArrayToUint32Array_ = function(c) {\n for (var h = new DataView(c), T = new Uint32Array(4), O = 0; O < 4; O++)\n T[O] = h.getUint32(4 * O);\n return T;\n }, y.initTable = function() {\n var c = this.sBox, h = this.invSBox, T = this.subMix, O = T[0], M = T[1], $ = T[2], X = T[3], de = this.invSubMix, be = de[0], Q = de[1], ae = de[2], pe = de[3], Le = new Uint32Array(256), Ue = 0, He = 0, Ge = 0;\n for (Ge = 0; Ge < 256; Ge++)\n Le[Ge] = Ge < 128 ? Ge << 1 : Ge << 1 ^ 283;\n for (Ge = 0; Ge < 256; Ge++) {\n var Qe = He ^ He << 1 ^ He << 2 ^ He << 3 ^ He << 4;\n Qe = Qe >>> 8 ^ 255 & Qe ^ 99, c[Ue] = Qe, h[Qe] = Ue;\n var ot = Le[Ue], nt = Le[ot], ut = Le[nt], it = 257 * Le[Qe] ^ 16843008 * Qe;\n O[Ue] = it << 24 | it >>> 8, M[Ue] = it << 16 | it >>> 16, $[Ue] = it << 8 | it >>> 24, X[Ue] = it, it = 16843009 * ut ^ 65537 * nt ^ 257 * ot ^ 16843008 * Ue, be[Qe] = it << 24 | it >>> 8, Q[Qe] = it << 16 | it >>> 16, ae[Qe] = it << 8 | it >>> 24, pe[Qe] = it, Ue ? (Ue = ot ^ Le[Le[Le[ut ^ ot]]], He ^= Le[Le[He]]) : Ue = He = 1;\n }\n }, y.expandKey = function(c) {\n for (var h = this.uint8ArrayToUint32Array_(c), T = !0, O = 0; O < h.length && T; )\n T = h[O] === this.key[O], O++;\n if (!T) {\n this.key = h;\n var M = this.keySize = h.length;\n if (M !== 4 && M !== 6 && M !== 8)\n throw new Error(\"Invalid aes key size=\" + M);\n var $, X, de = this.ksRows = 4 * (M + 6 + 1), be = this.keySchedule = new Uint32Array(de), Q = this.invKeySchedule = new Uint32Array(de), ae = this.sBox, pe = this.rcon, Le = this.invSubMix, Ue = Le[0], He = Le[1], Ge = Le[2], Qe = Le[3], ot = 0, nt = 0;\n for ($ = 0; $ < de; $++)\n $ < M ? ot = be[$] = h[$] : (nt = ot, $ % M == 0 ? (nt = ae[(nt = nt << 8 | nt >>> 24) >>> 24] << 24 | ae[nt >>> 16 & 255] << 16 | ae[nt >>> 8 & 255] << 8 | ae[255 & nt], nt ^= pe[$ / M | 0] << 24) : M > 6 && $ % M == 4 && (nt = ae[nt >>> 24] << 24 | ae[nt >>> 16 & 255] << 16 | ae[nt >>> 8 & 255] << 8 | ae[255 & nt]), be[$] = ot = (be[$ - M] ^ nt) >>> 0);\n for (X = 0; X < de; X++)\n $ = de - X, nt = 3 & X ? be[$] : be[$ - 4], Q[X] = X < 4 || $ <= 4 ? nt : Ue[ae[nt >>> 24]] ^ He[ae[nt >>> 16 & 255]] ^ Ge[ae[nt >>> 8 & 255]] ^ Qe[ae[255 & nt]], Q[X] = Q[X] >>> 0;\n }\n }, y.networkToHostOrderSwap = function(c) {\n return c << 24 | (65280 & c) << 8 | (16711680 & c) >> 8 | c >>> 24;\n }, y.decrypt = function(c, h, T) {\n for (var O, M, $, X, de, be, Q, ae, pe, Le, Ue, He, Ge, Qe, ot = this.keySize + 6, nt = this.invKeySchedule, ut = this.invSBox, it = this.invSubMix, Ft = it[0], Lt = it[1], dt = it[2], jt = it[3], li = this.uint8ArrayToUint32Array_(T), Ri = li[0], ui = li[1], Ni = li[2], Ci = li[3], _i = new Int32Array(c), Pi = new Int32Array(_i.length), zi = this.networkToHostOrderSwap; h < _i.length; ) {\n for (pe = zi(_i[h]), Le = zi(_i[h + 1]), Ue = zi(_i[h + 2]), He = zi(_i[h + 3]), de = pe ^ nt[0], be = He ^ nt[1], Q = Ue ^ nt[2], ae = Le ^ nt[3], Ge = 4, Qe = 1; Qe < ot; Qe++)\n O = Ft[de >>> 24] ^ Lt[be >> 16 & 255] ^ dt[Q >> 8 & 255] ^ jt[255 & ae] ^ nt[Ge], M = Ft[be >>> 24] ^ Lt[Q >> 16 & 255] ^ dt[ae >> 8 & 255] ^ jt[255 & de] ^ nt[Ge + 1], $ = Ft[Q >>> 24] ^ Lt[ae >> 16 & 255] ^ dt[de >> 8 & 255] ^ jt[255 & be] ^ nt[Ge + 2], X = Ft[ae >>> 24] ^ Lt[de >> 16 & 255] ^ dt[be >> 8 & 255] ^ jt[255 & Q] ^ nt[Ge + 3], de = O, be = M, Q = $, ae = X, Ge += 4;\n O = ut[de >>> 24] << 24 ^ ut[be >> 16 & 255] << 16 ^ ut[Q >> 8 & 255] << 8 ^ ut[255 & ae] ^ nt[Ge], M = ut[be >>> 24] << 24 ^ ut[Q >> 16 & 255] << 16 ^ ut[ae >> 8 & 255] << 8 ^ ut[255 & de] ^ nt[Ge + 1], $ = ut[Q >>> 24] << 24 ^ ut[ae >> 16 & 255] << 16 ^ ut[de >> 8 & 255] << 8 ^ ut[255 & be] ^ nt[Ge + 2], X = ut[ae >>> 24] << 24 ^ ut[de >> 16 & 255] << 16 ^ ut[be >> 8 & 255] << 8 ^ ut[255 & Q] ^ nt[Ge + 3], Ge += 3, Pi[h] = zi(O ^ Ri), Pi[h + 1] = zi(X ^ ui), Pi[h + 2] = zi($ ^ Ni), Pi[h + 3] = zi(M ^ Ci), Ri = pe, ui = Le, Ni = Ue, Ci = He, h += 4;\n }\n return Pi.buffer;\n }, B;\n }(), x = function() {\n function B(y, c) {\n this._subtle = void 0, this._key = void 0, this._subtle = y, this._key = c;\n }\n return B.prototype.expandKey = function() {\n return this._subtle.importKey(\"raw\", this._key, { name: \"AES-CBC\", length: 128 }, !1, [\"encrypt\", \"decrypt\"]);\n }, B;\n }(), g, D, _ = function() {\n function B(c, h) {\n var T = (h === void 0 ? {} : h).removePKCS7Padding, O = T === void 0 || T;\n if (this._logEnabled = !0, this._config = void 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._config = c, this._removePKCS7Padding = O, O)\n try {\n var M = self.crypto;\n M && (this._subtle = M.subtle || M.webkitSubtle);\n } catch ($) {\n }\n this._subtle === null && (this._config.enableSoftwareAES = !0);\n }\n var y = B.prototype;\n return y.isSync = function() {\n return this._config.enableSoftwareAES;\n }, y.flush = function() {\n var c = this._currentResult;\n if (c) {\n var h, T, O, M = new Uint8Array(c);\n return this.reset(), this._removePKCS7Padding ? (T = (h = M).byteLength, (O = T && new DataView(h.buffer).getUint8(T - 1)) ? v(h, 0, T - O) : h) : M;\n }\n this.reset();\n }, y.reset = function() {\n this._currentResult = null, this._currentIV = null, this._remainderData = null, this._softwareDecrypter && (this._softwareDecrypter = null);\n }, y.decrypt = function(c, h, T, O) {\n if (this._config.enableSoftwareAES) {\n this.softwareDecrypt(new Uint8Array(c), h, T);\n var M = this.flush();\n M && O(M.buffer);\n } else\n this.webCryptoDecrypt(new Uint8Array(c), h, T).then(O);\n }, y.softwareDecrypt = function(c, h, T) {\n var O, M, $, X = this._currentIV, de = this._currentResult, be = this._remainderData;\n this.logOnce(\"JS AES decrypt\"), be && (O = be, M = c, ($ = new Uint8Array(O.length + M.length)).set(O), $.set(M, O.length), c = $, this._remainderData = null);\n var Q = this.getValidChunk(c);\n if (!Q.length)\n return null;\n X && (T = X);\n var ae = this._softwareDecrypter;\n ae || (ae = this._softwareDecrypter = new C()), ae.expandKey(h);\n var pe = de;\n return this._currentResult = ae.decrypt(Q.buffer, 0, T), this._currentIV = v(Q, -16).buffer, pe || null;\n }, y.webCryptoDecrypt = function(c, h, T) {\n var O = this, M = this._subtle;\n return this._key === h && this._fastAesKey || (this._key = h, this._fastAesKey = new x(M, h)), this._fastAesKey.expandKey().then(function($) {\n return M ? new E(M, T).decrypt(c.buffer, $) : Promise.reject(new Error(\"web crypto not initialized\"));\n }).catch(function($) {\n return O.onWebCryptoError($, c, h, T);\n });\n }, y.onWebCryptoError = function(c, h, T, O) {\n return l.b.w(\"decrypter\", \"[decrypter.ts]: WebCrypto Error, disable WebCrypto API:\", c), this._config.enableSoftwareAES = !0, this._logEnabled = !0, this.softwareDecrypt(h, T, O);\n }, y.getValidChunk = function(c) {\n var h = c, T = c.length - c.length % 16;\n return T !== c.length && (h = v(c, 0, T), this._remainderData = v(c, T)), h;\n }, y.logOnce = function(c) {\n this._logEnabled && (l.b.i(\"decrypter\", \"[decrypter.ts]: \" + c), this._logEnabled = !1);\n }, B;\n }(), m = i(21), p = i(29), d = i(11), u = i(8), U = i.n(u), w = i(5), S = i.n(w), R = i(6);\n function z(B, y, c) {\n return c === void 0 && (c = 0), B.forEach(function(h) {\n h.dts = Math.max(0, h.dts + c) / y, h.cts = h.cts / y, h.pts = h.dts + h.cts, h.originDTS = h.originDTS / y;\n }), B;\n }\n (function(B) {\n B[B.KEY_FRAME = 0] = \"KEY_FRAME\", B[B.INTER_FRAME = 1] = \"INTER_FRAME\", B[B.INTRA_ONLY_FRAME = 2] = \"INTRA_ONLY_FRAME\", B[B.SWITCH_FRAME = 3] = \"SWITCH_FRAME\";\n })(g || (g = {})), function(B) {\n B[B.AV1_OBU_SEQUENCE_HEADER = 1] = \"AV1_OBU_SEQUENCE_HEADER\", B[B.AV1_OBU_TEMPORAL_DELIMITER = 2] = \"AV1_OBU_TEMPORAL_DELIMITER\", B[B.AV1_OBU_FRAME_HEADER = 3] = \"AV1_OBU_FRAME_HEADER\", B[B.AV1_OBU_TILE_GROUP = 4] = \"AV1_OBU_TILE_GROUP\", B[B.AV1_OBU_METADATA = 5] = \"AV1_OBU_METADATA\", B[B.AV1_OBU_FRAME = 6] = \"AV1_OBU_FRAME\", B[B.AV1_OBU_REDUNDANT_FRAME_HEADER = 7] = \"AV1_OBU_REDUNDANT_FRAME_HEADER\", B[B.AV1_OBU_TILE_LIST = 8] = \"AV1_OBU_TILE_LIST\", B[B.AV1_OBU_PADDING = 15] = \"AV1_OBU_PADDING\";\n }(D || (D = {}));\n var W = i(0), fe = function() {\n function B() {\n }\n return B.parse = function(y, c) {\n c === void 0 && (c = !0);\n var h = {}, T = new DataView(y.buffer, y.byteOffset).getUint32(0) !== (c ? 525030175 : 2113995134), O = 6, M = new Uint8Array(1024);\n M.set(y.slice(0, 6), 0);\n for (var $ = y.byteLength, X = [y[$ - 2], y[$ - 1]], de = 6; de < $; ) {\n var be = y[de];\n X[0] === 0 && X[1] === 0 && be === 3 || (M[O++] = be), X[0] = X[1], X[1] = be, ++de;\n }\n for (var Q = 6, ae = new DataView(M.buffer); Q < O; ) {\n var pe = Q, Le = ae.getUint16(pe, T);\n pe += 2;\n var Ue = ae.getUint16(pe, T);\n pe += 2;\n var He = ae.getUint16(pe, T);\n if (pe += 2, B._readElem(ae, h, pe, He, Le, Ue, T), pe += He, Q += Ue, !Ue)\n break;\n }\n return h;\n }, B._readElem = function(y, c, h, T, O, M, $) {\n var X = B._readString(y, h, T);\n switch (h += T, O) {\n case 1:\n break;\n case 2:\n c[X] = B._readString(y, h, M - 4);\n break;\n case 3:\n c[X] = y.getUint32(h, $);\n break;\n case 4:\n var de = y.getUint32(h + 4, $), be = y.getUint32(h, $);\n c[X] = Math.pow(2, 32) * de + be;\n break;\n case 5:\n c[X] = y.getFloat32(h, $);\n break;\n case 6:\n c[X] = y.getFloat64(h, $);\n }\n }, B._readString = function(y, c, h) {\n for (var T = \"\", O = c; O < c + h; O++)\n T += String.fromCharCode(y.getUint8(O));\n return T;\n }, B;\n }(), q = i(3), ve = i(18), Ae = i(23), P = null, Me = [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], Ie = [44100, 48e3, 32e3, 22050, 24e3, 16e3, 11025, 12e3, 8e3], je = [[0, 72, 144, 12], [0, 0, 0, 0], [0, 72, 144, 12], [0, 144, 144, 12]], ke = [0, 1, 1, 4];\n function H(B, y, c, h, T) {\n if (!(c + 24 > y.length)) {\n var O = ie(y, c);\n if (O && c + O.frameLength <= y.length) {\n var M = h + T * (O.samplesPerFrame * R.e / O.sampleRate), $ = { unit: y.subarray(c, c + O.frameLength), pts: M, dts: M, originDTS: h };\n return B.config = [], B.channelCount = O.channelCount, B.samplerate = O.sampleRate, B.samples.push($), { sample: $, length: O.frameLength, missing: 0 };\n }\n }\n }\n function ie(B, y) {\n var c = B[y + 1] >> 3 & 3, h = B[y + 1] >> 1 & 3, T = B[y + 2] >> 4 & 15, O = B[y + 2] >> 2 & 3;\n if (c !== 1 && T !== 0 && T !== 15 && O !== 3) {\n var M = B[y + 2] >> 1 & 1, $ = B[y + 3] >> 6, X = 1e3 * Me[14 * (c === 3 ? 3 - h : h === 3 ? 3 : 4) + T - 1], de = Ie[3 * (c === 3 ? 0 : c === 2 ? 1 : 2) + O], be = $ === 3 ? 1 : 2, Q = je[c][h], ae = ke[h], pe = 8 * Q * ae, Le = Math.floor(Q * X / de + M) * ae;\n if (P === null) {\n var Ue = (navigator.userAgent || \"\").match(/Chrome\\/(\\d+)/i);\n P = Ue ? parseInt(Ue[1]) : 0;\n }\n return P && P <= 87 && h === 2 && X >= 224e3 && $ === 0 && (B[y + 3] = 128 | B[y + 3]), { sampleRate: de, channelCount: be, frameLength: Le, samplesPerFrame: pe };\n }\n }\n function ye(B, y) {\n return B[y] === 255 && (224 & B[y + 1]) == 224 && (6 & B[y + 1]) != 0;\n }\n function we(B, y) {\n return y + 1 < B.length && ye(B, y);\n }\n var J, le = i(31), me = i(19), he = i(38), re = /\\0/g, Se = function() {\n function B() {\n }\n return B.parseMetadata = function(y) {\n var c = {};\n try {\n var h = B.parseScript(y, 0), T = B.parseScript(y, h.size);\n c[h.data] = T.data;\n } catch (O) {\n l.b.e(\"AMF\", O.toString());\n }\n return c;\n }, B.parseObject = function(y, c) {\n var h = B.parseString(y, c), T = B.parseScript(y, c + h.size), O = T.objectEnd;\n return { data: { name: h.data, value: T.data }, size: T.size, objectEnd: O };\n }, B.parseVariable = function(y, c) {\n return B.parseObject(y, c);\n }, B.parseLongString = function(y, c) {\n var h = new DataView(y, c).getUint32(0);\n return { data: h > 0 ? Object(he.a)(new Uint8Array(y, c + 4, h)).replace(re, \" \").trim() : \"\", size: 4 + h };\n }, B.parseDate = function(y, c) {\n var h = new DataView(y, c), T = h.getFloat64(0), O = h.getInt16(8);\n return { data: new Date(T += 60 * O * 1e3), size: 10 };\n }, B.parseString = function(y, c) {\n var h = new DataView(y, c).getUint16(0);\n return { data: h > 0 ? Object(he.a)(new Uint8Array(y, c + 2, h)).replace(re, \" \").trim() : \"\", size: 2 + h };\n }, B.parseScript = function(y, c) {\n var h = y.byteLength, T = c, O = y, M = new DataView(O, 0), $ = null, X = M.getUint8(T);\n T += 1;\n var de = !1;\n switch (X) {\n case 0:\n $ = M.getFloat64(T), T += 8;\n break;\n case 1:\n $ = !!M.getUint8(T), T += 1;\n break;\n case 2:\n var be = B.parseString(O, T);\n $ = be.data, T += be.size;\n break;\n case 3:\n for ($ = {}, (16777215 & M.getUint32(h - 4)) == 9 && 3; T < h - 4; ) {\n var Q = B.parseObject(O, T);\n if (Q.objectEnd)\n break;\n $[Q.data.name] = Q.data.value, T = Q.size;\n }\n T <= h - 3 && (16777215 & M.getUint32(T - 1)) === 9 && (T += 3);\n break;\n case 8:\n for ($ = {}, T += 4, (16777215 & M.getUint32(h - 4)) == 9 && 3; T < h - 8; ) {\n var ae = B.parseVariable(O, T);\n if (ae.objectEnd)\n break;\n $[ae.data.name] = ae.data.value, T = ae.size;\n }\n T <= h - 3 && (16777215 & M.getUint32(T - 1)) === 9 && (T += 3);\n break;\n case 9:\n $ = void 0, T = 1, de = !0;\n break;\n case 10:\n $ = [];\n var pe = M.getUint32(T);\n T += 4;\n for (var Le = 0; Le < pe; Le++) {\n var Ue = B.parseScript(O, T);\n $.push(Ue.data), T = Ue.size;\n }\n break;\n case 11:\n var He = B.parseDate(O, T + 1);\n $ = He.data, T += He.size;\n break;\n case 12:\n var Ge = B.parseString(O, T + 1);\n $ = Ge.data, T += Ge.size;\n break;\n default:\n T = h, l.b.v(\"AMF\", \"AMF\", \"Unsupported AMF value type \" + X);\n }\n return { data: $, size: T, objectEnd: de };\n }, B;\n }(), Pe = i(16), Xe = function() {\n function B(c) {\n this._evt = void 0, this._cache = void 0, this._tag = void 0, this._result = { tags: [] }, this._parseLen = 0, this._parseFunc = void 0, this._hasVideo = void 0, this._hasAudio = void 0, this._evt = c, this._cache = new m.a(), this._parseLen = Pe.e, this._parseFunc = this._parseFlvHead;\n }\n var y = B.prototype;\n return y.reset = function() {\n this._parseLen = Pe.e, this._parseFunc = this._parseFlvHead, this._cache.clear(), this._tag = void 0, this._result = { tags: [] }, this._hasAudio = void 0, this._hasVideo = void 0;\n }, y.append = function(c) {\n for (this._result = { tags: [] }, this._cache.put(c); this._cache.unreadLen >= this._parseLen; )\n this._parseFunc();\n return this._result;\n }, y._parseFlvHead = function() {\n var c = this._cache.get(Pe.e);\n if (c) {\n if (c[0] !== 70 || c[1] !== 76 || c[2] !== 86 || c[3] !== 1) {\n var h = { type: r.b.MUX_ERROR, details: r.a.PARSING_ERROR, fatal: !0, reason: \"Flv: wrong head\" };\n this._evt.emit(o.a.ERROR, h);\n }\n this._hasAudio = !!((4 & c[4]) >>> 2), this._hasVideo = !!(1 & c[4]), l.b.i(\"flv-tag-dump\", \"head audio: \" + this._hasAudio + \" video: \" + this._hasVideo), this._result.head = c, this._parseLen = Pe.f, this._parseFunc = this._parseFlvTagHead;\n }\n }, y._parseFlvTagHead = function() {\n this._tag = new Pe.i();\n var c = this._cache.get(Pe.f);\n c && (this._tag.tagType = c[0], this._tag.dataSize = Object(q.f)(c, 1), this._tag.timestamp = ((255 & c[7]) << 24) + Object(q.f)(c, 4), this._parseFunc = this._parseFlvTag, this._parseLen = this._tag.dataSize + Pe.g);\n }, y._parseFlvTag = function() {\n var c = this._tag;\n c && (c.tagType !== Pe.j.SCRIPT && c.tagType !== Pe.j.AUDIO && c.tagType !== Pe.j.VIDEO || (c.body = this._cache.get(c.dataSize), this._cache.skip(4), this._result.tags.push(c), this._tag = void 0), this._parseFunc = this._parseFlvTagHead, this._parseLen = Pe.f);\n }, S()(B, [{ key: \"trackInfo\", get: function() {\n return typeof this._hasVideo == \"boolean\" && typeof this._hasAudio == \"boolean\" ? { hasVideo: this._hasVideo, hasAudio: this._hasAudio } : void 0;\n } }]), B;\n }();\n (function(B) {\n B[B.H264_NAL_UNSPECIFIED = 0] = \"H264_NAL_UNSPECIFIED\", B[B.H264_NAL_SLICE = 1] = \"H264_NAL_SLICE\", B[B.H264_NAL_DPA = 2] = \"H264_NAL_DPA\", B[B.H264_NAL_DPB = 3] = \"H264_NAL_DPB\", B[B.H264_NAL_DPC = 4] = \"H264_NAL_DPC\", B[B.H264_NAL_IDR_SLICE = 5] = \"H264_NAL_IDR_SLICE\", B[B.H264_NAL_SEI = 6] = \"H264_NAL_SEI\", B[B.H264_NAL_SPS = 7] = \"H264_NAL_SPS\", B[B.H264_NAL_PPS = 8] = \"H264_NAL_PPS\", B[B.H264_NAL_AUD = 9] = \"H264_NAL_AUD\", B[B.H264_NAL_END_SEQUENCE = 10] = \"H264_NAL_END_SEQUENCE\", B[B.H264_NAL_END_STREAM = 11] = \"H264_NAL_END_STREAM\", B[B.H264_NAL_FILLER_DATA = 12] = \"H264_NAL_FILLER_DATA\", B[B.H264_NAL_SPS_EXT = 13] = \"H264_NAL_SPS_EXT\", B[B.H264_NAL_PREFIX = 14] = \"H264_NAL_PREFIX\", B[B.H264_NAL_SUB_SPS = 15] = \"H264_NAL_SUB_SPS\", B[B.H264_NAL_DPS = 16] = \"H264_NAL_DPS\", B[B.H264_NAL_RESERVED17 = 17] = \"H264_NAL_RESERVED17\", B[B.H264_NAL_RESERVED18 = 18] = \"H264_NAL_RESERVED18\", B[B.H264_NAL_AUXILIARY_SLICE = 19] = \"H264_NAL_AUXILIARY_SLICE\", B[B.H264_NAL_EXTEN_SLICE = 20] = \"H264_NAL_EXTEN_SLICE\", B[B.H264_NAL_DEPTH_EXTEN_SLICE = 21] = \"H264_NAL_DEPTH_EXTEN_SLICE\", B[B.H264_NAL_RESERVED22 = 22] = \"H264_NAL_RESERVED22\", B[B.H264_NAL_RESERVED23 = 23] = \"H264_NAL_RESERVED23\", B[B.H264_NAL_UNSPECIFIED24 = 24] = \"H264_NAL_UNSPECIFIED24\", B[B.H264_NAL_UNSPECIFIED25 = 25] = \"H264_NAL_UNSPECIFIED25\", B[B.H264_NAL_UNSPECIFIED26 = 26] = \"H264_NAL_UNSPECIFIED26\", B[B.H264_NAL_UNSPECIFIED27 = 27] = \"H264_NAL_UNSPECIFIED27\", B[B.H264_NAL_UNSPECIFIED28 = 28] = \"H264_NAL_UNSPECIFIED28\", B[B.H264_NAL_UNSPECIFIED29 = 29] = \"H264_NAL_UNSPECIFIED29\", B[B.H264_NAL_UNSPECIFIED30 = 30] = \"H264_NAL_UNSPECIFIED30\", B[B.NAL_FF_IGNORE = 267448321] = \"NAL_FF_IGNORE\", B[B.PRIV_NAL_MAGIC_H264 = 31] = \"PRIV_NAL_MAGIC_H264\";\n })(J || (J = {}));\n var Oe = i(7), st = i(33), ze = i.n(st);\n function rt(B) {\n return { data: B, byteIndex: 0, bitIndex: 0 };\n }\n function Fe(B, y) {\n if (V(B) > y) {\n var c = y % 8;\n B.byteIndex = B.byteIndex + Math.floor(y / 8) + Math.floor((B.bitIndex + c) / 8), B.bitIndex = (B.bitIndex + c) % 8;\n } else\n B.byteIndex = B.data.byteLength - 1, B.bitIndex = 7;\n }\n function G(B, y) {\n if (y > 32)\n throw new Error(\"len must be less 32\");\n var c = B.data[B.byteIndex], h = Math.min(8 - B.bitIndex, y), T = y - h;\n B.bitIndex += h;\n var O = c >> 8 - B.bitIndex & Math.pow(2, h) - 1;\n return B.bitIndex === 8 && (B.bitIndex = 0, B.byteIndex++), T ? O << T | G(B, T) : O;\n }\n function k(B) {\n return G(B, ne(B) + 1) - 1;\n }\n function F(B) {\n var y = k(B);\n return Math.pow(-1, y + 1) * Math.ceil(y / 2);\n }\n function I(B) {\n for (var y = 0, c = 0; c < 8; c++) {\n var h = G(B, 8);\n if (y |= (127 & h) << 7 * c, !(128 & h))\n break;\n }\n return y;\n }\n function V(B) {\n return 8 * (B.data.byteLength - B.byteIndex) - B.bitIndex;\n }\n function ne(B) {\n for (var y = V(B), c = 0; c < y; c++)\n if (G(B, 1) === 1)\n return B.bitIndex === 0 ? (B.byteIndex--, B.bitIndex = 7) : B.bitIndex--, c;\n return 0;\n }\n var oe = i(15), te = function() {\n function B() {\n }\n return B.parse = function(y) {\n var c = rt(y), h = { seq_profile: G(c, 3), seq_level_idx_0: 0, seq_tier_0: 0, high_bitdepth: 0, twelve_bit: 0, monochrome: 0, chroma_subsampling_x: 0, chroma_subsampling_y: 0, chroma_sample_position: 0, initial_presentation_delay_present: 0, profile_string: \"\", level_string: \"\", chroma_format_string: \"\", bit_depth_luma: 8, width: 0, height: 0, codec: \"\", color_info: { colorRange: oe.b.AVCOL_RANGE_MPEG, colourPrimaries: 2, transferCharacteristics: 0, matrixCoefficients: 0 }, buffer_delay_length_minus_1: 0, frame_presentation_time_length_minus_1: 0, frame_id_numbers_present_flag: 0, reduced_still_picture_header: 0, decoder_model_info_present_flag: 0, equal_picture_interval: 0, delta_frame_id_length_minus_2: 0, additional_frame_id_length_minus_1: 0, data: y };\n h.profile_string = function(Ge) {\n switch (Ge) {\n case 0:\n return \"Main\";\n case 1:\n return \"High\";\n case 2:\n return \"Professional\";\n default:\n return \"Unknown\";\n }\n }(h.seq_profile), G(c, 1), h.reduced_still_picture_header = G(c, 1);\n var T, O = 0, M = 0, $ = [], X = [0], de = [0], be = [0];\n if (h.reduced_still_picture_header)\n $[0] = G(c, 5);\n else {\n G(c, 1) && (this.timingInfo(c, h), h.decoder_model_info_present_flag = G(c, 1), h.decoder_model_info_present_flag && this.decoderModelInfo(c, h)), O = G(c, 1), M = G(c, 5);\n for (var Q = 0; Q <= M; Q++)\n G(c, 12), $[Q] = G(c, 5), $[Q] > 7 ? X[Q] = G(c, 1) : X[Q] = 0, h.decoder_model_info_present_flag ? (de[Q] = G(c, 1), de[Q] && this.operatingParametersInfo(c, h, Q)) : de[Q] = 0, O && (be[Q] = G(c, 1), be[Q] && G(c, 4));\n }\n h.seq_level_idx_0 = $[0], h.seq_tier_0 = X[0], h.level_string = 2 + ((T = $[0]) >> 2) + \".\" + (3 & T);\n var ae = G(c, 4), pe = G(c, 4), Le = G(c, ae + 1), Ue = G(c, pe + 1);\n h.width = Le + 1, h.height = Ue + 1, h.frame_id_numbers_present_flag = h.reduced_still_picture_header ? 0 : G(c, 1), h.frame_id_numbers_present_flag && (h.delta_frame_id_length_minus_2 = G(c, 4), h.additional_frame_id_length_minus_1 = G(c, 3)), G(c, 1), G(c, 1), G(c, 1);\n var He = 0;\n return h.reduced_still_picture_header || (G(c, 1), G(c, 1), G(c, 1), G(c, 1), (He = G(c, 1)) && (G(c, 1), G(c, 1)), (G(c, 1) || G(c, 1)) && G(c, 1) || G(c, 1), He && G(c, 3) + 1), G(c, 1), G(c, 1), G(c, 1), this.colorConfig(c, h), G(c, 1), h.codec = \"av01.\" + h.seq_profile + \".\" + (\"0\" + h.seq_level_idx_0).slice(-2) + (h.seq_tier_0 ? \"H\" : \"M\") + \".\" + (\"0\" + h.bit_depth_luma).slice(-2), h.chroma_format_string = function(Ge) {\n return Ge.chroma_subsampling_x === 0 && Ge.chroma_subsampling_y === 0 ? \"4:4:4\" : Ge.chroma_subsampling_x === 1 && Ge.chroma_subsampling_y === 0 ? \"4:2:2\" : Ge.chroma_subsampling_x === 1 && Ge.chroma_subsampling_y === 1 ? \"4:2:0\" : \"Unknown\";\n }(h), h;\n }, B.timingInfo = function(y, c) {\n G(y, 32), G(y, 32), c.equal_picture_interval = G(y, 1), c.equal_picture_interval && function(h) {\n var T = ne(h);\n T >= 32 || G(h, T);\n }(y);\n }, B.decoderModelInfo = function(y, c) {\n c.buffer_delay_length_minus_1 = G(y, 5), c.num_units_in_decoding_tick = G(y, 32), c.buffer_removal_time_length_minus_1 = G(y, 5), c.frame_presentation_time_length_minus_1 = G(y, 5);\n }, B.operatingParametersInfo = function(y, c, h) {\n var T = c.buffer_delay_length_minus_1 + 1;\n c.decoder_buffer_delay || (c.decoder_buffer_delay = []), c.decoder_buffer_delay[h] = G(y, T), c.encoder_buffer_delay || (c.encoder_buffer_delay = []), c.encoder_buffer_delay[h] = G(y, T), c.low_delay_mode_flag || (c.low_delay_mode_flag = []), c.low_delay_mode_flag[h] = G(y, T);\n }, B.colorConfig = function(y, c) {\n c.high_bitdepth = G(y, 1), c.seq_profile === 2 && c.high_bitdepth ? (c.twelve_bit = G(y, 1), c.bit_depth_luma = c.twelve_bit ? 12 : 10) : c.seq_profile < 2 && (c.bit_depth_luma = c.high_bitdepth ? 10 : 8), c.seq_profile === 1 ? c.monochrome = 0 : c.monochrome = G(y, 1), G(y, 1) ? (c.color_info.colourPrimaries = G(y, 8), c.color_info.transferCharacteristics = G(y, 8), c.color_info.matrixCoefficients = G(y, 8)) : (c.color_info.colourPrimaries = oe.a.AVCOL_PRI_UNSPECIFIED, c.color_info.transferCharacteristics = oe.d.AVCOL_TRC_UNSPECIFIED, c.color_info.matrixCoefficients = oe.c.AVCOL_SPC_UNSPECIFIED), c.chroma_subsampling_x = 1, c.chroma_subsampling_y = 1, c.monochrome ? c.color_info.colorRange = G(y, 1) + 1 : (c.color_info.colourPrimaries === oe.a.AVCOL_PRI_BT709 && c.color_info.transferCharacteristics === oe.d.AVCOL_TRC_IEC61966_2_1 && c.color_info.matrixCoefficients === oe.c.AVCOL_SPC_RGB ? (c.color_info.colorRange = 1, c.chroma_subsampling_x = 0, c.chroma_subsampling_y = 0) : (c.color_info.colorRange = G(y, 1) + 1, c.seq_profile === 0 ? (c.chroma_subsampling_x = 1, c.chroma_subsampling_y = 1) : c.seq_profile === 1 ? (c.chroma_subsampling_x = 0, c.chroma_subsampling_y = 0) : c.bit_depth_luma === 12 ? (c.chroma_subsampling_x = G(y, 1), c.chroma_subsampling_x ? c.chroma_subsampling_y = G(y, 1) : c.chroma_subsampling_y = 0) : (c.chroma_subsampling_x = 1, c.chroma_subsampling_y = 0), c.chroma_subsampling_x && c.chroma_subsampling_y && G(y, 2)), G(y, 1));\n }, B;\n }();\n function Ee(B, y) {\n var c = Object.keys(B);\n if (Object.getOwnPropertySymbols) {\n var h = Object.getOwnPropertySymbols(B);\n y && (h = h.filter(function(T) {\n return Object.getOwnPropertyDescriptor(B, T).enumerable;\n })), c.push.apply(c, h);\n }\n return c;\n }\n function xe(B) {\n for (var y = 1; y < arguments.length; y++) {\n var c = arguments[y] != null ? arguments[y] : {};\n y % 2 ? Ee(Object(c), !0).forEach(function(h) {\n ze()(B, h, c[h]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(B, Object.getOwnPropertyDescriptors(c)) : Ee(Object(c)).forEach(function(h) {\n Object.defineProperty(B, h, Object.getOwnPropertyDescriptor(c, h));\n });\n }\n return B;\n }\n var K = function() {\n function B() {\n }\n return B.createCtx = function() {\n return { seenFrameHeader: 0, ref: [] };\n }, B.parseOBU = function(y, c) {\n for (var h = [], T = 0; T < y.byteLength; ) {\n var O = y.subarray(T), M = this.parseOBUHeader(O), $ = 0, X = M.obu_extension_flag + 1, de = rt(O);\n Fe(de, 8 * X), $ = M.obu_has_size_field ? I(de) : O.length - X;\n var be = de.byteIndex, Q = xe(xe({}, M), {}, { data: O.subarray(0, be + $) });\n M.obu_type === D.AV1_OBU_SEQUENCE_HEADER ? (Q.content = te.parse(Q.data.subarray(be)), c.sh = Q.content = te.parse(Q.data.subarray(be))) : M.obu_type === D.AV1_OBU_FRAME_HEADER ? (c.seenFrameHeader = 0, this.frameHeaderOBU(Q.data.subarray(be), c)) : M.obu_type === D.AV1_OBU_REDUNDANT_FRAME_HEADER ? c.seenFrameHeader = 1 : M.obu_type === D.AV1_OBU_TEMPORAL_DELIMITER ? c.seenFrameHeader = 0 : M.obu_type === D.AV1_OBU_FRAME && (c.seenFrameHeader = 0, Q.content = this.frameOBU(Q.data.subarray(be), c)), h.push(Q), T += be + $;\n }\n return h;\n }, B.parseOBUHeader = function(y) {\n var c = { obu_forbidden_bit: y[0] >> 7, obu_type: y[0] >> 3 & 15, obu_extension_flag: y[0] >> 2 & 1, obu_has_size_field: y[0] >> 1 & 1 };\n return c.obu_extension_flag && (c.temporal_id = y[1] >> 5, c.spatial_id = y[1] >> 3 & 3), c;\n }, B.frameHeaderOBU = function(y, c) {\n var h = rt(y);\n c.seenFrameHeader ? c.frame = { keyframe: !1, show_existing_frame: 0 } : (c.seenFrameHeader = 1, c.frame = { keyframe: !1, show_existing_frame: 0 }, this.uncompressedHeader(h, c), c.frame.show_existing_frame ? c.seenFrameHeader = 0 : c.seenFrameHeader = 1);\n }, B.frameOBU = function(y, c) {\n return this.frameHeaderOBU(y, c), c.frame;\n }, B.uncompressedHeader = function(y, c) {\n var h = c.sh;\n if (h) {\n var T = g.INTER_FRAME;\n if (h.reduced_still_picture_header)\n T = g.KEY_FRAME;\n else {\n if (G(y, 1) == 1) {\n G(y, 3);\n return;\n }\n T = G(y, 2);\n }\n c.frame && (c.frame.keyframe = T === g.KEY_FRAME);\n }\n }, B.temporalPointInfo = function(y, c) {\n G(y, c.frame_presentation_time_length_minus_1 + 1);\n }, B;\n }();\n function Z(B) {\n for (var y, c = B.byteLength, h = [], T = 1, O = null; T < c - 2; )\n B[T] === 0 && B[T + 1] === 0 && B[T + 2] === 3 ? (h.push(T + 2), T += 2) : T++;\n if (h.length === 0)\n return B;\n y = c - h.length, O = new Uint8Array(y);\n var M = 0;\n for (T = 0; T < y; M++, T++)\n M === h[0] && (M++, h.shift()), O[T] = B[M];\n return O;\n }\n var Y = function() {\n function B() {\n }\n return B.parse = function(y, c) {\n for (var h = Z(y), T = 0, O = []; T < h.length - 1; ) {\n var M = 0, $ = 0, X = 0;\n do\n M = h[T], T++, $ += M;\n while (M === 255);\n do\n M = h[T], T++, X += M;\n while (M === 255);\n var de = h.subarray(T, T + X);\n O.push({ type: $, data: de }), T += X;\n }\n return O;\n }, B;\n }();\n function _e(B) {\n switch (B) {\n case 1:\n return \"4:2:0\";\n case 2:\n return \"4:2:2\";\n case 3:\n return \"4:4:4\";\n default:\n return \"Unknown\";\n }\n }\n var ee = function() {\n function B() {\n }\n return B.parse = function(y) {\n var c = rt(Z(y));\n G(c, 8);\n var h = { pps_id: 0, sps_id: 0, cabac: 0, pic_order_present: 0, slice_group_count: 0, mb_slice_group_map_type: 0, ref_count: [], weighted_pred: 0, weighted_bipred_idc: 0, chroma_qp_index_offset: [], deblocking_filter_parameters_present: 0, constrained_intra_pred: 0, redundant_pic_cnt_present: 0, transform_8x8_mode: 0, data: new Uint8Array(y) };\n return h.pps_id = k(c), h.sps_id = k(c), h.cabac = G(c, 1), h.pic_order_present = G(c, 1), h.slice_group_count = k(c) + 1, h.slice_group_count > 1 && k(c), h.ref_count[0] = k(c) + 1, h.ref_count[1] = k(c) + 1, h.weighted_pred = G(c, 1), h.weighted_bipred_idc = G(c, 2), F(c), F(c), h.chroma_qp_index_offset[0] = F(c), h.deblocking_filter_parameters_present = G(c, 1), h.constrained_intra_pred = G(c, 1), h.redundant_pic_cnt_present = G(c, 1), h.transform_8x8_mode = 0, h;\n }, B;\n }(), Ve = [[1, 1], [12, 11], [10, 11], [16, 11], [40, 33], [24, 11], [20, 11], [32, 11], [80, 33], [18, 11], [15, 11], [64, 33], [160, 99], [4, 3], [3, 2], [2, 1]], ce = [W.b.hevc, W.b.kvc3, W.b.kvc4, W.b.kvc5, W.b.kvc6], qe = [W.b.vvc, W.b.bvc2, W.b.kvc30];\n function Ce(B) {\n return !!B && ce.indexOf(B) >= 0;\n }\n function Ye(B) {\n var y = G(B, 8);\n return y > 0 && y <= 16 ? { width: Ve[y - 1][0], height: Ve[y - 1][1] } : y === 255 ? { width: G(B, 16), height: G(B, 16) } : void 0;\n }\n var tt, Ht = function() {\n function B() {\n }\n return B.parse = function(y) {\n var c = rt(Z(y));\n Fe(c, 8);\n var h = G(c, 8);\n Fe(c, 8);\n var T = G(c, 8), O = k(c), M = function(Ir) {\n switch (Ir) {\n case 66:\n return \"Baseline\";\n case 77:\n return \"Main\";\n case 88:\n return \"Extended\";\n case 100:\n return \"High\";\n case 110:\n return \"High10\";\n case 122:\n return \"High422\";\n case 244:\n return \"High444\";\n default:\n return \"Unknown\";\n }\n }(h), $ = function(Ir) {\n return (Ir / 10).toFixed(1);\n }(T), X = 1, de = 8, be = 8;\n if ((h === 100 || h === 110 || h === 122 || h === 244 || h === 44 || h === 83 || h === 86 || h === 118 || h === 128 || h === 138 || h === 144) && ((X = k(c)) === 3 && G(c, 1), de = k(c) + 8, be = k(c) + 8, G(c, 1), G(c, 1)))\n for (var Q = X !== 3 ? 8 : 12, ae = 0; ae < Q; ae++)\n G(c, 1) && (ae < 6 ? B._skipScalingList(c, 16) : B._skipScalingList(c, 64));\n var pe = k(c) + 4, Le = k(c), Ue = 0, He = 0, Ge = 0, Qe = 0, ot = 0, nt = [];\n if (Le === 0)\n Ue = k(c) + 4;\n else if (Le === 1) {\n He = G(c, 1), Qe = F(c), ot = F(c), Ge = k(c);\n for (var ut = 0; ut < Ge; ut++)\n nt[ut] = F(c);\n }\n var it = Math.max(2, k(c));\n G(c, 1);\n var Ft = k(c) + 1, Lt = k(c) + 1, dt = G(c, 1);\n dt === 0 && G(c, 1), G(c, 1);\n var jt = 0, li = 0, Ri = 0, ui = 0;\n G(c, 1) && (jt = k(c), li = k(c), Ri = k(c), ui = k(c));\n var Ni = { width: 1, height: 1 }, Ci = 0, _i = !0, Pi = 0, zi = 0, vn = oe.b.AVCOL_RANGE_MPEG, Bn = 2, gn = 0, Vn = 0;\n if (G(c, 1)) {\n if (G(c, 1)) {\n var yr = Ye(c);\n yr && (Ni = yr);\n }\n if (G(c, 1) && G(c, 1), G(c, 1) && (G(c, 3), vn = G(c, 1) ? oe.b.AVCOL_RANGE_JPEG : oe.b.AVCOL_RANGE_MPEG, G(c, 1) && (Bn = G(c, 8), gn = G(c, 8), Vn = G(c, 8))), G(c, 1) && (k(c), k(c)), G(c, 1)) {\n var wa = G(c, 32), ts = G(c, 32);\n _i = !!G(c, 1), Ci = (Pi = ts) / (zi = 2 * wa);\n }\n }\n var Fn = 0, is = 0;\n X === 0 ? (Fn = 1, is = 2 - dt) : (Fn = X === 3 ? 1 : 2, is = (X === 1 ? 2 : 1) * (2 - dt));\n var Aa = 16 * Ft, Mi = 16 * Lt * (2 - dt);\n Aa -= (jt + li) * Fn, Mi -= (Ri + ui) * is;\n for (var Dl = y.subarray(1, 4), ao = \"avc1.\", rs = 0; rs < 3; rs++) {\n var Ta = Dl[rs].toString(16);\n Ta.length < 2 && (Ta = \"0\" + Ta), ao += Ta;\n }\n return { sps_id: O, profile_string: M, level_string: $, bit_depth_luma: de, bit_depth_chroma: be, chroma_format_idc: X, chroma_format_string: _e(X), frame_rate: { fixed: _i, fps: Ci, fps_den: zi, fps_num: Pi }, sar: Ni, codec_size: { width: Aa, height: Mi }, color_info: { colorRange: vn, colourPrimaries: Bn, transferCharacteristics: gn, matrixCoefficients: Vn }, codec: ao, pic_order_cnt_type: Le, log2_max_frame_num: pe, log2_max_poc_lsb: Ue, frame_mbs_only_flag: dt, delta_pic_order_always_zero_flag: He, num_ref_frames_in_pic_order_cnt_cycle: Ge, offset_for_ref_frame: nt, offset_for_non_ref_pic: Qe, offset_for_top_to_bottom_field: ot, ref_frame_count: it, data: new Uint8Array(y) };\n }, B._skipScalingList = function(y, c) {\n for (var h = 8, T = 8, O = 0; O < c; O++)\n T !== 0 && (T = (h + F(y) + 256) % 256), h = T === 0 ? h : T;\n }, B;\n }(), $t = { 1: \"Main\", 2: \"Main 10\", 3: \"Main Still Picture\", 4: \"Rext\" }, xt = { 30: \"1\", 60: \"2\", 63: \"2.1\", 90: \"3\", 93: \"3.1\", 120: \"4\", 123: \"4.1\", 150: \"5\", 153: \"5.1\", 156: \"5.2\", 180: \"6\", 183: \"6.1\", 186: \"6.2\", 255: \"8.5\" }, Ct = function() {\n function B() {\n }\n return B.parse = function(y) {\n var c = rt(Z(y));\n Fe(c, 16);\n var h = { pps_id: k(c), sps_id: k(c), dependent_slice_segments_enabled_flag: G(c, 1), output_flag_present_flag: G(c, 1), num_extra_slice_header_bits: G(c, 3), sign_data_hiding_enabled_flag: G(c, 1), cabac_init_present_flag: G(c, 1), num_ref_idx_l0_default_active: k(c) + 1, num_ref_idx_l1_default_active: k(c) + 1, init_qp_minus26: k(c), constrained_intra_pred_flag: G(c, 1), transform_skip_enabled_flag: G(c, 1), tiles_enabled_flag: 0, entropy_coding_sync_enabled_flag: 0, data: new Uint8Array(y) };\n return G(c, 1) && k(c), F(c), F(c), Fe(c, 4), h.tiles_enabled_flag = G(c, 1), h.entropy_coding_sync_enabled_flag = G(c, 1), h;\n }, B;\n }(), Et = function() {\n function B() {\n }\n return B.parsePTL = function(y, c, h) {\n if (!this._decodeProfileTierLevel(y, c.general_ptl) || V(y) < 8 + 16 * (h - 1 > 0 ? 1 : 0))\n return !1;\n var T;\n c.general_ptl.level_idc = G(y, 8), c.general_ptl.level_string = (T = c.general_ptl.level_idc, xt[T]), c.sub_layer_profile_present_flag = [], c.sub_layer_level_present_flag = [];\n for (var O = 0; O < h - 1; O++)\n c.sub_layer_profile_present_flag[O] = G(y, 1), c.sub_layer_level_present_flag[O] = G(y, 1);\n if (h - 1 > 0)\n for (var M = h - 1; M < 8; M++)\n G(y, 2);\n for (var $ = 0; $ < h - 1; $++) {\n if (c.sub_layer_ptl[$] = this.getPTLCommon(), c.sub_layer_profile_present_flag[$] && this._decodeProfileTierLevel(y, c.sub_layer_ptl[$]))\n return !1;\n if (c.sub_layer_level_present_flag[$]) {\n if (V(y) < 8)\n return !1;\n c.sub_layer_ptl[$].level_idc = G(y, 8);\n }\n }\n return !0;\n }, B.getPTL = function() {\n return { general_ptl: B.getPTLCommon(), sub_layer_ptl: [], sub_layer_profile_present_flag: [], sub_layer_level_present_flag: [] };\n }, B.getPTLCommon = function() {\n return { profile_space: 0, tier_flag: 0, profile_idc: 0, profile_compatibility: 0, profile_compatibility_flag: [], constraint_indicator: [], level_idc: 0, profile_string: \"\", level_string: \"\" };\n }, B._decodeProfileTierLevel = function(y, c) {\n if (V(y) < 88)\n return !1;\n c.profile_space = G(y, 2), c.tier_flag = G(y, 1), c.profile_idc = G(y, 5), c.profile_compatibility_flag = [];\n for (var h = 0; h < 32; h++)\n c.profile_compatibility_flag[h] = G(y, 1), c.profile_compatibility = (c.profile_compatibility_flag[h] << 31 - h) + c.profile_compatibility, c.profile_idc == 0 && h > 0 && c.profile_compatibility_flag[h] && (c.profile_idc = h);\n for (var T = 0; T < 6; T++)\n c.constraint_indicator.push(G(y, 8));\n var O;\n return c.profile_string = (O = c.profile_idc, $t[O]), !0;\n }, B;\n }(), bi = [1, 2, 2, 1], yi = [1, 2, 1, 1], Ei = function() {\n function B() {\n }\n return B.parse = function(y, c) {\n c === void 0 && (c = W.b.hevc);\n var h = rt(Z(y)), T = Et.getPTL();\n Fe(h, 16);\n var O = G(h, 4), M = G(h, 3), $ = M + 1;\n Fe(h, 1);\n var X = { vps_id: O, sps_id: 0, chroma_format_idc: 0, chroma_format_string: \"\", profile_string: \"\", level_string: \"\", bit_depth_luma: 0, bit_depth_chroma: 0, fps: 0, width: 0, height: 0, conformance_window_flag: 0, codec: \"\", color_info: { colorRange: oe.b.AVCOL_RANGE_MPEG, colourPrimaries: 2, transferCharacteristics: 0, matrixCoefficients: 0 }, min_spatial_segmentation_idc: 0, log2_max_poc_lsb: 0, separate_colour_plane_flag: 0, log2_min_cb_size: 0, log2_diff_max_min_coding_block_size: 0, log2_min_tb_size: 0, log2_max_trafo_size: 0, log2_ctb_size: 0, ctb_width: 0, ctb_height: 0, temporal_layer: [], ptl: T, sar: { width: 1, height: 1 }, data: new Uint8Array(y) };\n if (!Et.parsePTL(h, T, $) || (X.sps_id = k(h), X.sps_id >= 16))\n return X;\n var de = k(h);\n if (de == 3 && G(h, 1) && (de = 0), X.width = k(h), X.height = k(h), X.conformance_window_flag = G(h, 1), X.conformance_window_flag) {\n var be = yi[de], Q = bi[de];\n X.conf_win_left_offset = k(h), X.conf_win_right_offset = k(h), X.conf_win_top_offset = k(h), X.conf_win_bottom_offset = k(h), X.width = X.width - (X.conf_win_left_offset + X.conf_win_right_offset) * Q, X.height = X.height - (X.conf_win_top_offset + X.conf_win_bottom_offset) * be;\n }\n X.bit_depth_luma = k(h) + 8, X.bit_depth_chroma = k(h) + 8, X.log2_max_poc_lsb = k(h) + 4;\n for (var ae = G(h, 1) ? 0 : M; ae <= M; ae++)\n X.temporal_layer.push({ max_dec_pic_buffering: k(h) + 1 }), k(h), k(h);\n X.log2_min_cb_size = k(h) + 3, X.log2_diff_max_min_coding_block_size = k(h), c !== W.b.kvc4 && c !== W.b.kvc5 && c !== W.b.kvc6 || k(h), c !== W.b.kvc3 && c !== W.b.kvc4 && c !== W.b.kvc5 && c !== W.b.kvc6 || k(h) && (k(h), k(h)), X.log2_min_tb_size = k(h) + 2;\n var pe = k(h);\n X.log2_max_trafo_size = pe + X.log2_min_tb_size, k(h), k(h), G(h, 1) && G(h, 1) && this.skipScalingListData(h), G(h, 1), G(h, 1), G(h, 1) && (G(h, 4), G(h, 4), k(h), k(h), G(h, 1));\n var Le = k(h);\n if (Le > 64)\n return X;\n for (var Ue = [], He = 0; He < Le; He++)\n if (this.parseRps(h, He, Le, Ue) < 0)\n return X;\n if (G(h, 1)) {\n var Ge = k(h);\n if (Ge > 31)\n return X;\n for (ae = 0; ae < Ge; ae++)\n G(h, Math.min(X.log2_max_poc_lsb, 16)), G(h, 1);\n }\n return G(h, 1), G(h, 1), G(h, 1) && this.hvccParseVui(h, X, M), X.log2_ctb_size = X.log2_min_cb_size + X.log2_diff_max_min_coding_block_size, X.ctb_width = X.width + (1 << X.log2_ctb_size) - 1 >> X.log2_ctb_size, X.ctb_height = X.height + (1 << X.log2_ctb_size) - 1 >> X.log2_ctb_size, X.chroma_format_idc = de, X.chroma_format_string = de === 3 ? \"4:4:4\" : \"4:2:0\", X.profile_string = T.general_ptl.profile_string, X.level_string = T.general_ptl.level_string, X.codec = this.getCodec(T.general_ptl, c), X;\n }, B.getCodec = function(y, c) {\n c === void 0 && (c = W.b.hevc);\n for (var h = y.profile_compatibility.toString(16); h.length > 1; ) {\n var T = h.length - 1;\n if (h.charAt(T) !== \"0\")\n break;\n h = h.slice(0, T);\n }\n for (var O = \"\", M = !1, $ = 5; $ >= 0; $--)\n (y.constraint_indicator[$] || M) && (O = \".\" + y.constraint_indicator[$].toString(16) + O, M = !0);\n return (c === W.b.hevc ? \"hev1\" : c) + \".\" + [\"\", \"A\", \"B\", \"C\"][y.profile_space] + y.profile_idc + \".\" + h + \".\" + (y.tier_flag === 0 ? \"L\" : \"H\") + y.level_idc + O;\n }, B.getGeneralPTL = function() {\n return { profile_space: 0, tier_flag: 0, profile_idc: 0, profile_compatibility: 0, profile_compatibility_flag: [], constraint_indicator: [], level_idc: 0, profile_string: \"\", level_string: \"\" };\n }, B.skipScalingListData = function(y) {\n var c, h, T, O;\n for (c = 0; c < 4; c++)\n for (h = 0; h < (c == 3 ? 2 : 6); h++)\n if (G(y, 1))\n for (O = Math.min(64, 1 << 4 + (c << 1)), c > 1 && F(y), T = 0; T < O; T++)\n F(y);\n else\n k(y);\n }, B.parseRps = function(y, c, h, T) {\n var O;\n if (c && G(y, 1)) {\n if (c >= h)\n return -1;\n for (G(y, 1), k(y), T[c] = 0, O = 0; O <= T[c - 1]; O++) {\n var M = 0, $ = G(y, 1);\n $ || (M = G(y, 1)), ($ || M) && T[c]++;\n }\n } else {\n var X = k(y), de = k(y);\n if (2 * (de + X) > V(y))\n return -1;\n for (T[c] = X + de, O = 0; O < X; O++)\n k(y), G(y, 1);\n for (O = 0; O < de; O++)\n k(y), G(y, 1);\n }\n return 0;\n }, B.hvccParseVui = function(y, c, h) {\n var T;\n if (G(y, 1)) {\n var O = Ye(y);\n O && (c.sar = O);\n }\n G(y, 1) && G(y, 1), G(y, 1) && (G(y, 3), G(y, 1), G(y, 1) && (c.color_info.colourPrimaries = G(y, 8), c.color_info.transferCharacteristics = G(y, 8), c.color_info.matrixCoefficients = G(y, 8))), G(y, 1) && (k(y), k(y)), G(y, 3), G(y, 1) && (k(y), k(y), k(y), k(y)), G(y, 1) && (this.parseTimingInfo(y, c), G(y, 1) && this.skipHrdParameters(y, 1, h)), G(y, 1) && (G(y, 3), T = k(y), c.min_spatial_segmentation_idc = Math.min(c.min_spatial_segmentation_idc, T), k(y), k(y), k(y), k(y));\n }, B.parseTimingInfo = function(y, c) {\n var h = G(y, 32), T = G(y, 32);\n c.fps = T / h || 0, G(y, 1) && k(y);\n }, B.skipHrdParameters = function(y, c, h) {\n var T, O = 0, M = 0, $ = 0;\n for (c && (M = G(y, 1), $ = G(y, 1), (M || $) && ((O = G(y, 1)) && G(y, 19), G(y, 8), O && G(y, 4), G(y, 15))), T = 0; T <= h; T++) {\n var X = 0, de = 0, be = 0;\n if (G(y, 1) || (be = G(y, 1)), be ? k(y) : de = G(y, 1), !de && (X = k(y)) > 31)\n return -1;\n M && this._skipSubLayerHrdParameters(y, X, O), $ && this._skipSubLayerHrdParameters(y, X, O);\n }\n return 0;\n }, B._skipSubLayerHrdParameters = function(y, c, h) {\n var T;\n for (T = 0; T <= c; T++)\n k(y), k(y), h && (k(y), k(y)), G(y, 1);\n }, B;\n }(), wi = function() {\n function B() {\n }\n return B.parse = function(y) {\n var c = rt(Z(y));\n Fe(c, 16);\n var h = { vps_id: G(c, 4), fps: 0, ptl: Et.getPTL(), data: new Uint8Array(y) };\n if (h.vps_id >= 16)\n return l.b.i(\"vps-parser\", \"VPS id out of range:\", h.vps_id), h;\n if (G(c, 2) !== 3)\n return l.b.i(\"vps-parser\", \"vps_reserved_three_2bits is not three\"), h;\n Fe(c, 6);\n var T = G(c, 3);\n if (Fe(c, 1), G(c, 16) != 65535)\n return l.b.i(\"vps-parser\", `vps_reserved_ffff_16bits is not 0xffff\n`), h;\n if (T > 7)\n return l.b.i(\"vps-parser\", \"vps_max_sub_layers out of range: \", T), h;\n if (!Et.parsePTL(c, h.ptl, T))\n return h;\n for (var O = G(c, 1) ? 0 : T - 1; O < T; O++)\n k(c), k(c), k(c);\n var M = G(c, 6), $ = k(c) + 1;\n if ($ < 1 || $ > 1024 || ($ - 1) * (M + 1) > V(c))\n return l.b.i(\"vps-parser\", \"too many layer_id_included_flags\"), h;\n for (O = 1; O < $; O++)\n for (var X = 0; X <= M; X++)\n G(c, 1);\n if (G(c, 1)) {\n var de = G(c, 32), be = G(c, 32);\n h.fps = be / de || 0;\n }\n return h;\n }, B;\n }(), lt = i(17), fi = function() {\n function B() {\n }\n return B.parse = function(y) {\n var c = rt(Z(y));\n Fe(c, 16);\n var h = { data: new Uint8Array(y), pps_id: G(c, 6), sps_id: G(c, 4), width: 0, height: 0 };\n G(c, 1), h.width = k(c), h.height = k(c), G(c, 1) && (h.pps_conf_win_left_offset = k(c), h.pps_conf_win_right_offset = k(c), h.pps_conf_win_top_offset = k(c), h.pps_conf_win_bottom_offset = k(c)), G(c, 1) && (F(c), F(c), F(c), F(c)), G(c, 1);\n var T = G(c, 1);\n if (G(c, 1)) {\n var O = 0;\n T || (O = k(c));\n for (var M = k(c), $ = 0; $ <= O; $++)\n Fe(c, M + 1);\n }\n return h;\n }, B;\n }(), Zt = i(32), pi = function() {\n function B() {\n }\n return B.parse = function(y) {\n var c = rt(Z(y));\n Fe(c, 16);\n var h = { data: new Uint8Array(y), sps_id: G(c, 4), vps_id: G(c, 4), max_sublayers_minus1: G(c, 3), chroma_format_idc: G(c, 2), chroma_format_string: \"\", level_idc: 0, level_string: \"\", profile_idc: 0, profile_string: \"\", width: 0, height: 0, bitdepth: 8, fps: 0, general_nal_hrd_params_present_flag: 0, general_vcl_hrd_params_present_flag: 0, general_du_hrd_params_present_flag: 0, hrd_cpb_cnt_minus1: 0, sps_num_ref_pic_lists: [], sps_long_term_ref_pics_flag: 0, sps_inter_layer_prediction_enabled_flag: 0, sps_log2_max_pic_order_cnt_lsb_minus4: 0, sps_weighted_pred_flag: 0, sps_weighted_bipred_flag: 0, codec: \"vvc\", color_info: { colorRange: oe.b.AVCOL_RANGE_MPEG, colourPrimaries: 2, transferCharacteristics: 0, matrixCoefficients: 0 } };\n h.chroma_format_string = Object(Zt.a)(h.chroma_format_idc);\n var T = 1 << G(c, 2) + 5, O = G(c, 1);\n if (O && this._profileTierLevel(c, h, 1, h.max_sublayers_minus1), G(c, 1), G(c, 1) && Fe(c, 1), h.width = k(c), h.height = k(c), G(c, 1) && (h.conf_win_left_offset = k(c), h.conf_win_right_offset = k(c), h.conf_win_top_offset = k(c), h.conf_win_bottom_offset = k(c)), G(c, 1)) {\n var M = Math.floor(h.width / T) + 1, $ = Math.floor(h.height / T) + 1, X = k(c), de = 0, be = 0;\n X > 0 && (be = G(c, 1), de = G(c, 1));\n for (var Q = 0; X > 0 && Q <= X; Q++)\n de && Q !== 0 || (Q > 0 && h.width > T && Fe(c, M), Q > 0 && h.height > T && Fe(c, $), Q < X && h.width > T && Fe(c, M), Q < X && h.height > T && Fe(c, $)), be || (Fe(c, 1), Fe(c, 1));\n var ae = k(c);\n if (G(c, 1) && G(c, 1))\n for (var pe = 0; pe <= X; pe++)\n Fe(c, ae + 1);\n }\n if (h.bitdepth = k(c) + 8, G(c, 1), G(c, 1), h.sps_log2_max_pic_order_cnt_lsb_minus4 = G(c, 4), G(c, 1) && k(c), Fe(c, 8 * G(c, 2)), Fe(c, 8 * G(c, 2)), O) {\n var Le = 0;\n h.max_sublayers_minus1 > 0 && (Le = G(c, 1)), this._dpbParameters(c, h.max_sublayers_minus1, Le);\n }\n k(c), G(c, 1), k(c), k(c) != 0 && (k(c), k(c));\n var Ue = 0;\n h.chroma_format_idc != 0 && (Ue = G(c, 1)), Ue && (k(c), k(c) != 0 && (k(c), k(c))), k(c), k(c) != 0 && (k(c), k(c));\n var He = 0;\n T > 32 && (He = G(c, 1));\n var Ge = G(c, 1);\n Ge && (k(c), Fe(c, 1)), G(c, 1) && Fe(c, 2);\n var Qe = G(c, 1);\n if (h.chroma_format_idc != 0)\n for (var ot = G(c, 1), nt = G(c, 1) ? 1 : ot ? 3 : 2, ut = [], it = 0; it < nt; it++) {\n F(c), ut[it] = k(c);\n for (var Ft = 0; Ft <= ut[it]; Ft++)\n k(c), k(c);\n }\n G(c, 1), G(c, 1) && h.chroma_format_idc != 0 && Fe(c, 1), G(c, 1), h.sps_weighted_pred_flag = G(c, 1), h.sps_weighted_bipred_flag = G(c, 1), h.sps_long_term_ref_pics_flag = G(c, 1), h.vps_id > 0 && (h.sps_inter_layer_prediction_enabled_flag = G(c, 1)), G(c, 1);\n for (var Lt = G(c, 1), dt = 0; dt < (Lt ? 1 : 2); dt++) {\n h.sps_num_ref_pic_lists[dt] = k(c);\n for (var jt = 0; jt < h.sps_num_ref_pic_lists[dt]; jt++)\n this._refPicListStruct(c, h, dt, jt);\n }\n G(c, 1), G(c, 1) && Fe(c, 1);\n var li = G(c, 1);\n G(c, 1) && Fe(c, 1), G(c, 1), G(c, 1) && Fe(c, 1), G(c, 1) && Fe(c, 1);\n var Ri = 6 - k(c);\n G(c, 1), G(c, 1) && (k(c), Fe(c, 1), li && Fe(c, 1), G(c, 1) && Fe(c, 1)), G(c, 1), G(c, 1), Ri >= 2 && G(c, 1) && Ri >= 3 && k(c), k(c), G(c, 1), G(c, 1), G(c, 1), h.chroma_format_idc != 0 && Fe(c, 1), h.chroma_format_idc === 1 && Fe(c, 2);\n var ui = G(c, 1), Ni = 0;\n if (h.chroma_format_idc !== 3 || He || (Ni = G(c, 1)), (Ge || ui) && k(c), G(c, 1) && k(c), G(c, 1)) {\n var Ci = G(c, 2);\n F(c);\n for (var _i = 0; _i < Ci + 1; _i++)\n F(c), k(c);\n }\n var Pi = G(c, 1);\n Qe && Pi && Fe(c, 1);\n var zi = 0;\n if (Ni && Pi && (zi = G(c, 1)), zi && Fe(c, 1), G(c, 1), G(c, 1), G(c, 1) && G(c, 1)) {\n for (var vn = k(c), Bn = 0; Bn < vn; Bn++)\n k(c);\n for (var gn = k(c), Vn = 0; Vn < gn; Vn++)\n k(c);\n }\n if (O && G(c, 1)) {\n this._generalTimingHrdParameters(c, h);\n var yr = 0;\n h.max_sublayers_minus1 > 0 && (yr = G(c, 1));\n var wa = yr ? 0 : h.max_sublayers_minus1;\n this._olsTimingHrdParameters(c, h, wa);\n }\n if (G(c, 1), G(c, 1)) {\n var ts = k(c);\n c.bitIndex && Fe(c, 8 - c.bitIndex), this._vuiPayload(c, h, ts + 1);\n }\n return h;\n }, B._profileTierLevel = function(y, c, h, T) {\n h && (c.profile_idc = G(y, 7), c.profile_string = Object(Zt.c)(c.profile_idc), Fe(y, 1)), c.level_idc = G(y, 8), c.level_string = Object(Zt.b)(c.level_idc), Fe(y, 2), h && this._generalConstraintsInfo(y);\n for (var O = [], M = T - 1; M >= 0; M--)\n O[M] = G(y, 1);\n y.bitIndex && Fe(y, 8 - y.bitIndex);\n for (var $ = T - 1; $ >= 0; $--)\n O[$] && Fe(y, 1);\n if (h)\n for (var X = G(y, 8), de = 0; de < X; de++)\n Fe(y, 32);\n }, B._generalConstraintsInfo = function(y) {\n if (G(y, 1)) {\n Fe(y, 71);\n var c = G(y, 8), h = 0;\n c > 5 && (Fe(y, 6), h = 6), c > h && Fe(y, c - h);\n }\n y.bitIndex && Fe(y, 8 - y.bitIndex);\n }, B._dpbParameters = function(y, c, h) {\n for (var T = h ? 0 : c; T <= c; T++)\n k(y), k(y), k(y);\n }, B._refPicListStruct = function(y, c, h, T) {\n var O = k(y), M = 0;\n c.sps_long_term_ref_pics_flag && T < c.sps_num_ref_pic_lists[h] && O > 0 && (M = G(y, 1));\n for (var $ = 0; $ < O; $++) {\n var X = 0;\n if (c.sps_inter_layer_prediction_enabled_flag && (X = G(y, 1)), X)\n k(y);\n else {\n var de = 0;\n if (c.sps_long_term_ref_pics_flag && (de = G(y, 1)), de) {\n var be = k(y);\n ((c.sps_weighted_pred_flag || c.sps_weighted_bipred_flag) && $ != 0 ? be : be + 1) && Fe(y, 1);\n } else\n M && Fe(y, c.sps_log2_max_pic_order_cnt_lsb_minus4 + 4);\n }\n }\n }, B._generalTimingHrdParameters = function(y, c) {\n var h = G(y, 32), T = G(y, 32);\n c.fps = T / h || 0, c.general_nal_hrd_params_present_flag = G(y, 1), c.general_vcl_hrd_params_present_flag = G(y, 1), (c.general_nal_hrd_params_present_flag || c.general_vcl_hrd_params_present_flag) && (G(y, 1), c.general_du_hrd_params_present_flag = G(y, 1), c.general_du_hrd_params_present_flag && Fe(y, 8), Fe(y, 8), c.general_du_hrd_params_present_flag && Fe(y, 4), c.hrd_cpb_cnt_minus1 = k(y));\n }, B._olsTimingHrdParameters = function(y, c, h) {\n for (var T = h; T <= c.max_sublayers_minus1; T++) {\n var O = 0;\n G(y, 1) || (O = G(y, 1)), O ? k(y) : (c.general_nal_hrd_params_present_flag || c.general_vcl_hrd_params_present_flag) && c.hrd_cpb_cnt_minus1 === 0 && Fe(y, 1), c.general_nal_hrd_params_present_flag && this._sublayerHrdParameters(y, c, T), c.general_vcl_hrd_params_present_flag && this._sublayerHrdParameters(y, c, T);\n }\n }, B._sublayerHrdParameters = function(y, c, h) {\n for (var T = 0; T <= c.hrd_cpb_cnt_minus1; T++)\n k(y), k(y), c.general_du_hrd_params_present_flag && (k(y), k(y)), Fe(y, 1);\n }, B._vuiPayload = function(y, c, h) {\n var T = G(y, 1), O = G(y, 1);\n G(y, 1), G(y, 1), G(y, 1) && G(y, 8) === 255 && G(y, 32), G(y, 1) && G(y, 1), G(y, 1) && (c.color_info.colourPrimaries = G(y, 8), c.color_info.transferCharacteristics = G(y, 8), c.color_info.matrixCoefficients = G(y, 8), c.color_info.colorRange = G(y, 1) ? oe.b.AVCOL_RANGE_JPEG : oe.b.AVCOL_RANGE_MPEG), G(y, 1) && (T && !O || k(y), k(y));\n }, B;\n }(), Bt = function() {\n function B() {\n }\n return B.parse = function(y) {\n var c = rt(Z(y));\n return Fe(c, 16), { vps_id: G(c, 4), data: new Uint8Array(y) };\n }, B;\n }(), gt = function() {\n function B() {\n }\n return B.parseAV1C = function(y, c) {\n var h, T = (h = K.parseOBU(y.subarray(4), c)[0]) == null ? void 0 : h.content;\n return { marker: y[0] >> 7 & 1, version: 127 & y[0], seq_profile: y[1] >> 5 & 7, seq_level_idx_0: 31 & y[1], seq_tier_0: y[2] >> 7 & 1, high_bitdepth: y[2] >> 6 & 1, twelve_bit: y[2] >> 5 & 1, monochrome: y[2] >> 4 & 1, chroma_subsampling_x: y[2] >> 3 & 1, chroma_subsampling_y: y[2] >> 2 & 1, chroma_sample_position: 3 & y[2], initial_presentation_delay_present: y[3] >> 4 & 1, sh: T };\n }, B.parseAVCC = function(y) {\n var c = y[0], h = y[1], T = y[2], O = y[3];\n if (c === 1 && h !== 0) {\n var M = 1 + (3 & y[4]);\n if (M === 3 || M === 4) {\n var $ = 31 & y[5];\n if ($ !== 0) {\n $ > 1 && l.b.w(\"video-config\", \"H264 SPS count: \" + $);\n for (var X, de, be = 6, Q = [], ae = [], pe = 0; pe < $; pe++) {\n var Le = Object(q.e)(y, be);\n if (be += 2, Le !== 0) {\n var Ue = y.subarray(be, be + Le);\n be += Le, Q[(X = Ht.parse(Ue)).sps_id] = X;\n }\n }\n var He = y[be];\n if (He !== 0) {\n He > 1 && l.b.w(\"video-config\", \"H264 PPS count: \" + He), be++;\n for (var Ge = 0; Ge < He; Ge++) {\n var Qe = Object(q.e)(y, be);\n be += 2;\n var ot = y.subarray(be, be + Qe);\n ae[(de = ee.parse(ot)).pps_id] = de, Qe !== 0 && (be += Qe);\n }\n return { version: c, avcProfile: h, profileCompatibility: T, avcLevel: O, naluLengthSize: M, paramSets: { spsList: Q, ppsList: ae, sps: X, pps: de } };\n }\n l.b.e(\"video-config\", \"Invalid H264 PPS count: \" + He);\n } else\n l.b.e(\"video-config\", \"Invalid H264 SPS count: \" + $);\n } else\n l.b.e(\"video-config\", \"MP4: Strange NaluLengthSizeMinusOne: \" + (M - 1));\n } else\n l.b.e(\"video-config\", \"Invalid AVCDecoderConfigurationRecord\");\n }, B.parseHVCC = function(y, c) {\n c === void 0 && (c = W.b.hevc);\n var h = 22;\n h++;\n for (var T, O, M, $, X = [], de = [], be = []; h < y.byteLength; ) {\n var Q = 63 & y[h];\n if (h += 1, y.byteLength - h <= 2)\n break;\n var ae = Object(q.e)(y, h);\n h += 2;\n for (var pe = 0; pe < ae && !(y.byteLength - h <= 2); pe++) {\n var Le = Object(q.e)(y, h);\n if (h += 2, Le !== 0) {\n var Ue = y.subarray(h, h + Le);\n if (Ue.byteLength !== Le)\n break;\n Q === Oe.a.HEVC_NAL_VPS ? (l.b.v(\"video-config\", \"VPS lengh \" + Le), be[(M = wi.parse(Ue)).vps_id] = M) : Q === Oe.a.HEVC_NAL_SPS ? (l.b.v(\"video-config\", \"SPS lengh \" + Le), X[(T = Ei.parse(Ue, c)).sps_id] = T) : Q === Oe.a.HEVC_NAL_PPS ? (l.b.v(\"video-config\", \"PPS lengh \" + Le), de[(O = Ct.parse(Ue)).pps_id] = O) : Q === Oe.a.HEVC_NAL_SEI_PREFIX || Q === Oe.a.HEVC_NAL_SEI_SUFFIX ? (l.b.i(\"video-config\", \"sei \" + Q + \" in hvcc\"), $ || ($ = []), $.push({ type: Q, data: Ue })) : l.b.i(\"video-config\", \"found \" + Q + \" nalu in hvcc.\"), h += Le;\n }\n }\n }\n return { paramSets: { vpsList: be, spsList: X, ppsList: de, seiList: $, sps: T, pps: O } };\n }, B._vvcPTLRecord = function(y, c, h) {\n c += 3 + (63 & y[c]);\n var T = rt(y);\n T.byteIndex = c;\n for (var O = [], M = h - 2; M >= 0; M--)\n O[M] = G(T, 1);\n for (var $ = h; $ <= 8 && h > 1; $++)\n Fe(T, 1);\n for (var X = h - 2; X >= 0; X--)\n O[X] && Fe(T, 8);\n return c = T.byteIndex, c += 1 + 4 * y[T.byteIndex];\n }, B.parseVvcC = function(y, c) {\n c === void 0 && (c = W.b.vvc);\n var h = 4, T = (y[h], 1 & y[h]);\n if (h++, T) {\n var O = y[++h] >> 4 & 7;\n h += 2, h = this._vvcPTLRecord(y, h, O), h += 6;\n }\n y[h], h++;\n for (var M, $, X, de = [], be = [], Q = []; h < y.byteLength; ) {\n var ae = 31 & y[h];\n h += 1;\n var pe = 1;\n ae !== lt.a.VVC_NAL_UNIT_DCI && ae !== lt.a.VVC_NAL_UNIT_OPI && (pe = Object(q.e)(y, h), h += 2);\n for (var Le = 0; Le < pe; Le++) {\n var Ue = Object(q.e)(y, h);\n h += 2;\n var He = y.subarray(h, h + Ue);\n if (He.byteLength !== Ue)\n break;\n h += Ue, ae === lt.a.VVC_NAL_UNIT_VPS ? (l.b.v(\"video-config\", \"VPS lengh \" + Ue), X = Bt.parse(He), Q.push(X)) : ae === lt.a.VVC_NAL_UNIT_SPS ? (l.b.v(\"video-config\", \"SPS lengh \" + Ue), M = pi.parse(He), de.push(M)) : ae === lt.a.VVC_NAL_UNIT_PPS && (l.b.v(\"video-config\", \"PPS lengh \" + Ue), $ = fi.parse(He), be.push($));\n }\n }\n return { paramSets: { vpsList: Q, spsList: de, ppsList: be, sps: M, pps: $ } };\n }, B.parseBV2C = function(y, c) {\n c === void 0 && (c = W.b.bvc2);\n var h = 18;\n y[h], h++;\n for (var T, O, M, $ = [], X = [], de = []; h < y.byteLength; ) {\n var be = 31 & y[h];\n h += 1;\n var Q = 1;\n be !== lt.a.VVC_NAL_UNIT_DCI && be !== lt.a.VVC_NAL_UNIT_OPI && (Q = Object(q.e)(y, h), h += 2);\n for (var ae = 0; ae < Q; ae++) {\n var pe = Object(q.e)(y, h);\n h += 2;\n var Le = y.subarray(h, h + pe);\n if (Le.byteLength !== pe)\n break;\n h += pe, be === lt.a.VVC_NAL_UNIT_VPS ? (l.b.v(\"video-config\", \"VPS lengh \" + pe), M = Bt.parse(Le), de.push(M)) : be === lt.a.VVC_NAL_UNIT_SPS ? (l.b.v(\"video-config\", \"SPS lengh \" + pe), T = pi.parse(Le), $.push(T)) : be === lt.a.VVC_NAL_UNIT_PPS && (l.b.v(\"video-config\", \"PPS lengh \" + pe), O = fi.parse(Le), X.push(O));\n }\n }\n return { paramSets: { vpsList: de, spsList: $, ppsList: X, sps: T, pps: O } };\n }, B.parseKvLC = function(y, c) {\n c === void 0 && (c = W.b.bvc2);\n var h = 4;\n y[h], y[h], y[++h], h++;\n for (var T, O, M, $ = [], X = [], de = []; h < y.byteLength; ) {\n var be = 31 & y[h];\n h += 1;\n var Q = 1;\n be !== lt.a.VVC_NAL_UNIT_DCI && be !== lt.a.VVC_NAL_UNIT_OPI && (Q = Object(q.e)(y, h), h += 2);\n for (var ae = 0; ae < Q; ae++) {\n var pe = Object(q.e)(y, h);\n h += 2;\n var Le = y.subarray(h, h + pe);\n if (Le.byteLength !== pe)\n break;\n h += pe, be === lt.a.VVC_NAL_UNIT_VPS ? (l.b.v(\"video-config\", \"VPS lengh \" + pe), M = Bt.parse(Le), de.push(M)) : be === lt.a.VVC_NAL_UNIT_SPS ? (l.b.v(\"video-config\", \"SPS lengh \" + pe), T = pi.parse(Le), $.push(T)) : be === lt.a.VVC_NAL_UNIT_PPS && (l.b.v(\"video-config\", \"PPS lengh \" + pe), O = fi.parse(Le), X.push(O));\n }\n }\n return { paramSets: { vpsList: de, spsList: $, ppsList: X, sps: T, pps: O } };\n }, B.generateAV1C = function(y) {\n var c = new Uint8Array(5 + y.data.length);\n return c[0] = 129, c[1] = (y.seq_profile << 5) + (31 & y.seq_level_idx_0), c[2] = (y.seq_tier_0 << 7) + (y.high_bitdepth << 6) + (y.twelve_bit << 5) + (y.monochrome << 4) + (y.chroma_subsampling_x << 3) + (y.chroma_subsampling_y << 2) + (3 & y.chroma_sample_position), c[3] = 0, c[4] = 8, c.set(y.data, 5), c;\n }, B.generateAVCC = function(y) {\n if (y.sps && y.pps && y.spsList.length && y.ppsList.length) {\n var c = y.spsList.filter(function(X) {\n return !!X;\n }), h = y.ppsList.filter(function(X) {\n return !!X;\n }), T = c.reduce(function(X, de) {\n return X + de.data.byteLength;\n }, 0), O = h.reduce(function(X, de) {\n return X + de.data.byteLength;\n }, 0), M = new Uint8Array(7 + T + O + 2 * c.length + 2 * h.length);\n M.set([1, y.sps.data[1], y.sps.data[2], y.sps.data[3], 255, 224 | c.length], 0);\n var $ = 6;\n return c.forEach(function(X) {\n M[$] = X.data.byteLength >> 8 & 255, M[$ + 1] = 255 & X.data.byteLength, M.set(X.data, $ + 2), $ += 2 + X.data.byteLength;\n }), M[$] = h.length, $++, h.forEach(function(X) {\n M[$] = X.data.byteLength >> 8 & 255, M[$ + 1] = 255 & X.data.byteLength, M.set(X.data, $ + 2), $ += 2 + X.data.byteLength;\n }), M;\n }\n }, B.generateHVCC = function(y) {\n if (y.sps && y.pps && y.spsList.length && y.ppsList.length && y.vpsList.length) {\n var c = y.spsList.filter(function(ae) {\n return !!ae;\n }), h = y.ppsList.filter(function(ae) {\n return !!ae;\n }), T = y.vpsList.filter(function(ae) {\n return !!ae;\n }), O = c.reduce(function(ae, pe) {\n return ae + pe.data.byteLength;\n }, 0) + h.reduce(function(ae, pe) {\n return ae + pe.data.byteLength;\n }, 0) + T.reduce(function(ae, pe) {\n return ae + pe.data.byteLength;\n }, 0) + 2 * (c.length + h.length + T.length), M = y.sps.ptl, $ = new Uint8Array(32 + O), X = new DataView($.buffer, 0);\n $[0] = 1, $[1] = (192 & M.general_ptl.profile_space) + ((1 & M.general_ptl.tier_flag) << 5) + M.general_ptl.profile_idc & 31, X.setUint32(2, M.general_ptl.profile_compatibility);\n for (var de = 0; de < 6; de++)\n X.setUint8(de + 6, M.general_ptl.constraint_indicator[de] || 0);\n X.setUint8(12, M.general_ptl.level_idc);\n var be = 1;\n y.pps.entropy_coding_sync_enabled_flag && y.pps.tiles_enabled_flag ? be = 0 : y.pps.entropy_coding_sync_enabled_flag ? be = 3 : y.pps.tiles_enabled_flag && (be = 2), $[13] = 240 + (3840 & y.sps.min_spatial_segmentation_idc), $[14] = 255 & y.sps.min_spatial_segmentation_idc, $[15] = 252 + (3 & be), $[16] = 252 + (3 & y.sps.chroma_format_idc), $[17] = 248 + (y.sps.bit_depth_luma - 8 & 7), $[18] = 248 + (y.sps.bit_depth_chroma - 8 & 7), $[21] = 3, $[22] = 3;\n var Q = 23;\n return [{ nalus: T, type: Oe.a.HEVC_NAL_VPS }, { nalus: c, type: Oe.a.HEVC_NAL_SPS }, { nalus: h, type: Oe.a.HEVC_NAL_PPS }].forEach(function(ae) {\n $[Q] = ae.type, Q++, X.setUint16(Q, ae.nalus.length), Q += 2, ae.nalus.forEach(function(pe) {\n X.setUint16(Q, pe.data.byteLength), Q += 2, $.set(pe.data, Q), Q += pe.data.byteLength;\n });\n }), $;\n }\n }, B.hevDecoderConfigToSample = function(y, c) {\n return { units: B.hevDecoderConfigToNalu(y), dts: 0, cts: 0, pts: 0, originDTS: c, key: !1 };\n }, B.hevDecoderConfigToNalu = function(y) {\n var c = [];\n return y.seiList && y.seiList.forEach(function(h) {\n h && c.push(h);\n }), y.vpsList.forEach(function(h) {\n h && c.push({ type: Oe.a.HEVC_NAL_VPS, data: h.data });\n }), y.spsList.forEach(function(h) {\n h && c.push({ type: Oe.a.HEVC_NAL_SPS, data: h.data });\n }), y.ppsList.forEach(function(h) {\n h && c.push({ type: Oe.a.HEVC_NAL_PPS, data: h.data });\n }), c;\n }, B.vvcDecoderConfigToNalu = function(y) {\n var c = [];\n return y.vpsList.forEach(function(h) {\n h && c.push({ type: lt.a.VVC_NAL_UNIT_VPS, data: h.data });\n }), y.spsList.forEach(function(h) {\n h && c.push({ type: lt.a.VVC_NAL_UNIT_SPS, data: h.data });\n }), y.ppsList.forEach(function(h) {\n h && c.push({ type: lt.a.VVC_NAL_UNIT_PPS, data: h.data });\n }), c;\n }, B.avcDecoderConfigToNalu = function(y) {\n var c = [];\n return y.spsList.forEach(function(h) {\n h && c.push({ type: J.H264_NAL_SPS, data: h.data });\n }), y.ppsList.forEach(function(h) {\n h && c.push({ type: J.H264_NAL_PPS, data: h.data });\n }), c;\n }, B.vvcDecoderConfigToSample = function(y, c) {\n return { units: B.vvcDecoderConfigToNalu(y), dts: 0, cts: 0, pts: 0, originDTS: c, key: !1 };\n }, B.getDPB264 = function(y) {\n return y.sps ? Math.min(Math.max(y.sps.ref_frame_count, 2), 16) : 16;\n }, B.getDPBHEVC = function(y) {\n if (!y.sps)\n return 16;\n var c = y.sps.temporal_layer.reduce(function(h, T) {\n return Math.max(T.max_dec_pic_buffering, h);\n }, 2);\n return Math.min(c, 16);\n }, B.getDPBLenAV1 = function(y) {\n return 8;\n }, B;\n }(), bt = function() {\n function B() {\n }\n return B.updateAV1Track = function(y, c, h) {\n c && (y.codedWidth = c.width, y.codedHeight = c.height, y.codec = c.codec, y.profile = c.profile_string, y.level = c.level_string, y.chromaFormat = c.chroma_format_string, y.bitDepth = c.bit_depth_luma, y.colorInfo = c.color_info, y.dpb = gt.getDPBLenAV1(c), y.decConf = h || gt.generateAV1C(c));\n }, B.onAV1Detected = function(y, c, h) {\n return l.b.i(\"video-track-helper\", \"detected av1: \" + h.av1), h.av1 ? (y.outputRaw = !h.av1, y.active = !0) : (l.b.i(\"video-track-helper\", \"AV1 found, disabled.\"), y.active = !1), y.active;\n }, B.updateAVCTrack = function(y, c, h) {\n if (c.sps) {\n var T = c.sps;\n y.codedWidth = T.codec_size.width, y.codedHeight = T.codec_size.height, y.sar = U()({}, T.sar), T.frame_rate.fixed && T.frame_rate.fps !== 0 && (y.fps = T.frame_rate.fps, y.sampleDuration = y.inputTimescale / y.fps), y.codec = T.codec, y.profile = T.profile_string, y.level = T.level_string, y.chromaFormat = T.chroma_format_string, y.bitDepth = T.bit_depth_luma, y.colorInfo = T.color_info, y.dpb = gt.getDPB264(c), y.fps && (y.sampleDuration = Math.floor(y.timescale / y.fps)), y.decConf = h || gt.generateAVCC(c);\n }\n }, B.updateHEVCTrack = function(y, c, h) {\n if (c.sps) {\n var T = c.sps, O = c.vps;\n y.codedWidth = T.width, y.codedHeight = T.height, y.sar = U()({}, T.sar), y.codec = T.codec, y.profile = T.profile_string || (O == null ? void 0 : O.ptl.general_ptl.profile_string) || \"\", y.level = T.level_string || (O == null ? void 0 : O.ptl.general_ptl.level_string) || \"\", y.chromaFormat = T.chroma_format_string, y.bitDepth = T.bit_depth_luma, y.fps = T.fps || (O == null ? void 0 : O.fps) || 0, y.colorInfo = T.color_info, y.dpb = gt.getDPBHEVC(c), y.decConf = h || gt.generateHVCC(c);\n }\n }, B.updateVVCTrack = function(y, c, h) {\n if (c.sps) {\n var T = c.sps;\n c.vps, y.codedWidth = T.width, y.codedHeight = T.height, y.codec = T.codec, y.profile = T.profile_string || \"\", y.level = T.level_string || \"\", y.chromaFormat = T.chroma_format_string, y.bitDepth = T.bitdepth, y.fps = T.fps || 0, y.colorInfo = T.color_info, y.decConf = h;\n }\n }, B.onHEVCDetected = function(y, c, h) {\n return l.b.i(\"video-track-helper\", \"detected hevc: \" + h.hevc + \" wasm: \" + c.wasmDecoderEnabled), c.wasmDecoderEnabled || h.hevc ? (y.outputRaw = !h.hevc || c.preferDecoder === W.c.wasm, y.active = !0) : (l.b.i(\"video-track-helper\", \"HEVC found, disabled. wasmDec:\" + c.wasmDecoderEnabled), y.active = !1), y.active;\n }, B.onKVCDetected = function(y, c, h) {\n return l.b.i(\"video-track-helper\", \"detected kvc wasm: \" + c.wasmDecoderEnabled), y.active = c.wasmDecoderEnabled, y.outputRaw = y.active, y.active || l.b.i(\"video-track-helper\", \"KVC found, disabled. wasmDec:\" + c.wasmDecoderEnabled), y.active;\n }, B.onVVCDetected = function(y, c, h) {\n return l.b.i(\"video-track-helper\", \"detected vvc wasm: \" + c.wasmDecoderEnabled), y.active = c.wasmDecoderEnabled, y.outputRaw = y.active, y.active || l.b.i(\"video-track-helper\", \"VVC found, disabled. wasmDec:\" + c.wasmDecoderEnabled), y.active;\n }, B;\n }(), Wt = function() {\n function B(c, h, T, O) {\n var M = this;\n this._evt = void 0, this._remuxer = void 0, this._config = void 0, this._duration = 1 / 0, this._naluLengthSize = 4, this._videoTrack = void 0, this._audioTrack = void 0, this._slientAudio = void 0, this._remuxStat = void 0, this._firstRemux = !0, this._aLastDTS = void 0, this._vLastDTS = void 0, this._typeSupported = void 0, this._transmuxData = void 0, this._tagDump = void 0, this._gopRemux = !1, this._timeException = [], this._firstVideoTag = !1, this._av1Ctx = void 0, this._onError = function($) {\n M._evt.emit(o.a.ERROR, $);\n }, this._evt = c, this._remuxer = h, this._config = T, this._typeSupported = O, this._gopRemux = !!this._config.gopRemux, this._videoTrack = Object(me.b)(1 / 0, R.f), this._audioTrack = Object(me.a)(1 / 0, R.f), this._tagDump = new Xe(this._evt);\n }\n B.probe = function(c) {\n return c.byteLength >= 3 && c[0] === 70 && c[1] === 76 && c[2] === 86;\n };\n var y = B.prototype;\n return y.append = function(c, h, T, O, M) {\n var $ = this;\n if (M === void 0 && (M = !1), !c.byteLength && M)\n return this._gopRemux ? this._onKeyFrame() : this._remux(M), this._tagDump.reset(), void this._evt.emit(o.a.PARSED_DATA, { extra: this._transmuxData });\n var X = this._tagDump.append(c), de = this._tagDump.trackInfo;\n this._videoTrack.active === void 0 && de && (this._videoTrack.active = de.hasVideo, this._audioTrack.active = de.hasAudio, this._videoTrack.active || (this._gopRemux = !1));\n var be = X.tags;\n this._remuxStat || (this._remuxStat = { timeOffset: h, contiguous: T, accurateTimeOffset: O }), be.length && (be.forEach(function(Q) {\n Q.tagType === Pe.j.VIDEO && $._videoTrack.active && ($._firstVideoTag || ($._audioTrack.samples.length && $._discontinuity(), $._firstVideoTag = !0), $._parseVideoData(Q)), Q.tagType === Pe.j.AUDIO && $._audioTrack.active && $._parseAudioData(Q), Q.tagType === Pe.j.SCRIPT && $._parseScriptTag(Q);\n }), this._gopRemux || this._remux(!(!M || !this._videoTrack.samples.length && !this._audioTrack.samples.length)), M && ((this._videoTrack.samples.length || this._audioTrack.samples.length) && this._remux(!0), this._tagDump.reset(), this._evt.emit(o.a.PARSED_DATA, { extra: this._transmuxData })));\n }, y.destroy = function() {\n l.b.i(\"flv-demuxer\", \"destroy\");\n }, y.flush = function() {\n l.b.i(\"flv-demuxer\", \"flush\"), this._remux(!0), this._remuxStat = void 0;\n }, y.resetInitSegment = function(c) {\n l.b.i(\"flv-demuxer\", \"reset init\", c), this._transmuxData = c, this._firstRemux = !0, this._videoTrack.samples = [], this._audioTrack.samples = [], this._aLastDTS = this._vLastDTS = void 0, this._remuxStat = void 0, this._duration = c.duration, this._timeException = [], typeof c.hasAudio == \"boolean\" && typeof c.hasVideo == \"boolean\" && (l.b.i(\"flv-demuxer\", \"reset init audio: \" + c.hasAudio + \" video: \" + c.hasVideo), this._audioTrack.active = c.hasAudio, this._videoTrack.active = c.hasVideo, this._videoTrack.active || (this._gopRemux = !1)), this._gopRemux = !!this._config.gopRemux, this._tagDump.reset(), this._slientAudio && this._slientAudio.reset();\n }, y.resetTimeStamp = function() {\n }, y.updateConfig = function(c) {\n U()(this._config, c);\n }, y._discontinuity = function() {\n l.b.i(\"flv-demuxer\", \"discontinuity\"), this._remux(!0), this._remuxer.ISGenerated && this._transmuxData && this._remuxer.resetInitSegment(this._transmuxData), this._slientAudio && this._slientAudio.reset();\n }, y._getTimeException = function(c, h, T) {\n var O = T < h || T - h >= R.k;\n return O && l.b.i(\"flv-demuxer\", \"time exception. \" + c + \" last: \" + h + \" current:\" + T + \" offset: \" + (T - h) / R.f + \"s\"), O ? T - h : 0;\n }, y._checkTimestamp = function(c, h, T) {\n var O = this._getTimeException(c, h, T);\n if (O) {\n if (l.b.i(\"flv-demuxer\", \"time exception. waiting next key frame.\"), this._gopRemux = !0, !this._timeException.length && this._videoTrack.active && typeof this._vLastDTS == \"number\" || this._audioTrack.active && typeof this._aLastDTS == \"number\") {\n if (this._timeException.length && (this._timeException[0].diff < 0 || this._timeException[0].diff / R.f > 30))\n return this._fixTime(), void l.b.i(\"flv-demuxer\", \"time exception. fix. \" + c);\n this._audioOnlyStart() ? l.b.i(\"flv-demuxer\", \"time exception. audio only\") : (l.b.i(\"flv-demuxer\", \"time exception. remux. \" + c), this._remux(!0));\n }\n this._timeException.push({ type: c, diff: O });\n }\n }, y._onKeyFrame = function() {\n this._gopRemux && (l.b.v(\"flv-demuxer\", \"key frame\"), this._timeException.length && (this._videoTrack.active && this._videoTrack.samples.length || this._audioOnlyStart()) ? (l.b.i(\"flv-demuxer\", \"time exception. fix on key frame.\"), this._fixTime()) : this._remux(!0));\n }, y._fixTime = function() {\n (this._timeException.length > 1 || this._audioOnlyStart()) && (this._resetTrackSamples(this._videoTrack), this._resetTrackSamples(this._audioTrack)), this._remuxer.flush();\n var c = this._remuxer.getLastDTS(), h = Math.max(c.video || 0, c.audio || 0);\n l.b.i(\"flv-demuxer\", \"fix offset\", h, c), this._remuxStat = { accurateTimeOffset: !0, contiguous: !this._firstRemux, timeOffset: h }, this._transmuxData && this._remuxer.resetInitSegment(this._transmuxData), this._remuxer.resetTimeStamp(), this._audioTrack.samples.length && (this._aLastDTS = this._audioTrack.samples[this._audioTrack.samples.length - 1].dts), this._videoTrack.samples.length && (this._vLastDTS = this._videoTrack.samples[this._videoTrack.samples.length - 1].dts), this._remux(!0), this._timeException = [], this._gopRemux = !!this._config.gopRemux;\n }, y._resetTrackSamples = function(c) {\n var h = c.samples;\n if (h.length > 1) {\n var T = c.sampleDuration || 1, O = h[h.length - 1];\n l.b.i(\"flv-demuxer\", \"reset \" + c.type + \" track samples time. sampleDuration:\" + T + \" dts:\" + O.dts);\n for (var M = h.length - 2; M >= 0; M--) {\n var $ = h[M].pts - h[M].dts;\n h[M].dts = O.dts - T, h[M].pts = h[M].dts + $, O = h[M];\n }\n }\n }, y._parseScriptTag = function(c) {\n if (c.body) {\n var h = Se.parseMetadata(c.body.buffer);\n if (h.hasOwnProperty(\"onMetaData\")) {\n var T = h.onMetaData;\n if (typeof T.duration == \"number\" && (this._duration = this._duration || T.duration), typeof T.framerate == \"number\" && T.framerate > 0 && (this._videoTrack.fps = this._videoTrack.fps || T.framerate, this._videoTrack.sampleDuration = Math.floor(R.f / this._videoTrack.fps)), typeof T.videodatarate == \"number\" && (this._videoTrack.bitrate = T.videodatarate), typeof T.audiodatarate == \"number\" && (this._audioTrack.bitrate = T.audiodatarate), T.keyframes && T.keyframes.filepositions && Array.isArray(T.keyframes.filepositions) && T.keyframes.times && Array.isArray(T.keyframes.times) && T.keyframes.filepositions.length === T.keyframes.times.length) {\n var O = [];\n T.keyframes.times.forEach(function(M, $) {\n O.push({ time: M, position: T.keyframes.filepositions[$] });\n }), T.keyframes = O;\n }\n l.b.i(\"flv-demuxer\", \"Parsed onMetaData\"), this._evt.emit(o.a.METADATA, T);\n }\n }\n }, y._parseVideoData = function(c) {\n if (c.body) {\n var h = c.body[0], T = h >> 4 & 8;\n c.frameType = h >> 4 & 7, T ? (this._videoTrack.enhancedFlv = !0, this._parseVideoTagEx(c)) : this._parseVideoTagNormal(c);\n }\n }, y._parseVideoTagEx = function(c) {\n if (c.body) {\n var h = 15 & c.body[0], T = Object(q.a)(c.body, 1, 4), O = 5;\n if (T === \"hvc1\")\n c.codecId = 12, h === Pe.d ? this._parseVideoTagCodecConf(c, O) : h !== Pe.a && h !== Pe.b || (h === Pe.a && (c.cts = Object(q.c)(c.body, O), O += 3), this._parseVideoTagCodedFrames(c, O));\n else {\n if (T !== \"av01\")\n return void this._onError({ type: r.b.MUX_ERROR, details: r.a.PARSING_ERROR, fatal: !0, reason: \"Flv: Unsupported codec in video frame enhanced: \" + T });\n c.codecId = 13, h === Pe.d ? this._parseVideoTagCodecConf(c, O) : h === Pe.c || h === Pe.a && this._parseVideoTagCodedFrames(c, O);\n }\n }\n }, y._parseVideoTagNormal = function(c) {\n if (c.body) {\n var h = Pe.h;\n if (c.codecId = 15 & c.body[0], c.codecId === 7 || c.codecId === 12 || c.codecId === 13) {\n var T = c.body[1];\n if (c.cts = T === 1 ? Object(q.c)(c.body, 2) : 0, T === 0)\n this._parseVideoTagCodecConf(c, h);\n else if (T === 1)\n this._parseVideoTagCodedFrames(c, h);\n else if (T !== 2)\n return void this._onError({ type: r.b.MUX_ERROR, details: r.a.PARSING_ERROR, fatal: !0, reason: \"Flv: Invalid video packet type \" + T });\n } else\n this._onError({ type: r.b.MUX_ERROR, details: r.a.PARSING_ERROR, fatal: !0, reason: \"Flv: Unsupported codec in video frame: \" + c.codecId });\n }\n }, y._parseVideoTagCodecConf = function(c, h) {\n c.codecId === 7 ? (this._videoTrack.outputRaw && (this._discontinuity(), this._videoTrack.outputRaw = !1), this._parseAVCDecoderConfigurationRecord(c, h)) : c.codecId === 12 ? (bt.onHEVCDetected(this._videoTrack, this._config, this._typeSupported), this._parseHEVCDecoderConfigurationRecord(c, h)) : c.codecId === 13 && (bt.onAV1Detected(this._videoTrack, this._config, this._typeSupported), this._parseAV1DecoderConfigurationRecord(c, h)), this._videoTrack.duration = this._duration * R.f;\n }, y._parseVideoTagCodedFrames = function(c, h) {\n if (this._videoTrack.codec) {\n var T = this._parseAVCVideoData(c, h) || {};\n T != null && T.abst && this._evt.emit(o.a.PRIV_NAL, { info: T, abst: T.abst / R.f, originDTS: c.timestamp / R.f });\n }\n }, y._parseHEVCDecoderConfigurationRecord = function(c, h) {\n if (c.body) {\n var T = this._videoTrack, O = c.body.subarray(h, c.body.byteLength), M = gt.parseHVCC(O);\n if (M && M.paramSets.spsList.length) {\n var $;\n if (T.decConf && !Object(q.b)(T.decConf, O) && this._discontinuity(), T.codecType !== W.b.hevc && (T.codecType = W.b.hevc, this._evt.emit(o.a.VIDEO_CODEC_DETECTED, { codecType: W.b.hevc, enabled: !!T.active, decoder: this._videoTrack.outputRaw ? W.c.wasm : W.c.buildin, bitDepth: T.bitDepth, timeOffset: (($ = this._remuxStat) == null ? void 0 : $.timeOffset) || 0 })), bt.updateHEVCTrack(T, M.paramSets), this._videoTrack.outputRaw) {\n var X = gt.hevDecoderConfigToSample(M.paramSets, c.timestamp);\n this._evt.emit(o.a.RAW_DATA, { type: d.c.decoderConfig, samples: z([X], T.inputTimescale), extra: this._transmuxData });\n }\n } else\n this._onError({ type: r.b.MUX_ERROR, details: r.a.PARSING_ERROR, fatal: !0, reason: \"Invalid HEVCDecoderConfigurationRecord\" });\n }\n }, y._parseAV1DecoderConfigurationRecord = function(c, h) {\n if (c.body) {\n var T = this._videoTrack, O = c.body.subarray(h, c.body.byteLength);\n this._av1Ctx = K.createCtx();\n var M = gt.parseAV1C(O, this._av1Ctx);\n if (M) {\n var $;\n T.decConf && !Object(q.b)(T.decConf, O) && this._discontinuity(), T.codecType !== W.b.av1 && (T.codecType = W.b.av1, this._evt.emit(o.a.VIDEO_CODEC_DETECTED, { enabled: !0, decoder: W.c.buildin, codecType: W.b.av1, timeOffset: (($ = this._remuxStat) == null ? void 0 : $.timeOffset) || 0 })), M.sh && bt.updateAV1Track(T, M.sh, O);\n } else\n this._onError({ type: r.b.MUX_ERROR, details: r.a.PARSING_ERROR, fatal: !0, reason: \"Invalid AV1DecoderConfigurationRecord\" });\n }\n }, y._parseAVCDecoderConfigurationRecord = function(c, h) {\n if (c.body) {\n var T = c.body.subarray(h, c.body.byteLength), O = this._videoTrack, M = gt.parseAVCC(c.body.subarray(h, c.body.byteLength));\n if (M && M.paramSets.spsList.length) {\n var $;\n O.decConf && !Object(q.b)(O.decConf, T) && this._discontinuity(), O.codecType !== W.b.h264 && (O.codecType = W.b.h264, this._evt.emit(o.a.VIDEO_CODEC_DETECTED, { enabled: !0, decoder: W.c.buildin, codecType: W.b.h264, timeOffset: (($ = this._remuxStat) == null ? void 0 : $.timeOffset) || 0 })), bt.updateAVCTrack(O, M.paramSets, T);\n } else\n this._onError({ type: r.b.MUX_ERROR, details: r.a.PARSING_ERROR, fatal: !0, reason: \"Invalid AVCDecoderConfigurationRecord\" });\n }\n }, y._parseAVCVideoData = function(c, h) {\n if (c.body) {\n var T, O = this._videoTrack, M = c.body.buffer, $ = c.body.byteLength - h, X = new DataView(M, h, $), de = [], be = 0, Q = this._naluLengthSize, ae = c.timestamp, pe = c.cts;\n ae === this._vLastDTS && (pe += 1);\n var Le = ae + pe, Ue = c.frameType === 1;\n if (Ue && this._onKeyFrame(), typeof this._vLastDTS == \"number\" && this._checkTimestamp(W.l.VIDEO, this._vLastDTS, ae), c.codecId === 13)\n this._av1Ctx || (this._av1Ctx = K.createCtx()), K.parseOBU(c.body.subarray(h), this._av1Ctx).forEach(function(it) {\n it.obu_type !== D.AV1_OBU_SEQUENCE_HEADER || O.decConf || bt.updateAV1Track(O, it.content), de.push({ type: 0, data: it.data });\n });\n else\n for (; be < $; ) {\n if (be + 4 >= $) {\n l.b.v(\"flv-demuxer\", \"Malformed Nalu near timestamp \" + ae + \", offset = \" + be + \", dataSize = \" + $);\n break;\n }\n var He = X.getUint32(be);\n if (Q === 3 && (He >>>= 8), He > $ - Q)\n return void l.b.v(\"flv-demuxer\", \"Malformed Nalus near timestamp \" + ae + \", NaluSize > DataSize!\");\n var Ge = new Uint8Array(M, h + be + 4, Q + He - 4), Qe = 0, ot = void 0;\n if (c.codecId === 7)\n if ((Qe = 31 & X.getUint8(be + Q)) === J.H264_NAL_IDR_SLICE)\n Ue = !0;\n else if (Qe === J.PRIV_NAL_MAGIC_H264) {\n try {\n T = fe.parse(Ge, !0);\n } catch (it) {\n l.b.w(\"flv-demuxer\", \"PrivNal parse error \" + it);\n }\n l.b.i(\"flv-demuxer\", \"priv nal\", T);\n } else\n Qe === J.H264_NAL_SEI && (ot = Y.parse(Ge.subarray(1), W.b.h264));\n else if (c.codecId === 12)\n if ((Qe = (126 & X.getUint8(be + Q)) >> 1) === Oe.a.HEVC_NAL_IDR_W_RADL || Qe === Oe.a.HEVC_NAL_IDR_N_LP || Qe === Oe.a.HEVC_NAL_CRA_NUT)\n Ue = !0;\n else if (Qe === Oe.a.PRIV_NAL_MAGIC_HEVC)\n try {\n T = fe.parse(Ge, !1);\n } catch (it) {\n l.b.w(\"flv-demuxer\", \"PrivNal parse error \" + it);\n }\n else\n Qe !== Oe.a.HEVC_NAL_SEI_PREFIX && Qe !== Oe.a.HEVC_NAL_SEI_SUFFIX || (ot = Y.parse(Ge.subarray(2), W.b.hevc));\n var nt = { type: Qe, data: Ge };\n de.push(nt), Ge.byteLength, be += Q + He, ot && ot.length && this._evt.emit(o.a.SEI, { sei: ot });\n }\n if (de.length) {\n var ut = { units: de, dts: ae, cts: pe, pts: Le, originDTS: c.timestamp, key: Ue, parseTime: performance ? performance.now() / 1e3 : 0 };\n ut.key && this._evt.emit(o.a.KEY_FRAME, { pts: Le / R.f, cts: pe / R.f }), O.samples.push(ut);\n }\n return this._vLastDTS = ae, T;\n }\n }, y._parseAudioData = function(c) {\n if (c.body)\n if (c.body.byteLength <= 1)\n l.b.v(\"flv-demuxer\", \"Flv: Invalid audio packet, missing SoundData payload!\");\n else {\n var h = this._audioTrack, T = c.body[0] >> 4;\n if (T === 10)\n h.codecType = W.b.aac;\n else {\n if (T !== 2 && T !== 14)\n return l.b.w(\"flv-demuxer\", \"audio unsupported codec \" + T), void (h.active = !1);\n h.codecType = W.b.mp3;\n }\n if (h.codecType === W.b.aac) {\n var O = c.body[1];\n if (O === 0) {\n if (c.body.byteLength < 4)\n return;\n var M = c.body.subarray(2, 4);\n return void this._parseASC(M);\n }\n if (O !== 1)\n return void l.b.v(\"flv-demuxer\", \"Flv: Unsupported AAC data type \" + O);\n if (!h.configParsed) {\n var $, X, de = [5500, 11025, 22050, 44100][c.body[0] >> 2 & 3];\n if (de < 11025)\n return;\n var be = 1 + (1 & c.body[0]);\n l.b.i(\"flv-demuxer\", \"missing AACPacketType 0. generate samplerate:\" + de + \" channel:\" + be + \" codec:\" + (($ = this._transmuxData) == null ? void 0 : $.audioCodec));\n var Q = ve.b(de, be, (X = this._transmuxData) == null ? void 0 : X.audioCodec);\n if (!Q)\n return void l.b.v(\"flv-demuxer\", \"generate ASC fail.\");\n this._parseASC(Q);\n }\n }\n h.duration = this._duration * R.f;\n var ae, pe = h.codecType === W.b.aac ? 2 : 1, Le = c.timestamp;\n if (h.sampleDuration && this._videoTrack.active && typeof this._aLastDTS == \"number\" && this._checkTimestamp(W.l.AUDIO, this._aLastDTS, c.timestamp), h.codecType === W.b.aac)\n ae = { unit: c.body.subarray(2), dts: Le, pts: Le, originDTS: Le, parseTime: self.performance ? performance.now() / 1e3 : 0 }, h.samples.push(ae);\n else if (h.codecType === W.b.mp3) {\n var Ue;\n ae = (Ue = H(h, c.body, pe, Le, 0)) == null ? void 0 : Ue.sample;\n }\n this._aLastDTS = Le;\n }\n }, y._parseASC = function(c) {\n var h, T = this._audioTrack;\n (ve.g(T, c) || !T.configParsed) && T.codec && T.samples.length && this._discontinuity(), ve.d(T, this._evt, c, d.a.ASC, (h = this._transmuxData) == null ? void 0 : h.audioCodec);\n }, y._remux = function(c) {\n c === void 0 && (c = !1);\n var h = this._audioTrack, T = this._videoTrack;\n if (T.outputRaw && !h.active) {\n var O;\n this._slientAudio || (Ae.a.initAudioForFillSilent(h, (O = this._transmuxData) == null ? void 0 : O.audioCodec), this._slientAudio = new le.a()), this._slientAudio.update(h, T);\n }\n if (h.samples.length !== 0 || T.samples.length !== 0)\n if (c || !(h.active && h.samples.length === 0 || T.active && T.samples.length < 3)) {\n var M = !0, $ = 0, X = !1;\n this._remuxStat && (M = this._remuxStat.contiguous, $ = this._remuxStat.timeOffset, X = this._remuxStat.accurateTimeOffset), this._firstRemux && (this._firstRemux = !1, this._evt.emit(o.a.MEDIA_DEMUX, { type: d.b.FLV }));\n try {\n this._remuxer.remux(h, T, $, M, X, c), this._remuxStat = void 0;\n } catch (ae) {\n l.b.e(\"flv-demuxer\", ae), this._onError({ type: r.b.MUX_ERROR, details: r.a.REMUX_ERROR, fatal: !0, reason: ae.message });\n }\n } else {\n var de = h.active && h.configParsed && this._getAudioTrackDuration(h) || 0, be = T.active && T.decConf && this._getVideoTrackDuration(T) || 0, Q = T.samples.reduce(function(ae, pe) {\n return ae + (pe.key ? 1 : 0);\n }, 0);\n de > 30 ? (l.b.i(\"flv-demuxer\", \"audio remux sec > 30, remux now.\"), this._remux(!0)) : (be > 30 || this._config.isLive && Q > 1) && (l.b.i(\"flv-demuxer\", \"video remux sec: \" + be + \" key: \" + Q + \", remux now.\"), this._remux(!0));\n }\n else\n c && this._remuxer.flush();\n }, y._getAudioTrackDuration = function(c) {\n return c.samples.length ? c.samples.length && ve.c(c.samplerate, 1) * c.samples.length : 0;\n }, y._getVideoTrackDuration = function(c) {\n return c.samples.length ? this._timeException.reduce(function(h, T) {\n return h || T.type === W.l.VIDEO;\n }, !1) ? c.samples.length * (c.sampleDuration || R.f / R.c) / c.inputTimescale : (c.samples[c.samples.length - 1].dts - c.samples[0].dts) / c.inputTimescale : 0;\n }, y._audioOnlyStart = function() {\n var c;\n return !(!this._config.isLive && this._config.isLive !== void 0 || !this._firstRemux || (c = this._remuxStat) != null && c.contiguous || !this._videoTrack.active || this._videoTrack.samples.length || !(this._audioTrack.samples.length > 0));\n }, S()(B, null, [{ key: \"probeSize\", get: function() {\n return 188;\n } }]), B;\n }(), Yi = i(34), Fi = function() {\n function B(c, h, T, O) {\n var M = this;\n this._evt = void 0, this._remuxer = void 0, this._config = void 0, this._typeSupported = void 0, this._cache = void 0, this._videoTrack = void 0, this._audioTrack = void 0, this._parseLen = 0, this._parseFunc = void 0, this._pts = 0, this._firstRemux = !0, this._remuxStat = void 0, this._vFrameIdx = 0, this._av1Ctx = void 0, this._onError = function($) {\n M._evt.emit(o.a.ERROR, $);\n }, this._evt = c, this._remuxer = h, this._config = T, this._typeSupported = O, this._cache = new m.a(), this._parseFunc = this._parseStart, this._parseLen = 8;\n }\n B.probe = function(c) {\n return c.length > 4 && c[0] === 68 && c[1] === 75 && c[2] === 73 && c[3] === 70;\n };\n var y = B.prototype;\n return y.resetInitSegment = function(c, h) {\n this._initTrack(c.duration), this._pts = 0, this._firstRemux = !0, this._remuxStat = void 0, this._parseFunc = this._parseStart, this._parseLen = 8, this._cache.clear();\n }, y.resetTimeStamp = function(c) {\n }, y.append = function(c, h, T, O, M) {\n for (this._remuxStat || (this._remuxStat = { timeOffset: h, contiguous: T, accurateTimeOffset: O }), this._cache.put(c); this._cache.unreadLen >= this._parseLen; )\n this._parseFunc();\n this._remux(M);\n }, y.flush = function() {\n this._remux(!0), this._remuxStat = void 0;\n }, y.destroy = function() {\n this._cache.clear();\n }, y.updateConfig = function(c) {\n U()(this._config, c);\n }, y._initTrack = function(c) {\n this._videoTrack = Object(me.b)(c), this._videoTrack.active = !0, this._audioTrack = Object(me.a)(c), this._audioTrack.active = !1;\n }, y._parseStart = function() {\n if (!(this._cache.unreadLen < 8)) {\n var c = this._cache.get(8);\n if (c)\n if (B.probe(c)) {\n var h = Object(q.e)(c, 6, !0);\n this._parseLen = h - 8, this._parseFunc = this._parseHead;\n } else\n this._onError({ type: r.b.MUX_ERROR, details: r.a.REMUX_ERROR, fatal: !0, reason: \"ivf start code error\" });\n }\n }, y._parseHead = function() {\n if (!(this._cache.unreadLen < this._parseLen)) {\n var c = this._cache.get(this._parseLen), h = this._videoTrack;\n if (c && h) {\n var T = Object(q.a)(c, 0, 4);\n if (T === \"AV01\") {\n h.codecType = W.b.av1, h.codedWidth = Object(q.e)(c, 4, !0), h.codedHeight = Object(q.e)(c, 6, !0);\n var O = Object(q.g)(c, 8, !0), M = Object(q.g)(c, 12, !0), $ = Object(q.g)(c, 16, !0);\n h.inputTimescale = O / M, h.duration = $, l.b.i(\"ivf-demuxer\", \"head. w: \" + h.codedWidth + \", h:\" + h.codedHeight + \", den:\" + O + \", num:\" + M + \", duration:\" + h.duration), O && M || this._onError({ type: r.b.MUX_ERROR, details: r.a.REMUX_ERROR, fatal: !0, reason: \"ivf head den: \" + O + \", num: \" + M });\n var X = { duration: h.duration / h.inputTimescale, keyframes: [{ time: 0, position: this._parseLen }] };\n this._evt.emit(o.a.METADATA, X), this._parseFunc = this._parseFrameHead, this._parseLen = 12;\n } else\n this._onError({ type: r.b.MUX_ERROR, details: r.a.UNSUPPORTED, fatal: !0, reason: \"ivf \" + T + \" unsupported\" });\n }\n }\n }, y._parseFrameHead = function() {\n if (!(this._cache.unreadLen < this._parseLen)) {\n var c = this._cache.get(this._parseLen);\n if (c) {\n var h = Object(q.g)(c, 0, !0);\n this._pts = Object(q.h)(c, 4, !0), this._parseFunc = this._parseFrame, this._parseLen = h;\n }\n }\n }, y._parseFrame = function() {\n var c = this;\n if (!(this._cache.unreadLen < this._parseLen)) {\n var h = this._cache.get(this._parseLen), T = this._videoTrack;\n if (h && T) {\n var O = [], M = !1;\n if (this._av1Ctx || (this._av1Ctx = K.createCtx()), K.parseOBU(h, this._av1Ctx).forEach(function(X) {\n var de;\n X.obu_type === D.AV1_OBU_SEQUENCE_HEADER && c._av1Ctx && c._av1Ctx.sh && (bt.onAV1Detected(T, c._config, c._typeSupported), bt.updateAV1Track(T, c._av1Ctx.sh)), M = M || !((de = X.content) == null || !de.keyframe), O.push({ type: 0, data: X.data });\n }), O.length) {\n var $ = { units: O, dts: this._pts, cts: 0, pts: this._pts, originDTS: this._pts, key: M };\n $.key && this._evt.emit(o.a.KEY_FRAME), T.samples.push($);\n }\n this._parseFunc = this._parseFrameHead, this._parseLen = 12;\n }\n }\n }, y._remux = function(c) {\n c === void 0 && (c = !1);\n var h = this._audioTrack, T = this._videoTrack;\n if (T && h)\n if (h.samples.length !== 0 || T.samples.length !== 0) {\n if (c || !(h.active && h.samples.length === 0 || T.active && T.samples.length < 3)) {\n this._firstRemux && (this._evt.emit(o.a.KEY_FRAME_INDEXS, { keyframes: [{ time: 0, position: 0 }] }), this._firstRemux = !1, this._evt.emit(o.a.MEDIA_DEMUX, { type: d.b.IVF }));\n var O = Object(Yi.a)(T, this._vFrameIdx);\n this._vFrameIdx += O.length, this._evt.emit(o.a.VIDEO_FRAME_INFO, { videoFramesInfo: O });\n var M = !0, $ = 0, X = !1;\n this._remuxStat && (M = this._remuxStat.contiguous, $ = this._remuxStat.timeOffset, X = this._remuxStat.accurateTimeOffset);\n try {\n this._remuxer.remux(h, T, $, M, X, c), this._remuxStat = void 0;\n } catch (de) {\n l.b.e(\"ivf-demuxer\", de), this._onError({ type: r.b.MUX_ERROR, details: r.a.REMUX_ERROR, fatal: !0, reason: de.message });\n }\n }\n } else\n c && this._remuxer.flush();\n }, S()(B, null, [{ key: \"probeSize\", get: function() {\n return 8;\n } }]), B;\n }(), Cr = i(10), Vr = i(41), or = i(26), gr = function() {\n function B() {\n }\n return B.parseOneDescriptor = function(y) {\n var c, h, T = 0;\n for (c = y.data[y.pos], h = y.data[y.pos + 1], y.pos += 2; 128 & h; )\n T = (127 & h) << 7, h = y.data[y.pos], y.pos++;\n T += 127 & h;\n var O = y.data.subarray(y.pos, y.pos + T);\n return c === 3 ? B._parseESDesc(y) : c === 4 ? B._parseDecoderConfigDescriptor(y) : (y.pos += T, { tag: c, data: O });\n }, B.getAudioConfig = function(y) {\n if (y.tag === 5)\n return y.data;\n if (y.descs && y.descs.length)\n for (var c = 0; c < y.descs.length; c++) {\n var h = B.getAudioConfig(y.descs[c]);\n if (h)\n return h;\n }\n }, B.getObjectTypeIndication = function(y) {\n if (y.descs && y.descs.length) {\n for (var c = 0; c < y.descs.length; c++)\n if (y.descs[c].tag === 4)\n return y.descs[c].oti;\n }\n return -1;\n }, B._parseESDesc = function(y) {\n var c = Object(q.e)(y.data, y.pos);\n y.pos += 2;\n var h = y.data[y.pos];\n y.pos++;\n var T = 0;\n 128 & h && (T = Object(q.e)(y.data, y.pos), y.pos += 2);\n var O = \"\";\n if (64 & h) {\n var M = y.data[y.pos];\n O = Object(q.a)(y.data, y.pos + 1, M), y.pos += M + 1;\n }\n var $ = 0;\n 32 & h && ($ = Object(q.e)(y.data, y.pos), y.pos += 2);\n var X = { tag: 3, data: y.data, id: c, dependsOnESID: T, url: O, ocrESID: $ };\n return y.pos < y.data.byteLength && (X.descs = B._parseRemainingDescriptors(y)), X;\n }, B._parseDecoderConfigDescriptor = function(y) {\n var c = { tag: 4, data: y.data, oti: y.data[y.pos], streamType: y.data[y.pos + 1], bufferSize: Object(q.f)(y.data, y.pos + 2), maxBitrate: Object(q.g)(y.data, y.pos + 5), avgBitrate: Object(q.g)(y.data, y.pos + 9) };\n return y.pos += 13, y.data.byteLength > 13 && (c.descs = B._parseRemainingDescriptors(y)), c;\n }, B._parseRemainingDescriptors = function(y) {\n for (var c = []; y.pos < y.data.byteLength; ) {\n var h = B.parseOneDescriptor(y);\n c.push(h);\n }\n return c;\n }, B;\n }();\n function _r(B) {\n var y = -function(c) {\n var h = [];\n return h[0] = Fr(Oi(c[0]), Oi(c[3])), h[1] = Fr(Oi(c[1]), Oi(c[4])), h[0] == 0 || h[1] == 0 ? NaN : -180 * Math.atan2(Oi(c[1]) / h[1], Oi(c[0]) / h[0]) / Math.PI;\n }(B);\n return y -= 360 * Math.floor(y / 360 + 25e-4), (y %= 360) < 0 && (y += 360), y;\n }\n function Oi(B) {\n return B / 65536;\n }\n function Fr() {\n for (var B = 0, y = arguments.length, c = new Array(y), h = 0; h < y; h++)\n c[h] = arguments[h];\n for (var T = c.length, O = 0; O < T; O++) {\n if (c[O] === 1 / 0 || c[O] === -1 / 0)\n return 1 / 0;\n B += c[O] * c[O];\n }\n return Math.sqrt(B);\n }\n (function(B) {\n B[B.SIZE = 0] = \"SIZE\", B[B.NAME = 1] = \"NAME\", B[B.BIG_SIZE = 2] = \"BIG_SIZE\", B[B.DATA = 3] = \"DATA\";\n })(tt || (tt = {}));\n var Qt, Xi, Vt, Yt, Zi = function() {\n function B() {\n }\n return B.findBox = function(y, c) {\n var h, T, O, M, $ = [];\n if (!c.length)\n return $;\n for (var X = 0; 0 < y.byteLength; )\n h = Object(q.g)(y, 0), T = Object(q.a)(y.subarray(4, 8), 4), X = 8, h === 1 && (h = Object(q.h)(y, 8), X = 16), M = 0 + h, T === c[0] && (c.length === 1 ? $.push(y.subarray(0 + X, M)) : (O = B.findBox(y.subarray(0 + X, M), c.slice(1))).length && ($ = $.concat(O)));\n return $;\n }, B.readBoxes = function(y) {\n for (var c = 0, h = tt.SIZE, T = { size: 0, headSize: 8, name: \"\" }, O = []; c < y.byteLength; )\n switch (h) {\n case tt.SIZE:\n T.size = Object(q.g)(y, c), c += 4, h = tt.NAME;\n break;\n case tt.NAME:\n T.name = Object(q.a)(y, c, 4), c += 4, h = T.size === 1 ? tt.BIG_SIZE : tt.DATA;\n break;\n case tt.BIG_SIZE:\n T.size = Object(q.h)(y, c), T.headSize = 16, c += 8, h = tt.DATA;\n break;\n case tt.DATA:\n T.data = y.subarray(c, c + T.size - T.headSize), c += T.data.byteLength, h = tt.SIZE, O.push(T), T = { size: 0, headSize: 8, name: \"\" };\n }\n return O;\n }, B.readBox = function(y, c) {\n c === void 0 && (c = 0);\n for (var h = c, T = tt.SIZE, O = { size: 0, headSize: 8, name: \"\" }; h < y.byteLength && !O.data; )\n switch (T) {\n case tt.SIZE:\n O.size = Object(q.g)(y, h), h += 4, T = tt.NAME;\n break;\n case tt.NAME:\n O.name = Object(q.a)(y, h, 4), h += 4, T = O.size === 1 ? tt.BIG_SIZE : tt.DATA;\n break;\n case tt.BIG_SIZE:\n O.size = Object(q.h)(y, h), O.headSize = 16, h += 8, T = tt.DATA;\n break;\n case tt.DATA:\n if (!(y.byteLength - h >= O.size - O.headSize)) {\n h = y.byteLength;\n break;\n }\n O.data = y.subarray(h, h + O.size - O.headSize), h += O.data.byteLength, T = tt.SIZE;\n }\n if (O.size)\n return O;\n }, B.ftyp = function(y) {\n var c = y.data;\n if (c)\n return { major_brand: Object(q.a)(c, 0, 4), minor_version: Object(q.g)(c, 4), compatible_brands: Object(q.a)(c, 8, c.byteLength - 8) };\n }, B.moov = function(y) {\n var c = { trak: [], mvex: [], pssh: [] };\n return y.data && B.readBoxes(y.data).forEach(function(h) {\n h.data && (h.name === \"mvhd\" ? c.mvhd = B._mvhd(h.data) : h.name === \"trak\" ? c.trak.push(B._trak(h.data)) : h.name === \"mvex\" ? c.mvex.push(B._mvex(h.data)) : h.name === \"pssh\" && c.pssh.push(h));\n }), c;\n }, B.moof = function(y) {\n var c = {};\n return y.data && B.readBoxes(y.data).forEach(function(h) {\n if (h.data && h.name === \"traf\") {\n var T = B._traf(h.data);\n c.traf ? c.traf.push(T) : c.traf = [T];\n }\n }), c;\n }, B.esds = function(y) {\n if (y.data)\n return gr.parseOneDescriptor({ data: y.data, pos: 4 });\n }, B.sidx = function(y) {\n var c = y.data;\n if (c) {\n var h = { referenceID: 0, timescale: 0, earliestPresentationTime: 0, firstOffset: 0, referenceCount: 0, references: [] }, T = c[0], O = 4;\n h.referenceID = Object(q.d)(c, O), h.timescale = Object(q.g)(c, O + 4), O += 8, T === 0 ? (h.earliestPresentationTime = Object(q.g)(c, O), h.firstOffset = Object(q.g)(c, O + 4), O += 8) : (h.earliestPresentationTime = Object(q.h)(c, O), h.firstOffset = Object(q.h)(c, O + 8), O += 16), h.referenceCount = Object(q.e)(c, O + 2), O += 4;\n for (var M = 0; M < h.referenceCount; M++) {\n c[O];\n var $ = 2147483647 & Object(q.g)(c, O);\n O += 4;\n var X = Object(q.g)(c, O);\n O += 4, h.references.push({ size: $, duration: X / h.timescale }), O += 4;\n }\n return h;\n }\n }, B.btrt = function(y) {\n var c = y.data;\n if (c)\n return { bufferSizeDB: Object(q.g)(c, 0), maxBitrate: Object(q.g)(c, 4), avgBitrate: Object(q.g)(c, 8) };\n }, B.pasp = function(y) {\n var c = y.data;\n if (c)\n return { hSpacing: Object(q.g)(c, 0), vSpacing: Object(q.g)(c, 4) };\n }, B._traf = function(y) {\n var c = {};\n return B.readBoxes(y).forEach(function(h) {\n if (h.data)\n if (h.name === \"tfhd\")\n c.tfhd = B._tfhd(h.data);\n else if (h.name === \"tfdt\")\n c.tfdt = B._tfdt(h.data);\n else if (h.name === \"trun\") {\n var T = B._trun(h.data);\n c.trun ? c.trun.push(T) : c.trun = [T];\n } else\n h.name === \"saiz\" ? c.saiz = B._saiz(h.data) : h.name === \"saio\" ? c.saio = B._saio(h.data) : h.name === \"senc\" && (c.senc = B._senc(h.data));\n }), c;\n }, B._tfhd = function(y) {\n var c = { trackID: Object(q.g)(y, 4), baseDataOffset: 0, sampleDescriptionIndex: 0, defaultSampleDuration: 0, defaultSampleSize: 0, defaultSampleFlags: 0 }, h = Object(q.f)(y, 1), T = 8;\n return T < y.byteLength - 8 && 1 & h ? (c.baseDataOffset = Object(q.h)(y, T), T += 8) : c.baseDataOffset = 0, T < y.byteLength - 4 && 2 & h ? (c.sampleDescriptionIndex = Object(q.g)(y, T), T += 4) : c.sampleDescriptionIndex = 0, T < y.byteLength - 4 && 8 & h ? (c.defaultSampleDuration = Object(q.g)(y, T), T += 4) : c.defaultSampleDuration = 0, T < y.byteLength - 4 && 16 & h ? (c.defaultSampleSize = Object(q.g)(y, T), T += 4) : c.defaultSampleSize = 0, T < y.byteLength - 4 && 32 & h ? (c.defaultSampleFlags = Object(q.g)(y, T), T += 4) : c.defaultSampleFlags = 0, c;\n }, B._tfdt = function(y) {\n return { baseMediaDecodeTime: y[0] === 1 ? Object(q.h)(y, 4) : Object(q.g)(y, 4) };\n }, B._trun = function(y) {\n var c = y[0], h = Object(q.f)(y, 1), T = { sampleCount: 0, dataOffset: 0, firstSampleFlags: 0, sampleDuration: [], sampleSize: [], sampleFlags: [], sampleCompositionTimeOffset: [] }, O = 4;\n if (T.sampleCount = Object(q.g)(y, O), (O += 4) < y.byteLength - 4 && 1 & h ? (T.dataOffset = Object(q.d)(y, O), O += 4) : T.dataOffset = 0, O < y.byteLength - 4 && 4 & h ? (T.firstSampleFlags = Object(q.g)(y, O), O += 4) : T.firstSampleFlags = 0, O <= y.byteLength - 4)\n for (var M = 0; M < T.sampleCount; M++)\n 256 & h && (T.sampleDuration[M] = Object(q.g)(y, O), O += 4), 512 & h && (T.sampleSize[M] = Object(q.g)(y, O), O += 4), 1024 & h && (T.sampleFlags[M] = Object(q.g)(y, O), O += 4), 2048 & h && (T.sampleCompositionTimeOffset[M] = c === 0 ? Object(q.g)(y, O) : Object(q.d)(y, O), O += 4);\n return T;\n }, B._saiz = function(y) {\n var c = y[0], h = Object(q.f)(y, 1), T = { defaultSampleInfoSize: 0, sampleCount: 0, sampleInfoSize: [] };\n if (c === 0) {\n var O = 4;\n if (1 & h && (O += 8), T.defaultSampleInfoSize = y[O], T.sampleCount = Object(q.g)(y, O + 1), O += 5, T.defaultSampleInfoSize === 0)\n for (var M = 0; M < T.sampleCount; M++)\n T.sampleInfoSize[M] = y[O], O++;\n }\n return T;\n }, B._saio = function(y) {\n var c = y[0], h = { entryCount: 0, offset: [] }, T = 4;\n 1 & Object(q.f)(y, 1) && (T += 8), h.entryCount = Object(q.g)(y, T), T += 4;\n for (var O = 0; O < h.entryCount; O++)\n c === 0 ? (h.offset[O] = Object(q.g)(y, T), T += 4) : (h.offset[O] = Object(q.h)(y, T), T += 8);\n return h;\n }, B._senc = function(y, c) {\n c === void 0 && (c = 0), y[0];\n var h = { sampleCount: 0, useSubSampleEnc: !!(2 & Object(q.f)(y, 1)), encItemData: [] }, T = 4;\n return h.sampleCount = Object(q.g)(y, T), T += 4, c && (h.iv = y.subarray(T, 8 * c), T += c), h.encData = y.subarray(T), h;\n }, B._mvhd = function(y) {\n var c = y[0], h = 0, T = 0;\n return c === 1 ? (h = Object(q.g)(y, 20), T = Object(q.h)(y, 24)) : c === 0 && (h = Object(q.g)(y, 12), T = Object(q.g)(y, 16)), { timescale: h, duration: T };\n }, B._mvex = function(y) {\n var c = {};\n return B.readBoxes(y).forEach(function(h) {\n h.data && (h.name === \"mehd\" ? c.mehd = B._mehd(h.data) : h.name === \"trex\" && (c.trex = B._trex(h.data)));\n }), c;\n }, B._mehd = function(y) {\n return { fragmentDuration: y[0] === 1 ? Object(q.h)(y, 4) : Object(q.g)(y, 4) };\n }, B._trex = function(y) {\n return { trackID: Object(q.g)(y, 4), sampleDescriptionIndex: Object(q.g)(y, 8), defaultSampleDuration: Object(q.g)(y, 12), defaultSampleSize: Object(q.g)(y, 16), defaultSampleFlags: Object(q.g)(y, 20) };\n }, B._trak = function(y) {\n var c = {};\n return B.readBoxes(y).forEach(function(h) {\n h.data && (h.name === \"tkhd\" ? c.tkhd = B._tkhd(h.data) : h.name === \"tref\" ? c.tref = B._tref(h.data) : h.name === \"mdia\" && (c.mdia = B._mdia(h.data)));\n }), c;\n }, B._tkhd = function(y) {\n var c = 0, h = 0, T = 4;\n y[0] === 1 ? (c = Object(q.g)(y, T + 16), h = Object(q.h)(y, T + 24), T += 32) : (c = Object(q.g)(y, T + 8), h = Object(q.g)(y, T + 16), T += 20), T += 16;\n for (var O = [], M = 0; M < 9; M++)\n O.push(Object(q.d)(y, T)), T += 4;\n return { width: Object(q.g)(y, T) >> 16, height: Object(q.g)(y, T + 4) >> 16, trackId: c, duration: h, matrix: O };\n }, B._tref = function(y) {\n return { referenceType: Object(q.a)(y, 4, 4), trackId: Object(q.g)(y, 8) };\n }, B._mdia = function(y) {\n var c = {};\n return B.readBoxes(y).forEach(function(h) {\n h.data && (h.name === \"minf\" ? c.minf = B._minf(h.data) : h.name === \"hdlr\" ? c.hdlr = B._hdlr(h.data) : h.name === \"mdhd\" && (c.mdhd = B._mdhd(h.data)));\n }), c;\n }, B._hdlr = function(y) {\n var c = {};\n return y[0] === 0 && (c.type = Object(q.a)(y, 8, 4)), c;\n }, B._minf = function(y) {\n var c = {};\n return B.readBoxes(y).forEach(function(h) {\n h.data && (h.name === \"dinf\" ? B._dinf(h.data) : h.name === \"stbl\" && (c.stbl = B._stbl(h.data)));\n }), c;\n }, B._dinf = function(y) {\n B.readBoxes(y).forEach(function(c) {\n c.data && c.name === \"dref\" && B._dref(c.data);\n });\n }, B._dref = function(y) {\n y[0];\n for (var c = Object(q.g)(y, 4), h = 0; h < c && 8 < y.byteLength; h++)\n ;\n }, B._stbl = function(y) {\n var c = {};\n return B.readBoxes(y).forEach(function(h) {\n h.data && (h.name === \"stsd\" ? c.stsd = B._stsd(h.data) : h.name === \"stts\" ? c.stts = B._stts(h.data) : h.name === \"stsc\" ? c.stsc = B._stsc(h.data) : h.name === \"stco\" ? c.stco = B._stco(h.data) : h.name === \"co64\" ? c.stco = B._co64(h.data) : h.name === \"stsz\" ? c.stsz = B._stsz(h.data) : h.name === \"stz2\" ? c.stsz = B._stz2(h.data) : h.name === \"stss\" ? c.stss = B._stss(h.data) : h.name === \"ctts\" ? c.ctts = B._ctts(h.data) : h.name === \"sgpd\" ? c.sgpd = B._sgpd(h.data) : h.name === \"stdp\" ? c.stdp = B._stdp(h.data) : h.name === \"sdtp\" ? c.sdtp = B._sdtp(h.data) : h.name === \"sbgp\" ? c.sbgp = B._sbgp(h.data) : h.name === \"subs\" ? c.subs = B._subs(h.data) : h.name === \"saiz\" ? c.saiz = B._saiz(h.data) : h.name === \"saio\" ? c.saio = B._saio(h.data) : h.name === \"senc\" && (c.senc = B._senc(h.data)));\n }), c;\n }, B._subs = function(y) {\n var c = y[0], h = { entries: [] }, T = 4, O = Object(q.g)(y, T);\n T += 4;\n for (var M = 0; M < O; M++) {\n var $ = { sampleDelta: Object(q.g)(y, T), subSamples: [] };\n h.entries.push($);\n var X = Object(q.e)(y, T + 4);\n T += 6;\n for (var de = 0; de < X; de++) {\n c === 1 ? (Object(q.g)(y, T), T += 4) : (Object(q.e)(y, T), T += 2);\n var be = { priority: y[T], discardable: y[T + 1], codecSpecificParameters: Object(q.g)(y, T + 2) };\n $.subSamples.push(be), T += 6;\n }\n }\n return h;\n }, B._sbgp = function(y) {\n var c = y[0], h = 4, T = { groupingType: Object(q.a)(y, h, 4), entries: [] };\n h += 4, c === 1 && (Object(q.g)(y, h), h += 4);\n var O = Object(q.g)(y, h);\n h += 4;\n for (var M = 0; M < O; M++)\n T.entries.push({ sampleCount: Object(q.d)(y, h), groupDescriptionIndex: Object(q.d)(y, h + 4) }), h += 8;\n return T;\n }, B._sdtp = function(y) {\n for (var c = { entries: [] }, h = 4; h < y.byteLength; )\n c.entries.push({ sampleDependsOn: y[h] >> 4 & 3, sampleIsDependedOn: y[h] >> 2 & 3, sampleHasRedundancy: 3 & y[h] }), h++;\n return c;\n }, B._stdp = function(y) {\n for (var c = { priority: [] }, h = 4; h < y.length; )\n c.priority.push(Object(q.e)(y, h)), h += 2;\n return c;\n }, B._sgpd = function(y) {\n var c = y[0], h = { type: Object(q.a)(y, 4, 4), entries: [] }, T = 0, O = 8;\n c === 1 && (T = Object(q.g)(y, O), O += 4), c === 2 && (Object(q.g)(y, O), O += 4);\n var M = Object(q.g)(y, O);\n O += 4;\n for (var $ = 0; $ < M; $++) {\n var X = 0;\n c === 1 && T === 0 ? (X = Object(q.g)(y, O), O += 4) : X = T;\n var de = { descriptionLength: X, data: y.subarray(O, O + X) };\n O += X, h.entries.push(de);\n }\n return h;\n }, B._stsd = function(y) {\n return y[0], Object(q.g)(y, 4), { sampleEntrys: B.readBoxes(y.subarray(8, y.byteLength)), boxData: y };\n }, B._stts = function(y) {\n for (var c = Object(q.g)(y, 4), h = 8, T = [], O = 0; O < c; O++)\n T.push({ sampleCount: Object(q.g)(y, h), sampleDelta: Object(q.g)(y, h + 4) }), h += 8;\n return { timeToSample: T };\n }, B._stsc = function(y) {\n y[0];\n for (var c = Object(q.g)(y, 4), h = 8, T = [], O = 0; O < c; O++)\n T.push({ firstChunk: Object(q.g)(y, h), samplesPerChunk: Object(q.g)(y, h + 4), sampleDescriptionIndex: Object(q.g)(y, h + 8) }), h += 12;\n return { sampleToChunkBox: T };\n }, B._stco = function(y) {\n for (var c = Object(q.g)(y, 4), h = 8, T = [], O = 0; O < c; O++)\n T.push(Object(q.g)(y, h)), h += 4;\n return { chunkOffset: T };\n }, B._co64 = function(y) {\n for (var c = Object(q.g)(y, 4), h = 8, T = [], O = 0; O < c; O++)\n T.push(Object(q.h)(y, h)), h += 8;\n return { chunkOffset: T };\n }, B._stsz = function(y) {\n var c = Object(q.g)(y, 4), h = Object(q.g)(y, 8), T = 12;\n if (c === 0) {\n c = [];\n for (var O = 0; O < h; O++)\n c.push(Object(q.g)(y, T)), T += 4;\n }\n return { sampleCount: h, SampleSize: c };\n }, B._stz2 = function(y) {\n for (var c = y[7], h = [], T = Object(q.g)(y, 8), O = 12, M = 0; M < T; M++)\n c === 4 ? (h.push(y[O] >> 4), ++M < T && h.push(15 & y[O]), O += 1) : c === 8 ? (h.push(y[O]), O += 1) : c === 16 && (h.push(Object(q.e)(y, O)), O += 2);\n return { sampleCount: T, SampleSize: h };\n }, B._stss = function(y) {\n for (var c = Object(q.g)(y, 4), h = 8, T = [], O = 0; O < c; O++)\n T.push(Object(q.g)(y, h)), h += 4;\n return { sampleNumber: T };\n }, B._ctts = function(y) {\n y[0];\n for (var c = Object(q.g)(y, 4), h = 8, T = [], O = 0; O < c; O++)\n T.push({ sampleCount: Object(q.g)(y, h), sampleOffset: Object(q.d)(y, h + 4) }), h += 8;\n return { compositionOffset: T };\n }, B._mdhd = function(y) {\n var c = 0, h = 0;\n return y[0] === 1 ? (c = Object(q.g)(y, 20), h = Object(q.h)(y, 24)) : (c = Object(q.g)(y, 12), h = Object(q.g)(y, 16)), { timescale: c, duration: h };\n }, B;\n }(), Mn = [64, 102, 103, 104, 105, 107], ya = [64, 102, 103, 104], kr = { avc1: W.b.h264, avcC: W.b.h264, hev1: W.b.hevc, hvc1: W.b.hevc, hvcC: W.b.hevc, kvc3: W.b.kvc3, kvc4: W.b.kvc4, kvc5: W.b.kvc5, kvc6: W.b.kvc6, kvc7: W.b.kvc30, kvLC: W.b.kvc30, av01: W.b.av1, av1C: W.b.av1, bvc2: W.b.bvc2, bv2C: W.b.bvc2, vvc1: W.b.vvc, vvcC: W.b.vvc }, Ea = function() {\n function B(c, h, T, O) {\n var M = this;\n this._evt = void 0, this._remuxer = void 0, this._config = void 0, this._duration = 1 / 0, this._naluLengthSize = 4, this._videoTrack = void 0, this._audioTrack = void 0, this._slientAudio = void 0, this._remuxStat = void 0, this._firstRemux = !0, this._typeSupported = void 0, this._transmuxData = void 0, this._gopRemux = !1, this._cache = void 0, this._ftyp = void 0, this._moov = void 0, this._vSampleIndex = 0, this._aSampleIndex = 0, this._offset = 0, this._vSampleInfoList = void 0, this._aSampleInfoList = void 0, this._nextSampleInfo = void 0, this._readingBox = void 0, this._isFMP4 = !1, this._readingBoxWaiting = 8, this._fragmentEndOffset = 0, this._readSamples = !0, this._remuxOnMoof = !1, this._mdatOffset = 0, this._pssh = void 0, this._vLastDTS = 0, this._aLastDTS = 0, this._av1Ctx = void 0, this._onError = function($) {\n M._evt.emit(o.a.ERROR, $);\n }, this._evt = c, this._remuxer = h, this._config = T, this._typeSupported = O, this._gopRemux = !!this._config.gopRemux, this._videoTrack = Object(me.b)(1 / 0), this._audioTrack = Object(me.a)(1 / 0), this._cache = new m.a();\n }\n B.probe = function(c) {\n var h = Object(q.a)(c, 4, 4);\n return !(h !== \"styp\" && h !== \"ftyp\");\n };\n var y = B.prototype;\n return y.append = function(c, h, T, O, M) {\n if (M === void 0 && (M = !1), this._readSamples) {\n this._cache.put(c), this._remuxStat || (this._remuxStat = { timeOffset: h, contiguous: T, accurateTimeOffset: O }), this._isFMP4 && this._isCurretFragmentEnd() && this._nextFragment();\n do {\n if (this._readBox(), !this._moov || !this._readSamples)\n return;\n for (T || (this._isFMP4 || this._seek(h), T = !0); this._cache.unreadLen && this._hasMoreSamples(); ) {\n if (!this._nextSampleInfo) {\n var $ = this._getNextSampleInfo();\n if ($ === \"notReady\")\n return void l.b.i(\"mp4-demuxer\", \"sample not ready\");\n this._nextSampleInfo = $;\n }\n if (!this._nextSampleInfo)\n return void (!this._isFMP4 && this._offset < this._mdatOffset && this._onError({ type: r.b.MUX_ERROR, details: r.a.REMUX_ERROR, fatal: !0, reason: \"can not find next sample\" }));\n if (this._offset) {\n var X = this._nextSampleInfo.start - this._offset;\n if (this._cache.unreadLen < X)\n return;\n this._cache.skip(this._nextSampleInfo.start - this._offset);\n }\n if (this._offset = this._nextSampleInfo.start, !(this._nextSampleInfo && this._nextSampleInfo.end - this._nextSampleInfo.start <= this._cache.unreadLen))\n break;\n var de = this._cache.get(this._nextSampleInfo.end - this._nextSampleInfo.start);\n if (!de)\n return;\n this._offset += de.byteLength, this._nextSampleInfo.type === W.l.VIDEO ? (this._videoTrack.active && this._parseVideoSample(this._nextSampleInfo, de), this._vSampleIndex++) : (this._audioTrack.active && this._parseAudioSample(this._nextSampleInfo, de), this._aSampleIndex++), this._nextSampleInfo = void 0;\n }\n this._isCurretFragmentEnd() && this._nextFragment();\n } while (this._isFMP4 && this._readNextBox());\n this._remuxOnMoof && !M || (this._remux(M && !this._hasMoreSamples()), M && this._evt.emit(o.a.PARSED_DATA, { extra: this._transmuxData }));\n }\n }, y._readBox = function() {\n for (; this._readNextBox(); ) {\n if (!this._readingBox) {\n var c = this._cache.get(8);\n if (!c)\n return;\n var h = Object(q.g)(c);\n this._readingBox = { size: h, name: Object(q.a)(c, 4, 4), headSize: h > 1 ? 8 : 16 }, this._offset += 8;\n }\n if (this._readingBox.size === 1) {\n if (!(this._cache.unreadLen >= 8))\n return void (this._readingBoxWaiting = 8);\n var T = this._cache.get(8);\n if (!T)\n return;\n var O = Object(q.h)(T);\n this._readingBox.size = O, this._offset += 8;\n }\n var M = this._readingBox.size - this._readingBox.headSize;\n if (this._readingBox.name === \"mdat\") {\n if (this._mdatOffset = this._offset, !this._moov)\n return this._readingBox = void 0, this._readSamples = !1, void this._evt.emit(o.a.MP4_NOT_FASTSTART, { pos: this._offset + M });\n if (this._isFMP4) {\n this._updateSampleListDataOffset(this._offset), this._readingBoxWaiting = 0, this._fragmentEndOffset = this._offset + M;\n break;\n }\n if (!this._isFMP4) {\n this._readingBox = void 0, this._readingBoxWaiting = 0;\n break;\n }\n }\n if (this._cache.unreadLen >= M) {\n var $ = this._cache.get(M);\n if (this._readingBox.data = $, this._offset += M, this._readingBox.name === \"moov\") {\n if (this._parseMOOV(this._readingBox), this._vSampleInfoList && this._vSampleInfoList.samples.length || this._aSampleInfoList && this._aSampleInfoList.samples.length) {\n this._readingBoxWaiting = 0, this._readingBox = void 0;\n break;\n }\n this._readingBox = void 0;\n } else\n this._readingBox.name === \"moof\" ? (this._remuxOnMoof && this._remux(), this._isFMP4 = !0, this._parseMOOF(this._readingBox, this._offset), this._readingBox = void 0) : this._readingBox.name === \"sidx\" ? (this._parseSIDX(this._readingBox, this._offset), this._readingBox = void 0) : this._readingBox.name === \"ftyp\" ? (this._ftyp = Zi.ftyp(this._readingBox), this._readingBox = void 0) : this._readingBox = void 0;\n } else\n this._readingBoxWaiting = M;\n }\n }, y._updateSampleListDataOffset = function(c) {\n var h, T, O = this._aSampleIndex, M = this._vSampleIndex, $ = (h = this._aSampleInfoList) == null ? void 0 : h.samples, X = (T = this._vSampleInfoList) == null ? void 0 : T.samples, de = $ && $[O], be = X && X[M];\n if (de && be)\n for (var Q = c, ae = $[O], pe = X[M]; ae || pe; ) {\n var Le = ae ? ae.noOffset ? ae.start + Q : ae.start : Number.MAX_SAFE_INTEGER, Ue = pe ? pe.noOffset ? pe.start + Q : pe.start : Number.MAX_SAFE_INTEGER, He = void 0;\n if (Le === Ue ? ae && ae.noOffset ? (He = pe, M++) : (He = ae, O++) : Le < Ue ? (He = ae, O++) : (He = pe, M++), He) {\n if (He.noOffset) {\n He.noOffset = void 0;\n var Ge = He.end - He.start;\n He.start = Math.min(Le, Ue), He.end = He.start + Ge;\n }\n Q = He.end;\n }\n ae = $[O], pe = X[M];\n }\n else if (de || be) {\n var Qe = de ? $ : X;\n if (!Qe)\n return;\n for (var ot = Qe.length - 1; ot >= 0; ot--)\n if (Qe[ot] && Qe[ot].noOffset) {\n Qe[ot].noOffset = void 0, Qe[ot].start += c, Qe[ot].end += c;\n break;\n }\n }\n }, y._readNextBox = function() {\n return !!(this._readingBoxWaiting && this._cache.unreadLen >= this._readingBoxWaiting);\n }, y._isCurretFragmentEnd = function() {\n return !!(this._isFMP4 && this._fragmentEndOffset && !this._hasMoreSamples() && this._fragmentEndOffset <= this._offset + this._cache.unreadLen);\n }, y._nextFragment = function() {\n this._isCurretFragmentEnd() && (this._cache.skip(this._fragmentEndOffset - this._offset), this._offset = this._fragmentEndOffset, this._readingBox = void 0, this._readingBoxWaiting = 8, this._fragmentEndOffset = 0);\n }, y.destroy = function() {\n }, y.flush = function() {\n this._remux(!0), this._remuxStat = void 0;\n }, y.resetInitSegment = function(c, h) {\n this._transmuxData = c, this._readSamples = !0, this._firstRemux = !0, this._videoTrack.samples = [], this._audioTrack.samples = [], this._aLastDTS = this._vLastDTS = 0, this._remuxStat = void 0, typeof c.hasAudio == \"boolean\" && typeof c.hasVideo == \"boolean\" && (this._audioTrack.active = c.hasAudio, this._videoTrack.active = c.hasVideo, this._videoTrack.active || (this._gopRemux = !1)), this._cache.clear(), h && this._cache.put(h), this._vSampleIndex = 0, this._aSampleIndex = 0, this._offset = 0, this._nextSampleInfo = void 0, this._slientAudio && this._slientAudio.reset(), this._isFMP4 && (this._vSampleInfoList && (this._vSampleInfoList.samples = [], this._vSampleInfoList.endPTS = 0), this._aSampleInfoList && (this._aSampleInfoList.samples = [], this._aSampleInfoList.endPTS = 0), this._readingBoxWaiting = 8, this._readingBox = void 0), l.b.i(\"mp4-demuxer\", \"reset init\");\n }, y.resetTimeStamp = function() {\n }, y.updateConfig = function(c) {\n U()(this._config, c);\n }, y._parseVideoSample = function(c, h) {\n var T, O = 0, M = [], $ = !1, X = this._videoTrack;\n if (X.codecType === W.b.av1)\n this._av1Ctx || (this._av1Ctx = K.createCtx()), K.parseOBU(h, this._av1Ctx).forEach(function(Le) {\n var Ue;\n Le.obu_type === D.AV1_OBU_SEQUENCE_HEADER && bt.updateAV1Track(X, Le.content), $ = $ || !((Ue = Le.content) == null || !Ue.keyframe), M.push({ type: 0, data: Le.data });\n });\n else\n for (; O < h.byteLength; ) {\n var de = Object(q.g)(h, O);\n O += 4;\n var be = h.subarray(O, O + de);\n this._naluLengthSize === 3 && (de >>>= 8);\n var Q = 0, ae = void 0;\n X.codecType === W.b.h264 ? (Q = 31 & be[0]) === J.H264_NAL_IDR_SLICE ? $ = $ || !0 : J.PRIV_NAL_MAGIC_H264 : Ce(X.codecType) ? (Q = (126 & be[0]) >> 1) === Oe.a.HEVC_NAL_IDR_W_RADL || Q === Oe.a.HEVC_NAL_IDR_N_LP ? $ = $ || !0 : Oe.a.PRIV_NAL_MAGIC_HEVC : (T = X.codecType) && qe.indexOf(T) >= 0 && (Q = (248 & be[1]) >> 3, ae = (7 & be[1]) - 1, Q !== lt.a.VVC_NAL_UNIT_CODED_SLICE_IDR_W_RADL && Q !== lt.a.VVC_NAL_UNIT_CODED_SLICE_IDR_N_LP || ($ = $ || !0)), M.push({ type: Q, data: be, temporalId: ae }), O += de;\n }\n if (M.length) {\n var pe = { units: M, dts: c.dts, cts: c.cts, pts: c.pts, originDTS: c.dts, key: $, duration: c.duration };\n pe.key && this._evt.emit(o.a.KEY_FRAME, { cts: c.cts / X.inputTimescale, pts: c.pts / X.inputTimescale }), c.auxiliaryInfo && (pe.auxiliaryInfo = c.auxiliaryInfo), c.index !== 0 || this._remuxStat && this._remuxStat.timeOffset !== 0 || (pe.dts = pe.pts = pe.cts = pe.originDTS = 0), X.samples.push(pe);\n }\n }, y._parseAudioSample = function(c, h) {\n var T, O, M = this._audioTrack;\n M.codecType === W.b.aac && (h.length <= 2 || M.asc && M.asc === Object(q.e)(h)) || (M.codecType === W.b.mp3 ? T = (O = H(M, h, 0, c.dts, 0)) == null ? void 0 : O.sample : (T = { unit: h, dts: c.dts, pts: c.dts, duration: c.duration || c.duration || M.sampleDuration, originDTS: c.dts }, c.auxiliaryInfo && (T.auxiliaryInfo = c.auxiliaryInfo), M.samples.push(T)));\n }, y._hasMoreSamples = function() {\n return !!(this._aSampleInfoList && this._aSampleIndex < this._aSampleInfoList.samples.length || this._vSampleInfoList && this._vSampleIndex < this._vSampleInfoList.samples.length);\n }, y._getNextSampleInfo = function() {\n var c = this._aSampleInfoList ? this._aSampleInfoList.samples[this._aSampleIndex] : void 0, h = this._vSampleInfoList ? this._vSampleInfoList.samples[this._vSampleIndex] : void 0, T = c ? c.start - this._offset : -1, O = h ? h.start - this._offset : -1;\n return O >= 0 && (O < T || O > T && T < 0) ? h : T >= 0 && (T < O || T > O && O < 0) ? c : this._isFMP4 && (T < O && c != null && c.noOffset || T > O && h != null && h.noOffset) ? \"notReady\" : void 0;\n }, y._remux = function(c) {\n c === void 0 && (c = !1);\n var h = this._audioTrack, T = this._videoTrack;\n if (T.outputRaw && !h.active) {\n var O;\n this._slientAudio || (Ae.a.initAudioForFillSilent(h, (O = this._transmuxData) == null ? void 0 : O.audioCodec), this._slientAudio = new le.a()), this._slientAudio.update(h, T);\n }\n if (h.samples.length !== 0 || T.samples.length !== 0) {\n if (c || !(h.active && h.samples.length === 0 || T.active && T.samples.length < 3)) {\n var M = !0, $ = 0, X = !1;\n this._remuxStat && (M = this._remuxStat.contiguous, $ = this._remuxStat.timeOffset, X = this._remuxStat.accurateTimeOffset), this._firstRemux && (this._firstRemux = !1, this._evt.emit(o.a.MEDIA_DEMUX, { type: this._isFMP4 ? d.b.FMP4 : d.b.MP4 }));\n try {\n this._remuxer.remux(h, T, $, M, X, c, this._pssh), this._remuxStat = void 0;\n } catch (de) {\n l.b.e(\"mp4-demuxer\", de), this._onError({ type: r.b.MUX_ERROR, details: r.a.REMUX_ERROR, fatal: !0, reason: de.message });\n }\n }\n } else\n c && this._remuxer.flush();\n }, y._getTrexByID = function(c) {\n if (this._moov)\n for (var h = 0; h < this._moov.mvex.length; h++) {\n var T;\n if (((T = this._moov.mvex[h].trex) == null ? void 0 : T.trackID) === c)\n return this._moov.mvex[h].trex;\n }\n }, y._getTrakByID = function(c) {\n if (this._moov)\n for (var h = 0; h < this._moov.trak.length; h++) {\n var T;\n if (((T = this._moov.trak[h].tkhd) == null ? void 0 : T.trackId) === c)\n return this._moov.trak[h];\n }\n }, y._parseMOOF = function(c, h) {\n var T, O = this, M = Zi.moof(c);\n M.traf && M.traf.length > 1 && (this._remuxOnMoof = !0), (T = M.traf) == null || T.forEach(function($) {\n var X = $.tfdt, de = $.tfhd, be = $.trun;\n if (de && be) {\n var Q, ae = O._getTrexByID(de.trackID), pe = (X == null ? void 0 : X.baseMediaDecodeTime) || 0, Le = 0, Ue = de.defaultSampleSize || (ae == null ? void 0 : ae.defaultSampleSize) || 0, He = Ue, Ge = de.defaultSampleDuration || (ae == null ? void 0 : ae.defaultSampleDuration) || 0, Qe = de.trackID || 0;\n Qe === O._videoTrack.id && (Q = O._videoTrack), Qe === O._audioTrack.id && (Q = O._audioTrack);\n var ot = O._getTrakByID(Qe);\n if (ot && Q) {\n var nt, ut, it;\n if ((nt = ot.mdia) != null && (ut = nt.mdhd) != null && ut.timescale && (Q.inputTimescale = ot.mdia.mdhd.timescale), Q.sampleDescIndex = de.sampleDescriptionIndex, Q.type === W.l.VIDEO && O._vSampleInfoList ? it = O._vSampleInfoList : Q.type === W.l.AUDIO && O._aSampleInfoList && (it = O._aSampleInfoList), !it)\n return;\n var Ft = it.samples.length;\n Q.type === \"video\" && O._vLastDTS > pe ? pe = O._vLastDTS : Q.type === \"audio\" && O._aLastDTS > pe && (pe = O._aLastDTS);\n var Lt = 0;\n be.forEach(function(dt) {\n if (Q && it) {\n var jt = !dt.dataOffset, li = 0;\n jt || (li = de.baseDataOffset ? de.baseDataOffset + dt.dataOffset : dt.dataOffset + h - c.size);\n for (var Ri = de.defaultSampleFlags || (ae == null ? void 0 : ae.defaultSampleFlags) || (dt == null ? void 0 : dt.firstSampleFlags) || 0, ui = 0; ui < (dt.sampleCount || 0); ui++) {\n Ge = dt.sampleDuration[ui] || Ge, Le = dt.sampleCompositionTimeOffset[ui] || 0, He = dt.sampleSize[ui] || Ue, Ge || Q.type !== W.l.AUDIO || (Ge = ve.c(Q.samplerate, Q.inputTimescale));\n var Ni = { type: Q.type, index: Ft, gopID: 0, dts: pe, cts: Le, pts: pe + Le, duration: Ge, start: li, end: li + He, noOffset: jt };\n if ($.senc) {\n if (Q.useSubSampleEnc = $.senc.useSubSampleEnc, $.senc.encItemData[ui])\n Ni.auxiliaryInfo = { enc: $.senc.encItemData[ui] };\n else if ($.saiz && $.senc.encData) {\n var Ci = $.saiz.sampleInfoSize[ui] || $.saiz.defaultSampleInfoSize;\n Ni.auxiliaryInfo = { enc: $.senc.encData.subarray(Lt, Lt + Ci) }, Lt += Ci;\n }\n }\n li += He, pe += Ge, Ri = dt.sampleFlags[ui] || de.defaultSampleFlags || 0, Ft++, it.samples.push(Ni), it.endPTS = pe + Le;\n }\n }\n }), Q.type === \"video\" ? O._vLastDTS = pe : Q.type === \"audio\" && (O._aLastDTS = pe);\n }\n }\n });\n }, y._parseSIDX = function(c, h) {\n var T = Zi.sidx(c), O = this._vSampleInfoList;\n if (T && O) {\n O.keyframes = [];\n var M = 0, $ = h;\n T.references.forEach(function(X) {\n O.keyframes.push({ time: M, position: $ }), M += X.duration, $ += X.size;\n }), this._evt.emit(o.a.KEY_FRAME_INDEXS, { keyframes: O.keyframes });\n }\n }, y._parseMOOV = function(c) {\n var h = this;\n l.b.i(\"mp4-demuxer\", \"parse moov size: \" + c.size), this._moov = Zi.moov(c);\n var T = { mp4MoovSize: c.size };\n if (this._ftyp && U()(T, this._ftyp), this._moov.mvhd) {\n var O = this._moov.mvhd.timescale;\n this._duration = this._moov.mvhd.duration / O, this._duration || this._moov.mvex.forEach(function(ae) {\n ae.mehd && (T.duration = h._duration = ae.mehd.fragmentDuration / O);\n }), T.duration = this._duration;\n }\n if (this._pssh = [], this._moov.pssh.forEach(function(ae) {\n ae.data && h._pssh && h._pssh.push(ae.data);\n }), this._moov.trak.forEach(function(ae) {\n var pe, Le, Ue;\n if (ae.mdia && ae.mdia.minf && ae.mdia.minf.stbl && ae.mdia.hdlr && ae.mdia.mdhd && ae.tkhd) {\n if (ae.mdia.hdlr.type === \"vide\")\n h._videoTrack.active === void 0 && (h._videoTrack.active = !0), h._vSampleInfoList = h._parseSTBL(h._videoTrack, ae.mdia.minf.stbl, ae.mdia.mdhd), h._videoTrack.rotation = _r(ae.tkhd.matrix), h._videoTrack.id = ae.tkhd.trackId, (pe = h._pssh) != null && pe.length && (h._videoTrack.stsd = (Le = ae.mdia.minf.stbl.stsd) == null ? void 0 : Le.boxData), h._videoTrack.bitrate || (h._videoTrack.bitrate = 8 * (((Ue = h._vSampleInfoList) == null ? void 0 : Ue.size) || 0) / 1e3 / (ae.mdia.mdhd.duration / ae.mdia.mdhd.timescale));\n else if (ae.mdia.hdlr.type === \"soun\") {\n var He, Ge, Qe;\n h._audioTrack.active === void 0 && (h._audioTrack.active = !0), h._audioTrack.id = ae.tkhd.trackId, h._aSampleInfoList = h._parseSTBL(h._audioTrack, ae.mdia.minf.stbl, ae.mdia.mdhd), (He = h._pssh) != null && He.length && (h._audioTrack.stsd = (Ge = ae.mdia.minf.stbl.stsd) == null ? void 0 : Ge.boxData), !h._audioTrack.bitrate && (h._audioTrack.bitrate = 8 * (((Qe = h._aSampleInfoList) == null ? void 0 : Qe.size) || 0) / 1e3 / (ae.mdia.mdhd.duration / ae.mdia.mdhd.timescale));\n }\n }\n }), this._vSampleInfoList && this._vSampleInfoList.description.length && this._parseVideoDescription(this._vSampleInfoList.description), this._aSampleInfoList && this._aSampleInfoList.description.length && this._parseAudioDescription(this._aSampleInfoList.description), this._vSampleInfoList) {\n this._vSampleInfoList.keyframes && (T.keyframes = this._vSampleInfoList.keyframes, this._aSampleInfoList && this._aSampleInfoList.samples.length && this._vSampleInfoList.keyframes.length && this._aSampleInfoList.samples[0].start < this._vSampleInfoList.keyframes[0].position && (T.keyframes[0] = U()({}, T.keyframes[0]), T.keyframes[0].position = this._aSampleInfoList.samples[0].start));\n var M = [], $ = this._videoTrack.inputTimescale;\n this._vSampleInfoList.samples.forEach(function(ae) {\n M.push({ index: 0, dts: ae.dts / $, pts: ae.pts / $, duration: ae.duration / $ });\n }), M.sort(function(ae, pe) {\n return ae.pts - pe.pts;\n }), M.forEach(function(ae, pe) {\n ae.index = pe;\n }), T.videoFramesInfo = M;\n } else if (this._aSampleInfoList) {\n var X, de = 0, be = this._audioTrack.inputTimescale, Q = [{ time: 0, position: (X = this._aSampleInfoList.samples[0]) == null ? void 0 : X.start }];\n this._aSampleInfoList.samples.forEach(function(ae) {\n ae.dts - de > 10 * be && (Q.push({ time: ae.dts / be, position: ae.start }), de = ae.dts);\n }), T.keyframes = Q;\n }\n l.b.i(\"mp4-demuxer\", \"Parsed onMetaData\"), this._evt.emit(o.a.METADATA, T);\n }, y._seek = function(c) {\n var h, T;\n if (l.b.i(\"mp4-demuxer\", \"seek:\" + c), c === 0 || this._isFMP4)\n return this._vSampleIndex = 0, void (this._aSampleIndex = 0);\n var O = (h = this._vSampleInfoList) == null ? void 0 : h.samples, M = (T = this._aSampleInfoList) == null ? void 0 : T.samples;\n if (O && this._vSampleInfoList) {\n var $ = Vr.a.getPosByTime(this._vSampleInfoList.keyframes, c);\n $ && (this._vSampleIndex = this._findSampleIndexByPos(O, $.position));\n }\n M && (this._vSampleInfoList ? O && (this._aSampleIndex = this._findSampleIndexByPos(M, O[this._vSampleIndex].end), l.b.i(\"mp4-demuxer\", \"seek audio by video pos: \" + c + \" a: \" + this._aSampleIndex + \" v: \" + this._vSampleIndex)) : (this._aSampleIndex = this._findSampleIndexByTime(M, c * this._videoTrack.inputTimescale), l.b.i(\"mp4-demuxer\", \"seek audio by time: \" + c + \" a: \" + this._aSampleIndex + \" v: \" + this._vSampleIndex)));\n }, y._findSampleIndexByPos = function(c, h) {\n if (c[0] && h < c[0].start)\n return 0;\n if (c[c.length - 1] && h >= c[c.length - 1].end)\n return c.length - 1;\n for (var T, O = 0, M = c.length - 1, $ = 0, X = 0; O <= M; ) {\n if (h >= ((T = (X = ($ = (O + M) / 2 | 0) - 1) >= 0 ? c[X] : void 0) ? T.end : c[$].start) && h < c[$].end)\n return $;\n if (h === c[$].end)\n return $ + 1;\n h > c[$].end ? O = $ + 1 : M = $ - 1;\n }\n return 0;\n }, y._findSampleIndexByTime = function(c, h) {\n if (c[0] && h < c[0].dts)\n return 0;\n if (c[c.length - 1] && h >= c[c.length - 1].dts)\n return c.length - 1;\n for (var T = 0, O = c.length - 1, M = 0, $ = 0, X = 0; T <= O; )\n if (h > (X = c[$ = (M = (T + O) / 2 | 0) + 1] ? c[$].dts : Number.MAX_SAFE_INTEGER))\n T = $;\n else {\n if (!(h < c[M].dts))\n return h === X ? $ : M;\n O = M - 1;\n }\n return 0;\n }, y._parseVideoDescription = function(c) {\n var h = this;\n l.b.i(\"mp4-demuxer\", \"parse video desc: \" + c[0].name);\n var T = !1;\n c.forEach(function(O) {\n O.name !== \"avc1\" && O.name !== \"hev1\" && O.name !== \"hvc1\" && O.name !== \"kvc3\" && O.name !== \"kvc4\" && O.name !== \"kvc5\" && O.name !== \"kvc6\" && O.name !== \"av01\" && O.name !== \"encv\" && O.name !== \"bvc2\" && O.name !== \"kvc7\" && O.name !== \"vvc1\" || (h._parseVideoSampleEntry(O), T = !0);\n }), T || (l.b.i(\"mp4-demuxer\", \"video codec unsupported\"), this._videoTrack.active = !1);\n }, y._parseAudioDescription = function(c) {\n var h = this;\n l.b.i(\"mp4-demuxer\", \"parse audio desc: \" + c[0].name);\n var T = !1;\n c.forEach(function(O) {\n (O.name === \"mp4a\" || O.name === \"enca\" || O.name === \"Opus\" && h._typeSupported.opus) && (h._parseAudioSampleEntry(O), T = !0);\n }), T || (l.b.i(\"mp4-demuxer\", \"audio codec unsupported\"), this._audioTrack.active = !1);\n }, y._parseAudioSampleEntry = function(c) {\n var h = this;\n if (c.data && c.data) {\n var T = 8, O = Object(q.e)(c.data, T);\n T += O >= 2 ? 56 : O === 1 ? 36 : 20, Zi.readBoxes(c.data.subarray(T, c.data.byteLength)).forEach(function(M) {\n if (M.name === \"esds\")\n h._readEsds(M);\n else if (M.name === \"wave\" && M.data)\n Zi.readBoxes(M.data).forEach(function(X) {\n X.name === \"esds\" && h._readEsds(X);\n });\n else if (M.name === \"btrt\") {\n var $ = Zi.btrt(M);\n $ && (h._audioTrack.maxBitrate = $.maxBitrate / 1e3, h._audioTrack.bitrate = $.avgBitrate / 1e3);\n } else\n M.name === \"dOps\" && M.data && (h._audioTrack.codecType = W.b.opus, h._audioTrack.codec = \"opus\", h._audioTrack.channelCount = M.data[1], h._audioTrack.samplerate = Object(q.g)(M.data, 4));\n });\n }\n }, y._readEsds = function(c) {\n if (c.name === \"esds\") {\n var h = this._audioTrack, T = Zi.esds(c);\n if (T) {\n var O = gr.getObjectTypeIndication(T);\n if (Mn.indexOf(O) === -1)\n return void (h.active = !1);\n if (ya.indexOf(O) !== -1) {\n var M = gr.getAudioConfig(T);\n M && ve.d(h, this._evt, M, d.a.ASC), h.codecType = W.b.aac;\n } else\n h.codecType = W.b.mp3;\n }\n }\n }, y._parseVideoSampleEntry = function(c) {\n var h = this;\n if (c.data) {\n var T = this._videoTrack;\n Zi.readBoxes(c.data.subarray(78, c.data.byteLength)).forEach(function(O) {\n var M;\n if (O.name === \"avcC\")\n T.codecType = kr[O.name], h._parseAvcC(T, O), h._checkFps(T), h._evt.emit(o.a.VIDEO_CODEC_DETECTED, { enabled: !0, decoder: W.c.buildin, codecType: W.b.h264, timeOffset: ((M = h._remuxStat) == null ? void 0 : M.timeOffset) || 0 });\n else if (O.name === \"hvcC\")\n Ce(T.codecType) || (T.codecType = kr[c.name] || W.b.hevc, T.codecType === W.b.hevc ? bt.onHEVCDetected(T, h._config, h._typeSupported) : bt.onKVCDetected(T, h._config, h._typeSupported)), h._parseHvcC(T, O), h._checkFps(T);\n else if (O.name === \"av1C\")\n T.codecType = kr[O.name], bt.onAV1Detected(T, h._config, h._typeSupported), h._parseAv1C(T, O), h._checkFps(T);\n else if (O.name === \"vvcC\" || O.name === \"bv2C\" || O.name === \"kvLC\")\n T.codecType = kr[O.name], bt.onVVCDetected(T, h._config, h._typeSupported), h._parseVvcC(T, O), h._checkFps(T);\n else if (O.name === \"btrt\") {\n var $ = Zi.btrt(O);\n $ && (T.maxBitrate = $.maxBitrate / 1e3, T.bitrate = $.avgBitrate / 1e3);\n } else if (O.name === \"pasp\") {\n var X = Zi.pasp(O);\n X && h._videoTrack.sar.width == h._videoTrack.sar.height && (h._videoTrack.sar = { width: X.hSpacing, height: X.vSpacing });\n }\n });\n }\n }, y._parseAv1C = function(c, h) {\n if (h.data) {\n this._av1Ctx = K.createCtx();\n var T = gt.parseAV1C(h.data, this._av1Ctx);\n T ? T.sh && bt.updateAV1Track(c, T.sh, h.data) : this._onError({ type: r.b.MUX_ERROR, details: r.a.PARSING_ERROR, fatal: !0, reason: \"Invalid AV1DecoderConfigurationRecord\" });\n }\n }, y._parseAvcC = function(c, h) {\n if (h.data) {\n var T = gt.parseAVCC(h.data);\n T ? bt.updateAVCTrack(c, T.paramSets, h.data) : this._onError({ type: r.b.MUX_ERROR, details: r.a.PARSING_ERROR, fatal: !0, reason: \"Invalid AVCDecoderConfigurationRecord\" });\n }\n }, y._parseHvcC = function(c, h) {\n var T;\n if (l.b.i(\"mp4-demuxer\", \"parse hvcc\"), h.data) {\n var O = gt.parseHVCC(h.data, c.codecType);\n if (O && O.paramSets.spsList.length) {\n if (bt.updateHEVCTrack(c, O.paramSets), this._evt.emit(o.a.VIDEO_CODEC_DETECTED, { codecType: c.codecType || W.b.unknown, enabled: !!c.active, decoder: this._videoTrack.outputRaw ? W.c.wasm : W.c.buildin, bitDepth: c.bitDepth, timeOffset: ((T = this._remuxStat) == null ? void 0 : T.timeOffset) || 0 }), this._videoTrack.outputRaw) {\n var M = gt.hevDecoderConfigToSample(O.paramSets, 0);\n this._evt.emit(o.a.RAW_DATA, { type: d.c.decoderConfig, samples: z([M], c.inputTimescale), extra: this._transmuxData });\n }\n } else\n this._onError({ type: r.b.MUX_ERROR, details: r.a.PARSING_ERROR, fatal: !0, reason: \"Invalid HEVCDecoderConfigurationRecord\" });\n }\n }, y._parseVvcC = function(c, h) {\n var T, O;\n if (l.b.i(\"mp4-demuxer\", \"parse vvcC\"), h.data)\n if (O = c.codecType === W.b.kvc30 ? gt.parseKvLC(h.data, c.codecType) : c.codecType === W.b.bvc2 ? gt.parseBV2C(h.data, c.codecType) : gt.parseVvcC(h.data, c.codecType), c.codecType === W.b.kvc30 || O && O.paramSets.spsList.length) {\n if (O && bt.updateVVCTrack(c, O.paramSets), c.sampleDuration = this._vSampleInfoList && this._vSampleInfoList.samples.length ? Math.round(this._duration * c.inputTimescale / this._vSampleInfoList.samples.length) : 3003, c.duration = this._duration, this._evt.emit(o.a.VIDEO_CODEC_DETECTED, { codecType: c.codecType || W.b.unknown, enabled: !!c.active, decoder: this._videoTrack.outputRaw ? W.c.wasm : W.c.buildin, bitDepth: c.bitDepth, timeOffset: ((T = this._remuxStat) == null ? void 0 : T.timeOffset) || 0 }), this._videoTrack.outputRaw && O) {\n var M = gt.vvcDecoderConfigToSample(O.paramSets, 0);\n this._evt.emit(o.a.RAW_DATA, { type: d.c.decoderConfig, samples: [M], extra: this._transmuxData });\n }\n } else\n this._onError({ type: r.b.MUX_ERROR, details: r.a.PARSING_ERROR, fatal: !0, reason: \"Invalid VVCDecoderConfigurationRecord\" });\n }, y._parseSTBL = function(c, h, T) {\n l.b.i(\"mp4-demuxer\", \"parse stbl\");\n var O = { description: h.stsd ? h.stsd.sampleEntrys : [], samples: [], keyframes: [], endPTS: 0, size: 0 };\n if (c.inputTimescale = T.timescale, c.duration = T.duration, h.stco && h.stsc && h.stsz && h.stsz.sampleCount) {\n var M, $ = 0, X = 0, de = h.stco.chunkOffset[$], be = h.stsc.sampleToChunkBox[X], Q = be.samplesPerChunk, ae = h.stsc.sampleToChunkBox[X].firstChunk, pe = 0, Le = Math.ceil(Object(or.c)(1, c.inputTimescale)), Ue = 0, He = void 0, Ge = 0, Qe = 0;\n h.stts && (He = h.stts.timeToSample[Ue], Ge = h.stts.timeToSample[Ue].sampleCount);\n var ot = 0, nt = void 0, ut = 0, it = 0;\n h.ctts && (nt = h.ctts.compositionOffset[ot], ut = h.ctts.compositionOffset[ot].sampleCount);\n var Ft = 0, Lt = 0;\n h.stss && (Lt = h.stss.sampleNumber[Ft]);\n for (var dt = 0; dt < h.stsz.sampleCount; dt++)\n if (dt >= Q && $ < h.stco.chunkOffset.length && (pe = 0, ae++, $++, de = h.stco.chunkOffset[$], h.stsc.sampleToChunkBox[X + 1] && ae >= h.stsc.sampleToChunkBox[X + 1].firstChunk && (X++, be = h.stsc.sampleToChunkBox[X]), Q += be.samplesPerChunk), h.stts && dt >= Ge && Ue < h.stts.timeToSample.length - 1 && (Ue++, Ge += (He = h.stts.timeToSample[Ue]).sampleCount), h.ctts && dt >= ut && ot < h.ctts.compositionOffset.length && (ot++, ut += (nt = h.ctts.compositionOffset[ot]).sampleCount), h.stss && dt >= Lt - 1 && Lt && (Ft++, Lt = h.stss.sampleNumber[Ft], M = { time: 0, position: 0 }), be && de) {\n var jt, li;\n it = ((jt = nt) == null ? void 0 : jt.sampleOffset) || 0;\n var Ri = typeof h.stsz.SampleSize == \"number\" ? h.stsz.SampleSize : h.stsz.SampleSize[dt], ui = Math.max(Le, ((li = He) == null ? void 0 : li.sampleDelta) || 0), Ni = Qe + it, Ci = { type: c.type, index: dt, gopID: O.keyframes.length || 1, dts: Qe, cts: it, pts: Ni, duration: ui, start: de + pe, end: de + pe + Ri };\n Ni > O.endPTS && (O.endPTS = Ni), O.samples.push(Ci), O.size += Ri, M && (M.time = O.keyframes.length ? Math.round((Qe + it) / c.inputTimescale * 1e3) / 1e3 : 0, M.position = Ci.start, O.keyframes.push(M), M = void 0), Qe += ui, pe += Ri, !h.stss && O.keyframes.length === 0 && O.samples.length && O.keyframes.push({ time: 0, position: O.samples[0].start });\n }\n return c.type === W.l.VIDEO && O.samples.length && T.timescale && (O.fps = O.samples.length / (T.duration / T.timescale)), O.samples.length && (c.sampleDuration = this._duration * c.inputTimescale / O.samples.length), O;\n }\n return O;\n }, y._checkFps = function(c) {\n var h, T;\n (h = this._vSampleInfoList) != null && h.fps && Object(Cr.a)((T = this._vSampleInfoList) == null ? void 0 : T.fps) && this._vSampleInfoList.fps > 0 && (c.fps = this._vSampleInfoList.fps);\n }, S()(B, null, [{ key: \"probeSize\", get: function() {\n return 8;\n } }]), B;\n }();\n (function(B) {\n B[B.AV_PICTURE_STRUCTURE_UNKNOWN = 0] = \"AV_PICTURE_STRUCTURE_UNKNOWN\", B[B.AV_PICTURE_STRUCTURE_TOP_FIELD = 1] = \"AV_PICTURE_STRUCTURE_TOP_FIELD\", B[B.AV_PICTURE_STRUCTURE_BOTTOM_FIELD = 2] = \"AV_PICTURE_STRUCTURE_BOTTOM_FIELD\", B[B.AV_PICTURE_STRUCTURE_FRAME = 3] = \"AV_PICTURE_STRUCTURE_FRAME\";\n })(Qt || (Qt = {})), function(B) {\n B[B.MMCO_END = 0] = \"MMCO_END\", B[B.MMCO_SHORT2UNUSED = 1] = \"MMCO_SHORT2UNUSED\", B[B.MMCO_LONG2UNUSED = 2] = \"MMCO_LONG2UNUSED\", B[B.MMCO_SHORT2LONG = 3] = \"MMCO_SHORT2LONG\", B[B.MMCO_SET_MAX_LONG = 4] = \"MMCO_SET_MAX_LONG\", B[B.MMCO_RESET = 5] = \"MMCO_RESET\", B[B.MMCO_LONG = 6] = \"MMCO_LONG\";\n }(Xi || (Xi = {})), function(B) {\n B[B.AV_PICTURE_TYPE_NONE = 0] = \"AV_PICTURE_TYPE_NONE\", B[B.AV_PICTURE_TYPE_I = 1] = \"AV_PICTURE_TYPE_I\", B[B.AV_PICTURE_TYPE_P = 2] = \"AV_PICTURE_TYPE_P\", B[B.AV_PICTURE_TYPE_B = 3] = \"AV_PICTURE_TYPE_B\", B[B.AV_PICTURE_TYPE_S = 4] = \"AV_PICTURE_TYPE_S\", B[B.AV_PICTURE_TYPE_SI = 5] = \"AV_PICTURE_TYPE_SI\", B[B.AV_PICTURE_TYPE_SP = 6] = \"AV_PICTURE_TYPE_SP\", B[B.AV_PICTURE_TYPE_BI = 7] = \"AV_PICTURE_TYPE_BI\";\n }(Vt || (Vt = {})), function(B) {\n B[B.HEVC_SLICE_B = 0] = \"HEVC_SLICE_B\", B[B.HEVC_SLICE_P = 1] = \"HEVC_SLICE_P\", B[B.HEVC_SLICE_I = 2] = \"HEVC_SLICE_I\";\n }(Yt || (Yt = {}));\n var ji, br = [Vt.AV_PICTURE_TYPE_P, Vt.AV_PICTURE_TYPE_B, Vt.AV_PICTURE_TYPE_I, Vt.AV_PICTURE_TYPE_SP, Vt.AV_PICTURE_TYPE_SI], jr = function() {\n function B(c, h, T, O) {\n var M = this;\n this._evt = void 0, this._remuxer = void 0, this._config = void 0, this._duration = 1 / 0, this._typeSupported = void 0, this._cache = void 0, this._slientAudio = void 0, this._transmuxData = void 0, this._firstRemux = !0, this._remuxStat = void 0, this._videoTrack = void 0, this._audioTrack = void 0, this._psUpdated = !1, this._vSample = void 0, this._vSampleIndex = 0, this._vSampleIndexOnGOPStart = 0, this._lastPTS = 0, this._frameDuration = R.e / R.c, this._codecParserContext = void 0, this._onError = function($) {\n M._evt.emit(o.a.ERROR, $);\n }, this._evt = c, this._remuxer = h, this._config = T, this._typeSupported = O, this._cache = new m.a(), this._initTrack(1 / 0), this._newSample(), this._slientAudio = new le.a();\n }\n B.probe = function(c) {\n return c.length > 4 && c[0] === 0 && c[1] === 0 && c[2] === 0 && c[3] === 1;\n };\n var y = B.prototype;\n return y.resetInitSegment = function(c) {\n this._initTrack(c.duration), this._transmuxData = c, this._firstRemux = !0, this._remuxStat = void 0, this._psUpdated = !1, this._vSample = void 0, this._vSampleIndex = 0, this._vSampleIndexOnGOPStart = 0, this._newSample(), this._cache.clear(), this._slientAudio && this._slientAudio.reset(), l.b.i(\"raw-demuxer\", \"reset init\");\n }, y.resetTimeStamp = function(c) {\n }, y.append = function(c, h, T, O, M) {\n var $ = this._findStartCode(c);\n if (this._remuxStat || (this._remuxStat = { timeOffset: h, contiguous: T, accurateTimeOffset: O }), $ && $.length) {\n var X = -this._cache.unreadLen;\n this._cache.put(c);\n for (var de = 0, be = 0; be < $.length; be++) {\n if (de = $[be].pos - X - $[be].state) {\n var Q = this._cache.get(de);\n this._cache.skip($[be].state), Q && (Q = $[be].state === 3 && Q[Q.length - 1] === 0 ? Q.subarray(0, Q.length - 1) : Q, this._parseNalu(Q));\n } else\n this._cache.skip($[be].state);\n X = $[be].pos;\n }\n } else\n this._cache.put(c);\n if (M) {\n var ae, pe = this._cache.get(this._cache.unreadLen);\n pe && (this._parseNalu(pe), this._vSample && this._videoTrack && this._nextSample(), this.flush());\n var Le = { duration: (this._lastPTS + this._frameDuration) / (((ae = this._videoTrack) == null ? void 0 : ae.inputTimescale) || R.e) };\n this._evt.emit(o.a.METADATA, Le);\n }\n }, y.flush = function() {\n this._remux(!0), this._remuxStat = void 0;\n }, y.destroy = function() {\n }, y.updateConfig = function(c) {\n U()(this._config, c);\n }, y._initTrack = function(c) {\n var h;\n this._videoTrack = Object(me.b)(c), this._videoTrack.naluState = 0, this._videoTrack.active = !0, this._audioTrack = Object(me.a)(c), Ae.a.initAudioForFillSilent(this._audioTrack, (h = this._transmuxData) == null ? void 0 : h.audioCodec);\n }, y._findStartCode = function(c) {\n var h = this._videoTrack;\n if (h) {\n for (var T = c.byteLength, O = [], M = 0, $ = h.naluState; M < T; )\n T - M > 3 && $ === 0 ? (c[M + 2] === 1 ? c[M + 1] === 0 && c[M] === 0 && O.push({ pos: M + 3, state: 3 }) : c[M + 2] === 0 && ($ = 1, c[M + 1] === 0 && ($ = 2, c[M] === 0 && ($ = 3))), M += 3) : ($ < 2 ? c[M] === 0 ? $++ : $ = 0 : $ === 3 || $ === 2 ? c[M] === 1 ? (O.push({ pos: M + 1, state: $ + 1 }), $ = 0) : c[M] > 1 && ($ = 0) : l.b.w(\"raw-demuxer\", \"error state\", $), M++);\n return h.naluState = $, O;\n }\n }, y._remux = function(c) {\n c === void 0 && (c = !1), this._nextSample();\n var h = this._audioTrack, T = this._videoTrack;\n if (T && h)\n if (this._slientAudio.update(h, T), h.samples.length !== 0 || T.samples.length !== 0) {\n if (c || !(h.active && h.samples.length === 0 || T.active && T.samples.length < 3)) {\n this._firstRemux && (this._evt.emit(o.a.KEY_FRAME_INDEXS, { keyframes: [{ time: 0, position: 0 }] }), this._firstRemux = !1, this._evt.emit(o.a.MEDIA_DEMUX, { type: d.b.RAW }));\n var O = Object(Yi.a)(T, this._vSampleIndexOnGOPStart);\n this._evt.emit(o.a.VIDEO_FRAME_INFO, { videoFramesInfo: O });\n var M = !0, $ = 0, X = !1;\n this._remuxStat && (M = this._remuxStat.contiguous, $ = this._remuxStat.timeOffset, X = this._remuxStat.accurateTimeOffset);\n try {\n this._remuxer.remux(h, T, $, M, X, c), this._remuxStat = void 0;\n } catch (de) {\n l.b.e(\"raw-demuxer\", de), this._onError({ type: r.b.MUX_ERROR, details: r.a.REMUX_ERROR, fatal: !0, reason: de.message });\n }\n }\n } else\n c && this._remuxer.flush();\n }, y._parseNalu = function(c) {\n var h = this._videoTrack;\n if (h) {\n if (!h.codecType || h.codecType === W.b.unknown) {\n var T = 31 & c[0], O = (126 & c[0]) >> 1;\n if (T >= J.H264_NAL_SPS && T <= J.H264_NAL_AUD)\n h.codecType = W.b.h264, this._codecParserContext = { pict_type: Vt.AV_PICTURE_TYPE_NONE, picture_structure: Qt.AV_PICTURE_STRUCTURE_UNKNOWN, key_frame: 0, priv_data: { picture_structure: Qt.AV_PICTURE_STRUCTURE_UNKNOWN, poc: { poc_lsb: 0, poc_msb: 0, delta_poc_bottom: 0, delta_poc: [], frame_num: 0, prev_poc_msb: 0, prev_poc_lsb: 0, frame_num_offset: 0, prev_frame_num_offset: 0, prev_frame_num: 0 }, ps: { spsList: [], ppsList: [] } } }, this._evt.emit(o.a.VIDEO_CODEC_DETECTED, { enabled: !0, decoder: W.c.buildin, codecType: W.b.h264, timeOffset: 0 });\n else {\n if (!(O >= Oe.a.HEVC_NAL_VPS && O <= Oe.a.HEVC_NAL_AUD || O === Oe.a.HEVC_NAL_SEI_PREFIX || O === Oe.a.HEVC_NAL_SEI_SUFFIX))\n return void this._onError({ type: r.b.MUX_ERROR, details: r.a.REMUX_ERROR, fatal: !0, reason: \"unsupport codec\" });\n var M, $, X, de;\n this._codecParserContext = { pict_type: Vt.AV_PICTURE_TYPE_NONE, picture_structure: Qt.AV_PICTURE_STRUCTURE_UNKNOWN, key_frame: 0, priv_data: { ps: { spsList: [], ppsList: [], vpsList: [] }, poc: 0, pocTid0: 0, max_dec_pic_buffering: 0 } }, ((M = this._transmuxData) == null ? void 0 : M.suffix) === \".kvc3\" ? h.codecType = W.b.kvc3 : (($ = this._transmuxData) == null ? void 0 : $.suffix) === \".kvc4\" ? h.codecType = W.b.kvc4 : ((X = this._transmuxData) == null ? void 0 : X.suffix) === \".kvc5\" ? h.codecType = W.b.kvc5 : ((de = this._transmuxData) == null ? void 0 : de.suffix) === \".kvc6\" ? h.codecType = W.b.kvc6 : h.codecType = W.b.hevc;\n }\n }\n h.codecType === W.b.h264 ? this._parseH264Nalu(c) : Ce(h.codecType) && this._parseHEVCNalu(c);\n }\n }, y._parseH264Nalu = function(c) {\n var h = this._codecParserContext, T = this._videoTrack;\n if (h && T) {\n var O = h.priv_data, M = [0, 0], $ = 0;\n h.pict_type = Vt.AV_PICTURE_TYPE_I, h.key_frame = 0, h.picture_structure = Qt.AV_PICTURE_STRUCTURE_UNKNOWN;\n var X = { ref_idc: c[0] >> 5 & 3, type: 31 & c[0], nuh_layer_id: 0, temporal_id: 0, data: c };\n switch (X.type) {\n case J.H264_NAL_IDR_SLICE:\n T.decConf && this._remux(), this._vSampleIndexOnGOPStart = this._vSampleIndex, h.key_frame = 1, O.poc.prev_frame_num = 0, O.poc.prev_frame_num_offset = 0, O.poc.prev_poc_msb = O.poc.prev_poc_lsb = 0;\n case J.H264_NAL_SLICE:\n var de = rt(Z(c.subarray(1, c.byteLength)));\n X.gbCtx = de, k(de);\n var be = k(de);\n h.pict_type = br[be % 5];\n var Q = k(de), ae = O.ps.ppsList[Q], pe = O.ps.spsList[ae.sps_id];\n O.ps.sps = pe, O.ps.pps = ae, O.ps.sps.ref_frame_count <= 1 && O.ps.pps.ref_count[0] <= 1 && h.pict_type === Vt.AV_PICTURE_TYPE_I && (h.key_frame = 1), O.poc.frame_num = G(de, pe.log2_max_frame_num), pe.frame_mbs_only_flag ? O.picture_structure = Qt.AV_PICTURE_STRUCTURE_FRAME : G(de, 1) ? O.picture_structure = Qt.AV_PICTURE_STRUCTURE_TOP_FIELD + G(de, 1) : O.picture_structure = Qt.AV_PICTURE_STRUCTURE_FRAME, X.type === J.H264_NAL_IDR_SLICE && k(de), pe.pic_order_cnt_type === 0 && (O.poc.poc_lsb = G(de, pe.log2_max_poc_lsb), ae.pic_order_present == 1 && O.picture_structure == Qt.AV_PICTURE_STRUCTURE_FRAME && (O.poc.delta_poc_bottom = F(de))), pe.pic_order_cnt_type != 1 || pe.delta_pic_order_always_zero_flag || (O.poc.delta_poc[0] = F(de), ae.pic_order_present == 1 && O.picture_structure === Qt.AV_PICTURE_STRUCTURE_FRAME && (O.poc.delta_poc[1] = F(de))), M[0] = M[1] = Number.MAX_SAFE_INTEGER;\n var Le = this.ff_h264_init_poc(M, pe, O.poc, O.picture_structure, X.ref_idc);\n if (X.ref_idc && X.type !== J.H264_NAL_IDR_SLICE && ($ = this.scan_mmco_reset(h, de)) < 0)\n return;\n if (O.poc.prev_frame_num = $ ? 0 : O.poc.frame_num, O.poc.prev_frame_num_offset = $ ? 0 : O.poc.frame_num_offset, X.ref_idc !== 0 && ($ ? (O.poc.prev_poc_msb = 0, O.poc.prev_poc_lsb = O.picture_structure === Qt.AV_PICTURE_STRUCTURE_BOTTOM_FIELD ? 0 : M[0]) : (O.poc.prev_poc_msb = O.poc.poc_msb, O.poc.prev_poc_lsb = O.poc.poc_lsb)), !T.decConf) {\n var Ue;\n this._psUpdated && this._remuxer.ISGenerated && this._transmuxData && this._remuxer.resetInitSegment(this._transmuxData), bt.updateAVCTrack(T, O.ps), this._checkFps(T);\n var He = gt.avcDecoderConfigToNalu(O.ps);\n this._vSample && (Ue = this._vSample.units).push.apply(Ue, He), T.fps && (this._frameDuration = T.inputTimescale / T.fps);\n }\n this._vSample && (this._vSample.poc !== -1 && Math.floor(Le / 2) !== Math.floor(this._vSample.poc / 2) && this._nextSample(), this._vSample.units.push({ type: X.type, data: X.data }), this._vSample.poc === -1 && (this._vSample.pts = this._vSampleIndex ? (Le / 2 + this._vSampleIndexOnGOPStart + pe.ref_frame_count) * this._frameDuration : 0, this._vSample.cts = this._vSample.pts - this._vSample.dts, this._vSample.pts > this._lastPTS && (this._lastPTS = this._vSample.pts), this._vSample.key = !!h.key_frame, this._vSample.poc = Le, this._vSample.key && this._evt.emit(o.a.KEY_FRAME)));\n break;\n case J.H264_NAL_AUD:\n break;\n case J.H264_NAL_SPS:\n var Ge = Ht.parse(c);\n Ge && (O.ps.sps && !Object(q.b)(O.ps.sps.data, Ge.data) && (this._psUpdated = !0), O.ps.spsList[Ge.sps_id] = Ge), T.decConf && this._remux(), T.decConf = void 0;\n break;\n case J.H264_NAL_PPS:\n var Qe = ee.parse(c);\n Qe && (O.ps.pps && !Object(q.b)(O.ps.pps.data, Qe.data) && (this._psUpdated = !0), O.ps.ppsList[Qe.pps_id] = Qe), T.decConf && this._remux(), T.decConf = void 0;\n }\n }\n }, y._parseHEVCNalu = function(c) {\n var h = this._codecParserContext, T = this._videoTrack;\n if (h && T) {\n var O, M = h.priv_data;\n h.pict_type = Vt.AV_PICTURE_TYPE_I, h.key_frame = 0, h.picture_structure = Qt.AV_PICTURE_STRUCTURE_UNKNOWN;\n var $ = { type: (126 & c[0]) >> 1, nuh_layer_id: (1 & c[0]) << 5 & c[1] >> 3 & 31, temporal_id: (7 & c[1]) - 1, ref_idc: 0, data: c };\n if (!($.nuh_layer_id > 0))\n switch ($.type) {\n case Oe.a.HEVC_NAL_TRAIL_N:\n case Oe.a.HEVC_NAL_TRAIL_R:\n case Oe.a.HEVC_NAL_TSA_N:\n case Oe.a.HEVC_NAL_TSA_R:\n case Oe.a.HEVC_NAL_STSA_N:\n case Oe.a.HEVC_NAL_STSA_R:\n case Oe.a.HEVC_NAL_BLA_W_LP:\n case Oe.a.HEVC_NAL_BLA_W_RADL:\n case Oe.a.HEVC_NAL_BLA_N_LP:\n case Oe.a.HEVC_NAL_IDR_W_RADL:\n case Oe.a.HEVC_NAL_IDR_N_LP:\n case Oe.a.HEVC_NAL_CRA_NUT:\n case Oe.a.HEVC_NAL_RADL_N:\n case Oe.a.HEVC_NAL_RADL_R:\n case Oe.a.HEVC_NAL_RASL_N:\n case Oe.a.HEVC_NAL_RASL_R:\n if (!T.decConf && (this._psUpdated && this._remuxer.ISGenerated && this._transmuxData && this._remuxer.resetInitSegment(this._transmuxData), bt.updateHEVCTrack(T, M.ps), T.decConf && (this._checkFps(T), this._evt.emit(o.a.VIDEO_CODEC_DETECTED, { codecType: T.codecType || W.b.unknown, enabled: !!T.active, decoder: T.outputRaw ? W.c.wasm : W.c.buildin, bitDepth: T.bitDepth, timeOffset: 0 }), T.fps && (this._frameDuration = T.inputTimescale / T.fps), T.outputRaw))) {\n var X = gt.hevDecoderConfigToSample(M.ps, this._vSample ? this._vSample.dts : 0);\n this._evt.emit(o.a.RAW_DATA, { type: d.c.decoderConfig, samples: z([X], T.inputTimescale), extra: this._transmuxData });\n }\n if ($.gbCtx = rt(Z($.data.subarray(2, $.data.byteLength))), O = this.hevc_parse_slice_header(h, $))\n return O;\n break;\n case Oe.a.HEVC_NAL_AUD:\n break;\n case Oe.a.HEVC_NAL_SEI_PREFIX:\n case Oe.a.HEVC_NAL_SEI_SUFFIX:\n T.decConf ? (this._nextSample(), this._vSample && this._vSample.units.push({ type: Oe.a.HEVC_NAL_SEI_PREFIX, data: c })) : (M.ps.seiList || (M.ps.seiList = []), M.ps.seiList.push({ type: $.type, data: c }));\n break;\n case Oe.a.HEVC_NAL_SPS:\n var de = Ei.parse(c, T.codecType);\n if (de && (M.ps.sps && !Object(q.b)(M.ps.sps.data, de.data) && (this._psUpdated = !0), M.ps.spsList[de.sps_id] = de, M.max_dec_pic_buffering = de.temporal_layer.reduce(function(ae, pe) {\n return Math.max(ae, pe.max_dec_pic_buffering);\n }, 0)), !(T.codecType === W.b.hevc ? bt.onHEVCDetected(T, this._config, this._typeSupported) : bt.onKVCDetected(T, this._config, this._typeSupported)))\n return void this._onError({ type: r.b.MUX_ERROR, details: r.a.REMUX_ERROR, fatal: !0, reason: \"unsupport codec hevc\" });\n T.decConf && this._remux(), T.decConf = void 0;\n break;\n case Oe.a.HEVC_NAL_PPS:\n var be = Ct.parse(c);\n be && (M.ps.pps && !Object(q.b)(M.ps.pps.data, be.data) && (this._psUpdated = !0), M.ps.ppsList[be.pps_id] = be), T.decConf && this._remux(), T.decConf = void 0;\n break;\n case Oe.a.HEVC_NAL_VPS:\n var Q = wi.parse(c);\n Q && (M.ps.vps && !Object(q.b)(M.ps.vps.data, Q.data) && (this._psUpdated = !0), M.ps.vpsList[Q.vps_id] = Q), T.decConf && this._remux(), T.decConf = void 0;\n }\n }\n }, y._nextSample = function() {\n this._videoTrack && this._vSample && this._vSample.units.length && this._vSample.pts !== -1 && (this._videoTrack.samples.push(this._vSample), this._vSampleIndex++, this._vSample = void 0), this._vSample || this._newSample();\n }, y._newSample = function() {\n var c = this._vSampleIndex * this._frameDuration;\n this._vSample = { poc: -1, key: !1, pts: -1, dts: c, cts: 0, units: [], originDTS: c, duration: this._frameDuration };\n }, y.hevc_parse_slice_header = function(c, h) {\n var T = c.priv_data, O = T.ps, M = h.gbCtx;\n if (!M)\n return -1;\n var $, X, de;\n X = G(M, 1), function(Ue) {\n return Ue.type >= 16 && Ue.type <= 23;\n }(h) && (c.key_frame = 1, Fe(M, 1));\n var be = k(M);\n if (O.pps = O.ppsList[be], O.sps = O.spsList[O.pps.sps_id], O.vps = O.vpsList[O.sps.vps_id], X)\n de = 0;\n else {\n de = O.pps.dependent_slice_segments_enabled_flag ? G(M, 1) : 0;\n var Q = G(M, Math.ceil(Math.log2(O.sps.ctb_width * O.sps.ctb_height)));\n if (Q >= O.sps.ctb_width * O.sps.ctb_height)\n return l.b.i(\"raw-demuxer\", \"Invalid slice segment address: \" + Q + \".\"), -1;\n }\n if (de)\n return 0;\n for ($ = 0; $ < O.pps.num_extra_slice_header_bits; $++)\n Fe(M, 1);\n var ae = k(M);\n if (ae !== Yt.HEVC_SLICE_I && ae !== Yt.HEVC_SLICE_P && ae !== Yt.HEVC_SLICE_B)\n return l.b.i(\"raw-demuxer\", `Unknown slice type: %d.\n`, ae), -1;\n c.pict_type = ae === Yt.HEVC_SLICE_B ? Vt.AV_PICTURE_TYPE_B : ae === Yt.HEVC_SLICE_P ? Vt.AV_PICTURE_TYPE_P : Vt.AV_PICTURE_TYPE_I, O.pps.output_flag_present_flag && Fe(M, 1), O.sps.separate_colour_plane_flag && Fe(M, 2);\n var pe = function(Ue) {\n return Ue.type === Oe.a.HEVC_NAL_IDR_W_RADL || Ue.type === Oe.a.HEVC_NAL_IDR_N_LP;\n }(h);\n if (pe)\n T.poc = 0, this._remux(), this._vSampleIndexOnGOPStart = this._vSampleIndex;\n else {\n var Le = G(M, O.sps.log2_max_poc_lsb);\n T.poc = this.ff_hevc_compute_poc(O.sps, T.pocTid0, Le, h.type);\n }\n return h.temporal_id === 0 && h.type !== Oe.a.HEVC_NAL_TRAIL_N && h.type !== Oe.a.HEVC_NAL_TSA_N && h.type !== Oe.a.HEVC_NAL_STSA_N && h.type !== Oe.a.HEVC_NAL_RADL_N && h.type !== Oe.a.HEVC_NAL_RASL_N && h.type !== Oe.a.HEVC_NAL_RADL_R && h.type !== Oe.a.HEVC_NAL_RASL_R && (T.pocTid0 = T.poc), this._vSample && (this._vSample.poc !== -1 && T.poc !== this._vSample.poc && this._nextSample(), this._vSample.units.push({ type: h.type, data: h.data }), this._vSample.pts === -1 && (this._vSample.pts = this._vSampleIndex ? (T.poc + this._vSampleIndexOnGOPStart + T.max_dec_pic_buffering) * this._frameDuration : 0, this._vSample.cts = this._vSample.pts - this._vSample.dts, this._vSample.pts > this._lastPTS && (this._lastPTS = this._vSample.pts), this._vSample.key = pe, this._vSample.poc = T.poc, this._vSample.key && this._evt.emit(o.a.KEY_FRAME))), 1;\n }, y.ff_hevc_compute_poc = function(c, h, T, O) {\n var M, $ = 1 << c.log2_max_poc_lsb, X = h % $, de = h - X;\n return M = T < X && X - T >= $ / 2 ? de + $ : T > X && T - X > $ / 2 ? de - $ : de, O !== Oe.a.HEVC_NAL_BLA_W_LP && O !== Oe.a.HEVC_NAL_BLA_W_RADL && O !== Oe.a.HEVC_NAL_BLA_N_LP || (M = 0), M + T;\n }, y.ff_h264_init_poc = function(c, h, T, O, M) {\n var $ = 1 << h.log2_max_frame_num, X = [];\n if (T.frame_num_offset = T.prev_frame_num_offset, T.frame_num < T.prev_frame_num && (T.frame_num_offset += $), h.pic_order_cnt_type === 0) {\n var de = 1 << h.log2_max_poc_lsb;\n T.prev_poc_lsb < 0 && (T.prev_poc_lsb = T.poc_lsb), T.poc_lsb < T.prev_poc_lsb && T.prev_poc_lsb - T.poc_lsb >= de / 2 ? T.poc_msb = T.prev_poc_msb + de : T.poc_lsb > T.prev_poc_lsb && T.prev_poc_lsb - T.poc_lsb < -de / 2 ? T.poc_msb = T.prev_poc_msb - de : T.poc_msb = T.prev_poc_msb, X[0] = X[1] = T.poc_msb + T.poc_lsb, O === Qt.AV_PICTURE_STRUCTURE_FRAME && (X[1] += T.delta_poc_bottom);\n } else if (h.pic_order_cnt_type === 1) {\n var be, Q, ae, pe;\n for (be = h.num_ref_frames_in_pic_order_cnt_cycle !== 0 ? T.frame_num_offset + T.frame_num : 0, M === 0 && be > 0 && be--, Q = 0, pe = 0; pe < h.num_ref_frames_in_pic_order_cnt_cycle; pe++)\n Q += h.offset_for_ref_frame[pe];\n if (be > 0) {\n var Le = (be - 1) / h.num_ref_frames_in_pic_order_cnt_cycle, Ue = (be - 1) % h.num_ref_frames_in_pic_order_cnt_cycle;\n for (ae = Le * Q, pe = 0; pe <= Ue; pe++)\n ae += h.offset_for_ref_frame[pe];\n } else\n ae = 0;\n M == 0 && (ae += h.offset_for_non_ref_pic), X[0] = ae + T.delta_poc[0], X[1] = X[0] + h.offset_for_top_to_bottom_field, O === Qt.AV_PICTURE_STRUCTURE_FRAME && (X[1] += T.delta_poc[1]);\n } else {\n var He = 2 * (T.frame_num_offset + T.frame_num);\n M || He--, X[0] = He, X[1] = He;\n }\n return O !== Qt.AV_PICTURE_STRUCTURE_BOTTOM_FIELD && (c[0] = X[0]), O !== Qt.AV_PICTURE_STRUCTURE_TOP_FIELD && (c[1] = X[1]), Math.min(c[0], c[1]);\n }, y.scan_mmco_reset = function(c, h) {\n var T = c.priv_data;\n if (!T.ps.pps)\n return -1;\n var O = 3 & c.pict_type, M = 0, $ = [];\n T.ps.pps.redundant_pic_cnt_present && k(h), O === Vt.AV_PICTURE_TYPE_B && G(h, 1);\n var X = { list_count: M };\n if (this.ff_h264_parse_ref_count(X, $, h, T.ps.pps, O, T.picture_structure) < 0)\n return -2;\n if (M = X.list_count, O !== Vt.AV_PICTURE_TYPE_I) {\n for (var de = 0; de < M; de++)\n if (G(h, 1))\n for (var be = 0; ; be++) {\n var Q = k(h);\n if (!(Q < 3)) {\n if (Q > 3)\n return l.b.i(\"raw-demuxer\", `illegal reordering_of_pic_nums_idc %d\n`, Q), -3;\n break;\n }\n if (k(h), be >= $[de])\n return l.b.i(\"raw-demuxer\", `reference count %d overflow\n`, be), -4;\n }\n }\n if ((T.ps.pps.weighted_pred && O === Vt.AV_PICTURE_TYPE_P || T.ps.pps.weighted_bipred_idc === 1 && O == Vt.AV_PICTURE_TYPE_B) && T.ps.sps && this.ff_h264_pred_weight_table(h, T.ps.sps, $, O, { use_weight: 0, use_weight_chroma: 0, luma_log2_weight_denom: 0, chroma_log2_weight_denom: 0, luma_weight_flag: [], chroma_weight_flag: [] }, T.picture_structure), G(h, 1))\n for (var ae = 0; ae < 66; ae++) {\n var pe = k(h);\n if (pe > Xi.MMCO_LONG)\n return l.b.i(\"raw-demuxer\", \"illegal memory management control operation \" + pe), -5;\n if (pe === Xi.MMCO_END)\n return 0;\n if (pe === Xi.MMCO_RESET)\n return 1;\n pe !== Xi.MMCO_SHORT2UNUSED && pe !== Xi.MMCO_SHORT2LONG || k(h), pe !== Xi.MMCO_SHORT2LONG && pe !== Xi.MMCO_LONG2UNUSED && pe !== Xi.MMCO_LONG && pe !== Xi.MMCO_SET_MAX_LONG || k(h);\n }\n return 0;\n }, y.ff_h264_parse_ref_count = function(c, h, T, O, M, $) {\n var X;\n if (h[0] = O.ref_count[0], h[1] = O.ref_count[1], M !== Vt.AV_PICTURE_TYPE_I) {\n var de = [];\n if (de[0] = de[1] = $ === Qt.AV_PICTURE_STRUCTURE_FRAME ? 15 : 31, G(T, 1) && (h[0] = k(T) + 1, M === Vt.AV_PICTURE_TYPE_B ? h[1] = k(T) + 1 : h[1] = 1), X = M === Vt.AV_PICTURE_TYPE_B ? 2 : 1, h[0] - 1 > de[0] || X == 2 && h[1] - 1 > de[1])\n return l.b.i(\"raw-demuxer\", `reference overflow %u > %u or %u > %u\n`, h[0] - 1, de[0], h[1] - 1, de[1]), h[0] = h[1] = 0, c.list_count = 0, h[0] = 0, h[1] = 0, -1;\n h[1] - 1 > de[1] && (l.b.i(\"raw-demuxer\", `reference overflow %u > %u \n`, h[1] - 1, de[1]), h[1] = 0);\n } else\n X = 0, h[0] = h[1] = 0;\n return c.list_count = X, 0;\n }, y.ff_h264_pred_weight_table = function(c, h, T, O, M, $) {\n var X, de;\n for (M.use_weight = 0, M.use_weight_chroma = 0, M.luma_log2_weight_denom = k(c), M.luma_log2_weight_denom > 7 && (l.b.i(\"raw-demuxer\", `luma_log2_weight_denom %d is out of range\n`, M.luma_log2_weight_denom), M.luma_log2_weight_denom = 0), 1 << M.luma_log2_weight_denom, h.chroma_format_idc && (M.chroma_log2_weight_denom = k(c), M.chroma_log2_weight_denom > 7 && (l.b.i(\"raw-demuxer\", `chroma_log2_weight_denom %d is out of range\n`, M.chroma_log2_weight_denom), M.chroma_log2_weight_denom = 0), 1 << M.chroma_log2_weight_denom), X = 0; X < 2; X++) {\n for (M.luma_weight_flag[X] = 0, M.chroma_weight_flag[X] = 0, de = 0; de < T[X]; de++)\n if (G(c, 1) && (F(c), F(c)), h.chroma_format_idc && G(c, 1))\n for (var be = 0; be < 2; be++)\n F(c), F(c);\n if (O !== Vt.AV_PICTURE_TYPE_B)\n break;\n }\n return M.use_weight = M.use_weight || M.use_weight_chroma, 0;\n }, y._checkFps = function(c) {\n (!c.fps || c.fps > R.j) && (c.fps = R.c);\n }, S()(B, null, [{ key: \"probeSize\", get: function() {\n return 4;\n } }]), B;\n }(), Qa = function() {\n function B(c, h) {\n this._decrypter = void 0, this._decryptdata = void 0, this._decryptdata = h, this._decrypter = new _(c, { removePKCS7Padding: !1 });\n }\n var y = B.prototype;\n return y.decryptAacSamples = function(c, h, T) {\n for (; ; h++) {\n if (h >= c.length)\n return void T();\n if (!(c[h].unit.length < 32)) {\n var O = this._decrypter.isSync();\n if (this._decryptAacSample(c, h, T, O), !O)\n return;\n }\n }\n }, y.decryptAvcSamples = function(c, h, T, O) {\n for (; ; h++, T = 0) {\n if (h >= c.length)\n return void O();\n for (var M = c[h].units; !(T >= M.length); T++) {\n var $ = M[T];\n if (!($.length <= 48 || $.type !== 1 && $.type !== 5)) {\n var X = this._decrypter.isSync();\n if (this._decryptAvcSample(c, h, T, O, $, X), !X)\n return;\n }\n }\n }\n }, y._decryptBuffer = function(c, h) {\n this._decryptdata.key && this._decrypter.decrypt(c, this._decryptdata.key.buffer, this._decryptdata.iv.buffer, h);\n }, y._decryptAacSample = function(c, h, T, O) {\n var M = c[h].unit, $ = M.subarray(16, M.length - M.length % 16), X = $.buffer.slice($.byteOffset, $.byteOffset + $.length), de = this;\n this._decryptBuffer(X, function(be) {\n be = new Uint8Array(be), M.set(be, 16), O || de.decryptAacSamples(c, h + 1, T);\n });\n }, y._getAvcEncryptedData = function(c) {\n for (var h = 16 * Math.floor((c.length - 48) / 160) + 16, T = new Uint8Array(h), O = 0, M = 32; M <= c.length - 16; M += 160, O += 16)\n T.set(c.subarray(M, M + 16), O);\n return T;\n }, y._getAvcDecryptedUnit = function(c, h) {\n for (var T = new Uint8Array(h), O = 0, M = 32; M <= c.length - 16; M += 160, O += 16)\n c.set(T.subarray(O, O + 16), M);\n return c;\n }, y._decryptAvcSample = function(c, h, T, O, M, $) {\n var X = Z(M.data), de = this._getAvcEncryptedData(X), be = this;\n this._decryptBuffer(de.buffer, function(Q) {\n M.data = be._getAvcDecryptedUnit(X, Q), $ || be.decryptAvcSamples(c, h, T + 1, O);\n });\n }, B;\n }();\n (function(B) {\n B[B.registration = 5] = \"registration\", B[B.av1 = 95] = \"av1\", B[B.opus = 127] = \"opus\";\n })(ji || (ji = {}));\n var Ja = { 5: function(B, y) {\n U()(B, { descriptor_name: \"registration\", format_identifier: Object(q.a)(y, 0, 4) });\n } };\n function es(B, y) {\n var c = { descriptor_tag: B[y], descriptor_length: B[y + 1] }, h = Ja[c.descriptor_tag];\n return h && h(c, B.subarray(y + 2, y + 2 + c.descriptor_length)), c;\n }\n var mn = function() {\n function B(c, h, T, O) {\n var M = this;\n this._evt = void 0, this._config = void 0, this._typeSupported = void 0, this._remuxer = void 0, this._sampleAes = void 0, this._remuxStat = void 0, this._firstRemux = !0, this._pmtParsed = !1, this._pmtId = -1, this._videoTrack = void 0, this._audioTrack = void 0, this._duration = 0, this._vLastDts = 0, this._aLastDts = 0, this._aacOverFlow = null, this._aacLastPTS = null, this._videoSample = null, this._contiguous = !1, this._timeOffset = 0, this._accurateTimeOffset = !1, this._transmuxData = void 0, this._audioNonMonotonous = 0, this._tsException = { aacOverhead: 0, unknownTSPacketCount: 0 }, this._hevcParamSets = { spsList: [], ppsList: [], vpsList: [] }, this._avcParamSets = { spsList: [], ppsList: [] }, this._av1sh = void 0, this._psUpdated = !1, this._remuxOnFlush = !1, this._av1Ctx = void 0, this._parsePMT = function($, X, de, be) {\n var Q, ae, pe = { audio: -1, video: -1, id3: -1, aCodecType: W.b.unknown, codecType: W.b.h264 };\n for (Q = X + 3 + ((15 & $[X + 1]) << 8 | $[X + 2]) - 4, X += 12 + ((15 & $[X + 10]) << 8 | $[X + 11]); X < Q; ) {\n ae = (31 & $[X + 1]) << 8 | $[X + 2];\n var Le = $[X];\n if (l.b.i(\"ts-demuxer\", \"PMT stream_type: \" + Le), Le === 207 && be || Le === 15)\n pe.audio === -1 && (pe.audio = ae), pe.aCodecType = W.b.aac;\n else if (Le === 21)\n pe.id3 === -1 && (pe.id3 = ae);\n else if (Le === 219 && be || Le === 27)\n pe.video === -1 && (pe.video = ae);\n else if (Le === 3 || Le === 4)\n de.mpeg || de.mp3 ? pe.audio === -1 && (pe.audio = ae) : l.b.i(\"ts-demuxer\", \"MPEG audio found, not supported in this browser for now\"), pe.aCodecType = W.b.mp3;\n else if (Le === 6 || Le >= 128 && Le <= 255) {\n Le >= 128 && Le <= 255 && l.b.i(\"ts-demuxer\", \" PMT User Private: \" + Le);\n var Ue = 4095 & Object(q.e)($, X + 3);\n if (Ue) {\n var He = !1, Ge = !1, Qe = !1, ot = !1, nt = !1;\n M._readDescriptors($, X + 5, Ue).forEach(function(ut) {\n if (ut.descriptor_tag === ji.av1)\n He = !0;\n else if (ut.descriptor_tag !== ji.opus && ut.descriptor_tag === ji.registration) {\n var it = ut.format_identifier;\n it === \"AV01\" && (He = !0), it === \"KVC3\" && (Ge = !0), it === \"KVC4\" && (Qe = !0), it === \"KVC5\" && (ot = !0), it === \"KVC6\" && (nt = !0);\n }\n }), He && (de.av1 ? pe.video === -1 && pe.video === -1 && (pe.video = ae) : l.b.i(\"ts-demuxer\", \"AV1 video found, not supported in this browser for now\"), pe.codecType = W.b.av1), Ge && (pe.codecType = W.b.kvc3, pe.video === -1 && (pe.video = ae)), Qe && (pe.codecType = W.b.kvc4, pe.video === -1 && (pe.video = ae)), ot && (pe.codecType = W.b.kvc5, pe.video === -1 && (pe.video = ae)), nt && (pe.codecType = W.b.kvc6, pe.video === -1 && (pe.video = ae));\n }\n } else\n Le === 36 ? (pe.codecType = W.b.hevc, pe.video === -1 && (pe.video = ae)) : l.b.v(\"unkown stream type:\" + Le);\n X += 5 + ((15 & $[X + 3]) << 8 | $[X + 4]);\n }\n return pe;\n }, this._pushAccesUnit = function($, X) {\n if ($.units.length && $.frame) {\n var de = X.samples, be = de.length;\n (!M._config.forceKeyFrameOnDiscontinuity || $.key === !0 || X.decConf && (be || M._contiguous)) && (M._config.gopRemux && $.key && de && de.length > 1 && M._remuxStat && (M._remuxStat, M._remux()), $.id = M._videoTrack.samples.length, M._videoTrack.samples.push($), $.key && M._evt.emit(o.a.KEY_FRAME, { cts: $.cts / X.inputTimescale, pts: $.pts / X.inputTimescale }));\n }\n }, this._createVSample = function($, X, de) {\n if (M._vLastDts && de - M._vLastDts < 90) {\n var be = X - de;\n X = (de = M._vLastDts + 90) + be;\n }\n return M._vLastDts = de, { key: $, pts: X, dts: de, cts: X - de, units: [], originDTS: de };\n }, this._parseVideoPES = function($, X) {\n if ($.data) {\n var de, be = M._videoTrack, Q = M._videoSample;\n be.codecType === W.b.av1 ? (M._av1Ctx || (M._av1Ctx = K.createCtx()), de = K.parseOBU($.data, M._av1Ctx)) : de = M._readVideoNALu($.data), $.data = null, Q && Q.frame && de.length && !be.audFound && (M._pushAccesUnit(Q, be), Q = M._videoSample = M._createVSample(!1, $.pts, $.dts)), Ce(be.codecType) ? Q = M._parseHEVCNalu(de, $.pts, $.dts) : be.codecType === W.b.h264 ? Q = M._parseAVCNalu(de, $.pts, $.dts) : be.codecType === W.b.av1 && (Q || (Q = M._videoSample = M._createVSample(!1, $.pts, $.dts)), de.forEach(function(ae) {\n var pe;\n if (ae.obu_type === D.AV1_OBU_SEQUENCE_HEADER) {\n var Le = ae.content;\n Le && M._av1sh && !Object(q.b)(M._av1sh.data, Le.data) && be.decConf && (M._remuxByStat(!0), M._remuxer.ISGenerated && M._transmuxData && M._remuxer.resetInitSegment(M._transmuxData)), M._av1sh = Le, bt.updateAV1Track(be, Le);\n }\n Q.frame = Q.frame || ae.obu_type === D.AV1_OBU_FRAME || ae.obu_type === D.AV1_OBU_FRAME_HEADER, Q.key = Q.key || !((pe = ae.content) == null || !pe.keyframe), Q.units.push({ type: 0, data: ae.data });\n })), X && Q && (M._pushAccesUnit(Q, be), M._videoSample = null);\n }\n }, this._parseMPEGPES = function($) {\n if ($.data) {\n var X = $.data, de = M._audioTrack, be = X.length, Q = 0, ae = 0, pe = $.pts;\n if (pe !== void 0)\n for (; ae < be; )\n if (we(X, ae)) {\n var Le = H(de, X, ae, pe, Q);\n if (!Le)\n break;\n ae += Le.length, Q++;\n } else\n ae++;\n else\n l.b.w(\"[tsdemuxer]: MPEG PES unknown PTS\");\n }\n }, this._parseAACPES = function($) {\n var X;\n if ($.data) {\n var de, be, Q, ae, pe, Le, Ue = M._audioTrack, He = M._aacLastPTS, Ge = $.data, Qe = $.pts, ot = M._aacOverFlow, nt = null;\n if (M._aLastDts = $.dts, ot) {\n var ut = new Uint8Array(ot.byteLength + Ge.byteLength);\n ut.set(ot, 0), ut.set(Ge, ot.byteLength), Ge = ut;\n }\n for (Q = 0, ae = Ge.length; Q < ae - 1 && !ve.f(Ge, Q); Q++)\n ;\n if (Q && (Q < ae - 1 ? (pe = \"AAC PES did not start with ADTS header,offset:\" + Q, Le = !1) : (pe = \"no ADTS header found in AAC PES\", Le = !0), l.b.w(\"parsing error:\" + pe), M._onError({ type: r.b.MUX_ERROR, details: r.a.PARSING_ERROR, fatal: Le, reason: pe }), Le))\n return;\n var it = Ge.subarray(Q + 2, Q + 4);\n if ((ve.g(Ue, it) || !Ue.configParsed) && M._remuxer.ISGenerated && M._transmuxData && M._remuxer.resetInitSegment(M._transmuxData), ve.d(Ue, M._evt, it, d.a.ADTS, (X = M._transmuxData) == null ? void 0 : X.audioCodec), be = 0, de = ve.c(Ue.samplerate, Ue.inputTimescale), He && (M._audioNonMonotonous || (M._audioNonMonotonous = Qe < He ? 1 : 0), M._audioNonMonotonous || ot)) {\n var Ft = He + de;\n Math.abs(Ft - Qe) > 1 && (l.b.v(\"AAC: align PTS for overlapping frames by \" + Math.round((Ft - Qe) / 90)), Qe = Ft);\n }\n for (; Q < ae; )\n if (ve.f(Ge, Q) && Q + 5 < ae) {\n var Lt = ve.a(Ue, Ge, Q, Qe, be);\n if (!Lt) {\n Q++;\n break;\n }\n Q += Lt.length, nt = Lt.sample.pts, Lt.sample.originDTS = $.pts, be++;\n } else\n Q++;\n be > 1 && (M._tsException.aacOverhead = 1), ot = Q < ae ? Ge.subarray(Q, ae) : null, M._aacOverFlow = ot, M._aacLastPTS = nt;\n }\n }, this._onError = function($) {\n M._evt.emit(o.a.ERROR, $);\n }, this._evt = c, this._config = T, this._typeSupported = O, this._remuxer = h, this._sampleAes = null, this._remuxStat = null;\n }\n var y = B.prototype;\n return y.setDecryptData = function(c) {\n c && c.key && c.method === \"SAMPLE-AES\" ? this._sampleAes = new Qa(this._config, c) : this._sampleAes = null;\n }, B.probe = function(c) {\n var h = B.syncOffset(c);\n return !(h < 0) && (h && l.b.w(\"MPEG2-TS detected but first sync word found @ offset \" + h + \", junk ahead ?\"), !0);\n }, B.syncOffset = function(c) {\n for (var h = Math.min(1e3, c.length - 564), T = 0; T < h; ) {\n if (c[T] === 71 && c[T + 188] === 71 && c[T + 376] === 71)\n return T;\n T++;\n }\n return -1;\n }, B.createTrack = function(c, h) {\n if (c === W.l.AUDIO)\n return Object(me.a)(h, R.l);\n var T = Object(me.b)(h, R.l);\n return T.audFound = !1, T.naluState = 0, T;\n }, y.resetInitSegment = function(c) {\n this._pmtParsed = !1, this._pmtId = -1, this._videoTrack = B.createTrack(W.l.VIDEO, c.duration), this._audioTrack = B.createTrack(W.l.AUDIO, c.duration), this._aacOverFlow = null, this._aacLastPTS = null, this._videoSample = null, this._duration = c.duration, this._vLastDts = 0, this._aLastDts = 0, this._audioNonMonotonous = 0, this._tsException.aacOverhead = 0, this._remuxStat = null, this._transmuxData = c, this._transmuxData.stat = this._tsException, this._firstRemux = !0;\n }, y.resetTimeStamp = function() {\n }, y.append = function(c, h, T, O, M) {\n M === void 0 && (M = !1), this._contiguous = T, this._timeOffset = h, this._accurateTimeOffset = O, this._remuxStat === null && (this._remuxStat = { timeOffset: h, contiguous: T, accurateTimeOffset: O }), this._remuxStat;\n var $, X, de, be, Q, ae = this._videoTrack, pe = this._audioTrack, Le = this._parsePAT, Ue = this._parsePMT, He = this._parsePES, Ge = this._parseVideoPES, Qe = this._parseAACPES, ot = this._parseMPEGPES, nt = c.length;\n this._pmtParsed;\n var ut = ae.pid, it = pe.pid, Ft = this._pmtId, Lt = ae.pesData, dt = pe.pesData;\n if (!c.byteLength && M)\n return this.flush(), void this._onParsed();\n for (nt -= (nt + 0) % 188, $ = 0; $ < nt; $ += 188)\n if (c[$] === 71) {\n if (X = !!(64 & c[$ + 1]), de = ((31 & c[$ + 1]) << 8) + c[$ + 2], (48 & c[$ + 3]) >> 4 > 1) {\n if ((be = $ + 5 + c[$ + 4]) === $ + 188)\n continue;\n } else\n be = $ + 4;\n switch (de) {\n case ut:\n X && (Lt && (Q = He(Lt, !0)) && Q.pts !== void 0 && Ge(Q, !1), Lt = { data: [], size: 0 }), Lt && (Lt.data.push(c.subarray(be, $ + 188)), Lt.size += $ + 188 - be);\n break;\n case it:\n X && (dt && (Q = He(dt)) && Q.pts !== void 0 && (pe.codecType === W.b.aac ? Qe(Q) : ot(Q)), dt = { data: [], size: 0 }), dt && (dt.data.push(c.subarray(be, $ + 188)), dt.size += $ + 188 - be);\n break;\n case 0:\n X && (be += c[be] + 1), Ft = this._pmtId = Le(c, be);\n break;\n case Ft:\n X && (be += c[be] + 1);\n var jt = Ue(c, be, this._typeSupported, this._sampleAes !== null);\n if (jt.video < 0 && jt.audio < 0)\n return void this._onError({ type: r.b.MUX_ERROR, details: r.a.PARSING_ERROR, fatal: !0, reason: \"no track found\" });\n if (!this._pmtParsed) {\n var li = {};\n this._duration && (li.duration = this._duration), this._evt.emit(o.a.METADATA, li);\n }\n if (jt.video > 0) {\n var Ri = typeof ae.active != \"boolean\" || ae.active;\n !Ce(ae.codecType) && Ce(jt.codecType) ? Ri = jt.codecType === W.b.hevc ? bt.onHEVCDetected(ae, this._config, this._typeSupported) : bt.onKVCDetected(ae, this._config, this._typeSupported) : (ae.codecType !== W.b.h264 && jt.codecType === W.b.h264 || ae.codecType !== W.b.av1 && jt.codecType === W.b.av1) && this._videoTrack.outputRaw && (this._remux(!0), this._remuxer.ISGenerated && this._transmuxData && this._remuxer.resetInitSegment(this._transmuxData), this._videoTrack.outputRaw = !1), ae.pid = ut = Ri ? jt.video : -1, ae.active = Ri, ae.codecType = jt.codecType;\n }\n (it = jt.audio) > 0 && (pe.pid = it, pe.active = !0, pe.codecType = jt.aCodecType), this._pmtParsed = !0;\n break;\n case 17:\n case 8191:\n break;\n default:\n this._tsException.unknownTSPacketCount ? this._tsException.unknownTSPacketCount++ : this._tsException.unknownTSPacketCount = 1;\n }\n } else\n this._onError({ type: r.b.MUX_ERROR, details: r.a.PARSING_ERROR, fatal: !1, reason: \"TS packet did not start with 0x47\" });\n Lt && (Q = He(Lt, M)) && Q.pts !== void 0 ? (Ge(Q, M), ae.pesData = void 0) : (this._videoSample && M && (this._pushAccesUnit(this._videoSample, ae), this._videoSample = null), ae.pesData = Lt), dt && (Q = He(dt)) && Q.pts !== void 0 ? (pe.codecType === W.b.aac ? Qe(Q) : ot(Q), pe.pesData = void 0) : (dt && dt.size, pe.pesData = dt), (it > 0 && pe.samples.length === 0 || ut > 0 && ae.samples.length === 0 || ut <= 0 && it <= 0) && !M || (!M && this._config.gopRemux || this._remux(M), M && this._onParsed());\n }, y._onParsed = function() {\n this._evt.emit(o.a.PARSED_DATA, { extra: this._transmuxData });\n }, y._flushPES = function() {\n var c, h = this._videoTrack, T = this._audioTrack;\n h.pesData && (c = this._parsePES(h.pesData, !0)) && c.pts !== void 0 && this._parseVideoPES(c, !0), h.pesData = void 0, T.pesData && (c = this._parsePES(T.pesData)) && c.pts !== void 0 && (T.codecType === W.b.aac ? this._parseAACPES(c) : this._parseMPEGPES(c)), T.pesData = void 0;\n }, y.flush = function() {\n l.b.i(\"ts-demuxer\", \"flush\"), this._flushPES(), this._remux(!0), this._videoSample = null, this._remuxStat = null;\n }, y.updateConfig = function(c) {\n U()(this._config, c);\n }, y._remuxByStat = function(c) {\n c === void 0 && (c = !1), this._remuxStat && this._remux(c);\n }, y._remux = function(c) {\n var h;\n c === void 0 && (c = !1);\n var T = this._audioTrack, O = this._videoTrack;\n if (c) {\n if (O.samples.length == 0 && T.samples.length === 0)\n return void this._remuxer.flush();\n } else if (O.active && O.samples.length < 3 || T.active && T.samples.length === 0)\n return;\n if (!this._remuxOnFlush || c) {\n (h = this._transmuxData) != null && h.stat && (this._transmuxData.stat.audioNonMonotonous = this._audioNonMonotonous);\n var M = !0, $ = 0, X = !1;\n this._remuxStat && (M = this._remuxStat.contiguous, $ = this._remuxStat.timeOffset, X = this._remuxStat.accurateTimeOffset), this._firstRemux && (this._firstRemux = !1, this._evt.emit(o.a.MEDIA_DEMUX, { type: d.b.TS })), this._sampleAes ? this._decryptAndRemux(T, O, $, M, X, c) : this._remuxer.remux(T, O, $, M, X, c), this._remuxStat = null;\n }\n }, y._decryptAndRemux = function(c, h, T, O, M, $) {\n if ($ === void 0 && ($ = !1), c.samples && this._sampleAes) {\n var X = this;\n this._sampleAes.decryptAacSamples(c.samples, 0, function() {\n X._decryptAndRemuxAvc(c, h, T, O, M, $);\n });\n } else\n this._decryptAndRemuxAvc(c, h, T, O, M, $);\n }, y._decryptAndRemuxAvc = function(c, h, T, O, M, $) {\n if ($ === void 0 && ($ = !1), h.samples && this._sampleAes) {\n var X = this;\n this._sampleAes.decryptAvcSamples(h.samples, 0, 0, function() {\n X._remuxer.remux(c, h, T, O, M, $);\n });\n } else\n this._remuxer.remux(c, h, T, O, M, $);\n }, y.destroy = function() {\n this._duration = 0;\n }, y._parsePAT = function(c, h) {\n return (31 & c[h + 10]) << 8 | c[h + 11];\n }, y._readDescriptors = function(c, h, T) {\n for (var O = T ? h + T : c.byteLength, M = []; O - h > 2; ) {\n var $ = es(c, h);\n M.push($), h += 2 + $.descriptor_length;\n }\n return M;\n }, y._checkRegistrationDescriptors = function(c, h, T) {\n var O = c[h];\n return h += 2, O === 5 && c.length >= h + 4 ? Object(q.a)(c, h, 4) : \"\";\n }, y._parsePES = function(c, h) {\n h === void 0 && (h = !1);\n var T, O, M, $, X, de, be = c.data, Q = 0, ae = 0, pe = 0;\n if (!c || c.size === 0)\n return null;\n for (; be[0].length < 19 && be.length > 1; ) {\n var Le = new Uint8Array(be[0].length + be[1].length);\n Le.set(be[0]), Le.set(be[1], be[0].length), be[0] = Le, be.splice(1, 1);\n }\n if (((T = be[0])[0] << 16) + (T[1] << 8) + T[2] === 1) {\n if ((M = (T[4] << 8) + T[5]) && M > c.size - 6 || M === 0 && !h)\n return null;\n 192 & (O = T[7]) && ((ae = 536870912 * (14 & T[9]) + 4194304 * (255 & T[10]) + 16384 * (254 & T[11]) + 128 * (255 & T[12]) + (254 & T[13]) / 2) > 4294967295 && (ae -= 8589934592), 64 & O ? ((pe = 536870912 * (14 & T[14]) + 4194304 * (255 & T[15]) + 16384 * (254 & T[16]) + 128 * (255 & T[17]) + (254 & T[18]) / 2) > 4294967295 && (pe -= 8589934592), ae - pe > 60 * R.l && (l.b.w(Math.round((ae - pe) / R.l) + \"s delta between PTS and DTS, align them\"), ae = pe)) : pe = ae), de = ($ = T[8]) + 9, c.size -= de, X = new Uint8Array(c.size);\n for (var Ue = 0, He = be.length; Ue < He; Ue++) {\n var Ge = (T = be[Ue]).byteLength;\n if (de) {\n if (de > Ge) {\n de -= Ge;\n continue;\n }\n T = T.subarray(de), Ge -= de, de = 0;\n }\n X.set(T, Q), Q += Ge;\n }\n return M && (M -= $ + 3), { data: X, pts: ae, dts: pe, len: M };\n }\n return null;\n }, y._parseHEVCNalu = function(c, h, T) {\n var O, M = this, $ = this._videoTrack, X = this._hevcParamSets, de = this._videoSample;\n return c.forEach(function(be) {\n var Q;\n switch (be.type) {\n case Oe.a.HEVC_NAL_IDR_W_RADL:\n case Oe.a.HEVC_NAL_IDR_N_LP:\n case Oe.a.HEVC_NAL_CRA_NUT:\n M._checkParamSets(), O = !0, de || (de = M._videoSample = M._createVSample(!1, h, T)), de.key = !0, de.frame = !0;\n break;\n case Oe.a.HEVC_NAL_AUD:\n O = !1, $.audFound = !0, de && M._pushAccesUnit(de, $), de = M._videoSample = M._createVSample(!1, h, T);\n break;\n case Oe.a.HEVC_NAL_SPS:\n O = !0;\n var ae = Ei.parse(be.data, $.codecType);\n X.sps && !Object(q.b)(X.sps.data, ae.data) && (M._psUpdated = !0), X.spsList[ae.sps_id] = ae, X.sps = ae;\n break;\n case Oe.a.HEVC_NAL_PPS:\n O = !0;\n var pe = Ct.parse(be.data);\n X.pps && !Object(q.b)(X.pps.data, pe.data) && (M._psUpdated = !0), X.ppsList[pe.pps_id] = pe, X.pps = pe;\n break;\n case Oe.a.HEVC_NAL_VPS:\n O = !0;\n var Le = wi.parse(be.data);\n X.vps && !Object(q.b)(X.vps.data, Le.data) && (M._psUpdated = !0), X.vpsList[Le.vps_id] = Le, X.vps = Le;\n break;\n default:\n if (M._checkParamSets(), O = !0, be.type === void 0) {\n O = !1;\n break;\n }\n de || (de = M._videoSample = M._createVSample(!0, h, T)), de.frame = !0;\n }\n de && O && ((Q = de.units) == null || Q.push(be));\n }), de;\n }, y._parseAVCNalu = function(c, h, T) {\n var O, M = this, $ = this._videoTrack, X = this._avcParamSets, de = this._videoSample, be = !1;\n c.forEach(function(Q) {\n var ae;\n switch (Q.type) {\n case J.H264_NAL_SLICE:\n M._checkParamSets(), O = !0, de || (de = M._videoSample = M._createVSample(!0, h, T)), de.frame = !0;\n var pe = Q.data;\n if (be && pe.length > 4) {\n var Le = rt(pe);\n Fe(Le, 8), k(Le);\n var Ue = k(Le);\n Ue !== 2 && Ue !== 4 && Ue !== 7 && Ue !== 9 || (de.key = !0);\n }\n break;\n case J.H264_NAL_IDR_SLICE:\n M._checkParamSets(), O = !0, de || (de = M._videoSample = M._createVSample(!0, h, T)), de.key = !0, de.frame = !0;\n break;\n case J.H264_NAL_SEI:\n O = !0;\n break;\n case J.H264_NAL_SPS:\n O = !0, be = !0;\n var He = Ht.parse(Q.data);\n X.sps && !Object(q.b)(X.sps.data, He.data) && (M._psUpdated = !0), X.spsList[He.sps_id] = He, X.sps = He;\n break;\n case J.H264_NAL_PPS:\n O = !0;\n var Ge = ee.parse(Q.data);\n X.pps && !Object(q.b)(X.pps.data, Ge.data) && (M._psUpdated = !0), X.ppsList[Ge.pps_id] = Ge, X.pps = Ge;\n break;\n case J.H264_NAL_AUD:\n O = !1, $.audFound = !0, de && M._pushAccesUnit(de, $), de = M._videoSample = M._createVSample(!1, h, T);\n break;\n case J.H264_NAL_FILLER_DATA:\n default:\n O = !1;\n }\n de && O && ((ae = de.units) == null || ae.push(Q));\n });\n }, y._checkParamSets = function() {\n var c, h = this._videoTrack;\n h.decConf && this._psUpdated && (this._remuxByStat(!0), this._remuxer.ISGenerated && this._transmuxData && this._remuxer.resetInitSegment(this._transmuxData));\n var T = !1;\n h.decConf && !this._psUpdated || (h.codecType === W.b.h264 ? this._avcParamSets.spsList.length && this._avcParamSets.ppsList.length && (bt.updateAVCTrack(h, this._avcParamSets), T = !0) : this._hevcParamSets.spsList.length && this._hevcParamSets.ppsList.length && this._hevcParamSets.vpsList.length && (bt.updateHEVCTrack(h, this._hevcParamSets), T = !0)), T && this._evt.emit(o.a.VIDEO_CODEC_DETECTED, { enabled: !!h.active, decoder: h.outputRaw ? W.c.wasm : W.c.buildin, codecType: h.codecType || W.b.unknown, bitDepth: h.bitDepth, timeOffset: ((c = this._remuxStat) == null ? void 0 : c.timeOffset) || 0 }), this._psUpdated = !1;\n }, y._getLastNalUnit = function() {\n var c, h = this._videoSample;\n if (!h || h.units.length === 0) {\n var T = this._videoTrack.samples;\n h = T[T.length - 1];\n }\n if (h) {\n var O = h.units;\n c = O[O.length - 1];\n }\n return c;\n }, y._readVideoNALu = function(c) {\n var h, T, O, M, $ = this._videoTrack, X = c.byteLength, de = X, be = [], Q = 0, ae = 0, pe = $.naluState || 0, Le = -1, Ue = pe;\n if (pe === -1)\n Le = 0, M = Ce($.codecType) ? (126 & c[0]) >> 1 : 31 & c[0], pe = 0, Q = 1;\n else if (pe > 0)\n for (; ae < 4; ae++) {\n var He = c[ae];\n if (He !== 0) {\n if (He === 1 && pe >= 2) {\n Le = ae + 1, M = Ce($.codecType) ? (126 & c[Le]) >> 1 : 31 & c[Le], pe = 0;\n var Ge = this._getLastNalUnit();\n Ge && Ue && ae <= 4 - Ue && Ge.state && (Ge.data = Ge.data.subarray(0, Ge.data.byteLength - Ue));\n break;\n }\n ae < X && (pe = 0);\n break;\n }\n pe++, Q = ae + 1;\n }\n for (; Q < de; )\n if ((h = c[Q + 2]) === 1)\n if (c[Q] === 0 && c[Q + 1] === 0) {\n if (pe = Q > 0 && c[Q - 1] === 0 ? 3 : 2, Q += 3, Le >= 0)\n O = { data: c.subarray(Le, Q - pe - 1), type: M }, be.push(O);\n else {\n var Qe = this._getLastNalUnit();\n if (Qe && (T = Q - pe - 1) > 0) {\n var ot = new Uint8Array(Qe.data.byteLength + T);\n ot.set(Qe.data, 0), ot.set(c.subarray(0, T), Qe.data.byteLength), Qe.data = ot;\n }\n }\n Q < X ? (Le = Q, M = Ce($.codecType) ? (126 & c[Q]) >> 1 : 31 & c[Q], pe = 0) : pe = -1;\n } else\n Q += 3;\n else\n h === 0 ? Q++ : Q += 3;\n for (var nt = X - 1; nt > X - 4 && nt >= ae && c[nt] === 0; nt--)\n pe++;\n if (Le >= 0 && pe >= 0 && Le < X && (O = { data: c.subarray(Le, X), type: M, state: pe }, be.push(O)), be.length === 0) {\n var ut = this._getLastNalUnit();\n if (ut) {\n var it = new Uint8Array(ut.data.byteLength + c.byteLength);\n it.set(ut.data, 0), it.set(c, ut.data.byteLength), ut.data = it;\n }\n }\n return $.naluState = pe, be;\n }, S()(B, [{ key: \"minChunkSize\", get: function() {\n return 188;\n } }, { key: \"encryptedChunkSize\", get: function() {\n return 752;\n } }], [{ key: \"probeSize\", get: function() {\n return 752;\n } }]), B;\n }(), Un = function() {\n function B(c, h, T, O) {\n this._evt = void 0, this._config = void 0, this._vendor = void 0, this._typeSupported = void 0, this._decrypter = void 0, this._nextIV = null, this._cache = new m.a(), this._probe = void 0, this._muxConfig = [], this._demuxer = void 0, this._remuxer = void 0, this._stat = void 0, this._minChunkSize = 0, this._evt = c, this._typeSupported = h, this._config = T, this._vendor = O, Wt && this._muxConfig.push({ Demux: Wt, Remux: p.b, type: d.b.FLV }), mn && this._muxConfig.push({ Demux: mn, Remux: p.b, type: d.b.TS }), Ea && this._muxConfig.push({ Demux: Ea, Remux: p.b, type: d.b.MP4 }), jr && this._muxConfig.push({ Demux: jr, Remux: p.b, type: d.b.RAW }), Fi && this._muxConfig.push({ Demux: Fi, Remux: p.b, type: d.b.IVF }), this._minChunkSize = this._muxConfig.reduce(function(M, $) {\n return Math.max($.Demux.probeSize, M);\n }, 0);\n }\n var y = B.prototype;\n return y.push = function(c, h, T, O, M, $, X, de, be, Q) {\n var ae = this, pe = c;\n if ((X || $) && this._cache.clear(), Q.progress && this._minChunkSize)\n if (this._cache.put(c), be)\n pe = this._cache.get(this._cache.unreadLen);\n else {\n var Le = Math.floor(this._cache.unreadLen / this._minChunkSize) * this._minChunkSize;\n if (!(Le >= this._minChunkSize))\n return void (this._stat || (this._stat = { contiguous: M, trackSwitch: $, discontinuity: X, accurateTimeOffset: de }));\n pe = this._cache.get(Le);\n }\n else\n this._cache.unreadLen && (this._cache.put(c), pe = this._cache.get(this._cache.unreadLen));\n if (pe)\n if (c = pe, this._stat && (M = this._stat.contiguous, $ = this._stat.trackSwitch, X = this._stat.discontinuity, de = this._stat.accurateTimeOffset, this._stat = void 0), c.byteLength > 0 && h && h.key && h.method === \"AES-128\") {\n var Ue = this._decrypter;\n !Ue && mn && _ && (Ue = this._decrypter = new _(this._config, { removePKCS7Padding: be })), X && (this._nextIV = null);\n var He = this._nextIV ? this._nextIV : h.iv;\n if (!Ue)\n return;\n Ue.decrypt(c, h.key.buffer, He.buffer, function(Ge) {\n be ? ae._nextIV = null : (ae._nextIV = new Uint8Array(16), ae._nextIV.set(c.subarray(c.byteLength - 16), 0)), ae._pushDecrypted(new Uint8Array(Ge), h, T, O, M, $, X, de, be, Q);\n });\n } else\n h && be && (this._nextIV = null), this._pushDecrypted(c, h, T, O, M, $, X, de, be, Q);\n }, y.flush = function() {\n this._demuxer && this._demuxer.flush(), this._cache.clear();\n }, y.end = function() {\n this._evt.emit(o.a.LOAD_END);\n }, y.updateConfig = function(c) {\n var h;\n l.b.i(\"demuxer-inline\", \"update config\", c), (h = this._demuxer) == null || h.updateConfig(c);\n }, y._probeData = function(c, h, T, O) {\n if (!this._demuxer || h && this._probe && !this._probe(c)) {\n for (var M = this._evt, $ = this._typeSupported, X = this._config, de = 0, be = this._muxConfig.length; de < be; de++) {\n var Q = this._muxConfig[de], ae = Q.Demux.probe;\n if (ae(c)) {\n this._remuxer = new Q.Remux(M, X, $, this._vendor), this._demuxer = new Q.Demux(M, this._remuxer, X, $), this._evt.emit(o.a.DEMUXER_DETECTED, { type: Q.type }), this._probe = ae;\n break;\n }\n }\n if (!this._demuxer)\n return void this._evt.emit(o.a.ERROR, { type: r.b.MUX_ERROR, details: r.a.DEMUX_NOT_FOUND, fatal: !0, reason: \"no demux matching with content found\" });\n }\n }, y._pushDecrypted = function(c, h, T, O, M, $, X, de, be, Q) {\n this._demuxer || this._probeData(c, !0, T, Q);\n var ae = this._demuxer, pe = this._remuxer;\n pe && ae && (this._minChunkSize = h ? ae.encryptedChunkSize || 16 : ae.minChunkSize || 0, ($ || X) && (ae.resetInitSegment(Q, T), pe.resetInitSegment(Q)), X && (ae.resetTimeStamp(), pe.resetTimeStamp()), h && ae.hasOwnProperty(\"setDecryptData\") && ae.setDecryptData(h), ae.append(c, O, M, de, be));\n }, B;\n }();\n e.a = Un;\n}, function(t, e, i) {\n var r, o = i(6), l = i(4), v = i(1), E = i(7), C = i(17), x = i(0), g = i(11), D = i(2), _ = function() {\n function je(H) {\n this._module = void 0, this._libde265 = void 0, this._waitingData = !1, this._evt = void 0, this._ctx = void 0, this._more = void 0, this._stridePtr = void 0, this._chromaStridePtr = void 0, this._threads = 0, this._evt = H;\n }\n var ke = je.prototype;\n return ke.init = function(H, ie, ye) {\n var we = this;\n this._threads = ye;\n var J = H.js.data, le = H.jsw ? H.jsw.data : \"\", me = new Function(J + \" return KwaiDec265;\")(), he = le ? new Blob([J], { type: \"text/javascript\" }) : \"\", re = new Blob([le], { type: \"text/javascript\" });\n return me({ wasmBinary: H.wasm.data, mainScriptUrlOrBlob: he, locateFile: function(Se) {\n return Se.indexOf(\".worker.js\") !== -1 ? URL.createObjectURL(re) : \"\";\n } }).then(function(Se) {\n we._module = Se, we._stridePtr = we._module._malloc(4), we._chromaStridePtr = we._module._malloc(4), we._cwrapLibde265Fun(), we._initDecoder();\n });\n }, ke.flush = function() {\n return this._libde265.de265_flush_data(this._ctx);\n }, ke.free = function() {\n this._libde265.de265_free_decoder(this._ctx), this._ctx = void 0, this._module._free(this._more), this._more = void 0;\n }, ke.rebuild = function() {\n this._waitingData = !1, this._libde265.de265_free_decoder(this._ctx), this._module.setValue(this._more, 0, \"i16\"), this._newDecoder();\n }, ke.reset = function() {\n this._libde265.de265_reset(this._ctx), this._waitingData = !1;\n }, ke.pushData = function(H, ie) {\n var ye = this._libde265.de265_push_data(this._ctx, H, H.length, ie || 0, 0);\n this._libde265.de265_isOK(ye) && this._waitingData && this._decode();\n }, ke.pushNalus = function(H, ie) {\n var ye = this;\n H.forEach(function(we) {\n ye._libde265.de265_push_NAL(ye._ctx, we.data, we.data.length, ie || 0, 0), ye._libde265.de265_push_end_of_NAL(ye._ctx);\n }), this._waitingData && this._decode();\n }, ke.getPendingNALNumber = function() {\n return this._libde265.de265_get_number_of_NAL_units_pending(this._ctx);\n }, ke.endOfFrame = function() {\n this._libde265.de265_push_end_of_frame(this._ctx);\n }, ke.nextFrame = function() {\n this._waitingData || this._decode();\n }, ke.isWaitingData = function() {\n return this._waitingData;\n }, ke._decode = function() {\n if (this._module) {\n this._module.setValue(this._more, 1, \"i16\");\n for (var H = 0; this._module.getValue(this._more, \"i16\") !== 0; ) {\n var ie = performance.now();\n if (H = this._libde265.de265_decode(this._ctx, this._more), !this._libde265.de265_isOK(H)) {\n this._module.setValue(this._module, 0, \"i16\");\n break;\n }\n this._waitingData = !1;\n var ye = this._libde265.de265_get_next_picture(this._ctx);\n if (ye) {\n this._evt.emit(v.a.DECODER_FRAME, { frame: this._getImage(ye), startTime: ie });\n break;\n }\n }\n switch (H) {\n case this._libde265.DE265_ERROR_WAITING_FOR_INPUT_DATA:\n this._waitingData = !0;\n }\n }\n }, ke._initDecoder = function() {\n this._more = this._module._malloc(2), this._newDecoder(), this._decode();\n }, ke._newDecoder = function() {\n this._ctx = this._libde265.de265_new_decoder(), this._threads > 1 && this._libde265.de265_start_worker_threads(this._ctx, this._threads), this._disableFilters(!0);\n }, ke._disableFilters = function(H) {\n this._libde265.de265_set_parameter_bool(this._ctx, this._libde265.DE265_DECODER_PARAM_DISABLE_DEBLOCKING, H), this._libde265.de265_set_parameter_bool(this._ctx, this._libde265.DE265_DECODER_PARAM_DISABLE_SAO, H);\n }, ke._getImage = function(H) {\n var ie = this._libde265.de265_get_image_width(H, 0), ye = this._libde265.de265_get_image_height(H, 0), we = this._libde265.de265_get_image_width(H, 1), J = this._libde265.de265_get_image_height(H, 1), le = this._libde265.de265_get_chroma_format(H), me = this._libde265.de265_get_bits_per_pixel(H, 0), he = this._libde265.de265_get_bits_per_pixel(H, 1), re = this._libde265.de265_get_image_plane(H, 0, this._stridePtr), Se = this._libde265.de265_get_image_plane(H, 1, this._chromaStridePtr), Pe = this._libde265.de265_get_image_plane(H, 2), Xe = this._module.getValue(this._stridePtr, \"i32\"), Oe = this._module.getValue(this._chromaStridePtr, \"i32\"), st = this._module.HEAPU8.subarray(re, re + Xe * ye), ze = this._module.HEAPU8.subarray(Se, Se + Oe * J), rt = this._module.HEAPU8.subarray(Pe, Pe + Oe * J);\n return { format: { width: ie, height: ye, chroma: le, chromaWidth: we, chromaHeight: J, cropLeft: 0, cropTop: 0, cropWidth: ie, cropHeight: ye, displayWidth: 0, displayHeight: 0, pts: this._libde265.de265_get_image_PTS(H, 0) }, y: { bytes: st, stride: Xe, bits: me }, u: { bytes: ze, stride: Oe, bits: he }, v: { bytes: rt, stride: Oe, bits: he } };\n }, ke._cwrapLibde265Fun = function() {\n this._libde265 = { DE265_OK: 0, DE265_ERROR_NO_SUCH_FILE: 1, DE265_ERROR_EOF: 3, DE265_ERROR_COEFFICIENT_OUT_OF_IMAGE_BOUNDS: 4, DE265_ERROR_CHECKSUM_MISMATCH: 5, DE265_ERROR_CTB_OUTSIDE_IMAGE_AREA: 6, DE265_ERROR_OUT_OF_MEMORY: 7, DE265_ERROR_CODED_PARAMETER_OUT_OF_RANGE: 8, DE265_ERROR_IMAGE_BUFFER_FULL: 9, DE265_ERROR_CANNOT_START_THREADPOOL: 10, DE265_ERROR_LIBRARY_INITIALIZATION_FAILED: 11, DE265_ERROR_LIBRARY_NOT_INITIALIZED: 12, DE265_ERROR_WAITING_FOR_INPUT_DATA: 13, DE265_ERROR_CANNOT_PROCESS_SEI: 14, DE265_ERROR_PARAMETER_PARSING: 15, DE265_ERROR_NO_INITIAL_SLICE_HEADER: 16, DE265_ERROR_PREMATURE_END_OF_SLICE: 17, DE265_ERROR_UNSPECIFIED_DECODING_ERROR: 18, DE265_ERROR_MAX_THREAD_CONTEXTS_EXCEEDED: 500, DE265_ERROR_MAX_NUMBER_OF_SLICES_EXCEEDED: 501, DE265_ERROR_NOT_IMPLEMENTED_YET: 502, DE265_WARNING_NO_WPP_CANNOT_USE_MULTITHREADING: 1e3, DE265_WARNING_WARNING_BUFFER_FULL: 1001, DE265_WARNING_PREMATURE_END_OF_SLICE_SEGMENT: 1002, DE265_WARNING_INCORRECT_ENTRY_POINT_OFFSET: 1003, DE265_WARNING_CTB_OUTSIDE_IMAGE_AREA: 1004, DE265_WARNING_SPS_HEADER_INVALID: 1005, DE265_WARNING_PPS_HEADER_INVALID: 1006, DE265_WARNING_SLICEHEADER_INVALID: 1007, DE265_WARNING_INCORRECT_MOTION_VECTOR_SCALING: 1008, DE265_WARNING_NONEXISTING_PPS_REFERENCED: 1009, DE265_WARNING_NONEXISTING_SPS_REFERENCED: 1010, DE265_WARNING_BOTH_PREDFLAGS_ZERO: 1011, DE265_WARNING_NONEXISTING_REFERENCE_PICTURE_ACCESSED: 1012, DE265_WARNING_NUMMVP_NOT_EQUAL_TO_NUMMVQ: 1013, DE265_WARNING_NUMBER_OF_SHORT_TERM_REF_PIC_SETS_OUT_OF_RANGE: 1014, DE265_WARNING_SHORT_TERM_REF_PIC_SET_OUT_OF_RANGE: 1015, DE265_WARNING_FAULTY_REFERENCE_PICTURE_LIST: 1016, DE265_WARNING_EOSS_BIT_NOT_SET: 1017, DE265_WARNING_MAX_NUM_REF_PICS_EXCEEDED: 1018, DE265_WARNING_INVALID_CHROMA_FORMAT: 1019, DE265_WARNING_SLICE_SEGMENT_ADDRESS_INVALID: 1020, DE265_WARNING_DEPENDENT_SLICE_WITH_ADDRESS_ZERO: 1021, DE265_WARNING_NUMBER_OF_THREADS_LIMITED_TO_MAXIMUM: 1022, DE265_NON_EXISTING_LT_REFERENCE_CANDIDATE_IN_SLICE_HEADER: 1023, DE265_WARNING_CANNOT_APPLY_SAO_OUT_OF_MEMORY: 1024, DE265_WARNING_SPS_MISSING_CANNOT_DECODE_SEI: 1025, DE265_WARNING_COLLOCATED_MOTION_VECTOR_OUTSIDE_IMAGE_AREA: 1026, de265_start_worker_threads: this._module.cwrap(\"de265_start_worker_threads\", \"number\", [\"number\", \"number\"]), de265_get_version: this._module.cwrap(\"de265_get_version\", \"string\"), de265_get_version_number: this._module.cwrap(\"de265_get_version_number\", \"number\"), de265_get_error_text: this._module.cwrap(\"de265_get_error_text\", \"string\", [\"number\"]), de265_isOK: this._module.cwrap(\"de265_isOK\", \"number\", [\"number\"]), de265_set_verbosity: this._module.cwrap(\"de265_set_verbosity\", \"number\", [\"number\"]), de265_chroma_mono: 0, de265_chroma_420: 1, de265_chroma_422: 2, de265_chroma_444: 3, de265_get_image_width: this._module.cwrap(\"de265_get_image_width\", \"number\", [\"number\", \"number\"]), de265_get_image_height: this._module.cwrap(\"de265_get_image_height\", \"number\", [\"number\", \"number\"]), de265_get_chroma_format: this._module.cwrap(\"de265_get_chroma_format\", \"number\", [\"number\"]), de265_get_bits_per_pixel: this._module.cwrap(\"de265_get_bits_per_pixel\", \"number\", [\"number\", \"number\"]), de265_get_image_plane: this._module.cwrap(\"de265_get_image_plane\", \"number\", [\"number\", \"number\", \"number\"]), de265_get_image_plane_user_data: this._module.cwrap(\"de265_get_image_plane_user_data\", \"number\", [\"number\", \"number\"]), de265_get_image_PTS: this._module.cwrap(\"de265_get_image_PTS\", \"number\", [\"number\"]), de265_get_image_user_data: this._module.cwrap(\"de265_get_image_user_data\", \"number\", [\"number\"]), de265_set_image_user_data: this._module.cwrap(\"de265_set_image_user_data\", \"number\", [\"number\", \"number\"]), de265_new_decoder: this._module.cwrap(\"de265_new_decoder\", \"number\"), de265_free_decoder: this._module.cwrap(\"de265_free_decoder\", \"number\", [\"number\"]), de265_push_data: this._module.cwrap(\"de265_push_data\", \"number\", [\"number\", \"array\", \"number\", \"number\", \"number\"]), de265_push_end_of_NAL: this._module.cwrap(\"de265_push_end_of_NAL\", \"number\", [\"number\"]), de265_push_end_of_frame: this._module.cwrap(\"de265_push_end_of_frame\", \"number\", [\"number\"]), de265_push_NAL: this._module.cwrap(\"de265_push_NAL\", \"number\", [\"number\", \"array\", \"number\", \"number\", \"number\"]), de265_flush_data: this._module.cwrap(\"de265_flush_data\", \"number\", [\"number\"]), de265_get_number_of_input_bytes_pending: this._module.cwrap(\"de265_get_number_of_input_bytes_pending\", \"number\", [\"number\"]), de265_get_number_of_NAL_units_pending: this._module.cwrap(\"de265_get_number_of_NAL_units_pending\", \"number\", [\"number\"]), de265_decode: this._module.cwrap(\"de265_decode\", \"number\", [\"number\", \"number\"]), de265_reset: this._module.cwrap(\"de265_reset\", \"number\", [\"number\"]), de265_peek_next_picture: this._module.cwrap(\"de265_peek_next_picture\", \"number\", [\"number\"]), de265_get_next_picture: this._module.cwrap(\"de265_get_next_picture\", \"number\", [\"number\"]), de265_release_next_picture: this._module.cwrap(\"de265_release_next_picture\", \"number\", [\"number\"]), de265_get_warning: this._module.cwrap(\"de265_get_warning\", \"number\", [\"number\"]), de265_get_highest_TID: this._module.cwrap(\"de265_get_highest_TID\", \"number\", [\"number\"]), de265_get_current_TID: this._module.cwrap(\"de265_get_current_TID\", \"number\", [\"number\"]), de265_set_limit_TID: this._module.cwrap(\"de265_set_limit_TID\", \"number\", [\"number\", \"number\"]), de265_set_framerate_ratio: this._module.cwrap(\"de265_set_framerate_ratio\", \"number\", [\"number\", \"number\"]), de265_change_framerate: this._module.cwrap(\"de265_change_framerate\", \"number\", [\"number\", \"number\"]), DE265_DECODER_PARAM_BOOL_SEI_CHECK_HASH: 0, DE265_DECODER_PARAM_DUMP_SPS_HEADERS: 1, DE265_DECODER_PARAM_DUMP_VPS_HEADERS: 2, DE265_DECODER_PARAM_DUMP_PPS_HEADERS: 3, DE265_DECODER_PARAM_DUMP_SLICE_HEADERS: 4, DE265_DECODER_PARAM_ACCELERATION_CODE: 5, DE265_DECODER_PARAM_SUPPRESS_FAULTY_PICTURES: 6, DE265_DECODER_PARAM_DISABLE_DEBLOCKING: 7, DE265_DECODER_PARAM_DISABLE_SAO: 8, de265_acceleration_SCALAR: 0, de265_acceleration_MMX: 10, de265_acceleration_SSE: 20, de265_acceleration_SSE2: 30, de265_acceleration_SSE4: 40, de265_acceleration_AVX: 50, de265_acceleration_AVX2: 60, de265_acceleration_ARM: 70, de265_acceleration_NEON: 80, de265_acceleration_AUTO: 1e4, de265_set_parameter_bool: this._module.cwrap(\"de265_set_parameter_bool\", \"number\", [\"number\", \"number\", \"number\"]), de265_set_parameter_int: this._module.cwrap(\"de265_set_parameter_int\", \"number\", [\"number\", \"number\", \"number\"]), module: this._module };\n }, je;\n }();\n (function(je) {\n je[je.KS265_PIXFMT_YUV_420P = 0] = \"KS265_PIXFMT_YUV_420P\", je[je.KS265_PIXFMT_YUV_420SP = 1] = \"KS265_PIXFMT_YUV_420SP\", je[je.KS265_PIXFMT_YUV_420SP_VU = 2] = \"KS265_PIXFMT_YUV_420SP_VU\";\n })(r || (r = {}));\n var m, p = { nWidth: 720, nHeight: 1280, nCodedWidth: 720, nCodedHeight: 1280, nLumaBitDepth: 10, nChromaBitDepth: 10, nChromaFormatIdc: 0, profile: 1, level: 150, has_b_frames: 1, pts: 0, bIllegalStream: 0, poc: 0 }, d = [0, 0, 0, 1], u = function() {\n function je(H) {\n this._evt = void 0, this._module = void 0, this._libks265 = void 0, this._ctx = 0, this._needNextFrame = !1, this._pendingNum = 0, this._isDataEnded = !1, this._config = { pAuth: 0, threads: 1, nal_mode: 0, pic_out_pos: 0, bEnableOutputRecToFile: 0, strRecYuvFileName: 0, logLevel: 0, outputPixfmt: r.KS265_PIXFMT_YUV_420P, b_use_pthread: 0 }, this._configPtr = 0, this._framePtr = 0, this._evt = H;\n }\n var ke = je.prototype;\n return ke.init = function(H, ie, ye) {\n var we = this, J = H.js.data, le = H.jsw ? H.jsw.data : \"\", me = new Function(J + \" return KW265;\")(), he = le ? new Blob([J], { type: \"text/javascript\" }) : \"\", re = new Blob([le], { type: \"text/javascript\" });\n return me({ wasmBinary: H.wasm.data, mainScriptUrlOrBlob: he, locateFile: function(Se) {\n return Se.indexOf(\".worker.js\") !== -1 ? URL.createObjectURL(re) : \"\";\n } }).then(function(Se) {\n we._module = Se, we._cwrapLibKS265Fun(), ye > 1 && (we._config.b_use_pthread = 1, we._config.threads = ye), we._config.nal_mode = 0, we._newDecoder();\n });\n }, ke.pushNalus = function(H, ie, ye) {\n ye === void 0 && (ye = !1), this._updateKS265FrameInfo(this._module, this._framePtr + 24, p), this._module.setValue(this._framePtr, 0, \"i32\"), this._pendingNum++;\n var we = H.reduce(function(he, re) {\n return he + re.data.byteLength;\n }, 0) + d.length * H.length, J = new Uint8Array(we), le = 0;\n H.forEach(function(he) {\n J.set(d, le), J.set(he.data, le + d.length), le += d.length + he.data.byteLength;\n });\n var me = performance.now();\n this._libks265.KS265DecodeFrame(this._ctx, J, we, Math.round(ie) || 0), this._tryGetFrame(me), this._isDataEnded = ye;\n }, ke.getPendingNALNumber = function() {\n return this._pendingNum;\n }, ke.endOfFrame = function() {\n }, ke.nextFrame = function() {\n this._pendingNum && this._tryGetFrame(), this._needNextFrame = !0;\n }, ke.free = function() {\n this._libks265.KS265DecoderDestroy(this._ctx), this._configPtr && this._module._free(this._configPtr), this._framePtr && this._module._free(this._framePtr), this._configPtr = this._framePtr = 0;\n }, ke.rebuild = function() {\n D.b.i(\"ks265-wrapper\", \"rebuild\"), this.free(), this._pendingNum = 0, this._needNextFrame = !1, this._isDataEnded = !1, this._newDecoder();\n }, ke.flush = function() {\n }, ke.reset = function() {\n }, ke.isWaitingData = function() {\n return this._needNextFrame;\n }, ke._tryGetFrame = function(H) {\n if (H = H || performance.now(), this._isDataEnded && this._libks265.KS265DecodeFlush(this._ctx, 0), !(this._libks265.KS265DecoderGetDecodedFrame(this._ctx, this._framePtr) < 0)) {\n var ie = this._readKS265Frame(this._module, this._framePtr);\n ie.bValid && (this._evt.emit(v.a.DECODER_FRAME, { frame: this._getImage(ie), startTime: H }), this._isDataEnded || this._libks265.KS265DecoderReturnDecodedFrame(this._ctx, this._framePtr), this._needNextFrame = !1, this._pendingNum--);\n }\n }, ke._newDecoder = function() {\n this._configPtr = this._mallocKS265DecConfig(this._module, this._config), this._framePtr = this._mallocKS265Frame(this._module, p), this._ctx = this._libks265.KS265DecoderCreate(this._configPtr), this._libks265.KS265DecodeFlush(this._ctx, 1);\n }, ke._getImage = function(H) {\n var ie = H.frameinfo.nCodedWidth || H.frameinfo.nWidth, ye = H.frameinfo.nCodedHeight || H.frameinfo.nHeight;\n return { format: { width: ie, height: ye, chroma: 1, chromaWidth: ie / 2, chromaHeight: ye / 2, cropLeft: 0, cropTop: 0, cropWidth: H.frameinfo.nWidth, cropHeight: H.frameinfo.nHeight, displayWidth: 0, displayHeight: 0, pts: H.frameinfo.pts }, y: { bytes: this._module.HEAPU8.subarray(H.pData[0], H.pData[0] + H.iStride[0] * ye), stride: H.iStride[0], bits: 8 }, u: { bytes: this._module.HEAPU8.subarray(H.pData[1], H.pData[1] + H.iStride[1] * ye / 2), stride: H.iStride[1], bits: 8 }, v: { bytes: this._module.HEAPU8.subarray(H.pData[2], H.pData[2] + H.iStride[2] * ye / 2), stride: H.iStride[2], bits: 8 } };\n }, ke._mallocKS265DecConfig = function(H, ie) {\n var ye = H._malloc(36);\n return H.setValue(ye, ie.pAuth, \"i32\"), H.setValue(ye + 4, ie.threads, \"i32\"), H.setValue(ye + 8, ie.nal_mode, \"i32\"), H.setValue(ye + 12, ie.pic_out_pos, \"i32\"), H.setValue(ye + 16, ie.bEnableOutputRecToFile, \"i32\"), H.setValue(ye + 20, ie.strRecYuvFileName, \"i32\"), H.setValue(ye + 24, ie.logLevel, \"i32\"), H.setValue(ye + 28, ie.outputPixfmt, \"i32\"), H.setValue(ye + 32, ie.b_use_pthread, \"i32\"), ye;\n }, ke._readKS265FrameInfo = function(H, ie) {\n return { nWidth: H.getValue(ie, \"i32\"), nHeight: H.getValue(ie + 4, \"i32\"), nCodedWidth: H.getValue(ie + 8, \"i32\"), nCodedHeight: H.getValue(ie + 12, \"i32\"), nLumaBitDepth: H.getValue(ie + 16, \"i32\"), nChromaBitDepth: H.getValue(ie + 20, \"i32\"), nChromaFormatIdc: H.getValue(ie + 24, \"i32\"), profile: H.getValue(ie + 28, \"i32\"), level: H.getValue(ie + 32, \"i32\"), has_b_frames: H.getValue(ie + 36, \"i32\"), pts: H.getValue(ie + 40, \"i32\"), bIllegalStream: H.getValue(ie + 48, \"i32\"), poc: H.getValue(ie + 52, \"i32\") };\n }, ke._updateKS265FrameInfo = function(H, ie, ye) {\n H.setValue(ie, ye.nWidth, \"i32\"), H.setValue(ie + 4, ye.nHeight, \"i32\"), H.setValue(ie + 8, ye.nCodedWidth, \"i32\"), H.setValue(ie + 12, ye.nCodedHeight, \"i32\"), H.setValue(ie + 16, ye.nChromaFormatIdc, \"i32\"), H.setValue(ie + 20, ye.profile, \"i32\"), H.setValue(ie + 24, ye.level, \"i32\"), H.setValue(ie + 28, ye.has_b_frames, \"i32\"), H.setValue(ie + 32, ye.pts, \"i64\");\n }, ke._mallocKS265Frame = function(H, ie) {\n return H._malloc(80);\n }, ke._readKS265Frame = function(H, ie) {\n return { bValid: H.getValue(ie, \"i32\"), pData: [H.getValue(ie + 4, \"i32\"), H.getValue(ie + 8, \"i32\"), H.getValue(ie + 12, \"i32\")], iStride: [H.getValue(ie + 16, \"i16\"), H.getValue(ie + 18, \"i16\"), H.getValue(ie + 20, \"i16\")], frameinfo: this._readKS265FrameInfo(H, ie + 24) };\n }, ke._cwrapLibKS265Fun = function() {\n this._libks265 = { KS265DecoderCreate: this._module.cwrap(\"KS265DecoderCreate\", \"number\", [\"number\"]), KS265DecoderDestroy: this._module.cwrap(\"KS265DecoderDestroy\", \"number\", [\"number\"]), KS265DecoderSetDecConfig: this._module.cwrap(\"KS265DecoderSetDecConfig\", \"number\", [\"number\", \"number\"]), KS265DecodeFrameHeader: this._module.cwrap(\"KS265DecodeFrameHeader\", \"number\", [\"number\", \"array\", \"number\"]), KS265DecodeFrame: this._module.cwrap(\"KS265DecodeFrame\", \"number\", [\"number\", \"array\", \"number\", \"number\"]), KS265DecodeFlush: this._module.cwrap(\"KS265DecodeFlush\", \"number\", [\"number\", \"number\"]), KS265DecoderGetDecodedFrame: this._module.cwrap(\"KS265DecoderGetDecodedFrame\", \"number\", [\"number\", \"number\"]), KS265DecoderReturnDecodedFrame: this._module.cwrap(\"KS265DecoderReturnDecodedFrame\", \"number\", [\"number\", \"number\"]), KS265DumpVUIParameters: this._module.cwrap(\"KS265DumpVUIParameters\", \"number\", [\"number\", \"number\", \"number\"]), module: this._module };\n }, je;\n }();\n (function(je) {\n je[je.KVC_PIXFMT_YUV_420P = 0] = \"KVC_PIXFMT_YUV_420P\", je[je.KVC_PIXFMT_YUV_420SP = 1] = \"KVC_PIXFMT_YUV_420SP\", je[je.KVC_PIXFMT_YUV_420SP_VU = 2] = \"KVC_PIXFMT_YUV_420SP_VU\";\n })(m || (m = {}));\n var U = { width: 720, height: 1280, codedWidth: 720, codedHeight: 1280, chromaFormat: 0, profile: 1, level: 150, hasBFrames: 1, pts: 0 }, w = [0, 0, 0, 1], S = function() {\n function je(H, ie) {\n ie === void 0 && (ie = x.b.kvc4), this._evt = void 0, this._module = void 0, this._libkvc = void 0, this._ctx = 0, this._needNextFrame = !1, this._pendingNum = 0, this._isDataEnded = !1, this._codecType = x.b.unknown, this._leastKVC5 = !1, this._postProcessYuv = { ysize: 0, usize: 0, vsize: 0, y: 0, u: 0, v: 0 }, this._config = { threads: 1, queueDecode: 0, picOutPos: 0, outputPixfmt: m.KVC_PIXFMT_YUV_420P, b_use_pthread: 0 }, this._configPtr = 0, this._framePtr = 0, this._evt = H, this._codecType = ie;\n }\n var ke = je.prototype;\n return ke.init = function(H, ie, ye) {\n var we = this, J = H.js.data, le = H.jsw ? H.jsw.data : \"\", me = new Function(J + \" return KVCDecoder;\")(), he = le ? new Blob([J], { type: \"text/javascript\" }) : \"\", re = new Blob([le], { type: \"text/javascript\" });\n return me({ wasmBinary: H.wasm.data, mainScriptUrlOrBlob: he, locateFile: function(Se) {\n return Se.indexOf(\".worker.js\") !== -1 ? URL.createObjectURL(re) : \"\";\n } }).then(function(Se) {\n we._module = Se, we._cwrapLibKVCFun(), we._leastKVC5 = we._codecType === x.b.kvc5 || we._codecType === x.b.kvc6, we._codecType === x.b.kvc6 && we._libkvc.KVCDecoderPostProcess && D.b.i(\"kvc-wrapper\", \"kvc6 post process on.\"), ye > 1 && (we._config.b_use_pthread = 1, we._config.threads = ye), we._config.queueDecode = 0, we._newDecoder();\n });\n }, ke.pushNalus = function(H, ie, ye) {\n ye === void 0 && (ye = !1), this._updateKVCFrameInfo(this._module, this._framePtr + 24, U), this._module.setValue(this._framePtr, 0, \"i32\"), this._pendingNum++;\n var we = H.reduce(function(he, re) {\n return he + re.data.byteLength;\n }, 0) + w.length * H.length, J = new Uint8Array(we), le = 0;\n H.forEach(function(he) {\n J.set(w, le), J.set(he.data, le + w.length), le += w.length + he.data.byteLength;\n });\n var me = performance.now();\n this._libkvc.KVCDecodeFrame(this._ctx, J, we, Math.round(ie) || 0), this._tryGetFrame(me), this._isDataEnded = ye;\n }, ke.getPendingNALNumber = function() {\n return this._pendingNum;\n }, ke.endOfFrame = function() {\n }, ke.nextFrame = function() {\n this._pendingNum && this._tryGetFrame(), this._needNextFrame = !0;\n }, ke.free = function() {\n this._libkvc.KVCDecoderDestroy(this._ctx), this._ctx = 0, this._configPtr && this._module._free(this._configPtr), this._framePtr && this._module._free(this._framePtr), this._freePostProcess(), this._configPtr = this._framePtr = 0;\n }, ke.rebuild = function() {\n D.b.i(\"kvc-wrapper\", \"rebuild\"), this._pendingNum = 0, this._needNextFrame = !1, this._isDataEnded = !1, this._postProcessYuv.ysize = 0, this._postProcessYuv.usize = 0, this._postProcessYuv.vsize = 0, this.free(), this._newDecoder();\n }, ke.flush = function() {\n }, ke.reset = function() {\n }, ke.isWaitingData = function() {\n return this._needNextFrame;\n }, ke._tryGetFrame = function(H) {\n if (H = H || performance.now(), this._isDataEnded && this._libkvc.KVCDecodeFlush(this._ctx, 0), !(this._libkvc.KVCDecoderGetDecodedFrame(this._ctx, this._framePtr) < 0)) {\n var ie = this._readKVCFrame(this._module, this._framePtr);\n ie.valid && (this._codecType === x.b.kvc6 && this._libkvc.KVCDecoderPostProcess && this._postProcess(this._module, ie), this._evt.emit(v.a.DECODER_FRAME, { frame: this._getImage(ie), startTime: H }), this._isDataEnded || this._libkvc.KVCDecoderReturnDecodedFrame(this._ctx, this._framePtr), this._needNextFrame = !1, this._pendingNum--);\n }\n }, ke._postProcess = function(H, ie) {\n ie.ysize === this._postProcessYuv.ysize && ie.usize === this._postProcessYuv.usize && ie.vsize === this._postProcessYuv.vsize || this._mallocPostProcessYUV(H, ie), H.HEAPU8.set(H.HEAPU8.subarray(ie.data[0], ie.data[0] + ie.ysize), this._postProcessYuv.y), H.HEAPU8.set(H.HEAPU8.subarray(ie.data[1], ie.data[1] + ie.usize), this._postProcessYuv.u), H.HEAPU8.set(H.HEAPU8.subarray(ie.data[2], ie.data[2] + ie.vsize), this._postProcessYuv.v), ie.data = [this._postProcessYuv.y, this._postProcessYuv.u, this._postProcessYuv.v], H.setValue(this._framePtr + 8, ie.data[0], \"i32\"), H.setValue(this._framePtr + 12, ie.data[1], \"i32\"), H.setValue(this._framePtr + 16, ie.data[2], \"i32\"), this._libkvc.KVCDecoderPostProcess(this._ctx, this._framePtr);\n }, ke._freePostProcess = function() {\n D.b.i(\"kvc-wrapper\", \"free post process yuv.\"), this._postProcessYuv.y && this._module._free(this._postProcessYuv.y), this._postProcessYuv.u && this._module._free(this._postProcessYuv.u), this._postProcessYuv.v && this._module._free(this._postProcessYuv.v), this._postProcessYuv.y = this._postProcessYuv.u = this._postProcessYuv.v = 0;\n }, ke._mallocPostProcessYUV = function(H, ie) {\n D.b.i(\"kvc-wrapper\", \"malloc post process yuv.\"), this._freePostProcess(), this._postProcessYuv.y = H._malloc(ie.ysize), this._postProcessYuv.u = H._malloc(ie.usize), this._postProcessYuv.v = H._malloc(ie.vsize), this._postProcessYuv.ysize = ie.ysize, this._postProcessYuv.usize = ie.usize, this._postProcessYuv.vsize = ie.vsize;\n }, ke._newDecoder = function() {\n this._configPtr = this._mallocKVCDecConfig(this._module, this._config), this._framePtr = this._mallocKVCFrame(this._module, U), this._ctx = this._libkvc.KVCDecoderCreate(this._configPtr), this._libkvc.KVCDecodeFlush(this._ctx, 1);\n }, ke._getImage = function(H) {\n return { format: { width: H.info.width, height: H.info.height, chroma: 1, chromaWidth: H.info.width / 2, chromaHeight: H.info.height / 2, cropLeft: 0, cropTop: 0, cropWidth: H.info.width, cropHeight: H.info.height, displayWidth: 0, displayHeight: 0, pts: H.info.pts }, y: { bytes: this._module.HEAPU8.subarray(H.data[0], H.data[0] + H.ysize), stride: H.stride[0], bits: 8 }, u: { bytes: this._module.HEAPU8.subarray(H.data[1], H.data[1] + H.usize), stride: H.stride[1], bits: 8 }, v: { bytes: this._module.HEAPU8.subarray(H.data[2], H.data[2] + H.vsize), stride: H.stride[2], bits: 8 } };\n }, ke._mallocKVCDecConfig = function(H, ie) {\n var ye = H._malloc(20);\n return H.setValue(ye, ie.threads, \"i32\"), H.setValue(ye + 4, ie.queueDecode, \"i32\"), H.setValue(ye + 8, ie.picOutPos, \"i32\"), H.setValue(ye + 12, ie.outputPixfmt, \"i32\"), H.setValue(ye + 16, ie.b_use_pthread, \"i32\"), ye;\n }, ke._mallocKVCFrameInfo = function(H) {\n return H._malloc(40);\n }, ke._readKVCFrameInfo = function(H, ie) {\n return { width: H.getValue(ie, \"i32\"), height: H.getValue(ie + 4, \"i32\"), codedWidth: H.getValue(ie + 8, \"i32\"), codedHeight: H.getValue(ie + 12, \"i32\"), chromaFormat: H.getValue(ie + 16, \"i32\"), profile: H.getValue(ie + 20, \"i32\"), level: H.getValue(ie + 24, \"i32\"), hasBFrames: H.getValue(ie + 28, \"i32\"), pts: H.getValue(ie + 32, \"i64\") };\n }, ke._updateKVCFrameInfo = function(H, ie, ye) {\n H.setValue(ie, ye.width, \"i32\"), H.setValue(ie + 4, ye.height, \"i32\"), H.setValue(ie + 8, ye.codedWidth, \"i32\"), H.setValue(ie + 12, ye.codedHeight, \"i32\"), H.setValue(ie + 16, ye.chromaFormat, \"i32\"), H.setValue(ie + 20, ye.profile, \"i32\"), H.setValue(ie + 24, ye.level, \"i32\"), H.setValue(ie + 28, ye.hasBFrames, \"i32\"), H.setValue(ie + 32, ye.pts, \"i64\");\n }, ke._mallocKVCFrame = function(H, ie) {\n return H._malloc(this._leastKVC5 ? 65536 : 64);\n }, ke._readKVCFrame = function(H, ie) {\n var ye, we = H.getValue(ie, \"i32\"), J = 4, le = 0;\n this._leastKVC5 ? (le = H.getValue(ie + J, \"i32\"), J += 4, ye = this._readKVCFrameInfo(H, ie + 32)) : ye = this._readKVCFrameInfo(H, ie + 24);\n var me = [H.getValue(ie + J, \"i32\"), H.getValue(ie + J + 4, \"i32\"), H.getValue(ie + J + 8, \"i32\")];\n J += 12;\n var he = [H.getValue(ie + J, \"i16\"), H.getValue(ie + J + 2, \"i16\"), H.getValue(ie + J + 4, \"i16\")];\n return J += 6, { valid: we, poc: le, data: me, stride: he, info: ye, ysize: he[0] * ye.height, usize: he[1] * ye.height / 2, vsize: he[2] * ye.height / 2 };\n }, ke._cwrapLibKVCFun = function() {\n this._libkvc = { KVCDecoderCreate: this._module.cwrap(\"KVCDecoderCreate\", \"number\", [\"number\"]), KVCDecoderDestroy: this._module.cwrap(\"KVCDecoderDestroy\", \"number\", [\"number\"]), KVCDecoderSetDecConfig: this._module.cwrap(\"KVCDecoderSetDecConfig\", \"number\", [\"number\", \"number\"]), KVCDecodeFrameHeader: this._module.cwrap(\"KVCDecodeFrameHeader\", \"number\", [\"number\", \"array\", \"number\"]), KVCDecodeFrame: this._module.cwrap(\"KVCDecodeFrame\", \"number\", [\"number\", \"array\", \"number\", \"number\"]), KVCDecodeFlush: this._module.cwrap(\"KVCDecodeFlush\", \"number\", [\"number\", \"number\"]), KVCDecoderGetDecodedFrame: this._module.cwrap(\"KVCDecoderGetDecodedFrame\", \"number\", [\"number\", \"number\"]), KVCDecoderReturnDecodedFrame: this._module.cwrap(\"KVCDecoderReturnDecodedFrame\", \"number\", [\"number\", \"number\"]), KVCDecoderGetVersion: this._module.cwrap(\"KVCDecoderGetVersion\", \"number\"), KVC19DumpVUIParameters: this._module.cwrap(\"KVCDumpVUIParameters\", \"number\", [\"number\", \"number\", \"number\"]), module: this._module }, this._module._KVCDecoderPostProcess && (D.b.i(\"kvc-wrapper\", \"post process func detected.\"), this._libkvc.KVCDecoderPostProcess = this._module.cwrap(\"KVCDecoderPostProcess\", \"number\", [\"number\", \"number\"]));\n }, je;\n }(), R = i(15), z = i(32), W = [0, 0, 0, 1], fe = function() {\n function je(H) {\n this._evt = void 0, this._module = void 0, this._libkvc = void 0, this._ctx = 0, this._needNextFrame = !1, this._pendingNum = 0, this._isDataEnded = !1, this._config = { threads: 1, needOutput: 1 }, this._configPtr = 0, this._inputPtr = 0, this._framePtr = 0, this._videoInfoPtr = 0, this._streamPtrs = [], this._videoInfo = void 0, this._evt = H;\n }\n var ke = je.prototype;\n return ke.init = function(H, ie, ye) {\n var we = this, J = H.js.data, le = H.jsw ? H.jsw.data : \"\", me = new Function(J + \" return KVC30;\")(), he = le ? new Blob([J], { type: \"text/javascript\" }) : \"\", re = new Blob([le], { type: \"text/javascript\" });\n return me({ wasmBinary: H.wasm.data, mainScriptUrlOrBlob: he, locateFile: function(Se) {\n return Se.indexOf(\".worker.js\") !== -1 ? URL.createObjectURL(re) : \"\";\n } }).then(function(Se) {\n we._module = Se, we._cwrapLibKVCFun(), ye > 1 ? (we._config.threads = 1, we._config.threads = ye) : we._config.threads = 0, we._newDecoder();\n });\n }, ke.pushNalus = function(H, ie, ye) {\n ye === void 0 && (ye = !1), this._module.setValue(this._framePtr, 0, \"i32\"), this._pendingNum++;\n var we = H.reduce(function(me, he) {\n return me + he.data.byteLength;\n }, 0) + W.length * H.length, J = new Uint8Array(we), le = 0;\n H.forEach(function(me) {\n J.set(W, le), J.set(me.data, le + W.length), le += W.length + me.data.byteLength;\n }), this._writeKVCInput(this._module, J, ie), this._dec(), this._isDataEnded = ye;\n }, ke.getPendingNALNumber = function() {\n return this._pendingNum;\n }, ke.endOfFrame = function() {\n }, ke.nextFrame = function() {\n this._needNextFrame = !0;\n }, ke.free = function() {\n this._libkvc.KVCDecoderDestroy(this._ctx), this._ctx && this._module._free(this._ctx), this._ctx = 0, this._configPtr && this._module._free(this._configPtr), this._inputPtr && this._module._free(this._inputPtr), this._framePtr && this._module._free(this._framePtr), this._videoInfoPtr && this._module._free(this._videoInfoPtr), this._configPtr = this._framePtr = 0, this._freeStreamPtr();\n }, ke.rebuild = function() {\n D.b.i(\"kvc30-wrapper\", \"rebuild\"), this._pendingNum = 0, this._needNextFrame = !1, this._isDataEnded = !1, D.b.i(\"kvc30-wrapper\", \"rebuild\"), this.free(), this._newDecoder();\n }, ke.flush = function() {\n D.b.i(\"kvc30-wrapper\", \"flush\"), this._module.setValue(this._inputPtr, 0, \"i64\"), this._module.setValue(this._inputPtr + 8, 0, \"i32\"), this._module.setValue(this._inputPtr + 12, 0, \"i32\");\n var H = !1;\n do\n H = this._dec();\n while (H);\n this._pendingNum = 0, this._needNextFrame = !1;\n }, ke.reset = function() {\n }, ke.isWaitingData = function() {\n return this._needNextFrame;\n }, ke._newDecoder = function() {\n D.b.i(\"kvc30-wrapper\", \"new decoder.\"), this._configPtr = this._mallocKVCDecConfig(this._module, this._config), this._inputPtr = this._module._malloc(16), this._framePtr = this._module._malloc(100), this._videoInfoPtr = this._module._malloc(68), this._ctx = this._libkvc.KVCDecoderCreate(this._configPtr);\n }, ke._getImage = function(H) {\n return { format: { width: H.width[0], height: H.height[0], chroma: 1, chromaWidth: H.width[1], chromaHeight: H.height[1], cropLeft: 0, cropTop: 0, cropWidth: H.width[0], cropHeight: H.height[0], displayWidth: 0, displayHeight: 0, pts: H.pts, colorInfo: this._getColorInfo() }, y: { bytes: this._module.HEAPU8.subarray(H.bufs[0], H.bufs[0] + H.stride[0] * H.height[0] * H.bytesPerPixel), stride: H.stride[0], bits: H.bitDepth }, u: { bytes: this._module.HEAPU8.subarray(H.bufs[1], H.bufs[1] + H.stride[1] * H.height[1] * H.bytesPerPixel), stride: H.stride[1], bits: H.bitDepth }, v: { bytes: this._module.HEAPU8.subarray(H.bufs[2], H.bufs[2] + H.stride[2] * H.height[2] * H.bytesPerPixel), stride: H.stride[2], bits: H.bitDepth } };\n }, ke._mallocKVCDecConfig = function(H, ie) {\n var ye = H._malloc(20);\n return H.setValue(ye, 0, \"i32\"), H.setValue(ye + 4, 0, \"i32\"), H.setValue(ye + 8, 0, \"i32\"), H.setValue(ye + 12, ie.threads, \"i32\"), H.setValue(ye + 16, ie.needOutput, \"i32\"), ye;\n }, ke._writeKVCInput = function(H, ie, ye) {\n var we = H._malloc(ie.byteLength);\n H.HEAPU8.set(ie, we), H.setValue(this._inputPtr, Math.round(ye), \"i64\"), H.setValue(this._inputPtr + 8, we, \"i32\"), H.setValue(this._inputPtr + 12, ie.byteLength, \"i32\"), this._streamPtrs.push(we), this._freeStreamPtr(16);\n }, ke._freeStreamPtr = function(H) {\n if (H === void 0 && (H = 0), this._module)\n for (; this._streamPtrs.length > H; ) {\n var ie = this._streamPtrs.shift();\n ie && this._module._free(ie);\n }\n }, ke._readKVCFrame = function(H, ie) {\n return { pts: H.getValue(ie, \"i64\"), bufs: [H.getValue(ie + 8, \"i32\"), H.getValue(ie + 12, \"i32\"), H.getValue(ie + 16, \"i32\"), H.getValue(ie + 20, \"i32\")], outputFrame: H.getValue(ie + 24, \"i32\"), width: [H.getValue(ie + 28, \"i32\"), H.getValue(ie + 32, \"i32\"), H.getValue(ie + 36, \"i32\"), H.getValue(ie + 40, \"i32\")], height: [H.getValue(ie + 44, \"i32\"), H.getValue(ie + 48, \"i32\"), H.getValue(ie + 52, \"i32\"), H.getValue(ie + 56, \"i32\")], stride: [H.getValue(ie + 60, \"i32\"), H.getValue(ie + 64, \"i32\"), H.getValue(ie + 68, \"i32\"), H.getValue(ie + 72, \"i32\")], bytesPerPixel: H.getValue(ie + 76, \"i32\"), colorFormat: H.getValue(ie + 80, \"i32\"), bitDepth: H.getValue(ie + 84, \"i32\"), planes: H.getValue(ie + 88, \"i32\"), hasOutput: H.getValue(ie + 92, \"i32\") };\n }, ke._readVideoInfo = function(H, ie) {\n return { chromaFormat: H.getValue(ie, \"i32\"), codedWidth: H.getValue(ie + 4, \"i32\"), codedHeight: H.getValue(ie + 8, \"i32\"), width: H.getValue(ie + 12, \"i32\"), height: H.getValue(ie + 16, \"i32\"), hasBFrames: H.getValue(ie + 20, \"i32\"), profile: H.getValue(ie + 24, \"i32\"), level: H.getValue(ie + 28, \"i32\"), b_vui_valid: H.getValue(ie + 32, \"i32\"), aspect_ratio_info_present_flag: H.getValue(ie + 36, \"i32\"), video_full_range_flag: H.getValue(ie + 40, \"i32\"), sar_width: H.getValue(ie + 44, \"i32\"), sar_height: H.getValue(ie + 48, \"i32\"), colour_description_present_flag: H.getValue(ie + 52, \"i32\"), colour_primaries: H.getValue(ie + 56, \"i32\"), transfer_characteristics: H.getValue(ie + 60, \"i32\"), matrix_coeffs: H.getValue(ie + 64, \"i32\") };\n }, ke._dec = function() {\n if (!this._libkvc.KVCDecodeFrame(this._ctx, this._inputPtr, this._framePtr)) {\n var H = this._readKVCFrame(this._module, this._framePtr);\n if (H.hasOutput)\n return this._videoInfo || this._updateVideoInfo(), this._evt.emit(v.a.DECODER_FRAME, { frame: this._getImage(H), startTime: performance.now() }), this._libkvc.KVCDecodeUnrefFrame(this._ctx, this._framePtr), this._needNextFrame = !1, this._pendingNum--, !0;\n }\n return !1;\n }, ke._updateVideoInfo = function() {\n this._libkvc.KVCExportParams(this._ctx, this._videoInfoPtr), this._videoInfo = this._readVideoInfo(this._module, this._videoInfoPtr), D.b.i(\"kvc30-wrapper\", \"video info\", this._videoInfo), this._videoInfo && this._evt.emit(v.a.DECODER_MEDIA_INFO, { width: this._videoInfo.width, height: this._videoInfo.height, codedWidth: this._videoInfo.codedWidth, codedHeight: this._videoInfo.codedHeight, sar: { width: this._videoInfo.width, height: this._videoInfo.height }, profile: Object(z.c)(this._videoInfo.profile), level: Object(z.b)(this._videoInfo.level), chromaFormat: Object(z.a)(this._videoInfo.chromaFormat), bitDepth: 8, colorInfo: this._getColorInfo() });\n }, ke._getColorInfo = function() {\n var H = this._videoInfo;\n if (H && H.colour_description_present_flag)\n return { colorRange: H.video_full_range_flag ? R.b.AVCOL_RANGE_JPEG : R.b.AVCOL_RANGE_MPEG, colourPrimaries: H.colour_primaries, transferCharacteristics: H.transfer_characteristics, matrixCoefficients: H.matrix_coeffs };\n }, ke._cwrapLibKVCFun = function() {\n this._libkvc = { KVCDecoderCreate: this._module.cwrap(\"kvc30dec_create\", \"number\", [\"number\"]), KVCDecoderDestroy: this._module.cwrap(\"kvc30dec_destroy\", \"number\", [\"number\"]), KVCDecodeFrame: this._module.cwrap(\"kvc30dec_decode\", \"number\", [\"number\", \"number\", \"number\"]), KVCDecodeUnrefFrame: this._module.cwrap(\"kvc30dec_unref_frame\", \"number\", [\"number\", \"number\"]), KVCExportParams: this._module.cwrap(\"kvc30dec_export_params\", \"number\", [\"number\", \"number\"]), KVCGetVersion: this._module.cwrap(\"kvc30dec_get_version\", \"number\"), module: this._module };\n }, je;\n }(), q = o.a / o.j, ve = o.a / o.c, Ae = [E.a.HEVC_NAL_TRAIL_N, E.a.HEVC_NAL_TSA_N, E.a.HEVC_NAL_STSA_N, E.a.HEVC_NAL_RADL_N, E.a.HEVC_NAL_RASL_N], P = [E.a.HEVC_NAL_IDR_W_RADL, E.a.HEVC_NAL_IDR_N_LP, E.a.HEVC_NAL_CRA_NUT], Me = [C.a.VVC_NAL_UNIT_CODED_SLICE_IDR_W_RADL, C.a.VVC_NAL_UNIT_CODED_SLICE_IDR_N_LP, C.a.VVC_NAL_UNIT_CODED_SLICE_CRA, C.a.VVC_NAL_UNIT_CODED_SLICE_GDR], Ie = function() {\n function je(H) {\n var ie = this;\n this._decoder = void 0, this._evt = void 0, this._clock = -1, this._frameBufLen = 0, this._maxFrameBufLen = 16, this._vLastPTS = 0, this._vLastDTS = 0, this._dataCache = [], this._gopId = 0, this._frameDuration = 33, this._droppedFrames = 0, this._decodedFrames = 0, this._loop = void 0, this._decodeTimes = [], this._avgDecodeDuration = 0, this._mediaInfo = void 0, this._hasOverriddenFPS = !1, this._output = x.o.canvas, this._decConfigData = void 0, this._seeking = !1, this._seekingTime = 0, this._decId = 1, this._defaultDropPolicy = x.n.AUTO, this._dropPolicy = x.n.AUTO, this._lastDataCachePTS = -1, this._endOfData = !1, this._expiredDataSync = !1, this._lastPushPTS = 0, this._appendDecActive = !1, this._lowBufThreshold = 16, this._decBufInfo = [], this._idrFrame = P, this._checkSkip = void 0, this._onSeeked = function(ye) {\n ie._evt.emit(v.a.DECODER_SEEK, { hitCache: ye }), ye ? ie._seeking = !1 : ie._expiredDataSync = !0;\n }, this._onSeekAbort = function() {\n ie._seeking = !1, ie._evt.emit(v.a.DECODER_SEEK_ABORT);\n }, this._onFrame = function(ye) {\n for (ie._vLastPTS = ye.frame.format.pts; ie._decBufInfo.length && ye.frame.format.pts + 1 >= ie._decBufInfo[0].pts; )\n ie._decBufInfo.shift();\n if (ie._decodeTimes.length > 10 && ie._decodeTimes.shift(), ye.startTime) {\n var we = performance.now() - ye.startTime;\n ie._decodeTimes.push(we), ie._avgDecodeDuration = ie._decodeTimes.reduce(function(me, he) {\n return me + he;\n }, 0) / ie._decodeTimes.length, ie._vLastPTS += we, ie._decodedFrames++;\n var J = ye.frame;\n ie._preprocessYUV(J), ie._evt.emit(v.a.DECODER_IMG, { droped: ie._droppedFrames, decoded: ie._decodedFrames, decId: ie._decId, frame: J });\n var le = ie._seekingTime;\n ie._endOfData && (le = ie._lastDataCachePTS >= 0 ? Math.min(ie._lastDataCachePTS, le) : le), ie._seeking && ye.frame.format.pts + 1 >= le && ie._onSeeked(!0);\n }\n }, this._checkHevcSkip = function(ye) {\n return ye.units.reduce(function(we, J) {\n return Ae.indexOf(J.type) !== -1 && we;\n }, !0);\n }, this._isIDR = function(ye) {\n return ye.units.reduce(function(we, J) {\n return ie._idrFrame.indexOf(J.type) !== -1 || we;\n }, !1);\n }, this._checkVvcSkip = function(ye) {\n return ye.units.reduce(function(we, J) {\n return ie._checkVvcNaluSkip(J.type, J.temporalId) && we;\n }, !0);\n }, this._checkVvcNaluSkip = function(ye, we) {\n return ye != 255 && !!we;\n }, this._evt = H, this._evt.on(v.a.DECODER_FRAME, this._onFrame), this._checkSkip = this._checkHevcSkip;\n }\n var ke = je.prototype;\n return ke.init = function(H, ie, ye, we, J, le, me) {\n var he = this;\n D.b.i(\"v-decoder-inline\", \"init. \" + me), this._decId = H, this._dropPolicy = ye.videoDropFramePolicy, this._defaultDropPolicy = ye.videoDropFramePolicy, me === x.p.kw265 ? this._decoder = new u(this._evt) : le === x.b.kvc3 || le === x.b.kvc4 || le === x.b.kvc5 || le === x.b.kvc6 ? this._decoder = new S(this._evt, le) : le === x.b.bvc2 || le === x.b.vvc || le === x.b.kvc30 ? (this._idrFrame = Me, this._checkSkip = this._checkVvcSkip, this._decoder = new fe(this._evt)) : this._decoder = new _(this._evt);\n try {\n this._decoder.init(ie, we, J).then(function() {\n he._decoder && (he._appendDecActive = !0, he._decoder.nextFrame(), he._startLoop(), he._evt.emit(v.a.DEC_INIT_COMPLETE, { simd: we, threads: J, decoderType: me }));\n }).catch(function(re) {\n he._evt.emit(v.a.ERROR, { type: l.b.DECODER_ERROR, details: l.a.DECODER_INIT_ERROR, fatal: !0, reason: re });\n });\n } catch (re) {\n this._evt.emit(v.a.ERROR, { type: l.b.DECODER_ERROR, details: l.a.DECODER_INIT_ERROR, fatal: !0, reason: re.message });\n }\n }, ke.expiredDataSync = function() {\n this._expiredDataSync = !1;\n }, ke.appendData = function(H) {\n var ie = this;\n this._expiredDataSync || (this._endOfData && D.b.i(\"v-decoder-inline\", \"end of data false on append\"), this._endOfData = !1, H.type !== g.c.decoderConfig ? (H.samples.forEach(function(ye) {\n var we = ie._isIDR(ye);\n if (we || ie._lastDataCachePTS !== -1) {\n if (we) {\n var J;\n ie._decConfigData && (J = ye.units).unshift.apply(J, ie._decConfigData.units), ie._gopId++;\n }\n var le = { key: we, gopId: ie._gopId, type: H.type || g.c.videoFrame, data: ye, dts: ye.dts * o.a, pts: ye.pts * o.a };\n le.pts > ie._lastDataCachePTS && (ie._lastDataCachePTS = le.pts);\n var me = ie._dataCache.length ? ie._dataCache[ie._dataCache.length - 1].dts : ie._vLastDTS;\n le.discontinuity = !!(le.type === g.c.videoFrame && me && Math.abs(le.dts - me) > o.k), ie._dataCache.push(le);\n }\n }), !this._hasOverriddenFPS && this._dataCache.length > 10 && (this._frameDuration = Math.max(q, (this._dataCache[this._dataCache.length - 1].dts - this._dataCache[0].dts) / (this._dataCache.length - 1)))) : this._decConfigData = H.samples[0]);\n }, ke.endOfData = function() {\n D.b.i(\"v-decoder-inline\", \"end of data\"), this._endOfData = !0;\n }, ke.updateState = function(H, ie, ye, we, J, le) {\n this._output = ie, this._appendDecActive = ye, this._frameBufLen = we, this._maxFrameBufLen = le, this._dropPolicy = J >= 1.5 ? x.n.ALL_NON_REF : this._defaultDropPolicy, this._seeking && Math.abs(H - this._seekingTime) > 100 && this._onSeekAbort(), ie !== x.o.video && (this._clock = H);\n }, ke.updateMediaInfo = function(H) {\n D.b.i(\"v-decoder-inline\", \"update media info\", H), this._mediaInfo = H, this._updateFPS();\n }, ke.destroy = function() {\n this._evt.off(v.a.DECODER_FRAME, this._onFrame), this._appendDecActive = !1, this._stopLoop();\n }, ke.clean = function(H) {\n if (D.b.i(\"v-decoder-inline\", \"clean\", H), this._dataCache.length && H > this._dataCache[0].pts) {\n for (var ie = 0; ie < this._dataCache.length && !(this._dataCache[ie].key && this._dataCache[ie].pts > H); ie++)\n ;\n this._dataCache = this._dataCache.slice(0, ie);\n } else\n H > this._lastPushPTS && this._decoder && this._decoder.rebuild();\n }, ke.reset = function(H, ie) {\n ie === void 0 && (ie = !1), D.b.i(\"v-decoder-inline\", \"reset\", H), this._decoder && this._decoder.rebuild(), this._decId = H, this._dataCache = [], this._lastDataCachePTS = -1, this._vLastPTS = 0, this._vLastDTS = 0, this._clock = -1, this._frameBufLen = 0, this._endOfData = !1, this._expiredDataSync = !1, this._lastPushPTS = 0, this._appendDecActive = !0, this._decBufInfo = [], this._updateFPS(), ie || (this._seeking = !1, this._seekingTime = 0);\n }, ke.seek = function(H) {\n var ie, ye;\n D.b.i(\"v-decoder-inline\", \"decoder seek: \" + H), this._clock = this._seekingTime = H, this._seeking = !0;\n var we = this._vLastPTS || ((ie = this._decBufInfo[0]) == null ? void 0 : ie.pts) || 0, J = this._decBufInfo.length ? this._decBufInfo[this._decBufInfo.length - 1].pts + this._frameDuration : this._vLastPTS || ((ye = this._dataCache[0]) == null ? void 0 : ye.pts) || 0;\n if (this._decBufInfo.length && H >= we && H <= J)\n D.b.i(\"v-decoder-inline\", \"decoder seek hit dec cache\");\n else if (this._dataCache.length && J <= H && this._lastDataCachePTS >= H) {\n for (var le = this._dataCache[0].gopId, me = le, he = 0, re = 0, Se = 0; Se < this._dataCache.length && (this._dataCache[Se].gopId === le && re++, this._dataCache[Se].gopId !== me && (me = this._dataCache[Se].gopId, he = Se), !(this._dataCache[Se].pts >= H)); Se++)\n ;\n me === le || re <= 3 && me - le == 1 ? D.b.i(\"v-decoder-inline\", \"decoder seek hit data cache. continue decode\") : (D.b.i(\"v-decoder-inline\", \"decoder seek hit data cache. switch gop\"), this._evt.emit(v.a.RENDERER_BUF_EXPIRED), this._dataCache.splice(0, he), this._decoder && this._decoder.rebuild(), this._vLastPTS = 0, this._vLastDTS = 0, this._lastPushPTS = 0);\n } else\n D.b.i(\"v-decoder-inline\", \"decoder seek miss cache.\"), this._dataCache = [], this._onSeeked(!1);\n }, ke._dataEnded = function() {\n return !(!this._endOfData || this._dataCache.length || !this._decoder || this._decoder.isWaitingData() || this._decoder.getPendingNALNumber());\n }, ke._preprocessYUV = function(H) {\n this._preprocessYUVPlane(H.y, H.format.width, H.format.height), this._preprocessYUVPlane(H.u, H.format.chromaWidth, H.format.chromaHeight), this._preprocessYUVPlane(H.v, H.format.chromaWidth, H.format.chromaHeight);\n }, ke._preprocessYUVPlane = function(H, ie, ye) {\n var we = H.bits > 8 ? 2 : 1;\n if (H.stride / we > ie) {\n for (var J = new Uint8Array(ie * ye * we), le = 0; le < ye; le++)\n J.set(H.bytes.subarray(H.stride * le, H.stride * le + ie * we), le * ie * we);\n H.stride = ie * we, H.bytes = J;\n } else\n H.bytes = new Uint8Array(H.bytes);\n }, ke._pushDataToDecoder = function(H) {\n this._decoder && H && (this._decBufInfo.push({ pts: H.pts, dts: H.dts, gopId: H.gopId }), this._decBufInfo.sort(function(ie, ye) {\n return ie.pts - ye.pts;\n }), this._decoder.pushNalus(H.data.units, H.pts, this._endOfData && !this._dataCache.length), H.pts > this._lastPushPTS && (this._lastPushPTS = H.pts), H.type === g.c.videoFrame && (this._vLastDTS = H.dts, this._dataCache.length || this._decoder.endOfFrame()));\n }, ke._resetTime = function() {\n D.b.i(\"v-decoder-inline\", \"reset time\"), this._decoder && this._vLastDTS && this._decoder.reset(), this._vLastPTS = 0, this._vLastDTS = 0, this._lastPushPTS = 0;\n }, ke._update = function() {\n if (this._decoder && this._clock !== -1 && this._output !== x.o.video) {\n var H = this._clock;\n if (this._vLastPTS && this._dataCache.length && this._appendDecActive && !this._seeking) {\n var ie = this._syncIndex(H);\n ie > 5 && this._dropFrame(H, this._dataCache[ie].gopId);\n }\n H += (this._maxFrameBufLen + 16) * this._frameDuration;\n var ye = this._frameBufLen < this._maxFrameBufLen;\n if (this._appendDecActive && this._dataCache.length && (this._vLastPTS <= H || ye)) {\n for (var we = this._dataCache[0], J = 0; we && (we.pts <= H || we.dts <= H || !this._vLastDTS || ye) && !(++J > 3); )\n if (this._dropPolicy === x.n.ALL_NON_REF && this._checkSkip(we.data))\n this._dataCache.shift(), we = this._dataCache[0], this._droppedFrames++;\n else {\n var le = this._dataCache.shift();\n this._pushDataToDecoder(le), we = this._dataCache[0], ye = !1;\n }\n this._endOfData && !this._dataCache.length ? (this._decoder.flush(), this._evt.emit(v.a.DECODER_DATA_END)) : this._dataCache.length < this._lowBufThreshold && this._evt.emit(v.a.DECODER_BUF_LOW);\n }\n this._decoder.isWaitingData() && !this._decoder.getPendingNALNumber() || this._decoder.nextFrame();\n }\n }, ke._syncIndex = function(H) {\n for (var ie = 0; ie < this._dataCache.length; ie++)\n if (this._dataCache[ie].type === g.c.videoFrame && this._dataCache[ie].dts >= H)\n return ie;\n return this._dataCache.length ? this._dataCache.length - 1 : -1;\n }, ke._dropFrame = function(H, ie) {\n for (var ye, we = 0, J = !1, le = 0, me = !1, he = 0; le < this._dataCache.length; ) {\n var re = this._dataCache[le], Se = void 0;\n if (re.type === g.c.videoFrame)\n if (re.gopId < ie)\n me = !0, Se = this._dataCache.splice(le, 1)[0];\n else {\n if (re.gopId > ie || !(H > re.dts && this._dropPolicy !== x.n.MIN))\n break;\n this._checkSkip(re.data) && (Se = this._dataCache.splice(le, 1)[0]), le++;\n }\n else\n re.gopId < ie && (Se = this._dataCache.splice(le, 1)[0]);\n Se && (ye === void 0 && (ye = Se.pts), he = Se.pts, we++, Se.discontinuity && (J = !0));\n }\n if (this._droppedFrames += we, me && this._decoder && this._decoder.rebuild(), J && this._resetTime(), we && ye !== void 0) {\n D.b.i(\"v-decoder-inline\", \"drop frame\", we, H, me);\n var Pe = { pts: ye, endPTS: he, count: we };\n this._evt.emit(v.a.DECODER_DROP_FRAME, Pe);\n }\n }, ke._updateFPS = function() {\n var H = this._mediaInfo;\n H && H.fps && typeof H.fps == \"number\" && H.fps > 0 && H.fps < o.j ? (this._hasOverriddenFPS = !0, this._frameDuration = o.a / H.fps, this._lowBufThreshold = Math.max(2 * H.fps, 16)) : this._frameDuration = ve;\n }, ke._startLoop = function() {\n var H = this;\n this._loop || (this._loop = setInterval(function() {\n H._update();\n }, 0));\n }, ke._stopLoop = function() {\n this._loop && (clearInterval(this._loop), this._loop = void 0);\n }, je;\n }();\n e.a = Ie;\n}, function(t, e, i) {\n var r, o = i(40), l = i(35), v = i(4), E = i(1), C = i(0), x = i(2), g = i(24), D = i(5), _ = i.n(D), m = i(15), p = i(22), d = `\n precision lowp float;\n\n attribute vec2 aPosition;\n attribute vec2 aLumaPosition;\n attribute vec2 aChromaPosition;\n varying vec2 vLumaPosition;\n varying vec2 vChromaPosition;\n uniform mat3 uMatrix;\n void main() {\n gl_Position = vec4((uMatrix * vec3(aPosition, 1)).xy, 0, 1);\n vLumaPosition = aLumaPosition;\n vChromaPosition = aChromaPosition;\n }\n `, u = `\n #define EOTF_C1 .8359375\n #define EOTF_C2 18.8515625\n #define EOTF_C3 18.6875\n #define EOTF_HLG_GAMMA 0.2\n #define _EOTF_HLG_A 0.17883277\n #define _EOTF_HLG_B 0.28466892\n #define _EOTF_HLG_C 0.55991073\n #define MAIN_A 2.51\n #define MAIN_B 0.03\n #define MAIN_C 1.23\n #define MAIN_D 0.59\n #define MAIN_E 0.14\n #define MAIN_ADAPTED_LUM 0.001\n\n precision lowp float;\n\n const vec3 eotf_m1 = vec3(1.0 / .1593017578125);\n const vec3 eotf_m2 = vec3(1.0 / 78.84375);\n const vec3 tonemapping_hlg_m1 = vec3(1.0 / 1.3);\n const vec3 main_m1 = vec3(0.555555555556);\n const vec3 main_m2 = vec3(2.0);\n \n // bt2020 to bt709\n const mat3 mat_xyz_to_rgbp3 = mat3(\n 1.66049100210843, -0.124550474521591, -0.0181507633549054, \n -0.587641138788548, 1.13289989712596, -0.100578898008008, \n -0.0728498633198855, -0.00834942260436943, 1.11872966136291\n );\n\n float _eotf_hlg(float x) {\n if (x < 0.5) {\n return pow(x / 0.5, 2.0) / 12.0;\n } else {\n return (exp((x - _EOTF_HLG_C) / _EOTF_HLG_A) + _EOTF_HLG_B) / 12.0;\n }\n }\n\n vec3 eotf_hlg(vec3 i) {\n vec3 res;\n float Y = 0.2627 * res.x + 0.6780 * res.y + 0.0593 * res.z;\n res = pow(Y, EOTF_HLG_GAMMA) * res;\n res.x = _eotf_hlg(i.x);\n res.y = _eotf_hlg(i.y);\n res.z = _eotf_hlg(i.z);\n return res;\n }\n\n vec3 eotf(vec3 i) {\n i = max(i, 1e-10);\n vec3 input_m2 = pow(i, eotf_m2);\n return pow((input_m2 - EOTF_C1) / (EOTF_C2 - EOTF_C3 * input_m2), eotf_m1) * 10000.0;\n }\n\n vec3 tonemapping_hlg(vec3 i) {\n vec3 res = pow(i, tonemapping_hlg_m1);\n return res;\n }\n\n float _trc_gamma(float i) {\n if (i < 0.018) {\n return 4.5 * i;\n } else {\n return 1.099 * pow(i, 0.45);\n }\n }\n\n vec3 trc_gamma(vec3 i) {\n vec3 res;\n res.x = _trc_gamma(i.x);\n res.y = _trc_gamma(i.y);\n res.z = _trc_gamma(i.z);\n return res;\n }\n\n uniform sampler2D uTextureY;\n uniform sampler2D uTextureCb;\n uniform sampler2D uTextureCr;\n uniform float uColorCovYOffset;\n uniform mat3 uColorConversion;\n uniform int uColorTrc;\n uniform int uBitsPerPixel;\n varying vec2 vLumaPosition;\n varying vec2 vChromaPosition;\n\n void main() {\n vec3 yuv;\n if (uBitsPerPixel > 8) {\n float normalized = pow(2.0, float(uBitsPerPixel - 8));\n yuv.x = (texture2D(uTextureY, vLumaPosition).r + texture2D(uTextureY, vLumaPosition).a * 256.0) / normalized + uColorCovYOffset;\n yuv.y = (texture2D(uTextureCb, vChromaPosition).r + texture2D(uTextureCb, vChromaPosition).a * 256.0) / normalized - 0.5;\n yuv.z = (texture2D(uTextureCr, vChromaPosition).r + texture2D(uTextureCr, vChromaPosition).a * 256.0) / normalized - 0.5;\n vec3 rgb = uColorConversion * yuv;\n\n vec3 rgb_lum;\n if (uColorTrc == 16) { // HDR10 or HDR10+\n // 电光转换(EOTF)\n rgb_lum = eotf(rgb);\n\n //tone mapping\n vec3 tmp = rgb_lum * MAIN_ADAPTED_LUM;\n rgb_lum = tmp * (tmp * MAIN_A + MAIN_B) / (tmp * (tmp * MAIN_C + MAIN_D) + MAIN_E) / 1.3;\n rgb_lum = pow(rgb_lum, main_m1) * pow(main_m2, rgb_lum) / 2.0; //g=1.8\n\n //调节饱和度\n float gray = (rgb_lum.x + rgb_lum.y + rgb_lum.z) / 2.0;\n rgb_lum = rgb_lum + (rgb_lum * 1.5 - gray) * 0.12;\n } else { // HLG\n rgb_lum = eotf_hlg(rgb);\n rgb_lum = tonemapping_hlg(rgb_lum);\n }\n vec3 rgbp3 = trc_gamma(mat_xyz_to_rgbp3 * rgb_lum);\n gl_FragColor = vec4(rgbp3, 1.0);\n } else {\n yuv.x = texture2D(uTextureY, vLumaPosition).x + uColorCovYOffset;\n yuv.y = texture2D(uTextureCb, vChromaPosition).x - 0.5;\n yuv.z = texture2D(uTextureCr, vChromaPosition).x - 0.5;\n gl_FragColor = vec4(clamp(uColorConversion * yuv, 0.0, 1.0), 1.0);\n }\n }`, U = new Float32Array([-1, -1, 1, -1, -1, 1, -1, 1, 1, -1, 1, 1]), w = new Float32Array([1.164, 1.164, 1.164, 0, -0.392, 2.017, 1.596, -0.813, 0]), S = new Float32Array([1, 1, 1, 0, -0.343, 1.765, 1.4, -0.711, 0]), R = new Float32Array([1, 1, 1, -0.011864761000000005, -0.302259224, 1.801888929, 1.197778023, -0.6617980229999999, 8744828e-9]), z = new Float32Array([1.164, 1.164, 1.164, -0.013561232000000003, -0.345441461, 2.059156233, 1.365248481, -0.756825597, 0.010008336]), W = new Float32Array([1.164, 1.164, 1.164, 0, -0.213, 2.112, 1.793, -0.533, 0]), fe = new Float32Array([1, 1, 1, 0, -0.187, 1.856, 1.575, -0.468, 0]), q = new Float32Array([1.164, 1.164, 1.164, 0, -0.187, 2.141, 1.678, -0.6504, 0]), ve = new Float32Array([1, -0, 0, 0, 1, 0, 0, 0, 1]), Ae = new Float32Array([0, -1, 0, 1, 0, 0, 0, 0, 1]), P = new Float32Array([-1, 0, 0, 0, -1, 0, 0, 0, 1]), Me = new Float32Array([0, 1, 0, -1, 0, 0, 0, 0, 1]), Ie = \"webgl-frame\", je = function() {\n function ye(J) {\n this._gl = void 0, this._textures = {}, this._framebuffers = {}, this._program = null, this._buf = null, this._positionLocation = 0, this._lumaPositionBuffer = null, this._lumaPositionLocation = 0, this._chromaPositionBuffer = null, this._chromaPositionLocation = 0, this._colorCovYoffset = null, this._texsizeLocation = null, this._colorCovLocation = null, this._colorTrcLocation = null, this._bitsPerPixelLocation = null, this._matrixLocation = null, this._vertexShader = null, this._fragmentShader = null, this._frameInfo = { rotation: 0 }, this._outputFBO = null, this._output = null, this._pictMode = p.b.normal, this._afterDrawCB = void 0, x.b.i(Ie, \"constructor\"), this._gl = J;\n }\n ye.getRotMatrix = function(J) {\n switch (J) {\n case 90:\n return Ae;\n case 180:\n return P;\n case 270:\n return Me;\n }\n return ve;\n }, ye._texParam = function(J, le) {\n J.bindTexture(J.TEXTURE_2D, le), J.texParameteri(J.TEXTURE_2D, J.TEXTURE_WRAP_S, J.CLAMP_TO_EDGE), J.texParameteri(J.TEXTURE_2D, J.TEXTURE_WRAP_T, J.CLAMP_TO_EDGE), J.texParameteri(J.TEXTURE_2D, J.TEXTURE_MIN_FILTER, J.LINEAR), J.texParameteri(J.TEXTURE_2D, J.TEXTURE_MAG_FILTER, J.LINEAR);\n };\n var we = ye.prototype;\n return we.destroy = function() {\n x.b.i(Ie, \"destroy\");\n var J = this._gl;\n if (J) {\n this._clearWebGL(), x.b.i(Ie, \"destroy. lose ctx\");\n var le = J.getExtension(\"WEBGL_lose_context\");\n le && le.loseContext();\n }\n this._frameInfo.buffer = void 0, this._frameInfo.colorInfo = void 0, this._afterDrawCB = void 0;\n }, we.setWebGLCtx = function(J, le) {\n le === void 0 && (le = p.b.normal), x.b.i(Ie, \"set webgl\", J, J !== this._gl), this._pictMode = le, J !== this._gl && (this._clearWebGL(), this._gl = J);\n }, we.drawToFBO = function() {\n var J = this._gl;\n if (x.b.i(Ie, \"draw to fbo\", !!J), J)\n return this._output || (this._output = J.createTexture(), ye._texParam(J, this._output), this._outputFBO = J.createFramebuffer(), J.bindFramebuffer(J.FRAMEBUFFER, this._outputFBO), J.texImage2D(J.TEXTURE_2D, 0, J.LUMINANCE, J.canvas.width, J.canvas.height, 0, J.LUMINANCE, J.UNSIGNED_BYTE, null), J.framebufferTexture2D(J.FRAMEBUFFER, J.COLOR_ATTACHMENT0, J.TEXTURE_2D, this._output, 0)), { texture: this._output, framebuffer: this._outputFBO };\n }, we.drawToCanvas = function() {\n x.b.i(Ie, \"draw to canvas\");\n var J = this._gl;\n J && (this._outputFBO && J.deleteFramebuffer(this._outputFBO), this._output && J.deleteTexture(this._output), this._outputFBO = null, this._output = null);\n }, we.afterDraw = function(J) {\n this._afterDrawCB = J;\n }, we._createOrReuseTexture = function(J) {\n if (this._textures[J])\n return this._textures[J];\n var le = this._gl;\n if (!le)\n return null;\n var me = le.createTexture();\n return me ? (this._textures[J] = me, me) : null;\n }, we._uploadTexture = function(J, le, me, he, re) {\n var Se = this._gl;\n if (Se) {\n var Pe = this._createOrReuseTexture(J);\n Se.activeTexture(Se.TEXTURE0), ye._texParam(Se, Pe), Se.texImage2D(Se.TEXTURE_2D, 0, he > 8 ? Se.LUMINANCE_ALPHA : Se.LUMINANCE, le, me, 0, he > 8 ? Se.LUMINANCE_ALPHA : Se.LUMINANCE, Se.UNSIGNED_BYTE, re);\n }\n }, we._init = function() {\n x.b.i(Ie, \"init\");\n var J = this._gl;\n J && (this._program = this._initProgram(d, u), this._program && (this._buf = J.createBuffer(), J.bindBuffer(J.ARRAY_BUFFER, this._buf), J.bufferData(J.ARRAY_BUFFER, U, J.STATIC_DRAW), this._positionLocation = J.getAttribLocation(this._program, \"aPosition\"), this._lumaPositionBuffer = J.createBuffer(), this._lumaPositionLocation = J.getAttribLocation(this._program, \"aLumaPosition\"), this._chromaPositionBuffer = J.createBuffer(), this._chromaPositionLocation = J.getAttribLocation(this._program, \"aChromaPosition\"), this._colorCovYoffset = J.getUniformLocation(this._program, \"uColorCovYOffset\"), this._colorCovLocation = J.getUniformLocation(this._program, \"uColorConversion\"), this._colorTrcLocation = J.getUniformLocation(this._program, \"uColorTrc\"), this._bitsPerPixelLocation = J.getUniformLocation(this._program, \"uBitsPerPixel\"), this._texsizeLocation = J.getUniformLocation(this._program, \"textureSize\"), this._matrixLocation = J.getUniformLocation(this._program, \"uMatrix\"), J.pixelStorei(J.UNPACK_ALIGNMENT, 1)));\n }, we._attachTexture = function(J, le, me) {\n var he = this._gl;\n he && this._program && (he.activeTexture(le), he.bindTexture(he.TEXTURE_2D, this._textures[J]), he.texParameteri(he.TEXTURE_2D, he.TEXTURE_WRAP_S, he.CLAMP_TO_EDGE), he.texParameteri(he.TEXTURE_2D, he.TEXTURE_WRAP_T, he.CLAMP_TO_EDGE), he.texParameteri(he.TEXTURE_2D, he.TEXTURE_MIN_FILTER, he.LINEAR), he.texParameteri(he.TEXTURE_2D, he.TEXTURE_MAG_FILTER, he.LINEAR), he.uniform1i(he.getUniformLocation(this._program, J), me));\n }, we._initProgram = function(J, le) {\n var me = this._gl;\n if (me) {\n x.b.i(Ie, \"init program\", me);\n var he = this._compileShader(me.VERTEX_SHADER, J), re = this._compileShader(me.FRAGMENT_SHADER, le);\n this._vertexShader = he, this._fragmentShader = re;\n var Se = me.createProgram();\n if (Se && he && re) {\n if (me.attachShader(Se, he), me.attachShader(Se, re), me.linkProgram(Se), !me.getProgramParameter(Se, me.LINK_STATUS)) {\n var Pe = me.getProgramInfoLog(Se);\n throw me.deleteProgram(Se), new Error(\"GL program linking failed: \" + Pe);\n }\n return Se;\n }\n }\n return null;\n }, we._compileShader = function(J, le) {\n var me = this._gl;\n if (me) {\n var he = me.createShader(J);\n if (he) {\n if (me.shaderSource(he, le), me.compileShader(he), !me.getShaderParameter(he, me.COMPILE_STATUS)) {\n var re = me.getShaderInfoLog(he);\n throw me.deleteShader(he), new Error(\"GL shader compilation for \" + J + \" failed: \" + re);\n }\n return he;\n }\n }\n return null;\n }, we.drawFrame = function(J, le, me) {\n me === void 0 && (me = 0);\n var he = this._gl;\n if (he) {\n var re = J.format, Se = J.y.bits > 8 ? 2 : 1, Pe = !this._program || this._checkFormatUpdated(J.format);\n this._frameInfo.buffer = J, this._frameInfo.colorInfo = J.format.colorInfo || le, le = J.format.colorInfo || le, this._frameInfo.rotation = me, Pe && this.clear(), this._program || this._init(), Pe && (this._setupTexturePosition(this._lumaPositionBuffer, this._lumaPositionLocation, J.y.stride / Se, J.format), this._setupTexturePosition(this._chromaPositionBuffer, this._chromaPositionLocation, J.u.stride * re.width / re.chromaWidth / Se, J.format)), this._uploadTexture(\"uTextureY\", J.y.stride / Se, J.format.height, J.y.bits, J.y.bytes), this._uploadTexture(\"uTextureCb\", J.u.stride / Se, J.format.chromaHeight, J.u.bits, J.u.bytes), this._uploadTexture(\"uTextureCr\", J.v.stride / Se, J.format.chromaHeight, J.v.bits, J.v.bytes), he.useProgram(this._program), this._pictMode === p.b.normal ? he.viewport((he.canvas.width - re.displayWidth) / 2, (he.canvas.height - re.displayHeight) / 2, re.displayWidth, re.displayHeight) : he.viewport(0, 0, he.canvas.width, he.canvas.height), this._attachTexture(\"uTextureY\", he.TEXTURE0, 0), this._attachTexture(\"uTextureCb\", he.TEXTURE1, 1), this._attachTexture(\"uTextureCr\", he.TEXTURE2, 2), this._output && (he.activeTexture(he.TEXTURE3), he.bindTexture(he.TEXTURE_2D, this._output), he.bindFramebuffer(he.FRAMEBUFFER, this._outputFBO), he.texImage2D(he.TEXTURE_2D, 0, he.RGBA, he.canvas.width, he.canvas.height, 0, he.RGBA, he.UNSIGNED_BYTE, null));\n var Xe, Oe = -16 / 255;\n le ? (Xe = le.matrixCoefficients === m.c.AVCOL_SPC_BT2020_CL || le.matrixCoefficients === m.c.AVCOL_SPC_BT2020_NCL ? q : le.matrixCoefficients === m.c.AVCOL_SPC_BT709 ? le.colorRange === m.b.AVCOL_RANGE_MPEG ? W : fe : le.colourPrimaries === m.a.AVCOL_PRI_BT470BG ? le.colorRange === m.b.AVCOL_RANGE_MPEG ? z : R : le.colorRange === m.b.AVCOL_RANGE_MPEG ? w : S, le.colorRange === m.b.AVCOL_RANGE_JPEG && (Oe = 0), he.uniform1i(this._colorTrcLocation, le.transferCharacteristics)) : Xe = J.y.bits > 8 ? q : w, he.uniform1i(this._bitsPerPixelLocation, J.y.bits), he.uniformMatrix3fv(this._matrixLocation, !1, ye.getRotMatrix(me)), he.uniform1f(this._colorCovYoffset, Oe), he.uniformMatrix3fv(this._colorCovLocation, !1, Xe);\n var st = new Float32Array([re.width, re.height]);\n he.uniform2fv(this._texsizeLocation, st), he.bindBuffer(he.ARRAY_BUFFER, this._buf), he.enableVertexAttribArray(this._positionLocation), he.vertexAttribPointer(this._positionLocation, 2, he.FLOAT, !1, 0, 0), he.bindBuffer(he.ARRAY_BUFFER, this._lumaPositionBuffer), he.enableVertexAttribArray(this._lumaPositionLocation), he.vertexAttribPointer(this._lumaPositionLocation, 2, he.FLOAT, !1, 0, 0), he.bindBuffer(he.ARRAY_BUFFER, this._chromaPositionBuffer), he.enableVertexAttribArray(this._chromaPositionLocation), he.vertexAttribPointer(this._chromaPositionLocation, 2, he.FLOAT, !1, 0, 0), he.drawArrays(he.TRIANGLES, 0, U.length / 2), this._output && (he.bindTexture(he.TEXTURE_2D, null), he.bindFramebuffer(he.FRAMEBUFFER, null), he.activeTexture(he.TEXTURE0)), he.finish(), this._afterDrawCB && this._afterDrawCB();\n }\n }, we.reDraw = function() {\n this._frameInfo.buffer && this.drawFrame(this._frameInfo.buffer, this._frameInfo.colorInfo, this._frameInfo.rotation);\n }, we._setupTexturePosition = function(J, le, me, he) {\n var re = this._gl;\n if (re) {\n var Se = he.cropLeft / me, Pe = (he.cropLeft + he.cropWidth) / me, Xe = (he.cropTop + he.cropHeight) / he.height, Oe = he.cropTop / he.height, st = new Float32Array([Se, Xe, Pe, Xe, Se, Oe, Se, Oe, Pe, Xe, Pe, Oe]);\n re.bindBuffer(re.ARRAY_BUFFER, J), re.bufferData(re.ARRAY_BUFFER, st, re.STATIC_DRAW);\n }\n }, we.clear = function() {\n var J = this._gl;\n J && (J.viewport(0, 0, J.canvas.width, J.canvas.height), J.clearColor(0, 0, 0, 0), J.clear(J.COLOR_BUFFER_BIT));\n }, we._checkFormatUpdated = function(J) {\n var le, me = (le = this._frameInfo.buffer) == null ? void 0 : le.format;\n return !(me && J.width === me.width && J.height === me.height && J.chromaWidth === me.chromaWidth && J.chromaHeight === me.chromaHeight);\n }, we._clearWebGL = function() {\n var J = this;\n x.b.i(Ie, \"clear WebGL\");\n var le = this._gl;\n le && (le.disableVertexAttribArray(this._positionLocation), le.disableVertexAttribArray(this._lumaPositionLocation), le.disableVertexAttribArray(this._chromaPositionLocation), this._buf && le.deleteBuffer(this._buf), this._lumaPositionBuffer && le.deleteBuffer(this._lumaPositionBuffer), this._chromaPositionBuffer && le.deleteBuffer(this._chromaPositionBuffer), Object.keys(this._textures).forEach(function(me) {\n J._gl && J._textures[me] && J._gl.deleteTexture(J._textures[me]), delete J._textures[me];\n }), Object.keys(this._framebuffers).forEach(function(me) {\n J._gl && J._framebuffers[me] && J._gl.deleteFramebuffer(J._framebuffers[me]), delete J._framebuffers[me];\n }), this._program && le.deleteProgram(this._program), this._vertexShader && le.deleteShader(this._vertexShader), this._fragmentShader && le.deleteShader(this._fragmentShader), this._program = null);\n }, _()(ye, [{ key: \"outputTexture\", get: function() {\n return this._output ? { texture: this._output, framebuffer: this._outputFBO } : void 0;\n } }]), ye;\n }(), ke = i(36);\n (function(ye) {\n ye[ye.OK = 0] = \"OK\", ye[ye.REORDER = 1] = \"REORDER\";\n })(r || (r = {}));\n var H = function() {\n function ye() {\n this._cache = [], this._totalSize = 0, this._index = -1, this._lastDuration = 1e3 / 24, this._maxCacheSize = 52428800;\n }\n var we = ye.prototype;\n return we.init = function(J) {\n J && J > 52428800 && (this._maxCacheSize = J);\n }, we.reset = function() {\n x.b.i(\"yuv-cache\", \"reset\"), this._cache = [], this._totalSize = 0, this._index = -1;\n }, we.next = function() {\n return this.getFrameByIndex(this._index + 1);\n }, we.prev = function() {\n return this.getFrameByIndex(this._index - 1);\n }, we.push = function(J, le) {\n le === void 0 && (le = !1);\n var me = r.OK, he = J.y.bytes.byteLength + J.u.bytes.byteLength + J.v.bytes.byteLength, re = this._cache[this._cache.length - 1], Se = re ? J.format.pts - re.pts : this._lastDuration;\n if (this._cache.push({ pts: J.format.pts, endPTS: J.format.pts + Se, size: he, yuv: J }), le && (J.y.bytes = new Uint8Array(J.y.bytes), J.u.bytes = new Uint8Array(J.u.bytes), J.v.bytes = new Uint8Array(J.v.bytes)), re)\n if ((Se <= 0 || Se >= 1e3) && x.b.i(\"yuv-cache\", \"yuv cache pts diff: \" + Se + \", \" + re.pts + \"/\" + J.format.pts), Se < 0) {\n this._cache.sort(function(Oe, st) {\n return Oe.pts - st.pts;\n });\n for (var Pe = 0; Pe < this._cache.length - 1; Pe++)\n this._cache[Pe].endPTS = this._cache[Pe + 1].pts;\n var Xe = this._cache[this._cache.length - 1];\n this._lastDuration = Xe.pts - re.pts, Xe.endPTS = Xe.pts + this._lastDuration, me = r.REORDER;\n } else\n re.endPTS = J.format.pts, this._lastDuration = Se;\n return this._totalSize += he, this._checkTotalSize(), me;\n }, we.decDropFrameInfo = function(J) {\n x.b.i(\"yuv-cache\", \"dec drop: \" + J.count + \" \" + J.pts + \" ~ \" + J.endPTS);\n var le = this._cache[this._cache.length - 1];\n le && (le.endPTS = J.pts, this._lastDuration = J.pts - le.pts, (this._lastDuration <= 0 || this._lastDuration >= 1e3) && x.b.i(\"yuv-cache\", \"yuv drop frame pts diff: \" + this._lastDuration)), this._cache.push({ pts: J.pts, endPTS: J.endPTS, size: 0 });\n }, we.ptsToIndex = function(J) {\n return this._cache.length && J <= this._cache[this._cache.length - 1].endPTS ? ke.a.searchIndex(this._cache, function(le) {\n return J < le.pts ? -1 : J > le.endPTS ? 1 : 0;\n }) : -1;\n }, we.getFrameByIndex = function(J) {\n if (J >= 0 && J < this._cache.length)\n return this._index = J, this._cache[J];\n }, we.getLessPtsIdxThen = function(J) {\n var le = this._cache[J];\n if (le && J > 0 && J < this._cache.length) {\n for (var me = J - 1; me >= 0; me--)\n if (this._cache[me].pts < le.pts)\n return me;\n }\n return -1;\n }, we.clean = function(J) {\n if (x.b.i(\"yuv-cache\", \"clean\"), J >= 0 && this.reset(), this._cache.length && J <= this._cache[this._cache.length - 1].endPTS) {\n var le = Math.max(0, ke.a.searchIndex(this._cache, function(me) {\n return J < me.pts ? -1 : J > me.pts ? 1 : 0;\n }));\n this._cache = this._cache.slice(0, le), le < this._index && (this._index = le);\n }\n }, we.hasDropedAfterIdx = function(J) {\n if (J >= this._cache.length)\n return !1;\n for (var le = Math.max(0, J); le < this._cache.length; le++)\n if (!this._cache[le].yuv)\n return !0;\n return !1;\n }, we._checkTotalSize = function() {\n for (; this._totalSize >= this._maxCacheSize && this._index > 0; ) {\n var J = this._cache.shift();\n J && J.yuv && (this._totalSize -= J.size), this._index--;\n }\n }, _()(ye, [{ key: \"current\", get: function() {\n return this.getFrameByIndex(this._index);\n } }, { key: \"index\", get: function() {\n return this._index;\n }, set: function(J) {\n J >= 0 && J < this._cache.length && (this._index = J);\n } }, { key: \"cache\", get: function() {\n return this._cache;\n } }, { key: \"remaining\", get: function() {\n return this._cache.length - 1 - this._index;\n } }]), ye;\n }(), ie = function() {\n function ye(J) {\n this._config = void 0, this._evt = void 0, this._yuvCache = new H(), this._yuv = void 0, this._decBlockPolicy = C.m.NONE, this._waitingVideoSync = !0, this._nextDraw = void 0, this._mediaInfo = void 0, this._clock = 0, this._yuvBufferLenOnWaiting = 3, this._output = C.o.canvas, this._endOfData = !1, this._loop = void 0, this._maxFrameBufLen = 10, this._cOutput = void 0, this._evt = J;\n }\n var we = ye.prototype;\n return we.init = function(J, le, me) {\n this._config = le, me instanceof l.a ? this._cOutput = me : this._cOutput = new o.a(me), this._decBlockPolicy = this._config.videoDecBlockPolicy, this._yuvCache.init(le.videoFrameBufferSize);\n try {\n var he = Object(g.a)();\n this._cOutput.webgl && he.webGL && (this._yuv = new je(this._cOutput.webgl), this._cOutput instanceof l.a && this._cOutput.setWebGLFrameSink(this._yuv));\n } catch (re) {\n console.error(re);\n }\n this._yuv ? this._startLoop() : this._evt.emit(E.a.ERROR, { type: v.b.DECODER_ERROR, details: v.a.DECODER_WEBGL_ERROR, fatal: !0, reason: \"render initialization error\" });\n }, we.append = function(J) {\n var le, me = this._yuvCache.remaining;\n this._yuvCache.push(J) === r.REORDER && (x.b.i(\"canvas-renderer\", \"yuv cache reorder.\"), this._yuvCache.ptsToIndex(this._clock), this._nextDraw = this._yuvCache.current, (le = this._nextDraw) != null && le.yuv && !this._waitingVideoSync && this._draw(this._nextDraw.yuv)), this._checkWaitingReady(), me !== this._yuvCache.remaining && this._evt.emit(E.a.RENDERER_BUF_UPDATE, { needMore: this._yuvCache.remaining < this._yuvBufferLenOnWaiting, yuvBufLen: this._yuvCache.remaining });\n }, we._checkWaitingReady = function() {\n this._waitingVideoSync && (this._yuvCache.remaining >= this._yuvBufferLenOnWaiting || this._dataEnded()) && this._onWaitingReady();\n }, we.updateState = function(J, le, me, he, re, Se) {\n if (this._clock = J, this._output !== re && this._yuv && this._yuv.clear(), this._output = re, this._maxFrameBufLen = Se, re !== C.o.video && this._cOutput && this._cOutput.updateCanvasSize(le, me)) {\n var Pe = this._yuvCache.current;\n Pe && Pe.yuv && this._draw(Pe.yuv);\n }\n }, we.updateMediaInfo = function(J) {\n x.b.i(\"canvas-renderer\", \"update media info\", J), this._mediaInfo = J;\n }, we.step = function(J) {\n if (!this._waitingVideoSync) {\n if (J === C.j.NEXT) {\n var le, me = this._nextDraw ? this._nextDraw.pts : -1;\n me >= 0 && (le = this._nextDraw) != null && le.yuv && (this._clock = me, this._evt.emit(E.a.STEP, { type: J, time: me }));\n } else if (J === C.j.PREV) {\n var he = this._nextDraw ? this._yuvCache.index - 1 : this._yuvCache.index;\n if (he > 0) {\n var re = this._yuvCache.getLessPtsIdxThen(he);\n if (re >= 0) {\n if (he - re > 1 && x.b.i(\"canvas-renderer\", \"step prev skip \" + (he - re - 1)), this._nextDraw = this._yuvCache.getFrameByIndex(re), this._nextDraw && this._nextDraw.yuv)\n return this._clock = this._nextDraw.yuv.format.pts, void this._evt.emit(E.a.STEP, { type: J, time: this._nextDraw.yuv.format.pts });\n } else\n this._yuvCache.reset();\n }\n this._evt.emit(E.a.STEP, { type: J, time: -1 });\n }\n }\n }, we.seek = function(J) {\n x.b.i(\"canvas-renderer\", \"seek: \" + J);\n var le = this._yuvCache.ptsToIndex(J);\n if (le !== -1) {\n if (!this._yuvCache.hasDropedAfterIdx(le))\n return this._yuvCache.index = le, this._nextDraw = this._yuvCache.current, x.b.i(\"canvas-renderer\", \"seek hit yuv cache\"), this._clock = J, this._updateRenderer(), void this._evt.emit(E.a.RENDERER_SEEK, { hitCache: !0, time: J });\n x.b.i(\"canvas-renderer\", \"yuv cache has dropped.\"), this._yuvCache.reset();\n }\n x.b.i(\"canvas-renderer\", \"seek miss yuv cache\"), this._evt.emit(E.a.RENDERER_SEEK, { hitCache: !1, time: J });\n }, we.endOfData = function() {\n x.b.i(\"canvas-renderer\", \"end of data\"), this._endOfData = !0, this._checkWaitingReady();\n }, we.decDropFrameInfo = function(J) {\n x.b.i(\"canvas-renderer\", \"dec drop frame info\"), this._yuvCache.decDropFrameInfo(J);\n }, we.reset = function(J, le) {\n le === void 0 && (le = !1), x.b.i(\"canvas-renderer\", \"reset\", J), this._yuvCache.reset(), le || (this._clock = -1), this._waitingVideoSync = !0, this._nextDraw = void 0, this._endOfData = !1, this._evt.emit(E.a.RENDERER_BUF_UPDATE, { needMore: !0, yuvBufLen: 0 });\n }, we.clean = function(J) {\n J === void 0 && (J = 0), this._yuvCache.clean(J), this._nextDraw = void 0, this._evt.emit(E.a.RENDERER_BUF_UPDATE, { needMore: !0, yuvBufLen: 0 });\n }, we.destroy = function() {\n this._yuv && this._yuv.destroy(), this._yuvCache.reset(), this._stopLoop(), !this._cOutput || this._cOutput instanceof l.a || this._cOutput.destroy(), this._cOutput = void 0;\n }, we._dataEnded = function() {\n return this._endOfData;\n }, we._updateRenderer = function() {\n var J, le;\n if (this._cOutput && this._clock !== -1) {\n var me = this._yuvCache.remaining;\n for (!this._nextDraw || (J = this._nextDraw) != null && J.yuv || x.b.i(\"canvas-renderer\", \"skip empty frame\"), this._nextDraw && (le = this._nextDraw) != null && le.yuv || (this._nextDraw = this._yuvCache.next()); this._nextDraw && this._clock >= 0; ) {\n var he = this._clock - this._nextDraw.pts, re = this._clock - this._nextDraw.endPTS;\n if (this._waitingVideoSync && re > 200)\n x.b.v(\"canvas-renderer\", \"skip draw\", this._clock, this._nextDraw.endPTS, re), this._nextDraw = this._yuvCache.next();\n else {\n if (this._checkWaitingReady(), this._waitingVideoSync || !(he >= -1))\n break;\n if (re <= 200) {\n x.b.v(\"canvas-renderer\", \"draw\", this._nextDraw.pts, he, re), this._nextDraw.yuv && this._draw(this._nextDraw.yuv), this._nextDraw = this._yuvCache.next();\n break;\n }\n this._decBlockPolicy === C.m.NONE ? (this._nextDraw.yuv && this._draw(this._nextDraw.yuv), this._nextDraw = this._yuvCache.next()) : (x.b.v(\"canvas-renderer\", \"skip b\", this._nextDraw.pts, he, re), this._nextDraw = this._yuvCache.next(), this._nextDraw || this._dataEnded() || this._onWaiting());\n }\n }\n me != this._yuvCache.remaining && this._evt.emit(E.a.RENDERER_BUF_UPDATE, { needMore: this._yuvCache.remaining < this._yuvBufferLenOnWaiting, yuvBufLen: this._yuvCache.remaining });\n }\n }, we._draw = function(J) {\n var le, me, he;\n if (this._cOutput) {\n var re, Se = J.format, Pe = ((le = this._mediaInfo) == null ? void 0 : le.rotation) || 0, Xe = Se.width, Oe = Se.height;\n (me = this._mediaInfo) != null && me.width && (he = this._mediaInfo) != null && he.height && this._mediaInfo.width > 0 && this._mediaInfo.height > 0 && (this._mediaInfo.width !== Se.width || this._mediaInfo.height !== Se.height) && (Xe = this._mediaInfo.width, Oe = this._mediaInfo.height), this._cOutput.updateFormatSize(Xe, Oe, Pe), Se.displayWidth = this._cOutput.displaySize.w, Se.displayHeight = this._cOutput.displaySize.h, this._yuv && this._yuv.drawFrame(J, (re = this._mediaInfo) == null ? void 0 : re.colorInfo, Pe), this._evt.emit(E.a.RENDERER_DRAW, { yuvBufLen: this._yuvCache.remaining });\n }\n }, we._startLoop = function() {\n var J = this;\n this._loop || (this._loop = setInterval(function() {\n J._updateRenderer();\n }, 0));\n }, we._stopLoop = function() {\n this._loop && (clearInterval(this._loop), this._loop = void 0);\n }, we._onWaiting = function() {\n var J = this._maxFrameBufLen || 10;\n x.b.i(\"canvas-renderer\", \"waiting. frame buf: \" + J), this._yuvBufferLenOnWaiting !== J && (this._yuvBufferLenOnWaiting = J), this._waitingVideoSync = !0, this._evt.emit(E.a.DECODER_WAITING);\n }, we._onWaitingReady = function() {\n x.b.i(\"canvas-renderer\", \"waiting ready. frame buf: \" + this._yuvCache.remaining + \", data ended: \" + this._dataEnded()), this._waitingVideoSync = !1, this._evt.emit(E.a.DEC_VIDEO_READY);\n }, ye;\n }();\n e.a = ie;\n}, function(t, e, i) {\n t.exports = function() {\n var r, o = typeof atob == \"function\", l = typeof btoa == \"function\", v = typeof Buffer == \"function\", E = typeof TextDecoder == \"function\" ? new TextDecoder() : void 0, C = typeof TextEncoder == \"function\" ? new TextEncoder() : void 0, x = Array.prototype.slice.call(\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\"), g = (r = {}, x.forEach(function(re, Se) {\n return r[re] = Se;\n }), r), D = /^(?:[A-Za-z\\d+\\/]{4})*?(?:[A-Za-z\\d+\\/]{2}(?:==)?|[A-Za-z\\d+\\/]{3}=?)?$/, _ = String.fromCharCode.bind(String), m = typeof Uint8Array.from == \"function\" ? Uint8Array.from.bind(Uint8Array) : function(re, Se) {\n return Se === void 0 && (Se = function(Pe) {\n return Pe;\n }), new Uint8Array(Array.prototype.slice.call(re, 0).map(Se));\n }, p = function(re) {\n return re.replace(/=/g, \"\").replace(/[+\\/]/g, function(Se) {\n return Se == \"+\" ? \"-\" : \"_\";\n });\n }, d = function(re) {\n return re.replace(/[^A-Za-z0-9\\+\\/]/g, \"\");\n }, u = function(re) {\n for (var Se, Pe, Xe, Oe, st = \"\", ze = re.length % 3, rt = 0; rt < re.length; ) {\n if ((Pe = re.charCodeAt(rt++)) > 255 || (Xe = re.charCodeAt(rt++)) > 255 || (Oe = re.charCodeAt(rt++)) > 255)\n throw new TypeError(\"invalid character found\");\n st += x[(Se = Pe << 16 | Xe << 8 | Oe) >> 18 & 63] + x[Se >> 12 & 63] + x[Se >> 6 & 63] + x[63 & Se];\n }\n return ze ? st.slice(0, ze - 3) + \"===\".substring(ze) : st;\n }, U = l ? function(re) {\n return btoa(re);\n } : v ? function(re) {\n return Buffer.from(re, \"binary\").toString(\"base64\");\n } : u, w = v ? function(re) {\n return Buffer.from(re).toString(\"base64\");\n } : function(re) {\n for (var Se = [], Pe = 0, Xe = re.length; Pe < Xe; Pe += 4096)\n Se.push(_.apply(null, re.subarray(Pe, Pe + 4096)));\n return U(Se.join(\"\"));\n }, S = function(re, Se) {\n return Se === void 0 && (Se = !1), Se ? p(w(re)) : w(re);\n }, R = function(re) {\n if (re.length < 2)\n return (Se = re.charCodeAt(0)) < 128 ? re : Se < 2048 ? _(192 | Se >>> 6) + _(128 | 63 & Se) : _(224 | Se >>> 12 & 15) + _(128 | Se >>> 6 & 63) + _(128 | 63 & Se);\n var Se = 65536 + 1024 * (re.charCodeAt(0) - 55296) + (re.charCodeAt(1) - 56320);\n return _(240 | Se >>> 18 & 7) + _(128 | Se >>> 12 & 63) + _(128 | Se >>> 6 & 63) + _(128 | 63 & Se);\n }, z = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFFF]|[^\\x00-\\x7F]/g, W = function(re) {\n return re.replace(z, R);\n }, fe = v ? function(re) {\n return Buffer.from(re, \"utf8\").toString(\"base64\");\n } : C ? function(re) {\n return w(C.encode(re));\n } : function(re) {\n return U(W(re));\n }, q = function(re, Se) {\n return Se === void 0 && (Se = !1), Se ? p(fe(re)) : fe(re);\n }, ve = function(re) {\n return q(re, !0);\n }, Ae = /[\\xC0-\\xDF][\\x80-\\xBF]|[\\xE0-\\xEF][\\x80-\\xBF]{2}|[\\xF0-\\xF7][\\x80-\\xBF]{3}/g, P = function(re) {\n switch (re.length) {\n case 4:\n var Se = ((7 & re.charCodeAt(0)) << 18 | (63 & re.charCodeAt(1)) << 12 | (63 & re.charCodeAt(2)) << 6 | 63 & re.charCodeAt(3)) - 65536;\n return _(55296 + (Se >>> 10)) + _(56320 + (1023 & Se));\n case 3:\n return _((15 & re.charCodeAt(0)) << 12 | (63 & re.charCodeAt(1)) << 6 | 63 & re.charCodeAt(2));\n default:\n return _((31 & re.charCodeAt(0)) << 6 | 63 & re.charCodeAt(1));\n }\n }, Me = function(re) {\n return re.replace(Ae, P);\n }, Ie = function(re) {\n if (re = re.replace(/\\s+/g, \"\"), !D.test(re))\n throw new TypeError(\"malformed base64.\");\n re += \"==\".slice(2 - (3 & re.length));\n for (var Se, Pe, Xe, Oe = \"\", st = 0; st < re.length; )\n Se = g[re.charAt(st++)] << 18 | g[re.charAt(st++)] << 12 | (Pe = g[re.charAt(st++)]) << 6 | (Xe = g[re.charAt(st++)]), Oe += Pe === 64 ? _(Se >> 16 & 255) : Xe === 64 ? _(Se >> 16 & 255, Se >> 8 & 255) : _(Se >> 16 & 255, Se >> 8 & 255, 255 & Se);\n return Oe;\n }, je = o ? function(re) {\n return atob(d(re));\n } : v ? function(re) {\n return Buffer.from(re, \"base64\").toString(\"binary\");\n } : Ie, ke = v ? function(re) {\n return m(Buffer.from(re, \"base64\"));\n } : function(re) {\n return m(je(re), function(Se) {\n return Se.charCodeAt(0);\n });\n }, H = function(re) {\n return ke(ye(re));\n }, ie = v ? function(re) {\n return Buffer.from(re, \"base64\").toString(\"utf8\");\n } : E ? function(re) {\n return E.decode(ke(re));\n } : function(re) {\n return Me(je(re));\n }, ye = function(re) {\n return d(re.replace(/[-_]/g, function(Se) {\n return Se == \"-\" ? \"+\" : \"/\";\n }));\n }, we = function(re) {\n return ie(ye(re));\n }, J = function(re) {\n return { value: re, enumerable: !1, writable: !0, configurable: !0 };\n }, le = function() {\n var re = function(Se, Pe) {\n return Object.defineProperty(String.prototype, Se, J(Pe));\n };\n re(\"fromBase64\", function() {\n return we(this);\n }), re(\"toBase64\", function(Se) {\n return q(this, Se);\n }), re(\"toBase64URI\", function() {\n return q(this, !0);\n }), re(\"toBase64URL\", function() {\n return q(this, !0);\n }), re(\"toUint8Array\", function() {\n return H(this);\n });\n }, me = function() {\n var re = function(Se, Pe) {\n return Object.defineProperty(Uint8Array.prototype, Se, J(Pe));\n };\n re(\"toBase64\", function(Se) {\n return S(this, Se);\n }), re(\"toBase64URI\", function() {\n return S(this, !0);\n }), re(\"toBase64URL\", function() {\n return S(this, !0);\n });\n }, he = { version: \"3.7.4\", VERSION: \"3.7.4\", atob: je, atobPolyfill: Ie, btoa: U, btoaPolyfill: u, fromBase64: we, toBase64: q, encode: q, encodeURI: ve, encodeURL: ve, utob: W, btou: Me, decode: we, isValid: function(re) {\n if (typeof re != \"string\")\n return !1;\n var Se = re.replace(/\\s+/g, \"\").replace(/={0,2}$/, \"\");\n return !/[^\\s0-9a-zA-Z\\+/]/.test(Se) || !/[^\\s0-9a-zA-Z\\-_]/.test(Se);\n }, fromUint8Array: S, toUint8Array: H, extendString: le, extendUint8Array: me, extendBuiltins: function() {\n le(), me();\n }, Base64: {} };\n return Object.keys(he).forEach(function(re) {\n return he.Base64[re] = he[re];\n }), he;\n }();\n}, function(t, e, i) {\n i.r(e);\n var r = i(14), o = i(1), l = i(27), v = i(11), E = i(2), C = i(42);\n e.default = function(x) {\n var g, D = new r.a();\n [o.a.PRIV_NAL, o.a.SEI, o.a.VIDEO_CODEC_DETECTED, o.a.INIT_PTS_FOUND, o.a.PARSING_INIT_SEGMENT, o.a.PARSED_DATA, o.a.LOAD_END, o.a.ERROR, o.a.DEMUXER_DETECTED, o.a.MEDIA_DEMUX, o.a.METADATA, o.a.KEY_FRAME_INDEXS, o.a.KEY_FRAME, o.a.VIDEO_FRAME_INFO, o.a.MP4_NOT_FASTSTART].forEach(function(_) {\n return D.on(_, function(m) {\n return x.postMessage({ event: _, data: m });\n });\n }), D.on(o.a.PARSING_DATA, function(_) {\n var m = { event: o.a.PARSING_DATA, data: _ }, p = [];\n _.segments.forEach(function(d) {\n p.push(d.payload.buffer);\n }), x.postMessage(m, p);\n }), D.on(o.a.RAW_DATA, function(_) {\n var m = { event: o.a.RAW_DATA, data: _ };\n if (_.type === v.c.videoFrame) {\n var p = [];\n _.samples && _.samples.forEach(function(d) {\n d.units.forEach(function(u) {\n d.units.length && p.indexOf(u.data.buffer) === -1 && p.push(u.data.buffer);\n });\n });\n try {\n x.postMessage(m, p);\n } catch (d) {\n x.postMessage(m);\n }\n } else\n x.postMessage(m);\n }), x.addEventListener(\"message\", function(_) {\n var m = _.data;\n switch (m.cmd) {\n case l.a.INIT:\n E.b.level(m.config.kwaiKernelLog), function(p, d, u, U) {\n g = new C.a(p, d, u, U);\n }(D, m.typeSupported, m.config, m.vendor);\n break;\n case l.a.PUSH:\n g.push(m.data, m.decryptdata, m.initSegment, m.timeOffset, m.contiguous, m.trackSwitch, m.discontinuity, m.accurateTimeOffset, m.fragEnd, m.transmuxData);\n break;\n case l.a.FLUSH:\n g.flush();\n break;\n case l.a.LOAD_END:\n g.end();\n break;\n case l.a.UPDATE_CONFIG:\n g.updateConfig(m.config);\n }\n });\n };\n}, function(t, e) {\n function i(r, o) {\n return t.exports = i = Object.setPrototypeOf || function(l, v) {\n return l.__proto__ = v, l;\n }, t.exports.__esModule = !0, t.exports.default = t.exports, i(r, o);\n }\n t.exports = i, t.exports.__esModule = !0, t.exports.default = t.exports;\n}, function(t, e, i) {\n i.r(e);\n var r = i(14), o = i(1), l = i(13), v = i(2), E = i(44);\n e.default = function(C) {\n var x = new r.a(), g = new E.a(x);\n [o.a.STEP, o.a.RENDERER_BUF_UPDATE, o.a.DEC_VIDEO_READY, o.a.DECODER_WAITING, o.a.RENDERER_SEEK, o.a.RENDERER_DRAW, o.a.ERROR].forEach(function(D) {\n return x.on(D, function(_) {\n return C.postMessage({ event: D, data: _ });\n });\n }), x.on(o.a.DECODER_IMG, function(D) {\n C.postMessage({ event: o.a.DECODER_IMG, data: D }, [D.frame.y.bytes.buffer, D.frame.u.bytes.buffer, D.frame.v.bytes.buffer]);\n }), C.addEventListener(\"message\", function(D) {\n var _ = D.data;\n switch (_.cmd) {\n case l.a.UPDATE_STATE:\n g.updateState(_.streamTime, _.width, _.height, _.stoped, _.output, _.maxFrameBufLen);\n break;\n case l.a.APPEND_DATA:\n g.append(_.frame);\n break;\n case l.a.SEEK:\n g.seek(_.time);\n break;\n case l.a.STEP:\n g.step(_.type);\n break;\n case l.a.INIT_RENDERER:\n v.b.level(_.config.kwaiKernelLog), g.init(_.id, _.config, _.canvas);\n break;\n case l.a.RESET:\n g.reset(_.decId, _.seeking);\n break;\n case l.a.CLEAN:\n g.clean(_.startTime);\n break;\n case l.a.MEDIA_INFO:\n g.updateMediaInfo(_.mediaInfo);\n break;\n case l.a.END_OF_DATA:\n g.endOfData();\n break;\n case l.a.DEC_DROP_FRAME:\n g.decDropFrameInfo(_.data);\n break;\n case l.a.DESTROY:\n g && g.destroy(), x && x.removeAllListeners();\n }\n });\n };\n}, function(t, e, i) {\n t.exports = function(r, o) {\n if (o = o.split(\":\")[0], !(r = +r))\n return !1;\n switch (o) {\n case \"http\":\n case \"ws\":\n return r !== 80;\n case \"https\":\n case \"wss\":\n return r !== 443;\n case \"ftp\":\n return r !== 21;\n case \"gopher\":\n return r !== 70;\n case \"file\":\n return !1;\n }\n return r !== 0;\n };\n}, function(t, e, i) {\n var r = Object.prototype.hasOwnProperty;\n function o(v) {\n try {\n return decodeURIComponent(v.replace(/\\+/g, \" \"));\n } catch (E) {\n return null;\n }\n }\n function l(v) {\n try {\n return encodeURIComponent(v);\n } catch (E) {\n return null;\n }\n }\n e.stringify = function(v, E) {\n E = E || \"\";\n var C, x, g = [];\n for (x in typeof E != \"string\" && (E = \"?\"), v)\n if (r.call(v, x)) {\n if ((C = v[x]) || C != null && !isNaN(C) || (C = \"\"), x = l(x), C = l(C), x === null || C === null)\n continue;\n g.push(x + \"=\" + C);\n }\n return g.length ? E + g.join(\"&\") : \"\";\n }, e.parse = function(v) {\n for (var E, C = /([^=?#&]+)=?([^&]*)/g, x = {}; E = C.exec(v); ) {\n var g = o(E[1]), D = o(E[2]);\n g === null || D === null || g in x || (x[g] = D);\n }\n return x;\n };\n}, function(t, e, i) {\n i.r(e);\n var r = i(14), o = i(1), l = i(2), v = i(43), E = i(13);\n e.default = function(C) {\n var x = new r.a(), g = new v.a(x);\n [o.a.DEC_INIT_COMPLETE, o.a.DECODER_SEEK, o.a.DECODER_SEEK_ABORT, o.a.RENDERER_BUF_EXPIRED, o.a.DECODER_DATA_END, o.a.DECODER_BUF_LOW, o.a.DECODER_DROP_FRAME, o.a.ERROR, o.a.DECODER_MEDIA_INFO].forEach(function(D) {\n return x.on(D, function(_) {\n return C.postMessage({ event: D, data: _ });\n });\n }), x.on(o.a.DECODER_IMG, function(D) {\n C.postMessage({ event: o.a.DECODER_IMG, data: D }, [D.frame.y.bytes.buffer, D.frame.u.bytes.buffer, D.frame.v.bytes.buffer]);\n }), C.addEventListener(\"message\", function(D) {\n var _ = D.data;\n switch (_.cmd) {\n case E.a.APPEND_DATA:\n g.appendData(_.data);\n break;\n case E.a.UPDATE_STATE:\n g.updateState(_.streamTime, _.output, _.active, _.frameBufLen, _.playbackRate, _.maxFrameBufLen);\n break;\n case E.a.INIT_265:\n l.b.level(_.config.kwaiKernelLog), g.init(_.id, _.lib, _.config, _.simd, _.threads, _.codecType, _.decoderType);\n break;\n case E.a.MEDIA_INFO:\n g.updateMediaInfo(_.mediaInfo);\n break;\n case E.a.DESTROY:\n g && g.destroy(), x && x.removeAllListeners();\n break;\n case E.a.RESET:\n g.reset(_.decId, _.seeking);\n break;\n case E.a.CLEAN:\n g.clean(_.startTime);\n break;\n case E.a.SEEK:\n g.seek(_.time);\n break;\n case E.a.END_OF_DATA:\n g.endOfData();\n break;\n case E.a.EXPIRED_DATA_SYNC:\n g.expiredDataSync();\n }\n });\n };\n}, function(t, e, i) {\n i.r(e), i.d(e, \"default\", function() {\n return Ch;\n }), i.d(e, \"createKernel\", function() {\n return oE;\n }), i.d(e, \"DownloadStatus\", function() {\n return Yt;\n }), i.d(e, \"LOG_LEVEL\", function() {\n return w.a;\n }), i.d(e, \"KEvents\", function() {\n return u.a;\n }), i.d(e, \"REPORT_TYPES\", function() {\n return Ai;\n }), i.d(e, \"CodecType\", function() {\n return P.b;\n }), i.d(e, \"Decoder\", function() {\n return P.c;\n }), i.d(e, \"DemuxerType\", function() {\n return zr.b;\n }), i.d(e, \"HttpRangeType\", function() {\n return P.d;\n }), i.d(e, \"MediaBox\", function() {\n return P.g;\n }), i.d(e, \"VideoDecBlockPolicy\", function() {\n return P.m;\n }), i.d(e, \"VideoDropFramePolicy\", function() {\n return P.n;\n }), i.d(e, \"VideoRendererType\", function() {\n return P.o;\n }), i.d(e, \"WasmDecoder\", function() {\n return P.p;\n }), i.d(e, \"StereoType\", function() {\n return P.k;\n });\n var r = i(8), o = i.n(r), l = i(5), v = i.n(l), E = i(39), C = i(12), x = i.n(C), g = i(6), D = [16, 24, 32], _ = function() {\n function L() {\n this._waitingRec = [], this._frameBufLenIdx = 0;\n }\n return L.prototype.onWaiting = function() {\n this._waitingRec.push(performance.now()), this._waitingRec.length > 3 && this._waitingRec.shift(), this._frameBufLenIdx >= D.length - 1 || this._waitingRec.length >= 3 && this._waitingRec[this._waitingRec.length - 1] - this._waitingRec[0] < 15e3 && this._frameBufLenIdx++;\n }, v()(L, [{ key: \"maxFrameBufLen\", get: function() {\n return D[this._frameBufLenIdx] || D[D.length - 1];\n } }]), L;\n }(), m = i(30), p = i.n(m), d = i(4), u = i(1), U = i(13), w = i(2), S = i(44), R = \"canvas-renderer-wrapper\", z = function() {\n function L(s, a) {\n var n = this;\n this._ctx = void 0, this._evt = void 0, this._renderer = void 0, this._rendererW = void 0, this._id = 0, this._frameBufLen = 0, this._cOutput = void 0, this._onWorkMessage = function(f) {\n var b = f.data;\n n._onMessage(f.data.event, b.data);\n }, this._onMessage = function(f, b) {\n switch (f) {\n case u.a.RENDERER_DRAW:\n case u.a.RENDERER_BUF_UPDATE:\n n._frameBufLen = b.yuvBufLen;\n }\n n._rendererW && n._evt.emit(f, b);\n }, this._evt = s, this._ctx = a, this._cOutput = a.cOutput;\n }\n var A = L.prototype;\n return A.init = function(s) {\n if (s && (this._rendererW = p()(48)), this._rendererW ? this._rendererW.addEventListener(\"message\", this._onWorkMessage) : this._renderer = new S.a(this._evt), w.b.i(R, \"init renderer\"), this._cOutput.canvas instanceof HTMLCanvasElement) {\n var a = this._ctx.getDecConfig();\n if (this._rendererW) {\n var n = this._cOutput.canvas.transferControlToOffscreen();\n this._rendererW.postMessage({ cmd: U.a.INIT_RENDERER, id: this._id, config: a, canvas: n }, [n]);\n } else\n this._renderer && this._renderer.init(this._id, a, this._cOutput);\n } else\n this._evt.emit(u.a.ERROR, { type: d.b.RENDERER_ERROR, details: d.a.DECODER_UNSUPPORTED, fatal: !0, reason: \"init error worker:\" + !!this._rendererW + \" canvas:\" + !!this._cOutput.canvas + \" decoder:\" + !!this._renderer });\n }, A.destroy = function() {\n w.b.i(R, \"destroy\"), this._rendererW ? (this._rendererW.postMessage({ cmd: U.a.DESTROY }), this._rendererW.removeEventListener(\"message\", this._onWorkMessage), this._rendererW.terminate()) : this._renderer && (this._renderer.destroy(), this._renderer = void 0);\n }, A.step = function(s) {\n w.b.i(R, \"step: \" + s), this._rendererW ? this._rendererW.postMessage({ cmd: U.a.STEP, type: s }) : this._renderer && this._renderer.step(s);\n }, A.updateMediaInfo = function(s) {\n (this._rendererW || this._renderer) && (this._rendererW ? this._rendererW.postMessage({ cmd: U.a.MEDIA_INFO, mediaInfo: s }) : this._renderer && this._renderer.updateMediaInfo(s));\n }, A.seek = function(s) {\n w.b.i(R, \"seek: \" + s), this._rendererW ? this._rendererW.postMessage({ cmd: U.a.SEEK, time: s }) : this._renderer && this._renderer.seek(s);\n }, A.reset = function(s) {\n s === void 0 && (s = !1), this._frameBufLen = 0, this._rendererW ? this._rendererW.postMessage({ cmd: U.a.RESET, decId: this._id, seeking: s }) : this._renderer && this._renderer.reset(this._id, s);\n }, A.flush = function(s) {\n this._rendererW ? this._rendererW.postMessage({ cmd: U.a.CLEAN, startTime: s }) : this._renderer && this._renderer.clean(s);\n }, A.append = function(s) {\n this._rendererW ? this._rendererW.postMessage({ cmd: U.a.APPEND_DATA, frame: s }, [s.y.bytes.buffer, s.u.bytes.buffer, s.v.bytes.buffer]) : this._renderer && this._renderer.append(s);\n }, A.update = function(s, a, n, f, b, N) {\n this._rendererW ? this._rendererW.postMessage({ cmd: U.a.UPDATE_STATE, streamTime: s, width: a, height: n, stoped: f, output: b, maxFrameBufLen: N }) : this._renderer && this._renderer.updateState(s, a, n, f, b, N);\n }, A.endOfData = function() {\n this._rendererW ? this._rendererW.postMessage({ cmd: U.a.END_OF_DATA }) : this._renderer && this._renderer.endOfData();\n }, A.dropFrame = function(s) {\n this._rendererW ? this._rendererW.postMessage({ cmd: U.a.DEC_DROP_FRAME, data: s }) : this._renderer && this._renderer.decDropFrameInfo(s);\n }, v()(L, [{ key: \"isUseingWorker\", get: function() {\n return !!this._rendererW;\n } }, { key: \"id\", get: function() {\n return this._id;\n }, set: function(s) {\n this._id = s;\n } }, { key: \"frameBufLen\", get: function() {\n return this._frameBufLen;\n } }]), L;\n }(), W = i(14), fe = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this) || this)._ctx = void 0, n._evt = void 0, n._mediaInfo = [], n._active = !1, n._waiting = !0, n._seeking = !1, n._ready = !1, n._pausedOnWaiting = void 0, n._size = { w: 0, h: 0 }, n._r = void 0, n._bufRules = new _(), n._loop = function() {\n n._active && n._ctx.cOutput.canvas && (n._updateState(), requestAnimationFrame(n._loop));\n }, n._ctx = a, n._evt = new W.a(), n._r = new z(n._evt, a), n;\n }\n x()(A, L);\n var s = A.prototype;\n return s.destroy = function() {\n this._mediaInfo = [], this.stop(), this._r.destroy(), this._evt.removeAllListeners(), this.removeAllListeners();\n }, s.setMediaInfo = function(a) {\n w.b.i(\"canvas-provider\", \"setMediaInfo\"), this._mediaInfo.push(a);\n }, s.start = function() {\n this._active || (w.b.i(\"canvas-provider\", \"start loop\"), this._active = !0, requestAnimationFrame(this._loop));\n }, s.stop = function() {\n w.b.i(\"canvas-provider\", \"stop loop\"), this._active = !1;\n }, s.step = function(a) {\n this._r.step(a);\n }, s._updateState = function() {\n }, s._checkResize = function(a) {\n var n = !1, f = (typeof window > \"u\" ? 1 : window.devicePixelRatio) || 1, b = a.clientWidth * f, N = a.clientHeight * f;\n return this._size.w === b && this._size.h === N || (this._size.w = b, this._size.h = N, n = !0), n;\n }, v()(A, [{ key: \"canvas\", get: function() {\n return this._ctx.cOutput.canvas;\n } }, { key: \"waiting\", get: function() {\n return this._waiting;\n } }, { key: \"pausedOnWaiting\", get: function() {\n return this._pausedOnWaiting;\n }, set: function(a) {\n this._pausedOnWaiting = a;\n } }]), A;\n }(W.a), q = i(45), ve = i(25), Ae = i.n(ve), P = i(0), Me = i(9);\n function Ie(L, A, s) {\n if (L[A = A.toLocaleLowerCase()] === void 0)\n L[A] = s;\n else {\n var a = L[A];\n Array.isArray(a) ? a.push(s) : typeof a == \"string\" && (L[A] = [a, s]);\n }\n }\n function je(L) {\n var A = {};\n return typeof L == \"string\" ? L.trim().split(/[\\r\\n]+/).forEach(function(s) {\n var a = s.split(\": \"), n = a.shift(), f = a.join(\":\");\n n && Ie(A, n, f);\n }) : L && L.forEach(function(s, a) {\n s.split(\",\").forEach(function(n) {\n Ie(A, a, n);\n });\n }), A;\n }\n function ke(L) {\n var A = [];\n if (L) {\n for (var s in A = [], L)\n if (s === \"kwaisign\" || s.indexOf(\"x-ks-\") === 0) {\n var a = L[s];\n a && A.push(s + \": \" + (Array.isArray(a) ? a.join(\",\") : a).slice(0, 255));\n }\n }\n if (A.length)\n return A.slice(0, 10), A;\n }\n var H, ie = function() {\n function L() {\n this.tag = \"fetch\", this._context = void 0, this._callbacks = null, this._controller = null, this._reader = null, this._abort = !1;\n }\n L.isSupported = function() {\n return typeof fetch < \"u\" && typeof ReadableStream < \"u\";\n };\n var A = L.prototype;\n return A.load = function(s, a) {\n var n = this;\n this._context = s, this._callbacks = a;\n var f = new Headers();\n s.headers && s.headers.forEach(function(N) {\n f.append(N.header, N.value);\n }), s.range && f.append(\"Range\", s.range);\n var b = { method: s.requestMethod ? s.requestMethod : \"GET\", headers: f, mode: \"cors\", cache: \"default\", referrerPolicy: \"no-referrer-when-downgrade\", signal: this._getAbortSignal() };\n s.requestBody && (b.body = s.requestBody), s.credentials && (b.credentials = \"include\"), fetch(s.url, b).then(function(N) {\n if (s.responseUrl = N.url, s.responseHeader = je(N.headers), n._callbacks && n._callbacks.onConnect && n._callbacks.onConnect(s, N.status), N.ok)\n return n._abort ? void (N.body && N.body.getReader().cancel()) : s.responseType === \"arraybuffer\" ? s.progress ? void (N.body && (n._reader = N.body.getReader(), n._pump(n._reader))) : void N.arrayBuffer().then(function(se) {\n n._onEnd(s, se);\n }) : void N.text().then(function(se) {\n n._onEnd(s, se);\n });\n var j = new Error(N.status + \" \" + N.statusText);\n n._onError(j);\n }).catch(function(N) {\n N.name !== \"AbortError\" && n._onError(N);\n });\n }, A.abort = function() {\n this._controller ? this._controller.abort() : this._reader && (this._reader.cancel(), this._reader = null), this._abort = !0;\n }, A.destroy = function() {\n this._callbacks = null, this.abort();\n }, A._onProgress = function(s, a) {\n this._callbacks && this._callbacks.onProgress && this._callbacks.onProgress(s, a);\n }, A._onEnd = function(s, a) {\n this._callbacks && this._callbacks.onEnd && (this._reader = null, this._controller = null, this._callbacks.onEnd(s, a));\n }, A._onError = function(s) {\n this._callbacks && this._callbacks.onError && this._callbacks.onError(s);\n }, A._pump = function(s) {\n var a = this;\n s.read().then(function(n) {\n if (a._abort)\n return s.cancel(), null;\n if (n.done)\n return a._onEnd(a._context, null), null;\n var f = n.value.buffer;\n return a._onProgress(a._context, f), a._pump(s);\n }).catch(function(n) {\n n.name !== \"AbortError\" && a._onError(n);\n });\n }, A._getAbortSignal = function() {\n try {\n if (AbortController)\n return this._controller = new AbortController(), this._controller.signal;\n } catch (s) {\n return null;\n }\n return null;\n }, L;\n }();\n (function(L) {\n L.MOZ_CHUNK = \"moz-chunked-arraybuffer\", L.UNKNOW = \"unknow\", L.UNSUPPORT = \"\";\n })(H || (H = {}));\n var ye, we = function() {\n function L() {\n var s = this;\n this.tag = \"xhr\", this._xhr = null, this._context = void 0, this._callbacks = null, this._progress = H.UNKNOW, this._onReadyStateChange = function(a) {\n if (s._xhr) {\n var n = s._xhr;\n n.readyState === 2 && (s._context.responseUrl = n.responseURL, s._context.responseHeader = je(n.getAllResponseHeaders()), s._callbacks && s._callbacks.onConnect && s._callbacks.onConnect(s._context, n.status), (n.status < 200 || n.status > 299) && s._onError(new Error(\"xhr error\")));\n }\n }, this._onProgress = function(a) {\n if (s._xhr) {\n var n = s._xhr.response;\n s._callbacks && s._callbacks.onProgress && n && s._callbacks.onProgress(s._context, n);\n }\n }, this._onLoadEnd = function(a) {\n var n = null, f = s._xhr;\n !s._progress && f && (n = f.response), s._callbacks && s._callbacks.onEnd(s._context, n);\n }, this._onError = function(a) {\n var n;\n s._callbacks && s._callbacks.onError && s._callbacks.onError(a), (n = s._xhr) == null || n.abort();\n }, this._xhr = null;\n }\n L.isSupportChunk = function() {\n if (L.supportChunk !== H.UNKNOW)\n return L.supportChunk;\n try {\n var s = new XMLHttpRequest();\n if (s.open(\"GET\", \"https://example.com\", !0), s.responseType = H.MOZ_CHUNK, s.responseType === H.MOZ_CHUNK)\n return L.supportChunk = H.MOZ_CHUNK, L.supportChunk;\n } catch (a) {\n L.supportChunk = H.UNSUPPORT;\n }\n return H.UNSUPPORT;\n };\n var A = L.prototype;\n return A.load = function(s, a) {\n this._callbacks = a, this._context = s, this._progress = H.UNSUPPORT, s.progress && s.responseType === \"arraybuffer\" && (this._progress = L.isSupportChunk());\n var n = this._xhr = new XMLHttpRequest();\n n.open(s.requestMethod ? s.requestMethod : \"GET\", this._context.url, !0), this._progress === H.MOZ_CHUNK ? (n.responseType = H.MOZ_CHUNK, n.onprogress = this._onProgress, n.onload = this._onLoadEnd) : (n.responseType = s.responseType || \"arraybuffer\", n.onload = this._onLoadEnd), n.onreadystatechange = this._onReadyStateChange, n.onerror = this._onError, n.withCredentials = !!s.credentials, s.range && n.setRequestHeader(\"Range\", s.range), s.headers && s.headers.forEach(function(f) {\n n.setRequestHeader(f.header, f.value);\n }), n.send(s.requestBody);\n }, A.abort = function() {\n this._xhr && (this._xhr.onreadystatechange = null, this._xhr.onprogress = null, this._xhr.onload = null, this._xhr.onerror = null, this._xhr.abort(), this._xhr = null);\n }, A.destroy = function() {\n this._callbacks = null, this.abort();\n }, L;\n }();\n we.supportChunk = H.UNKNOW;\n var J = 0, le = function() {\n var L = A.prototype;\n function A() {\n var s = this;\n this._context = void 0, this._loader = void 0, this._callbacks = null, this._config = void 0, this._loaderCallback = void 0, this._stats = void 0, this._retryDelay = 0, this._loading = !1, this._aborted = !1, this._requestTimeout = void 0, this._transTimer = void 0, this._retryTimeout = void 0, this._rangeStart = void 0, this._progressTime = 0, this._loadInternal = function() {\n s._loading = !0, s._aborted = !1;\n var a = s._stats;\n a.code = 0, a.tfirst = 0, a.loaded = 0, s._retryTimeout && (clearTimeout(s._retryTimeout), s._retryTimeout = null), s._loader = new (s._getInternalLoader(s._context, s._config))(), s._loader && (a.id = s._loader.tag + \"-\" + J, s._config.connectionTimeout && (s._requestTimeout = setTimeout(s._onTimeout, s._config.connectionTimeout)), s._httpRange(s._context), a.tsload = Date.now(), a.tstart = performance.now(), s._loader.load(s._context, s._loaderCallback));\n }, this._onConnect = function(a, n) {\n var f = s._stats;\n s._getContentLen(a, f), s._requestTimeout && (clearTimeout(s._requestTimeout), s._requestTimeout = null), s._startTransmissionTimer(), f.code = n, f.tfirst = Math.max(f.trequest, performance.now()), s._callbacks && s._callbacks.onConnect && s._callbacks.onConnect(a, f);\n }, this._onProgress = function(a, n) {\n var f = s._stats;\n if (s._progressTime = performance.now(), !a.breakpointContinuation && f.output > f.loaded) {\n if (f.loaded + n.byteLength - f.output > 0) {\n var b = n.slice(f.output - f.loaded);\n s._callProgress(s._context, b, f);\n }\n f.loaded += n.byteLength;\n } else\n f.loaded += n.byteLength, s._callProgress(s._context, n, f);\n }, this._onError = function(a) {\n w.b.i(\"loader\", a == null ? void 0 : a.message), s._stopTimer(), s._destroyLoader();\n var n, f = s._stats, b = s._config;\n s._loading = !1, s._context.breakpointContinuation && f.code === 416 ? (n = s._callbacks) != null && n.onEnd && s._callbacks.onEnd(s._context, null, f) : (f.fatal = !b.maxRetry || f.retry >= b.maxRetry || !b.maxRetry, f.text = a.message || \"load error\", s._callbacks && s._callbacks.onError && s._callbacks.onError(s._context, f), f.fatal || (b.breakpointContinuation && (w.b.i(\"loader\", \"breakpointContinuation\"), s._stats.output && s._stats.loaded > 0 ? (s._rangeStart ? s._context.rangeStart = s._rangeStart + s._stats.output : s._context.rangeStart = s._stats.output, s._context.breakpointContinuation = !0) : (s._context.rangeStart = s._rangeStart, s._context.breakpointContinuation = !1)), f.retry++, s._callbacks && (s._retryDelay ? (s._retryTimeout = setTimeout(s._loadInternal, s._retryDelay), s._retryDelay = 2 * s._retryDelay) : s._loadInternal())));\n }, this._onTimeout = function() {\n s._loading = !1, s._abortInternal();\n var a = new Error(\"timeout\");\n s._onError(a);\n }, J++, this._loader = null, this._config = { useFetch: !1, connectionTimeout: 0, transmissionTimeout: 0, maxRetry: 0, retryDelay: 0 }, this._loaderCallback = { onConnect: this._onConnect, onProgress: this._onProgress, onEnd: this._onEnd.bind(this), onError: this._onError };\n }\n return L._getInternalLoader = function(s, a) {\n if (!s.progress)\n return we;\n if (ye !== void 0)\n return ye;\n if (ye = null, Me.a.msie || Me.a.msedge) {\n if (a.useFetch)\n return ie.isSupported() && (ye = ie), ye;\n we.isSupportChunk() ? ye = we : ie.isSupported() && (ye = ie);\n } else\n ie.isSupported() ? ye = ie : we.isSupportChunk() && (ye = we);\n return ye;\n }, L.load = function(s, a, n) {\n this._init(s, a, n), this._loadInternal();\n }, L.destroy = function() {\n this._stopTimer(), this._abortInternal(!1), this._destroyLoader(), this._callbacks = null;\n }, L.abort = function() {\n this._stopTimer(), this._abortInternal();\n }, L._init = function(s, a, n) {\n this._context = s, this._rangeStart = s.rangeStart, this._callbacks = a, this._config = n || this._config, this._stats = { id: \"\", trequest: performance.now(), retry: 0, loaded: 0, code: 0, output: 0, tfirst: 0, tload: 0, total: 0, tsload: 0, tstart: 0, fatal: !1, text: \"\" }, this._config.retryDelay && (this._retryDelay = this._config.retryDelay);\n }, L._destroyLoader = function() {\n this._loader && (this._loader.destroy(), this._loader = null);\n }, L._abortInternal = function(s) {\n s === void 0 && (s = !0), s && this._callbacks && this._callbacks.onAbort && !this._aborted && this._loading && this._callbacks.onAbort(this._context, this._stats), this._aborted = !0, this._loader && this._loader.abort();\n }, L._stopTimer = function() {\n this._requestTimeout && (clearTimeout(this._requestTimeout), this._requestTimeout = null), this._retryTimeout && (clearTimeout(this._retryTimeout), this._retryTimeout = null), this._stopTransmissionTimer();\n }, L._callProgress = function(s, a, n) {\n this._stats.output += a.byteLength, this._callbacks && this._callbacks.onProgress && this._callbacks.onProgress(s, a, n);\n }, L._onEnd = function(s, a) {\n this._stopTimer();\n var n = this._stats;\n this._getContentLen(s, n), n.total = a ? n.loaded = typeof a == \"string\" ? a.length || 0 : a.byteLength || 0 : n.loaded, n.tload = Math.max(n.tfirst, performance.now()), this._loading = !1, n.output = 0, this._callbacks && this._callbacks.onEnd(s, a, n);\n }, L._startTransmissionTimer = function() {\n var s = this;\n this._stopTransmissionTimer(), this._progressTime = performance.now();\n var a = this._config.transmissionTimeout || 0;\n a && (this._transTimer = setInterval(function() {\n performance.now() - s._progressTime > a && s._onTimeout();\n }, 1e3));\n }, L._stopTransmissionTimer = function() {\n this._transTimer && (clearInterval(this._transTimer), this._transTimer = null);\n }, L._httpRange = function(s) {\n if (s.rangeEnd || s.rangeStart)\n if (s.rangeType && s.rangeType !== P.d.STANDARD && typeof s.url == \"string\") {\n var a = new Ae.a(s.url, !0);\n s.rangeEnd ? (a.query.start = (s.rangeStart || 0).toString(), a.query.end = (s.rangeEnd - 1).toString()) : s.rangeStart && (a.query.start = s.rangeStart.toString()), s.url = a.toString();\n } else\n s.rangeEnd ? s.range = \"bytes=\" + (s.rangeStart || 0) + \"-\" + (s.rangeEnd - 1) : s.rangeStart && (s.range = \"bytes=\" + s.rangeStart + \"-\");\n }, L._getContentLen = function(s, a) {\n if (!a.contentTotalLength || !a.contentLength) {\n var n = s.responseHeader;\n if (n) {\n if (s.range || typeof s.rangeStart == \"number\") {\n var f = n[\"content-range\"];\n f && (a.contentTotalLength = parseInt((Array.isArray(f) ? f[0] : f).split(\"/\")[1]) || 0);\n }\n var b = n[\"content-length\"];\n b && (a.contentLength = parseInt(Array.isArray(b) ? b[0] : b) || 0);\n }\n }\n }, v()(A, [{ key: \"context\", get: function() {\n return this._context;\n } }, { key: \"config\", get: function() {\n return this._config;\n } }]), A;\n }(), me = function() {\n function L() {\n this.timeout = 6048e5;\n }\n var A = L.prototype;\n return A.write = function(s, a) {\n if (L.available)\n try {\n localStorage.setItem(s, JSON.stringify({ value: a, time: Date.now() }));\n } catch (n) {\n }\n }, A.read = function(s, a) {\n if (a === void 0 && (a = !0), L.available)\n try {\n var n = localStorage.getItem(s);\n if (n) {\n var f = JSON.parse(n), b = f.value, N = f.time, j = N === void 0 ? 0 : N;\n if (!a || Date.now() - j < (typeof a == \"number\" ? a : this.timeout))\n return b;\n }\n } catch (se) {\n }\n }, v()(L, null, [{ key: \"available\", get: function() {\n if (L._available === void 0)\n try {\n localStorage.setItem(\"alg\", \"test\"), L._available = !0;\n } catch (s) {\n L._available = !1;\n }\n return L._available;\n } }]), L;\n }();\n me._available = void 0;\n var he = me, re = \"https://s2-10895.kwimgs.com/kos/nlav10895/\", Se = { key: \"kwai-dec265-lib\", lib: re + \"265/kwai-dec265-10.wasm\", libS: re + \"265/kwai-dec265-simd-10.wasm\", libT: re + \"265/kwai-dec265-threads-10.wasm\", libST: re + \"265/kwai-dec265-simd-threads-10.wasm\", js: re + \"265/kwai-dec265-10.js\", jsT: re + \"265/kwai-dec265-threads-10.js\", jsST: re + \"265/kwai-dec265-simd-threads-10.js\", jsW: re + \"265/kwai-dec265-threads-10.worker.js\" }, Pe = { key: \"kwai-deckvc-lib\", lib: re + \"kvc/kvc-decoder-1.wasm\", libS: re + \"kvc/kvc-decoder-simd-1.wasm\", libT: re + \"kvc/kvc-decoder-threads-2.wasm\", libST: re + \"kvc/kvc-decoder-simd-threads-2.wasm\", js: re + \"kvc/kvc-decoder-1.js\", jsT: re + \"kvc/kvc-decoder-threads-2.js\", jsST: re + \"kvc/kvc-decoder-simd-threads-2.js\", jsW: re + \"kvc/kvc-decoder-threads-2.worker.js\" }, Xe = { key: \"kwai-deckvc30-lib\", lib: re + \"kvc30/libkvc30dec-2.wasm\", libS: re + \"kvc30/libkvc30dec-simd-2.wasm\", libT: re + \"kvc30/libkvc30dec-threads-2.wasm\", libST: re + \"kvc30/libkvc30dec-simd-threads-2.wasm\", js: re + \"kvc30/libkvc30dec-2.js\", jsT: re + \"kvc30/libkvc30dec-threads-2.js\", jsST: re + \"kvc30/libkvc30dec-simd-threads-2.js\", jsW: re + \"kvc30/libkvc30dec-threads-2.worker.js\" }, Oe = { key: \"kwai-deckvc4-lib\", lib: re + \"kvc4/kvc-decoder-1.wasm\", libS: re + \"kvc4/kvc-decoder-simd-1.wasm\", libT: re + \"kvc4/kvc-decoder-threads-1.wasm\", libST: re + \"kvc4/kvc-decoder-simd-threads-1.wasm\", js: re + \"kvc4/kvc-decoder-1.js\", jsT: re + \"kvc4/kvc-decoder-threads-1.js\", jsST: re + \"kvc4/kvc-decoder-simd-threads-1.js\", jsW: re + \"kvc4/kvc-decoder-threads-1.worker.js\" }, st = { key: \"kwai-deckvc6-lib\", lib: re + \"kvc6/kvc-decoder-2.wasm\", libS: re + \"kvc6/kvc-decoder-simd-2.wasm\", libT: re + \"kvc6/kvc-decoder-threads-2.wasm\", libST: re + \"kvc6/kvc-decoder-simd-threads-2.wasm\", js: re + \"kvc6/kvc-decoder-2.js\", jsT: re + \"kvc6/kvc-decoder-threads-2.js\", jsST: re + \"kvc6/kvc-decoder-simd-threads-2.js\", jsW: re + \"kvc6/kvc-decoder-threads-2.worker.js\" }, ze = { key: \"kwai-kw265-lib\", lib: re + \"ks265/libks265dec-3.wasm\", libS: re + \"ks265/libks265dec-simd-3.wasm\", libT: re + \"ks265/libks265dec-threads-3.wasm\", libST: re + \"ks265/libks265dec-simd-threads-3.wasm\", js: re + \"ks265/libks265dec-3.js\", jsT: re + \"ks265/libks265dec-threads-3.js\", jsST: re + \"ks265/libks265dec-simd-threads-3.js\", jsW: re + \"ks265/libks265dec-threads-3.worker.js\" }, rt = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this) || this)._ls = new he(), n._decoderType = P.p.kw265, n._config = void 0, n._wasmLoader = void 0, n._jsLoader = void 0, n._jswLoader = void 0, n._loadStartTime = 0, n._onLoaderError = function(f, b) {\n n._destroyLoader(), n.emit(u.a.ERROR, { type: d.b.NETWORK_ERROR, details: d.a.DEC_LIB_LOAD_ERROR, fatal: !0, reason: b.text, statusCode: b.code, url: f.url });\n }, n._config = a, n;\n }\n x()(A, L);\n var s = A.prototype;\n return s.load = function(a, n, f, b) {\n w.b.i(\"dec-lib-loader\", \"load: \" + n), this._loadStartTime = performance.now(), this._decoderType = n;\n var N = this._decLibURL, j = N.js, se = \"\", ue = N.lib;\n b && N.jsW && (f && N.libST && N.jsST ? (ue = N.libST, j = N.jsST, se = N.jsW) : N.libT && N.jsT ? (ue = N.libT, j = N.jsT, se = N.jsW) : b = !1), f && !b && N.libS && (ue = N.libS);\n var Te = { js: { url: j, data: \"\" }, wasm: { url: ue } };\n if (se && (Te.jsw = { url: se, data: \"\" }), !a && he.available) {\n var De = this._ls.read(this._decLibURL.key, !1);\n De && (De.js && De.js.url === Te.js.url && (Te.js.data = De.js.data), Te.jsw && De.jsw && De.jsw.url === Te.jsw.url && (Te.jsw.data = De.jsw.data), De.wasm && De.wasm.url === Te.wasm.url && (Te.wasm.data = q.Base64.toUint8Array(De.wasm.data)));\n }\n this._checkEnd(Te, !0) || (Te.js.data || this._loadJs(Te), Te.wasm.data || this._loadWasm(Te), Te.jsw && !Te.jsw.data && this._loadJsw(Te));\n }, s.destroy = function() {\n this.removeAllListeners(), this._destroyLoader();\n }, s._destroyLoader = function() {\n this._destroyWasmLoader(), this._destroyJsLoader(), this._destroyJswLoader();\n }, s._checkEnd = function(a, n) {\n n === void 0 && (n = !1);\n var f = !!(a.js.data && a.wasm.data && (!a.jsw || a.jsw && a.jsw.data));\n if (!n && f && a.wasm.data) {\n var b = { js: o()({}, a.js), wasm: { url: a.wasm.url, data: q.Base64.fromUint8Array(a.wasm.data) } };\n a.jsw && (b.jsw = o()({}, a.jsw)), this._ls.write(this._decLibURL.key, b);\n }\n if (f) {\n w.b.i(\"dec-lib-loader\", \"dec lib loaded\", n);\n var N = { lib: a, hitCache: n, duration: performance.now() - this._loadStartTime };\n this.emit(u.a.DEC_LIB_LOADED, N);\n }\n return f;\n }, s._loadWasm = function(a) {\n var n = this;\n this._destroyWasmLoader();\n var f = this._wasmLoader = new le(), b = { onError: this._onLoaderError, onEnd: function(se, ue) {\n ue instanceof ArrayBuffer && (a.wasm.data = new Uint8Array(ue), n._checkEnd(a));\n } }, N = { useFetch: !1, connectionTimeout: this._config.decLibConnectionTimeout, maxRetry: this._config.decLibLoadingMaxRetry }, j = { url: a.wasm.url, responseType: \"arraybuffer\", progress: !1 };\n f.load(j, b, N);\n }, s._loadJs = function(a) {\n var n = this;\n this._destroyJsLoader();\n var f = this._jsLoader = new le(), b = { onError: this._onLoaderError, onEnd: function(se, ue) {\n typeof ue == \"string\" && (a.js.data = ue, n._checkEnd(a));\n } }, N = { useFetch: !1, connectionTimeout: this._config.decLibConnectionTimeout, maxRetry: this._config.decLibLoadingMaxRetry }, j = { url: a.js.url, responseType: \"text\", progress: !1 };\n f.load(j, b, N);\n }, s._loadJsw = function(a) {\n var n = this;\n if (this._destroyJswLoader(), a.jsw) {\n var f = this._jsLoader = new le(), b = { onError: this._onLoaderError, onEnd: function(se, ue) {\n typeof ue == \"string\" && (a.jsw && (a.jsw.data = ue), n._checkEnd(a));\n } }, N = { useFetch: !1, connectionTimeout: this._config.decLibConnectionTimeout, maxRetry: this._config.decLibLoadingMaxRetry }, j = { url: a.jsw.url, responseType: \"text\", progress: !1 };\n f.load(j, b, N);\n }\n }, s._destroyWasmLoader = function() {\n this._wasmLoader && this._wasmLoader.destroy();\n }, s._destroyJsLoader = function() {\n this._jsLoader && this._jsLoader.destroy();\n }, s._destroyJswLoader = function() {\n this._jswLoader && this._jswLoader.destroy();\n }, v()(A, [{ key: \"_decLibURL\", get: function() {\n return this._decoderType === P.p.kvc3 ? Pe : this._decoderType === P.p.kvc4 ? Oe : this._decoderType === P.p.kvc5 || this._decoderType === P.p.kvc6 ? st : this._decoderType === P.p.kvc30 ? Xe : this._decoderType === P.p.h265 ? Se : ze;\n } }]), A;\n }(W.a);\n function Fe() {\n return typeof navigator > \"u\" ? 0 : navigator.hardwareConcurrency || 0;\n }\n function G() {\n if (typeof window < \"u\")\n return window.MediaSource || window.WebKitMediaSource;\n }\n function k() {\n var L, A;\n if (typeof window < \"u\")\n return ((L = window) == null ? void 0 : L.SourceBuffer) || ((A = window) == null ? void 0 : A.WebKitSourceBuffer);\n }\n var F, I, V = i(24);\n (function(L) {\n L.WIDEVINE = \"com.widevine.alpha\", L.PLAYREADY = \"com.microsoft.playready\", L.FAIRPLAY = \"com.apple.fairplay\";\n })(F || (F = {})), function(L) {\n L.WIDEVINE = \"urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed\";\n }(I || (I = {}));\n var ne = typeof window < \"u\" && window.navigator && window.navigator.requestMediaKeySystemAccess ? window.navigator.requestMediaKeySystemAccess.bind(window.navigator) : void 0, oe = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this) || this)._ctx = void 0, n._drmSystemOptions = { audioRobustness: \"SW_SECURE_CRYPTO\", videoRobustness: \"SW_SECURE_DECODE\" }, n._mediaKeysList = [], n._hasSetMediaKeys = !1, n._loader = void 0, n._loaderConfig = void 0, n._mediaKeysPromise = void 0, n._licenseServerUrl = \"\", n._videoCodecs = [], n._onMediaEncrypted = function(f) {\n if (w.b.i(\"eme\", 'Media is encrypted using \"' + f.initDataType + '\" init data type'), !n._mediaKeysPromise && n._videoCodecs.length && f.initDataType === \"cenc\" && f.initData && (n._licenseServerUrl = n._licenseServerUrl || n._ctx.config.widevineLicenseUrl, n._attemptKeySystemAccess(F.WIDEVINE, n._videoCodecs)), !n._mediaKeysPromise)\n return w.b.e(\"eme\", \"Fatal: Media is encrypted but no CDM access or no keys have been requested\"), void n._onError({ type: d.b.KEY_SYSTEM_ERROR, details: d.a.KEY_SYSTEM_NO_KEYS, fatal: !0, reason: \"media is encrypted but no CDM access or no keys have been requested\" });\n var b = function(N) {\n n._ctx.video && (n._attemptSetMediaKeys(N), n._generateRequestWithPreferredKeySession(f.initDataType, f.initData));\n };\n n._mediaKeysPromise.then(b).catch(b);\n }, n._onKeySessionMessage = function(f) {\n var b = f.target;\n n._requestLicense(f.message, b);\n }, n._onLoaderError = function(f, b) {\n b.fatal && n._onError({ type: d.b.NETWORK_ERROR, details: d.a.KEY_SYSTEM_LICENSE_REQUEST_FAILED, fatal: !0, reason: b.text, statusCode: b.code });\n }, n.isBrowserSupported = function() {\n return Me.a.name === \"chrome\" && Me.a.version.major >= 68 || Me.a.firefox;\n }, n._onError = function(f) {\n n.emit(u.a.ERROR, f);\n }, n._ctx = a, a.video && a.video.addEventListener(\"encrypted\", n._onMediaEncrypted), n._loaderConfig = { useFetch: !1, maxRetry: a.config.keyLoadingMaxRetry, connectionTimeout: a.config.keyConnectionTimeout, transmissionTimeout: a.config.keyTransmissionTimeout, retryDelay: a.config.keyLoadingRetryDelay }, n;\n }\n x()(A, L), A.getSupportedMediaKeySystemConfigurations = function(a, n, f) {\n var b = { audioCapabilities: [{ contentType: 'audio/mp4; codecs=\"mp4a.40.5\"', robustness: f.audioRobustness || \"\" }, { contentType: 'audio/mp4; codecs=\"mp4a.40.2\"', robustness: f.audioRobustness || \"\" }], videoCapabilities: [] };\n return n.forEach(function(N) {\n b.videoCapabilities.push({ contentType: 'video/mp4; codecs=\"' + N + '\"', robustness: f.videoRobustness || \"\" });\n }), [b];\n };\n var s = A.prototype;\n return s.onManifestParsed = function(a, n) {\n var f = this;\n if (n === void 0 && (n = !1), this._videoCodecs = a.map(function(N) {\n return N.videoCodec;\n }), n)\n if (a.reduce(function(N, j) {\n return N && (j.drmSchemaId === I.WIDEVINE || !j.drmSchemaId);\n }, !0) && ne && this.isBrowserSupported()) {\n this._licenseServerUrl = a.reduce(function(N, j) {\n return N || j.drmToken || \"\";\n }, \"\");\n var b = F.WIDEVINE;\n w.b.i(\"eme\", \"on manifest parsed\", b, this._videoCodecs), this._attemptKeySystemAccess(F.WIDEVINE, this._videoCodecs);\n } else\n setTimeout(function() {\n return f._onError({ type: d.b.KEY_SYSTEM_ERROR, details: d.a.KEY_SYSTEM_UNSUPPORTED, fatal: !0, reason: \"DRM unsupported.\" });\n }, 0);\n }, s.reset = function() {\n var a, n = this;\n return w.b.i(\"eme\", \"reset\"), this._mediaKeysList.map(function(f) {\n if (f.mediaKeysSession)\n return f.mediaKeysSession.removeEventListener(\"message\", n._onKeySessionMessage), f.mediaKeysSession.close().catch(function() {\n });\n }), this._mediaKeysList = [], this._hasSetMediaKeys = !1, (a = this._ctx.video) == null ? void 0 : a.setMediaKeys(null);\n }, s.destory = function() {\n var a = this, n = this._ctx.video;\n n && n.removeEventListener(\"encrypted\", this._onMediaEncrypted);\n var f = this._mediaKeysList;\n f.length && Promise.all(f.map(function(b) {\n if (b.mediaKeysSession)\n return b.mediaKeysSession.removeEventListener(\"message\", a._onKeySessionMessage), b.mediaKeysSession.close().catch(function() {\n });\n })).then(function() {\n if (n)\n return n.setMediaKeys(null);\n }).catch(function() {\n }), this.removeAllListeners();\n }, s._attemptSetMediaKeys = function(a) {\n if (!this._ctx.video)\n throw new Error(\"Attempted to set mediaKeys without first attaching a media element\");\n if (!this._hasSetMediaKeys) {\n var n = this._mediaKeysList[0];\n if (!n || !n.mediaKeys)\n return w.b.e(\"eme\", \"Fatal: Media is encrypted but no CDM access or no keys have been obtained yet\"), void this._onError({ type: d.b.KEY_SYSTEM_ERROR, details: d.a.KEY_SYSTEM_NO_KEYS, fatal: !0, reason: \"media is encrypted but no CDM access or no keys have been obtained yet\" });\n w.b.i(\"eme\", \"Setting keys for encrypted media\"), this._ctx.video.setMediaKeys(n.mediaKeys), this._hasSetMediaKeys = !0;\n }\n }, s._generateRequestWithPreferredKeySession = function(a, n) {\n var f = this, b = this._mediaKeysList[0];\n if (!b)\n return w.b.e(\"eme\", \"Fatal: Media is encrypted but not any key-system access has been obtained yet\"), void this._onError({ type: d.b.KEY_SYSTEM_ERROR, details: d.a.KEY_SYSTEM_NO_ACCESS, fatal: !0, reason: \"media is encrypted but not any key-system access has been obtained yet\" });\n if (b.mediaKeysSessionInitialized)\n w.b.i(\"eme\", \"Key-Session already initialized but requested again\");\n else {\n var N = b.mediaKeysSession;\n if (!N)\n return w.b.e(\"eme\", \"Fatal: Media is encrypted but no key-session existing\"), void this._onError({ type: d.b.KEY_SYSTEM_ERROR, details: d.a.KEY_SYSTEM_NO_SESSION, fatal: !0, reason: \"media is encrypted but no key-session existing\" });\n if (!n)\n return w.b.i(\"eme\", \"Fatal: initData required for generating a key session is null\"), void this._onError({ type: d.b.KEY_SYSTEM_ERROR, details: d.a.KEY_SYSTEM_NO_INIT_DATA, fatal: !0, reason: \"initData required for generating a key session is null\" });\n w.b.i(\"eme\", 'Generating key-session request for \"' + a + '\" init data type'), b.mediaKeysSessionInitialized = !0, N.generateRequest(a, n).then(function() {\n w.b.d(\"eme\", \"Key-session generation succeeded\");\n }).catch(function(j) {\n w.b.e(\"eme\", \"Error generating key-session request:\", j), f._onError({ type: d.b.KEY_SYSTEM_ERROR, details: d.a.KEY_SYSTEM_NO_SESSION, fatal: !1, reason: \"error generating key-session request:\" + j });\n });\n }\n }, s._attemptKeySystemAccess = function(a, n) {\n var f = this, b = A.getSupportedMediaKeySystemConfigurations(a, n, this._drmSystemOptions);\n if (w.b.i(\"eme\", \"Requesting encrypted media key-system access\"), ne) {\n var N = ne(a, b);\n this._mediaKeysPromise = N.then(function(j) {\n var se = { mediaKeysSessionInitialized: !1, mediaKeySystemAccess: j, mediaKeySystemDomain: a };\n f._mediaKeysList.push(se);\n var ue = Promise.resolve().then(function() {\n return j.createMediaKeys();\n }).then(function(Te) {\n return se.mediaKeys = Te, f._mediaKeysList.forEach(function(De) {\n De.mediaKeysSession || (De.mediaKeysSession = De.mediaKeys.createSession()).addEventListener(\"message\", f._onKeySessionMessage, !1);\n }), Te;\n });\n return ue.catch(function(Te) {\n w.b.e(\"eme\", \"Failed to create media-keys:\", Te);\n }), ue;\n }), N.catch(function(j) {\n w.b.e(\"eme\", 'Failed to obtain key-system \"' + a + '\" access:', j);\n });\n } else\n w.b.i(\"eme\", \"no requestMediaKeySystemAccess\");\n }, s._getLicenseServerUrl = function(a) {\n switch (a) {\n case F.WIDEVINE:\n if (!this._ctx.config.widevineLicenseUrl)\n break;\n return this._ctx.config.widevineLicenseUrl;\n case F.PLAYREADY:\n if (!this._ctx.config.playreadyLicenseUrl)\n break;\n return this._ctx.config.playreadyLicenseUrl;\n case F.FAIRPLAY:\n if (!this._ctx.config.fairplayLicenseUrl)\n break;\n return this._ctx.config.fairplayLicenseUrl;\n }\n throw new Error('no license server URL configured for key-system \"' + a + '\"');\n }, s._requestLicense = function(a, n) {\n var f = this, b = this._mediaKeysList[0];\n if (!b)\n return w.b.e(\"eme\", \"Fatal error: Media is encrypted but no key-system access has been obtained yet\"), void this._onError({ type: d.b.KEY_SYSTEM_ERROR, details: d.a.KEY_SYSTEM_NO_ACCESS, fatal: !0, reason: \"media is encrypted but no key-system access has been obtained yet\" });\n this._disposeLoader();\n var N = { onError: this._onLoaderError, onEnd: function(ue, Te) {\n f._disposeLoader(), Te instanceof ArrayBuffer && n.update(Te);\n } }, j = this._loader = new le(), se = { requestMethod: \"POST\", requestBody: a, url: this._licenseServerUrl || this._getLicenseServerUrl(b.mediaKeySystemDomain), responseType: \"arraybuffer\" };\n j.load(se, N, this._loaderConfig);\n }, s._disposeLoader = function() {\n this._loader && this._loader.destroy();\n }, v()(A, [{ key: \"isActive\", get: function() {\n return !(!this._ctx.video || !this._ctx.video.mediaKeys);\n } }]), A;\n }(W.a), te = i(10), Ee = function(L) {\n function A(a, n) {\n var f;\n return (f = L.call(this) || this)._config = void 0, f._avStat = void 0, f._stat = void 0, f.video = void 0, f._sourceBuffer = void 0, f._mediaSource = null, f._mimeCodec = void 0, f._cleanUpTask = void 0, f._appendQueue = void 0, f._hasVideo = void 0, f._hasAudio = void 0, f._endOfData = !1, f._appendEnabled = void 0, f._duration = 1 / 0, f._appendError = 0, f._appendBufferError = !1, f._mseDuration = null, f._sbHandler = {}, f._souceBufferLocked = !1, f._sbAppendStarted = void 0, f._startBufSec = 0, f._startBufTimer = void 0, f._lastAppendInfo = {}, f._changeTypeSupported = pt.isChangeTypeSupported(), f._onSourceOpen = function() {\n w.b.i(\"mse\", \"MediaSource onSourceOpen\"), f._mediaSource && (f._mediaSource.removeEventListener(\"sourceopen\", f._onSourceOpen), f._checkSourceBuffer(), f.refresh());\n }, f._onSourceEnded = function() {\n w.b.i(\"mse\", \"MediaSource onSourceEnded\");\n }, f._onSourceClose = function() {\n w.b.i(\"mse\", \"MediaSource onSourceClose\"), f._mediaSource && (f._mediaSource.removeEventListener(\"sourceopen\", f._onSourceOpen), f._mediaSource.removeEventListener(\"sourceended\", f._onSourceEnded), f._mediaSource.removeEventListener(\"sourceclose\", f._onSourceClose));\n }, f._onSourceBufferUpdateEnd = function(b) {\n f._update(b), f._endOfData && f._endOfStream(), f._updateDuration(), f._stat.mseUpdate++, f.emit(u.a.MSE_UPDATE);\n }, f._onSourceBufferError = function(b) {\n var N = f._getSourceBufferType(b.currentTarget);\n w.b.i(\"mse\", N + \" SourceBuffer Error: \", b), f._onError({ type: d.b.MSE_ERROR, details: d.a.SOURCEBUFFER_ERROR, fatal: !0, reason: N + \" source buffer error. \" + JSON.stringify(f._lastAppendInfo) });\n }, f._startBufEnded = function() {\n w.b.i(\"mse\", \"startPlayBufEnd\"), f._removeStartBufTimer(), f._startBufSec = 0, f.refresh();\n }, f._onError = function(b) {\n f.emit(u.a.ERROR, b);\n }, w.b.i(\"mse\", \"constructor\"), f._config = a, f._avStat = n, f._hasVideo = !1, f._hasAudio = !1, f._appendQueue = { video: [], audio: [] }, f._sourceBuffer = {}, f._cleanUpTask = { video: [], audio: [] }, f._mimeCodec = {}, f._sbAppendStarted = {}, f._appendEnabled = !0, f._stat = { mseBufferFull: 0, mseRemove: 0, mseUpdate: 0 }, f;\n }\n x()(A, L);\n var s = A.prototype;\n return s.attach = function(a) {\n var n = this;\n w.b.i(\"mse\", \"attach\", a), this.video = a;\n var f = G();\n if (f) {\n var b = this._mediaSource = new f(), N = URL.createObjectURL(b);\n w.b.i(\"mse\", \"src: \" + N), this.video.src = N, this.video.load(), b.addEventListener(\"sourceopen\", this._onSourceOpen), b.addEventListener(\"sourceended\", this._onSourceEnded), b.addEventListener(\"sourceclose\", this._onSourceClose), this._souceBufferLocked = !1;\n } else\n setTimeout(function() {\n n._onError({ type: d.b.MSE_ERROR, details: d.a.MEDIASOURCE_ERROR, fatal: !0, reason: \"MediaSource is not support\" });\n }, 0);\n }, s.trackInfo = function(a) {\n var n = a.tracks.audio, f = a.tracks.video;\n n && n.container && (this._mimeCodec.audio = n.container + '; codecs=\"' + n.codec + '\"'), f && f.codec && (this._mimeCodec.video = f.container + '; codecs=\"' + f.codec + '\"'), this._hasAudio = !(!this._hasAudio && !n), this._hasVideo = !(!this._hasVideo && !f), w.b.i(\"mse\", \"track info. video: \" + this._hasVideo + \" audio: \" + this._hasAudio), this._checkSourceBuffer();\n }, s.updateDuration = function(a) {\n w.b.i(\"mse\", \"update duration: \" + a), this._duration = a, this._updateDuration();\n }, s.setStartBufSec = function(a) {\n w.b.i(\"mse\", \"startPlayBufSec: \" + a), this._removeStartBufTimer(), this._startBufSec = a, this._startBufTimer = setTimeout(this._startBufEnded, 1e3 * a);\n }, s._updateDuration = function() {\n if (typeof this._duration == \"number\" && this.video && this._mediaSource && this._sourceBuffer && this.video.readyState !== 0 && this._mediaSource.readyState === \"open\") {\n for (var a in this._sourceBuffer)\n if (this._sourceBuffer[a] && this._sourceBuffer[a].updating)\n return;\n var n = this.video.duration;\n if (this._mseDuration === null && (this._mseDuration = this._mediaSource.duration), this._avStat.isLive && !this._avStat.liveShiftEnabled)\n this._mseDuration = this._mediaSource.duration = 1 / 0;\n else if (this._duration !== this._mseDuration && this._duration !== n || !Object(te.a)(n)) {\n var f = !0;\n for (var b in this._sourceBuffer)\n f = f && !!this._duration && this.bufferedEndByType(b) < this._duration;\n f && this._duration && (this._mseDuration = this._mediaSource.duration = this._duration), this._duration = null;\n }\n }\n }, s._checkSourceBuffer = function() {\n var a = (this._hasAudio ? 1 : 0) + (this._hasVideo ? 1 : 0), n = (this._mimeCodec.audio ? 1 : 0) + (this._mimeCodec.video ? 1 : 0);\n if (w.b.v(\"mse\", \"checkSourceBuffer\", a, n, this._mimeCodec), this._mediaSource && this._mediaSource.readyState === \"open\" && a > 0 && n >= a)\n for (var f in this._mimeCodec)\n this._mimeCodec[f] && (w.b.i(\"mse\", \"add sb: \" + f + \" \" + this._mimeCodec[f]), this._addSourceBuffer(f));\n }, s._addSourceBuffer = function(a) {\n var n = this;\n if (!this._sourceBuffer[a] && !this._souceBufferLocked) {\n try {\n this._mediaSource && (this._sourceBuffer[a] = this._mediaSource.addSourceBuffer(this._mimeCodec[a]), this._lastAppendInfo[a] = { sn: 0, subSn: 0, codec: this._mimeCodec[a] }, this._sbAppendStarted[a] = !1);\n } catch (b) {\n return w.b.e(\"mse\", b), void this._onError({ type: d.b.MSE_ERROR, details: d.a.ADDSOURCEBUFFER_ERROR, fatal: !0, reason: \"type:\" + a + \" codec:\" + this._mimeCodec[a] + \" code:\" + b.code + \" msg:\" + b.message });\n }\n var f = this._sourceBuffer[a];\n this._sbHandler[a] = { updateend: function() {\n n._onSourceBufferUpdateEnd(a);\n }, error: function(b) {\n n._onSourceBufferError(b);\n } }, f.addEventListener(\"error\", this._sbHandler[a].error), f.addEventListener(\"updateend\", this._sbHandler[a].updateend), this._duration && this._mediaSource && this._duration !== this._mediaSource.duration && (this._mediaSource.duration = this._duration);\n }\n }, s._hasPendingData = function() {\n return !(!this._appendQueue || !(this._appendQueue.video && this._appendQueue.video.length || this._appendQueue.audio && this._appendQueue.audio.length));\n }, s.refresh = function() {\n for (var a in this._sourceBuffer)\n this._update(a);\n }, s._doAppend = function(a) {\n if (this._appendQueue[a] && this._appendQueue[a].length > 0) {\n if (!this._appendEnabled)\n return void (this._getBufferQueueSize() > 209715200 && !this._appendBufferError && (this._appendBufferError = !0, this._onError({ type: d.b.MSE_ERROR, details: d.a.APPENDBUFFER_ERROR, fatal: !0, reason: \"bufferfull\" })));\n if (this._sourceBuffer[a] && !this._sourceBuffer[a].updating && !this._appendBufferError) {\n var n = this._appendQueue[a].shift();\n this._appendBuffer(n);\n }\n }\n }, s.mediaSegment = function(a) {\n var n = this;\n a.forEach(function(f) {\n var b = f.type;\n f.codec = n._mimeCodec[f.type], n._appendQueue[b].push(f), n._sourceBuffer[b] && (n._souceBufferLocked = !0, n._update(b));\n });\n }, s.bufferedByType = function(a) {\n var n = this._sourceBuffer[a];\n return n && n.buffered.length > 0 ? { start: n.buffered.start(0), end: n.buffered.end(n.buffered.length - 1) } : { start: 0, end: 0 };\n }, s.bufferedEndByType = function(a) {\n var n = this._sourceBuffer[a];\n return n && n.buffered.length > 0 ? n.buffered.end(n.buffered.length - 1) : 0;\n }, s.bufferSliceNumByType = function(a) {\n var n = this._sourceBuffer[a];\n return n ? n.buffered.length : 0;\n }, s.pendingSecByType = function(a) {\n var n = this._appendQueue[a];\n return n ? n.reduce(function(f, b) {\n return f + b.endDTS - b.startDTS;\n }, 0) : 0;\n }, s.pendingNum = function() {\n var a = 0;\n for (var n in this._appendQueue)\n a += this._appendQueue[n].length;\n return a;\n }, s._calculateRemoveRange = function(a) {\n var n = this.video;\n if (n && !n.seeking) {\n var f = n.currentTime;\n if (this._sourceBuffer[a]) {\n var b = this._cleanUpTask[a], N = this._sourceBuffer[a].buffered;\n if (N.length >= 1 && f - N.start(0) >= 10) {\n var j = f - 5;\n if (b.length && b[b.length - 1].start === 0 && b[b.length - 1].end === j)\n return;\n b.push({ start: 0, end: j });\n }\n }\n }\n }, s._cleanUpRange = function(a, n) {\n try {\n for (var f = 0; f < a.buffered.length; f++) {\n var b = a.buffered.start(f), N = a.buffered.end(f), j = Math.max(b, n.start), se = Math.min(N, n.end);\n if (se > j)\n return a.remove(j, se), this._stat.mseRemove++, !(n.end > N && f < a.buffered.length - 1) || (n.start = Math.max(n.start, se), !1);\n if (!(n.end > se))\n break;\n n.start = Math.max(n.start, se);\n }\n return !0;\n } catch (ue) {\n return !(a && a.updating);\n }\n }, s._appendBuffer = function(a) {\n if (a && this._sourceBuffer[a.type] && this.video && !this.video.error) {\n var n = this._lastAppendInfo[a.type], f = this._sourceBuffer[a.type];\n if (a.codec && n && a.codec !== n.codec && (w.b.i(\"mse\", a.type + \" codecType change: \" + a.codec), f && this._changeTypeSupported)) {\n w.b.i(\"mse\", a.type + \" changeType: \" + a.codec);\n try {\n f.changeType(a.codec), n.subSn = 0;\n } catch (b) {\n return void this._onError({ type: d.b.MSE_ERROR, details: d.a.CHANGETYPE_ERROR, fatal: !0, reason: \"type:\" + a.type + \" codec:\" + a.codec + \" code:\" + b.code + \" msg:\" + b.message });\n }\n }\n n && (n.codec = a.codec, n.start = a.startDTS, n.end = a.endDTS, n.sn++, n.subSn++);\n try {\n a.updateTimestampOffset && !f.buffered.length && (f.timestampOffset = a.startPTS), f.appendBuffer(a.payload.buffer), this._sbAppendStarted[a.type] = !0;\n } catch (b) {\n w.b.i(\"mse\", a.type, b.code, b.message), b.code !== 22 ? (this._appendError ? this._appendError++ : this._appendError = 1, this._appendError > this._config.appendErrorMaxRetry ? (this._appendBufferError = !0, this._onError({ type: d.b.MSE_ERROR, details: d.a.APPENDBUFFER_ERROR, fatal: !0, reason: \"code:\" + b.code + \" type:\" + a.type + \" msg:\" + b.message })) : this._appendQueue[a.type].unshift(a)) : (this._appendQueue[a.type].unshift(a), this._calculateRemoveRange(a.type), this.hasCleanUpTask(a.type) && this._cleanUp(a.type), w.b.i(\"mse\", \"mse bufferfull\"), this._stat.mseBufferFull++, this.emit(u.a.MSE_BUFFER_FULL));\n }\n }\n }, s._getSourceBufferType = function(a) {\n for (var n in this._sourceBuffer)\n if (this._sourceBuffer[n] === a)\n return n;\n return \"unknown\";\n }, s.clean = function(a, n, f) {\n var b = 0, N = Number.POSITIVE_INFINITY;\n for (var j in this._sbAppendStarted = {}, this._endOfData = !1, this._sourceBuffer)\n if (this._sbAppendStarted[j] = !1, (!f || f === j) && this._sourceBuffer[j]) {\n if (a) {\n b = Math.max(b, a);\n for (var se = this._appendQueue[j].length - 1; se >= 0 && (!this._appendQueue[j][se].startPTS || this._appendQueue[j][se].startPTS >= a); se--)\n this._appendQueue[j].pop();\n } else\n this._appendQueue[j] = [];\n n && (N = Math.min(N, n)), this._cleanUpTask[j].push({ start: b, end: N }), this._cleanUp(j);\n }\n this._appendEnabled = !0;\n }, s.setAppendEnabled = function(a) {\n !this._appendEnabled && a ? (this._appendEnabled = a, this.refresh()) : this._appendEnabled = a;\n }, s.getAppendEnabled = function() {\n return this._appendEnabled;\n }, s.endOfData = function() {\n w.b.i(\"mse\", \"data end\"), this._endOfData = !0, !this._hasPendingData() && (this._avStat.isLive || !this._avStat.isLive && this._duration !== void 0) && this.video && this.video.buffered.length && this._endOfStream();\n }, s.ended = function() {\n return this._endOfData;\n }, s._endOfStream = function() {\n var a = this._mediaSource;\n if (a && a.readyState === \"open\") {\n for (var n in this._sourceBuffer) {\n var f = this._sourceBuffer[n];\n if (f && f.updating)\n return;\n }\n try {\n w.b.i(\"mse\", \"end of stream\"), a.endOfStream();\n } catch (b) {\n w.b.e(\"mse\", b), this._onError({ type: d.b.MSE_ERROR, details: d.a.ENDOFSTREAM_ERROR, fatal: !0, reason: \"code:\" + b.code + \" msg:\" + b.message });\n }\n }\n }, s.destroy = function() {\n if (w.b.i(\"mse\", \"destroy\"), this._mediaSource) {\n var a = this._mediaSource;\n if (this._endOfStream(), a.readyState !== \"closed\")\n for (var n in this._sourceBuffer)\n this._sourceBuffer[n] && this._sbHandler[n] && (this._sourceBuffer[n].removeEventListener(\"error\", this._sbHandler[n].error), this._sourceBuffer[n].removeEventListener(\"updateend\", this._sbHandler[n].updateend), a.removeSourceBuffer(this._sourceBuffer[n]));\n a.removeEventListener(\"sourceopen\", this._onSourceOpen), a.removeEventListener(\"sourceended\", this._onSourceEnded), a.removeEventListener(\"sourceclose\", this._onSourceClose), this._mediaSource = null;\n }\n this._removeStartBufTimer(), this.removeAllListeners(), this._appendQueue = {}, this._mimeCodec = {}, this._sbAppendStarted = {}, this._cleanUpTask = {}, this._sourceBuffer = {}, this._sbHandler = {};\n }, s.hasCleanUpTask = function(a) {\n var n = 0;\n if (a === void 0)\n for (var f in this._cleanUpTask)\n n += this._cleanUpTask[f].length;\n else\n this._cleanUpTask[a] && (n = this._cleanUpTask[a].length);\n return n > 0;\n }, s.hasSourceBuffer = function() {\n return !!Object.keys(this._sourceBuffer).length;\n }, s.hasTrackInfo = function() {\n return !!Object.keys(this._mimeCodec).length;\n }, s.hasSourceBufferAppendStarted = function() {\n if (Object.keys(this._sbAppendStarted).length) {\n var a = !0;\n for (var n in this._sbAppendStarted)\n a = a && this._sbAppendStarted[n];\n return a;\n }\n return !1;\n }, s._getBufferQueueSize = function() {\n var a = 0;\n for (var n in this._appendQueue)\n a += this._appendQueue[n].reduce(function(f, b) {\n return b.payload && b.payload.byteLength ? f + b.payload.byteLength : f;\n }, 0);\n return a;\n }, s.getBufferQueueSec = function(a) {\n var n = this;\n return this._appendQueue ? (a ? [a] : Object.keys(this._appendQueue)).reduce(function(f, b) {\n return n._appendQueue[b] && n._appendQueue[b].length > 0 && (Object.keys(n._sourceBuffer).length === 0 || n._sourceBuffer[b]) ? Math.max(f, n._appendQueue[b].reduce(function(N, j) {\n var se = j.endDTS - j.startDTS;\n return se ? N + se : N;\n }, 0)) : f;\n }, 0) : 0;\n }, s._update = function(a) {\n if (this.hasCleanUpTask(a) && this._cleanUp(a), this._startBufSec > 0) {\n if (!this.hasTrackInfo())\n return;\n for (var n in this._sourceBuffer)\n if (this.pendingSecByType(n) < this._startBufSec)\n return;\n this._startBufEnded();\n }\n this._doAppend(a);\n }, s._cleanUp = function(a) {\n for (var n = this._cleanUpTask[a]; n && n.length; ) {\n var f = n[0], b = this._sourceBuffer[a];\n if (b) {\n if (b.updating || !this._cleanUpRange(b, f))\n return;\n n.shift();\n } else\n n.shift();\n }\n this.refresh();\n }, s._removeStartBufTimer = function() {\n this._startBufTimer && (clearTimeout(this._startBufTimer), this._startBufTimer = void 0);\n }, v()(A, [{ key: \"stat\", get: function() {\n return this._stat;\n } }, { key: \"readyState\", get: function() {\n return this._mediaSource ? this._mediaSource.readyState : \"closed\";\n } }, { key: \"trackBufInfo\", get: function() {\n var a = {};\n try {\n for (var n in this._sourceBuffer) {\n var f = this._sourceBuffer[n].buffered;\n a[n] = [];\n for (var b = 0; b < f.length; b++)\n a[n].push({ st: f.start(b), ed: f.end(b) });\n }\n } catch (N) {\n }\n return a;\n } }]), A;\n }(W.a), xe = { 400: \"01\", 401: \"02\", 403: \"03\", 404: \"04\", other4xx: \"05\", serverError: \"06\", timeoutOpen: \"07\", timeoutIO: \"08\", 200: \"09\", 206: \"09\" };\n function K(L, A, s) {\n if (s === void 0 && (s = 0), L >= 100)\n return L;\n var a = \"00\";\n return A === \"timeout\" ? a = s ? xe.timeoutIO : xe.timeoutOpen : xe.hasOwnProperty(s) ? a = xe[s] || a : /^4\\d{2}$/.test(s.toString()) ? a = xe.other4xx : /^5\\d{2}$/.test(s.toString()) && (a = xe.serverError), parseInt(L + a, 10);\n }\n var Z, Y = function() {\n function L(A) {\n this.url = [], this.urlId = 0, this.bitrate = 0, this.maxBitrate = 0, this.qualityType = \"\", this.qualityLabel = \"\", this.id = 0, this.codec = \"\", this.audioCodec = \"\", this.videoCodec = \"\", this.hidden = !1, this.enableAdaptive = !0, this.default = !1, this.width = void 0, this.height = void 0, this.index = 0, this.drmSchemaId = \"\", this.drmToken = \"\", this.comment = \"\", this.hdr = void 0, this.vCodecType = P.b.unknown, this.url = [A], this.urlId = 0;\n }\n return L.prototype.getKLevel = function() {\n return { width: this.width, height: this.height, qualityLabel: this.qualityLabel, qualityType: this.qualityType, bitrate: this.bitrate, maxBitrate: this.maxBitrate };\n }, v()(L, [{ key: \"currentUrl\", get: function() {\n return this.url[this.urlId] || \"\";\n } }]), L;\n }(), _e = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this, a) || this).startSN = 0, n.endSN = 0, n.fragments = [], n.initSegment = null, n.live = !0, n.needSidxRanges = !1, n.startTimeOffset = null, n.targetduration = 0, n.totalduration = 0, n.type = null, n.version = null, n.PTSKnown = !1, n.m3u8Slice = void 0, n.audioGroupIds = void 0, n.attrs = void 0, n.averagetargetduration = void 0, n.name = void 0, n.lang = void 0, n.groupId = \"\", n.instreamId = \"\", n.autoselect = void 0, n.forced = void 0, n.size = 0, n.partOfData = !1, n.http416 = 0, n;\n }\n x()(A, L);\n var s = A.prototype;\n return s.clear = function() {\n this.fragments = [], this.startSN = 0, this.endSN = 0, this.initSegment = null, this.m3u8Slice = void 0, this.live = !0, this.needSidxRanges = !1, this.startTimeOffset = 0;\n }, s.mergeFrom = function(a, n) {\n if (n === void 0 && (n = !1), a.fragments.length)\n if (this.endSN = a.endSN, a.partOfData || (a.initSegment && !this.initSegment && (this.initSegment = a.initSegment), this.live = a.live, this.needSidxRanges = a.needSidxRanges, this.targetduration = a.targetduration, this.PTSKnown = a.PTSKnown, this.averagetargetduration = a.averagetargetduration, this.hasFrag || (this.m3u8Slice = a.m3u8Slice, this.audioGroupIds = a.audioGroupIds, this.attrs = a.attrs, this.name = a.name, this.lang = a.lang, this.groupId = a.groupId, this.instreamId = a.instreamId, this.autoselect = a.autoselect, this.forced = a.forced)), n) {\n var f, b = a.startSN - this.startSN;\n if (this.fragments.splice(b), a.partOfData) {\n var N = this.fragments[this.fragments.length - 1].endPTS;\n N && a.fragments.forEach(function(j) {\n j.start = j.startPTS = N, j.endPTS = j.startPTS + j.duration, N = j.endPTS;\n });\n }\n (f = this.fragments).push.apply(f, a.fragments), this.totalduration = this.fragments.reduce(function(j, se) {\n return j + se.duration;\n }, 0), a.partOfData ? this.size += a.size : this.size = a.size;\n } else\n this.startSN = a.startSN, this.fragments = a.fragments, this.totalduration = a.totalduration, this.size = 0;\n }, v()(A, [{ key: \"timeInfo\", get: function() {\n var a = [], n = [];\n return this.fragments.forEach(function(f) {\n a.push(f.start), typeof f.programDateTime == \"number\" && n.push(f.programDateTime);\n }), { duration: this.totalduration, times: a, utcs: n, targetduration: this.targetduration };\n } }, { key: \"hasProgramDateTime\", get: function() {\n return !(!this.fragments[0] || typeof this.fragments[0].programDateTime != \"number\" || !Object(te.a)(this.fragments[0].programDateTime));\n } }, { key: \"hasFrag\", get: function() {\n return this.fragments.length > 0;\n } }]), A;\n }(Y), ee = i(28), Ve = function() {\n function L(A, s) {\n this._uri = null, this.baseuri = void 0, this.reluri = void 0, this.method = null, this.key = null, this.iv = void 0, this.baseuri = A, this.reluri = s;\n }\n return v()(L, [{ key: \"uri\", get: function() {\n return !this._uri && this.reluri && (this._uri = Object(ee.buildAbsoluteURL)(this.baseuri, this.reluri, { alwaysNormalize: !0 })), this._uri;\n } }]), L;\n }();\n (function(L) {\n L.AUDIO = \"audio\", L.VIDEO = \"video\";\n })(Z || (Z = {}));\n var ce = function() {\n function L() {\n var s;\n this._url = \"\", this._byteRange = null, this._decryptdata = null, this._elementaryStreams = ((s = {})[Z.AUDIO] = !1, s[Z.VIDEO] = !1, s), this.rawProgramDateTime = null, this.programDateTime = null, this.tagList = [], this.relurl = void 0, this.baseurl = void 0, this.duration = void 0, this.sn = 0, this.levelkey = void 0, this.level = 0, this.start = 0, this.cc = 0, this.maxStartPTS = 0, this.startPTS = void 0, this.endPTS = void 0, this.startDTS = void 0, this.endDTS = void 0, this.deltaPTS = void 0, this.dropped = void 0, this.backtracked = void 0, this.type = void 0, this.loader = void 0, this.title = null, this.urlId = void 0, this.data = void 0;\n }\n var A = L.prototype;\n return A.setByteRange = function(s, a) {\n var n = s.split(\"@\", 2), f = [];\n n.length === 1 ? f[0] = a ? a.byteRangeEndOffset : 0 : f[0] = parseInt(n[1], 10), f[1] = parseInt(n[0], 10) + f[0], this._byteRange = f;\n }, A.addElementaryStream = function(s) {\n this._elementaryStreams[s] = !0;\n }, A.hasElementaryStream = function(s) {\n return this._elementaryStreams[s] === !0;\n }, A.createInitializationVector = function(s) {\n for (var a = new Uint8Array(16), n = 12; n < 16; n++)\n a[n] = s >> 8 * (15 - n) & 255;\n return a;\n }, A.setDecryptDataFromLevelKey = function(s, a) {\n var n = s;\n return s && s.method && s.uri && !s.iv && ((n = new Ve(s.baseuri, s.reluri)).method = s.method, n.iv = this.createInitializationVector(a)), n;\n }, v()(L, [{ key: \"url\", get: function() {\n return !this._url && this.relurl && (this._url = Object(ee.buildAbsoluteURL)(this.baseurl, this.relurl, { alwaysNormalize: !0 })), this._url;\n }, set: function(s) {\n this._url = s;\n } }, { key: \"byteRange\", get: function() {\n return this._byteRange ? this._byteRange : [];\n } }, { key: \"byteRangeStartOffset\", get: function() {\n return this.byteRange[0];\n } }, { key: \"byteRangeEndOffset\", get: function() {\n return this.byteRange[1];\n } }, { key: \"decryptdata\", get: function() {\n if (!this.levelkey && !this._decryptdata)\n return null;\n if (!this._decryptdata && this.levelkey) {\n var s = this.sn;\n typeof s != \"number\" && (s = 0), this._decryptdata = this.setDecryptDataFromLevelKey(this.levelkey, s);\n }\n return this._decryptdata;\n } }, { key: \"endProgramDateTime\", get: function() {\n if (this.programDateTime === null || !Object(te.a)(this.programDateTime))\n return null;\n var s = Object(te.a)(this.duration) ? this.duration : 0;\n return this.programDateTime + 1e3 * s;\n } }, { key: \"encrypted\", get: function() {\n return !(!this.decryptdata || this.decryptdata.uri === null || this.decryptdata.key !== null);\n } }]), L;\n }(), qe = /^(\\d+)x(\\d+)$/, Ce = /\\s*(.+?)\\s*=((?:\\\".*?\\\")|.*?)(?:,|$)/g, Ye = function() {\n function L(s) {\n for (var a in typeof s == \"string\" && (s = L.parseAttrList(s)), s)\n s.hasOwnProperty(a) && (this[a] = s[a]);\n }\n var A = L.prototype;\n return A.decimalInteger = function(s) {\n var a = parseInt(this[s], 10);\n return a > Number.MAX_SAFE_INTEGER ? 1 / 0 : a;\n }, A.hexadecimalInteger = function(s) {\n if (this[s]) {\n var a = (this[s] || \"0x\").slice(2);\n a = (1 & a.length ? \"0\" : \"\") + a;\n for (var n = new Uint8Array(a.length / 2), f = 0; f < a.length / 2; f++)\n n[f] = parseInt(a.slice(2 * f, 2 * f + 2), 16);\n return n;\n }\n return null;\n }, A.hexadecimalIntegerAsNumber = function(s) {\n var a = parseInt(this[s], 16);\n return a > Number.MAX_SAFE_INTEGER ? 1 / 0 : a;\n }, A.decimalFloatingPoint = function(s) {\n return parseFloat(this[s]);\n }, A.optionalFloat = function(s, a) {\n var n = this[s];\n return n ? parseFloat(n) : a;\n }, A.enumeratedString = function(s) {\n return this[s];\n }, A.bool = function(s) {\n return this[s] === \"YES\";\n }, A.decimalResolution = function(s) {\n var a = qe.exec(this[s]);\n if (a !== null)\n return { width: parseInt(a[1], 10), height: parseInt(a[2], 10) };\n }, L.parseAttrList = function(s) {\n var a, n = {};\n for (Ce.lastIndex = 0; (a = Ce.exec(s)) !== null; ) {\n var f = a[2];\n f.indexOf('\"') === 0 && f.lastIndexOf('\"') === f.length - 1 && (f = f.slice(1, -1)), n[a[1]] = f;\n }\n return n;\n }, L;\n }(), tt = { audio: { a3ds: !0, \"ac-3\": !0, \"ac-4\": !0, alac: !0, alaw: !0, dra1: !0, \"dts+\": !0, \"dts-\": !0, dtsc: !0, dtse: !0, dtsh: !0, \"ec-3\": !0, enca: !0, g719: !0, g726: !0, m4ae: !0, mha1: !0, mha2: !0, mhm1: !0, mhm2: !0, mlpa: !0, mp4a: !0, \"raw \": !0, Opus: !0, samr: !0, sawb: !0, sawp: !0, sevc: !0, sqcp: !0, ssmv: !0, twos: !0, ulaw: !0 }, video: { avc1: !0, avc2: !0, avc3: !0, avc4: !0, avcp: !0, drac: !0, dvav: !0, dvhe: !0, encv: !0, hev1: !0, hvc1: !0, mjp2: !0, mp4v: !0, mvc1: !0, mvc2: !0, mvc3: !0, mvc4: !0, resv: !0, rv60: !0, s263: !0, svc1: !0, svc2: !0, \"vc-1\": !0, vp08: !0, vp09: !0 } };\n function Ht(L) {\n var A = {};\n return (L || \"\").split(/[ ,]+/).forEach(function(s) {\n s.indexOf(\"avc1\") !== 0 && s.indexOf(\"hev1\") !== 0 && s.indexOf(\"av01\") !== 0 && s.indexOf(\"kvc\") !== 0 || (A.video = s), s.indexOf(\"mp4a\") === 0 && (A.audio = s);\n }), A;\n }\n function $t(L, A) {\n var s = [].concat(L.split(/[ ,]+/));\n [\"video\", \"audio\"].forEach(function(a) {\n var n = s.filter(function(b) {\n return function(N, j) {\n var se = tt[j];\n return !!se && se[N.slice(0, 4)] === !0;\n }(b, a);\n });\n if (n.length) {\n var f = n.filter(function(b) {\n return b.lastIndexOf(\"avc1\", 0) === 0 || b.lastIndexOf(\"av01\", 0) === 0 || b.lastIndexOf(\"hev1\", 0) === 0 || b.lastIndexOf(\"hvc1\", 0) === 0 || b.lastIndexOf(\"mp4a\", 0) === 0;\n });\n A[a + \"Codec\"] = f.length > 0 ? f[0] : n[0], s = s.filter(function(b) {\n return n.indexOf(b) === -1;\n });\n }\n }), A.codec = s.join(\",\");\n }\n function xt(L) {\n return L.indexOf(\"avc1\") === 0 ? P.b.h264 : L.indexOf(\"hev1\") === 0 || L.indexOf(\"hvc1\") === 0 ? P.b.hevc : L.indexOf(\"av01\") === 0 ? P.b.av1 : P.b.unknown;\n }\n var Ct = /#EXT-X-STREAM-INF:([^\\n\\r]*)[\\r\\n]+([^\\r\\n]+)/g, Et = /#EXT-X-MEDIA:(.*)/g, bi = new RegExp([/#EXTINF:\\s*(\\d*(?:\\.\\d+)?)(?:,(.*)\\s+)?/.source, /|(?!#)([\\S+ ?]+)/.source, /|#EXT-X-BYTERANGE:*(.+)/.source, /|#EXT-X-PROGRAM-DATE-TIME:(.+)/.source, /|#.*/.source].join(\"\"), \"g\"), yi = /(?:(?:#(EXTM3U))|(?:#EXT-X-(PLAYLIST-TYPE):(.+))|(?:#EXT-X-(MEDIA-SEQUENCE): *(\\d+))|(?:#EXT-X-(TARGETDURATION): *(\\d+))|(?:#EXT-X-(KEY):(.+))|(?:#EXT-X-(START):(.+))|(?:#EXT-X-(ENDLIST))|(?:#EXT-X-(DISCONTINUITY-SEQ)UENCE:(\\d+))|(?:#EXT-X-(DIS)CONTINUITY))|(?:#EXT-X-(VERSION):(\\d+))|(?:#EXT-X-(MAP):(.+))|(?:(#)([^:]*):(.*))|(?:(#)(.*))(?:.*)\\r?\\n?/, Ei = /\\.(mp4|m4s|m4v|m4a)$/i;\n function wi(L, A) {\n L.rawProgramDateTime ? L.programDateTime = Date.parse(L.rawProgramDateTime) : A && A.programDateTime && (L.programDateTime = A.endProgramDateTime), typeof L.programDateTime == \"number\" && Object(te.a)(L.programDateTime) || (L.programDateTime = null, L.rawProgramDateTime = null);\n }\n var lt, fi = function() {\n function L() {\n }\n return L.findGroup = function(A, s) {\n for (var a = 0; a < A.length; a++) {\n var n = A[a];\n if (n.id === s)\n return n;\n }\n }, L.convertAVC1ToAVCOTI = function(A) {\n var s, a = A.split(\".\");\n return a.length > 2 ? (s = a.shift() + \".\", s += parseInt(a.shift(), 10).toString(16), s += (\"000\" + parseInt(a.shift(), 10).toString(16)).substr(-4)) : s = A, s;\n }, L.resolve = function(A, s) {\n return Object(ee.buildAbsoluteURL)(s, A, { alwaysNormalize: !0 });\n }, L.parseMasterPlaylist = function(A, s) {\n var a, n = [];\n for (Ct.lastIndex = 0; (a = Ct.exec(A)) !== null; ) {\n var f = new _e(L.resolve(a[2], s)), b = f.attrs = new Ye(a[1]), N = b.decimalResolution(\"RESOLUTION\");\n N && (f.width = N.width, f.height = N.height), f.maxBitrate = b.decimalInteger(\"BANDWIDTH\") / 1e3;\n var j = b.decimalInteger(\"AVERAGE-BANDWIDTH\") / 1e3;\n f.bitrate = j || f.maxBitrate, f.name = b.NAME, $t(b.CODECS || \"\", f), f.videoCodec && f.videoCodec.indexOf(\"avc1\") !== -1 && (f.vCodecType = xt(f.videoCodec), f.videoCodec = L.convertAVC1ToAVCOTI(f.videoCodec)), n.push(f);\n }\n return n;\n }, L.parseMasterPlaylistMedia = function(A, s, a, n) {\n var f;\n n === void 0 && (n = []);\n var b = [], N = 0;\n for (Et.lastIndex = 0; (f = Et.exec(A)) !== null; ) {\n var j = new Ye(f[1]);\n if (j.TYPE === a) {\n var se = new _e(j.URI ? L.resolve(j.URI, s) : \"\");\n if (se.attrs = j, se.index = se.id = N++, se.groupId = j[\"GROUP-ID\"] || \"\", se.instreamId = j[\"INSTREAM-ID\"] || \"\", se.name = j.NAME || j.LANGUAGE, se.type = a, se.default = j.DEFAULT === \"YES\", se.autoselect = j.AUTOSELECT === \"YES\", se.forced = j.FORCED === \"YES\", se.lang = j.LANGUAGE || \"\", n.length) {\n var ue = L.findGroup(n, se.groupId);\n se.audioCodec = ue ? ue.codec : n[0].codec;\n }\n b.push(se);\n }\n }\n return b;\n }, L.parseLevelPlaylist = function(A, s, a, n, f, b) {\n n === void 0 && (n = P.e.MAIN), f === void 0 && (f = 0), b === void 0 && (b = 0);\n var N, j, se, ue = b, Te = 0, De = 0, Ne = null, $e = new ce(), ht = null, Je = new _e(s);\n for (bi.lastIndex = 0; (j = bi.exec(A)) !== null; ) {\n var kt = j[1];\n if (kt) {\n $e.duration = parseFloat(kt);\n var Xt = (\" \" + j[2]).slice(1);\n $e.title = Xt || null, $e.tagList.push(Xt ? [\"INF\", kt, Xt] : [\"INF\", kt]);\n } else if (j[3]) {\n if (Object(te.a)($e.duration)) {\n var vt = ue++;\n $e.type = n, $e.start = Te, $e.levelkey = N, $e.sn = vt, $e.level = a, $e.cc = De, $e.urlId = f, $e.baseurl = s, $e.relurl = (\" \" + j[3]).slice(1), wi($e, Ne), Je.fragments.push($e), Ne = $e, Te += $e.duration, $e = new ce();\n }\n } else if (j[4]) {\n var zt = (\" \" + j[4]).slice(1);\n Ne ? $e.setByteRange(zt, Ne) : $e.setByteRange(zt);\n } else if (j[5])\n $e.rawProgramDateTime = (\" \" + j[5]).slice(1), $e.tagList.push([\"PROGRAM-DATE-TIME\", $e.rawProgramDateTime]), ht === null && (ht = Je.fragments.length);\n else {\n if (!(j = j[0].match(yi)) || j.length <= 0)\n break;\n for (se = 1; se < j.length && j[se] === void 0; se++)\n ;\n var _t = (\" \" + j[se + 1]).slice(1), di = (\" \" + j[se + 2]).slice(1);\n switch (j[se]) {\n case \"#\":\n $e.tagList.push(di ? [_t, di] : [_t]);\n break;\n case \"PLAYLIST-TYPE\":\n Je.type = _t.toUpperCase();\n break;\n case \"MEDIA-SEQUENCE\":\n ue = Je.startSN = parseInt(_t, 10);\n break;\n case \"TARGETDURATION\":\n Je.targetduration = parseFloat(_t);\n break;\n case \"VERSION\":\n Je.version = parseInt(_t, 10);\n break;\n case \"EXTM3U\":\n break;\n case \"ENDLIST\":\n Je.live = !1;\n break;\n case \"DIS\":\n De++, $e.tagList.push([\"DIS\"]);\n break;\n case \"DISCONTINUITY-SEQ\":\n De = parseInt(_t, 10);\n break;\n case \"KEY\":\n var ct = new Ye(_t), Ii = ct.enumeratedString(\"METHOD\"), wt = ct.URI, Gt = ct.hexadecimalInteger(\"IV\");\n Ii && (N = new Ve(s, wt), wt && [\"AES-128\", \"SAMPLE-AES\", \"SAMPLE-AES-CENC\"].indexOf(Ii) >= 0 && (N.method = Ii, N.key = null, Gt && (N.iv = Gt)));\n break;\n case \"START\":\n var Or = new Ye(_t).decimalFloatingPoint(\"TIME-OFFSET\");\n Object(te.a)(Or) && (Je.startTimeOffset = Or);\n break;\n case \"MAP\":\n var Hr = new Ye(_t);\n $e.relurl = Hr.URI, Hr.BYTERANGE && $e.setByteRange(Hr.BYTERANGE), $e.baseurl = s, $e.level = a, $e.type = n, $e.sn = \"initSegment\", Je.initSegment = $e, ($e = new ce()).rawProgramDateTime = Je.initSegment.rawProgramDateTime;\n break;\n default:\n w.b.w(\"line parsed but not handled: \" + j);\n }\n }\n }\n return ($e = Ne) && !$e.relurl && (Je.fragments.pop(), Te -= $e.duration), Je.totalduration = Te, Je.averagetargetduration = Te / Je.fragments.length, Je.endSN = ue - 1, !Je.initSegment && Je.fragments.length && Je.fragments.every(function(nr) {\n return Ei.test(nr.relurl);\n }) && (w.b.w(\"MP4 fragments found but no init segment (probably no MAP, incomplete M3U8), trying to fetch SIDX\"), ($e = new ce()).relurl = Je.fragments[0].relurl, $e.baseurl = s, $e.level = a, $e.type = n, $e.sn = \"initSegment\", Je.initSegment = $e, Je.needSidxRanges = !0), ht && function(nr, hr) {\n for (var wr = nr[hr], bn = hr - 1; bn >= 0; bn--) {\n var jn = nr[bn];\n wr.programDateTime && (jn.programDateTime = wr.programDateTime - 1e3 * jn.duration), wr = jn;\n }\n }(Je.fragments, ht), Je;\n }, L;\n }();\n function Zt(L) {\n switch (L) {\n case P.e.MAIN:\n return lt.LEVEL;\n case P.e.SUBTITLE:\n return lt.SUBTITLE_TRACK;\n case P.e.AUDIO:\n return lt.AUDIO_TRACK;\n default:\n return lt.LEVEL;\n }\n }\n (function(L) {\n L.MANIFEST = \"manifest\", L.LEVEL = \"level\", L.AUDIO_TRACK = \"audioTrack\", L.SUBTITLE_TRACK = \"subtitleTrack\";\n })(lt || (lt = {}));\n var pi = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this) || this).loaders = {}, n.tag = \"PlaylistLoader\", n._config = void 0, n._loadsuccess = function(f, b, N) {\n if (n.emit(u.a.DOWNLOAD, ji(Yt.SUCCESS, f, N)), f.isSidxRequest)\n n._onError({ type: d.b.OTHER_ERROR, details: d.a.UNSUPPORTED, fatal: !0, url: f.url.toString(), reason: \"unsupport sidx\", statusCode: N.code });\n else if (n._resetInternalLoader(f.type), typeof b == \"string\")\n if (b.indexOf(\"#EXTINF:\") === 0 && f.rangeStart && f.levelDetails)\n n._handleTrackOrLevelPlaylist(f, b, N);\n else {\n if (b.indexOf(\"#EXTM3U\") !== 0) {\n var j = b;\n return j.length > 100 && (j = j.slice(0, 100)), void n._handleManifestParsingError(f, \"no EXTM3U delimiter.\" + j, N);\n }\n b.indexOf(\"#EXTINF:\") > 0 || b.indexOf(\"#EXT-X-TARGETDURATION:\") > 0 ? n._handleTrackOrLevelPlaylist(f, b, N) : n._handleMasterPlaylist(f, b, N);\n }\n else\n n._onError({ type: d.b.NETWORK_ERROR, details: d.a.MANIFEST_PARSING_ERROR, fatal: !0, url: f.url.toString(), reason: 'expected responseType of \"text\" for PlaylistLoader', statusCode: N.code });\n }, n._loaderror = function(f, b) {\n n._handleNetworkError(f, b);\n }, n._loadAbort = function(f, b) {\n n.emit(u.a.DOWNLOAD, ji(Yt.ABORT, f, b));\n }, n._onError = function(f) {\n n.emit(u.a.ERROR, f);\n }, n._config = a, n.loaders = {}, n;\n }\n x()(A, L), A.canHaveQualityLevels = function(a) {\n return a === lt.LEVEL;\n }, A.mapContextToLevelType = function(a) {\n switch (a.type) {\n case lt.AUDIO_TRACK:\n return P.e.AUDIO;\n case lt.SUBTITLE_TRACK:\n return P.e.SUBTITLE;\n default:\n return P.e.MAIN;\n }\n }, A.getResponseUrl = function(a) {\n var n = a.responseUrl;\n return n && n.indexOf(\"data:\") !== 0 || typeof a.url != \"string\" || (n = a.url), n || \"\";\n };\n var s = A.prototype;\n return s._createInternalLoader = function(a) {\n var n = new le();\n return a.loader = n, this.loaders[a.type] = n, n;\n }, s._getInternalLoader = function(a) {\n return this.loaders[a.type];\n }, s._resetInternalLoader = function(a) {\n this.loaders[a] && delete this.loaders[a];\n }, s._destroyInternalLoaders = function() {\n for (var a in this.loaders) {\n var n = this.loaders[a];\n n && n.destroy(), this._resetInternalLoader(a);\n }\n }, s.destroy = function() {\n this.removeAllListeners(), this._destroyInternalLoaders();\n }, s.load = function(a) {\n var n;\n w.b.d(this.tag, \"Loading playlist of type \" + a.type + \", level: \" + a.level + \", id: \" + a.id);\n var f, b, N, j, se = this._getInternalLoader(a);\n if (se) {\n var ue = se.context;\n if (ue && ue.url === a.url)\n return w.b.i(this.tag, \"playlist request ongoing\"), !1;\n w.b.w(this.tag, \"aborting previous loader for type: \" + a.type), se.abort();\n }\n switch (a.type) {\n case lt.MANIFEST:\n f = this._config.manifestLoadingMaxRetry, b = this._config.manifestConnectionTimeout, N = this._config.manifestTransmissionTimeout, j = this._config.manifestLoadingRetryDelay;\n break;\n default:\n f = this._config.levelLoadingMaxRetry, b = this._config.levelConnectionTimeout, N = this._config.levelTransmissionTimeout, j = this._config.levelLoadingRetryDelay;\n }\n se = this._createInternalLoader(a), a.responseType = a.responseType || \"text\";\n var Te, De = { connectionTimeout: b, transmissionTimeout: N, maxRetry: f, retryDelay: j }, Ne = { onEnd: this._loadsuccess, onError: this._loaderror, onAbort: this._loadAbort };\n return (n = this._config.preprocessUrl) != null && n.manifest && (w.b.i(\"playlist-loader\", \"preprocessUrl manifest\"), a.url = (Te = this._config.preprocessUrl) == null ? void 0 : Te.manifest(a.url)), w.b.d(this.tag, \"Calling internal loader delegate for URL: \" + a.url), se.load(a, Ne, De), !0;\n }, s._handleMasterPlaylist = function(a, n, f) {\n var b = n, N = A.getResponseUrl(a), j = fi.parseMasterPlaylist(b, N);\n if (j.length) {\n var se = j.map(function(Je) {\n return { id: Je.attrs.AUDIO, codec: Je.audioCodec };\n }), ue = fi.parseMasterPlaylistMedia(b, N, \"AUDIO\", se), Te = fi.parseMasterPlaylistMedia(b, N, \"SUBTITLES\", se);\n if (ue.length) {\n var De = !1;\n if (ue.forEach(function(Je) {\n Je.url || (De = !0);\n }), De === !1 && j[0].audioCodec && !j[0].attrs.AUDIO) {\n w.b.v(this.tag, \"audio codec signaled in quality level, but no embedded audio track signaled, create one\");\n var Ne = new _e(\"\");\n Ne.type = P.e.MAIN, Ne.name = \"main\", Ne.id = -1, ue.unshift(Ne);\n }\n }\n var $e = 0;\n j.forEach(function(Je, kt) {\n Je.default && ($e = kt);\n });\n var ht = { levels: j, audioTracks: ue, subtitleTracks: Te, def: $e };\n this.emit(u.a.HLS_MANIFEST_PARSED, ht);\n } else\n this._handleManifestParsingError(a, \"no level found in manifest\", f);\n }, s._handleTrackOrLevelPlaylist = function(a, n, f) {\n var b = a.id, N = a.level, j = a.type, se = A.getResponseUrl(a), ue = Object(te.a)(b) ? b : 0, Te = Object(te.a)(N) ? N : ue, De = A.mapContextToLevelType(a), Ne = a.levelDetails, $e = !(n.indexOf(\"#EXTINF:\") !== 0 || !a.rangeStart), ht = Ne && $e ? Ne.endSN + 1 : 0;\n Ne && (Ne.http416 = 0);\n var Je = fi.parseLevelPlaylist(n, se, Te, De, ue, ht);\n if ($e && (Je.startSN = ht, w.b.i(\"playlist-loader\", \"part of media playlist data\")), Je.size = n.length, Je.partOfData = $e, j === lt.MANIFEST) {\n var kt = { levels: [Je], def: 0 };\n this.emit(u.a.HLS_MANIFEST_PARSED, kt);\n }\n if (Je.needSidxRanges && Je.initSegment) {\n var Xt, vt = Je.initSegment.url;\n return (Xt = this._config.preprocessUrl) != null && Xt.stream && (w.b.i(\"playlist-loader\", \"preprocessUrl stream sidx\"), vt = this._config.preprocessUrl.stream(vt)), void this.load({ url: vt, isSidxRequest: !0, type: j, level: N, levelDetails: Je, id: b, rangeStart: 0, rangeEnd: 2048, responseType: \"arraybuffer\", headers: this._config.headers });\n }\n a.levelDetails = Je, this._handlePlaylistLoaded(a, f);\n }, s._handleManifestParsingError = function(a, n, f) {\n this._onError({ type: d.b.NETWORK_ERROR, details: d.a.MANIFEST_PARSING_ERROR, fatal: !0, url: a.url.toString(), reason: n, statusCode: f.code });\n }, s._handleNetworkError = function(a, n) {\n var f, b;\n w.b.i(this.tag, \"A network error occured while loading a \" + a.type + \"-type playlist\");\n var N = this._getInternalLoader(a);\n switch (a.type) {\n case lt.MANIFEST:\n f = d.a.MANIFEST_LOAD_ERROR, b = !0;\n break;\n case lt.LEVEL:\n f = d.a.LEVEL_LOAD_ERROR, b = !0;\n break;\n case lt.AUDIO_TRACK:\n f = d.a.AUDIO_TRACK_LOAD_ERROR, b = !0;\n break;\n case lt.SUBTITLE_TRACK:\n f = d.a.SUBTITLE_TRACK_LOAD_ERROR, b = !1;\n break;\n default:\n f = d.a.MANIFEST_LOAD_ERROR, b = !1;\n }\n if (this.emit(u.a.DOWNLOAD, ji(Yt.FAIL, a, n)), n.fatal) {\n if (N && (N.abort(), this._resetInternalLoader(a.type)), a.rangeStart && n.code === 416) {\n w.b.i(\"playlist-loader\", \"level 416\"), a.levelDetails && a.levelDetails.http416++;\n var j = new _e(\"\");\n return a.levelDetails ? (j.endSN = a.levelDetails.endSN, j.targetduration = a.levelDetails.targetduration) : j.targetduration = 2, void this.emit(u.a.LEVEL_LOADED, { details: j, level: a.level || 0, stats: n });\n }\n this._onError({ type: d.b.NETWORK_ERROR, details: f, fatal: b, url: a.url.toString(), reason: n.text, statusCode: n.code });\n }\n }, s._handlePlaylistLoaded = function(a, n) {\n var f, b = a.type, N = a.level, j = (a.id, a.levelDetails);\n if (j && (j.targetduration || (f = a.levelDetails) != null && f.partOfData))\n if (A.canHaveQualityLevels(a.type))\n this.emit(u.a.LEVEL_LOADED, { details: j, level: N || 0, stats: n });\n else\n switch (b) {\n case lt.AUDIO_TRACK:\n this.emit(u.a.AUDIO_TRACK_LOADED, { details: j, level: N || 0, stats: n });\n break;\n case lt.SUBTITLE_TRACK:\n this.emit(u.a.SUBTITLE_TRACK_LOADED, { details: j, level: N || 0, stats: n });\n }\n else\n this._handleManifestParsingError(a, \"invalid target duration.\", n);\n }, A;\n }(W.a);\n function Bt(L) {\n var A;\n performance.addEventListener && (A = L, performance && (typeof performance.setResourceTimingBufferSize == \"function\" ? performance.setResourceTimingBufferSize(A) : typeof performance.webkitSetResourceTimingBufferSize == \"function\" && performance.webkitSetResourceTimingBufferSize(A)), performance.addEventListener(\"resourcetimingbufferfull\", bt));\n }\n function gt() {\n performance.removeEventListener && performance.removeEventListener(\"resourcetimingbufferfull\", bt);\n }\n var bt = function() {\n performance && (typeof performance.clearResourceTimings == \"function\" ? performance.clearResourceTimings() : typeof performance.webkitClearResourceTimings == \"function\" && performance.webkitClearResourceTimings());\n }, Wt = /\\.(mp4|m4s|mov|m4a)($|\\?)/, Yi = /\\.flv($|\\?)/, Fi = /\\.m3u8($|\\?)/, Cr = /\\.sdp($|\\?)/, Vr = /\\.(webm|mkv|mka)($|\\?)/, or = /\\.mp3($|\\?)/, gr = /\\.aac($|\\?)/, _r = /\\.ts($|\\?)/, Oi = /\\.yuv($|\\?)/, Fr = /\\.slice($|\\?)/;\n function Qt(L) {\n return Wt.test(L) ? P.g.mp4 : Yi.test(L) || Xi(L) ? P.g.flv : Fi.test(L) ? P.g.hls : Cr.test(L) ? P.g.webrtc : Vr.test(L) ? P.g.matroska : or.test(L) ? P.g.mp3 : gr.test(L) ? P.g.aac : _r.test(L) ? P.g.ts : Oi.test(L) ? P.g.yuv : P.g.unknown;\n }\n function Xi(L) {\n return Fr.test(L);\n }\n var Vt, Yt, Zi = /\\_([A-Za-z0-9]+)\\_/, Mn = /[A-Za-z0-9]+\\_([A-Za-z0-9]+)\\./;\n function ya(L) {\n return typeof L != \"string\" ? \"\" : Qt(L) === P.g.flv ? kr(L, Mn) || kr(L, Zi) : kr(L, Zi) || kr(L, Mn);\n }\n function kr(L, A) {\n var s = L.match(A);\n return s && s.length > 1 ? s[1] : \"\";\n }\n (function(L) {\n L.FAIL = \"FAIL\", L.ABORT = \"ABORT\", L.SUCCESS = \"SUCCESS\";\n })(Yt || (Yt = {}));\n var Ea = ((Vt = {})[lt.MANIFEST] = d.a.MANIFEST_LOAD_ERROR, Vt[lt.LEVEL] = d.a.LEVEL_LOAD_ERROR, Vt[lt.AUDIO_TRACK] = d.a.AUDIO_TRACK_LOAD_ERROR, Vt[lt.SUBTITLE_TRACK] = d.a.SUBTITLE_TRACK_LOAD_ERROR, Vt);\n function ji(L, A, s, a, n, f) {\n n === void 0 && (n = !1);\n var b = typeof A.url == \"string\" ? A.url : \"\", N = new Ae.a(b).host, j = { domain: N, stream_host: N, download_url: b, download_start_time: s.tsload, download_spend_time: s.tload ? Math.round(s.tload - s.tstart) : Math.round(performance.now() - s.tstart), http_response_time: s.tfirst ? Math.round(s.tfirst - s.tstart) : 0, download_status: L, http_status_code: s.code, retry_index: s.retry, error_code: 0, error_message: \"\", loader_id: s.id, download_size: s.total || s.loaded || 0, resource_type: A.type || \"\", preload: n ? 1 : 0 };\n f && (j.codec = f), a && (j.quality_type = a);\n var se = A.frag;\n if (se && (j.slice_play_start_time = Math.round(1e3 * se.start), se.duration && (j.slice_play_duration = Math.round(1e3 * se.duration)), se.sn && (j.slice_index = se.sn), se.level && (j.slice_level_index = se.level)), L === Yt.FAIL) {\n var ue = Ea[A.type] || d.a.LOAD_ERROR;\n j.error_code = K(ue, s.text, s.code);\n }\n if (s.text && (j.error_message = s.text), A.responseHeader) {\n var Te = ke(A.responseHeader);\n Te && (j.custom_http_header = Te);\n }\n typeof A.rangeStart == \"number\" && (j.range_start = A.rangeStart), A.rangeEnd && (j.range_end = A.rangeEnd);\n var De = ya(j.download_url);\n if (De && (j.transcoding_template = De), typeof A.url == \"string\") {\n var Ne = function($e) {\n if (performance && typeof performance.getEntriesByName == \"function\") {\n var ht = performance.getEntriesByName($e, \"resource\");\n if (ht.length) {\n var Je = ht[ht.length - 1], kt = {};\n return Je.redirectStart && (kt.redirect = Math.round(Je.redirectEnd - Je.redirectStart)), kt.dns = Math.round(Je.domainLookupEnd - Je.domainLookupStart), kt.tcp = Math.round(Je.connectEnd - Je.connectStart), kt.request = Math.round(Je.requestStart - Je.connectEnd), kt.firstResponse = Math.round(Je.responseStart - Je.requestStart), Je.responseStart > 0 ? kt.response = Math.round(Je.responseEnd - Je.responseStart) : kt.response = Math.round(Je.responseEnd - Je.fetchStart), kt.duration = Math.round(Je.duration) || 0, kt;\n }\n }\n return null;\n }(A.url);\n Ne && (Ne.redirect && (j.time_redirect = Ne.redirect), Ne.dns && (j.time_dns = Ne.dns), Ne.tcp && (j.time_tcp = Ne.tcp), Ne.request && (j.time_request = Ne.request), Ne.firstResponse && (j.time_first_response = Ne.firstResponse), Ne.response && (j.time_response = Ne.response), Ne.duration && (j.duration = Ne.duration));\n }\n return j;\n }\n var br, jr = { beacon: !1, predictStep: 5, targetBuffer: 10, duration: 5, smoothRatioToTarget: 0, switchpanelty: 2.5 * 1e-6, slidingWindowSize: 3, kalmanR: Math.pow(0.2, 2), kalmanQ: 4e-4, initBitrate: 2e6, startBitrateLimit: !0, speedPredictRatio: 1.5, speedPredictNum: 3, algorithm: 1, speedPredictRatioOnStart: 3, lowProfileThreshold: 4, lowProfileBitrate: 25e5, lowProfileStartThreshold: 5 };\n (function(L) {\n L[L.Default = 0] = \"Default\", L[L.Seek = 1] = \"Seek\";\n })(br || (br = {}));\n var Qa = function() {\n function L(s) {\n this._ctx = void 0, this._conf = void 0, this._bufferSize = 0, this._lastBufferSize = 0, this._pastThroughput = void 0, this._bitrates = [], this._qos = {}, this._storage = void 0, this._index = 0, this._nextIndex = 0, this._status = br.Default, this._speedPredictCnt = 0, this._lowProfile = !1, this._lowProfileIndex = 0, this._lowProfileHistory = 0, this._renderBlockCount = 0, this._initBitrate = 0, this._storage = new he(), this._conf = o()({}, jr), this._ctx = s;\n }\n var A = L.prototype;\n return A.init = function(s) {\n var a = o()({}, jr);\n this._conf = o()(a, s), this._initBitrate = this._conf.initBitrate;\n }, A.onManifestUpdated = function() {\n var s = this, a = this._ctx.lctx;\n this._initBitrate = this._conf.initBitrate, this._bitrates = [], a.abrLevels.forEach(function(n) {\n s._bitrates.push(1e3 * n.bitrate), n.default && (s._initBitrate = n.bitrate);\n }), this._index = Math.min(a.abrDefault, this._bitrates.length - 1), w.b.i(\"algorithm-hls\", \"setInfo \" + this._bitrates + \", \" + this._index), this._nextIndex = 0, this._bufferSize = this._conf.duration, this._lastBufferSize = 0, this._pastThroughput = new Array(this._conf.slidingWindowSize), this._pastThroughput[this._conf.slidingWindowSize - 1] = 0, this._status = br.Default, this._lowProfileIndex = this._maxBitrateIndex(this._bitrates, this._conf.lowProfileBitrate);\n }, A.destroy = function() {\n }, A.bitrateInit = function() {\n var s = this, a = this._bitrateToIndex(this._bitrates, this._initBitrate), n = this._storage.read(\"kwai_hls_adaptive\");\n if (w.b.i(\"algorithm-hls\", \"storage read:\" + n), n !== void 0 && n.bitrate >= 0 && n.speed > 0 && n.version === 2) {\n n.time && n.lowProfile && Date.now() - n.time < 2592e5 && (this._lowProfileHistory = Math.min(parseInt(n.lowProfile), this._conf.lowProfileStartThreshold + 1), this._lowProfileHistory > this._conf.lowProfileStartThreshold && (this._lowProfile = !0, a = Math.min(a, this._lowProfileIndex)));\n var f = Math.min(n.bitrate, 1024 * n.speed / this._conf.speedPredictRatioOnStart), b = this._bitrates.reduce(function(N, j, se) {\n return Math.abs(j - f) < Math.abs(s._bitrates[N] - f) ? se : N;\n }, 0);\n a = this._conf.startBitrateLimit ? Math.min(a, b) : b;\n }\n return a;\n }, A.onLevelLoad = function(s) {\n s < this._bitrates.length && s >= 0 && (this._index = s);\n }, A.onKeyPoint = function(s) {\n if (s.byteLength) {\n var a = s.duration || s.spendTime, n = s.byteLength / a * 7.8125;\n this._qos = o()({ cache: !1 }, s), w.b.v(\"algorithm-hls\", \"report download time:\" + a + \" bytes:\" + s.byteLength + \" buffered:\" + s.buffered + \" speed:\" + n + \" cache:\" + this._qos.cache);\n var f = this._nextRateIndex(n, s.buffered / 1e3);\n f !== this._nextIndex && this._storage.write(\"kwai_hls_adaptive\", { version: 2, index: f, bitrate: this._bitrates[f], speed: this._qos && this._qos.speed ? this._qos.speed : 0, lowProfile: Math.max(0, this._lowProfile ? this._lowProfileHistory + 1 : this._lowProfileHistory - 1), time: Date.now() }), this._nextIndex = f, this._qos.speed = n, this._qos.buffered = s.buffered, this._qos.nextBitrate = this._bitrates[this._nextIndex], this._qos.currentBitrate = this._bitrates[this._index];\n }\n }, A.onSeek = function(s) {\n w.b.v(\"algorithm-hls\", \"report seek buffered:\" + s.buffered + \" inBuffer:\" + s.isInBuffer), s.isInBuffer ? this._resetAlgorithm() : this._qos.seek = 1, (!s.isInBuffer || s.buffered / 1e3 < this._conf.targetBuffer) && (w.b.i(\"algorithm-hls\", \"status change to seek.\"), this._status = br.Seek, this._speedPredictCnt = this._conf.speedPredictNum);\n }, A.onDownloadEnabled = function(s) {\n s || this._resetAlgorithm();\n }, A._resetAlgorithm = function() {\n this._bufferSize = 0, this._lastBufferSize = 0, this._pastThroughput = new Array(this._conf.slidingWindowSize);\n }, A._nextRateIndex = function(s, a) {\n this._bufferSize = a, this._pastThroughput.shift(), this._pastThroughput.push(s), this._status === br.Seek && (a >= this._conf.targetBuffer || this._speedPredictCnt <= 0) && (this._speedPredictCnt = 0, this._status = br.Default, w.b.i(\"algorithm-hls\", \"status change to default. buffered:\" + a + \" step:\" + this._speedPredictCnt));\n var n = -1;\n return this._status === br.Seek ? (this._speedPredictCnt--, this._lastBufferSize = this._bufferSize, n = this._nextRateBySpeed(s)) : n = this._nextRateBySpeedAndBuffered(s, a), this._lowProfile && (n = Math.min(n, this._lowProfileIndex)), n;\n }, A._nextRateBySpeed = function(s) {\n var a = 1024 * s, n = this._bitrates[this._index];\n if (a < n || a > n * this._conf.speedPredictRatio) {\n for (var f = this._bitrates.length - 1; f >= 0; f--)\n if (a > this._bitrates[f] * this._conf.speedPredictRatio)\n return f;\n }\n return this._index;\n }, A._nextRateBySpeedAndBuffered = function(s, a) {\n var n, f = 1024 * s, b = this._bitrates, N = b[this._index], j = this._ctx.playbackRate;\n for (n = b.length - 1; n > 0 && !(f > b[n] * j); n--)\n ;\n var se = b[n], ue = this._index, Te = a / j;\n return se > N ? Te > se * this._conf.duration / f && (ue = n) : se < N && Te < N * this._conf.duration / f + this._conf.duration && (ue = n), w.b.v(\"algorithm-hls\", \"_nextRateBySpeedAndBuffered bitrateBySpeed:\" + se + \", nextBitrate:\" + ue + \", bitrate:\" + N + \", remainingTime:\" + Te + \", speed:\" + f + \", playbackRate:\" + j), ue;\n }, A._bitrateToIndex = function(s, a) {\n return s.reduce(function(n, f, b) {\n return (s[n] + f) / 2 >= a ? n : b;\n }, 0);\n }, A._maxBitrateIndex = function(s, a) {\n return s.reduce(function(n, f, b) {\n return f > a ? n : b;\n }, 0);\n }, v()(L, [{ key: \"nextLevel\", get: function() {\n return this._nextIndex;\n } }, { key: \"lowProfile\", get: function() {\n return this._lowProfile;\n } }]), L;\n }(), Ja = { speedPredictRatioOnStart: 6 }, es = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this) || this)._ctx = void 0, n._algorithm = void 0, n._downloadEnd = void 0, n._downloadStartTime = 0, n._index = 0, n._ctx = a, n._downloadEnd = 0, n;\n }\n x()(A, L);\n var s = A.prototype;\n return s.init = function() {\n return this._algorithm = new Qa(this._ctx), this._algorithm.init(this._ctx.config.hlsAdaptiveConfig || Ja), this._algorithm.onManifestUpdated(), this._algorithm.bitrateInit();\n }, s.onAbrLevelsUpdated = function() {\n var a;\n (a = this._algorithm) == null || a.onManifestUpdated();\n }, s.destory = function() {\n this._algorithm && (this._algorithm = void 0);\n }, s.onDownload = function(a) {\n if (this._algorithm && this._ctx.isAbrAvailable && typeof a.slice_play_start_time == \"number\" && typeof a.slice_play_duration == \"number\" && Object(te.a)(a.slice_play_start_time) && Object(te.a)(a.slice_play_duration) && a.download_status === Yt.SUCCESS) {\n this._downloadEnd = a.slice_play_start_time + a.slice_play_duration;\n var n = { buffered: this._downloadEnd - 1e3 * this._ctx.currentTime, duration: a.duration || 0, spendTime: a.download_spend_time, byteLength: a.download_size };\n this._algorithm.onKeyPoint(n);\n }\n }, s.onNewSource = function() {\n if (this._algorithm) {\n var a = this._ctx.lctx.currentIdx;\n this._downloadStartTime = this._downloadStartTime || performance.now(), a >= 0 && a < this._ctx.lctx.levels.length && (this._index = a), this._algorithm.onLevelLoad(this._ctx.lctx.orignIndexToAbr(a));\n }\n }, s.onSeek = function(a) {\n this._algorithm && this._ctx.isAbrAvailable && this._algorithm.onSeek({ isInBuffer: a.isInBuffer, buffered: this._downloadEnd - 1e3 * this._ctx.currentTime });\n }, s.nextBitrateIndex = function() {\n var a = this._ctx.lctx;\n if (a.abr && this._algorithm) {\n var n = a.abrIndexToOrign(this._algorithm.nextLevel);\n if (n !== this._index && n >= 0 && n < a.levels.length)\n return n;\n }\n return this._index;\n }, s.setDownloadEnabled = function(a) {\n this._algorithm && this._algorithm.onDownloadEnabled(a);\n }, v()(A, [{ key: \"abrInitLevel\", get: function() {\n var a;\n return ((a = this._algorithm) == null ? void 0 : a.bitrateInit()) || 0;\n } }]), A;\n }(W.a);\n function mn(L, A, s) {\n var a = L[A], n = L[s], f = n.startPTS;\n Object(te.a)(f) ? s > A ? (a.duration = f - a.start, a.duration < 0 && w.b.w(\"LevelHelper\", \"negative duration computed for frag \" + a.sn + \",level \" + a.level + \", duration \" + a.duration + \", there should be some duration drift between playlist and fragment!. from\")) : (n.duration = a.start - f, n.duration < 0 && w.b.w(\"LevelHelper\", \"negative duration computed for frag \" + n.sn + \",level \" + n.level + \", duration \" + n.duration + \", there should be some duration drift between playlist and fragment!. to\")) : n.start = s > A ? a.start + a.duration : Math.max(a.start - n.duration, 0);\n }\n function Un(L, A, s, a, n, f) {\n var b = s;\n if (Object(te.a)(A.startPTS)) {\n var N = Math.abs(A.startPTS - s);\n Object(te.a)(A.deltaPTS) ? A.deltaPTS = Math.max(N, A.deltaPTS) : A.deltaPTS = N, b = Math.max(s, A.startPTS), s = Math.min(s, A.startPTS), a = Math.max(a, A.endPTS), n = Math.min(n, A.startDTS), f = Math.max(f, A.endDTS);\n }\n var j = s - A.start;\n A.start = A.startPTS = s, A.maxStartPTS = b, A.endPTS = a, A.startDTS = n, A.endDTS = f, A.duration = a - s;\n var se, ue = A.sn;\n if (!L || ue < L.startSN || ue > L.endSN || typeof ue != \"number\")\n return 0;\n var Te = ue - L.startSN, De = L.fragments;\n for (De[Te] = A, se = Te; se > 0; se--)\n mn(De, se, se - 1);\n for (se = Te; se < De.length - 1; se++)\n mn(De, se, se + 1);\n return L.PTSKnown = !0, j;\n }\n function B(L, A, s) {\n s === void 0 && (s = !1), A.partOfData || function(a, n) {\n n.initSegment && a.initSegment && (n.initSegment = a.initSegment);\n var f, b = 0;\n if (y(a, n, function(se, ue) {\n b = se.cc - ue.cc, Object(te.a)(se.startPTS) && (ue.start = ue.startPTS = se.startPTS, ue.endPTS = se.endPTS, ue.duration = se.duration, ue.backtracked = se.backtracked, ue.dropped = se.dropped, f = ue), n.PTSKnown = !0;\n }), !!n.PTSKnown) {\n if (b) {\n w.b.v(\"LevelHelper\", \"discontinuity sliding from playlist, take drift into account\");\n for (var N = n.fragments, j = 0; j < N.length; j++)\n N[j].cc += b;\n }\n f ? Un(n, f, f.startPTS, f.endPTS, f.startDTS, f.endDTS) : function(se, ue) {\n var Te = ue.startSN - se.startSN, De = se.fragments, Ne = ue.fragments;\n if (!(Te < 0 || Te > De.length))\n for (var $e = 0; $e < Ne.length; $e++)\n Ne[$e].start += De[Te].start;\n }(a, n), n.PTSKnown = a.PTSKnown;\n }\n }(L, A), L.mergeFrom(A, s);\n }\n function y(L, A, s) {\n if (L && A)\n for (var a = Math.max(L.startSN, A.startSN) - A.startSN, n = Math.min(L.endSN, A.endSN) - A.startSN, f = A.startSN - L.startSN, b = a; b <= n; b++) {\n var N = L.fragments[f + b], j = A.fragments[b];\n if (!N || !j)\n break;\n s(N, j, b);\n }\n }\n function c(L, A, s) {\n var a = 1e3 * (A.averagetargetduration ? A.averagetargetduration : A.targetduration), n = a / 2;\n return L && A.endSN === L.endSN && (a = n), s && (a = Math.max(n, a - (performance.now() - s))), Math.round(a);\n }\n var h, T, O = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this) || this)._ctx = void 0, n._onManifestLoaded = function() {\n n.emit(u.a.MANIFEST_PARSED);\n }, n._ctx = a, n;\n }\n x()(A, L);\n var s = A.prototype;\n return s.loadManifest = function() {\n this._onManifestLoaded();\n }, s.loadLevel = function(a, n) {\n n === void 0 && (n = P.e.MAIN);\n }, s.destroy = function() {\n }, A;\n }(W.a), M = function() {\n function L() {\n }\n return L.verify = function(A) {\n return !!(A && A.hasOwnProperty(\"version\") && A.hasOwnProperty(\"adaptationSet\") && A.adaptationSet.hasOwnProperty(\"representation\") && Array.isArray(A.adaptationSet.representation) && A.adaptationSet.representation.length > 0) && A.adaptationSet.representation.reduce(function(s, a) {\n return !!(s && a.url && a.bitrate && a.qualityType);\n }, !0);\n }, L.parse = function(A) {\n var s, a = [];\n return L.verify(A) && A.adaptationSet.representation.forEach(function(n, f) {\n var b = new Y(n.url);\n b.id = n.id || f, b.maxBitrate = n.bitrate || 0, b.bitrate = n.averageBitrate || b.maxBitrate, b.qualityType = n.qualityType || \"\", b.qualityLabel = n.name || \"\", b.codec = n.codec || \"\", b.hidden = n.hidden || !1, b.enableAdaptive = n.enableAdaptive === void 0 || !!n.enableAdaptive, b.default = n.defaultSelect || !1, b.index = f, a.push(b), b.default && s === void 0 && (s = f);\n }), { levels: a, def: s || 0, srcType: P.i.KWAI_FLV_ABR };\n }, L;\n }(), $ = function() {\n function L() {\n }\n return L.verify = function(A) {\n return !!(A && A.hasOwnProperty(\"segments\") && Array.isArray(A.segments) && A.segments.length > 0) && (A.segments.forEach(function(s) {\n if (!s.url || !s.duration || !s.time)\n return !1;\n }), !0);\n }, L.parse = function(A, s) {\n s === void 0 && (s = \"\");\n var a = [], n = { levels: a, withCredentials: !1, hasVideo: !0, hasAudio: !0 };\n if (L.verify(A)) {\n var f = new _e(\"\");\n a.push(f);\n var b = A;\n n.withCredentials = !!b.withCredentials, b.hasAudio !== void 0 && (n.hasAudio = !!b.hasAudio), b.hasVideo !== void 0 && (n.hasVideo = !!b.hasVideo);\n var N = 0, j = 0, se = 0;\n b.segments.forEach(function(ue, Te) {\n var De = new ce();\n De.sn = Te, typeof ue.startUtcTime == \"string\" ? De.programDateTime = parseInt(ue.startUtcTime) : typeof ue.startUtcTime == \"number\" && (De.programDateTime = ue.startUtcTime), typeof ue.duration == \"string\" ? De.duration = (parseFloat(ue.duration) || 0) / 1e3 : De.duration = (ue.duration || 0) / 1e3, De.start = N, De.baseurl = s, De.relurl = ue.url, N += De.duration, Te > 0 && se !== ue.periodId && (De.tagList.push([\"DIS\"]), j++), De.cc = j, se = ue.periodId, f.fragments.push(De);\n }), f.live = !1, f.type = P.e.MAIN, f.startSN = 0, f.endSN = f.fragments.length - 1, f.totalduration = N, f.averagetargetduration = N / f.fragments.length;\n }\n return n;\n }, L;\n }(), X = function() {\n function L() {\n }\n return L.verify = function(A) {\n return !!(A && A.adaptationSet && A.adaptationSet.representation && A.adaptationSet.representation.length) && A.adaptationSet.representation.reduce(function(s, a) {\n return !!(a.url && a.bandwidth && s);\n }, !0);\n }, L.parse = function(A) {\n var s = [];\n return L.verify(A) && A.adaptationSet.representation.forEach(function(a) {\n if (a && (a.url || a.m3u8)) {\n var n = new _e(a.baseUrl ? Object(ee.buildAbsoluteURL)(a.baseUrl, a.url, { alwaysNormalize: !0 }) : a.url);\n n.bitrate = Math.floor(a.bandwidth / 1e3), n.maxBitrate = Math.floor(a.bandwidth / 1e3), n.qualityType = a.qualityType || \"\", n.qualityLabel = a.qualityLabel || \"\", a.width && a.height && (n.width = a.width, n.height = a.height), $t(a.codecs || \"\", n), n.audioCodec = \"\", n.m3u8Slice = a.m3u8 || a.m3u8Slice, n.totalduration = a.duration, a.backupUrl && a.backupUrl.length && (n.url = n.url.concat(a.backupUrl)), n.default = a.defaultSelect || !1, n.urlId = 0, s.push(n);\n }\n }), { levels: s, def: 0 };\n }, L;\n }();\n (function(L) {\n L[L.HLSTS = 1] = \"HLSTS\", L[L.MP4 = 2] = \"MP4\", L[L.FLV = 3] = \"FLV\", L[L.HLSFMP4 = 4] = \"HLSFMP4\";\n })(h || (h = {})), function(L) {\n L[L.LongVideo = 1] = \"LongVideo\", L[L.ShortVideo = 2] = \"ShortVideo\", L[L.LiveGame = 3] = \"LiveGame\", L[L.LiveShow = 4] = \"LiveShow\", L[L.LivePlayBack = 5] = \"LivePlayBack\";\n }(T || (T = {}));\n var de = { 1: P.g.hls_ts, 2: P.g.mp4, 3: P.g.flv, 4: P.g.hls_fmp4 }, be = { avc: P.b.h264, hevc: P.b.hevc, av1: P.b.av1, kvc3: P.b.kvc3, kvc4: P.b.kvc4, kvc5: P.b.kvc5, kvc6: P.b.kvc6, kvc30: P.b.kvc30 }, Q = function() {\n function L() {\n }\n return L.verify = function(A) {\n return !!(A && A.adaptationSet && A.adaptationSet.length) && A.adaptationSet.reduce(function(s, a) {\n return !!(s && a.representation && a.representation.length);\n }, !0);\n }, L.parse = function(A, s) {\n s === void 0 && (s = P.b.unknown);\n var a, n, f, b, N, j, se, ue, Te = [], De = !1, Ne = 0;\n if (L.verify(A)) {\n var $e = A;\n j = de[$e.mediaType], se = $e.stereoType === 1 ? P.k.V360 : P.k.Normal, ue = $e.businessType >= 3 && $e.businessType <= 5, $e.adaptationSet.forEach(function(ht) {\n var Je = ht.duration / 1e3;\n Je && (ue = !1), !Ne && Je && (Ne = Je);\n var kt = ht.drmSchemaId, Xt = ht.drmToken;\n ht.drmSchemaId && (De = !0);\n var vt = P.e.MAIN;\n if (ht.mimeType && (ht.mimeType.indexOf(\"video\") !== -1 || (vt = ht.mimeType.indexOf(\"audio\") !== -1 ? P.e.AUDIO : ht.mimeType === \"text/vtt\" ? P.e.SUBTITLE : void 0)), vt) {\n var zt = ht.representation.map(function(_t, di) {\n var ct;\n if ($e.mediaType === h.HLSTS || $e.mediaType === h.HLSFMP4 ? ((ct = new _e(_t.url)).lang = ht.language || \"\", ct.default = !!_t.defaultSelect, ct.id = _t.id || di, ct.m3u8Slice = _t.m3u8Slice, ct.totalduration = Je || Ne, ct.maxBitrate = _t.maxBitrate || 0) : (ct = new Y(_t.url)).maxBitrate = _t.maxBitrate || 0, ct.vCodecType = s, ct.hdr = _t.hdrType || 0, ct.bitrate = _t.avgBitrate || ct.maxBitrate, ct.qualityType = _t.qualityType || \"\", ct.qualityLabel = _t.qualityLabel || \"\", ct.codec = _t.codecs || \"\", ct.codec) {\n var Ii = Ht(ct.codec);\n ct.videoCodec = Ii.video || \"\", ct.vCodecType = xt(ct.videoCodec);\n }\n return _t.videoCodec && ct.vCodecType === P.b.unknown && (ct.vCodecType = be[_t.videoCodec] || P.b.unknown), $e.adaptationSet.length === 1 && (ct.audioCodec = \"\"), _t.width && _t.height && (ct.width = _t.width, ct.height = _t.height), ct.hidden = _t.hidden || !1, ct.enableAdaptive = _t.disableAdaptive === void 0 || !_t.disableAdaptive, ct.default = _t.defaultSelect || !1, ct.index = di, ct.drmSchemaId = _t.drmSchemaId || kt, ct.drmToken = _t.drmToken || Xt, ct.drmSchemaId && (De = !0), _t.backupUrl && _t.backupUrl.length && (ct.url = ct.url.concat(_t.backupUrl)), ct.urlId = 0, ct.default && f === void 0 && (vt === P.e.MAIN ? f = di : vt === P.e.AUDIO ? b = di : vt === P.e.SUBTITLE && (N = di)), ct.comment = _t.comment, ct;\n });\n vt === P.e.MAIN ? Te = Te.concat(zt) : vt === P.e.AUDIO ? (a || (a = []), a = a.concat(zt)) : vt === P.e.SUBTITLE && (n || (n = []), n = n.concat(zt));\n }\n });\n }\n return n && L.processingSubtitleType(n, Ne), { levels: Te, def: f || 0, audioTracks: a, defAudio: b || 0, subtitleTracks: n, defSubtitle: N || 0, drm: De, box: j, stereoType: se, isLive: ue };\n }, L.processingSubtitleType = function(A, s) {\n A.forEach(function(a, n) {\n if (Qt(a.currentUrl) === P.g.hls) {\n a.live = !1, a.index = n, a.totalduration = s, a.targetduration = s, a.endSN = 1;\n var f = new ce();\n f.type = P.e.SUBTITLE, f.start = 0, f.sn = 1, f.level = n, f.cc = 0, f.url = a.currentUrl, f.duration = s, a.fragments = [f];\n }\n });\n }, L.getAdaptationIdxByType = function(A, s) {\n for (var a = 0; a < A.adaptationSet.length; a++) {\n var n;\n if (A.adaptationSet[a].mimeType === void 0)\n return s === \"video\" ? 0 : -1;\n if (((n = A.adaptationSet[a].mimeType) == null ? void 0 : n.indexOf(s)) === 0)\n return a;\n }\n return -1;\n }, L;\n }();\n function ae(L, A, s) {\n var a = Math.min(L, A);\n return a > 1080 || a === 1080 && s > 35;\n }\n var pe = [P.g.hls, P.g.hls_ts, P.g.hls_fmp4];\n function Le(L) {\n return !!L && pe.indexOf(L) !== -1;\n }\n var Ue = new RegExp('codecs=\"((/w|.)+)\"'), He = [{ k: \"video/mp4\", v: P.g.mp4 }, { k: \"video/quicktime\", v: P.g.mp4 }, { k: \"video/x-flv\", v: P.g.flv }, { k: \"video/webm\", v: P.g.matroska }, { k: \"video/x-matroska\", v: P.g.matroska }, { k: \"video/mp2t\", v: P.g.ts }, { k: \"audio/x-matroska\", v: P.g.matroska }, { k: \"audio/mp4\", v: P.g.mp4 }, { k: \"audio/mpeg\", v: P.g.mp3 }, { k: \"audio/aac\", v: P.g.aac }, { k: \"application/vnd.apple.mpegurl\", v: P.g.hls }, { k: \"application/x-mpegurl\", v: P.g.hls }];\n function Ge(L) {\n for (var A = { type: L, box: P.g.unknown, vCodec: P.b.unknown }, s = 0; s < He.length; s++)\n if (L.toLocaleLowerCase().indexOf(He[s].k) === 0) {\n A.box = He[s].v;\n var a = L.match(Ue);\n a && a.length > 2 && a[1].split(\",\").forEach(function(n) {\n n.indexOf(\"avc1\") === 0 ? A.vCodec = P.b.h264 : n.indexOf(\"av01\") === 0 ? A.vCodec = P.b.av1 : n.indexOf(\"hev1\") !== 0 && n.indexOf(\"hvc1\") !== 0 || (A.vCodec = P.b.hevc);\n });\n break;\n }\n return A;\n }\n var Qe = new RegExp(\"^((http|https)://)|blob:\"), ot = [P.g.matroska, P.g.mp3, P.g.aac], nt = [P.g.flv, P.g.raw, P.g.webrtc, P.g.ivf], ut = [P.g.mp4, P.g.flv, P.g.hls, P.g.raw, P.g.hls_fmp4, P.g.hls_ts, P.g.ts, P.g.ivf], it = Object.keys(P.b).map(function(L) {\n return P.b[L];\n }), Ft = function() {\n function L() {\n }\n return L.verifyMix = function(A) {\n var s = 0;\n for (var a in A)\n it.indexOf(a) !== -1 && s++;\n return s > 0;\n }, L.isSrcEmpty = function(A) {\n try {\n if (typeof A == \"string\") {\n if (!(A = A.trim()))\n return !0;\n if (!Qe.test(A))\n return Object.keys(JSON.parse(A)).length === 0;\n } else if (!(A instanceof Blob))\n return Object.keys(A).length === 0;\n } catch (s) {\n }\n return !1;\n }, L.filterLevels = function(A) {\n var s = Me.a.chrome || Me.a.firefox;\n A.levels.forEach(function(b) {\n s && b.audioCodec && b.audioCodec.indexOf(\"mp4a.40.34\") !== -1 && (b.audioCodec = \"\");\n });\n var a = pt.isMSEAvailable() ? pt.isMSECodecStrSupportedInMp4 : pt.isVideoCodecStrSupportedInMp4, n = pt.isMSEAvailable() ? pt.isMSECodecSupported : pt.isVideoCodecSupported;\n A.levels = A.levels.filter(function(b) {\n var N = b.audioCodec, j = b.videoCodec, se = b.hdr, ue = b.vCodecType, Te = !N || a(N, \"audio\"), De = !j || a(j);\n return j || ue === P.b.unknown || (De = n(ue, !!se)), Te && De;\n });\n var f = !1;\n return A.levels.forEach(function(b, N) {\n b.index = N, b.default && (A.def = N, f = !0);\n }), f || (w.b.i(\"media-src\", \"no default main level, select the one with the lowest bit rate.\"), A.def = A.levels.reduce(function(b, N, j) {\n return N.bitrate < A.levels[b].bitrate ? j : b;\n }, 0)), A.audioTracks && (A.audioTracks = A.audioTracks.filter(function(b) {\n return !b.audioCodec || a(b.audioCodec, \"audio\");\n }), A.defAudio = void 0, A.audioTracks.forEach(function(b, N) {\n b.index = N, b.default && (A.defAudio = N);\n }), A.defAudio === void 0 && (A.defAudio = 0)), A.subtitleTracks && A.subtitleTracks.length && A.subtitleTracks.forEach(function(b, N) {\n b.index = N, b.default && (A.defSubtitle = N);\n }), A;\n }, L.preParse = function(A, s, a, n, f) {\n if (s === void 0 && (s = !1), f === void 0 && (f = \"\"), typeof A == \"string\") {\n if (!(A = this._formatStrData(A)))\n return { src: A, box: P.g.unknown, srcType: P.i.OTHERS };\n } else\n A instanceof Blob || (A = JSON.parse(JSON.stringify(A)));\n if (Array.isArray(A)) {\n for (var b, N = [], j = A.map(function(Te) {\n if (!Te || !Te.src)\n return { info: void 0, priority: 0 };\n var De = L._preParseMd(Te.src, s, a, n, f);\n return N.push(De.box), { info: De, mime: Te.type ? Ge(Te.type) : void 0, priority: 0 };\n }), se = 0; se < j.length; se++) {\n var ue = j[se];\n if (ue.info && ue.info.src)\n if (ue.mime && (ue.mime.box !== P.g.unknown && (ue.info.box = ue.mime.box), ue.mime.vCodec !== P.b.unknown && (ue.info.codecType = ue.mime.vCodec)), a !== void 0 && a !== ue.info.nativeFirst || ue.priority++, ue.info.nativeFirst)\n ue.priority += ue.info.box === P.g.unknown ? 1 : pt.isVideoBoxSupported(ue.info.box) ? 2 : -2, ue.priority += ue.info.codecType === P.b.unknown ? 1 : n && n === ue.info.codecType || pt.isVideoCodecSupported(ue.info.codecType) ? 2 : -2;\n else {\n if (!pt.isMSEAvailable())\n continue;\n ue.priority += ue.info.box === P.g.unknown ? 1 : ut.indexOf(ue.info.box) >= 0 ? 2 : -2, ue.priority += ue.info.codecType === P.b.unknown ? 1 : n && n === ue.info.codecType || pt.isMSECodecSupported(ue.info.codecType) ? 2 : -2;\n }\n }\n return j.sort(function(Te, De) {\n return De.priority - Te.priority;\n }), (b = j[0]) != null && b.info ? (j[0].info.mixContainerInput = N, j[0].info) : { src: A, box: P.g.unknown, srcType: P.i.OTHERS };\n }\n return L._preParseMd(A, s, a, n, f);\n }, L._preParseMd = function(A, s, a, n, f) {\n if (s === void 0 && (s = !1), f === void 0 && (f = \"\"), typeof A == \"string\" && !(A = this._formatStrData(A)))\n return { src: A, box: P.g.unknown, srcType: P.i.OTHERS };\n var b, N, j = [], se = pt.isMSEAvailable();\n if (L.verifyMix(A)) {\n var ue = {}, Te = A;\n for (var De in N = {}, Te) {\n var Ne = De;\n if (it.indexOf(Ne) !== -1) {\n var $e = Te[Ne];\n if (typeof $e == \"string\" && ($e = $e.trim()), !$e)\n continue;\n var ht = this._getBoxBySrc($e, f, Ne);\n if (ht.nativeFirst = this._getNativeFirstByBox(ht.box, se, a), j.push(Ne), se && !ht.nativeFirst) {\n var Je = pt.getVideoCodecCompatibilityByCodec(Ne);\n N[Ne] = Je.decoder, Ne === P.b.h264 && (Je = { decoder: P.c.buildin, smooth: !0, mix: Je.mix }), Je.smooth && Je.decoder === P.c.buildin && $e && (ht.compatibility = Je, ht.codecType = Ne, ue[Ne] = ht);\n } else {\n var kt = pt.isVideoCodecSupported(Ne);\n N[Ne] = kt ? P.c.buildin : P.c.unsupported, (!kt || Me.a.ios && Ne === P.b.hevc && ht.box === P.g.hls_ts) && Ne !== P.b.h264 || (ht.compatibility = { decoder: P.c.buildin, smooth: !0, mix: !1 }, ht.codecType = Ne, ue[Ne] = ht);\n }\n }\n }\n var Xt, vt = ue[P.b.hevc], zt = ue[P.b.av1], _t = ue[P.b.h264];\n if (n && ue[n])\n b = ue[n];\n else {\n var di, ct = zt || vt;\n !Me.a.mobile && s && ct && ct.compatibility && ct.compatibility.mix && _t && (Q.verify(ct.src) && Q.verify(_t.src) && ct.box === _t.box ? di = function(Ii, wt, Gt) {\n if (Gt === void 0 && (Gt = P.b.hevc), Ii.mediaType === wt.mediaType) {\n var Or = Q.getAdaptationIdxByType(Ii, \"audio\"), Hr = Q.getAdaptationIdxByType(wt, \"audio\");\n if (Or >= 0 && Hr >= 0 || Or === -1 && Hr === -1) {\n var nr = Q.getAdaptationIdxByType(Ii, \"video\"), hr = Q.getAdaptationIdxByType(wt, \"video\");\n if (nr === -1 || hr === -1)\n return;\n var wr = Ii.adaptationSet[nr].representation, bn = wt.adaptationSet[hr].representation;\n if (wr.length === 0 || bn.length === 0 || wr.length === 1 && bn.length === 1)\n return;\n var jn = [], ss = [], Wl = {}, Gl = wr.length > 1 ? wr : bn, cE = Gl[0].width < Gl[Gl.length - 1].width;\n if (bn.forEach(function(lr) {\n ae(lr.height, lr.width, lr.frameRate) || (Wl[lr.qualityType] = Gt, ss.push(lr));\n }), wr.forEach(function(lr) {\n (ae(lr.height, lr.width, lr.frameRate) || ss.length === 0) && (Wl[lr.qualityType] = P.b.h264, jn.push(lr));\n }), jn.length === 0 && ss.length === 0)\n return;\n var Kl = jn.concat(ss);\n if (ss.length && Kl.sort(function(lr, Ih) {\n return cE ? lr.width - Ih.width : Ih.width - lr.width;\n }), Kl.length) {\n var kh = o()({}, wt);\n return kh.adaptationSet[hr].representation = Kl, { manifest: kh, qualityList: Wl };\n }\n }\n }\n }(_t.src, ct.src, ct.codecType) : M.verify(ct.src) && M.verify(_t.src) && (_t.src, ct.src, di = void (ct.codecType === void 0 && P.b.hevc)), di && (w.b.i(\"media-src\", \"mix kwai manifest\"), ct.src = di.manifest, ct.mediaLevels = L.filterLevels(Q.parse(ct.src)), ct.codecType = P.b.unknown, ct.mixQualityList = di.qualityList, b = ct));\n }\n b || ((b = zt || vt || _t) && (b.nativeFirst = this._getNativeFirstByBox(b.box, se, a)), w.b.i(\"media-src\", \"select src\", (Xt = b) == null ? void 0 : Xt.codecType));\n } else\n (b = this._getBoxBySrc(A, f)).nativeFirst = this._getNativeFirstByBox(b.box, se, a);\n return b || (b = { src: A, box: P.g.unknown, srcType: P.i.OTHERS }), j.length && (b.mixCodecInput = j), b.mixCodecAvailable = N, b;\n }, L._getNativeFirstByBox = function(A, s, a) {\n return !s || ot.indexOf(A) !== -1 || !(nt.indexOf(A) !== -1 || !pt.isVideoBoxSupported(A)) && (Me.a.mobile ? A === P.g.mp4 || A === P.g.hls || A === P.g.hls_ts || A === P.g.ts ? !(a !== void 0 && !a) && !!pt.isVideoBoxSupported(A) : A === P.g.hls_fmp4 ? !(a !== void 0 && !a) && !(!pt.isVideoBoxSupported(A) || !Me.a.x5 && !Me.a.xweb) : void 0 : a ? !!pt.isVideoBoxSupported(A) : a === void 0 && !pt.isMSEAvailable());\n }, L._getBoxBySrc = function(A, s, a) {\n s === void 0 && (s = \"\"), a === void 0 && (a = P.b.unknown);\n var n = { src: A, box: P.g.unknown, srcType: P.i.OTHERS };\n if (typeof A == \"string\")\n n.box = Qt(A), n.mediaLevels = { levels: [new Y(A)], def: 0 }, n.isLive = this._getIsLiveByBox(n.box);\n else if (A instanceof Blob)\n n.mediaLevels = { levels: [new Y(URL.createObjectURL(A))], def: 0 }, n.box = A instanceof File ? Qt(A.name) : P.g.unknown, n.srcType = P.i.FILE, n.isLive = !1;\n else if (Q.verify(A))\n n.mediaLevels = L.filterLevels(Q.parse(A, a)), n.box = n.mediaLevels.box || Qt(A.adaptationSet[0].representation[0].url), n.srcType = P.i.KWAI, n.isLive = n.isLive === void 0 ? this._getIsLiveByBox(n.box) : n.isLive;\n else if (M.verify(A))\n n.mediaLevels = L.filterLevels(M.parse(A)), n.box = P.g.flv, n.isLive = !0, n.srcType = P.i.KWAI_FLV_ABR;\n else if ($.verify(A)) {\n var f = $.parse(A, s);\n n.mediaLevels = o()({ def: 0 }, f), n.box = P.g.flv, n.isLive = !1, n.multipart = !0, n.srcType = P.i.KWAI_FLV_MP;\n } else\n X.verify(A) && (n.mediaLevels = L.filterLevels(X.parse(A)), n.box = P.g.hls, n.srcType = P.i.KWAI);\n return Le(n.box) && (n.multipart = !0), n;\n }, L._getIsLiveByBox = function(A) {\n var s;\n return [P.g.flv, P.g.hls, P.g.unknown, P.g.ivf, P.g.yuv].indexOf(A) === -1 && (s = !1), A === P.g.webrtc && (s = !0), s;\n }, L._formatStrData = function(A) {\n var s = A.trim();\n if (s) {\n if (!Qe.test(s)) {\n try {\n s = JSON.parse(s);\n } catch (a) {\n }\n typeof s == \"string\" && (s = Object(ee.buildAbsoluteURL)(location.href, s, { alwaysNormalize: !0 }));\n }\n return s;\n }\n }, L;\n }(), Lt = function() {\n function L() {\n }\n return L.parse = function(A) {\n return X.verify(A) ? X.parse(A) : Q.verify(A) ? Q.parse(A) : { levels: [], def: 0 };\n }, L.parseLevelSlice = function(A, s) {\n if (A.m3u8Slice) {\n var a = fi.parseLevelPlaylist(A.m3u8Slice, A.url[0], A.index, s, 0);\n return delete A.m3u8Slice, a.fragments.length === 0 ? void 0 : a;\n }\n }, L;\n }(), dt = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this) || this)._playlistLoader = void 0, n._ctx = void 0, n._onManifestLoaded = function(f) {\n var b = n._ctx.lctx;\n f = Ft.filterLevels(f), n._ctx.stat.drm = f.drm, b.levels = f.levels, b.currentIdx = f.def, f.audioTracks && (b.audioTracks = f.audioTracks, b.audioIdx = f.defAudio || 0), f.subtitleTracks && (b.subtitleTracks = f.subtitleTracks, b.subtitleIdx = f.defSubtitle || 0), n.emit(u.a.MANIFEST_PARSED);\n }, n._onLevelLoaded = function(f) {\n n.emit(u.a.LEVEL_LOADED, f);\n }, n._onAudioLevelLoaded = function(f) {\n n.emit(u.a.AUDIO_TRACK_LOADED, f);\n }, n._onSubtitleLevelLoaded = function(f) {\n n.emit(u.a.SUBTITLE_TRACK_LOADED, f);\n }, n._ctx = a, n._playlistLoader = new pi(n._ctx.config), n._playlistLoader.on(u.a.HLS_MANIFEST_PARSED, n._onManifestLoaded), n._playlistLoader.on(u.a.LEVEL_LOADED, n._onLevelLoaded), n._playlistLoader.on(u.a.AUDIO_TRACK_LOADED, n._onAudioLevelLoaded), n._playlistLoader.on(u.a.SUBTITLE_TRACK_LOADED, n._onSubtitleLevelLoaded), n._playlistLoader.on(u.a.DOWNLOAD, function(f) {\n n.emit(u.a.DOWNLOAD, f);\n }), n._playlistLoader.on(u.a.ERROR, function(f) {\n n.emit(u.a.ERROR, f);\n }), n;\n }\n x()(A, L);\n var s = A.prototype;\n return s.loadManifest = function() {\n this._ctx.lctx.levels.length ? this.emit(u.a.MANIFEST_PARSED) : this._playlistLoader && this._playlistLoader.load({ url: this._ctx.src, type: lt.MANIFEST, level: 0, id: null, credentials: this._ctx.config.credentials, headers: this._ctx.config.headers });\n }, s.loadLevel = function(a, n) {\n if (n === void 0 && (n = P.e.MAIN), a.m3u8Slice) {\n var f = Lt.parseLevelSlice(a, n);\n if (f && (a.totalduration && (f.totalduration = a.totalduration), B(a, f, this._ctx.stat.liveShiftEnabled), n === P.e.MAIN ? this.emit(u.a.LEVEL_UPDATED) : n === P.e.AUDIO ? this.emit(u.a.AUDIO_TRACK_UPDATED) : n === P.e.SUBTITLE && this.emit(u.a.SUBTITLE_TRACK_UPDATED), !f.live))\n return;\n }\n if (this._playlistLoader) {\n var b = a.urlId, N = { url: a.url[b], type: Zt(n), level: a.index, id: b, credentials: this._ctx.config.credentials, headers: this._ctx.config.headers, levelDetails: a };\n a.size && a.http416 < g.i && this._ctx.stat.liveShiftEnabled && (w.b.i(\"mp-hls\", \"load m3u8 range start: \" + a.size + \".\"), N.rangeStart = a.size), this._playlistLoader.load(N);\n }\n }, s.destroy = function() {\n this._playlistLoader && (this._playlistLoader.destroy(), this._playlistLoader = void 0);\n }, A;\n }(W.a), jt = dt ? { hls: dt, hls_ts: dt, hls_fmp4: dt, flv: O } : { flv: O }, li = i(21), Ri = i(36);\n function ui(L, A) {\n return A ? Ri.a.searchIndex(A, function(s) {\n return L < s.start ? -1 : L > s.start + s.duration ? 1 : 0;\n }) : -1;\n }\n var Ni = function(L) {\n function A(a, n) {\n var f;\n return (f = L.call(this) || this)._loaders = void 0, f._config = void 0, f._loaderConfig = void 0, f._decryptkey = void 0, f._decrypturl = void 0, f._loadEnd = function(b, N, j) {\n if (N && N instanceof ArrayBuffer) {\n var se = b.frag;\n f._decryptkey = se.decryptdata.key = new Uint8Array(N), f._loaders[se.type] = null, f.emit(u.a.HLS_KEY_LOADED, { frag: se });\n } else\n f._onError({ type: d.b.NETWORK_ERROR, details: d.a.KEY_LOAD_ERROR, fatal: !0, reason: \"key empty\", statusCode: j.code });\n }, f._loadError = function(b, N) {\n var j = b.frag.loader;\n N.fatal && (j && j.abort(), f._loaders[b.frag.type] = null, f._onError({ type: d.b.NETWORK_ERROR, details: d.a.KEY_LOAD_ERROR, fatal: !0, reason: N.text, statusCode: N.code }));\n }, f._onError = function(b) {\n f.emit(u.a.ERROR, b);\n }, f._config = a, f._loaderConfig = n, f._loaders = {}, f._decryptkey = null, f._decrypturl = null, f;\n }\n x()(A, L);\n var s = A.prototype;\n return s.destroy = function() {\n for (var a in this._loaders) {\n var n = this._loaders[a];\n n && n.destroy();\n }\n this._loaders = {};\n }, s.load = function(a) {\n var n = a.type, f = this._loaders[n], b = a.decryptdata, N = null;\n if (b && (N = b.uri), !N || N === this._decrypturl && this._decryptkey !== null)\n this._decryptkey && (b && (b.key = this._decryptkey), this.emit(u.a.HLS_KEY_LOADED, { frag: a }));\n else {\n var j = this._loaderConfig;\n f && (w.b.w(\"KeyLoader\", \"abort previous key loader for type:\" + n), f.abort()), a.loader = this._loaders[n] = new le(), this._decrypturl = N, this._decryptkey = null;\n var se = { url: N, frag: a, responseType: \"arraybuffer\", credentials: this._config.credentials, headers: this._config.headers }, ue = j, Te = { onEnd: this._loadEnd, onError: this._loadError };\n a.loader.load(se, Te, ue);\n }\n }, A;\n }(W.a), Ci = i(27), _i = { local: 0, server: 0 }, Pi = function() {\n function L() {\n var s = this;\n this._loader = void 0, this._callback = void 0, this._loaderConfig = void 0, this._onLoaderError = function() {\n s._disposeLoader();\n }, this._onLoaderEnd = function(a, n) {\n if (s._disposeLoader(), typeof n == \"string\") {\n _i.local = performance.now();\n var f = n.split(\",\");\n _i.server = 1e3 * parseFloat(f[0]) + parseInt(f[1], 10) / 1e3 / 2;\n }\n }, this._callback = { onError: this._onLoaderError, onEnd: this._onLoaderEnd }, this._loaderConfig = { useFetch: !1, connectionTimeout: 5e3 };\n }\n L.serverMs = function(s) {\n return _i.server ? s - _i.local + _i.server : null;\n }, L.clear = function() {\n _i.local = 0, _i.server = 0;\n };\n var A = L.prototype;\n return A.load = function() {\n this._disposeLoader();\n var s = { url: \"https://ntp.nc.gifshow.com/\", responseType: \"text\" };\n (this._loader = new le()).load(s, this._callback, this._loaderConfig);\n }, A.destroy = function() {\n this._disposeLoader();\n }, A._disposeLoader = function() {\n this._loader && this._loader.destroy();\n }, v()(L, [{ key: \"time\", get: function() {\n return o()({}, _i);\n } }], [{ key: \"serverNowMs\", get: function() {\n return _i.server ? performance.now() - _i.local + _i.server : null;\n } }]), L;\n }(), zi = function() {\n function L() {\n this._ntp = void 0, this._priv = { abst: 0, originDTS: 0 }, this._vLastExtraInfo = void 0, this._aLastExtraInfo = void 0, this._ntp = new Pi();\n }\n var A = L.prototype;\n return A.init = function() {\n !Pi.serverNowMs && this._ntp && this._ntp.load();\n }, A.onPrivNal = function(s) {\n s.abst && (this._priv.abst = s.abst, this._priv.originDTS = s.originDTS);\n }, A.onParsing = function(s) {\n var a = this;\n s.segments.forEach(function(n) {\n n.type === P.l.VIDEO ? a._vLastExtraInfo = { dts: n.startDTS, originDTS: n.originFirstDTS, parseTime: n.firstParseTime } : n.type === P.l.AUDIO && (a._aLastExtraInfo = { dts: n.startDTS, originDTS: n.originFirstDTS, parseTime: n.firstParseTime });\n });\n }, A.destroy = function() {\n this._ntp && (this._ntp.destroy(), this._ntp = void 0);\n }, A.getDisplayDelay = function(s) {\n return this._renderDelay(s, this._vLastExtraInfo);\n }, A.getAudioRenderDelay = function(s) {\n return this._renderDelay(s, this._aLastExtraInfo);\n }, A.getRecDelay = function() {\n var s = this._vLastExtraInfo;\n if (Pi.serverNowMs && s != null && s.parseTime) {\n var a = this._priv, n = Pi.serverMs(1e3 * s.parseTime + L._workerStartMs);\n if (n && a.originDTS && a.abst)\n return Math.round(n - 1e3 * (s.originDTS - a.originDTS + a.abst));\n }\n return 0;\n }, A._renderDelay = function(s, a) {\n var n = Pi.serverNowMs, f = this._priv;\n return n && a && f.abst && f.originDTS ? Math.round(1e3 * (a.dts - s - (a.originDTS - f.originDTS + f.abst)) + n) : 0;\n }, v()(L, null, [{ key: \"workerTimeOffset\", set: function(s) {\n L._workerStartMs = s;\n } }]), L;\n }();\n zi._workerStartMs = 0;\n var vn = zi, Bn = i(42), gn = function() {\n function L(s, a, n) {\n var f = this;\n if (this._id = void 0, this._evt = void 0, this._ctx = void 0, this._w = void 0, this._internalEvt = void 0, this._chunkIndex = void 0, this._seek = !1, this._mux = void 0, this._progressTime = 0, this._lastTRequest = 0, this._transmuxData = void 0, this._ended = !1, this._onWorkMessage = function(b) {\n f._onMessage(b.data.event, b.data.data);\n }, this._id = n, this._evt = s, this._ctx = a, a.stat.webWorker && (this._w = a.stat.muxWorker, a.stat.muxWorker = void 0, !this._w))\n try {\n w.b.i(\"muxer-base\", \"init mux worker\"), this._w = p()(46), vn.workerTimeOffset = performance.now();\n } catch (b) {\n }\n this._chunkIndex = 0, this._transmuxData = { audioCodec: a.stat.audioCodec, videoCodec: \"\", duration: 0, remuxId: 1 };\n }\n var A = L.prototype;\n return A.init = function() {\n var s = this, a = this._internalEvt = new W.a(), n = this._onMessage.bind(this);\n if ([u.a.PRIV_NAL, u.a.SEI, u.a.INIT_PTS_FOUND, u.a.PARSING_INIT_SEGMENT, u.a.PARSED_DATA, u.a.RAW_DATA, u.a.VIDEO_CODEC_DETECTED, u.a.LOAD_END, u.a.ERROR, u.a.PARSING_DATA, u.a.DEMUXER_DETECTED, u.a.MEDIA_DEMUX, u.a.METADATA, u.a.KEY_FRAME_INDEXS, u.a.KEY_FRAME, u.a.VIDEO_FRAME_INFO, u.a.MP4_NOT_FASTSTART].forEach(function(f) {\n return a.on(f, function(b) {\n return n(f, b);\n });\n }), w.b.i(\"muxer-base\", \"TYPE_SUPPORTED\", \"hw: \" + pt.isSupportHW, pt.TYPE_SUPPORTED), this._w) {\n this._w.addEventListener(\"message\", this._onWorkMessage), this._w.addEventListener(\"error\", function(f) {\n w.b.i(\"muxer-base\", \"worker onerror\", f.message), s._evt.emit(u.a.ERROR, { type: d.b.MUX_ERROR, details: d.a.REMUX_WORKER_ERROR, fatal: !0, reason: f.message });\n });\n try {\n this._w.postMessage({ cmd: Ci.a.INIT, typeSupported: pt.TYPE_SUPPORTED, config: this._ctx.getRemuxConfig(), vendor: navigator.vendor });\n } catch (f) {\n w.b.i(\"muxer-base\", \"worker init error\"), this._w.terminate(), this._w = void 0;\n }\n }\n this._w || (this._mux = new Bn.a(a, pt.TYPE_SUPPORTED, this._ctx.getRemuxConfig(), navigator.vendor));\n }, A.destroy = function() {\n this._ctx.stat.muxWorker = void 0, this._w && (this._w.postMessage({ cmd: Ci.a.DESTROY }), this._w.removeEventListener(\"message\", this._onWorkMessage), this._w.terminate(), this._w = void 0), this._internalEvt && (this._internalEvt.removeAllListeners(), this._internalEvt = void 0);\n }, A.trackInfo = function(s, a) {\n this._transmuxData.hasVideo = s, this._transmuxData.hasAudio = a;\n }, A.reset = function(s) {\n w.b.i(\"muxer-base\", \"reset: \" + s), this._transmuxData.remuxId++, this._chunkIndex = 0, this._seek = s, this._ended = !1;\n }, A.end = function() {\n this._ended || (this._ended = !0, this._w ? this._w.postMessage({ cmd: Ci.a.LOAD_END }) : this._mux && this._mux.end());\n }, A.updateConfig = function(s) {\n this._w ? this._w.postMessage({ cmd: Ci.a.UPDATE_CONFIG, config: s }) : this._mux && this._mux.updateConfig(s);\n }, A.onFragProgress = function(s) {\n this._demux(s, !1);\n }, A.onFragLoaded = function(s) {\n this._demux(s, !0);\n }, A.updateSuffix = function(s) {\n this._transmuxData.suffix = s;\n }, A._demux = function(s, a) {\n var n = s.context.frag, f = !1, b = n.start || 0, N = !1, j = !0, se = null;\n if (this._transmuxData.progress = s.progress, s.data && s.data.byteLength) {\n var ue = performance.now(), Te = ue - (this._progressTime || s.stats.trequest);\n s.stats.trequest !== this._lastTRequest && (this._lastTRequest = s.stats.trequest, Te = ue - s.stats.trequest), this._progressTime = ue, this._evt.emit(u.a.LOADER_CHUNK_ARRIVAL, { progress: s.context.progress, byteLength: s.data.byteLength, timeCost: Te, ts: performance.now() });\n }\n this._chunkIndex === 0 && (f = !0, N = !1, j = s.remuxContiguous || !1, w.b.i(\"muxer-base\", \"chunk 0 contiguous: \" + j)), a ? (this._progressTime = 0, this._chunkIndex = 0, se = s.data ? new Uint8Array(s.data) : new Uint8Array()) : (this._chunkIndex++, s.data && (se = new Uint8Array(s.data))), se && (this._push(se, n.decryptdata, s.initData, b, j, f, N, !this._seek || n.start === 0, a), this._seek = !1);\n }, A._onParsing = function(s) {\n return !s.extra || s.extra.remuxId === this._transmuxData.remuxId || (w.b.i(\"muxer-base\", \"parsing data expired\"), !1);\n }, A._onParsed = function(s) {\n return !s.extra || s.extra.remuxId === this._transmuxData.remuxId || (w.b.i(\"muxer-base\", \"parsed expired\"), !1);\n }, A._push = function(s, a, n, f, b, N, j, se, ue) {\n b || w.b.i(\"muxer-base\", \" demux contiguous false\");\n var Te = this._transmuxData;\n this._w ? this._w.postMessage({ cmd: Ci.a.PUSH, data: s, decryptdata: a, initSegment: n, timeOffset: f || 0, contiguous: b, trackSwitch: N, discontinuity: j, accurateTimeOffset: se, fragEnd: ue, transmuxData: Te }, [s.buffer]) : this._mux && this._mux.push(s, a, n, f, b, N, j, se, ue, o()({}, Te));\n }, A._onMessage = function(s, a) {\n switch (s) {\n case u.a.PARSING_DATA:\n if (!this._onParsing(a))\n return;\n break;\n case u.a.PARSED_DATA:\n if (!this._onParsed(a))\n return;\n a && (a.trackType = this._id);\n break;\n case u.a.RAW_DATA:\n if (a.extra && a.extra.remuxId !== this._transmuxData.remuxId)\n return;\n }\n this._evt.emit(s, a);\n }, v()(L, [{ key: \"totalDuration\", set: function(s) {\n this._transmuxData.duration = s;\n } }, { key: \"id\", get: function() {\n return this._id;\n } }]), L;\n }(), Vn = function(L) {\n function A(a, n, f) {\n var b;\n return (b = L.call(this, a, n, f) || this)._frag = void 0, b._fragInfo = void 0, b._frag = void 0, b._fragInfo = {}, b;\n }\n x()(A, L);\n var s = A.prototype;\n return s.reset = function(a) {\n L.prototype.reset.call(this, a), this._frag = void 0;\n }, s._demux = function(a, n) {\n var f = a.context.frag, b = this._frag, N = !1, j = Object(te.a)(f.startDTS) ? f.startDTS : f.start, se = !1, ue = !0, Te = null;\n if (this._transmuxData.progress = a.progress, a.data && a.data.byteLength) {\n var De = performance.now(), Ne = { progress: a.context.progress, byteLength: a.data.byteLength, timeCost: performance.now() - (this._progressTime || a.stats.trequest), ts: performance.now() };\n this._progressTime = De, this._evt.emit(u.a.LOADER_CHUNK_ARRIVAL, Ne);\n }\n if (this._chunkIndex === 0) {\n this._fragInfo = {}, N = !(b && f.level === b.level), se = !(b && f.cc === b.cc);\n var $e = b && f.sn === b.sn + 1;\n ue = !(N || !$e), this._ctx.stat.isLive && (se = se || !$e), b && a.remuxContiguous && (ue || (j = Object(te.a)(b.endDTS) ? b.endDTS : b.start + b.duration), ue = !0);\n }\n n ? (this._progressTime = 0, this._chunkIndex = 0, this._frag = a.context.frag, Te = a.data ? new Uint8Array(a.data) : new Uint8Array(), this._frag = f) : (this._chunkIndex++, a.data && (Te = new Uint8Array(a.data))), Te && (this._push(Te, f.decryptdata, a.initData, j, ue, N, se, !this._seek || a.context.frag.start === 0, n), this._seek = !1);\n }, s._onParsing = function(a) {\n var n = this;\n if (!(!a.extra || a.extra.remuxId === this._transmuxData.remuxId))\n return w.b.i(\"mux-multipart\", \"parsing data expired\"), !1;\n var f = this._fragInfo;\n return a.segments.forEach(function(b) {\n var N = b.type;\n N === P.l.VIDEO && b.adjustedStart && b.adjustedStart > 1 ? w.b.i(\"mux-multipart\", \"video segment adjustedStart: \" + b.adjustedStart + \" > 1\") : f.hasOwnProperty(N) ? (f[N].endPTS = b.endPTS, f[N].endDTS = b.endDTS) : (b.endPTS || b.endDTS || !n._frag || (b.endPTS = b.startPTS + n._frag.duration, b.endDTS = b.startDTS + n._frag.duration), f[N] = { startDTS: b.startDTS, startPTS: b.startPTS, endPTS: b.endPTS, endDTS: b.endDTS });\n }), !0;\n }, s._onParsed = function(a) {\n return a.extra && a.extra.remuxId !== this._transmuxData.remuxId ? (w.b.i(\"mux-multipart\", \"parsed expired\"), !1) : (a.info = o()({}, this._fragInfo), a.frag = this._frag, this._fragInfo = {}, !0);\n }, A;\n }(gn), yr = \"initSegment\", wa = function() {\n function L(s, a, n, f) {\n var b = this;\n this._evt = void 0, this._type = void 0, this._levels = void 0, this._pos = 0, this._failPos = -1, this._mux = void 0, this._loadEnabled = !0, this._newSource = !0, this._startSN = 0, this._fragLoadFailSec = 0, this._demuxing = !1, this._loader = void 0, this._initFragLoader = void 0, this._keyLoader = void 0, this._remuxContiguous = !1, this._ctx = void 0, this._fragAlign = void 0, this._callback = void 0, this._loadConfig = void 0, this._keyLoadConfig = void 0, this._parallelStartCache = void 0, this._tryLoadNext = function() {\n var N = b._ctx.lctx.getNextIdx(b._type);\n b._ctx.lctx.getLevelIdx(b._type) !== N && b._ctx.lctx.setLevelIdx(N, b._type);\n var j = b.level;\n if (j) {\n if (b._fragAlign && j.hasFrag) {\n var se = b._fragAlign.frag, ue = j.fragments[b._pos];\n ue && b._pos === b._fragAlign.pos && se && Object(te.a)(se.startPTS) && Un(j, ue, se.startPTS, se.endPTS, se.startDTS, se.endDTS);\n }\n if (b._loadEnabled && !b._loader && !b._demuxing) {\n if (b._isLevelEnd())\n return void b._mux.end();\n var Te = b._nextFragment();\n Te && (j.hasFrag && j.initSegment && !j.initSegment.data && b._loadFrag(j.initSegment), b._loadFrag(Te));\n }\n }\n }, this._fragParsed = function(N) {\n var j = N.frag;\n if (N.trackType === b._type && j) {\n for (var se in b._demuxing = !1, b._remuxContiguous = !1, N.info) {\n var ue = N.info[se];\n if (ue && ue.endPTS && ue.endDTS) {\n var Te = b._levels[j.level];\n Te != null && Te.hasFrag && Un(Te, j, ue.startPTS, ue.endPTS, ue.startDTS, ue.endDTS);\n }\n }\n b._fragAlign && (b._fragAlign = void 0), b._isLevelEnd() ? b._mux.end() : b._type === P.e.MAIN && b._evt.emit(u.a.ABR_NEXT, { startSec: b._getFragStartByPos(b._pos) }), b._tryLoadNext();\n }\n }, this._tryStartDemux = function() {\n if (b._parallelStartCache && b._isReady(b._parallelStartCache.context.frag, b._levels[b._parallelStartCache.context.frag.level])) {\n var N = b._parallelStartCache.data.get(b._parallelStartCache.data.unreadLen);\n N && b._startDemux(b._parallelStartCache.context, N.buffer, b._parallelStartCache.stats, b._parallelStartCache.progress), b._parallelStartCache = void 0;\n }\n }, this._onProgress = function(N, j, se) {\n b._levels[N.frag.level], N.frag && N.frag.sn === yr || j instanceof ArrayBuffer && b._preprocessed(N, j, se, !0);\n }, this._onEnd = function(N, j, se) {\n b._failPos = -1, b._fragLoadFailSec = 0, N.frag && N.frag.sn === yr ? b._destroyInitLoader() : b._destroyLoader();\n var ue = b._levels[N.frag.level], Te = ji(Yt.SUCCESS, N, se, ue == null ? void 0 : ue.qualityType, b._ctx.stat.isPreload, ue == null ? void 0 : ue.codec);\n b._evt.emit(u.a.DOWNLOAD, Te), typeof j != \"string\" && (N.frag && N.frag.sn === yr && j ? (N.frag.data = new Uint8Array(j), b._demuxing = !1, b._tryStartDemux()) : b._preprocessed(N, j, se, !1));\n }, this._onError = function(N, j) {\n b._demuxing = !1;\n var se = b._levels[N.frag.level];\n if (b._evt.emit(u.a.DOWNLOAD, ji(Yt.FAIL, N, j, se == null ? void 0 : se.qualityType, b._ctx.stat.isPreload, se == null ? void 0 : se.codec)), j.fatal)\n if (b._remuxContiguous = !1, b._failPos < 0 && (b._failPos = Math.max(0, b._pos - 1)), b._resetIO(), b._fragLoadFailSec += N.frag.duration || 0, N.frag.sn === yr || j.code !== 404 || b._ctx.config.maxFragFailSec && b._fragLoadFailSec >= b._ctx.config.maxFragFailSec || b._isLevelEnd()) {\n var ue = { type: d.b.NETWORK_ERROR, details: d.a.LOAD_ERROR, fatal: !0, reason: j.text, statusCode: j.code, url: N.url.toString() };\n b._evt.emit(u.a.ERROR, ue);\n } else\n b._tryLoadNext();\n }, this._onAbort = function(N, j) {\n var se = b._levels[N.frag.level];\n b._evt.emit(u.a.DOWNLOAD, ji(Yt.ABORT, N, j, se.qualityType, b._ctx.stat.isPreload, se.codec));\n }, this._type = s, this._evt = a, this._ctx = n, this._levels = s === P.e.MAIN ? n.lctx.levels : n.lctx.audioTracks, n.lctx.setLevelIdx(f, this._type), n.lctx.setNextIdx(f, this._type), this._callback = { onProgress: this._onProgress, onEnd: this._onEnd, onError: this._onError, onAbort: this._onAbort }, this._loadConfig = { connectionTimeout: n.config.connectionTimeout, transmissionTimeout: n.config.transmissionTimeout, maxRetry: n.config.maxRetry, retryDelay: n.config.retryDelay, breakpointContinuation: n.config.breakpointContinuation }, this._keyLoadConfig = { connectionTimeout: n.config.keyConnectionTimeout, transmissionTimeout: n.config.keyTransmissionTimeout, maxRetry: n.config.keyLoadingMaxRetry, retryDelay: n.config.keyLoadingRetryDelay }, this._evt.on(u.a.PARSED_DATA, this._fragParsed), this._mux = new Vn(a, n, s), n.stat.isPreload || this._mux.init();\n }\n var A = L.prototype;\n return A.levelUpdated = function() {\n if (this.level && this.level.hasFrag) {\n var s = this.level.startSN;\n Object(te.a)(this._startSN) && this._startSN !== s && (this._pos = Math.max(0, this._pos - (s - this._startSN))), this._startSN = s, this._mux.totalDuration = this.level.totalduration, this._tryLoadNext();\n }\n }, A.seek = function(s, a) {\n a === void 0 && (a = !1), this._remuxContiguous = !1;\n var n = this.level;\n if (this._loadEnabled = !0, this._fragAlign = void 0, this._resetIO(), this._parallelStartCache = void 0, n && n.hasFrag) {\n var f = s === 0 ? 0 : ui(s, n.fragments);\n f >= 0 ? this._pos = f : (this._pos = 0, n.hasFrag && s >= n.fragments[0].start && (this._pos = n.fragments.length - 1)), this._reset(!0), a && (s = n.fragments[this._pos].start, w.b.i(\"stream-media\", \"to keyframe: \" + s), this._evt.emit(u.a.VIDEO_SEEK, { sec: s })), this._tryLoadNext();\n }\n return s;\n }, A.destroy = function() {\n this._resetIO(), this._mux && this._mux.destroy(), this._keyLoader && (this._keyLoader.destroy(), this._keyLoader = void 0), this._fragAlign = void 0;\n }, A.nextBackup = function(s) {\n if (this._levels)\n for (var a = 0; a < this._levels.length; a++) {\n var n = this._levels[a];\n if (n.urlId >= n.url.length - 1)\n return !1;\n n.urlId++, delete n.m3u8Slice, n.fragments = [];\n }\n return this._resetIO(), this._newSource = !0, this._failPos >= 0 && (this._pos = this._failPos), this._reset(!0), !0;\n }, A.trackInfo = function(s, a) {\n this._mux.trackInfo(s, a);\n }, A.setDownloadEnabled = function(s) {\n !this._loadEnabled && s ? (this._loadEnabled = s, this._tryLoadNext()) : this._loadEnabled = s;\n }, A.setIndex = function(s) {\n this._resetIO(), this._newSource = !0, this._ctx.lctx.setLevelIdx(s, this._type), this._ctx.lctx.setNextIdx(s, this._type), this._fragAlign = void 0;\n }, A.setNext = function(s) {\n this._newSource = !0, this._ctx.lctx.setNextIdx(s, this._type), this._remuxContiguous = !0;\n }, A._fragAlignStart = function(s) {\n return s.maxStartPTS || s.startPTS || s.start;\n }, A._getFragByPos = function(s) {\n if (this.level && this.level.hasFrag)\n return this.level.fragments[s];\n }, A._getFragStartByPos = function(s) {\n var a = this._getFragByPos(s);\n return a ? this._fragAlignStart(a) : 0;\n }, A._reset = function(s) {\n this._demuxing = !1, this._mux.reset(s);\n }, A._resetIO = function() {\n this._parallelStartCache = void 0, this._destroyLoader(), this._destroyInitLoader();\n }, A._destroyLoader = function() {\n this._loader && (this._loader.destroy(), this._loader = void 0);\n }, A._destroyInitLoader = function() {\n this._initFragLoader && (this._initFragLoader.destroy(), this._initFragLoader = void 0);\n }, A._loadKey = function(s) {\n var a = this;\n this._keyLoader || (this._keyLoader = new Ni({ credentials: this._ctx.config.credentials, headers: this._ctx.config.headers }, this._keyLoadConfig), this._keyLoader.on(u.a.HLS_KEY_LOADED, this._tryStartDemux), this._keyLoader.on(u.a.ERROR, function(n) {\n a._evt.emit(u.a.ERROR, n);\n })), this._keyLoader.load(s);\n }, A._isLevelEnd = function() {\n var s = this.level;\n return !!(s && s.hasFrag && !s.live && this._pos >= s.fragments.length);\n }, A._nextFragment = function() {\n var s = this.level, a = null;\n return s && this._pos < s.fragments.length && (a = s.fragments[this._pos]), a && (a.encrypted && a.decryptdata && this._loadKey(a), typeof a.sn == \"number\" && this._pos++), a;\n }, A._loadFrag = function(s) {\n if (s) {\n var a, n, f = { url: s.url, responseType: \"arraybuffer\", progress: s.sn !== yr && this._type === P.e.MAIN && this._ctx.streamingMux, frag: s, type: \"frag\", credentials: this._ctx.config.credentials, headers: this._ctx.config.headers }, b = s.byteRangeStartOffset, N = s.byteRangeEndOffset;\n if (Object(te.a)(b) && Object(te.a)(N) && (f.rangeStart = b, f.rangeEnd = N, f.rangeType = this._ctx.config.httpRangeType), (a = this._ctx.config.preprocessUrl) != null && a.stream && (w.b.d(\"stream-media\", \"preprocessUrl stream\"), f.url = (n = this._ctx.config.preprocessUrl) == null ? void 0 : n.stream(f.url)), s.sn === yr)\n f.progress = !1, this._destroyInitLoader(), this._initFragLoader = new le(), this._initFragLoader.load(f, this._callback, this._loadConfig);\n else if (this._destroyLoader(), this._loader = new le(), this._loader.load(f, this._callback, this._loadConfig), this._demuxing = !0, this._type === P.e.MAIN && this._newSource) {\n var j = s.start;\n this._evt.emit(u.a.NEW_SOURCE, { sync: j }), this._newSource = !1;\n }\n }\n }, A._preprocessed = function(s, a, n, f) {\n if (this._isReady(s.frag, this._levels[s.frag.level])) {\n if (this._parallelStartCache) {\n this._updateParallelStartCache(s, a, n, f);\n var b = this._parallelStartCache.data.get(this._parallelStartCache.data.unreadLen);\n this._parallelStartCache = void 0, b && (a = b);\n }\n this._startDemux(s, a, n, f);\n } else\n this._parallelStartCache ? this._updateParallelStartCache(s, a, n, f) : (this._parallelStartCache = { context: s, stats: n, data: new li.a(), progress: f }, a && this._parallelStartCache.data.put(new Uint8Array(a)));\n }, A._updateParallelStartCache = function(s, a, n, f) {\n this._parallelStartCache && (this._parallelStartCache.context = s, this._parallelStartCache.stats = n, this._parallelStartCache.progress = f, a && this._parallelStartCache.data.put(new Uint8Array(a)));\n }, A._isReady = function(s, a) {\n return !(s.encrypted && s.decryptdata && !s.decryptdata.key || a != null && a.initSegment && !a.initSegment.data);\n }, A._startDemux = function(s, a, n, f) {\n var b, N = this._levels[s.frag.level], j = { context: s, data: a, initData: N == null || (b = N.initSegment) == null ? void 0 : b.data, stats: n, audioCodec: N == null ? void 0 : N.audioCodec, videoCodec: N == null ? void 0 : N.videoCodec, remuxContiguous: this._remuxContiguous || (N == null ? void 0 : N.live), progress: f };\n f ? this._mux.onFragProgress(j) : this._ctx.stat.isPreload ? this._evt.emit(u.a.PRELOAD_COMPLETE) : this._mux.onFragLoaded(j);\n }, v()(L, [{ key: \"levels\", get: function() {\n return this._levels;\n } }, { key: \"level\", get: function() {\n return this._ctx.lctx.getLevel(this._type);\n } }, { key: \"index\", get: function() {\n return this._ctx.lctx.getLevelIdx(this._type);\n } }, { key: \"manualNext\", set: function(s) {\n if (this._type === P.e.MAIN) {\n var a = this.level;\n if (a != null && a.hasFrag) {\n var n = ui(this._ctx.currentTime + (a.targetduration || 5) / 2, a.fragments) + 1;\n if (n > 0 && n < a.fragments.length) {\n n < this._pos && (this._resetIO(), this._reset(!1), this._pos = n, this._remuxContiguous = !1), this._newSource = !0, this._ctx.lctx.setNextIdx(s, this._type);\n var f = a.fragments[this._pos], b = this._fragAlignStart(f);\n return this._evt.emit(u.a.LEVEL_SWITCHING, { id: 0, time: b, level: s, smooth: !0, auto: !1 }), (this._fragAlign && this._fragAlign.frag.sn !== f.sn || !this._fragAlign) && (this._fragAlign = { level: this._ctx.lctx.getLevelIdx(this._type), pos: this._pos, frag: f, alignPTS: b }), this._evt.emit(u.a.BUFFER_CLEANING, { startSec: this._fragAlign.alignPTS || b }), void this._tryLoadNext();\n }\n }\n this._evt.emit(u.a.LEVEL_SWITCH_FAILED);\n }\n } }, { key: \"type\", get: function() {\n return this._type;\n } }, { key: \"lastLoadedFrag\", get: function() {\n var s = this._pos;\n return this._loader && s--, this._getFragByPos(s);\n } }]), L;\n }(), ts = function() {\n function L(s, a) {\n var n = this;\n this._evt = void 0, this._ctx = void 0, this._loader = void 0, this._loadEnabled = !0, this._pos = 0, this._startSN = 0, this._callback = void 0, this._loadConfig = void 0, this._fullyLoaded = [], this._tryLoadNext = function() {\n if (!(n.index < 0)) {\n var f = n.level;\n if (n._loadEnabled && f && !n._loader) {\n var b = n._nextFragment();\n b && n._loadFrag(b);\n }\n }\n }, this._onEnd = function(f, b, N) {\n n._destroyLoader();\n var j = n._ctx.lctx.subtitleTracks[f.frag.level], se = ji(Yt.SUCCESS, f, N, j.qualityType);\n n._evt.emit(u.a.DOWNLOAD, se), b && typeof b != \"string\" && (j && j.hasFrag && j.fragments.length === 1 && !j.live && n._fullyLoaded.indexOf(f.frag.level) === -1 && n._fullyLoaded.push(f.frag.level), n._evt.emit(u.a.SUBTITLE_LOADED, { data: b, cc: f.frag.cc, start: f.frag.start })), n._tryLoadNext();\n }, this._onError = function(f, b) {\n var N;\n n._evt.emit(u.a.DOWNLOAD, ji(Yt.FAIL, f, b, (N = n._ctx.lctx.subtitleTracks[f.frag.level]) == null ? void 0 : N.qualityType)), n._destroyLoader(), n._tryLoadNext();\n }, this._evt = s, this._ctx = a, a.lctx.subtitleIdx = a.lctx.subtitleTracks.reduce(function(f, b, N) {\n return b.default ? N : f;\n }, -1), this._callback = { onEnd: this._onEnd, onError: this._onError }, this._loadConfig = { connectionTimeout: a.config.connectionTimeout, transmissionTimeout: a.config.transmissionTimeout, maxRetry: a.config.maxRetry, retryDelay: a.config.retryDelay };\n }\n var A = L.prototype;\n return A.levelUpdated = function() {\n if (this.level && this.level.hasFrag) {\n var s = this.level.startSN;\n Object(te.a)(this._startSN) && this._startSN !== s && (this._pos = Math.max(0, this._pos - (s - this._startSN))), this._startSN = s, this._tryLoadNext();\n }\n }, A.seek = function(s) {\n if (this.index < 0)\n return 0;\n var a = this.level;\n if (this._fullyLoaded.indexOf(this.index) !== -1)\n return s;\n if (this._loadEnabled = !0, a && a.hasFrag) {\n var n = s === 0 ? 0 : ui(s, a.fragments), f = a.fragments[n];\n this._loader && f && this._loader.context.frag.sn === f.sn && this._loader.context.frag.level === f.level || (this._pos = n >= 0 ? n : a.fragments.length - 1, this._destroyLoader(), this._tryLoadNext());\n }\n return s;\n }, A.setDownloadEnabled = function(s) {\n !this._loadEnabled && s ? (this._loadEnabled = s, this._tryLoadNext()) : this._loadEnabled = s;\n }, A.setIndex = function(s) {\n this._destroyLoader(), this._ctx.lctx.subtitleIdx = s;\n }, A._nextFragment = function() {\n var s = this.level;\n if (s && s.hasFrag && this._pos < s.fragments.length) {\n var a = s.fragments[this._pos];\n if (a && typeof a.sn == \"number\")\n return this._pos++, a;\n }\n }, A._destroyLoader = function() {\n this._loader && (this._loader.destroy(), this._loader = void 0);\n }, A._loadFrag = function(s) {\n if (s) {\n var a = { url: s.url, responseType: \"arraybuffer\", frag: s, type: \"frag\", credentials: this._ctx.config.credentials }, n = s.byteRangeStartOffset, f = s.byteRangeEndOffset;\n Object(te.a)(n) && Object(te.a)(f) && (a.rangeStart = n, a.rangeEnd = f), this._destroyLoader(), this._loader = new le(), this._loader.load(a, this._callback, this._loadConfig);\n }\n }, v()(L, [{ key: \"levels\", get: function() {\n return this._ctx.lctx.subtitleTracks;\n } }, { key: \"level\", get: function() {\n return this._ctx.lctx.subtitle;\n } }, { key: \"index\", get: function() {\n return this._ctx.lctx.subtitleIdx;\n } }, { key: \"lastLoadedFrag\", get: function() {\n var s = this._pos;\n if (this._loader && s--, this.level && this.level.hasFrag)\n return this.level.fragments[s];\n } }]), L;\n }();\n function Fn(L, A, s) {\n A === void 0 && (A = 3), L = Math.round(L), !s || s.startDelay === L || L <= 0 || (s.startDelay = L, s.rule = [{ rate: 1.5, lower: L + 2 * A + 1, upper: Number.MAX_SAFE_INTEGER }, { rate: 1.25, lower: L + A + 1, upper: L + 2 * A }, { rate: 1.1, lower: L + 1, upper: L + A }, { rate: 1, lower: 0, upper: L }], w.b.i(\"playback-rate\", \"update by delay: \" + L + \".\", s));\n }\n var is = function() {\n function L(s, a) {\n var n = this;\n this._evt = void 0, this._abr = void 0, this._ctx = void 0, this._main = void 0, this._audio = void 0, this._timer = void 0, this._seekKeyframe = void 0, this._manifestReady = !1, this._mediaProtocol = void 0, this._subtitle = void 0, this._subtitleStarted = !1, this._onManifestLoaded = function() {\n w.b.i(\"hls\", \"_onManifestLoaded\");\n var f = n._ctx, b = f.lctx;\n if (f.stat.drm && f.stat.isPreload)\n n._evt.emit(u.a.ERROR, { type: d.b.OTHER_ERROR, details: d.a.UNSUPPORTED, fatal: !0, reason: \"drm no supported preload\" });\n else if (b.audioTracks && b.audioTracks.length && (n._audio = new wa(P.e.AUDIO, n._evt, f, b.audioIdx)), b.subtitleTracks && b.subtitleTracks.length && (n._subtitle || (n._subtitle = new ts(n._evt, f)), n._startSubtitle()), b.levels.length > 0) {\n var N = 0;\n w.b.i(\"hls\", \"manifest\", b.abr, b.default), N = n._abr && b.abr ? n._abr.init() || 0 : b.default, n._main = new wa(P.e.MAIN, n._evt, f, N), typeof f.stat.hasVideo == \"boolean\" && typeof f.stat.hasAudio == \"boolean\" && n._main.trackInfo(f.stat.hasVideo, f.stat.hasAudio), n._evt.emit(u.a.MANIFEST_PARSED), n._abr && n._ctx.lctx.abr && n._main.setIndex(n._abr.abrInitLevel), n._manifestReady = !0;\n var j, se = f.lctx.current;\n if (!se)\n return;\n if (se.hasFrag) {\n if (f.stat.isLive = se.live, n._updateLiveShiftEnabled(se), n._updateLiveDelay(se), n._updateStartSecByLiveDelay(se), n._levelUpdated(P.e.MAIN), se.live) {\n var ue = c(null, se, 0);\n n._timer = setTimeout(function(Te) {\n return n._loadLevel(Te, P.e.MAIN);\n }, ue, n._main.index);\n }\n } else\n n._loadLevel(f.lctx.currentIdx, P.e.MAIN, !0);\n n._audio && f.lctx.audioTracks.length && ((j = f.lctx.audio) != null && j.hasFrag ? (n._levelUpdated(P.e.AUDIO), se.live && n._loadLevel(f.lctx.audioIdx, P.e.AUDIO, !0)) : n._loadLevel(f.lctx.audioIdx, P.e.AUDIO, !0));\n } else\n b.levels.length ? n._evt.emit(u.a.ERROR, { type: d.b.MUX_ERROR, details: d.a.MANIFEST_PARSING_ERROR, fatal: !0, reason: \"manifest parsing error\" }) : n._evt.emit(u.a.ERROR, { type: d.b.MUX_ERROR, details: d.a.UNSUPPORTED, fatal: !0, reason: \"no supported codec\" });\n }, this._onAudioLevelLoaded = function(f) {\n n._onLevelLoaded(f, P.e.AUDIO);\n }, this._onSubtitleLevelLoaded = function(f) {\n n._onLevelLoaded(f, P.e.SUBTITLE);\n }, this._onLevelLoaded = function(f, b) {\n b === void 0 && (b = P.e.MAIN);\n var N = f.level, j = n._ctx, se = n._getTrack(b);\n if (se && se.level && N === se.index) {\n var ue = se.level, Te = f.details;\n if ((b === P.e.MAIN && j.stat.isLive === void 0 || j.stat.isLive && !Te.live) && (j.stat.isLive = Te.live), b === P.e.MAIN && ue.fragments.length === 0 && n._updateLiveShiftEnabled(Te), j.stat.isLive) {\n var De = c(ue, f.details, f.stats ? f.stats.trequest : 0);\n n._updateLiveDelay(Te), ue.hasFrag ? Te.endSN !== ue.endSN && (B(ue, Te, j.stat.liveShiftEnabled), n._levelUpdated(b)) : (B(ue, Te, j.stat.liveShiftEnabled), n._updateStartSecByLiveDelay(ue), n._levelUpdated(b)), w.b.v(\"live playlist, reload in \" + Math.round(De) + \" ms\"), n._timer = setTimeout(function(Ne) {\n return n._loadLevel(Ne, b);\n }, De, se.index);\n } else\n n._clearLevelTimer(), B(ue, Te, j.stat.liveShiftEnabled), n._levelUpdated(b);\n }\n }, this._onLevelUpdated = function() {\n n._levelUpdated(P.e.MAIN);\n }, this._onAudioTrackUpdated = function() {\n n._levelUpdated(P.e.AUDIO);\n }, this._onSubtitleTrackUpdated = function() {\n n._levelUpdated(P.e.SUBTITLE);\n }, this._levelUpdated = function(f) {\n f === void 0 && (f = P.e.MAIN);\n var b = n._getTrack(f);\n if (b && b.level && b.level.hasFrag) {\n b.setDownloadEnabled(!0);\n var N = [], j = [];\n b.level.live || b.level.fragments.forEach(function(ue) {\n N.push(ue.start), typeof ue.programDateTime == \"number\" && j.push(ue.programDateTime);\n });\n var se = b.level.timeInfo;\n f === P.e.MAIN ? n._evt.emit(u.a.LEVEL_UPDATED, se) : f === P.e.AUDIO && n._evt.emit(u.a.AUDIO_TRACK_UPDATED, se), b.levelUpdated(), n._ctx.stat.startFromSec >= 0 && n.seek(n._ctx.stat.startFromSec, n._seekKeyframe), f !== P.e.SUBTITLE || b.level.live || b.seek(n._ctx.currentTime);\n }\n }, this._abrNext = function(f) {\n if (n._abr && n._ctx.lctx.abr && n._main) {\n var b = n._abr.nextBitrateIndex();\n b >= 0 && b !== n._ctx.lctx.currentIdx && (n._evt.emit(u.a.LEVEL_SWITCHING, { id: 0, time: f.startSec, level: b, smooth: !0, auto: !0 }), n.setNextLevel(b));\n }\n }, this._syncStream = function(f, b) {\n var N = f.lastLoadedFrag, j = b.lastLoadedFrag;\n N ? j && (j.start + j.duration > N.start + N.duration - 0.5 ? b.setDownloadEnabled(!1) : b.setDownloadEnabled(!0)) : b.setDownloadEnabled(!0);\n }, this._getTrack = function(f) {\n return f === void 0 && (f = P.e.MAIN), f === P.e.MAIN ? n._main : f === P.e.AUDIO ? n._audio : n._subtitle;\n }, this._getTrackLevels = function(f) {\n return f === void 0 && (f = P.e.MAIN), f === P.e.MAIN ? n._ctx.lctx.levels : f === P.e.AUDIO ? n._ctx.lctx.audioTracks : n._ctx.lctx.subtitleTracks;\n }, this._evt = s, this._ctx = a, this._seekKeyframe = a.config.startFromKeyframe;\n }\n var A = L.prototype;\n return A.init = function() {\n var s = this;\n this._evt.on(u.a.DOWNLOAD, function(n) {\n s._abr && s._abr.onDownload(n), s._main && (s._audio && s._syncStream(s._main, s._audio), s._subtitle && s._syncStream(s._main, s._subtitle));\n }), this._evt.on(u.a.BUFFER_CLEANING, function(n) {\n s._audio && s._audio.seek(n.startSec);\n }), this._initMultirate();\n var a = jt[this._ctx.stat.box || P.g.hls];\n a ? (this._mediaProtocol = new a(this._ctx), this._mediaProtocol.on(u.a.MANIFEST_PARSED, this._onManifestLoaded), this._mediaProtocol.on(u.a.LEVEL_LOADED, this._onLevelLoaded), this._mediaProtocol.on(u.a.LEVEL_UPDATED, this._onLevelUpdated), this._mediaProtocol.on(u.a.AUDIO_TRACK_LOADED, this._onAudioLevelLoaded), this._mediaProtocol.on(u.a.AUDIO_TRACK_UPDATED, this._onAudioTrackUpdated), this._mediaProtocol.on(u.a.SUBTITLE_TRACK_LOADED, this._onSubtitleLevelLoaded), this._mediaProtocol.on(u.a.SUBTITLE_TRACK_UPDATED, this._onSubtitleTrackUpdated), this._mediaProtocol.on(u.a.DOWNLOAD, function(n) {\n s._evt.emit(u.a.DOWNLOAD, n);\n }), this._mediaProtocol.on(u.a.ERROR, function(n) {\n var f = s._ctx.lctx.current;\n !f || s._ctx.stat.isLive || f.hasFrag && f.live || (n.fatal = !0), s._evt.emit(u.a.ERROR, n);\n })) : this._evt.emit(u.a.ERROR, { type: d.b.OTHER_ERROR, details: d.a.UNSUPPORTED, fatal: !0, reason: \"unsupported box: \" + this._ctx.stat.box });\n }, A.destroy = function() {\n this._mediaProtocol && (this._mediaProtocol.destroy(), this._mediaProtocol = void 0), this._clearLevelTimer(), this._main && (this._main.destroy(), this._main = void 0), this._audio && (this._audio.destroy(), this._audio = void 0), this._abr && (this._abr.removeAllListeners(), this._abr.destory(), this._abr = void 0);\n }, A.loadSource = function() {\n this._mediaProtocol && this._mediaProtocol.loadManifest(this._ctx.src);\n }, A.setDownloadEnabled = function(s) {\n s === void 0 && (s = !0), this._ctx.stat.isNetworkInUse = s, this._main && this._main.setDownloadEnabled(s), this._abr && this._abr.setDownloadEnabled(s);\n }, A.isSeekable = function() {\n return !this._ctx.stat.isLive || !!this._ctx.stat.liveShiftEnabled;\n }, A.seek = function(s, a, n) {\n if (a === void 0 && (a = !1), n === void 0 && (n = !1), this._abr && this._abr.onSeek({ isInBuffer: n }), !n && this._main) {\n if (this._main.level && this._main.level.hasFrag) {\n if (!this._audio)\n return this._main.seek(s, a), this._subtitle && this._subtitle.seek(s), void (this._ctx.stat.startFromSec = -1);\n if (this._audio.level && this._audio.level.hasFrag && !this._audio.level.live) {\n var f = this._main.seek(s, a);\n return this._audio.seek(f), this._subtitle && this._subtitle.seek(f), void (this._ctx.stat.startFromSec = -1);\n }\n }\n this._ctx.stat.startFromSec = s, this._seekKeyframe = a;\n }\n }, A.nextBackup = function() {\n if (this._main) {\n var s = this._main.nextBackup(this._ctx.currentTime);\n if (this._audio && s && (s = this._main.nextBackup(this._ctx.currentTime)), s)\n return this._main.setDownloadEnabled(!1), this._seekKeyframe = !1, this._loadLevel(this._ctx.lctx.currentIdx, P.e.MAIN), this._audio && (this._audio.setDownloadEnabled(!1), this._loadLevel(this._ctx.lctx.audioIdx, P.e.AUDIO)), !0;\n }\n return !1;\n }, A.onAbrLevelsUpdated = function() {\n this._abr && this._abr.onAbrLevelsUpdated();\n }, A.setAudioTrack = function(s) {\n var a;\n this._audio && (s = Math.min(s, this._audio.levels.length - 1), this._audio.setIndex(s), this._manifestReady && ((a = this._ctx.video) != null && a.ended || this.seek(this._ctx.currentTime), this._checkNextLevel(s, P.e.AUDIO), this._evt.emit(u.a.AUDIO_TRACK_SWITCHING, { id: 0, time: this._ctx.currentTime, level: s, smooth: !1, auto: !1 })));\n }, A.setSubtitleTrack = function(s) {\n this._subtitle && (s = Math.min(s, this._subtitle.levels.length - 1), this._subtitle.setIndex(s), this._manifestReady && s >= 0 && (this._checkNextLevel(s, P.e.SUBTITLE) || this._subtitle.seek(this._ctx.currentTime)));\n }, A._loadLevel = function(s, a, n) {\n var f = this._getTrackLevels(a);\n if (f.length) {\n var b = f[s];\n b && typeof b == \"object\" && b.url.length > 0 && this._mediaProtocol && this._mediaProtocol.loadLevel(b, a);\n }\n }, A._clearLevelTimer = function() {\n this._timer !== null && (clearTimeout(this._timer), this._timer = null);\n }, A._initMultirate = function() {\n var s = this;\n this._ctx.lctx.abr && !this._abr && (this._abr = new es(this._ctx), this._evt.on(u.a.ABR_NEXT, this._abrNext), this._evt.on(u.a.NEW_SOURCE, function(a) {\n var n;\n (n = s._abr) == null || n.onNewSource();\n }));\n }, A.setCurrentLevel = function(s) {\n var a;\n s >= 0 ? (this._abrActive(!1), this._main && (s = Math.min(s, this._main.levels.length - 1), this._main.setIndex(s), this._manifestReady && ((a = this._ctx.video) != null && a.ended || this.seek(this._ctx.currentTime), this._checkNextLevel(s), this._evt.emit(u.a.LEVEL_SWITCHING, { id: 0, time: this._ctx.currentTime, level: s, smooth: !1, auto: !1 })))) : this._abrActive(!0);\n }, A.setManualNextLevel = function(s) {\n var a;\n this._abrActive(s < 0), this._manifestReady ? (a = this._main) != null && a.level && this._main.level.hasFrag && s >= 0 && (s = Math.min(s, this._main.levels.length - 1), this._main.manualNext = s, this._checkNextLevel(s) || this.setDownloadEnabled(!0)) : this.setCurrentLevel(s);\n }, A.setNextLevel = function(s) {\n this._main && this._ctx.lctx.nextIdx !== s && (this._main.setNext(s), this._checkNextLevel(s));\n }, A._checkNextLevel = function(s, a) {\n a === void 0 && (a = P.e.MAIN);\n var n = this._getTrack(a);\n return !(!n || !n.levels || n.levels[s].hasFrag && !n.levels[s].live) && (n.setDownloadEnabled(!1), this._loadLevel(s, a), !0);\n }, A._abrActive = function(s) {\n this._abr && (s && !this._ctx.lctx.abr && this._ctx.isAbrAvailable && this._evt.emit(u.a.LEVEL_SWITCHING, { id: 0, time: this._ctx.currentTime, level: -1, smooth: !0, auto: !1 }), this._ctx.lctx.abr = s && this._ctx.isAbrAvailable);\n }, A._startSubtitle = function() {\n if (!this._subtitleStarted && this._subtitle) {\n var s = this._ctx.lctx.subtitle;\n s && (s.hasFrag ? this._levelUpdated(P.e.SUBTITLE) : this._loadLevel(this._ctx.lctx.subtitleIdx, P.e.SUBTITLE, !0)), this._subtitleStarted = !0;\n }\n }, A._updateLiveDelay = function(s) {\n if (this._ctx.stat.isLive) {\n var a = this._ctx.config.liveDelayFragNum;\n if (a && a > 0) {\n var n = s.averagetargetduration ? s.averagetargetduration : s.targetduration;\n this._ctx.stat.multipartLiveDelay = -a * n * g.e, this._ctx.config.autoPlaybackRateConf || Fn(n * a, n, this._ctx.stat.autoPlaybackRateConf);\n } else\n this._ctx.stat.liveShift = !0;\n }\n }, A._updateStartSecByLiveDelay = function(s) {\n var a = this._ctx;\n a.stat.isLive && (a.stat.multipartLiveDelay && a.stat.startFromSec === -1 && s.totalduration ? (a.stat.startFromSec = a.liveStartLocalTime, w.b.i(\"hls\", \"live delay: \" + a.stat.multipartLiveDelay / g.e + \" start src: \" + a.stat.startFromSec), a.stat.liveShiftEnabled && (a.stat.liveShift = !1)) : a.stat.startFromSec >= 0 && a.stat.liveShiftEnabled && (a.stat.liveShift = !0));\n }, A._updateLiveShiftEnabled = function(s) {\n var a = this._ctx, n = s.fragments.length && s.startSN === 0;\n a.stat.liveShiftEnabled = !!(n && s.live && a.config.liveShiftEnabled), s.live && !a.stat.liveShiftEnabled && (a.stat.startFromSec = -1);\n }, v()(L, [{ key: \"mediaTrackNum\", get: function() {\n return this._audio ? 2 : 1;\n } }, { key: \"audioTracks\", get: function() {\n return this._audio ? this._audio.levels : [];\n } }]), L;\n }();\n function Aa(L, A) {\n if (A === void 0)\n return L;\n var s = new Ae.a(L, !0);\n return A && (s.query.kabr_spts = \"\" + A), s.toString();\n }\n var Mi, Dl = function() {\n function L() {\n var s = this;\n this._context = void 0, this._result = void 0, this._callback = void 0, this._loader = void 0, this._loaderConf = void 0, this._loaderCallbacks = void 0, this._timer = void 0, this._startTime = 0, this._testEnd = function() {\n s._stopTimer(), s._loader && s._loader.destroy(), s._context && s._result && s._callback && (s._result.firstPackageDuration = Math.round(s._result.firstPackageDuration), s._result.duration = Math.round(performance.now() - s._startTime), s._callback.onEnd(s._context, s._result));\n }, this._onProgress = function(a, n, f) {\n s._result && (s._result.firstPackageDuration = f.tfirst ? f.tfirst - f.trequest : 0, s._result.loaded = f.loaded);\n }, this._onLoaderError = function(a, n) {\n s._result && (s._result.succeeded = !1), s._testEnd();\n }, this._onLoaderEnd = function() {\n s._testEnd();\n }, this._loaderConf = { connectionTimeout: 0, transmissionTimeout: 0, maxRetry: 0, retryDelay: 0, useFetch: !0 }, this._loaderCallbacks = { onProgress: this._onProgress, onError: this._onLoaderError, onEnd: this._onLoaderEnd };\n }\n var A = L.prototype;\n return A.start = function(s, a) {\n this._context = s, this._callback = a, this._result = { loaded: 0, duration: 0, firstPackageDuration: 0, succeeded: !0 }, this._startTime = performance.now(), this._loader && this._loader.destroy();\n var n = Math.min(1e4, s.timeout);\n this._loaderConf.connectionTimeout = n;\n var f = { url: s.url, progress: !0, responseType: \"arraybuffer\" };\n this._loader = new le(), this._startTimer(n), this._loader.load(f, this._loaderCallbacks, this._loaderConf);\n }, A.cancel = function() {\n this._stopTimer(), this._loader && this._loader.destroy();\n }, A.destroy = function() {\n this.cancel();\n }, A._startTimer = function(s) {\n var a = this;\n this._timer = setTimeout(function() {\n return a._testEnd();\n }, s);\n }, A._stopTimer = function() {\n clearTimeout(this._timer);\n }, L;\n }(), ao = { stableBufferDiffThresholdSecond: 0.15, stableBufferIntervalMs: 2e3, speedTestTimeoutMs: 500, generateSpeedGapMs: 3e3, bufferCheckIntervalMs: 500, smoothedSpeedUtilizationRatio: 0.8, smallSpeedToBitrateRatio: 0.7, enoughSpeedToBitrateRatio: 0.9, bufferLowerLimitSecond: 0.8, recentBufferedSize: 16, smoothedSpeedRatio: 0.9, isSpeedFullyUsed: !1 }, rs = function() {\n function L(s) {\n this._ctx = void 0, this._conf = void 0, this._pastBuffer = void 0, this._levels = void 0, this._current = 0, this._next = 0, this._stableBufferStartTime = performance.now(), this._speedTester = new Dl(), this._generatedSpeed = 0, this._lastCheckBuffer = 0, this._lastSpeed = 0, this._timer = void 0, this._ctx = s;\n }\n var A = L.prototype;\n return A.init = function(s) {\n var a = this;\n this._conf = o()({}, ao), o()(this._conf, s), w.b.i(\"algorithm-simple\", \"init\", s, this._conf), this._pastBuffer = [0], this._timer = setInterval(function() {\n a._checkBuffer();\n }, this._conf.bufferCheckIntervalMs);\n }, A.onManifestUpdated = function() {\n this._levels = this._ctx.lctx.abrLevels.slice(0), this._next = this._ctx.lctx.abrDefault;\n }, A.onKeyPoint = function(s) {\n var a = s.byteLength / Math.max(s.spendTime, 0.05) * 8 / 1024;\n w.b.i(\"algorithm-simple\", \"buffered: \" + s.byteLength.toFixed(2) + \", size: \" + s.byteLength + \", time: \" + s.spendTime.toFixed(2)), this._next = this._nextRateIndex(a, s.buffered);\n }, A.onLevelLoad = function(s) {\n this._current = Math.max(0, s);\n }, A.onSeek = function(s) {\n }, A.onDownloadEnabled = function(s) {\n }, A.destroy = function() {\n this._speedTester.destroy(), clearInterval(this._timer);\n }, A._updateStableBuffer = function(s) {\n var a = s - this._lastCheckBuffer, n = a / s, f = performance.now();\n return (a < -this._conf.stableBufferDiffThresholdSecond || n < -0.2) && (w.b.v(\"algorithm-simple\", \"bufferDiffDown: \" + a.toFixed(2) + \"s, diffRatio: \" + n.toFixed(2)), this._stableBufferStartTime = Math.max(f, this._stableBufferStartTime)), a > this._conf.stableBufferDiffThresholdSecond && f - this._stableBufferStartTime + this._conf.bufferCheckIntervalMs > this._conf.stableBufferIntervalMs && (this._stableBufferStartTime = Math.max(f - 2 * this._conf.bufferCheckIntervalMs, this._stableBufferStartTime + 2 * this._conf.bufferCheckIntervalMs), w.b.v(\"algorithm-simple\", \"bufferDiffUp: \" + a.toFixed(2) + \"s\")), this._lastCheckBuffer = s, f - this._stableBufferStartTime > this._conf.stableBufferIntervalMs;\n }, A._isSpeedFullyUsed = function() {\n return this._conf.isSpeedFullyUsed;\n }, A._checkBuffer = function() {\n var s = this._ctx.bufferedSec, a = this._updateStableBuffer(s);\n this._isSpeedFullyUsed() ? a && this._current + 1 < this._levels.length ? this._generatedSpeed = this._levels[this._current + 1].bitrate : this._generatedSpeed = 0 : a && this._current + 1 < this._levels.length && this._ctx.lctx.abr && this._ctx.config.abrSpeedTest && (this._startTesting(), this._stableBufferStartTime = performance.now() + this._conf.generateSpeedGapMs), this._pastBuffer.push(s), this._pastBuffer.length > this._conf.recentBufferedSize && this._pastBuffer.shift();\n }, A._startTesting = function() {\n var s = this;\n w.b.v(\"algorithm-simple\", \"start speed testing on index: \" + (this._current + 1));\n var a = this._ctx.loadRec.traffic, n = this._levels[this._current + 1].bitrate;\n this._speedTester.start({ url: this._levels[this._current + 1].url[this._levels[this._current + 1].urlId], timeout: this._conf.speedTestTimeoutMs }, { onEnd: function(f, b) {\n var N = s._ctx.loadRec.traffic - a;\n if (b.succeeded && b.duration > 0 && b.firstPackageDuration > 0) {\n var j = 8 * (N + b.loaded) / b.duration;\n w.b.v(\"algorithm-simple\", \"testSpeed: \" + j.toFixed(0)), j >= n && (s._generatedSpeed = n);\n }\n w.b.v(\"algorithm-simple\", \"succeeded: \" + b.succeeded + \", firstPackageDuration: \" + b.firstPackageDuration + \", originalDownloadSize: \" + N + \", downloadSize: \" + b.loaded + \", downloadTime: \" + b.duration);\n } });\n }, A._quantization = function(s) {\n for (var a = 0, n = this._levels.length - 1; n >= 0; n--)\n if (s >= this._levels[n].bitrate) {\n a = n;\n break;\n }\n return a;\n }, A._nextRateIndex = function(s, a) {\n var n = this._nextRateBySpeedAndBuffered(s, a);\n return n != this._current && (this._stableBufferStartTime = performance.now() + this._conf.generateSpeedGapMs), n < this._current ? (this._speedTester.cancel(), this._generatedSpeed = 0, this._lastSpeed = s, this._pastBuffer = [a]) : this._lastSpeed = this._getSmoothedSpeed(s), n;\n }, A._getSmoothedSpeed = function(s) {\n return this._lastSpeed > 0 ? s * (1 - this._conf.smoothedSpeedRatio) + this._lastSpeed * this._conf.smoothedSpeedRatio : s;\n }, A._getPredictedBuffer = function(s) {\n return s + (s - Math.max.apply(Math, this._pastBuffer));\n }, A._getBufferSpeed = function(s) {\n var a = Math.max.apply(Math, this._pastBuffer);\n return (1 + (s - a) / a) * this._levels[this._current].bitrate;\n }, A._isSpeedTooSmall = function(s) {\n return s / this._levels[this._current].bitrate < this._conf.smallSpeedToBitrateRatio;\n }, A._isSpeedEnough = function(s) {\n return s / this._levels[this._current].bitrate > this._conf.enoughSpeedToBitrateRatio;\n }, A._nextRateBySpeedAndBuffered = function(s, a) {\n var n = this._getBufferSpeed(a), f = this._getSmoothedSpeed(s);\n w.b.v(\"algorithm-simple\", \"gopSpeed: \" + s.toFixed(0) + \", smoothedSpeed: \" + f.toFixed(0));\n var b = this._getPredictedBuffer(a);\n w.b.v(\"algorithm-simple\", \"bufferSpeed: \" + n.toFixed(0) + \", predictedBuffered: \" + b.toFixed(1));\n var N = this._current;\n return b < this._conf.bufferLowerLimitSecond || this._isSpeedTooSmall(n) ? N = Math.min(this._current, this._quantization(n)) : this._isSpeedEnough(n) && (this._generatedSpeed > 0 ? (w.b.i(\"algorithm-simple\", \"generatedSpeed used\"), N = this._quantization(this._generatedSpeed), this._generatedSpeed = 0) : N = this._quantization(f * this._conf.smoothedSpeedUtilizationRatio), N = Math.min(this._current + 1, Math.max(N, this._current))), N;\n }, v()(L, [{ key: \"nextLevel\", get: function() {\n return w.b.v(\"algorithm-simple\", \"nextLevel: \" + this._next), this._next;\n } }, { key: \"lowProfile\", get: function() {\n return !1;\n } }]), L;\n }(), Ta = function() {\n function L(s, a) {\n this._evt = void 0, this._ctx = void 0, this._smooth = void 0, this._downloadSize = 0, this._downloadStartTime = 0, this._keyCount = 0, this._index = 0, this._algorithm = void 0, this._evt = s, this._ctx = a, a.lctx.abr = a.isAbrAvailable, this._algorithm = new rs(a);\n }\n var A = L.prototype;\n return A.init = function() {\n return this._downloadSize = 0, this._downloadStartTime = performance.now(), this._keyCount = 0, this._algorithm.init(this._ctx.config.liveAdaptiveConfig), this._algorithm.onManifestUpdated(), this._ctx.lctx.levels.length && (this._ctx.lctx.abr ? this._index = this._ctx.lctx.abrIndexToOrign(this._algorithm.nextLevel) : this._index = this._ctx.lctx.default), this._index;\n }, A.destory = function() {\n this._algorithm && this._algorithm.destroy();\n }, A.onAbrLevelsUpdated = function() {\n this._algorithm.onManifestUpdated(), this._index = this._ctx.lctx.abrIndexToOrign(this._algorithm.nextLevel);\n }, A.onLoaderChunk = function(s) {\n this._downloadSize += s;\n }, A.onLevelLoad = function(s) {\n var a = this._ctx.lctx;\n a.levels.length && s >= 0 && s < a.levels.length && (this._keyCount = 0, this._downloadStartTime = performance.now(), this._downloadSize = 0, this._index = s, this._algorithm.onLevelLoad(a.orignIndexToAbr(s)));\n }, A.onKeyFrame = function(s) {\n var a = this._ctx, n = a.lctx.levels;\n if (this._keyCount++, (a.lctx.abr || typeof this._smooth == \"number\") && this._keyCount > 1 && n) {\n var f = this._index, b = !1, N = performance.now();\n if (this._algorithm.onKeyPoint({ buffered: a.bufferedSec, byteLength: this._downloadSize, spendTime: (N - this._downloadStartTime) / 1e3 }), this._downloadSize = 0, this._downloadStartTime = N, typeof this._smooth == \"number\")\n f = this._smooth, this._smooth = void 0;\n else {\n if (!a.lctx.abr || !this._algorithm)\n return;\n f = a.lctx.abrIndexToOrign(this._algorithm.nextLevel), b = !0;\n }\n if (f !== this._index)\n return { url: this.getRequestUrl(f, s), level: f, auto: b };\n }\n }, A.getRequestUrl = function(s, a) {\n var n = this._ctx.src, f = this._ctx.lctx.levels[s];\n return f && (n = f.currentUrl), this._ctx.stat.box === P.g.flv ? Aa(n, a || this._ctx.config.defaultSpts) : n;\n }, v()(L, [{ key: \"nextLevel\", get: function() {\n return typeof this._smooth == \"number\" ? this._smooth : this._index;\n }, set: function(s) {\n var a = this._ctx.lctx;\n w.b.i(\"single-abr\", \"next level: \" + s), s >= 0 ? (s = Math.min(a.levels.length - 1, s), a.setNextIdx(s), a.abr = !1, this._smooth = s) : s === -1 && (a.abr = this._ctx.isAbrAvailable);\n } }, { key: \"currentLevel\", get: function() {\n return this._index;\n }, set: function(s) {\n var a = this._ctx.lctx;\n w.b.i(\"single-abr\", \"current level: \" + s), s >= 0 ? (s = Math.min(a.levels.length - 1, s), a.setLevelIdx(s), a.abr = !1, this._index = s) : s === -1 && (a.abr = this._ctx.isAbrAvailable);\n } }]), L;\n }(), Ir = i(16);\n (function(L) {\n L[L.tagType = 0] = \"tagType\", L[L.tagSize = 1] = \"tagSize\", L[L.timestamp = 2] = \"timestamp\", L[L.frameType = 3] = \"frameType\", L[L.packetType = 4] = \"packetType\";\n })(Mi || (Mi = {}));\n var Ol, _y = function() {\n function L() {\n this._pos = 0, this._isFlv = void 0, this._header = new Uint8Array(Ir.e), this._headerPos = 0, this._detectType = Mi.tagType, this._tagSize = 0, this._tagSizeLen = 0, this._timestamp = 0, this._timestampLen = 0, this._tagType = 0, this._frameType = 0, this._keyframeList = [], this.reset();\n }\n var A = L.prototype;\n return A.reset = function() {\n w.b.i(\"flv-key-detector\", \"reset\"), this._pos = Ir.e, this._isFlv = void 0, this._header = new Uint8Array(Ir.e), this._headerPos = 0, this._detectType = Mi.tagType, this._tagSize = 0, this._tagSizeLen = 3, this._timestamp = 0, this._timestampLen = 4, this._tagType = 0, this._frameType = 0, this._keyframeList = [];\n }, A.append = function(s) {\n if (this._isFlv === !1)\n return [];\n if (this._isFlv === void 0 && (s.length + this._headerPos >= Ir.e ? (this._header.set(s.subarray(0, Ir.e - this._headerPos), this._headerPos), this._headerPos = Ir.e, this._isFlv = this._header[0] === 70 && this._header[1] === 76 && this._header[2] === 86, w.b.i(\"flv-key-detector\", \"get header: \" + this._isFlv)) : (this._header.set(s, this._headerPos), this._headerPos += s.length)), this._pos > s.byteLength)\n return this._pos -= s.byteLength, [];\n this._keyframeList = [];\n for (var a = this._pos, n = 0; a < s.byteLength; )\n switch (this._detectType) {\n case Mi.tagType:\n this._tagType = s[a], this._tagSize = 0, this._tagSizeLen = 3, n = a, a++, this._detectType = Mi.tagSize;\n break;\n case Mi.tagSize:\n if (this._tagSize = this._tagSize + (s[a] << 8 * (this._tagSizeLen - 1)), this._tagSizeLen--, a++, this._tagSizeLen > 0)\n break;\n this._tagType === Ir.j.VIDEO ? (this._timestamp = 0, this._timestampLen = 4, this._detectType = Mi.timestamp) : (a += 7 + this._tagSize + 4, this._detectType = Mi.tagType);\n break;\n case Mi.timestamp:\n this._timestamp += this._timestampLen === 1 ? s[a] << 24 : s[a] << 8 * (this._timestampLen - 2), this._timestampLen--, a++, this._timestampLen === 0 && (a += 3, this._frameType = 0, this._detectType = Mi.frameType);\n break;\n case Mi.frameType:\n this._frameType = s[a] >> 4, a++, this._detectType = Mi.packetType;\n break;\n case Mi.packetType:\n this._frameType === 1 && s[a] === 1 && this._keyframeList.push({ timestamp: this._timestamp, pos: n }), a += this._tagSize - 1 + 4, this._detectType = Mi.tagType;\n }\n return this._pos = a - s.byteLength, this._keyframeList;\n }, v()(L, [{ key: \"isFlv\", get: function() {\n return this._isFlv;\n } }, { key: \"header\", get: function() {\n return this._isFlv ? this._header : void 0;\n } }]), L;\n }(), dy = i(23), hy = i(31), Jd = i(19), eh = i(29), zr = i(11), fy = i(34), Sa = i(15), py = [\"mono\", \"4:2:0\", \"4:2:2\", \"4:4:4\"], my = { colorRange: Sa.b.AVCOL_RANGE_JPEG, colourPrimaries: Sa.a.AVCOL_PRI_BT2020, transferCharacteristics: Sa.d.AVCOL_TRC_SMPTEST2084, matrixCoefficients: Sa.c.AVCOL_SPC_BT2020_CL }, th = function() {\n function L(s, a, n) {\n this._id = void 0, this._evt = void 0, this._internalEvt = void 0, this._ctx = void 0, this._cache = new li.a(), this._ended = !1, this._timeOffset = -1, this._frameIdx = 0, this._remuxer = void 0, this._firstRemux = !0, this._videoTrack = void 0, this._audioTrack = void 0, this._slientAudio = void 0, this._contiguous = !1, this._accurateTimeOffset = !1, this._frameDuration = 0, this._params = void 0, this._progressTime = 0, this._decode = 0, this._fullFrameInfo = void 0, this._duration = 0, this._id = n, this._evt = s, this._ctx = a, this._slientAudio = new hy.a(), this._internalEvt = new W.a(), this._remuxer = new eh.b(this._evt, a.getRemuxConfig(), pt.TYPE_SUPPORTED);\n }\n var A = L.prototype;\n return A.init = function() {\n this._evt.emit(u.a.DEMUXER_DETECTED, { type: zr.b.YUV }), this._ctx.cOutput.updateRendererType(P.o.canvas), this._initTrack(0);\n }, A.destroy = function() {\n this._cache.clear(), this._internalEvt.removeAllListeners(), this._remuxer.destroy();\n }, A.trackInfo = function(s, a) {\n }, A.reset = function(s) {\n w.b.i(\"yuv\", \"reset: \" + s), this._ended = !1, this._timeOffset = -1, this._slientAudio && this._slientAudio.reset(), this._firstRemux = !1;\n }, A.end = function() {\n this._ended || (this._ended = !0, this._evt.emit(u.a.LOAD_END));\n }, A.onFragProgress = function(s) {\n this._append(s, !1);\n }, A.onFragLoaded = function(s) {\n this._append(s, !0);\n }, A.updateConfig = function() {\n }, A.updateSuffix = function(s) {\n }, A._append = function(s, a) {\n if (s.data && s.data.byteLength) {\n var n = performance.now(), f = { progress: s.context.progress, byteLength: s.data.byteLength, timeCost: performance.now() - (this._progressTime || s.stats.trequest), ts: performance.now() };\n this._progressTime = n, this._evt.emit(u.a.LOADER_CHUNK_ARRIVAL, f);\n }\n var b = s.context.frag, N = this._videoTrack;\n if (N)\n if (this._checkParams(), this._params) {\n var j = this._params;\n if (j) {\n var se, ue = b.start || 0;\n for (this._timeOffset !== ue ? (this._frameIdx = Math.floor(ue / (1 / j.fps)), this._timeOffset = ue, this._contiguous = !1, this._accurateTimeOffset = !1, this._remuxer.resetInitSegment({ duration: this._duration, remuxId: 0 })) : this._accurateTimeOffset = !0, s.data && this._cache.put(new Uint8Array(s.data)), N.codedWidth || (N.codedWidth = j.width, N.codedHeight = j.height, N.fps = j.fps, N.bitDepth = j.bpp, N.codecType = P.b.rawvideo); se = this._getFrame(); ) {\n var Te = Math.floor(this._frameIdx * this._frameDuration);\n se.format.pts = Te / N.inputTimescale * g.a, this._frameIdx++, N.samples.push({ units: [], dts: Te, cts: 0, pts: Te, originDTS: Te, key: !0, yuv: se, duration: this._frameDuration }), this._decode++;\n }\n this._ctx.updateVideoPlaybackQuality(this._decode, 0), this._remux(a), a && (this._progressTime = 0, this._duration || (this._duration = this._frameIdx / j.fps, this._evt.emit(u.a.METADATA, { duration: this._duration })));\n }\n } else\n this._evt.emit(u.a.ERROR, { type: d.b.MUX_ERROR, details: d.a.PARSING_ERROR, fatal: !0, reason: \"yuv params error. \" + JSON.stringify(this._params) });\n }, A._initTrack = function(s) {\n this._videoTrack = Object(Jd.b)(s), this._videoTrack.active = !0, this._videoTrack.outputRaw = !0, this._videoTrack.codec = \"yuv\", this._audioTrack = Object(Jd.a)(s), dy.a.initAudioForFillSilent(this._audioTrack, this._ctx.stat.audioCodec);\n }, A._getFrame = function() {\n if (this._params) {\n var s = this._params.dataSize;\n if (s)\n return this._cache.unreadLen >= s ? this._getFrameData() : void 0;\n this._evt.emit(u.a.ERROR, { type: d.b.MUX_ERROR, details: d.a.REMUX_ERROR, fatal: !0, reason: \"yuv params error, can not get img size. \" + JSON.stringify(this._params) });\n }\n }, A._checkParams = function() {\n if (!this._params) {\n var s;\n if (this._params = this._ctx.yuvParams, this._params && this._videoTrack) {\n this._params.bpp > 8 && (this._videoTrack.colorInfo = my);\n var a = {};\n if (this._frameDuration = Math.round(this._videoTrack.inputTimescale / this._params.fps), this._videoTrack && (this._videoTrack.chromaFormat = py[this._params.chroma]), this._ctx.loadRec.contentLen) {\n this._fullFrameInfo = [];\n var n = Math.floor(this._ctx.loadRec.contentLen / this._params.dataSize);\n this._duration = a.duration = n / this._params.fps;\n for (var f = [], b = 0; b < n; b++) {\n var N = b * this._frameDuration / this._videoTrack.inputTimescale;\n this._fullFrameInfo.push({ index: b, dts: N, pts: N, duration: this._frameDuration }), f.push({ time: N, position: this._params.dataSize * b });\n }\n a.keyframes = f;\n }\n this._evt.emit(u.a.METADATA, a), this._fullFrameInfo && this._evt.emit(u.a.VIDEO_FRAME_INFO, { videoFramesInfo: this._fullFrameInfo });\n }\n return this._evt.emit(u.a.VIDEO_CODEC_DETECTED, { decoder: P.c.none, enabled: !0, codecType: P.b.yuv, bitDepth: (s = this._params) == null ? void 0 : s.bpp, timeOffset: 0 }), this._params;\n }\n }, A._getFrameData = function() {\n var s = this._params;\n if (s) {\n var a = this._cache, n = s.bpp > 8 ? 2 : 1, f = a.get(s.width * s.height * n), b = a.get(s.chromaWidth * s.chromaHeight * n), N = a.get(s.chromaWidth * s.chromaHeight * n);\n return f && b && N ? { format: o()({}, s), y: { bytes: f, stride: s.width * n, bits: s.bpp }, u: { bytes: b, stride: s.chromaWidth * n, bits: s.bpp }, v: { bytes: N, stride: s.chromaWidth * n, bits: s.bpp } } : void 0;\n }\n }, A._remux = function(s) {\n s === void 0 && (s = !1);\n var a = this._audioTrack, n = this._videoTrack;\n if (n && a)\n if (this._slientAudio.update(a, n), a.samples.length !== 0 || n.samples.length !== 0) {\n if (s || !(a.active && a.samples.length === 0 || n.active && n.samples.length < 2)) {\n if (this._firstRemux && (this._duration || this._evt.emit(u.a.KEY_FRAME_INDEXS, { keyframes: [{ time: 0, position: 0 }] }), this._firstRemux = !1, this._evt.emit(u.a.MEDIA_DEMUX, { type: zr.b.YUV })), !this._fullFrameInfo) {\n var f = Object(fy.a)(n, this._frameIdx - n.samples.length);\n this._evt.emit(u.a.VIDEO_FRAME_INFO, { videoFramesInfo: f });\n }\n try {\n this._remuxer.remux(a, n, this._timeOffset, this._contiguous, this._accurateTimeOffset, s), this._contiguous = !0;\n } catch (b) {\n w.b.e(\"yuv\", b), this._evt.emit(u.a.ERROR, { type: d.b.MUX_ERROR, details: d.a.REMUX_ERROR, fatal: !0, reason: b.message });\n }\n }\n } else\n s && this._remuxer.flush();\n }, v()(L, [{ key: \"totalDuration\", set: function(s) {\n } }, { key: \"id\", get: function() {\n return this._id;\n } }]), L;\n }(), Nl = i(3);\n (function(L) {\n L[L.flvHeader = 0] = \"flvHeader\", L[L.scriptData = 1] = \"scriptData\", L[L.audio = 2] = \"audio\", L[L.video = 3] = \"video\", L[L.seliceSeq = 4] = \"seliceSeq\";\n })(Ol || (Ol = {}));\n var xa, vy = function() {\n function L() {\n this._cache = new li.a(), this._slices = [], this._current = this._newSlice(), this._flvHead = 0;\n }\n var A = L.prototype;\n return A.reset = function() {\n w.b.i(\"kwai-slice\", \"reset\"), this._cache.clear(), this._slices = [], this._current = this._newSlice(), this._flvHead = 0;\n }, A.append = function(s) {\n for (this._cache.put(new Uint8Array(s)); this._cache.unreadLen >= (this._current.bodyLen || 15); )\n this._current.bodyLen ? this._readSliceBody() : this._readSliceHead();\n var a = this._slices.reduce(function(b, N) {\n var j;\n return (((j = N.data) == null ? void 0 : j.byteLength) || 0) + b;\n }, 0);\n if (a) {\n var n = new Uint8Array(a), f = 0;\n return this._slices.forEach(function(b) {\n b.data && (n.set(b.data, f), f += b.data.byteLength);\n }), this._slices = [], n.buffer;\n }\n }, A._readSliceHead = function() {\n if (this._cache.unreadLen >= 15) {\n var s = this._cache.get(15);\n if (!s)\n throw new Error(\"kwai-slice read slice_header fail\");\n var a = this._current;\n if (a.bodyLen = (s[0] << 4) + (s[1] >> 4) - 15, a.type = 15 & s[1], a.sliceSeq = Object(Nl.h)(s, 2), a.segmentId = Object(Nl.g)(s, 10), a.posFlag = s[14] >> 6, a.frameType = s[14] >> 4 & 3, a.extended = 1 & s[14], a.bodyLen <= 0)\n throw this._current = this._newSlice(), new Error(\"kwai-slice slice body len: \" + a.bodyLen);\n }\n }, A._readSliceBody = function() {\n var s = this._current;\n if (s.bodyLen && this._cache.unreadLen >= s.bodyLen) {\n var a = this._cache.get(s.bodyLen);\n if (!a)\n throw new Error(\"kwai-slice read slice_body fail\");\n var n = 0;\n s.extended && (n += Object(Nl.e)(a));\n var f = a.subarray(n);\n a.length > 3 && a[n] === 70 && a[n + 1] === 76 && a[n + 2] === 86 && (this._flvHead > 0 && (f = f.subarray(13)), this._flvHead++), s.data = f, this._slices.push(s), this._current = this._newSlice();\n }\n }, A._newSlice = function() {\n return { bodyLen: 0, type: Ol.flvHeader, sliceSeq: 0, segmentId: 0, posFlag: 0, frameType: 0, extended: 0 };\n }, L;\n }(), gy = function() {\n function L(s, a) {\n var n = this;\n this._callback = void 0, this._ctx = void 0, this._context = void 0, this._contentTotalLen = 0, this._loader = void 0, this._internalCallback = void 0, this._loaderConfig = void 0, this._slice = void 0, this._firstReq = !0, this._ended = !1, this._pos = void 0, this._nextRangeStart = 0, this._downloadEnabled = !0, this._currentReqLen = 0, this._connetced = !1, this._rangeWithoutPreflight = !1, this._defaultRangeLen = g.d, this._onLoaderConnect = function(b, N) {\n n._updateContentLen(N), !n._connetced && n._callback.onConnect && n._callback.onConnect(b, N), n._connetced = !0;\n }, this._onLoaderProgress = function(b, N, j) {\n if (typeof N != \"string\") {\n var se;\n n._currentReqLen += N.byteLength, !b.rangeEnd && n._currentReqLen >= n._defaultRangeLen && n._ctx.stat.isLive === !1 && (!n._contentTotalLen || n._contentTotalLen && n._currentReqLen < n._contentTotalLen) && ((se = n._loader) == null || se.abort(), n._destroyLoader(), n._nextRangeStart = n._currentReqLen, n._request()), n._callbackProgress(b, N, j);\n }\n }, this._onLoaderAbort = function(b, N) {\n n._callback.onAbort && n._callback.onAbort(b, N), n._destroyLoader();\n }, this._onLoaderError = function(b, N) {\n N.fatal && (n._destroyLoader(), n._ctx.stat.isNetworkInUse = !1), N.code === 416 && (!n._contentTotalLen || b.rangeEnd && b.rangeEnd >= n._contentTotalLen) ? (w.b.i(\"media-loader\", \"416 end\"), n._ended = !0, n._destroyLoader(), n._callbackEnd(b, null, N)) : n._callback.onError && n._callback.onError(b, N);\n }, this._onLoaderEnd = function(b, N, j) {\n if (b.range && n._callback.onRangeEnd && n._callback.onRangeEnd(b, j), n._updateContentLen(j), n._destroyLoader(), typeof N != \"string\") {\n var se = (N == null ? void 0 : N.byteLength) || 0;\n !n._ctx.stat.isLive && N && n._callbackProgress(b, N, j), (!b.range || typeof b.rangeStart == \"number\" && b.rangeEnd && b.rangeEnd - b.rangeStart > n._currentReqLen + se || n._contentTotalLen && b.rangeEnd && b.rangeEnd >= n._contentTotalLen) && (w.b.i(\"media-loader\", \"end true\"), n._ended = !0), n._ended || n._ctx.stat.isLive ? (j.fatal && (n._ctx.stat.isNetworkInUse = !1), n._callbackEnd(b, null, j)) : (b.rangeEnd && (n._nextRangeStart = b.rangeEnd), n._request());\n }\n }, this._callback = s, this._ctx = a, this._internalCallback = { onConnect: this._onLoaderConnect, onEnd: this._onLoaderEnd, onError: this._onLoaderError, onAbort: this._onLoaderAbort, onProgress: this._onLoaderProgress }, this._loaderConfig = { connectionTimeout: a.config.connectionTimeout, transmissionTimeout: a.config.transmissionTimeout };\n var f = this._ctx.src instanceof Blob;\n a.stat.box === P.g.yuv && a.yuvParams ? this._defaultRangeLen = a.yuvParams.dataSize : this._defaultRangeLen = f ? g.b : g.d, f && (this._ctx.loadRec.contentLen = this._contentTotalLen = this._ctx.src.size), Me.a.version && (this._rangeWithoutPreflight = Me.a.name === \"chrome\" && Me.a.version.major >= 99), w.b.i(\"media-loader\", \"without preflight: \" + this._rangeWithoutPreflight + \"; range size: \" + this._defaultRangeLen, this._contentTotalLen), this.updateConfig();\n }\n var A = L.prototype;\n return A.load = function(s) {\n w.b.i(\"media-loader\", \"load\"), this._destroyLoader(), this._firstReq = !0, this._connetced = !1, this._context = s, Xi(s.url) ? (w.b.i(\"media-loader\", \"kwai slice\"), this._ctx.stat.isKwaiSlice = !0, this._slice ? this._slice.reset() : this._slice = new vy()) : this._ctx.stat.isKwaiSlice = !1, this._context.progress = this._ctx.streamingMux, this._context.responseType = \"arraybuffer\", this._context.credentials = this._ctx.config.credentials, this._context.headers = this._ctx.config.headers, this._request();\n }, A.seek = function(s) {\n var a;\n w.b.i(\"media-loader\", \"seek time:\" + s.time + \", pos:\" + s.position), (a = this._loader) == null || a.abort(), this._destroyLoader(), this._downloadEnabled = !0, this._pos = s, this._ended = !1, this._request();\n }, A.updateConfig = function() {\n var s = this._ctx;\n w.b.i(\"media-loader\", \"update loader config\"), this._loaderConfig.maxRetry = s.stat.isLive ? 0 : s.config.maxRetry, this._loaderConfig.retryDelay = s.stat.isLive ? 0 : s.config.retryDelay, this._loaderConfig.useFetch = s.stat.isLive || s.stat.isLive === void 0, this._loaderConfig.breakpointContinuation = !(s.stat.box === P.g.flv && s.stat.isLive) && s.config.breakpointContinuation;\n }, A.destroy = function() {\n this._destroyLoader();\n }, A.ended = function() {\n return this._ended;\n }, A.setDownloadEnabled = function(s) {\n s === void 0 && (s = !0), this._downloadEnabled !== s && (this._downloadEnabled = s, s && !this._loader && this._request());\n }, A._request = function() {\n var s;\n if (this._downloadEnabled && !this._ended && this._context)\n if (this._destroyLoader(), this._pos && (this._nextRangeStart = this._pos.position, this._context.frag.start = this._pos.time, this._pos = void 0), this._contentTotalLen && this._nextRangeStart >= this._contentTotalLen)\n this._ctx.stat.isNetworkInUse = !1;\n else {\n var a, n = this._context;\n this._ctx.stat.isLive ? this._firstReq = !1 : (this._context.progress = this._ctx.streamingMux, !this._firstReq || !n.progress || typeof n.url != \"string\" || this._rangeWithoutPreflight && this._ctx.stat.isLive !== void 0 ? (this._firstReq = !1, n.rangeStart = this._nextRangeStart, n.rangeEnd = (Math.floor(this._nextRangeStart / this._defaultRangeLen) + 1) * this._defaultRangeLen, n.rangeType = this._ctx.config.httpRangeType, this._checkEnd(n)) : this._firstReq = !1), this._ctx.stat.isNetworkInUse = !0, this._currentReqLen = 0, (s = this._ctx.config.preprocessUrl) != null && s.stream && (w.b.d(\"media-loader\", \"preprocessUrl stream\"), n.url = (a = this._ctx.config.preprocessUrl) == null ? void 0 : a.stream(n.url)), this._loader = new le(), this._loader.load(n, this._internalCallback, this._loaderConfig);\n }\n else\n this._ctx.stat.isNetworkInUse = !1;\n }, A._destroyLoader = function() {\n this._loader && (this._loader.destroy(), this._loader = void 0);\n }, A._callbackProgress = function(s, a, n) {\n if (this._callback.onProgress)\n if (this._ctx.stat.isKwaiSlice) {\n var f = this._unpackSlice(s, a, n);\n f && this._callback.onProgress(s, f, n);\n } else\n this._callback.onProgress(s, a, n);\n }, A._callbackEnd = function(s, a, n) {\n if (this._ctx.stat.isKwaiSlice && a) {\n var f = this._unpackSlice(s, a, n) || null;\n this._callback.onEnd(s, f, n);\n } else\n this._callback.onEnd(s, a, n);\n }, A._unpackSlice = function(s, a, n) {\n if (this._ctx.stat.isKwaiSlice && this._slice)\n try {\n return this._slice.append(new Uint8Array(a));\n } catch (f) {\n n.fatal = !0, n.text = f.message, this._callback.onError && this._callback.onError(s, n);\n }\n }, A._checkEnd = function(s) {\n s.rangeEnd && this._contentTotalLen && s.rangeEnd > this._contentTotalLen && (this._ended = !0);\n }, A._updateContentLen = function(s) {\n !this._contentTotalLen && s.contentTotalLength && (this._ctx.loadRec.contentLen = this._contentTotalLen = s.contentTotalLength);\n }, L;\n }(), by = i(41), yy = /\\.(\\w)+$/, Ey = function() {\n function L(s, a) {\n var n = this;\n this._evt = void 0, this._ctx = void 0, this._loader = void 0, this._loaderCallbacks = void 0, this._multirate = void 0, this._baseTimeSec = 0, this._ready = !1, this._remuxContiguous = !1, this._flvKeyDetector = void 0, this._metadata = void 0, this._keyframes = void 0, this._appendFLVHead = !1, this._faststart = !0, this._loadEndCallbackonMeta = !1, this._hasContentLength = !1, this._mux = void 0, this._onLoaderProgress = function(f, b, N) {\n if (b instanceof ArrayBuffer) {\n var j, se;\n if (n._multirate && n._multirate.onLoaderChunk(b.byteLength), n._flvKeyDetector && n._flvKeyDetector.isFlv !== !1) {\n var ue = n._flvKeyDetector.append(new Uint8Array(b));\n if (n._multirate && n._ctx.lctx.levels.length > 1) {\n for (var Te = 0; Te < ue.length; Te++)\n if (n._ctx.localTimeOffset === void 0 && (n._ctx.localTimeOffset = ue[Te].timestamp / g.f), n._multirate && (j = n._multirate.onKeyFrame(ue[Te].timestamp))) {\n var De = new Uint8Array(ue[Te].pos);\n De.set(new Uint8Array(b).subarray(0, ue[Te].pos)), b = De.buffer;\n var Ne = o()({}, j);\n Ne.smooth = !0, Ne.timestamp = ue[Te].timestamp, Ne.startSec = n._baseTimeSec || n._ctx.currentTime, n._evt.emit(u.a.LEVEL_SWITCHING, Ne), n._baseTimeSec = n._ctx.getLocalTime(ue[Te].timestamp / g.f) || 0;\n break;\n }\n }\n }\n n._appendFLVHead && ((se = n._flvKeyDetector) != null && se.header && (b = n._onFlvSeekFirstChunk(b)), n._appendFLVHead = !1);\n var $e = { context: f, data: b, stats: N, remuxContiguous: n._remuxContiguous, progress: !0 };\n j ? (n._remuxContiguous || (n._remuxContiguous = !0), n._mux.onFragLoaded($e), n._flvKeyDetector && n._flvKeyDetector.reset(), n._load(j.url, j.level)) : n._mux.onFragProgress($e);\n }\n }, this._onLoaderConnect = function(f, b) {\n if (n._ctx.stat.box === void 0 || n._ctx.stat.box === P.g.unknown) {\n var N, j = (N = f.responseHeader) == null ? void 0 : N[\"content-type\"];\n j && (n._ctx.stat.box = Ge(Array.isArray(j) ? j[0] : j).box);\n }\n n._hasContentLength = !(!b.contentLength && !b.contentTotalLength), w.b.i(\"single\", \"on connect. contentLength: \" + b.contentLength + \" contentTotalLength: \" + b.contentTotalLength), n._evt.emit(u.a.MEDIA_CONNECTED, { headers: f.responseHeader });\n }, this._onLoaderAbort = function(f, b) {\n n._onDownload(Yt.ABORT, f, b);\n }, this.onLoaderRangeEnd = function(f, b) {\n n._onDownload(Yt.SUCCESS, f, b);\n }, this._onLoaderError = function(f, b) {\n if (n._onDownload(Yt.FAIL, f, b), b.fatal) {\n var N = { type: d.b.NETWORK_ERROR, details: d.a.LOAD_ERROR, fatal: !0, reason: b.text, statusCode: b.code, url: f.url };\n n._evt.emit(u.a.ERROR, N);\n }\n }, this._onLoaderEnd = function(f, b, N) {\n n._ctx.config.flvLoadEndError && n._ctx.stat.isLive && n._ctx.stat.box === P.g.flv ? n._evt.emit(u.a.ERROR, { type: d.b.NETWORK_ERROR, details: d.a.LIVE_DISCONNECTED_ERROR, fatal: !0, reason: \"flv live load end\", statusCode: N.code, url: f.url }) : (n._mux.onFragLoaded({ context: f, data: null, stats: N, remuxContiguous: !1, progress: !0 }), n._onDownload(Yt.SUCCESS, f, N), n._metadata ? n._mux.end() : n._loadEndCallbackonMeta = !0);\n }, this._onMetadata = function(f) {\n var b = n._ctx.stat;\n n._metadata = o()({}, f), n._metadata.keyframes && (n._keyframes = n._metadata.keyframes, w.b.i(\"single\", \"metadata keyframe\", n._keyframes)), n._metadata.keyframes || n._metadata.duration ? (b.isLive = !1, n._mux.updateConfig(n._ctx.getRemuxConfig())) : b.box === P.g.flv && b.isLive === void 0 && (b.isLive = !0, n._mux.updateConfig(n._ctx.getRemuxConfig())), n._loader.updateConfig(), n._faststart ? b.startFromSec > 0 && !b.isLive && n._keyframes && n._keyframes.length > 1 ? n.seek(b.startFromSec, !0) : n._loadEndCallbackonMeta && n._mux.end() : n.seek(b.startFromSec, !0), b.startFromSec = -1, b.box === P.g.mp4 && (f.mp4FastStart = n._faststart), n._loadEndCallbackonMeta = !1;\n }, this._onParsing = function(f) {\n n._loadEndCallbackonMeta && (n._mux.end(), n._loadEndCallbackonMeta = !1);\n }, this._onKeyFrameIndex = function(f) {\n w.b.i(\"single\", \"get key index\"), n._keyframes = f.keyframes;\n }, this._onNotFaststart = function(f) {\n w.b.i(\"single\", \"not faststart\", f.pos), n._loader.seek({ position: f.pos, time: 0 }), n._mux.reset(!0), n._faststart = !1, n._loadEndCallbackonMeta = !1;\n }, this._onDemuxerDetected = function(f) {\n n._ctx.demuxerType = f.type, n._hasContentLength && (n._ctx.stat.isLive = !1), w.b.i(\"single\", \"demuxer detected: \" + f.type + \", box:\" + n._ctx.stat.box + \" isLive:\" + n._ctx.stat.isLive), n._loader.updateConfig();\n }, this._evt = s, this._ctx = a, this._flvKeyDetector = new _y(), this._loaderCallbacks = { onConnect: this._onLoaderConnect, onProgress: this._onLoaderProgress, onError: this._onLoaderError, onEnd: this._onLoaderEnd, onAbort: this._onLoaderAbort, onRangeEnd: this.onLoaderRangeEnd }, this._loader = new gy(this._loaderCallbacks, a), this._mux = th && a.stat.box === P.g.yuv ? new th(this._evt, a, P.e.MAIN) : new gn(this._evt, a, P.e.MAIN), this._mux.init(), this._evt.prependListener(u.a.METADATA, this._onMetadata), this._evt.on(u.a.PARSING_INIT_SEGMENT, this._onParsing), this._evt.on(u.a.KEY_FRAME_INDEXS, this._onKeyFrameIndex), this._evt.on(u.a.MP4_NOT_FASTSTART, this._onNotFaststart), this._evt.on(u.a.DEMUXER_DETECTED, this._onDemuxerDetected);\n }\n var A = L.prototype;\n return A.init = function() {\n this._ctx.stat.box === P.g.yuv && this._mux instanceof gn && this._evt.emit(u.a.ERROR, { type: d.b.MUX_ERROR, details: d.a.UNSUPPORTED, fatal: !0, reason: \"yuv is not unsupported.\" }), this._multirate || (this._multirate = new Ta(this._evt, this._ctx), this._ready = !0, this._ctx.lctx.currentIdx = this._multirate.init(), this._ctx.lctx.levels.length && this._evt.emit(u.a.MANIFEST_PARSED));\n }, A.destroy = function() {\n this._evt.off(u.a.METADATA, this._onMetadata), this._evt.off(u.a.PARSING_INIT_SEGMENT, this._onParsing), this._evt.off(u.a.KEY_FRAME_INDEXS, this._onKeyFrameIndex), this._evt.off(u.a.MP4_NOT_FASTSTART, this._onNotFaststart), this._evt.off(u.a.DEMUXER_DETECTED, this._onDemuxerDetected), this._loader && this._loader.destroy(), this._multirate && this._multirate.destory(), this._flvKeyDetector = void 0, this._mux.destroy();\n }, A.loadSource = function() {\n var s = this._multirate;\n if (s) {\n var a = this._ctx.lctx.current;\n a ? this._load(this._ctx.stat.isLive ? Aa(a.currentUrl, this._ctx.config.defaultSpts) : a.currentUrl, s.currentLevel) : this._evt.emit(u.a.ERROR, { type: d.b.OTHER_ERROR, details: d.a.MANIFEST_PARSING_ERROR, fatal: !0, reason: \"manifest parse error.\" });\n } else\n this._load(this._ctx.src);\n }, A.setDownloadEnabled = function(s) {\n s === void 0 && (s = !0), this._loader.setDownloadEnabled(s);\n }, A.isSeekable = function() {\n return !(!this._keyframes || !this._keyframes.length || this._ctx.stat.isLive || this._ctx.stat.isKwaiSlice);\n }, A.seek = function(s, a, n) {\n a === void 0 && (a = !1), n === void 0 && (n = !1), w.b.i(\"single\", \"seek: \" + s + \" \" + a + \" \" + n);\n var f = this._keyframes;\n if ((f || s < g.m) && !n) {\n var b = f ? by.a.getPosByTime(f, s) : { time: 0, position: 0 };\n b && (this._loader.seek(b), this._baseTimeSec = b.time, this._mux.reset(!0), this._appendFLVHead = b.position > 0, a && this._evt.emit(u.a.VIDEO_SEEK, { sec: b.time }));\n } else\n w.b.w(\"single\", \"no keyframe index\"), this._evt.emit(u.a.ERROR, { type: d.b.MEDIA_ERROR, details: d.a.CANNOT_SEEK, fatal: !1, reason: \"can not seek\" });\n }, A.nextBackup = function() {\n return !1;\n }, A.onAbrLevelsUpdated = function() {\n var s;\n (s = this._multirate) == null || s.onAbrLevelsUpdated();\n }, A.setCurrentLevel = function(s) {\n var a = this._multirate;\n if (a) {\n var n = s >= 0 || s !== a.currentLevel;\n a.currentLevel = s;\n var f = this._ctx.lctx.current;\n if (n && f && this._ready) {\n var b = this._ctx.stat.isLive ? Aa(f.currentUrl, this._ctx.config.defaultSpts) : f.currentUrl;\n this._flvKeyDetector && this._flvKeyDetector.reset(), this._remuxContiguous = !1, this._baseTimeSec = this._ctx.currentTime, this._evt.emit(u.a.LEVEL_SWITCHING, { id: 0, level: a.currentLevel, time: this._baseTimeSec, smooth: !1, auto: !1 }), this._mux.reset(!0), this._load(b, a.currentLevel);\n }\n }\n }, A.setManualNextLevel = function(s) {\n this.setNextLevel(s);\n }, A.setNextLevel = function(s) {\n this._ready || this.setCurrentLevel(s);\n var a = this._multirate;\n a && (s === -1 && this._evt.emit(u.a.LEVEL_SWITCHING, { id: 0, level: -1, time: this._ctx.currentTime, smooth: !0, auto: !0 }), a.nextLevel = s);\n }, A.setAudioTrack = function(s) {\n }, A.setSubtitleTrack = function(s) {\n }, A._load = function(s, a) {\n a === void 0 && (a = 0), this._multirate && this._multirate.onLevelLoad(a), this._ctx.lctx.currentIdx = a;\n var n = this._ctx.lctx.current;\n this._ctx.stat.audioCodec = this._ctx.stat.audioCodec || (n ? n.audioCodec : \"\"), this._evt.emit(u.a.NEW_SOURCE, { sync: this._baseTimeSec });\n var f = new Ae.a(typeof this._ctx.src == \"string\" ? s : this._ctx.src instanceof File ? this._ctx.src.name : \"\").pathname.match(yy);\n f && this._mux.updateSuffix(f[0]);\n var b = { url: s, responseType: \"arraybuffer\", credentials: this._ctx.config.credentials, headers: this._ctx.config.headers, frag: { start: this._baseTimeSec, type: \"frag\" } };\n this._loader.load(b);\n }, A._onDownload = function(s, a, n) {\n var f, b = ji(s, a, n, (f = this._ctx.lctx.current) == null ? void 0 : f.qualityType);\n this._evt.emit(u.a.DOWNLOAD, b);\n }, A._onFlvSeekFirstChunk = function(s) {\n var a, n = (a = this._flvKeyDetector) == null ? void 0 : a.header;\n if (n) {\n var f = new Uint8Array(s.byteLength + n.length);\n return f.set(n), f.set(new Uint8Array(s), n.length), f.buffer;\n }\n return s;\n }, v()(L, [{ key: \"mediaTrackNum\", get: function() {\n return 1;\n } }]), L;\n }(), ih = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this) || this)._evt = void 0, n._trans = void 0, n._ctx = void 0, n._initSegments = { main: void 0, audio: void 0 }, n._initSegmentReady = !1, n._loadEnd = 0, n._mediaSegmentsBuffer = [], n._onMessage = function(f, b) {\n switch (f) {\n case u.a.PARSING_INIT_SEGMENT:\n var N = n._getInitSegment(b);\n if (N) {\n if (n.emit(u.a.PARSING_INIT_SEGMENT, N), !n._initSegmentReady)\n for (; n._mediaSegmentsBuffer.length; )\n n.emit(u.a.PARSING_DATA, n._mediaSegmentsBuffer.shift());\n n._initSegmentReady = !0;\n }\n break;\n case u.a.PARSING_DATA:\n var j = b;\n j.segments.forEach(function(ue) {\n ue.type === P.l.AUDIO && ue.originFirstDTS && (n._ctx.localTimeOffset = ue.originFirstDTS - ue.startDTS);\n }), n._initSegmentReady ? n.emit(f, b) : n._mediaSegmentsBuffer.push(j);\n break;\n case u.a.MANIFEST_PARSED:\n n._initSegmentReady = n._trans.mediaTrackNum === 1, n.emit(f, b);\n break;\n case u.a.ERROR:\n if (n._ctx.config.retryWithBackup && n._trans.nextBackup()) {\n var se = b;\n n.emit(u.a.RETRY, { type: P.h.BACKUP, message: \"trans error, use backup.\", code: K((se == null ? void 0 : se.details) || 0, (se == null ? void 0 : se.reason) || \"\", se == null ? void 0 : se.statusCode) });\n } else\n n.emit(f, b);\n break;\n case u.a.LOAD_END:\n n._loadEnd++, n._loadEnd >= n._trans.mediaTrackNum && n.emit(f, b);\n break;\n case u.a.DEMUXER_DETECTED:\n n._ctx.demuxerType = b.type, w.b.i(\"transmuxer\", f + \", box:\" + n._ctx.stat.box + \" isLive:\" + n._ctx.stat.isLive), n.emit(f, b);\n break;\n case u.a.MEDIA_DEMUX:\n n._ctx.demuxerType = b.type, n.emit(f, b);\n break;\n default:\n n.emit(f, b);\n }\n }, n._evt = new W.a(), n._ctx = a, a.stat.multipart ? n._trans = new is(n._evt, a) : n._trans = new Ey(n._evt, a), n;\n }\n x()(A, L);\n var s = A.prototype;\n return s.init = function() {\n this._bindEvents(this._evt), this._trans.init();\n }, s.destroy = function() {\n this._trans.destroy(), this._mediaSegmentsBuffer = [], this._evt.removeAllListeners();\n }, s.loadSource = function() {\n this._trans.loadSource();\n }, s.setDownloadEnabled = function(a) {\n a === void 0 && (a = !0), this._trans.setDownloadEnabled(a);\n }, s.seek = function(a, n, f) {\n f === void 0 && (f = !1), this._trans.seek(a, n, f);\n }, s.heartbeat = function() {\n }, s.isSeekable = function() {\n return this._trans.isSeekable();\n }, s.setNextLevel = function(a) {\n a >= 0 && a !== this._ctx.lctx.nextIdx && this._resetInitSegments(), this._trans.setManualNextLevel(a);\n }, s.setCurrentLevel = function(a) {\n a >= 0 && a !== this._ctx.lctx.currentIdx && this._resetInitSegments(), this._trans.setCurrentLevel(a);\n }, s.onAbrLevelsUpdated = function() {\n this._trans.onAbrLevelsUpdated();\n }, s.setAudioTrack = function(a) {\n this._resetInitSegments(), this._ctx.lctx.audioTracks.length && this._trans.setAudioTrack(a);\n }, s.setSubtitleTrack = function(a) {\n this._ctx.lctx.subtitleTracks.length && this._trans.setSubtitleTrack(a);\n }, s._bindEvents = function(a) {\n var n = this._onMessage;\n [u.a.PRIV_NAL, u.a.SEI, u.a.PARSING_INIT_SEGMENT, u.a.PARSING_DATA, u.a.RAW_DATA, u.a.VIDEO_CODEC_DETECTED, u.a.ERROR, u.a.LEVEL_UPDATED, u.a.LEVEL_SWITCH_FAILED, u.a.LEVEL_SWITCHING, u.a.SUBTITLE_LOADED, u.a.MANIFEST_PARSED, u.a.LOAD_END, u.a.BUFFER_CLEANING, u.a.VIDEO_SEEK, u.a.PRELOAD_COMPLETE, u.a.LOADER_CHUNK_ARRIVAL, u.a.MEDIA_CONNECTED, u.a.MEDIA_DEMUX, u.a.NEW_SOURCE, u.a.DOWNLOAD, u.a.DISCONTINUITY, u.a.KEY_FRAME, u.a.METADATA, u.a.VIDEO_FRAME_INFO, u.a.DEMUXER_DETECTED, u.a.AUDIO_TRACK_UPDATED, u.a.AUDIO_TRACK_SWITCHING, u.a.AUDIO_TRACK_SWITCHED, u.a.AUDIO_TRACK_LOADED].forEach(function(f) {\n return a.on(f, function(b) {\n return n(f, b);\n });\n });\n }, s._resetInitSegments = function() {\n this._initSegments.audio = this._initSegments.main = void 0, this._initSegmentReady = this._trans.mediaTrackNum === 1, this._loadEnd = 0, this._mediaSegmentsBuffer = [], w.b.i(\"transmuxer\", \"reset initSegment ready: \" + this._initSegmentReady);\n }, s._getInitSegment = function(a) {\n var n = a;\n if (this._trans.mediaTrackNum !== 1) {\n if (a.tracks.hasOwnProperty(\"video\") ? this._initSegments.main = a.tracks.video : this._initSegments.audio = a.tracks.audio, !this._initSegments.main || !this._initSegments.audio)\n return;\n n = { tracks: { video: this._initSegments.main, audio: this._initSegments.audio } };\n }\n var f = this._ctx.lctx.current;\n return f && n.tracks && n.tracks.video && !f.codec && (f.codec = n.tracks.video.codec), n;\n }, A;\n }(W.a);\n (function(L) {\n L[L.waiting = 0] = \"waiting\", L[L.working = 1] = \"working\", L[L.ready = 2] = \"ready\", L[L.error = 3] = \"error\";\n })(xa || (xa = {}));\n var wy = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this) || this)._data = void 0, n._trans = void 0, n._data = a, n;\n }\n x()(A, L);\n var s = A.prototype;\n return s.start = function(a, n) {\n if (!this._trans) {\n w.b.i(\"preload-task\", \"start preload task\"), a === void 0 && (a = this._data.abr), n === void 0 && (n = this._data.qualityType);\n var f = this._data.ctx;\n this._data.abr = a, this._data.qualityType = n, this._data.stat = xa.working, this._trans = new ih(f), this._bind(this._trans), this._trans.init(), this._trans.loadSource();\n }\n }, s.destroy = function() {\n w.b.i(\"preload-task\", \"destroy\"), this._trans && (this._trans.removeAllListeners(), this._trans.destroy(), this._trans = void 0), this.removeAllListeners();\n }, s._bind = function(a) {\n var n = this, f = this._data;\n a.on(u.a.PRELOAD_COMPLETE, function() {\n var b;\n f.qualityType = ((b = f.ctx.lctx.current) == null ? void 0 : b.qualityType) || \"\", f.stat = xa.ready, a.removeAllListeners(), n.emit(u.a.PRELOAD_COMPLETE), n.removeAllListeners();\n }), a.on(u.a.DOWNLOAD, function(b) {\n n.emit(u.a.DOWNLOAD, b);\n }), a.on(u.a.MANIFEST_PARSED, function() {\n if (f.levelCnt = f.ctx.lctx.levels.length, typeof f.qualityType == \"string\" && f.qualityType) {\n if (f.levelCnt <= 1)\n return;\n var b = f.ctx.lctx.levels.reduce(function(N, j, se) {\n return j.qualityType === f.qualityType ? se : N;\n }, -1);\n b >= 0 && f.ctx.lctx.currentIdx !== b && a.setCurrentLevel(b);\n } else\n typeof f.level == \"number\" && f.level >= 0 && f.level < f.ctx.lctx.levels.length && a.setCurrentLevel(f.level);\n }), a.on(u.a.ERROR, this._onError.bind(this));\n }, s._onError = function(a) {\n this.emit(u.a.ERROR, a), this._data.stat = xa.error, this.destroy();\n }, v()(A, [{ key: \"trans\", get: function() {\n return this._trans;\n } }]), A;\n }(W.a), rh = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this) || this)._waiting = [], n._running = void 0, n._active = !1, n._updateTimer = void 0, n._timeout = void 0, n._ctx = void 0, n._onPreloadComplete = function() {\n var f;\n n._stopTimeout(), n._running && (w.b.i(\"preload-m\", \"preload task done\", n._waiting.length), (f = n._running.app) == null || f.destroy(), n.emit(u.a.PRELOAD_COMPLETE)), n._running = void 0, n._update();\n }, n._onPreloadError = function(f) {\n var b;\n n._stopTimeout(), n._running && ((b = n._running.app) == null || b.destroy()), n._running = void 0, n._update();\n }, n._onPreloadDownload = function(f) {\n n.emit(u.a.DOWNLOAD, f);\n }, n._ctx = a, n;\n }\n x()(A, L);\n var s = A.prototype;\n return s.add = function(a, n) {\n w.b.i(\"preload-m\", \"add preload task\");\n var f = this._ctx.getNewCtx();\n if (f.setSrc(a), !f.stat.isLive && (f.stat.isPreload = !0, f.streamingMux = !1, f.src)) {\n var b = { data: { ctx: f, levelCnt: 1, stat: xa.waiting, level: n }, ts: performance.now() };\n this._waiting.push(b), this._update();\n }\n }, s.active = function(a) {\n a === void 0 && (a = !1), this._active !== a && (a ? (this._active = a, this._update()) : (this._active = a, this._stopUpdateTimer()));\n }, s.clean = function() {\n w.b.i(\"preload-m\", \"clean\"), this._waiting = [], this._running && (this._running.app && this._running.app.destroy(), this._running = void 0), this._active = !1;\n }, s.destroy = function() {\n w.b.i(\"preload-m\", \"destroy\"), this.clean(), this._stopUpdateTimer(), this.removeAllListeners();\n }, s._stopUpdateTimer = function() {\n this._updateTimer && (clearTimeout(this._updateTimer), this._updateTimer = void 0);\n }, s._update = function() {\n if (!this._running && this._waiting.length && this._active) {\n var a = this._ctx.lctx.current, n = this._running = this._waiting.shift();\n n && (this._startTimeout(5e3), n.app = new wy(n.data), n.app.on(u.a.PRELOAD_COMPLETE, this._onPreloadComplete), n.app.on(u.a.ERROR, this._onPreloadError), n.app.on(u.a.DOWNLOAD, this._onPreloadDownload), n.app.start(this._ctx.lctx.abr, a == null ? void 0 : a.qualityType), w.b.i(\"preload-m\", \"preload task start\"));\n }\n }, s._startTimeout = function(a) {\n var n = this;\n this._timeout = setTimeout(function() {\n n._running && n._running.app && n._running.app.destroy(), n._running = void 0, n._update(), n._stopTimeout();\n }, a);\n }, s._stopTimeout = function() {\n this._timeout && (clearTimeout(this._timeout), this._timeout = void 0);\n }, A;\n }(W.a), Ay = i(38), Ty = i(26), nh = function() {\n if (typeof self < \"u\" && self.VTTCue)\n return self.VTTCue;\n var L = [\"\", \"lr\", \"rl\"], A = [\"start\", \"middle\", \"end\", \"left\", \"right\"];\n function s(b, N) {\n if (typeof N != \"string\" || !Array.isArray(b))\n return !1;\n var j = N.toLowerCase();\n return !!~b.indexOf(j) && j;\n }\n function a(b) {\n return s(A, b);\n }\n function n(b) {\n for (var N = arguments.length, j = new Array(N > 1 ? N - 1 : 0), se = 1; se < N; se++)\n j[se - 1] = arguments[se];\n for (var ue = 1; ue < arguments.length; ue++) {\n var Te = arguments[ue];\n for (var De in Te)\n b[De] = Te[De];\n }\n return b;\n }\n function f(b, N, j) {\n if (typeof self < \"u\") {\n var se = self, ue = { enumerable: !0 };\n se.hasBeenReset = !1;\n var Te = \"\", De = !1, Ne = b, $e = N, ht = j, Je = null, kt = \"\", Xt = !0, vt = \"auto\", zt = \"start\", _t = 50, di = \"middle\", ct = 50, Ii = \"middle\";\n Object.defineProperty(se, \"id\", n({}, ue, { get: function() {\n return Te;\n }, set: function(wt) {\n Te = \"\" + wt;\n } })), Object.defineProperty(se, \"pauseOnExit\", n({}, ue, { get: function() {\n return De;\n }, set: function(wt) {\n De = !!wt;\n } })), Object.defineProperty(se, \"startTime\", n({}, ue, { get: function() {\n return Ne;\n }, set: function(wt) {\n if (typeof wt != \"number\")\n throw new TypeError(\"Start time must be set to a number.\");\n Ne = wt, this.hasBeenReset = !0;\n } })), Object.defineProperty(se, \"endTime\", n({}, ue, { get: function() {\n return $e;\n }, set: function(wt) {\n if (typeof wt != \"number\")\n throw new TypeError(\"End time must be set to a number.\");\n $e = wt, this.hasBeenReset = !0;\n } })), Object.defineProperty(se, \"text\", n({}, ue, { get: function() {\n return ht;\n }, set: function(wt) {\n ht = \"\" + wt, this.hasBeenReset = !0;\n } })), Object.defineProperty(se, \"region\", n({}, ue, { get: function() {\n return Je;\n }, set: function(wt) {\n Je = wt, this.hasBeenReset = !0;\n } })), Object.defineProperty(se, \"vertical\", n({}, ue, { get: function() {\n return kt;\n }, set: function(wt) {\n var Gt = function(Or) {\n return s(L, Or);\n }(wt);\n if (Gt === !1)\n throw new SyntaxError(\"An invalid or illegal string was specified.\");\n kt = Gt, this.hasBeenReset = !0;\n } })), Object.defineProperty(se, \"snapToLines\", n({}, ue, { get: function() {\n return Xt;\n }, set: function(wt) {\n Xt = !!wt, this.hasBeenReset = !0;\n } })), Object.defineProperty(se, \"line\", n({}, ue, { get: function() {\n return vt;\n }, set: function(wt) {\n if (typeof wt != \"number\" && wt !== \"auto\")\n throw new SyntaxError(\"An invalid number or illegal string was specified.\");\n vt = wt, this.hasBeenReset = !0;\n } })), Object.defineProperty(se, \"lineAlign\", n({}, ue, { get: function() {\n return zt;\n }, set: function(wt) {\n var Gt = a(wt);\n if (!Gt)\n throw new SyntaxError(\"An invalid or illegal string was specified.\");\n zt = Gt, this.hasBeenReset = !0;\n } })), Object.defineProperty(se, \"position\", n({}, ue, { get: function() {\n return _t;\n }, set: function(wt) {\n if (wt < 0 || wt > 100)\n throw new Error(\"Position must be between 0 and 100.\");\n _t = wt, this.hasBeenReset = !0;\n } })), Object.defineProperty(se, \"positionAlign\", n({}, ue, { get: function() {\n return di;\n }, set: function(wt) {\n var Gt = a(wt);\n if (!Gt)\n throw new SyntaxError(\"An invalid or illegal string was specified.\");\n di = Gt, this.hasBeenReset = !0;\n } })), Object.defineProperty(se, \"size\", n({}, ue, { get: function() {\n return ct;\n }, set: function(wt) {\n if (wt < 0 || wt > 100)\n throw new Error(\"Size must be between 0 and 100.\");\n ct = wt, this.hasBeenReset = !0;\n } })), Object.defineProperty(se, \"align\", n({}, ue, { get: function() {\n return Ii;\n }, set: function(wt) {\n var Gt = a(wt);\n if (!Gt)\n throw new SyntaxError(\"An invalid or illegal string was specified.\");\n Ii = Gt, this.hasBeenReset = !0;\n } })), se.displayState = void 0;\n }\n }\n return f.prototype.getCueAsHTML = function() {\n return self.WebVTT.convertCueToDOMTree(self, this.text);\n }, f;\n }(), Sy = function() {\n function L() {\n }\n return L.prototype.decode = function(A, s) {\n if (!A)\n return \"\";\n if (typeof A != \"string\")\n throw new Error(\"Error - expected string data.\");\n return decodeURIComponent(encodeURIComponent(A));\n }, L;\n }(), xy = function() {\n function L() {\n this.values = /* @__PURE__ */ Object.create(null);\n }\n var A = L.prototype;\n return A.set = function(s, a) {\n this.get(s) || a === \"\" || (this.values[s] = a);\n }, A.get = function(s, a, n) {\n return n ? this.has(s) ? this.values[s] : a[n] : this.has(s) ? this.values[s] : a;\n }, A.has = function(s) {\n return s in this.values;\n }, A.alt = function(s, a, n) {\n for (var f = 0; f < n.length; ++f)\n if (a === n[f]) {\n this.set(s, a);\n break;\n }\n }, A.integer = function(s, a) {\n /^-?\\d+$/.test(a) && this.set(s, parseInt(a, 10));\n }, A.percent = function(s, a) {\n if (/^([\\d]{1,3})(\\.[\\d]*)?%$/.test(a)) {\n var n = parseFloat(a);\n if (n >= 0 && n <= 100)\n return this.set(s, n), !0;\n }\n return !1;\n }, L;\n }();\n function ah(L, A, s, a) {\n var n = a ? L.split(a) : [L];\n for (var f in n)\n if (typeof n[f] == \"string\") {\n var b = n[f].split(s);\n b.length === 2 && A(b[0], b[1]);\n }\n }\n var Pl = new nh(0, 0, \"\"), so = Pl.align === \"middle\" ? \"middle\" : \"center\";\n function Ly(L, A, s) {\n var a = L;\n function n() {\n var b = function(N) {\n function j(ue, Te, De, Ne) {\n return 3600 * (0 | ue) + 60 * (0 | Te) + (0 | De) + parseFloat(Ne || 0);\n }\n var se = N.match(/^(?:(\\d+):)?(\\d{2}):(\\d{2})(\\.\\d+)?/);\n return se ? parseFloat(se[2]) > 59 ? j(se[2], se[3], 0, se[4]) : j(se[1], se[2], se[3], se[4]) : null;\n }(L);\n if (b === null)\n throw new Error(\"Malformed timestamp: \" + a);\n return L = L.replace(/^[^\\sa-zA-Z-]+/, \"\"), b;\n }\n function f() {\n L = L.replace(/^\\s+/, \"\");\n }\n if (f(), A.startTime = n(), f(), L.substr(0, 3) !== \"-->\")\n throw new Error(\"Malformed time stamp (time stamps must be separated by '-->'): \" + a);\n L = L.substr(3), f(), A.endTime = n(), f(), function(b, N) {\n var j = new xy();\n ah(b, function(Te, De) {\n var Ne;\n switch (Te) {\n case \"region\":\n for (var $e = s.length - 1; $e >= 0; $e--)\n if (s[$e].id === De) {\n j.set(Te, s[$e].region);\n break;\n }\n break;\n case \"vertical\":\n j.alt(Te, De, [\"rl\", \"lr\"]);\n break;\n case \"line\":\n Ne = De.split(\",\"), j.integer(Te, Ne[0]), j.percent(Te, Ne[0]) && j.set(\"snapToLines\", !1), j.alt(Te, Ne[0], [\"auto\"]), Ne.length === 2 && j.alt(\"lineAlign\", Ne[1], [\"start\", so, \"end\"]);\n break;\n case \"position\":\n Ne = De.split(\",\"), j.percent(Te, Ne[0]), Ne.length === 2 && j.alt(\"positionAlign\", Ne[1], [\"start\", so, \"end\", \"line-left\", \"line-right\", \"auto\"]);\n break;\n case \"size\":\n j.percent(Te, De);\n break;\n case \"align\":\n j.alt(Te, De, [\"start\", so, \"end\", \"left\", \"right\"]);\n }\n }, /:/, /\\s/), N.region = j.get(\"region\", null), N.vertical = j.get(\"vertical\", \"\");\n var se = j.get(\"line\", \"auto\");\n se === \"auto\" && Pl.line === -1 && (se = -1), N.line = se, N.lineAlign = j.get(\"lineAlign\", \"start\"), N.snapToLines = j.get(\"snapToLines\", !0), N.size = j.get(\"size\", 100), N.align = j.get(\"align\", so);\n var ue = j.get(\"position\", \"auto\");\n ue === \"auto\" && Pl.position === 50 && (ue = N.align === \"start\" || N.align === \"left\" ? 0 : N.align === \"end\" || N.align === \"right\" ? 100 : 50), N.position = ue;\n }(L, A);\n }\n var Ry = function() {\n function L() {\n this.state = \"INITIAL\", this.buffer = \"\", this.decoder = new Sy(), this.regionList = [], this.cue = null, this.style = \"\", this.oncue = void 0, this.onstyle = void 0, this.onparsingerror = void 0, this.onflush = void 0;\n }\n var A = L.prototype;\n return A.parse = function(s) {\n var a = this;\n function n() {\n var se = a.buffer, ue = 0;\n for (se = se.replace(//gi, `\n`); ue < se.length && se[ue] !== \"\\r\" && se[ue] !== `\n`; )\n ++ue;\n var Te = se.substr(0, ue);\n return se[ue] === \"\\r\" && ++ue, se[ue] === `\n` && ++ue, a.buffer = se.substr(ue), Te;\n }\n s && (a.buffer += a.decoder.decode(s, { stream: !0 }));\n try {\n var f = \"\";\n if (a.state === \"INITIAL\") {\n if (!/\\r\\n|\\n/.test(a.buffer))\n return this;\n var b = (f = n()).match(/^()?WEBVTT([ \\t].*)?$/);\n if (!b || !b[0])\n throw new Error(\"Malformed WebVTT signature.\");\n a.state = \"HEADER\";\n }\n for (var N = !1; a.buffer; ) {\n if (!/\\r\\n|\\n/.test(a.buffer))\n return this;\n switch (N ? N = !1 : f = n(), a.state) {\n case \"HEADER\":\n /:/.test(f) ? ah(f, function(se, ue) {\n }, /:/) : f || (a.state = \"ID\");\n continue;\n case \"NOTE\":\n f || (a.state = \"ID\");\n continue;\n case \"STYLE\":\n f ? a.style += f : (a.style && (a.onstyle && a.onstyle(a.style), a.style = \"\"), a.state = \"ID\");\n continue;\n case \"ID\":\n if (/^NOTE($|[ \\t])/.test(f)) {\n a.state = \"NOTE\";\n break;\n }\n if (/^STYLE($|[ \\t])/.test(f)) {\n a.state = \"STYLE\";\n break;\n }\n if (!f)\n continue;\n if (a.cue = new nh(0, 0, \"\"), a.state = \"CUE\", f.indexOf(\"-->\") === -1) {\n a.cue.id = f;\n continue;\n }\n case \"CUE\":\n if (!a.cue) {\n a.state = \"BADCUE\";\n continue;\n }\n try {\n Ly(f, a.cue, a.regionList);\n } catch (se) {\n a.cue = null, a.state = \"BADCUE\";\n continue;\n }\n a.state = \"CUETEXT\";\n continue;\n case \"CUETEXT\":\n var j = f.indexOf(\"-->\") !== -1;\n if (!f || j && (N = !0)) {\n a.oncue && a.cue && a.oncue(a.cue), a.cue = null, a.state = \"ID\";\n continue;\n }\n if (a.cue === null)\n continue;\n a.cue.text && (a.cue.text += `\n`), a.cue.text += f;\n continue;\n case \"BADCUE\":\n f || (a.state = \"ID\");\n }\n }\n } catch (se) {\n a.state === \"CUETEXT\" && a.cue && a.oncue && a.oncue(a.cue), a.cue = null, a.state = a.state === \"INITIAL\" ? \"BADWEBVTT\" : \"BADCUE\";\n }\n return this;\n }, A.flush = function() {\n try {\n if ((this.cue || this.state === \"HEADER\") && (this.buffer += `\n\n`, this.parse()), this.state === \"INITIAL\" || this.state === \"BADWEBVTT\")\n throw new Error(\"Malformed WebVTT signature.\");\n } catch (s) {\n this.onparsingerror && this.onparsingerror(s);\n }\n return this.onflush && this.onflush(), this;\n }, L;\n }(), Cy = /\\r\\n|\\n\\r|\\n|\\r/g, Ml = function(L, A, s) {\n return s === void 0 && (s = 0), L.substr(s, A.length) === A;\n }, Ul = function(L) {\n for (var A = 5381, s = L.length; s; )\n A = 33 * A ^ L.charCodeAt(--s);\n return (A >>> 0).toString();\n };\n function ky(L, A, s, a, n, f, b, N) {\n var j, se = new Ry(), ue = Object(Ay.a)(new Uint8Array(L)).trim().replace(Cy, `\n`).split(`\n`), Te = [], De = Object(Ty.a)(A, s), Ne = \"\", $e = \"00:00.000\", ht = 0, Je = 0, kt = !0, Xt = !1;\n se.onstyle = function(vt) {\n Ne += vt;\n }, se.oncue = function(vt) {\n var zt = a[n], _t = a.ccOffset, di = (ht - De) / g.l;\n if (zt != null && zt.new && (Je !== void 0 ? _t = a.ccOffset = zt.start : function(Gt, Or, Hr) {\n var nr = Gt[Or], hr = Gt[nr.prevCC];\n if (!hr || !hr.new && nr.new)\n return Gt.ccOffset = Gt.presentationOffset = nr.start, void (nr.new = !1);\n for (; (wr = hr) != null && wr.new; ) {\n var wr;\n Gt.ccOffset += nr.start - hr.start, nr.new = !1, hr = Gt[(nr = hr).prevCC];\n }\n Gt.presentationOffset = Hr;\n }(a, n, di)), di && (_t = di - a.presentationOffset), Xt) {\n var ct = vt.endTime - vt.startTime, Ii = Object(eh.a)((vt.startTime + _t - Je) * g.l, f * g.l) / g.l;\n vt.startTime = Ii, vt.endTime = Ii + ct;\n }\n var wt = vt.text.trim();\n vt.text = decodeURIComponent(encodeURIComponent(wt)), vt.id || (vt.id = function(Gt, Or, Hr) {\n return Ul(Gt.toString()) + Ul(Or.toString()) + Ul(Hr);\n }(vt.startTime, vt.endTime, wt)), vt.endTime > 0 && Te.push(vt);\n }, se.onparsingerror = function(vt) {\n j = vt;\n }, se.onflush = function() {\n j ? N(j) : b(Te, Ne);\n }, ue.forEach(function(vt) {\n if (kt) {\n if (Ml(vt, \"X-TIMESTAMP-MAP=\")) {\n kt = !1, Xt = !0, vt.substr(16).split(\",\").forEach(function(zt) {\n Ml(zt, \"LOCAL:\") ? $e = zt.substr(6) : Ml(zt, \"MPEGTS:\") && (ht = parseInt(zt.substr(7)));\n });\n try {\n Je = function(zt) {\n var _t = parseInt(zt.substr(-3)), di = parseInt(zt.substr(-6, 2)), ct = parseInt(zt.substr(-9, 2)), Ii = zt.length > 9 ? parseInt(zt.substr(0, zt.indexOf(\":\"))) : 0;\n if (!(Object(te.a)(_t) && Object(te.a)(di) && Object(te.a)(ct) && Object(te.a)(Ii)))\n throw Error(\"Malformed X-TIMESTAMP-MAP: Local:\" + zt);\n return _t += 1e3 * di, _t += 6e4 * ct, _t += 36e5 * Ii;\n }($e) / 1e3;\n } catch (zt) {\n Xt = !1, j = zt;\n }\n return;\n }\n vt === \"\" && (kt = !1);\n }\n se.parse(vt + `\n`);\n }), se.flush();\n }\n var sh = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this) || this)._ctx = void 0, n._current = -1, n._list = [], n._listPos = 0, n._vttCCs = void 0, n._styleNode = void 0, n._onTextTrackChange = function() {\n var f = n._list.reduce(function(b, N, j) {\n return N.track.mode === \"showing\" ? j : b;\n }, -1);\n f !== n._current && (n._current = f, w.b.i(\"subtitle\", \"subtitle switching\"), n.emit(u.a.SUBTITLE_TRACK_SWITCHED, { level: f }));\n }, n._ctx = a, n._vttCCs = { ccOffset: 0, presentationOffset: 0, 0: { start: 0, prevCC: -1, new: !1 } }, n._ctx.video && n._ctx.video.textTracks.addEventListener(\"change\", n._onTextTrackChange), n;\n }\n x()(A, L);\n var s = A.prototype;\n return s.addTracks = function(a) {\n var n = this;\n a.forEach(function(f, b) {\n var N = n._getTextTrack();\n N && n._ctx.video && (f.default ? (n._current = b, N.mode = \"showing\") : N.mode = \"hidden\");\n });\n }, s.select = function(a) {\n if (this._removeStyle(), a !== this._current) {\n var n = this._list[a], f = this._list[this._current];\n f && (f.track.mode = \"hidden\"), n ? (this._applyStyle(n.style), n.track.mode = \"showing\", this._current = a) : this._current = -1, this.emit(u.a.SUBTITLE_TRACK_SWITCHED, { level: this._current });\n }\n }, s.reset = function() {\n w.b.i(\"subtitle\", \"reset\"), this._list.forEach(function(a) {\n (function(n) {\n var f = n.mode;\n if (f === \"disabled\" && (n.mode = \"hidden\"), n.cues) {\n for (var b = n.cues.length; b--; )\n n.removeCue(n.cues[b]);\n f === \"disabled\" && (n.mode = f);\n }\n })(a.track), a.track.mode = \"hidden\";\n }), this._listPos = 0, this._current = -1, this._vttCCs = { ccOffset: 0, presentationOffset: 0, 0: { start: 0, prevCC: -1, new: !1 } }, this._removeStyle();\n }, s.parseVTTs = function(a, n, f) {\n var b = this, N = this._list[this._current];\n N && ky(a, f, n, this._vttCCs, f, n, function(j, se) {\n j.forEach(function(ue) {\n (function(Te, De) {\n var Ne = Te.mode;\n if (Ne === \"disabled\" && (Te.mode = \"hidden\"), Te.cues && !Te.cues.getCueById(De.id))\n try {\n if (Te.addCue(De), !Te.cues.getCueById(De.id))\n throw new Error(\"addCue is failed for: \" + De);\n } catch (ht) {\n w.b.d(\"[texttrack-utils]: \" + ht);\n var $e = new self.TextTrackCue(De.startTime, De.endTime, De.text);\n $e.id = De.id, Te.addCue($e);\n }\n Ne === \"disabled\" && (Te.mode = Ne);\n })(N.track, ue);\n }), se && (N.style += se, b._applyStyle(N.style));\n }, function(j) {\n });\n }, s.destroy = function() {\n this._ctx.video && this._ctx.video.textTracks.removeEventListener(\"change\", this._onTextTrackChange), this.reset(), this._list = [], this.removeAllListeners();\n }, s._getTextTrack = function() {\n var a;\n if (this._listPos < this._list.length)\n a = this._list[this._listPos].track, this._listPos++;\n else {\n var n = this._ctx.video;\n n && (a = n.addTextTrack(\"subtitles\"), this._list.push({ track: a, style: \"\" }), this._listPos++);\n }\n return a;\n }, s._applyStyle = function(a) {\n a && (this._styleNode || (this._styleNode = document.createElement(\"style\"), document.head.appendChild(this._styleNode)), this._styleNode.innerHTML = a);\n }, s._removeStyle = function() {\n this._styleNode && (this._styleNode.innerHTML = \"\", document.head.removeChild(this._styleNode), this._styleNode = void 0);\n }, A;\n }(W.a), Iy = function() {\n function L(s) {\n this._ctx = void 0, this._sec1LoadDuration = 0, this._ctx = s, w.b.i(\"auto-lazyload\", s.stat.autoLazyLoad, s.stat.lazyLoadMaxDuration, s.stat.lazyLoadRecoverDuration);\n }\n var A = L.prototype;\n return A.update = function() {\n var s = this._ctx.lctx.current;\n !this._ctx.stat.isLive && this._ctx.stat.autoLazyLoad && s && (s.maxBitrate || s.bitrate) && (this._checkLazyLoadConf(s, 8 * this._ctx.loadRec.smoothedDownloadSpeed / 1e3), this.checkStreamingMux());\n }, A.checkStreamingMux = function() {\n var s, a = this._ctx, n = this._ctx.stat;\n if (n.box === P.g.flv && n.isLive)\n a.streamingMux = !0;\n else {\n var f = a.bufferedSec + (((s = a.mse) == null ? void 0 : s.getBufferQueueSec()) || 0), b = this._getLazyloadRange();\n if (n.lazyLoadRecoverDuration <= b.min + 1e-3) {\n var N = n.multipart ? this._currentTargetDurationMP() : this._currentTargetDuration();\n a.streamingMux = !(N && N / this._sec1LoadDuration * 3 < f);\n } else\n a.streamingMux = f < n.lazyLoadRecoverDuration + (n.lazyLoadMaxDuration - n.lazyLoadRecoverDuration) / 2;\n }\n }, A._checkLazyLoadConf = function(s, a) {\n var n = this._ctx, f = 0;\n if (s.maxBitrate)\n f = a / s.maxBitrate;\n else {\n if (!s.bitrate)\n return;\n f = a / (1.5 * s.bitrate);\n }\n f /= Math.max(1, n.playbackRate), this._sec1LoadDuration = f;\n var b = this._getLazyloadRange();\n f > 5 ? this._updateLazyloadConf(Math.max(b.min, n.stat.lazyLoadMaxDuration - 2)) : f < 3 && this._updateLazyloadConf(Math.min(b.max, n.stat.lazyLoadMaxDuration + 2));\n }, A._updateLazyloadConf = function(s) {\n this._ctx.stat.lazyLoadMaxDuration = s, this._ctx.stat.lazyLoadRecoverDuration = 0.8 * this._ctx.stat.lazyLoadMaxDuration;\n }, A._getLazyloadRange = function() {\n var s = 16, a = 30;\n if (this._ctx.stat.multipart) {\n var n = this._currentTargetDurationMP();\n n && (s = Math.max(16, 2 * n), a = Math.max(30, 4 * n));\n }\n return { min: s, max: a };\n }, A._currentTargetDuration = function() {\n var s = this._ctx.lctx.current;\n if (s) {\n var a = 8 * g.d / 1e3, n = s.maxBitrate || 1.5 * s.bitrate || 0;\n if (n)\n return a / n;\n }\n return 0;\n }, A._currentTargetDurationMP = function() {\n var s = this._ctx;\n if (s.stat.multipart) {\n var a = s.lctx.current;\n if (a)\n return a.targetduration || a.averagetargetduration || 0;\n }\n return 0;\n }, v()(L, [{ key: \"streamingMuxThreshold\", get: function() {\n var s = this._ctx.stat;\n if (s.box === P.g.flv && s.isLive)\n return 0;\n var a = this._getLazyloadRange();\n return s.lazyLoadRecoverDuration <= a.min + 1e-3 ? 0 : s.lazyLoadRecoverDuration + (s.lazyLoadMaxDuration - s.lazyLoadRecoverDuration) / 2;\n } }]), L;\n }();\n function Bl() {\n for (var L = document, A = 0, s = [\"hidden\", \"webkitHidden\", \"mozHidden\"]; A < s.length; A++) {\n var a = s[A];\n if (a in L)\n return L[a];\n }\n return null;\n }\n var Nt, Dy = function() {\n function L(s) {\n this._ctx = void 0, this._config = void 0, this._startDelay = 5e3, this._enabled = !1, this._lastTickTime = 0, this._ctx = s, this._config = s.stat.autoPlaybackRateConf;\n }\n var A = L.prototype;\n return A.tick = function() {\n if (this._enabled && this._ctx.video && !this._ctx.video.paused) {\n if (this._startDelay > 0) {\n var s = performance.now();\n return this._startDelay -= s - this._lastTickTime, void (this._lastTickTime = s);\n }\n this._nextPlayBackRate(this._ctx.bufferedSec, this._ctx.video);\n }\n }, A._nextPlayBackRate = function(s, a) {\n if (this._config) {\n var n = 1, f = this._config.rule, b = 0;\n for (b = 0; b < f.length && !(a.playbackRate >= f[b].rate); b++)\n ;\n if (f[b]) {\n var N = b < f.length - 1 ? f[b + 1] : null, j = b > 0 ? f[b - 1] : null;\n n = f[b].rate, j && s > j.lower && (n = j.rate), N && s < N.upper && (n = N.rate), a.playbackRate !== n && (w.b.i(\"playback-rate-manager\", \"auto change playback rate from \" + a.playbackRate + \" to \" + n), a.playbackRate = n);\n }\n }\n }, v()(L, [{ key: \"enabled\", get: function() {\n return this._enabled;\n }, set: function(s) {\n if (s !== this._enabled)\n if (s) {\n if (!this._config || !this._ctx.config.autoPlaybackRate)\n return;\n this._enabled = !0, this._lastTickTime = performance.now(), this._startDelay = this._config.startDelay ? 1e3 * this._config.startDelay : this._startDelay;\n } else\n this._enabled && this._ctx.video && (this._ctx.video.playbackRate = 1), this._enabled = !1;\n } }]), L;\n }(), oh = function() {\n function L(s) {\n this._info = void 0, this._info = s;\n }\n var A = L.prototype;\n return A.update = function(s) {\n var a = this;\n s.forEach(function(n) {\n a._info[n.index] = n;\n });\n }, A.timeToIndex = function(s) {\n if (this._info.length) {\n if (s < this._info[0].pts)\n return 0;\n if (s > this._info[this._info.length - 1].pts)\n return this._info.length - 1;\n for (var a, n, f, b = 0, N = this._info.length - 1; b <= N; )\n if (a = (b + N) / 2 | 0, n = this._info[a], (f = this._info[a + 1]) && f.pts - 1e-3 < s)\n b = a + 1;\n else {\n if (!(n && n.pts - 1e-3 > s))\n return a;\n N = a - 1;\n }\n }\n return -1;\n }, A.isIndexInRange = function(s) {\n return s >= 0 && s < this._info.length;\n }, A.indexToTime = function(s) {\n return this._info[s] ? this._info[s].pts : -1;\n }, A.getNextFramePTSByTime = function(s) {\n var a = this.timeToIndex(s);\n return a >= 0 && this._info[a + 1] ? this._info[a + 1].pts : -1;\n }, A.getPrevFramePTSByTime = function(s) {\n var a = this.timeToIndex(s) - 1;\n return a >= 0 && this._info[a] ? this._info[a].pts : -1;\n }, v()(L, [{ key: \"totalVideoFrames\", get: function() {\n return this._info.length;\n } }]), L;\n }(), Oy = function() {\n function L(s) {\n this._media = void 0, this._lastPlayTime = void 0, this._lastCheckTime = 0, this._waiting = !1, this._start = !1, this._media = s;\n }\n var A = L.prototype;\n return A.check = function() {\n var s = this._media, a = performance.now();\n if (!s.paused && !s.seeking && !s.ended && a - this._lastCheckTime >= 100) {\n if (this._lastCheckTime = a, !this._start)\n return typeof this._lastPlayTime == \"number\" && Math.abs(s.currentTime - this._lastPlayTime) > 0.017 && (this._start = !0), void (this._lastPlayTime = s.currentTime);\n s.currentTime === this._lastPlayTime ? this._waiting || (this._waiting = !0, this._customEvent(s, \"waiting\")) : this._waiting && (this._waiting = !1, this._customEvent(s, \"playing\")), this._lastPlayTime = s.currentTime;\n }\n }, A.reset = function() {\n this._lastPlayTime = void 0, this._start = !1, this._waiting = !1;\n }, A._customEvent = function(s, a) {\n if (s && s.dispatchEvent) {\n var n = document.createEvent(\"CustomEvent\");\n n.initCustomEvent(a, !0, !0, {}), s.dispatchEvent(n);\n }\n }, L;\n }(), Ny = i(20), Hi = i.n(Ny);\n (function(L) {\n L[L.NONE = 0] = \"NONE\", L[L.WAITING = 1] = \"WAITING\", L[L.SEEK = 2] = \"SEEK\", L[L.SELECT_BITRATE = 3] = \"SELECT_BITRATE\", L[L.INIT = 4] = \"INIT\", L[L.LOADING = 5] = \"LOADING\";\n })(Nt || (Nt = {}));\n var dr = \"kernel-base\", Vl = function(L) {\n function A(a) {\n var n;\n if ((n = L.call(this) || this)._video = void 0, n._error = void 0, n._hbTimer = void 0, n._stat = Nt.INIT, n._mediaInfo = void 0, n._levelSwitchId = 0, n._nextLevel = [], n._nextAudio = void 0, n._eventHandlers = void 0, !a)\n throw new Error(\"video is null\");\n return n._video = a, n._eventHandlers = { loadedmetadata: n._onVideoLoadedmetadata.bind(Hi()(n)), loadeddata: n._onVideoLoadeddata.bind(Hi()(n)), canplay: n._onVideoCanplay.bind(Hi()(n)), seeking: n._onVideoSeeking.bind(Hi()(n)), seeked: n._onVideoSeeked.bind(Hi()(n)), waiting: n._onVideoWaiting.bind(Hi()(n)), playing: n._onVideoPlaying.bind(Hi()(n)), pause: n._onVideoPause.bind(Hi()(n)), play: n._onVideoPlay.bind(Hi()(n)), error: n._onVideoError.bind(Hi()(n)), ended: n._onVideoEnded.bind(Hi()(n)), ratechange: n._onVideoRatechange.bind(Hi()(n)), durationchange: n._onVideoDurationchange.bind(Hi()(n)), timeupdate: n._onVideoTimeupdate.bind(Hi()(n)), progress: n._onVideoProgress.bind(Hi()(n)), emptied: n._onVideoEmptied.bind(Hi()(n)), resize: n._onVideoResize.bind(Hi()(n)) }, n._bindVideoEvents(), n;\n }\n x()(A, L);\n var s = A.prototype;\n return s.destroy = function() {\n this._stopHeartbeat(), this._unbindVideoEvents(), this.removeAllListeners();\n }, s.getError = function() {\n return this._error;\n }, s.setAudioTrack = function(a) {\n }, s.setSubtitleTrack = function(a) {\n }, s.seekToNextFrame = function() {\n var a = this._getNextFrameTime();\n a > 0 && (this._video.currentTime = a);\n }, s.seekToPrevFrame = function() {\n var a = this._getPrevFrameTime();\n a && (this._video.currentTime = a);\n }, s.getTotalVideoFrames = function() {\n return -1;\n }, s.getCurrentVideoFrame = function() {\n return -1;\n }, s.setCurretVideoFrame = function(a) {\n this._onError({ type: d.b.MEDIA_ERROR, details: d.a.CANNOT_SEEK_BY_FRAME_INDEX, fatal: !1, reason: \"unsupported\" });\n }, s.getTrackBufInfo = function() {\n }, s._getNextFrameTime = function() {\n var a = this._mediaInfo && this._mediaInfo.fps ? this._mediaInfo.fps : 30;\n return this._video.duration && !this._video.ended ? this._video.currentTime + 1 / a : -1;\n }, s._getPrevFrameTime = function() {\n var a = this._mediaInfo && this._mediaInfo.fps ? this._mediaInfo.fps : 30;\n return this._video.duration && this._video.currentTime - 1 / a >= 0 ? this._video.currentTime - 1 / a : -1;\n }, s._bindVideoEvents = function() {\n if (this._video)\n for (var a in this._eventHandlers)\n this._video.addEventListener(a, this._eventHandlers[a]);\n }, s._unbindVideoEvents = function() {\n if (this._video)\n for (var a in this._eventHandlers)\n this._video.removeEventListener(a, this._eventHandlers[a]);\n }, s._onVideoLoadedmetadata = function(a) {\n w.b.i(dr, \"loadedmetadata\");\n }, s._onVideoLoadeddata = function() {\n w.b.i(dr, \"loadeddata\"), this.emit(u.a.LOADEDDATA);\n }, s._onVideoCanplay = function() {\n w.b.i(dr, \"canplay \" + !!this._stat), this.emit(u.a.CANPLAY);\n }, s._onVideoSeeking = function() {\n w.b.i(dr, \"seeking \" + this._video.currentTime), this.emit(u.a.SEEKING);\n }, s._onVideoSeeked = function() {\n w.b.i(dr, \"seeked\"), this.emit(u.a.SEEKED);\n }, s._onVideoWaiting = function() {\n }, s._onVideoPlaying = function() {\n w.b.i(dr, \"playing\"), this._error || (this._stat = Nt.NONE, this._startHeartbeat(), this.emit(u.a.PLAYING));\n }, s._onVideoPause = function() {\n w.b.i(dr, \"pause. seeking: \" + this._video.seeking), this._video.ended || this.emit(u.a.PAUSE);\n }, s._onVideoPlay = function() {\n w.b.i(dr, \"play\", this._error), this.emit(u.a.PLAY);\n }, s._onVideoError = function(a) {\n }, s._onVideoEnded = function() {\n w.b.i(dr, \"ended\"), this.emit(u.a.ENDED), this._stopHeartbeat();\n }, s._onVideoRatechange = function() {\n w.b.v(dr, \"ratechange \" + this._video.playbackRate), this.emit(u.a.RATE_CHANGE);\n }, s._onVideoDurationchange = function() {\n this.emit(u.a.DURATION_CHANGE);\n }, s._onVideoTimeupdate = function() {\n this.emit(u.a.TIMEUPDATE);\n }, s._onVideoProgress = function() {\n this.emit(u.a.PROGRESS);\n }, s._onVideoEmptied = function() {\n w.b.i(dr, \"video emptied\");\n }, s._onVideoResize = function() {\n w.b.i(dr, \"video resize\");\n }, s._onError = function(a) {\n a.fatal && (this._error = a.details || d.a.UNKNOWN), w.b.i(dr, \"error\", this._error, a), this.emit(u.a.ERROR, a);\n }, s._heartbeat = function() {\n this.emit(u.a.HEARTBEAT);\n }, s._startHeartbeat = function() {\n this._hbTimer || (this._hbTimer = setInterval(this._heartbeat.bind(this), g.g));\n }, s._stopHeartbeat = function() {\n this._hbTimer && (clearInterval(this._hbTimer), this._hbTimer = void 0);\n }, A;\n }(W.a), ch = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this, a) || this)._decId = 1, n._audioSegmentCnt = 0, n._state = { streamTime: 0, stoped: !1, frameBufLen: 0, maxFrameBufLen: 0 }, n._onDecVideoReady = function() {\n n._waiting = !1, n.emit(u.a.DEC_VIDEO_READY), n._pausedOnWaiting = void 0;\n }, n._onDecWaiting = function() {\n var f, b;\n (f = n._ctx.video) != null && f.ended || (n._bufRules.onWaiting(), n._waiting = !0, n._pausedOnWaiting === void 0 && (n._pausedOnWaiting = !((b = n._ctx.video) == null || !b.paused)), n.emit(u.a.DECODER_WAITING));\n }, n._onRenBufUpdate = function(f) {\n }, n._onRenSeek = function(f) {\n w.b.i(\"yuv-renderer\", \"renderer seek event\", f), f.hitCache ? n._waiting = !1 : (n._reset(!0), n._updateState()), n._seeking = !1, n.emit(u.a.DECODER_SEEK, f);\n }, n._onRenError = function(f) {\n n.emit(u.a.ERROR, f);\n }, n._state.maxFrameBufLen = n._bufRules.maxFrameBufLen, n;\n }\n x()(A, L);\n var s = A.prototype;\n return s.init = function(a, n) {\n var f = this, b = this._evt;\n b.on(u.a.DEC_VIDEO_READY, this._onDecVideoReady), b.on(u.a.STEP, function(N) {\n return f.emit(u.a.STEP, N);\n }), b.on(u.a.DECODER_WAITING, this._onDecWaiting), b.on(u.a.RENDERER_BUF_UPDATE, this._onRenBufUpdate), b.on(u.a.RENDERER_SEEK, this._onRenSeek), b.on(u.a.ERROR, this._onRenError), this._r.id = this._decId, this._r.init(!1), this._ready = !0, this.start();\n }, s.setMediaInfo = function(a) {\n this._r.updateMediaInfo(a);\n }, s.appendData = function(a) {\n var n = this;\n a.samples.forEach(function(f) {\n f.yuv && n._r.append(f.yuv);\n });\n }, s.endOfData = function() {\n w.b.i(\"yuv-renderer\", \"endOfData\"), this._r.endOfData();\n }, s.seek = function(a) {\n w.b.i(\"yuv-renderer\", \"seek: \" + a + \" \" + this._seeking), a *= g.a, this._r.seek(a), this.start();\n }, s.seekWithLoad = function() {\n w.b.i(\"yuv-renderer\", \"seekWithLoad\"), this._reset(!0), this._updateState();\n }, s.clean = function(a) {\n a === void 0 && (a = 0), w.b.i(\"yuv-renderer\", \"clean\"), a ? this._r.flush(a) : this._reset(!1);\n }, s.decoderChange = function(a, n) {\n }, s.onParsingData = function(a) {\n var n = this;\n a.segments.forEach(function(f) {\n f.type === P.l.AUDIO && n._audioSegmentCnt++;\n });\n }, s._reset = function(a) {\n a === void 0 && (a = !1), this._decId++, this._audioSegmentCnt = 0, a || (this._seeking = !1), this._r.id = this._decId, this._r.reset(a), this._waiting = !0;\n }, s._updateState = function() {\n var a = this._ctx.cOutput.canvas;\n if (a instanceof HTMLCanvasElement) {\n var n, f = this._ctx.currentTime * g.a, b = !((n = this._ctx.video) == null || !n.ended), N = !1, j = this._checkResize(a), se = this._state;\n if (f !== 0 || this._audioSegmentCnt || (f = -1), se.streamTime === f && se.stoped === b && se.frameBufLen === this._r.frameBufLen && se.maxFrameBufLen === this._bufRules.maxFrameBufLen || (se.streamTime = f, se.stoped = b, se.frameBufLen = this._r.frameBufLen, se.maxFrameBufLen = this._bufRules.maxFrameBufLen, N = !0), !N && !this._waiting && !j)\n return;\n (N || j) && this._r.update(f, this._size.w, this._size.h, b, P.o.canvas, se.maxFrameBufLen);\n }\n }, v()(A, [{ key: \"isCanvasRenderer\", get: function() {\n return !0;\n } }, { key: \"decBufLow\", get: function() {\n return !1;\n } }]), A;\n }(fe), Py = [u.a.PRIV_NAL, u.a.SEI, u.a.LEVEL_SWITCH_FAILED, u.a.DEMUXER_DETECTED, u.a.MEDIA_DEMUX, u.a.MEDIA_CONNECTED, u.a.KEY_FRAME, u.a.RETRY, u.a.NEW_SOURCE, u.a.DISCONTINUITY, u.a.DOWNLOAD], At = \"kernel-base-mse\", Fl = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this, a.video) || this)._mse = void 0, n._trans = void 0, n._ctx = void 0, n._seekOnCanplay = !1, n._internalSeekFlag = !1, n._waitingHelper = void 0, n._audioCodecSwap = !1, n._mainTimer = void 0, n._skipSeekEvent = !1, n._subtitle = void 0, n._nextLevelMinBuffer = 3, n._seekRollbackTime = 0, n._videoDecProxy = void 0, n._recoverMediaErrorTime = 0, n._eme = void 0, n._autoLazyload = void 0, n._nativeVideoFunc = void 0, n._internalPauseFlag = !1, n._setLevelOnManifestParsed = void 0, n._preloader = void 0, n._playbackRateManager = void 0, n._flvLiveRetry = 0, n._flvLiveRetryTimer = void 0, n._liveEnd = !1, n._catchUpLive = !0, n._videoFrameMap = void 0, n._lastTimeupdateTime = 0, n._onMSEBufferFull = function() {\n n.emit(u.a.MSE_BUFFER_FULL), n._ctx.live ? n._video.paused && (n.stopLoad(), n._initMSE()) : n._trans && n._trans.setDownloadEnabled(!1);\n }, n._onMSEUpdate = function() {\n n.emit(u.a.MSE_UPDATE), n._stat !== Nt.NONE && n._ctx.isTimeinBuffered(n._video.currentTime) && n._video.readyState >= 3 ? (n._onVideoCanplay(), w.b.v(At, \"canplay polyfill\")) : n._seekOnCanplay && n._detectSeekOnCanplay();\n }, n._seekWithLoad = function() {\n var f;\n if (w.b.i(At, \"seek with load\"), (!n._ctx.stat.isLive || n._ctx.stat.liveShiftEnabled) && n._trans && n._mse) {\n var b = n._video.currentTime;\n if (!n._trans.isSeekable() && b >= g.m)\n return w.b.i(At, \"seek disabled, rollback: \" + n._seekRollbackTime + \" seekTime: \" + b), void (b !== n._seekRollbackTime && n._internalSeek(n._seekRollbackTime));\n n._preloader && n._preloader.active(!1), n._videoDecProxy && n._videoDecProxy.seekWithLoad(), n.emit(u.a.SEEK_WITH_LOAD), n._stat = Nt.SEEK, n._nextLevel.length && (n._nextLevel = n._nextLevel.slice(n._nextLevel.length - 1), n._nextLevel[0].data.time = b), n._mse.clean(), n._mse.setAppendEnabled(!1), (f = n._videoDecProxy) != null && f.isCanvasRenderer && (n._seekOnCanplay = !1), n._trans.seek(b, Me.a.msie || n._ctx.config.alwaysSeekKeyframe, !1);\n }\n }, n._ctx = a, n._autoLazyload = new Iy(n._ctx), n._catchUpLive = !!n._ctx.config.catchUpPausedLive, n._eme = new oe(n._ctx), n._eme.on(u.a.ERROR, function(f) {\n n._onError(f);\n }), a.video instanceof HTMLVideoElement && Me.a.x5 && Me.a.android && (n._waitingHelper = new Oy(n._video)), n._initMSE(), n;\n }\n x()(A, L);\n var s = A.prototype;\n return s.load = function(a) {\n this._startHeartbeat(), this._setLevelOnManifestParsed = void 0, this._load(a), this._preloader && (this._preloader.active(!1), this._preloader.clean());\n }, s.stopLoad = function() {\n w.b.i(At, \"call kernel stopLoad\"), this._stopFlvLiveRetryTimer(), this._preloader && this._preloader.clean(), this._playbackRateManager && (this._playbackRateManager.enabled = !1), this._videoDecProxy && this._videoDecProxy.stop(), this._trans && (this._destroyTrans(), this._stopHeartbeat(), this.emit(u.a.STOP_LOAD));\n }, s.destroy = function() {\n var a, n;\n this._stopFlvLiveRetryTimer(), this._waitingHelper = void 0, this._stopMainTimer(), this._stopVideo(), this._destroyDecoder(), (a = this._subtitle) == null || a.destroy(), this._eme.destory(), this._nativeVideoFunc && (this._video.play = this._nativeVideoFunc.play, this._video.pause = this._nativeVideoFunc.pause), this._videoFrameMap = void 0, gt(), (n = this._preloader) == null || n.destroy(), L.prototype.destroy.call(this);\n }, s.resume = function() {\n w.b.i(At, \"call resume\"), this._ctx.live && this._liveEnd || (this._trans || this._load(P.f.internal), this._video.paused && this._video.play());\n }, s.refresh = function() {\n if (this._ctx.live) {\n if (this._liveEnd)\n return;\n this._flvLiveRetry = 0;\n } else\n this._ctx.stat.startFromSec = this._video.currentTime;\n this._reload(), this._error = void 0;\n }, s.onAbrLevelsUpdated = function() {\n var a;\n (a = this._trans) == null || a.onAbrLevelsUpdated();\n }, s.setCurrentLevel = function(a) {\n var n;\n return w.b.i(At, \"set currentLevel\", a), this._verifyLevelValue(a) && this._error ? (w.b.i(At, \"set currentLevel on error. refresh\"), this._ctx.lctx.currentIdx = a, void this.refresh()) : !this._verifyLevel(a) || a === this._ctx.lctx.currentIdx && !this._ctx.lctx.abr || this._error ? (w.b.i(At, \"set currentLevel fail.\", !this._verifyLevel(a), a, this._ctx.lctx.currentIdx, !this._ctx.lctx.abr, this._error), void this.emit(u.a.LEVEL_SWITCH_FAILED)) : a < 0 ? (w.b.i(At, \"set currentLevel to auto.\"), void this.setNextLevel(-1)) : this._ctx.isSwitchLevelByReload ? (this._ctx.lctx.currentIdx = a, this._setLevelOnManifestParsed = a, void (this._video.ended ? (w.b.i(At, \"set currentLevel on manifest parsed. reset trans\"), this._destroyTrans(), this._destroyMSE(), this._destroyDecoder()) : (w.b.i(At, \"set currentLevel on manifest parsed. reload\"), this._reload()))) : (this._stat !== Nt.INIT && this._stat !== Nt.LOADING && (this._stat = Nt.SELECT_BITRATE, this._seekOnCanplay = !0), this._mse && (this._mse.clean(), this._ctx.streamingMux = !0), (n = this._trans) == null || n.setCurrentLevel(a), this._videoDecProxy && this._videoDecProxy.clean(), void (!this._ctx.stat.isLive && this._preloader && this._preloader.active(!1)));\n }, s.setNextLevel = function(a) {\n var n;\n if (w.b.i(At, \"set nextLevel\", a), this._verifyLevelValue(a) && this._error)\n return this._ctx.lctx.currentIdx = a, void this.refresh();\n this._verifyLevel(a) && !this._error ? this._ctx.bufferedSec < this._nextLevelMinBuffer && a >= 0 || a >= 0 && this._ctx.isSwitchLevelByReload ? this.setCurrentLevel(a) : (n = this._trans) == null || n.setNextLevel(a) : this.emit(u.a.LEVEL_SWITCH_FAILED);\n }, s.setAudioTrack = function(a) {\n this._trans && a !== this._ctx.lctx.audioIdx && this._ctx.lctx.audioTracks.length > 1 && (this._trans.setAudioTrack(a), this._stat !== Nt.INIT && this._stat !== Nt.LOADING && (this._stat = Nt.SELECT_BITRATE, this._seekOnCanplay = !0), this._mse && (this._mse.clean(), this._ctx.streamingMux = !0));\n }, s.setSubtitleTrack = function(a) {\n this._trans && a !== this._ctx.lctx.subtitleIdx && this._ctx.lctx.subtitleTracks.length >= 1 && this._subtitle && this._subtitle.select(a);\n }, s.liveEnd = function() {\n w.b.i(At, \"liveEnd\", this._ctx.stat.isLive), this._ctx.stat.isLive && (this._ctx.stat.isLive = !1, this._liveEnd = !0, this._stopFlvLiveRetryTimer());\n }, s.jumpToLiveTime = function() {\n var a = this._ctx;\n if (a.stat.isLive && a.stat.liveShiftEnabled) {\n var n = a.liveStartLocalTime;\n n && (w.b.i(At, \"jumpToLiveTime: \" + n), this._video.currentTime = n, a.stat.liveShift = !1);\n }\n }, s.getTotalVideoFrames = function() {\n return this._videoFrameMap ? this._videoFrameMap.totalVideoFrames : -1;\n }, s.getCurrentVideoFrame = function() {\n return this._videoFrameMap ? this._videoFrameMap.timeToIndex(this._video.currentTime) : -1;\n }, s.preload = function(a, n) {\n var f = this, b = this._ctx;\n !this._preloader && rh && (this._preloader = new rh(b), this._preloader.on(u.a.PRELOAD_COMPLETE, function() {\n return f.emit(u.a.PRELOAD_COMPLETE);\n }), this._preloader.on(u.a.DOWNLOAD, function(N) {\n return f.emit(u.a.DOWNLOAD, N);\n })), this._preloader && (this._preloader.add(a, n), this._trans || this._preloader.active(!0));\n }, s.seekToNextFrame = function() {\n if (!(this.getCurrentVideoFrame() >= this.getTotalVideoFrames() - 1))\n if (this._videoDecProxy)\n this._videoDecProxy.step(P.j.NEXT);\n else if (this._videoFrameMap) {\n var a = this._videoFrameMap.getNextFramePTSByTime(this._video.currentTime);\n a >= 0 && (this._video.currentTime = a + 1e-3);\n } else\n L.prototype.seekToNextFrame.call(this);\n }, s.seekToPrevFrame = function() {\n if (this.getCurrentVideoFrame() !== 0)\n if (this._videoDecProxy)\n this._videoDecProxy.step(P.j.PREV);\n else if (this._videoFrameMap) {\n var a = this._videoFrameMap.getPrevFramePTSByTime(this._video.currentTime);\n a >= 0 && (this._video.currentTime = a + 1e-3);\n } else\n L.prototype.seekToPrevFrame.call(this);\n }, s.setCurretVideoFrame = function(a) {\n this._videoFrameMap && this._videoFrameMap.isIndexInRange(a) ? this._videoFrameMap.indexToTime(a) >= 0 ? this._video.currentTime = this._videoFrameMap.indexToTime(a) + 1e-3 : this._onError({ type: d.b.MEDIA_ERROR, details: d.a.CANNOT_SEEK_BY_FRAME_INDEX, fatal: !1, reason: a + \" out of range: [0, \" + this.getTotalVideoFrames() + \"]\" }) : L.prototype.setCurretVideoFrame.call(this, a);\n }, s.getTrackBufInfo = function() {\n var a;\n return (a = this._mse) == null ? void 0 : a.trackBufInfo;\n }, s._onVideoLoadedmetadata = function() {\n !this._video.videoWidth && this._ctx.canCodecFallback && this.emit(u.a.FALLBACK_H264, { type: P.h.FALLBACK_H264, message: \"buildin \" + this._ctx.stat.codecType + \" dec no width.\", code: 0 });\n }, s._onVideoPause = function() {\n L.prototype._onVideoPause.call(this), this._ctx.config.catchUpPausedLive && !this._ctx.stat.liveShift && (this._catchUpLive = !0);\n }, s._onVideoPlaying = function() {\n if (!this._error && this._ctx.live) {\n var a = Le(this._ctx.stat.box) ? this._ctx.stat.multipartLiveDelay || 0 : this._ctx.config.defaultSpts;\n if (a < 0 && this._ctx.bufferedSec > -a / 1e3 + 1 && this._catchUpLive) {\n var n = this._ctx.bufferedEnd + a / 1e3;\n this._ctx.isTimeinBuffered(n) && this._internalSeek(n);\n }\n this._catchUpLive = !1;\n }\n L.prototype._onVideoPlaying.call(this);\n }, s._onVideoPlay = function() {\n this._error || this._trans || this.load(), this._videoDecProxy && (this._videoDecProxy.start(), this._videoDecProxy.waiting && this._videoDecProxy.isCanvasRenderer && (this._videoDecProxy.pausedOnWaiting = !1, this._internalPause())), L.prototype._onVideoPlay.call(this);\n }, s._onVideoEnded = function() {\n this._seekRollbackTime = 0, this._internalSeekFlag = !1, this._skipSeekEvent = !1, L.prototype._onVideoEnded.call(this);\n }, s._initMSE = function() {\n var a = this;\n (this._mse && (this._mse.hasTrackInfo() || this._video.error) || this._eme.isActive) && (w.b.i(At, \"rebuild mse\"), URL.revokeObjectURL(this._video.src), this._destroyMSE(), this._eme.isActive && (w.b.i(At, \"eme reset src\"), this._video.src = \"\", this._eme.reset())), this._mse ? this._mse.clean() : (this._mse = new Ee(this._ctx.config, this._ctx.stat), this._mse.attach(this._video), this._ctx.mse = this._mse, this._mse.on(u.a.ERROR, function(n) {\n a._onError(n);\n }), this._mse.on(u.a.MSE_BUFFER_FULL, this._onMSEBufferFull), this._mse.on(u.a.MSE_UPDATE, this._onMSEUpdate));\n }, s._verifyLevel = function(a) {\n return !!(this._trans && this._mse && this._verifyLevelValue(a));\n }, s._verifyLevelValue = function(a) {\n return this._ctx.lctx.levels.length > 0 && a < this._ctx.lctx.levels.length;\n }, s._detectSeekOnCanplay = function() {\n this._seekOnCanplay && this._mse && !this._mse.hasCleanUpTask() && this._ctx.isTimeinBuffered(this._video.currentTime + 1e-3) && (w.b.i(At, \"seek on canplay \" + this._video.currentTime + \" + 0.001\"), this._seekOnCanplay = !1, this._internalSeek(this._video.currentTime + 1e-3));\n }, s._internalSeek = function(a) {\n this._internalSeekFlag = !0;\n try {\n this._video.currentTime = a;\n } catch (n) {\n }\n }, s._initTrans = function() {\n var a = this._trans = new ih(this._ctx);\n this._transmuxerEvent(a), a.init(), this._waitingHelper && this._waitingHelper.reset();\n }, s._transmuxerEvent = function(a) {\n var n = this, f = this._mse, b = this._ctx;\n a.on(u.a.PARSING_DATA, this._onParsingData.bind(this)), a.on(u.a.PARSING_INIT_SEGMENT, function(N) {\n var j;\n if (n._nextLevel.length) {\n var se = n._nextLevel.filter(function(ht) {\n return !ht.switched;\n })[0];\n se && (se.switched = !0, n.emit(u.a.LEVEL_SWITCHED, o()({}, se.data)));\n }\n n._nextAudio && (n.emit(u.a.AUDIO_TRACK_SWITCHED, n._nextAudio), n._nextAudio = void 0);\n var ue = N.tracks.rawVideo || N.tracks.video, Te = N.tracks.audio, De = {};\n if (Te) {\n var Ne = Te.metadata;\n De.hasAudio = !0, De.channel = Ne.channel, De.audioBitrate = Ne.audioBitrate, De.audioSampleRate = Ne.audioSampleRate, De.audioCodec = Te.codec, De.audioCodecType = Te.codecType;\n }\n if (ue) {\n var $e = ue.metadata;\n De.hasVideo = !0, $e && !$e.isFillVideo && (De.width = $e.width, De.height = $e.height, De.rotation = $e.rotation, De.fps = $e.fps, De.profile = $e.profile, De.level = $e.level, De.chromaFormat = $e.chromaFormat, De.bitDepth = $e.bitDepth, De.videoBitrate = $e.videoBitrate, $e.colorInfo && (De.colorSpace = Object(Sa.e)($e.colorInfo)), De.videoCodec = ue.codec, De.videoCodecType = ue.codecType), o()(De, ue.metadata);\n }\n b.stat.codecType = De.videoCodecType = (ue == null ? void 0 : ue.codecType) || P.b.unknown, n._ctx.stat.audioCodec = ((j = n._ctx.lctx.current) == null ? void 0 : j.audioCodec) || De.audioCodec || \"\", b.lctx.current && (!b.lctx.current.bitrate && De.videoBitrate && De.audioBitrate && (b.lctx.current.bitrate = De.videoBitrate + De.audioBitrate), !b.lctx.current.maxBitrate && ue != null && ue.metadata && ue.metadata.videoMaxBitrate && Te != null && Te.metadata.audioMaxBitrate && (b.lctx.current.maxBitrate = ue.metadata.videoMaxBitrate + Te.metadata.audioMaxBitrate)), De.videoDecoder = b.stat.decoder, n._videoDecProxy && n._videoDecProxy.setMediaInfo(o()({}, De)), n.emit(u.a.MEDIA_INFO, De), n._mediaInfo = De, w.b.i(At, \"mediainfo\", De), f && f.trackInfo(N), n._startMainTimer();\n }), a.on(u.a.ERROR, function(N) {\n n._onError(N);\n }), a.on(u.a.LOAD_END, this._onLoadEnd.bind(this)), a.on(u.a.SUBTITLE_LOADED, function(N) {\n n._subtitle && n._subtitle.parseVTTs(N.data, N.start, N.cc);\n }), a.on(u.a.AUDIO_TRACK_SWITCHING, function(N) {\n N.id = n._levelSwitchId, n._levelSwitchId++, N.auto = b.lctx.abr, !N.smooth && f && (f.clean(), n._ctx.streamingMux = !0), n.emit(u.a.AUDIO_TRACK_SWITCHING, { time: N.time, level: N.level, smooth: N.smooth, auto: N.auto, id: N.id }), n._nextAudio = N;\n }), a.on(u.a.LEVEL_SWITCHING, function(N) {\n var j;\n N.id = n._levelSwitchId, n._levelSwitchId++, N.auto = b.lctx.abr, !N.smooth && f && (f.clean(), n._ctx.streamingMux = !0), typeof N.level == \"number\" && (N.bitrate = N.level < 0 ? -1 : ((j = b.lctx.levels[N.level]) == null ? void 0 : j.bitrate) || 0), n.emit(u.a.LEVEL_SWITCHING, { time: N.time, bitrate: N.bitrate, level: N.level, smooth: N.smooth, auto: N.auto, id: N.id }), N.level === -1 ? n.emit(u.a.LEVEL_SWITCHED, { time: N.time, bitrate: N.bitrate, level: N.level, smooth: N.smooth, auto: N.auto, id: N.id }) : (N.smooth ? n._nextLevel = n._nextLevel.sort(function(se, ue) {\n return se.data.time - ue.data.time;\n }).filter(function(se) {\n return se.data.time < N.time - 0.5;\n }) : n._nextLevel = [], n._nextLevel.push({ switched: !1, data: N }));\n }), a.on(u.a.BUFFER_CLEANING, function(N) {\n f && f.clean(N.startSec, n._video.duration), n._videoDecProxy && n._videoDecProxy.clean(1e3 * N.startSec);\n }), a.on(u.a.METADATA, this._onMetadata.bind(this)), a.on(u.a.VIDEO_FRAME_INFO, this._onVideoFrameInfo.bind(this)), a.on(u.a.MANIFEST_PARSED, function() {\n if (w.b.i(At, \"manifest parsed\"), typeof n._setLevelOnManifestParsed == \"number\")\n return a.setCurrentLevel(n._setLevelOnManifestParsed), n._setLevelOnManifestParsed = void 0, void w.b.i(At, \"set level. manifest parsed stop event.\");\n var N = b.lctx.startIdx;\n typeof N == \"number\" && N >= 0 && N < b.lctx.levels.length && (a.setCurrentLevel(N), w.b.i(At, \"set level from level startIdx.\")), b.lctx.subtitleTracks.length && n._initSubtitle(), b.config.emeEnabled && n._eme.onManifestParsed(b.lctx.levels, b.stat.drm), n.emit(u.a.MANIFEST_PARSED);\n }), a.on(u.a.AUDIO_TRACK_UPDATED, function(N) {\n N && ((!b.stat.isLive || b.stat.liveShiftEnabled) && N.duration && f && f.updateDuration(N.duration), w.b.i(At, \"audio track update\", N), n.emit(u.a.AUDIO_TRACK_UPDATED, N));\n }), a.on(u.a.LEVEL_UPDATED, function(N) {\n N && ((!b.stat.isLive || b.stat.liveShiftEnabled) && N.duration && f && f.updateDuration(N.duration), w.b.i(At, \"level update\", N), n.emit(u.a.LEVEL_UPDATED, N));\n }), a.on(u.a.VIDEO_SEEK, function(N) {\n if (N.sec !== b.currentTime) {\n n._skipSeekEvent = !0;\n try {\n n._internalSeek(N.sec);\n } catch (j) {\n }\n }\n }), a.on(u.a.RAW_DATA, function(N) {\n n._videoDecProxy && n._videoDecProxy.appendData(N), n._ctx.loadRec.onRaw(N);\n }), a.on(u.a.VIDEO_CODEC_DETECTED, function(N) {\n if (w.b.i(At, \"video codec detected. dec:\" + N.decoder + \", codec:\" + N.codecType + \", bitDepth:\" + N.bitDepth + \" \" + N.timeOffset), N.decoder && (n._ctx.stat.decoder = N.decoder), n._videoDecProxy && N.decoder === P.c.buildin)\n return n._videoDecProxy.decoderChange(P.c.buildin, N.timeOffset || 0), void (b.config.ensureVideo ? n._customWaitingEnded() : (b.config.ensureVideo = !0, b.cOutput.updateRendererType(P.o.video), b.cOutput.rendererType === P.o.video && n.emit(u.a.VIDEO_RENDERER_CHANGE, { enabled: !0, canvas: void 0, type: P.o.video }), n._reload(!n._videoDecProxy.pausedOnWaiting)));\n N.decoder === P.c.buildin && (b.cOutput.updateRendererType(P.o.video), b.cOutput.rendererType === P.o.canvas && n.emit(u.a.VIDEO_RENDERER_CHANGE, { enabled: !0, canvas: b.cOutput.canvas, type: P.o.canvas })), N.enabled && N.decoder === P.c.wasm && oo ? (n._initCanvasRenderer(oo, N.codecType, N.bitDepth), n._videoDecProxy && n._videoDecProxy.decoderChange(P.c.wasm, N.timeOffset || 0)) : N.enabled && N.decoder === P.c.none && b.stat.box === P.g.yuv && ch && n._initCanvasRenderer(ch, N.codecType, N.bitDepth);\n }), a.on(u.a.LOADER_CHUNK_ARRIVAL, function(N) {\n n.emit(u.a.LOADER_CHUNK_ARRIVAL, N), n._autoLazyload.update();\n }), Py.forEach(function(N) {\n return a.on(N, function(j) {\n return n.emit(N, j);\n });\n });\n }, s._initCanvasRenderer = function(a, n, f) {\n var b = this;\n f === void 0 && (f = 8);\n var N = this._mse, j = this._ctx;\n if (!this._videoDecProxy) {\n var se;\n N && N.setAppendEnabled(!1), j.stat.mainThreadRendering = !!j.cOutput.hasVPP || j.config.mainThreadRendering, j.cOutput.updateRendererType(P.o.canvas);\n var ue = this._videoDecProxy = new a(j);\n this._injectVideo(), ue.on(u.a.ERROR, function(Te) {\n return b._onError(Te);\n }), ue.on(u.a.DEC_LIB_LOADED, function(Te) {\n return b.emit(u.a.DEC_LIB_LOADED, Te);\n }), ue.on(u.a.DEC_VIDEO_READY, this._videoDecFrameReady.bind(this)), ue.on(u.a.STEP, this._videoDecStep.bind(this)), ue.on(u.a.DECODER_SEEK, this._h265Seek.bind(this)), ue.on(u.a.DECODER_WAITING, this._videoDecWaiting.bind(this)), ue.on(u.a.VIDEO_RENDERER_CHANGE, function(Te) {\n j.cOutput.updateRendererType(Te.type) && (Te.type = j.cOutput.rendererType, b.emit(u.a.VIDEO_RENDERER_CHANGE, Te));\n }), ue.on(u.a.DECODER_MEDIA_INFO, function(Te) {\n var De = b._mediaInfo;\n De && (De.width = Te.width, De.height = Te.height, De.codedWidth = Te.codedWidth, De.codedHeight = Te.codedHeight, De.sar = Te.sar, De.profile = Te.profile, De.level = Te.level, De.chromaFormat = Te.chromaFormat, De.bitDepth = Te.bitDepth, Te.colorInfo && (De.colorSpace = Object(Sa.e)(Te.colorInfo)), ue.setMediaInfo(o()({}, De)), b.emit(u.a.MEDIA_INFO, b._mediaInfo));\n }), ue.init(n, f), (se = this._mse) != null && se.ended() && ue.endOfData(), this.emit(u.a.VIDEO_RENDERER_CHANGE, { enabled: !0, canvas: j.cOutput.canvas, type: P.o.canvas });\n }\n }, s._videoDecFrameReady = function() {\n w.b.i(At, \"h265 video ready\"), this._customWaitingEnded(), this._ctx.live ? this._updateBufferControl() : this._mse && this._mse.setAppendEnabled(!0);\n }, s._videoDecStep = function(a) {\n if (w.b.i(At, \"h265 step frame\", a), a.type) {\n var n = a.time / 1e3;\n a.type === P.j.NEXT ? (n < 0 && (n = this._getNextFrameTime()), n !== this._video.currentTime && (this._skipSeekEvent = !0, this._internalSeek(n))) : n >= 0 ? n !== this._video.currentTime && (this._skipSeekEvent = !0, this._internalSeek(n)) : this._video.currentTime = this._getPrevFrameTime();\n }\n }, s._updateBufferControl = function() {\n var a = this._ctx;\n if (this._trans && this._mse)\n if (a.stat.multipart || a.stat.isLive || this._stat !== Nt.WAITING) {\n var n = a.bufferedSec, f = this._mse.getBufferQueueSec(), b = !0;\n if ((n < a.stat.lazyLoadRecoverDuration || a.live && !this._mse.getAppendEnabled()) && this._mse.setAppendEnabled(!this._videoDecProxy || !this._videoDecProxy.isCanvasRenderer || !this._videoDecProxy.waiting), a.stat.lazyLoadMaxDuration > 0 && n + f >= (this._mse.readyState === \"closed\" ? 1 : a.stat.lazyLoadMaxDuration))\n b = !1;\n else {\n if (!(n + f < a.stat.lazyLoadRecoverDuration))\n return void this._autoLazyload.checkStreamingMux();\n this._autoLazyload.checkStreamingMux(), b = !0;\n }\n !a.live && this._trans && (w.b.v(At, \"download: \" + b + \" buffered:\" + n + \" mse:\" + f), !b && this._videoDecProxy && this._videoDecProxy.decBufLow && (w.b.i(At, \"dec data empty, download enable.\"), b = !0), this._trans.setDownloadEnabled(b)), this._mse.pendingNum() && this._mse.refresh();\n } else\n this._trans.setDownloadEnabled(!0);\n }, s._onVideoSeeking = function() {\n var a;\n if (w.b.i(At, \"seek to \" + this._video.currentTime + \" internal:\" + this._internalSeekFlag), this._ctx.config.forceRenderOnSeekEnd && ((a = this._videoDecProxy) == null || !a.isCanvasRenderer) && this._video.currentTime >= this._video.duration)\n return w.b.i(At, \"seek to end, force render. paused: \" + this._video.paused), this._video.currentTime = this._video.duration - 1e-3, void (this._video.paused && this._video.play());\n if (this._mediaInfo && !(this._video && this._video.currentTime >= this._video.duration && this._mse && this._mse.ended())) {\n this._ctx.streamingMux = !0;\n var n = this._internalSeekFlag;\n if (this._internalSeekFlag = !1, this._skipSeekEvent)\n this._skipSeekEvent = !1;\n else {\n this.emit(u.a.SEEKING, { internal: n });\n var f = this._video.currentTime;\n if (n || this._ctx.updateLiveShiftStatuByTime(f), this._videoDecProxy && this._videoDecProxy.isCanvasRenderer) {\n if (n)\n return;\n this._videoDecProxy.seek(f);\n } else\n this._ctx.isTimeinBuffered(f) ? n || (Me.a.msedge || Me.a.msie ? (this._seekOnCanplay = !0, this._seekWithLoad()) : this._trans && Le(this._ctx.stat.box) && this._trans.seek(f, !1, !0)) : f === 0 && this._video.buffered.length > 0 && this._video.buffered.start(0) < 1 ? n || this._internalSeek(this._video.buffered.start(0)) : this._seekWithLoad();\n }\n }\n }, s._h265Seek = function(a) {\n w.b.i(At, \"h265 seek frame\", a), a.hitCache ? this._updateBufferControl() : this._seekWithLoad();\n }, s._videoDecWaiting = function() {\n w.b.i(At, \"h265 render buf empty\"), this._customWaiting();\n }, s._customWaiting = function() {\n !this._video.ended && this._videoDecProxy && this._videoDecProxy.isCanvasRenderer && (this._video.paused || this._internalPause(), function(a, n, f) {\n if (a && a.dispatchEvent && window.CustomEvent) {\n var b = new CustomEvent(n, f);\n a.dispatchEvent(b);\n }\n }(this._video, \"waiting\"));\n }, s._customWaitingEnded = function() {\n this._videoDecProxy && this._videoDecProxy.pausedOnWaiting === !1 && !this._video.ended && this._video.play();\n }, s._destroyTrans = function() {\n this._trans && (this._trans.destroy(), this._trans.removeAllListeners(), this._trans = void 0);\n }, s._destroyMSE = function() {\n this._ctx.mse = void 0, this._mse && (this._mse.removeAllListeners(), this._mse.destroy(), this._mse = void 0);\n }, s._destroyDecoder = function() {\n this._videoDecProxy && (this._videoDecProxy.destroy(), this._videoDecProxy = void 0);\n }, s._reload = function(a) {\n a === void 0 && (a = !0), w.b.i(At, \"reload. play: \" + a), this._ctx.cOutput.reset(), this._ctx.live || (this._ctx.stat.startFromSec = this._video.currentTime), this._setLevelOnManifestParsed = this._ctx.lctx.abr ? -1 : this._ctx.lctx.currentIdx, this._nextLevel = [], this._internalSeekFlag = !1, this._stopVideo(), this._load(P.f.retry), a ? this._video.play() : this._video.pause();\n }, s._startMainTimer = function() {\n this._mainTimer || (this._mainTimer = setInterval(this._mainLoop.bind(this), 100));\n }, s._stopMainTimer = function() {\n this._mainTimer && (clearInterval(this._mainTimer), this._mainTimer = void 0);\n }, s._stopVideo = function() {\n w.b.i(At, \"stop video\"), this._video && (this._destroyTrans(), this._destroyDecoder(), this._destroyMSE(), URL.revokeObjectURL(this._video.src), this._video.src && (this._video.src = \"\"));\n }, s._mainLoop = function() {\n var a = this._ctx;\n a.stat.isLive ? (!this._playbackRateManager && a.config.autoPlaybackRateConf && (this._playbackRateManager = new Dy(a)), this._playbackRateManager && (this._playbackRateManager.enabled = !a.stat.liveShift, this._playbackRateManager.tick())) : this._playbackRateManager && (this._playbackRateManager.enabled = !1);\n var n = this._video;\n this._waitingHelper && a.stat.firstFrameLoaded && this._waitingHelper.check();\n var f = n.buffered.length > 1, b = this._stat === Nt.WAITING && !n.seeking || this._stat === Nt.LOADING || this._stat === Nt.INIT || this._stat === Nt.SEEK || this._stat === Nt.SELECT_BITRATE;\n if ((f || b) && !n.ended && this._mse && !this._mse.hasCleanUpTask() && this._mse.hasSourceBufferAppendStarted()) {\n var N = n.currentTime, j = a.currentBuffer(N), se = a.nextBuffer(N);\n b ? !j || j.end - N < 1 ? (se && w.b.i(At, \"try jump next A\"), this._jumpToBuf(se)) : this._video.buffered.length > 1 && j.end - N > 1 && (j && w.b.i(At, \"try jump next B\"), this._jumpToBuf(j)) : f && j && j.end - N <= 0.1 && (se && w.b.i(At, \"try jump next C\"), this._jumpToBuf(se));\n }\n this._nextLevel.length && this._checkLevelChange();\n }, s._jumpToBuf = function(a) {\n if (a) {\n var n = a.start + (Me.a.safari ? 0.3 : 1e-3);\n n > a.end && (n = a.start), this._internalSeek(n), w.b.i(At, \"jump to \" + n);\n }\n }, s._checkLevelChange = function() {\n var a = this._nextLevel[0];\n a && this._video.currentTime >= a.data.time && this._ctx.isTimeinBuffered(this._video.currentTime) && (a.switched || this.emit(u.a.LEVEL_SWITCHED, o()({}, a.data)), this.emit(u.a.LEVEL_SWITCH_PLAYING, a.data), this._nextLevel.shift());\n }, s._load = function(a) {\n w.b.i(At, \"_load start sec:\", this._ctx.stat.startFromSec), this._mediaInfo = void 0, this._error = void 0, this._internalSeekFlag = !1, this._stat = Nt.LOADING, this._nextLevel = [], this._stopMainTimer(), this._videoFrameMap = void 0, this._stopFlvLiveRetryTimer(), this._ctx.stat.isLive && (w.b.i(At, \"live stream clear frag\"), this._ctx.lctx.clearFrag()), this.emit(u.a.LOAD, { type: a }), this._subtitle && this._subtitle.reset(), this._destroyTrans(), this._destroyDecoder(), this._initMSE(), this._ctx.config.startPlayBufferSec && !a && this._mse && this._mse.setStartBufSec(this._ctx.config.startPlayBufferSec), this._startHeartbeat(), this._initTrans(), this._trans && this._trans.loadSource(), this._ctx.stat.isLive && (this._liveEnd = !1, this._ctx.config.autoPlaybackRate && this._playbackRateManager && (this._playbackRateManager.enabled = !0));\n }, s._onParsingData = function(a) {\n this._ctx.mse && this._ctx.mse.mediaSegment(a.segments), this._ctx.liveDelay.onParsing(a), this._ctx.loadRec.onParsing(a), this.emit(u.a.PARSING_DATA, a), this._videoDecProxy && this._videoDecProxy.onParsingData(a), this._updateBufferControl();\n }, s._onMetadata = function(a) {\n !this._ctx.stat.isLive && a.videoFramesInfo && (this._videoFrameMap = new oh(a.videoFramesInfo)), delete a.videoFramesInfo, typeof a.duration == \"number\" && this._mse && (delete a.keyframes, this._trans && !this._ctx.stat.multipart && this._mse.updateDuration(a.duration)), this.emit(u.a.METADATA, a);\n }, s._onVideoFrameInfo = function(a) {\n !this._ctx.stat.isLive && a.videoFramesInfo && (this._videoFrameMap ? this._videoFrameMap.update(a.videoFramesInfo) : this._videoFrameMap = new oh(a.videoFramesInfo));\n }, s._onLoadEnd = function(a) {\n a === void 0 && (a = !1), a || (this._ctx.stat.isLive = !1), this._mse && this._mse.endOfData(), this._videoDecProxy && this._videoDecProxy.endOfData(), this.emit(u.a.LOAD_END);\n }, s._onVideoCanplay = function() {\n L.prototype._onVideoCanplay.call(this), this._stat !== Nt.NONE && (this._stat = Nt.NONE, this._detectSeekOnCanplay(), this._checkLevelChange(), this._video.paused || this._onVideoPlaying());\n }, s._onVideoTimeupdate = function() {\n this._video.seeking || (this._seekRollbackTime = this._video.currentTime), L.prototype._onVideoTimeupdate.call(this), Bl() && performance.now() - this._lastTimeupdateTime > g.g && (this._updateBufferControl(), this._lastTimeupdateTime = performance.now());\n }, s._onVideoSeeked = function() {\n this._mediaInfo && L.prototype._onVideoSeeked.call(this);\n }, s._onVideoWaiting = function() {\n if (this._liveEnd && this._ctx.stat.box === P.g.flv && this._ctx.stat.isLive)\n this.stopLoad();\n else {\n this._stat = this._stat || Nt.WAITING;\n var a = this._ctx.bufferedSec, n = !this._video.ended && !this._video.seeking && this._stat === Nt.WAITING;\n this.emit(u.a.WAITING, { block: n, bufferedSec: a });\n }\n }, s._onVideoError = function(a) {\n var n;\n if (w.b.e(At, \"video error\", a), !this._error && this._mediaInfo) {\n var f = \"video error\";\n this._video && this._video.error && (f += \" code:\" + this._video.error.code + \" message:\" + this._video.error.message);\n var b = ((n = this._video.error) == null ? void 0 : n.code) || 0, N = K(d.c[b], f);\n if (b === 4) {\n if (this._ctx.canCodecFallback)\n return void this.emit(u.a.FALLBACK_H264, { type: P.h.FALLBACK_H264, message: \"buildin \" + this._ctx.stat.codecType + \" dec error. video error: \" + b, code: N });\n if (oo && this._ctx.stat.codecType === P.b.hevc && this._ctx.stat.decoder === P.c.buildin && this._ctx.config.wasmDecoderEnabled && pt.TYPE_SUPPORTED.hevc && !Me.a.mobile)\n return w.b.i(At, \"buildin hevc dec error\"), pt.TYPE_SUPPORTED.hevc = !1, this.emit(u.a.RETRY, { type: P.h.HEVC_DEC, message: \"buildin \" + (pt.isSupportHW ? \"hardware\" : \"software\") + \" hevc dec error. video error: \" + b, code: N }), void this._reload();\n }\n if (b === 3) {\n var j = performance.now();\n if ((!this._recoverMediaErrorTime || j - this._recoverMediaErrorTime > 3e3) && this._recoverSwapRemuxType(N))\n return void (this._recoverMediaErrorTime = j);\n if (this._recoverSwapAudioCodec(N))\n return;\n }\n this._onError({ type: d.b.MEDIA_ERROR, details: (b ? d.c[b] : d.a.VIDEO_ERROR) || d.a.VIDEO_ERROR, fatal: !0, reason: f });\n }\n }, s._heartbeat = function() {\n var a;\n L.prototype._heartbeat.call(this), this._trans && this._trans.heartbeat(), this._updateBufferControl(), this._trans && this._preloader && !this._ctx.stat.isLive && this._preloader.active(!this._ctx.stat.isNetworkInUse && ((a = this._mse) == null ? void 0 : a.readyState) !== \"closed\");\n }, s._onError = function(a) {\n if (a.type === d.b.NETWORK_ERROR && this._ctx.stat.isLive && this._ctx.stat.box === P.g.flv && this._flvLiveRetry < this._ctx.config.maxRetry)\n this._startFlvLiveRetryTimer(Math.max(this._ctx.config.retryDelay, 1e3 * this._ctx.bufferedSec), a);\n else {\n if (!this._ctx.stat.multipart && a.fatal) {\n var n = this._ctx.lctx.current;\n if (n && n.urlId < n.url.length - 1) {\n var f = K(a.details, a.reason, a.statusCode);\n return this.emit(u.a.RETRY, { type: P.h.BACKUP, message: \"trans error. use backup url.\", code: f }), n.urlId++, void this._reload();\n }\n }\n if (a.fatal) {\n if (a.details === d.a.REMUX_WORKER_ERROR && this._ctx.stat.webWorker)\n return this._ctx.stat.webWorker = !1, this.emit(u.a.RETRY, { type: P.h.REMUX, message: \"remux worker error\", code: K(a.details, a.reason, a.statusCode) }), void this._reload();\n this._video.error && this._destroyMSE(), this._stopMainTimer();\n }\n L.prototype._onError.call(this, a);\n }\n }, s._recoverSwapRemuxType = function(a) {\n var n, f = this._ctx.stat.gopRemux, b = this._ctx.streamingMux;\n return this._ctx.stat.box === P.g.flv && this._ctx.stat.isLive ? this._ctx.stat.gopRemux = !0 : this._ctx.streamingMux = !1, (f !== this._ctx.stat.gopRemux || b !== this._ctx.streamingMux) && (w.b.i(At, \"recover swap remux type\"), this.emit(u.a.RETRY, { type: P.h.CODEC_REMUX_TYPE, message: \"change remux type. video error: \" + ((n = this._video.error) == null ? void 0 : n.code), code: a }), this._reload(), !0);\n }, s._recoverSwapAudioCodec = function(a) {\n var n, f = this._ctx.stat.audioCodec;\n return !(this._audioCodecSwap || !f) && (f = f.indexOf(\"mp4a.40.5\") !== -1 ? \"mp4a.40.2\" : \"mp4a.40.5\", this._ctx.stat.audioCodec = f, this._audioCodecSwap = !0, this.emit(u.a.RETRY, { type: P.h.CODEC_AUDIO, message: \"change audio codec: \" + f + \". video error: \" + ((n = this._video.error) == null ? void 0 : n.code), code: a }), w.b.i(At, \"recover swap audio codec\"), this._reload(), !0);\n }, s._initSubtitle = function() {\n var a = this;\n this._trans && (!this._subtitle && sh && (this._subtitle = new sh(this._ctx), this._subtitle.on(u.a.SUBTITLE_TRACK_SWITCHED, function(n) {\n a._trans && (a._trans.setSubtitleTrack(n.level), a.emit(u.a.SUBTITLE_TRACK_SWITCHED, n));\n })), this._subtitle && this._subtitle.addTracks(this._ctx.lctx.subtitleTracks));\n }, s._internalPause = function() {\n this._internalPauseFlag = !0, this._video.pause();\n }, s._injectVideo = function() {\n var a = this;\n !this._nativeVideoFunc && this._videoDecProxy && (this._nativeVideoFunc = { play: this._video.play, pause: this._video.pause }, this._video.pause = function() {\n a._nativeVideoFunc.pause.call(a._video), a._videoDecProxy && a._videoDecProxy.waiting && a._videoDecProxy.isCanvasRenderer && !a._internalPauseFlag && (a._videoDecProxy.pausedOnWaiting = !0), a._internalPauseFlag = !1;\n }, this._video.play = function() {\n return a._videoDecProxy && a._videoDecProxy.waiting && a._videoDecProxy.isCanvasRenderer ? (a._videoDecProxy.pausedOnWaiting = !1, new Promise(function(n, f) {\n return n();\n })) : a._nativeVideoFunc.play.call(a._video);\n });\n }, s._startFlvLiveRetryTimer = function(a, n) {\n var f = this;\n if (!this._flvLiveRetryTimer) {\n var b = K(n.details, n.reason, n.statusCode);\n this._flvLiveRetryTimer = setTimeout(function(N) {\n w.b.i(At, \"live retry:\" + f._flvLiveRetry), f._flvLiveRetry++, f.emit(u.a.RETRY, { type: P.h.LIVE, message: \"reason: \" + (N == null ? void 0 : N.reason) + \". retry: \" + f._flvLiveRetry, code: b }), f._reload();\n }, a, n);\n }\n }, s._stopFlvLiveRetryTimer = function() {\n this._flvLiveRetryTimer && (clearTimeout(this._flvLiveRetryTimer), this._flvLiveRetryTimer = void 0);\n }, v()(A, [{ key: \"type\", get: function() {\n return P.a.mse;\n } }]), A;\n }(Vl), La = typeof document > \"u\" || typeof document.createElement != \"function\" ? void 0 : document.createElement(\"video\"), lh = { av1: ['video/mp4; codecs=\"av01.0.05M.08,mp4a.40.2\"'], hevc: ['video/mp4; codecs=\"hev1.1.6.L150.90,mp4a.40.2\"', 'video/mp4; codecs=\"hvc1.1.6.L150.90,mp4a.40.2\"'], h264: ['video/mp4; codecs=\"avc1.42E01E,mp4a.40.2\"'], opus: ['video/mp4; codecs=\"opus\"'], mp3: ['video/mp4; codecs=\"mp3\"'], aac: ['video/mp4; codecs=\"mp4a.40.2\"'] }, uh = { av1: ['video/mp4; codecs=\"av01.0.13T.10\"'], hevc: ['video/mp4; codecs=\"hev1.2.2.L150.90\"', 'video/mp4; codecs=\"hvc1.2.2.L150.90\"'], h264: ['video/mp4; codecs=\"avc1.6e0028\"'] }, My = { mp4: [\"video/mp4\", \"video/quicktime\"], flv: [\"video/x-flv\"], ts: [\"video/mp2t\"], matroska: [\"video/x-matroska\", \"video/webm\"], hls: [\"application/vnd.apple.mpegURL\", \"application/x-mpegURL\"], hls_ts: [\"application/vnd.apple.mpegURL\", \"application/x-mpegURL\"], hls_fmp4: [\"application/vnd.apple.mpegURL\", \"application/x-mpegURL\"], aac: [\"audio/aac\"], mp3: [\"audio/mpeg\", \"audio/mp3\"] }, cr = function() {\n function L() {\n }\n return L.isMSEAvailable = function() {\n if (L.MSE_AVAILABLE !== void 0)\n return L.MSE_AVAILABLE;\n if (!Fl)\n return L.MSE_AVAILABLE = !1, !1;\n var A = G(), s = k();\n if (L.MSE_API_AVAILABLE = !!(A && s && s.prototype && typeof s.prototype.appendBuffer == \"function\" && typeof s.prototype.remove == \"function\"), A && Me.a.mobile && L.MSE_API_AVAILABLE)\n try {\n var a = new A(), n = document.createElement(\"video\");\n n.src = URL.createObjectURL(a), URL.revokeObjectURL(n.src), L.MSE_AVAILABLE = !0;\n } catch (f) {\n L.MSE_AVAILABLE = !1;\n }\n else\n L.MSE_AVAILABLE = L.MSE_API_AVAILABLE;\n return L.MSE_AVAILABLE;\n }, L.isSupported = function(A) {\n return A === void 0 && (A = P.b.h264), L.isMSECodecSupported(A) && L.isMSEAvailable();\n }, L.isMSECodecSupported = function(A, s) {\n if (A === void 0 && (A = P.b.h264), s === void 0 && (s = !1), Me.a.msedge || Me.a.msie)\n return L.isMSEAvailable() && A === P.b.h264;\n if (A === P.b.hevc && L.playHEVCTest === !1)\n return !1;\n var a = s && uh[A] || lh[A];\n return !!a && a.reduce(function(n, f) {\n return n || L.isMSECodecStrSupported(f);\n }, !1);\n }, L.isVideoCodecSupported = function(A, s) {\n if (A === void 0 && (A = P.b.h264), s === void 0 && (s = !1), Me.a.msedge || Me.a.msie)\n return A === P.b.h264;\n if (A === P.b.hevc && L.playHEVCTest === !1)\n return !1;\n var a = s && uh[A] || lh[A];\n return !!a && a.reduce(function(n, f) {\n return n || !(!La || !La.canPlayType(f));\n }, !0);\n }, L.isVideoBoxSupported = function(A) {\n if (A === void 0 && (A = P.g.mp4), A === P.g.unknown)\n return !0;\n var s = My[A];\n return !!s && s.reduce(function(a, n) {\n return a || !(!La || !La.canPlayType(n));\n }, !1);\n }, L.isVideoCodecStrSupportedInMp4 = function(A, s) {\n return s === void 0 && (s = \"\"), !(!La || !La.canPlayType((s || \"video\") + '/mp4;codecs=\"' + A + '\"'));\n }, L.isWebRTCSupported = function() {\n return \"RTCPeerConnection\" in window && \"RTCRtpTransceiver\" in window;\n }, L.isMSECodecStrSupportedInMp4 = function(A, s) {\n var a;\n return s === void 0 && (s = \"\"), !((a = G()) == null || !a.isTypeSupported((s || \"video\") + '/mp4;codecs=\"' + A + '\"'));\n }, L.isMSECodecStrSupported = function(A) {\n var s = G();\n return !(!s || typeof s.isTypeSupported != \"function\" || !s.isTypeSupported(A));\n }, L.isChangeTypeSupported = function() {\n if (L._changeTypeSupported === void 0) {\n var A = k();\n L._changeTypeSupported = !(!A || A.prototype.changeType === void 0);\n }\n return L._changeTypeSupported;\n }, L.getVideoCodecCompatibilityByCodec = function(A) {\n var s = P.c.unsupported, a = !0;\n A === P.b.h264 ? s = L.isMSECodecSupported(P.b.h264) ? P.c.buildin : P.c.unsupported : A === P.b.av1 ? (s = L.isMSECodecSupported(P.b.av1) ? P.c.buildin : P.c.unsupported, a = Fe() >= 2) : A === P.b.hevc ? (s = L.isMSECodecSupported(P.b.hevc) ? P.c.buildin : P.c.unsupported) === P.c.buildin ? (Me.a.msedge && (s = P.c.unsupported), a = Fe() >= 2 || Me.a.safari) : a = L.wasmSmooth : A !== P.b.kvc3 && A !== P.b.kvc4 && A !== P.b.kvc5 && A !== P.b.kvc6 && A !== P.b.vvc && A !== P.b.kvc30 && A !== P.b.bvc2 || (s = typeof WebAssembly < \"u\" ? P.c.wasm : P.c.unsupported, a = L.wasmSmooth);\n var n = !1;\n return s === P.c.buildin && (n = L.isChangeTypeSupported(), A === P.b.hevc && this.playHEVCTest === !1 && (s = P.c.wasm)), { decoder: s, smooth: s !== P.c.unsupported && a, mix: n };\n }, L._threads = function() {\n try {\n return typeof WebAssembly < \"u\" && typeof MessageChannel < \"u\" && new MessageChannel().port1.postMessage(new SharedArrayBuffer(1)), WebAssembly.validate(new Uint8Array([0, 97, 115, 109, 1, 0, 0, 0, 1, 4, 1, 96, 0, 0, 3, 2, 1, 0, 5, 4, 1, 3, 1, 1, 10, 11, 1, 9, 0, 65, 0, 254, 16, 2, 0, 26, 11]));\n } catch (A) {\n return !1;\n }\n }, L._simd = function() {\n return typeof WebAssembly < \"u\" && WebAssembly.validate(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]));\n }, v()(L, null, [{ key: \"isSupportSimd\", get: function() {\n return L._isSupportSimd === void 0 && (L._isSupportSimd = L._simd()), L._isSupportSimd;\n } }, { key: \"isSupportThreads\", get: function() {\n return L._isSupportThreads === void 0 && (L._isSupportThreads = L._threads()), L._isSupportThreads;\n } }, { key: \"wasmSmooth\", get: function() {\n if (L._wasmSmooth === void 0) {\n var A = Fe();\n L._wasmSmooth = !!(L.isSupportHW && L.isSupportThreads && A && A >= 6);\n }\n return L._wasmSmooth;\n } }, { key: \"isSupportHW\", get: function() {\n return !!Object(V.a)().performance;\n } }, { key: \"playHEVCTest\", get: function() {\n return this._playHEVCTest;\n }, set: function(A) {\n this._playHEVCTest = A;\n } }]), L;\n }();\n cr._changeTypeSupported = void 0, cr.MSE_AVAILABLE = void 0, cr.MSE_API_AVAILABLE = void 0, cr._isSupportSimd = void 0, cr._isSupportThreads = void 0, cr._wasmSmooth = void 0, cr._playHEVCTest = void 0, cr.TYPE_SUPPORTED = { mpeg: cr.isMSECodecStrSupported(\"audio/mpeg\"), mp3: cr.isMSECodecSupported(P.b.mp3), opus: cr.isMSECodecSupported(P.b.opus), hevc: cr.isMSECodecSupported(P.b.hevc), av1: cr.isMSECodecSupported(P.b.av1) };\n var Ra, pt = cr, Uy = i(43), By = function() {\n function L(s, a) {\n var n = this;\n this._evt = void 0, this._ctx = void 0, this._decInline = void 0, this._decW = void 0, this._id = 0, this._onWorkMessage = function(f) {\n var b = f.data;\n n._onMessage(f.data.event, b.data);\n }, this._onMessage = function(f, b) {\n n._decW && n._evt.emit(f, b);\n }, this._evt = s, this._ctx = a;\n }\n var A = L.prototype;\n return A.init = function(s) {\n s === void 0 && (s = !0), w.b.i(\"dec-wrapper\", \"init worker: \" + s), s && (this._decW = p()(51)), this._decW ? this._decW.addEventListener(\"message\", this._onWorkMessage) : this._decInline = new Uy.a(this._evt);\n }, A.start = function(s, a, n, f, b) {\n w.b.i(\"dec-wrapper\", \"start\");\n var N = this._ctx.getDecConfig();\n this._decW ? this._decW.postMessage({ cmd: U.a.INIT_265, id: this._id, lib: s, config: N, simd: n, threads: a, codecType: f, decoderType: b }) : this._decInline && this._decInline.init(this._id, s, N, n, a, f, b);\n }, A.destroy = function() {\n this._decW ? (this._decW.postMessage({ cmd: U.a.DESTROY }), this._decW.removeEventListener(\"message\", this._onWorkMessage), this._decW.terminate()) : this._decInline && (this._decInline.destroy(), this._decInline = void 0);\n }, A.append = function(s) {\n this._decW ? this._decW.postMessage({ cmd: U.a.APPEND_DATA, data: s }) : this._decInline && this._decInline.appendData(s);\n }, A.endOfData = function() {\n this._decW ? this._decW.postMessage({ cmd: U.a.END_OF_DATA }) : this._decInline && this._decInline.endOfData();\n }, A.updateMediaInfo = function(s) {\n this._decW ? this._decW.postMessage({ cmd: U.a.MEDIA_INFO, mediaInfo: s }) : this._decInline && this._decInline.updateMediaInfo(s);\n }, A.reset = function(s) {\n this._decW ? this._decW.postMessage({ cmd: U.a.RESET, decId: this._id, seeking: s }) : this._decInline && this._decInline.reset(this._id, s);\n }, A.clean = function(s) {\n this._decW ? this._decW.postMessage({ cmd: U.a.CLEAN, startTime: s }) : this._decInline && this._decInline.clean(s);\n }, A.seek = function(s) {\n this._decW ? this._decW.postMessage({ cmd: U.a.SEEK, time: s }) : this._decInline && this._decInline.seek(s);\n }, A.update = function(s, a, n, f, b, N) {\n this._decW ? this._decW.postMessage({ cmd: U.a.UPDATE_STATE, streamTime: s, output: a, active: n, frameBufLen: f, playbackRate: b, maxFrameBufLen: N }) : this._decInline && this._decInline.updateState(s, a, n, f, b, N);\n }, v()(L, [{ key: \"id\", get: function() {\n return this._id;\n }, set: function(s) {\n this._id = s;\n } }, { key: \"isUseingWorker\", get: function() {\n return !!this._decW;\n } }]), L;\n }(), Vy = [4, 2], Fy = [8, 6, 4, 2];\n (function(L) {\n L[L.data = 0] = \"data\", L[L.end = 1] = \"end\";\n })(Ra || (Ra = {}));\n var oo = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this, a) || this)._initCache = [], n._d = void 0, n._audioSegmentCnt = 0, n._decAppendActive = !0, n._libCacheHit = !1, n._activeTimes = [], n._state = { streamTime: 0, stoped: !1, output: P.o.canvas, decAppendActive: !0, frameBufLen: 0, maxFrameBufLen: 0 }, n._simdEnabled = void 0, n._threadsEnabled = void 0, n._codecType = P.b.hevc, n._decoderType = P.p.kw265, n._decId = 1, n._lastDecoder = void 0, n._nextSeek = -1, n._libLoader = void 0, n._decBufLow = !1, n._onDecLibLoaded = function(f) {\n w.b.i(\"v-dec-proxy\", \"dec lib loaded\"), n.emit(u.a.DEC_LIB_LOADED, f), n._libCacheHit = f.hitCache, n._initDecoder(f.lib);\n }, n._onDecImg = function(f) {\n n._ctx.updateVideoPlaybackQuality(f.decoded, f.droped), f.decId === n._decId && n._r.append(f.frame);\n }, n._onDecSeek = function(f) {\n w.b.i(\"v-dec-proxy\", \"decoder seek event\", f), f.hitCache && (n._waiting = !1), f.hitCache || (n._reset(!0), n._updateState()), n._onSeeked(f);\n }, n._onDecSeekAbort = function() {\n if (w.b.i(\"v-dec-proxy\", \"seek abort\"), n._seeking = !1, n._nextSeek !== -1) {\n var f = n._nextSeek;\n n._nextSeek = -1, n.seek(f);\n }\n }, n._onDecVideoReady = function() {\n n._waiting = !1, n.emit(u.a.DEC_VIDEO_READY), n._pausedOnWaiting = void 0;\n }, n._onDecWaiting = function(f) {\n var b, N;\n (b = n._ctx.video) != null && b.ended || (n._bufRules.onWaiting(), n._waiting = !0, n._pausedOnWaiting === void 0 && (n._pausedOnWaiting = !((N = n._ctx.video) == null || !N.paused)), n.emit(u.a.DECODER_WAITING, f));\n }, n._onDecMediaInfo = function(f) {\n n.emit(u.a.DECODER_MEDIA_INFO, f);\n }, n._onDecInitComplete = function(f) {\n for (n._ready = !0, n._updateMediaInfo(); n._initCache.length; ) {\n var b = n._initCache.shift();\n b && (b.type === Ra.data ? n._d.append(b.data) : b.type === Ra.end && n._d.endOfData());\n }\n n._ctx.stat.wasmSimd = f.simd, n._ctx.stat.wasmThreads = f.threads, n._ctx.stat.wasmDecoder = f.decoderType;\n }, n._onDecBufLow = function() {\n n._decBufLow = !0;\n }, n._onDecError = function(f) {\n if (f.details === d.a.DECODER_INIT_ERROR && (n._libCacheHit || n._threadsEnabled))\n return w.b.i(\"v-dec-proxy\", \"on dec error\", f), n._threadsEnabled && (n._threadsEnabled = !1), void n._loadLib(!0);\n n.emit(u.a.ERROR, f);\n }, n._onRenSeek = function(f) {\n w.b.i(\"v-dec-proxy\", \"renderer seek event\", f), f.hitCache ? (n._waiting = !1, n._onSeeked(f)) : (n._onDecWaiting(), n._d.seek(f.time));\n }, n._onRenExp = function() {\n w.b.i(\"v-dec-proxy\", \"renderer buf expired\"), n._r.flush(0);\n }, n._onRenBufUpdate = function(f) {\n n._decAppendActive = !!f.needMore;\n }, n._libLoader = new rt(n._ctx.config), n._libLoader.on(u.a.DEC_LIB_LOADED, n._onDecLibLoaded), n._libLoader.on(u.a.ERROR, function(f) {\n return n.emit(u.a.ERROR, f);\n }), n._state.maxFrameBufLen = n._bufRules.maxFrameBufLen, n._simdEnabled = pt.isSupportSimd, n._threadsEnabled = !!(pt.isSupportThreads && n._ctx.config.maxVideoDecThreads > 1), n._d = new By(n._evt, a), n._d.id = n._r.id = n._decId, n;\n }\n x()(A, L);\n var s = A.prototype;\n return s.init = function(a, n) {\n var f = this;\n w.b.i(\"v-dec-proxy\", \"init codecType: \" + a + \" bitDepth: \" + n), a && (this._codecType = a), a === P.b.kvc3 ? this._decoderType = P.p.kvc3 : a === P.b.kvc4 ? this._decoderType = P.p.kvc4 : a === P.b.kvc5 ? this._decoderType = P.p.kvc5 : a === P.b.kvc6 ? this._decoderType = P.p.kvc6 : a === P.b.hevc ? (this._decoderType = P.p.kw265, n && n > 8 && (this._decoderType = P.p.h265)) : a !== P.b.bvc2 && a !== P.b.kvc30 && a !== P.b.vvc || (this._decoderType = P.p.kvc30);\n var b = this._evt;\n b.on(u.a.DEC_INIT_COMPLETE, this._onDecInitComplete), b.on(u.a.DECODER_IMG, this._onDecImg), b.on(u.a.DEC_VIDEO_READY, this._onDecVideoReady), b.on(u.a.STEP, function(N) {\n return f.emit(u.a.STEP, N);\n }), b.on(u.a.DECODER_SEEK, this._onDecSeek), b.on(u.a.DECODER_SEEK_ABORT, this._onDecSeekAbort), b.on(u.a.DECODER_WAITING, this._onDecWaiting), b.on(u.a.DECODER_DATA_END, function() {\n return f._r.endOfData();\n }), b.on(u.a.DECODER_BUF_LOW, function() {\n return f._onDecBufLow();\n }), b.on(u.a.DECODER_DROP_FRAME, function(N) {\n return f._r.dropFrame(N);\n }), b.on(u.a.DECODER_MEDIA_INFO, function(N) {\n return f._onDecMediaInfo(N);\n }), b.on(u.a.RENDERER_BUF_UPDATE, this._onRenBufUpdate), b.on(u.a.RENDERER_BUF_EXPIRED, this._onRenExp), b.on(u.a.RENDERER_SEEK, this._onRenSeek), b.on(u.a.ERROR, this._onDecError), this._r.id = this._decId, this._r.init(Me.a.chrome && this._ctx.stat.mainThreadRendering === !1), this._d.init(), this._loadLib();\n }, s.setMediaInfo = function(a) {\n L.prototype.setMediaInfo.call(this, a), this._updateMediaInfo();\n }, s.destroy = function() {\n this._d.destroy(), L.prototype.destroy.call(this);\n }, s.appendData = function(a) {\n this._ready ? (this._decBufLow = !1, this._d.append(a)) : this._initCache.push({ type: Ra.data, data: a });\n }, s.endOfData = function() {\n w.b.i(\"v-dec-proxy\", \"endOfData\"), this._ready ? this._d.endOfData() : this._initCache.push({ type: Ra.end });\n }, s.decoderChange = function(a, n) {\n w.b.i(\"v-dec-proxy\", \"decoderChange type: \" + a + \" time: \" + n), this._lastDecoder = a;\n var f = this._activeTimes;\n a === P.c.wasm ? (!f.length || f.length && f[f.length - 1].end !== -1) && f.push({ start: n, end: -1 }) : a === P.c.buildin && f.length && f[f.length - 1].end === -1 && (f[f.length - 1].end = n);\n }, s.onParsingData = function(a) {\n var n = this;\n a.segments.forEach(function(f) {\n f.type === P.l.AUDIO && n._audioSegmentCnt++;\n });\n }, s.seek = function(a) {\n w.b.i(\"v-dec-proxy\", \"seek: \" + a + \" \" + this._seeking), a *= g.a, this._seeking ? this._nextSeek = a : (this._seeking = !0, this._r.seek(a), this.start());\n }, s.seekWithLoad = function() {\n w.b.i(\"v-dec-proxy\", \"seekWithLoad\"), this._ready ? (this._reset(!0), this._updateState()) : this._initCache = [];\n }, s.clean = function(a) {\n a === void 0 && (a = 0), w.b.i(\"v-dec-proxy\", \"flush\"), (a *= g.a) ? (this._d.clean(a), this._r.flush(a)) : this._reset(!1);\n }, s._updateState = function() {\n var a = this._ctx.cOutput.canvas;\n if (a instanceof HTMLCanvasElement) {\n var n, f, b = this._ctx.currentTime * g.a, N = !((n = this._ctx.video) == null || !n.ended), j = ((f = this._ctx.video) == null ? void 0 : f.playbackRate) || 1, se = this.isCanvasRenderer ? P.o.canvas : P.o.video, ue = !1, Te = this._checkResize(a), De = this._decAppendActive, Ne = this._state;\n if (Ne.output !== se && (Ne.output = se, ue = !0, this.emit(u.a.VIDEO_RENDERER_CHANGE, { type: Ne.output, canvas: a, enabled: !0 })), b !== 0 || this._audioSegmentCnt || (b = -1), Ne.streamTime === b && Ne.stoped === N && Ne.decAppendActive === De && Ne.frameBufLen === this._r.frameBufLen && Ne.maxFrameBufLen === this._bufRules.maxFrameBufLen || (Ne.streamTime = b, Ne.stoped = N, Ne.decAppendActive = De, Ne.frameBufLen = this._r.frameBufLen, Ne.maxFrameBufLen = this._bufRules.maxFrameBufLen, ue = !0), !ue && !this._waiting && !Te)\n return;\n (ue || this._waiting) && this._d.update(b, se, De, this._r.frameBufLen, j, Ne.maxFrameBufLen), (ue || Te) && this._r.update(b, this._size.w, this._size.h, N, se, Ne.maxFrameBufLen);\n }\n }, s._updateMediaInfo = function() {\n if (this._mediaInfo.length && this._ready) {\n var a = this._mediaInfo.shift();\n if (a) {\n var n = {};\n a.rotation && (n.rotation = ((a == null ? void 0 : a.rotation) || 0) % 360, n.rotation < 0 && (n.rotation += 360)), a.width && (n.width = a.width), a.height && (n.height = a.height), a.fps && (n.fps = a.fps), a.colorInfo && (n.colorInfo = JSON.parse(JSON.stringify(a.colorInfo))), this._d.updateMediaInfo(n), this._r.updateMediaInfo(n);\n }\n }\n }, s._reset = function(a) {\n a === void 0 && (a = !1), this._decId++, this._decAppendActive = !0, this._audioSegmentCnt = 0, this._activeTimes = [], a || (this._seeking = !1, this._nextSeek = -1), this._lastDecoder === P.c.wasm && this._activeTimes.push({ start: 0, end: -1 }), this._d.id = this._r.id = this._decId, this._d.reset(a), this._r.reset(a), this._waiting = !0;\n }, s._loadLib = function(a) {\n a === void 0 && (a = !1), this._simdEnabled === void 0 || this._threadsEnabled === void 0 ? (this._simdEnabled = !!pt.isSupportSimd, this._threadsEnabled = !!(pt.isSupportThreads && this._ctx.config.maxVideoDecThreads > 1), this._libLoader.load(a, this._decoderType, this._simdEnabled, this._threadsEnabled)) : this._libLoader.load(a, this._decoderType, this._simdEnabled, this._threadsEnabled);\n }, s._initDecoder = function(a) {\n w.b.i(\"v-dec-proxy\", \"init dec\"), this.start();\n var n = this._threadsEnabled ? this._getThreadNum() : 1;\n this._d.id = this._decId, this._d.start(a, n, !!this._simdEnabled, this._codecType, this._decoderType);\n }, s._getThreadNum = function() {\n var a = Math.min(Fe(), this._ctx.config.maxVideoDecThreads), n = Fy;\n this._decoderType === P.p.kw265 && (n = Vy);\n for (var f = 0; f < n.length; f++)\n if (a >= n[f])\n return n[f];\n return n[n.length - 1];\n }, s._onSeeked = function(a) {\n if (w.b.i(\"v-dec-proxy\", \"seeked\"), this._seeking = !1, this._nextSeek === -1)\n this.emit(u.a.DECODER_SEEK, a);\n else {\n var n = this._nextSeek;\n this._nextSeek = -1, this.seek(n);\n }\n }, v()(A, [{ key: \"isCanvasRenderer\", get: function() {\n var a = this._activeTimes.length;\n if (a) {\n for (var n = this._ctx.currentTime, f = a - 1; f >= 0; f--)\n if (n >= this._activeTimes[f].start && (n < this._activeTimes[f].end || this._activeTimes[f].end === -1))\n return !0;\n }\n return !1;\n } }, { key: \"decBufLow\", get: function() {\n return this._decBufLow;\n } }]), A;\n }(fe), co = { alwaysSeekKeyframe: !1, lazyLoadMaxDuration: -1, lazyLoadRecoverDuration: 20, webWorker: !0, appendErrorMaxRetry: 3, credentials: !1, streamingMux: !0, autoPlaybackRate: !0, autoPlaybackRateConf: void 0, enableSoftwareAES: !0, startPlayBufferSec: 0, startFromSec: 0, startFromKeyframe: !0, defaultSpts: -5e3, kwaiKernelLog: w.a.LEVEL_ERROR, retryWithBackup: !0, resourceBuffer: !0, resourceBufferSize: 500, ntp: !0, ensureVideo: !1, adaptive: !0, abrSpeedTest: !0, httpRangeType: P.d.STANDARD, maxAudioFramesDrift: 5, forceKeyFrameOnDiscontinuity: !1, videoDropFramePolicy: P.n.AUTO, videoDecBlockPolicy: P.m.WAITING, videoFrameBufferSize: 536870912, maxVideoDecThreads: 8, mainThreadRendering: !1, wasmDecoderEnabled: !0, maxRetry: 3, connectionTimeout: 1e4, transmissionTimeout: 3e4, retryDelay: 100, maxFragFailSec: 11, flvLoadEndError: !0, catchUpPausedLive: !0, breakpointContinuation: !0, manifestLoadingMaxRetry: 3, manifestConnectionTimeout: 1e4, manifestTransmissionTimeout: 1e4, manifestLoadingRetryDelay: 1, levelLoadingMaxRetry: 3, levelConnectionTimeout: 1e4, levelTransmissionTimeout: 1e4, levelLoadingRetryDelay: 100, emeEnabled: !0, widevineLicenseUrl: \"\", playreadyLicenseUrl: \"\", fairplayLicenseUrl: \"\", keyLoadingMaxRetry: 3, keyConnectionTimeout: 1e4, keyTransmissionTimeout: 5e3, keyLoadingRetryDelay: 300, sdpConnectionTimeout: 1e4, peerConnectionTimeout: 1e4, peerConnectionMaxRetry: 5, peerConnectionRetryDelay: 3e3, decLibLoadingMaxRetry: 2, decLibConnectionTimeout: 5e3, liveDelayFragNum: 3, liveShiftEnabled: !1 }, jy = { maxRetry: 1, retryDelay: 100, connectionTimeout: 1e4, levelConnectionTimeout: 1e4, manifestConnectionTimeout: 1e4 }, ns = function() {\n function L() {\n }\n return L.isStreamingSupported = function() {\n return L._streamingSupported === void 0 && (L._streamingSupported = ie.isSupported() || !!we.isSupportChunk()), L._streamingSupported;\n }, L.processConfig = function(A) {\n if (A) {\n var s = A.src, a = A.preprocessUrl;\n (A = JSON.parse(JSON.stringify(A))).src = s, A.preprocessUrl = a, a && w.b.i(\"config\", \"set preprocessUrl\");\n }\n A.isLive ? co.videoFrameBufferSize = 104857600 : co.videoFrameBufferSize = 536870912;\n var n = Le(A.box) ? o()({}, co, jy) : o()({}, co);\n return o()(n, A), n.wasmDecoderEnabled = n.wasmDecoderEnabled && !!oo, n.startPlayBufferSec = Math.min(5, Math.max(0, n.startPlayBufferSec)), this._initPlayBackRateRule(n), Worker || (n.webWorker = !1), n;\n }, L._initPlayBackRateRule = function(A) {\n var s = A.autoPlaybackRateConf;\n if (s) {\n var a = s.rule;\n if (a && Array.isArray(a) && ((a = a.filter(function(n) {\n return n.upper > n.lower && n.rate > 0;\n })).sort(function(n, f) {\n return f.rate - n.rate;\n }), a.length > 1))\n return s.rule = a, void (A.autoPlaybackRateConf = s);\n }\n }, L;\n }();\n ns._streamingSupported = void 0;\n var zy = function() {\n function L() {\n this._lastDroppedFrames = 0, this._lastDecodedFrames = 0, this._lastTime = 0, this._decoded = 0, this._dropped = 0;\n }\n var A = L.prototype;\n return A.reset = function() {\n this._lastTime = performance.now(), this._lastDroppedFrames = this._lastDecodedFrames = this._decoded = this._dropped = 0;\n }, A.getFPS = function(s) {\n if (s) {\n var a, n = performance.now(), f = s.totalVideoFrames, b = s.droppedVideoFrames;\n if (f) {\n f < this._lastDecodedFrames && (this._lastDecodedFrames = 0, this._lastDroppedFrames = 0);\n var N = n - this._lastTime, j = b - this._lastDroppedFrames, se = f - this._lastDecodedFrames, ue = 0, Te = 0;\n this._lastTime && (ue = parseFloat((1e3 * j / N).toFixed(2)), Te = parseFloat((1e3 * se / N).toFixed(2))), this._decoded = this._decoded += se, this._dropped = this._dropped += j, this._lastTime = n, this._lastDroppedFrames = b, this._lastDecodedFrames = f, a = { decoded: this._decoded, dropped: this._dropped, decodedFPS: Te, droppedFPS: ue };\n }\n return this._lastTime = n, a;\n }\n }, L;\n }(), _h = function() {\n function L() {\n this._traffic = 0, this._streams = [], this._download = [], this._trafficGroupedByVCodecType = {}, this._trafficGroupedByLevel = {}, this._currentLoad = void 0, this._contentLen = 0, this._fillA = 0, this._fillV = 0;\n }\n var A = L.prototype;\n return A.onStreamOpen = function(s, a, n, f) {\n if (this._streams.length > 10) {\n var b = this._streams.shift();\n if (b) {\n this._trafficGroupedByVCodecType[b.vCodecType] = (this._trafficGroupedByVCodecType[b.vCodecType] || 0) + b.traffic;\n var N = b.qualityType || \"unknown\";\n this._trafficGroupedByLevel[N] = (this._trafficGroupedByLevel[N] || 0) + b.traffic;\n }\n }\n var j = this._currentLoad ? this._currentLoad.index + 1 : 0;\n this._currentLoad = { index: j, startPos: s, url: a, bitrate: n, qualityType: f, traffic: 0, loadTimeCost: 0, keyFrame: 0, videoDataRate: 0, audioDataRate: 0, speed: 0, vCodecType: P.b.unknown, segments: [] }, this._streams.push(this._currentLoad);\n }, A.onMediaInfo = function(s) {\n var a = this._streams[this._streams.length - 1];\n a && (s.videoCodecType && (a.vCodecType = s.videoCodecType), a.mediaInfo = o()({}, s));\n }, A.setRTCStats = function(s) {\n var a = this._currentLoad;\n a && (a.traffic = s.totalReceive, a.audioDataRate = s.audioDataRate, a.videoDataRate = s.videoDataRate, a.speed = s.speed, a.keyFrame = s.key, this._traffic = a.traffic);\n }, A.onDataReceive = function(s) {\n this._traffic += s.byteLength;\n var a = this._download;\n a.length > 200 && a.pop(), a.unshift(s);\n var n = this._currentLoad;\n n && (n.traffic += s.byteLength, n.loadTimeCost += s.timeCost, n.speed = Math.round(n.traffic / n.loadTimeCost * 1e3) || 0);\n }, A.onParsing = function(s) {\n var a = this;\n s.segments.forEach(function(n) {\n a._calculateDataRate(n.type, 1e3 * (n.endDTS - n.startDTS), n.payload.byteLength), n.type === P.l.VIDEO && n.fillDuration && (a._fillV += Math.round(1e3 * n.fillDuration)), n.type === P.l.AUDIO && n.fillDuration && (a._fillA += Math.round(1e3 * n.fillDuration));\n });\n }, A.onRaw = function(s) {\n if (s.samples.length) {\n var a = s.samples.reduce(function(f, b) {\n return b.yuv ? f + b.yuv.y.bytes.length + b.yuv.u.bytes.length + b.yuv.v.bytes.length : f + b.units.reduce(function(N, j) {\n return N + j.data.byteLength;\n }, 0);\n }, 0), n = s.samples[s.samples.length - 1].dts - s.samples[0].dts + (s.samples[s.samples.length - 1].duration || 0);\n this._calculateDataRate(P.l.VIDEO, n / 90, a);\n }\n }, A.downloadInfoByRange = function(s) {\n s === void 0 && (s = 1e3);\n var a = { size: 0, timeCost: 0 };\n if (this._download.length)\n for (var n = performance.now(), f = 0; f < this._download.length && this._download[f].ts > n - s; f++)\n a.size += this._download[f].byteLength, a.timeCost += this._download[f].timeCost;\n return a;\n }, A._calculateDataRate = function(s, a, n) {\n var f = this._streams[this._streams.length - 1], b = f.segments;\n b.push({ type: s, duration: a, byteLength: n }), b.length > 200 && b.shift();\n for (var N = 0, j = 0, se = 0; se < b.length; se++)\n b[se].type === s && (j += b[se].byteLength, N += b[se].duration);\n N > 0 && (s === P.l.VIDEO ? f.videoDataRate = Math.round(8 * j / N) : s === P.l.AUDIO && (f.audioDataRate = Math.round(8 * j / N)));\n }, v()(L, [{ key: \"smoothedDownloadSpeed\", get: function() {\n var s = this._download, a = s[0];\n return a && !a.progress ? a.byteLength / a.timeCost * 1e3 : 1e3 * s.reduceRight(function(n, f) {\n var b = f.byteLength / f.timeCost;\n return n > 0 ? b * (1 - 0.9) + 0.9 * n : b;\n }, 0);\n } }, { key: \"trafficGroupedByVCodecType\", get: function() {\n var s = o()({}, this._trafficGroupedByVCodecType);\n return s.total = this._traffic, this._streams.forEach(function(a) {\n s[a.vCodecType] = (s[a.vCodecType] || 0) + a.traffic;\n }), s;\n } }, { key: \"trafficGroupedByLevel\", get: function() {\n var s = o()({}, this._trafficGroupedByLevel);\n return s.total = this._traffic, this._streams.forEach(function(a) {\n var n = a.qualityType || \"unknown\";\n s[n] = (s[n] || 0) + a.traffic;\n }), s;\n } }, { key: \"traffic\", get: function() {\n return this._traffic;\n } }, { key: \"speed\", get: function() {\n var s = this._currentLoad, a = this.downloadInfoByRange();\n return this._download.length ? a.timeCost ? Math.round(a.size / a.timeCost * 1e3) : 0 : (s == null ? void 0 : s.speed) || 0;\n } }, { key: \"currentLoad\", get: function() {\n return this._currentLoad;\n } }, { key: \"streams\", get: function() {\n return this._streams;\n } }, { key: \"contentLen\", get: function() {\n return this._contentLen;\n }, set: function(s) {\n this._contentLen = s;\n } }, { key: \"fillA\", get: function() {\n return this._fillA;\n } }, { key: \"fillV\", get: function() {\n return this._fillV;\n } }]), L;\n }(), as = i(22), Hy = new RegExp(\"_([0-9]+)x([0-9]+)(_([0-9]+))?(_([0-9]+))?(_(420|422|444|mono))?\"), $y = [\"mono\", \"420\", \"422\", \"444\"], Wy = i(35), dh = function() {\n function L(s) {\n this._abr = !1, this._startIdx = -1, this._currentIdx = 0, this._nextIdx = 0, this._levels = [], this._audioIdx = 0, this._audioTracks = [], this._subtitleIdx = 0, this._subtitleTracks = [], this._abrLevels = [], this._default = void 0, this._availableList = void 0, w.b.i(\"level-ctx\", \"constructor abr:\" + s), this._abr = s;\n }\n var A = L.prototype;\n return A.getLevel = function(s) {\n return s === void 0 && (s = P.e.MAIN), s === P.e.MAIN ? this._levels[this._currentIdx] : s === P.e.AUDIO ? this._audioTracks[this._audioIdx] : s === P.e.SUBTITLE ? this._subtitleTracks[this._subtitleIdx] : void 0;\n }, A.setLevelIdx = function(s, a) {\n a === void 0 && (a = P.e.MAIN), a === P.e.MAIN ? this.currentIdx = s : a === P.e.AUDIO ? this.audioIdx = s : a === P.e.SUBTITLE && (this.subtitleIdx = s);\n }, A.getLevelIdx = function(s) {\n return s === void 0 && (s = P.e.MAIN), s === P.e.MAIN ? this._currentIdx : s === P.e.AUDIO ? this._audioIdx : s === P.e.SUBTITLE ? this._subtitleIdx : -1;\n }, A.setNextIdx = function(s, a) {\n a === void 0 && (a = P.e.MAIN), a === P.e.MAIN && (this.nextIdx = s);\n }, A.getNextIdx = function(s) {\n return s === void 0 && (s = P.e.MAIN), s === P.e.MAIN ? this._nextIdx : -1;\n }, A.clearFrag = function() {\n w.b.i(\"level-ctx\", \"clear\"), [this._levels, this._audioTracks, this._subtitleTracks].forEach(function(s) {\n s.forEach(function(a) {\n var n = a;\n n.fragments && n.clear();\n });\n });\n }, A.abrIndexToOrign = function(s) {\n var a = this._abrLevels[s];\n return a ? a.index : 0;\n }, A.orignIndexToAbr = function(s) {\n var a = 0;\n return this._abrLevels.forEach(function(n, f) {\n n.index !== s || (a = f);\n }), a;\n }, A._generateAbrList = function() {\n var s = this, a = this._availableList;\n this._default = 0, this._abrLevels = [], this._levels.forEach(function(n, f) {\n n.default && !a && (s._default = f), n.enableAdaptive && (!a || a && a.indexOf(f) !== -1) && s._abrLevels.push(n);\n }), this._abrLevels.sort(function(n, f) {\n return n.bitrate - f.bitrate;\n });\n }, v()(L, [{ key: \"abr\", get: function() {\n return this._abr;\n }, set: function(s) {\n this._abr = s;\n } }, { key: \"startIdx\", get: function() {\n return this._startIdx;\n }, set: function(s) {\n this._startIdx = s;\n } }, { key: \"currentIdx\", get: function() {\n return this._currentIdx;\n }, set: function(s) {\n s >= 0 && (this._currentIdx = s);\n } }, { key: \"nextIdx\", get: function() {\n return this._nextIdx;\n }, set: function(s) {\n s >= 0 && (this._nextIdx = s);\n } }, { key: \"levels\", get: function() {\n return this._levels;\n }, set: function(s) {\n this._levels = s, this._generateAbrList();\n } }, { key: \"current\", get: function() {\n return this._levels[this._currentIdx];\n } }, { key: \"currentUrl\", get: function() {\n var s = this._levels[this._currentIdx];\n return s ? s.url[s.urlId] : \"\";\n } }, { key: \"audioIdx\", get: function() {\n return this._audioIdx;\n }, set: function(s) {\n s >= 0 && (this._audioIdx = s);\n } }, { key: \"audioTracks\", get: function() {\n return this._audioTracks;\n }, set: function(s) {\n this._audioTracks = s;\n } }, { key: \"audio\", get: function() {\n return this._audioTracks[this._audioIdx];\n } }, { key: \"subtitleIdx\", get: function() {\n return this._subtitleIdx;\n }, set: function(s) {\n s >= 0 && (this._subtitleIdx = s);\n } }, { key: \"subtitleTracks\", get: function() {\n return this._subtitleTracks;\n }, set: function(s) {\n this._subtitleTracks = s;\n } }, { key: \"subtitle\", get: function() {\n return this._subtitleTracks[this._subtitleIdx];\n } }, { key: \"abrLevels\", get: function() {\n return this._abrLevels;\n } }, { key: \"availableList\", set: function(s) {\n this._availableList = s, this._generateAbrList();\n } }, { key: \"default\", get: function() {\n return this._default || 0;\n }, set: function(s) {\n this._default = s;\n } }, { key: \"abrDefault\", get: function() {\n var s = 0;\n return this._abrLevels.forEach(function(a, n) {\n a.default && (s = n);\n }), s;\n } }]), L;\n }(), hh = function() {\n function L(s, a) {\n this.video = void 0, this.mse = void 0, this.stat = void 0, this.loadRec = void 0, this.lctx = void 0, this.localTimeOffset = void 0, this._src = void 0, this._srcUpdateTime = 0, this._originSrc = void 0, this._config = void 0, this._streamingMuxEnabled = !1, this._streamingMux = !1, this._cOutput = void 0, this._liveDelay = new vn(), this._fps = new zy(), this._yuvParams = void 0, this.video = a, this.lctx = new dh(!0), this._setConfig(ns.processConfig(s));\n }\n var A = L.prototype;\n return A.destroy = function() {\n var s;\n w.b.i(\"av-ctx\", \"destroy\"), (s = this.stat.muxWorker) == null || s.terminate(), this._destroyLevels(), this._destroyCanvasOutput(), this._liveDelay.destroy();\n }, A.getNewCtx = function() {\n return new L(this._config);\n }, A.updateVideoPlaybackQuality = function(s, a) {\n this.stat.videoPlaybackQuality ? (this.stat.videoPlaybackQuality.droppedVideoFrames = a, this.stat.videoPlaybackQuality.totalVideoFrames = s) : this.stat.videoPlaybackQuality = { corruptedVideoFrames: 0, creationTime: 0, droppedVideoFrames: a, totalVideoFrames: s };\n }, A.isTimeinBuffered = function(s) {\n if (this.video) {\n for (var a = this.video.buffered, n = 0; n < a.length; n++)\n if (s >= a.start(n) && s < a.end(n))\n return !0;\n }\n return !1;\n }, A.currentBuffer = function(s) {\n if (this.video)\n for (var a = this.video.buffered, n = 0; n < a.length; n++) {\n var f = a.start(n), b = a.end(n);\n if (f <= s && s < b)\n return { start: f, end: b };\n }\n }, A.nextBuffer = function(s) {\n if (this.video)\n for (var a = this.video.buffered, n = 0; n < a.length; n++) {\n var f = a.start(n), b = a.end(n);\n if (f > s)\n return { start: f, end: b };\n }\n }, A.getLocalTime = function(s) {\n return typeof this.localTimeOffset == \"number\" ? s - this.localTimeOffset : void 0;\n }, A.getStreamTime = function(s) {\n return typeof this.localTimeOffset == \"number\" ? s + this.localTimeOffset : void 0;\n }, A.getRemuxConfig = function() {\n var s = this._config;\n return { isLive: this.stat.isLive, kwaiKernelLog: s.kwaiKernelLog, enableSoftwareAES: s.enableSoftwareAES, gopRemux: this.stat.gopRemux, preferDecoder: s.preferDecoder, streamingMux: this.streamingMux, ensureVideo: s.ensureVideo, maxAudioFramesDrift: s.maxAudioFramesDrift, forceKeyFrameOnDiscontinuity: s.forceKeyFrameOnDiscontinuity, wasmDecoderEnabled: s.wasmDecoderEnabled };\n }, A.getDecConfig = function() {\n var s = this._config;\n return { kwaiKernelLog: s.kwaiKernelLog, videoDropFramePolicy: s.videoDropFramePolicy, videoFrameBufferSize: s.videoFrameBufferSize, videoDecBlockPolicy: s.videoDecBlockPolicy, maxVideoDecThreads: s.maxVideoDecThreads, mainThreadRendering: s.mainThreadRendering };\n }, A.hasChangeCore = function() {\n return this.stat.retryInfos.reduce(function(s, a) {\n return a.change || s;\n }, !1);\n }, A.setSrc = function(s, a) {\n s && (this._resetStat(), this._yuvParams = void 0, this.loadRec = new _h()), this._processSrc(s, a);\n }, A.reProcessSrc = function(s) {\n this._originSrc && this._processSrc(this._originSrc, s);\n }, A.updateLiveShiftStatuByTime = function(s) {\n var a;\n if (this.stat.liveShiftEnabled && (s === void 0 && (s = (a = this.video) == null ? void 0 : a.currentTime), this.lctx.current && typeof s == \"number\")) {\n var n = this.liveStartLocalTime;\n this.stat.liveShift = !!(n && s < n - 0.1);\n }\n }, A._setConfig = function(s) {\n this._config = s, this._streamingMuxEnabled = this._streamingMux = !(!s.streamingMux || !ns.isStreamingSupported() || Me.a.msie || Me.a.safari && s.isLive || Me.a.msedge && s.isLive), this._resetStat(), this._yuvParams = void 0, this.stat.startFromSec = s.startFromSec || (s.startFrom || -1e3) / 1e3, this.stat.webWorker = s.webWorker, this._config.autoPlaybackRateConf ? (w.b.i(\"av-ctx\", \"use config.autoPlaybackRateConf\", this._config.autoPlaybackRateConf), this.stat.autoPlaybackRateConf = this._config.autoPlaybackRateConf) : this.stat.autoPlaybackRateConf = function(a, n) {\n n === void 0 && (n = 3), w.b.i(\"playback-rate\", \"get by delay: \" + a);\n var f = { startDelay: 0, interval: 0.6, rule: [] };\n return Fn(a, n, f), f;\n }(-Math.floor(this._config.defaultSpts / g.e));\n try {\n this.stat.webWorker && (this.stat.muxWorker = p()(46)), vn.workerTimeOffset = performance.now(), w.b.i(\"av-ctx\", \"init mux worker\");\n } catch (a) {\n }\n s.lazyLoadMaxDuration > 0 && s.lazyLoadRecoverDuration > 0 && s.lazyLoadMaxDuration >= s.lazyLoadRecoverDuration && (this.stat.lazyLoadMaxDuration = s.lazyLoadMaxDuration, this.stat.lazyLoadRecoverDuration = s.lazyLoadRecoverDuration), this.loadRec = new _h(), s.src && this._processSrc(s.src);\n }, A._resetStat = function() {\n w.b.i(\"av-ctx\", \"reset stat\");\n var s = this._config, a = this.stat || {}, n = Me.a.safari && !s.isLive || Me.a.opera && Me.a.version.major < 37;\n this._streamingMux = this._streamingMuxEnabled, a.isLive = s.isLive, a.native = s.nativeFirst, a.coreType = P.a.unknown, a.codecType = P.b.unknown, a.gopRemux = n, a.audioCodec = \"\", a.box = P.g.unknown, a.autoLazyLoad = !0, a.firstFrameLoaded = !1, a.isNetworkInUse = !1, a.srcType = P.i.OTHERS, a.retryInfos = [], a.decoder = P.c.buildin, a.lazyLoadMaxDuration = 16, a.lazyLoadRecoverDuration = 0.8 * a.lazyLoadMaxDuration, a.drm = a.hasVideo = a.hasAudio = a.isPreload = a.videoPlaybackQuality = a.mixContainerInput = a.mixCodecInput = a.mixCodecAvailable = a.mixQualityList = a.multipart = a.stereoType = a.mainThreadRendering = a.wasmDecoder = a.wasmSimd = a.wasmThreads = a.fallback264 = void 0, this.stat = a;\n }, A._processSrc = function(s, a) {\n var n, f;\n s && (this._originSrc = this._src = s);\n var b = this.config, N = this.stat, j = Ft.preParse(this._src, b.mixManifestEnabled, b.nativeFirst, a, b.baseURL);\n this._src = j.src, this._src && (this._srcUpdateTime = Date.now(), this._cOutput && this._cOutput.reset(), this.stat.srcType === P.i.FILE && this._destroyLevels(), this.lctx = new dh(b.adaptive), N.codecType = j.codecType ? j.codecType : P.b.unknown, N.box = b.box || j.box || P.g.unknown, N.srcType = j.srcType, N.mixContainerInput = j.mixContainerInput, N.mixCodecInput = j.mixCodecInput, N.mixCodecAvailable = j.mixCodecAvailable, N.mixQualityList = j.mixQualityList, N.multipart = j.multipart, N.stereoType = (n = j.mediaLevels) == null ? void 0 : n.stereoType, b.liveDelayFragNum && b.liveDelayFragNum > 0 && N.multipart && (N.multipartLiveDelay = -10 * g.e * b.liveDelayFragNum, b.autoPlaybackRateConf || Fn(10 * b.liveDelayFragNum, 10, N.autoPlaybackRateConf)), j.nativeFirst !== void 0 && (N.native = j.nativeFirst), typeof j.isLive == \"boolean\" && (N.isLive = j.isLive), typeof ((f = j.mediaLevels) == null ? void 0 : f.isLive) == \"boolean\" && (N.isLive = j.mediaLevels.isLive), !j.mediaLevels || j.srcType === P.i.OTHERS && Le(N.box) && !N.native || (N.hasAudio = j.mediaLevels.hasAudio, N.hasVideo = j.mediaLevels.hasVideo, N.drm = j.mediaLevels.drm, this.lctx.levels = j.mediaLevels.levels, this.lctx.default = this.lctx.currentIdx = j.mediaLevels.def, j.mediaLevels.audioTracks && (this.lctx.audioTracks = j.mediaLevels.audioTracks, this.lctx.audioIdx = j.mediaLevels.defAudio || 0), j.mediaLevels.subtitleTracks && (this.lctx.subtitleTracks = j.mediaLevels.subtitleTracks, this.lctx.subtitleIdx = j.mediaLevels.defSubtitle || 0)), j.box === P.g.yuv && (this._yuvParams = function(se) {\n if (se) {\n var ue = se.match(Hy);\n if (ue && ue.length > 2) {\n var Te = parseInt(ue[1]), De = parseInt(ue[2]), Ne = ue[4] ? parseInt(ue[4]) : g.e, $e = ue[6] ? parseInt(ue[6]) : 8, ht = as.a.AV_PIX_FMT_YUV420P;\n if (ue[8]) {\n var Je = $y.indexOf(ue[8]);\n Je !== -1 && (ht = Je);\n }\n var kt = [as.a.AV_PIX_FMT_YUV420P, as.a.AV_PIX_FMT_YUV422P].indexOf(ht) === -1 ? Te : Te / 2, Xt = ht === as.a.AV_PIX_FMT_YUV420P ? De / 2 : De;\n return { width: Te, height: De, chroma: as.a.AV_PIX_FMT_YUV420P, chromaWidth: kt, chromaHeight: Xt, cropLeft: 0, cropTop: 0, cropWidth: Te, cropHeight: De, displayWidth: Te, displayHeight: De, pts: 0, fps: Ne, bpp: $e, dataSize: (Te * De + kt * Xt * 2) * ($e > 8 ? 2 : 1) };\n }\n }\n }(j.src instanceof File ? j.src.name : this.lctx.currentUrl)), w.b.i(\"av-ctx\", \"set src:\" + N.box + \" live: \" + N.isLive + \" mobile: \" + !!Me.a.mobile + \" gopRemux: \" + N.gopRemux + \" streamingMux \" + this.streamingMux));\n }, A._destroyLevels = function() {\n this.lctx && this.lctx.levels.forEach(function(s) {\n s.url.forEach(function(a) {\n a.indexOf(\"blob:\") === 0 && URL.revokeObjectURL(a);\n });\n });\n }, A._destroyCanvasOutput = function() {\n this._cOutput && (this._cOutput.destroy(), this._cOutput = void 0);\n }, v()(L, [{ key: \"live\", get: function() {\n return !(!this.stat.isLive || this.stat.liveShift);\n } }, { key: \"liveStartLocalTime\", get: function() {\n var s = this.lctx.current;\n return s && s.totalduration && this.stat.multipartLiveDelay ? s.totalduration + this.stat.multipartLiveDelay / g.e + 0.1 : 0;\n } }, { key: \"yuvParams\", get: function() {\n return this._yuvParams;\n } }, { key: \"canCodecFallback\", get: function() {\n return !(!this.stat.mixCodecInput || this.stat.codecType === P.b.h264 || this.stat.mixCodecInput.indexOf(P.b.h264) === -1 || this.stat.decoder !== P.c.buildin);\n } }, { key: \"fps\", get: function() {\n return this._fps;\n } }, { key: \"liveDelay\", get: function() {\n return this._liveDelay;\n } }, { key: \"cOutput\", get: function() {\n return this._cOutput || (this._cOutput = new Wy.a()), this._cOutput;\n } }, { key: \"isAbrAvailable\", get: function() {\n return this._config.adaptive && this.lctx.levels.length > 1 && !this.stat.isPreload && !this.isSwitchLevelByReload;\n } }, { key: \"isSwitchLevelByReload\", get: function() {\n return this.stat.box !== P.g.flv && !Le(this.stat.box);\n } }, { key: \"mediaBufferedSec\", get: function() {\n return this.video && this.video.buffered && this.video.buffered.length ? { start: this.video.buffered.start(0), end: this.video.buffered.end(this.video.buffered.length - 1) } : { start: 0, end: 0 };\n } }, { key: \"bufferedEnd\", get: function() {\n return this.video && this.video.buffered.length ? this.video.buffered.end(this.video.buffered.length - 1) : 0;\n } }, { key: \"bufferedSec\", get: function() {\n return this.video && this.video.buffered.length > 0 ? Math.max(0, this.video.buffered.end(this.video.buffered.length - 1) - this.video.currentTime) : 0;\n } }, { key: \"bufferSliceNum\", get: function() {\n return this.video ? this.video.buffered.length : 0;\n } }, { key: \"currentTime\", get: function() {\n return this.video ? this.video.currentTime : 0;\n } }, { key: \"playbackRate\", get: function() {\n return this.video ? this.video.playbackRate : 1;\n } }, { key: \"config\", get: function() {\n return this._config;\n } }, { key: \"src\", get: function() {\n return this._src;\n } }, { key: \"srcUpdateTime\", get: function() {\n return this._srcUpdateTime;\n } }, { key: \"originSrc\", get: function() {\n return this._originSrc;\n } }, { key: \"videoPlaybackQuality\", get: function() {\n return this.stat.videoPlaybackQuality ? this.stat.videoPlaybackQuality : this.video ? this.video.getVideoPlaybackQuality !== void 0 ? this.video.getVideoPlaybackQuality() : { corruptedVideoFrames: 0, creationTime: 0, droppedVideoFrames: this.video.webkitDecodedFrameCount || 0, totalVideoFrames: this.video.webkitDroppedFrameCount || 0 } : void 0;\n } }, { key: \"demuxerType\", get: function() {\n return this.stat.demuxerType;\n }, set: function(s) {\n var a = this.stat;\n if (s !== a.demuxerType) {\n var n = a.box === void 0 || a.box === P.g.unknown;\n s === zr.b.RAW ? (a.box = P.g.raw, a.isLive = !1) : s === zr.b.FLV ? (a.box = P.g.flv, a.multipart && (a.isLive = !1)) : s === zr.b.MP4 || s === zr.b.FMP4 ? (n && (a.box = P.g.mp4), a.multipart || (a.isLive = !1)) : s === zr.b.TS ? n && (a.box = P.g.ts) : s === zr.b.IVF && (a.box = P.g.ivf, a.isLive = !1), a.demuxerType = s;\n }\n } }, { key: \"streamingMuxEnabled\", get: function() {\n return this._streamingMuxEnabled && !(this._src instanceof Blob);\n } }, { key: \"streamingMux\", get: function() {\n return this.stat.box === P.g.flv && this.stat.isLive || this.streamingMuxEnabled && this._streamingMux;\n }, set: function(s) {\n this._streamingMux = s;\n } }], [{ key: \"packName\", get: function() {\n return \"es\";\n } }, { key: \"version\", get: function() {\n return \"3.3.12\";\n } }]), L;\n }();\n hh.instanceCount = 0;\n var Ai, Dr = hh;\n (function(L) {\n L.METADATA = \"metadata\", L.MEDIA_INFO = \"mediaInfo\", L.HEARTBEAT = \"heartbeat\", L.DOWNLOAD = \"download\", L.REALTIME_BEACON = \"realtimeBeacon\", L.DISCONTINUITY = \"discontinuity\", L.KEY_FRAME = \"keyFrame\", L.PRIV_NAL = \"privNal\", L.SEI = \"sei\", L.EVENT = \"event\";\n })(Ai || (Ai = {}));\n var Er, jl, Gy = i(33), fh = i.n(Gy);\n (function(L) {\n L.NORMEL = \"normal\", L.SEEK = \"seek\", L.END = \"end\", L.LEVEL_SWITCH = \"levelSwitch\", L.FIRST_FRAME = \"firstFrame\", L.LOAD = \"load\", L.BACKUP = \"backup\";\n })(Er || (Er = {}));\n var Ky = new Uint8Array(16);\n function qy() {\n if (!jl && !(jl = typeof crypto < \"u\" && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto < \"u\" && typeof msCrypto.getRandomValues == \"function\" && msCrypto.getRandomValues.bind(msCrypto)))\n throw new Error(\"crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported\");\n return jl(Ky);\n }\n for (var Yy = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i, Xy = function(L) {\n return typeof L == \"string\" && Yy.test(L);\n }, $i = [], zl = 0; zl < 256; ++zl)\n $i.push((zl + 256).toString(16).substr(1));\n var Zy = function(L) {\n var A = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0, s = ($i[L[A + 0]] + $i[L[A + 1]] + $i[L[A + 2]] + $i[L[A + 3]] + \"-\" + $i[L[A + 4]] + $i[L[A + 5]] + \"-\" + $i[L[A + 6]] + $i[L[A + 7]] + \"-\" + $i[L[A + 8]] + $i[L[A + 9]] + \"-\" + $i[L[A + 10]] + $i[L[A + 11]] + $i[L[A + 12]] + $i[L[A + 13]] + $i[L[A + 14]] + $i[L[A + 15]]).toLowerCase();\n if (!Xy(s))\n throw TypeError(\"Stringified UUID is invalid\");\n return s;\n }, Hl, mi, Ti, Qy = function(L, A, s) {\n var a = (L = L || {}).random || (L.rng || qy)();\n if (a[6] = 15 & a[6] | 64, a[8] = 63 & a[8] | 128, A) {\n s = s || 0;\n for (var n = 0; n < 16; ++n)\n A[s + n] = a[n];\n return A;\n }\n return Zy(a);\n }, Jy = /\\/([A-Za-z0-9]+)[_A-Za-z0-9]*.flv/, ph = \"\", mh = \"\";\n function vh() {\n return Hl || (Hl = { support_mse: pt.isMSEAvailable() ? 1 : 0, support_aac: pt.isVideoCodecSupported(P.b.aac) ? 1 : 0, support_h264: pt.isVideoCodecSupported(P.b.h264) ? 1 : 0, support_h265_mse: pt.isMSECodecSupported(P.b.hevc) ? 1 : 0, support_h265: pt.isVideoCodecSupported(P.b.hevc) ? 1 : 0, support_av1_mse: pt.isMSECodecSupported(P.b.av1) ? 1 : 0, support_simd: pt.isSupportSimd ? 1 : 0, support_thread: pt.isSupportThreads ? 1 : 0, support_hw: pt.isSupportHW ? 1 : 0, support_change_type: pt.isChangeTypeSupported() ? 1 : 0, support_streaming: ns.isStreamingSupported() ? 1 : 0, hardware_concurrency: Fe() || 0, wasm_dec_smooth: pt.wasmSmooth ? 1 : 0 }), Hl;\n }\n function $l(L, A) {\n var s = { session_id: A.sessionId, kernel_version: Dr.version, pack_name: Dr.packName, creation_time: A.creationTime, src_update_time: L.srcUpdateTime, load_start_time: A.loadStartTime, instance_count: Dr.instanceCount };\n return typeof navigator < \"u\" && (navigator.webdriver && (s.webdriver = navigator.webdriver), navigator.onLine !== void 0 && (s.on_line = navigator.onLine ? 1 : 0)), s;\n }\n function gh() {\n var L = {};\n if (typeof navigator < \"u\") {\n navigator.onLine !== void 0 && (L.network_on_line = navigator.onLine ? 1 : 0);\n var A = navigator.connection || navigator.mozConnection || navigator.webkitConnection;\n (A == null ? void 0 : A.rtt) !== void 0 && (L.network_rtt = A.rtt), (A == null ? void 0 : A.rtt) !== void 0 && (L.network_downlink = A.downlink), (A == null ? void 0 : A.effectiveType) !== void 0 && (L.network_effective_type = A.effectiveType), (A == null ? void 0 : A.saveData) !== void 0 && (L.network_save_data = A.saveData ? 1 : 0);\n }\n return L;\n }\n function bh(L, A) {\n var s, a, n, f = (s = L.video) == null ? void 0 : s.duration, b = L.lctx.current, N = (b == null ? void 0 : b.currentUrl) || \"\", j = o()({ play_url: N, url_id: (b == null ? void 0 : b.urlId) || 0, stream_host: N ? new Ae.a(N).host : \"\", reuse: A.reuse, play_start_time: A.playStartTime, stream_duration: Math.round(1e3 * (f && Object(te.a)(f) ? f : 0)), max_bitrate: (b == null ? void 0 : b.maxBitrate) || 0, codec: A.codecs, play_pos: A.playPos || 0, v_data_rate: Math.round(((a = L.loadRec.currentLoad) == null ? void 0 : a.audioDataRate) || 0), a_data_rate: Math.round(((n = L.loadRec.currentLoad) == null ? void 0 : n.videoDataRate) || 0), drm: L.stat.drm ? 1 : 0, adaptive_multi_rate: L.lctx.abr ? 1 : 0, use_backup: A.useBackup, play_to_end: A.playToEnd, v_decoder: L.stat.decoder, video_codec_type: L.stat.codecType || P.b.unknown, start_codec: A.startCodec, demuxer: L.stat.demuxerType || zr.b.UNKNOWN, core_type: L.stat.coreType, box: L.stat.box, kwai_slice: L.stat.isKwaiSlice ? 1 : 0 }, $l(L, A), gh(), function(Te) {\n var De = Te.video;\n return De ? { elem_crossorigin: De.crossOrigin, elem_autoplay: De.autoplay ? 1 : 0, elem_loop: De.loop ? 1 : 0, elem_volume: De.volume, elem_muted: De.muted ? 1 : 0, elem_preload: De.preload, elem_controls: De.controls ? 1 : 0, elem_ready_state: De.readyState, elem_network_state: De.networkState } : {};\n }(L));\n typeof pt.playHEVCTest == \"boolean\" && (j.play_hevc_test = pt.playHEVCTest ? 1 : 0), L.stat.isLive !== void 0 && (j.live = L.stat.isLive ? 1 : 0), L.stat.liveShiftEnabled !== void 0 && (j.live_shift_enabled = L.stat.liveShiftEnabled ? 1 : 0), L.stat.box === P.g.flv && L.stat.isLive !== !1 && (j.stream_id = function(Te) {\n if (typeof Te != \"string\")\n return \"\";\n if (Te !== ph) {\n ph = Te;\n var De = Te.match(Jy);\n mh = De && De.length > 1 ? De[1] : \"\";\n }\n return mh;\n }(N), A.cdnIP && (j.cdn_ip = A.cdnIP)), A.customeHttpHeader && (j.custom_http_header = A.customeHttpHeader), b != null && b.bitrate && (j.bitrate = b.bitrate), b != null && b.qualityType && (j.quality_type = b.qualityType), b != null && b.qualityLabel && (j.quality_label = b.qualityLabel), A.startQualityType && (j.start_quality_type = A.startQualityType);\n var se = ya(N);\n se && (j.transcoding_template = se), typeof navigator < \"u\" && navigator.deviceMemory && (j.device_memory = navigator.deviceMemory);\n var ue = Object(V.a)();\n return ue.renderer && (j.gpu_renderer = ue.renderer), L.stat.wasmDecoder && (j.wasm_dec = L.stat.wasmDecoder, j.wasm_dec_simd = L.stat.wasmSimd ? 1 : 0, j.wasm_dec_threads = L.stat.wasmThreads || 0), j;\n }\n function yh() {\n var L = {};\n return typeof window < \"u\" && window.screen && (window.screen.width && (L.screen_w = window.screen.width), window.screen.height && (L.screen_h = window.screen.height), window.screen.colorDepth && (L.screen_color_depth = window.screen.colorDepth)), L;\n }\n function Eh(L) {\n var A = { src_type: L.stat.srcType };\n return L.stat.stereoType && (A.stereo_type = L.stat.stereoType), L.stat.mixCodecInput && L.stat.mixCodecInput.length && (A.mix_codec_input = L.stat.mixCodecInput), L.stat.mixContainerInput && L.stat.mixContainerInput.length && (A.mix_container_input = L.stat.mixContainerInput), L.stat.mixCodecAvailable && (A.mix_codec_available = L.stat.mixCodecAvailable), L.stat.mixQualityList && (A.mix_codec_available = L.stat.mixQualityList), L.stat.fallback264 && (A.fallback_264 = 1), A;\n }\n function wh(L) {\n var A = performance.now();\n return { play: Math.round(L.playDuration + (L.playStartMS ? A - L.playStartMS : 0)), actualPlay: Math.round(L.actualPlayDuration + (L.actualPlayStartMS ? A - L.actualPlayStartMS : 0)), pause: Math.round(L.pauseDuration + (L.pauseStartMS ? A - L.pauseStartMS : 0)), buffer: Math.round(L.bufferTime + (L.bufferingStartMS ? A - L.bufferingStartMS : 0)) };\n }\n (function(L) {\n L.PLAY = \"PLAY\", L.END = \"END\", L.PAUSE = \"PAUSE\", L.LOAD = \"LOAD\", L.BLOCK_START = \"BLOCK_START\", L.BLOCK_END = \"BLOCK_END\", L.SEEK_START = \"SEEK_START\", L.SEEK_END = \"SEEK_END\", L.LIVE_STOP = \"LIVE_STOP\", L.STOP = \"STOP\", L.ERROR = \"ERROR\", L.DESTORY = \"DESTORY\", L.QUALITY_CHANGE = \"QUALITY_CHANGE\", L.QUALITY_CHANGE_DATA = \"QUALITY_CHANGE_DATA\", L.QUALITY_CHANGE_RENDER = \"QUALITY_CHANGE_RENDER\", L.SPEED_CHANGE = \"SPEED_CHANGE\", L.RETRY = \"RETRY\", L.AUDIO_OUTPUT_DEVICE_CHANGE = \"AUDIO_OUTPUT_DEVICE_CHANGE\", L.NETWORK_CHANGE = \"NETWORK_CHANGE\", L.VIDEO_DOM_EVENT = \"VIDEO_DOM_EVENT\", L.FIRST_SCREEN_RENDER = \"FIRST_SCREEN_RENDER\", L.PREPARED = \"PREPARED\", L.METADATA_LOAD = \"METADATA_LOAD\";\n })(mi || (mi = {})), function(L) {\n L.START = \"start\", L.MANIFEST = \"manifest\", L.LEVEL = \"level\", L.DATA = \"data\", L.DEMUX = \"demux\", L.SEGMENT = \"segment\", L.CANPLAY = \"canplay\", L.LOADEDDATA = \"loadeddata\", L.SEEKED = \"seeked\";\n }(Ti || (Ti = {}));\n var Ah = [{ event: Ti.START, detailName: \"first-loader-open\" }, { event: Ti.MANIFEST, detailName: \"manifest-duration\" }, { event: Ti.LEVEL, detailName: \"level-duration\" }, { event: Ti.DATA, detailName: \"first-package-duration\" }, { event: Ti.DEMUX, detailName: \"first-remux-duration\" }, { event: Ti.SEGMENT, detailName: \"first-segment-duration\" }, { event: [Ti.LOADEDDATA, Ti.CANPLAY, Ti.SEEKED], detailName: \"first-frame-duration\" }], eE = function() {\n function L(s) {\n this._complete = 0, this._duration = 0, this._events = void 0, this._start = 0, this._lastEventTime = 0, this._details = {}, this._ctx = void 0, this._events = Ah.slice(0), this._ctx = s;\n }\n var A = L.prototype;\n return A.start = function() {\n w.b.i(\"first-frame\", \"start\"), this._complete = 0, this._start = performance.now(), this._duration = 0, this._events = Ah.slice(0), this._lastEventTime = 0, this._details = {}, this.process(Ti.START, this._start);\n }, A.process = function(s, a) {\n var n;\n if (a === void 0 && (a = 0), w.b.i(\"first-frame\", \"process type: \" + s + \" \" + a + \" complete: \" + this._complete), this._complete)\n return !1;\n var f = this._events, b = -1;\n a = a || performance.now();\n for (var N = 0; N < f.length; N++) {\n var j = f[N];\n if (Array.isArray(j.event)) {\n if (j.event.indexOf(s) !== -1) {\n b = N;\n break;\n }\n } else if (j.event === s) {\n b = N;\n break;\n }\n }\n if (b === -1)\n return !1;\n var se = f.splice(0, b + 1).pop(), ue = ((n = this._ctx.mse) == null ? void 0 : n.readyState) === \"closed\";\n if ((f.length === 0 || ue && s === Ti.SEGMENT) && (this._duration = a - this._start, this._complete = Date.now(), w.b.i(\"first-frame\", \"complete \" + this._duration + \" \" + this._complete)), se) {\n var Te = Math.round(a - this._lastEventTime);\n this._lastEventTime === 0 && (Te = Date.now()), this._lastEventTime = a, this._details[se.detailName] = Te;\n }\n return !!this._complete;\n }, A.onDownloadError = function() {\n this._details.download_retry ? this._details.download_retry++ : this._details.download_retry = 1;\n }, A.onRetry = function() {\n this._details.retry ? this._details.retry++ : this._details.retry = 1;\n }, v()(L, [{ key: \"complete\", get: function() {\n return this._complete;\n } }, { key: \"duration\", get: function() {\n return this._duration;\n } }, { key: \"details\", get: function() {\n return this._details;\n } }]), L;\n }(), tE = function() {\n function L(s, a) {\n this._data = void 0, this._ctx = void 0, this._snapshot = void 0, this._tickIndex = 1, this._statTimestampMillis = 0, this._statTimestampMillisUTC = 0, this._firstScreen = !0, this._firstScreenDetails = void 0, this._firstScreenDuration = null, this._clickToFirstFrame = 0, this._errorCode = 0, this._errorMessage = \"\", this._data = s, this._ctx = a, this._tickIndex = 1, this._snapshot = { play: 0, actualPlay: 0, pause: 0, buffer: 0, blockCount: 0, pauseCnt: 0, renderBlockCount: 0, seekCnt: 0, seekLoadCnt: 0, decodedFrames: 0, droppedFrames: 0, traffic: 0, download: 0, mseUpdate: 0, mseRemove: 0, segment: 0, preloadCount: 0, fillA: 0, fillV: 0, keyFrame: 0, onLineChange: 0, visibilityChange: 0, heartbeatTimeout: 0, loadCnt: 0, refreshCnt: 0 }, this._resetForNewInterval();\n }\n var A = L.prototype;\n return A._updateSnapshot = function(s, a) {\n var n = {};\n for (var f in a)\n typeof s[f] == \"number\" && (n[f] = s[f] - a[f], a[f] = s[f]);\n return n;\n }, A._resetForNewInterval = function() {\n this._statTimestampMillis = performance.now(), this._statTimestampMillisUTC = Date.now(), this._firstScreenDuration = null, this._firstScreenDetails = void 0, this._errorCode = 0, this._errorMessage = \"\";\n }, A.setFirstScreenDuration = function(s, a, n) {\n this._firstScreenDuration = Math.round(s), this._firstScreenDetails = a, this._firstScreen = !0, this._clickToFirstFrame = n;\n }, A.setError = function(s, a) {\n this._errorCode = s, this._errorMessage = a;\n }, A.build = function() {\n var s = this._data, a = this._ctx, n = this._ctx.stat, f = performance.now(), b = Math.round(f - this._statTimestampMillis), N = this._updateSnapshot(s, this._snapshot), j = this._updateSnapshot(wh(this._data), this._snapshot), se = this._updateSnapshot(this._ctx.loadRec, this._snapshot), ue = this._updateSnapshot({ fillA: this._ctx.loadRec.fillA, fillV: this._ctx.loadRec.fillV }, this._snapshot), Te = this._ctx.loadRec.downloadInfoByRange(b), De = Te.timeCost ? Math.round(Te.size / Te.timeCost * 1e3) : 0, Ne = { tick_index: this._tickIndex, tick_start: this._statTimestampMillisUTC, tick_duration: b, error_code: this._errorCode, error_message: this._errorMessage, block_cnt: N.blockCount || 0, render_block_cnt: N.renderBlockCount || 0, decoded_video_frames: N.decodedFrames || 0, dropped_video_frames: N.droppedFrames || 0, segment_cnt: N.segment || 0, play_duration: j.play || 0, buffer_time: j.buffer || 0, actual_play_duration: j.actualPlay || 0, played_video_duration: j.play || 0, traffic: se.traffic >> 10, hidden: Bl() ? 1 : 0, download: N.download, download_speed: De, seek_cnt: N.seekCnt, seek_load_cnt: N.seekLoadCnt, pause_duration: j.pause, pause_cnt: N.pauseCnt, preload_cnt: N.preloadCount, on_line_change: N.onLineChange, visibility_change: N.visibilityChange, heartbeat_timeout: N.heartbeatTimeout, load_cnt: N.loadCnt, refresh_cnt: N.refreshCnt };\n return o()(Ne, bh(a, s), function($e) {\n var ht, Je, kt, Xt, vt;\n return $e.mse ? (Xt = $e.mse.bufferedByType(P.l.VIDEO), vt = $e.mse.bufferedByType(P.l.AUDIO)) : Xt = vt = $e.mediaBufferedSec, { a_buf_start: Math.round(1e3 * vt.start) || 0, a_buf_end: Math.round(1e3 * vt.end) || 0, a_buf_len: Math.round(1e3 * Math.max(0, vt.end - $e.currentTime)) || 0, a_buf_slices: ((ht = $e.mse) == null ? void 0 : ht.bufferSliceNumByType(P.l.AUDIO)) || $e.bufferSliceNum || 0, v_buf_start: Math.round(1e3 * Xt.start) || 0, v_buf_end: Math.round(1e3 * Xt.end) || 0, v_buf_len: Math.round(1e3 * Math.max(0, Xt.end - $e.currentTime)) || 0, v_buf_slices: ((Je = $e.mse) == null ? void 0 : Je.bufferSliceNumByType(P.l.VIDEO)) || $e.bufferSliceNum || 0, buffer_queue_cnt: ((kt = $e.mse) == null ? void 0 : kt.pendingNum()) || 0 };\n }(a), function($e) {\n if ($e.stat.isLive && $e.stat.box === P.g.flv) {\n var ht = $e.liveDelay.getDisplayDelay($e.currentTime);\n if (ht)\n return { v_rec_delay: $e.liveDelay.getRecDelay(), v_render_delay: ht || 0, a_render_delay: $e.liveDelay.getAudioRenderDelay($e.currentTime) || 0 };\n }\n return {};\n }(a)), ue.fillA && (Ne.fill_a = ue.fillA), ue.fillV && (Ne.fill_v = ue.fillV), n.coreType === P.a.mse && (Ne.mse_update_cnt = N.mseUpdate || 0, Ne.mse_remove_cnt = N.mseRemove || 0, Ne.key_frame_cnt = N.keyFrame, n.isLive ? (a.stat.liveShiftEnabled, Ne.live_shift = a.stat.liveShift ? 1 : 0) : (Ne.lazyload_min = Math.floor(n.lazyLoadRecoverDuration), Ne.lazyload_max = Math.floor(n.lazyLoadMaxDuration))), this._firstScreen && (this._firstScreenDuration === null ? Ne.first_screen_total_duration = 0 : (Ne.first_screen_total_duration = this._firstScreenDuration, Ne.first_screen_details = this._firstScreenDetails, n.coreType === P.a.mse && n.box === P.g.mp4 && (Ne.mp4_moov_size = s.mp4MoovSize, s.mp4FastStart !== void 0 && (Ne.mp4_fast_start = s.mp4FastStart ? 0 : 1)), this._firstScreenDetails = null, this._firstScreenDuration = null, this._firstScreen = !1)), typeof this._clickToFirstFrame == \"number\" && s.playStartTime && (Ne.click_to_first_frame = this._clickToFirstFrame, this._clickToFirstFrame > 0 && (this._clickToFirstFrame = void 0)), this._tickIndex === 1 && o()(Ne, vh(), Eh(this._ctx), yh()), this._resetForNewInterval(), this._tickIndex++, Ne;\n }, L;\n }();\n function Th(L, A) {\n var s = Object.keys(L);\n if (Object.getOwnPropertySymbols) {\n var a = Object.getOwnPropertySymbols(L);\n A && (a = a.filter(function(n) {\n return Object.getOwnPropertyDescriptor(L, n).enumerable;\n })), s.push.apply(s, a);\n }\n return s;\n }\n function Sh(L) {\n for (var A = 1; A < arguments.length; A++) {\n var s = arguments[A] != null ? arguments[A] : {};\n A % 2 ? Th(Object(s), !0).forEach(function(a) {\n fh()(L, a, s[a]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(L, Object.getOwnPropertyDescriptors(s)) : Th(Object(s)).forEach(function(a) {\n Object.defineProperty(L, a, Object.getOwnPropertyDescriptor(s, a));\n });\n }\n return L;\n }\n var iE = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this) || this)._beaconTimer = void 0, n._creationTime = void 0, n._runningStartTime = void 0, n._ctx = void 0, n._firstFrame = void 0, n._data = void 0, n._realtimeBeacon = void 0, n._hiddenStart = !1, n._playing = !1, n._seeking = !1, n._seekLoadFlag = !1, n._seekingThrottle = null, n._seekedDebounce = null, n._onOnlineChange = function() {\n n._data.onLineChange++, n.triggerEventReport(mi.NETWORK_CHANGE, { online: navigator.onLine !== void 0 ? navigator.onLine ? 1 : 0 : null });\n }, n._onVisibilityChange = function() {\n n._data.visibilityChange++;\n }, n._sendRealtimeBeacon = function(f) {\n var b;\n f === void 0 && (f = Er.NORMEL);\n var N = (b = n._realtimeBeacon) == null ? void 0 : b.build();\n N && (f === Er.NORMEL && N.first_screen_total_duration > 0 ? N.type = Er.FIRST_FRAME : N.type = f, n._ctx.stat.isLive || (N.seek_record = n._data.seekRecord.slice(0), n._data.seekRecord = []), w.b.i(\"monitor\", \"realtime beacon\", N), n.emit(u.a.REPORT, { type: Ai.REALTIME_BEACON, value: N }));\n }, n._beaconTimer = null, n._runningStartTime = performance.now(), n._creationTime = Date.now(), n._firstFrame = new eE(a), n._ctx = a, n._reset(), typeof window < \"u\" && (window.addEventListener(\"online\", n._onOnlineChange), window.addEventListener(\"offline\", n._onOnlineChange)), typeof document < \"u\" && document.addEventListener(\"visibilitychange\", n._onVisibilityChange), n;\n }\n x()(A, L);\n var s = A.prototype;\n return s._reset = function() {\n this._playing = !1, this._seeking = !1, this._seekLoadFlag = !1, this._seekedDebounce && clearTimeout(this._seekedDebounce), this._seekingThrottle && clearTimeout(this._seekingThrottle), this._data = { decodedFrames: 0, droppedFrames: 0, sessionId: Qy(), creationTime: 0, startTime: 0, loadStartTime: 0, playStartTime: 0, playDuration: 0, actualPlayDuration: 0, pauseDuration: 0, pauseCnt: 0, bufferTime: 0, blockCount: 0, renderBlockCount: 0, seekCnt: 0, seekDuration: 0, seekLoadCnt: 0, seekLoadDuration: 0, seekStartTime: 0, unknownTSPacketCount: 0, audioNonMonotonous: 0, startBitrate: 0, smoothBitrate: -1, useBackup: 0, aacOverhead: 0, errorCode: 0, errorMessage: \"\", download: 0, preloadCount: 0, reuse: 0, playPos: 0, seekRecord: [], codecs: \"\", firstScreenTotalDuration: 0, clickToFirstFrame: 0, playToEnd: 0, fillA: 0, fillV: 0, keyFrame: 0, onLineChange: 0, visibilityChange: 0, lastHeartbeatTime: 0, heartbeatTimeout: 0, loadCnt: 0, refreshCnt: 0 }, this._data.creationTime = this._creationTime, w.b.i(\"monitor\", \"reset\", this._data.sessionId), this._ctx.fps.reset(), this._ctx.fps.getFPS(this._ctx.videoPlaybackQuality);\n }, s.onLoaderChunkArrival = function(a) {\n this._ctx.loadRec.onDataReceive(a), this._processFirstFrame(Ti.DATA);\n }, s.onMediaConnect = function(a) {\n a.headers && (this._data.customeHttpHeader = ke(a.headers));\n }, s.onMediaDemux = function(a) {\n this._processFirstFrame(Ti.DEMUX, performance.now());\n }, s.onKeyFrame = function(a) {\n this._ctx.loadRec.currentLoad && this._ctx.loadRec.currentLoad.keyFrame++, this.data.keyFrame++, a && this.emit(u.a.REPORT, { type: Ai.KEY_FRAME, value: a });\n }, s.onDecLibLoaded = function(a) {\n this._data.decLibLoadDuration = a.duration, this._data.decLibCacheHit = a.hitCache;\n }, s.onNewSource = function(a) {\n var n = this._data, f = this._ctx.lctx.current;\n f ? (this._ctx.loadRec.onStreamOpen(a.sync, f.currentUrl, f.bitrate, f.qualityType), n.level = this._ctx.lctx.currentIdx, n.startQualityType || (n.startQualityType = f.qualityType)) : this._ctx.loadRec.onStreamOpen(a.sync, \"\", 0, \"unknown\");\n }, s.onDiscontinuity = function(a) {\n this.emit(u.a.REPORT, { type: Ai.DISCONTINUITY, value: a });\n }, s.onDownload = function(a) {\n var n = this, f = this._data;\n a.error_code && !this._firstFrame.complete && this._firstFrame.onDownloadError(), f.download++;\n var b = o()({ use_backup: f.useBackup, first_screen: f.firstScreenTotalDuration ? 1 : 0 }, $l(this._ctx, f), gh(), a);\n a.error_code === 1009 ? setTimeout(function() {\n n.emit(u.a.REPORT, { type: Ai.DOWNLOAD, value: b });\n }, 0) : this.emit(u.a.REPORT, { type: Ai.DOWNLOAD, value: b });\n }, s.heartbeat = function() {\n var a, n, f = this._data, b = this._ctx, N = b.fps.getFPS(this._ctx.videoPlaybackQuality), j = {}, se = b.loadRec, ue = performance.now();\n f.lastHeartbeatTime && ue - f.lastHeartbeatTime > g.h && f.heartbeatTimeout++, f.lastHeartbeatTime = performance.now(), (b.stat.coreType === P.a.mse || b.stat.coreType === P.a.rtc) && (j.totalReceive = se.traffic, j.speed = se.speed, j.videoDataRate = ((a = se.currentLoad) == null ? void 0 : a.videoDataRate) || 0, j.audioDataRate = ((n = se.currentLoad) == null ? void 0 : n.audioDataRate) || 0), b.mse && (j.videoBuffered = Math.round(Math.max(0, 1e3 * (b.mse.bufferedEndByType(P.l.VIDEO) - b.currentTime))), j.audioBuffered = Math.round(Math.max(0, 1e3 * (b.mse.bufferedEndByType(P.l.AUDIO) - b.currentTime))), j.fillAudio = f.fillA, j.fillVideo = f.fillV, j.keyFrame = f.keyFrame, b.stat.isLive ? (j.isLive = b.stat.isLive, b.stat.liveShiftEnabled && (j.liveShift = b.stat.liveShift)) : (j.lazyloadMin = b.stat.lazyLoadRecoverDuration, j.lazyloadMax = b.stat.lazyLoadMaxDuration)), j.buffered = Math.round(1e3 * b.bufferedSec), j.decodedFPS = (N == null ? void 0 : N.decodedFPS) || 0, j.droppedFPS = (N == null ? void 0 : N.droppedFPS) || 0, f.decodedFrames = j.decodedFrames = (N == null ? void 0 : N.decoded) || 0, f.droppedFrames = j.droppedFrames = (N == null ? void 0 : N.dropped) || 0, b.stat.isLive && b.stat.box === P.g.flv && (j.audioRenderDelay = b.liveDelay.getAudioRenderDelay(b.currentTime), j.displayDelay = b.liveDelay.getDisplayDelay(b.currentTime), j.recDelay = b.liveDelay.getRecDelay()), this.emit(u.a.REPORT, { type: Ai.HEARTBEAT, value: j });\n }, s.destroy = function() {\n w.b.i(\"monitor\", \"destroy\"), this.triggerEventReport(mi.DESTORY), this._sendRealtimeBeacon(Er.END), this._stopBeaconTimer(), typeof window < \"u\" && (window.removeEventListener(\"online\", this._onOnlineChange), window.removeEventListener(\"offline\", this._onOnlineChange)), typeof document < \"u\" && document.removeEventListener(\"visibilitychange\", this._onVisibilityChange), this._seekedDebounce && clearTimeout(this._seekedDebounce), this._seekingThrottle && clearTimeout(this._seekingThrottle), this.removeAllListeners();\n }, s.onPreload = function() {\n this._data.preloadCount++;\n }, s.onLoad = function(a) {\n if (w.b.i(\"monitor\", \"on load: \" + a.type), this._data.loadCnt++, a.type)\n a.type !== P.f.internal && a.type !== P.f.retry || this._firstFrame.complete || this._firstFrame.start(), this._data.errorCode = 0, this._data.errorMessage = \"\";\n else {\n var n, f = ((n = this._ctx.lctx.current) == null ? void 0 : n.currentUrl) || \"\";\n if (this._data.startTime) {\n var b = this._data.reuse;\n this._reset(), this._data.reuse = b + 1;\n }\n this.triggerEventReport(mi.LOAD, { url: f, protocol: this._ctx.stat.box, initial_speed: String(this._ctx.video && this._ctx.video.playbackRate) }), this._data.startTime = performance.now(), this._data.loadStartTime = Date.now(), this._firstFrame.start(), this._hiddenStart = Bl(), this._stopBeaconTimer(), this._realtimeBeacon = new tE(this._data, this._ctx), this._sendRealtimeBeacon(Er.LOAD);\n }\n }, s.onStopLoad = function() {\n this._sendRealtimeBeacon(Er.END), this._stopBeaconTimer(), this._waitingEnd(), this._ctx.stat.isLive && this.triggerEventReport(mi.LIVE_STOP);\n }, s.onManifest = function(a) {\n var n = this._ctx.lctx.current;\n n && (this._data.startBitrate || (this._data.startBitrate = n.bitrate)), this._processFirstFrame(Ti.MANIFEST);\n }, s.onLevel = function(a) {\n a === void 0 && (a = 0), this._processFirstFrame(Ti.LEVEL, a);\n }, s.onAudioTrack = function() {\n }, s.onMediaInfo = function(a) {\n var n = this._ctx;\n a.box = n.stat.box, typeof n.stat.isLive == \"boolean\" && (a.isLive = n.stat.isLive), typeof n.stat.liveShiftEnabled == \"boolean\" && (a.liveShiftEnabled = n.stat.liveShiftEnabled), a.packName = Dr.packName, n.loadRec.onMediaInfo(a);\n var f = [];\n a.videoCodec && f.push(a.videoCodec), a.audioCodec && f.push(a.audioCodec), this._data.codecs = f.join(\",\"), this._data.startCodec || (this._data.startCodec = this._data.codecs), a.sid = this._data.sessionId, a.hardwareAccelerated = pt.isSupportHW, a.coreType = n.stat.coreType, !a.streamHost && n.lctx.currentUrl && (a.streamHost = new Ae.a(n.lctx.currentUrl).host);\n var b = Object(V.a)();\n b.renderer && (a.gpu = b.renderer), n.loadRec.currentLoad && (n.loadRec.currentLoad.mediaInfo = a), n.stat.isLive && n.stat.box === P.g.flv && n.config.ntp && n.liveDelay.init(), n.stat.isKwaiSlice && (a.isKwaiSlice = n.stat.isKwaiSlice);\n var N = JSON.stringify(a);\n w.b.i(\"monitor\", \"mediainfo\", N), this.emit(u.a.REPORT, { type: Ai.MEDIA_INFO, value: JSON.parse(N) });\n }, s.onSegment = function(a) {\n if (a.extra && a.extra.stat) {\n var n = this._data;\n n.unknownTSPacketCount = n.unknownTSPacketCount || a.extra.stat.unknownTSPacketCount || 0, n.audioNonMonotonous = n.audioNonMonotonous || a.extra.stat.audioNonMonotonous || 0, n.aacOverhead = n.aacOverhead || a.extra.stat.aacOverhead || 0;\n }\n this._processFirstFrame(Ti.SEGMENT);\n }, s.onPrivNal = function(a) {\n this._ctx.liveDelay.onPrivNal(a), this.emit(u.a.REPORT, { type: Ai.PRIV_NAL, value: { info: a.info } });\n }, s.onSEI = function(a) {\n this.emit(u.a.REPORT, { type: Ai.SEI, value: a });\n }, s.onPlay = function() {\n this._data.playStartTime || (this._data.playStartTime = Date.now()), this._startBeaconTimer();\n }, s.onLoadeddata = function() {\n this._processFirstFrame(Ti.LOADEDDATA), this._waitingEnd();\n }, s.onCanplay = function() {\n this._processFirstFrame(Ti.CANPLAY), Me.a.safari && this._ctx.stat.coreType !== P.a.mse || this._waitingEnd();\n }, s.onPlaying = function() {\n var a;\n Me.a.ios && ((a = this._ctx.video) == null ? void 0 : a.readyState) !== 4 || (this._playing || (this._playing = !0, this.triggerEventReport(mi.PLAY)), this._playStart(), this._pauseEnd(), this._waitingEnd());\n }, s.onPause = function() {\n var a;\n (a = this._ctx.video) != null && a.seeking || !this._playing || (this._playEnd(), this._pauseStart(), this.triggerEventReport(mi.PAUSE), this._playing = !1);\n }, s.onEnd = function() {\n this._data.playToEnd++, this._playing = !1, this._playEnd(), this._pauseEnd(), this._waitingEnd(), this._sendRealtimeBeacon(Er.END), this._stopBeaconTimer(), this.triggerEventReport(mi.END);\n }, s.onWaiting = function(a) {\n this._data.playPos = Math.round(1e3 * this._ctx.currentTime), this._playing && this._firstFrame.complete && a.block && (this._waitingStart(a.bufferedSec), this.triggerEventReport(mi.BLOCK_START));\n }, s.onSeek = function(a) {\n var n, f, b = this;\n this._data.seekRecord.push({ from: this._data.playPos, to: Math.round(1e3 * this._ctx.currentTime), time: Date.now() }), this._data.seekRecord.length > 50 && this._data.seekRecord.shift(), this._ctx.stat.isLive || a != null && a.internal || (this._data.seekStartTime = performance.now(), this._seeking ? !this._seekingThrottle && this._seeking && (this._seekingThrottle = +setTimeout(function(N) {\n var j, se;\n b.triggerEventReport(mi.SEEK_START, { paused: (j = b._ctx.video) == null ? void 0 : j.paused, seeking: (se = b._ctx.video) == null ? void 0 : se.seeking, position: N }), b._seekingThrottle = null;\n }, 500, this._data.playPos / 1e3)) : (this.triggerEventReport(mi.SEEK_START, { paused: (n = this._ctx.video) == null ? void 0 : n.paused, seeking: (f = this._ctx.video) == null ? void 0 : f.seeking, position: this._data.playPos / 1e3 }), this._seeking = !0));\n }, s.onSeekWithLoad = function() {\n this._firstFrame.complete && (this._sendRealtimeBeacon(Er.SEEK), this._resetBeaconTimer(), this._seekLoadFlag = !0);\n }, s.onSeeked = function() {\n var a = this;\n if (this._ctx.fps.getFPS(this._ctx.videoPlaybackQuality), this._data.seekStartTime) {\n var n;\n this._data.seekCnt++;\n var f = Math.round(performance.now() - this._data.seekStartTime);\n this._data.seekDuration += f, this._data.seekStartTime = 0, this._seekLoadFlag && (this._data.seekLoadCnt++, this._data.seekLoadDuration += f), this._seekedDebounce && clearTimeout(this._seekedDebounce), this._seekedDebounce = +setTimeout(function(b) {\n var N, j, se;\n (N = a._ctx.video) != null && N.seeking || (a._seeking = !1, a.triggerEventReport(mi.SEEK_END, { paused: (j = a._ctx.video) == null ? void 0 : j.paused, seeking: (se = a._ctx.video) == null ? void 0 : se.seeking, position: b }));\n }, 500, (n = this._ctx.video) == null ? void 0 : n.currentTime);\n }\n this._seekLoadFlag = !1, this._firstFrame.complete || this._ctx.stat.coreType === P.a.mse || !Me.a.safari && !Me.a.msie || this._processFirstFrame(Ti.SEEKED);\n }, s.onTimeupdate = function() {\n var a, n, f = this._ctx, b = f.video;\n if (b) {\n b.loop && !f.stat.isLive && f.currentTime === 0 && Object(te.a)(b.duration) && b.duration > 0 && b.duration - this._data.playPos / 1e3 < 1 && this._data.playToEnd++;\n var N = Math.round(1e3 * f.currentTime);\n Me.a.msie && f.stat.coreType !== P.a.mse && this._data.bufferingStartMS && this._data.playPos !== N && this.onPlaying(), this._data.playPos = N, !Me.a.ios || typeof this._data.bufferingStartMS != \"number\" || ((a = this._ctx.video) == null ? void 0 : a.readyState) !== 4 || (n = this._ctx.video) != null && n.paused || this.onPlaying();\n }\n }, s.onProgress = function() {\n var a;\n Me.a.safari && this._ctx.stat.coreType !== P.a.mse && this._data.bufferingStartMS && ((a = this._ctx.video) == null ? void 0 : a.readyState) === 4 && this._waitingEnd();\n }, s.mediaCapabilities = function(a) {\n this._data.smoothBitrate = a;\n }, s.levelSwitching = function(a) {\n a.smooth || (this._sendRealtimeBeacon(Er.LEVEL_SWITCH), this._resetBeaconTimer());\n var n = this._ctx.lctx.current;\n n && this.triggerEventReport(mi.QUALITY_CHANGE, { quality_type: n.qualityType, trigger_mode: a.auto ? \"abr\" : \"user\", play_url: n.currentUrl, is_smooth: a.smooth ? 1 : 0 });\n }, s.levelSwitched = function() {\n this.triggerEventReport(mi.QUALITY_CHANGE_DATA);\n }, s.levelSwitchPlaying = function() {\n this.triggerEventReport(mi.QUALITY_CHANGE_RENDER);\n }, s.onAudioSwitching = function() {\n }, s.onAudioSwitched = function() {\n }, s.onRetry = function(a) {\n a.type === P.h.BACKUP && (this._data.useBackup = 1), this._firstFrame.onRetry(), this.triggerEventReport(mi.RETRY, { retry_type: a.type, retry_message: a.message, error_code: a.code || 0 }), a.type === P.h.BACKUP && (this._realtimeBeacon && this._realtimeBeacon.setError(a.code || 0, a.message || \"\"), this._sendRealtimeBeacon(Er.BACKUP), this._realtimeBeacon && this._realtimeBeacon.setError(0, \"\"));\n }, s.onRefresh = function() {\n this._data.refreshCnt++;\n }, s.onMetaData = function(a) {\n a.mp4MoovSize && (this._data.mp4MoovSize = a.mp4MoovSize), typeof a.mp4FastStart == \"number\" && (this._data.mp4FastStart = a.mp4FastStart), typeof a.cdn_ip == \"string\" && (this._data.cdnIP = a.cdn_ip), this.emit(u.a.REPORT, { type: Ai.METADATA, value: a }), this.triggerEventReport(mi.METADATA_LOAD, Sh({}, a));\n }, s.triggerEventReport = function(a, n) {\n this.emit(u.a.REPORT, { type: Ai.EVENT, value: o()(Sh({ type: a, position: this._ctx.currentTime }, n), $l(this._ctx, this._data)) });\n }, s.onRateChange = function() {\n var a;\n !this._ctx.video || (a = this._ctx.video) != null && a.seeking || this.triggerEventReport(mi.SPEED_CHANGE, { speed: this._ctx.video.playbackRate });\n }, s.onError = function(a, n) {\n this._data.errorCode = a, this._data.errorMessage = n, this.triggerEventReport(mi.ERROR, { error_message: n, error_type: a }), this._realtimeBeacon && this._realtimeBeacon.setError(a, n), this._playEnd(), this._pauseEnd(), this._waitingEnd();\n }, s._processFirstFrame = function(a, n) {\n n === void 0 && (n = 0), !this._firstFrame.complete && this._firstFrame.process(a, n) && this._onFirstFrame();\n }, s._playStart = function() {\n this._data.playStartMS = this._data.playStartMS || performance.now(), this._data.actualPlayStartMS = this._data.actualPlayStartMS || performance.now();\n }, s._playEnd = function() {\n this._data.playStartMS && (this._data.playDuration += performance.now() - this._data.playStartMS), this._data.actualPlayStartMS && (this._data.actualPlayDuration += performance.now() - this._data.actualPlayStartMS), this._data.playStartMS = void 0, this._data.actualPlayStartMS = void 0;\n }, s._pauseStart = function() {\n this._data.pauseCnt++, this._data.pauseStartMS = this._data.pauseStartMS || performance.now();\n }, s._pauseEnd = function() {\n this._data.pauseStartMS && (this._data.pauseDuration += performance.now() - this._data.pauseStartMS), this._data.pauseStartMS = void 0;\n }, s._waitingStart = function(a) {\n this._data.bufferingStartMS || (this._data.blockCount++, this._data.bufferingStartMS = performance.now(), a > 0.6 && this._data.renderBlockCount++), this._data.actualPlayStartMS && (this._data.actualPlayDuration += performance.now() - this._data.actualPlayStartMS), this._data.actualPlayStartMS = void 0;\n }, s._waitingEnd = function() {\n this._data.bufferingStartMS && (this._data.bufferTime += performance.now() - this._data.bufferingStartMS, this._data.bufferingStartMS = void 0, this.triggerEventReport(mi.BLOCK_END));\n }, s._onFirstFrame = function() {\n var a, n, f, b, N, j;\n w.b.i(\"monitor\", \"first frame\"), this._ctx.stat.firstFrameLoaded = !0;\n var se = this._data, ue = this._ctx.loadRec.currentLoad;\n se.firstScreenTotalDuration = se.firstScreenTotalDuration || Math.round(this._firstFrame.duration), se.firstScreenDetails = se.firstScreenDetails || this._firstFrame.details, this.triggerEventReport(mi.FIRST_SCREEN_RENDER, { initial_rate: Math.round(((a = this._ctx.loadRec.currentLoad) == null ? void 0 : a.videoDataRate) || 0), inital_quality_type: this._data.startQualityType, fps: ue == null || (n = ue.mediaInfo) == null ? void 0 : n.fps, a_codec: ue == null || (f = ue.mediaInfo) == null ? void 0 : f.audioCodec, v_codec: ue == null || (b = ue.mediaInfo) == null ? void 0 : b.videoCodec, channels: ue == null || (N = ue.mediaInfo) == null ? void 0 : N.channelCount, sample_rate: ue == null || (j = ue.mediaInfo) == null ? void 0 : j.audioSampleRate }), se.playStartTime && this._firstFrame.complete ? se.clickToFirstFrame = se.clickToFirstFrame || Math.max(1, this._firstFrame.complete - se.playStartTime) : se.clickToFirstFrame = 1, this._realtimeBeacon && this._realtimeBeacon.setFirstScreenDuration(this._firstFrame.duration, this._firstFrame.details, se.clickToFirstFrame), this._ctx.video && !this._ctx.video.paused && this._playStart();\n }, s._startBeaconTimer = function() {\n this._beaconTimer === null && (this._beaconTimer = setInterval(this._sendRealtimeBeacon, 1e4));\n }, s._stopBeaconTimer = function() {\n this._beaconTimer && (clearTimeout(this._beaconTimer), this._beaconTimer = null);\n }, s._resetBeaconTimer = function() {\n this._stopBeaconTimer(), this._startBeaconTimer();\n }, v()(A, [{ key: \"runningStartTime\", get: function() {\n return this._runningStartTime;\n } }, { key: \"sid\", get: function() {\n return this._data.sessionId;\n } }, { key: \"snapshot\", get: function() {\n var a = this._ctx.loadRec, n = this._ctx.stat;\n return o()({ streams: a.streams, live: n.isLive, liveShift: n.liveShift, demuxer: n.demuxerType, decSimd: n.wasmSimd, decThreads: n.wasmThreads, decoderType: n.wasmDecoder }, this._data);\n } }, { key: \"data\", get: function() {\n return this._data;\n } }, { key: \"audienceStat\", get: function() {\n var a, n, f, b = this._data, N = wh(b), j = this._ctx.stat, se = this._ctx.loadRec, ue = { play_duration: N.play, actual_play_duration: N.actualPlay, traffic: se.traffic >> 10, buffer_time: N.buffer, block_cnt: b.blockCount, render_block_cnt: b.renderBlockCount, click_to_first_frame: b.playStartTime && b.clickToFirstFrame || 0, first_screen_total_duration: Math.round(b.firstScreenTotalDuration) || 0, first_screen_details: b.firstScreenDetails || this._firstFrame.details || null, error_code: b.errorCode || 0, error_message: b.errorMessage || \"\", remux_process_type: (this._ctx.streamingMuxEnabled ? 1 : 0) + (j.gopRemux ? 1 : 0), hidden_start: this._hiddenStart ? 1 : 0, current_running_time: Math.round(performance.now() - b.startTime), running_time: Math.round(performance.now() - this._runningStartTime), smooth_bitrate: b.smoothBitrate, start_bitrate: b.startBitrate || 0, abr: this._ctx.config.adaptive ? 1 : 0, pause_cnt: b.pauseCnt, preload_cnt: b.preloadCount, retry_record: j.retryInfos, traffic_vcodec: se.trafficGroupedByVCodecType, traffic_level: se.trafficGroupedByLevel, decoded_video_frames: b.decodedFrames || 0, dropped_video_frames: b.droppedFrames || 0, pause_duration: N.pause, seek_cnt: b.seekCnt, seek_duration: b.seekDuration, seek_load_cnt: b.seekLoadCnt, seek_load_duration: b.seekLoadDuration, start_sec: j.isLive ? 0 : Math.round(this._ctx.config.startFromSec || 0), on_line_change: b.onLineChange, visibility_change: b.visibilityChange, heartbeat_timeout: b.heartbeatTimeout, load_cnt: b.loadCnt, refresh_cnt: b.refreshCnt };\n return Me.a.version && (ue.browser_name = Me.a.name || \"\", ue.browser_major = Me.a.version.major || 0), o()(ue, vh(), bh(this._ctx, b), (n = (a = this._ctx.loadRec.currentLoad) == null ? void 0 : a.mediaInfo, f = {}, n && (n.fps && (f.fps = n.fps), n.width && (f.width = n.width), n.height && (f.height = n.height), n.codedWidth && (f.coded_width = n.codedWidth), n.codedHeight && (f.coded_height = n.codedHeight), n.sar && n.sar.width !== n.sar.height && (f.sar = n.sar), n.enhancedFlv && (f.enhanced_flv = n.enhancedFlv ? 1 : 0)), f), Eh(this._ctx), yh()), j.coreType === P.a.mse && this._ctx.mse && (ue.mse_buffer_full = this._ctx.mse.stat.mseBufferFull, ue.mse_remove = this._ctx.mse.stat.mseRemove, ue.key_frame_cnt = b.keyFrame, j.box === P.g.mp4 && (ue.mp4_moov_size = b.mp4MoovSize, b.mp4FastStart !== void 0 && (ue.mp4_fast_start = b.mp4FastStart ? 0 : 1))), b.fillA && (ue.fill_a = b.fillA), b.fillV && (ue.fill_v = b.fillV), Le(j.box) && (ue.unknown_ts_packet_count = b.unknownTSPacketCount, ue.audio_non_monotonous = b.audioNonMonotonous, ue.aac_overhead = b.aacOverhead), typeof b.decLibLoadDuration == \"number\" && (ue.dec_lib_load_duration = Math.round(b.decLibLoadDuration), ue.dec_lib_hit = b.decLibCacheHit ? 1 : 0), ue;\n } }]), A;\n }(W.a), rE = function() {\n function L() {\n var s = this;\n this._timer = void 0, this._xhr = void 0, this._callbackFunc = void 0, this._onEnd = function() {\n s._detectEnd();\n }, this._onReadystatechange = function() {\n s._xhr && s._xhr.readyState >= 2 && s._detectEnd();\n }, this._detectEnd = function() {\n s._xhr && s._callbackFunc && s._callbackFunc(s._xhr.status), s.stop();\n };\n }\n var A = L.prototype;\n return A.start = function(s, a) {\n this._callbackFunc = a, this._xhr && this.stop();\n var n = this._xhr = new XMLHttpRequest();\n n.open(\"GET\", s, !0), n.onreadystatechange = this._onReadystatechange, n.onerror = this._onEnd, n.onload = this._onEnd, n.send(), this._timer = setTimeout(this._detectEnd, 1e3);\n }, A.stop = function() {\n this._timer && (clearTimeout(this._timer), this._timer = void 0), this._xhr && (this._xhr.onreadystatechange = null, this._xhr.onload = null, this._xhr.onerror = null, this._xhr.abort(), this._xhr = void 0), this._callbackFunc = void 0;\n }, L;\n }(), nE = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this, a.video) || this)._ctx = void 0, n._httpStatusDetector = void 0, n._setStartFromOnTimeupdate = !1, n._ctx = a, n;\n }\n x()(A, L);\n var s = A.prototype;\n return s.load = function(a) {\n var n;\n w.b.i(\"kernel-native\", \"load\", this._ctx.stat.startFromSec);\n var f = this._ctx.lctx.levels;\n f.length || this._onError({ type: d.b.OTHER_ERROR, details: d.a.MANIFEST_PARSING_ERROR, fatal: !0, reason: \"manifest parse error.\" });\n var b = 0, N = this._ctx.lctx.startIdx;\n typeof N == \"number\" && N >= 0 && N < f.length && (b = N, w.b.i(\"kernel-native\", \"set level from level startIdx.\")), w.b.i(\"kernel-native\", \"level: \" + b + \" \" + ((n = f[b]) == null ? void 0 : n.qualityType)), this._ctx.lctx.currentIdx = this._ctx.lctx.nextIdx = b, this._ctx.lctx.abr = !1, this.emit(u.a.MANIFEST_PARSED), this._load(a);\n }, s.onAbrLevelsUpdated = function() {\n }, s.resume = function() {\n }, s.refresh = function() {\n this._ctx.stat.startFromSec = this._video.currentTime, this._load(P.f.retry), this._video.play();\n }, s.stopLoad = function() {\n this.emit(u.a.STOP_LOAD), this._stopHeartbeat();\n }, s.setCurrentLevel = function(a) {\n w.b.i(\"kernel-native\", \"set current level: \" + a + \" @ \" + this._video.currentTime);\n var n = this._ctx;\n if (n.lctx.levels.length) {\n if (a >= 0 && a < n.lctx.levels.length && n.lctx.currentIdx !== a) {\n n.lctx.currentIdx = n.lctx.nextIdx = a;\n var f = n.lctx.current;\n if (f)\n return this._stat = Nt.SELECT_BITRATE, f.currentUrl, n.stat.startFromSec = this._video.currentTime, this._levelSwitchId++, this.emit(u.a.LEVEL_SWITCHING, { time: n.currentTime, bitrate: f.bitrate, level: a, smooth: !1, auto: !1, id: this._levelSwitchId }), this._startLoadLevel(n.lctx.currentIdx), this._video.paused || this._video.play(), void this.emit(u.a.LEVEL_SWITCHED, { time: n.currentTime, bitrate: f.bitrate, level: a, smooth: !1, auto: !1, id: this._levelSwitchId });\n }\n this.emit(u.a.LEVEL_SWITCH_FAILED);\n } else\n n.lctx.currentIdx = n.lctx.nextIdx = a;\n }, s.setNextLevel = function(a) {\n this.setCurrentLevel(a);\n }, s.preload = function(a) {\n }, s.getTotalVideoFrames = function() {\n return 0;\n }, s.getCurrentVideoFrame = function() {\n return 0;\n }, s.setCurretVideoFrame = function(a) {\n }, s.seekToNextFrame = function() {\n }, s.seekToPrevFrame = function() {\n }, s.destroy = function() {\n w.b.i(\"kernel-native\", \"destroy\"), this._httpStatusDetector && (this._httpStatusDetector.stop(), this._httpStatusDetector = void 0), L.prototype.destroy.call(this);\n }, s._onVideoPlay = function() {\n this._error || this._video.src || this.load(), L.prototype._onVideoPlay.call(this);\n }, s._onVideoCanplay = function() {\n var a = this._ctx, n = a.lctx.current;\n n && this._stat === Nt.SELECT_BITRATE && this.emit(u.a.LEVEL_SWITCH_PLAYING, { time: a.currentTime, bitrate: n.bitrate, level: a.lctx.currentIdx, smooth: !1, auto: !1, id: this._levelSwitchId }), this._stat !== Nt.NONE && (this._stat = Nt.NONE), L.prototype._onVideoCanplay.call(this);\n }, s._onVideoTimeupdate = function() {\n var a = this._ctx;\n L.prototype._onVideoTimeupdate.call(this), this._setStartFromOnTimeupdate && (w.b.i(\"kernel-native\", \"timeupdate start from: \" + a.stat.startFromSec), this._applyStartFrom(), this._setStartFromOnTimeupdate = !1);\n }, s._onVideoWaiting = function() {\n w.b.i(\"kernel-native\", \"video waiting\"), this._stat = this._stat || Nt.WAITING;\n var a = this._ctx.bufferedSec, n = !this._video.ended && !this._video.seeking && this._stat === Nt.WAITING;\n this.emit(u.a.WAITING, { block: n, bufferedSec: a });\n }, s._onVideoLoadeddata = function() {\n if (w.b.i(\"kernel-native\", \"video loadeddata\"), this._video.videoWidth || !this._ctx.canCodecFallback) {\n this._mediaInfo = { width: this._video.videoWidth, height: this._video.videoHeight };\n var a = this._ctx, n = a.lctx.current;\n if (a.cOutput.updateRendererType(P.o.video), a.cOutput.rendererType === P.o.canvas && this.emit(u.a.VIDEO_RENDERER_CHANGE, { enabled: !0, canvas: a.cOutput.canvas, type: P.o.canvas }), n && n.codec) {\n var f = Ht(n.codec);\n this._mediaInfo.audioCodec = f.audio, this._mediaInfo.videoCodec = f.video, f.video && (a.stat.codecType = xt(f.video));\n }\n this._mediaInfo.videoCodecType = a.stat.codecType, Me.a.android ? a.stat.startFromSec && (this._setStartFromOnTimeupdate = !0) : this._applyStartFrom(), this.emit(u.a.MEDIA_INFO, this._mediaInfo);\n } else\n this.emit(u.a.FALLBACK_H264, { type: P.h.FALLBACK_H264, message: \"buildin \" + this._ctx.stat.codecType + \" dec no width.\", code: 0 });\n }, s._onVideoSeeking = function() {\n w.b.i(\"kernel-native\", \"seeking \" + this._video.currentTime);\n var a = this._video.currentTime;\n this.emit(u.a.SEEKING), this._ctx.isTimeinBuffered(a) || this.emit(u.a.SEEK_WITH_LOAD);\n }, s._onVideoError = function(a) {\n var n, f = this, b = ((n = this._video.error) == null ? void 0 : n.code) || 0, N = K(d.c[b], \"video error\");\n if (b === 4 && this._ctx.canCodecFallback)\n this.emit(u.a.FALLBACK_H264, { type: P.h.FALLBACK_H264, message: \"buildin \" + this._ctx.stat.codecType + \" dec error. video error: \" + b, code: N });\n else {\n var j = this._ctx.lctx.current;\n if (j && j.urlId < j.url.length - 1)\n return j.urlId++, this.emit(u.a.RETRY, { type: P.h.BACKUP, message: \"video error: \" + b + \". use backup url.\", code: N }), void this._load(P.f.retry);\n var se = \"video error\";\n this._video && this._video.error && (se += \" code:\" + b + \" message:\" + this._video.error.message);\n var ue = { type: d.b.MEDIA_ERROR, details: (b ? d.c[b] : d.a.VIDEO_ERROR) || d.a.VIDEO_ERROR, fatal: !0, url: this._video.src, reason: se };\n b === 2 || b === 4 ? (this._httpStatusDetector || (this._httpStatusDetector = new rE()), this._httpStatusDetector.start(this._video.src, function(Te) {\n w.b.i(\"kernel-native\", \"video error check http status code:\", Te), (b === 2 || b === 4 && Te > 0) && (Te < 200 || Te > 299) ? f._onError({ type: d.b.NETWORK_ERROR, details: d.a.LOAD_ERROR, fatal: !0, url: f._video.src, statusCode: Te, reason: se }) : f._onError(ue);\n })) : this._onError(ue);\n }\n }, s._load = function(a) {\n w.b.i(\"kernel-native\", \"_load\"), this._mediaInfo = void 0, this._error = void 0, this._stat = Nt.LOADING, this.emit(u.a.LOAD, { type: a }), this._startLoadLevel(this._ctx.lctx.currentIdx), this._startHeartbeat();\n }, s._startLoadLevel = function(a) {\n var n = this._ctx, f = n.lctx.current;\n if (f) {\n var b;\n w.b.i(\"kernel-native\", \"level\", a);\n var N, j = f.currentUrl;\n this.emit(u.a.NEW_SOURCE, { sync: n.stat.startFromSec || 0 }), (b = this._ctx.config.preprocessUrl) != null && b.stream && (w.b.d(\"kernel-native\", \"preprocessUrl stream\"), j = (N = this._ctx.config.preprocessUrl) == null ? void 0 : N.stream(j)), this._video.src = j;\n }\n }, s._applyStartFrom = function() {\n var a = this._ctx;\n a.stat.startFromSec > 0 && (w.b.i(\"kernel-native\", \"start from: \" + a.stat.startFromSec), this._video.currentTime = a.stat.startFromSec, a.stat.startFromSec = 0);\n }, v()(A, [{ key: \"type\", get: function() {\n return P.a.native;\n } }]), A;\n }(Vl), aE = function() {\n function L() {\n this._prevVideoTimestamp = 0, this._prevAudioTimestamp = 0, this._prevVideoReceived = 0, this._prevAudioReceived = 0, this._result = void 0, this._result = this._newInfo();\n }\n var A = L.prototype;\n return A.reset = function() {\n this._result = this._newInfo(), this._prevVideoTimestamp = 0, this._prevAudioTimestamp = 0, this._prevVideoReceived = 0, this._prevAudioReceived = 0;\n }, A.parse = function(s) {\n var a = this, n = this._result, f = 0, b = 0, N = \"\", j = \"\", se = \"\", ue = \"\";\n n.totalReceive = 0, s.forEach(function(Ne) {\n if (Ne.type === \"inbound-rtp\") {\n if (Ne.mediaType === \"video\") {\n var $e = Ne.timestamp - a._prevVideoTimestamp;\n a._prevVideoTimestamp && (f = (Ne.bytesReceived - a._prevVideoReceived) / $e), a._prevVideoReceived = Ne.bytesReceived, a._prevVideoTimestamp = Ne.timestamp, n.key = Ne.keyFramesDecoded, n.videoPacketsLost = Ne.packetsLost, j = Ne.codecId, ue = Ne.trackId;\n } else if (Ne.mediaType === \"audio\") {\n var ht = Ne.timestamp - a._prevAudioTimestamp;\n a._prevAudioReceived && (b = (Ne.bytesReceived - a._prevAudioReceived) / ht), a._prevAudioReceived = Ne.bytesReceived, n.audioPacketsLost = Ne.packetsLost, N = Ne.codecId, se = Ne.trackId;\n }\n n.totalReceive += Ne.bytesReceived, a._prevAudioTimestamp = Ne.timestamp;\n }\n }), n.audioDataRate = Math.round(7.8125 * b), n.videoDataRate = Math.round(7.8125 * f), n.speed = 1e3 * (f + b), s.forEach(function(Ne) {\n Ne.type === \"codec\" ? Ne.id === j ? n.videoCodec = Ne.mimeType : Ne.id === N && (n.audioCodec = Ne.mimeType, n.audioChannelCount = Ne.channels, n.audioSampleRate = Ne.clockRate) : Ne.type === \"track\" && (Ne.id === ue ? (n.width = Ne.frameWidth, n.height = Ne.frameHeight, n.videoAvgJitterBufferDelay = Ne.jitterBufferDelay / Ne.jitterBufferEmittedCount) : Ne.id === se && (n.audioAvgJitterBufferDelay = Ne.jitterBufferDelay / Ne.jitterBufferEmittedCount));\n });\n var Te = null, De = null;\n return s.forEach(function(Ne) {\n Ne.type === \"transport\" && (Te = s == null ? void 0 : s.get(Ne.selectedCandidatePairId));\n }), Te || s.forEach(function(Ne) {\n Ne.type === \"candidate-pair\" && Ne.selected && (Te = Ne);\n }), Te && Te.remoteCandidateId && (De = s == null ? void 0 : s.get(Te.remoteCandidateId)), De && (n.rtcRemoteAddress = De.address || De.ip || De.ipAddress, n.rtcRemotePort = De.port || De.portNumber), this._result = n, n;\n }, A._newInfo = function() {\n return { totalReceive: 0, speed: 0, rtcRemoteAddress: \"\", rtcRemotePort: 0, width: 0, height: 0, audioCodec: \"\", videoCodec: \"\", audioChannelCount: 0, audioSampleRate: 0, videoDataRate: 0, audioDataRate: 0, key: 0, audioPacketsLost: 0, videoPacketsLost: 0, audioAvgJitterBufferDelay: 0, videoAvgJitterBufferDelay: 0 };\n }, v()(L, [{ key: \"result\", get: function() {\n return this._result;\n } }]), L;\n }();\n function xh(L, A) {\n var s = Object.keys(L);\n if (Object.getOwnPropertySymbols) {\n var a = Object.getOwnPropertySymbols(L);\n A && (a = a.filter(function(n) {\n return Object.getOwnPropertyDescriptor(L, n).enumerable;\n })), s.push.apply(s, a);\n }\n return s;\n }\n function Lh(L) {\n for (var A = 1; A < arguments.length; A++) {\n var s = arguments[A] != null ? arguments[A] : {};\n A % 2 ? xh(Object(s), !0).forEach(function(a) {\n fh()(L, a, s[a]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(L, Object.getOwnPropertyDescriptors(s)) : xh(Object(s)).forEach(function(a) {\n Object.defineProperty(L, a, Object.getOwnPropertyDescriptor(s, a));\n });\n }\n return L;\n }\n var Rh = function(L) {\n function A(a) {\n var n;\n return (n = L.call(this, a.video) || this)._ctx = void 0, n._loader = void 0, n._pc = void 0, n._loaderConfig = void 0, n._stream = void 0, n._src = \"\", n._rtcStatParser = void 0, n._retrying = !1, n._retryTimer = null, n._retryCount = 0, n.transmissionTimeoutTimer = null, n.transmissionTimeout = void 0, n.peerConnectionTimeout = void 0, n.peerConnectionMaxRetry = void 0, n.peerConnectionRetryDelay = void 0, n._parseStats = function(f) {\n n._pc && n._pc.getStats(null).then(function(b) {\n var N = n._rtcStatParser.parse(b);\n f(N);\n }, function(b) {\n return console.log(b);\n });\n }, n._ctx = a, n._loaderConfig = { useFetch: !0, connectionTimeout: n._ctx.config.sdpConnectionTimeout || 1e4, maxRetry: 0, retryDelay: n._ctx.config.retryDelay || 1e3 }, n.transmissionTimeout = n._ctx.config.transmissionTimeout || 1e4, n.peerConnectionTimeout = n._ctx.config.peerConnectionTimeout || 1e5, n.peerConnectionMaxRetry = n._ctx.config.peerConnectionMaxRetry || 5, n.peerConnectionRetryDelay = n._ctx.config.peerConnectionRetryDelay || 3e3, n._rtcStatParser = new aE(), n;\n }\n x()(A, L);\n var s = A.prototype;\n return s.load = function(a) {\n w.b.i(\"kernel-rtc\", \"load\");\n var n = this._ctx.lctx.current;\n n && (this._src = n.url[n.urlId]), this._load(a);\n }, s.onAbrLevelsUpdated = function() {\n }, s.resume = function() {\n }, s.destroy = function() {\n L.prototype.destroy.call(this), this._stopRetry(), this._disposeLoader(), this._video && (this._video.srcObject = null), this._disconnect(), this._stream = void 0, this._stopVideo();\n }, s.refresh = function() {\n this._disconnect(), this._load(P.f.retry);\n }, s.stopLoad = function() {\n this.emit(u.a.STOP_LOAD), this._pc && (this._pc.close(), this._pc = null), this._stopRetry(), this._stopHeartbeat();\n }, s.setCurrentLevel = function(a) {\n }, s.setNextLevel = function(a) {\n }, s.liveEnd = function() {\n }, s.jumpToLiveTime = function() {\n }, s.getTotalVideoFrames = function() {\n return 0;\n }, s.getCurrentVideoFrame = function() {\n return 0;\n }, s.setCurretVideoFrame = function(a) {\n }, s.seekToNextFrame = function() {\n }, s.seekToPrevFrame = function() {\n }, s._onVideoLoadedmetadata = function() {\n var a = this;\n this._ctx.cOutput.updateRendererType(P.o.video), this._ctx.cOutput.rendererType === P.o.canvas && this.emit(u.a.VIDEO_RENDERER_CHANGE, { enabled: !0, canvas: this._ctx.cOutput.canvas, type: P.o.canvas }), this._parseStats(function(n) {\n a._mediaInfo || (a._mediaInfo = {}), a._mediaInfo.width = n.width, a._mediaInfo.height = n.height, a._mediaInfo.audioCodec = n.audioCodec, a._mediaInfo.audioSampleRate = n.audioSampleRate, a._mediaInfo.channel = n.audioChannelCount, a._mediaInfo.videoCodec = n.videoCodec, a._mediaInfo.hasVideo = !!n.videoCodec, a._mediaInfo.hasAudio = !!n.audioCodec, a._mediaInfo.streamHost = n.rtcRemoteAddress;\n });\n }, s._heartbeat = function() {\n var a = this;\n this._parseStats(function(n) {\n var f;\n n.speed || a.transmissionTimeoutTimer || ((f = a._pc) == null ? void 0 : f.connectionState) !== \"connected\" ? n.speed && (a.transmissionTimeoutTimer && clearTimeout(a.transmissionTimeoutTimer), a.transmissionTimeoutTimer = null) : a.transmissionTimeoutTimer = +setTimeout(function() {\n var b = { type: d.b.NETWORK_ERROR, details: d.a.WEBRTC_TRANSMISSION_DATA_NULL, reason: \"transmission timeout \" + a.transmissionTimeout, fatal: !1, url: a._src };\n a._onError(b), a._retry(b.reason);\n }, a.transmissionTimeout), a._ctx.loadRec.setRTCStats(n), a.emit(u.a.HEARTBEAT);\n });\n }, s._onVideoCanplay = function() {\n this._stat !== Nt.NONE && (this._stat = Nt.NONE), L.prototype._onVideoCanplay.call(this);\n }, s._load = function(a) {\n var n = this;\n this._rtcStatParser.reset(), this._stat = Nt.LOADING, this.emit(u.a.LOAD, { type: a }), this.emit(u.a.NEW_SOURCE, { sync: 0 }), this._pc && this._pc.close(), this._createPeerConnection(), this._connect().catch(function(f) {\n n._retry(f == null ? void 0 : f.reason);\n });\n }, s._stopVideo = function() {\n this._video && (this._video.srcObject = null);\n }, s._retry = function(a) {\n var n = this;\n this._retrying = !0, this._pc && this._pc.close(), this._stopRetry(), this._retryCount < this.peerConnectionMaxRetry && (this.transmissionTimeoutTimer && clearTimeout(this.transmissionTimeoutTimer), this._retryTimer && clearTimeout(this._retryTimer), this._retryTimer = +setTimeout(function() {\n n._retryCount++, w.b.i(\"kernel-rtc\", \"retry\", n._retryCount, a, n._src), n.emit(u.a.RETRY, { type: P.h.RTC, message: \"reason: \" + a + \". retry: \" + n._retryCount, code: d.a.WEBRTC_FAILED_ERROR }), n._retryTimer = null, n._createPeerConnection(), n._connect().then(function() {\n n._retryCount = 0, n._retrying = !1;\n }, function(f) {\n n._retryCount < n.peerConnectionMaxRetry ? n._retry(a) : n._onError(Lh(Lh({}, f), {}, { fatal: !0, url: n._src }));\n });\n }, this.peerConnectionRetryDelay));\n }, s._stopRetry = function() {\n this._retryTimer && (clearTimeout(this._retryTimer), this._retryTimer = null);\n }, s.fetchAnwserSdp = function(a) {\n var n = this;\n this._disposeLoader();\n var f = this._loader = new le(), b = { url: this._src, responseType: \"text\", requestBody: a, requestMethod: \"POST\", headers: [{ header: \"Content-type\", value: \"application/json\" }] };\n return new Promise(function(N, j) {\n f.load(b, { onEnd: function(se, ue) {\n if (n._disposeLoader(), typeof ue == \"string\") {\n var Te = JSON.parse(ue);\n n.emit(u.a.LEVEL_UPDATED), N(Te.sdp);\n }\n }, onError: function(se, ue) {\n if (w.b.e(\"kernel-rtc\", \"loadSdp\", ue), ue.fatal) {\n var Te = { type: d.b.NETWORK_ERROR, details: d.a.RTC_SDP_LOAD_ERROR, reason: ue.text, fatal: ue.fatal, url: n._src };\n n._disposeLoader(), j(Te);\n }\n }, onAbort: function() {\n n._disposeLoader(), j();\n } }, n._loaderConfig);\n }).catch(function(N) {\n return Promise.reject(N);\n });\n }, s._createPeerConnection = function() {\n var a = this, n = this._pc = new RTCPeerConnection();\n return n.addEventListener(\"track\", function(f) {\n return a._onPCTrack(f);\n }), n.addEventListener(\"connectionstatechange\", function(f) {\n return a._onPCConnectionStateChange(f);\n }), n.addEventListener(\"icecandidateerror\", function(f) {\n return a._onPCIceCandidateError(f);\n }), n.addEventListener(\"signalingstatechange\", function(f) {\n return a._onPCSignalingStateChange(f);\n }), n.addEventListener(\"iceconnectionstatechange\", function(f) {\n return a._onPCIceConnecttionStateChange(f);\n }), n.addEventListener(\"icegatheringstatechange\", function(f) {\n return a._onIceGatheringStateChange(f);\n }), n.addTransceiver(\"audio\", { direction: \"recvonly\" }), n.addTransceiver(\"video\", { direction: \"recvonly\" }), n;\n }, s._disconnect = function() {\n this._pc && this._pc.close(), this._pc = null;\n }, s._connect = function() {\n var a = this, n = this._pc;\n return n || Promise.reject(\"PeerConnection isn't exist\"), this._createOffer().then(function(f) {\n return a.fetchAnwserSdp(JSON.stringify({ sdp: f.sdp }));\n }).then(function(f) {\n return a._setAnwser(f);\n }).then(function() {\n return n ? new Promise(function(f, b) {\n var N = setTimeout(function() {\n var j = { type: d.b.NETWORK_ERROR, details: d.a.WEBRTC_CONNECT_TIMEOUT, fatal: !1, reason: \"webrtc connect timeout\", url: a._src };\n a._onError(j), b(j);\n }, a.peerConnectionTimeout);\n n.addEventListener(\"connectionstatechange\", function j() {\n switch (n.connectionState) {\n case \"connected\":\n f(void 0), clearTimeout(N), n.removeEventListener(\"connectionstatechange\", j);\n break;\n case \"closed\":\n case \"disconnected\":\n case \"failed\":\n clearTimeout(N), n.removeEventListener(\"connectionstatechange\", j), b({ type: d.b.NETWORK_ERROR, details: d.a.WEBRTC_CONNECT_FAILED, fatal: !1, reason: n.onconnectionstatechange });\n }\n });\n }) : Promise.reject(\"PeerConnection isn't exist\");\n }).catch(function(f) {\n return w.b.e(\"kernel-rtc\", f), Promise.reject(f);\n });\n }, s._createOffer = function() {\n var a = this, n = this._pc;\n return n ? n.createOffer().then(function(f) {\n return w.b.i(\"kernel-rtc\", \"offer\", f), n.setLocalDescription(f).then(function() {\n return f;\n });\n }, function(f) {\n w.b.e(\"kernel-rtc\", \"offer\", f);\n var b = { type: d.b.NETWORK_ERROR, details: d.a.WEBRTC_OFFER_ERROR, fatal: !1, url: a._src, reason: \"webrtc createoffer error\" + f };\n return a._onError(b), Promise.reject(b);\n }) : Promise.reject();\n }, s._setAnwser = function(a) {\n var n = this, f = this._pc;\n if (!f || f.signalingState === \"closed\")\n return Promise.reject();\n var b = new RTCSessionDescription({ type: \"answer\", sdp: a });\n return f.setRemoteDescription(b).then(function(N) {\n w.b.i(\"kernel-rtc\", \"answer\", b);\n }, function(N) {\n w.b.e(\"kernel-rtc\", \"answer\", N);\n var j = { type: d.b.NETWORK_ERROR, details: d.a.WEBRTC_ANSWER_ERROR, fatal: !1, url: n._src, reason: \"webrtc answer error\" };\n return n._onError(j), Promise.reject(j);\n });\n }, s._onPCTrack = function(a) {\n if (this._ctx.video && a.streams && this._stream !== a.streams[0]) {\n var n = this._stream = a.streams[0];\n this._ctx.video.srcObject = n;\n var f = this._mediaInfo = {};\n a.streams[0].getTracks().forEach(function(b) {\n var N = b.getSettings();\n f.width = N.width || f.width, f.height = N.height || f.height, f.fps = N.frameRate || f.fps;\n });\n }\n }, s._onPCConnectionStateChange = function(a) {\n var n = this._pc;\n if (n)\n switch (w.b.i(\"kernel-rtc\", \"pcConnectionStateChange\", n.connectionState), n.connectionState) {\n case \"connecting\":\n case \"connected\":\n break;\n case \"disconnected\":\n case \"failed\":\n case \"closed\":\n this._onError({ type: d.b.NETWORK_ERROR, details: d.a.WEBRTC_DISCONNECTED_ERROR, reason: n.connectionState, fatal: !1, url: this._src }), !this._retrying && this._retry(\"PeerConnection state is \" + n.connectionState);\n }\n }, s._onPCIceCandidateError = function(a) {\n var n;\n w.b.i(\"kernel-rtc\", \"iceCandidateError\", a), this._onError({ type: d.b.NETWORK_ERROR, details: d.a.WEBRTC_ICE_CANDIDATE_ERROR, fatal: !1, reason: ((n = this._pc) == null ? void 0 : n.iceConnectionState) || \"\" }), !this._retrying && this._retry(\"iceCandidateError\");\n }, s._onPCSignalingStateChange = function(a) {\n var n;\n w.b.i(\"kernel-rtc\", \"signalingStateChange\", (n = this._pc) == null ? void 0 : n.signalingState);\n }, s._onPCIceConnecttionStateChange = function(a) {\n var n;\n w.b.i(\"kernel-rtc\", \"iceConnecttionStateChange\", (n = this._pc) == null ? void 0 : n.iceConnectionState);\n }, s._onIceGatheringStateChange = function(a) {\n var n;\n w.b.i(\"kernel-rtc\", \"iceGatheringStateChange\", (n = this._pc) == null ? void 0 : n.iceGatheringState);\n }, s._onIcecandidate = function(a) {\n var n;\n w.b.i(\"kernel-rtc\", \"icecandidate\", a.candidate), a.candidate && ((n = this._pc) == null || n.addIceCandidate(new RTCIceCandidate({ sdpMLineIndex: 0, sdpMid: \"0\", candidate: a.candidate })).then(function() {\n return w.b.i(\"kernel-rtc\", \"addIceCandidate success\");\n }, function(f) {\n return w.b.e(\"kernel-rtc\", \"addIceCandidate failed\", f);\n }));\n }, s._disposeLoader = function() {\n this._loader && (this._loader.destroy(), this._loader = void 0);\n }, v()(A, [{ key: \"type\", get: function() {\n return P.a.rtc;\n } }]), A;\n }(Vl), ki, sE = function() {\n function L() {\n var s = this;\n this._ls = new he(), this._timeout = void 0, this._onVideoEvent = function() {\n var n, f;\n w.b.i(\"play-hevc-test\", \"on video event. \" + ((n = ki) == null ? void 0 : n.videoWidth) + \" \" + ((f = ki) == null ? void 0 : f.error)), s._onComplete(!!ki && ki.videoWidth > 0 && !ki.error);\n };\n var a = this._ls.read(\"kwai-kernel-hevc\", 864e5);\n a !== void 0 && (pt.playHEVCTest = !!a), w.b.i(\"play-hevc-test\", a);\n }\n var A = L.prototype;\n return A.start = function() {\n var s;\n pt.playHEVCTest === void 0 && ((s = ki) != null && s.src || this._startVideoTest());\n }, A.destroy = function() {\n this._stopTimer(), this._clearTestVideo();\n }, A._onComplete = function(s) {\n w.b.i(\"play-hevc-test\", \"complete result: \" + s + \" \" + performance.now()), this._stopTimer(), this._clearTestVideo(), pt.playHEVCTest = s, this._ls.write(\"kwai-kernel-hevc\", s);\n }, A._startVideoTest = function() {\n w.b.i(\"play-hevc-test\", \"start video test\"), typeof document < \"u\" ? (ki || (ki = document.createElement(\"video\")), ki.preload = \"metadata\", ki.addEventListener(\"error\", this._onVideoEvent), ki.addEventListener(\"loadeddata\", this._onVideoEvent), ki.addEventListener(\"loadedmetadata\", this._onVideoEvent), this._startTimer(), ki.src = \"data:video/mp4;base64,AAAAHGZ0eXBpc29tAAACAGlzb21pc28ybXA0MQAAA01tb292AAAAbG12aGQAAAAAAAAAAAAAAAAAAAPoAAAD6AABAAABAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAACd3RyYWsAAABcdGtoZAAAAAMAAAAAAAAAAAAAAAEAAAAAAAAD6AAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAEAAAAAFAAAAAtAAAAAAACRlZHRzAAAAHGVsc3QAAAAAAAAAAQAAA+gAAAAAAAEAAAAAAe9tZGlhAAAAIG1kaGQAAAAAAAAAAAAAAAAAEk+AABJPgFXEAAAAAAAhaGRscgAAAAAAAAAAdmlkZQAAAAAAAAAAAAAAAAAAAAGmbWluZgAAABR2bWhkAAAAAQAAAAAAAAAAAAAAJGRpbmYAAAAcZHJlZgAAAAAAAAABAAAADHVybCAAAAABAAABZnN0YmwAAAECc3RzZAAAAAAAAAABAAAA8mh2YzEAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAFAALQAEgAAABIAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY//8AAAB4aHZjQwEBYAAAAJAAAAAAAF3wAPz9+PgAAA8DoAABABhAAQwB//8BYAAAAwCQAAADAAADAF2VmAmhAAEAK0IBAQFgAAADAJAAAAMAAAMAXaACgIAtFllZpJMrwFoCAAADAAIAAAMAAhCiAAEAB0QBwXK0YkAAAAAQcGFzcAAAAAEAAAABAAAAFGJ0cnQAAAAAAAALyAAAC8gAAAAYc3R0cwAAAAAAAAABAAAAAQAST4AAAAAcc3RzYwAAAAAAAAABAAAAAQAAAAEAAAABAAAAFHN0c3oAAAAAAAABeQAAAAEAAAAUc3RjbwAAAAAAAAABAAADeQAAAGJ1ZHRhAAAAWm1ldGEAAAAAAAAAIWhkbHIAAAAAAAAAAG1kaXJhcHBsAAAAAAAAAAAAAAAALWlsc3QAAAAlqXRvbwAAAB1kYXRhAAAAAQAAAABMYXZmNTkuMjcuMTAwAAAACGZyZWUAAAGBbWRhdAAAABhAAQwB//8BYAAAAwCQAAADAAADAF2VmAkAAAArQgEBAWAAAAMAkAAAAwAAAwBdoAKAgC0WWVmkkyvAWgIAAAMAAgAAAwACEAAAAAdEAcFytGJAAAABHygBrxMYaRpdZVRRRNJK5mjj//0Xz8f2QC1YmO2u+AJADNDyAAADAAADAAADAAADAAAMqKXvcrgFwB8iYAAAAwAAAwAAAwAAAwAAAwAHnJMChCpAAAADAAADAAADAAADAAADAAAgIIcAAAMAAAMAAAMAAAMAAAMAAAMAABEwAAADAAADAAADAAADAAADAAADAAAYsAAAAwAAAwAAAwAAAwAAAwAAAwAEpAAAAwAAAwAAAwAAAwAAAwAAAwAwYAAAAwAAAwAAAwAAAwAAAwAAAwDggAAAAwAAAwAAAwAAAwAAAwAAAwKyAAADAAADAAADAAADAAADAAAEZAAAAwAAAwAAAwAAAwAAAwAAB8QAAAMAAAMAAAMAAAMAAAMAACeg\", ki.play()) : this._onComplete(!1);\n }, A._clearTestVideo = function() {\n ki && (ki.removeEventListener(\"error\", this._onVideoEvent), ki.removeEventListener(\"loadeddata\", this._onVideoEvent), ki.removeEventListener(\"loadedmetadata\", this._onVideoEvent), ki.src = \"\");\n }, A._startTimer = function() {\n var s = this;\n this._stopTimer(), this._timeout = setTimeout(function() {\n w.b.i(\"play-hevc-test\", \"timeout\"), s._onComplete(!1);\n }, 1e3);\n }, A._stopTimer = function() {\n this._timeout && (clearTimeout(this._timeout), this._timeout = void 0);\n }, L;\n }(), It = \"kernel\", Ch = function() {\n function L(s, a) {\n var n = this;\n this._video = void 0, this._ctx = void 0, this._monitor = void 0, this._error = void 0, this._evt = new E.EventEmitter(), this._hevcTest = void 0, this._avcore = void 0;\n var f, b = this._loadLogLevel();\n b && (w.b.level(b), [w.a.LEVEL_DEBUG, w.a.LEVEL_WARN, w.a.LEVEL_INFO, w.a.LEVEL_VERBOSE].indexOf(b) >= 0 && (f = Dr.version, Me.a.msie || console.log(\"%c kwai-player-kernel %c \" + f + \" %c\", \"background:#35495e ; padding: 1px; border-radius: 4px 0 0 4px; color: #fff\", \"background:#ffa483 ; padding: 1px; border-radius: 0 4px 4px 0; color: #fff\", \"background:transparent\"))), w.b.i(It, Dr.packName + \", \" + Dr.version + \" cors: \" + s.crossOrigin + \" autoplay: \" + s.autoplay, a), this._video = s, this._hevcTest = new sE(), this._ctx = new Dr(a || {}, this._video), this._ctx.cOutput.setVideo(s), this._ctx.config || setTimeout(function() {\n n._onError({ type: d.b.OTHER_ERROR, details: d.a.CONFIG_ERROR, fatal: !0, reason: \"config data error\" });\n }, 0), b && (this._ctx.config.kwaiKernelLog = b), this._monitor = this._initLogger(), this._ctx.config.src && (this._avcore = this._initAVCore()), w.b.i(It, \"config\", this._ctx.config), Dr.instanceCount++;\n }\n L.isSupport = function(s) {\n if (P.g.webrtc === (s == null ? void 0 : s.box))\n return pt.isWebRTCSupported();\n if (s != null && s.nativeFirst)\n return pt.isVideoBoxSupported(s == null ? void 0 : s.box);\n var a = pt.isSupported();\n if (a) {\n var n = !0;\n s && (n = !(!s.isLive || s.box !== P.g.flv));\n var f = !n || ns.isStreamingSupported();\n return a && !!f;\n }\n return pt.isVideoBoxSupported(s == null ? void 0 : s.box);\n }, L.videoCodecCapabilities = function(s) {\n return pt.getVideoCodecCompatibilityByCodec(s);\n };\n var A = L.prototype;\n return A.on = function(s, a) {\n w.b.i(It, \"call on \" + s), this._evt.on(s, a);\n }, A.once = function(s, a) {\n w.b.i(It, \"call once \" + s), this._evt.once(s, a);\n }, A.removeAllListeners = function(s) {\n w.b.i(It, \"call removeAllListeners\"), this._evt.removeAllListeners(s);\n }, A.off = function(s, a) {\n w.b.i(It, \"call off \" + s), this._evt.off(s, a);\n }, A.listeners = function(s) {\n return this._evt.listeners(s);\n }, A.emit = function(s, a) {\n return this._evt.emit(s, a);\n }, A.listenerCount = function(s) {\n return this._evt.listenerCount(s);\n }, A.load = function(s, a) {\n var n, f = this;\n if (w.b.i(It, \"call kernel load\", s), s && this._ctx.setSrc(s), this._ctx.src) {\n var b, N;\n L.isSupport({ box: this._ctx.stat.box, isLive: this._ctx.stat.isLive, nativeFirst: this._ctx.stat.native }) || setTimeout(function() {\n f._onError({ type: d.b.OTHER_ERROR, details: d.a.UNSUPPORTED, fatal: !0, reason: \"unsupported: \" + f._ctx.stat.box + \" live: \" + f._ctx.stat.isLive + \" native: \" + f._ctx.stat.native });\n }, 0), typeof (a == null ? void 0 : a.startFromSec) == \"number\" ? this._ctx.stat.startFromSec = a.startFromSec : s && (this._ctx.stat.startFromSec = -1), this._ctx.stat.multipart && this._ctx.config.resourceBuffer && Bt(this._ctx.config.resourceBufferSize), s && ((n = this._avcore) == null ? void 0 : n.type) !== ((N = this._ctx).stat.box === P.g.webrtc ? P.a.rtc : N.stat.native ? P.a.native : P.a.mse) && ((b = this._avcore) == null || b.destroy(), this._avcore = void 0), this._load();\n } else\n this._onError({ type: d.b.OTHER_ERROR, details: d.a.SRC_EMPTY, fatal: !0, reason: \"url empty\" });\n }, A.getTimeNow = function() {\n return Pi.serverNowMs;\n }, A.setAvailableAbrLevels = function(s) {\n var a;\n w.b.i(It, \"setAvailableAbrLevels\", s), this._ctx.lctx.availableList = s.splice(0), (a = this._avcore) == null || a.onAbrLevelsUpdated();\n }, A.preload = function(s, a) {\n w.b.i(It, \"call preload\"), this._avcore && \"preload\" in this._avcore && this._avcore.preload(s, a);\n }, A.isTimeinBuffered = function(s) {\n return this._ctx.stat.box !== P.g.webrtc && this._ctx.isTimeinBuffered(s);\n }, A.resume = function() {\n var s;\n w.b.i(It, \"call resume\"), (s = this._avcore) == null || s.resume(), this._video.paused && this._video.play();\n }, A.destroy = function() {\n var s, a;\n w.b.i(It, \"call kernel destroy\"), Dr.instanceCount--, gt(), this._ctx.destroy(), (s = this._avcore) == null || s.destroy(), (a = this._monitor) == null || a.destroy(), this._hevcTest.destroy(), this.removeAllListeners();\n }, A.refresh = function() {\n var s;\n w.b.i(It, \"call kernel refresh\"), this._monitor.onRefresh(), this._error = void 0, this._ctx.cOutput.reset(), (s = this._avcore) == null || s.refresh();\n }, A.stopLoad = function() {\n var s;\n w.b.i(It, \"call kernel stopLoad\"), (s = this._avcore) == null || s.stopLoad();\n }, A.getStreamTime = function(s) {\n var a = this._ctx.getStreamTime(s / 1e3);\n return a ? 1e3 * a : NaN;\n }, A.getAudienceStat = function() {\n return this._monitor.audienceStat;\n }, A.getMediaInfo = function() {\n var s;\n return o()({}, (s = this._ctx.loadRec.currentLoad) == null ? void 0 : s.mediaInfo);\n }, A.experiment = function(s) {\n s && typeof s.startBitrateLimit != null && (this._ctx.config.hlsAdaptiveConfig ? this._ctx.config.hlsAdaptiveConfig.startBitrateLimit = s.startBitrateLimit : this._ctx.config.hlsAdaptiveConfig = { startBitrateLimit: s.startBitrateLimit });\n }, A.liveEnd = function() {\n w.b.i(It, \"call liveEnd\"), this._avcore && \"liveEnd\" in this._avcore && this._avcore.liveEnd();\n }, A.seekToNextFrame = function() {\n var s;\n w.b.i(It, \"call seekToNextFrame\"), (s = this._avcore) == null || s.seekToNextFrame();\n }, A.seekToPrevFrame = function() {\n var s;\n w.b.i(It, \"call seekToPrevFrame\"), (s = this._avcore) == null || s.seekToPrevFrame();\n }, A.seekByFrameIndex = function(s) {\n var a;\n return w.b.i(It, \"call seekByFrameIndex\", s), (a = this._avcore) == null ? void 0 : a.setCurretVideoFrame(s);\n }, A.bindVPP = function(s) {\n return w.b.i(It, \"bind vpp. config.mainThreadRendering: \" + this._ctx.stat.mainThreadRendering), this._ctx.stat.mainThreadRendering !== !1 ? (this._ctx.cOutput.bindVPP(s) && this._rendererChanged(), !0) : (w.b.w(It, \"offscreen causes binding failure. set config.mainThreadRendering=true or bindVpp before play.\"), !1);\n }, A.unbindVPP = function(s) {\n this._ctx.cOutput.unbindVPP(s) && this._rendererChanged();\n }, A.jumpToLiveTime = function() {\n w.b.i(It, \"call jumpToLiveTime\"), this._avcore && \"jumpToLiveTime\" in this._avcore && this._avcore.jumpToLiveTime();\n }, A._load = function(s) {\n this._error = void 0, this._avcore || (this._avcore = this._initAVCore()), this._avcore && (this._avcore.load(s), this._ctx.stat.coreType = this._avcore.type);\n }, A._initAVCore = function() {\n var s = this, a = this._ctx, n = function(f) {\n return f.stat.native ? new nE(f) : f.stat.box !== P.g.webrtc && Fl ? new Fl(f) : f.stat.box === P.g.webrtc && Rh ? new Rh(f) : void 0;\n }(a);\n if (n)\n return a.stat.coreType = n.type, n.on(u.a.ERROR, function(f) {\n s._onError(f);\n }), n.on(u.a.MANIFEST_PARSED, function() {\n var f = { levels: a.lctx.levels.map(function(j) {\n return j.getKLevel();\n }), currentLevel: a.lctx.currentIdx, auto: a.lctx.abr };\n f.levels = a.lctx.levels.map(function(j) {\n return j.getKLevel();\n });\n var b = a.lctx.audioTracks;\n b && b.length && (f.audioTrack = a.lctx.audioIdx, f.audioTracks = b.map(function(j) {\n return { lang: j.lang, qualityLabel: j.qualityLabel, qualityType: j.qualityType, bitrate: j.bitrate, groupId: j.groupId };\n }));\n var N = a.lctx.subtitleTracks;\n N && N.length && (f.subtitleTrack = a.lctx.subtitleIdx, f.subtitleTracks = N.map(function(j) {\n return { lang: j.lang, name: j.name, groupId: j.groupId };\n })), f.currentLevel = a.lctx.currentIdx, f.auto = a.lctx.abr, f.isLive = a.stat.isLive, a.stat.stereoType !== void 0 && (f.stereoType = a.stat.stereoType), s._monitor.onManifest(f), s.emit(u.a.MANIFEST_PARSED, f);\n }), n.on(u.a.LEVEL_SWITCHING, function(f) {\n s._monitor.levelSwitching(f), s.emit(u.a.LEVEL_SWITCHING, f);\n }), n.on(u.a.LEVEL_SWITCHED, function(f) {\n s._monitor.levelSwitched(), s.emit(u.a.LEVEL_SWITCHED, f);\n }), n.on(u.a.LEVEL_SWITCH_PLAYING, function(f) {\n s._monitor.levelSwitchPlaying(), s.emit(u.a.LEVEL_SWITCH_PLAYING, f);\n }), n.on(u.a.AUDIO_TRACK_SWITCHING, function(f) {\n s._monitor.onAudioSwitching(), s.emit(u.a.AUDIO_TRACK_SWITCHING, f);\n }), n.on(u.a.AUDIO_TRACK_SWITCHED, function(f) {\n s._monitor.onAudioSwitched(), s.emit(u.a.AUDIO_TRACK_SWITCHED, f);\n }), n.on(u.a.LEVEL_SWITCH_FAILED, function() {\n return s.emit(u.a.LEVEL_SWITCH_FAILED);\n }), n.on(u.a.STOP_LOAD, function() {\n return s._monitor.onStopLoad();\n }), n.on(u.a.LOAD_END, function() {\n return s.emit(u.a.LOAD_END);\n }), n.on(u.a.LEVEL_UPDATED, function(f) {\n s._monitor.onLevel(), s.emit(u.a.LEVEL_UPDATED, f);\n }), n.on(u.a.AUDIO_TRACK_UPDATED, function(f) {\n s._monitor.onAudioTrack(), s.emit(u.a.AUDIO_TRACK_UPDATED, f);\n }), n.on(u.a.SUBTITLE_TRACK_SWITCHED, function(f) {\n s.emit(u.a.SUBTITLE_TRACK_SWITCHED, f);\n }), n.on(u.a.PRELOAD_COMPLETE, function() {\n s._monitor.onPreload();\n }), n.on(u.a.VIDEO_RENDERER_CHANGE, function(f) {\n s._rendererChanged(f);\n }), n.on(u.a.DEC_LIB_LOADED, function(f) {\n s._monitor.onDecLibLoaded(f);\n }), n.on(u.a.LOAD, function(f) {\n s._monitor.onLoad(f), f.type === P.f.retry && (s._error = void 0);\n }), n.on(u.a.PRIV_NAL, function(f) {\n return s._monitor.onPrivNal(f);\n }), n.on(u.a.SEI, function(f) {\n return s._monitor.onSEI(f);\n }), n.on(u.a.PARSING_DATA, function(f) {\n return s._monitor.onSegment(f);\n }), n.on(u.a.WAITING, function(f) {\n return s._monitor.onWaiting(f);\n }), n.on(u.a.LOADEDDATA, function() {\n return s._monitor.onLoadeddata();\n }), n.on(u.a.CANPLAY, function() {\n return s._monitor.onCanplay();\n }), n.on(u.a.SEEKING, function(f) {\n return s._monitor.onSeek(f);\n }), n.on(u.a.SEEKED, function() {\n return s._monitor.onSeeked();\n }), n.on(u.a.SEEK_WITH_LOAD, function() {\n return s._monitor.onSeekWithLoad();\n }), n.on(u.a.PLAYING, function() {\n return s._monitor.onPlaying();\n }), n.on(u.a.PAUSE, function() {\n return s._monitor.onPause();\n }), n.on(u.a.PLAY, function() {\n return s._monitor.onPlay();\n }), n.on(u.a.ENDED, function() {\n return s._monitor.onEnd();\n }), n.on(u.a.RATE_CHANGE, function() {\n return s._monitor.onRateChange();\n }), n.on(u.a.MEDIA_INFO, function(f) {\n return s._monitor.onMediaInfo(f);\n }), n.on(u.a.TIMEUPDATE, function() {\n return s._monitor.onTimeupdate();\n }), n.on(u.a.PROGRESS, function() {\n return s._monitor.onProgress();\n }), n.on(u.a.HEARTBEAT, function() {\n return s._monitor.heartbeat();\n }), n.on(u.a.LOADER_CHUNK_ARRIVAL, function(f) {\n return s._monitor.onLoaderChunkArrival(f);\n }), n.on(u.a.MEDIA_DEMUX, function(f) {\n return s._monitor.onMediaDemux(f);\n }), n.on(u.a.MEDIA_CONNECTED, function(f) {\n return s._monitor.onMediaConnect(f);\n }), n.on(u.a.KEY_FRAME, function(f) {\n return s._monitor.onKeyFrame(f);\n }), n.on(u.a.NEW_SOURCE, function(f) {\n return s._monitor.onNewSource(f);\n }), n.on(u.a.DISCONTINUITY, function(f) {\n return s._monitor.onDiscontinuity(f);\n }), n.on(u.a.METADATA, function(f) {\n return s._monitor.onMetaData(f);\n }), n.on(u.a.DOWNLOAD, function(f) {\n return s._monitor.onDownload(f);\n }), n.on(u.a.FALLBACK_H264, function(f) {\n w.b.i(It, \"fallback h264\"), a.canCodecFallback && (a.stat.fallback264 = !0, a.reProcessSrc(P.b.h264), s._recover(f.type, f.message, !1), pt.playHEVCTest === void 0 && (w.b.i(It, \"play hevc test start\"), s._hevcTest.start()));\n }), n.on(u.a.RETRY, function(f) {\n return s._recodeRetry(f.type, f.message, !1, f.code);\n }), n;\n }, A._initLogger = function() {\n var s = this, a = new iE(this._ctx);\n return a.on(u.a.REPORT, function(n) {\n s.emit(u.a.REPORT, n);\n }), a;\n }, A._recover = function(s, a, n, f) {\n var b;\n n === void 0 && (n = !0), w.b.i(It, \"recover: \" + s + \" native:\" + this._ctx.stat.native), (b = this._avcore) == null || b.destroy(), this._avcore = void 0, this._recodeRetry(s, a, n, f), n && (this._ctx.stat.native = !this._ctx.stat.native), this._load(P.f.retry), this._video.play();\n }, A._recodeRetry = function(s, a, n, f) {\n var b = { type: s, code: f, change: n, message: a, pos: Math.floor(this._video.currentTime), ts: Math.floor(performance.now()) };\n this._monitor.onRetry(b), this._ctx.stat.retryInfos.push(b);\n }, A._onError = function(s) {\n w.b.i(It, \"on error\", s);\n var a = this._ctx.hasChangeCore();\n if (a && !this._ctx.stat.native) {\n if (s.details === d.a.DEMUX_NOT_FOUND)\n return w.b.i(It, \"demux not found. switch to native\"), void this._recover(P.h.REMUX, \"demux not found\");\n if (this._ctx.stat.box === P.g.mp4 && this._ctx.stat.decoder === P.c.buildin && (s.details === d.a.SOURCEBUFFER_ERROR || s.details === d.a.MEDIASOURCE_ERROR || s.details === d.a.ADDSOURCEBUFFER_ERROR))\n return w.b.i(It, \"mse error. switch to native\", this._ctx.stat.box), void this._recover(P.h.MSE, s.reason);\n }\n if (a && Le(this._ctx.stat.box) && this._ctx.stat.native && this._video.readyState >= 2 && pt.isMSEAvailable())\n return w.b.i(It, \"hls native startup failed. switch to mse\"), void this._recover(P.h.HLS_NATIVE, \"hls native startup failed\");\n var n = o()({}, s);\n if (n.details === d.a.MANIFEST_PARSING_ERROR)\n try {\n Ft.isSrcEmpty(this._ctx.src) && (w.b.i(It, \"src empty\", this._ctx.src), n.details = d.a.SRC_EMPTY), this._ctx.src ? typeof this._ctx.src == \"string\" ? n.reason += \"src str:\" + this._ctx.src.slice(0, 1024) : this._ctx.src instanceof Blob ? n.reason += \"src: blob\" : n.reason += \"src other:\" + JSON.stringify(this._ctx.src).slice(0, 1024) : n.reason += \"src:\" + this._ctx.src;\n } catch (b) {\n n.reason += b.message;\n }\n if (n.fatal) {\n var f = K(n.details, n.reason, n.statusCode || 0);\n if (this._monitor.onError(f, n.reason), this.stopLoad(), n.code = f, !this._error) {\n this._error = n.details;\n try {\n this.emit(u.a.ERROR, n);\n } catch (b) {\n }\n }\n }\n }, A._loadLogLevel = function() {\n if (location.href) {\n var s = location.href.match(/kwaiKernelLog=([a-z]{1})/);\n if (s && s.length > 1)\n return s[1];\n }\n return new he().read(\"kwai-kernel-log\");\n }, A._rendererChanged = function(s) {\n var a = this._ctx.cOutput;\n s === void 0 && (s = { enabled: !0, type: a.rendererType, canvas: a.rendererType === P.o.canvas && a.canvas ? a.canvas : void 0 }), w.b.i(It, \"video renderer change\", s), this.emit(u.a.VIDEO_RENDERER_CHANGE, s), s.canvas && this.emit(u.a.H265_DETECTED, s);\n }, v()(L, [{ key: \"currentVideoFrame\", get: function() {\n var s;\n return ((s = this._avcore) == null ? void 0 : s.getCurrentVideoFrame()) || 0;\n }, set: function(s) {\n var a;\n w.b.i(It, \"call set currentVideoFrame\", s), (a = this._avcore) == null || a.setCurretVideoFrame(s);\n } }, { key: \"totalVideoFrames\", get: function() {\n var s;\n return ((s = this._avcore) == null ? void 0 : s.getTotalVideoFrames()) || 0;\n } }, { key: \"audioTrack\", get: function() {\n return this._ctx.lctx.audioIdx || 0;\n }, set: function(s) {\n var a;\n w.b.i(It, \"call set audioTrack\", s), (a = this._avcore) == null || a.setAudioTrack(s);\n } }, { key: \"subtitleTrack\", get: function() {\n return this._ctx.lctx.subtitleIdx || 0;\n }, set: function(s) {\n var a;\n w.b.i(It, \"call set subtitleTrack\", s), (a = this._avcore) == null || a.setSubtitleTrack(s);\n } }, { key: \"currentLevel\", get: function() {\n return this._ctx.lctx.currentIdx || 0;\n }, set: function(s) {\n var a;\n w.b.i(It, \"call set currentLevel\", s), (a = this._avcore) == null || a.setCurrentLevel(s);\n } }, { key: \"nextLevel\", get: function() {\n return this._ctx.lctx.nextIdx || 0;\n }, set: function(s) {\n var a;\n w.b.i(It, \"call set nextLevel\", s), (a = this._avcore) == null || a.setNextLevel(s);\n } }, { key: \"startLevel\", get: function() {\n return this._ctx.lctx.startIdx || 0;\n }, set: function(s) {\n w.b.i(It, \"call set startLevel\", s), this._ctx.lctx.startIdx = s;\n } }, { key: \"autoLevelEnabled\", get: function() {\n return this._ctx.lctx.abr;\n } }, { key: \"monitorData\", get: function() {\n return this._monitor && this._avcore ? o()(this._monitor.snapshot, { trackBufInfo: this._avcore.getTrackBufInfo() }) : null;\n } }, { key: \"currentLevelTimeInfo\", get: function() {\n var s = this._ctx.lctx.current;\n if (s && s.timeInfo)\n return s.timeInfo;\n } }], [{ key: \"version\", get: function() {\n return Dr.version;\n } }, { key: \"MediaBox\", get: function() {\n return P.g;\n } }, { key: \"Events\", get: function() {\n return { REPORT: u.a.REPORT, ERROR: u.a.ERROR, LEVEL_SWITCHING: u.a.LEVEL_SWITCHING, LEVEL_SWITCHED: u.a.LEVEL_SWITCHED, LEVEL_SWITCH_PLAYING: u.a.LEVEL_SWITCH_PLAYING, LEVEL_SWITCH_FAILED: u.a.LEVEL_SWITCH_FAILED, AUDIO_TRACK_SWITCHING: u.a.AUDIO_TRACK_SWITCHING, AUDIO_TRACK_SWITCHED: u.a.AUDIO_TRACK_SWITCHED, AUDIO_TRACK_UPDATED: u.a.AUDIO_TRACK_UPDATED, SUBTITLE_TRACK_SWITCHED: u.a.SUBTITLE_TRACK_SWITCHED, MANIFEST_PARSED: u.a.MANIFEST_PARSED, LEVEL_UPDATED: u.a.LEVEL_UPDATED, LOAD_END: u.a.LOAD_END, VIDEO_RENDERER_CHANGE: u.a.VIDEO_RENDERER_CHANGE };\n } }, { key: \"Reports\", get: function() {\n return { METADATA: Ai.METADATA, MEDIA_INFO: Ai.MEDIA_INFO, HEARTBEAT: Ai.HEARTBEAT, DOWNLOAD: Ai.DOWNLOAD, REALTIME_BEACON: Ai.REALTIME_BEACON, DISCONTINUITY: Ai.DISCONTINUITY, PRIV_NAL: Ai.PRIV_NAL };\n } }]), L;\n }();\n function oE(L, A) {\n return typeof window < \"u\" || typeof document < \"u\" && document.createElement ? new Ch(L, A) : void 0;\n }\n}]);\nKi === void 0 && console.error(\"esm-webpack-plugin: nothing exported!\");\nconst AE = Ki.default;\nKi.createKernel;\nKi.DownloadStatus;\nKi.LOG_LEVEL;\nconst Ar = Ki.KEvents;\nKi.REPORT_TYPES;\nKi.CodecType;\nKi.Decoder;\nKi.DemuxerType;\nKi.HttpRangeType;\nKi.MediaBox;\nKi.VideoDecBlockPolicy;\nKi.VideoDropFramePolicy;\nKi.VideoRendererType;\nKi.WasmDecoder;\nKi.StereoType;\nvar Os = {}, TE = {\n get exports() {\n return Os;\n },\n set exports(t) {\n Os = t;\n }\n}, Fa = typeof Reflect == \"object\" ? Reflect : null, Ph = Fa && typeof Fa.apply == \"function\" ? Fa.apply : function(t, e, i) {\n return Function.prototype.apply.call(t, e, i);\n}, Oo;\nFa && typeof Fa.ownKeys == \"function\" ? Oo = Fa.ownKeys : Object.getOwnPropertySymbols ? Oo = function(t) {\n return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t));\n} : Oo = function(t) {\n return Object.getOwnPropertyNames(t);\n};\nfunction SE(t) {\n console && console.warn && console.warn(t);\n}\nvar Sv = Number.isNaN || function(t) {\n return t !== t;\n};\nfunction Kt() {\n Kt.init.call(this);\n}\nTE.exports = Kt;\nOs.once = CE;\nKt.EventEmitter = Kt;\nKt.prototype._events = void 0;\nKt.prototype._eventsCount = 0;\nKt.prototype._maxListeners = void 0;\nvar Mh = 10;\nfunction Zc(t) {\n if (typeof t != \"function\")\n throw new TypeError('The \"listener\" argument must be of type Function. Received type ' + typeof t);\n}\nObject.defineProperty(Kt, \"defaultMaxListeners\", {\n enumerable: !0,\n get: function() {\n return Mh;\n },\n set: function(t) {\n if (typeof t != \"number\" || t < 0 || Sv(t))\n throw new RangeError('The value of \"defaultMaxListeners\" is out of range. It must be a non-negative number. Received ' + t + \".\");\n Mh = t;\n }\n});\nKt.init = function() {\n (this._events === void 0 || this._events === Object.getPrototypeOf(this)._events) && (this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0), this._maxListeners = this._maxListeners || void 0;\n};\nKt.prototype.setMaxListeners = function(t) {\n if (typeof t != \"number\" || t < 0 || Sv(t))\n throw new RangeError('The value of \"n\" is out of range. It must be a non-negative number. Received ' + t + \".\");\n return this._maxListeners = t, this;\n};\nfunction xv(t) {\n return t._maxListeners === void 0 ? Kt.defaultMaxListeners : t._maxListeners;\n}\nKt.prototype.getMaxListeners = function() {\n return xv(this);\n};\nKt.prototype.emit = function(t) {\n for (var e = [], i = 1; i < arguments.length; i++)\n e.push(arguments[i]);\n var r = t === \"error\", o = this._events;\n if (o !== void 0)\n r = r && o.error === void 0;\n else if (!r)\n return !1;\n if (r) {\n var l;\n if (e.length > 0 && (l = e[0]), l instanceof Error)\n throw l;\n var v = new Error(\"Unhandled error.\" + (l ? \" (\" + l.message + \")\" : \"\"));\n throw v.context = l, v;\n }\n var E = o[t];\n if (E === void 0)\n return !1;\n if (typeof E == \"function\")\n Ph(E, this, e);\n else\n for (var C = E.length, x = Iv(E, C), i = 0; i < C; ++i)\n Ph(x[i], this, e);\n return !0;\n};\nfunction Lv(t, e, i, r) {\n var o, l, v;\n if (Zc(i), l = t._events, l === void 0 ? (l = t._events = /* @__PURE__ */ Object.create(null), t._eventsCount = 0) : (l.newListener !== void 0 && (t.emit(\n \"newListener\",\n e,\n i.listener ? i.listener : i\n ), l = t._events), v = l[e]), v === void 0)\n v = l[e] = i, ++t._eventsCount;\n else if (typeof v == \"function\" ? v = l[e] = r ? [i, v] : [v, i] : r ? v.unshift(i) : v.push(i), o = xv(t), o > 0 && v.length > o && !v.warned) {\n v.warned = !0;\n var E = new Error(\"Possible EventEmitter memory leak detected. \" + v.length + \" \" + String(e) + \" listeners added. Use emitter.setMaxListeners() to increase limit\");\n E.name = \"MaxListenersExceededWarning\", E.emitter = t, E.type = e, E.count = v.length, SE(E);\n }\n return t;\n}\nKt.prototype.addListener = function(t, e) {\n return Lv(this, t, e, !1);\n};\nKt.prototype.on = Kt.prototype.addListener;\nKt.prototype.prependListener = function(t, e) {\n return Lv(this, t, e, !0);\n};\nfunction xE() {\n if (!this.fired)\n return this.target.removeListener(this.type, this.wrapFn), this.fired = !0, arguments.length === 0 ? this.listener.call(this.target) : this.listener.apply(this.target, arguments);\n}\nfunction Rv(t, e, i) {\n var r = { fired: !1, wrapFn: void 0, target: t, type: e, listener: i }, o = xE.bind(r);\n return o.listener = i, r.wrapFn = o, o;\n}\nKt.prototype.once = function(t, e) {\n return Zc(e), this.on(t, Rv(this, t, e)), this;\n};\nKt.prototype.prependOnceListener = function(t, e) {\n return Zc(e), this.prependListener(t, Rv(this, t, e)), this;\n};\nKt.prototype.removeListener = function(t, e) {\n var i, r, o, l, v;\n if (Zc(e), r = this._events, r === void 0)\n return this;\n if (i = r[t], i === void 0)\n return this;\n if (i === e || i.listener === e)\n --this._eventsCount === 0 ? this._events = /* @__PURE__ */ Object.create(null) : (delete r[t], r.removeListener && this.emit(\"removeListener\", t, i.listener || e));\n else if (typeof i != \"function\") {\n for (o = -1, l = i.length - 1; l >= 0; l--)\n if (i[l] === e || i[l].listener === e) {\n v = i[l].listener, o = l;\n break;\n }\n if (o < 0)\n return this;\n o === 0 ? i.shift() : LE(i, o), i.length === 1 && (r[t] = i[0]), r.removeListener !== void 0 && this.emit(\"removeListener\", t, v || e);\n }\n return this;\n};\nKt.prototype.off = Kt.prototype.removeListener;\nKt.prototype.removeAllListeners = function(t) {\n var e, i, r;\n if (i = this._events, i === void 0)\n return this;\n if (i.removeListener === void 0)\n return arguments.length === 0 ? (this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0) : i[t] !== void 0 && (--this._eventsCount === 0 ? this._events = /* @__PURE__ */ Object.create(null) : delete i[t]), this;\n if (arguments.length === 0) {\n var o = Object.keys(i), l;\n for (r = 0; r < o.length; ++r)\n l = o[r], l !== \"removeListener\" && this.removeAllListeners(l);\n return this.removeAllListeners(\"removeListener\"), this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0, this;\n }\n if (e = i[t], typeof e == \"function\")\n this.removeListener(t, e);\n else if (e !== void 0)\n for (r = e.length - 1; r >= 0; r--)\n this.removeListener(t, e[r]);\n return this;\n};\nfunction Cv(t, e, i) {\n var r = t._events;\n if (r === void 0)\n return [];\n var o = r[e];\n return o === void 0 ? [] : typeof o == \"function\" ? i ? [o.listener || o] : [o] : i ? RE(o) : Iv(o, o.length);\n}\nKt.prototype.listeners = function(t) {\n return Cv(this, t, !0);\n};\nKt.prototype.rawListeners = function(t) {\n return Cv(this, t, !1);\n};\nKt.listenerCount = function(t, e) {\n return typeof t.listenerCount == \"function\" ? t.listenerCount(e) : kv.call(t, e);\n};\nKt.prototype.listenerCount = kv;\nfunction kv(t) {\n var e = this._events;\n if (e !== void 0) {\n var i = e[t];\n if (typeof i == \"function\")\n return 1;\n if (i !== void 0)\n return i.length;\n }\n return 0;\n}\nKt.prototype.eventNames = function() {\n return this._eventsCount > 0 ? Oo(this._events) : [];\n};\nfunction Iv(t, e) {\n for (var i = new Array(e), r = 0; r < e; ++r)\n i[r] = t[r];\n return i;\n}\nfunction LE(t, e) {\n for (; e + 1 < t.length; e++)\n t[e] = t[e + 1];\n t.pop();\n}\nfunction RE(t) {\n for (var e = new Array(t.length), i = 0; i < e.length; ++i)\n e[i] = t[i].listener || t[i];\n return e;\n}\nfunction CE(t, e) {\n return new Promise(function(i, r) {\n function o(v) {\n t.removeListener(e, l), r(v);\n }\n function l() {\n typeof t.removeListener == \"function\" && t.removeListener(\"error\", o), i([].slice.call(arguments));\n }\n Dv(t, e, l, { once: !0 }), e !== \"error\" && kE(t, o, { once: !0 });\n });\n}\nfunction kE(t, e, i) {\n typeof t.on == \"function\" && Dv(t, \"error\", e, i);\n}\nfunction Dv(t, e, i, r) {\n if (typeof t.on == \"function\")\n r.once ? t.once(e, i) : t.on(e, i);\n else if (typeof t.addEventListener == \"function\")\n t.addEventListener(e, function o(l) {\n r.once && t.removeEventListener(e, o), i(l);\n });\n else\n throw new TypeError('The \"emitter\" argument must be of type EventEmitter. Received type ' + typeof t);\n}\nvar ge = /* @__PURE__ */ ((t) => (t.ERROR = \"error\", t.MANIFEST_PARSED = \"manifestparsed\", t.LEVEL_SWITCHING = \"levelswitching\", t.LEVEL_SWITCHED = \"levelswitched\", t.LEVEL_SWITCH_PLAYING = \"levelswitchplaying\", t.LEVEL_SWITCH_FAILED = \"levelswitchfailed\", t.LEVEL_UPDATED = \"levelupdated\", t.AUDIO_TRACKS_SWITCHING = \"audiotrackswitching\", t.AUDIO_TRACKS_SWITCHED = \"audiotrackswitched\", t.LOADSTART = \"loadstart\", t.PROGRESS = \"progress\", t.SUSPEND = \"suspend\", t.ABORT = \"abort\", t.EMPTIED = \"emptied\", t.STALLED = \"stalled\", t.LOADEDMETADATA = \"loadedmetadata\", t.LOADEDDATA = \"loadeddata\", t.CANPLAY = \"canplay\", t.CANPLAYTHROUGH = \"canplaythrough\", t.PLAYING = \"playing\", t.WAITING = \"waiting\", t.SEEKING = \"seeking\", t.SEEKED = \"seeked\", t.ENDED = \"ended\", t.DURATIONCHANGE = \"durationchange\", t.TIMEUPDATE = \"timeupdate\", t.PLAY = \"play\", t.PAUSE = \"pause\", t.RATECHANGE = \"ratechange\", t.RESIZE = \"resize\", t.VOLUMECHANGE = \"volumechange\", t.ENTER_PICTURE_IN_PICTURE = \"enterpictureinpicture\", t.LEAVE_PICTURE_IN_PICTURE = \"leavepictureinpicture\", t.REPORT = \"report\", t.VIDEO_RENDERER_CHANGE = \"videorendererchange\", t.FULLSCREEN_CHANGE = \"fullscreenchange\", t.TIME_SHIFT_PLAYBACK_CHANGE = \"timeshiftplaybackchange\", t.ATTRIBUTE_CHANGE_CONFIG = \"attribute:change:config\", t.ATTRIBUTE_CHANGE_SRC = \"attribute:change:src\", t.ATTRIBUTE_CHANGE_VIDEO_ID = \"attribute:change:videoid\", t.ATTRIBUTE_CHANGE_PREVIEW_URL = \"attribute:change:previewurl\", t.ATTRIBUTE_CHANGE_MASK_URL = \"attribute:change:maskurl\", t.ATTRIBUTE_CHANGE_PLAYBACK_SRC = \"attribute:change:playbacksrc\", t.ATTRIBUTE_CHANGE_CROSS_ORIGIN = \"attribute:change:crossorigin\", t.ATTRIBUTE_CHANGE_PRELOAD = \"attribute:change:preload\", t.ATTRIBUTE_CHANGE_CURRENT_TIME = \"attribute:change:currenttime\", t.ATTRIBUTE_CHANGE_DEFAULT_PLAYBACK_RATE = \"attribute:change:defaultplaybackrate\", t.ATTRIBUTE_CHANGE_PLAYBACK_RATE = \"attribute:change:playbackrate\", t.ATTRIBUTE_CHANGE_AUTOPLAY = \"attribute:change:autoplay\", t.ATTRIBUTE_CHANGE_LOOP = \"attribute:change:loop\", t.ATTRIBUTE_CHANGE_CONTROLS = \"attribute:change:controls\", t.ATTRIBUTE_CHANGE_VOLUME = \"attribute:change:volume\", t.ATTRIBUTE_CHANGE_MUTED = \"attribute:change:muted\", t.ATTRIBUTE_CHANGE_DEFAULT_MUTED = \"attribute:change:defaultmuted\", t.ATTRIBUTE_CHANGE_POSTER = \"attribute:change:poster\", t.ATTRIBUTE_CHANGE_DISABLE_PICTURE_IN_PICTURE = \"attribute:change:disablepictureinpicture\", t.ATTRIBUTE_CHANGE_PLAYSINLINE = \"attribute:change:playsinline\", t.ATTRIBUTE_CHANGE_DISABLE_ADAPTIVE = \"attribute:change:disableadaptive\", t.ATTRIBUTE_CHANGE_DISABLE_DOWNLOAD = \"attribute:change:disabledownload\", t.ATTRIBUTE_CHANGE_DISABLE_MASK = \"attribute:change:disablemask\", t.ATTRIBUTE_CHANGE_DISABLE_HOTKEY = \"attribute:change:disablehotkey\", t.ATTRIBUTE_CHANGE_DISABLE_DANMAKU = \"attribute:change:disabledanmaku\", t.ATTRIBUTE_CHANGE_DANMAKU_RENDERING = \"attribute:change:danmakurendering\", t.ATTRIBUTE_CHANGE_DANMAKU_CONTROLS_POS = \"attribute:change:danmakucontrolspos\", t.ATTRIBUTE_CHANGE_DANMAKU_CONTROLS_POS_FULLSCREEN = \"attribute:change:danmakucontrolsposfullscreen\", t.ATTRIBUTE_CHANGE_CURRENT_LEVEL = \"attribute:change:currentlevel\", t.ATTRIBUTE_CHANGE_NEXT_LEVEL = \"attribute:change:nextlevel\", t.ATTRIBUTE_CHANGE_CURRENT_FRAME = \"attribute:change:currentframe\", t.ATTRIBUTE_CHANGE_AUDIO_TRACK = \"attribute:change:audiotrack\", t.ATTRIBUTE_CHANGE_PREFETCH = \"attribute:change:prefetch\", t.ATTRIBUTE_CHANGE_SHOW_PROGRESS = \"attribute:change:showprogress\", t.ATTRIBUTE_CHANGE_SHOW_TIME = \"attribute:change:showtime\", t.ATTRIBUTE_CHANGE_SHOW_NEXT = \"attribute:change:shownext\", t.ATTRIBUTE_CHANGE_SHOW_PREV = \"attribute:change:showprev\", t.ATTRIBUTE_CHANGE_BIZ_DATA = \"attribute:change:bizdata\", t.ATTRIBUTE_CHANGE_SHOW_INFO_PANEL = \"attribute:change:showinfopanel\", t.CLICK_NEXT = \"clicknext\", t.CLICK_PREV = \"clickprev\", t.CLICK_LOGIN = \"clicklogin\", t.CLICK_REGISTER = \"clickregister\", t.CLICK_SEND_DANMAKU = \"clicksenddanmaku\", t.CLICK_VIP = \"clickvip\", t))(ge || {}), tr = /* @__PURE__ */ ((t) => (t.SYSTEM = \"system\", t.WINDOW = \"window\", t))(tr || {}), ja = /* @__PURE__ */ ((t) => (t.VIDEO = \"video\", t.VIDEO_INTERACTIVE = \"videoInteractive\", t.DEFAULT = \"default\", t))(ja || {});\nconst Tn = {\n \"kwai-player\": \"kwai-player\",\n \"kwai-player-video-interactive\": \"kwai-player-video-interactive\",\n \"kwai-player-poster\": \"kwai-player-poster\",\n \"kwai-player-video\": \"kwai-player-video\",\n \"kwai-player-disable-scroll\": \"kwai-player-disable-scroll\"\n}, IE = \"fullscreen\";\nTv();\nclass DE {\n constructor(e) {\n et(this, \"_evt\"), et(this, \"_element\"), et(this, \"_isFillWindow\", !1), et(this, \"_originStyle\"), et(this, \"_isSupportFullscreen\", !0), et(this, \"_onFullscreenChange\", () => {\n Be.i(IE, \"_onFullscreenChange\", this.isFull()), this.isFull() || (this._recoverStyle(), document.body.classList.remove(Tn[\"kwai-player-disable-scroll\"])), this._isFillWindow = !1, this._evt.emit(\"fullChange\", {\n type: tr.SYSTEM,\n isFull: this.isFull()\n });\n }), this._evt = e, !(typeof document > \"u\") && (this._isSupportFullscreen = typeof this._getExitFullscreenFunc() < \"u\" && !(ln.getOS().name === \"iOS\" && ln.getDevice().type === \"mobile\"), \"onfullscreenchange\" in document ? (document.addEventListener(\"fullscreenchange\", this._onFullscreenChange), document.addEventListener(\"fullscreenerror\", this._onFullscreenChange)) : \"onwebkitfullscreenchange\" in document && (document.addEventListener(\"webkitfullscreenchange\", this._onFullscreenChange), document.addEventListener(\"webkitfullscreenerror\", this._onFullscreenChange)));\n }\n destroy() {\n document.removeEventListener(\"fullscreenchange\", this._onFullscreenChange), document.removeEventListener(\"fullscreenerror\", this._onFullscreenChange), document.removeEventListener(\"webkitfullscreenchange\", this._onFullscreenChange), document.removeEventListener(\"webkitfullscreenerror\", this._onFullscreenChange);\n }\n /**\n * 全屏或网页全屏\n * @param e 需要全屏的元素 \n */\n requestFull(e, i) {\n i === tr.SYSTEM ? this.requestFullscreen(e) : i === tr.WINDOW ? this.requestFillWindow(e) : this._isSupportFullscreen ? this.requestFullscreen(e) : this.requestFillWindow(e);\n }\n /**\n * 退出全屏或网页全屏\n */\n exitFull(e) {\n if (e === tr.SYSTEM)\n return this.exitFullscreen();\n if (e === tr.WINDOW)\n return this.exitFillWindow();\n this.isFull(tr.SYSTEM) ? this.exitFullscreen() : this.exitFillWindow();\n }\n /**\n * 是否是全屏或网页全屏状态\n * @returns 全屏状态\n */\n isFull(e) {\n return e === tr.SYSTEM ? this.isFullScreen() : e === tr.WINDOW ? this.isFillWindow() : this.isFullScreen() || this.isFillWindow();\n }\n /**\n * 全屏\n * @param element 需要全屏的元素\n * @returns \n */\n requestFullscreen(e) {\n this._element = e, this._originStyle || this._saveOriginStyle(e), (ln.getOS().name === \"Mac OS\" || ln.getBrowser().name === \"IE\" || ln.getOS().name === \"iOS\" && ln.getDevice().type !== \"mobile\") && (e.style.width = \"100%\", e.style.height = \"100%\", e.style.background = \"black\");\n const i = e;\n let r;\n i.requestFullscreen ? r = i.requestFullscreen() : i.mozRequestFullScreen ? r = i.mozRequestFullScreen() : i.webkitRequestFullScreen ? r = i.webkitRequestFullscreen() : i.msRequestFullscreen && (r = i.msRequestFullscreen()), typeof Promise < \"u\" && r instanceof Promise && r.catch((o) => Be.e(o));\n }\n /**\n * 退出全屏\n */\n exitFullscreen() {\n this._recoverStyle(), this._element = void 0;\n const e = document;\n e.exitFullscreen ? e.exitFullscreen() : e.webkitCancelFullScreen ? e.webkitCancelFullScreen() : e.mozCancelFullScreen ? e.mozCancelFullScreen() : e.msExitFullscreen && e.msExitFullscreen();\n }\n /**\n * 当前是否是全屏状态\n * @returns 全屏状态\n */\n isFullScreen() {\n const e = document;\n return !!(e.fullscreen || e.fullscreenElement || e.isFullScreen || e.webkitIsFullScreen || e.mozFullScreen || e.msFullscreenElement);\n }\n /**\n * 网页全屏\n * @param element 需要全屏的元素\n * @returns \n */\n requestFillWindow(e) {\n this._element = e, this._originStyle || this._saveOriginStyle(e), e.style.width = \"100%\", e.style.height = \"100%\", e.style.background = \"black\", e.style.position = \"fixed\", e.style.left = \"0\", e.style.top = \"0\", e.style.zIndex = \"99999\", document.body.classList.add(Tn[\"kwai-player-disable-scroll\"]), this._isFillWindow = !0, this._evt.emit(\"fullChange\", {\n type: \"window\",\n isFull: !0\n });\n }\n /**\n * 退出网页全屏\n */\n exitFillWindow() {\n this._recoverStyle(), this._isFillWindow = !1, this._element && (this._element.style.zIndex = \"auto\"), this._element = void 0, document.body.classList.remove(Tn[\"kwai-player-disable-scroll\"]), this._evt.emit(\"fullChange\", {\n type: \"window\",\n isFull: !1\n });\n }\n /**\n * 当前是否是网页全屏状态\n * @returns 网页全屏状态\n */\n isFillWindow() {\n return this._isFillWindow;\n }\n isFullscreenAvailable(e) {\n return e !== tr.WINDOW && typeof document < \"u\" ? !!document.body.requestFullscreen || !!document.body.webkitRequestFullscreen || !!document.body.msRequestFullscreen || !!document.body.mozRequestFullscreen : !0;\n }\n _getExitFullscreenFunc() {\n const e = document;\n return e.exitFullscreen || e.webkitCancelFullScreen || e.mozCancelFullScreen || e.msExitFullscreen;\n }\n _saveOriginStyle(e) {\n this._originStyle = {\n position: e.style.position,\n background: e.style.background,\n width: e.style.width,\n height: e.style.height,\n left: e.style.left,\n right: e.style.right\n };\n }\n _recoverStyle() {\n if (this._element)\n for (const e in this._originStyle)\n this._element.style[e] = this._originStyle[e];\n this._originStyle = void 0;\n }\n}\nconst OE = \"ControlsPlugin\", Ov = \"I18nPlugin\", Nv = \"LoggerPlugin\", NE = \"HotkeyPlugin\", Pv = \"PlayInfoPlugin\", PE = \"MirrorPlugin\", ME = \"RotatePlugin\", Mv = \"PreviewPlugin\", Uv = \"MaskPlugin\", Bv = \"VRPlugin\", cd = \"DanmakuPlugin\";\nvar e_ = /* @__PURE__ */ ((t) => (t.DARK = \"dark\", t.LIGHT = \"light\", t))(e_ || {}), ua = /* @__PURE__ */ ((t) => (t.BOTTOM = \"bottom\", t.PLAY_BAR = \"playBar\", t.NONE = \"none\", t))(ua || {});\nlet Bi = class extends Os.EventEmitter {\n /**\n * 播放器实例化前钩子\n * @param player 播放器实例\n * @param options 实例化播放器时指定的当前插件的参数\n */\n beforeInstall(e, i) {\n }\n /**\n * 播放器实例化后钩子\n * @param player 播放器实例\n * @param options 实例化播放器时指定的当前插件的参数\n */\n afterInstall(e, i) {\n }\n /**\n * 播放器销毁前钩子\n * @param player 播放器实例\n */\n beforeUninstall(e) {\n }\n /**\n * 播放器销毁后钩子\n * @param player 播放器实例\n */\n afterUninstall(e) {\n }\n};\net(Bi, \"label\"), /**\n* 版本\n*/\net(Bi, \"version\"), /**\n* 当前环境是否支持\n*/\net(Bi, \"isSupported\");\nconst Vv = class extends Bi {\n /**\n * @override\n */\n getLabel() {\n return Vv.label;\n }\n beforeInstall(t, e) {\n }\n afterInstall(t, e) {\n }\n};\nlet Fv = Vv;\net(Fv, \"label\", OE);\nconst jv = class extends Bi {\n /**\n * @override\n */\n getLabel() {\n return jv.label;\n }\n beforeInstall(t, e) {\n }\n afterInstall(t, e) {\n }\n};\nlet zv = jv;\net(zv, \"label\", Ov);\nconst Hv = class extends Bi {\n /**\n * @override\n */\n getLabel() {\n return Hv.label;\n }\n beforeInstall(t, e) {\n }\n afterInstall(t, e) {\n }\n /**\n * 增加业务相关数据\n * @param key 上报数据key\n * @param value 上报数据\n */\n addBizLog(t, e) {\n }\n appendSummaryField(t, e) {\n }\n};\nlet $v = Hv;\net($v, \"label\", Nv);\nconst Wv = class extends Bi {\n /**\n * @override\n */\n getLabel() {\n return Wv.label;\n }\n};\nlet Gv = Wv;\net(Gv, \"label\", NE);\nconst Kv = class extends Bi {\n /**\n * @override\n */\n getLabel() {\n return Kv.label;\n }\n};\nlet qv = Kv;\net(qv, \"label\", Pv);\nconst Yv = class extends Bi {\n /**\n * @override\n */\n getLabel() {\n return Yv.label;\n }\n};\nlet Xv = Yv;\net(Xv, \"label\", PE);\nconst Zv = class extends Bi {\n /**\n * @override\n */\n getLabel() {\n return Zv.label;\n }\n};\nlet Qv = Zv;\net(Qv, \"label\", ME);\nconst Jv = class extends Bi {\n /**\n * @override\n */\n getLabel() {\n return Jv.label;\n }\n};\nlet e0 = Jv;\net(e0, \"label\", Mv);\nconst t0 = class extends Bi {\n /**\n * @override\n */\n getLabel() {\n return t0.label;\n }\n};\nlet i0 = t0;\net(i0, \"label\", Uv);\nconst r0 = class extends Bi {\n /**\n * @override\n */\n getLabel() {\n return r0.label;\n }\n};\nlet n0 = r0;\net(n0, \"label\", Bv);\nconst a0 = class extends Bi {\n /**\n * @override\n */\n getLabel() {\n return a0.label;\n }\n};\nlet s0 = a0;\net(s0, \"label\", cd);\nconst Qi = \"pluginBase\";\nclass UE {\n constructor() {\n et(this, \"_plugins\", []), et(this, \"_instances\", []);\n }\n register(e) {\n Be.i(Qi, \"register\", e.label, e.version), e.label || Be.i(Qi, \"register plugin label is empty.\");\n const i = this._plugins.findIndex((r) => r.label === e.label);\n i >= 0 && (Be.i(Qi, `register plugin label: ${e.label} exists.`), this._plugins.splice(i, 1)), this._plugins.push(e);\n }\n deregister(e) {\n Be.i(Qi, \"deregister\", e.label);\n const i = this._plugins.indexOf(e);\n if (i === -1) {\n Be.i(e.label + \"plugin unregistered\");\n return;\n }\n this._plugins.splice(i, 1);\n }\n initialize(e) {\n const i = this._instances;\n for (const r of this._plugins)\n try {\n if (e && e[r.label] === !1)\n continue;\n if (r.isSupported === !1) {\n Be.i(Qi, `initialize ${r.label}, ${r.version}. The current browser does not support this plugin.`);\n continue;\n }\n Be.i(Qi, \"initialize\", r.label, r.version, e);\n const o = new r();\n o instanceof Bi ? i.push(o) : Be.e(Qi, `plugin type error: ${o}`);\n } catch (o) {\n Be.e(Qi, \"plugin initialize error\", o);\n }\n }\n beforeInstallPlugins(e, i) {\n for (const r of this._instances) {\n const o = r.getLabel();\n Be.i(Qi, \"beforeInstallPlugins\", i, o);\n try {\n if (!r.beforeInstall)\n continue;\n i && typeof i[o] == \"object\" ? r.beforeInstall(e, i[o]) : r.beforeInstall(e);\n } catch (l) {\n Be.e(Qi, \"beforeInstallPlugins error\", l);\n }\n }\n }\n afterInstallPlugins(e, i) {\n for (const r of this._instances) {\n const o = r.getLabel();\n Be.i(Qi, \"afterInstallPlugins\", o, i);\n try {\n if (!r.afterInstall)\n continue;\n i && typeof i[o] == \"object\" ? r.afterInstall(e, i[o]) : r.afterInstall(e);\n } catch (l) {\n Be.e(Qi, \"afterInstallPlugins error\", l);\n }\n }\n }\n beforeUninstallPlugins(e) {\n for (const i of this._instances)\n try {\n if (Be.i(Qi, \"beforeUninstallPlugins\", i.getLabel()), !i.beforeUninstall)\n continue;\n i.beforeUninstall.call(i, e);\n } catch (r) {\n Be.e(Qi, \"plugin beforeUninstall error\", r);\n }\n }\n afterUninstallPlugins(e) {\n for (const i of this._instances)\n try {\n if (Be.i(Qi, \"afterUninstallPlugins\", i.getLabel()), !i.afterUninstall)\n continue;\n i.afterUninstall.call(i, e);\n } catch (r) {\n Be.e(Qi, \"plugin afterUninstall error\", r);\n }\n this._instances = [];\n }\n getPlugin(e) {\n for (let i = 0; i < this._instances.length; i++)\n if (this._instances[i].getLabel() === e)\n return this._instances[i];\n }\n}\nconst Uh = typeof document > \"u\" ? void 0 : document.createElement(\"video\");\nfunction BE() {\n return !!(Uh != null && Uh.requestPictureInPicture);\n}\nfunction VE(t) {\n const e = ln.getBrowser().name;\n e && [\"IE\", \"IEMobile\"].indexOf(e) === -1 && console.log(\n `%c kwai-player %c ${t} %c`,\n \"background:#35495e ; padding: 1px; border-radius: 4px 0 0 4px; color: #fff\",\n \"background:#ffa483 ; padding: 1px; border-radius: 0 4px 4px 0; color: #fff\",\n \"background:transparent\"\n );\n}\nconst at = \"native\";\nTv();\nconst Tr = class {\n constructor(e, i) {\n et(this, \"_eventHandlers\"), et(this, \"_evt\"), et(this, \"_mainDom\"), et(this, \"_video\"), et(this, \"_kernel\"), et(this, \"_error\"), et(this, \"_config\"), et(this, \"_src\", \"\"), et(this, \"_autoplay\", !1), et(this, \"_preload\", \"none\"), et(this, \"_poster\", \"\"), et(this, \"_controls\", \"default\"), et(this, \"_videoWidth\", 0), et(this, \"_videoHeight\", 0), et(this, \"_kernelLoaded\", !1), et(this, \"_livePaused\", !1), et(this, \"_canvas\"), et(this, \"_mediaInfo\"), et(this, \"_playbackSrc\"), et(this, \"_isTimeShiftPlayback\", !1), et(this, \"_full\"), et(this, \"_subContainerNumber\", 0), et(this, \"_data\"), et(this, \"_id\"), et(this, \"_videoLayer\"), et(this, \"_videoInteractiveLayer\"), et(this, \"_posterLayer\"), et(this, \"_preprocessSrcFunc\"), et(this, \"_preprocessURL\"), et(this, \"requestFullscreen\", (l) => {\n Be.i(at, \"requestFullscreen\"), this._mainDom && (this._full.isFull(l) || this._full.requestFull(this._mainDom, l));\n }), et(this, \"exitFullscreen\", (l) => {\n Be.i(at, \"exitFullscreen\"), this._mainDom && this._full.isFull(l) && this._full.exitFull(l);\n }), et(this, \"_onFullscreenchange\", (l) => {\n this._updateCanvasSize(l.isFull), this.emit(ge.FULLSCREEN_CHANGE, l);\n }), et(this, \"_onMutedChange\", (l) => {\n this._video && (this._video.muted = l);\n }), et(this, \"_onVideoLoadstart\", () => {\n this.emit(ge.LOADSTART);\n }), et(this, \"_onVideoProgress\", () => {\n this.emit(ge.PROGRESS);\n }), et(this, \"_onVideoSuspend\", () => {\n this.emit(ge.SUSPEND);\n }), et(this, \"_onVideoAbort\", () => {\n this.emit(ge.ABORT);\n }), et(this, \"_onVideoEmptied\", () => {\n this.emit(ge.EMPTIED);\n }), et(this, \"_onVideoStalled\", () => {\n this.emit(ge.STALLED);\n }), et(this, \"_onVideoLoadedmetadata\", () => {\n this.emit(ge.LOADEDMETADATA);\n }), et(this, \"_onVideoLoadeddata\", () => {\n this.emit(ge.LOADEDDATA);\n }), et(this, \"_onVideoCanplay\", () => {\n this.emit(ge.CANPLAY);\n }), et(this, \"_onVideoCanplaythrough\", () => {\n this.emit(ge.CANPLAYTHROUGH);\n }), et(this, \"_onVideoPlaying\", () => {\n this.emit(ge.PLAYING);\n }), et(this, \"_onVideoWaiting\", () => {\n this.emit(ge.WAITING);\n }), et(this, \"_onVideoSeeking\", () => {\n this.emit(ge.SEEKING);\n }), et(this, \"_onVideoSeeked\", () => {\n this.emit(ge.SEEKED);\n }), et(this, \"_onVideoEnded\", () => {\n this.emit(ge.ENDED);\n }), et(this, \"_onVideoDurationchange\", () => {\n this.emit(ge.DURATIONCHANGE);\n }), et(this, \"_onVideoTimeupdate\", () => {\n this.emit(ge.TIMEUPDATE);\n }), et(this, \"_onVideoPlay\", () => {\n this._posterLayer.style.display = \"none\", this.emit(ge.PLAY);\n }), et(this, \"_onVideoPause\", () => {\n this.emit(ge.PAUSE);\n }), et(this, \"_onVideoRatechange\", () => {\n this.emit(ge.RATECHANGE);\n }), et(this, \"_onVideoResize\", () => {\n this.emit(ge.RESIZE);\n }), et(this, \"_onVideoVolumechange\", () => {\n this.emit(ge.VOLUMECHANGE);\n }), et(this, \"_onVideoEnterpictureinpicture\", () => {\n this.emit(ge.ENTER_PICTURE_IN_PICTURE);\n }), et(this, \"_onVideoLeavepictureinpicture\", () => {\n this.emit(ge.LEAVE_PICTURE_IN_PICTURE);\n });\n var r;\n if (VE(Tr.packVersion), Be.i(at, Tr.packVersion, Tr.version, e, i), this._id = e, this._data = i || {}, this._mainDom = document.querySelector(e), !this._mainDom)\n throw new Error(\"Container not found.\");\n this._data.playbackSrc && (this._playbackSrc = this._data.playbackSrc), this._mainDom.className = this._mainDom.className ? this._mainDom.className + \" \" + Tn[\"kwai-player\"] : Tn[\"kwai-player\"], this._mainDom.setAttribute(\"role\", \"player\"), this._evt = new Os.EventEmitter(), this._full = new DE(this._evt), this._evt.on(\"fullChange\", this._onFullscreenchange), this._eventHandlers = {\n loadstart: this._onVideoLoadstart,\n progress: this._onVideoProgress,\n suspend: this._onVideoSuspend,\n abort: this._onVideoAbort,\n emptied: this._onVideoEmptied,\n stalled: this._onVideoStalled,\n loadedmetadata: this._onVideoLoadedmetadata,\n loadeddata: this._onVideoLoadeddata,\n canplay: this._onVideoCanplay,\n canplaythrough: this._onVideoCanplaythrough,\n playing: this._onVideoPlaying,\n waiting: this._onVideoWaiting,\n seeking: this._onVideoSeeking,\n seeked: this._onVideoSeeked,\n ended: this._onVideoEnded,\n durationchange: this._onVideoDurationchange,\n timeupdate: this._onVideoTimeupdate,\n play: this._onVideoPlay,\n pause: this._onVideoPause,\n ratechange: this._onVideoRatechange,\n resize: this._onVideoResize,\n volumechange: this._onVideoVolumechange,\n enterpictureinpicture: this._onVideoEnterpictureinpicture,\n leavepictureinpicture: this._onVideoLeavepictureinpicture\n }, i && typeof i.controls < \"u\" && (this.controls = i.controls), this._videoLayer = document.createElement(\"div\"), this._videoLayer.className = Tn[\"kwai-player-video\"], this._posterLayer = document.createElement(\"div\"), this._posterLayer.className = Tn[\"kwai-player-poster\"], this._videoLayer.appendChild(this._posterLayer), this._videoInteractiveLayer = document.createElement(\"div\"), this._videoInteractiveLayer.className = Tn[\"kwai-player-video-interactive\"], this._mainDom.appendChild(this._videoLayer), this._mainDom.appendChild(this._videoInteractiveLayer), this._video = document.createElement(\"video\"), this._video.controls = !1, this._videoLayer.appendChild(this.video), this._bindVideo(), Tr._pluginBase.initialize(i == null ? void 0 : i.plugins), Tr._pluginBase.beforeInstallPlugins(this, i == null ? void 0 : i.plugins), i && this._parseData(i);\n const o = ((r = this._config) == null ? void 0 : r.src) || this._src;\n o && this._initKernel(\"\", !1), Tr._pluginBase.afterInstallPlugins(this, i == null ? void 0 : i.plugins), o && this._kernelStart();\n }\n /**\n * 设置内核配置\n */\n set config(e) {\n Be.i(at, \"call set config\", e), this._config = e, this._initKernel(), this.emit(ge.ATTRIBUTE_CHANGE_CONFIG, e);\n }\n /**\n * 获取内核配置\n */\n get config() {\n return Be.i(at, \"call get config\", this._config), this._config;\n }\n /**\n * 获取当前错误\n */\n get error() {\n return Be.i(at, \"call get error\", this._error), this._error;\n }\n set videoId(e) {\n this._data && (this._data.videoId = e, this.emit(ge.ATTRIBUTE_CHANGE_VIDEO_ID));\n }\n get videoId() {\n var e;\n return (e = this._data) == null ? void 0 : e.videoId;\n }\n set previewUrl(e) {\n Be.i(at, \"call set previewUrl\", e), this._data && (this._data.previewUrl = e, this.emit(ge.ATTRIBUTE_CHANGE_PREVIEW_URL));\n }\n get previewUrl() {\n var e;\n return (e = this._data) == null ? void 0 : e.previewUrl;\n }\n set maskUrl(e) {\n Be.i(at, \"call set maskUrl\", e), this._data && (this._data.maskUrl = e, this.emit(ge.ATTRIBUTE_CHANGE_MASK_URL));\n }\n get maskUrl() {\n var e;\n return (e = this._data) == null ? void 0 : e.maskUrl;\n }\n set disableMask(e) {\n Be.i(at, \"call set disableMask\", e), this._data && (this._data.disableMask = e, this.emit(ge.ATTRIBUTE_CHANGE_DISABLE_MASK));\n }\n get disableMask() {\n var e;\n return (e = this._data) == null ? void 0 : e.disableMask;\n }\n /**\n * 设置播放地址\n */\n set src(e) {\n Be.i(at, \"call set src\", e), this._src = this._preprocessSrcFunc ? this._preprocessSrcFunc(e) : e, this.emit(ge.ATTRIBUTE_CHANGE_SRC), this._initKernel();\n }\n /**\n * 获取播放地址\n */\n get src() {\n return Be.v(at, \"call get src\", this._src), this._src;\n }\n /**\n * 设置时移回放地址\n */\n set playbackSrc(e) {\n Be.i(at, \"call set playbackSrc\", e), this._playbackSrc = e, this.emit(ge.ATTRIBUTE_CHANGE_PLAYBACK_SRC);\n }\n /**\n * 获取时移回放地址\n */\n get playbackSrc() {\n return Be.v(at, \"call get playbackSrc\", this._src), this._playbackSrc;\n }\n /**\n * 获取当前是否时移回放\n */\n get isTimeShiftPlayback() {\n return this._isTimeShiftPlayback;\n }\n /**\n * 设置跨域\n */\n set crossOrigin(e) {\n Be.i(at, \"call set crossOrigin\", e), this._video && (this._video.crossOrigin = e), this.emit(ge.ATTRIBUTE_CHANGE_CROSS_ORIGIN);\n }\n /**\n * 获取跨域配置\n */\n get crossOrigin() {\n var e;\n return Be.v(at, \"call get crossOrigin\", (e = this._video) == null ? void 0 : e.crossOrigin), this._video ? this._video.crossOrigin : null;\n }\n /**\n * 网络状态\n */\n get networkState() {\n var e;\n return Be.v(at, \"call get networkState\", (e = this._video) == null ? void 0 : e.networkState), this._video ? this._video.networkState : 0;\n }\n /**\n * 设置预加载 'none' | 'auto'\n */\n set preload(e) {\n Be.i(at, \"call set preload\", e), this._preload = e, this.emit(ge.ATTRIBUTE_CHANGE_PRELOAD);\n }\n /**\n * 获取预加载配置\n */\n get preload() {\n return Be.v(at, \"call get preload\", this._preload), this._preload;\n }\n /**\n * 获取预加载配置\n */\n get buffered() {\n var e, i;\n return Be.v(at, \"call get buffered\", (e = this._video) == null ? void 0 : e.buffered), (i = this._video) == null ? void 0 : i.buffered;\n }\n /**\n * 获取video元素readyState\n */\n get readyState() {\n var e;\n return Be.v(at, \"call get readyState\", (e = this._video) == null ? void 0 : e.readyState), this._video ? this._video.readyState : 0;\n }\n /**\n * 获取video元素seeking状态\n */\n get seeking() {\n var e, i;\n return Be.v(at, \"call get seeking\", (e = this._video) == null ? void 0 : e.seeking), !!((i = this._video) != null && i.seeking);\n }\n /**\n * 设置video播放时间\n */\n set currentTime(e) {\n var i;\n Be.i(at, \"call set currentTime\", e), (i = this._mediaInfo) != null && i.isLive && this.config.liveShiftEnabled && (this._playbackSrc && this._initKernel(this._playbackSrc), this._isTimeShiftPlayback = !0, this.emit(ge.TIME_SHIFT_PLAYBACK_CHANGE, this._isTimeShiftPlayback)), this._video && (this._video.currentTime = e), this.emit(ge.ATTRIBUTE_CHANGE_CURRENT_TIME);\n }\n /**\n * 获取video播放时间\n */\n get currentTime() {\n var e;\n return Be.v(at, \"call get currentTime\", (e = this._video) == null ? void 0 : e.currentTime), this._video ? this._video.currentTime : 0;\n }\n /**\n * 获取video时长\n */\n get duration() {\n var e;\n return Be.v(at, \"call get duration\", (e = this._video) == null ? void 0 : e.duration), this._video ? this._video.duration : NaN;\n }\n /**\n * 获取暂停状态\n */\n get paused() {\n var e;\n return Be.v(at, \"call get paused\", (e = this._video) == null ? void 0 : e.paused), this._video ? this._video.paused : !0;\n }\n /**\n * 设置默认倍速\n */\n set defaultPlaybackRate(e) {\n Be.i(at, \"call set defaultPlaybackRate\", e), this._video && (this._video.defaultPlaybackRate = e), this.emit(ge.ATTRIBUTE_CHANGE_DEFAULT_PLAYBACK_RATE);\n }\n /**\n * 获取默认倍速\n */\n get defaultPlaybackRate() {\n var e;\n return Be.v(at, \"call get defaultPlaybackRate\", (e = this._video) == null ? void 0 : e.defaultPlaybackRate), this._video ? this._video.defaultPlaybackRate : 1;\n }\n /**\n * 设置倍速\n */\n set playbackRate(e) {\n Be.i(at, \"call set playbackRate\", e), this._video && (this._video.playbackRate = e), this.emit(ge.ATTRIBUTE_CHANGE_PLAYBACK_RATE);\n }\n /**\n * 获取当前倍速\n */\n get playbackRate() {\n return this._video ? this._video.playbackRate : 1;\n }\n /**\n * 获取是否播放\n */\n get played() {\n var e;\n return (e = this._video) == null ? void 0 : e.played;\n }\n /**\n * 获取是否可以seek\n */\n get seekable() {\n var e;\n return (e = this._video) == null ? void 0 : e.seekable;\n }\n /**\n * 获取是否播放完成\n */\n get ended() {\n return this._video ? this._video.ended : !1;\n }\n /**\n * 设置是否自动播放\n */\n set autoplay(e) {\n Be.i(at, \"call set autoplay\", e), this._autoplay = e, this.emit(ge.ATTRIBUTE_CHANGE_AUTOPLAY);\n }\n /**\n * 获取是否自动播放\n */\n get autoplay() {\n return this._autoplay;\n }\n /**\n * 设置是否循环播放\n */\n set loop(e) {\n Be.i(at, \"call set loop\", e), this._video && (this._video.loop = e), this.emit(ge.ATTRIBUTE_CHANGE_LOOP);\n }\n /**\n * 获取是否循环播放\n */\n get loop() {\n return this._video ? this._video.loop : !1;\n }\n /**\n * 设置是否显示控制条\n */\n set controls(e) {\n Be.i(at, \"call set controls\", e), e !== this._controls && (this._controls = e), this.emit(ge.ATTRIBUTE_CHANGE_CONTROLS);\n }\n /**\n * 获取是否显示控制条\n */\n get controls() {\n return this._controls;\n }\n /**\n * 设置音量 (范围0-1)\n */\n set volume(e) {\n this._video && (this._video.volume = e < 0 ? 0 : e > 1 ? 1 : e, this.emit(ge.ATTRIBUTE_CHANGE_VOLUME));\n }\n /**\n * 获取音量\n */\n get volume() {\n return this._video ? this._video.volume : 1;\n }\n /**\n * 设置静音\n */\n set muted(e) {\n Be.i(at, `call set muted: ${e}, hasVideo: ${!!this._video}`), this._video && (this._video.muted = e, this.emit(ge.ATTRIBUTE_CHANGE_MUTED));\n }\n /**\n * 获取静音状态\n */\n get muted() {\n return this._video ? this._video.muted : !1;\n }\n /**\n * 设置默认静音\n */\n set defaultMuted(e) {\n Be.i(at, \"call set defaultMuted\", e), this._video && (this._video.defaultMuted = e, this.emit(ge.ATTRIBUTE_CHANGE_DEFAULT_MUTED));\n }\n /**\n * 获取默认静音状态\n */\n get defaultMuted() {\n return this._video ? this._video.defaultMuted : !1;\n }\n // public set width(val: number | string) {\n // this._width = val;\n // }\n // public set height(val: number | string) {\n // this._height = val;\n // }\n /**\n * 获取视频宽\n */\n get videoWidth() {\n var e;\n return this._videoWidth || ((e = this._video) == null ? void 0 : e.videoWidth);\n }\n /**\n * 获取视频高\n */\n get videoHeight() {\n var e;\n return this._videoHeight || ((e = this._video) == null ? void 0 : e.videoHeight);\n }\n /**\n * 设置封面图\n */\n set poster(e) {\n Be.i(at, \"call set poster\", e), this._poster = e, this._updatePosterDom(), this.emit(ge.ATTRIBUTE_CHANGE_POSTER);\n }\n /**\n * 获取封面图\n */\n get poster() {\n return this._poster;\n }\n /**\n * 设置禁用画中画\n */\n set disablePictureInPicture(e) {\n Be.i(at, \"call set disablePictureInPicture\", e), this._video && (this._video.disablePictureInPicture = e, this.emit(ge.ATTRIBUTE_CHANGE_DISABLE_PICTURE_IN_PICTURE));\n }\n /**\n * 获取禁用画中画状态\n */\n get disablePictureInPicture() {\n var e;\n return !!((e = this._video) != null && e.disablePictureInPicture);\n }\n set disableDownload(e) {\n Be.i(at, \"call set disableDownload\", e), this._data && (this._data.disableDownload = e, this.emit(ge.ATTRIBUTE_CHANGE_DISABLE_DOWNLOAD));\n }\n get disableDownload() {\n var e;\n return (e = this._data) == null ? void 0 : e.disableDownload;\n }\n /**\n * 设置内联(inline)播放\n */\n set playsinline(e) {\n Be.i(at, \"call set playsinline\", e), this._video && (this._video.playsinline = e, this._video.WebKitPlaysInline = e, e ? (this._video.setAttribute(\"playsinline\", \"playsinline\"), this._video.setAttribute(\"webkit-playsinline\", \"webkit-playsinline\"), this._video.setAttribute(\"x5-playsinline\", \"x5-playsinline\")) : (this._video.removeAttribute(\"playsinline\"), this._video.removeAttribute(\"webkit-playsinline\"), this._video.removeAttribute(\"x5-playsinline\")), this.emit(ge.ATTRIBUTE_CHANGE_PLAYSINLINE));\n }\n /**\n * 获取是否内联(inline)播放\n */\n get playsinline() {\n var e;\n return !!((e = this._video) != null && e.hasAttribute(\"playsinline\"));\n }\n /**\n * 设置自适应码率开关\n */\n set disableAdaptive(e) {\n Be.i(at, \"call set disableAdaptive\", e), this._data && (this._data.disableAdaptive = e, this.emit(ge.ATTRIBUTE_CHANGE_DISABLE_ADAPTIVE));\n }\n /**\n * 获取自适应码率开关状态\n */\n get disableAdaptive() {\n var e;\n return (e = this._data) == null ? void 0 : e.disableAdaptive;\n }\n /**\n * 设置当前视频轨id\n */\n set currentLevel(e) {\n var i, r;\n if (Be.i(at, \"call set currentLevel\", e, !!this._kernel, this._livePaused), this._kernel) {\n const o = this._video.paused;\n this._livePaused ? ((i = this._kernel) == null || i.refresh(), this._kernel.currentLevel = e) : (this._kernel.currentLevel = e, this.emit(ge.ATTRIBUTE_CHANGE_CURRENT_LEVEL)), !o && this._video.paused && (Be.i(at, \"set level. play\"), (r = this._video) == null || r.play());\n }\n }\n /**\n * 获取当前视频轨id\n */\n get currentLevel() {\n var e;\n return ((e = this._kernel) == null ? void 0 : e.currentLevel) || 0;\n }\n /**\n * 设置即将切换的视频轨id\n */\n set nextLevel(e) {\n var i, r;\n if (Be.i(at, \"call set nextLevel\", e), this._kernel) {\n const o = this._video.paused;\n this._livePaused ? ((i = this._kernel) == null || i.refresh(), this._kernel.currentLevel = e) : (this._kernel.nextLevel = e, this.emit(ge.ATTRIBUTE_CHANGE_NEXT_LEVEL)), !o && this._video.paused && (Be.i(at, \"set next level. play\"), (r = this._video) == null || r.play());\n }\n }\n /**\n * 获取即将切换的视频轨id\n */\n get nextLevel() {\n var e;\n return ((e = this._kernel) == null ? void 0 : e.nextLevel) || 0;\n }\n /**\n * 设置当前播放帧数\n */\n set currentVideoFrame(e) {\n this._kernel && (this._kernel.currentVideoFrame = e, this.emit(ge.ATTRIBUTE_CHANGE_CURRENT_FRAME));\n }\n /**\n * 获取当前播放帧数\n */\n get currentVideoFrame() {\n var e;\n return ((e = this._kernel) == null ? void 0 : e.currentVideoFrame) || 0;\n }\n /**\n * 获取当前视频总帧数\n */\n get totalVideoFrames() {\n var e;\n return ((e = this._kernel) == null ? void 0 : e.totalVideoFrames) || 0;\n }\n /**\n * 当前清晰度时间信息\n */\n get currentLevelTimeInfo() {\n var e;\n return (e = this._kernel) == null ? void 0 : e.currentLevelTimeInfo;\n }\n get video() {\n return this._video;\n }\n get canvas() {\n return this._canvas;\n }\n /**\n * 设置当前音频轨id\n */\n set audioTrack(e) {\n Be.i(at, \"call set audioTrack\", e), this._kernel && (this._kernel.audioTrack = e, this.emit(ge.ATTRIBUTE_CHANGE_AUDIO_TRACK));\n }\n /**\n * 获取当前音频轨id\n */\n get audioTrack() {\n return this._kernel ? this._kernel.audioTrack : -1;\n }\n set productName(e) {\n Be.i(at, \"call set productName\", e), this._data && (this._data.productName = e);\n }\n get productName() {\n var e;\n return (e = this._data) == null ? void 0 : e.productName;\n }\n /**\n * 设置是否开启连接预热\n */\n set prefetch(e) {\n Be.i(at, \"call set prefetch\", e), this._data && (this._data.prefetch = e, this.emit(ge.ATTRIBUTE_CHANGE_PREFETCH));\n }\n /**\n * 获取当前是否开启连接预热\n */\n get prefetch() {\n var e;\n return (e = this._data) == null ? void 0 : e.prefetch;\n }\n /**\n * 设置是否显示进度条\n * @remarks 依赖控制条插件\n */\n set showProgress(e) {\n Be.i(at, \"call set showProgress\", e), this._data && (this._data.showProgress = e, this.emit(ge.ATTRIBUTE_CHANGE_SHOW_PROGRESS));\n }\n /**\n * 获取是否显示进度条\n * @remarks 依赖控制条插件\n */\n get showProgress() {\n var e;\n return (e = this._data) == null ? void 0 : e.showProgress;\n }\n /**\n * 设置是否显示时间\n * @remarks 依赖控制条插件\n */\n set showTime(e) {\n Be.i(at, \"call set showTime\", e), this._data && (this._data.showTime = e, this.emit(ge.ATTRIBUTE_CHANGE_SHOW_TIME));\n }\n /**\n * 获取是否显示时间\n * @remarks 依赖控制条插件\n */\n get showTime() {\n var e;\n return (e = this._data) == null ? void 0 : e.showTime;\n }\n /**\n * 设置是否启用热键\n * @remarks 依赖热键插件\n */\n set disableHotkey(e) {\n Be.i(at, \"call set disableHotkey\", e), this._data && (this._data.disableHotkey = e, this.emit(ge.ATTRIBUTE_CHANGE_DISABLE_HOTKEY));\n }\n /**\n * 获取是否启用热键\n * @remarks 依赖热键插件\n */\n get disableHotkey() {\n var e;\n return (e = this._data) == null ? void 0 : e.disableHotkey;\n }\n /**\n * 弹幕是否可用\n */\n set disableDanmaku(e) {\n Be.i(at, \"call set disableDanmaku\", e), this._data && (this._data.disableDanmaku = e, this.emit(ge.ATTRIBUTE_CHANGE_DISABLE_DANMAKU));\n }\n get disableDanmaku() {\n var e;\n return (e = this._data) == null ? void 0 : e.disableDanmaku;\n }\n set danmakuRendering(e) {\n Be.i(at, \"call set danmakuRendering\", e), this._data && (this._data.danmakuRendering = e, this.emit(ge.ATTRIBUTE_CHANGE_DANMAKU_RENDERING));\n }\n get danmakuRendering() {\n var e;\n return (e = this._data) == null ? void 0 : e.danmakuRendering;\n }\n /**\n * 设置是否显示信息面板\n * @remarks 依赖信息面板插件\n */\n set showInfoPanel(e) {\n Be.i(at, \"call set showInfoPanel\", e), this._data && (this._data.showInfoPanel = e, this.emit(ge.ATTRIBUTE_CHANGE_SHOW_INFO_PANEL));\n }\n /**\n * 设置是否显示信息面板\n * @remarks 依赖信息面板插件\n */\n get showInfoPanel() {\n var e;\n return (e = this._data) == null ? void 0 : e.showInfoPanel;\n }\n set showNext(e) {\n Be.i(at, \"call set showNext\", e), this._data && (this._data.showNext = e, this.emit(ge.ATTRIBUTE_CHANGE_SHOW_NEXT));\n }\n get showNext() {\n var e;\n return (e = this._data) == null ? void 0 : e.showNext;\n }\n set showPrev(e) {\n Be.i(at, \"call set showPrev\", e), this._data && (this._data.showPrev = e, this.emit(ge.ATTRIBUTE_CHANGE_SHOW_PREV));\n }\n get showPrev() {\n var e;\n return (e = this._data) == null ? void 0 : e.showPrev;\n }\n set bizData(e) {\n Be.i(at, \"set biz data\", e), this._data && (this._data.bizData = e), this.emit(ge.ATTRIBUTE_CHANGE_BIZ_DATA);\n }\n get bizData() {\n var e;\n return (e = this._data) == null ? void 0 : e.bizData;\n }\n get kernel() {\n return this._kernel;\n }\n setPreprocessURL(e) {\n this._preprocessURL = e;\n }\n setPreprocessSrcFunc(e) {\n this._preprocessSrcFunc = e;\n }\n /**\n * 加载视频\n */\n load() {\n var e;\n Be.i(at, \"call load\"), (e = this._kernel) == null || e.load(), this._kernelLoaded = !0;\n }\n /**\n * 播放视频\n */\n play() {\n var e, i;\n return Be.i(at, \"call play\", this._kernelLoaded, this._livePaused), this._livePaused ? (e = this._kernel) == null || e.refresh() : this._kernelLoaded || this.load(), (i = this._video) == null ? void 0 : i.play();\n }\n /**\n * 暂停视频\n */\n pause() {\n var e, i, r;\n return Be.i(at, \"call pause\", (e = this._mediaInfo) == null ? void 0 : e.isLive), this._kernel && (i = this._mediaInfo) != null && i.isLive && (Be.i(at, \"live stop load\"), this._kernel.stopLoad(), this._livePaused = !0), (r = this._video) == null ? void 0 : r.pause();\n }\n /**\n * 开启画中画\n */\n requestPictureInPicture() {\n return Be.i(at, \"call requestPictureInPicture\"), this._video && \"requestPictureInPicture\" in this._video ? this._video.requestPictureInPicture() : Promise.reject(\"not support requestPictureInPicture\");\n }\n isPictureInPictureAvailable() {\n return BE();\n }\n /**\n * 销毁播放器\n */\n destroy() {\n var e, i;\n Be.i(at, \"call destroy\"), this._preprocessSrcFunc = void 0, Tr._pluginBase.beforeUninstallPlugins(this), this._evt.removeAllListeners(), this._destroyKernel(), this._unbindVideo(), (e = this._videoLayer.parentElement) == null || e.removeChild(this._videoLayer), (i = this._videoLayer.parentElement) == null || i.removeChild(this._videoInteractiveLayer), this.removeAllListeners(), Tr._pluginBase.afterUninstallPlugins(this);\n }\n /**\n * 重新加载视频\n */\n refresh() {\n var e;\n Be.i(at, \"call refresh\"), (e = this._kernel) == null || e.refresh();\n }\n /**\n * 支持时移时回到直播状态\n */\n jumpToLiveTime() {\n var e;\n Be.i(at, \"call jumpToLiveTime\"), this._isTimeShiftPlayback && (this.config.liveShiftEnabled && this._playbackSrc ? this._initKernel(this._src) : (e = this._kernel) == null || e.jumpToLiveTime(), this._isTimeShiftPlayback = !1, this.emit(ge.TIME_SHIFT_PLAYBACK_CHANGE, this._isTimeShiftPlayback));\n }\n /**\n * 注册播放器插件\n * @param plugin plugin需继承自PluginModule\n */\n static register(e) {\n Tr._pluginBase.register(e);\n }\n /**\n * 注销播放器插件\n * @param plugin plugin需继承自PluginModule\n */\n static deregister(e) {\n Tr._pluginBase.deregister(e);\n }\n /**\n * 根据插件名获取插件实例\n * @param label 插件名\n * @returns plugin\n */\n getPluginInstance(e) {\n return Tr._pluginBase.getPlugin(e);\n }\n /**\n * 创建一个子容器\n * @returns HTMLDivELement\n */\n createSubContainer(e = ja.DEFAULT) {\n const i = document.createElement(\"div\");\n i.id = `${this._id}-sub-${Math.round(this._subContainerNumber++)}`;\n let r = this._mainDom;\n if (e === ja.VIDEO && (r = this._videoLayer), e === ja.VIDEO_INTERACTIVE && (r = this._videoInteractiveLayer), r)\n r.children.length ? r.children[r.children.length - 1].insertAdjacentElement(\"afterend\", i) : r.appendChild(i);\n else\n throw new Error(\"cteate sub container error. no parent found.\");\n return i;\n }\n /**\n * 是否全屏\n * @returns boolean\n */\n isFullscreen(e) {\n return this._full.isFull(e);\n }\n isFullscreenAvailable(e) {\n return this._full.isFullscreenAvailable(e);\n }\n removeSubContainer(e) {\n e.parentElement && e.parentElement.removeChild(e);\n }\n /**\n * 获取主容器\n * @returns \n */\n getMainContainer() {\n return this._mainDom;\n }\n getVideoLayer() {\n return this._videoLayer;\n }\n getVideoInteractiveLayer() {\n return this._videoInteractiveLayer;\n }\n /**\n * 获取当前QOS信息\n * @returns \n */\n getAudienceStat() {\n var e;\n return (e = this._kernel) == null ? void 0 : e.getAudienceStat();\n }\n _updatePosterDom() {\n this._poster ? this._posterLayer.style.backgroundImage = `url(${this._poster})` : this._posterLayer.style.backgroundImage = \"\";\n }\n _setIsUseCanvas(e) {\n this._video && (this._video.style.display = e ? \"none\" : \"block\");\n }\n _setError(e) {\n this._error = e, this._error && setTimeout(() => {\n try {\n this.emit(ge.ERROR, this._error);\n } catch (i) {\n }\n }, 0);\n }\n _resetPlayerStat() {\n if (this._canvas) {\n try {\n this._videoLayer.removeChild(this._canvas);\n } catch (e) {\n }\n this._canvas = void 0;\n }\n this._setError(void 0), this._setIsUseCanvas(!1), this._mediaInfo = void 0;\n }\n _destroyKernel() {\n this._kernel && (this._kernelLoaded = !1, this._livePaused = !1, this.pause(), this._kernel.destroy(), this._kernel = void 0);\n }\n _bindVideo() {\n if (this._video)\n for (let e in this._eventHandlers)\n this._video.addEventListener(e, this._eventHandlers[e]);\n }\n _unbindVideo() {\n if (this._video)\n for (let e in this._eventHandlers)\n this._video.removeEventListener(e, this._eventHandlers[e]);\n }\n _parseData(e) {\n Be.i(at, \"parse data.\", e), e.src && (this._src = this._preprocessSrcFunc ? this._preprocessSrcFunc(e.src) : e.src), e.config && (this._config = e.config), e.crossOrigin && (this.crossOrigin = e.crossOrigin), typeof e.preload < \"u\" && (this.preload = e.preload), typeof e.defaultPlaybackRate == \"number\" && (this.defaultPlaybackRate = e.defaultPlaybackRate), typeof e.playbackRate == \"number\" && (this.playbackRate = e.playbackRate), typeof e.autoplay < \"u\" && (this.autoplay = e.autoplay), typeof e.loop < \"u\" && (this.loop = e.loop), typeof e.controls < \"u\" && (this.controls = e.controls), typeof e.volume == \"number\" && (this.volume = e.volume), typeof e.muted < \"u\" && (this.muted = e.muted), typeof e.defaultMuted < \"u\" && (this.defaultMuted = e.defaultMuted), typeof e.disablePictureInPicture < \"u\" && (this.disablePictureInPicture = e.disablePictureInPicture), typeof e.disableAdaptive < \"u\" && (this.disableAdaptive = e.disableAdaptive), typeof e.playsinline < \"u\" && (this.playsinline = e.playsinline), this.poster = e.poster || \"\";\n }\n _initKernel(e, i = !0) {\n var r, o;\n if (!this._video)\n return;\n if (this._posterLayer.style.display = \"block\", this._destroyKernel(), !this._src && !((r = this._config) != null && r.src) && !e) {\n this._video.src = \"\", this._resetPlayerStat();\n return;\n }\n this._config || (this._config = {});\n const l = Object.assign({}, this._config, {\n adaptive: ((o = this._data) == null ? void 0 : o.disableAdaptive) === !1\n });\n e ? l.src = e : this._src && (l.src = this._src), this._preprocessURL && (l.preprocessUrl = this._preprocessURL), typeof l.nativeFirst > \"u\" && wE && (l.nativeFirst = !0), this._resetPlayerStat(), Be.i(at, \"init kernel\");\n const v = this._kernel = new AE(this._video, l);\n v.on(Ar.VIDEO_RENDERER_CHANGE, (E) => {\n const C = this._videoLayer;\n if (E.type === \"canvas\" && (this._setIsUseCanvas(!0), this._canvas = E.canvas, C.insertAdjacentElement(\"afterbegin\", E.canvas), this._updateCanvasSize()), E.type === \"video\") {\n this._setIsUseCanvas(!1);\n try {\n this._canvas && C.removeChild(this._canvas);\n } catch (x) {\n }\n this._canvas = void 0;\n }\n this.emit(ge.VIDEO_RENDERER_CHANGE, E);\n }), v.on(Ar.MANIFEST_PARSED, (E) => {\n Be.i(at, Ar.MANIFEST_PARSED, E), this.emit(ge.MANIFEST_PARSED, E);\n }), v.on(Ar.LEVEL_SWITCHING, (E) => {\n this.emit(ge.LEVEL_SWITCHING, E);\n }), v.on(Ar.LEVEL_SWITCHED, (E) => {\n this.emit(ge.LEVEL_SWITCHED, E);\n }), v.on(Ar.LEVEL_SWITCH_PLAYING, (E) => {\n this.emit(ge.LEVEL_SWITCH_PLAYING, E);\n }), v.on(Ar.LEVEL_SWITCH_FAILED, () => {\n this.emit(ge.LEVEL_SWITCH_FAILED);\n }), v.on(Ar.LEVEL_UPDATED, (E) => {\n this.emit(ge.LEVEL_UPDATED, E);\n }), v.on(Ar.AUDIO_TRACK_SWITCHING, (E) => {\n this.emit(ge.AUDIO_TRACKS_SWITCHING, E);\n }), v.on(Ar.AUDIO_TRACK_SWITCHED, (E) => {\n this.emit(ge.AUDIO_TRACKS_SWITCHED, E);\n }), v.on(Ar.ERROR, (E) => {\n this._setError({ code: E.code, message: E.reason });\n }), v.on(Ar.REPORT, (E) => {\n E.type === \"mediaInfo\" && (this._videoWidth = E.value.width || 0, this._videoHeight = E.value.height || 0, this._mediaInfo = E.value, this._updateCanvasSize()), this.emit(ge.REPORT, E);\n }), i && this._kernelStart();\n }\n _kernelStart() {\n if (!(!this._kernel || !this._video) && (this._autoplay || this._preload === \"\" || this._preload === \"auto\" || this._preload === \"metadata\") && (this._kernel.load(), this._kernelLoaded = !0, this.autoplay)) {\n const e = this._video.play();\n e instanceof Promise && e.catch(() => {\n var i;\n Be.i(at, \"autoplay fail, retry.\"), this._onMutedChange(!0), (i = this._video) == null || i.play().catch(() => {\n });\n });\n }\n }\n _updateCanvasSize(e) {\n Be.i(at, \"updateCanvas\", e || this._full.isFull(), this._videoWidth, this._videoHeight), typeof e > \"u\" && (e = this._full.isFull()), this._canvas && this._videoWidth && this._videoHeight && (this._canvas.style.width = e ? \"100%\" : `${this._videoWidth}px`, this._canvas.style.height = e ? \"100%\" : `${this._videoHeight}px`);\n }\n on(e, i) {\n this._evt.on(e, i);\n }\n once(e, i) {\n this._evt.once(e, i);\n }\n removeAllListeners(e) {\n Be.i(at, \"call removeAllListeners\"), this._evt.removeAllListeners(e);\n }\n off(e, i) {\n this._evt.off(e, i);\n }\n listeners(e) {\n return this._evt.listeners(e);\n }\n emit(e, i) {\n return this._evt.emit(e, i);\n }\n listenerCount(e) {\n return this._evt.listenerCount(e);\n }\n};\nlet ci = Tr;\net(ci, \"version\", \"1.1.0-alpha.0\"), et(ci, \"packVersion\", \"1.1.0-alpha.0\"), et(ci, \"_pluginBase\", new UE());\n(function() {\n try {\n if (typeof document < \"u\") {\n var t = document.createElement(\"style\");\n t.appendChild(document.createTextNode(\"\")), document.head.appendChild(t);\n }\n } catch (e) {\n console.error(\"vite-plugin-css-injected-by-js\", e);\n }\n})();\nvar FE = Object.defineProperty, jE = (t, e, i) => e in t ? FE(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, Jn = (t, e, i) => (jE(t, typeof e != \"symbol\" ? e + \"\" : e, i), i);\nconst $n = class {\n constructor() {\n Jn(this, \"timeout\", 7 * 24 * 3600 * 1e3);\n }\n write(e, i) {\n if ($n.available)\n try {\n localStorage.setItem(\n e,\n JSON.stringify({ value: i, time: Date.now() })\n );\n } catch (r) {\n }\n }\n read(e, i = !0) {\n if ($n.available)\n try {\n const r = localStorage.getItem(e);\n if (r) {\n const { value: o, time: l = 0 } = JSON.parse(r);\n if (!i || Date.now() - l < this.timeout)\n return o;\n }\n } catch (r) {\n }\n }\n static get available() {\n if (typeof $n._available > \"u\")\n try {\n localStorage.setItem(\"alg\", \"test\"), $n._available = !0;\n } catch (e) {\n $n._available = !1;\n }\n return $n._available;\n }\n};\nlet o0 = $n;\nJn(o0, \"_available\");\nconst zE = \"kwai-p\";\nfunction cs(t, e) {\n return (!e || e.length === 0) && (e = [t], t = \"\"), t = zE + (t ? \"::\" + t : \"\"), e.unshift(\"[\" + t + \"] > \"), e;\n}\nconst ei = class {\n /**\n * 设置日志输出等级\n * @param l 日志等级\n */\n static level(e) {\n switch (ei.ENABLE_ERROR = ei.ENABLE_WARN = ei.ENABLE_INFO = ei.ENABLE_DEBUG = ei.ENABLE_VERBOSE = !1, e) {\n case \"e\":\n ei.ENABLE_ERROR = !0;\n break;\n case \"w\":\n ei.ENABLE_ERROR = ei.ENABLE_WARN = !0;\n break;\n case \"i\":\n ei.ENABLE_ERROR = ei.ENABLE_WARN = ei.ENABLE_INFO = !0;\n break;\n case \"d\":\n ei.ENABLE_ERROR = ei.ENABLE_WARN = ei.ENABLE_INFO = ei.ENABLE_DEBUG = !0;\n break;\n case \"v\":\n ei.ENABLE_ERROR = ei.ENABLE_WARN = ei.ENABLE_INFO = ei.ENABLE_DEBUG = ei.ENABLE_VERBOSE = !0;\n break;\n }\n }\n /**\n * error日志\n * @param tag tag\n * @param msg 日志信息\n */\n static e(e, ...i) {\n if (!ei.ENABLE_ERROR)\n return;\n const r = cs(e, i);\n (console.error || console.warn || console.log).apply(console, r);\n }\n /**\n * warn日志\n * @param tag tag\n * @param msg 日志信息\n */\n static w(e, ...i) {\n if (!ei.ENABLE_WARN)\n return;\n const r = cs(e, i);\n (console.warn || console.log).apply(console, r);\n }\n /**\n * info日志\n * @param tag tag\n * @param msg 日志信息\n */\n static i(e, ...i) {\n if (!ei.ENABLE_INFO)\n return;\n const r = cs(e, i);\n (console.info || console.log).apply(console, r);\n }\n /**\n * debug日志\n * @param tag tag\n * @param msg 日志信息\n */\n static d(e, ...i) {\n if (!ei.ENABLE_DEBUG)\n return;\n const r = cs(e, i);\n (console.debug || console.log).apply(console, r);\n }\n /**\n * verbose日志\n * @param tag tag\n * @param msg 日志信息\n */\n static v(e, ...i) {\n if (!ei.ENABLE_VERBOSE)\n return;\n const r = cs(e, i);\n console.log.apply(console, r);\n }\n};\nlet Rt = ei;\nJn(Rt, \"ENABLE_ERROR\", !0), Jn(Rt, \"ENABLE_WARN\", !1), Jn(Rt, \"ENABLE_INFO\", !1), Jn(Rt, \"ENABLE_DEBUG\", !1), Jn(Rt, \"ENABLE_VERBOSE\", !1);\nvar HE = typeof globalThis < \"u\" ? globalThis : typeof window < \"u\" ? window : typeof global < \"u\" ? global : typeof self < \"u\" ? self : {}, tc = {}, $E = {\n get exports() {\n return tc;\n },\n set exports(t) {\n tc = t;\n }\n};\n(function(t, e) {\n (function(i, r) {\n var o = \"1.0.33\", l = \"\", v = \"?\", E = \"function\", C = \"undefined\", x = \"object\", g = \"string\", D = \"major\", _ = \"model\", m = \"name\", p = \"type\", d = \"vendor\", u = \"version\", U = \"architecture\", w = \"console\", S = \"mobile\", R = \"tablet\", z = \"smarttv\", W = \"wearable\", fe = \"embedded\", q = 350, ve = \"Amazon\", Ae = \"Apple\", P = \"ASUS\", Me = \"BlackBerry\", Ie = \"Browser\", je = \"Chrome\", ke = \"Edge\", H = \"Firefox\", ie = \"Google\", ye = \"Huawei\", we = \"LG\", J = \"Microsoft\", le = \"Motorola\", me = \"Opera\", he = \"Samsung\", re = \"Sharp\", Se = \"Sony\", Pe = \"Xiaomi\", Xe = \"Zebra\", Oe = \"Facebook\", st = function(K, Z) {\n var Y = {};\n for (var _e in K)\n Z[_e] && Z[_e].length % 2 === 0 ? Y[_e] = Z[_e].concat(K[_e]) : Y[_e] = K[_e];\n return Y;\n }, ze = function(K) {\n for (var Z = {}, Y = 0; Y < K.length; Y++)\n Z[K[Y].toUpperCase()] = K[Y];\n return Z;\n }, rt = function(K, Z) {\n return typeof K === g ? Fe(Z).indexOf(Fe(K)) !== -1 : !1;\n }, Fe = function(K) {\n return K.toLowerCase();\n }, G = function(K) {\n return typeof K === g ? K.replace(/[^\\d\\.]/g, l).split(\".\")[0] : r;\n }, k = function(K, Z) {\n if (typeof K === g)\n return K = K.replace(/^\\s\\s*/, l), typeof Z === C ? K : K.substring(0, q);\n }, F = function(K, Z) {\n for (var Y = 0, _e, ee, Ve, ce, qe, Ce; Y < Z.length && !qe; ) {\n var Ye = Z[Y], tt = Z[Y + 1];\n for (_e = ee = 0; _e < Ye.length && !qe; )\n if (qe = Ye[_e++].exec(K), qe)\n for (Ve = 0; Ve < tt.length; Ve++)\n Ce = qe[++ee], ce = tt[Ve], typeof ce === x && ce.length > 0 ? ce.length === 2 ? typeof ce[1] == E ? this[ce[0]] = ce[1].call(this, Ce) : this[ce[0]] = ce[1] : ce.length === 3 ? typeof ce[1] === E && !(ce[1].exec && ce[1].test) ? this[ce[0]] = Ce ? ce[1].call(this, Ce, ce[2]) : r : this[ce[0]] = Ce ? Ce.replace(ce[1], ce[2]) : r : ce.length === 4 && (this[ce[0]] = Ce ? ce[3].call(this, Ce.replace(ce[1], ce[2])) : r) : this[ce] = Ce || r;\n Y += 2;\n }\n }, I = function(K, Z) {\n for (var Y in Z)\n if (typeof Z[Y] === x && Z[Y].length > 0) {\n for (var _e = 0; _e < Z[Y].length; _e++)\n if (rt(Z[Y][_e], K))\n return Y === v ? r : Y;\n } else if (rt(Z[Y], K))\n return Y === v ? r : Y;\n return K;\n }, V = {\n \"1.0\": \"/8\",\n \"1.2\": \"/1\",\n \"1.3\": \"/3\",\n \"2.0\": \"/412\",\n \"2.0.2\": \"/416\",\n \"2.0.3\": \"/417\",\n \"2.0.4\": \"/419\",\n \"?\": \"/\"\n }, ne = {\n ME: \"4.90\",\n \"NT 3.11\": \"NT3.51\",\n \"NT 4.0\": \"NT4.0\",\n 2e3: \"NT 5.0\",\n XP: [\"NT 5.1\", \"NT 5.2\"],\n Vista: \"NT 6.0\",\n 7: \"NT 6.1\",\n 8: \"NT 6.2\",\n \"8.1\": \"NT 6.3\",\n 10: [\"NT 6.4\", \"NT 10.0\"],\n RT: \"ARM\"\n }, oe = {\n browser: [\n [\n /\\b(?:crmo|crios)\\/([\\w\\.]+)/i\n // Chrome for Android/iOS\n ],\n [u, [m, \"Chrome\"]],\n [\n /edg(?:e|ios|a)?\\/([\\w\\.]+)/i\n // Microsoft Edge\n ],\n [u, [m, \"Edge\"]],\n [\n // Presto based\n /(opera mini)\\/([-\\w\\.]+)/i,\n // Opera Mini\n /(opera [mobiletab]{3,6})\\b.+version\\/([-\\w\\.]+)/i,\n // Opera Mobi/Tablet\n /(opera)(?:.+version\\/|[\\/ ]+)([\\w\\.]+)/i\n // Opera\n ],\n [m, u],\n [\n /opios[\\/ ]+([\\w\\.]+)/i\n // Opera mini on iphone >= 8.0\n ],\n [u, [m, me + \" Mini\"]],\n [\n /\\bopr\\/([\\w\\.]+)/i\n // Opera Webkit\n ],\n [u, [m, me]],\n [\n // Mixed\n /(kindle)\\/([\\w\\.]+)/i,\n // Kindle\n /(lunascape|maxthon|netfront|jasmine|blazer)[\\/ ]?([\\w\\.]*)/i,\n // Lunascape/Maxthon/Netfront/Jasmine/Blazer\n // Trident based\n /(avant |iemobile|slim)(?:browser)?[\\/ ]?([\\w\\.]*)/i,\n // Avant/IEMobile/SlimBrowser\n /(ba?idubrowser)[\\/ ]?([\\w\\.]+)/i,\n // Baidu Browser\n /(?:ms|\\()(ie) ([\\w\\.]+)/i,\n // Internet Explorer\n // Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon\n /(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale|qqbrowserlite|qq|duckduckgo)\\/([-\\w\\.]+)/i,\n // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ, aka ShouQ\n /(weibo)__([\\d\\.]+)/i\n // Weibo\n ],\n [m, u],\n [\n /(?:\\buc? ?browser|(?:juc.+)ucweb)[\\/ ]?([\\w\\.]+)/i\n // UCBrowser\n ],\n [u, [m, \"UC\" + Ie]],\n [\n /microm.+\\bqbcore\\/([\\w\\.]+)/i,\n // WeChat Desktop for Windows Built-in Browser\n /\\bqbcore\\/([\\w\\.]+).+microm/i\n ],\n [u, [m, \"WeChat(Win) Desktop\"]],\n [\n /micromessenger\\/([\\w\\.]+)/i\n // WeChat\n ],\n [u, [m, \"WeChat\"]],\n [\n /konqueror\\/([\\w\\.]+)/i\n // Konqueror\n ],\n [u, [m, \"Konqueror\"]],\n [\n /trident.+rv[: ]([\\w\\.]{1,9})\\b.+like gecko/i\n // IE11\n ],\n [u, [m, \"IE\"]],\n [\n /yabrowser\\/([\\w\\.]+)/i\n // Yandex\n ],\n [u, [m, \"Yandex\"]],\n [\n /(avast|avg)\\/([\\w\\.]+)/i\n // Avast/AVG Secure Browser\n ],\n [[m, /(.+)/, \"$1 Secure \" + Ie], u],\n [\n /\\bfocus\\/([\\w\\.]+)/i\n // Firefox Focus\n ],\n [u, [m, H + \" Focus\"]],\n [\n /\\bopt\\/([\\w\\.]+)/i\n // Opera Touch\n ],\n [u, [m, me + \" Touch\"]],\n [\n /coc_coc\\w+\\/([\\w\\.]+)/i\n // Coc Coc Browser\n ],\n [u, [m, \"Coc Coc\"]],\n [\n /dolfin\\/([\\w\\.]+)/i\n // Dolphin\n ],\n [u, [m, \"Dolphin\"]],\n [\n /coast\\/([\\w\\.]+)/i\n // Opera Coast\n ],\n [u, [m, me + \" Coast\"]],\n [\n /miuibrowser\\/([\\w\\.]+)/i\n // MIUI Browser\n ],\n [u, [m, \"MIUI \" + Ie]],\n [\n /fxios\\/([-\\w\\.]+)/i\n // Firefox for iOS\n ],\n [u, [m, H]],\n [\n /\\bqihu|(qi?ho?o?|360)browser/i\n // 360\n ],\n [[m, \"360 \" + Ie]],\n [\n /(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i\n ],\n [[m, /(.+)/, \"$1 \" + Ie], u],\n [\n // Oculus/Samsung/Sailfish/Huawei Browser\n /(comodo_dragon)\\/([\\w\\.]+)/i\n // Comodo Dragon\n ],\n [[m, /_/g, \" \"], u],\n [\n /(electron)\\/([\\w\\.]+) safari/i,\n // Electron-based App\n /(tesla)(?: qtcarbrowser|\\/(20\\d\\d\\.[-\\w\\.]+))/i,\n // Tesla\n /m?(qqbrowser|baiduboxapp|2345Explorer)[\\/ ]?([\\w\\.]+)/i\n // QQBrowser/Baidu App/2345 Browser\n ],\n [m, u],\n [\n /(metasr)[\\/ ]?([\\w\\.]+)/i,\n // SouGouBrowser\n /(lbbrowser)/i,\n // LieBao Browser\n /\\[(linkedin)app\\]/i\n // LinkedIn App for iOS & Android\n ],\n [m],\n [\n // WebView\n /((?:fban\\/fbios|fb_iab\\/fb4a)(?!.+fbav)|;fbav\\/([\\w\\.]+);)/i\n // Facebook App for iOS & Android\n ],\n [[m, Oe], u],\n [\n /safari (line)\\/([\\w\\.]+)/i,\n // Line App for iOS\n /\\b(line)\\/([\\w\\.]+)\\/iab/i,\n // Line App for Android\n /(chromium|instagram)[\\/ ]([-\\w\\.]+)/i\n // Chromium/Instagram\n ],\n [m, u],\n [\n /\\bgsa\\/([\\w\\.]+) .*safari\\//i\n // Google Search Appliance on iOS\n ],\n [u, [m, \"GSA\"]],\n [\n /headlesschrome(?:\\/([\\w\\.]+)| )/i\n // Chrome Headless\n ],\n [u, [m, je + \" Headless\"]],\n [\n / wv\\).+(chrome)\\/([\\w\\.]+)/i\n // Chrome WebView\n ],\n [[m, je + \" WebView\"], u],\n [\n /droid.+ version\\/([\\w\\.]+)\\b.+(?:mobile safari|safari)/i\n // Android Browser\n ],\n [u, [m, \"Android \" + Ie]],\n [\n /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\/v?([\\w\\.]+)/i\n // Chrome/OmniWeb/Arora/Tizen/Nokia\n ],\n [m, u],\n [\n /version\\/([\\w\\.\\,]+) .*mobile\\/\\w+ (safari)/i\n // Mobile Safari\n ],\n [u, [m, \"Mobile Safari\"]],\n [\n /version\\/([\\w(\\.|\\,)]+) .*(mobile ?safari|safari)/i\n // Safari & Safari Mobile\n ],\n [u, m],\n [\n /webkit.+?(mobile ?safari|safari)(\\/[\\w\\.]+)/i\n // Safari < 3.0\n ],\n [m, [u, I, V]],\n [\n /(webkit|khtml)\\/([\\w\\.]+)/i\n ],\n [m, u],\n [\n // Gecko based\n /(navigator|netscape\\d?)\\/([-\\w\\.]+)/i\n // Netscape\n ],\n [[m, \"Netscape\"], u],\n [\n /mobile vr; rv:([\\w\\.]+)\\).+firefox/i\n // Firefox Reality\n ],\n [u, [m, H + \" Reality\"]],\n [\n /ekiohf.+(flow)\\/([\\w\\.]+)/i,\n // Flow\n /(swiftfox)/i,\n // Swiftfox\n /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\/ ]?([\\w\\.\\+]+)/i,\n // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror/Klar\n /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\/([-\\w\\.]+)$/i,\n // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix\n /(firefox)\\/([\\w\\.]+)/i,\n // Other Firefox-based\n /(mozilla)\\/([\\w\\.]+) .+rv\\:.+gecko\\/\\d+/i,\n // Mozilla\n // Other\n /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\. ]?browser)[-\\/ ]?v?([\\w\\.]+)/i,\n // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Sleipnir/Obigo/Mosaic/Go/ICE/UP.Browser\n /(links) \\(([\\w\\.]+)/i\n // Links\n ],\n [m, u],\n [\n /(cobalt)\\/([\\w\\.]+)/i\n // Cobalt\n ],\n [m, [u, /master.|lts./, \"\"]]\n ],\n cpu: [\n [\n /(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\)]/i\n // AMD64 (x64)\n ],\n [[U, \"amd64\"]],\n [\n /(ia32(?=;))/i\n // IA32 (quicktime)\n ],\n [[U, Fe]],\n [\n /((?:i[346]|x)86)[;\\)]/i\n // IA32 (x86)\n ],\n [[U, \"ia32\"]],\n [\n /\\b(aarch64|arm(v?8e?l?|_?64))\\b/i\n // ARM64\n ],\n [[U, \"arm64\"]],\n [\n /\\b(arm(?:v[67])?ht?n?[fl]p?)\\b/i\n // ARMHF\n ],\n [[U, \"armhf\"]],\n [\n // PocketPC mistakenly identified as PowerPC\n /windows (ce|mobile); ppc;/i\n ],\n [[U, \"arm\"]],\n [\n /((?:ppc|powerpc)(?:64)?)(?: mac|;|\\))/i\n // PowerPC\n ],\n [[U, /ower/, l, Fe]],\n [\n /(sun4\\w)[;\\)]/i\n // SPARC\n ],\n [[U, \"sparc\"]],\n [\n /((?:avr32|ia64(?=;))|68k(?=\\))|\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\b|pa-risc)/i\n // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC\n ],\n [[U, Fe]]\n ],\n device: [\n [\n //////////////////////////\n // MOBILES & TABLETS\n // Ordered by popularity\n /////////////////////////\n // Samsung\n /\\b(sch-i[89]0\\d|shw-m380s|sm-[ptx]\\w{2,4}|gt-[pn]\\d{2,4}|sgh-t8[56]9|nexus 10)/i\n ],\n [_, [d, he], [p, R]],\n [\n /\\b((?:s[cgp]h|gt|sm)-\\w+|galaxy nexus)/i,\n /samsung[- ]([-\\w]+)/i,\n /sec-(sgh\\w+)/i\n ],\n [_, [d, he], [p, S]],\n [\n // Apple\n /\\((ip(?:hone|od)[\\w ]*);/i\n // iPod/iPhone\n ],\n [_, [d, Ae], [p, S]],\n [\n /\\((ipad);[-\\w\\),; ]+apple/i,\n // iPad\n /applecoremedia\\/[\\w\\.]+ \\((ipad)/i,\n /\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i\n ],\n [_, [d, Ae], [p, R]],\n [\n /(macintosh);/i\n ],\n [_, [d, Ae]],\n [\n // Huawei\n /\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i\n ],\n [_, [d, ye], [p, R]],\n [\n /(?:huawei|honor)([-\\w ]+)[;\\)]/i,\n /\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i\n ],\n [_, [d, ye], [p, S]],\n [\n // Xiaomi\n /\\b(poco[\\w ]+)(?: bui|\\))/i,\n // Xiaomi POCO\n /\\b; (\\w+) build\\/hm\\1/i,\n // Xiaomi Hongmi 'numeric' models\n /\\b(hm[-_ ]?note?[_ ]?(?:\\d\\w)?) bui/i,\n // Xiaomi Hongmi\n /\\b(redmi[\\-_ ]?(?:note|k)?[\\w_ ]+)(?: bui|\\))/i,\n // Xiaomi Redmi\n /\\b(mi[-_ ]?(?:a\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\d?\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\))/i\n // Xiaomi Mi\n ],\n [[_, /_/g, \" \"], [d, Pe], [p, S]],\n [\n /\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i\n // Mi Pad tablets\n ],\n [[_, /_/g, \" \"], [d, Pe], [p, R]],\n [\n // OPPO\n /; (\\w+) bui.+ oppo/i,\n /\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i\n ],\n [_, [d, \"OPPO\"], [p, S]],\n [\n // Vivo\n /vivo (\\w+)(?: bui|\\))/i,\n /\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i\n ],\n [_, [d, \"Vivo\"], [p, S]],\n [\n // Realme\n /\\b(rmx[12]\\d{3})(?: bui|;|\\))/i\n ],\n [_, [d, \"Realme\"], [p, S]],\n [\n // Motorola\n /\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\b[\\w ]+build\\//i,\n /\\bmot(?:orola)?[- ](\\w*)/i,\n /((?:moto[\\w\\(\\) ]+|xt\\d{3,4}|nexus 6)(?= bui|\\)))/i\n ],\n [_, [d, le], [p, S]],\n [\n /\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i\n ],\n [_, [d, le], [p, R]],\n [\n // LG\n /((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i\n ],\n [_, [d, we], [p, R]],\n [\n /(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i,\n /\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i,\n /\\blg-?([\\d\\w]+) bui/i\n ],\n [_, [d, we], [p, S]],\n [\n // Lenovo\n /(ideatab[-\\w ]+)/i,\n /lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i\n ],\n [_, [d, \"Lenovo\"], [p, R]],\n [\n // Nokia\n /(?:maemo|nokia).*(n900|lumia \\d+)/i,\n /nokia[-_ ]?([-\\w\\.]*)/i\n ],\n [[_, /_/g, \" \"], [d, \"Nokia\"], [p, S]],\n [\n // Google\n /(pixel c)\\b/i\n // Google Pixel C\n ],\n [_, [d, ie], [p, R]],\n [\n /droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i\n // Google Pixel\n ],\n [_, [d, ie], [p, S]],\n [\n // Sony\n /droid.+ (a?\\d[0-2]{2}so|[c-g]\\d{4}|so[-gl]\\w+|xq-a\\w[4-7][12])(?= bui|\\).+chrome\\/(?![1-6]{0,1}\\d\\.))/i\n ],\n [_, [d, Se], [p, S]],\n [\n /sony tablet [ps]/i,\n /\\b(?:sony)?sgp\\w+(?: bui|\\))/i\n ],\n [[_, \"Xperia Tablet\"], [d, Se], [p, R]],\n [\n // OnePlus\n / (kb2005|in20[12]5|be20[12][59])\\b/i,\n /(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i\n ],\n [_, [d, \"OnePlus\"], [p, S]],\n [\n // Amazon\n /(alexa)webm/i,\n /(kf[a-z]{2}wi)( bui|\\))/i,\n // Kindle Fire without Silk\n /(kf[a-z]+)( bui|\\)).+silk\\//i\n // Kindle Fire HD\n ],\n [_, [d, ve], [p, R]],\n [\n /((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i\n // Fire Phone\n ],\n [[_, /(.+)/g, \"Fire Phone $1\"], [d, ve], [p, S]],\n [\n // BlackBerry\n /(playbook);[-\\w\\),; ]+(rim)/i\n // BlackBerry PlayBook\n ],\n [_, d, [p, R]],\n [\n /\\b((?:bb[a-f]|st[hv])100-\\d)/i,\n /\\(bb10; (\\w+)/i\n // BlackBerry 10\n ],\n [_, [d, Me], [p, S]],\n [\n // Asus\n /(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i\n ],\n [_, [d, P], [p, R]],\n [\n / (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i\n ],\n [_, [d, P], [p, S]],\n [\n // HTC\n /(nexus 9)/i\n // HTC Nexus 9\n ],\n [_, [d, \"HTC\"], [p, R]],\n [\n /(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i,\n // HTC\n // ZTE\n /(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i,\n /(alcatel|geeksphone|nexian|panasonic|sony(?!-bra))[-_ ]?([-\\w]*)/i\n // Alcatel/GeeksPhone/Nexian/Panasonic/Sony\n ],\n [d, [_, /_/g, \" \"], [p, S]],\n [\n // Acer\n /droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i\n ],\n [_, [d, \"Acer\"], [p, R]],\n [\n // Meizu\n /droid.+; (m[1-5] note) bui/i,\n /\\bmz-([-\\w]{2,})/i\n ],\n [_, [d, \"Meizu\"], [p, S]],\n [\n // Sharp\n /\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i\n ],\n [_, [d, re], [p, S]],\n [\n // MIXED\n /(blackberry|benq|palm(?=\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\w]*)/i,\n // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron\n /(hp) ([\\w ]+\\w)/i,\n // HP iPAQ\n /(asus)-?(\\w+)/i,\n // Asus\n /(microsoft); (lumia[\\w ]+)/i,\n // Microsoft Lumia\n /(lenovo)[-_ ]?([-\\w]+)/i,\n // Lenovo\n /(jolla)/i,\n // Jolla\n /(oppo) ?([\\w ]+) bui/i\n // OPPO\n ],\n [d, _, [p, S]],\n [\n /(archos) (gamepad2?)/i,\n // Archos\n /(hp).+(touchpad(?!.+tablet)|tablet)/i,\n // HP TouchPad\n /(kindle)\\/([\\w\\.]+)/i,\n // Kindle\n /(nook)[\\w ]+build\\/(\\w+)/i,\n // Nook\n /(dell) (strea[kpr\\d ]*[\\dko])/i,\n // Dell Streak\n /(le[- ]+pan)[- ]+(\\w{1,9}) bui/i,\n // Le Pan Tablets\n /(trinity)[- ]*(t\\d{3}) bui/i,\n // Trinity Tablets\n /(gigaset)[- ]+(q\\w{1,9}) bui/i,\n // Gigaset Tablets\n /(vodafone) ([\\w ]+)(?:\\)| bui)/i\n // Vodafone\n ],\n [d, _, [p, R]],\n [\n /(surface duo)/i\n // Surface Duo\n ],\n [_, [d, J], [p, R]],\n [\n /droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i\n // Fairphone\n ],\n [_, [d, \"Fairphone\"], [p, S]],\n [\n /(u304aa)/i\n // AT&T\n ],\n [_, [d, \"AT&T\"], [p, S]],\n [\n /\\bsie-(\\w*)/i\n // Siemens\n ],\n [_, [d, \"Siemens\"], [p, S]],\n [\n /\\b(rct\\w+) b/i\n // RCA Tablets\n ],\n [_, [d, \"RCA\"], [p, R]],\n [\n /\\b(venue[\\d ]{2,7}) b/i\n // Dell Venue Tablets\n ],\n [_, [d, \"Dell\"], [p, R]],\n [\n /\\b(q(?:mv|ta)\\w+) b/i\n // Verizon Tablet\n ],\n [_, [d, \"Verizon\"], [p, R]],\n [\n /\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i\n // Barnes & Noble Tablet\n ],\n [_, [d, \"Barnes & Noble\"], [p, R]],\n [\n /\\b(tm\\d{3}\\w+) b/i\n ],\n [_, [d, \"NuVision\"], [p, R]],\n [\n /\\b(k88) b/i\n // ZTE K Series Tablet\n ],\n [_, [d, \"ZTE\"], [p, R]],\n [\n /\\b(nx\\d{3}j) b/i\n // ZTE Nubia\n ],\n [_, [d, \"ZTE\"], [p, S]],\n [\n /\\b(gen\\d{3}) b.+49h/i\n // Swiss GEN Mobile\n ],\n [_, [d, \"Swiss\"], [p, S]],\n [\n /\\b(zur\\d{3}) b/i\n // Swiss ZUR Tablet\n ],\n [_, [d, \"Swiss\"], [p, R]],\n [\n /\\b((zeki)?tb.*\\b) b/i\n // Zeki Tablets\n ],\n [_, [d, \"Zeki\"], [p, R]],\n [\n /\\b([yr]\\d{2}) b/i,\n /\\b(dragon[- ]+touch |dt)(\\w{5}) b/i\n // Dragon Touch Tablet\n ],\n [[d, \"Dragon Touch\"], _, [p, R]],\n [\n /\\b(ns-?\\w{0,9}) b/i\n // Insignia Tablets\n ],\n [_, [d, \"Insignia\"], [p, R]],\n [\n /\\b((nxa|next)-?\\w{0,9}) b/i\n // NextBook Tablets\n ],\n [_, [d, \"NextBook\"], [p, R]],\n [\n /\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i\n // Voice Xtreme Phones\n ],\n [[d, \"Voice\"], _, [p, S]],\n [\n /\\b(lvtel\\-)?(v1[12]) b/i\n // LvTel Phones\n ],\n [[d, \"LvTel\"], _, [p, S]],\n [\n /\\b(ph-1) /i\n // Essential PH-1\n ],\n [_, [d, \"Essential\"], [p, S]],\n [\n /\\b(v(100md|700na|7011|917g).*\\b) b/i\n // Envizen Tablets\n ],\n [_, [d, \"Envizen\"], [p, R]],\n [\n /\\b(trio[-\\w\\. ]+) b/i\n // MachSpeed Tablets\n ],\n [_, [d, \"MachSpeed\"], [p, R]],\n [\n /\\btu_(1491) b/i\n // Rotor Tablets\n ],\n [_, [d, \"Rotor\"], [p, R]],\n [\n /(shield[\\w ]+) b/i\n // Nvidia Shield Tablets\n ],\n [_, [d, \"Nvidia\"], [p, R]],\n [\n /(sprint) (\\w+)/i\n // Sprint Phones\n ],\n [d, _, [p, S]],\n [\n /(kin\\.[onetw]{3})/i\n // Microsoft Kin\n ],\n [[_, /\\./g, \" \"], [d, J], [p, S]],\n [\n /droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i\n // Zebra\n ],\n [_, [d, Xe], [p, R]],\n [\n /droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i\n ],\n [_, [d, Xe], [p, S]],\n [\n ///////////////////\n // CONSOLES\n ///////////////////\n /(ouya)/i,\n // Ouya\n /(nintendo) ([wids3utch]+)/i\n // Nintendo\n ],\n [d, _, [p, w]],\n [\n /droid.+; (shield) bui/i\n // Nvidia\n ],\n [_, [d, \"Nvidia\"], [p, w]],\n [\n /(playstation [345portablevi]+)/i\n // Playstation\n ],\n [_, [d, Se], [p, w]],\n [\n /\\b(xbox(?: one)?(?!; xbox))[\\); ]/i\n // Microsoft Xbox\n ],\n [_, [d, J], [p, w]],\n [\n ///////////////////\n // SMARTTVS\n ///////////////////\n /smart-tv.+(samsung)/i\n // Samsung\n ],\n [d, [p, z]],\n [\n /hbbtv.+maple;(\\d+)/i\n ],\n [[_, /^/, \"SmartTV\"], [d, he], [p, z]],\n [\n /(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i\n // LG SmartTV\n ],\n [[d, we], [p, z]],\n [\n /(apple) ?tv/i\n // Apple TV\n ],\n [d, [_, Ae + \" TV\"], [p, z]],\n [\n /crkey/i\n // Google Chromecast\n ],\n [[_, je + \"cast\"], [d, ie], [p, z]],\n [\n /droid.+aft(\\w)( bui|\\))/i\n // Fire TV\n ],\n [_, [d, ve], [p, z]],\n [\n /\\(dtv[\\);].+(aquos)/i,\n /(aquos-tv[\\w ]+)\\)/i\n // Sharp\n ],\n [_, [d, re], [p, z]],\n [\n /(bravia[\\w ]+)( bui|\\))/i\n // Sony\n ],\n [_, [d, Se], [p, z]],\n [\n /(mitv-\\w{5}) bui/i\n // Xiaomi\n ],\n [_, [d, Pe], [p, z]],\n [\n /\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i,\n // Roku\n /hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w ]*; *(\\w[^;]*);([^;]*)/i\n // HbbTV devices\n ],\n [[d, k], [_, k], [p, z]],\n [\n /\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i\n // SmartTV from Unidentified Vendors\n ],\n [[p, z]],\n [\n ///////////////////\n // WEARABLES\n ///////////////////\n /((pebble))app/i\n // Pebble\n ],\n [d, _, [p, W]],\n [\n /droid.+; (glass) \\d/i\n // Google Glass\n ],\n [_, [d, ie], [p, W]],\n [\n /droid.+; (wt63?0{2,3})\\)/i\n ],\n [_, [d, Xe], [p, W]],\n [\n /(quest( 2)?)/i\n // Oculus Quest\n ],\n [_, [d, Oe], [p, W]],\n [\n ///////////////////\n // EMBEDDED\n ///////////////////\n /(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i\n // Tesla\n ],\n [d, [p, fe]],\n [\n ////////////////////\n // MIXED (GENERIC)\n ///////////////////\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i\n // Android Phones from Unidentified Vendors\n ],\n [_, [p, S]],\n [\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i\n // Android Tablets from Unidentified Vendors\n ],\n [_, [p, R]],\n [\n /\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i\n // Unidentifiable Tablet\n ],\n [[p, R]],\n [\n /(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i\n // Unidentifiable Mobile\n ],\n [[p, S]],\n [\n /(android[-\\w\\. ]{0,9});.+buil/i\n // Generic Android Device\n ],\n [_, [d, \"Generic\"]]\n ],\n engine: [\n [\n /windows.+ edge\\/([\\w\\.]+)/i\n // EdgeHTML\n ],\n [u, [m, ke + \"HTML\"]],\n [\n /webkit\\/537\\.36.+chrome\\/(?!27)([\\w\\.]+)/i\n // Blink\n ],\n [u, [m, \"Blink\"]],\n [\n /(presto)\\/([\\w\\.]+)/i,\n // Presto\n /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\/([\\w\\.]+)/i,\n // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna\n /ekioh(flow)\\/([\\w\\.]+)/i,\n // Flow\n /(khtml|tasman|links)[\\/ ]\\(?([\\w\\.]+)/i,\n // KHTML/Tasman/Links\n /(icab)[\\/ ]([23]\\.[\\d\\.]+)/i\n // iCab\n ],\n [m, u],\n [\n /rv\\:([\\w\\.]{1,9})\\b.+(gecko)/i\n // Gecko\n ],\n [u, m]\n ],\n os: [\n [\n // Windows\n /microsoft (windows) (vista|xp)/i\n // Windows (iTunes)\n ],\n [m, u],\n [\n /(windows) nt 6\\.2; (arm)/i,\n // Windows RT\n /(windows (?:phone(?: os)?|mobile))[\\/ ]?([\\d\\.\\w ]*)/i,\n // Windows Phone\n /(windows)[\\/ ]?([ntce\\d\\. ]+\\w)(?!.+xbox)/i\n ],\n [m, [u, I, ne]],\n [\n /(win(?=3|9|n)|win 9x )([nt\\d\\.]+)/i\n ],\n [[m, \"Windows\"], [u, I, ne]],\n [\n // iOS/macOS\n /ip[honead]{2,4}\\b(?:.*os ([\\w]+) like mac|; opera)/i,\n // iOS\n /cfnetwork\\/.+darwin/i\n ],\n [[u, /_/g, \".\"], [m, \"iOS\"]],\n [\n /(mac os x) ?([\\w\\. ]*)/i,\n /(macintosh|mac_powerpc\\b)(?!.+haiku)/i\n // Mac OS\n ],\n [[m, \"Mac OS\"], [u, /_/g, \".\"]],\n [\n // Mobile OSes\n /droid ([\\w\\.]+)\\b.+(android[- ]x86|harmonyos)/i\n // Android-x86/HarmonyOS\n ],\n [u, m],\n [\n // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS\n /(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\/ ]?([\\w\\.]*)/i,\n /(blackberry)\\w*\\/([\\w\\.]*)/i,\n // Blackberry\n /(tizen|kaios)[\\/ ]([\\w\\.]+)/i,\n // Tizen/KaiOS\n /\\((series40);/i\n // Series 40\n ],\n [m, u],\n [\n /\\(bb(10);/i\n // BlackBerry 10\n ],\n [u, [m, Me]],\n [\n /(?:symbian ?os|symbos|s60(?=;)|series60)[-\\/ ]?([\\w\\.]*)/i\n // Symbian\n ],\n [u, [m, \"Symbian\"]],\n [\n /mozilla\\/[\\d\\.]+ \\((?:mobile|tablet|tv|mobile; [\\w ]+); rv:.+ gecko\\/([\\w\\.]+)/i\n // Firefox OS\n ],\n [u, [m, H + \" OS\"]],\n [\n /web0s;.+rt(tv)/i,\n /\\b(?:hp)?wos(?:browser)?\\/([\\w\\.]+)/i\n // WebOS\n ],\n [u, [m, \"webOS\"]],\n [\n // Google Chromecast\n /crkey\\/([\\d\\.]+)/i\n // Google Chromecast\n ],\n [u, [m, je + \"cast\"]],\n [\n /(cros) [\\w]+ ([\\w\\.]+\\w)/i\n // Chromium OS\n ],\n [[m, \"Chromium OS\"], u],\n [\n // Console\n /(nintendo|playstation) ([wids345portablevuch]+)/i,\n // Nintendo/Playstation\n /(xbox); +xbox ([^\\);]+)/i,\n // Microsoft Xbox (360, One, X, S, Series X, Series S)\n // Other\n /\\b(joli|palm)\\b ?(?:os)?\\/?([\\w\\.]*)/i,\n // Joli/Palm\n /(mint)[\\/\\(\\) ]?(\\w*)/i,\n // Mint\n /(mageia|vectorlinux)[; ]/i,\n // Mageia/VectorLinux\n /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\/ ]?(?!chrom|package)([-\\w\\.]*)/i,\n // Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire\n /(hurd|linux) ?([\\w\\.]*)/i,\n // Hurd/Linux\n /(gnu) ?([\\w\\.]*)/i,\n // GNU\n /\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\/ ]?(?!amd|[ix346]{1,2}86)([\\w\\.]*)/i,\n // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly\n /(haiku) (\\w+)/i\n // Haiku\n ],\n [m, u],\n [\n /(sunos) ?([\\w\\.\\d]*)/i\n // Solaris\n ],\n [[m, \"Solaris\"], u],\n [\n /((?:open)?solaris)[-\\/ ]?([\\w\\.]*)/i,\n // Solaris\n /(aix) ((\\d)(?=\\.|\\)| )[\\w\\.])*/i,\n // AIX\n /\\b(beos|os\\/2|amigaos|morphos|openvms|fuchsia|hp-ux)/i,\n // BeOS/OS2/AmigaOS/MorphOS/OpenVMS/Fuchsia/HP-UX\n /(unix) ?([\\w\\.]*)/i\n // UNIX\n ],\n [m, u]\n ]\n }, te = function(K, Z) {\n if (typeof K === x && (Z = K, K = r), !(this instanceof te))\n return new te(K, Z).getResult();\n var Y = K || (typeof i !== C && i.navigator && i.navigator.userAgent ? i.navigator.userAgent : l), _e = Z ? st(oe, Z) : oe;\n return this.getBrowser = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.browser), ee.major = G(ee.version), ee;\n }, this.getCPU = function() {\n var ee = {};\n return ee[U] = r, F.call(ee, Y, _e.cpu), ee;\n }, this.getDevice = function() {\n var ee = {};\n return ee[d] = r, ee[_] = r, ee[p] = r, F.call(ee, Y, _e.device), ee;\n }, this.getEngine = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.engine), ee;\n }, this.getOS = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.os), ee;\n }, this.getResult = function() {\n return {\n ua: this.getUA(),\n browser: this.getBrowser(),\n engine: this.getEngine(),\n os: this.getOS(),\n device: this.getDevice(),\n cpu: this.getCPU()\n };\n }, this.getUA = function() {\n return Y;\n }, this.setUA = function(ee) {\n return Y = typeof ee === g && ee.length > q ? k(ee, q) : ee, this;\n }, this.setUA(Y), this;\n };\n te.VERSION = o, te.BROWSER = ze([m, u, D]), te.CPU = ze([U]), te.DEVICE = ze([_, d, p, w, S, z, R, W, fe]), te.ENGINE = te.OS = ze([m, u]), t.exports && (e = t.exports = te), e.UAParser = te;\n var Ee = typeof i !== C && (i.jQuery || i.Zepto);\n if (Ee && !Ee.ua) {\n var xe = new te();\n Ee.ua = xe.getResult(), Ee.ua.get = function() {\n return xe.getUA();\n }, Ee.ua.set = function(K) {\n xe.setUA(K);\n var Z = xe.getResult();\n for (var Y in Z)\n Ee.ua[Y] = Z[Y];\n };\n }\n })(typeof window == \"object\" ? window : HE);\n})($E, tc);\nconst WE = tc;\nfunction GE() {\n const t = new o0();\n Rt.level(t.read(\"kwai-player-log\"));\n}\nlet lo = 0;\nfunction KE() {\n return lo = lo ? lo + 1 : Date.now(), `c-${lo}`;\n}\nconst c0 = new WE(), ic = c0.getOS().name;\nic && ic.toLowerCase().indexOf(\"android\") >= 0;\nic && ic.toLowerCase().indexOf(\"ios\") >= 0;\nc0.getDevice().type;\nGE();\nconst Pt = \"vue2\", qE = [\n ge.LOADSTART,\n ge.PROGRESS,\n ge.SUSPEND,\n ge.ABORT,\n ge.ERROR,\n ge.EMPTIED,\n ge.STALLED,\n ge.LOADEDMETADATA,\n ge.LOADEDDATA,\n ge.CANPLAY,\n ge.CANPLAYTHROUGH,\n ge.PLAYING,\n ge.WAITING,\n ge.SEEKING,\n ge.SEEKED,\n ge.ENDED,\n ge.DURATIONCHANGE,\n ge.TIMEUPDATE,\n ge.PLAY,\n ge.PAUSE,\n ge.RATECHANGE,\n ge.RESIZE,\n ge.VOLUMECHANGE,\n ge.MANIFEST_PARSED,\n ge.LEVEL_SWITCHING,\n ge.LEVEL_SWITCHED,\n ge.LEVEL_SWITCH_PLAYING,\n ge.LEVEL_SWITCH_FAILED,\n ge.AUDIO_TRACKS_SWITCHING,\n ge.AUDIO_TRACKS_SWITCHED,\n ge.FULLSCREEN_CHANGE,\n ge.LEVEL_UPDATED,\n ge.CLICK_NEXT,\n ge.CLICK_PREV,\n ge.CLICK_REGISTER,\n ge.CLICK_LOGIN,\n ge.CLICK_VIP\n], YE = {\n name: \"KwaiPlayerVue2\",\n props: {\n id: {\n type: String,\n default: \"\"\n },\n config: {\n type: Object,\n default() {\n return {};\n }\n },\n plugins: {\n type: Object,\n default() {\n return {};\n }\n },\n src: {\n type: [Object, String],\n default: \"\"\n },\n controls: {\n type: [Boolean, String],\n default: !0\n },\n autoplay: {\n type: [Boolean],\n default: !1\n },\n crossOrigin: {\n type: [String, null],\n default: null\n },\n defaultMuted: {\n type: [Boolean],\n default: !1\n },\n defaultPlaybackRate: {\n type: [Number],\n default: 1\n },\n loop: {\n type: [Boolean],\n default: !1\n },\n muted: {\n type: [Boolean],\n default: !1\n },\n preload: {\n type: [String, void 0],\n default: void 0\n },\n poster: {\n type: [String],\n default: \"\"\n },\n currentTime: {\n type: [Number]\n },\n playbackRate: {\n type: [Number],\n default: 1\n },\n volume: {\n type: [Number],\n default: 1\n },\n disablePictureInPicture: {\n type: [Boolean],\n default: !1\n },\n playsinline: {\n type: [Boolean],\n default: !1\n },\n disableDownload: {\n type: [Boolean],\n default: !0\n },\n disableAdaptive: {\n type: [Boolean],\n default: !0\n },\n disableHotkey: {\n type: [Boolean],\n default: !1\n },\n disableMask: {\n type: [Boolean],\n default: !1\n },\n currentLevel: {\n type: [Number],\n default: 0\n },\n nextLevel: {\n type: [Number],\n default: 0\n },\n audioTrack: {\n type: [Number],\n default: 0\n },\n currentVideoFrame: {\n type: [Number],\n default: 0\n },\n showProgress: {\n type: [Boolean],\n default: !0\n },\n showTime: {\n type: [Boolean],\n default: !0\n },\n prefetch: {\n type: [Boolean],\n default: !0\n },\n showInfoPanel: {\n type: [Boolean],\n default: !1\n },\n productName: {\n type: [String],\n default: \"\"\n },\n previewUrl: {\n type: [String],\n default: \"\"\n },\n maskUrl: {\n type: [String],\n default: \"\"\n },\n disableDanmaku: {\n type: [Boolean]\n },\n danmakuRendering: {\n type: [Boolean],\n default: !0\n },\n bizData: {\n type: [Object]\n }\n },\n data() {\n return {\n player: void 0,\n cid: 0\n };\n },\n watch: {\n config: function(t) {\n Rt.i(Pt, \"call set config\", t), this.player.config = t;\n },\n controls: function(t) {\n Rt.i(Pt, \"call set controls\", t), this.player.controls = t;\n },\n src: function(t) {\n Rt.i(Pt, \"call set src\", t), this.player.src = t;\n },\n autoplay: function(t) {\n Rt.i(Pt, \"call set autoplay\", t), this.player.autoplay = t;\n },\n crossOrigin: function(t) {\n Rt.i(Pt, \"call set crossOrigin\", t), this.player.crossOrigin = t;\n },\n defaultMuted: function(t) {\n Rt.i(Pt, \"call set defaultMuted\", t), this.player.defaultMuted = t;\n },\n defaultPlaybackRate: function(t) {\n Rt.i(Pt, \"call set defaultPlaybackRate\", t), this.player.defaultPlaybackRate = t;\n },\n loop: function(t) {\n Rt.i(Pt, \"call set loop\", t), this.player.loop = t;\n },\n muted: function(t) {\n Rt.i(Pt, \"call set muted\", t), this.player.muted = t;\n },\n preload: function(t) {\n Rt.i(Pt, \"call set preload\", t), this.player.preload = t;\n },\n poster: function(t) {\n Rt.i(Pt, \"call set poster\", t), this.player.poster = t;\n },\n currentTime: function(t) {\n Rt.i(Pt, \"call set currentTime\", t), this.player.currentTime = t;\n },\n playbackRate: function(t) {\n Rt.i(Pt, \"call set playbackRate\", t), this.player.playbackRate = t;\n },\n volume: function(t) {\n Rt.i(Pt, \"call set volume\", t), this.player.volume = t;\n },\n disablePictureInPicture: function(t) {\n Rt.i(Pt, \"call set disablePictureInPicture\", t), this.player.disablePictureInPicture = t;\n },\n playsinline: function(t) {\n Rt.i(Pt, \"call set playsinline\", t), this.player.playsinline = t;\n },\n disableDownload: function(t) {\n Rt.i(Pt, \"call set disableDownload\", t), this.player.disableDownload = t;\n },\n disableAdaptive: function(t) {\n Rt.i(Pt, \"call set disableAdaptive\", t), this.player.disableAdaptive = t;\n },\n disableHotkey: function(t) {\n Rt.i(Pt, \"call set disableHotkey\", t), this.player.disableHotkey = t;\n },\n disableMask: function(t) {\n Rt.i(Pt, \"call set disableMask\", t), this.player.disableMask = t;\n },\n currentLevel: function(t) {\n Rt.i(Pt, \"call set currentLevel\", t), this.player.currentLevel = t;\n },\n nextLevel: function(t) {\n Rt.i(Pt, \"call set nextLevel\", t), this.player.nextLevel = t;\n },\n audioTrack: function(t) {\n Rt.i(Pt, \"call set audioTrack\", t), this.player.audioTrack = t;\n },\n currentVideoFrame: function(t) {\n Rt.i(Pt, \"call set currentVideoFrame\", t), this.player.currentVideoFrame = t;\n },\n showProgress: function(t) {\n Rt.i(Pt, \"call set showProgress\", t), this.player.showProgress = t;\n },\n showTime: function(t) {\n Rt.i(Pt, \"call set showTime\", t), this.player.showTime = t;\n },\n prefetch: function(t) {\n Rt.i(Pt, \"call set prefetch\", t), this.player.prefetch = t;\n },\n showInfoPanel: function(t) {\n Rt.i(Pt, \"call set showInfoPanel\", t), this.player.showInfoPanel = t;\n },\n previewUrl: function(t) {\n Rt.i(Pt, \"call set previewUrl\", t), this.player.previewUrl = t;\n },\n maskUrl: function(t) {\n Rt.i(Pt, \"call set maskUrl\", t), this.player.maskUrl = t;\n },\n disableDanmaku: function(t) {\n Rt.i(Pt, \"call set disableDanmaku\", t), this.player.disableDanmaku = t;\n },\n danmakuRendering: function(t) {\n Rt.i(Pt, \"call set danmakuRendering\", t), this.player.danmakuRendering = t;\n },\n bizData: function(t) {\n this.player.bizData = t;\n }\n },\n methods: {\n load() {\n this.player.load();\n },\n play() {\n return this.player.play();\n },\n pause() {\n this.player.pause();\n },\n destroy() {\n this.player.destroy();\n },\n requestPictureInPicture() {\n return this.player.requestPictureInPicture();\n },\n isFullscreen(t) {\n return this.player.isFullscreen(t);\n },\n requestFullscreen(t) {\n this.player.requestFullscreen(t);\n },\n exitFullscreen(t) {\n this.player.exitFullscreen(t);\n },\n isFullscreenAvailable(t) {\n return this.player.isFullscreenAvailable(t);\n },\n // readonly\n getError() {\n return this.player.error;\n },\n getNetworkState() {\n return this.player.networkState;\n },\n getBuffered() {\n return this.player.buffered;\n },\n getReadyState() {\n return this.player.readyState;\n },\n getSeeking() {\n return this.player.seeking;\n },\n getDuration() {\n return this.player.duration;\n },\n getPaused() {\n return this.player.paused;\n },\n getSeekable() {\n return this.player.seekable;\n },\n getEnded() {\n return this.player.ended;\n },\n getVideoWidth() {\n return this.player.videoWidth;\n },\n getVideoHeight() {\n return this.player.videoHeight;\n },\n getTotalVideoFrames() {\n return this.player.totalVideoFrames;\n },\n //\n setSrc(t) {\n this.player.src = t;\n },\n getSrc() {\n return this.player.src;\n },\n setConfig(t) {\n this.player.config = t;\n },\n getConfig() {\n return this.player.config;\n },\n setCrossOrigin(t) {\n this.player.crossOrigin = t;\n },\n getCrossOrigin() {\n return this.player.crossOrigin;\n },\n setPreload(t) {\n this.preload = t;\n },\n getPreload() {\n return this.player.preload;\n },\n setCurrentTime(t) {\n this.player.currentTime = t;\n },\n getCurrentTime() {\n return this.player.currentTime;\n },\n setDefaultPlaybackRate(t) {\n this.player.defaultPlaybackRate = t;\n },\n getDefaultPlaybackRate() {\n return this.player.defaultPlaybackRate;\n },\n setPlaybackRate(t) {\n this.player.playbackRate = t;\n },\n getPlaybackRate() {\n return this.player.playbackRate;\n },\n setAutoplay(t) {\n this.player.autoplay = t;\n },\n getAutoplay() {\n return this.player.autoplay;\n },\n setLoop(t) {\n this.player.loop = t;\n },\n getLoop() {\n return this.player.loop;\n },\n setControls(t) {\n this.player.controls = t;\n },\n getControls() {\n return this.player.controls;\n },\n setVolume(t) {\n this.player.volume = t;\n },\n getVolume() {\n return this.player.volume;\n },\n setMuted(t) {\n this.player.muted = t;\n },\n getMuted() {\n return this.player.muted;\n },\n setDefaultMuted(t) {\n this.player.defaultMuted = t;\n },\n getDefaultMuted() {\n return this.player.defaultMuted;\n },\n setPoster(t) {\n this.player.poster = t;\n },\n getPoster() {\n return this.player.poster;\n },\n setDisablePictureInPicture(t) {\n this.player.disablePictureInPicture = t;\n },\n getDisablePictureInPicture() {\n return this.player.disablePictureInPicture;\n },\n setPlaysinline(t) {\n this.player.playsinline = t;\n },\n getPlaysinline() {\n return this.player.playsinline;\n },\n setDisableDownload(t) {\n this.player.disableDownload = t;\n },\n getDisableDownload() {\n return this.player.disableDownload;\n },\n setDisableAdaptive(t) {\n this.player.disableAdaptive = t;\n },\n getDisableAdaptive() {\n return this.player.disableAdaptive;\n },\n setDisableHotkey(t) {\n this.player.disableHotkey = t;\n },\n getDisableHotkey() {\n return this.player.disableHotkey;\n },\n setDisableMask(t) {\n this.player.disableMask = t;\n },\n getDisableMask() {\n return this.player.disableMask;\n },\n setCurrentLevel(t) {\n this.player.currentLevel = t;\n },\n getCurrentLevel() {\n return this.player.currentLevel;\n },\n setNextLevel(t) {\n this.player.nextLevel = t;\n },\n getNextLevel() {\n return this.player.nextLevel;\n },\n setAudioTrack(t) {\n this.player.audioTrack = t;\n },\n getAudioTrack() {\n return this.player.audioTrack;\n },\n setCurrentVideoFrame(t) {\n this.player.currentVideoFrame = t;\n },\n getCurrentVideoFrame() {\n return this.player.currentVideoFrame;\n },\n setShowProgress(t) {\n this.player.showProgress = t;\n },\n getShowProgress() {\n return this.player.showProgress;\n },\n setShowTime(t) {\n this.player.showTime = t;\n },\n getShowTime() {\n return this.player.showTime;\n },\n setPrefetch(t) {\n this.player.prefetch = t;\n },\n getPrefetch() {\n return this.player.prefetch;\n },\n setShowInfoPanel(t) {\n this.player.showInfoPanel = t;\n },\n getShowInfoPanel() {\n return this.player.showInfoPanel;\n },\n setProductName(t) {\n this.player.productName = t;\n },\n getProductName() {\n return this.player.productName;\n },\n setPreviewUrl(t) {\n this.player.previewUrl = t;\n },\n getPreviewUrl() {\n return this.player.previewUrl;\n },\n setMaskUrl(t) {\n this.player.maskUrl = t;\n },\n getMaskUrl() {\n return this.player.maskUrl;\n },\n setDisableDanmaku(t) {\n this.player.disableDanmaku = t;\n },\n getDisableDanmaku() {\n return this.player.disableDanmaku;\n },\n setDanmakuRendering(t) {\n this.player.danmakuRendering = t;\n },\n getDanmakuRendering() {\n return this.player.danmakuRendering;\n },\n getVersion() {\n return ci.version;\n },\n getPluginInstance(t) {\n return this.player.getPluginInstance(t);\n }\n },\n created() {\n this.cid = this.id || KE();\n },\n mounted() {\n Rt.i(Pt, \"mounted\");\n const t = this.player = new ci(\"#\" + this.cid, {\n config: this.config,\n src: this.src,\n crossOrigin: this.crossOrigin,\n preload: this.preload,\n defaultPlaybackRate: this.defaultPlaybackRate,\n playbackRate: this.playbackRate,\n autoplay: this.autoplay,\n loop: this.loop,\n controls: this.controls,\n volume: this.volume,\n muted: this.muted,\n defaultMuted: this.defaultMuted,\n poster: this.poster,\n disablePictureInPicture: this.disablePictureInPicture,\n disableDownload: this.disableDownload,\n disableAdaptive: this.disableAdaptive,\n disableHotkey: this.disableHotkey,\n disableMask: this.disableMask,\n playsinline: this.playsinline,\n showProgress: this.showProgress,\n showTime: this.showTime,\n prefetch: this.prefetch,\n showInfoPanel: this.showInfoPanel,\n productName: this.productName,\n previewUrl: this.previewUrl,\n maskUrl: this.maskUrl,\n disableDanmaku: this.disableDanmaku,\n danmakuRendering: this.danmakuRendering,\n plugins: this.plugins,\n bizData: this.bizData\n });\n qE.forEach((e) => {\n t.on(e, (i) => {\n this.$emit(e, i);\n });\n }), t.on(ge.REPORT, (e) => {\n if (e.type === \"mediaInfo\") {\n const i = Object.assign({}, e.value);\n this.$emit(ge.REPORT, {\n type: \"mediaInfo\",\n value: i\n });\n }\n });\n },\n beforeDestroy() {\n this.player.destroy();\n }\n};\nvar XE = function() {\n var t = this, e = t.$createElement, i = t._self._c || e;\n return i(\"div\", {\n attrs: {\n id: t.cid\n }\n }, [t._t(\"watermark\")], 2);\n}, ZE = [];\nfunction QE(t, e, i, r, o, l, v, E) {\n var C = typeof t == \"function\" ? t.options : t;\n e && (C.render = e, C.staticRenderFns = i, C._compiled = !0), r && (C.functional = !0), l && (C._scopeId = \"data-v-\" + l);\n var x;\n if (v ? (x = function(_) {\n _ = _ || // cached call\n this.$vnode && this.$vnode.ssrContext || // stateful\n this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext, !_ && typeof __VUE_SSR_CONTEXT__ < \"u\" && (_ = __VUE_SSR_CONTEXT__), o && o.call(this, _), _ && _._registeredComponents && _._registeredComponents.add(v);\n }, C._ssrRegister = x) : o && (x = E ? function() {\n o.call(\n this,\n (C.functional ? this.parent : this).$root.$options.shadowRoot\n );\n } : o), x)\n if (C.functional) {\n C._injectStyles = x;\n var g = C.render;\n C.render = function(_, m) {\n return x.call(m), g(_, m);\n };\n } else {\n var D = C.beforeCreate;\n C.beforeCreate = D ? [].concat(D, x) : [x];\n }\n return {\n exports: t,\n options: C\n };\n}\nconst Bh = {};\nvar JE = /* @__PURE__ */ QE(\n YE,\n XE,\n ZE,\n !1,\n ew,\n null,\n null,\n null\n);\nfunction ew(t) {\n for (let e in Bh)\n this[e] = Bh[e];\n}\nconst E6 = /* @__PURE__ */ function() {\n return JE.exports;\n}();\n(function() {\n try {\n if (typeof document < \"u\") {\n var t = document.createElement(\"style\");\n t.appendChild(document.createTextNode(\"._watermark-video-fit_1h6i8_1{position:absolute;display:block}._watermark-fill-fit_1h6i8_6{position:absolute;display:block;top:0;left:0;width:100%;height:100%}._watermark_1h6i8_1{position:absolute;top:0;left:0;width:100%;height:100%}\")), document.head.appendChild(t);\n }\n } catch (e) {\n console.error(\"vite-plugin-css-injected-by-js\", e);\n }\n})();\nvar tw = Object.defineProperty, iw = (t, e, i) => e in t ? tw(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, ea = (t, e, i) => (iw(t, typeof e != \"symbol\" ? e + \"\" : e, i), i), l0 = function() {\n if (typeof Map < \"u\")\n return Map;\n function t(e, i) {\n var r = -1;\n return e.some(function(o, l) {\n return o[0] === i ? (r = l, !0) : !1;\n }), r;\n }\n return (\n /** @class */\n function() {\n function e() {\n this.__entries__ = [];\n }\n return Object.defineProperty(e.prototype, \"size\", {\n /**\n * @returns {boolean}\n */\n get: function() {\n return this.__entries__.length;\n },\n enumerable: !0,\n configurable: !0\n }), e.prototype.get = function(i) {\n var r = t(this.__entries__, i), o = this.__entries__[r];\n return o && o[1];\n }, e.prototype.set = function(i, r) {\n var o = t(this.__entries__, i);\n ~o ? this.__entries__[o][1] = r : this.__entries__.push([i, r]);\n }, e.prototype.delete = function(i) {\n var r = this.__entries__, o = t(r, i);\n ~o && r.splice(o, 1);\n }, e.prototype.has = function(i) {\n return !!~t(this.__entries__, i);\n }, e.prototype.clear = function() {\n this.__entries__.splice(0);\n }, e.prototype.forEach = function(i, r) {\n r === void 0 && (r = null);\n for (var o = 0, l = this.__entries__; o < l.length; o++) {\n var v = l[o];\n i.call(r, v[1], v[0]);\n }\n }, e;\n }()\n );\n}(), t_ = typeof window < \"u\" && typeof document < \"u\" && window.document === document, rc = function() {\n return typeof global < \"u\" && global.Math === Math ? global : typeof self < \"u\" && self.Math === Math ? self : typeof window < \"u\" && window.Math === Math ? window : Function(\"return this\")();\n}(), rw = function() {\n return typeof requestAnimationFrame == \"function\" ? requestAnimationFrame.bind(rc) : function(t) {\n return setTimeout(function() {\n return t(Date.now());\n }, 1e3 / 60);\n };\n}(), nw = 2;\nfunction aw(t, e) {\n var i = !1, r = !1, o = 0;\n function l() {\n i && (i = !1, t()), r && E();\n }\n function v() {\n rw(l);\n }\n function E() {\n var C = Date.now();\n if (i) {\n if (C - o < nw)\n return;\n r = !0;\n } else\n i = !0, r = !1, setTimeout(v, e);\n o = C;\n }\n return E;\n}\nvar sw = 20, ow = [\"top\", \"right\", \"bottom\", \"left\", \"width\", \"height\", \"size\", \"weight\"], cw = typeof MutationObserver < \"u\", lw = (\n /** @class */\n function() {\n function t() {\n this.connected_ = !1, this.mutationEventsAdded_ = !1, this.mutationsObserver_ = null, this.observers_ = [], this.onTransitionEnd_ = this.onTransitionEnd_.bind(this), this.refresh = aw(this.refresh.bind(this), sw);\n }\n return t.prototype.addObserver = function(e) {\n ~this.observers_.indexOf(e) || this.observers_.push(e), this.connected_ || this.connect_();\n }, t.prototype.removeObserver = function(e) {\n var i = this.observers_, r = i.indexOf(e);\n ~r && i.splice(r, 1), !i.length && this.connected_ && this.disconnect_();\n }, t.prototype.refresh = function() {\n var e = this.updateObservers_();\n e && this.refresh();\n }, t.prototype.updateObservers_ = function() {\n var e = this.observers_.filter(function(i) {\n return i.gatherActive(), i.hasActive();\n });\n return e.forEach(function(i) {\n return i.broadcastActive();\n }), e.length > 0;\n }, t.prototype.connect_ = function() {\n !t_ || this.connected_ || (document.addEventListener(\"transitionend\", this.onTransitionEnd_), window.addEventListener(\"resize\", this.refresh), cw ? (this.mutationsObserver_ = new MutationObserver(this.refresh), this.mutationsObserver_.observe(document, {\n attributes: !0,\n childList: !0,\n characterData: !0,\n subtree: !0\n })) : (document.addEventListener(\"DOMSubtreeModified\", this.refresh), this.mutationEventsAdded_ = !0), this.connected_ = !0);\n }, t.prototype.disconnect_ = function() {\n !t_ || !this.connected_ || (document.removeEventListener(\"transitionend\", this.onTransitionEnd_), window.removeEventListener(\"resize\", this.refresh), this.mutationsObserver_ && this.mutationsObserver_.disconnect(), this.mutationEventsAdded_ && document.removeEventListener(\"DOMSubtreeModified\", this.refresh), this.mutationsObserver_ = null, this.mutationEventsAdded_ = !1, this.connected_ = !1);\n }, t.prototype.onTransitionEnd_ = function(e) {\n var i = e.propertyName, r = i === void 0 ? \"\" : i, o = ow.some(function(l) {\n return !!~r.indexOf(l);\n });\n o && this.refresh();\n }, t.getInstance = function() {\n return this.instance_ || (this.instance_ = new t()), this.instance_;\n }, t.instance_ = null, t;\n }()\n), u0 = function(t, e) {\n for (var i = 0, r = Object.keys(e); i < r.length; i++) {\n var o = r[i];\n Object.defineProperty(t, o, {\n value: e[o],\n enumerable: !1,\n writable: !1,\n configurable: !0\n });\n }\n return t;\n}, Wa = function(t) {\n var e = t && t.ownerDocument && t.ownerDocument.defaultView;\n return e || rc;\n}, _0 = Qc(0, 0, 0, 0);\nfunction nc(t) {\n return parseFloat(t) || 0;\n}\nfunction Vh(t) {\n for (var e = [], i = 1; i < arguments.length; i++)\n e[i - 1] = arguments[i];\n return e.reduce(function(r, o) {\n var l = t[\"border-\" + o + \"-width\"];\n return r + nc(l);\n }, 0);\n}\nfunction uw(t) {\n for (var e = [\"top\", \"right\", \"bottom\", \"left\"], i = {}, r = 0, o = e; r < o.length; r++) {\n var l = o[r], v = t[\"padding-\" + l];\n i[l] = nc(v);\n }\n return i;\n}\nfunction _w(t) {\n var e = t.getBBox();\n return Qc(0, 0, e.width, e.height);\n}\nfunction dw(t) {\n var e = t.clientWidth, i = t.clientHeight;\n if (!e && !i)\n return _0;\n var r = Wa(t).getComputedStyle(t), o = uw(r), l = o.left + o.right, v = o.top + o.bottom, E = nc(r.width), C = nc(r.height);\n if (r.boxSizing === \"border-box\" && (Math.round(E + l) !== e && (E -= Vh(r, \"left\", \"right\") + l), Math.round(C + v) !== i && (C -= Vh(r, \"top\", \"bottom\") + v)), !fw(t)) {\n var x = Math.round(E + l) - e, g = Math.round(C + v) - i;\n Math.abs(x) !== 1 && (E -= x), Math.abs(g) !== 1 && (C -= g);\n }\n return Qc(o.left, o.top, E, C);\n}\nvar hw = function() {\n return typeof SVGGraphicsElement < \"u\" ? function(t) {\n return t instanceof Wa(t).SVGGraphicsElement;\n } : function(t) {\n return t instanceof Wa(t).SVGElement && typeof t.getBBox == \"function\";\n };\n}();\nfunction fw(t) {\n return t === Wa(t).document.documentElement;\n}\nfunction pw(t) {\n return t_ ? hw(t) ? _w(t) : dw(t) : _0;\n}\nfunction mw(t) {\n var e = t.x, i = t.y, r = t.width, o = t.height, l = typeof DOMRectReadOnly < \"u\" ? DOMRectReadOnly : Object, v = Object.create(l.prototype);\n return u0(v, {\n x: e,\n y: i,\n width: r,\n height: o,\n top: i,\n right: e + r,\n bottom: o + i,\n left: e\n }), v;\n}\nfunction Qc(t, e, i, r) {\n return { x: t, y: e, width: i, height: r };\n}\nvar vw = (\n /** @class */\n function() {\n function t(e) {\n this.broadcastWidth = 0, this.broadcastHeight = 0, this.contentRect_ = Qc(0, 0, 0, 0), this.target = e;\n }\n return t.prototype.isActive = function() {\n var e = pw(this.target);\n return this.contentRect_ = e, e.width !== this.broadcastWidth || e.height !== this.broadcastHeight;\n }, t.prototype.broadcastRect = function() {\n var e = this.contentRect_;\n return this.broadcastWidth = e.width, this.broadcastHeight = e.height, e;\n }, t;\n }()\n), gw = (\n /** @class */\n function() {\n function t(e, i) {\n var r = mw(i);\n u0(this, { target: e, contentRect: r });\n }\n return t;\n }()\n), bw = (\n /** @class */\n function() {\n function t(e, i, r) {\n if (this.activeObservations_ = [], this.observations_ = new l0(), typeof e != \"function\")\n throw new TypeError(\"The callback provided as parameter 1 is not a function.\");\n this.callback_ = e, this.controller_ = i, this.callbackCtx_ = r;\n }\n return t.prototype.observe = function(e) {\n if (!arguments.length)\n throw new TypeError(\"1 argument required, but only 0 present.\");\n if (!(typeof Element > \"u\" || !(Element instanceof Object))) {\n if (!(e instanceof Wa(e).Element))\n throw new TypeError('parameter 1 is not of type \"Element\".');\n var i = this.observations_;\n i.has(e) || (i.set(e, new vw(e)), this.controller_.addObserver(this), this.controller_.refresh());\n }\n }, t.prototype.unobserve = function(e) {\n if (!arguments.length)\n throw new TypeError(\"1 argument required, but only 0 present.\");\n if (!(typeof Element > \"u\" || !(Element instanceof Object))) {\n if (!(e instanceof Wa(e).Element))\n throw new TypeError('parameter 1 is not of type \"Element\".');\n var i = this.observations_;\n i.has(e) && (i.delete(e), i.size || this.controller_.removeObserver(this));\n }\n }, t.prototype.disconnect = function() {\n this.clearActive(), this.observations_.clear(), this.controller_.removeObserver(this);\n }, t.prototype.gatherActive = function() {\n var e = this;\n this.clearActive(), this.observations_.forEach(function(i) {\n i.isActive() && e.activeObservations_.push(i);\n });\n }, t.prototype.broadcastActive = function() {\n if (this.hasActive()) {\n var e = this.callbackCtx_, i = this.activeObservations_.map(function(r) {\n return new gw(r.target, r.broadcastRect());\n });\n this.callback_.call(e, i, e), this.clearActive();\n }\n }, t.prototype.clearActive = function() {\n this.activeObservations_.splice(0);\n }, t.prototype.hasActive = function() {\n return this.activeObservations_.length > 0;\n }, t;\n }()\n), d0 = typeof WeakMap < \"u\" ? /* @__PURE__ */ new WeakMap() : new l0(), h0 = (\n /** @class */\n function() {\n function t(e) {\n if (!(this instanceof t))\n throw new TypeError(\"Cannot call a class as a function.\");\n if (!arguments.length)\n throw new TypeError(\"1 argument required, but only 0 present.\");\n var i = lw.getInstance(), r = new bw(e, i, this);\n d0.set(this, r);\n }\n return t;\n }()\n);\n[\n \"observe\",\n \"unobserve\",\n \"disconnect\"\n].forEach(function(t) {\n h0.prototype[t] = function() {\n var e;\n return (e = d0.get(this))[t].apply(e, arguments);\n };\n});\nvar yw = function() {\n return typeof rc.ResizeObserver < \"u\" ? rc.ResizeObserver : h0;\n}();\nconst Ew = \"_watermark_1h6i8_1\", Fh = {\n \"watermark-video-fit\": \"_watermark-video-fit_1h6i8_1\",\n \"watermark-fill-fit\": \"_watermark-fill-fit_1h6i8_6\",\n watermark: Ew\n}, f0 = class extends Bi {\n constructor() {\n super(...arguments), ea(this, \"_player\"), ea(this, \"_container\"), ea(this, \"_fit\", 0), ea(this, \"_observer\"), ea(this, \"_updateDomPosition\", () => {\n const e = this._player;\n if (this._container && this._fit === 0 && e) {\n this._container.style.display = this._getContainerDisplay();\n const i = e.getVideoLayer(), { width: r, height: o } = i.getBoundingClientRect(), l = e.videoWidth, v = e.videoHeight;\n if (!l || !v)\n return;\n if (l / v > r / o) {\n const E = (o - v / l * r) / 2;\n this._container.style.top = `${E}px`, this._container.style.bottom = `${E}px`, this._container.style.left = \"0\", this._container.style.right = \"0\";\n } else {\n const E = (r - l / v * o) / 2;\n this._container.style.left = `${E}px`, this._container.style.right = `${E}px`, this._container.style.top = \"0\", this._container.style.bottom = \"0\";\n }\n }\n });\n }\n afterInstall(e) {\n var i;\n this._player = e;\n const r = this._player.getMainContainer(), o = r == null ? void 0 : r.querySelector('[kwai-player-watermark=\"\"]');\n o && r && (this._container = this._player.createSubContainer(ja.VIDEO), this._applyClassName(this._container, this._fit), this._container.style.display = this._getContainerDisplay(), (i = this._container) == null || i.appendChild(o), this._observer = new yw(() => {\n this._updateDomPosition();\n }), this._observer.observe(r)), e.on(ge.RESIZE, this._updateDomPosition);\n }\n beforeUninstall(e) {\n this._container && (e == null || e.removeSubContainer(this._container)), e.off(ge.REPORT, this._updateDomPosition), this._player = void 0, this._container = void 0, this._observer && (this._observer.disconnect(), this._observer = void 0);\n }\n getLabel() {\n return f0.label;\n }\n set fit(e) {\n this._fit === 0 && this._container && (this._container.style.top = \"\", this._container.style.bottom = \"\", this._container.style.left = \"\", this._container.style.right = \"\"), this._fit = e, this._container && (this._container.style.display = this._getContainerDisplay(), this._applyClassName(this._container, this._fit)), this._updateDomPosition();\n }\n get get() {\n return this._fit;\n }\n _applyClassName(e, i) {\n i === 0 ? e.className = Fh[\"watermark-video-fit\"] : e.className = Fh[\"watermark-fill-fit\"];\n }\n _getContainerDisplay() {\n var e;\n return !((e = this._player) != null && e.videoWidth) && this._fit === 0 ? \"none\" : \"\";\n }\n};\nlet i_ = f0;\nea(i_, \"version\", \"1.1.0-alpha.0\"), ea(i_, \"label\", \"WaterMarkPlugin\");\nvar ww = Object.defineProperty, Aw = (t, e, i) => e in t ? ww(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, In = (t, e, i) => (Aw(t, typeof e != \"symbol\" ? e + \"\" : e, i), i), _a = typeof globalThis < \"u\" ? globalThis : typeof window < \"u\" ? window : typeof global < \"u\" ? global : typeof self < \"u\" ? self : {};\nfunction Tw(t) {\n if (t.__esModule)\n return t;\n var e = t.default;\n if (typeof e == \"function\") {\n var i = function r() {\n if (this instanceof r) {\n var o = [null];\n o.push.apply(o, arguments);\n var l = Function.bind.apply(e, o);\n return new l();\n }\n return e.apply(this, arguments);\n };\n i.prototype = e.prototype;\n } else\n i = {};\n return Object.defineProperty(i, \"__esModule\", { value: !0 }), Object.keys(t).forEach(function(r) {\n var o = Object.getOwnPropertyDescriptor(t, r);\n Object.defineProperty(i, r, o.get ? o : {\n enumerable: !0,\n get: function() {\n return t[r];\n }\n });\n }), i;\n}\nvar r_ = {}, Sw = {\n get exports() {\n return r_;\n },\n set exports(t) {\n r_ = t;\n }\n};\nfunction xw(t) {\n throw new Error('Could not dynamically require \"' + t + '\". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.');\n}\nvar n_ = {}, Lw = {\n get exports() {\n return n_;\n },\n set exports(t) {\n n_ = t;\n }\n};\nconst Rw = {}, Cw = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n __proto__: null,\n default: Rw\n}, Symbol.toStringTag, { value: \"Module\" })), kw = /* @__PURE__ */ Tw(Cw);\nvar jh;\nfunction Iw() {\n return jh || (jh = 1, function(t, e) {\n (function(i, r) {\n t.exports = r();\n })(_a, function() {\n var i = i || function(r, o) {\n var l;\n if (typeof window < \"u\" && window.crypto && (l = window.crypto), typeof self < \"u\" && self.crypto && (l = self.crypto), typeof globalThis < \"u\" && globalThis.crypto && (l = globalThis.crypto), !l && typeof window < \"u\" && window.msCrypto && (l = window.msCrypto), !l && typeof _a < \"u\" && _a.crypto && (l = _a.crypto), !l && typeof xw == \"function\")\n try {\n l = kw;\n } catch (w) {\n }\n var v = function() {\n if (l) {\n if (typeof l.getRandomValues == \"function\")\n try {\n return l.getRandomValues(new Uint32Array(1))[0];\n } catch (w) {\n }\n if (typeof l.randomBytes == \"function\")\n try {\n return l.randomBytes(4).readInt32LE();\n } catch (w) {\n }\n }\n throw new Error(\"Native crypto module could not be used to get secure random number.\");\n }, E = Object.create || function() {\n function w() {\n }\n return function(S) {\n var R;\n return w.prototype = S, R = new w(), w.prototype = null, R;\n };\n }(), C = {}, x = C.lib = {}, g = x.Base = function() {\n return {\n /**\n * Creates a new object that inherits from this object.\n *\n * @param {Object} overrides Properties to copy into the new object.\n *\n * @return {Object} The new object.\n *\n * @static\n *\n * @example\n *\n * var MyType = CryptoJS.lib.Base.extend({\n * field: 'value',\n *\n * method: function () {\n * }\n * });\n */\n extend: function(w) {\n var S = E(this);\n return w && S.mixIn(w), (!S.hasOwnProperty(\"init\") || this.init === S.init) && (S.init = function() {\n S.$super.init.apply(this, arguments);\n }), S.init.prototype = S, S.$super = this, S;\n },\n /**\n * Extends this object and runs the init method.\n * Arguments to create() will be passed to init().\n *\n * @return {Object} The new object.\n *\n * @static\n *\n * @example\n *\n * var instance = MyType.create();\n */\n create: function() {\n var w = this.extend();\n return w.init.apply(w, arguments), w;\n },\n /**\n * Initializes a newly created object.\n * Override this method to add some logic when your objects are created.\n *\n * @example\n *\n * var MyType = CryptoJS.lib.Base.extend({\n * init: function () {\n * // ...\n * }\n * });\n */\n init: function() {\n },\n /**\n * Copies properties into this object.\n *\n * @param {Object} properties The properties to mix in.\n *\n * @example\n *\n * MyType.mixIn({\n * field: 'value'\n * });\n */\n mixIn: function(w) {\n for (var S in w)\n w.hasOwnProperty(S) && (this[S] = w[S]);\n w.hasOwnProperty(\"toString\") && (this.toString = w.toString);\n },\n /**\n * Creates a copy of this object.\n *\n * @return {Object} The clone.\n *\n * @example\n *\n * var clone = instance.clone();\n */\n clone: function() {\n return this.init.prototype.extend(this);\n }\n };\n }(), D = x.WordArray = g.extend({\n /**\n * Initializes a newly created word array.\n *\n * @param {Array} words (Optional) An array of 32-bit words.\n * @param {number} sigBytes (Optional) The number of significant bytes in the words.\n *\n * @example\n *\n * var wordArray = CryptoJS.lib.WordArray.create();\n * var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607]);\n * var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607], 6);\n */\n init: function(w, S) {\n w = this.words = w || [], S != o ? this.sigBytes = S : this.sigBytes = w.length * 4;\n },\n /**\n * Converts this word array to a string.\n *\n * @param {Encoder} encoder (Optional) The encoding strategy to use. Default: CryptoJS.enc.Hex\n *\n * @return {string} The stringified word array.\n *\n * @example\n *\n * var string = wordArray + '';\n * var string = wordArray.toString();\n * var string = wordArray.toString(CryptoJS.enc.Utf8);\n */\n toString: function(w) {\n return (w || m).stringify(this);\n },\n /**\n * Concatenates a word array to this word array.\n *\n * @param {WordArray} wordArray The word array to append.\n *\n * @return {WordArray} This word array.\n *\n * @example\n *\n * wordArray1.concat(wordArray2);\n */\n concat: function(w) {\n var S = this.words, R = w.words, z = this.sigBytes, W = w.sigBytes;\n if (this.clamp(), z % 4)\n for (var fe = 0; fe < W; fe++) {\n var q = R[fe >>> 2] >>> 24 - fe % 4 * 8 & 255;\n S[z + fe >>> 2] |= q << 24 - (z + fe) % 4 * 8;\n }\n else\n for (var ve = 0; ve < W; ve += 4)\n S[z + ve >>> 2] = R[ve >>> 2];\n return this.sigBytes += W, this;\n },\n /**\n * Removes insignificant bits.\n *\n * @example\n *\n * wordArray.clamp();\n */\n clamp: function() {\n var w = this.words, S = this.sigBytes;\n w[S >>> 2] &= 4294967295 << 32 - S % 4 * 8, w.length = r.ceil(S / 4);\n },\n /**\n * Creates a copy of this word array.\n *\n * @return {WordArray} The clone.\n *\n * @example\n *\n * var clone = wordArray.clone();\n */\n clone: function() {\n var w = g.clone.call(this);\n return w.words = this.words.slice(0), w;\n },\n /**\n * Creates a word array filled with random bytes.\n *\n * @param {number} nBytes The number of random bytes to generate.\n *\n * @return {WordArray} The random word array.\n *\n * @static\n *\n * @example\n *\n * var wordArray = CryptoJS.lib.WordArray.random(16);\n */\n random: function(w) {\n for (var S = [], R = 0; R < w; R += 4)\n S.push(v());\n return new D.init(S, w);\n }\n }), _ = C.enc = {}, m = _.Hex = {\n /**\n * Converts a word array to a hex string.\n *\n * @param {WordArray} wordArray The word array.\n *\n * @return {string} The hex string.\n *\n * @static\n *\n * @example\n *\n * var hexString = CryptoJS.enc.Hex.stringify(wordArray);\n */\n stringify: function(w) {\n for (var S = w.words, R = w.sigBytes, z = [], W = 0; W < R; W++) {\n var fe = S[W >>> 2] >>> 24 - W % 4 * 8 & 255;\n z.push((fe >>> 4).toString(16)), z.push((fe & 15).toString(16));\n }\n return z.join(\"\");\n },\n /**\n * Converts a hex string to a word array.\n *\n * @param {string} hexStr The hex string.\n *\n * @return {WordArray} The word array.\n *\n * @static\n *\n * @example\n *\n * var wordArray = CryptoJS.enc.Hex.parse(hexString);\n */\n parse: function(w) {\n for (var S = w.length, R = [], z = 0; z < S; z += 2)\n R[z >>> 3] |= parseInt(w.substr(z, 2), 16) << 24 - z % 8 * 4;\n return new D.init(R, S / 2);\n }\n }, p = _.Latin1 = {\n /**\n * Converts a word array to a Latin1 string.\n *\n * @param {WordArray} wordArray The word array.\n *\n * @return {string} The Latin1 string.\n *\n * @static\n *\n * @example\n *\n * var latin1String = CryptoJS.enc.Latin1.stringify(wordArray);\n */\n stringify: function(w) {\n for (var S = w.words, R = w.sigBytes, z = [], W = 0; W < R; W++) {\n var fe = S[W >>> 2] >>> 24 - W % 4 * 8 & 255;\n z.push(String.fromCharCode(fe));\n }\n return z.join(\"\");\n },\n /**\n * Converts a Latin1 string to a word array.\n *\n * @param {string} latin1Str The Latin1 string.\n *\n * @return {WordArray} The word array.\n *\n * @static\n *\n * @example\n *\n * var wordArray = CryptoJS.enc.Latin1.parse(latin1String);\n */\n parse: function(w) {\n for (var S = w.length, R = [], z = 0; z < S; z++)\n R[z >>> 2] |= (w.charCodeAt(z) & 255) << 24 - z % 4 * 8;\n return new D.init(R, S);\n }\n }, d = _.Utf8 = {\n /**\n * Converts a word array to a UTF-8 string.\n *\n * @param {WordArray} wordArray The word array.\n *\n * @return {string} The UTF-8 string.\n *\n * @static\n *\n * @example\n *\n * var utf8String = CryptoJS.enc.Utf8.stringify(wordArray);\n */\n stringify: function(w) {\n try {\n return decodeURIComponent(escape(p.stringify(w)));\n } catch (S) {\n throw new Error(\"Malformed UTF-8 data\");\n }\n },\n /**\n * Converts a UTF-8 string to a word array.\n *\n * @param {string} utf8Str The UTF-8 string.\n *\n * @return {WordArray} The word array.\n *\n * @static\n *\n * @example\n *\n * var wordArray = CryptoJS.enc.Utf8.parse(utf8String);\n */\n parse: function(w) {\n return p.parse(unescape(encodeURIComponent(w)));\n }\n }, u = x.BufferedBlockAlgorithm = g.extend({\n /**\n * Resets this block algorithm's data buffer to its initial state.\n *\n * @example\n *\n * bufferedBlockAlgorithm.reset();\n */\n reset: function() {\n this._data = new D.init(), this._nDataBytes = 0;\n },\n /**\n * Adds new data to this block algorithm's buffer.\n *\n * @param {WordArray|string} data The data to append. Strings are converted to a WordArray using UTF-8.\n *\n * @example\n *\n * bufferedBlockAlgorithm._append('data');\n * bufferedBlockAlgorithm._append(wordArray);\n */\n _append: function(w) {\n typeof w == \"string\" && (w = d.parse(w)), this._data.concat(w), this._nDataBytes += w.sigBytes;\n },\n /**\n * Processes available data blocks.\n *\n * This method invokes _doProcessBlock(offset), which must be implemented by a concrete subtype.\n *\n * @param {boolean} doFlush Whether all blocks and partial blocks should be processed.\n *\n * @return {WordArray} The processed data.\n *\n * @example\n *\n * var processedData = bufferedBlockAlgorithm._process();\n * var processedData = bufferedBlockAlgorithm._process(!!'flush');\n */\n _process: function(w) {\n var S, R = this._data, z = R.words, W = R.sigBytes, fe = this.blockSize, q = fe * 4, ve = W / q;\n w ? ve = r.ceil(ve) : ve = r.max((ve | 0) - this._minBufferSize, 0);\n var Ae = ve * fe, P = r.min(Ae * 4, W);\n if (Ae) {\n for (var Me = 0; Me < Ae; Me += fe)\n this._doProcessBlock(z, Me);\n S = z.splice(0, Ae), R.sigBytes -= P;\n }\n return new D.init(S, P);\n },\n /**\n * Creates a copy of this object.\n *\n * @return {Object} The clone.\n *\n * @example\n *\n * var clone = bufferedBlockAlgorithm.clone();\n */\n clone: function() {\n var w = g.clone.call(this);\n return w._data = this._data.clone(), w;\n },\n _minBufferSize: 0\n });\n x.Hasher = u.extend({\n /**\n * Configuration options.\n */\n cfg: g.extend(),\n /**\n * Initializes a newly created hasher.\n *\n * @param {Object} cfg (Optional) The configuration options to use for this hash computation.\n *\n * @example\n *\n * var hasher = CryptoJS.algo.SHA256.create();\n */\n init: function(w) {\n this.cfg = this.cfg.extend(w), this.reset();\n },\n /**\n * Resets this hasher to its initial state.\n *\n * @example\n *\n * hasher.reset();\n */\n reset: function() {\n u.reset.call(this), this._doReset();\n },\n /**\n * Updates this hasher with a message.\n *\n * @param {WordArray|string} messageUpdate The message to append.\n *\n * @return {Hasher} This hasher.\n *\n * @example\n *\n * hasher.update('message');\n * hasher.update(wordArray);\n */\n update: function(w) {\n return this._append(w), this._process(), this;\n },\n /**\n * Finalizes the hash computation.\n * Note that the finalize operation is effectively a destructive, read-once operation.\n *\n * @param {WordArray|string} messageUpdate (Optional) A final message update.\n *\n * @return {WordArray} The hash.\n *\n * @example\n *\n * var hash = hasher.finalize();\n * var hash = hasher.finalize('message');\n * var hash = hasher.finalize(wordArray);\n */\n finalize: function(w) {\n w && this._append(w);\n var S = this._doFinalize();\n return S;\n },\n blockSize: 16,\n /**\n * Creates a shortcut function to a hasher's object interface.\n *\n * @param {Hasher} hasher The hasher to create a helper for.\n *\n * @return {Function} The shortcut function.\n *\n * @static\n *\n * @example\n *\n * var SHA256 = CryptoJS.lib.Hasher._createHelper(CryptoJS.algo.SHA256);\n */\n _createHelper: function(w) {\n return function(S, R) {\n return new w.init(R).finalize(S);\n };\n },\n /**\n * Creates a shortcut function to the HMAC's object interface.\n *\n * @param {Hasher} hasher The hasher to use in this HMAC helper.\n *\n * @return {Function} The shortcut function.\n *\n * @static\n *\n * @example\n *\n * var HmacSHA256 = CryptoJS.lib.Hasher._createHmacHelper(CryptoJS.algo.SHA256);\n */\n _createHmacHelper: function(w) {\n return function(S, R) {\n return new U.HMAC.init(w, R).finalize(S);\n };\n }\n });\n var U = C.algo = {};\n return C;\n }(Math);\n return i;\n });\n }(Lw)), n_;\n}\n(function(t, e) {\n (function(i, r) {\n t.exports = r(Iw());\n })(_a, function(i) {\n return function(r) {\n var o = i, l = o.lib, v = l.WordArray, E = l.Hasher, C = o.algo, x = [];\n (function() {\n for (var d = 0; d < 64; d++)\n x[d] = r.abs(r.sin(d + 1)) * 4294967296 | 0;\n })();\n var g = C.MD5 = E.extend({\n _doReset: function() {\n this._hash = new v.init([\n 1732584193,\n 4023233417,\n 2562383102,\n 271733878\n ]);\n },\n _doProcessBlock: function(d, u) {\n for (var U = 0; U < 16; U++) {\n var w = u + U, S = d[w];\n d[w] = (S << 8 | S >>> 24) & 16711935 | (S << 24 | S >>> 8) & 4278255360;\n }\n var R = this._hash.words, z = d[u + 0], W = d[u + 1], fe = d[u + 2], q = d[u + 3], ve = d[u + 4], Ae = d[u + 5], P = d[u + 6], Me = d[u + 7], Ie = d[u + 8], je = d[u + 9], ke = d[u + 10], H = d[u + 11], ie = d[u + 12], ye = d[u + 13], we = d[u + 14], J = d[u + 15], le = R[0], me = R[1], he = R[2], re = R[3];\n le = D(le, me, he, re, z, 7, x[0]), re = D(re, le, me, he, W, 12, x[1]), he = D(he, re, le, me, fe, 17, x[2]), me = D(me, he, re, le, q, 22, x[3]), le = D(le, me, he, re, ve, 7, x[4]), re = D(re, le, me, he, Ae, 12, x[5]), he = D(he, re, le, me, P, 17, x[6]), me = D(me, he, re, le, Me, 22, x[7]), le = D(le, me, he, re, Ie, 7, x[8]), re = D(re, le, me, he, je, 12, x[9]), he = D(he, re, le, me, ke, 17, x[10]), me = D(me, he, re, le, H, 22, x[11]), le = D(le, me, he, re, ie, 7, x[12]), re = D(re, le, me, he, ye, 12, x[13]), he = D(he, re, le, me, we, 17, x[14]), me = D(me, he, re, le, J, 22, x[15]), le = _(le, me, he, re, W, 5, x[16]), re = _(re, le, me, he, P, 9, x[17]), he = _(he, re, le, me, H, 14, x[18]), me = _(me, he, re, le, z, 20, x[19]), le = _(le, me, he, re, Ae, 5, x[20]), re = _(re, le, me, he, ke, 9, x[21]), he = _(he, re, le, me, J, 14, x[22]), me = _(me, he, re, le, ve, 20, x[23]), le = _(le, me, he, re, je, 5, x[24]), re = _(re, le, me, he, we, 9, x[25]), he = _(he, re, le, me, q, 14, x[26]), me = _(me, he, re, le, Ie, 20, x[27]), le = _(le, me, he, re, ye, 5, x[28]), re = _(re, le, me, he, fe, 9, x[29]), he = _(he, re, le, me, Me, 14, x[30]), me = _(me, he, re, le, ie, 20, x[31]), le = m(le, me, he, re, Ae, 4, x[32]), re = m(re, le, me, he, Ie, 11, x[33]), he = m(he, re, le, me, H, 16, x[34]), me = m(me, he, re, le, we, 23, x[35]), le = m(le, me, he, re, W, 4, x[36]), re = m(re, le, me, he, ve, 11, x[37]), he = m(he, re, le, me, Me, 16, x[38]), me = m(me, he, re, le, ke, 23, x[39]), le = m(le, me, he, re, ye, 4, x[40]), re = m(re, le, me, he, z, 11, x[41]), he = m(he, re, le, me, q, 16, x[42]), me = m(me, he, re, le, P, 23, x[43]), le = m(le, me, he, re, je, 4, x[44]), re = m(re, le, me, he, ie, 11, x[45]), he = m(he, re, le, me, J, 16, x[46]), me = m(me, he, re, le, fe, 23, x[47]), le = p(le, me, he, re, z, 6, x[48]), re = p(re, le, me, he, Me, 10, x[49]), he = p(he, re, le, me, we, 15, x[50]), me = p(me, he, re, le, Ae, 21, x[51]), le = p(le, me, he, re, ie, 6, x[52]), re = p(re, le, me, he, q, 10, x[53]), he = p(he, re, le, me, ke, 15, x[54]), me = p(me, he, re, le, W, 21, x[55]), le = p(le, me, he, re, Ie, 6, x[56]), re = p(re, le, me, he, J, 10, x[57]), he = p(he, re, le, me, P, 15, x[58]), me = p(me, he, re, le, ye, 21, x[59]), le = p(le, me, he, re, ve, 6, x[60]), re = p(re, le, me, he, H, 10, x[61]), he = p(he, re, le, me, fe, 15, x[62]), me = p(me, he, re, le, je, 21, x[63]), R[0] = R[0] + le | 0, R[1] = R[1] + me | 0, R[2] = R[2] + he | 0, R[3] = R[3] + re | 0;\n },\n _doFinalize: function() {\n var d = this._data, u = d.words, U = this._nDataBytes * 8, w = d.sigBytes * 8;\n u[w >>> 5] |= 128 << 24 - w % 32;\n var S = r.floor(U / 4294967296), R = U;\n u[(w + 64 >>> 9 << 4) + 15] = (S << 8 | S >>> 24) & 16711935 | (S << 24 | S >>> 8) & 4278255360, u[(w + 64 >>> 9 << 4) + 14] = (R << 8 | R >>> 24) & 16711935 | (R << 24 | R >>> 8) & 4278255360, d.sigBytes = (u.length + 1) * 4, this._process();\n for (var z = this._hash, W = z.words, fe = 0; fe < 4; fe++) {\n var q = W[fe];\n W[fe] = (q << 8 | q >>> 24) & 16711935 | (q << 24 | q >>> 8) & 4278255360;\n }\n return z;\n },\n clone: function() {\n var d = E.clone.call(this);\n return d._hash = this._hash.clone(), d;\n }\n });\n function D(d, u, U, w, S, R, z) {\n var W = d + (u & U | ~u & w) + S + z;\n return (W << R | W >>> 32 - R) + u;\n }\n function _(d, u, U, w, S, R, z) {\n var W = d + (u & w | U & ~w) + S + z;\n return (W << R | W >>> 32 - R) + u;\n }\n function m(d, u, U, w, S, R, z) {\n var W = d + (u ^ U ^ w) + S + z;\n return (W << R | W >>> 32 - R) + u;\n }\n function p(d, u, U, w, S, R, z) {\n var W = d + (U ^ (u | ~w)) + S + z;\n return (W << R | W >>> 32 - R) + u;\n }\n o.MD5 = E._createHelper(g), o.HmacMD5 = E._createHmacHelper(g);\n }(Math), i.MD5;\n });\n})(Sw);\nvar Dw = function(t, e) {\n if (e = e.split(\":\")[0], t = +t, !t)\n return !1;\n switch (e) {\n case \"http\":\n case \"ws\":\n return t !== 80;\n case \"https\":\n case \"wss\":\n return t !== 443;\n case \"ftp\":\n return t !== 21;\n case \"gopher\":\n return t !== 70;\n case \"file\":\n return !1;\n }\n return t !== 0;\n}, ld = {}, Ow = Object.prototype.hasOwnProperty, Nw;\nfunction zh(t) {\n try {\n return decodeURIComponent(t.replace(/\\+/g, \" \"));\n } catch (e) {\n return null;\n }\n}\nfunction Hh(t) {\n try {\n return encodeURIComponent(t);\n } catch (e) {\n return null;\n }\n}\nfunction Pw(t) {\n for (var e = /([^=?#&]+)=?([^&]*)/g, i = {}, r; r = e.exec(t); ) {\n var o = zh(r[1]), l = zh(r[2]);\n o === null || l === null || o in i || (i[o] = l);\n }\n return i;\n}\nfunction Mw(t, e) {\n e = e || \"\";\n var i = [], r, o;\n typeof e != \"string\" && (e = \"?\");\n for (o in t)\n if (Ow.call(t, o)) {\n if (r = t[o], !r && (r === null || r === Nw || isNaN(r)) && (r = \"\"), o = Hh(o), r = Hh(r), o === null || r === null)\n continue;\n i.push(o + \"=\" + r);\n }\n return i.length ? e + i.join(\"&\") : \"\";\n}\nld.stringify = Mw;\nld.parse = Pw;\nvar p0 = Dw, Jc = ld, Uw = /^[\\x00-\\x20\\u00a0\\u1680\\u2000-\\u200a\\u2028\\u2029\\u202f\\u205f\\u3000\\ufeff]+/, m0 = /[\\n\\r\\t]/g, Bw = /^[A-Za-z][A-Za-z0-9+-.]*:\\/\\//, v0 = /:\\d+$/, Vw = /^([a-z][a-z0-9.+-]*:)?(\\/\\/)?([\\\\/]+)?([\\S\\s]*)/i, Fw = /^[a-zA-Z]:/;\nfunction ud(t) {\n return (t || \"\").toString().replace(Uw, \"\");\n}\nvar a_ = [\n [\"#\", \"hash\"],\n // Extract from the back.\n [\"?\", \"query\"],\n // Extract from the back.\n function(t, e) {\n return Yr(e.protocol) ? t.replace(/\\\\/g, \"/\") : t;\n },\n [\"/\", \"pathname\"],\n // Extract from the back.\n [\"@\", \"auth\", 1],\n // Extract from the front.\n [NaN, \"host\", void 0, 1, 1],\n // Set left over value.\n [/:(\\d*)$/, \"port\", void 0, 1],\n // RegExp the back.\n [NaN, \"hostname\", void 0, 1, 1]\n // Set left over.\n], $h = { hash: 1, query: 1 };\nfunction g0(t) {\n var e;\n typeof window < \"u\" ? e = window : typeof _a < \"u\" ? e = _a : typeof self < \"u\" ? e = self : e = {};\n var i = e.location || {};\n t = t || i;\n var r = {}, o = typeof t, l;\n if (t.protocol === \"blob:\")\n r = new Qr(unescape(t.pathname), {});\n else if (o === \"string\") {\n r = new Qr(t, {});\n for (l in $h)\n delete r[l];\n } else if (o === \"object\") {\n for (l in t)\n l in $h || (r[l] = t[l]);\n r.slashes === void 0 && (r.slashes = Bw.test(t.href));\n }\n return r;\n}\nfunction Yr(t) {\n return t === \"file:\" || t === \"ftp:\" || t === \"http:\" || t === \"https:\" || t === \"ws:\" || t === \"wss:\";\n}\nfunction b0(t, e) {\n t = ud(t), t = t.replace(m0, \"\"), e = e || {};\n var i = Vw.exec(t), r = i[1] ? i[1].toLowerCase() : \"\", o = !!i[2], l = !!i[3], v = 0, E;\n return o ? l ? (E = i[2] + i[3] + i[4], v = i[2].length + i[3].length) : (E = i[2] + i[4], v = i[2].length) : l ? (E = i[3] + i[4], v = i[3].length) : E = i[4], r === \"file:\" ? v >= 2 && (E = E.slice(2)) : Yr(r) ? E = i[4] : r ? o && (E = E.slice(2)) : v >= 2 && Yr(e.protocol) && (E = i[4]), {\n protocol: r,\n slashes: o || Yr(r),\n slashesCount: v,\n rest: E\n };\n}\nfunction jw(t, e) {\n if (t === \"\")\n return e;\n for (var i = (e || \"/\").split(\"/\").slice(0, -1).concat(t.split(\"/\")), r = i.length, o = i[r - 1], l = !1, v = 0; r--; )\n i[r] === \".\" ? i.splice(r, 1) : i[r] === \"..\" ? (i.splice(r, 1), v++) : v && (r === 0 && (l = !0), i.splice(r, 1), v--);\n return l && i.unshift(\"\"), (o === \".\" || o === \"..\") && i.push(\"\"), i.join(\"/\");\n}\nfunction Qr(t, e, i) {\n if (t = ud(t), t = t.replace(m0, \"\"), !(this instanceof Qr))\n return new Qr(t, e, i);\n var r, o, l, v, E, C, x = a_.slice(), g = typeof e, D = this, _ = 0;\n for (g !== \"object\" && g !== \"string\" && (i = e, e = null), i && typeof i != \"function\" && (i = Jc.parse), e = g0(e), o = b0(t || \"\", e), r = !o.protocol && !o.slashes, D.slashes = o.slashes || r && e.slashes, D.protocol = o.protocol || e.protocol || \"\", t = o.rest, (o.protocol === \"file:\" && (o.slashesCount !== 2 || Fw.test(t)) || !o.slashes && (o.protocol || o.slashesCount < 2 || !Yr(D.protocol))) && (x[3] = [/(.*)/, \"pathname\"]); _ < x.length; _++) {\n if (v = x[_], typeof v == \"function\") {\n t = v(t, D);\n continue;\n }\n l = v[0], C = v[1], l !== l ? D[C] = t : typeof l == \"string\" ? (E = l === \"@\" ? t.lastIndexOf(l) : t.indexOf(l), ~E && (typeof v[2] == \"number\" ? (D[C] = t.slice(0, E), t = t.slice(E + v[2])) : (D[C] = t.slice(E), t = t.slice(0, E)))) : (E = l.exec(t)) && (D[C] = E[1], t = t.slice(0, E.index)), D[C] = D[C] || r && v[3] && e[C] || \"\", v[4] && (D[C] = D[C].toLowerCase());\n }\n i && (D.query = i(D.query)), r && e.slashes && D.pathname.charAt(0) !== \"/\" && (D.pathname !== \"\" || e.pathname !== \"\") && (D.pathname = jw(D.pathname, e.pathname)), D.pathname.charAt(0) !== \"/\" && Yr(D.protocol) && (D.pathname = \"/\" + D.pathname), p0(D.port, D.protocol) || (D.host = D.hostname, D.port = \"\"), D.username = D.password = \"\", D.auth && (E = D.auth.indexOf(\":\"), ~E ? (D.username = D.auth.slice(0, E), D.username = encodeURIComponent(decodeURIComponent(D.username)), D.password = D.auth.slice(E + 1), D.password = encodeURIComponent(decodeURIComponent(D.password))) : D.username = encodeURIComponent(decodeURIComponent(D.auth)), D.auth = D.password ? D.username + \":\" + D.password : D.username), D.origin = D.protocol !== \"file:\" && Yr(D.protocol) && D.host ? D.protocol + \"//\" + D.host : \"null\", D.href = D.toString();\n}\nfunction zw(t, e, i) {\n var r = this;\n switch (t) {\n case \"query\":\n typeof e == \"string\" && e.length && (e = (i || Jc.parse)(e)), r[t] = e;\n break;\n case \"port\":\n r[t] = e, p0(e, r.protocol) ? e && (r.host = r.hostname + \":\" + e) : (r.host = r.hostname, r[t] = \"\");\n break;\n case \"hostname\":\n r[t] = e, r.port && (e += \":\" + r.port), r.host = e;\n break;\n case \"host\":\n r[t] = e, v0.test(e) ? (e = e.split(\":\"), r.port = e.pop(), r.hostname = e.join(\":\")) : (r.hostname = e, r.port = \"\");\n break;\n case \"protocol\":\n r.protocol = e.toLowerCase(), r.slashes = !i;\n break;\n case \"pathname\":\n case \"hash\":\n if (e) {\n var o = t === \"pathname\" ? \"/\" : \"#\";\n r[t] = e.charAt(0) !== o ? o + e : e;\n } else\n r[t] = e;\n break;\n case \"username\":\n case \"password\":\n r[t] = encodeURIComponent(e);\n break;\n case \"auth\":\n var l = e.indexOf(\":\");\n ~l ? (r.username = e.slice(0, l), r.username = encodeURIComponent(decodeURIComponent(r.username)), r.password = e.slice(l + 1), r.password = encodeURIComponent(decodeURIComponent(r.password))) : r.username = encodeURIComponent(decodeURIComponent(e));\n }\n for (var v = 0; v < a_.length; v++) {\n var E = a_[v];\n E[4] && (r[E[1]] = r[E[1]].toLowerCase());\n }\n return r.auth = r.password ? r.username + \":\" + r.password : r.username, r.origin = r.protocol !== \"file:\" && Yr(r.protocol) && r.host ? r.protocol + \"//\" + r.host : \"null\", r.href = r.toString(), r;\n}\nfunction Hw(t) {\n (!t || typeof t != \"function\") && (t = Jc.stringify);\n var e, i = this, r = i.host, o = i.protocol;\n o && o.charAt(o.length - 1) !== \":\" && (o += \":\");\n var l = o + (i.protocol && i.slashes || Yr(i.protocol) ? \"//\" : \"\");\n return i.username ? (l += i.username, i.password && (l += \":\" + i.password), l += \"@\") : i.password ? (l += \":\" + i.password, l += \"@\") : i.protocol !== \"file:\" && Yr(i.protocol) && !r && i.pathname !== \"/\" && (l += \"@\"), (r[r.length - 1] === \":\" || v0.test(i.hostname) && !i.port) && (r += \":\"), l += r + i.pathname, e = typeof i.query == \"object\" ? t(i.query) : i.query, e && (l += e.charAt(0) !== \"?\" ? \"?\" + e : e), i.hash && (l += i.hash), l;\n}\nQr.prototype = { set: zw, toString: Hw };\nQr.extractProtocol = b0;\nQr.location = g0;\nQr.trimLeft = ud;\nQr.qs = Jc;\nvar $w = Qr, uo, Ww = new Uint8Array(16);\nfunction Gw() {\n if (!uo && (uo = typeof crypto < \"u\" && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto < \"u\" && typeof msCrypto.getRandomValues == \"function\" && msCrypto.getRandomValues.bind(msCrypto), !uo))\n throw new Error(\"crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported\");\n return uo(Ww);\n}\nconst Kw = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;\nfunction qw(t) {\n return typeof t == \"string\" && Kw.test(t);\n}\nvar Wi = [];\nfor (var ql = 0; ql < 256; ++ql)\n Wi.push((ql + 256).toString(16).substr(1));\nfunction Yw(t) {\n var e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0, i = (Wi[t[e + 0]] + Wi[t[e + 1]] + Wi[t[e + 2]] + Wi[t[e + 3]] + \"-\" + Wi[t[e + 4]] + Wi[t[e + 5]] + \"-\" + Wi[t[e + 6]] + Wi[t[e + 7]] + \"-\" + Wi[t[e + 8]] + Wi[t[e + 9]] + \"-\" + Wi[t[e + 10]] + Wi[t[e + 11]] + Wi[t[e + 12]] + Wi[t[e + 13]] + Wi[t[e + 14]] + Wi[t[e + 15]]).toLowerCase();\n if (!qw(i))\n throw TypeError(\"Stringified UUID is invalid\");\n return i;\n}\nfunction Xw(t, e, i) {\n t = t || {};\n var r = t.random || (t.rng || Gw)();\n if (r[6] = r[6] & 15 | 64, r[8] = r[8] & 63 | 128, e) {\n i = i || 0;\n for (var o = 0; o < 16; ++o)\n e[i + o] = r[o];\n return e;\n }\n return Yw(r);\n}\nconst Zw = {\n \"zappl01.cztv.com\": { key: \"F7nW84dyAfswpyB0\" },\n \"zwebl01.cztv.com\": { key: \"F7nW84dyAfswpyB0\" },\n \"zhfivel01.cztv.com\": { key: \"F7nW84dyAfswpyB0\" },\n \"zappl02.cztv.com\": { key: \"F7nW84dyAfswpyB0\" },\n \"zwebl02.cztv.com\": { key: \"F7nW84dyAfswpyB0\" },\n \"zhfivel02.cztv.com\": { key: \"F7nW84dyAfswpyB0\" }\n}, ls = \"cdn-auth\";\nlet Qw = class {\n constructor() {\n In(this, \"_hashParams\", Zw), In(this, \"_addAuthKey\", (e) => {\n const i = new $w(e, !0), r = this._hashParams[i.host];\n if (r != null && r.key) {\n const o = r.timestamp || Math.floor(Date.now() / 1e3), l = r_(`${i.pathname}-${o}-${r.rand}-${r.uid}-${r.key}`);\n return i.query.auth_key = `${o}-${r.rand}-${r.uid}-${l}`, i.toString();\n } else\n Be.i(ls, `no cdn auth params: ${i.host}`);\n return e;\n });\n }\n registerCDNAuth(e, i) {\n Be.i(ls, \"reg player cdn auth\", i), this._processParams(i), e.setPreprocessURL({\n manifest: this._addAuthKey,\n stream: this._addAuthKey\n });\n }\n updateParams(e) {\n Be.i(ls, \"updateParams\", e), this._processParams(e);\n }\n _processParams(e) {\n e ? (Object.keys(e).forEach((i) => {\n const r = e[i];\n this._hashParams[i] || (this._hashParams[i] = { key: \"\" }), Object.assign(this._hashParams[i], r);\n }), Be.i(ls, \"process options.\", e, this._hashParams)) : Be.i(ls, \"no cdn auth options.authParams, use default params.\"), Object.keys(this._hashParams).forEach((i) => {\n const r = this._hashParams[i];\n r.timestamp = r.timestamp, r.rand = r.rand || Xw().replace(/-/g, \"\"), r.uid = r.uid || 0;\n });\n }\n};\nconst Wh = /\\.m3u8($|\\?)/, Gh = /\\.flv($|\\?)/, on = \"cztv-src-parser\";\nlet Ls = class {\n static verify(e) {\n if (Array.isArray(e))\n e.reduce((i, r) => i && r.src, !0);\n else if (!this._verifyMixCodec(e) && this._verifyCZTVSrc(e))\n return !0;\n return !1;\n }\n static parse(e) {\n if (Be.i(on, \"parse start.\", e), this._verifyCZTVSrc(e))\n return this._parseCZTVSrc(e);\n if (this._verifyMixCodec(e))\n return this._parseMixCodecCZTVSrc(e);\n if (this._verifyMixContainer(e))\n return this._parseMixContainerCZTVSrc(e);\n }\n static _parseMixContainerCZTVSrc(e) {\n Be.i(on, \"parse mix container\");\n const i = [];\n return e.forEach((r) => {\n this._verifyMixCodec(r.src) ? i.push({ src: this._parseMixCodecCZTVSrc(r.src), type: r.type }) : this._verifyCZTVSrc(r.src) && i.push({ src: this._parseCZTVSrc(r.src), type: r.type });\n }), i;\n }\n static _parseMixCodecCZTVSrc(e) {\n Be.i(on, \"parse mix codec\");\n const i = {};\n return e.h264 && (i.h264 = this._parseCZTVSrc(e.h264)), e.hevc && (i.hevc = this._parseCZTVSrc(e.hevc)), e.av1 && (i.av1 = this._parseCZTVSrc(e.av1)), i;\n }\n static _parseCZTVSrc(e) {\n Be.i(on, \"start parse cztv src.\");\n const i = {\n version: \"1.0\",\n mediaType: -1,\n businessType: 1,\n stereoType: e.vr ? 1 : 0,\n adaptationSet: [{\n id: 1,\n duration: (e.duration ? parseInt(e.duration) : 0) || 0,\n representation: []\n }]\n }, r = Object.keys(e.dispatch[0].url[0]);\n return typeof e.dispatch[0].url[0][r[0]] == \"string\" ? this._parseCZTVSrcVod(e.dispatch, i) : this._parseCZTVSrcLive(e.dispatch, i), i;\n }\n static _parseCZTVSrcVod(e, i) {\n Be.i(on, \"parse cztv vod src. map: \", this.QUALITY_MAP), e.forEach((r, o) => {\n const l = [];\n r.url.forEach((g) => {\n Object.keys(g).forEach((D) => {\n const _ = r.weight[D] || 0;\n l.push({ weight: _, url: g[D], key: D });\n });\n }), l.sort((g, D) => D.weight - g.weight);\n const v = l.shift(), E = v ? v.url : \"\";\n Wh.test(E) ? i.mediaType = 1 : Gh.test(E) ? i.mediaType = 3 : i.mediaType = 2;\n const C = (r.vtype ? parseInt(r.vtype) : 0) || 0, x = this.QUALITY_MAP[r.vtype];\n if (x) {\n const g = {\n id: o,\n url: E,\n backupUrl: l.map((D) => D.url),\n maxBitrate: C,\n avgBitrate: C,\n width: r.width,\n height: r.height,\n frameRate: 30,\n qualityType: x ? x.qualityType : \"\",\n qualityLabel: x ? x.qualityLabel : \"\"\n };\n typeof (x == null ? void 0 : x.hdr) == \"number\" && (g.hdrType = x.hdr), i.adaptationSet[0].representation.push(g);\n } else\n Be.i(on, `quality: ${r.vtype} not found`);\n });\n }\n static _parseCZTVSrcLive(e, i) {\n if (Be.i(on, \"parse cztv live src. map: \", this.QUALITY_MAP_LIVE), !e[0] || !e[0].url[0]) {\n Be.i(on, \"parse cztv live src. dispatch format error.\");\n return;\n }\n const r = [];\n e[0].url.forEach((v) => {\n Object.keys(v).forEach((E) => {\n const C = { cdnKey: E, defaultrate: \"\", type: \"\", weight: e[0].weight[E] || 0, urls: [] };\n r.push(C), Object.keys(v[E][0]).forEach((x) => {\n C.urls.push({ url: v[E][0][x], qualityLabel: x });\n }), v[E].forEach((x) => {\n typeof x.defaultrate == \"string\" ? C.defaultrate = x.defaultrate : typeof x.type == \"string\" && (C.type = x.type);\n });\n });\n }), r.sort((v, E) => E.weight - v.weight);\n const o = r.shift();\n if (!o)\n return;\n o.type === \"m3u8\" && (i.mediaType = 1);\n const l = {};\n r.forEach((v) => {\n v.urls.forEach((E) => {\n l[E.qualityLabel] || (l[E.qualityLabel] = []), l[E.qualityLabel].push(E.url);\n });\n }), o.urls.forEach((v, E) => {\n const C = this.QUALITY_MAP_LIVE[v.qualityLabel];\n if (C) {\n const x = v.qualityLabel || \"\", g = C ? C.qualityType : x, D = {\n id: E,\n url: v.url,\n backupUrl: l[x] || [],\n maxBitrate: 0,\n avgBitrate: 0,\n width: 0,\n height: 0,\n frameRate: 0,\n qualityType: g,\n qualityLabel: x\n };\n v.qualityLabel === o.defaultrate && (D.defaultSelect = !0), i.adaptationSet[0].representation.push(D);\n } else\n Be.i(on, `live quality: ${v.qualityLabel} not found`);\n }), i.mediaType < 0 && (Wh.test(i.adaptationSet[0].representation[0].url) ? i.mediaType = 1 : Gh.test(i.adaptationSet[0].representation[0].url) ? i.mediaType = 3 : i.mediaType = 2), i.businessType = 3;\n }\n static _verifyMixContainer(e) {\n return e && Array.isArray(e) && e.length > 0 ? e.reduce((i, r) => i && r.src && (this._verifyCZTVSrc(r.src) || this._verifyMixCodec(r.src)), !0) : !1;\n }\n static _verifyCZTVSrc(e) {\n return e && Array.isArray(e.dispatch) && e.dispatch.length > 0 ? e.dispatch.reduce((i, r) => i && r.url && typeof r.weight == \"object\" && Array.isArray(r.url) && r.url.length, !0) : !1;\n }\n static _verifyMixCodec(e) {\n if (e) {\n let i = e.h264 && this._verifyCZTVSrc(e.h264), r = e.hevc && this._verifyCZTVSrc(e.hevc), o = e.av1 && this._verifyCZTVSrc(e.av1);\n return i || r || o;\n }\n return !1;\n }\n};\nIn(Ls, \"QUALITY_MAP\", {\n 800: { qualityType: \"480p\", qualityLabel: \"标清\" },\n 1200: { qualityType: \"720p\", qualityLabel: \"高清\" },\n 1500: { qualityType: \"1080p\", qualityLabel: \"超清\" },\n 4001: { qualityType: \"4KSDR\", qualityLabel: \"4kSDR\" }\n // '4M': { qualityType: '4KHDR', qualityLabel: '至臻视界', hdr: 1 },\n}), In(Ls, \"QUALITY_MAP_LIVE\", {\n 标清: { qualityType: \"480p\", qualityLabel: \"标清\" },\n 高清: { qualityType: \"720p\", qualityLabel: \"高清\" },\n 超清: { qualityType: \"1080p\", qualityLabel: \"超清\" },\n 蓝光: { qualityType: \"4KSDR\", qualityLabel: \"蓝光\" }\n});\nconst Jw = new RegExp(\"^((http|https)://)|blob:\"), Kh = \"cztv-plugin\", y0 = class extends Bi {\n constructor() {\n super(...arguments), In(this, \"_cdnAuth\", new Qw()), In(this, \"_preprocessSrc\", (e) => {\n if (typeof e == \"string\" && !Jw.test(e))\n try {\n e = JSON.parse(e);\n } catch (r) {\n }\n const i = Ls.parse(e);\n return Be.i(Kh, `preprocessSrc: ${!!i}`, i), i || e;\n });\n }\n getLabel() {\n return y0.label;\n }\n beforeInstall(e, i) {\n Be.i(Kh, \"beforeInstall options\"), (i == null ? void 0 : i.cdnAuth) !== !1 && this._cdnAuth.registerCDNAuth(e, i == null ? void 0 : i.cdnAuthParams), e.setPreprocessSrcFunc(this._preprocessSrc), i != null && i.qualityMapLive && (Ls.QUALITY_MAP_LIVE = i.qualityMapLive), i != null && i.qualityMap && (Ls.QUALITY_MAP = i.qualityMap);\n }\n};\nlet s_ = y0;\nIn(s_, \"label\", \"CZTVPlugin\"), In(s_, \"version\", \"1.1.0-alpha.0\");\n(function() {\n try {\n if (typeof document < \"u\") {\n var t = document.createElement(\"style\");\n t.appendChild(document.createTextNode('._controls_1890m_1{position:absolute;display:flex;flex-direction:column;justify-content:space-between;top:0;left:0;width:100%;height:100%;font-size:16px;font-family:PingFangSC-Semibold,PingFangSC-Regular,sans-serif;line-height:1}._controls_1890m_1 ._large_1890m_14{font-size:18px}._video-area_1890m_18{position:relative;width:100%;height:100%;flex-grow:1}._sending-area_1890m_25{position:relative;width:100%;display:flex;justify-content:space-between;background-color:#191a1f;align-items:center}._sending-area_1890m_25 ._sending-area-controls_1890m_33{width:100%;margin:10px}._panel_1890m_38{position:relative;display:flex;flex-direction:column;justify-content:flex-end;height:100%;width:100%}._panel_1890m_38 ._bottom-controls_1890m_46{position:relative;height:10em;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(180deg,rgba(0,0,0,0),rgb(0,0,0));background-size:auto 10em;transition:opacity .3s ease-in}._button-panel_1890m_57{display:flex;position:relative;margin:.35em 1em .65em;justify-content:space-between}._button-panel-left_1890m_64,._button-panel-right_1890m_65{display:flex;flex-direction:row;align-items:center}._button-panel-center_1890m_71{display:flex;flex-direction:row;flex-grow:1;justify-content:center;align-items:center}._button-panel-center_1890m_71>div{margin:0 .8em;width:100%}._panel-button-margins-left_1890m_83{margin-left:1em}._panel-button-margins-right_1890m_87{margin-right:1em}._panel-button-wrapper_1890m_91{display:flex;align-items:center;justify-content:center;position:relative;line-height:1.9em;min-width:1.9em;height:1.9em;color:#fff;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:pointer;-webkit-tap-highlight-color:transparent}._panel-button-wrapper_1890m_91._disabled_1890m_107,._panel-button-wrapper_1890m_91._disabled_1890m_107:hover{cursor:default}._panel-button-wrapper_1890m_91 ._panel-button_1890m_83{-webkit-tap-highlight-color:transparent;text-align:center}._panel-button-wrapper_1890m_91 ._panel-button-text_1890m_114{font-size:.7em;line-height:1;text-align:center}._panel-button-icon_1890m_120{width:1.9em;height:1.9em}._time-display-wrapper_1890m_125{display:flex;flex-direction:row;color:#d7d7d7;white-space:nowrap;justify-content:space-between;margin:0 1em -.1em}._time-display-wrapper_1890m_125>div{font-size:.8em}._timeline_1890m_137{display:block;margin:0 1em;padding:.5em 0;cursor:pointer}._timeline_1890m_137 ._thumb_1890m_143{opacity:0}._timeline_1890m_137 ._thumb-drag_1890m_146{opacity:1}._segmented-track_1890m_150,._segmented-vertical-track_1890m_151{position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}._segmented-track_1890m_150._disabled_1890m_107,._segmented-vertical-track_1890m_151._disabled_1890m_107{cursor:default}._segmented-vertical-track_1890m_151{height:100%;width:100%}._thumb_1890m_143{position:absolute;top:50%;background:rgb(255,255,255);border-radius:50%;transform:translateY(-50%);transition:opacity .2s ease .2s;width:1.25em;height:1.25em}._thumb-vertical_1890m_179{position:absolute;top:50%;background:rgb(255,255,255);border-radius:50%;transform:translateY(-50%);transition:opacity .2s ease .2s;width:.4em;height:.4em}._thumb-vertical_1890m_179{left:0;right:0;margin:0 auto}._segment-background_1890m_196{height:.25em;border-radius:.2em;background-color:rgba(255,255,255,.5)}._segment-vertical-background_1890m_202{width:.2em;border-radius:.1em;height:100%;margin:0 auto;background-color:#d8d8d8}._segment-highlight-before_1890m_210{position:absolute;height:.25em;border-radius:inherit;background:rgba(255,255,255,.6)}._segment-highlight-after_1890m_217{position:absolute;height:.25em;border-radius:inherit;background:linear-gradient(90deg,#348bff,#34c5ff)}._segment-vertical-highlight-before_1890m_224,._segment-vertical-highlight-after_1890m_225{position:absolute;width:.2em;height:100%;bottom:0;border-radius:.1em;background:linear-gradient(0deg,#348bff,#34c5ff)}._overlay_1890m_234{position:absolute;top:0;left:0;width:100%;height:100%;background:center no-repeat;background-size:contain}._overflow_1890m_244{position:absolute;right:0;bottom:4.5em;z-index:20;max-height:250px;overflow-x:hidden;white-space:nowrap;font-size:.6em;box-shadow:rgba(0,0,0,.4) 0 1px 9px;background:rgba(0,0,0,.9);border-radius:2px;transition:transform .3s ease-out,opacity .2s linear;transform-origin:right bottom;opacity:1;transform:scale(1);color:#fff}._overflow_1890m_244._closed_1890m_262{transform:scale(0);transform-origin:right bottom;opacity:0}._overflow-item_1890m_268{height:40px;padding:0 0 0 18px;display:flex;align-items:center;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}@media (hover: hover){._overflow-item_1890m_268:hover{background-color:#212121}._error-retry_1890m_285:hover{cursor:pointer;background:linear-gradient(90deg,#52d3fd,#1180ff)}._playback-rate_1890m_289:hover{background-color:#353739;border-radius:.2em;color:#1280ff}._timeline_1890m_137:hover ._thumb_1890m_143{opacity:1}}._overflow-icon_1890m_298{width:1.6em;height:1.6em;margin-right:.8em;background-size:contain}._overflow-checkbox_1890m_305{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:.9em;height:.9em;margin:.75em;border:none;outline:none}._overflow-checkbox_1890m_305:checked{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyNCAyNCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMjQgMjQ7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDpub25lO30KCS5zdDF7ZmlsbDojNDI4NUY0O30KPC9zdHlsZT4KPHBhdGggY2xhc3M9InN0MCIgZD0iTTAsMGgyNHYyNEgwVjB6Ii8+CjxwYXRoIGNsYXNzPSJzdDEiIGQ9Ik05LDE2LjJMNC44LDEybC0xLjQsMS40TDksMTlMMjEsN2wtMS40LTEuNEw5LDE2LjJ6Ii8+Cjwvc3ZnPgo=)}._overflow-content_1890m_319{flex-grow:1;display:flex;align-items:center;justify-content:space-between}._loading_1890m_326{position:absolute;left:50%;top:50%;right:0px;bottom:0px;pointer-events:none;overflow:hidden;transform:translate(-50%,-50%);display:flex;justify-content:center;align-items:center;flex-direction:column}._loading_1890m_326 ._loading-animation_1890m_340{display:flex;flex-direction:row}._loading_1890m_326 ._loading-animation_1890m_340 ._loading-wave_1890m_344{width:1em;height:1em;background:linear-gradient(-45deg,#308cfd,#39e3ff);margin:.25em;-webkit-animation:_wave_1890m_1 1s linear infinite;animation:_wave_1890m_1 1s linear infinite;border-radius:50%}._loading_1890m_326 ._loading-animation_1890m_340 ._loading-wave_1890m_344:nth-child(2){-webkit-animation-delay:.1s;animation-delay:.1s}._loading_1890m_326 ._loading-animation_1890m_340 ._loading-wave_1890m_344:nth-child(3){-webkit-animation-delay:.2s;animation-delay:.2s}._loading_1890m_326 ._loading-text_1890m_361{font-size:.8em;color:#fff;text-shadow:0 0 2px rgba(0,0,0,.5)}@-webkit-keyframes _wave_1890m_1{0%{transform:scale(0)}35%{transform:scale(1)}70%{transform:scale(0)}to{transform:scale(0)}}@keyframes _wave_1890m_1{0%{transform:scale(0)}35%{transform:scale(1)}70%{transform:scale(0)}to{transform:scale(0)}}._spinner_1890m_395{-webkit-animation:_container-rotate_1890m_1 1568ms linear infinite;animation:_container-rotate_1890m_1 1568ms linear infinite;height:100%;width:100%}._spinner_1890m_395:after{position:absolute;content:\" \";top:-25%;left:-25%;width:150%;height:150%}._spinner_1890m_395:before{position:absolute;content:\" \";top:2px;left:2px;right:2px;bottom:2px;border-radius:100%}._kwai-layer_1890m_421{width:100%;height:100%;white-space:nowrap;-webkit-animation-name:_fill-unfill-rotate_1890m_1;animation-name:_fill-unfill-rotate_1890m_1;-webkit-animation-duration:5332ms;animation-duration:5332ms;-webkit-animation-timing-function:cubic-bezier(.4,0,.2,1);animation-timing-function:cubic-bezier(.4,0,.2,1);-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}._spinner-mask-1_1890m_435{left:-50%}._spinner-mask-2_1890m_436{right:-50%}._spinner-mask-1_1890m_435,._spinner-mask-2_1890m_436{position:absolute;width:100%;height:200%;top:-50%;overflow:hidden}._context-menu_1890m_478{position:absolute;left:0;top:0;color:#fff;z-index:20;background-color:#202427;border-radius:.3em;padding:.2em}._context-menu-item_1890m_489{cursor:pointer;display:flex;align-items:center;justify-content:space-between;height:2em}._context-menu-item_1890m_489:hover{background-color:#353739;border-radius:.2em;color:#1280ff}._context-menu-label_1890m_502{padding:.4em 1em;white-space:nowrap}._context-menu-label_1890m_502>span{font-size:.7em}._context-menu-checkbox_1890m_510{margin:0 .9em 0 0;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:.9em;height:.9em;cursor:pointer}._context-menu-checkbox_1890m_510:checked{background-image:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB0PSIxNjY2MTczNTA3OTc2IiBjbGFzcz0iaWNvbiIgdmlld0JveD0iMCAwIDEwMjQgMTAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHAtaWQ9IjQ0MjUiIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMjUwIiBoZWlnaHQ9IjI1MCI+PHBhdGggZD0iTTgxNy43MjggMTk4LjcybDExMS43NDQgMTE0LjU2LTU0NS4yMTYgNTMyLjEyOC0yODUuOTItMjczLjAyNCAxMTAuNTI4LTExNS43MTIgMTc0LjE3NiAxNjYuMzM2eiIgcC1pZD0iNDQyNiIgZmlsbD0iI2ZmZmZmZiI+PC9wYXRoPjwvc3ZnPg==);background-size:contain}@-webkit-keyframes _container-rotate_1890m_1{to{transform:rotate(360deg)}}@keyframes _container-rotate_1890m_1{to{transform:rotate(360deg)}}@-webkit-keyframes _fill-unfill-rotate_1890m_1{12.5%{transform:rotate(135deg)}25%{transform:rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5%{transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(945deg)}to{transform:rotate(1080deg)}}@keyframes _fill-unfill-rotate_1890m_1{12.5%{transform:rotate(135deg)}25%{transform:rotate(270deg)}37.5%{transform:rotate(405deg)}50%{transform:rotate(540deg)}62.5%{transform:rotate(675deg)}75%{transform:rotate(810deg)}87.5%{transform:rotate(945deg)}to{transform:rotate(1080deg)}}@-webkit-keyframes _mask-1-spin_1890m_1{0%{transform:rotate(157deg)}50%{transform:rotate(30deg)}to{transform:rotate(157deg)}}@keyframes _mask-1-spin_1890m_1{0%{transform:rotate(157deg)}50%{transform:rotate(30deg)}to{transform:rotate(157deg)}}@-webkit-keyframes _mask-2-spin_1890m_1{0%{transform:rotate(-155deg)}50%{transform:rotate(-30deg)}to{transform:rotate(-155deg)}}@keyframes _mask-2-spin_1890m_1{0%{transform:rotate(-155deg)}50%{transform:rotate(-30deg)}to{transform:rotate(-155deg)}}._error-alert_1890m_630{display:flex;justify-content:center;align-items:center;flex-direction:column;position:absolute;top:0;left:0;width:100%;height:100%;background-color:#000}._error-title_1890m_643{padding:.25em 0 1.1em}._error-title_1890m_643>span{font-size:1.2em;color:#fff}._error-message_1890m_651{padding:.25em 0 1.1em}._error-message_1890m_651>span{font-size:1.2em;color:#585a5b}._error-retry_1890m_285{width:9.7em;height:2.35em;background-color:#333;text-align:center;border-radius:1.15em;display:flex;justify-content:center;align-items:center;z-index:2}._error-retry_1890m_285>span{font-size:.9em;color:#fff;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}._bottom-popup-layer_1890m_679{position:absolute;left:50%;transform:translate(-50%);bottom:1.5em}._panel-playback-list_1890m_686{padding:.2em;margin-bottom:3em;text-align:center;background-color:#202427;border-radius:.3em}._panel-playback-list_1890m_686 ._playback-rate_1890m_289{padding:0 1.3em;height:2em;cursor:pointer;white-space:nowrap;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent}._panel-playback-list_1890m_686 ._playback-rate_1890m_289>div{font-size:.7em}._panel-playback-list_1890m_686 ._level_1890m_706{padding-left:1em;height:2em;cursor:pointer;white-space:nowrap;display:flex;align-items:center;flex-direction:row;-webkit-tap-highlight-color:transparent}._panel-playback-list_1890m_686 ._level_1890m_706:hover{background-color:#353739;border-radius:.2em;color:#1280ff}._panel-playback-list_1890m_686 ._level_1890m_706>div{margin-right:1em}._panel-playback-list_1890m_686 ._level_1890m_706>div>span{text-align:left;font-size:.7em}._panel-volume-wrapper_1890m_729{background-color:#202427;border-radius:.3em;margin-bottom:3em;width:2.15em;height:7em;display:flex;flex-direction:column;align-content:center;justify-content:center;align-items:center;padding:0 0 .55em}._panel-volume-wrapper_1890m_729 ._volume-text_1890m_742{height:2em;line-height:2em}._panel-volume-wrapper_1890m_729 ._volume-text_1890m_742>span{font-size:.7em}._bottom-popup-layer-low-pos_1890m_750{margin-bottom:1.75em}._panel-button-tip_1890m_754{background-color:#202427;border-radius:.3em;position:absolute;left:50%;transform:translate(-50%);bottom:4.5em;white-space:nowrap;padding:.4em .85em;line-height:1.5}._panel-button-tip_1890m_754 ._text_1890m_765{font-size:.7em}._panel-button-tip-low-pos_1890m_769{bottom:3.25em}._tooltip_1890m_773{background-color:#202427;border-radius:.3em;position:absolute;left:14px;font-size:.6em;bottom:6em;white-space:nowrap;padding:6px 12px;line-height:1.5;color:#fff}._preview_1890m_786{width:200px;height:112.5px;position:absolute;left:0;bottom:5.15em;background-color:rgba(0,0,0,.3);border:px solid #fff;display:none;border-radius:.2em;box-shadow:rgba(0,0,0,.5) 0 .1em .2em}._preview_1890m_786 ._preview-time_1890m_799{position:absolute;bottom:.5em;left:0;right:0;text-align:center;font-family:PingFangSC-Regular,sans-serif;font-weight:700;font-size:.5em;color:#fff}')), document.head.appendChild(t);\n }\n } catch (e) {\n console.error(\"vite-plugin-css-injected-by-js\", e);\n }\n})();\nvar eA = Object.defineProperty, tA = (t, e, i) => e in t ? eA(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, pr = (t, e, i) => (tA(t, typeof e != \"symbol\" ? e + \"\" : e, i), i);\nconst iA = \"_controls_1890m_1\", rA = \"_large_1890m_14\", nA = \"_panel_1890m_38\", aA = \"_disabled_1890m_107\", sA = \"_timeline_1890m_137\", oA = \"_thumb_1890m_143\", cA = \"_overlay_1890m_234\", lA = \"_overflow_1890m_244\", uA = \"_closed_1890m_262\", _A = \"_loading_1890m_326\", dA = \"_wave_1890m_1\", hA = \"_spinner_1890m_395\", fA = \"_level_1890m_706\", pA = \"_text_1890m_765\", mA = \"_tooltip_1890m_773\", vA = \"_preview_1890m_786\", Ze = {\n controls: iA,\n large: rA,\n \"video-area\": \"_video-area_1890m_18\",\n \"sending-area\": \"_sending-area_1890m_25\",\n \"sending-area-controls\": \"_sending-area-controls_1890m_33\",\n panel: nA,\n \"bottom-controls\": \"_bottom-controls_1890m_46\",\n \"button-panel\": \"_button-panel_1890m_57\",\n \"button-panel-left\": \"_button-panel-left_1890m_64\",\n \"button-panel-right\": \"_button-panel-right_1890m_65\",\n \"button-panel-center\": \"_button-panel-center_1890m_71\",\n \"panel-button-margins-left\": \"_panel-button-margins-left_1890m_83\",\n \"panel-button-margins-right\": \"_panel-button-margins-right_1890m_87\",\n \"panel-button-wrapper\": \"_panel-button-wrapper_1890m_91\",\n disabled: aA,\n \"panel-button\": \"_panel-button_1890m_83\",\n \"panel-button-text\": \"_panel-button-text_1890m_114\",\n \"panel-button-icon\": \"_panel-button-icon_1890m_120\",\n \"time-display-wrapper\": \"_time-display-wrapper_1890m_125\",\n timeline: sA,\n thumb: oA,\n \"thumb-drag\": \"_thumb-drag_1890m_146\",\n \"segmented-track\": \"_segmented-track_1890m_150\",\n \"segmented-vertical-track\": \"_segmented-vertical-track_1890m_151\",\n \"thumb-vertical\": \"_thumb-vertical_1890m_179\",\n \"segment-background\": \"_segment-background_1890m_196\",\n \"segment-vertical-background\": \"_segment-vertical-background_1890m_202\",\n \"segment-highlight-before\": \"_segment-highlight-before_1890m_210\",\n \"segment-highlight-after\": \"_segment-highlight-after_1890m_217\",\n \"segment-vertical-highlight-before\": \"_segment-vertical-highlight-before_1890m_224\",\n \"segment-vertical-highlight-after\": \"_segment-vertical-highlight-after_1890m_225\",\n overlay: cA,\n overflow: lA,\n closed: uA,\n \"overflow-item\": \"_overflow-item_1890m_268\",\n \"error-retry\": \"_error-retry_1890m_285\",\n \"playback-rate\": \"_playback-rate_1890m_289\",\n \"overflow-icon\": \"_overflow-icon_1890m_298\",\n \"overflow-checkbox\": \"_overflow-checkbox_1890m_305\",\n \"overflow-content\": \"_overflow-content_1890m_319\",\n loading: _A,\n \"loading-animation\": \"_loading-animation_1890m_340\",\n \"loading-wave\": \"_loading-wave_1890m_344\",\n wave: dA,\n \"loading-text\": \"_loading-text_1890m_361\",\n spinner: hA,\n \"container-rotate\": \"_container-rotate_1890m_1\",\n \"kwai-layer\": \"_kwai-layer_1890m_421\",\n \"fill-unfill-rotate\": \"_fill-unfill-rotate_1890m_1\",\n \"spinner-mask-1\": \"_spinner-mask-1_1890m_435\",\n \"spinner-mask-2\": \"_spinner-mask-2_1890m_436\",\n \"context-menu\": \"_context-menu_1890m_478\",\n \"context-menu-item\": \"_context-menu-item_1890m_489\",\n \"context-menu-label\": \"_context-menu-label_1890m_502\",\n \"context-menu-checkbox\": \"_context-menu-checkbox_1890m_510\",\n \"error-alert\": \"_error-alert_1890m_630\",\n \"error-title\": \"_error-title_1890m_643\",\n \"error-message\": \"_error-message_1890m_651\",\n \"bottom-popup-layer\": \"_bottom-popup-layer_1890m_679\",\n \"panel-playback-list\": \"_panel-playback-list_1890m_686\",\n level: fA,\n \"panel-volume-wrapper\": \"_panel-volume-wrapper_1890m_729\",\n \"volume-text\": \"_volume-text_1890m_742\",\n \"bottom-popup-layer-low-pos\": \"_bottom-popup-layer-low-pos_1890m_750\",\n \"panel-button-tip\": \"_panel-button-tip_1890m_754\",\n text: pA,\n \"panel-button-tip-low-pos\": \"_panel-button-tip-low-pos_1890m_769\",\n tooltip: mA,\n preview: vA,\n \"preview-time\": \"_preview-time_1890m_799\",\n \"mask-1-spin\": \"_mask-1-spin_1890m_1\",\n \"mask-2-spin\": \"_mask-2-spin_1890m_1\"\n};\nvar gA = Object.defineProperty, bA = (t, e, i) => e in t ? gA(t, e, {\n enumerable: !0,\n configurable: !0,\n writable: !0,\n value: i\n}) : t[e] = i, ta = (t, e, i) => (bA(t, typeof e != \"symbol\" ? e + \"\" : e, i), i);\nconst Wn = class {\n constructor() {\n ta(this, \"timeout\", 7 * 24 * 3600 * 1e3);\n }\n write(e, i) {\n if (Wn.available)\n try {\n localStorage.setItem(e, JSON.stringify({\n value: i,\n time: Date.now()\n }));\n } catch (r) {\n }\n }\n read(e, i = !0) {\n if (Wn.available)\n try {\n const r = localStorage.getItem(e);\n if (r) {\n const {\n value: o,\n time: l = 0\n } = JSON.parse(r);\n if (!i || Date.now() - l < this.timeout)\n return o;\n }\n } catch (r) {\n }\n }\n static get available() {\n if (typeof Wn._available > \"u\")\n try {\n localStorage.setItem(\"alg\", \"test\"), Wn._available = !0;\n } catch (e) {\n Wn._available = !1;\n }\n return Wn._available;\n }\n};\nlet yA = Wn;\nta(yA, \"_available\");\nconst EA = \"kwai-p\";\nfunction us(t, e) {\n return (!e || e.length === 0) && (e = [t], t = \"\"), t = EA + (t ? \"::\" + t : \"\"), e.unshift(\"[\" + t + \"] > \"), e;\n}\nconst ti = class {\n /**\n * 设置日志输出等级\n * @param l 日志等级\n */\n static level(e) {\n switch (ti.ENABLE_ERROR = ti.ENABLE_WARN = ti.ENABLE_INFO = ti.ENABLE_DEBUG = ti.ENABLE_VERBOSE = !1, e) {\n case \"e\":\n ti.ENABLE_ERROR = !0;\n break;\n case \"w\":\n ti.ENABLE_ERROR = ti.ENABLE_WARN = !0;\n break;\n case \"i\":\n ti.ENABLE_ERROR = ti.ENABLE_WARN = ti.ENABLE_INFO = !0;\n break;\n case \"d\":\n ti.ENABLE_ERROR = ti.ENABLE_WARN = ti.ENABLE_INFO = ti.ENABLE_DEBUG = !0;\n break;\n case \"v\":\n ti.ENABLE_ERROR = ti.ENABLE_WARN = ti.ENABLE_INFO = ti.ENABLE_DEBUG = ti.ENABLE_VERBOSE = !0;\n break;\n }\n }\n /**\n * error日志\n * @param tag tag\n * @param msg 日志信息\n */\n static e(e, ...i) {\n if (!ti.ENABLE_ERROR)\n return;\n const r = us(e, i);\n (console.error || console.warn || console.log).apply(console, r);\n }\n /**\n * warn日志\n * @param tag tag\n * @param msg 日志信息\n */\n static w(e, ...i) {\n if (!ti.ENABLE_WARN)\n return;\n const r = us(e, i);\n (console.warn || console.log).apply(console, r);\n }\n /**\n * info日志\n * @param tag tag\n * @param msg 日志信息\n */\n static i(e, ...i) {\n if (!ti.ENABLE_INFO)\n return;\n const r = us(e, i);\n (console.info || console.log).apply(console, r);\n }\n /**\n * debug日志\n * @param tag tag\n * @param msg 日志信息\n */\n static d(e, ...i) {\n if (!ti.ENABLE_DEBUG)\n return;\n const r = us(e, i);\n (console.debug || console.log).apply(console, r);\n }\n /**\n * verbose日志\n * @param tag tag\n * @param msg 日志信息\n */\n static v(e, ...i) {\n if (!ti.ENABLE_VERBOSE)\n return;\n const r = us(e, i);\n console.log.apply(console, r);\n }\n};\nlet _s = ti;\nta(_s, \"ENABLE_ERROR\", !0), ta(_s, \"ENABLE_WARN\", !1), ta(_s, \"ENABLE_INFO\", !1), ta(_s, \"ENABLE_DEBUG\", !1), ta(_s, \"ENABLE_VERBOSE\", !1);\nvar wA = typeof globalThis < \"u\" ? globalThis : typeof window < \"u\" ? window : typeof global < \"u\" ? global : typeof self < \"u\" ? self : {}, ac = {}, AA = {\n get exports() {\n return ac;\n },\n set exports(t) {\n ac = t;\n }\n};\n(function(t, e) {\n (function(i, r) {\n var o = \"1.0.33\", l = \"\", v = \"?\", E = \"function\", C = \"undefined\", x = \"object\", g = \"string\", D = \"major\", _ = \"model\", m = \"name\", p = \"type\", d = \"vendor\", u = \"version\", U = \"architecture\", w = \"console\", S = \"mobile\", R = \"tablet\", z = \"smarttv\", W = \"wearable\", fe = \"embedded\", q = 350, ve = \"Amazon\", Ae = \"Apple\", P = \"ASUS\", Me = \"BlackBerry\", Ie = \"Browser\", je = \"Chrome\", ke = \"Edge\", H = \"Firefox\", ie = \"Google\", ye = \"Huawei\", we = \"LG\", J = \"Microsoft\", le = \"Motorola\", me = \"Opera\", he = \"Samsung\", re = \"Sharp\", Se = \"Sony\", Pe = \"Xiaomi\", Xe = \"Zebra\", Oe = \"Facebook\", st = function(K, Z) {\n var Y = {};\n for (var _e in K)\n Z[_e] && Z[_e].length % 2 === 0 ? Y[_e] = Z[_e].concat(K[_e]) : Y[_e] = K[_e];\n return Y;\n }, ze = function(K) {\n for (var Z = {}, Y = 0; Y < K.length; Y++)\n Z[K[Y].toUpperCase()] = K[Y];\n return Z;\n }, rt = function(K, Z) {\n return typeof K === g ? Fe(Z).indexOf(Fe(K)) !== -1 : !1;\n }, Fe = function(K) {\n return K.toLowerCase();\n }, G = function(K) {\n return typeof K === g ? K.replace(/[^\\d\\.]/g, l).split(\".\")[0] : r;\n }, k = function(K, Z) {\n if (typeof K === g)\n return K = K.replace(/^\\s\\s*/, l), typeof Z === C ? K : K.substring(0, q);\n }, F = function(K, Z) {\n for (var Y = 0, _e, ee, Ve, ce, qe, Ce; Y < Z.length && !qe; ) {\n var Ye = Z[Y], tt = Z[Y + 1];\n for (_e = ee = 0; _e < Ye.length && !qe; )\n if (qe = Ye[_e++].exec(K), qe)\n for (Ve = 0; Ve < tt.length; Ve++)\n Ce = qe[++ee], ce = tt[Ve], typeof ce === x && ce.length > 0 ? ce.length === 2 ? typeof ce[1] == E ? this[ce[0]] = ce[1].call(this, Ce) : this[ce[0]] = ce[1] : ce.length === 3 ? typeof ce[1] === E && !(ce[1].exec && ce[1].test) ? this[ce[0]] = Ce ? ce[1].call(this, Ce, ce[2]) : r : this[ce[0]] = Ce ? Ce.replace(ce[1], ce[2]) : r : ce.length === 4 && (this[ce[0]] = Ce ? ce[3].call(this, Ce.replace(ce[1], ce[2])) : r) : this[ce] = Ce || r;\n Y += 2;\n }\n }, I = function(K, Z) {\n for (var Y in Z)\n if (typeof Z[Y] === x && Z[Y].length > 0) {\n for (var _e = 0; _e < Z[Y].length; _e++)\n if (rt(Z[Y][_e], K))\n return Y === v ? r : Y;\n } else if (rt(Z[Y], K))\n return Y === v ? r : Y;\n return K;\n }, V = {\n \"1.0\": \"/8\",\n \"1.2\": \"/1\",\n \"1.3\": \"/3\",\n \"2.0\": \"/412\",\n \"2.0.2\": \"/416\",\n \"2.0.3\": \"/417\",\n \"2.0.4\": \"/419\",\n \"?\": \"/\"\n }, ne = {\n ME: \"4.90\",\n \"NT 3.11\": \"NT3.51\",\n \"NT 4.0\": \"NT4.0\",\n 2e3: \"NT 5.0\",\n XP: [\"NT 5.1\", \"NT 5.2\"],\n Vista: \"NT 6.0\",\n 7: \"NT 6.1\",\n 8: \"NT 6.2\",\n \"8.1\": \"NT 6.3\",\n 10: [\"NT 6.4\", \"NT 10.0\"],\n RT: \"ARM\"\n }, oe = {\n browser: [[\n /\\b(?:crmo|crios)\\/([\\w\\.]+)/i\n // Chrome for Android/iOS\n ], [u, [m, \"Chrome\"]], [\n /edg(?:e|ios|a)?\\/([\\w\\.]+)/i\n // Microsoft Edge\n ], [u, [m, \"Edge\"]], [\n // Presto based\n /(opera mini)\\/([-\\w\\.]+)/i,\n // Opera Mini\n /(opera [mobiletab]{3,6})\\b.+version\\/([-\\w\\.]+)/i,\n // Opera Mobi/Tablet\n /(opera)(?:.+version\\/|[\\/ ]+)([\\w\\.]+)/i\n // Opera\n ], [m, u], [\n /opios[\\/ ]+([\\w\\.]+)/i\n // Opera mini on iphone >= 8.0\n ], [u, [m, me + \" Mini\"]], [\n /\\bopr\\/([\\w\\.]+)/i\n // Opera Webkit\n ], [u, [m, me]], [\n // Mixed\n /(kindle)\\/([\\w\\.]+)/i,\n // Kindle\n /(lunascape|maxthon|netfront|jasmine|blazer)[\\/ ]?([\\w\\.]*)/i,\n // Lunascape/Maxthon/Netfront/Jasmine/Blazer\n // Trident based\n /(avant |iemobile|slim)(?:browser)?[\\/ ]?([\\w\\.]*)/i,\n // Avant/IEMobile/SlimBrowser\n /(ba?idubrowser)[\\/ ]?([\\w\\.]+)/i,\n // Baidu Browser\n /(?:ms|\\()(ie) ([\\w\\.]+)/i,\n // Internet Explorer\n // Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon\n /(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale|qqbrowserlite|qq|duckduckgo)\\/([-\\w\\.]+)/i,\n // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ, aka ShouQ\n /(weibo)__([\\d\\.]+)/i\n // Weibo\n ], [m, u], [\n /(?:\\buc? ?browser|(?:juc.+)ucweb)[\\/ ]?([\\w\\.]+)/i\n // UCBrowser\n ], [u, [m, \"UC\" + Ie]], [\n /microm.+\\bqbcore\\/([\\w\\.]+)/i,\n // WeChat Desktop for Windows Built-in Browser\n /\\bqbcore\\/([\\w\\.]+).+microm/i\n ], [u, [m, \"WeChat(Win) Desktop\"]], [\n /micromessenger\\/([\\w\\.]+)/i\n // WeChat\n ], [u, [m, \"WeChat\"]], [\n /konqueror\\/([\\w\\.]+)/i\n // Konqueror\n ], [u, [m, \"Konqueror\"]], [\n /trident.+rv[: ]([\\w\\.]{1,9})\\b.+like gecko/i\n // IE11\n ], [u, [m, \"IE\"]], [\n /yabrowser\\/([\\w\\.]+)/i\n // Yandex\n ], [u, [m, \"Yandex\"]], [\n /(avast|avg)\\/([\\w\\.]+)/i\n // Avast/AVG Secure Browser\n ], [[m, /(.+)/, \"$1 Secure \" + Ie], u], [\n /\\bfocus\\/([\\w\\.]+)/i\n // Firefox Focus\n ], [u, [m, H + \" Focus\"]], [\n /\\bopt\\/([\\w\\.]+)/i\n // Opera Touch\n ], [u, [m, me + \" Touch\"]], [\n /coc_coc\\w+\\/([\\w\\.]+)/i\n // Coc Coc Browser\n ], [u, [m, \"Coc Coc\"]], [\n /dolfin\\/([\\w\\.]+)/i\n // Dolphin\n ], [u, [m, \"Dolphin\"]], [\n /coast\\/([\\w\\.]+)/i\n // Opera Coast\n ], [u, [m, me + \" Coast\"]], [\n /miuibrowser\\/([\\w\\.]+)/i\n // MIUI Browser\n ], [u, [m, \"MIUI \" + Ie]], [\n /fxios\\/([-\\w\\.]+)/i\n // Firefox for iOS\n ], [u, [m, H]], [\n /\\bqihu|(qi?ho?o?|360)browser/i\n // 360\n ], [[m, \"360 \" + Ie]], [/(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i], [[m, /(.+)/, \"$1 \" + Ie], u], [\n // Oculus/Samsung/Sailfish/Huawei Browser\n /(comodo_dragon)\\/([\\w\\.]+)/i\n // Comodo Dragon\n ], [[m, /_/g, \" \"], u], [\n /(electron)\\/([\\w\\.]+) safari/i,\n // Electron-based App\n /(tesla)(?: qtcarbrowser|\\/(20\\d\\d\\.[-\\w\\.]+))/i,\n // Tesla\n /m?(qqbrowser|baiduboxapp|2345Explorer)[\\/ ]?([\\w\\.]+)/i\n // QQBrowser/Baidu App/2345 Browser\n ], [m, u], [\n /(metasr)[\\/ ]?([\\w\\.]+)/i,\n // SouGouBrowser\n /(lbbrowser)/i,\n // LieBao Browser\n /\\[(linkedin)app\\]/i\n // LinkedIn App for iOS & Android\n ], [m], [\n // WebView\n /((?:fban\\/fbios|fb_iab\\/fb4a)(?!.+fbav)|;fbav\\/([\\w\\.]+);)/i\n // Facebook App for iOS & Android\n ], [[m, Oe], u], [\n /safari (line)\\/([\\w\\.]+)/i,\n // Line App for iOS\n /\\b(line)\\/([\\w\\.]+)\\/iab/i,\n // Line App for Android\n /(chromium|instagram)[\\/ ]([-\\w\\.]+)/i\n // Chromium/Instagram\n ], [m, u], [\n /\\bgsa\\/([\\w\\.]+) .*safari\\//i\n // Google Search Appliance on iOS\n ], [u, [m, \"GSA\"]], [\n /headlesschrome(?:\\/([\\w\\.]+)| )/i\n // Chrome Headless\n ], [u, [m, je + \" Headless\"]], [\n / wv\\).+(chrome)\\/([\\w\\.]+)/i\n // Chrome WebView\n ], [[m, je + \" WebView\"], u], [\n /droid.+ version\\/([\\w\\.]+)\\b.+(?:mobile safari|safari)/i\n // Android Browser\n ], [u, [m, \"Android \" + Ie]], [\n /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\/v?([\\w\\.]+)/i\n // Chrome/OmniWeb/Arora/Tizen/Nokia\n ], [m, u], [\n /version\\/([\\w\\.\\,]+) .*mobile\\/\\w+ (safari)/i\n // Mobile Safari\n ], [u, [m, \"Mobile Safari\"]], [\n /version\\/([\\w(\\.|\\,)]+) .*(mobile ?safari|safari)/i\n // Safari & Safari Mobile\n ], [u, m], [\n /webkit.+?(mobile ?safari|safari)(\\/[\\w\\.]+)/i\n // Safari < 3.0\n ], [m, [u, I, V]], [/(webkit|khtml)\\/([\\w\\.]+)/i], [m, u], [\n // Gecko based\n /(navigator|netscape\\d?)\\/([-\\w\\.]+)/i\n // Netscape\n ], [[m, \"Netscape\"], u], [\n /mobile vr; rv:([\\w\\.]+)\\).+firefox/i\n // Firefox Reality\n ], [u, [m, H + \" Reality\"]], [\n /ekiohf.+(flow)\\/([\\w\\.]+)/i,\n // Flow\n /(swiftfox)/i,\n // Swiftfox\n /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\/ ]?([\\w\\.\\+]+)/i,\n // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror/Klar\n /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\/([-\\w\\.]+)$/i,\n // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix\n /(firefox)\\/([\\w\\.]+)/i,\n // Other Firefox-based\n /(mozilla)\\/([\\w\\.]+) .+rv\\:.+gecko\\/\\d+/i,\n // Mozilla\n // Other\n /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\. ]?browser)[-\\/ ]?v?([\\w\\.]+)/i,\n // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Sleipnir/Obigo/Mosaic/Go/ICE/UP.Browser\n /(links) \\(([\\w\\.]+)/i\n // Links\n ], [m, u], [\n /(cobalt)\\/([\\w\\.]+)/i\n // Cobalt\n ], [m, [u, /master.|lts./, \"\"]]],\n cpu: [[\n /(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\)]/i\n // AMD64 (x64)\n ], [[U, \"amd64\"]], [\n /(ia32(?=;))/i\n // IA32 (quicktime)\n ], [[U, Fe]], [\n /((?:i[346]|x)86)[;\\)]/i\n // IA32 (x86)\n ], [[U, \"ia32\"]], [\n /\\b(aarch64|arm(v?8e?l?|_?64))\\b/i\n // ARM64\n ], [[U, \"arm64\"]], [\n /\\b(arm(?:v[67])?ht?n?[fl]p?)\\b/i\n // ARMHF\n ], [[U, \"armhf\"]], [\n // PocketPC mistakenly identified as PowerPC\n /windows (ce|mobile); ppc;/i\n ], [[U, \"arm\"]], [\n /((?:ppc|powerpc)(?:64)?)(?: mac|;|\\))/i\n // PowerPC\n ], [[U, /ower/, l, Fe]], [\n /(sun4\\w)[;\\)]/i\n // SPARC\n ], [[U, \"sparc\"]], [\n /((?:avr32|ia64(?=;))|68k(?=\\))|\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\b|pa-risc)/i\n // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC\n ], [[U, Fe]]],\n device: [[\n //////////////////////////\n // MOBILES & TABLETS\n // Ordered by popularity\n /////////////////////////\n // Samsung\n /\\b(sch-i[89]0\\d|shw-m380s|sm-[ptx]\\w{2,4}|gt-[pn]\\d{2,4}|sgh-t8[56]9|nexus 10)/i\n ], [_, [d, he], [p, R]], [/\\b((?:s[cgp]h|gt|sm)-\\w+|galaxy nexus)/i, /samsung[- ]([-\\w]+)/i, /sec-(sgh\\w+)/i], [_, [d, he], [p, S]], [\n // Apple\n /\\((ip(?:hone|od)[\\w ]*);/i\n // iPod/iPhone\n ], [_, [d, Ae], [p, S]], [\n /\\((ipad);[-\\w\\),; ]+apple/i,\n // iPad\n /applecoremedia\\/[\\w\\.]+ \\((ipad)/i,\n /\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i\n ], [_, [d, Ae], [p, R]], [/(macintosh);/i], [_, [d, Ae]], [\n // Huawei\n /\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i\n ], [_, [d, ye], [p, R]], [/(?:huawei|honor)([-\\w ]+)[;\\)]/i, /\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i], [_, [d, ye], [p, S]], [\n // Xiaomi\n /\\b(poco[\\w ]+)(?: bui|\\))/i,\n // Xiaomi POCO\n /\\b; (\\w+) build\\/hm\\1/i,\n // Xiaomi Hongmi 'numeric' models\n /\\b(hm[-_ ]?note?[_ ]?(?:\\d\\w)?) bui/i,\n // Xiaomi Hongmi\n /\\b(redmi[\\-_ ]?(?:note|k)?[\\w_ ]+)(?: bui|\\))/i,\n // Xiaomi Redmi\n /\\b(mi[-_ ]?(?:a\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\d?\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\))/i\n // Xiaomi Mi\n ], [[_, /_/g, \" \"], [d, Pe], [p, S]], [\n /\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i\n // Mi Pad tablets\n ], [[_, /_/g, \" \"], [d, Pe], [p, R]], [\n // OPPO\n /; (\\w+) bui.+ oppo/i,\n /\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i\n ], [_, [d, \"OPPO\"], [p, S]], [\n // Vivo\n /vivo (\\w+)(?: bui|\\))/i,\n /\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i\n ], [_, [d, \"Vivo\"], [p, S]], [\n // Realme\n /\\b(rmx[12]\\d{3})(?: bui|;|\\))/i\n ], [_, [d, \"Realme\"], [p, S]], [\n // Motorola\n /\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\b[\\w ]+build\\//i,\n /\\bmot(?:orola)?[- ](\\w*)/i,\n /((?:moto[\\w\\(\\) ]+|xt\\d{3,4}|nexus 6)(?= bui|\\)))/i\n ], [_, [d, le], [p, S]], [/\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i], [_, [d, le], [p, R]], [\n // LG\n /((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i\n ], [_, [d, we], [p, R]], [/(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i, /\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i, /\\blg-?([\\d\\w]+) bui/i], [_, [d, we], [p, S]], [\n // Lenovo\n /(ideatab[-\\w ]+)/i,\n /lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i\n ], [_, [d, \"Lenovo\"], [p, R]], [\n // Nokia\n /(?:maemo|nokia).*(n900|lumia \\d+)/i,\n /nokia[-_ ]?([-\\w\\.]*)/i\n ], [[_, /_/g, \" \"], [d, \"Nokia\"], [p, S]], [\n // Google\n /(pixel c)\\b/i\n // Google Pixel C\n ], [_, [d, ie], [p, R]], [\n /droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i\n // Google Pixel\n ], [_, [d, ie], [p, S]], [\n // Sony\n /droid.+ (a?\\d[0-2]{2}so|[c-g]\\d{4}|so[-gl]\\w+|xq-a\\w[4-7][12])(?= bui|\\).+chrome\\/(?![1-6]{0,1}\\d\\.))/i\n ], [_, [d, Se], [p, S]], [/sony tablet [ps]/i, /\\b(?:sony)?sgp\\w+(?: bui|\\))/i], [[_, \"Xperia Tablet\"], [d, Se], [p, R]], [\n // OnePlus\n / (kb2005|in20[12]5|be20[12][59])\\b/i,\n /(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i\n ], [_, [d, \"OnePlus\"], [p, S]], [\n // Amazon\n /(alexa)webm/i,\n /(kf[a-z]{2}wi)( bui|\\))/i,\n // Kindle Fire without Silk\n /(kf[a-z]+)( bui|\\)).+silk\\//i\n // Kindle Fire HD\n ], [_, [d, ve], [p, R]], [\n /((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i\n // Fire Phone\n ], [[_, /(.+)/g, \"Fire Phone $1\"], [d, ve], [p, S]], [\n // BlackBerry\n /(playbook);[-\\w\\),; ]+(rim)/i\n // BlackBerry PlayBook\n ], [_, d, [p, R]], [\n /\\b((?:bb[a-f]|st[hv])100-\\d)/i,\n /\\(bb10; (\\w+)/i\n // BlackBerry 10\n ], [_, [d, Me], [p, S]], [\n // Asus\n /(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i\n ], [_, [d, P], [p, R]], [/ (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i], [_, [d, P], [p, S]], [\n // HTC\n /(nexus 9)/i\n // HTC Nexus 9\n ], [_, [d, \"HTC\"], [p, R]], [\n /(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i,\n // HTC\n // ZTE\n /(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i,\n /(alcatel|geeksphone|nexian|panasonic|sony(?!-bra))[-_ ]?([-\\w]*)/i\n // Alcatel/GeeksPhone/Nexian/Panasonic/Sony\n ], [d, [_, /_/g, \" \"], [p, S]], [\n // Acer\n /droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i\n ], [_, [d, \"Acer\"], [p, R]], [\n // Meizu\n /droid.+; (m[1-5] note) bui/i,\n /\\bmz-([-\\w]{2,})/i\n ], [_, [d, \"Meizu\"], [p, S]], [\n // Sharp\n /\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i\n ], [_, [d, re], [p, S]], [\n // MIXED\n /(blackberry|benq|palm(?=\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\w]*)/i,\n // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron\n /(hp) ([\\w ]+\\w)/i,\n // HP iPAQ\n /(asus)-?(\\w+)/i,\n // Asus\n /(microsoft); (lumia[\\w ]+)/i,\n // Microsoft Lumia\n /(lenovo)[-_ ]?([-\\w]+)/i,\n // Lenovo\n /(jolla)/i,\n // Jolla\n /(oppo) ?([\\w ]+) bui/i\n // OPPO\n ], [d, _, [p, S]], [\n /(archos) (gamepad2?)/i,\n // Archos\n /(hp).+(touchpad(?!.+tablet)|tablet)/i,\n // HP TouchPad\n /(kindle)\\/([\\w\\.]+)/i,\n // Kindle\n /(nook)[\\w ]+build\\/(\\w+)/i,\n // Nook\n /(dell) (strea[kpr\\d ]*[\\dko])/i,\n // Dell Streak\n /(le[- ]+pan)[- ]+(\\w{1,9}) bui/i,\n // Le Pan Tablets\n /(trinity)[- ]*(t\\d{3}) bui/i,\n // Trinity Tablets\n /(gigaset)[- ]+(q\\w{1,9}) bui/i,\n // Gigaset Tablets\n /(vodafone) ([\\w ]+)(?:\\)| bui)/i\n // Vodafone\n ], [d, _, [p, R]], [\n /(surface duo)/i\n // Surface Duo\n ], [_, [d, J], [p, R]], [\n /droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i\n // Fairphone\n ], [_, [d, \"Fairphone\"], [p, S]], [\n /(u304aa)/i\n // AT&T\n ], [_, [d, \"AT&T\"], [p, S]], [\n /\\bsie-(\\w*)/i\n // Siemens\n ], [_, [d, \"Siemens\"], [p, S]], [\n /\\b(rct\\w+) b/i\n // RCA Tablets\n ], [_, [d, \"RCA\"], [p, R]], [\n /\\b(venue[\\d ]{2,7}) b/i\n // Dell Venue Tablets\n ], [_, [d, \"Dell\"], [p, R]], [\n /\\b(q(?:mv|ta)\\w+) b/i\n // Verizon Tablet\n ], [_, [d, \"Verizon\"], [p, R]], [\n /\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i\n // Barnes & Noble Tablet\n ], [_, [d, \"Barnes & Noble\"], [p, R]], [/\\b(tm\\d{3}\\w+) b/i], [_, [d, \"NuVision\"], [p, R]], [\n /\\b(k88) b/i\n // ZTE K Series Tablet\n ], [_, [d, \"ZTE\"], [p, R]], [\n /\\b(nx\\d{3}j) b/i\n // ZTE Nubia\n ], [_, [d, \"ZTE\"], [p, S]], [\n /\\b(gen\\d{3}) b.+49h/i\n // Swiss GEN Mobile\n ], [_, [d, \"Swiss\"], [p, S]], [\n /\\b(zur\\d{3}) b/i\n // Swiss ZUR Tablet\n ], [_, [d, \"Swiss\"], [p, R]], [\n /\\b((zeki)?tb.*\\b) b/i\n // Zeki Tablets\n ], [_, [d, \"Zeki\"], [p, R]], [\n /\\b([yr]\\d{2}) b/i,\n /\\b(dragon[- ]+touch |dt)(\\w{5}) b/i\n // Dragon Touch Tablet\n ], [[d, \"Dragon Touch\"], _, [p, R]], [\n /\\b(ns-?\\w{0,9}) b/i\n // Insignia Tablets\n ], [_, [d, \"Insignia\"], [p, R]], [\n /\\b((nxa|next)-?\\w{0,9}) b/i\n // NextBook Tablets\n ], [_, [d, \"NextBook\"], [p, R]], [\n /\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i\n // Voice Xtreme Phones\n ], [[d, \"Voice\"], _, [p, S]], [\n /\\b(lvtel\\-)?(v1[12]) b/i\n // LvTel Phones\n ], [[d, \"LvTel\"], _, [p, S]], [\n /\\b(ph-1) /i\n // Essential PH-1\n ], [_, [d, \"Essential\"], [p, S]], [\n /\\b(v(100md|700na|7011|917g).*\\b) b/i\n // Envizen Tablets\n ], [_, [d, \"Envizen\"], [p, R]], [\n /\\b(trio[-\\w\\. ]+) b/i\n // MachSpeed Tablets\n ], [_, [d, \"MachSpeed\"], [p, R]], [\n /\\btu_(1491) b/i\n // Rotor Tablets\n ], [_, [d, \"Rotor\"], [p, R]], [\n /(shield[\\w ]+) b/i\n // Nvidia Shield Tablets\n ], [_, [d, \"Nvidia\"], [p, R]], [\n /(sprint) (\\w+)/i\n // Sprint Phones\n ], [d, _, [p, S]], [\n /(kin\\.[onetw]{3})/i\n // Microsoft Kin\n ], [[_, /\\./g, \" \"], [d, J], [p, S]], [\n /droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i\n // Zebra\n ], [_, [d, Xe], [p, R]], [/droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i], [_, [d, Xe], [p, S]], [\n ///////////////////\n // CONSOLES\n ///////////////////\n /(ouya)/i,\n // Ouya\n /(nintendo) ([wids3utch]+)/i\n // Nintendo\n ], [d, _, [p, w]], [\n /droid.+; (shield) bui/i\n // Nvidia\n ], [_, [d, \"Nvidia\"], [p, w]], [\n /(playstation [345portablevi]+)/i\n // Playstation\n ], [_, [d, Se], [p, w]], [\n /\\b(xbox(?: one)?(?!; xbox))[\\); ]/i\n // Microsoft Xbox\n ], [_, [d, J], [p, w]], [\n ///////////////////\n // SMARTTVS\n ///////////////////\n /smart-tv.+(samsung)/i\n // Samsung\n ], [d, [p, z]], [/hbbtv.+maple;(\\d+)/i], [[_, /^/, \"SmartTV\"], [d, he], [p, z]], [\n /(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i\n // LG SmartTV\n ], [[d, we], [p, z]], [\n /(apple) ?tv/i\n // Apple TV\n ], [d, [_, Ae + \" TV\"], [p, z]], [\n /crkey/i\n // Google Chromecast\n ], [[_, je + \"cast\"], [d, ie], [p, z]], [\n /droid.+aft(\\w)( bui|\\))/i\n // Fire TV\n ], [_, [d, ve], [p, z]], [\n /\\(dtv[\\);].+(aquos)/i,\n /(aquos-tv[\\w ]+)\\)/i\n // Sharp\n ], [_, [d, re], [p, z]], [\n /(bravia[\\w ]+)( bui|\\))/i\n // Sony\n ], [_, [d, Se], [p, z]], [\n /(mitv-\\w{5}) bui/i\n // Xiaomi\n ], [_, [d, Pe], [p, z]], [\n /\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i,\n // Roku\n /hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w ]*; *(\\w[^;]*);([^;]*)/i\n // HbbTV devices\n ], [[d, k], [_, k], [p, z]], [\n /\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i\n // SmartTV from Unidentified Vendors\n ], [[p, z]], [\n ///////////////////\n // WEARABLES\n ///////////////////\n /((pebble))app/i\n // Pebble\n ], [d, _, [p, W]], [\n /droid.+; (glass) \\d/i\n // Google Glass\n ], [_, [d, ie], [p, W]], [/droid.+; (wt63?0{2,3})\\)/i], [_, [d, Xe], [p, W]], [\n /(quest( 2)?)/i\n // Oculus Quest\n ], [_, [d, Oe], [p, W]], [\n ///////////////////\n // EMBEDDED\n ///////////////////\n /(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i\n // Tesla\n ], [d, [p, fe]], [\n ////////////////////\n // MIXED (GENERIC)\n ///////////////////\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i\n // Android Phones from Unidentified Vendors\n ], [_, [p, S]], [\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i\n // Android Tablets from Unidentified Vendors\n ], [_, [p, R]], [\n /\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i\n // Unidentifiable Tablet\n ], [[p, R]], [\n /(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i\n // Unidentifiable Mobile\n ], [[p, S]], [\n /(android[-\\w\\. ]{0,9});.+buil/i\n // Generic Android Device\n ], [_, [d, \"Generic\"]]],\n engine: [[\n /windows.+ edge\\/([\\w\\.]+)/i\n // EdgeHTML\n ], [u, [m, ke + \"HTML\"]], [\n /webkit\\/537\\.36.+chrome\\/(?!27)([\\w\\.]+)/i\n // Blink\n ], [u, [m, \"Blink\"]], [\n /(presto)\\/([\\w\\.]+)/i,\n // Presto\n /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\/([\\w\\.]+)/i,\n // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna\n /ekioh(flow)\\/([\\w\\.]+)/i,\n // Flow\n /(khtml|tasman|links)[\\/ ]\\(?([\\w\\.]+)/i,\n // KHTML/Tasman/Links\n /(icab)[\\/ ]([23]\\.[\\d\\.]+)/i\n // iCab\n ], [m, u], [\n /rv\\:([\\w\\.]{1,9})\\b.+(gecko)/i\n // Gecko\n ], [u, m]],\n os: [[\n // Windows\n /microsoft (windows) (vista|xp)/i\n // Windows (iTunes)\n ], [m, u], [\n /(windows) nt 6\\.2; (arm)/i,\n // Windows RT\n /(windows (?:phone(?: os)?|mobile))[\\/ ]?([\\d\\.\\w ]*)/i,\n // Windows Phone\n /(windows)[\\/ ]?([ntce\\d\\. ]+\\w)(?!.+xbox)/i\n ], [m, [u, I, ne]], [/(win(?=3|9|n)|win 9x )([nt\\d\\.]+)/i], [[m, \"Windows\"], [u, I, ne]], [\n // iOS/macOS\n /ip[honead]{2,4}\\b(?:.*os ([\\w]+) like mac|; opera)/i,\n // iOS\n /cfnetwork\\/.+darwin/i\n ], [[u, /_/g, \".\"], [m, \"iOS\"]], [\n /(mac os x) ?([\\w\\. ]*)/i,\n /(macintosh|mac_powerpc\\b)(?!.+haiku)/i\n // Mac OS\n ], [[m, \"Mac OS\"], [u, /_/g, \".\"]], [\n // Mobile OSes\n /droid ([\\w\\.]+)\\b.+(android[- ]x86|harmonyos)/i\n // Android-x86/HarmonyOS\n ], [u, m], [\n // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS\n /(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\/ ]?([\\w\\.]*)/i,\n /(blackberry)\\w*\\/([\\w\\.]*)/i,\n // Blackberry\n /(tizen|kaios)[\\/ ]([\\w\\.]+)/i,\n // Tizen/KaiOS\n /\\((series40);/i\n // Series 40\n ], [m, u], [\n /\\(bb(10);/i\n // BlackBerry 10\n ], [u, [m, Me]], [\n /(?:symbian ?os|symbos|s60(?=;)|series60)[-\\/ ]?([\\w\\.]*)/i\n // Symbian\n ], [u, [m, \"Symbian\"]], [\n /mozilla\\/[\\d\\.]+ \\((?:mobile|tablet|tv|mobile; [\\w ]+); rv:.+ gecko\\/([\\w\\.]+)/i\n // Firefox OS\n ], [u, [m, H + \" OS\"]], [\n /web0s;.+rt(tv)/i,\n /\\b(?:hp)?wos(?:browser)?\\/([\\w\\.]+)/i\n // WebOS\n ], [u, [m, \"webOS\"]], [\n // Google Chromecast\n /crkey\\/([\\d\\.]+)/i\n // Google Chromecast\n ], [u, [m, je + \"cast\"]], [\n /(cros) [\\w]+ ([\\w\\.]+\\w)/i\n // Chromium OS\n ], [[m, \"Chromium OS\"], u], [\n // Console\n /(nintendo|playstation) ([wids345portablevuch]+)/i,\n // Nintendo/Playstation\n /(xbox); +xbox ([^\\);]+)/i,\n // Microsoft Xbox (360, One, X, S, Series X, Series S)\n // Other\n /\\b(joli|palm)\\b ?(?:os)?\\/?([\\w\\.]*)/i,\n // Joli/Palm\n /(mint)[\\/\\(\\) ]?(\\w*)/i,\n // Mint\n /(mageia|vectorlinux)[; ]/i,\n // Mageia/VectorLinux\n /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\/ ]?(?!chrom|package)([-\\w\\.]*)/i,\n // Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire\n /(hurd|linux) ?([\\w\\.]*)/i,\n // Hurd/Linux\n /(gnu) ?([\\w\\.]*)/i,\n // GNU\n /\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\/ ]?(?!amd|[ix346]{1,2}86)([\\w\\.]*)/i,\n // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly\n /(haiku) (\\w+)/i\n // Haiku\n ], [m, u], [\n /(sunos) ?([\\w\\.\\d]*)/i\n // Solaris\n ], [[m, \"Solaris\"], u], [\n /((?:open)?solaris)[-\\/ ]?([\\w\\.]*)/i,\n // Solaris\n /(aix) ((\\d)(?=\\.|\\)| )[\\w\\.])*/i,\n // AIX\n /\\b(beos|os\\/2|amigaos|morphos|openvms|fuchsia|hp-ux)/i,\n // BeOS/OS2/AmigaOS/MorphOS/OpenVMS/Fuchsia/HP-UX\n /(unix) ?([\\w\\.]*)/i\n // UNIX\n ], [m, u]]\n }, te = function(K, Z) {\n if (typeof K === x && (Z = K, K = r), !(this instanceof te))\n return new te(K, Z).getResult();\n var Y = K || (typeof i !== C && i.navigator && i.navigator.userAgent ? i.navigator.userAgent : l), _e = Z ? st(oe, Z) : oe;\n return this.getBrowser = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.browser), ee.major = G(ee.version), ee;\n }, this.getCPU = function() {\n var ee = {};\n return ee[U] = r, F.call(ee, Y, _e.cpu), ee;\n }, this.getDevice = function() {\n var ee = {};\n return ee[d] = r, ee[_] = r, ee[p] = r, F.call(ee, Y, _e.device), ee;\n }, this.getEngine = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.engine), ee;\n }, this.getOS = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.os), ee;\n }, this.getResult = function() {\n return {\n ua: this.getUA(),\n browser: this.getBrowser(),\n engine: this.getEngine(),\n os: this.getOS(),\n device: this.getDevice(),\n cpu: this.getCPU()\n };\n }, this.getUA = function() {\n return Y;\n }, this.setUA = function(ee) {\n return Y = typeof ee === g && ee.length > q ? k(ee, q) : ee, this;\n }, this.setUA(Y), this;\n };\n te.VERSION = o, te.BROWSER = ze([m, u, D]), te.CPU = ze([U]), te.DEVICE = ze([_, d, p, w, S, z, R, W, fe]), te.ENGINE = te.OS = ze([m, u]), t.exports && (e = t.exports = te), e.UAParser = te;\n var Ee = typeof i !== C && (i.jQuery || i.Zepto);\n if (Ee && !Ee.ua) {\n var xe = new te();\n Ee.ua = xe.getResult(), Ee.ua.get = function() {\n return xe.getUA();\n }, Ee.ua.set = function(K) {\n xe.setUA(K);\n var Z = xe.getResult();\n for (var Y in Z)\n Ee.ua[Y] = Z[Y];\n };\n }\n })(typeof window == \"object\" ? window : wA);\n})(AA, ac);\nconst TA = ac, E0 = new TA(), sc = E0.getOS().name, SA = sc && sc.toLowerCase().indexOf(\"android\") >= 0, xA = sc && sc.toLowerCase().indexOf(\"ios\") >= 0, Si = E0.getDevice().type === \"mobile\" || SA || xA;\nfunction Yl(t = 0, e) {\n t = Math.floor(t) || 0;\n let i = 0, r = t % 60;\n if (e === !0 || typeof e > \"u\" && t >= 3600) {\n const o = Math.floor(t / 3600);\n return i = Math.floor(t % 3600 / 60), `${o >= 10 ? o : \"0\" + o}:${i >= 10 ? i : \"0\" + i}:${r >= 10 ? r : \"0\" + r}`;\n } else\n return i = Math.floor(t / 60), `${i >= 10 ? i : \"0\" + i}:${r >= 10 ? r : \"0\" + r}`;\n}\nvar el, ft, w0, ia, qh, A0, o_, oc = {}, T0 = [], LA = /acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\nfunction xn(t, e) {\n for (var i in e)\n t[i] = e[i];\n return t;\n}\nfunction S0(t) {\n var e = t.parentNode;\n e && e.removeChild(t);\n}\nfunction c_(t, e, i) {\n var r, o, l, v = {};\n for (l in e)\n l == \"key\" ? r = e[l] : l == \"ref\" ? o = e[l] : v[l] = e[l];\n if (arguments.length > 2 && (v.children = arguments.length > 3 ? el.call(arguments, 2) : i), typeof t == \"function\" && t.defaultProps != null)\n for (l in t.defaultProps)\n v[l] === void 0 && (v[l] = t.defaultProps[l]);\n return No(t, v, r, o, null);\n}\nfunction No(t, e, i, r, o) {\n var l = { type: t, props: e, key: i, ref: r, __k: null, __: null, __b: 0, __e: null, __d: void 0, __c: null, __h: null, constructor: void 0, __v: o != null ? o : ++w0 };\n return o == null && ft.vnode != null && ft.vnode(l), l;\n}\nfunction hn(t) {\n return t.children;\n}\nfunction dn(t, e) {\n this.props = t, this.context = e;\n}\nfunction Ns(t, e) {\n if (e == null)\n return t.__ ? Ns(t.__, t.__.__k.indexOf(t) + 1) : null;\n for (var i; e < t.__k.length; e++)\n if ((i = t.__k[e]) != null && i.__e != null)\n return i.__e;\n return typeof t.type == \"function\" ? Ns(t) : null;\n}\nfunction x0(t) {\n var e, i;\n if ((t = t.__) != null && t.__c != null) {\n for (t.__e = t.__c.base = null, e = 0; e < t.__k.length; e++)\n if ((i = t.__k[e]) != null && i.__e != null) {\n t.__e = t.__c.base = i.__e;\n break;\n }\n return x0(t);\n }\n}\nfunction Yh(t) {\n (!t.__d && (t.__d = !0) && ia.push(t) && !cc.__r++ || qh !== ft.debounceRendering) && ((qh = ft.debounceRendering) || A0)(cc);\n}\nfunction cc() {\n var t, e, i, r, o, l, v, E;\n for (ia.sort(o_); t = ia.shift(); )\n t.__d && (e = ia.length, r = void 0, o = void 0, v = (l = (i = t).__v).__e, (E = i.__P) && (r = [], (o = xn({}, l)).__v = l.__v + 1, _d(E, l, o, i.__n, E.ownerSVGElement !== void 0, l.__h != null ? [v] : null, r, v != null ? v : Ns(l), l.__h), I0(r, l), l.__e != v && x0(l)), ia.length > e && ia.sort(o_));\n cc.__r = 0;\n}\nfunction L0(t, e, i, r, o, l, v, E, C, x) {\n var g, D, _, m, p, d, u, U = r && r.__k || T0, w = U.length;\n for (i.__k = [], g = 0; g < e.length; g++)\n if ((m = i.__k[g] = (m = e[g]) == null || typeof m == \"boolean\" || typeof m == \"function\" ? null : typeof m == \"string\" || typeof m == \"number\" || typeof m == \"bigint\" ? No(null, m, null, null, m) : Array.isArray(m) ? No(hn, { children: m }, null, null, null) : m.__b > 0 ? No(m.type, m.props, m.key, m.ref ? m.ref : null, m.__v) : m) != null) {\n if (m.__ = i, m.__b = i.__b + 1, (_ = U[g]) === null || _ && m.key == _.key && m.type === _.type)\n U[g] = void 0;\n else\n for (D = 0; D < w; D++) {\n if ((_ = U[D]) && m.key == _.key && m.type === _.type) {\n U[D] = void 0;\n break;\n }\n _ = null;\n }\n _d(t, m, _ = _ || oc, o, l, v, E, C, x), p = m.__e, (D = m.ref) && _.ref != D && (u || (u = []), _.ref && u.push(_.ref, null, m), u.push(D, m.__c || p, m)), p != null ? (d == null && (d = p), typeof m.type == \"function\" && m.__k === _.__k ? m.__d = C = R0(m, C, t) : C = C0(t, m, _, U, p, C), typeof i.type == \"function\" && (i.__d = C)) : C && _.__e == C && C.parentNode != t && (C = Ns(_));\n }\n for (i.__e = d, g = w; g--; )\n U[g] != null && (typeof i.type == \"function\" && U[g].__e != null && U[g].__e == i.__d && (i.__d = k0(r).nextSibling), O0(U[g], U[g]));\n if (u)\n for (g = 0; g < u.length; g++)\n D0(u[g], u[++g], u[++g]);\n}\nfunction R0(t, e, i) {\n for (var r, o = t.__k, l = 0; o && l < o.length; l++)\n (r = o[l]) && (r.__ = t, e = typeof r.type == \"function\" ? R0(r, e, i) : C0(i, r, r, o, r.__e, e));\n return e;\n}\nfunction lc(t, e) {\n return e = e || [], t == null || typeof t == \"boolean\" || (Array.isArray(t) ? t.some(function(i) {\n lc(i, e);\n }) : e.push(t)), e;\n}\nfunction C0(t, e, i, r, o, l) {\n var v, E, C;\n if (e.__d !== void 0)\n v = e.__d, e.__d = void 0;\n else if (i == null || o != l || o.parentNode == null)\n e:\n if (l == null || l.parentNode !== t)\n t.appendChild(o), v = null;\n else {\n for (E = l, C = 0; (E = E.nextSibling) && C < r.length; C += 1)\n if (E == o)\n break e;\n t.insertBefore(o, l), v = l;\n }\n return v !== void 0 ? v : o.nextSibling;\n}\nfunction k0(t) {\n var e, i, r;\n if (t.type == null || typeof t.type == \"string\")\n return t.__e;\n if (t.__k) {\n for (e = t.__k.length - 1; e >= 0; e--)\n if ((i = t.__k[e]) && (r = k0(i)))\n return r;\n }\n return null;\n}\nfunction RA(t, e, i, r, o) {\n var l;\n for (l in i)\n l === \"children\" || l === \"key\" || l in e || uc(t, l, null, i[l], r);\n for (l in e)\n o && typeof e[l] != \"function\" || l === \"children\" || l === \"key\" || l === \"value\" || l === \"checked\" || i[l] === e[l] || uc(t, l, e[l], i[l], r);\n}\nfunction Xh(t, e, i) {\n e[0] === \"-\" ? t.setProperty(e, i != null ? i : \"\") : t[e] = i == null ? \"\" : typeof i != \"number\" || LA.test(e) ? i : i + \"px\";\n}\nfunction uc(t, e, i, r, o) {\n var l;\n e:\n if (e === \"style\")\n if (typeof i == \"string\")\n t.style.cssText = i;\n else {\n if (typeof r == \"string\" && (t.style.cssText = r = \"\"), r)\n for (e in r)\n i && e in i || Xh(t.style, e, \"\");\n if (i)\n for (e in i)\n r && i[e] === r[e] || Xh(t.style, e, i[e]);\n }\n else if (e[0] === \"o\" && e[1] === \"n\")\n l = e !== (e = e.replace(/Capture$/, \"\")), e = e.toLowerCase() in t ? e.toLowerCase().slice(2) : e.slice(2), t.l || (t.l = {}), t.l[e + l] = i, i ? r || t.addEventListener(e, l ? Qh : Zh, l) : t.removeEventListener(e, l ? Qh : Zh, l);\n else if (e !== \"dangerouslySetInnerHTML\") {\n if (o)\n e = e.replace(/xlink(H|:h)/, \"h\").replace(/sName$/, \"s\");\n else if (e !== \"width\" && e !== \"height\" && e !== \"href\" && e !== \"list\" && e !== \"form\" && e !== \"tabIndex\" && e !== \"download\" && e in t)\n try {\n t[e] = i != null ? i : \"\";\n break e;\n } catch (v) {\n }\n typeof i == \"function\" || (i == null || i === !1 && e[4] !== \"-\" ? t.removeAttribute(e) : t.setAttribute(e, i));\n }\n}\nfunction Zh(t) {\n return this.l[t.type + !1](ft.event ? ft.event(t) : t);\n}\nfunction Qh(t) {\n return this.l[t.type + !0](ft.event ? ft.event(t) : t);\n}\nfunction _d(t, e, i, r, o, l, v, E, C) {\n var x, g, D, _, m, p, d, u, U, w, S, R, z, W, fe, q = e.type;\n if (e.constructor !== void 0)\n return null;\n i.__h != null && (C = i.__h, E = e.__e = i.__e, e.__h = null, l = [E]), (x = ft.__b) && x(e);\n try {\n e:\n if (typeof q == \"function\") {\n if (u = e.props, U = (x = q.contextType) && r[x.__c], w = x ? U ? U.props.value : x.__ : r, i.__c ? d = (g = e.__c = i.__c).__ = g.__E : (\"prototype\" in q && q.prototype.render ? e.__c = g = new q(u, w) : (e.__c = g = new dn(u, w), g.constructor = q, g.render = kA), U && U.sub(g), g.props = u, g.state || (g.state = {}), g.context = w, g.__n = r, D = g.__d = !0, g.__h = [], g._sb = []), g.__s == null && (g.__s = g.state), q.getDerivedStateFromProps != null && (g.__s == g.state && (g.__s = xn({}, g.__s)), xn(g.__s, q.getDerivedStateFromProps(u, g.__s))), _ = g.props, m = g.state, g.__v = e, D)\n q.getDerivedStateFromProps == null && g.componentWillMount != null && g.componentWillMount(), g.componentDidMount != null && g.__h.push(g.componentDidMount);\n else {\n if (q.getDerivedStateFromProps == null && u !== _ && g.componentWillReceiveProps != null && g.componentWillReceiveProps(u, w), !g.__e && g.shouldComponentUpdate != null && g.shouldComponentUpdate(u, g.__s, w) === !1 || e.__v === i.__v) {\n for (e.__v !== i.__v && (g.props = u, g.state = g.__s, g.__d = !1), g.__e = !1, e.__e = i.__e, e.__k = i.__k, e.__k.forEach(function(ve) {\n ve && (ve.__ = e);\n }), S = 0; S < g._sb.length; S++)\n g.__h.push(g._sb[S]);\n g._sb = [], g.__h.length && v.push(g);\n break e;\n }\n g.componentWillUpdate != null && g.componentWillUpdate(u, g.__s, w), g.componentDidUpdate != null && g.__h.push(function() {\n g.componentDidUpdate(_, m, p);\n });\n }\n if (g.context = w, g.props = u, g.__P = t, R = ft.__r, z = 0, \"prototype\" in q && q.prototype.render) {\n for (g.state = g.__s, g.__d = !1, R && R(e), x = g.render(g.props, g.state, g.context), W = 0; W < g._sb.length; W++)\n g.__h.push(g._sb[W]);\n g._sb = [];\n } else\n do\n g.__d = !1, R && R(e), x = g.render(g.props, g.state, g.context), g.state = g.__s;\n while (g.__d && ++z < 25);\n g.state = g.__s, g.getChildContext != null && (r = xn(xn({}, r), g.getChildContext())), D || g.getSnapshotBeforeUpdate == null || (p = g.getSnapshotBeforeUpdate(_, m)), fe = x != null && x.type === hn && x.key == null ? x.props.children : x, L0(t, Array.isArray(fe) ? fe : [fe], e, i, r, o, l, v, E, C), g.base = e.__e, e.__h = null, g.__h.length && v.push(g), d && (g.__E = g.__ = null), g.__e = !1;\n } else\n l == null && e.__v === i.__v ? (e.__k = i.__k, e.__e = i.__e) : e.__e = CA(i.__e, e, i, r, o, l, v, C);\n (x = ft.diffed) && x(e);\n } catch (ve) {\n e.__v = null, (C || l != null) && (e.__e = E, e.__h = !!C, l[l.indexOf(E)] = null), ft.__e(ve, e, i);\n }\n}\nfunction I0(t, e) {\n ft.__c && ft.__c(e, t), t.some(function(i) {\n try {\n t = i.__h, i.__h = [], t.some(function(r) {\n r.call(i);\n });\n } catch (r) {\n ft.__e(r, i.__v);\n }\n });\n}\nfunction CA(t, e, i, r, o, l, v, E) {\n var C, x, g, D = i.props, _ = e.props, m = e.type, p = 0;\n if (m === \"svg\" && (o = !0), l != null) {\n for (; p < l.length; p++)\n if ((C = l[p]) && \"setAttribute\" in C == !!m && (m ? C.localName === m : C.nodeType === 3)) {\n t = C, l[p] = null;\n break;\n }\n }\n if (t == null) {\n if (m === null)\n return document.createTextNode(_);\n t = o ? document.createElementNS(\"http://www.w3.org/2000/svg\", m) : document.createElement(m, _.is && _), l = null, E = !1;\n }\n if (m === null)\n D === _ || E && t.data === _ || (t.data = _);\n else {\n if (l = l && el.call(t.childNodes), x = (D = i.props || oc).dangerouslySetInnerHTML, g = _.dangerouslySetInnerHTML, !E) {\n if (l != null)\n for (D = {}, p = 0; p < t.attributes.length; p++)\n D[t.attributes[p].name] = t.attributes[p].value;\n (g || x) && (g && (x && g.__html == x.__html || g.__html === t.innerHTML) || (t.innerHTML = g && g.__html || \"\"));\n }\n if (RA(t, _, D, o, E), g)\n e.__k = [];\n else if (p = e.props.children, L0(t, Array.isArray(p) ? p : [p], e, i, r, o && m !== \"foreignObject\", l, v, l ? l[0] : i.__k && Ns(i, 0), E), l != null)\n for (p = l.length; p--; )\n l[p] != null && S0(l[p]);\n E || (\"value\" in _ && (p = _.value) !== void 0 && (p !== t.value || m === \"progress\" && !p || m === \"option\" && p !== D.value) && uc(t, \"value\", p, D.value, !1), \"checked\" in _ && (p = _.checked) !== void 0 && p !== t.checked && uc(t, \"checked\", p, D.checked, !1));\n }\n return t;\n}\nfunction D0(t, e, i) {\n try {\n typeof t == \"function\" ? t(e) : t.current = e;\n } catch (r) {\n ft.__e(r, i);\n }\n}\nfunction O0(t, e, i) {\n var r, o;\n if (ft.unmount && ft.unmount(t), (r = t.ref) && (r.current && r.current !== t.__e || D0(r, null, e)), (r = t.__c) != null) {\n if (r.componentWillUnmount)\n try {\n r.componentWillUnmount();\n } catch (l) {\n ft.__e(l, e);\n }\n r.base = r.__P = null, t.__c = void 0;\n }\n if (r = t.__k)\n for (o = 0; o < r.length; o++)\n r[o] && O0(r[o], e, i || typeof t.type != \"function\");\n i || t.__e == null || S0(t.__e), t.__ = t.__e = t.__d = void 0;\n}\nfunction kA(t, e, i) {\n return this.constructor(t, i);\n}\nfunction Xl(t, e, i) {\n var r, o, l;\n ft.__ && ft.__(t, e), o = (r = typeof i == \"function\") ? null : i && i.__k || e.__k, l = [], _d(e, t = (!r && i || e).__k = c_(hn, null, [t]), o || oc, oc, e.ownerSVGElement !== void 0, !r && i ? [i] : o ? null : e.firstChild ? el.call(e.childNodes) : null, l, !r && i ? i : o ? o.__e : e.firstChild, r), I0(l, t);\n}\nel = T0.slice, ft = { __e: function(t, e, i, r) {\n for (var o, l, v; e = e.__; )\n if ((o = e.__c) && !o.__)\n try {\n if ((l = o.constructor) && l.getDerivedStateFromError != null && (o.setState(l.getDerivedStateFromError(t)), v = o.__d), o.componentDidCatch != null && (o.componentDidCatch(t, r || {}), v = o.__d), v)\n return o.__E = o;\n } catch (E) {\n t = E;\n }\n throw t;\n} }, w0 = 0, dn.prototype.setState = function(t, e) {\n var i;\n i = this.__s != null && this.__s !== this.state ? this.__s : this.__s = xn({}, this.state), typeof t == \"function\" && (t = t(xn({}, i), this.props)), t && xn(i, t), t != null && this.__v && (e && this._sb.push(e), Yh(this));\n}, dn.prototype.forceUpdate = function(t) {\n this.__v && (this.__e = !0, t && this.__h.push(t), Yh(this));\n}, dn.prototype.render = hn, ia = [], A0 = typeof Promise == \"function\" ? Promise.prototype.then.bind(Promise.resolve()) : setTimeout, o_ = function(t, e) {\n return t.__v.__b - e.__v.__b;\n}, cc.__r = 0;\nvar N0 = function() {\n if (typeof Map < \"u\")\n return Map;\n function t(e, i) {\n var r = -1;\n return e.some(function(o, l) {\n return o[0] === i ? (r = l, !0) : !1;\n }), r;\n }\n return (\n /** @class */\n function() {\n function e() {\n this.__entries__ = [];\n }\n return Object.defineProperty(e.prototype, \"size\", {\n /**\n * @returns {boolean}\n */\n get: function() {\n return this.__entries__.length;\n },\n enumerable: !0,\n configurable: !0\n }), e.prototype.get = function(i) {\n var r = t(this.__entries__, i), o = this.__entries__[r];\n return o && o[1];\n }, e.prototype.set = function(i, r) {\n var o = t(this.__entries__, i);\n ~o ? this.__entries__[o][1] = r : this.__entries__.push([i, r]);\n }, e.prototype.delete = function(i) {\n var r = this.__entries__, o = t(r, i);\n ~o && r.splice(o, 1);\n }, e.prototype.has = function(i) {\n return !!~t(this.__entries__, i);\n }, e.prototype.clear = function() {\n this.__entries__.splice(0);\n }, e.prototype.forEach = function(i, r) {\n r === void 0 && (r = null);\n for (var o = 0, l = this.__entries__; o < l.length; o++) {\n var v = l[o];\n i.call(r, v[1], v[0]);\n }\n }, e;\n }()\n );\n}(), l_ = typeof window < \"u\" && typeof document < \"u\" && window.document === document, _c = function() {\n return typeof global < \"u\" && global.Math === Math ? global : typeof self < \"u\" && self.Math === Math ? self : typeof window < \"u\" && window.Math === Math ? window : Function(\"return this\")();\n}(), IA = function() {\n return typeof requestAnimationFrame == \"function\" ? requestAnimationFrame.bind(_c) : function(t) {\n return setTimeout(function() {\n return t(Date.now());\n }, 1e3 / 60);\n };\n}(), DA = 2;\nfunction OA(t, e) {\n var i = !1, r = !1, o = 0;\n function l() {\n i && (i = !1, t()), r && E();\n }\n function v() {\n IA(l);\n }\n function E() {\n var C = Date.now();\n if (i) {\n if (C - o < DA)\n return;\n r = !0;\n } else\n i = !0, r = !1, setTimeout(v, e);\n o = C;\n }\n return E;\n}\nvar NA = 20, PA = [\"top\", \"right\", \"bottom\", \"left\", \"width\", \"height\", \"size\", \"weight\"], MA = typeof MutationObserver < \"u\", UA = (\n /** @class */\n function() {\n function t() {\n this.connected_ = !1, this.mutationEventsAdded_ = !1, this.mutationsObserver_ = null, this.observers_ = [], this.onTransitionEnd_ = this.onTransitionEnd_.bind(this), this.refresh = OA(this.refresh.bind(this), NA);\n }\n return t.prototype.addObserver = function(e) {\n ~this.observers_.indexOf(e) || this.observers_.push(e), this.connected_ || this.connect_();\n }, t.prototype.removeObserver = function(e) {\n var i = this.observers_, r = i.indexOf(e);\n ~r && i.splice(r, 1), !i.length && this.connected_ && this.disconnect_();\n }, t.prototype.refresh = function() {\n var e = this.updateObservers_();\n e && this.refresh();\n }, t.prototype.updateObservers_ = function() {\n var e = this.observers_.filter(function(i) {\n return i.gatherActive(), i.hasActive();\n });\n return e.forEach(function(i) {\n return i.broadcastActive();\n }), e.length > 0;\n }, t.prototype.connect_ = function() {\n !l_ || this.connected_ || (document.addEventListener(\"transitionend\", this.onTransitionEnd_), window.addEventListener(\"resize\", this.refresh), MA ? (this.mutationsObserver_ = new MutationObserver(this.refresh), this.mutationsObserver_.observe(document, {\n attributes: !0,\n childList: !0,\n characterData: !0,\n subtree: !0\n })) : (document.addEventListener(\"DOMSubtreeModified\", this.refresh), this.mutationEventsAdded_ = !0), this.connected_ = !0);\n }, t.prototype.disconnect_ = function() {\n !l_ || !this.connected_ || (document.removeEventListener(\"transitionend\", this.onTransitionEnd_), window.removeEventListener(\"resize\", this.refresh), this.mutationsObserver_ && this.mutationsObserver_.disconnect(), this.mutationEventsAdded_ && document.removeEventListener(\"DOMSubtreeModified\", this.refresh), this.mutationsObserver_ = null, this.mutationEventsAdded_ = !1, this.connected_ = !1);\n }, t.prototype.onTransitionEnd_ = function(e) {\n var i = e.propertyName, r = i === void 0 ? \"\" : i, o = PA.some(function(l) {\n return !!~r.indexOf(l);\n });\n o && this.refresh();\n }, t.getInstance = function() {\n return this.instance_ || (this.instance_ = new t()), this.instance_;\n }, t.instance_ = null, t;\n }()\n), P0 = function(t, e) {\n for (var i = 0, r = Object.keys(e); i < r.length; i++) {\n var o = r[i];\n Object.defineProperty(t, o, {\n value: e[o],\n enumerable: !1,\n writable: !1,\n configurable: !0\n });\n }\n return t;\n}, Ga = function(t) {\n var e = t && t.ownerDocument && t.ownerDocument.defaultView;\n return e || _c;\n}, M0 = tl(0, 0, 0, 0);\nfunction dc(t) {\n return parseFloat(t) || 0;\n}\nfunction Jh(t) {\n for (var e = [], i = 1; i < arguments.length; i++)\n e[i - 1] = arguments[i];\n return e.reduce(function(r, o) {\n var l = t[\"border-\" + o + \"-width\"];\n return r + dc(l);\n }, 0);\n}\nfunction BA(t) {\n for (var e = [\"top\", \"right\", \"bottom\", \"left\"], i = {}, r = 0, o = e; r < o.length; r++) {\n var l = o[r], v = t[\"padding-\" + l];\n i[l] = dc(v);\n }\n return i;\n}\nfunction VA(t) {\n var e = t.getBBox();\n return tl(0, 0, e.width, e.height);\n}\nfunction FA(t) {\n var e = t.clientWidth, i = t.clientHeight;\n if (!e && !i)\n return M0;\n var r = Ga(t).getComputedStyle(t), o = BA(r), l = o.left + o.right, v = o.top + o.bottom, E = dc(r.width), C = dc(r.height);\n if (r.boxSizing === \"border-box\" && (Math.round(E + l) !== e && (E -= Jh(r, \"left\", \"right\") + l), Math.round(C + v) !== i && (C -= Jh(r, \"top\", \"bottom\") + v)), !zA(t)) {\n var x = Math.round(E + l) - e, g = Math.round(C + v) - i;\n Math.abs(x) !== 1 && (E -= x), Math.abs(g) !== 1 && (C -= g);\n }\n return tl(o.left, o.top, E, C);\n}\nvar jA = function() {\n return typeof SVGGraphicsElement < \"u\" ? function(t) {\n return t instanceof Ga(t).SVGGraphicsElement;\n } : function(t) {\n return t instanceof Ga(t).SVGElement && typeof t.getBBox == \"function\";\n };\n}();\nfunction zA(t) {\n return t === Ga(t).document.documentElement;\n}\nfunction HA(t) {\n return l_ ? jA(t) ? VA(t) : FA(t) : M0;\n}\nfunction $A(t) {\n var e = t.x, i = t.y, r = t.width, o = t.height, l = typeof DOMRectReadOnly < \"u\" ? DOMRectReadOnly : Object, v = Object.create(l.prototype);\n return P0(v, {\n x: e,\n y: i,\n width: r,\n height: o,\n top: i,\n right: e + r,\n bottom: o + i,\n left: e\n }), v;\n}\nfunction tl(t, e, i, r) {\n return { x: t, y: e, width: i, height: r };\n}\nvar WA = (\n /** @class */\n function() {\n function t(e) {\n this.broadcastWidth = 0, this.broadcastHeight = 0, this.contentRect_ = tl(0, 0, 0, 0), this.target = e;\n }\n return t.prototype.isActive = function() {\n var e = HA(this.target);\n return this.contentRect_ = e, e.width !== this.broadcastWidth || e.height !== this.broadcastHeight;\n }, t.prototype.broadcastRect = function() {\n var e = this.contentRect_;\n return this.broadcastWidth = e.width, this.broadcastHeight = e.height, e;\n }, t;\n }()\n), GA = (\n /** @class */\n function() {\n function t(e, i) {\n var r = $A(i);\n P0(this, { target: e, contentRect: r });\n }\n return t;\n }()\n), KA = (\n /** @class */\n function() {\n function t(e, i, r) {\n if (this.activeObservations_ = [], this.observations_ = new N0(), typeof e != \"function\")\n throw new TypeError(\"The callback provided as parameter 1 is not a function.\");\n this.callback_ = e, this.controller_ = i, this.callbackCtx_ = r;\n }\n return t.prototype.observe = function(e) {\n if (!arguments.length)\n throw new TypeError(\"1 argument required, but only 0 present.\");\n if (!(typeof Element > \"u\" || !(Element instanceof Object))) {\n if (!(e instanceof Ga(e).Element))\n throw new TypeError('parameter 1 is not of type \"Element\".');\n var i = this.observations_;\n i.has(e) || (i.set(e, new WA(e)), this.controller_.addObserver(this), this.controller_.refresh());\n }\n }, t.prototype.unobserve = function(e) {\n if (!arguments.length)\n throw new TypeError(\"1 argument required, but only 0 present.\");\n if (!(typeof Element > \"u\" || !(Element instanceof Object))) {\n if (!(e instanceof Ga(e).Element))\n throw new TypeError('parameter 1 is not of type \"Element\".');\n var i = this.observations_;\n i.has(e) && (i.delete(e), i.size || this.controller_.removeObserver(this));\n }\n }, t.prototype.disconnect = function() {\n this.clearActive(), this.observations_.clear(), this.controller_.removeObserver(this);\n }, t.prototype.gatherActive = function() {\n var e = this;\n this.clearActive(), this.observations_.forEach(function(i) {\n i.isActive() && e.activeObservations_.push(i);\n });\n }, t.prototype.broadcastActive = function() {\n if (this.hasActive()) {\n var e = this.callbackCtx_, i = this.activeObservations_.map(function(r) {\n return new GA(r.target, r.broadcastRect());\n });\n this.callback_.call(e, i, e), this.clearActive();\n }\n }, t.prototype.clearActive = function() {\n this.activeObservations_.splice(0);\n }, t.prototype.hasActive = function() {\n return this.activeObservations_.length > 0;\n }, t;\n }()\n), U0 = typeof WeakMap < \"u\" ? /* @__PURE__ */ new WeakMap() : new N0(), B0 = (\n /** @class */\n function() {\n function t(e) {\n if (!(this instanceof t))\n throw new TypeError(\"Cannot call a class as a function.\");\n if (!arguments.length)\n throw new TypeError(\"1 argument required, but only 0 present.\");\n var i = UA.getInstance(), r = new KA(e, i, this);\n U0.set(this, r);\n }\n return t;\n }()\n);\n[\n \"observe\",\n \"unobserve\",\n \"disconnect\"\n].forEach(function(t) {\n B0.prototype[t] = function() {\n var e;\n return (e = U0.get(this))[t].apply(e, arguments);\n };\n});\nvar qA = function() {\n return typeof _c.ResizeObserver < \"u\" ? _c.ResizeObserver : B0;\n}();\nlet YA = class {\n constructor() {\n pr(this, \"_observer\"), pr(this, \"_target\");\n }\n start(e) {\n this._observer || (this._observer = new qA((i) => {\n i.forEach((r) => {\n const {\n width: o\n } = r.contentRect;\n o >= 1e3 ? e.style.fontSize = \"20px\" : o >= 800 ? e.style.fontSize = \"18px\" : e.style.fontSize = \"16px\";\n });\n }), this._observer.observe(e));\n }\n stop() {\n this._observer && this._target && (this._observer.unobserve(this._target), this._observer.disconnect(), this._observer = void 0);\n }\n};\nvar XA = 0;\nfunction Re(t, e, i, r, o, l) {\n var v, E, C = {};\n for (E in e)\n E == \"ref\" ? v = e[E] : C[E] = e[E];\n var x = { type: t, props: C, key: i, ref: v, __k: null, __: null, __b: 0, __e: null, __d: void 0, __c: null, __h: null, constructor: void 0, __v: --XA, __source: o, __self: l };\n if (typeof t == \"function\" && (v = t.defaultProps))\n for (E in v)\n C[E] === void 0 && (C[E] = v[E]);\n return ft.vnode && ft.vnode(x), x;\n}\nfunction ZA(t) {\n return Re(\"svg\", {\n \"data-kp-role\": \"play\",\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: Re(\"g\", {\n transform: \"translate(8.000000, 4.000000)\",\n fill: t.color || \"white\",\n children: Re(\"path\", {\n d: \"M0,3.78427763 L0,26.2157224 C1.3527075e-16,27.3202919 0.8954305,28.2157224 2,28.2157224 C2.40194916,28.2157224 2.79457226,28.0946098 3.12667365,27.8681771 L19.5763998,16.6524547 C20.4890253,16.03021 20.7244255,14.7859519 20.1021808,13.8733264 C19.9613271,13.6667409 19.7829852,13.488399 19.5763998,13.3475453 L3.12667365,2.13182294 C2.21404813,1.50957827 0.969789989,1.74497846 0.347545314,2.65760398 C0.121112548,2.98970537 -5.36857104e-16,3.38232846 0,3.78427763 Z\"\n })\n })\n });\n}\nfunction QA(t) {\n return Re(\"svg\", {\n \"data-kp-role\": \"pause\",\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: Re(\"g\", {\n transform: \"translate(9.000000, 6.000000)\",\n fill: t.color || \"white\",\n children: Re(\"path\", {\n d: \"M3,0 C4.1045695,-2.02906125e-16 5,0.8954305 5,2 L5,24 C5,25.1045695 4.1045695,26 3,26 L2,26 C0.8954305,26 1.3527075e-16,25.1045695 0,24 L0,2 C-1.3527075e-16,0.8954305 0.8954305,2.02906125e-16 2,0 L3,0 Z M18,0 C19.1045695,-2.02906125e-16 20,0.8954305 20,2 L20,24 C20,25.1045695 19.1045695,26 18,26 L17,26 C15.8954305,26 15,25.1045695 15,24 L15,2 C15,0.8954305 15.8954305,2.02906125e-16 17,0 L18,0 Z\",\n id: \"形状结合\"\n })\n })\n });\n}\nfunction JA(t) {\n return Re(\"svg\", {\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: Re(\"g\", {\n stroke: \"none\",\n \"stroke-width\": \"1\",\n fill: \"none\",\n \"fill-rule\": \"evenodd\",\n children: Re(\"g\", {\n transform: \"translate(9.000000, 7.000000)\",\n fill: t.color || \"white\",\n children: [Re(\"path\", {\n d: \"M0,4.10049256 L0,20.8995074 C-4.30562135e-15,22.0040769 0.8954305,22.8995074 2,22.8995074 C2.4462318,22.8995074 2.87964655,22.7502761 3.23128808,22.4755562 L13.9826576,14.0760487 C14.8530853,13.3960271 15.0074399,12.1391396 14.3274183,11.2687119 C14.2269883,11.1401616 14.111208,11.0243812 13.9826576,10.9239513 L3.23128808,2.52444382 C2.3608604,1.84442218 1.10397288,1.99877679 0.423951253,2.86920448 C0.149231306,3.22084601 -5.4647634e-17,3.65426077 0,4.10049256 Z\"\n }), Re(\"rect\", {\n x: \"16\",\n y: \"2\",\n width: \"4\",\n height: \"21\",\n rx: \"2\"\n })]\n })\n })\n });\n}\nfunction eT(t) {\n return Re(\"svg\", {\n \"data-kp-role\": \"volume\",\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: Re(\"g\", {\n stroke: \"none\",\n \"stroke-width\": \"1\",\n fill: \"none\",\n \"fill-rule\": \"evenodd\",\n children: Re(\"g\", {\n transform: \"translate(6.000000, 8.000000)\",\n fill: t.color || \"white\",\n \"fill-rule\": \"nonzero\",\n children: [Re(\"path\", {\n d: \"M13.0512026,21.9947532 C12.0754373,21.9947532 11.006742,21.443835 9.68658892,20.2580491 C8.6643586,19.3398521 7.65306122,18.1881708 6.76202624,17.1729072 C6.23451166,16.5695206 5.72886297,15.9949917 5.32707726,15.5936084 L1.23815598,15.5936084 C0.554846939,15.5936084 0,15.0217028 0,14.3186263 L0,8.10899118 C0,7.40591462 0.554846939,6.83663248 1.23815598,6.83663248 C1.69187318,6.83663248 2.05812682,7.18817076 2.05812682,7.62365848 C2.05812682,7.91748152 1.88866618,8.17457668 1.63994169,8.31099451 L1.63994169,14.016933 L5.99125364,14.016933 L6.22904519,14.2346768 C6.72649417,14.6885285 7.32233965,15.3679943 8.0138484,16.1576437 C8.87481778,17.1388028 9.85331633,18.2537563 10.8044825,19.1089912 C12.0125729,20.1924636 12.6904155,20.4207012 13.0457362,20.4233246 L13.2862609,20.4233246 C13.3135933,20.4233246 13.3381924,20.4207012 13.3600583,20.4180777 L13.3518586,1.57667541 C13.3299927,1.57405199 13.3053936,1.57142857 13.275328,1.57142857 L13.0375364,1.57142857 C12.3952259,1.57142857 11.5451895,2.05151443 10.5120262,2.99856904 C9.50892857,3.91938946 8.51129738,5.11042213 7.63392857,6.16503697 C6.93968659,6.9966611 6.34110787,7.71547818 5.82999271,8.19294062 C5.50473761,8.49725733 4.98542274,8.48938707 4.67110058,8.1772001 C4.35404519,7.86501312 4.3622449,7.36656332 4.6875,7.06487002 C5.12481778,6.6556165 5.7233965,5.93942285 6.35477405,5.18125447 C7.26494169,4.08991176 8.29810496,2.85428094 9.38046647,1.86262819 C10.7498178,0.608633437 11.944242,0 13.0375364,0 L13.275328,0 C14.2374271,0 14.9918003,0.592892917 14.9918003,1.34843787 L15,20.6515621 C14.9972668,21.4097305 14.2456268,22 13.2862609,22 L13.0512026,21.9947532 L13.0512026,21.9947532 Z M18.0866546,14 C17.7143536,14 17.3528964,13.8670201 17.1504803,13.62866 C16.8468562,13.2698653 17.0167411,12.8081994 17.533625,12.5974388 C18.3324455,12.2687528 18.8312565,11.6565436 18.8312565,10.9991715 C18.8312565,10.3417994 18.3360601,9.72708115 17.533625,9.40090414 C17.0167411,9.19014361 16.8468562,8.72847768 17.1540949,8.36968297 C17.457719,8.01088826 18.1228003,7.89296272 18.6396842,8.1062323 C20.0963569,8.70338714 21,9.81238898 21,11.0016805 C21,12.1909721 20.0963569,13.299974 18.6396842,13.8971288 C18.4625701,13.9648732 18.2746124,14 18.0866546,14 L18.0866546,14 Z\"\n }), Re(\"path\", {\n d: \"M20.0314161,17 C19.6563637,17 19.2950747,16.8423043 19.1127098,16.5689652 C18.8546462,16.1799825 19.0542154,15.7068955 19.5634608,15.5071477 C21.6107651,14.7081563 22.9320506,12.9393366 22.9320506,10.9996799 C22.9320506,9.06002317 21.6107651,7.29120344 19.5634608,6.49221206 C19.0542154,6.29509248 18.8546462,5.81937722 19.1127098,5.43039457 C19.3707733,5.04141193 19.9935668,4.88897279 20.5028122,5.08609237 C21.8344202,5.60648807 22.9630182,6.4291338 23.7612949,7.46466868 C24.5698941,8.51597312 25,9.73811454 25,10.9970516 C25,12.2559887 24.5733349,13.4755018 23.7612949,14.5294346 C22.9630182,15.5649694 21.8378611,16.3902434 20.506253,16.9080109 C20.3514149,16.9737174 20.1896951,17 20.0314161,17 L20.0314161,17 Z\"\n })]\n })\n })\n });\n}\nfunction tT(t) {\n return Re(\"svg\", {\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: Re(\"g\", {\n id: \"页面-2\",\n stroke: \"none\",\n \"stroke-width\": \"1\",\n fill: \"none\",\n \"fill-rule\": \"evenodd\",\n children: Re(\"g\", {\n transform: \"translate(6.000000, 8.000000)\",\n fill: t.color || \"white\",\n \"fill-rule\": \"nonzero\",\n children: Re(\"path\", {\n d: \"M22.6991726,5.20974016 C21.2125636,3.46034681 19.2370399,2.49778271 17.1375461,2.49778271 L8.88508788,2.49778271 L8.88508788,0.640426557 C8.88508788,0.0480901243 8.53988999,-0.174157619 8.11393438,0.147542321 L4.31569494,3.03297666 C3.89151034,3.35658718 3.89505233,3.87493367 4.32475657,4.18791464 L8.10667328,6.94437025 C8.53277646,7.25752489 8.88508788,7.02687078 8.88508788,6.4345691 L8.88508788,4.58367401 L17.1393466,4.58367401 C20.4970787,4.58367401 23.2293517,7.80126418 23.2293517,11.7507991 C23.2293517,12.4065654 23.1557371,13.0539254 23.0083011,13.6757188 C22.8770403,14.2320677 23.1539366,14.8055071 23.6266761,14.957725 C23.7058104,14.9874252 23.7847971,15 23.8639314,15 C24.2521647,15 24.6081952,14.6954602 24.7177612,14.2364445 C24.9064616,13.4304404 25,12.5947013 25,11.7528486 C25,9.28210531 24.182092,6.95506929 22.6991726,5.20974016 Z M21.6701406,18.8715354 L17.8305988,16.1551157 C17.3941728,15.8467188 17.0363256,16.0717948 17.0363256,16.6575745 L17.0363256,18.4775924 L7.98779288,18.4775924 C4.5772419,18.4775924 1.80206754,15.3088641 1.80206751,11.4146892 C1.80206751,10.0512932 2.14348537,8.72753803 2.78803601,7.58712994 C3.05828017,7.10966065 2.93763867,6.47184822 2.52141948,6.16331436 C2.10325155,5.85683441 1.54465499,5.99441318 1.27623965,6.46962317 C0.441882494,7.94355457 0,9.65509094 0,11.4167089 C0,13.8536919 0.830759485,16.1427579 2.33877832,17.8646324 C3.84694704,19.588732 5.85348154,20.5372692 7.98779288,20.5372692 L17.0381544,20.5372692 L17.0381544,22.3676594 C17.0381544,22.9534048 17.3905751,23.1722506 17.8214248,22.8533787 L21.6793447,20.0078014 C22.1101943,19.6908122 22.1065967,19.1801035 21.6701406,18.8715354 Z\"\n })\n })\n })\n });\n}\nfunction iT(t) {\n return Re(\"svg\", {\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: Re(\"g\", {\n stroke: \"none\",\n \"stroke-width\": \"1\",\n fill: \"none\",\n \"fill-rule\": \"evenodd\",\n children: Re(\"g\", {\n transform: \"translate(6.000000, 8.000000)\",\n children: [Re(\"path\", {\n d: \"M22.6991726,5.20974016 C21.2125636,3.46034681 19.2370399,2.49778271 17.1375461,2.49778271 L8.88508788,2.49778271 L8.88508788,0.640426557 C8.88508788,0.0480901243 8.53988999,-0.174157619 8.11393438,0.147542321 L4.31569494,3.03297666 C3.89151034,3.35658718 3.89505233,3.87493367 4.32475657,4.18791464 L8.10667328,6.94437025 C8.53277646,7.25752489 8.88508788,7.02687078 8.88508788,6.4345691 L8.88508788,4.58367401 L17.1393466,4.58367401 C20.4970787,4.58367401 23.2293517,7.80126418 23.2293517,11.7507991 C23.2293517,12.4065654 23.1557371,13.0539254 23.0083011,13.6757188 C22.8770403,14.2320677 23.1539366,14.8055071 23.6266761,14.957725 C23.7058104,14.9874252 23.7847971,15 23.8639314,15 C24.2521647,15 24.6081952,14.6954602 24.7177612,14.2364445 C24.9064616,13.4304404 25,12.5947013 25,11.7528486 C25,9.28210531 24.182092,6.95506929 22.6991726,5.20974016 Z M9.96833239,18.4775924 L7.98779288,18.4775924 L7.98779288,18.4775924 C4.5772419,18.4775924 1.80206754,15.3088641 1.80206751,11.4146892 C1.80206751,10.0512932 2.14348537,8.72753803 2.78803601,7.58712994 C3.05828017,7.10966065 2.93763867,6.47184822 2.52141948,6.16331436 C2.10325155,5.85683441 1.54465499,5.99441318 1.27623965,6.46962317 C0.441882494,7.94355457 0,9.65509094 0,11.4167089 C0,13.8536919 0.830759485,16.1427579 2.33877832,17.8646324 C3.84694704,19.588732 5.85348154,20.5372692 7.98779288,20.5372692 L9.97016118,20.5372692 C10.5384207,20.5372692 10.999086,20.0766039 10.999086,19.5083444 C10.999086,19.5080398 10.9990859,19.5077353 10.9990856,19.5074308 C10.9985805,18.9385189 10.5372445,18.4775924 9.96833239,18.4775924 Z\",\n fill: t.color || \"white\",\n \"fill-rule\": \"nonzero\"\n }), Re(\"line\", {\n x1: \"14.1505409\",\n y1: \"11\",\n x2: \"21.8428486\",\n y2: \"17\",\n stroke: \"#C93737\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }), Re(\"circle\", {\n stroke: \"#C93737\",\n \"stroke-width\": \"2\",\n cx: \"18\",\n cy: \"14\",\n r: \"6\"\n })]\n })\n })\n });\n}\nfunction rT(t) {\n return Re(\"svg\", {\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: Re(\"g\", {\n stroke: \"none\",\n \"stroke-width\": \"1\",\n fill: \"none\",\n \"fill-rule\": \"evenodd\",\n children: Re(\"g\", {\n transform: \"translate(9.000000, 9.000000)\",\n stroke: t.color || \"white\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n \"stroke-width\": \"2\",\n children: [Re(\"path\", {\n d: \"M0,12.6315789 L0,16.9691612 C6.46995335e-16,18.6260154 1.34314575,19.9691612 3,19.9691612 L6.70590049,19.9691612 L6.70590049,19.9691612\"\n }), Re(\"path\", {\n d: \"M0,0 L0,4.33758224 C6.46995335e-16,5.99443649 1.34314575,7.33758224 3,7.33758224 L6.70590049,7.33758224 L6.70590049,7.33758224\",\n transform: \"translate(3.352950, 3.668791) scale(1, -1) translate(-3.352950, -3.668791) \"\n }), Re(\"path\", {\n d: \"M13,12.6315789 L13,16.9691612 C13,18.6260154 14.3431458,19.9691612 16,19.9691612 L19.7059005,19.9691612 L19.7059005,19.9691612\",\n transform: \"translate(16.352950, 16.300370) scale(-1, 1) translate(-16.352950, -16.300370) \"\n }), Re(\"path\", {\n d: \"M13,-1.15463195e-14 L13,4.33758224 C13,5.99443649 14.3431458,7.33758224 16,7.33758224 L19.7059005,7.33758224 L19.7059005,7.33758224\",\n transform: \"translate(16.352950, 3.668791) scale(-1, -1) translate(-16.352950, -3.668791) \"\n })]\n })\n })\n });\n}\nfunction nT(t) {\n return Re(\"svg\", {\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: Re(\"g\", {\n stroke: \"none\",\n \"stroke-width\": \"1\",\n fill: \"none\",\n \"fill-rule\": \"evenodd\",\n children: Re(\"g\", {\n transform: \"translate(9.000000, 9.000000)\",\n stroke: t.color || \"white\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n \"stroke-width\": \"2\",\n children: [Re(\"path\", {\n d: \"M0,12.6315789 L0,16.9691612 C6.46995335e-16,18.6260154 1.34314575,19.9691612 3,19.9691612 L6.70590049,19.9691612 L6.70590049,19.9691612\",\n transform: \"translate(3.352950, 16.300370) scale(-1, -1) translate(-3.352950, -16.300370) \"\n }), Re(\"path\", {\n d: \"M0,0 L0,4.33758224 C6.46995335e-16,5.99443649 1.34314575,7.33758224 3,7.33758224 L6.70590049,7.33758224 L6.70590049,7.33758224\",\n transform: \"translate(3.352950, 3.668791) scale(-1, 1) translate(-3.352950, -3.668791) \"\n }), Re(\"path\", {\n d: \"M13,12.6315789 L13,16.9691612 C13,18.6260154 14.3431458,19.9691612 16,19.9691612 L19.7059005,19.9691612 L19.7059005,19.9691612\",\n transform: \"translate(16.352950, 16.300370) scale(1, -1) translate(-16.352950, -16.300370) \"\n }), Re(\"path\", {\n d: \"M13,-1.15463195e-14 L13,4.33758224 C13,5.99443649 14.3431458,7.33758224 16,7.33758224 L19.7059005,7.33758224 L19.7059005,7.33758224\"\n })]\n })\n })\n });\n}\nfunction aT(t) {\n const e = t.color || \"#fff\";\n return Re(\"svg\", {\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: Re(\"g\", {\n stroke: \"none\",\n \"stroke-width\": \"1\",\n fill: \"none\",\n \"fill-rule\": \"evenodd\",\n children: Re(\"g\", {\n transform: \"translate(9.000000, 9.000000)\",\n children: [Re(\"rect\", {\n stroke: e,\n \"stroke-width\": \"2\",\n x: \"0\",\n y: \"0\",\n width: \"20\",\n height: \"20\",\n rx: \"3\"\n }), Re(\"path\", {\n d: \"M11,3.92869255 C11,3.41601809 11.416,3 11.9286522,3 L14.25,3 C15.7886413,3 17.0359565,4.24736946 17.0359565,5.78607766 L17.0359565,8.10752641 C17.0359565,8.62042914 16.6201848,9.03621896 16.1073043,9.03621896 C15.5944239,9.03621896 15.1786522,8.62042914 15.1786522,8.10752641 L15.1786522,5.78607766 C15.1786522,5.27283795 14.7632174,4.85738511 14.25,4.85738511 L11.9286522,4.85738511 C11.6823583,4.85738511 11.446152,4.759541 11.2719959,4.58537736 C11.0978399,4.41121372 11,4.17499713 11,3.92869255 Z M3.92865217,11 C4.44130434,11 4.85730434,11.4160181 4.85730436,11.9286925 L4.85730436,14.2501413 C4.85730436,14.763381 5.27273915,15.1788338 5.78595653,15.1788338 L8.10730435,15.1788338 C8.62018479,15.1788338 9.03595653,15.5946237 9.03595653,16.1075264 C9.03595653,16.6204291 8.62018479,17.036219 8.10730435,17.036219 L5.78595653,17.036219 C4.24753593,17.036219 3.00031212,15.789194 3,14.2507066 L3,11.9292578 C3,11.4165833 3.416,11.0005652 3.92865217,11.0005652 L3.92865217,11 Z\",\n fill: e,\n \"fill-rule\": \"nonzero\"\n })]\n })\n })\n });\n}\nfunction sT(t) {\n const e = t.color || \"#fff\";\n return Re(\"svg\", {\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: Re(\"g\", {\n stroke: \"none\",\n \"stroke-width\": \"1\",\n fill: \"none\",\n \"fill-rule\": \"evenodd\",\n children: Re(\"g\", {\n transform: \"translate(9.000000, 9.000000)\",\n children: [Re(\"rect\", {\n stroke: e,\n \"stroke-width\": \"2\",\n x: \"0\",\n y: \"0\",\n width: \"20\",\n height: \"20\",\n rx: \"3\"\n }), Re(\"path\", {\n d: \"M17.0359565,8.10752641 C17.0359565,8.62020087 16.6199565,9.03621896 16.1073043,9.03621896 L13.7859565,9.03621896 C12.2473152,9.03621896 11,7.78884949 11,6.2501413 L11,3.92869255 C11,3.41578982 11.4157717,3 11.9286522,3 C12.4415326,3 12.8573043,3.41578982 12.8573043,3.92869255 L12.8573043,6.2501413 C12.8573043,6.76338101 13.2727391,7.17883385 13.7859565,7.17883385 L16.1073043,7.17883385 C16.3535982,7.17883385 16.5898045,7.27667796 16.7639606,7.4508416 C16.9381167,7.62500524 17.0359565,7.86122183 17.0359565,8.10752641 Z M8.10730436,17.036219 C7.59465219,17.036219 7.17865219,16.6202009 7.17865217,16.1075264 L7.17865217,13.7860777 C7.17865217,13.2728379 6.76321738,12.8573851 6.25,12.8573851 L3.92865218,12.8573851 C3.41577174,12.8573851 3,12.4415953 3,11.9286926 C3,11.4157898 3.41577174,11 3.92865218,11 L6.25,11 C7.7884206,11 9.03564441,12.247025 9.03595653,13.7855124 L9.03595653,16.1069612 C9.03595653,16.6196356 8.61995653,17.0356537 8.10730436,17.0356537 L8.10730436,17.036219 Z\",\n fill: e,\n \"fill-rule\": \"nonzero\"\n })]\n })\n })\n });\n}\nfunction oT(t) {\n return Re(\"svg\", {\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: Re(\"g\", {\n stroke: \"none\",\n \"stroke-width\": \"1\",\n fill: \"none\",\n \"fill-rule\": \"evenodd\",\n children: [Re(\"rect\", {\n x: \"0\",\n y: \"0\",\n width: \"38\",\n height: \"38\"\n }), Re(\"g\", {\n transform: \"translate(6.000000, 17.000000)\",\n fill: t.color || \"white\",\n \"fill-rule\": \"nonzero\",\n children: Re(\"path\", {\n d: \"M4.58823529,2.29411765 C4.58823529,3.56112314 3.56112314,4.58823529 2.29411765,4.58823529 C1.02711216,4.58823529 0,3.56112314 0,2.29411765 C0,1.02711216 1.02711216,0 2.29411765,0 C3.56112314,0 4.58823529,1.02711216 4.58823529,2.29411765 Z M15.2941176,2.29411765 C15.2941176,3.56112314 14.2670055,4.58823529 13,4.58823529 C11.7329945,4.58823529 10.7058824,3.56112314 10.7058824,2.29411765 C10.7058824,1.02711216 11.7329945,0 13,0 C14.2670055,0 15.2941176,1.02711216 15.2941176,2.29411765 Z M23.7058824,4.58823529 C24.9728878,4.58823529 26,3.56112314 26,2.29411765 C26,1.02711216 24.9728878,0 23.7058824,0 C22.4388769,0 21.4117647,1.02711216 21.4117647,2.29411765 C21.4117647,3.56112314 22.4388769,4.58823529 23.7058824,4.58823529 Z\"\n })\n })]\n })\n });\n}\nfunction cT(t) {\n const e = t.color || \"#fff\";\n return Re(\"svg\", {\n \"data-kp-role\": \"muted\",\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: Re(\"g\", {\n stroke: \"none\",\n \"stroke-width\": \"1\",\n fill: \"none\",\n \"fill-rule\": \"evenodd\",\n children: Re(\"g\", {\n transform: \"translate(6.000000, 8.000000)\",\n children: [Re(\"path\", {\n d: \"M13.0512026,21.9947532 C12.0754373,21.9947532 11.006742,21.443835 9.68658892,20.2580491 C8.6643586,19.3398521 7.65306122,18.1881708 6.76202624,17.1729072 C6.23451166,16.5695206 5.72886297,15.9949917 5.32707726,15.5936084 L1.23815598,15.5936084 C0.554846939,15.5936084 0,15.0217028 0,14.3186263 L0,8.10899118 C0,7.40591462 0.554846939,6.83663248 1.23815598,6.83663248 C1.69187318,6.83663248 2.05812682,7.18817076 2.05812682,7.62365848 C2.05812682,7.91748152 1.88866618,8.17457668 1.63994169,8.31099451 L1.63994169,14.016933 L5.99125364,14.016933 L6.22904519,14.2346768 C6.72649417,14.6885285 7.32233965,15.3679943 8.0138484,16.1576437 C8.87481778,17.1388028 9.85331633,18.2537563 10.8044825,19.1089912 C12.0125729,20.1924636 12.6904155,20.4207012 13.0457362,20.4233246 L13.2862609,20.4233246 C13.3135933,20.4233246 13.3381924,20.4207012 13.3600583,20.4180777 L13.3518586,1.57667541 C13.3299927,1.57405199 13.3053936,1.57142857 13.275328,1.57142857 L13.0375364,1.57142857 C12.3952259,1.57142857 11.5451895,2.05151443 10.5120262,2.99856904 C9.50892857,3.91938946 8.51129738,5.11042213 7.63392857,6.16503697 C6.93968659,6.9966611 6.34110787,7.71547818 5.82999271,8.19294062 C5.50473761,8.49725733 4.98542274,8.48938707 4.67110058,8.1772001 C4.35404519,7.86501312 4.3622449,7.36656332 4.6875,7.06487002 C5.12481778,6.6556165 5.7233965,5.93942285 6.35477405,5.18125447 C7.26494169,4.08991176 8.29810496,2.85428094 9.38046647,1.86262819 C10.7498178,0.608633437 11.944242,0 13.0375364,0 L13.275328,0 C14.2374271,0 14.9918003,0.592892917 14.9918003,1.34843787 L15,20.6515621 C14.9972668,21.4097305 14.2456268,22 13.2862609,22 L13.0512026,21.9947532 L13.0512026,21.9947532 Z\",\n fill: e,\n \"fill-rule\": \"nonzero\"\n }), Re(\"line\", {\n x1: \"20\",\n y1: \"8\",\n x2: \"27\",\n y2: \"15\",\n stroke: e,\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }), Re(\"line\", {\n x1: \"20\",\n y1: \"8\",\n x2: \"27\",\n y2: \"15\",\n stroke: e,\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n transform: \"translate(23.500000, 11.500000) scale(-1, 1) translate(-23.500000, -11.500000) \"\n })]\n })\n })\n });\n}\nfunction V0(t) {\n return Re(\"svg\", {\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: Re(\"g\", {\n stroke: \"none\",\n \"stroke-width\": \"1\",\n fill: \"none\",\n \"fill-rule\": \"evenodd\",\n children: Re(\"g\", {\n transform: \"translate(6.000000, 7.000000)\",\n stroke: t.color || \"#fff\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n \"stroke-width\": \"2\",\n children: [Re(\"path\", {\n d: \"M24.6096522,8.95263262 C23.2611223,3.80100215 18.574447,0 13,0 C7.29724734,0 2.52360386,3.9779893 1.30256666,9.31047082 M1.31974665,14.7634742 C2.56780631,20.0587439 7.32363831,24 13,24 C18.8548495,24 23.7303688,19.8069889 24.7875004,14.2600242\"\n }), Re(\"polyline\", {\n points: \"25.4263056 4 25.4263056 9.41657121 20 9.41657121\"\n }), Re(\"polyline\", {\n transform: \"translate(2.713153, 15.708286) scale(-1, -1) translate(-2.713153, -15.708286) \",\n points: \"5.42630559 13 5.42630559 18.4165712 -2.27373675e-13 18.4165712\"\n })]\n })\n })\n });\n}\nfunction lT(t) {\n const e = t.color || \"#fff\";\n return Re(\"svg\", {\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: Re(\"g\", {\n stroke: \"none\",\n \"stroke-width\": \"1\",\n fill: \"none\",\n \"fill-rule\": \"evenodd\",\n children: Re(\"g\", {\n transform: \"translate(6.000000, 9.000000)\",\n children: [Re(\"path\", {\n d: \"M8.4309082,17 L3,17 C1.34314575,17 0,15.5729076 0,13.8125 L0,3.1875 C0,1.42709236 1.34314575,0 3,0 L20,0 C21.6568542,0 23,1.42709236 23,3.1875 L23,7.93920898\",\n stroke: e,\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }), Re(\"rect\", {\n fill: e,\n x: \"12\",\n y: \"11\",\n width: \"14\",\n height: \"9\",\n rx: \"2\"\n })]\n })\n })\n });\n}\nfunction uT(t) {\n const e = t.color || \"#fff\";\n return Re(\"svg\", {\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: Re(\"g\", {\n stroke: \"none\",\n \"stroke-width\": \"1\",\n fill: \"none\",\n \"fill-rule\": \"evenodd\",\n children: [Re(\"rect\", {\n x: \"0\",\n y: \"0\",\n width: \"38\",\n height: \"38\"\n }), Re(\"g\", {\n transform: \"translate(7.000000, 10.000000)\",\n children: [Re(\"path\", {\n d: \"M23,11.2236328 L23,15 C23,16.1045695 22.1045695,17 21,17 L2,17 C0.8954305,17 0,16.1045695 0,15 L0,2 C0,0.8954305 0.8954305,0 2,0 L21,0 C22.1045695,0 23,0.8954305 23,2 L23,6.99121094\",\n stroke: e,\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }), Re(\"path\", {\n d: \"M7,4 L16.4794922,4 C17.5840617,4 18.4794922,4.8954305 18.4794922,6 L18.4794922,11 C18.4794922,12.1045695 17.5840617,13 16.4794922,13 L7,13 C5.8954305,13 5,12.1045695 5,11 L5,6 C5,4.8954305 5.8954305,4 7,4 Z\",\n fill: e\n })]\n })]\n })\n });\n}\nvar $s, vi, Zl, ef, hc = 0, F0 = [], Po = [], tf = ft.__b, rf = ft.__r, nf = ft.diffed, af = ft.__c, sf = ft.unmount;\nfunction il(t, e) {\n ft.__h && ft.__h(vi, t, hc || e), hc = 0;\n var i = vi.__H || (vi.__H = { __: [], __h: [] });\n return t >= i.__.length && i.__.push({ __V: Po }), i.__[t];\n}\nfunction mt(t) {\n return hc = 1, _T(j0, t);\n}\nfunction _T(t, e, i) {\n var r = il($s++, 2);\n if (r.t = t, !r.__c && (r.__ = [i ? i(e) : j0(void 0, e), function(E) {\n var C = r.__N ? r.__N[0] : r.__[0], x = r.t(C, E);\n C !== x && (r.__N = [x, r.__[1]], r.__c.setState({}));\n }], r.__c = vi, !vi.u)) {\n var o = function(E, C, x) {\n if (!r.__c.__H)\n return !0;\n var g = r.__c.__H.__.filter(function(_) {\n return _.__c;\n });\n if (g.every(function(_) {\n return !_.__N;\n }))\n return !l || l.call(this, E, C, x);\n var D = !1;\n return g.forEach(function(_) {\n if (_.__N) {\n var m = _.__[0];\n _.__ = _.__N, _.__N = void 0, m !== _.__[0] && (D = !0);\n }\n }), !(!D && r.__c.props === E) && (!l || l.call(this, E, C, x));\n };\n vi.u = !0;\n var l = vi.shouldComponentUpdate, v = vi.componentWillUpdate;\n vi.componentWillUpdate = function(E, C, x) {\n if (this.__e) {\n var g = l;\n l = void 0, o(E, C, x), l = g;\n }\n v && v.call(this, E, C, x);\n }, vi.shouldComponentUpdate = o;\n }\n return r.__N || r.__;\n}\nfunction Ut(t, e) {\n var i = il($s++, 3);\n !ft.__s && dd(i.__H, e) && (i.__ = t, i.i = e, vi.__H.__h.push(i));\n}\nfunction Di(t, e) {\n var i = il($s++, 4);\n !ft.__s && dd(i.__H, e) && (i.__ = t, i.i = e, vi.__h.push(i));\n}\nfunction Ot(t) {\n return hc = 5, Ws(function() {\n return { current: t };\n }, []);\n}\nfunction Ws(t, e) {\n var i = il($s++, 7);\n return dd(i.__H, e) ? (i.__V = t(), i.i = e, i.__h = t, i.__V) : i.__;\n}\nfunction dT() {\n for (var t; t = F0.shift(); )\n if (t.__P && t.__H)\n try {\n t.__H.__h.forEach(Mo), t.__H.__h.forEach(u_), t.__H.__h = [];\n } catch (e) {\n t.__H.__h = [], ft.__e(e, t.__v);\n }\n}\nft.__b = function(t) {\n vi = null, tf && tf(t);\n}, ft.__r = function(t) {\n rf && rf(t), $s = 0;\n var e = (vi = t.__c).__H;\n e && (Zl === vi ? (e.__h = [], vi.__h = [], e.__.forEach(function(i) {\n i.__N && (i.__ = i.__N), i.__V = Po, i.__N = i.i = void 0;\n })) : (e.__h.forEach(Mo), e.__h.forEach(u_), e.__h = [])), Zl = vi;\n}, ft.diffed = function(t) {\n nf && nf(t);\n var e = t.__c;\n e && e.__H && (e.__H.__h.length && (F0.push(e) !== 1 && ef === ft.requestAnimationFrame || ((ef = ft.requestAnimationFrame) || hT)(dT)), e.__H.__.forEach(function(i) {\n i.i && (i.__H = i.i), i.__V !== Po && (i.__ = i.__V), i.i = void 0, i.__V = Po;\n })), Zl = vi = null;\n}, ft.__c = function(t, e) {\n e.some(function(i) {\n try {\n i.__h.forEach(Mo), i.__h = i.__h.filter(function(r) {\n return !r.__ || u_(r);\n });\n } catch (r) {\n e.some(function(o) {\n o.__h && (o.__h = []);\n }), e = [], ft.__e(r, i.__v);\n }\n }), af && af(t, e);\n}, ft.unmount = function(t) {\n sf && sf(t);\n var e, i = t.__c;\n i && i.__H && (i.__H.__.forEach(function(r) {\n try {\n Mo(r);\n } catch (o) {\n e = o;\n }\n }), i.__H = void 0, e && ft.__e(e, i.__v));\n};\nvar of = typeof requestAnimationFrame == \"function\";\nfunction hT(t) {\n var e, i = function() {\n clearTimeout(r), of && cancelAnimationFrame(e), setTimeout(t);\n }, r = setTimeout(i, 100);\n of && (e = requestAnimationFrame(i));\n}\nfunction Mo(t) {\n var e = vi, i = t.__c;\n typeof i == \"function\" && (t.__c = void 0, i()), vi = e;\n}\nfunction u_(t) {\n var e = vi;\n t.__c = t.__(), vi = e;\n}\nfunction dd(t, e) {\n return !t || t.length !== e.length || e.some(function(i, r) {\n return i !== t[r];\n });\n}\nfunction j0(t, e) {\n return typeof e == \"function\" ? e(t) : e;\n}\nfunction z0(t, e) {\n for (var i in e)\n t[i] = e[i];\n return t;\n}\nfunction cf(t, e) {\n for (var i in t)\n if (i !== \"__source\" && !(i in e))\n return !0;\n for (var r in e)\n if (r !== \"__source\" && t[r] !== e[r])\n return !0;\n return !1;\n}\nfunction lf(t) {\n this.props = t;\n}\n(lf.prototype = new dn()).isPureReactComponent = !0, lf.prototype.shouldComponentUpdate = function(t, e) {\n return cf(this.props, t) || cf(this.state, e);\n};\nvar uf = ft.__b;\nft.__b = function(t) {\n t.type && t.type.__f && t.ref && (t.props.ref = t.ref, t.ref = null), uf && uf(t);\n};\nvar fT = typeof Symbol < \"u\" && Symbol.for && Symbol.for(\"react.forward_ref\") || 3911;\nfunction Gs(t) {\n function e(i) {\n var r = z0({}, i);\n return delete r.ref, t(r, i.ref || null);\n }\n return e.$$typeof = fT, e.render = e, e.prototype.isReactComponent = e.__f = !0, e.displayName = \"ForwardRef(\" + (t.displayName || t.name) + \")\", e;\n}\nvar pT = ft.__e;\nft.__e = function(t, e, i, r) {\n if (t.then) {\n for (var o, l = e; l = l.__; )\n if ((o = l.__c) && o.__c)\n return e.__e == null && (e.__e = i.__e, e.__k = i.__k), o.__c(t, e);\n }\n pT(t, e, i, r);\n};\nvar _f = ft.unmount;\nfunction H0(t, e, i) {\n return t && (t.__c && t.__c.__H && (t.__c.__H.__.forEach(function(r) {\n typeof r.__c == \"function\" && r.__c();\n }), t.__c.__H = null), (t = z0({}, t)).__c != null && (t.__c.__P === i && (t.__c.__P = e), t.__c = null), t.__k = t.__k && t.__k.map(function(r) {\n return H0(r, e, i);\n })), t;\n}\nfunction $0(t, e, i) {\n return t && (t.__v = null, t.__k = t.__k && t.__k.map(function(r) {\n return $0(r, e, i);\n }), t.__c && t.__c.__P === e && (t.__e && i.insertBefore(t.__e, t.__d), t.__c.__e = !0, t.__c.__P = i)), t;\n}\nfunction Ql() {\n this.__u = 0, this.t = null, this.__b = null;\n}\nfunction W0(t) {\n var e = t.__.__c;\n return e && e.__a && e.__a(t);\n}\nfunction _o() {\n this.u = null, this.o = null;\n}\nft.unmount = function(t) {\n var e = t.__c;\n e && e.__R && e.__R(), e && t.__h === !0 && (t.type = null), _f && _f(t);\n}, (Ql.prototype = new dn()).__c = function(t, e) {\n var i = e.__c, r = this;\n r.t == null && (r.t = []), r.t.push(i);\n var o = W0(r.__v), l = !1, v = function() {\n l || (l = !0, i.__R = null, o ? o(E) : E());\n };\n i.__R = v;\n var E = function() {\n if (!--r.__u) {\n if (r.state.__a) {\n var x = r.state.__a;\n r.__v.__k[0] = $0(x, x.__c.__P, x.__c.__O);\n }\n var g;\n for (r.setState({ __a: r.__b = null }); g = r.t.pop(); )\n g.forceUpdate();\n }\n }, C = e.__h === !0;\n r.__u++ || C || r.setState({ __a: r.__b = r.__v.__k[0] }), t.then(v, v);\n}, Ql.prototype.componentWillUnmount = function() {\n this.t = [];\n}, Ql.prototype.render = function(t, e) {\n if (this.__b) {\n if (this.__v.__k) {\n var i = document.createElement(\"div\"), r = this.__v.__k[0].__c;\n this.__v.__k[0] = H0(this.__b, i, r.__O = r.__P);\n }\n this.__b = null;\n }\n var o = e.__a && c_(hn, null, t.fallback);\n return o && (o.__h = null), [c_(hn, null, e.__a ? null : t.children), o];\n};\nvar df = function(t, e, i) {\n if (++i[1] === i[0] && t.o.delete(e), t.props.revealOrder && (t.props.revealOrder[0] !== \"t\" || !t.o.size))\n for (i = t.u; i; ) {\n for (; i.length > 3; )\n i.pop()();\n if (i[1] < i[0])\n break;\n t.u = i = i[2];\n }\n};\n(_o.prototype = new dn()).__a = function(t) {\n var e = this, i = W0(e.__v), r = e.o.get(t);\n return r[0]++, function(o) {\n var l = function() {\n e.props.revealOrder ? (r.push(o), df(e, t, r)) : o();\n };\n i ? i(l) : l();\n };\n}, _o.prototype.render = function(t) {\n this.u = null, this.o = /* @__PURE__ */ new Map();\n var e = lc(t.children);\n t.revealOrder && t.revealOrder[0] === \"b\" && e.reverse();\n for (var i = e.length; i--; )\n this.o.set(e[i], this.u = [1, 0, this.u]);\n return t.children;\n}, _o.prototype.componentDidUpdate = _o.prototype.componentDidMount = function() {\n var t = this;\n this.o.forEach(function(e, i) {\n df(t, i, e);\n });\n};\nvar mT = typeof Symbol < \"u\" && Symbol.for && Symbol.for(\"react.element\") || 60103, vT = /^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/, gT = /^on(Ani|Tra|Tou|BeforeInp|Compo)/, bT = /[A-Z0-9]/g, yT = typeof document < \"u\", ET = function(t) {\n return (typeof Symbol < \"u\" && typeof Symbol() == \"symbol\" ? /fil|che|rad/ : /fil|che|ra/).test(t);\n};\ndn.prototype.isReactComponent = {}, [\"componentWillMount\", \"componentWillReceiveProps\", \"componentWillUpdate\"].forEach(function(t) {\n Object.defineProperty(dn.prototype, t, { configurable: !0, get: function() {\n return this[\"UNSAFE_\" + t];\n }, set: function(e) {\n Object.defineProperty(this, t, { configurable: !0, writable: !0, value: e });\n } });\n});\nvar hf = ft.event;\nfunction wT() {\n}\nfunction AT() {\n return this.cancelBubble;\n}\nfunction TT() {\n return this.defaultPrevented;\n}\nft.event = function(t) {\n return hf && (t = hf(t)), t.persist = wT, t.isPropagationStopped = AT, t.isDefaultPrevented = TT, t.nativeEvent = t;\n};\nvar ST = { enumerable: !1, configurable: !0, get: function() {\n return this.class;\n} }, ff = ft.vnode;\nft.vnode = function(t) {\n typeof t.type == \"string\" && function(e) {\n var i = e.props, r = e.type, o = {};\n for (var l in i) {\n var v = i[l];\n if (!(l === \"value\" && \"defaultValue\" in i && v == null || yT && l === \"children\" && r === \"noscript\" || l === \"class\" || l === \"className\")) {\n var E = l.toLowerCase();\n l === \"defaultValue\" && \"value\" in i && i.value == null ? l = \"value\" : l === \"download\" && v === !0 ? v = \"\" : E === \"ondoubleclick\" ? l = \"ondblclick\" : E !== \"onchange\" || r !== \"input\" && r !== \"textarea\" || ET(i.type) ? E === \"onfocus\" ? l = \"onfocusin\" : E === \"onblur\" ? l = \"onfocusout\" : gT.test(l) ? l = E : r.indexOf(\"-\") === -1 && vT.test(l) ? l = l.replace(bT, \"-$&\").toLowerCase() : v === null && (v = void 0) : E = l = \"oninput\", E === \"oninput\" && o[l = E] && (l = \"oninputCapture\"), o[l] = v;\n }\n }\n r == \"select\" && o.multiple && Array.isArray(o.value) && (o.value = lc(i.children).forEach(function(C) {\n C.props.selected = o.value.indexOf(C.props.value) != -1;\n })), r == \"select\" && o.defaultValue != null && (o.value = lc(i.children).forEach(function(C) {\n C.props.selected = o.multiple ? o.defaultValue.indexOf(C.props.value) != -1 : o.defaultValue == C.props.value;\n })), i.class && !i.className ? (o.class = i.class, Object.defineProperty(o, \"className\", ST)) : (i.className && !i.class || i.class && i.className) && (o.class = o.className = i.className), e.props = o;\n }(t), t.$$typeof = mT, ff && ff(t);\n};\nvar pf = ft.__r;\nft.__r = function(t) {\n pf && pf(t), t.__c;\n};\nvar mf = ft.diffed;\nft.diffed = function(t) {\n mf && mf(t);\n var e = t.props, i = t.__e;\n i != null && t.type === \"textarea\" && \"value\" in e && e.value !== i.value && (i.value = e.value == null ? \"\" : e.value);\n};\nconst xT = Gs(function(t, e) {\n const i = Ot(0), r = () => {\n i.current = +setTimeout(() => {\n t.onChangeShowContextMenu();\n }, 300);\n }, o = () => {\n i.current && (clearTimeout(i.current), i.current = 0);\n }, l = () => {\n o();\n }, v = (E) => {\n t.onChangeShowContextMenu(), E();\n };\n return Ut(() => () => {\n o();\n }, []), Re(hn, {\n children: t.contextMenuItems.length !== 0 && Re(\"div\", {\n ref: e,\n className: Ze[\"context-menu\"],\n style: {\n left: t.left,\n top: t.top,\n visibility: t.visible ? \"visible\" : \"hidden\"\n },\n onMouseLeave: r,\n onMouseEnter: l,\n children: Re(\"div\", {\n className: Ze[\"context-menu-list\"],\n children: t.contextMenuItems.map((E) => Re(\"div\", {\n onClick: () => {\n v(E.handle);\n },\n className: Ze[\"context-menu-item\"],\n children: [Re(\"div\", {\n className: Ze[\"context-menu-label\"],\n children: Re(\"span\", {\n children: E.name\n })\n }), Re(\"input\", {\n type: \"checkbox\",\n checked: E.isChecked,\n className: Ze[\"context-menu-checkbox\"]\n })]\n }))\n })\n })\n });\n});\nvar Dt = /* @__PURE__ */ ((t) => (t.PLAY = \"play\", t.PAUSE = \"pause\", t.REFRESH = \"refresh\", t.NEXT = \"next\", t.TURN_ON_LOOP = \"turnOnLoop\", t.TURN_OFF_LOOP = \"turnOffLoop\", t.LOOP = \"loop\", t.PLAYBACK_RATE_NORMAL = \"playbackRateNromal\", t.OPTIONS = \"options\", t.DOWNLOAD = \"download\", t.VIDEO_TRACK = \"videoTrack\", t.AUDIO_TRACK = \"audioTrack\", t.PLAYBACK_RATE = \"playbackRate\", t.PLAYBACK_RATE_SHORT = \"playbackRateShort\", t.PICTURE_IN_PICTURE = \"pictureInPicture\", t.EXIT_PICTURE_IN_PICTURE = \"exitPictureInPicture\", t.PLAY_INFO = \"playInfo\", t.MIRROR_IMAGE = \"mirrorImage\", t.ROTATE = \"rotate\", t.FULLSCREEN = \"fullscreen\", t.EXIT_FULLSCREEN = \"exitFullscreen\", t.WINDOW_FULLSCREEN = \"windowFullscreen\", t.EXIT_WINDOW_FULLSCREEN = \"exitWindowFullscreen\", t.AUTO = \"auto\", t.CURRENT_VOLUME = \"currentVolume\", t.CURRENTLY_MUTED = \"currentlyMuted\", t.SWITCH_TO_VIDEO = \"switchToVideo\", t.SWITCHING_TO_VIDEO = \"switchingToVideo\", t.SWITCHED_TO_VIDEO = \"switchedToVideo\", t.SWITCH_TO_AUDIO = \"switchToAudio\", t.SWITCHING_TO_AUDIO = \"switchingToAudio\", t.SWITCHED_TO_AUDIO = \"switchedToAudio\", t.FAIL = \"fail\", t.LOADING = \"loading\", t.ERROR_PANEL_TITLE = \"errorPanelTitle\", t.ERROR_PANEL_RETRY_BTN = \"errorPanelRetryBtn\", t))(Dt || {});\nconst LT = {\n play: \"播放\",\n pause: \"暂停\",\n refresh: \"刷新\",\n next: \"下一个\",\n turnOnLoop: \"打开循环播放\",\n turnOffLoop: \"关闭循环播放\",\n loop: \"循环播放\",\n playbackRateNromal: \"正常\",\n options: \"选项\",\n download: \"下载\",\n videoTrack: \"视频轨\",\n audioTrack: \"音频轨\",\n playbackRate: \"播放速度\",\n playbackRateShort: \"倍速\",\n pictureInPicture: \"画中画\",\n exitPictureInPicture: \"退出画中画\",\n playInfo: \"视频信息\",\n mirrorImage: \"镜像画面\",\n rotate: \"旋转画面\",\n fullscreen: \"全屏\",\n exitFullscreen: \"退出全屏\",\n windowFullscreen: \"网页全屏\",\n exitWindowFullscreen: \"退出网页全屏\",\n auto: \"自动\",\n currentVolume: \"当前音量\",\n currentlyMuted: \"当前静音\",\n switchToVideo: \"切换到\",\n switchingToVideo: \"正在切换\",\n switchedToVideo: \"已切换\",\n switchToAudio: \"切换到\",\n switchingToAudio: \"正在切换\",\n switchedToAudio: \"已切换\",\n fail: \"失败\",\n loading: \"全力加载中\",\n errorPanelTitle: \"视频加载失败,请稍后重试\",\n errorPanelRetryBtn: \"点击重试\"\n};\nfunction RT(t) {\n return Re(\"div\", {\n className: Ze.loading,\n children: [Re(\"div\", {\n className: Ze[\"loading-animation\"],\n children: [Re(\"div\", {\n className: Ze[\"loading-wave\"]\n }), Re(\"div\", {\n className: Ze[\"loading-wave\"]\n }), Re(\"div\", {\n className: Ze[\"loading-wave\"]\n })]\n }), Re(\"div\", {\n className: Ze[\"loading-text\"],\n children: t.text(Dt.LOADING)\n })]\n });\n}\nconst __ = [{\n val: 0.5,\n label: \"0.5X\"\n}, {\n val: 0.75,\n label: \"0.75X\"\n}, {\n val: 1,\n label: \"1X\"\n}, {\n val: 1.25,\n label: \"1.25X\"\n}, {\n val: 1.5,\n label: \"1.5X\"\n}, {\n val: 2,\n label: \"2.0X\"\n}];\nvar Gn = /* @__PURE__ */ ((t) => (t.VERSION = \"version\", t.LOOP = \"loop\", t.PLAY_INFO = \"playInfo\", t.MIRROR = \"mirror\", t.ROTATE = \"rotate\", t.NEXT = \"next\", t))(Gn || {}), Ur = /* @__PURE__ */ ((t) => (t[t.DEFAULT = 0] = \"DEFAULT\", t[t.HOVER = 1] = \"HOVER\", t[t.DISABLED = 2] = \"DISABLED\", t))(Ur || {});\nconst Ps = \"#FFF\", CT = {\n [Ur.DEFAULT]: [Ps],\n [Ur.HOVER]: [\"#1280FF\"],\n [Ur.DISABLED]: [Ps]\n}, oi = (t) => t ? CT[t] || [Ps] : [Ps];\nfunction kT(t) {\n return Re(\"div\", {\n className: Ze[\"error-alert\"],\n children: [Re(\"div\", {\n className: Ze[\"error-title\"],\n children: Re(\"span\", {\n children: t.text(Dt.ERROR_PANEL_TITLE)\n })\n }), Re(\"div\", {\n className: Ze[\"error-message\"],\n children: Re(\"span\", {\n children: [\"(\", t.code, \")\"]\n })\n }), Re(\"div\", {\n className: Ze[\"error-retry\"],\n onClick: t.onClickRefresh,\n children: [Re(V0, {\n color: \"#FFF\"\n }), Re(\"span\", {\n children: t.text(Dt.ERROR_PANEL_RETRY_BTN)\n })]\n })]\n });\n}\nconst IT = Gs(function(t, e) {\n const [i, r] = mt(!1), o = Re(Jl, {\n checkedValue: t.playbackRate,\n onBack: () => r(!1),\n levels: __,\n onCheck: (_) => {\n t.onClickPlaybackRate(_), r(!1);\n },\n text: t.text\n }), [l, v] = mt(!1), E = Re(Jl, {\n checkedValue: t.currentLevel,\n onBack: () => v(!1),\n levels: t.levels,\n onCheck: (_) => {\n t.onChangeLevel(_), v(!1);\n },\n text: t.text\n }), [C, x] = mt(!1), g = Re(Jl, {\n checkedValue: t.currentAudioLevel,\n onBack: () => x(!1),\n levels: t.audioLevels,\n onCheck: (_) => {\n t.onChangeAudioLevel(_), x(!1);\n },\n text: t.text\n }), D = Ws(() => t.showOverflow && (i || l || C), [t.showOverflow, i, l, C]);\n return Ut(() => {\n t.showOverflow || (r(!1), v(!1), x(!1));\n }, [t.showOverflow]), Re(\"div\", {\n className: [Ze.overflow, t.className].join(\" \"),\n ref: e,\n \"data-kp-role\": \"overflow\",\n children: [i && o, l && E, C && g, t.levels.length > 1 && !D && Re(Pa, {\n \"data-kp-role\": \"video-btn\",\n onClick: () => v(!0),\n children: [t.text(Dt.VIDEO_TRACK), Re(\"span\", {\n style: {\n paddingLeft: \"18px\"\n }\n })]\n }), t.audioLevels.length > 1 && !D && Re(Pa, {\n \"data-kp-role\": \"audio-btn\",\n onClick: () => x(!0),\n children: [t.text(Dt.AUDIO_TRACK), Re(\"span\", {\n style: {\n paddingLeft: \"18px\"\n }\n })]\n }), t.showPictureInPicture && !D && Re(Pa, {\n \"data-kp-role\": \"inline-btn\",\n onClick: t.onClickPictureInPicture,\n children: [t.text(Dt.PICTURE_IN_PICTURE), Re(\"span\", {\n style: {\n paddingLeft: \"18px\"\n }\n })]\n }), t.overflowItems && !D && t.overflowItems.map((_) => Re(Pa, {\n \"data-kp-role\": \"inline-btn\",\n onClick: () => {\n t.onClickItem(), _.handle();\n },\n icon: _.icon ? _.icon() : \"\",\n checked: _.isChecked,\n type: \"checkbox\",\n children: _.name\n }))]\n });\n});\nfunction Jl(t) {\n return Re(hn, {\n children: [\n // } onClick={props.onBack}>\n Re(Pa, {\n onClick: t.onBack,\n children: t.text(Dt.OPTIONS)\n })\n ].concat(t.levels.map((e) => Re(Pa, {\n type: \"checkbox\",\n checked: t.checkedValue === e.val,\n onClick: () => {\n t.onCheck(e.val);\n },\n children: e.label\n })))\n });\n}\nfunction Pa(t) {\n return (\n //role要传进来\n Re(\"div\", {\n className: Ze[\"overflow-item\"],\n onClick: t.onClick,\n \"data-kp-role\": t[\"data-kp-role\"],\n children: Re(\"div\", {\n className: Ze[\"overflow-content\"],\n children: [Re(\"span\", {\n children: t.children\n }), t.type === \"checkbox\" && Re(\"input\", {\n type: \"checkbox\",\n className: Ze[\"overflow-checkbox\"],\n checked: t.checked\n })]\n })\n })\n );\n}\nconst Nr = Gs((t, e) => {\n const {\n disabled: i,\n className: r,\n text: o,\n setShowChildren: l,\n tip: v,\n lowTipPos: E,\n resetOnClick: C,\n isChildrenShow: x\n } = t, g = e && e ? e : Ot(null), [D, _] = mt(Ur.DEFAULT), [m, p] = mt(!1), d = Ot(0), u = () => {\n d.current && (clearTimeout(d.current), d.current = 0);\n }, U = Ot(null), w = (W) => {\n !i && t.onClick && t.onClick(W), (C || U.current && W.target && U.current.contains(W.target)) && (p(!1), Si || _(Ur.DEFAULT));\n }, S = () => {\n t.disabled || (Si || (_(Ur.HOVER), p(!0)), l && l(!0), u());\n }, R = () => {\n _(Ur.DEFAULT), p(!1), d.current = +setTimeout(() => {\n l && l(!1);\n }, 300);\n }, z = () => {\n t.disabled || (Si || (_(Ur.HOVER), p(!0)), l && l(!0), u());\n };\n return Ut(() => {\n const W = (fe) => {\n \"current\" in g && g.current && (g.current === fe.target || g.current.contains(fe.target)) || (l && l(!1), _(Ur.DEFAULT));\n };\n return document.addEventListener(\"click\", W), () => document.removeEventListener(\"click\", W);\n }, []), Ut(() => {\n (i || !x) && _(Ur.DEFAULT);\n }, [i, x]), Ut(() => () => {\n u();\n }, []), Re(\"div\", {\n ref: g,\n \"data-kp-role\": t[\"data-kp-role\"],\n onMouseEnter: S,\n onMouseLeave: R,\n onMouseMove: z,\n onClick: w,\n className: [Ze[\"panel-button-wrapper\"], r, i ? Ze.disabled : \"\"].join(\" \"),\n children: [t.children, v && m && Re(\"div\", {\n \"data-kp-role\": t[\"data-kp-role\"] ? t[\"data-kp-role\"] + \"-tip\" : \"btn-tip\",\n className: [Ze[\"panel-button-tip\"], E ? Ze[\"panel-button-tip-low-pos\"] : \"\"].join(\" \"),\n children: Re(\"div\", {\n className: Ze.text,\n children: v\n })\n }), t.icon && t.icon(D), o && Re(\"div\", {\n className: Ze[\"panel-button-text\"],\n style: {\n color: t.color ? t.color(D) : Ps\n },\n children: o\n })]\n });\n}), DT = Gs(function(t, e) {\n var i;\n const [r, o] = mt(0);\n t.rotate && Ut(() => {\n t.rotate && o(t.rotate.outerRotate);\n }, [t.rotate.outerRotate]), e || (e = Ot(null));\n const [l, v] = mt(0);\n Ut(() => {\n if (x.current) {\n const {\n width: m\n } = x.current.getBoundingClientRect();\n v(m / 2);\n }\n });\n const E = (m) => {\n if (!C.current || t.disabled || !e)\n return;\n m.defaultPrevented && m.preventDefault();\n const p = m instanceof MouseEvent ? m.clientX : m.changedTouches[0].clientX, d = m instanceof MouseEvent ? m.clientY : m.changedTouches[0].clientY, u = e.current, U = e.current;\n if ((C || m instanceof PointerEvent || Si && m instanceof MouseEvent) && u && U) {\n let w = 0;\n const {\n top: S,\n left: R,\n width: z,\n height: W\n } = U.getBoundingClientRect();\n r === 90 ? w = (d - S) / W : r === 180 ? w = (z - (p - R)) / z : r === 270 ? w = (W - (d - S)) / W : r === 0 && (w = (p - R) / z), w > 1 && (w = 1), w < 0 && (w = 0), t.onChange && t.onChange(w);\n }\n };\n Ut(() => {\n const m = () => {\n C.current && t.onChangeEnd && t.onChangeEnd(), C.current = !1;\n }, p = (d) => {\n E(d);\n };\n return document.addEventListener(\"mouseup\", m), document.addEventListener(\"mouseleave\", m), document.addEventListener(\"touchend\", m), document.addEventListener(\"mousemove\", p, !0), document.addEventListener(\"touchmove\", p, !0), () => {\n document.removeEventListener(\"mouseup\", m), document.removeEventListener(\"touchend\", m), document.removeEventListener(\"mouseleave\", m), document.removeEventListener(\"mousemove\", p, !0), document.removeEventListener(\"touchmove\", p, !0);\n };\n });\n const C = Ot(!1);\n Ut(() => {\n e != null && e.current && (r === 90 || r === 270 ? t.getTimelineHeight && t.getTimelineHeight(e.current && e.current.getBoundingClientRect().width) : (r === 180 || r === 0) && t.getTimelineHeight && t.getTimelineHeight(e.current && e.current.getBoundingClientRect().height));\n }, [(i = e.current) == null ? void 0 : i.clientHeight]);\n const x = Ot(null), g = (m) => {\n t.disabled || (C.current = !0, m.stopImmediatePropagation(), E(m));\n }, D = (m) => {\n if (!t.disabled && t.onMouseMove && m instanceof MouseEvent) {\n const p = m.currentTarget, {\n left: d,\n width: u\n } = p.getBoundingClientRect();\n t.onMouseMove((m.clientX - d) / u, C.current);\n }\n }, _ = () => {\n t.onMouseLeave && t.onMouseLeave(C.current);\n };\n return Re(\"div\", {\n \"data-kp-role\": t[\"data-kp-role\"],\n className: [Ze[\"segmented-track\"], t.disabled ? Ze.disabled : \"\", t.className].join(\" \"),\n style: {\n cursor: Si ? \"default\" : \"\"\n },\n ref: e,\n onMouseLeave: _,\n onMouseDown: g,\n onMouseMove: D,\n onMouseEnter: D,\n onTouchStart: g,\n onTouchMove: D,\n onTouchEnd: _,\n onClick: D,\n children: [Re(\"div\", {\n className: [Ze[\"segment-background\"]].join(\" \"),\n children: [Re(\"div\", {\n className: Ze[\"segment-highlight-before\"],\n style: {\n width: t.beforeWidth + \"%\"\n }\n }), Re(\"div\", {\n className: Ze[\"segment-highlight-after\"],\n style: {\n width: t.leftWidth + \"%\"\n }\n })]\n }), !t.disabled && Re(\"div\", {\n className: [Ze.thumb, C.current ? Ze[\"thumb-drag\"] : \"\"].join(\" \"),\n ref: x,\n style: {\n left: `calc(${t.leftWidth}% - ${l}px)`\n }\n })]\n });\n});\nfunction OT(t) {\n const [e, i] = mt(0);\n t.rotate && Ut(() => {\n t.rotate && i(t.rotate.outerRotate);\n }, [t.rotate.outerRotate]);\n const r = Ot(null), o = Ot(null), [l, v] = mt(0);\n Ut(() => {\n r.current && (e === 90 || e === 270 ? v(r.current && r.current.getBoundingClientRect().width) : (e === 180 || e === 0) && v(r.current && r.current.getBoundingClientRect().height));\n }, [r, t.beforeWidth, t.leftWidth]);\n const E = Ws(() => (100 - t.leftWidth) / 100 * l, [t.leftWidth, l, o]), [C, x] = mt(!1), g = () => {\n x(!0);\n }, D = (p) => {\n p.preventDefault();\n const d = p instanceof MouseEvent ? p.clientX : p.changedTouches[0].clientX, u = p instanceof MouseEvent ? p.clientY : p.changedTouches[0].clientY, U = r.current, w = r.current;\n if ((C || p instanceof PointerEvent || Si && p instanceof MouseEvent) && U && w) {\n let {\n top: S,\n left: R,\n right: z\n } = U.getBoundingClientRect();\n if (S = Math.ceil(S), d < R || d > z)\n x(!1);\n else {\n let W = 0;\n const {\n top: fe,\n left: q,\n width: ve,\n height: Ae\n } = w.getBoundingClientRect();\n e === 90 ? W = parseFloat(((ve - (d - q)) / ve).toFixed(2)) : e === 180 ? W = parseFloat(((Ae - (u - fe)) / Ae).toFixed(2)) : e === 270 ? W = parseFloat(((d - q) / ve).toFixed(2)) : e === 0 && (W = parseFloat(((u - fe) / Ae).toFixed(2))), t.onChange && t.onChange(1 - W);\n }\n }\n }, _ = () => {\n x(!1);\n }, m = () => {\n x(!1);\n };\n return Re(\"div\", {\n \"data-kp-role\": t[\"data-kp-role\"],\n className: [Ze[\"segmented-vertical-track\"], t.className].join(\" \"),\n style: {\n cursor: Si ? \"default\" : \"pointer\"\n },\n ref: r,\n onMouseUp: _,\n onMouseLeave: m,\n onMouseDown: g,\n onMouseMove: D,\n onTouchStart: g,\n onTouchMove: D,\n onTouchEnd: m,\n onClick: D,\n children: [Re(\"div\", {\n className: Ze[\"segment-vertical-background\"],\n children: [Re(\"div\", {\n className: Ze[\"segment-vertical-highlight-before\"],\n style: {\n height: t.beforeWidth + \"%\"\n }\n }), Re(\"div\", {\n className: Ze[\"segment-vertical-highlight-after\"],\n style: {\n height: t.leftWidth + \"%\"\n }\n })]\n }), Re(\"div\", {\n className: Ze[\"thumb-vertical\"],\n ref: o,\n style: {\n top: E + \"px\"\n }\n })]\n });\n}\nconst NT = Gs(function(t) {\n var e, i, r;\n const {\n disabled: o,\n player: l,\n controls: v\n } = t, E = Ot(null);\n Ut(() => {\n E.current && t.videoInteractive && (E.current.insertAdjacentElement(\"afterbegin\", t.videoInteractive), t.videoInteractive.onclick = t.onClick, t.videoInteractive.ondblclick = t.onDbClick);\n }, []);\n const [C, x] = mt(null), g = (V) => {\n const ne = V * t.duration;\n x(ne), t.onSeek(ne), k(V);\n }, D = () => {\n Oe.current || rt();\n }, _ = Ws(() => {\n let V = t.duration;\n return t.duration === 1 / 0 && t.buffered[0] && t.buffered[0][1] && (V = t.buffered[0][1]), (C || t.currentTime) / V * 100 || 0;\n }, [t.currentTime, t.duration, t.buffered, C]);\n Ut(() => x(null), [t.currentTime]);\n const [m, p] = mt(0);\n Ut(() => t.buffered[0] && p((t.buffered[0][1] || 0) / t.duration * 100), [t.duration, t.buffered, t.duration]);\n const d = () => {\n w(!1), q(!1), P(!1), z(!1), je(!1);\n };\n Ut(() => {\n d();\n }, [t.error]);\n const u = (V) => {\n d(), V(!0);\n }, [U, w] = mt(!1);\n Ut(() => {\n t.showPanel || w(!1);\n }, [t.showPanel]);\n const S = (V) => V ? u(w) : w(!1), [R, z] = mt(!1), W = (V) => V ? u(z) : z(!1), [fe, q] = mt(!1), ve = (V) => V ? u(q) : q(!1), [Ae, P] = mt(!1), Me = (V) => V ? u(P) : P(!1), [Ie, je] = mt(!1), ke = Ot(null), H = (V) => V ? u(je) : je(!1), ie = (V) => {\n w(!1), ke.current && (ke.current === V.target || ke.current.contains(V.target)) || t.onClickVolumeButton();\n }, [ye, we] = mt(\"\"), J = Ot(0), le = () => {\n J.current && (clearTimeout(J.current), J.current = 0);\n };\n Ut(() => (ye && (le(), J.current = +setTimeout(() => {\n we(\"\");\n }, 3e3)), () => {\n le();\n }), [ye]), Ut(() => {\n t.muted ? t.duration > 0 && we(t.text(Dt.CURRENTLY_MUTED)) : we(`${t.text(Dt.CURRENT_VOLUME)}:${Math.floor(t.volume * 100)}`);\n }, [t.volume]), Di(() => {\n const V = () => {\n var te;\n (te = t.levels.find((Ee) => Ee.val === l.currentLevel)) != null && te.label && we(`${t.text(Dt.SWITCHING_TO_VIDEO)} ${t.levels.find((Ee) => Ee.val === l.currentLevel).label}`);\n }, ne = () => {\n var te;\n (te = t.levels.find((Ee) => Ee.val === l.currentLevel)) != null && te.label && we(`${t.text(Dt.SWITCH_TO_VIDEO)} ${t.levels.find((Ee) => Ee.val === l.currentLevel).label} ${t.text(Dt.FAIL)}`);\n }, oe = () => {\n var te;\n (te = t.levels.find((Ee) => Ee.val === l.currentLevel)) != null && te.label && we(`${t.text(Dt.SWITCHED_TO_VIDEO)} ${t.levels.find((Ee) => Ee.val === l.currentLevel).label}`);\n };\n return l.on(ge.LEVEL_SWITCHING, V), l.on(ge.LEVEL_SWITCH_FAILED, ne), l.on(ge.LEVEL_SWITCH_PLAYING, oe), () => {\n l.off(ge.LEVEL_SWITCHING, V), l.off(ge.LEVEL_SWITCH_FAILED, ne), l.off(ge.LEVEL_SWITCH_PLAYING, oe);\n };\n }, [t.levels]), Ut(() => {\n const V = (oe) => {\n we(`${t.text(Dt.SWITCHING_TO_AUDIO)} ${t.audioLevels.find((te) => te.val === oe.level).label}`);\n }, ne = (oe) => {\n we(`${t.text(Dt.SWITCHED_TO_AUDIO)} ${t.audioLevels.find((te) => te.val === oe.level).label}`);\n };\n return l.on(ge.AUDIO_TRACKS_SWITCHING, V), l.on(ge.AUDIO_TRACKS_SWITCHED, ne), () => {\n l.off(ge.AUDIO_TRACKS_SWITCHING, V), l.off(ge.AUDIO_TRACKS_SWITCHED, ne);\n };\n }, [l, t.audioLevels]);\n const [me, he] = mt(\"\"), re = Ot(null), Se = Ot(null), Pe = Ot(null), Xe = Ot(0), Oe = Ot(!1), st = Ot(!1), ze = () => {\n Xe.current && (clearTimeout(Xe.current), Xe.current = 0);\n }, rt = () => {\n ze(), st.current = !1, Pe.current && (Pe.current.style.visibility = \"hidden\", Pe.current.style.display = \"block\");\n };\n Ut(() => {\n (R || Ae || fe) && rt();\n }, [R, Ae, fe]);\n const Fe = (V) => {\n Oe.current = !1, V || rt();\n }, G = (V, ne, oe, te, Ee) => {\n var xe;\n if (V.style.visibility = \"hidden\", V.style.display = \"block\", !(!st.current || !(ne && t.duration > 0 && !((xe = t.rotate) != null && xe.outerRotate))) && ne) {\n he(Yl(oe, t.duration >= 3600)), V.style.backgroundImage = `url(${ne.url})`, V.style.width = `${ne.w}px`, V.style.height = `${ne.h}px`, V.style.backgroundPosition = `-${ne.x}px -${ne.y}px`;\n const {\n width: K\n } = V.getBoundingClientRect();\n te = te - K / 2, te < 0 ? te = 0 : te > Ee - K && (te = Ee - K), V.style.transform = `translateX(${te}px)`, V.style.visibility = \"visible\";\n }\n }, k = (V) => {\n var ne;\n if (!((ne = t.preview) != null && ne.hasPreview) || R || Ae || fe)\n return;\n const oe = Se.current, te = E.current, Ee = t.duration, xe = t.preview, K = re.current;\n if (!oe || !te || !Number.isFinite(Ee) || !xe || !K)\n return;\n const {\n left: Z,\n width: Y\n } = oe.getBoundingClientRect(), {\n left: _e,\n width: ee\n } = te.getBoundingClientRect();\n let Ve = V * Ee;\n Ve < 0 && (Ve = 0), Ve > t.duration && (Ve = Ee);\n const ce = xe.getImgByTime(Ve), qe = Z - _e + Y * V, Ce = Pe.current;\n if (!st.current && !Xe.current) {\n Xe.current = +setTimeout(() => {\n st.current = !0, Xe.current = 0, ce && Pe.current && G(Pe.current, ce, Ve, qe, ee);\n }, 300);\n return;\n }\n Ce && ce && G(Ce, ce, Ve, qe, ee);\n }, F = (V, ne) => {\n Oe.current = !0, ne || k(V);\n }, I = Ot(null);\n return Ut(() => {\n const V = t.danmakuControls();\n I.current && V && (t.dankamuControlsActive ? I.current.appendChild(V) : I.current.innerHTML = \"\");\n }, [t.dankamuControlsActive]), Ut(() => () => {\n ze(), le();\n }, []), Re(\"div\", {\n ref: E,\n \"data-kp-role\": \"panel\",\n className: [t.className || \"\", Ze.panel].join(\" \"),\n onMouseDown: t.onMouseDown,\n onMouseUp: t.onMouseUp,\n onTouchStart: t.onTouchStart,\n onTouchEnd: t.onTouchEnd,\n onTouchMove: t.onTouchMove,\n onMouseMove: t.onMouseMove,\n onMouseLeave: (V) => {\n z(!1), t.onMouseLeave(V);\n },\n style: t.style,\n children: [v && t.error && Re(kT, {\n text: t.text,\n onClickRefresh: t.onClickRefresh,\n code: t.error.code,\n message: t.error.message\n }), v && Re(\"div\", {\n style: {\n opacity: t.showPanel && !(Si && t.error) ? 1 : 0\n },\n \"data-kp-role\": \"bottom-controls\",\n className: Ze[\"bottom-controls\"],\n children: [((e = t.preview) == null ? void 0 : e.hasPreview) && t.duration > 0 && !((i = t.rotate) != null && i.outerRotate) && Re(\"div\", {\n ref: Pe,\n className: Ze.preview,\n children: Re(\"div\", {\n className: Ze[\"preview-time\"],\n children: me\n })\n }), t.showTime && Re(\"div\", {\n className: Ze[\"time-display-wrapper\"],\n children: [Re(\"div\", {\n children: Yl(t.currentTime, t.duration >= 3600)\n }), t.duration > 0 && t.duration !== 1 / 0 && t.showTime && Re(\"div\", {\n children: Yl(t.duration, t.duration >= 3600)\n })]\n }), t.showProgress && Re(DT, {\n ref: Se,\n rotate: t.rotate,\n \"data-kp-role\": \"timeline\",\n disabled: o,\n className: Ze.timeline,\n beforeWidth: m,\n leftWidth: _,\n onChange: g,\n onChangeEnd: D,\n onMouseLeave: Fe,\n onMouseMove: F\n }), Re(\"div\", {\n ref: re,\n className: Ze[\"button-panel\"],\n children: [Re(\"div\", {\n className: Ze[\"button-panel-left\"],\n children: [Re(Nr, {\n icon: t.paused ? (V) => Re(ZA, {\n color: oi(V)[0],\n className: Ze[\"panel-button-icon\"]\n }) : (V) => Re(QA, {\n color: oi(V)[0],\n className: Ze[\"panel-button-icon\"]\n }),\n color: (V) => oi(V)[0],\n onClick: t.onClickPlayButton,\n disabled: o,\n className: Ze[\"panel-button-margins-right\"],\n tip: t.paused ? t.text(Dt.PLAY) : t.text(Dt.PAUSE),\n lowTipPos: !t.showProgress,\n \"data-kp-role\": \"play-btn\"\n }), t.showRefresh && Re(Nr, {\n icon: (V) => Re(V0, {\n color: oi(V)[0],\n className: Ze[\"panel-button-icon\"]\n }),\n color: (V) => oi(V)[0],\n onClick: t.onClickRefresh,\n tip: t.text(Dt.REFRESH),\n lowTipPos: !t.showProgress,\n disabled: o,\n \"data-kp-role\": \"refresh-btn\"\n }), t.leftItems && t.leftItems.map((V) => Re(Nr, {\n \"data-kp-role\": \"left-btn\",\n onClick: V.handle,\n className: Ze[\"panel-button-margins-right\"],\n icon: V.icon,\n disabled: o,\n color: (ne) => oi(ne)[0],\n tip: V.tip ? V.tip() : \"\",\n lowTipPos: !t.showProgress\n }))]\n }), Re(\"div\", {\n ref: I,\n className: Ze[\"button-panel-center\"]\n }), Re(\"div\", {\n className: Ze[\"button-panel-right\"],\n children: [t.audioLevels.length > 1 && !Si && Re(Nr, {\n text: t.audioLevels.find((V) => V.val === t.currentAudioLevel).label,\n setShowChildren: Me,\n isChildrenShow: Ae,\n className: Ze[\"panel-button-margins-left\"],\n color: (V) => oi(V)[0],\n children: Ae && Re(\"div\", {\n className: Ze[\"bottom-popup-layer\"],\n children: Re(\"div\", {\n className: [Ze[\"panel-playback-list\"], t.showProgress ? \"\" : Ze[\"bottom-popup-layer-low-pos\"]].join(\" \"),\n children: t.audioLevels.map((V) => Re(\"div\", {\n className: Ze[\"playback-rate\"],\n onClick: () => {\n t.onChangeAudioLevel(V.val), P(!1);\n },\n children: Re(\"div\", {\n children: V.label\n })\n }))\n })\n })\n }), t.levels.length > 1 && !Si && Re(Nr, {\n text: t.levels.find((V) => V.val === t.currentLevel).label,\n setShowChildren: ve,\n isChildrenShow: fe,\n className: Ze[\"panel-button-margins-left\"],\n color: (V) => oi(V)[0],\n children: fe && Re(\"div\", {\n className: Ze[\"bottom-popup-layer\"],\n children: Re(\"div\", {\n className: [Ze[\"panel-playback-list\"], t.showProgress ? \"\" : Ze[\"bottom-popup-layer-low-pos\"]].join(\" \"),\n children: t.levels.map((V) => Re(\"div\", {\n className: Ze[\"playback-rate\"],\n onClick: () => {\n t.onChangeLevel(V.val), q(!1);\n },\n children: Re(\"div\", {\n children: V.label\n })\n }))\n })\n })\n }), t.showPlaybackRate && Re(Nr, {\n \"data-kp-role\": \"play-rate\",\n text: t.playbackRate === 1 ? t.text(Dt.PLAYBACK_RATE_SHORT) : ((r = __.find((V) => V.val === t.playbackRate)) == null ? void 0 : r.label) || t.playbackRate.toString(),\n disabled: o,\n setShowChildren: W,\n isChildrenShow: R,\n className: Ze[\"panel-button-margins-left\"],\n color: (V) => oi(V)[0],\n children: R && Re(\"div\", {\n className: Ze[\"bottom-popup-layer\"],\n children: Re(\"div\", {\n className: [Ze[\"panel-playback-list\"], t.showProgress ? \"\" : Ze[\"bottom-popup-layer-low-pos\"]].join(\" \"),\n \"data-kp-role\": \"playrate-panel\",\n children: __.map((V) => Re(\"div\", {\n className: Ze[\"playback-rate\"],\n \"data-kp-role\": \"playrate-item\",\n onClick: () => {\n z(!1), t.onClickPlaybackRate(V.val);\n },\n children: Re(\"div\", {\n children: V.label\n })\n }))\n })\n })\n }), Re(Nr, {\n icon: t.muted ? (V) => Re(cT, {\n color: oi(V)[0],\n className: Ze[\"panel-button-icon\"]\n }) : (V) => Re(eT, {\n color: oi(V)[0],\n className: Ze[\"panel-button-icon\"]\n }),\n color: (V) => oi(V)[0],\n \"data-kp-role\": \"mute-btn\",\n setShowChildren: H,\n onClick: ie,\n className: Ze[\"panel-button-margins-left\"],\n disabled: o,\n children: !Si && Ie && Re(\"div\", {\n className: Ze[\"bottom-popup-layer\"],\n children: Re(\"div\", {\n className: [Ze[\"panel-volume-wrapper\"], t.showProgress ? \"\" : Ze[\"bottom-popup-layer-low-pos\"]].join(\" \"),\n ref: ke,\n \"data-kp-role\": \"volume-panel\",\n children: [Re(\"div\", {\n className: Ze[\"volume-text\"],\n children: Re(\"span\", {\n children: (t.volume * 100).toFixed(0)\n })\n }), Re(OT, {\n \"data-kp-role\": \"volume-track\",\n rotate: t.rotate,\n leftWidth: t.volume * 100,\n beforeWidth: t.volume * 100,\n onChange: t.onChangeVolume\n })]\n })\n })\n }), t.showPictureInPicture && Re(Nr, {\n icon: t.isInPicture ? (V) => Re(uT, {\n color: oi(V)[0],\n className: Ze[\"panel-button-icon\"]\n }) : (V) => Re(lT, {\n color: oi(V)[0],\n className: Ze[\"panel-button-icon\"]\n }),\n color: (V) => oi(V)[0],\n onClick: t.onClickPictureInPicture,\n disabled: o,\n tip: t.isInPicture ? t.text(Dt.EXIT_PICTURE_IN_PICTURE) : t.text(Dt.PICTURE_IN_PICTURE),\n lowTipPos: !t.showProgress,\n className: Ze[\"panel-button-margins-left\"],\n \"data-kp-role\": \"picture-in-picture-btn\"\n }), !t.isFullscreen && Re(Nr, {\n icon: t.isWindowFullscreen ? (V) => Re(sT, {\n color: oi(V)[0],\n className: Ze[\"panel-button-icon\"]\n }) : (V) => Re(aT, {\n color: oi(V)[0],\n className: Ze[\"panel-button-icon\"]\n }),\n color: (V) => oi(V)[0],\n onClick: t.onClickWindowFullscreenButton,\n disabled: o,\n tip: t.isWindowFullscreen ? t.text(Dt.EXIT_WINDOW_FULLSCREEN) : t.text(Dt.WINDOW_FULLSCREEN),\n lowTipPos: !t.showProgress,\n className: Ze[\"panel-button-margins-left\"],\n \"data-kp-role\": \"window-fullscreen-btn\",\n resetOnClick: !0\n }), t.showFullScreen && !Si && Re(Nr, {\n icon: t.isFullscreen ? (V) => Re(nT, {\n color: oi(V)[0],\n className: Ze[\"panel-button-icon\"]\n }) : (V) => Re(rT, {\n color: oi(V)[0],\n className: Ze[\"panel-button-icon\"]\n }),\n color: (V) => oi(V)[0],\n onClick: t.onClickFullscreenButton,\n disabled: o,\n tip: t.isFullscreen ? t.text(Dt.EXIT_FULLSCREEN) : t.text(Dt.FULLSCREEN),\n lowTipPos: !t.showProgress,\n className: Ze[\"panel-button-margins-left\"],\n \"data-kp-role\": \"fullscreen-btn\",\n resetOnClick: !0\n }), Si && Re(Nr, {\n icon: (V) => Re(oT, {\n color: oi(V)[0],\n className: Ze[\"panel-button-icon\"]\n }),\n color: (V) => oi(V)[0],\n \"data-kp-role\": \"overflow-btn\",\n onClick: () => S(!U),\n className: Ze[\"panel-button-margins-left\"],\n disabled: o\n }), Si && Re(IT, {\n className: Ze.overflow + \" \" + (U ? \"\" : Ze.closed),\n \"data-kp-role\": \"overflow\",\n text: t.text,\n overflowItems: t.overflowItems,\n levels: t.levels,\n audioLevels: t.audioLevels,\n currentLevel: t.currentLevel,\n currentAudioLevel: t.currentAudioLevel,\n playbackRate: t.playbackRate,\n showPlaybackRate: t.showPlaybackRate,\n showPictureInPicture: t.showPictureInPicture,\n showOverflow: U,\n onClickPlaybackRate: (V) => {\n w(!1), t.onClickPlaybackRate(V);\n },\n onClickPictureInPicture: () => {\n w(!1), t.onClickPictureInPicture();\n },\n onChangeLevel: (V) => {\n w(!1), t.onChangeLevel(V);\n },\n onChangeAudioLevel: (V) => {\n w(!1), t.onChangeAudioLevel(V);\n },\n onClickItem: () => {\n w(!1);\n }\n })]\n })]\n })]\n })]\n });\n}), vf = \"ui-controls\";\nfunction PT(t) {\n var e, i, r;\n const {\n player: o,\n text: l\n } = t, v = () => {\n o && (o.loop = !o.loop);\n }, E = () => {\n o && o.emit(ge.CLICK_NEXT);\n }, C = () => {\n m.current && (m.current.isShow = !m.current.isShow);\n }, x = () => {\n p.current && (p.current.isMirror = !p.current.isMirror);\n }, g = () => {\n d.current && (d.current.innerRotate = d.current.innerRotate + 90);\n }, D = (Q, ae, pe) => {\n const Le = Q.findIndex((Ue) => Ue.id === pe.id);\n Le >= 0 && (Q.splice(Le, 1), ae([...Q]));\n }, _ = (Q, ae, pe, Le) => {\n const Ue = Q.findIndex((He) => He.id === pe.id);\n Ue < 0 ? (typeof Le > \"u\" ? Q.push(pe) : Q.splice(Le, 0, pe), ae([...Q])) : typeof Le == \"number\" && Le !== Ue && (Q.splice(Ue, 1), Q.splice(Le, 0, pe), ae([...Q]));\n }, m = Ot(o.getPluginInstance(Pv)), p = Ot(void 0), d = Ot(void 0), u = Ot(o.getPluginInstance(Mv)), U = Ot(o.getPluginInstance(Bv)), w = Ot(o.getPluginInstance(cd)), S = Ot(void 0), R = Ot({\n id: Gn.LOOP,\n name: l(Dt.LOOP),\n handle: v,\n isChecked: !1,\n icon: (Q) => o != null && o.loop ? Re(iT, {\n color: oi(Q)[0],\n className: Ze[\"panel-button-icon\"]\n }) : Re(tT, {\n color: oi(Q)[0],\n className: Ze[\"panel-button-icon\"]\n }),\n tip: () => o != null && o.loop ? l(Dt.TURN_OFF_LOOP) : l(Dt.TURN_ON_LOOP)\n }), z = Ot({\n id: Gn.PLAY_INFO,\n name: l(Dt.PLAY_INFO),\n handle: C,\n isChecked: !1\n }), W = Ot({\n id: Gn.MIRROR,\n name: l(Dt.MIRROR_IMAGE),\n handle: x,\n isChecked: !1\n }), fe = Ot({\n id: Gn.ROTATE,\n name: l(Dt.ROTATE),\n handle: g,\n isChecked: !1\n }), q = Ot({\n id: Gn.NEXT,\n name: l(Dt.ROTATE),\n handle: E,\n isChecked: !1,\n icon: (Q) => Re(JA, {\n color: oi(Q)[0],\n className: Ze[\"panel-button-icon\"]\n }),\n tip: () => l(Dt.NEXT)\n }), [ve, Ae] = mt([{\n id: Gn.VERSION,\n name: ci.packVersion,\n handle: () => {\n },\n isChecked: !1\n }]), [P, Me] = mt([]), [Ie, je] = mt([]);\n Ut(() => {\n m.current && (z.current.isChecked = m.current.isShow, Me([...P]));\n }, [(e = m.current) == null ? void 0 : e.isShow]), Ut(() => {\n R.current.isChecked = o.loop, Me([...P]);\n }, [o.loop]), Ut(() => {\n p.current && (W.current.isChecked = p.current.isMirror, Me([...P]));\n }, [(i = p.current) == null ? void 0 : i.isMirror]), Ut(() => {\n d.current && (fe.current.isChecked = d.current.innerRotate !== 0, Me([...P]));\n }, [(r = d.current) == null ? void 0 : r.innerRotate]), Di(() => {\n setTimeout(() => {\n var He;\n S.current = (He = w.current) == null ? void 0 : He.getControlPanelDom();\n }, 0), m.current && (z.current.isChecked = m.current.isShow, ve.push(z.current), P.push(z.current)), p.current && (W.current.isChecked = p.current.isMirror, ve.push(W.current), P.push(W.current)), d.current && (ve.push(fe.current), P.push(fe.current));\n const Q = () => {\n o.showNext ? _(Ie, je, q.current) : D(Ie, je, q.current);\n }, ae = () => {\n }, pe = (He) => {\n }, Le = (He) => {\n U.current && (He.stereoType === 1 ? (d.current && (D(ve, Ae, fe.current), D(P, Me, fe.current)), p.current && (D(ve, Ae, W.current), D(P, Me, W.current))) : (d.current && (_(ve, Ae, fe.current), _(P, Me, fe.current)), p.current && (_(ve, Ae, W.current), _(P, Me, W.current))));\n }, Ue = () => {\n c(!1);\n };\n return o.on(ge.ATTRIBUTE_CHANGE_SRC, ae), o.on(ge.ATTRIBUTE_CHANGE_SHOW_NEXT, Q), o.on(ge.REPORT, pe), o.on(ge.MANIFEST_PARSED, Le), document.addEventListener(\"click\", Ue), () => {\n o.off(ge.ATTRIBUTE_CHANGE_SRC, ae), o.off(ge.ATTRIBUTE_CHANGE_SHOW_NEXT, Q), o.off(ge.REPORT, pe), o.off(ge.REPORT, Le), document.removeEventListener(\"click\", Ue), S.current = void 0;\n };\n }, []);\n const [ke, H] = mt([]), ie = Ot(null);\n Ut(() => {\n ie.current && t.videoLayer && ie.current.insertAdjacentElement(\"afterbegin\", t.videoLayer);\n }, []);\n const [ye, we] = mt(!!o.controls);\n Di(() => {\n const Q = () => {\n Be.i(vf, \"controls change\", o.controls), we(!!o.controls);\n };\n return o.on(ge.ATTRIBUTE_CHANGE_CONTROLS, Q), () => {\n o.off(ge.ATTRIBUTE_CHANGE_CONTROLS, Q);\n };\n }, []), Di(() => {\n const Q = () => {\n var ae, pe, Le;\n return ((ae = o.buffered) == null ? void 0 : ae.length) && H([[(pe = o.buffered) == null ? void 0 : pe.start(0), (Le = o.buffered) == null ? void 0 : Le.end(0)]]);\n };\n return o.on(ge.PROGRESS, Q), () => o.off(ge.PROGRESS, Q);\n }, []);\n const [J, le] = mt(o.currentTime || 0);\n Di(() => {\n const Q = () => le(o.currentTime);\n return o.on(ge.TIMEUPDATE, Q), () => o.off(ge.TIMEUPDATE, Q);\n }, []);\n const [me, he] = mt(o.duration || 0);\n Di(() => {\n const Q = () => he(o.duration);\n return o.on(ge.DURATIONCHANGE, Q), o.on(ge.LOADSTART, Q), () => {\n o.off(ge.DURATIONCHANGE, Q), o.off(ge.LOADSTART, Q);\n };\n }, []);\n const [re, Se] = mt(o.muted), [Pe, Xe] = mt(o.volume);\n Di(() => {\n const Q = () => {\n Se(o.muted || o.volume === 0), Xe(o.volume);\n };\n return o.on(ge.VOLUMECHANGE, Q), o.on(ge.PLAYING, Q), () => {\n o.off(ge.VOLUMECHANGE, Q), o.off(ge.PLAYING, Q);\n };\n }, []);\n const [Oe, st] = mt(!1);\n Di(() => {\n const Q = () => st(!0), ae = () => st(!1);\n return o.on(ge.WAITING, Q), o.on(ge.PLAY, Q), o.on(ge.SEEKING, Q), o.on(ge.PLAYING, ae), o.on(ge.SEEKED, ae), o.on(ge.TIMEUPDATE, ae), o.on(ge.ERROR, ae), () => {\n o.off(ge.WAITING, Q), o.off(ge.PLAY, Q), o.off(ge.SEEKING, Q), o.off(ge.PLAYING, ae), o.off(ge.SEEKED, ae), o.off(ge.TIMEUPDATE, ae), o.off(ge.ERROR, ae);\n };\n }, []);\n const [ze, rt] = mt(o.paused), [Fe, G] = mt(!0);\n Di(() => {\n const Q = () => {\n rt(o.paused), G(!1);\n };\n return o.on(ge.PAUSE, Q), o.on(ge.CANPLAY, Q), o.on(ge.PLAYING, Q), () => {\n o.off(ge.PAUSE, Q), o.off(ge.CANPLAY, Q), o.off(ge.PLAYING, Q);\n };\n }, []);\n const [k, F] = mt(!1), [I, V] = mt(!1);\n Di(() => {\n const Q = ({\n isFull: ae,\n type: pe\n }) => {\n pe === \"window\" ? V(ae) : (F(ae), ae || V(!1));\n };\n return F(o.isFullscreen(tr.SYSTEM)), V(o.isFullscreen(tr.WINDOW)), o.on(ge.FULLSCREEN_CHANGE, Q), () => {\n o.off(ge.FULLSCREEN_CHANGE, Q);\n };\n }, []);\n const [ne, oe] = mt(!!o.canvas);\n Di(() => {\n const Q = () => {\n oe(!!o.canvas);\n };\n return o.on(ge.VIDEO_RENDERER_CHANGE, Q), o.on(ge.LOADEDDATA, Q), () => {\n o.off(ge.VIDEO_RENDERER_CHANGE, Q), o.off(ge.LOADEDDATA, Q);\n };\n }, []), Ut(() => {\n const Q = o.getMainContainer();\n Q && (k ? Q.style.display = \"flex\" : Q.style.display = \"\");\n }, [k]);\n const [te, Ee] = mt(o.playbackRate);\n Di(() => {\n const Q = () => Ee(o.playbackRate);\n return o.on(ge.RATECHANGE, Q), () => {\n o.off(ge.RATECHANGE, Q);\n };\n }, [o]);\n const [xe, K] = mt(!1);\n Di(() => {\n const Q = () => K(!0), ae = () => K(!1);\n return o.on(ge.ENTER_PICTURE_IN_PICTURE, Q), o.on(ge.LEAVE_PICTURE_IN_PICTURE, ae), () => {\n o.off(ge.ENTER_PICTURE_IN_PICTURE, Q), o.off(ge.LEAVE_PICTURE_IN_PICTURE, ae);\n };\n }, [o]);\n const [Z, Y] = mt(!1);\n Di(() => {\n const Q = () => {\n Y(!1);\n }, ae = (pe) => {\n pe.type === \"mediaInfo\" && !pe.value.isLive && Y(!0);\n };\n return o.on(ge.ATTRIBUTE_CHANGE_SRC, Q), o.on(ge.REPORT, ae), () => {\n o.off(ge.ATTRIBUTE_CHANGE_SRC, Q), o.off(ge.REPORT, ae);\n };\n }, []);\n const [_e, ee] = mt(o.loop);\n Di(() => {\n const Q = () => {\n ee(o.loop);\n };\n return o.on(ge.ATTRIBUTE_CHANGE_LOOP, Q), () => {\n o.off(ge.ATTRIBUTE_CHANGE_LOOP, Q);\n };\n }, []);\n const [Ve, ce] = mt(-1), [qe, Ce] = mt(-1), [Ye, tt] = mt([]), [Ht, $t] = mt([]);\n Di(() => {\n const Q = (ae) => {\n Be.i(vf, \"set levels\");\n const pe = [];\n if (ae.levels.forEach((Ue, He) => {\n let Ge = Ue.qualityLabel || Ue.qualityType;\n Ge || (Ue.width && Ue.height ? Ge = Math.min(Ue.width, Ue.height) + \"P\" : Ge = He.toString());\n const Qe = Ue.qualityType;\n pe.push({\n val: He,\n label: Ge,\n type: Qe\n });\n }), pe.reverse(), ce(ae.currentLevel), ae.auto && pe.length > 1 && (pe.unshift({\n val: -1,\n label: t.text(Dt.AUTO),\n type: \"\"\n }), ce(-1)), tt(pe), !ae.audioTracks)\n return;\n const Le = [];\n ae.audioTracks.forEach((Ue, He) => {\n Le.push({\n val: He,\n label: Ue.qualityLabel || Ue.qualityType || Ue.lang || He.toString(),\n type: Ue.qualityType\n });\n }), Ht.reverse(), $t(Le), Ce(ae.audioTrack || 0);\n };\n return o.on(ge.MANIFEST_PARSED, Q), () => {\n o.off(ge.MANIFEST_PARSED, Q);\n };\n }, [o]);\n const [xt] = mt(o.isFullscreenAvailable()), [Ct, Et] = mt(!1);\n Di(() => {\n const Q = (pe) => {\n pe.type === \"mediaInfo\" && Et(!!pe.value.isLive);\n }, ae = (pe) => {\n Et(!!pe.isLive);\n };\n return o.on(ge.REPORT, Q), o.on(ge.MANIFEST_PARSED, ae), () => {\n o.off(ge.REPORT, Q), o.off(ge.MANIFEST_PARSED, ae);\n };\n }, []);\n const [bi, yi] = mt();\n Di(() => {\n const Q = (pe) => {\n yi(pe);\n }, ae = () => {\n yi(void 0);\n };\n return o.on(ge.ERROR, Q), o.on(ge.LOADEDDATA, ae), () => {\n o.off(ge.ERROR, Q), o.off(ge.LOADEDDATA, ae);\n };\n }, []);\n const [Ei, wi] = mt(!0), lt = Ot(0), fi = () => {\n lt.current && (clearTimeout(lt.current), lt.current = 0);\n }, Zt = () => {\n fi(), lt.current = +setTimeout(() => {\n if (ie.current && ie.current.contains(document.activeElement)) {\n Zt();\n return;\n }\n !o.paused && wi(!1);\n }, 3e3);\n }, pi = () => {\n fi(), wi(!0);\n };\n Di(() => (Zt(), o.on(ge.PAUSE, pi), o.on(ge.ERROR, pi), () => {\n o.off(ge.PAUSE, pi), o.off(ge.ERROR, pi);\n }), []);\n const Bt = Ws(() => !o.src || !!bi, [o.src, bi]), gt = () => {\n o.paused ? o.play() : o.pause();\n }, bt = () => {\n o.muted = !o.muted, o.volume = o.muted ? 0 : 1;\n }, Wt = () => {\n o.isFullscreen(tr.SYSTEM) ? o.exitFullscreen() : o.requestFullscreen(tr.SYSTEM);\n }, Yi = () => {\n o.isFullscreen(tr.WINDOW) ? o.exitFullscreen() : o.requestFullscreen(tr.WINDOW);\n }, Fi = (Q) => {\n o.duration !== 1 / 0 && (o.currentTime = Q, le(o.currentTime));\n }, Cr = (Q) => {\n o.muted = !1, o.volume = Q;\n }, Vr = () => {\n var Q;\n !o.controls || jr.current || (Zt(), !Bt && !((Q = U.current) != null && Q.active) && gt());\n }, or = () => {\n var Q;\n o.controls && (Wt(), window.getSelection ? (Q = window.getSelection()) == null || Q.removeAllRanges() : (\n //@ts-ignore\n document.selection.empty()\n ));\n }, gr = (Q) => {\n var ae;\n wi(!0), pi(), Zt(), (ae = U.current) != null && ae.active && Oi && (Q.preventDefault(), Mn(Q.clientX, Q.clientY));\n }, _r = () => {\n !o.paused && !bi && wi(!1), Fr(void 0);\n }, [Oi, Fr] = mt(void 0), Qt = (Q) => {\n var ae;\n (ae = U.current) != null && ae.active && Fr({\n vrX: U.current.xAxis,\n vrY: U.current.yAxis,\n interactiveX: Q.clientX,\n interactiveY: Q.clientY\n });\n }, Xi = () => {\n Fr(void 0);\n }, Vt = (Q) => {\n var ae;\n (ae = U.current) != null && ae.active && Fr({\n vrX: U.current.xAxis,\n vrY: U.current.yAxis,\n interactiveX: Q.changedTouches[0].clientX,\n interactiveY: Q.changedTouches[0].clientY\n });\n }, Yt = () => {\n Fr(void 0);\n }, Zi = (Q) => {\n var ae;\n wi(!0), pi(), Zt(), (ae = U.current) != null && ae.active && Oi && (Mn(Q.changedTouches[0].clientX, Q.changedTouches[0].clientY), Q.preventDefault());\n }, Mn = (Q, ae) => {\n var pe;\n if ((pe = U.current) != null && pe.active && Oi) {\n const {\n width: Le,\n height: Ue\n } = t.container.getBoundingClientRect();\n U.current.yAxis = Oi.vrY - (Q - Oi.interactiveX) / Le * Math.PI / 2, U.current.xAxis = Oi.vrX + (ae - Oi.interactiveY) / Ue * Math.PI / 2;\n }\n }, ya = (Q) => {\n o.playbackRate = Q;\n }, kr = () => {\n document.pictureInPictureElement ? document.exitPictureInPicture() : o.requestPictureInPicture();\n }, Ea = () => {\n o.refresh(), yi(void 0);\n }, ji = (Q) => {\n o.currentLevel = Q, ce(o.currentLevel);\n }, br = (Q) => {\n o.audioTrack = Q, Ce(o.audioTrack);\n }, jr = Ot(null), [Qa, Ja] = mt(0), [es, mn] = mt(0), [Un, B] = mt(!1);\n Ut(() => {\n const Q = (ae) => {\n var pe;\n if (!((pe = jr.current) != null && pe.contains(ae.target))) {\n ae.preventDefault();\n let Le = 0, Ue = 0;\n B(!1), c(!0), setTimeout(() => {\n var He, Ge;\n let Qe = (He = t.container) == null ? void 0 : He.getBoundingClientRect(), ot = (Ge = jr.current) == null ? void 0 : Ge.getBoundingClientRect(), nt = Qe.width, ut = Qe.height, it = Qe.left, Ft = Qe.top, Lt = ot == null ? void 0 : ot.width, dt = ot == null ? void 0 : ot.height;\n Lt && dt && (Lt && ae.clientX + Lt >= it + nt ? Le = it + nt - Lt : Le = ae.clientX, ae.clientY + dt >= Ft + ut ? Ue = Ft + ut - dt : Ue = ae.clientY), Ja(Le - it + 5), mn(Ue - Ft + 5), B(!0);\n }, 0);\n }\n };\n return t.container.addEventListener(\"contextmenu\", Q), () => t.container.removeEventListener(\"contextmenu\", Q);\n }, []);\n const [y, c] = mt(!1), h = () => {\n c(!y);\n }, T = () => !!(w && o.disableDanmaku !== !0), O = () => {\n const Q = T(), ae = k || I, pe = t.options.danmakuControls, Le = t.options.danmakuControlsFull;\n $(!Si && Q && (ae ? Le === ua.PLAY_BAR : pe === ua.PLAY_BAR));\n const Ue = !Si && Q && (ae ? Le === ua.BOTTOM : pe === ua.BOTTOM);\n be(Ue);\n const He = S.current;\n He && Ue && X.current && w && (He.classList.add(Ze[\"sending-area-controls\"]), X.current.appendChild(He));\n }, [M, $] = mt(!1), X = Ot(null), [de, be] = mt(!1);\n return Ut(() => (o.on(ge.ATTRIBUTE_CHANGE_DANMAKU_CONTROLS_POS, O), o.on(ge.ATTRIBUTE_CHANGE_DANMAKU_CONTROLS_POS_FULLSCREEN, O), o.on(ge.ATTRIBUTE_CHANGE_DISABLE_DANMAKU, O), () => {\n o.off(ge.ATTRIBUTE_CHANGE_DANMAKU_CONTROLS_POS, O), o.off(ge.ATTRIBUTE_CHANGE_DANMAKU_CONTROLS_POS_FULLSCREEN, O), o.off(ge.ATTRIBUTE_CHANGE_DISABLE_DANMAKU, O);\n }), []), Ut(O, [k, I, Si, de]), Ut(() => () => {\n fi();\n }, []), Re(hn, {\n children: [Re(\"div\", {\n ref: ie,\n className: Ze[\"video-area\"],\n children: [ye && Oe && Re(RT, {\n text: t.text\n }), ye && y && !Si && ve && Re(xT, {\n ref: jr,\n contextMenuItems: ve,\n visible: Un,\n player: o,\n onChangeShowContextMenu: h,\n left: Qa,\n top: es\n }), Re(NT, {\n style: {},\n error: bi,\n controls: ye,\n dankamuControlsActive: M,\n danmakuControls: () => S.current,\n danmaku: w.current,\n videoInteractive: t.videoInteractive,\n rotate: d.current,\n preview: u.current,\n overflowItems: P,\n leftItems: Ie,\n buffered: ke,\n currentTime: J,\n duration: me,\n muted: re,\n paused: ze,\n volume: Pe,\n playbackRate: te,\n isInPicture: xe,\n isLoop: _e,\n isFullscreen: k,\n isWindowFullscreen: I,\n levels: Ye,\n audioLevels: Ht,\n currentLevel: Ve,\n currentAudioLevel: qe,\n showPanel: Ei,\n showPlaybackRate: !Ct || !!Si,\n showFullScreen: xt,\n showRefresh: Ct,\n showProgress: typeof o.showProgress > \"u\" ? !Ct : !Ct && o.showProgress,\n showTime: typeof o.showTime > \"u\" ? !0 : o.showTime,\n showPictureInPicture: !Si && o.isPictureInPictureAvailable() && !ne && !Fe,\n showLoop: Z,\n disabled: Bt,\n text: t.text,\n player: o,\n onClickPlayButton: gt,\n onClickVolumeButton: bt,\n onClickRefresh: Ea,\n onChangeVolume: Cr,\n onSeek: Fi,\n onClickFullscreenButton: Wt,\n onClickWindowFullscreenButton: Yi,\n onClick: Vr,\n onDbClick: or,\n onMouseMove: gr,\n onMouseLeave: _r,\n onMouseDown: Qt,\n onMouseUp: Xi,\n onTouchStart: Vt,\n onTouchEnd: Yt,\n onTouchMove: Zi,\n onClickPlaybackRate: ya,\n onClickPictureInPicture: kr,\n onChangeLevel: ji,\n onChangeAudioLevel: br\n })]\n }), de && Re(\"div\", {\n ref: X,\n className: Ze[\"sending-area\"]\n })]\n });\n}\nconst MT = \"cztv-controls\";\nlet G0 = class extends Fv {\n constructor() {\n super(), pr(this, \"_player\"), pr(this, \"container\"), pr(this, \"_videoInteractive\"), pr(this, \"_videoLayer\"), pr(this, \"_i18n\"), pr(this, \"_danmaku\"), pr(this, \"_adaptiveSize\", new YA()), pr(this, \"_options\", {}), pr(this, \"_getText\", (e) => {\n var i;\n return ((i = this._i18n) == null ? void 0 : i.text(this.getLabel(), e)) || LT[e] || \"\";\n }), pr(this, \"_onSrcChange\", () => {\n var e;\n if (!this.container)\n throw new Error(\"container is undefined\");\n const i = (e = this._player) == null ? void 0 : e.getMainContainer();\n i && this._videoLayer && (i == null || i.appendChild(this._videoLayer)), Xl(null, this.container), this._player && this._renderUI(this._player);\n }), Be.i(MT, `init. mobile:${Si}`);\n }\n beforeInstall(e) {\n this._player = e, this._i18n = e.getPluginInstance(Ov), this._danmaku = e.getPluginInstance(cd), e.on(ge.ATTRIBUTE_CHANGE_SRC, this._onSrcChange);\n }\n afterInstall(e, i) {\n if (this._player = e, !e)\n throw new Error(\"player is undefined\");\n const r = this._options;\n if (r.danmakuControls = !!this._danmaku && (i == null ? void 0 : i.danmakuControlsPos) || ua.NONE, r.danmakuControlsFull = !!this._danmaku && (i == null ? void 0 : i.danmakuControlsPosFullscreen) || ua.PLAY_BAR, this.container = e.createSubContainer(), this._videoInteractive = e.getVideoInteractiveLayer(), this._videoLayer = e.getVideoLayer(), !this.container)\n throw new Error(\"container is undefined\");\n this.container.className = Ze.controls, this._adaptiveSize.start(this.container), this._renderUI(e);\n }\n beforeUninstall() {\n this._adaptiveSize.stop(), this.container && Xl(null, this.container);\n }\n afterUninstall() {\n this._player && this._player.off(ge.ATTRIBUTE_CHANGE_SRC, this._onSrcChange);\n }\n _renderUI(e) {\n this.container && Xl(Re(PT, {\n player: e,\n options: this._options,\n container: this.container,\n videoLayer: this._videoLayer,\n videoInteractive: this._videoInteractive,\n text: this._getText\n }), this.container);\n }\n};\npr(G0, \"version\", \"1.1.0-alpha.0\");\nvar UT = Object.defineProperty, BT = (t, e, i) => e in t ? UT(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, fr = (t, e, i) => (BT(t, typeof e != \"symbol\" ? e + \"\" : e, i), i), ho, VT = new Uint8Array(16);\nfunction FT() {\n if (!ho && (ho = typeof crypto < \"u\" && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto < \"u\" && typeof msCrypto.getRandomValues == \"function\" && msCrypto.getRandomValues.bind(msCrypto), !ho))\n throw new Error(\"crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported\");\n return ho(VT);\n}\nconst jT = /^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;\nfunction zT(t) {\n return typeof t == \"string\" && jT.test(t);\n}\nvar Gi = [];\nfor (var eu = 0; eu < 256; ++eu)\n Gi.push((eu + 256).toString(16).substr(1));\nfunction HT(t) {\n var e = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 0, i = (Gi[t[e + 0]] + Gi[t[e + 1]] + Gi[t[e + 2]] + Gi[t[e + 3]] + \"-\" + Gi[t[e + 4]] + Gi[t[e + 5]] + \"-\" + Gi[t[e + 6]] + Gi[t[e + 7]] + \"-\" + Gi[t[e + 8]] + Gi[t[e + 9]] + \"-\" + Gi[t[e + 10]] + Gi[t[e + 11]] + Gi[t[e + 12]] + Gi[t[e + 13]] + Gi[t[e + 14]] + Gi[t[e + 15]]).toLowerCase();\n if (!zT(i))\n throw TypeError(\"Stringified UUID is invalid\");\n return i;\n}\nfunction $T(t, e, i) {\n t = t || {};\n var r = t.random || (t.rng || FT)();\n if (r[6] = r[6] & 15 | 64, r[8] = r[8] & 63 | 128, e) {\n i = i || 0;\n for (var o = 0; o < 16; ++o)\n e[i + o] = r[o];\n return e;\n }\n return HT(r);\n}\nvar WT = typeof globalThis < \"u\" ? globalThis : typeof window < \"u\" ? window : typeof global < \"u\" ? global : typeof self < \"u\" ? self : {}, Ms = {}, GT = {\n get exports() {\n return Ms;\n },\n set exports(t) {\n Ms = t;\n }\n};\n(function(t, e) {\n (function(i, r) {\n var o = \"1.0.33\", l = \"\", v = \"?\", E = \"function\", C = \"undefined\", x = \"object\", g = \"string\", D = \"major\", _ = \"model\", m = \"name\", p = \"type\", d = \"vendor\", u = \"version\", U = \"architecture\", w = \"console\", S = \"mobile\", R = \"tablet\", z = \"smarttv\", W = \"wearable\", fe = \"embedded\", q = 350, ve = \"Amazon\", Ae = \"Apple\", P = \"ASUS\", Me = \"BlackBerry\", Ie = \"Browser\", je = \"Chrome\", ke = \"Edge\", H = \"Firefox\", ie = \"Google\", ye = \"Huawei\", we = \"LG\", J = \"Microsoft\", le = \"Motorola\", me = \"Opera\", he = \"Samsung\", re = \"Sharp\", Se = \"Sony\", Pe = \"Xiaomi\", Xe = \"Zebra\", Oe = \"Facebook\", st = function(K, Z) {\n var Y = {};\n for (var _e in K)\n Z[_e] && Z[_e].length % 2 === 0 ? Y[_e] = Z[_e].concat(K[_e]) : Y[_e] = K[_e];\n return Y;\n }, ze = function(K) {\n for (var Z = {}, Y = 0; Y < K.length; Y++)\n Z[K[Y].toUpperCase()] = K[Y];\n return Z;\n }, rt = function(K, Z) {\n return typeof K === g ? Fe(Z).indexOf(Fe(K)) !== -1 : !1;\n }, Fe = function(K) {\n return K.toLowerCase();\n }, G = function(K) {\n return typeof K === g ? K.replace(/[^\\d\\.]/g, l).split(\".\")[0] : r;\n }, k = function(K, Z) {\n if (typeof K === g)\n return K = K.replace(/^\\s\\s*/, l), typeof Z === C ? K : K.substring(0, q);\n }, F = function(K, Z) {\n for (var Y = 0, _e, ee, Ve, ce, qe, Ce; Y < Z.length && !qe; ) {\n var Ye = Z[Y], tt = Z[Y + 1];\n for (_e = ee = 0; _e < Ye.length && !qe; )\n if (qe = Ye[_e++].exec(K), qe)\n for (Ve = 0; Ve < tt.length; Ve++)\n Ce = qe[++ee], ce = tt[Ve], typeof ce === x && ce.length > 0 ? ce.length === 2 ? typeof ce[1] == E ? this[ce[0]] = ce[1].call(this, Ce) : this[ce[0]] = ce[1] : ce.length === 3 ? typeof ce[1] === E && !(ce[1].exec && ce[1].test) ? this[ce[0]] = Ce ? ce[1].call(this, Ce, ce[2]) : r : this[ce[0]] = Ce ? Ce.replace(ce[1], ce[2]) : r : ce.length === 4 && (this[ce[0]] = Ce ? ce[3].call(this, Ce.replace(ce[1], ce[2])) : r) : this[ce] = Ce || r;\n Y += 2;\n }\n }, I = function(K, Z) {\n for (var Y in Z)\n if (typeof Z[Y] === x && Z[Y].length > 0) {\n for (var _e = 0; _e < Z[Y].length; _e++)\n if (rt(Z[Y][_e], K))\n return Y === v ? r : Y;\n } else if (rt(Z[Y], K))\n return Y === v ? r : Y;\n return K;\n }, V = {\n \"1.0\": \"/8\",\n \"1.2\": \"/1\",\n \"1.3\": \"/3\",\n \"2.0\": \"/412\",\n \"2.0.2\": \"/416\",\n \"2.0.3\": \"/417\",\n \"2.0.4\": \"/419\",\n \"?\": \"/\"\n }, ne = {\n ME: \"4.90\",\n \"NT 3.11\": \"NT3.51\",\n \"NT 4.0\": \"NT4.0\",\n 2e3: \"NT 5.0\",\n XP: [\"NT 5.1\", \"NT 5.2\"],\n Vista: \"NT 6.0\",\n 7: \"NT 6.1\",\n 8: \"NT 6.2\",\n \"8.1\": \"NT 6.3\",\n 10: [\"NT 6.4\", \"NT 10.0\"],\n RT: \"ARM\"\n }, oe = {\n browser: [\n [\n /\\b(?:crmo|crios)\\/([\\w\\.]+)/i\n // Chrome for Android/iOS\n ],\n [u, [m, \"Chrome\"]],\n [\n /edg(?:e|ios|a)?\\/([\\w\\.]+)/i\n // Microsoft Edge\n ],\n [u, [m, \"Edge\"]],\n [\n // Presto based\n /(opera mini)\\/([-\\w\\.]+)/i,\n // Opera Mini\n /(opera [mobiletab]{3,6})\\b.+version\\/([-\\w\\.]+)/i,\n // Opera Mobi/Tablet\n /(opera)(?:.+version\\/|[\\/ ]+)([\\w\\.]+)/i\n // Opera\n ],\n [m, u],\n [\n /opios[\\/ ]+([\\w\\.]+)/i\n // Opera mini on iphone >= 8.0\n ],\n [u, [m, me + \" Mini\"]],\n [\n /\\bopr\\/([\\w\\.]+)/i\n // Opera Webkit\n ],\n [u, [m, me]],\n [\n // Mixed\n /(kindle)\\/([\\w\\.]+)/i,\n // Kindle\n /(lunascape|maxthon|netfront|jasmine|blazer)[\\/ ]?([\\w\\.]*)/i,\n // Lunascape/Maxthon/Netfront/Jasmine/Blazer\n // Trident based\n /(avant |iemobile|slim)(?:browser)?[\\/ ]?([\\w\\.]*)/i,\n // Avant/IEMobile/SlimBrowser\n /(ba?idubrowser)[\\/ ]?([\\w\\.]+)/i,\n // Baidu Browser\n /(?:ms|\\()(ie) ([\\w\\.]+)/i,\n // Internet Explorer\n // Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon\n /(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale|qqbrowserlite|qq|duckduckgo)\\/([-\\w\\.]+)/i,\n // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ, aka ShouQ\n /(weibo)__([\\d\\.]+)/i\n // Weibo\n ],\n [m, u],\n [\n /(?:\\buc? ?browser|(?:juc.+)ucweb)[\\/ ]?([\\w\\.]+)/i\n // UCBrowser\n ],\n [u, [m, \"UC\" + Ie]],\n [\n /microm.+\\bqbcore\\/([\\w\\.]+)/i,\n // WeChat Desktop for Windows Built-in Browser\n /\\bqbcore\\/([\\w\\.]+).+microm/i\n ],\n [u, [m, \"WeChat(Win) Desktop\"]],\n [\n /micromessenger\\/([\\w\\.]+)/i\n // WeChat\n ],\n [u, [m, \"WeChat\"]],\n [\n /konqueror\\/([\\w\\.]+)/i\n // Konqueror\n ],\n [u, [m, \"Konqueror\"]],\n [\n /trident.+rv[: ]([\\w\\.]{1,9})\\b.+like gecko/i\n // IE11\n ],\n [u, [m, \"IE\"]],\n [\n /yabrowser\\/([\\w\\.]+)/i\n // Yandex\n ],\n [u, [m, \"Yandex\"]],\n [\n /(avast|avg)\\/([\\w\\.]+)/i\n // Avast/AVG Secure Browser\n ],\n [[m, /(.+)/, \"$1 Secure \" + Ie], u],\n [\n /\\bfocus\\/([\\w\\.]+)/i\n // Firefox Focus\n ],\n [u, [m, H + \" Focus\"]],\n [\n /\\bopt\\/([\\w\\.]+)/i\n // Opera Touch\n ],\n [u, [m, me + \" Touch\"]],\n [\n /coc_coc\\w+\\/([\\w\\.]+)/i\n // Coc Coc Browser\n ],\n [u, [m, \"Coc Coc\"]],\n [\n /dolfin\\/([\\w\\.]+)/i\n // Dolphin\n ],\n [u, [m, \"Dolphin\"]],\n [\n /coast\\/([\\w\\.]+)/i\n // Opera Coast\n ],\n [u, [m, me + \" Coast\"]],\n [\n /miuibrowser\\/([\\w\\.]+)/i\n // MIUI Browser\n ],\n [u, [m, \"MIUI \" + Ie]],\n [\n /fxios\\/([-\\w\\.]+)/i\n // Firefox for iOS\n ],\n [u, [m, H]],\n [\n /\\bqihu|(qi?ho?o?|360)browser/i\n // 360\n ],\n [[m, \"360 \" + Ie]],\n [\n /(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i\n ],\n [[m, /(.+)/, \"$1 \" + Ie], u],\n [\n // Oculus/Samsung/Sailfish/Huawei Browser\n /(comodo_dragon)\\/([\\w\\.]+)/i\n // Comodo Dragon\n ],\n [[m, /_/g, \" \"], u],\n [\n /(electron)\\/([\\w\\.]+) safari/i,\n // Electron-based App\n /(tesla)(?: qtcarbrowser|\\/(20\\d\\d\\.[-\\w\\.]+))/i,\n // Tesla\n /m?(qqbrowser|baiduboxapp|2345Explorer)[\\/ ]?([\\w\\.]+)/i\n // QQBrowser/Baidu App/2345 Browser\n ],\n [m, u],\n [\n /(metasr)[\\/ ]?([\\w\\.]+)/i,\n // SouGouBrowser\n /(lbbrowser)/i,\n // LieBao Browser\n /\\[(linkedin)app\\]/i\n // LinkedIn App for iOS & Android\n ],\n [m],\n [\n // WebView\n /((?:fban\\/fbios|fb_iab\\/fb4a)(?!.+fbav)|;fbav\\/([\\w\\.]+);)/i\n // Facebook App for iOS & Android\n ],\n [[m, Oe], u],\n [\n /safari (line)\\/([\\w\\.]+)/i,\n // Line App for iOS\n /\\b(line)\\/([\\w\\.]+)\\/iab/i,\n // Line App for Android\n /(chromium|instagram)[\\/ ]([-\\w\\.]+)/i\n // Chromium/Instagram\n ],\n [m, u],\n [\n /\\bgsa\\/([\\w\\.]+) .*safari\\//i\n // Google Search Appliance on iOS\n ],\n [u, [m, \"GSA\"]],\n [\n /headlesschrome(?:\\/([\\w\\.]+)| )/i\n // Chrome Headless\n ],\n [u, [m, je + \" Headless\"]],\n [\n / wv\\).+(chrome)\\/([\\w\\.]+)/i\n // Chrome WebView\n ],\n [[m, je + \" WebView\"], u],\n [\n /droid.+ version\\/([\\w\\.]+)\\b.+(?:mobile safari|safari)/i\n // Android Browser\n ],\n [u, [m, \"Android \" + Ie]],\n [\n /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\/v?([\\w\\.]+)/i\n // Chrome/OmniWeb/Arora/Tizen/Nokia\n ],\n [m, u],\n [\n /version\\/([\\w\\.\\,]+) .*mobile\\/\\w+ (safari)/i\n // Mobile Safari\n ],\n [u, [m, \"Mobile Safari\"]],\n [\n /version\\/([\\w(\\.|\\,)]+) .*(mobile ?safari|safari)/i\n // Safari & Safari Mobile\n ],\n [u, m],\n [\n /webkit.+?(mobile ?safari|safari)(\\/[\\w\\.]+)/i\n // Safari < 3.0\n ],\n [m, [u, I, V]],\n [\n /(webkit|khtml)\\/([\\w\\.]+)/i\n ],\n [m, u],\n [\n // Gecko based\n /(navigator|netscape\\d?)\\/([-\\w\\.]+)/i\n // Netscape\n ],\n [[m, \"Netscape\"], u],\n [\n /mobile vr; rv:([\\w\\.]+)\\).+firefox/i\n // Firefox Reality\n ],\n [u, [m, H + \" Reality\"]],\n [\n /ekiohf.+(flow)\\/([\\w\\.]+)/i,\n // Flow\n /(swiftfox)/i,\n // Swiftfox\n /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\/ ]?([\\w\\.\\+]+)/i,\n // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror/Klar\n /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\/([-\\w\\.]+)$/i,\n // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix\n /(firefox)\\/([\\w\\.]+)/i,\n // Other Firefox-based\n /(mozilla)\\/([\\w\\.]+) .+rv\\:.+gecko\\/\\d+/i,\n // Mozilla\n // Other\n /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\. ]?browser)[-\\/ ]?v?([\\w\\.]+)/i,\n // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Sleipnir/Obigo/Mosaic/Go/ICE/UP.Browser\n /(links) \\(([\\w\\.]+)/i\n // Links\n ],\n [m, u],\n [\n /(cobalt)\\/([\\w\\.]+)/i\n // Cobalt\n ],\n [m, [u, /master.|lts./, \"\"]]\n ],\n cpu: [\n [\n /(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\)]/i\n // AMD64 (x64)\n ],\n [[U, \"amd64\"]],\n [\n /(ia32(?=;))/i\n // IA32 (quicktime)\n ],\n [[U, Fe]],\n [\n /((?:i[346]|x)86)[;\\)]/i\n // IA32 (x86)\n ],\n [[U, \"ia32\"]],\n [\n /\\b(aarch64|arm(v?8e?l?|_?64))\\b/i\n // ARM64\n ],\n [[U, \"arm64\"]],\n [\n /\\b(arm(?:v[67])?ht?n?[fl]p?)\\b/i\n // ARMHF\n ],\n [[U, \"armhf\"]],\n [\n // PocketPC mistakenly identified as PowerPC\n /windows (ce|mobile); ppc;/i\n ],\n [[U, \"arm\"]],\n [\n /((?:ppc|powerpc)(?:64)?)(?: mac|;|\\))/i\n // PowerPC\n ],\n [[U, /ower/, l, Fe]],\n [\n /(sun4\\w)[;\\)]/i\n // SPARC\n ],\n [[U, \"sparc\"]],\n [\n /((?:avr32|ia64(?=;))|68k(?=\\))|\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\b|pa-risc)/i\n // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC\n ],\n [[U, Fe]]\n ],\n device: [\n [\n //////////////////////////\n // MOBILES & TABLETS\n // Ordered by popularity\n /////////////////////////\n // Samsung\n /\\b(sch-i[89]0\\d|shw-m380s|sm-[ptx]\\w{2,4}|gt-[pn]\\d{2,4}|sgh-t8[56]9|nexus 10)/i\n ],\n [_, [d, he], [p, R]],\n [\n /\\b((?:s[cgp]h|gt|sm)-\\w+|galaxy nexus)/i,\n /samsung[- ]([-\\w]+)/i,\n /sec-(sgh\\w+)/i\n ],\n [_, [d, he], [p, S]],\n [\n // Apple\n /\\((ip(?:hone|od)[\\w ]*);/i\n // iPod/iPhone\n ],\n [_, [d, Ae], [p, S]],\n [\n /\\((ipad);[-\\w\\),; ]+apple/i,\n // iPad\n /applecoremedia\\/[\\w\\.]+ \\((ipad)/i,\n /\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i\n ],\n [_, [d, Ae], [p, R]],\n [\n /(macintosh);/i\n ],\n [_, [d, Ae]],\n [\n // Huawei\n /\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i\n ],\n [_, [d, ye], [p, R]],\n [\n /(?:huawei|honor)([-\\w ]+)[;\\)]/i,\n /\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i\n ],\n [_, [d, ye], [p, S]],\n [\n // Xiaomi\n /\\b(poco[\\w ]+)(?: bui|\\))/i,\n // Xiaomi POCO\n /\\b; (\\w+) build\\/hm\\1/i,\n // Xiaomi Hongmi 'numeric' models\n /\\b(hm[-_ ]?note?[_ ]?(?:\\d\\w)?) bui/i,\n // Xiaomi Hongmi\n /\\b(redmi[\\-_ ]?(?:note|k)?[\\w_ ]+)(?: bui|\\))/i,\n // Xiaomi Redmi\n /\\b(mi[-_ ]?(?:a\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\d?\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\))/i\n // Xiaomi Mi\n ],\n [[_, /_/g, \" \"], [d, Pe], [p, S]],\n [\n /\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i\n // Mi Pad tablets\n ],\n [[_, /_/g, \" \"], [d, Pe], [p, R]],\n [\n // OPPO\n /; (\\w+) bui.+ oppo/i,\n /\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i\n ],\n [_, [d, \"OPPO\"], [p, S]],\n [\n // Vivo\n /vivo (\\w+)(?: bui|\\))/i,\n /\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i\n ],\n [_, [d, \"Vivo\"], [p, S]],\n [\n // Realme\n /\\b(rmx[12]\\d{3})(?: bui|;|\\))/i\n ],\n [_, [d, \"Realme\"], [p, S]],\n [\n // Motorola\n /\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\b[\\w ]+build\\//i,\n /\\bmot(?:orola)?[- ](\\w*)/i,\n /((?:moto[\\w\\(\\) ]+|xt\\d{3,4}|nexus 6)(?= bui|\\)))/i\n ],\n [_, [d, le], [p, S]],\n [\n /\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i\n ],\n [_, [d, le], [p, R]],\n [\n // LG\n /((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i\n ],\n [_, [d, we], [p, R]],\n [\n /(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i,\n /\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i,\n /\\blg-?([\\d\\w]+) bui/i\n ],\n [_, [d, we], [p, S]],\n [\n // Lenovo\n /(ideatab[-\\w ]+)/i,\n /lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i\n ],\n [_, [d, \"Lenovo\"], [p, R]],\n [\n // Nokia\n /(?:maemo|nokia).*(n900|lumia \\d+)/i,\n /nokia[-_ ]?([-\\w\\.]*)/i\n ],\n [[_, /_/g, \" \"], [d, \"Nokia\"], [p, S]],\n [\n // Google\n /(pixel c)\\b/i\n // Google Pixel C\n ],\n [_, [d, ie], [p, R]],\n [\n /droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i\n // Google Pixel\n ],\n [_, [d, ie], [p, S]],\n [\n // Sony\n /droid.+ (a?\\d[0-2]{2}so|[c-g]\\d{4}|so[-gl]\\w+|xq-a\\w[4-7][12])(?= bui|\\).+chrome\\/(?![1-6]{0,1}\\d\\.))/i\n ],\n [_, [d, Se], [p, S]],\n [\n /sony tablet [ps]/i,\n /\\b(?:sony)?sgp\\w+(?: bui|\\))/i\n ],\n [[_, \"Xperia Tablet\"], [d, Se], [p, R]],\n [\n // OnePlus\n / (kb2005|in20[12]5|be20[12][59])\\b/i,\n /(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i\n ],\n [_, [d, \"OnePlus\"], [p, S]],\n [\n // Amazon\n /(alexa)webm/i,\n /(kf[a-z]{2}wi)( bui|\\))/i,\n // Kindle Fire without Silk\n /(kf[a-z]+)( bui|\\)).+silk\\//i\n // Kindle Fire HD\n ],\n [_, [d, ve], [p, R]],\n [\n /((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i\n // Fire Phone\n ],\n [[_, /(.+)/g, \"Fire Phone $1\"], [d, ve], [p, S]],\n [\n // BlackBerry\n /(playbook);[-\\w\\),; ]+(rim)/i\n // BlackBerry PlayBook\n ],\n [_, d, [p, R]],\n [\n /\\b((?:bb[a-f]|st[hv])100-\\d)/i,\n /\\(bb10; (\\w+)/i\n // BlackBerry 10\n ],\n [_, [d, Me], [p, S]],\n [\n // Asus\n /(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i\n ],\n [_, [d, P], [p, R]],\n [\n / (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i\n ],\n [_, [d, P], [p, S]],\n [\n // HTC\n /(nexus 9)/i\n // HTC Nexus 9\n ],\n [_, [d, \"HTC\"], [p, R]],\n [\n /(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i,\n // HTC\n // ZTE\n /(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i,\n /(alcatel|geeksphone|nexian|panasonic|sony(?!-bra))[-_ ]?([-\\w]*)/i\n // Alcatel/GeeksPhone/Nexian/Panasonic/Sony\n ],\n [d, [_, /_/g, \" \"], [p, S]],\n [\n // Acer\n /droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i\n ],\n [_, [d, \"Acer\"], [p, R]],\n [\n // Meizu\n /droid.+; (m[1-5] note) bui/i,\n /\\bmz-([-\\w]{2,})/i\n ],\n [_, [d, \"Meizu\"], [p, S]],\n [\n // Sharp\n /\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i\n ],\n [_, [d, re], [p, S]],\n [\n // MIXED\n /(blackberry|benq|palm(?=\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\w]*)/i,\n // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron\n /(hp) ([\\w ]+\\w)/i,\n // HP iPAQ\n /(asus)-?(\\w+)/i,\n // Asus\n /(microsoft); (lumia[\\w ]+)/i,\n // Microsoft Lumia\n /(lenovo)[-_ ]?([-\\w]+)/i,\n // Lenovo\n /(jolla)/i,\n // Jolla\n /(oppo) ?([\\w ]+) bui/i\n // OPPO\n ],\n [d, _, [p, S]],\n [\n /(archos) (gamepad2?)/i,\n // Archos\n /(hp).+(touchpad(?!.+tablet)|tablet)/i,\n // HP TouchPad\n /(kindle)\\/([\\w\\.]+)/i,\n // Kindle\n /(nook)[\\w ]+build\\/(\\w+)/i,\n // Nook\n /(dell) (strea[kpr\\d ]*[\\dko])/i,\n // Dell Streak\n /(le[- ]+pan)[- ]+(\\w{1,9}) bui/i,\n // Le Pan Tablets\n /(trinity)[- ]*(t\\d{3}) bui/i,\n // Trinity Tablets\n /(gigaset)[- ]+(q\\w{1,9}) bui/i,\n // Gigaset Tablets\n /(vodafone) ([\\w ]+)(?:\\)| bui)/i\n // Vodafone\n ],\n [d, _, [p, R]],\n [\n /(surface duo)/i\n // Surface Duo\n ],\n [_, [d, J], [p, R]],\n [\n /droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i\n // Fairphone\n ],\n [_, [d, \"Fairphone\"], [p, S]],\n [\n /(u304aa)/i\n // AT&T\n ],\n [_, [d, \"AT&T\"], [p, S]],\n [\n /\\bsie-(\\w*)/i\n // Siemens\n ],\n [_, [d, \"Siemens\"], [p, S]],\n [\n /\\b(rct\\w+) b/i\n // RCA Tablets\n ],\n [_, [d, \"RCA\"], [p, R]],\n [\n /\\b(venue[\\d ]{2,7}) b/i\n // Dell Venue Tablets\n ],\n [_, [d, \"Dell\"], [p, R]],\n [\n /\\b(q(?:mv|ta)\\w+) b/i\n // Verizon Tablet\n ],\n [_, [d, \"Verizon\"], [p, R]],\n [\n /\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i\n // Barnes & Noble Tablet\n ],\n [_, [d, \"Barnes & Noble\"], [p, R]],\n [\n /\\b(tm\\d{3}\\w+) b/i\n ],\n [_, [d, \"NuVision\"], [p, R]],\n [\n /\\b(k88) b/i\n // ZTE K Series Tablet\n ],\n [_, [d, \"ZTE\"], [p, R]],\n [\n /\\b(nx\\d{3}j) b/i\n // ZTE Nubia\n ],\n [_, [d, \"ZTE\"], [p, S]],\n [\n /\\b(gen\\d{3}) b.+49h/i\n // Swiss GEN Mobile\n ],\n [_, [d, \"Swiss\"], [p, S]],\n [\n /\\b(zur\\d{3}) b/i\n // Swiss ZUR Tablet\n ],\n [_, [d, \"Swiss\"], [p, R]],\n [\n /\\b((zeki)?tb.*\\b) b/i\n // Zeki Tablets\n ],\n [_, [d, \"Zeki\"], [p, R]],\n [\n /\\b([yr]\\d{2}) b/i,\n /\\b(dragon[- ]+touch |dt)(\\w{5}) b/i\n // Dragon Touch Tablet\n ],\n [[d, \"Dragon Touch\"], _, [p, R]],\n [\n /\\b(ns-?\\w{0,9}) b/i\n // Insignia Tablets\n ],\n [_, [d, \"Insignia\"], [p, R]],\n [\n /\\b((nxa|next)-?\\w{0,9}) b/i\n // NextBook Tablets\n ],\n [_, [d, \"NextBook\"], [p, R]],\n [\n /\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i\n // Voice Xtreme Phones\n ],\n [[d, \"Voice\"], _, [p, S]],\n [\n /\\b(lvtel\\-)?(v1[12]) b/i\n // LvTel Phones\n ],\n [[d, \"LvTel\"], _, [p, S]],\n [\n /\\b(ph-1) /i\n // Essential PH-1\n ],\n [_, [d, \"Essential\"], [p, S]],\n [\n /\\b(v(100md|700na|7011|917g).*\\b) b/i\n // Envizen Tablets\n ],\n [_, [d, \"Envizen\"], [p, R]],\n [\n /\\b(trio[-\\w\\. ]+) b/i\n // MachSpeed Tablets\n ],\n [_, [d, \"MachSpeed\"], [p, R]],\n [\n /\\btu_(1491) b/i\n // Rotor Tablets\n ],\n [_, [d, \"Rotor\"], [p, R]],\n [\n /(shield[\\w ]+) b/i\n // Nvidia Shield Tablets\n ],\n [_, [d, \"Nvidia\"], [p, R]],\n [\n /(sprint) (\\w+)/i\n // Sprint Phones\n ],\n [d, _, [p, S]],\n [\n /(kin\\.[onetw]{3})/i\n // Microsoft Kin\n ],\n [[_, /\\./g, \" \"], [d, J], [p, S]],\n [\n /droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i\n // Zebra\n ],\n [_, [d, Xe], [p, R]],\n [\n /droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i\n ],\n [_, [d, Xe], [p, S]],\n [\n ///////////////////\n // CONSOLES\n ///////////////////\n /(ouya)/i,\n // Ouya\n /(nintendo) ([wids3utch]+)/i\n // Nintendo\n ],\n [d, _, [p, w]],\n [\n /droid.+; (shield) bui/i\n // Nvidia\n ],\n [_, [d, \"Nvidia\"], [p, w]],\n [\n /(playstation [345portablevi]+)/i\n // Playstation\n ],\n [_, [d, Se], [p, w]],\n [\n /\\b(xbox(?: one)?(?!; xbox))[\\); ]/i\n // Microsoft Xbox\n ],\n [_, [d, J], [p, w]],\n [\n ///////////////////\n // SMARTTVS\n ///////////////////\n /smart-tv.+(samsung)/i\n // Samsung\n ],\n [d, [p, z]],\n [\n /hbbtv.+maple;(\\d+)/i\n ],\n [[_, /^/, \"SmartTV\"], [d, he], [p, z]],\n [\n /(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i\n // LG SmartTV\n ],\n [[d, we], [p, z]],\n [\n /(apple) ?tv/i\n // Apple TV\n ],\n [d, [_, Ae + \" TV\"], [p, z]],\n [\n /crkey/i\n // Google Chromecast\n ],\n [[_, je + \"cast\"], [d, ie], [p, z]],\n [\n /droid.+aft(\\w)( bui|\\))/i\n // Fire TV\n ],\n [_, [d, ve], [p, z]],\n [\n /\\(dtv[\\);].+(aquos)/i,\n /(aquos-tv[\\w ]+)\\)/i\n // Sharp\n ],\n [_, [d, re], [p, z]],\n [\n /(bravia[\\w ]+)( bui|\\))/i\n // Sony\n ],\n [_, [d, Se], [p, z]],\n [\n /(mitv-\\w{5}) bui/i\n // Xiaomi\n ],\n [_, [d, Pe], [p, z]],\n [\n /\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i,\n // Roku\n /hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w ]*; *(\\w[^;]*);([^;]*)/i\n // HbbTV devices\n ],\n [[d, k], [_, k], [p, z]],\n [\n /\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i\n // SmartTV from Unidentified Vendors\n ],\n [[p, z]],\n [\n ///////////////////\n // WEARABLES\n ///////////////////\n /((pebble))app/i\n // Pebble\n ],\n [d, _, [p, W]],\n [\n /droid.+; (glass) \\d/i\n // Google Glass\n ],\n [_, [d, ie], [p, W]],\n [\n /droid.+; (wt63?0{2,3})\\)/i\n ],\n [_, [d, Xe], [p, W]],\n [\n /(quest( 2)?)/i\n // Oculus Quest\n ],\n [_, [d, Oe], [p, W]],\n [\n ///////////////////\n // EMBEDDED\n ///////////////////\n /(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i\n // Tesla\n ],\n [d, [p, fe]],\n [\n ////////////////////\n // MIXED (GENERIC)\n ///////////////////\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i\n // Android Phones from Unidentified Vendors\n ],\n [_, [p, S]],\n [\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i\n // Android Tablets from Unidentified Vendors\n ],\n [_, [p, R]],\n [\n /\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i\n // Unidentifiable Tablet\n ],\n [[p, R]],\n [\n /(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i\n // Unidentifiable Mobile\n ],\n [[p, S]],\n [\n /(android[-\\w\\. ]{0,9});.+buil/i\n // Generic Android Device\n ],\n [_, [d, \"Generic\"]]\n ],\n engine: [\n [\n /windows.+ edge\\/([\\w\\.]+)/i\n // EdgeHTML\n ],\n [u, [m, ke + \"HTML\"]],\n [\n /webkit\\/537\\.36.+chrome\\/(?!27)([\\w\\.]+)/i\n // Blink\n ],\n [u, [m, \"Blink\"]],\n [\n /(presto)\\/([\\w\\.]+)/i,\n // Presto\n /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\/([\\w\\.]+)/i,\n // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna\n /ekioh(flow)\\/([\\w\\.]+)/i,\n // Flow\n /(khtml|tasman|links)[\\/ ]\\(?([\\w\\.]+)/i,\n // KHTML/Tasman/Links\n /(icab)[\\/ ]([23]\\.[\\d\\.]+)/i\n // iCab\n ],\n [m, u],\n [\n /rv\\:([\\w\\.]{1,9})\\b.+(gecko)/i\n // Gecko\n ],\n [u, m]\n ],\n os: [\n [\n // Windows\n /microsoft (windows) (vista|xp)/i\n // Windows (iTunes)\n ],\n [m, u],\n [\n /(windows) nt 6\\.2; (arm)/i,\n // Windows RT\n /(windows (?:phone(?: os)?|mobile))[\\/ ]?([\\d\\.\\w ]*)/i,\n // Windows Phone\n /(windows)[\\/ ]?([ntce\\d\\. ]+\\w)(?!.+xbox)/i\n ],\n [m, [u, I, ne]],\n [\n /(win(?=3|9|n)|win 9x )([nt\\d\\.]+)/i\n ],\n [[m, \"Windows\"], [u, I, ne]],\n [\n // iOS/macOS\n /ip[honead]{2,4}\\b(?:.*os ([\\w]+) like mac|; opera)/i,\n // iOS\n /cfnetwork\\/.+darwin/i\n ],\n [[u, /_/g, \".\"], [m, \"iOS\"]],\n [\n /(mac os x) ?([\\w\\. ]*)/i,\n /(macintosh|mac_powerpc\\b)(?!.+haiku)/i\n // Mac OS\n ],\n [[m, \"Mac OS\"], [u, /_/g, \".\"]],\n [\n // Mobile OSes\n /droid ([\\w\\.]+)\\b.+(android[- ]x86|harmonyos)/i\n // Android-x86/HarmonyOS\n ],\n [u, m],\n [\n // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS\n /(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\/ ]?([\\w\\.]*)/i,\n /(blackberry)\\w*\\/([\\w\\.]*)/i,\n // Blackberry\n /(tizen|kaios)[\\/ ]([\\w\\.]+)/i,\n // Tizen/KaiOS\n /\\((series40);/i\n // Series 40\n ],\n [m, u],\n [\n /\\(bb(10);/i\n // BlackBerry 10\n ],\n [u, [m, Me]],\n [\n /(?:symbian ?os|symbos|s60(?=;)|series60)[-\\/ ]?([\\w\\.]*)/i\n // Symbian\n ],\n [u, [m, \"Symbian\"]],\n [\n /mozilla\\/[\\d\\.]+ \\((?:mobile|tablet|tv|mobile; [\\w ]+); rv:.+ gecko\\/([\\w\\.]+)/i\n // Firefox OS\n ],\n [u, [m, H + \" OS\"]],\n [\n /web0s;.+rt(tv)/i,\n /\\b(?:hp)?wos(?:browser)?\\/([\\w\\.]+)/i\n // WebOS\n ],\n [u, [m, \"webOS\"]],\n [\n // Google Chromecast\n /crkey\\/([\\d\\.]+)/i\n // Google Chromecast\n ],\n [u, [m, je + \"cast\"]],\n [\n /(cros) [\\w]+ ([\\w\\.]+\\w)/i\n // Chromium OS\n ],\n [[m, \"Chromium OS\"], u],\n [\n // Console\n /(nintendo|playstation) ([wids345portablevuch]+)/i,\n // Nintendo/Playstation\n /(xbox); +xbox ([^\\);]+)/i,\n // Microsoft Xbox (360, One, X, S, Series X, Series S)\n // Other\n /\\b(joli|palm)\\b ?(?:os)?\\/?([\\w\\.]*)/i,\n // Joli/Palm\n /(mint)[\\/\\(\\) ]?(\\w*)/i,\n // Mint\n /(mageia|vectorlinux)[; ]/i,\n // Mageia/VectorLinux\n /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\/ ]?(?!chrom|package)([-\\w\\.]*)/i,\n // Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire\n /(hurd|linux) ?([\\w\\.]*)/i,\n // Hurd/Linux\n /(gnu) ?([\\w\\.]*)/i,\n // GNU\n /\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\/ ]?(?!amd|[ix346]{1,2}86)([\\w\\.]*)/i,\n // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly\n /(haiku) (\\w+)/i\n // Haiku\n ],\n [m, u],\n [\n /(sunos) ?([\\w\\.\\d]*)/i\n // Solaris\n ],\n [[m, \"Solaris\"], u],\n [\n /((?:open)?solaris)[-\\/ ]?([\\w\\.]*)/i,\n // Solaris\n /(aix) ((\\d)(?=\\.|\\)| )[\\w\\.])*/i,\n // AIX\n /\\b(beos|os\\/2|amigaos|morphos|openvms|fuchsia|hp-ux)/i,\n // BeOS/OS2/AmigaOS/MorphOS/OpenVMS/Fuchsia/HP-UX\n /(unix) ?([\\w\\.]*)/i\n // UNIX\n ],\n [m, u]\n ]\n }, te = function(K, Z) {\n if (typeof K === x && (Z = K, K = r), !(this instanceof te))\n return new te(K, Z).getResult();\n var Y = K || (typeof i !== C && i.navigator && i.navigator.userAgent ? i.navigator.userAgent : l), _e = Z ? st(oe, Z) : oe;\n return this.getBrowser = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.browser), ee.major = G(ee.version), ee;\n }, this.getCPU = function() {\n var ee = {};\n return ee[U] = r, F.call(ee, Y, _e.cpu), ee;\n }, this.getDevice = function() {\n var ee = {};\n return ee[d] = r, ee[_] = r, ee[p] = r, F.call(ee, Y, _e.device), ee;\n }, this.getEngine = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.engine), ee;\n }, this.getOS = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.os), ee;\n }, this.getResult = function() {\n return {\n ua: this.getUA(),\n browser: this.getBrowser(),\n engine: this.getEngine(),\n os: this.getOS(),\n device: this.getDevice(),\n cpu: this.getCPU()\n };\n }, this.getUA = function() {\n return Y;\n }, this.setUA = function(ee) {\n return Y = typeof ee === g && ee.length > q ? k(ee, q) : ee, this;\n }, this.setUA(Y), this;\n };\n te.VERSION = o, te.BROWSER = ze([m, u, D]), te.CPU = ze([U]), te.DEVICE = ze([_, d, p, w, S, z, R, W, fe]), te.ENGINE = te.OS = ze([m, u]), t.exports && (e = t.exports = te), e.UAParser = te;\n var Ee = typeof i !== C && (i.jQuery || i.Zepto);\n if (Ee && !Ee.ua) {\n var xe = new te();\n Ee.ua = xe.getResult(), Ee.ua.get = function() {\n return xe.getUA();\n }, Ee.ua.set = function(K) {\n xe.setUA(K);\n var Z = xe.getResult();\n for (var Y in Z)\n Ee.ua[Y] = Z[Y];\n };\n }\n })(typeof window == \"object\" ? window : WT);\n})(GT, Ms);\nconst gf = \"https://log-sdk.ksapisrv.com/rest/wd/common/log/collect/misc2\";\nlet Gr = typeof navigator < \"u\" && Ms.UAParser(navigator.userAgent);\nconst fc = (t, e, i, r = 1, o = !1) => {\n const l = new FormData();\n if (l.append(\"common\", qT(t, {\n service_name: \"KwaiPlayerWeb\"\n })), l.append(\"logs\", JSON.stringify(\n {\n event: [\n KT(e, i)\n ]\n }\n )), o && navigator.sendBeacon)\n navigator.sendBeacon(gf, l);\n else {\n const v = new XMLHttpRequest();\n v.open(\"POST\", gf), v.addEventListener(\"error\", (E) => {\n console.error(\"sendLog error\", E), r > 0 && fc(\n t,\n e,\n i,\n --r\n );\n }), v.timeout = 5e3, v.addEventListener(\"timeout\", (E) => {\n console.error(\"sendLog timeout\", E), r > 0 && fc(\n t,\n e,\n i,\n --r\n );\n }), v.send(l);\n }\n};\nlet tu = parseInt(typeof localStorage < \"u\" && localStorage != null && localStorage.getItem(\"kwai_player_client_increment_id\") || \"\") || 0, Ts = (/* @__PURE__ */ new Date()).toString().match(/GMT\\+\\d+/);\nTs = Ts && Ts[0] ? Ts[0] : \"\";\nfunction KT(t, e) {\n tu++, localStorage.kwai_player_client_increment_id = tu;\n const i = {\n identity: \"\",\n page: location.href,\n hostname: location.hostname\n }, r = ci.version, o = ci.packVersion;\n return {\n client_timestamp: Date.now(),\n client_increment_id: tu,\n session_id: $T(),\n time_zone: Ts,\n stat_package: {\n custom_stat_event: {\n key: t,\n value: JSON.stringify(Object.assign({}, e, { url_package: i, player_version: r, pack_version: o }))\n }\n }\n };\n}\nfunction qT(t, e) {\n Gr || (Gr = Ms.UAParser(navigator.userAgent));\n const i = localStorage.getItem(\"kwai_player_device_id\") || YT();\n localStorage.kwai_player_device_id || (localStorage.kwai_player_device_id = i);\n let r = 10;\n return Gr.os.name === \"iOS\" && (r = 9), Gr.os.name === \"Android\" && (r = 8), JSON.stringify(Nh({\n identity_package: {\n device_id: i,\n global_id: \"\",\n user_id: \"\"\n },\n app_package: {\n language: navigator.language,\n platform: r,\n container: \"H5\",\n package_name: \"\",\n product_name: t,\n version_name: \"\",\n channel: \"\"\n },\n device_package: {\n os_version: Gr.os.version,\n model: Gr.os.name,\n ua: navigator.userAgent\n },\n need_encrypt: !1,\n sdk_version: \"\"\n }, e));\n}\nfunction YT() {\n const t = Math.random() * 1e9 >>> 0, e = [], i = \"0123456789ABCDEF\";\n for (let r = 0; r < 7; r++)\n e.push(i.charAt(Math.random() * 16));\n return \"web_\" + t + e.join(\"\");\n}\nconst XT = {\n summary: \"KP_WEB_SUMMARY\",\n realtimeBeacon: \"KP_WEB_REALTIME\",\n download: \"KP_WEB_DOWNLOAD\",\n event: \"KP_WEB_EVENT\"\n /* EVENT */\n}, ds = \"logger-plugin\";\nlet d_ = class extends $v {\n constructor() {\n super(...arguments), fr(this, \"_player\"), fr(this, \"_reportTypes\", [\n \"summary\",\n \"realtimeBeacon\",\n \"download\",\n \"event\"\n ]), fr(this, \"_extraSummaryFields\", {}), fr(this, \"_bizSummaryFields\", {}), fr(this, \"_productName\", \"streamlake\"), fr(this, \"_summaryAlreadySend\", !1), fr(this, \"_getBizData\", () => {\n var e;\n const i = (e = this._player) == null ? void 0 : e.bizData;\n return {\n resourceId: this._id2String(i == null ? void 0 : i.resourceId),\n userId: this._id2String(i == null ? void 0 : i.userId)\n };\n }), fr(this, \"_onReport\", (e) => {\n if (this._reportTypes.indexOf(e.type) !== -1) {\n const i = XT[e.type];\n if (i) {\n Be.i(ds, \"sendLog\", this._productName, i);\n const r = e.value;\n r && (r.biz = this._getBizData()), fc(this._productName, i, r);\n } else\n Be.i(ds, \"unknown weblogger key.\");\n }\n }), fr(this, \"_onSrcChange\", () => {\n this._sendSummary(), this._summaryAlreadySend = !1;\n }), fr(this, \"_sendSummary\", () => {\n if (!this._player || this._summaryAlreadySend)\n return;\n this._summaryAlreadySend = !0;\n const e = Object.assign(this._player.getAudienceStat(), this._extraSummaryFields);\n e.extra = this._extraSummaryFields, e.biz = Object.assign(this._bizSummaryFields, this._getBizData()), Be.i(ds, \"send summary\", e.extra), this._extraSummaryFields = {}, this._bizSummaryFields = {}, fc(this._productName, \"KP_WEB_SUMMARY\", e, 0, !0);\n }), fr(this, \"_onBeforeunload\", () => {\n this._sendSummary();\n });\n }\n beforeInstall(e, i) {\n this._player = e, this._productName = (i == null ? void 0 : i.productName) || e.productName || this._productName, this._player.on(ge.REPORT, this._onReport), this._player.on(ge.ATTRIBUTE_CHANGE_SRC, this._onSrcChange), i && i.reportTypes && Array.isArray(i.reportTypes) && (this._reportTypes = i.reportTypes), window.addEventListener(\"beforeunload\", this._onBeforeunload), Gr && Gr.device.type === \"mobile\" && window.addEventListener(\"unload\", this._onBeforeunload);\n }\n beforeUninstall() {\n this._sendSummary();\n }\n afterUninstall() {\n var e, i;\n (e = this._player) == null || e.off(ge.REPORT, this._onReport), (i = this._player) == null || i.off(ge.ATTRIBUTE_CHANGE_SRC, this._onSrcChange), window.removeEventListener(\"beforeunload\", this._onBeforeunload), Gr && Gr.device.type === \"mobile\" && window.removeEventListener(\"unload\", this._onBeforeunload);\n }\n /**\n * @override\n */\n appendSummaryField(e, i) {\n Be.i(ds, \"add summary field\", e, i), this._extraSummaryFields[e] = i;\n }\n addBizField(e, i) {\n Be.i(ds, \"add biz field\", e, i), this._bizSummaryFields[e] = i;\n }\n _id2String(e) {\n return typeof e == \"number\" ? e.toString() : e || \"\";\n }\n};\nfr(d_, \"version\", \"1.1.0-alpha.0\"), fr(d_, \"packVersion\", \"1.1.0-alpha.0\");\nvar ZT = Object.defineProperty, QT = (t, e, i) => e in t ? ZT(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, _n = (t, e, i) => (QT(t, typeof e != \"symbol\" ? e + \"\" : e, i), i), JT = Object.defineProperty, eS = (t, e, i) => e in t ? JT(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, ra = (t, e, i) => (eS(t, typeof e != \"symbol\" ? e + \"\" : e, i), i);\nconst tS = {\n /**\n * Searches for an item in an array which matches a certain condition.\n * This requires the condition to only match one item in the array,\n * and for the array to be ordered.\n *\n * @param {Array} list The array to search.\n * @param {BinarySearchComparison} comparisonFn\n * Called and provided a candidate item as the first argument.\n * Should return:\n * > -1 if the item should be located at a lower index than the provided item.\n * > 1 if the item should be located at a higher index than the provided item.\n * > 0 if the item is the item you're looking for.\n *\n * @return {T | null} The object if it is found or null otherwise.\n */\n search: function(t, e) {\n let i = 0, r = t.length - 1, o = null, l = null;\n for (; i <= r; ) {\n o = (i + r) / 2 | 0, l = t[o];\n const v = e(l);\n if (v > 0)\n i = o + 1;\n else if (v < 0)\n r = o - 1;\n else\n return l;\n }\n },\n searchIndex: function(t, e) {\n let i = 0, r = t.length - 1, o = null, l = null;\n for (; i <= r; ) {\n o = (i + r) / 2 | 0, l = t[o];\n const v = e(l);\n if (v > 0)\n i = o + 1;\n else if (v < 0)\n r = o - 1;\n else\n return o;\n }\n return -1;\n }\n}, Kn = class {\n constructor() {\n ra(this, \"timeout\", 7 * 24 * 3600 * 1e3);\n }\n write(e, i) {\n if (Kn.available)\n try {\n localStorage.setItem(\n e,\n JSON.stringify({ value: i, time: Date.now() })\n );\n } catch (r) {\n }\n }\n read(e, i = !0) {\n if (Kn.available)\n try {\n const r = localStorage.getItem(e);\n if (r) {\n const { value: o, time: l = 0 } = JSON.parse(r);\n if (!i || Date.now() - l < this.timeout)\n return o;\n }\n } catch (r) {\n }\n }\n static get available() {\n if (typeof Kn._available > \"u\")\n try {\n localStorage.setItem(\"alg\", \"test\"), Kn._available = !0;\n } catch (e) {\n Kn._available = !1;\n }\n return Kn._available;\n }\n};\nlet iS = Kn;\nra(iS, \"_available\");\nconst rS = \"kwai-p\";\nfunction hs(t, e) {\n return (!e || e.length === 0) && (e = [t], t = \"\"), t = rS + (t ? \"::\" + t : \"\"), e.unshift(\"[\" + t + \"] > \"), e;\n}\nconst ii = class {\n /**\n * 设置日志输出等级\n * @param l 日志等级\n */\n static level(t) {\n switch (ii.ENABLE_ERROR = ii.ENABLE_WARN = ii.ENABLE_INFO = ii.ENABLE_DEBUG = ii.ENABLE_VERBOSE = !1, t) {\n case \"e\":\n ii.ENABLE_ERROR = !0;\n break;\n case \"w\":\n ii.ENABLE_ERROR = ii.ENABLE_WARN = !0;\n break;\n case \"i\":\n ii.ENABLE_ERROR = ii.ENABLE_WARN = ii.ENABLE_INFO = !0;\n break;\n case \"d\":\n ii.ENABLE_ERROR = ii.ENABLE_WARN = ii.ENABLE_INFO = ii.ENABLE_DEBUG = !0;\n break;\n case \"v\":\n ii.ENABLE_ERROR = ii.ENABLE_WARN = ii.ENABLE_INFO = ii.ENABLE_DEBUG = ii.ENABLE_VERBOSE = !0;\n break;\n }\n }\n /**\n * error日志\n * @param tag tag\n * @param msg 日志信息\n */\n static e(t, ...e) {\n if (!ii.ENABLE_ERROR)\n return;\n const i = hs(t, e);\n (console.error || console.warn || console.log).apply(console, i);\n }\n /**\n * warn日志\n * @param tag tag\n * @param msg 日志信息\n */\n static w(t, ...e) {\n if (!ii.ENABLE_WARN)\n return;\n const i = hs(t, e);\n (console.warn || console.log).apply(console, i);\n }\n /**\n * info日志\n * @param tag tag\n * @param msg 日志信息\n */\n static i(t, ...e) {\n if (!ii.ENABLE_INFO)\n return;\n const i = hs(t, e);\n (console.info || console.log).apply(console, i);\n }\n /**\n * debug日志\n * @param tag tag\n * @param msg 日志信息\n */\n static d(t, ...e) {\n if (!ii.ENABLE_DEBUG)\n return;\n const i = hs(t, e);\n (console.debug || console.log).apply(console, i);\n }\n /**\n * verbose日志\n * @param tag tag\n * @param msg 日志信息\n */\n static v(t, ...e) {\n if (!ii.ENABLE_VERBOSE)\n return;\n const i = hs(t, e);\n console.log.apply(console, i);\n }\n};\nlet fs = ii;\nra(fs, \"ENABLE_ERROR\", !0), ra(fs, \"ENABLE_WARN\", !1), ra(fs, \"ENABLE_INFO\", !1), ra(fs, \"ENABLE_DEBUG\", !1), ra(fs, \"ENABLE_VERBOSE\", !1);\nvar nS = typeof globalThis < \"u\" ? globalThis : typeof window < \"u\" ? window : typeof global < \"u\" ? global : typeof self < \"u\" ? self : {}, pc = {}, aS = {\n get exports() {\n return pc;\n },\n set exports(t) {\n pc = t;\n }\n};\n(function(t, e) {\n (function(i, r) {\n var o = \"1.0.33\", l = \"\", v = \"?\", E = \"function\", C = \"undefined\", x = \"object\", g = \"string\", D = \"major\", _ = \"model\", m = \"name\", p = \"type\", d = \"vendor\", u = \"version\", U = \"architecture\", w = \"console\", S = \"mobile\", R = \"tablet\", z = \"smarttv\", W = \"wearable\", fe = \"embedded\", q = 350, ve = \"Amazon\", Ae = \"Apple\", P = \"ASUS\", Me = \"BlackBerry\", Ie = \"Browser\", je = \"Chrome\", ke = \"Edge\", H = \"Firefox\", ie = \"Google\", ye = \"Huawei\", we = \"LG\", J = \"Microsoft\", le = \"Motorola\", me = \"Opera\", he = \"Samsung\", re = \"Sharp\", Se = \"Sony\", Pe = \"Xiaomi\", Xe = \"Zebra\", Oe = \"Facebook\", st = function(K, Z) {\n var Y = {};\n for (var _e in K)\n Z[_e] && Z[_e].length % 2 === 0 ? Y[_e] = Z[_e].concat(K[_e]) : Y[_e] = K[_e];\n return Y;\n }, ze = function(K) {\n for (var Z = {}, Y = 0; Y < K.length; Y++)\n Z[K[Y].toUpperCase()] = K[Y];\n return Z;\n }, rt = function(K, Z) {\n return typeof K === g ? Fe(Z).indexOf(Fe(K)) !== -1 : !1;\n }, Fe = function(K) {\n return K.toLowerCase();\n }, G = function(K) {\n return typeof K === g ? K.replace(/[^\\d\\.]/g, l).split(\".\")[0] : r;\n }, k = function(K, Z) {\n if (typeof K === g)\n return K = K.replace(/^\\s\\s*/, l), typeof Z === C ? K : K.substring(0, q);\n }, F = function(K, Z) {\n for (var Y = 0, _e, ee, Ve, ce, qe, Ce; Y < Z.length && !qe; ) {\n var Ye = Z[Y], tt = Z[Y + 1];\n for (_e = ee = 0; _e < Ye.length && !qe; )\n if (qe = Ye[_e++].exec(K), qe)\n for (Ve = 0; Ve < tt.length; Ve++)\n Ce = qe[++ee], ce = tt[Ve], typeof ce === x && ce.length > 0 ? ce.length === 2 ? typeof ce[1] == E ? this[ce[0]] = ce[1].call(this, Ce) : this[ce[0]] = ce[1] : ce.length === 3 ? typeof ce[1] === E && !(ce[1].exec && ce[1].test) ? this[ce[0]] = Ce ? ce[1].call(this, Ce, ce[2]) : r : this[ce[0]] = Ce ? Ce.replace(ce[1], ce[2]) : r : ce.length === 4 && (this[ce[0]] = Ce ? ce[3].call(this, Ce.replace(ce[1], ce[2])) : r) : this[ce] = Ce || r;\n Y += 2;\n }\n }, I = function(K, Z) {\n for (var Y in Z)\n if (typeof Z[Y] === x && Z[Y].length > 0) {\n for (var _e = 0; _e < Z[Y].length; _e++)\n if (rt(Z[Y][_e], K))\n return Y === v ? r : Y;\n } else if (rt(Z[Y], K))\n return Y === v ? r : Y;\n return K;\n }, V = {\n \"1.0\": \"/8\",\n \"1.2\": \"/1\",\n \"1.3\": \"/3\",\n \"2.0\": \"/412\",\n \"2.0.2\": \"/416\",\n \"2.0.3\": \"/417\",\n \"2.0.4\": \"/419\",\n \"?\": \"/\"\n }, ne = {\n ME: \"4.90\",\n \"NT 3.11\": \"NT3.51\",\n \"NT 4.0\": \"NT4.0\",\n 2e3: \"NT 5.0\",\n XP: [\"NT 5.1\", \"NT 5.2\"],\n Vista: \"NT 6.0\",\n 7: \"NT 6.1\",\n 8: \"NT 6.2\",\n \"8.1\": \"NT 6.3\",\n 10: [\"NT 6.4\", \"NT 10.0\"],\n RT: \"ARM\"\n }, oe = {\n browser: [\n [\n /\\b(?:crmo|crios)\\/([\\w\\.]+)/i\n // Chrome for Android/iOS\n ],\n [u, [m, \"Chrome\"]],\n [\n /edg(?:e|ios|a)?\\/([\\w\\.]+)/i\n // Microsoft Edge\n ],\n [u, [m, \"Edge\"]],\n [\n // Presto based\n /(opera mini)\\/([-\\w\\.]+)/i,\n // Opera Mini\n /(opera [mobiletab]{3,6})\\b.+version\\/([-\\w\\.]+)/i,\n // Opera Mobi/Tablet\n /(opera)(?:.+version\\/|[\\/ ]+)([\\w\\.]+)/i\n // Opera\n ],\n [m, u],\n [\n /opios[\\/ ]+([\\w\\.]+)/i\n // Opera mini on iphone >= 8.0\n ],\n [u, [m, me + \" Mini\"]],\n [\n /\\bopr\\/([\\w\\.]+)/i\n // Opera Webkit\n ],\n [u, [m, me]],\n [\n // Mixed\n /(kindle)\\/([\\w\\.]+)/i,\n // Kindle\n /(lunascape|maxthon|netfront|jasmine|blazer)[\\/ ]?([\\w\\.]*)/i,\n // Lunascape/Maxthon/Netfront/Jasmine/Blazer\n // Trident based\n /(avant |iemobile|slim)(?:browser)?[\\/ ]?([\\w\\.]*)/i,\n // Avant/IEMobile/SlimBrowser\n /(ba?idubrowser)[\\/ ]?([\\w\\.]+)/i,\n // Baidu Browser\n /(?:ms|\\()(ie) ([\\w\\.]+)/i,\n // Internet Explorer\n // Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon\n /(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale|qqbrowserlite|qq|duckduckgo)\\/([-\\w\\.]+)/i,\n // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ, aka ShouQ\n /(weibo)__([\\d\\.]+)/i\n // Weibo\n ],\n [m, u],\n [\n /(?:\\buc? ?browser|(?:juc.+)ucweb)[\\/ ]?([\\w\\.]+)/i\n // UCBrowser\n ],\n [u, [m, \"UC\" + Ie]],\n [\n /microm.+\\bqbcore\\/([\\w\\.]+)/i,\n // WeChat Desktop for Windows Built-in Browser\n /\\bqbcore\\/([\\w\\.]+).+microm/i\n ],\n [u, [m, \"WeChat(Win) Desktop\"]],\n [\n /micromessenger\\/([\\w\\.]+)/i\n // WeChat\n ],\n [u, [m, \"WeChat\"]],\n [\n /konqueror\\/([\\w\\.]+)/i\n // Konqueror\n ],\n [u, [m, \"Konqueror\"]],\n [\n /trident.+rv[: ]([\\w\\.]{1,9})\\b.+like gecko/i\n // IE11\n ],\n [u, [m, \"IE\"]],\n [\n /yabrowser\\/([\\w\\.]+)/i\n // Yandex\n ],\n [u, [m, \"Yandex\"]],\n [\n /(avast|avg)\\/([\\w\\.]+)/i\n // Avast/AVG Secure Browser\n ],\n [[m, /(.+)/, \"$1 Secure \" + Ie], u],\n [\n /\\bfocus\\/([\\w\\.]+)/i\n // Firefox Focus\n ],\n [u, [m, H + \" Focus\"]],\n [\n /\\bopt\\/([\\w\\.]+)/i\n // Opera Touch\n ],\n [u, [m, me + \" Touch\"]],\n [\n /coc_coc\\w+\\/([\\w\\.]+)/i\n // Coc Coc Browser\n ],\n [u, [m, \"Coc Coc\"]],\n [\n /dolfin\\/([\\w\\.]+)/i\n // Dolphin\n ],\n [u, [m, \"Dolphin\"]],\n [\n /coast\\/([\\w\\.]+)/i\n // Opera Coast\n ],\n [u, [m, me + \" Coast\"]],\n [\n /miuibrowser\\/([\\w\\.]+)/i\n // MIUI Browser\n ],\n [u, [m, \"MIUI \" + Ie]],\n [\n /fxios\\/([-\\w\\.]+)/i\n // Firefox for iOS\n ],\n [u, [m, H]],\n [\n /\\bqihu|(qi?ho?o?|360)browser/i\n // 360\n ],\n [[m, \"360 \" + Ie]],\n [\n /(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i\n ],\n [[m, /(.+)/, \"$1 \" + Ie], u],\n [\n // Oculus/Samsung/Sailfish/Huawei Browser\n /(comodo_dragon)\\/([\\w\\.]+)/i\n // Comodo Dragon\n ],\n [[m, /_/g, \" \"], u],\n [\n /(electron)\\/([\\w\\.]+) safari/i,\n // Electron-based App\n /(tesla)(?: qtcarbrowser|\\/(20\\d\\d\\.[-\\w\\.]+))/i,\n // Tesla\n /m?(qqbrowser|baiduboxapp|2345Explorer)[\\/ ]?([\\w\\.]+)/i\n // QQBrowser/Baidu App/2345 Browser\n ],\n [m, u],\n [\n /(metasr)[\\/ ]?([\\w\\.]+)/i,\n // SouGouBrowser\n /(lbbrowser)/i,\n // LieBao Browser\n /\\[(linkedin)app\\]/i\n // LinkedIn App for iOS & Android\n ],\n [m],\n [\n // WebView\n /((?:fban\\/fbios|fb_iab\\/fb4a)(?!.+fbav)|;fbav\\/([\\w\\.]+);)/i\n // Facebook App for iOS & Android\n ],\n [[m, Oe], u],\n [\n /safari (line)\\/([\\w\\.]+)/i,\n // Line App for iOS\n /\\b(line)\\/([\\w\\.]+)\\/iab/i,\n // Line App for Android\n /(chromium|instagram)[\\/ ]([-\\w\\.]+)/i\n // Chromium/Instagram\n ],\n [m, u],\n [\n /\\bgsa\\/([\\w\\.]+) .*safari\\//i\n // Google Search Appliance on iOS\n ],\n [u, [m, \"GSA\"]],\n [\n /headlesschrome(?:\\/([\\w\\.]+)| )/i\n // Chrome Headless\n ],\n [u, [m, je + \" Headless\"]],\n [\n / wv\\).+(chrome)\\/([\\w\\.]+)/i\n // Chrome WebView\n ],\n [[m, je + \" WebView\"], u],\n [\n /droid.+ version\\/([\\w\\.]+)\\b.+(?:mobile safari|safari)/i\n // Android Browser\n ],\n [u, [m, \"Android \" + Ie]],\n [\n /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\/v?([\\w\\.]+)/i\n // Chrome/OmniWeb/Arora/Tizen/Nokia\n ],\n [m, u],\n [\n /version\\/([\\w\\.\\,]+) .*mobile\\/\\w+ (safari)/i\n // Mobile Safari\n ],\n [u, [m, \"Mobile Safari\"]],\n [\n /version\\/([\\w(\\.|\\,)]+) .*(mobile ?safari|safari)/i\n // Safari & Safari Mobile\n ],\n [u, m],\n [\n /webkit.+?(mobile ?safari|safari)(\\/[\\w\\.]+)/i\n // Safari < 3.0\n ],\n [m, [u, I, V]],\n [\n /(webkit|khtml)\\/([\\w\\.]+)/i\n ],\n [m, u],\n [\n // Gecko based\n /(navigator|netscape\\d?)\\/([-\\w\\.]+)/i\n // Netscape\n ],\n [[m, \"Netscape\"], u],\n [\n /mobile vr; rv:([\\w\\.]+)\\).+firefox/i\n // Firefox Reality\n ],\n [u, [m, H + \" Reality\"]],\n [\n /ekiohf.+(flow)\\/([\\w\\.]+)/i,\n // Flow\n /(swiftfox)/i,\n // Swiftfox\n /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\/ ]?([\\w\\.\\+]+)/i,\n // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror/Klar\n /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\/([-\\w\\.]+)$/i,\n // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix\n /(firefox)\\/([\\w\\.]+)/i,\n // Other Firefox-based\n /(mozilla)\\/([\\w\\.]+) .+rv\\:.+gecko\\/\\d+/i,\n // Mozilla\n // Other\n /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\. ]?browser)[-\\/ ]?v?([\\w\\.]+)/i,\n // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Sleipnir/Obigo/Mosaic/Go/ICE/UP.Browser\n /(links) \\(([\\w\\.]+)/i\n // Links\n ],\n [m, u],\n [\n /(cobalt)\\/([\\w\\.]+)/i\n // Cobalt\n ],\n [m, [u, /master.|lts./, \"\"]]\n ],\n cpu: [\n [\n /(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\)]/i\n // AMD64 (x64)\n ],\n [[U, \"amd64\"]],\n [\n /(ia32(?=;))/i\n // IA32 (quicktime)\n ],\n [[U, Fe]],\n [\n /((?:i[346]|x)86)[;\\)]/i\n // IA32 (x86)\n ],\n [[U, \"ia32\"]],\n [\n /\\b(aarch64|arm(v?8e?l?|_?64))\\b/i\n // ARM64\n ],\n [[U, \"arm64\"]],\n [\n /\\b(arm(?:v[67])?ht?n?[fl]p?)\\b/i\n // ARMHF\n ],\n [[U, \"armhf\"]],\n [\n // PocketPC mistakenly identified as PowerPC\n /windows (ce|mobile); ppc;/i\n ],\n [[U, \"arm\"]],\n [\n /((?:ppc|powerpc)(?:64)?)(?: mac|;|\\))/i\n // PowerPC\n ],\n [[U, /ower/, l, Fe]],\n [\n /(sun4\\w)[;\\)]/i\n // SPARC\n ],\n [[U, \"sparc\"]],\n [\n /((?:avr32|ia64(?=;))|68k(?=\\))|\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\b|pa-risc)/i\n // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC\n ],\n [[U, Fe]]\n ],\n device: [\n [\n //////////////////////////\n // MOBILES & TABLETS\n // Ordered by popularity\n /////////////////////////\n // Samsung\n /\\b(sch-i[89]0\\d|shw-m380s|sm-[ptx]\\w{2,4}|gt-[pn]\\d{2,4}|sgh-t8[56]9|nexus 10)/i\n ],\n [_, [d, he], [p, R]],\n [\n /\\b((?:s[cgp]h|gt|sm)-\\w+|galaxy nexus)/i,\n /samsung[- ]([-\\w]+)/i,\n /sec-(sgh\\w+)/i\n ],\n [_, [d, he], [p, S]],\n [\n // Apple\n /\\((ip(?:hone|od)[\\w ]*);/i\n // iPod/iPhone\n ],\n [_, [d, Ae], [p, S]],\n [\n /\\((ipad);[-\\w\\),; ]+apple/i,\n // iPad\n /applecoremedia\\/[\\w\\.]+ \\((ipad)/i,\n /\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i\n ],\n [_, [d, Ae], [p, R]],\n [\n /(macintosh);/i\n ],\n [_, [d, Ae]],\n [\n // Huawei\n /\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i\n ],\n [_, [d, ye], [p, R]],\n [\n /(?:huawei|honor)([-\\w ]+)[;\\)]/i,\n /\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i\n ],\n [_, [d, ye], [p, S]],\n [\n // Xiaomi\n /\\b(poco[\\w ]+)(?: bui|\\))/i,\n // Xiaomi POCO\n /\\b; (\\w+) build\\/hm\\1/i,\n // Xiaomi Hongmi 'numeric' models\n /\\b(hm[-_ ]?note?[_ ]?(?:\\d\\w)?) bui/i,\n // Xiaomi Hongmi\n /\\b(redmi[\\-_ ]?(?:note|k)?[\\w_ ]+)(?: bui|\\))/i,\n // Xiaomi Redmi\n /\\b(mi[-_ ]?(?:a\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\d?\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\))/i\n // Xiaomi Mi\n ],\n [[_, /_/g, \" \"], [d, Pe], [p, S]],\n [\n /\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i\n // Mi Pad tablets\n ],\n [[_, /_/g, \" \"], [d, Pe], [p, R]],\n [\n // OPPO\n /; (\\w+) bui.+ oppo/i,\n /\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i\n ],\n [_, [d, \"OPPO\"], [p, S]],\n [\n // Vivo\n /vivo (\\w+)(?: bui|\\))/i,\n /\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i\n ],\n [_, [d, \"Vivo\"], [p, S]],\n [\n // Realme\n /\\b(rmx[12]\\d{3})(?: bui|;|\\))/i\n ],\n [_, [d, \"Realme\"], [p, S]],\n [\n // Motorola\n /\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\b[\\w ]+build\\//i,\n /\\bmot(?:orola)?[- ](\\w*)/i,\n /((?:moto[\\w\\(\\) ]+|xt\\d{3,4}|nexus 6)(?= bui|\\)))/i\n ],\n [_, [d, le], [p, S]],\n [\n /\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i\n ],\n [_, [d, le], [p, R]],\n [\n // LG\n /((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i\n ],\n [_, [d, we], [p, R]],\n [\n /(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i,\n /\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i,\n /\\blg-?([\\d\\w]+) bui/i\n ],\n [_, [d, we], [p, S]],\n [\n // Lenovo\n /(ideatab[-\\w ]+)/i,\n /lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i\n ],\n [_, [d, \"Lenovo\"], [p, R]],\n [\n // Nokia\n /(?:maemo|nokia).*(n900|lumia \\d+)/i,\n /nokia[-_ ]?([-\\w\\.]*)/i\n ],\n [[_, /_/g, \" \"], [d, \"Nokia\"], [p, S]],\n [\n // Google\n /(pixel c)\\b/i\n // Google Pixel C\n ],\n [_, [d, ie], [p, R]],\n [\n /droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i\n // Google Pixel\n ],\n [_, [d, ie], [p, S]],\n [\n // Sony\n /droid.+ (a?\\d[0-2]{2}so|[c-g]\\d{4}|so[-gl]\\w+|xq-a\\w[4-7][12])(?= bui|\\).+chrome\\/(?![1-6]{0,1}\\d\\.))/i\n ],\n [_, [d, Se], [p, S]],\n [\n /sony tablet [ps]/i,\n /\\b(?:sony)?sgp\\w+(?: bui|\\))/i\n ],\n [[_, \"Xperia Tablet\"], [d, Se], [p, R]],\n [\n // OnePlus\n / (kb2005|in20[12]5|be20[12][59])\\b/i,\n /(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i\n ],\n [_, [d, \"OnePlus\"], [p, S]],\n [\n // Amazon\n /(alexa)webm/i,\n /(kf[a-z]{2}wi)( bui|\\))/i,\n // Kindle Fire without Silk\n /(kf[a-z]+)( bui|\\)).+silk\\//i\n // Kindle Fire HD\n ],\n [_, [d, ve], [p, R]],\n [\n /((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i\n // Fire Phone\n ],\n [[_, /(.+)/g, \"Fire Phone $1\"], [d, ve], [p, S]],\n [\n // BlackBerry\n /(playbook);[-\\w\\),; ]+(rim)/i\n // BlackBerry PlayBook\n ],\n [_, d, [p, R]],\n [\n /\\b((?:bb[a-f]|st[hv])100-\\d)/i,\n /\\(bb10; (\\w+)/i\n // BlackBerry 10\n ],\n [_, [d, Me], [p, S]],\n [\n // Asus\n /(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i\n ],\n [_, [d, P], [p, R]],\n [\n / (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i\n ],\n [_, [d, P], [p, S]],\n [\n // HTC\n /(nexus 9)/i\n // HTC Nexus 9\n ],\n [_, [d, \"HTC\"], [p, R]],\n [\n /(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i,\n // HTC\n // ZTE\n /(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i,\n /(alcatel|geeksphone|nexian|panasonic|sony(?!-bra))[-_ ]?([-\\w]*)/i\n // Alcatel/GeeksPhone/Nexian/Panasonic/Sony\n ],\n [d, [_, /_/g, \" \"], [p, S]],\n [\n // Acer\n /droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i\n ],\n [_, [d, \"Acer\"], [p, R]],\n [\n // Meizu\n /droid.+; (m[1-5] note) bui/i,\n /\\bmz-([-\\w]{2,})/i\n ],\n [_, [d, \"Meizu\"], [p, S]],\n [\n // Sharp\n /\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i\n ],\n [_, [d, re], [p, S]],\n [\n // MIXED\n /(blackberry|benq|palm(?=\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\w]*)/i,\n // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron\n /(hp) ([\\w ]+\\w)/i,\n // HP iPAQ\n /(asus)-?(\\w+)/i,\n // Asus\n /(microsoft); (lumia[\\w ]+)/i,\n // Microsoft Lumia\n /(lenovo)[-_ ]?([-\\w]+)/i,\n // Lenovo\n /(jolla)/i,\n // Jolla\n /(oppo) ?([\\w ]+) bui/i\n // OPPO\n ],\n [d, _, [p, S]],\n [\n /(archos) (gamepad2?)/i,\n // Archos\n /(hp).+(touchpad(?!.+tablet)|tablet)/i,\n // HP TouchPad\n /(kindle)\\/([\\w\\.]+)/i,\n // Kindle\n /(nook)[\\w ]+build\\/(\\w+)/i,\n // Nook\n /(dell) (strea[kpr\\d ]*[\\dko])/i,\n // Dell Streak\n /(le[- ]+pan)[- ]+(\\w{1,9}) bui/i,\n // Le Pan Tablets\n /(trinity)[- ]*(t\\d{3}) bui/i,\n // Trinity Tablets\n /(gigaset)[- ]+(q\\w{1,9}) bui/i,\n // Gigaset Tablets\n /(vodafone) ([\\w ]+)(?:\\)| bui)/i\n // Vodafone\n ],\n [d, _, [p, R]],\n [\n /(surface duo)/i\n // Surface Duo\n ],\n [_, [d, J], [p, R]],\n [\n /droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i\n // Fairphone\n ],\n [_, [d, \"Fairphone\"], [p, S]],\n [\n /(u304aa)/i\n // AT&T\n ],\n [_, [d, \"AT&T\"], [p, S]],\n [\n /\\bsie-(\\w*)/i\n // Siemens\n ],\n [_, [d, \"Siemens\"], [p, S]],\n [\n /\\b(rct\\w+) b/i\n // RCA Tablets\n ],\n [_, [d, \"RCA\"], [p, R]],\n [\n /\\b(venue[\\d ]{2,7}) b/i\n // Dell Venue Tablets\n ],\n [_, [d, \"Dell\"], [p, R]],\n [\n /\\b(q(?:mv|ta)\\w+) b/i\n // Verizon Tablet\n ],\n [_, [d, \"Verizon\"], [p, R]],\n [\n /\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i\n // Barnes & Noble Tablet\n ],\n [_, [d, \"Barnes & Noble\"], [p, R]],\n [\n /\\b(tm\\d{3}\\w+) b/i\n ],\n [_, [d, \"NuVision\"], [p, R]],\n [\n /\\b(k88) b/i\n // ZTE K Series Tablet\n ],\n [_, [d, \"ZTE\"], [p, R]],\n [\n /\\b(nx\\d{3}j) b/i\n // ZTE Nubia\n ],\n [_, [d, \"ZTE\"], [p, S]],\n [\n /\\b(gen\\d{3}) b.+49h/i\n // Swiss GEN Mobile\n ],\n [_, [d, \"Swiss\"], [p, S]],\n [\n /\\b(zur\\d{3}) b/i\n // Swiss ZUR Tablet\n ],\n [_, [d, \"Swiss\"], [p, R]],\n [\n /\\b((zeki)?tb.*\\b) b/i\n // Zeki Tablets\n ],\n [_, [d, \"Zeki\"], [p, R]],\n [\n /\\b([yr]\\d{2}) b/i,\n /\\b(dragon[- ]+touch |dt)(\\w{5}) b/i\n // Dragon Touch Tablet\n ],\n [[d, \"Dragon Touch\"], _, [p, R]],\n [\n /\\b(ns-?\\w{0,9}) b/i\n // Insignia Tablets\n ],\n [_, [d, \"Insignia\"], [p, R]],\n [\n /\\b((nxa|next)-?\\w{0,9}) b/i\n // NextBook Tablets\n ],\n [_, [d, \"NextBook\"], [p, R]],\n [\n /\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i\n // Voice Xtreme Phones\n ],\n [[d, \"Voice\"], _, [p, S]],\n [\n /\\b(lvtel\\-)?(v1[12]) b/i\n // LvTel Phones\n ],\n [[d, \"LvTel\"], _, [p, S]],\n [\n /\\b(ph-1) /i\n // Essential PH-1\n ],\n [_, [d, \"Essential\"], [p, S]],\n [\n /\\b(v(100md|700na|7011|917g).*\\b) b/i\n // Envizen Tablets\n ],\n [_, [d, \"Envizen\"], [p, R]],\n [\n /\\b(trio[-\\w\\. ]+) b/i\n // MachSpeed Tablets\n ],\n [_, [d, \"MachSpeed\"], [p, R]],\n [\n /\\btu_(1491) b/i\n // Rotor Tablets\n ],\n [_, [d, \"Rotor\"], [p, R]],\n [\n /(shield[\\w ]+) b/i\n // Nvidia Shield Tablets\n ],\n [_, [d, \"Nvidia\"], [p, R]],\n [\n /(sprint) (\\w+)/i\n // Sprint Phones\n ],\n [d, _, [p, S]],\n [\n /(kin\\.[onetw]{3})/i\n // Microsoft Kin\n ],\n [[_, /\\./g, \" \"], [d, J], [p, S]],\n [\n /droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i\n // Zebra\n ],\n [_, [d, Xe], [p, R]],\n [\n /droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i\n ],\n [_, [d, Xe], [p, S]],\n [\n ///////////////////\n // CONSOLES\n ///////////////////\n /(ouya)/i,\n // Ouya\n /(nintendo) ([wids3utch]+)/i\n // Nintendo\n ],\n [d, _, [p, w]],\n [\n /droid.+; (shield) bui/i\n // Nvidia\n ],\n [_, [d, \"Nvidia\"], [p, w]],\n [\n /(playstation [345portablevi]+)/i\n // Playstation\n ],\n [_, [d, Se], [p, w]],\n [\n /\\b(xbox(?: one)?(?!; xbox))[\\); ]/i\n // Microsoft Xbox\n ],\n [_, [d, J], [p, w]],\n [\n ///////////////////\n // SMARTTVS\n ///////////////////\n /smart-tv.+(samsung)/i\n // Samsung\n ],\n [d, [p, z]],\n [\n /hbbtv.+maple;(\\d+)/i\n ],\n [[_, /^/, \"SmartTV\"], [d, he], [p, z]],\n [\n /(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i\n // LG SmartTV\n ],\n [[d, we], [p, z]],\n [\n /(apple) ?tv/i\n // Apple TV\n ],\n [d, [_, Ae + \" TV\"], [p, z]],\n [\n /crkey/i\n // Google Chromecast\n ],\n [[_, je + \"cast\"], [d, ie], [p, z]],\n [\n /droid.+aft(\\w)( bui|\\))/i\n // Fire TV\n ],\n [_, [d, ve], [p, z]],\n [\n /\\(dtv[\\);].+(aquos)/i,\n /(aquos-tv[\\w ]+)\\)/i\n // Sharp\n ],\n [_, [d, re], [p, z]],\n [\n /(bravia[\\w ]+)( bui|\\))/i\n // Sony\n ],\n [_, [d, Se], [p, z]],\n [\n /(mitv-\\w{5}) bui/i\n // Xiaomi\n ],\n [_, [d, Pe], [p, z]],\n [\n /\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i,\n // Roku\n /hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w ]*; *(\\w[^;]*);([^;]*)/i\n // HbbTV devices\n ],\n [[d, k], [_, k], [p, z]],\n [\n /\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i\n // SmartTV from Unidentified Vendors\n ],\n [[p, z]],\n [\n ///////////////////\n // WEARABLES\n ///////////////////\n /((pebble))app/i\n // Pebble\n ],\n [d, _, [p, W]],\n [\n /droid.+; (glass) \\d/i\n // Google Glass\n ],\n [_, [d, ie], [p, W]],\n [\n /droid.+; (wt63?0{2,3})\\)/i\n ],\n [_, [d, Xe], [p, W]],\n [\n /(quest( 2)?)/i\n // Oculus Quest\n ],\n [_, [d, Oe], [p, W]],\n [\n ///////////////////\n // EMBEDDED\n ///////////////////\n /(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i\n // Tesla\n ],\n [d, [p, fe]],\n [\n ////////////////////\n // MIXED (GENERIC)\n ///////////////////\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i\n // Android Phones from Unidentified Vendors\n ],\n [_, [p, S]],\n [\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i\n // Android Tablets from Unidentified Vendors\n ],\n [_, [p, R]],\n [\n /\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i\n // Unidentifiable Tablet\n ],\n [[p, R]],\n [\n /(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i\n // Unidentifiable Mobile\n ],\n [[p, S]],\n [\n /(android[-\\w\\. ]{0,9});.+buil/i\n // Generic Android Device\n ],\n [_, [d, \"Generic\"]]\n ],\n engine: [\n [\n /windows.+ edge\\/([\\w\\.]+)/i\n // EdgeHTML\n ],\n [u, [m, ke + \"HTML\"]],\n [\n /webkit\\/537\\.36.+chrome\\/(?!27)([\\w\\.]+)/i\n // Blink\n ],\n [u, [m, \"Blink\"]],\n [\n /(presto)\\/([\\w\\.]+)/i,\n // Presto\n /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\/([\\w\\.]+)/i,\n // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna\n /ekioh(flow)\\/([\\w\\.]+)/i,\n // Flow\n /(khtml|tasman|links)[\\/ ]\\(?([\\w\\.]+)/i,\n // KHTML/Tasman/Links\n /(icab)[\\/ ]([23]\\.[\\d\\.]+)/i\n // iCab\n ],\n [m, u],\n [\n /rv\\:([\\w\\.]{1,9})\\b.+(gecko)/i\n // Gecko\n ],\n [u, m]\n ],\n os: [\n [\n // Windows\n /microsoft (windows) (vista|xp)/i\n // Windows (iTunes)\n ],\n [m, u],\n [\n /(windows) nt 6\\.2; (arm)/i,\n // Windows RT\n /(windows (?:phone(?: os)?|mobile))[\\/ ]?([\\d\\.\\w ]*)/i,\n // Windows Phone\n /(windows)[\\/ ]?([ntce\\d\\. ]+\\w)(?!.+xbox)/i\n ],\n [m, [u, I, ne]],\n [\n /(win(?=3|9|n)|win 9x )([nt\\d\\.]+)/i\n ],\n [[m, \"Windows\"], [u, I, ne]],\n [\n // iOS/macOS\n /ip[honead]{2,4}\\b(?:.*os ([\\w]+) like mac|; opera)/i,\n // iOS\n /cfnetwork\\/.+darwin/i\n ],\n [[u, /_/g, \".\"], [m, \"iOS\"]],\n [\n /(mac os x) ?([\\w\\. ]*)/i,\n /(macintosh|mac_powerpc\\b)(?!.+haiku)/i\n // Mac OS\n ],\n [[m, \"Mac OS\"], [u, /_/g, \".\"]],\n [\n // Mobile OSes\n /droid ([\\w\\.]+)\\b.+(android[- ]x86|harmonyos)/i\n // Android-x86/HarmonyOS\n ],\n [u, m],\n [\n // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS\n /(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\/ ]?([\\w\\.]*)/i,\n /(blackberry)\\w*\\/([\\w\\.]*)/i,\n // Blackberry\n /(tizen|kaios)[\\/ ]([\\w\\.]+)/i,\n // Tizen/KaiOS\n /\\((series40);/i\n // Series 40\n ],\n [m, u],\n [\n /\\(bb(10);/i\n // BlackBerry 10\n ],\n [u, [m, Me]],\n [\n /(?:symbian ?os|symbos|s60(?=;)|series60)[-\\/ ]?([\\w\\.]*)/i\n // Symbian\n ],\n [u, [m, \"Symbian\"]],\n [\n /mozilla\\/[\\d\\.]+ \\((?:mobile|tablet|tv|mobile; [\\w ]+); rv:.+ gecko\\/([\\w\\.]+)/i\n // Firefox OS\n ],\n [u, [m, H + \" OS\"]],\n [\n /web0s;.+rt(tv)/i,\n /\\b(?:hp)?wos(?:browser)?\\/([\\w\\.]+)/i\n // WebOS\n ],\n [u, [m, \"webOS\"]],\n [\n // Google Chromecast\n /crkey\\/([\\d\\.]+)/i\n // Google Chromecast\n ],\n [u, [m, je + \"cast\"]],\n [\n /(cros) [\\w]+ ([\\w\\.]+\\w)/i\n // Chromium OS\n ],\n [[m, \"Chromium OS\"], u],\n [\n // Console\n /(nintendo|playstation) ([wids345portablevuch]+)/i,\n // Nintendo/Playstation\n /(xbox); +xbox ([^\\);]+)/i,\n // Microsoft Xbox (360, One, X, S, Series X, Series S)\n // Other\n /\\b(joli|palm)\\b ?(?:os)?\\/?([\\w\\.]*)/i,\n // Joli/Palm\n /(mint)[\\/\\(\\) ]?(\\w*)/i,\n // Mint\n /(mageia|vectorlinux)[; ]/i,\n // Mageia/VectorLinux\n /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\/ ]?(?!chrom|package)([-\\w\\.]*)/i,\n // Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire\n /(hurd|linux) ?([\\w\\.]*)/i,\n // Hurd/Linux\n /(gnu) ?([\\w\\.]*)/i,\n // GNU\n /\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\/ ]?(?!amd|[ix346]{1,2}86)([\\w\\.]*)/i,\n // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly\n /(haiku) (\\w+)/i\n // Haiku\n ],\n [m, u],\n [\n /(sunos) ?([\\w\\.\\d]*)/i\n // Solaris\n ],\n [[m, \"Solaris\"], u],\n [\n /((?:open)?solaris)[-\\/ ]?([\\w\\.]*)/i,\n // Solaris\n /(aix) ((\\d)(?=\\.|\\)| )[\\w\\.])*/i,\n // AIX\n /\\b(beos|os\\/2|amigaos|morphos|openvms|fuchsia|hp-ux)/i,\n // BeOS/OS2/AmigaOS/MorphOS/OpenVMS/Fuchsia/HP-UX\n /(unix) ?([\\w\\.]*)/i\n // UNIX\n ],\n [m, u]\n ]\n }, te = function(K, Z) {\n if (typeof K === x && (Z = K, K = r), !(this instanceof te))\n return new te(K, Z).getResult();\n var Y = K || (typeof i !== C && i.navigator && i.navigator.userAgent ? i.navigator.userAgent : l), _e = Z ? st(oe, Z) : oe;\n return this.getBrowser = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.browser), ee.major = G(ee.version), ee;\n }, this.getCPU = function() {\n var ee = {};\n return ee[U] = r, F.call(ee, Y, _e.cpu), ee;\n }, this.getDevice = function() {\n var ee = {};\n return ee[d] = r, ee[_] = r, ee[p] = r, F.call(ee, Y, _e.device), ee;\n }, this.getEngine = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.engine), ee;\n }, this.getOS = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.os), ee;\n }, this.getResult = function() {\n return {\n ua: this.getUA(),\n browser: this.getBrowser(),\n engine: this.getEngine(),\n os: this.getOS(),\n device: this.getDevice(),\n cpu: this.getCPU()\n };\n }, this.getUA = function() {\n return Y;\n }, this.setUA = function(ee) {\n return Y = typeof ee === g && ee.length > q ? k(ee, q) : ee, this;\n }, this.setUA(Y), this;\n };\n te.VERSION = o, te.BROWSER = ze([m, u, D]), te.CPU = ze([U]), te.DEVICE = ze([_, d, p, w, S, z, R, W, fe]), te.ENGINE = te.OS = ze([m, u]), t.exports && (e = t.exports = te), e.UAParser = te;\n var Ee = typeof i !== C && (i.jQuery || i.Zepto);\n if (Ee && !Ee.ua) {\n var xe = new te();\n Ee.ua = xe.getResult(), Ee.ua.get = function() {\n return xe.getUA();\n }, Ee.ua.set = function(K) {\n xe.setUA(K);\n var Z = xe.getResult();\n for (var Y in Z)\n Ee.ua[Y] = Z[Y];\n };\n }\n })(typeof window == \"object\" ? window : nS);\n})(aS, pc);\nconst sS = pc, K0 = new sS(), mc = K0.getOS().name;\nmc && mc.toLowerCase().indexOf(\"android\") >= 0;\nmc && mc.toLowerCase().indexOf(\"ios\") >= 0;\nK0.getDevice().type;\nconst oS = 3e3, cS = new RegExp(\"^((http|https)://)|blob:\"), yn = \"cztv-preview\";\nlet lS = class {\n constructor() {\n _n(this, \"_xhr\"), _n(this, \"_imgList\", []), _n(this, \"_duration\", 0);\n }\n clear() {\n Be.i(yn, \"clear\"), this._destroyLoader(), this._duration = 0, this._imgList = [];\n }\n load(e) {\n if (Be.i(yn, `load:${e}`), !cS.test(e)) {\n this._imgList = this._parse(e);\n return;\n }\n this._imgList = [], this._load((i) => {\n this._destroyLoader(), this._imgList = this._parse(i);\n }, () => {\n Be.i(yn, \"load error\"), this._destroyLoader(this._xhr);\n }, e, oS, \"text\");\n }\n _load(e, i, r, o, l) {\n this._destroyLoader();\n const v = this._xhr = new XMLHttpRequest();\n v.open(\"GET\", r, !0), l && (v.responseType = l), v.timeout = o, v.ontimeout = v.onerror = () => {\n i && i(\"xhr error\");\n }, v.onload = () => {\n v.status < 200 || v.status > 299 ? i && i(`xhr error: ${v.status}`) : e(v.response);\n }, v.send();\n }\n getImgByTime(e) {\n if (this._imgList && this._imgList && this._duration)\n return tS.search(this._imgList, (i) => e < i.start ? -1 : e > i.end ? 1 : 0);\n }\n set duration(e) {\n Be.i(yn, `set duration: ${e}`), this._duration = e, this._updateListTime();\n }\n get duration() {\n return this._duration;\n }\n get hasPreview() {\n return !!(this._imgList && this._imgList.length > 0 && this._duration);\n }\n _destroyLoader(e) {\n e && (e.ontimeout = null, e.onload = null, e.onerror = null, e.onabort = null, e.abort());\n }\n _parse(e) {\n const i = [];\n try {\n const r = JSON.parse(e);\n if (!this._verify(r))\n return Be.i(yn, \"parse preview data fail. json format error.\"), i;\n const o = r;\n Be.i(yn, `parse preview data. count: ${o.spriteCount}`);\n let l = 160, v = 90, E = 5, C = 10;\n for (let x = 1; x <= o.spriteCount; x++) {\n const g = `${o.spritePrefix}${x}.jpg`;\n for (let D = 0; D < C; D++)\n for (let _ = 0; _ < E; _++) {\n const m = {\n x: _ * l,\n y: D * v,\n w: l,\n h: v,\n url: g,\n start: 0,\n end: 0\n };\n i.push(m);\n }\n }\n this._duration && this._updateListTime();\n } catch (r) {\n Be.i(yn, \"parse fail.\", r);\n }\n return i;\n }\n _verify(e) {\n return typeof e.spritePrefix == \"string\" && typeof e.spriteCount == \"number\" && e.spriteCount > 0;\n }\n _updateListTime() {\n if (!this._imgList.length || !this._duration)\n return;\n const e = this._imgList;\n let i = 1;\n this._duration > 1800 && e.length >= 1800 / 10 - 1 ? i = 10 : this._duration > 600 && e.length >= 600 / 5 - 1 ? i = 5 : this._duration > 200 && e.length >= 200 / 2 - 1 && (i = 2), Be.i(yn, `update preview list. list length: ${e.length}; duration: ${this._duration}; img duration: ${i}`), e.forEach((r, o) => {\n r.start = o * i, r.end = r.start + i;\n });\n }\n};\nconst uS = \"cztv-preview-plugin\";\nlet q0 = class extends e0 {\n constructor() {\n super(...arguments), _n(this, \"_player\"), _n(this, \"_cztvPreview\", new lS()), _n(this, \"_onDurationChange\", () => {\n var e;\n this._cztvPreview.duration = ((e = this._player) == null ? void 0 : e.duration) || 0;\n }), _n(this, \"_onSrcChange\", () => {\n this._clear();\n }), _n(this, \"_onPreviewUrlChange\", () => {\n var e;\n Be.i(uS, \"preview url change.\"), (e = this._player) != null && e.previewUrl ? this._load(this._player.previewUrl) : this._clear();\n });\n }\n beforeInstall(e) {\n this._player = e, e.on(ge.DURATIONCHANGE, this._onDurationChange), e.on(ge.ATTRIBUTE_CHANGE_SRC, this._onSrcChange), e.on(ge.ATTRIBUTE_CHANGE_PREVIEW_URL, this._onPreviewUrlChange);\n }\n afterInstall(e) {\n e.previewUrl && this._load(e.previewUrl);\n }\n afterUninstall(e) {\n this._clear(), e.off(ge.DURATIONCHANGE, this._onDurationChange), e.off(ge.ATTRIBUTE_CHANGE_SRC, this._onSrcChange), e.off(ge.ATTRIBUTE_CHANGE_PREVIEW_URL, this._onPreviewUrlChange);\n }\n getImgByTime(e) {\n return this._cztvPreview.getImgByTime(e);\n }\n get hasPreview() {\n return !!this._cztvPreview.hasPreview;\n }\n _load(e) {\n this._cztvPreview.load(e);\n }\n _clear() {\n this._destroyParser();\n }\n _destroyParser() {\n this._cztvPreview && this._cztvPreview.clear();\n }\n};\n_n(q0, \"version\", \"1.1.0-alpha.0\");\nvar _S = Object.defineProperty, dS = (t, e, i) => e in t ? _S(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, Rs = (t, e, i) => (dS(t, typeof e != \"symbol\" ? e + \"\" : e, i), i);\nconst iu = \"zh\", hS = \"i18-plugin\", h_ = class extends zv {\n constructor() {\n super(...arguments), Rs(this, \"_lang\", iu), Rs(this, \"_langDict\", []), Rs(this, \"_current\");\n }\n beforeInstall(e, i) {\n h_.defaultDict && (this._langDict = h_.defaultDict);\n }\n afterInstall(e, i) {\n i != null && i.langDict && (i == null ? void 0 : i.langDict).forEach((r) => {\n const o = this._getLocalDict(r.lang, !0);\n o ? Object.assign(o, r.map) : this._langDict.unshift(r);\n }), this._lang = ((i == null ? void 0 : i.lang) || navigator.language || navigator.userLanguage || iu).toLocaleLowerCase(), this._current = this._getLocalDict(this._lang), Be.i(hS, `use lang: ${this._lang} ${!!this._current}.`);\n }\n text(e, i) {\n return this._current && this._current[e] && this._current[e][i] || \"\";\n }\n addDict(e, i) {\n i = (i || iu).toLocaleLowerCase();\n const r = this._getLocalDict(i, !0);\n r ? Object.keys(e).forEach((o) => {\n r[o] || (r[o] = {}), Object.assign(r[o], e[o]);\n }) : this._langDict.unshift({ lang: i, map: e });\n }\n _getLocalDict(e, i = !1) {\n for (let r = 0; r < this._langDict.length; r++)\n if (i && this._langDict[r].lang === e || !i && e.indexOf(this._langDict[r].lang) === 0)\n return this._langDict[r].map;\n }\n};\nlet f_ = h_;\nRs(f_, \"version\", \"1.1.0-alpha.0\"), Rs(f_, \"defaultDict\");\nvar fS = Object.defineProperty, pS = (t, e, i) => e in t ? fS(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, Cs = (t, e, i) => (pS(t, typeof e != \"symbol\" ? e + \"\" : e, i), i);\nconst Y0 = class extends Bi {\n constructor() {\n super(...arguments), Cs(this, \"_player\"), Cs(this, \"_domainList\", []), Cs(this, \"_logger\");\n }\n afterInstall(e) {\n var i;\n this._player = e, this._logger = e.getPluginInstance(Nv), e.on(ge.ATTRIBUTE_CHANGE_SRC, () => {\n var o;\n (o = this._player) != null && o.src && this._check(this._player.src);\n });\n const r = this._player.src;\n (i = this._logger) == null || i.appendSummaryField(\"prefetch\", this._player.prefetch ? 1 : 0), r && this._check(r);\n }\n beforeUninstall() {\n this._player = void 0;\n }\n getLabel() {\n return Y0.label;\n }\n _check(e) {\n var i, r, o, l, v, E;\n if ((i = this._player) != null && i.autoplay || ((r = this._player) == null ? void 0 : r.preload) !== \"none\" || !this._player.prefetch) {\n (o = this._logger) == null || o.appendSummaryField(\"prefetch_valid\", 0);\n return;\n }\n if ((l = this._logger) == null || l.appendSummaryField(\"prefetch_valid\", 1), typeof e == \"string\") {\n const C = this._getHostname(e);\n C && this._domainList.indexOf(C) === -1 && (this._domainList.push(C), (v = this._logger) == null || v.appendSummaryField(\"prefetch_start_time\", Date.now()), this._send(e));\n }\n if (typeof e == \"object\") {\n const C = this._pickUrl(e), x = {};\n let g = !1;\n for (const D of C) {\n const _ = this._getHostname(D);\n _ && !x[_] && (x[_] = D, this._send(D), g || ((E = this._logger) == null || E.appendSummaryField(\"prefetch_start_time\", Date.now()), g = !0));\n }\n }\n }\n _send(e, i) {\n const r = new XMLHttpRequest();\n r.open(\"HEAD\", e), r.onreadystatechange = () => {\n r.readyState === 3 && (r.abort(), i && i()), r.readyState === 4 && i && i();\n }, r.timeout = 3e3, r.ontimeout = () => {\n console.warn(e + \" timeout\"), i && i();\n }, r.onerror = () => {\n console.warn(e + \" error\"), i && i();\n }, r.send();\n }\n _getHostname(e) {\n const i = e.match(\"^(http|https)://[a-zA-Z0-9._-]+\");\n return i ? i[0] : \"\";\n }\n _pickUrl(e, i = []) {\n const r = Object.keys(e);\n for (let o = 0; o < r.length; o++) {\n const l = r[o];\n typeof e[l] == \"string\" && this._getHostname(e[l]) && i.push(e[l]), typeof e[l] == \"object\" && this._pickUrl(e[l], i);\n }\n return i;\n }\n};\nlet p_ = Y0;\nCs(p_, \"version\", \"1.1.0-alpha.0\"), Cs(p_, \"label\", \"PrefetchPlugin\");\n(function() {\n try {\n if (typeof document < \"u\") {\n var t = document.createElement(\"style\");\n t.appendChild(document.createTextNode(\"._container_1njkj_1{background-color:rgba(0,0,0,.8);border-radius:.375em;position:relative;color:#fff;font-size:12px;font-family:Roboto,Noto,sans-serif;box-sizing:border-box;padding:.625em;overflow:auto;word-break:break-all;white-space:normal;max-width:calc(100% - 10px);max-height:calc(100% - 10px);line-height:1.5;top:.3125em;left:.3125em}._container-h5_1njkj_20{background-color:rgba(0,0,0,.8);border-radius:.375em;position:relative;color:#fff;font-size:12px;font-family:Roboto,Noto,sans-serif;box-sizing:border-box;padding:.625em;overflow:auto;word-break:break-all;white-space:normal;font-size:14px;width:100%;height:100%}._close-btn_1njkj_37{position:absolute;right:0;top:0;cursor:pointer;word-break:keep-all;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding:.625em}._btn-tip_1njkj_50{background-color:rgba(0,0,0,.8);border-radius:.375em;position:absolute;left:50%;transform:translate(-50%);bottom:2.1875em;white-space:nowrap;padding:.5em}._actions_1njkj_61{display:flex;justify-content:flex-end;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;padding:0}._actions_1njkj_61 ._copy-btn_1njkj_70{word-break:keep-all;cursor:pointer;padding:.625em 0 0 .625em}._info-item_1njkj_76{display:flex}._info-item-name_1njkj_80{width:30%;text-align:right;margin-right:.625em;flex-shrink:0}._info-item-value_1njkj_87{flex-grow:1;text-align:left}._item-svg_1njkj_92{display:inline-block;width:60%;height:1em;margin-right:.625em;background:rgba(255,255,255,.2)}._item-value_1njkj_100{display:inline-block}@media (hover: hover){._close-btn_1njkj_37:hover,._copy-btn_1njkj_70:hover{color:#ccc}}\")), document.head.appendChild(t);\n }\n } catch (e) {\n console.error(\"vite-plugin-css-injected-by-js\", e);\n }\n})();\nvar mS = Object.defineProperty, vS = (t, e, i) => e in t ? mS(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, Uo = (t, e, i) => (vS(t, typeof e != \"symbol\" ? e + \"\" : e, i), i), gS = Object.defineProperty, bS = (t, e, i) => e in t ? gS(t, e, {\n enumerable: !0,\n configurable: !0,\n writable: !0,\n value: i\n}) : t[e] = i, na = (t, e, i) => (bS(t, typeof e != \"symbol\" ? e + \"\" : e, i), i);\nconst qn = class {\n constructor() {\n na(this, \"timeout\", 7 * 24 * 3600 * 1e3);\n }\n write(t, e) {\n if (qn.available)\n try {\n localStorage.setItem(t, JSON.stringify({\n value: e,\n time: Date.now()\n }));\n } catch (i) {\n }\n }\n read(t, e = !0) {\n if (qn.available)\n try {\n const i = localStorage.getItem(t);\n if (i) {\n const {\n value: r,\n time: o = 0\n } = JSON.parse(i);\n if (!e || Date.now() - o < this.timeout)\n return r;\n }\n } catch (i) {\n }\n }\n static get available() {\n if (typeof qn._available > \"u\")\n try {\n localStorage.setItem(\"alg\", \"test\"), qn._available = !0;\n } catch (t) {\n qn._available = !1;\n }\n return qn._available;\n }\n};\nlet yS = qn;\nna(yS, \"_available\");\nconst ES = \"kwai-p\";\nfunction ps(t, e) {\n return (!e || e.length === 0) && (e = [t], t = \"\"), t = ES + (t ? \"::\" + t : \"\"), e.unshift(\"[\" + t + \"] > \"), e;\n}\nconst ri = class {\n /**\n * 设置日志输出等级\n * @param l 日志等级\n */\n static level(e) {\n switch (ri.ENABLE_ERROR = ri.ENABLE_WARN = ri.ENABLE_INFO = ri.ENABLE_DEBUG = ri.ENABLE_VERBOSE = !1, e) {\n case \"e\":\n ri.ENABLE_ERROR = !0;\n break;\n case \"w\":\n ri.ENABLE_ERROR = ri.ENABLE_WARN = !0;\n break;\n case \"i\":\n ri.ENABLE_ERROR = ri.ENABLE_WARN = ri.ENABLE_INFO = !0;\n break;\n case \"d\":\n ri.ENABLE_ERROR = ri.ENABLE_WARN = ri.ENABLE_INFO = ri.ENABLE_DEBUG = !0;\n break;\n case \"v\":\n ri.ENABLE_ERROR = ri.ENABLE_WARN = ri.ENABLE_INFO = ri.ENABLE_DEBUG = ri.ENABLE_VERBOSE = !0;\n break;\n }\n }\n /**\n * error日志\n * @param tag tag\n * @param msg 日志信息\n */\n static e(e, ...i) {\n if (!ri.ENABLE_ERROR)\n return;\n const r = ps(e, i);\n (console.error || console.warn || console.log).apply(console, r);\n }\n /**\n * warn日志\n * @param tag tag\n * @param msg 日志信息\n */\n static w(e, ...i) {\n if (!ri.ENABLE_WARN)\n return;\n const r = ps(e, i);\n (console.warn || console.log).apply(console, r);\n }\n /**\n * info日志\n * @param tag tag\n * @param msg 日志信息\n */\n static i(e, ...i) {\n if (!ri.ENABLE_INFO)\n return;\n const r = ps(e, i);\n (console.info || console.log).apply(console, r);\n }\n /**\n * debug日志\n * @param tag tag\n * @param msg 日志信息\n */\n static d(e, ...i) {\n if (!ri.ENABLE_DEBUG)\n return;\n const r = ps(e, i);\n (console.debug || console.log).apply(console, r);\n }\n /**\n * verbose日志\n * @param tag tag\n * @param msg 日志信息\n */\n static v(e, ...i) {\n if (!ri.ENABLE_VERBOSE)\n return;\n const r = ps(e, i);\n console.log.apply(console, r);\n }\n};\nlet ms = ri;\nna(ms, \"ENABLE_ERROR\", !0), na(ms, \"ENABLE_WARN\", !1), na(ms, \"ENABLE_INFO\", !1), na(ms, \"ENABLE_DEBUG\", !1), na(ms, \"ENABLE_VERBOSE\", !1);\nvar wS = typeof globalThis < \"u\" ? globalThis : typeof window < \"u\" ? window : typeof global < \"u\" ? global : typeof self < \"u\" ? self : {}, vc = {}, AS = {\n get exports() {\n return vc;\n },\n set exports(t) {\n vc = t;\n }\n};\n(function(t, e) {\n (function(i, r) {\n var o = \"1.0.33\", l = \"\", v = \"?\", E = \"function\", C = \"undefined\", x = \"object\", g = \"string\", D = \"major\", _ = \"model\", m = \"name\", p = \"type\", d = \"vendor\", u = \"version\", U = \"architecture\", w = \"console\", S = \"mobile\", R = \"tablet\", z = \"smarttv\", W = \"wearable\", fe = \"embedded\", q = 350, ve = \"Amazon\", Ae = \"Apple\", P = \"ASUS\", Me = \"BlackBerry\", Ie = \"Browser\", je = \"Chrome\", ke = \"Edge\", H = \"Firefox\", ie = \"Google\", ye = \"Huawei\", we = \"LG\", J = \"Microsoft\", le = \"Motorola\", me = \"Opera\", he = \"Samsung\", re = \"Sharp\", Se = \"Sony\", Pe = \"Xiaomi\", Xe = \"Zebra\", Oe = \"Facebook\", st = function(K, Z) {\n var Y = {};\n for (var _e in K)\n Z[_e] && Z[_e].length % 2 === 0 ? Y[_e] = Z[_e].concat(K[_e]) : Y[_e] = K[_e];\n return Y;\n }, ze = function(K) {\n for (var Z = {}, Y = 0; Y < K.length; Y++)\n Z[K[Y].toUpperCase()] = K[Y];\n return Z;\n }, rt = function(K, Z) {\n return typeof K === g ? Fe(Z).indexOf(Fe(K)) !== -1 : !1;\n }, Fe = function(K) {\n return K.toLowerCase();\n }, G = function(K) {\n return typeof K === g ? K.replace(/[^\\d\\.]/g, l).split(\".\")[0] : r;\n }, k = function(K, Z) {\n if (typeof K === g)\n return K = K.replace(/^\\s\\s*/, l), typeof Z === C ? K : K.substring(0, q);\n }, F = function(K, Z) {\n for (var Y = 0, _e, ee, Ve, ce, qe, Ce; Y < Z.length && !qe; ) {\n var Ye = Z[Y], tt = Z[Y + 1];\n for (_e = ee = 0; _e < Ye.length && !qe; )\n if (qe = Ye[_e++].exec(K), qe)\n for (Ve = 0; Ve < tt.length; Ve++)\n Ce = qe[++ee], ce = tt[Ve], typeof ce === x && ce.length > 0 ? ce.length === 2 ? typeof ce[1] == E ? this[ce[0]] = ce[1].call(this, Ce) : this[ce[0]] = ce[1] : ce.length === 3 ? typeof ce[1] === E && !(ce[1].exec && ce[1].test) ? this[ce[0]] = Ce ? ce[1].call(this, Ce, ce[2]) : r : this[ce[0]] = Ce ? Ce.replace(ce[1], ce[2]) : r : ce.length === 4 && (this[ce[0]] = Ce ? ce[3].call(this, Ce.replace(ce[1], ce[2])) : r) : this[ce] = Ce || r;\n Y += 2;\n }\n }, I = function(K, Z) {\n for (var Y in Z)\n if (typeof Z[Y] === x && Z[Y].length > 0) {\n for (var _e = 0; _e < Z[Y].length; _e++)\n if (rt(Z[Y][_e], K))\n return Y === v ? r : Y;\n } else if (rt(Z[Y], K))\n return Y === v ? r : Y;\n return K;\n }, V = {\n \"1.0\": \"/8\",\n \"1.2\": \"/1\",\n \"1.3\": \"/3\",\n \"2.0\": \"/412\",\n \"2.0.2\": \"/416\",\n \"2.0.3\": \"/417\",\n \"2.0.4\": \"/419\",\n \"?\": \"/\"\n }, ne = {\n ME: \"4.90\",\n \"NT 3.11\": \"NT3.51\",\n \"NT 4.0\": \"NT4.0\",\n 2e3: \"NT 5.0\",\n XP: [\"NT 5.1\", \"NT 5.2\"],\n Vista: \"NT 6.0\",\n 7: \"NT 6.1\",\n 8: \"NT 6.2\",\n \"8.1\": \"NT 6.3\",\n 10: [\"NT 6.4\", \"NT 10.0\"],\n RT: \"ARM\"\n }, oe = {\n browser: [[\n /\\b(?:crmo|crios)\\/([\\w\\.]+)/i\n // Chrome for Android/iOS\n ], [u, [m, \"Chrome\"]], [\n /edg(?:e|ios|a)?\\/([\\w\\.]+)/i\n // Microsoft Edge\n ], [u, [m, \"Edge\"]], [\n // Presto based\n /(opera mini)\\/([-\\w\\.]+)/i,\n // Opera Mini\n /(opera [mobiletab]{3,6})\\b.+version\\/([-\\w\\.]+)/i,\n // Opera Mobi/Tablet\n /(opera)(?:.+version\\/|[\\/ ]+)([\\w\\.]+)/i\n // Opera\n ], [m, u], [\n /opios[\\/ ]+([\\w\\.]+)/i\n // Opera mini on iphone >= 8.0\n ], [u, [m, me + \" Mini\"]], [\n /\\bopr\\/([\\w\\.]+)/i\n // Opera Webkit\n ], [u, [m, me]], [\n // Mixed\n /(kindle)\\/([\\w\\.]+)/i,\n // Kindle\n /(lunascape|maxthon|netfront|jasmine|blazer)[\\/ ]?([\\w\\.]*)/i,\n // Lunascape/Maxthon/Netfront/Jasmine/Blazer\n // Trident based\n /(avant |iemobile|slim)(?:browser)?[\\/ ]?([\\w\\.]*)/i,\n // Avant/IEMobile/SlimBrowser\n /(ba?idubrowser)[\\/ ]?([\\w\\.]+)/i,\n // Baidu Browser\n /(?:ms|\\()(ie) ([\\w\\.]+)/i,\n // Internet Explorer\n // Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon\n /(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale|qqbrowserlite|qq|duckduckgo)\\/([-\\w\\.]+)/i,\n // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ, aka ShouQ\n /(weibo)__([\\d\\.]+)/i\n // Weibo\n ], [m, u], [\n /(?:\\buc? ?browser|(?:juc.+)ucweb)[\\/ ]?([\\w\\.]+)/i\n // UCBrowser\n ], [u, [m, \"UC\" + Ie]], [\n /microm.+\\bqbcore\\/([\\w\\.]+)/i,\n // WeChat Desktop for Windows Built-in Browser\n /\\bqbcore\\/([\\w\\.]+).+microm/i\n ], [u, [m, \"WeChat(Win) Desktop\"]], [\n /micromessenger\\/([\\w\\.]+)/i\n // WeChat\n ], [u, [m, \"WeChat\"]], [\n /konqueror\\/([\\w\\.]+)/i\n // Konqueror\n ], [u, [m, \"Konqueror\"]], [\n /trident.+rv[: ]([\\w\\.]{1,9})\\b.+like gecko/i\n // IE11\n ], [u, [m, \"IE\"]], [\n /yabrowser\\/([\\w\\.]+)/i\n // Yandex\n ], [u, [m, \"Yandex\"]], [\n /(avast|avg)\\/([\\w\\.]+)/i\n // Avast/AVG Secure Browser\n ], [[m, /(.+)/, \"$1 Secure \" + Ie], u], [\n /\\bfocus\\/([\\w\\.]+)/i\n // Firefox Focus\n ], [u, [m, H + \" Focus\"]], [\n /\\bopt\\/([\\w\\.]+)/i\n // Opera Touch\n ], [u, [m, me + \" Touch\"]], [\n /coc_coc\\w+\\/([\\w\\.]+)/i\n // Coc Coc Browser\n ], [u, [m, \"Coc Coc\"]], [\n /dolfin\\/([\\w\\.]+)/i\n // Dolphin\n ], [u, [m, \"Dolphin\"]], [\n /coast\\/([\\w\\.]+)/i\n // Opera Coast\n ], [u, [m, me + \" Coast\"]], [\n /miuibrowser\\/([\\w\\.]+)/i\n // MIUI Browser\n ], [u, [m, \"MIUI \" + Ie]], [\n /fxios\\/([-\\w\\.]+)/i\n // Firefox for iOS\n ], [u, [m, H]], [\n /\\bqihu|(qi?ho?o?|360)browser/i\n // 360\n ], [[m, \"360 \" + Ie]], [/(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i], [[m, /(.+)/, \"$1 \" + Ie], u], [\n // Oculus/Samsung/Sailfish/Huawei Browser\n /(comodo_dragon)\\/([\\w\\.]+)/i\n // Comodo Dragon\n ], [[m, /_/g, \" \"], u], [\n /(electron)\\/([\\w\\.]+) safari/i,\n // Electron-based App\n /(tesla)(?: qtcarbrowser|\\/(20\\d\\d\\.[-\\w\\.]+))/i,\n // Tesla\n /m?(qqbrowser|baiduboxapp|2345Explorer)[\\/ ]?([\\w\\.]+)/i\n // QQBrowser/Baidu App/2345 Browser\n ], [m, u], [\n /(metasr)[\\/ ]?([\\w\\.]+)/i,\n // SouGouBrowser\n /(lbbrowser)/i,\n // LieBao Browser\n /\\[(linkedin)app\\]/i\n // LinkedIn App for iOS & Android\n ], [m], [\n // WebView\n /((?:fban\\/fbios|fb_iab\\/fb4a)(?!.+fbav)|;fbav\\/([\\w\\.]+);)/i\n // Facebook App for iOS & Android\n ], [[m, Oe], u], [\n /safari (line)\\/([\\w\\.]+)/i,\n // Line App for iOS\n /\\b(line)\\/([\\w\\.]+)\\/iab/i,\n // Line App for Android\n /(chromium|instagram)[\\/ ]([-\\w\\.]+)/i\n // Chromium/Instagram\n ], [m, u], [\n /\\bgsa\\/([\\w\\.]+) .*safari\\//i\n // Google Search Appliance on iOS\n ], [u, [m, \"GSA\"]], [\n /headlesschrome(?:\\/([\\w\\.]+)| )/i\n // Chrome Headless\n ], [u, [m, je + \" Headless\"]], [\n / wv\\).+(chrome)\\/([\\w\\.]+)/i\n // Chrome WebView\n ], [[m, je + \" WebView\"], u], [\n /droid.+ version\\/([\\w\\.]+)\\b.+(?:mobile safari|safari)/i\n // Android Browser\n ], [u, [m, \"Android \" + Ie]], [\n /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\/v?([\\w\\.]+)/i\n // Chrome/OmniWeb/Arora/Tizen/Nokia\n ], [m, u], [\n /version\\/([\\w\\.\\,]+) .*mobile\\/\\w+ (safari)/i\n // Mobile Safari\n ], [u, [m, \"Mobile Safari\"]], [\n /version\\/([\\w(\\.|\\,)]+) .*(mobile ?safari|safari)/i\n // Safari & Safari Mobile\n ], [u, m], [\n /webkit.+?(mobile ?safari|safari)(\\/[\\w\\.]+)/i\n // Safari < 3.0\n ], [m, [u, I, V]], [/(webkit|khtml)\\/([\\w\\.]+)/i], [m, u], [\n // Gecko based\n /(navigator|netscape\\d?)\\/([-\\w\\.]+)/i\n // Netscape\n ], [[m, \"Netscape\"], u], [\n /mobile vr; rv:([\\w\\.]+)\\).+firefox/i\n // Firefox Reality\n ], [u, [m, H + \" Reality\"]], [\n /ekiohf.+(flow)\\/([\\w\\.]+)/i,\n // Flow\n /(swiftfox)/i,\n // Swiftfox\n /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\/ ]?([\\w\\.\\+]+)/i,\n // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror/Klar\n /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\/([-\\w\\.]+)$/i,\n // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix\n /(firefox)\\/([\\w\\.]+)/i,\n // Other Firefox-based\n /(mozilla)\\/([\\w\\.]+) .+rv\\:.+gecko\\/\\d+/i,\n // Mozilla\n // Other\n /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\. ]?browser)[-\\/ ]?v?([\\w\\.]+)/i,\n // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Sleipnir/Obigo/Mosaic/Go/ICE/UP.Browser\n /(links) \\(([\\w\\.]+)/i\n // Links\n ], [m, u], [\n /(cobalt)\\/([\\w\\.]+)/i\n // Cobalt\n ], [m, [u, /master.|lts./, \"\"]]],\n cpu: [[\n /(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\)]/i\n // AMD64 (x64)\n ], [[U, \"amd64\"]], [\n /(ia32(?=;))/i\n // IA32 (quicktime)\n ], [[U, Fe]], [\n /((?:i[346]|x)86)[;\\)]/i\n // IA32 (x86)\n ], [[U, \"ia32\"]], [\n /\\b(aarch64|arm(v?8e?l?|_?64))\\b/i\n // ARM64\n ], [[U, \"arm64\"]], [\n /\\b(arm(?:v[67])?ht?n?[fl]p?)\\b/i\n // ARMHF\n ], [[U, \"armhf\"]], [\n // PocketPC mistakenly identified as PowerPC\n /windows (ce|mobile); ppc;/i\n ], [[U, \"arm\"]], [\n /((?:ppc|powerpc)(?:64)?)(?: mac|;|\\))/i\n // PowerPC\n ], [[U, /ower/, l, Fe]], [\n /(sun4\\w)[;\\)]/i\n // SPARC\n ], [[U, \"sparc\"]], [\n /((?:avr32|ia64(?=;))|68k(?=\\))|\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\b|pa-risc)/i\n // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC\n ], [[U, Fe]]],\n device: [[\n //////////////////////////\n // MOBILES & TABLETS\n // Ordered by popularity\n /////////////////////////\n // Samsung\n /\\b(sch-i[89]0\\d|shw-m380s|sm-[ptx]\\w{2,4}|gt-[pn]\\d{2,4}|sgh-t8[56]9|nexus 10)/i\n ], [_, [d, he], [p, R]], [/\\b((?:s[cgp]h|gt|sm)-\\w+|galaxy nexus)/i, /samsung[- ]([-\\w]+)/i, /sec-(sgh\\w+)/i], [_, [d, he], [p, S]], [\n // Apple\n /\\((ip(?:hone|od)[\\w ]*);/i\n // iPod/iPhone\n ], [_, [d, Ae], [p, S]], [\n /\\((ipad);[-\\w\\),; ]+apple/i,\n // iPad\n /applecoremedia\\/[\\w\\.]+ \\((ipad)/i,\n /\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i\n ], [_, [d, Ae], [p, R]], [/(macintosh);/i], [_, [d, Ae]], [\n // Huawei\n /\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i\n ], [_, [d, ye], [p, R]], [/(?:huawei|honor)([-\\w ]+)[;\\)]/i, /\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i], [_, [d, ye], [p, S]], [\n // Xiaomi\n /\\b(poco[\\w ]+)(?: bui|\\))/i,\n // Xiaomi POCO\n /\\b; (\\w+) build\\/hm\\1/i,\n // Xiaomi Hongmi 'numeric' models\n /\\b(hm[-_ ]?note?[_ ]?(?:\\d\\w)?) bui/i,\n // Xiaomi Hongmi\n /\\b(redmi[\\-_ ]?(?:note|k)?[\\w_ ]+)(?: bui|\\))/i,\n // Xiaomi Redmi\n /\\b(mi[-_ ]?(?:a\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\d?\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\))/i\n // Xiaomi Mi\n ], [[_, /_/g, \" \"], [d, Pe], [p, S]], [\n /\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i\n // Mi Pad tablets\n ], [[_, /_/g, \" \"], [d, Pe], [p, R]], [\n // OPPO\n /; (\\w+) bui.+ oppo/i,\n /\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i\n ], [_, [d, \"OPPO\"], [p, S]], [\n // Vivo\n /vivo (\\w+)(?: bui|\\))/i,\n /\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i\n ], [_, [d, \"Vivo\"], [p, S]], [\n // Realme\n /\\b(rmx[12]\\d{3})(?: bui|;|\\))/i\n ], [_, [d, \"Realme\"], [p, S]], [\n // Motorola\n /\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\b[\\w ]+build\\//i,\n /\\bmot(?:orola)?[- ](\\w*)/i,\n /((?:moto[\\w\\(\\) ]+|xt\\d{3,4}|nexus 6)(?= bui|\\)))/i\n ], [_, [d, le], [p, S]], [/\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i], [_, [d, le], [p, R]], [\n // LG\n /((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i\n ], [_, [d, we], [p, R]], [/(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i, /\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i, /\\blg-?([\\d\\w]+) bui/i], [_, [d, we], [p, S]], [\n // Lenovo\n /(ideatab[-\\w ]+)/i,\n /lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i\n ], [_, [d, \"Lenovo\"], [p, R]], [\n // Nokia\n /(?:maemo|nokia).*(n900|lumia \\d+)/i,\n /nokia[-_ ]?([-\\w\\.]*)/i\n ], [[_, /_/g, \" \"], [d, \"Nokia\"], [p, S]], [\n // Google\n /(pixel c)\\b/i\n // Google Pixel C\n ], [_, [d, ie], [p, R]], [\n /droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i\n // Google Pixel\n ], [_, [d, ie], [p, S]], [\n // Sony\n /droid.+ (a?\\d[0-2]{2}so|[c-g]\\d{4}|so[-gl]\\w+|xq-a\\w[4-7][12])(?= bui|\\).+chrome\\/(?![1-6]{0,1}\\d\\.))/i\n ], [_, [d, Se], [p, S]], [/sony tablet [ps]/i, /\\b(?:sony)?sgp\\w+(?: bui|\\))/i], [[_, \"Xperia Tablet\"], [d, Se], [p, R]], [\n // OnePlus\n / (kb2005|in20[12]5|be20[12][59])\\b/i,\n /(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i\n ], [_, [d, \"OnePlus\"], [p, S]], [\n // Amazon\n /(alexa)webm/i,\n /(kf[a-z]{2}wi)( bui|\\))/i,\n // Kindle Fire without Silk\n /(kf[a-z]+)( bui|\\)).+silk\\//i\n // Kindle Fire HD\n ], [_, [d, ve], [p, R]], [\n /((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i\n // Fire Phone\n ], [[_, /(.+)/g, \"Fire Phone $1\"], [d, ve], [p, S]], [\n // BlackBerry\n /(playbook);[-\\w\\),; ]+(rim)/i\n // BlackBerry PlayBook\n ], [_, d, [p, R]], [\n /\\b((?:bb[a-f]|st[hv])100-\\d)/i,\n /\\(bb10; (\\w+)/i\n // BlackBerry 10\n ], [_, [d, Me], [p, S]], [\n // Asus\n /(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i\n ], [_, [d, P], [p, R]], [/ (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i], [_, [d, P], [p, S]], [\n // HTC\n /(nexus 9)/i\n // HTC Nexus 9\n ], [_, [d, \"HTC\"], [p, R]], [\n /(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i,\n // HTC\n // ZTE\n /(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i,\n /(alcatel|geeksphone|nexian|panasonic|sony(?!-bra))[-_ ]?([-\\w]*)/i\n // Alcatel/GeeksPhone/Nexian/Panasonic/Sony\n ], [d, [_, /_/g, \" \"], [p, S]], [\n // Acer\n /droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i\n ], [_, [d, \"Acer\"], [p, R]], [\n // Meizu\n /droid.+; (m[1-5] note) bui/i,\n /\\bmz-([-\\w]{2,})/i\n ], [_, [d, \"Meizu\"], [p, S]], [\n // Sharp\n /\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i\n ], [_, [d, re], [p, S]], [\n // MIXED\n /(blackberry|benq|palm(?=\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\w]*)/i,\n // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron\n /(hp) ([\\w ]+\\w)/i,\n // HP iPAQ\n /(asus)-?(\\w+)/i,\n // Asus\n /(microsoft); (lumia[\\w ]+)/i,\n // Microsoft Lumia\n /(lenovo)[-_ ]?([-\\w]+)/i,\n // Lenovo\n /(jolla)/i,\n // Jolla\n /(oppo) ?([\\w ]+) bui/i\n // OPPO\n ], [d, _, [p, S]], [\n /(archos) (gamepad2?)/i,\n // Archos\n /(hp).+(touchpad(?!.+tablet)|tablet)/i,\n // HP TouchPad\n /(kindle)\\/([\\w\\.]+)/i,\n // Kindle\n /(nook)[\\w ]+build\\/(\\w+)/i,\n // Nook\n /(dell) (strea[kpr\\d ]*[\\dko])/i,\n // Dell Streak\n /(le[- ]+pan)[- ]+(\\w{1,9}) bui/i,\n // Le Pan Tablets\n /(trinity)[- ]*(t\\d{3}) bui/i,\n // Trinity Tablets\n /(gigaset)[- ]+(q\\w{1,9}) bui/i,\n // Gigaset Tablets\n /(vodafone) ([\\w ]+)(?:\\)| bui)/i\n // Vodafone\n ], [d, _, [p, R]], [\n /(surface duo)/i\n // Surface Duo\n ], [_, [d, J], [p, R]], [\n /droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i\n // Fairphone\n ], [_, [d, \"Fairphone\"], [p, S]], [\n /(u304aa)/i\n // AT&T\n ], [_, [d, \"AT&T\"], [p, S]], [\n /\\bsie-(\\w*)/i\n // Siemens\n ], [_, [d, \"Siemens\"], [p, S]], [\n /\\b(rct\\w+) b/i\n // RCA Tablets\n ], [_, [d, \"RCA\"], [p, R]], [\n /\\b(venue[\\d ]{2,7}) b/i\n // Dell Venue Tablets\n ], [_, [d, \"Dell\"], [p, R]], [\n /\\b(q(?:mv|ta)\\w+) b/i\n // Verizon Tablet\n ], [_, [d, \"Verizon\"], [p, R]], [\n /\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i\n // Barnes & Noble Tablet\n ], [_, [d, \"Barnes & Noble\"], [p, R]], [/\\b(tm\\d{3}\\w+) b/i], [_, [d, \"NuVision\"], [p, R]], [\n /\\b(k88) b/i\n // ZTE K Series Tablet\n ], [_, [d, \"ZTE\"], [p, R]], [\n /\\b(nx\\d{3}j) b/i\n // ZTE Nubia\n ], [_, [d, \"ZTE\"], [p, S]], [\n /\\b(gen\\d{3}) b.+49h/i\n // Swiss GEN Mobile\n ], [_, [d, \"Swiss\"], [p, S]], [\n /\\b(zur\\d{3}) b/i\n // Swiss ZUR Tablet\n ], [_, [d, \"Swiss\"], [p, R]], [\n /\\b((zeki)?tb.*\\b) b/i\n // Zeki Tablets\n ], [_, [d, \"Zeki\"], [p, R]], [\n /\\b([yr]\\d{2}) b/i,\n /\\b(dragon[- ]+touch |dt)(\\w{5}) b/i\n // Dragon Touch Tablet\n ], [[d, \"Dragon Touch\"], _, [p, R]], [\n /\\b(ns-?\\w{0,9}) b/i\n // Insignia Tablets\n ], [_, [d, \"Insignia\"], [p, R]], [\n /\\b((nxa|next)-?\\w{0,9}) b/i\n // NextBook Tablets\n ], [_, [d, \"NextBook\"], [p, R]], [\n /\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i\n // Voice Xtreme Phones\n ], [[d, \"Voice\"], _, [p, S]], [\n /\\b(lvtel\\-)?(v1[12]) b/i\n // LvTel Phones\n ], [[d, \"LvTel\"], _, [p, S]], [\n /\\b(ph-1) /i\n // Essential PH-1\n ], [_, [d, \"Essential\"], [p, S]], [\n /\\b(v(100md|700na|7011|917g).*\\b) b/i\n // Envizen Tablets\n ], [_, [d, \"Envizen\"], [p, R]], [\n /\\b(trio[-\\w\\. ]+) b/i\n // MachSpeed Tablets\n ], [_, [d, \"MachSpeed\"], [p, R]], [\n /\\btu_(1491) b/i\n // Rotor Tablets\n ], [_, [d, \"Rotor\"], [p, R]], [\n /(shield[\\w ]+) b/i\n // Nvidia Shield Tablets\n ], [_, [d, \"Nvidia\"], [p, R]], [\n /(sprint) (\\w+)/i\n // Sprint Phones\n ], [d, _, [p, S]], [\n /(kin\\.[onetw]{3})/i\n // Microsoft Kin\n ], [[_, /\\./g, \" \"], [d, J], [p, S]], [\n /droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i\n // Zebra\n ], [_, [d, Xe], [p, R]], [/droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i], [_, [d, Xe], [p, S]], [\n ///////////////////\n // CONSOLES\n ///////////////////\n /(ouya)/i,\n // Ouya\n /(nintendo) ([wids3utch]+)/i\n // Nintendo\n ], [d, _, [p, w]], [\n /droid.+; (shield) bui/i\n // Nvidia\n ], [_, [d, \"Nvidia\"], [p, w]], [\n /(playstation [345portablevi]+)/i\n // Playstation\n ], [_, [d, Se], [p, w]], [\n /\\b(xbox(?: one)?(?!; xbox))[\\); ]/i\n // Microsoft Xbox\n ], [_, [d, J], [p, w]], [\n ///////////////////\n // SMARTTVS\n ///////////////////\n /smart-tv.+(samsung)/i\n // Samsung\n ], [d, [p, z]], [/hbbtv.+maple;(\\d+)/i], [[_, /^/, \"SmartTV\"], [d, he], [p, z]], [\n /(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i\n // LG SmartTV\n ], [[d, we], [p, z]], [\n /(apple) ?tv/i\n // Apple TV\n ], [d, [_, Ae + \" TV\"], [p, z]], [\n /crkey/i\n // Google Chromecast\n ], [[_, je + \"cast\"], [d, ie], [p, z]], [\n /droid.+aft(\\w)( bui|\\))/i\n // Fire TV\n ], [_, [d, ve], [p, z]], [\n /\\(dtv[\\);].+(aquos)/i,\n /(aquos-tv[\\w ]+)\\)/i\n // Sharp\n ], [_, [d, re], [p, z]], [\n /(bravia[\\w ]+)( bui|\\))/i\n // Sony\n ], [_, [d, Se], [p, z]], [\n /(mitv-\\w{5}) bui/i\n // Xiaomi\n ], [_, [d, Pe], [p, z]], [\n /\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i,\n // Roku\n /hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w ]*; *(\\w[^;]*);([^;]*)/i\n // HbbTV devices\n ], [[d, k], [_, k], [p, z]], [\n /\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i\n // SmartTV from Unidentified Vendors\n ], [[p, z]], [\n ///////////////////\n // WEARABLES\n ///////////////////\n /((pebble))app/i\n // Pebble\n ], [d, _, [p, W]], [\n /droid.+; (glass) \\d/i\n // Google Glass\n ], [_, [d, ie], [p, W]], [/droid.+; (wt63?0{2,3})\\)/i], [_, [d, Xe], [p, W]], [\n /(quest( 2)?)/i\n // Oculus Quest\n ], [_, [d, Oe], [p, W]], [\n ///////////////////\n // EMBEDDED\n ///////////////////\n /(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i\n // Tesla\n ], [d, [p, fe]], [\n ////////////////////\n // MIXED (GENERIC)\n ///////////////////\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i\n // Android Phones from Unidentified Vendors\n ], [_, [p, S]], [\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i\n // Android Tablets from Unidentified Vendors\n ], [_, [p, R]], [\n /\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i\n // Unidentifiable Tablet\n ], [[p, R]], [\n /(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i\n // Unidentifiable Mobile\n ], [[p, S]], [\n /(android[-\\w\\. ]{0,9});.+buil/i\n // Generic Android Device\n ], [_, [d, \"Generic\"]]],\n engine: [[\n /windows.+ edge\\/([\\w\\.]+)/i\n // EdgeHTML\n ], [u, [m, ke + \"HTML\"]], [\n /webkit\\/537\\.36.+chrome\\/(?!27)([\\w\\.]+)/i\n // Blink\n ], [u, [m, \"Blink\"]], [\n /(presto)\\/([\\w\\.]+)/i,\n // Presto\n /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\/([\\w\\.]+)/i,\n // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna\n /ekioh(flow)\\/([\\w\\.]+)/i,\n // Flow\n /(khtml|tasman|links)[\\/ ]\\(?([\\w\\.]+)/i,\n // KHTML/Tasman/Links\n /(icab)[\\/ ]([23]\\.[\\d\\.]+)/i\n // iCab\n ], [m, u], [\n /rv\\:([\\w\\.]{1,9})\\b.+(gecko)/i\n // Gecko\n ], [u, m]],\n os: [[\n // Windows\n /microsoft (windows) (vista|xp)/i\n // Windows (iTunes)\n ], [m, u], [\n /(windows) nt 6\\.2; (arm)/i,\n // Windows RT\n /(windows (?:phone(?: os)?|mobile))[\\/ ]?([\\d\\.\\w ]*)/i,\n // Windows Phone\n /(windows)[\\/ ]?([ntce\\d\\. ]+\\w)(?!.+xbox)/i\n ], [m, [u, I, ne]], [/(win(?=3|9|n)|win 9x )([nt\\d\\.]+)/i], [[m, \"Windows\"], [u, I, ne]], [\n // iOS/macOS\n /ip[honead]{2,4}\\b(?:.*os ([\\w]+) like mac|; opera)/i,\n // iOS\n /cfnetwork\\/.+darwin/i\n ], [[u, /_/g, \".\"], [m, \"iOS\"]], [\n /(mac os x) ?([\\w\\. ]*)/i,\n /(macintosh|mac_powerpc\\b)(?!.+haiku)/i\n // Mac OS\n ], [[m, \"Mac OS\"], [u, /_/g, \".\"]], [\n // Mobile OSes\n /droid ([\\w\\.]+)\\b.+(android[- ]x86|harmonyos)/i\n // Android-x86/HarmonyOS\n ], [u, m], [\n // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS\n /(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\/ ]?([\\w\\.]*)/i,\n /(blackberry)\\w*\\/([\\w\\.]*)/i,\n // Blackberry\n /(tizen|kaios)[\\/ ]([\\w\\.]+)/i,\n // Tizen/KaiOS\n /\\((series40);/i\n // Series 40\n ], [m, u], [\n /\\(bb(10);/i\n // BlackBerry 10\n ], [u, [m, Me]], [\n /(?:symbian ?os|symbos|s60(?=;)|series60)[-\\/ ]?([\\w\\.]*)/i\n // Symbian\n ], [u, [m, \"Symbian\"]], [\n /mozilla\\/[\\d\\.]+ \\((?:mobile|tablet|tv|mobile; [\\w ]+); rv:.+ gecko\\/([\\w\\.]+)/i\n // Firefox OS\n ], [u, [m, H + \" OS\"]], [\n /web0s;.+rt(tv)/i,\n /\\b(?:hp)?wos(?:browser)?\\/([\\w\\.]+)/i\n // WebOS\n ], [u, [m, \"webOS\"]], [\n // Google Chromecast\n /crkey\\/([\\d\\.]+)/i\n // Google Chromecast\n ], [u, [m, je + \"cast\"]], [\n /(cros) [\\w]+ ([\\w\\.]+\\w)/i\n // Chromium OS\n ], [[m, \"Chromium OS\"], u], [\n // Console\n /(nintendo|playstation) ([wids345portablevuch]+)/i,\n // Nintendo/Playstation\n /(xbox); +xbox ([^\\);]+)/i,\n // Microsoft Xbox (360, One, X, S, Series X, Series S)\n // Other\n /\\b(joli|palm)\\b ?(?:os)?\\/?([\\w\\.]*)/i,\n // Joli/Palm\n /(mint)[\\/\\(\\) ]?(\\w*)/i,\n // Mint\n /(mageia|vectorlinux)[; ]/i,\n // Mageia/VectorLinux\n /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\/ ]?(?!chrom|package)([-\\w\\.]*)/i,\n // Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire\n /(hurd|linux) ?([\\w\\.]*)/i,\n // Hurd/Linux\n /(gnu) ?([\\w\\.]*)/i,\n // GNU\n /\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\/ ]?(?!amd|[ix346]{1,2}86)([\\w\\.]*)/i,\n // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly\n /(haiku) (\\w+)/i\n // Haiku\n ], [m, u], [\n /(sunos) ?([\\w\\.\\d]*)/i\n // Solaris\n ], [[m, \"Solaris\"], u], [\n /((?:open)?solaris)[-\\/ ]?([\\w\\.]*)/i,\n // Solaris\n /(aix) ((\\d)(?=\\.|\\)| )[\\w\\.])*/i,\n // AIX\n /\\b(beos|os\\/2|amigaos|morphos|openvms|fuchsia|hp-ux)/i,\n // BeOS/OS2/AmigaOS/MorphOS/OpenVMS/Fuchsia/HP-UX\n /(unix) ?([\\w\\.]*)/i\n // UNIX\n ], [m, u]]\n }, te = function(K, Z) {\n if (typeof K === x && (Z = K, K = r), !(this instanceof te))\n return new te(K, Z).getResult();\n var Y = K || (typeof i !== C && i.navigator && i.navigator.userAgent ? i.navigator.userAgent : l), _e = Z ? st(oe, Z) : oe;\n return this.getBrowser = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.browser), ee.major = G(ee.version), ee;\n }, this.getCPU = function() {\n var ee = {};\n return ee[U] = r, F.call(ee, Y, _e.cpu), ee;\n }, this.getDevice = function() {\n var ee = {};\n return ee[d] = r, ee[_] = r, ee[p] = r, F.call(ee, Y, _e.device), ee;\n }, this.getEngine = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.engine), ee;\n }, this.getOS = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.os), ee;\n }, this.getResult = function() {\n return {\n ua: this.getUA(),\n browser: this.getBrowser(),\n engine: this.getEngine(),\n os: this.getOS(),\n device: this.getDevice(),\n cpu: this.getCPU()\n };\n }, this.getUA = function() {\n return Y;\n }, this.setUA = function(ee) {\n return Y = typeof ee === g && ee.length > q ? k(ee, q) : ee, this;\n }, this.setUA(Y), this;\n };\n te.VERSION = o, te.BROWSER = ze([m, u, D]), te.CPU = ze([U]), te.DEVICE = ze([_, d, p, w, S, z, R, W, fe]), te.ENGINE = te.OS = ze([m, u]), t.exports && (e = t.exports = te), e.UAParser = te;\n var Ee = typeof i !== C && (i.jQuery || i.Zepto);\n if (Ee && !Ee.ua) {\n var xe = new te();\n Ee.ua = xe.getResult(), Ee.ua.get = function() {\n return xe.getUA();\n }, Ee.ua.set = function(K) {\n xe.setUA(K);\n var Z = xe.getResult();\n for (var Y in Z)\n Ee.ua[Y] = Z[Y];\n };\n }\n })(typeof window == \"object\" ? window : wS);\n})(AS, vc);\nconst TS = vc, X0 = new TS(), gc = X0.getOS().name, SS = gc && gc.toLowerCase().indexOf(\"android\") >= 0, xS = gc && gc.toLowerCase().indexOf(\"ios\") >= 0, Bo = X0.getDevice().type === \"mobile\" || SS || xS;\nvar rl, Tt, Z0, aa, bf, Q0, m_, bc = {}, J0 = [], LS = /acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\nfunction Ln(t, e) {\n for (var i in e)\n t[i] = e[i];\n return t;\n}\nfunction eg(t) {\n var e = t.parentNode;\n e && e.removeChild(t);\n}\nfunction RS(t, e, i) {\n var r, o, l, v = {};\n for (l in e)\n l == \"key\" ? r = e[l] : l == \"ref\" ? o = e[l] : v[l] = e[l];\n if (arguments.length > 2 && (v.children = arguments.length > 3 ? rl.call(arguments, 2) : i), typeof t == \"function\" && t.defaultProps != null)\n for (l in t.defaultProps)\n v[l] === void 0 && (v[l] = t.defaultProps[l]);\n return Vo(t, v, r, o, null);\n}\nfunction Vo(t, e, i, r, o) {\n var l = { type: t, props: e, key: i, ref: r, __k: null, __: null, __b: 0, __e: null, __d: void 0, __c: null, __h: null, constructor: void 0, __v: o != null ? o : ++Z0 };\n return o == null && Tt.vnode != null && Tt.vnode(l), l;\n}\nfunction nl(t) {\n return t.children;\n}\nfunction Fo(t, e) {\n this.props = t, this.context = e;\n}\nfunction Us(t, e) {\n if (e == null)\n return t.__ ? Us(t.__, t.__.__k.indexOf(t) + 1) : null;\n for (var i; e < t.__k.length; e++)\n if ((i = t.__k[e]) != null && i.__e != null)\n return i.__e;\n return typeof t.type == \"function\" ? Us(t) : null;\n}\nfunction tg(t) {\n var e, i;\n if ((t = t.__) != null && t.__c != null) {\n for (t.__e = t.__c.base = null, e = 0; e < t.__k.length; e++)\n if ((i = t.__k[e]) != null && i.__e != null) {\n t.__e = t.__c.base = i.__e;\n break;\n }\n return tg(t);\n }\n}\nfunction yf(t) {\n (!t.__d && (t.__d = !0) && aa.push(t) && !yc.__r++ || bf !== Tt.debounceRendering) && ((bf = Tt.debounceRendering) || Q0)(yc);\n}\nfunction yc() {\n var t, e, i, r, o, l, v, E;\n for (aa.sort(m_); t = aa.shift(); )\n t.__d && (e = aa.length, r = void 0, o = void 0, v = (l = (i = t).__v).__e, (E = i.__P) && (r = [], (o = Ln({}, l)).__v = l.__v + 1, hd(E, l, o, i.__n, E.ownerSVGElement !== void 0, l.__h != null ? [v] : null, r, v != null ? v : Us(l), l.__h), sg(r, l), l.__e != v && tg(l)), aa.length > e && aa.sort(m_));\n yc.__r = 0;\n}\nfunction ig(t, e, i, r, o, l, v, E, C, x) {\n var g, D, _, m, p, d, u, U = r && r.__k || J0, w = U.length;\n for (i.__k = [], g = 0; g < e.length; g++)\n if ((m = i.__k[g] = (m = e[g]) == null || typeof m == \"boolean\" || typeof m == \"function\" ? null : typeof m == \"string\" || typeof m == \"number\" || typeof m == \"bigint\" ? Vo(null, m, null, null, m) : Array.isArray(m) ? Vo(nl, { children: m }, null, null, null) : m.__b > 0 ? Vo(m.type, m.props, m.key, m.ref ? m.ref : null, m.__v) : m) != null) {\n if (m.__ = i, m.__b = i.__b + 1, (_ = U[g]) === null || _ && m.key == _.key && m.type === _.type)\n U[g] = void 0;\n else\n for (D = 0; D < w; D++) {\n if ((_ = U[D]) && m.key == _.key && m.type === _.type) {\n U[D] = void 0;\n break;\n }\n _ = null;\n }\n hd(t, m, _ = _ || bc, o, l, v, E, C, x), p = m.__e, (D = m.ref) && _.ref != D && (u || (u = []), _.ref && u.push(_.ref, null, m), u.push(D, m.__c || p, m)), p != null ? (d == null && (d = p), typeof m.type == \"function\" && m.__k === _.__k ? m.__d = C = rg(m, C, t) : C = ng(t, m, _, U, p, C), typeof i.type == \"function\" && (i.__d = C)) : C && _.__e == C && C.parentNode != t && (C = Us(_));\n }\n for (i.__e = d, g = w; g--; )\n U[g] != null && (typeof i.type == \"function\" && U[g].__e != null && U[g].__e == i.__d && (i.__d = ag(r).nextSibling), cg(U[g], U[g]));\n if (u)\n for (g = 0; g < u.length; g++)\n og(u[g], u[++g], u[++g]);\n}\nfunction rg(t, e, i) {\n for (var r, o = t.__k, l = 0; o && l < o.length; l++)\n (r = o[l]) && (r.__ = t, e = typeof r.type == \"function\" ? rg(r, e, i) : ng(i, r, r, o, r.__e, e));\n return e;\n}\nfunction ng(t, e, i, r, o, l) {\n var v, E, C;\n if (e.__d !== void 0)\n v = e.__d, e.__d = void 0;\n else if (i == null || o != l || o.parentNode == null)\n e:\n if (l == null || l.parentNode !== t)\n t.appendChild(o), v = null;\n else {\n for (E = l, C = 0; (E = E.nextSibling) && C < r.length; C += 1)\n if (E == o)\n break e;\n t.insertBefore(o, l), v = l;\n }\n return v !== void 0 ? v : o.nextSibling;\n}\nfunction ag(t) {\n var e, i, r;\n if (t.type == null || typeof t.type == \"string\")\n return t.__e;\n if (t.__k) {\n for (e = t.__k.length - 1; e >= 0; e--)\n if ((i = t.__k[e]) && (r = ag(i)))\n return r;\n }\n return null;\n}\nfunction CS(t, e, i, r, o) {\n var l;\n for (l in i)\n l === \"children\" || l === \"key\" || l in e || Ec(t, l, null, i[l], r);\n for (l in e)\n o && typeof e[l] != \"function\" || l === \"children\" || l === \"key\" || l === \"value\" || l === \"checked\" || i[l] === e[l] || Ec(t, l, e[l], i[l], r);\n}\nfunction Ef(t, e, i) {\n e[0] === \"-\" ? t.setProperty(e, i != null ? i : \"\") : t[e] = i == null ? \"\" : typeof i != \"number\" || LS.test(e) ? i : i + \"px\";\n}\nfunction Ec(t, e, i, r, o) {\n var l;\n e:\n if (e === \"style\")\n if (typeof i == \"string\")\n t.style.cssText = i;\n else {\n if (typeof r == \"string\" && (t.style.cssText = r = \"\"), r)\n for (e in r)\n i && e in i || Ef(t.style, e, \"\");\n if (i)\n for (e in i)\n r && i[e] === r[e] || Ef(t.style, e, i[e]);\n }\n else if (e[0] === \"o\" && e[1] === \"n\")\n l = e !== (e = e.replace(/Capture$/, \"\")), e = e.toLowerCase() in t ? e.toLowerCase().slice(2) : e.slice(2), t.l || (t.l = {}), t.l[e + l] = i, i ? r || t.addEventListener(e, l ? Af : wf, l) : t.removeEventListener(e, l ? Af : wf, l);\n else if (e !== \"dangerouslySetInnerHTML\") {\n if (o)\n e = e.replace(/xlink(H|:h)/, \"h\").replace(/sName$/, \"s\");\n else if (e !== \"width\" && e !== \"height\" && e !== \"href\" && e !== \"list\" && e !== \"form\" && e !== \"tabIndex\" && e !== \"download\" && e in t)\n try {\n t[e] = i != null ? i : \"\";\n break e;\n } catch (v) {\n }\n typeof i == \"function\" || (i == null || i === !1 && e[4] !== \"-\" ? t.removeAttribute(e) : t.setAttribute(e, i));\n }\n}\nfunction wf(t) {\n return this.l[t.type + !1](Tt.event ? Tt.event(t) : t);\n}\nfunction Af(t) {\n return this.l[t.type + !0](Tt.event ? Tt.event(t) : t);\n}\nfunction hd(t, e, i, r, o, l, v, E, C) {\n var x, g, D, _, m, p, d, u, U, w, S, R, z, W, fe, q = e.type;\n if (e.constructor !== void 0)\n return null;\n i.__h != null && (C = i.__h, E = e.__e = i.__e, e.__h = null, l = [E]), (x = Tt.__b) && x(e);\n try {\n e:\n if (typeof q == \"function\") {\n if (u = e.props, U = (x = q.contextType) && r[x.__c], w = x ? U ? U.props.value : x.__ : r, i.__c ? d = (g = e.__c = i.__c).__ = g.__E : (\"prototype\" in q && q.prototype.render ? e.__c = g = new q(u, w) : (e.__c = g = new Fo(u, w), g.constructor = q, g.render = IS), U && U.sub(g), g.props = u, g.state || (g.state = {}), g.context = w, g.__n = r, D = g.__d = !0, g.__h = [], g._sb = []), g.__s == null && (g.__s = g.state), q.getDerivedStateFromProps != null && (g.__s == g.state && (g.__s = Ln({}, g.__s)), Ln(g.__s, q.getDerivedStateFromProps(u, g.__s))), _ = g.props, m = g.state, g.__v = e, D)\n q.getDerivedStateFromProps == null && g.componentWillMount != null && g.componentWillMount(), g.componentDidMount != null && g.__h.push(g.componentDidMount);\n else {\n if (q.getDerivedStateFromProps == null && u !== _ && g.componentWillReceiveProps != null && g.componentWillReceiveProps(u, w), !g.__e && g.shouldComponentUpdate != null && g.shouldComponentUpdate(u, g.__s, w) === !1 || e.__v === i.__v) {\n for (e.__v !== i.__v && (g.props = u, g.state = g.__s, g.__d = !1), g.__e = !1, e.__e = i.__e, e.__k = i.__k, e.__k.forEach(function(ve) {\n ve && (ve.__ = e);\n }), S = 0; S < g._sb.length; S++)\n g.__h.push(g._sb[S]);\n g._sb = [], g.__h.length && v.push(g);\n break e;\n }\n g.componentWillUpdate != null && g.componentWillUpdate(u, g.__s, w), g.componentDidUpdate != null && g.__h.push(function() {\n g.componentDidUpdate(_, m, p);\n });\n }\n if (g.context = w, g.props = u, g.__P = t, R = Tt.__r, z = 0, \"prototype\" in q && q.prototype.render) {\n for (g.state = g.__s, g.__d = !1, R && R(e), x = g.render(g.props, g.state, g.context), W = 0; W < g._sb.length; W++)\n g.__h.push(g._sb[W]);\n g._sb = [];\n } else\n do\n g.__d = !1, R && R(e), x = g.render(g.props, g.state, g.context), g.state = g.__s;\n while (g.__d && ++z < 25);\n g.state = g.__s, g.getChildContext != null && (r = Ln(Ln({}, r), g.getChildContext())), D || g.getSnapshotBeforeUpdate == null || (p = g.getSnapshotBeforeUpdate(_, m)), fe = x != null && x.type === nl && x.key == null ? x.props.children : x, ig(t, Array.isArray(fe) ? fe : [fe], e, i, r, o, l, v, E, C), g.base = e.__e, e.__h = null, g.__h.length && v.push(g), d && (g.__E = g.__ = null), g.__e = !1;\n } else\n l == null && e.__v === i.__v ? (e.__k = i.__k, e.__e = i.__e) : e.__e = kS(i.__e, e, i, r, o, l, v, C);\n (x = Tt.diffed) && x(e);\n } catch (ve) {\n e.__v = null, (C || l != null) && (e.__e = E, e.__h = !!C, l[l.indexOf(E)] = null), Tt.__e(ve, e, i);\n }\n}\nfunction sg(t, e) {\n Tt.__c && Tt.__c(e, t), t.some(function(i) {\n try {\n t = i.__h, i.__h = [], t.some(function(r) {\n r.call(i);\n });\n } catch (r) {\n Tt.__e(r, i.__v);\n }\n });\n}\nfunction kS(t, e, i, r, o, l, v, E) {\n var C, x, g, D = i.props, _ = e.props, m = e.type, p = 0;\n if (m === \"svg\" && (o = !0), l != null) {\n for (; p < l.length; p++)\n if ((C = l[p]) && \"setAttribute\" in C == !!m && (m ? C.localName === m : C.nodeType === 3)) {\n t = C, l[p] = null;\n break;\n }\n }\n if (t == null) {\n if (m === null)\n return document.createTextNode(_);\n t = o ? document.createElementNS(\"http://www.w3.org/2000/svg\", m) : document.createElement(m, _.is && _), l = null, E = !1;\n }\n if (m === null)\n D === _ || E && t.data === _ || (t.data = _);\n else {\n if (l = l && rl.call(t.childNodes), x = (D = i.props || bc).dangerouslySetInnerHTML, g = _.dangerouslySetInnerHTML, !E) {\n if (l != null)\n for (D = {}, p = 0; p < t.attributes.length; p++)\n D[t.attributes[p].name] = t.attributes[p].value;\n (g || x) && (g && (x && g.__html == x.__html || g.__html === t.innerHTML) || (t.innerHTML = g && g.__html || \"\"));\n }\n if (CS(t, _, D, o, E), g)\n e.__k = [];\n else if (p = e.props.children, ig(t, Array.isArray(p) ? p : [p], e, i, r, o && m !== \"foreignObject\", l, v, l ? l[0] : i.__k && Us(i, 0), E), l != null)\n for (p = l.length; p--; )\n l[p] != null && eg(l[p]);\n E || (\"value\" in _ && (p = _.value) !== void 0 && (p !== t.value || m === \"progress\" && !p || m === \"option\" && p !== D.value) && Ec(t, \"value\", p, D.value, !1), \"checked\" in _ && (p = _.checked) !== void 0 && p !== t.checked && Ec(t, \"checked\", p, D.checked, !1));\n }\n return t;\n}\nfunction og(t, e, i) {\n try {\n typeof t == \"function\" ? t(e) : t.current = e;\n } catch (r) {\n Tt.__e(r, i);\n }\n}\nfunction cg(t, e, i) {\n var r, o;\n if (Tt.unmount && Tt.unmount(t), (r = t.ref) && (r.current && r.current !== t.__e || og(r, null, e)), (r = t.__c) != null) {\n if (r.componentWillUnmount)\n try {\n r.componentWillUnmount();\n } catch (l) {\n Tt.__e(l, e);\n }\n r.base = r.__P = null, t.__c = void 0;\n }\n if (r = t.__k)\n for (o = 0; o < r.length; o++)\n r[o] && cg(r[o], e, i || typeof t.type != \"function\");\n i || t.__e == null || eg(t.__e), t.__ = t.__e = t.__d = void 0;\n}\nfunction IS(t, e, i) {\n return this.constructor(t, i);\n}\nfunction DS(t, e, i) {\n var r, o, l;\n Tt.__ && Tt.__(t, e), o = (r = typeof i == \"function\") ? null : i && i.__k || e.__k, l = [], hd(e, t = (!r && i || e).__k = RS(nl, null, [t]), o || bc, bc, e.ownerSVGElement !== void 0, !r && i ? [i] : o ? null : e.firstChild ? rl.call(e.childNodes) : null, l, !r && i ? i : o ? o.__e : e.firstChild, r), sg(l, t);\n}\nrl = J0.slice, Tt = { __e: function(t, e, i, r) {\n for (var o, l, v; e = e.__; )\n if ((o = e.__c) && !o.__)\n try {\n if ((l = o.constructor) && l.getDerivedStateFromError != null && (o.setState(l.getDerivedStateFromError(t)), v = o.__d), o.componentDidCatch != null && (o.componentDidCatch(t, r || {}), v = o.__d), v)\n return o.__E = o;\n } catch (E) {\n t = E;\n }\n throw t;\n} }, Z0 = 0, Fo.prototype.setState = function(t, e) {\n var i;\n i = this.__s != null && this.__s !== this.state ? this.__s : this.__s = Ln({}, this.state), typeof t == \"function\" && (t = t(Ln({}, i), this.props)), t && Ln(i, t), t != null && this.__v && (e && this._sb.push(e), yf(this));\n}, Fo.prototype.forceUpdate = function(t) {\n this.__v && (this.__e = !0, t && this.__h.push(t), yf(this));\n}, Fo.prototype.render = nl, aa = [], Q0 = typeof Promise == \"function\" ? Promise.prototype.then.bind(Promise.resolve()) : setTimeout, m_ = function(t, e) {\n return t.__v.__b - e.__v.__b;\n}, yc.__r = 0;\nvar Ks, gi, ru, Tf, wc = 0, lg = [], jo = [], Sf = Tt.__b, xf = Tt.__r, Lf = Tt.diffed, Rf = Tt.__c, Cf = Tt.unmount;\nfunction al(t, e) {\n Tt.__h && Tt.__h(gi, t, wc || e), wc = 0;\n var i = gi.__H || (gi.__H = { __: [], __h: [] });\n return t >= i.__.length && i.__.push({ __V: jo }), i.__[t];\n}\nfunction Ji(t) {\n return wc = 1, OS(_g, t);\n}\nfunction OS(t, e, i) {\n var r = al(Ks++, 2);\n if (r.t = t, !r.__c && (r.__ = [i ? i(e) : _g(void 0, e), function(E) {\n var C = r.__N ? r.__N[0] : r.__[0], x = r.t(C, E);\n C !== x && (r.__N = [x, r.__[1]], r.__c.setState({}));\n }], r.__c = gi, !gi.u)) {\n var o = function(E, C, x) {\n if (!r.__c.__H)\n return !0;\n var g = r.__c.__H.__.filter(function(_) {\n return _.__c;\n });\n if (g.every(function(_) {\n return !_.__N;\n }))\n return !l || l.call(this, E, C, x);\n var D = !1;\n return g.forEach(function(_) {\n if (_.__N) {\n var m = _.__[0];\n _.__ = _.__N, _.__N = void 0, m !== _.__[0] && (D = !0);\n }\n }), !(!D && r.__c.props === E) && (!l || l.call(this, E, C, x));\n };\n gi.u = !0;\n var l = gi.shouldComponentUpdate, v = gi.componentWillUpdate;\n gi.componentWillUpdate = function(E, C, x) {\n if (this.__e) {\n var g = l;\n l = void 0, o(E, C, x), l = g;\n }\n v && v.call(this, E, C, x);\n }, gi.shouldComponentUpdate = o;\n }\n return r.__N || r.__;\n}\nfunction ug(t, e) {\n var i = al(Ks++, 3);\n !Tt.__s && fd(i.__H, e) && (i.__ = t, i.i = e, gi.__H.__h.push(i));\n}\nfunction NS(t, e) {\n var i = al(Ks++, 4);\n !Tt.__s && fd(i.__H, e) && (i.__ = t, i.i = e, gi.__h.push(i));\n}\nfunction v_(t) {\n return wc = 5, PS(function() {\n return { current: t };\n }, []);\n}\nfunction PS(t, e) {\n var i = al(Ks++, 7);\n return fd(i.__H, e) ? (i.__V = t(), i.i = e, i.__h = t, i.__V) : i.__;\n}\nfunction MS() {\n for (var t; t = lg.shift(); )\n if (t.__P && t.__H)\n try {\n t.__H.__h.forEach(zo), t.__H.__h.forEach(g_), t.__H.__h = [];\n } catch (e) {\n t.__H.__h = [], Tt.__e(e, t.__v);\n }\n}\nTt.__b = function(t) {\n gi = null, Sf && Sf(t);\n}, Tt.__r = function(t) {\n xf && xf(t), Ks = 0;\n var e = (gi = t.__c).__H;\n e && (ru === gi ? (e.__h = [], gi.__h = [], e.__.forEach(function(i) {\n i.__N && (i.__ = i.__N), i.__V = jo, i.__N = i.i = void 0;\n })) : (e.__h.forEach(zo), e.__h.forEach(g_), e.__h = [])), ru = gi;\n}, Tt.diffed = function(t) {\n Lf && Lf(t);\n var e = t.__c;\n e && e.__H && (e.__H.__h.length && (lg.push(e) !== 1 && Tf === Tt.requestAnimationFrame || ((Tf = Tt.requestAnimationFrame) || US)(MS)), e.__H.__.forEach(function(i) {\n i.i && (i.__H = i.i), i.__V !== jo && (i.__ = i.__V), i.i = void 0, i.__V = jo;\n })), ru = gi = null;\n}, Tt.__c = function(t, e) {\n e.some(function(i) {\n try {\n i.__h.forEach(zo), i.__h = i.__h.filter(function(r) {\n return !r.__ || g_(r);\n });\n } catch (r) {\n e.some(function(o) {\n o.__h && (o.__h = []);\n }), e = [], Tt.__e(r, i.__v);\n }\n }), Rf && Rf(t, e);\n}, Tt.unmount = function(t) {\n Cf && Cf(t);\n var e, i = t.__c;\n i && i.__H && (i.__H.__.forEach(function(r) {\n try {\n zo(r);\n } catch (o) {\n e = o;\n }\n }), i.__H = void 0, e && Tt.__e(e, i.__v));\n};\nvar kf = typeof requestAnimationFrame == \"function\";\nfunction US(t) {\n var e, i = function() {\n clearTimeout(r), kf && cancelAnimationFrame(e), setTimeout(t);\n }, r = setTimeout(i, 100);\n kf && (e = requestAnimationFrame(i));\n}\nfunction zo(t) {\n var e = gi, i = t.__c;\n typeof i == \"function\" && (t.__c = void 0, i()), gi = e;\n}\nfunction g_(t) {\n var e = gi;\n t.__c = t.__(), gi = e;\n}\nfunction fd(t, e) {\n return !t || t.length !== e.length || e.some(function(i, r) {\n return i !== t[r];\n });\n}\nfunction _g(t, e) {\n return typeof e == \"function\" ? e(t) : e;\n}\nconst BS = \"_container_1njkj_1\", VS = \"_actions_1njkj_61\", ir = {\n container: BS,\n \"container-h5\": \"_container-h5_1njkj_20\",\n \"close-btn\": \"_close-btn_1njkj_37\",\n \"btn-tip\": \"_btn-tip_1njkj_50\",\n actions: VS,\n \"copy-btn\": \"_copy-btn_1njkj_70\",\n \"info-item\": \"_info-item_1njkj_76\",\n \"info-item-name\": \"_info-item-name_1njkj_80\",\n \"info-item-value\": \"_info-item-value_1njkj_87\",\n \"item-svg\": \"_item-svg_1njkj_92\",\n \"item-value\": \"_item-value_1njkj_100\"\n};\nvar FS = 0;\nfunction Mt(t, e, i, r, o, l) {\n var v, E, C = {};\n for (E in e)\n E == \"ref\" ? v = e[E] : C[E] = e[E];\n var x = { type: t, props: C, key: i, ref: v, __k: null, __: null, __b: 0, __e: null, __d: void 0, __c: null, __h: null, constructor: void 0, __v: --FS, __source: o, __self: l };\n if (typeof t == \"function\" && (v = t.defaultProps))\n for (E in v)\n C[E] === void 0 && (C[E] = v[E]);\n return Tt.vnode && Tt.vnode(x), x;\n}\nfunction Pr(t) {\n const {\n title: e,\n value: i\n } = t;\n return Mt(\"div\", {\n className: ir[\"info-item\"],\n children: [Mt(\"div\", {\n className: ir[\"info-item-name\"],\n children: [e, \":\"]\n }), Mt(\"div\", {\n className: ir[\"info-item-value\"],\n children: i\n })]\n });\n}\nfunction jS(t) {\n const {\n dataArray: e\n } = t, i = v_(null), [r, o] = Ji(\"\");\n return ug(() => {\n if (i != null && i.current) {\n const {\n width: l,\n height: v\n } = i.current.getBoundingClientRect(), E = Math.max(...e) || 1, C = v - 2, x = l / e.length;\n let g = `M0 ${C * (E - e[0]) / E + 1}`;\n for (let D = 1; D < e.length; D++)\n g += ` L${D * x} ${C * (E - e[D]) / E + 1}`;\n o(g);\n }\n }, [e]), Mt(\"svg\", {\n ref: i,\n height: \"100%\",\n width: \"100%\",\n style: \"display:block\",\n children: Mt(\"path\", {\n fill: \"none\",\n stroke: \"#fff\",\n \"stroke-width\": \"1\",\n d: r\n })\n });\n}\nfunction fo(t) {\n const {\n title: e,\n suffix: i,\n value: r\n } = t, [o, l] = Ji(0);\n return ug(() => {\n l(r[r.length - 1] || 0);\n }, [r]), Mt(\"div\", {\n className: ir[\"info-item\"],\n children: [Mt(\"div\", {\n className: ir[\"info-item-name\"],\n children: [e, \":\"]\n }), Mt(\"div\", {\n className: ir[\"info-item-value\"],\n children: [Mt(\"div\", {\n className: ir[\"item-svg\"],\n children: Mt(jS, {\n dataArray: r\n })\n }), Mt(\"div\", {\n className: ir[\"item-value\"],\n children: i(o)\n })]\n })]\n });\n}\nvar zS = function() {\n var t = document.getSelection();\n if (!t.rangeCount)\n return function() {\n };\n for (var e = document.activeElement, i = [], r = 0; r < t.rangeCount; r++)\n i.push(t.getRangeAt(r));\n switch (e.tagName.toUpperCase()) {\n case \"INPUT\":\n case \"TEXTAREA\":\n e.blur();\n break;\n default:\n e = null;\n break;\n }\n return t.removeAllRanges(), function() {\n t.type === \"Caret\" && t.removeAllRanges(), t.rangeCount || i.forEach(function(o) {\n t.addRange(o);\n }), e && e.focus();\n };\n}, HS = zS, If = {\n \"text/plain\": \"Text\",\n \"text/html\": \"Url\",\n default: \"Text\"\n}, $S = \"Copy to clipboard: #{key}, Enter\";\nfunction WS(t) {\n var e = (/mac os x/i.test(navigator.userAgent) ? \"⌘\" : \"Ctrl\") + \"+C\";\n return t.replace(/#{\\s*key\\s*}/g, e);\n}\nfunction GS(t, e) {\n var i, r, o, l, v, E, C = !1;\n e || (e = {}), i = e.debug || !1;\n try {\n o = HS(), l = document.createRange(), v = document.getSelection(), E = document.createElement(\"span\"), E.textContent = t, E.ariaHidden = \"true\", E.style.all = \"unset\", E.style.position = \"fixed\", E.style.top = 0, E.style.clip = \"rect(0, 0, 0, 0)\", E.style.whiteSpace = \"pre\", E.style.webkitUserSelect = \"text\", E.style.MozUserSelect = \"text\", E.style.msUserSelect = \"text\", E.style.userSelect = \"text\", E.addEventListener(\"copy\", function(g) {\n if (g.stopPropagation(), e.format)\n if (g.preventDefault(), typeof g.clipboardData > \"u\") {\n i && console.warn(\"unable to use e.clipboardData\"), i && console.warn(\"trying IE specific stuff\"), window.clipboardData.clearData();\n var D = If[e.format] || If.default;\n window.clipboardData.setData(D, t);\n } else\n g.clipboardData.clearData(), g.clipboardData.setData(e.format, t);\n e.onCopy && (g.preventDefault(), e.onCopy(g.clipboardData));\n }), document.body.appendChild(E), l.selectNodeContents(E), v.addRange(l);\n var x = document.execCommand(\"copy\");\n if (!x)\n throw new Error(\"copy command was unsuccessful\");\n C = !0;\n } catch (g) {\n i && console.error(\"unable to copy using execCommand: \", g), i && console.warn(\"trying IE specific stuff\");\n try {\n window.clipboardData.setData(e.format || \"text\", t), e.onCopy && e.onCopy(window.clipboardData), C = !0;\n } catch (D) {\n i && console.error(\"unable to copy using clipboardData: \", D), i && console.error(\"falling back to prompt\"), r = WS(\"message\" in e ? e.message : $S), window.prompt(r, t);\n }\n } finally {\n v && (typeof v.removeRange == \"function\" ? v.removeRange(l) : v.removeAllRanges()), E && document.body.removeChild(E), o();\n }\n return C;\n}\nvar KS = GS;\nconst Df = 100, qS = \"info-panel\";\nfunction YS(t) {\n const {\n player: e,\n onChangeShowEventLog: i,\n DID: r,\n playerVersion: o,\n dataStr: l\n } = t, [v, E] = Ji(\"\"), [C, x] = Ji(\"\"), [g, D] = Ji(\"\"), [_, m] = Ji(\"\"), [p, d] = Ji(\"\"), [u, U] = Ji(0), [w, S] = Ji(\"\"), [R, z] = Ji(\"\"), [W, fe] = Ji([]), [q, ve] = Ji([]), [Ae, P] = Ji([]), [Me, Ie] = Ji([]), je = v_(void 0), ke = (Pe, Xe, Oe) => {\n typeof Pe == \"number\" && !isNaN(Pe) && (Xe.push(Pe), Xe.length > Df ? Xe.shift() : Xe.length === 1 && Xe.unshift(...new Array(Df - 1).fill(0)), Oe([...Xe]));\n };\n NS(() => {\n const Pe = () => {\n E(\"\"), x(\"\"), D(\"\"), m(\"\"), d(\"\"), U(0), S(\"\"), Me.splice(0, q.length), q.splice(0, q.length), Ae.splice(0, Ae.length), W.splice(0, W.length);\n }, Xe = (Oe) => {\n if (Oe && Oe.type === \"mediaInfo\") {\n je.current = Oe.value, E(Oe.value.streamHost), x(Oe.value.colorSpace), S(Oe.value.sid), z(Oe.value.gpu);\n const st = [];\n Oe.value.coreType && st.push(Oe.value.coreType), Oe.value.box && (Oe.value.enhancedFlv ? st.push(\"enhanced-flv\") : st.push(Oe.value.box)), Oe.value.videoCodecType && st.push(Oe.value.videoCodecType), Oe.value.width && Oe.value.height && st.push(`${Oe.value.width}x${Oe.value.height}`), Oe.value.sar && st.push(`[SAR ${Oe.value.sar.width}:${Oe.value.sar.height}]`), Oe.value.fps && st.push(`@${Oe.value.fps.toFixed(2)}`), D(st.join(\" \"));\n const ze = [];\n Oe.value.videoCodec && ze.push(Oe.value.videoCodec), Oe.value.audioCodec && ze.push(Oe.value.audioCodec), m(ze.join(\",\"));\n }\n Oe && Oe.type === \"heartbeat\" && (Oe.value.decodedFrames && d(`${Oe.value.decodedFPS || 0}/${Oe.value.droppedFPS || 0} ${Oe.value.decodedFrames || 0}/${Oe.value.droppedFrames || 0}`), typeof Oe.value.totalReceive == \"number\" && U(Oe.value.totalReceive), ke(Oe.value.videoBuffered, q, ve), ke(Oe.value.audioBuffered, Ae, P), !q.length && !Ae.length && ke(Oe.value.buffered, Me, Ie), ke(Oe.value.speed, W, fe));\n };\n return e.on(ge.ATTRIBUTE_CHANGE_SRC, Pe), e.on(ge.REPORT, Xe), () => {\n e.off(ge.ATTRIBUTE_CHANGE_SRC, Pe), e.off(ge.REPORT, Xe), J.current && clearTimeout(J.current);\n };\n }, []);\n const [H, ie] = Ji(\"\"), [ye, we] = Ji(!1), J = v_(0), le = () => {\n Be.i(qS, \"click copy\");\n const Pe = {\n date: l\n };\n r && (Pe.did = r), o && (Pe.playerVersion = o), w && (Pe.sessionId = w), v && (Pe.streamHost = v), C && (Pe.colorSpace = C), g && (Pe.res = g), _ && (Pe.codec = _), R && (Pe.gpu = R), q.length && (Pe.vBuffer = q[q.length - 1]), Ae.length && (Pe.aBuffer = Ae[Ae.length - 1]), Me.length && (Pe.buffer = Me[Me.length - 1]), W.length && (Pe.speed = W[W.length - 1]), je.current && (Pe.mediainfo = je.current), Pe.userAgent = navigator.userAgent, Pe.summary = e.getAudienceStat();\n const Xe = KS(JSON.stringify(Pe));\n ie(Xe ? \"已复制\" : \"复制失败\"), we(!0), J.current && clearTimeout(J.current), J.current = +setTimeout(() => {\n we(!1), J.current = 0;\n }, 1e3);\n }, me = (Pe) => Pe > 1e9 ? `${(Pe / 1e9).toFixed(2)} GB` : Pe > 1e6 ? `${(Pe / 1e6).toFixed(2)} MB` : `${(Pe / 1e3).toFixed(2)} KB`, he = (Pe) => Pe > 1e7 ? `${(Pe / 1e6).toFixed(2)} MB/s` : `${(Pe / 1e3).toFixed(2)} KB/s`, re = (Pe) => Pe > 1e3 ? `${(Pe / 1e3).toFixed(2)} s` : `${Pe} ms`, Se = (Pe) => {\n Pe.stopPropagation();\n };\n return Mt(\"div\", {\n className: Bo ? ir[\"container-h5\"] : ir.container,\n onContextMenu: Se,\n children: [r && Mt(Pr, {\n title: \"DeviceId\",\n value: r\n }), o && Mt(Pr, {\n title: \"PlayerVersion\",\n value: o\n }), w && Mt(Pr, {\n title: \"SessionId\",\n value: w\n }), v && Mt(Pr, {\n title: \"StreamHost\",\n value: v\n }), g && Mt(Pr, {\n title: \"Res\",\n value: g\n }), C && Mt(Pr, {\n title: \"Color\",\n value: C\n }), _ && Mt(Pr, {\n title: \"Codec\",\n value: _\n }), p && Mt(Pr, {\n title: \"Frames\",\n value: p\n }), !!Me.length && Mt(fo, {\n title: \"Buffered\",\n value: Me,\n suffix: re\n }), !!q.length && Mt(fo, {\n title: \"VideoBuffered\",\n value: q,\n suffix: re\n }), !!Ae.length && Mt(fo, {\n title: \"AudioBuffered\",\n value: Ae,\n suffix: re\n }), !!W.length && Mt(fo, {\n title: \"Speed\",\n value: W,\n suffix: he\n }), u > 0 && Mt(Pr, {\n title: \"TotalReceive\",\n value: me(u)\n }), R && Mt(Pr, {\n title: \"GPU\",\n value: R\n }), Mt(Pr, {\n title: \"Date\",\n value: l\n }), Mt(\"div\", {\n className: [Bo ? ir[\"h5-btn\"] : \"\", ir[\"close-btn\"]].join(\" \"),\n onClick: i,\n children: \"[X]\"\n }), Mt(\"div\", {\n className: ir.actions,\n children: Mt(\"div\", {\n className: [Bo ? ir[\"h5-btn\"] : \"\", ir[\"copy-btn\"]].join(\" \"),\n onClick: le,\n children: [ye && Mt(\"div\", {\n className: ir[\"btn-tip\"],\n children: H\n }), Mt(\"div\", {\n children: \"[Copy]\"\n })]\n })\n })]\n });\n}\nconst dg = class extends qv {\n constructor() {\n super(...arguments), Uo(this, \"_player\"), Uo(this, \"_container\"), Uo(this, \"_onChangeShowEventLog\", () => {\n this._container && (this.isShow = !this.isShow);\n });\n }\n afterInstall(t) {\n if (this._player = t, !this._player)\n return;\n this._container || (this._container = this._player.createSubContainer(), this._container.style.display = \"none\", this._container.style.position = \"absolute\", this._container.style.maxHeight = \"100%\", this._container.style.overflowY = \"scroll\", Bo && (this._container.style.width = \"100%\"));\n let e = localStorage.getItem(\"kwai_player_device_id\");\n DS(Mt(YS, {\n player: t,\n DID: e || \"\",\n playerVersion: `${ci.packVersion}(${ci.version})`,\n dataStr: (/* @__PURE__ */ new Date()).toString(),\n onChangeShowEventLog: this._onChangeShowEventLog\n }), this._container), t.showInfoPanel ? this.isShow = !0 : this.isShow = !1;\n }\n afterUninstall(t) {\n this._container && t.removeSubContainer(this._container), this._player = void 0;\n }\n set isShow(t) {\n this._container && (this._container.style.display = t ? \"block\" : \"none\");\n }\n get isShow() {\n var t;\n return ((t = this._container) == null ? void 0 : t.style.display) === \"block\";\n }\n getLabel() {\n return dg.label;\n }\n};\nlet hg = dg;\nUo(hg, \"version\", \"1.1.0-alpha.0\");\nvar XS = Object.defineProperty, ZS = (t, e, i) => e in t ? XS(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, Sr = (t, e, i) => (ZS(t, typeof e != \"symbol\" ? e + \"\" : e, i), i);\nconst Ca = {\n KEEP_DOWN: \"KEEP_DOWN\",\n KEEP_DOWN_END: \"KEEP_DOWN_END\",\n SINGLE_DOWN: \"SINGLE_DOWN\"\n}, ar = {\n ArrowRight: \"ArrowRight\",\n ArrowLeft: \"ArrowLeft\",\n ArrowUp: \"ArrowUp\",\n ArrowDown: \"ArrowDown\",\n Space: \" \"\n}, QS = \"hotkey-plugin\";\nclass fg extends Gv {\n constructor() {\n super(...arguments), Sr(this, \"_player\"), Sr(this, \"_currentKey\", \"\"), Sr(this, \"_isKeepDown\", !1), Sr(this, \"_emitKeepDownInterval\", 100), Sr(this, \"_emitKeepDownLastTime\", 0), Sr(this, \"_disable\", !1), Sr(this, \"_onDown\", (e) => {\n !this._isValidInput(e) || this._disable || (this._currentKey && (this._isKeepDown = !0, Date.now() - this._emitKeepDownLastTime > this._emitKeepDownInterval && (this._emitKeepDownLastTime = Date.now(), this.emit(Ca.KEEP_DOWN, { key: e.key }))), this._currentKey = e.key);\n }), Sr(this, \"_onUp\", (e) => {\n !this._isValidInput(e) || this._disable || (this._isKeepDown ? this.emit(Ca.KEEP_DOWN_END, { key: e.key }) : this.emit(Ca.SINGLE_DOWN, { key: e.key }), this._currentKey = \"\", this._isKeepDown = !1);\n }), Sr(this, \"_onKeepDown\", ({ key: e }) => {\n if (this._player)\n switch (e) {\n case ar.Space: {\n this._onSpaceDown();\n break;\n }\n case ar.ArrowRight: {\n this._onChangeRate(3);\n break;\n }\n case ar.ArrowLeft: {\n this._onSeek(-this._getSeekTickTime());\n break;\n }\n case ar.ArrowUp: {\n this._onChangeVolume(5);\n break;\n }\n case ar.ArrowDown: {\n this._onChangeVolume(-5);\n break;\n }\n }\n }), Sr(this, \"_onKeepDownEnd\", ({ key: e }) => {\n if (this._player)\n switch (e) {\n case ar.Space: {\n this._onSpaceDown();\n break;\n }\n case ar.ArrowRight: {\n this._onChangeRate(1);\n break;\n }\n case ar.ArrowLeft: {\n this._onSeek(-this._getSeekTickTime());\n break;\n }\n case ar.ArrowUp: {\n this._onChangeVolume(5);\n break;\n }\n case ar.ArrowDown: {\n this._onChangeVolume(-5);\n break;\n }\n }\n }), Sr(this, \"_onSingleDown\", ({ key: e }) => {\n if (this._player)\n switch (e) {\n case ar.Space: {\n this._onSpaceDown();\n break;\n }\n case ar.ArrowRight: {\n this._onSeek(10);\n break;\n }\n case ar.ArrowLeft: {\n this._onSeek(-this._getSeekTickTime());\n break;\n }\n case ar.ArrowUp: {\n this._onChangeVolume(5);\n break;\n }\n case ar.ArrowDown: {\n this._onChangeVolume(-5);\n break;\n }\n }\n });\n }\n afterInstall(e) {\n this._player = e, document.addEventListener(\"keydown\", this._onDown), document.addEventListener(\"keyup\", this._onUp), this.on(Ca.KEEP_DOWN, this._onKeepDown), this.on(Ca.KEEP_DOWN_END, this._onKeepDownEnd), this.on(Ca.SINGLE_DOWN, this._onSingleDown), this._disable = e.disableHotkey === !0, Be.i(QS, `hotkey disable: ${this._disable}`);\n }\n beforeUninstall() {\n this._player = void 0, document.removeEventListener(\"keydown\", this._onDown), document.removeEventListener(\"keyup\", this._onUp);\n }\n get disable() {\n return this._disable;\n }\n _onSpaceDown() {\n const e = this._player;\n e && (e.paused ? e.play() : e.pause());\n }\n _onSeek(e) {\n this._player && (this._player.currentTime += e);\n }\n _onChangeRate(e) {\n this._player && (this._player.playbackRate = e);\n }\n _onChangeVolume(e) {\n if (this._player) {\n this._player.muted && (this._player.muted = !1);\n let i = e / 100 + this._player.volume;\n i > 1 && (i = 1), i < 0 && (i = 0), this._player.volume = i;\n }\n }\n _getSeekTickTime() {\n if (!this._player)\n return 0;\n let e = this._player.duration / 200;\n return e > 10 && (e = 10), e < 5 && (e = 5), e;\n }\n _isValidInput(e) {\n var i;\n if (e.isComposing || [\n \"INPUT\",\n \"TEXTAREA\"\n // @ts-ignore\n ].find((o) => {\n var l;\n return o === ((l = e.target) == null ? void 0 : l.tagName);\n }))\n return !1;\n const r = (i = this._player) == null ? void 0 : i.getMainContainer();\n if (r) {\n const { left: o, top: l, width: v, height: E } = r.getBoundingClientRect(), [C, x] = [o + v, l + E];\n if (innerHeight < l || o > innerWidth || C < 0 || x < 0)\n return !1;\n }\n return !0;\n }\n}\nSr(fg, \"version\", \"1.1.0-alpha.0\");\nvar JS = Object.defineProperty, ex = (t, e, i) => e in t ? JS(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, pg = (t, e, i) => (ex(t, typeof e != \"symbol\" ? e + \"\" : e, i), i);\nlet mg = class extends Xv {\n constructor() {\n super(...arguments), pg(this, \"_player\");\n }\n beforeInstall(e) {\n e && (this._player = e);\n }\n afterInstall(e) {\n e && (this._player = e), e.on(ge.VIDEO_RENDERER_CHANGE, () => {\n if (e.video) {\n const i = this._isMirror(e.video);\n e.canvas && this._applyMirror(e.canvas, i);\n }\n });\n }\n set isMirror(e) {\n const i = this._player;\n i != null && i.video && this._applyMirror(i.video, e), i != null && i.canvas && this._applyMirror(i.canvas, e);\n }\n get isMirror() {\n const e = this._player;\n return e != null && e.canvas ? this._isMirror(e.canvas) : e != null && e.video ? this._isMirror(e.video) : !1;\n }\n _applyMirror(e, i) {\n const r = this._isMirror(e);\n if (i === r)\n return;\n let o = e.style.transform;\n i ? o += \" rotateY(180deg)\" : o = o.replace(\"rotateY(180deg)\", \"\"), e.style.transform = o;\n }\n _isMirror(e) {\n return e.style.transform.indexOf(\"rotateY(180deg)\") >= 0;\n }\n};\npg(mg, \"version\", \"1.1.0-alpha.0\");\n(function() {\n try {\n if (typeof document < \"u\") {\n var t = document.createElement(\"style\");\n t.appendChild(document.createTextNode(\"\")), document.head.appendChild(t);\n }\n } catch (e) {\n console.error(\"vite-plugin-css-injected-by-js\", e);\n }\n})();\nvar tx = Object.defineProperty, ix = (t, e, i) => e in t ? tx(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, wn = (t, e, i) => (ix(t, typeof e != \"symbol\" ? e + \"\" : e, i), i), vg = function() {\n if (typeof Map < \"u\")\n return Map;\n function t(e, i) {\n var r = -1;\n return e.some(function(o, l) {\n return o[0] === i ? (r = l, !0) : !1;\n }), r;\n }\n return (\n /** @class */\n function() {\n function e() {\n this.__entries__ = [];\n }\n return Object.defineProperty(e.prototype, \"size\", {\n /**\n * @returns {boolean}\n */\n get: function() {\n return this.__entries__.length;\n },\n enumerable: !0,\n configurable: !0\n }), e.prototype.get = function(i) {\n var r = t(this.__entries__, i), o = this.__entries__[r];\n return o && o[1];\n }, e.prototype.set = function(i, r) {\n var o = t(this.__entries__, i);\n ~o ? this.__entries__[o][1] = r : this.__entries__.push([i, r]);\n }, e.prototype.delete = function(i) {\n var r = this.__entries__, o = t(r, i);\n ~o && r.splice(o, 1);\n }, e.prototype.has = function(i) {\n return !!~t(this.__entries__, i);\n }, e.prototype.clear = function() {\n this.__entries__.splice(0);\n }, e.prototype.forEach = function(i, r) {\n r === void 0 && (r = null);\n for (var o = 0, l = this.__entries__; o < l.length; o++) {\n var v = l[o];\n i.call(r, v[1], v[0]);\n }\n }, e;\n }()\n );\n}(), b_ = typeof window < \"u\" && typeof document < \"u\" && window.document === document, Ac = function() {\n return typeof global < \"u\" && global.Math === Math ? global : typeof self < \"u\" && self.Math === Math ? self : typeof window < \"u\" && window.Math === Math ? window : Function(\"return this\")();\n}(), rx = function() {\n return typeof requestAnimationFrame == \"function\" ? requestAnimationFrame.bind(Ac) : function(t) {\n return setTimeout(function() {\n return t(Date.now());\n }, 1e3 / 60);\n };\n}(), nx = 2;\nfunction ax(t, e) {\n var i = !1, r = !1, o = 0;\n function l() {\n i && (i = !1, t()), r && E();\n }\n function v() {\n rx(l);\n }\n function E() {\n var C = Date.now();\n if (i) {\n if (C - o < nx)\n return;\n r = !0;\n } else\n i = !0, r = !1, setTimeout(v, e);\n o = C;\n }\n return E;\n}\nvar sx = 20, ox = [\"top\", \"right\", \"bottom\", \"left\", \"width\", \"height\", \"size\", \"weight\"], cx = typeof MutationObserver < \"u\", lx = (\n /** @class */\n function() {\n function t() {\n this.connected_ = !1, this.mutationEventsAdded_ = !1, this.mutationsObserver_ = null, this.observers_ = [], this.onTransitionEnd_ = this.onTransitionEnd_.bind(this), this.refresh = ax(this.refresh.bind(this), sx);\n }\n return t.prototype.addObserver = function(e) {\n ~this.observers_.indexOf(e) || this.observers_.push(e), this.connected_ || this.connect_();\n }, t.prototype.removeObserver = function(e) {\n var i = this.observers_, r = i.indexOf(e);\n ~r && i.splice(r, 1), !i.length && this.connected_ && this.disconnect_();\n }, t.prototype.refresh = function() {\n var e = this.updateObservers_();\n e && this.refresh();\n }, t.prototype.updateObservers_ = function() {\n var e = this.observers_.filter(function(i) {\n return i.gatherActive(), i.hasActive();\n });\n return e.forEach(function(i) {\n return i.broadcastActive();\n }), e.length > 0;\n }, t.prototype.connect_ = function() {\n !b_ || this.connected_ || (document.addEventListener(\"transitionend\", this.onTransitionEnd_), window.addEventListener(\"resize\", this.refresh), cx ? (this.mutationsObserver_ = new MutationObserver(this.refresh), this.mutationsObserver_.observe(document, {\n attributes: !0,\n childList: !0,\n characterData: !0,\n subtree: !0\n })) : (document.addEventListener(\"DOMSubtreeModified\", this.refresh), this.mutationEventsAdded_ = !0), this.connected_ = !0);\n }, t.prototype.disconnect_ = function() {\n !b_ || !this.connected_ || (document.removeEventListener(\"transitionend\", this.onTransitionEnd_), window.removeEventListener(\"resize\", this.refresh), this.mutationsObserver_ && this.mutationsObserver_.disconnect(), this.mutationEventsAdded_ && document.removeEventListener(\"DOMSubtreeModified\", this.refresh), this.mutationsObserver_ = null, this.mutationEventsAdded_ = !1, this.connected_ = !1);\n }, t.prototype.onTransitionEnd_ = function(e) {\n var i = e.propertyName, r = i === void 0 ? \"\" : i, o = ox.some(function(l) {\n return !!~r.indexOf(l);\n });\n o && this.refresh();\n }, t.getInstance = function() {\n return this.instance_ || (this.instance_ = new t()), this.instance_;\n }, t.instance_ = null, t;\n }()\n), gg = function(t, e) {\n for (var i = 0, r = Object.keys(e); i < r.length; i++) {\n var o = r[i];\n Object.defineProperty(t, o, {\n value: e[o],\n enumerable: !1,\n writable: !1,\n configurable: !0\n });\n }\n return t;\n}, Ka = function(t) {\n var e = t && t.ownerDocument && t.ownerDocument.defaultView;\n return e || Ac;\n}, bg = sl(0, 0, 0, 0);\nfunction Tc(t) {\n return parseFloat(t) || 0;\n}\nfunction Of(t) {\n for (var e = [], i = 1; i < arguments.length; i++)\n e[i - 1] = arguments[i];\n return e.reduce(function(r, o) {\n var l = t[\"border-\" + o + \"-width\"];\n return r + Tc(l);\n }, 0);\n}\nfunction ux(t) {\n for (var e = [\"top\", \"right\", \"bottom\", \"left\"], i = {}, r = 0, o = e; r < o.length; r++) {\n var l = o[r], v = t[\"padding-\" + l];\n i[l] = Tc(v);\n }\n return i;\n}\nfunction _x(t) {\n var e = t.getBBox();\n return sl(0, 0, e.width, e.height);\n}\nfunction dx(t) {\n var e = t.clientWidth, i = t.clientHeight;\n if (!e && !i)\n return bg;\n var r = Ka(t).getComputedStyle(t), o = ux(r), l = o.left + o.right, v = o.top + o.bottom, E = Tc(r.width), C = Tc(r.height);\n if (r.boxSizing === \"border-box\" && (Math.round(E + l) !== e && (E -= Of(r, \"left\", \"right\") + l), Math.round(C + v) !== i && (C -= Of(r, \"top\", \"bottom\") + v)), !fx(t)) {\n var x = Math.round(E + l) - e, g = Math.round(C + v) - i;\n Math.abs(x) !== 1 && (E -= x), Math.abs(g) !== 1 && (C -= g);\n }\n return sl(o.left, o.top, E, C);\n}\nvar hx = function() {\n return typeof SVGGraphicsElement < \"u\" ? function(t) {\n return t instanceof Ka(t).SVGGraphicsElement;\n } : function(t) {\n return t instanceof Ka(t).SVGElement && typeof t.getBBox == \"function\";\n };\n}();\nfunction fx(t) {\n return t === Ka(t).document.documentElement;\n}\nfunction px(t) {\n return b_ ? hx(t) ? _x(t) : dx(t) : bg;\n}\nfunction mx(t) {\n var e = t.x, i = t.y, r = t.width, o = t.height, l = typeof DOMRectReadOnly < \"u\" ? DOMRectReadOnly : Object, v = Object.create(l.prototype);\n return gg(v, {\n x: e,\n y: i,\n width: r,\n height: o,\n top: i,\n right: e + r,\n bottom: o + i,\n left: e\n }), v;\n}\nfunction sl(t, e, i, r) {\n return { x: t, y: e, width: i, height: r };\n}\nvar vx = (\n /** @class */\n function() {\n function t(e) {\n this.broadcastWidth = 0, this.broadcastHeight = 0, this.contentRect_ = sl(0, 0, 0, 0), this.target = e;\n }\n return t.prototype.isActive = function() {\n var e = px(this.target);\n return this.contentRect_ = e, e.width !== this.broadcastWidth || e.height !== this.broadcastHeight;\n }, t.prototype.broadcastRect = function() {\n var e = this.contentRect_;\n return this.broadcastWidth = e.width, this.broadcastHeight = e.height, e;\n }, t;\n }()\n), gx = (\n /** @class */\n function() {\n function t(e, i) {\n var r = mx(i);\n gg(this, { target: e, contentRect: r });\n }\n return t;\n }()\n), bx = (\n /** @class */\n function() {\n function t(e, i, r) {\n if (this.activeObservations_ = [], this.observations_ = new vg(), typeof e != \"function\")\n throw new TypeError(\"The callback provided as parameter 1 is not a function.\");\n this.callback_ = e, this.controller_ = i, this.callbackCtx_ = r;\n }\n return t.prototype.observe = function(e) {\n if (!arguments.length)\n throw new TypeError(\"1 argument required, but only 0 present.\");\n if (!(typeof Element > \"u\" || !(Element instanceof Object))) {\n if (!(e instanceof Ka(e).Element))\n throw new TypeError('parameter 1 is not of type \"Element\".');\n var i = this.observations_;\n i.has(e) || (i.set(e, new vx(e)), this.controller_.addObserver(this), this.controller_.refresh());\n }\n }, t.prototype.unobserve = function(e) {\n if (!arguments.length)\n throw new TypeError(\"1 argument required, but only 0 present.\");\n if (!(typeof Element > \"u\" || !(Element instanceof Object))) {\n if (!(e instanceof Ka(e).Element))\n throw new TypeError('parameter 1 is not of type \"Element\".');\n var i = this.observations_;\n i.has(e) && (i.delete(e), i.size || this.controller_.removeObserver(this));\n }\n }, t.prototype.disconnect = function() {\n this.clearActive(), this.observations_.clear(), this.controller_.removeObserver(this);\n }, t.prototype.gatherActive = function() {\n var e = this;\n this.clearActive(), this.observations_.forEach(function(i) {\n i.isActive() && e.activeObservations_.push(i);\n });\n }, t.prototype.broadcastActive = function() {\n if (this.hasActive()) {\n var e = this.callbackCtx_, i = this.activeObservations_.map(function(r) {\n return new gx(r.target, r.broadcastRect());\n });\n this.callback_.call(e, i, e), this.clearActive();\n }\n }, t.prototype.clearActive = function() {\n this.activeObservations_.splice(0);\n }, t.prototype.hasActive = function() {\n return this.activeObservations_.length > 0;\n }, t;\n }()\n), yg = typeof WeakMap < \"u\" ? /* @__PURE__ */ new WeakMap() : new vg(), Eg = (\n /** @class */\n function() {\n function t(e) {\n if (!(this instanceof t))\n throw new TypeError(\"Cannot call a class as a function.\");\n if (!arguments.length)\n throw new TypeError(\"1 argument required, but only 0 present.\");\n var i = lx.getInstance(), r = new bx(e, i, this);\n yg.set(this, r);\n }\n return t;\n }()\n);\n[\n \"observe\",\n \"unobserve\",\n \"disconnect\"\n].forEach(function(t) {\n Eg.prototype[t] = function() {\n var e;\n return (e = yg.get(this))[t].apply(e, arguments);\n };\n});\nvar yx = function() {\n return typeof Ac.ResizeObserver < \"u\" ? Ac.ResizeObserver : Eg;\n}();\nconst Nf = /rotate\\(([0-9]+)deg\\)/, Pf = /scale\\((([0-9]|\\.)+)\\)/;\nclass wg extends Qv {\n constructor() {\n super(...arguments), wn(this, \"_player\"), wn(this, \"_mainContainer\"), wn(this, \"_innerRotate\", 0), wn(this, \"_outerRotate\", 0), wn(this, \"_resizeLoop\"), wn(this, \"_resizeObserver\"), wn(this, \"_onPlayerRendererChange\", () => {\n this.innerRotate = this.innerRotate;\n });\n }\n beforeInstall(e) {\n e && (this._player = e);\n }\n afterInstall(e) {\n e && (this._player = e, this._mainContainer = this._player.getMainContainer()), this._mainContainer && (this._resizeObserver = new yx(() => {\n this.innerRotate = this.innerRotate;\n }), this._resizeObserver.observe(this._mainContainer)), e.on(ge.VIDEO_RENDERER_CHANGE, this._onPlayerRendererChange);\n }\n afterUninstall(e) {\n this._resizeLoop && (clearInterval(this._resizeLoop), this._resizeLoop = void 0), this._resizeObserver && this._mainContainer && (this._resizeObserver.unobserve(this._mainContainer), this._resizeObserver.disconnect()), e.off(ge.VIDEO_RENDERER_CHANGE, this._onPlayerRendererChange);\n }\n set innerRotate(e) {\n if (e % 90 === 0) {\n this._innerRotate = this._normalizeAngle(e);\n const i = this._player;\n this._mainContainer && i && this._setInnerRotate(this._mainContainer, i, this._innerRotate);\n }\n }\n get innerRotate() {\n return this._innerRotate;\n }\n set outerRotate(e) {\n e % 90 === 0 && (this._outerRotate = this._normalizeAngle(e), this._mainContainer && this._setOuterRotate(this._mainContainer, this._outerRotate));\n }\n get outerRotate() {\n return this._outerRotate;\n }\n // private _getRotate(target: HTMLElement): number {\n // const transform = target.style.transform;\n // const val = transform.match(ROTATE_REG);\n // if (val) {\n // return parseInt(val[1]);\n // }\n // return 0;\n // }\n _setInnerRotate(e, i, r) {\n if (r = this._normalizeAngle(r), r % 90 !== 0 || !i.video)\n return;\n const o = i.videoWidth || 0, l = i.videoHeight || 0, v = e.getBoundingClientRect().height, E = e.getBoundingClientRect().width;\n let C = E;\n o / l < E / v && (C = v * o / l);\n let x = i.video.style.transform, g = r === 0 ? \"\" : `rotate(${r}deg)`, D = r % 180 === 0 ? \"\" : `scale(${v / C})`;\n Nf.test(x) ? x = x.replace(Nf, g) : g && (x += ` ${g}`), Pf.test(x) ? x = x.replace(Pf, D) : D && (x += ` ${D}`), x = x.trim(), i.canvas && (i.canvas.style.transform = x), i.video && (i.video.style.transform = x);\n }\n _setOuterRotate(e, i) {\n i = this._normalizeAngle(i), i % 90 === 0 && (i === 90 ? (e.style.width = \"100vh\", e.style.height = \"100vw\", e.style.transformOrigin = \"left top\", e.style.transform = `rotate(${i}deg) translate(0, -100%)`) : i === 180 ? (e.style.width = \"100vw\", e.style.height = \"100vh\", e.style.transformOrigin = \"left top\", e.style.transform = `rotate(${i}deg) translate(-100%, -100%)`) : i === 270 ? (e.style.width = \"100vh\", e.style.height = \"100vw\", e.style.transformOrigin = \"left top\", e.style.transform = `rotate(${i}deg) translate(-100%, 0)`) : i === 0 && (e.style.width = \"100vw\", e.style.height = \"100vh\", e.style.transformOrigin = \"\", e.style.transform = \"\"));\n }\n _normalizeAngle(e) {\n return (e % 360 + 360) % 360;\n }\n}\nwn(wg, \"version\", \"1.1.0-alpha.0\");\nvar Ex = Object.defineProperty, wx = (t, e, i) => e in t ? Ex(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, An = (t, e, i) => (wx(t, typeof e != \"symbol\" ? e + \"\" : e, i), i), Ax = Object.defineProperty, Tx = (t, e, i) => e in t ? Ax(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, sa = (t, e, i) => (Tx(t, typeof e != \"symbol\" ? e + \"\" : e, i), i);\nconst Yn = class {\n constructor() {\n sa(this, \"timeout\", 7 * 24 * 3600 * 1e3);\n }\n write(e, i) {\n if (Yn.available)\n try {\n localStorage.setItem(\n e,\n JSON.stringify({ value: i, time: Date.now() })\n );\n } catch (r) {\n }\n }\n read(e, i = !0) {\n if (Yn.available)\n try {\n const r = localStorage.getItem(e);\n if (r) {\n const { value: o, time: l = 0 } = JSON.parse(r);\n if (!i || Date.now() - l < this.timeout)\n return o;\n }\n } catch (r) {\n }\n }\n static get available() {\n if (typeof Yn._available > \"u\")\n try {\n localStorage.setItem(\"alg\", \"test\"), Yn._available = !0;\n } catch (e) {\n Yn._available = !1;\n }\n return Yn._available;\n }\n};\nlet Sx = Yn;\nsa(Sx, \"_available\");\nconst xx = \"kwai-p\";\nfunction vs(t, e) {\n return (!e || e.length === 0) && (e = [t], t = \"\"), t = xx + (t ? \"::\" + t : \"\"), e.unshift(\"[\" + t + \"] > \"), e;\n}\nconst ni = class {\n /**\n * 设置日志输出等级\n * @param l 日志等级\n */\n static level(t) {\n switch (ni.ENABLE_ERROR = ni.ENABLE_WARN = ni.ENABLE_INFO = ni.ENABLE_DEBUG = ni.ENABLE_VERBOSE = !1, t) {\n case \"e\":\n ni.ENABLE_ERROR = !0;\n break;\n case \"w\":\n ni.ENABLE_ERROR = ni.ENABLE_WARN = !0;\n break;\n case \"i\":\n ni.ENABLE_ERROR = ni.ENABLE_WARN = ni.ENABLE_INFO = !0;\n break;\n case \"d\":\n ni.ENABLE_ERROR = ni.ENABLE_WARN = ni.ENABLE_INFO = ni.ENABLE_DEBUG = !0;\n break;\n case \"v\":\n ni.ENABLE_ERROR = ni.ENABLE_WARN = ni.ENABLE_INFO = ni.ENABLE_DEBUG = ni.ENABLE_VERBOSE = !0;\n break;\n }\n }\n /**\n * error日志\n * @param tag tag\n * @param msg 日志信息\n */\n static e(t, ...e) {\n if (!ni.ENABLE_ERROR)\n return;\n const i = vs(t, e);\n (console.error || console.warn || console.log).apply(console, i);\n }\n /**\n * warn日志\n * @param tag tag\n * @param msg 日志信息\n */\n static w(t, ...e) {\n if (!ni.ENABLE_WARN)\n return;\n const i = vs(t, e);\n (console.warn || console.log).apply(console, i);\n }\n /**\n * info日志\n * @param tag tag\n * @param msg 日志信息\n */\n static i(t, ...e) {\n if (!ni.ENABLE_INFO)\n return;\n const i = vs(t, e);\n (console.info || console.log).apply(console, i);\n }\n /**\n * debug日志\n * @param tag tag\n * @param msg 日志信息\n */\n static d(t, ...e) {\n if (!ni.ENABLE_DEBUG)\n return;\n const i = vs(t, e);\n (console.debug || console.log).apply(console, i);\n }\n /**\n * verbose日志\n * @param tag tag\n * @param msg 日志信息\n */\n static v(t, ...e) {\n if (!ni.ENABLE_VERBOSE)\n return;\n const i = vs(t, e);\n console.log.apply(console, i);\n }\n};\nlet gs = ni;\nsa(gs, \"ENABLE_ERROR\", !0), sa(gs, \"ENABLE_WARN\", !1), sa(gs, \"ENABLE_INFO\", !1), sa(gs, \"ENABLE_DEBUG\", !1), sa(gs, \"ENABLE_VERBOSE\", !1);\nvar Lx = typeof globalThis < \"u\" ? globalThis : typeof window < \"u\" ? window : typeof global < \"u\" ? global : typeof self < \"u\" ? self : {}, Sc = {}, Rx = {\n get exports() {\n return Sc;\n },\n set exports(t) {\n Sc = t;\n }\n};\n(function(t, e) {\n (function(i, r) {\n var o = \"1.0.33\", l = \"\", v = \"?\", E = \"function\", C = \"undefined\", x = \"object\", g = \"string\", D = \"major\", _ = \"model\", m = \"name\", p = \"type\", d = \"vendor\", u = \"version\", U = \"architecture\", w = \"console\", S = \"mobile\", R = \"tablet\", z = \"smarttv\", W = \"wearable\", fe = \"embedded\", q = 350, ve = \"Amazon\", Ae = \"Apple\", P = \"ASUS\", Me = \"BlackBerry\", Ie = \"Browser\", je = \"Chrome\", ke = \"Edge\", H = \"Firefox\", ie = \"Google\", ye = \"Huawei\", we = \"LG\", J = \"Microsoft\", le = \"Motorola\", me = \"Opera\", he = \"Samsung\", re = \"Sharp\", Se = \"Sony\", Pe = \"Xiaomi\", Xe = \"Zebra\", Oe = \"Facebook\", st = function(K, Z) {\n var Y = {};\n for (var _e in K)\n Z[_e] && Z[_e].length % 2 === 0 ? Y[_e] = Z[_e].concat(K[_e]) : Y[_e] = K[_e];\n return Y;\n }, ze = function(K) {\n for (var Z = {}, Y = 0; Y < K.length; Y++)\n Z[K[Y].toUpperCase()] = K[Y];\n return Z;\n }, rt = function(K, Z) {\n return typeof K === g ? Fe(Z).indexOf(Fe(K)) !== -1 : !1;\n }, Fe = function(K) {\n return K.toLowerCase();\n }, G = function(K) {\n return typeof K === g ? K.replace(/[^\\d\\.]/g, l).split(\".\")[0] : r;\n }, k = function(K, Z) {\n if (typeof K === g)\n return K = K.replace(/^\\s\\s*/, l), typeof Z === C ? K : K.substring(0, q);\n }, F = function(K, Z) {\n for (var Y = 0, _e, ee, Ve, ce, qe, Ce; Y < Z.length && !qe; ) {\n var Ye = Z[Y], tt = Z[Y + 1];\n for (_e = ee = 0; _e < Ye.length && !qe; )\n if (qe = Ye[_e++].exec(K), qe)\n for (Ve = 0; Ve < tt.length; Ve++)\n Ce = qe[++ee], ce = tt[Ve], typeof ce === x && ce.length > 0 ? ce.length === 2 ? typeof ce[1] == E ? this[ce[0]] = ce[1].call(this, Ce) : this[ce[0]] = ce[1] : ce.length === 3 ? typeof ce[1] === E && !(ce[1].exec && ce[1].test) ? this[ce[0]] = Ce ? ce[1].call(this, Ce, ce[2]) : r : this[ce[0]] = Ce ? Ce.replace(ce[1], ce[2]) : r : ce.length === 4 && (this[ce[0]] = Ce ? ce[3].call(this, Ce.replace(ce[1], ce[2])) : r) : this[ce] = Ce || r;\n Y += 2;\n }\n }, I = function(K, Z) {\n for (var Y in Z)\n if (typeof Z[Y] === x && Z[Y].length > 0) {\n for (var _e = 0; _e < Z[Y].length; _e++)\n if (rt(Z[Y][_e], K))\n return Y === v ? r : Y;\n } else if (rt(Z[Y], K))\n return Y === v ? r : Y;\n return K;\n }, V = {\n \"1.0\": \"/8\",\n \"1.2\": \"/1\",\n \"1.3\": \"/3\",\n \"2.0\": \"/412\",\n \"2.0.2\": \"/416\",\n \"2.0.3\": \"/417\",\n \"2.0.4\": \"/419\",\n \"?\": \"/\"\n }, ne = {\n ME: \"4.90\",\n \"NT 3.11\": \"NT3.51\",\n \"NT 4.0\": \"NT4.0\",\n 2e3: \"NT 5.0\",\n XP: [\"NT 5.1\", \"NT 5.2\"],\n Vista: \"NT 6.0\",\n 7: \"NT 6.1\",\n 8: \"NT 6.2\",\n \"8.1\": \"NT 6.3\",\n 10: [\"NT 6.4\", \"NT 10.0\"],\n RT: \"ARM\"\n }, oe = {\n browser: [\n [\n /\\b(?:crmo|crios)\\/([\\w\\.]+)/i\n // Chrome for Android/iOS\n ],\n [u, [m, \"Chrome\"]],\n [\n /edg(?:e|ios|a)?\\/([\\w\\.]+)/i\n // Microsoft Edge\n ],\n [u, [m, \"Edge\"]],\n [\n // Presto based\n /(opera mini)\\/([-\\w\\.]+)/i,\n // Opera Mini\n /(opera [mobiletab]{3,6})\\b.+version\\/([-\\w\\.]+)/i,\n // Opera Mobi/Tablet\n /(opera)(?:.+version\\/|[\\/ ]+)([\\w\\.]+)/i\n // Opera\n ],\n [m, u],\n [\n /opios[\\/ ]+([\\w\\.]+)/i\n // Opera mini on iphone >= 8.0\n ],\n [u, [m, me + \" Mini\"]],\n [\n /\\bopr\\/([\\w\\.]+)/i\n // Opera Webkit\n ],\n [u, [m, me]],\n [\n // Mixed\n /(kindle)\\/([\\w\\.]+)/i,\n // Kindle\n /(lunascape|maxthon|netfront|jasmine|blazer)[\\/ ]?([\\w\\.]*)/i,\n // Lunascape/Maxthon/Netfront/Jasmine/Blazer\n // Trident based\n /(avant |iemobile|slim)(?:browser)?[\\/ ]?([\\w\\.]*)/i,\n // Avant/IEMobile/SlimBrowser\n /(ba?idubrowser)[\\/ ]?([\\w\\.]+)/i,\n // Baidu Browser\n /(?:ms|\\()(ie) ([\\w\\.]+)/i,\n // Internet Explorer\n // Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon\n /(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale|qqbrowserlite|qq|duckduckgo)\\/([-\\w\\.]+)/i,\n // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ, aka ShouQ\n /(weibo)__([\\d\\.]+)/i\n // Weibo\n ],\n [m, u],\n [\n /(?:\\buc? ?browser|(?:juc.+)ucweb)[\\/ ]?([\\w\\.]+)/i\n // UCBrowser\n ],\n [u, [m, \"UC\" + Ie]],\n [\n /microm.+\\bqbcore\\/([\\w\\.]+)/i,\n // WeChat Desktop for Windows Built-in Browser\n /\\bqbcore\\/([\\w\\.]+).+microm/i\n ],\n [u, [m, \"WeChat(Win) Desktop\"]],\n [\n /micromessenger\\/([\\w\\.]+)/i\n // WeChat\n ],\n [u, [m, \"WeChat\"]],\n [\n /konqueror\\/([\\w\\.]+)/i\n // Konqueror\n ],\n [u, [m, \"Konqueror\"]],\n [\n /trident.+rv[: ]([\\w\\.]{1,9})\\b.+like gecko/i\n // IE11\n ],\n [u, [m, \"IE\"]],\n [\n /yabrowser\\/([\\w\\.]+)/i\n // Yandex\n ],\n [u, [m, \"Yandex\"]],\n [\n /(avast|avg)\\/([\\w\\.]+)/i\n // Avast/AVG Secure Browser\n ],\n [[m, /(.+)/, \"$1 Secure \" + Ie], u],\n [\n /\\bfocus\\/([\\w\\.]+)/i\n // Firefox Focus\n ],\n [u, [m, H + \" Focus\"]],\n [\n /\\bopt\\/([\\w\\.]+)/i\n // Opera Touch\n ],\n [u, [m, me + \" Touch\"]],\n [\n /coc_coc\\w+\\/([\\w\\.]+)/i\n // Coc Coc Browser\n ],\n [u, [m, \"Coc Coc\"]],\n [\n /dolfin\\/([\\w\\.]+)/i\n // Dolphin\n ],\n [u, [m, \"Dolphin\"]],\n [\n /coast\\/([\\w\\.]+)/i\n // Opera Coast\n ],\n [u, [m, me + \" Coast\"]],\n [\n /miuibrowser\\/([\\w\\.]+)/i\n // MIUI Browser\n ],\n [u, [m, \"MIUI \" + Ie]],\n [\n /fxios\\/([-\\w\\.]+)/i\n // Firefox for iOS\n ],\n [u, [m, H]],\n [\n /\\bqihu|(qi?ho?o?|360)browser/i\n // 360\n ],\n [[m, \"360 \" + Ie]],\n [\n /(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i\n ],\n [[m, /(.+)/, \"$1 \" + Ie], u],\n [\n // Oculus/Samsung/Sailfish/Huawei Browser\n /(comodo_dragon)\\/([\\w\\.]+)/i\n // Comodo Dragon\n ],\n [[m, /_/g, \" \"], u],\n [\n /(electron)\\/([\\w\\.]+) safari/i,\n // Electron-based App\n /(tesla)(?: qtcarbrowser|\\/(20\\d\\d\\.[-\\w\\.]+))/i,\n // Tesla\n /m?(qqbrowser|baiduboxapp|2345Explorer)[\\/ ]?([\\w\\.]+)/i\n // QQBrowser/Baidu App/2345 Browser\n ],\n [m, u],\n [\n /(metasr)[\\/ ]?([\\w\\.]+)/i,\n // SouGouBrowser\n /(lbbrowser)/i,\n // LieBao Browser\n /\\[(linkedin)app\\]/i\n // LinkedIn App for iOS & Android\n ],\n [m],\n [\n // WebView\n /((?:fban\\/fbios|fb_iab\\/fb4a)(?!.+fbav)|;fbav\\/([\\w\\.]+);)/i\n // Facebook App for iOS & Android\n ],\n [[m, Oe], u],\n [\n /safari (line)\\/([\\w\\.]+)/i,\n // Line App for iOS\n /\\b(line)\\/([\\w\\.]+)\\/iab/i,\n // Line App for Android\n /(chromium|instagram)[\\/ ]([-\\w\\.]+)/i\n // Chromium/Instagram\n ],\n [m, u],\n [\n /\\bgsa\\/([\\w\\.]+) .*safari\\//i\n // Google Search Appliance on iOS\n ],\n [u, [m, \"GSA\"]],\n [\n /headlesschrome(?:\\/([\\w\\.]+)| )/i\n // Chrome Headless\n ],\n [u, [m, je + \" Headless\"]],\n [\n / wv\\).+(chrome)\\/([\\w\\.]+)/i\n // Chrome WebView\n ],\n [[m, je + \" WebView\"], u],\n [\n /droid.+ version\\/([\\w\\.]+)\\b.+(?:mobile safari|safari)/i\n // Android Browser\n ],\n [u, [m, \"Android \" + Ie]],\n [\n /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\/v?([\\w\\.]+)/i\n // Chrome/OmniWeb/Arora/Tizen/Nokia\n ],\n [m, u],\n [\n /version\\/([\\w\\.\\,]+) .*mobile\\/\\w+ (safari)/i\n // Mobile Safari\n ],\n [u, [m, \"Mobile Safari\"]],\n [\n /version\\/([\\w(\\.|\\,)]+) .*(mobile ?safari|safari)/i\n // Safari & Safari Mobile\n ],\n [u, m],\n [\n /webkit.+?(mobile ?safari|safari)(\\/[\\w\\.]+)/i\n // Safari < 3.0\n ],\n [m, [u, I, V]],\n [\n /(webkit|khtml)\\/([\\w\\.]+)/i\n ],\n [m, u],\n [\n // Gecko based\n /(navigator|netscape\\d?)\\/([-\\w\\.]+)/i\n // Netscape\n ],\n [[m, \"Netscape\"], u],\n [\n /mobile vr; rv:([\\w\\.]+)\\).+firefox/i\n // Firefox Reality\n ],\n [u, [m, H + \" Reality\"]],\n [\n /ekiohf.+(flow)\\/([\\w\\.]+)/i,\n // Flow\n /(swiftfox)/i,\n // Swiftfox\n /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\/ ]?([\\w\\.\\+]+)/i,\n // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror/Klar\n /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\/([-\\w\\.]+)$/i,\n // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix\n /(firefox)\\/([\\w\\.]+)/i,\n // Other Firefox-based\n /(mozilla)\\/([\\w\\.]+) .+rv\\:.+gecko\\/\\d+/i,\n // Mozilla\n // Other\n /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\. ]?browser)[-\\/ ]?v?([\\w\\.]+)/i,\n // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Sleipnir/Obigo/Mosaic/Go/ICE/UP.Browser\n /(links) \\(([\\w\\.]+)/i\n // Links\n ],\n [m, u],\n [\n /(cobalt)\\/([\\w\\.]+)/i\n // Cobalt\n ],\n [m, [u, /master.|lts./, \"\"]]\n ],\n cpu: [\n [\n /(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\)]/i\n // AMD64 (x64)\n ],\n [[U, \"amd64\"]],\n [\n /(ia32(?=;))/i\n // IA32 (quicktime)\n ],\n [[U, Fe]],\n [\n /((?:i[346]|x)86)[;\\)]/i\n // IA32 (x86)\n ],\n [[U, \"ia32\"]],\n [\n /\\b(aarch64|arm(v?8e?l?|_?64))\\b/i\n // ARM64\n ],\n [[U, \"arm64\"]],\n [\n /\\b(arm(?:v[67])?ht?n?[fl]p?)\\b/i\n // ARMHF\n ],\n [[U, \"armhf\"]],\n [\n // PocketPC mistakenly identified as PowerPC\n /windows (ce|mobile); ppc;/i\n ],\n [[U, \"arm\"]],\n [\n /((?:ppc|powerpc)(?:64)?)(?: mac|;|\\))/i\n // PowerPC\n ],\n [[U, /ower/, l, Fe]],\n [\n /(sun4\\w)[;\\)]/i\n // SPARC\n ],\n [[U, \"sparc\"]],\n [\n /((?:avr32|ia64(?=;))|68k(?=\\))|\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\b|pa-risc)/i\n // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC\n ],\n [[U, Fe]]\n ],\n device: [\n [\n //////////////////////////\n // MOBILES & TABLETS\n // Ordered by popularity\n /////////////////////////\n // Samsung\n /\\b(sch-i[89]0\\d|shw-m380s|sm-[ptx]\\w{2,4}|gt-[pn]\\d{2,4}|sgh-t8[56]9|nexus 10)/i\n ],\n [_, [d, he], [p, R]],\n [\n /\\b((?:s[cgp]h|gt|sm)-\\w+|galaxy nexus)/i,\n /samsung[- ]([-\\w]+)/i,\n /sec-(sgh\\w+)/i\n ],\n [_, [d, he], [p, S]],\n [\n // Apple\n /\\((ip(?:hone|od)[\\w ]*);/i\n // iPod/iPhone\n ],\n [_, [d, Ae], [p, S]],\n [\n /\\((ipad);[-\\w\\),; ]+apple/i,\n // iPad\n /applecoremedia\\/[\\w\\.]+ \\((ipad)/i,\n /\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i\n ],\n [_, [d, Ae], [p, R]],\n [\n /(macintosh);/i\n ],\n [_, [d, Ae]],\n [\n // Huawei\n /\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i\n ],\n [_, [d, ye], [p, R]],\n [\n /(?:huawei|honor)([-\\w ]+)[;\\)]/i,\n /\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i\n ],\n [_, [d, ye], [p, S]],\n [\n // Xiaomi\n /\\b(poco[\\w ]+)(?: bui|\\))/i,\n // Xiaomi POCO\n /\\b; (\\w+) build\\/hm\\1/i,\n // Xiaomi Hongmi 'numeric' models\n /\\b(hm[-_ ]?note?[_ ]?(?:\\d\\w)?) bui/i,\n // Xiaomi Hongmi\n /\\b(redmi[\\-_ ]?(?:note|k)?[\\w_ ]+)(?: bui|\\))/i,\n // Xiaomi Redmi\n /\\b(mi[-_ ]?(?:a\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\d?\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\))/i\n // Xiaomi Mi\n ],\n [[_, /_/g, \" \"], [d, Pe], [p, S]],\n [\n /\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i\n // Mi Pad tablets\n ],\n [[_, /_/g, \" \"], [d, Pe], [p, R]],\n [\n // OPPO\n /; (\\w+) bui.+ oppo/i,\n /\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i\n ],\n [_, [d, \"OPPO\"], [p, S]],\n [\n // Vivo\n /vivo (\\w+)(?: bui|\\))/i,\n /\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i\n ],\n [_, [d, \"Vivo\"], [p, S]],\n [\n // Realme\n /\\b(rmx[12]\\d{3})(?: bui|;|\\))/i\n ],\n [_, [d, \"Realme\"], [p, S]],\n [\n // Motorola\n /\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\b[\\w ]+build\\//i,\n /\\bmot(?:orola)?[- ](\\w*)/i,\n /((?:moto[\\w\\(\\) ]+|xt\\d{3,4}|nexus 6)(?= bui|\\)))/i\n ],\n [_, [d, le], [p, S]],\n [\n /\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i\n ],\n [_, [d, le], [p, R]],\n [\n // LG\n /((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i\n ],\n [_, [d, we], [p, R]],\n [\n /(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i,\n /\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i,\n /\\blg-?([\\d\\w]+) bui/i\n ],\n [_, [d, we], [p, S]],\n [\n // Lenovo\n /(ideatab[-\\w ]+)/i,\n /lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i\n ],\n [_, [d, \"Lenovo\"], [p, R]],\n [\n // Nokia\n /(?:maemo|nokia).*(n900|lumia \\d+)/i,\n /nokia[-_ ]?([-\\w\\.]*)/i\n ],\n [[_, /_/g, \" \"], [d, \"Nokia\"], [p, S]],\n [\n // Google\n /(pixel c)\\b/i\n // Google Pixel C\n ],\n [_, [d, ie], [p, R]],\n [\n /droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i\n // Google Pixel\n ],\n [_, [d, ie], [p, S]],\n [\n // Sony\n /droid.+ (a?\\d[0-2]{2}so|[c-g]\\d{4}|so[-gl]\\w+|xq-a\\w[4-7][12])(?= bui|\\).+chrome\\/(?![1-6]{0,1}\\d\\.))/i\n ],\n [_, [d, Se], [p, S]],\n [\n /sony tablet [ps]/i,\n /\\b(?:sony)?sgp\\w+(?: bui|\\))/i\n ],\n [[_, \"Xperia Tablet\"], [d, Se], [p, R]],\n [\n // OnePlus\n / (kb2005|in20[12]5|be20[12][59])\\b/i,\n /(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i\n ],\n [_, [d, \"OnePlus\"], [p, S]],\n [\n // Amazon\n /(alexa)webm/i,\n /(kf[a-z]{2}wi)( bui|\\))/i,\n // Kindle Fire without Silk\n /(kf[a-z]+)( bui|\\)).+silk\\//i\n // Kindle Fire HD\n ],\n [_, [d, ve], [p, R]],\n [\n /((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i\n // Fire Phone\n ],\n [[_, /(.+)/g, \"Fire Phone $1\"], [d, ve], [p, S]],\n [\n // BlackBerry\n /(playbook);[-\\w\\),; ]+(rim)/i\n // BlackBerry PlayBook\n ],\n [_, d, [p, R]],\n [\n /\\b((?:bb[a-f]|st[hv])100-\\d)/i,\n /\\(bb10; (\\w+)/i\n // BlackBerry 10\n ],\n [_, [d, Me], [p, S]],\n [\n // Asus\n /(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i\n ],\n [_, [d, P], [p, R]],\n [\n / (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i\n ],\n [_, [d, P], [p, S]],\n [\n // HTC\n /(nexus 9)/i\n // HTC Nexus 9\n ],\n [_, [d, \"HTC\"], [p, R]],\n [\n /(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i,\n // HTC\n // ZTE\n /(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i,\n /(alcatel|geeksphone|nexian|panasonic|sony(?!-bra))[-_ ]?([-\\w]*)/i\n // Alcatel/GeeksPhone/Nexian/Panasonic/Sony\n ],\n [d, [_, /_/g, \" \"], [p, S]],\n [\n // Acer\n /droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i\n ],\n [_, [d, \"Acer\"], [p, R]],\n [\n // Meizu\n /droid.+; (m[1-5] note) bui/i,\n /\\bmz-([-\\w]{2,})/i\n ],\n [_, [d, \"Meizu\"], [p, S]],\n [\n // Sharp\n /\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i\n ],\n [_, [d, re], [p, S]],\n [\n // MIXED\n /(blackberry|benq|palm(?=\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\w]*)/i,\n // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron\n /(hp) ([\\w ]+\\w)/i,\n // HP iPAQ\n /(asus)-?(\\w+)/i,\n // Asus\n /(microsoft); (lumia[\\w ]+)/i,\n // Microsoft Lumia\n /(lenovo)[-_ ]?([-\\w]+)/i,\n // Lenovo\n /(jolla)/i,\n // Jolla\n /(oppo) ?([\\w ]+) bui/i\n // OPPO\n ],\n [d, _, [p, S]],\n [\n /(archos) (gamepad2?)/i,\n // Archos\n /(hp).+(touchpad(?!.+tablet)|tablet)/i,\n // HP TouchPad\n /(kindle)\\/([\\w\\.]+)/i,\n // Kindle\n /(nook)[\\w ]+build\\/(\\w+)/i,\n // Nook\n /(dell) (strea[kpr\\d ]*[\\dko])/i,\n // Dell Streak\n /(le[- ]+pan)[- ]+(\\w{1,9}) bui/i,\n // Le Pan Tablets\n /(trinity)[- ]*(t\\d{3}) bui/i,\n // Trinity Tablets\n /(gigaset)[- ]+(q\\w{1,9}) bui/i,\n // Gigaset Tablets\n /(vodafone) ([\\w ]+)(?:\\)| bui)/i\n // Vodafone\n ],\n [d, _, [p, R]],\n [\n /(surface duo)/i\n // Surface Duo\n ],\n [_, [d, J], [p, R]],\n [\n /droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i\n // Fairphone\n ],\n [_, [d, \"Fairphone\"], [p, S]],\n [\n /(u304aa)/i\n // AT&T\n ],\n [_, [d, \"AT&T\"], [p, S]],\n [\n /\\bsie-(\\w*)/i\n // Siemens\n ],\n [_, [d, \"Siemens\"], [p, S]],\n [\n /\\b(rct\\w+) b/i\n // RCA Tablets\n ],\n [_, [d, \"RCA\"], [p, R]],\n [\n /\\b(venue[\\d ]{2,7}) b/i\n // Dell Venue Tablets\n ],\n [_, [d, \"Dell\"], [p, R]],\n [\n /\\b(q(?:mv|ta)\\w+) b/i\n // Verizon Tablet\n ],\n [_, [d, \"Verizon\"], [p, R]],\n [\n /\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i\n // Barnes & Noble Tablet\n ],\n [_, [d, \"Barnes & Noble\"], [p, R]],\n [\n /\\b(tm\\d{3}\\w+) b/i\n ],\n [_, [d, \"NuVision\"], [p, R]],\n [\n /\\b(k88) b/i\n // ZTE K Series Tablet\n ],\n [_, [d, \"ZTE\"], [p, R]],\n [\n /\\b(nx\\d{3}j) b/i\n // ZTE Nubia\n ],\n [_, [d, \"ZTE\"], [p, S]],\n [\n /\\b(gen\\d{3}) b.+49h/i\n // Swiss GEN Mobile\n ],\n [_, [d, \"Swiss\"], [p, S]],\n [\n /\\b(zur\\d{3}) b/i\n // Swiss ZUR Tablet\n ],\n [_, [d, \"Swiss\"], [p, R]],\n [\n /\\b((zeki)?tb.*\\b) b/i\n // Zeki Tablets\n ],\n [_, [d, \"Zeki\"], [p, R]],\n [\n /\\b([yr]\\d{2}) b/i,\n /\\b(dragon[- ]+touch |dt)(\\w{5}) b/i\n // Dragon Touch Tablet\n ],\n [[d, \"Dragon Touch\"], _, [p, R]],\n [\n /\\b(ns-?\\w{0,9}) b/i\n // Insignia Tablets\n ],\n [_, [d, \"Insignia\"], [p, R]],\n [\n /\\b((nxa|next)-?\\w{0,9}) b/i\n // NextBook Tablets\n ],\n [_, [d, \"NextBook\"], [p, R]],\n [\n /\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i\n // Voice Xtreme Phones\n ],\n [[d, \"Voice\"], _, [p, S]],\n [\n /\\b(lvtel\\-)?(v1[12]) b/i\n // LvTel Phones\n ],\n [[d, \"LvTel\"], _, [p, S]],\n [\n /\\b(ph-1) /i\n // Essential PH-1\n ],\n [_, [d, \"Essential\"], [p, S]],\n [\n /\\b(v(100md|700na|7011|917g).*\\b) b/i\n // Envizen Tablets\n ],\n [_, [d, \"Envizen\"], [p, R]],\n [\n /\\b(trio[-\\w\\. ]+) b/i\n // MachSpeed Tablets\n ],\n [_, [d, \"MachSpeed\"], [p, R]],\n [\n /\\btu_(1491) b/i\n // Rotor Tablets\n ],\n [_, [d, \"Rotor\"], [p, R]],\n [\n /(shield[\\w ]+) b/i\n // Nvidia Shield Tablets\n ],\n [_, [d, \"Nvidia\"], [p, R]],\n [\n /(sprint) (\\w+)/i\n // Sprint Phones\n ],\n [d, _, [p, S]],\n [\n /(kin\\.[onetw]{3})/i\n // Microsoft Kin\n ],\n [[_, /\\./g, \" \"], [d, J], [p, S]],\n [\n /droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i\n // Zebra\n ],\n [_, [d, Xe], [p, R]],\n [\n /droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i\n ],\n [_, [d, Xe], [p, S]],\n [\n ///////////////////\n // CONSOLES\n ///////////////////\n /(ouya)/i,\n // Ouya\n /(nintendo) ([wids3utch]+)/i\n // Nintendo\n ],\n [d, _, [p, w]],\n [\n /droid.+; (shield) bui/i\n // Nvidia\n ],\n [_, [d, \"Nvidia\"], [p, w]],\n [\n /(playstation [345portablevi]+)/i\n // Playstation\n ],\n [_, [d, Se], [p, w]],\n [\n /\\b(xbox(?: one)?(?!; xbox))[\\); ]/i\n // Microsoft Xbox\n ],\n [_, [d, J], [p, w]],\n [\n ///////////////////\n // SMARTTVS\n ///////////////////\n /smart-tv.+(samsung)/i\n // Samsung\n ],\n [d, [p, z]],\n [\n /hbbtv.+maple;(\\d+)/i\n ],\n [[_, /^/, \"SmartTV\"], [d, he], [p, z]],\n [\n /(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i\n // LG SmartTV\n ],\n [[d, we], [p, z]],\n [\n /(apple) ?tv/i\n // Apple TV\n ],\n [d, [_, Ae + \" TV\"], [p, z]],\n [\n /crkey/i\n // Google Chromecast\n ],\n [[_, je + \"cast\"], [d, ie], [p, z]],\n [\n /droid.+aft(\\w)( bui|\\))/i\n // Fire TV\n ],\n [_, [d, ve], [p, z]],\n [\n /\\(dtv[\\);].+(aquos)/i,\n /(aquos-tv[\\w ]+)\\)/i\n // Sharp\n ],\n [_, [d, re], [p, z]],\n [\n /(bravia[\\w ]+)( bui|\\))/i\n // Sony\n ],\n [_, [d, Se], [p, z]],\n [\n /(mitv-\\w{5}) bui/i\n // Xiaomi\n ],\n [_, [d, Pe], [p, z]],\n [\n /\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i,\n // Roku\n /hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w ]*; *(\\w[^;]*);([^;]*)/i\n // HbbTV devices\n ],\n [[d, k], [_, k], [p, z]],\n [\n /\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i\n // SmartTV from Unidentified Vendors\n ],\n [[p, z]],\n [\n ///////////////////\n // WEARABLES\n ///////////////////\n /((pebble))app/i\n // Pebble\n ],\n [d, _, [p, W]],\n [\n /droid.+; (glass) \\d/i\n // Google Glass\n ],\n [_, [d, ie], [p, W]],\n [\n /droid.+; (wt63?0{2,3})\\)/i\n ],\n [_, [d, Xe], [p, W]],\n [\n /(quest( 2)?)/i\n // Oculus Quest\n ],\n [_, [d, Oe], [p, W]],\n [\n ///////////////////\n // EMBEDDED\n ///////////////////\n /(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i\n // Tesla\n ],\n [d, [p, fe]],\n [\n ////////////////////\n // MIXED (GENERIC)\n ///////////////////\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i\n // Android Phones from Unidentified Vendors\n ],\n [_, [p, S]],\n [\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i\n // Android Tablets from Unidentified Vendors\n ],\n [_, [p, R]],\n [\n /\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i\n // Unidentifiable Tablet\n ],\n [[p, R]],\n [\n /(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i\n // Unidentifiable Mobile\n ],\n [[p, S]],\n [\n /(android[-\\w\\. ]{0,9});.+buil/i\n // Generic Android Device\n ],\n [_, [d, \"Generic\"]]\n ],\n engine: [\n [\n /windows.+ edge\\/([\\w\\.]+)/i\n // EdgeHTML\n ],\n [u, [m, ke + \"HTML\"]],\n [\n /webkit\\/537\\.36.+chrome\\/(?!27)([\\w\\.]+)/i\n // Blink\n ],\n [u, [m, \"Blink\"]],\n [\n /(presto)\\/([\\w\\.]+)/i,\n // Presto\n /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\/([\\w\\.]+)/i,\n // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna\n /ekioh(flow)\\/([\\w\\.]+)/i,\n // Flow\n /(khtml|tasman|links)[\\/ ]\\(?([\\w\\.]+)/i,\n // KHTML/Tasman/Links\n /(icab)[\\/ ]([23]\\.[\\d\\.]+)/i\n // iCab\n ],\n [m, u],\n [\n /rv\\:([\\w\\.]{1,9})\\b.+(gecko)/i\n // Gecko\n ],\n [u, m]\n ],\n os: [\n [\n // Windows\n /microsoft (windows) (vista|xp)/i\n // Windows (iTunes)\n ],\n [m, u],\n [\n /(windows) nt 6\\.2; (arm)/i,\n // Windows RT\n /(windows (?:phone(?: os)?|mobile))[\\/ ]?([\\d\\.\\w ]*)/i,\n // Windows Phone\n /(windows)[\\/ ]?([ntce\\d\\. ]+\\w)(?!.+xbox)/i\n ],\n [m, [u, I, ne]],\n [\n /(win(?=3|9|n)|win 9x )([nt\\d\\.]+)/i\n ],\n [[m, \"Windows\"], [u, I, ne]],\n [\n // iOS/macOS\n /ip[honead]{2,4}\\b(?:.*os ([\\w]+) like mac|; opera)/i,\n // iOS\n /cfnetwork\\/.+darwin/i\n ],\n [[u, /_/g, \".\"], [m, \"iOS\"]],\n [\n /(mac os x) ?([\\w\\. ]*)/i,\n /(macintosh|mac_powerpc\\b)(?!.+haiku)/i\n // Mac OS\n ],\n [[m, \"Mac OS\"], [u, /_/g, \".\"]],\n [\n // Mobile OSes\n /droid ([\\w\\.]+)\\b.+(android[- ]x86|harmonyos)/i\n // Android-x86/HarmonyOS\n ],\n [u, m],\n [\n // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS\n /(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\/ ]?([\\w\\.]*)/i,\n /(blackberry)\\w*\\/([\\w\\.]*)/i,\n // Blackberry\n /(tizen|kaios)[\\/ ]([\\w\\.]+)/i,\n // Tizen/KaiOS\n /\\((series40);/i\n // Series 40\n ],\n [m, u],\n [\n /\\(bb(10);/i\n // BlackBerry 10\n ],\n [u, [m, Me]],\n [\n /(?:symbian ?os|symbos|s60(?=;)|series60)[-\\/ ]?([\\w\\.]*)/i\n // Symbian\n ],\n [u, [m, \"Symbian\"]],\n [\n /mozilla\\/[\\d\\.]+ \\((?:mobile|tablet|tv|mobile; [\\w ]+); rv:.+ gecko\\/([\\w\\.]+)/i\n // Firefox OS\n ],\n [u, [m, H + \" OS\"]],\n [\n /web0s;.+rt(tv)/i,\n /\\b(?:hp)?wos(?:browser)?\\/([\\w\\.]+)/i\n // WebOS\n ],\n [u, [m, \"webOS\"]],\n [\n // Google Chromecast\n /crkey\\/([\\d\\.]+)/i\n // Google Chromecast\n ],\n [u, [m, je + \"cast\"]],\n [\n /(cros) [\\w]+ ([\\w\\.]+\\w)/i\n // Chromium OS\n ],\n [[m, \"Chromium OS\"], u],\n [\n // Console\n /(nintendo|playstation) ([wids345portablevuch]+)/i,\n // Nintendo/Playstation\n /(xbox); +xbox ([^\\);]+)/i,\n // Microsoft Xbox (360, One, X, S, Series X, Series S)\n // Other\n /\\b(joli|palm)\\b ?(?:os)?\\/?([\\w\\.]*)/i,\n // Joli/Palm\n /(mint)[\\/\\(\\) ]?(\\w*)/i,\n // Mint\n /(mageia|vectorlinux)[; ]/i,\n // Mageia/VectorLinux\n /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\/ ]?(?!chrom|package)([-\\w\\.]*)/i,\n // Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire\n /(hurd|linux) ?([\\w\\.]*)/i,\n // Hurd/Linux\n /(gnu) ?([\\w\\.]*)/i,\n // GNU\n /\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\/ ]?(?!amd|[ix346]{1,2}86)([\\w\\.]*)/i,\n // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly\n /(haiku) (\\w+)/i\n // Haiku\n ],\n [m, u],\n [\n /(sunos) ?([\\w\\.\\d]*)/i\n // Solaris\n ],\n [[m, \"Solaris\"], u],\n [\n /((?:open)?solaris)[-\\/ ]?([\\w\\.]*)/i,\n // Solaris\n /(aix) ((\\d)(?=\\.|\\)| )[\\w\\.])*/i,\n // AIX\n /\\b(beos|os\\/2|amigaos|morphos|openvms|fuchsia|hp-ux)/i,\n // BeOS/OS2/AmigaOS/MorphOS/OpenVMS/Fuchsia/HP-UX\n /(unix) ?([\\w\\.]*)/i\n // UNIX\n ],\n [m, u]\n ]\n }, te = function(K, Z) {\n if (typeof K === x && (Z = K, K = r), !(this instanceof te))\n return new te(K, Z).getResult();\n var Y = K || (typeof i !== C && i.navigator && i.navigator.userAgent ? i.navigator.userAgent : l), _e = Z ? st(oe, Z) : oe;\n return this.getBrowser = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.browser), ee.major = G(ee.version), ee;\n }, this.getCPU = function() {\n var ee = {};\n return ee[U] = r, F.call(ee, Y, _e.cpu), ee;\n }, this.getDevice = function() {\n var ee = {};\n return ee[d] = r, ee[_] = r, ee[p] = r, F.call(ee, Y, _e.device), ee;\n }, this.getEngine = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.engine), ee;\n }, this.getOS = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.os), ee;\n }, this.getResult = function() {\n return {\n ua: this.getUA(),\n browser: this.getBrowser(),\n engine: this.getEngine(),\n os: this.getOS(),\n device: this.getDevice(),\n cpu: this.getCPU()\n };\n }, this.getUA = function() {\n return Y;\n }, this.setUA = function(ee) {\n return Y = typeof ee === g && ee.length > q ? k(ee, q) : ee, this;\n }, this.setUA(Y), this;\n };\n te.VERSION = o, te.BROWSER = ze([m, u, D]), te.CPU = ze([U]), te.DEVICE = ze([_, d, p, w, S, z, R, W, fe]), te.ENGINE = te.OS = ze([m, u]), t.exports && (e = t.exports = te), e.UAParser = te;\n var Ee = typeof i !== C && (i.jQuery || i.Zepto);\n if (Ee && !Ee.ua) {\n var xe = new te();\n Ee.ua = xe.getResult(), Ee.ua.get = function() {\n return xe.getUA();\n }, Ee.ua.set = function(K) {\n xe.setUA(K);\n var Z = xe.getResult();\n for (var Y in Z)\n Ee.ua[Y] = Z[Y];\n };\n }\n })(typeof window == \"object\" ? window : Lx);\n})(Rx, Sc);\nconst Cx = Sc, pd = new Cx(), xc = pd.getOS().name;\nxc && xc.toLowerCase().indexOf(\"android\") >= 0;\nxc && xc.toLowerCase().indexOf(\"ios\") >= 0;\npd.getDevice().type;\nif (typeof window > \"u\")\n var pa = {};\nelse\n pa = function(t) {\n var e = {};\n function i(r) {\n if (e[r])\n return e[r].exports;\n var o = e[r] = { i: r, l: !1, exports: {} };\n return t[r].call(o.exports, o, o.exports, i), o.l = !0, o.exports;\n }\n return i.m = t, i.c = e, i.d = function(r, o, l) {\n i.o(r, o) || Object.defineProperty(r, o, { enumerable: !0, get: l });\n }, i.r = function(r) {\n typeof Symbol < \"u\" && Symbol.toStringTag && Object.defineProperty(r, Symbol.toStringTag, { value: \"Module\" }), Object.defineProperty(r, \"__esModule\", { value: !0 });\n }, i.t = function(r, o) {\n if (1 & o && (r = i(r)), 8 & o || 4 & o && typeof r == \"object\" && r && r.__esModule)\n return r;\n var l = /* @__PURE__ */ Object.create(null);\n if (i.r(l), Object.defineProperty(l, \"default\", { enumerable: !0, value: r }), 2 & o && typeof r != \"string\")\n for (var v in r)\n i.d(l, v, function(E) {\n return r[E];\n }.bind(null, v));\n return l;\n }, i.n = function(r) {\n var o = r && r.__esModule ? function() {\n return r.default;\n } : function() {\n return r;\n };\n return i.d(o, \"a\", o), o;\n }, i.o = function(r, o) {\n return Object.prototype.hasOwnProperty.call(r, o);\n }, i.p = \"\", i(i.s = 3);\n }([function(t, e) {\n function i(r, o) {\n for (var l = 0; l < o.length; l++) {\n var v = o[l];\n v.enumerable = v.enumerable || !1, v.configurable = !0, \"value\" in v && (v.writable = !0), Object.defineProperty(r, v.key, v);\n }\n }\n t.exports = function(r, o, l) {\n return o && i(r.prototype, o), l && i(r, l), Object.defineProperty(r, \"prototype\", { writable: !1 }), r;\n }, t.exports.__esModule = !0, t.exports.default = t.exports;\n }, function(t, e) {\n function i() {\n return t.exports = i = Object.assign || function(r) {\n for (var o = 1; o < arguments.length; o++) {\n var l = arguments[o];\n for (var v in l)\n Object.prototype.hasOwnProperty.call(l, v) && (r[v] = l[v]);\n }\n return r;\n }, t.exports.__esModule = !0, t.exports.default = t.exports, i.apply(this, arguments);\n }\n t.exports = i, t.exports.__esModule = !0, t.exports.default = t.exports;\n }, function(t, e, i) {\n var r, o = typeof Reflect == \"object\" ? Reflect : null, l = o && typeof o.apply == \"function\" ? o.apply : function(U, w, S) {\n return Function.prototype.apply.call(U, w, S);\n };\n r = o && typeof o.ownKeys == \"function\" ? o.ownKeys : Object.getOwnPropertySymbols ? function(U) {\n return Object.getOwnPropertyNames(U).concat(Object.getOwnPropertySymbols(U));\n } : function(U) {\n return Object.getOwnPropertyNames(U);\n };\n var v = Number.isNaN || function(U) {\n return U != U;\n };\n function E() {\n E.init.call(this);\n }\n t.exports = E, t.exports.once = function(U, w) {\n return new Promise(function(S, R) {\n function z() {\n W !== void 0 && U.removeListener(\"error\", W), S([].slice.call(arguments));\n }\n var W;\n w !== \"error\" && (W = function(fe) {\n U.removeListener(w, z), R(fe);\n }, U.once(\"error\", W)), U.once(w, z);\n });\n }, E.EventEmitter = E, E.prototype._events = void 0, E.prototype._eventsCount = 0, E.prototype._maxListeners = void 0;\n var C = 10;\n function x(U) {\n if (typeof U != \"function\")\n throw new TypeError('The \"listener\" argument must be of type Function. Received type ' + typeof U);\n }\n function g(U) {\n return U._maxListeners === void 0 ? E.defaultMaxListeners : U._maxListeners;\n }\n function D(U, w, S, R) {\n var z, W, fe, q;\n if (x(S), (W = U._events) === void 0 ? (W = U._events = /* @__PURE__ */ Object.create(null), U._eventsCount = 0) : (W.newListener !== void 0 && (U.emit(\"newListener\", w, S.listener ? S.listener : S), W = U._events), fe = W[w]), fe === void 0)\n fe = W[w] = S, ++U._eventsCount;\n else if (typeof fe == \"function\" ? fe = W[w] = R ? [S, fe] : [fe, S] : R ? fe.unshift(S) : fe.push(S), (z = g(U)) > 0 && fe.length > z && !fe.warned) {\n fe.warned = !0;\n var ve = new Error(\"Possible EventEmitter memory leak detected. \" + fe.length + \" \" + String(w) + \" listeners added. Use emitter.setMaxListeners() to increase limit\");\n ve.name = \"MaxListenersExceededWarning\", ve.emitter = U, ve.type = w, ve.count = fe.length, q = ve, console && console.warn && console.warn(q);\n }\n return U;\n }\n function _() {\n if (!this.fired)\n return this.target.removeListener(this.type, this.wrapFn), this.fired = !0, arguments.length === 0 ? this.listener.call(this.target) : this.listener.apply(this.target, arguments);\n }\n function m(U, w, S) {\n var R = { fired: !1, wrapFn: void 0, target: U, type: w, listener: S }, z = _.bind(R);\n return z.listener = S, R.wrapFn = z, z;\n }\n function p(U, w, S) {\n var R = U._events;\n if (R === void 0)\n return [];\n var z = R[w];\n return z === void 0 ? [] : typeof z == \"function\" ? S ? [z.listener || z] : [z] : S ? function(W) {\n for (var fe = new Array(W.length), q = 0; q < fe.length; ++q)\n fe[q] = W[q].listener || W[q];\n return fe;\n }(z) : u(z, z.length);\n }\n function d(U) {\n var w = this._events;\n if (w !== void 0) {\n var S = w[U];\n if (typeof S == \"function\")\n return 1;\n if (S !== void 0)\n return S.length;\n }\n return 0;\n }\n function u(U, w) {\n for (var S = new Array(w), R = 0; R < w; ++R)\n S[R] = U[R];\n return S;\n }\n Object.defineProperty(E, \"defaultMaxListeners\", { enumerable: !0, get: function() {\n return C;\n }, set: function(U) {\n if (typeof U != \"number\" || U < 0 || v(U))\n throw new RangeError('The value of \"defaultMaxListeners\" is out of range. It must be a non-negative number. Received ' + U + \".\");\n C = U;\n } }), E.init = function() {\n this._events !== void 0 && this._events !== Object.getPrototypeOf(this)._events || (this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0), this._maxListeners = this._maxListeners || void 0;\n }, E.prototype.setMaxListeners = function(U) {\n if (typeof U != \"number\" || U < 0 || v(U))\n throw new RangeError('The value of \"n\" is out of range. It must be a non-negative number. Received ' + U + \".\");\n return this._maxListeners = U, this;\n }, E.prototype.getMaxListeners = function() {\n return g(this);\n }, E.prototype.emit = function(U) {\n for (var w = [], S = 1; S < arguments.length; S++)\n w.push(arguments[S]);\n var R = U === \"error\", z = this._events;\n if (z !== void 0)\n R = R && z.error === void 0;\n else if (!R)\n return !1;\n if (R) {\n var W;\n if (w.length > 0 && (W = w[0]), W instanceof Error)\n throw W;\n var fe = new Error(\"Unhandled error.\" + (W ? \" (\" + W.message + \")\" : \"\"));\n throw fe.context = W, fe;\n }\n var q = z[U];\n if (q === void 0)\n return !1;\n if (typeof q == \"function\")\n l(q, this, w);\n else {\n var ve = q.length, Ae = u(q, ve);\n for (S = 0; S < ve; ++S)\n l(Ae[S], this, w);\n }\n return !0;\n }, E.prototype.addListener = function(U, w) {\n return D(this, U, w, !1);\n }, E.prototype.on = E.prototype.addListener, E.prototype.prependListener = function(U, w) {\n return D(this, U, w, !0);\n }, E.prototype.once = function(U, w) {\n return x(w), this.on(U, m(this, U, w)), this;\n }, E.prototype.prependOnceListener = function(U, w) {\n return x(w), this.prependListener(U, m(this, U, w)), this;\n }, E.prototype.removeListener = function(U, w) {\n var S, R, z, W, fe;\n if (x(w), (R = this._events) === void 0)\n return this;\n if ((S = R[U]) === void 0)\n return this;\n if (S === w || S.listener === w)\n --this._eventsCount == 0 ? this._events = /* @__PURE__ */ Object.create(null) : (delete R[U], R.removeListener && this.emit(\"removeListener\", U, S.listener || w));\n else if (typeof S != \"function\") {\n for (z = -1, W = S.length - 1; W >= 0; W--)\n if (S[W] === w || S[W].listener === w) {\n fe = S[W].listener, z = W;\n break;\n }\n if (z < 0)\n return this;\n z === 0 ? S.shift() : function(q, ve) {\n for (; ve + 1 < q.length; ve++)\n q[ve] = q[ve + 1];\n q.pop();\n }(S, z), S.length === 1 && (R[U] = S[0]), R.removeListener !== void 0 && this.emit(\"removeListener\", U, fe || w);\n }\n return this;\n }, E.prototype.off = E.prototype.removeListener, E.prototype.removeAllListeners = function(U) {\n var w, S, R;\n if ((S = this._events) === void 0)\n return this;\n if (S.removeListener === void 0)\n return arguments.length === 0 ? (this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0) : S[U] !== void 0 && (--this._eventsCount == 0 ? this._events = /* @__PURE__ */ Object.create(null) : delete S[U]), this;\n if (arguments.length === 0) {\n var z, W = Object.keys(S);\n for (R = 0; R < W.length; ++R)\n (z = W[R]) !== \"removeListener\" && this.removeAllListeners(z);\n return this.removeAllListeners(\"removeListener\"), this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0, this;\n }\n if (typeof (w = S[U]) == \"function\")\n this.removeListener(U, w);\n else if (w !== void 0)\n for (R = w.length - 1; R >= 0; R--)\n this.removeListener(U, w[R]);\n return this;\n }, E.prototype.listeners = function(U) {\n return p(this, U, !0);\n }, E.prototype.rawListeners = function(U) {\n return p(this, U, !1);\n }, E.listenerCount = function(U, w) {\n return typeof U.listenerCount == \"function\" ? U.listenerCount(w) : d.call(U, w);\n }, E.prototype.listenerCount = d, E.prototype.eventNames = function() {\n return this._eventsCount > 0 ? r(this._events) : [];\n };\n }, function(t, e, i) {\n i.r(e), i.d(e, \"K360Events\", function() {\n return ye;\n }), i.d(e, \"AudioRenderingMode\", function() {\n return g;\n }), i.d(e, \"MAX_FPS\", function() {\n return D;\n }), i.d(e, \"ErrorCode\", function() {\n return P;\n });\n var r, o = i(0), l = i.n(o), v = i(2);\n function E(k, F) {\n return F && F.length !== 0 || (F = [k], k = \"\"), k = \"kwai-360\" + (k ? \"::\" + k : \"\"), F.unshift(\"[\" + k + \"] > \"), F;\n }\n (function(k) {\n k.LEVEL_ERROR = \"e\", k.LEVEL_WARN = \"w\", k.LEVEL_INFO = \"i\", k.LEVEL_DEBUG = \"d\", k.LEVEL_VERBOSE = \"v\";\n })(r || (r = {}));\n var C = function() {\n function k() {\n }\n return k.level = function(F) {\n switch (k.ENABLE_ERROR = k.ENABLE_WARN = k.ENABLE_INFO = k.ENABLE_DEBUG = k.ENABLE_VERBOSE = !1, F) {\n case r.LEVEL_ERROR:\n k.ENABLE_ERROR = !0;\n break;\n case r.LEVEL_WARN:\n k.ENABLE_ERROR = k.ENABLE_WARN = !0;\n break;\n case r.LEVEL_INFO:\n k.ENABLE_ERROR = k.ENABLE_WARN = k.ENABLE_INFO = !0;\n break;\n case r.LEVEL_DEBUG:\n k.ENABLE_ERROR = k.ENABLE_WARN = k.ENABLE_INFO = k.ENABLE_DEBUG = !0;\n break;\n case r.LEVEL_VERBOSE:\n k.ENABLE_ERROR = k.ENABLE_WARN = k.ENABLE_INFO = k.ENABLE_DEBUG = k.ENABLE_VERBOSE = !0;\n }\n }, k.e = function(F) {\n if (k.ENABLE_ERROR) {\n for (var I = arguments.length, V = new Array(I > 1 ? I - 1 : 0), ne = 1; ne < I; ne++)\n V[ne - 1] = arguments[ne];\n var oe = E(F, V);\n (console.error || console.warn || console.log).apply(console, oe);\n }\n }, k.w = function(F) {\n if (k.ENABLE_WARN) {\n for (var I = arguments.length, V = new Array(I > 1 ? I - 1 : 0), ne = 1; ne < I; ne++)\n V[ne - 1] = arguments[ne];\n var oe = E(F, V);\n (console.warn || console.log).apply(console, oe);\n }\n }, k.i = function(F) {\n if (k.ENABLE_INFO) {\n for (var I = arguments.length, V = new Array(I > 1 ? I - 1 : 0), ne = 1; ne < I; ne++)\n V[ne - 1] = arguments[ne];\n var oe = E(F, V);\n (console.info || console.log).apply(console, oe);\n }\n }, k.d = function(F) {\n if (k.ENABLE_DEBUG) {\n for (var I = arguments.length, V = new Array(I > 1 ? I - 1 : 0), ne = 1; ne < I; ne++)\n V[ne - 1] = arguments[ne];\n var oe = E(F, V);\n (console.debug || console.log).apply(console, oe);\n }\n }, k.v = function(F) {\n if (k.ENABLE_VERBOSE) {\n for (var I = arguments.length, V = new Array(I > 1 ? I - 1 : 0), ne = 1; ne < I; ne++)\n V[ne - 1] = arguments[ne];\n var oe = E(F, V);\n console.log.apply(console, oe);\n }\n }, k;\n }();\n C.ENABLE_ERROR = !0, C.ENABLE_WARN = !1, C.ENABLE_INFO = !1, C.ENABLE_DEBUG = !1, C.ENABLE_VERBOSE = !1;\n function x(k, F, I) {\n return I < 0 ? k : I > 1 ? F : k + (F - k) * I;\n }\n var g, D, _, m = [0, 7, 0], p = [0, 0, 0], d = Math.PI, u = -Math.PI / 2, U = function() {\n function k(I, V) {\n this._player = void 0, this._controller = void 0, this._complete = !0, this._startTime = 0, this._duration = 0, this._delay = 0, this._updateTarget = !1, this._toFov = 0.35, this._delayTimer = void 0, this._player = I, this._controller = V;\n }\n var F = k.prototype;\n return F.start = function(I, V) {\n C.i(\"start-animation\", \"start \" + I + \" \" + V), V > 0 && (this._complete = !1, this._duration = V, this._player.eye.set(m[0], m[1], m[2]), this._player.fov = 0.7, this._updateTarget = !this._controller.sensorActive, this._player.needUpdateView(), this._updateTarget && (this._controller.userInput.yAxis = d, this._controller.userInput.xAxis = u), I > 0 ? (this._delay = I, this._startDleay()) : this._startTime = performance.now());\n }, F.update = function() {\n if (!this._complete && !this._delay) {\n var I = performance.now();\n if (I >= this._startTime + this._duration)\n return this._complete = !0, void this.end();\n var V = function(oe) {\n return oe < 0.5 ? 4 * oe * oe * oe : 1 - Math.pow(-2 * oe + 2, 3) / 2;\n }((I - this._startTime) / this._duration), ne = [0, 0, 0];\n (function(oe, te, Ee, xe) {\n oe.length === te.length && oe.length === Ee.length && xe >= 0 && xe <= 1 && oe.forEach(function(K, Z) {\n Ee[Z] = xe < 0 ? K : xe > 1 ? te[Z] : K + (te[Z] - K) * xe;\n });\n })(m, p, ne, V), this._player.eye.set(ne[0], ne[1], ne[2]), this._player.fov = x(0.7, this._toFov, V), this._player.needUpdateView(), this._updateTarget && (this._controller.userInput.yAxis = x(d, 0, V), this._controller.userInput.xAxis = x(u, 0, V));\n }\n }, F.end = function() {\n this._player.eye.set(p[0], p[1], p[2]), this._player.fov = this._toFov, this._updateTarget && (this._controller.userInput.yAxis = 0, this._controller.userInput.xAxis = 0);\n }, F.destroy = function() {\n this._stopDelay();\n }, F._startDleay = function() {\n var I = this;\n this._stopDelay(), this._delayTimer = setTimeout(function() {\n I._delay = 0, I._startTime = performance.now(), I._stopDelay();\n }, this._delay);\n }, F._stopDelay = function() {\n this._delayTimer && (clearTimeout(this._delayTimer), this._delayTimer = void 0);\n }, l()(k, [{ key: \"complete\", get: function() {\n return this._complete;\n } }, { key: \"toFov\", get: function() {\n return this._toFov;\n }, set: function(I) {\n this._toFov = I;\n } }]), k;\n }(), w = i(1), S = i.n(w);\n (function(k) {\n k.AMBISONIC = \"ambisonic\", k.BYPASS = \"bypass\", k.OFF = \"off\";\n })(g || (g = {})), function(k) {\n k[k.f10 = 10] = \"f10\", k[k.f15 = 15] = \"f15\", k[k.f30 = 30] = \"f30\", k[k.f60 = 60] = \"f60\";\n }(D || (D = {})), function(k) {\n k[k.texture = 0] = \"texture\", k[k.texImageSource = 1] = \"texImageSource\", k[k.texImageSourceStatic = 2] = \"texImageSourceStatic\";\n }(_ || (_ = {}));\n var R = function() {\n function k() {\n }\n return k.setPixelRatioByDevice = function(F) {\n k.pixelRatioByDevice = F, k.pixelRatio = F ? window.devicePixelRatio : 1;\n }, k;\n }();\n R.pixelRatioByDevice = !0, R.pixelRatio = 1;\n var z = { startAnimation: !0, startAnimationDuration: 2500, startAnimationDelay: 500, maxFps: D.f60, pixelRatioByDevice: !1, fov: 0.35 }, W = Math.PI / 180, fe = function() {\n function k(I, V, ne, oe) {\n this._x = void 0, this._y = void 0, this._z = void 0, this._w = void 0, this._x = I || 0, this._y = V || 0, this._z = ne || 0, this._w = oe !== void 0 ? oe : 1;\n }\n var F = k.prototype;\n return F.set = function(I, V, ne, oe) {\n return this._x = I, this._y = V, this._z = ne, this._w = oe, this;\n }, F.setFromEuler = function(I) {\n var V = I.x, ne = I.y, oe = I.z, te = I.order, Ee = Math.cos, xe = Math.sin, K = Ee(V / 2), Z = Ee(ne / 2), Y = Ee(oe / 2), _e = xe(V / 2), ee = xe(ne / 2), Ve = xe(oe / 2);\n switch (te) {\n case \"XYZ\":\n this._x = _e * Z * Y + K * ee * Ve, this._y = K * ee * Y - _e * Z * Ve, this._z = K * Z * Ve + _e * ee * Y, this._w = K * Z * Y - _e * ee * Ve;\n break;\n case \"YXZ\":\n this._x = _e * Z * Y + K * ee * Ve, this._y = K * ee * Y - _e * Z * Ve, this._z = K * Z * Ve - _e * ee * Y, this._w = K * Z * Y + _e * ee * Ve;\n break;\n case \"ZXY\":\n this._x = _e * Z * Y - K * ee * Ve, this._y = K * ee * Y + _e * Z * Ve, this._z = K * Z * Ve + _e * ee * Y, this._w = K * Z * Y - _e * ee * Ve;\n break;\n case \"ZYX\":\n this._x = _e * Z * Y - K * ee * Ve, this._y = K * ee * Y + _e * Z * Ve, this._z = K * Z * Ve - _e * ee * Y, this._w = K * Z * Y + _e * ee * Ve;\n break;\n case \"YZX\":\n this._x = _e * Z * Y + K * ee * Ve, this._y = K * ee * Y + _e * Z * Ve, this._z = K * Z * Ve - _e * ee * Y, this._w = K * Z * Y - _e * ee * Ve;\n break;\n case \"XZY\":\n this._x = _e * Z * Y - K * ee * Ve, this._y = K * ee * Y - _e * Z * Ve, this._z = K * Z * Ve + _e * ee * Y, this._w = K * Z * Y + _e * ee * Ve;\n break;\n default:\n console.warn(\"unknown order: \" + te);\n }\n return this;\n }, F.setFromAxisAngle = function(I, V) {\n var ne = V / 2, oe = Math.sin(ne);\n return this._x = I.x * oe, this._y = I.y * oe, this._z = I.z * oe, this._w = Math.cos(ne), this;\n }, F.multiply = function(I, V) {\n return V !== void 0 ? this.multiplyQuaternions(I, V) : this.multiplyQuaternions(this, I);\n }, F.multiplyQuaternions = function(I, V) {\n var ne = I._x, oe = I._y, te = I._z, Ee = I._w, xe = V._x, K = V._y, Z = V._z, Y = V._w;\n return this._x = ne * Y + Ee * xe + oe * Z - te * K, this._y = oe * Y + Ee * K + te * xe - ne * Z, this._z = te * Y + Ee * Z + ne * K - oe * xe, this._w = Ee * Y - ne * xe - oe * K - te * Z, this;\n }, F.normalize = function() {\n var I = this.length();\n return I === 0 ? (this._x = 0, this._y = 0, this._z = 0, this._w = 1) : (I = 1 / I, this._x = this._x * I, this._y = this._y * I, this._z = this._z * I, this._w = this._w * I), this;\n }, F.slerp = function(I, V) {\n if (V === 0)\n return this;\n if (V === 1)\n return this.copy(I);\n var ne = this._x, oe = this._y, te = this._z, Ee = this._w, xe = Ee * I._w + ne * I._x + oe * I._y + te * I._z;\n if (xe < 0 ? (this._w = -I._w, this._x = -I._x, this._y = -I._y, this._z = -I._z, xe = -xe) : this.copy(I), xe >= 1)\n return this._w = Ee, this._x = ne, this._y = oe, this._z = te, this;\n var K = 1 - xe * xe;\n if (K <= Number.EPSILON) {\n var Z = 1 - V;\n return this._w = Z * Ee + V * this._w, this._x = Z * ne + V * this._x, this._y = Z * oe + V * this._y, this._z = Z * te + V * this._z, this.normalize(), this;\n }\n var Y = Math.sqrt(K), _e = Math.atan2(Y, xe), ee = Math.sin((1 - V) * _e) / Y, Ve = Math.sin(V * _e) / Y;\n return this._w = Ee * ee + this._w * Ve, this._x = ne * ee + this._x * Ve, this._y = oe * ee + this._y * Ve, this._z = te * ee + this._z * Ve, this;\n }, F.clone = function() {\n return new k(this._x, this._y, this._z, this._w);\n }, F.copy = function(I) {\n return this._x = I.x, this._y = I.y, this._z = I.z, this._w = I.w, this;\n }, F.length = function() {\n return Math.sqrt(this._x * this._x + this._y * this._y + this._z * this._z + this._w * this._w);\n }, l()(k, [{ key: \"x\", get: function() {\n return this._x;\n } }, { key: \"y\", get: function() {\n return this._y;\n } }, { key: \"z\", get: function() {\n return this._z;\n } }, { key: \"w\", get: function() {\n return this._w;\n } }]), k;\n }(), q = function() {\n function k(I, V) {\n I === void 0 && (I = 0), V === void 0 && (V = 0), this._x = 0, this._y = 0, this._x = I, this._y = V;\n }\n var F = k.prototype;\n return F.set = function(I, V) {\n return this._x = I, this._y = V, this;\n }, F.angle = function() {\n var I = Math.atan2(-this.y, -this.x) + Math.PI;\n return I;\n }, F.rotateAround = function(I, V) {\n var ne = Math.cos(V), oe = Math.sin(V), te = this._x - I.x, Ee = this._y - I.y;\n return this._x = te * ne - Ee * oe + I.x, this._y = te * oe + Ee * ne + I.y, this;\n }, F.rotate = function(I) {\n var V = Math.cos(I), ne = Math.sin(I), oe = this._x, te = this._y;\n return this._x = oe * V - te * ne, this._y = oe * ne + te * V, this;\n }, l()(k, [{ key: \"x\", get: function() {\n return this._x;\n }, set: function(I) {\n this._x = I;\n } }, { key: \"y\", get: function() {\n return this._y;\n }, set: function(I) {\n this._y = I;\n } }]), k;\n }(), ve = function() {\n function k(I, V, ne) {\n I === void 0 && (I = 0), V === void 0 && (V = 0), ne === void 0 && (ne = 0), this._x = 0, this._y = 0, this._z = 0, this._x = I, this._y = V, this._z = ne;\n }\n var F = k.prototype;\n return F.set = function(I, V, ne) {\n return this._x = I, this._y = V, this._z = ne, this;\n }, F.applyQuaternion = function(I) {\n var V = this._x, ne = this._y, oe = this.z, te = I.x, Ee = I.y, xe = I.z, K = I.w, Z = K * V + Ee * oe - xe * ne, Y = K * ne + xe * V - te * oe, _e = K * oe + te * ne - Ee * V, ee = -te * V - Ee * ne - xe * oe;\n return this._x = Z * K + ee * -te + Y * -xe - _e * -Ee, this._y = Y * K + ee * -Ee + _e * -te - Z * -xe, this._z = _e * K + ee * -xe + Z * -Ee - Y * -te, this;\n }, F.subVectors = function(I, V) {\n return this._x = I.x - V.x, this._y = I.y - V.y, this._z = I.z - V.z, this;\n }, F.cross = function(I) {\n return this.crossVectors(this, I);\n }, F.crossVectors = function(I, V) {\n var ne = I.x, oe = I.y, te = I.z, Ee = V.x, xe = V.y, K = V.z;\n return this._x = oe * K - te * xe, this._y = te * Ee - ne * K, this._z = ne * xe - oe * Ee, this;\n }, F.normalize = function() {\n return this.divideScalar(this.length || 1);\n }, F.divideScalar = function(I) {\n return this.multiplyScalar(1 / I);\n }, F.multiplyScalar = function(I) {\n return this._x *= I, this._y *= I, this._z *= I, this;\n }, F.lengthSq = function() {\n return this._x * this._x + this._y * this._y + this._z * this._z;\n }, F.dot = function(I) {\n return this._x * I.x + this._y * I.y + this._z * I.z;\n }, F.angleTo = function(I) {\n var V = Math.sqrt(this.lengthSq() * I.lengthSq());\n if (V === 0)\n return Math.PI / 2;\n var ne, oe, te, Ee = this.dot(I) / V;\n return Math.acos((ne = Ee, oe = -1, te = 1, Math.max(oe, Math.min(te, ne))));\n }, l()(k, [{ key: \"length\", get: function() {\n return Math.sqrt(this._x * this._x + this._y * this._y + this._z * this._z);\n } }, { key: \"x\", get: function() {\n return this._x;\n }, set: function(I) {\n this._x = I;\n } }, { key: \"y\", get: function() {\n return this._y;\n }, set: function(I) {\n this._y = I;\n } }, { key: \"z\", get: function() {\n return this._z;\n }, set: function(I) {\n this._z = I;\n } }]), k;\n }(), Ae = function() {\n function k(F, I, V, ne) {\n this._x = void 0, this._y = void 0, this._z = void 0, this._order = void 0, this._x = F || 0, this._y = I || 0, this._z = V || 0, this._order = ne || k.DefaultOrder;\n }\n return k.prototype.set = function(F, I, V, ne) {\n return this._x = F, this._y = I, this._z = V, this._order = ne || this._order, this;\n }, l()(k, [{ key: \"isEuler\", get: function() {\n return !0;\n } }, { key: \"x\", get: function() {\n return this._x;\n } }, { key: \"y\", get: function() {\n return this._y;\n } }, { key: \"z\", get: function() {\n return this._z;\n } }, { key: \"order\", get: function() {\n return this._order;\n } }]), k;\n }();\n Ae.RotationOrders = [\"XYZ\", \"YZX\", \"ZXY\", \"XZY\", \"YXZ\", \"ZYX\"], Ae.DefaultOrder = \"XYZ\";\n var P, Me, Ie = function() {\n function k() {\n this._data = void 0, this._data = new Float32Array([1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]);\n }\n var F = k.prototype;\n return F.set = function(I, V, ne, oe, te, Ee, xe, K, Z, Y, _e, ee, Ve, ce, qe, Ce) {\n var Ye = this._data;\n return Ye[0] = I, Ye[4] = V, Ye[8] = ne, Ye[12] = oe, Ye[1] = te, Ye[5] = Ee, Ye[9] = xe, Ye[13] = K, Ye[2] = Z, Ye[6] = Y, Ye[10] = _e, Ye[14] = ee, Ye[3] = Ve, Ye[7] = ce, Ye[11] = qe, Ye[15] = Ce, this;\n }, F.perspective = function(I, V, ne, oe) {\n var te = this._data, Ee = Math.tan(0.5 * Math.PI - 0.5 * I), xe = 1 / (ne - oe);\n return te[0] = Ee / V, te[1] = 0, te[2] = 0, te[3] = 0, te[4] = 0, te[5] = Ee, te[6] = 0, te[7] = 0, te[8] = 0, te[9] = 0, te[10] = (ne + oe) * xe, te[11] = -1, te[12] = 0, te[13] = 0, te[14] = ne * oe * xe * 2, te[15] = 0, this;\n }, F.invert = function() {\n var I = this._data, V = I[0], ne = I[1], oe = I[2], te = I[3], Ee = I[4], xe = I[5], K = I[6], Z = I[7], Y = I[8], _e = I[9], ee = I[10], Ve = I[11], ce = I[12], qe = I[13], Ce = I[14], Ye = I[15], tt = _e * Ce * Z - qe * ee * Z + qe * K * Ve - xe * Ce * Ve - _e * K * Ye + xe * ee * Ye, Ht = ce * ee * Z - Y * Ce * Z - ce * K * Ve + Ee * Ce * Ve + Y * K * Ye - Ee * ee * Ye, $t = Y * qe * Z - ce * _e * Z + ce * xe * Ve - Ee * qe * Ve - Y * xe * Ye + Ee * _e * Ye, xt = ce * _e * K - Y * qe * K - ce * xe * ee + Ee * qe * ee + Y * xe * Ce - Ee * _e * Ce, Ct = V * tt + ne * Ht + oe * $t + te * xt;\n if (Ct === 0)\n return this.set(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);\n var Et = 1 / Ct;\n return I[0] = tt * Et, I[1] = (qe * ee * te - _e * Ce * te - qe * oe * Ve + ne * Ce * Ve + _e * oe * Ye - ne * ee * Ye) * Et, I[2] = (xe * Ce * te - qe * K * te + qe * oe * Z - ne * Ce * Z - xe * oe * Ye + ne * K * Ye) * Et, I[3] = (_e * K * te - xe * ee * te - _e * oe * Z + ne * ee * Z + xe * oe * Ve - ne * K * Ve) * Et, I[4] = Ht * Et, I[5] = (Y * Ce * te - ce * ee * te + ce * oe * Ve - V * Ce * Ve - Y * oe * Ye + V * ee * Ye) * Et, I[6] = (ce * K * te - Ee * Ce * te - ce * oe * Z + V * Ce * Z + Ee * oe * Ye - V * K * Ye) * Et, I[7] = (Ee * ee * te - Y * K * te + Y * oe * Z - V * ee * Z - Ee * oe * Ve + V * K * Ve) * Et, I[8] = $t * Et, I[9] = (ce * _e * te - Y * qe * te - ce * ne * Ve + V * qe * Ve + Y * ne * Ye - V * _e * Ye) * Et, I[10] = (Ee * qe * te - ce * xe * te + ce * ne * Z - V * qe * Z - Ee * ne * Ye + V * xe * Ye) * Et, I[11] = (Y * xe * te - Ee * _e * te - Y * ne * Z + V * _e * Z + Ee * ne * Ve - V * xe * Ve) * Et, I[12] = xt * Et, I[13] = (Y * qe * oe - ce * _e * oe + ce * ne * ee - V * qe * ee - Y * ne * Ce + V * _e * Ce) * Et, I[14] = (ce * xe * oe - Ee * qe * oe - ce * ne * K + V * qe * K + Ee * ne * Ce - V * xe * Ce) * Et, I[15] = (Ee * _e * oe - Y * xe * oe + Y * ne * K - V * _e * K - Ee * ne * ee + V * xe * ee) * Et, this;\n }, F.lookAt = function(I, V, ne) {\n var oe = this._data;\n return H.subVectors(I, V), H.lengthSq() === 0 && (H.z = 1), H.normalize(), je.crossVectors(ne, H), je.lengthSq() === 0 && (Math.abs(ne.z) === 1 ? H.x += 1e-4 : H.z += 1e-4, H.normalize(), je.crossVectors(ne, H)), je.normalize(), ke.crossVectors(H, je).normalize(), oe[0] = je.x, oe[4] = ke.x, oe[8] = H.x, oe[12] = I.x, oe[1] = je.y, oe[5] = ke.y, oe[9] = H.y, oe[13] = I.y, oe[2] = je.z, oe[6] = ke.z, oe[10] = H.z, oe[14] = I.z, oe[3] = 0, oe[7] = 0, oe[11] = 0, oe[15] = 1, this;\n }, F.multiply = function(I) {\n return this.multiplyMatrices(this, I);\n }, F.multiplyMatrices = function(I, V) {\n var ne = I.data, oe = V.data, te = this.data, Ee = ne[0], xe = ne[4], K = ne[8], Z = ne[12], Y = ne[1], _e = ne[5], ee = ne[9], Ve = ne[13], ce = ne[2], qe = ne[6], Ce = ne[10], Ye = ne[14], tt = ne[3], Ht = ne[7], $t = ne[11], xt = ne[15], Ct = oe[0], Et = oe[4], bi = oe[8], yi = oe[12], Ei = oe[1], wi = oe[5], lt = oe[9], fi = oe[13], Zt = oe[2], pi = oe[6], Bt = oe[10], gt = oe[14], bt = oe[3], Wt = oe[7], Yi = oe[11], Fi = oe[15];\n return te[0] = Ee * Ct + xe * Ei + K * Zt + Z * bt, te[4] = Ee * Et + xe * wi + K * pi + Z * Wt, te[8] = Ee * bi + xe * lt + K * Bt + Z * Yi, te[12] = Ee * yi + xe * fi + K * gt + Z * Fi, te[1] = Y * Ct + _e * Ei + ee * Zt + Ve * bt, te[5] = Y * Et + _e * wi + ee * pi + Ve * Wt, te[9] = Y * bi + _e * lt + ee * Bt + Ve * Yi, te[13] = Y * yi + _e * fi + ee * gt + Ve * Fi, te[2] = ce * Ct + qe * Ei + Ce * Zt + Ye * bt, te[6] = ce * Et + qe * wi + Ce * pi + Ye * Wt, te[10] = ce * bi + qe * lt + Ce * Bt + Ye * Yi, te[14] = ce * yi + qe * fi + Ce * gt + Ye * Fi, te[3] = tt * Ct + Ht * Ei + $t * Zt + xt * bt, te[7] = tt * Et + Ht * wi + $t * pi + xt * Wt, te[11] = tt * bi + Ht * lt + $t * Bt + xt * Yi, te[15] = tt * yi + Ht * fi + $t * gt + xt * Fi, this;\n }, l()(k, [{ key: \"data\", get: function() {\n return this._data;\n } }]), k;\n }(), je = new ve(), ke = new ve(), H = new ve();\n function ie(k) {\n return k * W;\n }\n (function(k) {\n k[k.WEBGL_INIT_ERROR = 102] = \"WEBGL_INIT_ERROR\", k[k.WEBGL_PROGRAM_ERROR = 103] = \"WEBGL_PROGRAM_ERROR\", k[k.SENSOR_NOT_SUPPORTED = 104] = \"SENSOR_NOT_SUPPORTED\", k[k.SENSOR_INIT_ERROR = 105] = \"SENSOR_INIT_ERROR\", k[k.SENSOR_INIT_DENIED = 106] = \"SENSOR_INIT_DENIED\";\n })(P || (P = {})), function(k) {\n k.AMBISONIC_CHANGE = \"ambisonicChange\", k.AMBISONIC_FAILED = \"ambisonicFailed\", k.ERROR = \"error\";\n }(Me || (Me = {}));\n var ye = Me, we = function() {\n function k(I) {\n var V = this;\n this._screenOrientation = 0, this._deviceOrientation = void 0, this._enabled = !0, this._zee = new ve(0, 0, 1), this._euler = new Ae(), this._q0 = new fe(), this._q1 = new fe(-Math.sqrt(0.5), 0, 0, Math.sqrt(0.5)), this._q2 = new fe(), this._alphaOffset = 0, this._evt = void 0, this._updated = !1, this._onDeviceOrientationChangeEvent = function(ne) {\n V._deviceOrientation = ne, V._updated = !0;\n }, this._onScreenOrientationChangeEvent = function() {\n var ne = window.orientation;\n V._screenOrientation = typeof ne == \"number\" ? ne : parseInt(ne, 10) || 0, V._updated = !0;\n }, this._setObjectQuaternion = function(ne, oe, te, Ee, xe) {\n V._euler.set(te, oe, -Ee, \"YXZ\"), V._q0.setFromEuler(V._euler), V._q0.multiply(V._q1), V._q0.multiply(V._q2.setFromAxisAngle(V._zee, -xe)), ne.multiply(V._q0);\n }, this._evt = I;\n }\n var F = k.prototype;\n return F.connect = function() {\n var I = this;\n this._onScreenOrientationChangeEvent(), window.DeviceOrientationEvent !== void 0 && typeof window.DeviceOrientationEvent.requestPermission == \"function\" ? window.DeviceOrientationEvent.requestPermission().then(function(V) {\n if (V == \"granted\")\n window.addEventListener(\"orientationchange\", I._onScreenOrientationChangeEvent, !1), window.addEventListener(\"deviceorientation\", I._onDeviceOrientationChangeEvent, !1);\n else {\n var ne = \"denied to use DeviceOrientation API response:\" + V;\n C.i(\"deviceOrientation\", ne), I._evt.emit(ye.ERROR, { code: P.SENSOR_INIT_DENIED, reason: ne, fatal: !1 });\n }\n }).catch(function(V) {\n C.e(\"deviceOrientation\", \"Unable to use DeviceOrientation API:\", V), I._evt.emit(ye.ERROR, { code: P.SENSOR_INIT_ERROR, reason: \"Unable to use DeviceOrientation API:\" + V, fatal: !1 });\n }) : (window.addEventListener(\"orientationchange\", this._onScreenOrientationChangeEvent, !1), window.addEventListener(\"deviceorientation\", this._onDeviceOrientationChangeEvent, !1)), this._enabled = !0;\n }, F.disconnect = function() {\n window.removeEventListener(\"orientationchange\", this._onScreenOrientationChangeEvent, !1), window.removeEventListener(\"deviceorientation\", this._onDeviceOrientationChangeEvent, !1), this._enabled = !1;\n }, F.update = function(I, V) {\n if (V === void 0 && (V = !1), !(V || this._enabled && this._updated))\n return !1;\n var ne = this._deviceOrientation;\n if (ne) {\n this._updated = !1;\n var oe = ne.alpha ? ie(ne.alpha) + this._alphaOffset : 0, te = ne.beta ? ie(ne.beta) : 0, Ee = ne.gamma ? ie(ne.gamma) : 0, xe = this._screenOrientation ? ie(this._screenOrientation) : 0;\n return this._setObjectQuaternion(I, oe, te, Ee, xe), !0;\n }\n return !1;\n }, F.dispose = function() {\n this.disconnect();\n }, F.hasData = function() {\n return !!this._deviceOrientation;\n }, k;\n }(), J = function() {\n function k() {\n this._vy = new ve(0, 1, 0), this._qy = new fe(), this._vx = new ve(1, 0, 0), this._qx = new fe(), this._xAxis = 0, this._yAxis = 0, this._xAxisOffset = 0, this._yAxisOffset = 0, this._axisUpdate = !0;\n }\n var F = k.prototype;\n return F.setAxis = function(I, V) {\n this._yAxis = V, this._xAxis = Math.min(Math.max(I, -Math.PI / 2), Math.PI / 2), this._axisUpdate = !0;\n }, F.updateAxis = function(I, V) {\n this._yAxis += V, this._xAxis = Math.min(Math.max(this._xAxis + I, -Math.PI / 2), Math.PI / 2), this._axisUpdate = !0;\n }, F.apply = function(I, V) {\n this._qy.setFromAxisAngle(this._vy, -(this._yAxis + this._yAxisOffset)), I.applyQuaternion(this._qy), V.applyQuaternion(this._qy), this._vx.set(I.x, I.y, I.z), this._vx.cross(this._vy), this._qx.setFromAxisAngle(this._vx, this.xAxis), I.applyQuaternion(this._qx), V.applyQuaternion(this._qx), this._axisUpdate = !1;\n }, l()(k, [{ key: \"yAxis\", get: function() {\n return this._yAxis;\n }, set: function(I) {\n this.setAxis(this._xAxis, I);\n } }, { key: \"xAxis\", get: function() {\n return this._xAxis;\n }, set: function(I) {\n this.setAxis(I, this._yAxis);\n } }, { key: \"yAxisOffset\", get: function() {\n return this._yAxisOffset;\n }, set: function(I) {\n this._yAxisOffset = I, this._axisUpdate = !0;\n } }, { key: \"xAxisOffset\", get: function() {\n return this._xAxisOffset;\n }, set: function(I) {\n this._xAxisOffset = I, this._axisUpdate = !0;\n } }, { key: \"axisUpdate\", get: function() {\n return this._axisUpdate;\n } }]), k;\n }(), le = function() {\n function k(I) {\n this._target = new ve(0, 0, -1), this._up = new ve(0, 1, 0), this._q = new fe(), this._device = void 0, this._userInput = new J(), this._player = void 0, this._sensorActive = !1, this._horizontalAngle = 0, this._deviceYOffset = void 0, this._zAngle = 0, this._normalVector = new ve(), this._inputAxis = new q(), this._device = new we(I);\n }\n var F = k.prototype;\n return F.connect = function(I) {\n this._player = I, this._sensorActive && this._device.connect();\n }, F.disconnect = function() {\n this._sensorActive && this._device.disconnect(), this._player = void 0;\n }, F.updateAxis = function(I, V) {\n this._inputAxis.set(V, I), this._inputAxis.rotate(-this._zAngle), this._userInput.updateAxis(this._inputAxis.y, this._inputAxis.x);\n }, F.update = function() {\n var I = !1;\n if (this._sensorActive) {\n if (this._deviceYOffset === void 0 && this._device.hasData() && this._player && this._player.isReady) {\n var V = new fe(), ne = new ve(0, 0, -1), oe = new ve(0, 1, 0);\n this._device.update(V), ne.applyQuaternion(V), oe.applyQuaternion(V), this._deviceYOffset = this._getHorizontalAngle(ne, oe), this._userInput.yAxisOffset = this._deviceYOffset, C.i(\"controller\", \"y offset: \" + this._deviceYOffset);\n } else\n typeof this._deviceYOffset == \"number\" && this._deviceYOffset !== this._userInput.yAxisOffset && (this._userInput.yAxisOffset = this._deviceYOffset);\n I = this._device.update(this._q, this._userInput.axisUpdate);\n } else\n this._userInput.axisUpdate && (I = !0);\n I && (this._target.applyQuaternion(this._q), this._up.applyQuaternion(this._q), this._userInput.apply(this._target, this._up), this._horizontalAngle = this._getHorizontalAngle(this._target, this._up), this._zAngle = this._getZAngle(this._target, this._up)), this._player && this._player.isReady && (I && (this._player.target.set(this._target.x, this._target.y, this._target.z), this._player.up.set(this._up.x, this._up.y, this._up.z), this._player.needUpdateView()), this._player.update()), this._q.set(0, 0, 0, 1), this._target.set(0, 0, -1), this._up.set(0, 1, 0);\n }, F._getHorizontalAngle = function(I, V) {\n var ne = 0;\n return Math.sqrt(I.z * I.z + I.x * I.x) < 0.1 ? (ne = Math.atan(V.x / V.z), I.y > 0 ? V.z < 0 && (ne += Math.PI) : V.z > 0 && (ne += Math.PI)) : (ne = Math.atan(I.x / I.z), I.z > 0 && (ne += Math.PI)), (ne + 2 * Math.PI) % (2 * Math.PI);\n }, F._getZAngle = function(I, V) {\n this._normalVector.set(I.x, I.y, I.z), this._normalVector.cross(V);\n var ne = Math.acos(this._normalVector.y / this._normalVector.length);\n return isNaN(ne) ? 0 : (V.y < 0 && (ne = -ne), ne = (ne + 2 * Math.PI - Math.PI / 2) % (2 * Math.PI));\n }, l()(k, [{ key: \"userInput\", get: function() {\n return this._userInput;\n } }, { key: \"sensorActive\", get: function() {\n return this._sensorActive;\n }, set: function(I) {\n this._sensorActive = I, I && this._player && this.connect(this._player);\n } }, { key: \"horizontalAngle\", get: function() {\n return this._horizontalAngle;\n } }]), k;\n }();\n function me(k, F) {\n F = F || 1;\n var I = k.clientWidth * F | 0, V = k.clientHeight * F | 0;\n return !(!I || !V || k.width === I && k.height === V) && (k.width = I, k.height = V, !0);\n }\n function he(k, F, I, V, ne) {\n var oe = ne || Se, te = k.createProgram();\n return te ? (F.forEach(function(Ee) {\n k.attachShader(te, Ee);\n }), I && I.forEach(function(Ee, xe) {\n k.bindAttribLocation(te, V ? V[xe] : xe, Ee);\n }), k.linkProgram(te), k.getProgramParameter(te, k.LINK_STATUS) ? te : (oe(\"Error in program linking:\" + k.getProgramInfoLog(te)), k.deleteProgram(te), null)) : null;\n }\n function re(k, F, I, V) {\n var ne = V || Se, oe = k.createShader(I);\n return oe ? (k.shaderSource(oe, F), k.compileShader(oe), k.getShaderParameter(oe, k.COMPILE_STATUS) ? oe : (ne(\"*** Error compiling shader '\" + oe + \"':\" + k.getShaderInfoLog(oe)), k.deleteShader(oe), null)) : null;\n }\n function Se(k) {\n console && (console.error ? console.error(k) : console.log && console.log(k));\n }\n var Pe = void 0, Xe = void 0, Oe = function() {\n function k() {\n var I = this;\n this._video = null, this._isVideoPlaybackQualityAvailable = !1, this._sourceFPS = 0, this._lastCalculateFPSFrames = 0, this._lastCalculateFPSTime = 0, this._lastRenderTime = 0, this._lastRenderAndUploadTime = 0, this._frameDuration = Math.floor(40), this._hasOverriddenFPS = !1, this._skip = 0, this._renderTimeRecord = [], this._quality = { droped: 0, drawn: 0, texUploads: 0 }, this._seeked = function() {\n I._lastCalculateFPSTime = 0, I._lastCalculateFPSFrames = 0;\n };\n }\n var F = k.prototype;\n return F.destroy = function() {\n this.detachMedia();\n }, F.attachMedia = function(I) {\n if (this.destroy(), I instanceof HTMLVideoElement) {\n var V = this._video = I instanceof window.HTMLVideoElement ? I : null;\n V && (this._isVideoPlaybackQualityAvailable = typeof V.getVideoPlaybackQuality == \"function\", V.addEventListener(\"seeked\", this._seeked));\n } else\n this._video && this._video.removeEventListener(\"seeked\", this._seeked), this._video = null;\n }, F.detachMedia = function() {\n this._video && this._video.removeEventListener(\"seeked\", this._seeked), this._video = null;\n }, F.setFPS = function(I) {\n I > 0 && (this._hasOverriddenFPS = !0, this._frameDuration = Math.floor(1e3 / I));\n }, F.reset = function() {\n this._lastCalculateFPSFrames = 0, this._lastCalculateFPSTime = 0, this._lastRenderTime = 0, this._lastRenderAndUploadTime = 0, this._skip = 0, this._renderTimeRecord = [], this._quality = { droped: 0, drawn: 0, texUploads: 0 };\n }, F.update = function(I, V, ne) {\n V === void 0 && (V = !1), ne === void 0 && (ne = !1);\n var oe = this._video, te = performance.now();\n if (oe && !this._hasOverriddenFPS) {\n var Ee = 0;\n if (this._isVideoPlaybackQualityAvailable) {\n var xe = oe.getVideoPlaybackQuality();\n Ee = xe.totalVideoFrames + xe.droppedVideoFrames;\n } else\n Ee = oe.webkitDecodedFrameCount || 0 + oe.webkitDroppedFrameCount || 0;\n if (this._lastCalculateFPSTime) {\n if (te - this._lastCalculateFPSTime >= 2e3) {\n var K = (Ee - this._lastCalculateFPSFrames) / (te - this._lastCalculateFPSTime) * 1e3;\n this._frameDuration = Math.floor(1e3 / Math.max(25, this._sourceFPS, K)), this._sourceFPS = K, this._lastCalculateFPSFrames = Ee, this._lastCalculateFPSTime = te;\n }\n } else\n this._lastCalculateFPSTime = te, this._lastCalculateFPSFrames = Ee;\n }\n if (V = V || !(!(te - this._lastRenderAndUploadTime > this._frameDuration && oe) || oe.paused), ne && this._video) {\n var Z = 0;\n this._renderTimeRecord.length && (Z = this._renderTimeRecord.reduce(function(ee, Ve) {\n return ee + Ve;\n }, 0) / this._renderTimeRecord.length), ne = !!(Z && Z < this._frameDuration) && 1.5 * Z < te - this._lastRenderTime;\n }\n if (!this._lastRenderTime || (V || ne) && this._skip <= 0) {\n this._lastRenderTime = te;\n var Y = performance.now();\n I(V);\n var _e = performance.now() - Y;\n return this._skip = Math.min(3, Math.max(0, Math.ceil((_e - this._frameDuration) / this._frameDuration))), this._quality.droped += this._skip, V && (this._quality.texUploads++, this._lastRenderAndUploadTime = te, this._renderTimeRecord.push(_e)), this._renderTimeRecord.length > 10 && this._renderTimeRecord.shift(), this._quality.drawn++, !0;\n }\n return this._skip--, !1;\n }, l()(k, [{ key: \"quality\", get: function() {\n return this._quality;\n } }]), k;\n }(), st = function() {\n function k(I) {\n var V = this;\n this._source = void 0, this._canvas = void 0, this._needUpdateView = !0, this._vShader = null, this._fShader = null, this._program = null, this._positionBuffer = null, this._texcoordBuffer = null, this._indicesBuffer = null, this._positionLocation = 0, this._texcoordLocation = 0, this._texture = null, this._matrixUniform = null, this._textureUniform = null, this._gl = null, this._inputType = _.texImageSource, this._model = void 0, this._target = new ve(0, 0, -1), this._up = new ve(0, 1, 0), this._eye = new ve(0, 0, 0), this._fov = 0.35, this._updateTexImage = !0, this._evt = void 0, this._outputFBO = null, this._output = null, this._projection = new Ie(), this._view = new Ie(), this._canvasWidth = 0, this._canvasHeight = 0, this._fps = void 0, this._externalGLCtx = !1, this._draw = function(ne) {\n if (ne === void 0 && (ne = !0), V._isActivated || V._active(), V._isActivated) {\n var oe = V._gl;\n oe && V._source && V._model && V._program && (oe.viewport(0, 0, oe.canvas.width, oe.canvas.height), oe.activeTexture(oe.TEXTURE0), oe.bindTexture(oe.TEXTURE_2D, V._texture), ne && (V._inputType === _.texImageSource ? oe.texImage2D(oe.TEXTURE_2D, 0, oe.RGBA, oe.RGBA, oe.UNSIGNED_BYTE, V._source) : oe.pixelStorei(oe.UNPACK_FLIP_Y_WEBGL, 1), V._updateTexImage = !1), oe.bindFramebuffer(oe.FRAMEBUFFER, V._outputFBO), oe.clearColor(0, 0, 0, 0), oe.clear(oe.COLOR_BUFFER_BIT), oe.drawElements(oe.TRIANGLES, V._model.indices.length, oe.UNSIGNED_SHORT, 0), V._output && (oe.bindTexture(oe.TEXTURE_2D, null), oe.bindFramebuffer(oe.FRAMEBUFFER, null)), oe.finish());\n }\n }, this._fpsCallback = function(ne) {\n ne === void 0 && (ne = !0);\n var oe = V._gl;\n oe && V._needUpdateView && V._updateView(oe), V._needUpdateView = !1, V._draw(ne);\n }, C.i(\"player\", \"constructor\"), this._evt = I, this._fps = new Oe(), this._model = function(ne, oe, te) {\n for (var Ee = [], xe = [], K = [], Z = Math.PI / 2, Y = 0; Y < oe; Y++)\n for (var _e = 0; _e < te; _e++) {\n var ee = 2 * Math.PI / (te - 1) * _e, Ve = Math.PI * Y / (oe - 1) - Math.PI / 2, ce = Math.cos(ee + Z) * ne * Math.cos(Ve), qe = Math.sin(ee + Z) * ne * Math.cos(Ve), Ce = Math.sin(Ve) * ne;\n xe.push(ce, Ce, qe), K.push(_e / (te - 1), 1 - Y / (oe - 1)), Y < oe - 1 && _e < te - 1 && (Ee.push(Y * te + _e, Y * te + _e + 1, (Y + 1) * te + _e), Ee.push(Y * te + _e + 1, (Y + 1) * te + _e + 1, (Y + 1) * te + _e));\n }\n return { coordinate: xe, textureCoordinate: K, indices: Ee };\n }(10, 50, 50);\n }\n var F = k.prototype;\n return F.setFPS = function(I) {\n C.i(\"player\", \"set fps: \" + I), this._fps.setFPS(I);\n }, F.attachSource = function(I) {\n C.i(\"player\", \"attachSource\", I), this._source = I, this._updateTexImage = !0, this._inputType = this._getInputType(I), this._bindSource();\n }, F.detachSource = function() {\n C.i(\"player\", \"detachSource\"), this._source = void 0, this._fps.detachMedia();\n }, F.attachOutputCanvas = function(I) {\n C.i(\"player\", \"attachOutputCanvas\", I === this._canvas, this._canvas, this._externalGLCtx), this._canvasWidth = 0, this._canvasHeight = 0;\n var V, ne, oe, te = !0, Ee = this._externalGLCtx;\n I instanceof HTMLCanvasElement ? (te = this._canvas !== I, this._canvas = I, te && (oe = { powerPreference: \"default\", failIfMajorPerformanceCaveat: !0, preserveDrawingBuffer: !0 }, V = (ne = I).getContext(\"webgl\", oe) || ne.getContext(\"experimental-webgl\", oe)), this._externalGLCtx = !1) : (te = this._gl !== I, this._canvas = I.canvas, V = I, this._externalGLCtx = !0), te && (C.i(\"player\", \"output updated\"), this._destroyWebGL(!Ee), this._bindSource()), V && (this._gl = V), this._gl || this._evt.emit(ye.ERROR, { code: P.WEBGL_INIT_ERROR, reason: \"unsupported\", fatal: !0 });\n }, F.detachOutput = function() {\n C.i(\"player\", \"detachOutput\"), this._gl && this.stop(), this._gl = null;\n }, F.setAudioRenderingMode = function(I) {\n }, F.update = function() {\n var I = this._gl;\n if (I) {\n var V = R.pixelRatio, ne = I.canvas;\n this._gl && this._isCanvasResized(ne, V) && (this._recordCanvasSize(), me(ne, R.pixelRatio), this._needUpdateView = !0, this._updateTexImage = !0, C.i(\"player\", \"canvas resize\", ne.clientWidth, ne.width, this._externalGLCtx)), this._source && this._isActivated && this._fps.update(this._fpsCallback, this._updateTexImage, this._needUpdateView);\n }\n }, F.draw = function() {\n var I = this._gl;\n if (I) {\n var V, ne = I.canvas;\n this._isCanvasResized(ne, R.pixelRatio) && (this._recordCanvasSize(), me(ne, R.pixelRatio), this._updateView(I), C.i(\"player\", \"canvas resize\", ne.clientWidth, ne.width, this._externalGLCtx)), this._source && ((V = this._source) instanceof HTMLVideoElement ? V.videoWidth > 0 : !(V instanceof HTMLImageElement) || V.complete) && this._draw(!0);\n }\n }, F._bindSource = function() {\n this._inputType !== _.texture && this._fps.attachMedia(this._source);\n var I = this._gl, V = this._source;\n if (I && V && this._inputType === _.texture) {\n var ne = V;\n this._texture = ne.texture, I.bindFramebuffer(I.FRAMEBUFFER, ne.framebuffer), I.bindTexture(I.TEXTURE_2D, ne.texture), I.framebufferTexture2D(I.FRAMEBUFFER, I.COLOR_ATTACHMENT0, I.TEXTURE_2D, ne.texture, 0);\n }\n }, F.destroy = function() {\n C.i(\"player\", \"destroy\"), this._destroyWebGL(!0), this._source = void 0, this._canvas = void 0, this._fps.destroy();\n }, F.drawToFBO = function() {\n C.i(\"player\", \"drawToFBO: \" + !!this._gl);\n var I = this._gl;\n if (I)\n return this._output || (this._output = this._createAndSetupTexture(I), this._outputFBO = I.createFramebuffer(), I.bindFramebuffer(I.FRAMEBUFFER, this._outputFBO), I.texImage2D(I.TEXTURE_2D, 0, I.RGBA, I.canvas.width, I.canvas.height, 0, I.RGBA, I.UNSIGNED_BYTE, null), I.framebufferTexture2D(I.FRAMEBUFFER, I.COLOR_ATTACHMENT0, I.TEXTURE_2D, this._output, 0)), { texture: this._output, framebuffer: this._outputFBO };\n }, F.drawToCanvas = function() {\n var I = this._gl;\n I && (this._outputFBO && I.deleteFramebuffer(this._outputFBO), this._output && I.deleteTexture(this._output), this._outputFBO = null, this._output = null);\n }, F.start = function() {\n C.i(\"player\", \"start: \" + !!this._gl), this._gl && (this._initWebGL(this._gl), this._needUpdateView = !0, this.update());\n }, F.stop = function(I) {\n I === void 0 && (I = !1), C.i(\"player\", \"stop: \" + !(!I || !this._gl)), I && this._gl && (this._gl.clearColor(0, 0, 0, 0), this._gl.clear(this._gl.COLOR_BUFFER_BIT)), this._fps.reset();\n }, F.needUpdateView = function() {\n this._needUpdateView = !0;\n }, F._initWebGL = function(I) {\n if (C.i(\"player\", \"initWebGL. \" + !this._program), !this._program) {\n var V = function(ne, oe, te, Ee, xe, K) {\n Ee === void 0 && (Ee = []), xe === void 0 && (xe = []);\n var Z = [], Y = re(ne, oe, ne.VERTEX_SHADER, K), _e = re(ne, te, ne.FRAGMENT_SHADER, K);\n return Y && Z.push(Y), _e && Z.push(_e), { program: he(ne, Z, Ee, xe, K), vertexShader: Y, fragmentShader: _e };\n }(I, `\n attribute vec4 a_position;\n attribute vec2 a_texcoord;\n uniform mat4 u_matrix;\n\n varying vec2 v_texcoord;\n \n void main() {\n gl_Position = u_matrix * a_position;\n v_texcoord = a_texcoord;\n }\n`, `\n precision mediump float;\n // Passed in from the vertex shader.\n varying vec2 v_texcoord;\n\n // The texture.\n uniform sampler2D u_texture;\n \n void main() {\n gl_FragColor = texture2D(u_texture, v_texcoord);\n }\n`);\n this._vShader = V.vertexShader, this._fShader = V.fragmentShader, (this._program = V.program) ? (this._texture = this._createAndSetupTexture(I), this._active()) : this._evt.emit(ye.ERROR, { code: P.WEBGL_PROGRAM_ERROR, reason: \"create program error\", fatal: !0 });\n }\n }, F._active = function() {\n var I = this._gl, V = this._program;\n if (I && V) {\n I.useProgram(V);\n var ne = this._model;\n this._positionLocation = I.getAttribLocation(V, \"a_position\"), this._texcoordLocation = I.getAttribLocation(V, \"a_texcoord\"), this._matrixUniform = I.getUniformLocation(V, \"u_matrix\"), this._textureUniform = I.getUniformLocation(V, \"u_texture\"), this._positionBuffer = I.createBuffer(), I.bindBuffer(I.ARRAY_BUFFER, this._positionBuffer), I.bufferData(I.ARRAY_BUFFER, new Float32Array(ne.coordinate), I.STATIC_DRAW), I.enableVertexAttribArray(this._positionLocation), I.vertexAttribPointer(this._positionLocation, 3, I.FLOAT, !1, 0, 0), this._texcoordBuffer = I.createBuffer(), I.bindBuffer(I.ARRAY_BUFFER, this._texcoordBuffer), I.bufferData(I.ARRAY_BUFFER, new Float32Array(ne.textureCoordinate), I.STATIC_DRAW), I.enableVertexAttribArray(this._texcoordLocation), I.vertexAttribPointer(this._texcoordLocation, 2, I.FLOAT, !1, 0, 0), this._indicesBuffer = I.createBuffer(), I.bindBuffer(I.ELEMENT_ARRAY_BUFFER, this._indicesBuffer), I.bufferData(I.ELEMENT_ARRAY_BUFFER, new Uint16Array(ne.indices), I.STATIC_DRAW), me(I.canvas, R.pixelRatio), this._recordCanvasSize();\n }\n }, F._updateView = function(I) {\n if (this._canvas) {\n var V = Math.PI * this._fov, ne = this._canvas.clientWidth / this._canvas.clientHeight;\n this._projection.perspective(V, ne, 1e-4, 500), this._view.lookAt(this._eye, this._target, this._up), this._view.invert(), this._projection.multiply(this._view), I.uniformMatrix4fv(this._matrixUniform, !1, this._projection.data), I.uniform1i(this._textureUniform, 0);\n }\n }, F._isCanvasResized = function(I, V) {\n V = V || 1;\n var ne = I.clientWidth * V | 0, oe = I.clientHeight * V | 0;\n return this._canvasWidth !== ne || this._canvasHeight !== oe;\n }, F._destroyWebGL = function(I) {\n if (I === void 0 && (I = !1), C.i(\"player\", \"destroyWebGL\"), this._gl && (this._gl.disableVertexAttribArray(this._positionLocation), this._gl.disableVertexAttribArray(this._texcoordLocation), this._outputFBO && this._gl.deleteFramebuffer(this._outputFBO), this._positionBuffer && this._gl.deleteBuffer(this._positionBuffer), this._texcoordBuffer && this._gl.deleteBuffer(this._texcoordBuffer), this._indicesBuffer && this._gl.deleteBuffer(this._indicesBuffer), this._output && this._gl.deleteTexture(this._output), this._texture && this._gl.deleteTexture(this._texture), this._program && this._gl.deleteProgram(this._program), this._vShader && this._gl.deleteShader(this._vShader), this._fShader && this._gl.deleteShader(this._fShader), this._program = null, this._outputFBO = null, this._output = null, I && !this._externalGLCtx)) {\n var V = this._gl.getExtension(\"WEBGL_lose_context\");\n V && V.loseContext();\n }\n this._program = null, this._texture = null;\n }, F._recordCanvasSize = function() {\n if (this._canvas) {\n var I = R.pixelRatio || 1;\n this._canvasWidth = this._canvas.clientWidth * I | 0, this._canvasHeight = this._canvas.clientHeight * I | 0;\n }\n }, F._getInputType = function(I) {\n return I.hasOwnProperty(\"texture\") ? _.texture : _.texImageSource;\n }, F._createAndSetupTexture = function(I) {\n var V = I.createTexture();\n return I.bindTexture(I.TEXTURE_2D, V), I.texParameteri(I.TEXTURE_2D, I.TEXTURE_WRAP_S, I.CLAMP_TO_EDGE), I.texParameteri(I.TEXTURE_2D, I.TEXTURE_WRAP_T, I.CLAMP_TO_EDGE), I.texParameteri(I.TEXTURE_2D, I.TEXTURE_MIN_FILTER, I.LINEAR), I.texParameteri(I.TEXTURE_2D, I.TEXTURE_MAG_FILTER, I.LINEAR), V;\n }, l()(k, [{ key: \"isReady\", get: function() {\n return !!this._texture;\n } }, { key: \"fov\", get: function() {\n return this._fov;\n }, set: function(I) {\n this._fov = I;\n } }, { key: \"eye\", get: function() {\n return this._eye;\n } }, { key: \"target\", get: function() {\n return this._target;\n } }, { key: \"up\", get: function() {\n return this._up;\n } }, { key: \"quality\", get: function() {\n return this._fps.quality;\n } }, { key: \"outputResource\", get: function() {\n return this._output ? { texture: this._output, framebuffer: this._outputFBO } : void 0;\n } }, { key: \"_isActivated\", get: function() {\n return !(!this._gl || this._gl.getParameter(this._gl.CURRENT_PROGRAM) !== this._program);\n } }]), k;\n }(), ze = function() {\n var k, F = navigator.userAgent, I = F.indexOf(\"(iPhone;\") > -1 || F.indexOf(\"(iPad;\") > -1;\n if (I) {\n var V = F.match(/OS (\\d+)_(\\d+)_?(\\d+)?/);\n V && V.length >= 3 && (k = parseInt(V[1], 10) + 0.1 * parseInt(V[2]));\n }\n return { isTBS: / TBS\\//.test(F), isAndroid: F.indexOf(\"Android\") > -1 || F.indexOf(\"Adr\") > -1, isIOS: I, iOSVersion: k, isIE: !!(/(MSIE) ([\\w.]+)/.exec(F) || F.indexOf(\"trident\") >= 0 && /(rv)(?::| )([\\w.]+)/.exec(F)) };\n }(), rt = function() {\n function k() {\n this.timeout = 6048e5;\n }\n var F = k.prototype;\n return F.write = function(I, V) {\n k.available && localStorage.setItem(I, JSON.stringify({ value: V, time: Date.now() }));\n }, F.read = function(I) {\n if (k.available)\n try {\n var V = localStorage.getItem(I);\n if (V) {\n var ne = JSON.parse(V), oe = ne.value, te = ne.time, Ee = te === void 0 ? 0 : te;\n if (Date.now() - Ee < this.timeout)\n return oe;\n }\n } catch (xe) {\n }\n }, l()(k, null, [{ key: \"available\", get: function() {\n if (k._available === void 0)\n try {\n localStorage.setItem(\"kwai-h5\", \"test\"), k._available = !0;\n } catch (I) {\n k._available = !1;\n }\n return k._available;\n } }]), k;\n }();\n rt._available = void 0;\n var Fe = rt, G = function() {\n function k(I) {\n var V = this;\n this._config = void 0, this._player = void 0, this._active = !1, this._controller = void 0, this._error = void 0, this._storage = void 0, this._source = void 0, this._playPos = 0, this._animation = void 0, this._animationPlayed = !1, this._skipUpdate = 0, this._internalEvt = void 0, this._update = function() {\n if (V._active) {\n if (requestAnimationFrame(V._update), V._skipUpdate > 0)\n return void V._skipUpdate--;\n V._config.maxFps <= D.f60 && (V._skipUpdate = Math.max(1, Math.ceil(60 / V._config.maxFps))), V._animation && !V._animation.complete && V._player.isReady && V._animation.update(), V._controller.update();\n }\n }, this._onError = function(ne) {\n ne.fatal && (V._stopPlayer(), V._error = ne);\n }, this._onVideoStateChange = function() {\n V._source instanceof HTMLVideoElement && (V._isSourceReady() ? (V._player.isReady || V._startPlayer(), V._source.ended && V._stopPlayer()) : V._stopPlayer());\n }, this._onVideoTimeupdate = function() {\n if (!V._player.isReady && V._source && V._source instanceof HTMLVideoElement) {\n if (V._playPos > 0 && V._source.readyState > 1)\n return void (V._playPos = 0);\n V._isSourceReady() && !V._player.isReady && (C.i(\"main\", \"started by timeupdate\"), V._startPlayer());\n }\n }, this._onVideoEmptied = function() {\n V._stopPlayer();\n }, this._onImgLoad = function() {\n C.i(\"main\", \"on img load. start: \" + (V._source instanceof HTMLImageElement) + \" \" + V._isSourceReady() + \" \" + !V._player.isReady), !V._player.isReady && V._source instanceof HTMLImageElement && V._isSourceReady() && V._startPlayer(), V._player.draw();\n }, this._internalEvt = new v.EventEmitter(), this._internalEvt.on(ye.ERROR, this._onError), this._config = function(ne) {\n var oe = S()({}, z);\n return S()(oe, ne), R.setPixelRatioByDevice(oe.pixelRatioByDevice), oe;\n }(I), this._player = new st(this), this._controller = new le(this), this._controller.connect(this._player), this._config.startAnimation && (this._animation = new U(this._player, this._controller)), this._storage = new Fe(), this._storage.read(\"kwai-360-log\") && C.level(r.LEVEL_VERBOSE), C.i(\"main\", k.version);\n }\n k.isSupported = function() {\n return !ze.isIE && ze.iOSVersion !== 10.3 && function(I) {\n if (I === void 0 && (I = !1), I) {\n if (Xe !== void 0)\n return Xe;\n } else if (Pe !== void 0)\n return Pe;\n var V = !1;\n try {\n var ne = document.createElement(\"canvas\"), oe = { preferLowPowerToHighPerformance: !0, failIfMajorPerformanceCaveat: I, preserveDrawingBuffer: !0 };\n if (typeof WebGLRenderingContext < \"u\") {\n var te = ne.getContext(\"webgl\", oe) || ne.getContext(\"experimental-webgl\", oe);\n if (te) {\n var Ee = te.getExtension(\"WEBGL_lose_context\");\n Ee && Ee.loseContext(), V = !0;\n } else\n V = !1;\n } else\n V = !1;\n } catch (xe) {\n }\n return I ? Xe = V : Pe = V, V;\n }(!0);\n }, k.isSensorSupported = function() {\n return !!window.DeviceOrientationEvent;\n };\n var F = k.prototype;\n return F.on = function(I, V) {\n this._internalEvt.on(I, V);\n }, F.once = function(I, V) {\n this._internalEvt.once(I, V);\n }, F.removeAllListeners = function(I) {\n this._internalEvt.removeAllListeners(I);\n }, F.off = function(I, V) {\n this._internalEvt.off(I, V);\n }, F.listeners = function(I) {\n return this._internalEvt.listeners(I);\n }, F.emit = function(I, V) {\n return this._internalEvt.emit(I, V);\n }, F.listenerCount = function(I) {\n return this._internalEvt.listenerCount(I);\n }, F.destroy = function() {\n C.i(\"main\", \"destroy\"), this._animation && this._animation.destroy(), this._unbindSource(this._source), this._stopPlayer(), this._stopLoop(), this._player.destroy(), this._internalEvt.removeAllListeners();\n }, F.setMediaInfo = function(I) {\n C.i(\"main\", \"setMediaInfo\", I), I.fps && this._player.setFPS(I.fps);\n }, F.attachSource = function(I) {\n C.i(\"main\", \"attachSource\"), this._source && (this._unbindSource(this._source), this._stopPlayer(!0)), this._source = I, this._player.attachSource(I), this._isSourceReady() && this._startPlayer(), I instanceof HTMLVideoElement ? (I.addEventListener(\"canplay\", this._onVideoStateChange), I.addEventListener(\"playing\", this._onVideoStateChange), I.addEventListener(\"play\", this._onVideoStateChange), I.addEventListener(\"ended\", this._onVideoStateChange), I.addEventListener(\"error\", this._onVideoStateChange), I.addEventListener(\"emptied\", this._onVideoEmptied), I.addEventListener(\"timeupdate\", this._onVideoTimeupdate)) : I instanceof HTMLImageElement && I.addEventListener(\"load\", this._onImgLoad), this._startLoop();\n }, F.detachSource = function() {\n C.i(\"main\", \"detachSource\"), this._player.detachSource(), this._unbindSource(this._source), this._source = void 0;\n }, F.attachOutputCanvas = function(I) {\n C.i(\"main\", \"attachOutputCanvas\"), this._error = void 0, this._player && this._player.attachOutputCanvas(I);\n }, F.detachOutputCanvas = function() {\n C.i(\"main\", \"detachOutputCanvas\"), this._player.detachOutput();\n }, F.drawToFBO = function() {\n return C.i(\"main\", \"drawToFBO\"), this._player.drawToFBO();\n }, F.drawToCanvas = function() {\n return C.i(\"main\", \"drawToCanvas\"), this._player.drawToCanvas();\n }, F.draw = function() {\n this._player.draw();\n }, F.start = function() {\n C.w(\"main\", \"start deprecated. do nothing.\");\n }, F.stop = function() {\n C.w(\"main\", \"stop deprecated. do nothing.\");\n }, F.setAxis = function(I, V) {\n this._controller.userInput.setAxis(I, V);\n }, F.updateAxis = function(I, V) {\n this._controller.updateAxis(I, V);\n }, F.setAudioRenderingMode = function(I) {\n C.i(\"main\", \"setAudioRenderingMode\", I), !(navigator.vendor && navigator.vendor.indexOf(\"Apple\") > -1 && navigator.userAgent) || navigator.userAgent.match(\"CriOS\") ? this._player.setAudioRenderingMode(I) : this.emit(ye.AMBISONIC_FAILED, { reason: \"safari does not support\" });\n }, F._isSourceReady = function() {\n var I = this._source;\n if (I instanceof HTMLVideoElement) {\n if (this._playPos > 0) {\n if (!(I.currentTime > this._playPos))\n return !1;\n this._playPos = 0;\n }\n return ze.isTBS ? I.readyState > 1 && I.currentTime > 0 : I.readyState > 1;\n }\n return !(I instanceof HTMLImageElement) || I.complete;\n }, F._startPlayer = function() {\n C.i(\"main\", \"start player\", !this._player.isReady, !this._error, this._isSourceReady()), !this._error && this._isSourceReady() && (!this._animationPlayed && this._animation && (this._animationPlayed = !0, this._animation.start(this._config.startAnimationDelay, this._config.startAnimationDuration)), this._player.start(), this._update());\n }, F._stopPlayer = function(I) {\n I === void 0 && (I = !1), this._player.isReady && (C.i(\"main\", \"stop player. clear: \" + I), this._player.stop(I));\n }, F._startLoop = function() {\n this._active || (this._active = !0, this._skipUpdate = 0, this._update());\n }, F._stopLoop = function() {\n this._active = !1;\n }, F._unbindSource = function(I) {\n I && (I instanceof HTMLVideoElement ? (I.removeEventListener(\"canplay\", this._onVideoStateChange), I.removeEventListener(\"playing\", this._onVideoStateChange), I.removeEventListener(\"play\", this._onVideoStateChange), I.removeEventListener(\"ended\", this._onVideoStateChange), I.removeEventListener(\"error\", this._onVideoStateChange), I.removeEventListener(\"emptied\", this._onVideoEmptied), I.removeEventListener(\"timeupdate\", this._onVideoTimeupdate)) : I instanceof HTMLImageElement && I.removeEventListener(\"load\", this._onImgLoad));\n }, l()(k, [{ key: \"sensorActive\", get: function() {\n return this._controller.sensorActive;\n }, set: function(I) {\n I ? k.isSensorSupported() ? this._controller.sensorActive = I : this._onError({ code: P.SENSOR_NOT_SUPPORTED, reason: \"sensor not supported\", fatal: !1 }) : this._controller.sensorActive = I;\n } }, { key: \"yAxis\", get: function() {\n return this._controller.userInput.yAxis;\n }, set: function(I) {\n this._animation && !this._animation.complete || (this._controller.userInput.yAxis = I);\n } }, { key: \"xAxis\", get: function() {\n return this._controller.userInput.xAxis;\n }, set: function(I) {\n this._animation && !this._animation.complete || (this._controller.userInput.xAxis = I);\n } }, { key: \"horizontalAngle\", get: function() {\n return this._controller.horizontalAngle;\n } }, { key: \"playbackQuality\", get: function() {\n return this._player.quality;\n } }, { key: \"fov\", get: function() {\n return this._player.fov;\n }, set: function(I) {\n this._player.fov = I, this._animation && (this._animation.toFov = I);\n } }, { key: \"originalSizeInput\", get: function() {\n return !0;\n } }, { key: \"outputTexture\", get: function() {\n return this._player.outputResource;\n } }], [{ key: \"version\", get: function() {\n return \"1.0.16-alpha.0\";\n } }, { key: \"Events\", get: function() {\n return { ERROR: ye.ERROR, AMBISONIC_FAILED: ye.AMBISONIC_FAILED, AMBISONIC_CHANGE: ye.AMBISONIC_CHANGE };\n } }]), k;\n }();\n e.default = G;\n }]);\npa === void 0 && console.error(\"esm-webpack-plugin: nothing exported!\");\nconst Lc = pa.default;\npa.K360Events;\npa.AudioRenderingMode;\npa.MAX_FPS;\npa.ErrorCode;\nconst kx = \"vr-plugin\", y_ = class extends n0 {\n constructor() {\n super(...arguments), An(this, \"_player\"), An(this, \"_vpp360\"), An(this, \"_active\", !1), An(this, \"_onPlaying\", () => {\n pd.getDevice().type === \"mobile\" && Lc.isSensorSupported() && (this.sensorActive = !0);\n }), An(this, \"_onSrcChange\", () => {\n this.active = !1;\n }), An(this, \"_onManifest\", (e) => {\n var i;\n e.stereoType === 1 && (i = this._player) != null && i.kernel && (this._player.crossOrigin = \"anonymous\", this.active = !0);\n });\n }\n beforeInstall(e) {\n Be.i(kx, `is supported: ${y_.isSupported}`), y_.isSupported && (this._vpp360 = new Lc()), this._player = e, e.on(ge.ATTRIBUTE_CHANGE_SRC, this._onSrcChange), e.on(ge.MANIFEST_PARSED, this._onManifest), e.on(ge.PLAYING, this._onPlaying);\n }\n afterUninstall(e) {\n e.off(ge.ATTRIBUTE_CHANGE_SRC, this._onSrcChange), e.off(ge.MANIFEST_PARSED, this._onManifest), e.off(ge.PLAYING, this._onPlaying);\n }\n set active(e) {\n var i, r;\n this._vpp360 && (e && !this.active ? this._player && ((i = this._player.kernel) == null || i.bindVPP(this._vpp360)) : !e && this.active && this._player && ((r = this._player.kernel) == null || r.unbindVPP(this._vpp360))), this._active = e;\n }\n get active() {\n return this._active;\n }\n set xAxis(e) {\n this._active && this._vpp360 && (this._vpp360.xAxis = e);\n }\n get xAxis() {\n return this._active && this._vpp360 ? this._vpp360.xAxis : 0;\n }\n set yAxis(e) {\n this._active && this._vpp360 && (this._vpp360.yAxis = e);\n }\n get yAxis() {\n return this._active && this._vpp360 ? this._vpp360.yAxis : 0;\n }\n set sensorActive(e) {\n this._active && this._vpp360 && (this._vpp360.sensorActive = e);\n }\n get sensorActive() {\n return this._active && this._vpp360 ? this._vpp360.sensorActive : !1;\n }\n};\nlet E_ = y_;\nAn(E_, \"version\", \"1.1.0-alpha.0\"), An(E_, \"isSupported\", typeof Lc < \"u\" && Lc.isSupported());\n(function() {\n try {\n if (typeof document < \"u\") {\n var t = document.createElement(\"style\");\n t.appendChild(document.createTextNode(\"._danmaku-control-panel_1q1os_1{font-size:20px;line-height:1}._danmaku-panel_1q1os_6{display:flex;width:100%;height:100%;align-items:center;justify-content:space-around;font-size:inherit}._button-icon_1q1os_15{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;height:1.9em}._danmaku-control-btn_1q1os_23{cursor:pointer;margin:0 .95em 0 0}._setup_1q1os_28{position:relative}._input-box_1q1os_32{display:flex;flex-grow:1;flex-shrink:1;flex-basis:0;border-radius:1em;background-color:#05060f}._input-color_1q1os_41{display:flex;position:relative;flex-grow:0;flex-shrink:0;flex-basis:2.3em;box-sizing:border-box;height:2em;background-color:#05060f;border-radius:1em 0 0 1em;align-items:center;justify-content:center}._color-panel-btn_1q1os_55{cursor:pointer}._input-text_1q1os_59{position:relative;box-sizing:border-box;flex-grow:1;flex-shrink:1;flex-basis:0;display:flex;flex-direction:row;height:2em;background-color:#05060f}._input-text_1q1os_59 ._input-ipt_1q1os_70{width:98%;height:95%;background-color:#05060f;border:0;outline:none;color:#fff;font-size:.65em;font-family:PingFangSC-Semibold}._input-text_1q1os_59 ._input-ipt_1q1os_70::-webkit-input-placeholder{font-family:PingFangSC-Semibold;font-size:.65em;letter-spacing:0;color:#898a9a}._input-text_1q1os_59 ._input-ipt_1q1os_70::-moz-placeholder{font-family:PingFangSC-Semibold;font-size:.65em;letter-spacing:0;color:#898a9a}._input-text_1q1os_59 ._input-ipt_1q1os_70:-ms-input-placeholder{font-family:PingFangSC-Semibold;font-size:.65em;letter-spacing:0;color:#898a9a}._input-text_1q1os_59 ._input-ipt_1q1os_70::-ms-input-placeholder{font-family:PingFangSC-Semibold;font-size:.65em;letter-spacing:0;color:#898a9a}._input-text_1q1os_59 ._input-ipt_1q1os_70::placeholder{font-family:PingFangSC-Semibold;font-size:.65em;letter-spacing:0;color:#898a9a}._input-text_1q1os_59 ._text-len_1q1os_110{margin:0 .25em;color:#898a9a;height:2em;line-height:2em;text-align:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none}._input-text_1q1os_59 ._text-len_1q1os_110>span{font-size:.65em}._send-btn_1q1os_126{position:relative;cursor:pointer;box-sizing:border-box;width:3.6em;font-family:PingFangSC-Semibold;border-radius:0 1em 1em 0;color:#d4d4d4;text-align:center;background-color:#3d3e4a;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}._send-btn_1q1os_126:hover:not(._is-disabled_1q1os_141){color:#fff;background-image:linear-gradient(297deg,#0a5fe5 2%,#1180ff 2%,#52d3fd 100%)}._send-text_1q1os_146{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);word-break:keep-all;font-size:.75em}._color-panel_1q1os_55{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:absolute;background-color:#05060f;left:0;top:-.25em;transform:translateY(-100%);border-radius:.25em;z-index:2}._color-title_1q1os_169{margin-top:.8em;margin-left:1.05em;margin-bottom:.55em;font-size:.7em;font-family:PingFangSC-Semibold;color:#fff}._color-list_1q1os_178{display:flex;justify-content:space-between;align-items:center;height:1.3em;margin:0 .85em .85em}._color-item-box_1q1os_186{cursor:pointer;display:flex;justify-content:center;align-items:center;width:1.25em;height:1.25em;margin-right:.4em}._color-item_1q1os_186{width:1em;height:1em;border-radius:.5em}._color-selected_1q1os_202{border-radius:.675em;border:.15em solid #0083eb}._setup-panel_1q1os_207{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:flex;position:absolute;align-items:center;flex-direction:column;top:-.25em;transform:translate(-50%,-100%);border-radius:.25em;z-index:2;background-color:#05060f}._setup-title_1q1os_223{width:13.15em;height:1.65em;font-family:PingFangSC-Semibold;color:#fff;margin:.75em .75em 0;border-bottom:2px solid #414141}._setup-title-text_1q1os_232{font-size:.7em}._setup-list_1q1os_236{display:flex;flex-direction:column;justify-content:space-around;flex-grow:1;flex-shrink:1;flex-basis:0;margin:.5em 0 .65em}._setup-item_1q1os_246{display:flex;margin:.55em 1em;font-family:PingFangSC-Semibold;color:#d0d0d1;align-items:center}._setup-item-name_1q1os_254>div{text-align:right;font-size:.6em}._setup-item-value_1q1os_259{cursor:pointer;position:relative;flex-grow:1;flex-shrink:1;flex-basis:0;height:.65em;width:8.15em;margin:0 .6em}._setup-value-list_1q1os_270{position:absolute;top:50%;transform:translateY(-50%);z-index:4;height:100%;width:100%}._setup-value-item_1q1os_279{position:absolute;top:50%;transform:translateY(-50%)}._setup-value-selected_1q1os_285{position:absolute;width:var(--selectedValue);height:.15em;transform:translateY(-50%);top:50%;background-image:linear-gradient(90deg,#3192ff 0%,#7cd9ff 83%);z-index:2}._setup-value-show_1q1os_295{position:absolute;width:100%;height:.15em;transform:translateY(-50%);top:50%;background-color:#414141;z-index:1}._setup-item-thumb_1q1os_305{position:absolute;width:.5em;height:.5em;background-color:#fff;border-radius:.25em;top:50%;left:calc(var(--selectedValue) - .25em);transform:translateY(-50%);z-index:3}._setup-item-info_1q1os_317{width:1.5em;word-break:keep-all;text-align:left}._setup-item-info_1q1os_317>div{font-size:.6em}._login_1q1os_326{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:absolute;color:#898a9a;font-size:.65em;top:50%;transform:translateY(-50%)}._login-link_1q1os_338{margin:0 3px;color:#1180ff;text-decoration:none;cursor:pointer}._comment-container_168su_1{width:100%;height:100%;position:relative;overflow:hidden}._comment_168su_1{position:absolute;word-break:keep-all;margin:0;display:flex;align-items:baseline;color:#fff;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-radius:1em;padding:.2em .6em;background-color:rgba(0,0,0,0);will-change:transform}._comment_168su_1:hover{background-color:#000;z-index:20}._my-comment_168su_29{box-sizing:border-box;border:1px solid #ffffff;box-shadow:0 2px 4px rgba(0,0,0,.5)}._my-comment_168su_29:hover{border:1px solid rgba(0,0,0,0)}._comment-text_168su_38{font-family:PingFangSC-Semibold;font-size:inherit;text-shadow:1px 1px 4px rgba(0,0,0,.8)}._like-container_168su_44{display:flex;cursor:pointer;margin-left:8px;align-items:baseline}._like-icon_168su_51{height:1em}._like-num_168su_55{color:inherit;padding-left:5px;font-size:inherit;font-family:PingFangSC-Regular,sans-serif}._scroll_168su_62{-webkit-animation:_barrage_168su_1 var(--duration) linear;animation:_barrage_168su_1 var(--duration) linear}._center_168su_67{left:50%;transform:translate(-50%)}@-webkit-keyframes _barrage_168su_1{0%{transform:translate(var(--containerWidth))}to{transform:translate(-100%)}}@keyframes _barrage_168su_1{0%{transform:translate(var(--containerWidth))}to{transform:translate(-100%)}}\")), document.head.appendChild(t);\n }\n } catch (e) {\n console.error(\"vite-plugin-css-injected-by-js\", e);\n }\n})();\nvar Ix = Object.defineProperty, Dx = (t, e, i) => e in t ? Ix(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, We = (t, e, i) => (Dx(t, typeof e != \"symbol\" ? e + \"\" : e, i), i), Ox = Object.defineProperty, Nx = (t, e, i) => e in t ? Ox(t, e, {\n enumerable: !0,\n configurable: !0,\n writable: !0,\n value: i\n}) : t[e] = i, oa = (t, e, i) => (Nx(t, typeof e != \"symbol\" ? e + \"\" : e, i), i);\nconst Xn = class {\n constructor() {\n oa(this, \"timeout\", 7 * 24 * 3600 * 1e3);\n }\n write(t, e) {\n if (Xn.available)\n try {\n localStorage.setItem(t, JSON.stringify({\n value: e,\n time: Date.now()\n }));\n } catch (i) {\n }\n }\n read(t, e = !0) {\n if (Xn.available)\n try {\n const i = localStorage.getItem(t);\n if (i) {\n const {\n value: r,\n time: o = 0\n } = JSON.parse(i);\n if (!e || Date.now() - o < this.timeout)\n return r;\n }\n } catch (i) {\n }\n }\n static get available() {\n if (typeof Xn._available > \"u\")\n try {\n localStorage.setItem(\"alg\", \"test\"), Xn._available = !0;\n } catch (t) {\n Xn._available = !1;\n }\n return Xn._available;\n }\n};\nlet md = Xn;\noa(md, \"_available\");\nconst Px = \"kwai-p\";\nfunction bs(t, e) {\n return (!e || e.length === 0) && (e = [t], t = \"\"), t = Px + (t ? \"::\" + t : \"\"), e.unshift(\"[\" + t + \"] > \"), e;\n}\nconst ai = class {\n /**\n * 设置日志输出等级\n * @param l 日志等级\n */\n static level(t) {\n switch (ai.ENABLE_ERROR = ai.ENABLE_WARN = ai.ENABLE_INFO = ai.ENABLE_DEBUG = ai.ENABLE_VERBOSE = !1, t) {\n case \"e\":\n ai.ENABLE_ERROR = !0;\n break;\n case \"w\":\n ai.ENABLE_ERROR = ai.ENABLE_WARN = !0;\n break;\n case \"i\":\n ai.ENABLE_ERROR = ai.ENABLE_WARN = ai.ENABLE_INFO = !0;\n break;\n case \"d\":\n ai.ENABLE_ERROR = ai.ENABLE_WARN = ai.ENABLE_INFO = ai.ENABLE_DEBUG = !0;\n break;\n case \"v\":\n ai.ENABLE_ERROR = ai.ENABLE_WARN = ai.ENABLE_INFO = ai.ENABLE_DEBUG = ai.ENABLE_VERBOSE = !0;\n break;\n }\n }\n /**\n * error日志\n * @param tag tag\n * @param msg 日志信息\n */\n static e(t, ...e) {\n if (!ai.ENABLE_ERROR)\n return;\n const i = bs(t, e);\n (console.error || console.warn || console.log).apply(console, i);\n }\n /**\n * warn日志\n * @param tag tag\n * @param msg 日志信息\n */\n static w(t, ...e) {\n if (!ai.ENABLE_WARN)\n return;\n const i = bs(t, e);\n (console.warn || console.log).apply(console, i);\n }\n /**\n * info日志\n * @param tag tag\n * @param msg 日志信息\n */\n static i(t, ...e) {\n if (!ai.ENABLE_INFO)\n return;\n const i = bs(t, e);\n (console.info || console.log).apply(console, i);\n }\n /**\n * debug日志\n * @param tag tag\n * @param msg 日志信息\n */\n static d(t, ...e) {\n if (!ai.ENABLE_DEBUG)\n return;\n const i = bs(t, e);\n (console.debug || console.log).apply(console, i);\n }\n /**\n * verbose日志\n * @param tag tag\n * @param msg 日志信息\n */\n static v(t, ...e) {\n if (!ai.ENABLE_VERBOSE)\n return;\n const i = bs(t, e);\n console.log.apply(console, i);\n }\n};\nlet Sn = ai;\noa(Sn, \"ENABLE_ERROR\", !0), oa(Sn, \"ENABLE_WARN\", !1), oa(Sn, \"ENABLE_INFO\", !1), oa(Sn, \"ENABLE_DEBUG\", !1), oa(Sn, \"ENABLE_VERBOSE\", !1);\nvar Mx = typeof globalThis < \"u\" ? globalThis : typeof window < \"u\" ? window : typeof global < \"u\" ? global : typeof self < \"u\" ? self : {}, Rc = {}, Ux = {\n get exports() {\n return Rc;\n },\n set exports(t) {\n Rc = t;\n }\n};\n(function(t, e) {\n (function(i, r) {\n var o = \"1.0.33\", l = \"\", v = \"?\", E = \"function\", C = \"undefined\", x = \"object\", g = \"string\", D = \"major\", _ = \"model\", m = \"name\", p = \"type\", d = \"vendor\", u = \"version\", U = \"architecture\", w = \"console\", S = \"mobile\", R = \"tablet\", z = \"smarttv\", W = \"wearable\", fe = \"embedded\", q = 350, ve = \"Amazon\", Ae = \"Apple\", P = \"ASUS\", Me = \"BlackBerry\", Ie = \"Browser\", je = \"Chrome\", ke = \"Edge\", H = \"Firefox\", ie = \"Google\", ye = \"Huawei\", we = \"LG\", J = \"Microsoft\", le = \"Motorola\", me = \"Opera\", he = \"Samsung\", re = \"Sharp\", Se = \"Sony\", Pe = \"Xiaomi\", Xe = \"Zebra\", Oe = \"Facebook\", st = function(K, Z) {\n var Y = {};\n for (var _e in K)\n Z[_e] && Z[_e].length % 2 === 0 ? Y[_e] = Z[_e].concat(K[_e]) : Y[_e] = K[_e];\n return Y;\n }, ze = function(K) {\n for (var Z = {}, Y = 0; Y < K.length; Y++)\n Z[K[Y].toUpperCase()] = K[Y];\n return Z;\n }, rt = function(K, Z) {\n return typeof K === g ? Fe(Z).indexOf(Fe(K)) !== -1 : !1;\n }, Fe = function(K) {\n return K.toLowerCase();\n }, G = function(K) {\n return typeof K === g ? K.replace(/[^\\d\\.]/g, l).split(\".\")[0] : r;\n }, k = function(K, Z) {\n if (typeof K === g)\n return K = K.replace(/^\\s\\s*/, l), typeof Z === C ? K : K.substring(0, q);\n }, F = function(K, Z) {\n for (var Y = 0, _e, ee, Ve, ce, qe, Ce; Y < Z.length && !qe; ) {\n var Ye = Z[Y], tt = Z[Y + 1];\n for (_e = ee = 0; _e < Ye.length && !qe; )\n if (qe = Ye[_e++].exec(K), qe)\n for (Ve = 0; Ve < tt.length; Ve++)\n Ce = qe[++ee], ce = tt[Ve], typeof ce === x && ce.length > 0 ? ce.length === 2 ? typeof ce[1] == E ? this[ce[0]] = ce[1].call(this, Ce) : this[ce[0]] = ce[1] : ce.length === 3 ? typeof ce[1] === E && !(ce[1].exec && ce[1].test) ? this[ce[0]] = Ce ? ce[1].call(this, Ce, ce[2]) : r : this[ce[0]] = Ce ? Ce.replace(ce[1], ce[2]) : r : ce.length === 4 && (this[ce[0]] = Ce ? ce[3].call(this, Ce.replace(ce[1], ce[2])) : r) : this[ce] = Ce || r;\n Y += 2;\n }\n }, I = function(K, Z) {\n for (var Y in Z)\n if (typeof Z[Y] === x && Z[Y].length > 0) {\n for (var _e = 0; _e < Z[Y].length; _e++)\n if (rt(Z[Y][_e], K))\n return Y === v ? r : Y;\n } else if (rt(Z[Y], K))\n return Y === v ? r : Y;\n return K;\n }, V = {\n \"1.0\": \"/8\",\n \"1.2\": \"/1\",\n \"1.3\": \"/3\",\n \"2.0\": \"/412\",\n \"2.0.2\": \"/416\",\n \"2.0.3\": \"/417\",\n \"2.0.4\": \"/419\",\n \"?\": \"/\"\n }, ne = {\n ME: \"4.90\",\n \"NT 3.11\": \"NT3.51\",\n \"NT 4.0\": \"NT4.0\",\n 2e3: \"NT 5.0\",\n XP: [\"NT 5.1\", \"NT 5.2\"],\n Vista: \"NT 6.0\",\n 7: \"NT 6.1\",\n 8: \"NT 6.2\",\n \"8.1\": \"NT 6.3\",\n 10: [\"NT 6.4\", \"NT 10.0\"],\n RT: \"ARM\"\n }, oe = {\n browser: [[\n /\\b(?:crmo|crios)\\/([\\w\\.]+)/i\n // Chrome for Android/iOS\n ], [u, [m, \"Chrome\"]], [\n /edg(?:e|ios|a)?\\/([\\w\\.]+)/i\n // Microsoft Edge\n ], [u, [m, \"Edge\"]], [\n // Presto based\n /(opera mini)\\/([-\\w\\.]+)/i,\n // Opera Mini\n /(opera [mobiletab]{3,6})\\b.+version\\/([-\\w\\.]+)/i,\n // Opera Mobi/Tablet\n /(opera)(?:.+version\\/|[\\/ ]+)([\\w\\.]+)/i\n // Opera\n ], [m, u], [\n /opios[\\/ ]+([\\w\\.]+)/i\n // Opera mini on iphone >= 8.0\n ], [u, [m, me + \" Mini\"]], [\n /\\bopr\\/([\\w\\.]+)/i\n // Opera Webkit\n ], [u, [m, me]], [\n // Mixed\n /(kindle)\\/([\\w\\.]+)/i,\n // Kindle\n /(lunascape|maxthon|netfront|jasmine|blazer)[\\/ ]?([\\w\\.]*)/i,\n // Lunascape/Maxthon/Netfront/Jasmine/Blazer\n // Trident based\n /(avant |iemobile|slim)(?:browser)?[\\/ ]?([\\w\\.]*)/i,\n // Avant/IEMobile/SlimBrowser\n /(ba?idubrowser)[\\/ ]?([\\w\\.]+)/i,\n // Baidu Browser\n /(?:ms|\\()(ie) ([\\w\\.]+)/i,\n // Internet Explorer\n // Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon\n /(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale|qqbrowserlite|qq|duckduckgo)\\/([-\\w\\.]+)/i,\n // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ, aka ShouQ\n /(weibo)__([\\d\\.]+)/i\n // Weibo\n ], [m, u], [\n /(?:\\buc? ?browser|(?:juc.+)ucweb)[\\/ ]?([\\w\\.]+)/i\n // UCBrowser\n ], [u, [m, \"UC\" + Ie]], [\n /microm.+\\bqbcore\\/([\\w\\.]+)/i,\n // WeChat Desktop for Windows Built-in Browser\n /\\bqbcore\\/([\\w\\.]+).+microm/i\n ], [u, [m, \"WeChat(Win) Desktop\"]], [\n /micromessenger\\/([\\w\\.]+)/i\n // WeChat\n ], [u, [m, \"WeChat\"]], [\n /konqueror\\/([\\w\\.]+)/i\n // Konqueror\n ], [u, [m, \"Konqueror\"]], [\n /trident.+rv[: ]([\\w\\.]{1,9})\\b.+like gecko/i\n // IE11\n ], [u, [m, \"IE\"]], [\n /yabrowser\\/([\\w\\.]+)/i\n // Yandex\n ], [u, [m, \"Yandex\"]], [\n /(avast|avg)\\/([\\w\\.]+)/i\n // Avast/AVG Secure Browser\n ], [[m, /(.+)/, \"$1 Secure \" + Ie], u], [\n /\\bfocus\\/([\\w\\.]+)/i\n // Firefox Focus\n ], [u, [m, H + \" Focus\"]], [\n /\\bopt\\/([\\w\\.]+)/i\n // Opera Touch\n ], [u, [m, me + \" Touch\"]], [\n /coc_coc\\w+\\/([\\w\\.]+)/i\n // Coc Coc Browser\n ], [u, [m, \"Coc Coc\"]], [\n /dolfin\\/([\\w\\.]+)/i\n // Dolphin\n ], [u, [m, \"Dolphin\"]], [\n /coast\\/([\\w\\.]+)/i\n // Opera Coast\n ], [u, [m, me + \" Coast\"]], [\n /miuibrowser\\/([\\w\\.]+)/i\n // MIUI Browser\n ], [u, [m, \"MIUI \" + Ie]], [\n /fxios\\/([-\\w\\.]+)/i\n // Firefox for iOS\n ], [u, [m, H]], [\n /\\bqihu|(qi?ho?o?|360)browser/i\n // 360\n ], [[m, \"360 \" + Ie]], [/(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i], [[m, /(.+)/, \"$1 \" + Ie], u], [\n // Oculus/Samsung/Sailfish/Huawei Browser\n /(comodo_dragon)\\/([\\w\\.]+)/i\n // Comodo Dragon\n ], [[m, /_/g, \" \"], u], [\n /(electron)\\/([\\w\\.]+) safari/i,\n // Electron-based App\n /(tesla)(?: qtcarbrowser|\\/(20\\d\\d\\.[-\\w\\.]+))/i,\n // Tesla\n /m?(qqbrowser|baiduboxapp|2345Explorer)[\\/ ]?([\\w\\.]+)/i\n // QQBrowser/Baidu App/2345 Browser\n ], [m, u], [\n /(metasr)[\\/ ]?([\\w\\.]+)/i,\n // SouGouBrowser\n /(lbbrowser)/i,\n // LieBao Browser\n /\\[(linkedin)app\\]/i\n // LinkedIn App for iOS & Android\n ], [m], [\n // WebView\n /((?:fban\\/fbios|fb_iab\\/fb4a)(?!.+fbav)|;fbav\\/([\\w\\.]+);)/i\n // Facebook App for iOS & Android\n ], [[m, Oe], u], [\n /safari (line)\\/([\\w\\.]+)/i,\n // Line App for iOS\n /\\b(line)\\/([\\w\\.]+)\\/iab/i,\n // Line App for Android\n /(chromium|instagram)[\\/ ]([-\\w\\.]+)/i\n // Chromium/Instagram\n ], [m, u], [\n /\\bgsa\\/([\\w\\.]+) .*safari\\//i\n // Google Search Appliance on iOS\n ], [u, [m, \"GSA\"]], [\n /headlesschrome(?:\\/([\\w\\.]+)| )/i\n // Chrome Headless\n ], [u, [m, je + \" Headless\"]], [\n / wv\\).+(chrome)\\/([\\w\\.]+)/i\n // Chrome WebView\n ], [[m, je + \" WebView\"], u], [\n /droid.+ version\\/([\\w\\.]+)\\b.+(?:mobile safari|safari)/i\n // Android Browser\n ], [u, [m, \"Android \" + Ie]], [\n /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\/v?([\\w\\.]+)/i\n // Chrome/OmniWeb/Arora/Tizen/Nokia\n ], [m, u], [\n /version\\/([\\w\\.\\,]+) .*mobile\\/\\w+ (safari)/i\n // Mobile Safari\n ], [u, [m, \"Mobile Safari\"]], [\n /version\\/([\\w(\\.|\\,)]+) .*(mobile ?safari|safari)/i\n // Safari & Safari Mobile\n ], [u, m], [\n /webkit.+?(mobile ?safari|safari)(\\/[\\w\\.]+)/i\n // Safari < 3.0\n ], [m, [u, I, V]], [/(webkit|khtml)\\/([\\w\\.]+)/i], [m, u], [\n // Gecko based\n /(navigator|netscape\\d?)\\/([-\\w\\.]+)/i\n // Netscape\n ], [[m, \"Netscape\"], u], [\n /mobile vr; rv:([\\w\\.]+)\\).+firefox/i\n // Firefox Reality\n ], [u, [m, H + \" Reality\"]], [\n /ekiohf.+(flow)\\/([\\w\\.]+)/i,\n // Flow\n /(swiftfox)/i,\n // Swiftfox\n /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\/ ]?([\\w\\.\\+]+)/i,\n // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror/Klar\n /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\/([-\\w\\.]+)$/i,\n // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix\n /(firefox)\\/([\\w\\.]+)/i,\n // Other Firefox-based\n /(mozilla)\\/([\\w\\.]+) .+rv\\:.+gecko\\/\\d+/i,\n // Mozilla\n // Other\n /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\. ]?browser)[-\\/ ]?v?([\\w\\.]+)/i,\n // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Sleipnir/Obigo/Mosaic/Go/ICE/UP.Browser\n /(links) \\(([\\w\\.]+)/i\n // Links\n ], [m, u], [\n /(cobalt)\\/([\\w\\.]+)/i\n // Cobalt\n ], [m, [u, /master.|lts./, \"\"]]],\n cpu: [[\n /(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\)]/i\n // AMD64 (x64)\n ], [[U, \"amd64\"]], [\n /(ia32(?=;))/i\n // IA32 (quicktime)\n ], [[U, Fe]], [\n /((?:i[346]|x)86)[;\\)]/i\n // IA32 (x86)\n ], [[U, \"ia32\"]], [\n /\\b(aarch64|arm(v?8e?l?|_?64))\\b/i\n // ARM64\n ], [[U, \"arm64\"]], [\n /\\b(arm(?:v[67])?ht?n?[fl]p?)\\b/i\n // ARMHF\n ], [[U, \"armhf\"]], [\n // PocketPC mistakenly identified as PowerPC\n /windows (ce|mobile); ppc;/i\n ], [[U, \"arm\"]], [\n /((?:ppc|powerpc)(?:64)?)(?: mac|;|\\))/i\n // PowerPC\n ], [[U, /ower/, l, Fe]], [\n /(sun4\\w)[;\\)]/i\n // SPARC\n ], [[U, \"sparc\"]], [\n /((?:avr32|ia64(?=;))|68k(?=\\))|\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\b|pa-risc)/i\n // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC\n ], [[U, Fe]]],\n device: [[\n //////////////////////////\n // MOBILES & TABLETS\n // Ordered by popularity\n /////////////////////////\n // Samsung\n /\\b(sch-i[89]0\\d|shw-m380s|sm-[ptx]\\w{2,4}|gt-[pn]\\d{2,4}|sgh-t8[56]9|nexus 10)/i\n ], [_, [d, he], [p, R]], [/\\b((?:s[cgp]h|gt|sm)-\\w+|galaxy nexus)/i, /samsung[- ]([-\\w]+)/i, /sec-(sgh\\w+)/i], [_, [d, he], [p, S]], [\n // Apple\n /\\((ip(?:hone|od)[\\w ]*);/i\n // iPod/iPhone\n ], [_, [d, Ae], [p, S]], [\n /\\((ipad);[-\\w\\),; ]+apple/i,\n // iPad\n /applecoremedia\\/[\\w\\.]+ \\((ipad)/i,\n /\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i\n ], [_, [d, Ae], [p, R]], [/(macintosh);/i], [_, [d, Ae]], [\n // Huawei\n /\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i\n ], [_, [d, ye], [p, R]], [/(?:huawei|honor)([-\\w ]+)[;\\)]/i, /\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i], [_, [d, ye], [p, S]], [\n // Xiaomi\n /\\b(poco[\\w ]+)(?: bui|\\))/i,\n // Xiaomi POCO\n /\\b; (\\w+) build\\/hm\\1/i,\n // Xiaomi Hongmi 'numeric' models\n /\\b(hm[-_ ]?note?[_ ]?(?:\\d\\w)?) bui/i,\n // Xiaomi Hongmi\n /\\b(redmi[\\-_ ]?(?:note|k)?[\\w_ ]+)(?: bui|\\))/i,\n // Xiaomi Redmi\n /\\b(mi[-_ ]?(?:a\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\d?\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\))/i\n // Xiaomi Mi\n ], [[_, /_/g, \" \"], [d, Pe], [p, S]], [\n /\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i\n // Mi Pad tablets\n ], [[_, /_/g, \" \"], [d, Pe], [p, R]], [\n // OPPO\n /; (\\w+) bui.+ oppo/i,\n /\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i\n ], [_, [d, \"OPPO\"], [p, S]], [\n // Vivo\n /vivo (\\w+)(?: bui|\\))/i,\n /\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i\n ], [_, [d, \"Vivo\"], [p, S]], [\n // Realme\n /\\b(rmx[12]\\d{3})(?: bui|;|\\))/i\n ], [_, [d, \"Realme\"], [p, S]], [\n // Motorola\n /\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\b[\\w ]+build\\//i,\n /\\bmot(?:orola)?[- ](\\w*)/i,\n /((?:moto[\\w\\(\\) ]+|xt\\d{3,4}|nexus 6)(?= bui|\\)))/i\n ], [_, [d, le], [p, S]], [/\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i], [_, [d, le], [p, R]], [\n // LG\n /((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i\n ], [_, [d, we], [p, R]], [/(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i, /\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i, /\\blg-?([\\d\\w]+) bui/i], [_, [d, we], [p, S]], [\n // Lenovo\n /(ideatab[-\\w ]+)/i,\n /lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i\n ], [_, [d, \"Lenovo\"], [p, R]], [\n // Nokia\n /(?:maemo|nokia).*(n900|lumia \\d+)/i,\n /nokia[-_ ]?([-\\w\\.]*)/i\n ], [[_, /_/g, \" \"], [d, \"Nokia\"], [p, S]], [\n // Google\n /(pixel c)\\b/i\n // Google Pixel C\n ], [_, [d, ie], [p, R]], [\n /droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i\n // Google Pixel\n ], [_, [d, ie], [p, S]], [\n // Sony\n /droid.+ (a?\\d[0-2]{2}so|[c-g]\\d{4}|so[-gl]\\w+|xq-a\\w[4-7][12])(?= bui|\\).+chrome\\/(?![1-6]{0,1}\\d\\.))/i\n ], [_, [d, Se], [p, S]], [/sony tablet [ps]/i, /\\b(?:sony)?sgp\\w+(?: bui|\\))/i], [[_, \"Xperia Tablet\"], [d, Se], [p, R]], [\n // OnePlus\n / (kb2005|in20[12]5|be20[12][59])\\b/i,\n /(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i\n ], [_, [d, \"OnePlus\"], [p, S]], [\n // Amazon\n /(alexa)webm/i,\n /(kf[a-z]{2}wi)( bui|\\))/i,\n // Kindle Fire without Silk\n /(kf[a-z]+)( bui|\\)).+silk\\//i\n // Kindle Fire HD\n ], [_, [d, ve], [p, R]], [\n /((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i\n // Fire Phone\n ], [[_, /(.+)/g, \"Fire Phone $1\"], [d, ve], [p, S]], [\n // BlackBerry\n /(playbook);[-\\w\\),; ]+(rim)/i\n // BlackBerry PlayBook\n ], [_, d, [p, R]], [\n /\\b((?:bb[a-f]|st[hv])100-\\d)/i,\n /\\(bb10; (\\w+)/i\n // BlackBerry 10\n ], [_, [d, Me], [p, S]], [\n // Asus\n /(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i\n ], [_, [d, P], [p, R]], [/ (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i], [_, [d, P], [p, S]], [\n // HTC\n /(nexus 9)/i\n // HTC Nexus 9\n ], [_, [d, \"HTC\"], [p, R]], [\n /(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i,\n // HTC\n // ZTE\n /(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i,\n /(alcatel|geeksphone|nexian|panasonic|sony(?!-bra))[-_ ]?([-\\w]*)/i\n // Alcatel/GeeksPhone/Nexian/Panasonic/Sony\n ], [d, [_, /_/g, \" \"], [p, S]], [\n // Acer\n /droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i\n ], [_, [d, \"Acer\"], [p, R]], [\n // Meizu\n /droid.+; (m[1-5] note) bui/i,\n /\\bmz-([-\\w]{2,})/i\n ], [_, [d, \"Meizu\"], [p, S]], [\n // Sharp\n /\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i\n ], [_, [d, re], [p, S]], [\n // MIXED\n /(blackberry|benq|palm(?=\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\w]*)/i,\n // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron\n /(hp) ([\\w ]+\\w)/i,\n // HP iPAQ\n /(asus)-?(\\w+)/i,\n // Asus\n /(microsoft); (lumia[\\w ]+)/i,\n // Microsoft Lumia\n /(lenovo)[-_ ]?([-\\w]+)/i,\n // Lenovo\n /(jolla)/i,\n // Jolla\n /(oppo) ?([\\w ]+) bui/i\n // OPPO\n ], [d, _, [p, S]], [\n /(archos) (gamepad2?)/i,\n // Archos\n /(hp).+(touchpad(?!.+tablet)|tablet)/i,\n // HP TouchPad\n /(kindle)\\/([\\w\\.]+)/i,\n // Kindle\n /(nook)[\\w ]+build\\/(\\w+)/i,\n // Nook\n /(dell) (strea[kpr\\d ]*[\\dko])/i,\n // Dell Streak\n /(le[- ]+pan)[- ]+(\\w{1,9}) bui/i,\n // Le Pan Tablets\n /(trinity)[- ]*(t\\d{3}) bui/i,\n // Trinity Tablets\n /(gigaset)[- ]+(q\\w{1,9}) bui/i,\n // Gigaset Tablets\n /(vodafone) ([\\w ]+)(?:\\)| bui)/i\n // Vodafone\n ], [d, _, [p, R]], [\n /(surface duo)/i\n // Surface Duo\n ], [_, [d, J], [p, R]], [\n /droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i\n // Fairphone\n ], [_, [d, \"Fairphone\"], [p, S]], [\n /(u304aa)/i\n // AT&T\n ], [_, [d, \"AT&T\"], [p, S]], [\n /\\bsie-(\\w*)/i\n // Siemens\n ], [_, [d, \"Siemens\"], [p, S]], [\n /\\b(rct\\w+) b/i\n // RCA Tablets\n ], [_, [d, \"RCA\"], [p, R]], [\n /\\b(venue[\\d ]{2,7}) b/i\n // Dell Venue Tablets\n ], [_, [d, \"Dell\"], [p, R]], [\n /\\b(q(?:mv|ta)\\w+) b/i\n // Verizon Tablet\n ], [_, [d, \"Verizon\"], [p, R]], [\n /\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i\n // Barnes & Noble Tablet\n ], [_, [d, \"Barnes & Noble\"], [p, R]], [/\\b(tm\\d{3}\\w+) b/i], [_, [d, \"NuVision\"], [p, R]], [\n /\\b(k88) b/i\n // ZTE K Series Tablet\n ], [_, [d, \"ZTE\"], [p, R]], [\n /\\b(nx\\d{3}j) b/i\n // ZTE Nubia\n ], [_, [d, \"ZTE\"], [p, S]], [\n /\\b(gen\\d{3}) b.+49h/i\n // Swiss GEN Mobile\n ], [_, [d, \"Swiss\"], [p, S]], [\n /\\b(zur\\d{3}) b/i\n // Swiss ZUR Tablet\n ], [_, [d, \"Swiss\"], [p, R]], [\n /\\b((zeki)?tb.*\\b) b/i\n // Zeki Tablets\n ], [_, [d, \"Zeki\"], [p, R]], [\n /\\b([yr]\\d{2}) b/i,\n /\\b(dragon[- ]+touch |dt)(\\w{5}) b/i\n // Dragon Touch Tablet\n ], [[d, \"Dragon Touch\"], _, [p, R]], [\n /\\b(ns-?\\w{0,9}) b/i\n // Insignia Tablets\n ], [_, [d, \"Insignia\"], [p, R]], [\n /\\b((nxa|next)-?\\w{0,9}) b/i\n // NextBook Tablets\n ], [_, [d, \"NextBook\"], [p, R]], [\n /\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i\n // Voice Xtreme Phones\n ], [[d, \"Voice\"], _, [p, S]], [\n /\\b(lvtel\\-)?(v1[12]) b/i\n // LvTel Phones\n ], [[d, \"LvTel\"], _, [p, S]], [\n /\\b(ph-1) /i\n // Essential PH-1\n ], [_, [d, \"Essential\"], [p, S]], [\n /\\b(v(100md|700na|7011|917g).*\\b) b/i\n // Envizen Tablets\n ], [_, [d, \"Envizen\"], [p, R]], [\n /\\b(trio[-\\w\\. ]+) b/i\n // MachSpeed Tablets\n ], [_, [d, \"MachSpeed\"], [p, R]], [\n /\\btu_(1491) b/i\n // Rotor Tablets\n ], [_, [d, \"Rotor\"], [p, R]], [\n /(shield[\\w ]+) b/i\n // Nvidia Shield Tablets\n ], [_, [d, \"Nvidia\"], [p, R]], [\n /(sprint) (\\w+)/i\n // Sprint Phones\n ], [d, _, [p, S]], [\n /(kin\\.[onetw]{3})/i\n // Microsoft Kin\n ], [[_, /\\./g, \" \"], [d, J], [p, S]], [\n /droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i\n // Zebra\n ], [_, [d, Xe], [p, R]], [/droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i], [_, [d, Xe], [p, S]], [\n ///////////////////\n // CONSOLES\n ///////////////////\n /(ouya)/i,\n // Ouya\n /(nintendo) ([wids3utch]+)/i\n // Nintendo\n ], [d, _, [p, w]], [\n /droid.+; (shield) bui/i\n // Nvidia\n ], [_, [d, \"Nvidia\"], [p, w]], [\n /(playstation [345portablevi]+)/i\n // Playstation\n ], [_, [d, Se], [p, w]], [\n /\\b(xbox(?: one)?(?!; xbox))[\\); ]/i\n // Microsoft Xbox\n ], [_, [d, J], [p, w]], [\n ///////////////////\n // SMARTTVS\n ///////////////////\n /smart-tv.+(samsung)/i\n // Samsung\n ], [d, [p, z]], [/hbbtv.+maple;(\\d+)/i], [[_, /^/, \"SmartTV\"], [d, he], [p, z]], [\n /(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i\n // LG SmartTV\n ], [[d, we], [p, z]], [\n /(apple) ?tv/i\n // Apple TV\n ], [d, [_, Ae + \" TV\"], [p, z]], [\n /crkey/i\n // Google Chromecast\n ], [[_, je + \"cast\"], [d, ie], [p, z]], [\n /droid.+aft(\\w)( bui|\\))/i\n // Fire TV\n ], [_, [d, ve], [p, z]], [\n /\\(dtv[\\);].+(aquos)/i,\n /(aquos-tv[\\w ]+)\\)/i\n // Sharp\n ], [_, [d, re], [p, z]], [\n /(bravia[\\w ]+)( bui|\\))/i\n // Sony\n ], [_, [d, Se], [p, z]], [\n /(mitv-\\w{5}) bui/i\n // Xiaomi\n ], [_, [d, Pe], [p, z]], [\n /\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i,\n // Roku\n /hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w ]*; *(\\w[^;]*);([^;]*)/i\n // HbbTV devices\n ], [[d, k], [_, k], [p, z]], [\n /\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i\n // SmartTV from Unidentified Vendors\n ], [[p, z]], [\n ///////////////////\n // WEARABLES\n ///////////////////\n /((pebble))app/i\n // Pebble\n ], [d, _, [p, W]], [\n /droid.+; (glass) \\d/i\n // Google Glass\n ], [_, [d, ie], [p, W]], [/droid.+; (wt63?0{2,3})\\)/i], [_, [d, Xe], [p, W]], [\n /(quest( 2)?)/i\n // Oculus Quest\n ], [_, [d, Oe], [p, W]], [\n ///////////////////\n // EMBEDDED\n ///////////////////\n /(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i\n // Tesla\n ], [d, [p, fe]], [\n ////////////////////\n // MIXED (GENERIC)\n ///////////////////\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i\n // Android Phones from Unidentified Vendors\n ], [_, [p, S]], [\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i\n // Android Tablets from Unidentified Vendors\n ], [_, [p, R]], [\n /\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i\n // Unidentifiable Tablet\n ], [[p, R]], [\n /(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i\n // Unidentifiable Mobile\n ], [[p, S]], [\n /(android[-\\w\\. ]{0,9});.+buil/i\n // Generic Android Device\n ], [_, [d, \"Generic\"]]],\n engine: [[\n /windows.+ edge\\/([\\w\\.]+)/i\n // EdgeHTML\n ], [u, [m, ke + \"HTML\"]], [\n /webkit\\/537\\.36.+chrome\\/(?!27)([\\w\\.]+)/i\n // Blink\n ], [u, [m, \"Blink\"]], [\n /(presto)\\/([\\w\\.]+)/i,\n // Presto\n /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\/([\\w\\.]+)/i,\n // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna\n /ekioh(flow)\\/([\\w\\.]+)/i,\n // Flow\n /(khtml|tasman|links)[\\/ ]\\(?([\\w\\.]+)/i,\n // KHTML/Tasman/Links\n /(icab)[\\/ ]([23]\\.[\\d\\.]+)/i\n // iCab\n ], [m, u], [\n /rv\\:([\\w\\.]{1,9})\\b.+(gecko)/i\n // Gecko\n ], [u, m]],\n os: [[\n // Windows\n /microsoft (windows) (vista|xp)/i\n // Windows (iTunes)\n ], [m, u], [\n /(windows) nt 6\\.2; (arm)/i,\n // Windows RT\n /(windows (?:phone(?: os)?|mobile))[\\/ ]?([\\d\\.\\w ]*)/i,\n // Windows Phone\n /(windows)[\\/ ]?([ntce\\d\\. ]+\\w)(?!.+xbox)/i\n ], [m, [u, I, ne]], [/(win(?=3|9|n)|win 9x )([nt\\d\\.]+)/i], [[m, \"Windows\"], [u, I, ne]], [\n // iOS/macOS\n /ip[honead]{2,4}\\b(?:.*os ([\\w]+) like mac|; opera)/i,\n // iOS\n /cfnetwork\\/.+darwin/i\n ], [[u, /_/g, \".\"], [m, \"iOS\"]], [\n /(mac os x) ?([\\w\\. ]*)/i,\n /(macintosh|mac_powerpc\\b)(?!.+haiku)/i\n // Mac OS\n ], [[m, \"Mac OS\"], [u, /_/g, \".\"]], [\n // Mobile OSes\n /droid ([\\w\\.]+)\\b.+(android[- ]x86|harmonyos)/i\n // Android-x86/HarmonyOS\n ], [u, m], [\n // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS\n /(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\/ ]?([\\w\\.]*)/i,\n /(blackberry)\\w*\\/([\\w\\.]*)/i,\n // Blackberry\n /(tizen|kaios)[\\/ ]([\\w\\.]+)/i,\n // Tizen/KaiOS\n /\\((series40);/i\n // Series 40\n ], [m, u], [\n /\\(bb(10);/i\n // BlackBerry 10\n ], [u, [m, Me]], [\n /(?:symbian ?os|symbos|s60(?=;)|series60)[-\\/ ]?([\\w\\.]*)/i\n // Symbian\n ], [u, [m, \"Symbian\"]], [\n /mozilla\\/[\\d\\.]+ \\((?:mobile|tablet|tv|mobile; [\\w ]+); rv:.+ gecko\\/([\\w\\.]+)/i\n // Firefox OS\n ], [u, [m, H + \" OS\"]], [\n /web0s;.+rt(tv)/i,\n /\\b(?:hp)?wos(?:browser)?\\/([\\w\\.]+)/i\n // WebOS\n ], [u, [m, \"webOS\"]], [\n // Google Chromecast\n /crkey\\/([\\d\\.]+)/i\n // Google Chromecast\n ], [u, [m, je + \"cast\"]], [\n /(cros) [\\w]+ ([\\w\\.]+\\w)/i\n // Chromium OS\n ], [[m, \"Chromium OS\"], u], [\n // Console\n /(nintendo|playstation) ([wids345portablevuch]+)/i,\n // Nintendo/Playstation\n /(xbox); +xbox ([^\\);]+)/i,\n // Microsoft Xbox (360, One, X, S, Series X, Series S)\n // Other\n /\\b(joli|palm)\\b ?(?:os)?\\/?([\\w\\.]*)/i,\n // Joli/Palm\n /(mint)[\\/\\(\\) ]?(\\w*)/i,\n // Mint\n /(mageia|vectorlinux)[; ]/i,\n // Mageia/VectorLinux\n /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\/ ]?(?!chrom|package)([-\\w\\.]*)/i,\n // Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire\n /(hurd|linux) ?([\\w\\.]*)/i,\n // Hurd/Linux\n /(gnu) ?([\\w\\.]*)/i,\n // GNU\n /\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\/ ]?(?!amd|[ix346]{1,2}86)([\\w\\.]*)/i,\n // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly\n /(haiku) (\\w+)/i\n // Haiku\n ], [m, u], [\n /(sunos) ?([\\w\\.\\d]*)/i\n // Solaris\n ], [[m, \"Solaris\"], u], [\n /((?:open)?solaris)[-\\/ ]?([\\w\\.]*)/i,\n // Solaris\n /(aix) ((\\d)(?=\\.|\\)| )[\\w\\.])*/i,\n // AIX\n /\\b(beos|os\\/2|amigaos|morphos|openvms|fuchsia|hp-ux)/i,\n // BeOS/OS2/AmigaOS/MorphOS/OpenVMS/Fuchsia/HP-UX\n /(unix) ?([\\w\\.]*)/i\n // UNIX\n ], [m, u]]\n }, te = function(K, Z) {\n if (typeof K === x && (Z = K, K = r), !(this instanceof te))\n return new te(K, Z).getResult();\n var Y = K || (typeof i !== C && i.navigator && i.navigator.userAgent ? i.navigator.userAgent : l), _e = Z ? st(oe, Z) : oe;\n return this.getBrowser = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.browser), ee.major = G(ee.version), ee;\n }, this.getCPU = function() {\n var ee = {};\n return ee[U] = r, F.call(ee, Y, _e.cpu), ee;\n }, this.getDevice = function() {\n var ee = {};\n return ee[d] = r, ee[_] = r, ee[p] = r, F.call(ee, Y, _e.device), ee;\n }, this.getEngine = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.engine), ee;\n }, this.getOS = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.os), ee;\n }, this.getResult = function() {\n return {\n ua: this.getUA(),\n browser: this.getBrowser(),\n engine: this.getEngine(),\n os: this.getOS(),\n device: this.getDevice(),\n cpu: this.getCPU()\n };\n }, this.getUA = function() {\n return Y;\n }, this.setUA = function(ee) {\n return Y = typeof ee === g && ee.length > q ? k(ee, q) : ee, this;\n }, this.setUA(Y), this;\n };\n te.VERSION = o, te.BROWSER = ze([m, u, D]), te.CPU = ze([U]), te.DEVICE = ze([_, d, p, w, S, z, R, W, fe]), te.ENGINE = te.OS = ze([m, u]), t.exports && (e = t.exports = te), e.UAParser = te;\n var Ee = typeof i !== C && (i.jQuery || i.Zepto);\n if (Ee && !Ee.ua) {\n var xe = new te();\n Ee.ua = xe.getResult(), Ee.ua.get = function() {\n return xe.getUA();\n }, Ee.ua.set = function(K) {\n xe.setUA(K);\n var Z = xe.getResult();\n for (var Y in Z)\n Ee.ua[Y] = Z[Y];\n };\n }\n })(typeof window == \"object\" ? window : Mx);\n})(Ux, Rc);\nconst Bx = Rc, Ag = new Bx(), Cc = Ag.getOS().name;\nCc && Cc.toLowerCase().indexOf(\"android\") >= 0;\nCc && Cc.toLowerCase().indexOf(\"ios\") >= 0;\nAg.getDevice().type;\nvar Tg = function() {\n if (typeof Map < \"u\")\n return Map;\n function t(e, i) {\n var r = -1;\n return e.some(function(o, l) {\n return o[0] === i ? (r = l, !0) : !1;\n }), r;\n }\n return (\n /** @class */\n function() {\n function e() {\n this.__entries__ = [];\n }\n return Object.defineProperty(e.prototype, \"size\", {\n /**\n * @returns {boolean}\n */\n get: function() {\n return this.__entries__.length;\n },\n enumerable: !0,\n configurable: !0\n }), e.prototype.get = function(i) {\n var r = t(this.__entries__, i), o = this.__entries__[r];\n return o && o[1];\n }, e.prototype.set = function(i, r) {\n var o = t(this.__entries__, i);\n ~o ? this.__entries__[o][1] = r : this.__entries__.push([i, r]);\n }, e.prototype.delete = function(i) {\n var r = this.__entries__, o = t(r, i);\n ~o && r.splice(o, 1);\n }, e.prototype.has = function(i) {\n return !!~t(this.__entries__, i);\n }, e.prototype.clear = function() {\n this.__entries__.splice(0);\n }, e.prototype.forEach = function(i, r) {\n r === void 0 && (r = null);\n for (var o = 0, l = this.__entries__; o < l.length; o++) {\n var v = l[o];\n i.call(r, v[1], v[0]);\n }\n }, e;\n }()\n );\n}(), w_ = typeof window < \"u\" && typeof document < \"u\" && window.document === document, kc = function() {\n return typeof global < \"u\" && global.Math === Math ? global : typeof self < \"u\" && self.Math === Math ? self : typeof window < \"u\" && window.Math === Math ? window : Function(\"return this\")();\n}(), Vx = function() {\n return typeof requestAnimationFrame == \"function\" ? requestAnimationFrame.bind(kc) : function(t) {\n return setTimeout(function() {\n return t(Date.now());\n }, 1e3 / 60);\n };\n}(), Fx = 2;\nfunction jx(t, e) {\n var i = !1, r = !1, o = 0;\n function l() {\n i && (i = !1, t()), r && E();\n }\n function v() {\n Vx(l);\n }\n function E() {\n var C = Date.now();\n if (i) {\n if (C - o < Fx)\n return;\n r = !0;\n } else\n i = !0, r = !1, setTimeout(v, e);\n o = C;\n }\n return E;\n}\nvar zx = 20, Hx = [\"top\", \"right\", \"bottom\", \"left\", \"width\", \"height\", \"size\", \"weight\"], $x = typeof MutationObserver < \"u\", Wx = (\n /** @class */\n function() {\n function t() {\n this.connected_ = !1, this.mutationEventsAdded_ = !1, this.mutationsObserver_ = null, this.observers_ = [], this.onTransitionEnd_ = this.onTransitionEnd_.bind(this), this.refresh = jx(this.refresh.bind(this), zx);\n }\n return t.prototype.addObserver = function(e) {\n ~this.observers_.indexOf(e) || this.observers_.push(e), this.connected_ || this.connect_();\n }, t.prototype.removeObserver = function(e) {\n var i = this.observers_, r = i.indexOf(e);\n ~r && i.splice(r, 1), !i.length && this.connected_ && this.disconnect_();\n }, t.prototype.refresh = function() {\n var e = this.updateObservers_();\n e && this.refresh();\n }, t.prototype.updateObservers_ = function() {\n var e = this.observers_.filter(function(i) {\n return i.gatherActive(), i.hasActive();\n });\n return e.forEach(function(i) {\n return i.broadcastActive();\n }), e.length > 0;\n }, t.prototype.connect_ = function() {\n !w_ || this.connected_ || (document.addEventListener(\"transitionend\", this.onTransitionEnd_), window.addEventListener(\"resize\", this.refresh), $x ? (this.mutationsObserver_ = new MutationObserver(this.refresh), this.mutationsObserver_.observe(document, {\n attributes: !0,\n childList: !0,\n characterData: !0,\n subtree: !0\n })) : (document.addEventListener(\"DOMSubtreeModified\", this.refresh), this.mutationEventsAdded_ = !0), this.connected_ = !0);\n }, t.prototype.disconnect_ = function() {\n !w_ || !this.connected_ || (document.removeEventListener(\"transitionend\", this.onTransitionEnd_), window.removeEventListener(\"resize\", this.refresh), this.mutationsObserver_ && this.mutationsObserver_.disconnect(), this.mutationEventsAdded_ && document.removeEventListener(\"DOMSubtreeModified\", this.refresh), this.mutationsObserver_ = null, this.mutationEventsAdded_ = !1, this.connected_ = !1);\n }, t.prototype.onTransitionEnd_ = function(e) {\n var i = e.propertyName, r = i === void 0 ? \"\" : i, o = Hx.some(function(l) {\n return !!~r.indexOf(l);\n });\n o && this.refresh();\n }, t.getInstance = function() {\n return this.instance_ || (this.instance_ = new t()), this.instance_;\n }, t.instance_ = null, t;\n }()\n), Sg = function(t, e) {\n for (var i = 0, r = Object.keys(e); i < r.length; i++) {\n var o = r[i];\n Object.defineProperty(t, o, {\n value: e[o],\n enumerable: !1,\n writable: !1,\n configurable: !0\n });\n }\n return t;\n}, qa = function(t) {\n var e = t && t.ownerDocument && t.ownerDocument.defaultView;\n return e || kc;\n}, xg = ol(0, 0, 0, 0);\nfunction Ic(t) {\n return parseFloat(t) || 0;\n}\nfunction Mf(t) {\n for (var e = [], i = 1; i < arguments.length; i++)\n e[i - 1] = arguments[i];\n return e.reduce(function(r, o) {\n var l = t[\"border-\" + o + \"-width\"];\n return r + Ic(l);\n }, 0);\n}\nfunction Gx(t) {\n for (var e = [\"top\", \"right\", \"bottom\", \"left\"], i = {}, r = 0, o = e; r < o.length; r++) {\n var l = o[r], v = t[\"padding-\" + l];\n i[l] = Ic(v);\n }\n return i;\n}\nfunction Kx(t) {\n var e = t.getBBox();\n return ol(0, 0, e.width, e.height);\n}\nfunction qx(t) {\n var e = t.clientWidth, i = t.clientHeight;\n if (!e && !i)\n return xg;\n var r = qa(t).getComputedStyle(t), o = Gx(r), l = o.left + o.right, v = o.top + o.bottom, E = Ic(r.width), C = Ic(r.height);\n if (r.boxSizing === \"border-box\" && (Math.round(E + l) !== e && (E -= Mf(r, \"left\", \"right\") + l), Math.round(C + v) !== i && (C -= Mf(r, \"top\", \"bottom\") + v)), !Xx(t)) {\n var x = Math.round(E + l) - e, g = Math.round(C + v) - i;\n Math.abs(x) !== 1 && (E -= x), Math.abs(g) !== 1 && (C -= g);\n }\n return ol(o.left, o.top, E, C);\n}\nvar Yx = function() {\n return typeof SVGGraphicsElement < \"u\" ? function(t) {\n return t instanceof qa(t).SVGGraphicsElement;\n } : function(t) {\n return t instanceof qa(t).SVGElement && typeof t.getBBox == \"function\";\n };\n}();\nfunction Xx(t) {\n return t === qa(t).document.documentElement;\n}\nfunction Zx(t) {\n return w_ ? Yx(t) ? Kx(t) : qx(t) : xg;\n}\nfunction Qx(t) {\n var e = t.x, i = t.y, r = t.width, o = t.height, l = typeof DOMRectReadOnly < \"u\" ? DOMRectReadOnly : Object, v = Object.create(l.prototype);\n return Sg(v, {\n x: e,\n y: i,\n width: r,\n height: o,\n top: i,\n right: e + r,\n bottom: o + i,\n left: e\n }), v;\n}\nfunction ol(t, e, i, r) {\n return { x: t, y: e, width: i, height: r };\n}\nvar Jx = (\n /** @class */\n function() {\n function t(e) {\n this.broadcastWidth = 0, this.broadcastHeight = 0, this.contentRect_ = ol(0, 0, 0, 0), this.target = e;\n }\n return t.prototype.isActive = function() {\n var e = Zx(this.target);\n return this.contentRect_ = e, e.width !== this.broadcastWidth || e.height !== this.broadcastHeight;\n }, t.prototype.broadcastRect = function() {\n var e = this.contentRect_;\n return this.broadcastWidth = e.width, this.broadcastHeight = e.height, e;\n }, t;\n }()\n), e2 = (\n /** @class */\n function() {\n function t(e, i) {\n var r = Qx(i);\n Sg(this, { target: e, contentRect: r });\n }\n return t;\n }()\n), t2 = (\n /** @class */\n function() {\n function t(e, i, r) {\n if (this.activeObservations_ = [], this.observations_ = new Tg(), typeof e != \"function\")\n throw new TypeError(\"The callback provided as parameter 1 is not a function.\");\n this.callback_ = e, this.controller_ = i, this.callbackCtx_ = r;\n }\n return t.prototype.observe = function(e) {\n if (!arguments.length)\n throw new TypeError(\"1 argument required, but only 0 present.\");\n if (!(typeof Element > \"u\" || !(Element instanceof Object))) {\n if (!(e instanceof qa(e).Element))\n throw new TypeError('parameter 1 is not of type \"Element\".');\n var i = this.observations_;\n i.has(e) || (i.set(e, new Jx(e)), this.controller_.addObserver(this), this.controller_.refresh());\n }\n }, t.prototype.unobserve = function(e) {\n if (!arguments.length)\n throw new TypeError(\"1 argument required, but only 0 present.\");\n if (!(typeof Element > \"u\" || !(Element instanceof Object))) {\n if (!(e instanceof qa(e).Element))\n throw new TypeError('parameter 1 is not of type \"Element\".');\n var i = this.observations_;\n i.has(e) && (i.delete(e), i.size || this.controller_.removeObserver(this));\n }\n }, t.prototype.disconnect = function() {\n this.clearActive(), this.observations_.clear(), this.controller_.removeObserver(this);\n }, t.prototype.gatherActive = function() {\n var e = this;\n this.clearActive(), this.observations_.forEach(function(i) {\n i.isActive() && e.activeObservations_.push(i);\n });\n }, t.prototype.broadcastActive = function() {\n if (this.hasActive()) {\n var e = this.callbackCtx_, i = this.activeObservations_.map(function(r) {\n return new e2(r.target, r.broadcastRect());\n });\n this.callback_.call(e, i, e), this.clearActive();\n }\n }, t.prototype.clearActive = function() {\n this.activeObservations_.splice(0);\n }, t.prototype.hasActive = function() {\n return this.activeObservations_.length > 0;\n }, t;\n }()\n), Lg = typeof WeakMap < \"u\" ? /* @__PURE__ */ new WeakMap() : new Tg(), Rg = (\n /** @class */\n function() {\n function t(e) {\n if (!(this instanceof t))\n throw new TypeError(\"Cannot call a class as a function.\");\n if (!arguments.length)\n throw new TypeError(\"1 argument required, but only 0 present.\");\n var i = Wx.getInstance(), r = new t2(e, i, this);\n Lg.set(this, r);\n }\n return t;\n }()\n);\n[\n \"observe\",\n \"unobserve\",\n \"disconnect\"\n].forEach(function(t) {\n Rg.prototype[t] = function() {\n var e;\n return (e = Lg.get(this))[t].apply(e, arguments);\n };\n});\nvar i2 = function() {\n return typeof kc.ResizeObserver < \"u\" ? kc.ResizeObserver : Rg;\n}(), Uf = typeof globalThis < \"u\" ? globalThis : typeof window < \"u\" ? window : typeof global < \"u\" ? global : typeof self < \"u\" ? self : {}, r2 = function(t, e) {\n if (e = e.split(\":\")[0], t = +t, !t)\n return !1;\n switch (e) {\n case \"http\":\n case \"ws\":\n return t !== 80;\n case \"https\":\n case \"wss\":\n return t !== 443;\n case \"ftp\":\n return t !== 21;\n case \"gopher\":\n return t !== 70;\n case \"file\":\n return !1;\n }\n return t !== 0;\n}, vd = {}, n2 = Object.prototype.hasOwnProperty, a2;\nfunction Bf(t) {\n try {\n return decodeURIComponent(t.replace(/\\+/g, \" \"));\n } catch (e) {\n return null;\n }\n}\nfunction Vf(t) {\n try {\n return encodeURIComponent(t);\n } catch (e) {\n return null;\n }\n}\nfunction s2(t) {\n for (var e = /([^=?#&]+)=?([^&]*)/g, i = {}, r; r = e.exec(t); ) {\n var o = Bf(r[1]), l = Bf(r[2]);\n o === null || l === null || o in i || (i[o] = l);\n }\n return i;\n}\nfunction o2(t, e) {\n e = e || \"\";\n var i = [], r, o;\n typeof e != \"string\" && (e = \"?\");\n for (o in t)\n if (n2.call(t, o)) {\n if (r = t[o], !r && (r === null || r === a2 || isNaN(r)) && (r = \"\"), o = Vf(o), r = Vf(r), o === null || r === null)\n continue;\n i.push(o + \"=\" + r);\n }\n return i.length ? e + i.join(\"&\") : \"\";\n}\nvd.stringify = o2;\nvd.parse = s2;\nvar Cg = r2, cl = vd, c2 = /^[\\x00-\\x20\\u00a0\\u1680\\u2000-\\u200a\\u2028\\u2029\\u202f\\u205f\\u3000\\ufeff]+/, kg = /[\\n\\r\\t]/g, l2 = /^[A-Za-z][A-Za-z0-9+-.]*:\\/\\//, Ig = /:\\d+$/, u2 = /^([a-z][a-z0-9.+-]*:)?(\\/\\/)?([\\\\/]+)?([\\S\\s]*)/i, _2 = /^[a-zA-Z]:/;\nfunction gd(t) {\n return (t || \"\").toString().replace(c2, \"\");\n}\nvar A_ = [\n [\"#\", \"hash\"],\n // Extract from the back.\n [\"?\", \"query\"],\n // Extract from the back.\n function(t, e) {\n return Xr(e.protocol) ? t.replace(/\\\\/g, \"/\") : t;\n },\n [\"/\", \"pathname\"],\n // Extract from the back.\n [\"@\", \"auth\", 1],\n // Extract from the front.\n [NaN, \"host\", void 0, 1, 1],\n // Set left over value.\n [/:(\\d*)$/, \"port\", void 0, 1],\n // RegExp the back.\n [NaN, \"hostname\", void 0, 1, 1]\n // Set left over.\n], Ff = { hash: 1, query: 1 };\nfunction Dg(t) {\n var e;\n typeof window < \"u\" ? e = window : typeof Uf < \"u\" ? e = Uf : typeof self < \"u\" ? e = self : e = {};\n var i = e.location || {};\n t = t || i;\n var r = {}, o = typeof t, l;\n if (t.protocol === \"blob:\")\n r = new Jr(unescape(t.pathname), {});\n else if (o === \"string\") {\n r = new Jr(t, {});\n for (l in Ff)\n delete r[l];\n } else if (o === \"object\") {\n for (l in t)\n l in Ff || (r[l] = t[l]);\n r.slashes === void 0 && (r.slashes = l2.test(t.href));\n }\n return r;\n}\nfunction Xr(t) {\n return t === \"file:\" || t === \"ftp:\" || t === \"http:\" || t === \"https:\" || t === \"ws:\" || t === \"wss:\";\n}\nfunction Og(t, e) {\n t = gd(t), t = t.replace(kg, \"\"), e = e || {};\n var i = u2.exec(t), r = i[1] ? i[1].toLowerCase() : \"\", o = !!i[2], l = !!i[3], v = 0, E;\n return o ? l ? (E = i[2] + i[3] + i[4], v = i[2].length + i[3].length) : (E = i[2] + i[4], v = i[2].length) : l ? (E = i[3] + i[4], v = i[3].length) : E = i[4], r === \"file:\" ? v >= 2 && (E = E.slice(2)) : Xr(r) ? E = i[4] : r ? o && (E = E.slice(2)) : v >= 2 && Xr(e.protocol) && (E = i[4]), {\n protocol: r,\n slashes: o || Xr(r),\n slashesCount: v,\n rest: E\n };\n}\nfunction d2(t, e) {\n if (t === \"\")\n return e;\n for (var i = (e || \"/\").split(\"/\").slice(0, -1).concat(t.split(\"/\")), r = i.length, o = i[r - 1], l = !1, v = 0; r--; )\n i[r] === \".\" ? i.splice(r, 1) : i[r] === \"..\" ? (i.splice(r, 1), v++) : v && (r === 0 && (l = !0), i.splice(r, 1), v--);\n return l && i.unshift(\"\"), (o === \".\" || o === \"..\") && i.push(\"\"), i.join(\"/\");\n}\nfunction Jr(t, e, i) {\n if (t = gd(t), t = t.replace(kg, \"\"), !(this instanceof Jr))\n return new Jr(t, e, i);\n var r, o, l, v, E, C, x = A_.slice(), g = typeof e, D = this, _ = 0;\n for (g !== \"object\" && g !== \"string\" && (i = e, e = null), i && typeof i != \"function\" && (i = cl.parse), e = Dg(e), o = Og(t || \"\", e), r = !o.protocol && !o.slashes, D.slashes = o.slashes || r && e.slashes, D.protocol = o.protocol || e.protocol || \"\", t = o.rest, (o.protocol === \"file:\" && (o.slashesCount !== 2 || _2.test(t)) || !o.slashes && (o.protocol || o.slashesCount < 2 || !Xr(D.protocol))) && (x[3] = [/(.*)/, \"pathname\"]); _ < x.length; _++) {\n if (v = x[_], typeof v == \"function\") {\n t = v(t, D);\n continue;\n }\n l = v[0], C = v[1], l !== l ? D[C] = t : typeof l == \"string\" ? (E = l === \"@\" ? t.lastIndexOf(l) : t.indexOf(l), ~E && (typeof v[2] == \"number\" ? (D[C] = t.slice(0, E), t = t.slice(E + v[2])) : (D[C] = t.slice(E), t = t.slice(0, E)))) : (E = l.exec(t)) && (D[C] = E[1], t = t.slice(0, E.index)), D[C] = D[C] || r && v[3] && e[C] || \"\", v[4] && (D[C] = D[C].toLowerCase());\n }\n i && (D.query = i(D.query)), r && e.slashes && D.pathname.charAt(0) !== \"/\" && (D.pathname !== \"\" || e.pathname !== \"\") && (D.pathname = d2(D.pathname, e.pathname)), D.pathname.charAt(0) !== \"/\" && Xr(D.protocol) && (D.pathname = \"/\" + D.pathname), Cg(D.port, D.protocol) || (D.host = D.hostname, D.port = \"\"), D.username = D.password = \"\", D.auth && (E = D.auth.indexOf(\":\"), ~E ? (D.username = D.auth.slice(0, E), D.username = encodeURIComponent(decodeURIComponent(D.username)), D.password = D.auth.slice(E + 1), D.password = encodeURIComponent(decodeURIComponent(D.password))) : D.username = encodeURIComponent(decodeURIComponent(D.auth)), D.auth = D.password ? D.username + \":\" + D.password : D.username), D.origin = D.protocol !== \"file:\" && Xr(D.protocol) && D.host ? D.protocol + \"//\" + D.host : \"null\", D.href = D.toString();\n}\nfunction h2(t, e, i) {\n var r = this;\n switch (t) {\n case \"query\":\n typeof e == \"string\" && e.length && (e = (i || cl.parse)(e)), r[t] = e;\n break;\n case \"port\":\n r[t] = e, Cg(e, r.protocol) ? e && (r.host = r.hostname + \":\" + e) : (r.host = r.hostname, r[t] = \"\");\n break;\n case \"hostname\":\n r[t] = e, r.port && (e += \":\" + r.port), r.host = e;\n break;\n case \"host\":\n r[t] = e, Ig.test(e) ? (e = e.split(\":\"), r.port = e.pop(), r.hostname = e.join(\":\")) : (r.hostname = e, r.port = \"\");\n break;\n case \"protocol\":\n r.protocol = e.toLowerCase(), r.slashes = !i;\n break;\n case \"pathname\":\n case \"hash\":\n if (e) {\n var o = t === \"pathname\" ? \"/\" : \"#\";\n r[t] = e.charAt(0) !== o ? o + e : e;\n } else\n r[t] = e;\n break;\n case \"username\":\n case \"password\":\n r[t] = encodeURIComponent(e);\n break;\n case \"auth\":\n var l = e.indexOf(\":\");\n ~l ? (r.username = e.slice(0, l), r.username = encodeURIComponent(decodeURIComponent(r.username)), r.password = e.slice(l + 1), r.password = encodeURIComponent(decodeURIComponent(r.password))) : r.username = encodeURIComponent(decodeURIComponent(e));\n }\n for (var v = 0; v < A_.length; v++) {\n var E = A_[v];\n E[4] && (r[E[1]] = r[E[1]].toLowerCase());\n }\n return r.auth = r.password ? r.username + \":\" + r.password : r.username, r.origin = r.protocol !== \"file:\" && Xr(r.protocol) && r.host ? r.protocol + \"//\" + r.host : \"null\", r.href = r.toString(), r;\n}\nfunction f2(t) {\n (!t || typeof t != \"function\") && (t = cl.stringify);\n var e, i = this, r = i.host, o = i.protocol;\n o && o.charAt(o.length - 1) !== \":\" && (o += \":\");\n var l = o + (i.protocol && i.slashes || Xr(i.protocol) ? \"//\" : \"\");\n return i.username ? (l += i.username, i.password && (l += \":\" + i.password), l += \"@\") : i.password ? (l += \":\" + i.password, l += \"@\") : i.protocol !== \"file:\" && Xr(i.protocol) && !r && i.pathname !== \"/\" && (l += \"@\"), (r[r.length - 1] === \":\" || Ig.test(i.hostname) && !i.port) && (r += \":\"), l += r + i.pathname, e = typeof i.query == \"object\" ? t(i.query) : i.query, e && (l += e.charAt(0) !== \"?\" ? \"?\" + e : e), i.hash && (l += i.hash), l;\n}\nJr.prototype = { set: h2, toString: f2 };\nJr.extractProtocol = Og;\nJr.location = Dg;\nJr.trimLeft = gd;\nJr.qs = cl;\nvar p2 = Jr, Dc = /* @__PURE__ */ ((t) => (t.PROD = \"prod\", t.STAGEING = \"stageing\", t.DEV = \"dev\", t))(Dc || {});\nconst m2 = {\n env: Dc.PROD,\n networkTimeout: 5e3,\n networkMaxRetry: 1,\n vodPullRangeSec: 50,\n vodPullIntervalSec: 2,\n vodPullMaxBufSec: 5\n}, xr = [{\n value: 0.5,\n label: \"极小\"\n}, {\n value: 0.75,\n label: \"小\"\n}, {\n value: 1,\n label: \"标准\"\n}, {\n value: 1.35,\n label: \"大\"\n}, {\n value: 1.7,\n label: \"极大\"\n}], jf = 1, Lr = [{\n value: 1.5,\n label: \"极慢\"\n}, {\n value: 1.25,\n label: \"慢\"\n}, {\n value: 1,\n label: \"正常\"\n}, {\n value: 0.75,\n label: \"快\"\n}, {\n value: 0.5,\n label: \"极快\"\n}], v2 = 1, Oc = 0.1, Nc = 1, Ng = [\"#FFFFFF\", \"#F4E000\", \"#00BE08\", \"#EB4F48\", \"#CEA66E\"], Pg = \"#FFFFFF\", zf = \"kwai-danmaku-setting\", T_ = 1, Mg = 2, nu = 100, g2 = \"https://vod.streamlakeapi.com\", b2 = \"https://streamlake-api.staging.kuaishou.com\";\nvar Bs = {}, y2 = {\n get exports() {\n return Bs;\n },\n set exports(t) {\n Bs = t;\n }\n}, za = typeof Reflect == \"object\" ? Reflect : null, Hf = za && typeof za.apply == \"function\" ? za.apply : function(t, e, i) {\n return Function.prototype.apply.call(t, e, i);\n}, Ho;\nza && typeof za.ownKeys == \"function\" ? Ho = za.ownKeys : Object.getOwnPropertySymbols ? Ho = function(t) {\n return Object.getOwnPropertyNames(t).concat(Object.getOwnPropertySymbols(t));\n} : Ho = function(t) {\n return Object.getOwnPropertyNames(t);\n};\nfunction E2(t) {\n console && console.warn && console.warn(t);\n}\nvar Ug = Number.isNaN || function(t) {\n return t !== t;\n};\nfunction qt() {\n qt.init.call(this);\n}\ny2.exports = qt;\nBs.once = S2;\nqt.EventEmitter = qt;\nqt.prototype._events = void 0;\nqt.prototype._eventsCount = 0;\nqt.prototype._maxListeners = void 0;\nvar $f = 10;\nfunction ll(t) {\n if (typeof t != \"function\")\n throw new TypeError('The \"listener\" argument must be of type Function. Received type ' + typeof t);\n}\nObject.defineProperty(qt, \"defaultMaxListeners\", {\n enumerable: !0,\n get: function() {\n return $f;\n },\n set: function(t) {\n if (typeof t != \"number\" || t < 0 || Ug(t))\n throw new RangeError('The value of \"defaultMaxListeners\" is out of range. It must be a non-negative number. Received ' + t + \".\");\n $f = t;\n }\n});\nqt.init = function() {\n (this._events === void 0 || this._events === Object.getPrototypeOf(this)._events) && (this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0), this._maxListeners = this._maxListeners || void 0;\n};\nqt.prototype.setMaxListeners = function(t) {\n if (typeof t != \"number\" || t < 0 || Ug(t))\n throw new RangeError('The value of \"n\" is out of range. It must be a non-negative number. Received ' + t + \".\");\n return this._maxListeners = t, this;\n};\nfunction Bg(t) {\n return t._maxListeners === void 0 ? qt.defaultMaxListeners : t._maxListeners;\n}\nqt.prototype.getMaxListeners = function() {\n return Bg(this);\n};\nqt.prototype.emit = function(t) {\n for (var e = [], i = 1; i < arguments.length; i++)\n e.push(arguments[i]);\n var r = t === \"error\", o = this._events;\n if (o !== void 0)\n r = r && o.error === void 0;\n else if (!r)\n return !1;\n if (r) {\n var l;\n if (e.length > 0 && (l = e[0]), l instanceof Error)\n throw l;\n var v = new Error(\"Unhandled error.\" + (l ? \" (\" + l.message + \")\" : \"\"));\n throw v.context = l, v;\n }\n var E = o[t];\n if (E === void 0)\n return !1;\n if (typeof E == \"function\")\n Hf(E, this, e);\n else\n for (var C = E.length, x = Hg(E, C), i = 0; i < C; ++i)\n Hf(x[i], this, e);\n return !0;\n};\nfunction Vg(t, e, i, r) {\n var o, l, v;\n if (ll(i), l = t._events, l === void 0 ? (l = t._events = /* @__PURE__ */ Object.create(null), t._eventsCount = 0) : (l.newListener !== void 0 && (t.emit(\n \"newListener\",\n e,\n i.listener ? i.listener : i\n ), l = t._events), v = l[e]), v === void 0)\n v = l[e] = i, ++t._eventsCount;\n else if (typeof v == \"function\" ? v = l[e] = r ? [i, v] : [v, i] : r ? v.unshift(i) : v.push(i), o = Bg(t), o > 0 && v.length > o && !v.warned) {\n v.warned = !0;\n var E = new Error(\"Possible EventEmitter memory leak detected. \" + v.length + \" \" + String(e) + \" listeners added. Use emitter.setMaxListeners() to increase limit\");\n E.name = \"MaxListenersExceededWarning\", E.emitter = t, E.type = e, E.count = v.length, E2(E);\n }\n return t;\n}\nqt.prototype.addListener = function(t, e) {\n return Vg(this, t, e, !1);\n};\nqt.prototype.on = qt.prototype.addListener;\nqt.prototype.prependListener = function(t, e) {\n return Vg(this, t, e, !0);\n};\nfunction w2() {\n if (!this.fired)\n return this.target.removeListener(this.type, this.wrapFn), this.fired = !0, arguments.length === 0 ? this.listener.call(this.target) : this.listener.apply(this.target, arguments);\n}\nfunction Fg(t, e, i) {\n var r = { fired: !1, wrapFn: void 0, target: t, type: e, listener: i }, o = w2.bind(r);\n return o.listener = i, r.wrapFn = o, o;\n}\nqt.prototype.once = function(t, e) {\n return ll(e), this.on(t, Fg(this, t, e)), this;\n};\nqt.prototype.prependOnceListener = function(t, e) {\n return ll(e), this.prependListener(t, Fg(this, t, e)), this;\n};\nqt.prototype.removeListener = function(t, e) {\n var i, r, o, l, v;\n if (ll(e), r = this._events, r === void 0)\n return this;\n if (i = r[t], i === void 0)\n return this;\n if (i === e || i.listener === e)\n --this._eventsCount === 0 ? this._events = /* @__PURE__ */ Object.create(null) : (delete r[t], r.removeListener && this.emit(\"removeListener\", t, i.listener || e));\n else if (typeof i != \"function\") {\n for (o = -1, l = i.length - 1; l >= 0; l--)\n if (i[l] === e || i[l].listener === e) {\n v = i[l].listener, o = l;\n break;\n }\n if (o < 0)\n return this;\n o === 0 ? i.shift() : A2(i, o), i.length === 1 && (r[t] = i[0]), r.removeListener !== void 0 && this.emit(\"removeListener\", t, v || e);\n }\n return this;\n};\nqt.prototype.off = qt.prototype.removeListener;\nqt.prototype.removeAllListeners = function(t) {\n var e, i, r;\n if (i = this._events, i === void 0)\n return this;\n if (i.removeListener === void 0)\n return arguments.length === 0 ? (this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0) : i[t] !== void 0 && (--this._eventsCount === 0 ? this._events = /* @__PURE__ */ Object.create(null) : delete i[t]), this;\n if (arguments.length === 0) {\n var o = Object.keys(i), l;\n for (r = 0; r < o.length; ++r)\n l = o[r], l !== \"removeListener\" && this.removeAllListeners(l);\n return this.removeAllListeners(\"removeListener\"), this._events = /* @__PURE__ */ Object.create(null), this._eventsCount = 0, this;\n }\n if (e = i[t], typeof e == \"function\")\n this.removeListener(t, e);\n else if (e !== void 0)\n for (r = e.length - 1; r >= 0; r--)\n this.removeListener(t, e[r]);\n return this;\n};\nfunction jg(t, e, i) {\n var r = t._events;\n if (r === void 0)\n return [];\n var o = r[e];\n return o === void 0 ? [] : typeof o == \"function\" ? i ? [o.listener || o] : [o] : i ? T2(o) : Hg(o, o.length);\n}\nqt.prototype.listeners = function(t) {\n return jg(this, t, !0);\n};\nqt.prototype.rawListeners = function(t) {\n return jg(this, t, !1);\n};\nqt.listenerCount = function(t, e) {\n return typeof t.listenerCount == \"function\" ? t.listenerCount(e) : zg.call(t, e);\n};\nqt.prototype.listenerCount = zg;\nfunction zg(t) {\n var e = this._events;\n if (e !== void 0) {\n var i = e[t];\n if (typeof i == \"function\")\n return 1;\n if (i !== void 0)\n return i.length;\n }\n return 0;\n}\nqt.prototype.eventNames = function() {\n return this._eventsCount > 0 ? Ho(this._events) : [];\n};\nfunction Hg(t, e) {\n for (var i = new Array(e), r = 0; r < e; ++r)\n i[r] = t[r];\n return i;\n}\nfunction A2(t, e) {\n for (; e + 1 < t.length; e++)\n t[e] = t[e + 1];\n t.pop();\n}\nfunction T2(t) {\n for (var e = new Array(t.length), i = 0; i < e.length; ++i)\n e[i] = t[i].listener || t[i];\n return e;\n}\nfunction S2(t, e) {\n return new Promise(function(i, r) {\n function o(v) {\n t.removeListener(e, l), r(v);\n }\n function l() {\n typeof t.removeListener == \"function\" && t.removeListener(\"error\", o), i([].slice.call(arguments));\n }\n $g(t, e, l, { once: !0 }), e !== \"error\" && x2(t, o, { once: !0 });\n });\n}\nfunction x2(t, e, i) {\n typeof t.on == \"function\" && $g(t, \"error\", e, i);\n}\nfunction $g(t, e, i, r) {\n if (typeof t.on == \"function\")\n r.once ? t.once(e, i) : t.on(e, i);\n else if (typeof t.addEventListener == \"function\")\n t.addEventListener(e, function o(l) {\n r.once && t.removeEventListener(e, o), i(l);\n });\n else\n throw new TypeError('The \"emitter\" argument must be of type EventEmitter. Received type ' + typeof t);\n}\nvar Dn = /* @__PURE__ */ ((t) => (t.LIKE = \"like\", t.CANCEL_LIKE = \"cancellike\", t.SETTING_UPDATE = \"settingUpdate\", t))(Dn || {});\nclass L2 {\n constructor() {\n We(this, \"_evt\", new Bs.EventEmitter());\n }\n on(e, i) {\n this._evt.on(e, i);\n }\n once(e, i) {\n this._evt.once(e, i);\n }\n removeAllListeners(e) {\n this._evt.removeAllListeners(e);\n }\n off(e, i) {\n this._evt.off(e, i);\n }\n emit(e, i) {\n return this._evt.emit(e, i);\n }\n}\nclass R2 extends Bs.EventEmitter {\n constructor() {\n super(), We(this, \"_ls\", new md()), We(this, \"_data\"), this._data = this._read();\n }\n destroy() {\n this.removeAllListeners();\n }\n set isShow(e) {\n e !== this._data.showDanmaku && (this._data.showDanmaku = e, this._update());\n }\n get isShow() {\n return this._data.showDanmaku;\n }\n set color(e) {\n e !== this._data.color && (this._data.color = e, this._update());\n }\n get color() {\n return this._data.color;\n }\n set opacityMultiple(e) {\n e !== this._data.opacityMultiple && (this._data.opacityMultiple = e, this._update());\n }\n get opacityMultiple() {\n return this._data.opacityMultiple;\n }\n set fontSizeMultiple(e) {\n e !== this._data.fontSizeMultiple && (this._data.fontSizeMultiple = e, this._update());\n }\n get fontSizeMultiple() {\n return this._data.fontSizeMultiple;\n }\n get fontSizeMultipleItem() {\n for (let e = 0; e < xr.length; e++)\n if (xr[e].value === this._data.fontSizeMultiple)\n return xr[e];\n return xr[Math.round(xr.length / 2)];\n }\n set durationMultiple(e) {\n e !== this._data.durationMultiple && (this._data.durationMultiple = e, this._update());\n }\n get durationMultiple() {\n return this._data.durationMultiple;\n }\n get durationMultipleItem() {\n for (let e = 0; e < Lr.length; e++)\n if (Lr[e].value === this._data.durationMultiple)\n return Lr[e];\n return Lr[Math.round(Lr.length / 2)];\n }\n set showDanmaku(e) {\n e !== this._data.showDanmaku && (this._data.showDanmaku = e, this._update());\n }\n get showDanmaku() {\n return this._data.showDanmaku;\n }\n get scrollDanmakuAreaRatio() {\n return 0.33;\n }\n _update() {\n this._ls.write(zf, this._data), this.emit(Dn.SETTING_UPDATE);\n }\n _read() {\n const e = this._ls.read(zf, !1), i = {\n color: Pg,\n opacityMultiple: jf,\n fontSizeMultiple: jf,\n durationMultiple: v2,\n showDanmaku: !0\n };\n return e && (typeof e.color == \"string\" && Ng.indexOf(e.color) !== -1 && (i.color = e.color), typeof e.opacityMultiple == \"number\" && e.opacityMultiple > Oc && e.opacityMultiple <= Nc && (i.opacityMultiple = e.opacityMultiple), typeof e.fontSizeMultiple == \"number\" && xr.reduce((r, o) => r || o.value === e.fontSizeMultiple, !1) && (i.fontSizeMultiple = e.fontSizeMultiple), typeof e.durationMultiple == \"number\" && Lr.reduce((r, o) => r || o.value === e.durationMultiple, !1) && (i.durationMultiple = e.durationMultiple), typeof e.showDanmaku == \"boolean\" && (i.showDanmaku = e.showDanmaku)), i;\n }\n}\nclass C2 {\n constructor() {\n We(this, \"_player\"), We(this, \"_conf\"), We(this, \"_setting\", new R2()), We(this, \"_danmakuDataList\", []), this._conf = Object.assign({}, m2);\n }\n reset() {\n this._danmakuDataList = [];\n }\n destroy() {\n this._setting.destroy();\n }\n addDanmakuData(e) {\n if (e.length) {\n const i = this._danmakuDataList.findIndex((r) => e[0].startTime && r.startTime ? e[0].startTime <= r.startTime : !1);\n this._danmakuDataList.splice(i, 0, ...e);\n }\n }\n getDanmakuDataByTime(e, i) {\n let r = [];\n return i - e > T_ || i < e ? r = this._danmakuDataList.filter((o) => o.startTime > i - T_ && o.startTime <= i) : r = this._danmakuDataList.filter((o) => o.startTime > e && o.startTime <= i), r.sort((o, l) => l.likeNum - o.likeNum), r.sort((o, l) => l.createTime - o.createTime), r;\n }\n set player(e) {\n this._player = e;\n }\n get player() {\n return this._player;\n }\n get config() {\n return this._conf;\n }\n get likeUrl() {\n return this._getUrl(\"LikeDanmaku\");\n }\n get likeCancelUrl() {\n return this._getUrl(\"LikeCancelDanmaku\");\n }\n get sendUrl() {\n return this._getUrl(\"CreateDanmaku\");\n }\n get pullUrl() {\n return this._getUrl(\"PollDanmakuByPosition\");\n }\n get setting() {\n return this._setting;\n }\n _getUrl(e) {\n const i = new p2(this._getBaseUrl(), !0);\n return i.query.Action = e, i.toString();\n }\n _getBaseUrl() {\n return this._conf.env === Dc.DEV || this._conf.env === Dc.STAGEING ? b2 : g2;\n }\n}\nvar ul, St, Wg, ca, Wf, Gg, S_, Pc = {}, Kg = [], k2 = /acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;\nfunction Rn(t, e) {\n for (var i in e)\n t[i] = e[i];\n return t;\n}\nfunction qg(t) {\n var e = t.parentNode;\n e && e.removeChild(t);\n}\nfunction I2(t, e, i) {\n var r, o, l, v = {};\n for (l in e)\n l == \"key\" ? r = e[l] : l == \"ref\" ? o = e[l] : v[l] = e[l];\n if (arguments.length > 2 && (v.children = arguments.length > 3 ? ul.call(arguments, 2) : i), typeof t == \"function\" && t.defaultProps != null)\n for (l in t.defaultProps)\n v[l] === void 0 && (v[l] = t.defaultProps[l]);\n return $o(t, v, r, o, null);\n}\nfunction $o(t, e, i, r, o) {\n var l = { type: t, props: e, key: i, ref: r, __k: null, __: null, __b: 0, __e: null, __d: void 0, __c: null, __h: null, constructor: void 0, __v: o != null ? o : ++Wg };\n return o == null && St.vnode != null && St.vnode(l), l;\n}\nfunction _l(t) {\n return t.children;\n}\nfunction Wo(t, e) {\n this.props = t, this.context = e;\n}\nfunction Vs(t, e) {\n if (e == null)\n return t.__ ? Vs(t.__, t.__.__k.indexOf(t) + 1) : null;\n for (var i; e < t.__k.length; e++)\n if ((i = t.__k[e]) != null && i.__e != null)\n return i.__e;\n return typeof t.type == \"function\" ? Vs(t) : null;\n}\nfunction Yg(t) {\n var e, i;\n if ((t = t.__) != null && t.__c != null) {\n for (t.__e = t.__c.base = null, e = 0; e < t.__k.length; e++)\n if ((i = t.__k[e]) != null && i.__e != null) {\n t.__e = t.__c.base = i.__e;\n break;\n }\n return Yg(t);\n }\n}\nfunction Gf(t) {\n (!t.__d && (t.__d = !0) && ca.push(t) && !Mc.__r++ || Wf !== St.debounceRendering) && ((Wf = St.debounceRendering) || Gg)(Mc);\n}\nfunction Mc() {\n var t, e, i, r, o, l, v, E;\n for (ca.sort(S_); t = ca.shift(); )\n t.__d && (e = ca.length, r = void 0, o = void 0, v = (l = (i = t).__v).__e, (E = i.__P) && (r = [], (o = Rn({}, l)).__v = l.__v + 1, bd(E, l, o, i.__n, E.ownerSVGElement !== void 0, l.__h != null ? [v] : null, r, v != null ? v : Vs(l), l.__h), eb(r, l), l.__e != v && Yg(l)), ca.length > e && ca.sort(S_));\n Mc.__r = 0;\n}\nfunction Xg(t, e, i, r, o, l, v, E, C, x) {\n var g, D, _, m, p, d, u, U = r && r.__k || Kg, w = U.length;\n for (i.__k = [], g = 0; g < e.length; g++)\n if ((m = i.__k[g] = (m = e[g]) == null || typeof m == \"boolean\" || typeof m == \"function\" ? null : typeof m == \"string\" || typeof m == \"number\" || typeof m == \"bigint\" ? $o(null, m, null, null, m) : Array.isArray(m) ? $o(_l, { children: m }, null, null, null) : m.__b > 0 ? $o(m.type, m.props, m.key, m.ref ? m.ref : null, m.__v) : m) != null) {\n if (m.__ = i, m.__b = i.__b + 1, (_ = U[g]) === null || _ && m.key == _.key && m.type === _.type)\n U[g] = void 0;\n else\n for (D = 0; D < w; D++) {\n if ((_ = U[D]) && m.key == _.key && m.type === _.type) {\n U[D] = void 0;\n break;\n }\n _ = null;\n }\n bd(t, m, _ = _ || Pc, o, l, v, E, C, x), p = m.__e, (D = m.ref) && _.ref != D && (u || (u = []), _.ref && u.push(_.ref, null, m), u.push(D, m.__c || p, m)), p != null ? (d == null && (d = p), typeof m.type == \"function\" && m.__k === _.__k ? m.__d = C = Zg(m, C, t) : C = Qg(t, m, _, U, p, C), typeof i.type == \"function\" && (i.__d = C)) : C && _.__e == C && C.parentNode != t && (C = Vs(_));\n }\n for (i.__e = d, g = w; g--; )\n U[g] != null && (typeof i.type == \"function\" && U[g].__e != null && U[g].__e == i.__d && (i.__d = Jg(r).nextSibling), ib(U[g], U[g]));\n if (u)\n for (g = 0; g < u.length; g++)\n tb(u[g], u[++g], u[++g]);\n}\nfunction Zg(t, e, i) {\n for (var r, o = t.__k, l = 0; o && l < o.length; l++)\n (r = o[l]) && (r.__ = t, e = typeof r.type == \"function\" ? Zg(r, e, i) : Qg(i, r, r, o, r.__e, e));\n return e;\n}\nfunction Qg(t, e, i, r, o, l) {\n var v, E, C;\n if (e.__d !== void 0)\n v = e.__d, e.__d = void 0;\n else if (i == null || o != l || o.parentNode == null)\n e:\n if (l == null || l.parentNode !== t)\n t.appendChild(o), v = null;\n else {\n for (E = l, C = 0; (E = E.nextSibling) && C < r.length; C += 1)\n if (E == o)\n break e;\n t.insertBefore(o, l), v = l;\n }\n return v !== void 0 ? v : o.nextSibling;\n}\nfunction Jg(t) {\n var e, i, r;\n if (t.type == null || typeof t.type == \"string\")\n return t.__e;\n if (t.__k) {\n for (e = t.__k.length - 1; e >= 0; e--)\n if ((i = t.__k[e]) && (r = Jg(i)))\n return r;\n }\n return null;\n}\nfunction D2(t, e, i, r, o) {\n var l;\n for (l in i)\n l === \"children\" || l === \"key\" || l in e || Uc(t, l, null, i[l], r);\n for (l in e)\n o && typeof e[l] != \"function\" || l === \"children\" || l === \"key\" || l === \"value\" || l === \"checked\" || i[l] === e[l] || Uc(t, l, e[l], i[l], r);\n}\nfunction Kf(t, e, i) {\n e[0] === \"-\" ? t.setProperty(e, i != null ? i : \"\") : t[e] = i == null ? \"\" : typeof i != \"number\" || k2.test(e) ? i : i + \"px\";\n}\nfunction Uc(t, e, i, r, o) {\n var l;\n e:\n if (e === \"style\")\n if (typeof i == \"string\")\n t.style.cssText = i;\n else {\n if (typeof r == \"string\" && (t.style.cssText = r = \"\"), r)\n for (e in r)\n i && e in i || Kf(t.style, e, \"\");\n if (i)\n for (e in i)\n r && i[e] === r[e] || Kf(t.style, e, i[e]);\n }\n else if (e[0] === \"o\" && e[1] === \"n\")\n l = e !== (e = e.replace(/Capture$/, \"\")), e = e.toLowerCase() in t ? e.toLowerCase().slice(2) : e.slice(2), t.l || (t.l = {}), t.l[e + l] = i, i ? r || t.addEventListener(e, l ? Yf : qf, l) : t.removeEventListener(e, l ? Yf : qf, l);\n else if (e !== \"dangerouslySetInnerHTML\") {\n if (o)\n e = e.replace(/xlink(H|:h)/, \"h\").replace(/sName$/, \"s\");\n else if (e !== \"width\" && e !== \"height\" && e !== \"href\" && e !== \"list\" && e !== \"form\" && e !== \"tabIndex\" && e !== \"download\" && e in t)\n try {\n t[e] = i != null ? i : \"\";\n break e;\n } catch (v) {\n }\n typeof i == \"function\" || (i == null || i === !1 && e[4] !== \"-\" ? t.removeAttribute(e) : t.setAttribute(e, i));\n }\n}\nfunction qf(t) {\n return this.l[t.type + !1](St.event ? St.event(t) : t);\n}\nfunction Yf(t) {\n return this.l[t.type + !0](St.event ? St.event(t) : t);\n}\nfunction bd(t, e, i, r, o, l, v, E, C) {\n var x, g, D, _, m, p, d, u, U, w, S, R, z, W, fe, q = e.type;\n if (e.constructor !== void 0)\n return null;\n i.__h != null && (C = i.__h, E = e.__e = i.__e, e.__h = null, l = [E]), (x = St.__b) && x(e);\n try {\n e:\n if (typeof q == \"function\") {\n if (u = e.props, U = (x = q.contextType) && r[x.__c], w = x ? U ? U.props.value : x.__ : r, i.__c ? d = (g = e.__c = i.__c).__ = g.__E : (\"prototype\" in q && q.prototype.render ? e.__c = g = new q(u, w) : (e.__c = g = new Wo(u, w), g.constructor = q, g.render = N2), U && U.sub(g), g.props = u, g.state || (g.state = {}), g.context = w, g.__n = r, D = g.__d = !0, g.__h = [], g._sb = []), g.__s == null && (g.__s = g.state), q.getDerivedStateFromProps != null && (g.__s == g.state && (g.__s = Rn({}, g.__s)), Rn(g.__s, q.getDerivedStateFromProps(u, g.__s))), _ = g.props, m = g.state, g.__v = e, D)\n q.getDerivedStateFromProps == null && g.componentWillMount != null && g.componentWillMount(), g.componentDidMount != null && g.__h.push(g.componentDidMount);\n else {\n if (q.getDerivedStateFromProps == null && u !== _ && g.componentWillReceiveProps != null && g.componentWillReceiveProps(u, w), !g.__e && g.shouldComponentUpdate != null && g.shouldComponentUpdate(u, g.__s, w) === !1 || e.__v === i.__v) {\n for (e.__v !== i.__v && (g.props = u, g.state = g.__s, g.__d = !1), g.__e = !1, e.__e = i.__e, e.__k = i.__k, e.__k.forEach(function(ve) {\n ve && (ve.__ = e);\n }), S = 0; S < g._sb.length; S++)\n g.__h.push(g._sb[S]);\n g._sb = [], g.__h.length && v.push(g);\n break e;\n }\n g.componentWillUpdate != null && g.componentWillUpdate(u, g.__s, w), g.componentDidUpdate != null && g.__h.push(function() {\n g.componentDidUpdate(_, m, p);\n });\n }\n if (g.context = w, g.props = u, g.__P = t, R = St.__r, z = 0, \"prototype\" in q && q.prototype.render) {\n for (g.state = g.__s, g.__d = !1, R && R(e), x = g.render(g.props, g.state, g.context), W = 0; W < g._sb.length; W++)\n g.__h.push(g._sb[W]);\n g._sb = [];\n } else\n do\n g.__d = !1, R && R(e), x = g.render(g.props, g.state, g.context), g.state = g.__s;\n while (g.__d && ++z < 25);\n g.state = g.__s, g.getChildContext != null && (r = Rn(Rn({}, r), g.getChildContext())), D || g.getSnapshotBeforeUpdate == null || (p = g.getSnapshotBeforeUpdate(_, m)), fe = x != null && x.type === _l && x.key == null ? x.props.children : x, Xg(t, Array.isArray(fe) ? fe : [fe], e, i, r, o, l, v, E, C), g.base = e.__e, e.__h = null, g.__h.length && v.push(g), d && (g.__E = g.__ = null), g.__e = !1;\n } else\n l == null && e.__v === i.__v ? (e.__k = i.__k, e.__e = i.__e) : e.__e = O2(i.__e, e, i, r, o, l, v, C);\n (x = St.diffed) && x(e);\n } catch (ve) {\n e.__v = null, (C || l != null) && (e.__e = E, e.__h = !!C, l[l.indexOf(E)] = null), St.__e(ve, e, i);\n }\n}\nfunction eb(t, e) {\n St.__c && St.__c(e, t), t.some(function(i) {\n try {\n t = i.__h, i.__h = [], t.some(function(r) {\n r.call(i);\n });\n } catch (r) {\n St.__e(r, i.__v);\n }\n });\n}\nfunction O2(t, e, i, r, o, l, v, E) {\n var C, x, g, D = i.props, _ = e.props, m = e.type, p = 0;\n if (m === \"svg\" && (o = !0), l != null) {\n for (; p < l.length; p++)\n if ((C = l[p]) && \"setAttribute\" in C == !!m && (m ? C.localName === m : C.nodeType === 3)) {\n t = C, l[p] = null;\n break;\n }\n }\n if (t == null) {\n if (m === null)\n return document.createTextNode(_);\n t = o ? document.createElementNS(\"http://www.w3.org/2000/svg\", m) : document.createElement(m, _.is && _), l = null, E = !1;\n }\n if (m === null)\n D === _ || E && t.data === _ || (t.data = _);\n else {\n if (l = l && ul.call(t.childNodes), x = (D = i.props || Pc).dangerouslySetInnerHTML, g = _.dangerouslySetInnerHTML, !E) {\n if (l != null)\n for (D = {}, p = 0; p < t.attributes.length; p++)\n D[t.attributes[p].name] = t.attributes[p].value;\n (g || x) && (g && (x && g.__html == x.__html || g.__html === t.innerHTML) || (t.innerHTML = g && g.__html || \"\"));\n }\n if (D2(t, _, D, o, E), g)\n e.__k = [];\n else if (p = e.props.children, Xg(t, Array.isArray(p) ? p : [p], e, i, r, o && m !== \"foreignObject\", l, v, l ? l[0] : i.__k && Vs(i, 0), E), l != null)\n for (p = l.length; p--; )\n l[p] != null && qg(l[p]);\n E || (\"value\" in _ && (p = _.value) !== void 0 && (p !== t.value || m === \"progress\" && !p || m === \"option\" && p !== D.value) && Uc(t, \"value\", p, D.value, !1), \"checked\" in _ && (p = _.checked) !== void 0 && p !== t.checked && Uc(t, \"checked\", p, D.checked, !1));\n }\n return t;\n}\nfunction tb(t, e, i) {\n try {\n typeof t == \"function\" ? t(e) : t.current = e;\n } catch (r) {\n St.__e(r, i);\n }\n}\nfunction ib(t, e, i) {\n var r, o;\n if (St.unmount && St.unmount(t), (r = t.ref) && (r.current && r.current !== t.__e || tb(r, null, e)), (r = t.__c) != null) {\n if (r.componentWillUnmount)\n try {\n r.componentWillUnmount();\n } catch (l) {\n St.__e(l, e);\n }\n r.base = r.__P = null, t.__c = void 0;\n }\n if (r = t.__k)\n for (o = 0; o < r.length; o++)\n r[o] && ib(r[o], e, i || typeof t.type != \"function\");\n i || t.__e == null || qg(t.__e), t.__ = t.__e = t.__d = void 0;\n}\nfunction N2(t, e, i) {\n return this.constructor(t, i);\n}\nfunction Xf(t, e, i) {\n var r, o, l;\n St.__ && St.__(t, e), o = (r = typeof i == \"function\") ? null : i && i.__k || e.__k, l = [], bd(e, t = (!r && i || e).__k = I2(_l, null, [t]), o || Pc, Pc, e.ownerSVGElement !== void 0, !r && i ? [i] : o ? null : e.firstChild ? ul.call(e.childNodes) : null, l, !r && i ? i : o ? o.__e : e.firstChild, r), eb(l, t);\n}\nul = Kg.slice, St = { __e: function(t, e, i, r) {\n for (var o, l, v; e = e.__; )\n if ((o = e.__c) && !o.__)\n try {\n if ((l = o.constructor) && l.getDerivedStateFromError != null && (o.setState(l.getDerivedStateFromError(t)), v = o.__d), o.componentDidCatch != null && (o.componentDidCatch(t, r || {}), v = o.__d), v)\n return o.__E = o;\n } catch (E) {\n t = E;\n }\n throw t;\n} }, Wg = 0, Wo.prototype.setState = function(t, e) {\n var i;\n i = this.__s != null && this.__s !== this.state ? this.__s : this.__s = Rn({}, this.state), typeof t == \"function\" && (t = t(Rn({}, i), this.props)), t && Rn(i, t), t != null && this.__v && (e && this._sb.push(e), Gf(this));\n}, Wo.prototype.forceUpdate = function(t) {\n this.__v && (this.__e = !0, t && this.__h.push(t), Gf(this));\n}, Wo.prototype.render = _l, ca = [], Gg = typeof Promise == \"function\" ? Promise.prototype.then.bind(Promise.resolve()) : setTimeout, S_ = function(t, e) {\n return t.__v.__b - e.__v.__b;\n}, Mc.__r = 0;\nvar qr = typeof globalThis < \"u\" ? globalThis : typeof window < \"u\" ? window : typeof global < \"u\" ? global : typeof self < \"u\" ? self : {};\nfunction P2(t) {\n return t && t.__esModule && Object.prototype.hasOwnProperty.call(t, \"default\") ? t.default : t;\n}\nfunction M2(t) {\n if (t.__esModule)\n return t;\n var e = t.default;\n if (typeof e == \"function\") {\n var i = function r() {\n if (this instanceof r) {\n var o = [null];\n o.push.apply(o, arguments);\n var l = Function.bind.apply(e, o);\n return new l();\n }\n return e.apply(this, arguments);\n };\n i.prototype = e.prototype;\n } else\n i = {};\n return Object.defineProperty(i, \"__esModule\", {\n value: !0\n }), Object.keys(t).forEach(function(r) {\n var o = Object.getOwnPropertyDescriptor(t, r);\n Object.defineProperty(i, r, o.get ? o : {\n enumerable: !0,\n get: function() {\n return t[r];\n }\n });\n }), i;\n}\nvar U2 = function(t, e) {\n if (e = e.split(\":\")[0], t = +t, !t)\n return !1;\n switch (e) {\n case \"http\":\n case \"ws\":\n return t !== 80;\n case \"https\":\n case \"wss\":\n return t !== 443;\n case \"ftp\":\n return t !== 21;\n case \"gopher\":\n return t !== 70;\n case \"file\":\n return !1;\n }\n return t !== 0;\n}, yd = {}, B2 = Object.prototype.hasOwnProperty, V2;\nfunction Zf(t) {\n try {\n return decodeURIComponent(t.replace(/\\+/g, \" \"));\n } catch (e) {\n return null;\n }\n}\nfunction Qf(t) {\n try {\n return encodeURIComponent(t);\n } catch (e) {\n return null;\n }\n}\nfunction F2(t) {\n for (var e = /([^=?#&]+)=?([^&]*)/g, i = {}, r; r = e.exec(t); ) {\n var o = Zf(r[1]), l = Zf(r[2]);\n o === null || l === null || o in i || (i[o] = l);\n }\n return i;\n}\nfunction j2(t, e) {\n e = e || \"\";\n var i = [], r, o;\n typeof e != \"string\" && (e = \"?\");\n for (o in t)\n if (B2.call(t, o)) {\n if (r = t[o], !r && (r === null || r === V2 || isNaN(r)) && (r = \"\"), o = Qf(o), r = Qf(r), o === null || r === null)\n continue;\n i.push(o + \"=\" + r);\n }\n return i.length ? e + i.join(\"&\") : \"\";\n}\nyd.stringify = j2;\nyd.parse = F2;\nvar rb = U2, dl = yd, z2 = /^[\\x00-\\x20\\u00a0\\u1680\\u2000-\\u200a\\u2028\\u2029\\u202f\\u205f\\u3000\\ufeff]+/, nb = /[\\n\\r\\t]/g, H2 = /^[A-Za-z][A-Za-z0-9+-.]*:\\/\\//, ab = /:\\d+$/, $2 = /^([a-z][a-z0-9.+-]*:)?(\\/\\/)?([\\\\/]+)?([\\S\\s]*)/i, W2 = /^[a-zA-Z]:/;\nfunction Ed(t) {\n return (t || \"\").toString().replace(z2, \"\");\n}\nvar x_ = [\n [\"#\", \"hash\"],\n // Extract from the back.\n [\"?\", \"query\"],\n // Extract from the back.\n function(t, e) {\n return Zr(e.protocol) ? t.replace(/\\\\/g, \"/\") : t;\n },\n [\"/\", \"pathname\"],\n // Extract from the back.\n [\"@\", \"auth\", 1],\n // Extract from the front.\n [NaN, \"host\", void 0, 1, 1],\n // Set left over value.\n [/:(\\d*)$/, \"port\", void 0, 1],\n // RegExp the back.\n [NaN, \"hostname\", void 0, 1, 1]\n // Set left over.\n], Jf = {\n hash: 1,\n query: 1\n};\nfunction sb(t) {\n var e;\n typeof window < \"u\" ? e = window : typeof qr < \"u\" ? e = qr : typeof self < \"u\" ? e = self : e = {};\n var i = e.location || {};\n t = t || i;\n var r = {}, o = typeof t, l;\n if (t.protocol === \"blob:\")\n r = new en(unescape(t.pathname), {});\n else if (o === \"string\") {\n r = new en(t, {});\n for (l in Jf)\n delete r[l];\n } else if (o === \"object\") {\n for (l in t)\n l in Jf || (r[l] = t[l]);\n r.slashes === void 0 && (r.slashes = H2.test(t.href));\n }\n return r;\n}\nfunction Zr(t) {\n return t === \"file:\" || t === \"ftp:\" || t === \"http:\" || t === \"https:\" || t === \"ws:\" || t === \"wss:\";\n}\nfunction ob(t, e) {\n t = Ed(t), t = t.replace(nb, \"\"), e = e || {};\n var i = $2.exec(t), r = i[1] ? i[1].toLowerCase() : \"\", o = !!i[2], l = !!i[3], v = 0, E;\n return o ? l ? (E = i[2] + i[3] + i[4], v = i[2].length + i[3].length) : (E = i[2] + i[4], v = i[2].length) : l ? (E = i[3] + i[4], v = i[3].length) : E = i[4], r === \"file:\" ? v >= 2 && (E = E.slice(2)) : Zr(r) ? E = i[4] : r ? o && (E = E.slice(2)) : v >= 2 && Zr(e.protocol) && (E = i[4]), {\n protocol: r,\n slashes: o || Zr(r),\n slashesCount: v,\n rest: E\n };\n}\nfunction G2(t, e) {\n if (t === \"\")\n return e;\n for (var i = (e || \"/\").split(\"/\").slice(0, -1).concat(t.split(\"/\")), r = i.length, o = i[r - 1], l = !1, v = 0; r--; )\n i[r] === \".\" ? i.splice(r, 1) : i[r] === \"..\" ? (i.splice(r, 1), v++) : v && (r === 0 && (l = !0), i.splice(r, 1), v--);\n return l && i.unshift(\"\"), (o === \".\" || o === \"..\") && i.push(\"\"), i.join(\"/\");\n}\nfunction en(t, e, i) {\n if (t = Ed(t), t = t.replace(nb, \"\"), !(this instanceof en))\n return new en(t, e, i);\n var r, o, l, v, E, C, x = x_.slice(), g = typeof e, D = this, _ = 0;\n for (g !== \"object\" && g !== \"string\" && (i = e, e = null), i && typeof i != \"function\" && (i = dl.parse), e = sb(e), o = ob(t || \"\", e), r = !o.protocol && !o.slashes, D.slashes = o.slashes || r && e.slashes, D.protocol = o.protocol || e.protocol || \"\", t = o.rest, (o.protocol === \"file:\" && (o.slashesCount !== 2 || W2.test(t)) || !o.slashes && (o.protocol || o.slashesCount < 2 || !Zr(D.protocol))) && (x[3] = [/(.*)/, \"pathname\"]); _ < x.length; _++) {\n if (v = x[_], typeof v == \"function\") {\n t = v(t, D);\n continue;\n }\n l = v[0], C = v[1], l !== l ? D[C] = t : typeof l == \"string\" ? (E = l === \"@\" ? t.lastIndexOf(l) : t.indexOf(l), ~E && (typeof v[2] == \"number\" ? (D[C] = t.slice(0, E), t = t.slice(E + v[2])) : (D[C] = t.slice(E), t = t.slice(0, E)))) : (E = l.exec(t)) && (D[C] = E[1], t = t.slice(0, E.index)), D[C] = D[C] || r && v[3] && e[C] || \"\", v[4] && (D[C] = D[C].toLowerCase());\n }\n i && (D.query = i(D.query)), r && e.slashes && D.pathname.charAt(0) !== \"/\" && (D.pathname !== \"\" || e.pathname !== \"\") && (D.pathname = G2(D.pathname, e.pathname)), D.pathname.charAt(0) !== \"/\" && Zr(D.protocol) && (D.pathname = \"/\" + D.pathname), rb(D.port, D.protocol) || (D.host = D.hostname, D.port = \"\"), D.username = D.password = \"\", D.auth && (E = D.auth.indexOf(\":\"), ~E ? (D.username = D.auth.slice(0, E), D.username = encodeURIComponent(decodeURIComponent(D.username)), D.password = D.auth.slice(E + 1), D.password = encodeURIComponent(decodeURIComponent(D.password))) : D.username = encodeURIComponent(decodeURIComponent(D.auth)), D.auth = D.password ? D.username + \":\" + D.password : D.username), D.origin = D.protocol !== \"file:\" && Zr(D.protocol) && D.host ? D.protocol + \"//\" + D.host : \"null\", D.href = D.toString();\n}\nfunction K2(t, e, i) {\n var r = this;\n switch (t) {\n case \"query\":\n typeof e == \"string\" && e.length && (e = (i || dl.parse)(e)), r[t] = e;\n break;\n case \"port\":\n r[t] = e, rb(e, r.protocol) ? e && (r.host = r.hostname + \":\" + e) : (r.host = r.hostname, r[t] = \"\");\n break;\n case \"hostname\":\n r[t] = e, r.port && (e += \":\" + r.port), r.host = e;\n break;\n case \"host\":\n r[t] = e, ab.test(e) ? (e = e.split(\":\"), r.port = e.pop(), r.hostname = e.join(\":\")) : (r.hostname = e, r.port = \"\");\n break;\n case \"protocol\":\n r.protocol = e.toLowerCase(), r.slashes = !i;\n break;\n case \"pathname\":\n case \"hash\":\n if (e) {\n var o = t === \"pathname\" ? \"/\" : \"#\";\n r[t] = e.charAt(0) !== o ? o + e : e;\n } else\n r[t] = e;\n break;\n case \"username\":\n case \"password\":\n r[t] = encodeURIComponent(e);\n break;\n case \"auth\":\n var l = e.indexOf(\":\");\n ~l ? (r.username = e.slice(0, l), r.username = encodeURIComponent(decodeURIComponent(r.username)), r.password = e.slice(l + 1), r.password = encodeURIComponent(decodeURIComponent(r.password))) : r.username = encodeURIComponent(decodeURIComponent(e));\n }\n for (var v = 0; v < x_.length; v++) {\n var E = x_[v];\n E[4] && (r[E[1]] = r[E[1]].toLowerCase());\n }\n return r.auth = r.password ? r.username + \":\" + r.password : r.username, r.origin = r.protocol !== \"file:\" && Zr(r.protocol) && r.host ? r.protocol + \"//\" + r.host : \"null\", r.href = r.toString(), r;\n}\nfunction q2(t) {\n (!t || typeof t != \"function\") && (t = dl.stringify);\n var e, i = this, r = i.host, o = i.protocol;\n o && o.charAt(o.length - 1) !== \":\" && (o += \":\");\n var l = o + (i.protocol && i.slashes || Zr(i.protocol) ? \"//\" : \"\");\n return i.username ? (l += i.username, i.password && (l += \":\" + i.password), l += \"@\") : i.password ? (l += \":\" + i.password, l += \"@\") : i.protocol !== \"file:\" && Zr(i.protocol) && !r && i.pathname !== \"/\" && (l += \"@\"), (r[r.length - 1] === \":\" || ab.test(i.hostname) && !i.port) && (r += \":\"), l += r + i.pathname, e = typeof i.query == \"object\" ? t(i.query) : i.query, e && (l += e.charAt(0) !== \"?\" ? \"?\" + e : e), i.hash && (l += i.hash), l;\n}\nen.prototype = {\n set: K2,\n toString: q2\n};\nen.extractProtocol = ob;\nen.location = sb;\nen.trimLeft = Ed;\nen.qs = dl;\nvar ep = en, L_ = {}, Y2 = {\n get exports() {\n return L_;\n },\n set exports(t) {\n L_ = t;\n }\n};\nfunction X2(t) {\n throw new Error('Could not dynamically require \"' + t + '\". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.');\n}\nvar R_ = {}, Z2 = {\n get exports() {\n return R_;\n },\n set exports(t) {\n R_ = t;\n }\n};\nconst Q2 = {}, J2 = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({\n __proto__: null,\n default: Q2\n}, Symbol.toStringTag, {\n value: \"Module\"\n})), eL = /* @__PURE__ */ M2(J2);\nvar tp;\nfunction hl() {\n return tp || (tp = 1, function(t, e) {\n (function(i, r) {\n t.exports = r();\n })(qr, function() {\n var i = i || function(r, o) {\n var l;\n if (typeof window < \"u\" && window.crypto && (l = window.crypto), typeof self < \"u\" && self.crypto && (l = self.crypto), typeof globalThis < \"u\" && globalThis.crypto && (l = globalThis.crypto), !l && typeof window < \"u\" && window.msCrypto && (l = window.msCrypto), !l && typeof qr < \"u\" && qr.crypto && (l = qr.crypto), !l && typeof X2 == \"function\")\n try {\n l = eL;\n } catch (w) {\n }\n var v = function() {\n if (l) {\n if (typeof l.getRandomValues == \"function\")\n try {\n return l.getRandomValues(new Uint32Array(1))[0];\n } catch (w) {\n }\n if (typeof l.randomBytes == \"function\")\n try {\n return l.randomBytes(4).readInt32LE();\n } catch (w) {\n }\n }\n throw new Error(\"Native crypto module could not be used to get secure random number.\");\n }, E = Object.create || function() {\n function w() {\n }\n return function(S) {\n var R;\n return w.prototype = S, R = new w(), w.prototype = null, R;\n };\n }(), C = {}, x = C.lib = {}, g = x.Base = function() {\n return {\n /**\n * Creates a new object that inherits from this object.\n *\n * @param {Object} overrides Properties to copy into the new object.\n *\n * @return {Object} The new object.\n *\n * @static\n *\n * @example\n *\n * var MyType = CryptoJS.lib.Base.extend({\n * field: 'value',\n *\n * method: function () {\n * }\n * });\n */\n extend: function(w) {\n var S = E(this);\n return w && S.mixIn(w), (!S.hasOwnProperty(\"init\") || this.init === S.init) && (S.init = function() {\n S.$super.init.apply(this, arguments);\n }), S.init.prototype = S, S.$super = this, S;\n },\n /**\n * Extends this object and runs the init method.\n * Arguments to create() will be passed to init().\n *\n * @return {Object} The new object.\n *\n * @static\n *\n * @example\n *\n * var instance = MyType.create();\n */\n create: function() {\n var w = this.extend();\n return w.init.apply(w, arguments), w;\n },\n /**\n * Initializes a newly created object.\n * Override this method to add some logic when your objects are created.\n *\n * @example\n *\n * var MyType = CryptoJS.lib.Base.extend({\n * init: function () {\n * // ...\n * }\n * });\n */\n init: function() {\n },\n /**\n * Copies properties into this object.\n *\n * @param {Object} properties The properties to mix in.\n *\n * @example\n *\n * MyType.mixIn({\n * field: 'value'\n * });\n */\n mixIn: function(w) {\n for (var S in w)\n w.hasOwnProperty(S) && (this[S] = w[S]);\n w.hasOwnProperty(\"toString\") && (this.toString = w.toString);\n },\n /**\n * Creates a copy of this object.\n *\n * @return {Object} The clone.\n *\n * @example\n *\n * var clone = instance.clone();\n */\n clone: function() {\n return this.init.prototype.extend(this);\n }\n };\n }(), D = x.WordArray = g.extend({\n /**\n * Initializes a newly created word array.\n *\n * @param {Array} words (Optional) An array of 32-bit words.\n * @param {number} sigBytes (Optional) The number of significant bytes in the words.\n *\n * @example\n *\n * var wordArray = CryptoJS.lib.WordArray.create();\n * var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607]);\n * var wordArray = CryptoJS.lib.WordArray.create([0x00010203, 0x04050607], 6);\n */\n init: function(w, S) {\n w = this.words = w || [], S != o ? this.sigBytes = S : this.sigBytes = w.length * 4;\n },\n /**\n * Converts this word array to a string.\n *\n * @param {Encoder} encoder (Optional) The encoding strategy to use. Default: CryptoJS.enc.Hex\n *\n * @return {string} The stringified word array.\n *\n * @example\n *\n * var string = wordArray + '';\n * var string = wordArray.toString();\n * var string = wordArray.toString(CryptoJS.enc.Utf8);\n */\n toString: function(w) {\n return (w || m).stringify(this);\n },\n /**\n * Concatenates a word array to this word array.\n *\n * @param {WordArray} wordArray The word array to append.\n *\n * @return {WordArray} This word array.\n *\n * @example\n *\n * wordArray1.concat(wordArray2);\n */\n concat: function(w) {\n var S = this.words, R = w.words, z = this.sigBytes, W = w.sigBytes;\n if (this.clamp(), z % 4)\n for (var fe = 0; fe < W; fe++) {\n var q = R[fe >>> 2] >>> 24 - fe % 4 * 8 & 255;\n S[z + fe >>> 2] |= q << 24 - (z + fe) % 4 * 8;\n }\n else\n for (var ve = 0; ve < W; ve += 4)\n S[z + ve >>> 2] = R[ve >>> 2];\n return this.sigBytes += W, this;\n },\n /**\n * Removes insignificant bits.\n *\n * @example\n *\n * wordArray.clamp();\n */\n clamp: function() {\n var w = this.words, S = this.sigBytes;\n w[S >>> 2] &= 4294967295 << 32 - S % 4 * 8, w.length = r.ceil(S / 4);\n },\n /**\n * Creates a copy of this word array.\n *\n * @return {WordArray} The clone.\n *\n * @example\n *\n * var clone = wordArray.clone();\n */\n clone: function() {\n var w = g.clone.call(this);\n return w.words = this.words.slice(0), w;\n },\n /**\n * Creates a word array filled with random bytes.\n *\n * @param {number} nBytes The number of random bytes to generate.\n *\n * @return {WordArray} The random word array.\n *\n * @static\n *\n * @example\n *\n * var wordArray = CryptoJS.lib.WordArray.random(16);\n */\n random: function(w) {\n for (var S = [], R = 0; R < w; R += 4)\n S.push(v());\n return new D.init(S, w);\n }\n }), _ = C.enc = {}, m = _.Hex = {\n /**\n * Converts a word array to a hex string.\n *\n * @param {WordArray} wordArray The word array.\n *\n * @return {string} The hex string.\n *\n * @static\n *\n * @example\n *\n * var hexString = CryptoJS.enc.Hex.stringify(wordArray);\n */\n stringify: function(w) {\n for (var S = w.words, R = w.sigBytes, z = [], W = 0; W < R; W++) {\n var fe = S[W >>> 2] >>> 24 - W % 4 * 8 & 255;\n z.push((fe >>> 4).toString(16)), z.push((fe & 15).toString(16));\n }\n return z.join(\"\");\n },\n /**\n * Converts a hex string to a word array.\n *\n * @param {string} hexStr The hex string.\n *\n * @return {WordArray} The word array.\n *\n * @static\n *\n * @example\n *\n * var wordArray = CryptoJS.enc.Hex.parse(hexString);\n */\n parse: function(w) {\n for (var S = w.length, R = [], z = 0; z < S; z += 2)\n R[z >>> 3] |= parseInt(w.substr(z, 2), 16) << 24 - z % 8 * 4;\n return new D.init(R, S / 2);\n }\n }, p = _.Latin1 = {\n /**\n * Converts a word array to a Latin1 string.\n *\n * @param {WordArray} wordArray The word array.\n *\n * @return {string} The Latin1 string.\n *\n * @static\n *\n * @example\n *\n * var latin1String = CryptoJS.enc.Latin1.stringify(wordArray);\n */\n stringify: function(w) {\n for (var S = w.words, R = w.sigBytes, z = [], W = 0; W < R; W++) {\n var fe = S[W >>> 2] >>> 24 - W % 4 * 8 & 255;\n z.push(String.fromCharCode(fe));\n }\n return z.join(\"\");\n },\n /**\n * Converts a Latin1 string to a word array.\n *\n * @param {string} latin1Str The Latin1 string.\n *\n * @return {WordArray} The word array.\n *\n * @static\n *\n * @example\n *\n * var wordArray = CryptoJS.enc.Latin1.parse(latin1String);\n */\n parse: function(w) {\n for (var S = w.length, R = [], z = 0; z < S; z++)\n R[z >>> 2] |= (w.charCodeAt(z) & 255) << 24 - z % 4 * 8;\n return new D.init(R, S);\n }\n }, d = _.Utf8 = {\n /**\n * Converts a word array to a UTF-8 string.\n *\n * @param {WordArray} wordArray The word array.\n *\n * @return {string} The UTF-8 string.\n *\n * @static\n *\n * @example\n *\n * var utf8String = CryptoJS.enc.Utf8.stringify(wordArray);\n */\n stringify: function(w) {\n try {\n return decodeURIComponent(escape(p.stringify(w)));\n } catch (S) {\n throw new Error(\"Malformed UTF-8 data\");\n }\n },\n /**\n * Converts a UTF-8 string to a word array.\n *\n * @param {string} utf8Str The UTF-8 string.\n *\n * @return {WordArray} The word array.\n *\n * @static\n *\n * @example\n *\n * var wordArray = CryptoJS.enc.Utf8.parse(utf8String);\n */\n parse: function(w) {\n return p.parse(unescape(encodeURIComponent(w)));\n }\n }, u = x.BufferedBlockAlgorithm = g.extend({\n /**\n * Resets this block algorithm's data buffer to its initial state.\n *\n * @example\n *\n * bufferedBlockAlgorithm.reset();\n */\n reset: function() {\n this._data = new D.init(), this._nDataBytes = 0;\n },\n /**\n * Adds new data to this block algorithm's buffer.\n *\n * @param {WordArray|string} data The data to append. Strings are converted to a WordArray using UTF-8.\n *\n * @example\n *\n * bufferedBlockAlgorithm._append('data');\n * bufferedBlockAlgorithm._append(wordArray);\n */\n _append: function(w) {\n typeof w == \"string\" && (w = d.parse(w)), this._data.concat(w), this._nDataBytes += w.sigBytes;\n },\n /**\n * Processes available data blocks.\n *\n * This method invokes _doProcessBlock(offset), which must be implemented by a concrete subtype.\n *\n * @param {boolean} doFlush Whether all blocks and partial blocks should be processed.\n *\n * @return {WordArray} The processed data.\n *\n * @example\n *\n * var processedData = bufferedBlockAlgorithm._process();\n * var processedData = bufferedBlockAlgorithm._process(!!'flush');\n */\n _process: function(w) {\n var S, R = this._data, z = R.words, W = R.sigBytes, fe = this.blockSize, q = fe * 4, ve = W / q;\n w ? ve = r.ceil(ve) : ve = r.max((ve | 0) - this._minBufferSize, 0);\n var Ae = ve * fe, P = r.min(Ae * 4, W);\n if (Ae) {\n for (var Me = 0; Me < Ae; Me += fe)\n this._doProcessBlock(z, Me);\n S = z.splice(0, Ae), R.sigBytes -= P;\n }\n return new D.init(S, P);\n },\n /**\n * Creates a copy of this object.\n *\n * @return {Object} The clone.\n *\n * @example\n *\n * var clone = bufferedBlockAlgorithm.clone();\n */\n clone: function() {\n var w = g.clone.call(this);\n return w._data = this._data.clone(), w;\n },\n _minBufferSize: 0\n });\n x.Hasher = u.extend({\n /**\n * Configuration options.\n */\n cfg: g.extend(),\n /**\n * Initializes a newly created hasher.\n *\n * @param {Object} cfg (Optional) The configuration options to use for this hash computation.\n *\n * @example\n *\n * var hasher = CryptoJS.algo.SHA256.create();\n */\n init: function(w) {\n this.cfg = this.cfg.extend(w), this.reset();\n },\n /**\n * Resets this hasher to its initial state.\n *\n * @example\n *\n * hasher.reset();\n */\n reset: function() {\n u.reset.call(this), this._doReset();\n },\n /**\n * Updates this hasher with a message.\n *\n * @param {WordArray|string} messageUpdate The message to append.\n *\n * @return {Hasher} This hasher.\n *\n * @example\n *\n * hasher.update('message');\n * hasher.update(wordArray);\n */\n update: function(w) {\n return this._append(w), this._process(), this;\n },\n /**\n * Finalizes the hash computation.\n * Note that the finalize operation is effectively a destructive, read-once operation.\n *\n * @param {WordArray|string} messageUpdate (Optional) A final message update.\n *\n * @return {WordArray} The hash.\n *\n * @example\n *\n * var hash = hasher.finalize();\n * var hash = hasher.finalize('message');\n * var hash = hasher.finalize(wordArray);\n */\n finalize: function(w) {\n w && this._append(w);\n var S = this._doFinalize();\n return S;\n },\n blockSize: 16,\n /**\n * Creates a shortcut function to a hasher's object interface.\n *\n * @param {Hasher} hasher The hasher to create a helper for.\n *\n * @return {Function} The shortcut function.\n *\n * @static\n *\n * @example\n *\n * var SHA256 = CryptoJS.lib.Hasher._createHelper(CryptoJS.algo.SHA256);\n */\n _createHelper: function(w) {\n return function(S, R) {\n return new w.init(R).finalize(S);\n };\n },\n /**\n * Creates a shortcut function to the HMAC's object interface.\n *\n * @param {Hasher} hasher The hasher to use in this HMAC helper.\n *\n * @return {Function} The shortcut function.\n *\n * @static\n *\n * @example\n *\n * var HmacSHA256 = CryptoJS.lib.Hasher._createHmacHelper(CryptoJS.algo.SHA256);\n */\n _createHmacHelper: function(w) {\n return function(S, R) {\n return new U.HMAC.init(w, R).finalize(S);\n };\n }\n });\n var U = C.algo = {};\n return C;\n }(Math);\n return i;\n });\n }(Z2)), R_;\n}\n(function(t, e) {\n (function(i, r) {\n t.exports = r(hl());\n })(qr, function(i) {\n return i.enc.Hex;\n });\n})(Y2);\nconst cb = L_;\nvar C_ = {}, tL = {\n get exports() {\n return C_;\n },\n set exports(t) {\n C_ = t;\n }\n}, k_ = {}, iL = {\n get exports() {\n return k_;\n },\n set exports(t) {\n k_ = t;\n }\n}, ip;\nfunction lb() {\n return ip || (ip = 1, function(t, e) {\n (function(i, r) {\n t.exports = r(hl());\n })(qr, function(i) {\n return function(r) {\n var o = i, l = o.lib, v = l.WordArray, E = l.Hasher, C = o.algo, x = [], g = [];\n (function() {\n function m(U) {\n for (var w = r.sqrt(U), S = 2; S <= w; S++)\n if (!(U % S))\n return !1;\n return !0;\n }\n function p(U) {\n return (U - (U | 0)) * 4294967296 | 0;\n }\n for (var d = 2, u = 0; u < 64; )\n m(d) && (u < 8 && (x[u] = p(r.pow(d, 1 / 2))), g[u] = p(r.pow(d, 1 / 3)), u++), d++;\n })();\n var D = [], _ = C.SHA256 = E.extend({\n _doReset: function() {\n this._hash = new v.init(x.slice(0));\n },\n _doProcessBlock: function(m, p) {\n for (var d = this._hash.words, u = d[0], U = d[1], w = d[2], S = d[3], R = d[4], z = d[5], W = d[6], fe = d[7], q = 0; q < 64; q++) {\n if (q < 16)\n D[q] = m[p + q] | 0;\n else {\n var ve = D[q - 15], Ae = (ve << 25 | ve >>> 7) ^ (ve << 14 | ve >>> 18) ^ ve >>> 3, P = D[q - 2], Me = (P << 15 | P >>> 17) ^ (P << 13 | P >>> 19) ^ P >>> 10;\n D[q] = Ae + D[q - 7] + Me + D[q - 16];\n }\n var Ie = R & z ^ ~R & W, je = u & U ^ u & w ^ U & w, ke = (u << 30 | u >>> 2) ^ (u << 19 | u >>> 13) ^ (u << 10 | u >>> 22), H = (R << 26 | R >>> 6) ^ (R << 21 | R >>> 11) ^ (R << 7 | R >>> 25), ie = fe + H + Ie + g[q] + D[q], ye = ke + je;\n fe = W, W = z, z = R, R = S + ie | 0, S = w, w = U, U = u, u = ie + ye | 0;\n }\n d[0] = d[0] + u | 0, d[1] = d[1] + U | 0, d[2] = d[2] + w | 0, d[3] = d[3] + S | 0, d[4] = d[4] + R | 0, d[5] = d[5] + z | 0, d[6] = d[6] + W | 0, d[7] = d[7] + fe | 0;\n },\n _doFinalize: function() {\n var m = this._data, p = m.words, d = this._nDataBytes * 8, u = m.sigBytes * 8;\n return p[u >>> 5] |= 128 << 24 - u % 32, p[(u + 64 >>> 9 << 4) + 14] = r.floor(d / 4294967296), p[(u + 64 >>> 9 << 4) + 15] = d, m.sigBytes = p.length * 4, this._process(), this._hash;\n },\n clone: function() {\n var m = E.clone.call(this);\n return m._hash = this._hash.clone(), m;\n }\n });\n o.SHA256 = E._createHelper(_), o.HmacSHA256 = E._createHmacHelper(_);\n }(Math), i.SHA256;\n });\n }(iL)), k_;\n}\nvar I_ = {}, rL = {\n get exports() {\n return I_;\n },\n set exports(t) {\n I_ = t;\n }\n}, rp;\nfunction nL() {\n return rp || (rp = 1, function(t, e) {\n (function(i, r) {\n t.exports = r(hl());\n })(qr, function(i) {\n (function() {\n var r = i, o = r.lib, l = o.Base, v = r.enc, E = v.Utf8, C = r.algo;\n C.HMAC = l.extend({\n /**\n * Initializes a newly created HMAC.\n *\n * @param {Hasher} hasher The hash algorithm to use.\n * @param {WordArray|string} key The secret key.\n *\n * @example\n *\n * var hmacHasher = CryptoJS.algo.HMAC.create(CryptoJS.algo.SHA256, key);\n */\n init: function(x, g) {\n x = this._hasher = new x.init(), typeof g == \"string\" && (g = E.parse(g));\n var D = x.blockSize, _ = D * 4;\n g.sigBytes > _ && (g = x.finalize(g)), g.clamp();\n for (var m = this._oKey = g.clone(), p = this._iKey = g.clone(), d = m.words, u = p.words, U = 0; U < D; U++)\n d[U] ^= 1549556828, u[U] ^= 909522486;\n m.sigBytes = p.sigBytes = _, this.reset();\n },\n /**\n * Resets this HMAC to its initial state.\n *\n * @example\n *\n * hmacHasher.reset();\n */\n reset: function() {\n var x = this._hasher;\n x.reset(), x.update(this._iKey);\n },\n /**\n * Updates this HMAC with a message.\n *\n * @param {WordArray|string} messageUpdate The message to append.\n *\n * @return {HMAC} This HMAC instance.\n *\n * @example\n *\n * hmacHasher.update('message');\n * hmacHasher.update(wordArray);\n */\n update: function(x) {\n return this._hasher.update(x), this;\n },\n /**\n * Finalizes the HMAC computation.\n * Note that the finalize operation is effectively a destructive, read-once operation.\n *\n * @param {WordArray|string} messageUpdate (Optional) A final message update.\n *\n * @return {WordArray} The HMAC.\n *\n * @example\n *\n * var hmac = hmacHasher.finalize();\n * var hmac = hmacHasher.finalize('message');\n * var hmac = hmacHasher.finalize(wordArray);\n */\n finalize: function(x) {\n var g = this._hasher, D = g.finalize(x);\n g.reset();\n var _ = g.finalize(this._oKey.clone().concat(D));\n return _;\n }\n });\n })();\n });\n }(rL)), I_;\n}\n(function(t, e) {\n (function(i, r, o) {\n t.exports = r(hl(), lb(), nL());\n })(qr, function(i) {\n return i.HmacSHA256;\n });\n})(tL);\nconst aL = C_;\nvar sL = lb();\nconst oL = /* @__PURE__ */ P2(sL);\nfunction po(t, e, i = !1) {\n const r = aL(t, e);\n return i ? r.toString(cb) : r;\n}\nfunction np(t) {\n return oL(t).toString(cb);\n}\nfunction cL(t) {\n const e = new Date(t * 1e3), i = e.getUTCFullYear(), r = (\"0\" + (e.getUTCMonth() + 1)).slice(-2), o = (\"0\" + e.getUTCDate()).slice(-2);\n return `${i}-${r}-${o}`;\n}\nfunction wd(t) {\n const e = new ep(t.url), i = \"/\", r = \"content-type;host\", o = \"2022-06-23\", l = \"beijing\", v = \"vod\", E = `content-type:${t.contentType}\nhost:` + e.host, C = np(t.payload), x = t.method + `\n` + i + `\n` + e.query.substring(1) + `\n` + E + `\n` + r + `\n` + C, g = t.timestamp || Math.floor(Date.now() / 1e3), D = cL(g), _ = \"SL-HMAC-SHA256\", m = np(x), p = D + \"/\" + v + \"/sl_request\", d = _ + `\n` + g + `\n` + p + `\n` + m, u = po(D, \"SL\" + t.secretKey), U = po(v, u), w = po(\"sl_request\", U), S = po(d, w, !0), R = _ + \" Credential=\" + t.secretId + \"/\" + p + \", SignedHeaders=\" + r + \", Signature=\" + S + \"sl_request\", z = new ep(e.query, !0);\n return {\n header: {\n Authorization: R,\n \"Content-Type\": t.contentType,\n \"X-SL-Action\": z.query.Action || \"\",\n \"X-SL-Timestamp\": g.toString(),\n \"X-SL-Version\": o,\n \"X-SL-Region\": l,\n \"X-SL-Program-Language\": \"nodeJS\",\n SignatureVersion: \"1\",\n AccessKey: t.secretId\n }\n };\n}\nconst lL = (t) => 4e3 + Math.random() * 1e3;\nfunction On(t) {\n return typeof t == \"number\" ? t.toString() : t || \"\";\n}\nvar Ha = /* @__PURE__ */ ((t) => (t.SCROLL = \"scroll\", t.TOP = \"top\", t.BOTTOM = \"bottom\", t))(Ha || {}), Ma = /* @__PURE__ */ ((t) => (t[t.SMALL = 26] = \"SMALL\", t[t.MIDDLE = 25] = \"MIDDLE\", t[t.LARGE = 32] = \"LARGE\", t))(Ma || {});\nclass Kr {\n static verifyResponseMeta(e) {\n return typeof e.ErrorCode == \"string\" && typeof e.ErrorMessage == \"string\";\n }\n static verifyPullData(e) {\n if (e && e.ResponseMeta) {\n let i = !e.ResponseData;\n return e.ResponseData && (Array.isArray(e.ResponseData.Danmakus) ? i = e.ResponseData.Danmakus.reduce((r, o) => !!(r && typeof o.LikeCount == \"number\" && typeof o.Size == \"number\" && typeof o.Color == \"string\" && typeof o.UserId == \"string\" && typeof o.CreateTime == \"number\" && typeof o.Body == \"string\" && typeof o.DanmakuId == \"number\"), !0) : i = !1), Kr.verifyResponseMeta(e.ResponseMeta) && i;\n }\n return !1;\n }\n static parsePullData(e) {\n try {\n const i = JSON.parse(e);\n if (!Kr.verifyPullData(i))\n return;\n const r = i, o = [], l = r.ResponseMeta.RequestId, v = r.ResponseMeta.ErrorCode, E = r.ResponseMeta.ErrorMessage;\n let C, x;\n return r.ResponseData && (C = r.ResponseData.PositionFromInclude / 1e3, x = r.ResponseData.PositionToExclude / 1e3, r.ResponseData.Danmakus.forEach((g) => {\n let D = g.Color;\n if (!g.Color.startsWith(\"#\")) {\n const _ = parseInt(\"ffffff\", 16);\n D = Number.isFinite(_) ? `#${_.toString(16)}` : \"#FFFFFF\";\n }\n g.Body.trim() && o.push({\n id: g.DanmakuId,\n createTime: g.CreateTime,\n type: Ha.SCROLL,\n text: g.Body.trim(),\n color: D,\n fontSize: g.Size,\n startTime: g.Position / 1e3,\n userId: g.UserId,\n isMyLike: !!g.isLike,\n likeNum: g.LikeCount,\n rank: g.Rank,\n isReviewed: typeof g.IsReviewed > \"u\" ? !0 : !!g.IsReviewed\n });\n })), {\n requestId: l,\n errorCode: v,\n errorMessage: E,\n danmakus: o,\n from: C,\n to: x\n };\n } catch (i) {\n }\n }\n static verifySendData(e) {\n if (e && e.ResponseMeta) {\n let i = !e.ResponseData;\n return e.ResponseData && (i = typeof e.ResponseData.DanmakuId == \"number\"), Kr.verifyResponseMeta(e.ResponseMeta) && i;\n }\n return !1;\n }\n static parseSendData(e) {\n try {\n const i = JSON.parse(e);\n if (!Kr.verifyPullData(i))\n return;\n const r = i, o = r.ResponseMeta.RequestId, l = r.ResponseMeta.ErrorCode, v = r.ResponseMeta.ErrorMessage;\n let E;\n return r.ResponseData && (E = r.ResponseData.DanmakuId), {\n requestId: o,\n errorCode: l,\n errorMessage: v,\n danmakuId: E\n };\n } catch (i) {\n }\n }\n static verifyLikeData(e) {\n if (e && e.ResponseMeta) {\n let i = !e.ResponseData;\n return e.ResponseData && (i = typeof e.ResponseData.Message == \"string\" && typeof e.ResponseData.Result == \"number\"), Kr.verifyResponseMeta(e.ResponseMeta) && i;\n }\n return !1;\n }\n static parseLikeData(e) {\n try {\n const i = JSON.parse(e);\n if (!Kr.verifyPullData(i))\n return;\n const r = i, o = r.ResponseMeta.RequestId, l = r.ResponseMeta.ErrorCode, v = r.ResponseMeta.ErrorMessage;\n let E, C;\n return r.ResponseData && (E = r.ResponseData.Message, C = r.ResponseData.Result), {\n requestId: o,\n errorCode: l,\n errorMessage: v,\n message: E,\n result: C\n };\n } catch (i) {\n }\n }\n}\nconst ap = \"dm-loader\";\nclass Ad {\n constructor() {\n We(this, \"_context\"), We(this, \"_callbacks\"), We(this, \"_conf\"), We(this, \"_xhr\"), We(this, \"_retryCnt\", 0), We(this, \"_stat\"), We(this, \"_onXHRError\", () => {\n var e;\n this._onError(\"xhr error\", (e = this._xhr) == null ? void 0 : e.responseText);\n }), We(this, \"_onXHRTimeout\", () => {\n this._onError(\"timeout\");\n }), We(this, \"_onXHRLoad\", () => {\n const e = this._xhr;\n !e || !this._context || (this._stat.tload = performance.now(), Sn.i(ap, `loaded ${this._context.url} ${Math.floor(this._stat.tload - this._stat.tstart)}ms`), this._stat.code = e.status || 0, e.status < 200 || e.status > 299 ? this._onError(\"xhr error\", e.response) : this._callbacks && this._callbacks.onEnd && this._callbacks.onEnd(this._context, e.response, this._stat));\n }), We(this, \"_onError\", (e, i) => {\n var r, o;\n !this._context || !this._conf || (this._conf && this._retryCnt < this._conf.maxRetry ? (this._retryCnt++, this._load()) : (this._stat.text = e, this._stat.fatal = !0, this._stat.code = ((r = this._xhr) == null ? void 0 : r.status) || 0, this._destroyLoader(), (o = this._callbacks) != null && o.onError && this._callbacks.onError(this._context, i, this._stat)));\n }), this._stat = this._resetStat(), this._conf = {\n maxRetry: 0,\n timeout: 5e3\n };\n }\n load(e, i, r) {\n Sn.i(ap, `load ${e.url}`), this._context = e, this._callbacks = i, Object.assign(this._conf, r), this._stat.tstart = performance.now(), this._load();\n }\n destroy() {\n this._destroyLoader();\n }\n _load() {\n this._xhr && this._destroyLoader();\n const e = this._context;\n if (!e)\n return;\n const i = this._xhr = new XMLHttpRequest();\n i.open(e.requestMethod ? e.requestMethod : \"GET\", e.url, !0), this._conf.timeout > 0 && (i.timeout = this._conf.timeout), i.onerror = this._onXHRError, i.ontimeout = this._onXHRTimeout, i.onload = this._onXHRLoad, e.headers && e.headers.forEach((r) => {\n i.setRequestHeader(r.header, r.value);\n }), i.send(e.requestBody);\n }\n _destroyLoader() {\n this._xhr && (this._xhr.onprogress = null, this._xhr.onload = null, this._xhr.onerror = null, this._xhr.abort(), this._xhr = void 0);\n }\n _resetStat() {\n return {\n code: 0,\n fatal: !1,\n text: \"\",\n retry: 0,\n tstart: 0,\n tload: 0\n };\n }\n}\nconst ka = \"danmaku-sender\";\nclass uL {\n constructor(e) {\n We(this, \"_ctx\"), We(this, \"_loader\"), We(this, \"_loaderCallback\"), We(this, \"_loaderConf\"), We(this, \"_lastRequestTs\", 0), We(this, \"_loaderEnd\", (i, r, o) => {\n if (Be.i(ka, `send complete. ${o.code} ${o.text}`), this._destroyLoader(), r) {\n const l = Kr.parseSendData(r);\n l != null && l.danmakuId && (i.danmaku.id = l.danmakuId);\n }\n }), We(this, \"_loaderError\", (i, r, o) => {\n Be.i(ka, `error. ${o.code} ${o.text} ${r}`), this._destroyLoader();\n }), Be.i(ka, \"constructor\"), this._ctx = e, this._loaderCallback = {\n onEnd: this._loaderEnd,\n onError: this._loaderError\n }, this._loaderConf = {\n maxRetry: e.config.networkMaxRetry,\n timeout: e.config.networkTimeout\n };\n }\n destroy() {\n Be.i(ka, \"destroy\"), this._destroyLoader();\n }\n send(e) {\n return Be.i(ka, \"send\", e), this._verify(e) ? (this._load(e), !0) : (Be.i(ka, \"send cancel, data error.\"), !1);\n }\n _verify(e) {\n var i;\n const r = (i = this._ctx.player) == null ? void 0 : i.bizData, o = !!(r != null && r.secretId && r != null && r.secretKey && r != null && r.userId && r != null && r.resourceId);\n return e.text = e.text.trim(), performance.now() - this._lastRequestTs > Mg * 1e3 && !!e.text && o;\n }\n _load(e) {\n var i;\n this._destroyLoader();\n const r = (i = this._ctx.player) == null ? void 0 : i.bizData;\n if (!r || !r.secretId || !r.secretKey || !r.userId || !r.resourceId)\n return;\n const o = JSON.stringify({\n ResourceId: On(r.resourceId),\n UserId: On(r.userId),\n Body: e.text,\n Position: Math.floor(e.startTime * 1e3),\n Color: e.color,\n size: e.fontSize,\n DanmakuType: 0,\n GenerateType: 1\n }), l = this._ctx.sendUrl, v = [], E = \"POST\", C = wd({\n secretId: r.secretId,\n secretKey: r.secretKey,\n payload: o,\n method: E,\n url: l,\n service: \"vod\",\n contentType: \"application/json\"\n });\n Object.keys(C.header).forEach((g) => v.push({\n header: g,\n value: C.header[g]\n }));\n const x = {\n danmaku: e,\n url: l,\n headers: v,\n requestBody: o,\n requestMethod: E\n };\n this._lastRequestTs = performance.now(), this._loader = new Ad(), this._loader.load(x, this._loaderCallback, this._loaderConf);\n }\n _destroyLoader() {\n this._loader && (this._loader.destroy(), this._loader = void 0);\n }\n}\nvar fl, xi, au, sp, Bc = 0, ub = [], Go = [], op = St.__b, cp = St.__r, lp = St.diffed, up = St.__c, _p = St.unmount;\nfunction Td(t, e) {\n St.__h && St.__h(xi, t, Bc || e), Bc = 0;\n var i = xi.__H || (xi.__H = { __: [], __h: [] });\n return t >= i.__.length && i.__.push({ __V: Go }), i.__[t];\n}\nfunction Ui(t) {\n return Bc = 1, _L(db, t);\n}\nfunction _L(t, e, i) {\n var r = Td(fl++, 2);\n if (r.t = t, !r.__c && (r.__ = [i ? i(e) : db(void 0, e), function(E) {\n var C = r.__N ? r.__N[0] : r.__[0], x = r.t(C, E);\n C !== x && (r.__N = [x, r.__[1]], r.__c.setState({}));\n }], r.__c = xi, !xi.u)) {\n var o = function(E, C, x) {\n if (!r.__c.__H)\n return !0;\n var g = r.__c.__H.__.filter(function(_) {\n return _.__c;\n });\n if (g.every(function(_) {\n return !_.__N;\n }))\n return !l || l.call(this, E, C, x);\n var D = !1;\n return g.forEach(function(_) {\n if (_.__N) {\n var m = _.__[0];\n _.__ = _.__N, _.__N = void 0, m !== _.__[0] && (D = !0);\n }\n }), !(!D && r.__c.props === E) && (!l || l.call(this, E, C, x));\n };\n xi.u = !0;\n var l = xi.shouldComponentUpdate, v = xi.componentWillUpdate;\n xi.componentWillUpdate = function(E, C, x) {\n if (this.__e) {\n var g = l;\n l = void 0, o(E, C, x), l = g;\n }\n v && v.call(this, E, C, x);\n }, xi.shouldComponentUpdate = o;\n }\n return r.__N || r.__;\n}\nfunction kn(t, e) {\n var i = Td(fl++, 3);\n !St.__s && _b(i.__H, e) && (i.__ = t, i.i = e, xi.__H.__h.push(i));\n}\nfunction dp(t) {\n return Bc = 5, dL(function() {\n return { current: t };\n }, []);\n}\nfunction dL(t, e) {\n var i = Td(fl++, 7);\n return _b(i.__H, e) ? (i.__V = t(), i.i = e, i.__h = t, i.__V) : i.__;\n}\nfunction hL() {\n for (var t; t = ub.shift(); )\n if (t.__P && t.__H)\n try {\n t.__H.__h.forEach(Ko), t.__H.__h.forEach(D_), t.__H.__h = [];\n } catch (e) {\n t.__H.__h = [], St.__e(e, t.__v);\n }\n}\nSt.__b = function(t) {\n xi = null, op && op(t);\n}, St.__r = function(t) {\n cp && cp(t), fl = 0;\n var e = (xi = t.__c).__H;\n e && (au === xi ? (e.__h = [], xi.__h = [], e.__.forEach(function(i) {\n i.__N && (i.__ = i.__N), i.__V = Go, i.__N = i.i = void 0;\n })) : (e.__h.forEach(Ko), e.__h.forEach(D_), e.__h = [])), au = xi;\n}, St.diffed = function(t) {\n lp && lp(t);\n var e = t.__c;\n e && e.__H && (e.__H.__h.length && (ub.push(e) !== 1 && sp === St.requestAnimationFrame || ((sp = St.requestAnimationFrame) || fL)(hL)), e.__H.__.forEach(function(i) {\n i.i && (i.__H = i.i), i.__V !== Go && (i.__ = i.__V), i.i = void 0, i.__V = Go;\n })), au = xi = null;\n}, St.__c = function(t, e) {\n e.some(function(i) {\n try {\n i.__h.forEach(Ko), i.__h = i.__h.filter(function(r) {\n return !r.__ || D_(r);\n });\n } catch (r) {\n e.some(function(o) {\n o.__h && (o.__h = []);\n }), e = [], St.__e(r, i.__v);\n }\n }), up && up(t, e);\n}, St.unmount = function(t) {\n _p && _p(t);\n var e, i = t.__c;\n i && i.__H && (i.__H.__.forEach(function(r) {\n try {\n Ko(r);\n } catch (o) {\n e = o;\n }\n }), i.__H = void 0, e && St.__e(e, i.__v));\n};\nvar hp = typeof requestAnimationFrame == \"function\";\nfunction fL(t) {\n var e, i = function() {\n clearTimeout(r), hp && cancelAnimationFrame(e), setTimeout(t);\n }, r = setTimeout(i, 100);\n hp && (e = requestAnimationFrame(i));\n}\nfunction Ko(t) {\n var e = xi, i = t.__c;\n typeof i == \"function\" && (t.__c = void 0, i()), xi = e;\n}\nfunction D_(t) {\n var e = xi;\n t.__c = t.__(), xi = e;\n}\nfunction _b(t, e) {\n return !t || t.length !== e.length || e.some(function(i, r) {\n return i !== t[r];\n });\n}\nfunction db(t, e) {\n return typeof e == \"function\" ? e(t) : e;\n}\nconst Ua = \"#FFFFFF\", fp = \"#1180FF\";\nvar pL = 0;\nfunction Ke(t, e, i, r, o, l) {\n var v, E, C = {};\n for (E in e)\n E == \"ref\" ? v = e[E] : C[E] = e[E];\n var x = { type: t, props: C, key: i, ref: v, __k: null, __: null, __b: 0, __e: null, __d: void 0, __c: null, __h: null, constructor: void 0, __v: --pL, __source: o, __self: l };\n if (typeof t == \"function\" && (v = t.defaultProps))\n for (E in v)\n C[E] === void 0 && (C[E] = v[E]);\n return St.vnode && St.vnode(x), x;\n}\nfunction mL(t) {\n return Ke(\"svg\", {\n \"data-kp-role\": \"danmaku-open\",\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: [Ke(\"title\", {\n children: \"编组 2\"\n }), Ke(\"g\", {\n id: \"页面-2\",\n stroke: \"none\",\n \"stroke-width\": \"1\",\n fill: \"none\",\n \"fill-rule\": \"evenodd\",\n children: Ke(\"g\", {\n id: \"编组-2\",\n children: [Ke(\"rect\", {\n id: \"矩形\",\n x: \"0\",\n y: \"0\",\n width: \"38\",\n height: \"38\"\n }), Ke(\"g\", {\n id: \"弹幕打开\",\n transform: \"translate(4.000000, 5.000000)\",\n children: [Ke(\"g\", {\n id: \"编组-4\",\n transform: \"translate(6.554525, 5.666667)\",\n stroke: \"#FFFFFF\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n \"stroke-width\": \"1.5\",\n children: [Ke(\"path\", {\n d: \"M0.112141927,1.33333333 L3.11214193,1.33333333 L3.11214193,4.87859378 L0.112141927,4.87859378 L0.112141927,8.16413676 L3.11214193,8.16413676 L3.11214193,10.3333333 C3.11214193,11.9901876 1.76899618,13.3333333 0.112141927,13.3333333 L0.112141927,13.3333333 L0.112141927,13.3333333\",\n id: \"路径-7\"\n }), Ke(\"line\", {\n x1: \"6.94547526\",\n y1: \"0.833333333\",\n x2: \"8.11214193\",\n y2: \"2.33333333\",\n id: \"路径-8\"\n }), Ke(\"line\", {\n x1: \"11.9454753\",\n y1: \"0.833333333\",\n x2: \"13.1121419\",\n y2: \"2.33333333\",\n id: \"路径-8\",\n transform: \"translate(12.112142, 1.333333) scale(-1, 1) translate(-12.112142, -1.333333) \"\n }), Ke(\"rect\", {\n id: \"矩形\",\n x: \"5.44547526\",\n y: \"2.33333333\",\n width: \"8\",\n height: \"7\",\n rx: \"1\"\n }), Ke(\"line\", {\n x1: \"5.94547526\",\n y1: \"11.8333333\",\n x2: \"12.9454753\",\n y2: \"11.8333333\",\n id: \"路径-10\"\n }), Ke(\"line\", {\n x1: \"9.55680339\",\n y1: \"2.40739089\",\n x2: \"9.55680339\",\n y2: \"14.1673909\",\n id: \"路径-11\"\n }), Ke(\"line\", {\n x1: \"7.94547526\",\n y1: \"5.83333333\",\n x2: \"10.9454753\",\n y2: \"5.83333333\",\n id: \"路径-9\"\n })]\n }), Ke(\"g\", {\n id: \"编组-3\",\n children: [Ke(\"path\", {\n d: \"M26,11.5158772 C25.2610945,5.03506428 19.7414645,0 13.0420301,0 C5.83911577,0 0,5.82029825 0,13 C0,20.1797017 5.83911577,26 13.0420301,26 C14.3703904,26 15.652367,25.8020477 16.8598897,25.4341229\",\n id: \"路径\",\n stroke: \"#FFFFFF\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }), Ke(\"circle\", {\n id: \"椭圆形\",\n fill: \"#1180FF\",\n cx: \"25.5\",\n cy: \"20.5\",\n r: \"6.5\"\n }), Ke(\"polyline\", {\n id: \"路径-6备份\",\n stroke: \"#FFFFFF\",\n \"stroke-width\": \"1.5\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n points: \"22 20.6078195 24.6204806 22.9042904 29 18.9042904\"\n })]\n })]\n })]\n })\n })]\n });\n}\nfunction vL(t) {\n return Ke(\"svg\", {\n \"data-kp-role\": \"danmaku-close\",\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: [Ke(\"title\", {\n children: \"编组 2\"\n }), Ke(\"g\", {\n id: \"页面-2\",\n stroke: \"none\",\n \"stroke-width\": \"1\",\n fill: \"none\",\n \"fill-rule\": \"evenodd\",\n children: Ke(\"g\", {\n id: \"编组-2\",\n children: [Ke(\"rect\", {\n id: \"矩形\",\n x: \"0\",\n y: \"0\",\n width: \"38\",\n height: \"38\"\n }), Ke(\"g\", {\n id: \"弹幕关闭\",\n transform: \"translate(4.000000, 5.000000)\",\n children: [Ke(\"g\", {\n id: \"编组-4\",\n transform: \"translate(6.554525, 5.666667)\",\n stroke: \"#FFFFFF\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n \"stroke-width\": \"1.5\",\n children: [Ke(\"path\", {\n d: \"M0.112141927,1.33333333 L3.11214193,1.33333333 L3.11214193,4.87859378 L0.112141927,4.87859378 L0.112141927,8.16413676 L3.11214193,8.16413676 L3.11214193,10.3333333 C3.11214193,11.9901876 1.76899618,13.3333333 0.112141927,13.3333333 L0.112141927,13.3333333 L0.112141927,13.3333333\",\n id: \"路径-7\"\n }), Ke(\"line\", {\n x1: \"6.94547526\",\n y1: \"0.833333333\",\n x2: \"8.11214193\",\n y2: \"2.33333333\",\n id: \"路径-8\"\n }), Ke(\"line\", {\n x1: \"11.9454753\",\n y1: \"0.833333333\",\n x2: \"13.1121419\",\n y2: \"2.33333333\",\n id: \"路径-8\",\n transform: \"translate(12.112142, 1.333333) scale(-1, 1) translate(-12.112142, -1.333333) \"\n }), Ke(\"rect\", {\n id: \"矩形\",\n x: \"5.44547526\",\n y: \"2.33333333\",\n width: \"8\",\n height: \"7\",\n rx: \"1\"\n }), Ke(\"line\", {\n x1: \"5.94547526\",\n y1: \"11.8333333\",\n x2: \"12.9454753\",\n y2: \"11.8333333\",\n id: \"路径-10\"\n }), Ke(\"line\", {\n x1: \"9.55680339\",\n y1: \"2.40739089\",\n x2: \"9.55680339\",\n y2: \"14.1673909\",\n id: \"路径-11\"\n }), Ke(\"line\", {\n x1: \"7.94547526\",\n y1: \"5.83333333\",\n x2: \"10.9454753\",\n y2: \"5.83333333\",\n id: \"路径-9\"\n })]\n }), Ke(\"g\", {\n id: \"编组-3\",\n children: [Ke(\"path\", {\n d: \"M26,11.5158772 C25.2610945,5.03506428 19.7414645,0 13.0420301,0 C5.83911577,0 0,5.82029825 0,13 C0,20.1797017 5.83911577,26 13.0420301,26 C14.3703904,26 15.652367,25.8020477 16.8598897,25.4341229\",\n id: \"路径\",\n stroke: \"#FFFFFF\",\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }), Ke(\"circle\", {\n id: \"椭圆形\",\n stroke: \"#C12121\",\n \"stroke-width\": \"1.5\",\n cx: \"25.5\",\n cy: \"20.5\",\n r: \"5.5\"\n }), Ke(\"line\", {\n x1: \"21.5\",\n y1: \"17.5\",\n x2: \"29.5\",\n y2: \"23.5\",\n id: \"路径-6备份\",\n stroke: \"#C12121\",\n \"stroke-width\": \"1.5\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n })]\n })]\n })]\n })\n })]\n });\n}\nfunction gL(t) {\n const e = t.color || Ua;\n return Ke(\"svg\", {\n \"data-kp-role\": \"danmaku-setup\",\n className: t.className,\n width: \"38px\",\n height: \"38px\",\n viewBox: \"0 0 38 38\",\n children: Ke(\"g\", {\n id: \"页面-2\",\n stroke: \"none\",\n \"stroke-width\": \"1\",\n fill: \"none\",\n \"fill-rule\": \"evenodd\",\n children: Ke(\"g\", {\n id: \"编组-2\",\n children: [Ke(\"rect\", {\n id: \"矩形\",\n x: \"0\",\n y: \"0\",\n width: \"38\",\n height: \"38\"\n }), Ke(\"g\", {\n id: \"编组\",\n transform: \"translate(4.000000, 5.000000)\",\n children: [Ke(\"g\", {\n id: \"编组-4\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\",\n transform: \"translate(6.666667, 6.500000)\",\n stroke: e,\n \"stroke-width\": \"1.5\",\n children: [Ke(\"path\", {\n d: \"M3.05311332e-16,0.499999997 L3,0.499999997 L3,4.04526045 L3.05311332e-16,4.04526045 L3.05311332e-16,7.33080343 L3,7.33080343 L3,9.5 C3,11.1568543 1.65685425,12.5 3.05311332e-16,12.5 L3.05311332e-16,12.5 L3.05311332e-16,12.5\",\n id: \"路径-7\"\n }), Ke(\"line\", {\n x1: \"6.83333333\",\n y1: \"-5.55111512e-16\",\n x2: \"8\",\n y2: \"1.5\",\n id: \"路径-8\"\n }), Ke(\"line\", {\n x1: \"11.0000002\",\n y1: \"-5.55111512e-16\",\n x2: \"12.1666668\",\n y2: \"1.5\",\n id: \"路径-8\",\n transform: \"translate(11.583333, 0.750000) scale(-1, 1) translate(-11.583333, -0.750000) \"\n }), Ke(\"rect\", {\n id: \"矩形\",\n x: \"5.33333333\",\n y: \"1.5\",\n width: \"8\",\n height: \"7\",\n rx: \"1\"\n }), Ke(\"line\", {\n x1: \"5.83333333\",\n y1: \"11\",\n x2: \"12.8333334\",\n y2: \"11\",\n id: \"路径-10\"\n }), Ke(\"line\", {\n x1: \"9.44466146\",\n y1: \"1.57405756\",\n x2: \"9.44466146\",\n y2: \"13.3340576\",\n id: \"路径-11\"\n }), Ke(\"line\", {\n x1: \"7.83333333\",\n y1: \"5\",\n x2: \"10.8333334\",\n y2: \"5\",\n id: \"路径-9\"\n })]\n }), Ke(\"g\", {\n id: \"编组-3\",\n children: [Ke(\"path\", {\n d: \"M26,11.5158772 C25.2610945,5.03506428 19.7414645,0 13.0420301,0 C5.83911577,0 0,5.82029825 0,13 C0,20.1797017 5.83911577,26 13.0420301,26 C14.3703904,26 15.652367,25.8020477 16.8598897,25.4341229\",\n id: \"路径\",\n stroke: t.color,\n \"stroke-width\": \"2\",\n \"stroke-linecap\": \"round\",\n \"stroke-linejoin\": \"round\"\n }), Ke(\"path\", {\n d: \"M27,14.5773503 L31.0621778,16.9226497 C31.68098,17.2799153 32.0621778,17.9401694 32.0621778,18.6547005 L32.0621778,23.3452995 C32.0621778,24.0598306 31.68098,24.7200847 31.0621778,25.0773503 L27,27.4226497 C26.3811978,27.7799153 25.6188022,27.7799153 25,27.4226497 L20.9378222,25.0773503 C20.31902,24.7200847 19.9378222,24.0598306 19.9378222,23.3452995 L19.9378222,18.6547005 C19.9378222,17.9401694 20.31902,17.2799153 20.9378222,16.9226497 L25,14.5773503 C25.6188022,14.2200847 26.3811978,14.2200847 27,14.5773503 Z\",\n id: \"多边形\",\n fill: \"#1180FF\",\n \"fill-rule\": \"nonzero\"\n }), Ke(\"circle\", {\n id: \"椭圆形\",\n stroke: \"#FFFFFF\",\n \"stroke-width\": \"1.5\",\n cx: \"26\",\n cy: \"21\",\n r: \"2\"\n })]\n })]\n })]\n })\n })\n });\n}\nfunction bL(t) {\n return t.color === Ua ? Ke(\"img\", {\n className: t.className,\n style: \"display:block;\",\n src: \"data:image/png;base64,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\"\n }) : Ke(\"img\", {\n className: t.className,\n style: \"display:block;\",\n src: \"data:image/png;base64,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\"\n });\n}\nconst yL = \"_setup_1q1os_28\", EL = \"_login_1q1os_326\", yt = {\n \"danmaku-control-panel\": \"_danmaku-control-panel_1q1os_1\",\n \"danmaku-panel\": \"_danmaku-panel_1q1os_6\",\n \"button-icon\": \"_button-icon_1q1os_15\",\n \"danmaku-control-btn\": \"_danmaku-control-btn_1q1os_23\",\n setup: yL,\n \"input-box\": \"_input-box_1q1os_32\",\n \"input-color\": \"_input-color_1q1os_41\",\n \"color-panel-btn\": \"_color-panel-btn_1q1os_55\",\n \"input-text\": \"_input-text_1q1os_59\",\n \"input-ipt\": \"_input-ipt_1q1os_70\",\n \"text-len\": \"_text-len_1q1os_110\",\n \"send-btn\": \"_send-btn_1q1os_126\",\n \"is-disabled\": \"_is-disabled_1q1os_141\",\n \"send-text\": \"_send-text_1q1os_146\",\n \"color-panel\": \"_color-panel_1q1os_55\",\n \"color-title\": \"_color-title_1q1os_169\",\n \"color-list\": \"_color-list_1q1os_178\",\n \"color-item-box\": \"_color-item-box_1q1os_186\",\n \"color-item\": \"_color-item_1q1os_186\",\n \"color-selected\": \"_color-selected_1q1os_202\",\n \"setup-panel\": \"_setup-panel_1q1os_207\",\n \"setup-title\": \"_setup-title_1q1os_223\",\n \"setup-title-text\": \"_setup-title-text_1q1os_232\",\n \"setup-list\": \"_setup-list_1q1os_236\",\n \"setup-item\": \"_setup-item_1q1os_246\",\n \"setup-item-name\": \"_setup-item-name_1q1os_254\",\n \"setup-item-value\": \"_setup-item-value_1q1os_259\",\n \"setup-value-list\": \"_setup-value-list_1q1os_270\",\n \"setup-value-item\": \"_setup-value-item_1q1os_279\",\n \"setup-value-selected\": \"_setup-value-selected_1q1os_285\",\n \"setup-value-show\": \"_setup-value-show_1q1os_295\",\n \"setup-item-thumb\": \"_setup-item-thumb_1q1os_305\",\n \"setup-item-info\": \"_setup-item-info_1q1os_317\",\n login: EL,\n \"login-link\": \"_login-link_1q1os_338\"\n};\nfunction wL(t) {\n const {\n selectedTextColor: e\n } = t;\n return Ke(\"div\", {\n \"data-kp-role\": \"color-panel\",\n className: yt[\"color-panel\"],\n children: [Ke(\"div\", {\n className: yt[\"color-title\"],\n children: \"弹幕颜色\"\n }), Ke(\"div\", {\n className: yt[\"color-list\"],\n children: Ng.map((i, r) => {\n let o = yt[\"color-item\"];\n return r === 0 && !e ? o += ` ${yt[\"color-selected\"]}` : i === e && (o += ` ${yt[\"color-selected\"]}`), Ke(\"div\", {\n className: yt[\"color-item-box\"],\n onClick: () => {\n t.changeTextColor(i);\n },\n children: Ke(\"div\", {\n className: o,\n style: {\n backgroundColor: i\n }\n })\n });\n })\n })]\n });\n}\nfunction su(t) {\n const e = t.step || 1, i = t.min || 0, r = t.max || 100, o = t.showStops || !1, l = Math.ceil((r - i) / e) + 1, v = e / (r - i), E = new Array(l).fill(\"\"), C = (u) => {\n if (e) {\n let U = Math.floor((u - i) / e) * e + i, w = Math.min(Math.ceil((u - i) / e) * e + i, r);\n return u - U > w - u ? w : U;\n }\n return u;\n }, x = (u) => (C(u) - i) / (r - i) * 100, [g, D] = Ui(x(t.value));\n kn(() => {\n D(x(t.value));\n }, [t.value]);\n const _ = dp(null), m = dp(!1), p = (u) => {\n m.current = !0, d(u);\n };\n kn(() => {\n const u = (w) => {\n d(w);\n }, U = () => {\n m.current = !1;\n };\n return document.addEventListener(\"mousemove\", u, !0), document.addEventListener(\"mouseup\", U), () => {\n document.removeEventListener(\"mousemove\", u, !0), document.removeEventListener(\"mouseup\", U);\n };\n });\n const d = (u) => {\n if (!m.current)\n return;\n const U = _.current;\n if (!U)\n return;\n const {\n left: w,\n width: S\n } = U.getBoundingClientRect();\n let R = i + Math.min(1, Math.max(0, (u.clientX - w) / S)) * (r - i);\n o && (R = C(R)), t.updateHandle(R);\n };\n return Ke(\"div\", {\n ref: _,\n className: yt[\"setup-item-value\"],\n style: {\n cursor: \"pointer\"\n },\n onMouseDown: p,\n \"data-kp-role\": t[\"data-kp-role\"] || \"\",\n children: [o && Ke(\"div\", {\n className: yt[\"setup-value-list\"],\n children: E.map((u, U) => Ke(\"svg\", {\n width: \"3\",\n height: \"3\",\n viewBox: \"0 0 3 3\",\n className: yt[\"setup-value-item\"],\n style: {\n left: `${U * v * 100 > 100 ? 100 : U * v * 100}%`\n },\n children: Ke(\"rect\", {\n x: \"0\",\n y: \"0\",\n width: \"100%\",\n height: \"100%\",\n style: \"fill: #fff\"\n })\n }))\n }), Ke(\"div\", {\n className: yt[\"setup-item-thumb\"],\n style: {\n \"--selectedValue\": g + \"%\"\n }\n }), Ke(\"div\", {\n className: yt[\"setup-value-selected\"],\n style: {\n \"--selectedValue\": g + \"%\"\n }\n }), Ke(\"div\", {\n className: yt[\"setup-value-show\"]\n })]\n });\n}\nfunction AL(t) {\n const {\n selectedOpacity: e,\n selectedFontSizeObj: i,\n selectedSpeedObj: r\n } = t, o = xr.findIndex((p) => p.value === i.value), l = Lr.findIndex((p) => p.value === r.value), [v, E] = Ui(e);\n kn(() => {\n E(e);\n }, [e]);\n const C = (p) => {\n t.changeOpacity(p), E(p);\n }, [x, g] = Ui(o);\n kn(() => {\n g(xr.findIndex((p) => p.value === i.value));\n }, [i]);\n const [D, _] = Ui(l);\n kn(() => {\n _(Lr.findIndex((p) => p.value === r.value));\n }, [r]);\n const m = (p, d, u) => {\n let U = u[p];\n d(U), u === xr ? g(p) : u === Lr && _(p);\n };\n return Ke(\"div\", {\n \"data-kp-role\": \"setup-panel\",\n className: yt[\"setup-panel\"],\n children: [Ke(\"div\", {\n className: yt[\"setup-title\"],\n children: Ke(\"div\", {\n className: yt[\"setup-title-text\"],\n children: \"弹幕设置\"\n })\n }), Ke(\"div\", {\n className: yt[\"setup-list\"],\n children: [Ke(\"div\", {\n className: yt[\"setup-item\"],\n children: [Ke(\"div\", {\n className: yt[\"setup-item-name\"],\n children: Ke(\"div\", {\n children: \"不透明度\"\n })\n }), Ke(su, {\n \"data-kp-role\": \"opacity\",\n value: v,\n updateHandle: C,\n step: 0.01,\n max: Nc,\n min: Oc\n }), Ke(\"div\", {\n className: yt[\"setup-item-info\"],\n children: Ke(\"div\", {\n children: Math.round(v * 100) + \"%\"\n })\n })]\n }), Ke(\"div\", {\n className: yt[\"setup-item\"],\n children: [Ke(\"div\", {\n className: yt[\"setup-item-name\"],\n children: Ke(\"div\", {\n children: \"字号大小\"\n })\n }), Ke(su, {\n \"data-kp-role\": \"fontsize\",\n step: 1,\n max: xr.length - 1,\n min: 0,\n value: x,\n showStops: !0,\n updateHandle: (p) => m(p, t.changeFontSizeMultiple, xr)\n }), Ke(\"div\", {\n className: yt[\"setup-item-info\"],\n children: Ke(\"div\", {\n children: xr[x].label\n })\n })]\n }), Ke(\"div\", {\n className: yt[\"setup-item\"],\n children: [Ke(\"div\", {\n className: yt[\"setup-item-name\"],\n children: Ke(\"div\", {\n children: \"弹幕速度\"\n })\n }), Ke(su, {\n \"data-kp-role\": \"speed\",\n min: 0,\n max: Lr.length - 1,\n value: D,\n step: 1,\n showStops: !0,\n updateHandle: (p) => m(p, t.changeSpeedMultiple, Lr)\n }), Ke(\"div\", {\n className: yt[\"setup-item-info\"],\n children: Ke(\"div\", {\n children: Lr[D].label\n })\n })]\n })]\n })]\n });\n}\nfunction TL(t) {\n const {\n renderer: e,\n ctx: i,\n sender: r\n } = t, [o, l] = Ui(Ua), [v, E] = Ui(!1), [C, x] = Ui(Ua), [g, D] = Ui(!1), [_, m] = Ui(i.setting.color), [p, d] = Ui(i.setting.opacityMultiple), [u, U] = Ui(i.setting.fontSizeMultipleItem), [w, S] = Ui(i.setting.durationMultipleItem), [R, z] = Ui(i.setting.isShow), [W, fe] = Ui(0), [q, ve] = Ui(\"\"), [Ae, P] = Ui(\"\"), [Me, Ie] = Ui(!1);\n kn(() => {\n q.length > nu ? Se(!0) : Se(!1);\n }, [q]), kn(() => {\n const ze = i.player;\n ze != null && ze.bizData && (P(On(ze.bizData.userId)), Ie(!!ze.bizData.isVip));\n const rt = () => {\n ze != null && ze.bizData && (P(On(ze.bizData.userId || \"\")), Ie(!!ze.bizData.isVip));\n };\n return ze && ze.on(ge.ATTRIBUTE_CHANGE_BIZ_DATA, rt), () => {\n var Fe;\n (Fe = i.player) == null || Fe.off(ge.ATTRIBUTE_CHANGE_BIZ_DATA, rt);\n };\n }, [t.ctx.player]);\n const je = (ze) => {\n ke(), ie(), ze();\n }, ke = () => {\n D(!1), x(Ua);\n }, H = () => {\n D(!0), x(fp);\n }, ie = () => {\n E(!1), l(Ua);\n }, ye = () => {\n E(!0), l(fp);\n }, we = (ze) => {\n m(ze), i.setting.color = ze;\n }, J = (ze) => {\n ze < Oc ? ze = Oc : ze > Nc && (ze = Nc), d(ze), i.setting.opacityMultiple = ze;\n }, le = (ze) => {\n U(ze), i.setting.fontSizeMultiple = ze.value;\n }, me = (ze) => {\n S(ze), i.setting.durationMultiple = ze.value;\n }, he = () => {\n e.isShow = !R, z(!R);\n }, [re, Se] = Ui(!1), Pe = (ze) => {\n const rt = ze.target;\n Se(rt.value.length > nu), ve(rt.value);\n };\n kn(() => {\n const ze = () => {\n m(i.setting.color), d(i.setting.opacityMultiple), U(i.setting.fontSizeMultipleItem), S(i.setting.durationMultipleItem), z(i.setting.isShow);\n };\n return i.setting.on(Dn.SETTING_UPDATE, ze), () => {\n i.setting.off(Dn.SETTING_UPDATE, ze);\n };\n }, []);\n const Xe = () => {\n var ze, rt, Fe;\n if (re)\n return;\n const G = (ze = i.player) == null ? void 0 : ze.bizData, k = {\n id: 0,\n createTime: Date.now(),\n color: G != null && G.isVip ? _ : Pg,\n fontSize: Ma.SMALL,\n text: q,\n startTime: (((rt = i.player) == null ? void 0 : rt.currentTime) || 0) + 1e-3,\n type: Ha.SCROLL,\n likeNum: 0,\n userId: Ae,\n isReviewed: !1\n };\n ve(\"\"), i.addDanmakuData([k]), r.send(k), e.timeUpdate(((Fe = i.player) == null ? void 0 : Fe.currentTime) || 0);\n }, Oe = () => {\n var ze;\n (ze = t.ctx.player) == null || ze.emit(ge.CLICK_LOGIN);\n }, st = () => {\n var ze;\n (ze = t.ctx.player) == null || ze.emit(ge.CLICK_REGISTER);\n };\n return Ke(\"div\", {\n className: yt[\"danmaku-panel\"],\n children: [Ke(\"div\", {\n \"data-kp-role\": \"show-danmaku\",\n className: yt[\"danmaku-control-btn\"],\n onClick: he,\n children: R ? Ke(mL, {\n className: yt[\"button-icon\"]\n }) : Ke(vL, {\n className: yt[\"button-icon\"]\n })\n }), Ke(\"div\", {\n className: yt.setup,\n onMouseMove: () => {\n je(ye), clearTimeout(W);\n },\n onMouseLeave: () => {\n fe(+setTimeout(() => {\n ie();\n }, 300));\n },\n children: [Ke(\"div\", {\n \"data-kp-role\": \"setup-danmaku\",\n className: yt[\"danmaku-control-btn\"],\n children: Ke(gL, {\n color: o,\n className: yt[\"button-icon\"]\n })\n }), v && Ke(AL, {\n selectedOpacity: p,\n selectedFontSizeObj: u,\n selectedSpeedObj: w,\n changeOpacity: J,\n changeFontSizeMultiple: le,\n changeSpeedMultiple: me\n })]\n }), Ke(\"div\", {\n \"data-kp-role\": \"input-container\",\n className: yt[\"input-box\"],\n children: [Ke(\"div\", {\n \"data-kp-role\": \"color-btn\",\n className: yt[\"input-color\"],\n style: Ae ? \"\" : \"flex-grow: 0; flex-shrink: 0; flex-basis: 20px\",\n onMouseMove: () => {\n Me && (je(H), clearTimeout(W));\n },\n onMouseLeave: () => {\n Me ? fe(+setTimeout(() => {\n ke();\n }, 300)) : ke();\n },\n onClick: () => {\n var ze;\n Me || (ze = i.player) == null || ze.emit(ge.CLICK_VIP);\n },\n children: [Ae && Ke(\"div\", {\n className: yt[\"color-panel-btn\"],\n children: Ke(bL, {\n color: C,\n className: yt[\"button-icon\"]\n })\n }), Ae && g && Ke(wL, {\n selectedTextColor: _,\n changeTextColor: we\n })]\n }), Ke(\"div\", {\n className: yt[\"input-text\"],\n children: [Ae ? Ke(\"input\", {\n \"data-kp-role\": \"input-box\",\n type: \"text\",\n className: yt[\"input-ipt\"],\n placeholder: \"发条弹幕,让世界充满爱~\",\n value: q,\n onInput: (ze) => {\n Pe(ze);\n }\n }) : Ke(\"div\", {\n children: [Ke(\"input\", {\n type: \"text\",\n className: yt[\"input-ipt\"],\n disabled: !0\n }), Ke(\"div\", {\n className: yt.login,\n children: [\"请先\", Ke(\"span\", {\n className: yt[\"login-link\"],\n onClick: Oe,\n children: \"登录\"\n }), \"或\", Ke(\"span\", {\n className: yt[\"login-link\"],\n onClick: st,\n children: \"注册\"\n })]\n })]\n }), re && Ke(\"div\", {\n className: yt[\"text-len\"],\n children: Ke(\"span\", {\n children: [q.length, \"/\", nu]\n })\n })]\n }), Ke(\"div\", {\n \"data-kp-role\": \"send-btn\",\n className: yt[\"send-btn\"] + (Ae && !re ? \"\" : \" \" + yt[\"is-disabled\"]),\n onClick: Xe,\n style: Ae ? \"\" : \"cursor: not-allowed\",\n children: Ke(\"div\", {\n className: yt[\"send-text\"],\n children: \"发表\"\n })\n })]\n })]\n });\n}\nconst ou = \"danmaku-control\";\nclass SL {\n constructor(e, i, r) {\n We(this, \"_container\"), We(this, \"_renderer\"), We(this, \"_ctx\"), We(this, \"_sender\"), this._container = i, this._ctx = e, this._renderer = r, this._sender = new uL(e), this._renderPanel(), Be.i(ou, \"constructor\");\n }\n destroy() {\n Be.i(ou, \"destroy\"), Xf(null, this._container), this._sender.destroy();\n }\n _renderPanel() {\n Be.i(ou, \"renderPanel\"), Xf(Ke(TL, {\n ctx: this._ctx,\n renderer: this._renderer,\n sender: this._sender\n }), this._container);\n }\n}\nconst xL = \"danmaku-like\";\nclass LL {\n constructor(e) {\n We(this, \"_ctx\"), We(this, \"_loader\"), We(this, \"_loaderCallback\"), We(this, \"_loaderConf\"), We(this, \"_lastRequestTs\", 0), We(this, \"_loaderEnd\", (i, r, o) => {\n if (this._destroyLoader(), r) {\n const l = Kr.parseLikeData(r);\n l && l.result === 1 && (i.danmaku.isMyLike = i.like);\n }\n }), We(this, \"_loaderError\", (i, r, o) => {\n Be.i(xL, `error. ${o.code} ${o.text} ${r}`), this._destroyLoader();\n }), this._ctx = e, this._loaderCallback = {\n onEnd: this._loaderEnd,\n onError: this._loaderError\n }, this._loaderConf = {\n maxRetry: e.config.networkMaxRetry,\n timeout: e.config.networkTimeout\n };\n }\n destroy() {\n this._destroyLoader();\n }\n like(e) {\n return this._verify(e) ? (this._load(e, !0), !0) : !1;\n }\n cancelLike(e) {\n return this._verify(e) ? (this._load(e, !1), !0) : !1;\n }\n _verify(e) {\n var i;\n const r = (i = this._ctx.player) == null ? void 0 : i.bizData, o = !!(r != null && r.secretId && r != null && r.secretKey && r != null && r.userId && r != null && r.resourceId);\n return performance.now() - this._lastRequestTs > Mg * 1e3 && !!e.id && e.isReviewed && o;\n }\n _load(e, i) {\n var r;\n this._destroyLoader();\n const o = (r = this._ctx.player) == null ? void 0 : r.bizData;\n if (!o || !o.secretId || !o.secretKey || !o.userId || !o.resourceId)\n return;\n const l = JSON.stringify({\n DanmakuId: e.id,\n UserId: On(o.userId)\n }), v = i ? this._ctx.likeUrl : this._ctx.likeCancelUrl, E = [], C = \"POST\", x = wd({\n secretId: o.secretId,\n secretKey: o.secretKey,\n payload: l,\n method: C,\n url: v,\n service: \"vod\",\n contentType: \"application/json\"\n });\n Object.keys(x.header).forEach((D) => E.push({\n header: D,\n value: x.header[D]\n }));\n const g = {\n url: v,\n headers: E,\n requestBody: l,\n requestMethod: C,\n danmaku: e,\n like: i\n };\n this._lastRequestTs = performance.now(), this._loader = new Ad(), this._loader.load(g, this._loaderCallback, this._loaderConf);\n }\n _destroyLoader() {\n this._loader && (this._loader.destroy(), this._loader = void 0);\n }\n}\nclass hb {\n constructor() {\n We(this, \"_ranges\", []);\n }\n add(e) {\n if (e.st >= e.ed)\n return;\n const i = this.getContinuousRanges(e);\n if (i && i.list.length) {\n let r = e.st, o = e.ed;\n i.list.forEach((l) => {\n l.st < r && (r = l.st), l.ed > o && (o = l.ed);\n }), this._ranges.splice(i.idx, i.list.length, {\n st: r,\n ed: o\n });\n } else\n this._ranges.push(Object.assign({}, e)), this._ranges.sort((r, o) => r.st - o.st);\n }\n getContinuousRanges(e) {\n if (e.st >= e.ed)\n return;\n const i = [];\n let r = -1;\n if (this._ranges.forEach((o, l) => {\n (e.st >= o.st && e.st <= o.ed || e.ed >= o.st && e.ed <= o.ed || e.st <= o.st && e.ed >= o.ed) && (r === -1 && (r = l), i.push(o));\n }), i.length && r >= 0)\n return {\n idx: r,\n list: i\n };\n }\n getNextRangeByTime(e, i, r) {\n if (r >= i)\n return;\n const o = this._getHitIdx(e), l = this._getAfterRangeIdx(e);\n let v = 0, E = 0;\n return o >= 0 ? l >= 0 ? (v = this._ranges[o].ed, E = Math.min(e + i, this._ranges[l].st)) : (v = this._ranges[o].ed, E = e + i) : l >= 0 ? (v = e, E = Math.min(e + i, this._ranges[l].st)) : (v = e, E = e + i), E > v && v - e < r ? {\n st: v,\n ed: E\n } : void 0;\n }\n _getHitIdx(e) {\n for (let i = 0; i < this._ranges.length; i++)\n if (e >= this._ranges[i].st && e <= this._ranges[i].ed)\n return i;\n return -1;\n }\n _getAfterRangeIdx(e) {\n for (let i = 0; i < this._ranges.length; i++)\n if (this._ranges[i].st > e)\n return i;\n return -1;\n }\n}\nconst RL = \"danmaku-puller\";\nclass CL {\n constructor(e) {\n We(this, \"_ctx\"), We(this, \"_loader\"), We(this, \"_loaderCallback\"), We(this, \"_loaderConf\"), We(this, \"_ranges\", new hb()), We(this, \"_currentTime\", 0), We(this, \"_duration\", 0), We(this, \"_timeUpdated\", !0), We(this, \"_loaderEnd\", (i, r, o) => {\n if (this._ranges.add(i.range), this._destroyLoader(), r) {\n const l = Kr.parsePullData(r);\n l != null && l.danmakus && l.danmakus.length && this._ctx.addDanmakuData(l.danmakus);\n }\n this._checkUpdate();\n }), We(this, \"_loaderError\", (i, r, o) => {\n Be.i(RL, `error. ${o.code} ${o.text} ${r}`), this._ranges.add(i.range), this._destroyLoader(), this._checkUpdate();\n }), this._ctx = e, this._loaderCallback = {\n onEnd: this._loaderEnd,\n onError: this._loaderError\n }, this._loaderConf = {\n maxRetry: e.config.networkMaxRetry,\n timeout: e.config.networkTimeout\n };\n }\n destroy() {\n this._destroyLoader();\n }\n timeUpdate(e, i) {\n this._currentTime = e, this._duration = i, this._timeUpdated = !0, this._checkUpdate();\n }\n _checkUpdate() {\n var e;\n if (!this._timeUpdated || this._loader)\n return;\n const i = (e = this._ctx.player) == null ? void 0 : e.bizData;\n if (!(i != null && i.secretId && i != null && i.secretKey && i != null && i.resourceId))\n return;\n const r = this._ctx.config, o = Math.floor(this._currentTime / r.vodPullIntervalSec) * r.vodPullIntervalSec, l = this._ranges.getNextRangeByTime(o, r.vodPullRangeSec, r.vodPullMaxBufSec);\n l && l.ed <= this._duration && (this._timeUpdated = !1, this._load(l));\n }\n _load(e) {\n var i;\n this._destroyLoader();\n const r = (i = this._ctx.player) == null ? void 0 : i.bizData;\n if (!r || !r.secretId || !r.secretKey || !r.resourceId)\n return;\n const o = JSON.stringify({\n ResourceId: On(r.resourceId),\n UserId: On(r.userId),\n PositionFromInclude: Math.floor(e.st * 1e3).toString(),\n PositionToExclude: Math.floor(e.ed * 1e3).toString()\n }), l = this._ctx.pullUrl, v = [], E = \"POST\", C = wd({\n secretId: r.secretId,\n secretKey: r.secretKey,\n payload: o,\n method: E,\n url: l,\n service: \"vod\",\n contentType: \"application/json\"\n });\n Object.keys(C.header).forEach((g) => v.push({\n header: g,\n value: C.header[g]\n }));\n const x = {\n range: e,\n url: l,\n headers: v,\n requestBody: o,\n requestMethod: E\n };\n this._loader = new Ad(), this._loader.load(x, this._loaderCallback, this._loaderConf);\n }\n _destroyLoader() {\n this._loader && (this._loader.destroy(), this._loader = void 0);\n }\n}\nclass kL {\n static scrollComment(e, i) {\n if (i.st >= i.ed)\n return [];\n let r = [];\n for (let o = 0; o <= e; o++) {\n let l = \"滚动弹幕\", v = Math.floor(Math.random() * Math.random() * 8);\n for (let C = 0; C < v; C++)\n l += \"滚动弹幕\";\n const E = this._getDanmaku(Ha.SCROLL, l);\n E.startTime = i.st + Math.random() * (i.ed - i.st), r.push(E);\n }\n return r;\n }\n static topComment(e, i) {\n let r = [];\n for (let o = 0; o < e; o++) {\n const l = this._getDanmaku(Ha.SCROLL, \"顶部弹幕\", \"#0165ff\");\n l.startTime = i.st + Math.random() * (i.ed - i.st), r.push(l);\n let v = Math.floor(Math.random() * 3);\n v < 1 ? l.fontSize = Ma.LARGE : v < 2 ? l.fontSize = Ma.MIDDLE : v < 3 && (l.fontSize = Ma.SMALL);\n }\n return r;\n }\n static bottomComment(e, i) {\n let r = [];\n for (let o = 0; o < e; o++) {\n const l = this._getDanmaku(Ha.BOTTOM, \"底部弹幕\", \"#11c034\");\n l.startTime = i.st + Math.random() * (i.ed - i.st), r.push(l);\n }\n return r;\n }\n static _getDanmaku(e, i, r) {\n return {\n id: 0,\n createTime: Date.now(),\n type: e,\n text: i,\n color: r || \"#FFFFFF\",\n fontSize: Ma.MIDDLE,\n startTime: 0,\n userId: \"\",\n likeNum: Math.floor(Math.random() * 100),\n isReviewed: Math.random() > 0.2\n };\n }\n}\nconst IL = \"mock-danmaku-puller\";\nclass DL {\n constructor(e, i = 1) {\n We(this, \"_ctx\"), We(this, \"_ranges\", new hb()), We(this, \"_currentTime\", 0), We(this, \"_duration\", 0), We(this, \"_timeUpdated\", !0), We(this, \"_density\", 1), Sn.i(IL, \"constructor\"), this._ctx = e, this._density = i;\n }\n destroy() {\n }\n timeUpdate(e, i) {\n this._currentTime = e, this._duration = i, this._timeUpdated = !0, this._checkUpdate();\n }\n _checkUpdate() {\n if (!this._timeUpdated)\n return;\n const e = this._ctx.config, i = Math.floor(this._currentTime / e.vodPullIntervalSec) * e.vodPullIntervalSec, r = this._ranges.getNextRangeByTime(i, e.vodPullRangeSec, e.vodPullMaxBufSec);\n r && r.ed <= this._duration && (this._timeUpdated = !1, this._load(r));\n }\n _load(e) {\n const i = kL.scrollComment((e.ed - e.st) * this._density, e);\n this._ctx.addDanmakuData(i), this._ranges.add(e);\n }\n}\nconst OL = \"_comment_168su_1\", NL = \"_scroll_168su_62\", PL = \"_barrage_168su_1\", ML = \"_center_168su_67\", Cn = {\n \"comment-container\": \"_comment-container_168su_1\",\n comment: OL,\n \"my-comment\": \"_my-comment_168su_29\",\n \"comment-text\": \"_comment-text_168su_38\",\n \"like-container\": \"_like-container_168su_44\",\n \"like-icon\": \"_like-icon_168su_51\",\n \"like-num\": \"_like-num_168su_55\",\n scroll: NL,\n barrage: PL,\n center: ML\n};\nclass UL {\n constructor() {\n We(this, \"_pool\", []), We(this, \"_maxNum\", 100), We(this, \"_createNum\", 0);\n }\n create() {\n if (this._pool.length > 0)\n return this._pool.shift();\n if (this._createNum < this._maxNum) {\n this._createNum++;\n const e = document.createElement(\"div\");\n return e.role = \"comment\", e;\n }\n }\n recycle(e) {\n e.removeAttribute(\"class\"), e.removeAttribute(\"style\"), e.innerHTML = \"\", this._pool.push(e);\n }\n}\nclass BL {\n constructor(e, i, r, o, l) {\n We(this, \"_evt\"), We(this, \"_ctx\"), We(this, \"_data\"), We(this, \"_dom\"), We(this, \"_onAnimationend\"), We(this, \"_height\", 0), We(this, \"_width\", 0), We(this, \"_offset\", 0), We(this, \"_duration\", 0), We(this, \"_opacity\", 1), this._evt = e, this._ctx = i, this._data = o, this._dom = r, this._onAnimationend = l, this._initDom();\n }\n get dom() {\n return this._dom;\n }\n get height() {\n return this._height;\n }\n get width() {\n return this._width;\n }\n get data() {\n return this._data;\n }\n set offset(e) {\n this._offset = e;\n }\n get offset() {\n return this._offset;\n }\n set duration(e) {\n this._duration = e;\n }\n get duration() {\n return this._duration;\n }\n set opacity(e) {\n this._opacity = e;\n }\n get opacity() {\n return this._opacity;\n }\n _isFromCurrentUser() {\n var e;\n const i = (e = this._ctx.player) != null && e.bizData && typeof this._ctx.player.bizData.userId < \"u\" ? this._ctx.player.bizData.userId : \"\";\n return !!(i && i === this._data.userId);\n }\n}\nconst VL = \"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjlweCIgaGVpZ2h0PSIyOHB4IiB2aWV3Qm94PSIwIDAgMjkgMjgiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8dGl0bGU+6LWePC90aXRsZT4KICAgIDxnIGlkPSLpobXpnaItMSIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9IuinhumikeaSreaUvuWZqC3pgInkuK3nirbmgIHlsZXnpLrkuowiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xMTIxLjAwMDAwMCwgLTQ4LjAwMDAwMCkiIGZpbGw9IiNGRkZGRkYiIGZpbGwtcnVsZT0ibm9uemVybyI+CiAgICAgICAgICAgIDxnIGlkPSLlvLnluZUyIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg3NjQuMDAwMDAwLCA0Ny4wMDAwMDApIj4KICAgICAgICAgICAgICAgIDxnIGlkPSLotZ4iIHRyYW5zZm9ybT0idHJhbnNsYXRlKDM1Ny4wMDAwMDAsIDEuMDAwMDAwKSI+CiAgICAgICAgICAgICAgICAgICAgPHBhdGggZD0iTTI4LjM0Njg1MjcsMTEuMTA2NTMzMiBDMjcuNjAxMzEyOSw5Ljg5NDAxNjMxIDI2LjMwODc5ODYsOS4xMjgyNDk0OCAyNC44ODA1OTMsOS4wNDkxNDQ3OSBDMjQuNzkxMzM2NCw5LjAzNjU1NDY0IDI0LjcwMjExMjksOS4wMzAyOTI5IDI0LjYxMDIzNzksOS4wMzAyOTI5IEwxOS42ODA1NDA3LDkuMDI2MzI5MzUgQzE5Ljg5NTkxLDguMDgzMjAxNDggMjAuMDA0OTIwNCw3LjExNzIyNDggMjAuMDA0OTIwNCw2LjE0MDY1NjQ3IEMyMC4wMDQ5MjA0LDUuMjIyMDA5NDIgMTkuOTAwODQ4NSw0LjI4MDg0NjYzIDE5LjY5NTM4OTIsMy4zNDMwMTQ2MiBDMTkuNjgwOTA1MywzLjI3NjUwMDA3IDE5LjY1OTgyNTcsMy4yMTI2MTY3NiAxOS42MzI4MTM0LDMuMTUyMDY0MjEgQzE5LjEyMDQwODEsMS4yODY5NTg1NSAxNy40NTA1MTY5LDAgMTUuNTEwMjM3NSwwIEMxMy4xNTE0MTYzLDAgMTEuMjMyMjQ5NiwxLjkyODY1NTg4IDExLjIzMjI0OTYsNC4yOTkwNjU3NCBDMTEuMjMyMjQ5Niw0LjQwNzYxNDA1IDExLjIzNjUyNTEsNC41MTYxNjIzNiAxMS4yNDU0MDc3LDQuNjI1MDQzNzQgQzExLjE3NDI4MDgsNi40ODcxODUwNyAxMC4yMDU0NTAzLDguMjAzNjczODIgOC42NDU1NjM4NCw5LjIyNjIzOTQ2IEM4LjE3NzYzNzY4LDkuNTMyOTk5MTcgOC4wNDU1NTkwOCwxMC4xNjI3NzI1IDguMzUwODQ3OTEsMTAuNjMzMDA0MiBDOC42NTU3NzIxNiwxMS4xMDI5MzYxIDkuMjgyMTI2MzgsMTEuMjM2Mjk4MyA5Ljc1MDcxNTQxLDEwLjkyOTE3MjIgQzExLjg4MjMwMTcsOS41MzE5OTk5OSAxMy4xOTc4ODQxLDcuMTc1NDc5MjUgMTMuMjcwMDA1NCw0LjYyNTAxMDQ0IEMxMy4yNzA5OTk3LDQuNTgxNjQ0NCAxMy4yNjk2NzM5LDQuNTM4MzExNjkgMTMuMjY1Mzk4Myw0LjQ5NDk0NTY1IEMxMy4yNTg4MDI3LDQuNDI5NDMwMzEgMTMuMjU1NTIxNSw0LjM2NDIxNDcxIDEzLjI1NTUyMTUsNC4yOTkwMzI0NSBDMTMuMjU1NTIxNSwzLjA0OTc3NzY4IDE0LjI2NzE0MDgsMi4wMzMxNzQwNCAxNS41MTAyNzA2LDIuMDMzMTc0MDQgQzE2LjU2NTM3NDgsMi4wMzMxNzQwNCAxNy40Njg5NzgxLDIuNzU1OTA3OSAxNy43MDcwNTEsMy43OTA3MzA2MSBDMTcuNzE4NTg1MSwzLjg0MDY5MTQ3IDE3LjczMzczMTksMy44ODkwMjAzIDE3Ljc1MjQ5MTQsMy45MzU2ODM3NSBDMTcuOTA0NjIyLDQuNjc4MjY4NzMgMTcuOTgxNjgxNyw1LjQxOTIyMTYzIDE3Ljk4MTY4MTcsNi4xNDA2NTY1MyBDMTcuOTgxNjgxNyw3LjM2MDc2NzQ2IDE3Ljc4MDEzMzQsOC41NjA3Mjc0OCAxNy4zODI2NzEzLDkuNzA3NzI5MDIgQzE3LjI3NDk4NjYsMTAuMDE4NDUyMyAxNy4zMjM3NDEzLDEwLjM2MjMxNjMgMTcuNTEzMDkyNywxMC42MzAzMzk2IEMxNy43MDI3NzU0LDEwLjg5ODcyOTQgMTguMDA5Njg4MywxMS4wNTgyMzc4IDE4LjMzNzM0OTMsMTEuMDU4NTcwOSBMMjQuNTk1Nzg3MSwxMS4wNjE4NjgzIEMyNC42NDE4OTA0LDExLjA3MDQ2MTYgMjQuNjg4MzI1LDExLjA3NTc1NzQgMjQuNzM1MDkxMSwxMS4wNzc0MjI4IEMyNS41MTYxOTQ0LDExLjEwOTg2NCAyNi4yMjI4ODk1LDExLjUyMDU0MjMgMjYuNjMzMjExNSwxMi4xODcwMjAzIEMyNi44ODcwOTQxLDEyLjU4Nzc3MyAyNy4wMDM2OTQ1LDEzLjA1OTMzNjkgMjYuOTcxMDgwOCwxMy41NTIwODQzIEMyNi45Njg0NjI0LDEzLjU4Mjg2MDIgMjYuOTY3MTM2NywxMy42MTQzMDIyIDI2Ljk2NzQ2ODEsMTMuNjQ1NzQ0MyBDMjYuOTY3NDY4MSwxMy42NzM1NTU4IDI2Ljk2ODc5MzksMTMuNzAxMDAxIDI2Ljk3MTA4MDgsMTMuNzI4MTQ2NCBDMjYuOTcxNDEyMiwxMy43MzkwNzEyIDI2Ljk3MDA4NjUsMTMuNzQ5NjYyOSAyNi45Njc0NjgxLDEzLjc1OTkyMTUgQzI2Ljk2NDE4NjksMTMuNzcyMTc4NiAyNi45NjEyMDM5LDEzLjc4NTA2ODUgMjYuOTU4MjU0MSwxMy43OTc2NTg2IEwyNC41Mjk5NjMzLDI0LjU1MTQ2ODEgQzI0LjUwMDMzMjYsMjQuNTkzMTY4OCAyNC40NzM2NTE3LDI0LjYzNzUwMDcgMjQuNDUwNjE2NywyNC42ODMxNjUgQzI0LjI1ODMxNTUsMjUuMDY2MDMxNyAyMy45NzU3NjM0LDI1LjM4MjQxNzIgMjMuNjI5Njc0NCwyNS42MDAxNDY3IEMyMy4yODE1OTY3LDI1LjgyMTg3MyAyMi44ODI4MDg4LDI1Ljk0NTY0MjcgMjIuNDcxNTI1NywyNS45NjAxOTggQzIyLjQ0Mzg1MDUsMjUuOTU4MTk5NiA1LjgzMTExMjk5LDI1Ljk1MjkwMzcgNS44MzExMTI5OSwyNS45NTI5MDM3IEM1LjgxNTk2NjIsMjUuOTUyMjM3NiA1LjgwMDgxOTQyLDI1Ljk1MTkwNDUgNS43ODU2NzI2NCwyNS45NTE5MDQ1IEM1Ljc4NTY3MjY0LDI1Ljk1MTkwNDUgMi4xODk5ODU5LDI1Ljk1NzUzMzQgMi4xMzQ4MzQ0LDI1Ljk2Njc5MjggQzIuMDcyMjU4NjQsMjUuOTY2NzkyOCAyLjAyMzIwNTYxLDI1LjkxNzgzMTIgMi4wMjMyMDU2MSwyNS44NTU2MTMyIEwyLjAzMjkxNjgsMTIuMzA0NDk0OSBDMi4wMzI5MTY4LDEyLjI0MjYxMDEgMi4wODI5NjQxNCwxMi4xOTIzMTYyIDIuMTMwNTU4ODQsMTIuMTkxOTgzMSBMMi4xNzA4OTUwMywxMi4xOTU5NDY2IEMyLjIwODk0NDI5LDEyLjIwMDI0MzMgMi4yNTY4MzcyNywxMi4yMDUyMDYgMi4yODUxNzUzNSwxMi4yMDIyNDE3IEw1LjAwMDI5MzgzLDEyLjE5NTAxNCBMNS4wMDAyOTM4MywyMy4yNDA5NjE0IEM1LjAwMDI5MzgzLDIzLjgwMjU1NDggNS40NTMwNzMyMSwyNC4yNTc1NjUxIDYuMDExOTEzMjEsMjQuMjU3NTY1MSBDNi41NzA3NTMyLDI0LjI1NzU2NTEgNy4wMjM1MzI1OCwyMy44MDI1NTQ4IDcuMDIzNTMyNTgsMjMuMjQwOTYxNCBMNy4wMjM1MzI1NSwxMS40OTQ2OTU4IEM3LjAyMzUzMjU1LDExLjQzNjgwNzggNy4wMjM1MzI1NSwxMS4yMTM3NDkyIDcuMDIzNTMyNTUsMTEuMTU1ODI3OSBDNy4wMjM1MzI1NSwxMC41OTQyMzQ1IDYuNTcwNzUzMTcsMTAuMTQ5MTQ5OCA2LjAxMTkxMzE3LDEwLjE0OTE0OTggQzUuOTYzMTkxNTgsMTAuMTQ5MTQ5OCAyLjIwNDY2ODY3LDEwLjE1OTA3NTQgMi4xNDQ1Nzg3MSwxMC4xNTkwNzU0IEMwLjk2NzQ3MTYzOSwxMC4xNTkwNzU0IDAuMDA5NzExMTgzOSwxMS4xMjE0MjE1IDAuMDA5NzExMTgzOSwxMi4zMDM4Mjg2IEwwLDI1Ljg1NDk0NjkgQzAsMjcuMDM3Njg3MSAwLjk1Nzc5MzYyMiwyOCAyLjEzNDg2NzUzLDI4IEMyLjIxNzE5NzA5LDI4IDUuNzQzMjE1MjYsMjcuOTg1MTExNyA1Ljc0MzIxNTI2LDI3Ljk4NTExMTcgQzUuNzU4MDMwNiwyNy45ODU3Nzc4IDUuNzczMTc3MzgsMjcuOTg2MTEwOSA1Ljc4Nzk5MjczLDI3Ljk4NjExMDkgQzUuNzg3OTkyNzMsMjcuOTg2MTEwOSAyMi4zNTM2NjU5LDI3Ljk5NTAzNzIgMjIuMzg3NTcyMSwyNy45OTUwMzcyIEMyMy4yMTI0OTE3LDI3Ljk5NTAzNzIgMjQuMDE2NjMsMjcuNzYwNzU0MSAyNC43MDgxNzgzLDI3LjMyMDI2NTggQzI1LjM0MzQxNTEsMjYuOTIwNTEyMyAyNS44NjY5ODk5LDI2LjM0NzY2MSAyNi4yMjUyNzU5LDI1LjY2MTMzMTkgQzI2LjM0MzgzMTgsMjUuNDc4MzQyIDI2LjQzMzcxODIsMjUuMjc0ODAxNCAyNi40OTI2ODEyLDI1LjA1NTQwNjYgQzI2LjQ5NjI5MzksMjUuMDQxODUwNSAyNi40OTk2MDgzLDI1LjAyODU5NDMgMjYuNTAyNTU4MSwyNS4wMTUwMzgyIEwyOC45Mjc4OTkxLDE0LjI2Mjg5NCBDMjguOTc5NjAzNywxNC4wNjA2ODU4IDI5LjAwMTAxNDYsMTMuODUzMjE1IDI4Ljk5Mjc2MTgsMTMuNjQ0NzExNiBDMjkuMDQ0MzMzOCwxMi43MzIwNTk5IDI4LjgxOTQxOSwxMS44NTIxMTU4IDI4LjM0Njg1MjcsMTEuMTA2NTMzMiBaIiBpZD0i6Lev5b6EIj48L3BhdGg+CiAgICAgICAgICAgICAgICA8L2c+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==\", FL = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB0AAAAcCAYAAACdz7SqAAAAAXNSR0IArs4c6QAAAh9JREFUSA29VTFrFFEQfjN7REQbIY2VRSCkye3hpvEXBBGLS6PmEkv9B2J5IAqijanS6sqZMloHLJMrjuX2IFgkggpKCBZCwGI3b/zemT2S3Lu9vXD3Hiz75vtm5mNm570lNeLaCIKZNElCUeomQjtMtFZrt8NR0vAozsY3TdMPELyF7SU8C1rk3ftK5YXhii4q6mj8GuXy3WOlPlliNHne/EoU7Vq4PqhwpVKvs1bqeV+G/wCT1osDuD64sGhjc/Mh2jrfl+EEADcziDuPFxJtBMG0iLw6H3zaJpE/p+28fSmPzDidJGuoZDqzbW9h/mnDbdjQSkPffwzBB7bgMxjR5zN2jpE7vWGlcgdt+4jWejk5DPV9NY5vDPHp0V3RMAiuc5I80kRzYL6ttttPjQeqPFIiV3reAzZE9AvU9gDawMcQ+uKVSm/vt1r7tOH7s6nIDlp4zbAgWytxvGD2YbkMeHwLuY9wg93mVKlnmeD40tszQecqLpfXjPb5dpfJoJiRWYb65cmkt2cVot+siIZNpj36gii+a8e016koKo1NpUMviAsWZQ3ztHZfKY4MfvxKOasUl8jfe9XqnttBEtmlel2bI+NskMwQmQ/ttL34jp2uqNMjw3wi6vByoKmpXqVuppfocLnZPOi2F4P0w2wmvXA0m5mGGaT1zJjgWxPzmyw/15aWXirmJxD/igeFj3ERJbhmI+V51VoUbWWZ/wFP+ZnzLHN69wAAAABJRU5ErkJggg==\";\nclass jL {\n constructor(e, i, r) {\n We(this, \"_evt\"), We(this, \"_ctx\"), We(this, \"_dom\"), We(this, \"_data\"), We(this, \"_likeIconDom\"), We(this, \"_likeNumDom\"), We(this, \"_timer\"), We(this, \"_delayVal\"), We(this, \"_onClick\", (E) => {\n var C, x;\n E.stopImmediatePropagation();\n const g = (C = this._ctx.player) == null ? void 0 : C.bizData;\n if (!(g != null && g.userId)) {\n (x = this._ctx.player) == null || x.emit(ge.CLICK_LOGIN);\n return;\n }\n const D = this._data;\n D.isMyLike ? (D.isMyLike = !1, D.likeNum--, this._delayEmit(!1), this._updateLikeDom()) : (D.isMyLike = !0, D.likeNum++, this._delayEmit(!0), this._updateLikeDom());\n }), We(this, \"_delayEmit\", (E) => {\n this._clearTimer(), this._delayVal = E, this._timer = setTimeout(() => {\n this._delayVal ? this._evt.emit(Dn.LIKE, {\n danmaku: this._data,\n like: !0\n }) : this._evt.emit(Dn.CANCEL_LIKE, {\n danmaku: this._data,\n like: !1\n }), this._delayVal = void 0;\n }, 1e3);\n }), We(this, \"_clearTimer\", () => {\n this._timer && (clearTimeout(this._timer), this._timer = void 0);\n }), this._evt = e, this._ctx = i, this._data = r;\n const o = this._dom = document.createElement(\"div\");\n o.className = Cn[\"like-container\"], o.role = \"beforeLike\";\n const l = this._likeIconDom = document.createElement(\"img\");\n l.className = Cn[\"like-icon\"], l.role = \"likeIcon\";\n const v = this._likeNumDom = document.createElement(\"div\");\n v.className = Cn[\"like-num\"], v.role = \"likeNum\", this._updateLikeDom(), o.appendChild(l), o.appendChild(v), o.addEventListener(\"click\", this._onClick);\n }\n destroy() {\n this._dom.removeEventListener(\"click\", this._onClick);\n }\n get dom() {\n return this._dom;\n }\n _updateLikeDom() {\n this._likeNumDom.innerHTML = `${this._data.likeNum}`, this._likeIconDom.src = this._data.isMyLike ? FL : VL;\n }\n}\nclass zL extends BL {\n constructor() {\n super(...arguments), We(this, \"_stageWidth\", 0), We(this, \"_like\"), We(this, \"_scrollAnimationend\", () => {\n this._onAnimationend();\n });\n }\n _initDom() {\n const e = document.createElement(\"div\");\n e.className = Cn[\"comment-text\"], e.innerHTML = this._data.text, e.style.color = this._data.color, this._dom.appendChild(e), this._data.isReviewed && (this._like = new jL(this._evt, this._ctx, this._data), this._dom.appendChild(this._like.dom)), this._dom.classList.add(Cn.comment), this._dom.style.fontSize = `${this._data.fontSize * this._ctx.setting.fontSizeMultiple}px`;\n const {\n width: i,\n height: r\n } = this._dom.getBoundingClientRect();\n this._width = i, this._height = r;\n }\n initAnimation() {\n this._dom.style.opacity = this._ctx.setting.opacityMultiple.toFixed(2), this._isFromCurrentUser() && this._dom.classList.add(Cn[\"my-comment\"]), this._dom.classList.add(Cn.scroll), this._dom.style.top = `${this._offset}px`, this._dom.style.setProperty(\"--duration\", `${this._duration}ms`), this._dom.style.setProperty(\"--containerWidth\", `${this._stageWidth || 0}px`), this._dom.addEventListener(\"animationend\", this._scrollAnimationend);\n }\n play() {\n this._dom.style.animationPlayState = \"running\";\n }\n pause() {\n this._dom.style.animationPlayState = \"paused\";\n }\n destroy() {\n this._dom.style.animationPlayState = \"\", this._dom.removeEventListener(\"animationend\", this._scrollAnimationend);\n }\n set stageWidth(e) {\n this._stageWidth = e;\n }\n get stageWidth() {\n return this._stageWidth;\n }\n get speed() {\n return (this._width + this._stageWidth) / this._duration;\n }\n get remainingDistance() {\n let e = this._stageWidth;\n if (this._dom.parentElement) {\n const {\n left: i\n } = this._dom.parentElement.getBoundingClientRect(), {\n left: r\n } = this._dom.getBoundingClientRect();\n e = r - i;\n }\n return e + this._width;\n }\n get totalDistance() {\n return this._width + this._stageWidth;\n }\n get remainDuration() {\n return this._duration * this.remainingDistance / this.totalDistance;\n }\n}\nconst HL = 100, $L = \"danmaku-renderer\";\nclass WL {\n constructor(e, i, r, o) {\n We(this, \"_evt\"), We(this, \"_ctx\"), We(this, \"_container\"), We(this, \"_pool\"), We(this, \"_containerW\", 0), We(this, \"_containerH\", 0), We(this, \"_containerL\", 0), We(this, \"_arr\", []), We(this, \"_renderAreatop\", 30), We(this, \"_scrollXSpace\", 10), We(this, \"_scrollYSpace\", 10), We(this, \"_buf\", []), We(this, \"_disposeComment\", (l) => {\n this._container.removeChild(l.dom), this._pool.recycle(l.dom), l.destroy();\n for (let v = 0; v < this._arr.length; v++)\n if (this._arr[v] === l) {\n this._arr.splice(v, 1);\n return;\n }\n }), this._evt = e, this._ctx = i, this._container = r, this._pool = o;\n }\n clear() {\n let e = this._arr.shift();\n for (; e; )\n this._disposeComment(e), e = this._arr.shift();\n this._buf = [];\n }\n render(e) {\n e.unshift(...this._buf), this._buf = [], e.length && this._updateContainerSize(), e.forEach((i) => {\n const r = this._pool.create();\n if (r) {\n this._container.appendChild(r), r.style.transform = `translateX(${this._containerW})`;\n let o = new zL(this._evt, this._ctx, r, i, () => {\n this._disposeComment(o);\n });\n o.duration = this._ctx.setting.durationMultiple * lL(o.data), o.stageWidth = this._containerW, o.opacity = this._ctx.setting.opacityMultiple;\n const l = this._getTrackH(o);\n let v = Math.floor((this._containerH - this._renderAreatop) * this._ctx.setting.scrollDanmakuAreaRatio / l);\n Number.isFinite(v) || (v = 0);\n const E = this._selectTrackIndex(o, v);\n E >= 0 ? (this._renderToTheTrack(o, E), this._arr.push(o)) : (i.mustRender && (Be.i($L, \"push must render data to buf\"), this._buf.push(i), this._buf.length > HL && this._buf.shift()), this._pool.recycle(r), this._container.removeChild(r), o.destroy()), r.style.transform = \"\";\n }\n });\n }\n play() {\n this._arr.forEach((e) => e.play());\n }\n pause() {\n this._arr.forEach((e) => e.pause());\n }\n /**\n * 将元素放入轨道\n * @param commentDom \n * @param index \n * @param trackH \n */\n _renderToTheTrack(e, i) {\n e.height !== 0 && (e.offset = i * this._getTrackH(e) + this._renderAreatop, e.initAnimation());\n }\n /**\n * 选择合适的轨道\n * @param newHeight \n * @param trackNum \n * @returns \n */\n _selectTrackIndex(e, i) {\n let r = -1;\n const o = this._getTrackH(e), l = e.duration * (e.stageWidth - this._scrollXSpace) / e.totalDistance;\n if (e.height > 0 && i > 0) {\n const v = Array(i).fill(!1);\n for (let E = 0; E < this._arr.length; E++) {\n const C = this._arr[E], x = C.remainingDistance > this._containerW || C.remainDuration >= l, g = Math.floor((C.offset - this._renderAreatop) / o), D = Math.floor((C.offset + this._getTrackH(C) - this._renderAreatop - 1) / o);\n for (let _ = g; _ <= D; _++)\n v[_] = v[g] || x;\n }\n for (let E = 0; E < i; E++)\n if (!v[E])\n return E;\n }\n return r;\n }\n _updateContainerSize() {\n const {\n width: e,\n height: i,\n left: r\n } = this._container.getBoundingClientRect();\n this._containerW = e, this._containerH = i, this._containerL = r;\n }\n _getTrackH(e) {\n return e.height + this._scrollYSpace;\n }\n}\nclass GL {\n constructor(e, i, r) {\n We(this, \"_globalPause\", !0), We(this, \"_commentContainerDom\"), We(this, \"_domPool\"), We(this, \"_lastTime\", 0), We(this, \"_ctx\"), We(this, \"_scrollRenderer\"), We(this, \"_commentMousemove\", (o) => {\n const l = o.target.closest(\"[data-kp-role=comment]\");\n l !== null && (l.addEventListener(\"mouseleave\", this._commentMouseleave), l.style.animationPlayState = \"paused\");\n }), We(this, \"_commentMouseleave\", (o) => {\n const l = o.target.closest(\"[data-kp-role=comment]\");\n l !== null && (this._globalPause || (l.style.animationPlayState = \"running\"));\n }), this._ctx = i, this._commentContainerDom = document.createElement(\"div\"), this._commentContainerDom.classList.add(Cn[\"comment-container\"]), e.appendChild(this._commentContainerDom), this._commentContainerDom.addEventListener(\"mousemove\", this._commentMousemove), this._domPool = new UL(), this._scrollRenderer = new WL(r, i, this._commentContainerDom, this._domPool);\n }\n /**\n * 清屏接口(暂停视频时用户seek到其他位置,再次播放时需要将之前的弹幕清屏)\n */\n clear() {\n this._scrollRenderer.clear();\n }\n /**\n * 弹幕播放\n */\n play() {\n this._globalPause && (this._globalPause = !1, this._scrollRenderer.play());\n }\n /**\n * 暂停播放\n */\n pause() {\n this._globalPause || (this._globalPause = !0, this._scrollRenderer.pause());\n }\n /**\n * 播放时间更新\n * @param time \n */\n timeUpdate(e) {\n var i;\n if (this._ctx.setting.isShow && !this._globalPause) {\n const r = (i = this._ctx.player) == null ? void 0 : i.bizData;\n if (e > 0) {\n (e < this._lastTime || e - this._lastTime > T_) && this.clear();\n const o = this._ctx.getDanmakuDataByTime(this._lastTime, e);\n r != null && r.userId && (o.forEach((l) => {\n l.mustRender = l.userId === On(r.userId) ? 1 : 0;\n }), o.sort((l, v) => (v.mustRender || 0) - (l.mustRender || 0))), this._scrollRenderer.render(o), this._lastTime = e;\n }\n }\n }\n /**\n * 修改弹幕展示状态\n */\n set isShow(e) {\n this._ctx.setting.isShow = e, e || this.clear();\n }\n /**\n * 获取弹幕展示状态\n */\n get isShow() {\n return this._ctx.setting.isShow;\n }\n}\nconst KL = \"kwai-player-switch\", Mr = \"danmaku-plugin\", Ss = class extends s0 {\n constructor() {\n super(), We(this, \"_container\"), We(this, \"_mask\"), We(this, \"_danmakuRenderer\"), We(this, \"_ctx\", new C2()), We(this, \"_danmakuPullerVod\"), We(this, \"_mockDanmakuPullerVod\"), We(this, \"_like\"), We(this, \"_resizeObserver\"), We(this, \"_evt\", new L2()), We(this, \"_controls\", []), We(this, \"_mockEnabled\", !0), We(this, \"_ls\", new md()), We(this, \"_infoDom\", document.createElement(\"div\")), We(this, \"_onSrcChange\", () => {\n var t, e, i;\n Be.i(Mr, \"on src change\"), this._ctx.reset(), (t = this._danmakuRenderer) == null || t.clear(), (e = this._danmakuPullerVod) == null || e.destroy(), this._danmakuPullerVod = void 0, (i = this._mockDanmakuPullerVod) == null || i.destroy(), this._mockDanmakuPullerVod = void 0;\n }), We(this, \"_onDanmakuRenderingChange\", () => {\n var t, e, i, r;\n Be.i(Mr, `danmaku rendering changed. disabled: ${(t = this._ctx.player) == null ? void 0 : t.disableDanmaku} rendering:${(e = this._ctx.player) == null ? void 0 : e.danmakuRendering}`), this._setActive(((i = this._ctx.player) == null ? void 0 : i.disableDanmaku) !== !0 && ((r = this._ctx.player) == null ? void 0 : r.danmakuRendering) !== !1);\n }), We(this, \"_onDisableDanmakuChange\", () => {\n var t, e, i, r;\n Be.i(Mr, `disable danmaku changed. disabled: ${(t = this._ctx.player) == null ? void 0 : t.disableDanmaku} rendering:${(e = this._ctx.player) == null ? void 0 : e.danmakuRendering}`), this._setActive(((i = this._ctx.player) == null ? void 0 : i.disableDanmaku) !== !0 && ((r = this._ctx.player) == null ? void 0 : r.danmakuRendering) !== !1);\n }), We(this, \"_onBizChange\", () => {\n }), We(this, \"_onPlaying\", () => {\n var t;\n (t = this._danmakuRenderer) == null || t.play();\n }), We(this, \"_onReport\", (t) => {\n t.type === \"mediaInfo\" && !t.value.isLive && Ss.isSupported && !this._danmakuPullerVod && (Be.i(Mr, `create danmaku puller vod. mock: ${this._mockEnabled}`), this._danmakuPullerVod = new CL(this._ctx), this._mockEnabled && (this._mockDanmakuPullerVod = new DL(this._ctx, 5)));\n }), We(this, \"_onPause\", () => {\n var t, e;\n (t = this._ctx.player) != null && t.ended || (e = this._danmakuRenderer) == null || e.pause();\n }), We(this, \"_onTimeUpdate\", () => {\n const t = this._ctx.player;\n t && (this._danmakuRenderer && t.currentTime > 0 && this._danmakuRenderer.timeUpdate(t.currentTime), this._danmakuPullerVod && this._danmakuPullerVod.timeUpdate(t.currentTime, t.duration), this._mockDanmakuPullerVod && this._mockDanmakuPullerVod.timeUpdate(t.currentTime, t.duration));\n }), We(this, \"_onLike\", (t) => {\n Be.i(Mr, \"click like\"), this._like.like(t.danmaku);\n }), We(this, \"_onCancelLike\", (t) => {\n Be.i(Mr, \"click cancel like\"), this._like.cancelLike(t.danmaku);\n }), this._like = new LL(this._ctx);\n }\n beforeInstall(t, e) {\n this._ctx.player = t, t.on(ge.ATTRIBUTE_CHANGE_SRC, this._onSrcChange), t.on(ge.ATTRIBUTE_CHANGE_DISABLE_DANMAKU, this._onDisableDanmakuChange), t.on(ge.ATTRIBUTE_CHANGE_DANMAKU_RENDERING, this._onDanmakuRenderingChange), t.on(ge.ATTRIBUTE_CHANGE_BIZ_DATA, this._onBizChange), t.on(ge.REPORT, this._onReport), t.on(ge.PLAYING, this._onPlaying), t.on(ge.PAUSE, this._onPause), t.on(ge.TIMEUPDATE, this._onTimeUpdate), this._evt.on(Dn.LIKE, this._onLike), this._evt.on(Dn.CANCEL_LIKE, this._onCancelLike), typeof (e == null ? void 0 : e.mock) == \"boolean\" && (this._mockEnabled = e.mock);\n const i = this._ls.read(KL);\n typeof (i == null ? void 0 : i.mockDanmaku) < \"u\" && (Be.i(Mr, `read mock danmaku swich: ${i == null ? void 0 : i.mockDanmaku}`), this._mockEnabled = !!(i != null && i.mockDanmaku));\n }\n afterInstall(t) {\n this._container = t.createSubContainer(ja.VIDEO_INTERACTIVE), this._container && (this._container.style.position = \"absolute\", this._container.style.top = \"0\", this._container.style.left = \"0\", this._container.style.display = \"block\", this._container.style.width = \"100%\", this._container.style.height = \"100%\"), this._container && Ss.isSupported && (this._danmakuRenderer = new GL(this._container, this._ctx, this._evt), this._mask = t.getPluginInstance(Uv), this._mask && this._mask.addLayer(this._container), this._resizeObserver = new i2(() => {\n }), this._resizeObserver.observe(this._container)), this._setActive(t.disableDanmaku !== !0 && this._ctx.setting.isShow);\n }\n afterUninstall(t) {\n this._mask && this._container && this._mask.removeLayer(this._container), this._resizeObserver && this._container && (this._resizeObserver.unobserve(this._container), this._resizeObserver.disconnect()), this._controls.forEach((e) => e.destroy()), this._controls = [], t.off(ge.ATTRIBUTE_CHANGE_SRC, this._onSrcChange), t.off(ge.ATTRIBUTE_CHANGE_DISABLE_DANMAKU, this._onDisableDanmakuChange), t.off(ge.ATTRIBUTE_CHANGE_DANMAKU_RENDERING, this._onDanmakuRenderingChange), t.off(ge.ATTRIBUTE_CHANGE_BIZ_DATA, this._onBizChange), t.off(ge.REPORT, this._onReport), t.off(ge.PLAYING, this._onPlaying), t.off(ge.PAUSE, this._onPause), t.off(ge.TIMEUPDATE, this._onTimeUpdate), this._like.destroy(), this._ctx.destroy(), this._evt.removeAllListeners();\n }\n set rendering(t) {\n Be.i(Mr, `set rendering: ${t}`), this._setActive(t), this._ctx.setting.isShow = t;\n }\n get rendering() {\n return this._danmakuRenderer ? this._danmakuRenderer.isShow : !1;\n }\n getInfoDom(t) {\n if (Be.i(Mr, `getInfoDom: ${t}`), !Ss.isSupported)\n return;\n const e = this._infoDom;\n return e.innerText = \"\", t === e_.DARK ? e.style.color = \"#FFF\" : e.style.color = \"#000\", e;\n }\n getControlPanelDom(t) {\n if (Be.i(Mr, `getControlPanelDom: ${t}. has renderer: ${!!this._danmakuRenderer}`), !Ss.isSupported)\n return;\n const e = document.createElement(\"div\");\n if (e.className = yt[\"danmaku-control-panel\"], t === e_.DARK ? e.style.color = \"#FFF\" : e.style.color = \"#000\", this._danmakuRenderer)\n return this._controls.push(new SL(this._ctx, e, this._danmakuRenderer)), e;\n }\n _setActive(t) {\n Be.i(Mr, `set isShow: ${t}`), this._danmakuRenderer && (this._danmakuRenderer.isShow = t);\n }\n};\nlet O_ = Ss;\nWe(O_, \"version\", \"1.1.0-alpha.0\"), We(O_, \"isSupported\", typeof window < \"u\" && window.CSS && CSS.supports(\"color\", \"var(--fake-var)\"));\nvar qL = Object.defineProperty, YL = (t, e, i) => e in t ? qL(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, er = (t, e, i) => (YL(t, typeof e != \"symbol\" ? e + \"\" : e, i), i);\nconst XL = 5e3, ZL = 1e4;\nvar fb = { exports: {} };\n(function(t, e) {\n (function(i) {\n var r = /^(?=((?:[a-zA-Z0-9+\\-.]+:)?))\\1(?=((?:\\/\\/[^\\/?#]*)?))\\2(?=((?:(?:[^?#\\/]*\\/)*[^;?#\\/]*)?))\\3((?:;[^?#]*)?)(\\?[^#]*)?(#[^]*)?$/, o = /^(?=([^\\/?#]*))\\1([^]*)$/, l = /(?:\\/|^)\\.(?=\\/)/g, v = /(?:\\/|^)\\.\\.\\/(?!\\.\\.\\/)[^\\/]*(?=\\/)/g, E = {\n buildAbsoluteURL: function(C, x, g) {\n if (g = g || {}, C = C.trim(), x = x.trim(), !x) {\n if (!g.alwaysNormalize)\n return C;\n var D = E.parseURL(C);\n if (!D)\n throw new Error(\"Error trying to parse base URL.\");\n return D.path = E.normalizePath(\n D.path\n ), E.buildURLFromParts(D);\n }\n var _ = E.parseURL(x);\n if (!_)\n throw new Error(\"Error trying to parse relative URL.\");\n if (_.scheme)\n return g.alwaysNormalize ? (_.path = E.normalizePath(_.path), E.buildURLFromParts(_)) : x;\n var m = E.parseURL(C);\n if (!m)\n throw new Error(\"Error trying to parse base URL.\");\n if (!m.netLoc && m.path && m.path[0] !== \"/\") {\n var p = o.exec(m.path);\n m.netLoc = p[1], m.path = p[2];\n }\n m.netLoc && !m.path && (m.path = \"/\");\n var d = {\n scheme: m.scheme,\n netLoc: _.netLoc,\n path: null,\n params: _.params,\n query: _.query,\n fragment: _.fragment\n };\n if (!_.netLoc && (d.netLoc = m.netLoc, _.path[0] !== \"/\"))\n if (!_.path)\n d.path = m.path, _.params || (d.params = m.params, _.query || (d.query = m.query));\n else {\n var u = m.path, U = u.substring(0, u.lastIndexOf(\"/\") + 1) + _.path;\n d.path = E.normalizePath(U);\n }\n return d.path === null && (d.path = g.alwaysNormalize ? E.normalizePath(_.path) : _.path), E.buildURLFromParts(d);\n },\n parseURL: function(C) {\n var x = r.exec(C);\n return x ? {\n scheme: x[1] || \"\",\n netLoc: x[2] || \"\",\n path: x[3] || \"\",\n params: x[4] || \"\",\n query: x[5] || \"\",\n fragment: x[6] || \"\"\n } : null;\n },\n normalizePath: function(C) {\n for (C = C.split(\"\").reverse().join(\"\").replace(l, \"\"); C.length !== (C = C.replace(v, \"\")).length; )\n ;\n return C.split(\"\").reverse().join(\"\");\n },\n buildURLFromParts: function(C) {\n return C.scheme + C.netLoc + C.path + C.params + C.query + C.fragment;\n }\n };\n t.exports = E;\n })();\n})(fb);\nvar QL = Object.defineProperty, JL = (t, e, i) => e in t ? QL(t, e, { enumerable: !0, configurable: !0, writable: !0, value: i }) : t[e] = i, ma = (t, e, i) => (JL(t, typeof e != \"symbol\" ? e + \"\" : e, i), i);\nconst pp = {\n search: function(t, e) {\n let i = 0, r = t.length - 1, o = null, l = null;\n for (; i <= r; ) {\n o = (i + r) / 2 | 0, l = t[o];\n const v = e(l);\n if (v > 0)\n i = o + 1;\n else if (v < 0)\n r = o - 1;\n else\n return l;\n }\n },\n searchIndex: function(t, e) {\n let i = 0, r = t.length - 1, o = null, l = null;\n for (; i <= r; ) {\n o = (i + r) / 2 | 0, l = t[o];\n const v = e(l);\n if (v > 0)\n i = o + 1;\n else if (v < 0)\n r = o - 1;\n else\n return o;\n }\n return -1;\n }\n}, Zn = class {\n constructor() {\n ma(this, \"timeout\", 7 * 24 * 3600 * 1e3);\n }\n write(t, e) {\n if (Zn.available)\n try {\n localStorage.setItem(\n t,\n JSON.stringify({ value: e, time: Date.now() })\n );\n } catch (i) {\n }\n }\n read(t, e = !0) {\n if (Zn.available)\n try {\n const i = localStorage.getItem(t);\n if (i) {\n const { value: r, time: o = 0 } = JSON.parse(i);\n if (!e || Date.now() - o < this.timeout)\n return r;\n }\n } catch (i) {\n }\n }\n static get available() {\n if (typeof Zn._available > \"u\")\n try {\n localStorage.setItem(\"alg\", \"test\"), Zn._available = !0;\n } catch (t) {\n Zn._available = !1;\n }\n return Zn._available;\n }\n};\nlet eR = Zn;\nma(eR, \"_available\");\nconst tR = \"kwai-p\";\nfunction ys(t, e) {\n return (!e || e.length === 0) && (e = [t], t = \"\"), t = tR + (t ? \"::\" + t : \"\"), e.unshift(\"[\" + t + \"] > \"), e;\n}\nconst si = class {\n static level(t) {\n switch (si.ENABLE_ERROR = si.ENABLE_WARN = si.ENABLE_INFO = si.ENABLE_DEBUG = si.ENABLE_VERBOSE = !1, t) {\n case \"e\":\n si.ENABLE_ERROR = !0;\n break;\n case \"w\":\n si.ENABLE_ERROR = si.ENABLE_WARN = !0;\n break;\n case \"i\":\n si.ENABLE_ERROR = si.ENABLE_WARN = si.ENABLE_INFO = !0;\n break;\n case \"d\":\n si.ENABLE_ERROR = si.ENABLE_WARN = si.ENABLE_INFO = si.ENABLE_DEBUG = !0;\n break;\n case \"v\":\n si.ENABLE_ERROR = si.ENABLE_WARN = si.ENABLE_INFO = si.ENABLE_DEBUG = si.ENABLE_VERBOSE = !0;\n break;\n }\n }\n static e(t, ...e) {\n if (!si.ENABLE_ERROR)\n return;\n const i = ys(t, e);\n (console.error || console.warn || console.log).apply(console, i);\n }\n static w(t, ...e) {\n if (!si.ENABLE_WARN)\n return;\n const i = ys(t, e);\n (console.warn || console.log).apply(console, i);\n }\n static i(t, ...e) {\n if (!si.ENABLE_INFO)\n return;\n const i = ys(t, e);\n (console.info || console.log).apply(console, i);\n }\n static d(t, ...e) {\n if (!si.ENABLE_DEBUG)\n return;\n const i = ys(t, e);\n (console.debug || console.log).apply(console, i);\n }\n static v(t, ...e) {\n if (!si.ENABLE_VERBOSE)\n return;\n const i = ys(t, e);\n console.log.apply(console, i);\n }\n};\nlet qs = si;\nma(qs, \"ENABLE_ERROR\", !0);\nma(qs, \"ENABLE_WARN\", !1);\nma(qs, \"ENABLE_INFO\", !1);\nma(qs, \"ENABLE_DEBUG\", !1);\nma(qs, \"ENABLE_VERBOSE\", !1);\nvar iR = typeof globalThis < \"u\" ? globalThis : typeof window < \"u\" ? window : typeof global < \"u\" ? global : typeof self < \"u\" ? self : {}, N_ = { exports: {} };\n(function(t, e) {\n (function(i, r) {\n var o = \"1.0.33\", l = \"\", v = \"?\", E = \"function\", C = \"undefined\", x = \"object\", g = \"string\", D = \"major\", _ = \"model\", m = \"name\", p = \"type\", d = \"vendor\", u = \"version\", U = \"architecture\", w = \"console\", S = \"mobile\", R = \"tablet\", z = \"smarttv\", W = \"wearable\", fe = \"embedded\", q = 350, ve = \"Amazon\", Ae = \"Apple\", P = \"ASUS\", Me = \"BlackBerry\", Ie = \"Browser\", je = \"Chrome\", ke = \"Edge\", H = \"Firefox\", ie = \"Google\", ye = \"Huawei\", we = \"LG\", J = \"Microsoft\", le = \"Motorola\", me = \"Opera\", he = \"Samsung\", re = \"Sharp\", Se = \"Sony\", Pe = \"Xiaomi\", Xe = \"Zebra\", Oe = \"Facebook\", st = function(K, Z) {\n var Y = {};\n for (var _e in K)\n Z[_e] && Z[_e].length % 2 === 0 ? Y[_e] = Z[_e].concat(K[_e]) : Y[_e] = K[_e];\n return Y;\n }, ze = function(K) {\n for (var Z = {}, Y = 0; Y < K.length; Y++)\n Z[K[Y].toUpperCase()] = K[Y];\n return Z;\n }, rt = function(K, Z) {\n return typeof K === g ? Fe(Z).indexOf(Fe(K)) !== -1 : !1;\n }, Fe = function(K) {\n return K.toLowerCase();\n }, G = function(K) {\n return typeof K === g ? K.replace(/[^\\d\\.]/g, l).split(\".\")[0] : r;\n }, k = function(K, Z) {\n if (typeof K === g)\n return K = K.replace(/^\\s\\s*/, l), typeof Z === C ? K : K.substring(0, q);\n }, F = function(K, Z) {\n for (var Y = 0, _e, ee, Ve, ce, qe, Ce; Y < Z.length && !qe; ) {\n var Ye = Z[Y], tt = Z[Y + 1];\n for (_e = ee = 0; _e < Ye.length && !qe; )\n if (qe = Ye[_e++].exec(K), qe)\n for (Ve = 0; Ve < tt.length; Ve++)\n Ce = qe[++ee], ce = tt[Ve], typeof ce === x && ce.length > 0 ? ce.length === 2 ? typeof ce[1] == E ? this[ce[0]] = ce[1].call(this, Ce) : this[ce[0]] = ce[1] : ce.length === 3 ? typeof ce[1] === E && !(ce[1].exec && ce[1].test) ? this[ce[0]] = Ce ? ce[1].call(this, Ce, ce[2]) : r : this[ce[0]] = Ce ? Ce.replace(ce[1], ce[2]) : r : ce.length === 4 && (this[ce[0]] = Ce ? ce[3].call(this, Ce.replace(ce[1], ce[2])) : r) : this[ce] = Ce || r;\n Y += 2;\n }\n }, I = function(K, Z) {\n for (var Y in Z)\n if (typeof Z[Y] === x && Z[Y].length > 0) {\n for (var _e = 0; _e < Z[Y].length; _e++)\n if (rt(Z[Y][_e], K))\n return Y === v ? r : Y;\n } else if (rt(Z[Y], K))\n return Y === v ? r : Y;\n return K;\n }, V = {\n \"1.0\": \"/8\",\n \"1.2\": \"/1\",\n \"1.3\": \"/3\",\n \"2.0\": \"/412\",\n \"2.0.2\": \"/416\",\n \"2.0.3\": \"/417\",\n \"2.0.4\": \"/419\",\n \"?\": \"/\"\n }, ne = {\n ME: \"4.90\",\n \"NT 3.11\": \"NT3.51\",\n \"NT 4.0\": \"NT4.0\",\n 2e3: \"NT 5.0\",\n XP: [\"NT 5.1\", \"NT 5.2\"],\n Vista: \"NT 6.0\",\n 7: \"NT 6.1\",\n 8: \"NT 6.2\",\n \"8.1\": \"NT 6.3\",\n 10: [\"NT 6.4\", \"NT 10.0\"],\n RT: \"ARM\"\n }, oe = {\n browser: [\n [\n /\\b(?:crmo|crios)\\/([\\w\\.]+)/i\n ],\n [u, [m, \"Chrome\"]],\n [\n /edg(?:e|ios|a)?\\/([\\w\\.]+)/i\n ],\n [u, [m, \"Edge\"]],\n [\n /(opera mini)\\/([-\\w\\.]+)/i,\n /(opera [mobiletab]{3,6})\\b.+version\\/([-\\w\\.]+)/i,\n /(opera)(?:.+version\\/|[\\/ ]+)([\\w\\.]+)/i\n ],\n [m, u],\n [\n /opios[\\/ ]+([\\w\\.]+)/i\n ],\n [u, [m, me + \" Mini\"]],\n [\n /\\bopr\\/([\\w\\.]+)/i\n ],\n [u, [m, me]],\n [\n /(kindle)\\/([\\w\\.]+)/i,\n /(lunascape|maxthon|netfront|jasmine|blazer)[\\/ ]?([\\w\\.]*)/i,\n /(avant |iemobile|slim)(?:browser)?[\\/ ]?([\\w\\.]*)/i,\n /(ba?idubrowser)[\\/ ]?([\\w\\.]+)/i,\n /(?:ms|\\()(ie) ([\\w\\.]+)/i,\n /(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale|qqbrowserlite|qq|duckduckgo)\\/([-\\w\\.]+)/i,\n /(weibo)__([\\d\\.]+)/i\n ],\n [m, u],\n [\n /(?:\\buc? ?browser|(?:juc.+)ucweb)[\\/ ]?([\\w\\.]+)/i\n ],\n [u, [m, \"UC\" + Ie]],\n [\n /microm.+\\bqbcore\\/([\\w\\.]+)/i,\n /\\bqbcore\\/([\\w\\.]+).+microm/i\n ],\n [u, [m, \"WeChat(Win) Desktop\"]],\n [\n /micromessenger\\/([\\w\\.]+)/i\n ],\n [u, [m, \"WeChat\"]],\n [\n /konqueror\\/([\\w\\.]+)/i\n ],\n [u, [m, \"Konqueror\"]],\n [\n /trident.+rv[: ]([\\w\\.]{1,9})\\b.+like gecko/i\n ],\n [u, [m, \"IE\"]],\n [\n /yabrowser\\/([\\w\\.]+)/i\n ],\n [u, [m, \"Yandex\"]],\n [\n /(avast|avg)\\/([\\w\\.]+)/i\n ],\n [[m, /(.+)/, \"$1 Secure \" + Ie], u],\n [\n /\\bfocus\\/([\\w\\.]+)/i\n ],\n [u, [m, H + \" Focus\"]],\n [\n /\\bopt\\/([\\w\\.]+)/i\n ],\n [u, [m, me + \" Touch\"]],\n [\n /coc_coc\\w+\\/([\\w\\.]+)/i\n ],\n [u, [m, \"Coc Coc\"]],\n [\n /dolfin\\/([\\w\\.]+)/i\n ],\n [u, [m, \"Dolphin\"]],\n [\n /coast\\/([\\w\\.]+)/i\n ],\n [u, [m, me + \" Coast\"]],\n [\n /miuibrowser\\/([\\w\\.]+)/i\n ],\n [u, [m, \"MIUI \" + Ie]],\n [\n /fxios\\/([-\\w\\.]+)/i\n ],\n [u, [m, H]],\n [\n /\\bqihu|(qi?ho?o?|360)browser/i\n ],\n [[m, \"360 \" + Ie]],\n [\n /(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i\n ],\n [[m, /(.+)/, \"$1 \" + Ie], u],\n [\n /(comodo_dragon)\\/([\\w\\.]+)/i\n ],\n [[m, /_/g, \" \"], u],\n [\n /(electron)\\/([\\w\\.]+) safari/i,\n /(tesla)(?: qtcarbrowser|\\/(20\\d\\d\\.[-\\w\\.]+))/i,\n /m?(qqbrowser|baiduboxapp|2345Explorer)[\\/ ]?([\\w\\.]+)/i\n ],\n [m, u],\n [\n /(metasr)[\\/ ]?([\\w\\.]+)/i,\n /(lbbrowser)/i,\n /\\[(linkedin)app\\]/i\n ],\n [m],\n [\n /((?:fban\\/fbios|fb_iab\\/fb4a)(?!.+fbav)|;fbav\\/([\\w\\.]+);)/i\n ],\n [[m, Oe], u],\n [\n /safari (line)\\/([\\w\\.]+)/i,\n /\\b(line)\\/([\\w\\.]+)\\/iab/i,\n /(chromium|instagram)[\\/ ]([-\\w\\.]+)/i\n ],\n [m, u],\n [\n /\\bgsa\\/([\\w\\.]+) .*safari\\//i\n ],\n [u, [m, \"GSA\"]],\n [\n /headlesschrome(?:\\/([\\w\\.]+)| )/i\n ],\n [u, [m, je + \" Headless\"]],\n [\n / wv\\).+(chrome)\\/([\\w\\.]+)/i\n ],\n [[m, je + \" WebView\"], u],\n [\n /droid.+ version\\/([\\w\\.]+)\\b.+(?:mobile safari|safari)/i\n ],\n [u, [m, \"Android \" + Ie]],\n [\n /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\/v?([\\w\\.]+)/i\n ],\n [m, u],\n [\n /version\\/([\\w\\.\\,]+) .*mobile\\/\\w+ (safari)/i\n ],\n [u, [m, \"Mobile Safari\"]],\n [\n /version\\/([\\w(\\.|\\,)]+) .*(mobile ?safari|safari)/i\n ],\n [u, m],\n [\n /webkit.+?(mobile ?safari|safari)(\\/[\\w\\.]+)/i\n ],\n [m, [u, I, V]],\n [\n /(webkit|khtml)\\/([\\w\\.]+)/i\n ],\n [m, u],\n [\n /(navigator|netscape\\d?)\\/([-\\w\\.]+)/i\n ],\n [[m, \"Netscape\"], u],\n [\n /mobile vr; rv:([\\w\\.]+)\\).+firefox/i\n ],\n [u, [m, H + \" Reality\"]],\n [\n /ekiohf.+(flow)\\/([\\w\\.]+)/i,\n /(swiftfox)/i,\n /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\/ ]?([\\w\\.\\+]+)/i,\n /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\/([-\\w\\.]+)$/i,\n /(firefox)\\/([\\w\\.]+)/i,\n /(mozilla)\\/([\\w\\.]+) .+rv\\:.+gecko\\/\\d+/i,\n /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\. ]?browser)[-\\/ ]?v?([\\w\\.]+)/i,\n /(links) \\(([\\w\\.]+)/i\n ],\n [m, u],\n [\n /(cobalt)\\/([\\w\\.]+)/i\n ],\n [m, [u, /master.|lts./, \"\"]]\n ],\n cpu: [\n [\n /(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\)]/i\n ],\n [[U, \"amd64\"]],\n [\n /(ia32(?=;))/i\n ],\n [[U, Fe]],\n [\n /((?:i[346]|x)86)[;\\)]/i\n ],\n [[U, \"ia32\"]],\n [\n /\\b(aarch64|arm(v?8e?l?|_?64))\\b/i\n ],\n [[U, \"arm64\"]],\n [\n /\\b(arm(?:v[67])?ht?n?[fl]p?)\\b/i\n ],\n [[U, \"armhf\"]],\n [\n /windows (ce|mobile); ppc;/i\n ],\n [[U, \"arm\"]],\n [\n /((?:ppc|powerpc)(?:64)?)(?: mac|;|\\))/i\n ],\n [[U, /ower/, l, Fe]],\n [\n /(sun4\\w)[;\\)]/i\n ],\n [[U, \"sparc\"]],\n [\n /((?:avr32|ia64(?=;))|68k(?=\\))|\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\b|pa-risc)/i\n ],\n [[U, Fe]]\n ],\n device: [\n [\n /\\b(sch-i[89]0\\d|shw-m380s|sm-[ptx]\\w{2,4}|gt-[pn]\\d{2,4}|sgh-t8[56]9|nexus 10)/i\n ],\n [_, [d, he], [p, R]],\n [\n /\\b((?:s[cgp]h|gt|sm)-\\w+|galaxy nexus)/i,\n /samsung[- ]([-\\w]+)/i,\n /sec-(sgh\\w+)/i\n ],\n [_, [d, he], [p, S]],\n [\n /\\((ip(?:hone|od)[\\w ]*);/i\n ],\n [_, [d, Ae], [p, S]],\n [\n /\\((ipad);[-\\w\\),; ]+apple/i,\n /applecoremedia\\/[\\w\\.]+ \\((ipad)/i,\n /\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i\n ],\n [_, [d, Ae], [p, R]],\n [\n /(macintosh);/i\n ],\n [_, [d, Ae]],\n [\n /\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i\n ],\n [_, [d, ye], [p, R]],\n [\n /(?:huawei|honor)([-\\w ]+)[;\\)]/i,\n /\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i\n ],\n [_, [d, ye], [p, S]],\n [\n /\\b(poco[\\w ]+)(?: bui|\\))/i,\n /\\b; (\\w+) build\\/hm\\1/i,\n /\\b(hm[-_ ]?note?[_ ]?(?:\\d\\w)?) bui/i,\n /\\b(redmi[\\-_ ]?(?:note|k)?[\\w_ ]+)(?: bui|\\))/i,\n /\\b(mi[-_ ]?(?:a\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\d?\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\))/i\n ],\n [[_, /_/g, \" \"], [d, Pe], [p, S]],\n [\n /\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i\n ],\n [[_, /_/g, \" \"], [d, Pe], [p, R]],\n [\n /; (\\w+) bui.+ oppo/i,\n /\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i\n ],\n [_, [d, \"OPPO\"], [p, S]],\n [\n /vivo (\\w+)(?: bui|\\))/i,\n /\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i\n ],\n [_, [d, \"Vivo\"], [p, S]],\n [\n /\\b(rmx[12]\\d{3})(?: bui|;|\\))/i\n ],\n [_, [d, \"Realme\"], [p, S]],\n [\n /\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\b[\\w ]+build\\//i,\n /\\bmot(?:orola)?[- ](\\w*)/i,\n /((?:moto[\\w\\(\\) ]+|xt\\d{3,4}|nexus 6)(?= bui|\\)))/i\n ],\n [_, [d, le], [p, S]],\n [\n /\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i\n ],\n [_, [d, le], [p, R]],\n [\n /((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i\n ],\n [_, [d, we], [p, R]],\n [\n /(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i,\n /\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i,\n /\\blg-?([\\d\\w]+) bui/i\n ],\n [_, [d, we], [p, S]],\n [\n /(ideatab[-\\w ]+)/i,\n /lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i\n ],\n [_, [d, \"Lenovo\"], [p, R]],\n [\n /(?:maemo|nokia).*(n900|lumia \\d+)/i,\n /nokia[-_ ]?([-\\w\\.]*)/i\n ],\n [[_, /_/g, \" \"], [d, \"Nokia\"], [p, S]],\n [\n /(pixel c)\\b/i\n ],\n [_, [d, ie], [p, R]],\n [\n /droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i\n ],\n [_, [d, ie], [p, S]],\n [\n /droid.+ (a?\\d[0-2]{2}so|[c-g]\\d{4}|so[-gl]\\w+|xq-a\\w[4-7][12])(?= bui|\\).+chrome\\/(?![1-6]{0,1}\\d\\.))/i\n ],\n [_, [d, Se], [p, S]],\n [\n /sony tablet [ps]/i,\n /\\b(?:sony)?sgp\\w+(?: bui|\\))/i\n ],\n [[_, \"Xperia Tablet\"], [d, Se], [p, R]],\n [\n / (kb2005|in20[12]5|be20[12][59])\\b/i,\n /(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i\n ],\n [_, [d, \"OnePlus\"], [p, S]],\n [\n /(alexa)webm/i,\n /(kf[a-z]{2}wi)( bui|\\))/i,\n /(kf[a-z]+)( bui|\\)).+silk\\//i\n ],\n [_, [d, ve], [p, R]],\n [\n /((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i\n ],\n [[_, /(.+)/g, \"Fire Phone $1\"], [d, ve], [p, S]],\n [\n /(playbook);[-\\w\\),; ]+(rim)/i\n ],\n [_, d, [p, R]],\n [\n /\\b((?:bb[a-f]|st[hv])100-\\d)/i,\n /\\(bb10; (\\w+)/i\n ],\n [_, [d, Me], [p, S]],\n [\n /(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i\n ],\n [_, [d, P], [p, R]],\n [\n / (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i\n ],\n [_, [d, P], [p, S]],\n [\n /(nexus 9)/i\n ],\n [_, [d, \"HTC\"], [p, R]],\n [\n /(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i,\n /(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i,\n /(alcatel|geeksphone|nexian|panasonic|sony(?!-bra))[-_ ]?([-\\w]*)/i\n ],\n [d, [_, /_/g, \" \"], [p, S]],\n [\n /droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i\n ],\n [_, [d, \"Acer\"], [p, R]],\n [\n /droid.+; (m[1-5] note) bui/i,\n /\\bmz-([-\\w]{2,})/i\n ],\n [_, [d, \"Meizu\"], [p, S]],\n [\n /\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i\n ],\n [_, [d, re], [p, S]],\n [\n /(blackberry|benq|palm(?=\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\w]*)/i,\n /(hp) ([\\w ]+\\w)/i,\n /(asus)-?(\\w+)/i,\n /(microsoft); (lumia[\\w ]+)/i,\n /(lenovo)[-_ ]?([-\\w]+)/i,\n /(jolla)/i,\n /(oppo) ?([\\w ]+) bui/i\n ],\n [d, _, [p, S]],\n [\n /(archos) (gamepad2?)/i,\n /(hp).+(touchpad(?!.+tablet)|tablet)/i,\n /(kindle)\\/([\\w\\.]+)/i,\n /(nook)[\\w ]+build\\/(\\w+)/i,\n /(dell) (strea[kpr\\d ]*[\\dko])/i,\n /(le[- ]+pan)[- ]+(\\w{1,9}) bui/i,\n /(trinity)[- ]*(t\\d{3}) bui/i,\n /(gigaset)[- ]+(q\\w{1,9}) bui/i,\n /(vodafone) ([\\w ]+)(?:\\)| bui)/i\n ],\n [d, _, [p, R]],\n [\n /(surface duo)/i\n ],\n [_, [d, J], [p, R]],\n [\n /droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i\n ],\n [_, [d, \"Fairphone\"], [p, S]],\n [\n /(u304aa)/i\n ],\n [_, [d, \"AT&T\"], [p, S]],\n [\n /\\bsie-(\\w*)/i\n ],\n [_, [d, \"Siemens\"], [p, S]],\n [\n /\\b(rct\\w+) b/i\n ],\n [_, [d, \"RCA\"], [p, R]],\n [\n /\\b(venue[\\d ]{2,7}) b/i\n ],\n [_, [d, \"Dell\"], [p, R]],\n [\n /\\b(q(?:mv|ta)\\w+) b/i\n ],\n [_, [d, \"Verizon\"], [p, R]],\n [\n /\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i\n ],\n [_, [d, \"Barnes & Noble\"], [p, R]],\n [\n /\\b(tm\\d{3}\\w+) b/i\n ],\n [_, [d, \"NuVision\"], [p, R]],\n [\n /\\b(k88) b/i\n ],\n [_, [d, \"ZTE\"], [p, R]],\n [\n /\\b(nx\\d{3}j) b/i\n ],\n [_, [d, \"ZTE\"], [p, S]],\n [\n /\\b(gen\\d{3}) b.+49h/i\n ],\n [_, [d, \"Swiss\"], [p, S]],\n [\n /\\b(zur\\d{3}) b/i\n ],\n [_, [d, \"Swiss\"], [p, R]],\n [\n /\\b((zeki)?tb.*\\b) b/i\n ],\n [_, [d, \"Zeki\"], [p, R]],\n [\n /\\b([yr]\\d{2}) b/i,\n /\\b(dragon[- ]+touch |dt)(\\w{5}) b/i\n ],\n [[d, \"Dragon Touch\"], _, [p, R]],\n [\n /\\b(ns-?\\w{0,9}) b/i\n ],\n [_, [d, \"Insignia\"], [p, R]],\n [\n /\\b((nxa|next)-?\\w{0,9}) b/i\n ],\n [_, [d, \"NextBook\"], [p, R]],\n [\n /\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i\n ],\n [[d, \"Voice\"], _, [p, S]],\n [\n /\\b(lvtel\\-)?(v1[12]) b/i\n ],\n [[d, \"LvTel\"], _, [p, S]],\n [\n /\\b(ph-1) /i\n ],\n [_, [d, \"Essential\"], [p, S]],\n [\n /\\b(v(100md|700na|7011|917g).*\\b) b/i\n ],\n [_, [d, \"Envizen\"], [p, R]],\n [\n /\\b(trio[-\\w\\. ]+) b/i\n ],\n [_, [d, \"MachSpeed\"], [p, R]],\n [\n /\\btu_(1491) b/i\n ],\n [_, [d, \"Rotor\"], [p, R]],\n [\n /(shield[\\w ]+) b/i\n ],\n [_, [d, \"Nvidia\"], [p, R]],\n [\n /(sprint) (\\w+)/i\n ],\n [d, _, [p, S]],\n [\n /(kin\\.[onetw]{3})/i\n ],\n [[_, /\\./g, \" \"], [d, J], [p, S]],\n [\n /droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i\n ],\n [_, [d, Xe], [p, R]],\n [\n /droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i\n ],\n [_, [d, Xe], [p, S]],\n [\n /(ouya)/i,\n /(nintendo) ([wids3utch]+)/i\n ],\n [d, _, [p, w]],\n [\n /droid.+; (shield) bui/i\n ],\n [_, [d, \"Nvidia\"], [p, w]],\n [\n /(playstation [345portablevi]+)/i\n ],\n [_, [d, Se], [p, w]],\n [\n /\\b(xbox(?: one)?(?!; xbox))[\\); ]/i\n ],\n [_, [d, J], [p, w]],\n [\n /smart-tv.+(samsung)/i\n ],\n [d, [p, z]],\n [\n /hbbtv.+maple;(\\d+)/i\n ],\n [[_, /^/, \"SmartTV\"], [d, he], [p, z]],\n [\n /(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i\n ],\n [[d, we], [p, z]],\n [\n /(apple) ?tv/i\n ],\n [d, [_, Ae + \" TV\"], [p, z]],\n [\n /crkey/i\n ],\n [[_, je + \"cast\"], [d, ie], [p, z]],\n [\n /droid.+aft(\\w)( bui|\\))/i\n ],\n [_, [d, ve], [p, z]],\n [\n /\\(dtv[\\);].+(aquos)/i,\n /(aquos-tv[\\w ]+)\\)/i\n ],\n [_, [d, re], [p, z]],\n [\n /(bravia[\\w ]+)( bui|\\))/i\n ],\n [_, [d, Se], [p, z]],\n [\n /(mitv-\\w{5}) bui/i\n ],\n [_, [d, Pe], [p, z]],\n [\n /\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i,\n /hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w ]*; *(\\w[^;]*);([^;]*)/i\n ],\n [[d, k], [_, k], [p, z]],\n [\n /\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i\n ],\n [[p, z]],\n [\n /((pebble))app/i\n ],\n [d, _, [p, W]],\n [\n /droid.+; (glass) \\d/i\n ],\n [_, [d, ie], [p, W]],\n [\n /droid.+; (wt63?0{2,3})\\)/i\n ],\n [_, [d, Xe], [p, W]],\n [\n /(quest( 2)?)/i\n ],\n [_, [d, Oe], [p, W]],\n [\n /(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i\n ],\n [d, [p, fe]],\n [\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i\n ],\n [_, [p, S]],\n [\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i\n ],\n [_, [p, R]],\n [\n /\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i\n ],\n [[p, R]],\n [\n /(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i\n ],\n [[p, S]],\n [\n /(android[-\\w\\. ]{0,9});.+buil/i\n ],\n [_, [d, \"Generic\"]]\n ],\n engine: [\n [\n /windows.+ edge\\/([\\w\\.]+)/i\n ],\n [u, [m, ke + \"HTML\"]],\n [\n /webkit\\/537\\.36.+chrome\\/(?!27)([\\w\\.]+)/i\n ],\n [u, [m, \"Blink\"]],\n [\n /(presto)\\/([\\w\\.]+)/i,\n /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\/([\\w\\.]+)/i,\n /ekioh(flow)\\/([\\w\\.]+)/i,\n /(khtml|tasman|links)[\\/ ]\\(?([\\w\\.]+)/i,\n /(icab)[\\/ ]([23]\\.[\\d\\.]+)/i\n ],\n [m, u],\n [\n /rv\\:([\\w\\.]{1,9})\\b.+(gecko)/i\n ],\n [u, m]\n ],\n os: [\n [\n /microsoft (windows) (vista|xp)/i\n ],\n [m, u],\n [\n /(windows) nt 6\\.2; (arm)/i,\n /(windows (?:phone(?: os)?|mobile))[\\/ ]?([\\d\\.\\w ]*)/i,\n /(windows)[\\/ ]?([ntce\\d\\. ]+\\w)(?!.+xbox)/i\n ],\n [m, [u, I, ne]],\n [\n /(win(?=3|9|n)|win 9x )([nt\\d\\.]+)/i\n ],\n [[m, \"Windows\"], [u, I, ne]],\n [\n /ip[honead]{2,4}\\b(?:.*os ([\\w]+) like mac|; opera)/i,\n /cfnetwork\\/.+darwin/i\n ],\n [[u, /_/g, \".\"], [m, \"iOS\"]],\n [\n /(mac os x) ?([\\w\\. ]*)/i,\n /(macintosh|mac_powerpc\\b)(?!.+haiku)/i\n ],\n [[m, \"Mac OS\"], [u, /_/g, \".\"]],\n [\n /droid ([\\w\\.]+)\\b.+(android[- ]x86|harmonyos)/i\n ],\n [u, m],\n [\n /(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\/ ]?([\\w\\.]*)/i,\n /(blackberry)\\w*\\/([\\w\\.]*)/i,\n /(tizen|kaios)[\\/ ]([\\w\\.]+)/i,\n /\\((series40);/i\n ],\n [m, u],\n [\n /\\(bb(10);/i\n ],\n [u, [m, Me]],\n [\n /(?:symbian ?os|symbos|s60(?=;)|series60)[-\\/ ]?([\\w\\.]*)/i\n ],\n [u, [m, \"Symbian\"]],\n [\n /mozilla\\/[\\d\\.]+ \\((?:mobile|tablet|tv|mobile; [\\w ]+); rv:.+ gecko\\/([\\w\\.]+)/i\n ],\n [u, [m, H + \" OS\"]],\n [\n /web0s;.+rt(tv)/i,\n /\\b(?:hp)?wos(?:browser)?\\/([\\w\\.]+)/i\n ],\n [u, [m, \"webOS\"]],\n [\n /crkey\\/([\\d\\.]+)/i\n ],\n [u, [m, je + \"cast\"]],\n [\n /(cros) [\\w]+ ([\\w\\.]+\\w)/i\n ],\n [[m, \"Chromium OS\"], u],\n [\n /(nintendo|playstation) ([wids345portablevuch]+)/i,\n /(xbox); +xbox ([^\\);]+)/i,\n /\\b(joli|palm)\\b ?(?:os)?\\/?([\\w\\.]*)/i,\n /(mint)[\\/\\(\\) ]?(\\w*)/i,\n /(mageia|vectorlinux)[; ]/i,\n /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\/ ]?(?!chrom|package)([-\\w\\.]*)/i,\n /(hurd|linux) ?([\\w\\.]*)/i,\n /(gnu) ?([\\w\\.]*)/i,\n /\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\/ ]?(?!amd|[ix346]{1,2}86)([\\w\\.]*)/i,\n /(haiku) (\\w+)/i\n ],\n [m, u],\n [\n /(sunos) ?([\\w\\.\\d]*)/i\n ],\n [[m, \"Solaris\"], u],\n [\n /((?:open)?solaris)[-\\/ ]?([\\w\\.]*)/i,\n /(aix) ((\\d)(?=\\.|\\)| )[\\w\\.])*/i,\n /\\b(beos|os\\/2|amigaos|morphos|openvms|fuchsia|hp-ux)/i,\n /(unix) ?([\\w\\.]*)/i\n ],\n [m, u]\n ]\n }, te = function(K, Z) {\n if (typeof K === x && (Z = K, K = r), !(this instanceof te))\n return new te(K, Z).getResult();\n var Y = K || (typeof i !== C && i.navigator && i.navigator.userAgent ? i.navigator.userAgent : l), _e = Z ? st(oe, Z) : oe;\n return this.getBrowser = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.browser), ee.major = G(ee.version), ee;\n }, this.getCPU = function() {\n var ee = {};\n return ee[U] = r, F.call(ee, Y, _e.cpu), ee;\n }, this.getDevice = function() {\n var ee = {};\n return ee[d] = r, ee[_] = r, ee[p] = r, F.call(ee, Y, _e.device), ee;\n }, this.getEngine = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.engine), ee;\n }, this.getOS = function() {\n var ee = {};\n return ee[m] = r, ee[u] = r, F.call(ee, Y, _e.os), ee;\n }, this.getResult = function() {\n return {\n ua: this.getUA(),\n browser: this.getBrowser(),\n engine: this.getEngine(),\n os: this.getOS(),\n device: this.getDevice(),\n cpu: this.getCPU()\n };\n }, this.getUA = function() {\n return Y;\n }, this.setUA = function(ee) {\n return Y = typeof ee === g && ee.length > q ? k(ee, q) : ee, this;\n }, this.setUA(Y), this;\n };\n te.VERSION = o, te.BROWSER = ze([m, u, D]), te.CPU = ze([U]), te.DEVICE = ze([_, d, p, w, S, z, R, W, fe]), te.ENGINE = te.OS = ze([m, u]), t.exports && (e = t.exports = te), e.UAParser = te;\n var Ee = typeof i !== C && (i.jQuery || i.Zepto);\n if (Ee && !Ee.ua) {\n var xe = new te();\n Ee.ua = xe.getResult(), Ee.ua.get = function() {\n return xe.getUA();\n }, Ee.ua.set = function(K) {\n xe.setUA(K);\n var Z = xe.getResult();\n for (var Y in Z)\n Ee.ua[Y] = Z[Y];\n };\n }\n })(typeof window == \"object\" ? window : iR);\n})(N_, N_.exports);\nvar rR = N_.exports;\nconst pb = new rR(), Vc = pb.getOS().name, nR = Vc && Vc.toLowerCase().indexOf(\"android\") >= 0, aR = Vc && Vc.toLowerCase().indexOf(\"ios\") >= 0;\npb.getDevice().type;\nfunction Za(t) {\n let e = t.length;\n for (; --e >= 0; )\n t[e] = 0;\n}\nconst sR = 3, oR = 258, mb = 29, cR = 256, lR = cR + 1 + mb, vb = 30, uR = 512, _R = new Array((lR + 2) * 2);\nZa(_R);\nconst dR = new Array(vb * 2);\nZa(dR);\nconst hR = new Array(uR);\nZa(hR);\nconst fR = new Array(oR - sR + 1);\nZa(fR);\nconst pR = new Array(mb);\nZa(pR);\nconst mR = new Array(vb);\nZa(mR);\nconst vR = (t, e, i, r) => {\n let o = t & 65535 | 0, l = t >>> 16 & 65535 | 0, v = 0;\n for (; i !== 0; ) {\n v = i > 2e3 ? 2e3 : i, i -= v;\n do\n o = o + e[r++] | 0, l = l + o | 0;\n while (--v);\n o %= 65521, l %= 65521;\n }\n return o | l << 16 | 0;\n};\nvar P_ = vR;\nconst gR = () => {\n let t, e = [];\n for (var i = 0; i < 256; i++) {\n t = i;\n for (var r = 0; r < 8; r++)\n t = t & 1 ? 3988292384 ^ t >>> 1 : t >>> 1;\n e[i] = t;\n }\n return e;\n}, bR = new Uint32Array(gR()), yR = (t, e, i, r) => {\n const o = bR, l = r + i;\n t ^= -1;\n for (let v = r; v < l; v++)\n t = t >>> 8 ^ o[(t ^ e[v]) & 255];\n return t ^ -1;\n};\nvar $r = yR, M_ = {\n 2: \"need dictionary\",\n 1: \"stream end\",\n 0: \"\",\n \"-1\": \"file error\",\n \"-2\": \"stream error\",\n \"-3\": \"data error\",\n \"-4\": \"insufficient memory\",\n \"-5\": \"buffer error\",\n \"-6\": \"incompatible version\"\n}, Sd = {\n Z_NO_FLUSH: 0,\n Z_PARTIAL_FLUSH: 1,\n Z_SYNC_FLUSH: 2,\n Z_FULL_FLUSH: 3,\n Z_FINISH: 4,\n Z_BLOCK: 5,\n Z_TREES: 6,\n Z_OK: 0,\n Z_STREAM_END: 1,\n Z_NEED_DICT: 2,\n Z_ERRNO: -1,\n Z_STREAM_ERROR: -2,\n Z_DATA_ERROR: -3,\n Z_MEM_ERROR: -4,\n Z_BUF_ERROR: -5,\n Z_NO_COMPRESSION: 0,\n Z_BEST_SPEED: 1,\n Z_BEST_COMPRESSION: 9,\n Z_DEFAULT_COMPRESSION: -1,\n Z_FILTERED: 1,\n Z_HUFFMAN_ONLY: 2,\n Z_RLE: 3,\n Z_FIXED: 4,\n Z_DEFAULT_STRATEGY: 0,\n Z_BINARY: 0,\n Z_TEXT: 1,\n Z_UNKNOWN: 2,\n Z_DEFLATED: 8\n};\nconst ER = (t, e) => Object.prototype.hasOwnProperty.call(t, e);\nvar wR = function(t) {\n const e = Array.prototype.slice.call(arguments, 1);\n for (; e.length; ) {\n const i = e.shift();\n if (i) {\n if (typeof i != \"object\")\n throw new TypeError(i + \"must be non-object\");\n for (const r in i)\n ER(i, r) && (t[r] = i[r]);\n }\n }\n return t;\n}, AR = (t) => {\n let e = 0;\n for (let r = 0, o = t.length; r < o; r++)\n e += t[r].length;\n const i = new Uint8Array(e);\n for (let r = 0, o = 0, l = t.length; r < l; r++) {\n let v = t[r];\n i.set(v, o), o += v.length;\n }\n return i;\n}, gb = {\n assign: wR,\n flattenChunks: AR\n};\nlet bb = !0;\ntry {\n String.fromCharCode.apply(null, new Uint8Array(1));\n} catch (t) {\n bb = !1;\n}\nconst Fs = new Uint8Array(256);\nfor (let t = 0; t < 256; t++)\n Fs[t] = t >= 252 ? 6 : t >= 248 ? 5 : t >= 240 ? 4 : t >= 224 ? 3 : t >= 192 ? 2 : 1;\nFs[254] = Fs[254] = 1;\nvar TR = (t) => {\n if (typeof TextEncoder == \"function\" && TextEncoder.prototype.encode)\n return new TextEncoder().encode(t);\n let e, i, r, o, l, v = t.length, E = 0;\n for (o = 0; o < v; o++)\n i = t.charCodeAt(o), (i & 64512) === 55296 && o + 1 < v && (r = t.charCodeAt(o + 1), (r & 64512) === 56320 && (i = 65536 + (i - 55296 << 10) + (r - 56320), o++)), E += i < 128 ? 1 : i < 2048 ? 2 : i < 65536 ? 3 : 4;\n for (e = new Uint8Array(E), l = 0, o = 0; l < E; o++)\n i = t.charCodeAt(o), (i & 64512) === 55296 && o + 1 < v && (r = t.charCodeAt(o + 1), (r & 64512) === 56320 && (i = 65536 + (i - 55296 << 10) + (r - 56320), o++)), i < 128 ? e[l++] = i : i < 2048 ? (e[l++] = 192 | i >>> 6, e[l++] = 128 | i & 63) : i < 65536 ? (e[l++] = 224 | i >>> 12, e[l++] = 128 | i >>> 6 & 63, e[l++] = 128 | i & 63) : (e[l++] = 240 | i >>> 18, e[l++] = 128 | i >>> 12 & 63, e[l++] = 128 | i >>> 6 & 63, e[l++] = 128 | i & 63);\n return e;\n};\nconst SR = (t, e) => {\n if (e < 65534 && t.subarray && bb)\n return String.fromCharCode.apply(null, t.length === e ? t : t.subarray(0, e));\n let i = \"\";\n for (let r = 0; r < e; r++)\n i += String.fromCharCode(t[r]);\n return i;\n};\nvar xR = (t, e) => {\n const i = e || t.length;\n if (typeof TextDecoder == \"function\" && TextDecoder.prototype.decode)\n return new TextDecoder().decode(t.subarray(0, e));\n let r, o;\n const l = new Array(i * 2);\n for (o = 0, r = 0; r < i; ) {\n let v = t[r++];\n if (v < 128) {\n l[o++] = v;\n continue;\n }\n let E = Fs[v];\n if (E > 4) {\n l[o++] = 65533, r += E - 1;\n continue;\n }\n for (v &= E === 2 ? 31 : E === 3 ? 15 : 7; E > 1 && r < i; )\n v = v << 6 | t[r++] & 63, E--;\n if (E > 1) {\n l[o++] = 65533;\n continue;\n }\n v < 65536 ? l[o++] = v : (v -= 65536, l[o++] = 55296 | v >> 10 & 1023, l[o++] = 56320 | v & 1023);\n }\n return SR(l, o);\n}, LR = (t, e) => {\n e = e || t.length, e > t.length && (e = t.length);\n let i = e - 1;\n for (; i >= 0 && (t[i] & 192) === 128; )\n i--;\n return i < 0 || i === 0 ? e : i + Fs[t[i]] > e ? i : e;\n}, U_ = {\n string2buf: TR,\n buf2string: xR,\n utf8border: LR\n};\nfunction RR() {\n this.input = null, this.next_in = 0, this.avail_in = 0, this.total_in = 0, this.output = null, this.next_out = 0, this.avail_out = 0, this.total_out = 0, this.msg = \"\", this.state = null, this.data_type = 2, this.adler = 0;\n}\nvar CR = RR;\nconst mo = 16209, kR = 16191;\nvar IR = function(e, i) {\n let r, o, l, v, E, C, x, g, D, _, m, p, d, u, U, w, S, R, z, W, fe, q, ve, Ae;\n const P = e.state;\n r = e.next_in, ve = e.input, o = r + (e.avail_in - 5), l = e.next_out, Ae = e.output, v = l - (i - e.avail_out), E = l + (e.avail_out - 257), C = P.dmax, x = P.wsize, g = P.whave, D = P.wnext, _ = P.window, m = P.hold, p = P.bits, d = P.lencode, u = P.distcode, U = (1 << P.lenbits) - 1, w = (1 << P.distbits) - 1;\n e:\n do {\n p < 15 && (m += ve[r++] << p, p += 8, m += ve[r++] << p, p += 8), S = d[m & U];\n t:\n for (; ; ) {\n if (R = S >>> 24, m >>>= R, p -= R, R = S >>> 16 & 255, R === 0)\n Ae[l++] = S & 65535;\n else if (R & 16) {\n z = S & 65535, R &= 15, R && (p < R && (m += ve[r++] << p, p += 8), z += m & (1 << R) - 1, m >>>= R, p -= R), p < 15 && (m += ve[r++] << p, p += 8, m += ve[r++] << p, p += 8), S = u[m & w];\n i:\n for (; ; ) {\n if (R = S >>> 24, m >>>= R, p -= R, R = S >>> 16 & 255, R & 16) {\n if (W = S & 65535, R &= 15, p < R && (m += ve[r++] << p, p += 8, p < R && (m += ve[r++] << p, p += 8)), W += m & (1 << R) - 1, W > C) {\n e.msg = \"invalid distance too far back\", P.mode = mo;\n break e;\n }\n if (m >>>= R, p -= R, R = l - v, W > R) {\n if (R = W - R, R > g && P.sane) {\n e.msg = \"invalid distance too far back\", P.mode = mo;\n break e;\n }\n if (fe = 0, q = _, D === 0) {\n if (fe += x - R, R < z) {\n z -= R;\n do\n Ae[l++] = _[fe++];\n while (--R);\n fe = l - W, q = Ae;\n }\n } else if (D < R) {\n if (fe += x + D - R, R -= D, R < z) {\n z -= R;\n do\n Ae[l++] = _[fe++];\n while (--R);\n if (fe = 0, D < z) {\n R = D, z -= R;\n do\n Ae[l++] = _[fe++];\n while (--R);\n fe = l - W, q = Ae;\n }\n }\n } else if (fe += D - R, R < z) {\n z -= R;\n do\n Ae[l++] = _[fe++];\n while (--R);\n fe = l - W, q = Ae;\n }\n for (; z > 2; )\n Ae[l++] = q[fe++], Ae[l++] = q[fe++], Ae[l++] = q[fe++], z -= 3;\n z && (Ae[l++] = q[fe++], z > 1 && (Ae[l++] = q[fe++]));\n } else {\n fe = l - W;\n do\n Ae[l++] = Ae[fe++], Ae[l++] = Ae[fe++], Ae[l++] = Ae[fe++], z -= 3;\n while (z > 2);\n z && (Ae[l++] = Ae[fe++], z > 1 && (Ae[l++] = Ae[fe++]));\n }\n } else if (R & 64) {\n e.msg = \"invalid distance code\", P.mode = mo;\n break e;\n } else {\n S = u[(S & 65535) + (m & (1 << R) - 1)];\n continue i;\n }\n break;\n }\n } else if (R & 64)\n if (R & 32) {\n P.mode = kR;\n break e;\n } else {\n e.msg = \"invalid literal/length code\", P.mode = mo;\n break e;\n }\n else {\n S = d[(S & 65535) + (m & (1 << R) - 1)];\n continue t;\n }\n break;\n }\n } while (r < o && l < E);\n z = p >> 3, r -= z, p -= z << 3, m &= (1 << p) - 1, e.next_in = r, e.next_out = l, e.avail_in = r < o ? 5 + (o - r) : 5 - (r - o), e.avail_out = l < E ? 257 + (E - l) : 257 - (l - E), P.hold = m, P.bits = p;\n};\nconst Ia = 15, mp = 852, vp = 592, gp = 0, cu = 1, bp = 2, DR = new Uint16Array([\n 3,\n 4,\n 5,\n 6,\n 7,\n 8,\n 9,\n 10,\n 11,\n 13,\n 15,\n 17,\n 19,\n 23,\n 27,\n 31,\n 35,\n 43,\n 51,\n 59,\n 67,\n 83,\n 99,\n 115,\n 131,\n 163,\n 195,\n 227,\n 258,\n 0,\n 0\n]), OR = new Uint8Array([\n 16,\n 16,\n 16,\n 16,\n 16,\n 16,\n 16,\n 16,\n 17,\n 17,\n 17,\n 17,\n 18,\n 18,\n 18,\n 18,\n 19,\n 19,\n 19,\n 19,\n 20,\n 20,\n 20,\n 20,\n 21,\n 21,\n 21,\n 21,\n 16,\n 72,\n 78\n]), NR = new Uint16Array([\n 1,\n 2,\n 3,\n 4,\n 5,\n 7,\n 9,\n 13,\n 17,\n 25,\n 33,\n 49,\n 65,\n 97,\n 129,\n 193,\n 257,\n 385,\n 513,\n 769,\n 1025,\n 1537,\n 2049,\n 3073,\n 4097,\n 6145,\n 8193,\n 12289,\n 16385,\n 24577,\n 0,\n 0\n]), PR = new Uint8Array([\n 16,\n 16,\n 16,\n 16,\n 17,\n 17,\n 18,\n 18,\n 19,\n 19,\n 20,\n 20,\n 21,\n 21,\n 22,\n 22,\n 23,\n 23,\n 24,\n 24,\n 25,\n 25,\n 26,\n 26,\n 27,\n 27,\n 28,\n 28,\n 29,\n 29,\n 64,\n 64\n]), MR = (t, e, i, r, o, l, v, E) => {\n const C = E.bits;\n let x = 0, g = 0, D = 0, _ = 0, m = 0, p = 0, d = 0, u = 0, U = 0, w = 0, S, R, z, W, fe, q = null, ve;\n const Ae = new Uint16Array(Ia + 1), P = new Uint16Array(Ia + 1);\n let Me = null, Ie, je, ke;\n for (x = 0; x <= Ia; x++)\n Ae[x] = 0;\n for (g = 0; g < r; g++)\n Ae[e[i + g]]++;\n for (m = C, _ = Ia; _ >= 1 && Ae[_] === 0; _--)\n ;\n if (m > _ && (m = _), _ === 0)\n return o[l++] = 1 << 24 | 64 << 16 | 0, o[l++] = 1 << 24 | 64 << 16 | 0, E.bits = 1, 0;\n for (D = 1; D < _ && Ae[D] === 0; D++)\n ;\n for (m < D && (m = D), u = 1, x = 1; x <= Ia; x++)\n if (u <<= 1, u -= Ae[x], u < 0)\n return -1;\n if (u > 0 && (t === gp || _ !== 1))\n return -1;\n for (P[1] = 0, x = 1; x < Ia; x++)\n P[x + 1] = P[x] + Ae[x];\n for (g = 0; g < r; g++)\n e[i + g] !== 0 && (v[P[e[i + g]]++] = g);\n if (t === gp ? (q = Me = v, ve = 20) : t === cu ? (q = DR, Me = OR, ve = 257) : (q = NR, Me = PR, ve = 0), w = 0, g = 0, x = D, fe = l, p = m, d = 0, z = -1, U = 1 << m, W = U - 1, t === cu && U > mp || t === bp && U > vp)\n return 1;\n for (; ; ) {\n Ie = x - d, v[g] + 1 < ve ? (je = 0, ke = v[g]) : v[g] >= ve ? (je = Me[v[g] - ve], ke = q[v[g] - ve]) : (je = 32 + 64, ke = 0), S = 1 << x - d, R = 1 << p, D = R;\n do\n R -= S, o[fe + (w >> d) + R] = Ie << 24 | je << 16 | ke | 0;\n while (R !== 0);\n for (S = 1 << x - 1; w & S; )\n S >>= 1;\n if (S !== 0 ? (w &= S - 1, w += S) : w = 0, g++, --Ae[x] === 0) {\n if (x === _)\n break;\n x = e[i + v[g]];\n }\n if (x > m && (w & W) !== z) {\n for (d === 0 && (d = m), fe += D, p = x - d, u = 1 << p; p + d < _ && (u -= Ae[p + d], !(u <= 0)); )\n p++, u <<= 1;\n if (U += 1 << p, t === cu && U > mp || t === bp && U > vp)\n return 1;\n z = w & W, o[z] = m << 24 | p << 16 | fe - l | 0;\n }\n }\n return w !== 0 && (o[fe + w] = x - d << 24 | 64 << 16 | 0), E.bits = m, 0;\n};\nvar ks = MR;\nconst UR = 0, yb = 1, Eb = 2, {\n Z_FINISH: yp,\n Z_BLOCK: BR,\n Z_TREES: vo,\n Z_OK: da,\n Z_STREAM_END: VR,\n Z_NEED_DICT: FR,\n Z_STREAM_ERROR: Rr,\n Z_DATA_ERROR: wb,\n Z_MEM_ERROR: Ab,\n Z_BUF_ERROR: jR,\n Z_DEFLATED: Ep\n} = Sd, pl = 16180, wp = 16181, Ap = 16182, Tp = 16183, Sp = 16184, xp = 16185, Lp = 16186, Rp = 16187, Cp = 16188, kp = 16189, Fc = 16190, cn = 16191, lu = 16192, Ip = 16193, uu = 16194, Dp = 16195, Op = 16196, Np = 16197, Pp = 16198, go = 16199, bo = 16200, Mp = 16201, Up = 16202, Bp = 16203, Vp = 16204, Fp = 16205, _u = 16206, jp = 16207, zp = 16208, hi = 16209, Tb = 16210, Sb = 16211, zR = 852, HR = 592, $R = 15, WR = $R, Hp = (t) => (t >>> 24 & 255) + (t >>> 8 & 65280) + ((t & 65280) << 8) + ((t & 255) << 24);\nfunction GR() {\n this.strm = null, this.mode = 0, this.last = !1, this.wrap = 0, this.havedict = !1, this.flags = 0, this.dmax = 0, this.check = 0, this.total = 0, this.head = null, this.wbits = 0, this.wsize = 0, this.whave = 0, this.wnext = 0, this.window = null, this.hold = 0, this.bits = 0, this.length = 0, this.offset = 0, this.extra = 0, this.lencode = null, this.distcode = null, this.lenbits = 0, this.distbits = 0, this.ncode = 0, this.nlen = 0, this.ndist = 0, this.have = 0, this.next = null, this.lens = new Uint16Array(320), this.work = new Uint16Array(288), this.lendyn = null, this.distdyn = null, this.sane = 0, this.back = 0, this.was = 0;\n}\nconst va = (t) => {\n if (!t)\n return 1;\n const e = t.state;\n return !e || e.strm !== t || e.mode < pl || e.mode > Sb ? 1 : 0;\n}, xb = (t) => {\n if (va(t))\n return Rr;\n const e = t.state;\n return t.total_in = t.total_out = e.total = 0, t.msg = \"\", e.wrap && (t.adler = e.wrap & 1), e.mode = pl, e.last = 0, e.havedict = 0, e.flags = -1, e.dmax = 32768, e.head = null, e.hold = 0, e.bits = 0, e.lencode = e.lendyn = new Int32Array(zR), e.distcode = e.distdyn = new Int32Array(HR), e.sane = 1, e.back = -1, da;\n}, Lb = (t) => {\n if (va(t))\n return Rr;\n const e = t.state;\n return e.wsize = 0, e.whave = 0, e.wnext = 0, xb(t);\n}, Rb = (t, e) => {\n let i;\n if (va(t))\n return Rr;\n const r = t.state;\n return e < 0 ? (i = 0, e = -e) : (i = (e >> 4) + 5, e < 48 && (e &= 15)), e && (e < 8 || e > 15) ? Rr : (r.window !== null && r.wbits !== e && (r.window = null), r.wrap = i, r.wbits = e, Lb(t));\n}, Cb = (t, e) => {\n if (!t)\n return Rr;\n const i = new GR();\n t.state = i, i.strm = t, i.window = null, i.mode = pl;\n const r = Rb(t, e);\n return r !== da && (t.state = null), r;\n}, KR = (t) => Cb(t, WR);\nlet $p = !0, du, hu;\nconst qR = (t) => {\n if ($p) {\n du = new Int32Array(512), hu = new Int32Array(32);\n let e = 0;\n for (; e < 144; )\n t.lens[e++] = 8;\n for (; e < 256; )\n t.lens[e++] = 9;\n for (; e < 280; )\n t.lens[e++] = 7;\n for (; e < 288; )\n t.lens[e++] = 8;\n for (ks(yb, t.lens, 0, 288, du, 0, t.work, { bits: 9 }), e = 0; e < 32; )\n t.lens[e++] = 5;\n ks(Eb, t.lens, 0, 32, hu, 0, t.work, { bits: 5 }), $p = !1;\n }\n t.lencode = du, t.lenbits = 9, t.distcode = hu, t.distbits = 5;\n}, kb = (t, e, i, r) => {\n let o;\n const l = t.state;\n return l.window === null && (l.wsize = 1 << l.wbits, l.wnext = 0, l.whave = 0, l.window = new Uint8Array(l.wsize)), r >= l.wsize ? (l.window.set(e.subarray(i - l.wsize, i), 0), l.wnext = 0, l.whave = l.wsize) : (o = l.wsize - l.wnext, o > r && (o = r), l.window.set(e.subarray(i - r, i - r + o), l.wnext), r -= o, r ? (l.window.set(e.subarray(i - r, i), 0), l.wnext = r, l.whave = l.wsize) : (l.wnext += o, l.wnext === l.wsize && (l.wnext = 0), l.whave < l.wsize && (l.whave += o))), 0;\n}, YR = (t, e) => {\n let i, r, o, l, v, E, C, x, g, D, _, m, p, d, u = 0, U, w, S, R, z, W, fe, q;\n const ve = new Uint8Array(4);\n let Ae, P;\n const Me = new Uint8Array([16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]);\n if (va(t) || !t.output || !t.input && t.avail_in !== 0)\n return Rr;\n i = t.state, i.mode === cn && (i.mode = lu), v = t.next_out, o = t.output, C = t.avail_out, l = t.next_in, r = t.input, E = t.avail_in, x = i.hold, g = i.bits, D = E, _ = C, q = da;\n e:\n for (; ; )\n switch (i.mode) {\n case pl:\n if (i.wrap === 0) {\n i.mode = lu;\n break;\n }\n for (; g < 16; ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n if (i.wrap & 2 && x === 35615) {\n i.wbits === 0 && (i.wbits = 15), i.check = 0, ve[0] = x & 255, ve[1] = x >>> 8 & 255, i.check = $r(i.check, ve, 2, 0), x = 0, g = 0, i.mode = wp;\n break;\n }\n if (i.head && (i.head.done = !1), !(i.wrap & 1) || (((x & 255) << 8) + (x >> 8)) % 31) {\n t.msg = \"incorrect header check\", i.mode = hi;\n break;\n }\n if ((x & 15) !== Ep) {\n t.msg = \"unknown compression method\", i.mode = hi;\n break;\n }\n if (x >>>= 4, g -= 4, fe = (x & 15) + 8, i.wbits === 0 && (i.wbits = fe), fe > 15 || fe > i.wbits) {\n t.msg = \"invalid window size\", i.mode = hi;\n break;\n }\n i.dmax = 1 << i.wbits, i.flags = 0, t.adler = i.check = 1, i.mode = x & 512 ? kp : cn, x = 0, g = 0;\n break;\n case wp:\n for (; g < 16; ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n if (i.flags = x, (i.flags & 255) !== Ep) {\n t.msg = \"unknown compression method\", i.mode = hi;\n break;\n }\n if (i.flags & 57344) {\n t.msg = \"unknown header flags set\", i.mode = hi;\n break;\n }\n i.head && (i.head.text = x >> 8 & 1), i.flags & 512 && i.wrap & 4 && (ve[0] = x & 255, ve[1] = x >>> 8 & 255, i.check = $r(i.check, ve, 2, 0)), x = 0, g = 0, i.mode = Ap;\n case Ap:\n for (; g < 32; ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n i.head && (i.head.time = x), i.flags & 512 && i.wrap & 4 && (ve[0] = x & 255, ve[1] = x >>> 8 & 255, ve[2] = x >>> 16 & 255, ve[3] = x >>> 24 & 255, i.check = $r(i.check, ve, 4, 0)), x = 0, g = 0, i.mode = Tp;\n case Tp:\n for (; g < 16; ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n i.head && (i.head.xflags = x & 255, i.head.os = x >> 8), i.flags & 512 && i.wrap & 4 && (ve[0] = x & 255, ve[1] = x >>> 8 & 255, i.check = $r(i.check, ve, 2, 0)), x = 0, g = 0, i.mode = Sp;\n case Sp:\n if (i.flags & 1024) {\n for (; g < 16; ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n i.length = x, i.head && (i.head.extra_len = x), i.flags & 512 && i.wrap & 4 && (ve[0] = x & 255, ve[1] = x >>> 8 & 255, i.check = $r(i.check, ve, 2, 0)), x = 0, g = 0;\n } else\n i.head && (i.head.extra = null);\n i.mode = xp;\n case xp:\n if (i.flags & 1024 && (m = i.length, m > E && (m = E), m && (i.head && (fe = i.head.extra_len - i.length, i.head.extra || (i.head.extra = new Uint8Array(i.head.extra_len)), i.head.extra.set(\n r.subarray(\n l,\n l + m\n ),\n fe\n )), i.flags & 512 && i.wrap & 4 && (i.check = $r(i.check, r, m, l)), E -= m, l += m, i.length -= m), i.length))\n break e;\n i.length = 0, i.mode = Lp;\n case Lp:\n if (i.flags & 2048) {\n if (E === 0)\n break e;\n m = 0;\n do\n fe = r[l + m++], i.head && fe && i.length < 65536 && (i.head.name += String.fromCharCode(fe));\n while (fe && m < E);\n if (i.flags & 512 && i.wrap & 4 && (i.check = $r(i.check, r, m, l)), E -= m, l += m, fe)\n break e;\n } else\n i.head && (i.head.name = null);\n i.length = 0, i.mode = Rp;\n case Rp:\n if (i.flags & 4096) {\n if (E === 0)\n break e;\n m = 0;\n do\n fe = r[l + m++], i.head && fe && i.length < 65536 && (i.head.comment += String.fromCharCode(fe));\n while (fe && m < E);\n if (i.flags & 512 && i.wrap & 4 && (i.check = $r(i.check, r, m, l)), E -= m, l += m, fe)\n break e;\n } else\n i.head && (i.head.comment = null);\n i.mode = Cp;\n case Cp:\n if (i.flags & 512) {\n for (; g < 16; ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n if (i.wrap & 4 && x !== (i.check & 65535)) {\n t.msg = \"header crc mismatch\", i.mode = hi;\n break;\n }\n x = 0, g = 0;\n }\n i.head && (i.head.hcrc = i.flags >> 9 & 1, i.head.done = !0), t.adler = i.check = 0, i.mode = cn;\n break;\n case kp:\n for (; g < 32; ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n t.adler = i.check = Hp(x), x = 0, g = 0, i.mode = Fc;\n case Fc:\n if (i.havedict === 0)\n return t.next_out = v, t.avail_out = C, t.next_in = l, t.avail_in = E, i.hold = x, i.bits = g, FR;\n t.adler = i.check = 1, i.mode = cn;\n case cn:\n if (e === BR || e === vo)\n break e;\n case lu:\n if (i.last) {\n x >>>= g & 7, g -= g & 7, i.mode = _u;\n break;\n }\n for (; g < 3; ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n switch (i.last = x & 1, x >>>= 1, g -= 1, x & 3) {\n case 0:\n i.mode = Ip;\n break;\n case 1:\n if (qR(i), i.mode = go, e === vo) {\n x >>>= 2, g -= 2;\n break e;\n }\n break;\n case 2:\n i.mode = Op;\n break;\n case 3:\n t.msg = \"invalid block type\", i.mode = hi;\n }\n x >>>= 2, g -= 2;\n break;\n case Ip:\n for (x >>>= g & 7, g -= g & 7; g < 32; ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n if ((x & 65535) !== (x >>> 16 ^ 65535)) {\n t.msg = \"invalid stored block lengths\", i.mode = hi;\n break;\n }\n if (i.length = x & 65535, x = 0, g = 0, i.mode = uu, e === vo)\n break e;\n case uu:\n i.mode = Dp;\n case Dp:\n if (m = i.length, m) {\n if (m > E && (m = E), m > C && (m = C), m === 0)\n break e;\n o.set(r.subarray(l, l + m), v), E -= m, l += m, C -= m, v += m, i.length -= m;\n break;\n }\n i.mode = cn;\n break;\n case Op:\n for (; g < 14; ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n if (i.nlen = (x & 31) + 257, x >>>= 5, g -= 5, i.ndist = (x & 31) + 1, x >>>= 5, g -= 5, i.ncode = (x & 15) + 4, x >>>= 4, g -= 4, i.nlen > 286 || i.ndist > 30) {\n t.msg = \"too many length or distance symbols\", i.mode = hi;\n break;\n }\n i.have = 0, i.mode = Np;\n case Np:\n for (; i.have < i.ncode; ) {\n for (; g < 3; ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n i.lens[Me[i.have++]] = x & 7, x >>>= 3, g -= 3;\n }\n for (; i.have < 19; )\n i.lens[Me[i.have++]] = 0;\n if (i.lencode = i.lendyn, i.lenbits = 7, Ae = { bits: i.lenbits }, q = ks(UR, i.lens, 0, 19, i.lencode, 0, i.work, Ae), i.lenbits = Ae.bits, q) {\n t.msg = \"invalid code lengths set\", i.mode = hi;\n break;\n }\n i.have = 0, i.mode = Pp;\n case Pp:\n for (; i.have < i.nlen + i.ndist; ) {\n for (; u = i.lencode[x & (1 << i.lenbits) - 1], U = u >>> 24, w = u >>> 16 & 255, S = u & 65535, !(U <= g); ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n if (S < 16)\n x >>>= U, g -= U, i.lens[i.have++] = S;\n else {\n if (S === 16) {\n for (P = U + 2; g < P; ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n if (x >>>= U, g -= U, i.have === 0) {\n t.msg = \"invalid bit length repeat\", i.mode = hi;\n break;\n }\n fe = i.lens[i.have - 1], m = 3 + (x & 3), x >>>= 2, g -= 2;\n } else if (S === 17) {\n for (P = U + 3; g < P; ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n x >>>= U, g -= U, fe = 0, m = 3 + (x & 7), x >>>= 3, g -= 3;\n } else {\n for (P = U + 7; g < P; ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n x >>>= U, g -= U, fe = 0, m = 11 + (x & 127), x >>>= 7, g -= 7;\n }\n if (i.have + m > i.nlen + i.ndist) {\n t.msg = \"invalid bit length repeat\", i.mode = hi;\n break;\n }\n for (; m--; )\n i.lens[i.have++] = fe;\n }\n }\n if (i.mode === hi)\n break;\n if (i.lens[256] === 0) {\n t.msg = \"invalid code -- missing end-of-block\", i.mode = hi;\n break;\n }\n if (i.lenbits = 9, Ae = { bits: i.lenbits }, q = ks(yb, i.lens, 0, i.nlen, i.lencode, 0, i.work, Ae), i.lenbits = Ae.bits, q) {\n t.msg = \"invalid literal/lengths set\", i.mode = hi;\n break;\n }\n if (i.distbits = 6, i.distcode = i.distdyn, Ae = { bits: i.distbits }, q = ks(Eb, i.lens, i.nlen, i.ndist, i.distcode, 0, i.work, Ae), i.distbits = Ae.bits, q) {\n t.msg = \"invalid distances set\", i.mode = hi;\n break;\n }\n if (i.mode = go, e === vo)\n break e;\n case go:\n i.mode = bo;\n case bo:\n if (E >= 6 && C >= 258) {\n t.next_out = v, t.avail_out = C, t.next_in = l, t.avail_in = E, i.hold = x, i.bits = g, IR(t, _), v = t.next_out, o = t.output, C = t.avail_out, l = t.next_in, r = t.input, E = t.avail_in, x = i.hold, g = i.bits, i.mode === cn && (i.back = -1);\n break;\n }\n for (i.back = 0; u = i.lencode[x & (1 << i.lenbits) - 1], U = u >>> 24, w = u >>> 16 & 255, S = u & 65535, !(U <= g); ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n if (w && !(w & 240)) {\n for (R = U, z = w, W = S; u = i.lencode[W + ((x & (1 << R + z) - 1) >> R)], U = u >>> 24, w = u >>> 16 & 255, S = u & 65535, !(R + U <= g); ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n x >>>= R, g -= R, i.back += R;\n }\n if (x >>>= U, g -= U, i.back += U, i.length = S, w === 0) {\n i.mode = Fp;\n break;\n }\n if (w & 32) {\n i.back = -1, i.mode = cn;\n break;\n }\n if (w & 64) {\n t.msg = \"invalid literal/length code\", i.mode = hi;\n break;\n }\n i.extra = w & 15, i.mode = Mp;\n case Mp:\n if (i.extra) {\n for (P = i.extra; g < P; ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n i.length += x & (1 << i.extra) - 1, x >>>= i.extra, g -= i.extra, i.back += i.extra;\n }\n i.was = i.length, i.mode = Up;\n case Up:\n for (; u = i.distcode[x & (1 << i.distbits) - 1], U = u >>> 24, w = u >>> 16 & 255, S = u & 65535, !(U <= g); ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n if (!(w & 240)) {\n for (R = U, z = w, W = S; u = i.distcode[W + ((x & (1 << R + z) - 1) >> R)], U = u >>> 24, w = u >>> 16 & 255, S = u & 65535, !(R + U <= g); ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n x >>>= R, g -= R, i.back += R;\n }\n if (x >>>= U, g -= U, i.back += U, w & 64) {\n t.msg = \"invalid distance code\", i.mode = hi;\n break;\n }\n i.offset = S, i.extra = w & 15, i.mode = Bp;\n case Bp:\n if (i.extra) {\n for (P = i.extra; g < P; ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n i.offset += x & (1 << i.extra) - 1, x >>>= i.extra, g -= i.extra, i.back += i.extra;\n }\n if (i.offset > i.dmax) {\n t.msg = \"invalid distance too far back\", i.mode = hi;\n break;\n }\n i.mode = Vp;\n case Vp:\n if (C === 0)\n break e;\n if (m = _ - C, i.offset > m) {\n if (m = i.offset - m, m > i.whave && i.sane) {\n t.msg = \"invalid distance too far back\", i.mode = hi;\n break;\n }\n m > i.wnext ? (m -= i.wnext, p = i.wsize - m) : p = i.wnext - m, m > i.length && (m = i.length), d = i.window;\n } else\n d = o, p = v - i.offset, m = i.length;\n m > C && (m = C), C -= m, i.length -= m;\n do\n o[v++] = d[p++];\n while (--m);\n i.length === 0 && (i.mode = bo);\n break;\n case Fp:\n if (C === 0)\n break e;\n o[v++] = i.length, C--, i.mode = bo;\n break;\n case _u:\n if (i.wrap) {\n for (; g < 32; ) {\n if (E === 0)\n break e;\n E--, x |= r[l++] << g, g += 8;\n }\n if (_ -= C, t.total_out += _, i.total += _, i.wrap & 4 && _ && (t.adler = i.check = i.flags ? $r(i.check, o, _, v - _) : P_(i.check, o, _, v - _)), _ = C, i.wrap & 4 && (i.flags ? x : Hp(x)) !== i.check) {\n t.msg = \"incorrect data check\", i.mode = hi;\n break;\n }\n x = 0, g = 0;\n }\n i.mode = jp;\n case jp:\n if (i.wrap && i.flags) {\n for (; g < 32; ) {\n if (E === 0)\n break e;\n E--, x += r[l++] << g, g += 8;\n }\n if (i.wrap & 4 && x !== (i.total & 4294967295)) {\n t.msg = \"incorrect length check\", i.mode = hi;\n break;\n }\n x = 0, g = 0;\n }\n i.mode = zp;\n case zp:\n q = VR;\n break e;\n case hi:\n q = wb;\n break e;\n case Tb:\n return Ab;\n case Sb:\n default:\n return Rr;\n }\n return t.next_out = v, t.avail_out = C, t.next_in = l, t.avail_in = E, i.hold = x, i.bits = g, (i.wsize || _ !== t.avail_out && i.mode < hi && (i.mode < _u || e !== yp)) && kb(t, t.output, t.next_out, _ - t.avail_out), D -= t.avail_in, _ -= t.avail_out, t.total_in += D, t.total_out += _, i.total += _, i.wrap & 4 && _ && (t.adler = i.check = i.flags ? $r(i.check, o, _, t.next_out - _) : P_(i.check, o, _, t.next_out - _)), t.data_type = i.bits + (i.last ? 64 : 0) + (i.mode === cn ? 128 : 0) + (i.mode === go || i.mode === uu ? 256 : 0), (D === 0 && _ === 0 || e === yp) && q === da && (q = jR), q;\n}, XR = (t) => {\n if (va(t))\n return Rr;\n let e = t.state;\n return e.window && (e.window = null), t.state = null, da;\n}, ZR = (t, e) => {\n if (va(t))\n return Rr;\n const i = t.state;\n return i.wrap & 2 ? (i.head = e, e.done = !1, da) : Rr;\n}, QR = (t, e) => {\n const i = e.length;\n let r, o, l;\n return va(t) || (r = t.state, r.wrap !== 0 && r.mode !== Fc) ? Rr : r.mode === Fc && (o = 1, o = P_(o, e, i, 0), o !== r.check) ? wb : (l = kb(t, e, i, i), l ? (r.mode = Tb, Ab) : (r.havedict = 1, da));\n};\nvar JR = Lb, eC = Rb, tC = xb, iC = KR, rC = Cb, nC = YR, aC = XR, sC = ZR, oC = QR, cC = \"pako inflate (from Nodeca project)\", un = {\n inflateReset: JR,\n inflateReset2: eC,\n inflateResetKeep: tC,\n inflateInit: iC,\n inflateInit2: rC,\n inflate: nC,\n inflateEnd: aC,\n inflateGetHeader: sC,\n inflateSetDictionary: oC,\n inflateInfo: cC\n};\nfunction lC() {\n this.text = 0, this.time = 0, this.xflags = 0, this.os = 0, this.extra = null, this.extra_len = 0, this.name = \"\", this.comment = \"\", this.hcrc = 0, this.done = !1;\n}\nvar uC = lC;\nconst Ib = Object.prototype.toString, {\n Z_NO_FLUSH: _C,\n Z_FINISH: dC,\n Z_OK: js,\n Z_STREAM_END: fu,\n Z_NEED_DICT: pu,\n Z_STREAM_ERROR: hC,\n Z_DATA_ERROR: Wp,\n Z_MEM_ERROR: fC\n} = Sd;\nfunction Ys(t) {\n this.options = gb.assign({\n chunkSize: 1024 * 64,\n windowBits: 15,\n to: \"\"\n }, t || {});\n const e = this.options;\n e.raw && e.windowBits >= 0 && e.windowBits < 16 && (e.windowBits = -e.windowBits, e.windowBits === 0 && (e.windowBits = -15)), e.windowBits >= 0 && e.windowBits < 16 && !(t && t.windowBits) && (e.windowBits += 32), e.windowBits > 15 && e.windowBits < 48 && (e.windowBits & 15 || (e.windowBits |= 15)), this.err = 0, this.msg = \"\", this.ended = !1, this.chunks = [], this.strm = new CR(), this.strm.avail_out = 0;\n let i = un.inflateInit2(\n this.strm,\n e.windowBits\n );\n if (i !== js)\n throw new Error(M_[i]);\n if (this.header = new uC(), un.inflateGetHeader(this.strm, this.header), e.dictionary && (typeof e.dictionary == \"string\" ? e.dictionary = U_.string2buf(e.dictionary) : Ib.call(e.dictionary) === \"[object ArrayBuffer]\" && (e.dictionary = new Uint8Array(e.dictionary)), e.raw && (i = un.inflateSetDictionary(this.strm, e.dictionary), i !== js)))\n throw new Error(M_[i]);\n}\nYs.prototype.push = function(t, e) {\n const i = this.strm, r = this.options.chunkSize, o = this.options.dictionary;\n let l, v, E;\n if (this.ended)\n return !1;\n for (e === ~~e ? v = e : v = e === !0 ? dC : _C, Ib.call(t) === \"[object ArrayBuffer]\" ? i.input = new Uint8Array(t) : i.input = t, i.next_in = 0, i.avail_in = i.input.length; ; ) {\n for (i.avail_out === 0 && (i.output = new Uint8Array(r), i.next_out = 0, i.avail_out = r), l = un.inflate(i, v), l === pu && o && (l = un.inflateSetDictionary(i, o), l === js ? l = un.inflate(i, v) : l === Wp && (l = pu)); i.avail_in > 0 && l === fu && i.state.wrap > 0 && t[i.next_in] !== 0; )\n un.inflateReset(i), l = un.inflate(i, v);\n switch (l) {\n case hC:\n case Wp:\n case pu:\n case fC:\n return this.onEnd(l), this.ended = !0, !1;\n }\n if (E = i.avail_out, i.next_out && (i.avail_out === 0 || l === fu))\n if (this.options.to === \"string\") {\n let C = U_.utf8border(i.output, i.next_out), x = i.next_out - C, g = U_.buf2string(i.output, C);\n i.next_out = x, i.avail_out = r - x, x && i.output.set(i.output.subarray(C, C + x), 0), this.onData(g);\n } else\n this.onData(i.output.length === i.next_out ? i.output : i.output.subarray(0, i.next_out));\n if (!(l === js && E === 0)) {\n if (l === fu)\n return l = un.inflateEnd(this.strm), this.onEnd(l), this.ended = !0, !0;\n if (i.avail_in === 0)\n break;\n }\n }\n return !0;\n};\nYs.prototype.onData = function(t) {\n this.chunks.push(t);\n};\nYs.prototype.onEnd = function(t) {\n t === js && (this.options.to === \"string\" ? this.result = this.chunks.join(\"\") : this.result = gb.flattenChunks(this.chunks)), this.chunks = [], this.err = t, this.msg = this.strm.msg;\n};\nfunction xd(t, e) {\n const i = new Ys(e);\n if (i.push(t), i.err)\n throw i.msg || M_[i.err];\n return i.result;\n}\nfunction pC(t, e) {\n return e = e || {}, e.raw = !0, xd(t, e);\n}\nvar mC = Ys, vC = xd, gC = pC, bC = xd, yC = Sd, EC = {\n Inflate: mC,\n inflate: vC,\n inflateRaw: gC,\n ungzip: bC,\n constants: yC\n};\nconst { Inflate: F6, inflate: wC, inflateRaw: j6, ungzip: z6 } = EC;\nvar AC = wC;\nconst TC = /\\r\\n|\\n\\r|\\n|\\r/g, SC = /(\\d+)-(\\d+)/, xC = /(\\d+)/;\nclass LC {\n constructor() {\n er(this, \"_xhr\"), er(this, \"_url\", \"\"), er(this, \"_compress\", !1), er(this, \"_maskRangeList\", []), er(this, \"_parseVTT\", (e) => {\n if (!/^#MASKVTT/.test(e))\n throw new Error(\"Not MASKVTT\");\n const i = e.trim().replace(TC, `\n`).split(`\n`);\n let r;\n i.forEach((o) => {\n if (o.startsWith(\"#TIME-RANGE\")) {\n const l = o.match(SC);\n l && (r = {\n start: parseInt(l[1]),\n end: parseInt(l[2]),\n url: \"\",\n masks: [],\n stat: 0\n });\n } else if (o.length && o[0] !== \"#\")\n r && (r.url = fb.exports.buildAbsoluteURL(this._url, o, { alwaysNormalize: !0 }), this._maskRangeList.push(r), r = void 0);\n else if (o.startsWith(\"#COMPRESSED\")) {\n const l = o.match(xC);\n l && (this._compress = !!parseInt(l[1]));\n }\n });\n });\n }\n load(e) {\n this._url = e, this._maskRangeList = [], this._destroyLoader(), this._load(this._parseVTT, () => {\n this._destroyLoader(this._xhr);\n }, e, XL, \"\");\n }\n clear() {\n this._url = \"\", this._compress = !1, this._maskRangeList = [], this._destroyLoader();\n }\n getMaskByTime(e) {\n const i = e * 1e3, r = this._getRangeIdxByTime(i), o = r >= 0 ? this._maskRangeList[r] : void 0;\n if (o)\n if (o.masks.length) {\n const l = this._getMaskByTime(o.masks, i), v = this._maskRangeList[r + 1];\n return v && !v.masks.length && this._loadMaskData(v), l;\n } else\n this._loadMaskData(o);\n }\n get url() {\n return this._url;\n }\n get hasMask() {\n return this._maskRangeList.length > 0;\n }\n _getMaskByTime(e, i) {\n if (e.length)\n return pp.search(e, (r) => i < r.start ? -1 : r.end && i > r.end ? 1 : 0);\n }\n _getRangeIdxByTime(e) {\n return this._maskRangeList ? pp.searchIndex(this._maskRangeList, (i) => e < i.start ? -1 : e > i.end ? 1 : 0) : -1;\n }\n _load(e, i, r, o, l) {\n this._destroyLoader();\n const v = this._xhr = new XMLHttpRequest();\n v.open(\"GET\", r, !0), l && (v.responseType = l), v.timeout = o, v.onreadystatechange = () => {\n v.readyState === 2 && (v.status < 200 || v.status > 299) && i && i(`xhr error: ${v.status}`);\n }, v.ontimeout = v.onerror = () => {\n i && i(\"xhr error\");\n }, v.onload = () => {\n e(v.response);\n }, v.send();\n }\n _destroyLoader(e) {\n e && e && (e.ontimeout = null, e.onload = null, e.onreadystatechange = null, e.onerror = null, e.onabort = null, e.abort());\n }\n _loadMaskData(e) {\n e.url && e.stat === 0 && (e.stat = 1, this._load((i) => {\n e.stat = 2;\n const r = this._compress ? AC(i) : new Uint8Array(i), o = new DataView(r.buffer);\n let l = 0, v = o.getUint32(l);\n const E = [];\n l += 4;\n for (let x = 0; x < v; x++) {\n const g = o.getUint32(l);\n E.length && (E[E.length - 1].end = g), E.push({\n start: g,\n length: o.getUint32(l + 4)\n }), l += 16;\n }\n var C = new TextDecoder();\n for (let x = 0; x < E.length; x++)\n E[x].svg = C.decode(r.slice(l, l + E[x].length)).replace(/\"/g, \"'\").replace(/\\n/g, \" \"), l += E[x].length;\n e.masks = E;\n }, () => {\n e.stat = 3, this._destroyLoader(this._xhr);\n }, e.url, ZL, \"arraybuffer\"));\n }\n}\nclass Db extends i0 {\n constructor() {\n super(...arguments), er(this, \"_player\"), er(this, \"_kwaiMask\", new LC()), er(this, \"_layers\", []), er(this, \"_active\", !1), er(this, \"_lastMask\"), er(this, \"_lastTime\", -1), er(this, \"_refresh\", () => {\n if (this._active) {\n const e = this._player;\n if (e && this._kwaiMask.hasMask && this._layers.length) {\n const i = e.currentTime;\n if (!this._lastMask || this._lastMask && this._lastTime !== i) {\n const r = this._kwaiMask.getMaskByTime(i);\n r && (this._lastTime = i), r && r !== this._lastMask && (this._lastMask = r, this._layers.forEach((o) => {\n var l;\n !((l = o.options) != null && l.sameAsVideoRotate) && this._isVideoRotate() ? this._removeMask(o.layer) : this._applyMask(o.layer, r);\n }));\n }\n }\n requestAnimationFrame(this._refresh);\n }\n }), er(this, \"_onSrcChange\", () => {\n var e;\n this._clear(), this._loadMask((e = this._player) == null ? void 0 : e.maskUrl);\n }), er(this, \"_onMaskUrlChange\", () => {\n var e;\n this._clear(), this._loadMask((e = this._player) == null ? void 0 : e.maskUrl);\n }), er(this, \"_onDisableMaskChange\", () => {\n var e;\n this._setActive(((e = this._player) == null ? void 0 : e.disableMask) !== !0);\n });\n }\n afterInstall(e) {\n this._player = e, e.on(ge.ATTRIBUTE_CHANGE_SRC, this._onSrcChange), e.on(ge.ATTRIBUTE_CHANGE_MASK_URL, this._onMaskUrlChange), e.on(ge.ATTRIBUTE_CHANGE_DISABLE_MASK, this._onDisableMaskChange), this._loadMask(e.maskUrl);\n }\n afterUninstall() {\n this._player && (this._player.off(ge.ATTRIBUTE_CHANGE_SRC, this._onSrcChange), this._player.off(ge.ATTRIBUTE_CHANGE_MASK_URL, this._onMaskUrlChange), this._player.off(ge.ATTRIBUTE_CHANGE_DISABLE_MASK, this._onDisableMaskChange)), this._active = !1, this._kwaiMask.clear(), this._removeAllLayer();\n }\n addLayer(e, i) {\n this._layers.push({ layer: e, options: i });\n }\n removeLayer(e) {\n for (let i = 0; i < this._layers.length; i++)\n if (e === this._layers[i].layer) {\n const r = this._layers.splice(i, 1);\n r[0] && this._removeMask(r[0].layer);\n return;\n }\n }\n get active() {\n return this._active;\n }\n _setActive(e) {\n this._active = e, e ? this._refresh() : this._removeAllMask();\n }\n _isVideoRotate() {\n var e;\n const i = (e = this._player) == null ? void 0 : e.video;\n return i ? i.style.transform.indexOf(\"rotate\") !== -1 : !1;\n }\n _removeAllLayer() {\n this._clear(), this._layers = [];\n }\n _removeAllMask() {\n this._layers.forEach((e) => {\n this._removeMask(e.layer);\n });\n }\n _clear() {\n this._removeAllMask(), this._kwaiMask.clear(), this._lastMask = void 0, this._lastTime = -1;\n }\n _applyMask(e, i) {\n var r;\n if (i.svg && ((r = this._player) != null && r.videoWidth) && this._player.videoHeight) {\n const { width: o, height: l } = e.getBoundingClientRect(), v = this._player.videoWidth, E = this._player.videoHeight;\n let C = \"\";\n if (l / o < E / v) {\n const x = o * E / l, g = (x - v) / x / 2 * 100;\n C = `linear-gradient(to right, rgb(0, 0, 0), rgb(0, 0, 0) ${g}%, rgba(0, 0, 0, 0) ${g}%), linear-gradient(to right, rgba(0, 0, 0, 0) ${100 - g}%, rgb(0, 0, 0) ${100 - g}%, rgb(0, 0, 0))`;\n } else if (l / o > E / v) {\n const x = l * v / o, g = (x - E) / x / 2 * 100;\n C = `linear-gradient(rgb(0, 0, 0), rgb(0, 0, 0) ${g}%, rgba(0, 0, 0, 0) ${g}%), linear-gradient(rgba(0, 0, 0, 0) ${100 - g}%, rgb(0, 0, 0))`;\n }\n e.style.maskImage = e.style.webkitMaskImage = C ? `${C}, url(\"data:image/svg+xml;base64,${btoa(i.svg)}\")` : `url(\"data:image/svg+xml;base64,${btoa(i.svg)}\")`, e.style.maskSize = e.style.webkitMaskSize = \"100% 100%\";\n }\n }\n _removeMask(e) {\n e.style.maskImage = e.style.webkitMaskImage = \"\", e.style.maskSize = e.style.webkitMaskSize = \"\";\n }\n _loadMask(e) {\n e && this._player && e !== this._kwaiMask.url && (this._kwaiMask.load(e), this._player.disableMask !== !0 && this._setActive(!0));\n }\n}\ner(Db, \"version\", \"1.1.0-alpha.0\");\nvar Gp = typeof globalThis < \"u\" ? globalThis : typeof window < \"u\" ? window : typeof global < \"u\" ? global : typeof self < \"u\" ? self : {}, yo = function(t) {\n return t && t.Math == Math && t;\n}, Vi = (\n // eslint-disable-next-line es/no-global-this -- safe\n yo(typeof globalThis == \"object\" && globalThis) || yo(typeof window == \"object\" && window) || // eslint-disable-next-line no-restricted-globals -- safe\n yo(typeof self == \"object\" && self) || yo(typeof Gp == \"object\" && Gp) || // eslint-disable-next-line no-new-func -- fallback\n function() {\n return this;\n }() || Function(\"return this\")()\n), ml = {}, ur = function(t) {\n try {\n return !!t();\n } catch (e) {\n return !0;\n }\n}, RC = ur, tn = !RC(function() {\n return Object.defineProperty({}, 1, { get: function() {\n return 7;\n } })[1] != 7;\n}), CC = ur, vl = !CC(function() {\n var t = function() {\n }.bind();\n return typeof t != \"function\" || t.hasOwnProperty(\"prototype\");\n}), kC = vl, Eo = Function.prototype.call, vr = kC ? Eo.bind(Eo) : function() {\n return Eo.apply(Eo, arguments);\n}, Ob = {}, Nb = {}.propertyIsEnumerable, Pb = Object.getOwnPropertyDescriptor, IC = Pb && !Nb.call({ 1: 2 }, 1);\nOb.f = IC ? function(e) {\n var i = Pb(this, e);\n return !!i && i.enumerable;\n} : Nb;\nvar Xs = function(t, e) {\n return {\n enumerable: !(t & 1),\n configurable: !(t & 2),\n writable: !(t & 4),\n value: e\n };\n}, Mb = vl, Ub = Function.prototype, B_ = Ub.call, DC = Mb && Ub.bind.bind(B_, B_), qi = Mb ? DC : function(t) {\n return function() {\n return B_.apply(t, arguments);\n };\n}, Bb = qi, OC = Bb({}.toString), NC = Bb(\"\".slice), Zs = function(t) {\n return NC(OC(t), 8, -1);\n}, PC = qi, MC = ur, UC = Zs, mu = Object, BC = PC(\"\".split), Vb = MC(function() {\n return !mu(\"z\").propertyIsEnumerable(0);\n}) ? function(t) {\n return UC(t) == \"String\" ? BC(t, \"\") : mu(t);\n} : mu, gl = function(t) {\n return t == null;\n}, VC = gl, FC = TypeError, Ld = function(t) {\n if (VC(t))\n throw FC(\"Can't call method on \" + t);\n return t;\n}, jC = Vb, zC = Ld, Qs = function(t) {\n return jC(zC(t));\n}, V_ = typeof document == \"object\" && document.all, HC = typeof V_ > \"u\" && V_ !== void 0, Fb = {\n all: V_,\n IS_HTMLDDA: HC\n}, jb = Fb, $C = jb.all, Li = jb.IS_HTMLDDA ? function(t) {\n return typeof t == \"function\" || t === $C;\n} : function(t) {\n return typeof t == \"function\";\n}, Kp = Li, zb = Fb, WC = zb.all, rn = zb.IS_HTMLDDA ? function(t) {\n return typeof t == \"object\" ? t !== null : Kp(t) || t === WC;\n} : function(t) {\n return typeof t == \"object\" ? t !== null : Kp(t);\n}, vu = Vi, GC = Li, KC = function(t) {\n return GC(t) ? t : void 0;\n}, fn = function(t, e) {\n return arguments.length < 2 ? KC(vu[t]) : vu[t] && vu[t][e];\n}, qC = qi, bl = qC({}.isPrototypeOf), yl = typeof navigator < \"u\" && String(navigator.userAgent) || \"\", Hb = Vi, gu = yl, qp = Hb.process, Yp = Hb.Deno, Xp = qp && qp.versions || Yp && Yp.version, Zp = Xp && Xp.v8, Br, jc;\nZp && (Br = Zp.split(\".\"), jc = Br[0] > 0 && Br[0] < 4 ? 1 : +(Br[0] + Br[1]));\n!jc && gu && (Br = gu.match(/Edge\\/(\\d+)/), (!Br || Br[1] >= 74) && (Br = gu.match(/Chrome\\/(\\d+)/), Br && (jc = +Br[1])));\nvar $b = jc, Qp = $b, YC = ur, Wb = !!Object.getOwnPropertySymbols && !YC(function() {\n var t = Symbol();\n return !String(t) || !(Object(t) instanceof Symbol) || // Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances\n !Symbol.sham && Qp && Qp < 41;\n}), XC = Wb, Gb = XC && !Symbol.sham && typeof Symbol.iterator == \"symbol\", ZC = fn, QC = Li, JC = bl, ek = Gb, tk = Object, Kb = ek ? function(t) {\n return typeof t == \"symbol\";\n} : function(t) {\n var e = ZC(\"Symbol\");\n return QC(e) && JC(e.prototype, tk(t));\n}, ik = String, El = function(t) {\n try {\n return ik(t);\n } catch (e) {\n return \"Object\";\n }\n}, rk = Li, nk = El, ak = TypeError, nn = function(t) {\n if (rk(t))\n return t;\n throw ak(nk(t) + \" is not a function\");\n}, sk = nn, ok = gl, Rd = function(t, e) {\n var i = t[e];\n return ok(i) ? void 0 : sk(i);\n}, bu = vr, yu = Li, Eu = rn, ck = TypeError, lk = function(t, e) {\n var i, r;\n if (e === \"string\" && yu(i = t.toString) && !Eu(r = bu(i, t)) || yu(i = t.valueOf) && !Eu(r = bu(i, t)) || e !== \"string\" && yu(i = t.toString) && !Eu(r = bu(i, t)))\n return r;\n throw ck(\"Can't convert object to primitive value\");\n}, zc = {}, uk = {\n get exports() {\n return zc;\n },\n set exports(t) {\n zc = t;\n }\n}, Jp = Vi, _k = Object.defineProperty, Cd = function(t, e) {\n try {\n _k(Jp, t, { value: e, configurable: !0, writable: !0 });\n } catch (i) {\n Jp[t] = e;\n }\n return e;\n}, dk = Vi, hk = Cd, em = \"__core-js_shared__\", fk = dk[em] || hk(em, {}), kd = fk, tm = kd;\n(uk.exports = function(t, e) {\n return tm[t] || (tm[t] = e !== void 0 ? e : {});\n})(\"versions\", []).push({\n version: \"3.29.1\",\n mode: \"global\",\n copyright: \"© 2014-2023 Denis Pushkarev (zloirock.ru)\",\n license: \"https://github.com/zloirock/core-js/blob/v3.29.1/LICENSE\",\n source: \"https://github.com/zloirock/core-js\"\n});\nvar pk = Ld, mk = Object, wl = function(t) {\n return mk(pk(t));\n}, vk = qi, gk = wl, bk = vk({}.hasOwnProperty), an = Object.hasOwn || function(e, i) {\n return bk(gk(e), i);\n}, yk = qi, Ek = 0, wk = Math.random(), Ak = yk(1 .toString), qb = function(t) {\n return \"Symbol(\" + (t === void 0 ? \"\" : t) + \")_\" + Ak(++Ek + wk, 36);\n}, Tk = Vi, Sk = zc, im = an, xk = qb, Lk = Wb, Rk = Gb, Ba = Tk.Symbol, wu = Sk(\"wks\"), Ck = Rk ? Ba.for || Ba : Ba && Ba.withoutSetter || xk, rr = function(t) {\n return im(wu, t) || (wu[t] = Lk && im(Ba, t) ? Ba[t] : Ck(\"Symbol.\" + t)), wu[t];\n}, kk = vr, rm = rn, nm = Kb, Ik = Rd, Dk = lk, Ok = rr, Nk = TypeError, Pk = Ok(\"toPrimitive\"), Mk = function(t, e) {\n if (!rm(t) || nm(t))\n return t;\n var i = Ik(t, Pk), r;\n if (i) {\n if (e === void 0 && (e = \"default\"), r = kk(i, t, e), !rm(r) || nm(r))\n return r;\n throw Nk(\"Can't convert object to primitive value\");\n }\n return e === void 0 && (e = \"number\"), Dk(t, e);\n}, Uk = Mk, Bk = Kb, Yb = function(t) {\n var e = Uk(t, \"string\");\n return Bk(e) ? e : e + \"\";\n}, Vk = Vi, am = rn, F_ = Vk.document, Fk = am(F_) && am(F_.createElement), Al = function(t) {\n return Fk ? F_.createElement(t) : {};\n}, jk = tn, zk = ur, Hk = Al, Xb = !jk && !zk(function() {\n return Object.defineProperty(Hk(\"div\"), \"a\", {\n get: function() {\n return 7;\n }\n }).a != 7;\n}), $k = tn, Wk = vr, Gk = Ob, Kk = Xs, qk = Qs, Yk = Yb, Xk = an, Zk = Xb, sm = Object.getOwnPropertyDescriptor;\nml.f = $k ? sm : function(e, i) {\n if (e = qk(e), i = Yk(i), Zk)\n try {\n return sm(e, i);\n } catch (r) {\n }\n if (Xk(e, i))\n return Kk(!Wk(Gk.f, e, i), e[i]);\n};\nvar pn = {}, Qk = tn, Jk = ur, Zb = Qk && Jk(function() {\n return Object.defineProperty(function() {\n }, \"prototype\", {\n value: 42,\n writable: !1\n }).prototype != 42;\n}), eI = rn, tI = String, iI = TypeError, sn = function(t) {\n if (eI(t))\n return t;\n throw iI(tI(t) + \" is not an object\");\n}, rI = tn, nI = Xb, aI = Zb, wo = sn, om = Yb, sI = TypeError, Au = Object.defineProperty, oI = Object.getOwnPropertyDescriptor, Tu = \"enumerable\", Su = \"configurable\", xu = \"writable\";\npn.f = rI ? aI ? function(e, i, r) {\n if (wo(e), i = om(i), wo(r), typeof e == \"function\" && i === \"prototype\" && \"value\" in r && xu in r && !r[xu]) {\n var o = oI(e, i);\n o && o[xu] && (e[i] = r.value, r = {\n configurable: Su in r ? r[Su] : o[Su],\n enumerable: Tu in r ? r[Tu] : o[Tu],\n writable: !1\n });\n }\n return Au(e, i, r);\n} : Au : function(e, i, r) {\n if (wo(e), i = om(i), wo(r), nI)\n try {\n return Au(e, i, r);\n } catch (o) {\n }\n if (\"get\" in r || \"set\" in r)\n throw sI(\"Accessors not supported\");\n return \"value\" in r && (e[i] = r.value), e;\n};\nvar cI = tn, lI = pn, uI = Xs, ga = cI ? function(t, e, i) {\n return lI.f(t, e, uI(1, i));\n} : function(t, e, i) {\n return t[e] = i, t;\n}, Hc = {}, _I = {\n get exports() {\n return Hc;\n },\n set exports(t) {\n Hc = t;\n }\n}, j_ = tn, dI = an, Qb = Function.prototype, hI = j_ && Object.getOwnPropertyDescriptor, Id = dI(Qb, \"name\"), fI = Id && function() {\n}.name === \"something\", pI = Id && (!j_ || j_ && hI(Qb, \"name\").configurable), Jb = {\n EXISTS: Id,\n PROPER: fI,\n CONFIGURABLE: pI\n}, mI = qi, vI = Li, z_ = kd, gI = mI(Function.toString);\nvI(z_.inspectSource) || (z_.inspectSource = function(t) {\n return gI(t);\n});\nvar Dd = z_.inspectSource, bI = Vi, yI = Li, cm = bI.WeakMap, EI = yI(cm) && /native code/.test(String(cm)), wI = zc, AI = qb, lm = wI(\"keys\"), Od = function(t) {\n return lm[t] || (lm[t] = AI(t));\n}, Nd = {}, TI = EI, e1 = Vi, SI = rn, xI = ga, Lu = an, Ru = kd, LI = Od, RI = Nd, um = \"Object already initialized\", H_ = e1.TypeError, CI = e1.WeakMap, $c, zs, Wc, kI = function(t) {\n return Wc(t) ? zs(t) : $c(t, {});\n}, II = function(t) {\n return function(e) {\n var i;\n if (!SI(e) || (i = zs(e)).type !== t)\n throw H_(\"Incompatible receiver, \" + t + \" required\");\n return i;\n };\n};\nif (TI || Ru.state) {\n var Wr = Ru.state || (Ru.state = new CI());\n Wr.get = Wr.get, Wr.has = Wr.has, Wr.set = Wr.set, $c = function(t, e) {\n if (Wr.has(t))\n throw H_(um);\n return e.facade = t, Wr.set(t, e), e;\n }, zs = function(t) {\n return Wr.get(t) || {};\n }, Wc = function(t) {\n return Wr.has(t);\n };\n} else {\n var Da = LI(\"state\");\n RI[Da] = !0, $c = function(t, e) {\n if (Lu(t, Da))\n throw H_(um);\n return e.facade = t, xI(t, Da, e), e;\n }, zs = function(t) {\n return Lu(t, Da) ? t[Da] : {};\n }, Wc = function(t) {\n return Lu(t, Da);\n };\n}\nvar Tl = {\n set: $c,\n get: zs,\n has: Wc,\n enforce: kI,\n getterFor: II\n}, Pd = qi, DI = ur, OI = Li, Ao = an, $_ = tn, NI = Jb.CONFIGURABLE, PI = Dd, t1 = Tl, MI = t1.enforce, UI = t1.get, _m = String, qo = Object.defineProperty, BI = Pd(\"\".slice), VI = Pd(\"\".replace), FI = Pd([].join), jI = $_ && !DI(function() {\n return qo(function() {\n }, \"length\", { value: 8 }).length !== 8;\n}), zI = String(String).split(\"String\"), HI = _I.exports = function(t, e, i) {\n BI(_m(e), 0, 7) === \"Symbol(\" && (e = \"[\" + VI(_m(e), /^Symbol\\(([^)]*)\\)/, \"$1\") + \"]\"), i && i.getter && (e = \"get \" + e), i && i.setter && (e = \"set \" + e), (!Ao(t, \"name\") || NI && t.name !== e) && ($_ ? qo(t, \"name\", { value: e, configurable: !0 }) : t.name = e), jI && i && Ao(i, \"arity\") && t.length !== i.arity && qo(t, \"length\", { value: i.arity });\n try {\n i && Ao(i, \"constructor\") && i.constructor ? $_ && qo(t, \"prototype\", { writable: !1 }) : t.prototype && (t.prototype = void 0);\n } catch (o) {\n }\n var r = MI(t);\n return Ao(r, \"source\") || (r.source = FI(zI, typeof e == \"string\" ? e : \"\")), t;\n};\nFunction.prototype.toString = HI(function() {\n return OI(this) && UI(this).source || PI(this);\n}, \"toString\");\nvar $I = Li, WI = pn, GI = Hc, KI = Cd, ba = function(t, e, i, r) {\n r || (r = {});\n var o = r.enumerable, l = r.name !== void 0 ? r.name : e;\n if ($I(i) && GI(i, l, r), r.global)\n o ? t[e] = i : KI(e, i);\n else {\n try {\n r.unsafe ? t[e] && (o = !0) : delete t[e];\n } catch (v) {\n }\n o ? t[e] = i : WI.f(t, e, {\n value: i,\n enumerable: !1,\n configurable: !r.nonConfigurable,\n writable: !r.nonWritable\n });\n }\n return t;\n}, i1 = {}, qI = Math.ceil, YI = Math.floor, XI = Math.trunc || function(e) {\n var i = +e;\n return (i > 0 ? YI : qI)(i);\n}, ZI = XI, Md = function(t) {\n var e = +t;\n return e !== e || e === 0 ? 0 : ZI(e);\n}, QI = Md, JI = Math.max, eD = Math.min, r1 = function(t, e) {\n var i = QI(t);\n return i < 0 ? JI(i + e, 0) : eD(i, e);\n}, tD = Md, iD = Math.min, rD = function(t) {\n return t > 0 ? iD(tD(t), 9007199254740991) : 0;\n}, nD = rD, Sl = function(t) {\n return nD(t.length);\n}, aD = Qs, sD = r1, oD = Sl, dm = function(t) {\n return function(e, i, r) {\n var o = aD(e), l = oD(o), v = sD(r, l), E;\n if (t && i != i) {\n for (; l > v; )\n if (E = o[v++], E != E)\n return !0;\n } else\n for (; l > v; v++)\n if ((t || v in o) && o[v] === i)\n return t || v || 0;\n return !t && -1;\n };\n}, cD = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: dm(!0),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: dm(!1)\n}, lD = qi, Cu = an, uD = Qs, _D = cD.indexOf, dD = Nd, hm = lD([].push), n1 = function(t, e) {\n var i = uD(t), r = 0, o = [], l;\n for (l in i)\n !Cu(dD, l) && Cu(i, l) && hm(o, l);\n for (; e.length > r; )\n Cu(i, l = e[r++]) && (~_D(o, l) || hm(o, l));\n return o;\n}, Ud = [\n \"constructor\",\n \"hasOwnProperty\",\n \"isPrototypeOf\",\n \"propertyIsEnumerable\",\n \"toLocaleString\",\n \"toString\",\n \"valueOf\"\n], hD = n1, fD = Ud, pD = fD.concat(\"length\", \"prototype\");\ni1.f = Object.getOwnPropertyNames || function(e) {\n return hD(e, pD);\n};\nvar a1 = {};\na1.f = Object.getOwnPropertySymbols;\nvar mD = fn, vD = qi, gD = i1, bD = a1, yD = sn, ED = vD([].concat), wD = mD(\"Reflect\", \"ownKeys\") || function(e) {\n var i = gD.f(yD(e)), r = bD.f;\n return r ? ED(i, r(e)) : i;\n}, fm = an, AD = wD, TD = ml, SD = pn, s1 = function(t, e, i) {\n for (var r = AD(e), o = SD.f, l = TD.f, v = 0; v < r.length; v++) {\n var E = r[v];\n !fm(t, E) && !(i && fm(i, E)) && o(t, E, l(e, E));\n }\n}, xD = ur, LD = Li, RD = /#|\\.prototype\\./, Js = function(t, e) {\n var i = kD[CD(t)];\n return i == DD ? !0 : i == ID ? !1 : LD(e) ? xD(e) : !!e;\n}, CD = Js.normalize = function(t) {\n return String(t).replace(RD, \".\").toLowerCase();\n}, kD = Js.data = {}, ID = Js.NATIVE = \"N\", DD = Js.POLYFILL = \"P\", o1 = Js, ku = Vi, OD = ml.f, ND = ga, PD = ba, MD = Cd, UD = s1, BD = o1, sr = function(t, e) {\n var i = t.target, r = t.global, o = t.stat, l, v, E, C, x, g;\n if (r ? v = ku : o ? v = ku[i] || MD(i, {}) : v = (ku[i] || {}).prototype, v)\n for (E in e) {\n if (x = e[E], t.dontCallGetSet ? (g = OD(v, E), C = g && g.value) : C = v[E], l = BD(r ? E : i + (o ? \".\" : \"#\") + E, t.forced), !l && C !== void 0) {\n if (typeof x == typeof C)\n continue;\n UD(x, C);\n }\n (t.sham || C && C.sham) && ND(x, \"sham\", !0), PD(v, E, x, t);\n }\n}, VD = ur, FD = !VD(function() {\n function t() {\n }\n return t.prototype.constructor = null, Object.getPrototypeOf(new t()) !== t.prototype;\n}), jD = an, zD = Li, HD = wl, $D = Od, WD = FD, pm = $D(\"IE_PROTO\"), W_ = Object, GD = W_.prototype, Bd = WD ? W_.getPrototypeOf : function(t) {\n var e = HD(t);\n if (jD(e, pm))\n return e[pm];\n var i = e.constructor;\n return zD(i) && e instanceof i ? i.prototype : e instanceof W_ ? GD : null;\n}, KD = qi, qD = nn, YD = function(t, e, i) {\n try {\n return KD(qD(Object.getOwnPropertyDescriptor(t, e)[i]));\n } catch (r) {\n }\n}, XD = Li, ZD = String, QD = TypeError, JD = function(t) {\n if (typeof t == \"object\" || XD(t))\n return t;\n throw QD(\"Can't set \" + ZD(t) + \" as a prototype\");\n}, eO = YD, tO = sn, iO = JD, Vd = Object.setPrototypeOf || (\"__proto__\" in {} ? function() {\n var t = !1, e = {}, i;\n try {\n i = eO(Object.prototype, \"__proto__\", \"set\"), i(e, []), t = e instanceof Array;\n } catch (r) {\n }\n return function(o, l) {\n return tO(o), iO(l), t ? i(o, l) : o.__proto__ = l, o;\n };\n}() : void 0), c1 = {}, rO = n1, nO = Ud, aO = Object.keys || function(e) {\n return rO(e, nO);\n}, sO = tn, oO = Zb, cO = pn, lO = sn, uO = Qs, _O = aO;\nc1.f = sO && !oO ? Object.defineProperties : function(e, i) {\n lO(e);\n for (var r = uO(i), o = _O(i), l = o.length, v = 0, E; l > v; )\n cO.f(e, E = o[v++], r[E]);\n return e;\n};\nvar dO = fn, l1 = dO(\"document\", \"documentElement\"), hO = sn, fO = c1, mm = Ud, pO = Nd, mO = l1, vO = Al, gO = Od, vm = \">\", gm = \"<\", G_ = \"prototype\", K_ = \"script\", u1 = gO(\"IE_PROTO\"), Iu = function() {\n}, _1 = function(t) {\n return gm + K_ + vm + t + gm + \"/\" + K_ + vm;\n}, bm = function(t) {\n t.write(_1(\"\")), t.close();\n var e = t.parentWindow.Object;\n return t = null, e;\n}, bO = function() {\n var t = vO(\"iframe\"), e = \"java\" + K_ + \":\", i;\n return t.style.display = \"none\", mO.appendChild(t), t.src = String(e), i = t.contentWindow.document, i.open(), i.write(_1(\"document.F=Object\")), i.close(), i.F;\n}, To, Yo = function() {\n try {\n To = new ActiveXObject(\"htmlfile\");\n } catch (e) {\n }\n Yo = typeof document < \"u\" ? document.domain && To ? bm(To) : bO() : bm(To);\n for (var t = mm.length; t--; )\n delete Yo[G_][mm[t]];\n return Yo();\n};\npO[u1] = !0;\nvar Fd = Object.create || function(e, i) {\n var r;\n return e !== null ? (Iu[G_] = hO(e), r = new Iu(), Iu[G_] = null, r[u1] = e) : r = Yo(), i === void 0 ? r : fO.f(r, i);\n}, yO = rn, EO = ga, wO = function(t, e) {\n yO(e) && \"cause\" in e && EO(t, \"cause\", e.cause);\n}, AO = qi, d1 = Error, TO = AO(\"\".replace), SO = function(t) {\n return String(d1(t).stack);\n}(\"zxcasd\"), h1 = /\\n\\s*at [^:]*:[^\\n]*/, xO = h1.test(SO), LO = function(t, e) {\n if (xO && typeof t == \"string\" && !d1.prepareStackTrace)\n for (; e--; )\n t = TO(t, h1, \"\");\n return t;\n}, RO = ur, CO = Xs, kO = !RO(function() {\n var t = Error(\"a\");\n return \"stack\" in t ? (Object.defineProperty(t, \"stack\", CO(1, 7)), t.stack !== 7) : !0;\n}), IO = ga, DO = LO, OO = kO, ym = Error.captureStackTrace, NO = function(t, e, i, r) {\n OO && (ym ? ym(t, e) : IO(t, \"stack\", DO(i, r)));\n}, PO = Zs, MO = qi, UO = function(t) {\n if (PO(t) === \"Function\")\n return MO(t);\n}, Em = UO, BO = nn, VO = vl, FO = Em(Em.bind), xl = function(t, e) {\n return BO(t), e === void 0 ? t : VO ? FO(t, e) : function() {\n return t.apply(e, arguments);\n };\n}, eo = {}, jO = rr, zO = eo, HO = jO(\"iterator\"), $O = Array.prototype, WO = function(t) {\n return t !== void 0 && (zO.Array === t || $O[HO] === t);\n}, GO = rr, KO = GO(\"toStringTag\"), f1 = {};\nf1[KO] = \"z\";\nvar jd = String(f1) === \"[object z]\", qO = jd, YO = Li, Xo = Zs, XO = rr, ZO = XO(\"toStringTag\"), QO = Object, JO = Xo(function() {\n return arguments;\n}()) == \"Arguments\", eN = function(t, e) {\n try {\n return t[e];\n } catch (i) {\n }\n}, Ll = qO ? Xo : function(t) {\n var e, i, r;\n return t === void 0 ? \"Undefined\" : t === null ? \"Null\" : typeof (i = eN(e = QO(t), ZO)) == \"string\" ? i : JO ? Xo(e) : (r = Xo(e)) == \"Object\" && YO(e.callee) ? \"Arguments\" : r;\n}, tN = Ll, wm = Rd, iN = gl, rN = eo, nN = rr, aN = nN(\"iterator\"), p1 = function(t) {\n if (!iN(t))\n return wm(t, aN) || wm(t, \"@@iterator\") || rN[tN(t)];\n}, sN = vr, oN = nn, cN = sn, lN = El, uN = p1, _N = TypeError, dN = function(t, e) {\n var i = arguments.length < 2 ? uN(t) : e;\n if (oN(i))\n return cN(sN(i, t));\n throw _N(lN(t) + \" is not iterable\");\n}, hN = vr, Am = sn, fN = Rd, pN = function(t, e, i) {\n var r, o;\n Am(t);\n try {\n if (r = fN(t, \"return\"), !r) {\n if (e === \"throw\")\n throw i;\n return i;\n }\n r = hN(r, t);\n } catch (l) {\n o = !0, r = l;\n }\n if (e === \"throw\")\n throw i;\n if (o)\n throw r;\n return Am(r), i;\n}, mN = xl, vN = vr, gN = sn, bN = El, yN = WO, EN = Sl, Tm = bl, wN = dN, AN = p1, Sm = pN, TN = TypeError, Zo = function(t, e) {\n this.stopped = t, this.result = e;\n}, xm = Zo.prototype, to = function(t, e, i) {\n var r = i && i.that, o = !!(i && i.AS_ENTRIES), l = !!(i && i.IS_RECORD), v = !!(i && i.IS_ITERATOR), E = !!(i && i.INTERRUPTED), C = mN(e, r), x, g, D, _, m, p, d, u = function(w) {\n return x && Sm(x, \"normal\", w), new Zo(!0, w);\n }, U = function(w) {\n return o ? (gN(w), E ? C(w[0], w[1], u) : C(w[0], w[1])) : E ? C(w, u) : C(w);\n };\n if (l)\n x = t.iterator;\n else if (v)\n x = t;\n else {\n if (g = AN(t), !g)\n throw TN(bN(t) + \" is not iterable\");\n if (yN(g)) {\n for (D = 0, _ = EN(t); _ > D; D++)\n if (m = U(t[D]), m && Tm(xm, m))\n return m;\n return new Zo(!1);\n }\n x = wN(t, g);\n }\n for (p = l ? t.next : x.next; !(d = vN(p, x)).done; ) {\n try {\n m = U(d.value);\n } catch (w) {\n Sm(x, \"throw\", w);\n }\n if (typeof m == \"object\" && m && Tm(xm, m))\n return m;\n }\n return new Zo(!1);\n}, SN = Ll, xN = String, zd = function(t) {\n if (SN(t) === \"Symbol\")\n throw TypeError(\"Cannot convert a Symbol value to a string\");\n return xN(t);\n}, LN = zd, RN = function(t, e) {\n return t === void 0 ? arguments.length < 2 ? \"\" : e : LN(t);\n}, CN = sr, kN = bl, IN = Bd, Gc = Vd, DN = s1, m1 = Fd, Du = ga, Ou = Xs, ON = wO, NN = NO, PN = to, MN = RN, UN = rr, BN = UN(\"toStringTag\"), Kc = Error, VN = [].push, Ya = function(e, i) {\n var r = kN(Nu, this), o;\n Gc ? o = Gc(Kc(), r ? IN(this) : Nu) : (o = r ? this : m1(Nu), Du(o, BN, \"Error\")), i !== void 0 && Du(o, \"message\", MN(i)), NN(o, Ya, o.stack, 1), arguments.length > 2 && ON(o, arguments[2]);\n var l = [];\n return PN(e, VN, { that: l }), Du(o, \"errors\", l), o;\n};\nGc ? Gc(Ya, Kc) : DN(Ya, Kc, { name: !0 });\nvar Nu = Ya.prototype = m1(Kc.prototype, {\n constructor: Ou(1, Ya),\n message: Ou(1, \"\"),\n name: Ou(1, \"AggregateError\")\n});\nCN({ global: !0, constructor: !0, arity: 2 }, {\n AggregateError: Ya\n});\nvar FN = rr, jN = Fd, zN = pn.f, q_ = FN(\"unscopables\"), Y_ = Array.prototype;\nY_[q_] == null && zN(Y_, q_, {\n configurable: !0,\n value: jN(null)\n});\nvar Rl = function(t) {\n Y_[q_][t] = !0;\n}, HN = ur, $N = Li, WN = rn, Lm = Bd, GN = ba, KN = rr, X_ = KN(\"iterator\"), v1 = !1, ha, Pu, Mu;\n[].keys && (Mu = [].keys(), \"next\" in Mu ? (Pu = Lm(Lm(Mu)), Pu !== Object.prototype && (ha = Pu)) : v1 = !0);\nvar qN = !WN(ha) || HN(function() {\n var t = {};\n return ha[X_].call(t) !== t;\n});\nqN && (ha = {});\n$N(ha[X_]) || GN(ha, X_, function() {\n return this;\n});\nvar g1 = {\n IteratorPrototype: ha,\n BUGGY_SAFARI_ITERATORS: v1\n}, YN = pn.f, XN = an, ZN = rr, Rm = ZN(\"toStringTag\"), Hd = function(t, e, i) {\n t && !i && (t = t.prototype), t && !XN(t, Rm) && YN(t, Rm, { configurable: !0, value: e });\n}, QN = g1.IteratorPrototype, JN = Fd, e3 = Xs, t3 = Hd, i3 = eo, r3 = function() {\n return this;\n}, n3 = function(t, e, i, r) {\n var o = e + \" Iterator\";\n return t.prototype = JN(QN, { next: e3(+!r, i) }), t3(t, o, !1), i3[o] = r3, t;\n}, a3 = sr, s3 = vr, b1 = Jb, o3 = Li, c3 = n3, Cm = Bd, km = Vd, l3 = Hd, u3 = ga, Uu = ba, _3 = rr, d3 = eo, y1 = g1, h3 = b1.PROPER, f3 = b1.CONFIGURABLE, Im = y1.IteratorPrototype, So = y1.BUGGY_SAFARI_ITERATORS, Es = _3(\"iterator\"), Dm = \"keys\", ws = \"values\", Om = \"entries\", p3 = function() {\n return this;\n}, E1 = function(t, e, i, r, o, l, v) {\n c3(i, e, r);\n var E = function(U) {\n if (U === o && _)\n return _;\n if (!So && U in g)\n return g[U];\n switch (U) {\n case Dm:\n return function() {\n return new i(this, U);\n };\n case ws:\n return function() {\n return new i(this, U);\n };\n case Om:\n return function() {\n return new i(this, U);\n };\n }\n return function() {\n return new i(this);\n };\n }, C = e + \" Iterator\", x = !1, g = t.prototype, D = g[Es] || g[\"@@iterator\"] || o && g[o], _ = !So && D || E(o), m = e == \"Array\" && g.entries || D, p, d, u;\n if (m && (p = Cm(m.call(new t())), p !== Object.prototype && p.next && (Cm(p) !== Im && (km ? km(p, Im) : o3(p[Es]) || Uu(p, Es, p3)), l3(p, C, !0))), h3 && o == ws && D && D.name !== ws && (f3 ? u3(g, \"name\", ws) : (x = !0, _ = function() {\n return s3(D, this);\n })), o)\n if (d = {\n values: E(ws),\n keys: l ? _ : E(Dm),\n entries: E(Om)\n }, v)\n for (u in d)\n (So || x || !(u in g)) && Uu(g, u, d[u]);\n else\n a3({ target: e, proto: !0, forced: So || x }, d);\n return g[Es] !== _ && Uu(g, Es, _, { name: o }), d3[e] = _, d;\n}, w1 = function(t, e) {\n return { value: t, done: e };\n}, m3 = Qs, $d = Rl, Nm = eo, A1 = Tl, v3 = pn.f, g3 = E1, xo = w1, b3 = tn, T1 = \"Array Iterator\", y3 = A1.set, E3 = A1.getterFor(T1), w3 = g3(Array, \"Array\", function(t, e) {\n y3(this, {\n type: T1,\n target: m3(t),\n // target\n index: 0,\n // next index\n kind: e\n // kind\n });\n}, function() {\n var t = E3(this), e = t.target, i = t.kind, r = t.index++;\n return !e || r >= e.length ? (t.target = void 0, xo(void 0, !0)) : i == \"keys\" ? xo(r, !1) : i == \"values\" ? xo(e[r], !1) : xo([r, e[r]], !1);\n}, \"values\"), Pm = Nm.Arguments = Nm.Array;\n$d(\"keys\");\n$d(\"values\");\n$d(\"entries\");\nif (b3 && Pm.name !== \"values\")\n try {\n v3(Pm, \"name\", { value: \"values\" });\n } catch (t) {\n }\nvar A3 = jd, T3 = Ll, S3 = A3 ? {}.toString : function() {\n return \"[object \" + T3(this) + \"]\";\n}, x3 = jd, L3 = ba, R3 = S3;\nx3 || L3(Object.prototype, \"toString\", R3, { unsafe: !0 });\nvar C3 = Zs, Cl = typeof process < \"u\" && C3(process) == \"process\", Mm = Hc, k3 = pn, I3 = function(t, e, i) {\n return i.get && Mm(i.get, e, { getter: !0 }), i.set && Mm(i.set, e, { setter: !0 }), k3.f(t, e, i);\n}, D3 = fn, O3 = I3, N3 = rr, P3 = tn, Um = N3(\"species\"), M3 = function(t) {\n var e = D3(t);\n P3 && e && !e[Um] && O3(e, Um, {\n configurable: !0,\n get: function() {\n return this;\n }\n });\n}, U3 = bl, B3 = TypeError, V3 = function(t, e) {\n if (U3(e, t))\n return t;\n throw B3(\"Incorrect invocation\");\n}, F3 = qi, j3 = ur, S1 = Li, z3 = Ll, H3 = fn, $3 = Dd, x1 = function() {\n}, W3 = [], L1 = H3(\"Reflect\", \"construct\"), Wd = /^\\s*(?:class|function)\\b/, G3 = F3(Wd.exec), K3 = !Wd.exec(x1), As = function(e) {\n if (!S1(e))\n return !1;\n try {\n return L1(x1, W3, e), !0;\n } catch (i) {\n return !1;\n }\n}, R1 = function(e) {\n if (!S1(e))\n return !1;\n switch (z3(e)) {\n case \"AsyncFunction\":\n case \"GeneratorFunction\":\n case \"AsyncGeneratorFunction\":\n return !1;\n }\n try {\n return K3 || !!G3(Wd, $3(e));\n } catch (i) {\n return !0;\n }\n};\nR1.sham = !0;\nvar C1 = !L1 || j3(function() {\n var t;\n return As(As.call) || !As(Object) || !As(function() {\n t = !0;\n }) || t;\n}) ? R1 : As, q3 = C1, Y3 = El, X3 = TypeError, Z3 = function(t) {\n if (q3(t))\n return t;\n throw X3(Y3(t) + \" is not a constructor\");\n}, Bm = sn, Q3 = Z3, J3 = gl, e4 = rr, t4 = e4(\"species\"), k1 = function(t, e) {\n var i = Bm(t).constructor, r;\n return i === void 0 || J3(r = Bm(i)[t4]) ? e : Q3(r);\n}, i4 = vl, I1 = Function.prototype, Vm = I1.apply, Fm = I1.call, r4 = typeof Reflect == \"object\" && Reflect.apply || (i4 ? Fm.bind(Vm) : function() {\n return Fm.apply(Vm, arguments);\n}), n4 = qi, a4 = n4([].slice), s4 = TypeError, o4 = function(t, e) {\n if (t < e)\n throw s4(\"Not enough arguments\");\n return t;\n}, c4 = yl, D1 = /(?:ipad|iphone|ipod).*applewebkit/i.test(c4), mr = Vi, l4 = r4, u4 = xl, jm = Li, _4 = an, O1 = ur, zm = l1, d4 = a4, Hm = Al, h4 = o4, f4 = D1, p4 = Cl, Z_ = mr.setImmediate, Q_ = mr.clearImmediate, m4 = mr.process, Bu = mr.Dispatch, v4 = mr.Function, $m = mr.MessageChannel, g4 = mr.String, Vu = 0, Is = {}, Wm = \"onreadystatechange\", Hs, zn, Fu, ju;\nO1(function() {\n Hs = mr.location;\n});\nvar Gd = function(t) {\n if (_4(Is, t)) {\n var e = Is[t];\n delete Is[t], e();\n }\n}, zu = function(t) {\n return function() {\n Gd(t);\n };\n}, Gm = function(t) {\n Gd(t.data);\n}, Km = function(t) {\n mr.postMessage(g4(t), Hs.protocol + \"//\" + Hs.host);\n};\n(!Z_ || !Q_) && (Z_ = function(e) {\n h4(arguments.length, 1);\n var i = jm(e) ? e : v4(e), r = d4(arguments, 1);\n return Is[++Vu] = function() {\n l4(i, void 0, r);\n }, zn(Vu), Vu;\n}, Q_ = function(e) {\n delete Is[e];\n}, p4 ? zn = function(t) {\n m4.nextTick(zu(t));\n} : Bu && Bu.now ? zn = function(t) {\n Bu.now(zu(t));\n} : $m && !f4 ? (Fu = new $m(), ju = Fu.port2, Fu.port1.onmessage = Gm, zn = u4(ju.postMessage, ju)) : mr.addEventListener && jm(mr.postMessage) && !mr.importScripts && Hs && Hs.protocol !== \"file:\" && !O1(Km) ? (zn = Km, mr.addEventListener(\"message\", Gm, !1)) : Wm in Hm(\"script\") ? zn = function(t) {\n zm.appendChild(Hm(\"script\"))[Wm] = function() {\n zm.removeChild(this), Gd(t);\n };\n} : zn = function(t) {\n setTimeout(zu(t), 0);\n});\nvar N1 = {\n set: Z_,\n clear: Q_\n}, P1 = function() {\n this.head = null, this.tail = null;\n};\nP1.prototype = {\n add: function(t) {\n var e = { item: t, next: null }, i = this.tail;\n i ? i.next = e : this.head = e, this.tail = e;\n },\n get: function() {\n var t = this.head;\n if (t) {\n var e = this.head = t.next;\n return e === null && (this.tail = null), t.item;\n }\n }\n};\nvar M1 = P1, b4 = yl, y4 = /ipad|iphone|ipod/i.test(b4) && typeof Pebble < \"u\", E4 = yl, w4 = /web0s(?!.*chrome)/i.test(E4), fa = Vi, qm = xl, A4 = ml.f, Hu = N1.set, T4 = M1, S4 = D1, x4 = y4, L4 = w4, $u = Cl, Ym = fa.MutationObserver || fa.WebKitMutationObserver, Xm = fa.document, Zm = fa.process, Lo = fa.Promise, Qm = A4(fa, \"queueMicrotask\"), J_ = Qm && Qm.value, Oa, Wu, Gu, Ro, Jm;\nif (!J_) {\n var Co = new T4(), ko = function() {\n var t, e;\n for ($u && (t = Zm.domain) && t.exit(); e = Co.get(); )\n try {\n e();\n } catch (i) {\n throw Co.head && Oa(), i;\n }\n t && t.enter();\n };\n !S4 && !$u && !L4 && Ym && Xm ? (Wu = !0, Gu = Xm.createTextNode(\"\"), new Ym(ko).observe(Gu, { characterData: !0 }), Oa = function() {\n Gu.data = Wu = !Wu;\n }) : !x4 && Lo && Lo.resolve ? (Ro = Lo.resolve(void 0), Ro.constructor = Lo, Jm = qm(Ro.then, Ro), Oa = function() {\n Jm(ko);\n }) : $u ? Oa = function() {\n Zm.nextTick(ko);\n } : (Hu = qm(Hu, fa), Oa = function() {\n Hu(ko);\n }), J_ = function(t) {\n Co.head || Oa(), Co.add(t);\n };\n}\nvar R4 = J_, C4 = function(t, e) {\n try {\n arguments.length == 1 ? console.error(t) : console.error(t, e);\n } catch (i) {\n }\n}, io = function(t) {\n try {\n return { error: !1, value: t() };\n } catch (e) {\n return { error: !0, value: e };\n }\n}, k4 = Vi, ro = k4.Promise, U1 = typeof Deno == \"object\" && Deno && typeof Deno.version == \"object\", I4 = U1, D4 = Cl, O4 = !I4 && !D4 && typeof window == \"object\" && typeof document == \"object\", N4 = Vi, Ds = ro, P4 = Li, M4 = o1, U4 = Dd, B4 = rr, V4 = O4, F4 = U1, Ku = $b;\nDs && Ds.prototype;\nvar j4 = B4(\"species\"), ed = !1, B1 = P4(N4.PromiseRejectionEvent), z4 = M4(\"Promise\", function() {\n var t = U4(Ds), e = t !== String(Ds);\n if (!e && Ku === 66)\n return !0;\n if (!Ku || Ku < 51 || !/native code/.test(t)) {\n var i = new Ds(function(l) {\n l(1);\n }), r = function(l) {\n l(function() {\n }, function() {\n });\n }, o = i.constructor = {};\n if (o[j4] = r, ed = i.then(function() {\n }) instanceof r, !ed)\n return !0;\n }\n return !e && (V4 || F4) && !B1;\n}), no = {\n CONSTRUCTOR: z4,\n REJECTION_EVENT: B1,\n SUBCLASSING: ed\n}, Pn = {}, ev = nn, H4 = TypeError, $4 = function(t) {\n var e, i;\n this.promise = new t(function(r, o) {\n if (e !== void 0 || i !== void 0)\n throw H4(\"Bad Promise constructor\");\n e = r, i = o;\n }), this.resolve = ev(e), this.reject = ev(i);\n};\nPn.f = function(t) {\n return new $4(t);\n};\nvar W4 = sr, qc = Cl, Nn = Vi, Xa = vr, tv = ba, iv = Vd, G4 = Hd, K4 = M3, q4 = nn, Qo = Li, Y4 = rn, X4 = V3, Z4 = k1, V1 = N1.set, Kd = R4, Q4 = C4, J4 = io, eP = M1, F1 = Tl, Yc = ro, qd = no, j1 = Pn, kl = \"Promise\", z1 = qd.CONSTRUCTOR, tP = qd.REJECTION_EVENT, iP = qd.SUBCLASSING, qu = F1.getterFor(kl), rP = F1.set, Na = Yc && Yc.prototype, la = Yc, Io = Na, H1 = Nn.TypeError, td = Nn.document, Yd = Nn.process, id = j1.f, nP = id, aP = !!(td && td.createEvent && Nn.dispatchEvent), $1 = \"unhandledrejection\", sP = \"rejectionhandled\", rv = 0, W1 = 1, oP = 2, Xd = 1, G1 = 2, Do, nv, cP, av, K1 = function(t) {\n var e;\n return Y4(t) && Qo(e = t.then) ? e : !1;\n}, q1 = function(t, e) {\n var i = e.value, r = e.state == W1, o = r ? t.ok : t.fail, l = t.resolve, v = t.reject, E = t.domain, C, x, g;\n try {\n o ? (r || (e.rejection === G1 && uP(e), e.rejection = Xd), o === !0 ? C = i : (E && E.enter(), C = o(i), E && (E.exit(), g = !0)), C === t.promise ? v(H1(\"Promise-chain cycle\")) : (x = K1(C)) ? Xa(x, C, l, v) : l(C)) : v(i);\n } catch (D) {\n E && !g && E.exit(), v(D);\n }\n}, Y1 = function(t, e) {\n t.notified || (t.notified = !0, Kd(function() {\n for (var i = t.reactions, r; r = i.get(); )\n q1(r, t);\n t.notified = !1, e && !t.rejection && lP(t);\n }));\n}, X1 = function(t, e, i) {\n var r, o;\n aP ? (r = td.createEvent(\"Event\"), r.promise = e, r.reason = i, r.initEvent(t, !1, !0), Nn.dispatchEvent(r)) : r = { promise: e, reason: i }, !tP && (o = Nn[\"on\" + t]) ? o(r) : t === $1 && Q4(\"Unhandled promise rejection\", i);\n}, lP = function(t) {\n Xa(V1, Nn, function() {\n var e = t.facade, i = t.value, r = sv(t), o;\n if (r && (o = J4(function() {\n qc ? Yd.emit(\"unhandledRejection\", i, e) : X1($1, e, i);\n }), t.rejection = qc || sv(t) ? G1 : Xd, o.error))\n throw o.value;\n });\n}, sv = function(t) {\n return t.rejection !== Xd && !t.parent;\n}, uP = function(t) {\n Xa(V1, Nn, function() {\n var e = t.facade;\n qc ? Yd.emit(\"rejectionHandled\", e) : X1(sP, e, t.value);\n });\n}, Va = function(t, e, i) {\n return function(r) {\n t(e, r, i);\n };\n}, $a = function(t, e, i) {\n t.done || (t.done = !0, i && (t = i), t.value = e, t.state = oP, Y1(t, !0));\n}, rd = function(t, e, i) {\n if (!t.done) {\n t.done = !0, i && (t = i);\n try {\n if (t.facade === e)\n throw H1(\"Promise can't be resolved itself\");\n var r = K1(e);\n r ? Kd(function() {\n var o = { done: !1 };\n try {\n Xa(\n r,\n e,\n Va(rd, o, t),\n Va($a, o, t)\n );\n } catch (l) {\n $a(o, l, t);\n }\n }) : (t.value = e, t.state = W1, Y1(t, !1));\n } catch (o) {\n $a({ done: !1 }, o, t);\n }\n }\n};\nif (z1 && (la = function(e) {\n X4(this, Io), q4(e), Xa(Do, this);\n var i = qu(this);\n try {\n e(Va(rd, i), Va($a, i));\n } catch (r) {\n $a(i, r);\n }\n}, Io = la.prototype, Do = function(e) {\n rP(this, {\n type: kl,\n done: !1,\n notified: !1,\n parent: !1,\n reactions: new eP(),\n rejection: !1,\n state: rv,\n value: void 0\n });\n}, Do.prototype = tv(Io, \"then\", function(e, i) {\n var r = qu(this), o = id(Z4(this, la));\n return r.parent = !0, o.ok = Qo(e) ? e : !0, o.fail = Qo(i) && i, o.domain = qc ? Yd.domain : void 0, r.state == rv ? r.reactions.add(o) : Kd(function() {\n q1(o, r);\n }), o.promise;\n}), nv = function() {\n var t = new Do(), e = qu(t);\n this.promise = t, this.resolve = Va(rd, e), this.reject = Va($a, e);\n}, j1.f = id = function(t) {\n return t === la || t === cP ? new nv(t) : nP(t);\n}, Qo(Yc) && Na !== Object.prototype)) {\n av = Na.then, iP || tv(Na, \"then\", function(e, i) {\n var r = this;\n return new la(function(o, l) {\n Xa(av, r, o, l);\n }).then(e, i);\n }, { unsafe: !0 });\n try {\n delete Na.constructor;\n } catch (t) {\n }\n iv && iv(Na, Io);\n}\nW4({ global: !0, constructor: !0, wrap: !0, forced: z1 }, {\n Promise: la\n});\nG4(la, kl, !1);\nK4(kl);\nvar _P = rr, Z1 = _P(\"iterator\"), Q1 = !1;\ntry {\n var dP = 0, ov = {\n next: function() {\n return { done: !!dP++ };\n },\n return: function() {\n Q1 = !0;\n }\n };\n ov[Z1] = function() {\n return this;\n }, Array.from(ov, function() {\n throw 2;\n });\n} catch (t) {\n}\nvar hP = function(t, e) {\n if (!e && !Q1)\n return !1;\n var i = !1;\n try {\n var r = {};\n r[Z1] = function() {\n return {\n next: function() {\n return { done: i = !0 };\n }\n };\n }, t(r);\n } catch (o) {\n }\n return i;\n}, fP = ro, pP = hP, mP = no.CONSTRUCTOR, Il = mP || !pP(function(t) {\n fP.all(t).then(void 0, function() {\n });\n}), vP = sr, gP = vr, bP = nn, yP = Pn, EP = io, wP = to, AP = Il;\nvP({ target: \"Promise\", stat: !0, forced: AP }, {\n all: function(e) {\n var i = this, r = yP.f(i), o = r.resolve, l = r.reject, v = EP(function() {\n var E = bP(i.resolve), C = [], x = 0, g = 1;\n wP(e, function(D) {\n var _ = x++, m = !1;\n g++, gP(E, i, D).then(function(p) {\n m || (m = !0, C[_] = p, --g || o(C));\n }, l);\n }), --g || o(C);\n });\n return v.error && l(v.value), r.promise;\n }\n});\nvar TP = sr, SP = no.CONSTRUCTOR, nd = ro, xP = fn, LP = Li, RP = ba, cv = nd && nd.prototype;\nTP({ target: \"Promise\", proto: !0, forced: SP, real: !0 }, {\n catch: function(t) {\n return this.then(void 0, t);\n }\n});\nif (LP(nd)) {\n var lv = xP(\"Promise\").prototype.catch;\n cv.catch !== lv && RP(cv, \"catch\", lv, { unsafe: !0 });\n}\nvar CP = sr, kP = vr, IP = nn, DP = Pn, OP = io, NP = to, PP = Il;\nCP({ target: \"Promise\", stat: !0, forced: PP }, {\n race: function(e) {\n var i = this, r = DP.f(i), o = r.reject, l = OP(function() {\n var v = IP(i.resolve);\n NP(e, function(E) {\n kP(v, i, E).then(r.resolve, o);\n });\n });\n return l.error && o(l.value), r.promise;\n }\n});\nvar MP = sr, UP = vr, BP = Pn, VP = no.CONSTRUCTOR;\nMP({ target: \"Promise\", stat: !0, forced: VP }, {\n reject: function(e) {\n var i = BP.f(this);\n return UP(i.reject, void 0, e), i.promise;\n }\n});\nvar FP = sn, jP = rn, zP = Pn, J1 = function(t, e) {\n if (FP(t), jP(e) && e.constructor === t)\n return e;\n var i = zP.f(t), r = i.resolve;\n return r(e), i.promise;\n}, HP = sr, $P = fn, WP = no.CONSTRUCTOR, GP = J1;\n$P(\"Promise\");\nHP({ target: \"Promise\", stat: !0, forced: WP }, {\n resolve: function(e) {\n return GP(this, e);\n }\n});\nvar KP = sr, qP = vr, YP = nn, XP = Pn, ZP = io, QP = to, JP = Il;\nKP({ target: \"Promise\", stat: !0, forced: JP }, {\n allSettled: function(e) {\n var i = this, r = XP.f(i), o = r.resolve, l = r.reject, v = ZP(function() {\n var E = YP(i.resolve), C = [], x = 0, g = 1;\n QP(e, function(D) {\n var _ = x++, m = !1;\n g++, qP(E, i, D).then(function(p) {\n m || (m = !0, C[_] = { status: \"fulfilled\", value: p }, --g || o(C));\n }, function(p) {\n m || (m = !0, C[_] = { status: \"rejected\", reason: p }, --g || o(C));\n });\n }), --g || o(C);\n });\n return v.error && l(v.value), r.promise;\n }\n});\nvar e5 = sr, t5 = vr, i5 = nn, r5 = fn, n5 = Pn, a5 = io, s5 = to, o5 = Il, uv = \"No one promise resolved\";\ne5({ target: \"Promise\", stat: !0, forced: o5 }, {\n any: function(e) {\n var i = this, r = r5(\"AggregateError\"), o = n5.f(i), l = o.resolve, v = o.reject, E = a5(function() {\n var C = i5(i.resolve), x = [], g = 0, D = 1, _ = !1;\n s5(e, function(m) {\n var p = g++, d = !1;\n D++, t5(C, i, m).then(function(u) {\n d || _ || (_ = !0, l(u));\n }, function(u) {\n d || _ || (d = !0, x[p] = u, --D || v(new r(x, uv)));\n });\n }), --D || v(new r(x, uv));\n });\n return E.error && v(E.value), o.promise;\n }\n});\nvar c5 = sr, Xc = ro, l5 = ur, ey = fn, ty = Li, u5 = k1, _v = J1, _5 = ba, ad = Xc && Xc.prototype, d5 = !!Xc && l5(function() {\n ad.finally.call({ then: function() {\n } }, function() {\n });\n});\nc5({ target: \"Promise\", proto: !0, real: !0, forced: d5 }, {\n finally: function(t) {\n var e = u5(this, ey(\"Promise\")), i = ty(t);\n return this.then(\n i ? function(r) {\n return _v(e, t()).then(function() {\n return r;\n });\n } : t,\n i ? function(r) {\n return _v(e, t()).then(function() {\n throw r;\n });\n } : t\n );\n }\n});\nif (ty(Xc)) {\n var dv = ey(\"Promise\").prototype.finally;\n ad.finally !== dv && _5(ad, \"finally\", dv, { unsafe: !0 });\n}\nvar Zd = qi, h5 = Md, f5 = zd, p5 = Ld, m5 = Zd(\"\".charAt), hv = Zd(\"\".charCodeAt), v5 = Zd(\"\".slice), fv = function(t) {\n return function(e, i) {\n var r = f5(p5(e)), o = h5(i), l = r.length, v, E;\n return o < 0 || o >= l ? t ? \"\" : void 0 : (v = hv(r, o), v < 55296 || v > 56319 || o + 1 === l || (E = hv(r, o + 1)) < 56320 || E > 57343 ? t ? m5(r, o) : v : t ? v5(r, o, o + 2) : (v - 55296 << 10) + (E - 56320) + 65536);\n };\n}, g5 = {\n // `String.prototype.codePointAt` method\n // https://tc39.es/ecma262/#sec-string.prototype.codepointat\n codeAt: fv(!1),\n // `String.prototype.at` method\n // https://github.com/mathiasbynens/String.prototype.at\n charAt: fv(!0)\n}, b5 = g5.charAt, y5 = zd, iy = Tl, E5 = E1, pv = w1, ry = \"String Iterator\", w5 = iy.set, A5 = iy.getterFor(ry);\nE5(String, \"String\", function(t) {\n w5(this, {\n type: ry,\n string: y5(t),\n index: 0\n });\n}, function() {\n var e = A5(this), i = e.string, r = e.index, o;\n return r >= i.length ? pv(void 0, !0) : (o = b5(i, r), e.index += o.length, pv(o, !1));\n});\nvar T5 = Vi, ny = T5, S5 = ny;\nS5.Promise;\nvar x5 = {\n CSSRuleList: 0,\n CSSStyleDeclaration: 0,\n CSSValueList: 0,\n ClientRectList: 0,\n DOMRectList: 0,\n DOMStringList: 0,\n DOMTokenList: 1,\n DataTransferItemList: 0,\n FileList: 0,\n HTMLAllCollection: 0,\n HTMLCollection: 0,\n HTMLFormElement: 0,\n HTMLSelectElement: 0,\n MediaList: 0,\n MimeTypeArray: 0,\n NamedNodeMap: 0,\n NodeList: 1,\n PaintRequestList: 0,\n Plugin: 0,\n PluginArray: 0,\n SVGLengthList: 0,\n SVGNumberList: 0,\n SVGPathSegList: 0,\n SVGPointList: 0,\n SVGStringList: 0,\n SVGTransformList: 0,\n SourceBufferList: 0,\n StyleSheetList: 0,\n TextTrackCueList: 0,\n TextTrackList: 0,\n TouchList: 0\n}, L5 = Al, Yu = L5(\"span\").classList, mv = Yu && Yu.constructor && Yu.constructor.prototype, R5 = mv === Object.prototype ? void 0 : mv, vv = Vi, ay = x5, C5 = R5, xs = w3, Xu = ga, sy = rr, Zu = sy(\"iterator\"), gv = sy(\"toStringTag\"), Qu = xs.values, oy = function(t, e) {\n if (t) {\n if (t[Zu] !== Qu)\n try {\n Xu(t, Zu, Qu);\n } catch (r) {\n t[Zu] = Qu;\n }\n if (t[gv] || Xu(t, gv, e), ay[e]) {\n for (var i in xs)\n if (t[i] !== xs[i])\n try {\n Xu(t, i, xs[i]);\n } catch (r) {\n t[i] = xs[i];\n }\n }\n }\n};\nfor (var Ju in ay)\n oy(vv[Ju] && vv[Ju].prototype, Ju);\noy(C5, \"DOMTokenList\");\nvar k5 = Zs, I5 = Array.isArray || function(e) {\n return k5(e) == \"Array\";\n}, bv = I5, D5 = C1, O5 = rn, N5 = rr, P5 = N5(\"species\"), yv = Array, M5 = function(t) {\n var e;\n return bv(t) && (e = t.constructor, D5(e) && (e === yv || bv(e.prototype)) ? e = void 0 : O5(e) && (e = e[P5], e === null && (e = void 0))), e === void 0 ? yv : e;\n}, U5 = M5, B5 = function(t, e) {\n return new (U5(t))(e === 0 ? 0 : e);\n}, V5 = xl, F5 = qi, j5 = Vb, z5 = wl, H5 = Sl, $5 = B5, Ev = F5([].push), En = function(t) {\n var e = t == 1, i = t == 2, r = t == 3, o = t == 4, l = t == 6, v = t == 7, E = t == 5 || l;\n return function(C, x, g, D) {\n for (var _ = z5(C), m = j5(_), p = V5(x, g), d = H5(m), u = 0, U = D || $5, w = e ? U(C, d) : i || v ? U(C, 0) : void 0, S, R; d > u; u++)\n if ((E || u in m) && (S = m[u], R = p(S, u, _), t))\n if (e)\n w[u] = R;\n else if (R)\n switch (t) {\n case 3:\n return !0;\n case 5:\n return S;\n case 6:\n return u;\n case 2:\n Ev(w, S);\n }\n else\n switch (t) {\n case 4:\n return !1;\n case 7:\n Ev(w, S);\n }\n return l ? -1 : r || o ? o : w;\n };\n}, cy = {\n // `Array.prototype.forEach` method\n // https://tc39.es/ecma262/#sec-array.prototype.foreach\n forEach: En(0),\n // `Array.prototype.map` method\n // https://tc39.es/ecma262/#sec-array.prototype.map\n map: En(1),\n // `Array.prototype.filter` method\n // https://tc39.es/ecma262/#sec-array.prototype.filter\n filter: En(2),\n // `Array.prototype.some` method\n // https://tc39.es/ecma262/#sec-array.prototype.some\n some: En(3),\n // `Array.prototype.every` method\n // https://tc39.es/ecma262/#sec-array.prototype.every\n every: En(4),\n // `Array.prototype.find` method\n // https://tc39.es/ecma262/#sec-array.prototype.find\n find: En(5),\n // `Array.prototype.findIndex` method\n // https://tc39.es/ecma262/#sec-array.prototype.findIndex\n findIndex: En(6),\n // `Array.prototype.filterReject` method\n // https://github.com/tc39/proposal-array-filtering\n filterReject: En(7)\n}, W5 = sr, G5 = cy.find, K5 = Rl, sd = \"find\", ly = !0;\nsd in [] && Array(1)[sd](function() {\n ly = !1;\n});\nW5({ target: \"Array\", proto: !0, forced: ly }, {\n find: function(e) {\n return G5(this, e, arguments.length > 1 ? arguments[1] : void 0);\n }\n});\nK5(sd);\nvar q5 = Vi, Y5 = qi, Qd = function(t, e) {\n return Y5(q5[t].prototype[e]);\n}, X5 = Qd;\nX5(\"Array\", \"find\");\nvar Z5 = sr, Q5 = cy.findIndex, J5 = Rl, od = \"findIndex\", uy = !0;\nod in [] && Array(1)[od](function() {\n uy = !1;\n});\nZ5({ target: \"Array\", proto: !0, forced: uy }, {\n findIndex: function(e) {\n return Q5(this, e, arguments.length > 1 ? arguments[1] : void 0);\n }\n});\nJ5(od);\nvar e6 = Qd;\ne6(\"Array\", \"findIndex\");\nvar t6 = wl, wv = r1, i6 = Sl, r6 = function(e) {\n for (var i = t6(this), r = i6(i), o = arguments.length, l = wv(o > 1 ? arguments[1] : void 0, r), v = o > 2 ? arguments[2] : void 0, E = v === void 0 ? r : wv(v, r); E > l; )\n i[l++] = e;\n return i;\n}, n6 = sr, a6 = r6, s6 = Rl;\nn6({ target: \"Array\", proto: !0 }, {\n fill: a6\n});\ns6(\"fill\");\nvar o6 = Qd;\no6(\"Array\", \"fill\");\nvar c6 = Vi, l6 = c6.isFinite, u6 = Number.isFinite || function(e) {\n return typeof e == \"number\" && l6(e);\n}, _6 = sr, d6 = u6;\n_6({ target: \"Number\", stat: !0 }, { isFinite: d6 });\nvar h6 = ny;\nh6.Number.isFinite;\nci.packVersion = \"1.1.0-cztv-alpha.48.vue2\";\nci.register(f_);\nci.register(d_);\nci.register(i_);\nci.register(s_);\nci.register(G0);\nci.register(hg);\nci.register(p_);\nci.register(q0);\nci.register(fg);\nci.register(mg);\nci.register(wg);\nci.register(E_);\nci.register(Db);\nci.register(O_);\nexport {\n OE as ControlsPluginLabel,\n Fv as ControlsPluginModule,\n ua as DanmakuControlsPos,\n e_ as DanmakuPluginDomStyle,\n cd as DanmakuPluginLabel,\n s0 as DanmakuPluginModule,\n tr as FullscreenType,\n NE as HotkeyPluginLabel,\n Gv as HotkeyPluginModule,\n Ov as I18nPluginLabel,\n zv as I18nPluginModule,\n ci as KwaiPlayer,\n ge as KwaiPlayerEvent,\n ja as KwaiPlayerLayer,\n Be as Log,\n Nv as LoggerPluginLabel,\n $v as LoggerPluginModule,\n Uv as MaskPluginLabel,\n i0 as MaskPluginModule,\n PE as MirrorPluginLabel,\n Xv as MirrorPluginModule,\n Pv as PlayInfoPluginLabel,\n qv as PlayInfoPluginModule,\n Bi as PluginModule,\n Mv as PreviewPluginLabel,\n e0 as PreviewPluginModule,\n ME as RotatePluginLabel,\n Qv as RotatePluginModule,\n Bv as VRPluginLabel,\n n0 as VRPluginModule,\n E6 as default\n};\n","'use strict';\nvar anObject = require('../internals/an-object');\n\n// `RegExp.prototype.flags` getter implementation\n// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.hasIndices) result += 'd';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.dotAll) result += 's';\n if (that.unicode) result += 'u';\n if (that.unicodeSets) result += 'v';\n if (that.sticky) result += 'y';\n return result;\n};\n","module.exports = __webpack_public_path__ + \"static/img/default.5755cc82.png\";","var ua = { //3\r\n android: false,\r\n android2: false,\r\n iphone: false,\r\n ipad: false,\r\n pc: false,\r\n wechat: false,\r\n chinabluenews: false\r\n};\r\n(function() {\r\n var ua_str = window.navigator.userAgent.toLowerCase();\r\n if (/micromessenger/.test(ua_str)) {\r\n ua.wechat = true;\r\n ua.chinabluenews = false;\r\n }\r\n})();\r\n\r\nfunction fenxiang(a, b, e, l) {\r\n if (ua.wechat) {\r\n $.getJSON(\r\n \"https://sso.cztvcloud.com/weixin_share/share?channel_id=181&callback=?\", { url: l },\r\n function(msg) {\r\n if (msg.success) {\r\n wx.config({\r\n debug: false,\r\n appId: msg.appId,\r\n timestamp: msg.timestamp,\r\n nonceStr: msg.nonceStr,\r\n signature: msg.signature,\r\n jsApiList: [\r\n \"onMenuShareTimeline\",\r\n \"onMenuShareAppMessage\",\r\n \"onMenuShareQQ\",\r\n \"onMenuShareWeibo\"\r\n ]\r\n });\r\n }\r\n wx.ready(function() {\r\n var news_title = a;\r\n var news_link = l;\r\n //'https://house.cztv.com/m?from=singlemessage&isappinstalled=0#/newsdetails?source=1&id=5156716';\r\n //https://xihu.cztvcloud.com/m#/wldetails?id=5154236\r\n //https://house.cztv.com/m#/newsdetails?source=1&id=5156716\r\n var news_image = e;\r\n var news_intro = b;\r\n wx.onMenuShareTimeline({\r\n title: news_title,\r\n link: news_link,\r\n imgUrl: news_image\r\n });\r\n wx.onMenuShareAppMessage({\r\n title: news_title,\r\n desc: news_intro,\r\n link: news_link,\r\n imgUrl: news_image\r\n });\r\n wx.onMenuShareQQ({\r\n title: news_title,\r\n desc: news_intro,\r\n link: news_link,\r\n imgUrl: news_image\r\n });\r\n wx.onMenuShareWeibo({\r\n title: news_title,\r\n desc: news_intro,\r\n link: news_link,\r\n imgUrl: news_image\r\n });\r\n });\r\n }\r\n );\r\n }\r\n}\r\nexport {\r\n fenxiang\r\n}","module.exports = __webpack_public_path__ + \"static/img/default.64b96bc2.png\";","module.exports = __webpack_public_path__ + \"static/img/default.b41fe449.png\";","var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');\nvar isCallable = require('../internals/is-callable');\nvar classofRaw = require('../internals/classof-raw');\nvar wellKnownSymbol = require('../internals/well-known-symbol');\n\nvar TO_STRING_TAG = wellKnownSymbol('toStringTag');\nvar $Object = Object;\n\n// ES3 wrong here\nvar CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (error) { /* empty */ }\n};\n\n// getting tag from ES6+ `Object.prototype.toString`\nmodule.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) {\n var O, tag, result;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (tag = tryGet(O = $Object(it), TO_STRING_TAG)) == 'string' ? tag\n // builtinTag case\n : CORRECT_ARGUMENTS ? classofRaw(O)\n // ES3 arguments fallback\n : (result = classofRaw(O)) == 'Object' && isCallable(O.callee) ? 'Arguments' : result;\n};\n"],"sourceRoot":""}