{"version":3,"sources":["plyr.js","node_modules/rangetouch/src/js/config.js","node_modules/rangetouch/src/js/utils/is.js","node_modules/rangetouch/src/js/utils/numbers.js","node_modules/rangetouch/src/js/rangetouch.js","node_modules/rangetouch/src/js/utils/events.js","node_modules/rangetouch/src/js/utils/css.js","src/js/utils/is.js","src/js/utils/events.js","src/js/utils/objects.js","src/js/utils/elements.js","src/js/utils/animation.js","src/js/utils/browser.js","src/js/support.js","src/js/utils/style.js","src/js/html5.js","src/js/utils/arrays.js","src/js/utils/strings.js","src/js/utils/i18n.js","src/js/storage.js","src/js/utils/fetch.js","src/js/utils/loadSprite.js","src/js/utils/time.js","src/js/controls.js","src/js/utils/urls.js","src/js/captions.js","src/js/config/defaults.js","src/js/config/states.js","src/js/config/types.js","src/js/console.js","src/js/fullscreen.js","src/js/utils/loadImage.js","src/js/ui.js","src/js/listeners.js","node_modules/loadjs/dist/loadjs.umd.js","src/js/utils/loadScript.js","src/js/plugins/vimeo.js","src/js/plugins/youtube.js","src/js/media.js","src/js/plugins/ads.js","src/js/plugins/previewThumbnails.js","src/js/source.js","src/js/plyr.js","src/js/utils/numbers.js"],"names":["navigator","global","factory","exports","module","define","amd","self","Plyr","this","_classCallCheck","instance","Constructor","TypeError","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","_createClass","protoProps","staticProps","prototype","_defineProperty","obj","value","_slicedToArray","arr","Array","isArray","_arrayWithHoles","_arr","_n","_d","_e","undefined","_s","_i","Symbol","iterator","next","done","push","err","_iterableToArrayLimit","_nonIterableRest","_toConsumableArray","arr2","_arrayWithoutHoles","iter","toString","call","from","_iterableToArray","_nonIterableSpread","defaults","addCSS","thumbWidth","watch","getConstructor","input","constructor","instanceOf","Boolean","isNullOrUndefined","isObject","isString","String","isNodeList","NodeList","is","nullOrUndefined","object","number","Number","isNaN","string","boolean","function","Function","array","nodeList","element","Element","event","Event","empty","keys","round","step","places","match","concat","Math","max","parseFloat","toFixed","RangeTouch","options","document","querySelector","rangeTouch","config","assign","init","enabled","style","userSelect","webKitUserSelect","touchAction","listeners","toggle","_this","method","forEach","type","set","percent","touch","changedTouches","min","getAttribute","delta","clientRect","getBoundingClientRect","width","clientX","left","disabled","preventDefault","get","dispatchEvent","trigger","arguments","targets","querySelectorAll","filter","MutationObserver","mutations","mutation","addedNodes","node","selector","includes","observe","body","childList","subtree","map","t","documentElement","isEmpty","is$1","weakMap","WeakMap","textNode","Text","keyboardEvent","KeyboardEvent","cue","window","TextTrackCue","VTTCue","track","TextTrack","kind","promise","Promise","url","URL","startsWith","hostname","e","supportsPassiveListeners","supported","addEventListener","removeEventListener","toggleListener","callback","passive","capture","events","split","eventListeners","on","off","once","_this2","onceCallback","_len","args","_key","apply","triggerEvent","bubbles","detail","CustomEvent","plyr","getDeep","path","reduce","extend","sources","source","shift","wrap","elements","wrapper","reverse","index","child","cloneNode","parent","parentNode","sibling","nextSibling","appendChild","insertBefore","setAttributes","attributes","entries","_ref","_ref3","_ref4","setAttribute","createElement","text","innerText","insertElement","removeElement","removeChild","emptyElement","childNodes","lastChild","replaceElement","newChild","oldChild","replaceChild","getAttributesFromSelector","sel","existingAttributes","existing","s","trim","className","replace","parts","charAt","class","id","toggleHidden","hidden","hide","removeAttribute","toggleClass","force","classList","contains","hasClass","matches","getElements","container","getElement","setFocus","tabFocus","focus","preventScroll","classNames","transitionEndEvent","WebkitTransition","MozTransition","OTransition","transition","find","repaint","setTimeout","offsetHeight","range","browser","isIE","documentMode","isEdge","userAgent","isWebkit","test","isIPhone","platform","isIos","defaultCodecs","audio/ogg","audio/wav","video/webm","video/mp4","video/ogg","support","audio","video","check","provider","playsinline","canPlayInline","api","ui","rangeInput","pip","webkitSetPresentationMode","pictureInPictureEnabled","disablePictureInPicture","airplay","WebKitPlaybackTargetAvailabilityEvent","mime","mediaType","isHTML5","media","canPlayType","textTracks","transitions","reducedMotion","matchMedia","validateRatio","every","reduceAspectRatio","ratio","_ratio","height","divider","getDivider","w","h","getAspectRatio","parse","embed","_this$media","videoWidth","videoHeight","setAspectRatio","isVideo","_ref2","padding","paddingBottom","isVimeo","offset","transform","videoFixedRatio","html5","getSources","getQualityOptions","player","_player$media","currentTime","paused","preload","readyState","src","play","load","quality","cancelRequests","blankVideo","debug","log","dedupe","item","indexOf","format","replaceAll","RegExp","toTitleCase","toUpperCase","substr","toLowerCase","toCamelCase","toPascalCase","slice","getHTML","innerHTML","resources","vimeo","youtube","i18n","{seektime}","seekTime","{title}","title","k","v","Storage","storage","store","localStorage","getItem","json","JSON","setItem","stringify","removeItem","fetch","responseType","resolve","reject","request","XMLHttpRequest","responseText","response","Error","status","open","send","loadSprite","hasId","exists","getElementById","update","data","insertAdjacentElement","useStorage","cached","content","then","result","catch","getHours","trunc","getMinutes","getSeconds","formatTime","time","displayHours","inverted","hours","mins","secs","controls","getIconUrl","cors","iconUrl","location","host","svg4everybody","findElements","selectors","buttons","pause","restart","rewind","fastForward","mute","settings","captions","fullscreen","progress","inputs","seek","volume","display","buffer","duration","seekTooltip","tooltip","error","warn","toggleNativeControls","createIcon","iconPath","iconPrefix","icon","createElementNS","role","focusable","use","setAttributeNS","createLabel","attr","join","createBadge","badge","menu","createButton","buttonType","label","labelPressed","iconPressed","some","c","control","button","createRange","autocomplete","aria-label","aria-valuemin","aria-valuemax","aria-valuenow","updateRangeFill","setup","createProgress","aria-hidden","suffixKey","played","suffix","createTime","attrs","bindMenuItemShortcuts","menuItem","which","stopPropagation","isRadioButton","showMenuPanel","nextElementSibling","firstElementChild","previousElementSibling","lastElementChild","focusFirstMenuItem","createMenuItem","_this3","list","_ref$badge","_ref$checked","checked","aria-checked","flex","children","bind","currentTrack","speed","updateTimeDisplay","updateVolume","setRange","muted","pressed","updateProgress","_this4","current","val","getElementsByTagName","nodeValue","setProgress","buffered","setProperty","updateSeekTooltip","_this5","tooltips","visible","show","pageX","timeUpdate","invert","invertTime","seeking","durationUpdate","pow","hasDuration","displayDuration","toggleMenuButton","setting","updateSetting","pane","panels","default","getLabel","setQualityMenu","_this6","checkMenu","getBadge","sort","a","b","sorting","setCaptionsMenu","_this7","tracks","getTracks","toggled","language","unshift","setSpeedMenu","_this8","values","popup","p","firstItem","toggleMenu","composedPath","isMenuItem","getMenuSize","tab","clone","position","opacity","scrollWidth","scrollHeight","_this9","size","restore","propertyName","setDownloadUrl","download","create","_this10","defaultAttributes","progressContainer","aria-haspopup","aria-controls","aria-expanded","inner","home","backButton","href","urls","isEmbed","inject","_this11","floor","random","seektime","addProperty","controlPressed","_this$config","labels","parseUrl","parser","buildUrlParams","params","URLSearchParams","isYouTube","insertAfter","protocol","blob","createObjectURL","languages","userLanguage","active","trackEvents","_this$captions","meta","currentTrackNode","languageExists","mode","updateCues","setLanguage","activeClass","findTrack","enableTextTrack","has","sortIsDefault","sorted","getCurrentTrack","cues","activeCues","getCueAsHTML","cueText","caption","autoplay","autopause","toggleInvert","clickToPlay","hideControls","resetOnEnd","disableContextMenu","loop","selected","keyboard","focused","fallback","iosNative","seekLabel","unmute","enableCaptions","disableCaptions","enterFullscreen","exitFullscreen","frameTitle","menuBack","normal","start","end","all","reset","advertisement","qualityBadge","2160","1440","1080","720","576","480","sdk","iframe","googleIMA","editable","embedContainer","poster","posterEnabled","ads","playing","stopped","loading","hover","isTouch","uiSupported","noTransition","previewThumbnails","thumbContainer","thumbContainerShown","imageContainer","timeContainer","scrubbingContainer","scrubbingContainerShown","publisherId","tagUrl","byline","portrait","transparent","noCookie","rel","showinfo","iv_load_policy","modestbranding","providers","types","noop","Console","console","onChange","first","last","keyCode","activeElement","shiftKey","toggleFallback","scrollPosition","x","scrollX","y","scrollY","scrollTo","overflow","viewport","head","property","hasProperty","cleanupViewport","part","Fullscreen","prefix","forceFallback","native","webkitEnterFullscreen","requestFullscreen","webkitExitFullscreen","action","cancelFullScreen","exit","enter","fullscreenElement","fullscreenEnabled","webkitFullscreenEnabled","mozFullScreenEnabled","msFullscreenEnabled","pre","loadImage","minWidth","image","Image","handler","onload","onerror","naturalWidth","addStyleHook","build","checkPlaying","ready","setTitle","setPoster","togglePoster","enable","backgroundImage","backgroundSize","toggleControls","checkLoading","clearTimeout","timers","controlsElement","recentTouchSeek","lastSeekTime","Date","now","Listeners","lastKey","focusTimer","lastKeyDown","handleKey","setTabFocus","firstTouch","code","repeat","altKey","ctrlKey","metaKey","togglePlay","increaseVolume","decreaseVolume","forward","toggleCaptions","usingNative","timeStamp","wasKeyDown","delay","setPlayerSize","measure","rect","resized","_player$fullscreen","isEnter","_setPlayerSize","firstChild","_getAspectRatio$call2","videoX","videoY","maxWidth","margin","setGutter","hasAudio","isAudio","ended","proxy","proxyEvents","_event$detail","defaultHandler","customHandlerKey","customHandler","returned","hasCustomHandler","inputEvent","currentTarget","hasAttribute","seekTo","loaded","startMove","endMove","startScrubbing","endScrubbing","webkitDirectionInvertedFromDevice","_map2","deltaX","deltaY","direction","sign","abs","globalThis","loadjs_umd","fn","createCommonjsModule","devnull","bundleIdCache","bundleResultCache","bundleCallbackQueue","publish","bundleId","pathsNotFound","q","splice","executeCallbacks","depsNotFound","success","loadFile","callbackFn","numTries","isLegacyIECss","doc","async","maxTries","numRetries","beforeCallbackFn","before","pathStripped","relList","as","onbeforeload","ev","sheet","cssText","defaultPrevented","loadjs","paths","arg1","arg2","loadFn","numWaiting","loadFiles","returnPromise","deps","bundleIds","r","subscribe","isDefined","loadScript","assurePlaybackState","hasPlayed","Vimeo","gesture","$2","thumbnail_large","pathname","Player","disableTextTrack","stop","restorePause","setVolume","setCurrentTime","setPlaybackRate","name","currentSrc","setLoop","getVideoUrl","getVideoWidth","getVideoHeight","dimensions","_dimensions","setAutopause","state","getVideoTitle","getCurrentTime","getDuration","getTextTracks","_ref$cues","strippedCues","fragment","createDocumentFragment","stripHTML","getPaused","seconds","parseInt","getHost","YT","onYouTubeIframeAPIReady","getTitle","videoId","currentId","posterSrc","playerVars","hl","disablekb","cc_load_policy","cc_lang_pref","widget_referrer","onError","message","2","5","100","101","150","onPlaybackRateChange","playbackRate","getPlaybackRate","onReady","playVideo","pauseVideo","stopVideo","getAvailablePlaybackRates","clearInterval","buffering","setInterval","getVideoLoadedFraction","lastBuffered","onStateChange","unMute","Ads","initialized","displayContainer","manager","loader","cuePoints","safetyTimer","countdownTimer","managerPromise","google","ima","destroy","remove","startSafetyTimer","clearSafetyTimer","setupIMA","setVpaidMode","ImaSdkSettings","VpaidMode","ENABLED","setLocale","setDisableCustomPlaybackForIOS10Plus","AdDisplayContainer","requestAds","AdsLoader","AdsManagerLoadedEvent","Type","ADS_MANAGER_LOADED","onAdsManagerLoaded","AdErrorEvent","AD_ERROR","onAdError","AdsRequest","adTagUrl","linearAdSlotWidth","offsetWidth","linearAdSlotHeight","nonLinearAdSlotWidth","nonLinearAdSlotHeight","forceNonLinearFullSlot","setAdWillPlayMuted","getRemainingTime","AdsRenderingSettings","restoreCustomPlaybackStateOnAdBreakComplete","enablePreloading","getAdsManager","getCuePoints","AdEvent","onAdEvent","cuePoint","seekElement","cuePercentage","ad","getAd","adData","getAdData","LOADED","pollCountdown","isLinear","STARTED","ALL_ADS_COMPLETED","loadAds","CONTENT_PAUSE_REQUESTED","pauseContent","CONTENT_RESUME_REQUESTED","resumeContent","LOG","adError","getMessage","cancel","addCuePoints","contentComplete","seekedTime","discardAdBreak","resize","ViewMode","NORMAL","initialize","zIndex","_this12","handlers","_this13","AV_PUBLISHERID","AV_CHANNELID","AV_URL","cb","AV_WIDTH","AV_HEIGHT","AV_CDIM2","PreviewThumbnails","thumbnails","lastMouseMoveTime","mouseDown","loadedImages","thumb","scrubbing","getThumbnails","render","determineContainerAutoSizing","promises","u","getThumbnail","vttDataString","processedList","thumbnail","frames","frame","line","startTime","lineSplit","_lineSplit","_lineSplit$1$split2","matchTimes","endTime","urlPrefix","substring","lastIndexOf","tempImage","naturalHeight","percentage","mousePosX","showImageAtCurrentTime","toggleThumbContainer","toggleScrubbingContainer","ceil","lastTime","setScrubbingContainerSize","setThumbContainerSizeAndPos","thumbNum","findIndex","hasThumb","qualityIndex","showingThumb","thumbFilename","thumbUrl","currentImageElement","dataset","filename","showImage","removeOldImages","loadingImage","usingSprites","previewImage","showingThumbFilename","newImage","setImageSizeAndOffset","currentImageContainer","preloadNearby","getHigherQuality","currentImage","tagName","removeDelay","deleting","oldThumbFilename","thumbnailsClone","foundOne","newThumbFilename","thumbURL","currentQualityIndex","previewImageHeight","thumbContainerHeight","clearShowing","clientHeight","sizeSpecifiedInCSS","thumbAspectRatio","setThumbContainerPos","seekbarRect","plyrRect","minVal","maxVal","right","clientWidth","previewPos","multiplier","top","currentScrubbingImageElement","currentThumbnailImageElement","insertElements","attribute","change","_sources$","_sources$$provider","crossorigin","failed","jQuery","original","getProviderByUrl","search","truthy","searchParams","tabindex","webkitShowPlaybackTargetPicker","isHidden","hiding","eventName","soft","unload","inputIsValid","fauxDuration","realDuration","Infinity","mozHasAudio","webkitAudioDecodedByteCount","audioTracks","minimumSpeed","maximumSpeed","clamp","updateStorage","prev","curr","closest","requestPictureInPicture","exitPictureInPicture","webkitPresentationMode","pictureInPictureElement","inline"],"mappings":"AAAqB,iBAAdA,WAA2B,SAAUC,EAAQC,GAC/B,iBAAZC,SAA0C,oBAAXC,OAAyBA,OAAOD,QAAUD,IAC9D,mBAAXG,QAAyBA,OAAOC,IAAMD,OAAO,OAAQH,IAC3DD,EAASA,GAAUM,MAAaC,KAAON,IAHT,CAI/BO,KAAM,WAAc,aAEpB,SAASC,EAAgBC,EAAUC,GACjC,KAAMD,aAAoBC,GACxB,MAAM,IAAIC,UAAU,qCAIxB,SAASC,EAAkBC,EAAQC,GACjC,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CACrC,IAAIE,EAAaH,EAAMC,GACvBE,EAAWC,WAAaD,EAAWC,aAAc,EACjDD,EAAWE,cAAe,EACtB,UAAWF,IAAYA,EAAWG,UAAW,GACjDC,OAAOC,eAAeT,EAAQI,EAAWM,IAAKN,IAIlD,SAASO,EAAad,EAAae,EAAYC,GAG7C,OAFID,GAAYb,EAAkBF,EAAYiB,UAAWF,GACrDC,GAAad,EAAkBF,EAAagB,GACzChB,EAGT,SAASkB,EAAgBC,EAAKN,EAAKO,GAYjC,OAXIP,KAAOM,EACTR,OAAOC,eAAeO,EAAKN,EAAK,CAC9BO,MAAOA,EACPZ,YAAY,EACZC,cAAc,EACdC,UAAU,IAGZS,EAAIN,GAAOO,EAGND,EAGT,SAASE,EAAeC,EAAKjB,GAC3B,OAeF,SAAyBiB,GACvB,GAAIC,MAAMC,QAAQF,GAAM,OAAOA,EAhBxBG,CAAgBH,IAuBzB,SAA+BA,EAAKjB,GAClC,IAAIqB,EAAO,GACPC,GAAK,EACLC,GAAK,EACLC,OAAKC,EAET,IACE,IAAK,IAAiCC,EAA7BC,EAAKV,EAAIW,OAAOC,cAAmBP,GAAMI,EAAKC,EAAGG,QAAQC,QAChEV,EAAKW,KAAKN,EAAGX,QAETf,GAAKqB,EAAKpB,SAAWD,GAH8CsB,GAAK,IAK9E,MAAOW,GACPV,GAAK,EACLC,EAAKS,EACL,QACA,IACOX,GAAsB,MAAhBK,EAAW,QAAWA,EAAW,SAC5C,QACA,GAAIJ,EAAI,MAAMC,GAIlB,OAAOH,EA9CwBa,CAAsBjB,EAAKjB,IAqD5D,WACE,MAAM,IAAIJ,UAAU,wDAtD4CuC,GAGlE,SAASC,EAAmBnB,GAC1B,OAGF,SAA4BA,GAC1B,GAAIC,MAAMC,QAAQF,GAAM,CACtB,IAAK,IAAIjB,EAAI,EAAGqC,EAAO,IAAInB,MAAMD,EAAIhB,QAASD,EAAIiB,EAAIhB,OAAQD,IAAKqC,EAAKrC,GAAKiB,EAAIjB,GAEjF,OAAOqC,GAPFC,CAAmBrB,IAe5B,SAA0BsB,GACxB,GAAIX,OAAOC,YAAYvB,OAAOiC,IAAkD,uBAAzCjC,OAAOM,UAAU4B,SAASC,KAAKF,GAAgC,OAAOrB,MAAMwB,KAAKH,GAhBtFI,CAAiB1B,IA6CrD,WACE,MAAM,IAAIrB,UAAU,mDA9CuCgD,GChD/D,IAAMC,EAAW,CACbC,QAAQ,EACRC,WAAY,GACZC,OAAO,GCCX,IAAMC,EAAiB,SAAAC,GAAK,OAAKA,MAAAA,EAAiDA,EAAMC,YAAc,MAChGC,EAAa,SAACF,EAAOC,GAAR,OAAwBE,QAAQH,GAASC,GAAeD,aAAiBC,IAEtFG,EAAoB,SAAAJ,GAAK,OAAIA,MAAAA,GAC7BK,EAAW,SAAAL,GAAK,OAAID,EAAeC,KAAW5C,QAE9CkD,EAAW,SAAAN,GAAK,OAAID,EAAeC,KAAWO,QAG9CtC,EAAU,SAAA+B,GAAK,OAAIhC,MAAMC,QAAQ+B,IACjCQ,EAAa,SAAAR,GAAK,OAAIE,EAAWF,EAAOS,WAQ9CC,EAAe,CACXC,gBAAiBP,EACjBQ,OAAQP,EACRQ,OAhBa,SAAAb,GAAK,OAAID,EAAeC,KAAWc,SAAWA,OAAOC,MAAMf,IAiBxEgB,OAAQV,EACRW,QAhBc,SAAAjB,GAAK,OAAID,EAAeC,KAAWG,SAiBjDe,SAhBe,SAAAlB,GAAK,OAAID,EAAeC,KAAWmB,UAiBlDC,MAAOnD,EACPoD,SAAUb,EACVc,QAhBc,SAAAtB,GAAK,OAAIE,EAAWF,EAAOuB,UAiBzCC,MAhBY,SAAAxB,GAAK,OAAIE,EAAWF,EAAOyB,QAiBvCC,MAhBY,SAAA1B,GAAK,OACjBI,EAAkBJ,KAChBM,EAASN,IAAU/B,EAAQ+B,IAAUQ,EAAWR,MAAYA,EAAMjD,QACnEsD,EAASL,KAAW5C,OAAOuE,KAAK3B,GAAOjD,SCFrC,SAAS6E,EAAMf,EAAQgB,GAC1B,GAAIA,EAAO,EAAG,CACV,IAAMC,GAlBJC,EAAQ,GAAAC,OAkBsBH,GAlBXE,MAAM,qCAMxBE,KAAKC,IACR,GAECH,EAAM,GAAKA,EAAM,GAAGhF,OAAS,IAEzBgF,EAAM,IAAMA,EAAM,GAAK,IARrB,EAgBP,OAAOI,WAAWtB,EAAOuB,QAAQN,IApBlC,IACGC,EAqBN,OAAOE,KAAKL,MAAMf,EAASgB,GAAQA,EHyMrC,IInNIQ,EJqNJ,WI/ME,SAAAA,EAAYzF,EAAQ0F,GAAS/F,EAAAD,KAAA+F,GACrB3B,EAAGY,QAAQ1E,GAEXN,KAAKgF,QAAU1E,EACR8D,EAAGM,OAAOpE,KAEjBN,KAAKgF,QAAUiB,SAASC,cAAc5F,IAGrC8D,EAAGY,QAAQhF,KAAKgF,UAAaZ,EAAGgB,MAAMpF,KAAKgF,QAAQmB,cAIxDnG,KAAKoG,OAAStF,OAAOuF,OAAO,GAAIhD,EAAU2C,GAE1ChG,KAAKsG,QJ4XT,OAnKArF,EAAa8E,EAAY,CAAC,CACxB/E,IAAK,OACLO,MAAO,WIjKAwE,EAAWQ,UAKZvG,KAAKoG,OAAO9C,SAEZtD,KAAKgF,QAAQwB,MAAMC,WAAa,OAChCzG,KAAKgF,QAAQwB,MAAME,iBAAmB,OACtC1G,KAAKgF,QAAQwB,MAAMG,YAAc,gBAGrC3G,KAAK4G,WAAU,GAEf5G,KAAKgF,QAAQmB,WAAanG,QJoK3B,CACDgB,IAAK,UACLO,MAAO,WIjKAwE,EAAWQ,UAIhBvG,KAAK4G,WAAU,GAEf5G,KAAKgF,QAAQmB,WAAa,QJoK3B,CACDnF,IAAK,YACLO,MAAO,SInKCsF,GAAQ,IAAAC,EAAA9G,KACR+G,EAASF,EAAS,mBAAqB,sBAG7C,CAAC,aAAc,YAAa,YAAYG,QAAQ,SAAAC,GAC5CH,EAAK9B,QAAQ+B,GAAQE,EAAM,SAAA/B,GAAK,OAAI4B,EAAKI,IAAIhC,KAAQ,OJ8K1D,CACDlE,IAAK,MACLO,MAAO,SIxKL2D,GACA,IAAKa,EAAWQ,UAAYnC,EAAGc,MAAMA,GACjC,OAAO,KAGX,IAQIiC,EAREzD,EAAQwB,EAAM5E,OACd8G,EAAQlC,EAAMmC,eAAe,GAC7BC,EAAMzB,WAAWnC,EAAM6D,aAAa,SAAW,EAC/C3B,EAAMC,WAAWnC,EAAM6D,aAAa,SAAW,IAC/ChC,EAAOM,WAAWnC,EAAM6D,aAAa,UAAY,EACjDC,EAAQ5B,EAAM0B,EAIdG,EAAa/D,EAAMgE,wBACnBnE,EAAe,IAAMkE,EAAWE,OAAU3H,KAAKoG,OAAO7C,WAAa,GAAM,IAoB/E,OAjBA4D,EAAW,IAAMM,EAAWE,OAAUP,EAAMQ,QAAUH,EAAWI,OAGnD,EACVV,EAAU,EACHA,EAAU,MACjBA,EAAU,KAIVA,EAAU,GACVA,IAAY,IAAgB,EAAVA,GAAe5D,EAC1B4D,EAAU,KACjBA,GAA4B,GAAhBA,EAAU,IAAU5D,GAI7B+D,EAAMhC,EAAMkC,GAASL,EAAU,KAAM5B,KJ4K7C,CACDvE,IAAK,MACLO,MAAO,SIvKL2D,GACKa,EAAWQ,SAAYnC,EAAGc,MAAMA,KAAUA,EAAM5E,OAAOwH,WAK5D5C,EAAM6C,iBAGN7C,EAAM5E,OAAOiB,MAAQvB,KAAKgI,IAAI9C,GCvL/B,SAAiBF,EAASiC,GAC7B,GAAKjC,GAAYiC,EAAjB,CAKA,IAAM/B,EAAQ,IAAIC,MAAM8B,GAGxBjC,EAAQiD,cAAc/C,IDiLlBgD,CAAQhD,EAAM5E,OAAuB,aAAf4E,EAAM+B,KAAsB,SAAW,aJuK7D,CAAC,CACHjG,IAAK,QAOLO,MAAO,SI5TIjB,GAAsB,IAAd0F,EAAcmC,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAJ,GACvBC,EAAU,KAYd,GAVIhE,EAAGgB,MAAM9E,IAAW8D,EAAGM,OAAOpE,GAC9B8H,EAAU1G,MAAMwB,KAAK+C,SAASoC,iBAAiBjE,EAAGM,OAAOpE,GAAUA,EAAS,wBACrE8D,EAAGY,QAAQ1E,GAClB8H,EAAU,CAAC9H,GACJ8D,EAAGW,SAASzE,GACnB8H,EAAU1G,MAAMwB,KAAK5C,GACd8D,EAAGU,MAAMxE,KAChB8H,EAAU9H,EAAOgI,OAAOlE,EAAGY,UAG3BZ,EAAGgB,MAAMgD,GACT,OAAO,KAGX,IAAMhC,EAAStF,OAAOuF,OAAO,GAAIhD,EAAU2C,GAEvC5B,EAAGM,OAAOpE,IAAW8F,EAAO5C,OAEX,IAAI+E,iBAAiB,SAAAC,GAClC9G,MAAMwB,KAAKsF,GAAWxB,QAAQ,SAAAyB,GAC1B/G,MAAMwB,KAAKuF,EAASC,YAAY1B,QAAQ,SAAA2B,GACpC,GAAKvE,EAAGY,QAAQ2D,IElEpC,WACI,OAAOjH,MAAMwB,KAAK+C,SAASoC,iBAAiBO,IAAWC,SAAS7I,OAUrDiD,KFuDuC0F,EErEzBC,EFqE+BtI,GErEzD,CAAA,IAA0BsI,EF0EK,IAAI7C,EAAW4C,EAAMvC,UAMtC0C,QAAQ7C,SAAS8C,KAAM,CAC5BC,WAAW,EACXC,SAAS,IAIjB,OAAOb,EAAQc,IAAI,SAAAC,GAAC,OAAI,IAAIpD,EAAWoD,EAAGnD,OJgU3C,CACDhF,IAAK,UACLgH,IAAK,WInXH,MAAO,iBAAkB/B,SAASmD,oBJwX/BrD,EA5LT,GO9NItC,EAAiB,SAAAC,GAAK,OAAKA,MAAAA,EAAiDA,EAAMC,YAAc,MAChGC,EAAa,SAACF,EAAOC,GAAR,OAAwBE,QAAQH,GAASC,GAAeD,aAAiBC,IACtFG,EAAoB,SAAAJ,GAAK,OAAIA,MAAAA,GAC7BK,EAAW,SAAAL,GAAK,OAAID,EAAeC,KAAW5C,QAE9CkD,EAAW,SAAAN,GAAK,OAAID,EAAeC,KAAWO,QAG9CtC,EAAU,SAAA+B,GAAK,OAAIhC,MAAMC,QAAQ+B,IAEjCQ,EAAa,SAAAR,GAAK,OAAIE,EAAWF,EAAOS,WASxCkF,EAAU,SAAA3F,GAAK,OACjBI,EAAkBJ,KAChBM,EAASN,IAAU/B,EAAQ+B,IAAUQ,EAAWR,MAAYA,EAAMjD,QACnEsD,EAASL,KAAW5C,OAAOuE,KAAK3B,GAAOjD,QA0B5C6I,EAAe,CACXjF,gBAAiBP,EACjBQ,OAAQP,EACRQ,OA/Ca,SAAAb,GAAK,OAAID,EAAeC,KAAWc,SAAWA,OAAOC,MAAMf,IAgDxEgB,OAAQV,EACRW,QA/Cc,SAAAjB,GAAK,OAAID,EAAeC,KAAWG,SAgDjDe,SA/Ce,SAAAlB,GAAK,OAAID,EAAeC,KAAWmB,UAgDlDC,MAAOnD,EACP4H,QA/Cc,SAAA7F,GAAK,OAAIE,EAAWF,EAAO8F,UAgDzCzE,SAAUb,EACVc,QA/Cc,SAAAtB,GAAK,OAAIE,EAAWF,EAAOuB,UAgDzCwE,SA/Ce,SAAA/F,GAAK,OAAID,EAAeC,KAAWgG,MAgDlDxE,MA/CY,SAAAxB,GAAK,OAAIE,EAAWF,EAAOyB,QAgDvCwE,cA/CoB,SAAAjG,GAAK,OAAIE,EAAWF,EAAOkG,gBAgD/CC,IA/CU,SAAAnG,GAAK,OAAIE,EAAWF,EAAOoG,OAAOC,eAAiBnG,EAAWF,EAAOoG,OAAOE,SAgDtFC,MA/CY,SAAAvG,GAAK,OAAIE,EAAWF,EAAOwG,aAAgBpG,EAAkBJ,IAAUM,EAASN,EAAMyG,OAgDlGC,QA/Cc,SAAA1G,GAAK,OAAIE,EAAWF,EAAO2G,UAgDzCC,IAzCU,SAAA5G,GAEV,GAAIE,EAAWF,EAAOoG,OAAOS,KACzB,OAAO,EAIX,IAAKvG,EAASN,GACV,OAAO,EAIX,IAAIgB,EAAShB,EACRA,EAAM8G,WAAW,YAAe9G,EAAM8G,WAAW,cAClD9F,EAAM,UAAAgB,OAAahC,IAGvB,IACI,OAAQ2F,EAAQ,IAAIkB,IAAI7F,GAAQ+F,UAClC,MAAOC,GACL,OAAO,IAsBXtF,MAAOiE,GC7DLsB,EAA4B,WAE9B,IAAIC,GAAY,EAChB,IACI,IAAM5E,EAAUlF,OAAOC,eAAe,GAAI,UAAW,CACjDiH,IADiD,WAG7C,OADA4C,GAAY,EACL,QAGfd,OAAOe,iBAAiB,OAAQ,KAAM7E,GACtC8D,OAAOgB,oBAAoB,OAAQ,KAAM9E,GAC3C,MAAO0E,IAIT,OAAOE,EAhBuB,GAoB3B,SAASG,EAAe/F,EAASE,EAAO8F,GAA2D,IAAAlE,EAAA9G,KAAjD6G,EAAiDsB,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GAAjC8C,IAAiC9C,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,KAAAA,UAAA,GAAjB+C,EAAiB/C,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GAEtG,GAAKnD,GAAa,qBAAsBA,IAAYZ,EAAGgB,MAAMF,IAAWd,EAAGQ,SAASoG,GAApF,CAKA,IAAMG,EAASjG,EAAMkG,MAAM,KAGvBpF,EAAUkF,EAGVP,IACA3E,EAAU,CAENiF,QAAAA,EAEAC,QAAAA,IAKRC,EAAOnE,QAAQ,SAAAC,GACPH,GAAQA,EAAKuE,gBAAkBxE,GAE/BC,EAAKuE,eAAe7I,KAAK,CAAEwC,QAAAA,EAASiC,KAAAA,EAAM+D,SAAAA,EAAUhF,QAAAA,IAGxDhB,EAAQ6B,EAAS,mBAAqB,uBAAuBI,EAAM+D,EAAUhF,MAK9E,SAASsF,EAAGtG,GAAiE,IAAxDmG,EAAwDhD,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAA/C,GAAI6C,EAA2C7C,UAAA1H,OAAA,EAAA0H,UAAA,QAAAlG,EAAjCgJ,IAAiC9C,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,KAAAA,UAAA,GAAjB+C,EAAiB/C,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GAChF4C,EAAe9H,KAAKjD,KAAMgF,EAASmG,EAAQH,GAAU,EAAMC,EAASC,GAIjE,SAASK,EAAIvG,GAAiE,IAAxDmG,EAAwDhD,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAA/C,GAAI6C,EAA2C7C,UAAA1H,OAAA,EAAA0H,UAAA,QAAAlG,EAAjCgJ,IAAiC9C,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,KAAAA,UAAA,GAAjB+C,EAAiB/C,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GACjF4C,EAAe9H,KAAKjD,KAAMgF,EAASmG,EAAQH,GAAU,EAAOC,EAASC,GAIlE,SAASM,EAAKxG,GAAiE,IAAAyG,EAAAzL,KAAxDmL,EAAwDhD,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAA/C,GAAI6C,EAA2C7C,UAAA1H,OAAA,EAAA0H,UAAA,QAAAlG,EAAjCgJ,IAAiC9C,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,KAAAA,UAAA,GAAjB+C,EAAiB/C,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GAMlF4C,EAAe9H,KAAKjD,KAAMgF,EAASmG,EALd,SAAfO,IACFH,EAAIvG,EAASmG,EAAQO,EAAcT,EAASC,GADd,IAAA,IAAAS,EAAAxD,UAAA1H,OAATmL,EAAS,IAAAlK,MAAAiK,GAAAE,EAAA,EAAAA,EAAAF,EAAAE,IAATD,EAASC,GAAA1D,UAAA0D,GAE9Bb,EAASc,MAAML,EAAMG,KAGgC,EAAMX,EAASC,GAIrE,SAASa,EAAa/G,GAAkD,IAAzCiC,EAAyCkB,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAlC,GAAI6D,EAA8B7D,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GAAb8D,EAAa9D,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAJ,GAEvE,GAAK/D,EAAGY,QAAQA,KAAYZ,EAAGgB,MAAM6B,GAArC,CAKA,IAAM/B,EAAQ,IAAIgH,YAAYjF,EAAM,CAChC+E,QAAAA,EACAC,OAAQnL,OAAOuF,OAAO,GAAI4F,EAAQ,CAC9BE,KAAMnM,SAKdgF,EAAQiD,cAAc/C,ICtFnB,SAASkH,EAAQ9H,EAAQ+H,GAC5B,OAAOA,EAAKjB,MAAM,KAAKkB,OAAO,SAAChL,EAAKN,GAAN,OAAcM,GAAOA,EAAIN,IAAMsD,GAI1D,SAASiI,IAAgC,IAAA,IAAzBjM,EAAyB6H,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAhB,GAAgBwD,EAAAxD,UAAA1H,OAAT+L,EAAS,IAAA9K,MAAAiK,EAAA,EAAAA,EAAA,EAAA,GAAAE,EAAA,EAAAA,EAAAF,EAAAE,IAATW,EAASX,EAAA,GAAA1D,UAAA0D,GAC5C,IAAKW,EAAQ/L,OACT,OAAOH,EAGX,IAAMmM,EAASD,EAAQE,QAEvB,OAAKtI,EAAGE,OAAOmI,IAIf3L,OAAOuE,KAAKoH,GAAQzF,QAAQ,SAAAhG,GACpBoD,EAAGE,OAAOmI,EAAOzL,KACZF,OAAOuE,KAAK/E,GAAQuI,SAAS7H,IAC9BF,OAAOuF,OAAO/F,EAAde,EAAA,GAAyBL,EAAM,KAGnCuL,EAAOjM,EAAOU,GAAMyL,EAAOzL,KAE3BF,OAAOuF,OAAO/F,EAAde,EAAA,GAAyBL,EAAMyL,EAAOzL,OAIvCuL,EAAMT,WAAN,EAAA,CAAOxL,GAAPoF,OAAkB8G,KAfdlM,EChBR,SAASqM,EAAKC,EAAUC,GAE3B,IAAMzE,EAAUwE,EAASnM,OAASmM,EAAW,CAACA,GAI9ClL,MAAMwB,KAAKkF,GACN0E,UACA9F,QAAQ,SAAChC,EAAS+H,GACf,IAAMC,EAAQD,EAAQ,EAAIF,EAAQI,WAAU,GAAQJ,EAE9CK,EAASlI,EAAQmI,WACjBC,EAAUpI,EAAQqI,YAIxBL,EAAMM,YAAYtI,GAKdoI,EACAF,EAAOK,aAAaP,EAAOI,GAE3BF,EAAOI,YAAYN,KAM5B,SAASQ,EAAcxI,EAASyI,GAC9BrJ,EAAGY,QAAQA,KAAYZ,EAAGgB,MAAMqI,IAMrC3M,OAAO4M,QAAQD,GACVnF,OAAO,SAAAqF,GAAA,IAAIpM,EAAJC,EAAAmM,EAAA,GAAA,GAAA,OAAgBvJ,EAAGC,gBAAgB9C,KAC1CyF,QAAQ,SAAA4G,GAAA,IAAAC,EAAArM,EAAAoM,EAAA,GAAE5M,EAAF6M,EAAA,GAAOtM,EAAPsM,EAAA,GAAA,OAAkB7I,EAAQ8I,aAAa9M,EAAKO,KAItD,SAASwM,EAAc9G,EAAMwG,EAAYO,GAE5C,IAAMhJ,EAAUiB,SAAS8H,cAAc9G,GAavC,OAVI7C,EAAGE,OAAOmJ,IACVD,EAAcxI,EAASyI,GAIvBrJ,EAAGM,OAAOsJ,KACVhJ,EAAQiJ,UAAYD,GAIjBhJ,EAaJ,SAASkJ,EAAcjH,EAAMiG,EAAQO,EAAYO,GAC/C5J,EAAGY,QAAQkI,IAIhBA,EAAOI,YAAYS,EAAc9G,EAAMwG,EAAYO,IAIhD,SAASG,EAAcnJ,GACtBZ,EAAGW,SAASC,IAAYZ,EAAGU,MAAME,GACjCtD,MAAMwB,KAAK8B,GAASgC,QAAQmH,GAI3B/J,EAAGY,QAAQA,IAAaZ,EAAGY,QAAQA,EAAQmI,aAIhDnI,EAAQmI,WAAWiB,YAAYpJ,GAI5B,SAASqJ,EAAarJ,GACzB,GAAKZ,EAAGY,QAAQA,GAMhB,IAPkC,IAK5BvE,EAAWuE,EAAQsJ,WAAnB7N,OAECA,EAAS,GACZuE,EAAQoJ,YAAYpJ,EAAQuJ,WAC5B9N,GAAU,EAKX,SAAS+N,EAAeC,EAAUC,GACrC,OAAKtK,EAAGY,QAAQ0J,IAActK,EAAGY,QAAQ0J,EAASvB,aAAgB/I,EAAGY,QAAQyJ,IAI7EC,EAASvB,WAAWwB,aAAaF,EAAUC,GAEpCD,GALI,KASR,SAASG,EAA0BC,EAAKC,GAM3C,IAAK1K,EAAGM,OAAOmK,IAAQzK,EAAGgB,MAAMyJ,GAC5B,MAAO,GAGX,IAAMpB,EAAa,GACbsB,EAAWxC,EAAO,GAAIuC,GAwC5B,OAtCAD,EAAIzD,MAAM,KAAKpE,QAAQ,SAAAgI,GAEnB,IAAMpG,EAAWoG,EAAEC,OACbC,EAAYtG,EAASuG,QAAQ,IAAK,IAGlCC,EAFWxG,EAASuG,QAAQ,SAAU,IAErB/D,MAAM,KACtBpK,EAPiBQ,EAOV4N,EAPU,GAAA,GAQlB7N,EAAQ6N,EAAM3O,OAAS,EAAI2O,EAAM,GAAGD,QAAQ,QAAS,IAAM,GAIjE,OAFcvG,EAASyG,OAAO,IAG1B,IAAK,IAEGjL,EAAGM,OAAOqK,EAASO,OACnB7B,EAAW6B,MAAX,GAAA5J,OAAsBqJ,EAASO,MAA/B,KAAA5J,OAAwCwJ,GAExCzB,EAAW6B,MAAQJ,EAEvB,MAEJ,IAAK,IAEDzB,EAAW8B,GAAK3G,EAASuG,QAAQ,IAAK,IACtC,MAEJ,IAAK,IAED1B,EAAWzM,GAAOO,KASvBgL,EAAOwC,EAAUtB,GAIrB,SAAS+B,EAAaxK,EAASyK,GAClC,GAAKrL,EAAGY,QAAQA,GAAhB,CAIA,IAAI0K,EAAOD,EAENrL,EAAGO,QAAQ+K,KACZA,GAAQ1K,EAAQyK,QAGhBC,EACA1K,EAAQ8I,aAAa,SAAU,IAE/B9I,EAAQ2K,gBAAgB,WAKzB,SAASC,EAAY5K,EAASkK,EAAWW,GAC5C,GAAIzL,EAAGW,SAASC,GACZ,OAAOtD,MAAMwB,KAAK8B,GAASkE,IAAI,SAAAwB,GAAC,OAAIkF,EAAYlF,EAAGwE,EAAWW,KAGlE,GAAIzL,EAAGY,QAAQA,GAAU,CACrB,IAAI+B,EAAS,SAMb,YALqB,IAAV8I,IACP9I,EAAS8I,EAAQ,MAAQ,UAG7B7K,EAAQ8K,UAAU/I,GAAQmI,GACnBlK,EAAQ8K,UAAUC,SAASb,GAGtC,OAAO,EAIJ,SAASc,EAAShL,EAASkK,GAC9B,OAAO9K,EAAGY,QAAQA,IAAYA,EAAQ8K,UAAUC,SAASb,GAItD,SAASe,EAAQjL,EAAS4D,GAc7B,OAXA,WACI,OAAOlH,MAAMwB,KAAK+C,SAASoC,iBAAiBO,IAAWC,SAAS7I,OAUtDiD,KAAK+B,EAAS4D,GAIzB,SAASsH,EAAYtH,GACxB,OAAO5I,KAAK4M,SAASuD,UAAU9H,iBAAiBO,GAI7C,SAASwH,EAAWxH,GACvB,OAAO5I,KAAK4M,SAASuD,UAAUjK,cAAc0C,GAqC1C,SAASyH,IAA2C,IAAlCrL,EAAkCmD,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAxB,KAAMmI,EAAkBnI,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GAClD/D,EAAGY,QAAQA,KAKhBA,EAAQuL,MAAM,CAAEC,eAAe,IAG3BF,GACAV,EAAY5K,EAAShF,KAAKoG,OAAOqK,WAAWH,WClS7C,IACGtL,EAEAmG,EAOAlE,EAVGyJ,GACH1L,EAAUiB,SAAS8H,cAAc,QAEjC5C,EAAS,CACXwF,iBAAkB,sBAClBC,cAAe,gBACfC,YAAa,gCACbC,WAAY,iBAGV7J,EAAOnG,OAAOuE,KAAK8F,GAAQ4F,KAAK,SAAA7L,GAAK,YAA6BjD,IAAzB+C,EAAQwB,MAAMtB,OAEtDd,EAAGM,OAAOuC,IAAQkE,EAAOlE,IAI7B,SAAS+J,EAAQhM,GACpBiM,WAAW,WACP,IACIzB,EAAaxK,GAAS,GACtBA,EAAQkM,aACR1B,EAAaxK,GAAS,GACxB,MAAO0F,MAGV,GC3BP,IC+FcyG,GD/FRC,GAAU,CACZC,OAAgCpL,SAASqL,aACzCC,OAAQzH,OAAOvK,UAAUiS,UAAU3I,SAAS,QAC5C4I,SAAU,qBAAsBxL,SAASmD,gBAAgB5C,QAAU,OAAOkL,KAAKnS,UAAUiS,WACzFG,SAAU,kBAAkBD,KAAKnS,UAAUqS,UAC3CC,MAAO,uBAAuBH,KAAKnS,UAAUqS,WCA3CE,GAAgB,CAClBC,YAAa,SACbC,YAAa,IACbC,aAAc,cACdC,YAAa,yBACbC,YAAa,UAIXC,GAAU,CAEZC,MAAO,gBAAiBpM,SAAS8H,cAAc,SAC/CuE,MAAO,gBAAiBrM,SAAS8H,cAAc,SAI/CwE,MAPY,SAONtL,EAAMuL,EAAUC,GAClB,IAAMC,EAAgBtB,GAAQO,UAAYc,GAAeL,GAAQK,YAC3DE,EAAMP,GAAQnL,IAAsB,UAAbuL,EAG7B,MAAO,CACHG,IAAAA,EACAC,GAJOD,GAAOP,GAAQS,aAAwB,UAAT5L,IAAqBmK,GAAQO,UAAYe,KAUtFI,MACQ1B,GAAQO,WAMRvN,EAAGQ,SAASmJ,EAAc,SAASgF,8BAMnC9M,SAAS+M,yBAA4BjF,EAAc,SAASkF,0BASpEC,QAAS9O,EAAGQ,SAASkF,OAAOqJ,uCAI5BV,YAAa,gBAAiBxM,SAAS8H,cAAc,SAKrDqF,KAnDY,SAmDP1P,GACD,GAAIU,EAAGgB,MAAM1B,GACT,OAAO,EAFH,IAKD2P,EALC7R,EAKYkC,EAAM0H,MAAM,KALxB,GAAA,GAMJnE,EAAOvD,EAGX,IAAK1D,KAAKsT,SAAWD,IAAcrT,KAAKiH,KACpC,OAAO,EAIPnG,OAAOuE,KAAKyM,IAAejJ,SAAS5B,KACpCA,GAAI,aAAAvB,OAAiBoM,GAAcpO,GAA/B,MAGR,IACI,OAAOG,QAAQoD,GAAQjH,KAAKuT,MAAMC,YAAYvM,GAAMkI,QAAQ,KAAM,KACpE,MAAOzE,GACL,OAAO,IAKf+I,WAAY,eAAgBxN,SAAS8H,cAAc,SAGnD8E,YACU1B,GAAQlL,SAAS8H,cAAc,SACrCoD,GAAMlK,KAAO,QACS,UAAfkK,GAAMlK,MAKjBG,MAAO,iBAAkBnB,SAASmD,gBAGlCsK,aAAoC,IAAvBhD,EAIbiD,cAAe,eAAgB7J,QAAUA,OAAO8J,WAAW,4BAA4B3D,SC5GpF,SAAS4D,GAAcnQ,GAC1B,SAAKU,EAAGU,MAAMpB,IAAYU,EAAGM,OAAOhB,IAAWA,EAAMmF,SAAS,QAIhDzE,EAAGU,MAAMpB,GAASA,EAAQA,EAAM0H,MAAM,MAEvClC,IAAI1E,QAAQsP,MAAM1P,EAAGG,QAG/B,SAASwP,GAAkBC,GAC9B,IAAK5P,EAAGU,MAAMkP,KAAWA,EAAMF,MAAM1P,EAAGG,QACpC,OAAO,KAF0B,IAAA0P,EAAAzS,EAKbwS,EALa,GAK9BrM,EAL8BsM,EAAA,GAKvBC,EALuBD,EAAA,GAO/BE,EADa,SAAbC,EAAcC,EAAGC,GAAJ,OAAiB,IAANA,EAAUD,EAAID,EAAWE,EAAGD,EAAIC,GAC9CF,CAAWzM,EAAOuM,GAElC,MAAO,CAACvM,EAAQwM,EAASD,EAASC,GAG/B,SAASI,GAAe7Q,GAC3B,IAAM8Q,EAAQ,SAAAR,GACV,OAAKH,GAAcG,GAIZA,EAAM5I,MAAM,KAAKlC,IAAI1E,QAHjB,MAOXwP,EAAQQ,EAAM9Q,GAalB,GAVc,OAAVsQ,IACAA,EAAQQ,EAAMxU,KAAKoG,OAAO4N,QAIhB,OAAVA,IAAmB5P,EAAGgB,MAAMpF,KAAKyU,QAAUrQ,EAAGU,MAAM9E,KAAKyU,MAAMT,SAC5DA,EAAUhU,KAAKyU,MAAfT,OAIO,OAAVA,GAAkBhU,KAAKsT,QAAS,CAAA,IAAAoB,EACI1U,KAAKuT,MACzCS,EAAQD,GAAkB,CAFMW,EACxBC,WADwBD,EACZE,cAIxB,OAAOZ,EAIJ,SAASa,GAAenR,GAC3B,IAAK1D,KAAK8U,QACN,MAAO,GAGX,IAAMd,EAAQO,GAAetR,KAAKjD,KAAM0D,GALNqR,EAAAvT,EAMnB4C,EAAGU,MAAMkP,GAASA,EAAQ,CAAC,EAAG,GANX,GAO5BgB,EAAW,IAPiBD,EAAA,GAAAA,EAAA,GAYlC,GAHA/U,KAAK4M,SAASC,QAAQrG,MAAMyO,cAA5B,GAAAvP,OAA+CsP,EAA/C,KAGIhV,KAAKkV,SAAWlV,KAAK4K,UAAUgI,GAAI,CACnC,IACMuC,GADS,IACUH,GAAV,IACfhV,KAAKuT,MAAM/M,MAAM4O,UAAjB,eAAA1P,OAA4CyP,EAA5C,WACOnV,KAAKsT,SACZtT,KAAK4M,SAASC,QAAQiD,UAAUjJ,OAAO7G,KAAKoG,OAAOqK,WAAW4E,gBAA2B,OAAVrB,GAGnF,MAAO,CAAEgB,QAAAA,EAAShB,MAAAA,GCtEtB,IAAMsB,GAAQ,CACVC,WADU,WACG,IAAAzO,EAAA9G,KACT,OAAKA,KAAKsT,QAIM5R,MAAMwB,KAAKlD,KAAKuT,MAAMlL,iBAAiB,WAGxCC,OAAO,SAAAmE,GAClB,IAAMxF,EAAOwF,EAAOlF,aAAa,QAEjC,QAAInD,EAAGgB,MAAM6B,IAINmL,GAAQgB,KAAKnQ,KAAK6D,EAAMG,KAbxB,IAkBfuO,kBArBU,WAuBN,OAAOF,GAAMC,WACRtS,KAAKjD,MACLkJ,IAAI,SAAAuD,GAAM,OAAIjI,OAAOiI,EAAOlF,aAAa,WACzCe,OAAOzE,UAGhB0I,OA7BU,WA8BN,GAAKvM,KAAKsT,QAAV,CAIA,IAAMmC,EAASzV,KAGf6U,GAAe5R,KAAKwS,GAGpB3U,OAAOC,eAAe0U,EAAOlC,MAAO,UAAW,CAC3CvL,IAD2C,WAGvC,IACMyE,EADU6I,GAAMC,WAAWtS,KAAKwS,GACf1E,KAAK,SAAA/B,GAAC,OAAIA,EAAEzH,aAAa,SAAWkO,EAAOhJ,SAGlE,OAAOA,GAAUjI,OAAOiI,EAAOlF,aAAa,UAEhDL,IAT2C,SASvCxD,GAEA,IAEM+I,EAFU6I,GAAMC,WAAWtS,KAAKwS,GAEf1E,KAAK,SAAA/B,GAAC,OAAIxK,OAAOwK,EAAEzH,aAAa,WAAa7D,IAGpE,GAAK+I,EAAL,CAPO,IAAAiJ,EAY8CD,EAAOlC,MAApDoC,EAZDD,EAYCC,YAAaC,EAZdF,EAYcE,OAAQC,EAZtBH,EAYsBG,QAASC,EAZ/BJ,EAY+BI,WAGtCL,EAAOlC,MAAMwC,IAAMtJ,EAAOlF,aAAa,QAGvB,SAAZsO,GAAsBC,KAEtBL,EAAOjK,KAAK,iBAAkB,WAC1BiK,EAAOE,YAAcA,EAGhBC,GACDH,EAAOO,SAKfP,EAAOlC,MAAM0C,QAIjBlK,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,iBAAiB,EAAO,CAC5D2C,QAASxS,UAQzByS,eA5FU,WA6FDnW,KAAKsT,UAKVnF,EAAcmH,GAAMC,WAAWtS,KAAKjD,OAKpCA,KAAKuT,MAAMzF,aAAa,MAAO9N,KAAKoG,OAAOgQ,YAK3CpW,KAAKuT,MAAM0C,OAGXjW,KAAKqW,MAAMC,IAAI,iCClHhB,SAASC,GAAOzR,GACnB,OAAKV,EAAGU,MAAMA,GAIPA,EAAMwD,OAAO,SAACkO,EAAMzJ,GAAP,OAAiBjI,EAAM2R,QAAQD,KAAUzJ,IAHlDjI,ECGR,SAAS4R,GAAOhT,GAAgB,IAAA,IAAAiI,EAAAxD,UAAA1H,OAANmL,EAAM,IAAAlK,MAAAiK,EAAA,EAAAA,EAAA,EAAA,GAAAE,EAAA,EAAAA,EAAAF,EAAAE,IAAND,EAAMC,EAAA,GAAA1D,UAAA0D,GACnC,OAAIzH,EAAGgB,MAAM1B,GACFA,EAGJA,EAAMV,WAAWmM,QAAQ,WAAY,SAAC1J,EAAOjF,GAAR,OAAcoL,EAAKpL,GAAGwC,aAa/D,SAAS2T,KAAgD,IAArCjT,EAAqCyE,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAA7B,GAAI4I,EAAyB5I,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAlB,GAAIgH,EAAchH,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAJ,GACxD,OAAOzE,EAAMyL,QACT,IAAIyH,OAAO7F,EAAK/N,WAAWmM,QAAQ,6BAA6B,QAAS,KACzEA,EAAQnM,YAKT,SAAS6T,KACZ,OADoC1O,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAJ,IACnBnF,WAAWmM,QAAQ,SAAU,SAAAnB,GAAI,OAAIA,EAAKqB,OAAO,GAAGyH,cAAgB9I,EAAK+I,OAAO,GAAGC,gBAqB7F,SAASC,KAAwB,IAChCvS,GADgCyD,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAJ,IACbnF,WAMnB,OAHA0B,EArBG,WAAkC,IACjCA,GADiCyD,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAJ,IACdnF,WAYnB,OATA0B,EAASiS,GAAWjS,EAAQ,IAAK,KAGjCA,EAASiS,GAAWjS,EAAQ,IAAK,KAM1BiS,GAHPjS,EAASmS,GAAYnS,GAGK,IAAK,IAQtBwS,CAAaxS,IAGR2K,OAAO,GAAG2H,cAAgBtS,EAAOyS,MAAM,GAalD,SAASC,GAAQpS,GACpB,IAAM6H,EAAU5G,SAAS8H,cAAc,OAEvC,OADAlB,EAAQS,YAAYtI,GACb6H,EAAQwK,UC1EnB,IAAMC,GAAY,CACdxE,IAAK,MACLI,QAAS,UACToC,MAAO,QACPiC,MAAO,QACPC,QAAS,WAGPC,GAAO,WACkB,IAAvBzW,EAAuBmH,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAjB,GAAI/B,EAAa+B,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAJ,GACnB,GAAI/D,EAAGgB,MAAMpE,IAAQoD,EAAGgB,MAAMgB,GAC1B,MAAO,GAGX,IAAI1B,EAAS0H,EAAQhG,EAAOqR,KAAMzW,GAElC,GAAIoD,EAAGgB,MAAMV,GACT,OAAI5D,OAAOuE,KAAKiS,IAAWzO,SAAS7H,GACzBsW,GAAUtW,GAGd,GAGX,IAAMmO,EAAU,CACZuI,aAActR,EAAOuR,SACrBC,UAAWxR,EAAOyR,OAOtB,OAJA/W,OAAO4M,QAAQyB,GAASnI,QAAQ,SAAA2G,GAAY,IAAAoH,EAAAvT,EAAAmM,EAAA,GAAVmK,EAAU/C,EAAA,GAAPgD,EAAOhD,EAAA,GACxCrQ,EAASiS,GAAWjS,EAAQoT,EAAGC,KAG5BrT,GCnCTsT,GnBu8CJ,WmBt8CE,SAAAA,EAAYvC,GAAQxV,EAAAD,KAAAgY,GAChBhY,KAAKuG,QAAUkP,EAAOrP,OAAO6R,QAAQ1R,QACrCvG,KAAKgB,IAAMyU,EAAOrP,OAAO6R,QAAQjX,InB0gDrC,OA7DAC,EAAa+W,EAAS,CAAC,CACrBhX,IAAK,MACLO,MAAO,SmBx7CLP,GACA,IAAKgX,EAAQpN,YAAc5K,KAAKuG,QAC5B,OAAO,KAGX,IAAM2R,EAAQpO,OAAOqO,aAAaC,QAAQpY,KAAKgB,KAE/C,GAAIoD,EAAGgB,MAAM8S,GACT,OAAO,KAGX,IAAMG,EAAOC,KAAK9D,MAAM0D,GAExB,OAAO9T,EAAGM,OAAO1D,IAAQA,EAAIP,OAAS4X,EAAKrX,GAAOqX,InBy7CnD,CACDrX,IAAK,MACLO,MAAO,SmBx7CL+C,GAEA,GAAK0T,EAAQpN,WAAc5K,KAAKuG,SAK3BnC,EAAGE,OAAOA,GAAf,CAKA,IAAI2T,EAAUjY,KAAKgI,MAGf5D,EAAGgB,MAAM6S,KACTA,EAAU,IAId1L,EAAO0L,EAAS3T,GAGhBwF,OAAOqO,aAAaI,QAAQvY,KAAKgB,IAAKsX,KAAKE,UAAUP,QnBw7CrD,CAAC,CACHjX,IAAK,YACLgH,IAAK,WmBn/CH,IACI,KAAM,iBAAkB8B,QACpB,OAAO,EAUX,OAHAA,OAAOqO,aAAaI,QAJP,UAAA,WAKbzO,OAAOqO,aAAaM,WALP,YAON,EACT,MAAO/N,GACL,OAAO,OnBu/CRsN,EAtET,GoBz8Ca,SAASU,GAAMpO,GAA4B,IAAvBqO,EAAuBxQ,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAR,OAC9C,OAAO,IAAIkC,QAAQ,SAACuO,EAASC,GACzB,IACI,IAAMC,EAAU,IAAIC,eAGpB,KAAM,oBAAqBD,GACvB,OAGJA,EAAQjO,iBAAiB,OAAQ,WAC7B,GAAqB,SAAjB8N,EACA,IACIC,EAAQN,KAAK9D,MAAMsE,EAAQE,eAC7B,MAAOtO,GACLkO,EAAQE,EAAQE,mBAGpBJ,EAAQE,EAAQG,YAIxBH,EAAQjO,iBAAiB,QAAS,WAC9B,MAAM,IAAIqO,MAAMJ,EAAQK,UAG5BL,EAAQM,KAAK,MAAO9O,GAAK,GAGzBwO,EAAQH,aAAeA,EAEvBG,EAAQO,OACV,MAAO3O,GACLmO,EAAOnO,MC7BJ,SAAS4O,GAAWhP,EAAKiF,GACpC,GAAKnL,EAAGM,OAAO4F,GAAf,CAIA,IACMiP,EAAQnV,EAAGM,OAAO6K,GAElBiK,EAAS,WAAA,OAAsC,OAAhCvT,SAASwT,eAAelK,IAEvCmK,EAAS,SAACvJ,EAAWwJ,GAEvBxJ,EAAUkH,UAAYsC,EAGlBJ,GAASC,KAKbvT,SAAS8C,KAAK6Q,sBAAsB,aAAczJ,IAItD,IAAKoJ,IAAUC,IAAU,CACrB,IAAMK,EAAa7B,GAAQpN,UAErBuF,EAAYlK,SAAS8H,cAAc,OAQzC,GAPAoC,EAAUrC,aAAa,SAAU,IAE7ByL,GACApJ,EAAUrC,aAAa,KAAMyB,GAI7BsK,EAAY,CACZ,IAAMC,EAAShQ,OAAOqO,aAAaC,QAApB,GAAA1S,OA/BR,QA+BQ,KAAAA,OAAyC6J,IAGxD,GAFsB,OAAXuK,EAEG,CACV,IAAMH,EAAOrB,KAAK9D,MAAMsF,GACxBJ,EAAOvJ,EAAWwJ,EAAKI,UAK/BrB,GAAMpO,GACD0P,KAAK,SAAAC,GACE7V,EAAGgB,MAAM6U,KAITJ,GACA/P,OAAOqO,aAAaI,QAApB,GAAA7S,OAhDD,QAgDC,KAAAA,OACiB6J,GACb+I,KAAKE,UAAU,CACXuB,QAASE,KAKrBP,EAAOvJ,EAAW8J,MAErBC,MAAM,gBCjEZ,IAAMC,GAAW,SAAA5Y,GAAK,OAAIoE,KAAKyU,MAAO7Y,EAAQ,GAAK,GAAM,GAAI,KACvD8Y,GAAa,SAAA9Y,GAAK,OAAIoE,KAAKyU,MAAO7Y,EAAQ,GAAM,GAAI,KACpD+Y,GAAa,SAAA/Y,GAAK,OAAIoE,KAAKyU,MAAM7Y,EAAQ,GAAI,KAGnD,SAASgZ,KAA6D,IAAlDC,EAAkDrS,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAA3C,EAAGsS,EAAwCtS,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GAAlBuS,EAAkBvS,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GAEzE,IAAK/D,EAAGG,OAAOiW,GACX,OAAOD,GAAW,KAAME,EAAcC,GAI1C,IAAMhE,EAAS,SAAAnV,GAAK,MAAI,IAAAmE,OAAInE,GAAQ4V,OAAO,IAEvCwD,EAAQR,GAASK,GACfI,EAAOP,GAAWG,GAClBK,EAAOP,GAAWE,GAUxB,OANIG,EADAF,GAAgBE,EAAQ,EACnB,GAAAjV,OAAMiV,EAAN,KAEG,GAIZ,GAAAjV,OAAUgV,GAAYF,EAAO,EAAI,IAAM,IAAvC9U,OAA4CiV,GAA5CjV,OAAoDgR,EAAOkE,GAA3D,KAAAlV,OAAoEgR,EAAOmE,ICG/E,IAAMC,GAAW,CAEbC,WAFa,WAGT,IACMC,EADM,IAAIzQ,IAAIvK,KAAKoG,OAAO6U,QAASnR,OAAOoR,UAC/BC,OAASrR,OAAOoR,SAASC,MAAS/J,GAAQC,OAASvH,OAAOsR,cAE3E,MAAO,CACH9Q,IAAKtK,KAAKoG,OAAO6U,QACjBD,KAAAA,IAKRK,aAba,WAcT,IAyCI,OAxCArb,KAAK4M,SAASkO,SAAW1K,EAAWnN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUR,SAASjO,SAG9E7M,KAAK4M,SAAS2O,QAAU,CACpBvF,KAAM9F,EAAYjN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUC,QAAQvF,MAC3DwF,MAAOpL,EAAWnN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUC,QAAQC,OAC3DC,QAASrL,EAAWnN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUC,QAAQE,SAC7DC,OAAQtL,EAAWnN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUC,QAAQG,QAC5DC,YAAavL,EAAWnN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUC,QAAQI,aACjEC,KAAMxL,EAAWnN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUC,QAAQK,MAC1D9I,IAAK1C,EAAWnN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUC,QAAQzI,KACzDI,QAAS9C,EAAWnN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUC,QAAQrI,SAC7D2I,SAAUzL,EAAWnN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUC,QAAQM,UAC9DC,SAAU1L,EAAWnN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUC,QAAQO,UAC9DC,WAAY3L,EAAWnN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUC,QAAQQ,aAIpE/b,KAAK4M,SAASoP,SAAW5L,EAAWnN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUU,UAGrEhc,KAAK4M,SAASqP,OAAS,CACnBC,KAAM9L,EAAWnN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUW,OAAOC,MACzDC,OAAQ/L,EAAWnN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUW,OAAOE,SAI/Dnc,KAAK4M,SAASwP,QAAU,CACpBC,OAAQjM,EAAWnN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUc,QAAQC,QAC5D1G,YAAavF,EAAWnN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUc,QAAQzG,aACjE2G,SAAUlM,EAAWnN,KAAKjD,KAAMA,KAAKoG,OAAOkV,UAAUc,QAAQE,WAI9DlY,EAAGY,QAAQhF,KAAK4M,SAASoP,YACzBhc,KAAK4M,SAASwP,QAAQG,YAAcvc,KAAK4M,SAASoP,SAAS9V,cAAvB,IAAAR,OAC5B1F,KAAKoG,OAAOqK,WAAW+L,YAI5B,EACT,MAAOC,GAOL,OALAzc,KAAKqW,MAAMqG,KAAK,kEAAmED,GAGnFzc,KAAK2c,sBAAqB,IAEnB,IAKfC,WApEa,SAoEF3V,EAAMwG,GACb,IACMwN,EAAUH,GAASC,WAAW9X,KAAKjD,MACnC6c,EAAQ,GAAAnX,OAAOuV,EAAQD,KAAqB,GAAdC,EAAQ3Q,IAA9B,KAAA5E,OAA0C1F,KAAKoG,OAAO0W,YAE9DC,EAAO9W,SAAS+W,gBAJJ,6BAI+B,OACjDxP,EACIuP,EACAxQ,EAAOkB,EAAY,CACfwP,KAAM,eACNC,UAAW,WAKnB,IAAMC,EAAMlX,SAAS+W,gBAdH,6BAc8B,OAC1C3Q,EAAI,GAAA3G,OAAMmX,EAAN,KAAAnX,OAAkBuB,GAe5B,MAVI,SAAUkW,GACVA,EAAIC,eAAe,+BAAgC,OAAQ/Q,GAI/D8Q,EAAIC,eAAe,+BAAgC,aAAc/Q,GAGjE0Q,EAAKzP,YAAY6P,GAEVJ,GAIXM,YAvGa,SAuGDrc,GAAgB,IAAXsc,EAAWnV,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAJ,GACd6F,EAAOyJ,GAASzW,EAAKhB,KAAKoG,QAMhC,OAAO2H,EAAc,OAJFjN,OAAOuF,OAAO,GAAIiX,EAAM,CACvChO,MAAO,CAACgO,EAAKhO,MAAOtP,KAAKoG,OAAOqK,WAAWhB,QAAQnH,OAAOzE,SAAS0Z,KAAK,OAGnCvP,IAI7CwP,YAlHa,SAkHDxP,GACR,GAAI5J,EAAGgB,MAAM4I,GACT,OAAO,KAGX,IAAMyP,EAAQ1P,EAAc,OAAQ,CAChCuB,MAAOtP,KAAKoG,OAAOqK,WAAWiN,KAAKnc,QAavC,OAVAkc,EAAMnQ,YACFS,EACI,OACA,CACIuB,MAAOtP,KAAKoG,OAAOqK,WAAWiN,KAAKD,OAEvCzP,IAIDyP,GAIXE,aAzIa,SAyIAC,EAAYN,GAAM,IAAAxW,EAAA9G,KACrByN,EAAalB,EAAO,GAAI+Q,GAC1BrW,EAAOgQ,GAAY2G,GAEjBrd,EAAQ,CACVyE,QAAS,SACT6B,QAAQ,EACRgX,MAAO,KACPd,KAAM,KACNe,aAAc,KACdC,YAAa,MA2BjB,OAxBA,CAAC,UAAW,OAAQ,SAAS/W,QAAQ,SAAAhG,GAC7BF,OAAOuE,KAAKoI,GAAY5E,SAAS7H,KACjCT,EAAMS,GAAOyM,EAAWzM,UACjByM,EAAWzM,MAKJ,WAAlBT,EAAMyE,SAAyBlE,OAAOuE,KAAKoI,GAAY5E,SAAS,UAChE4E,EAAWxG,KAAO,UAIlBnG,OAAOuE,KAAKoI,GAAY5E,SAAS,SAC5B4E,EAAW6B,MAAMlE,MAAM,KAAK4S,KAAK,SAAAC,GAAC,OAAIA,IAAMnX,EAAKV,OAAOqK,WAAWyN,WACpE3R,EAAOkB,EAAY,CACf6B,MAAK,GAAA5J,OAAK+H,EAAW6B,MAAhB,KAAA5J,OAAyB1F,KAAKoG,OAAOqK,WAAWyN,WAI7DzQ,EAAW6B,MAAQtP,KAAKoG,OAAOqK,WAAWyN,QAItCN,GACJ,IAAK,OACDrd,EAAMsG,QAAS,EACftG,EAAMsd,MAAQ,OACdtd,EAAMud,aAAe,QACrBvd,EAAMwc,KAAO,OACbxc,EAAMwd,YAAc,QACpB,MAEJ,IAAK,OACDxd,EAAMsG,QAAS,EACftG,EAAMsd,MAAQ,OACdtd,EAAMud,aAAe,SACrBvd,EAAMwc,KAAO,SACbxc,EAAMwd,YAAc,QACpB,MAEJ,IAAK,WACDxd,EAAMsG,QAAS,EACftG,EAAMsd,MAAQ,iBACdtd,EAAMud,aAAe,kBACrBvd,EAAMwc,KAAO,eACbxc,EAAMwd,YAAc,cACpB,MAEJ,IAAK,aACDxd,EAAMsG,QAAS,EACftG,EAAMsd,MAAQ,kBACdtd,EAAMud,aAAe,iBACrBvd,EAAMwc,KAAO,mBACbxc,EAAMwd,YAAc,kBACpB,MAEJ,IAAK,aACDtQ,EAAW6B,OAAX,IAAA5J,OAAwB1F,KAAKoG,OAAOqK,WAAWyN,QAA/C,cACAjX,EAAO,OACP1G,EAAMsd,MAAQ,OACdtd,EAAMwc,KAAO,OACb,MAEJ,QACQ3Y,EAAGgB,MAAM7E,EAAMsd,SACftd,EAAMsd,MAAQ5W,GAEd7C,EAAGgB,MAAM7E,EAAMwc,QACfxc,EAAMwc,KAAOa,GAIzB,IAAMO,EAASpQ,EAAcxN,EAAMyE,SA+CnC,OA5CIzE,EAAMsG,QAENsX,EAAO7Q,YACHwN,GAAS8B,WAAW3Z,KAAKjD,KAAMO,EAAMwd,YAAa,CAC9CzO,MAAO,mBAGf6O,EAAO7Q,YACHwN,GAAS8B,WAAW3Z,KAAKjD,KAAMO,EAAMwc,KAAM,CACvCzN,MAAO,uBAKf6O,EAAO7Q,YACHwN,GAASuC,YAAYpa,KAAKjD,KAAMO,EAAMud,aAAc,CAChDxO,MAAO,oBAGf6O,EAAO7Q,YACHwN,GAASuC,YAAYpa,KAAKjD,KAAMO,EAAMsd,MAAO,CACzCvO,MAAO,0BAIf6O,EAAO7Q,YAAYwN,GAAS8B,WAAW3Z,KAAKjD,KAAMO,EAAMwc,OACxDoB,EAAO7Q,YAAYwN,GAASuC,YAAYpa,KAAKjD,KAAMO,EAAMsd,SAI7DtR,EAAOkB,EAAYmB,EAA0B5O,KAAKoG,OAAOkV,UAAUC,QAAQtU,GAAOwG,IAClFD,EAAc2Q,EAAQ1Q,GAGT,SAATxG,GACK7C,EAAGU,MAAM9E,KAAK4M,SAAS2O,QAAQtU,MAChCjH,KAAK4M,SAAS2O,QAAQtU,GAAQ,IAGlCjH,KAAK4M,SAAS2O,QAAQtU,GAAMzE,KAAK2b,IAEjCne,KAAK4M,SAAS2O,QAAQtU,GAAQkX,EAG3BA,GAIXC,YAlRa,SAkRDnX,EAAMwG,GAEd,IAAM/J,EAAQqK,EACV,QACAxB,EACIqC,EAA0B5O,KAAKoG,OAAOkV,UAAUW,OAAOhV,IACvD,CACIA,KAAM,QACNK,IAAK,EACL1B,IAAK,IACLL,KAAM,IACNhE,MAAO,EACP8c,aAAc,MAEdpB,KAAM,SACNqB,aAAc7G,GAASxQ,EAAMjH,KAAKoG,QAClCmY,gBAAiB,EACjBC,gBAAiB,IACjBC,gBAAiB,GAErBhR,IAYR,OARAzN,KAAK4M,SAASqP,OAAOhV,GAAQvD,EAG7BoX,GAAS4D,gBAAgBzb,KAAKjD,KAAM0D,GAGpCqC,EAAW4Y,MAAMjb,GAEVA,GAIXkb,eAtTa,SAsTE3X,EAAMwG,GACjB,IAAMuO,EAAWjO,EACb,WACAxB,EACIqC,EAA0B5O,KAAKoG,OAAOkV,UAAUc,QAAQnV,IACxD,CACIK,IAAK,EACL1B,IAAK,IACLrE,MAAO,EACP0b,KAAM,cACN4B,eAAe,GAEnBpR,IAKR,GAAa,WAATxG,EAAmB,CACnB+U,EAAS1O,YAAYS,EAAc,OAAQ,KAAM,MAEjD,IAAM+Q,EAAY,CACdC,OAAQ,SACR1C,OAAQ,YACVpV,GACI+X,EAASF,EAAYrH,GAASqH,EAAW9e,KAAKoG,QAAU,GAE9D4V,EAAS/N,UAAT,KAAAvI,OAA0BsZ,EAAOhI,eAKrC,OAFAhX,KAAK4M,SAASwP,QAAQnV,GAAQ+U,EAEvBA,GAIXiD,WAzVa,SAyVFhY,EAAMiY,GACb,IAAMzR,EAAamB,EAA0B5O,KAAKoG,OAAOkV,UAAUc,QAAQnV,GAAOiY,GAE5E/O,EAAYpC,EACd,MACAxB,EAAOkB,EAAY,CACf6B,MAAO,GAAA5J,OAAG+H,EAAW6B,MAAQ7B,EAAW6B,MAAQ,GAAzC,KAAA5J,OAA+C1F,KAAKoG,OAAOqK,WAAW2L,QAAQ5B,KAA9E,KAAsFvL,OAC7FqP,aAAc7G,GAASxQ,EAAMjH,KAAKoG,UAEtC,SAMJ,OAFApG,KAAK4M,SAASwP,QAAQnV,GAAQkJ,EAEvBA,GAMXgP,sBA9Wa,SA8WSC,EAAUnY,GAAM,IAAAwE,EAAAzL,KAElCsL,EACI8T,EACA,gBACA,SAAAla,GAEI,GAAK,CAAC,GAAI,GAAI,GAAI,IAAI2D,SAAS3D,EAAMma,SAKrCna,EAAM6C,iBACN7C,EAAMoa,kBAGa,YAAfpa,EAAM+B,MAAV,CAIA,IAMQ3G,EANFif,EAAgBtP,EAAQmP,EAAU,0BAGxC,IAAKG,GAAiB,CAAC,GAAI,IAAI1W,SAAS3D,EAAMma,OAC1CvE,GAAS0E,cAAcvc,KAAKwI,EAAMxE,GAAM,QAIpB,KAAhB/B,EAAMma,QACc,KAAhBna,EAAMma,OAAiBE,GAAiC,KAAhBra,EAAMma,OAC9C/e,EAAS8e,EAASK,mBAEbrb,EAAGY,QAAQ1E,KACZA,EAAS8e,EAASjS,WAAWuS,qBAGjCpf,EAAS8e,EAASO,uBAEbvb,EAAGY,QAAQ1E,KACZA,EAAS8e,EAASjS,WAAWyS,mBAIrCvP,EAASpN,KAAKwI,EAAMnL,GAAQ,OAIxC,GAKJgL,EAAG8T,EAAU,QAAS,SAAAla,GACE,KAAhBA,EAAMma,OAIVvE,GAAS+E,mBAAmB5c,KAAKwI,EAAM,MAAM,MAKrDqU,eA5aa,SAAAnS,GA4a+D,IAAAoS,EAAA/f,KAA3DuB,EAA2DoM,EAA3DpM,MAAOye,EAAoDrS,EAApDqS,KAAM/Y,EAA8C0G,EAA9C1G,KAAM4Q,EAAwClK,EAAxCkK,MAAwCoI,EAAAtS,EAAjC8P,MAAAA,OAAiC,IAAAwC,EAAzB,KAAyBA,EAAAC,EAAAvS,EAAnBwS,QAAAA,OAAmB,IAAAD,GAAAA,EAClEzS,EAAamB,EAA0B5O,KAAKoG,OAAOkV,UAAUW,OAAOhV,IAEpEmY,EAAWrR,EACb,SACAxB,EAAOkB,EAAY,CACfxG,KAAM,SACNgW,KAAM,gBACN3N,MAAO,GAAA5J,OAAG1F,KAAKoG,OAAOqK,WAAWyN,QAA1B,KAAAxY,OAAqC+H,EAAW6B,MAAQ7B,EAAW6B,MAAQ,IAAKL,OACvFmR,eAAgBD,EAChB5e,MAAAA,KAIF8e,EAAOtS,EAAc,QAG3BsS,EAAKhJ,UAAYQ,EAEbzT,EAAGY,QAAQyY,IACX4C,EAAK/S,YAAYmQ,GAGrB2B,EAAS9R,YAAY+S,GAGrBvf,OAAOC,eAAeqe,EAAU,UAAW,CACvCze,YAAY,EACZqH,IAFuC,WAGnC,MAAiD,SAA1CoX,EAAS7X,aAAa,iBAEjCL,IALuC,SAKnCqL,GAEIA,GACA7Q,MAAMwB,KAAKkc,EAASjS,WAAWmT,UAC1BhY,OAAO,SAAAK,GAAI,OAAIsH,EAAQtH,EAAM,4BAC7B3B,QAAQ,SAAA2B,GAAI,OAAIA,EAAKmF,aAAa,eAAgB,WAG3DsR,EAAStR,aAAa,eAAgByE,EAAQ,OAAS,YAI/DvS,KAAK4G,UAAU2Z,KACXnB,EACA,cACA,SAAAla,GACI,IAAId,EAAGuF,cAAczE,IAA0B,KAAhBA,EAAMma,MAArC,CASA,OALAna,EAAM6C,iBACN7C,EAAMoa,kBAENF,EAASe,SAAU,EAEXlZ,GACJ,IAAK,WACD8Y,EAAKS,aAAehc,OAAOjD,GAC3B,MAEJ,IAAK,UACDwe,EAAK7J,QAAU3U,EACf,MAEJ,IAAK,QACDwe,EAAKU,MAAQ5a,WAAWtE,GAOhCuZ,GAAS0E,cAAcvc,KAAK8c,EAAM,OAAQ3b,EAAGuF,cAAczE,MAE/D+B,GACA,GAGJ6T,GAASqE,sBAAsBlc,KAAKjD,KAAMof,EAAUnY,GAEpD+Y,EAAK1S,YAAY8R,IAIrB7E,WAjgBa,WAigB0B,IAA5BC,EAA4BrS,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAArB,EAAGuS,EAAkBvS,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GAEnC,OAAK/D,EAAGG,OAAOiW,GAORD,GAAWC,EAFCL,GAASna,KAAKsc,UAAY,EAET5B,GANzBF,GAUfkG,kBA9gBa,WA8gBgD,IAA3CpgB,EAA2C6H,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAlC,KAAMqS,EAA4BrS,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAArB,EAAGuS,EAAkBvS,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GAEpD/D,EAAGY,QAAQ1E,IAAY8D,EAAGG,OAAOiW,KAKtCla,EAAO2N,UAAY6M,GAASP,WAAWC,EAAME,KAIjDiG,aAzhBa,WA0hBJ3gB,KAAK4K,UAAUgI,KAKhBxO,EAAGY,QAAQhF,KAAK4M,SAASqP,OAAOE,SAChCrB,GAAS8F,SAAS3d,KAAKjD,KAAMA,KAAK4M,SAASqP,OAAOE,OAAQnc,KAAK6gB,MAAQ,EAAI7gB,KAAKmc,QAIhF/X,EAAGY,QAAQhF,KAAK4M,SAAS2O,QAAQK,QACjC5b,KAAK4M,SAAS2O,QAAQK,KAAKkF,QAAU9gB,KAAK6gB,OAAyB,IAAhB7gB,KAAKmc,UAKhEyE,SA1iBa,SA0iBJtgB,GAAmB,IAAXiB,EAAW4G,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAH,EAChB/D,EAAGY,QAAQ1E,KAKhBA,EAAOiB,MAAQA,EAGfuZ,GAAS4D,gBAAgBzb,KAAKjD,KAAMM,KAIxCygB,eAvjBa,SAujBE7b,GAAO,IAAA8b,EAAAhhB,KAClB,GAAKA,KAAK4K,UAAUgI,IAAOxO,EAAGc,MAAMA,GAApC,CAIA,IN3kBsB+b,EAASrb,EM2kB3BrE,EAAQ,EAkBZ,GAAI2D,EACA,OAAQA,EAAM+B,MAEV,IAAK,aACL,IAAK,UACL,IAAK,SNlmBSga,EMmmBYjhB,KAAK2V,YNnmBR/P,EMmmBqB5F,KAAKsc,SAA7C/a,ENlmBA,IAAZ0f,GAAyB,IAARrb,GAAapB,OAAOC,MAAMwc,IAAYzc,OAAOC,MAAMmB,GAC7D,GAGFqb,EAAUrb,EAAO,KAAKE,QAAQ,GMimBJ,eAAfZ,EAAM+B,MACN6T,GAAS8F,SAAS3d,KAAKjD,KAAMA,KAAK4M,SAASqP,OAAOC,KAAM3a,GAG5D,MAGJ,IAAK,UACL,IAAK,YAjCO,SAACjB,EAAQoD,GACzB,IAAMwd,EAAM9c,EAAGG,OAAOb,GAASA,EAAQ,EACjCsY,EAAW5X,EAAGY,QAAQ1E,GAAUA,EAAS0gB,EAAKpU,SAASwP,QAAQC,OAGrE,GAAIjY,EAAGY,QAAQgX,GAAW,CACtBA,EAASza,MAAQ2f,EAGjB,IAAMrD,EAAQ7B,EAASmF,qBAAqB,QAAQ,GAChD/c,EAAGY,QAAQ6Y,KACXA,EAAMvP,WAAW,GAAG8S,UAAYF,IAuBhCG,CAAYrhB,KAAK4M,SAASwP,QAAQC,OAAwB,IAAhBrc,KAAKshB,aAW/D5C,gBA3mBa,SA2mBGpe,GAEZ,IAAM6Q,EAAQ/M,EAAGc,MAAM5E,GAAUA,EAAOA,OAASA,EAGjD,GAAK8D,EAAGY,QAAQmM,IAAyC,UAA/BA,EAAM5J,aAAa,QAA7C,CAKA,GAAI0I,EAAQkB,EAAOnR,KAAKoG,OAAOkV,UAAUW,OAAOC,MAAO,CACnD/K,EAAMrD,aAAa,gBAAiB9N,KAAK2V,aACzC,IAAMA,EAAcmF,GAASP,WAAWva,KAAK2V,aACvC2G,EAAWxB,GAASP,WAAWva,KAAKsc,UACpC5F,EAASe,GAAS,YAAazX,KAAKoG,QAC1C+K,EAAMrD,aACF,iBACA4I,EAAOvH,QAAQ,gBAAiBwG,GAAaxG,QAAQ,aAAcmN,SAEpE,GAAIrM,EAAQkB,EAAOnR,KAAKoG,OAAOkV,UAAUW,OAAOE,QAAS,CAC5D,IAAMhV,EAAwB,IAAdgK,EAAM5P,MACtB4P,EAAMrD,aAAa,gBAAiB3G,GACpCgK,EAAMrD,aAAa,iBAAnB,GAAApI,OAAwCyB,EAAQrB,QAAQ,GAAxD,WAEAqL,EAAMrD,aAAa,gBAAiBqD,EAAM5P,OAIzC6P,GAAQK,UAKbN,EAAM3K,MAAM+a,YAAY,UAAxB,GAAA7b,OAAuCyL,EAAM5P,MAAQ4P,EAAMvL,IAAO,IAAlE,QAIJ4b,kBAhpBa,SAgpBKtc,GAAO,IAAAuc,EAAAzhB,KAErB,GACKA,KAAKoG,OAAOsb,SAASxF,MACrB9X,EAAGY,QAAQhF,KAAK4M,SAASqP,OAAOC,OAChC9X,EAAGY,QAAQhF,KAAK4M,SAASwP,QAAQG,cAChB,IAAlBvc,KAAKsc,SAJT,CASA,IAAMqF,EAAO,GAAAjc,OAAM1F,KAAKoG,OAAOqK,WAAW+L,QAA7B,aACP3V,EAAS,SAAA+a,GAAI,OAAIhS,EAAY6R,EAAK7U,SAASwP,QAAQG,YAAaoF,EAASC,IAG/E,GAAI5hB,KAAKoH,MACLP,GAAO,OADX,CAMA,IAAIM,EAAU,EACRM,EAAazH,KAAK4M,SAASoP,SAAStU,wBAE1C,GAAItD,EAAGc,MAAMA,GACTiC,EAAW,IAAMM,EAAWE,OAAUzC,EAAM2c,MAAQpa,EAAWI,UAC5D,CAAA,IAAImI,EAAShQ,KAAK4M,SAASwP,QAAQG,YAAaoF,GAGnD,OAFAxa,EAAUtB,WAAW7F,KAAK4M,SAASwP,QAAQG,YAAY/V,MAAMqB,KAAM,IAMnEV,EAAU,EACVA,EAAU,EACHA,EAAU,MACjBA,EAAU,KAId2T,GAAS4F,kBAAkBzd,KAAKjD,KAAMA,KAAK4M,SAASwP,QAAQG,YAAcvc,KAAKsc,SAAW,IAAOnV,GAGjGnH,KAAK4M,SAASwP,QAAQG,YAAY/V,MAAMqB,KAAxC,GAAAnC,OAAkDyB,EAAlD,KAII/C,EAAGc,MAAMA,IAAU,CAAC,aAAc,cAAc2D,SAAS3D,EAAM+B,OAC/DJ,EAAsB,eAAf3B,EAAM+B,SAKrB6a,WArsBa,SAqsBF5c,GAEP,IAAM6c,GAAU3d,EAAGY,QAAQhF,KAAK4M,SAASwP,QAAQE,WAAatc,KAAKoG,OAAO4b,WAG1ElH,GAAS4F,kBAAkBzd,KACvBjD,KACAA,KAAK4M,SAASwP,QAAQzG,YACtBoM,EAAS/hB,KAAKsc,SAAWtc,KAAK2V,YAAc3V,KAAK2V,YACjDoM,GAIA7c,GAAwB,eAAfA,EAAM+B,MAAyBjH,KAAKuT,MAAM0O,SAKvDnH,GAASiG,eAAe9d,KAAKjD,KAAMkF,IAIvCgd,eA3tBa,WA6tBT,GAAKliB,KAAK4K,UAAUgI,KAAQ5S,KAAKoG,OAAO4b,aAAchiB,KAAK2V,aAA3D,CAQA,GAAI3V,KAAKsc,UAAL3W,KAAAwc,IAAiB,EAAK,IAGtB,OAFA3S,EAAaxP,KAAK4M,SAASwP,QAAQzG,aAAa,QAChDnG,EAAaxP,KAAK4M,SAASoP,UAAU,GAKrC5X,EAAGY,QAAQhF,KAAK4M,SAASqP,OAAOC,OAChClc,KAAK4M,SAASqP,OAAOC,KAAKpO,aAAa,gBAAiB9N,KAAKsc,UAIjE,IAAM8F,EAAche,EAAGY,QAAQhF,KAAK4M,SAASwP,QAAQE,WAGhD8F,GAAepiB,KAAKoG,OAAOic,iBAAmBriB,KAAK4V,QACpDkF,GAAS4F,kBAAkBzd,KAAKjD,KAAMA,KAAK4M,SAASwP,QAAQzG,YAAa3V,KAAKsc,UAI9E8F,GACAtH,GAAS4F,kBAAkBzd,KAAKjD,KAAMA,KAAK4M,SAASwP,QAAQE,SAAUtc,KAAKsc,UAI/ExB,GAAS0G,kBAAkBve,KAAKjD,QAIpCsiB,iBAlwBa,SAkwBIC,EAAS1b,GACtB2I,EAAaxP,KAAK4M,SAASiP,SAASN,QAAQgH,IAAW1b,IAI3D2b,cAvwBa,SAuwBCD,EAASpS,EAAWzM,GAC9B,IAAM+e,EAAOziB,KAAK4M,SAASiP,SAAS6G,OAAOH,GACvChhB,EAAQ,KACRye,EAAO7P,EAEX,GAAgB,aAAZoS,EACAhhB,EAAQvB,KAAKwgB,iBACV,CASH,GARAjf,EAAS6C,EAAGgB,MAAM1B,GAAiB1D,KAAKuiB,GAAb7e,EAGvBU,EAAGgB,MAAM7D,KACTA,EAAQvB,KAAKoG,OAAOmc,GAASI,UAI5Bve,EAAGgB,MAAMpF,KAAKgG,QAAQuc,MAAcviB,KAAKgG,QAAQuc,GAAS1Z,SAAStH,GAEpE,YADAvB,KAAKqW,MAAMqG,KAAX,yBAAAhX,OAAyCnE,EAAzC,UAAAmE,OAAuD6c,IAK3D,IAAKviB,KAAKoG,OAAOmc,GAASvc,QAAQ6C,SAAStH,GAEvC,YADAvB,KAAKqW,MAAMqG,KAAX,sBAAAhX,OAAsCnE,EAAtC,UAAAmE,OAAoD6c,IAW5D,GALKne,EAAGY,QAAQgb,KACZA,EAAOyC,GAAQA,EAAKvc,cAAc,kBAIjC9B,EAAGY,QAAQgb,GAAhB,CAKchgB,KAAK4M,SAASiP,SAASN,QAAQgH,GAASrc,cAAxC,IAAAR,OAA0D1F,KAAKoG,OAAOqK,WAAWiN,KAAKnc,QAC9F8V,UAAYyD,GAAS8H,SAAS3f,KAAKjD,KAAMuiB,EAAShhB,GAGxD,IAAMjB,EAAS0f,GAAQA,EAAK9Z,cAAL,WAAAR,OAA8BnE,EAA9B,OAEnB6C,EAAGY,QAAQ1E,KACXA,EAAO6f,SAAU,KAKzByC,SA1zBa,SA0zBJL,EAAShhB,GACd,OAAQghB,GACJ,IAAK,QACD,OAAiB,IAAVhhB,EAAckW,GAAS,SAAUzX,KAAKoG,QAAtC,GAAAV,OAAmDnE,EAAnD,WAEX,IAAK,UACD,GAAI6C,EAAGG,OAAOhD,GAAQ,CAClB,IAAMsc,EAAQpG,GAAA,gBAAA/R,OAAyBnE,GAASvB,KAAKoG,QAErD,OAAKyX,EAAMpd,OAIJod,EAHH,GAAAnY,OAAUnE,EAAV,KAMR,OAAOsV,GAAYtV,GAEvB,IAAK,WACD,OAAOua,GAAS8G,SAAS3f,KAAKjD,MAElC,QACI,OAAO,OAKnB6iB,eAr1Ba,SAq1BE7c,GAAS,IAAA8c,EAAA9iB,KAEpB,GAAKoE,EAAGY,QAAQhF,KAAK4M,SAASiP,SAAS6G,OAAOxM,SAA9C,CAIA,IACM8J,EAAOhgB,KAAK4M,SAASiP,SAAS6G,OAAOxM,QAAQhQ,cAAc,iBAG7D9B,EAAGU,MAAMkB,KACThG,KAAKgG,QAAQkQ,QAAUK,GAAOvQ,GAASsC,OAAO,SAAA4N,GAAO,OAAI4M,EAAK1c,OAAO8P,QAAQlQ,QAAQ6C,SAASqN,MAIlG,IAAMrP,GAAUzC,EAAGgB,MAAMpF,KAAKgG,QAAQkQ,UAAYlW,KAAKgG,QAAQkQ,QAAQzV,OAAS,EAUhF,GATAqa,GAASwH,iBAAiBrf,KAAKjD,KAVlB,UAU8B6G,GAG3CwH,EAAa2R,GAGblF,GAASiI,UAAU9f,KAAKjD,MAGnB6G,EAAL,CAKA,IAAMmc,EAAW,SAAA9M,GACb,IAAM2H,EAAQpG,GAAA,gBAAA/R,OAAyBwQ,GAAW4M,EAAK1c,QAEvD,OAAKyX,EAAMpd,OAIJqa,GAAS0C,YAAYva,KAAK6f,EAAMjF,GAH5B,MAOf7d,KAAKgG,QAAQkQ,QACR+M,KAAK,SAACC,EAAGC,GACN,IAAMC,EAAUN,EAAK1c,OAAO8P,QAAQlQ,QACpC,OAAOod,EAAQ3M,QAAQyM,GAAKE,EAAQ3M,QAAQ0M,GAAK,GAAK,IAEzDnc,QAAQ,SAAAkP,GACL4E,GAASgF,eAAe7c,KAAK6f,EAAM,CAC/BvhB,MAAO2U,EACP8J,KAAAA,EACA/Y,KA5CC,UA6CD4Q,MAAOiD,GAAS8H,SAAS3f,KAAK6f,EAAM,UAAW5M,GAC/CuH,MAAOuF,EAAS9M,OAI5B4E,GAAS0H,cAAcvf,KAAKjD,KAlDf,UAkD2BggB,MAmD5CqD,gBAh8Ba,WAg8BK,IAAAC,EAAAtjB,KAEd,GAAKoE,EAAGY,QAAQhF,KAAK4M,SAASiP,SAAS6G,OAAO5G,UAA9C,CAKA,IACMkE,EAAOhgB,KAAK4M,SAASiP,SAAS6G,OAAO5G,SAAS5V,cAAc,iBAC5Dqd,EAASzH,GAAS0H,UAAUvgB,KAAKjD,MACjC6G,EAAShD,QAAQ0f,EAAO9iB,QAY9B,GATAqa,GAASwH,iBAAiBrf,KAAKjD,KANlB,WAM8B6G,GAG3CwH,EAAa2R,GAGblF,GAASiI,UAAU9f,KAAKjD,MAGnB6G,EAAL,CAKA,IAAMb,EAAUud,EAAOra,IAAI,SAACe,EAAO1I,GAAR,MAAmB,CAC1CA,MAAAA,EACA4e,QAASmD,EAAKxH,SAAS2H,SAAWH,EAAK9C,eAAiBjf,EACxDsW,MAAOiE,GAAS8G,SAAS3f,KAAKqgB,EAAMrZ,GACpCwT,MAAOxT,EAAMyZ,UAAY5I,GAAS0C,YAAYva,KAAKqgB,EAAMrZ,EAAMyZ,SAAS5M,eACxEkJ,KAAAA,EACA/Y,KAAM,cAIVjB,EAAQ2d,QAAQ,CACZpiB,OAAQ,EACR4e,SAAUngB,KAAK8b,SAAS2H,QACxB5L,MAAOJ,GAAS,WAAYzX,KAAKoG,QACjC4Z,KAAAA,EACA/Y,KAAM,aAIVjB,EAAQgB,QAAQ8T,GAASgF,eAAeS,KAAKvgB,OAE7C8a,GAAS0H,cAAcvf,KAAKjD,KAzCf,WAyC2BggB,MAI5C4D,aAp/Ba,SAo/BA5d,GAAS,IAAA6d,EAAA7jB,KAElB,GAAKoE,EAAGY,QAAQhF,KAAK4M,SAASiP,SAAS6G,OAAOjC,OAA9C,CAIA,IACMT,EAAOhgB,KAAK4M,SAASiP,SAAS6G,OAAOjC,MAAMva,cAAc,iBAG3D9B,EAAGU,MAAMkB,GACThG,KAAKgG,QAAQya,MAAQza,GACdhG,KAAKsT,SAAWtT,KAAKkV,WAC5BlV,KAAKgG,QAAQya,MAAQ,CAAC,GAAK,IAAM,EAAG,KAAM,IAAK,KAAM,IAIzDzgB,KAAKgG,QAAQya,MAAQzgB,KAAKgG,QAAQya,MAAMnY,OAAO,SAAAmY,GAAK,OAAIoD,EAAKzd,OAAOqa,MAAMza,QAAQ6C,SAAS4X,KAG3F,IAAM5Z,GAAUzC,EAAGgB,MAAMpF,KAAKgG,QAAQya,QAAUzgB,KAAKgG,QAAQya,MAAMhgB,OAAS,EAC5Eqa,GAASwH,iBAAiBrf,KAAKjD,KAflB,QAe8B6G,GAG3CwH,EAAa2R,GAGblF,GAASiI,UAAU9f,KAAKjD,MAGnB6G,IAKL7G,KAAKgG,QAAQya,MAAMzZ,QAAQ,SAAAyZ,GACvB3F,GAASgF,eAAe7c,KAAK4gB,EAAM,CAC/BtiB,MAAOkf,EACPT,KAAAA,EACA/Y,KAjCK,QAkCL4Q,MAAOiD,GAAS8H,SAAS3f,KAAK4gB,EAAM,QAASpD,OAIrD3F,GAAS0H,cAAcvf,KAAKjD,KAtCf,QAsC2BggB,MAI5C+C,UApiCa,WAoiCD,IACAxH,EAAYvb,KAAK4M,SAASiP,SAA1BN,QACFoG,GAAWvd,EAAGgB,MAAMmW,IAAYza,OAAOgjB,OAAOvI,GAASyC,KAAK,SAAAG,GAAM,OAAKA,EAAO1O,SAEpFD,EAAaxP,KAAK4M,SAASiP,SAAS6B,MAAOiE,IAI/C9B,mBA5iCa,SA4iCM4C,GAAwB,IAAlBnS,EAAkBnI,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GACvC,IAAInI,KAAK4M,SAASiP,SAASkI,MAAMtU,OAAjC,CAIA,IAAInP,EAASmiB,EAERre,EAAGY,QAAQ1E,KACZA,EAASQ,OAAOgjB,OAAO9jB,KAAK4M,SAASiP,SAAS6G,QAAQ3R,KAAK,SAAAiT,GAAC,OAAKA,EAAEvU,UAGvE,IAAMwU,EAAY3jB,EAAO4F,cAAc,sBAEvCmK,EAASpN,KAAKjD,KAAMikB,EAAW3T,KAInC4T,WA7jCa,SA6jCFxgB,GAAO,IACNqgB,EAAU/jB,KAAK4M,SAASiP,SAAxBkI,MACF5F,EAASne,KAAK4M,SAAS2O,QAAQM,SAGrC,GAAKzX,EAAGY,QAAQ+e,IAAW3f,EAAGY,QAAQmZ,GAAtC,CALc,IAUN1O,EAAWsU,EAAXtU,OACJmS,EAAOnS,EAEX,GAAIrL,EAAGO,QAAQjB,GACXke,EAAOle,OACJ,GAAIU,EAAGuF,cAAcjG,IAA0B,KAAhBA,EAAM2b,MACxCuC,GAAO,OACJ,GAAIxd,EAAGc,MAAMxB,GAAQ,CAGxB,IAAMpD,EAAS8D,EAAGQ,SAASlB,EAAMygB,cAAgBzgB,EAAMygB,eAAe,GAAKzgB,EAAMpD,OAC3E8jB,EAAaL,EAAMhU,SAASzP,GAKlC,GAAI8jB,IAAgBA,GAAc1gB,EAAMpD,SAAW6d,GAAUyD,EACzD,OAKRzD,EAAOrQ,aAAa,gBAAiB8T,GAGrCpS,EAAauU,GAAQnC,GAGrBhS,EAAY5P,KAAK4M,SAASuD,UAAWnQ,KAAKoG,OAAOqK,WAAWiN,KAAKtE,KAAMwI,GAGnEA,GAAQxd,EAAGuF,cAAcjG,GACzBoX,GAAS+E,mBAAmB5c,KAAKjD,KAAM,MAAM,GACrC4hB,GAASnS,GAEjBY,EAASpN,KAAKjD,KAAMme,EAAQ/Z,EAAGuF,cAAcjG,MAKrD2gB,YA/mCa,SA+mCDC,GACR,IAAMC,EAAQD,EAAIrX,WAAU,GAC5BsX,EAAM/d,MAAMge,SAAW,WACvBD,EAAM/d,MAAMie,QAAU,EACtBF,EAAM5U,gBAAgB,UAGtB2U,EAAInX,WAAWG,YAAYiX,GAG3B,IAAM5c,EAAQ4c,EAAMG,YACdxQ,EAASqQ,EAAMI,aAKrB,OAFAxW,EAAcoW,GAEP,CACH5c,MAAAA,EACAuM,OAAAA,IAKRsL,cAtoCa,WAsoC8B,IAAAoF,EAAA5kB,KAA7BiH,EAA6BkB,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAtB,GAAImI,EAAkBnI,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GACjC7H,EAASN,KAAK4M,SAASuD,UAAUjK,cAAxB,kBAAAR,OAAwD1F,KAAKuP,GAA7D,KAAA7J,OAAmEuB,IAGlF,GAAK7C,EAAGY,QAAQ1E,GAAhB,CAKA,IAAM6P,EAAY7P,EAAO6M,WACnB8T,EAAUvf,MAAMwB,KAAKiN,EAAUmQ,UAAUvP,KAAK,SAAApI,GAAI,OAAKA,EAAK8G,SAGlE,GAAI2C,GAAQsB,cAAgBtB,GAAQuB,cAAe,CAE/CxD,EAAU3J,MAAMmB,MAAhB,GAAAjC,OAA2Bub,EAAQyD,YAAnC,MACAvU,EAAU3J,MAAM0N,OAAhB,GAAAxO,OAA4Bub,EAAQ0D,aAApC,MAGA,IAAME,EAAO/J,GAASuJ,YAAYphB,KAAKjD,KAAMM,GAkB7CgL,EAAGrI,KAAKjD,KAAMmQ,EAAWO,EAfT,SAAVoU,EAAU5f,GAERA,EAAM5E,SAAW6P,GAAc,CAAC,QAAS,UAAUtH,SAAS3D,EAAM6f,gBAKtE5U,EAAU3J,MAAMmB,MAAQ,GACxBwI,EAAU3J,MAAM0N,OAAS,GAGzB3I,EAAItI,KAAK2hB,EAAMzU,EAAWO,EAAoBoU,MAOlD3U,EAAU3J,MAAMmB,MAAhB,GAAAjC,OAA2Bmf,EAAKld,MAAhC,MACAwI,EAAU3J,MAAM0N,OAAhB,GAAAxO,OAA4Bmf,EAAK3Q,OAAjC,MAIJ1E,EAAayR,GAAS,GAGtBzR,EAAalP,GAAQ,GAGrBwa,GAAS+E,mBAAmB5c,KAAKjD,KAAMM,EAAQgQ,KAInD0U,eA7rCa,WA8rCT,IAAM7G,EAASne,KAAK4M,SAAS2O,QAAQ0J,SAGhC7gB,EAAGY,QAAQmZ,IAKhBA,EAAOrQ,aAAa,OAAQ9N,KAAKilB,WAIrCC,OA1sCa,SA0sCNvL,GAAM,IAAAwL,EAAAnlB,KAELmf,EAQArE,GARAqE,sBACAxB,EAOA7C,GAPA6C,aACAiB,EAMA9D,GANA8D,eACAR,EAKAtD,GALAsD,YACAa,EAIAnE,GAJAmE,WACA4D,EAGA/H,GAHA+H,eACAe,EAEA9I,GAFA8I,aACApE,EACA1E,GADA0E,cAEJxf,KAAK4M,SAASkO,SAAW,KAGrB9a,KAAKoG,OAAO0U,SAASjS,SAAS,eAC9B7I,KAAK4M,SAASuD,UAAU7C,YAAYqQ,EAAa1a,KAAKjD,KAAM,eAIhE,IAAMmQ,EAAYpC,EAAc,MAAOa,EAA0B5O,KAAKoG,OAAOkV,UAAUR,SAASjO,UAChG7M,KAAK4M,SAASkO,SAAW3K,EAGzB,IAAMiV,EAAoB,CAAE9V,MAAO,wBAmUnC,OAhUAiH,GAAOvW,KAAKoG,OAAO0U,UAAU9T,QAAQ,SAAAkX,GAsBjC,GApBgB,YAAZA,GACA/N,EAAU7C,YAAYqQ,EAAa1a,KAAKkiB,EAAM,UAAWC,IAI7C,WAAZlH,GACA/N,EAAU7C,YAAYqQ,EAAa1a,KAAKkiB,EAAM,SAAUC,IAI5C,SAAZlH,GACA/N,EAAU7C,YAAYqQ,EAAa1a,KAAKkiB,EAAM,OAAQC,IAI1C,iBAAZlH,GACA/N,EAAU7C,YAAYqQ,EAAa1a,KAAKkiB,EAAM,eAAgBC,IAIlD,aAAZlH,EAAwB,CACxB,IAAMmH,EAAoBtX,EAAc,MAAO,CAC3CuB,MAAK,GAAA5J,OAAK0f,EAAkB9V,MAAvB,gCAGH0M,EAAWjO,EAAc,MAAOa,EAA0BuW,EAAK/e,OAAOkV,UAAUU,WAetF,GAZAA,EAAS1O,YACL8Q,EAAYnb,KAAKkiB,EAAM,OAAQ,CAC3B5V,GAAE,aAAA7J,OAAeiU,EAAKpK,OAK9ByM,EAAS1O,YAAYsR,EAAe3b,KAAKkiB,EAAM,WAK3CA,EAAK/e,OAAOsb,SAASxF,KAAM,CAC3B,IAAMM,EAAUzO,EACZ,OACA,CACIuB,MAAO6V,EAAK/e,OAAOqK,WAAW+L,SAElC,SAGJR,EAAS1O,YAAYkP,GACrB2I,EAAKvY,SAASwP,QAAQG,YAAcC,EAGxC2I,EAAKvY,SAASoP,SAAWA,EACzBqJ,EAAkB/X,YAAY6X,EAAKvY,SAASoP,UAC5C7L,EAAU7C,YAAY+X,GAc1B,GAVgB,iBAAZnH,GACA/N,EAAU7C,YAAY2R,EAAWhc,KAAKkiB,EAAM,cAAeC,IAI/C,aAAZlH,GACA/N,EAAU7C,YAAY2R,EAAWhc,KAAKkiB,EAAM,WAAYC,IAI5C,SAAZlH,GAAkC,WAAZA,EAAsB,CAAA,IACtC/B,EAAWgJ,EAAKvY,SAAhBuP,OAsBN,GAnBK/X,EAAGY,QAAQmX,IAAYhM,EAAUJ,SAASoM,KAC3CA,EAASpO,EACL,MACAxB,EAAO,GAAI6Y,EAAmB,CAC1B9V,MAAO,GAAA5J,OAAG0f,EAAkB9V,MAArB,iBAA0CL,UAIzDkW,EAAKvY,SAASuP,OAASA,EAEvBhM,EAAU7C,YAAY6O,IAIV,SAAZ+B,GACA/B,EAAO7O,YAAYqQ,EAAa1a,KAAKkiB,EAAM,SAI/B,WAAZjH,EAAsB,CAEtB,IAAMzQ,EAAa,CACf7H,IAAK,EACLL,KAAM,IACNhE,MAAO4jB,EAAK/e,OAAO+V,QAIvBA,EAAO7O,YACH8Q,EAAYnb,KACRkiB,EACA,SACA5Y,EAAOkB,EAAY,CACf8B,GAAE,eAAA7J,OAAiBiU,EAAKpK,SAa5C,GALgB,aAAZ2O,GACA/N,EAAU7C,YAAYqQ,EAAa1a,KAAKkiB,EAAM,WAAYC,IAI9C,aAAZlH,IAA2B9Z,EAAGgB,MAAM+f,EAAK/e,OAAOyV,UAAW,CAC3D,IAAMhP,EAAUkB,EACZ,MACAxB,EAAO,GAAI6Y,EAAmB,CAC1B9V,MAAO,GAAA5J,OAAG0f,EAAkB9V,MAArB,eAAwCL,OAC/CQ,OAAQ,MAIhB5C,EAAQS,YACJqQ,EAAa1a,KAAKkiB,EAAM,WAAY,CAChCG,iBAAiB,EACjBC,gBAAA,iBAAA7f,OAAkCiU,EAAKpK,IACvCiW,iBAAiB,KAIzB,IAAMzB,EAAQhW,EAAc,MAAO,CAC/BuB,MAAO,wBACPC,GAAE,iBAAA7J,OAAmBiU,EAAKpK,IAC1BE,OAAQ,KAGNgW,EAAQ1X,EAAc,OAEtB2X,EAAO3X,EAAc,MAAO,CAC9BwB,GAAE,iBAAA7J,OAAmBiU,EAAKpK,GAAxB,WAIAmO,EAAO3P,EAAc,MAAO,CAC9BkP,KAAM,SAGVyI,EAAKpY,YAAYoQ,GACjB+H,EAAMnY,YAAYoY,GAClBP,EAAKvY,SAASiP,SAAS6G,OAAOgD,KAAOA,EAGrCP,EAAK/e,OAAOyV,SAAS7U,QAAQ,SAAAC,GAEzB,IAAMmY,EAAWrR,EACb,SACAxB,EAAOqC,EAA0BuW,EAAK/e,OAAOkV,UAAUC,QAAQM,UAAW,CACtE5U,KAAM,SACNqI,MAAK,GAAA5J,OAAKyf,EAAK/e,OAAOqK,WAAWyN,QAA5B,KAAAxY,OAAuCyf,EAAK/e,OAAOqK,WAAWyN,QAA9D,aACLjB,KAAM,WACNqI,iBAAiB,EACjB7V,OAAQ,MAKhB0P,EAAsBlc,KAAKkiB,EAAM/F,EAAUnY,GAG3CqE,EAAG8T,EAAU,QAAS,WAClBI,EAAcvc,KAAKkiB,EAAMle,GAAM,KAGnC,IAAMoZ,EAAOtS,EAAc,OAAQ,KAAM0J,GAASxQ,EAAMke,EAAK/e,SAEvD7E,EAAQwM,EAAc,OAAQ,CAChCuB,MAAO6V,EAAK/e,OAAOqK,WAAWiN,KAAKnc,QAIvCA,EAAM8V,UAAYsC,EAAK1S,GAEvBoZ,EAAK/S,YAAY/L,GACjB6d,EAAS9R,YAAY+S,GACrB3C,EAAKpQ,YAAY8R,GAGjB,IAAMqD,EAAO1U,EAAc,MAAO,CAC9BwB,GAAE,iBAAA7J,OAAmBiU,EAAKpK,GAAxB,KAAA7J,OAA8BuB,GAChCwI,OAAQ,KAINkW,EAAa5X,EAAc,SAAU,CACvC9G,KAAM,SACNqI,MAAK,GAAA5J,OAAKyf,EAAK/e,OAAOqK,WAAWyN,QAA5B,KAAAxY,OAAuCyf,EAAK/e,OAAOqK,WAAWyN,QAA9D,YAITyH,EAAWrY,YACPS,EACI,OACA,CACI8Q,eAAe,GAEnBpH,GAASxQ,EAAMke,EAAK/e,UAK5Buf,EAAWrY,YACPS,EACI,OACA,CACIuB,MAAO6V,EAAK/e,OAAOqK,WAAWhB,QAElCgI,GAAS,WAAY0N,EAAK/e,UAKlCkF,EACImX,EACA,UACA,SAAAvd,GAEwB,KAAhBA,EAAMma,QAKVna,EAAM6C,iBACN7C,EAAMoa,kBAGNE,EAAcvc,KAAKkiB,EAAM,QAAQ,MAErC,GAIJ7Z,EAAGqa,EAAY,QAAS,WACpBnG,EAAcvc,KAAKkiB,EAAM,QAAQ,KAIrC1C,EAAKnV,YAAYqY,GAGjBlD,EAAKnV,YACDS,EAAc,MAAO,CACjBkP,KAAM,UAIdwI,EAAMnY,YAAYmV,GAElB0C,EAAKvY,SAASiP,SAASN,QAAQtU,GAAQmY,EACvC+F,EAAKvY,SAASiP,SAAS6G,OAAOzb,GAAQwb,IAG1CsB,EAAMzW,YAAYmY,GAClB5Y,EAAQS,YAAYyW,GACpB5T,EAAU7C,YAAYT,GAEtBsY,EAAKvY,SAASiP,SAASkI,MAAQA,EAC/BoB,EAAKvY,SAASiP,SAAS6B,KAAO7Q,EAclC,GAVgB,QAAZqR,GAAqB9L,GAAQU,KAC7B3C,EAAU7C,YAAYqQ,EAAa1a,KAAKkiB,EAAM,MAAOC,IAIzC,YAAZlH,GAAyB9L,GAAQc,SACjC/C,EAAU7C,YAAYqQ,EAAa1a,KAAKkiB,EAAM,UAAWC,IAI7C,aAAZlH,EAAwB,CACxB,IAAMzQ,EAAalB,EAAO,GAAI6Y,EAAmB,CAC7CpgB,QAAS,IACT4gB,KAAMT,EAAKF,SACX3kB,OAAQ,WAGJ2kB,EAAaE,EAAK/e,OAAOyf,KAAzBZ,UAEH7gB,EAAGkG,IAAI2a,IAAaE,EAAKW,SAC1BvZ,EAAOkB,EAAY,CACfsP,KAAI,QAAArX,OAAUyf,EAAK3S,UACnBqL,MAAOsH,EAAK3S,WAIpBrC,EAAU7C,YAAYqQ,EAAa1a,KAAKkiB,EAAM,WAAY1X,IAI9C,eAAZyQ,GACA/N,EAAU7C,YAAYqQ,EAAa1a,KAAKkiB,EAAM,aAAcC,MAKhEplB,KAAKsT,SACLuP,EAAe5f,KAAKjD,KAAMsV,GAAME,kBAAkBvS,KAAKjD,OAG3D4jB,EAAa3gB,KAAKjD,MAEXmQ,GAIX4V,OAxiDa,WAwiDJ,IAAAC,EAAAhmB,KAEL,GAAIA,KAAKoG,OAAOkT,WAAY,CACxB,IAAMyD,EAAOjC,GAASC,WAAW9X,KAAKjD,MAGlC+c,EAAK/B,MACL1B,GAAWyD,EAAKzS,IAAK,eAK7BtK,KAAKuP,GAAK5J,KAAKsgB,MAAsB,IAAhBtgB,KAAKugB,UAG1B,IAAI/V,EAAY,KAChBnQ,KAAK4M,SAASkO,SAAW,KAGzB,IAAMva,EAAQ,CACVgP,GAAIvP,KAAKuP,GACT4W,SAAUnmB,KAAKoG,OAAOuR,SACtBE,MAAO7X,KAAKoG,OAAOyR,OAEnB6B,GAAS,EAGTtV,EAAGQ,SAAS5E,KAAKoG,OAAO0U,YACxB9a,KAAKoG,OAAO0U,SAAW9a,KAAKoG,OAAO0U,SAAS7X,KAAKjD,KAAMO,IAItDP,KAAKoG,OAAO0U,WACb9a,KAAKoG,OAAO0U,SAAW,IAGvB1W,EAAGY,QAAQhF,KAAKoG,OAAO0U,WAAa1W,EAAGM,OAAO1E,KAAKoG,OAAO0U,UAE1D3K,EAAYnQ,KAAKoG,OAAO0U,UAGxB3K,EAAY2K,GAASoK,OAAOjiB,KAAKjD,KAAM,CACnCuP,GAAIvP,KAAKuP,GACT4W,SAAUnmB,KAAKoG,OAAOuR,SACtB8I,MAAOzgB,KAAKygB,MACZvK,QAASlW,KAAKkW,QACd4F,SAAUA,GAAS8G,SAAS3f,KAAKjD,QAIrC0Z,GAAS,GAIb,IAoBIpZ,EApBE6O,EAAU,SAAAzL,GACZ,IAAIuW,EAASvW,EAMb,OAJA5C,OAAO4M,QAAQnN,GAAOyG,QAAQ,SAAA+N,GAAkB,IAAAnH,EAAApM,EAAAuT,EAAA,GAAhB/T,EAAgB4M,EAAA,GAAXrM,EAAWqM,EAAA,GAC5CqM,EAAStD,GAAWsD,EAAD,IAAAvU,OAAa1E,EAAb,KAAqBO,KAGrC0Y,GAmCX,GA/BIP,IACItV,EAAGM,OAAO1E,KAAKoG,OAAO0U,UACtB3K,EAAYhB,EAAQgB,GACb/L,EAAGY,QAAQmL,KAClBA,EAAUkH,UAAYlI,EAAQgB,EAAUkH,aAQ5CjT,EAAGM,OAAO1E,KAAKoG,OAAOkV,UAAUR,SAAS3K,aACzC7P,EAAS2F,SAASC,cAAclG,KAAKoG,OAAOkV,UAAUR,SAAS3K,YAI9D/L,EAAGY,QAAQ1E,KACZA,EAASN,KAAK4M,SAASuD,WAK3B7P,EADqB8D,EAAGY,QAAQmL,GAAa,wBAA0B,sBAClD,aAAcA,GAG9B/L,EAAGY,QAAQhF,KAAK4M,SAASkO,WAC1BA,GAASO,aAAapY,KAAKjD,OAI1BoE,EAAGgB,MAAMpF,KAAK4M,SAAS2O,SAAU,CAClC,IAAM6K,EAAc,SAAAjI,GAChB,IAAMjP,EAAY8W,EAAK5f,OAAOqK,WAAW4V,eACzCvlB,OAAOC,eAAeod,EAAQ,UAAW,CACrCxd,YAAY,EACZqH,IAFqC,WAGjC,OAAOgI,EAASmO,EAAQjP,IAE5BhI,IALqC,WAKhB,IAAjB4Z,EAAiB3Y,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GACjByH,EAAYuO,EAAQjP,EAAW4R,OAM3ChgB,OAAOgjB,OAAO9jB,KAAK4M,SAAS2O,SACvBjT,OAAOzE,SACPmD,QAAQ,SAAAmX,GACD/Z,EAAGU,MAAMqZ,IAAW/Z,EAAGW,SAASoZ,GAChCzc,MAAMwB,KAAKib,GACN7V,OAAOzE,SACPmD,QAAQof,GAEbA,EAAYjI,KAW5B,GALI/M,GAAQG,QACRP,EAAQ1Q,GAIRN,KAAKoG,OAAOsb,SAAS5G,SAAU,CAAA,IAAAwL,EACGtmB,KAAKoG,OAA/BqK,EADuB6V,EACvB7V,WAAY6K,EADWgL,EACXhL,UACd1S,EAAQ,GAAAlD,OAAM4V,EAAUR,SAASjO,QAAzB,KAAAnH,OAAoC4V,EAAUiL,OAA9C,MAAA7gB,OAAyD+K,EAAWhB,QAC5E8W,EAASrW,EAAYjN,KAAKjD,KAAM4I,GAEtClH,MAAMwB,KAAKqjB,GAAQvf,QAAQ,SAAA6W,GACvBjO,EAAYiO,EAAOmI,EAAK5f,OAAOqK,WAAWhB,QAAQ,GAClDG,EAAYiO,EAAOmI,EAAK5f,OAAOqK,WAAW+L,SAAS,QC1sD5D,SAASgK,GAAS9iB,GAAoB,IACrC4G,EAAM5G,EAEV,KAHyCyE,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,KAAAA,UAAA,GAG/B,CACN,IAAMse,EAASxgB,SAAS8H,cAAc,KACtC0Y,EAAOb,KAAOtb,EACdA,EAAMmc,EAAOb,KAGjB,IACI,OAAO,IAAIrb,IAAID,GACjB,MAAOI,GACL,OAAO,MAKR,SAASgc,GAAehjB,GAC3B,IAAMijB,EAAS,IAAIC,gBAQnB,OANIxiB,EAAGE,OAAOZ,IACV5C,OAAO4M,QAAQhK,GAAOsD,QAAQ,SAAA2G,GAAkB,IAAAoH,EAAAvT,EAAAmM,EAAA,GAAhB3M,EAAgB+T,EAAA,GAAXxT,EAAWwT,EAAA,GAC5C4R,EAAOzf,IAAIlG,EAAKO,KAIjBolB,ECbX,IAAM7K,GAAW,CAEb6C,MAFa,WAIT,GAAK3e,KAAK4K,UAAUgI,GAKpB,IAAK5S,KAAK8U,SAAW9U,KAAK6mB,WAAc7mB,KAAKsT,UAAYlB,GAAQqB,WAGzDrP,EAAGU,MAAM9E,KAAKoG,OAAO0U,WACrB9a,KAAKoG,OAAO0U,SAASjS,SAAS,aAC9B7I,KAAKoG,OAAOyV,SAAShT,SAAS,aAE9BiS,GAASuI,gBAAgBpgB,KAAKjD,UAPtC,CAsBA,GARKoE,EAAGY,QAAQhF,KAAK4M,SAASkP,YAC1B9b,KAAK4M,SAASkP,SAAW/N,EAAc,MAAOa,EAA0B5O,KAAKoG,OAAOkV,UAAUQ,WfuBnG,SAAqB9W,EAAS1E,GAC5B8D,EAAGY,QAAQA,IAAaZ,EAAGY,QAAQ1E,IAIxCA,EAAO6M,WAAWI,aAAavI,EAAS1E,EAAO+M,ae1BvCyZ,CAAY9mB,KAAK4M,SAASkP,SAAU9b,KAAK4M,SAASC,UAKlDuE,GAAQC,MAAQvH,OAAOS,IAAK,CAC5B,IAAMqC,EAAW5M,KAAKuT,MAAMlL,iBAAiB,SAE7C3G,MAAMwB,KAAK0J,GAAU5F,QAAQ,SAAAiD,GACzB,IAAM8L,EAAM9L,EAAM1C,aAAa,OACzB+C,EAAMkc,GAASzQ,GAGT,OAARzL,GACAA,EAAIG,WAAaX,OAAOoR,SAAS0K,KAAKnb,UACtC,CAAC,QAAS,UAAU5B,SAASyB,EAAIyc,WAEjCrO,GAAM3C,EAAK,QACNiE,KAAK,SAAAgN,GACF/c,EAAM6D,aAAa,MAAOhE,OAAOS,IAAI0c,gBAAgBD,MAExD9M,MAAM,WACH/L,EAAclE,OAalC,IACMid,EAAY3Q,IADOhX,UAAU2nB,WAAa,CAAC3nB,UAAUmkB,UAAYnkB,UAAU4nB,cAAgB,OACvDje,IAAI,SAAAwa,GAAQ,OAAIA,EAAStY,MAAM,KAAK,MAC1EsY,GAAY1jB,KAAKiY,QAAQjQ,IAAI,aAAehI,KAAKoG,OAAO0V,SAAS4H,UAAY,QAAQ1M,cAGzF,GAAiB,SAAb0M,EACCA,EADoBliB,EACR0lB,EADQ,GAAA,GAIzB,IAAIE,EAASpnB,KAAKiY,QAAQjQ,IAAI,YAa9B,GAZK5D,EAAGO,QAAQyiB,KACTA,EAAWpnB,KAAKoG,OAAO0V,SAAvBsL,QAGPtmB,OAAOuF,OAAOrG,KAAK8b,SAAU,CACzB2H,SAAS,EACT2D,OAAAA,EACA1D,SAAAA,EACAwD,UAAAA,IAIAlnB,KAAKsT,QAAS,CACd,IAAM+T,EAAcrnB,KAAKoG,OAAO0V,SAASpC,OAAS,uBAAyB,cAC3EpO,EAAGrI,KAAKjD,KAAMA,KAAKuT,MAAME,WAAY4T,EAAavL,GAASpC,OAAO6G,KAAKvgB,OAI3EiR,WAAW6K,GAASpC,OAAO6G,KAAKvgB,MAAO,KAI3C0Z,OA7Fa,WA6FJ,IAAA5S,EAAA9G,KACCujB,EAASzH,GAAS0H,UAAUvgB,KAAKjD,MAAM,GADxCsnB,EAGgDtnB,KAAK8b,SAAlDsL,EAHHE,EAGGF,OAAQ1D,EAHX4D,EAGW5D,SAAU6D,EAHrBD,EAGqBC,KAAMC,EAH3BF,EAG2BE,iBAC1BC,EAAiB5jB,QAAQ0f,EAAOxS,KAAK,SAAA9G,GAAK,OAAIA,EAAMyZ,WAAaA,KAGnE1jB,KAAKsT,SAAWtT,KAAK8U,SACrByO,EACKjb,OAAO,SAAA2B,GAAK,OAAKsd,EAAKvf,IAAIiC,KAC1BjD,QAAQ,SAAAiD,GACLnD,EAAKuP,MAAMC,IAAI,cAAerM,GAE9Bsd,EAAKrgB,IAAI+C,EAAO,CACZ0Y,QAAwB,YAAf1Y,EAAMyd,OAInB5mB,OAAOuF,OAAO4D,EAAO,CAAEyd,KAAM,WAG7Bpc,EAAGrI,KAAK6D,EAAMmD,EAAO,YAAa,WAAA,OAAM6R,GAAS6L,WAAW1kB,KAAK6D,QAKxE2gB,GAAkBznB,KAAK0jB,WAAaA,IAAcH,EAAO1a,SAAS2e,MACnE1L,GAAS8L,YAAY3kB,KAAKjD,KAAM0jB,GAChC5H,GAASjV,OAAO5D,KAAKjD,KAAMonB,GAAUK,IAIzC7X,EAAY5P,KAAK4M,SAASuD,UAAWnQ,KAAKoG,OAAOqK,WAAWqL,SAASvV,SAAUnC,EAAGgB,MAAMme,KAGnFvjB,KAAKoG,OAAO0U,UAAY,IAAIjS,SAAS,aAAe7I,KAAKoG,OAAOyV,SAAShT,SAAS,aACnFiS,GAASuI,gBAAgBpgB,KAAKjD,OAMtC6G,OAvIa,SAuINnD,GAAuB,IAAhBuH,IAAgB9C,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,KAAAA,UAAA,GAE1B,GAAKnI,KAAK4K,UAAUgI,GAApB,CAF0B,IAMlB6Q,EAAYzjB,KAAK8b,SAAjB2H,QACFoE,EAAc7nB,KAAKoG,OAAOqK,WAAWqL,SAASsL,OAG9CA,EAAShjB,EAAGC,gBAAgBX,IAAU+f,EAAU/f,EAGtD,GAAI0jB,IAAW3D,EAAS,CAQpB,GANKxY,IACDjL,KAAK8b,SAASsL,OAASA,EACvBpnB,KAAKiY,QAAQ/Q,IAAI,CAAE4U,SAAUsL,MAI5BpnB,KAAK0jB,UAAY0D,IAAWnc,EAAS,CACtC,IAAMsY,EAASzH,GAAS0H,UAAUvgB,KAAKjD,MACjCiK,EAAQ6R,GAASgM,UAAU7kB,KAAKjD,KAAxB,CAA+BA,KAAK8b,SAAS4H,UAA7Che,OAAA9C,EAA0D5C,KAAK8b,SAASoL,aAAY,GAOlG,OAJAlnB,KAAK8b,SAAS4H,SAAWzZ,EAAMyZ,cAG/B5H,GAAS5U,IAAIjE,KAAKjD,KAAMujB,EAAO9M,QAAQxM,IAKvCjK,KAAK4M,SAAS2O,QAAQO,WACtB9b,KAAK4M,SAAS2O,QAAQO,SAASgF,QAAUsG,GAI7CxX,EAAY5P,KAAK4M,SAASuD,UAAW0X,EAAaT,GAElDpnB,KAAK8b,SAAS2H,QAAU2D,EAGxBtM,GAAS0H,cAAcvf,KAAKjD,KAAM,YAGlC+L,EAAa9I,KAAKjD,KAAMA,KAAKuT,MAAO6T,EAAS,kBAAoB,uBAMzElgB,IA5La,SA4LT6F,GAAuB,IAAhB9B,IAAgB9C,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,KAAAA,UAAA,GACjBob,EAASzH,GAAS0H,UAAUvgB,KAAKjD,MAGvC,IAAe,IAAX+M,EAKJ,GAAK3I,EAAGG,OAAOwI,GAKf,GAAMA,KAASwW,EAAf,CAKA,GAAIvjB,KAAK8b,SAAS0E,eAAiBzT,EAAO,CACtC/M,KAAK8b,SAAS0E,aAAezT,EAC7B,IAAM9C,EAAQsZ,EAAOxW,GACb2W,GAAazZ,GAAS,IAAtByZ,SAGR1jB,KAAK8b,SAAS0L,iBAAmBvd,EAGjC6Q,GAAS0H,cAAcvf,KAAKjD,KAAM,YAG7BiL,IACDjL,KAAK8b,SAAS4H,SAAWA,EACzB1jB,KAAKiY,QAAQ/Q,IAAI,CAAEwc,SAAAA,KAInB1jB,KAAKkV,SACLlV,KAAKyU,MAAMsT,gBAAgBrE,GAI/B3X,EAAa9I,KAAKjD,KAAMA,KAAKuT,MAAO,kBAIxCuI,GAASjV,OAAO5D,KAAKjD,MAAM,EAAMiL,GAE7BjL,KAAKsT,SAAWtT,KAAK8U,SAErBgH,GAAS6L,WAAW1kB,KAAKjD,WAnCzBA,KAAKqW,MAAMqG,KAAK,kBAAmB3P,QALnC/M,KAAKqW,MAAMqG,KAAK,2BAA4B3P,QAL5C+O,GAASjV,OAAO5D,KAAKjD,MAAM,EAAOiL,IAmD1C2c,YApPa,SAoPDlkB,GAAuB,IAAhBuH,IAAgB9C,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,KAAAA,UAAA,GAC/B,GAAK/D,EAAGM,OAAOhB,GAAf,CAKA,IAAMggB,EAAWhgB,EAAMsT,cACvBhX,KAAK8b,SAAS4H,SAAWA,EAGzB,IAAMH,EAASzH,GAAS0H,UAAUvgB,KAAKjD,MACjCiK,EAAQ6R,GAASgM,UAAU7kB,KAAKjD,KAAM,CAAC0jB,IAC7C5H,GAAS5U,IAAIjE,KAAKjD,KAAMujB,EAAO9M,QAAQxM,GAAQgB,QAV3CjL,KAAKqW,MAAMqG,KAAK,4BAA6BhZ,IAgBrD8f,UAtQa,WAsQa,IAAA/X,EAAAzL,KAAhB0Z,EAAgBvR,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GAKtB,OAHezG,MAAMwB,MAAMlD,KAAKuT,OAAS,IAAIE,YAAc,IAItDnL,OAAO,SAAA2B,GAAK,OAAKwB,EAAK6H,SAAWoG,GAAUjO,EAAKqQ,SAASyL,KAAKS,IAAI/d,KAClE3B,OAAO,SAAA2B,GAAK,MAAI,CAAC,WAAY,aAAapB,SAASoB,EAAME,SAIlE2d,UAjRa,SAiRHZ,GAA0B,IAI5Bjd,EAJ4B8V,EAAA/f,KAAf6P,EAAe1H,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GAC1Bob,EAASzH,GAAS0H,UAAUvgB,KAAKjD,MACjCioB,EAAgB,SAAAhe,GAAK,OAAIzF,QAAQub,EAAKjE,SAASyL,KAAKvf,IAAIiC,IAAU,IAAI0Y,UACtEuF,EAASxmB,MAAMwB,KAAKqgB,GAAQN,KAAK,SAACC,EAAGC,GAAJ,OAAU8E,EAAc9E,GAAK8E,EAAc/E,KASlF,OANAgE,EAAUpT,MAAM,SAAA4P,GAEZ,QADAzZ,EAAQie,EAAOnX,KAAK,SAAA5H,GAAC,OAAIA,EAAEua,WAAaA,OAKrCzZ,IAAU4F,EAAQqY,EAAO,QAAKjmB,IAIzCkmB,gBAjSa,WAkST,OAAOrM,GAAS0H,UAAUvgB,KAAKjD,MAAMA,KAAKwgB,eAI9CoC,SAtSa,SAsSJ3Y,GACL,IAAIuW,EAAevW,EAMnB,OAJK7F,EAAG6F,MAAMuW,IAAiBpO,GAAQqB,YAAczT,KAAK8b,SAAS2H,UAC/DjD,EAAe1E,GAASqM,gBAAgBllB,KAAKjD,OAG7CoE,EAAG6F,MAAMuW,GACJpc,EAAGgB,MAAMob,EAAa3C,OAItBzZ,EAAGgB,MAAMob,EAAakD,UAIpBjM,GAAS,UAAWzX,KAAKoG,QAHrB6D,EAAMyZ,SAAS5M,cAJf0J,EAAa3C,MAUrBpG,GAAS,WAAYzX,KAAKoG,SAKrCuhB,WA9Ta,SA8TFjkB,GAEP,GAAK1D,KAAK4K,UAAUgI,GAIpB,GAAKxO,EAAGY,QAAQhF,KAAK4M,SAASkP,UAM9B,GAAK1X,EAAGC,gBAAgBX,IAAWhC,MAAMC,QAAQ+B,GAAjD,CAKA,IAAI0kB,EAAO1kB,EAGX,IAAK0kB,EAAM,CACP,IAAMne,EAAQ6R,GAASqM,gBAAgBllB,KAAKjD,MAE5CooB,EAAO1mB,MAAMwB,MAAM+G,GAAS,IAAIoe,YAAc,IACzCnf,IAAI,SAAAW,GAAG,OAAIA,EAAIye,iBACfpf,IAAIkO,IAIb,IAAM2C,EAAUqO,EAAKlf,IAAI,SAAAqf,GAAO,OAAIA,EAAQtZ,SAAQsO,KAAK,MAGzD,GAFgBxD,IAAY/Z,KAAK4M,SAASkP,SAASzE,UAEtC,CAEThJ,EAAarO,KAAK4M,SAASkP,UAC3B,IAAM0M,EAAUza,EAAc,OAAQa,EAA0B5O,KAAKoG,OAAOkV,UAAUkN,UACtFA,EAAQnR,UAAY0C,EACpB/Z,KAAK4M,SAASkP,SAASxO,YAAYkb,GAGnCzc,EAAa9I,KAAKjD,KAAMA,KAAKuT,MAAO,mBA3BpCvT,KAAKqW,MAAMqG,KAAK,4BAA6BhZ,QAN7C1D,KAAKqW,MAAMqG,KAAK,sCCzVtBrZ,GAAW,CAEbkD,SAAS,EAGTsR,MAAO,GAGPxB,OAAO,EAGPoS,UAAU,EAGVC,WAAW,EAIXjW,aAAa,EAGbkF,SAAU,GAGVwE,OAAQ,EACR0E,OAAO,EAGPvE,SAAU,KAIV+F,iBAAiB,EAGjBL,YAAY,EAGZ2G,cAAc,EAId3U,MAAO,KAGP4U,aAAa,EAGbC,cAAc,EAGdC,YAAY,EAGZC,oBAAoB,EAGpBzP,YAAY,EACZwD,WAAY,OACZ7B,QAAS,qCAGT7E,WAAY,uCAGZF,QAAS,CACLyM,QAAS,IACT3c,QAAS,CAAC,KAAM,KAAM,KAAM,KAAM,KAAM,IAAK,IAAK,IAAK,IAAK,MAIhEgjB,KAAM,CACF5B,QAAQ,GAMZ3G,MAAO,CACHwI,SAAU,EACVjjB,QAAS,CAAC,GAAK,IAAM,EAAG,KAAM,IAAK,KAAM,IAI7CkjB,SAAU,CACNC,SAAS,EACT3pB,QAAQ,GAIZkiB,SAAU,CACN5G,UAAU,EACVoB,MAAM,GAIVJ,SAAU,CACNsL,QAAQ,EACR1D,SAAU,OAGVhK,QAAQ,GAIZqC,WAAY,CACRxV,SAAS,EACT6iB,UAAU,EACVC,WAAW,GAIfpR,QAAS,CACL1R,SAAS,EACTvF,IAAK,QAIT8Z,SAAU,CACN,aAGA,OAEA,WACA,eACA,OACA,SACA,WACA,WACA,MACA,UAEA,cAEJe,SAAU,CAAC,WAAY,UAAW,SAGlCpE,KAAM,CACFgE,QAAS,UACTC,OAAQ,qBACR1F,KAAM,OACNwF,MAAO,QACPG,YAAa,sBACbO,KAAM,OACNoN,UAAW,8BACXvK,OAAQ,SACRuC,SAAU,WACV3L,YAAa,eACb2G,SAAU,WACVH,OAAQ,SACRP,KAAM,OACN2N,OAAQ,SACRC,eAAgB,kBAChBC,gBAAiB,mBACjBxE,SAAU,WACVyE,gBAAiB,mBACjBC,eAAgB,kBAChBC,WAAY,qBACZ9N,SAAU,WACVD,SAAU,WACVgO,SAAU,2BACVpJ,MAAO,QACPqJ,OAAQ,SACR5T,QAAS,UACT8S,KAAM,OACNe,MAAO,QACPC,IAAK,MACLC,IAAK,MACLC,MAAO,QACPpiB,SAAU,WACVvB,QAAS,UACT4jB,cAAe,KACfC,aAAc,CACVC,KAAM,KACNC,KAAM,KACNC,KAAM,KACNC,IAAK,KACLC,IAAK,KACLC,IAAK,OAKb7E,KAAM,CACFZ,SAAU,KACV1N,MAAO,CACHoT,IAAK,yCACLC,OAAQ,yCACRjY,IAAK,2CAET6E,QAAS,CACLmT,IAAK,qCACLhY,IAAK,qEAETkY,UAAW,CACPF,IAAK,uDAKb/jB,UAAW,CACPsV,KAAM,KACNlG,KAAM,KACNwF,MAAO,KACPC,QAAS,KACTC,OAAQ,KACRC,YAAa,KACbC,KAAM,KACNO,OAAQ,KACRL,SAAU,KACVmJ,SAAU,KACVlJ,WAAY,KACZjJ,IAAK,KACLI,QAAS,KACTuN,MAAO,KACPvK,QAAS,KACT8S,KAAM,KACNtF,SAAU,MAIdvY,OAAQ,CAGJ,QACA,WACA,UACA,UACA,UACA,UACA,iBACA,YACA,aACA,iBACA,aACA,eACA,OACA,QACA,QACA,UACA,SACA,UACA,aACA,YAGA,WACA,kBACA,iBACA,kBACA,mBACA,iBACA,iBACA,gBACA,QAGA,cAGA,gBAGA,YACA,kBACA,mBACA,YACA,cACA,cACA,iBACA,gBACA,YAKJmQ,UAAW,CACPwP,SAAU,6CACV3a,UAAW,QACX2K,SAAU,CACN3K,UAAW,KACXtD,QAAS,mBAEb0Z,OAAQ,cACRhL,QAAS,CACLvF,KAAM,qBACNwF,MAAO,sBACPC,QAAS,wBACTC,OAAQ,uBACRC,YAAa,6BACbC,KAAM,qBACNE,SAAU,yBACVmJ,SAAU,yBACVlJ,WAAY,2BACZjJ,IAAK,oBACLI,QAAS,wBACT2I,SAAU,yBACVmN,KAAM,sBAEV/M,OAAQ,CACJC,KAAM,qBACNC,OAAQ,uBACRsE,MAAO,sBACPiD,SAAU,yBACVxN,QAAS,yBAEbkG,QAAS,CACLzG,YAAa,uBACb2G,SAAU,wBACVD,OAAQ,0BACR2M,KAAM,wBACN7M,OAAQ,0BAEZH,SAAU,kBACVF,SAAU,kBACV0M,QAAS,kBAIb/X,WAAY,CACRxJ,KAAM,YACNuL,SAAU,YACVF,MAAO,sBACPmC,MAAO,oBACPY,gBAAiB,mCACjB0V,eAAgB,+BAChBC,OAAQ,eACRC,cAAe,uBACfC,IAAK,YACLhN,QAAS,gBACTmI,eAAgB,yBAChB8E,QAAS,gBACTvV,OAAQ,eACRwV,QAAS,gBACTC,QAAS,gBACTC,MAAO,cACP9O,QAAS,gBACT4L,KAAM,aACN3Y,OAAQ,gBACRoZ,aAAc,sBACdhX,MAAO,eACP0Z,QAAS,iBACTC,YAAa,gBACbC,aAAc,sBACdrP,QAAS,CACL5B,KAAM,cAEVkD,KAAM,CACFnc,MAAO,oBACPkc,MAAO,cACPrE,KAAM,mBAEV0C,SAAU,CACNvV,QAAS,yBACT6gB,OAAQ,yBAEZrL,WAAY,CACRxV,QAAS,2BACT6iB,SAAU,6BAEdtW,IAAK,CACDlI,UAAW,sBACXwc,OAAQ,oBAEZlU,QAAS,CACLtI,UAAW,0BACXwc,OAAQ,wBAEZ9W,SAAU,kBACVob,kBAAmB,CAEfC,eAAgB,sBAChBC,oBAAqB,gCACrBC,eAAgB,uCAChBC,cAAe,sCAEfC,mBAAoB,0BACpBC,wBAAyB,sCAKjCve,WAAY,CACRgH,MAAO,CACHjC,SAAU,qBACVjD,GAAI,uBAMZ2b,IAAK,CACD3kB,SAAS,EACT0lB,YAAa,GACbC,OAAQ,IAIZR,kBAAmB,CACfnlB,SAAS,EACTwP,IAAK,IAITwB,MAAO,CACH4U,QAAQ,EACRC,UAAU,EACVvU,OAAO,EACP4I,OAAO,EACP4L,aAAa,GAIjB7U,QAAS,CACL8U,UAAU,EACVC,IAAK,EACLC,SAAU,EACVC,eAAgB,EAChBC,eAAgB,ICnaX5Z,GACD,qBADCA,GAEC,SCFD6Z,GAAY,CACrBrX,MAAO,QACPkC,QAAS,UACTD,MAAO,SAGEqV,GAAQ,CACjBva,MAAO,QACPC,MAAO,SCRX,IAAMua,GAAO,aAEQC,G7Bm5HnB,W6Bl5HE,SAAAA,IAA6B,IAAjBvmB,EAAiB4B,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GAAAlI,EAAAD,KAAA8sB,GACzB9sB,KAAKuG,QAAUuD,OAAOijB,SAAWxmB,EAE7BvG,KAAKuG,SACLvG,KAAKsW,IAAI,qB7B+6HjB,OApBArV,EAAa6rB,EAAS,CAAC,CACrB9rB,IAAK,MACLgH,IAAK,W6Bv5HH,OAAOhI,KAAKuG,QAAU1B,SAASzD,UAAUmf,KAAKtd,KAAK8pB,QAAQzW,IAAKyW,SAAWF,K7B25H5E,CACD7rB,IAAK,OACLgH,IAAK,W6Bx5HH,OAAOhI,KAAKuG,QAAU1B,SAASzD,UAAUmf,KAAKtd,KAAK8pB,QAAQrQ,KAAMqQ,SAAWF,K7B45H7E,CACD7rB,IAAK,QACLgH,IAAK,W6Bz5HH,OAAOhI,KAAKuG,QAAU1B,SAASzD,UAAUmf,KAAKtd,KAAK8pB,QAAQtQ,MAAOsQ,SAAWF,O7B+5H1EC,EAjCT,G8B74HF,SAASE,KACL,GAAKhtB,KAAKuG,QAAV,CAKA,IAAM4X,EAASne,KAAKyV,OAAO7I,SAAS2O,QAAQQ,WACxC3X,EAAGY,QAAQmZ,KACXA,EAAO2C,QAAU9gB,KAAKonB,QAI1Brb,EAAa9I,KAAKjD,KAAKyV,OAAQzV,KAAKM,OAAQN,KAAKonB,OAAS,kBAAoB,kBAAkB,GAG3FhW,GAAQS,OpBmOV,WAAmD,IAAhC7M,EAAgCmD,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAtB,KAAMtB,EAAgBsB,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GACtD,GAAK/D,EAAGY,QAAQA,GAAhB,CAIA,IAAMkY,EAAYhN,EAAYjN,KAAKjD,KAAM,2DACnCitB,EAAQ/P,EAAU,GAClBgQ,EAAOhQ,EAAUA,EAAUzc,OAAS,GAsB1CsK,EAAe9H,KAAKjD,KAAMA,KAAK4M,SAASuD,UAAW,UApBtC,SAAAjL,GAET,GAAkB,QAAdA,EAAMlE,KAAmC,IAAlBkE,EAAMioB,QAAjC,CAKA,IAAMhE,EAAUljB,SAASmnB,cAErBjE,IAAY+D,GAAShoB,EAAMmoB,SAIpBlE,IAAY8D,GAAS/nB,EAAMmoB,WAElCH,EAAK3c,QACLrL,EAAM6C,mBALNklB,EAAM1c,QACNrL,EAAM6C,oBAQsDlB,GAAQ,KoB/P9D5D,KAAKjD,KAAKyV,OAAQzV,KAAKM,OAAQN,KAAKonB,SAItD,SAASkG,KAA+B,IAAAxmB,EAAA9G,KAAhB6G,EAAgBsB,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GAkBpC,GAhBItB,EACA7G,KAAKutB,eAAiB,CAClBC,EAAG1jB,OAAO2jB,SAAW,EACrBC,EAAG5jB,OAAO6jB,SAAW,GAGzB7jB,OAAO8jB,SAAS5tB,KAAKutB,eAAeC,EAAGxtB,KAAKutB,eAAeG,GAI/DznB,SAAS8C,KAAKvC,MAAMqnB,SAAWhnB,EAAS,SAAW,GAGnD+I,EAAY5P,KAAKM,OAAQN,KAAKyV,OAAOrP,OAAOqK,WAAWsL,WAAWqN,SAAUviB,GAGxEuK,GAAQS,MAAO,CACf,IAAIic,EAAW7nB,SAAS8nB,KAAK7nB,cAAc,yBACrC8nB,EAAW,qBAGZF,IACDA,EAAW7nB,SAAS8H,cAAc,SACzBD,aAAa,OAAQ,YAIlC,IAAMmgB,EAAc7pB,EAAGM,OAAOopB,EAAS/T,UAAY+T,EAAS/T,QAAQlR,SAASmlB,GAEzEnnB,GACA7G,KAAKkuB,iBAAmBD,EAEnBA,IACDH,EAAS/T,SAAT,IAAArU,OAAwBsoB,KAErBhuB,KAAKkuB,kBACZJ,EAAS/T,QAAU+T,EAAS/T,QACvB3O,MAAM,KACN9C,OAAO,SAAA6lB,GAAI,OAAIA,EAAKlf,SAAW+e,IAC/BzQ,KAAK,MAIdtM,WAAW,WAAA,OAAMD,EAAQlK,EAAKxG,SAAS,KAI3C0sB,GAAS/pB,KAAKjD,M9Bs7HhB,I8Bn7HIouB,G9Bq7HJ,W8Bp7HE,SAAAA,EAAY3Y,GAAQ,IAAAhK,EAAAzL,KAAAC,EAAAD,KAAAouB,GAEhBpuB,KAAKyV,OAASA,EAGdzV,KAAKquB,OAASD,EAAWC,OACzBruB,KAAKguB,SAAWI,EAAWJ,SAG3BhuB,KAAKutB,eAAiB,CAAEC,EAAG,EAAGE,EAAG,GAGjC1tB,KAAKsuB,cAAsD,UAAtC7Y,EAAOrP,OAAO2V,WAAWqN,SAI9C9d,EAAGrI,KACCjD,KAAKyV,OACLxP,SACgB,OAAhBjG,KAAKquB,OAAkB,qBAAvB,GAAA3oB,OAAiD1F,KAAKquB,OAAtD,oBACA,WAEIrB,GAAS/pB,KAAKwI,KAKtBH,EAAGrI,KAAKjD,KAAKyV,OAAQzV,KAAKyV,OAAO7I,SAASuD,UAAW,WAAY,SAAAjL,GAEzDd,EAAGY,QAAQyG,EAAKgK,OAAO7I,SAASkO,WAAarP,EAAKgK,OAAO7I,SAASkO,SAAS/K,SAAS7K,EAAM5E,SAI9FmL,EAAK5E,WAIT7G,KAAK0Z,S9BkkIT,OA7IAzY,EAAamtB,EAAY,CAAC,CACxBptB,IAAK,SAELO,MAAO,W8Bv2HD,IAAImmB,EADJ1nB,KAAKuG,SAIDmhB,EADA1nB,KAAKsuB,cACE,oBACAF,EAAWG,OACX,SAEA,WAGXvuB,KAAKyV,OAAOY,MAAMC,IAAlB,GAAA5Q,OAAyBgiB,EAAzB,yBAEA1nB,KAAKyV,OAAOY,MAAMC,IAAI,kDAI1B1G,EAAY5P,KAAKyV,OAAO7I,SAASuD,UAAWnQ,KAAKyV,OAAOrP,OAAOqK,WAAWsL,WAAWxV,QAASvG,KAAKuG,W9B42HpG,CACDvF,IAAK,QACLO,MAAO,W8Bz2HAvB,KAAKuG,UAKN6K,GAAQS,OAAS7R,KAAKyV,OAAOrP,OAAO2V,WAAWsN,UAC/CrpB,KAAKM,OAAOkuB,yBACJJ,EAAWG,QAAUvuB,KAAKsuB,cAClChB,GAAerqB,KAAKjD,MAAM,GAClBA,KAAKquB,OAELjqB,EAAGgB,MAAMpF,KAAKquB,SACtBruB,KAAKM,OAAL,GAAAoF,OAAe1F,KAAKquB,OAApB,WAAA3oB,OAAoC1F,KAAKguB,aAFzChuB,KAAKM,OAAOmuB,uB9Bg3HjB,CACDztB,IAAK,OACLO,MAAO,W8B12HL,GAAKvB,KAAKuG,QAKV,GAAI6K,GAAQS,OAAS7R,KAAKyV,OAAOrP,OAAO2V,WAAWsN,UAC/CrpB,KAAKM,OAAOouB,uBACZ1uB,KAAKyV,OAAOO,YACT,IAAKoY,EAAWG,QAAUvuB,KAAKsuB,cAClChB,GAAerqB,KAAKjD,MAAM,QACvB,GAAKA,KAAKquB,QAEV,IAAKjqB,EAAGgB,MAAMpF,KAAKquB,QAAS,CAC/B,IAAMM,EAAyB,QAAhB3uB,KAAKquB,OAAmB,SAAW,OAClDpoB,SAAQ,GAAAP,OAAI1F,KAAKquB,QAAT3oB,OAAkBipB,GAAlBjpB,OAA2B1F,KAAKguB,mBAHvC/nB,SAAS2oB,kBAAoB3oB,SAAS0jB,gBAAgB1mB,KAAKgD,Y9Bk3HjE,CACDjF,IAAK,SACLO,MAAO,W8B32HAvB,KAAKonB,OAGNpnB,KAAK6uB,OAFL7uB,KAAK8uB,U9Bi3HV,CACD9tB,IAAK,cAELgH,IAAK,W8Bl/HH,OAAOomB,EAAWG,SAAWvuB,KAAKsuB,gB9Bs/HnC,CACDttB,IAAK,UAELgH,IAAK,W8Bz9HH,OACKomB,EAAWG,QAAUvuB,KAAKyV,OAAOrP,OAAO2V,WAAWqN,WACpDppB,KAAKyV,OAAOrP,OAAO2V,WAAWxV,SAC9BvG,KAAKyV,OAAO7K,UAAUgI,IACtB5S,KAAKyV,OAAOX,U9By9HjB,CACD9T,IAAK,SACLgH,IAAK,W8Br9HH,QAAKhI,KAAKuG,WAKL6nB,EAAWG,QAAUvuB,KAAKsuB,cACpBte,EAAShQ,KAAKM,OAAQN,KAAKyV,OAAOrP,OAAOqK,WAAWsL,WAAWqN,WAGzDppB,KAAKquB,OAAsCpoB,SAAQ,GAAAP,OAAI1F,KAAKquB,QAAT3oB,OAAkB1F,KAAKguB,SAAvB,YAArC/nB,SAAS8oB,qBAErB/uB,KAAKM,U9Bw9HzB,CACDU,IAAK,SACLgH,IAAK,W8Br9HH,OAAOoJ,GAAQS,OAAS7R,KAAKyV,OAAOrP,OAAO2V,WAAWsN,UAChDrpB,KAAKyV,OAAOlC,MACZvT,KAAKyV,OAAO7I,SAASuD,a9Bs9H3B,CAAC,CACHnP,IAAK,SACLgH,IAAK,W8B9hIH,SACI/B,SAAS+oB,mBACT/oB,SAASgpB,yBACThpB,SAASipB,sBACTjpB,SAASkpB,uB9B6hId,CACDnuB,IAAK,SACLgH,IAAK,W8BnhIH,GAAI5D,EAAGQ,SAASqB,SAAS0jB,gBACrB,MAAO,GAIX,IAAIpoB,EAAQ,GAYZ,MAXiB,CAAC,SAAU,MAAO,MAE1Byc,KAAK,SAAAoR,GACV,SAAIhrB,EAAGQ,SAASqB,SAAQ,GAAAP,OAAI0pB,EAAJ,sBAA6BhrB,EAAGQ,SAASqB,SAAQ,GAAAP,OAAI0pB,EAAJ,yBACrE7tB,EAAQ6tB,GACD,KAMR7tB,I9BqhIR,CACDP,IAAK,WACLgH,IAAK,W8BnhIH,MAAuB,QAAhBhI,KAAKquB,OAAmB,aAAe,iB9BwhI3CD,EAnLT,G+BngIa,SAASiB,GAAUtZ,GAAmB,IAAduZ,EAAcnnB,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAH,EAC9C,OAAO,IAAIkC,QAAQ,SAACuO,EAASC,GACzB,IAAM0W,EAAQ,IAAIC,MAEZC,EAAU,kBACLF,EAAMG,cACNH,EAAMI,SACZJ,EAAMK,cAAgBN,EAAW1W,EAAUC,GAAQ0W,IAGxDzuB,OAAOuF,OAAOkpB,EAAO,CAAEG,OAAQD,EAASE,QAASF,EAAS1Z,IAAAA,MCFlE,IAAMnD,GAAK,CACPid,aADO,WAEHjgB,EAAY5P,KAAK4M,SAASuD,UAAWnQ,KAAKoG,OAAOkV,UAAUnL,UAAUhB,QAAQ,IAAK,KAAK,GACvFS,EAAY5P,KAAK4M,SAASuD,UAAWnQ,KAAKoG,OAAOqK,WAAW+a,YAAaxrB,KAAK4K,UAAUgI,KAI5F+J,qBAPO,WAO8BxU,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,IACnBnI,KAAKsT,QACftT,KAAKuT,MAAMzF,aAAa,WAAY,IAEpC9N,KAAKuT,MAAM5D,gBAAgB,aAKnCmgB,MAhBO,WAgBC,IAAAhpB,EAAA9G,KAMJ,GAHAA,KAAK4G,UAAU2M,SAGVvT,KAAK4K,UAAUgI,GAOhB,OANA5S,KAAKqW,MAAMqG,KAAX,0BAAAhX,OAA0C1F,KAAKwS,SAA/C,KAAA9M,OAA2D1F,KAAKiH,YAGhE2L,GAAG+J,qBAAqB1Z,KAAKjD,MAAM,GAOlCoE,EAAGY,QAAQhF,KAAK4M,SAASkO,YAE1BA,GAASiL,OAAO9iB,KAAKjD,MAGrBA,KAAK4G,UAAUkU,YAInBlI,GAAG+J,qBAAqB1Z,KAAKjD,MAGzBA,KAAKsT,SACLwI,GAAS6C,MAAM1b,KAAKjD,MAIxBA,KAAKmc,OAAS,KAGdnc,KAAK6gB,MAAQ,KAGb7gB,KAAKgpB,KAAO,KAGZhpB,KAAKkW,QAAU,KAGflW,KAAKygB,MAAQ,KAGb3F,GAAS6F,aAAa1d,KAAKjD,MAG3B8a,GAASgH,WAAW7e,KAAKjD,MAGzB4S,GAAGmd,aAAa9sB,KAAKjD,MAGrB4P,EACI5P,KAAK4M,SAASuD,UACdnQ,KAAKoG,OAAOqK,WAAWqC,IAAIlI,UAC3BwH,GAAQU,KAAO9S,KAAKsT,SAAWtT,KAAK8U,SAIxClF,EAAY5P,KAAK4M,SAASuD,UAAWnQ,KAAKoG,OAAOqK,WAAWyC,QAAQtI,UAAWwH,GAAQc,SAAWlT,KAAKsT,SAGvG1D,EAAY5P,KAAK4M,SAASuD,UAAWnQ,KAAKoG,OAAOqK,WAAWoB,MAAOT,GAAQS,OAG3EjC,EAAY5P,KAAK4M,SAASuD,UAAWnQ,KAAKoG,OAAOqK,WAAW8a,QAASvrB,KAAKoH,OAG1EpH,KAAKgwB,OAAQ,EAGb/e,WAAW,WACPlF,EAAa9I,KAAK6D,EAAMA,EAAKyM,MAAO,UACrC,GAGHX,GAAGqd,SAAShtB,KAAKjD,MAGbA,KAAKgrB,QACLpY,GAAGsd,UAAUjtB,KAAKjD,KAAMA,KAAKgrB,QAAQ,GAAO9Q,MAAM,cAKlDla,KAAKoG,OAAOkW,UACZxB,GAASoH,eAAejf,KAAKjD,OAKrCiwB,SAjHO,WAmHH,IAAIpS,EAAQpG,GAAS,OAAQzX,KAAKoG,QAclC,GAXIhC,EAAGM,OAAO1E,KAAKoG,OAAOyR,SAAWzT,EAAGgB,MAAMpF,KAAKoG,OAAOyR,SACtDgG,GAAK,KAAAnY,OAAS1F,KAAKoG,OAAOyR,QAI9BnW,MAAMwB,KAAKlD,KAAK4M,SAAS2O,QAAQvF,MAAQ,IAAIhP,QAAQ,SAAAmX,GACjDA,EAAOrQ,aAAa,aAAc+P,KAKlC7d,KAAK8lB,QAAS,CACd,IAAM8E,EAASxa,EAAWnN,KAAKjD,KAAM,UAErC,IAAKoE,EAAGY,QAAQ4lB,GACZ,OAIJ,IAAM/S,EAASzT,EAAGgB,MAAMpF,KAAKoG,OAAOyR,OAA6B,QAApB7X,KAAKoG,OAAOyR,MACnDnB,EAASe,GAAS,aAAczX,KAAKoG,QAE3CwkB,EAAO9c,aAAa,QAAS4I,EAAOvH,QAAQ,UAAW0I,MAK/DsY,aAjJO,SAiJMC,GACTxgB,EAAY5P,KAAK4M,SAASuD,UAAWnQ,KAAKoG,OAAOqK,WAAWwa,cAAemF,IAK/EF,UAvJO,SAuJGlF,GAAwB,IAAAvf,EAAAzL,KAE9B,OAF8BmI,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,KAAAA,UAAA,KAEfnI,KAAKgrB,QAKpBhrB,KAAKuT,MAAMzF,aAAa,SAAUkd,GxB1DnC,WAAiB,IAAAjL,EAAA/f,KACpB,OAAO,IAAIqK,QAAQ,SAAAuO,GAAO,OACtBmH,EAAKiQ,MAAQ/e,WAAW2H,EAAS,GAAKtN,EAAGrI,KAAK8c,EAAMA,EAAKnT,SAASuD,UAAW,QAASyI,KACxFoB,KAAK,ewB4DM/W,KAAKjD,MAELga,KAAK,WAAA,OAAMqV,GAAUrE,KACrB9Q,MAAM,SAAAzX,GAMH,MAJIuoB,IAAWvf,EAAKuf,QAChBpY,GAAGud,aAAaltB,KAAKwI,GAAM,GAGzBhJ,IAETuX,KAAK,WAEF,GAAIgR,IAAWvf,EAAKuf,OAChB,MAAM,IAAI9R,MAAM,oDAGvBc,KAAK,WAOF,OANAlZ,OAAOuF,OAAOoF,EAAKmB,SAASoe,OAAOxkB,MAAO,CACtC6pB,gBAAe,QAAA3qB,OAAUslB,EAAV,MAEfsF,eAAgB,KAEpB1d,GAAGud,aAAaltB,KAAKwI,GAAM,GACpBuf,KAjCR3gB,QAAQwO,OAAO,IAAIK,MAAM,wBAuCxC6W,aAjMO,SAiMM7qB,GAAO,IAAA6a,EAAA/f,KAEhB4P,EAAY5P,KAAK4M,SAASuD,UAAWnQ,KAAKoG,OAAOqK,WAAW0a,QAASnrB,KAAKmrB,SAC1Evb,EAAY5P,KAAK4M,SAASuD,UAAWnQ,KAAKoG,OAAOqK,WAAWmF,OAAQ5V,KAAK4V,QACzEhG,EAAY5P,KAAK4M,SAASuD,UAAWnQ,KAAKoG,OAAOqK,WAAW2a,QAASprB,KAAKorB,SAG1E1pB,MAAMwB,KAAKlD,KAAK4M,SAAS2O,QAAQvF,MAAQ,IAAIhP,QAAQ,SAAA1G,GACjDQ,OAAOuF,OAAO/F,EAAQ,CAAEwgB,QAASf,EAAKoL,YAItC/mB,EAAGc,MAAMA,IAAyB,eAAfA,EAAM+B,MAK7B2L,GAAG2d,eAAettB,KAAKjD,OAI3BwwB,aAtNO,SAsNMtrB,GAAO,IAAA8b,EAAAhhB,KAChBA,KAAKqrB,QAAU,CAAC,UAAW,WAAWxiB,SAAS3D,EAAM+B,MAGrDwpB,aAAazwB,KAAK0wB,OAAOrF,SAGzBrrB,KAAK0wB,OAAOrF,QAAUpa,WAClB,WAEIrB,EAAYoR,EAAKpU,SAASuD,UAAW6Q,EAAK5a,OAAOqK,WAAW4a,QAASrK,EAAKqK,SAG1EzY,GAAG2d,eAAettB,KAAK+d,IAE3BhhB,KAAKqrB,QAAU,IAAM,IAK7BkF,eA1OO,SA0OQ1gB,GAAO,IACA8gB,EAAoB3wB,KAAK4M,SAAnCkO,SAER,GAAI6V,GAAmB3wB,KAAKoG,OAAOyiB,aAAc,CAE7C,IAAM+H,EAAkB5wB,KAAKoH,OAASpH,KAAK6wB,aAAe,IAAOC,KAAKC,MAGtE/wB,KAAKuwB,eACD1sB,QACIgM,GACI7P,KAAKqrB,SACLrrB,KAAK4V,QACL+a,EAAgB7P,SAChB6P,EAAgBrF,OAChBsF,OC1PlBI,GjCi6IJ,WiCh6IE,SAAAA,EAAYvb,GAAQxV,EAAAD,KAAAgxB,GAChBhxB,KAAKyV,OAASA,EACdzV,KAAKixB,QAAU,KACfjxB,KAAKkxB,WAAa,KAClBlxB,KAAKmxB,YAAc,KAEnBnxB,KAAKoxB,UAAYpxB,KAAKoxB,UAAU7Q,KAAKvgB,MACrCA,KAAKkkB,WAAalkB,KAAKkkB,WAAW3D,KAAKvgB,MACvCA,KAAKqxB,YAAcrxB,KAAKqxB,YAAY9Q,KAAKvgB,MACzCA,KAAKsxB,WAAatxB,KAAKsxB,WAAW/Q,KAAKvgB,MjC8pK3C,OAxvBAiB,EAAa+vB,EAAW,CAAC,CACvBhwB,IAAK,YACLO,MAAO,SiCp6IC2D,GAAO,IACLuQ,EAAWzV,KAAXyV,OACA7I,EAAa6I,EAAb7I,SACF2kB,EAAOrsB,EAAMioB,QAAUjoB,EAAMioB,QAAUjoB,EAAMma,MAC7CyB,EAAyB,YAAf5b,EAAM+B,KAChBuqB,EAAS1Q,GAAWyQ,IAASvxB,KAAKixB,QAGxC,KAAI/rB,EAAMusB,QAAUvsB,EAAMwsB,SAAWxsB,EAAMysB,SAAWzsB,EAAMmoB,WAMvDjpB,EAAGG,OAAOgtB,GAAf,CAYA,GAAIzQ,EAAS,CAIT,IAAMqI,EAAUljB,SAASmnB,cACzB,GAAIhpB,EAAGY,QAAQmkB,GAAU,CAAA,IACb2B,EAAarV,EAAOrP,OAAOkV,UAA3BwP,SAGR,GAAI3B,IAFavc,EAASqP,OAAlBC,MAEgBjM,EAAQkZ,EAAS2B,GACrC,OAGJ,GAAoB,KAAhB5lB,EAAMma,OAAgBpP,EAAQkZ,EAAS,8BACvC,OAaR,OARuB,CAAC,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IAGrFtgB,SAAS0oB,KACxBrsB,EAAM6C,iBACN7C,EAAMoa,mBAGFiS,GACJ,KAAK,GACL,KAAK,GACL,KAAK,GACL,KAAK,GACL,KAAK,GACL,KAAK,GACL,KAAK,GACL,KAAK,GACL,KAAK,GACL,KAAK,GAEIC,IA5Cb/b,EAAOE,YAAeF,EAAO6G,SAAW,IAAOiV,EAAO,KA+C9C,MAEJ,KAAK,GACL,KAAK,GAEIC,GACD/b,EAAOmc,aAEX,MAEJ,KAAK,GAEDnc,EAAOoc,eAAe,IACtB,MAEJ,KAAK,GAEDpc,EAAOqc,eAAe,IACtB,MAEJ,KAAK,GAEIN,IACD/b,EAAOoL,OAASpL,EAAOoL,OAE3B,MAEJ,KAAK,GAEDpL,EAAOsc,UACP,MAEJ,KAAK,GAEDtc,EAAOiG,SACP,MAEJ,KAAK,GAEDjG,EAAOsG,WAAWlV,SAClB,MAEJ,KAAK,GAEI2qB,GACD/b,EAAOuc,iBAEX,MAEJ,KAAK,GAEDvc,EAAOuT,MAAQvT,EAAOuT,KAqBjB,KAATuI,IAAgB9b,EAAOsG,WAAWkW,aAAexc,EAAOsG,WAAWqL,QACnE3R,EAAOsG,WAAWlV,SAItB7G,KAAKixB,QAAUM,OAEfvxB,KAAKixB,QAAU,QjCy6IpB,CACDjwB,IAAK,aACLO,MAAO,SiCt6IE2D,GACP4V,GAASoJ,WAAWjhB,KAAKjD,KAAKyV,OAAQvQ,KjCy6IvC,CACDlE,IAAK,aACLO,MAAO,WiCv6II,IACDkU,EAAWzV,KAAXyV,OACA7I,EAAa6I,EAAb7I,SAER6I,EAAOrO,OAAQ,EAGfwI,EAAYhD,EAASuD,UAAWsF,EAAOrP,OAAOqK,WAAW8a,SAAS,KjCu6InE,CACDvqB,IAAK,cACLO,MAAO,SiCt6IG2D,GAAO,IACPuQ,EAAWzV,KAAXyV,OACA7I,EAAa6I,EAAb7I,SAKR,GAHA6jB,aAAazwB,KAAKkxB,YAGC,YAAfhsB,EAAM+B,MAAsC,IAAhB/B,EAAMma,MAAtC,CAKmB,YAAfna,EAAM+B,OACNjH,KAAKmxB,YAAcjsB,EAAMgtB,WAI7B,IACUhjB,EAMJijB,EAAajtB,EAAMgtB,UAAYlyB,KAAKmxB,aAAe,GAGzD,GAAmB,UAAfjsB,EAAM+B,MAAqBkrB,EATrBjjB,EAAYuG,EAAOrP,OAAOqK,WAAWH,SAE3CV,EADgBM,EAAYjN,KAAKwS,EAAjB,IAAA/P,OAA6BwJ,IACxBA,GAAW,GAgBpClP,KAAKkxB,WAAajgB,WAAW,WACzB,IAAMkY,EAAUljB,SAASmnB,cAGpBxgB,EAASuD,UAAUJ,SAASoZ,IAIjCvZ,EAAY3J,SAASmnB,cAAe3X,EAAOrP,OAAOqK,WAAWH,UAAU,IACxE,OjCo6IJ,CACDtP,IAAK,SACLO,MAAO,WiCl6Ia,IAAfsF,IAAesB,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,KAAAA,UAAA,GACVsN,EAAWzV,KAAXyV,OAGJA,EAAOrP,OAAO8iB,SAAS1pB,QACvBuL,EAAe9H,KAAKwS,EAAQ3L,OAAQ,gBAAiB9J,KAAKoxB,UAAWvqB,GAAQ,GAIjFkE,EAAe9H,KAAKwS,EAAQxP,SAAS8C,KAAM,QAAS/I,KAAKkkB,WAAYrd,GAGrE2E,EAAKvI,KAAKwS,EAAQxP,SAAS8C,KAAM,aAAc/I,KAAKsxB,YAGpDvmB,EAAe9H,KAAKwS,EAAQxP,SAAS8C,KAAM,qBAAsB/I,KAAKqxB,YAAaxqB,GAAQ,GAAO,KjCm6InG,CACD7F,IAAK,YACLO,MAAO,WiCj6IG,IACAkU,EAAWzV,KAAXyV,OACArP,EAA6BqP,EAA7BrP,OAAQwG,EAAqB6I,EAArB7I,SAAU8jB,EAAWjb,EAAXib,QAGrBtqB,EAAO8iB,SAAS1pB,QAAU4G,EAAO8iB,SAASC,SAC3C7d,EAAGrI,KAAKwS,EAAQ7I,EAASuD,UAAW,gBAAiBnQ,KAAKoxB,WAAW,GAIzE9lB,EAAGrI,KACCwS,EACA7I,EAASuD,UACT,2EACA,SAAAjL,GAAS,IACayrB,EAAoB/jB,EAA9BkO,SAGJ6V,GAAkC,oBAAfzrB,EAAM+B,OACzB0pB,EAAgB7P,SAAU,EAC1B6P,EAAgBrF,OAAQ,GAI5B,IACI8G,EAAQ,EADC,CAAC,aAAc,YAAa,aAAavpB,SAAS3D,EAAM+B,QAIjE2L,GAAG2d,eAAettB,KAAKwS,GAAQ,GAE/B2c,EAAQ3c,EAAOrO,MAAQ,IAAO,KAIlCqpB,aAAaC,EAAO5V,UAGpB4V,EAAO5V,SAAW7J,WAAW,WAAA,OAAM2B,GAAG2d,eAAettB,KAAKwS,GAAQ,IAAQ2c,KAalF,IAcMC,EAAgB,SAAAC,GAElB,IAAKA,EACD,OAAOzd,GAAe5R,KAAKwS,GAG/B,IAAM8c,EAAO3lB,EAASuD,UAAUzI,wBACxBC,EAAkB4qB,EAAlB5qB,MAAOuM,EAAWqe,EAAXre,OAEf,OAAOW,GAAe5R,KAAKwS,EAApB,GAAA/P,OAA+BiC,EAA/B,KAAAjC,OAAwCwO,KAG7Cse,EAAU,WACZ/B,aAAaC,EAAO8B,SACpB9B,EAAO8B,QAAUvhB,WAAWohB,EAAe,KAG/C/mB,EAAGrI,KAAKwS,EAAQ7I,EAASuD,UAAW,iCAAkC,SAAAjL,GAAS,IAAAutB,EAC3Chd,EAAOsG,WAA/Bzb,EADmEmyB,EACnEnyB,OAAQ2xB,EAD2DQ,EAC3DR,YAGhB,GAAKxc,EAAOqQ,SAAWxlB,IAAWsM,EAASuD,UAA3C,CAIA,IAAMuiB,EAAyB,oBAAfxtB,EAAM+B,KARqD0rB,EAUhDN,EAAcK,GAVkCC,EAUnE3d,SAzCM,SAAChB,EAAOgB,EAASnO,GAC/B,GAAK4O,EAAOP,QAAZ,CAIA,IAAM5U,EAASmV,EAAO7I,SAASC,QAAQ+lB,WAC9BlF,EANiClsB,EAM5BwS,EAN4B,GAAA,GAAA6e,EAAArxB,EAOjB+S,GAAetR,KAAKwS,GAPH,GAOnCqd,EAPmCD,EAAA,GAO3BE,EAP2BF,EAAA,GAS1CvyB,EAAOkG,MAAMwsB,SAAWnsB,EAAM,GAAAnB,OAAOgoB,EAAIqF,EAAUD,EAArB,MAAkC,KAChExyB,EAAOkG,MAAMysB,OAASpsB,EAAS,SAAW,MAkC1CqsB,CAb2EP,EAU1D3e,MAGAgB,EAAS0d,GAGrBT,IACGS,EACApnB,EAAGrI,KAAKwS,EAAQ3L,OAAQ,SAAU0oB,GAElCjnB,EAAItI,KAAKwS,EAAQ3L,OAAQ,SAAU0oB,SjC06IhD,CACDxxB,IAAK,QACLO,MAAO,WiCr6ID,IAAAuF,EAAA9G,KACIyV,EAAWzV,KAAXyV,OACA7I,EAAa6I,EAAb7I,SA2CR,GAxCAtB,EAAGrI,KAAKwS,EAAQA,EAAOlC,MAAO,4BAA6B,SAAArO,GAAK,OAAI4V,GAASgH,WAAW7e,KAAKwS,EAAQvQ,KAGrGoG,EAAGrI,KAAKwS,EAAQA,EAAOlC,MAAO,2CAA4C,SAAArO,GAAK,OAC3E4V,GAASoH,eAAejf,KAAKwS,EAAQvQ,KAKzCoG,EAAGrI,KAAKwS,EAAQA,EAAOlC,MAAO,qBAAsB,WAChD/D,EAAa5C,EAASuP,QAAS1G,EAAO0d,UACtC3jB,EAAa5C,EAAS2O,QAAQK,MAAOnG,EAAO0d,YAIhD7nB,EAAGrI,KAAKwS,EAAQA,EAAOlC,MAAO,QAAS,WAE/BkC,EAAOnC,SAAWmC,EAAOX,SAAWW,EAAOrP,OAAO0iB,YAElDrT,EAAOgG,YAKfnQ,EAAGrI,KAAKwS,EAAQA,EAAOlC,MAAO,kCAAmC,SAAArO,GAAK,OAClE4V,GAASiG,eAAe9d,KAAKwS,EAAQvQ,KAIzCoG,EAAGrI,KAAKwS,EAAQA,EAAOlC,MAAO,eAAgB,SAAArO,GAAK,OAAI4V,GAAS6F,aAAa1d,KAAKwS,EAAQvQ,KAG1FoG,EAAGrI,KAAKwS,EAAQA,EAAOlC,MAAO,8CAA+C,SAAArO,GAAK,OAC9E0N,GAAGmd,aAAa9sB,KAAKwS,EAAQvQ,KAIjCoG,EAAGrI,KAAKwS,EAAQA,EAAOlC,MAAO,iCAAkC,SAAArO,GAAK,OAAI0N,GAAG4d,aAAavtB,KAAKwS,EAAQvQ,KAGlGuQ,EAAO7K,UAAUgI,IAAM6C,EAAOrP,OAAOwiB,cAAgBnT,EAAO2d,QAAS,CAErE,IAAMvmB,EAAUuD,EAAWnN,KAAKwS,EAAhB,IAAA/P,OAA4B+P,EAAOrP,OAAOqK,WAAW6B,QAGrE,IAAKlO,EAAGY,QAAQ6H,GACZ,OAIJvB,EAAGrI,KAAKwS,EAAQ7I,EAASuD,UAAW,QAAS,SAAAjL,IACzB,CAAC0H,EAASuD,UAAWtD,GAGxBhE,SAAS3D,EAAM5E,SAAYuM,EAAQkD,SAAS7K,EAAM5E,WAK3DmV,EAAOrO,OAASqO,EAAOrP,OAAOyiB,eAI9BpT,EAAO4d,OACPvsB,EAAKwsB,MAAMpuB,EAAOuQ,EAAOgG,QAAS,WAClC3U,EAAKwsB,MAAMpuB,EAAOuQ,EAAOO,KAAM,SAE/BlP,EAAKwsB,MAAMpuB,EAAOuQ,EAAOmc,WAAY,YAM7Cnc,EAAO7K,UAAUgI,IAAM6C,EAAOrP,OAAO2iB,oBACrCzd,EAAGrI,KACCwS,EACA7I,EAASC,QACT,cACA,SAAA3H,GACIA,EAAM6C,mBAEV,GAKRuD,EAAGrI,KAAKwS,EAAQA,EAAOlC,MAAO,eAAgB,WAE1CkC,EAAOwC,QAAQ/Q,IAAI,CACfiV,OAAQ1G,EAAO0G,OACf0E,MAAOpL,EAAOoL,UAKtBvV,EAAGrI,KAAKwS,EAAQA,EAAOlC,MAAO,aAAc,WAExCuH,GAAS0H,cAAcvf,KAAKwS,EAAQ,SAGpCA,EAAOwC,QAAQ/Q,IAAI,CAAEuZ,MAAOhL,EAAOgL,UAIvCnV,EAAGrI,KAAKwS,EAAQA,EAAOlC,MAAO,gBAAiB,SAAArO,GAE3C4V,GAAS0H,cAAcvf,KAAKwS,EAAQ,UAAW,KAAMvQ,EAAM+G,OAAOiK,WAItE5K,EAAGrI,KAAKwS,EAAQA,EAAOlC,MAAO,sBAAuB,WACjDuH,GAASkK,eAAe/hB,KAAKwS,KAKjC,IAAM8d,EAAc9d,EAAOrP,OAAO+E,OAAOzF,OAAO,CAAC,QAAS,YAAY6X,KAAK,KAE3EjS,EAAGrI,KAAKwS,EAAQA,EAAOlC,MAAOggB,EAAa,SAAAruB,GAAS,IAAAsuB,EAC1BtuB,EAAhB+G,OAAAA,OAD0C,IAAAunB,EACjC,GADiCA,EAI7B,UAAftuB,EAAM+B,OACNgF,EAASwJ,EAAOlC,MAAMkJ,OAG1B1Q,EAAa9I,KAAKwS,EAAQ7I,EAASuD,UAAWjL,EAAM+B,MAAM,EAAMgF,OjC85IrE,CACDjL,IAAK,QACLO,MAAO,SiC35IH2D,EAAOuuB,EAAgBC,GAAkB,IACnCje,EAAWzV,KAAXyV,OACFke,EAAgBle,EAAOrP,OAAOQ,UAAU8sB,GAE1CE,GAAW,EADUxvB,EAAGQ,SAAS+uB,KAKjCC,EAAWD,EAAc1wB,KAAKwS,EAAQvQ,IAItC0uB,GAAYxvB,EAAGQ,SAAS6uB,IACxBA,EAAexwB,KAAKwS,EAAQvQ,KjC85IjC,CACDlE,IAAK,OACLO,MAAO,SiC35IJyD,EAASiC,EAAMwsB,EAAgBC,GAAkC,IAAAjoB,EAAAzL,KAAhBiL,IAAgB9C,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,KAAAA,UAAA,GAC1DsN,EAAWzV,KAAXyV,OACFke,EAAgBle,EAAOrP,OAAOQ,UAAU8sB,GACxCG,EAAmBzvB,EAAGQ,SAAS+uB,GAErCroB,EAAGrI,KACCwS,EACAzQ,EACAiC,EACA,SAAA/B,GAAK,OAAIuG,EAAK6nB,MAAMpuB,EAAOuuB,EAAgBC,IAC3CzoB,IAAY4oB,KjC65IjB,CACD7yB,IAAK,WACLO,MAAO,WiC15IE,IAAAwe,EAAA/f,KACCyV,EAAWzV,KAAXyV,OACA7I,EAAa6I,EAAb7I,SAEFknB,EAAa1iB,GAAQC,KAAO,SAAW,QAsJ7C,GAnJIzE,EAAS2O,QAAQvF,MACjBtU,MAAMwB,KAAK0J,EAAS2O,QAAQvF,MAAMhP,QAAQ,SAAAmX,GACtC4B,EAAKQ,KAAKpC,EAAQ,QAAS1I,EAAOmc,WAAY,UAKtD5xB,KAAKugB,KAAK3T,EAAS2O,QAAQE,QAAS,QAAShG,EAAOgG,QAAS,WAG7Dzb,KAAKugB,KAAK3T,EAAS2O,QAAQG,OAAQ,QAASjG,EAAOiG,OAAQ,UAG3D1b,KAAKugB,KAAK3T,EAAS2O,QAAQI,YAAa,QAASlG,EAAOsc,QAAS,eAGjE/xB,KAAKugB,KACD3T,EAAS2O,QAAQK,KACjB,QACA,WACInG,EAAOoL,OAASpL,EAAOoL,OAE3B,QAIJ7gB,KAAKugB,KAAK3T,EAAS2O,QAAQO,SAAU,QAAS,WAAA,OAAMrG,EAAOuc,mBAG3DhyB,KAAKugB,KACD3T,EAAS2O,QAAQ0J,SACjB,QACA,WACIlZ,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,aAE5C,YAIJvT,KAAKugB,KACD3T,EAAS2O,QAAQQ,WACjB,QACA,WACItG,EAAOsG,WAAWlV,UAEtB,cAIJ7G,KAAKugB,KACD3T,EAAS2O,QAAQzI,IACjB,QACA,WACI2C,EAAO3C,IAAM,UAEjB,OAIJ9S,KAAKugB,KAAK3T,EAAS2O,QAAQrI,QAAS,QAASuC,EAAOvC,QAAS,WAG7DlT,KAAKugB,KAAK3T,EAAS2O,QAAQM,SAAU,QAAS,SAAA3W,GAE1CA,EAAMoa,kBAENxE,GAASoJ,WAAWjhB,KAAKwS,EAAQvQ,KAMrClF,KAAKugB,KACD3T,EAAS2O,QAAQM,SACjB,QACA,SAAA3W,GACI,IAAMqsB,EAAOrsB,EAAMma,MAGd,CAAC,GAAI,IAAIxW,SAAS0oB,KAKV,KAATA,GAMJrsB,EAAM6C,iBAGN7C,EAAMoa,kBAGNxE,GAASoJ,WAAWjhB,KAAKwS,EAAQvQ,IAX7B4V,GAAS+E,mBAAmB5c,KAAKwS,EAAQ,MAAM,KAavD,MACA,GAIJzV,KAAKugB,KAAK3T,EAASiP,SAAS6B,KAAM,UAAW,SAAAxY,GACrB,KAAhBA,EAAMma,OACNvE,GAASoJ,WAAWjhB,KAAKwS,EAAQvQ,KAKzClF,KAAKugB,KAAK3T,EAASqP,OAAOC,KAAM,sBAAuB,SAAAhX,GACnD,IAAMqtB,EAAO3lB,EAASoP,SAAStU,wBACzBP,EAAW,IAAMorB,EAAK5qB,OAAUzC,EAAM2c,MAAQ0Q,EAAK1qB,MACzD3C,EAAM6uB,cAAcjmB,aAAa,aAAc3G,KAInDnH,KAAKugB,KAAK3T,EAASqP,OAAOC,KAAM,sDAAuD,SAAAhX,GACnF,IAAMgX,EAAOhX,EAAM6uB,cACbxC,EAAOrsB,EAAMioB,QAAUjoB,EAAMioB,QAAUjoB,EAAMma,MAGnD,IAAIjb,EAAGuF,cAAczE,IAAoB,KAATqsB,GAAwB,KAATA,EAA/C,CAKA9b,EAAOob,aAAeC,KAAKC,MAG3B,IAAM/a,EAAOkG,EAAK8X,aAVA,kBAYZzxB,EAAO,CAAC,UAAW,WAAY,SAASsG,SAAS3D,EAAM+B,MAGzD+O,GAAQzT,GACR2Z,EAAKvM,gBAhBS,kBAiBd8F,EAAOO,SACCzT,GAAQkT,EAAO0V,UACvBjP,EAAKpO,aAnBS,iBAmBe,IAC7B2H,EAAO+F,YAOXpK,GAAQS,MAAO,CACf,IAAMoK,EAAS/L,EAAYjN,KAAKwS,EAAQ,uBACxC/T,MAAMwB,KAAK+Y,GAAQjV,QAAQ,SAAAtD,GAAK,OAAIqc,EAAKQ,KAAK7c,EAAOowB,EAAY,SAAA5uB,GAAK,OAAI8L,EAAQ9L,EAAM5E,YAI5FN,KAAKugB,KACD3T,EAASqP,OAAOC,KAChB4X,EACA,SAAA5uB,GACI,IAAMgX,EAAOhX,EAAM6uB,cAEfE,EAAS/X,EAAK3U,aAAa,cAE3BnD,EAAGgB,MAAM6uB,KACTA,EAAS/X,EAAK3a,OAGlB2a,EAAKvM,gBAAgB,cAErB8F,EAAOE,YAAese,EAAS/X,EAAKtW,IAAO6P,EAAO6G,UAEtD,QAIJtc,KAAKugB,KAAK3T,EAASoP,SAAU,kCAAmC,SAAA9W,GAAK,OACjE4V,GAAS0G,kBAAkBve,KAAKwS,EAAQvQ,KAK5ClF,KAAKugB,KAAK3T,EAASoP,SAAU,sBAAuB,SAAA9W,GAAS,IACjDwmB,EAAsBjW,EAAtBiW,kBAEJA,GAAqBA,EAAkBwI,QACvCxI,EAAkByI,UAAUjvB,KAKpClF,KAAKugB,KAAK3T,EAASoP,SAAU,mBAAoB,WAAM,IAC3C0P,EAAsBjW,EAAtBiW,kBAEJA,GAAqBA,EAAkBwI,QACvCxI,EAAkB0I,SAAQ,GAAO,KAKzCp0B,KAAKugB,KAAK3T,EAASoP,SAAU,uBAAwB,SAAA9W,GAAS,IAClDwmB,EAAsBjW,EAAtBiW,kBAEJA,GAAqBA,EAAkBwI,QACvCxI,EAAkB2I,eAAenvB,KAIzClF,KAAKugB,KAAK3T,EAASoP,SAAU,mBAAoB,SAAA9W,GAAS,IAC9CwmB,EAAsBjW,EAAtBiW,kBAEJA,GAAqBA,EAAkBwI,QACvCxI,EAAkB4I,aAAapvB,KAKnCkM,GAAQK,UACR/P,MAAMwB,KAAKgN,EAAYjN,KAAKwS,EAAQ,wBAAwBzO,QAAQ,SAAAhC,GAChE+a,EAAKQ,KAAKvb,EAAS,QAAS,SAAAE,GAAK,OAAI4V,GAAS4D,gBAAgBzb,KAAKwS,EAAQvQ,EAAM5E,YAMrFmV,EAAOrP,OAAOuiB,eAAiBvkB,EAAGY,QAAQ4H,EAASwP,QAAQE,WAC3Dtc,KAAKugB,KAAK3T,EAASwP,QAAQzG,YAAa,QAAS,WAElB,IAAvBF,EAAOE,cAIXF,EAAOrP,OAAO4b,YAAcvM,EAAOrP,OAAO4b,WAE1ClH,GAASgH,WAAW7e,KAAKwS,MAKjCzV,KAAKugB,KACD3T,EAASqP,OAAOE,OAChB2X,EACA,SAAA5uB,GACIuQ,EAAO0G,OAASjX,EAAM5E,OAAOiB,OAEjC,UAIJvB,KAAKugB,KAAK3T,EAASkO,SAAU,wBAAyB,SAAA5V,GAClD0H,EAASkO,SAASwQ,OAAS7V,EAAOrO,OAAwB,eAAflC,EAAM+B,OAIrDjH,KAAKugB,KAAK3T,EAASkO,SAAU,oDAAqD,SAAA5V,GAC9E0H,EAASkO,SAASgG,QAAU,CAAC,YAAa,cAAcjY,SAAS3D,EAAM+B,QAI3EjH,KAAKugB,KAAK3T,EAASkO,SAAU,UAAW,WAAM,IAClC1U,EAAmBqP,EAAnBrP,OAAQsqB,EAAWjb,EAAXib,OAGhB9gB,EAAYhD,EAASkO,SAAU1U,EAAOqK,WAAWgb,cAAc,GAG/D7Y,GAAG2d,eAAettB,KAAKwS,GAAQ,GAG/BxE,WAAW,WACPrB,EAAYhD,EAASkO,SAAU1U,EAAOqK,WAAWgb,cAAc,IAChE,GAGH,IAAM2G,EAAQrS,EAAK3Y,MAAQ,IAAO,IAGlCqpB,aAAaC,EAAO5V,UAGpB4V,EAAO5V,SAAW7J,WAAW,WAAA,OAAM2B,GAAG2d,eAAettB,KAAKwS,GAAQ,IAAQ2c,KAI9EpyB,KAAKugB,KACD3T,EAASqP,OAAOE,OAChB,QACA,SAAAjX,GAGI,IAAMwV,EAAWxV,EAAMqvB,kCAHlBC,EAAAhzB,EAKU,CAAC0D,EAAMuvB,QAASvvB,EAAMwvB,QAAQxrB,IAAI,SAAA3H,GAAK,OAAKmZ,GAAYnZ,EAAQA,IAL1E,GAKEisB,EALFgH,EAAA,GAKK9G,EALL8G,EAAA,GAOCG,EAAYhvB,KAAKivB,KAAKjvB,KAAKkvB,IAAIrH,GAAK7nB,KAAKkvB,IAAInH,GAAKF,EAAIE,GAG5DjY,EAAOoc,eAAe8C,EAAY,IAV7B,IAaGxY,EAAW1G,EAAOlC,MAAlB4I,QACW,IAAdwY,GAAmBxY,EAAS,IAAsB,IAAfwY,GAAoBxY,EAAS,IACjEjX,EAAM6C,kBAGd,UACA,OjCo2IDipB,EAvwBT,GA0wB2C,oBAAf8D,WAA6BA,WAA+B,oBAAXhrB,OAAyBA,OAA2B,oBAAXtK,OAAyBA,OAAyB,oBAATM,MAAuBA,KAMtL,IAAIi1B,GAJJ,SAA8BC,EAAIr1B,GACjC,OAAiCq1B,EAA1Br1B,EAAS,CAAED,QAAS,IAAiBC,EAAOD,SAAUC,EAAOD,QAGpDu1B,CAAqB,SAAUt1B,EAAQD,GkC1rKtDC,EAAAA,QAII,WAMR,IAAIu1B,EAAU,aACVC,EAAgB,GAChBC,EAAoB,GACpBC,EAAsB,GAmD1B,SAASC,EAAQC,EAAUC,GAEzB,GAAKD,EAAL,CAEA,IAAIE,EAAIJ,EAAoBE,GAM5B,GAHAH,EAAkBG,GAAYC,EAGzBC,EAGL,KAAOA,EAAEh1B,QACPg1B,EAAE,GAAGF,EAAUC,GACfC,EAAEC,OAAO,EAAG,IAUhB,SAASC,EAAiB/pB,EAAMgqB,GAE1BhqB,EAAK3I,OAAM2I,EAAO,CAACiqB,QAASjqB,IAG5BgqB,EAAan1B,QAASmL,EAAK6Q,OAASyY,GAASU,IAC3ChqB,EAAKiqB,SAAWX,GAAStpB,GASjC,SAASkqB,EAASzpB,EAAM0pB,EAAYnqB,EAAMoqB,GACxC,IAKIC,EACAvrB,EANAwrB,EAAMjwB,SACNkwB,EAAQvqB,EAAKuqB,MACbC,GAAYxqB,EAAKyqB,YAAc,GAAK,EACpCC,EAAmB1qB,EAAK2qB,QAAUrB,EAClCsB,EAAenqB,EAAK8C,QAAQ,cAAe,IAI/C6mB,EAAWA,GAAY,EAEnB,iBAAiBtkB,KAAKrF,KAExB3B,EAAIwrB,EAAInoB,cAAc,SACpBwe,IAAM,aACR7hB,EAAEkb,KAAO4Q,GAGTP,EAAgB,cAAevrB,IAGVA,EAAE+rB,UACrBR,EAAgB,EAChBvrB,EAAE6hB,IAAM,UACR7hB,EAAEgsB,GAAK,UAEA,+BAA+BhlB,KAAKrF,IAE7C3B,EAAIwrB,EAAInoB,cAAc,QACpBgI,IAAMygB,IAGR9rB,EAAIwrB,EAAInoB,cAAc,WACpBgI,IAAM1J,EACR3B,EAAEyrB,WAAkBl0B,IAAVk0B,GAA6BA,GAGzCzrB,EAAEglB,OAAShlB,EAAEilB,QAAUjlB,EAAEisB,aAAe,SAAUC,GAChD,IAAI3c,EAAS2c,EAAG3vB,KAAK,GAIrB,GAAIgvB,EACF,IACOvrB,EAAEmsB,MAAMC,QAAQr2B,SAAQwZ,EAAS,KACtC,MAAOuT,GAGO,IAAVA,EAAE+D,OAAYtX,EAAS,KAK/B,GAAc,KAAVA,GAKF,IAHA+b,GAAY,GAGGI,EACb,OAAON,EAASzpB,EAAM0pB,EAAYnqB,EAAMoqB,QAErC,GAAa,WAATtrB,EAAE6hB,KAA4B,SAAR7hB,EAAEgsB,GAEjC,OAAOhsB,EAAE6hB,IAAM,aAIjBwJ,EAAW1pB,EAAM4N,EAAQ2c,EAAGG,oBAII,IAA9BT,EAAiBjqB,EAAM3B,IAAcwrB,EAAInI,KAAKzgB,YAAY5C,GAiDhE,SAASssB,EAAOC,EAAOC,EAAMC,GAC3B,IAAI5B,EACA3pB,EASJ,GANIsrB,GAAQA,EAAKjoB,OAAMsmB,EAAW2B,GAGlCtrB,GAAQ2pB,EAAW4B,EAAOD,IAAS,GAG/B3B,EAAU,CACZ,GAAIA,KAAYJ,EACd,KAAM,SAENA,EAAcI,IAAY,EAI9B,SAAS6B,EAAOxe,EAASC,IA3D3B,SAAmBoe,EAAOlB,EAAYnqB,GAIpC,IAGIopB,EACAx0B,EAJA62B,GAFJJ,EAAQA,EAAMz0B,KAAOy0B,EAAQ,CAACA,IAEPx2B,OACnB+sB,EAAI6J,EACJ7B,EAAgB,GAqBpB,IAhBAR,EAAK,SAAS3oB,EAAM4N,EAAQ8c,GAM1B,GAJc,KAAV9c,GAAeub,EAAchzB,KAAK6J,GAIxB,KAAV4N,EAAe,CACjB,IAAI8c,EACC,OADiBvB,EAAchzB,KAAK6J,KAI3CgrB,GACiBtB,EAAWP,IAIzBh1B,EAAE,EAAGA,EAAIgtB,EAAGhtB,IAAKs1B,EAASmB,EAAMz2B,GAAIw0B,EAAIppB,GAiC3C0rB,CAAUL,EAAO,SAAUzB,GAEzBG,EAAiB/pB,EAAM4pB,GAGnB5c,GACF+c,EAAiB,CAACE,QAASjd,EAAS6D,MAAO5D,GAAS2c,GAItDF,EAAQC,EAAUC,IACjB5pB,GAGL,GAAIA,EAAK2rB,cAAe,OAAO,IAAIltB,QAAQ+sB,GACtCA,IAiDP,OAxCAJ,EAAOhH,MAAQ,SAAewH,EAAM5rB,GAOlC,OA9PF,SAAmB6rB,EAAW1B,GAE5B0B,EAAYA,EAAUj1B,KAAOi1B,EAAY,CAACA,GAE1C,IAGIzC,EACAO,EACAmC,EALA9B,EAAe,GACfp1B,EAAIi3B,EAAUh3B,OACd42B,EAAa72B,EAejB,IARAw0B,EAAK,SAAUO,EAAUC,GACnBA,EAAc/0B,QAAQm1B,EAAapzB,KAAK+yB,KAE5C8B,GACiBtB,EAAWH,IAIvBp1B,KACL+0B,EAAWkC,EAAUj3B,IAGrBk3B,EAAItC,EAAkBG,IAEpBP,EAAGO,EAAUmC,IAKXrC,EAAoBE,GAAYF,EAAoBE,IAAa,IACnE/yB,KAAKwyB,GAwNT2C,CAAUH,EAAM,SAAU5B,GAExBD,EAAiB/pB,EAAMgqB,KAGlBoB,GAQTA,EAAOz0B,KAAO,SAAcgzB,GAC1BD,EAAQC,EAAU,KAOpByB,EAAO9M,MAAQ,WACbiL,EAAgB,GAChBC,EAAoB,GACpBC,EAAsB,IAQxB2B,EAAOY,UAAY,SAAmBrC,GACpC,OAAOA,KAAYJ,GAKd6B,EApTcv3B,KCEN,SAASo4B,GAAWvtB,GAC/B,OAAO,IAAID,QAAQ,SAACuO,EAASC,GACzBme,GAAO1sB,EAAK,CACRurB,QAASjd,EACT6D,MAAO5D,MCsBnB,SAASif,GAAoB9hB,GACrBA,IAAShW,KAAKyU,MAAMsjB,YACpB/3B,KAAKyU,MAAMsjB,WAAY,GAEvB/3B,KAAKuT,MAAMqC,SAAWI,IACtBhW,KAAKuT,MAAMqC,QAAUI,EACrBjK,EAAa9I,KAAKjD,KAAMA,KAAKuT,MAAOyC,EAAO,OAAS,UAI5D,IAAMuB,GAAQ,CACVoH,MADU,WACF,IAAA7X,EAAA9G,KAEJ4P,EAAY5P,KAAK4M,SAASC,QAAS7M,KAAKoG,OAAOqK,WAAWgE,OAAO,GAGjEI,GAAe5R,KAAKjD,MAGfoE,EAAGE,OAAOwF,OAAOkuB,OASlBzgB,GAAMyY,MAAM/sB,KAAKjD,MARjB63B,GAAW73B,KAAKoG,OAAOyf,KAAKtO,MAAMoT,KAC7B3Q,KAAK,WACFzC,GAAMyY,MAAM/sB,KAAK6D,KAEpBoT,MAAM,SAAAuC,GACH3V,EAAKuP,MAAMqG,KAAK,uCAAwCD,MAQxEuT,MAvBU,WAuBF,IAAAvkB,EAAAzL,KACEyV,EAASzV,KACToG,EAASqP,EAAOrP,OAAOmR,MAGvBoP,EAASD,GACXna,EACI,GACA,CACIyc,KAAMvT,EAAOrP,OAAO4iB,KAAK5B,OACzBqB,SAAUhT,EAAOgT,SACjB5H,MAAOpL,EAAOoL,MACdoX,QAAS,QACTxlB,aAAczS,KAAKoG,OAAO2V,WAAWsN,WAEzCjjB,IAKJqG,EAASgJ,EAAOlC,MAAMhM,aAAa,OAGnCnD,EAAGgB,MAAMqH,KACTA,EAASgJ,EAAOlC,MAAMhM,aAAakO,EAAOrP,OAAOqH,WAAWgH,MAAMlF,KAGtE,IA1ESjF,EA0EHiF,GA1EGjF,EA0EUmC,EAzEnBrI,EAAGgB,MAAMkF,GACF,KAGPlG,EAAGG,OAAOC,OAAO8F,IACVA,EAIJA,EAAI7E,MADG,mCACYmR,OAAOshB,GAAK5tB,GAkE5BsgB,EAAS7c,EAAc,UACvBgI,EAAMW,GAAOjB,EAAOrP,OAAOyf,KAAKtO,MAAMqT,OAAQrb,EAAIoX,GACxDiE,EAAO9c,aAAa,MAAOiI,GAC3B6U,EAAO9c,aAAa,kBAAmB,IACvC8c,EAAO9c,aAAa,oBAAqB,IACzC8c,EAAO9c,aAAa,QAAS,YAlCzB,IAuCEjB,EAAUkB,EAAc,MAAO,CAAEid,OAFpBvV,EAAXuV,OAEuC1b,MAAOmG,EAAOrP,OAAOqK,WAAWsa,iBAC/Ele,EAAQS,YAAYsd,GACpBnV,EAAOlC,MAAQ/E,EAAe3B,EAAS4I,EAAOlC,OAG9CmF,GAAMhC,GAAOjB,EAAOrP,OAAOyf,KAAKtO,MAAM5E,IAAKpD,GAAK,QAAQyK,KAAK,SAAAf,GACzD,IAAI7U,EAAGgB,MAAM6T,GAAb,CAKA,IAAM3O,EAAM,IAAIC,IAAI0O,EAAS,GAAGkf,iBAGhC7tB,EAAI8tB,SAAJ,GAAA1yB,OAAkB4E,EAAI8tB,SAAShtB,MAAM,KAAK,GAA1C,QAGAwH,GAAGsd,UAAUjtB,KAAKwS,EAAQnL,EAAIsb,MAAM1L,MAAM,iBAK9CzE,EAAOhB,MAAQ,IAAI3K,OAAOkuB,MAAMK,OAAOzN,EAAQ,CAC3ClC,UAAWjT,EAAOrP,OAAOsiB,UACzB7H,MAAOpL,EAAOoL,QAGlBpL,EAAOlC,MAAMqC,QAAS,EACtBH,EAAOlC,MAAMoC,YAAc,EAGvBF,EAAO7K,UAAUgI,IACjB6C,EAAOhB,MAAM6jB,mBAIjB7iB,EAAOlC,MAAMyC,KAAO,WAEhB,OADA8hB,GAAoB70B,KAAKwS,GAAQ,GAC1BA,EAAOhB,MAAMuB,QAGxBP,EAAOlC,MAAMiI,MAAQ,WAEjB,OADAsc,GAAoB70B,KAAKwS,GAAQ,GAC1BA,EAAOhB,MAAM+G,SAGxB/F,EAAOlC,MAAMglB,KAAO,WAChB9iB,EAAO+F,QACP/F,EAAOE,YAAc,GAvFrB,IA2FEA,EAAgBF,EAAOlC,MAAvBoC,YACN7U,OAAOC,eAAe0U,EAAOlC,MAAO,cAAe,CAC/CvL,IAD+C,WAE3C,OAAO2N,GAEXzO,IAJ+C,SAI3CsT,GAAM,IAIE/F,EAAiCgB,EAAjChB,MAAOlB,EAA0BkC,EAA1BlC,MAAOqC,EAAmBH,EAAnBG,OAAQuG,EAAW1G,EAAX0G,OACxBqc,EAAe5iB,IAAWnB,EAAMsjB,UAGtCxkB,EAAM0O,SAAU,EAChBlW,EAAa9I,KAAKwS,EAAQlC,EAAO,WAGjClJ,QAAQuO,QAAQ4f,GAAgB/jB,EAAMgkB,UAAU,IAE3Cze,KAAK,WAAA,OAAMvF,EAAMikB,eAAele,KAEhCR,KAAK,WAAA,OAAMwe,GAAgB/jB,EAAM+G,UAEjCxB,KAAK,WAAA,OAAMwe,GAAgB/jB,EAAMgkB,UAAUtc,KAC3CjC,MAAM,iBAOnB,IAAIuG,EAAQhL,EAAOrP,OAAOqa,MAAMwI,SAChCnoB,OAAOC,eAAe0U,EAAOlC,MAAO,eAAgB,CAChDvL,IADgD,WAE5C,OAAOyY,GAEXvZ,IAJgD,SAI5CxD,GACA+R,EAAOhB,MACFkkB,gBAAgBj1B,GAChBsW,KAAK,WACFyG,EAAQ/c,EACRqI,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,gBAE3C2G,MAAM,SAAAuC,GAEgB,UAAfA,EAAMmc,MACN9d,GAAS8I,aAAa3gB,KAAKwS,EAAQ,SAzInD,IAgJE0G,EAAW1G,EAAOrP,OAAlB+V,OACNrb,OAAOC,eAAe0U,EAAOlC,MAAO,SAAU,CAC1CvL,IAD0C,WAEtC,OAAOmU,GAEXjV,IAJ0C,SAItCxD,GACA+R,EAAOhB,MAAMgkB,UAAU/0B,GAAOsW,KAAK,WAC/BmC,EAASzY,EACTqI,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,qBAxJhD,IA8JEsN,EAAUpL,EAAOrP,OAAjBya,MACN/f,OAAOC,eAAe0U,EAAOlC,MAAO,QAAS,CACzCvL,IADyC,WAErC,OAAO6Y,GAEX3Z,IAJyC,SAIrCxD,GACA,IAAMmD,IAASzC,EAAGO,QAAQjB,IAASA,EAEnC+R,EAAOhB,MAAMgkB,UAAU5xB,EAAS,EAAI4O,EAAOrP,OAAO+V,QAAQnC,KAAK,WAC3D6G,EAAQha,EACRkF,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,qBAxKhD,IA6LAslB,EAfE7P,EAASvT,EAAOrP,OAAhB4iB,KACNloB,OAAOC,eAAe0U,EAAOlC,MAAO,OAAQ,CACxCvL,IADwC,WAEpC,OAAOghB,GAEX9hB,IAJwC,SAIpCxD,GACA,IAAMmD,EAASzC,EAAGO,QAAQjB,GAASA,EAAQ+R,EAAOrP,OAAO4iB,KAAK5B,OAE9D3R,EAAOhB,MAAMqkB,QAAQjyB,GAAQmT,KAAK,WAC9BgP,EAAOniB,OAOnB4O,EAAOhB,MACFskB,cACA/e,KAAK,SAAAzY,GACFs3B,EAAat3B,EACbuZ,GAASkK,eAAe/hB,KAAKwS,KAEhCyE,MAAM,SAAAuC,GACHhR,EAAK4K,MAAMqG,KAAKD,KAGxB3b,OAAOC,eAAe0U,EAAOlC,MAAO,aAAc,CAC9CvL,IAD8C,WAE1C,OAAO6wB,KAKf/3B,OAAOC,eAAe0U,EAAOlC,MAAO,QAAS,CACzCvL,IADyC,WAErC,OAAOyN,EAAOE,cAAgBF,EAAO6G,YAK7CjS,QAAQ4f,IAAI,CAACxU,EAAOhB,MAAMukB,gBAAiBvjB,EAAOhB,MAAMwkB,mBAAmBjf,KAAK,SAAAkf,GAAc,IAAAC,EAAA33B,EAClE03B,EADkE,GACnFvxB,EADmFwxB,EAAA,GAC5EjlB,EAD4EilB,EAAA,GAE1F1jB,EAAOhB,MAAMT,MAAQ,CAACrM,EAAOuM,GAC7BW,GAAe5R,KAAKwI,KAIxBgK,EAAOhB,MAAM2kB,aAAa3jB,EAAOrP,OAAOsiB,WAAW1O,KAAK,SAAAqf,GACpD5jB,EAAOrP,OAAOsiB,UAAY2Q,IAI9B5jB,EAAOhB,MAAM6kB,gBAAgBtf,KAAK,SAAAnC,GAC9BpC,EAAOrP,OAAOyR,MAAQA,EACtBjF,GAAGqd,SAAShtB,KAAKwI,KAIrBgK,EAAOhB,MAAM8kB,iBAAiBvf,KAAK,SAAAzY,GAC/BoU,EAAcpU,EACdwK,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,gBAI5CkC,EAAOhB,MAAM+kB,cAAcxf,KAAK,SAAAzY,GAC5BkU,EAAOlC,MAAM+I,SAAW/a,EACxBwK,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,oBAI5CkC,EAAOhB,MAAMglB,gBAAgBzf,KAAK,SAAAuJ,GAC9B9N,EAAOlC,MAAME,WAAa8P,EAC1BzH,GAAS6C,MAAM1b,KAAKwS,KAGxBA,EAAOhB,MAAMnJ,GAAG,YAAa,SAAAqC,GAAmB,IAAA+rB,EAAA/rB,EAAhBya,KACtBuR,QADsC,IAAAD,EAAT,GAASA,GAClBxwB,IAAI,SAAAW,GAAG,OnBpPtC,SAAmB4C,GACtB,IAAMmtB,EAAW3zB,SAAS4zB,yBACpB70B,EAAUiB,SAAS8H,cAAc,OAGvC,OAFA6rB,EAAStsB,YAAYtI,GACrBA,EAAQqS,UAAY5K,EACbmtB,EAAShH,WAAW3kB,UmB+OkB6rB,CAAUjwB,EAAImE,QACnD8N,GAAS6L,WAAW1kB,KAAKwS,EAAQkkB,KAGrClkB,EAAOhB,MAAMnJ,GAAG,SAAU,YAEtBmK,EAAOhB,MAAMslB,YAAY/f,KAAK,SAAApE,GAC1BkiB,GAAoB70B,KAAKwS,GAASG,GAC7BA,GACD7J,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,aAI5CnP,EAAGY,QAAQyQ,EAAOhB,MAAMzP,UAAYyQ,EAAO7K,UAAUgI,KACvC6C,EAAOhB,MAAMzP,QAIrB8I,aAAa,YAAa,KAIxC2H,EAAOhB,MAAMnJ,GAAG,OAAQ,WACpBwsB,GAAoB70B,KAAKwS,GAAQ,GACjC1J,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,aAG5CkC,EAAOhB,MAAMnJ,GAAG,QAAS,WACrBwsB,GAAoB70B,KAAKwS,GAAQ,KAGrCA,EAAOhB,MAAMnJ,GAAG,aAAc,SAAAqO,GAC1BlE,EAAOlC,MAAM0O,SAAU,EACvBtM,EAAcgE,EAAKqgB,QACnBjuB,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,gBAG5CkC,EAAOhB,MAAMnJ,GAAG,WAAY,SAAAqO,GACxBlE,EAAOlC,MAAM+N,SAAW3H,EAAKxS,QAC7B4E,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,YAGL,IAA/B0mB,SAAStgB,EAAKxS,QAAS,KACvB4E,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,kBAK5CkC,EAAOhB,MAAM+kB,cAAcxf,KAAK,SAAAzY,GACxBA,IAAUkU,EAAOlC,MAAM+I,WACvB7G,EAAOlC,MAAM+I,SAAW/a,EACxBwK,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,uBAKpDkC,EAAOhB,MAAMnJ,GAAG,SAAU,WACtBmK,EAAOlC,MAAM0O,SAAU,EACvBlW,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,YAG5CkC,EAAOhB,MAAMnJ,GAAG,QAAS,WACrBmK,EAAOlC,MAAMqC,QAAS,EACtB7J,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,WAG5CkC,EAAOhB,MAAMnJ,GAAG,QAAS,SAAAW,GACrBwJ,EAAOlC,MAAMkJ,MAAQxQ,EACrBF,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,WAI5CtC,WAAW,WAAA,OAAM2B,GAAGkd,MAAM7sB,KAAKwS,IAAS,KCzWhD,SAASqiB,GAAoB9hB,GACrBA,IAAShW,KAAKyU,MAAMsjB,YACpB/3B,KAAKyU,MAAMsjB,WAAY,GAEvB/3B,KAAKuT,MAAMqC,SAAWI,IACtBhW,KAAKuT,MAAMqC,QAAUI,EACrBjK,EAAa9I,KAAKjD,KAAMA,KAAKuT,MAAOyC,EAAO,OAAS,UAI5D,SAASkkB,GAAQ9zB,GACb,OAAIA,EAAOkmB,SACA,mCAGsB,UAA7BxiB,OAAOoR,SAAS6L,SACT,8BADX,EAQJ,IAAMvP,GAAU,CACZmH,MADY,WACJ,IAAA7X,EAAA9G,KAKJ,GAHA4P,EAAY5P,KAAK4M,SAASC,QAAS7M,KAAKoG,OAAOqK,WAAWgE,OAAO,GAG7DrQ,EAAGE,OAAOwF,OAAOqwB,KAAO/1B,EAAGQ,SAASkF,OAAOqwB,GAAG9B,QAC9C7gB,GAAQwY,MAAM/sB,KAAKjD,UAChB,CAEH,IAAMgL,EAAWlB,OAAOswB,wBAGxBtwB,OAAOswB,wBAA0B,WAEzBh2B,EAAGQ,SAASoG,IACZA,IAGJwM,GAAQwY,MAAM/sB,KAAK6D,IAIvB+wB,GAAW73B,KAAKoG,OAAOyf,KAAKrO,QAAQmT,KAAKzQ,MAAM,SAAAuC,GAC3C3V,EAAKuP,MAAMqG,KAAK,6BAA8BD,OAM1D4d,SA9BY,SA8BHC,GAAS,IAAA7uB,EAAAzL,KAGd0Y,GAFYhC,GAAO1W,KAAKoG,OAAOyf,KAAKrO,QAAQ7E,IAAK2nB,IAG5CtgB,KAAK,SAAAL,GACF,GAAIvV,EAAGE,OAAOqV,GAAO,CAAA,IACT9B,EAAyB8B,EAAzB9B,MAAO3D,EAAkByF,EAAlBzF,OAAQvM,EAAUgS,EAAVhS,MAGvB8D,EAAKrF,OAAOyR,MAAQA,EACpBjF,GAAGqd,SAAShtB,KAAKwI,GAGjBA,EAAKgJ,MAAMT,MAAQ,CAACrM,EAAOuM,GAG/BW,GAAe5R,KAAKwI,KAEvByO,MAAM,WAEHrF,GAAe5R,KAAKwI,MAKhCukB,MAvDY,WAwDR,IAAMva,EAASzV,KAETu6B,EAAY9kB,EAAOlC,OAASkC,EAAOlC,MAAMhM,aAAa,MAC5D,GAAKnD,EAAGgB,MAAMm1B,KAAcA,EAAU/vB,WAAW,YAAjD,CAKA,IAAIiC,EAASgJ,EAAOlC,MAAMhM,aAAa,OAGnCnD,EAAGgB,MAAMqH,KACTA,EAASgJ,EAAOlC,MAAMhM,aAAavH,KAAKoG,OAAOqH,WAAWgH,MAAMlF,KAIpE,IAzGSjF,EpBTU+jB,EoBkHbiM,GAzGGhwB,EAyGemC,EAxGxBrI,EAAGgB,MAAMkF,GACF,KAIJA,EAAI7E,MADG,gEACYmR,OAAOshB,GAAK5tB,GAoG5BiF,GpBnHa8e,EoBmHG5Y,EAAOjD,SpBlHjC,GAAA9M,OAAU2oB,EAAV,KAAA3oB,OAAoBC,KAAKsgB,MAAsB,IAAhBtgB,KAAKugB,YoBsH1B/V,EAAYpC,EAAc,MAAO,CAAEwB,GAAAA,EAAIyb,OAF1BvV,EAAXuV,SAGRvV,EAAOlC,MAAQ/E,EAAe2B,EAAWsF,EAAOlC,OAGhD,IAAMinB,EAAY,SAAAxrB,GAAC,MAAA,0BAAAtJ,OAA8B40B,EAA9B,KAAA50B,OAAyCsJ,EAAzC,gBAGnBqgB,GAAUmL,EAAU,UAAW,KAC1BtgB,MAAM,WAAA,OAAMmV,GAAUmL,EAAU,MAAO,OACvCtgB,MAAM,WAAA,OAAMmV,GAAUmL,EAAU,SAChCxgB,KAAK,SAAAuV,GAAK,OAAI3c,GAAGsd,UAAUjtB,KAAKwS,EAAQ8Z,EAAMxZ,OAC9CiE,KAAK,SAAAjE,GAEGA,EAAIlN,SAAS,YACd4M,EAAO7I,SAASoe,OAAOxkB,MAAM8pB,eAAiB,WAGrDpW,MAAM,cAEX,IAAM9T,EAASqP,EAAOrP,OAAOoR,QAI7B/B,EAAOhB,MAAQ,IAAI3K,OAAOqwB,GAAG9B,OAAO9oB,EAAI,CACpC+qB,QAAAA,EACAnf,KAAM+e,GAAQ9zB,GACdq0B,WAAYluB,EACR,GACA,CACIkc,SAAUhT,EAAOrP,OAAOqiB,SAAW,EAAI,EACvCiS,GAAIjlB,EAAOrP,OAAOs0B,GAClB5f,SAAUrF,EAAO7K,UAAUgI,GAAK,EAAI,EACpC+nB,UAAW,EACXloB,YAAcgD,EAAOrP,OAAO2V,WAAWsN,UAAgB,EAAJ,EAEnDuR,eAAgBnlB,EAAOqG,SAASsL,OAAS,EAAI,EAC7CyT,aAAcplB,EAAOrP,OAAO0V,SAAS4H,SAErCoX,gBAAiBhxB,OAASA,OAAOoR,SAAS0K,KAAO,MAErDxf,GAEJ+E,OAAQ,CACJ4vB,QADI,SACI71B,GAEJ,IAAKuQ,EAAOlC,MAAMkJ,MAAO,CACrB,IAAM8U,EAAOrsB,EAAMyU,KAEbqhB,EACF,CACIC,EAAG,uOACHC,EAAG,uHACHC,IAAK,qIACLC,IAAK,uFACLC,IAAK,wFACP9J,IAAS,2BAEf9b,EAAOlC,MAAMkJ,MAAQ,CAAE8U,KAAAA,EAAMyJ,QAAAA,GAE7BjvB,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,WAGhD+nB,qBApBI,SAoBiBp2B,GAEjB,IAAMhF,EAAWgF,EAAM5E,OAGvBmV,EAAOlC,MAAMgoB,aAAer7B,EAASs7B,kBAErCzvB,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,eAE5CkoB,QA7BI,SA6BIv2B,GAEJ,IAAId,EAAGQ,SAAS6Q,EAAOlC,MAAMyC,MAA7B,CAIA,IAAM9V,EAAWgF,EAAM5E,OAGvBkX,GAAQ6iB,SAASp3B,KAAKwS,EAAQ6kB,GAG9B7kB,EAAOlC,MAAMyC,KAAO,WAChB8hB,GAAoB70B,KAAKwS,GAAQ,GACjCvV,EAASw7B,aAGbjmB,EAAOlC,MAAMiI,MAAQ,WACjBsc,GAAoB70B,KAAKwS,GAAQ,GACjCvV,EAASy7B,cAGblmB,EAAOlC,MAAMglB,KAAO,WAChBr4B,EAAS07B,aAGbnmB,EAAOlC,MAAM+I,SAAWpc,EAASs5B,cACjC/jB,EAAOlC,MAAMqC,QAAS,EAGtBH,EAAOlC,MAAMoC,YAAc,EAC3B7U,OAAOC,eAAe0U,EAAOlC,MAAO,cAAe,CAC/CvL,IAD+C,WAE3C,OAAOxD,OAAOtE,EAASq5B,mBAE3BryB,IAJ+C,SAI3CsT,GAEI/E,EAAOG,SAAWH,EAAOhB,MAAMsjB,WAC/BtiB,EAAOhB,MAAMmH,OAIjBnG,EAAOlC,MAAM0O,SAAU,EACvBlW,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,WAGxCrT,EAAS+zB,OAAOzZ,MAKxB1Z,OAAOC,eAAe0U,EAAOlC,MAAO,eAAgB,CAChDvL,IADgD,WAE5C,OAAO9H,EAASs7B,mBAEpBt0B,IAJgD,SAI5CxD,GACAxD,EAASy4B,gBAAgBj1B,MAxDtB,IA6DLyY,EAAW1G,EAAOrP,OAAlB+V,OACNrb,OAAOC,eAAe0U,EAAOlC,MAAO,SAAU,CAC1CvL,IAD0C,WAEtC,OAAOmU,GAEXjV,IAJ0C,SAItCxD,GACAyY,EAASzY,EACTxD,EAASu4B,UAAmB,IAATtc,GACnBpQ,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,mBArErC,IA0ELsN,EAAUpL,EAAOrP,OAAjBya,MACN/f,OAAOC,eAAe0U,EAAOlC,MAAO,QAAS,CACzCvL,IADyC,WAErC,OAAO6Y,GAEX3Z,IAJyC,SAIrCxD,GACA,IAAMmD,EAASzC,EAAGO,QAAQjB,GAASA,EAAQmd,EAC3CA,EAAQha,EACR3G,EAAS2G,EAAS,OAAS,YAC3BkF,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,mBAKhDzS,OAAOC,eAAe0U,EAAOlC,MAAO,aAAc,CAC9CvL,IAD8C,WAE1C,OAAO9H,EAAS64B,iBAKxBj4B,OAAOC,eAAe0U,EAAOlC,MAAO,QAAS,CACzCvL,IADyC,WAErC,OAAOyN,EAAOE,cAAgBF,EAAO6G,YAK7C7G,EAAOzP,QAAQya,MAAQvgB,EAAS27B,4BAG5BpmB,EAAO7K,UAAUgI,IACjB6C,EAAOlC,MAAMzF,aAAa,YAAa,GAG3C/B,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,cACxCxH,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,kBAGxCuoB,cAAcrmB,EAAOib,OAAOqL,WAG5BtmB,EAAOib,OAAOqL,UAAYC,YAAY,WAElCvmB,EAAOlC,MAAM+N,SAAWphB,EAAS+7B,0BAGC,OAA9BxmB,EAAOlC,MAAM2oB,cAAyBzmB,EAAOlC,MAAM2oB,aAAezmB,EAAOlC,MAAM+N,WAC/EvV,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,YAI5CkC,EAAOlC,MAAM2oB,aAAezmB,EAAOlC,MAAM+N,SAGX,IAA1B7L,EAAOlC,MAAM+N,WACbwa,cAAcrmB,EAAOib,OAAOqL,WAG5BhwB,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,oBAE7C,KAGHtC,WAAW,WAAA,OAAM2B,GAAGkd,MAAM7sB,KAAKwS,IAAS,MAE5C0mB,cAzKI,SAyKUj3B,GAEV,IAAMhF,EAAWgF,EAAM5E,OAoBvB,OAjBAw7B,cAAcrmB,EAAOib,OAAOvF,SAEb1V,EAAOlC,MAAM0O,SAAW,CAAC,EAAG,GAAGpZ,SAAS3D,EAAMyU,QAIzDlE,EAAOlC,MAAM0O,SAAU,EACvBlW,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,WAUpCrO,EAAMyU,MACV,KAAM,EAEF5N,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,cAGxCkC,EAAOlC,MAAM+N,SAAWphB,EAAS+7B,yBACjClwB,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,YAExC,MAEJ,KAAK,EACDukB,GAAoB70B,KAAKwS,GAAQ,GAG7BA,EAAOlC,MAAMyV,MAEb9oB,EAAS07B,YACT17B,EAASw7B,aAET3vB,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,SAG5C,MAEJ,KAAK,EAEIkC,EAAOrP,OAAOqiB,WAAYhT,EAAOlC,MAAMqC,QAAWH,EAAOhB,MAAMsjB,WAGhED,GAAoB70B,KAAKwS,GAAQ,GAEjC1J,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,WAGxCkC,EAAOib,OAAOvF,QAAU6Q,YAAY,WAChCjwB,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,eACzC,IAKCkC,EAAOlC,MAAM+I,WAAapc,EAASs5B,gBACnC/jB,EAAOlC,MAAM+I,SAAWpc,EAASs5B,cACjCztB,EAAa9I,KAAKwS,EAAQA,EAAOlC,MAAO,oBAhB5CkC,EAAOlC,MAAMiI,QAoBjB,MAEJ,KAAK,EAEI/F,EAAOoL,OACRpL,EAAOhB,MAAM2nB,SAEjBtE,GAAoB70B,KAAKwS,GAAQ,GAQzC1J,EAAa9I,KAAKwS,EAAQA,EAAO7I,SAASuD,UAAW,eAAe,EAAO,CACvEohB,KAAMrsB,EAAMyU,cC9Z9BpG,GAAQ,CAEVoL,MAFU,WAID3e,KAAKuT,OAMV3D,EAAY5P,KAAK4M,SAASuD,UAAWnQ,KAAKoG,OAAOqK,WAAWxJ,KAAKkI,QAAQ,MAAOnP,KAAKiH,OAAO,GAG5F2I,EAAY5P,KAAK4M,SAASuD,UAAWnQ,KAAKoG,OAAOqK,WAAW+B,SAASrD,QAAQ,MAAOnP,KAAKwS,WAAW,GAIhGxS,KAAK8lB,SACLlW,EAAY5P,KAAK4M,SAASuD,UAAWnQ,KAAKoG,OAAOqK,WAAWxJ,KAAKkI,QAAQ,MAAO,UAAU,GAI1FnP,KAAK8U,UAEL9U,KAAK4M,SAASC,QAAUkB,EAAc,MAAO,CACzCuB,MAAOtP,KAAKoG,OAAOqK,WAAW6B,QAIlC3F,EAAK3M,KAAKuT,MAAOvT,KAAK4M,SAASC,SAG/B7M,KAAK4M,SAASoe,OAASjd,EAAc,MAAO,CACxCuB,MAAOtP,KAAKoG,OAAOqK,WAAWua,SAGlChrB,KAAK4M,SAASC,QAAQS,YAAYtN,KAAK4M,SAASoe,SAGhDhrB,KAAKsT,QACLgC,GAAM/I,OAAOtJ,KAAKjD,MACXA,KAAK6mB,UACZrP,GAAQmH,MAAM1b,KAAKjD,MACZA,KAAKkV,SACZqC,GAAMoH,MAAM1b,KAAKjD,OAvCjBA,KAAKqW,MAAMqG,KAAK,6BCgBtB2f,GvC4uMJ,WuCtuME,SAAAA,EAAY5mB,GAAQ,IAAA3O,EAAA9G,KAAAC,EAAAD,KAAAq8B,GAChBr8B,KAAKyV,OAASA,EACdzV,KAAKoG,OAASqP,EAAOrP,OAAO8kB,IAC5BlrB,KAAKmrB,SAAU,EACfnrB,KAAKs8B,aAAc,EACnBt8B,KAAK4M,SAAW,CACZuD,UAAW,KACXosB,iBAAkB,MAEtBv8B,KAAKw8B,QAAU,KACfx8B,KAAKy8B,OAAS,KACdz8B,KAAK08B,UAAY,KACjB18B,KAAKmL,OAAS,GACdnL,KAAK28B,YAAc,KACnB38B,KAAK48B,eAAiB,KAGtB58B,KAAK68B,eAAiB,IAAIxyB,QAAQ,SAACuO,EAASC,GAExC/R,EAAKwE,GAAG,SAAUsN,GAGlB9R,EAAKwE,GAAG,QAASuN,KAGrB7Y,KAAKiW,OvC2zNT,OA1kBAhV,EAAao7B,EAAK,CAAC,CACjBr7B,IAAK,OAKLO,MAAO,WuCtuMF,IAAAkK,EAAAzL,KACEA,KAAKuG,UAKLnC,EAAGE,OAAOwF,OAAOgzB,SAAY14B,EAAGE,OAAOwF,OAAOgzB,OAAOC,KAUtD/8B,KAAKgwB,QATL6H,GAAW73B,KAAKyV,OAAOrP,OAAOyf,KAAKgF,UAAUF,KACxC3Q,KAAK,WACFvO,EAAKukB,UAER9V,MAAM,WAEHzO,EAAKvD,QAAQ,QAAS,IAAIgR,MAAM,uCvCgvM7C,CACDlY,IAAK,QACLO,MAAO,WuCxuMD,IArFIrB,EAqFJ6f,EAAA/f,KAECA,KAAKuG,WAvFFrG,EAwFIF,MAtFHw8B,SACTt8B,EAASs8B,QAAQQ,UAIjB98B,EAAS0M,SAAS2vB,kBAClBr8B,EAAS0M,SAAS2vB,iBAAiBS,UAGvC98B,EAAS0M,SAASuD,UAAU8sB,UAkFxBj9B,KAAKk9B,iBAAiB,KAAO,WAG7Bl9B,KAAK68B,eAAe7iB,KAAK,WACrB+F,EAAKod,iBAAiB,0BAI1Bn9B,KAAK4G,YAGL5G,KAAKo9B,avC0uMN,CACDp8B,IAAK,WAULO,MAAO,WuCjtMLvB,KAAK4M,SAASuD,UAAYpC,EAAc,MAAO,CAC3CuB,MAAOtP,KAAKyV,OAAOrP,OAAOqK,WAAWya,MAGzClrB,KAAKyV,OAAO7I,SAASuD,UAAU7C,YAAYtN,KAAK4M,SAASuD,WAGzD2sB,OAAOC,IAAIlhB,SAASwhB,aAAaP,OAAOC,IAAIO,eAAeC,UAAUC,SAGrEV,OAAOC,IAAIlhB,SAAS4hB,UAAUz9B,KAAKyV,OAAOrP,OAAO8kB,IAAIxH,UAGrDoZ,OAAOC,IAAIlhB,SAAS6hB,qCAAqC19B,KAAKyV,OAAOrP,OAAOqM,aAG5EzS,KAAK4M,SAAS2vB,iBAAmB,IAAIO,OAAOC,IAAIY,mBAAmB39B,KAAK4M,SAASuD,UAAWnQ,KAAKyV,OAAOlC,OAGxGvT,KAAK49B,evCmtMN,CACD58B,IAAK,aACLO,MAAO,WuC/sMI,IAAAyf,EAAAhhB,KACDmQ,EAAcnQ,KAAKyV,OAAO7I,SAA1BuD,UAER,IAEInQ,KAAKy8B,OAAS,IAAIK,OAAOC,IAAIc,UAAU79B,KAAK4M,SAAS2vB,kBAGrDv8B,KAAKy8B,OAAO5xB,iBACRiyB,OAAOC,IAAIe,sBAAsBC,KAAKC,mBACtC,SAAA94B,GAAK,OAAI8b,EAAKid,mBAAmB/4B,KACjC,GAEJlF,KAAKy8B,OAAO5xB,iBAAiBiyB,OAAOC,IAAImB,aAAaH,KAAKI,SAAU,SAAA1hB,GAAK,OAAIuE,EAAKod,UAAU3hB,KAAQ,GAGpG,IAAM3D,EAAU,IAAIgkB,OAAOC,IAAIsB,WAC/BvlB,EAAQwlB,SAAWt+B,KAAKksB,OAIxBpT,EAAQylB,kBAAoBpuB,EAAUquB,YACtC1lB,EAAQ2lB,mBAAqBtuB,EAAUe,aACvC4H,EAAQ4lB,qBAAuBvuB,EAAUquB,YACzC1lB,EAAQ6lB,sBAAwBxuB,EAAUe,aAG1C4H,EAAQ8lB,wBAAyB,EAGjC9lB,EAAQ+lB,oBAAoB7+B,KAAKyV,OAAOoL,OAExC7gB,KAAKy8B,OAAOmB,WAAW9kB,GACzB,MAAOpO,GACL1K,KAAKo+B,UAAU1zB,MvCmtMpB,CACD1J,IAAK,gBACLO,MAAO,WuC7sMoB,IAAAkgB,EAAAzhB,KACzB,KADyBmI,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,IAIrB,OAFA2zB,cAAc97B,KAAK48B,qBACnB58B,KAAK4M,SAASuD,UAAUR,gBAAgB,mBAU5C3P,KAAK48B,eAAiBZ,YANP,WACX,IAAMxhB,EAAOD,GAAW5U,KAAKC,IAAI6b,EAAK+a,QAAQsC,mBAAoB,IAC5DjhB,EAAK,GAAAnY,OAAM+R,GAAS,gBAAiBgK,EAAKhM,OAAOrP,QAA5C,OAAAV,OAAyD8U,GACpEiH,EAAK7U,SAASuD,UAAUrC,aAAa,kBAAmB+P,IAGlB,OvCytM3C,CACD7c,IAAK,qBACLO,MAAO,SuCptMU2D,GAAO,IAAA4d,EAAA9iB,KAEtB,GAAKA,KAAKuG,QAAV,CAKA,IAAMsV,EAAW,IAAIihB,OAAOC,IAAIgC,qBAGhCljB,EAASmjB,6CAA8C,EACvDnjB,EAASojB,kBAAmB,EAI5Bj/B,KAAKw8B,QAAUt3B,EAAMg6B,cAAcl/B,KAAKyV,OAAQoG,GAGhD7b,KAAK08B,UAAY18B,KAAKw8B,QAAQ2C,eAI9Bn/B,KAAKw8B,QAAQ3xB,iBAAiBiyB,OAAOC,IAAImB,aAAaH,KAAKI,SAAU,SAAA1hB,GAAK,OAAIqG,EAAKsb,UAAU3hB,KAG7F3b,OAAOuE,KAAKy3B,OAAOC,IAAIqC,QAAQrB,MAAM/2B,QAAQ,SAAAC,GACzC6b,EAAK0Z,QAAQ3xB,iBAAiBiyB,OAAOC,IAAIqC,QAAQrB,KAAK92B,GAAO,SAAAyD,GAAC,OAAIoY,EAAKuc,UAAU30B,OAIrF1K,KAAKkI,QAAQ,avCstMd,CACDlH,IAAK,eACLO,MAAO,WuCrtMM,IAAA+hB,EAAAtjB,KAENoE,EAAGgB,MAAMpF,KAAK08B,YACf18B,KAAK08B,UAAU11B,QAAQ,SAAAs4B,GACnB,GAAiB,IAAbA,IAAgC,IAAdA,GAAmBA,EAAWhc,EAAK7N,OAAO6G,SAAU,CACtE,IAAMijB,EAAcjc,EAAK7N,OAAO7I,SAASoP,SAEzC,GAAI5X,EAAGY,QAAQu6B,GAAc,CACzB,IAAMC,EAAiB,IAAMlc,EAAK7N,OAAO6G,SAAYgjB,EAC/Cz1B,EAAMkE,EAAc,OAAQ,CAC9BuB,MAAOgU,EAAK7N,OAAOrP,OAAOqK,WAAW2X,OAGzCve,EAAIrD,MAAMqB,KAAV,GAAAnC,OAAoB85B,EAAcx8B,WAAlC,KACAu8B,EAAYjyB,YAAYzD,SvCmuMzC,CACD7I,IAAK,YACLO,MAAO,SuCxtMC2D,GAAO,IAAA2e,EAAA7jB,KACLmQ,EAAcnQ,KAAKyV,OAAO7I,SAA1BuD,UAGFsvB,EAAKv6B,EAAMw6B,QACXC,EAASz6B,EAAM06B,YAUrB,OAPsB,SAAA34B,GAClB8E,EAAa9I,KAAK4gB,EAAKpO,OAAQoO,EAAKpO,OAAOlC,MAA3C,MAAA7N,OAAwDuB,EAAKkI,QAAQ,KAAM,IAAI6H,gBAInF/O,CAAc/C,EAAM+B,MAEZ/B,EAAM+B,MACV,KAAK61B,OAAOC,IAAIqC,QAAQrB,KAAK8B,OAGzB7/B,KAAKkI,QAAQ,UAGblI,KAAK8/B,eAAc,GAEdL,EAAGM,aAEJN,EAAG93B,MAAQwI,EAAUquB,YACrBiB,EAAGvrB,OAAS/D,EAAUe,cAM1B,MAEJ,KAAK4rB,OAAOC,IAAIqC,QAAQrB,KAAKiC,QAEzBhgC,KAAKw8B,QAAQ/D,UAAUz4B,KAAKyV,OAAO0G,QAEnC,MAEJ,KAAK2gB,OAAOC,IAAIqC,QAAQrB,KAAKkC,kBA2BzBjgC,KAAKkgC,UAEL,MAEJ,KAAKpD,OAAOC,IAAIqC,QAAQrB,KAAKoC,wBAKzBngC,KAAKogC,eAEL,MAEJ,KAAKtD,OAAOC,IAAIqC,QAAQrB,KAAKsC,yBAMzBrgC,KAAK8/B,gBAEL9/B,KAAKsgC,gBAEL,MAEJ,KAAKxD,OAAOC,IAAIqC,QAAQrB,KAAKwC,IACrBZ,EAAOa,SACPxgC,KAAKyV,OAAOY,MAAMqG,KAAlB,uBAAAhX,OAA8Ci6B,EAAOa,QAAQC,kBvC2tM1E,CACDz/B,IAAK,YACLO,MAAO,SuC/sMC2D,GACNlF,KAAK0gC,SACL1gC,KAAKyV,OAAOY,MAAMqG,KAAK,YAAaxX,KvCutMrC,CACDlE,IAAK,YACLO,MAAO,WuCjtMG,IAEJiZ,EAFIoK,EAAA5kB,KACAmQ,EAAcnQ,KAAKyV,OAAO7I,SAA1BuD,UAGRnQ,KAAKyV,OAAOnK,GAAG,UAAW,WACtBsZ,EAAK+b,iBAGT3gC,KAAKyV,OAAOnK,GAAG,QAAS,WACpBsZ,EAAK6X,OAAOmE,oBAGhB5gC,KAAKyV,OAAOnK,GAAG,aAAc,WACzBkP,EAAOoK,EAAKnP,OAAOE,cAGvB3V,KAAKyV,OAAOnK,GAAG,SAAU,WACrB,IAAMu1B,EAAajc,EAAKnP,OAAOE,YAE3BvR,EAAGgB,MAAMwf,EAAK8X,YAIlB9X,EAAK8X,UAAU11B,QAAQ,SAACs4B,EAAUvyB,GAC1ByN,EAAO8kB,GAAYA,EAAWuB,IAC9Bjc,EAAK4X,QAAQsE,iBACblc,EAAK8X,UAAUhH,OAAO3oB,EAAO,QAOzCjD,OAAOe,iBAAiB,SAAU,WAC1B+Z,EAAK4X,SACL5X,EAAK4X,QAAQuE,OAAO5wB,EAAUquB,YAAaruB,EAAUe,aAAc4rB,OAAOC,IAAIiE,SAASC,YvCutMhG,CACDjgC,IAAK,OACLO,MAAO,WuCjtMF,IAAA4jB,EAAAnlB,KACKmQ,EAAcnQ,KAAKyV,OAAO7I,SAA1BuD,UAEHnQ,KAAK68B,gBACN78B,KAAKsgC,gBAITtgC,KAAK68B,eACA7iB,KAAK,WAEFmL,EAAKqX,QAAQ/D,UAAUtT,EAAK1P,OAAO0G,QAGnCgJ,EAAKvY,SAAS2vB,iBAAiB2E,aAE/B,IACS/b,EAAKmX,cAENnX,EAAKqX,QAAQl2B,KAAK6J,EAAUquB,YAAaruB,EAAUe,aAAc4rB,OAAOC,IAAIiE,SAASC,QAIrF9b,EAAKqX,QAAQzS,SAGjB5E,EAAKmX,aAAc,EACrB,MAAOkE,GAGLrb,EAAKiZ,UAAUoC,MAGtBtmB,MAAM,gBvCutMZ,CACDlZ,IAAK,gBACLO,MAAO,WuCjtMLvB,KAAK4M,SAASuD,UAAU3J,MAAM26B,OAAS,GAGvCnhC,KAAKmrB,SAAU,EAGfnrB,KAAKyV,OAAOlC,MAAMyC,SvCutMnB,CACDhV,IAAK,eACLO,MAAO,WuCjtMLvB,KAAK4M,SAASuD,UAAU3J,MAAM26B,OAAS,EAGvCnhC,KAAKmrB,SAAU,EAGfnrB,KAAKyV,OAAOlC,MAAMiI,UvC0tMnB,CACDxa,IAAK,SACLO,MAAO,WuCjtMDvB,KAAKs8B,aACLt8B,KAAKsgC,gBAITtgC,KAAKkI,QAAQ,SAGblI,KAAKkgC,YvCwtMN,CACDl/B,IAAK,UACLO,MAAO,WuCptMC,IAAAykB,EAAAhmB,KAENA,KAAK68B,eACA7iB,KAAK,WAEEgM,EAAKwW,SACLxW,EAAKwW,QAAQQ,UAIjBhX,EAAK6W,eAAiB,IAAIxyB,QAAQ,SAAAuO,GAC9BoN,EAAK1a,GAAG,SAAUsN,GAClBoN,EAAKvQ,OAAOY,MAAMC,IAAI0P,EAAKwW,WAI/BxW,EAAK4X,eAER1jB,MAAM,gBvC2tMZ,CACDlZ,IAAK,UACLO,MAAO,SuCttMD2D,GAAgB,IAAA,IAAAk8B,EAAAphC,KAAA2L,EAAAxD,UAAA1H,OAANmL,EAAM,IAAAlK,MAAAiK,EAAA,EAAAA,EAAA,EAAA,GAAAE,EAAA,EAAAA,EAAAF,EAAAE,IAAND,EAAMC,EAAA,GAAA1D,UAAA0D,GACpB,IAAMw1B,EAAWrhC,KAAKmL,OAAOjG,GAEzBd,EAAGU,MAAMu8B,IACTA,EAASr6B,QAAQ,SAAAyoB,GACTrrB,EAAGQ,SAAS6qB,IACZA,EAAQ3jB,MAAMs1B,EAAMx1B,OvCwuMjC,CACD5K,IAAK,KACLO,MAAO,SuC9tMN2D,EAAO8F,GAON,OANK5G,EAAGU,MAAM9E,KAAKmL,OAAOjG,MACtBlF,KAAKmL,OAAOjG,GAAS,IAGzBlF,KAAKmL,OAAOjG,GAAO1C,KAAKwI,GAEjBhL,OvCwuMR,CACDgB,IAAK,mBACLO,MAAO,SuC/tMQiZ,EAAMtX,GAAM,IAAAo+B,EAAAthC,KACzBA,KAAKyV,OAAOY,MAAMC,IAAlB,8BAAA5Q,OAAoDxC,IAEpDlD,KAAK28B,YAAc1rB,WAAW,WAC1BqwB,EAAKZ,SACLY,EAAKnE,iBAAiB,uBACvB3iB,KvCwuMJ,CACDxZ,IAAK,mBACLO,MAAO,SuCnuMQ2B,GACRkB,EAAGC,gBAAgBrE,KAAK28B,eACzB38B,KAAKyV,OAAOY,MAAMC,IAAlB,8BAAA5Q,OAAoDxC,IAEpDutB,aAAazwB,KAAK28B,aAClB38B,KAAK28B,YAAc,QvCquMxB,CACD37B,IAAK,UACLgH,IAAK,WuC7xNO,IACF5B,EAAWpG,KAAXoG,OAER,OACIpG,KAAKyV,OAAOnC,SACZtT,KAAKyV,OAAOX,SACZ1O,EAAOG,WACLnC,EAAGgB,MAAMgB,EAAO6lB,cAAgB7nB,EAAGkG,IAAIlE,EAAO8lB,WvC0xNrD,CACDlrB,IAAK,SACLgH,IAAK,WuCvuNM,IACD5B,EAAWpG,KAAXoG,OAER,GAAIhC,EAAGkG,IAAIlE,EAAO8lB,QACd,OAAO9lB,EAAO8lB,OAGlB,IAAMvF,EAAS,CACX4a,eAAgB,2BAChBC,aAAc,2BACdC,OAAQ33B,OAAOoR,SAASzQ,SACxBi3B,GAAI5Q,KAAKC,MACT4Q,SAAU,IACVC,UAAW,IACXC,SAAU7hC,KAAKisB,aAKnB,MAAA,GAAAvmB,OAFa,6CAEb,KAAAA,OAAkBghB,GAAeC,QvCyuN9B0V,EA9mBT,GwCxsMIyF,GxCk3NJ,WwC52NE,SAAAA,EAAYrsB,GAAQxV,EAAAD,KAAA8hC,GAChB9hC,KAAKyV,OAASA,EACdzV,KAAK+hC,WAAa,GAClB/hC,KAAKk0B,QAAS,EACdl0B,KAAKgiC,kBAAoBlR,KAAKC,MAC9B/wB,KAAKiiC,WAAY,EACjBjiC,KAAKkiC,aAAe,GAEpBliC,KAAK4M,SAAW,CACZu1B,MAAO,GACPC,UAAW,IAGfpiC,KAAKiW,OxCw8OT,OAnlBAhV,EAAa6gC,EAAmB,CAAC,CAC/B9gC,IAAK,OACLO,MAAO,WwCh3NF,IAAAuF,EAAA9G,KAECA,KAAKyV,OAAO7I,SAASwP,QAAQG,cAC7Bvc,KAAKyV,OAAO7I,SAASwP,QAAQG,YAAY9M,OAASzP,KAAKuG,SAGtDvG,KAAKuG,SAIVvG,KAAKqiC,gBAAgBroB,KAAK,WAEtBlT,EAAKw7B,SAGLx7B,EAAKy7B,+BAELz7B,EAAKotB,QAAS,MxCs3NnB,CACDlzB,IAAK,gBACLO,MAAO,WwCn3NO,IAAAkK,EAAAzL,KACZ,OAAO,IAAIqK,QAAQ,SAAAuO,GAAW,IAClB7C,EAAQtK,EAAKgK,OAAOrP,OAAOslB,kBAA3B3V,IAER,GAAI3R,EAAGgB,MAAM2Q,GACT,MAAM,IAAImD,MAAM,kDAIpB,IAEMspB,GAFOp+B,EAAGM,OAAOqR,GAAO,CAACA,GAAOA,GAEhB7M,IAAI,SAAAu5B,GAAC,OAAIh3B,EAAKi3B,aAAaD,KAEjDp4B,QAAQ4f,IAAIuY,GAAUxoB,KAAK,WAEvBvO,EAAKs2B,WAAW9e,KAAK,SAACuK,EAAGE,GAAJ,OAAUF,EAAEtZ,OAASwZ,EAAExZ,SAE5CzI,EAAKgK,OAAOY,MAAMC,IAAI,qBAAsB7K,EAAKs2B,YAEjDnpB,UxC63NT,CACD5X,IAAK,eACLO,MAAO,SwCz3NI+I,GAAK,IAAAyV,EAAA/f,KACd,OAAO,IAAIqK,QAAQ,SAAAuO,GACfF,GAAMpO,GAAK0P,KAAK,SAAAf,GACZ,IAtIC0pB,EACPC,EAqIYC,EAAY,CACdC,QAvIHH,EAuIoB1pB,EAtI3B2pB,EAAgB,GACPD,EAAcv3B,MAAM,sBAE5BpE,QAAQ,SAAA+7B,GACX,IAAM9oB,EAAS,GACD8oB,EAAM33B,MAAM,cAEpBpE,QAAQ,SAAAg8B,GACV,GAAK5+B,EAAGG,OAAO0V,EAAOgpB,YAkBf,IAAK7+B,EAAGgB,MAAM49B,EAAK/zB,SAAW7K,EAAGgB,MAAM6U,EAAOjM,MAAO,CAExD,IAAMk1B,EAAYF,EAAK/zB,OAAO7D,MAAM,UAFoB+3B,EAAA3hC,EAGxC0hC,EAHwC,GAMxD,GAHCjpB,EAAOjM,KAHgDm1B,EAAA,GAMpDD,EAAU,GAAI,CAAA,IAAAE,EAAA5hC,EAC6B0hC,EAAU,GAAG93B,MAAM,KADhD,GACb6O,EAAOuT,EADM4V,EAAA,GACHnpB,EAAOyT,EADJ0V,EAAA,GACOnpB,EAAO5F,EADd+uB,EAAA,GACiBnpB,EAAO3F,EADxB8uB,EAAA,SAxBY,CAE9B,IAAMC,EAAaL,EAAKv9B,MACpB,2GAGA49B,IACAppB,EAAOgpB,UAC0B,GAA7Bz+B,OAAO6+B,EAAW,IAAM,GAAU,GACV,GAAxB7+B,OAAO6+B,EAAW,IAClB7+B,OAAO6+B,EAAW,IAClB7+B,OAAM,KAAAkB,OAAM29B,EAAW,KAC3BppB,EAAOqpB,QAC0B,GAA7B9+B,OAAO6+B,EAAW,IAAM,GAAU,GACV,GAAxB7+B,OAAO6+B,EAAW,IAClB7+B,OAAO6+B,EAAW,IAClB7+B,OAAM,KAAAkB,OAAM29B,EAAW,SAcnCppB,EAAOjM,MACP40B,EAAcpgC,KAAKyX,KAIpB2oB,GA4FS1uB,OAAQ,KACRqvB,UAAW,IAOVV,EAAUC,OAAO,GAAG90B,KAAKxD,WAAW,MACpCq4B,EAAUC,OAAO,GAAG90B,KAAKxD,WAAW,YACpCq4B,EAAUC,OAAO,GAAG90B,KAAKxD,WAAW,cAErCq4B,EAAUU,UAAYj5B,EAAIk5B,UAAU,EAAGl5B,EAAIm5B,YAAY,KAAO,IAIlE,IAAMC,EAAY,IAAIlU,MAEtBkU,EAAUhU,OAAS,WACfmT,EAAU3uB,OAASwvB,EAAUC,cAC7Bd,EAAUl7B,MAAQ+7B,EAAU9T,aAE5B7P,EAAKgiB,WAAWv/B,KAAKqgC,GAErBjqB,KAGJ8qB,EAAU3tB,IAAM8sB,EAAUU,UAAYV,EAAUC,OAAO,GAAG90B,WxC03NnE,CACDhN,IAAK,YACLO,MAAO,SwCv3NC2D,GACN,GAAKlF,KAAKk0B,QAIL9vB,EAAGc,MAAMA,IAAW,CAAC,YAAa,aAAa2D,SAAS3D,EAAM+B,OAK9DjH,KAAKyV,OAAOlC,MAAM+I,SAAvB,CAIA,GAAmB,cAAfpX,EAAM+B,KAENjH,KAAK2X,SAAW3X,KAAKyV,OAAOlC,MAAM+I,UAAYtc,KAAKyV,OAAO7I,SAASqP,OAAOC,KAAK3a,MAAQ,SACpF,CAEH,IAAMkG,EAAazH,KAAKyV,OAAO7I,SAASoP,SAAStU,wBAC3Ck8B,EAAc,IAAMn8B,EAAWE,OAAUzC,EAAM2c,MAAQpa,EAAWI,MACxE7H,KAAK2X,SAAW3X,KAAKyV,OAAOlC,MAAM+I,UAAYsnB,EAAa,KAEvD5jC,KAAK2X,SAAW,IAEhB3X,KAAK2X,SAAW,GAGhB3X,KAAK2X,SAAW3X,KAAKyV,OAAOlC,MAAM+I,SAAW,IAE7Ctc,KAAK2X,SAAW3X,KAAKyV,OAAOlC,MAAM+I,SAAW,GAGjDtc,KAAK6jC,UAAY3+B,EAAM2c,MAGvB7hB,KAAK4M,SAASu1B,MAAM3nB,KAAKvM,UAAYsM,GAAWva,KAAK2X,UAIzD3X,KAAK8jC,4BxCw3NN,CACD9iC,IAAK,UACLO,MAAO,WwCt3NLvB,KAAK+jC,sBAAqB,GAAO,KxCy3NlC,CACD/iC,IAAK,iBACLO,MAAO,SwCx3NM2D,IAEU,IAAjBA,EAAMiZ,QAAqC,IAAjBjZ,EAAMiZ,SAChCne,KAAKiiC,WAAY,EAGbjiC,KAAKyV,OAAOlC,MAAM+I,WAClBtc,KAAKgkC,0BAAyB,GAC9BhkC,KAAK+jC,sBAAqB,GAAO,GAGjC/jC,KAAK8jC,6BxC03Nd,CACD9iC,IAAK,eACLO,MAAO,WwCv3NM,IAAAyf,EAAAhhB,KACXA,KAAKiiC,WAAY,EAGbt8B,KAAKs+B,KAAKjkC,KAAKkkC,YAAcv+B,KAAKs+B,KAAKjkC,KAAKyV,OAAOlC,MAAMoC,aAEzD3V,KAAKgkC,0BAAyB,GAG9Bx4B,EAAKvI,KAAKjD,KAAKyV,OAAQzV,KAAKyV,OAAOlC,MAAO,aAAc,WAE/CyN,EAAKihB,WACNjhB,EAAKgjB,0BAAyB,OxCi4N3C,CACDhjC,IAAK,YACLO,MAAO,WwC13NG,IAAAkgB,EAAAzhB,KAERA,KAAKyV,OAAOnK,GAAG,OAAQ,WACnBmW,EAAKsiB,sBAAqB,GAAO,KAGrC/jC,KAAKyV,OAAOnK,GAAG,SAAU,WACrBmW,EAAKsiB,sBAAqB,KAG9B/jC,KAAKyV,OAAOnK,GAAG,aAAc,WACzBmW,EAAKyiB,SAAWziB,EAAKhM,OAAOlC,MAAMoC,gBxCi4NvC,CACD3U,IAAK,SACLO,MAAO,WwC13NLvB,KAAK4M,SAASu1B,MAAMhyB,UAAYpC,EAAc,MAAO,CACjDuB,MAAOtP,KAAKyV,OAAOrP,OAAOqK,WAAWib,kBAAkBC,iBAI3D3rB,KAAK4M,SAASu1B,MAAMtW,eAAiB9d,EAAc,MAAO,CACtDuB,MAAOtP,KAAKyV,OAAOrP,OAAOqK,WAAWib,kBAAkBG,iBAE3D7rB,KAAK4M,SAASu1B,MAAMhyB,UAAU7C,YAAYtN,KAAK4M,SAASu1B,MAAMtW,gBAG9D,IAAMC,EAAgB/d,EAAc,MAAO,CACvCuB,MAAOtP,KAAKyV,OAAOrP,OAAOqK,WAAWib,kBAAkBI,gBAG3D9rB,KAAK4M,SAASu1B,MAAM3nB,KAAOzM,EAAc,OAAQ,GAAI,SACrD+d,EAAcxe,YAAYtN,KAAK4M,SAASu1B,MAAM3nB,MAE9Cxa,KAAK4M,SAASu1B,MAAMhyB,UAAU7C,YAAYwe,GAGtC1nB,EAAGY,QAAQhF,KAAKyV,OAAO7I,SAASoP,WAChChc,KAAKyV,OAAO7I,SAASoP,SAAS1O,YAAYtN,KAAK4M,SAASu1B,MAAMhyB,WAIlEnQ,KAAK4M,SAASw1B,UAAUjyB,UAAYpC,EAAc,MAAO,CACrDuB,MAAOtP,KAAKyV,OAAOrP,OAAOqK,WAAWib,kBAAkBK,qBAG3D/rB,KAAKyV,OAAO7I,SAASC,QAAQS,YAAYtN,KAAK4M,SAASw1B,UAAUjyB,axCw3NlE,CACDnP,IAAK,yBACLO,MAAO,WwCv3NgB,IAAAuhB,EAAA9iB,KACjBA,KAAKiiC,UACLjiC,KAAKmkC,4BAELnkC,KAAKokC,8BAKT,IAAMC,EAAWrkC,KAAK+hC,WAAW,GAAGe,OAAOwB,UACvC,SAAAvB,GAAK,OAAIjgB,EAAKnL,UAAYorB,EAAME,WAAangB,EAAKnL,UAAYorB,EAAMO,UAElEiB,EAAWF,GAAY,EACzBG,EAAe,EAGdxkC,KAAKiiC,WACNjiC,KAAK+jC,qBAAqBQ,GAIzBA,IAKLvkC,KAAK+hC,WAAW/6B,QAAQ,SAAC67B,EAAW91B,GAC5B+V,EAAKof,aAAar5B,SAASg6B,EAAUC,OAAOuB,GAAUr2B,QACtDw2B,EAAez3B,KAKnBs3B,IAAarkC,KAAKykC,eAClBzkC,KAAKykC,aAAeJ,EACpBrkC,KAAKqvB,UAAUmV,OxC23NpB,CACDxjC,IAAK,YACLO,MAAO,WwCx3NmB,IAAA+hB,EAAAtjB,KAAlBwkC,EAAkBr8B,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAH,EACfk8B,EAAWrkC,KAAKykC,aAChB5B,EAAY7iC,KAAK+hC,WAAWyC,GAC1BjB,EAAcV,EAAdU,UACFR,EAAQF,EAAUC,OAAOuB,GACzBK,EAAgB7B,EAAUC,OAAOuB,GAAUr2B,KAC3C22B,EAAWpB,EAAYmB,EAE7B,GAAK1kC,KAAK4kC,qBAAuB5kC,KAAK4kC,oBAAoBC,QAAQC,WAAaJ,EAyB3E1kC,KAAK+kC,UAAU/kC,KAAK4kC,oBAAqB7B,EAAOyB,EAAcH,EAAUK,GAAe,GACvF1kC,KAAK4kC,oBAAoBC,QAAQ93B,MAAQs3B,EACzCrkC,KAAKglC,gBAAgBhlC,KAAK4kC,yBA3BgE,CAGtF5kC,KAAKilC,cAAgBjlC,KAAKklC,eAC1BllC,KAAKilC,aAAavV,OAAS,MAM/B,IAAMyV,EAAe,IAAI3V,MACzB2V,EAAapvB,IAAM4uB,EACnBQ,EAAaN,QAAQ93B,MAAQs3B,EAC7Bc,EAAaN,QAAQC,SAAWJ,EAChC1kC,KAAKolC,qBAAuBV,EAE5B1kC,KAAKyV,OAAOY,MAAMC,IAAlB,kBAAA5Q,OAAwCi/B,IAGxCQ,EAAazV,OAAS,WAAA,OAClBpM,EAAKyhB,UAAUI,EAAcpC,EAAOyB,EAAcH,EAAUK,GAAe,IAC/E1kC,KAAKilC,aAAeE,EACpBnlC,KAAKglC,gBAAgBG,MxCm4N1B,CACDnkC,IAAK,YACLO,MAAO,SwC53NC4jC,EAAcpC,EAAOyB,EAAcH,EAAUK,GAAgC,IAAjBW,IAAiBl9B,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,KAAAA,UAAA,GACnFnI,KAAKyV,OAAOY,MAAMC,IAAlB,kBAAA5Q,OACsBg/B,EADtB,WAAAh/B,OAC6C2+B,EAD7C,YAAA3+B,OACgE8+B,EADhE,cAAA9+B,OACyF2/B,IAEzFrlC,KAAKslC,sBAAsBH,EAAcpC,GAErCsC,IACArlC,KAAKulC,sBAAsBj4B,YAAY63B,GACvCnlC,KAAK4kC,oBAAsBO,EAEtBnlC,KAAKkiC,aAAar5B,SAAS67B,IAC5B1kC,KAAKkiC,aAAa1/B,KAAKkiC,IAO/B1kC,KAAKwlC,cAAcnB,GAAU,GACxBrqB,KAAKha,KAAKwlC,cAAcnB,GAAU,IAClCrqB,KAAKha,KAAKylC,iBAAiBjB,EAAcW,EAAcpC,EAAO2B,MxC43NpE,CACD1jC,IAAK,kBACLO,MAAO,SwC13NOmkC,GAAc,IAAA7hB,EAAA7jB,KAE1B0B,MAAMwB,KAAKlD,KAAKulC,sBAAsBjlB,UAAUtZ,QAAQ,SAAAuoB,GACpD,GAAoC,QAAhCA,EAAMoW,QAAQ3uB,cAAlB,CAIA,IAAM4uB,EAAc/hB,EAAKqhB,aAAe,IAAM,IAE9C,GAAI3V,EAAMsV,QAAQ93B,QAAU24B,EAAab,QAAQ93B,QAAUwiB,EAAMsV,QAAQgB,SAAU,CAI/EtW,EAAMsV,QAAQgB,UAAW,EAJsD,IAOvEN,EAA0B1hB,EAA1B0hB,sBAERt0B,WAAW,WACPs0B,EAAsBn3B,YAAYmhB,GAClC1L,EAAKpO,OAAOY,MAAMC,IAAlB,mBAAA5Q,OAAyC6pB,EAAMsV,QAAQC,YACxDc,SxCi4NZ,CACD5kC,IAAK,gBACLO,MAAO,SwC53NK8iC,GAA0B,IAAAzf,EAAA5kB,KAAhB+xB,IAAgB5pB,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,KAAAA,UAAA,GACpC,OAAO,IAAIkC,QAAQ,SAAAuO,GACf3H,WAAW,WACP,IAAM60B,EAAmBlhB,EAAKmd,WAAW,GAAGe,OAAOuB,GAAUr2B,KAE7D,GAAI4W,EAAKwgB,uBAAyBU,EAAkB,CAEhD,IAAIC,EAEAA,EADAhU,EACkBnN,EAAKmd,WAAW,GAAGe,OAAO3rB,MAAMktB,GAEhCzf,EAAKmd,WAAW,GAAGe,OAAO3rB,MAAM,EAAGktB,GAAUv3B,UAGnE,IAAIk5B,GAAW,EAEfD,EAAgB/+B,QAAQ,SAAA+7B,GACpB,IAAMkD,EAAmBlD,EAAM/0B,KAE/B,GAAIi4B,IAAqBH,IAEhBlhB,EAAKsd,aAAar5B,SAASo9B,GAAmB,CAC/CD,GAAW,EACXphB,EAAKnP,OAAOY,MAAMC,IAAlB,8BAAA5Q,OAAoDugC,IAFL,IAKzCC,EADgBthB,EAAKmd,WAAW,GAA9BwB,UACqB0C,EACvBd,EAAe,IAAI3V,MACzB2V,EAAapvB,IAAMmwB,EACnBf,EAAazV,OAAS,WAClB9K,EAAKnP,OAAOY,MAAMC,IAAlB,6BAAA5Q,OAAmDugC,IAC9CrhB,EAAKsd,aAAar5B,SAASo9B,IAC5BrhB,EAAKsd,aAAa1/B,KAAKyjC,GAG3BrtB,QAOXotB,GACDptB,MAGT,SxCm4NR,CACD5X,IAAK,mBACLO,MAAO,SwCh4NQ4kC,EAAqBhB,EAAcpC,EAAO2B,GAAe,IAAAvf,EAAAnlB,KACtE,GAAImmC,EAAsBnmC,KAAK+hC,WAAWthC,OAAS,EAAG,CAElD,IAAI2lC,EAAqBjB,EAAaxB,cAElC3jC,KAAKklC,eACLkB,EAAqBrD,EAAMzuB,GAG3B8xB,EAAqBpmC,KAAKqmC,sBAE1Bp1B,WAAW,WAEHkU,EAAKigB,uBAAyBV,IAC9Bvf,EAAK1P,OAAOY,MAAMC,IAAlB,qCAAA5Q,OAA2Dg/B,IAC3Dvf,EAAKkK,UAAU8W,EAAsB,KAE1C,QxCu4NZ,CACDnlC,IAAK,uBACLO,MAAO,WwCv1NkD,IAAtCsF,EAAsCsB,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GAAtBm+B,EAAsBn+B,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GACjD+G,EAAYlP,KAAKyV,OAAOrP,OAAOqK,WAAWib,kBAAkBE,oBAClE5rB,KAAK4M,SAASu1B,MAAMhyB,UAAUL,UAAUjJ,OAAOqI,EAAWrI,IAErDA,GAAUy/B,IACXtmC,KAAKykC,aAAe,KACpBzkC,KAAKolC,qBAAuB,QxC41NjC,CACDpkC,IAAK,2BACLO,MAAO,WwC11NgC,IAAhBsF,EAAgBsB,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GAC/B+G,EAAYlP,KAAKyV,OAAOrP,OAAOqK,WAAWib,kBAAkBM,wBAClEhsB,KAAK4M,SAASw1B,UAAUjyB,UAAUL,UAAUjJ,OAAOqI,EAAWrI,GAEzDA,IACD7G,KAAKykC,aAAe,KACpBzkC,KAAKolC,qBAAuB,QxC81NjC,CACDpkC,IAAK,+BACLO,MAAO,WwC31NDvB,KAAK4M,SAASu1B,MAAMtW,eAAe0a,aAAe,KAElDvmC,KAAKwmC,oBAAqB,KxCg2N/B,CACDxlC,IAAK,8BACLO,MAAO,WwC51NL,IAAKvB,KAAKwmC,mBAAoB,CAC1B,IAAMjjC,EAAaoC,KAAKsgB,MAAMjmB,KAAKqmC,qBAAuBrmC,KAAKymC,kBAC/DzmC,KAAK4M,SAASu1B,MAAMtW,eAAerlB,MAAM0N,OAAzC,GAAAxO,OAAqD1F,KAAKqmC,qBAA1D,MACArmC,KAAK4M,SAASu1B,MAAMtW,eAAerlB,MAAMmB,MAAzC,GAAAjC,OAAoDnC,EAApD,MAGJvD,KAAK0mC,yBxC+1NN,CACD1lC,IAAK,uBACLO,MAAO,WwC71NL,IAAMolC,EAAc3mC,KAAKyV,OAAO7I,SAASoP,SAAStU,wBAC5Ck/B,EAAW5mC,KAAKyV,OAAO7I,SAASuD,UAAUzI,wBACxCyI,EAAcnQ,KAAK4M,SAASu1B,MAA5BhyB,UAEF02B,EAASD,EAAS/+B,KAAO8+B,EAAY9+B,KAAO,GAC5Ci/B,EAASF,EAASG,MAAQJ,EAAY9+B,KAAOsI,EAAU62B,YAAc,GAEvEC,EAAajnC,KAAK6jC,UAAY8C,EAAY9+B,KAAOsI,EAAU62B,YAAc,EAEzEC,EAAaJ,IACbI,EAAaJ,GAGbI,EAAaH,IACbG,EAAaH,GAGjB32B,EAAU3J,MAAMqB,KAAhB,GAAAnC,OAA0BuhC,EAA1B,QxCi2ND,CACDjmC,IAAK,4BACLO,MAAO,WwC91NLvB,KAAK4M,SAASw1B,UAAUjyB,UAAU3J,MAAMmB,MAAxC,GAAAjC,OAAmD1F,KAAKyV,OAAOlC,MAAMyzB,YAArE,MAEAhnC,KAAK4M,SAASw1B,UAAUjyB,UAAU3J,MAAM0N,OAAxC,GAAAxO,OAAoD1F,KAAKyV,OAAOlC,MAAMyzB,YAAchnC,KAAKymC,iBAAzF,QxCk2ND,CACDzlC,IAAK,wBACLO,MAAO,SwCh2Na4jC,EAAcpC,GAChC,GAAK/iC,KAAKklC,aAAV,CAKA,IAAMgC,EAAalnC,KAAKqmC,qBAAuBtD,EAAMzuB,EAGrD6wB,EAAa3+B,MAAM0N,OAAnB,GAAAxO,OAA+BC,KAAKsgB,MAAMkf,EAAaxB,cAAgBuD,GAAvE,MAEA/B,EAAa3+B,MAAMmB,MAAnB,GAAAjC,OAA8BC,KAAKsgB,MAAMkf,EAAavV,aAAesX,GAArE,MAEA/B,EAAa3+B,MAAMqB,KAAnB,IAAAnC,OAA8Bq9B,EAAMvV,EAAI0Z,EAAxC,MAEA/B,EAAa3+B,MAAM2gC,IAAnB,IAAAzhC,OAA6Bq9B,EAAMrV,EAAIwZ,EAAvC,SxCi2ND,CACDlmC,IAAK,UACLgH,IAAK,WwC94OH,OAAOhI,KAAKyV,OAAOnC,SAAWtT,KAAKyV,OAAOX,SAAW9U,KAAKyV,OAAOrP,OAAOslB,kBAAkBnlB,UxCi5O3F,CACDvF,IAAK,wBACLgH,IAAK,WwCt+NH,OAAIhI,KAAKiiC,UACEjiC,KAAK4M,SAASw1B,UAAUjyB,UAG5BnQ,KAAK4M,SAASu1B,MAAMtW,iBxCy+N5B,CACD7qB,IAAK,eACLgH,IAAK,WwCv+NH,OAAOlH,OAAOuE,KAAKrF,KAAK+hC,WAAW,GAAGe,OAAO,IAAIj6B,SAAS,OxC0+N3D,CACD7H,IAAK,mBACLgH,IAAK,WwCx+NH,OAAIhI,KAAKklC,aACEllC,KAAK+hC,WAAW,GAAGe,OAAO,GAAGzuB,EAAIrU,KAAK+hC,WAAW,GAAGe,OAAO,GAAGxuB,EAGlEtU,KAAK+hC,WAAW,GAAGp6B,MAAQ3H,KAAK+hC,WAAW,GAAG7tB,SxC2+NtD,CACDlT,IAAK,uBACLgH,IAAK,WwCz+NH,OAAIhI,KAAKiiC,UAEEt8B,KAAKsgB,MAAMjmB,KAAKyV,OAAOlC,MAAMyzB,YAAchnC,KAAKymC,kBAGpD9gC,KAAKsgB,MAAMjmB,KAAKyV,OAAOlC,MAAMyzB,YAAchnC,KAAKymC,iBAAmB,KxC4+N3E,CACDzlC,IAAK,sBACLgH,IAAK,WwC1+NH,OAAIhI,KAAKiiC,UACEjiC,KAAKonC,6BAGTpnC,KAAKqnC,8BxC6+NdngC,IAAK,SwC1+NiBlC,GAChBhF,KAAKiiC,UACLjiC,KAAKonC,6BAA+BpiC,EAEpChF,KAAKqnC,6BAA+BriC,MxC++NrC88B,EAzmBT,GyCv6NIr1B,GAAS,CAEX66B,eAFW,SAEIrgC,EAAMwG,GAAY,IAAA3G,EAAA9G,KACzBoE,EAAGM,OAAO+I,GACVS,EAAcjH,EAAMjH,KAAKuT,MAAO,CAC5BwC,IAAKtI,IAEFrJ,EAAGU,MAAM2I,IAChBA,EAAWzG,QAAQ,SAAAugC,GACfr5B,EAAcjH,EAAMH,EAAKyM,MAAOg0B,MAO5CC,OAhBW,SAgBJ9jC,GAAO,IAAA+H,EAAAzL,KACLoM,EAAQ1I,EAAO,mBAMpB4R,GAAMa,eAAelT,KAAKjD,MAG1BA,KAAKg9B,QAAQ/5B,KACTjD,KACA,WAEIyL,EAAKzF,QAAQkQ,QAAU,GAGvB/H,EAAc1C,EAAK8H,OACnB9H,EAAK8H,MAAQ,KAGTnP,EAAGY,QAAQyG,EAAKmB,SAASuD,YACzB1E,EAAKmB,SAASuD,UAAUR,gBAAgB,SAV1C,IAcMnD,EAAkB9I,EAAlB8I,QAASvF,EAASvD,EAATuD,KAdfwgC,EAAAjmC,EAe4CgL,EAf5C,GAAA,GAAAk7B,EAAAD,EAeOj1B,SAAAA,OAfP,IAAAk1B,EAekB/a,GAAUrX,MAf5BoyB,EAemC3xB,EAfnC0xB,EAemC1xB,IAC/B4vB,EAAuB,UAAbnzB,EAAuBvL,EAAO,MACxCwG,EAA0B,UAAb+E,EAAuB,GAAK,CAAEuD,IAAAA,GAEjDjV,OAAOuF,OAAOoF,EAAM,CAChB+G,SAAAA,EACAvL,KAAAA,EAEA2D,UAAWwH,GAAQG,MAAMtL,EAAMuL,EAAU/G,EAAKrF,OAAOqM,aAErDc,MAAOxF,EAAc43B,EAASl4B,KAIlChC,EAAKmB,SAASuD,UAAU7C,YAAY7B,EAAK8H,OAGrCnP,EAAGO,QAAQjB,EAAM+kB,YACjBhd,EAAKrF,OAAOqiB,SAAW/kB,EAAM+kB,UAI7Bhd,EAAK6H,UACD7H,EAAKrF,OAAOuhC,aACZl8B,EAAK8H,MAAMzF,aAAa,cAAe,IAEvCrC,EAAKrF,OAAOqiB,UACZhd,EAAK8H,MAAMzF,aAAa,WAAY,IAEnC1J,EAAGgB,MAAM1B,EAAMsnB,UAChBvf,EAAKuf,OAAStnB,EAAMsnB,QAEpBvf,EAAKrF,OAAO4iB,KAAK5B,QACjB3b,EAAK8H,MAAMzF,aAAa,OAAQ,IAEhCrC,EAAKrF,OAAOya,OACZpV,EAAK8H,MAAMzF,aAAa,QAAS,IAEjCrC,EAAKrF,OAAOqM,aACZhH,EAAK8H,MAAMzF,aAAa,cAAe,KAK/C8E,GAAGid,aAAa5sB,KAAKwI,GAGjBA,EAAK6H,SACL7G,GAAO66B,eAAerkC,KAAKwI,EAAM,SAAUe,GAI/Cf,EAAKrF,OAAOyR,MAAQnU,EAAMmU,MAG1BtE,GAAMoL,MAAM1b,KAAKwI,GAGbA,EAAK6H,SAEDxS,OAAOuE,KAAK3B,GAAOmF,SAAS,WAC5B4D,GAAO66B,eAAerkC,KAAKwI,EAAM,QAAS/H,EAAM6f,SAKpD9X,EAAK6H,SAAY7H,EAAKqa,UAAYra,EAAKb,UAAUgI,KAEjDA,GAAGkd,MAAM7sB,KAAKwI,GAIdA,EAAK6H,SACL7H,EAAK8H,MAAM0C,OAIXxK,EAAKigB,mBACLjgB,EAAKigB,kBAAkBzV,OAI3BxK,EAAKsQ,WAAWrC,WAEpB,IA7GA1Z,KAAKqW,MAAMqG,KAAK,2BzCiqP1B,ISzrPwBpY,GiC8BpBvE,G1C6pPJ,W0C5pPE,SAAAA,EAAYO,EAAQ0F,GAAS,IAAAc,EAAA9G,KAmFzB,GAnFyBC,EAAAD,KAAAD,GACzBC,KAAK0wB,OAAS,GAGd1wB,KAAKgwB,OAAQ,EACbhwB,KAAKqrB,SAAU,EACfrrB,KAAK4nC,QAAS,EAGd5nC,KAAKoH,MAAQgL,GAAQhL,MAGrBpH,KAAKuT,MAAQjT,EAGT8D,EAAGM,OAAO1E,KAAKuT,SACfvT,KAAKuT,MAAQtN,SAASoC,iBAAiBrI,KAAKuT,SAI3CzJ,OAAO+9B,QAAU7nC,KAAKuT,iBAAiBs0B,QAAWzjC,EAAGW,SAAS/E,KAAKuT,QAAUnP,EAAGU,MAAM9E,KAAKuT,UAE5FvT,KAAKuT,MAAQvT,KAAKuT,MAAM,IAI5BvT,KAAKoG,OAASmG,EACV,GACAlJ,GACAtD,EAAKsD,SACL2C,GAAW,GACV,WACG,IACI,OAAOsS,KAAK9D,MAAM1N,EAAKyM,MAAMhM,aAAa,qBAC5C,MAAOmD,GACL,MAAO,IAJd,IAUL1K,KAAK4M,SAAW,CACZuD,UAAW,KACX2L,SAAU,KACVP,QAAS,GACTa,QAAS,GACTJ,SAAU,GACVC,OAAQ,GACRJ,SAAU,CACNkI,MAAO,KACPrG,KAAM,KACNgF,OAAQ,GACRnH,QAAS,KAKjBvb,KAAK8b,SAAW,CACZsL,OAAQ,KACR5G,cAAe,EACf+G,KAAM,IAAI/d,SAIdxJ,KAAK+b,WAAa,CACdqL,QAAQ,GAIZpnB,KAAKgG,QAAU,CACXya,MAAO,GACPvK,QAAS,IAKblW,KAAKqW,MAAQ,IAAIyW,GAAQ9sB,KAAKoG,OAAOiQ,OAGrCrW,KAAKqW,MAAMC,IAAI,SAAUtW,KAAKoG,QAC9BpG,KAAKqW,MAAMC,IAAI,UAAWlE,KAGtBhO,EAAGC,gBAAgBrE,KAAKuT,QAAWnP,EAAGY,QAAQhF,KAAKuT,OAMvD,GAAIvT,KAAKuT,MAAMpH,KACXnM,KAAKqW,MAAMqG,KAAK,6BAKpB,GAAK1c,KAAKoG,OAAOG,QAOjB,GAAK6L,GAAQG,QAAQI,IAArB,CAMA,IAAM4R,EAAQvkB,KAAKuT,MAAMtG,WAAU,GACnCsX,EAAMkE,UAAW,EACjBzoB,KAAK4M,SAASk7B,SAAWvjB,EAIzB,IAAMtd,EAAOjH,KAAKuT,MAAMoyB,QAAQ3uB,cAE5B4T,EAAS,KACTtgB,EAAM,KAGV,OAAQrD,GACJ,IAAK,MAKD,GAHA2jB,EAAS5qB,KAAKuT,MAAMrN,cAAc,UAG9B9B,EAAGY,QAAQ4lB,IAaX,GAXAtgB,EAAMkc,GAASoE,EAAOrjB,aAAa,QACnCvH,KAAKwS,SdpJlB,SAA0BlI,GAE7B,MAAI,8EAA8EoH,KAAKpH,GAC5EqiB,GAAUnV,QAIjB,wDAAwD9F,KAAKpH,GACtDqiB,GAAUpV,MAGd,KcyIyBwwB,CAAiBz9B,EAAItH,YAGrChD,KAAK4M,SAASuD,UAAYnQ,KAAKuT,MAC/BvT,KAAKuT,MAAQqX,EAGb5qB,KAAK4M,SAASuD,UAAUjB,UAAY,GAGhC5E,EAAI09B,OAAOvnC,OAAQ,CACnB,IAAMwnC,EAAS,CAAC,IAAK,QAEjBA,EAAOp/B,SAASyB,EAAI49B,aAAalgC,IAAI,eACrChI,KAAKoG,OAAOqiB,UAAW,GAEvBwf,EAAOp/B,SAASyB,EAAI49B,aAAalgC,IAAI,WACrChI,KAAKoG,OAAO4iB,KAAK5B,QAAS,GAK1BpnB,KAAK6mB,WACL7mB,KAAKoG,OAAOqM,YAAcw1B,EAAOp/B,SAASyB,EAAI49B,aAAalgC,IAAI,gBAC/DhI,KAAKoG,OAAOoR,QAAQkjB,GAAKpwB,EAAI49B,aAAalgC,IAAI,OAE9ChI,KAAKoG,OAAOqM,aAAc,QAKlCzS,KAAKwS,SAAWxS,KAAKuT,MAAMhM,aAAavH,KAAKoG,OAAOqH,WAAWgH,MAAMjC,UAGrExS,KAAKuT,MAAM5D,gBAAgB3P,KAAKoG,OAAOqH,WAAWgH,MAAMjC,UAI5D,GAAIpO,EAAGgB,MAAMpF,KAAKwS,YAAc1R,OAAOuE,KAAKsnB,IAAW9jB,SAAS7I,KAAKwS,UAEjE,YADAxS,KAAKqW,MAAMoG,MAAM,kCAKrBzc,KAAKiH,KAAO2lB,GAAMta,MAElB,MAEJ,IAAK,QACL,IAAK,QACDtS,KAAKiH,KAAOA,EACZjH,KAAKwS,SAAWma,GAAUrX,MAGtBtV,KAAKuT,MAAMygB,aAAa,iBACxBh0B,KAAKoG,OAAOuhC,aAAc,GAE1B3nC,KAAKuT,MAAMygB,aAAa,cACxBh0B,KAAKoG,OAAOqiB,UAAW,IAEvBzoB,KAAKuT,MAAMygB,aAAa,gBAAkBh0B,KAAKuT,MAAMygB,aAAa,yBAClEh0B,KAAKoG,OAAOqM,aAAc,GAE1BzS,KAAKuT,MAAMygB,aAAa,WACxBh0B,KAAKoG,OAAOya,OAAQ,GAEpB7gB,KAAKuT,MAAMygB,aAAa,UACxBh0B,KAAKoG,OAAO4iB,KAAK5B,QAAS,GAG9B,MAEJ,QAEI,YADApnB,KAAKqW,MAAMoG,MAAM,kCAKzBzc,KAAK4K,UAAYwH,GAAQG,MAAMvS,KAAKiH,KAAMjH,KAAKwS,SAAUxS,KAAKoG,OAAOqM,aAGhEzS,KAAK4K,UAAU+H,KAKpB3S,KAAKqL,eAAiB,GAGtBrL,KAAK4G,UAAY,IAAIoqB,GAAUhxB,MAG/BA,KAAKiY,QAAU,IAAID,GAAQhY,MAG3BA,KAAKuT,MAAMpH,KAAOnM,KAGboE,EAAGY,QAAQhF,KAAK4M,SAASuD,aAC1BnQ,KAAK4M,SAASuD,UAAYpC,EAAc,MAAO,CAAEo6B,SAAU,IAC3Dx7B,EAAK3M,KAAKuT,MAAOvT,KAAK4M,SAASuD,YAInCyC,GAAGid,aAAa5sB,KAAKjD,MAGrBuT,GAAMoL,MAAM1b,KAAKjD,MAGbA,KAAKoG,OAAOiQ,OACZ/K,EAAGrI,KAAKjD,KAAMA,KAAK4M,SAASuD,UAAWnQ,KAAKoG,OAAO+E,OAAOoS,KAAK,KAAM,SAAArY,GACjE4B,EAAKuP,MAAMC,IAAX,UAAA5Q,OAAyBR,EAAM+B,UAMnCjH,KAAKsT,SAAYtT,KAAK8lB,UAAY9lB,KAAK4K,UAAUgI,KACjDA,GAAGkd,MAAM7sB,KAAKjD,MAIlBA,KAAK4G,UAAUuJ,YAGfnQ,KAAK4G,UAAUpH,SAGfQ,KAAK+b,WAAa,IAAIqS,GAAWpuB,MAG7BA,KAAKoG,OAAO8kB,IAAI3kB,UAChBvG,KAAKkrB,IAAM,IAAImR,GAAIr8B,OAInBA,KAAKsT,SAAWtT,KAAKoG,OAAOqiB,UAC5BxX,WAAW,WAAA,OAAMnK,EAAKkP,QAAQ,IAIlChW,KAAK6wB,aAAe,EAGhB7wB,KAAKoG,OAAOslB,kBAAkBnlB,UAC9BvG,KAAK0rB,kBAAoB,IAAIoW,GAAkB9hC,QAhE/CA,KAAKqW,MAAMoG,MAAM,iCA5GjBzc,KAAKqW,MAAMoG,MAAM,iCAPjBzc,KAAKqW,MAAMoG,MAAM,yCAZjBzc,KAAKqW,MAAMoG,MAAM,4C1CkzRzB,OAn+BAxb,EAAalB,EAAM,CAAC,CAClBiB,IAAK,OAKLO,MAAO,W0ChnPF,IAAAkK,EAAAzL,KACH,OAAKoE,EAAGQ,SAAS5E,KAAKuT,MAAMyC,OAKxBhW,KAAKkrB,KAAOlrB,KAAKkrB,IAAI3kB,SACrBvG,KAAKkrB,IAAI2R,eAAe7iB,KAAK,WAAA,OAAMvO,EAAKyf,IAAIlV,SAAQkE,MAAM,WAAA,OAAMzO,EAAK8H,MAAMyC,SAIxEhW,KAAKuT,MAAMyC,QATP,O1CqoPZ,CACDhV,IAAK,QACLO,MAAO,W0CvnPAvB,KAAKmrB,SAAY/mB,EAAGQ,SAAS5E,KAAKuT,MAAMiI,QAI7Cxb,KAAKuT,MAAMiI,U1C8nPZ,CACDxa,IAAK,aAMLO,MAAO,S0ClmPEmC,IAEQU,EAAGO,QAAQjB,GAASA,GAAS1D,KAAKmrB,SAG7CnrB,KAAKgW,OAELhW,KAAKwb,U1CymPV,CACDxa,IAAK,OACLO,MAAO,W0CnmPDvB,KAAKsT,SACLtT,KAAKwb,QACLxb,KAAKyb,WACErX,EAAGQ,SAAS5E,KAAKuT,MAAMglB,OAC9Bv4B,KAAKuT,MAAMglB,S1C2mPhB,CACDv3B,IAAK,UACLO,MAAO,W0CrmPLvB,KAAK2V,YAAc,I1C6mPpB,CACD3U,IAAK,SACLO,MAAO,S0CxmPFoW,GACH3X,KAAK2V,YAAc3V,KAAK2V,aAAevR,EAAGG,OAAOoT,GAAYA,EAAW3X,KAAKoG,OAAOuR,Y1C+mPrF,CACD3W,IAAK,UACLO,MAAO,S0C1mPDoW,GACJ3X,KAAK2V,YAAc3V,KAAK2V,aAAevR,EAAGG,OAAOoT,GAAYA,EAAW3X,KAAKoG,OAAOuR,Y1CinPrF,CACD3W,IAAK,iBAMLO,MAAO,S0Cz/OMgE,GACX,IAAM4W,EAASnc,KAAKuT,MAAMsN,MAAQ,EAAI7gB,KAAKmc,OAC3Cnc,KAAKmc,OAASA,GAAU/X,EAAGG,OAAOgB,GAAQA,EAAO,K1CggPlD,CACDvE,IAAK,iBACLO,MAAO,S0C3/OMgE,GACXvF,KAAK6xB,gBAAgBtsB,K1CkgPtB,CACDvE,IAAK,iBAMLO,MAAO,S0CvqOMmC,GACXoY,GAASjV,OAAO5D,KAAKjD,KAAM0D,GAAO,K1C8qOnC,CACD1C,IAAK,UAMLO,MAAO,W0C7lOD6Q,GAAQc,SACRlT,KAAKuT,MAAM60B,mC1CumOhB,CACDpnC,IAAK,iBACLO,MAAO,S0CjmOMsF,GAEX,GAAI7G,KAAK4K,UAAUgI,KAAO5S,KAAKozB,QAAS,CAEpC,IAAMiV,EAAWr4B,EAAShQ,KAAK4M,SAASuD,UAAWnQ,KAAKoG,OAAOqK,WAAWoY,cAEpEhZ,OAA0B,IAAXhJ,OAAyB5E,GAAa4E,EAErDyhC,EAAS14B,EAAY5P,KAAK4M,SAASuD,UAAWnQ,KAAKoG,OAAOqK,WAAWoY,aAAchZ,GAQzF,GALIy4B,GAAUtoC,KAAKoG,OAAO0U,SAASjS,SAAS,cAAgBzE,EAAGgB,MAAMpF,KAAKoG,OAAOyV,WAC7Ef,GAASoJ,WAAWjhB,KAAKjD,MAAM,GAI/BsoC,IAAWD,EAAU,CACrB,IAAME,EAAYD,EAAS,iBAAmB,gBAC9Cv8B,EAAa9I,KAAKjD,KAAMA,KAAKuT,MAAOg1B,GAGxC,OAAQD,EAGZ,OAAO,I1CwmOR,CACDtnC,IAAK,KACLO,MAAO,S0ClmON2D,EAAO8F,GACNM,EAAGrI,KAAKjD,KAAMA,KAAK4M,SAASuD,UAAWjL,EAAO8F,K1C0mO/C,CACDhK,IAAK,OACLO,MAAO,S0CpmOJ2D,EAAO8F,GACRQ,EAAKvI,KAAKjD,KAAMA,KAAK4M,SAASuD,UAAWjL,EAAO8F,K1C4mOjD,CACDhK,IAAK,MACLO,MAAO,S0CtmOL2D,EAAO8F,GACPO,EAAIvL,KAAK4M,SAASuD,UAAWjL,EAAO8F,K1CgnOrC,CACDhK,IAAK,UACLO,MAAO,S0CxmODyJ,GAAwB,IAAA+U,EAAA/f,KAAdwoC,EAAcrgC,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,IAAAA,UAAA,GAC5B,GAAKnI,KAAKgwB,MAAV,CAIA,IAAMztB,EAAO,WAET0D,SAAS8C,KAAKvC,MAAMqnB,SAAW,GAG/B9N,EAAKtL,MAAQ,KAGT+zB,GACI1nC,OAAOuE,KAAK0a,EAAKnT,UAAUnM,SAE3B0N,EAAc4R,EAAKnT,SAAS2O,QAAQvF,MACpC7H,EAAc4R,EAAKnT,SAASkP,UAC5B3N,EAAc4R,EAAKnT,SAASkO,UAC5B3M,EAAc4R,EAAKnT,SAASC,SAG5BkT,EAAKnT,SAAS2O,QAAQvF,KAAO,KAC7B+J,EAAKnT,SAASkP,SAAW,KACzBiE,EAAKnT,SAASkO,SAAW,KACzBiF,EAAKnT,SAASC,QAAU,MAIxBzI,EAAGQ,SAASoG,IACZA,MlCrgCb,WACChL,MAAQA,KAAKqL,iBACbrL,KAAKqL,eAAerE,QAAQ,SAAAwP,GAAQ,IACxBxR,EAAqCwR,EAArCxR,QAASiC,EAA4BuP,EAA5BvP,KAAM+D,EAAsBwL,EAAtBxL,SAAUhF,EAAYwQ,EAAZxQ,QACjChB,EAAQ8F,oBAAoB7D,EAAM+D,EAAUhF,KAGhDhG,KAAKqL,eAAiB,KkCkgCEpI,KAAK8c,GAGrBvR,EAAeuR,EAAKnT,SAASk7B,SAAU/nB,EAAKnT,SAASuD,WAGrDpE,EAAa9I,KAAK8c,EAAMA,EAAKnT,SAASk7B,SAAU,aAAa,GAGzD1jC,EAAGQ,SAASoG,IACZA,EAAS/H,KAAK8c,EAAKnT,SAASk7B,UAIhC/nB,EAAKiQ,OAAQ,EAGb/e,WAAW,WACP8O,EAAKnT,SAAW,KAChBmT,EAAKxM,MAAQ,MACd,OAKXvT,KAAKu4B,OAGL9H,aAAazwB,KAAK0wB,OAAOrF,SACzBoF,aAAazwB,KAAK0wB,OAAO5V,UACzB2V,aAAazwB,KAAK0wB,OAAO8B,SAGrBxyB,KAAKsT,SAELV,GAAG+J,qBAAqB1Z,KAAKjD,MAAM,GAGnCuC,KACOvC,KAAK6mB,WAEZiV,cAAc97B,KAAK0wB,OAAOqL,WAC1BD,cAAc97B,KAAK0wB,OAAOvF,SAGP,OAAfnrB,KAAKyU,OAAkBrQ,EAAGQ,SAAS5E,KAAKyU,MAAMuoB,UAC9Ch9B,KAAKyU,MAAMuoB,UAIfz6B,KACOvC,KAAKkV,UAGO,OAAflV,KAAKyU,OACLzU,KAAKyU,MAAMg0B,SAASzuB,KAAKzX,GAI7B0O,WAAW1O,EAAM,S1CymOtB,CACDvB,IAAK,WACLO,MAAO,S0CnmOA0F,GACL,OAAOmL,GAAQgB,KAAKnQ,KAAKjD,KAAMiH,K1C4mOhC,CACDjG,IAAK,UACLgH,IAAK,W0C59PH,OAAOhI,KAAKwS,WAAama,GAAUrX,Q1C+9PpC,CACDtU,IAAK,UACLgH,IAAK,W0C79PH,OAAOhI,KAAK6mB,WAAa7mB,KAAKkV,U1Cg+P/B,CACDlU,IAAK,YACLgH,IAAK,W0C99PH,OAAOhI,KAAKwS,WAAama,GAAUnV,U1Ci+PpC,CACDxW,IAAK,UACLgH,IAAK,W0C/9PH,OAAOhI,KAAKwS,WAAama,GAAUpV,Q1Ck+PpC,CACDvW,IAAK,UACLgH,IAAK,W0Ch+PH,OAAOhI,KAAKiH,OAAS2lB,GAAMta,Q1Cm+P5B,CACDtR,IAAK,UACLgH,IAAK,W0Cj+PH,OAAOhI,KAAKiH,OAAS2lB,GAAMva,Q1Co+P5B,CACDrR,IAAK,UACLgH,IAAK,W0Cn8PH,OAAOnE,QAAQ7D,KAAKgwB,QAAUhwB,KAAK4V,SAAW5V,KAAKqzB,S1C08PpD,CACDryB,IAAK,SACLgH,IAAK,W0Cr8PH,OAAOnE,QAAQ7D,KAAKuT,MAAMqC,U1C48P3B,CACD5U,IAAK,UACLgH,IAAK,W0Cv8PH,OAAOnE,QAAQ7D,KAAK4V,QAA+B,IAArB5V,KAAK2V,e1C88PpC,CACD3U,IAAK,QACLgH,IAAK,W0Cz8PH,OAAOnE,QAAQ7D,KAAKuT,MAAM8f,S1C48P3B,CACDryB,IAAK,cACLkG,IAAK,S0Cr5PSxD,GAEZ,GAAK1D,KAAKsc,SAAV,CAKA,IAAMosB,EAAetkC,EAAGG,OAAOb,IAAUA,EAAQ,EAGjD1D,KAAKuT,MAAMoC,YAAc+yB,EAAe/iC,KAAK2B,IAAI5D,EAAO1D,KAAKsc,UAAY,EAGzEtc,KAAKqW,MAAMC,IAAX,cAAA5Q,OAA6B1F,KAAK2V,YAAlC,e1Cy5PF3N,IAAK,W0Cl5PH,OAAOxD,OAAOxE,KAAKuT,MAAMoC,e1Cy5P1B,CACD3U,IAAK,WACLgH,IAAK,W0Cr5PQ,IACHsZ,EAAathB,KAAKuT,MAAlB+N,SAGR,OAAIld,EAAGG,OAAO+c,GACHA,EAMPA,GAAYA,EAAS7gB,QAAUT,KAAKsc,SAAW,EACxCgF,EAAS0I,IAAI,GAAKhqB,KAAKsc,SAG3B,I1C05PR,CACDtb,IAAK,UACLgH,IAAK,W0Cr5PH,OAAOnE,QAAQ7D,KAAKuT,MAAM0O,W1C45P3B,CACDjhB,IAAK,WACLgH,IAAK,W0Ct5PH,IAAM2gC,EAAe9iC,WAAW7F,KAAKoG,OAAOkW,UAEtCssB,GAAgB5oC,KAAKuT,OAAS,IAAI+I,SAClCA,EAAYlY,EAAGG,OAAOqkC,IAAiBA,IAAiBC,EAAAA,EAAeD,EAAJ,EAGzE,OAAOD,GAAgBrsB,I1C85PxB,CACDtb,IAAK,SACLkG,IAAK,S0Cz5PI3F,GACP,IAAI4a,EAAS5a,EAIT6C,EAAGM,OAAOyX,KACVA,EAAS3X,OAAO2X,IAIf/X,EAAGG,OAAO4X,KACXA,EAASnc,KAAKiY,QAAQjQ,IAAI,WAIzB5D,EAAGG,OAAO4X,KACRA,EAAWnc,KAAKoG,OAAhB+V,QAIHA,EAlBQ,IAmBRA,EAnBQ,GAsBRA,EArBQ,IAsBRA,EAtBQ,GA0BZnc,KAAKoG,OAAO+V,OAASA,EAGrBnc,KAAKuT,MAAM4I,OAASA,GAGf/X,EAAGgB,MAAM7D,IAAUvB,KAAK6gB,OAAS1E,EAAS,IAC3Cnc,KAAK6gB,OAAQ,I1C+5PnB7Y,IAAK,W0Cv5PH,OAAOxD,OAAOxE,KAAKuT,MAAM4I,U1C05P1B,CACDnb,IAAK,QACLkG,IAAK,S0Cp4PG0U,GACN,IAAI/U,EAAS+U,EAGRxX,EAAGO,QAAQkC,KACZA,EAAS7G,KAAKiY,QAAQjQ,IAAI,UAIzB5D,EAAGO,QAAQkC,KACZA,EAAS7G,KAAKoG,OAAOya,OAIzB7gB,KAAKoG,OAAOya,MAAQha,EAGpB7G,KAAKuT,MAAMsN,MAAQha,G1Cw4PrBmB,IAAK,W0Cj4PH,OAAOnE,QAAQ7D,KAAKuT,MAAMsN,S1Cw4P3B,CACD7f,IAAK,WACLgH,IAAK,W0Cl4PH,OAAKhI,KAAKsT,YAINtT,KAAKozB,UAMLvvB,QAAQ7D,KAAKuT,MAAMu1B,cACnBjlC,QAAQ7D,KAAKuT,MAAMw1B,8BACnBllC,QAAQ7D,KAAKuT,MAAMy1B,aAAehpC,KAAKuT,MAAMy1B,YAAYvoC,Y1Cw4P9D,CACDO,IAAK,QACLkG,IAAK,S0Cl4PGxD,GAAO,IAAAsd,EAAAhhB,KACTygB,EAAQ,KAERrc,EAAGG,OAAOb,KACV+c,EAAQ/c,GAGPU,EAAGG,OAAOkc,KACXA,EAAQzgB,KAAKiY,QAAQjQ,IAAI,UAGxB5D,EAAGG,OAAOkc,KACXA,EAAQzgB,KAAKoG,OAAOqa,MAAMwI,UAZjB,IAgBS3hB,EAA2BtH,KAAzCipC,aAAiCrjC,EAAQ5F,KAAtBkpC,aAC3BzoB,EC5oBD,WAA8C,IAA/B/c,EAA+ByE,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAvB,EAAGb,EAAoBa,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAd,EAAGvC,EAAWuC,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAL,IAC5C,OAAOxC,KAAK2B,IAAI3B,KAAKC,IAAIlC,EAAO4D,GAAM1B,GD2oB1BujC,CAAM1oB,EAAOnZ,EAAK1B,GAG1B5F,KAAKoG,OAAOqa,MAAMwI,SAAWxI,EAG7BxP,WAAW,WACP+P,EAAKzN,MAAMgoB,aAAe9a,GAC3B,I1Cy4PLzY,IAAK,W0Cl4PH,OAAOxD,OAAOxE,KAAKuT,MAAMgoB,gB1Cy4P1B,CACDv6B,IAAK,eACLgH,IAAK,W0Cp4PH,OAAIhI,KAAK6mB,UAEElhB,KAAK2B,IAALwE,MAAAnG,KAAI/C,EAAQ5C,KAAKgG,QAAQya,QAGhCzgB,KAAKkV,QAEE,GAIJ,Q1C24PR,CACDlU,IAAK,eACLgH,IAAK,W0Ct4PH,OAAIhI,KAAK6mB,UAEElhB,KAAKC,IAALkG,MAAAnG,KAAI/C,EAAQ5C,KAAKgG,QAAQya,QAGhCzgB,KAAKkV,QAEE,EAIJ,K1C+4PR,CACDlU,IAAK,UACLkG,IAAK,S0Cz4PKxD,GACR,IAAM0C,EAASpG,KAAKoG,OAAO8P,QACrBlQ,EAAUhG,KAAKgG,QAAQkQ,QAE7B,GAAKlQ,EAAQvF,OAAb,CAIA,IAAIyV,EAAU,EACT9R,EAAGgB,MAAM1B,IAAUc,OAAOd,GAC3B1D,KAAKiY,QAAQjQ,IAAI,WACjB5B,EAAO6iB,SACP7iB,EAAOuc,SACT5R,KAAK3M,EAAGG,QAEN6kC,GAAgB,EAEpB,IAAKpjC,EAAQ6C,SAASqN,GAAU,CAC5B,IAAM3U,E1BrtBX,SAAiBuD,EAAOvD,GAC3B,OAAK6C,EAAGU,MAAMA,IAAWA,EAAMrE,OAIxBqE,EAAMwH,OAAO,SAAC+8B,EAAMC,GAAP,OAAiB3jC,KAAKkvB,IAAIyU,EAAO/nC,GAASoE,KAAKkvB,IAAIwU,EAAO9nC,GAAS+nC,EAAOD,IAHnF,K0BmtBWE,CAAQvjC,EAASkQ,GAC/BlW,KAAKqW,MAAMqG,KAAX,+BAAAhX,OAA+CwQ,EAA/C,YAAAxQ,OAAiEnE,EAAjE,aACA2U,EAAU3U,EAGV6nC,GAAgB,EAIpBhjC,EAAO6iB,SAAW/S,EAGlBlW,KAAKuT,MAAM2C,QAAUA,EAGjBkzB,GACAppC,KAAKiY,QAAQ/Q,IAAI,CAAEgP,QAAAA,M1Cy4PzBlO,IAAK,W0Cj4PH,OAAOhI,KAAKuT,MAAM2C,U1C04PnB,CACDlV,IAAK,OACLkG,IAAK,S0Cp4PExD,GACL,IAAMmD,EAASzC,EAAGO,QAAQjB,GAASA,EAAQ1D,KAAKoG,OAAO4iB,KAAK5B,OAC5DpnB,KAAKoG,OAAO4iB,KAAK5B,OAASvgB,EAC1B7G,KAAKuT,MAAMyV,KAAOniB,G1C+6PpBmB,IAAK,W0C73PH,OAAOnE,QAAQ7D,KAAKuT,MAAMyV,Q1Cq4P3B,CACDhoB,IAAK,SACLkG,IAAK,S0Ch4PIxD,GACP+I,GAAO+6B,OAAOvkC,KAAKjD,KAAM0D,I1Cs4P3BsE,IAAK,W0C/3PH,OAAOhI,KAAKuT,MAAMslB,a1Cs4PnB,CACD73B,IAAK,WACLgH,IAAK,W0Cl4PQ,IACHid,EAAajlB,KAAKoG,OAAOyf,KAAzBZ,SAER,OAAO7gB,EAAGkG,IAAI2a,GAAYA,EAAWjlB,KAAKyM,Q1Cu4P5CvF,IAAK,S0Cj4PMxD,GACJU,EAAGkG,IAAI5G,KAIZ1D,KAAKoG,OAAOyf,KAAKZ,SAAWvhB,EAE5BoX,GAASkK,eAAe/hB,KAAKjD,S1Cu4P9B,CACDgB,IAAK,SACLkG,IAAK,S0Cl4PIxD,GACF1D,KAAK8U,QAKVlC,GAAGsd,UAAUjtB,KAAKjD,KAAM0D,GAAO,GAAOwW,MAAM,cAJxCla,KAAKqW,MAAMqG,KAAK,qC1C44PtB1U,IAAK,W0Cj4PH,OAAKhI,KAAK8U,QAIH9U,KAAKuT,MAAMhM,aAAa,UAHpB,O1C24PZ,CACDvG,IAAK,QACLgH,IAAK,W0Cn4PH,IAAKhI,KAAK8U,QACN,OAAO,KAGX,IAAMd,EAAQD,GAAkBQ,GAAetR,KAAKjD,OAEpD,OAAOoE,EAAGU,MAAMkP,GAASA,EAAMuJ,KAAK,KAAOvJ,G1Cy4P7C9M,IAAK,S0Cn4PGxD,GACD1D,KAAK8U,QAKL1Q,EAAGM,OAAOhB,IAAWmQ,GAAcnQ,IAKxC1D,KAAKoG,OAAO4N,MAAQtQ,EAEpBmR,GAAe5R,KAAKjD,OANhBA,KAAKqW,MAAMoG,MAAX,mCAAA/W,OAAoDhC,EAApD,MALA1D,KAAKqW,MAAMqG,KAAK,4C1Co5PrB,CACD1b,IAAK,WACLkG,IAAK,S0Cp4PMxD,GACT,IAAMmD,EAASzC,EAAGO,QAAQjB,GAASA,EAAQ1D,KAAKoG,OAAOqiB,SACvDzoB,KAAKoG,OAAOqiB,SAAW5hB,G1C04PzBmB,IAAK,W0Cn4PH,OAAOnE,QAAQ7D,KAAKoG,OAAOqiB,Y1Cs4P5B,CACDznB,IAAK,eACLkG,IAAK,S0Cz3PUxD,GACboY,GAAS5U,IAAIjE,KAAKjD,KAAM0D,GAAO,I1C+3PjCsE,IAAK,W0Cz3PY,IAAAsf,EACmBtnB,KAAK8b,SAA/B2H,EADO6D,EACP7D,QAASjD,EADF8G,EACE9G,aACjB,OAAOiD,EAAUjD,GAAgB,I1Cm4PlC,CACDxf,IAAK,WACLkG,IAAK,S0C73PMxD,GACToY,GAAS8L,YAAY3kB,KAAKjD,KAAM0D,GAAO,I1Cm4PzCsE,IAAK,W0C53PH,OAAQ8T,GAASqM,gBAAgBllB,KAAKjD,OAAS,IAAI0jB,W1Cq4PpD,CACD1iB,IAAK,MACLkG,IAAK,S0C/3PCxD,GAEJ,GAAK0O,GAAQU,IAAb,CAKA,IAAMjM,EAASzC,EAAGO,QAAQjB,GAASA,GAAS1D,KAAK8S,IAI7C1O,EAAGQ,SAAS5E,KAAKuT,MAAMR,4BACvB/S,KAAKuT,MAAMR,0BAA0BlM,EAASiM,GAAaA,IAI3D1O,EAAGQ,SAAS5E,KAAKuT,MAAMi2B,4BAClBxpC,KAAK8S,KAAOjM,EACb7G,KAAKuT,MAAMi2B,0BACJxpC,KAAK8S,MAAQjM,GACpBZ,SAASwjC,0B1Cs4PnBzhC,IAAK,W0C73PH,OAAKoK,GAAQU,IAKR1O,EAAGgB,MAAMpF,KAAKuT,MAAMm2B,wBAKlB1pC,KAAKuT,QAAUtN,SAAS0jC,wBAJpB3pC,KAAKuT,MAAMm2B,yBAA2B52B,GALtC,Q1Cy4PX,CAAC,CACH9R,IAAK,YACLO,MAAO,S0CpsPQ0F,EAAMuL,EAAUo3B,GAC7B,OAAOx3B,GAAQG,MAAMtL,EAAMuL,EAAUo3B,K1C4sPtC,CACD5oC,IAAK,aACLO,MAAO,S0CtsPS+I,EAAKiF,GACnB,OAAO+J,GAAWhP,EAAKiF,K1C8sPxB,CACDvO,IAAK,QACLO,MAAO,S0CxsPIqH,GAAwB,IAAd5C,EAAcmC,UAAA1H,OAAA,QAAAwB,IAAAkG,UAAA,GAAAA,UAAA,GAAJ,GACzBC,EAAU,KAUd,OARIhE,EAAGM,OAAOkE,GACVR,EAAU1G,MAAMwB,KAAK+C,SAASoC,iBAAiBO,IACxCxE,EAAGW,SAAS6D,GACnBR,EAAU1G,MAAMwB,KAAK0F,GACdxE,EAAGU,MAAM8D,KAChBR,EAAUQ,EAASN,OAAOlE,EAAGY,UAG7BZ,EAAGgB,MAAMgD,GACF,KAGJA,EAAQc,IAAI,SAAAC,GAAC,OAAI,IAAIpJ,EAAKoJ,EAAGnD,S1C+sPjCjG,EA1uCT,GA+uCA,O0ChtPFA,GAAKsD,UjC1tCqBiB,GiC0tCAjB,GjCztCfiV,KAAK9D,MAAM8D,KAAKE,UAAUlU,MTy6R5BvE","file":"plyr.min.js","sourcesContent":["typeof navigator === \"object\" && (function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define('Plyr', factory) :\n (global = global || self, global.Plyr = factory());\n}(this, function () { 'use strict';\n\n function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n }\n\n function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n }\n\n function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n }\n\n function _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest();\n }\n\n function _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread();\n }\n\n function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];\n\n return arr2;\n }\n }\n\n function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n }\n\n function _iterableToArray(iter) {\n if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === \"[object Arguments]\") return Array.from(iter);\n }\n\n function _iterableToArrayLimit(arr, i) {\n var _arr = [];\n var _n = true;\n var _d = false;\n var _e = undefined;\n\n try {\n for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n }\n\n function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance\");\n }\n\n function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance\");\n }\n\n var defaults = {\n addCSS: true,\n // Add CSS to the element to improve usability (required here or in your CSS!)\n thumbWidth: 15,\n // The width of the thumb handle\n watch: true // Watch for new elements that match a string target\n\n };\n\n // Element matches a selector\n function matches(element, selector) {\n\n function match() {\n return Array.from(document.querySelectorAll(selector)).includes(this);\n }\n\n var matches = match;\n return matches.call(element, selector);\n }\n\n // Trigger event\n function trigger(element, type) {\n if (!element || !type) {\n return;\n } // Create and dispatch the event\n\n\n var event = new Event(type); // Dispatch the event\n\n element.dispatchEvent(event);\n }\n\n // ==========================================================================\n // Type checking utils\n // ==========================================================================\n var getConstructor = function getConstructor(input) {\n return input !== null && typeof input !== 'undefined' ? input.constructor : null;\n };\n\n var instanceOf = function instanceOf(input, constructor) {\n return Boolean(input && constructor && input instanceof constructor);\n };\n\n var isNullOrUndefined = function isNullOrUndefined(input) {\n return input === null || typeof input === 'undefined';\n };\n\n var isObject = function isObject(input) {\n return getConstructor(input) === Object;\n };\n\n var isNumber = function isNumber(input) {\n return getConstructor(input) === Number && !Number.isNaN(input);\n };\n\n var isString = function isString(input) {\n return getConstructor(input) === String;\n };\n\n var isBoolean = function isBoolean(input) {\n return getConstructor(input) === Boolean;\n };\n\n var isFunction = function isFunction(input) {\n return getConstructor(input) === Function;\n };\n\n var isArray = function isArray(input) {\n return Array.isArray(input);\n };\n\n var isNodeList = function isNodeList(input) {\n return instanceOf(input, NodeList);\n };\n\n var isElement = function isElement(input) {\n return instanceOf(input, Element);\n };\n\n var isEvent = function isEvent(input) {\n return instanceOf(input, Event);\n };\n\n var isEmpty = function isEmpty(input) {\n return isNullOrUndefined(input) || (isString(input) || isArray(input) || isNodeList(input)) && !input.length || isObject(input) && !Object.keys(input).length;\n };\n\n var is = {\n nullOrUndefined: isNullOrUndefined,\n object: isObject,\n number: isNumber,\n string: isString,\n boolean: isBoolean,\n function: isFunction,\n array: isArray,\n nodeList: isNodeList,\n element: isElement,\n event: isEvent,\n empty: isEmpty\n };\n\n // Get the number of decimal places\n function getDecimalPlaces(value) {\n var match = \"\".concat(value).match(/(?:\\.(\\d+))?(?:[eE]([+-]?\\d+))?$/);\n\n if (!match) {\n return 0;\n }\n\n return Math.max(0, // Number of digits right of decimal point.\n (match[1] ? match[1].length : 0) - ( // Adjust for scientific notation.\n match[2] ? +match[2] : 0));\n } // Round to the nearest step\n\n function round(number, step) {\n if (step < 1) {\n var places = getDecimalPlaces(step);\n return parseFloat(number.toFixed(places));\n }\n\n return Math.round(number / step) * step;\n }\n\n var RangeTouch =\n /*#__PURE__*/\n function () {\n /**\n * Setup a new instance\n * @param {String|Element} target\n * @param {Object} options\n */\n function RangeTouch(target, options) {\n _classCallCheck(this, RangeTouch);\n\n if (is.element(target)) {\n // An Element is passed, use it directly\n this.element = target;\n } else if (is.string(target)) {\n // A CSS Selector is passed, fetch it from the DOM\n this.element = document.querySelector(target);\n }\n\n if (!is.element(this.element) || !is.empty(this.element.rangeTouch)) {\n return;\n }\n\n this.config = Object.assign({}, defaults, options);\n this.init();\n }\n\n _createClass(RangeTouch, [{\n key: \"init\",\n value: function init() {\n // Bail if not a touch enabled device\n if (!RangeTouch.enabled) {\n return;\n } // Add useful CSS\n\n\n if (this.config.addCSS) {\n // TODO: Restore original values on destroy\n this.element.style.userSelect = 'none';\n this.element.style.webKitUserSelect = 'none';\n this.element.style.touchAction = 'manipulation';\n }\n\n this.listeners(true);\n this.element.rangeTouch = this;\n }\n }, {\n key: \"destroy\",\n value: function destroy() {\n // Bail if not a touch enabled device\n if (!RangeTouch.enabled) {\n return;\n }\n\n this.listeners(false);\n this.element.rangeTouch = null;\n }\n }, {\n key: \"listeners\",\n value: function listeners(toggle) {\n var _this = this;\n\n var method = toggle ? 'addEventListener' : 'removeEventListener'; // Listen for events\n\n ['touchstart', 'touchmove', 'touchend'].forEach(function (type) {\n _this.element[method](type, function (event) {\n return _this.set(event);\n }, false);\n });\n }\n /**\n * Get the value based on touch position\n * @param {Event} event\n */\n\n }, {\n key: \"get\",\n value: function get(event) {\n if (!RangeTouch.enabled || !is.event(event)) {\n return null;\n }\n\n var input = event.target;\n var touch = event.changedTouches[0];\n var min = parseFloat(input.getAttribute('min')) || 0;\n var max = parseFloat(input.getAttribute('max')) || 100;\n var step = parseFloat(input.getAttribute('step')) || 1;\n var delta = max - min; // Calculate percentage\n\n var percent;\n var clientRect = input.getBoundingClientRect();\n var thumbWidth = 100 / clientRect.width * (this.config.thumbWidth / 2) / 100; // Determine left percentage\n\n percent = 100 / clientRect.width * (touch.clientX - clientRect.left); // Don't allow outside bounds\n\n if (percent < 0) {\n percent = 0;\n } else if (percent > 100) {\n percent = 100;\n } // Factor in the thumb offset\n\n\n if (percent < 50) {\n percent -= (100 - percent * 2) * thumbWidth;\n } else if (percent > 50) {\n percent += (percent - 50) * 2 * thumbWidth;\n } // Find the closest step to the mouse position\n\n\n return min + round(delta * (percent / 100), step);\n }\n /**\n * Update range value based on position\n * @param {Event} event\n */\n\n }, {\n key: \"set\",\n value: function set(event) {\n if (!RangeTouch.enabled || !is.event(event) || event.target.disabled) {\n return;\n } // Prevent text highlight on iOS\n\n\n event.preventDefault(); // Set value\n\n event.target.value = this.get(event); // Trigger event\n\n trigger(event.target, event.type === 'touchend' ? 'change' : 'input');\n }\n }], [{\n key: \"setup\",\n\n /**\n * Setup multiple instances\n * @param {String|Element|NodeList|Array} target\n * @param {Object} options\n */\n value: function setup(target) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var targets = null;\n\n if (is.empty(target) || is.string(target)) {\n targets = Array.from(document.querySelectorAll(is.string(target) ? target : 'input[type=\"range\"]'));\n } else if (is.element(target)) {\n targets = [target];\n } else if (is.nodeList(target)) {\n targets = Array.from(target);\n } else if (is.array(target)) {\n targets = target.filter(is.element);\n }\n\n if (is.empty(targets)) {\n return null;\n }\n\n var config = Object.assign({}, defaults, options);\n\n if (is.string(target) && config.watch) {\n // Create an observer instance\n var observer = new MutationObserver(function (mutations) {\n Array.from(mutations).forEach(function (mutation) {\n Array.from(mutation.addedNodes).forEach(function (node) {\n if (!is.element(node) || !matches(node, target)) {\n return;\n } // eslint-disable-next-line no-unused-vars\n\n\n var range = new RangeTouch(node, config);\n });\n });\n }); // Pass in the target node, as well as the observer options\n\n observer.observe(document.body, {\n childList: true,\n subtree: true\n });\n }\n\n return targets.map(function (t) {\n return new RangeTouch(t, options);\n });\n }\n }, {\n key: \"enabled\",\n get: function get() {\n return 'ontouchstart' in document.documentElement;\n }\n }]);\n\n return RangeTouch;\n }();\n\n // ==========================================================================\n // Type checking utils\n // ==========================================================================\n var getConstructor$1 = function getConstructor(input) {\n return input !== null && typeof input !== 'undefined' ? input.constructor : null;\n };\n\n var instanceOf$1 = function instanceOf(input, constructor) {\n return Boolean(input && constructor && input instanceof constructor);\n };\n\n var isNullOrUndefined$1 = function isNullOrUndefined(input) {\n return input === null || typeof input === 'undefined';\n };\n\n var isObject$1 = function isObject(input) {\n return getConstructor$1(input) === Object;\n };\n\n var isNumber$1 = function isNumber(input) {\n return getConstructor$1(input) === Number && !Number.isNaN(input);\n };\n\n var isString$1 = function isString(input) {\n return getConstructor$1(input) === String;\n };\n\n var isBoolean$1 = function isBoolean(input) {\n return getConstructor$1(input) === Boolean;\n };\n\n var isFunction$1 = function isFunction(input) {\n return getConstructor$1(input) === Function;\n };\n\n var isArray$1 = function isArray(input) {\n return Array.isArray(input);\n };\n\n var isWeakMap = function isWeakMap(input) {\n return instanceOf$1(input, WeakMap);\n };\n\n var isNodeList$1 = function isNodeList(input) {\n return instanceOf$1(input, NodeList);\n };\n\n var isElement$1 = function isElement(input) {\n return instanceOf$1(input, Element);\n };\n\n var isTextNode = function isTextNode(input) {\n return getConstructor$1(input) === Text;\n };\n\n var isEvent$1 = function isEvent(input) {\n return instanceOf$1(input, Event);\n };\n\n var isKeyboardEvent = function isKeyboardEvent(input) {\n return instanceOf$1(input, KeyboardEvent);\n };\n\n var isCue = function isCue(input) {\n return instanceOf$1(input, window.TextTrackCue) || instanceOf$1(input, window.VTTCue);\n };\n\n var isTrack = function isTrack(input) {\n return instanceOf$1(input, TextTrack) || !isNullOrUndefined$1(input) && isString$1(input.kind);\n };\n\n var isPromise = function isPromise(input) {\n return instanceOf$1(input, Promise);\n };\n\n var isEmpty$1 = function isEmpty(input) {\n return isNullOrUndefined$1(input) || (isString$1(input) || isArray$1(input) || isNodeList$1(input)) && !input.length || isObject$1(input) && !Object.keys(input).length;\n };\n\n var isUrl = function isUrl(input) {\n // Accept a URL object\n if (instanceOf$1(input, window.URL)) {\n return true;\n } // Must be string from here\n\n\n if (!isString$1(input)) {\n return false;\n } // Add the protocol if required\n\n\n var string = input;\n\n if (!input.startsWith('http://') || !input.startsWith('https://')) {\n string = \"http://\".concat(input);\n }\n\n try {\n return !isEmpty$1(new URL(string).hostname);\n } catch (e) {\n return false;\n }\n };\n\n var is$1 = {\n nullOrUndefined: isNullOrUndefined$1,\n object: isObject$1,\n number: isNumber$1,\n string: isString$1,\n boolean: isBoolean$1,\n function: isFunction$1,\n array: isArray$1,\n weakMap: isWeakMap,\n nodeList: isNodeList$1,\n element: isElement$1,\n textNode: isTextNode,\n event: isEvent$1,\n keyboardEvent: isKeyboardEvent,\n cue: isCue,\n track: isTrack,\n promise: isPromise,\n url: isUrl,\n empty: isEmpty$1\n };\n\n // ==========================================================================\n // https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md\n // https://www.youtube.com/watch?v=NPM6172J22g\n\n var supportsPassiveListeners = function () {\n // Test via a getter in the options object to see if the passive property is accessed\n var supported = false;\n\n try {\n var options = Object.defineProperty({}, 'passive', {\n get: function get() {\n supported = true;\n return null;\n }\n });\n window.addEventListener('test', null, options);\n window.removeEventListener('test', null, options);\n } catch (e) {// Do nothing\n }\n\n return supported;\n }(); // Toggle event listener\n\n\n function toggleListener(element, event, callback) {\n var _this = this;\n\n var toggle = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n var passive = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;\n var capture = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false;\n\n // Bail if no element, event, or callback\n if (!element || !('addEventListener' in element) || is$1.empty(event) || !is$1.function(callback)) {\n return;\n } // Allow multiple events\n\n\n var events = event.split(' '); // Build options\n // Default to just the capture boolean for browsers with no passive listener support\n\n var options = capture; // If passive events listeners are supported\n\n if (supportsPassiveListeners) {\n options = {\n // Whether the listener can be passive (i.e. default never prevented)\n passive: passive,\n // Whether the listener is a capturing listener or not\n capture: capture\n };\n } // If a single node is passed, bind the event listener\n\n\n events.forEach(function (type) {\n if (_this && _this.eventListeners && toggle) {\n // Cache event listener\n _this.eventListeners.push({\n element: element,\n type: type,\n callback: callback,\n options: options\n });\n }\n\n element[toggle ? 'addEventListener' : 'removeEventListener'](type, callback, options);\n });\n } // Bind event handler\n\n function on(element) {\n var events = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var callback = arguments.length > 2 ? arguments[2] : undefined;\n var passive = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;\n var capture = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n toggleListener.call(this, element, events, callback, true, passive, capture);\n } // Unbind event handler\n\n function off(element) {\n var events = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var callback = arguments.length > 2 ? arguments[2] : undefined;\n var passive = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;\n var capture = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n toggleListener.call(this, element, events, callback, false, passive, capture);\n } // Bind once-only event handler\n\n function once(element) {\n var _this2 = this;\n\n var events = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var callback = arguments.length > 2 ? arguments[2] : undefined;\n var passive = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;\n var capture = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n var onceCallback = function onceCallback() {\n off(element, events, onceCallback, passive, capture);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n callback.apply(_this2, args);\n };\n\n toggleListener.call(this, element, events, onceCallback, true, passive, capture);\n } // Trigger event\n\n function triggerEvent(element) {\n var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var bubbles = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var detail = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n\n // Bail if no element\n if (!is$1.element(element) || is$1.empty(type)) {\n return;\n } // Create and dispatch the event\n\n\n var event = new CustomEvent(type, {\n bubbles: bubbles,\n detail: Object.assign({}, detail, {\n plyr: this\n })\n }); // Dispatch the event\n\n element.dispatchEvent(event);\n } // Unbind all cached event listeners\n\n function unbindListeners() {\n if (this && this.eventListeners) {\n this.eventListeners.forEach(function (item) {\n var element = item.element,\n type = item.type,\n callback = item.callback,\n options = item.options;\n element.removeEventListener(type, callback, options);\n });\n this.eventListeners = [];\n }\n } // Run method when / if player is ready\n\n function ready() {\n var _this3 = this;\n\n return new Promise(function (resolve) {\n return _this3.ready ? setTimeout(resolve, 0) : on.call(_this3, _this3.elements.container, 'ready', resolve);\n }).then(function () {});\n }\n\n function cloneDeep(object) {\n return JSON.parse(JSON.stringify(object));\n } // Get a nested value in an object\n\n function getDeep(object, path) {\n return path.split('.').reduce(function (obj, key) {\n return obj && obj[key];\n }, object);\n } // Deep extend destination object with N more objects\n\n function extend() {\n var target = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n\n for (var _len = arguments.length, sources = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n sources[_key - 1] = arguments[_key];\n }\n\n if (!sources.length) {\n return target;\n }\n\n var source = sources.shift();\n\n if (!is$1.object(source)) {\n return target;\n }\n\n Object.keys(source).forEach(function (key) {\n if (is$1.object(source[key])) {\n if (!Object.keys(target).includes(key)) {\n Object.assign(target, _defineProperty({}, key, {}));\n }\n\n extend(target[key], source[key]);\n } else {\n Object.assign(target, _defineProperty({}, key, source[key]));\n }\n });\n return extend.apply(void 0, [target].concat(sources));\n }\n\n function wrap(elements, wrapper) {\n // Convert `elements` to an array, if necessary.\n var targets = elements.length ? elements : [elements]; // Loops backwards to prevent having to clone the wrapper on the\n // first element (see `child` below).\n\n Array.from(targets).reverse().forEach(function (element, index) {\n var child = index > 0 ? wrapper.cloneNode(true) : wrapper; // Cache the current parent and sibling.\n\n var parent = element.parentNode;\n var sibling = element.nextSibling; // Wrap the element (is automatically removed from its current\n // parent).\n\n child.appendChild(element); // If the element had a sibling, insert the wrapper before\n // the sibling to maintain the HTML structure; otherwise, just\n // append it to the parent.\n\n if (sibling) {\n parent.insertBefore(child, sibling);\n } else {\n parent.appendChild(child);\n }\n });\n } // Set attributes\n\n function setAttributes(element, attributes) {\n if (!is$1.element(element) || is$1.empty(attributes)) {\n return;\n } // Assume null and undefined attributes should be left out,\n // Setting them would otherwise convert them to \"null\" and \"undefined\"\n\n\n Object.entries(attributes).filter(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n value = _ref2[1];\n\n return !is$1.nullOrUndefined(value);\n }).forEach(function (_ref3) {\n var _ref4 = _slicedToArray(_ref3, 2),\n key = _ref4[0],\n value = _ref4[1];\n\n return element.setAttribute(key, value);\n });\n } // Create a DocumentFragment\n\n function createElement(type, attributes, text) {\n // Create a new \n var element = document.createElement(type); // Set all passed attributes\n\n if (is$1.object(attributes)) {\n setAttributes(element, attributes);\n } // Add text node\n\n\n if (is$1.string(text)) {\n element.innerText = text;\n } // Return built element\n\n\n return element;\n } // Inaert an element after another\n\n function insertAfter(element, target) {\n if (!is$1.element(element) || !is$1.element(target)) {\n return;\n }\n\n target.parentNode.insertBefore(element, target.nextSibling);\n } // Insert a DocumentFragment\n\n function insertElement(type, parent, attributes, text) {\n if (!is$1.element(parent)) {\n return;\n }\n\n parent.appendChild(createElement(type, attributes, text));\n } // Remove element(s)\n\n function removeElement(element) {\n if (is$1.nodeList(element) || is$1.array(element)) {\n Array.from(element).forEach(removeElement);\n return;\n }\n\n if (!is$1.element(element) || !is$1.element(element.parentNode)) {\n return;\n }\n\n element.parentNode.removeChild(element);\n } // Remove all child elements\n\n function emptyElement(element) {\n if (!is$1.element(element)) {\n return;\n }\n\n var length = element.childNodes.length;\n\n while (length > 0) {\n element.removeChild(element.lastChild);\n length -= 1;\n }\n } // Replace element\n\n function replaceElement(newChild, oldChild) {\n if (!is$1.element(oldChild) || !is$1.element(oldChild.parentNode) || !is$1.element(newChild)) {\n return null;\n }\n\n oldChild.parentNode.replaceChild(newChild, oldChild);\n return newChild;\n } // Get an attribute object from a string selector\n\n function getAttributesFromSelector(sel, existingAttributes) {\n // For example:\n // '.test' to { class: 'test' }\n // '#test' to { id: 'test' }\n // '[data-test=\"test\"]' to { 'data-test': 'test' }\n if (!is$1.string(sel) || is$1.empty(sel)) {\n return {};\n }\n\n var attributes = {};\n var existing = extend({}, existingAttributes);\n sel.split(',').forEach(function (s) {\n // Remove whitespace\n var selector = s.trim();\n var className = selector.replace('.', '');\n var stripped = selector.replace(/[[\\]]/g, ''); // Get the parts and value\n\n var parts = stripped.split('=');\n\n var _parts = _slicedToArray(parts, 1),\n key = _parts[0];\n\n var value = parts.length > 1 ? parts[1].replace(/[\"']/g, '') : ''; // Get the first character\n\n var start = selector.charAt(0);\n\n switch (start) {\n case '.':\n // Add to existing classname\n if (is$1.string(existing.class)) {\n attributes.class = \"\".concat(existing.class, \" \").concat(className);\n } else {\n attributes.class = className;\n }\n\n break;\n\n case '#':\n // ID selector\n attributes.id = selector.replace('#', '');\n break;\n\n case '[':\n // Attribute selector\n attributes[key] = value;\n break;\n\n default:\n break;\n }\n });\n return extend(existing, attributes);\n } // Toggle hidden\n\n function toggleHidden(element, hidden) {\n if (!is$1.element(element)) {\n return;\n }\n\n var hide = hidden;\n\n if (!is$1.boolean(hide)) {\n hide = !element.hidden;\n }\n\n if (hide) {\n element.setAttribute('hidden', '');\n } else {\n element.removeAttribute('hidden');\n }\n } // Mirror Element.classList.toggle, with IE compatibility for \"force\" argument\n\n function toggleClass(element, className, force) {\n if (is$1.nodeList(element)) {\n return Array.from(element).map(function (e) {\n return toggleClass(e, className, force);\n });\n }\n\n if (is$1.element(element)) {\n var method = 'toggle';\n\n if (typeof force !== 'undefined') {\n method = force ? 'add' : 'remove';\n }\n\n element.classList[method](className);\n return element.classList.contains(className);\n }\n\n return false;\n } // Has class name\n\n function hasClass(element, className) {\n return is$1.element(element) && element.classList.contains(className);\n } // Element matches selector\n\n function matches$1(element, selector) {\n\n function match() {\n return Array.from(document.querySelectorAll(selector)).includes(this);\n }\n\n var method = match;\n return method.call(element, selector);\n } // Find all elements\n\n function getElements(selector) {\n return this.elements.container.querySelectorAll(selector);\n } // Find a single element\n\n function getElement(selector) {\n return this.elements.container.querySelector(selector);\n } // Trap focus inside container\n\n function trapFocus() {\n var element = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var toggle = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (!is$1.element(element)) {\n return;\n }\n\n var focusable = getElements.call(this, 'button:not(:disabled), input:not(:disabled), [tabindex]');\n var first = focusable[0];\n var last = focusable[focusable.length - 1];\n\n var trap = function trap(event) {\n // Bail if not tab key or not fullscreen\n if (event.key !== 'Tab' || event.keyCode !== 9) {\n return;\n } // Get the current focused element\n\n\n var focused = document.activeElement;\n\n if (focused === last && !event.shiftKey) {\n // Move focus to first element that can be tabbed if Shift isn't used\n first.focus();\n event.preventDefault();\n } else if (focused === first && event.shiftKey) {\n // Move focus to last element that can be tabbed if Shift is used\n last.focus();\n event.preventDefault();\n }\n };\n\n toggleListener.call(this, this.elements.container, 'keydown', trap, toggle, false);\n } // Set focus and tab focus class\n\n function setFocus() {\n var element = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;\n var tabFocus = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (!is$1.element(element)) {\n return;\n } // Set regular focus\n\n\n element.focus({\n preventScroll: true\n }); // If we want to mimic keyboard focus via tab\n\n if (tabFocus) {\n toggleClass(element, this.config.classNames.tabFocus);\n }\n }\n\n // ==========================================================================\n var transitionEndEvent = function () {\n var element = document.createElement('span');\n var events = {\n WebkitTransition: 'webkitTransitionEnd',\n MozTransition: 'transitionend',\n OTransition: 'oTransitionEnd otransitionend',\n transition: 'transitionend'\n };\n var type = Object.keys(events).find(function (event) {\n return element.style[event] !== undefined;\n });\n return is$1.string(type) ? events[type] : false;\n }(); // Force repaint of element\n\n function repaint(element) {\n setTimeout(function () {\n try {\n toggleHidden(element, true);\n element.offsetHeight; // eslint-disable-line\n\n toggleHidden(element, false);\n } catch (e) {// Do nothing\n }\n }, 0);\n }\n\n // ==========================================================================\n // Browser sniffing\n // Unfortunately, due to mixed support, UA sniffing is required\n // ==========================================================================\n var browser = {\n isIE:\n /* @cc_on!@ */\n !!document.documentMode,\n isEdge: window.navigator.userAgent.includes('Edge'),\n isWebkit: 'WebkitAppearance' in document.documentElement.style && !/Edge/.test(navigator.userAgent),\n isIPhone: /(iPhone|iPod)/gi.test(navigator.platform),\n isIos: /(iPad|iPhone|iPod)/gi.test(navigator.platform)\n };\n\n var defaultCodecs = {\n 'audio/ogg': 'vorbis',\n 'audio/wav': '1',\n 'video/webm': 'vp8, vorbis',\n 'video/mp4': 'avc1.42E01E, mp4a.40.2',\n 'video/ogg': 'theora'\n }; // Check for feature support\n\n var support = {\n // Basic support\n audio: 'canPlayType' in document.createElement('audio'),\n video: 'canPlayType' in document.createElement('video'),\n // Check for support\n // Basic functionality vs full UI\n check: function check(type, provider, playsinline) {\n var canPlayInline = browser.isIPhone && playsinline && support.playsinline;\n var api = support[type] || provider !== 'html5';\n var ui = api && support.rangeInput && (type !== 'video' || !browser.isIPhone || canPlayInline);\n return {\n api: api,\n ui: ui\n };\n },\n // Picture-in-picture support\n // Safari & Chrome only currently\n pip: function () {\n if (browser.isIPhone) {\n return false;\n } // Safari\n // https://developer.apple.com/documentation/webkitjs/adding_picture_in_picture_to_your_safari_media_controls\n\n\n if (is$1.function(createElement('video').webkitSetPresentationMode)) {\n return true;\n } // Chrome\n // https://developers.google.com/web/updates/2018/10/watch-video-using-picture-in-picture\n\n\n if (document.pictureInPictureEnabled && !createElement('video').disablePictureInPicture) {\n return true;\n }\n\n return false;\n }(),\n // Airplay support\n // Safari only currently\n airplay: is$1.function(window.WebKitPlaybackTargetAvailabilityEvent),\n // Inline playback support\n // https://webkit.org/blog/6784/new-video-policies-for-ios/\n playsinline: 'playsInline' in document.createElement('video'),\n // Check for mime type support against a player instance\n // Credits: http://diveintohtml5.info/everything.html\n // Related: http://www.leanbackplayer.com/test/h5mt.html\n mime: function mime(input) {\n if (is$1.empty(input)) {\n return false;\n }\n\n var _input$split = input.split('/'),\n _input$split2 = _slicedToArray(_input$split, 1),\n mediaType = _input$split2[0];\n\n var type = input; // Verify we're using HTML5 and there's no media type mismatch\n\n if (!this.isHTML5 || mediaType !== this.type) {\n return false;\n } // Add codec if required\n\n\n if (Object.keys(defaultCodecs).includes(type)) {\n type += \"; codecs=\\\"\".concat(defaultCodecs[input], \"\\\"\");\n }\n\n try {\n return Boolean(type && this.media.canPlayType(type).replace(/no/, ''));\n } catch (e) {\n return false;\n }\n },\n // Check for textTracks support\n textTracks: 'textTracks' in document.createElement('video'),\n // Sliders\n rangeInput: function () {\n var range = document.createElement('input');\n range.type = 'range';\n return range.type === 'range';\n }(),\n // Touch\n // NOTE: Remember a device can be mouse + touch enabled so we check on first touch event\n touch: 'ontouchstart' in document.documentElement,\n // Detect transitions support\n transitions: transitionEndEvent !== false,\n // Reduced motion iOS & MacOS setting\n // https://webkit.org/blog/7551/responsive-design-for-motion/\n reducedMotion: 'matchMedia' in window && window.matchMedia('(prefers-reduced-motion)').matches\n };\n\n function validateRatio(input) {\n if (!is$1.array(input) && (!is$1.string(input) || !input.includes(':'))) {\n return false;\n }\n\n var ratio = is$1.array(input) ? input : input.split(':');\n return ratio.map(Number).every(is$1.number);\n }\n function reduceAspectRatio(ratio) {\n if (!is$1.array(ratio) || !ratio.every(is$1.number)) {\n return null;\n }\n\n var _ratio = _slicedToArray(ratio, 2),\n width = _ratio[0],\n height = _ratio[1];\n\n var getDivider = function getDivider(w, h) {\n return h === 0 ? w : getDivider(h, w % h);\n };\n\n var divider = getDivider(width, height);\n return [width / divider, height / divider];\n }\n function getAspectRatio(input) {\n var parse = function parse(ratio) {\n if (!validateRatio(ratio)) {\n return null;\n }\n\n return ratio.split(':').map(Number);\n }; // Provided ratio\n\n\n var ratio = parse(input); // Get from config\n\n if (ratio === null) {\n ratio = parse(this.config.ratio);\n } // Get from embed\n\n\n if (ratio === null && !is$1.empty(this.embed) && is$1.array(this.embed.ratio)) {\n ratio = this.embed.ratio;\n } // Get from HTML5 video\n\n\n if (ratio === null && this.isHTML5) {\n var _this$media = this.media,\n videoWidth = _this$media.videoWidth,\n videoHeight = _this$media.videoHeight;\n ratio = reduceAspectRatio([videoWidth, videoHeight]);\n }\n\n return ratio;\n } // Set aspect ratio for responsive container\n\n function setAspectRatio(input) {\n if (!this.isVideo) {\n return {};\n }\n\n var ratio = getAspectRatio.call(this, input);\n\n var _ref = is$1.array(ratio) ? ratio : [0, 0],\n _ref2 = _slicedToArray(_ref, 2),\n w = _ref2[0],\n h = _ref2[1];\n\n var padding = 100 / w * h;\n this.elements.wrapper.style.paddingBottom = \"\".concat(padding, \"%\"); // For Vimeo we have an extra
to hide the standard controls and UI\n\n if (this.isVimeo && this.supported.ui) {\n var height = 240;\n var offset = (height - padding) / (height / 50);\n this.media.style.transform = \"translateY(-\".concat(offset, \"%)\");\n } else if (this.isHTML5) {\n this.elements.wrapper.classList.toggle(this.config.classNames.videoFixedRatio, ratio !== null);\n }\n\n return {\n padding: padding,\n ratio: ratio\n };\n }\n\n // ==========================================================================\n var html5 = {\n getSources: function getSources() {\n var _this = this;\n\n if (!this.isHTML5) {\n return [];\n }\n\n var sources = Array.from(this.media.querySelectorAll('source')); // Filter out unsupported sources (if type is specified)\n\n return sources.filter(function (source) {\n var type = source.getAttribute('type');\n\n if (is$1.empty(type)) {\n return true;\n }\n\n return support.mime.call(_this, type);\n });\n },\n // Get quality levels\n getQualityOptions: function getQualityOptions() {\n // Get sizes from elements\n return html5.getSources.call(this).map(function (source) {\n return Number(source.getAttribute('size'));\n }).filter(Boolean);\n },\n extend: function extend() {\n if (!this.isHTML5) {\n return;\n }\n\n var player = this; // Set aspect ratio if set\n\n setAspectRatio.call(player); // Quality\n\n Object.defineProperty(player.media, 'quality', {\n get: function get() {\n // Get sources\n var sources = html5.getSources.call(player);\n var source = sources.find(function (s) {\n return s.getAttribute('src') === player.source;\n }); // Return size, if match is found\n\n return source && Number(source.getAttribute('size'));\n },\n set: function set(input) {\n // Get sources\n var sources = html5.getSources.call(player); // Get first match for requested size\n\n var source = sources.find(function (s) {\n return Number(s.getAttribute('size')) === input;\n }); // No matching source found\n\n if (!source) {\n return;\n } // Get current state\n\n\n var _player$media = player.media,\n currentTime = _player$media.currentTime,\n paused = _player$media.paused,\n preload = _player$media.preload,\n readyState = _player$media.readyState; // Set new source\n\n player.media.src = source.getAttribute('src'); // Prevent loading if preload=\"none\" and the current source isn't loaded (#1044)\n\n if (preload !== 'none' || readyState) {\n // Restore time\n player.once('loadedmetadata', function () {\n player.currentTime = currentTime; // Resume playing\n\n if (!paused) {\n player.play();\n }\n }); // Load new source\n\n player.media.load();\n } // Trigger change event\n\n\n triggerEvent.call(player, player.media, 'qualitychange', false, {\n quality: input\n });\n }\n });\n },\n // Cancel current network requests\n // See https://github.com/sampotts/plyr/issues/174\n cancelRequests: function cancelRequests() {\n if (!this.isHTML5) {\n return;\n } // Remove child sources\n\n\n removeElement(html5.getSources.call(this)); // Set blank video src attribute\n // This is to prevent a MEDIA_ERR_SRC_NOT_SUPPORTED error\n // Info: http://stackoverflow.com/questions/32231579/how-to-properly-dispose-of-an-html5-video-and-close-socket-or-connection\n\n this.media.setAttribute('src', this.config.blankVideo); // Load the new empty source\n // This will cancel existing requests\n // See https://github.com/sampotts/plyr/issues/174\n\n this.media.load(); // Debugging\n\n this.debug.log('Cancelled network requests');\n }\n };\n\n // ==========================================================================\n\n function dedupe(array) {\n if (!is$1.array(array)) {\n return array;\n }\n\n return array.filter(function (item, index) {\n return array.indexOf(item) === index;\n });\n } // Get the closest value in an array\n\n function closest(array, value) {\n if (!is$1.array(array) || !array.length) {\n return null;\n }\n\n return array.reduce(function (prev, curr) {\n return Math.abs(curr - value) < Math.abs(prev - value) ? curr : prev;\n });\n }\n\n // ==========================================================================\n\n function generateId(prefix) {\n return \"\".concat(prefix, \"-\").concat(Math.floor(Math.random() * 10000));\n } // Format string\n\n function format(input) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n if (is$1.empty(input)) {\n return input;\n }\n\n return input.toString().replace(/{(\\d+)}/g, function (match, i) {\n return args[i].toString();\n });\n } // Get percentage\n\n function getPercentage(current, max) {\n if (current === 0 || max === 0 || Number.isNaN(current) || Number.isNaN(max)) {\n return 0;\n }\n\n return (current / max * 100).toFixed(2);\n } // Replace all occurances of a string in a string\n\n function replaceAll() {\n var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var find = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n var replace = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';\n return input.replace(new RegExp(find.toString().replace(/([.*+?^=!:${}()|[\\]/\\\\])/g, '\\\\$1'), 'g'), replace.toString());\n } // Convert to title case\n\n function toTitleCase() {\n var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n return input.toString().replace(/\\w\\S*/g, function (text) {\n return text.charAt(0).toUpperCase() + text.substr(1).toLowerCase();\n });\n } // Convert string to pascalCase\n\n function toPascalCase() {\n var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var string = input.toString(); // Convert kebab case\n\n string = replaceAll(string, '-', ' '); // Convert snake case\n\n string = replaceAll(string, '_', ' '); // Convert to title case\n\n string = toTitleCase(string); // Convert to pascal case\n\n return replaceAll(string, ' ', '');\n } // Convert string to pascalCase\n\n function toCamelCase() {\n var input = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var string = input.toString(); // Convert to pascal case\n\n string = toPascalCase(string); // Convert first character to lowercase\n\n return string.charAt(0).toLowerCase() + string.slice(1);\n } // Remove HTML from a string\n\n function stripHTML(source) {\n var fragment = document.createDocumentFragment();\n var element = document.createElement('div');\n fragment.appendChild(element);\n element.innerHTML = source;\n return fragment.firstChild.innerText;\n } // Like outerHTML, but also works for DocumentFragment\n\n function getHTML(element) {\n var wrapper = document.createElement('div');\n wrapper.appendChild(element);\n return wrapper.innerHTML;\n }\n\n var resources = {\n pip: 'PIP',\n airplay: 'AirPlay',\n html5: 'HTML5',\n vimeo: 'Vimeo',\n youtube: 'YouTube'\n };\n var i18n = {\n get: function get() {\n var key = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (is$1.empty(key) || is$1.empty(config)) {\n return '';\n }\n\n var string = getDeep(config.i18n, key);\n\n if (is$1.empty(string)) {\n if (Object.keys(resources).includes(key)) {\n return resources[key];\n }\n\n return '';\n }\n\n var replace = {\n '{seektime}': config.seekTime,\n '{title}': config.title\n };\n Object.entries(replace).forEach(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n k = _ref2[0],\n v = _ref2[1];\n\n string = replaceAll(string, k, v);\n });\n return string;\n }\n };\n\n var Storage =\n /*#__PURE__*/\n function () {\n function Storage(player) {\n _classCallCheck(this, Storage);\n\n this.enabled = player.config.storage.enabled;\n this.key = player.config.storage.key;\n } // Check for actual support (see if we can use it)\n\n\n _createClass(Storage, [{\n key: \"get\",\n value: function get(key) {\n if (!Storage.supported || !this.enabled) {\n return null;\n }\n\n var store = window.localStorage.getItem(this.key);\n\n if (is$1.empty(store)) {\n return null;\n }\n\n var json = JSON.parse(store);\n return is$1.string(key) && key.length ? json[key] : json;\n }\n }, {\n key: \"set\",\n value: function set(object) {\n // Bail if we don't have localStorage support or it's disabled\n if (!Storage.supported || !this.enabled) {\n return;\n } // Can only store objectst\n\n\n if (!is$1.object(object)) {\n return;\n } // Get current storage\n\n\n var storage = this.get(); // Default to empty object\n\n if (is$1.empty(storage)) {\n storage = {};\n } // Update the working copy of the values\n\n\n extend(storage, object); // Update storage\n\n window.localStorage.setItem(this.key, JSON.stringify(storage));\n }\n }], [{\n key: \"supported\",\n get: function get() {\n try {\n if (!('localStorage' in window)) {\n return false;\n }\n\n var test = '___test'; // Try to use it (it might be disabled, e.g. user is in private mode)\n // see: https://github.com/sampotts/plyr/issues/131\n\n window.localStorage.setItem(test, test);\n window.localStorage.removeItem(test);\n return true;\n } catch (e) {\n return false;\n }\n }\n }]);\n\n return Storage;\n }();\n\n // ==========================================================================\n // Fetch wrapper\n // Using XHR to avoid issues with older browsers\n // ==========================================================================\n function fetch(url) {\n var responseType = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'text';\n return new Promise(function (resolve, reject) {\n try {\n var request = new XMLHttpRequest(); // Check for CORS support\n\n if (!('withCredentials' in request)) {\n return;\n }\n\n request.addEventListener('load', function () {\n if (responseType === 'text') {\n try {\n resolve(JSON.parse(request.responseText));\n } catch (e) {\n resolve(request.responseText);\n }\n } else {\n resolve(request.response);\n }\n });\n request.addEventListener('error', function () {\n throw new Error(request.status);\n });\n request.open('GET', url, true); // Set the required response type\n\n request.responseType = responseType;\n request.send();\n } catch (e) {\n reject(e);\n }\n });\n }\n\n // ==========================================================================\n\n function loadSprite(url, id) {\n if (!is$1.string(url)) {\n return;\n }\n\n var prefix = 'cache';\n var hasId = is$1.string(id);\n var isCached = false;\n\n var exists = function exists() {\n return document.getElementById(id) !== null;\n };\n\n var update = function update(container, data) {\n // eslint-disable-next-line no-param-reassign\n container.innerHTML = data; // Check again incase of race condition\n\n if (hasId && exists()) {\n return;\n } // Inject the SVG to the body\n\n\n document.body.insertAdjacentElement('afterbegin', container);\n }; // Only load once if ID set\n\n\n if (!hasId || !exists()) {\n var useStorage = Storage.supported; // Create container\n\n var container = document.createElement('div');\n container.setAttribute('hidden', '');\n\n if (hasId) {\n container.setAttribute('id', id);\n } // Check in cache\n\n\n if (useStorage) {\n var cached = window.localStorage.getItem(\"\".concat(prefix, \"-\").concat(id));\n isCached = cached !== null;\n\n if (isCached) {\n var data = JSON.parse(cached);\n update(container, data.content);\n }\n } // Get the sprite\n\n\n fetch(url).then(function (result) {\n if (is$1.empty(result)) {\n return;\n }\n\n if (useStorage) {\n window.localStorage.setItem(\"\".concat(prefix, \"-\").concat(id), JSON.stringify({\n content: result\n }));\n }\n\n update(container, result);\n }).catch(function () {});\n }\n }\n\n // ==========================================================================\n\n var getHours = function getHours(value) {\n return Math.trunc(value / 60 / 60 % 60, 10);\n };\n var getMinutes = function getMinutes(value) {\n return Math.trunc(value / 60 % 60, 10);\n };\n var getSeconds = function getSeconds(value) {\n return Math.trunc(value % 60, 10);\n }; // Format time to UI friendly string\n\n function formatTime() {\n var time = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var displayHours = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var inverted = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n // Bail if the value isn't a number\n if (!is$1.number(time)) {\n return formatTime(null, displayHours, inverted);\n } // Format time component to add leading zero\n\n\n var format = function format(value) {\n return \"0\".concat(value).slice(-2);\n }; // Breakdown to hours, mins, secs\n\n\n var hours = getHours(time);\n var mins = getMinutes(time);\n var secs = getSeconds(time); // Do we need to display hours?\n\n if (displayHours || hours > 0) {\n hours = \"\".concat(hours, \":\");\n } else {\n hours = '';\n } // Render\n\n\n return \"\".concat(inverted && time > 0 ? '-' : '').concat(hours).concat(format(mins), \":\").concat(format(secs));\n }\n\n var controls = {\n // Get icon URL\n getIconUrl: function getIconUrl() {\n var url = new URL(this.config.iconUrl, window.location);\n var cors = url.host !== window.location.host || browser.isIE && !window.svg4everybody;\n return {\n url: this.config.iconUrl,\n cors: cors\n };\n },\n // Find the UI controls\n findElements: function findElements() {\n try {\n this.elements.controls = getElement.call(this, this.config.selectors.controls.wrapper); // Buttons\n\n this.elements.buttons = {\n play: getElements.call(this, this.config.selectors.buttons.play),\n pause: getElement.call(this, this.config.selectors.buttons.pause),\n restart: getElement.call(this, this.config.selectors.buttons.restart),\n rewind: getElement.call(this, this.config.selectors.buttons.rewind),\n fastForward: getElement.call(this, this.config.selectors.buttons.fastForward),\n mute: getElement.call(this, this.config.selectors.buttons.mute),\n pip: getElement.call(this, this.config.selectors.buttons.pip),\n airplay: getElement.call(this, this.config.selectors.buttons.airplay),\n settings: getElement.call(this, this.config.selectors.buttons.settings),\n captions: getElement.call(this, this.config.selectors.buttons.captions),\n fullscreen: getElement.call(this, this.config.selectors.buttons.fullscreen)\n }; // Progress\n\n this.elements.progress = getElement.call(this, this.config.selectors.progress); // Inputs\n\n this.elements.inputs = {\n seek: getElement.call(this, this.config.selectors.inputs.seek),\n volume: getElement.call(this, this.config.selectors.inputs.volume)\n }; // Display\n\n this.elements.display = {\n buffer: getElement.call(this, this.config.selectors.display.buffer),\n currentTime: getElement.call(this, this.config.selectors.display.currentTime),\n duration: getElement.call(this, this.config.selectors.display.duration)\n }; // Seek tooltip\n\n if (is$1.element(this.elements.progress)) {\n this.elements.display.seekTooltip = this.elements.progress.querySelector(\".\".concat(this.config.classNames.tooltip));\n }\n\n return true;\n } catch (error) {\n // Log it\n this.debug.warn('It looks like there is a problem with your custom controls HTML', error); // Restore native video controls\n\n this.toggleNativeControls(true);\n return false;\n }\n },\n // Create icon\n createIcon: function createIcon(type, attributes) {\n var namespace = 'http://www.w3.org/2000/svg';\n var iconUrl = controls.getIconUrl.call(this);\n var iconPath = \"\".concat(!iconUrl.cors ? iconUrl.url : '', \"#\").concat(this.config.iconPrefix); // Create \n\n var icon = document.createElementNS(namespace, 'svg');\n setAttributes(icon, extend(attributes, {\n role: 'presentation',\n focusable: 'false'\n })); // Create the to reference sprite\n\n var use = document.createElementNS(namespace, 'use');\n var path = \"\".concat(iconPath, \"-\").concat(type); // Set `href` attributes\n // https://github.com/sampotts/plyr/issues/460\n // https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/xlink:href\n\n if ('href' in use) {\n use.setAttributeNS('http://www.w3.org/1999/xlink', 'href', path);\n } // Always set the older attribute even though it's \"deprecated\" (it'll be around for ages)\n\n\n use.setAttributeNS('http://www.w3.org/1999/xlink', 'xlink:href', path); // Add to \n\n icon.appendChild(use);\n return icon;\n },\n // Create hidden text label\n createLabel: function createLabel(key) {\n var attr = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var text = i18n.get(key, this.config);\n var attributes = Object.assign({}, attr, {\n class: [attr.class, this.config.classNames.hidden].filter(Boolean).join(' ')\n });\n return createElement('span', attributes, text);\n },\n // Create a badge\n createBadge: function createBadge(text) {\n if (is$1.empty(text)) {\n return null;\n }\n\n var badge = createElement('span', {\n class: this.config.classNames.menu.value\n });\n badge.appendChild(createElement('span', {\n class: this.config.classNames.menu.badge\n }, text));\n return badge;\n },\n // Create a
if needed\n\n if (is$1.empty(source)) {\n source = player.media.getAttribute(player.config.attributes.embed.id);\n }\n\n var id = parseId(source); // Build an iframe\n\n var iframe = createElement('iframe');\n var src = format(player.config.urls.vimeo.iframe, id, params);\n iframe.setAttribute('src', src);\n iframe.setAttribute('allowfullscreen', '');\n iframe.setAttribute('allowtransparency', '');\n iframe.setAttribute('allow', 'autoplay'); // Get poster, if already set\n\n var poster = player.poster; // Inject the package\n\n var wrapper = createElement('div', {\n poster: poster,\n class: player.config.classNames.embedContainer\n });\n wrapper.appendChild(iframe);\n player.media = replaceElement(wrapper, player.media); // Get poster image\n\n fetch(format(player.config.urls.vimeo.api, id), 'json').then(function (response) {\n if (is$1.empty(response)) {\n return;\n } // Get the URL for thumbnail\n\n\n var url = new URL(response[0].thumbnail_large); // Get original image\n\n url.pathname = \"\".concat(url.pathname.split('_')[0], \".jpg\"); // Set and show poster\n\n ui.setPoster.call(player, url.href).catch(function () {});\n }); // Setup instance\n // https://github.com/vimeo/player.js\n\n player.embed = new window.Vimeo.Player(iframe, {\n autopause: player.config.autopause,\n muted: player.muted\n });\n player.media.paused = true;\n player.media.currentTime = 0; // Disable native text track rendering\n\n if (player.supported.ui) {\n player.embed.disableTextTrack();\n } // Create a faux HTML5 API using the Vimeo API\n\n\n player.media.play = function () {\n assurePlaybackState.call(player, true);\n return player.embed.play();\n };\n\n player.media.pause = function () {\n assurePlaybackState.call(player, false);\n return player.embed.pause();\n };\n\n player.media.stop = function () {\n player.pause();\n player.currentTime = 0;\n }; // Seeking\n\n\n var currentTime = player.media.currentTime;\n Object.defineProperty(player.media, 'currentTime', {\n get: function get() {\n return currentTime;\n },\n set: function set(time) {\n // Vimeo will automatically play on seek if the video hasn't been played before\n // Get current paused state and volume etc\n var embed = player.embed,\n media = player.media,\n paused = player.paused,\n volume = player.volume;\n var restorePause = paused && !embed.hasPlayed; // Set seeking state and trigger event\n\n media.seeking = true;\n triggerEvent.call(player, media, 'seeking'); // If paused, mute until seek is complete\n\n Promise.resolve(restorePause && embed.setVolume(0)) // Seek\n .then(function () {\n return embed.setCurrentTime(time);\n }) // Restore paused\n .then(function () {\n return restorePause && embed.pause();\n }) // Restore volume\n .then(function () {\n return restorePause && embed.setVolume(volume);\n }).catch(function () {// Do nothing\n });\n }\n }); // Playback speed\n\n var speed = player.config.speed.selected;\n Object.defineProperty(player.media, 'playbackRate', {\n get: function get() {\n return speed;\n },\n set: function set(input) {\n player.embed.setPlaybackRate(input).then(function () {\n speed = input;\n triggerEvent.call(player, player.media, 'ratechange');\n }).catch(function (error) {\n // Hide menu item (and menu if empty)\n if (error.name === 'Error') {\n controls.setSpeedMenu.call(player, []);\n }\n });\n }\n }); // Volume\n\n var volume = player.config.volume;\n Object.defineProperty(player.media, 'volume', {\n get: function get() {\n return volume;\n },\n set: function set(input) {\n player.embed.setVolume(input).then(function () {\n volume = input;\n triggerEvent.call(player, player.media, 'volumechange');\n });\n }\n }); // Muted\n\n var muted = player.config.muted;\n Object.defineProperty(player.media, 'muted', {\n get: function get() {\n return muted;\n },\n set: function set(input) {\n var toggle = is$1.boolean(input) ? input : false;\n player.embed.setVolume(toggle ? 0 : player.config.volume).then(function () {\n muted = toggle;\n triggerEvent.call(player, player.media, 'volumechange');\n });\n }\n }); // Loop\n\n var loop = player.config.loop;\n Object.defineProperty(player.media, 'loop', {\n get: function get() {\n return loop;\n },\n set: function set(input) {\n var toggle = is$1.boolean(input) ? input : player.config.loop.active;\n player.embed.setLoop(toggle).then(function () {\n loop = toggle;\n });\n }\n }); // Source\n\n var currentSrc;\n player.embed.getVideoUrl().then(function (value) {\n currentSrc = value;\n controls.setDownloadUrl.call(player);\n }).catch(function (error) {\n _this2.debug.warn(error);\n });\n Object.defineProperty(player.media, 'currentSrc', {\n get: function get() {\n return currentSrc;\n }\n }); // Ended\n\n Object.defineProperty(player.media, 'ended', {\n get: function get() {\n return player.currentTime === player.duration;\n }\n }); // Set aspect ratio based on video size\n\n Promise.all([player.embed.getVideoWidth(), player.embed.getVideoHeight()]).then(function (dimensions) {\n var _dimensions = _slicedToArray(dimensions, 2),\n width = _dimensions[0],\n height = _dimensions[1];\n\n player.embed.ratio = [width, height];\n setAspectRatio.call(_this2);\n }); // Set autopause\n\n player.embed.setAutopause(player.config.autopause).then(function (state) {\n player.config.autopause = state;\n }); // Get title\n\n player.embed.getVideoTitle().then(function (title) {\n player.config.title = title;\n ui.setTitle.call(_this2);\n }); // Get current time\n\n player.embed.getCurrentTime().then(function (value) {\n currentTime = value;\n triggerEvent.call(player, player.media, 'timeupdate');\n }); // Get duration\n\n player.embed.getDuration().then(function (value) {\n player.media.duration = value;\n triggerEvent.call(player, player.media, 'durationchange');\n }); // Get captions\n\n player.embed.getTextTracks().then(function (tracks) {\n player.media.textTracks = tracks;\n captions.setup.call(player);\n });\n player.embed.on('cuechange', function (_ref) {\n var _ref$cues = _ref.cues,\n cues = _ref$cues === void 0 ? [] : _ref$cues;\n var strippedCues = cues.map(function (cue) {\n return stripHTML(cue.text);\n });\n captions.updateCues.call(player, strippedCues);\n });\n player.embed.on('loaded', function () {\n // Assure state and events are updated on autoplay\n player.embed.getPaused().then(function (paused) {\n assurePlaybackState.call(player, !paused);\n\n if (!paused) {\n triggerEvent.call(player, player.media, 'playing');\n }\n });\n\n if (is$1.element(player.embed.element) && player.supported.ui) {\n var frame = player.embed.element; // Fix keyboard focus issues\n // https://github.com/sampotts/plyr/issues/317\n\n frame.setAttribute('tabindex', -1);\n }\n });\n player.embed.on('play', function () {\n assurePlaybackState.call(player, true);\n triggerEvent.call(player, player.media, 'playing');\n });\n player.embed.on('pause', function () {\n assurePlaybackState.call(player, false);\n });\n player.embed.on('timeupdate', function (data) {\n player.media.seeking = false;\n currentTime = data.seconds;\n triggerEvent.call(player, player.media, 'timeupdate');\n });\n player.embed.on('progress', function (data) {\n player.media.buffered = data.percent;\n triggerEvent.call(player, player.media, 'progress'); // Check all loaded\n\n if (parseInt(data.percent, 10) === 1) {\n triggerEvent.call(player, player.media, 'canplaythrough');\n } // Get duration as if we do it before load, it gives an incorrect value\n // https://github.com/sampotts/plyr/issues/891\n\n\n player.embed.getDuration().then(function (value) {\n if (value !== player.media.duration) {\n player.media.duration = value;\n triggerEvent.call(player, player.media, 'durationchange');\n }\n });\n });\n player.embed.on('seeked', function () {\n player.media.seeking = false;\n triggerEvent.call(player, player.media, 'seeked');\n });\n player.embed.on('ended', function () {\n player.media.paused = true;\n triggerEvent.call(player, player.media, 'ended');\n });\n player.embed.on('error', function (detail) {\n player.media.error = detail;\n triggerEvent.call(player, player.media, 'error');\n }); // Rebuild UI\n\n setTimeout(function () {\n return ui.build.call(player);\n }, 0);\n }\n };\n\n // ==========================================================================\n\n function parseId$1(url) {\n if (is$1.empty(url)) {\n return null;\n }\n\n var regex = /^.*(youtu.be\\/|v\\/|u\\/\\w\\/|embed\\/|watch\\?v=|&v=)([^#&?]*).*/;\n return url.match(regex) ? RegExp.$2 : url;\n } // Set playback state and trigger change (only on actual change)\n\n\n function assurePlaybackState$1(play) {\n if (play && !this.embed.hasPlayed) {\n this.embed.hasPlayed = true;\n }\n\n if (this.media.paused === play) {\n this.media.paused = !play;\n triggerEvent.call(this, this.media, play ? 'play' : 'pause');\n }\n }\n\n function getHost(config) {\n if (config.noCookie) {\n return 'https://www.youtube-nocookie.com';\n }\n\n if (window.location.protocol === 'http:') {\n return 'http://www.youtube.com';\n } // Use YouTube's default\n\n\n return undefined;\n }\n\n var youtube = {\n setup: function setup() {\n var _this = this;\n\n // Add embed class for responsive\n toggleClass(this.elements.wrapper, this.config.classNames.embed, true); // Setup API\n\n if (is$1.object(window.YT) && is$1.function(window.YT.Player)) {\n youtube.ready.call(this);\n } else {\n // Reference current global callback\n var callback = window.onYouTubeIframeAPIReady; // Set callback to process queue\n\n window.onYouTubeIframeAPIReady = function () {\n // Call global callback if set\n if (is$1.function(callback)) {\n callback();\n }\n\n youtube.ready.call(_this);\n }; // Load the SDK\n\n\n loadScript(this.config.urls.youtube.sdk).catch(function (error) {\n _this.debug.warn('YouTube API failed to load', error);\n });\n }\n },\n // Get the media title\n getTitle: function getTitle(videoId) {\n var _this2 = this;\n\n var url = format(this.config.urls.youtube.api, videoId);\n fetch(url).then(function (data) {\n if (is$1.object(data)) {\n var title = data.title,\n height = data.height,\n width = data.width; // Set title\n\n _this2.config.title = title;\n ui.setTitle.call(_this2); // Set aspect ratio\n\n _this2.embed.ratio = [width, height];\n }\n\n setAspectRatio.call(_this2);\n }).catch(function () {\n // Set aspect ratio\n setAspectRatio.call(_this2);\n });\n },\n // API ready\n ready: function ready() {\n var player = this; // Ignore already setup (race condition)\n\n var currentId = player.media && player.media.getAttribute('id');\n\n if (!is$1.empty(currentId) && currentId.startsWith('youtube-')) {\n return;\n } // Get the source URL or ID\n\n\n var source = player.media.getAttribute('src'); // Get from
if needed\n\n if (is$1.empty(source)) {\n source = player.media.getAttribute(this.config.attributes.embed.id);\n } // Replace the