/*!
	Copyright (c) 2018 Jed Watson.
	Licensed under the MIT License (MIT), see
	http://jedwatson.github.io/classnames
*/

/*!
  Copyright (c) 2015 Jed Watson.
  Based on code that is Copyright 2013-2015, Facebook, Inc.
  All rights reserved.
*/

/*!
 * Adapted from jQuery UI core
 *
 * http://jqueryui.com
 *
 * Copyright 2014 jQuery Foundation and other contributors
 * Released under the MIT license.
 * http://jquery.org/license
 *
 * http://api.jqueryui.com/category/ui-core/
 */

/*!
 * Fuse.js v3.6.1 - Lightweight fuzzy-search (http://fusejs.io)
 * 
 * Copyright (c) 2012-2017 Kirollos Risk (http://kiro.me)
 * All Rights Reserved. Apache Software License 2.0
 * 
 * http://www.apache.org/licenses/LICENSE-2.0
 */

/*! ../controller/level-helper */

/*! ../crypt/decrypter */

/*! ../demux/aacdemuxer */

/*! ../demux/chunk-cache */

/*! ../demux/id3 */

/*! ../demux/mp3demuxer */

/*! ../demux/mp4demuxer */

/*! ../demux/transmuxer */

/*! ../demux/transmuxer-interface */

/*! ../demux/transmuxer-worker.ts */

/*! ../demux/tsdemuxer */

/*! ../errors */

/*! ../events */

/*! ../is-supported */

/*! ../loader/fragment */

/*! ../loader/fragment-loader */

/*! ../loader/load-stats */

/*! ../remux/mp4-remuxer */

/*! ../remux/passthrough-remuxer */

/*! ../task-loop */

/*! ../types/cmcd */

/*! ../types/level */

/*! ../types/loader */

/*! ../types/transmuxer */

/*! ../utils/attr-list */

/*! ../utils/binary-search */

/*! ../utils/buffer-helper */

/*! ../utils/cea-608-parser */

/*! ../utils/codecs */

/*! ../utils/discontinuities */

/*! ../utils/ewma */

/*! ../utils/ewma-bandwidth-estimator */

/*! ../utils/imsc1-ttml-parser */

/*! ../utils/logger */

/*! ../utils/mediakeys-helper */

/*! ../utils/mediasource-helper */

/*! ../utils/mp4-tools */

/*! ../utils/output-filter */

/*! ../utils/texttrack-utils */

/*! ../utils/time-ranges */

/*! ../utils/timescale-conversion */

/*! ../utils/typed-array */

/*! ../utils/webvtt-parser */

/*! ./aac-helper */

/*! ./adts */

/*! ./aes-crypto */

/*! ./aes-decryptor */

/*! ./base-audio-demuxer */

/*! ./base-playlist-controller */

/*! ./base-stream-controller */

/*! ./buffer-operation-queue */

/*! ./chunk-cache */

/*! ./config */

/*! ./controller/abr-controller */

/*! ./controller/audio-stream-controller */

/*! ./controller/audio-track-controller */

/*! ./controller/buffer-controller */

/*! ./controller/cap-level-controller */

/*! ./controller/cmcd-controller */

/*! ./controller/eme-controller */

/*! ./controller/fps-controller */

/*! ./controller/fragment-tracker */

/*! ./controller/id3-track-controller */

/*! ./controller/latency-controller */

/*! ./controller/level-controller */

/*! ./controller/stream-controller */

/*! ./controller/subtitle-stream-controller */

/*! ./controller/subtitle-track-controller */

/*! ./controller/timeline-controller */

/*! ./dummy-demuxed-track */

/*! ./errors */

/*! ./events */

/*! ./exp-golomb */

/*! ./fast-aes-key */

/*! ./fragment */

/*! ./fragment-finders */

/*! ./fragment-tracker */

/*! ./gap-controller */

/*! ./id3 */

/*! ./is-supported */

/*! ./level-details */

/*! ./level-helper */

/*! ./level-key */

/*! ./load-stats */

/*! ./loader/key-loader */

/*! ./loader/playlist-loader */

/*! ./logger */

/*! ./m3u8-parser */

/*! ./mp4-generator */

/*! ./mp4-tools */

/*! ./mpegaudio */

/*! ./sample-aes */

/*! ./src/polyfills/number */

/*! ./texttrack-utils */

/*! ./timescale-conversion */

/*! ./tsdemuxer */

/*! ./typed-array */

/*! ./utils/cues */

/*! ./utils/fetch-loader */

/*! ./utils/logger */

/*! ./utils/mediakeys-helper */

/*! ./utils/mediasource-helper */

/*! ./utils/xhr-loader */

/*! ./vttcue */

/*! ./vttparser */

/*! ./webvtt-parser */

/*! @preserve
 * numeral.js
 * version : 2.0.6
 * author : Adam Draper
 * license : MIT
 * http://adamwdraper.github.com/Numeral-js/
 */

/*! eventemitter3 */

/*! exports provided: AttrList */

/*! exports provided: BufferHelper */

/*! exports provided: CMCDVersion, CMCDObjectType, CMCDStreamingFormat, CMCDStreamType */

/*! exports provided: ChunkMetadata */

/*! exports provided: ElementaryStreamTypes, BaseSegment, Fragment, Part */

/*! exports provided: ErrorTypes, ErrorDetails */

/*! exports provided: Events */

/*! exports provided: FragmentState, FragmentTracker */

/*! exports provided: HlsSkip, getSkipValue, HlsUrlParameters, Level */

/*! exports provided: IMSC1_CODEC, parseIMSC1 */

/*! exports provided: KeySystems, requestMediaKeySystemAccess */

/*! exports provided: LevelDetails */

/*! exports provided: LevelKey */

/*! exports provided: LoadStats */

/*! exports provided: PlaylistContextType, PlaylistLevelType */

/*! exports provided: Row, CaptionScreen, default */

/*! exports provided: STALL_MINIMUM_DURATION_MS, MAX_START_GAP_JUMP, SKIP_BUFFER_HOLE_STEP_SECONDS, SKIP_BUFFER_RANGE_START, default */

/*! exports provided: State, default */

/*! exports provided: SubtitleStreamController */

/*! exports provided: TimelineController */

/*! exports provided: addGroupId, assignTrackIdsByGroup, updatePTS, updateFragPTSDTS, mergeDetails, mapPartIntersection, mapFragmentIntersection, adjustSliding, addSliding, computeReloadInterval, getFragmentWithSN, getPartWith */

/*! exports provided: appendFrame, parseHeader, isHeaderPattern, isHeader, canParse, probe */

/*! exports provided: bin2str, readUint16, readUint32, writeUint32, findBox, parseSegmentIndex, parseInitSegment, getStartDTS, getDuration, computeRawDurationFromSamples, offsetStartDTS, segmentValidRange, appendUint8Array */

/*! exports provided: default */

/*! exports provided: default, LoadError */

/*! exports provided: default, isPromise, TransmuxConfig, TransmuxState */

/*! exports provided: default, normalizePts */

/*! exports provided: discardEPB, default */

/*! exports provided: dummyTrack */

/*! exports provided: enableLogs, logger */

/*! exports provided: fetchSupported, default */

/*! exports provided: findFirstFragWithCC, shouldAlignOnDiscontinuities, findDiscontinuousReferenceFrag, adjustSlidingStart, alignStream, alignPDT, alignFragmentByPDTDelta, alignMediaPlaylistByPDT */

/*! exports provided: findFragmentByPDT, findFragmentByPTS, fragmentWithinToleranceTest, pdtWithinToleranceTest, findFragWithCC */

/*! exports provided: generateCueId, parseWebVTT */

/*! exports provided: getAudioConfig, isHeaderPattern, getHeaderLength, getFullFrameLength, canGetFrameLength, isHeader, canParse, probe, initTrackConfig, getFrameDuration, parseFrameHeader, appendFrame */

/*! exports provided: getMediaSource */

/*! exports provided: hlsDefaultConfig, mergeConfig, enableStreamingMode */

/*! exports provided: initPTSFn, default */

/*! exports provided: isCodecType, isCodecSupportedInMp4 */

/*! exports provided: isFiniteNumber, MAX_SAFE_INTEGER */

/*! exports provided: isHeader, isFooter, getID3Data, canParse, getTimeStamp, isTimeStampFrame, getID3Frames, decodeFrame, utf8ArrayToStr, testables */

/*! exports provided: isSupported, changeTypeSupported */

/*! exports provided: parseTimeStamp, fixLineBreaks, VTTParser */

/*! exports provided: removePadding, default */

/*! exports provided: sendAddTrackEvent, addCueToTrack, clearCurrentCues, removeCuesInRange, getCuesInRange */

/*! exports provided: sliceUint8 */

/*! exports provided: toTimescaleFromBase, toTimescaleFromScale, toMsFromMpegTsClock, toMpegTsClockFromTimescale */

/*! no static exports found */

/*! url-toolkit */

/*! webworkify-webpack */

/*!********************!*\
  !*** ./src/hls.ts ***!
  \********************/

/*!***********************!*\
  !*** ./src/config.ts ***!
  \***********************/

/*!***********************!*\
  !*** ./src/errors.ts ***!
  \***********************/

/*!***********************!*\
  !*** ./src/events.ts ***!
  \***********************/

/*!**************************!*\
  !*** ./src/demux/id3.ts ***!
  \**************************/

/*!**************************!*\
  !*** ./src/task-loop.ts ***!
  \**************************/

/*!***************************!*\
  !*** ./src/demux/adts.ts ***!
  \***************************/

/*!***************************!*\
  !*** ./src/types/cmcd.ts ***!
  \***************************/

/*!***************************!*\
  !*** ./src/utils/cues.ts ***!
  \***************************/

/*!***************************!*\
  !*** ./src/utils/ewma.ts ***!
  \***************************/

/*!****************************!*\
  !*** ./src/types/level.ts ***!
  \****************************/

/*!*****************************!*\
  !*** ./src/is-supported.ts ***!
  \*****************************/

/*!*****************************!*\
  !*** ./src/types/loader.ts ***!
  \*****************************/

/*!*****************************!*\
  !*** ./src/utils/codecs.ts ***!
  \*****************************/

/*!*****************************!*\
  !*** ./src/utils/logger.ts ***!
  \*****************************/

/*!*****************************!*\
  !*** ./src/utils/vttcue.ts ***!
  \*****************************/

/*!********************************!*\
  !*** ./src/crypt/decrypter.ts ***!
  \********************************/

/*!********************************!*\
  !*** ./src/demux/mpegaudio.ts ***!
  \********************************/

/*!********************************!*\
  !*** ./src/demux/tsdemuxer.ts ***!
  \********************************/

/*!********************************!*\
  !*** ./src/loader/fragment.ts ***!
  \********************************/

/*!********************************!*\
  !*** ./src/utils/attr-list.ts ***!
  \********************************/

/*!********************************!*\
  !*** ./src/utils/mp4-tools.ts ***!
  \********************************/

/*!********************************!*\
  !*** ./src/utils/vttparser.ts ***!
  \********************************/

/*!*********************************!*\
  !*** ./src/crypt/aes-crypto.ts ***!
  \*********************************/

/*!*********************************!*\
  !*** ./src/demux/aacdemuxer.ts ***!
  \*********************************/

/*!*********************************!*\
  !*** ./src/demux/exp-golomb.ts ***!
  \*********************************/

/*!*********************************!*\
  !*** ./src/demux/mp3demuxer.ts ***!
  \*********************************/

/*!*********************************!*\
  !*** ./src/demux/mp4demuxer.ts ***!
  \*********************************/

/*!*********************************!*\
  !*** ./src/demux/sample-aes.ts ***!
  \*********************************/

/*!*********************************!*\
  !*** ./src/demux/transmuxer.ts ***!
  \*********************************/

/*!*********************************!*\
  !*** ./src/loader/level-key.ts ***!
  \*********************************/

/*!*********************************!*\
  !*** ./src/polyfills/number.ts ***!
  \*********************************/

/*!*********************************!*\
  !*** ./src/remux/aac-helper.ts ***!
  \*********************************/

/*!*********************************!*\
  !*** ./src/types/transmuxer.ts ***!
  \*********************************/

/*!*********************************!*\
  !*** ./src/utils/xhr-loader.ts ***!
  \*********************************/

/*!**********************************!*\
  !*** ./src/demux/chunk-cache.ts ***!
  \**********************************/

/*!**********************************!*\
  !*** ./src/loader/key-loader.ts ***!
  \**********************************/

/*!**********************************!*\
  !*** ./src/loader/load-stats.ts ***!
  \**********************************/

/*!**********************************!*\
  !*** ./src/remux/mp4-remuxer.ts ***!
  \**********************************/

/*!**********************************!*\
  !*** ./src/utils/time-ranges.ts ***!
  \**********************************/

/*!**********************************!*\
  !*** ./src/utils/typed-array.ts ***!
  \**********************************/

/*!***********************************!*\
  !*** ./src/crypt/fast-aes-key.ts ***!
  \***********************************/

/*!***********************************!*\
  !*** ./src/loader/m3u8-parser.ts ***!
  \***********************************/

/*!***********************************!*\
  !*** ./src/utils/fetch-loader.ts ***!
  \***********************************/

/*!************************************!*\
  !*** ./src/crypt/aes-decryptor.ts ***!
  \************************************/

/*!************************************!*\
  !*** ./src/remux/mp4-generator.ts ***!
  \************************************/

/*!************************************!*\
  !*** ./src/utils/binary-search.ts ***!
  \************************************/

/*!************************************!*\
  !*** ./src/utils/buffer-helper.ts ***!
  \************************************/

/*!************************************!*\
  !*** ./src/utils/output-filter.ts ***!
  \************************************/

/*!************************************!*\
  !*** ./src/utils/webvtt-parser.ts ***!
  \************************************/

/*!*************************************!*\
  !*** ./src/loader/level-details.ts ***!
  \*************************************/

/*!*************************************!*\
  !*** ./src/utils/cea-608-parser.ts ***!
  \*************************************/

/*!**************************************!*\
  !*** ./src/utils/discontinuities.ts ***!
  \**************************************/

/*!**************************************!*\
  !*** ./src/utils/texttrack-utils.ts ***!
  \**************************************/

/*!***************************************!*\
  !*** ./src/loader/fragment-loader.ts ***!
  \***************************************/

/*!***************************************!*\
  !*** ./src/loader/playlist-loader.ts ***!
  \***************************************/

/*!***************************************!*\
  !*** ./src/utils/mediakeys-helper.ts ***!
  \***************************************/

/*!****************************************!*\
  !*** ./src/controller/level-helper.ts ***!
  \****************************************/

/*!****************************************!*\
  !*** ./src/demux/transmuxer-worker.ts ***!
  \****************************************/

/*!****************************************!*\
  !*** ./src/utils/imsc1-ttml-parser.ts ***!
  \****************************************/

/*!*****************************************!*\
  !*** ./src/demux/base-audio-demuxer.ts ***!
  \*****************************************/

/*!*****************************************!*\
  !*** ./src/utils/mediasource-helper.ts ***!
  \*****************************************/

/*!******************************************!*\
  !*** ./src/controller/abr-controller.ts ***!
  \******************************************/

/*!******************************************!*\
  !*** ./src/controller/eme-controller.ts ***!
  \******************************************/

/*!******************************************!*\
  !*** ./src/controller/fps-controller.ts ***!
  \******************************************/

/*!******************************************!*\
  !*** ./src/controller/gap-controller.ts ***!
  \******************************************/

/*!******************************************!*\
  !*** ./src/demux/dummy-demuxed-track.ts ***!
  \******************************************/

/*!******************************************!*\
  !*** ./src/remux/passthrough-remuxer.ts ***!
  \******************************************/

/*!*******************************************!*\
  !*** ./src/controller/cmcd-controller.ts ***!
  \*******************************************/

/*!*******************************************!*\
  !*** ./src/demux/transmuxer-interface.ts ***!
  \*******************************************/

/*!*******************************************!*\
  !*** ./src/utils/timescale-conversion.ts ***!
  \*******************************************/

/*!********************************************!*\
  !*** ./src/controller/fragment-finders.ts ***!
  \********************************************/

/*!********************************************!*\
  !*** ./src/controller/fragment-tracker.ts ***!
  \********************************************/

/*!********************************************!*\
  !*** ./src/controller/level-controller.ts ***!
  \********************************************/

/*!*********************************************!*\
  !*** ./node_modules/eventemitter3/index.js ***!
  \*********************************************/

/*!*********************************************!*\
  !*** ./src/controller/buffer-controller.ts ***!
  \*********************************************/

/*!*********************************************!*\
  !*** ./src/controller/stream-controller.ts ***!
  \*********************************************/

/*!**********************************************!*\
  !*** ./src/controller/latency-controller.ts ***!
  \**********************************************/

/*!***********************************************!*\
  !*** ./src/controller/timeline-controller.ts ***!
  \***********************************************/

/*!***********************************************!*\
  !*** ./src/utils/ewma-bandwidth-estimator.ts ***!
  \***********************************************/

/*!************************************************!*\
  !*** ./src/controller/cap-level-controller.ts ***!
  \************************************************/

/*!************************************************!*\
  !*** ./src/controller/id3-track-controller.ts ***!
  \************************************************/

/*!**************************************************!*\
  !*** ./node_modules/webworkify-webpack/index.js ***!
  \**************************************************/

/*!**************************************************!*\
  !*** ./src/controller/audio-track-controller.ts ***!
  \**************************************************/

/*!**************************************************!*\
  !*** ./src/controller/base-stream-controller.ts ***!
  \**************************************************/

/*!**************************************************!*\
  !*** ./src/controller/buffer-operation-queue.ts ***!
  \**************************************************/

/*!***************************************************!*\
  !*** ./src/controller/audio-stream-controller.ts ***!
  \***************************************************/

/*!****************************************************!*\
  !*** ./src/controller/base-playlist-controller.ts ***!
  \****************************************************/

/*!*****************************************************!*\
  !*** ./node_modules/url-toolkit/src/url-toolkit.js ***!
  \*****************************************************/

/*!*****************************************************!*\
  !*** ./src/controller/subtitle-track-controller.ts ***!
  \*****************************************************/

/*!******************************************************!*\
  !*** ./src/controller/subtitle-stream-controller.ts ***!
  \******************************************************/

/**
 * @license React
 * react-dom-server-legacy.browser.production.min.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/**
 * @license React
 * react-dom-server.browser.production.min.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/**
 * @license React
 * react-dom.production.min.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/**
 * @license React
 * react-is.production.min.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/**
 * @license React
 * react-jsx-runtime.production.min.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/**
 * @license React
 * react.production.min.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/**
 * @license React
 * scheduler.production.min.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/**
 * @license React
 * use-sync-external-store-shim.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/**
 * @license React
 * use-sync-external-store-shim/with-selector.production.js
 *
 * Copyright (c) Meta Platforms, Inc. and affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */

/**
 * @license qrcode.react
 * Copyright (c) Paul O'Shannessy
 * SPDX-License-Identifier: ISC
 */

/**
 * @remix-run/router v1.23.1
 *
 * Copyright (c) Remix Software Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE.md file in the root directory of this source tree.
 *
 * @license MIT
 */

/**
 * React Router DOM v6.30.2
 *
 * Copyright (c) Remix Software Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE.md file in the root directory of this source tree.
 *
 * @license MIT
 */

/**
 * React Router v6.30.2
 *
 * Copyright (c) Remix Software Inc.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE.md file in the root directory of this source tree.
 *
 * @license MIT
 */

/** @license React v16.13.1
 * react-is.production.min.js
 *
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */
