- ' +\n (virtualList ? '' : inputsHTML) +\n '
{"version":3,"sources":["framework7.js"],"names":["window","Framework7","params","createPageCallback","callbackName","capitalized","replace","match","toUpperCase","app","pageName","callback","onPage","handleInfiniteScroll","virtualList","inf","$","this","scrollTop","scrollHeight","height","offsetHeight","distance","getAttribute","virtualListContainer","find","onTop","hasClass","indexOf","parseInt","trigger","length","f7VirtualList","reachEnd","_fixIpadBodyScrolLeft","device","ipad","document","body","scrollLeft","setTimeout","version","cache","cacheIgnore","cacheIgnoreGetParameters","cacheDuration","preloadPreviousPage","uniqueHistory","uniqueHistoryIgnoreGetParameters","dynamicPageUrl","allowDuplicateUrls","router","pushState","pushStateRoot","undefined","pushStateNoAnimation","pushStateSeparator","pushStatePreventOnLoad","fastClicks","fastClicksDistanceThreshold","fastClicksDelayBetweenClicks","tapHold","tapHoldDelay","tapHoldPreventClicks","activeState","activeStateElements","animateNavBackIcon","swipeBackPage","swipeBackPageThreshold","swipeBackPageActiveArea","swipeBackPageAnimateShadow","swipeBackPageAnimateOpacity","ajaxLinks","externalLinks","sortable","hideNavbarOnPageScroll","hideToolbarOnPageScroll","hideTabbarOnPageScroll","showBarsOnPageScrollEnd","showBarsOnPageScrollTop","swipeout","swipeoutActionsNoFold","swipeoutNoFollow","smartSelectBackTemplate","smartSelectBackText","smartSelectInPopup","smartSelectPopupCloseTemplate","smartSelectPopupCloseText","smartSelectSearchbar","smartSelectBackOnSelect","searchbarHideDividers","searchbarHideGroups","scrollTopOnNavbarClick","scrollTopOnStatusbarClick","swipePanel","swipePanelActiveArea","swipePanelCloseOpposite","swipePanelOnlyClose","swipePanelNoFollow","swipePanelThreshold","panelsCloseByOutside","modalButtonOk","modalButtonCancel","modalUsernamePlaceholder","modalPasswordPlaceholder","modalTitle","modalCloseByOutside","actionsCloseByOutside","popupCloseByOutside","modalPreloaderTitle","modalStack","imagesLazyLoadThreshold","imagesLazyLoadSequential","viewClass","viewMainClass","viewsClass","notificationCloseOnClick","notificationCloseIcon","animatePages","templates","template7Data","template7Pages","precompileTemplates","init","param","Dom7","t7","Template7","_compiledTemplates","touchEvents","start","support","touch","move","end","ls","localStorage","rtl","css","attr","statusbarOverlay","addClass","removeClass","views","View","selector","i","defaults","dynamicNavbar","domCache","linksView","reloadPages","def","view","container","main","contentCache","pagesCache","f7View","pagesContainer","initialPages","initialNavbars","push","allowPageChange","docLocation","location","href","history","viewURL","split","currentPage","currentPageData","activePage","eq","f7PageData","url","isScrolling","viewContainerWidth","touchesDiff","touchStartTime","activeNavElements","previousNavElements","activeNavBackIcon","previousNavBackIcon","pageShadow","el","isTouched","isMoved","touchesStart","previousPage","allowViewTouchMove","activeNavbar","previousNavbar","handleTouchStart","e","swipeoutOpenedEl","x","type","targetTouches","pageX","y","pageY","Date","getTime","handleTouchMove","Math","abs","f7PreventSwipeBack","preventSwipeBack","cancel","width","target","parents","is","notFromBorder","offset","left","android","append","closeModal","f7PreventPanelSwipe","preventDefault","inverter","percentage","callbackData","onSwipeBackMove","activePageTranslate","previousPageTranslate","pixelRatio","round","transform","style","opacity","className","activeNavTranslate","f7NavbarRightOffset","previousNavTranslate","f7NavbarLeftOffset","handleTouchEnd","boxShadow","timeDiff","pageChanged","each","translate","sliding","pageBackCallback","pageContainer","position","newPage","oldPage","swipeBack","pageAnimCallback","onSwipeBackBeforeChange","onSwipeBackBeforeReset","transitionEnd","back","afterBack","onSwipeBackAfterChange","onSwipeBackAfterReset","remove","attachEvents","detach","action","detachEvents","material","mainView","load","options","loadPage","loadContent","content","reloadPage","reload","reloadContent","reloadPreviousPage","reloadPrevious","reloadPreviousContent","refreshPage","ignoreCache","refreshPreviousPage","hideNavbar","showNavbar","hideToolbar","showToolbar","pushStateUrl","pushStateAnimatePages","state","destroy","pluginHook","addView","getCurrentView","index","popoverView","popupView","panelView","appViews","appView","children","currentViews","navbarInitCallback","navbarContainer","navbarInnerContainer","parent","f7NavbarInitialized","navbarData","innerContainer","pageData","eventData","page","navbar","reinitNavbar","initNavbar","navbarRemoveCallback","initSearchbar","initNavbarWithCallback","viewContainer","pages","sizeNavbars","navbarInner","n","currLeft","diff","right","center","subnavbar","noLeft","noRight","leftWidth","outerWidth","rightWidth","centerWidth","navbarStyles","styles","navbarWidth","offsetWidth","paddingLeft","paddingRight","onLeft","requiredLeft","centerLeft","toolbarContainer","toolbar","Searchbar","removeDiacritics","str","a","diacriticsMap","preventSubmit","input","clearButton","cancelButton","searchList","searchIn","searchBy","found","notFound","overlay","ignore","customSearch","s","active","isVirtualList","cancelMarginProp","transition","show","defaultDiacriticsRemovalap","base","letters","j","triggerEvent","eventName","enable","_enable","ios","disable","_disable","blur","val","clear","focus","handleInput","value","trim","search","previousQuery","query","internal","foundItems","resetFilter","hide","searchAll","items","searchByItem","values","toLowerCase","compareWithText","itemText","text","join","wordsMatch","title","nextElements","nextAll","nextEl","group","notHidden","filterItems","method","f7Searchbar","searchbar","onBeforeRemove","sb","dataset","once","Messagebar","textarea","maxHeight","m","pageContent","pageContentPadding","initialBarHeight","initialAreaHeight","sizeTextarea","clientHeight","newAreaHeight","newBarHeight","maxBarHeight","bottom","padding-bottom","textareaTimeout","handleTextarea","clearTimeout","f7Messagebar","messagebar","initPageMessagebar","pageBeforeRemove","mb","off","on","removeFromCache","splice","xhr","get","_url","time","ajax","beforeSend","onAjaxStart","complete","status","responseText","onAjaxComplete","error","onAjaxError","pageCallbacks","pageNames","returnCallbacks","callbacks","removeIndex","toString","pageCallbacksNames","triggerPageCallbacks","allPagesCallbacks","pageInitCallback","f7PageInitialized","parseUrlQuery","name","from","context","fromPage","oldNavbarInnerContainer","reinitPage","onPageReinit","onPageBeforeInit","preloadOnly","initPage","onPageInit","pageRemoveCallback","pageContext","onPageBeforeRemove","onPageAfterBack","onPageBack","onPageAfterAnimation","tabBar","onPageBeforeAnimation","initPageMessages","initFormsStorage","initSmartSelects","initPageSwiper","initPullToRefresh","initInfiniteScroll","initScrollToolbars","initImagesLazyLoad","reinitPageSwiper","reinitLazyLoad","initPageWithCallback","temporaryDom","createElement","findElement","notCached","leftPage","rightPage","direction","removeClasses","prepareNavbar","newNavbarInner","oldNavbarInner","newNavbarPosition","slidingOffset","offsetLeft","animateNavbars","leftNavbarInner","rightNavbarInner","preprocess","next","pluginProcess","preroute","template7Render","t7_ctx","t7_template","t7_rendered_content","contextName","template","template7Cache","compile","_ctx_path","_ctx","data","pageNameMatch","templateName","url_query","key","_load","afterAnimation","pushStateClearQueue","historyBecameUnique","pagesInView","reloadPosition","t7_rendered","isDynamicPage","innerHTML","ci","f7RelatedNavbar","f7RelatedPage","newPageName","viewIndex","lastUrl","_history","lastIndexOf","slice","prev","insertBefore","insertAfter","clientLeft","animationEnd","proceed","abort","_back","animateBack","parseNewPage","setPages","navbarInners","force","pageToRemove","navbarToRemove","unshift","manipulateDom","newNavbar","previousURL","pop","inners","oldNavbar","pageUrl","preloadUrl","_modalTemplateTempDiv","modalStackClearQueue","shift","modal","modalHTML","modalTemplate","buttonsHTML","buttons","bold","titleHTML","textHTML","afterTextHTML","afterText","noButtons","verticalButtons","cssClass","close","onClick","openModal","alert","callbackOk","arguments","confirm","callbackCancel","prompt","modalLogin","username","password","modalPassword","showPreloader","hidePreloader","showIndicator","hideIndicator","actions","groupSelector","buttonSelector","toPopover","isArray","actionsToPopoverTemplate","modalActionsToPopoverTemplate","actionsToPopover","popoverHTML","popover","modalActionsTemplate","button","buttonClass","label","color","bg","disabled","groups","groupIndex","clickTarget","buttonIndex","buttonParams","removeOnClose","sizePopover","top","modalAngle","modalAngleLeft","modalAngleTop","modalWidth","modalHeight","modalAngleSize","targetWidth","targetHeight","outerHeight","targetOffset","targetParentPage","windowHeight","windowWidth","modalTop","modalLeft","modalPosition","max","min","_modal","childNodes","classList","add","popup","pickerModal","loginScreen","isModal","isPopup","isLoginScreen","isPickerModal","marginTop","isPopover","allowPanelOpen","openPanel","panelPosition","panelTransitionEnd","transitionEndTarget","panel","closePanel","effect","display","activePanel","initSwipePanels","side","opened","innerWidth","panelOverlay","panelWidth","threshold","edge","loadImage","onLoad","src","imageIsLoading","imagesSequence","image","Image","onload","onerror","lazyHandler","lazyLoadImages","isElementInViewport","rect","getBoundingClientRect","innerHeight","placeholderSrc","imagesLazyLoadPlaceholder","f7DestroyImagesLazyLoad","destroyImagesLazyLoad","f7DestroyLazyLoad","reinitImagesLazyLoad","Messages","autoLayout","newMessagesFirst","messageTemplate","layout","message","isSent","appendMessage","props","animate","addMessage","prependMessage","addMessages","newMessages","newMessagesHTML","hasImage","scrollMessages","messages","messagesToReturn","removeMessage","removeMessages","clean","html","duration","currentScroll","newScroll","f7Messages","allowSwipeout","initSwipeout","swipeoutEl","swipeOutEl","swipeOutContent","actionsRight","actionsLeft","actionsLeftWidth","actionsRightWidth","buttonsLeft","buttonsRight","overswipeRightButton","overswipeLeftButton","noFoldLeft","noFoldRight","openedActions","buttonOffset","progress","swipeoutClose","swipeoutOpen","overswipeLeft","overswipeRight","$button","pow","_buttonOffset","actionsWidth","noFold","newTranslate","click","closed","dir","swipeOutActions","swipeOutActionsWidth","call","onSwipeoutClose","closeTO","swipeoutDelete","virtualIndex","f7VirtualListIndex","deleteItem","sortableToggle","sortableContainer","toggleClass","sortableOpen","sortableClose","initSortable","touchStartY","sortingEl","sortingItems","minTop","offsetTop","maxTop","sortingElHeight","currentEl","currentElOffset","currentElHeight","sortingElOffset","oldIndex","newIndex","moveItem","selects","smartSelect","$select","select","valueText","selected","textContent","itemAfter","selectedText","smartSelectAddOption","option","selectName","smartSelectOpen","reLayout","handleInputs","virtualListInstance","smartSelectItemTemplate","virtualListHeight","item","openIn","inputName","optionText","checked","backOnSelect","inputType","pageInit","detail","smartSelectData","pageTitle","backText","closeText","popupCloseText","formTheme","smartSelectFormTheme","navbarTheme","smartSelectNavbarTheme","$selectData","optionHasMedia","optionImage","optionIcon","optionGroup","optionGroupLabel","optionShowGroupLabel","previousGroup","optionColor","optionClassName","optionData","id","multiple","optionClass","groupLabel","showGroupLabel","icon","hasMedia","checkbox","test","smartSelectItem","inputsHTML","smartSelectNavbar","smartSelectNavbarTemplate","navbarLayout","navbarHTML","inPopup","inPage","leftTemplate","noNavbar","noToolbar","searchbarPlaceholder","searchbarCancel","useSearchbar","searchbarHTML","pageHTML","VirtualList","listBlock","cols","dynamicHeightBufferSize","vl","updatableScroll","osVersion","ul","displayDomCache","tempDomElement","lastRepaintY","fragment","createDocumentFragment","indexes","resetScrollTop","filteredItems","update","pageHeight","rowsPerScreen","rowsBefore","rowsAfter","rowsToRender","listHeight","maxBufferHeight","dynamicHeight","setListSize","heights","itemHeight","ceil","render","forceScrollTop","fromIndex","toIndex","heightBeforeFirstItem","heightBeforeLastItem","itemTop","topPosition","currentFromIndex","currentToIndex","renderItem","onItemBeforeInsert","appendChild","onBeforeClear","onItemsBeforeInsert","onItemsAfterInsert","scrollToItem","listTop","handleScroll","handleResize","appendItems","appendItem","replaceAllItems","replaceItem","prependItems","newCache","cached","prependItem","cachedIndex","leftIndex","rightIndex","indexShift","insertItemBefore","deleteItems","prevIndex","deletedItem","deleteAllItems","clearCache","reinitVirtualList","vlists","vlistInstance","os","wasScrolled","dynamicTriggerDistance","triggerDistance","startTranslate","useTranslate","refresh","done","pullToRefreshDone","destroyPullToRefresh","eventsTarget","hasNavbar","f7DestroyPullToRefresh","pullToRefreshTrigger","pullToRefreshContent","attachInfiniteScroll","infiniteContent","detachInfiniteScroll","scrollContent","bottomBarHeight","navbarHidden","toolbarHidden","tabbarHidden","tabbar","previousScroll","hasToolbar","hasTabbar","hideTabbar","toolbarHeight","tabbarHeight","f7ScrollToolbarsHandler","destroyScrollToolbars","handler","showTab","tab","tabLink","newTab","tabs","isAnimatedTabs","oldTab","oldTabLink","oldTabId","accordionToggle","accordionClose","accordionOpen","list","expandedItem","initFastClicks","findActivableElement","activable","isInsideScrollableView","activableElement","prop","activeTimeout","addActive","removeActive","isFormElement","nodes","nodeName","androidNeedsBlur","noBlur","activeElement","targetNeedsFastClick","$el","targetNeedsFocus","tag","skipInputs","readOnly","targetNeedsPrevent","prevent","handleMouseDown","which","handleMouseMove","handleMouseUp","tapHoldFired","tapHoldTimeout","needsFastClickTimeOut","needsFastClick","trackClick","selection","getSelection","rangeCount","focusNode","isCollapsed","activeSelection","targetElement","touchStartX","scrollParent","f7ScrollTop","timeStamp","lastClickTime","_isMoved","cancelable","changedTouches","evt","createEvent","eventType","initMouseEvent","screenX","screenY","clientX","clientY","forwardedTouchEvent","dispatchEvent","handleTouchCancel","handleClick","allowClick","stopImmediatePropagation","stopPropagation","androidChrome","webView","addEventListener","initClickEvents","handleScrollTop","clicked","isLink","handleClicks","open","clickedData","pickerToClose","pickerToOpen","picker","isTabLink","confirmTitle","accordionItem","validUrl","JSON","parse","preventScrolling","initResize","resize","orientationchange","minimalUi","orientation","formsData","formStoreData","formId","formJSON","stringify","formDeleteData","removeItem","formGetData","formToJSON","form","formData","skipTypes","skipNames","formFromJSON","storeForm","forms","contentType","FormData","serializeObject","success","pushStateQueue","queue","stateUrl","stateContent","statePageName","initPushState","handlePopState","blockPopstate","swiper","Swiper","destroySwiperOnRemove","slider","destroySwiper","swipers","_slider","sliders","sliderInstance","PhotoBrowser","pb","photos","initialSlide","spaceBetween","speed","zoom","maxZoom","minZoom","exposition","expositionHideCaptions","theme","swipeToClose","backLinkText","ofText","loop","lazyLoading","lazyLoadingInPrevNext","lazyLoadingOnTransitionStart","iconColor","navbarTemplate","toolbarTemplate","photoTemplate","photoLazyTemplate","captionsTheme","captionsTemplate","captionTemplate","objectTemplate","photosHtml","captionsHtml","photo","thisTemplate","String","hasOwnProperty","caption","htmlTemplate","activeIndex","openIndex","slideTo","onPopupClose","onOpen","swiperContainer","onClose","swiperWrapper","slides","gestureSlide","gestureImg","gestureImgWrap","onSliderTransitionStart","current","total","loopedSlides","isBeginning","isEnd","captions","captionsContainer","captionIndex","previousSlideVideo","previousIndex","pause","onSlideChangeStart","onSliderTransitionEnd","scale","currentScale","onSlideChangeEnd","sliderSettings","nextButton","prevButton","indexButton","preloadImages","onTap","toggleExposition","onDoubleTap","toggleZoom","onTransitionStart","onTransitionEnd","onLazyImageLoad","slide","img","onLazyImageReady","onTouchStart","swipeCloseTouchStart","onTouchMoveOpposite","swipeCloseTouchMove","onTouchEnd","swipeCloseTouchEnd","onSlideGestureStart","onSlideGestureChange","onSlideGestureEnd","onSlideTouchStart","onSlideTouchMove","onSlideTouchEnd","exposed","enableExposition","disableExposition","isScaling","imageIsTouched","imageIsMoved","imageCurrentX","imageCurrentY","imageMinX","imageMinY","imageMaxX","imageMaxY","imageWidth","imageHeight","imageStartX","imageStartY","velocityPrevPositionX","velocityPrevTime","velocityX","velocityPrevPositionY","velocityY","imageTouchesStart","imageTouchesCurrent","getTranslate","scaledWidth","scaledHeight","floor","now","momentumDurationX","momentumDurationY","momentumDistanceX","newPositionX","momentumDistanceY","newPositionY","momentumDuration","swipeToCloseDiff","swipeToCloseStart","swipeToCloseCurrent","swipeToCloseActiveSlide","swipeToCloseTimeStart","swipeToCloseIsTouched","allowSwipeToClose","swipeToCloseStarted","onSwipeToClose","photoBrowser","Picker","p","convertToPopover","onlyInPopover","inline","inPopover","resizeCols","divider","calcSize","setValue","openOnInput","scrollToInput","newPaddingBottom","paddingTop","paddingBottom","pageScrollHeight","inputTop","closeOnHTMLClick","onPickerClose","destroyPickerCol","updateValuesOnMomentum","updateValuesOnTouchmove","rotateEffect","momentumRatio","freeMode","inputReadOnly","toolbarCloseText","initialized","originBug","navigator","userAgent","arrValues","valueIndex","updateValue","newValue","newDisplayValue","displayValue","onChange","formatValue","initPickerCol","colElement","updateItems","updateDuringScroll","animationFrameId","requestAnimationFrame","col","touchCurrentY","allowItemClick","currentTranslate","wrapper","cancelAnimationFrame","returnTo","minTranslate","maxTranslate","velocityTranslate","prevTranslate","velocityTime","touchEndTime","velocity","colContainer","colIndex","wrapperHeight","itemsHeight","replaceValues","displayValues","destroyEvents","newItemsHTML","columnHTML","initEvents","colWidth","colHeight","valueCallbacks","newActiveIndex","previousActiveIndex","selectedItem","prevAll","itemOffsetTop","translateOffset","itemOffset","itemsFit","angle","f7DestroyPickerCol","onlyItems","columnItemsHTML","textAlign","pickerHTML","pickerClass","colsHTML","f7Picker","Calendar","formatDate","date","year","getFullYear","month","getMonth","month1","day","getDate","weekDay","getDay","dateFormat","substring","monthNames","monthNamesShort","dayNames","dayNamesShort","destroyCalendarEvents","firstDay","weekendDays","minDate","maxDate","touchMove","closeOnSelect","monthPicker","monthPickerTemplate","yearPicker","yearPickerTemplate","weekHeader","isH","animating","addValue","inValuesIndex","inputValue","valueDate","initCalendarEvents","monthsTranslate","touchCurrentX","wrapperWidth","resetMonth","nextMonth","prevMonth","handleDayClick","dateYear","dateMonth","dateDay","onDayClick","prevYear","nextYear","f7DestroyCalendarEvents","daysInMonth","d","monthHTML","daysInPrevMonth","firstDayOfMonthIndex","dayDate","currentValues","rows","dayIndex","today","setHours","rowHTML","dayNumber","dayYear","dayMonth","updateCurrentMonthYear","currentMonth","months","currentYear","onMonthChangeStart","currentIndex","onMonthYearChangeStart","onMonthChangeEnd","rebuildBoth","nextMonthHTML","prevMonthHTML","newMonthHTML","prepend","setMonthsTranslate","onMonthAdd","onMonthYearChangeEnd","prevMonthTranslate","currentMonthTranslate","nextMonthTranslate","nextDate","nextDateTime","transitionEndCallback","prevDate","prevDateTime","setYearMonth","targetDate","currentDate","monthTranslate","wrapperTranslate","layoutDate","currentMonthHTML","monthsHTML","weekHeaderHTML","weekDayIndex","dayName","toolbarHTML","f7Calendar","calendar","_tempNotificationElement","addNotification","media","notificationMedia","notificationTitle","subtitle","notificationSubtitle","closeIcon","hold","notificationHold","closeOnClick","itemHTML","custom","closeNotification","additionalClass","initTemplate7Templates","_plugins","initPlugins","plugin","plugins","hook","hooks","pluginPrevent","prevents","processed","process","getDeviceInfo","onAppInit","arr","_this","els","tempParent","toCreate","querySelectorAll","getElementById","nodeType","prototype","classes","contains","toggle","attrs","setAttribute","attrName","removeAttr","removeAttribute","propName","dataKey","dom7ElementDataStorage","attributes","toCamelCase","parseFloat","elStyle","webkitTransform","MsTransform","msTransform","MozTransform","OTransform","webkitTransitionDuration","MsTransitionDuration","msTransitionDuration","MozTransitionDuration","OTransitionDuration","transitionDuration","targetSelector","listener","capture","handleLiveEvent","k","events","dom7LiveListeners","liveListener","removeEventListener","proxy","dom","CustomEvent","bubbles","initEvent","fireCallBack","includeMargins","getPropertyValue","box","clientTop","pageYOffset","pageXOffset","getComputedStyle","compareWith","matches","webkitMatchesSelector","mozMatchesSelector","msMatchesSelector","child","previousSibling","returnIndex","newChild","tempDiv","firstChild","before","parentNode","cloneNode","after","nextSibling","nextElementSibling","nextEls","previousElementSibling","prevEls","unique","foundElements","removeChild","toAdd","createMethod","notTrigger","shortcuts","globalAjaxOptions","ajaxSetup","optionName","optionValue","_jsonpRequests","fireAjaxCallback","async","user","headers","xhrFields","statusCode","processData","dataType","timeout","globalOptionName","globalOptionValue","defaultValue","paramsPrefix","_method","stringData","abortTimeout","callbackSplit","requestUrl","addVars","filter","script","querySelector","XMLHttpRequest","postData","postDataInstances","ArrayBuffer","Blob","Document","constructor","boundary","setRequestHeader","_data","_newData","headerName","headerCallback","crossDomain","RegExp","$2","host","fieldName","fieldValue","xhrTimeout","responseData","err","parseerror","send","methods","Object","apply","obj","resultArray","separator","toPush","encodeURIComponent","string","group1","axis","matrix","curTransform","curStyle","transformMatrix","WebKitCSSMatrix","m41","m42","webkitRequestAnimationFrame","mozRequestAnimationFrame","webkitCancelAnimationFrame","mozCancelAnimationFrame","supportTouch","DocumentTouch","fn","scrollTo","easing","startTime","easeProgress","cos","PI","animateTop","currentTop","newTop","animateLeft","currentLeft","newLeft","maxLeft","scrollWidth","ua","ipod","iphone","osVersionArr","statusBar","screen","classNames","devicePixelRatio","major","isFunction","func","helperToSlices","shiftIndex","helperParts","slices","part","hashParts","hashName","hashContent","hash","stringToBlocks","blocks","_blocks","block","helperSlices","helperName","helperContext","helperHash","helperContent","elseContent","toSkip","foundClosed","foundElse","depth","inverseContent","getCompileFn","getCompileInverse","getCompileVar","ctx","variable","parts","levelsUp","newDepth","isFinite","getCompiledArguments","contextArray","t","Error","resultString","compiledArguments","helpers","eval","compiled","if","inverse","unless","ret","reverse","first","last","with","delimiter","delimeter","js","expression","js_compare","condition","instance","rendered","registerHelper","unregisterHelper","autoplay","autoplayTimeoutId","fixLoop","_slideNext","autoplayStopOnLast","stopAutoplay","_slideTo","findElementInEvent","_el","initObserver","ObserverFunc","MutationObserver","WebkitMutationObserver","observer","mutations","forEach","mutation","onResize","emit","observe","childList","characterData","observers","setParallaxTransform","pX","pY","normalizeEventName","touchEventsTarget","autoplayDisableOnInteraction","freeModeMomentum","freeModeMomentumRatio","freeModeMomentumBounce","freeModeMomentumBounceRatio","freeModeSticky","setWrapperSize","virtualTranslate","coverflow","rotate","stretch","modifier","slideShadows","cube","shadow","shadowOffset","shadowScale","fade","crossFade","parallax","scrollbar","scrollbarHide","keyboardControl","mousewheelControl","mousewheelForceToAxis","hashnav","slidesPerView","slidesPerColumn","slidesPerColumnFill","slidesPerGroup","centeredSlides","touchRatio","touchAngle","simulateTouch","shortSwipes","longSwipes","longSwipesRatio","longSwipesMs","followFinger","onlyExternal","touchMoveStopPropagation","pagination","paginationClickable","paginationHide","paginationBulletRender","resistance","resistanceRatio","watchSlidesProgress","watchSlidesVisibility","grabCursor","preventClicks","preventClicksPropagation","slideToClickedSlide","updateOnImagesReady","loopAdditionalSlides","control","controlInverse","allowSwipeToPrev","allowSwipeToNext","swipeHandler","noSwiping","noSwipingClass","slideClass","slideActiveClass","slideVisibleClass","slideDuplicateClass","slideNextClass","slidePrevClass","wrapperClass","bulletClass","bulletActiveClass","buttonDisabledClass","paginationHiddenClass","observeParents","a11y","prevSlideMessage","nextSlideMessage","firstSlideMessage","lastSlideMessage","runCallbacksOnInit","initialVirtualTranslate","deepDef","Zepto","jQuery","flexbox","transforms3d","paginationContainer","wrongRTL","lockSwipeToNext","lockSwipeToPrev","lockSwipes","unlockSwipeToNext","unlockSwipeToPrev","unlockSwipes","cursor","imagesToLoad","imagesLoaded","imgElement","checkForComplete","onReady","_onReady","currentSrc","autoplaying","autoplayPaused","startAutoplay","pauseAutoplay","snapGrid","updateContainerSize","clientWidth","size","updateSlidesSize","slidesGrid","slidesSizesGrid","slidePosition","prevSlideSize","virtualSize","marginLeft","marginRight","marginBottom","slidesNumberEvenToRows","slideSize","newSlideOrderIndex","column","row","slidesPerRow","-webkit-box-ordinal-group","-moz-box-ordinal-group","-ms-flex-order","-webkit-order","order","margin-top","swiperSlideSize","newSlidesGrid","updateSlidesOffset","swiperSlideOffset","updateSlidesProgress","offsetCenter","slideCenterOffset","slideProgress","slideBefore","slideAfter","isVisible","updateProgress","translatesDiff","updateActiveIndex","snapIndex","updateClasses","activeSlide","bullets","bulletIndex","updatePagination","bulletsHTML","numberOfBullets","updateTranslate","forceSetTranslate","setWrapperTranslate","set","translated","forceUpdatePagination","desktopEvents","pointerEnabled","msPointerEnabled","actionDom","moveCapture","nested","browser","ie","onTouchMove","onClickNext","onEnterKey","onClickPrev","onClickIndex","slideNext","slidePrev","updateClickedSlide","slideFound","clickedSlide","clickedIndex","realIndex","slideToIndex","duplicatedSlides","allowThresholdMove","clickTimeout","allowMomentumBounce","formElements","velocities","touches","startX","startY","currentX","currentY","isTouchEvent","startMoving","originalEvent","swipeDirection","preventedByNestedSwiper","atan2","ieTouch","getWrapperTranslate","setWrapperTransition","disableParentSwiper","currentPos","lastMoveEvent","velocityEvent","momentumDistance","newPosition","afterBouncePosition","doBounce","bounceAmount","nextSlide","slideReset","stopIndex","groupSize","ratio","slideIndex","runCallbacks","lazy","setHash","_slidePrev","byController","effects","setTransition","controller","z","setTranslate","initObservers","containerParents","disconnectObservers","disconnect","createLoop","prependSlides","appendSlides","destroyLoop","appendSlide","prependSlide","removeSlide","slidesIndexes","indexToRemove","removeAllSlides","fadeIndex","tx","ty","slideOpacity","triggerEvents","cubeShadow","wrapperRotate","slideAngle","tz","shadowBefore","shadowAfter","-webkit-transform-origin","-moz-transform-origin","-ms-transform-origin","transform-origin","shadowAngle","multiplier","sin","scale1","scale2","zFactor","isSafari","isUiWebView","slideOffset","offsetMultiplier","rotateY","rotateX","translateZ","translateY","translateX","slideTransform","zIndex","ws","perspectiveOrigin","initialImageLoaded","loadImageInSlide","loadInDuplicate","_img","background","slideOriginalIndex","originalSlide","duplicatedSlide","prevSlide","track","drag","trackSize","moveDivider","dragSize","newPos","newSize","setControlledTranslate","c","controlledTranslate","controlled","setControlledTransition","parallaxDuration","callPlugins","emitterEventListeners","_handler","makeFocusable","tabIndex","addRole","role","addLabel","event","keyCode","notify","lastSlideMsg","nextSlideMsg","firstSlideMsg","prevSlideMsg","liveRegion","notification","enableKeyboardControl","enableMousewheelControl","cleanupStyles","deleteInstance","disableKeyboardControl","disableMousewheelControl","msMaxTouchPoints","maxTouchPoints","Modernizr","csstransforms3d","div"],"mappings":"CAcA,WAEI,YAIAA,QAAOC,WAAa,SAAUC,GAomD1B,QAASC,GAAmBC,GACxB,GAAIC,GAAcD,EAAaE,QAAQ,KAAM,SAAUC,GACnD,MAAOA,GAAMC,eAEjBC,GAAI,SAAWJ,GAAe,SAAUK,EAAUC,GAC9C,MAAOF,GAAIG,OAAOR,EAAcM,EAAUC,IAsgIlD,QAASE,KAEL,GAMIC,GANAC,EAAMC,EAAEC,MACRC,EAAYH,EAAI,GAAGG,UACnBC,EAAeJ,EAAI,GAAGI,aACtBC,EAASL,EAAI,GAAGM,aAChBC,EAAWP,EAAI,GAAGQ,aAAa,iBAC/BC,EAAuBT,EAAIU,KAAK,iBAEhCC,EAAQX,EAAIY,SAAS,sBAMzB,IALKL,IAAUA,EAAW,IACF,gBAAbA,IAAyBA,EAASM,QAAQ,MAAQ,IACzDN,EAAWO,SAASP,EAAU,IAAM,IAAMF,GAE1CE,EAAWF,IAAQE,EAAWF,GAC9BM,EACgBJ,EAAZJ,GACAH,EAAIe,QAAQ,gBAIhB,IAAIZ,EAAYE,GAAUD,EAAeG,EAAU,CAC/C,GAAIE,EAAqBO,OAAS,IAC9BjB,EAAcU,EAAqB,GAAGQ,cAClClB,IAAgBA,EAAYmB,UAAU,MAE9ClB,GAAIe,QAAQ,aA28BxB,QAASI,KACDzB,EAAI0B,OAAOC,OACXC,SAASC,KAAKC,WAAa,EAC3BC,WAAW,WACPH,SAASC,KAAKC,WAAa,GAC5B,IAtlNX,GAAI9B,GAAMQ,IAGVR,GAAIgC,QAAU,QAGdhC,EAAIP,QACAwC,OAAO,EACPC,eACAC,0BAA0B,EAC1BC,cAAe,IACfC,qBAAqB,EACrBC,eAAe,EACfC,kCAAkC,EAClCC,eAAgB,oBAChBC,oBAAoB,EACpBC,QAAQ,EAERC,WAAW,EACXC,cAAeC,OACfC,sBAAsB,EACtBC,mBAAoB,MACpBC,wBAAwB,EAExBC,YAAY,EACZC,4BAA6B,EAC7BC,6BAA8B,GAE9BC,SAAS,EACTC,aAAc,IACdC,sBAAsB,EAEtBC,aAAa,EACbC,oBAAqB,yBAErBC,oBAAoB,EAEpBC,eAAe,EACfC,uBAAwB,EACxBC,wBAAyB,GACzBC,4BAA4B,EAC5BC,6BAA6B,EAE7BC,UAAWlB,OAEXmB,cAAe,YAEfC,UAAU,EAEVC,wBAAwB,EACxBC,yBAAyB,EACzBC,wBAAwB,EACxBC,yBAAyB,EACzBC,yBAAyB,EAEzBC,UAAU,EACVC,uBAAuB,EACvBC,kBAAkB,EAElBC,wBAAyB,4HACzBC,oBAAqB,OACrBC,oBAAoB,EACpBC,8BAA+B,4HAC/BC,0BAA2B,QAC3BC,sBAAsB,EACtBC,yBAAyB,EAEzBC,uBAAuB,EACvBC,qBAAqB,EAErBC,wBAAwB,EACxBC,2BAA2B,EAE3BC,YAAY,EACZC,qBAAsB,EACtBC,yBAAyB,EACzBC,qBAAqB,EACrBC,oBAAoB,EACpBC,oBAAqB,EACrBC,sBAAsB,EAEtBC,cAAe,KACfC,kBAAmB,SACnBC,yBAA0B,WAC1BC,yBAA0B,WAC1BC,WAAY,aACZC,qBAAqB,EACrBC,uBAAuB,EACvBC,qBAAqB,EACrBC,oBAAqB,cACrBC,YAAY,EAEZC,wBAAyB,EACzBC,0BAA0B,EAE1BC,UAAW,OACXC,cAAe,YACfC,WAAY,QAEZC,0BAA0B,EAC1BC,uBAAuB,EAEvBC,cAAc,EAEdC,aACAC,iBACAC,gBAAgB,EAChBC,qBAAqB,EAErBC,MAAM,EAIV,KAAK,GAAIC,KAAS1H,GACdO,EAAIP,OAAO0H,GAAS1H,EAAO0H,EAI/B,IAAI5G,GAAI6G,EAGJC,EAAKC,SACTtH,GAAIuH,sBAGJvH,EAAIwH,aACAC,MAAOzH,EAAI0H,QAAQC,MAAQ,aAAe,YAC1CC,KAAM5H,EAAI0H,QAAQC,MAAQ,YAAc,YACxCE,IAAK7H,EAAI0H,QAAQC,MAAQ,WAAa,WAI1C3H,EAAI8H,GAAKvI,OAAOwI,aAGhB/H,EAAIgI,IAAqC,QAA/BzH,EAAE,QAAQ0H,IAAI,aACpBjI,EAAIgI,KAAKzH,EAAE,QAAQ2H,KAAK,MAAO,OAGQ,mBAAhClI,GAAIP,OAAO0I,mBACdnI,EAAIP,OAAO0I,iBAAkB5H,EAAE,QAAQ6H,SAAS,0BAC/C7H,EAAE,QAAQ8H,YAAY,2BAS/BrI,EAAIsI,QACJ,IAAIC,GAAO,SAAUC,EAAU/I,GAC3B,GAgBIgJ,GAhBAC,GACAC,eAAe,EACfC,UAAU,EACVC,UAAWhG,OACXiG,aAAa,EACbxG,cAAetC,EAAIP,OAAO6C,cAC1BC,iCAAkCvC,EAAIP,OAAO8C,iCAC7CE,mBAAoBzC,EAAIP,OAAOgD,mBAC/BiB,cAAe1D,EAAIP,OAAOiE,cAC1BG,2BAA4B7D,EAAIP,OAAOoE,2BACvCC,4BAA6B9D,EAAIP,OAAOqE,4BACxCF,wBAAyB5D,EAAIP,OAAOmE,wBACpCD,uBAAwB3D,EAAIP,OAAOkE,uBACnCkD,aAAc7G,EAAIP,OAAOoH,aACzBxE,oBAAqBrC,EAAIP,OAAO4C,oBAIpC5C,GAASA,KACT,KAAK,GAAIsJ,KAAOL,GACe,mBAAhBjJ,GAAOsJ,KACdtJ,EAAOsJ,GAAOL,EAASK,GAI/B,IAAIC,GAAOxI,IACXwI,GAAKvJ,OAASA,EAGduJ,EAAKR,SAAWA,CAGhB,IAAIS,GAAY1I,EAAEiI,EAmBlB,IAlBAQ,EAAKC,UAAYA,EAAU,GAG3BD,EAAKE,KAAOD,EAAU/H,SAASlB,EAAIP,OAAOgH,eAG1CuC,EAAKG,gBAGLH,EAAKI,cAGLH,EAAU,GAAGI,OAASL,EAGtBA,EAAKM,eAAiBL,EAAUjI,KAAK,UAAU,GAC/CgI,EAAKO,gBACLP,EAAKQ,kBACDR,EAAKvJ,OAAOmJ,SAAU,CACtB,GAAIW,GAAeN,EAAUjI,KAAK,QAClC,KAAKyH,EAAI,EAAGA,EAAIc,EAAajI,OAAQmH,IACjCO,EAAKO,aAAaE,KAAKF,EAAad,GAExC,IAAIO,EAAKvJ,OAAOkJ,cAAe,CAC3B,GAAIa,GAAiBP,EAAUjI,KAAK,gBACpC,KAAKyH,EAAI,EAAGA,EAAIe,EAAelI,OAAQmH,IACnCO,EAAKQ,eAAeC,KAAKD,EAAef,KAMpDO,EAAKU,iBAAkB,CAGvB,IAAIC,GAAc/H,SAASgI,SAASC,IAGpCb,GAAKc,UACL,IAAIC,GAAUJ,EACV5G,EAAqB/C,EAAIP,OAAOsD,mBAChCH,EAAgB5C,EAAIP,OAAOmD,aAC3B5C,GAAIP,OAAOkD,WAAaqG,EAAKE,OACzBtG,EACAmH,EAAUnH,EAGNmH,EAAQ5I,QAAQ4B,IAAuB,GAAKgH,EAAQ5I,QAAQ4B,EAAqB,KAAO,IAAGgH,EAAUA,EAAQC,MAAMjH,GAAoB,IAMnJ,IAAIkH,GAAaC,CACZlB,GAAKmB,aACNF,EAAc1J,EAAEyI,EAAKM,gBAAgBtI,KAAK,mBACf,IAAvBiJ,EAAY3I,SACZ2I,EAAc1J,EAAEyI,EAAKM,gBAAgBtI,KAAK,sBAC1CiJ,EAAcA,EAAYG,GAAGH,EAAY3I,OAAS,IAElD2I,EAAY3I,OAAS,IACrB4I,EAAkBD,EAAY,GAAGI,aAKrCrB,EAAKvJ,OAAOmJ,UAAYqB,GACxBjB,EAAKsB,IAAMrB,EAAUf,KAAK,aAAec,EAAKvJ,OAAO6K,KAAO,IAAML,EAAY/B,KAAK,aACnFc,EAAKI,WAAWJ,EAAKsB,KAAOL,EAAY/B,KAAK,cAE5Cc,EAAKsB,IAAMrB,EAAUf,KAAK,aAAec,EAAKvJ,OAAO6K,KAAOP,EAG7DG,IACAA,EAAgBlB,KAAOA,EACvBkB,EAAgBI,IAAMtB,EAAKsB,IAC3BtB,EAAKmB,WAAaD,EAClBD,EAAY,GAAGI,WAAaH,GAI5BlB,EAAKsB,KACLtB,EAAKc,QAAQL,KAAKT,EAAKsB,IAI3B,IAGIC,GAGAC,EACAC,EAEAC,EAGAC,EACAC,EACAC,EACAC,EACAnC,EACAoC,EACAC,EAlBAC,GAAY,EACZC,GAAU,EACVC,KAEAhB,KACAiB,KAGAC,GAAqB,EAErBC,KACAC,IA0YJ,IAjYAvC,EAAKwC,iBAAmB,SAAUC,GACzBJ,GAAuBrC,EAAKvJ,OAAOiE,gBAAiBuH,IAAajL,EAAI0L,kBAAqB1C,EAAKU,kBACpGwB,GAAU,EACVD,GAAY,EACZV,EAAc1H,OACdsI,EAAaQ,EAAe,eAAXF,EAAEG,KAAwBH,EAAEI,cAAc,GAAGC,MAAQL,EAAEK,MACxEX,EAAaY,EAAe,eAAXN,EAAEG,KAAwBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,MACxEtB,GAAiB,GAAKuB,OAAQC,UAC9BvD,EAAgBK,EAAKvJ,OAAOkJ,eAAiBM,EAAUjI,KAAK,iBAAiBM,OAAS,IAG1F0H,EAAKmD,gBAAkB,SAAUV,GAC7B,GAAKR,EAAL,CACA,GAAIa,GAAmB,cAAXL,EAAEG,KAAuBH,EAAEI,cAAc,GAAGC,MAAQL,EAAEK,MAC9DE,EAAmB,cAAXP,EAAEG,KAAuBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,KAIlE,IAH2B,mBAAhBzB,KACPA,KAAiBA,GAAe6B,KAAKC,IAAIL,EAAQb,EAAaY,GAAKK,KAAKC,IAAIP,EAAQX,EAAaQ,KAEjGpB,GAAekB,EAAEa,oBAAsBtM,EAAIuM,iBAE3C,YADAtB,GAAY,EAGhB,KAAKC,EAAS,CACV,GAAIsB,IAAS,CAEbhC,GAAqBvB,EAAUwD,OAC/B,IAAIC,GAASnM,EAAEkL,EAAEiB,QACbnI,EAAWmI,EAAOxL,SAAS,YAAcwL,EAASA,EAAOC,QAAQ,YACjEpI,GAASjD,OAAS,KACbtB,EAAIgI,KAAOzD,EAASvD,KAAK,0BAA0BM,OAAS,IAAGkL,GAAS,GACzExM,EAAIgI,KAAOzD,EAASvD,KAAK,2BAA2BM,OAAS,IAAGkL,GAAS,IAEjFrC,EAAauC,EAAOE,GAAG,SAAWF,EAASA,EAAOC,QAAQ,SACtDxC,EAAWjJ,SAAS,kBAAiBsL,GAAS,GAClDpB,EAAenC,EAAUjI,KAAK,6BAC9B,IAAI6L,GAAgB1B,EAAaQ,EAAI1C,EAAU6D,SAASC,KAAO/D,EAAKvJ,OAAOmE,uBAS3E,IAPIiJ,EADA7M,EAAIgI,IACYmD,EAAaQ,EAAI1C,EAAU6D,SAASC,KAAO9D,EAAU,GAAGnH,WAAa0I,EAAqBxB,EAAKvJ,OAAOmE,wBAGtGuH,EAAaQ,EAAI1C,EAAU6D,SAASC,KAAO/D,EAAKvJ,OAAOmE,wBAEvEiJ,IAAeL,GAAS,IACA,IAAxBpB,EAAa9J,QAAsC,IAAtB6I,EAAW7I,UAAckL,GAAS,GAC/DA,EAEA,YADAvB,GAAY,EAIZjC,GAAKvJ,OAAOoE,6BAA+B7D,EAAI0B,OAAOsL,UACtDjC,EAAaZ,EAAWnJ,KAAK,0BACH,IAAtB+J,EAAWzJ,SACXyJ,EAAaxK,EAAE,6CACf4J,EAAW8C,OAAOlC,KAItBpC,IACA2C,EAAerC,EAAUjI,KAAK,kCAC9BuK,EAAiBtC,EAAUjI,KAAK,gCAChC2J,EAAoBW,EAAatK,KAAK,+CACtC4J,EAAsBW,EAAevK,KAAK,+CACtChB,EAAIP,OAAOgE,qBACXoH,EAAoBS,EAAatK,KAAK,6BACtC8J,EAAsBS,EAAevK,KAAK,+BAK9CT,EAAE,0BAA0Be,OAAS,GACrCtB,EAAIkN,WAAW3M,EAAE,2BAGzBkL,EAAE0B,qBAAsB,EACxBjC,GAAU,EACVO,EAAE2B,gBAGF,IAAIC,GAAWrN,EAAIgI,IAAM,GAAK,CAG9ByC,IAAeqB,EAAQX,EAAaQ,EAAI3C,EAAKvJ,OAAOkE,wBAA0B0J,EAC5D,EAAd5C,IAAiBA,EAAc,EACnC,IAAI6C,GAAa7C,EAAcD,EAG3B+C,GACAD,WAAYA,EACZnD,WAAYA,EAAW,GACvBiB,aAAcA,EAAa,GAC3BE,aAAcA,EAAa,GAC3BC,eAAgBA,EAAe,GAE/BvC,GAAKvJ,OAAO+N,iBACZxE,EAAKvJ,OAAO+N,gBAAgBD,GAEhCtE,EAAU5H,QAAQ,gBAAiBkM,EAGnC,IAAIE,GAAsBhD,EAAc4C,EACpCK,GAAyBjD,EAAc,EAAID,EAAqB,GAAK6C,CAazE,IAZ8B,IAA1BrN,EAAI0B,OAAOiM,aACXF,EAAsBrB,KAAKwB,MAAMH,GACjCC,EAAwBtB,KAAKwB,MAAMF,IAGvCvD,EAAW0D,UAAU,eAAiBJ,EAAsB,WACxDzE,EAAKvJ,OAAOoE,6BAA+B7D,EAAI0B,OAAOsL,UAASjC,EAAW,GAAG+C,MAAMC,QAAU,EAAI,EAAIT,GAEzGlC,EAAayC,UAAU,eAAiBH,EAAwB,WAC5D1E,EAAKvJ,OAAOqE,8BAA6BsH,EAAa,GAAG0C,MAAMC,QAAU,GAAM,GAAMT,GAGrF3E,EAAe,CACf,GAAIF,EACJ,KAAKA,EAAI,EAAGA,EAAIkC,EAAkBrJ,OAAQmH,IAGtC,GAFAuC,EAAKzK,EAAEoK,EAAkBlC,IACpBuC,EAAG4B,GAAG,wBAAuB5B,EAAG,GAAG8C,MAAMC,QAAW,EAAiB,IAAbT,GACzDtC,EAAG,GAAGgD,UAAU7M,QAAQ,YAAc,EAAG,CACzC,GAAI8M,GAAqBX,EAAatC,EAAG,GAAGkD,mBACd,KAA1BlO,EAAI0B,OAAOiM,aAAkBM,EAAqB7B,KAAKwB,MAAMK,IACjEjD,EAAG6C,UAAU,eAAiBI,EAAqB,WAC/CjO,EAAIP,OAAOgE,oBACPuH,EAAG,GAAGgD,UAAU7M,QAAQ,SAAW,GAAK0J,EAAkBvJ,OAAS,GACnEuJ,EAAkBgD,UAAU,gBAAkBI,EAAqB,WAKnF,IAAKxF,EAAI,EAAGA,EAAImC,EAAoBtJ,OAAQmH,IAGxC,GAFAuC,EAAKzK,EAAEqK,EAAoBnC,IACtBuC,EAAG4B,GAAG,wBAAuB5B,EAAG,GAAG8C,MAAMC,QAAuB,IAAbT,EAAmB,IACvEtC,EAAG,GAAGgD,UAAU7M,QAAQ,YAAc,EAAG,CACzC,GAAIgN,GAAuBnD,EAAG,GAAGoD,oBAAsB,EAAId,EAC7B,KAA1BtN,EAAI0B,OAAOiM,aAAkBQ,EAAuB/B,KAAKwB,MAAMO,IACnEnD,EAAG6C,UAAU,eAAiBM,EAAuB,WACjDnO,EAAIP,OAAOgE,oBACPuH,EAAG,GAAGgD,UAAU7M,QAAQ,SAAW,GAAK2J,EAAoBxJ,OAAS,GACrEwJ,EAAoB+C,UAAU,gBAAkBM,EAAuB,eAQ/FnF,EAAKqF,eAAiB,SAAU5C,GAC5B,IAAKR,IAAcC,EAGf,MAFAD,IAAY,OACZC,GAAU,EAKd,IAFAD,GAAY,EACZC,GAAU,EACU,IAAhBT,EAQA,MAPAlK,IAAG4J,EAAW,GAAIiB,EAAa,KAAKyC,UAAU,IAAI5F,KAAK8F,QAAS,GAAIO,UAAW,UAC3E3F,IACAgC,EAAkBkD,UAAU,IAAI5F,KAAK8F,QAAS,KAC9CnD,EAAoBiD,UAAU,IAAI5F,KAAK8F,QAAS,KAC5ClD,GAAqBA,EAAkBvJ,OAAS,GAAGuJ,EAAkBgD,UAAU,IAC/E/C,GAAuBD,EAAkBvJ,OAAS,GAAGwJ,EAAoB+C,UAAU,KAI/F,IAAIU,IAAW,GAAKtC,OAAQC,UAAYxB,EACpC8D,GAAc,GAGC,IAAXD,GAAkB9D,EAAc,IAChC8D,GAAY,KAAO9D,EAAcD,EAAqB,KAE1DL,EAAW9B,YAAY,kBAAkBD,SAAS,iBAClDgD,EAAa/C,YAAY,gBAAgBD,SAAS,kBAC9CO,IACA2C,EAAajD,YAAY,oBAAoBD,SAAS,mBACtDmD,EAAelD,YAAY,kBAAkBD,SAAS,qBAE1DoG,GAAc,GAIlBjO,GAAG4J,EAAW,GAAIiB,EAAa,KAAKyC,UAAU,IAAI5F,KAAK8F,QAAS,GAAIO,UAAW,KAAKlG,SAAS,sBACzFO,IACAgC,EAAkB1C,KAAK8F,QAAS,KAC/BU,KAAK,WACF,GAAIC,GAAYF,EAAchO,KAAK0N,oBAAsB,EACrDS,EAAUpO,EAAEC,KAChBmO,GAAQd,UAAU,eAAiBa,EAAY,WAC3C1O,EAAIP,OAAOgE,oBACPkL,EAAQzN,SAAS,SAAW2J,EAAkBvJ,OAAS,GACvDuJ,EAAkBzC,SAAS,sBAAsByF,UAAU,gBAAkBa,EAAY,aAIlGtG,SAAS,sBAEZwC,EAAoBiD,UAAU,IAAI5F,KAAK8F,QAAS,KAAKU,KAAK,WACtD,GAAIC,GAAYF,EAAc,EAAIhO,KAAK4N,mBACnCO,EAAUpO,EAAEC,KAChBmO,GAAQd,UAAU,eAAiBa,EAAY,WAC3C1O,EAAIP,OAAOgE,oBACPkL,EAAQzN,SAAS,SAAW4J,EAAoBxJ,OAAS,GACzDwJ,EAAoB1C,SAAS,sBAAsByF,UAAU,gBAAkBa,EAAY,aAGpGtG,SAAS,uBAEhBiD,GAAqB,EACrBrC,EAAKU,iBAAkB,CAEvB,IAAI6D,IACApD,WAAYA,EAAW,GACvBiB,aAAcA,EAAa,GAC3BE,aAAcA,EAAa,GAC3BC,eAAgBA,EAAe,GAEnC,IAAIiD,EAAa,CAEb,GAAIlE,GAAMtB,EAAKc,QAAQd,EAAKc,QAAQxI,OAAS,EAC7C0H,GAAKsB,IAAMA,EAGXtK,EAAI4O,iBAAiB,SAAU5F,GAAO6F,cAAe1E,EAAW,GAAIG,IAAKA,EAAKwE,SAAU,SAAUC,QAAS3D,EAAc4D,QAAS7E,EAAY8E,WAAW,IACzJjP,EAAIkP,iBAAiB,SAAUlG,GAAO6F,cAAezD,EAAa,GAAId,IAAKA,EAAKwE,SAAU,OAAQC,QAAS3D,EAAc4D,QAAS7E,EAAY8E,WAAW,IAErJjG,EAAKvJ,OAAO0P,yBACZnG,EAAKvJ,OAAO0P,wBAAwB5B,GAExCtE,EAAU5H,QAAQ,wBAAyBkM,OAGvCvE,GAAKvJ,OAAO2P,wBACZpG,EAAKvJ,OAAO2P,uBAAuB7B,GAEvCtE,EAAU5H,QAAQ,uBAAwBkM,EAG9CpD,GAAWkF,cAAc,WACrB9O,GAAG4J,EAAW,GAAIiB,EAAa,KAAK/C,YAAY,sBAC5CM,IACAgC,EAAkBtC,YAAY,sBAAsBJ,KAAK8F,QAAS,KAClEnD,EAAoBvC,YAAY,sBAAsBJ,KAAK8F,QAAS,KAChElD,GAAqBA,EAAkBvJ,OAAS,GAAGuJ,EAAkBxC,YAAY,sBACjFyC,GAAuBA,EAAoBxJ,OAAS,GAAGwJ,EAAoBzC,YAAY,uBAE/FgD,GAAqB,EACrBrC,EAAKU,iBAAkB,EACnB8E,GACIxO,EAAIP,OAAOkD,WAAaqG,EAAKE,MAAMY,QAAQwF,OAE/CtP,EAAI4O,iBAAiB,QAAS5F,GAAO6F,cAAe1E,EAAW,GAAIG,IAAKA,EAAKwE,SAAU,SAAUC,QAAS3D,EAAc4D,QAAS7E,EAAY8E,WAAW,IACxJjP,EAAIkP,iBAAiB,QAASlG,GAAO6F,cAAezD,EAAa,GAAId,IAAKA,EAAKwE,SAAU,OAAQC,QAAS3D,EAAc4D,QAAS7E,EAAY8E,WAAW,IACxJjP,EAAI0C,OAAO6M,UAAUvG,EAAMmB,EAAYiB,GAEnCpC,EAAKvJ,OAAO+P,wBACZxG,EAAKvJ,OAAO+P,uBAAuBjC,GAEvCtE,EAAU5H,QAAQ,uBAAwBkM,KAGtCvE,EAAKvJ,OAAOgQ,uBACZzG,EAAKvJ,OAAOgQ,sBAAsBlC,GAEtCtE,EAAU5H,QAAQ,sBAAuBkM,IAEzCxC,GAAcA,EAAWzJ,OAAS,GAAGyJ,EAAW2E,YAG5D1G,EAAK2G,aAAe,SAAUC,GAC1B,GAAIC,GAASD,EAAS,MAAQ,IAC9B3G,GAAU4G,GAAQ7P,EAAIwH,YAAYC,MAAOuB,EAAKwC,kBAC9CvC,EAAU4G,GAAQ7P,EAAIwH,YAAYI,KAAMoB,EAAKmD,iBAC7ClD,EAAU4G,GAAQ7P,EAAIwH,YAAYK,IAAKmB,EAAKqF,iBAEhDrF,EAAK8G,aAAe,WAChB9G,EAAK2G,cAAa,IAIlB3G,EAAKvJ,OAAOiE,gBAAkB1D,EAAIP,OAAOsQ,UACzC/G,EAAK2G,eAIT3P,EAAIsI,MAAMmB,KAAKT,GACXA,EAAKE,OAAMlJ,EAAIgQ,SAAWhH,GAG9BA,EAAKtG,QACDuN,KAAM,SAAUC,GACZ,MAAOlQ,GAAI0C,OAAOuN,KAAKjH,EAAMkH,IAEjCZ,KAAM,SAAUY,GACZ,MAAOlQ,GAAI0C,OAAO4M,KAAKtG,EAAMkH,IAGjCC,SAAU,SAAUD,GAEhB,GADAA,EAAUA,MACa,gBAAZA,GAAsB,CAC7B,GAAI5F,GAAM4F,CACVA,MACI5F,GAA4B,IAArBA,EAAInJ,QAAQ,MAAc6H,EAAKvJ,OAAOmJ,SAC7CsH,EAAQjQ,SAAWqK,EAAIN,MAAM,KAAK,GAEjCkG,EAAQ5F,IAAMA,EAEvB,MAAOtK,GAAI0C,OAAOuN,KAAKjH,EAAMkH,IAEjCE,YAAa,SAAUC,GACnB,MAAOrQ,GAAI0C,OAAOuN,KAAKjH,GAAOqH,QAASA,KAE3CC,WAAY,SAAUhG,GAClB,MAAOtK,GAAI0C,OAAOuN,KAAKjH,GAAOsB,IAAKA,EAAKiG,QAAQ,KAEpDC,cAAe,SAAUH,GACrB,MAAOrQ,GAAI0C,OAAOuN,KAAKjH,GAAOqH,QAASA,EAASE,QAAQ,KAE5DE,mBAAoB,SAAUnG,GAC1B,MAAOtK,GAAI0C,OAAOuN,KAAKjH,GAAOsB,IAAKA,EAAKoG,gBAAgB,EAAMH,QAAQ,KAE1EI,sBAAuB,SAAUN,GAC7B,MAAOrQ,GAAI0C,OAAOuN,KAAKjH,GAAOqH,QAASA,EAASK,gBAAgB,EAAMH,QAAQ,KAElFK,YAAa,WACT,GAAIV,IACA5F,IAAKtB,EAAKsB,IACViG,QAAQ,EACRM,aAAa,EAcjB,OAZIX,GAAQ5F,KAAoC,IAA7B4F,EAAQ5F,IAAInJ,QAAQ,OAC/B6H,EAAKvJ,OAAOmJ,UAAYI,EAAKI,WAAW8G,EAAQ5F,MAChD4F,EAAQjQ,SAAW+I,EAAKI,WAAW8G,EAAQ5F,KAC3C4F,EAAQ5F,IAAMzH,aACPqN,GAAQ5F,KAEVtB,EAAKG,aAAa+G,EAAQ5F,OAC/B4F,EAAQG,QAAUrH,EAAKG,aAAa+G,EAAQ5F,KAC5C4F,EAAQ5F,IAAMzH,aACPqN,GAAQ5F,MAGhBtK,EAAI0C,OAAOuN,KAAKjH,EAAMkH,IAEjCY,oBAAqB,WACjB,GAAIZ,IACA5F,IAAKtB,EAAKc,QAAQd,EAAKc,QAAQxI,OAAS,GACxCiP,QAAQ,EACRG,gBAAgB,EAChBG,aAAa,EAOjB,OALIX,GAAQ5F,KAAoC,IAA7B4F,EAAQ5F,IAAInJ,QAAQ,MAAc6H,EAAKvJ,OAAOmJ,UAAYI,EAAKI,WAAW8G,EAAQ5F,OACjG4F,EAAQjQ,SAAW+I,EAAKI,WAAW8G,EAAQ5F,KAC3C4F,EAAQ5F,IAAMzH,aACPqN,GAAQ5F,KAEZtK,EAAI0C,OAAOuN,KAAKjH,EAAMkH,KAKrClH,EAAKmH,SAAWnH,EAAKtG,OAAOyN,SAC5BnH,EAAKoH,YAAcpH,EAAKtG,OAAO0N,YAC/BpH,EAAKsH,WAAatH,EAAKtG,OAAO4N,WAC9BtH,EAAKwH,cAAgBxH,EAAKtG,OAAO8N,cACjCxH,EAAKyH,mBAAqBzH,EAAKtG,OAAO+N,mBACtCzH,EAAK2H,sBAAwB3H,EAAKtG,OAAOiO,sBACzC3H,EAAK4H,YAAc5H,EAAKtG,OAAOkO,YAC/B5H,EAAK8H,oBAAsB9H,EAAKtG,OAAOoO,oBACvC9H,EAAKsG,KAAOtG,EAAKtG,OAAO4M,KAGxBtG,EAAK+H,WAAa,WACd,MAAO/Q,GAAI+Q,WAAW9H,EAAUjI,KAAK,aAEzCgI,EAAKgI,WAAa,WACd,MAAOhR,GAAIgR,WAAW/H,EAAUjI,KAAK,aAEzCgI,EAAKiI,YAAc,WACf,MAAOjR,GAAIiR,YAAYhI,EAAUjI,KAAK,cAE1CgI,EAAKkI,YAAc,WACf,MAAOlR,GAAIkR,YAAYjI,EAAUjI,KAAK,cAItChB,EAAIP,OAAOkD,WAAaqG,EAAKE,KAAM,CACnC,GAAIiI,EACAvO,GACAuO,EAAexH,EAAYK,MAAMhK,EAAIP,OAAOmD,cAAgBG,GAAoB,GAE3E4G,EAAYxI,QAAQ4B,IAAuB,GAAK4G,EAAYxI,QAAQ4B,EAAqB,KAAO,IACrGoO,EAAexH,EAAYK,MAAMjH,GAAoB,GAEzD,IAAIqO,GAAwBpR,EAAIP,OAAOqD,sBAAuB,EAAQD,MAEtE,IAAIsO,EACAnR,EAAI0C,OAAOuN,KAAKjH,GAAOsB,IAAK6G,EAActK,aAAcuK,EAAuBzO,WAAW,QAEzF,IAAIgH,EAAYxI,QAAQ4B,EAAqB,MAAQ,EAAG,CACzD,GAAIsO,GAAQvH,QAAQuH,KAChBA,GAAMpR,UAAY,aAAeoR,IACjCrR,EAAI0C,OAAOuN,KAAKjH,GAAO/I,SAAUoR,EAAMpR,SAAU0C,WAAW,KAgBxE,MATAqG,GAAKsI,QAAU,WACXtI,EAAK8G,eACL9G,EAAOnG,QAIX7C,EAAIuR,WAAW,UAAWvI,GAGnBA,EAGXhJ,GAAIwR,QAAU,SAAUhJ,EAAU/I,GAC9B,MAAO,IAAI8I,GAAKC,EAAU/I,IAG9BO,EAAIyR,eAAiB,SAAUC,GAC3B,GAAIC,GAAcpR,EAAE,2BAChBqR,EAAYrR,EAAE,yBACdsR,EAAYtR,EAAE,uBACduR,EAAWvR,EAAE,UAEbwR,EAAUD,EAASE,SAAS,QAWhC,IATID,EAAQzQ,OAAS,GACbyQ,EAAQ7Q,SAAS,SAEjB6Q,EAAUD,EAASE,SAAS,iBAMhCL,EAAYrQ,OAAS,GAAKqQ,EAAY,GAAGtI,OAAQ,MAAOsI,GAAY,GAAGtI,MAC3E,IAAIuI,EAAUtQ,OAAS,GAAKsQ,EAAU,GAAGvI,OAAQ,MAAOuI,GAAU,GAAGvI,MACrE,IAAIwI,EAAUvQ,OAAS,GAAKuQ,EAAU,GAAGxI,OAAQ,MAAOwI,GAAU,GAAGxI,MACrE,IAAI0I,EAAQzQ,OAAS,EAAG,CACpB,GAAuB,IAAnByQ,EAAQzQ,QAAgByQ,EAAQ,GAAG1I,OAAQ,MAAO0I,GAAQ,GAAG1I,MACjE,IAAI0I,EAAQzQ,OAAS,EAAG,CAEpB,IAAK,GADD2Q,MACKxJ,EAAI,EAAGA,EAAIsJ,EAAQzQ,OAAQmH,IAC5BsJ,EAAQtJ,GAAGY,QAAQ4I,EAAaxI,KAAKsI,EAAQtJ,GAAGY,OAExD,OAAI4I,GAAa3Q,OAAS,GAAsB,mBAAVoQ,GAA8BO,EAAaP,GAC7EO,EAAa3Q,OAAS,EAAU2Q,EACR,IAAxBA,EAAa3Q,OAAqB2Q,EAAa,GAC5CpP,QAGf,MAAOA,SAQX7C,EAAIkS,mBAAqB,SAAUlJ,EAAM6F,EAAesD,EAAiBC,GAErE,IADKD,GAAmBC,IAAsBD,EAAkB5R,EAAE6R,GAAsBC,OAAO,WAAW,KACtGD,EAAqBE,qBAAwBtJ,EAAKvJ,OAAOmJ,SAA7D,CACA,GAAI2J,IACAtJ,UAAWkJ,EACXK,eAAgBJ,GAEhBK,EAAW5D,GAAiBA,EAAcxE,WAE1CqI,GACAC,KAAMF,EACNG,OAAQL,EAGZ,IAAIH,EAAqBE,qBAAuBtJ,EAAKvJ,OAAOmJ,SASxD,MAPA5I,GAAI6S,aAAaV,EAAiBC,GAGlCpS,EAAIuR,WAAW,eAAgBmB,OAG/BnS,GAAE6R,GAAsB/Q,QAAQ,eAAgBqR,EAGpDN,GAAqBE,qBAAsB,EAE3CtS,EAAIuR,WAAW,mBAAoBgB,EAAYE,GAC/ClS,EAAE6R,GAAsB/Q,QAAQ,mBAAoBqR,GAGpD1S,EAAI8S,WAAWX,EAAiBC,GAGhCpS,EAAIuR,WAAW,aAAcgB,EAAYE,GACzClS,EAAE6R,GAAsB/Q,QAAQ,aAAcqR,KAGlD1S,EAAI+S,qBAAuB,SAAU/J,EAAM6F,EAAesD,EAAiBC,IAClED,GAAmBC,IAAsBD,EAAkB5R,EAAE6R,GAAsBC,OAAO,WAAW,GAC1G,IAAIE,IACAtJ,UAAWkJ,EACXK,eAAgBJ,GAEhBK,EAAW5D,EAAcxE,WAEzBqI,GACAC,KAAMF,EACNG,OAAQL,EAEZvS,GAAIuR,WAAW,qBAAsBgB,EAAYE,GACjDlS,EAAE6R,GAAsB/Q,QAAQ,qBAAsBqR,IAE1D1S,EAAI8S,WAAa,SAAUX,EAAiBC,GAEpCpS,EAAIgT,eAAehT,EAAIgT,cAAcZ,IAE7CpS,EAAI6S,aAAe,SAAUV,EAAiBC,KAG9CpS,EAAIiT,uBAAyB,SAAUd,GACnCA,EAAkB5R,EAAE4R,EACpB,IACInJ,GADAkK,EAAgBf,EAAgBxF,QAAQ,IAAM3M,EAAIP,OAAO+G,UAEhC,KAAzB0M,EAAc5R,SACwC,IAAtD6Q,EAAgBxF,QAAQ,mBAAmBrL,QAAiE,IAAjD4R,EAAclS,KAAK,mBAAmBM,UACrG0H,EAAOkK,EAAc,GAAG7J,QAAUxG,OAElCsP,EAAgBnR,KAAK,iBAAiByN,KAAK,WACvC,GACII,GADAuD,EAAuB5R,IAM3B,IAJID,EAAE6R,GAAsBlK,KAAK,eAE7B2G,EAAgBqE,EAAclS,KAAK,oBAAsBT,EAAE6R,GAAsBlK,KAAK,aAAe,MAAM,KAE1G2G,EAAe,CAChB,GAAIsE,GAAQD,EAAclS,KAAK,QACV,KAAjBmS,EAAM7R,OACNuN,EAAgBsE,EAAM,GAGtBD,EAAclS,KAAK,SAASyN,KAAK,WACzBjO,KAAK6J,YAAc7J,KAAK6J,WAAW+H,uBAAyBA,IAC5DvD,EAAgBrO,QAKhCR,EAAIkS,mBAAmBlJ,EAAM6F,EAAesD,EAAgB,GAAIC,OAKxEpS,EAAIoT,YAAc,SAAUF,GACxB,IAAIlT,EAAIP,OAAOsQ,SAAf,CACA,GAAIsD,GAAcH,EAAgB3S,EAAE2S,GAAelS,KAAK,sCAAwCT,EAAE,qCAClG8S,GAAY5E,KAAK,WACb,GAAI6E,GAAI/S,EAAEC,KACV,KAAI8S,EAAEpS,SAAS,UAAf,CACA,GAYIqS,GAAUC,EAZVzG,EAAiBuG,EAAEtS,KAAZhB,EAAIgI,IAAa,SAAmB,SAC3CyL,EAAkBH,EAAEtS,KAAZhB,EAAIgI,IAAa,QAAkB,UAC3C0L,EAASJ,EAAEtS,KAAK,WAChB2S,EAAYL,EAAEtS,KAAK,cACnB4S,EAAyB,IAAhB7G,EAAKzL,OACduS,EAA2B,IAAjBJ,EAAMnS,OAChBwS,EAAYF,EAAS,EAAI7G,EAAKgH,YAAW,GACzCC,EAAaH,EAAU,EAAIJ,EAAMM,YAAW,GAC5CE,EAAcP,EAAOK,YAAW,GAChCG,EAAeZ,EAAEa,SACjBC,EAAcd,EAAE,GAAGe,YAAcjT,SAAS8S,EAAaI,YAAa,IAAMlT,SAAS8S,EAAaK,aAAc,IAC9GC,EAASlB,EAAEpS,SAAS,iBAGpB2S,KACAN,EAAWa,EAAcH,GAEzBL,IACAL,EAAW,GAEVK,GAAWC,IACZN,GAAYa,EAAcJ,EAAaC,EAAcH,GAAa,EAEtE,IAAIW,IAAgBL,EAAcH,GAAe,CAC7CG,GAAcN,EAAYE,EAAaC,GACpBH,EAAfW,IACAA,EAAeX,GAEfW,EAAeR,EAAcG,EAAcJ,IAC3CS,EAAeL,EAAcJ,EAAaC,GAE9CT,EAAOiB,EAAelB,GAGtBC,EAAO,CAGX,IAAInG,GAAWrN,EAAIgI,IAAM,GAAK,CAE1B0L,GAAOxS,SAAS,aAChBwS,EAAO,GAAGtF,qBAAuBmF,EAAWC,GAAQnG,EACpDqG,EAAO,GAAGxF,qBAAuBkG,EAAcb,EAAWC,EAAOS,GAAe5G,EAC5EmH,GAAQd,EAAO7F,UAAU,eAAiB6F,EAAO,GAAGtF,mBAAqB,eAE5EwF,GAAU7G,EAAK7L,SAAS,aACrBlB,EAAIgI,KACJ+E,EAAK,GAAGqB,qBAAuBgG,EAAcrH,EAAK,GAAGsH,aAAe,EAAIhH,EACxEN,EAAK,GAAGmB,oBAAsB4F,EAAYzG,IAG1CN,EAAK,GAAGqB,oBAAsB0F,EAC9B/G,EAAK,GAAGmB,qBAAuBkG,EAAcrH,EAAK,GAAGsH,aAAe,GAEpEG,GAAQzH,EAAKc,UAAU,eAAiBd,EAAK,GAAGqB,mBAAqB,eAExEyF,GAAWJ,EAAMvS,SAAS,aACvBlB,EAAIgI,KACJyL,EAAM,GAAGrF,oBAAsB4F,EAAa3G,EAC5CoG,EAAM,GAAGvF,qBAAuBkG,EAAcX,EAAM,GAAGY,aAAe,EAAIhH,IAG1EoG,EAAM,GAAGrF,qBAAuBgG,EAAcX,EAAM,GAAGY,aAAe,EACtEZ,EAAM,GAAGvF,oBAAsB8F,GAE/BQ,GAAQf,EAAM5F,UAAU,eAAiB4F,EAAM,GAAGrF,mBAAqB,cAE3EuF,EAAUrS,QAAUqS,EAAUzS,SAAS,aACvCyS,EAAU,GAAGvF,mBAAqBpO,EAAIgI,IAAM2L,EAAU,GAAGU,aAAeV,EAAU,GAAGU,YACrFV,EAAU,GAAGzF,qBAAuByF,EAAU,GAAGvF,mBAIrD,IAAIsG,GAAalB,CACbxT,GAAIgI,KAAO4L,GAAUC,GAAWH,EAAOpS,OAAS,IAAGoT,GAAcA,GACrEhB,EAAOzL,KAAK8E,KAAM2H,EAAa,YAMvC1U,EAAI+Q,WAAa,SAAUoB,GAEvB,MADA5R,GAAE4R,GAAiB/J,SAAS,kBACrB,GAEXpI,EAAIgR,WAAa,SAAUmB,GACvB,GAAIS,GAASrS,EAAE4R,EAIf,OAHAS,GAAOxK,SAAS,iBAAiBC,YAAY,iBAAiBgH,cAAc,WACxEuD,EAAOvK,YAAY,oBAEhB,GAEXrI,EAAIiR,YAAc,SAAU0D,GAExB,MADApU,GAAEoU,GAAkBvM,SAAS,mBACtB,GAEXpI,EAAIkR,YAAc,SAAUyD,GACxB,GAAIC,GAAUrU,EAAEoU,EAChBC,GAAQxM,SAAS,kBAAkBC,YAAY,kBAAkBgH,cAAc,WAC3EuF,EAAQvM,YAAY,oBAQ5B,IAAIwM,GAAY,SAAU5L,EAAWxJ,GAkLjC,QAASqV,GAAkBC,GACvB,MAAOA,GAAIlV,QAAQ,oBAAqB,SAASmV,GAC9C,MAAOC,GAAcD,IAAMA,IA0LlC,QAASE,GAAczJ,GACnBA,EAAE2B,iBA9WN,GAAI1E,IACAyM,MAAO,KACPC,YAAa,KACbC,aAAc,KACdC,WAAY,KACZC,SAAU,cACVC,SAAU,GACVC,MAAO,KACPC,SAAU,KACVC,QAAS,KACTC,OAAQ,oBACRC,cAAc,EACdf,kBAAkB,EAEtBrV,GAASA,KACT,KAAK,GAAIsJ,KAAOL,IACe,mBAAhBjJ,GAAOsJ,IAAwC,OAAhBtJ,EAAOsJ,MAC7CtJ,EAAOsJ,GAAOL,EAASK,GAK/B,IAAI+M,GAAItV,IAGRsV,GAAErW,OAASA,EAGXwJ,EAAY1I,EAAE0I,GACd6M,EAAE7M,UAAYA,EAGd6M,EAAEC,QAAS,EAGXD,EAAEX,MAAQW,EAAErW,OAAO0V,MAAQ5U,EAAEuV,EAAErW,OAAO0V,OAASW,EAAE7M,UAAUjI,KAAK,wBAChE8U,EAAEV,YAAcU,EAAErW,OAAO2V,YAAc7U,EAAEuV,EAAErW,OAAO2V,aAAeU,EAAE7M,UAAUjI,KAAK,oBAClF8U,EAAET,aAAeS,EAAErW,OAAO4V,aAAe9U,EAAEuV,EAAErW,OAAO4V,cAAgBS,EAAE7M,UAAUjI,KAAK,qBAGrF8U,EAAER,WAAa/U,EAAEuV,EAAErW,OAAO6V,YAG1BQ,EAAEE,cAAgBF,EAAER,WAAWpU,SAAS,gBAGxC4U,EAAEjH,cAAgBiH,EAAE7M,UAAU0D,QAAQ,SAASvC,GAAG,GAO9C0L,EAAEH,QAJDG,EAAErW,OAAOkW,QAIEpV,EAAEuV,EAAErW,OAAOkW,SAHXG,EAAEjH,cAAcvN,OAAS,EAAIwU,EAAEjH,cAAc7N,KAAK,sBAAwBT,EAAE,sBAUxFuV,EAAEL,MAJDK,EAAErW,OAAOgW,MAIAlV,EAAEuV,EAAErW,OAAOgW,OAHXK,EAAEjH,cAAcvN,OAAS,EAAIwU,EAAEjH,cAAc7N,KAAK,oBAAsBT,EAAE,oBASpFuV,EAAEJ,SAJDI,EAAErW,OAAOiW,SAIGnV,EAAEuV,EAAErW,OAAOiW,UAHXI,EAAEjH,cAAcvN,OAAS,EAAIwU,EAAEjH,cAAc7N,KAAK,wBAA0BT,EAAE,uBAO/F,IAAI0V,GAAmBjW,EAAIgI,IAAM,cAAgB,cAC7C8N,GAAET,aAAa/T,OAAS,IACxBwU,EAAET,aAAaa,WAAW,GAAGC,OAC7BL,EAAET,aAAapN,IAAIgO,GAAmBH,EAAET,aAAa,GAAGhB,YAAc,MACtEtS,WAAW,WACP+T,EAAET,aAAaa,WAAW,KAC3B,GA8FP,KAAK,GA1FDE,KACCC,KAAK,IAAKC,QAAQ,uCAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,KAAKC,QAAQ,QAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,KAAKC,QAAQ,OAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,IAAKC,QAAQ,cAClBD,KAAK,IAAKC,QAAQ,iBAClBD,KAAK,IAAKC,QAAQ,mBAClBD,KAAK,KAAKC,QAAQ,OAClBD,KAAK,KAAKC,QAAQ,OAClBD,KAAK,IAAKC,QAAQ,mCAClBD,KAAK,IAAKC,QAAQ,WAClBD,KAAK,IAAKC,QAAQ,oBAClBD,KAAK,IAAKC,QAAQ,mBAClBD,KAAK,IAAKC,QAAQ,yBAClBD,KAAK,IAAKC,QAAQ,UAClBD,KAAK,IAAKC,QAAQ,mBAClBD,KAAK,IAAKC,QAAQ,uBAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,IAAKC,QAAQ,aAClBD,KAAK,IAAKC,QAAQ,qBAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,IAAKC,QAAQ,gDAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,KAAKC,QAAQ,OAClBD,KAAK,KAAKC,QAAQ,OAClBD,KAAK,IAAKC,QAAQ,eAClBD,KAAK,IAAKC,QAAQ,WAClBD,KAAK,IAAKC,QAAQ,sBAClBD,KAAK,IAAKC,QAAQ,sBAClBD,KAAK,IAAKC,QAAQ,oBAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,IAAKC,QAAQ,uCAClBD,KAAK,IAAKC,QAAQ,aAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,IAAKC,QAAQ,eAClBD,KAAK,IAAKC,QAAQ,UAClBD,KAAK,IAAKC,QAAQ,oBAClBD,KAAK,IAAKC,QAAQ,mBAClBD,KAAK,IAAKC,QAAQ,wCAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,KAAKC,QAAQ,QAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,KAAKC,QAAQ,OAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,IAAKC,QAAQ,cAClBD,KAAK,IAAKC,QAAQ,kBAClBD,KAAK,IAAKC,QAAQ,mBAClBD,KAAK,KAAKC,QAAQ,OAClBD,KAAK,IAAKC,QAAQ,oCAClBD,KAAK,IAAKC,QAAQ,WAClBD,KAAK,IAAKC,QAAQ,oBAClBD,KAAK,IAAKC,QAAQ,oBAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,IAAKC,QAAQ,yBAClBD,KAAK,IAAKC,QAAQ,WAClBD,KAAK,IAAKC,QAAQ,mBAClBD,KAAK,IAAKC,QAAQ,wBAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,IAAKC,QAAQ,aAClBD,KAAK,IAAKC,QAAQ,sBAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,IAAKC,QAAQ,gDAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,IAAIC,QAAQ,eACjBD,KAAK,IAAIC,QAAQ,WACjBD,KAAK,IAAIC,QAAQ,sBACjBD,KAAK,IAAIC,QAAQ,uBACjBD,KAAK,IAAIC,QAAQ,qBACjBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,IAAIC,QAAS,uCAClBD,KAAK,IAAIC,QAAQ,aACjBD,KAAK,KAAKC,QAAQ,MAClBD,KAAK,IAAIC,QAAQ,gBACjBD,KAAK,IAAIC,QAAQ,UACjBD,KAAK,IAAIC,QAAQ,qBACjBD,KAAK,IAAIC,QAAQ,mBAGlBrB,KACKxM,EAAE,EAAGA,EAAI2N,EAA2B9U,OAAQmH,IAEjD,IAAK,GADD6N,GAAUF,EAA2B3N,GAAG6N,QACnCC,EAAE,EAAGA,EAAID,EAAQhV,OAASiV,IAC/BtB,EAAcqB,EAAQC,IAAMH,EAA2B3N,GAAG4N,IAWlEP,GAAEU,aAAe,SAAUC,EAAW/D,GAClCoD,EAAE7M,UAAU5H,QAAQoV,EAAW/D,GAC3BoD,EAAER,WAAWhU,OAAS,GAAGwU,EAAER,WAAWjU,QAAQoV,EAAW/D,IAIjEoD,EAAEY,OAAS,WACP,QAASC,KACDb,EAAER,WAAWhU,SAAWwU,EAAE7M,UAAU/H,SAAS,qBAAqB4U,EAAEH,QAAQvN,SAAS,4BACzF0N,EAAE7M,UAAUb,SAAS,oBACjB0N,EAAET,aAAa/T,OAAS,GAAGwU,EAAET,aAAapN,IAAIgO,EAAkB,OACpEH,EAAEU,aAAa,gBACfV,EAAEC,QAAS,EAEX/V,EAAI0B,OAAOkV,IACX7U,WAAW,WACP4U,KACD,KAGHA,KAIRb,EAAEe,QAAU,WAMR,QAASC,KACLhB,EAAEX,MAAM4B,OACRjB,EAAEU,aAAa,iBACfV,EAAEC,QAAS,EARfD,EAAEX,MAAM6B,IAAI,IAAI3V,QAAQ,UACxByU,EAAE7M,UAAUZ,YAAY,wCACpByN,EAAET,aAAa/T,OAAS,GAAGwU,EAAET,aAAapN,IAAIgO,GAAmBH,EAAET,aAAa,GAAGhB,YAAc,MAEjGyB,EAAER,WAAWhU,QAAQwU,EAAEH,QAAQtN,YAAY,4BAM3CrI,EAAI0B,OAAOkV,IACX7U,WAAW,WACP+U,KACD,KAGHA,KAKRhB,EAAEmB,MAAQ,WACNnB,EAAEX,MAAM6B,IAAI,IAAI3V,QAAQ,UAAU6V,QAClCpB,EAAEU,aAAa,gBAInBV,EAAEqB,YAAc,WACZpV,WAAW,WACP,GAAIqV,GAAQtB,EAAEX,MAAM6B,MAAMK,MACtBvB,GAAER,WAAWhU,OAAS,IAAMwU,EAAErW,OAAO8V,UAAYO,EAAEE,gBAAgBF,EAAEwB,OAAOF,GAAO,IACxF,GAGP,IACI/W,GADAkX,EAAgB,EAyJpB,OAvJAzB,GAAEwB,OAAS,SAAUE,EAAOC,GACxB,GAAID,EAAMH,SAAWE,EAArB,CAqBA,GApBAA,EAAgBC,EAAMH,OAEjBI,IACI3B,EAAEC,QACHD,EAAEY,SAEDe,GACD3B,EAAEX,MAAM6B,IAAIQ,IAIC,IAAjBA,EAAMlW,QACNwU,EAAE7M,UAAUZ,YAAY,uBACpByN,EAAER,WAAWhU,QAAUwU,EAAE7M,UAAU/H,SAAS,qBAAqB4U,EAAEH,QAAQvN,SAAS,8BAGxF0N,EAAE7M,UAAUb,SAAS,uBACjB0N,EAAER,WAAWhU,QAAUwU,EAAE7M,UAAU/H,SAAS,qBAAqB4U,EAAEH,QAAQtN,YAAY,6BAG3FyN,EAAErW,OAAOoW,aAET,WADAC,GAAEU,aAAa,UAAWgB,MAAOA,GAIrC,IAAIE,KACJ,IAAI5B,EAAEE,cAAe,CAEjB,GADA3V,EAAcyV,EAAER,WAAW,GAAG/T,cACT,KAAjBiW,EAAMH,OAIN,MAHAhX,GAAYsX,cACZ7B,EAAEJ,SAASkC,WACX9B,GAAEL,MAAMU,MAGZ,IAAI9V,EAAYZ,OAAOoY,UACnBH,EAAarX,EAAYZ,OAAOoY,UAAUL,EAAOnX,EAAYyX,eAE5D,IAAIzX,EAAYZ,OAAOsY,aACxB,IAAK,GAAItP,GAAI,EAAGA,EAAIpI,EAAYyX,MAAMxW,OAAQmH,IACvCpI,EAAYZ,OAAOsY,aAAaP,EAAO/O,EAAGpI,EAAYZ,OAAOqY,MAAMrP,KAClEiP,EAAWjO,KAAKhB,OAK3B,CACD,GAAIuP,EAC2BA,GAA3BlC,EAAErW,OAAOqV,iBAA2BA,EAAiB0C,EAAMH,OAAOY,eAAejO,MAAM,KAE9EwN,EAAMH,OAAOY,cAAcjO,MAAM,KAE9C8L,EAAER,WAAWtU,KAAK,MAAMqH,YAAY,uBAAuBoG,KAAK,SAAUiD,EAAO1G,GAC7EA,EAAKzK,EAAEyK,EACP,IAAIkN,KACJlN,GAAGhK,KAAK8U,EAAErW,OAAO8V,UAAU9G,KAAK,WAC5B,GAAI0J,GAAW5X,EAAEC,MAAM4X,OAAOf,OAAOY,aACjCnC,GAAErW,OAAOqV,mBAAkBqD,EAAWrD,EAAiBqD,IAC3DD,EAAgBzO,KAAK0O,KAEzBD,EAAkBA,EAAgBG,KAAK,IAEvC,KAAK,GADDC,GAAa,EACR7P,EAAI,EAAGA,EAAIuP,EAAO1W,OAAQmH,IAC3ByP,EAAgB/W,QAAQ6W,EAAOvP,KAAO,GAAG6P,GAE7CA,KAAeN,EAAO1W,QAAYwU,EAAErW,OAAOmW,QAAU5K,EAAG4B,GAAGkJ,EAAErW,OAAOmW,QAIpE8B,EAAWjO,KAAKuB,EAAG,IAHnBA,EAAG5C,SAAS,yBAOhBpI,EAAIP,OAAOwF,uBACX6Q,EAAER,WAAWtU,KAAK,oCAAoCyN,KAAK,WAIvD,IAAK,GAHD8J,GAAQhY,EAAEC,MACVgY,EAAeD,EAAME,QAAQ,MAC7Bb,GAAO,EACFnP,EAAI,EAAGA,EAAI+P,EAAalX,OAAQmH,IAAK,CAC1C,GAAIiQ,GAASnY,EAAEiY,EAAa/P,GAC5B,IAAIiQ,EAAOxX,SAAS,qBAAuBwX,EAAOxX,SAAS,gBAAiB,KACvEwX,GAAOxX,SAAS,yBACjB0W,GAAO,GAGf,GAAIhC,GAASE,EAAErW,OAAOmW,QAAU2C,EAAM3L,GAAGkJ,EAAErW,OAAOmW,OAC9CgC,KAAShC,EAAQ2C,EAAMnQ,SAAS,uBAC/BmQ,EAAMlQ,YAAY,yBAG3BrI,EAAIP,OAAOyF,qBACX4Q,EAAER,WAAWtU,KAAK,eAAeyN,KAAK,WAClC,GAAIkK,GAAQpY,EAAEC,MACVoV,EAASE,EAAErW,OAAOmW,QAAU+C,EAAM/L,GAAGkJ,EAAErW,OAAOmW,QAC9CgD,EAAYD,EAAM3X,KAAK,+BACF,KAArB4X,EAAUtX,QAAiBsU,EAI3B+C,EAAMtQ,YAAY,uBAHlBsQ,EAAMvQ,SAAS,yBAQ/B0N,EAAEU,aAAa,UAAWgB,MAAOA,EAAOE,WAAYA,IAC1B,IAAtBA,EAAWpW,QACXwU,EAAEJ,SAASS,OACXL,EAAEL,MAAMmC,SAGR9B,EAAEJ,SAASkC,OACX9B,EAAEL,MAAMU,QAERL,EAAEE,eACF3V,EAAYwY,YAAYnB,KAShC5B,EAAEnG,aAAe,SAAU2B,GACvB,GAAIwH,GAASxH,EAAU,MAAQ,IAC/BwE,GAAE7M,UAAU6P,GAAQ,SAAU5D,GAC9BY,EAAET,aAAayD,GAAQ,QAAShD,EAAEe,SAClCf,EAAEH,QAAQmD,GAAQ,QAAShD,EAAEe,SAC7Bf,EAAEX,MAAM2D,GAAQ,QAAShD,EAAEY,QAC3BZ,EAAEX,MAAM2D,GAAQ,gCAAiChD,EAAEqB,aACnDrB,EAAEV,YAAY0D,GAAQ,QAAShD,EAAEmB,QAErCnB,EAAEhG,aAAe,WACbgG,EAAEnG,cAAa,IAInBmG,EAAE5O,KAAO,WACL4O,EAAEnG,gBAENmG,EAAExE,QAAU,WACHwE,IACLA,EAAEhG,eACFgG,EAAI,OAIRA,EAAE5O,OAEF4O,EAAE7M,UAAU,GAAG8P,YAAcjD,EACtBA,EAGX9V,GAAIgZ,UAAY,SAAU/P,EAAWxJ,GACjC,MAAO,IAAIoV,GAAU5L,EAAWxJ,IAEpCO,EAAIgT,cAAgB,SAAU/J,GAQ1B,QAASgQ,KACDC,GAAIA,EAAG5H,UARfrI,EAAY1I,EAAE0I,EACd,IAAI+P,GAAY/P,EAAU/H,SAAS,aAAe+H,EAAYA,EAAUjI,KAAK,aAC7E,IAAyB,IAArBgY,EAAU1X,QACT0X,EAAU9X,SAAS,kBAAxB,CAEA,GAAIgY,GAAKlZ,EAAIgZ,UAAUA,EAAWA,EAAUG,UAKxClQ,GAAU/H,SAAS,QACnB+H,EAAUmQ,KAAK,mBAAoBH,GAE9BhQ,EAAU/H,SAAS,iBACxB+H,EAAUmQ,KAAK,qBAAsBH,IAO7C,IAAII,GAAa,SAAUpQ,EAAWxJ,GAuFlC,QAASyV,GAAczJ,GACnBA,EAAE2B,iBAvFN,GAAI1E,IACA4Q,SAAU,KACVC,UAAW,KAEf9Z,GAASA,KACT,KAAK,GAAIsJ,KAAOL,IACe,mBAAhBjJ,GAAOsJ,IAAwC,OAAhBtJ,EAAOsJ,MAC7CtJ,EAAOsJ,GAAOL,EAASK,GAK/B,IAAIyQ,GAAIhZ,IAOR,OAJAgZ,GAAE/Z,OAASA,EAGX+Z,EAAEvQ,UAAY1I,EAAE0I,GACW,IAAvBuQ,EAAEvQ,UAAU3H,QAGhBkY,EAAEF,SAAWE,EAAE/Z,OAAO6Z,SAAW/Y,EAAEiZ,EAAE/Z,OAAO6Z,UAAYE,EAAEvQ,UAAUjI,KAAK,YAGzEwY,EAAE3K,cAAgB2K,EAAEvQ,UAAU0D,QAAQ,SAASvC,GAAG,GAClDoP,EAAEC,YAAcD,EAAE3K,cAAc7N,KAAK,iBAGrCwY,EAAEE,mBAAqBtY,SAASoY,EAAEC,YAAYxR,IAAI,mBAClDuR,EAAEG,iBAAmBH,EAAEvQ,UAAU,GAAGrI,aACpC4Y,EAAEI,kBAAoBJ,EAAEF,SAAS,GAAG1Y,aAIpC4Y,EAAEK,aAAe,WAEbL,EAAEF,SAASrR,KAAKtH,OAAU,IAE1B,IAAIA,GAAS6Y,EAAEF,SAAS,GAAG1Y,aACvB4S,EAAO7S,EAAS6Y,EAAEF,SAAS,GAAGQ,aAC9BpZ,EAAe8Y,EAAEF,SAAS,GAAG5Y,YAGjC,IAAIA,EAAe8S,EAAO7S,EAAQ,CAC9B,GAAIoZ,GAAgBrZ,EAAe8S,EAC/BwG,EAAeR,EAAEG,kBAAoBI,EAAgBP,EAAEI,mBACvDK,EAAeT,EAAE/Z,OAAO8Z,WAAaC,EAAEvQ,UAAU0D,QAAQ,SAAS,GAAG/L,aAAe,EACpFoZ,GAAeC,IACfD,EAAe5Y,SAAS6Y,EAAc,IACtCF,EAAgBC,EAAeR,EAAEG,iBAAmBH,EAAEI,mBAE1DJ,EAAEF,SAASrR,IAAI,SAAU8R,EAAgB,MACzCP,EAAEvQ,UAAUhB,IAAI,SAAU+R,EAAe,MACrCR,EAAEC,YAAYnY,OAAS,IACvBkY,EAAEC,YAAYxR,IAAI,iBAAkB+R,EAAe,MACnDR,EAAEC,YAAYhZ,UAAU+Y,EAAEC,YAAY,GAAG/Y,aAAe8Y,EAAEC,YAAY,GAAG7Y,mBAIzE4Y,GAAEC,YAAYnY,OAAS,IACvBkY,EAAEvQ,UAAUhB,KAAKtH,OAAU,GAAIuZ,OAAU,KACzCV,EAAEC,YAAYxR,KAAKkS,iBAAkB,OAMjDX,EAAEvC,MAAQ,WACNuC,EAAEF,SAAStC,IAAI,IAAI3V,QAAQ,WAE/BmY,EAAEpC,MAAQ,SAAUA,GAChB,MAAqB,mBAAVA,GAA8BoC,EAAEF,SAAStC,UAC/CwC,GAAEF,SAAStC,IAAII,GAAO/V,QAAQ,WAIvCmY,EAAEY,gBAAkBvX,OACpB2W,EAAEa,eAAiB,SAAU5O,GACzB6O,aAAad,EAAEY,iBACfZ,EAAEY,gBAAkBrY,WAAW,WAC3ByX,EAAEK,gBACH,IAQPL,EAAE7J,aAAe,SAAU2B,GACvB,GAAIwH,GAASxH,EAAU,MAAQ,IAC/BkI,GAAEvQ,UAAU6P,GAAQ,SAAU5D,GAC9BsE,EAAEF,SAASR,GAAQ,0CAA2CU,EAAEa,iBAEpEb,EAAE1J,aAAe,WACb0J,EAAE7J,cAAa,IAInB6J,EAAEtS,KAAO,WACLsS,EAAE7J,gBAEN6J,EAAElI,QAAU,WACRkI,EAAE1J,eACF0J,EAAI,MAIRA,EAAEtS,OAEFsS,EAAEvQ,UAAU,GAAGsR,aAAef,EACvBA,GA7FP,OA+FJxZ,GAAIwa,WAAa,SAAUvR,EAAWxJ,GAClC,MAAO,IAAI4Z,GAAWpQ,EAAWxJ,IAErCO,EAAIya,mBAAqB,SAAU5L,GAQ/B,QAAS6L,KACLC,EAAGrJ,UACHzC,EAAc+L,IAAI,mBAAoBF,GAT1C7L,EAAgBtO,EAAEsO,EAClB,IAAI2L,GAAa3L,EAAc3N,SAAS,cAAgB2N,EAAgBA,EAAc7N,KAAK,cAC3F,IAA0B,IAAtBwZ,EAAWlZ,QACVkZ,EAAWtZ,SAAS,mBAAzB,CACA,GAAIyZ,GAAK3a,EAAIwa,WAAWA,EAAYA,EAAWrB,UAO3CtK,GAAc3N,SAAS,SACvB2N,EAAcgM,GAAG,mBAAoBH,KAQ7C1a,EAAIiC,SACJjC,EAAI8a,gBAAkB,SAAUxQ,GAE5B,IAAK,GADDoH,IAAQ,EACHjJ,EAAI,EAAGA,EAAIzI,EAAIiC,MAAMX,OAAQmH,IAC9BzI,EAAIiC,MAAMwG,GAAG6B,MAAQA,IAAKoH,EAAQjJ,EAEtCiJ,MAAU,GAAO1R,EAAIiC,MAAM8Y,OAAOrJ,EAAO,IAIjD1R,EAAIgb,KAAM,EACVhb,EAAIib,IAAM,SAAU3Q,EAAKtB,EAAM6H,EAAa3Q,GAExC,GAAIgb,GAAO5Q,CAIX,IAHItK,EAAIP,OAAO0C,0BAA4BmI,EAAInJ,QAAQ,MAAQ,IAC3D+Z,EAAO5Q,EAAIN,MAAM,KAAK,IAEtBhK,EAAIP,OAAOwC,QAAU4O,GAAevG,EAAInJ,QAAQ,WAAa,GAAKnB,EAAIP,OAAOyC,YAAYf,QAAQ+Z,GAAQ,EAEzG,IAAK,GAAIzS,GAAI,EAAGA,EAAIzI,EAAIiC,MAAMX,OAAQmH,IAClC,GAAIzI,EAAIiC,MAAMwG,GAAG6B,MAAQ4Q,IAEjB,GAAKjP,OAAQC,UAAYlM,EAAIiC,MAAMwG,GAAG0S,KAAOnb,EAAIP,OAAO2C,cAGxD,MADAlC,GAASF,EAAIiC,MAAMwG,GAAG4H,UACf,CAkCvB,OA5BArQ,GAAIgb,IAAMza,EAAE6a,MACR9Q,IAAKA,EACLwO,OAAQ,MACRuC,WAAYrb,EAAIP,OAAO6b,YACvBC,SAAU,SAAUP,GACXA,EAAIQ,QAAU,KAAOR,EAAIQ,OAAS,KAAuB,IAAfR,EAAIQ,QAC3Cxb,EAAIP,OAAOwC,QAAU4O,IACrB7Q,EAAI8a,gBAAgBI,GACpBlb,EAAIiC,MAAMwH,MACNa,IAAK4Q,EACLC,MAAM,GAAKlP,OAAQC,UACnBmE,QAAS2K,EAAIS,gBAGrBvb,EAAS8a,EAAIS,cAAc,IAG3Bvb,EAAS8a,EAAIS,cAAc,GAE3Bzb,EAAIP,OAAOic,gBAAgB1b,EAAIP,OAAOic,eAAeV,IAE7DW,MAAO,SAAUX,GACb9a,EAAS8a,EAAIS,cAAc,GACvBzb,EAAIP,OAAOmc,aAAa5b,EAAIP,OAAOmc,YAAYZ,MAGvDhS,IAAMA,EAAKgS,IAAMhb,EAAIgb,KAElBhb,EAAIgb,KAQfhb,EAAI6b,iBAEJ7b,EAAIG,OAAS,SAAUR,EAAcM,EAAUC,GAC3C,GAAID,GAAYA,EAAS+J,MAAM,KAAK1I,OAAS,EAAG,CAG5C,IAAK,GAFDwa,GAAY7b,EAAS+J,MAAM,KAC3B+R,KACKtT,EAAI,EAAGA,EAAIqT,EAAUxa,OAAQmH,IAClCsT,EAAgBtS,KAAKzJ,EAAIG,OAAOR,EAAcmc,EAAUrT,GAAIvI,GAYhE,OAVA6b,GAAgBrM,OAAS,WACrB,IAAK,GAAIjH,GAAI,EAAGA,EAAIsT,EAAgBza,OAAQmH,IACxCsT,EAAgBtT,GAAGiH,UAG3BqM,EAAgB1a,QAAU,WACtB,IAAK,GAAIoH,GAAI,EAAGA,EAAIsT,EAAgBza,OAAQmH,IACxCsT,EAAgBtT,GAAGpH,WAGpB0a,EAEX,GAAIC,GAAYhc,EAAI6b,cAAclc,GAAcM,EAKhD,OAJK+b,KACDA,EAAYhc,EAAI6b,cAAclc,GAAcM,OAEhDD,EAAI6b,cAAclc,GAAcM,GAAUwJ,KAAKvJ,IAE3CwP,OAAQ,WAEJ,IAAK,GADDuM,GACKxT,EAAI,EAAGA,EAAIuT,EAAU1a,OAAQmH,IAC9BuT,EAAUvT,GAAGyT,aAAehc,EAASgc,aACrCD,EAAcxT,EAGK,oBAAhBwT,IAA6BD,EAAUjB,OAAOkB,EAAa,IAE1E5a,QAASnB,GAejB,KAAK,GADDic,GAAqB,oFAAsFnS,MAAM,KAC5GvB,EAAI,EAAGA,EAAI0T,EAAmB7a,OAAQmH,IAC3CzI,EAAI6b,cAAcM,EAAmB1T,OACrC/I,EAAmByc,EAAmB1T,GAG1CzI,GAAIoc,qBAAuB,SAAUzc,EAAcM,EAAUwS,GACzD,GAAI4J,GAAoBrc,EAAI6b,cAAclc,GAAc,IACxD,IAAI0c,EACA,IAAK,GAAI9F,GAAI,EAAGA,EAAI8F,EAAkB/a,OAAQiV,IAC1C8F,EAAkB9F,GAAG9D,EAG7B,IAAIuJ,GAAYhc,EAAI6b,cAAclc,GAAcM,EAChD,IAAK+b,GAAkC,IAArBA,EAAU1a,OAC5B,IAAK,GAAImH,GAAI,EAAGA,EAAIuT,EAAU1a,OAAQmH,IAClCuT,EAAUvT,GAAGgK,IAKrBzS,EAAIsc,iBAAmB,SAAUtT,EAAMvJ,GACnC,GAAIoP,GAAgBpP,EAAOoP,aAC3B,KAAIA,EAAc0N,mBAAsBvT,EAAKvJ,OAAOmJ,SAApD,CAGA,GAAI6J,IACAxJ,UAAW4F,EACXvE,IAAK7K,EAAO6K,IACZkN,MAAO/X,EAAO+X,OAASjX,EAAEic,cAAc/c,EAAO6K,KAAO,IACrDmS,KAAMlc,EAAEsO,GAAe3G,KAAK,aAC5Bc,KAAMA,EACN0T,KAAMjd,EAAOqP,SACb6N,QAASld,EAAOkd,QAChBvK,qBAAsB3S,EAAO2S,qBAC7BwK,SAAUnd,EAAOmd,SAMrB,IAJInd,EAAOmd,WAAand,EAAOmd,SAASxK,sBAAwB3S,EAAOod,0BACnEpd,EAAOmd,SAASxK,qBAAuB3S,EAAOod,yBAG9ChO,EAAc0N,mBAAqBvT,EAAKvJ,OAAOmJ,SAS/C,MAPA5I,GAAI8c,WAAWjO,GAGf7O,EAAIuR,WAAW,aAAckB,GACzBzS,EAAIP,OAAOsd,cAAc/c,EAAIP,OAAOud,iBAAiBhd,EAAKyS,GAC9DzS,EAAIoc,qBAAqB,SAAU3J,EAASgK,KAAMhK,OAClDlS,GAAEkS,EAASxJ,WAAW5H,QAAQ,cAAesR,KAAMF,GAGvD5D,GAAc0N,mBAAoB,EAGlC1N,EAAcxE,WAAaoI,GAGvBzJ,GAASvJ,EAAOwd,aAAgBxd,EAAOiR,iBAEvCnQ,EAAEyI,EAAKC,WAAWf,KAAK,YAAauK,EAASgK,MAE7CzT,EAAKmB,WAAasI,GAItBzS,EAAIuR,WAAW,iBAAkBkB,GAC7BzS,EAAIP,OAAOud,kBAAkBhd,EAAIP,OAAOud,iBAAiBhd,EAAKyS,GAClEzS,EAAIoc,qBAAqB,aAAc3J,EAASgK,KAAMhK,GACtDlS,EAAEkS,EAASxJ,WAAW5H,QAAQ,kBAAmBsR,KAAMF,IAGvDzS,EAAIkd,SAASrO,GAGb7O,EAAIuR,WAAW,WAAYkB,GACvBzS,EAAIP,OAAO0d,YAAYnd,EAAIP,OAAO0d,WAAWnd,EAAKyS,GACtDzS,EAAIoc,qBAAqB,OAAQ3J,EAASgK,KAAMhK,GAChDlS,EAAEkS,EAASxJ,WAAW5H,QAAQ,YAAasR,KAAMF,MAErDzS,EAAIod,mBAAqB,SAAUpU,EAAM6F,EAAeC,GACpD,GAAIuO,EACAxO,GAAcxE,aAAYgT,EAAcxO,EAAcxE,WAAWsS,QAErE,IAAIlK,IACAxJ,UAAW4F,EACX4N,KAAMlc,EAAEsO,GAAe3G,KAAK,aAC5Bc,KAAMA,EACNsB,IAAKuE,EAAcxE,YAAcwE,EAAcxE,WAAWC,IAC1DkN,MAAO3I,EAAcxE,YAAcwE,EAAcxE,WAAWmN,MAC5DpF,qBAAsBvD,EAAcxE,YAAcwE,EAAcxE,WAAW+H,qBAC3EsK,KAAM5N,EACN6N,QAASU,EAGbrd,GAAIuR,WAAW,mBAAoBkB,GAC/BzS,EAAIP,OAAO6d,oBAAoBtd,EAAIP,OAAO6d,mBAAmBtd,EAAKyS,GACtEzS,EAAIoc,qBAAqB,eAAgB3J,EAASgK,KAAMhK,GACxDlS,EAAEkS,EAASxJ,WAAW5H,QAAQ,oBAAqBsR,KAAMF,KAE7DzS,EAAI4O,iBAAmB,SAAU1O,EAAU8I,EAAMvJ,GAE7C,GACI4d,GADAxO,EAAgBpP,EAAOoP,aAEvBA,GAAcxE,aAAYgT,EAAcxO,EAAcxE,WAAWsS,QAErE,IAAIlK,IACAxJ,UAAW4F,EACX4N,KAAMlc,EAAEsO,GAAe3G,KAAK,aAC5BoC,IAAKuE,EAAcxE,YAAcwE,EAAcxE,WAAWC,IAC1DkN,MAAO3I,EAAcxE,YAAcwE,EAAcxE,WAAWmN;AAC5DxO,KAAMA,EACN0T,KAAMjd,EAAOqP,SACb6N,QAASU,EACTjL,qBAAsBvD,EAAcxE,YAAcwE,EAAcxE,WAAW+H,qBAC3EnD,UAAWxP,EAAOwP,UAGL,WAAb/O,IACAF,EAAIuR,WAAW,gBAAiBkB,GAC5BzS,EAAIP,OAAO8d,iBAAiBvd,EAAIP,OAAO8d,gBAAgBvd,EAAKyS,GAChEzS,EAAIoc,qBAAqB,YAAa3J,EAASgK,KAAMhK,GACrDlS,EAAEsO,GAAexN,QAAQ,iBAAkBsR,KAAMF,KAGpC,WAAbvS,IACAF,EAAIuR,WAAW,WAAYkB,GACvBzS,EAAIP,OAAO+d,YAAYxd,EAAIP,OAAO+d,WAAWxd,EAAKyS,GACtDzS,EAAIoc,qBAAqB,OAAQ3J,EAASgK,KAAMhK,GAChDlS,EAAEkS,EAASxJ,WAAW5H,QAAQ,YAAasR,KAAMF,MAGzDzS,EAAIkP,iBAAmB,SAAUhP,EAAU8I,EAAMvJ,GAC7C,GACI4d,GADAxO,EAAgBpP,EAAOoP,aAEvBA,GAAcxE,aAAYgT,EAAcxO,EAAcxE,WAAWsS,QAErE,IAAIlK,IACAxJ,UAAW4F,EACXvE,IAAK7K,EAAO6K,IACZkN,MAAO/X,EAAO+X,OAASjX,EAAEic,cAAc/c,EAAO6K,KAAO,IACrDmS,KAAMlc,EAAEsO,GAAe3G,KAAK,aAC5Bc,KAAMA,EACN0T,KAAMjd,EAAOqP,SACb6N,QAASU,EACTpO,UAAWxP,EAAOwP,UAClBmD,qBAAsBvD,EAAcxE,YAAcwE,EAAcxE,WAAW+H,qBAC3EwK,SAAUnd,EAAOmd,UAEjB5N,EAAUvP,EAAOuP,QACjBD,EAAUtP,EAAOsP,OAYrB,IATAF,EAAcxE,WAAaoI,EAEV,UAAbvS,IACAF,EAAIuR,WAAW,qBAAsBkB,GACjCzS,EAAIP,OAAOge,sBAAsBzd,EAAIP,OAAOge,qBAAqBzd,EAAKyS,GAC1EzS,EAAIoc,qBAAqB,iBAAkB3J,EAASgK,KAAMhK,GAC1DlS,EAAEkS,EAASxJ,WAAW5H,QAAQ,sBAAuBsR,KAAMF,KAG9C,WAAbvS,EAAuB,CAEvBK,EAAEyI,EAAKC,WAAWf,KAAK,YAAauK,EAASgK,MAGzCzT,IAAMA,EAAKmB,WAAasI,GAGxB1D,EAAQ7N,SAAS,eAAiB8N,EAAQ9N,SAAS,cACnD8H,EAAK+H,aAEJhC,EAAQ7N,SAAS,eAAiB8N,EAAQ9N,SAAS,eAAgB8N,EAAQ9N,SAAS,wBACrF8H,EAAKgI,aAGLjC,EAAQ7N,SAAS,gBAAkB8N,EAAQ9N,SAAS,eACpD8H,EAAKiI,cAEJlC,EAAQ7N,SAAS,gBAAkB8N,EAAQ9N,SAAS,gBAAiB8N,EAAQ9N,SAAS,yBACvF8H,EAAKkI,aAGT,IAAIwM,EACA3O,GAAQ7N,SAAS,eAAiB8N,EAAQ9N,SAAS,eACnDwc,EAASnd,EAAEyI,EAAKC,WAAWjI,KAAK,WACV,IAAlB0c,EAAOpc,SAAcoc,EAASnd,EAAEyI,EAAKC,WAAW0D,QAAQ,IAAM3M,EAAIP,OAAOiH,YAAY1F,KAAK,YAC9FhB,EAAIiR,YAAYyM,IAEf3O,EAAQ7N,SAAS,eAAiB8N,EAAQ9N,SAAS,eAAgB8N,EAAQ9N,SAAS,yBACrFwc,EAASnd,EAAEyI,EAAKC,WAAWjI,KAAK,WACV,IAAlB0c,EAAOpc,SAAcoc,EAASnd,EAAEyI,EAAKC,WAAW0D,QAAQ,IAAM3M,EAAIP,OAAOiH,YAAY1F,KAAK,YAC9FhB,EAAIkR,YAAYwM,IAGpB1O,EAAQ3G,YAAY,4CAEpBrI,EAAIuR,WAAW,sBAAuBkB,GAClCzS,EAAIP,OAAOke,uBAAuB3d,EAAIP,OAAOke,sBAAsB3d,EAAKyS,GAC5EzS,EAAIoc,qBAAqB,kBAAmB3J,EAASgK,KAAMhK,GAC3DlS,EAAEkS,EAASxJ,WAAW5H,QAAQ,uBAAwBsR,KAAMF,MAKpEzS,EAAIkd,SAAW,SAAUrO,GACrBA,EAAgBtO,EAAEsO,GAEd7O,EAAIoT,aAAapT,EAAIoT,YAAYvE,EAAclC,QAAQ,IAAM3M,EAAIP,OAAO+G,WAAW,IAEnFxG,EAAI4d,kBAAkB5d,EAAI4d,iBAAiB/O,GAE3C7O,EAAI6d,kBAAkB7d,EAAI6d,iBAAiBhP,GAE3C7O,EAAI8d,kBAAkB9d,EAAI8d,iBAAiBjP,GAE3C7O,EAAI+d,gBAAgB/d,EAAI+d,eAAelP,GAEvC7O,EAAIge,mBAAmBhe,EAAIge,kBAAkBnP,GAE7C7O,EAAIie,oBAAoBje,EAAIie,mBAAmBpP,GAE/C7O,EAAIgT,eAAehT,EAAIgT,cAAcnE,GAErC7O,EAAIya,oBAAoBza,EAAIya,mBAAmB5L,GAE/C7O,EAAIke,oBAAoBle,EAAIke,mBAAmBrP,GAE/C7O,EAAIme,oBAAoBne,EAAIme,mBAAmBtP,IAEvD7O,EAAI8c,WAAa,SAAUjO,GACvBA,EAAgBtO,EAAEsO,GAEd7O,EAAIoT,aAAapT,EAAIoT,YAAYvE,EAAclC,QAAQ,IAAM3M,EAAIP,OAAO+G,WAAW,IAEnFxG,EAAIoe,kBAAkBpe,EAAIoe,iBAAiBvP,GAE3C7O,EAAIqe,gBAAgBre,EAAIqe,eAAexP,IAE/C7O,EAAIse,qBAAuB,SAAUzP,GACjCA,EAAgBtO,EAAEsO,EAClB,IAAIqE,GAAgBrE,EAAclC,QAAQ,IAAM3M,EAAIP,OAAO+G,UAC3D,IAA6B,IAAzB0M,EAAc5R,OAAlB,CACA,GAAI0H,GAAOkK,EAAc,GAAG7J,QAAUxG,OAClCyH,EAAMtB,GAAQA,EAAKsB,IAAMtB,EAAKsB,IAAMzH,MACpCqQ,IAAiBrE,EAAc3G,KAAK,cACpCgL,EAAchL,KAAK,YAAa2G,EAAc3G,KAAK,cAEvDlI,EAAIsc,iBAAiBtT,GAAO6F,cAAeA,EAAc,GAAIvE,IAAKA,EAAKwE,SAAU,aAMrF9O,EAAI0C,QAEA6b,aAAc3c,SAAS4c,cAAc,OAGrCC,YAAa,SAAUjW,EAAUS,EAAWD,EAAM0V,GAC9CzV,EAAY1I,EAAE0I,GACVyV,IAAWlW,GAAsB,gBACrC,IAAIiN,GAAQxM,EAAUjI,KAAKwH,EAW3B,OAVIiN,GAAMnU,OAAS,IACc,gBAAlB0H,GAAKR,WAEZiN,EAAQxM,EAAUjI,KAAKgI,EAAKR,SAAW,IAAMA,IAE7CiN,EAAMnU,OAAS,IAEfmU,EAAQxM,EAAUjI,KAAK,IAAMhB,EAAIP,OAAOgH,cAAgB,IAAM+B,KAGjD,IAAjBiN,EAAMnU,OAAqBmU,GAGtBiJ,IAAWjJ,EAAQzV,EAAI0C,OAAO+b,YAAYjW,EAAUS,EAAWD,GAAM,IACtEyM,GAA0B,IAAjBA,EAAMnU,OAAqBmU,EAC5B5S,SAKpBgE,aAAc,SAAU8X,EAAUC,EAAWC,EAAW7V,GAEpD,GAAI8V,GAAgB,2CACF,aAAdD,IACAF,EAAStW,YAAYyW,GAAe1W,SAAS,4BAC7CwW,EAAUvW,YAAYyW,GAAe1W,SAAS,8BAGhC,aAAdyW,IACAF,EAAStW,YAAYyW,GAAe1W,SAAS,4BAC7CwW,EAAUvW,YAAYyW,GAAe1W,SAAS,+BAMtD2W,cAAe,SAAUC,EAAgBC,EAAgBC,GACrD3e,EAAEye,GAAgBhe,KAAK,YAAYyN,KAAK,WACpC,GAAIE,GAAUpO,EAAEC,MACZ2e,EAAsC,UAAtBD,EAAgC1e,KAAK0N,oBAAsB1N,KAAK4N,kBAEhFpO,GAAIP,OAAOgE,qBACPkL,EAAQzN,SAAS,SAAWyN,EAAQ3N,KAAK,eAAeM,OAAS,GACjEqN,EAAQ3N,KAAK,eAAe6M,UAAU,gBAAmBsR,EAAiB,WAEpD,SAAtBD,GAAgCvQ,EAAQzN,SAAS,WAAaX,EAAE0e,GAAgBje,KAAK,4BAA4BM,OAAS,IAC1H6d,GAAiB5e,EAAE0e,GAAgBje,KAAK,oBAAoB,GAAGoe,aAIvEzQ,EAAQd,UAAU,eAAiBsR,EAAgB,cAK3DE,eAAgB,SAAUC,EAAiBC,EAAkBV,EAAW7V,GAEpE,GAAI8V,GAAgB,iDACF,aAAdD,IACAU,EAAiBlX,YAAYyW,GAAe1W,SAAS,+BACrDmX,EAAiBve,KAAK,YAAYyN,KAAK,WACnC,GAAIE,GAAUpO,EAAEC,KAChBmO,GAAQd,UAAU,wBACd7N,EAAIP,OAAOgE,oBACPkL,EAAQzN,SAAS,SAAWyN,EAAQ3N,KAAK,eAAeM,OAAS,GACjEqN,EAAQ3N,KAAK,eAAe6M,UAAU,0BAKlDyR,EAAgBjX,YAAYyW,GAAe1W,SAAS,8BACpDkX,EAAgBte,KAAK,YAAYyN,KAAK,WAClC,GAAIE,GAAUpO,EAAEC,KACZR,GAAIP,OAAOgE,qBACPkL,EAAQzN,SAAS,WAAaqe,EAAiBve,KAAK,6BAA6BM,OAAS,IAC1Fd,KAAK4N,oBAAsBmR,EAAiBve,KAAK,4BAA4B,GAAGoe,YAEhFzQ,EAAQzN,SAAS,SAAWyN,EAAQ3N,KAAK,eAAeM,OAAS,GACjEqN,EAAQ3N,KAAK,eAAe6M,UAAU,gBAAmBrN,KAAK4N,mBAAsB,YAG5FO,EAAQd,UAAU,eAAkBrN,KAAuB,mBAAI,cAIrD,aAAdqe,IACAS,EAAgBjX,YAAYyW,GAAe1W,SAAS,8BACpDkX,EAAgBte,KAAK,YAAYyN,KAAK,WAClC,GAAIE,GAAUpO,EAAEC,KAChBmO,GAAQd,UAAU,wBACd7N,EAAIP,OAAOgE,oBACPkL,EAAQzN,SAAS,SAAWyN,EAAQ3N,KAAK,eAAeM,OAAS,GACjEqN,EAAQ3N,KAAK,eAAe6M,UAAU,0BAKlD0R,EAAiBlX,YAAYyW,GAAe1W,SAAS,+BACrDmX,EAAiBve,KAAK,YAAYyN,KAAK,WACnC,GAAIE,GAAUpO,EAAEC,KACZR,GAAIP,OAAOgE,oBACPkL,EAAQzN,SAAS,SAAWyN,EAAQ3N,KAAK,eAAeM,OAAS,GACjEqN,EAAQ3N,KAAK,eAAe6M,UAAU,gBAAmBrN,KAAK0N,oBAAuB,WAG7FS,EAAQd,UAAU,eAAkBrN,KAAwB,oBAAI,eAK5Egf,WAAY,SAASxW,EAAMqH,EAAS/F,EAAKmV,GAErCzf,EAAIuR,WAAW,mBAAoBvI,EAAMqH,EAAS/F,EAAKmV,GAGvDpP,EAAUrQ,EAAI0f,cAAc,aAAcrP,GAEtCrH,GAAQA,EAAKvJ,QAAUuJ,EAAKvJ,OAAO+f,YACnCnP,EAAUrH,EAAKvJ,OAAO+f,WAAWnP,EAAS/F,EAAKmV,GACxB,mBAAZpP,IACPoP,EAAKpP,IAGJrQ,EAAIP,OAAO+f,YAChBnP,EAAUrQ,EAAIP,OAAO+f,WAAWnP,EAAS/F,EAAKmV,GACvB,mBAAZpP,IACPoP,EAAKpP,IAIToP,EAAKpP,IAGbsP,SAAU,SAAS3W,EAAMkH,GAErB,MADAlQ,GAAIuR,WAAW,iBAAkBvI,EAAMkH,GAClClQ,EAAIP,OAAOkgB,UAAY3f,EAAIP,OAAOkgB,SAAS3W,EAAMkH,MAAa,GAAWlH,GAAQA,EAAKvJ,OAAOkgB,UAAY3W,EAAKvJ,OAAOkgB,SAAS3W,EAAMkH,MAAa,GAC3I,GAGA,GAIf0P,gBAAiB,SAAU5W,EAAMkH,GAC7B,CAAA,GAQI2P,GAAQC,EARRxV,EAAM4F,EAAQ5F,IACd+F,EAAUH,EAAQG,QAClB0P,EAAsB7P,EAAQG,QAC9BsM,EAAUzM,EAAQyM,QAClBqD,EAAc9P,EAAQ8P,YACtBC,EAAW/P,EAAQ+P,QACR/P,GAAQjQ,SAiBvB,GAduB,gBAAZoQ,GACH/F,EACItK,EAAIkgB,eAAe5V,GAAMwV,EAAczY,EAAGpF,MAAMqI,IAEhDwV,EAAczY,EAAG8Y,QAAQ9P,GACzBhJ,EAAGpF,MAAMqI,GAAOwV,GAGnBA,EAAczY,EAAG8Y,QAAQ9P,GAEzB4P,IACLH,EAAcG,GAGdtD,EAASkD,EAASlD,MACjB,CACD,GAAIqD,EACA,GAAIA,EAAY7e,QAAQ,MAAQ,EAAG,CAG/B,IAAK,GAFDif,GAAYJ,EAAYhW,MAAM,KAC9BqW,EAAOhZ,EAAGiZ,KAAKF,EAAU,IACpB3X,EAAI,EAAGA,EAAI2X,EAAU9e,OAAQmH,IAC9B2X,EAAU3X,KAAI4X,EAAOA,EAAKD,EAAU3X,IAE5CoX,GAASQ,MAERR,GAASxY,EAAGiZ,KAAKN,EAK1B,KAHKH,GAAUvV,IACXuV,EAASxY,EAAGiZ,KAAK,OAAShW,KAEzBuV,GAA6B,gBAAZxP,KAAyB4P,EAAU,CAErD,GAAIM,GAAgBlQ,EAAQvQ,MAAM,8BAClC,IAAIygB,EAAe,CACf,GAAI5N,GAAO4N,EAAc,GAAGvW,MAAM,cAAc,GAAGnK,QAAQ,QAAS,GAChE8S,KAAMkN,EAASxY,EAAGiZ,KAAK,QAAU3N,KAG7C,IAAKkN,GAAUI,GAAY5Y,EAAGP,UAE1B,IAAK,GAAI0Z,KAAgBnZ,GAAGP,UACpBO,EAAGP,UAAU0Z,KAAkBP,IAAUJ,EAASxY,EAAGiZ,KAAKE,GAGjEX,KAAQA,MAGjB,GAAIC,GAAeD,EAAQ,CAEvB,GADsB,kBAAXA,KAAuBA,EAASA,KACvCvV,EAAK,CAEL,GAAIkN,GAAQjX,EAAEic,cAAclS,EAC5BuV,GAAOY,YACP,KAAK,GAAIC,KAAOlJ,GACZqI,EAAOY,UAAUC,GAAOlJ,EAAMkJ,GAGtCX,EAAsBD,EAAYD,GAGtC,OAAQxP,QAAS0P,EAAqBpD,QAASkD,KAKvD7f,EAAI0C,OAAOie,MAAQ,SAAU3X,EAAMkH,GAqR/B,QAAS0Q,KACL5X,EAAKU,iBAAkB,EACvBqF,EAAQ1G,YAAY,wDAAwDD,SAAS,kBACrF4G,EAAQ3G,YAAY,yDAAyDD,SAAS,gBAClFO,IACAqW,EAAe3W,YAAY,8DAA8DD,SAAS,oBAClG6W,EAAe5W,YAAY,+DAA+DD,SAAS,mBAEvGpI,EAAIkP,iBAAiB,QAASlG,GAC1B6F,cAAeE,EAAQ,GACvBzE,IAAKA,EACLwE,SAAU,QACVE,QAASA,EACTD,QAASA,EACTyI,MAAOtH,EAAQsH,MACfoF,SAAU5N,GAAWA,EAAQ1N,QAAU0N,EAAQ,GAAG3E,aAElDrK,EAAIP,OAAOkD,WAAaqG,EAAKE,MAAMlJ,EAAI6gB,sBACrC7X,EAAKvJ,OAAOiE,eAAiBsF,EAAKvJ,OAAO4C,sBACvC2G,EAAKvJ,OAAOmJ,UACZoG,EAAQ5G,SAAS,UACjB6W,EAAe7W,SAAS,YAGG,IAArBkC,EAAInJ,QAAQ,MAAqE,IAAvD4N,EAAQ7G,KAAK,aAAa/G,QAAQ,oBAC9DnB,EAAIod,mBAAmBpU,EAAMgG,EAAQ,GAAI,QACrCrG,GAAe3I,EAAI+S,qBAAqB/J,EAAMgG,EAAQ,GAAI4D,EAAO,GAAIqM,EAAe,IACxFjQ,EAAQU,SACJ/G,GAAesW,EAAevP,WAI1C1G,EAAKvJ,OAAO6C,eAAiBwe,GAC7B9X,EAAK8H,sBArTbZ,EAAUA,KAEV,IAQInB,GAASC,EAAS+R,EAAatY,EAAGwW,EAAgBD,EAAgBpM,EAAQjK,EAAeqY,EARzF1W,EAAM4F,EAAQ5F,IACd+F,EAAUH,EAAQG,QAClB4Q,GAAe5Q,QAASH,EAAQG,SAChC4P,EAAW/P,EAAQ+P,SACnBhgB,EAAWiQ,EAAQjQ,SACnBiT,EAAgB3S,EAAEyI,EAAKC,WACvBK,EAAiB/I,EAAEyI,EAAKM,gBACxBzC,EAAeqJ,EAAQrJ,aAEvBqa,EAA+B,mBAAR5W,IAAuB+F,GAAW4P,EACzDtd,EAAYuN,EAAQvN,SAkBxB,IAhB4B,mBAAjBkE,KAA8BA,EAAemC,EAAKvJ,OAAOoH,cAGpE7G,EAAIuR,WAAW,aAAcvI,EAAMkH,IAG/BlQ,EAAIP,OAAOuH,gBAAqC,gBAAZqJ,IAAwB4P,KAC5DgB,EAAcjhB,EAAI0C,OAAOkd,gBAAgB5W,EAAMkH,GAC3C+Q,EAAY5Q,UAAYA,IACxBA,EAAU4Q,EAAY5Q,UAI9BrQ,EAAI0C,OAAO6b,aAAa4C,UAAY,IAG/BlhB,EACD,GAAIqK,GAA2B,gBAAZ+F,GACfrQ,EAAI0C,OAAO6b,aAAa4C,UAAYF,EAAY5Q,YAEhD,IAAI,UAAYA,IAAWA,EAAQ/O,OAAS,EACxC,IAAK,GAAI8f,GAAK,EAAGA,EAAK/Q,EAAQ/O,OAAQ8f,IAClC7gB,EAAEP,EAAI0C,OAAO6b,cAActR,OAAOoD,EAAQ+Q,QAG9C7gB,GAAEP,EAAI0C,OAAO6b,cAActR,OAAOoD,EAe9C,IATA2Q,EAAiB9Q,EAAQK,SAAWL,EAAQQ,eAAiB,OAAS,UAGxD3B,EAAV9O,EAAoBqJ,EAAetI,KAAK,oBAAsBf,EAAW,MAE/DD,EAAI0C,OAAO+b,YAAY,QAASze,EAAI0C,OAAO6b,aAAcvV,IAIlE+F,GAA8B,IAAnBA,EAAQzN,QAAiBrB,GAAY+I,EAAKmB,YAAcnB,EAAKmB,WAAWsS,OAASxc,EAE7F,YADA+I,EAAKU,iBAAkB,EAS3B,IALAqF,EAAQ3G,SAAS8H,EAAQK,OAAS,WAAayQ,EAAiB,iBAGhED,EAAczX,EAAe0I,SAAS,sBAElC9B,EAAQK,QAAUL,EAAQQ,gBAAyC,IAAvBqQ,EAAYzf,OAExD,YADA0H,EAAKU,iBAAkB,EAI3B,IAAIwG,EAAQK,OACRvB,EAAU+R,EAAY3W,GAAG2W,EAAYzf,OAAS,OAE7C,CACD,GAAIyf,EAAYzf,OAAS,EAAG,CACxB,IAAKmH,EAAI,EAAGA,EAAIsY,EAAYzf,OAAS,EAAGmH,IAC/BO,EAAKvJ,OAAOmJ,SAKbrI,EAAEwgB,EAAYtY,IAAIL,SAAS,WAJ3BpI,EAAIod,mBAAmBpU,EAAM+X,EAAYtY,GAAI,QAC7ClI,EAAEwgB,EAAYtY,IAAIiH,SAMrB1G,GAAKvJ,OAAOmJ,SAKbrI,EAAEwgB,EAAYtY,IAAIL,SAAS,WAJ3BpI,EAAIod,mBAAmBpU,EAAM+X,EAAYtY,GAAI,QAC7ClI,EAAEwgB,EAAYtY,IAAIiH,UAM1BV,EAAU1F,EAAe0I,SAAS,sBAKtC,GAHGhJ,EAAKvJ,OAAOmJ,UAAUmG,EAAQ1G,YAAY,UAGzCW,EAAKvJ,OAAOkJ,cAaZ,GAZAA,GAAgB,EAGZqW,EADA/e,EACiBiT,EAAclS,KAAK,4BAA8Bf,EAAW,MAG5DD,EAAI0C,OAAO+b,YAAY,gBAAiBze,EAAI0C,OAAO6b,aAAcvV,GAEjFgW,GAA4C,IAA1BA,EAAe1d,SAClCqH,GAAgB,GAEpBiK,EAASM,EAAclS,KAAK,WACxBkP,EAAQK,OACR0O,EAAiBrM,EAAO5R,KAAK,6CAK7B,IAFAie,EAAiBrM,EAAO5R,KAAK,8BAEzBie,EAAe3d,OAAS,EAAG,CAC3B,IAAKmH,EAAI,EAAGA,EAAIwW,EAAe3d,OAAS,EAAGmH,IAClCO,EAAKvJ,OAAOmJ,SAKbrI,EAAE0e,EAAexW,IAAIL,SAAS,WAJ9BpI,EAAI+S,qBAAqB/J,EAAM+X,EAAYtY,GAAImK,EAAO,GAAIqM,EAAexW,IACzElI,EAAE0e,EAAexW,IAAIiH,SAKxBsP,IAA4C,IAA1BC,EAAe3d,SAC7B0H,EAAKvJ,OAAOmJ,SAKbrI,EAAE0e,EAAe,IAAI7W,SAAS,WAJ9BpI,EAAI+S,qBAAqB/J,EAAM+X,EAAY,GAAInO,EAAO,GAAIqM,EAAe,IACzE1e,EAAE0e,EAAe,IAAIvP,WAK7BuP,EAAiBrM,EAAO5R,KAAK,8BAYzC,GARI2H,IACAqW,EAAe5W,SAAS8H,EAAQK,OAAS,aAAeyQ,EAAiB,mBACtEhY,EAAKvJ,OAAOmJ,UAAUoW,EAAe3W,YAAY,UACpD0G,EAAQ,GAAGsS,gBAAkBrC,EAAe,GAC5CA,EAAe,GAAGsC,cAAgBvS,EAAQ,KAIzCzE,EAAK,CACN,GAAIiX,GAActhB,GAAY8O,EAAQ7G,KAAK,YACxBoC,GAAf4W,EAAqB,IAAMlhB,EAAIP,OAAO+C,eAAe3C,QAAQ,YAAa0hB,GAAa1hB,QAAQ,aAAcmJ,EAAKc,QAAQxI,QAAU4O,EAAQK,OAAS,EAAI,IAClJ,IAAMgR,EACZvY,EAAKvJ,OAAOmJ,WACbI,EAAKG,aAAamB,GAAO+F,GAEzBrH,EAAKvJ,OAAOmJ,UAAY3I,IACxB+I,EAAKI,WAAWkB,GAAOrK,GAK/B,GAAID,EAAIP,OAAOkD,YAAcuN,EAAQQ,gBAAkB1H,EAAKE,KAAO,CACtC,mBAAdvG,KAA2BA,GAAY,EAClD,IAAIC,GAAgB5C,EAAIP,OAAOmD,eAAiB,GAC5CkW,EAAS5I,EAAQK,OAAS,eAAiB,WAC3C5N,KACKue,GAAkBjhB,EAGdihB,GAAiB7Q,EACtBvG,QAAQgP,IAASzI,QAASA,EAAS/F,IAAKA,EAAKkX,UAAWxhB,EAAIsI,MAAMnH,QAAQ6H,IAAQ,GAAIpG,EAAgB5C,EAAIP,OAAOsD,mBAAqBuH,GAEjIrK,GACL6J,QAAQgP,IAAS7Y,SAAUA,EAAUqK,IAAKA,EAAKkX,UAAWxhB,EAAIsI,MAAMnH,QAAQ6H,IAAQ,GAAIpG,EAAgB5C,EAAIP,OAAOsD,mBAAqBuH,GANxIR,QAAQgP,IAASxO,IAAKA,EAAKkX,UAAWxhB,EAAIsI,MAAMnH,QAAQ6H,IAAQ,GAAIpG,EAAgB5C,EAAIP,OAAOsD,mBAAqBuH,IAahI,GADAtB,EAAKsB,IAAMA,EACP4F,EAAQK,OAAQ,CAChB,GAAIkR,GAAUzY,EAAKc,QAAQd,EAAKc,QAAQxI,QAAU4O,EAAQQ,eAAiB,EAAI,GAC3E+Q,IAAoC,IAAzBA,EAAQtgB,QAAQ,MAAcsgB,IAAWzY,GAAKG,cAAgBsY,IAAYnX,IACrFtB,EAAKG,aAAasY,GAAW,WACtBzY,GAAKG,aAAasY,IAE7BzY,EAAKc,QAAQd,EAAKc,QAAQxI,QAAU4O,EAAQQ,eAAiB,EAAI,IAAMpG,MAGvEtB,GAAKc,QAAQL,KAAKa,EAItB,IAAIwW,IAAsB,CAC1B,IAAI9X,EAAKvJ,OAAO6C,cAAe,CAC3B,GAAIof,GAAW1Y,EAAKc,QAChBoR,EAAO5Q,CACX,IAAItB,EAAKvJ,OAAO8C,iCAGZ,IAFAmf,KACAxG,EAAO5Q,EAAIN,MAAM,KAAK,GACjBvB,EAAI,EAAGA,EAAIO,EAAKc,QAAQxI,OAAQmH,IACjCiZ,EAASjY,KAAKT,EAAKc,QAAQrB,GAAGuB,MAAM,KAAK,GAI7C0X,GAASvgB,QAAQ+Z,KAAUwG,EAASC,YAAYzG,KAChDlS,EAAKc,QAAUd,EAAKc,QAAQ8X,MAAM,EAAGF,EAASvgB,QAAQ+Z,IACtDlS,EAAKc,QAAQL,KAAKa,GAClBwW,GAAsB,GAiD9B,GA7CI5Q,EAAQQ,gBACR1B,EAAUA,EAAQ6S,KAAK,SACvB9S,EAAQ+S,aAAa9S,GACjBrG,IACAsW,EAAiBA,EAAe4C,KAAK,iBACrC7C,EAAe+C,YAAY9C,MAI/B3V,EAAe2D,OAAO8B,EAAQ,IAC1BpG,GAAeiK,EAAO3F,OAAO+R,EAAe,KAGhD9O,EAAQK,SACJvH,EAAKvJ,OAAOmJ,UAAYI,EAAKO,aAAapI,QAAQ6N,EAAQ,KAAO,GACjEA,EAAQ5G,SAAS,UACbO,GAAesW,EAAe7W,SAAS,YAG3CpI,EAAIod,mBAAmBpU,EAAMgG,EAAQ,GAAIgS,GACrCrY,GAAe3I,EAAI+S,qBAAqB/J,EAAMgG,EAAQ,GAAI4D,EAAO,GAAIqM,EAAe,IACxFjQ,EAAQU,SACJ/G,GAAesW,EAAevP,WAK1C1P,EAAIsc,iBAAiBtT,GACjB6F,cAAeE,EAAQ,GACvBzE,IAAKA,EACLwE,SAAUoB,EAAQK,OAASyQ,EAAiB,QAC5C5O,qBAAsBzJ,EAAgBqW,GAAkBA,EAAe,GAAKnc,OAC5Ega,wBAAyBlU,EAAgBsW,GAAkBA,EAAe,GAAKpc,OAC/E8Z,QAASsE,EAAYtE,QACrBnF,MAAOtH,EAAQsH,MACfoF,SAAU5N,GAAWA,EAAQ1N,QAAU0N,EAAQ,GAAG3E,WAClDkG,OAAQL,EAAQK,OAChBG,eAAgBR,EAAQQ,iBAIxB/H,GACA3I,EAAIkS,mBAAmBlJ,EAAM+F,EAAQ,GAAI6D,EAAO,GAAIoM,EAAe,GAAI1U,EAAK4F,EAAQK,OAASyQ,EAAiB,SAG9G9Q,EAAQK,OAGR,MAFAvH,GAAKU,iBAAkB,OACnBoX,GAAqB9X,EAAK8H,sBAI9BnI,IAAiB9B,GACjB7G,EAAI0C,OAAOqc,cAAcC,EAAgBC,EAAgB,QAG5ClQ,GAAQ,GAAGiT,UAG5BhiB,GAAIkP,iBAAiB,SAAUlG,GAC3B6F,cAAeE,EAAQ,GACvBzE,IAAKA,EACLwE,SAAU,QACVE,QAASA,EACTD,QAASA,EACTyI,MAAOtH,EAAQsH,MACfoF,SAAU5N,GAAWA,EAAQ1N,QAAU0N,EAAQ,GAAG3E,aAuClDxD,GAEA7G,EAAI0C,OAAOmE,aAAamI,EAASD,EAAS,UAAW/F,GAGjDL,GACA5G,WAAW,WACP/B,EAAI0C,OAAO2c,eAAeJ,EAAgBD,EAAgB,UAAWhW,IACtE,GAEP+F,EAAQkT,aAAa,SAAUxW,GAC3BmV,QAIAjY,GAAeqW,EAAehe,KAAK,kCAAkC6M,UAAU,IACnF+S,MAKR5gB,EAAI0C,OAAOuN,KAAO,SAAUjH,EAAMkH,GAwB9B,QAASgS,GAAQ7R,GACbrQ,EAAI0C,OAAO8c,WAAWxW,EAAMqH,EAAS/F,EAAK,SAAU+F,GAChDH,EAAQG,QAAUA,EAClBrQ,EAAI0C,OAAOie,MAAM3X,EAAMkH,KA1B/B,GAAIlQ,EAAI0C,OAAOid,SAAS3W,EAAMkH,GAC1B,OAAO,CAEXA,GAAUA,KACV,IAAI5F,GAAM4F,EAAQ5F,IACd+F,EAAUH,EAAQG,QAClBpQ,EAAWiQ,EAAQjQ,QACnBA,IACIA,EAASkB,QAAQ,KAAO,IACxB+O,EAAQsH,MAAQjX,EAAEic,cAAcvc,GAChCiQ,EAAQjQ,SAAWA,EAAWA,EAAS+J,MAAM,KAAK,GAG1D,IAAIiW,GAAW/P,EAAQ+P,QAGvB,OAFIjX,GAAKvJ,OAAOqJ,eAAgB,IAAMoH,EAAQK,QAAS,GAElDvH,EAAKU,mBACNY,GAAOtB,EAAKsB,MAAQA,GAAQ4F,EAAQK,QAAWvH,EAAKvJ,OAAOgD,qBAC/DuG,EAAKU,iBAAkB,EACnB1J,EAAIgb,KAAOhS,EAAKgS,KAAOhS,EAAKgS,MAAQhb,EAAIgb,MACxChb,EAAIgb,IAAImH,QACRniB,EAAIgb,KAAM,GAQV3K,GAAWpQ,MACXiiB,GAAQ7R,GAGH4P,MACLjgB,GAAI0C,OAAOie,MAAM3X,EAAMkH,GAItBA,EAAQ5F,KAAuB,MAAhB4F,EAAQ5F,QAI5BtK,GAAIib,IAAI/K,EAAQ5F,IAAKtB,EAAMkH,EAAQW,YAAa,SAAUR,EAASsL,GAC/D,MAAIA,QACA3S,EAAKU,iBAAkB,OAG3BwY,GAAQ7R,UARRrH,EAAKU,iBAAkB,KAvBO,GAmCtC1J,EAAI0C,OAAO0f,MAAQ,SAAUpZ,EAAMkH,GAuC/B,QAAS0Q,KACL5gB,EAAI4O,iBAAiB,QAAS5F,GAC1B6F,cAAeG,EAAQ,GACvB1E,IAAKA,EACLwE,SAAU,SACVE,QAASA,EACTD,QAASA,IAEb/O,EAAIkP,iBAAiB,QAASlG,GAC1B6F,cAAeE,EAAQ,GACvBzE,IAAKA,EACLwE,SAAU,OACVE,QAASA,EACTD,QAASA,EACTyI,MAAOtH,EAAQsH,MACfoF,SAAU5N,GAAWA,EAAQ1N,QAAU0N,EAAQ,GAAG3E,aAEtDrK,EAAI0C,OAAO6M,UAAUvG,EAAMgG,EAAQ,GAAID,EAAQ,IAEnD,QAASsT,KAELriB,EAAI4O,iBAAiB,SAAU5F,GAC3B6F,cAAeG,EAAQ,GACvB1E,IAAKA,EACLwE,SAAU,SACVE,QAASA,EACTD,QAASA,IAEb/O,EAAIkP,iBAAiB,SAAUlG,GAC3B6F,cAAeE,EAAQ,GACvBzE,IAAKA,EACLwE,SAAU,OACVE,QAASA,EACTD,QAASA,EACTyI,MAAOtH,EAAQsH,MACfoF,SAAU5N,GAAWA,EAAQ1N,QAAU0N,EAAQ,GAAG3E,aAGlDxD,GAEA7G,EAAI0C,OAAOmE,aAAakI,EAASC,EAAS,WAAYhG,GAGlDL,GACA5G,WAAW,WACP/B,EAAI0C,OAAO2c,eAAeL,EAAgBC,EAAgB,WAAYjW,IACvE,GAGP+F,EAAQkT,aAAa,WACjBrB,QAIAjY,GAAeqW,EAAehe,KAAK,kCAAkC6M,UAAU,IACnF+S,KAIR,QAAS0B,KAGL,GAFAtiB,EAAI0C,OAAO6b,aAAa4C,UAAY,GAEhC7W,GAA2B,gBAAZ+F,GACfrQ,EAAI0C,OAAO6b,aAAa4C,UAAYF,EAAY5Q,YAEhD,IAAI,UAAYA,IAAWA,EAAQ/O,OAAS,EACxC,IAAK,GAAI8f,GAAK,EAAGA,EAAK/Q,EAAQ/O,OAAQ8f,IAClC7gB,EAAEP,EAAI0C,OAAO6b,cAActR,OAAOoD,EAAQ+Q,QAG9C7gB,GAAEP,EAAI0C,OAAO6b,cAActR,OAAOoD,EAG1CtB,GAAU/O,EAAI0C,OAAO+b,YAAY,QAASze,EAAI0C,OAAO6b,aAAcvV,GAE/DA,EAAKvJ,OAAOkJ,gBAEZqW,EAAiBhf,EAAI0C,OAAO+b,YAAY,gBAAiBze,EAAI0C,OAAO6b,aAAcvV,IAG1F,QAASuZ,KAEL,IAAKxT,GAA8B,IAAnBA,EAAQzN,OAEpB,YADA0H,EAAKU,iBAAkB,EAmB3B,IAhBIV,EAAKvJ,OAAOkJ,eAA0C,mBAAlBA,KAKhCA,EAJCqW,GAA4C,IAA1BA,EAAe1d,QAIlB,GAHA,GAOxByN,EAAQ3G,SAAS,gBAAgBC,YAAY,UACzCM,IACAiK,EAASM,EAAclS,KAAK,WAC5BwhB,EAAetP,EAAclS,KAAK,8BAClCge,EAAe5W,SAAS,kBAAkBC,YAAY,WAGtDoa,EAAO,CACP,GAAIC,GAAcC,CAClBD,GAAeniB,EAAEwgB,EAAYA,EAAYzf,OAAS,IAE9CqH,IAAega,EAAiBpiB,EAAEmiB,EAAa,IAAMA,EAAa,GAAGrB,iBAAmBmB,EAAaA,EAAalhB,OAAS,KAC3H0H,EAAKvJ,OAAOmJ,UAAYI,EAAKO,aAAapI,QAAQuhB,EAAa,KAAO,GAClEA,EAAaphB,QAAUohB,EAAa,KAAO3T,EAAQ,IAAI2T,EAAata,SAAS,UAC7EO,GAAiBga,EAAerhB,QAAUqhB,EAAe,KAAO3D,EAAe,IAC/E2D,EAAeva,SAAS,YAIxBsa,EAAaphB,QAAQohB,EAAahT,SAClC/G,GAAiBga,EAAerhB,QAChCqhB,EAAejT,UAGvBqR,EAAczX,EAAe0I,SAAS,sBAClCrJ,IACA6Z,EAAetP,EAAclS,KAAK,+BAElCgI,EAAKc,QAAQ3I,QAAQmJ,IAAQ,EAC7BtB,EAAKc,QAAUd,EAAKc,QAAQ8X,MAAM,EAAG5Y,EAAKc,QAAQ3I,QAAQmJ,GAAO,GAG7DtB,EAAKc,SAASd,EAAKc,QAAQxI,OAAS,IACpC0H,EAAKc,QAAQd,EAAKc,QAAQxI,OAAS,GAAKgJ,EAGxCtB,EAAKc,QAAQ8Y,QAAQtY,GAqDjC,GAhDA0E,EAAUzO,EAAEwgB,EAAYA,EAAYzf,OAAS,IACzC0H,EAAKvJ,OAAOmJ,UACRoG,EAAQ,KAAOD,EAAQ,KACvBC,EAAU1F,EAAe0I,SAAS,wBACX,IAAnBhD,EAAQ1N,QAAgB0H,EAAKmB,aAAY6E,EAAUzO,EAAEyI,EAAKmB,WAAWlB,aAI7EN,IAAkBsW,IAClBA,EAAiB1e,EAAEiiB,EAAaA,EAAalhB,OAAS,IAClD0H,EAAKvJ,OAAOmJ,WACRqW,EAAe,KAAOD,EAAe,KACrCC,EAAiBrM,EAAOZ,SAAS,gDAEP,IAA1BiN,EAAe3d,SACf2d,EAAiBrM,EAAOZ,SAAS,4BAA4BhD,EAAQ9G,KAAK,aAAa,SAGjE,IAA1B+W,EAAe3d,QAAgB0d,EAAe,KAAOC,EAAe,MAAItW,GAAgB,IAG5FA,IACIka,GAAe7D,EAAe8C,aAAa7C,GAC/CD,EAAe,GAAGsC,cAAgBvS,EAAQ,GAC1CA,EAAQ,GAAGsS,gBAAkBrC,EAAe,IAE5C6D,GAAe9T,EAAQ+S,aAAa9S,GAGxChP,EAAIsc,iBAAiBtT,GACjB6F,cAAeE,EAAQ,GACvBzE,IAAKA,EACLwE,SAAU,OACVsD,qBAAsBzJ,EAAgBqW,EAAe,GAAKnc,OAC1Dga,wBAAyBlU,EAAgBsW,GAAkBA,EAAe,GAAKpc,OAC/E8Z,QAASsE,EAAYtE,QACrBnF,MAAOtH,EAAQsH,MACfoF,SAAU5N,GAAWA,EAAQ1N,QAAU0N,EAAQ,GAAG3E,WAClD4S,YAAaA,IAEbtU,GACA3I,EAAIkS,mBAAmBlJ,EAAM+F,EAAQ,GAAI6D,EAAO,GAAIoM,EAAe,GAAI1U,EAAK,SAG5E3B,GAAiBqW,EAAe9d,SAAS,mBAAqB2F,GAC9D7G,EAAI0C,OAAOqc,cAAcC,EAAiBC,EAAgB,QAG1DhC,EAEA,YADAjU,EAAKU,iBAAkB,EAK3BV,GAAKsB,IAAMA,CAGMyE,GAAQ,GAAGiT,UAE5BK,KAzOJnS,EAAUA,KACV,IAcIlB,GAASD,EAASkQ,EAAgBD,EAAgBpM,EAAQ4P,EAAc7Z,EAdxE2B,EAAM4F,EAAQ5F,IACd+F,EAAUH,EAAQG,QAClB4Q,GAAe5Q,QAASH,EAAQG,SAChC4P,EAAW/P,EAAQ+P,SACnBpZ,EAAeqJ,EAAQrJ,aACvBoW,EAAc/M,EAAQ+M,YACtBta,EAAYuN,EAAQvN,UAEpB8f,GADcvS,EAAQW,YACdX,EAAQuS,OAChBxiB,EAAWiQ,EAAQjQ,SAEnBiT,EAAgB3S,EAAEyI,EAAKC,WACvBK,EAAiB/I,EAAEyI,EAAKM,gBACxByX,EAAczX,EAAe0I,SAAS,sBACiD6Q,GAAgB,CA+N3G,OA7N4B,mBAAjBhc,KAA8BA,EAAemC,EAAKvJ,OAAOoH,cAEpE7G,EAAIuR,WAAW,aAAcvI,EAAMkH,IAG/BlQ,EAAIP,OAAOuH,gBAAqC,gBAAZqJ,IAAwB4P,KAC5DgB,EAAcjhB,EAAI0C,OAAOkd,gBAAgB5W,EAAMkH,GAC3C+Q,EAAY5Q,UAAYA,IACxBA,EAAU4Q,EAAY5Q,UAK1BrQ,EAAIP,OAAOkD,WAAaqG,EAAKE,OACJ,mBAAdvG,KAA2BA,GAAY,IAC7Csa,GAAenT,QAAQuH,OAAS1O,GACjCmH,QAAQwF,QA6MZyR,EAAYzf,OAAS,IAAMmhB,EAEvBxF,OACAjU,EAAKU,iBAAkB,IAI3BV,EAAKsB,IAAMtB,EAAKc,QAAQd,EAAKc,QAAQxI,OAAS,GAC9CgJ,EAAMtB,EAAKsB,IAGXyE,EAAUxO,EAAEwgB,EAAYA,EAAYzf,OAAS,IAC7C0N,EAAUzO,EAAEwgB,EAAYA,EAAYzf,OAAS,IAGzC0H,EAAKvJ,OAAOkJ,gBACZA,GAAgB,EAEhB6Z,EAAetP,EAAclS,KAAK,8BAClCge,EAAiBze,EAAEiiB,EAAa,IAChCvD,EAAiB1e,EAAEiiB,EAAa,KACF,IAA1BxD,EAAe1d,QAA0C,IAA1B2d,EAAe3d,QAAgB2d,EAAe,KAAOD,EAAe,MACnGrW,GAAgB,IAGxBka,GAAgB,MAChBN,MAICE,EA2BGnY,GAAOA,IAAQtB,EAAKsB,KAAOrK,GAAY+I,EAAKmB,YAAcnB,EAAKmB,WAAWsS,OAASxc,OACnF+I,EAAKU,iBAAkB,GAIvB2G,GACAiS,QACAC,MAGKtiB,GAAY+I,EAAKvJ,OAAOmJ,UACzB3I,IAAUqK,EAAM,IAAMrK,GAE1B8O,EAAUxO,EAAE2S,GAAelS,KAAK,oBAAsBf,EAAW,MAC7D8O,EAAQ,GAAG1E,YAAc0E,EAAQ,GAAG1E,WAAWC,MAC/CA,EAAMyE,EAAQ,GAAG1E,WAAWC,KAE5BtB,EAAKvJ,OAAOkJ,gBACZqW,EAAiBze,EAAE2S,GAAelS,KAAK,4BAA8Bf,EAAW,MAClD,IAA1B+e,EAAe1d,SACf0d,EAAiBze,EAAEwO,EAAQ,GAAGsS,uBAGtCkB,WAIAvZ,EAAKU,iBAAkB,IApDtBuT,IACDjU,EAAKsB,IAAMtB,EAAKc,QAAQd,EAAKc,QAAQxI,OAAS,GAC9CgJ,EAAMtB,EAAKsB,KAGX+F,GACAiS,QACAC,MAGKtiB,GAEL8O,EAAUxO,EAAE2S,GAAelS,KAAK,oBAAsBf,EAAW,MAC7D+I,EAAKvJ,OAAOkJ,gBACZqW,EAAiBze,EAAE2S,GAAelS,KAAK,4BAA8Bf,EAAW,WAEpFsiB,WAIAvZ,EAAKU,iBAAkB,KAsCnC1J,EAAI0C,OAAO4M,KAAO,SAAUtG,EAAMkH,GAuB9B,QAASgS,GAAQ7R,GACbrQ,EAAI0C,OAAO8c,WAAWxW,EAAMqH,EAAS/F,EAAK,SAAU+F,GAChDH,EAAQG,QAAUA,EAClBrQ,EAAI0C,OAAO0f,MAAMpZ,EAAMkH,KAzB/B,GAAIlQ,EAAI0C,OAAOid,SAAS3W,EAAMkH,GAC1B,OAAO,CAEXA,GAAUA,KACV,IAAI5F,GAAM4F,EAAQ5F,IACd+F,EAAUH,EAAQG,QAClBpQ,EAAWiQ,EAAQjQ,QACnBA,IACIA,EAASkB,QAAQ,KAAO,IACxB+O,EAAQsH,MAAQjX,EAAEic,cAAcvc,GAChCiQ,EAAQjQ,SAAWA,EAAWA,EAAS+J,MAAM,KAAK,GAG1D,IAAIyY,GAAQvS,EAAQuS,KACpB,KAAKzZ,EAAKU,gBAAiB,OAAO,CAClCV,GAAKU,iBAAkB,EACnB1J,EAAIgb,KAAOhS,EAAKgS,KAAOhS,EAAKgS,MAAQhb,EAAIgb,MACxChb,EAAIgb,IAAImH,QACRniB,EAAIgb,KAAM,EAEd,IAAI+F,GAAcxgB,EAAEyI,EAAKM,gBAAgBtI,KAAK,qBAQ9C,IAAI+f,EAAYzf,OAAS,IAAMmhB,EAG3B,WADAziB,GAAI0C,OAAO0f,MAAMpZ,EAAMkH,EAG3B,IAAKuS,EA2BA,CAED,IAAKnY,GAAO+F,EAER,WADA6R,GAAQ7R,EAGP,KAAK/F,GAAOrK,EAGb,MAFIA,KAAUqK,EAAM,IAAMrK,OAC1BiiB,IAGC,IAAI5X,EAQL,WAPAtK,GAAIib,IAAI/K,EAAQ5F,IAAKtB,EAAMkH,EAAQW,YAAa,SAAUR,EAASsL,GAC/D,MAAIA,QACA3S,EAAKU,iBAAkB,OAG3BwY,GAAQ7R,SA5CR,CAER,GADA/F,EAAM4F,EAAQ5F,IAAMtB,EAAKc,QAAQd,EAAKc,QAAQxI,OAAS,IAClDgJ,EAED,YADAtB,EAAKU,iBAAkB,EAG3B,IAAyB,IAArBY,EAAInJ,QAAQ,MAAc6H,EAAKG,aAAamB,GAE5C,WADA4X,GAAQlZ,EAAKG,aAAamB,GAGzB,IAAyB,IAArBA,EAAInJ,QAAQ,MAAc6H,EAAKvJ,OAAOmJ,SAG3C,MAFK3I,KAAUiQ,EAAQjQ,SAAWqK,EAAIN,MAAM,KAAK,QACjDkY,IAGC,IAAyB,IAArB5X,EAAInJ,QAAQ,KASjB,WAPAnB,GAAIib,IAAI/K,EAAQ5F,IAAKtB,EAAMkH,EAAQW,YAAa,SAAUR,EAASsL,GAC/D,MAAIA,QACA3S,EAAKU,iBAAkB,OAG3BwY,GAAQ7R,KA2BpBrH,EAAKU,iBAAkB,GAI3B1J,EAAI0C,OAAO6M,UAAY,SAAUvG,EAAMgG,EAASD,GAE5CC,EAAUzO,EAAEyO,GACZD,EAAUxO,EAAEwO,GAER/F,EAAKvJ,OAAOmJ,UAAYI,EAAKO,aAAapI,QAAQ6N,EAAQ,KAAO,EACjEA,EAAQ3G,YAAY,6BAA6BD,SAAS,WAG1D4G,EAAQU,SACR1P,EAAIod,mBAAmBpU,EAAMgG,EAAQ,GAAI,UAG7CD,EAAQ1G,YAAY,yCAAyCD,SAAS,kBACtEY,EAAKU,iBAAkB,CAGvB,IAEIoZ,GAFAC,EAAc/Z,EAAKc,QAAQkZ,KAK/B,IAAIha,EAAKvJ,OAAOkJ,cAAe,CAC3B,GAAIsa,GAAS1iB,EAAEyI,EAAKC,WAAWjI,KAAK,8BAChCkiB,EAAY3iB,EAAEyO,EAAQ,GAAGqS,iBAAmB4B,EAAO,GACnDja,GAAKvJ,OAAOmJ,UAAYI,EAAKQ,eAAerI,QAAQ+hB,EAAU,KAAO,EACrEA,EAAU7a,YAAY,+BAA+BD,SAAS,WAG9DpI,EAAI+S,qBAAqB/J,EAAMgG,EAAQ,GAAInM,OAAWqgB,EAAU,IAChEA,EAAUxT,UAEdoT,EAAYviB,EAAE0iB,EAAO,IAAI5a,YAAY,6CAA6CD,SAAS,oBAyB/F,GArBIY,EAAKvJ,OAAOmJ,UACZrI,EAAEyI,EAAKC,WAAWjI,KAAK,gBAAgByN,KAAK,WACxC,GAAIkE,GAAOpS,EAAEC,MAET2iB,GADQxQ,EAAKjB,QACHiB,EAAK,GAAGtI,YAAcsI,EAAK,GAAGtI,WAAWC,IACnD6Y,IAAWna,EAAKc,QAAQ3I,QAAQgiB,GAAW,GAAKna,EAAKO,aAAapI,QAAQX,MAAQ,IAC9EmS,EAAK,GAAG0O,iBAAiB9gB,EAAEoS,EAAK,GAAG0O,iBAAiB3R,SACxDiD,EAAKjD,aAMZ1G,EAAKvJ,OAAOmJ,UAAYma,GAAeA,EAAY5hB,QAAQ,KAAO,IAAO4hB,IAAe/Z,GAAKG,eAC9FH,EAAKG,aAAa4Z,GAAe,WAC1B/Z,GAAKG,aAAa4Z,IAGzB/iB,EAAIP,OAAOkD,WAAaqG,EAAKE,MAAMlJ,EAAI6gB,sBAGvC7X,EAAKvJ,OAAO4C,oBACZ,GAAI2G,EAAKvJ,OAAOmJ,UAAYI,EAAKc,QAAQxI,OAAS,EAAG,CACjD,GACI8J,GACAG,EAFA6X,EAAapa,EAAKc,QAAQd,EAAKc,QAAQxI,OAAS,EAGhD8hB,IAAcpa,EAAKI,WAAWga,IAE9BhY,EAAe7K,EAAEyI,EAAKC,WAAWjI,KAAK,oBAAsBgI,EAAKI,WAAWga,GAAc,MAC1FhY,EAAa0W,aAAa/S,GACtB+T,IACAvX,EAAiBhL,EAAEyI,EAAKC,WAAWjI,KAAK,4BAA8BgI,EAAKI,WAAWga,GAAc,MACpG7X,EAAeuW,aAAagB,GACxBvX,GAA4C,IAA1BA,EAAejK,SAAciK,EAAiBuX,EAAUjB,KAAK,4BAKvFzW,EAAe2D,EAAQ8S,KAAK,gBACxBiB,IAAWvX,EAAiBuX,EAAUjB,KAAK,0BAE/CzW,GAAgBA,EAAa9J,OAAS,GAAG8J,EAAa/C,YAAY,uCAAuCD,SAAS,gBAClHmD,GAAkBA,EAAejK,OAAS,GAAGiK,EAAelD,YAAY,2CAA2CD,SAAS,sBAGhIpI,GAAI0C,OAAO4M,KAAKtG,GAAOiU,aAAa,IAShD,IAAIoG,GAAwBzhB,SAAS4c,cAAc,MACnDxe,GAAIqG,cACJrG,EAAIsjB,qBAAuB,WACnBtjB,EAAIqG,WAAW/E,QACdtB,EAAIqG,WAAWkd,WAGxBvjB,EAAIwjB,MAAQ,SAAU/jB,GAClBA,EAASA,KACT,IAAIgkB,GAAY,EAChB,IAAIzjB,EAAIP,OAAOikB,cACN1jB,EAAIuH,mBAAmBic,QAAOxjB,EAAIuH,mBAAmBic,MAAQnc,EAAG8Y,QAAQngB,EAAIP,OAAOikB,gBACxFD,EAAYzjB,EAAIuH,mBAAmBic,MAAM/jB,OAExC,CACD,GAAIkkB,GAAc,EAClB,IAAIlkB,EAAOmkB,SAAWnkB,EAAOmkB,QAAQtiB,OAAS,EAC1C,IAAK,GAAImH,GAAI,EAAGA,EAAIhJ,EAAOmkB,QAAQtiB,OAAQmH,IACvCkb,GAAe,6BAA+BlkB,EAAOmkB,QAAQnb,GAAGob,KAAO,qBAAuB,IAAM,KAAOpkB,EAAOmkB,QAAQnb,GAAG2P,KAAO,SAG5I,IAAI0L,GAAYrkB,EAAO8Y,MAAQ,4BAA8B9Y,EAAO8Y,MAAQ,SAAW,GACnFwL,EAAWtkB,EAAO2Y,KAAO,2BAA6B3Y,EAAO2Y,KAAO,SAAW,GAC/E4L,EAAgBvkB,EAAOwkB,UAAYxkB,EAAOwkB,UAAY,GACtDC,EAAazkB,EAAOmkB,SAAqC,IAA1BnkB,EAAOmkB,QAAQtiB,OAAoC,GAArB,mBAC7D6iB,EAAkB1kB,EAAO0kB,gBAAkB,yBAA2B,EAC1EV,GAAY,qBAAuBS,EAAY,KAAOzkB,EAAO2kB,UAAY,IAAM,+BAAiCN,EAAYC,EAAWC,GAAiB,mCAAqCG,EAAkB,KAAOR,EAAc,eAGxON,EAAsBlC,UAAYsC,CAElC,IAAID,GAAQjjB,EAAE8iB,GAAuBrR,UAarC,OAXAzR,GAAE,QAAQ0M,OAAOuW,EAAM,IAGvBA,EAAMxiB,KAAK,iBAAiByN,KAAK,SAAUiD,EAAO1G,GAC9CzK,EAAEyK,GAAI6P,GAAG,QAAS,SAAUpP,GACpBhM,EAAOmkB,QAAQlS,GAAO2S,SAAU,GAAOrkB,EAAIkN,WAAWsW,GACtD/jB,EAAOmkB,QAAQlS,GAAO4S,SAAS7kB,EAAOmkB,QAAQlS,GAAO4S,QAAQd,EAAO/X,GACpEhM,EAAO6kB,SAAS7kB,EAAO6kB,QAAQd,EAAO9R,OAGlD1R,EAAIukB,UAAUf,GACPA,EAAM,IAEjBxjB,EAAIwkB,MAAQ,SAAUpM,EAAMG,EAAOkM,GAK/B,MAJqB,kBAAVlM,KACPkM,EAAaC,UAAU,GACvBnM,EAAQ1V,QAEL7C,EAAIwjB,OACPpL,KAAMA,GAAQ,GACdG,MAAwB,mBAAVA,GAAwBvY,EAAIP,OAAOuG,WAAauS,EAC9DqL,UAAYxL,KAAMpY,EAAIP,OAAOmG,cAAeie,MAAM,EAAMS,QAASG,OAGzEzkB,EAAI2kB,QAAU,SAAUvM,EAAMG,EAAOkM,EAAYG,GAM7C,MALqB,kBAAVrM,KACPqM,EAAiBF,UAAU,GAC3BD,EAAaC,UAAU,GACvBnM,EAAQ1V,QAEL7C,EAAIwjB,OACPpL,KAAMA,GAAQ,GACdG,MAAwB,mBAAVA,GAAwBvY,EAAIP,OAAOuG,WAAauS,EAC9DqL,UACKxL,KAAMpY,EAAIP,OAAOoG,kBAAmBye,QAASM,IAC7CxM,KAAMpY,EAAIP,OAAOmG,cAAeie,MAAM,EAAMS,QAASG,OAIlEzkB,EAAI6kB,OAAS,SAAUzM,EAAMG,EAAOkM,EAAYG,GAM5C,MALqB,kBAAVrM,KACPqM,EAAiBF,UAAU,GAC3BD,EAAaC,UAAU,GACvBnM,EAAQ1V,QAEL7C,EAAIwjB,OACPpL,KAAMA,GAAQ,GACdG,MAAwB,mBAAVA,GAAwBvY,EAAIP,OAAOuG,WAAauS,EAC9D0L,UAAW,+CACXL,UAEQxL,KAAMpY,EAAIP,OAAOoG,oBAGjBuS,KAAMpY,EAAIP,OAAOmG,cACjBie,MAAM,IAGdS,QAAS,SAAUd,EAAO9R,GACR,IAAVA,GAAekT,GAAgBA,EAAerkB,EAAEijB,GAAOxiB,KAAK,qBAAqBgW,OACvE,IAAVtF,GAAe+S,GAAYA,EAAWlkB,EAAEijB,GAAOxiB,KAAK,qBAAqBgW,WAIzFhX,EAAI8kB,WAAa,SAAU1M,EAAMG,EAAOkM,EAAYG,GAMhD,MALqB,kBAAVrM,KACPqM,EAAiBF,UAAU,GAC3BD,EAAaC,UAAU,GACvBnM,EAAQ1V,QAEL7C,EAAIwjB,OACPpL,KAAMA,GAAQ,GACdG,MAAwB,mBAAVA,GAAwBvY,EAAIP,OAAOuG,WAAauS,EAC9D0L,UAAW,yDAA2DjkB,EAAIP,OAAOqG,yBAA2B,gHAAkH9F,EAAIP,OAAOsG,yBAA2B,sDACpQ6d,UAEQxL,KAAMpY,EAAIP,OAAOoG,oBAGjBuS,KAAMpY,EAAIP,OAAOmG,cACjBie,MAAM,IAGdS,QAAS,SAAUd,EAAO9R,GACtB,GAAIqT,GAAWxkB,EAAEijB,GAAOxiB,KAAK,4CAA4CgW,MACrEgO,EAAWzkB,EAAEijB,GAAOxiB,KAAK,4CAA4CgW,KAC3D,KAAVtF,GAAekT,GAAgBA,EAAeG,EAAUC,GAC9C,IAAVtT,GAAe+S,GAAYA,EAAWM,EAAUC,OAIhEhlB,EAAIilB,cAAgB,SAAU7M,EAAMG,EAAOkM,EAAYG,GAMnD,MALqB,kBAAVrM,KACPqM,EAAiBF,UAAU,GAC3BD,EAAaC,UAAU,GACvBnM,EAAQ1V,QAEL7C,EAAIwjB,OACPpL,KAAMA,GAAQ,GACdG,MAAwB,mBAAVA,GAAwBvY,EAAIP,OAAOuG,WAAauS,EAC9D0L,UAAW,6DAA+DjkB,EAAIP,OAAOsG,yBAA2B,8BAChH6d,UAEQxL,KAAMpY,EAAIP,OAAOoG,oBAGjBuS,KAAMpY,EAAIP,OAAOmG,cACjBie,MAAM,IAGdS,QAAS,SAAUd,EAAO9R,GACtB,GAAIsT,GAAWzkB,EAAEijB,GAAOxiB,KAAK,4CAA4CgW,KAC3D,KAAVtF,GAAekT,GAAgBA,EAAeI,GACpC,IAAVtT,GAAe+S,GAAYA,EAAWO,OAItDhlB,EAAIklB,cAAgB,SAAU3M,GAC1B,MAAOvY,GAAIwjB,OACPjL,MAAOA,GAASvY,EAAIP,OAAO2G,oBAC3BgS,KAAM,gCACNgM,SAAU,qBAGlBpkB,EAAImlB,cAAgB,WAChBnlB,EAAIkN,WAAW,oBAEnBlN,EAAIolB,cAAgB,WAChB7kB,EAAE,QAAQ0M,OAAO,gJAErBjN,EAAIqlB,cAAgB,WAChB9kB,EAAE,4DAA4DmP,UAGlE1P,EAAIslB,QAAU,SAAU5Y,EAAQjN,GAC5B,GAAuB+jB,GAAO+B,EAAeC,EAAzCC,GAAY,CACS,KAArBf,UAAUpjB,OAEV7B,EAASiN,EAIL1M,EAAI0B,OAAOkV,IACP5W,EAAI0B,OAAOC,OAAM8jB,GAAY,GAG7BllB,EAAEhB,QAAQkN,SAAW,MAAKgZ,GAAY,GAGlDhmB,EAASA,MAELA,EAAO6B,OAAS,IAAMf,EAAEmlB,QAAQjmB,EAAO,MACvCA,GAAUA,GAEd,IAAIgkB,EACJ,IAAIgC,EAAW,CACX,GAAIE,GAA2B3lB,EAAIP,OAAOmmB,+BACtC,ggBAiBC5lB,GAAIuH,mBAAmBse,mBACxB7lB,EAAIuH,mBAAmBse,iBAAmBxe,EAAG8Y,QAAQwF,GAEzD,IAAIG,GAAc9lB,EAAIuH,mBAAmBse,iBAAiBpmB,EAC1D+jB,GAAQjjB,EAAEP,EAAI+lB,QAAQD,EAAapZ,GAAQ,IAC3C6Y,EAAgB,iBAChBC,EAAiB,mBAEhB,CACD,GAAIxlB,EAAIP,OAAOumB,qBACNhmB,EAAIuH,mBAAmB+d,UAAStlB,EAAIuH,mBAAmB+d,QAAUje,EAAG8Y,QAAQngB,EAAIP,OAAOumB,uBAC5FvC,EAAYzjB,EAAIuH,mBAAmB+d,QAAQ7lB,OAE1C,CAED,IAAK,GADDkkB,GAAc,GACTlb,EAAI,EAAGA,EAAIhJ,EAAO6B,OAAQmH,IAC/B,IAAK,GAAI8N,GAAI,EAAGA,EAAI9W,EAAOgJ,GAAGnH,OAAQiV,IAAK,CAC7B,IAANA,IAASoN,GAAe,oCAC5B,IAAIsC,GAASxmB,EAAOgJ,GAAG8N,GACnB2P,EAAcD,EAAOE,MAAQ,sBAAwB,sBACrDF,GAAOpC,OAAMqC,GAAe,8BAC5BD,EAAOG,QAAOF,GAAe,UAAYD,EAAOG,OAChDH,EAAOI,KAAIH,GAAe,OAASD,EAAOI,IAC1CJ,EAAOK,WAAUJ,GAAe,aACpCvC,GAAe,gBAAkBuC,EAAc,KAAOD,EAAO7N,KAAO,UAChE7B,IAAM9W,EAAOgJ,GAAGnH,OAAS,IAAGqiB,GAAe,UAGvDF,EAAY,8BAAgCE,EAAc,SAE9DN,EAAsBlC,UAAYsC,EAClCD,EAAQjjB,EAAE8iB,GAAuBrR,WACjCzR,EAAE,QAAQ0M,OAAOuW,EAAM,IACvB+B,EAAgB,uBAChBC,EAAiB,wBAGrB,GAAIe,GAAS/C,EAAMxiB,KAAKukB,EAmBxB,OAlBAgB,GAAO9X,KAAK,SAAUiD,EAAO1G,GACzB,GAAIwb,GAAa9U,CACjBnR,GAAEyK,GAAIgH,WAAWvD,KAAK,SAAUiD,EAAO1G,GACnC,GAEIyb,GAFAC,EAAchV,EACdiV,EAAelnB,EAAO+mB,GAAYE,IAEjCjB,GAAallB,EAAEyK,GAAI4B,GAAG4Y,KAAiBiB,EAAclmB,EAAEyK,IACxDya,GAAallB,EAAEyK,GAAIhK,KAAKwkB,GAAgBlkB,OAAS,IAAGmlB,EAAclmB,EAAEyK,GAAIhK,KAAKwkB,IAE7EiB,GACAA,EAAY5L,GAAG,QAAS,SAAUpP,GAC1Bkb,EAAatC,SAAU,GAAOrkB,EAAIkN,WAAWsW,GAC7CmD,EAAarC,SAASqC,EAAarC,QAAQd,EAAO/X,SAKjEga,GAAWzlB,EAAIukB,UAAUf,GACvBA,EAAM,IAEjBxjB,EAAI+lB,QAAU,SAAUvC,EAAO9W,EAAQka,GAsBnC,QAASC,KACLrD,EAAMvb,KAAK8E,KAAM,GAAI+Z,IAAK,IAC1B,IAEIC,GAAgCC,EAAgBC,EAFhDC,EAAc1D,EAAM/W,QACpB0a,EAAe3D,EAAM7iB,SACTymB,EAAiB,CAC5BrX,GAMDyT,EAAMnb,YAAY,qEAAqEJ,KAAK8E,KAAM,GAAI+Z,IAAK,MAL3GC,EAAavD,EAAMxiB,KAAK,kBACxBomB,EAAiBL,EAAWta,QAAU,EACtCsa,EAAW1e,YAAY,qCAAqCJ,KAAK8E,KAAM,GAAI+Z,IAAK,KAOpF,IAAIO,GAAc3a,EAAOqH,aACrBuT,EAAe5a,EAAO6a,cACtBC,EAAe9a,EAAOI,SACtB2a,EAAmB/a,EAAOC,QAAQ,QAClC8a,GAAiBnmB,OAAS,IAC1BkmB,EAAaV,IAAMU,EAAaV,IAAMW,EAAiB,GAAGhnB,UAG9D,IAAIinB,GAAennB,EAAEhB,QAAQoB,SACzBgnB,EAAcpnB,EAAEhB,QAAQkN,QAExBmb,EAAW,EACXC,EAAY,EACZrU,EAAO,EAEPsU,EAAgB,KAChB/X,IACIoX,EAAcK,EAAaV,IAE3Bc,EAAWJ,EAAaV,IAAMK,EAAcG,EAEvCH,EAAcO,EAAeF,EAAaV,IAAMQ,GAErDQ,EAAgB,SAChBF,EAAWJ,EAAaV,MAIxBgB,EAAgB,SAChBF,EAAWJ,EAAaV,KAGZ,GAAZc,EACAA,EAAW,EAENA,EAAWT,GAAeO,IAC/BE,EAAWF,EAAeP,EAAc,GAI5CU,EAAYL,EAAaza,KACT,EAAZ8a,IAAeA,EAAY,GAC3BA,EAAYX,EAAaS,IACzBE,EAAYL,EAAaza,KAAOsa,EAAcH,GAE5B,QAAlBY,GACAtE,EAAMpb,SAAS,kBAEG,WAAlB0f,GACAtE,EAAMpb,SAAS,uBAKd+e,EAAcC,EAAkBI,EAAaV,IAE9Cc,EAAWJ,EAAaV,IAAMK,EAAcC,EAEtCD,EAAcC,EAAkBM,EAAeF,EAAaV,IAAMQ,GAExEQ,EAAgB,SAChBF,EAAWJ,EAAaV,IAAMQ,EAAeF,IAI7CU,EAAgB,SAChBF,EAAWN,EAAe,EAAIE,EAAaV,IAAMK,EAAc,EAC/D3T,EAAOoU,EACS,GAAZA,EACAA,EAAW,EAENA,EAAWT,GAAeO,IAC/BE,EAAWF,EAAeP,EAAc,GAE5C3T,GAAcoU,GAII,QAAlBE,GAA6C,WAAlBA,GAC3BD,EAAYR,EAAc,EAAIG,EAAaza,KAAOma,EAAa,EAC/D1T,EAAOqU,EACS,EAAZA,IAAeA,EAAY,GAC3BA,EAAYX,EAAaS,IAAaE,EAAYF,EAAcT,EAAa,GAC3D,QAAlBY,GACAf,EAAW3e,SAAS,aAEF,WAAlB0f,GACAf,EAAW3e,SAAS,UAExBoL,GAAcqU,EACdb,EAAkBE,EAAa,EAAIE,EAAiB5T,EACpDwT,EAAiB5a,KAAK2b,IAAI3b,KAAK4b,IAAIhB,EAAgBE,EAA8B,EAAjBE,EAAqB,GAAI,GACzFL,EAAW9e,KAAK8E,KAAMia,EAAiB,QAGhB,WAAlBc,IACLD,EAAYL,EAAaza,KAAOma,EAAaE,EAC7CL,EAAW3e,SAAS,aACJ,EAAZyf,GAAkBA,EAAYX,EAAaS,KAC3B,EAAZE,IAAeA,EAAYL,EAAaza,KAAOsa,EAAcD,GAC7DS,EAAYX,EAAaS,IAAaE,EAAYF,EAAcT,EAAa,GACjFH,EAAW1e,YAAY,YAAYD,SAAS,YAEhD6e,EAAiBE,EAAc,EAAIC,EAAiB5T,EACpDyT,EAAgB7a,KAAK2b,IAAI3b,KAAK4b,IAAIf,EAAeE,EAA+B,EAAjBC,EAAqB,GAAI,GACxFL,EAAW9e,KAAK6e,IAAKG,EAAgB,SAM7CzD,EAAMvb,KAAK6e,IAAKc,EAAW,KAAM7a,KAAM8a,EAAY,OAlJvD,GAD6B,mBAAlBjB,KAA+BA,GAAgB,GACrC,gBAAVpD,IAAsBA,EAAMriB,QAAQ,MAAQ,EAAG,CACtD,GAAI8mB,GAASrmB,SAAS4c,cAAc,MAEpC,IADAyJ,EAAO9G,UAAYqC,EAAMnM,SACrB4Q,EAAOC,WAAW5mB,OAAS,GAK1B,OAAO,CAJRkiB,GAAQyE,EAAOC,WAAW,GACtBtB,GAAepD,EAAM2E,UAAUC,IAAI,mBACvC7nB,EAAE,QAAQ0M,OAAOuW,GAMzB,GAFAA,EAAQjjB,EAAEijB,GACV9W,EAASnM,EAAEmM,GACU,IAAjB8W,EAAMliB,QAAkC,IAAlBoL,EAAOpL,OAAc,OAAO,CACV,KAAxCkiB,EAAMxiB,KAAK,kBAAkBM,QAAiBtB,EAAIP,OAAOsQ,UACzDyT,EAAMvW,OAAO,qCAEjBuW,EAAMrN,MAEN,IAAIpG,GAAW/P,EAAIP,OAAOsQ,QA8I1B,OAZA8W,KAEAtmB,EAAEhB,QAAQsb,GAAG,SAAUgM,GACvBrD,EAAM3I,GAAG,QAAS,WACdta,EAAEhB,QAAQqb,IAAI,SAAUiM,KAGxBrD,EAAMxiB,KAAK,IAAMhB,EAAIP,OAAO+G,WAAWlF,OAAS,GAChDtB,EAAIoT,YAAYoQ,EAAMxiB,KAAK,IAAMhB,EAAIP,OAAO+G,WAAW,IAG3DxG,EAAIukB,UAAUf,GACPA,EAAM,IAEjBxjB,EAAIqoB,MAAQ,SAAU7E,EAAOoD,GAEzB,GAD6B,mBAAlBA,KAA+BA,GAAgB,GACrC,gBAAVpD,IAAsBA,EAAMriB,QAAQ,MAAQ,EAAG,CACtD,GAAI8mB,GAASrmB,SAAS4c,cAAc,MAEpC,IADAyJ,EAAO9G,UAAYqC,EAAMnM,SACrB4Q,EAAOC,WAAW5mB,OAAS,GAK1B,OAAO,CAJRkiB,GAAQyE,EAAOC,WAAW,GACtBtB,GAAepD,EAAM2E,UAAUC,IAAI,mBACvC7nB,EAAE,QAAQ0M,OAAOuW,GAKzB,MADAA,GAAQjjB,EAAEijB,GACW,IAAjBA,EAAMliB,QAAqB,GAC/BkiB,EAAMrN,OACFqN,EAAMxiB,KAAK,IAAMhB,EAAIP,OAAO+G,WAAWlF,OAAS,GAChDtB,EAAIoT,YAAYoQ,EAAMxiB,KAAK,IAAMhB,EAAIP,OAAO+G,WAAW,IAE3DxG,EAAIukB,UAAUf,GACPA,EAAM,KAEjBxjB,EAAIsoB,YAAc,SAAUA,EAAa1B,GAErC,GAD6B,mBAAlBA,KAA+BA,GAAgB,GAC/B,gBAAhB0B,IAA4BA,EAAYnnB,QAAQ,MAAQ,EAAG,CAElE,GADAmnB,EAAc/nB,EAAE+nB,KACZA,EAAYhnB,OAAS,GAIpB,OAAO,CAHJslB,IAAe0B,EAAYlgB,SAAS,mBACxC7H,EAAE,QAAQ0M,OAAOqb,EAAY,IAKrC,MADAA,GAAc/nB,EAAE+nB,GACW,IAAvBA,EAAYhnB,QAAqB,GACrCgnB,EAAYnS,OACZnW,EAAIukB,UAAU+D,GACPA,EAAY,KAEvBtoB,EAAIuoB,YAAc,SAAU/E,GAGxB,MAFKA,KAAOA,EAAQ,iBACpBA,EAAQjjB,EAAEijB,GACW,IAAjBA,EAAMliB,QAAqB,GAC/BkiB,EAAMrN,OACFqN,EAAMxiB,KAAK,IAAMhB,EAAIP,OAAO+G,WAAWlF,OAAS,GAChDtB,EAAIoT,YAAYoQ,EAAMxiB,KAAK,IAAMhB,EAAIP,OAAO+G,WAAW,IAE3DxG,EAAIukB,UAAUf,GACPA,EAAM,KAEjBxjB,EAAIukB,UAAY,SAAUf,GACtBA,EAAQjjB,EAAEijB,EACV,IAAIgF,GAAUhF,EAAMtiB,SAAS,QAC7B,IAAIX,EAAE,mCAAmCe,QAAUtB,EAAIP,OAAO4G,YAAcmiB,EAIxE,WAHAxoB,GAAIqG,WAAWoD,KAAK,WAChBzJ,EAAIukB,UAAUf,IAItB,IACIiF,IADYjF,EAAMtiB,SAAS,WACjBsiB,EAAMtiB,SAAS,UACzBwnB,EAAgBlF,EAAMtiB,SAAS,gBAC/BynB,EAAgBnF,EAAMtiB,SAAS,eAC/BsnB,KACAhF,EAAMrN,OACNqN,EAAMvb,KACF2gB,WAAaxc,KAAKwB,MAAM4V,EAAM+D,cAAgB,GAAK,OAI3D,IAAI5R,EACC+S,IAAkBC,IACgB,IAA/BpoB,EAAE,kBAAkBe,QAAiBmnB,GACrCloB,EAAE,QAAQ0M,OAAO,qCAEc,IAA/B1M,EAAE,kBAAkBe,QAAgBmnB,GACpCloB,EAAE,QAAQ0M,OAAO,qCAErB0I,EAAoBpV,EAAVkoB,EAAY,iBAAsB,kBAI/BjF,GAAM,GAAGxB,UAgB1B,OAbAwB,GAAMniB,QAAQ,QAGVsnB,GACApoB,EAAE,QAAQ6H,SAAS,qBAIlBsgB,GAAkBC,GAAehT,EAAQvN,SAAS,yBACvDob,EAAMnb,YAAY,aAAaD,SAAS,YAAYiH,cAAc,SAAU5D,GACvC+X,EAAMniB,QAAnCmiB,EAAMtiB,SAAS,aAA4B,SAC5B,aAEhB,GAEXlB,EAAIkN,WAAa,SAAUsW,GAEvB,GADAA,EAAQjjB,EAAEijB,GAAS,aACE,mBAAVA,IAA0C,IAAjBA,EAAMliB,OAA1C,CAGA,GAAIknB,GAAUhF,EAAMtiB,SAAS,SACzB2nB,EAAYrF,EAAMtiB,SAAS,WAC3BunB,EAAUjF,EAAMtiB,SAAS,SACzBwnB,EAAgBlF,EAAMtiB,SAAS,gBAC/BynB,EAAgBnF,EAAMtiB,SAAS,gBAE/B0lB,EAAgBpD,EAAMtiB,SAAS,mBAE/ByU,EAAoBpV,EAAVkoB,EAAY,iBAAsB,iBA8ChD,OA7CIA,GACIjF,EAAMliB,SAAWf,EAAE,mBAAmBe,QACtCqU,EAAQtN,YAAY,yBAGlBsgB,GACNhT,EAAQtN,YAAY,yBAGxBmb,EAAMniB,QAAQ,SAGVsnB,IACApoB,EAAE,QAAQ8H,YAAY,qBACtB9H,EAAE,QAAQ6H,SAAS,yBAGlBygB,GAuBDrF,EAAMnb,YAAY,sBAAsBhH,QAAQ,UAAUuW,OACtDgP,GACApD,EAAM9T,WAxBV8T,EAAMnb,YAAY,YAAYD,SAAS,aAAaiH,cAAc,SAAU5D,GACvC+X,EAAMniB,QAAnCmiB,EAAMtiB,SAAS,aAA4B,SAC5B,UAEfynB,GACApoB,EAAE,QAAQ8H,YAAY,wBAEtBogB,GAAWC,GAAiBC,GAC5BnF,EAAMnb,YAAY,aAAauP,OAC3BgP,GAAiBpD,EAAMliB,OAAS,GAChCkiB,EAAM9T,UAIV8T,EAAM9T,WAGV8Y,GAAWxoB,EAAIP,OAAO4G,YACtBrG,EAAIsjB,yBASL,IAOXtjB,EAAI8oB,gBAAiB,EACrB9oB,EAAI+oB,UAAY,SAAUC,GAoBtB,QAASC,KACLC,EAAoB7Z,cAAc,SAAU5D,GACpClL,EAAEkL,EAAEiB,QAAQE,GAAGsc,IAEXC,EAAM9nB,QADN8nB,EAAMjoB,SAAS,UACD,SAGA,UAElBlB,EAAI8oB,gBAAiB,GAEpBG,MA9Bb,IAAKjpB,EAAI8oB,eAAgB,OAAO,CAChC,IAAIK,GAAQ5oB,EAAE,UAAYyoB,EAC1B,IAAqB,IAAjBG,EAAM7nB,QAAgB6nB,EAAMjoB,SAAS,UAAW,OAAO,CAC3DlB,GAAIopB,aACJppB,EAAI8oB,gBAAiB,CACrB,IAAIO,GAASF,EAAMjoB,SAAS,gBAAkB,SAAW,OACzDioB,GAAMlhB,KAAKqhB,QAAS,UAAUlhB,SAAS,UACvC+gB,EAAM9nB,QAAQ,QACV8nB,EAAMnoB,KAAK,IAAMhB,EAAIP,OAAO+G,WAAWlF,OAAS,GAC5CtB,EAAIoT,aAAapT,EAAIoT,YAAY+V,EAAMnoB,KAAK,IAAMhB,EAAIP,OAAO+G,WAAW,GAIhF,IAGI0iB,IAHaC,EAAM,GAAGnH,WAGW,WAAXqH,EAAsB9oB,EAAE,IAAMP,EAAIP,OAAOiH,YAAcyiB,EAoBjF,OAHAF,KAEA1oB,EAAE,QAAQ6H,SAAS,cAAgB4gB,EAAgB,IAAMK,IAClD,GAEXrpB,EAAIopB,WAAa,WACb,GAAIG,GAAchpB,EAAE,gBACpB,IAA2B,IAAvBgpB,EAAYjoB,OAAc,OAAO,CACrC,IAAI+nB,GAASE,EAAYroB,SAAS,gBAAkB,SAAW,QAC3D8nB,EAAgBO,EAAYroB,SAAS,cAAgB,OAAS,OAClEqoB,GAAYlhB,YAAY,SACxB,IAAI6gB,GAAiC,WAAXG,EAAsB9oB,EAAE,IAAMP,EAAIP,OAAOiH,YAAc6iB,CACjFA,GAAYloB,QAAQ,SACpBrB,EAAI8oB,gBAAiB,EAErBI,EAAoB7Z,cAAc,WAC1Bka,EAAYroB,SAAS,YACzBqoB,EAAYthB,KAAKqhB,QAAS,KAC1BC,EAAYloB,QAAQ,UACpBd,EAAE,QAAQ8H,YAAY,iBACtBrI,EAAI8oB,gBAAiB,KAGzBvoB,EAAE,QAAQ6H,SAAS,iBAAiBC,YAAY,cAAgB2gB,EAAgB,IAAMK;;EAK1FrpB,EAAIwpB,gBAAkB,WAkBlB,QAAShe,GAAiBC,GACtB,GAAKzL,EAAI8oB,iBAAoB9oB,EAAIP,OAAO4F,YAAerF,EAAIP,OAAO+F,uBAAwByF,KACtF1K,EAAE,gCAAgCe,OAAS,IACzCtB,EAAIP,OAAO8F,0BAA2BvF,EAAIP,OAAO+F,qBAC/CjF,EAAE,iBAAiBe,OAAS,IAAM6nB,EAAMjoB,SAAS,WADzD,CAKA,GAFAiK,EAAaQ,EAAe,eAAXF,EAAEG,KAAwBH,EAAEI,cAAc,GAAGC,MAAQL,EAAEK,MACxEX,EAAaY,EAAe,eAAXN,EAAEG,KAAwBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,MACpEhM,EAAIP,OAAO8F,yBAA2BvF,EAAIP,OAAO+F,oBAAqB,CACtE,GAAIjF,EAAE,iBAAiBe,OAAS,EAC5BmoB,EAAOlpB,EAAE,iBAAiBW,SAAS,cAAgB,OAAS,YAE3D,CACD,GAAIlB,EAAIP,OAAO+F,oBAAqB,MACpCikB,GAAOzpB,EAAIP,OAAO4F,WAEtB,IAAKokB,EAAM,OAIf,GAFAN,EAAQ5oB,EAAE,gBAAkBkpB,GAC5BC,EAASP,EAAMjoB,SAAS,UACpBlB,EAAIP,OAAO6F,uBAAyBokB,EAAQ,CAC5C,GAAa,SAATD,GACIte,EAAaQ,EAAI3L,EAAIP,OAAO6F,qBAAsB,MAE1D,IAAa,UAATmkB,GACIte,EAAaQ,EAAIpM,OAAOoqB,WAAa3pB,EAAIP,OAAO6F,qBAAsB,OAGlF4F,GAAU,EACVD,GAAY,EACZV,EAAc1H,OAEd6H,GAAiB,GAAKuB,OAAQC,UAC9B2S,EAAYhc,QAEhB,QAASsJ,GAAgBV,GACrB,GAAKR,IACDQ,EAAE0B,oBAAN,CACA,GAAIrB,GAAmB,cAAXL,EAAEG,KAAuBH,EAAEI,cAAc,GAAGC,MAAQL,EAAEK,MAC9DE,EAAmB,cAAXP,EAAEG,KAAuBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,KAIlE,IAH2B,mBAAhBzB,KACPA,KAAiBA,GAAe6B,KAAKC,IAAIL,EAAQb,EAAaY,GAAKK,KAAKC,IAAIP,EAAQX,EAAaQ,KAEjGpB,EAEA,YADAU,GAAY,EAGhB,KAAK4T,IAEGA,EADA/S,EAAQX,EAAaQ,EACT,WAGA,UAIH,SAAT8d,GAEkB,YAAd5K,IAA4BsK,EAAMjoB,SAAS,WAEtC,UAATuoB,GAEkB,aAAd5K,IAA6BsK,EAAMjoB,SAAS,WAKhD,YADA+J,GAAY,EAKpB,IAAIjL,EAAIP,OAAOgG,mBAAoB,CAC/B,GAAI8I,IAAW,GAAKtC,OAAQC,UAAYxB,CAaxC,OAZe,KAAX6D,IACkB,YAAdsQ,IACa,UAAT4K,GAAkBzpB,EAAI+oB,UAAUU,GACvB,SAATA,GAAmBN,EAAMjoB,SAAS,WAAWlB,EAAIopB,cAEvC,aAAdvK,IACa,SAAT4K,GAAiBzpB,EAAI+oB,UAAUU,GACtB,UAATA,GAAoBN,EAAMjoB,SAAS,WAAWlB,EAAIopB,eAG9Dne,GAAY,OACZC,GAAU,GAITA,IACDme,EAASF,EAAMjoB,SAAS,eAAiB,QAAU,SAC9CwoB,IACDP,EAAMhT,OACNyT,EAAazT,QAEjB0T,EAAaV,EAAM,GAAG9U,YACtB8U,EAAMjT,WAAW,GACbiT,EAAMnoB,KAAK,IAAMhB,EAAIP,OAAO+G,WAAWlF,OAAS,GAC5CtB,EAAIoT,aAAapT,EAAIoT,YAAY+V,EAAMnoB,KAAK,IAAMhB,EAAIP,OAAO+G,WAAW,KAIpF0E,GAAU,EAEVO,EAAE2B,gBACF,IAAI0c,GAAYJ,EAAS,GAAK1pB,EAAIP,OAAOiG,mBAC5B,WAAT+jB,IAAkBK,GAAaA,GAEnCrf,EAAcqB,EAAQX,EAAaQ,EAAIme,EAE1B,UAATL,GACA/a,EAAYjE,GAAgBif,EAASG,EAAa,GAC9Cnb,EAAY,IAAGA,EAAY,IACdmb,EAAbnb,IACAA,GAAamb,KAIjBnb,EAAYjE,GAAgBif,EAASG,EAAa,GAClC,EAAZnb,IAAeA,EAAY,GAC3BA,EAAYmb,IACZnb,EAAYmb,IAGL,WAAXR,GACA/gB,EAAMuF,UAAU,eAAiBa,EAAY,WAAWwH,WAAW,GACnE0T,EAAa/b,UAAU,eAAiBa,EAAY,WACpD1O,EAAIuR,WAAW,yBAA0BjJ,EAAM,GAAI6gB,EAAM,GAAI/c,KAAKC,IAAIqC,EAAYmb,MAGlFV,EAAMtb,UAAU,eAAiBa,EAAY,WAAWwH,WAAW,GACnElW,EAAIuR,WAAW,yBAA0BjJ,EAAM,GAAI6gB,EAAM,GAAI/c,KAAKC,IAAIqC,EAAYmb,MAG1F,QAASxb,GAAe5C,GACpB,IAAKR,IAAcC,EAGf,MAFAD,IAAY,OACZC,GAAU,EAGdD,IAAY,EACZC,GAAU,CACV,IACI2E,GADAtB,GAAW,GAAKtC,OAAQC,UAAYxB,EAEpCqf,EAAsB,IAAdrb,GAAmBtC,KAAKC,IAAIqC,KAAemb,CA6CvD,IA3BQha,EAhBH6Z,EAeGhb,KAAemb,EACN,QAGE,IAAXtb,GAAkBnC,KAAKC,IAAIqC,IAAc,GACzCH,GAAY,KAAQnC,KAAKC,IAAIqC,IAAcmb,EAAa,EAE3C,SAATJ,GAAmB/a,IAAcmb,EAAqB,QAC5C,OAGL,QAzBK,IAAdnb,EACS,QAGE,IAAXH,GAAkBnC,KAAKC,IAAIqC,GAAa,GACxCH,GAAY,KAAQnC,KAAKC,IAAIqC,IAAcmb,EAAa,EAE/C,OAGA,QAkBF,SAAXha,IACA7P,EAAI8oB,gBAAiB,EACjBY,GACA1pB,EAAIopB,aACAW,IACAZ,EAAMlhB,KAAKqhB,QAAS,KACpB/oB,EAAE,QAAQ8H,YAAY,mBAI1BrI,EAAI+oB,UAAUU,GAEdM,IAAM/pB,EAAI8oB,gBAAiB,IAEpB,UAAXjZ,EACA,GAAI6Z,EACA1pB,EAAI8oB,gBAAiB,EACrB9oB,EAAI+oB,UAAUU,OAId,IADAzpB,EAAIopB,aACAW,EACA/pB,EAAI8oB,gBAAiB,EACrBK,EAAMlhB,KAAKqhB,QAAS,SAEnB,CACD,GAAI5c,GAAoB,WAAX2c,EAAsB/gB,EAAQ6gB,CAC3C5oB,GAAE,QAAQ6H,SAAS,iBACnBsE,EAAO2C,cAAc,WACjBrP,EAAI8oB,gBAAiB,EACrBK,EAAMlhB,KAAKqhB,QAAS,KACpB/oB,EAAE,QAAQ8H,YAAY,mBAKvB,WAAXghB,IACA/gB,EAAM4N,WAAW,IACjB5N,EAAMuF,UAAU,KAEpBsb,EAAMjT,WAAW,IAAIrI,UAAU,IAC/B+b,EAAa3hB,KAAKqhB,QAAS,KAAKzb,UAAU,IAxO9C,GAAIsb,GAAOM,CACX,IAAIzpB,EAAIP,OAAO4F,YAGX,GAFA8jB,EAAQ5oB,EAAE,gBAAkBP,EAAIP,OAAO4F,YACvCokB,EAAOzpB,EAAIP,OAAO4F,WACG,IAAjB8jB,EAAM7nB,OAAc,WAEvB,CACD,IAAItB,EAAIP,OAAO+F,oBAGV,MAFD,IAA2B,IAAvBjF,EAAE,UAAUe,OAAc,OAKtC,GACI2J,GAAWC,EAASX,EAAgCG,EAAgBD,EAAaiE,EAAWgb,EAAQG,EAAYR,EAAQxK,EADxH+K,EAAerpB,EAAE,kBACgB4K,KACjC7C,EAAQ/H,EAAE,IAAMP,EAAIP,OAAOiH,WA2N/BnG,GAAEqB,UAAUiZ,GAAG7a,EAAIwH,YAAYC,MAAO+D,GACtCjL,EAAEqB,UAAUiZ,GAAG7a,EAAIwH,YAAYI,KAAMuE,GACrC5L,EAAEqB,UAAUiZ,GAAG7a,EAAIwH,YAAYK,IAAKwG,IAQxCrO,EAAIme,mBAAqB,SAAUtP,GAqC/B,QAASmb,GAAUhf,GAOf,QAASif,KACLjf,EAAG3C,YAAY,QAAQD,SAAS,eAC5Bie,EACArb,EAAG/C,IAAI,mBAAoB,OAASiiB,EAAM,KAG1Clf,EAAG9C,KAAK,MAAOgiB,GAGflqB,EAAIP,OAAO8G,2BACX4jB,GAAiB,EACbC,EAAe9oB,OAAS,GACxB0oB,EAAUI,EAAe7G,UAlBrCvY,EAAKzK,EAAEyK,EAEP,IAAIqb,GAAKrb,EAAG9C,KAAK,mBACbgiB,EAAM7D,EAAKA,EAAKrb,EAAG9C,KAAK,WAC5B,IAAKgiB,EAAL,CAmBA,GAAIlqB,EAAIP,OAAO8G,0BACP4jB,EAEA,YADIC,EAAejpB,QAAQ6J,EAAG,IAAM,GAAGof,EAAe3gB,KAAKuB,EAAG,IAMtEmf,IAAiB,CAEjB,IAAIE,GAAQ,GAAIC,MAChBD,GAAME,OAASN,EACfI,EAAMG,QAAUP,EAChBI,EAAMH,IAAKA,GAEf,QAASO,KACLC,EAAiB7b,EAAc7N,KAAK,SACpC0pB,EAAejc,KAAK,SAASiD,EAAO1G,GAChCA,EAAKzK,EAAEyK,GACH2f,EAAoB3f,EAAG,KACvBgf,EAAUhf,KAKtB,QAAS2f,GAAqB3f,GAC1B,GAAI4f,GAAO5f,EAAG6f,wBACVf,EAAY9pB,EAAIP,OAAO6G,yBAA2B,CACtD,OACIskB,GAAK9D,KAAQ,EAAIgD,GACjBc,EAAK7d,MAAS,EAAI+c,GAClBc,EAAK9D,KAAQvnB,OAAOurB,YAAchB,GAClCc,EAAK7d,MAASxN,OAAOoqB,WAAaG,EAI1C,QAASna,GAAa2B,GAClB,GAAIwH,GAASxH,EAAU,MAAQ,IAC/BoZ,GAAe5R,GAAQ,OAAQ2R,GAC/B5b,EAAciK,GAAQ,OAAQ2R,GAC9BhR,EAAYX,GAAQ,OAAQ2R,GAC5BhR,EAAYX,GAAQ,SAAU2R,GAC9BlqB,EAAEhB,QAAQuZ,GAAQ,SAAU2R,GAEhC,QAAS3a,KACLH,GAAa,GAzGjBd,EAAgBtO,EAAEsO,EAGlB,IAAI6b,EAQJ,IAPI7b,EAAc3N,SAAS,SACvBwpB,EAAiB7b,EACjBA,EAAgB6b,EAAe/d,QAAQ,UAGvC+d,EAAiB7b,EAAc7N,KAAK,SAEV,IAA1B0pB,EAAeppB,OAAnB,CAGA,GAAImY,EAQJ,IAPI5K,EAAc3N,SAAS,iBACvBuY,EAAc5K,EACdA,EAAgBA,EAAclC,QAAQ,UAGtC8M,EAAc5K,EAAc7N,KAAK,iBAEV,IAAvByY,EAAYnY,OAAhB,CAGA,GAAIypB,GAAiB,wIAC+B,iBAAzC/qB,GAAIP,OAAOurB,4BAClBD,EAAiB/qB,EAAIP,OAAOurB,2BAE5BhrB,EAAIP,OAAOurB,6BAA8B,GAAON,EAAejc,KAAK,WAChElO,EAAEC,MAAM0H,KAAK,aAAa3H,EAAEC,MAAM0H,KAAK,MAAO6iB,IAItD,IAAIX,MACAD,GAAiB,CA0ErBtb,GAAc,GAAGoc,wBAA0Bnb,EAG3CH,IAGId,EAAc3N,SAAS,SACvB2N,EAAcuK,KAAK,mBAAoBtJ,GAI3C2a,IAGA5b,EAAcuK,KAAK,qBAAsBqR,MAE7CzqB,EAAIkrB,sBAAwB,SAAUrc,GAClCA,EAAgBtO,EAAEsO,GACdA,EAAcvN,OAAS,GAAKuN,EAAc,GAAGoc,yBAC7Cpc,EAAc,GAAGsc,qBAGzBnrB,EAAIorB,qBAAuB,SAAUvc,GACjCA,EAAgBtO,EAAEsO,GACdA,EAAcvN,OAAS,GACvBuN,EAAcxN,QAAQ,QAO9B,IAAIgqB,GAAW,SAAUpiB,EAAWxJ,GAChC,GAAIiJ,IACA4iB,YAAY,EACZC,kBAAkB,EAClBC,gBACI,yhBAUR/rB,GAASA,KACT,KAAK,GAAIsJ,KAAOL,IACe,mBAAhBjJ,GAAOsJ,IAAwC,OAAhBtJ,EAAOsJ,MAC7CtJ,EAAOsJ,GAAOL,EAASK,GAK/B,IAAIyQ,GAAIhZ,IAOR,OAJAgZ,GAAE/Z,OAASA,EAGX+Z,EAAEvQ,UAAY1I,EAAE0I,GACW,IAAvBuQ,EAAEvQ,UAAU3H,QAGZkY,EAAE/Z,OAAO6rB,YAAY9R,EAAEvQ,UAAUb,SAAS,wBAG9CoR,EAAE3K,cAAgB2K,EAAEvQ,UAAU0D,QAAQ,SAASvC,GAAG,GAClDoP,EAAEC,YAAcD,EAAE3K,cAAc7N,KAAK,iBAGrCwY,EAAEyG,SAAW3Y,UAAU6Y,QAAQ3G,EAAE/Z,OAAO+rB,iBAGxChS,EAAEiS,OAAS,WACFjS,EAAEvQ,UAAU/H,SAAS,yBAAyBsY,EAAEvQ,UAAUb,SAAS,wBACxEoR,EAAEvQ,UAAUjI,KAAK,YAAYyN,KAAK,WAC9B,GAAIid,GAAUnrB,EAAEC,KACZkrB,GAAQ1qB,KAAK,qBAAqBM,OAAS,GAAGoqB,EAAQtjB,SAAS,eAC/DsjB,EAAQ1qB,KAAK,mBAAmBM,OAAS,GAAGoqB,EAAQtjB,SAAS,yBAErEoR,EAAEvQ,UAAUjI,KAAK,YAAYyN,KAAK,WAC9B,GAAIid,GAAUnrB,EAAEC,MACZmrB,EAASD,EAAQxqB,SAAS,gBAC1Bue,EAAOiM,EAAQjM,KAAK,aAAekM,EAAS,OAAS,aACrD9J,EAAO6J,EAAQ7J,KAAK,aAAe8J,EAAS,OAAS,YACrC,KAAhBlM,EAAKne,OACLoqB,EAAQtjB,SAAS,kCAEhBsjB,EAAQrjB,YAAY,kCAEL,IAAhBwZ,EAAKvgB,OACLoqB,EAAQtjB,SAAS,iBAEhBsjB,EAAQrjB,YAAY,iBAErBwZ,EAAKvgB,OAAS,GAAKugB,EAAK7gB,KAAK,iBAAiBM,OAAS,GAAKoqB,EAAQ1qB,KAAK,iBAAiBM,OAAS,GAC/FugB,EAAK7gB,KAAK,iBAAiBoX,SAAWsT,EAAQ1qB,KAAK,iBAAiBoX,SACpEyJ,EAAKzZ,SAAS,kCACdsjB,EAAQtjB,SAAS,qBAQjCoR,EAAEoS,cAAgB,SAAUC,EAAOC,GAC/B,MAAOtS,GAAEuS,WAAWF,EAAO,SAAUC,IAEzCtS,EAAEwS,eAAiB,SAAUH,EAAOC,GAChC,MAAOtS,GAAEuS,WAAWF,EAAO,UAAWC,IAE1CtS,EAAEuS,WAAa,SAAUF,EAAO/S,EAAQgT,GACpC,MAAOtS,GAAEyS,aAAaJ,GAAQ/S,EAAQgT,IAE1CtS,EAAEyS,YAAc,SAAUC,EAAapT,EAAQgT,GACpB,mBAAZA,KACPA,GAAU,GAEQ,mBAAXhT,KACPA,EAASU,EAAE/Z,OAAO8rB,iBAAmB,UAAY,SAErD,IAA0B9iB,GAAtB0jB,EAAkB,EACtB,KAAK1jB,EAAI,EAAGA,EAAIyjB,EAAY5qB,OAAQmH,IAAK,CACrC,GAAIojB,GAAQK,EAAYzjB,MACxBojB,GAAMjgB,KAAOigB,EAAMjgB,MAAQ,OACtBigB,EAAMzT,OACXyT,EAAMO,SAAWP,EAAMzT,KAAKjX,QAAQ,SAAW,EAC3C2qB,IAASD,EAAM/c,SAAsB,WAAXgK,EAAsB,SAAW,OAE/DqT,GAAmB3S,EAAEyG,SAAS4L,IAElCrS,EAAEvQ,UAAU6P,GAAQqT,GAEhB3S,EAAE/Z,OAAO6rB,YAAY9R,EAAEiS,UACX,WAAX3S,IAAwBU,EAAE/Z,OAAO8rB,kBAAiC,YAAXzS,GAAwBU,EAAE/Z,OAAO8rB,mBACzF/R,EAAE6S,eAAeP,EAAUjpB,OAAY,EAE3C,IAAIypB,GAAW9S,EAAEvQ,UAAUjI,KAAK,WAChC,IAA2B,IAAvBkrB,EAAY5qB,OACZ,MAAkB,WAAXwX,EAAsBwT,EAASA,EAAShrB,OAAS,GAAKgrB,EAAS,EAGtE,IAAIC,KACJ,IAAe,WAAXzT,EACA,IAAKrQ,EAAI6jB,EAAShrB,OAAS4qB,EAAY5qB,OAAQmH,EAAI6jB,EAAShrB,OAAQmH,IAChE8jB,EAAiB9iB,KAAK6iB,EAAS7jB,QAInC,KAAKA,EAAI,EAAGA,EAAIyjB,EAAY5qB,OAAQmH,IAChC8jB,EAAiB9iB,KAAK6iB,EAAS7jB,GAGvC,OAAO8jB,IAIf/S,EAAEgT,cAAgB,SAAUd,GAExB,MADAA,GAAUnrB,EAAEmrB,GACW,IAAnBA,EAAQpqB,QACD,GAGPoqB,EAAQhc,SACJ8J,EAAE/Z,OAAO6rB,YAAY9R,EAAEiS,UACpB,IAGfjS,EAAEiT,eAAiB,SAAUH,GACzB9S,EAAEgT,cAAcF,IAEpB9S,EAAEkT,MAAQ,WACNlT,EAAEvQ,UAAU0jB,KAAK,KAIrBnT,EAAE6S,eAAiB,SAAUO,GACD,mBAAbA,KAA0BA,EAAW,IAChD,IAAIC,GAAgBrT,EAAEC,YAAY,GAAGhZ,UACjCqsB,EAAYtT,EAAE/Z,OAAO8rB,iBAAmB,EAAI/R,EAAEC,YAAY,GAAG/Y,aAAe8Y,EAAEC,YAAY,GAAG7Y,YAC7FksB,KAAcD,GAClBrT,EAAEC,YAAYhZ,UAAUqsB,EAAWF,IAIvCpT,EAAEtS,KAAO,WACDsS,EAAE/Z,OAAO6sB,SACT9S,EAAEyS,YAAYzS,EAAE/Z,OAAO6sB,SAAUzpB,QAAW,IAGxC2W,EAAE/Z,OAAO6rB,YAAY9R,EAAEiS,SAC3BjS,EAAE6S,eAAe,KAIzB7S,EAAElI,QAAU,WACRkI,EAAI,MAIRA,EAAEtS,OAEFsS,EAAEvQ,UAAU,GAAG8jB,WAAavT,EACrBA,GAhJP,OAkJJxZ,GAAIssB,SAAW,SAAUrjB,EAAWxJ,GAChC,MAAO,IAAI4rB,GAAUpiB,EAAWxJ,IAEpCO,EAAI4d,iBAAmB,SAAU/O,GAU7B,QAAS6L,KACLlB,EAAElI,UACFzC,EAAc+L,IAAI,mBAAoBF,GAX1C7L,EAAgBtO,EAAEsO,EAClB,IAAIyd,GAAWzd,EAAc7N,KAAK,YAClC,IAAwB,IAApBsrB,EAAShrB,QACRgrB,EAASprB,SAAS,iBAAvB,CAGA,GAAIsY,GAAIxZ,EAAIssB,SAASA,EAAUA,EAASnT,UAOpCtK,GAAc3N,SAAS,SACvB2N,EAAcgM,GAAG,mBAAoBH,KAQ7C1a,EAAI0L,iBAAmB7I,OACvB7C,EAAIgtB,eAAgB,EACpBhtB,EAAIitB,aAAe,SAAUC,GAkBzB,QAAS1hB,GAAiBC,GACjBzL,EAAIgtB,gBACT9hB,GAAU,EACVD,GAAY,EACZV,EAAc1H,OACdsI,EAAaQ,EAAe,eAAXF,EAAEG,KAAwBH,EAAEI,cAAc,GAAGC,MAAQL,EAAEK,MACxEX,EAAaY,EAAe,eAAXN,EAAEG,KAAwBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,MACxEtB,GAAiB,GAAKuB,OAAQC,WAElC,QAASC,GAAgBV,GACrB,GAAKR,EAAL,CACA,GAAIa,GAAmB,cAAXL,EAAEG,KAAuBH,EAAEI,cAAc,GAAGC,MAAQL,EAAEK,MAC9DE,EAAmB,cAAXP,EAAEG,KAAuBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,KAIlE,IAH2B,mBAAhBzB,KACPA,KAAiBA,GAAe6B,KAAKC,IAAIL,EAAQb,EAAaY,GAAKK,KAAKC,IAAIP,EAAQX,EAAaQ,KAEjGpB,EAEA,YADAU,GAAY,EAIhB,KAAKC,EAAS,CACV,GAAI3K,EAAE,+BAA+Be,OAAS,EAAG,MAEjD6rB,GAAa5sB,EAAEC,MACf4sB,EAAkBD,EAAWnsB,KAAK,qBAClCqsB,EAAeF,EAAWnsB,KAAK,2BAC/BssB,EAAcH,EAAWnsB,KAAK,0BAC9BusB,EAAmBC,EAAoBC,EAAcC,EAAeC,EAAuBC,EAAsB,KACjHC,EAAaP,EAAYpsB,SAAS,6BAA+BlB,EAAIP,OAAO+E,sBAC5EspB,EAAcT,EAAansB,SAAS,6BAA+BlB,EAAIP,OAAO+E,sBAC1E8oB,EAAYhsB,OAAS,IACrBisB,EAAmBD,EAAYvZ,aAC/B0Z,EAAcH,EAAYtb,SAAS,KACnC4b,EAAsBN,EAAYtsB,KAAK,wBAEvCqsB,EAAa/rB,OAAS,IACtBksB,EAAoBH,EAAatZ,aACjC2Z,EAAeL,EAAarb,SAAS,KACrC2b,EAAuBN,EAAarsB,KAAK,wBAE7C0oB,EAASyD,EAAWjsB,SAAS,mBACzBwoB,IACAqE,EAAgBZ,EAAWnsB,KAAK,kDAAkDM,OAAS,EAAI,OAAS,SAE5G6rB,EAAW9kB,YAAY,iBAClBrI,EAAIP,OAAOgF,mBACZ0oB,EAAWnsB,KAAK,4BAA4BqH,YAAY,2BACxD8kB,EAAW9kB,YAAY,oBAc/B,GAXA6C,GAAU,EACVO,EAAE2B,iBAEF3C,EAAcqB,EAAQX,EAAaQ,EACnC+C,EAAYjE,EAERif,IACsB,UAAlBqE,EAA2Brf,GAAwB8e,EAClD9e,GAAwB6e,GAG7B7e,EAAY,GAA4B,IAAvB4e,EAAYhsB,QAA4B,EAAZoN,GAAyC,IAAxB2e,EAAa/rB,OAAc,CACzF,IAAKooB,EAED,YADAze,EAAYC,GAAU,EAG1BwD,GAAY,EAGGmQ,EAAH,EAAZnQ,EAA2B,UACtBA,EAAY,EAAe,WAE5BmQ,EAAuBA,EACV,SAGrB,IAAIpW,GAAGulB,EAAcC,CAGrB,IADAxiB,EAAE0B,qBAAsB,EACpBnN,EAAIP,OAAOgF,iBAmBX,MAlBIilB,IACsB,UAAlBqE,GAA6BtjB,EAAc,GAC3CzK,EAAIkuB,cAAcf,GAEA,SAAlBY,GAA0C,EAAdtjB,GAC5BzK,EAAIkuB,cAAcf,KAIJ,EAAd1iB,GAAmB4iB,EAAa/rB,OAAS,GACzCtB,EAAImuB,aAAahB,EAAY,SAE7B1iB,EAAc,GAAK6iB,EAAYhsB,OAAS,GACxCtB,EAAImuB,aAAahB,EAAY,SAGrCliB,GAAY,OACZC,GAAU,EAGdkjB,IAAgB,EAChBC,GAAiB,CACjB,IAAIC,EACJ,IAAIjB,EAAa/rB,OAAS,EAStB,IAPA2sB,EAAWvf,EAAY8e,GACNA,EAAb9e,IACAA,GAAa8e,EAAoBphB,KAAKmiB,KAAK7f,EAAY8e,EAAmB,IACtEG,EAAqBrsB,OAAS,IAC9B+sB,GAAiB,IAGpB5lB,EAAI,EAAGA,EAAIilB,EAAapsB,OAAQmH,IACY,mBAAlCilB,GAAajlB,GAAG+lB,gBACvBd,EAAajlB,GAAG+lB,cAAgBd,EAAajlB,GAAG2W,YAEpD4O,EAAeN,EAAajlB,GAAG+lB,cAC/BF,EAAU/tB,EAAEmtB,EAAajlB,IACrBklB,EAAqBrsB,OAAS,GAAKgtB,EAAQptB,SAAS,uBACpDotB,EAAQrmB,KAAK8E,MAAOshB,GAAkBL,EAAe,GAAK,OAE9DM,EAAQzgB,UAAU,gBAAkBa,EAAYsf,GAAgB,EAAI5hB,KAAK2b,IAAIkG,EAAU,MAAQ,UAGvG,IAAIX,EAAYhsB,OAAS,EASrB,IAPA2sB,EAAWvf,EAAY6e,EACnB7e,EAAY6e,IACZ7e,EAAY6e,EAAmBnhB,KAAKmiB,IAAI7f,EAAY6e,EAAkB,IAClEK,EAAoBtsB,OAAS,IAC7B8sB,GAAgB,IAGnB3lB,EAAI,EAAGA,EAAIglB,EAAYnsB,OAAQmH,IACY,mBAAjCglB,GAAYhlB,GAAG+lB,gBACtBf,EAAYhlB,GAAG+lB,cAAgBjB,EAAmBE,EAAYhlB,GAAG2W,WAAaqO,EAAYhlB,GAAG4L,aAEjG2Z,EAAeP,EAAYhlB,GAAG+lB,cAC9BF,EAAU/tB,EAAEktB,EAAYhlB,IACpBmlB,EAAoBtsB,OAAS,GAAKgtB,EAAQptB,SAAS,uBACnDotB,EAAQrmB,KAAK8E,MAAOqhB,EAAgBJ,EAAe,GAAK,OAExDP,EAAYnsB,OAAS,GACrBgtB,EAAQrmB,IAAI,UAAWwlB,EAAYnsB,OAASmH,GAEhD6lB,EAAQzgB,UAAU,gBAAkBa,EAAYsf,GAAgB,EAAI5hB,KAAK4b,IAAIiG,EAAU,KAAO,UAGtGb,GAAgBvf,UAAU,eAAiBa,EAAY,YAE3D,QAASL,GAAe5C,GACpB,IAAKR,IAAcC,EAGf,MAFAD,IAAY,OACZC,GAAU,EAIdD,IAAY,EACZC,GAAU,CACV,IACI2E,GAAQ4e,EAAcnJ,EAAS1B,EAASnb,EAAGimB,EAD3CngB,GAAW,GAAKtC,OAAQC,UAAYxB,CAqBxC,IAlBAgkB,EAAuB,YAAd7P,EAA0BiP,EAAcD,EACjDvI,EAAwB,YAAdzG,EAA0BwO,EAAeC,EACnDmB,EAA6B,YAAd5P,EAA0B2O,EAAoBD,EAMzD1d,EAHW,IAAXtB,IAAiC,IAAd9D,GAAmC,YAAdoU,GAA2BpU,EAAc,IAAoB,aAAdoU,IACvFtQ,GAAY,KAAOnC,KAAKC,IAAIqC,GAAa+f,EAAe,EAE/C,OAGA,QAEE,IAAXlgB,IAC4B,IAAxBnC,KAAKC,IAAIqC,KAAkBmB,EAAS,SACpCzD,KAAKC,IAAIqC,KAAe+f,IAAc5e,EAAS,SAGxC,SAAXA,EAAmB,CACnB7P,EAAI0L,iBAAmByhB,EACvBA,EAAW9rB,QAAQ,QACnB8rB,EAAW/kB,SAAS,gCACpB,IAAIumB,GAA6B,YAAd9P,GAA2B4P,EAAeA,CAI7D,IAHArB,EAAgBvf,UAAU,eAAiB8gB,EAAe,WAC1DrJ,EAAQld,SAAS,2BACjBwb,EAAwB,YAAd/E,EAA0B6O,EAAeD,EAE/C,IAAKhlB,EAAI,EAAGA,EAAImb,EAAQtiB,OAAQmH,IAC5BlI,EAAEqjB,EAAQnb,IAAIoF,UAAU,eAAiB8gB,EAAe,UAG5DN,IACAhB,EAAarsB,KAAK,uBAAuB,GAAG4tB,QAE5CR,GACAd,EAAYtsB,KAAK,uBAAuB,GAAG4tB,YAI/CzB,GAAW9rB,QAAQ,SACnBrB,EAAI0L,iBAAmB7I,OACvBsqB,EAAW/kB,SAAS,iBAAiBC,YAAY,mBACjD+kB,EAAgBvf,UAAU,IAC1ByX,EAAQjd,YAAY,0BAGxB,IAAI2lB,EACJ,IAAIP,GAAeA,EAAYnsB,OAAS,GAAKmsB,IAAgB7J,EACzD,IAAKnb,EAAI,EAAGA,EAAIglB,EAAYnsB,OAAQmH,IAChCulB,EAAeP,EAAYhlB,GAAG+lB,cACF,mBAAjBR,KACPP,EAAYhlB,GAAG+lB,cAAgBjB,EAAmBE,EAAYhlB,GAAG2W,WAAaqO,EAAYhlB,GAAG4L,aAEjG9T,EAAEktB,EAAYhlB,IAAIoF,UAAU,eAAiB,EAAiB,UAGtE,IAAI6f,GAAgBA,EAAapsB,OAAS,GAAKosB,IAAiB9J,EAC5D,IAAKnb,EAAI,EAAGA,EAAIilB,EAAapsB,OAAQmH,IACjCulB,EAAeN,EAAajlB,GAAG+lB,cACH,mBAAjBR,KACPN,EAAajlB,GAAG+lB,cAAgBd,EAAajlB,GAAG2W,YAEpD7e,EAAEmtB,EAAajlB,IAAIoF,UAAU,gBAAmBmgB,EAAgB,UAGxEZ,GAAgB/d,cAAc,SAAU5D,GAChCie,GAAqB,SAAX7Z,GAAqBgf,QAAqB,UAAXhf,IAC7Csd,EAAW9rB,QAAmB,SAAXwO,EAAoB,SAAW,UAC9C6Z,GAAqB,UAAX7Z,IACNwd,EAAa/rB,OAAS,GACtBosB,EAAa7f,UAAU,IAEvByf,EAAYhsB,OAAS,GACrBmsB,EAAY5f,UAAU,QA7PtC,GAAI5C,GAAWC,EAASX,EAAgCG,EAAgBD,EAAa0iB,EAAYC,EAAiBC,EAAcC,EAAaC,EAAkBC,EAAmB9e,EAAWgb,EAAQqE,EAAeN,EAAaC,EAAc7O,EAAW+O,EAAqBD,EAAsBS,EAAeC,EAAgBR,EAAYC,EAA3S3iB,IACrC5K,GAAEqB,UAAUiZ,GAAG7a,EAAIwH,YAAYC,MAAO,SAAUgE,GAC5C,GAAIzL,EAAI0L,iBAAkB,CACtB,GAAIgB,GAASnM,EAAEkL,EAAEiB,OAEb1M,GAAI0L,iBAAiBkB,GAAGF,EAAO,KAC/BA,EAAOC,QAAQ,aAAaC,GAAG5M,EAAI0L,mBACnCgB,EAAOxL,SAAS,aAChBwL,EAAOxL,SAAS,kBAChBwL,EAAOxL,SAAS,kBAChBwL,EAAOC,QAAQ,4CAA4CrL,OAAS,GAEpEtB,EAAIkuB,cAAcluB,EAAI0L,qBAsP9BwhB,GACA3sB,EAAE2sB,GAAYrS,GAAG7a,EAAIwH,YAAYC,MAAO+D,GACxCjL,EAAE2sB,GAAYrS,GAAG7a,EAAIwH,YAAYI,KAAMuE,GACvC5L,EAAE2sB,GAAYrS,GAAG7a,EAAIwH,YAAYK,IAAKwG,KAGtC9N,EAAEqB,UAAUiZ,GAAG7a,EAAIwH,YAAYC,MAAO,0BAA2B+D,GACjEjL,EAAEqB,UAAUiZ,GAAG7a,EAAIwH,YAAYI,KAAM,0BAA2BuE,GAChE5L,EAAEqB,UAAUiZ,GAAG7a,EAAIwH,YAAYK,IAAK,0BAA2BwG,KAIvErO,EAAImuB,aAAe,SAAUnjB,EAAI8jB,EAAK5uB,GAQlC,GAPA8K,EAAKzK,EAAEyK,GACkB,IAArB0Z,UAAUpjB,QACkB,kBAAjBojB,WAAU,KACjBxkB,EAAW4uB,GAID,IAAd9jB,EAAG1J,SACH0J,EAAG1J,OAAS,IAAG0J,EAAKzK,EAAEyK,EAAG,KACxBA,EAAG9J,SAAS,cAAe8J,EAAG9J,SAAS,oBAA5C,CACK4tB,IACkDA,EAA/C9jB,EAAGhK,KAAK,2BAA2BM,OAAS,EAAS,QAC9C,OAEf,IAAIytB,GAAkB/jB,EAAGhK,KAAK,qBAAuB8tB,EACrD,IAA+B,IAA3BC,EAAgBztB,OAApB,CACA,CAAaytB,EAAgB7tB,SAAS,6BAA+BlB,EAAIP,OAAO+E,sBAChFwG,EAAG3J,QAAQ,QAAQ+G,SAAS,mBAAmBC,YAAY,iBAC3D0mB,EAAgB3mB,SAAS,0BACzB,IAGIK,GAHAmb,EAAUmL,EAAgB/c,SAAS,KACnCgd,EAAuBD,EAAgBhb,aACvCrF,EAAoB,UAARogB,GAAmBE,EAAuBA,CAE1D,IAAIpL,EAAQtiB,OAAS,EAAG,CACpB,IAAKmH,EAAI,EAAGA,EAAImb,EAAQtiB,OAAQmH,IAChB,UAARqmB,EACAvuB,EAAEqjB,EAAQnb,IAAIoF,UAAU,gBAAoB+V,EAAQnb,GAAG2W,WAAc,WAGrE7e,EAAEqjB,EAAQnb,IAAIR,IAAI,UAAW2b,EAAQtiB,OAASmH,GAAGoF,UAAU,gBAAkBmhB,EAAuBpL,EAAQnb,GAAG4L,YAAcuP,EAAQnb,GAAG2W,YAAc,UAG9J,EAAiBwE,EAAQ,GAAG5B,YAGhC,IADAhX,EAAG5C,SAAS,iBACPK,EAAI,EAAGA,EAAImb,EAAQtiB,OAAQmH,IAC5BlI,EAAEqjB,EAAQnb,IAAIoF,UAAU,eAAiB,EAAc,UAE3D7C,GAAGhK,KAAK,qBAAqB6M,UAAU,eAAiBa,EAAY,WAAWW,cAAc,WACzFrE,EAAG3J,QAAQ,UACPnB,GAAUA,EAAS+uB,KAAKjkB,EAAG,MAEnChL,EAAI0L,iBAAmBV,KAE3BhL,EAAIkuB,cAAgB,SAAUljB,EAAI9K,GAc9B,QAASgvB,KACLlvB,EAAIgtB,eAAgB,EACpBpJ,EAAQ/V,UAAU,IAClB7C,EAAG3J,QAAQ,UACPnB,GAAUA,EAAS+uB,KAAKjkB,EAAG,IAC3BmkB,GAAS7U,aAAa6U,GAjB9B,GADAnkB,EAAKzK,EAAEyK,GACW,IAAdA,EAAG1J,QACF0J,EAAG9J,SAAS,mBAAjB,CACA,GAAI4tB,GAAM9jB,EAAGhK,KAAK,4BAA4BE,SAAS,0BAA4B,QAAU,OACzF6tB,EAAkB/jB,EAAGhK,KAAK,4BAA4BqH,YAAY,2BAElEub,GADSmL,EAAgB7tB,SAAS,6BAA+BlB,EAAIP,OAAO+E,sBAClEuqB,EAAgB/c,SAAS,MACnCgd,EAAuBD,EAAgBhb,YAC3C/T,GAAIgtB,eAAgB,EACpBhiB,EAAG3J,QAAQ,SACX2J,EAAG3C,YAAY,mBAAmBD,SAAS,gBAE3C,IAAI+mB,EAQJnkB,GAAGhK,KAAK,qBAAqB6M,UAAU,wBAAgCwB,cAAc6f,GACrFC,EAAUptB,WAAWmtB,EAAiB,IAEtC,KAAK,GAAIzmB,GAAI,EAAGA,EAAImb,EAAQtiB,OAAQmH,IAE5BlI,EAAEqjB,EAAQnb,IAAIoF,UADN,UAARihB,EACwB,gBAAmBlL,EAAQnb,GAAG2W,WAAc,UAG5C,gBAAkB4P,EAAuBpL,EAAQnb,GAAG4L,YAAcuP,EAAQnb,GAAG2W,YAAc,WAEvH7e,EAAEqjB,EAAQnb,IAAIR,KAAK8E,KAAK,OAExB/M,GAAI0L,kBAAoB1L,EAAI0L,iBAAiB,KAAOV,EAAG,KAAIhL,EAAI0L,iBAAmB7I,UAE1F7C,EAAIovB,eAAiB,SAAUpkB,EAAI9K,GAE/B,GADA8K,EAAKzK,EAAEyK,GACW,IAAdA,EAAG1J,OAAP,CACI0J,EAAG1J,OAAS,IAAG0J,EAAKzK,EAAEyK,EAAG,KAC7BhL,EAAI0L,iBAAmB7I,OACvBmI,EAAG3J,QAAQ,UACX2J,EAAG/C,KAAKtH,OAAQqK,EAAGuc,cAAgB,MACnC,EAAiBvc,EAAG,GAAGgX,WACvBhX,EAAG/C,KAAKtH,OAAQ,QAAWyH,SAAS,0BAA0BiH,cAAc,WAGxE,GAFArE,EAAG3J,QAAQ,WACPnB,GAAUA,EAAS+uB,KAAKjkB,EAAG,IAC3BA,EAAG2B,QAAQ,iBAAiBrL,OAAS,EAAG,CACxC,GAAIjB,GAAc2K,EAAG2B,QAAQ,iBAAiB,GAAGpL,cAC7C8tB,EAAerkB,EAAG,GAAGskB,kBACrBjvB,IAAuC,mBAAjBgvB,IAA8BhvB,EAAYkvB,WAAWF,OAG/ErkB,GAAG0E,UAGX,IAAIhB,GAAY,OAChB1D,GAAGhK,KAAK,qBAAqB6M,UAAU,eAAiBa,EAAY,WAOxE1O,EAAIwvB,eAAiB,SAAUC,GAU3B,MATAA,GAAoBlvB,EAAEkvB,GACW,IAA7BA,EAAkBnuB,SAAcmuB,EAAoBlvB,EAAE,yBAC1DkvB,EAAkBC,YAAY,mBAE1BD,EAAkBpuB,QADlBouB,EAAkBvuB,SAAS,mBACD,OAGA,SAEvBuuB,GAEXzvB,EAAI2vB,aAAe,SAAUF,GAKzB,MAJAA,GAAoBlvB,EAAEkvB,GACW,IAA7BA,EAAkBnuB,SAAcmuB,EAAoBlvB,EAAE,yBAC1DkvB,EAAkBrnB,SAAS,mBAC3BqnB,EAAkBpuB,QAAQ,QACnBouB,GAEXzvB,EAAI4vB,cAAgB,SAAUH,GAK1B,MAJAA,GAAoBlvB,EAAEkvB,GACW,IAA7BA,EAAkBnuB,SAAcmuB,EAAoBlvB,EAAE,yBAC1DkvB,EAAkBpnB,YAAY,mBAC9BonB,EAAkBpuB,QAAQ,SACnBouB,GAEXzvB,EAAI6vB,aAAe,WAGf,QAASrkB,GAAiBC,GACtBP,GAAU,EACVD,GAAY,EACZ6kB,EAAyB,eAAXrkB,EAAEG,KAAwBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,MAErE+jB,EAAYxvB,EAAEC,MAAM6R,SACpB2d,EAAeD,EAAU1d,SAASrR,KAAK,MACvCyuB,EAAoBM,EAAUpjB,QAAQ,aACtClB,EAAE2B,iBACFpN,EAAI8oB,eAAiB9oB,EAAIgtB,eAAgB,EAE7C,QAAS7gB,GAAgBV,GACrB,GAAKR,GAAc8kB,EAAnB,CACA,GACI/jB,IADmB,cAAXP,EAAEG,KAAuBH,EAAEI,cAAc,GAAGC,MAAQL,EAAEK,MAC3C,cAAXL,EAAEG,KAAuBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,MAC7Dd,KACD6kB,EAAU3nB,SAAS,WACnBqnB,EAAkBrnB,SAAS,oBAC3B6nB,EAASF,EAAU,GAAGG,UACtBC,EAASJ,EAAU1d,SAAS1R,SAAWovB,EAAU,GAAGG,UAAYH,EAAUpvB,SAC1EyvB,EAAkBL,EAAU,GAAGnvB,cAEnCsK,GAAU,EAEVO,EAAE2B,iBACF3B,EAAE0B,qBAAsB,EACxB1C,EAAcuB,EAAQ8jB,CACtB,IAAIphB,GAAYjE,GACCwlB,EAAbvhB,IAAqBA,GAAauhB,GAClCvhB,EAAYyhB,IAAQzhB,EAAYyhB,GACpCJ,EAAUliB,UAAU,iBAAmBa,EAAY,SAEnDoT,EAAeC,EAAclf,OAE7BmtB,EAAavhB,KAAK,WACd,GAAI4hB,GAAY9vB,EAAEC,KAClB,IAAI6vB,EAAU,KAAON,EAAU,GAA/B,CACA,GAAIO,GAAkBD,EAAU,GAAGH,UAC/BK,EAAkBF,EAAU1vB,SAC5B6vB,EAAkBT,EAAU,GAAGG,UAAYxhB,CAE1C8hB,IAAmBF,EAAkBC,EAAkB,GAAMR,EAAUre,QAAU2e,EAAU3e,SAC5F2e,EAAUxiB,UAAU,mBAAoBuiB,EAAiB,SACzDrO,EAAcsO,EACdvO,EAAejf,QAEUytB,EAAkBC,EAAkB,GAAvDC,GAA6DT,EAAUre,QAAU2e,EAAU3e,SACjG2e,EAAUxiB,UAAU,kBAAkB,EAAkB,SACxDkU,EAAclf,OACTif,IAAcA,EAAeuO,IAGlC9vB,EAAEC,MAAMqN,UAAU,4BAI9B,QAASQ,GAAe5C,GAEpB,GADAzL,EAAI8oB,eAAiB9oB,EAAIgtB,eAAgB,GACpC/hB,IAAcC,EAGf,MAFAD,IAAY,OACZC,GAAU,EAGdO,GAAE2B,iBACF4iB,EAAaniB,UAAU,IACvBkiB,EAAU1nB,YAAY,WACtBonB,EAAkBpnB,YAAY,mBAC9B,IAAIhI,GAAaowB,EAAUC,CACvB3O,KACAgO,EAAUhO,YAAYA,GACtBgO,EAAU1uB,QAAQ,SAElBygB,IACAiO,EAAUjO,aAAaA,GACvBiO,EAAU1uB,QAAQ,UAEjB0gB,GAAeD,IAAiB2N,EAAkBvuB,SAAS,kBAC5Db,EAAcovB,EAAkB,GAAGluB,cACnCkvB,EAAWV,EAAU,GAAGT,mBACxBoB,EAAW5O,EAAeA,EAAa,GAAGwN,mBAAqBvN,EAAY,GAAGuN,mBAC1EjvB,GAAaA,EAAYswB,SAASF,EAAUC,IAEpD3O,EAAcD,EAAejf,OAC7BoI,GAAY,EACZC,GAAU,EAtFd,GAAID,GAAWC,EAAS4kB,EAAarlB,EAAaslB,EAAWK,EAAiBJ,EAAcC,EAAQE,EAAQpO,EAAaD,EAAc2N,CAwFvIlvB,GAAEqB,UAAUiZ,GAAG7a,EAAIwH,YAAYC,MAAO,yCAA0C+D,GAC5ExL,EAAI0H,QAAQC,OACZpH,EAAEqB,UAAUiZ,GAAG7a,EAAIwH,YAAYI,KAAM,yCAA0CuE,GAC/E5L,EAAEqB,UAAUiZ,GAAG7a,EAAIwH,YAAYK,IAAK,yCAA0CwG,KAG9E9N,EAAEqB,UAAUiZ,GAAG7a,EAAIwH,YAAYI,KAAMuE,GACrC5L,EAAEqB,UAAUiZ,GAAG7a,EAAIwH,YAAYK,IAAKwG,KAS5CrO,EAAI8d,iBAAmB,SAAUjP,GAC7B,GAAI8D,GAAOpS,EAAEsO,EACb,IAAoB,IAAhB8D,EAAKrR,OAAT,CACA,GAAIsvB,EAEAA,GADAje,EAAK/F,GAAG,iBACE+F,EAGAA,EAAK3R,KAAK,iBAED,IAAnB4vB,EAAQtvB,QAEZsvB,EAAQniB,KAAK,WACT,GAAIoiB,GAActwB,EAAEC,MAEhBswB,EAAUD,EAAY7vB,KAAK,SAC/B,IAAuB,IAAnB8vB,EAAQxvB,OAAZ,CAEA,GAAIyvB,GAASD,EAAQ,EACrB,IAAsB,IAAlBC,EAAOzvB,OAAX,CAGA,IAAK,GADD0vB,MACKvoB,EAAI,EAAGA,EAAIsoB,EAAOzvB,OAAQmH,IAC3BsoB,EAAOtoB,GAAGwoB,UAAUD,EAAUvnB,KAAKsnB,EAAOtoB,GAAGyoB,YAAY7Z,OAGjE,IAAI8Z,GAAYN,EAAY7vB,KAAK,cACjC,IAAyB,IAArBmwB,EAAU7vB,OACVuvB,EAAY7vB,KAAK,eAAeiM,OAAO,2BAA6B+jB,EAAU3Y,KAAK,MAAQ,cAE1F,CACD,GAAI+Y,GAAeD,EAAU/Y,MAC7B,IAAI+Y,EAAUjwB,SAAS,sBACnB,IAAKuH,EAAI,EAAGA,EAAIsoB,EAAOzvB,OAAQmH,IAC3BsoB,EAAOtoB,GAAGwoB,SAAWF,EAAOtoB,GAAGyoB,YAAY7Z,SAAW+Z,EAAa/Z,WAGvE8Z,GAAU/Y,KAAK4Y,EAAU3Y,KAAK,cAO9CrY,EAAIqxB,qBAAuB,SAAUN,EAAQO,EAAQ5f,GACjDqf,EAASxwB,EAAEwwB,EACX,IAAIF,GAAcE,EAAOpkB,QAAQ,gBACZ,oBAAV+E,GACPqf,EAAO9jB,OAAOqkB,GAGd/wB,EAAE+wB,GAAQxP,aAAaiP,EAAO/vB,KAAK,UAAUoJ,GAAGsH,IAEpD1R,EAAI8d,iBAAiB+S,EACrB,IAAIU,GAAaV,EAAY7vB,KAAK,UAAUkH,KAAK,QAC7CwhB,EAASnpB,EAAE,6CAA+CgxB,EAAa,MAAMjwB,OAAS,CACtFooB,IACA1pB,EAAIwxB,gBAAgBX,GAAa,IAGzC7wB,EAAIwxB,gBAAkB,SAAUX,EAAaY,GA6LzC,QAASC,GAAazoB,GAClB,GAAI5I,EAAa,CACb,GAAIsxB,GAAsB3xB,EAAIK,YAAYE,EAAE0I,GAAWjI,KAAK,kBACxD8W,MAAOE,EACPiI,SAAU2R,EACVjxB,OAAQkxB,GAAqBhvB,OAC7BkV,aAAc,SAAUP,EAAO9F,EAAOogB,GAClC,MAAIA,GAAK1Z,KAAKH,cAAc9W,QAAQqW,EAAMH,OAAOY,gBAAiB,GAAW,GACtE,IAGf1X,GAAE0I,GAAWmQ,KAAgB,UAAX2Y,EAAqB,SAAU,mBAAoB,WAC7DJ,GAAuBA,EAAoBrgB,SAASqgB,EAAoBrgB,YAGpF/Q,EAAE0I,GAAW4R,GAAG,SAAU,eAAiBmX,EAAY,KAAM,WACzD,GAAI7c,GAAQ3U,KACR4W,EAAQjC,EAAMiC,MACd6a,IACJ,IAAmB,aAAf9c,EAAMvJ,KAEN,IAAK,GAAInD,GAAI,EAAGA,EAAIsoB,EAAO7gB,QAAQ5O,OAAQmH,IAAK,CAC5C,GAAI6oB,GAASP,EAAO7gB,QAAQzH,EACxB6oB,GAAOla,QAAUA,IACjBka,EAAOL,SAAW9b,EAAM+c,SAExBZ,EAAOL,UACPgB,EAAWxoB,KAAK6nB,EAAOJ,YAAY7Z,YAK3C4a,IAAcpB,EAAY7vB,KAAK,iBAAmBoW,EAAQ,MAAMgB,QAChE2Y,EAAO3Z,MAAQA,CAGnB0Z,GAAQzvB,QAAQ,UAChBwvB,EAAY7vB,KAAK,eAAeoX,KAAK6Z,EAAW5Z,KAAK,OACjD8Z,GAA8B,UAAdC,IACD,UAAXL,EAAoB/xB,EAAIkN,WAAWmb,GAClCrf,EAAKtG,OAAO4M,UAI7B,QAAS+iB,GAAS5mB,GACd,GAAIkH,GAAOlH,EAAE6mB,OAAO3f,IAChBA,GAAK8J,OAASxc,GACdyxB,EAAa/e,EAAK1J,WA1O1B,GADA4nB,EAActwB,EAAEswB,GACW,IAAvBA,EAAYvvB,OAAhB,CAGA,GAAI0H,GAAO6nB,EAAYlkB,QAAQ,IAAM3M,EAAIP,OAAO+G,UAChD,IAAoB,IAAhBwC,EAAK1H,SACT0H,EAAOA,EAAK,GAAGK,QACf,CAGA,GAAI0oB,GAASlB,EAAY3oB,KAAK,eACzB6pB,KAAQA,EAAS/xB,EAAIP,OAAOmF,mBAAqB,QAAU,OAEhE,IAAI2tB,GAAkB1B,EAAY1X,UAC9BqZ,EAAYD,EAAgBC,WAAa3B,EAAY7vB,KAAK,eAAeoX,OACzEqa,EAAWF,EAAgBE,UAAYzyB,EAAIP,OAAOkF,oBAClD+tB,EAAYH,EAAgBI,gBAAkBJ,EAAgBE,UAAYzyB,EAAIP,OAAOqF,0BACrFqtB,EAAgDtvB,SAAjC0vB,EAAgBJ,aAA6BI,EAAgBJ,aAAenyB,EAAIP,OAAOuF,wBACtG4tB,EAAYL,EAAgBK,WAAa5yB,EAAIP,OAAOozB,qBACpDC,EAAcP,EAAgBO,aAAe9yB,EAAIP,OAAOszB,uBACxD1yB,EAAckyB,EAAgBlyB,YAC9BwxB,EAAoBU,EAAgBV,kBAGpCd,EAASF,EAAY7vB,KAAK,UAAU,GACpC8vB,EAAUvwB,EAAEwwB,GACZiC,EAAclC,EAAQ3X,SAC1B,MAAI4X,EAAOzK,UAAYuK,EAAY3vB,SAAS,aAAe4vB,EAAQ5vB,SAAS,aAA5E,CASA,IAAK,GADDowB,GAAQ2B,EAAgBC,EAAaC,EAAYC,EAAaC,EAAuCC,EAAsBC,EAAeC,EAAaC,EAAiBC,EALxK1b,KACA2b,GAAK,GAAK1nB,OAAQC,UAClBkmB,EAAYrB,EAAO6C,SAAW,WAAa,QAC3C5B,EAAYI,EAAY,IAAMuB,EAC9BpC,EAAaR,EAAOtU,KAEfhU,EAAI,EAAGA,EAAIsoB,EAAOzvB,OAAQmH,IAC/B6oB,EAAS/wB,EAAEwwB,EAAOtoB,IACd6oB,EAAO,GAAGhL,WACdoN,EAAapC,EAAOnY,UACpB+Z,EAAcQ,EAAWR,aAAeF,EAAYE,YACpDC,EAAaO,EAAWP,YAAcH,EAAYG,WAClDF,EAAiBC,GAAeC,GAA4B,aAAdf,EAC1CpyB,EAAIP,OAAOsQ,WAAUkjB,EAAiBC,GAAeC,GACzDK,EAAcE,EAAWF,YACzBC,EAAkBC,EAAWG,YAC7BT,EAAc9B,EAAOjf,OAAO,YAAY,GACxCghB,EAAmBD,GAAeA,EAAYjN,MAC9CmN,GAAuB,EACnBF,GACIA,IAAgBG,IAChBD,GAAuB,EACvBC,EAAgBH,GAGxBpb,EAAOvO,MACH2N,MAAOka,EAAO,GAAGla,MACjBgB,KAAMkZ,EAAO,GAAGJ,YAAY7Z,OAC5B4Z,SAAUK,EAAO,GAAGL,SACpBtY,MAAOya,EACPU,WAAYT,EACZU,eAAgBT,EAChBjJ,MAAO6I,EACPc,KAAMb,EACN/M,MAAOoN,EACPxlB,UAAWylB,EACXnN,SAAUgL,EAAO,GAAGhL,SACpB8L,UAAWA,EACXuB,GAAIA,EACJM,SAAUhB,EACViB,SAAwB,aAAd9B,EACVJ,UAAWA,EACXmC,KAAM3zB,KACNuP,SAAU/P,EAAIP,OAAOsQ,WAMxB/P,GAAIuH,mBAAmB6sB,kBACxBp0B,EAAIuH,mBAAmB6sB,gBAAkB/sB,EAAG8Y,QAAQngB,EAAIP,OAAOmyB,yBAC3D,klBAoBR,IAAIA,GAA0B5xB,EAAIuH,mBAAmB6sB,gBAEjDC,EAAa,EACjB,KAAKh0B,EACD,IAAK,GAAIkW,GAAI,EAAGA,EAAIyB,EAAO1W,OAAQiV,IAC/B8d,GAAczC,EAAwB5Z,EAAOzB,GAKhDvW,GAAIuH,mBAAmB+sB,oBACxBt0B,EAAIuH,mBAAmB+sB,kBAAoBjtB,EAAG8Y,QAAQngB,EAAIP,OAAO80B,2BAC7D,6KAQR,IAamCC,GAb/BC,EAAaz0B,EAAIuH,mBAAmB+sB,mBACpC9B,UAAWA,EACXC,SAAUA,EACVC,UAAWA,EACXX,OAAQA,EACRe,YAAaA,EACb4B,QAAoB,UAAX3C,EACT4C,OAAmB,SAAX5C,EACR6C,aAAyB,UAAX7C,EAAqB/xB,EAAIP,OAAOoF,8BAA8BhF,QAAQ,iBAAkB6yB,GAAa1yB,EAAIP,OAAOiF,wBAAwB7E,QAAQ,gBAAiB4yB,KAK/KoC,EAAW,GAAIC,EAAY,EAChB,UAAX/C,GACAyC,EAAe,SACX3D,EAAYlkB,QAAQ,mBAAmBrL,OAAS,IAAGkzB,EAAe,WAClE3D,EAAYlkB,QAAQ,iBAAiBrL,OAAS,IAAGkzB,EAAe,SACpEM,EAAYjE,EAAYlkB,QAAQ,SAASzL,SAAS,cAAgB,aAAe,GACjF2zB,EAAYhE,EAAYlkB,QAAQ,SAASzL,SAAS,aAAgB,YAAe,UAAYszB,GAG7FA,EAAe,OAKnB,IAGIO,GAAsBC,EAHtB/0B,EAAW,gBAAkB+xB,EAE7BiD,EAAwD,mBAAlCpE,GAAYvQ,KAAK,aAA+BtgB,EAAIP,OAAOsF,qBAA0D,SAAlC8rB,EAAYvQ,KAAK,cAA0B,GAAO,CAG3J2U,KACAF,EAAuBlE,EAAYvQ,KAAK,0BAA4B,SACpE0U,EAAkBnE,EAAYvQ,KAAK,qBAAuB,SAG9D,IA2BI+H,GA3BA6M,EAAkB,+EAAiFvB,EAAK,iGAEzCoB,EAAuB,wFAGxBC,EAAkB,mDAIhFG,GACkB,YAAjBX,EAA6BC,EAAa,IAC3C,wCACuBx0B,EAAW,uBAAyBsxB,EAAa,mCAAqCsD,EAAW,IAAMC,EAAY,MACnH,UAAjBN,EAA2BC,EAAa,KACxCQ,EAAeC,EAAgB,IACrC,kCACyB,WAAjBV,EAA4BC,EAAa,IACjD,iCAAmCp0B,EAAc,eAAiB,IAAM,sBAAwBszB,EAAK,KAAOf,EAAY,SAAWA,EAAY,IAAM,kBAExIvyB,EAAc,GAAKg0B,GAChC,mDA4DW,WAAXtC,GACIN,GACApJ,EAAQ9nB,EAAE,mCACV8nB,EAAMsE,KAAKwI,KAGX9M,EAAQroB,EAAIqoB,MACR,2DAA6D2J,EAAY,oCAEjEmD,EACJ,gBAGR9M,EAAQ9nB,EAAE8nB,IAEdroB,EAAIkd,SAASmL,EAAMrnB,KAAK,UACxB0wB,EAAarJ,KAGb9nB,EAAEqB,UAAUwX,KAAK,WAAY,qBAAsBiZ,GACnDrpB,EAAKtG,OAAOuN,MACRI,QAAS8kB,EACT5kB,OAAQkhB,GAAW,EAAO5uB,aAStC,IAAIuyB,GAAc,SAAUC,EAAW51B,GACnC,GAAIiJ,IACA4sB,KAAM,EACN30B,OAAQ,GACRsB,OAAO,EACPszB,wBAAyB,EAE7B91B,GAASA,KACT,KAAK,GAAIsJ,KAAOL,GACe,mBAAhBjJ,GAAOsJ,KACdtJ,EAAOsJ,GAAOL,EAASK,GAK/B,IAAIysB,GAAKh1B,IACTg1B,GAAGH,UAAY90B,EAAE80B,GACjBG,EAAG/1B,OAASA,EACZ+1B,EAAG1d,MAAQrY,EAAOqY,MACdrY,EAAOwgB,WACwB,gBAApBxgB,GAAOwgB,SAAuBuV,EAAGvV,SAAW5Y,EAAG8Y,QAAQ1gB,EAAOwgB,UACrC,kBAApBxgB,GAAOwgB,WAAyBuV,EAAGvV,SAAWxgB,EAAOwgB,WAEzEuV,EAAG/b,YAAc+b,EAAGH,UAAU1oB,QAAQ,gBAGtC,IAAI8oB,EACqC,oBAA9BD,GAAG/1B,OAAOg2B,gBACjBA,EAAkBD,EAAG/1B,OAAOg2B,iBAG5BA,GAAkB,EACdz1B,EAAI0B,OAAOkV,KAAO5W,EAAI0B,OAAOg0B,UAAU1rB,MAAM,KAAK,GAAK,IACvDyrB,GAAkB,IAK1BD,EAAGG,GAAKH,EAAG/1B,OAAOk2B,GAAKp1B,EAAEi1B,EAAG/1B,OAAOk2B,IAAMH,EAAGH,UAAUrjB,SAAS,MAC1C,IAAjBwjB,EAAGG,GAAGr0B,SACNk0B,EAAGH,UAAUpoB,OAAO,aACpBuoB,EAAGG,GAAKH,EAAGH,UAAUrjB,SAAS,OAIlCwjB,EAAG5sB,YACH4sB,EAAGI,mBAGHJ,EAAGK,eAAiBj0B,SAAS4c,cAAc,MAG3CgX,EAAGM,aAAe,KAGlBN,EAAGO,SAAWn0B,SAASo0B,yBAGvBR,EAAG3c,YAAc,SAAUod,EAASC,GAChCV,EAAGW,gBAGH,KAAK,GAAI1tB,IAFQwtB,EAAQ,GACTA,EAAQA,EAAQ30B,OAAS,GAC5B,GAAGmH,EAAIwtB,EAAQ30B,OAAQmH,IAChC+sB,EAAGW,cAAc1sB,KAAK+rB,EAAG1d,MAAMme,EAAQxtB,IAEb,oBAAnBytB,KAAgCA,GAAiB,GACxDA,IACAV,EAAG/b,YAAY,GAAGhZ,UAAY,GAElC+0B,EAAGY,UAEPZ,EAAG7d,YAAc,WACb6d,EAAGW,cAAgB,WACZX,GAAGW,cACVX,EAAGY,SAGP,IAAIC,GAAYC,EAAeC,EAAYC,EAAWC,EAAmCC,EAArBC,EAAkB,EAClFC,EAA4C,kBAArBpB,GAAG/1B,OAAOkB,MAgWrC,OA7VA60B,GAAGqB,YAAc,WACb,GAAI/e,GAAQ0d,EAAGW,eAAiBX,EAAG1d,KAEnC,IADAue,EAAab,EAAG/b,YAAY,GAAG7Y,aAC3Bg2B,EAAe,CACfF,EAAa,EACblB,EAAGsB,UACH,KAAK,GAAIruB,GAAI,EAAGA,EAAIqP,EAAMxW,OAAQmH,IAAK,CACnC,GAAIsuB,GAAavB,EAAG/1B,OAAOkB,OAAOmX,EAAMrP,GACxCiuB,IAAcK,EACdvB,EAAGsB,QAAQrtB,KAAKstB,QAIpBL,GAAa5e,EAAMxW,OAASk0B,EAAG/1B,OAAOkB,OAAS60B,EAAG/1B,OAAO61B,KACzDgB,EAAgBlqB,KAAK4qB,KAAKX,EAAab,EAAG/1B,OAAOkB,QACjD41B,EAAaf,EAAG/1B,OAAO82B,YAA8B,EAAhBD,EACrCE,EAAYhB,EAAG/1B,OAAO+2B,WAAaF,EACnCG,EAAgBH,EAAgBC,EAAaC,EAC7CG,EAAkBJ,EAAa,EAAIf,EAAG/1B,OAAOkB,MAG7C80B,IACAD,EAAGG,GAAG1tB,KAAKtH,OAAQ+1B,EAAa,QAKxClB,EAAGyB,OAAS,SAAUxU,EAAOyU,GACrBzU,IAAO+S,EAAGM,aAAe,KAE7B,IAAIr1B,KAAc+0B,EAAGH,UAAU,GAAGxK,wBAAwB/D,IAAM0O,EAAG/b,YAAY,GAAGoR,wBAAwB/D,IAG1G,IAF8B,mBAAnBoQ,KAAgCz2B,EAAYy2B,GAE/B,OAApB1B,EAAGM,cAAyB1pB,KAAKC,IAAI5L,EAAY+0B,EAAGM,cAAgBa,IAAqBlB,GAAoBD,EAAG/b,YAAY,GAAGhZ,UAAY41B,GAAcb,EAAG/b,YAAY,GAAG/Y,aAA/K,CACI80B,EAAGM,aAAer1B,CAMtB,IACI02B,GAAWC,EADXtf,EAAQ0d,EAAGW,eAAiBX,EAAG1d,MACXuf,EAAwB,EAAGC,EAAuB,CAC1E,IAAIV,EAAe,CACf,GAAiBrgB,GAAGwgB,EAAhBQ,EAAU,CAGd,KAFAZ,EAAkBN,EAEb9f,EAAI,EAAGA,EAAIif,EAAGsB,QAAQx1B,OAAQiV,IAC/BwgB,EAAavB,EAAGsB,QAAQvgB,GACC,mBAAd4gB,KACHI,EAAUR,GAAct2B,EAAyB,EAAb41B,EAAiBb,EAAG/1B,OAAO81B,wBAAyB4B,EAAY5gB,EACnG8gB,GAAyBN,GAGX,mBAAZK,MACHG,EAAUR,GAAct2B,EAAyB,EAAb41B,EAAiBb,EAAG/1B,OAAO81B,yBAA2Bhf,IAAMif,EAAGsB,QAAQx1B,OAAS,KAAG81B,EAAU7gB,EAAI,GACzI+gB,GAAwBP,GAE5BQ,GAAWR,CAEfK,GAAUhrB,KAAK4b,IAAIoP,EAAStf,EAAMxW,YAGlC61B,IAAa/1B,SAASX,EAAY+0B,EAAG/1B,OAAOkB,QAAU41B,GAAcf,EAAG/1B,OAAO61B,KAC9D,EAAZ6B,IACAA,EAAY,GAEhBC,EAAUhrB,KAAK4b,IAAImP,EAAYV,EAAejB,EAAG/1B,OAAO61B,KAAMxd,EAAMxW,OAGxE,IAAIk2B,EACJhC,GAAGh0B,UAAW,CACd,KAAK,GAAIiH,GAAI0uB,EAAeC,EAAJ3uB,EAAaA,IAAK,CACtC,GAAIqpB,GAAMpgB,CAEVA,GAAQ8jB,EAAG1d,MAAM3W,QAAQ2W,EAAMrP,IAE3BA,IAAM0uB,IAAW3B,EAAGiC,iBAAmB/lB,GACvCjJ,IAAM2uB,EAAU,IAAG5B,EAAGkC,eAAiBhmB,GACvCA,IAAU8jB,EAAG1d,MAAMxW,OAAS,IAAGk0B,EAAGh0B,UAAW,GAG7Cg0B,EAAG5sB,SAAS8I,GACZogB,EAAO0D,EAAG5sB,SAAS8I,IAIf8jB,EAAGK,eAAe1U,UADlBqU,EAAGvV,SAC2BuV,EAAGvV,SAASnI,EAAMrP,IAAKiJ,MAAOA,IAEvD8jB,EAAG/1B,OAAOk4B,WACenC,EAAG/1B,OAAOk4B,WAAWjmB,EAAOoG,EAAMrP,IAGlCqP,EAAMrP,GAExCqpB,EAAO0D,EAAGK,eAAe3N,WAAW,GAChCsN,EAAG/1B,OAAOwC,QAAOuzB,EAAG5sB,SAAS8I,GAASogB,IAE9CA,EAAKxC,mBAAqB5d,EAGtBjJ,IAAM0uB,IAEFK,EADAZ,EACcS,EAGC5uB,EAAI+sB,EAAG/1B,OAAOkB,OAAS60B,EAAG/1B,OAAO61B,MAGxDxD,EAAKhkB,MAAMgZ,IAAM0Q,EAAc,KAG3BhC,EAAG/1B,OAAOm4B,oBAAoBpC,EAAG/1B,OAAOm4B,mBAAmBpC,EAAI1D,GAGnE0D,EAAGO,SAAS8B,YAAY/F,GAMvB2D,IAEGD,EAAGG,GAAG,GAAG7nB,MAAMnN,OADfi2B,EACwBU,EAAuB,KAGvB7uB,EAAI+sB,EAAG/1B,OAAOkB,OAAS60B,EAAG/1B,OAAO61B,KAAO,MAMpEE,EAAG/1B,OAAOq4B,eAAetC,EAAG/1B,OAAOq4B,cAActC,EAAIA,EAAGO,UAC5DP,EAAGG,GAAG,GAAGxU,UAAY,GAEjBqU,EAAG/1B,OAAOs4B,qBAAqBvC,EAAG/1B,OAAOs4B,oBAAoBvC,EAAIA,EAAGO,UACxEP,EAAGG,GAAG,GAAGkC,YAAYrC,EAAGO,UACpBP,EAAG/1B,OAAOu4B,oBAAoBxC,EAAG/1B,OAAOu4B,mBAAmBxC,EAAIA,EAAGO,UAExC,mBAAnBmB,IAAkCzU,GACzC+S,EAAG/b,YAAYhZ,UAAUy2B,EAAgB,KAIjD1B,EAAGyC,aAAe,SAAUvmB,GACxB,GAAIA,EAAQ8jB,EAAG1d,MAAMxW,OAAQ,OAAO,CAEpC,IAAiB42B,GAAbX,EAAU,CACd,IAAIX,EACA,IAAK,GAAInuB,GAAI,EAAOiJ,EAAJjJ,EAAWA,IACvB8uB,GAAW/B,EAAGsB,QAAQruB,OAI1B8uB,GAAU7lB,EAAQ8jB,EAAG/1B,OAAOkB,MAIhC,OAFAu3B,GAAU1C,EAAGH,UAAU,GAAGnF,UAC1BsF,EAAGyB,QAAO,EAAMiB,EAAUX,EAAUn2B,SAASo0B,EAAG/b,YAAYxR,IAAI,eAAgB,MACzE,GAIXutB,EAAG2C,aAAe,SAAU1sB,GACxB+pB,EAAGyB,UAGPzB,EAAG4C,aAAe,SAAU3sB,GACxB+pB,EAAGqB,cACHrB,EAAGyB,QAAO,IAGdzB,EAAG7lB,aAAe,SAAUC,GACxB,GAAIC,GAASD,EAAS,MAAQ,IAC9B4lB,GAAG/b,YAAY5J,GAAQ,SAAU2lB,EAAG2C,cACpC53B,EAAEhB,QAAQsQ,GAAQ,SAAU2lB,EAAG4C,eAInC5C,EAAGtuB,KAAO,WACNsuB,EAAG7lB,eACH6lB,EAAGqB,cACHrB,EAAGyB,UAIPzB,EAAG6C,YAAc,SAAUvgB,GACvB,IAAK,GAAIrP,GAAI,EAAGA,EAAIqP,EAAMxW,OAAQmH,IAC9B+sB,EAAG1d,MAAMrO,KAAKqO,EAAMrP,GAExB+sB,GAAGY,UAEPZ,EAAG8C,WAAa,SAAUxG,GACtB0D,EAAG6C,aAAavG,KAGpB0D,EAAG+C,gBAAkB,SAAUzgB,GAC3B0d,EAAG1d,MAAQA,QACJ0d,GAAGW,cACVX,EAAG5sB,YACH4sB,EAAGY,UAEPZ,EAAGgD,YAAc,SAAU9mB,EAAOogB,GAC9B0D,EAAG1d,MAAMpG,GAASogB,EACd0D,EAAG/1B,OAAOwC,aAAcuzB,GAAG5sB,SAAS8I,GACxC8jB,EAAGY,UAGPZ,EAAGiD,aAAe,SAAU3gB,GACxB,IAAK,GAAIrP,GAAIqP,EAAMxW,OAAS,EAAGmH,GAAK,EAAGA,IACnC+sB,EAAG1d,MAAM8K,QAAQ9K,EAAMrP,GAE3B,IAAI+sB,EAAG/1B,OAAOwC,MAAO,CACjB,GAAIy2B,KACJ,KAAK,GAAIC,KAAUnD,GAAG5sB,SAClB8vB,EAASt3B,SAASu3B,EAAQ,IAAM7gB,EAAMxW,QAAUk0B,EAAG5sB,SAAS+vB,EAEhEnD,GAAG5sB,SAAW8vB,EAElBlD,EAAGY,UAEPZ,EAAGoD,YAAc,SAAU9G,GACvB0D,EAAGiD,cAAc3G,KAIrB0D,EAAG7E,SAAW,SAAUF,EAAUC,GAC9B,GAAID,IAAaC,EAAjB,CAEA,GAAIoB,GAAO0D,EAAG1d,MAAMiD,OAAO0V,EAAU,GAAG,EAWxC,IAVIC,GAAY8E,EAAG1d,MAAMxW,QAErBk0B,EAAG1d,MAAMrO,KAAKqoB,GACdpB,EAAW8E,EAAG1d,MAAMxW,OAAS,GAI7Bk0B,EAAG1d,MAAMiD,OAAO2V,EAAU,EAAGoB,GAG7B0D,EAAG/1B,OAAOwC,MAAO,CACjB,GAAIy2B,KACJ,KAAK,GAAIC,KAAUnD,GAAG5sB,SAAU,CAC5B,GAAIiwB,GAAcz3B,SAASu3B,EAAQ,IAC/BG,EAAuBpI,EAAXD,EAAsBA,EAAWC,EAC7CqI,EAAwBrI,EAAXD,EAAsBC,EAAWD,EAC9CuI,EAAwBtI,EAAXD,EAAsB,GAAK,GAC1BqI,EAAdD,GAA2BA,EAAcE,KAAYL,EAASG,GAAerD,EAAG5sB,SAASiwB,IACzFA,IAAgBC,IAAWJ,EAASK,GAAcvD,EAAG5sB,SAASiwB,IAC9DA,EAAcC,GAA4BC,GAAfF,IAA2BH,EAASG,EAAcG,GAAcxD,EAAG5sB,SAASiwB,IAE/GrD,EAAG5sB,SAAW8vB,EAElBlD,EAAGY,WAGPZ,EAAGyD,iBAAmB,SAAUvnB,EAAOogB,GACnC,GAAc,IAAVpgB,EAEA,WADA8jB,GAAGoD,YAAY9G,EAGnB,IAAIpgB,GAAS8jB,EAAG1d,MAAMxW,OAElB,WADAk0B,GAAG8C,WAAWxG,EAKlB,IAFA0D,EAAG1d,MAAMiD,OAAOrJ,EAAO,EAAGogB,GAEtB0D,EAAG/1B,OAAOwC,MAAO,CACjB,GAAIy2B,KACJ,KAAK,GAAIC,KAAUnD,GAAG5sB,SAAU,CAC5B,GAAIiwB,GAAcz3B,SAASu3B,EAAQ,GAC/BE,IAAennB,IACfgnB,EAASG,EAAc,GAAKrD,EAAG5sB,SAASiwB,IAGhDrD,EAAG5sB,SAAW8vB,EAElBlD,EAAGY,UAGPZ,EAAG0D,YAAc,SAAUjD,GAEvB,IAAK,GADDkD,GAAWH,EAAa,EACnBvwB,EAAI,EAAGA,EAAIwtB,EAAQ30B,OAAQmH,IAAK,CACrC,GAAIiJ,GAAQukB,EAAQxtB,EACK,oBAAd0wB,IACHznB,EAAQynB,IACRH,GAAcvwB,GAGtBiJ,GAAgBsnB,EAChBG,EAAYlD,EAAQxtB,EAEpB,IAAI2wB,GAAc5D,EAAG1d,MAAMiD,OAAOrJ,EAAO,GAAG,EAO5C,IAJI8jB,EAAGW,eAAiBX,EAAGW,cAAch1B,QAAQi4B,IAAgB,GAC7D5D,EAAGW,cAAcpb,OAAOya,EAAGW,cAAch1B,QAAQi4B,GAAc,GAG/D5D,EAAG/1B,OAAOwC,MAAO,CACjB,GAAIy2B,KACJ,KAAK,GAAIC,KAAUnD,GAAG5sB,SAAU,CAC5B,GAAIiwB,GAAcz3B,SAASu3B,EAAQ,GAC/BE,KAAgBnnB,QACT8jB,GAAG5sB,SAAS8I,GAEdtQ,SAASu3B,EAAQ,IAAMjnB,EAC5BgnB,EAASG,EAAc,GAAKrD,EAAG5sB,SAAS+vB,GAGxCD,EAASG,GAAerD,EAAG5sB,SAAS+vB,GAG5CnD,EAAG5sB,SAAW8vB,GAGtBlD,EAAGY,UAEPZ,EAAG6D,eAAiB,WAChB7D,EAAG1d,eACI0d,GAAGW,cACNX,EAAG/1B,OAAOwC,QAAOuzB,EAAG5sB,aACxB4sB,EAAGY,UAEPZ,EAAGjG,WAAa,SAAU7d,GACtB8jB,EAAG0D,aAAaxnB,KAIpB8jB,EAAG8D,WAAa,WACZ9D,EAAG5sB,aAIP4sB,EAAGY,OAAS,WACRZ,EAAGqB,cACHrB,EAAGyB,QAAO,IAIdzB,EAAGlkB,QAAU,WACTkkB,EAAG7lB,cAAa,SACT6lB,GAAG1d,YACH0d,GAAG5sB,UAId4sB,EAAGtuB,OAGHsuB,EAAGH,UAAU,GAAG9zB,cAAgBi0B,EACzBA,EAIXx1B,GAAIK,YAAc,SAAUg1B,EAAW51B,GACnC,MAAO,IAAI21B,GAAYC,EAAW51B,IAGtCO,EAAIu5B,kBAAoB,SAAU1qB,GAC9B,GAAI8D,GAAOpS,EAAEsO,GACT2qB,EAAS7mB,EAAK3R,KAAK,gBACvB,IAAsB,IAAlBw4B,EAAOl4B,OACX,IAAK,GAAImH,GAAI,EAAGA,EAAI+wB,EAAOl4B,OAAQmH,IAAK,CACpC,GAAIgxB,GAAgBD,EAAO/wB,GAAGlH,aAC1Bk4B,IACAA,EAAcrD,WAQ1Bp2B,EAAIge,kBAAoB,SAAUnP,GAwB9B,QAASrD,GAAiBC,GACtB,GAAIR,EAAW,CACX,GAAsB,YAAlBjL,EAAI0B,OAAOg4B,GAGV,MAFD,IAAI,iBAAmBjuB,IAAKA,EAAEI,cAAcvK,OAAS,EAAG,OAIhE4J,GAAU,EACVD,GAAY,EACZV,EAAc1H,OACd82B,EAAc92B,OACdsI,EAAaQ,EAAe,eAAXF,EAAEG,KAAwBH,EAAEI,cAAc,GAAGC,MAAQL,EAAEK,MACxEX,EAAaY,EAAe,eAAXN,EAAEG,KAAwBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,MACxEtB,GAAiB,GAAKuB,OAAQC,UAE9BjD,EAAY1I,EAAEC,MAGlB,QAAS2L,GAAgBV,GACrB,GAAKR,EAAL,CACA,GAAIa,GAAmB,cAAXL,EAAEG,KAAuBH,EAAEI,cAAc,GAAGC,MAAQL,EAAEK,MAC9DE,EAAmB,cAAXP,EAAEG,KAAuBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,KAIlE,IAH2B,mBAAhBzB,KACPA,KAAiBA,GAAe6B,KAAKC,IAAIL,EAAQb,EAAaY,GAAKK,KAAKC,IAAIP,EAAQX,EAAaQ,MAEhGpB,EAED,YADAU,GAAY,EAOhB,IAHAxK,EAAYwI,EAAU,GAAGxI,UACE,mBAAhBk5B,IAA6C,IAAdl5B,IAAiBk5B,GAAc,IAEpEzuB,EAAS,CAGV,GADAjC,EAAUZ,YAAY,iBAClB5H,EAAYwI,EAAU,GAAGrI,aAEzB,YADAqK,GAAY,EAGZ2uB,KACAC,EAAkB5wB,EAAUf,KAAK,qBAC7B2xB,EAAgB14B,QAAQ,MAAQ,IAAG04B,EAAkB5wB,EAAU,GAAGrI,aAAeQ,SAASy4B,EAAiB,IAAM,MAEzHC,EAAiB7wB,EAAU/H,SAAS,cAAgB24B,EAAkB,EAElEE,EADA9wB,EAAU,GAAGvI,eAAiBuI,EAAU,GAAGrI,cAAkC,QAAlBZ,EAAI0B,OAAOg4B,IACvD,GAGA,EAMvB,MAHAxuB,IAAU,EACVT,EAAcuB,EAAQb,EAAaY,EAE/BtB,EAAc,GAAkB,GAAbhK,GAA8B,EAAZA,GAEf,QAAlBT,EAAI0B,OAAOg4B,IAAgBt4B,SAASpB,EAAI0B,OAAOg0B,UAAU1rB,MAAM,KAAK,GAAI,IAAM,GAAmB,IAAdvJ,IAAoBk5B,IAAaI,GAAe,GAEnIA,IACAtuB,EAAE2B,iBACFsB,EAAatC,KAAKmiB,IAAI9jB,EAAa,KAAQqvB,EAC3C7wB,EAAU4E,UAAU,iBAAmBa,EAAY,UAIlDqrB,GAAgB3tB,KAAKmiB,IAAI9jB,EAAa,KAAQovB,IAAsBE,GAAgBtvB,GAAiC,EAAlBovB,GACpGG,GAAU,EACV/wB,EAAUb,SAAS,WAAWC,YAAY,eAG1C2xB,GAAU,EACV/wB,EAAUZ,YAAY,WAAWD,SAAS,cAf9C,SAoBAa,EAAUZ,YAAY,0BACtB2xB,GAAU,KAIlB,QAAS3rB,GAAe5C,GACpB,MAAKR,IAAcC,GAKfwD,IACAzF,EAAUb,SAAS,iBACnBsG,EAAY,GAEhBzF,EAAU4E,UAAU,IAChBmsB,GACA/wB,EAAUb,SAAS,cACnBa,EAAU5H,QAAQ,WACd44B,KAAM,WACFj6B,EAAIk6B,kBAAkBjxB,OAK9BA,EAAUZ,YAAY,aAE1B4C,GAAY,OACZC,GAAU,KArBND,GAAY,OACZC,GAAU,IA8BlB,QAASivB,KACLC,EAAaxf,IAAI5a,EAAIwH,YAAYC,MAAO+D,GACxC4uB,EAAaxf,IAAI5a,EAAIwH,YAAYI,KAAMuE,GACvCiuB,EAAaxf,IAAI5a,EAAIwH,YAAYK,IAAKwG,GAG1C,QAASyB,KACLqqB,IACAxnB,EAAKiI,IAAI,mBAAoB9K,GAlJjC,GAAIsqB,GAAe75B,EAAEsO,EAIrB,IAHKurB,EAAal5B,SAAS,6BACvBk5B,EAAeA,EAAap5B,KAAK,6BAEhCo5B,GAAwC,IAAxBA,EAAa94B,OAAlC,CAEA,GAAI2J,GAAWC,EAA4BX,EAAaE,EAAaC,EAAgBzB,EAAsEyF,EAAWjO,EAAWk5B,EAAoBE,EAAiBD,EAA9LzuB,KAAwE6uB,GAAU,EAAOD,GAAe,EAAOD,EAAiB,EACpJnnB,EAAOynB,EAAal5B,SAAS,QAAUk5B,EAAeA,EAAaztB,QAAQ,SAC3E0tB,GAAY;;CACZ1nB,EAAK3R,KAAK,WAAWM,OAAS,GAAKqR,EAAKhG,QAAQ,kCAAkCrL,OAAS,GAAKqR,EAAKzR,SAAS,iBAAmByR,EAAKzR,SAAS,qBAAmBm5B,GAAY,GAC9K1nB,EAAKzR,SAAS,eAAcm5B,GAAY,GACvCA,GAAWD,EAAahyB,SAAS,6BAEtCa,EAAYmxB,EAGRnxB,EAAUf,KAAK,qBACf0xB,GAAyB,EAGzBC,EAAkB,GAgHtBO,EAAavf,GAAG7a,EAAIwH,YAAYC,MAAO+D,GACvC4uB,EAAavf,GAAG7a,EAAIwH,YAAYI,KAAMuE,GACtCiuB,EAAavf,GAAG7a,EAAIwH,YAAYK,IAAKwG,GAGjB,IAAhBsE,EAAKrR,SAMT84B,EAAa,GAAGE,uBAAyBH,EAKzCxnB,EAAKkI,GAAG,mBAAoB/K,MAIhC9P,EAAIk6B,kBAAoB,SAAUjxB,GAC9BA,EAAY1I,EAAE0I,GACW,IAArBA,EAAU3H,SAAc2H,EAAY1I,EAAE,wCAC1C0I,EAAUZ,YAAY,cAAcD,SAAS,iBAC7Ca,EAAUoG,cAAc,WACpBpG,EAAUZ,YAAY,sCAG9BrI,EAAIu6B,qBAAuB,SAAUtxB,GACjCA,EAAY1I,EAAE0I,GACW,IAArBA,EAAU3H,SAAc2H,EAAY1I,EAAE,6BACtC0I,EAAU/H,SAAS,gBACvB+H,EAAUb,SAAS,4BACnBa,EAAU5H,QAAQ,WACd44B,KAAM,WACFj6B,EAAIk6B,kBAAkBjxB,QAKlCjJ,EAAIm6B,qBAAuB,SAAUtrB,GACjCA,EAAgBtO,EAAEsO,EAClB,IAAI2rB,GAAuB3rB,EAAc3N,SAAS,2BAA6B2N,EAAgBA,EAAc7N,KAAK,2BAC9E,KAAhCw5B,EAAqBl5B,QACrBk5B,EAAqB,GAAGF,wBAAwBE,EAAqB,GAAGF,0BAsChFt6B,EAAIy6B,qBAAuB,SAAUC,GACjCn6B,EAAEm6B,GAAiB7f,GAAG,SAAUza,IAEpCJ,EAAI26B,qBAAuB,SAAUD,GACjCn6B,EAAEm6B,GAAiB9f,IAAI,SAAUxa,IAGrCJ,EAAIie,mBAAqB,SAAUpP,GAK/B,QAASiB,KACL9P,EAAI26B,qBAAqBD,GACzB7rB,EAAc+L,IAAI,mBAAoB9K,GAN1CjB,EAAgBtO,EAAEsO,EAClB,IAAI6rB,GAAkB7rB,EAAc7N,KAAK,mBACV,KAA3B05B,EAAgBp5B,SACpBtB,EAAIy6B,qBAAqBC,GAKzB7rB,EAAcgM,GAAG,mBAAoB/K,KAMzC9P,EAAIke,mBAAqB,SAAUrP,GAkC/B,QAASspB,GAAa1sB,GACdoD,EAAc3N,SAAS,kBAC3B2rB,EAAgB+N,EAAc,GAAGn6B,UACjCC,EAAek6B,EAAc,GAAGl6B,aAChCE,EAAeg6B,EAAc,GAAGh6B,aAChCY,EAAWxB,EAAIP,OAAO4E,yBAA4BwoB,EAAgBjsB,GAAgBF,EAAem6B,EACjGC,EAAeloB,EAAO1R,SAAS,iBAC/B65B,EAAgBnmB,EAAQ1T,SAAS,kBACjC85B,EAAeC,GAAUA,EAAO/5B,SAAS,kBAGrC2O,EADArO,EACS,OAEJ05B,EAAiBrO,EAClB7sB,EAAIP,OAAO6E,yBAA4C,IAAjBuoB,EAC7B,OAGA,OAITA,EAAgB,GACP,OAGA,OAIF,SAAXhd,GACIwqB,GAAatpB,GAAc+pB,IAC3B96B,EAAIgR,WAAW4B,GACf/D,EAAcxG,YAAY,uBAC1ByyB,GAAe,GAEfK,GAAclqB,GAAe8pB,IAC7B/6B,EAAIkR,YAAY0D,GAChB/F,EAAcxG,YAAY,wBAC1B0yB,GAAgB,GAEhBK,GAAaC,GAAcL,IAC3Bh7B,EAAIkR,YAAY+pB,GAChBpsB,EAAcxG,YAAY,uBAC1B2yB,GAAe,KAIfX,GAAatpB,IAAe+pB,IAC5B96B,EAAI+Q,WAAW6B,GACf/D,EAAczG,SAAS,uBACvB0yB,GAAe,GAEfK,GAAclqB,IAAgB8pB,IAC9B/6B,EAAIiR,YAAY2D,GAChB/F,EAAczG,SAAS,wBACvB2yB,GAAgB,GAEhBK,GAAaC,IAAeL,IAC5Bh7B,EAAIiR,YAAYgqB,GAChBpsB,EAAczG,SAAS,uBACvB4yB,GAAe,IAIvBE,EAAiBrO,GAlGrBhe,EAAgBtO,EAAEsO,EAClB,IAAI+rB,GAAgB/rB,EAAc7N,KAAK,gBACvC,IAA6B,IAAzB45B,EAAct5B,OAAlB,CACA,GAAIyP,IAAc/Q,EAAIP,OAAOyE,wBAA0B02B,EAAc15B,SAAS,0BAA4B05B,EAAc15B,SAAS,2BAA6B05B,EAAc15B,SAAS,0BAA4B05B,EAAc15B,SAAS,wBACpO+P,GAAejR,EAAIP,OAAO0E,yBAA2By2B,EAAc15B,SAAS,2BAA6B05B,EAAc15B,SAAS,2BAA6B05B,EAAc15B,SAAS,2BAA6B05B,EAAc15B,SAAS,wBACxOm6B,GAAcr7B,EAAIP,OAAO2E,wBAA0Bw2B,EAAc15B,SAAS,4BAA+B05B,EAAc15B,SAAS,wBAEpI,IAAM6P,GAAcE,GAAeoqB,EAAnC,CAEA,GAAInoB,GAAgB0nB,EAAcjuB,QAAQ,IAAM3M,EAAIP,OAAO+G,UAC3D,IAA6B,IAAzB0M,EAAc5R,OAAlB,CAEA,GAEI25B,GAFAroB,EAASM,EAAclS,KAAK,WAC5B4T,EAAU1B,EAAclS,KAAK,WAE7Bq6B,KACAJ,EAAS/nB,EAAclS,KAAK,WACN,IAAlBi6B,EAAO35B,SAAc25B,EAAS/nB,EAAcvG,QAAQ,IAAM3M,EAAIP,OAAOiH,YAAY1F,KAAK,YAG9F,IAIIk6B,GAAgBrO,EAJhBwN,EAAYznB,EAAOtR,OAAS,EAC5B65B,EAAavmB,EAAQtT,OAAS,EAC9B85B,EAAYH,GAAUA,EAAO35B,OAAS,CAGtC45B,GAAiBrO,EAAgB+N,EAAc,GAAGn6B,SAEtD,IAAIC,GAAcE,EAAcY,EAAUqO,EAAQirB,EAAcC,EAAeC,EAE3EM,EAAiBH,GAAclqB,EAAe2D,EAAQ,GAAGhU,aAAe,EACxE26B,EAAgBH,GAAaC,EAAcJ,EAAO,GAAGr6B,aAAe,EACpEi6B,EAAkBU,GAAgBD,CAqEtCV,GAAc/f,GAAG,SAAUsd,GAC3ByC,EAAc,GAAGY,wBAA0BrD,MAE/Cn4B,EAAIy7B,sBAAwB,SAAU5sB,GAClCA,EAAgBtO,EAAEsO,EAClB,IAAI+rB,GAAgB/rB,EAAc7N,KAAK,gBACvC,IAA6B,IAAzB45B,EAAct5B,OAAlB,CACA,GAAIo6B,GAAUd,EAAc,GAAGY,uBAC1BE,IACLd,EAAchgB,IAAI,SAAUggB,EAAc,GAAGY,2BAMjDx7B,EAAI27B,QAAU,SAAUC,EAAKC,EAASpZ,GAClC,GAAIqZ,GAASv7B,EAAEq7B,EAMf,IALyB,IAArBlX,UAAUpjB,QACa,iBAAZu6B,KACPpZ,EAAQoZ,GAGM,IAAlBC,EAAOx6B,OAAc,OAAO,CAChC,IAAIw6B,EAAO56B,SAAS,UAEhB,MADIuhB,IAAOqZ,EAAOz6B,QAAQ,SACnB,CAEX,IAAI06B,GAAOD,EAAOzpB,OAAO,QACzB,IAAoB,IAAhB0pB,EAAKz6B,OAAc,OAAO,CAG9BtB,GAAIgtB,eAAgB,CAGpB,IAAIgP,GAAiBD,EAAK1pB,SAASnR,SAAS,qBACxC86B,IACAD,EAAKluB,UAAU,eAAmC,KAAjBiuB,EAAOpqB,QAAgB,SAI5D,IAAIuqB,GAASF,EAAK/pB,SAAS,eAAe3J,YAAY,SAOtD,IALAyzB,EAAO1zB,SAAS,UAEhB0zB,EAAOz6B,QAAQ,SAGV26B,GAAkBF,EAAO96B,KAAK,WAAWM,OAAS,EAAG,CAEtD,GAAI4R,EACuCA,GAAvC4oB,EAAO56B,SAASlB,EAAIP,OAAO+G,WAA4Bs1B,EAAO,GAC7CA,EAAOnvB,QAAQ,IAAM3M,EAAIP,OAAO+G,WAAW,GAChExG,EAAIoT,YAAYF,GAgBpB,GAZI2oB,EAASA,EAAUt7B,EAAEs7B,IAGQA,EAAUt7B,EAApB,gBAARq7B,GAA8B,mBAAqBA,EAAM,KACnD,oBAAsBE,EAAO5zB,KAAK,MAAQ,QAEtD2zB,GAAWA,GAA8B,IAAnBA,EAAQv6B,SAC/Bf,EAAE,cAAckO,KAAK,WACbqtB,EAAOlvB,GAAGrM,EAAEC,MAAM0H,KAAK,eAAc2zB,EAAUt7B,EAAEC,UAI1C,IAAnBq7B,EAAQv6B,OAAZ,CAGA,GAAI46B,EACJ,IAAID,GAAUA,EAAO36B,OAAS,EAAG,CAE7B,GAAI66B,GAAWF,EAAO/zB,KAAK,KACvBi0B,KAAUD,EAAa37B,EAAE,oBAAsB47B,EAAW,SAEzDD,GAAcA,GAAoC,IAAtBA,EAAW56B,SACxCf,EAAE,cAAckO,KAAK,WACbwtB,EAAOrvB,GAAGrM,EAAEC,MAAM0H,KAAK,eAAcg0B,EAAa37B,EAAEC,SASpE,MAHIq7B,IAAWA,EAAQv6B,OAAS,GAAGu6B,EAAQzzB,SAAS,UAChD8zB,GAAcA,EAAW56B,OAAS,GAAG46B,EAAW7zB,YAAY,WAEzD,IAMXrI,EAAIo8B,gBAAkB,SAAUtK,GAC5BA,EAAOvxB,EAAEuxB,GACW,IAAhBA,EAAKxwB,SACLwwB,EAAK5wB,SAAS,2BAA4BlB,EAAIq8B,eAAevK,GAC5D9xB,EAAIs8B,cAAcxK,KAE3B9xB,EAAIs8B,cAAgB,SAAUxK,GAC1BA,EAAOvxB,EAAEuxB,EACT,IAAIyK,GAAOzK,EAAKnlB,QAAQ,mBAAmBvC,GAAG,GAC1CiG,EAAUyhB,EAAK9f,SAAS,0BACL,KAAnB3B,EAAQ/O,SAAc+O,EAAUyhB,EAAK9wB,KAAK,2BAC9C,IAAIw7B,GAAeD,EAAKj7B,OAAS,GAAKwwB,EAAKzf,SAASL,SAAS,2BACzDwqB,GAAal7B,OAAS,GACtBtB,EAAIq8B,eAAeG,GAEvBnsB,EAAQpI,IAAI,SAAUoI,EAAQ,GAAG3P,aAAe,MAAM2O,cAAc,WAChE,GAAIyiB,EAAK5wB,SAAS,2BAA4B,CAC1CmP,EAAQ6F,WAAW,GACnB7F,EAAQpI,IAAI,SAAU,OACtB,EAAiBoI,EAAQ,GAAG2R,WAC5B3R,EAAQ6F,WAAW,IACnB4b,EAAKzwB,QAAQ,cAGbgP,GAAQpI,IAAI,SAAU,IACtB6pB,EAAKzwB,QAAQ,YAGrBywB,EAAKzwB,QAAQ,QACbywB,EAAK1pB,SAAS,4BAElBpI,EAAIq8B,eAAiB,SAAUvK,GAC3BA,EAAOvxB,EAAEuxB,EACT,IAAIzhB,GAAUyhB,EAAK9f,SAAS,0BACL,KAAnB3B,EAAQ/O,SAAc+O,EAAUyhB,EAAK9wB,KAAK,4BAC9C8wB,EAAKzpB,YAAY,2BACjBgI,EAAQ6F,WAAW,GACnB7F,EAAQpI,IAAI,SAAUoI,EAAQ,GAAG3P,aAAe,KAE/B2P,GAAQ,GAAG2R,UAE5B3R,GAAQ6F,WAAW,IACnB7F,EAAQpI,IAAI,SAAU,IAAIoH,cAAc,WACpC,GAAIyiB,EAAK5wB,SAAS,2BAA4B,CAC1CmP,EAAQ6F,WAAW,GACnB7F,EAAQpI,IAAI,SAAU,OACtB,EAAiBoI,EAAQ,GAAG2R,WAC5B3R,EAAQ6F,WAAW,IACnB4b,EAAKzwB,QAAQ,cAGbgP,GAAQpI,IAAI,SAAU,IACtB6pB,EAAKzwB,QAAQ,YAGrBywB,EAAKzwB,QAAQ,UAOjBrB,EAAIy8B,eAAiB,WAYjB,QAASC,GAAqBjxB,GAC1B,GAEIkxB,GAFAjwB,EAASnM,EAAEkL,EAAEiB,QACbC,EAAUD,EAAOC,QAAQ3M,EAAIP,OAAO+D,oBAQxC,OANIkJ,GAAOE,GAAG5M,EAAIP,OAAO+D,uBACrBm5B,EAAYjwB,GAEZC,EAAQrL,OAAS,IACjBq7B,EAAYA,EAAYA,EAAUvU,IAAIzb,GAAWA,GAE9CgwB,EAAYA,EAAYjwB,EAEnC,QAASkwB,KACL,GAAInjB,GAAcojB,EAAiBlwB,QAAQ,wBAE3C,OAA2B,KAAvB8M,EAAYnY,QACL,GAIkC,QAAzCmY,EAAYqjB,KAAK,sBACjBrjB,EAAYoB,GAAG,SAAU,WACvBP,aAAayiB,KAEftjB,EAAYqjB,KAAK,mBAAoB,SAGlC,GAEX,QAASE,KACLH,EAAiBz0B,SAAS,gBAE9B,QAAS60B,GAAajyB,GAClB6xB,EAAiBx0B,YAAY,gBAEjC,QAAS60B,GAAclyB,GACnB,GAAImyB,GAAQ,8BAAgCnzB,MAAM,IAClD,OAAIgB,GAAGoyB,UAAYD,EAAMh8B,QAAQ6J,EAAGoyB,SAASnlB,gBAAkB,GAAU,GAClE,EAEX,QAASolB,GAAiBryB,GACtB,GAAIsyB,GAAS,+BAAiCtzB,MAAM,IACpD,OAAIpI,UAAS27B,eAAiBvyB,IAAOpJ,SAAS27B,eAAiB37B,SAAS27B,gBAAkB37B,SAASC,KAC3Fy7B,EAAOn8B,QAAQ6J,EAAGoyB,SAASnlB,gBAAkB,GACtC,GAGA,GAIJ,EAGf,QAASulB,GAAqBxyB,GAC1B,GAAIyyB,GAAMl9B,EAAEyK,EACZ,OAAkC,UAA9BA,EAAGoyB,SAASnlB,eAAyC,SAAZjN,EAAGY,MAAwB,EACpE6xB,EAAIv8B,SAAS,iBAAmBu8B,EAAI9wB,QAAQ,iBAAiBrL,OAAS,GAAU,GAC7E,EAEX,QAASo8B,GAAiB1yB,GACtB,GAAIpJ,SAAS27B,gBAAkBvyB,EAC3B,OAAO,CAEX,IAAI2yB,GAAM3yB,EAAGoyB,SAASnlB,cAClB2lB,EAAa,0CAA4C5zB,MAAM,IACnE,OAAIgB,GAAGsb,UAAYtb,EAAG6yB,UAAiB,EAC3B,aAARF,GAA2B,EACnB,WAARA,EACI39B,EAAI0B,OAAOsL,SAAgB,GACnB,EAEJ,UAAR2wB,GAAmBC,EAAWz8B,QAAQ6J,EAAGY,MAAQ,GAAU,EAA/D,OAEJ,QAASkyB,GAAmB9yB,GACxBA,EAAKzK,EAAEyK,EACP,IAAI+yB,IAAU,CAUd,QATI/yB,EAAG4B,GAAG,UAAY5B,EAAG2B,QAAQ,SAASrL,OAAS,KAE3Cy8B,EADA/9B,EAAI0B,OAAOsL,SACD,EAELhN,EAAI0B,OAAOkV,KAAO5L,EAAG4B,GAAG,UACnB,GAEC,GAEZmxB,EAIX,QAASC,GAAiBvyB,GACtBixB,EAAqBjxB,GAAGrD,SAAS,gBAC7B,SAAWqD,IAAiB,IAAZA,EAAEwyB,OAClBl8B,WAAW,WACPxB,EAAE,iBAAiB8H,YAAY,iBAChC,GAGX,QAAS61B,GAAiBzyB,GACtBlL,EAAE,iBAAiB8H,YAAY,gBAEnC,QAAS81B,GAAe1yB,GACpBlL,EAAE,iBAAiB8H,YAAY,gBAInC,QAASmD,GAAiBC,GAGtB,GAFAP,GAAU,EACVkzB,GAAe,EACX3yB,EAAEI,cAAcvK,OAAS,EACzB,OAAO,CAaX,IAXItB,EAAIP,OAAO2D,UACPi7B,GAAgB/jB,aAAa+jB,GACjCA,EAAiBt8B,WAAW,WACxBq8B,GAAe,EACf3yB,EAAE2B,iBACF7M,EAAEkL,EAAEiB,QAAQrL,QAAQ,YACrBrB,EAAIP,OAAO4D,eAEdi7B,GAAuBhkB,aAAagkB,GACxCC,EAAiBf,EAAqB/xB,EAAEiB,SAEnC6xB,EAED,MADAC,IAAa,GACN,CAEX,IAAIx+B,EAAI0B,OAAOkV,IAAK,CAChB,GAAI6nB,GAAYl/B,OAAOm/B,cACvB,IAAID,EAAUE,YAAcF,EAAUG,YAAch9B,SAASC,QAAU48B,EAAUI,aAAej9B,SAAS27B,gBAAkBkB,EAAUG,WAEjI,MADAE,IAAkB,GACX,CAGPA,IAAkB,EAGtB9+B,EAAI0B,OAAOsL,SACPqwB,EAAiB5xB,EAAEiB,SACnB9K,SAAS27B,cAAcxmB,OAI/BynB,GAAa,EACbO,EAAgBtzB,EAAEiB,OAClBhC,GAAiB,GAAKuB,OAAQC,UAC9B8yB,EAAcvzB,EAAEI,cAAc,GAAGC,MACjCgkB,EAAcrkB,EAAEI,cAAc,GAAGG,MAG7BhM,EAAI0B,OAAOkV,MACXqoB,EAAep8B,OACftC,EAAEw+B,GAAepyB,UAAU8B,KAAK,WAC5B,GAAI4D,GAAS7R,IACT6R,GAAO3R,aAAe2R,EAAOzR,eAAiBq+B,IAC9CA,EAAe5sB,EACf4sB,EAAaC,YAAcD,EAAax+B,cAI/CgL,EAAE0zB,UAAYC,EAAiBp/B,EAAIP,OAAO0D,8BAC3CsI,EAAE2B,iBAEFpN,EAAIP,OAAO8D,cACXs5B,EAAmBH,EAAqBjxB,GAInCmxB,EAAuBnxB,GAGxBsxB,EAAgBh7B,WAAWi7B,EAAW,IAFtCA,KAMZ,QAAS7wB,GAAgBV,GACrB,GAAK+yB,EAAL,CACA,GAAIa,IAAW,EACXx+B,EAAWb,EAAIP,OAAOyD,2BAC1B,IAAIrC,EAAU,CACV,GAAIiL,GAAQL,EAAEI,cAAc,GAAGC,MAC3BE,EAAQP,EAAEI,cAAc,GAAGG,OAC3BI,KAAKC,IAAIP,EAAQkzB,GAAen+B,GAAauL,KAAKC,IAAIL,EAAQ8jB,GAAejvB,KAC7Ew+B,GAAW,OAIfA,IAAW,CAEXA,KACAb,GAAa,EACbO,EAAgB,KAChB7zB,GAAU,EACNlL,EAAIP,OAAO2D,SACXkX,aAAa+jB,GAEtBr+B,EAAIP,OAAO8D,cACd+W,aAAayiB,GACbE,OAIA,QAAS5uB,GAAe5C,GAIpB,GAHA6O,aAAayiB,GACbziB,aAAa+jB,IAERG,EAMD,OALKM,GAAmBP,KACdv+B,EAAI0B,OAAOsL,SAAYvB,EAAE6zB,aAC3B7zB,EAAE2B,kBAGH,CAGX,IAAIxL,SAAS27B,gBAAkB9xB,EAAEiB,OAC7B,OAAO,CAOX,IAJKoyB,GACDrzB,EAAE2B,iBAGD3B,EAAE0zB,UAAYC,EAAiBp/B,EAAIP,OAAO0D,6BAE3C,MADApB,YAAWk7B,EAAc,IAClB,CAOX,IAJAmC,EAAgB3zB,EAAE0zB,UAElBX,GAAa,EAETx+B,EAAI0B,OAAOkV,KAAOqoB,GACdA,EAAax+B,YAAcw+B,EAAaC,YACxC,OAAO,CAOXl/B,GAAIP,OAAO8D,cACXy5B,IACAj7B,WAAWk7B,EAAc,IAIzBS,EAAiBqB,IACjBA,EAAc7nB,QAIdtV,SAAS27B,eAAiBwB,IAAkBn9B,SAAS27B,eAAiB37B,SAAS27B,gBAAkB37B,SAASC,MAAiD,UAAzCk9B,EAAc3B,SAASnlB,eACzIrW,SAAS27B,cAAcxmB,OAI3BtL,EAAE2B,gBACF,IAAIzF,GAAQ8D,EAAE8zB,eAAe,GACzBC,EAAM59B,SAAS69B,YAAY,eAC3BC,EAAY,OAOhB,OANI1/B,GAAI0B,OAAOsL,SAAoD,WAAzC+xB,EAAc3B,SAASnlB,gBAC7CynB,EAAY,aAEhBF,EAAIG,eAAeD,GAAW,GAAM,EAAMngC,OAAQ,EAAGoI,EAAMi4B,QAASj4B,EAAMk4B,QAASl4B,EAAMm4B,QAASn4B,EAAMo4B,SAAS,GAAO,GAAO,GAAO,EAAO,EAAG,MAChJP,EAAIQ,qBAAsB,EAC1BjB,EAAckB,cAAcT,IACrB,EAEX,QAASU,GAAkBz0B,GACvB+yB,GAAa,EACbO,EAAgB,KAGpB,QAASoB,GAAY10B,GACjB,GAAI20B,IAAa,CAEjB,OAAI5B,IACAO,EAAgB,KAChBP,GAAa,GACN,GAEW,WAAlB/yB,EAAEiB,OAAOd,MAAkC,IAAbH,EAAE6mB,QACzB,GAENyM,GACI7B,EAAczxB,EAAEiB,UACjB0zB,GAAc,GAGjB7B,IACD6B,GAAa,GAEbx+B,SAAS27B,gBAAkBwB,IAC3BqB,GAAc,GAEd30B,EAAEu0B,sBACFI,GAAc,GAEb30B,EAAE6zB,aACHc,GAAc,GAEdpgC,EAAIP,OAAO2D,SAAWpD,EAAIP,OAAO6D,sBAAwB86B,IACzDgC,GAAa,GAEZA,IACD30B,EAAE40B,2BACF50B,EAAE60B,kBACEvB,GACIjB,EAAmBiB,IAAkB7zB,IACrCO,EAAE2B,iBAIN3B,EAAE2B,iBAEN2xB,EAAgB,MAEpBT,EAAwBv8B,WAAW,WAC/Bw8B,GAAiB,GACjBv+B,EAAI0B,OAAOkV,KAAO5W,EAAI0B,OAAO6+B,cAAgB,IAAM,KAEnDvgC,EAAIP,OAAO2D,UACXi7B,EAAiBt8B,WAAW,WACxBq8B,GAAe,GACfp+B,EAAI0B,OAAOkV,KAAO5W,EAAI0B,OAAO6+B,cAAgB,IAAM,MAGpDH,GAnVPpgC,EAAIP,OAAO8D,aACXhD,EAAE,QAAQ6H,SAAS,sBAEnBpI,EAAI0B,OAAOkV,KAAO5W,EAAI0B,OAAO8+B,SAE7BjhC,OAAOkhC,iBAAiB,aAAc,aAG1C,IAAIzB,GAAalP,EAAaplB,EAAgBq0B,EAAeP,EAAYM,EAAiBG,EAAcG,EAAel0B,EAASkzB,EAAcC,EAC1IxB,EAAkBE,EAAewB,EAAgBD,CA4UjDt+B,GAAI0H,QAAQC,OACZ/F,SAAS6+B,iBAAiB,QAASN,GAAa,GAEhDv+B,SAAS6+B,iBAAiB,aAAcj1B,GACxC5J,SAAS6+B,iBAAiB,YAAat0B,GACvCvK,SAAS6+B,iBAAiB,WAAYpyB,GACtCzM,SAAS6+B,iBAAiB,cAAeP,IAGrClgC,EAAIP,OAAO8D,cACX3B,SAAS6+B,iBAAiB,YAAazC,GACvCp8B,SAAS6+B,iBAAiB,YAAavC,GACvCt8B,SAAS6+B,iBAAiB,UAAWtC,KAUjDn+B,EAAI0gC,gBAAkB,WAClB,QAASC,GAAgBl1B,GAErB,GAAIm1B,GAAUrgC,EAAEC,MACZkM,EAASnM,EAAEkL,EAAEiB,QACbm0B,EAA+C,MAAtCD,EAAQ,GAAGxD,SAASnlB,eACpB2oB,EAAQj0B,QAAQ,KAAKrL,OAAS,GACO,MAArCoL,EAAO,GAAG0wB,SAASnlB,eACnBvL,EAAOC,QAAQ,KAAKrL,OAAS,CAE1C,KAAIu/B,EAAJ,CACA,GAAIpnB,EACJ,IAAIzZ,EAAIP,OAAO0F,wBAA0By7B,EAAQh0B,GAAG,mBAAoB,CAEpE,GAAIgG,GAASguB,EAAQj0B,QAAQ,UAG7B8M,GAAc7G,EAAOjG,QAAQ,iBAEF,IAAvB8M,EAAYnY,SAERsR,EAAOjG,QAAQ,SAASrL,OAAS,IACjCmY,EAAc7G,EAAOjG,QAAQ,SAAS3L,KAAK,kBAGpB,IAAvByY,EAAYnY,QACRsR,EAAO6F,QAAQ,UAAUnX,OAAS,IAClCmY,EAAc7G,EAAO6F,QAAQ,UAAUzX,KAAK,6DAA6DA,KAAK,mBAK1HhB,EAAIP,OAAO2F,2BAA6Bw7B,EAAQh0B,GAAG,wBAG/C6M,EAFAlZ,EAAE,mBAAmBe,OAAS,EAEhBf,EAAE,mBAAmBS,KAAK,6DAA6DA,KAAK,iBAErGT,EAAE,iBAAiBe,OAAS,EAEnBf,EAAE,iBAAiBS,KAAK,6DAA6DA,KAAK,iBAEnGT,EAAE,yBAAyBe,OAAS,EAE3Bf,EAAE,yBAAyBS,KAAK,6DAA6DA,KAAK,iBAIlGT,EAAE,UAAUS,KAAK,6DAA6DA,KAAK,kBAIrGyY,GAAeA,EAAYnY,OAAS,IAEhCmY,EAAYvY,SAAS,SACrBuY,EAAcA,EAAYpH,OAAO,SAASL,SAAS,yBAEnDyH,EAAYnY,OAAS,GAAGmY,EAAYhZ,UAAU,EAAG,OAG7D,QAASqgC,GAAar1B,GAElB,GAAIm1B,GAAUrgC,EAAEC,MACZ8J,EAAMs2B,EAAQ14B,KAAK,QACnB24B,EAA+C,MAAtCD,EAAQ,GAAGxD,SAASnlB,aAGjC,IAAI4oB,GACID,EAAQh0B,GAAG5M,EAAIP,OAAOuE,eAKtB,YAJ8B,YAA3B48B,EAAQ14B,KAAK,YACZuD,EAAE2B,iBACF7N,OAAOwhC,KAAKz2B,EAAK,YAO7B,IAAI02B,GAAcJ,EAAQznB,SA2B1B,IAxBIynB,EAAQ1/B,SAAS,iBACblB,EAAIwxB,iBAAiBxxB,EAAIwxB,gBAAgBoP,GAI7CA,EAAQ1/B,SAAS,eAE2BlB,EAAI+oB,UADrB,IAAvBxoB,EAAE,UAAUe,OACRf,EAAE,UAAUW,SAAS,cAA6B,OACnC,QAGO,UAAtB8/B,EAAY7X,MAAiC,QAC9B,QAIvByX,EAAQ1/B,SAAS,gBACjBlB,EAAIopB,aAGJwX,EAAQ1/B,SAAS,kBAAoBlB,EAAIP,OAAOkG,sBAChD3F,EAAIopB,aAGJwX,EAAQ1/B,SAAS,gBAAiB,CAClC,GAAI6kB,EAEAA,GADAib,EAAYjb,QACFib,EAAYjb,QAEX,WACf/lB,EAAI+lB,QAAQA,EAAS6a,GAErBA,EAAQ1/B,SAAS,kBACjBlB,EAAIkN,WAAW,oBAGnB,IAAImb,EACAuY,GAAQ1/B,SAAS,gBAEbmnB,EADA2Y,EAAY3Y,MACJ2Y,EAAY3Y,MAEX,SACbroB,EAAIqoB,MAAMA,IAEVuY,EAAQ1/B,SAAS,iBAEbmnB,EADA2Y,EAAY3Y,MACJ2Y,EAAY3Y,MAEX,kBACbroB,EAAIkN,WAAWmb,GAGnB,IAAIE,EA0BJ,IAzBIqY,EAAQ1/B,SAAS,uBAEbqnB,EADAyY,EAAYzY,YACEyY,EAAYzY,YAEX,gBACnBvoB,EAAIuoB,YAAYA,IAEhBqY,EAAQ1/B,SAAS,uBACjBlB,EAAIkN,WAAW,0BAGf0zB,EAAQ1/B,SAAS,mBACbX,EAAE,mBAAmBe,OAAS,GAAKtB,EAAIP,OAAOwG,qBAC9CjG,EAAIkN,WAAW,mBACf3M,EAAE,2BAA2Be,OAAS,GAAKtB,EAAIP,OAAOyG,uBACtDlG,EAAIkN,WAAW,2BAEf3M,EAAE,qBAAqBe,OAAS,GAAGtB,EAAIkN,WAAW,sBAEtD0zB,EAAQ1/B,SAAS,kBACbX,EAAE,mBAAmBe,OAAS,GAAKtB,EAAIP,OAAO0G,qBAC9CnG,EAAIkN,WAAW,mBAInB0zB,EAAQ1/B,SAAS,gBAAiB,CAClC,GAAI+/B,GAAgB1gC,EAAE,yBAClB0gC,GAAc3/B,OAAS,EACvBtB,EAAIkN,WAAW+zB,IAGfA,EAAgB1gC,EAAE,mCACd0gC,EAAc3/B,OAAS,GACvBtB,EAAIkN,WAAW+zB,EAAct0B,QAAQ,cAIjD,GAAIi0B,EAAQ1/B,SAAS,eAAgB,CACjC,GAAIggC,EAEAA,GADAF,EAAYG,OACGH,EAAYG,OAEX,gBACpBnhC,EAAIsoB,YAAY4Y,EAAcN,GAIlC,GAAIQ,EAUJ,IATIR,EAAQ1/B,SAAS,cACjBkgC,GAAY,EACZphC,EAAI27B,QAAQqF,EAAYpF,KAAOgF,EAAQ14B,KAAK,QAAS04B,IAGrDA,EAAQ1/B,SAAS,mBACjBlB,EAAIkuB,cAAc0S,EAAQj0B,QAAQ,qBAGlCi0B,EAAQ1/B,SAAS,mBACjB,GAAI8/B,EAAYrc,QAAS,CACrB,GAAIvM,GAAO4oB,EAAYrc,QACnBpM,EAAQyoB,EAAYK,YACpB9oB,GACAvY,EAAI2kB,QAAQvM,EAAMG,EAAO,WACrBvY,EAAIovB,eAAewR,EAAQj0B,QAAQ,gBAIvC3M,EAAI2kB,QAAQvM,EAAM,WACdpY,EAAIovB,eAAewR,EAAQj0B,QAAQ,oBAK3C3M,GAAIovB,eAAewR,EAAQj0B,QAAQ,aAe3C,IAVIi0B,EAAQ1/B,SAAS,oBACjBlB,EAAIwvB,eAAewR,EAAY/8B,UAE/B28B,EAAQ1/B,SAAS,kBACjBlB,EAAI2vB,aAAaqR,EAAY/8B,UAE7B28B,EAAQ1/B,SAAS,mBACjBlB,EAAI4vB,cAAcoR,EAAY/8B,UAG9B28B,EAAQ1/B,SAAS,0BAA6B0/B,EAAQ1/B,SAAS,cAAgB0/B,EAAQvuB,SAASnR,SAAS,kBAAoB,CAC7H,GAAIogC,GAAgBV,EAAQvuB,OAAO,kBACN,KAAzBivB,EAAchgC,SAAcggC,EAAgBV,EAAQj0B,QAAQ,oBACnC,IAAzB20B,EAAchgC,SAAcggC,EAAgBV,EAAQj0B,QAAQ,OAChE3M,EAAIo8B,gBAAgBkF,GAIxB,KAAIthC,EAAIP,OAAOsE,WAAc68B,EAAQh0B,GAAG5M,EAAIP,OAAOsE,aAAe88B,GAAW7gC,EAAIP,OAAOiD,OAAxF,CAGIm+B,GACAp1B,EAAE2B,gBAGN,IAAIm0B,GAAWj3B,GAAOA,EAAIhJ,OAAS,GAAa,MAARgJ,IAAgB82B,EACpDnhB,EAAW+gB,EAAY/gB,QAC3B,IAAIshB,GAAYX,EAAQ1/B,SAAS,SAAW+e,EAAU,CAClD,GAAIjX,EAcJ,IAbIg4B,EAAYh4B,KACZA,EAAOzI,EAAEygC,EAAYh4B,MAAM,GAAGK,QAG9BL,EAAO43B,EAAQj0B,QAAQ,IAAM3M,EAAIP,OAAO+G,WAAW,IAAMo6B,EAAQj0B,QAAQ,IAAM3M,EAAIP,OAAO+G,WAAW,GAAG6C,OACpGL,GAAQA,EAAKvJ,OAAOoJ,YACiB,gBAA1BG,GAAKvJ,OAAOoJ,UAAwBG,EAAOzI,EAAEyI,EAAKvJ,OAAOoJ,WAAW,GAAGQ,OACzEL,EAAKvJ,OAAOoJ,oBAAqBN,KAAMS,EAAOA,EAAKvJ,OAAOoJ,aAGtEG,GACGhJ,EAAIgQ,WAAUhH,EAAOhJ,EAAIgQ,WAE5BhH,EAAM,MAEX,IAAI/I,EACJ,IAAKggB,EAWD3V,EAAMzH,WAXK,CACX,GAAyB,IAArByH,EAAInJ,QAAQ,MAAsB,MAARmJ,EAAc,CACxC,IAAItB,EAAKvJ,OAAOmJ,SAIX,MAHD3I,GAAWqK,EAAIN,MAAM,KAAK,GAC1BM,EAAMzH,OAId,GAAY,MAARyH,IAAgBs2B,EAAQ1/B,SAAS,QAAS,OAMlD,GAAI2F,EACoC,oBAA7Bm6B,GAAYn6B,aACnBA,EAAem6B,EAAYn6B,cAGvB+5B,EAAQ1/B,SAAS,oBAAmB2F,GAAe,GACnD+5B,EAAQ1/B,SAAS,kBAAiB2F,GAAe,GAGzD,IAAIqJ,IACArJ,aAAcA,EACdgK,YAAamwB,EAAYnwB,YACzB4R,MAAOue,EAAYve,MACnBlS,OAAQywB,EAAYzwB,OACpBG,eAAgBswB,EAAYtwB,eAC5BzQ,SAAUA,EACVqK,IAAKA,EAGT,IAAItK,EAAIP,OAAOuH,eAAgB,CAC3BkJ,EAAQ8P,YAAcghB,EAAYhhB,WAClC,IAAIrD,GAAUqkB,EAAYrkB,OACtBA,KACAzM,EAAQyM,QAAU6kB,KAAKC,MAAM9kB,IAGjCsD,GAAYA,IAAY5Y,GAAGP,YAC3BoJ,EAAQ+P,SAAW5Y,EAAGP,UAAUmZ,IAGhC2gB,EAAQ1/B,SAAS,QAAS8H,EAAKtG,OAAO4M,KAAKY,GAC1ClH,EAAKtG,OAAOuN,KAAKC,KAS9B,QAASwxB,GAAiBj2B,GACtBA,EAAE2B,iBAPN7M,EAAEqB,UAAUiZ,GAAG,QAAS,6SAA8SimB,IAClU9gC,EAAIP,OAAO0F,wBAA0BnF,EAAIP,OAAO2F,4BAChD7E,EAAEqB,UAAUiZ,GAAG,QAAS,sCAAuC8lB,GAO/D3gC,EAAI0H,QAAQC,OACZpH,EAAEqB,UAAUiZ,GAAI7a,EAAIP,OAAOwD,WAAa,aAAe,YAAc,mGAAoGy+B,IAiBjL1hC,EAAI2hC,WAAa,WACbphC,EAAEhB,QAAQsb,GAAG,SAAU7a,EAAI4hC,QAC3BrhC,EAAEhB,QAAQsb,GAAG,oBAAqB7a,EAAI6hC,oBAE1C7hC,EAAI4hC,OAAS,WACL5hC,EAAIoT,aAAapT,EAAIoT,cACzB3R,KAGJzB,EAAI6hC,kBAAoB,WAChB7hC,EAAI0B,QAAU1B,EAAI0B,OAAOogC,YACE,KAAvBviC,OAAOwiC,aAA6C,MAAvBxiC,OAAOwiC,eAAqBngC,SAASC,KAAKpB,UAAY,GAE3FgB,KAOJzB,EAAIgiC,aACJhiC,EAAIiiC,cAAgB,SAAUC,EAAQC,GAElCniC,EAAIgiC,UAAUE,GAAUC,EAGxBniC,EAAI8H,GAAG,UAAYo6B,GAAUV,KAAKY,UAAUD,IAEhDniC,EAAIqiC,eAAiB,SAAUH,GAEvBliC,EAAIgiC,UAAUE,KACdliC,EAAIgiC,UAAUE,GAAU,SACjBliC,GAAIgiC,UAAUE,IAIrBliC,EAAI8H,GAAG,UAAYo6B,KACnBliC,EAAI8H,GAAG,UAAYo6B,GAAU,GAC7BliC,EAAI8H,GAAGw6B,WAAW,UAAYJ,KAGtCliC,EAAIuiC,YAAc,SAAUL,GAExB,MAAIliC,GAAI8H,GAAG,UAAYo6B,GACZV,KAAKC,MAAMzhC,EAAI8H,GAAG,UAAYo6B,IAGhCliC,EAAIgiC,UAAUE,GAAgBliC,EAAIgiC,UAAUE,GAAhD,QAETliC,EAAIwiC,WAAa,SAAUC,GAEvB,GADAA,EAAOliC,EAAEkiC,GACW,IAAhBA,EAAKnhC,OAAc,OAAO,CAG9B,IAAIohC,MAGAC,GAAa,SAAU,QAAS,SAAU,QAC1CC,IAuCJ,OAtCAH,GAAKzhC,KAAK,2BAA2ByN,KAAK,WACtC,GAAI0G,GAAQ5U,EAAEC,MACVic,EAAOtH,EAAMjN,KAAK,QAClB0D,EAAOuJ,EAAMjN,KAAK,QAClBy1B,EAAMn9B,KAAK48B,SAASnlB,aACxB,MAAI0qB,EAAUxhC,QAAQyK,IAAS,GAC3Bg3B,EAAUzhC,QAAQsb,IAAS,IAAMA,GACrC,GAAY,WAARkhB,GAAoBxoB,EAAMjN,KAAK,YAC/B06B,EAAUn5B,KAAKgT,GACfimB,EAASjmB,MACTgmB,EAAKzhC,KAAK,gBAAkByb,EAAO,aAAahO,KAAK,WAC7CjO,KAAKywB,UAAUyR,EAASjmB,GAAMhT,KAAKjJ,KAAK4W,aAIhD,QAAQxL,GACJ,IAAK,WACDg3B,EAAUn5B,KAAKgT,GACfimB,EAASjmB,MACTgmB,EAAKzhC,KAAK,eAAiByb,EAAO,MAAMhO,KAAK,WACrCjO,KAAK0xB,SAASwQ,EAASjmB,GAAMhT,KAAKjJ,KAAK4W,QAE/C,MACJ,KAAK,QACDwrB,EAAUn5B,KAAKgT,GACfgmB,EAAKzhC,KAAK,eAAiByb,EAAO,MAAMhO,KAAK,WACrCjO,KAAK0xB,UAASwQ,EAASjmB,GAAQjc,KAAK4W,QAE5C,MACJ,SACIsrB,EAASjmB,GAAQtH,EAAM6B,SAMvCyrB,EAAKphC,QAAQ,cAAeqhC,SAAUA,IAE/BA,GAEX1iC,EAAI6iC,aAAe,SAAUJ,EAAMC,GAE/B,GADAD,EAAOliC,EAAEkiC,GACW,IAAhBA,EAAKnhC,OAAc,OAAO,CAG9B,IAAIqhC,IAAa,SAAU,QAAS,SAAU,QAC1CC,IAEJH,GAAKzhC,KAAK,2BAA2ByN,KAAK,WACtC,GAAI0G,GAAQ5U,EAAEC,MACVic,EAAOtH,EAAMjN,KAAK,QAClB0D,EAAOuJ,EAAMjN,KAAK,QAClBy1B,EAAMn9B,KAAK48B,SAASnlB,aACxB,IAAKyqB,EAASjmB,MACVkmB,EAAUxhC,QAAQyK,IAAS,GAC3Bg3B,EAAUzhC,QAAQsb,IAAS,IAAMA,GACrC,GAAY,WAARkhB,GAAoBxoB,EAAMjN,KAAK,YAC/B06B,EAAUn5B,KAAKgT,GACfgmB,EAAKzhC,KAAK,gBAAkByb,EAAO,aAAahO,KAAK,WACJjO,KAAKywB,SAA9CyR,EAASjmB,GAAMtb,QAAQX,KAAK4W,QAAU,GAAmB,GACxC,QAIzB,QAAQxL,GACJ,IAAK,WACDg3B,EAAUn5B,KAAKgT,GACfgmB,EAAKzhC,KAAK,eAAiByb,EAAO,MAAMhO,KAAK,WACIjO,KAAK0xB,QAA9CwQ,EAASjmB,GAAMtb,QAAQX,KAAK4W,QAAU,GAAkB,GACxC,GAExB,MACJ,KAAK,QACDwrB,EAAUn5B,KAAKgT,GACfgmB,EAAKzhC,KAAK,eAAiByb,EAAO,MAAMhO,KAAK,WACNjO,KAAK0xB,QAApCwQ,EAASjmB,KAAUjc,KAAK4W,OAAsB,GAC9B,GAExB,MACJ,SACIjC,EAAM6B,IAAI0rB,EAASjmB,OAMnCgmB,EAAKphC,QAAQ,gBAAiBqhC,SAAUA,KAE5C1iC,EAAI6d,iBAAmB,SAAUhP,GAe7B,QAASi0B,KAEL,GAAIL,GAAOliC,EAAEC,MACT0hC,EAASO,EAAK,GAAG9O,EACrB,IAAKuO,EAAL,CACA,GAAIC,GAAWniC,EAAIwiC,WAAWC,EACzBN,KACLniC,EAAIiiC,cAAcC,EAAQC,GAC1BM,EAAKphC,QAAQ,SAAUif,KAAM6hB,MAKjC,QAASznB,KACLqoB,EAAMnoB,IAAI,gBAAiBkoB,GAC3Bj0B,EAAc+L,IAAI,mBAAoBF,GA5B1C,GADA7L,EAAgBtO,EAAEsO,GACW,IAAzBA,EAAcvN,OAAlB,CAEA,GAAIyhC,GAAQl0B,EAAc7N,KAAK,kBACV,KAAjB+hC,EAAMzhC,SAGVyhC,EAAMt0B,KAAK,WACP,GAAIklB,GAAKnzB,KAAKM,aAAa,KAC3B,IAAK6yB,EAAL,CACA,GAAI+O,GAAW1iC,EAAIuiC,YAAY5O,EAC3B+O,IAAU1iC,EAAI6iC,aAAariC,KAAMkiC,MAazCK,EAAMloB,GAAG,gBAAiBioB,GAO1Bj0B,EAAcgM,GAAG,mBAAoBH,MAIzCna,EAAEqB,UAAUiZ,GAAG,gBAAiB,8CAA+C,SAAUpP,GACrF,GAAIg3B,GAAOliC,EAAEC,KACb,IAAe,WAAXiL,EAAEG,MAAsB62B,EAAKvhC,SAAS,wBAA1C,CACe,WAAXuK,EAAEG,MAAmBH,EAAE2B,gBAE3B,IAAI0L,GAAS2pB,EAAKv6B,KAAK,WAAa,MAChC86B,EAAcP,EAAK3F,KAAK,YAAc2F,EAAKv6B,KAAK,WAEhDoC,EAAMm4B,EAAKv6B,KAAK,SACpB,IAAKoC,EAAL,CAEA,GAAIgW,EACmBA,GAAR,SAAXxH,EAA0B,GAAImqB,UAASR,EAAK,IACpCliC,EAAE2iC,gBAAgBljC,EAAIwiC,WAAWC,EAAK,IAElD,IAAIznB,GAAMza,EAAE6a,MACRtC,OAAQA,EACRxO,IAAKA,EACL04B,YAAaA,EACb1iB,KAAMA,EACNjF,WAAY,SAAUL,GAClBynB,EAAKphC,QAAQ,gBAAiBif,KAAKA,EAAMtF,IAAKA,KAElDW,MAAO,SAAUX,GACbynB,EAAKphC,QAAQ,eAAgBif,KAAKA,EAAMtF,IAAKA,KAEjDmoB,QAAS,SAAU7iB,GACfmiB,EAAKphC,QAAQ,aAAcif,KAAMA,EAAMtF,IAAKA,WAUxDhb,EAAIojC,kBACJpjC,EAAI6gB,oBAAsB,WACtB,GAAkC,IAA9B7gB,EAAIojC,eAAe9hC,OAAvB,CACA,GACIuF,GADAw8B,EAAQrjC,EAAIojC,eAAepgB,KAE3BhjB,GAAIP,OAAOqD,wBAAyB,IAAM+D,GAAe,GACxC,SAAjBw8B,EAAMxzB,QACN7P,EAAI0C,OAAO4M,KAAK+zB,EAAMr6B,MAAOnC,aAAcA,IAE1B,aAAjBw8B,EAAMxzB,QACN7P,EAAI0C,OAAOuN,KAAKozB,EAAMr6B,MAAOsB,IAAK+4B,EAAMC,SAAUz8B,aAAcA,EAAclE,WAAW,IAExE,gBAAjB0gC,EAAMxzB,QACN7P,EAAI0C,OAAOuN,KAAKozB,EAAMr6B,MAAOqH,QAASgzB,EAAME,aAAc18B,aAAcA,EAAclE,WAAW,IAEhF,iBAAjB0gC,EAAMxzB,QACN7P,EAAI0C,OAAOuN,KAAKozB,EAAMr6B,MAAO/I,SAAUojC,EAAMG,cAAe38B,aAAcA,EAAclE,WAAW,MAI3G3C,EAAIyjC,cAAgB,WAWhB,QAASC,GAAej4B,GACpB,IAAIk4B,EAAJ,CACA,GAAI3zB,GAAWhQ,EAAIgQ,QACnB,IAAKA,EAAL,CACA,GAAIqB,GAAQ5F,EAAE4F,KAOd,IANKA,IACDA,GACImQ,UAAWxhB,EAAIsI,MAAMnH,QAAQ6O,GAC7B1F,IAAM0F,EAASlG,QAAQ,OAG3BuH,EAAMmQ,UAAY,GAAtB,CACA,GAII3a,GAJAmC,EAAOhJ,EAAIsI,MAAM+I,EAAMmQ,WACvB8hB,EAAWjyB,GAASA,EAAM/G,KAAOzH,OACjC0gC,EAAelyB,GAASA,EAAMhB,SAAWxN,OACzC2gC,EAAgBnyB,GAASA,EAAMpR,UAAY4C,MAG3C7C,GAAIP,OAAOqD,wBAAyB,IAAM+D,GAAe,GAEzDy8B,IAAat6B,EAAKsB,MACdtB,EAAKc,QAAQ3I,QAAQmiC,IAAa,EAE9Bt6B,EAAKU,gBACL1J,EAAI0C,OAAO4M,KAAKtG,GAAOsB,IAAIzH,OAAWgE,aAAcA,EAAclE,WAAW,EAAOsa,aAAY,IAGhGjd,EAAIojC,eAAe35B,MACfoG,OAAQ,OACR7G,KAAMA,IAITu6B,EAEDv6B,EAAKU,gBACL1J,EAAI0C,OAAOuN,KAAKjH,GAAOqH,QAAQkzB,EAAc18B,aAAcA,EAAclE,WAAW,IAGpF3C,EAAIojC,eAAexgB,SACf/S,OAAQ,cACR0zB,aAAcA,EACdv6B,KAAMA,IAKTw6B,EAEDx6B,EAAKU,gBACL1J,EAAI0C,OAAOuN,KAAKjH,GAAO/I,SAASujC,EAAe38B,aAAcA,EAAclE,WAAW,IAGtF3C,EAAIojC,eAAexgB,SACf/S,OAAQ,eACR2zB,cAAeA,EACfx6B,KAAMA,IAMVA,EAAKU,gBACL1J,EAAI0C,OAAOuN,KAAKjH,GAAOsB,IAAIg5B,EAAUz8B,aAAcA,EAAclE,WAAW,IAG5E3C,EAAIojC,eAAexgB,SACf/S,OAAQ,WACRyzB,SAAUA,EACVt6B,KAAMA,QA/E1B,GAAI26B,EACA3jC,GAAIP,OAAOuD,yBACX2gC,GAAgB,EAChBpjC,EAAEhB,QAAQsb,GAAG,OAAQ,WACjB9Y,WAAW,WACP4hC,GAAgB,GACjB,MA+EXpjC,EAAEhB,QAAQsb,GAAG,WAAY6oB,IAO7B1jC,EAAI4jC,OAAS,SAAU36B,EAAWxJ,GAC9B,MAAO,IAAIokC,QAAO56B,EAAWxJ,IAEjCO,EAAI+d,eAAiB,SAAUlP,GAI3B,QAASi1B,GAAsBC,GAC3B,QAASC,KACLD,EAAOzyB,UACPqB,EAAKiI,IAAI,mBAAoBopB,GAEjCrxB,EAAKkI,GAAG,mBAAoBmpB,GARhC,GAAIrxB,GAAOpS,EAAEsO,GACTo1B,EAAUtxB,EAAK3R,KAAK,eACxB,IAAuB,IAAnBijC,EAAQ3iC,OAQZ,IAAK,GAAImH,GAAI,EAAGA,EAAIw7B,EAAQ3iC,OAAQmH,IAAK,CACrC,GACIhJ,GADAmkC,EAASK,EAAQ75B,GAAG3B,EAGpBhJ,GADAmkC,EAAOtjB,KAAK,UACHkhB,KAAKC,MAAMmC,EAAOtjB,KAAK,WAGvBsjB,EAAOzqB,SAEpB,IAAI+qB,GAAUlkC,EAAI4jC,OAAOA,EAAO,GAAInkC,EACpCqkC,GAAsBI,KAG9BlkC,EAAIoe,iBAAmB,SAAUvP,GAC7B,GAAI8D,GAAOpS,EAAEsO,GACTs1B,EAAUxxB,EAAK3R,KAAK,eACxB,IAAuB,IAAnBmjC,EAAQ7iC,OACZ,IAAK,GAAImH,GAAI,EAAGA,EAAI07B,EAAQ7iC,OAAQmH,IAAK,CACrC,GAAI27B,GAAiBD,EAAQ,GAAGP,MAC5BQ,IACAA,EAAehO,QAAO,IASlC,IAAIiO,GAAe,SAAU5kC,GACzB,GAAegJ,GAAX67B,EAAK9jC,KAELkI,GACA67B,UACAC,aAAc,EACdC,aAAc,GACdC,MAAO,IACPC,MAAM,EACNC,QAAS,EACTC,QAAS,EACTC,YAAY,EACZC,wBAAwB,EACxBn5B,KAAM,aACNgH,QAAQ,EACRgC,SAAS,EACTowB,MAAO,QACPC,cAAc,EACdC,aAAc,QACdC,OAAQ,KACRC,MAAM,EACNC,aAAa,EACbC,uBAAuB,EACvBC,8BAA8B,EAgBlC9lC,GAASA,KACT,KAAK,GAAIsJ,KAAOL,GACe,mBAAhBjJ,GAAOsJ,KACdtJ,EAAOsJ,GAAOL,EAASK,GAI/Bu7B,GAAG7kC,OAASA,CAEZ,IAAI+lC,GAAgC,SAApBlB,EAAG7kC,OAAOulC,MAAmB,cAAgB,GAEzDS,EAAiBnB,EAAG7kC,OAAOgmC,gBACX,oGAEmF,SAAnBnB,EAAG7kC,OAAOmM,MAAmB,QAAU,qGAAuG45B,EAAY,eAAiBlB,EAAG7kC,OAAOylC,aAAe,2HAChJZ,EAAG7kC,OAAO0lC,OAAS,+FAIvJO,EAAkBpB,EAAG7kC,OAAOimC,iBACZ,+HAEkFF,EAAY,kFACZA,EAAY,yBAI9GvlB,EAAWqkB,EAAG7kC,OAAOwgB,UACT,2CAA6CqkB,EAAG7kC,OAAOulC,MAAQ,uVAe3EW,EAAiBrB,EAAG7kC,OAAO4lC,YAE1Bf,EAAG7kC,OAAOmmC,mBAAqB,gGAAsH,SAApBtB,EAAG7kC,OAAOulC,MAAmB,mBAAqB,IAAM,+GADzLV,EAAG7kC,OAAOkmC,eAAiB,4HAG5BE,EAAgBvB,EAAG7kC,OAAOomC,eAAiBvB,EAAG7kC,OAAOulC,MACrDc,EAAmBxB,EAAG7kC,OAAOqmC,kBAAoB,6DAA+DD,EAAgB,uBAChIE,EAAkBzB,EAAG7kC,OAAOsmC,iBAAmB,6FAE/CC,EAAiB1B,EAAG7kC,OAAOumC,gBAAkB,0FAC7CC,EAAa,GACbC,EAAe,EACnB,KAAKz9B,EAAI,EAAGA,EAAI67B,EAAG7kC,OAAO8kC,OAAOjjC,OAAQmH,IAAM,CAC3C,GAAI09B,GAAQ7B,EAAG7kC,OAAO8kC,OAAO97B,GACzB29B,EAAe,EAGG,iBAAZ,IAAwBD,YAAiBE,QAI3CD,EADAD,EAAMhlC,QAAQ,MAAQ,GAAKglC,EAAMhlC,QAAQ,MAAQ,EAClC6kC,EAAenmC,QAAQ,YAAasmC,GAEpCR,EAAc9lC,QAAQ,WAAYsmC,GAK5B,gBAAZ,KAGTA,EAAMG,eAAe,SAAWH,EAAMxZ,KAAKrrB,OAAS,EACpD8kC,EAAeJ,EAAenmC,QAAQ,YAAasmC,EAAMxZ,MAClDwZ,EAAMG,eAAe,QAAUH,EAAM77B,IAAIhJ,OAAS,IACzD8kC,EAAeT,EAAc9lC,QAAQ,WAAYsmC,EAAM77B,MAIvD67B,EAAMG,eAAe,YAAcH,EAAMI,QAAQjlC,OAAS,EAC1D4kC,GAAgBH,EAAgBlmC,QAAQ,eAAgBsmC,EAAMI,SAAS1mC,QAAQ,oBAAqB4I,GAEpG29B,EAAeA,EAAavmC,QAAQ,eAAgB,KAI5DomC,GAAcG,EAIlB,GAAII,GAAevmB,EACEpgB,QAAQ,aAAeykC,EAAG7kC,OAAOmT,OAAS6yB,EAAiB,IAC3D5lC,QAAQ,eAAiBykC,EAAG7kC,OAAOmT,OAAS,GAAK,aACjD/S,QAAQ,aAAcomC,GACtBpmC,QAAQ,eAAgBimC,EAAiBjmC,QAAQ,gBAAiBqmC,IAClErmC,QAAQ,cAAgBykC,EAAG7kC,OAAOmV,QAAU8wB,EAAkB,GAEnFpB,GAAGmC,YAAcnC,EAAG7kC,OAAO+kC,aAC3BF,EAAGoC,UAAYpC,EAAGmC,YAClBnC,EAAG5a,QAAS,EAEZ4a,EAAGvD,KAAO,SAAUrvB,GAGhB,MAFqB,mBAAVA,KAAuBA,EAAQ4yB,EAAGmC,aAC7C/0B,EAAQtQ,SAASsQ,EAAO,IACpB4yB,EAAG5a,QAAU4a,EAAGV,WAChBU,GAAGV,OAAO+C,QAAQj1B,IAGtB4yB,EAAG5a,QAAS,EACZ4a,EAAGoC,UAAYh1B,EAEQ,eAAnB4yB,EAAG7kC,OAAOmM,MACVrL,EAAE,QAAQ0M,OAAOu5B,GAEE,UAAnBlC,EAAG7kC,OAAOmM,OACV04B,EAAGjc,MAAQroB,EAAIqoB,MAAM,0CAA4Cme,EAAe,UAChFjmC,EAAE+jC,EAAGjc,OAAOxN,GAAG,SAAUypB,EAAGsC,eAET,SAAnBtC,EAAG7kC,OAAOmM,MACVrL,EAAEqB,UAAUiZ,GAAG,iBAAkBypB,EAAGtnB,kBACpCzc,EAAEqB,UAAUiZ,GAAG,mBAAoBypB,EAAGhnB,oBACjCgnB,EAAG7kC,OAAOuJ,OAAMs7B,EAAG7kC,OAAOuJ,KAAOhJ,EAAIgQ,cAC1Cs0B,GAAG7kC,OAAOuJ,KAAKoH,YAAYo2B,KAG/BlC,EAAG7Y,OAAO6Y,EAAGoC,gBACTpC,EAAG7kC,OAAOonC,QACVvC,EAAG7kC,OAAOonC,OAAOvC,OAIzBA,EAAGjgB,MAAQ,WACPigB,EAAG5a,QAAS,EACP4a,EAAGwC,iBAAiD,IAA9BxC,EAAGwC,gBAAgBxlC,SAG1CgjC,EAAG7kC,OAAOsnC,SACVzC,EAAG7kC,OAAOsnC,QAAQzC,GAGtBA,EAAG30B,cAAa,GAEO,eAAnB20B,EAAG7kC,OAAOmM,MACV04B,EAAGr7B,UAAUZ,YAAY,oBAAoBD,SAAS,qBAAqB6Z,aAAa,WACpFqiB,EAAGr7B,UAAUyG,WAIrB40B,EAAGV,OAAOtyB,UAEVgzB,EAAGV,OAASU,EAAGwC,gBAAkBxC,EAAG0C,cAAgB1C,EAAG2C,OAASC,EAAeC,EAAaC,EAAiBvkC,SAGjHyhC,EAAGsC,aAAe,SAAUn7B,GACxB64B,EAAGjgB,QACH9jB,EAAE+jC,EAAGjc,OAAOzN,IAAI,iBAAkB0pB,EAAGsC,eAEzCtC,EAAGtnB,iBAAmB,SAAUvR,GACD,yBAAvBA,EAAE6mB,OAAO3f,KAAK8J,MACd6nB,EAAG7Y,OAAO6Y,EAAGoC,WAEjBnmC,EAAEqB,UAAUgZ,IAAI,iBAAkB0pB,EAAGtnB,mBAEzCsnB,EAAGhnB,mBAAqB,SAAU7R,GACH,yBAAvBA,EAAE6mB,OAAO3f,KAAK8J,MACd6nB,EAAGjgB,QAEP9jB,EAAEqB,UAAUgZ,IAAI,mBAAoB0pB,EAAGhnB,qBAG3CgnB,EAAG+C,wBAA0B,SAAUzD,GACnCU,EAAGmC,YAAc7C,EAAO6C,WAExB,IAAIa,GAAU1D,EAAO6C,YAAc,EAC/Bc,EAAQ3D,EAAOqD,OAAO3lC,MAoB1B,IAnBIgjC,EAAG7kC,OAAO2lC,OACVmC,GAAgB,EAChBD,GAAoB1D,EAAO4D,aACb,EAAVF,IAAaA,EAAUC,EAAQD,GAC/BA,EAAUC,IAAOD,GAAoBC,IAE7CjD,EAAGr7B,UAAUjI,KAAK,0BAA0BoX,KAAKkvB,GACjDhD,EAAGr7B,UAAUjI,KAAK,wBAAwBoX,KAAKmvB,GAE/ChnC,EAAE,4CAA4C8H,YAAY,+BAEtDu7B,EAAO6D,cAAgBnD,EAAG7kC,OAAO2lC,MACjC7kC,EAAE,uBAAuB6H,SAAS,+BAElCw7B,EAAO8D,QAAUpD,EAAG7kC,OAAO2lC,MAC3B7kC,EAAE,uBAAuB6H,SAAS,+BAIlCk8B,EAAGqD,SAASrmC,OAAS,EAAG,CACxBgjC,EAAGsD,kBAAkB5mC,KAAK,iCAAiCqH,YAAY,+BACvE,IAAIw/B,GAAevD,EAAG7kC,OAAO2lC,KAAOxB,EAAOqD,OAAO78B,GAAGw5B,EAAO6C,aAAav+B,KAAK,2BAA6Bo8B,EAAGmC,WAC9GnC,GAAGsD,kBAAkB5mC,KAAK,wBAA0B6mC,EAAe,MAAMz/B,SAAS,gCAKtF,GAAI0/B,GAAqBlE,EAAOqD,OAAO78B,GAAGw5B,EAAOmE,eAAe/mC,KAAK,QACjE8mC,GAAmBxmC,OAAS,GACxB,SAAWwmC,GAAmB,IAAIA,EAAmB,GAAGE,QAG5D1D,EAAG7kC,OAAOwoC,oBAAoB3D,EAAG7kC,OAAOwoC,mBAAmBrE,IAEnEU,EAAG4D,sBAAwB,SAAUtE,GAE7BU,EAAG7kC,OAAOklC,MAAQuC,GAAgBtD,EAAOmE,gBAAkBnE,EAAO6C,cAClEU,EAAWt5B,UAAU,+BACrBu5B,EAAev5B,UAAU,sBACzBq5B,EAAeC,EAAaC,EAAiBvkC,OAC7CslC,EAAQC,EAAe,GAEvB9D,EAAG7kC,OAAO4oC,kBAAkB/D,EAAG7kC,OAAO4oC,iBAAiBzE,IAG/DU,EAAG7Y,OAAS,SAAU/Z,GAEd4yB,EAAGr7B,UADgB,SAAnBq7B,EAAG7kC,OAAOmM,KACKrL,EAAE,mCAAmCoM,QAAQ,SAG7CpM,EAAE,kBAEE,eAAnB+jC,EAAG7kC,OAAOmM,OACV04B,EAAGr7B,UAAUb,SAAS,oBACtBpI,EAAIoT,YAAYkxB,EAAGr7B,YAEvBq7B,EAAGwC,gBAAkBxC,EAAGr7B,UAAUjI,KAAK,mCACvCsjC,EAAG0C,cAAgB1C,EAAGr7B,UAAUjI,KAAK,iCACrCsjC,EAAG2C,OAAS3C,EAAGr7B,UAAUjI,KAAK,wBAC9BsjC,EAAGsD,kBAAoBtD,EAAGr7B,UAAUjI,KAAK,2BACzCsjC,EAAGqD,SAAWrD,EAAGr7B,UAAUjI,KAAK,yBAEhC,IAAIsnC,IACAC,WAAYjE,EAAG7kC,OAAO8oC,YAAc,sBACpCC,WAAYlE,EAAG7kC,OAAO+oC,YAAc,sBACpCC,YAAanE,EAAG7kC,OAAOgpC,YACvBjE,aAAc9yB,EACd+yB,aAAcH,EAAG7kC,OAAOglC,aACxBC,MAAOJ,EAAG7kC,OAAOilC,MACjBU,KAAMd,EAAG7kC,OAAO2lC,KAChBC,YAAaf,EAAG7kC,OAAO4lC,YACvBC,sBAAuBhB,EAAG7kC,OAAO6lC,sBACjCC,6BAA8BjB,EAAG7kC,OAAO8lC,6BACxCmD,cAAepE,EAAG7kC,OAAO4lC,aAAc,GAAQ,EAC/CsD,MAAO,SAAU/E,EAAQn4B,GACjB64B,EAAG7kC,OAAOkpC,OAAOrE,EAAG7kC,OAAOkpC,MAAM/E,EAAQn4B,IAEjD6Y,QAAS,SAAUsf,EAAQn4B,GACnB64B,EAAG7kC,OAAOqlC,YAAYR,EAAGsE,mBACzBtE,EAAG7kC,OAAO6kB,SAASggB,EAAG7kC,OAAO6kB,QAAQsf,EAAQn4B,IAErDo9B,YAAa,SAAUjF,EAAQn4B,GAC3B64B,EAAGwE,WAAWvoC,EAAEkL,EAAEiB,QAAQC,QAAQ,yBAC9B23B,EAAG7kC,OAAOopC,aAAavE,EAAG7kC,OAAOopC,YAAYjF,EAAQn4B,IAE7Ds9B,kBAAmB,SAAUnF,GACzBU,EAAG+C,wBAAwBzD,IAE/BoF,gBAAiB,SAAUpF,GACvBU,EAAG4D,sBAAsBtE,IAE7BqF,gBAAiB,SAAUrF,EAAQsF,EAAOC,GAClC7E,EAAG7kC,OAAOwpC,iBAAiB3E,EAAG7kC,OAAOwpC,gBAAgB3E,EAAI4E,EAAOC,IAExEC,iBAAkB,SAAUxF,EAAQsF,EAAOC,GACvC5oC,EAAE2oC,GAAO7gC,YAAY,4BACjBi8B,EAAG7kC,OAAO2pC,kBAAkB9E,EAAG7kC,OAAO2pC,iBAAiB9E,EAAI4E,EAAOC,IAI1E7E,GAAG7kC,OAAOwlC,cAAmC,SAAnBX,EAAG7kC,OAAOmM,OACpC08B,EAAee,aAAe/E,EAAGgF,qBACjChB,EAAeiB,oBAAsBjF,EAAGkF,oBACxClB,EAAemB,WAAanF,EAAGoF,oBAGnCpF,EAAGV,OAAS5jC,EAAI4jC,OAAOU,EAAGwC,gBAAiBwB,GAC7B,IAAV52B,GACA4yB,EAAG+C,wBAAwB/C,EAAGV,QAElCU,EAAG30B,gBAEP20B,EAAG30B,aAAe,SAAUC,GACxB,GAAIC,GAASD,EAAS,MAAQ,IAG9B,IAAI00B,EAAG7kC,OAAOklC,KAAM,CAChB,GAAIj4B,GAAS43B,EAAG7kC,OAAO2lC,KAAOd,EAAGV,OAAOqD,OAAS3C,EAAG2C,MAEpDv6B,GAAOmD,GAAQ,eAAgBy0B,EAAGqF,qBAClCj9B,EAAOmD,GAAQ,gBAAiBy0B,EAAGsF,sBACnCl9B,EAAOmD,GAAQ,aAAcy0B,EAAGuF,mBAGhCn9B,EAAOmD,GAAQ7P,EAAIwH,YAAYC,MAAO68B,EAAGwF,mBACzCp9B,EAAOmD,GAAQ7P,EAAIwH,YAAYI,KAAM08B,EAAGyF,kBACxCr9B,EAAOmD,GAAQ7P,EAAIwH,YAAYK,IAAKy8B,EAAG0F,iBAE3C1F,EAAGr7B,UAAUjI,KAAK,6BAA6B6O,GAAQ,QAASy0B,EAAGjgB,OAOvEigB,GAAG2F,SAAU,EACb3F,EAAGsE,iBAAmB,WACdtE,EAAGr7B,WAAWq7B,EAAGr7B,UAAUymB,YAAY,yBACvC4U,EAAG7kC,OAAOslC,wBAAwBT,EAAGsD,kBAAkBlY,YAAY,kCACvE4U,EAAG2F,SAAW3F,EAAG2F,SAErB3F,EAAG4F,iBAAmB,WACd5F,EAAGr7B,WAAWq7B,EAAGr7B,UAAUb,SAAS,yBACpCk8B,EAAG7kC,OAAOslC,wBAAwBT,EAAGsD,kBAAkBx/B,SAAS,kCACpEk8B,EAAG2F,SAAU,GAEjB3F,EAAG6F,kBAAoB,WACf7F,EAAGr7B,WAAWq7B,EAAGr7B,UAAUZ,YAAY,yBACvCi8B,EAAG7kC,OAAOslC,wBAAwBT,EAAGsD,kBAAkBv/B,YAAY,kCACvEi8B,EAAG2F,SAAU,EAIjB,IAAI/C,GAAcC,EAAYC,EAAgBe,EAAQ,EAAGC,EAAe,EAAGgC,GAAY,CACvF9F,GAAGqF,oBAAsB,SAAUl+B,GAC/B,MAAKy7B,IAAiBA,EAAa5lC,SAC/B4lC,EAAe3mC,EAAEC,MACW,IAAxB0mC,EAAa5lC,SAAc4lC,EAAe5C,EAAGV,OAAOqD,OAAO78B,GAAGk6B,EAAGV,OAAO6C,cAC5EU,EAAaD,EAAalmC,KAAK,oBAC/BomC,EAAiBD,EAAW90B,OAAO,iCACL,IAA1B+0B,EAAe9lC,SAKvB6lC,EAAWjxB,WAAW,QACtBk0B,GAAY,SALJjD,EAAatkC,SAOzByhC,EAAGsF,qBAAuB,SAAUn+B,GAC3B07B,GAAoC,IAAtBA,EAAW7lC,SAC9B6mC,EAAQ18B,EAAE08B,MAAQC,EACdD,EAAQ7D,EAAG7kC,OAAOmlC,UAClBuD,EAAQ7D,EAAG7kC,OAAOmlC,QAAU,EAAIx4B,KAAKmiB,IAAK4Z,EAAQ7D,EAAG7kC,OAAOmlC,QAAU,EAAI,KAE1EuD,EAAQ7D,EAAG7kC,OAAOolC,UAClBsD,EAAS7D,EAAG7kC,OAAOolC,QAAU,EAAIz4B,KAAKmiB,IAAK+V,EAAG7kC,OAAOolC,QAAUsD,EAAQ,EAAI,KAE/EhB,EAAWt5B,UAAU,4BAA8Bs6B,EAAQ,OAE/D7D,EAAGuF,kBAAoB,SAAUp+B,GACxB07B,GAAoC,IAAtBA,EAAW7lC,SAC9B6mC,EAAQ/7B,KAAK2b,IAAI3b,KAAK4b,IAAImgB,EAAO7D,EAAG7kC,OAAOmlC,SAAUN,EAAG7kC,OAAOolC,SAC/DsC,EAAWjxB,WAAWouB,EAAG7kC,OAAOilC,OAAO72B,UAAU,4BAA8Bs6B,EAAQ,KACvFC,EAAeD,EACfiC,GAAY,EACE,IAAVjC,IAAajB,EAAerkC,UAEpCyhC,EAAGwE,WAAa,WACP5B,IACDA,EAAe5C,EAAGV,OAAOqD,OAAO78B,GAAGk6B,EAAGV,OAAO6C,aAC7CU,EAAaD,EAAalmC,KAAK,oBAC/BomC,EAAiBD,EAAW90B,OAAO,kCAElC80B,GAAoC,IAAtBA,EAAW7lC,SAC9B8lC,EAAelxB,WAAW,KAAKrI,UAAU,sBACrCs6B,GAAmB,IAAVA,GACTA,EAAQC,EAAe,EACvBjB,EAAWjxB,WAAW,KAAKrI,UAAU,+BACrCq5B,EAAerkC,SAGfslC,EAAQC,EAAe9D,EAAG7kC,OAAOmlC,QACjCuC,EAAWjxB,WAAW,KAAKrI,UAAU,4BAA8Bs6B,EAAQ,OAInF,IAAIkC,GAAgBC,EAAcC,EAAeC,EAAeC,EAAWC,EAAWC,EAAWC,EAAWC,EAAYC,EAA+DC,EAAaC,EAAaC,EAAuBC,EAAkBC,EAAWC,EAAuBC,EAAvJC,KAAwBC,IAE7JjH,GAAGwF,kBAAoB,SAAUr+B,GACxB07B,GAAoC,IAAtBA,EAAW7lC,SAC1B+oC,IACkB,YAAlBrqC,EAAI0B,OAAOg4B,IAAkBjuB,EAAE2B,iBACnCi9B,GAAiB,EACjBiB,EAAkB3/B,EAAe,eAAXF,EAAEG,KAAwBH,EAAEI,cAAc,GAAGC,MAAQL,EAAEK,MAC7Ew/B,EAAkBv/B,EAAe,eAAXN,EAAEG,KAAwBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,SAEjFs4B,EAAGyF,iBAAmB,SAAUt+B,GAC5B,GAAK07B,GAAoC,IAAtBA,EAAW7lC,SAC9BgjC,EAAGV,OAAOxD,YAAa,EAClBiK,GAAmBnD,GAAxB,CAEKoD,IACDO,EAAa1D,EAAW,GAAG9yB,YAC3By2B,EAAc3D,EAAW,GAAGvmC,aAC5BmqC,EAAcxqC,EAAEirC,aAAapE,EAAe,GAAI,MAAQ,EACxD4D,EAAczqC,EAAEirC,aAAapE,EAAe,GAAI,MAAQ,EACxDA,EAAelxB,WAAW,GAG9B,IAAIu1B,GAAcZ,EAAa1C,EAC3BuD,EAAeZ,EAAc3C,CAEjC,MAAIsD,EAAcnH,EAAGV,OAAOn3B,OAASi/B,EAAepH,EAAGV,OAAOjjC,QAA9D,CAUA,GARA8pC,EAAYr+B,KAAK4b,IAAKsc,EAAGV,OAAOn3B,MAAQ,EAAIg/B,EAAc,EAAI,GAC9Dd,GAAaF,EACbC,EAAYt+B,KAAK4b,IAAKsc,EAAGV,OAAOjjC,OAAS,EAAI+qC,EAAe,EAAI,GAChEd,GAAaF,EAEba,EAAoB5/B,EAAe,cAAXF,EAAEG,KAAuBH,EAAEI,cAAc,GAAGC,MAAQL,EAAEK,MAC9Ey/B,EAAoBx/B,EAAe,cAAXN,EAAEG,KAAuBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO;CAEzEs+B,IAAiBF,IAEbh+B,KAAKu/B,MAAMlB,KAAer+B,KAAKu/B,MAAMZ,IAAgBQ,EAAoB5/B,EAAI2/B,EAAkB3/B,GAC/FS,KAAKu/B,MAAMhB,KAAev+B,KAAKu/B,MAAMZ,IAAgBQ,EAAoB5/B,EAAI2/B,EAAkB3/B,GAGhG,YADA0+B,GAAiB,EAIzB5+B,GAAE2B,iBACF3B,EAAE60B,kBACFgK,GAAe,EACfC,EAAgBgB,EAAoB5/B,EAAI2/B,EAAkB3/B,EAAIo/B,EAC9DP,EAAgBe,EAAoBx/B,EAAIu/B,EAAkBv/B,EAAIi/B,EAE1CP,EAAhBF,IACAA,EAAiBE,EAAY,EAAIr+B,KAAKmiB,IAAKkc,EAAYF,EAAgB,EAAI,KAE3EA,EAAgBI,IAChBJ,EAAgBI,EAAY,EAAIv+B,KAAKmiB,IAAKgc,EAAgBI,EAAY,EAAI,KAG1DD,EAAhBF,IACAA,EAAiBE,EAAY,EAAIt+B,KAAKmiB,IAAKmc,EAAYF,EAAgB,EAAI,KAE3EA,EAAgBI,IAChBJ,EAAgBI,EAAY,EAAIx+B,KAAKmiB,IAAKic,EAAgBI,EAAY,EAAI,KAIzEK,IAAuBA,EAAwBM,EAAoB5/B,GACnEy/B,IAAuBA,EAAwBG,EAAoBx/B,GACnEm/B,IAAkBA,EAAmBj/B,KAAK2/B,OAC/CT,GAAaI,EAAoB5/B,EAAIs/B,IAA0Bh/B,KAAK2/B,MAAQV,GAAoB,EAChGG,GAAaE,EAAoBx/B,EAAIq/B,IAA0Bn/B,KAAK2/B,MAAQV,GAAoB,EAC5F9+B,KAAKC,IAAIk/B,EAAoB5/B,EAAIs/B,GAAyB,IAAGE,EAAY,GACzE/+B,KAAKC,IAAIk/B,EAAoBx/B,EAAIq/B,GAAyB,IAAGC,EAAY,GAC7EJ,EAAwBM,EAAoB5/B,EAC5Cy/B,EAAwBG,EAAoBx/B,EAC5Cm/B,EAAmBj/B,KAAK2/B,MAExBxE,EAAev5B,UAAU,eAAiB08B,EAAgB,OAASC,EAAgB,YAEvFlG,EAAG0F,gBAAkB,SAAUv+B,GAC3B,GAAK07B,GAAoC,IAAtBA,EAAW7lC,OAA9B,CACA,IAAK+oC,IAAmBC,EAGpB,MAFAD,IAAiB,OACjBC,GAAe,EAGnBD,IAAiB,EACjBC,GAAe,CACf,IAAIuB,GAAoB,IACpBC,EAAoB,IACpBC,EAAoBZ,EAAYU,EAChCG,EAAezB,EAAgBwB,EAC/BE,EAAoBZ,EAAYS,EAChCI,EAAe1B,EAAgByB,CAGjB,KAAdd,IAAiBU,EAAoBz/B,KAAKC,KAAK2/B,EAAezB,GAAiBY,IACjE,IAAdE,IAAiBS,EAAoB1/B,KAAKC,KAAK6/B,EAAe1B,GAAiBa,GACnF,IAAIc,GAAmB//B,KAAK2b,IAAI8jB,EAAmBC,EAEnDvB,GAAgByB,EAChBxB,EAAgB0B,CAGhB,IAAIT,GAAcZ,EAAa1C,EAC3BuD,EAAeZ,EAAc3C,CACjCsC,GAAYr+B,KAAK4b,IAAKsc,EAAGV,OAAOn3B,MAAQ,EAAIg/B,EAAc,EAAI,GAC9Dd,GAAaF,EACbC,EAAYt+B,KAAK4b,IAAKsc,EAAGV,OAAOjjC,OAAS,EAAI+qC,EAAe,EAAI,GAChEd,GAAaF,EACbH,EAAgBn+B,KAAK2b,IAAI3b,KAAK4b,IAAIuiB,EAAeI,GAAYF,GAC7DD,EAAgBp+B,KAAK2b,IAAI3b,KAAK4b,IAAIwiB,EAAeI,GAAYF,GAE7DtD,EAAelxB,WAAWi2B,GAAkBt+B,UAAU,eAAiB08B,EAAgB,OAASC,EAAgB,UAIpH,IAEI4B,GAAkBC,EAAmBC,EAAkDC,EAAyBC,EAFhHC,GAAwB,EACxBC,GAAoB,EACsCC,GAAsB,CA0DpF,OAzDArI,GAAGgF,qBAAuB,SAAU1F,EAAQn4B,GACnCihC,IACLD,GAAwB,IAE5BnI,EAAGkF,oBAAsB,SAAU5F,EAAQn4B,GACvC,GAAKghC,EAAL,CACKE,IACDA,GAAsB,EACtBN,EAA+B,cAAX5gC,EAAEG,KAAuBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,MAC1EugC,EAA0BjI,EAAGV,OAAOqD,OAAO78B,GAAGk6B,EAAGV,OAAO6C,aACxD+F,GAAwB,GAAKvgC,OAAQC,WAEzCT,EAAE2B,iBACFk/B,EAAiC,cAAX7gC,EAAEG,KAAuBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,MAC5EogC,EAAmBC,EAAoBC,CACvC,IAAIv+B,GAAU,EAAI3B,KAAKC,IAAI+/B,GAAoB,GAC/CG,GAAwB1+B,UAAU,kBAAqBu+B,EAAoB,SAC3E9H,EAAGV,OAAO36B,UAAUhB,IAAI,UAAW8F,GAASmI,WAAW,KAE3DouB,EAAGoF,mBAAqB,SAAU9F,EAAQn4B,GAEtC,GADAghC,GAAwB,GACnBE,EAED,YADAA,GAAsB,EAG1BA,IAAsB,EACtBD,GAAoB,CACpB,IAAIl5B,GAAOpH,KAAKC,IAAI+/B,GAChB79B,GAAW,GAAKtC,OAAQC,UAAYsgC,CACxC,OAAgB,KAAXj+B,GAAkBiF,EAAO,IAAQjF,GAAY,KAAOiF,EAAO,QAC5DzR,YAAW,WACgB,eAAnBuiC,EAAG7kC,OAAOmM,MACV04B,EAAGjgB,QAEgB,UAAnBigB,EAAG7kC,OAAOmM,MACV5L,EAAIkN,WAAWo3B,EAAGjc,OAElBic,EAAG7kC,OAAOmtC,gBACVtI,EAAG7kC,OAAOmtC,eAAetI,GAE7BoI,GAAoB,GACrB,IAGM,IAATl5B,EACA+4B,EAAwBnkC,SAAS,iBAAiBiH,cAAc,WAC5Dq9B,GAAoB,EACpBH,EAAwBlkC,YAAY,mBAIxCqkC,GAAoB,EAExBpI,EAAGV,OAAO36B,UAAUhB,IAAI,UAAW,IAAIiO,WAAW,QAClDq2B,GAAwB1+B,UAAU,MAG/By2B,EAGXtkC,GAAI6sC,aAAe,SAAUptC,GACzB,MAAO,IAAI4kC,GAAa5kC,GAO5B,IAAIqtC,GAAS,SAAUrtC,GA0CnB,QAASopB,KACL,GAAIpD,IAAY,CAChB,OAAKsnB,GAAEttC,OAAOutC,kBAAqBD,EAAEttC,OAAOwtC,gBACvCF,EAAEG,QAAUH,EAAEttC,OAAO0V,QAClB43B,EAAEttC,OAAOwtC,cAAexnB,GAAY,EAEhCzlB,EAAI0B,OAAOkV,IACX6O,EAAYzlB,EAAI0B,OAAOC,MAAO,GAAO,EAGjCpB,EAAEhB,QAAQkN,SAAW,MAAKgZ,GAAY,IAI/CA,GAZ2DA,EActE,QAAS0nB,KACL,MAAIJ,GAAErjB,QAAUqjB,EAAE9jC,WAAa8jC,EAAE9jC,UAAU3H,OAAS,GAAKyrC,EAAE9jC,UAAU0D,QAAQ,YAAYrL,OAAS,GAAU,GAChG,EAgUhB,QAAS8rC,KACL,GAAKL,EAAErjB,OACP,IAAK,GAAIjhB,GAAI,EAAGA,EAAIskC,EAAEzX,KAAKh0B,OAAQmH,IAC1BskC,EAAEzX,KAAK7sB,GAAG4kC,UACXN,EAAEzX,KAAK7sB,GAAG6kC,WACVP,EAAEzX,KAAK7sB,GAAG8kC,SAASR,EAAEzX,KAAK7sB,GAAG2O,MAAO,GAAG,IA8CnD,QAASo2B,GAAY/hC,GAEjB,GADAA,EAAE2B,kBACE2/B,EAAErjB,SACNqjB,EAAEhM,OACEgM,EAAEttC,OAAOguC,gBAAkB5kB,KAAa,CACxC,GAAIpP,GAAcszB,EAAE53B,MAAMxI,QAAQ,gBAClC,IAA2B,IAAvB8M,EAAYnY,OAAc,MAE9B,IAIIosC,GAJAC,EAAavsC,SAASqY,EAAYxR,IAAI,eAAgB,IACtD2lC,EAAgBxsC,SAASqY,EAAYxR,IAAI,kBAAmB,IAC5DouB,EAAa5c,EAAY,GAAG7Y,aAAe+sC,EAAaZ,EAAE9jC,UAAUtI,SACpEktC,EAAmBp0B,EAAY,GAAG/Y,aAAeitC,EAAaZ,EAAE9jC,UAAUtI,SAE1EmtC,EAAWf,EAAE53B,MAAMrI,SAASga,IAAM6mB,EAAaZ,EAAE53B,MAAM,GAAGvU,YAC9D,IAAIktC,EAAWzX,EAAY,CACvB,GAAI51B,GAAYgZ,EAAYhZ,YAAcqtC,EAAWzX,CACjD51B,GAAY41B,EAAawX,IACzBH,EAAmBjtC,EAAY41B,EAAawX,EAAmBD,EAC3DvX,IAAewX,IACfH,EAAmBX,EAAE9jC,UAAUtI,UAEnC8Y,EAAYxR,KAAKkS,iBAAkB,EAAqB,QAE5DV,EAAYhZ,UAAUA,EAAW,OAI7C,QAASstC,GAAiBtiC,GAClB0hC,MACAJ,EAAE53B,OAAS43B,EAAE53B,MAAM7T,OAAS,EACxBmK,EAAEiB,SAAWqgC,EAAE53B,MAAM,IAAsD,IAAhD5U,EAAEkL,EAAEiB,QAAQC,QAAQ,iBAAiBrL,QAAcyrC,EAAE1oB,QAGhC,IAAhD9jB,EAAEkL,EAAEiB,QAAQC,QAAQ,iBAAiBrL,QAAcyrC,EAAE1oB,SAuBjE,QAAS2pB,KACLjB,EAAErjB,QAAS,EACPqjB,EAAE53B,OAAS43B,EAAE53B,MAAM7T,OAAS,GAAGyrC,EAAE53B,MAAMxI,QAAQ,iBAAiB1E,KAAKkS,iBAAkB,KACvF4yB,EAAEttC,OAAOsnC,SAASgG,EAAEttC,OAAOsnC,QAAQgG,GAGvCA,EAAE9jC,UAAUjI,KAAK,qBAAqByN,KAAK,WACvCs+B,EAAEkB,iBAAiBztC,QA7e3B,GAAIusC,GAAIvsC,KACJkI,GACAwlC,wBAAwB,EACxBC,yBAAyB,EACzBC,cAAc,EACdC,cAAe,EACfC,UAAU,EAEVb,eAAe,EACfc,eAAe,EACfvB,kBAAkB,EAClBC,eAAe,EACfr4B,SAAS,EACT45B,iBAAkB,OAClB9I,gBACI,uKASRjmC,GAASA,KACT,KAAK,GAAIsJ,KAAOL,GACe,mBAAhBjJ,GAAOsJ,KACdtJ,EAAOsJ,GAAOL,EAASK,GAG/BgkC,GAAEttC,OAASA,EACXstC,EAAEzX,QACFyX,EAAE0B,aAAc,EAGhB1B,EAAEG,OAASH,EAAEttC,OAAOwJ,WAAY,GAAO,CAGvC,IAAIylC,GAAY1uC,EAAI0B,OAAOkV,KAAQ+3B,UAAUC,UAAU32B,cAAc9W,QAAQ,WAAa,GAAKwtC,UAAUC,UAAU32B,cAAc9W,QAAQ,UAAY,IAAOnB,EAAI0B,OAAOsL,OAiiBvK,OAxgBA+/B,GAAEQ,SAAW,SAAUsB,EAAW34B,GAE9B,IAAK,GADD44B,GAAa,EACRrmC,EAAI,EAAGA,EAAIskC,EAAEzX,KAAKh0B,OAAQmH,IAC3BskC,EAAEzX,KAAK7sB,KAAOskC,EAAEzX,KAAK7sB,GAAG4kC,UACxBN,EAAEzX,KAAK7sB,GAAG8kC,SAASsB,EAAUC,GAAa54B,GAC1C44B,MAIZ/B,EAAEgC,YAAc,WAGZ,IAAK,GAFDC,MACAC,KACKxmC,EAAI,EAAGA,EAAIskC,EAAEzX,KAAKh0B,OAAQmH,IAC1BskC,EAAEzX,KAAK7sB,GAAG4kC,UACX2B,EAASvlC,KAAKsjC,EAAEzX,KAAK7sB,GAAG2O,OACxB63B,EAAgBxlC,KAAKsjC,EAAEzX,KAAK7sB,GAAGymC,cAGnCF,GAAS7tC,QAAQ0B,SAAc,IAGnCkqC,EAAE31B,MAAQ43B,EACVjC,EAAEmC,aAAeD,EACblC,EAAEttC,OAAO0vC,UACTpC,EAAEttC,OAAO0vC,SAASpC,EAAGA,EAAE31B,MAAO21B,EAAEmC,cAEhCnC,EAAE53B,OAAS43B,EAAE53B,MAAM7T,OAAS,IAC5Bf,EAAEwsC,EAAE53B,OAAO6B,IAAI+1B,EAAEttC,OAAO2vC,YAAcrC,EAAEttC,OAAO2vC,YAAYrC,EAAGA,EAAE31B,MAAO21B,EAAEmC,cAAgBnC,EAAE31B,MAAMiB,KAAK,MACtG9X,EAAEwsC,EAAE53B,OAAO9T,QAAQ,aAK3B0rC,EAAEsC,cAAgB,SAAUC,EAAYC,GA6IpC,QAASC,KACLC,EAAmBlvC,EAAEmvC,sBAAsB,WACvCC,EAAIJ,YAAY1sC,OAAWA,OAAW,GACtC2sC,MASR,QAAShkC,GAAkBC,GACnBP,GAAWD,IACfQ,EAAE2B,iBACFnC,GAAY,EACZ6kB,EAAc8f,EAA2B,eAAXnkC,EAAEG,KAAwBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,MACrFtB,GAAiB,GAAKuB,OAAQC,UAE9B2jC,GAAiB,EACjB/V,EAAiBgW,EAAmBvvC,EAAEirC,aAAamE,EAAII,QAAQ,GAAI,MAEvE,QAAS5jC,GAAiBV,GACtB,GAAKR,EAAL,CACAQ,EAAE2B,iBACFyiC,GAAiB,EACjBD,EAA2B,cAAXnkC,EAAEG,KAAuBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,MACjEd,IAED3K,EAAEyvC,qBAAqBP,GACvBvkC,GAAU,EACV4uB,EAAiBgW,EAAmBvvC,EAAEirC,aAAamE,EAAII,QAAQ,GAAI,KACnEJ,EAAII,QAAQ75B,WAAW,IAE3BzK,EAAE2B,gBAEF,IAAIoG,GAAOo8B,EAAgB9f,CAC3BggB,GAAmBhW,EAAiBtmB,EACpCy8B,EAAWptC,OAGYqtC,EAAnBJ,IACAA,EAAmBI,EAAe9jC,KAAKmiB,IAAI2hB,EAAeJ,EAAkB,IAC5EG,EAAW,OAEXH,EAAmBK,IACnBL,EAAmBK,EAAe/jC,KAAKmiB,IAAIuhB,EAAmBK,EAAc,IAC5EF,EAAW,OAGfN,EAAII,QAAQliC,UAAU,iBAAmBiiC,EAAmB,SAG5DH,EAAIJ,YAAY1sC,OAAWitC,EAAkB,EAAG/C,EAAEttC,OAAO0uC,yBAGzDiC,EAAoBN,EAAmBO,GAAiBP,EACxDQ,GAAe,GAAKrkC,OAAQC,UAC5BmkC,EAAgBP,GAEpB,QAASzhC,GAAgB5C,GACrB,IAAKR,IAAcC,EAEf,YADAD,EAAYC,GAAU,EAG1BD,GAAYC,GAAU,EACtBykC,EAAII,QAAQ75B,WAAW,IACnB+5B,GAEIN,EAAII,QAAQliC,UADC,QAAboiC,EACsB,iBAAmBC,EAAe,QAEjC,iBAAmBC,EAAe,SAEjEI,GAAe,GAAItkC,OAAOC,SAC1B,IAAIskC,GAAU7hB,CACV4hB,GAAe7lC,EAAiB,IAChCikB,EAAemhB,GAGfU,EAAWpkC,KAAKC,IAAI+jC,GAAqBG,EAAeD,IACxD3hB,EAAemhB,EAAmBM,EAAoBrD,EAAEttC,OAAO4uC,eAGnE1f,EAAeviB,KAAK2b,IAAI3b,KAAK4b,IAAI2G,EAAcwhB,GAAeD,EAG9D,IAAIzJ,IAAer6B,KAAKu/B,OAAOhd,EAAewhB,GAAcpZ,EAGvDgW,GAAEttC,OAAO6uC,WAAU3f,GAAgB8X,EAAc1P,EAAaoZ,GAGnER,EAAII,QAAQliC,UAAU,iBAAoBzM,SAASutB,EAAa,IAAO,SAGvEghB,EAAIJ,YAAY9I,EAAa9X,EAAc,IAAI,GAG3Coe,EAAEttC,OAAOyuC,yBACTsB,IACAG,EAAII,QAAQ1gC,cAAc,WACtB9O,EAAEyvC,qBAAqBP,MAK/B1tC,WAAW,WACP8tC,GAAiB,GAClB,KAGP,QAAS1P,GAAY10B,GACjB,GAAKokC,EAAL,CACAtvC,EAAEyvC,qBAAqBP,EAEvB,IAAIr4B,GAAQ7W,EAAEC,MAAM0H,KAAK,oBACzBynC,GAAIpC,SAASn2B,IAhQjB,GAAIq5B,GAAelwC,EAAE+uC,GACjBoB,EAAWD,EAAa/+B,QACxBi+B,EAAM5C,EAAEzX,KAAKob,EACjB,KAAIf,EAAItC,QAAR,CACAsC,EAAI1mC,UAAYwnC,EAChBd,EAAII,QAAUJ,EAAI1mC,UAAUjI,KAAK,6BACjC2uC,EAAI73B,MAAQ63B,EAAII,QAAQ/uC,KAAK,eAE7B,IACI2vC,GAAe5Z,EAAY6Z,EAAaV,EAAcC,CAC1DR,GAAIkB,cAAgB,SAAU74B,EAAQ84B,GAClCnB,EAAIoB,gBACJpB,EAAI33B,OAASA,EACb23B,EAAImB,cAAgBA,CACpB,IAAIE,GAAejE,EAAEkE,WAAWtB,GAAK,EACrCA,GAAII,QAAQpjB,KAAKqkB,GACjBrB,EAAI73B,MAAQ63B,EAAII,QAAQ/uC,KAAK,gBAC7B2uC,EAAIrC,WACJqC,EAAIpC,SAASoC,EAAI33B,OAAO,GAAI,GAAG,GAC/B23B,EAAIuB,cAERvB,EAAIrC,SAAW,WACPP,EAAEttC,OAAO2uC,eACTuB,EAAI1mC,UAAUZ,YAAY,6BACrBsnC,EAAIljC,OAAOkjC,EAAI1mC,UAAUhB,KAAKwE,MAAM,KAE7C,IAAI0kC,GAAUC,CACdD,GAAW,EACXC,EAAYzB,EAAI1mC,UAAU,GAAGrI,aAC7B+vC,EAAgBhB,EAAII,QAAQ,GAAGnvC,aAC/Bm2B,EAAa4Y,EAAI73B,MAAM,GAAGlX,aAC1BgwC,EAAc7Z,EAAa4Y,EAAI73B,MAAMxW,OACrC4uC,EAAekB,EAAY,EAAIR,EAAc7Z,EAAa,EAC1DoZ,EAAeiB,EAAY,EAAIra,EAAa,EACxC4Y,EAAIljC,QACJ0kC,EAAWxB,EAAIljC,MACXrL,SAAS+vC,EAAU,MAAQA,IAAUA,GAAsB,MAC/DxB,EAAI1mC,UAAUhB,KAAKwE,MAAO0kC,KAE1BpE,EAAEttC,OAAO2uC,eACJuB,EAAIljC,QACLkjC,EAAI73B,MAAMrJ,KAAK,WACX,GAAIqjB,GAAOvxB,EAAEC,KACbsxB,GAAK7pB,KAAKwE,MAAM,SAChB0kC,EAAW/kC,KAAK2b,IAAIopB,EAAUrf,EAAK,GAAGzd,aACtCyd,EAAK7pB,KAAKwE,MAAM,OAEpBkjC,EAAI1mC,UAAUhB,KAAKwE,MAAQ0kC,EAAW,EAAK,QAE/CxB,EAAI1mC,UAAUb,SAAS,+BAG/BunC,EAAIrC,WAEJqC,EAAII,QAAQliC,UAAU,iBAAmBsiC,EAAe,SAASj6B,WAAW,EAG5E,IACIu5B,EAGJE,GAAIpC,SAAW,SAAUyB,EAAU94B,EAAYm7B,GACjB,mBAAfn7B,KAA4BA,EAAa,GACpD,IAAIo7B,GAAiB3B,EAAII,QAAQ/uC,KAAK,mCAAqCguC,EAAW,MAAMt9B,OAC5F,IAA6B,mBAAnB4/B,IAAqD,KAAnBA,EAA5C,CAGA,GAAI3iB,IAAgB2iB,EAAiBva,EAAaoZ,CAElDR,GAAII,QAAQ75B,WAAWA,GACvBy5B,EAAII,QAAQliC,UAAU,iBAAmB,EAAiB,SAGtDk/B,EAAEttC,OAAOyuC,wBAA0ByB,EAAIlJ,aAAekJ,EAAIlJ,cAAgB6K,IAC1E/wC,EAAEyvC,qBAAqBP,GACvBE,EAAII,QAAQ1gC,cAAc,WACtB9O,EAAEyvC,qBAAqBP,KAE3BD,KAIJG,EAAIJ,YAAY+B,EAAgB3iB,EAAczY,EAAYm7B,KAG9D1B,EAAIJ,YAAc,SAAU9I,EAAa/3B,EAAWwH,EAAYm7B,GACnC,mBAAd3iC,KACPA,EAAYnO,EAAEirC,aAAamE,EAAII,QAAQ,GAAI,MAErB,mBAAhBtJ,KAA6BA,GAAer6B,KAAKwB,OAAOc,EAAYyhC,GAAcpZ,IAC1E,EAAd0P,IAAiBA,EAAc,GAC/BA,GAAekJ,EAAI73B,MAAMxW,SAAQmlC,EAAckJ,EAAI73B,MAAMxW,OAAS,EACtE,IAAIiwC,GAAsB5B,EAAIlJ,WAC9BkJ,GAAIlJ,YAAcA,EAClBkJ,EAAII,QAAQ/uC,KAAK,qEAAqEqH,YAAY,gEAElGsnC,EAAI73B,MAAM5B,WAAWA,EACrB,EAAA,GAAIs7B,GAAe7B,EAAI73B,MAAM1N,GAAGq8B,GAAar+B,SAAS,mBAAmByF,UAAU,GACnE2jC,GAAaC,UAAUrpC,SAAS,0BAChCopC,EAAa/4B,UAAUrQ,SAAS,yBAgBhD,IAdIipC,GAA4C,mBAAnBA,MAEzB1B,EAAIv4B,MAAQo6B,EAAatpC,KAAK,qBAC9BynC,EAAIT,aAAeS,EAAImB,cAAgBnB,EAAImB,cAAcrK,GAAekJ,EAAIv4B,MAExEm6B,IAAwB9K,IACpBkJ,EAAIR,UACJQ,EAAIR,SAASpC,EAAG4C,EAAIv4B,MAAOu4B,EAAIT,cAEnCnC,EAAEgC,gBAKLhC,EAAEttC,OAAO2uC,aAAd,CAGA,EAAkB1/B,GAAatC,KAAKu/B,OAAOj9B,EAAYyhC,GAAcpZ,GAAcA,EAAaoZ,IAAiBpZ,EAEjH4Y,EAAI73B,MAAMrJ,KAAK,WACX,GAAIqjB,GAAOvxB,EAAEC,MACTkxC,EAAgB5f,EAAKpgB,QAAUqlB,EAC/B4a,EAAkBxB,EAAezhC,EACjCkjC,EAAaF,EAAgBC,EAC7BrkC,EAAaskC,EAAa7a,EAE1B8a,EAAWzlC,KAAK4qB,KAAK2Y,EAAIhvC,OAASo2B,EAAa,GAAK,EAEpD+a,EAAS,IAAIxkC,CACbwkC,GAAQ,MAAKA,EAAQ,KACb,KAARA,IAAcA,EAAQ,MAEtB1lC,KAAKC,IAAIiB,GAAcukC,EAAU/f,EAAK1pB,SAAS,mBAC9C0pB,EAAKzpB,YAAY,mBAEtBypB,EAAKjkB,UAAU,oBAAsBa,EAAYyhC,GAAgB,QAAUzB,EAAY,KAAO,GAAK,eAAiBoD,EAAQ,YAYhIvC,GAAaI,EAAIJ,YAAY,EAAGY,EAAc,EAElD,IACIllC,GAAWC,EAAS4kB,EAAa8f,EAAellC,EAAgB6lC,EAAczW,EAAgBmW,EAAUH,EAAkBO,EAAeD,EAAmBE,EAD5JT,GAAiB,CA6GrBF,GAAIuB,WAAa,SAAUthC,GACvB,GAAIkJ,GAASlJ,EAAS,MAAQ,IAC9B+/B,GAAI1mC,UAAU6P,GAAQ9Y,EAAIwH,YAAYC,MAAO+D,GAC7CmkC,EAAI1mC,UAAU6P,GAAQ9Y,EAAIwH,YAAYI,KAAMuE,GAC5CwjC,EAAI1mC,UAAU6P,GAAQ9Y,EAAIwH,YAAYK,IAAKwG,GAC3CshC,EAAI73B,MAAMgB,GAAQ,QAASqnB,IAE/BwP,EAAIoB,cAAgB,WAChBpB,EAAIuB,YAAW,IAGnBvB,EAAI1mC,UAAU,GAAG8oC,mBAAqB,WAClCpC,EAAIoB,iBAGRpB,EAAIuB,eAGRnE,EAAEkB,iBAAmB,SAAUwC,GAC3BA,EAAelwC,EAAEkwC,GACb,sBAAwBA,GAAa,IAAIA,EAAa,GAAGsB,sBAYjExxC,EAAEhB,QAAQsb,GAAG,SAAUuyB,GAGvBL,EAAEkE,WAAa,SAAUtB,EAAKqC,GAC1B,GAAIC,GAAkB,GAClBhB,EAAa,EACjB,IAAItB,EAAItC,QACJ4D,GAAc,0DAA4DtB,EAAIuC,UAAY,oBAAsBvC,EAAIuC,UAAY,IAAM,KAAOvC,EAAIvrB,UAAY,IAAM,KAAOurB,EAAIt/B,QAAU,aAEvL,CACD,IAAK,GAAIkG,GAAI,EAAGA,EAAIo5B,EAAI33B,OAAO1W,OAAQiV,IACnC07B,GAAmB,+CAAiDtC,EAAI33B,OAAOzB,GAAK,MAAQo5B,EAAImB,cAAgBnB,EAAImB,cAAcv6B,GAAKo5B,EAAI33B,OAAOzB,IAAM,QAE5J06B,IAAc,iCAAmCtB,EAAIuC,UAAY,oBAAsBvC,EAAIuC,UAAY,IAAM,KAAOvC,EAAIvrB,UAAY,IAAM,2CAA6C6tB,EAAkB,eAE7M,MAAOD,GAAYC,EAAkBhB,GAEzClE,EAAEthB,OAAS,WACP,GAEIhjB,GAFA0pC,EAAa,GACbC,EAAc,EAElBrF,GAAEzX,OACF,IAAI+c,GAAW,EACf,KAAK5pC,EAAI,EAAGA,EAAIskC,EAAEttC,OAAO61B,KAAKh0B,OAAQmH,IAAK,CACvC,GAAIknC,GAAM5C,EAAEttC,OAAO61B,KAAK7sB,EACxB4pC,IAAYtF,EAAEkE,WAAWlE,EAAEttC,OAAO61B,KAAK7sB,IACvCskC,EAAEzX,KAAK7rB,KAAKkmC,GAEhByC,EAAc,gCAAkCrF,EAAEttC,OAAO2kB,UAAY,KAAO2oB,EAAEttC,OAAO2uC,aAAe,aAAe,IACnH+D,EACI,eAAiB,EAAgB,MAC5BpF,EAAEttC,OAAOmV,QAAUm4B,EAAEttC,OAAOimC,gBAAgB7lC,QAAQ,iBAAkBktC,EAAEttC,OAAO+uC,kBAAoB,IACpG,gDACI6D,EACA,0DAIZtF,EAAEoF,WAAaA,GAyCfpF,EAAEttC,OAAO0V,QACT43B,EAAE53B,MAAQ5U,EAAEwsC,EAAEttC,OAAO0V,OACjB43B,EAAE53B,MAAM7T,OAAS,IACbyrC,EAAEttC,OAAO8uC,eAAexB,EAAE53B,MAAM2nB,KAAK,YAAY,GAChDiQ,EAAEG,QACHH,EAAE53B,MAAM0F,GAAG,QAAS2yB,GAEpBT,EAAEttC,OAAO8uC,eACTxB,EAAE53B,MAAM0F,GAAG,kBAAmB,SAAUpP,GACpCA,EAAE2B,qBAOb2/B,EAAEG,QAAQ3sC,EAAE,QAAQsa,GAAG,QAASkzB,GAcrChB,EAAErjB,QAAS,EACXqjB,EAAEhM,KAAO,WACL,GAAItb,GAAYoD,GAEXkkB,GAAErjB,SAGHqjB,EAAEthB,SAGEhG,GACAsnB,EAAEoF,WAAa,0EAA4EpF,EAAEoF,WAAa,eAC1GpF,EAAEhnB,QAAU/lB,EAAI+lB,QAAQgnB,EAAEoF,WAAYpF,EAAEttC,OAAO0V,OAAO,GACtD43B,EAAE9jC,UAAY1I,EAAEwsC,EAAEhnB,SAAS/kB,KAAK,iBAChCT,EAAEwsC,EAAEhnB,SAASlL,GAAG,QAAS,WACrBmzB,OAGCjB,EAAEG,QACPH,EAAE9jC,UAAY1I,EAAEwsC,EAAEoF,YAClBpF,EAAE9jC,UAAUb,SAAS,uBACrB7H,EAAEwsC,EAAEttC,OAAOwJ,WAAWgE,OAAO8/B,EAAE9jC,aAG/B8jC,EAAE9jC,UAAY1I,EAAEP,EAAIsoB,YAAYykB,EAAEoF,aAClC5xC,EAAEwsC,EAAE9jC,WACH4R,GAAG,QAAS,WACTmzB,OAKRjB,EAAE9jC,UAAU,GAAGqpC,SAAWvF,EAG1BA,EAAE9jC,UAAUjI,KAAK,qBAAqByN,KAAK,WACvC,GAAI8gC,IAAc,IACZxC,EAAE0B,aAAe1B,EAAEttC,OAAO2X,OAAW21B,EAAE0B,aAAe1B,EAAE31B,SAAQm4B,GAAc,GACpFxC,EAAEsC,cAAc7uC,KAAM+uC,KAIrBxC,EAAE0B,YAMC1B,EAAE31B,OAAO21B,EAAEQ,SAASR,EAAE31B,MAAO,GAL7B21B,EAAEttC,OAAO2X,OACT21B,EAAEQ,SAASR,EAAEttC,OAAO2X,MAAO,IASvC21B,EAAErjB,QAAS,EACXqjB,EAAE0B,aAAc,EAEZ1B,EAAEttC,OAAOonC,QAAQkG,EAAEttC,OAAOonC,OAAOkG,IAIzCA,EAAE1oB,MAAQ,WACN,MAAK0oB,GAAErjB,SAAUqjB,EAAEG,OACfC,QACAntC,GAAIkN,WAAW6/B,EAAEhnB,aAIjB/lB,GAAIkN,WAAW6/B,EAAE9jC,WANrB,QAYJ8jC,EAAEz7B,QAAU,WACRy7B,EAAE1oB,QACE0oB,EAAEttC,OAAO0V,OAAS43B,EAAE53B,MAAM7T,OAAS,GACnCyrC,EAAE53B,MAAMyF,IAAI,cAAe4yB,GAE/BjtC,EAAE,QAAQqa,IAAI,QAASmzB,GACvBxtC,EAAEhB,QAAQqb,IAAI,SAAUwyB,IAGxBL,EAAEG,QACFH,EAAEhM,OAGCgM,EAEX/sC,GAAImhC,OAAS,SAAU1hC,GACnB,MAAO,IAAIqtC,GAAOrtC,GAMtB,IAAI8yC,GAAW,SAAU9yC,GA+ErB,QAASopB,KACL,GAAIpD,IAAY,CAChB,OAAKsnB,GAAEttC,OAAOutC,kBAAqBD,EAAEttC,OAAOwtC,gBACvCF,EAAEG,QAAUH,EAAEttC,OAAO0V,QAClB43B,EAAEttC,OAAOwtC,cAAexnB,GAAY,EAEhCzlB,EAAI0B,OAAOkV,IACX6O,EAAYzlB,EAAI0B,OAAOC,MAAO,GAAO,EAGjCpB,EAAEhB,QAAQkN,SAAW,MAAKgZ,GAAY,IAI/CA,GAZ2DA,EActE,QAAS0nB,KACL,MAAIJ,GAAErjB,QAAUqjB,EAAE9jC,WAAa8jC,EAAE9jC,UAAU3H,OAAS,GAAKyrC,EAAE9jC,UAAU0D,QAAQ,YAAYrL,OAAS,GAAU,GAChG,EAIhB,QAASkxC,GAAWC,GAChBA,EAAO,GAAIxmC,MAAKwmC,EAChB,IAAIC,GAAOD,EAAKE,cACZC,EAAQH,EAAKI,WACbC,EAASF,EAAQ,EACjBG,EAAMN,EAAKO,UACXC,EAAUR,EAAKS,QACnB,OAAOnG,GAAEttC,OAAO0zC,WACXtzC,QAAQ,QAAS6yC,GACjB7yC,QAAQ,OAAQ6yC,EAAO,IAAIU,UAAU,IACrCvzC,QAAQ,MAAgB,GAATizC,EAAc,IAAMA,EAASA,GAC5CjzC,QAAQ,KAAMizC,GACdjzC,QAAQ,MAAOktC,EAAEttC,OAAO4zC,WAAWT,IACnC/yC,QAAQ,KAAMktC,EAAEttC,OAAO6zC,gBAAgBV,IACvC/yC,QAAQ,MAAa,GAANkzC,EAAW,IAAMA,EAAMA,GACtClzC,QAAQ,KAAMkzC,GACdlzC,QAAQ,MAAOktC,EAAEttC,OAAO8zC,SAASN,IACjCpzC,QAAQ,KAAMktC,EAAEttC,OAAO+zC,cAAcP,IAwiB9C,QAASzF,GAAY/hC,GAEjB,GADAA,EAAE2B,kBACE2/B,EAAErjB,SACNqjB,EAAEhM,OACEgM,EAAEttC,OAAOguC,gBAAkB5kB,KAAa,CACxC,GAAIpP,GAAcszB,EAAE53B,MAAMxI,QAAQ,gBAClC,IAA2B,IAAvB8M,EAAYnY,OAAc,MAE9B,IAIIosC,GAJAC,EAAavsC,SAASqY,EAAYxR,IAAI,eAAgB,IACtD2lC,EAAgBxsC,SAASqY,EAAYxR,IAAI,kBAAmB,IAC5DouB,EAAa5c,EAAY,GAAG7Y,aAAe+sC,EAAaZ,EAAE9jC,UAAUtI,SACpEktC,EAAmBp0B,EAAY,GAAG/Y,aAAeitC,EAAaZ,EAAE9jC,UAAUtI,SAG1EmtC,EAAWf,EAAE53B,MAAMrI,SAASga,IAAM6mB,EAAaZ,EAAE53B,MAAM,GAAGvU,YAC9D,IAAIktC,EAAWzX,EAAY,CACvB,GAAI51B,GAAYgZ,EAAYhZ,YAAcqtC,EAAWzX,CACjD51B,GAAY41B,EAAawX,IACzBH,EAAmBjtC,EAAY41B,EAAawX,EAAmBD,EAC3DvX,IAAewX,IACfH,EAAmBX,EAAE9jC,UAAUtI,UAEnC8Y,EAAYxR,KAAKkS,iBAAkB,EAAqB,QAE5DV,EAAYhZ,UAAUA,EAAW,OAI7C,QAASstC,GAAiBtiC,GAClB0hC,MACAJ,EAAE53B,OAAS43B,EAAE53B,MAAM7T,OAAS,EACxBmK,EAAEiB,SAAWqgC,EAAE53B,MAAM,IAAsD,IAAhD5U,EAAEkL,EAAEiB,QAAQC,QAAQ,iBAAiBrL,QAAcyrC,EAAE1oB,QAGhC,IAAhD9jB,EAAEkL,EAAEiB,QAAQC,QAAQ,iBAAiBrL,QAAcyrC,EAAE1oB,SAuBjE,QAAS2pB,KACLjB,EAAErjB,QAAS,EACPqjB,EAAE53B,OAAS43B,EAAE53B,MAAM7T,OAAS,GAAGyrC,EAAE53B,MAAMxI,QAAQ,iBAAiB1E,KAAKkS,iBAAkB,KACvF4yB,EAAEttC,OAAOsnC,SAASgG,EAAEttC,OAAOsnC,QAAQgG,GAGvCA,EAAE0G,wBA5tBN,GAAI1G,GAAIvsC,KACJkI,GACA2qC,YAAa,UAAW,WAAY,QAAS,QAAS,MAAO,OAAQ,OAAQ,SAAW,YAAc,UAAW,WAAY,YAC7HC,iBAAkB,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC/FC,UAAW,SAAU,SAAU,UAAW,YAAa,WAAY,SAAU,YAC7EC,eAAgB,MAAO,MAAO,MAAO,MAAO,MAAO,MAAO,OAC1DE,SAAU,EACVC,aAAc,EAAG,GACjB/f,UAAU,EACVuf,WAAY,aACZt0B,UAAW,aACX+0B,QAAS,KACTC,QAAS,KACTC,WAAW,EACXhoB,SAAS,EACTioB,eAAe,EACfC,aAAa,EACbC,oBACI,4RAKJC,YAAY,EACZC,mBACI,wRAKJC,YAAY,EAEZ3G,eAAe,EACfc,eAAe,EACfvB,kBAAkB,EAClBC,eAAe,EACfr4B,SAAS,EACT45B,iBAAkB,OAClB9I,gBACI,4FAiBRjmC,GAASA,KACT,KAAK,GAAIsJ,KAAOL,GACe,mBAAhBjJ,GAAOsJ,KACdtJ,EAAOsJ,GAAOL,EAASK,GAG/BgkC,GAAEttC,OAASA,EACXstC,EAAE0B,aAAc,EAGhB1B,EAAEG,OAASH,EAAEttC,OAAOwJ,WAAY,GAAO,EAGvC8jC,EAAEsH,IAA6B,eAAvBtH,EAAEttC,OAAOof,SAGjB,IAAIxR,GAAW0/B,EAAEsH,KAAOr0C,EAAIgI,IAAM,GAAU,CAwvB5C,OArvBA+kC,GAAEuH,WAAY,EA+CdvH,EAAEwH,SAAW,SAAUn9B,GACnB,GAAI21B,EAAEttC,OAAOm0B,SAAU,CACdmZ,EAAE31B,QAAO21B,EAAE31B,SAEhB,KAAK,GADDo9B,GACK/rC,EAAI,EAAGA,EAAIskC,EAAE31B,MAAM9V,OAAQmH,IAC5B,GAAIwD,MAAKmL,GAAOlL,YAAc,GAAID,MAAK8gC,EAAE31B,MAAM3O,IAAIyD,YACnDsoC,EAAgB/rC,EAGK,oBAAlB+rC,GACPzH,EAAE31B,MAAM3N,KAAK2N,GAGb21B,EAAE31B,MAAM2D,OAAOy5B,EAAe,GAElCzH,EAAEgC,kBAGFhC,GAAE31B,OAASA,GACX21B,EAAEgC,eAGVhC,EAAEQ,SAAW,SAAUsB,GACnB9B,EAAE31B,MAAQy3B,EACV9B,EAAEgC,eAENhC,EAAEgC,YAAc,WACZhC,EAAEgD,QAAQ/uC,KAAK,iCAAiCqH,YAAY,+BAC5D,IAAII,GAAGgsC,CACP,KAAKhsC,EAAI,EAAGA,EAAIskC,EAAE31B,MAAM9V,OAAQmH,IAAK,CACjC,GAAIisC,GAAY,GAAIzoC,MAAK8gC,EAAE31B,MAAM3O,GACjCskC,GAAEgD,QAAQ/uC,KAAK,mCAAqC0zC,EAAU/B,cAAgB,IAAM+B,EAAU7B,WAAa,IAAM6B,EAAU1B,UAAY,MAAM5qC,SAAS,gCAK1J,GAHI2kC,EAAEttC,OAAO0vC,UACTpC,EAAEttC,OAAO0vC,SAASpC,EAAGA,EAAE31B,OAEvB21B,EAAE53B,OAAS43B,EAAE53B,MAAM7T,OAAS,EAAG,CAC/B,GAAIyrC,EAAEttC,OAAO2vC,YAAaqF,EAAa1H,EAAEttC,OAAO2vC,YAAYrC,EAAGA,EAAE31B,WAC5D,CAED,IADAq9B,KACKhsC,EAAI,EAAGA,EAAIskC,EAAE31B,MAAM9V,OAAQmH,IAC5BgsC,EAAWhrC,KAAK+oC,EAAWzF,EAAE31B,MAAM3O,IAEvCgsC,GAAaA,EAAWp8B,KAAK,MAEjC9X,EAAEwsC,EAAE53B,OAAO6B,IAAIy9B,GACfl0C,EAAEwsC,EAAE53B,OAAO9T,QAAQ,YAK3B0rC,EAAE4H,mBAAqB,WAInB,QAASnpC,GAAkBC,GACnBP,GAAWD,IAEfA,GAAY,EACZ+zB,EAAc4Q,EAA2B,eAAXnkC,EAAEG,KAAwBH,EAAEI,cAAc,GAAGC,MAAQL,EAAEK,MACrFgkB,EAAc8f,EAA2B,eAAXnkC,EAAEG,KAAwBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,MACrFtB,GAAiB,GAAKuB,OAAQC,UAC9BoB,EAAa,EACbuiC,GAAiB,EACjBtlC,EAAc1H,OACdi3B,EAAiBgW,EAAmB/C,EAAE6H,iBAE1C,QAASzoC,GAAiBV,GACtB,GAAKR,EAAL,CAOA,GALA4pC,EAA2B,cAAXppC,EAAEG,KAAuBH,EAAEI,cAAc,GAAGC,MAAQL,EAAEK,MACtE8jC,EAA2B,cAAXnkC,EAAEG,KAAuBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,MAC3C,mBAAhBzB,KACPA,KAAiBA,GAAe6B,KAAKC,IAAIujC,EAAgB9f,GAAe1jB,KAAKC,IAAIwoC,EAAgB7V,KAEjG+N,EAAEsH,KAAO9pC,EAET,YADAU,GAAY,EAIhB,IADAQ,EAAE2B,iBACE2/B,EAAEuH,UAEF,YADArpC,GAAY,EAGhB4kC,IAAiB,EACZ3kC,IAEDA,GAAU,EACV4pC,EAAe/H,EAAEgD,QAAQ,GAAG17B,YAC5Bs8B,EAAgB5D,EAAEgD,QAAQ,GAAGnvC,aAC7BmsC,EAAEgD,QAAQ75B,WAAW,IAEzBzK,EAAE2B,iBAEF3C,EAAcsiC,EAAEsH,IAAMQ,EAAgB7V,EAAc4Q,EAAgB9f,EACpExiB,EAAa7C,GAAasiC,EAAEsH,IAAMS,EAAenE,GACjDb,EAAiE,KAA7C/C,EAAE6H,gBAAkBvnC,EAAWC,GAGnDy/B,EAAEgD,QAAQliC,UAAU,gBAAkBk/B,EAAEsH,IAAMvE,EAAmB,GAAK,OAAS/C,EAAEsH,IAAM,EAAIvE,GAAoB,UAGnH,QAASzhC,GAAgB5C,GACrB,MAAKR,IAAcC,GAInBD,EAAYC,GAAU,EAEtBqlC,GAAe,GAAItkC,OAAOC,UACU,IAAhCqkC,EAAe7lC,EACX0B,KAAKC,IAAI5B,GAAe,GACxBsiC,EAAEgI,aAEGtqC,GAAe,GAChBzK,EAAIgI,IAAK+kC,EAAEiI,YACVjI,EAAEkI,YAGHj1C,EAAIgI,IAAK+kC,EAAEkI,YACVlI,EAAEiI,aAIQ,IAAf1nC,EACItN,EAAIgI,IAAK+kC,EAAEkI,YACVlI,EAAEiI,YAEF1nC,GAAc,GACftN,EAAIgI,IAAK+kC,EAAEiI,YACVjI,EAAEkI,YAGPlI,EAAEgI,iBAKVhzC,YAAW,WACP8tC,GAAiB,GAClB,WApCC5kC,EAAYC,GAAU,GAuC9B,QAASgqC,GAAezpC,GACpB,GAAKokC,EAAL,CACA,GAAIkD,GAAMxyC,EAAEkL,EAAEiB,QAAQC,QAAQ,uBAI9B,IAHmB,IAAfomC,EAAIzxC,QAAgBf,EAAEkL,EAAEiB,QAAQxL,SAAS,yBACzC6xC,EAAMxyC,EAAEkL,EAAEiB,SAEK,IAAfqmC,EAAIzxC,UACJyxC,EAAI7xC,SAAS,iCAAoC6rC,EAAEttC,OAAOm0B,YAC1Dmf,EAAI7xC,SAAS,gCAAjB,CACI6xC,EAAI7xC,SAAS,6BAA6B6rC,EAAEiI,YAC5CjC,EAAI7xC,SAAS,6BAA6B6rC,EAAEkI,WAChD,IAAIE,GAAWpC,EAAI7qC,KAAK,aACpBktC,EAAYrC,EAAI7qC,KAAK,cACrBmtC,EAAUtC,EAAI7qC,KAAK,WACnB6kC,GAAEttC,OAAO61C,YACTvI,EAAEttC,OAAO61C,WAAWvI,EAAGgG,EAAI,GAAIoC,EAAUC,EAAWC,GAExDtI,EAAEwH,SAAS,GAAItoC,MAAKkpC,EAAUC,EAAWC,GAASnpC,WAC9C6gC,EAAEttC,OAAOs0C,eAAehH,EAAE1oB,UA7GlC,GAEIpZ,GAAWC,EAAS8zB,EAAalP,EAAa+kB,EAAejF,EAAellC,EAAgB6lC,EAAczW,EAAgBgW,EAAkBgF,EAAcnE,EAAerjC,EAAY7C,EAAaF,EADlMslC,GAAiB,CA+GrB9C,GAAE9jC,UAAUjI,KAAK,+BAA+B6Z,GAAG,QAASkyB,EAAEkI,WAC9DlI,EAAE9jC,UAAUjI,KAAK,+BAA+B6Z,GAAG,QAASkyB,EAAEiI,WAC9DjI,EAAE9jC,UAAUjI,KAAK,8BAA8B6Z,GAAG,QAASkyB,EAAEwI,UAC7DxI,EAAE9jC,UAAUjI,KAAK,8BAA8B6Z,GAAG,QAASkyB,EAAEyI,UAC7DzI,EAAEgD,QAAQl1B,GAAG,QAASq6B,GAClBnI,EAAEttC,OAAOq0C,YACT/G,EAAEgD,QAAQl1B,GAAG7a,EAAIwH,YAAYC,MAAO+D,GACpCuhC,EAAEgD,QAAQl1B,GAAG7a,EAAIwH,YAAYI,KAAMuE,GACnC4gC,EAAEgD,QAAQl1B,GAAG7a,EAAIwH,YAAYK,IAAKwG,IAGtC0+B,EAAE9jC,UAAU,GAAGwsC,wBAA0B,WACrC1I,EAAE9jC,UAAUjI,KAAK,+BAA+B4Z,IAAI,QAASmyB,EAAEkI,WAC/DlI,EAAE9jC,UAAUjI,KAAK,+BAA+B4Z,IAAI,QAASmyB,EAAEiI,WAC/DjI,EAAE9jC,UAAUjI,KAAK,8BAA8B4Z,IAAI,QAASmyB,EAAEwI,UAC9DxI,EAAE9jC,UAAUjI,KAAK,8BAA8B4Z,IAAI,QAASmyB,EAAEyI,UAC9DzI,EAAEgD,QAAQn1B,IAAI,QAASs6B,GACnBnI,EAAEttC,OAAOq0C,YACT/G,EAAEgD,QAAQn1B,IAAI5a,EAAIwH,YAAYC,MAAO+D,GACrCuhC,EAAEgD,QAAQn1B,IAAI5a,EAAIwH,YAAYI,KAAMuE,GACpC4gC,EAAEgD,QAAQn1B,IAAI5a,EAAIwH,YAAYK,IAAKwG,MAM/C0+B,EAAE0G,sBAAwB,SAAUhD,GAC5B,2BAA6B1D,GAAE9jC,UAAU,IAAI8jC,EAAE9jC,UAAU,GAAGwsC,2BAIpE1I,EAAE2I,YAAc,SAAUjD,GACtB,GAAIkD,GAAI,GAAI1pC,MAAKwmC,EACjB,OAAO,IAAIxmC,MAAK0pC,EAAEhD,cAAegD,EAAE9C,WAAa,EAAG,GAAGG,WAE1DjG,EAAE6I,UAAY,SAAUnD,EAAM3lC,GAC1B2lC,EAAO,GAAIxmC,MAAKwmC,EAChB,EAAA,GAAIC,GAAOD,EAAKE,cACZC,EAAQH,EAAKI,UACPJ,GAAKO,UACA,SAAXlmC,IACkB2lC,EAAJ,KAAVG,EAAqB,GAAI3mC,MAAKymC,EAAO,EAAG,GAChC,GAAIzmC,MAAKymC,EAAME,EAAQ,EAAG,IAE3B,SAAX9lC,IACiB2lC,EAAH,IAAVG,EAAoB,GAAI3mC,MAAKymC,EAAO,EAAG,IAC/B,GAAIzmC,MAAKymC,EAAME,EAAQ,EAAG,KAE3B,SAAX9lC,GAAgC,SAAXA,KACrB8lC,EAAQH,EAAKI,WACbH,EAAOD,EAAKE,cAEhB,IAAIkD,GAAkB9I,EAAE2I,YAAY,GAAIzpC,MAAKwmC,EAAKE,cAAeF,EAAKI,YAAY3mC,UAAY,OAC1FwpC,EAAc3I,EAAE2I,YAAYjD,GAC5BqD,EAAuB,GAAI7pC,MAAKwmC,EAAKE,cAAeF,EAAKI,YAAYK,QAC5C,KAAzB4C,IAA4BA,EAAuB,EAEvD,IAAIC,GAA6BttC,EAAG8N,EAAvBy/B,KACTC,EAAO,EAAG3gB,EAAO,EACjBsgB,EAAY,GACZM,EAAW,GAAKnJ,EAAEttC,OAAOi0C,SAAW,GACpCyC,GAAQ,GAAIlqC,OAAOmqC,SAAS,EAAE,EAAE,EAAE,GAClCxC,EAAU7G,EAAEttC,OAAOm0C,QAAU,GAAI3nC,MAAK8gC,EAAEttC,OAAOm0C,SAAS1nC,UAAY,KACpE2nC,EAAU9G,EAAEttC,OAAOo0C,QAAU,GAAI5nC,MAAK8gC,EAAEttC,OAAOo0C,SAAS3nC,UAAY,IAExE,IAAI6gC,EAAE31B,OAAS21B,EAAE31B,MAAM9V,OACnB,IAAKmH,EAAI,EAAGA,EAAIskC,EAAE31B,MAAM9V,OAAQmH,IAC5ButC,EAAcvsC,KAAK,GAAIwC,MAAK8gC,EAAE31B,MAAM3O,IAAI2tC,SAAS,EAAE,EAAE,EAAE,GAI/D,KAAK3tC,EAAI,EAAQwtC,GAALxtC,EAAWA,IAAK,CACxB,GAAI4tC,GAAU,EAEd,KAAK9/B,EAAI,EAAQ+e,GAAL/e,EAAWA,IAAK,CACxB,GAAIo5B,GAAMp5B,CACV2/B,IACA,IAAII,GAAYJ,EAAWJ,EACvB1tC,EAAW,EACC,GAAZkuC,GACAA,EAAYT,EAAkBS,EAAY,EAC1CluC,GAAY,4BACZ2tC,EAAU,GAAI9pC,MAAiB,EAAZ2mC,EAAQ,EAAQF,EAAO,EAAIA,EAAkB,EAAZE,EAAQ,EAAQ,GAAKA,EAAQ,EAAG0D,GAAWpqC,YAG/FoqC,GAAwB,EACpBA,EAAYZ,GACZY,GAAwBZ,EACxBttC,GAAY,4BACZ2tC,EAAU,GAAI9pC,MAAK2mC,EAAQ,EAAI,GAAKF,EAAO,EAAIA,EAAME,EAAQ,EAAI,GAAK,EAAIA,EAAQ,EAAG0D,GAAWpqC,WAGhG6pC,EAAU,GAAI9pC,MAAKymC,EAAME,EAAO0D,GAAWpqC,WAI/C6pC,IAAYI,IAAO/tC,GAAY,8BAE/B4tC,EAAc70C,QAAQ40C,IAAY,IAAG3tC,GAAY,iCAEjD2kC,EAAEttC,OAAOk0C,YAAYxyC,QAAQwuC,EAAM,IAAM,IACzCvnC,GAAY,iCAGXwrC,GAAqBA,EAAVmC,GAAuBlC,GAAWkC,EAAUlC,KACxDzrC,GAAY,iCAGhB2tC,EAAU,GAAI9pC,MAAK8pC,EACnB,IAAIQ,GAAUR,EAAQpD,cAClB6D,EAAWT,EAAQlD,UACvBwD,IAAW,mBAAqBE,EAAU,iBAAmBC,EAAW,eAAiBF,EAAY,+BAAiC,EAAa,iBAAmBC,EAAU,IAAMC,EAAW,IAAMF,GAAa,WAAWA,EAAU,gBAE7OV,GAAa,oCAAsCS,EAAU,SAGjE,MADAT,GAAY,iDAAmDlD,EAAO,iBAAmBE,EAAQ,KAAOgD,EAAY,UAGxH7I,EAAEuH,WAAY,EACdvH,EAAE0J,uBAAyB,SAAU3nB,GACd,mBAARA,IACPie,EAAE2J,aAAet1C,SAAS2rC,EAAE4J,OAAOvsC,GAAG,GAAGlC,KAAK,cAAe,IAC7D6kC,EAAE6J,YAAcx1C,SAAS2rC,EAAE4J,OAAOvsC,GAAG,GAAGlC,KAAK,aAAc,MAG3D6kC,EAAE2J,aAAet1C,SAAS2rC,EAAE4J,OAAOvsC,GAAW,SAAR0kB,EAAkBie,EAAE4J,OAAOr1C,OAAS,EAAK,GAAG4G,KAAK,cAAe,IACtG6kC,EAAE6J,YAAcx1C,SAAS2rC,EAAE4J,OAAOvsC,GAAW,SAAR0kB,EAAkBie,EAAE4J,OAAOr1C,OAAS,EAAK,GAAG4G,KAAK,aAAc,KAExG6kC,EAAE9jC,UAAUjI,KAAK,wBAAwBoX,KAAK20B,EAAEttC,OAAO4zC,WAAWtG,EAAE2J,eACpE3J,EAAE9jC,UAAUjI,KAAK,uBAAuBoX,KAAK20B,EAAE6J,cAGnD7J,EAAE8J,mBAAqB,SAAU/nB,GAC7Bie,EAAE0J,uBAAuB3nB,GACzBie,EAAE4J,OAAOtuC,YAAY,sFACrB,IAAIyuC,GAAuB,SAARhoB,EAAiBie,EAAE4J,OAAOr1C,OAAS,EAAI,CAE1DyrC,GAAE4J,OAAOvsC,GAAG0sC,GAAc1uC,SAAS,iCACnC2kC,EAAE4J,OAAOvsC,GAAW,SAAR0kB,EAAiBgoB,EAAe,EAAIA,EAAe,GAAG1uC,SAAiB,SAAR0mB,EAAiB,6BAA+B,8BAEvHie,EAAEttC,OAAOs3C,wBACThK,EAAEttC,OAAOs3C,uBAAuBhK,EAAGA,EAAE6J,YAAa7J,EAAE2J,eAG5D3J,EAAEiK,iBAAmB,SAAUloB,EAAKmoB,GAChClK,EAAEuH,WAAY,CACd,IAAI4C,GAAeC,EAAeC,CAClCrK,GAAEgD,QAAQ/uC,KAAK,gIAAgI0O,SAE5H,mBAARof,KACPA,EAAM,OACNmoB,GAAc,GAEbA,GAIDlK,EAAEgD,QAAQ/uC,KAAK,4DAA4D0O,SAC3EynC,EAAgBpK,EAAE6I,UAAU,GAAI3pC,MAAK8gC,EAAE6J,YAAa7J,EAAE2J,cAAe,QACrEQ,EAAgBnK,EAAE6I,UAAU,GAAI3pC,MAAK8gC,EAAE6J,YAAa7J,EAAE2J,cAAe,SALrEU,EAAerK,EAAE6I,UAAU,GAAI3pC,MAAK8gC,EAAE6J,YAAa7J,EAAE2J,cAAe5nB,IAO5D,SAARA,GAAkBmoB,IAClBlK,EAAEgD,QAAQ9iC,OAAOmqC,GAAgBF,IAEzB,SAARpoB,GAAkBmoB,IAClBlK,EAAEgD,QAAQsH,QAAQD,GAAgBD,GAEtCpK,EAAE4J,OAAS5J,EAAEgD,QAAQ/uC,KAAK,0BAC1B+rC,EAAEuK,mBAAmBvK,EAAE6H,iBACnB7H,EAAEttC,OAAO83C,YACTxK,EAAEttC,OAAO83C,WAAWxK,EAAW,SAARje,EAAiBie,EAAE4J,OAAOvsC,GAAG2iC,EAAE4J,OAAOr1C,OAAS,GAAG,GAAKyrC,EAAE4J,OAAOvsC,GAAG,GAAG,IAE7F2iC,EAAEttC,OAAO+3C,sBACTzK,EAAEttC,OAAO+3C,qBAAqBzK,EAAGA,EAAE6J,YAAa7J,EAAE2J,eAG1D3J,EAAEuK,mBAAqB,SAAU5oC,GAC7BA,EAAYA,GAAaq+B,EAAE6H,iBAAmB,EACb,mBAAtB7H,GAAE6H,kBAAiC7H,EAAE6H,gBAAkBlmC,GAClEq+B,EAAE4J,OAAOtuC,YAAY,sFACrB,IAAIovC,GAAwC,MAAjB/oC,EAAY,GAAWrB,EAC9CqqC,EAAqC,KAAZhpC,EAAkBrB,EAC3CsqC,EAAwC,MAAjBjpC,EAAY,GAAWrB,CAClD0/B,GAAE4J,OAAOvsC,GAAG,GAAGyD,UAAU,gBAAkBk/B,EAAEsH,IAAMoD,EAAqB,GAAK,OAAS1K,EAAEsH,IAAM,EAAIoD,GAAsB,SAASrvC,SAAS,8BAC1I2kC,EAAE4J,OAAOvsC,GAAG,GAAGyD,UAAU,gBAAkBk/B,EAAEsH,IAAMqD,EAAwB,GAAK,OAAS3K,EAAEsH,IAAM,EAAIqD,GAAyB,SAAStvC,SAAS,iCAChJ2kC,EAAE4J,OAAOvsC,GAAG,GAAGyD,UAAU,gBAAkBk/B,EAAEsH,IAAMsD,EAAqB,GAAK,OAAS5K,EAAEsH,IAAM,EAAIsD,GAAsB,SAASvvC,SAAS,+BAE9I2kC,EAAEiI,UAAY,SAAU9+B,IACM,mBAAfA,IAAoD,gBAAfA,MAC5CA,EAAa,GACR62B,EAAEttC,OAAOqsB,UAAS5V,EAAa,GAExC,IAAI8+B,GAAY5zC,SAAS2rC,EAAE4J,OAAOvsC,GAAG2iC,EAAE4J,OAAOr1C,OAAS,GAAG4G,KAAK,cAAe,IAC1EstC,EAAWp0C,SAAS2rC,EAAE4J,OAAOvsC,GAAG2iC,EAAE4J,OAAOr1C,OAAS,GAAG4G,KAAK,aAAc,IACxE0vC,EAAW,GAAI3rC,MAAKupC,EAAUR,GAC9B6C,EAAeD,EAAS1rC,UACxB4rC,EAAwB/K,EAAEuH,WAAY,GAAQ,CAClD,IAAIvH,EAAEttC,OAAOo0C,SACLgE,EAAe,GAAI5rC,MAAK8gC,EAAEttC,OAAOo0C,SAAS3nC,UAC1C,MAAO6gC,GAAEgI,YAIjB,IADAhI,EAAE6H,kBACEI,IAAcjI,EAAE2J,aAAc,CAC9B,GAAIiB,GAA4C,KAArB5K,EAAiB,gBAAU1/B,EAClD6pC,EAAgB32C,EAAEwsC,EAAE6I,UAAUiC,EAAc,SAAShqC,UAAU,gBAAkBk/B,EAAEsH,IAAMsD,EAAqB,GAAK,OAAS5K,EAAEsH,IAAM,EAAIsD,GAAsB,SAASvvC,SAAS,6BACpL2kC,GAAEgD,QAAQ9iC,OAAOiqC,EAAc,IAC/BnK,EAAE4J,OAAS5J,EAAEgD,QAAQ/uC,KAAK,0BACtB+rC,EAAEttC,OAAO83C,YACTxK,EAAEttC,OAAO83C,WAAWxK,EAAGA,EAAE4J,OAAOvsC,GAAG2iC,EAAE4J,OAAOr1C,OAAS,GAAG,IAGhEyrC,EAAEuH,WAAY,EACdvH,EAAE8J,mBAAmB,OACrB,IAAInoC,GAAiC,IAApBq+B,EAAE6H,gBAAyBvnC,CAE5C0/B,GAAEgD,QAAQ75B,WAAWA,GAAYrI,UAAU,gBAAkBk/B,EAAEsH,IAAM3lC,EAAY,GAAK,OAASq+B,EAAEsH,IAAM,EAAI3lC,GAAa,SACpHopC,GACA/K,EAAEgD,QAAQ1gC,cAAc,WACpB09B,EAAEiK,iBAAiB,UAGtBjK,EAAEttC,OAAOqsB,SACVihB,EAAEiK,iBAAiB,SAG3BjK,EAAEkI,UAAY,SAAU/+B,IACM,mBAAfA,IAAoD,gBAAfA,MAC5CA,EAAa,GACR62B,EAAEttC,OAAOqsB,UAAS5V,EAAa,GAExC,IAAI++B,GAAY7zC,SAAS2rC,EAAE4J,OAAOvsC,GAAG,GAAGlC,KAAK,cAAe,IACxDqtC,EAAWn0C,SAAS2rC,EAAE4J,OAAOvsC,GAAG,GAAGlC,KAAK,aAAc,IACtD6vC,EAAW,GAAI9rC,MAAKspC,EAAUN,EAAY,EAAG,IAC7C+C,EAAeD,EAAS7rC,UACxB4rC,EAAwB/K,EAAEuH,WAAY,GAAQ,CAClD,IAAIvH,EAAEttC,OAAOm0C,SACLoE,EAAe,GAAI/rC,MAAK8gC,EAAEttC,OAAOm0C,SAAS1nC,UAC1C,MAAO6gC,GAAEgI,YAIjB,IADAhI,EAAE6H,kBACEK,IAAclI,EAAE2J,aAAc,CAC9B,GAAIe,GAA4C,KAArB1K,EAAiB,gBAAU1/B,EAClD8pC,EAAgB52C,EAAEwsC,EAAE6I,UAAUoC,EAAc,SAASnqC,UAAU,gBAAkBk/B,EAAEsH,IAAMoD,EAAqB,GAAK,OAAS1K,EAAEsH,IAAM,EAAIoD,GAAsB,SAASrvC,SAAS,6BACpL2kC,GAAEgD,QAAQsH,QAAQF,EAAc,IAChCpK,EAAE4J,OAAS5J,EAAEgD,QAAQ/uC,KAAK,0BACtB+rC,EAAEttC,OAAO83C,YACTxK,EAAEttC,OAAO83C,WAAWxK,EAAGA,EAAE4J,OAAOvsC,GAAG,GAAG,IAG9C2iC,EAAEuH,WAAY,EACdvH,EAAE8J,mBAAmB,OACrB,IAAInoC,GAAiC,IAApBq+B,EAAE6H,gBAAyBvnC,CAC5C0/B,GAAEgD,QAAQ75B,WAAWA,GAAYrI,UAAU,gBAAkBk/B,EAAEsH,IAAM3lC,EAAY,GAAK,OAASq+B,EAAEsH,IAAM,EAAI3lC,GAAa,SACpHopC,GACA/K,EAAEgD,QAAQ1gC,cAAc,WACpB09B,EAAEiK,iBAAiB,UAGtBjK,EAAEttC,OAAOqsB,SACVihB,EAAEiK,iBAAiB,SAG3BjK,EAAEgI,WAAa,SAAU7+B,GACK,mBAAfA,KAA4BA,EAAa,GACpD,IAAIxH,GAAiC,IAApBq+B,EAAE6H,gBAAyBvnC,CAC5C0/B,GAAEgD,QAAQ75B,WAAWA,GAAYrI,UAAU,gBAAkBk/B,EAAEsH,IAAM3lC,EAAY,GAAK,OAASq+B,EAAEsH,IAAM,EAAI3lC,GAAa,UAE5Hq+B,EAAEkL,aAAe,SAAUvF,EAAME,EAAO18B,GAChB,mBAATw8B,KAAsBA,EAAO3F,EAAE6J,aACrB,mBAAVhE,KAAuBA,EAAQ7F,EAAE2J,eAClB,mBAAfxgC,IAAoD,gBAAfA,MAC5CA,EAAa,GACR62B,EAAEttC,OAAOqsB,UAAS5V,EAAa,GAExC,IAAIgiC,EAOJ,IALIA,EADAxF,EAAO3F,EAAE6J,YACI,GAAI3qC,MAAKymC,EAAME,EAAQ,EAAG,IAAI1mC,UAG9B,GAAID,MAAKymC,EAAME,GAAO1mC,UAEnC6gC,EAAEttC,OAAOo0C,SAAWqE,EAAa,GAAIjsC,MAAK8gC,EAAEttC,OAAOo0C,SAAS3nC,UAC5D,OAAO,CAEX,IAAI6gC,EAAEttC,OAAOm0C,SAAWsE,EAAa,GAAIjsC,MAAK8gC,EAAEttC,OAAOm0C,SAAS1nC,UAC5D,OAAO,CAEX,IAAIisC,GAAc,GAAIlsC,MAAK8gC,EAAE6J,YAAa7J,EAAE2J,cAAcxqC,UACtD4iB,EAAMopB,EAAaC,EAAc,OAAS,OAC1Cf,EAAerK,EAAE6I,UAAU,GAAI3pC,MAAKymC,EAAME,GAC9C7F,GAAE6H,gBAAkB7H,EAAE6H,iBAAmB,CACzC,IACIwD,GAAgBC,EADhBhI,EAAgBtD,EAAE6H,gBAElBkD,EAAwB/K,EAAEuH,WAAY,GAAQ,CAC9C4D,GAAaC,GAEbpL,EAAE6H,kBACG7H,EAAEuH,WAAWvH,EAAE4J,OAAOvsC,GAAG2iC,EAAE4J,OAAOr1C,OAAS,GAAGoO,SACnDq9B,EAAEgD,QAAQ9iC,OAAOmqC,GACjBrK,EAAE4J,OAAS5J,EAAEgD,QAAQ/uC,KAAK,0BAC1Bo3C,EAAwC,MAArB/H,EAAgB,GAAWhjC,EAC9C0/B,EAAE4J,OAAOvsC,GAAG2iC,EAAE4J,OAAOr1C,OAAS,GAAGuM,UAAU,gBAAkBk/B,EAAEsH,IAAM+D,EAAiB,GAAK,OAASrL,EAAEsH,IAAM,EAAI+D,GAAkB,SAAShwC,SAAS,gCAIpJ2kC,EAAE6H,kBACG7H,EAAEuH,WAAWvH,EAAE4J,OAAOvsC,GAAG,GAAGsF,SACjCq9B,EAAEgD,QAAQsH,QAAQD,GAClBrK,EAAE4J,OAAS5J,EAAEgD,QAAQ/uC,KAAK,0BAC1Bo3C,EAAwC,MAArB/H,EAAgB,GAAWhjC,EAC9C0/B,EAAE4J,OAAOvsC,GAAG,GAAGyD,UAAU,gBAAkBk/B,EAAEsH,IAAM+D,EAAiB,GAAK,OAASrL,EAAEsH,IAAM,EAAI+D,GAAkB,SAAShwC,SAAS,+BAElI2kC,EAAEttC,OAAO83C,YACTxK,EAAEttC,OAAO83C,WAAWxK,EAAW,SAARje,EAAiBie,EAAE4J,OAAOvsC,GAAG2iC,EAAE4J,OAAOr1C,OAAS,GAAG,GAAKyrC,EAAE4J,OAAOvsC,GAAG,GAAG,IAEjG2iC,EAAEuH,WAAY,EACdvH,EAAE8J,mBAAmB/nB,GACrBupB,EAAwC,IAApBtL,EAAE6H,gBAAyBvnC,EAC/C0/B,EAAEgD,QAAQ75B,WAAWA,GAAYrI,UAAU,gBAAkBk/B,EAAEsH,IAAMgE,EAAmB,GAAK,OAAStL,EAAEsH,IAAM,EAAIgE,GAAoB,SAClIP,GACD/K,EAAEgD,QAAQ1gC,cAAc,WACnB09B,EAAEiK,iBAAiBloB,GAAK,KAG3Bie,EAAEttC,OAAOqsB,SACVihB,EAAEiK,iBAAiBloB,IAG3Bie,EAAEyI,SAAW,WACTzI,EAAEkL,aAAalL,EAAE6J,YAAc,IAEnC7J,EAAEwI,SAAW,WACTxI,EAAEkL,aAAalL,EAAE6J,YAAc,IAKnC7J,EAAEthB,OAAS,WACP,GAEIhjB,GAFA0pC,EAAa,GACbC,EAAc,GAGdkG,EAAavL,EAAE31B,OAAS21B,EAAE31B,MAAM9V,OAASyrC,EAAE31B,MAAM,IAAK,GAAInL,OAAOmqC,SAAS,EAAE,EAAE,EAAE,GAChFe,EAAgBpK,EAAE6I,UAAU0C,EAAY,QACxCC,EAAmBxL,EAAE6I,UAAU0C,GAC/BpB,EAAgBnK,EAAE6I,UAAU0C,EAAY,QACxCE,EAAa,oFAAsFrB,EAAgBoB,EAAmBrB,GAAiB,eAEvJuB,EAAiB,EACrB,IAAI1L,EAAEttC,OAAO20C,WAAY,CACrB,IAAK3rC,EAAI,EAAO,EAAJA,EAAOA,IAAK,CACpB,GAAIiwC,GAAgBjwC,EAAIskC,EAAEttC,OAAOi0C,SAAW,EAAMjrC,EAAI,EAAIskC,EAAEttC,OAAOi0C,SAAajrC,EAAIskC,EAAEttC,OAAOi0C,SACzFiF,EAAU5L,EAAEttC,OAAO+zC,cAAckF,EACrCD,IAAkB,yCAA4C1L,EAAEttC,OAAOk0C,YAAYxyC,QAAQu3C,IAAiB,EAAK,mCAAqC,IAAM,MAAQC,EAAU,SAGlLF,EAAiB,0CAA4CA,EAAiB,SAElFrG,EAAc,iCAAmCrF,EAAEttC,OAAO2kB,UAAY,GACtE,IAAIw0B,GAAc7L,EAAEttC,OAAOmV,QAAUm4B,EAAEttC,OAAOimC,gBAAgB7lC,QAAQ,iBAAkBktC,EAAEttC,OAAO+uC,kBAAoB,EACjHzB,GAAEttC,OAAOmV,UACTgkC,EAAc7L,EAAEttC,OAAOimC,gBAClB7lC,QAAQ,iBAAkBktC,EAAEttC,OAAO+uC,kBACnC3uC,QAAQ,mBAAqBktC,EAAEttC,OAAOu0C,YAAcjH,EAAEttC,OAAOw0C,oBAAsB,IACnFp0C,QAAQ,kBAAoBktC,EAAEttC,OAAOy0C,WAAanH,EAAEttC,OAAO00C,mBAAqB,KAGzFhC,EACI,eAAiB,EAAgB,KAC7ByG,EACA,mCACIH,EACAD,EACJ,eAIRzL,EAAEoF,WAAaA,GA0CfpF,EAAEttC,OAAO0V,QACT43B,EAAE53B,MAAQ5U,EAAEwsC,EAAEttC,OAAO0V,OACjB43B,EAAE53B,MAAM7T,OAAS,IACbyrC,EAAEttC,OAAO8uC,eAAexB,EAAE53B,MAAM2nB,KAAK,YAAY,GAChDiQ,EAAEG,QACHH,EAAE53B,MAAM0F,GAAG,QAAS2yB,GAEpBT,EAAEttC,OAAO8uC,eACTxB,EAAE53B,MAAM0F,GAAG,kBAAmB,SAAUpP,GACpCA,EAAE2B,qBAOb2/B,EAAEG,QAAQ3sC,EAAE,QAAQsa,GAAG,QAASkzB,GAYrChB,EAAErjB,QAAS,EACXqjB,EAAEhM,KAAO,WACL,GAAItb,GAAYoD,IACZkmB,GAAc,CACbhC,GAAErjB,SAEEqjB,EAAE31B,OACC21B,EAAEttC,OAAO2X,QACT21B,EAAE31B,MAAQ21B,EAAEttC,OAAO2X,MACnB23B,GAAc,GAKtBhC,EAAEthB,SAGEhG,GACAsnB,EAAEoF,WAAa,2EAA6EpF,EAAEoF,WAAa,eAC3GpF,EAAEhnB,QAAU/lB,EAAI+lB,QAAQgnB,EAAEoF,WAAYpF,EAAEttC,OAAO0V,OAAO,GACtD43B,EAAE9jC,UAAY1I,EAAEwsC,EAAEhnB,SAAS/kB,KAAK,iBAChCT,EAAEwsC,EAAEhnB,SAASlL,GAAG,QAAS,WACrBmzB,OAGCjB,EAAEG,QACPH,EAAE9jC,UAAY1I,EAAEwsC,EAAEoF,YAClBpF,EAAE9jC,UAAUb,SAAS,uBACrB7H,EAAEwsC,EAAEttC,OAAOwJ,WAAWgE,OAAO8/B,EAAE9jC,aAG/B8jC,EAAE9jC,UAAY1I,EAAEP,EAAIsoB,YAAYykB,EAAEoF,aAClC5xC,EAAEwsC,EAAE9jC,WACH4R,GAAG,QAAS,WACTmzB,OAKRjB,EAAE9jC,UAAU,GAAG4vC,WAAa9L,EAC5BA,EAAEgD,QAAUhD,EAAE9jC,UAAUjI,KAAK,mCAG7B+rC,EAAE4J,OAAS5J,EAAEgD,QAAQ/uC,KAAK,0BAG1B+rC,EAAE0J,yBAGF1J,EAAE6H,gBAAkB,EACpB7H,EAAEuK,qBAGFvK,EAAE4H,qBAGE5F,GAAahC,EAAEgC,eAKvBhC,EAAErjB,QAAS,EACXqjB,EAAE0B,aAAc,EACZ1B,EAAEttC,OAAO83C,YACTxK,EAAE4J,OAAOloC,KAAK,WACVs+B,EAAEttC,OAAO83C,WAAWxK,EAAGvsC,QAG3BusC,EAAEttC,OAAOonC,QAAQkG,EAAEttC,OAAOonC,OAAOkG,IAIzCA,EAAE1oB,MAAQ,WACN,MAAK0oB,GAAErjB,SAAUqjB,EAAEG,OACfC,QACAntC,GAAIkN,WAAW6/B,EAAEhnB,aAIjB/lB,GAAIkN,WAAW6/B,EAAE9jC,WANrB,QAYJ8jC,EAAEz7B,QAAU,WACRy7B,EAAE1oB,QACE0oB,EAAEttC,OAAO0V,OAAS43B,EAAE53B,MAAM7T,OAAS,GACnCyrC,EAAE53B,MAAMyF,IAAI,cAAe4yB,GAE/BjtC,EAAE,QAAQqa,IAAI,QAASmzB,IAGvBhB,EAAEG,QACFH,EAAEhM,OAGCgM,EAEX/sC,GAAI84C,SAAW,SAAUr5C,GACrB,MAAO,IAAI8yC,GAAS9yC,GAMxB,IAAIs5C,EACJ/4C,GAAIg5C,gBAAkB,SAAUv5C,GAC5B,GAAKA,EAAL,CAE4B,mBAAjBA,GAAOw5C,QAAuBx5C,EAAOw5C,MAAQj5C,EAAIP,OAAOy5C,mBACvC,mBAAjBz5C,GAAO8Y,QAAuB9Y,EAAO8Y,MAAQvY,EAAIP,OAAO05C,mBACpC,mBAApB15C,GAAO25C,WAA0B35C,EAAO25C,SAAWp5C,EAAIP,OAAO45C,sBACzC,mBAArB55C,GAAO65C,YAA2B75C,EAAO65C,UAAYt5C,EAAIP,OAAOmH,uBAChD,mBAAhBnH,GAAO85C,OAAsB95C,EAAO85C,KAAOv5C,EAAIP,OAAO+5C,kBAC9B,mBAAxB/5C,GAAOg6C,eAA8Bh6C,EAAOg6C,aAAez5C,EAAIP,OAAOkH,0BAE5EoyC,IAA0BA,EAA2Bn3C,SAAS4c,cAAc,OAEjF,IAAIvV,GAAY1I,EAAE,iBACO,KAArB0I,EAAU3H,SACVf,EAAE,QAAQ0M,OAAO,oEACjBhE,EAAY1I,EAAE,kBAElB,IAEIm5C,GAFAnd,EAAOtzB,EAAU+I,SAAS,KAI1B0nC,GADAj6C,EAAOk6C,OACI,OAASl6C,EAAOk6C,OAAS,QAGzB,gFACMl6C,EAAOw5C,MACR,2BACIx5C,EAAOw5C,MACX,SAAW,IACX,wDAESx5C,EAAO8Y,MAAQ,2BAA6B9Y,EAAO8Y,MAAQ,SAAW,KACtE9Y,EAAO65C,UAAY,yFAA2F,IACnH,UACC75C,EAAO25C,SAAW,8BAAgC35C,EAAO25C,SAAW,SAAW,KAC/E35C,EAAOisB,QAAU,0BAA4BjsB,EAAOisB,QAAU,SAAW,IAC9E,oBAGpBqtB,EAAyB53B,UAAYu4B,CAErC,IAAI5nB,GAAOvxB,EAAEw4C,GAA0B/mC,UAEvC8f,GAAKjX,GAAG,QAAS,SAAUpP,GACvB,GAAI4Y,IAAQ,CACR9jB,GAAEkL,EAAEiB,QAAQE,GAAG,wBAA0BrM,EAAEkL,EAAEiB,QAAQC,QAAQ,uBAAuBrL,OAAS,EAC7F+iB,GAAQ,GAGJ5kB,EAAO6kB,SAAS7kB,EAAO6kB,QAAQ7Y,EAAGqmB,EAAK,IACvCryB,EAAOg6C,eAAcp1B,GAAQ,IAEjCA,GAAOrkB,EAAI45C,kBAAkB9nB,EAAK,MAEtCryB,EAAOsnC,SACPjV,EAAKxR,KAAK,wBAAyB,WAC/B7gB,EAAOsnC,QAAQjV,EAAK,MAGxBryB,EAAOo6C,iBACP/nB,EAAK1pB,SAAS3I,EAAOo6C,iBAErBp6C,EAAO85C,MACPx3C,WAAW,WACH+vB,EAAKxwB,OAAS,GAAGtB,EAAI45C,kBAAkB9nB,EAAK,KACjDryB,EAAO85C,MAGdhd,EAAK8a,QAAQvlB,EAAK,IAClB7oB,EAAUkN,MAEV,IAAI4gB,GAAajF,EAAKvK,aACtBuK,GAAK7pB,IAAI,aAAc8uB,EAAa,MACpCjF,EAAK5b,WAAW,EAEhB,EAAiB4b,EAAK,GAAG9P,WAOzB,MANA8P,GAAK5b,WAAW,IAChB4b,EAAK7pB,IAAI,YAAa,OAEtBgB,EAAU4E,UAAU,uBACpBikB,EAAKzpB,YAAY,uBAEVypB,EAAK,KAEhB9xB,EAAI45C,kBAAoB,SAAU9nB,GAE9B,GADAA,EAAOvxB,EAAEuxB,GACW,IAAhBA,EAAKxwB,SACLwwB,EAAK5wB,SAAS,8BAAlB,CACA,GAAI+H,GAAY1I,EAAE,kBAEdw2B,EAAajF,EAAKvK,aACtBuK,GAAK7pB,IAAI,SAAU8uB,EAAa,MAAM7gB,WAAW,EACjD,EAAiB4b,EAAK,GAAG9P,WAEzB8P,EAAK7pB,IAAI,SAAU,OAAOiO,WAAW,IAAI9N,SAAS,8BAC9C0pB,EAAKxR,KAAK,0BAA0BwR,EAAKxR,KAAK,2BAEmC,IAAjFrX,EAAUjI,KAAK,uDAAuDM,QACtE2H,EAAU4E,UAAU,IAGxBikB,EAAK1pB,SAAS,uBAAuBiH,cAAc,WAC/CyiB,EAAKpiB,SAC+C,IAAhDzG,EAAUjI,KAAK,sBAAsBM,QACrC2H,EAAU2O,WAQtB5X,EAAI85C,uBAAyB,WACpBv6C,OAAO+H,YACZA,UAAUR,UAAYQ,UAAUR,WAAa9G,EAAIP,OAAOqH,cACxDQ,UAAUgZ,KAAOhZ,UAAUgZ,MAAQtgB,EAAIP,OAAOsH,kBAC9CO,UAAUrF,MAAQqF,UAAUrF,UAE5BjC,EAAI8G,UAAYQ,UAAUR,UAC1B9G,EAAI+G,cAAgBO,UAAUgZ,KAC9BtgB,EAAIkgB,eAAiB5Y,UAAUrF,MAG1BjC,EAAIP,OAAOwH,qBAChB1G,EAAE,iCAAiCkO,KAAK;AACpC,GAAIklB,GAAKpzB,EAAEC,MAAM0H,KAAK,KACjByrB,KACLrsB,UAAUR,UAAU6sB,GAAMrsB,UAAU6Y,QAAQ5f,EAAEC,MAAMmsB,YAQ5D,IAAIotB,KA2FJ,OA1FA/5C,GAAIg6C,YAAc,WAEd,IAAK,GAAIC,KAAUj6C,GAAIk6C,QAAS,CAC5B,GAAInN,GAAI/sC,EAAIk6C,QAAQD,GAAQj6C,EAAKA,EAAIP,OAAOw6C,GACxClN,IAAGgN,EAAStwC,KAAKsjC,KAI7B/sC,EAAIuR,WAAa,SAAU4oC,GACvB,IAAK,GAAI1xC,GAAI,EAAGA,EAAIsxC,EAASz4C,OAAQmH,IAC7BsxC,EAAStxC,GAAG2xC,OAASD,IAAQJ,GAAStxC,GAAG2xC,OACzCL,EAAStxC,GAAG2xC,MAAMD,GAAMz1B,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIA,UAAU,KAKtG1kB,EAAIq6C,cAAgB,SAAUxqC,GAE1B,IAAK,GADDkuB,IAAU,EACLt1B,EAAI,EAAGA,EAAIsxC,EAASz4C,OAAQmH,IAC7BsxC,EAAStxC,GAAG6xC,UAAYzqC,IAAUkqC,GAAStxC,GAAG6xC,UAC1CP,EAAStxC,GAAG6xC,SAASzqC,GAAQ6U,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIA,UAAU,MAAKqZ,GAAU,EAG1H,OAAOA,IAGX/9B,EAAI0f,cAAgB,SAAU7P,EAAQyQ,GAElC,IAAK,GADDi6B,GAAYj6B,EACP7X,EAAI,EAAGA,EAAIsxC,EAASz4C,OAAQmH,IAC7BsxC,EAAStxC,GAAG+W,YAAcg7B,UAAWT,GAAStxC,GAAG+W,aACjD+6B,EAAYR,EAAStxC,GAAG+W,WAAWg7B,SAASl6B,EAAMoE,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIA,UAAU,IAG5H,OAAO61B,IAQXv6C,EAAIkH,KAAO,WAEHlH,EAAI85C,wBAAwB95C,EAAI85C,yBAGhC95C,EAAIg6C,aAAah6C,EAAIg6C,cAGrBh6C,EAAIy6C,eAAez6C,EAAIy6C,gBAGvBz6C,EAAIy8B,gBAAkBz8B,EAAIP,OAAOwD,YAAYjD,EAAIy8B,iBACjDz8B,EAAI0gC,iBAAiB1gC,EAAI0gC,kBAG7BngC,EAAE,sBAAsBkO,KAAK,WACzBzO,EAAIse,qBAAqB9d,QAI7BD,EAAE,wBAAwBkO,KAAK,WAC3BzO,EAAIiT,uBAAuBzS,QAI3BR,EAAI2hC,YAAY3hC,EAAI2hC,aAGpB3hC,EAAIyjC,eAAiBzjC,EAAIP,OAAOkD,WAAW3C,EAAIyjC,gBAG/CzjC,EAAIitB,cAAgBjtB,EAAIP,OAAO8E,UAAUvE,EAAIitB,eAG7CjtB,EAAI6vB,cAAgB7vB,EAAIP,OAAOwE,UAAUjE,EAAI6vB,eAG7C7vB,EAAIwpB,kBAAoBxpB,EAAIP,OAAO4F,YAAcrF,EAAIP,OAAO+F,sBAAsBxF,EAAIwpB,kBAGtFxpB,EAAIP,OAAOi7C,WAAW16C,EAAIP,OAAOi7C,YAGrC16C,EAAIuR,WAAW,YAEfvR,EAAIP,OAAOyH,MAAMlH,EAAIkH,OAIlBlH,EAOX,IAAIoH,GAAO,WACP,GAAIA,GAAO,SAAUuzC,GACjB,GAAIC,GAAQp6C,KAAMiI,EAAI,CAEtB,KAAKA,EAAI,EAAGA,EAAIkyC,EAAIr5C,OAAQmH,IACxBmyC,EAAMnyC,GAAKkyC,EAAIlyC,EAInB,OAFAmyC,GAAMt5C,OAASq5C,EAAIr5C,OAEZd,MAEPD,EAAI,SAAUiI,EAAUmU,GACxB,GAAIg+B,MAAUlyC,EAAI,CAClB,IAAID,IAAamU,GACTnU,YAAoBpB,GACpB,MAAOoB,EAGf,IAAIA,EAEA,GAAwB,gBAAbA,GAAuB,CAC9B,GAAIqyC,GAAKC,EAAYnuB,EAAOnkB,EAAS6O,MACrC,IAAIsV,EAAKxrB,QAAQ,MAAQ,GAAKwrB,EAAKxrB,QAAQ,MAAQ,EAAG,CAClD,GAAI45C,GAAW,KAQf,KAP4B,IAAxBpuB,EAAKxrB,QAAQ,SAAc45C,EAAW,MACd,IAAxBpuB,EAAKxrB,QAAQ,SAAc45C,EAAW,UACd,IAAxBpuB,EAAKxrB,QAAQ,QAAwC,IAAxBwrB,EAAKxrB,QAAQ,UAAc45C,EAAW,MACxC,IAA3BpuB,EAAKxrB,QAAQ,YAAiB45C,EAAW,SACb,IAA5BpuB,EAAKxrB,QAAQ,aAAkB45C,EAAW,UAC9CD,EAAal5C,SAAS4c,cAAcu8B,GACpCD,EAAW35B,UAAY3Y,EAClBC,EAAI,EAAGA,EAAIqyC,EAAW5yB,WAAW5mB,OAAQmH,IAC1CkyC,EAAIlxC,KAAKqxC,EAAW5yB,WAAWzf,QAYnC,KAFIoyC,EANCl+B,GAA2B,MAAhBnU,EAAS,IAAeA,EAAS1I,MAAM,aAM5C6c,GAAW/a,UAAUo5C,iBAAiBxyC,IAJtC5G,SAASq5C,eAAezyC,EAASwB,MAAM,KAAK,KAMlDvB,EAAI,EAAGA,EAAIoyC,EAAIv5C,OAAQmH,IACpBoyC,EAAIpyC,IAAIkyC,EAAIlxC,KAAKoxC,EAAIpyC,QAKhC,IAAID,EAAS0yC,UAAY1yC,IAAajJ,QAAUiJ,IAAa5G,SAC9D+4C,EAAIlxC,KAAKjB,OAGR,IAAIA,EAASlH,OAAS,GAAKkH,EAAS,GAAG0yC,SACxC,IAAKzyC,EAAI,EAAGA,EAAID,EAASlH,OAAQmH,IAC7BkyC,EAAIlxC,KAAKjB,EAASC,GAI9B,OAAO,IAAIrB,GAAKuzC,GAGpBvzC,GAAK+zC,WAED/yC,SAAU,SAAU4F,GAChB,GAAyB,mBAAdA,GACP,MAAOxN,KAGX,KAAK,GADD46C,GAAUptC,EAAUhE,MAAM,KACrBvB,EAAI,EAAGA,EAAI2yC,EAAQ95C,OAAQmH,IAChC,IAAK,GAAI8N,GAAI,EAAGA,EAAI/V,KAAKc,OAAQiV,IACI,mBAAtB/V,MAAK+V,GAAG4R,WAA2B3nB,KAAK+V,GAAG4R,UAAUC,IAAIgzB,EAAQ3yC,GAGpF,OAAOjI,OAEX6H,YAAa,SAAU2F,GAEnB,IAAK,GADDotC,GAAUptC,EAAUhE,MAAM,KACrBvB,EAAI,EAAGA,EAAI2yC,EAAQ95C,OAAQmH,IAChC,IAAK,GAAI8N,GAAI,EAAGA,EAAI/V,KAAKc,OAAQiV,IACI,mBAAtB/V,MAAK+V,GAAG4R,WAA2B3nB,KAAK+V,GAAG4R,UAAUzY,OAAO0rC,EAAQ3yC,GAGvF,OAAOjI,OAEXU,SAAU,SAAU8M,GAChB,MAAKxN,MAAK,GACEA,KAAK,GAAG2nB,UAAUkzB,SAASrtC,IADlB,GAGzB0hB,YAAa,SAAU1hB,GAEnB,IAAK,GADDotC,GAAUptC,EAAUhE,MAAM,KACrBvB,EAAI,EAAGA,EAAI2yC,EAAQ95C,OAAQmH,IAChC,IAAK,GAAI8N,GAAI,EAAGA,EAAI/V,KAAKc,OAAQiV,IACI,mBAAtB/V,MAAK+V,GAAG4R,WAA2B3nB,KAAK+V,GAAG4R,UAAUmzB,OAAOF,EAAQ3yC,GAGvF,OAAOjI,OAEX0H,KAAM,SAAUqzC,EAAOnkC,GACnB,GAAyB,IAArBsN,UAAUpjB,QAAiC,gBAAVi6C,GAEjC,MAAI/6C,MAAK,GAAWA,KAAK,GAAGM,aAAay6C,GAC7B14C,MAIZ,KAAK,GAAI4F,GAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAC7B,GAAyB,IAArBic,UAAUpjB,OAEVd,KAAKiI,GAAG+yC,aAAaD,EAAOnkC,OAI5B,KAAK,GAAIqkC,KAAYF,GACjB/6C,KAAKiI,GAAGgzC,GAAYF,EAAME,GAC1Bj7C,KAAKiI,GAAG+yC,aAAaC,EAAUF,EAAME,GAIjD,OAAOj7C,OAGfk7C,WAAY,SAAUxzC,GAClB,IAAK,GAAIO,GAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAC7BjI,KAAKiI,GAAGkzC,gBAAgBzzC,EAE5B,OAAO1H,OAEXs8B,KAAM,SAAUjR,EAAOzU,GACnB,GAAyB,IAArBsN,UAAUpjB,QAAiC,gBAAVuqB,GAEjC,MAAIrrB,MAAK,GAAWA,KAAK,GAAGqrB,GAChBhpB,MAIZ,KAAK,GAAI4F,GAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAC7B,GAAyB,IAArBic,UAAUpjB,OAEVd,KAAKiI,GAAGojB,GAASzU,MAIjB,KAAK,GAAIwkC,KAAY/vB,GACjBrrB,KAAKiI,GAAGmzC,GAAY/vB,EAAM+vB,EAItC,OAAOp7C,OAGf8f,KAAM,SAAUI,EAAKtJ,GACjB,GAAqB,mBAAVA,GAAuB,CAE9B,GAAI5W,KAAK,GAAI,CACT,GAAIq7C,GAAUr7C,KAAK,GAAGM,aAAa,QAAU4f,EAC7C,OAAIm7B,GAAgBA,EACXr7C,KAAK,GAAGs7C,wBAA2Bp7B,IAAOlgB,MAAK,GAAGs7C,uBAAgCt7C,KAAK,GAAGs7C,uBAAuBp7B,GAC9G7d,OAEX,MAAOA,QAIZ,IAAK,GAAI4F,GAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAAK,CAClC,GAAIuC,GAAKxK,KAAKiI,EACTuC,GAAG8wC,yBAAwB9wC,EAAG8wC,2BACnC9wC,EAAG8wC,uBAAuBp7B,GAAOtJ,EAErC,MAAO5W,OAGf2Y,QAAS,WACL,GAAInO,GAAKxK,KAAK,EACd,IAAIwK,EAAI,CACJ,GAAImO,KACJ,IAAInO,EAAGmO,QACH,IAAK,GAAI0iC,KAAW7wC,GAAGmO,QACnBA,EAAQ0iC,GAAW7wC,EAAGmO,QAAQ0iC,OAIlC,KAAK,GAAIpzC,GAAI,EAAGA,EAAIuC,EAAG+wC,WAAWz6C,OAAQmH,IAAK,CAC3C,GAAIP,GAAO8C,EAAG+wC,WAAWtzC,EACrBP,GAAKuU,KAAKtb,QAAQ,UAAY,IAC9BgY,EAAQ5Y,EAAEy7C,YAAY9zC,EAAKuU,KAAKzS,MAAM,SAAS,KAAO9B,EAAKkP,OAIvE,IAAK,GAAIsJ,KAAOvH,GACS,UAAjBA,EAAQuH,GAAkBvH,EAAQuH,IAAO,EACnB,SAAjBvH,EAAQuH,GAAiBvH,EAAQuH,IAAO,EACxCu7B,WAAW9iC,EAAQuH,MAAyB,EAAfvH,EAAQuH,KAAUvH,EAAQuH,GAAsB,EAAfvH,EAAQuH,GAEnF,OAAOvH,GAEN,MAAOtW,SAEhBmU,IAAK,SAAUI,GACX,GAAqB,mBAAVA,GACP,MAAI5W,MAAK,GAAWA,KAAK,GAAG4W,MAChBvU,MAGZ,KAAK,GAAI4F,GAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAC7BjI,KAAKiI,GAAG2O,MAAQA,CAEpB,OAAO5W,OAIfqN,UAAY,SAAUA,GAClB,IAAK,GAAIpF,GAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAAK,CAClC,GAAIyzC,GAAU17C,KAAKiI,GAAGqF,KACtBouC,GAAQC,gBAAkBD,EAAQE,YAAcF,EAAQG,YAAcH,EAAQI,aAAeJ,EAAQK,WAAaL,EAAQruC,UAAYA,EAE1I,MAAOrN,OAEX0V,WAAY,SAAU0W,GACM,gBAAbA,KACPA,GAAsB,KAE1B,KAAK,GAAInkB,GAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAAK,CAClC,GAAIyzC,GAAU17C,KAAKiI,GAAGqF,KACtBouC,GAAQM,yBAA2BN,EAAQO,qBAAuBP,EAAQQ,qBAAuBR,EAAQS,sBAAwBT,EAAQU,oBAAsBV,EAAQW,mBAAqBjwB,EAEhM,MAAOpsB,OAGXqa,GAAI,SAAUpE,EAAWqmC,EAAgBC,EAAUC,GAC/C,QAASC,GAAgBxxC,GACrB,GAAIiB,GAASjB,EAAEiB,MACf,IAAInM,EAAEmM,GAAQE,GAAGkwC,GAAiBC,EAAS9tB,KAAKviB,EAAQjB,OAGpD,KAAK,GADDkB,GAAUpM,EAAEmM,GAAQC,UACfuwC,EAAI,EAAGA,EAAIvwC,EAAQrL,OAAQ47C,IAC5B38C,EAAEoM,EAAQuwC,IAAItwC,GAAGkwC,IAAiBC,EAAS9tB,KAAKtiB,EAAQuwC,GAAIzxC,GAI5E,GACIhD,GAAG8N,EADH4mC,EAAS1mC,EAAUzM,MAAM,IAE7B,KAAKvB,EAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IACzB,GAA8B,kBAAnBq0C,IAAiCA,KAAmB,EAM3D,IAJ8B,kBAAnBA,KACPC,EAAWr4B,UAAU,GACrBs4B,EAAUt4B,UAAU,KAAM,GAEzBnO,EAAI,EAAGA,EAAI4mC,EAAO77C,OAAQiV,IAC3B/V,KAAKiI,GAAGg4B,iBAAiB0c,EAAO5mC,GAAIwmC,EAAUC,OAKlD,KAAKzmC,EAAI,EAAGA,EAAI4mC,EAAO77C,OAAQiV,IACtB/V,KAAKiI,GAAG20C,oBAAmB58C,KAAKiI,GAAG20C,sBACxC58C,KAAKiI,GAAG20C,kBAAkB3zC,MAAMszC,SAAUA,EAAUM,aAAcJ,IAClEz8C,KAAKiI,GAAGg4B,iBAAiB0c,EAAO5mC,GAAI0mC,EAAiBD,EAKjE,OAAOx8C,OAEXoa,IAAK,SAAUnE,EAAWqmC,EAAgBC,EAAUC,GAEhD,IAAK,GADDG,GAAS1mC,EAAUzM,MAAM,KACpBvB,EAAI,EAAGA,EAAI00C,EAAO77C,OAAQmH,IAC/B,IAAK,GAAI8N,GAAI,EAAGA,EAAI/V,KAAKc,OAAQiV,IAC7B,GAA8B,kBAAnBumC,IAAiCA,KAAmB,EAE7B,kBAAnBA,KACPC,EAAWr4B,UAAU,GACrBs4B,EAAUt4B,UAAU,KAAM,GAE9BlkB,KAAK+V,GAAG+mC,oBAAoBH,EAAO10C,GAAIs0C,EAAUC,OAIjD,IAAIx8C,KAAK+V,GAAG6mC,kBACR,IAAK,GAAIF,GAAI,EAAGA,EAAI18C,KAAK+V,GAAG6mC,kBAAkB97C,OAAQ47C,IAC9C18C,KAAK+V,GAAG6mC,kBAAkBF,GAAGH,WAAaA,GAC1Cv8C,KAAK+V,GAAG+mC,oBAAoBH,EAAO10C,GAAIjI,KAAK+V,GAAG6mC,kBAAkBF,GAAGG,aAAcL,EAO1G,OAAOx8C,OAEX4Y,KAAM,SAAU3C,EAAWqmC,EAAgBC,EAAUC,GAOjD,QAASO,GAAM9xC,GACXsxC,EAAStxC,GACT+xC,EAAI5iC,IAAInE,EAAWqmC,EAAgBS,EAAOP,GAR9C,GAAIQ,GAAMh9C,IACoB,mBAAnBs8C,KACPA,GAAiB,EACjBC,EAAWr4B,UAAU,GACrBs4B,EAAUt4B,UAAU,IAMxB84B,EAAI3iC,GAAGpE,EAAWqmC,EAAgBS,EAAOP,IAE7C37C,QAAS,SAAUoV,EAAW/D,GAC1B,IAAK,GAAIjK,GAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAAK,CAClC,GAAI+2B,EACJ,KACIA,EAAM,GAAIie,aAAYhnC,GAAY6b,OAAQ5f,EAAWgrC,SAAS,EAAMpe,YAAY,IAEpF,MAAO7zB,GACH+zB,EAAM59B,SAAS69B,YAAY,SAC3BD,EAAIme,UAAUlnC,GAAW,GAAM,GAC/B+oB,EAAIlN,OAAS5f,EAEjBlS,KAAKiI,GAAGw3B,cAAcT,GAE1B,MAAOh/B,OAEX6O,cAAe,SAAUnP,GAGrB,QAAS09C,GAAanyC,GAElB,GAAIA,EAAEiB,SAAWlM,KAEjB,IADAN,EAAS+uB,KAAKzuB,KAAMiL,GACfhD,EAAI,EAAGA,EAAI00C,EAAO77C,OAAQmH,IAC3B+0C,EAAI5iC,IAAIuiC,EAAO10C,GAAIm1C,GAP3B,GACIn1C,GADA00C,GAAU,sBAAuB,gBAAiB,iBAAkB,kBAAmB,mBACjFK,EAAMh9C,IAShB,IAAIN,EACA,IAAKuI,EAAI,EAAGA,EAAI00C,EAAO77C,OAAQmH,IAC3B+0C,EAAI3iC,GAAGsiC,EAAO10C,GAAIm1C,EAG1B,OAAOp9C,OAEXyhB,aAAc,SAAU/hB,GAGpB,QAAS09C,GAAanyC,GAElB,IADAvL,EAASuL,GACJhD,EAAI,EAAGA,EAAI00C,EAAO77C,OAAQmH,IAC3B+0C,EAAI5iC,IAAIuiC,EAAO10C,GAAIm1C,GAL3B,GACIn1C,GADA00C,GAAU,qBAAsB,gBAAiB,iBAAkB,gBAC7DK,EAAMh9C,IAOhB,IAAIN,EACA,IAAKuI,EAAI,EAAGA,EAAI00C,EAAO77C,OAAQmH,IAC3B+0C,EAAI3iC,GAAGsiC,EAAO10C,GAAIm1C,EAG1B,OAAOp9C,OAGXiM,MAAO,WACH,MAAIjM,MAAK,KAAOjB,OACLA,OAAOoqB,WAGVnpB,KAAKc,OAAS,EACP26C,WAAWz7C,KAAKyH,IAAI,UAGpB,MAInB8L,WAAY,SAAU8pC,GAClB,GAAIr9C,KAAKc,OAAS,EAAG,CACjB,GAAIu8C,EAAgB,CAChB,GAAI1pC,GAAS3T,KAAK2T,QAClB,OAAO3T,MAAK,GAAG6T,YAAc4nC,WAAW9nC,EAAO2pC,iBAAiB,iBAAmB7B,WAAW9nC,EAAO2pC,iBAAiB,gBAGtH,MAAOt9C,MAAK,GAAG6T,YAElB,MAAO,OAEhB1T,OAAQ,WACJ,MAAIH,MAAK,KAAOjB,OACLA,OAAOurB,YAGVtqB,KAAKc,OAAS,EACP26C,WAAWz7C,KAAKyH,IAAI,WAGpB,MAInBsf,YAAa,SAAUs2B,GACnB,GAAIr9C,KAAKc,OAAS,EAAG,CACjB,GAAIu8C,EAAgB,CAChB,GAAI1pC,GAAS3T,KAAK2T,QAClB,OAAO3T,MAAK,GAAGI,aAAeq7C,WAAW9nC,EAAO2pC,iBAAiB,eAAiB7B,WAAW9nC,EAAO2pC,iBAAiB,kBAGrH,MAAOt9C,MAAK,GAAGI,aAElB,MAAO,OAEhBkM,OAAQ,WACJ,GAAItM,KAAKc,OAAS,EAAG,CACjB,GAAI0J,GAAKxK,KAAK,GACVu9C,EAAM/yC,EAAG6f,wBACThpB,EAAOD,SAASC,KAChBm8C,EAAahzC,EAAGgzC,WAAcn8C,EAAKm8C,WAAc,EACjDh8B,EAAahX,EAAGgX,YAAcngB,EAAKmgB,YAAc,EACjDvhB,EAAalB,OAAO0+C,aAAejzC,EAAGvK,UACtCqB,EAAavC,OAAO2+C,aAAelzC,EAAGlJ,UAC1C,QACIglB,IAAKi3B,EAAIj3B,IAAOrmB,EAAau9C,EAC7BjxC,KAAMgxC,EAAIhxC,KAAOjL,EAAakgB,GAIlC,MAAO,OAGfpK,KAAM,WACF,IAAK,GAAInP,GAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAC7BjI,KAAKiI,GAAGqF,MAAMwb,QAAU,MAE5B,OAAO9oB,OAEX2V,KAAM,WACF,IAAK,GAAI1N,GAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAC7BjI,KAAKiI,GAAGqF,MAAMwb,QAAU,OAE5B,OAAO9oB,OAEX2T,OAAQ,WAEJ,MAAI3T,MAAK,GAAWjB,OAAO4+C,iBAAiB39C,KAAK,GAAI,MACzCqC,QAEhBoF,IAAK,SAAU4jB,EAAOzU,GAClB,GAAI3O,EACJ,IAAyB,IAArBic,UAAUpjB,OAAc,CACxB,GAAqB,gBAAVuqB,GAGN,CACD,IAAKpjB,EAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IACzB,IAAK,GAAIq0B,KAAQjR,GACbrrB,KAAKiI,GAAGqF,MAAMgvB,GAAQjR,EAAMiR,EAGpC,OAAOt8B,MARP,GAAIA,KAAK,GAAI,MAAOjB,QAAO4+C,iBAAiB39C,KAAK,GAAI,MAAMs9C,iBAAiBjyB,GAWpF,GAAyB,IAArBnH,UAAUpjB,QAAiC,gBAAVuqB,GAAoB,CACrD,IAAKpjB,EAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IACzBjI,KAAKiI,GAAGqF,MAAM+d,GAASzU,CAE3B,OAAO5W,MAEX,MAAOA,OAIXiO,KAAM,SAAUvO,GACZ,IAAK,GAAIuI,GAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAC7BvI,EAAS+uB,KAAKzuB,KAAKiI,GAAIA,EAAGjI,KAAKiI,GAEnC,OAAOjI,OAEXmsB,KAAM,SAAUA,GACZ,GAAoB,mBAATA,GACP,MAAOnsB,MAAK,GAAKA,KAAK,GAAG2gB,UAAYte,MAGrC,KAAK,GAAI4F,GAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAC7BjI,KAAKiI,GAAG0Y,UAAYwL,CAExB,OAAOnsB,OAGf4X,KAAM,SAAUA,GACZ,GAAoB,mBAATA,GACP,MAAI5X,MAAK,GACEA,KAAK,GAAG0wB,YAAY7Z,OAEnB,IAGZ,KAAK,GAAI5O,GAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAC7BjI,KAAKiI,GAAGyoB,YAAc9Y,GAIlCxL,GAAI,SAAUpE,GACV,IAAKhI,KAAK,IAA0B,mBAAbgI,GAA0B,OAAO,CACxD,IAAI41C,GAAa31C,CACjB,IAAwB,gBAAbD,GAAuB,CAC9B,GAAIwC,GAAKxK,KAAK,EACd,IAAIwK,IAAOpJ,SAAU,MAAO4G,KAAa5G,QACzC,IAAIoJ,IAAOzL,OAAQ,MAAOiJ,KAAajJ,MAEvC,IAAIyL,EAAGqzC,QAAS,MAAOrzC,GAAGqzC,QAAQ71C,EAC7B,IAAIwC,EAAGszC,sBAAuB,MAAOtzC,GAAGszC,sBAAsB91C,EAC9D,IAAIwC,EAAGuzC,mBAAoB,MAAOvzC,GAAGuzC,mBAAmB/1C,EACxD,IAAIwC,EAAGwzC,kBAAmB,MAAOxzC,GAAGwzC,kBAAkBh2C,EAGvD,KADA41C,EAAc79C,EAAEiI,GACXC,EAAI,EAAGA,EAAI21C,EAAY98C,OAAQmH,IAChC,GAAI21C,EAAY31C,KAAOjI,KAAK,GAAI,OAAO,CAE3C,QAAO,EAGV,GAAIgI,IAAa5G,SAAU,MAAOpB,MAAK,KAAOoB,QAC9C,IAAI4G,IAAajJ,OAAQ,MAAOiB,MAAK,KAAOjB,MAE7C,IAAIiJ,EAAS0yC,UAAY1yC,YAAoBpB,GAAM,CAE/C,IADAg3C,EAAc51C,EAAS0yC,UAAY1yC,GAAYA,EAC1CC,EAAI,EAAGA,EAAI21C,EAAY98C,OAAQmH,IAChC,GAAI21C,EAAY31C,KAAOjI,KAAK,GAAI,OAAO,CAE3C,QAAO,EAEX,OAAO,GAIfW,QAAS,SAAU6J,GACf,IAAK,GAAIvC,GAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAC7B,GAAIjI,KAAKiI,KAAOuC,EAAI,MAAOvC,IAGnCiJ,MAAO,WACH,GAAIlR,KAAK,GAAI,CAGT,IAFA,GAAIi+C,GAAQj+C,KAAK,GACbiI,EAAI,EACmC,QAAnCg2C,EAAQA,EAAMC,kBACK,IAAnBD,EAAMvD,UAAgBzyC,GAE9B,OAAOA,GAEN,MAAO5F,SAEhBuH,GAAI,SAAUsH,GACV,GAAqB,mBAAVA,GAAuB,MAAOlR,KACzC,IACIm+C,GADAr9C,EAASd,KAAKc,MAElB,OAAIoQ,GAAQpQ,EAAS,EACV,GAAI8F,OAEH,EAARsK,GACAitC,EAAcr9C,EAASoQ,EACK,GAAItK,GAAd,EAAdu3C,MACkBn+C,KAAKm+C,MAExB,GAAIv3C,IAAM5G,KAAKkR,MAE1BzE,OAAQ,SAAU2xC,GACd,GAAIn2C,GAAG8N,CACP,KAAK9N,EAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IACzB,GAAwB,gBAAbm2C,GAAuB,CAC9B,GAAIC,GAAUj9C,SAAS4c,cAAc,MAErC,KADAqgC,EAAQ19B,UAAYy9B,EACbC,EAAQC,YACXt+C,KAAKiI,GAAGovB,YAAYgnB,EAAQC,gBAG/B,IAAIF,YAAoBx3C,GACzB,IAAKmP,EAAI,EAAGA,EAAIqoC,EAASt9C,OAAQiV,IAC7B/V,KAAKiI,GAAGovB,YAAY+mB,EAASroC,QAIjC/V,MAAKiI,GAAGovB,YAAY+mB,EAG5B,OAAOp+C,OAEX62C,QAAS,SAAUuH,GACf,GAAIn2C,GAAG8N,CACP,KAAK9N,EAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IACzB,GAAwB,gBAAbm2C,GAAuB,CAC9B,GAAIC,GAAUj9C,SAAS4c,cAAc,MAErC,KADAqgC,EAAQ19B,UAAYy9B,EACfroC,EAAIsoC,EAAQ32B,WAAW5mB,OAAS,EAAGiV,GAAK,EAAGA,IAC5C/V,KAAKiI,GAAGqZ,aAAa+8B,EAAQ32B,WAAW3R,GAAI/V,KAAKiI,GAAGyf,WAAW,QAIlE,IAAI02B,YAAoBx3C,GACzB,IAAKmP,EAAI,EAAGA,EAAIqoC,EAASt9C,OAAQiV,IAC7B/V,KAAKiI,GAAGqZ,aAAa88B,EAASroC,GAAI/V,KAAKiI,GAAGyf,WAAW,QAIzD1nB,MAAKiI,GAAGqZ,aAAa88B,EAAUp+C,KAAKiI,GAAGyf,WAAW,GAG1D,OAAO1nB,OAEXshB,aAAc,SAAUtZ,GAEpB,IAAK,GADDu2C,GAASx+C,EAAEiI,GACNC,EAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAC7B,GAAsB,IAAlBs2C,EAAOz9C,OACPy9C,EAAO,GAAGC,WAAWl9B,aAAathB,KAAKiI,GAAIs2C,EAAO,QAEjD,IAAIA,EAAOz9C,OAAS,EACrB,IAAK,GAAIiV,GAAI,EAAGA,EAAIwoC,EAAOz9C,OAAQiV,IAC/BwoC,EAAOxoC,GAAGyoC,WAAWl9B,aAAathB,KAAKiI,GAAGw2C,WAAU,GAAOF,EAAOxoC,KAKlFwL,YAAa,SAAUvZ,GAEnB,IAAK,GADD02C,GAAQ3+C,EAAEiI,GACLC,EAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAC7B,GAAqB,IAAjBy2C,EAAM59C,OACN49C,EAAM,GAAGF,WAAWl9B,aAAathB,KAAKiI,GAAIy2C,EAAM,GAAGC,iBAElD,IAAID,EAAM59C,OAAS,EACpB,IAAK,GAAIiV,GAAI,EAAGA,EAAI2oC,EAAM59C,OAAQiV,IAC9B2oC,EAAM3oC,GAAGyoC,WAAWl9B,aAAathB,KAAKiI,GAAGw2C,WAAU,GAAOC,EAAM3oC,GAAG4oC,cAKnF1/B,KAAM,SAAUjX,GACZ,MAE6F,IAAIpB,GAF7F5G,KAAKc,OAAS,EACVkH,EACIhI,KAAK,GAAG4+C,oBAAsB7+C,EAAEC,KAAK,GAAG4+C,oBAAoBxyC,GAAGpE,IAA4BhI,KAAK,GAAG4+C,uBAInG5+C,KAAK,GAAG4+C,oBAAqC5+C,KAAK,GAAG4+C,4BAMrE3mC,QAAS,SAAUjQ,GACf,GAAI62C,MACAr0C,EAAKxK,KAAK,EACd,KAAKwK,EAAI,MAAO,IAAI5D,MACpB,MAAO4D,EAAGo0C,oBAAoB,CAC1B,GAAI3/B,GAAOzU,EAAGo0C,kBACV52C,GACGjI,EAAEkf,GAAM7S,GAAGpE,IAAW62C,EAAQ51C,KAAKgW,GAErC4/B,EAAQ51C,KAAKgW,GAClBzU,EAAKyU,EAET,MAAO,IAAIrY,GAAKi4C,IAEpBx9B,KAAM,SAAUrZ,GACZ,MAEqG,IAAIpB,GAFrG5G,KAAKc,OAAS,EACVkH,EACIhI,KAAK,GAAG8+C,wBAA0B/+C,EAAEC,KAAK,GAAG8+C,wBAAwB1yC,GAAGpE,IAA4BhI,KAAK,GAAG8+C,2BAI3G9+C,KAAK,GAAG8+C,wBAAyC9+C,KAAK,GAAG8+C,gCAMzE7N,QAAS,SAAUjpC,GACf,GAAI+2C,MACAv0C,EAAKxK,KAAK,EACd,KAAKwK,EAAI,MAAO,IAAI5D,MACpB,MAAO4D,EAAGs0C,wBAAwB,CAC9B,GAAIz9B,GAAO7W,EAAGs0C,sBACV92C,GACGjI,EAAEshB,GAAMjV,GAAGpE,IAAW+2C,EAAQ91C,KAAKoY,GAErC09B,EAAQ91C,KAAKoY,GAClB7W,EAAK6W,EAET,MAAO,IAAIza,GAAKm4C,IAEpBltC,OAAQ,SAAU7J,GAEd,IAAK,GADDmE,MACKlE,EAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IACzBD,EACIjI,EAAEC,KAAKiI,GAAGu2C,YAAYpyC,GAAGpE,IAAWmE,EAAQlD,KAAKjJ,KAAKiI,GAAGu2C,YAG7DryC,EAAQlD,KAAKjJ,KAAKiI,GAAGu2C,WAG7B,OAAOz+C,GAAEA,EAAEi/C,OAAO7yC,KAEtBA,QAAS,SAAUnE,GAEf,IAAK,GADDmE,MACKlE,EAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAE7B,IADA,GAAI4J,GAAS7R,KAAKiI,GAAGu2C,WACd3sC,GACC7J,EACIjI,EAAE8R,GAAQzF,GAAGpE,IAAWmE,EAAQlD,KAAK4I,GAGzC1F,EAAQlD,KAAK4I,GAEjBA,EAASA,EAAO2sC,UAGxB,OAAOz+C,GAAEA,EAAEi/C,OAAO7yC,KAEtB3L,KAAO,SAAUwH,GAEb,IAAK,GADDi3C,MACKh3C,EAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAE7B,IAAK,GADDgN,GAAQjV,KAAKiI,GAAGuyC,iBAAiBxyC,GAC5B+N,EAAI,EAAGA,EAAId,EAAMnU,OAAQiV,IAC9BkpC,EAAch2C,KAAKgM,EAAMc,GAGjC,OAAO,IAAInP,GAAKq4C,IAEpBztC,SAAU,SAAUxJ,GAEhB,IAAK,GADDwJ,MACKvJ,EAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IAG7B,IAAK,GAFDyf,GAAa1nB,KAAKiI,GAAGyf,WAEhB3R,EAAI,EAAGA,EAAI2R,EAAW5mB,OAAQiV,IAC9B/N,EAI8B,IAA3B0f,EAAW3R,GAAG2kC,UAAkB36C,EAAE2nB,EAAW3R,IAAI3J,GAAGpE,IAAWwJ,EAASvI,KAAKye,EAAW3R,IAH7D,IAA3B2R,EAAW3R,GAAG2kC,UAAgBlpC,EAASvI,KAAKye,EAAW3R,GAOvE,OAAO,IAAInP,GAAK7G,EAAEi/C,OAAOxtC,KAE7BtC,OAAQ,WACJ,IAAK,GAAIjH,GAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IACzBjI,KAAKiI,GAAGu2C,YAAYx+C,KAAKiI,GAAGu2C,WAAWU,YAAYl/C,KAAKiI,GAEhE,OAAOjI,OAEXoP,OAAQ,WACJ,MAAOpP,MAAKkP,UAEhB0Y,IAAK,WACD,GACI3f,GAAG8N,EADHinC,EAAMh9C,IAEV,KAAKiI,EAAI,EAAGA,EAAIic,UAAUpjB,OAAQmH,IAAK,CACnC,GAAIk3C,GAAQp/C,EAAEmkB,UAAUjc,GACxB,KAAK8N,EAAI,EAAGA,EAAIopC,EAAMr+C,OAAQiV,IAC1BinC,EAAIA,EAAIl8C,QAAUq+C,EAAMppC,GACxBinC,EAAIl8C,SAGZ,MAAOk8C,KAKf,WAGI,QAASoC,GAAanjC,GAClBrV,EAAK+zC,UAAU1+B,GAAQ,SAAUif,GAC7B,GAAIjzB,EACJ,IAAuB,mBAAZizB,GAAyB,CAChC,IAAKjzB,EAAI,EAAGA,EAAIjI,KAAKc,OAAQmH,IACrBo3C,EAAW1+C,QAAQsb,GAAQ,IACvBA,IAAQjc,MAAKiI,GAAIjI,KAAKiI,GAAGgU,KAEzBlc,EAAEC,KAAKiI,IAAIpH,QAAQob,GAI/B,OAAOjc,MAGP,MAAOA,MAAKqa,GAAG4B,EAAMif,IAIjC,IAAK,GArBDokB,GAAY,0LAA4L91C,MAAM,KAC9M61C,EAAa,gBAAkB71C,MAAM,KAoBhCvB,EAAI,EAAGA,EAAIq3C,EAAUx+C,OAAQmH,IAClCm3C,EAAaE,EAAUr3C,MAM/B,IAAIs3C,KACJx/C,GAAEy/C,UAAY,SAAU9vC,GAChBA,EAAQtE,OAAMsE,EAAQ4I,OAAS5I,EAAQtE,MAC3CrL,EAAEkO,KAAKyB,EAAS,SAAU+vC,EAAYC,GAClCH,EAAkBE,GAAeC,IAKzC,IAAIC,GAAiB,CA2frB,OA1fA5/C,GAAE6a,KAAO,SAAUlL,GA4Bf,QAASkwC,GAAkB3pC,EAAW/D,EAAW/S,GAC7C,GAAIqV,GAAI0P,SACJjO,IAAWlW,EAAEqB,UAAUP,QAAQoV,EAAW/D,GAC1C/S,IAEIA,IAAgBogD,IAAmBA,EAAkBpgD,GAAcqV,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,IAEvF9E,EAAQvQ,IAAeuQ,EAAQvQ,GAAcqV,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,KAlC7E,GAAItM,IACAoQ,OAAQ,MACRwH,MAAM,EACN+/B,OAAO,EACPp+C,OAAO,EACPq+C,KAAM,GACNt7B,SAAU,GACVu7B,WACAC,aACAC,cACAC,aAAa,EACbC,SAAU,OACV3d,YAAa,oCACb4d,QAAS,GAET5kC,GAAa,aAAc,QAAS,WAAY,UAAW,aAI3D9L,GAAQtE,OAAMsE,EAAQ4I,OAAS5I,EAAQtE,MAG3CrL,EAAEkO,KAAKsxC,EAAmB,SAAUc,EAAkBC,GAC9C9kC,EAAU7a,QAAQ0/C,GAAoB,IAAGn4C,EAASm4C,GAAoBC,KAgB9EvgD,EAAEkO,KAAK/F,EAAU,SAAUo0B,EAAMikB,GACvBjkB,IAAQ5sB,KAAUA,EAAQ4sB,GAAQikB,KAIvC7wC,EAAQ5F,MACT4F,EAAQ5F,IAAM/K,OAAOqK,SAASsS,WAGlC,IAAI8kC,GAAe9wC,EAAQ5F,IAAInJ,QAAQ,MAAQ,EAAI,IAAM,IAGrD8/C,EAAU/wC,EAAQ4I,OAAO/Y,aAE7B,KAAiB,QAAZkhD,GAAiC,SAAZA,IAAuB/wC,EAAQoQ,KAAM,CAC3D,GAAI4gC,EAGoCA,GAFZ,gBAAjBhxC,GAAQoQ,KAEXpQ,EAAQoQ,KAAKnf,QAAQ,MAAQ,EAAgB+O,EAAQoQ,KAAKtW,MAAM,KAAK,GACvDkG,EAAQoQ,KAIb/f,EAAE2iC,gBAAgBhzB,EAAQoQ,MAE3CpQ,EAAQ5F,KAAO02C,EAAeE,EAGlC,GAAyB,SAArBhxC,EAAQywC,UAAuBzwC,EAAQ5F,IAAInJ,QAAQ,cAAgB,EAAG,CAEtE,GACIggD,GADAxhD,EAAe,WAAasM,KAAK2/B,MAASuU,IAE1CiB,EAAgBlxC,EAAQ5F,IAAIN,MAAM,aAClCq3C,EAAaD,EAAc,GAAK,YAAczhD,CAClD,IAAIyhD,EAAc,GAAGjgD,QAAQ,MAAQ,EAAG,CACpC,GAAImgD,GAAUF,EAAc,GAAGp3C,MAAM,KAAKu3C,OAAO,SAAUv2C,GAAM,MAAOA,GAAG7J,QAAQ,KAAO,IAAMkX,KAAK,IACjGipC,GAAQhgD,OAAS,IAAG+/C,GAAc,IAAMC,GAIhD,GAAIE,GAAS5/C,SAAS4c,cAAc,SA0BpC,OAzBAgjC,GAAO51C,KAAO,kBACd41C,EAAOh3B,QAAU,WACblQ,aAAa6mC,GACbf,EAAiBv9C,OAAWA,OAAW,QAAS,KAAM,gBAE1D2+C,EAAOt3B,IAAMm3B,EAGb9hD,OAAOI,GAAgB,SAAU2gB,GAC7BhG,aAAa6mC,GACbf,EAAiBv9C,OAAWA,OAAW,UAAWyd,GAClDkhC,EAAOxC,WAAWU,YAAY8B,GAC9BA,EAAS,WACFjiD,QAAOI,IAElBiC,SAAS6/C,cAAc,QAAQ5pB,YAAY2pB,QAEvCtxC,EAAQ0wC,QAAU,IAClBO,EAAep/C,WAAW,WACtBy/C,EAAOxC,WAAWU,YAAY8B,GAC9BA,EAAS,KACTpB,EAAiBv9C,OAAWA,OAAW,QAAS,KAAM,YACvDqN,EAAQ0wC,YAOH,QAAZK,GAAiC,SAAZA,IACjB/wC,EAAQjO,SAAU,IAClBiO,EAAQ5F,KAAQ02C,EAAe,YAAc/0C,KAAK2/B,MAK1D,IAAI5wB,GAAM,GAAI0mC,eAGd1mC,GAAIqmC,WAAanxC,EAAQ5F,IAGzB0Q,EAAI+lB,KAAKkgB,EAAS/wC,EAAQ5F,IAAK4F,EAAQmwC,MAAOnwC,EAAQowC,KAAMpwC,EAAQ8U,SAGpE,IAAI28B,GAAW,IAEf,KAAiB,SAAZV,GAAkC,QAAZA,IAAsB/wC,EAAQoQ,KACrD,GAAIpQ,EAAQwwC,YAAa,CACrB,GAAIkB,IAAqBC,YAAaC,KAAMC,SAAU9e,SAEtD,IAAI2e,EAAkBzgD,QAAQ+O,EAAQoQ,KAAK0hC,cAAgB,EACvDL,EAAWzxC,EAAQoQ,SAElB,CAED,GAAI2hC,GAAW,8BAAgCh2C,KAAK2/B,MAAM1vB,SAAS,GAEvC,yBAAxBhM,EAAQ8yB,YACRhoB,EAAIknC,iBAAiB,eAAgB,iCAAoCD,GAGzEjnC,EAAIknC,iBAAiB,eAAgBhyC,EAAQ8yB,aAEjD2e,EAAW,EACX,IAAIQ,GAAQ5hD,EAAE2iC,gBAAgBhzB,EAAQoQ,KACtC,IAA4B,wBAAxBpQ,EAAQ8yB,YAAwC,CAChDif,EAAW,8BAAgCh2C,KAAK2/B,MAAM1vB,SAAS,IAC/DimC,EAAQA,EAAMn4C,MAAM,IAEpB,KAAK,GADDo4C,MACK35C,EAAI,EAAGA,EAAI05C,EAAM7gD,OAAQmH,IAC9B25C,EAAS34C,KAAK,yCAA2C04C,EAAM15C,GAAGuB,MAAM,KAAK,GAAK,YAAcm4C,EAAM15C,GAAGuB,MAAM,KAAK,GAAK,OAE7H23C,GAAW,KAAOM,EAAW,OAASG,EAAS/pC,KAAK,KAAO4pC,EAAW,QAAU,KAAOA,EAAW,aAGlGN,GAAmC,sCAAxBzxC,EAAQ8yB,YAAsDmf,EAAQA,EAAMtiD,QAAQ,KAAM,aAK7G8hD,GAAWzxC,EAAQoQ,IAMvBpQ,GAAQqwC,SACRhgD,EAAEkO,KAAKyB,EAAQqwC,QAAS,SAAU8B,EAAYC,GAC1CtnC,EAAIknC,iBAAiBG,EAAYC,KAKN,mBAAxBpyC,GAAQqyC,cACfryC,EAAQqyC,YAAc,0BAA0BpuB,KAAKjkB,EAAQ5F,MAAQk4C,OAAOC,KAAOljD,OAAOqK,SAAS84C,MAGlGxyC,EAAQqyC,aACTvnC,EAAIknC,iBAAiB,mBAAoB,kBAGzChyC,EAAQswC,WACRjgD,EAAEkO,KAAKyB,EAAQswC,UAAW,SAAUmC,EAAWC,GAC3C5nC,EAAI2nC,GAAaC,GAIzB,IAAIC,EAoDJ,OAlDA7nC,GAAIuP,OAAS,SAAU9e,GAEnB,GADIo3C,GAAYvoC,aAAauoC,GACxB7nC,EAAIQ,QAAU,KAAOR,EAAIQ,OAAS,KAAuB,IAAfR,EAAIQ,OAAc,CAC7D,GAAIsnC,EACJ,IAAyB,SAArB5yC,EAAQywC,SACR,IACImC,EAAethB,KAAKC,MAAMzmB,EAAIS,cAC9B2kC,EAAiB,eAAgBplC,IAAKA,GAAM,UAAW8nC,EAAc9nC,EAAIQ,OAAQR,GAErF,MAAO+nC,GACH3C,EAAiB,aAAcplC,IAAKA,EAAKgoC,YAAY,GAAO,QAAShoC,EAAK,kBAI9EolC,GAAiB,eAAgBplC,IAAKA,GAAM,UAAWA,EAAIS,aAAcT,EAAIQ,OAAQR,OAIzFolC,GAAiB,aAAcplC,IAAKA,GAAM,QAASA,EAAKA,EAAIQ,OAE5DtL,GAAQuwC,aACJV,EAAkBU,YAAcV,EAAkBU,WAAWzlC,EAAIQ,SAASukC,EAAkBU,WAAWzlC,EAAIQ,QAAQR,GACnH9K,EAAQuwC,WAAWzlC,EAAIQ,SAAStL,EAAQuwC,WAAWzlC,EAAIQ,QAAQR,IAEvEolC,EAAiB,gBAAiBplC,IAAKA,GAAM,WAAYA,EAAKA,EAAIQ,SAGtER,EAAIwP,QAAU,SAAU/e,GAChBo3C,GAAYvoC,aAAauoC,GAC7BzC,EAAiB,aAAcplC,IAAKA,GAAM,QAASA,EAAKA,EAAIQ,SAIhE4kC,EAAiB,aAAcplC,IAAKA,GAAM,QAASA,GACnDolC,EAAiBv9C,OAAWA,OAAW,aAAcmY,GAIrDA,EAAIioC,KAAKtB,GAGLzxC,EAAQ0wC,QAAU,IAClBiC,EAAa9gD,WAAW,WACpBiZ,EAAImH,QACJi+B,EAAiB,aAAcplC,IAAKA,EAAK4lC,SAAS,GAAO,QAAS5lC,EAAK,WACvEolC,EAAiB,gBAAiBplC,IAAKA,EAAK4lC,SAAS,GAAO,WAAY5lC,EAAK,YAC9E9K,EAAQ0wC,UAIR5lC,GAGX,WAEI,QAAS4kC,GAAa9mC,GAClBvY,EAAEuY,GAAU,SAAUxO,EAAKgW,EAAM6iB,GAC7B,MAAO5iC,GAAE6a,MACL9Q,IAAKA,EACLwO,OAAmB,SAAXA,EAAoB,OAAS,MACrCwH,KAAsB,kBAATA,GAAsBzd,OAAYyd,EAC/C6iB,QAAyB,kBAAT7iB,GAAsBA,EAAO6iB,EAC7Cwd,SAAqB,YAAX7nC,EAAuB,OAASjW,UAItD,IAAK,GAZDqgD,GAAU,mBAAqBl5C,MAAM,KAYhCvB,EAAI,EAAGA,EAAIy6C,EAAQ5hD,OAAQmH,IAChCm3C,EAAasD,EAAQz6C,OAM7BlI,EAAEic,cAAgB,SAAUlS,GACxB,GAAgB7B,GAAGhJ,EAAQ0H,EAAvBqQ,IACJ,MAAIlN,EAAInJ,QAAQ,MAAQ,GACnB,MAAOqW,EAEZ,KAH2BlN,EAAMA,EAAIN,MAAM,KAAK,GAEhDvK,EAAS6K,EAAIN,MAAM,KACdvB,EAAI,EAAGA,EAAIhJ,EAAO6B,OAAQmH,IAC3BtB,EAAQ1H,EAAOgJ,GAAGuB,MAAM,KACxBwN,EAAMrQ,EAAM,IAAMA,EAAM,EAE5B,OAAOqQ,IAEXjX,EAAEmlB,QAAU,SAAUi1B,GAClB,MAA6C,mBAAzCwI,OAAOhI,UAAUj/B,SAASknC,MAAMzI,IAAkC,GAC1D,GAEhBp6C,EAAEkO,KAAO,SAAU40C,EAAKnjD,GACpB,GAAmB,gBAARmjD,IACNnjD,EAAL,CACA,GAAIuI,GAAGq0B,CACP,IAAIv8B,EAAEmlB,QAAQ29B,IAAQA,YAAej8C,GAEjC,IAAKqB,EAAI,EAAGA,EAAI46C,EAAI/hD,OAAQmH,IACxBvI,EAASuI,EAAG46C,EAAI56C,QAKpB,KAAKq0B,IAAQumB,GACLA,EAAI/c,eAAexJ,IACnB58B,EAAS48B,EAAMumB,EAAIvmB,MAKnCv8B,EAAEi/C,OAAS,SAAU7E,GAEjB,IAAK,GADD6E,MACK/2C,EAAI,EAAGA,EAAIkyC,EAAIr5C,OAAQmH,IACG,KAA3B+2C,EAAOr+C,QAAQw5C,EAAIlyC,KAAY+2C,EAAO/1C,KAAKkxC,EAAIlyC,GAEvD,OAAO+2C,IAEXj/C,EAAE2iC,gBAAkB,SAAUmgB,GAC1B,GAAmB,gBAARA,GAAkB,MAAOA,EACpC,IAAIC,MACAC,EAAY,GAChB,KAAK,GAAIzmB,KAAQumB,GACb,GAAIA,EAAI/c,eAAexJ,GACnB,GAAIv8B,EAAEmlB,QAAQ29B,EAAIvmB,IAAQ,CAEtB,IAAK,GADD0mB,MACK/6C,EAAI,EAAGA,EAAI46C,EAAIvmB,GAAMx7B,OAAQmH,IAClC+6C,EAAO/5C,KAAKg6C,mBAAmB3mB,GAAQ,IAAM2mB,mBAAmBJ,EAAIvmB,GAAMr0B,IAE1E+6C,GAAOliD,OAAS,GAAGgiD,EAAY75C,KAAK+5C,EAAOnrC,KAAKkrC,QAIpDD,GAAY75C,KAAKg6C,mBAAmB3mB,GAAQ,IAAM2mB,mBAAmBJ,EAAIvmB,IAMrF,OAAOwmB,GAAYjrC,KAAKkrC,IAE5BhjD,EAAEy7C,YAAc,SAAU0H,GACtB,MAAOA,GAAOzrC,cAAcpY,QAAQ,QAAS,SAASC,EAAO6jD,GACzD,MAAOA,GAAO5jD,iBAGtBQ,EAAE4Y,QAAU,SAAUnO,GAClB,MAAOzK,GAAEyK,GAAImO,WAEjB5Y,EAAEirC,aAAe,SAAUxgC,EAAI44C,GAC3B,GAAIC,GAAQC,EAAcC,EAAUC,CAyCpC,OAtCoB,mBAATJ,KACPA,EAAO,KAGXG,EAAWxkD,OAAO4+C,iBAAiBnzC,EAAI,MACnCzL,OAAO0kD,gBAGPD,EAAkB,GAAIC,iBAA6C,SAA7BF,EAAS5H,gBAA6B,GAAK4H,EAAS5H,kBAG1F6H,EAAkBD,EAASzH,cAAgByH,EAASxH,YAAcwH,EAAS3H,aAAe2H,EAAS1H,aAAgB0H,EAASl2C,WAAak2C,EAASjG,iBAAiB,aAAaj+C,QAAQ,aAAc,sBACtMgkD,EAASG,EAAgB9nC,WAAWlS,MAAM,MAGjC,MAAT45C,IAGIE,EADAvkD,OAAO0kD,gBACQD,EAAgBE,IAGhBjI,WADQ,KAAlB4H,EAAOviD,OACcuiD,EAAO,IAGPA,EAAO,KAE5B,MAATD,IAGIE,EADAvkD,OAAO0kD,gBACQD,EAAgBG,IAGhBlI,WADQ,KAAlB4H,EAAOviD,OACcuiD,EAAO,IAGPA,EAAO,KAGlCC,GAAgB,GAG3BvjD,EAAEmvC,sBAAwB,SAAUxvC,GAChC,MAAIX,QAAOmwC,sBAA8BnwC,OAAOmwC,sBAAsBxvC,GAC7DX,OAAO6kD,4BAAoC7kD,OAAO6kD,4BAA4BlkD,GAC9EX,OAAO8kD,yBAAiC9kD,OAAO8kD,yBAAyBnkD,GAEtEX,OAAOwC,WAAW7B,EAAU,IAAO,KAGlDK,EAAEyvC,qBAAuB,SAAUrc,GAC/B,MAAIp0B,QAAOywC,qBAA6BzwC,OAAOywC,qBAAqBrc,GAC3Dp0B,OAAO+kD,2BAAmC/kD,OAAO+kD,2BAA2B3wB,GAC5Ep0B,OAAOglD,wBAAgChlD,OAAOglD,wBAAwB5wB,GAEpEp0B,OAAO+a,aAAaqZ,IAGnCpzB,EAAEikD,gBAAmB,gBAAkBjlD,SAAWA,OAAOklD,eAAiB7iD,mBAAoB6iD,gBAG9FlkD,EAAEmkD,GAAKt9C,EAAK+zC,UAGZ56C,EAAEmkD,GAAGC,SAAW,SAAU53C,EAAM+Z,EAAK8F,EAAUg4B,EAAQ1kD,GAKnD,MAJyB,KAArBwkB,UAAUpjB,QAAkC,kBAAXsjD,KACjC1kD,EAAW0kD,EACXA,EAAS/hD,QAENrC,KAAKiO,KAAK,WAgCb,QAASwoB,GAAO9b,GACCtY,SAATsY,IACAA,GAAO,GAAIlP,OAAOC,WAEJ,OAAd24C,IACAA,EAAY1pC,EAEhB,IAAuB8e,GACnBhM,EAAW7hB,KAAK2b,IAAI3b,KAAK4b,KAAK7M,EAAO0pC,GAAaj4B,EAAU,GAAI,GAChEk4B,EAA0B,WAAXF,EAAsB32B,EAAY,GAAM7hB,KAAK24C,IAAK92B,EAAW7hB,KAAK44C,IAAO,CAqB5F,OApBIC,KAAYxkD,EAAYykD,EAAcJ,GAAgBK,EAASD,IAC/DE,IAAatjD,EAAaujD,EAAeP,GAAgBQ,EAAUD,IACnEJ,GAAcE,EAASD,GAAczkD,GAAa0kD,IAClDn6C,EAAGvK,UAAY0kD,EACflrB,GAAO,GAEPgrB,GAAuBC,EAATC,GAAoCA,GAAb1kD,IACrCuK,EAAGvK,UAAY0kD,EACflrB,GAAO,GAGPmrB,GAAeE,EAAUD,GAAevjD,GAAcwjD,IACtDt6C,EAAGlJ,WAAawjD,EAChBrrB,GAAO,GAEPmrB,GAAyBC,EAAVC,GAAuCA,GAAdxjD,IACxCkJ,EAAGlJ,WAAawjD,EAChBrrB,GAAO,GAGPA,OACI/5B,GAAUA,MAGd+kD,IAAYj6C,EAAGvK,UAAYA,GAC3B2kD,IAAap6C,EAAGlJ,WAAaA,OACjCvB,GAAEmvC,sBAAsBzY,IAnE5B,GACIiuB,GAAYG,EAAal1B,EAAQo1B,EAASJ,EAAQG,EAAS7kD,EAAWqB,EADtEkJ,EAAKxK,KAELykD,EAAan+B,EAAM,GAAa,IAARA,EACxBs+B,EAAcr4C,EAAO,GAAc,IAATA,CAgB9B,IAfsB,mBAAX63C,KACPA,EAAS,SAETK,IACAC,EAAal6C,EAAGvK,UACXmsB,IACD5hB,EAAGvK,UAAYqmB,IAGnBs+B,IACAC,EAAcr6C,EAAGlJ,WACZ8qB,IACD5hB,EAAGlJ,WAAaiL,IAGnB6f,EAAL,CACIq4B,IACA90B,EAASnlB,EAAGtK,aAAesK,EAAGpK,aAC9BukD,EAAS/4C,KAAK2b,IAAI3b,KAAK4b,IAAIlB,EAAKqJ,GAAS,IAEzCi1B,IACAG,EAAUv6C,EAAGw6C,YAAcx6C,EAAGqJ,YAC9BixC,EAAUl5C,KAAK2b,IAAI3b,KAAK4b,IAAIjb,EAAMw4C,GAAU,GAEhD,IAAIV,GAAY,IACZI,IAAcE,IAAWD,IAAYD,GAAa,GAClDG,GAAeE,IAAYD,IAAaD,GAAc,GAuC1D7kD,EAAEmvC,sBAAsBzY,OAGhC12B,EAAEmkD,GAAGjkD,UAAY,SAAUqmB,EAAK8F,EAAUg4B,EAAQ1kD,GACrB,IAArBwkB,UAAUpjB,QAAkC,kBAAXsjD,KACjC1kD,EAAW0kD,EACXA,EAAS/hD,OAEb,IAAI26C,GAAMh9C,IACV,OAAmB,mBAARsmB,GACH02B,EAAIl8C,OAAS,EAAUk8C,EAAI,GAAG/8C,UACtB,KAET+8C,EAAImH,SAAS9hD,OAAWikB,EAAK8F,EAAUg4B,EAAQ1kD,IAE1DK,EAAEmkD,GAAG5iD,WAAa,SAAUiL,EAAM6f,EAAUg4B,EAAQ1kD,GACvB,IAArBwkB,UAAUpjB,QAAkC,kBAAXsjD,KACjC1kD,EAAW0kD,EACXA,EAAS/hD,OAEb,IAAI26C,GAAMh9C,IACV,OAAoB,mBAATuM,GACHywC,EAAIl8C,OAAS,EAAUk8C,EAAI,GAAG17C,WACtB,KAET07C,EAAImH,SAAS53C,EAAMlK,OAAW+pB,EAAUg4B,EAAQ1kD,IAGpDK,IAIXf,YAAWe,EAAI6G,CAMf7H,QAAO6H,KAAOA,EAMd5H,WAAW27C,UAAUzzC,QAAU,WAC3B,GAAIA,IACAC,SAAW,gBAAkBpI,SAAWA,OAAOklD,eAAiB7iD,mBAAoB6iD,gBAIxF,OAAO/8C,MAOXlI,WAAW27C,UAAUz5C,OAAS,WAC1B,GAAIA,MACA+jD,EAAK9W,UAAUC,UACfruC,EAAI6G,EAEJ4F,EAAUy4C,EAAG3lD,MAAM,+BACnB6B,EAAO8jD,EAAG3lD,MAAM,wBAChB4lD,EAAOD,EAAG3lD,MAAM,2BAChB6lD,GAAUhkD,GAAQ8jD,EAAG3lD,MAAM,yBAuC/B,IArCA4B,EAAOkV,IAAMlV,EAAOsL,QAAUtL,EAAOikD,OAASjkD,EAAOC,KAAOD,EAAO6+B,eAAgB,EAG/EvzB,IACAtL,EAAOg4B,GAAK,UACZh4B,EAAOg0B,UAAY1oB,EAAQ,GAC3BtL,EAAOsL,SAAU,EACjBtL,EAAO6+B,cAAgBklB,EAAGxtC,cAAc9W,QAAQ,WAAa,IAE7DQ,GAAQgkD,GAAUD,KAClBhkD,EAAOg4B,GAAK,MACZh4B,EAAOkV,KAAM,GAGb+uC,IAAWD,IACXhkD,EAAOg0B,UAAYiwB,EAAO,GAAG9lD,QAAQ,KAAM,KAC3C6B,EAAOikD,QAAS,GAEhBhkD,IACAD,EAAOg0B,UAAY/zB,EAAK,GAAG9B,QAAQ,KAAM,KACzC6B,EAAOC,MAAO,GAEd+jD,IACAhkD,EAAOg0B,UAAYgwB,EAAK,GAAKA,EAAK,GAAG7lD,QAAQ,KAAM,KAAO,KAC1D6B,EAAOikD,QAAS,GAGhBjkD,EAAOkV,KAAOlV,EAAOg0B,WAAa+vB,EAAGtkD,QAAQ,aAAe,GACrB,OAAnCO,EAAOg0B,UAAU1rB,MAAM,KAAK,KAC5BtI,EAAOg0B,UAAY+vB,EAAGxtC,cAAcjO,MAAM,YAAY,GAAGA,MAAM,KAAK,IAK5EtI,EAAO8+B,SAAWmlB,GAAUhkD,GAAQ+jD,IAASD,EAAG3lD,MAAM,8BAGlD4B,EAAOg4B,IAAoB,QAAdh4B,EAAOg4B,GAAc,CAClC,GAAIksB,GAAelkD,EAAOg0B,UAAU1rB,MAAM,IAC1CtI,GAAOogC,WAAapgC,EAAO8+B,UACNklB,GAAQC,KACU,EAAlBC,EAAa,KAAW,EAAsB,EAAlBA,EAAa,IAAU,EAAsB,EAAlBA,EAAa,GAAS,IAC9ErlD,EAAE,yBAAyBe,OAAS,GAAKf,EAAE,yBAAyB2H,KAAK,WAAW/G,QAAQ,eAAiB,EAIrI,GAAIwmB,GAAcpnB,EAAEhB,QAAQkN,QACxBib,EAAennB,EAAEhB,QAAQoB,QAC7Be,GAAOmkD,WAAY,EAEfnkD,EAAOmkD,UADPnkD,EAAO8+B,SAAY7Y,EAAcD,IAAiBo+B,OAAOr5C,MAAQq5C,OAAOnlD,QACrD,GAGA,CAIvB,IAAIolD,KAUJ,IAPArkD,EAAOiM,WAAapO,OAAOymD,kBAAoB,EAC/CD,EAAWt8C,KAAK,eAAiB2C,KAAKu/B,MAAMjqC,EAAOiM,aAC/CjM,EAAOiM,YAAc,GACrBo4C,EAAWt8C,KAAK,UAIhB/H,EAAOg4B,KACPqsB,EAAWt8C,KAAK/H,EAAOg4B,GAAIh4B,EAAOg4B,GAAK,IAAMh4B,EAAOg0B,UAAU1rB,MAAM,KAAK,GAAItI,EAAOg4B,GAAK,IAAMh4B,EAAOg0B,UAAU71B,QAAQ,MAAO,MAC7G,QAAd6B,EAAOg4B,IAEP,IAAK,GADDusB,GAAQ7kD,SAASM,EAAOg0B,UAAU1rB,MAAM,KAAK,GAAI,IAC5CvB,EAAIw9C,EAAQ,EAAGx9C,GAAK,EAAGA,IAC5Bs9C,EAAWt8C,KAAK,UAAYhB,EAiBxC,OAXI/G,GAAOmkD,UACPE,EAAWt8C,KAAK,0BAGhBlJ,EAAE,QAAQ8H,YAAY,0BAItB09C,EAAWzkD,OAAS,GAAGf,EAAE,QAAQ6H,SAAS29C,EAAW1tC,KAAK,MAGvD3W,KAOXlC,WAAW27C,UAAUjB,WAMrB36C,OAAO+H,UAAY,WACf,QAASoe,GAAQi1B,GACb,MAAgD,mBAAzCwI,OAAOhI,UAAUj/B,SAASknC,MAAMzI,GAK3C,QAASuL,GAAWC,GAChB,MAAuB,kBAATA,GAGlB,QAASC,GAAe1C,GACpB,GAEI2C,GAAY59C,EAAG8N,EAFf+vC,EAAc5C,EAAO7jD,QAAQ,UAAW,IAAImK,MAAM,KAClDu8C,IAEJ,KAAK99C,EAAI,EAAGA,EAAI69C,EAAYhlD,OAAQmH,IAAK,CACrC,GAAI+9C,GAAOF,EAAY79C,EACvB,IAAU,IAANA,EAAS89C,EAAO98C,KAAK+8C,OAErB,IAA0B,IAAtBA,EAAKrlD,QAAQ,KAEb,GAAgC,IAA5BqlD,EAAK1mD,MAAM,MAAMwB,OAEjBilD,EAAO98C,KAAK+8C,OAEX,CAGD,IADAH,EAAa,EACR9vC,EAAI9N,EAAI,EAAG8N,EAAI+vC,EAAYhlD,OAAQiV,IAEpC,GADAiwC,GAAQ,IAAMF,EAAY/vC,GACtB+vC,EAAY/vC,GAAGpV,QAAQ,MAAQ,EAAG,CAClCklD,EAAa9vC,EACbgwC,EAAO98C,KAAK+8C,EACZ,OAGJH,IAAY59C,EAAI49C,OAIxB,IAAIG,EAAKrlD,QAAQ,KAAO,EAAG,CAEvB,GAAIslD,GAAYD,EAAKx8C,MAAM,KACvB08C,EAAWD,EAAU,GACrBE,EAAcF,EAAU,EAC5B,IAAuC,IAAnCE,EAAY7mD,MAAM,MAAMwB,OAAc,CAEtC,IADA+kD,EAAa,EACR9vC,EAAI9N,EAAI,EAAG8N,EAAI+vC,EAAYhlD,OAAQiV,IAEpC,GADAowC,GAAe,IAAML,EAAY/vC,GAC7B+vC,EAAY/vC,GAAGpV,QAAQ,MAAQ,EAAG,CAClCklD,EAAa9vC,CACb,OAGJ8vC,IAAY59C,EAAI49C,GAExB,GAAIO,IAAQF,EAAUC,EAAY9mD,QAAQ,KAAK,IAC/C0mD,GAAO98C,KAAKm9C,OAIZL,GAAO98C,KAAK+8C,GAK5B,MAAOD,GAEX,QAASM,GAAenD,GACpB,GAAiBj7C,GAAG8N,EAAhBuwC,IACJ,KAAKpD,EAAQ,QACb,IAAIqD,GAAUrD,EAAO15C,MAAM,gBAC3B,KAAKvB,EAAI,EAAGA,EAAIs+C,EAAQzlD,OAAQmH,IAAK,CACjC,GAAIu+C,GAAQD,EAAQt+C,EACpB,IAAc,KAAVu+C,EACJ,GAAIA,EAAM7lD,QAAQ,MAAQ,EACtB2lD,EAAOr9C,MACHmC,KAAM,QACNyE,QAAS22C,QAGZ,CACD,GAAIA,EAAM7lD,QAAQ,OAAS,EACvB,QAEJ,IAAI6lD,EAAM7lD,QAAQ,MAAQ,GAAK6lD,EAAM7lD,QAAQ,KAAO,GAAK6lD,EAAM7lD,QAAQ,QAAU,EAAG,CAEhF2lD,EAAOr9C,MACHmC,KAAM,WACNoU,YAAagnC,EAAMnnD,QAAQ,QAAS,KAExC,UAGJ,GAAIonD,GAAeb,EAAeY,GAC9BE,EAAaD,EAAa,GAC1BE,KACAC,IACJ,KAAK7wC,EAAI,EAAGA,EAAI0wC,EAAa3lD,OAAQiV,IAAK,CACtC,GAAIqL,GAAQqlC,EAAa1wC,EACrBmP,GAAQ9D,GAERwlC,EAAWxlC,EAAM,IAAmB,UAAbA,EAAM,IAAiB,EAAQA,EAAM,GAG5DulC,EAAc19C,KAAKmY,GAI3B,GAAIolC,EAAM7lD,QAAQ,OAAS,EAAG,CAE1B,GAIIklD,GAHAgB,EAAgB,GAChBC,EAAc,GACdC,EAAS,EAETC,GAAc,EAAOC,GAAY,EAAgCC,EAAQ,CAC7E,KAAKnxC,EAAI9N,EAAI,EAAG8N,EAAIwwC,EAAQzlD,OAAQiV,IAOhC,GANIwwC,EAAQxwC,GAAGpV,QAAQ,QAAU,GAC7BumD,IAEAX,EAAQxwC,GAAGpV,QAAQ,QAAU,GAC7BumD,IAEAX,EAAQxwC,GAAGpV,QAAQ,MAAQ+lD,IAAe,EAC1CG,GAAiBN,EAAQxwC,GACrBkxC,IAAWH,GAAeP,EAAQxwC,IACtCgxC,QAEC,IAAIR,EAAQxwC,GAAGpV,QAAQ,MAAQ+lD,IAAe,EAAG,CAClD,KAAIK,EAAS,GAKR,CACDlB,EAAa9vC,EACbixC,GAAc,CACd,OAPAD,IACAF,GAAiBN,EAAQxwC,GACrBkxC,IAAWH,GAAeP,EAAQxwC,QAQrCwwC,GAAQxwC,GAAGpV,QAAQ,SAAW,GAAe,IAAVumD,EACxCD,GAAY,GAGPA,IAAWJ,GAAiBN,EAAQxwC,IACrCkxC,IAAWH,GAAeP,EAAQxwC,IAI1CixC,KACInB,IAAY59C,EAAI49C,GACpBS,EAAOr9C,MACHmC,KAAM,SACNs7C,WAAYA,EACZlnC,YAAamnC,EACb92C,QAASg3C,EACTM,eAAgBL,EAChBV,KAAMQ,SAITJ,GAAM7lD,QAAQ,KAAO,GAC1B2lD,EAAOr9C,MACHmC,KAAM,SACNs7C,WAAYA,EACZlnC,YAAamnC,EACbP,KAAMQ,KAKtB,MAAON,GAlKX,GAoKIx/C,GAAY,SAAU2Y,GAItB,QAAS2nC,GAAaZ,EAAOU,GACzB,MAAIV,GAAM32C,QAAgB8P,EAAQ6mC,EAAM32C,QAASq3C,GACrC,WAAa,MAAO,IAEpC,QAASG,GAAkBb,EAAOU,GAC9B,MAAIV,GAAMW,eAAuBxnC,EAAQ6mC,EAAMW,eAAgBD,GACnD,WAAa,MAAO,IAEpC,QAASI,GAAcrrC,EAAMsrC,GACzB,GAAIC,GAAUC,EAAOC,EAAW,CAChC,IAA4B,IAAxBzrC,EAAKtb,QAAQ,OAAc,CAC3B+mD,EAAWzrC,EAAKzS,MAAM,OAAO1I,OAAS,CACtC,IAAI6mD,GAAWJ,EAAI/9C,MAAM,KAAK,GAAKk+C,CACnCH,GAAM,QAAUI,GAAY,EAAIA,EAAW,GAC3CF,EAAQxrC,EAAKzS,MAAM,OAAOk+C,GAAUl+C,MAAM,SAET,KAA5ByS,EAAKtb,QAAQ,YAClB4mD,EAAM,mBACNE,EAAQxrC,EAAKzS,MAAM,YAAY,GAAGA,MAAM,MAET,IAA1ByS,EAAKtb,QAAQ,UAClB4mD,EAAM,QACNE,EAAQxrC,EAAKzS,MAAM,UAAU,GAAGA,MAAM,MAGtCi+C,EAAQxrC,EAAKzS,MAAM,IAEvBg+C,GAAWD,CACX,KAAK,GAAIt/C,GAAI,EAAGA,EAAIw/C,EAAM3mD,OAAQmH,IAAK,CACnC,GAAI+9C,GAAOyB,EAAMx/C,EACS,KAAtB+9C,EAAKrlD,QAAQ,KACTsH,EAAI,EACJu/C,GAAY,kBAAoBxB,EAAK3mD,QAAQ,IAAK,IAAM,KAGxDmoD,EAAW,iBAAmBvrC,EAAK5c,QAAQ,IAAK,IAAM,IAItDuoD,SAAS5B,GACTwB,GAAY,IAAMxB,EAAO,IAGI,IAAzBA,EAAKrlD,QAAQ,QACb6mD,EAAWxB,EAAK3mD,QAAQ,OAAQkoD,GAGhCC,GAAY,IAAMxB,EAMlC,MAAOwB,GAEX,QAASK,GAAqBC,EAAcP,GAExC,IAAK,GADDpN,MACKlyC,EAAI,EAAGA,EAAI6/C,EAAahnD,OAAQmH,IACGkyC,EAAIlxC,KAAP,IAAjC6+C,EAAa7/C,GAAGtH,QAAQ,KAAqBmnD,EAAa7/C,GAEjDq/C,EAAcQ,EAAa7/C,GAAIs/C,GAGhD,OAAOpN,GAAItiC,KAAK,MAEpB,QAAS8H,GAAQF,EAAUynC,GAGvB,GAFAA,EAAQA,GAAS,EACjBznC,EAAWA,GAAYsoC,EAAEtoC,SACD,gBAAbA,GACP,KAAM,IAAIuoC,OAAM,uCAEpB,IAAI1B,GAASD,EAAe5mC,EAC5B,IAAsB,IAAlB6mC,EAAOxlD,OACP,MAAO,YAAc,MAAO,GAEhC,IAAIymD,GAAM,OAASL,EACfe,EAAe,cAAgBV,EAAM,aAC3B,KAAVL,IACAe,GAAgB,6FAChBA,GAAgB,oEAChBA,GAAgB,4IAEpBA,GAAgB,eAChB,IAAIhgD,EACJ,KAAKA,EAAI,EAAGA,EAAIq+C,EAAOxlD,OAAQmH,IAAK,CAChC,GAAIu+C,GAAQF,EAAOr+C,EAEnB,IAAmB,UAAfu+C,EAAMp7C,KAAV,CAIA,GAAIo8C,GAAUU,CAOd,IALmB,aAAf1B,EAAMp7C,OACNo8C,EAAWF,EAAcd,EAAMhnC,YAAa+nC,GAC5CU,GAAgB,UAAYT,EAAW,KAAOD,EAAM,MAGrC,WAAff,EAAMp7C,KACN,GAAIo7C,EAAME,aAAcqB,GAAEI,QACtBD,EAAoBL,EAAqBrB,EAAMhnC,YAAa+nC,GAC5DU,GAAgB,2BAA6BzB,EAAME,WAAa,UAAYa,EAAM,MAAQW,GAAsBA,EAAoB,MAAQ,SAAWlnB,KAAKY,UAAU4kB,EAAMJ,MAAQ,2BAA6BgB,EAAaZ,EAAOU,EAAM,GAAK,cAAgBG,EAAkBb,EAAOU,EAAM,GAAK,uBAEnS,CACD,GAAIV,EAAMhnC,YAAY1e,OAAS,EAC3B,KAAM,IAAIknD,OAAM,+BAAiCxB,EAAME,WAAa,IAGpEc,GAAWF,EAAcd,EAAME,WAAYa,GAC3CU,GAAgB,OAAST,EAAW,MACpCS,GAAgB,eAAiBT,EAAW,OAC5CS,GAAgB,sCAAwCV,EAAM,KAAOC,EAAW,WAAaxmB,KAAKY,UAAU4kB,EAAMJ,MAAQ,2BAA6BgB,EAAaZ,EAAOU,EAAM,GAAK,cAAgBG,EAAkBb,EAAOU,EAAM,GAAK,mBAC1Oe,GAAgB,UAChBA,GAAgB,sCAAwCV,EAAM,KAAOC,EAAW,WAAaxmB,KAAKY,UAAU4kB,EAAMJ,MAAQ,2BAA6BgB,EAAaZ,EAAOU,EAAM,GAAK,cAAgBG,EAAkBb,EAAOU,EAAM,GAAK,mBAC1Oe,GAAgB,UA1BxBA,IAAgB,QAAYzB,EAAa,QAAEnnD,QAAQ,MAAO,OAAOA,QAAQ,MAAO,OAAOA,QAAQ,KAAM,OAAe,KAgC5H,MADA4oD,IAAgB,gBACTG,KAAK35B,KAAK1vB,OAAQkpD,GA3H7B,GAAIF,GAAI/nD,IACR+nD,GAAEtoC,SAAWA,EA4HbsoC,EAAEpoC,QAAU,SAAUF,GAIlB,MAHKsoC,GAAEM,WACHN,EAAEM,SAAW1oC,EAAQF,IAElBsoC,EAAEM,UAGjBvhD,GAAU6zC,WACNjrC,WACAy4C,SACIG,KAAM,SAAUnsC,EAASzM,GAErB,MADIg2C,GAAWvpC,KAAYA,EAAUA,EAAQsS,KAAKzuB,OAC9Cmc,EACOzM,EAAQw0C,GAAGlkD,KAAM0P,EAAQoQ,MAGzBpQ,EAAQ64C,QAAQvoD,KAAM0P,EAAQoQ,OAG7C0oC,OAAU,SAAUrsC,EAASzM,GAEzB,MADIg2C,GAAWvpC,KAAYA,EAAUA,EAAQsS,KAAKzuB,OAC7Cmc,EAIMzM,EAAQ64C,QAAQvoD,KAAM0P,EAAQoQ,MAH9BpQ,EAAQw0C,GAAGlkD,KAAM0P,EAAQoQ,OAMxC7R,KAAQ,SAAUkO,EAASzM,GACvB,GAAI+4C,GAAM,GAAIxgD,EAAI,CAElB,IADIy9C,EAAWvpC,KAAYA,EAAUA,EAAQsS,KAAKzuB,OAC9CklB,EAAQ/I,GAAU,CAIlB,IAHIzM,EAAQ02C,KAAKsC,UACbvsC,EAAUA,EAAQusC,WAEjBzgD,EAAI,EAAGA,EAAIkU,EAAQrb,OAAQmH,IAC5BwgD,GAAO/4C,EAAQw0C,GAAG/nC,EAAQlU,IAAK0gD,MAAa,IAAN1gD,EAAS2gD,KAAM3gD,IAAMkU,EAAQrb,OAAS,EAAGoQ,MAAOjJ,GAEtFyH,GAAQ02C,KAAKsC,UACbvsC,EAAUA,EAAQusC,eAItB,KAAK,GAAIxoC,KAAO/D,GACZlU,IACAwgD,GAAO/4C,EAAQw0C,GAAG/nC,EAAQ+D,IAAOA,IAAKA,GAG9C,OAAIjY,GAAI,EAAUwgD,EACN/4C,EAAQ64C,QAAQvoD,OAEhC6oD,OAAQ,SAAU1sC,EAASzM,GAEvB,MADIg2C,GAAWvpC,KAAYA,EAAUA,EAAQsS,KAAKzuB,OAC3C0P,EAAQw0C,GAAG/nC,IAEtBtE,KAAQ,SAAUsE,EAASzM,GAEvB,MADIg2C,GAAWvpC,KAAYA,EAAUA,EAAQsS,KAAKzuB,OAC3Cmc,EAAQtE,KAAKnI,EAAQ02C,KAAK0C,WAAap5C,EAAQ02C,KAAK2C,YAE/DC,GAAM,SAAUC,EAAYv5C,GACxB,GAAIi2C,EAOJ,OALIA,GADAsD,EAAWtoD,QAAQ,WAAW,EACvB,eAAesoD,EAAW,KAG1B,uBAAuBA,EAAW,MAEtCb,KAAK35B,KAAKzuB,KAAM2lD,GAAMl3B,KAAKzuB,OAEtCkpD,WAAc,SAAUD,EAAYv5C,GAChC,GAAIi2C,EAEAA,GADAsD,EAAWtoD,QAAQ,WAAW,EACvB,eAAesoD,EAAW,KAG1B,uBAAuBA,EAAW,KAE7C,IAAIE,GAAYf,KAAK35B,KAAKzuB,KAAM2lD,GAAMl3B,KAAKzuB,KAC3C,OAAImpD,GACOz5C,EAAQw0C,GAAGlkD,KAAM0P,EAAQoQ,MAGzBpQ,EAAQ64C,QAAQvoD,KAAM0P,EAAQoQ,QAKrD,IAAIjZ,GAAK,SAAU4Y,EAAUK,GACzB,GAAyB,IAArBoE,UAAUpjB,OAAc,CACxB,GAAIsoD,GAAW,GAAItiD,GAAU2Y,GACzB4pC,EAAWD,EAASzpC,UAAUG,EAElC,OADAspC,GAAW,KACJ,EAEN,MAAO,IAAItiD,GAAU2Y,GAiB9B,OAfA5Y,GAAGyiD,eAAiB,SAAUrtC,EAAMioC,GAChCp9C,EAAU6zC,UAAUwN,QAAQlsC,GAAQioC,GAExCr9C,EAAG0iD,iBAAmB,SAAUttC,GAC5BnV,EAAU6zC,UAAUwN,QAAQlsC,GAAQ5Z,aAC7ByE,GAAU6zC,UAAUwN,QAAQlsC,IAGvCpV,EAAG8Y,QAAU,SAAUF,EAAU/P,GAC7B,GAAI05C,GAAW,GAAItiD,GAAU2Y,EAAU/P,EACvC,OAAO05C,GAASzpC,WAGpB9Y,EAAG6I,QAAU5I,EAAU6zC,UAAUjrC,QACjC7I,EAAGshD,QAAUrhD,EAAU6zC,UAAUwN,QAC1BthD,KAMX9H,OAAOskC,OAAS,SAAU56B,EAAWxJ,GA0RjC,QAAS40C,KACL,MAA8B,eAAvBv+B,EAAErW,OAAOof,UAgHpB,QAASmrC,KACLl0C,EAAEm0C,kBAAoBloD,WAAW,WACzB+T,EAAErW,OAAO2lC,MACTtvB,EAAEo0C,UACFp0C,EAAEq0C,cAGGr0C,EAAE4xB,MAIEjoC,EAAO2qD,mBAIRt0C,EAAEu0C,eAHFv0C,EAAEw0C,SAAS,GAJfx0C,EAAEq0C,cAWXr0C,EAAErW,OAAOuqD,UAwkBhB,QAASO,GAAmB9+C,EAAGjD,GAC3B,GAAIwC,GAAKzK,EAAEkL,EAAEiB,OACb,KAAK1B,EAAG4B,GAAGpE,GACP,GAAwB,gBAAbA,GACPwC,EAAKA,EAAG2B,QAAQnE,OAEf,IAAIA,EAAS0yC,SAAU,CACxB,GAAIzlC,EAIJ,OAHAzK,GAAG2B,UAAU8B,KAAK,SAAUiD,EAAO84C,GAC3BA,IAAQhiD,IAAUiN,EAAQjN,KAE7BiN,EACOjN,EADO3F,OAI3B,MAAkB,KAAdmI,EAAG1J,OACIuB,OAEJmI,EAAG,GAgvBd,QAASy/C,GAAa/9C,EAAQwD,GAC1BA,EAAUA,KAEV,IAAIw6C,GAAenrD,OAAOorD,kBAAoBprD,OAAOqrD,uBACjDC,EAAW,GAAIH,GAAa,SAAUI,GACtCA,EAAUC,QAAQ,SAAUC,GACxBl1C,EAAEm1C,UAAS,GACXn1C,EAAEo1C,KAAK,mBAAoBp1C,EAAGk1C,MAItCH,GAASM,QAAQz+C,GACbqvC,WAA0C,mBAAvB7rC,GAAQ6rC,YAA6B,EAAO7rC,EAAQ6rC,WACvEqP,UAAwC,mBAAtBl7C,GAAQk7C,WAA4B,EAAOl7C,EAAQk7C,UACrEC,cAAgD,mBAA1Bn7C,GAAQm7C,eAAgC,EAAOn7C,EAAQm7C,gBAGjFv1C,EAAEw1C,UAAU7hD,KAAKohD,GAinBrB,QAASU,GAAqBvgD,EAAIijB,GAC9BjjB,EAAKzK,EAAEyK,EACP,IAAI+hC,GAAGye,EAAIC,CAEX1e,GAAI/hC,EAAG9C,KAAK,yBAA2B,IACvCsjD,EAAKxgD,EAAG9C,KAAK,0BACbujD,EAAKzgD,EAAG9C,KAAK,0BACTsjD,GAAMC,GACND,EAAKA,GAAM,IACXC,EAAKA,GAAM,KAGPpX,KACAmX,EAAKze,EACL0e,EAAK,MAGLA,EAAK1e,EACLye,EAAK,KAITA,EADA,EAAKrqD,QAAQ,MAAQ,EAChBC,SAASoqD,EAAI,IAAMv9B,EAAW,IAG9Bu9B,EAAKv9B,EAAW,KAGrBw9B,EADA,EAAKtqD,QAAQ,MAAQ,EAChBC,SAASqqD,EAAI,IAAMx9B,EAAW,IAG9Bw9B,EAAKx9B,EAAW,KAEzBjjB,EAAG6C,UAAU,eAAiB29C,EAAK,KAAOC,EAAK,SAgDnD,QAASC,GAAoBj1C,GASzB,MARgC,KAA5BA,EAAUtV,QAAQ,QAEdsV,EADAA,EAAU,KAAOA,EAAU,GAAG1W,cAClB,KAAO0W,EAAU,GAAG1W,cAAgB0W,EAAU28B,UAAU,GAGxD,KAAO38B,GAGpBA,EAn8EX,KAAMjW,eAAgBqjC,SAAS,MAAO,IAAIA,QAAO56B,EAAWxJ,EAC5D,IAAIiJ,IACAmW,UAAW,aACX8sC,kBAAmB,YACnBnnB,aAAc,EACdE,MAAO,IAEPslB,UAAU,EACV4B,8BAA8B,EAE9Btd,UAAU,EACVud,kBAAkB,EAClBC,sBAAuB,EACvBC,wBAAwB,EACxBC,4BAA6B,EAC7BC,gBAAgB,EAEhBC,gBAAgB,EAEhBC,kBAAkB,EAElB9iC,OAAQ,QACR+iC,WACIC,OAAQ,GACRC,QAAS,EACT5E,MAAO,IACP6E,SAAU,EACVC,cAAe,GAEnBC,MACID,cAAc,EACdE,QAAQ,EACRC,aAAc,GACdC,YAAa,KAEjBC,MACIC,WAAW,GAGfC,UAAU,EAEVC,UAAW,KACXC,eAAe,EAEfC,iBAAiB,EACjBC,mBAAmB,EACnBC,uBAAuB,EAEvBC,SAAS,EAET5oB,aAAc,EACd6oB,cAAe,EACfC,gBAAiB,EACjBC,oBAAqB,SACrBC,eAAgB,EAChBC,gBAAgB,EAEhBC,WAAY,EACZC,WAAY,GACZC,eAAe,EACfC,aAAa,EACbC,YAAY,EACZC,gBAAiB,GACjBC,aAAc,IACdC,cAAc,EACdC,cAAc,EACdrkC,UAAW,EACXskC,0BAA0B,EAE1BC,WAAY,KACZC,qBAAqB,EACrBC,gBAAgB,EAChBC,uBAAwB,KAExBC,YAAY,EACZC,gBAAiB,IAEjBnmB,WAAY,KACZC,WAAY,KAEZmmB,qBAAqB,EACrBC,uBAAuB,EAEvBC,YAAY,EAEZC,eAAe,EACfC,0BAA0B,EAC1BC,qBAAqB,EAErB3pB,aAAa,EACbC,uBAAuB,EACvBC,8BAA8B,EAE9BmD,eAAe,EACfumB,qBAAqB,EAErB7pB,MAAM,EACN8pB,qBAAsB,EACtB1nB,aAAc,KAEd2nB,QAAStsD,OACTusD,gBAAgB,EAEhBC,kBAAkB,EAClBC,kBAAkB,EAClBC,aAAc,KACdC,WAAW,EACXC,eAAgB,oBAEhBC,WAAY,eACZC,iBAAkB,sBAClBC,kBAAmB,uBACnBC,oBAAqB,yBACrBC,eAAgB,oBAChBC,eAAgB,oBAChBC,aAAc,iBACdC,YAAa,2BACbC,kBAAmB,kCACnBC,oBAAqB,yBACrBC,sBAAuB,2BAEvBvF,UAAU,EACVwF,gBAAgB,EAEhBC,MAAM,EACNC,iBAAkB,iBAClBC,iBAAkB,aAClBC,kBAAmB,0BACnBC,iBAAkB,yBAElBC,oBAAoB,GA8BpBC,EAA0BnxD,GAAUA,EAAO0sD,gBAE/C1sD,GAASA,KACT,KAAK,GAAIsJ,KAAOL,GACZ,GAA2B,mBAAhBjJ,GAAOsJ,GACdtJ,EAAOsJ,GAAOL,EAASK,OAEtB,IAA2B,gBAAhBtJ,GAAOsJ,GACnB,IAAK,GAAI8nD,KAAWnoD,GAASK,GACW,mBAAzBtJ,GAAOsJ,GAAK8nD,KACnBpxD,EAAOsJ,GAAK8nD,GAAWnoD,EAASK,GAAK8nD,GAOrD,IAAI/6C,GAAItV,IAGRsV,GAAE9T,QAAU,QAGZ8T,EAAErW,OAASA,EAGXqW,EAAEiwC,aAIF,IAAIxlD,EAOJ,IALIA,EADgB,mBAAT6G,GACH7H,OAAO6H,MAAQ7H,OAAOuxD,OAASvxD,OAAOwxD,OAGtC3pD,EAEH7G,IAGLuV,EAAEvV,EAAIA,EAINuV,EAAE7M,UAAY1I,EAAE0I,GACW,IAAvB6M,EAAE7M,UAAU3H,QAAhB,CACA,GAAIwU,EAAE7M,UAAU3H,OAAS,EAIrB,WAHAwU,GAAE7M,UAAUwF,KAAK;AACb,GAAIo1B,QAAOrjC,KAAMf,IAMzBqW,GAAE7M,UAAU,GAAG26B,OAAS9tB,EACxBA,EAAE7M,UAAUqX,KAAK,SAAUxK,GAE3BA,EAAEiwC,WAAWt8C,KAAK,oBAAsBqM,EAAErW,OAAOof,WAE7C/I,EAAErW,OAAO6uC,UACTx4B,EAAEiwC,WAAWt8C,KAAK,8BAEjBqM,EAAEpO,QAAQspD,UACXl7C,EAAEiwC,WAAWt8C,KAAK,+BAClBqM,EAAErW,OAAO8tD,gBAAkB,IAG3Bz3C,EAAErW,OAAOstD,UAAYj3C,EAAErW,OAAOmvD,yBAC9B94C,EAAErW,OAAOkvD,qBAAsB,IAG9B,OAAQ,aAAaxtD,QAAQ2U,EAAErW,OAAO4pB,SAAW,IAC9CvT,EAAEpO,QAAQupD,cACVn7C,EAAErW,OAAOkvD,qBAAsB,EAC/B74C,EAAEiwC,WAAWt8C,KAAK,wBAGlBqM,EAAErW,OAAO4pB,OAAS,SAGF,UAApBvT,EAAErW,OAAO4pB,QACTvT,EAAEiwC,WAAWt8C,KAAK,oBAAsBqM,EAAErW,OAAO4pB,QAE7B,SAApBvT,EAAErW,OAAO4pB,SACTvT,EAAErW,OAAOivD,gBAAkB,EAC3B54C,EAAErW,OAAO6tD,cAAgB,EACzBx3C,EAAErW,OAAO8tD,gBAAkB,EAC3Bz3C,EAAErW,OAAOguD,eAAiB,EAC1B33C,EAAErW,OAAOiuD,gBAAiB,EAC1B53C,EAAErW,OAAOglC,aAAe,EACxB3uB,EAAErW,OAAO0sD,kBAAmB,EAC5Br2C,EAAErW,OAAOysD,gBAAiB,GAEN,SAApBp2C,EAAErW,OAAO4pB,SACTvT,EAAErW,OAAO6tD,cAAgB,EACzBx3C,EAAErW,OAAO8tD,gBAAkB,EAC3Bz3C,EAAErW,OAAOguD,eAAiB,EAC1B33C,EAAErW,OAAOkvD,qBAAsB,EAC/B74C,EAAErW,OAAOglC,aAAe,EACe,mBAA5BmsB,KACP96C,EAAErW,OAAO0sD,kBAAmB,IAKhCr2C,EAAErW,OAAOovD,YAAc/4C,EAAEpO,QAAQC,QACjCmO,EAAErW,OAAOovD,YAAa,GAI1B/4C,EAAEi6B,QAAUj6B,EAAE7M,UAAU+I,SAAS,IAAM8D,EAAErW,OAAOuwD,cAG5Cl6C,EAAErW,OAAO4uD,aACTv4C,EAAEo7C,oBAAsB3wD,EAAEuV,EAAErW,OAAO4uD,YAC/Bv4C,EAAErW,OAAO6uD,qBACTx4C,EAAEo7C,oBAAoB9oD,SAAS,gCAUvC0N,EAAE9N,IAAMqsC,MAA+C,QAArCv+B,EAAE7M,UAAU,GAAG6lB,IAAI7W,eAA4D,QAAjCnC,EAAE7M,UAAUhB,IAAI,cAC5E6N,EAAE9N,KACF8N,EAAEiwC,WAAWt8C,KAAK,wBAIlBqM,EAAE9N,MACF8N,EAAEq7C,SAAwC,gBAA7Br7C,EAAEi6B,QAAQ9nC,IAAI,YAI3B6N,EAAErW,OAAO8tD,gBAAkB,GAC3Bz3C,EAAEiwC,WAAWt8C,KAAK,6BAIlBqM,EAAEpU,OAAOsL,SACT8I,EAAEiwC,WAAWt8C,KAAK,4BAItBqM,EAAE7M,UAAUb,SAAS0N,EAAEiwC,WAAW1tC,KAAK,MAGvCvC,EAAEpH,UAAY,EAGdoH,EAAEmY,SAAW,EAGbnY,EAAE06B,SAAW,EAGb16B,EAAEs7C,gBAAkB,WAChBt7C,EAAErW,OAAO6vD,kBAAmB,GAEhCx5C,EAAEu7C,gBAAkB,WAChBv7C,EAAErW,OAAO4vD,kBAAmB,GAEhCv5C,EAAEw7C,WAAa,WACXx7C,EAAErW,OAAO6vD,iBAAmBx5C,EAAErW,OAAO4vD,kBAAmB,GAE5Dv5C,EAAEy7C,kBAAoB,WAClBz7C,EAAErW,OAAO6vD,kBAAmB,GAEhCx5C,EAAE07C,kBAAoB,WAClB17C,EAAErW,OAAO4vD,kBAAmB,GAEhCv5C,EAAE27C,aAAe,WACb37C,EAAErW,OAAO6vD,iBAAmBx5C,EAAErW,OAAO4vD,kBAAmB,GAOxDv5C,EAAErW,OAAOovD,aACT/4C,EAAE7M,UAAU,GAAG6E,MAAM4jD,OAAS,OAC9B57C,EAAE7M,UAAU,GAAG6E,MAAM4jD,OAAS,eAC9B57C,EAAE7M,UAAU,GAAG6E,MAAM4jD,OAAS,YAC9B57C,EAAE7M,UAAU,GAAG6E,MAAM4jD,OAAS,QAKlC57C,EAAE67C,gBACF77C,EAAE87C,aAAe,EAEjB97C,EAAEkU,UAAY,SAAU6nC,EAAY3nC,EAAK4nC,EAAkB5xD,GAEvD,QAAS6xD,KACD7xD,GAAUA,IAFlB,GAAImqB,EAICwnC,GAAWt2C,UAAau2C,EAWzBC,IAVI7nC,GACAG,EAAQ,GAAI9qB,QAAO+qB,MACnBD,EAAME,OAASwnC,EACf1nC,EAAMG,QAAUunC,EAChB1nC,EAAMH,IAAMA,GAEZ6nC,KAOZj8C,EAAE4yB,cAAgB,WAEd,QAASspB,KACY,mBAANl8C,IAA2B,OAANA,IACTjT,SAAnBiT,EAAE87C,cAA4B97C,EAAE87C,eAChC97C,EAAE87C,eAAiB97C,EAAE67C,aAAarwD,SAC9BwU,EAAErW,OAAOwvD,qBAAqBn5C,EAAEsgB,SACpCtgB,EAAEo1C,KAAK,gBAAiBp1C,KANhCA,EAAE67C,aAAe77C,EAAE7M,UAAUjI,KAAK,MASlC,KAAK,GAAIyH,GAAI,EAAGA,EAAIqN,EAAE67C,aAAarwD,OAAQmH,IACvCqN,EAAEkU,UAAUlU,EAAE67C,aAAalpD,GAAKqN,EAAE67C,aAAalpD,GAAGwpD,YAAcn8C,EAAE67C,aAAalpD,GAAG3H,aAAa,QAAS,EAAMkxD,IAOtHl8C,EAAEm0C,kBAAoBpnD,OACtBiT,EAAEo8C,aAAc,EAChBp8C,EAAEq8C,gBAAiB,EAsBnBr8C,EAAEs8C,cAAgB,WACd,MAAmC,mBAAxBt8C,GAAEm0C,mBAA0C,EAClDn0C,EAAErW,OAAOuqD,SACVl0C,EAAEo8C,aAAoB,GAC1Bp8C,EAAEo8C,aAAc,EAChBp8C,EAAEo1C,KAAK,kBAAmBp1C,OAC1Bk0C,OAJ+B,GAMnCl0C,EAAEu0C,aAAe,SAAU5yC,GAClB3B,EAAEm0C,oBACHn0C,EAAEm0C,mBAAmB3vC,aAAaxE,EAAEm0C,mBACxCn0C,EAAEo8C,aAAc,EAChBp8C,EAAEm0C,kBAAoBpnD,OACtBiT,EAAEo1C,KAAK,iBAAkBp1C,KAE7BA,EAAEu8C,cAAgB,SAAU3tB,GACpB5uB,EAAEq8C,iBACFr8C,EAAEm0C,mBAAmB3vC,aAAaxE,EAAEm0C,mBACxCn0C,EAAEq8C,gBAAiB,EACL,IAAVztB,GACA5uB,EAAEq8C,gBAAiB,EACnBnI,KAGAl0C,EAAEi6B,QAAQ1gC,cAAc,WACfyG,IACLA,EAAEq8C,gBAAiB,EACdr8C,EAAEo8C,YAIHlI,IAHAl0C,EAAEu0C,oBAWlBv0C,EAAEo6B,aAAe,WACb,OAASp6B,EAAEw8C,SAAS,IAExBx8C,EAAEq6B,aAAe,WACb,OAASr6B,EAAEw8C,SAASx8C,EAAEw8C,SAAShxD,OAAS,IAK5CwU,EAAEy8C,oBAAsB,WACpB,GAAI9lD,GAAO9L,CAEP8L,GAD0B,mBAAnBqJ,GAAErW,OAAOgN,MACRqJ,EAAErW,OAAOgN,MAGTqJ,EAAE7M,UAAU,GAAGupD,YAGvB7xD,EAD2B,mBAApBmV,GAAErW,OAAOkB,OACPmV,EAAErW,OAAOkB,OAGTmV,EAAE7M,UAAU,GAAG6Q,aAEd,IAAVrN,GAAe4nC,KAAoB,IAAX1zC,IAAiB0zC,MAG7Cv+B,EAAErJ,MAAQA,EACVqJ,EAAEnV,OAASA,EACXmV,EAAE28C,KAAOpe,IAAQv+B,EAAErJ,MAAQqJ,EAAEnV,SAGjCmV,EAAE48C,iBAAmB,WACjB58C,EAAEmxB,OAASnxB,EAAEi6B,QAAQ/9B,SAAS,IAAM8D,EAAErW,OAAOiwD,YAC7C55C,EAAEw8C,YACFx8C,EAAE68C,cACF78C,EAAE88C,kBAEF,IAEInqD,GAFAg8B,EAAe3uB,EAAErW,OAAOglC,aACxBouB,EAAgB,EAEhBC,EAAgB,EAChBphD,EAAQ,CACgB,iBAAjB+yB,IAA6BA,EAAatjC,QAAQ,MAAQ,IACjEsjC,EAAewX,WAAWxX,EAAa5kC,QAAQ,IAAK,KAAO,IAAMiW,EAAE28C,MAGvE38C,EAAEi9C,aAAetuB,EAEN3uB,EAAEmxB,OAAOh/B,IAAhB6N,EAAE9N,KAAmBgrD,WAAY,GAAIpqC,UAAW,KACjCqqC,YAAa,GAAIC,aAAc,IAElD,IAAIC,EACAr9C,GAAErW,OAAO8tD,gBAAkB,IAEvB4F,EADA/mD,KAAKu/B,MAAM71B,EAAEmxB,OAAO3lC,OAASwU,EAAErW,OAAO8tD,mBAAqBz3C,EAAEmxB,OAAO3lC,OAASwU,EAAErW,OAAO8tD,gBAC7Dz3C,EAAEmxB,OAAO3lC,OAGT8K,KAAK4qB,KAAKlhB,EAAEmxB,OAAO3lC,OAASwU,EAAErW,OAAO8tD,iBAAmBz3C,EAAErW,OAAO8tD,gBAKlG,IAAI6F,EACJ,KAAK3qD,EAAI,EAAGA,EAAIqN,EAAEmxB,OAAO3lC,OAAQmH,IAAK,CAClC2qD,EAAY,CACZ,IAAIlqB,GAAQpzB,EAAEmxB,OAAO78B,GAAG3B,EACxB,IAAIqN,EAAErW,OAAO8tD,gBAAkB,EAAG,CAE9B,GAAI8F,GACAC,EAAQC,EAERC,EADAjG,EAAkBz3C,EAAErW,OAAO8tD,eAEM,YAAjCz3C,EAAErW,OAAO+tD,qBACT8F,EAASlnD,KAAKu/B,MAAMljC,EAAI8kD,GACxBgG,EAAM9qD,EAAI6qD,EAAS/F,EACnB8F,EAAqBC,EAASC,EAAMJ,EAAyB5F,EAC7DrkB,EACKjhC,KACGwrD,4BAA6BJ,EAC7BK,yBAA0BL,EAC1BM,iBAAkBN,EAClBO,gBAAiBP,EACjBQ,MAASR,MAIjBG,EAAeL,EAAyB5F,EACxCgG,EAAMnnD,KAAKu/B,MAAMljC,EAAI+qD,GACrBF,EAAS7qD,EAAI8qD,EAAMC,GAGvBtqB,EACKjhC,KACG6rD,aAAuB,IAARP,GAAaz9C,EAAErW,OAAOglC,cAAkB3uB,EAAErW,OAAOglC,aAAe,OAElFv8B,KAAK,qBAAsBorD,GAC3BprD,KAAK,kBAAmBqrD,GAGJ,SAAzBrqB,EAAMjhC,IAAI,aACiB,SAA3B6N,EAAErW,OAAO6tD,cACT8F,EAAY/e,IAAQnL,EAAMn1B,YAAW,GAAQm1B,EAAM3hB,aAAY,IAG/D6rC,GAAat9C,EAAE28C,MAAQ38C,EAAErW,OAAO6tD,cAAgB,GAAK7oB,GAAgB3uB,EAAErW,OAAO6tD,cAC1EjZ,IACAv+B,EAAEmxB,OAAOx+B,GAAGqF,MAAMrB,MAAQ2mD,EAAY,KAGtCt9C,EAAEmxB,OAAOx+B,GAAGqF,MAAMnN,OAASyyD,EAAY,MAG/Ct9C,EAAEmxB,OAAOx+B,GAAGsrD,gBAAkBX,EAC9Bt9C,EAAE88C,gBAAgBnpD,KAAK2pD,GAGnBt9C,EAAErW,OAAOiuD,gBACTmF,EAAgBA,EAAgBO,EAAY,EAAIN,EAAgB,EAAIruB,EAC1D,IAANh8B,IAASoqD,EAAgBA,EAAgB/8C,EAAE28C,KAAO,EAAIhuB,GACtDr4B,KAAKC,IAAIwmD,GAAiB,OAAUA,EAAgB,GACpD,EAAU/8C,EAAErW,OAAOguD,iBAAmB,GAAG33C,EAAEw8C,SAAS7oD,KAAKopD,GAC7D/8C,EAAE68C,WAAWlpD,KAAKopD,KAGd,EAAU/8C,EAAErW,OAAOguD,iBAAmB,GAAG33C,EAAEw8C,SAAS7oD,KAAKopD,GAC7D/8C,EAAE68C,WAAWlpD,KAAKopD,GAClBA,EAAgBA,EAAgBO,EAAY3uB,GAGhD3uB,EAAEi9C,aAAeK,EAAY3uB,EAE7BquB,EAAgBM,EAEhB1hD,KAEJoE,EAAEi9C,YAAc3mD,KAAK2b,IAAIjS,EAAEi9C,YAAaj9C,EAAE28C,KAE1C,IAAIuB,EAWJ,IARIl+C,EAAE9N,KAAO8N,EAAEq7C,WAAiC,UAApBr7C,EAAErW,OAAO4pB,QAA0C,cAApBvT,EAAErW,OAAO4pB,SAChEvT,EAAEi6B,QAAQ9nC,KAAKwE,MAAOqJ,EAAEi9C,YAAcj9C,EAAErW,OAAOglC,aAAe,SAE7D3uB,EAAEpO,QAAQspD,SAAWl7C,EAAErW,OAAOysD,iBACpBp2C,EAAEi6B,QAAQ9nC,IAAjBosC,KAAsB5nC,MAAOqJ,EAAEi9C,YAAcj9C,EAAErW,OAAOglC,aAAe,OACrD9jC,OAAQmV,EAAEi9C,YAAcj9C,EAAErW,OAAOglC,aAAe,OAGpE3uB,EAAErW,OAAO8tD,gBAAkB,IAC3Bz3C,EAAEi9C,aAAeK,EAAYt9C,EAAErW,OAAOglC,cAAgB0uB,EACtDr9C,EAAEi9C,YAAc3mD,KAAK4qB,KAAKlhB,EAAEi9C,YAAcj9C,EAAErW,OAAO8tD,iBAAmBz3C,EAAErW,OAAOglC,aAC/E3uB,EAAEi6B,QAAQ9nC,KAAKwE,MAAOqJ,EAAEi9C,YAAcj9C,EAAErW,OAAOglC,aAAe,OAC1D3uB,EAAErW,OAAOiuD,gBAAgB,CAEzB,IADAsG,KACKvrD,EAAI,EAAGA,EAAIqN,EAAEw8C,SAAShxD,OAAQmH,IAC3BqN,EAAEw8C,SAAS7pD,GAAKqN,EAAEi9C,YAAcj9C,EAAEw8C,SAAS,IAAI0B,EAAcvqD,KAAKqM,EAAEw8C,SAAS7pD,GAErFqN,GAAEw8C,SAAW0B,EAKrB,IAAKl+C,EAAErW,OAAOiuD,eAAgB,CAE1B,IADAsG,KACKvrD,EAAI,EAAGA,EAAIqN,EAAEw8C,SAAShxD,OAAQmH,IAC3BqN,EAAEw8C,SAAS7pD,IAAMqN,EAAEi9C,YAAcj9C,EAAE28C,MACnCuB,EAAcvqD,KAAKqM,EAAEw8C,SAAS7pD,GAGtCqN,GAAEw8C,SAAW0B,EACT5nD,KAAKu/B,MAAM71B,EAAEi9C,YAAcj9C,EAAE28C,MAAQrmD,KAAKu/B,MAAM71B,EAAEw8C,SAASx8C,EAAEw8C,SAAShxD,OAAS,KAC/EwU,EAAEw8C,SAAS7oD,KAAKqM,EAAEi9C,YAAcj9C,EAAE28C,MAGhB,IAAtB38C,EAAEw8C,SAAShxD,SAAcwU,EAAEw8C,UAAY,IAEb,IAA1Bx8C,EAAErW,OAAOglC,cAEM3uB,EAAEmxB,OAAOh/B,IADpBosC,IACIv+B,EAAE9N,KAAmBgrD,WAAYvuB,EAAe,OACjCwuB,YAAaxuB,EAAe,OAEhCyuB,aAAczuB,EAAe,OAEhD3uB,EAAErW,OAAOkvD,qBACT74C,EAAEm+C,sBAGVn+C,EAAEm+C,mBAAqB,WACnB,IAAK,GAAIxrD,GAAI,EAAGA,EAAIqN,EAAEmxB,OAAO3lC,OAAQmH,IACjCqN,EAAEmxB,OAAOx+B,GAAGyrD,kBAAoB7f,IAAQv+B,EAAEmxB,OAAOx+B,GAAG2W,WAAatJ,EAAEmxB,OAAOx+B,GAAGynB,WAOrFpa,EAAEq+C,qBAAuB,SAAUzlD,GAI/B,GAHyB,mBAAdA,KACPA,EAAYoH,EAAEpH,WAAa,GAEP,IAApBoH,EAAEmxB,OAAO3lC,OAAb,CAC6C,mBAAlCwU,GAAEmxB,OAAO,GAAGitB,mBAAmCp+C,EAAEm+C,oBAE5D,IAAIG,GAAet+C,EAAErW,OAAOiuD,gBAAkBh/C,EAAYoH,EAAE28C,KAAO,GAAK/jD,CACpEoH,GAAE9N,MAAKosD,EAAet+C,EAAErW,OAAOiuD,eAAiBh/C,EAAYoH,EAAE28C,KAAO,EAAI/jD,EAG7E,EAAmBoH,EAAE7M,UAAU,GAAG4hB,wBACjBwpB,IAAQ,OAAS,MAClBA,IAAQ,QAAU,SAClCv+B,EAAEmxB,OAAO5+B,YAAYyN,EAAErW,OAAOmwD,kBAC9B,KAAK,GAAInnD,GAAI,EAAGA,EAAIqN,EAAEmxB,OAAO3lC,OAAQmH,IAAK,CACtC,GAAIygC,GAAQpzB,EAAEmxB,OAAOx+B,GACjB4rD,EAAqBv+C,EAAErW,OAAOiuD,kBAAmB,EAAQxkB,EAAM6qB,gBAAkB,EAAI,EACrFO,GAAiBF,EAAelrB,EAAMgrB,kBAAoBG,IAAsBnrB,EAAM6qB,gBAAkBj+C,EAAErW,OAAOglC,aACrH,IAAI3uB,EAAErW,OAAOmvD,sBAAuB,CAChC,GAAI2F,KAAgBH,EAAelrB,EAAMgrB,kBAAoBG,GACzDG,EAAaD,EAAcz+C,EAAE88C,gBAAgBnqD,GAC7CgsD,EACCF,GAAe,GAAKA,EAAcz+C,EAAE28C,MACpC+B,EAAa,GAAKA,GAAc1+C,EAAE28C,MACnB,GAAf8B,GAAoBC,GAAc1+C,EAAE28C,IACrCgC,IACA3+C,EAAEmxB,OAAO78B,GAAG3B,GAAGL,SAAS0N,EAAErW,OAAOmwD,mBAGzC1mB,EAAMjb,SAAWnY,EAAE9N,KAAOssD,EAAgBA,KAGlDx+C,EAAE4+C,eAAiB,SAAUhmD,GACA,mBAAdA,KACPA,EAAYoH,EAAEpH,WAAa,EAE/B,IAAIimD,GAAiB7+C,EAAEq6B,eAAiBr6B,EAAEo6B,cACnB,KAAnBykB,GACA7+C,EAAEmY,SAAW,EACbnY,EAAE2xB,YAAc3xB,EAAE4xB,OAAQ,IAG1B5xB,EAAEmY,UAAYvf,EAAYoH,EAAEo6B,gBAAkB,EAC9Cp6B,EAAE2xB,YAAc3xB,EAAEmY,UAAY,EAC9BnY,EAAE4xB,MAAQ5xB,EAAEmY,UAAY,GAExBnY,EAAE2xB,aAAa3xB,EAAEo1C,KAAK,mBAAoBp1C,GAC1CA,EAAE4xB,OAAO5xB,EAAEo1C,KAAK,aAAcp1C,GAE9BA,EAAErW,OAAOkvD,qBAAqB74C,EAAEq+C,qBAAqBzlD,GACzDoH,EAAEo1C,KAAK,aAAcp1C,EAAGA,EAAEmY,WAE9BnY,EAAE8+C,kBAAoB,WAClB,GACItjB,GAAgB7oC,EAAGosD,EADnBnmD,EAAYoH,EAAE9N,IAAM8N,EAAEpH,WAAaoH,EAAEpH,SAEzC,KAAKjG,EAAI,EAAGA,EAAIqN,EAAE68C,WAAWrxD,OAAQmH,IACE,mBAAxBqN,GAAE68C,WAAWlqD,EAAI,GACpBiG,GAAaoH,EAAE68C,WAAWlqD,IAAMiG,EAAYoH,EAAE68C,WAAWlqD,EAAI,IAAMqN,EAAE68C,WAAWlqD,EAAI,GAAKqN,EAAE68C,WAAWlqD,IAAM,EAC5G6oC,EAAiB7oC,EAEZiG,GAAaoH,EAAE68C,WAAWlqD,IAAMiG,EAAYoH,EAAE68C,WAAWlqD,EAAI,KAClE6oC,EAAiB7oC,EAAI,GAIrBiG,GAAaoH,EAAE68C,WAAWlqD,KAC1B6oC,EAAiB7oC,IAKR,EAAjB6oC,GAAgD,mBAAnBA,MAAgCA,EAAiB,GAMlFujB,EAAYzoD,KAAKu/B,MAAM2F,EAAiBx7B,EAAErW,OAAOguD,gBAC7CoH,GAAa/+C,EAAEw8C,SAAShxD,SAAQuzD,EAAY/+C,EAAEw8C,SAAShxD,OAAS,GAEhEgwC,IAAmBx7B,EAAE2wB,cAGzB3wB,EAAE++C,UAAYA,EACd/+C,EAAEiyB,cAAgBjyB,EAAE2wB,YACpB3wB,EAAE2wB,YAAc6K,EAChBx7B,EAAEg/C,kBAMNh/C,EAAEg/C,cAAgB,WACdh/C,EAAEmxB,OAAO5+B,YAAYyN,EAAErW,OAAOkwD,iBAAmB,IAAM75C,EAAErW,OAAOqwD,eAAiB,IAAMh6C,EAAErW,OAAOswD,eAChG,IAAIgF,GAAcj/C,EAAEmxB,OAAO78B,GAAG0L,EAAE2wB,YAOhC,IALAsuB,EAAY3sD,SAAS0N,EAAErW,OAAOkwD,kBAC9BoF,EAAYt1C,KAAK,IAAM3J,EAAErW,OAAOiwD,YAAYtnD,SAAS0N,EAAErW,OAAOqwD,gBAC9DiF,EAAYlzC,KAAK,IAAM/L,EAAErW,OAAOiwD,YAAYtnD,SAAS0N,EAAErW,OAAOswD,gBAG1Dj6C,EAAEk/C,SAAWl/C,EAAEk/C,QAAQ1zD,OAAS,EAAG,CACnCwU,EAAEk/C,QAAQ3sD,YAAYyN,EAAErW,OAAOywD,kBAC/B,IAAI+E,EACAn/C,GAAErW,OAAO2lC,MACT6vB,EAAc7oD,KAAK4qB,KAAKlhB,EAAE2wB,YAAc3wB,EAAE0xB,cAAc1xB,EAAErW,OAAOguD,eAC7DwH,EAAcn/C,EAAEmxB,OAAO3lC,OAAS,EAAqB,EAAjBwU,EAAE0xB,eACtCytB,GAA6Bn/C,EAAEmxB,OAAO3lC,OAA0B,EAAjBwU,EAAE0xB,cAEjDytB,EAAcn/C,EAAEk/C,QAAQ1zD,OAAS,IAAG2zD,GAA4Bn/C,EAAEk/C,QAAQ1zD,SAI1E2zD,EADuB,mBAAhBn/C,GAAE++C,UACK/+C,EAAE++C,UAGF/+C,EAAE2wB,aAAe,EAGnC3wB,EAAEo7C,oBAAoB5vD,OAAS,EAC/BwU,EAAEk/C,QAAQvmD,KAAK,WACPlO,EAAEC,MAAMkR,UAAYujD,GAAa10D,EAAEC,MAAM4H,SAAS0N,EAAErW,OAAOywD,qBAInEp6C,EAAEk/C,QAAQ5qD,GAAG6qD,GAAa7sD,SAAS0N,EAAErW,OAAOywD,mBAK/Cp6C,EAAErW,OAAO2lC,OACNtvB,EAAErW,OAAO+oC,aACL1yB,EAAE2xB,aACFlnC,EAAEuV,EAAErW,OAAO+oC,YAAYpgC,SAAS0N,EAAErW,OAAO0wD,qBACrCr6C,EAAErW,OAAO6wD,MAAQx6C,EAAEw6C,MAAMx6C,EAAEw6C,KAAKz5C,QAAQtW,EAAEuV,EAAErW,OAAO+oC,eAGvDjoC,EAAEuV,EAAErW,OAAO+oC,YAAYngC,YAAYyN,EAAErW,OAAO0wD,qBACxCr6C,EAAErW,OAAO6wD,MAAQx6C,EAAEw6C,MAAMx6C,EAAEw6C,KAAK55C,OAAOnW,EAAEuV,EAAErW,OAAO+oC,eAG1D1yB,EAAErW,OAAO8oC,aACLzyB,EAAE4xB,OACFnnC,EAAEuV,EAAErW,OAAO8oC,YAAYngC,SAAS0N,EAAErW,OAAO0wD,qBACrCr6C,EAAErW,OAAO6wD,MAAQx6C,EAAEw6C,MAAMx6C,EAAEw6C,KAAKz5C,QAAQtW,EAAEuV,EAAErW,OAAO8oC,eAGvDhoC,EAAEuV,EAAErW,OAAO8oC,YAAYlgC,YAAYyN,EAAErW,OAAO0wD,qBACxCr6C,EAAErW,OAAO6wD,MAAQx6C,EAAEw6C,MAAMx6C,EAAEw6C,KAAK55C,OAAOnW,EAAEuV,EAAErW,OAAO8oC,iBAStEzyB,EAAEo/C,iBAAmB,WACjB,GAAKp/C,EAAErW,OAAO4uD,YACVv4C,EAAEo7C,qBAAuBp7C,EAAEo7C,oBAAoB5vD,OAAS,EAAG,CAG3D,IAAK,GAFD6zD,GAAc,GACdC,EAAkBt/C,EAAErW,OAAO2lC,KAAOh5B,KAAK4qB,MAAMlhB,EAAEmxB,OAAO3lC,OAA0B,EAAjBwU,EAAE0xB,cAAoB1xB,EAAErW,OAAOguD,gBAAkB33C,EAAEw8C,SAAShxD,OACtHmH,EAAI,EAAO2sD,EAAJ3sD,EAAqBA,IAE7B0sD,GADAr/C,EAAErW,OAAO+uD,uBACM14C,EAAErW,OAAO+uD,uBAAuB/lD,EAAGqN,EAAErW,OAAOwwD,aAG5C,gBAAkBn6C,EAAErW,OAAOwwD,YAAc,WAGhEn6C,GAAEo7C,oBAAoBvkC,KAAKwoC,GAC3Br/C,EAAEk/C,QAAUl/C,EAAEo7C,oBAAoBlwD,KAAK,IAAM8U,EAAErW,OAAOwwD,eAM9Dn6C,EAAEsgB,OAAS,SAAUi/B,GASjB,QAASC,KACL3mC,EAAeviB,KAAK4b,IAAI5b,KAAK2b,IAAIjS,EAAEpH,UAAWoH,EAAEq6B,gBAAiBr6B,EAAEo6B,gBACnEp6B,EAAEy/C,oBAAoB5mC,GACtB7Y,EAAE8+C,oBACF9+C,EAAEg/C,gBAEN,GAdAh/C,EAAEy8C,sBACFz8C,EAAE48C,mBACF58C,EAAE4+C,iBACF5+C,EAAEo/C,mBACFp/C,EAAEg/C,gBACEh/C,EAAErW,OAAOutD,WAAal3C,EAAEk3C,WACxBl3C,EAAEk3C,UAAUwI,MAQZH,EAAiB,CACjB,GAAII,GAAY9mC,CACZ7Y,GAAErW,OAAO6uC,SACTgnB,KAIIG,EAD2B,SAA3B3/C,EAAErW,OAAO6tD,eAA4Bx3C,EAAE4xB,QAAU5xB,EAAErW,OAAOiuD,eAC7C53C,EAAE6wB,QAAQ7wB,EAAEmxB,OAAO3lC,OAAS,EAAG,GAAG,GAAO,GAGzCwU,EAAE6wB,QAAQ7wB,EAAE2wB,YAAa,GAAG,GAAO,GAE/CgvB,GACDH,OAUhBx/C,EAAEm1C,SAAW,SAAUyK,GAQnB,GAPA5/C,EAAEy8C,sBACFz8C,EAAE48C,mBACF58C,EAAE4+C,kBAC6B,SAA3B5+C,EAAErW,OAAO6tD,eAA4Bx3C,EAAErW,OAAO6uC,UAAYonB,IAAuB5/C,EAAEo/C,mBACnFp/C,EAAErW,OAAOutD,WAAal3C,EAAEk3C,WACxBl3C,EAAEk3C,UAAUwI,MAEZ1/C,EAAErW,OAAO6uC,SAAU,CACnB,GAAI3f,GAAeviB,KAAK4b,IAAI5b,KAAK2b,IAAIjS,EAAEpH,UAAWoH,EAAEq6B,gBAAiBr6B,EAAEo6B,eACvEp6B,GAAEy/C,oBAAoB5mC,GACtB7Y,EAAE8+C,oBACF9+C,EAAEg/C,oBAGFh/C,GAAEg/C,gBAC6B,SAA3Bh/C,EAAErW,OAAO6tD,eAA4Bx3C,EAAE4xB,QAAU5xB,EAAErW,OAAOiuD,eAC1D53C,EAAE6wB,QAAQ7wB,EAAEmxB,OAAO3lC,OAAS,EAAG,GAAG,GAAO,GAGzCwU,EAAE6wB,QAAQ7wB,EAAE2wB,YAAa,GAAG,GAAO,GAW/C,IAAIkvB,IAAiB,YAAa,YAAa,UAC3Cp2D,QAAOovC,UAAUinB,eAAgBD,GAAiB,cAAe,cAAe,aAC3Ep2D,OAAOovC,UAAUknB,mBAAkBF,GAAiB,gBAAiB,gBAAiB,gBAC/F7/C,EAAEtO,aACEC,MAAQqO,EAAEpO,QAAQC,QAAUmO,EAAErW,OAAOouD,cAAiB,aAAe8H,EAAc,GACnF/tD,KAAOkO,EAAEpO,QAAQC,QAAUmO,EAAErW,OAAOouD,cAAgB,YAAc8H,EAAc,GAChF9tD,IAAMiO,EAAEpO,QAAQC,QAAUmO,EAAErW,OAAOouD,cAAgB,WAAa8H,EAAc,KAK9Ep2D,OAAOovC,UAAUinB,gBAAkBr2D,OAAOovC,UAAUknB,oBACpB,cAA/B//C,EAAErW,OAAOksD,kBAAoC71C,EAAE7M,UAAY6M,EAAEi6B,SAAS3nC,SAAS,cAAgB0N,EAAErW,OAAOof,WAI7G/I,EAAEo7B,WAAa,SAAUthC,GACrB,GAAIkmD,GAAYlmD,EAAS,MAAQ,KAC7BC,EAASD,EAAS,sBAAwB,mBAC1C+7C,EAAmD,cAA/B71C,EAAErW,OAAOksD,kBAAoC71C,EAAE7M,UAAU,GAAK6M,EAAEi6B,QAAQ,GAC5FrjC,EAASoJ,EAAEpO,QAAQC,MAAQgkD,EAAoB/pD,SAE/Cm0D,EAAcjgD,EAAErW,OAAOu2D,QAAS,GAAO,CAGvClgD,GAAEmgD,QAAQC,IACVvK,EAAkB97C,GAAQiG,EAAEtO,YAAYC,MAAOqO,EAAEuzB,cAAc,GAC/D38B,EAAOmD,GAAQiG,EAAEtO,YAAYI,KAAMkO,EAAEqgD,YAAaJ,GAClDrpD,EAAOmD,GAAQiG,EAAEtO,YAAYK,IAAKiO,EAAE2zB,YAAY,KAG5C3zB,EAAEpO,QAAQC,QACVgkD,EAAkB97C,GAAQiG,EAAEtO,YAAYC,MAAOqO,EAAEuzB,cAAc,GAC/DsiB,EAAkB97C,GAAQiG,EAAEtO,YAAYI,KAAMkO,EAAEqgD,YAAaJ,GAC7DpK,EAAkB97C,GAAQiG,EAAEtO,YAAYK,IAAKiO,EAAE2zB,YAAY,KAE3DhqC,EAAOouD,eAAkB/3C,EAAEpU,OAAOkV,KAAQd,EAAEpU,OAAOsL,UACnD2+C,EAAkB97C,GAAQ,YAAaiG,EAAEuzB,cAAc,GACvDznC,SAASiO,GAAQ,YAAaiG,EAAEqgD,YAAaJ,GAC7Cn0D,SAASiO,GAAQ,UAAWiG,EAAE2zB,YAAY,KAGlDlqC,OAAOsQ,GAAQ,SAAUiG,EAAEm1C,UAGvBn1C,EAAErW,OAAO8oC,aACThoC,EAAEuV,EAAErW,OAAO8oC,YAAYutB,GAAW,QAAShgD,EAAEsgD,aACzCtgD,EAAErW,OAAO6wD,MAAQx6C,EAAEw6C,MAAM/vD,EAAEuV,EAAErW,OAAO8oC,YAAYutB,GAAW,UAAWhgD,EAAEw6C,KAAK+F,aAEjFvgD,EAAErW,OAAO+oC,aACTjoC,EAAEuV,EAAErW,OAAO+oC,YAAYstB,GAAW,QAAShgD,EAAEwgD,aACzCxgD,EAAErW,OAAO6wD,MAAQx6C,EAAEw6C,MAAM/vD,EAAEuV,EAAErW,OAAO+oC,YAAYstB,GAAW,UAAWhgD,EAAEw6C,KAAK+F,aAEjFvgD,EAAErW,OAAO4uD,YAAcv4C,EAAErW,OAAO6uD,qBAChC/tD,EAAEuV,EAAEo7C,qBAAqB4E,GAAW,QAAS,IAAMhgD,EAAErW,OAAOwwD,YAAan6C,EAAEygD,eAI3EzgD,EAAErW,OAAOqvD,eAAiBh5C,EAAErW,OAAOsvD,2BAA0BpD,EAAkB97C,GAAQ,QAASiG,EAAEg5C,eAAe,IAEzHh5C,EAAEnG,aAAe,SAAUC,GACvBkG,EAAEo7B,cAENp7B,EAAEhG,aAAe,WACbgG,EAAEo7B,YAAW,IAOjBp7B,EAAEsqB,YAAa,EACftqB,EAAEg5C,cAAgB,SAAUrjD,GACnBqK,EAAEsqB,aACCtqB,EAAErW,OAAOqvD,eAAerjD,EAAE2B,iBAC1B0I,EAAErW,OAAOsvD,2BACTtjD,EAAE60B,kBACF70B,EAAE40B,8BAKdvqB,EAAEsgD,YAAc,SAAU3qD,GACtBA,EAAE2B,iBACF0I,EAAE0gD,aAEN1gD,EAAEwgD,YAAc,SAAU7qD,GACtBA,EAAE2B,iBACF0I,EAAE2gD,aAEN3gD,EAAEygD,aAAe,SAAU9qD,GACvBA,EAAE2B,gBACF,IAAIsE,GAAQnR,EAAEC,MAAMkR,QAAUoE,EAAErW,OAAOguD,cACnC33C,GAAErW,OAAO2lC,OAAM1zB,GAAgBoE,EAAE0xB,cACrC1xB,EAAE6wB,QAAQj1B,IA0BdoE,EAAE4gD,mBAAqB,SAAUjrD,GAC7B,GAAIy9B,GAAQqhB,EAAmB9+C,EAAG,IAAMqK,EAAErW,OAAOiwD,YAC7CiH,GAAa,CACjB,IAAIztB,EACA,IAAK,GAAIzgC,GAAI,EAAGA,EAAIqN,EAAEmxB,OAAO3lC,OAAQmH,IAC7BqN,EAAEmxB,OAAOx+B,KAAOygC,IAAOytB,GAAa,EAIhD,KAAIztB,IAASytB,EAOT,MAFA7gD,GAAE8gD,aAAe/zD,YACjBiT,EAAE+gD,aAAeh0D,OAGrB,IARIiT,EAAE8gD,aAAe1tB,EACjBpzB,EAAE+gD,aAAet2D,EAAE2oC,GAAOx3B,QAO1BoE,EAAErW,OAAOuvD,qBAA0CnsD,SAAnBiT,EAAE+gD,cAA8B/gD,EAAE+gD,eAAiB/gD,EAAE2wB,YAAa,CAClG,GACIqwB,GADAC,EAAejhD,EAAE+gD,YAErB,IAAI/gD,EAAErW,OAAO2lC,KAET,GADA0xB,EAAYv2D,EAAEuV,EAAE8gD,cAAc1uD,KAAK,2BAC/B6uD,EAAejhD,EAAEmxB,OAAO3lC,OAASwU,EAAErW,OAAO6tD,cAC1Cx3C,EAAEo0C,UACF6M,EAAejhD,EAAEi6B,QAAQ/9B,SAAS,IAAM8D,EAAErW,OAAOiwD,WAAa,6BAA+BoH,EAAY,MAAM1sD,GAAG,GAAGsH,QACrH3P,WAAW,WACP+T,EAAE6wB,QAAQowB,IACX,OAEF,IAAIA,EAAejhD,EAAErW,OAAO6tD,cAAgB,EAAG,CAChDx3C,EAAEo0C,SACF,IAAI8M,GAAmBlhD,EAAEi6B,QAAQ/9B,SAAS,IAAM8D,EAAErW,OAAOiwD,WAAa,6BAA+BoH,EAAY,KACjHC,GAAeC,EAAiB5sD,GAAG4sD,EAAiB11D,OAAS,GAAGoQ,QAChE3P,WAAW,WACP+T,EAAE6wB,QAAQowB,IACX,OAGHjhD,GAAE6wB,QAAQowB,OAIdjhD,GAAE6wB,QAAQowB,IAKtB,IAAI9rD,GACAC,EACAR,EACAH,EACAulC,EACAhW,EACAm9B,EAI4BC,EAG5BC,EALAC,EAAe,kCAEfh4B,EAAgBnzB,KAAK2/B,MAErByrB,IAIJvhD,GAAEw+B,WAAY,EAGdx+B,EAAEwhD,SACEC,OAAQ,EACRC,OAAQ,EACRC,SAAU,EACVC,SAAU,EACVlkD,KAAM,EAIV,IAAImkD,GAAcC,CAClB9hD,GAAEuzB,aAAe,SAAU59B,GAGvB,GAFIA,EAAEosD,gBAAepsD,EAAIA,EAAEosD,eAC3BF,EAA0B,eAAXlsD,EAAEG,KACZ+rD,KAAgB,SAAWlsD,KAAiB,IAAZA,EAAEwyB,MAAvC,CACA,GAAInoB,EAAErW,OAAO+vD,WAAajF,EAAmB9+C,EAAG,IAAMqK,EAAErW,OAAOgwD,gBAE3D,YADA35C,EAAEsqB,YAAa,EAGnB,KAAItqB,EAAErW,OAAO8vD,cACJhF,EAAmB9+C,EAAGqK,EAAErW,OAAO8vD,cADxC,CAcA,GAXAtkD,GAAY,EACZC,GAAU,EACVX,EAAc1H,OACd+0D,EAAc/0D,OACdiT,EAAEwhD,QAAQC,OAASzhD,EAAEwhD,QAAQG,SAAsB,eAAXhsD,EAAEG,KAAwBH,EAAEI,cAAc,GAAGC,MAAQL,EAAEK,MAC/FgK,EAAEwhD,QAAQE,OAAS1hD,EAAEwhD,QAAQI,SAAsB,eAAXjsD,EAAEG,KAAwBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,MAC/FtB,EAAiBuB,KAAK2/B,MACtB91B,EAAEsqB,YAAa,EACftqB,EAAEy8C,sBACFz8C,EAAEgiD,eAAiBj1D,OACfiT,EAAErW,OAAOqqB,UAAY,IAAGmtC,GAAqB,GAClC,eAAXxrD,EAAEG,KAAuB,CACzB,GAAIwB,IAAiB,CACjB7M,GAAEkL,EAAEiB,QAAQE,GAAGwqD,KAAehqD,GAAiB,GAC/CxL,SAAS27B,eAAiBh9B,EAAEqB,SAAS27B,eAAe3wB,GAAGwqD,IACvDx1D,SAAS27B,cAAcxmB,OAEvB3J,GACA3B,EAAE2B,iBAGV0I,EAAEo1C,KAAK,eAAgBp1C,EAAGrK,MAG9BqK,EAAEqgD,YAAc,SAAU1qD,GAEtB,GADIA,EAAEosD,gBAAepsD,EAAIA,EAAEosD,iBACvBF,GAA2B,cAAXlsD,EAAEG,MAClBH,EAAEssD,yBAAN,CACA,GAAIjiD,EAAErW,OAAO0uD,aAGT,MAFAjjD,IAAU,OACV4K,EAAEsqB,YAAa,EAGnB,IAAIu3B,GAAgB/1D,SAAS27B,eACrB9xB,EAAEiB,SAAW9K,SAAS27B,eAAiBh9B,EAAEkL,EAAEiB,QAAQE,GAAGwqD,GAGtD,MAFAlsD,IAAU,OACV4K,EAAEsqB,YAAa,EAOvB,IAFAtqB,EAAEo1C,KAAK,cAAep1C,EAAGrK,KAErBA,EAAEI,eAAiBJ,EAAEI,cAAcvK,OAAS,GAAhD,CAKA,GAHAwU,EAAEwhD,QAAQG,SAAsB,cAAXhsD,EAAEG,KAAuBH,EAAEI,cAAc,GAAGC,MAAQL,EAAEK,MAC3EgK,EAAEwhD,QAAQI,SAAsB,cAAXjsD,EAAEG,KAAuBH,EAAEI,cAAc,GAAGG,MAAQP,EAAEO,MAEhD,mBAAhBzB,GAA6B,CACpC,GAAIqjD,GAA4H,IAA/GxhD,KAAK4rD,MAAM5rD,KAAKC,IAAIyJ,EAAEwhD,QAAQI,SAAW5hD,EAAEwhD,QAAQE,QAASprD,KAAKC,IAAIyJ,EAAEwhD,QAAQG,SAAW3hD,EAAEwhD,QAAQC,SAAiBnrD,KAAK44C,EAC3Iz6C,GAAc8pC,IAAQuZ,EAAa93C,EAAErW,OAAOmuD,WAAc,GAAKA,EAAa93C,EAAErW,OAAOmuD,WAUzF,GARIrjD,GACAuL,EAAEo1C,KAAK,sBAAuBp1C,EAAGrK,GAEV,mBAAhBmsD,IAA+B9hD,EAAEmgD,QAAQgC,UAC5CniD,EAAEwhD,QAAQG,WAAa3hD,EAAEwhD,QAAQC,QAAUzhD,EAAEwhD,QAAQI,WAAa5hD,EAAEwhD,QAAQE,UAC5EI,GAAc,GAGjB3sD,EAAL,CACA,GAAIV,EAEA,YADAU,GAAY,EAGhB,IAAK2sD,IAAe9hD,EAAEmgD,QAAQgC,QAA9B,CAGAniD,EAAEsqB,YAAa,EACftqB,EAAEo1C,KAAK,eAAgBp1C,EAAGrK,GAC1BA,EAAE2B,iBACE0I,EAAErW,OAAO2uD,2BAA6Bt4C,EAAErW,OAAOu2D,QAC/CvqD,EAAE60B,kBAGDp1B,IACGzL,EAAO2lC,MACPtvB,EAAEo0C,UAENpwB,EAAiBhkB,EAAEoiD,sBACnBpiD,EAAEqiD,qBAAqB,GACnBriD,EAAEw+B,WACFx+B,EAAEi6B,QAAQ1uC,QAAQ,oFAElByU,EAAErW,OAAOuqD,UAAYl0C,EAAEo8C,cACnBp8C,EAAErW,OAAOmsD,6BACT91C,EAAEu0C,eAGFv0C,EAAEu8C,iBAGV8E,GAAsB,EAElBrhD,EAAErW,OAAOovD,aACT/4C,EAAE7M,UAAU,GAAG6E,MAAM4jD,OAAS,OAC9B57C,EAAE7M,UAAU,GAAG6E,MAAM4jD,OAAS,mBAC9B57C,EAAE7M,UAAU,GAAG6E,MAAM4jD,OAAS,eAC9B57C,EAAE7M,UAAU,GAAG6E,MAAM4jD,OAAS,aAGtCxmD,GAAU,CAEV,IAAIsI,GAAOsC,EAAEwhD,QAAQ9jD,KAAO6gC,IAAQv+B,EAAEwhD,QAAQG,SAAW3hD,EAAEwhD,QAAQC,OAASzhD,EAAEwhD,QAAQI,SAAW5hD,EAAEwhD,QAAQE,MAE3GhkD,IAAcsC,EAAErW,OAAOkuD,WACnB73C,EAAE9N,MAAKwL,GAAQA,GAEnBsC,EAAEgiD,eAAiBtkD,EAAO,EAAI,OAAS,OACvCs8B,EAAmBt8B,EAAOsmB,CAE1B,IAAIs+B,IAAsB,CAsB1B,IArBK5kD,EAAO,GAAKs8B,EAAmBh6B,EAAEo6B,gBAClCkoB,GAAsB,EAClBtiD,EAAErW,OAAOgvD,aAAY3e,EAAmBh6B,EAAEo6B,eAAiB,EAAI9jC,KAAKmiB,KAAKzY,EAAEo6B,eAAiBpW,EAAiBtmB,EAAMsC,EAAErW,OAAOivD,mBAEpH,EAAPl7C,GAAYs8B,EAAmBh6B,EAAEq6B,iBACtCioB,GAAsB,EAClBtiD,EAAErW,OAAOgvD,aAAY3e,EAAmBh6B,EAAEq6B,eAAiB,EAAI/jC,KAAKmiB,IAAIzY,EAAEq6B,eAAiBrW,EAAiBtmB,EAAMsC,EAAErW,OAAOivD,mBAG/H0J,IACA3sD,EAAEssD,yBAA0B,IAI3BjiD,EAAErW,OAAO6vD,kBAAyC,SAArBx5C,EAAEgiD,gBAAgDh+B,EAAnBgW,IAC7DA,EAAmBhW,IAElBhkB,EAAErW,OAAO4vD,kBAAyC,SAArBv5C,EAAEgiD,gBAA6BhoB,EAAmBhW,IAChFgW,EAAmBhW,GAGlBhkB,EAAErW,OAAOyuD,aAAd,CAGA,GAAIp4C,EAAErW,OAAOqqB,UAAY,EAAG,CACxB,KAAI1d,KAAKC,IAAImH,GAAQsC,EAAErW,OAAOqqB,WAAamtC,GAYvC,YADAnnB,EAAmBhW,EAVnB,KAAKm9B,EAMD,MALAA,IAAqB,EACrBnhD,EAAEwhD,QAAQC,OAASzhD,EAAEwhD,QAAQG,SAC7B3hD,EAAEwhD,QAAQE,OAAS1hD,EAAEwhD,QAAQI,SAC7B5nB,EAAmBhW,OACnBhkB,EAAEwhD,QAAQ9jD,KAAO6gC,IAAQv+B,EAAEwhD,QAAQG,SAAW3hD,EAAEwhD,QAAQC,OAASzhD,EAAEwhD,QAAQI,SAAW5hD,EAAEwhD,QAAQE,SAUxG1hD,EAAErW,OAAO6uC,UAAYx4B,EAAErW,OAAOkvD,sBAC9B74C,EAAE8+C,oBAEF9+C,EAAErW,OAAO6uC,WAEiB,IAAtB+oB,EAAW/1D,QACX+1D,EAAW5tD,MACPqF,SAAUgH,EAAEwhD,QAAQjjB,IAAQ,SAAW,UACvCl5B,KAAMzQ,IAGd2sD,EAAW5tD,MACPqF,SAAUgH,EAAEwhD,QAAQjjB,IAAQ,WAAa,YACzCl5B,MAAM,GAAK5b,QAAO0M,MAAQC,aAIlC4J,EAAE4+C,eAAe5kB,GAEjBh6B,EAAEy/C,oBAAoBzlB,SAE1Bh6B,EAAE2zB,WAAa,SAAUh+B,GAGrB,GAFIA,EAAEosD,gBAAepsD,EAAIA,EAAEosD,eAC3B/hD,EAAEo1C,KAAK,aAAcp1C,EAAGrK,GACnBR,EAAL,CAEI6K,EAAErW,OAAOovD,YAAc3jD,GAAWD,IAClC6K,EAAE7M,UAAU,GAAG6E,MAAM4jD,OAAS,OAC9B57C,EAAE7M,UAAU,GAAG6E,MAAM4jD,OAAS,eAC9B57C,EAAE7M,UAAU,GAAG6E,MAAM4jD,OAAS,YAC9B57C,EAAE7M,UAAU,GAAG6E,MAAM4jD,OAAS,OAIlC,IAAInhB,GAAetkC,KAAK2/B,MACpBr9B,EAAWgiC,EAAe7lC,CA4B9B,IAzBIoL,EAAEsqB,aACFtqB,EAAE4gD,mBAAmBjrD,GACrBqK,EAAEo1C,KAAK,QAASp1C,EAAGrK,GACJ,IAAX8C,GAAmBgiC,EAAenR,EAAiB,MAC/C83B,GAAc58C,aAAa48C,GAC/BA,EAAen1D,WAAW,WACjB+T,IACDA,EAAErW,OAAO8uD,gBAAkBz4C,EAAEo7C,oBAAoB5vD,OAAS,IAAMf,EAAEkL,EAAEiB,QAAQxL,SAAS4U,EAAErW,OAAOwwD,cAC9Fn6C,EAAEo7C,oBAAoBxhC,YAAY5Z,EAAErW,OAAO2wD,uBAE/Ct6C,EAAEo1C,KAAK,UAAWp1C,EAAGrK,KACtB,MAGQ,IAAX8C,GAAmD,IAAhCgiC,EAAenR,IAC9B83B,GAAc58C,aAAa48C,GAC/BphD,EAAEo1C,KAAK,cAAep1C,EAAGrK,KAIjC2zB,EAAgBnzB,KAAK2/B,MACrB7pC,WAAW,WACH+T,GAAKA,EAAEsqB,aAAYtqB,EAAEsqB,YAAa,IACvC,IAEEn1B,IAAcC,IAAY4K,EAAEgiD,gBAAqC,IAAnBhiD,EAAEwhD,QAAQ9jD,MAAcs8B,IAAqBhW,EAE5F,YADA7uB,EAAYC,GAAU,EAG1BD,GAAYC,GAAU,CAEtB,IAAImtD,EAOJ,IALIA,EADAviD,EAAErW,OAAOyuD,aACIp4C,EAAE9N,IAAM8N,EAAEpH,WAAaoH,EAAEpH,WAGxBohC,EAEdh6B,EAAErW,OAAO6uC,SAAU,CACnB,GAAI+pB,GAAcviD,EAAEo6B,eAEhB,WADAp6B,GAAE6wB,QAAQ7wB,EAAE2wB,YAGX,IAAI4xB,GAAcviD,EAAEq6B,eAOrB,WALIr6B,GAAE6wB,QADF7wB,EAAEmxB,OAAO3lC,OAASwU,EAAEw8C,SAAShxD,OACnBwU,EAAEw8C,SAAShxD,OAAS,EAGpBwU,EAAEmxB,OAAO3lC,OAAS,EAKpC,IAAIwU,EAAErW,OAAOosD,iBAAkB,CAC3B,GAAIwL,EAAW/1D,OAAS,EAAG,CACvB,GAAIg3D,GAAgBjB,EAAWr0C,MAAOu1C,EAAgBlB,EAAWr0C,MAE7DniB,EAAWy3D,EAAcxpD,SAAWypD,EAAczpD,SAClDqM,EAAOm9C,EAAcn9C,KAAOo9C,EAAcp9C,IAC9CrF,GAAE06B,SAAW3vC,EAAWsa,EACxBrF,EAAE06B,SAAW16B,EAAE06B,SAAW,EACtBpkC,KAAKC,IAAIyJ,EAAE06B,UAAY,MACvB16B,EAAE06B,SAAW,IAIbr1B,EAAO,MAAQ,GAAI5b,QAAO0M,MAAOC,UAAYosD,EAAcn9C,KAAQ,OACnErF,EAAE06B,SAAW,OAGjB16B,GAAE06B,SAAW,CAGjB6mB,GAAW/1D,OAAS,CACpB,IAAI6qC,GAAmB,IAAOr2B,EAAErW,OAAOqsD,sBACnC0M,EAAmB1iD,EAAE06B,SAAWrE,EAEhCssB,EAAc3iD,EAAEpH,UAAY8pD,CAC5B1iD,GAAE9N,MAAKywD,GAAgBA,EAC3B,IACIC,GADAC,GAAW,EAEXC,EAAsC,GAAvBxsD,KAAKC,IAAIyJ,EAAE06B,UAAiB16B,EAAErW,OAAOusD,2BACxD,IAAIyM,EAAc3iD,EAAEq6B,eACZr6B,EAAErW,OAAOssD,wBACL0M,EAAc3iD,EAAEq6B,gBAAkByoB,IAClCH,EAAc3iD,EAAEq6B,eAAiByoB,GAErCF,EAAsB5iD,EAAEq6B,eACxBwoB,GAAW,EACXxB,GAAsB,GAGtBsB,EAAc3iD,EAAEq6B,mBAGnB,IAAIsoB,EAAc3iD,EAAEo6B,eACjBp6B,EAAErW,OAAOssD,wBACL0M,EAAc3iD,EAAEo6B,eAAiB0oB,IACjCH,EAAc3iD,EAAEo6B,eAAiB0oB,GAErCF,EAAsB5iD,EAAEo6B,eACxByoB,GAAW,EACXxB,GAAsB,GAGtBsB,EAAc3iD,EAAEo6B,mBAGnB,IAAIp6B,EAAErW,OAAOwsD,eAAgB,CAC9B,GACI4M,GADAtiD,EAAI,CAER,KAAKA,EAAI,EAAGA,EAAIT,EAAEw8C,SAAShxD,OAAQiV,GAAK,EACpC,GAAIT,EAAEw8C,SAAS/7C,IAAMkiD,EAAa,CAC9BI,EAAYtiD,CACZ,OAKJkiD,EADArsD,KAAKC,IAAIyJ,EAAEw8C,SAASuG,GAAaJ,GAAersD,KAAKC,IAAIyJ,EAAEw8C,SAASuG,EAAY,GAAKJ,IAAqC,SAArB3iD,EAAEgiD,eACzFhiD,EAAEw8C,SAASuG,GAEX/iD,EAAEw8C,SAASuG,EAAY,GAEpC/iD,EAAE9N,MAAKywD,GAAgBA,GAGhC,GAAmB,IAAf3iD,EAAE06B,SAEErE,EAAmB//B,KAAKC,IADxByJ,EAAE9N,MAC4BywD,EAAc3iD,EAAEpH,WAAaoH,EAAE06B,UAGhCioB,EAAc3iD,EAAEpH,WAAaoH,EAAE06B,cAG/D,IAAI16B,EAAErW,OAAOwsD,eAEd,WADAn2C,GAAEgjD,YAIFhjD,GAAErW,OAAOssD,wBAA0B4M,GACnC7iD,EAAE4+C,eAAegE,GACjB5iD,EAAEqiD,qBAAqBhsB,GACvBr2B,EAAEy/C,oBAAoBkD,GACtB3iD,EAAEizB,oBACFjzB,EAAEw+B,WAAY,EACdx+B,EAAEi6B,QAAQ1gC,cAAc,WACfyG,GAAMqhD,IACXrhD,EAAEo1C,KAAK,mBAAoBp1C,GAE3BA,EAAEqiD,qBAAqBriD,EAAErW,OAAOilC,OAChC5uB,EAAEy/C,oBAAoBmD,GACtB5iD,EAAEi6B,QAAQ1gC,cAAc,WACfyG,GACLA,EAAEkzB,wBAGHlzB,EAAE06B,UACT16B,EAAE4+C,eAAe+D,GACjB3iD,EAAEqiD,qBAAqBhsB,GACvBr2B,EAAEy/C,oBAAoBkD,GACtB3iD,EAAEizB,oBACGjzB,EAAEw+B,YACHx+B,EAAEw+B,WAAY,EACdx+B,EAAEi6B,QAAQ1gC,cAAc,WACfyG,GACLA,EAAEkzB,sBAKVlzB,EAAE4+C,eAAe+D,GAGrB3iD,EAAE8+C,oBAMN,cAJK9+C,EAAErW,OAAOosD,kBAAoBt9C,GAAYuH,EAAErW,OAAOwuD,gBACnDn4C,EAAE4+C,iBACF5+C,EAAE8+C,sBAMV,GAAInsD,GAAGswD,EAAY,EAAGC,EAAYljD,EAAE88C,gBAAgB,EACpD,KAAKnqD,EAAI,EAAGA,EAAIqN,EAAE68C,WAAWrxD,OAAQmH,GAAKqN,EAAErW,OAAOguD,eACU,mBAA9C33C,GAAE68C,WAAWlqD,EAAIqN,EAAErW,OAAOguD,gBAC7B4K,GAAcviD,EAAE68C,WAAWlqD,IAAM4vD,EAAaviD,EAAE68C,WAAWlqD,EAAIqN,EAAErW,OAAOguD,kBACxEsL,EAAYtwD,EACZuwD,EAAYljD,EAAE68C,WAAWlqD,EAAIqN,EAAErW,OAAOguD,gBAAkB33C,EAAE68C,WAAWlqD,IAIrE4vD,GAAcviD,EAAE68C,WAAWlqD,KAC3BswD,EAAYtwD,EACZuwD,EAAYljD,EAAE68C,WAAW78C,EAAE68C,WAAWrxD,OAAS,GAAKwU,EAAE68C,WAAW78C,EAAE68C,WAAWrxD,OAAS,GAMnG,IAAI23D,IAASZ,EAAaviD,EAAE68C,WAAWoG,IAAcC,CAErD,IAAIzqD,EAAWuH,EAAErW,OAAOwuD,aAAc,CAElC,IAAKn4C,EAAErW,OAAOsuD,WAEV,WADAj4C,GAAE6wB,QAAQ7wB,EAAE2wB,YAGS,UAArB3wB,EAAEgiD,gBACqChiD,EAAE6wB,QAArCsyB,GAASnjD,EAAErW,OAAOuuD,gBAA2B+K,EAAYjjD,EAAErW,OAAOguD,eACvDsL,GAGM,SAArBjjD,EAAEgiD,gBAC0ChiD,EAAE6wB,QAA1CsyB,EAAS,EAAInjD,EAAErW,OAAOuuD,gBAA4B+K,EAAYjjD,EAAErW,OAAOguD,eAC5DsL,OAGlB,CAED,IAAKjjD,EAAErW,OAAOquD,YAEV,WADAh4C,GAAE6wB,QAAQ7wB,EAAE2wB,YAGS,UAArB3wB,EAAEgiD,gBACFhiD,EAAE6wB,QAAQoyB,EAAYjjD,EAAErW,OAAOguD,gBAGV,SAArB33C,EAAEgiD,gBACFhiD,EAAE6wB,QAAQoyB,MAOtBjjD,EAAEw0C,SAAW,SAAU4O,EAAYx0B,GAC/B,MAAO5uB,GAAE6wB,QAAQuyB,EAAYx0B,GAAO,GAAM,IAE9C5uB,EAAE6wB,QAAU,SAAUuyB,EAAYx0B,EAAOy0B,EAAc1hD,GACvB,mBAAjB0hD,KAA8BA,GAAe,GAC9B,mBAAfD,KAA4BA,EAAa,GACnC,EAAbA,IAAgBA,EAAa,GACjCpjD,EAAE++C,UAAYzoD,KAAKu/B,MAAMutB,EAAapjD,EAAErW,OAAOguD,gBAC3C33C,EAAE++C,WAAa/+C,EAAEw8C,SAAShxD,SAAQwU,EAAE++C,UAAY/+C,EAAEw8C,SAAShxD,OAAS,EAExE,IAAIoN,IAAcoH,EAAEw8C,SAASx8C,EAAE++C,UAG/B,KAAK/+C,EAAErW,OAAO6vD,kBAAoB5gD,EAAYoH,EAAEpH,UAC5C,OAAO,CAEX,KAAKoH,EAAErW,OAAO4vD,kBAAoB3gD,EAAYoH,EAAEpH,UAC5C,OAAO,CAKPoH,GAAErW,OAAOuqD,UAAYl0C,EAAEo8C,cACnBz6C,IAAa3B,EAAErW,OAAOmsD,6BACtB91C,EAAEu8C,cAAc3tB,GAGhB5uB,EAAEu0C,gBAIVv0C,EAAE4+C,eAAehmD,EAGjB,KAAK,GAAIjG,GAAI,EAAGA,EAAIqN,EAAE68C,WAAWrxD,OAAQmH,KAC/BiG,GAAaoH,EAAE68C,WAAWlqD,KAC5BywD,EAAazwD,EAQrB,IAJqB,mBAAVi8B,KAAuBA,EAAQ5uB,EAAErW,OAAOilC,OACnD5uB,EAAEiyB,cAAgBjyB,EAAE2wB,aAAe,EACnC3wB,EAAE2wB,YAAcyyB,EAEZxqD,IAAcoH,EAAEpH,UAEhB,MADAoH,GAAEg/C,iBACK,CAEXh/C,GAAEg/C,gBACFh/C,EAAEizB,kBAAkBowB,EACH9kB,KAAQ3lC,EAAY,EAAgB2lC,IAAQ,EAAI3lC,CAmBjE,OAlBc,KAAVg2B,GACA5uB,EAAEqiD,qBAAqB,GACvBriD,EAAEy/C,oBAAoB7mD,GACtBoH,EAAEkzB,gBAAgBmwB,KAGlBrjD,EAAEqiD,qBAAqBzzB,GACvB5uB,EAAEy/C,oBAAoB7mD,GACjBoH,EAAEw+B,YACHx+B,EAAEw+B,WAAY,EACdx+B,EAAEi6B,QAAQ1gC,cAAc,WACfyG,GACLA,EAAEkzB,gBAAgBmwB,QAMvB,GAGXrjD,EAAEizB,kBAAoB,SAAUowB,GACA,mBAAjBA,KAA8BA,GAAe,GACpDrjD,EAAEsjD,MAAMtjD,EAAEsjD,KAAKrwB,oBACfowB,IACArjD,EAAEo1C,KAAK,oBAAqBp1C,GACxBA,EAAE2wB,cAAgB3wB,EAAEiyB,eACpBjyB,EAAEo1C,KAAK,qBAAsBp1C,KAIzCA,EAAEkzB,gBAAkB,SAAUmwB,GAC1BrjD,EAAEw+B,WAAY,EACdx+B,EAAEqiD,qBAAqB,GACK,mBAAjBgB,KAA8BA,GAAe,GACpDrjD,EAAEsjD,MAAMtjD,EAAEsjD,KAAKpwB,kBACfmwB,IACArjD,EAAEo1C,KAAK,kBAAmBp1C,GACtBA,EAAE2wB,cAAgB3wB,EAAEiyB,eACpBjyB,EAAEo1C,KAAK,mBAAoBp1C,IAG/BA,EAAErW,OAAO4tD,SAAWv3C,EAAEu3C,SACtBv3C,EAAEu3C,QAAQgM,WAIlBvjD,EAAE0gD,UAAY,SAAU2C,EAAcz0B,EAAOjtB,GACzC,GAAI3B,EAAErW,OAAO2lC,KAAM,CACf,GAAItvB,EAAEw+B,UAAW,OAAO,CACxBx+B,GAAEo0C,SACF,EAAiBp0C,EAAE7M,UAAU,GAAG+Y,WAChC,MAAOlM,GAAE6wB,QAAQ7wB,EAAE2wB,YAAc3wB,EAAErW,OAAOguD,eAAgB/oB,EAAOy0B,EAAc1hD,GAE9E,MAAO3B,GAAE6wB,QAAQ7wB,EAAE2wB,YAAc3wB,EAAErW,OAAOguD,eAAgB/oB,EAAOy0B,EAAc1hD,IAExF3B,EAAEq0C,WAAa,SAAUzlB,GACrB,MAAO5uB,GAAE0gD,WAAU,EAAM9xB,GAAO,IAEpC5uB,EAAE2gD,UAAY,SAAU0C,EAAcz0B,EAAOjtB,GACzC,GAAI3B,EAAErW,OAAO2lC,KAAM,CACf,GAAItvB,EAAEw+B,UAAW,OAAO,CACxBx+B,GAAEo0C,SACF,EAAiBp0C,EAAE7M,UAAU,GAAG+Y,WAChC,MAAOlM,GAAE6wB,QAAQ7wB,EAAE2wB,YAAc,EAAG/B,EAAOy0B,EAAc1hD,GAExD,MAAO3B,GAAE6wB,QAAQ7wB,EAAE2wB,YAAc,EAAG/B,EAAOy0B,EAAc1hD,IAElE3B,EAAEwjD,WAAa,SAAU50B,GACrB,MAAO5uB,GAAE2gD,WAAU,EAAM/xB,GAAO,IAEpC5uB,EAAEgjD,WAAa,SAAUK,EAAcz0B,EAAOjtB,GAC1C,MAAO3B,GAAE6wB,QAAQ7wB,EAAE2wB,YAAa/B,EAAOy0B,IAM3CrjD,EAAEqiD,qBAAuB,SAAUvrC,EAAU2sC,GACzCzjD,EAAEi6B,QAAQ75B,WAAW0W,GACG,UAApB9W,EAAErW,OAAO4pB,QAAsBvT,EAAE0jD,QAAQ1jD,EAAErW,OAAO4pB,SAClDvT,EAAE0jD,QAAQ1jD,EAAErW,OAAO4pB,QAAQowC,cAAc7sC,GAEzC9W,EAAErW,OAAOstD,UAAYj3C,EAAEi3C,UACvBj3C,EAAEi3C,SAAS0M,cAAc7sC,GAEzB9W,EAAErW,OAAOutD,WAAal3C,EAAEk3C,WACxBl3C,EAAEk3C,UAAUyM,cAAc7sC,GAE1B9W,EAAErW,OAAO0vD,SAAWr5C,EAAE4jD,YACtB5jD,EAAE4jD,WAAWD,cAAc7sC,EAAU2sC,GAEzCzjD,EAAEo1C,KAAK,kBAAmBp1C,EAAG8W,IAEjC9W,EAAEy/C,oBAAsB,SAAU7mD,EAAWkmD,EAAmB2E,GAC5D,GAAI5tD,GAAI,EAAGI,EAAI,EAAG4tD,EAAI,CAClBtlB,KACA1oC,EAAImK,EAAE9N,KAAO0G,EAAYA,EAGzB3C,EAAI2C,EAEHoH,EAAErW,OAAO0sD,kBACkBr2C,EAAEi6B,QAAQliC,UAAlCiI,EAAEpO,QAAQupD,aAAkC,eAAiBtlD,EAAI,OAASI,EAAI,OAAS4tD,EAAI,MACtE,aAAehuD,EAAI,OAASI,EAAI,OAG7D+J,EAAEpH,UAAY2lC,IAAQ1oC,EAAII,EAEtB6oD,GAAmB9+C,EAAE8+C,oBACD,UAApB9+C,EAAErW,OAAO4pB,QAAsBvT,EAAE0jD,QAAQ1jD,EAAErW,OAAO4pB,SAClDvT,EAAE0jD,QAAQ1jD,EAAErW,OAAO4pB,QAAQuwC,aAAa9jD,EAAEpH,WAE1CoH,EAAErW,OAAOstD,UAAYj3C,EAAEi3C,UACvBj3C,EAAEi3C,SAAS6M,aAAa9jD,EAAEpH,WAE1BoH,EAAErW,OAAOutD,WAAal3C,EAAEk3C,WACxBl3C,EAAEk3C,UAAU4M,aAAa9jD,EAAEpH,WAE3BoH,EAAErW,OAAO0vD,SAAWr5C,EAAE4jD,YACtB5jD,EAAE4jD,WAAWE,aAAa9jD,EAAEpH,UAAW6qD,GAE3CzjD,EAAEo1C,KAAK,iBAAkBp1C,EAAGA,EAAEpH,YAGlCoH,EAAE01B,aAAe,SAAUxgC,EAAI44C,GAC3B,GAAIC,GAAQC,EAAcC,EAAUC,CAOpC,OAJoB,mBAATJ,KACPA,EAAO,KAGP9tC,EAAErW,OAAO0sD,iBACFr2C,EAAE9N,KAAO8N,EAAEpH,UAAYoH,EAAEpH,WAGpCq1C,EAAWxkD,OAAO4+C,iBAAiBnzC,EAAI,MACnCzL,OAAO0kD,gBAGPD,EAAkB,GAAIzkD,QAAO0kD,gBAA6C,SAA7BF,EAAS5H,gBAA6B,GAAK4H,EAAS5H,kBAGjG6H,EAAkBD,EAASzH,cAAgByH,EAASxH,YAAcwH,EAAS3H,aAAe2H,EAAS1H,aAAgB0H,EAASl2C,WAAak2C,EAASjG,iBAAiB,aAAaj+C,QAAQ,aAAc,sBACtMgkD,EAASG,EAAgB9nC,WAAWlS,MAAM,MAGjC,MAAT45C,IAGIE,EADAvkD,OAAO0kD,gBACQD,EAAgBE,IAGhBjI,WADQ,KAAlB4H,EAAOviD,OACcuiD,EAAO,IAGPA,EAAO,KAE5B,MAATD,IAGIE,EADAvkD,OAAO0kD,gBACQD,EAAgBG,IAGhBlI,WADQ,KAAlB4H,EAAOviD,OACcuiD,EAAO,IAGPA,EAAO,KAErC/tC,EAAE9N,KAAO87C,IAAcA,GAAgBA,GACpCA,GAAgB,IAE3BhuC,EAAEoiD,oBAAsB,SAAUtU,GAI9B,MAHoB,mBAATA,KACPA,EAAOvP,IAAQ,IAAM,KAElBv+B,EAAE01B,aAAa11B,EAAEi6B,QAAQ,GAAI6T,IAMxC9tC,EAAEw1C,aAoBFx1C,EAAE+jD,cAAgB,WACd,GAAI/jD,EAAErW,OAAO4wD,eAET,IAAK,GADDyJ,GAAmBhkD,EAAE7M,UAAU0D,UAC1BlE,EAAI,EAAGA,EAAIqxD,EAAiBx4D,OAAQmH,IACzCgiD,EAAaqP,EAAiBrxD,GAKtCgiD,GAAa30C,EAAE7M,UAAU,IAAKmiD,WAAW,IAGzCX,EAAa30C,EAAEi6B,QAAQ,IAAKgM,YAAY,KAE5CjmC,EAAEikD,oBAAsB,WACpB,IAAK,GAAItxD,GAAI,EAAGA,EAAIqN,EAAEw1C,UAAUhqD,OAAQmH,IACpCqN,EAAEw1C,UAAU7iD,GAAGuxD,YAEnBlkD,GAAEw1C,cAMNx1C,EAAEmkD,WAAa,WAEXnkD,EAAEi6B,QAAQ/9B,SAAS,IAAM8D,EAAErW,OAAOiwD,WAAa,IAAM55C,EAAErW,OAAOowD,qBAAqBngD,QAEnF,IAAIu3B,GAASnxB,EAAEi6B,QAAQ/9B,SAAS,IAAM8D,EAAErW,OAAOiwD,WAC/C55C,GAAE0xB,aAAepmC,SAAS0U,EAAErW,OAAO+nC,cAAgB1xB,EAAErW,OAAO6tD,cAAe,IAC3Ex3C,EAAE0xB,aAAe1xB,EAAE0xB,aAAe1xB,EAAErW,OAAOyvD,qBACvCp5C,EAAE0xB,aAAeP,EAAO3lC,SACxBwU,EAAE0xB,aAAeP,EAAO3lC,OAG5B,IAA2CmH,GAAvCyxD,KAAoBC,IAOxB,KANAlzB,EAAOx4B,KAAK,SAAUiD,EAAO1G,GACzB,GAAIk+B,GAAQ3oC,EAAEC,KACVkR,GAAQoE,EAAE0xB,cAAc2yB,EAAa1wD,KAAKuB,GAC1C0G,EAAQu1B,EAAO3lC,QAAUoQ,GAASu1B,EAAO3lC,OAASwU,EAAE0xB,cAAc0yB,EAAczwD,KAAKuB,GACzFk+B,EAAMhhC,KAAK,0BAA2BwJ,KAErCjJ,EAAI,EAAGA,EAAI0xD,EAAa74D,OAAQmH,IACjCqN,EAAEi6B,QAAQ9iC,OAAO1M,EAAE45D,EAAa1xD,GAAGw2C,WAAU,IAAO72C,SAAS0N,EAAErW,OAAOowD,qBAE1E,KAAKpnD,EAAIyxD,EAAc54D,OAAS,EAAGmH,GAAK,EAAGA,IACvCqN,EAAEi6B,QAAQsH,QAAQ92C,EAAE25D,EAAczxD,GAAGw2C,WAAU,IAAO72C,SAAS0N,EAAErW,OAAOowD,uBAGhF/5C,EAAEskD,YAAc,WACZtkD,EAAEi6B,QAAQ/9B,SAAS,IAAM8D,EAAErW,OAAOiwD,WAAa,IAAM55C,EAAErW,OAAOowD,qBAAqBngD,SACnFoG,EAAEmxB,OAAOyU,WAAW,4BAExB5lC,EAAEo0C,QAAU,WACR,GAAIx5B,EAEA5a,GAAE2wB,YAAc3wB,EAAE0xB,cAClB9W,EAAW5a,EAAEmxB,OAAO3lC,OAA0B,EAAjBwU,EAAE0xB,aAAmB1xB,EAAE2wB,YACpD/V,GAAsB5a,EAAE0xB,aACxB1xB,EAAE6wB,QAAQjW,EAAU,GAAG,GAAO,KAGG,SAA3B5a,EAAErW,OAAO6tD,eAA4Bx3C,EAAE2wB,aAAgC,EAAjB3wB,EAAE0xB,cAAsB1xB,EAAE2wB,YAAc3wB,EAAEmxB,OAAO3lC,OAAkC,EAAzBwU,EAAErW,OAAO6tD,iBAC/H58B,GAAY5a,EAAEmxB,OAAO3lC,OAASwU,EAAE2wB,YAAc3wB,EAAE0xB,aAChD9W,GAAsB5a,EAAE0xB,aACxB1xB,EAAE6wB,QAAQjW,EAAU,GAAG,GAAO,KAMtC5a,EAAEukD,YAAc,SAAUpzB,GAItB,GAHInxB,EAAErW,OAAO2lC,MACTtvB,EAAEskD,cAEgB,gBAAXnzB,IAAuBA,EAAO3lC,OACrC,IAAK,GAAImH,GAAI,EAAGA,EAAIw+B,EAAO3lC,OAAQmH,IAC3Bw+B,EAAOx+B,IAAIqN,EAAEi6B,QAAQ9iC,OAAOg6B,EAAOx+B,QAI3CqN,GAAEi6B,QAAQ9iC,OAAOg6B,EAEjBnxB,GAAErW,OAAO2lC,MACTtvB,EAAEmkD,aAEAnkD,EAAErW,OAAOorD,UAAY/0C,EAAEpO,QAAQmjD,UACjC/0C,EAAEsgB,QAAO,IAGjBtgB,EAAEwkD,aAAe,SAAUrzB,GACnBnxB,EAAErW,OAAO2lC,MACTtvB,EAAEskD,aAEN,IAAI9oB,GAAiBx7B,EAAE2wB,YAAc,CACrC,IAAsB,gBAAXQ,IAAuBA,EAAO3lC,OAAQ,CAC7C,IAAK,GAAImH,GAAI,EAAGA,EAAIw+B,EAAO3lC,OAAQmH,IAC3Bw+B,EAAOx+B,IAAIqN,EAAEi6B,QAAQsH,QAAQpQ,EAAOx+B,GAE5C6oC,GAAiBx7B,EAAE2wB,YAAcQ,EAAO3lC,WAGxCwU,GAAEi6B,QAAQsH,QAAQpQ,EAElBnxB,GAAErW,OAAO2lC,MACTtvB,EAAEmkD,aAEAnkD,EAAErW,OAAOorD,UAAY/0C,EAAEpO,QAAQmjD,UACjC/0C,EAAEsgB,QAAO,GAEbtgB,EAAE6wB,QAAQ2K,EAAgB,GAAG,IAEjCx7B,EAAEykD,YAAc,SAAUC,GAClB1kD,EAAErW,OAAO2lC,OACTtvB,EAAEskD,cACFtkD,EAAEmxB,OAASnxB,EAAEi6B,QAAQ/9B,SAAS,IAAM8D,EAAErW,OAAOiwD,YAEjD,IACI+K,GADAnpB,EAAiBx7B,EAAE2wB,WAEvB,IAA6B,gBAAlB+zB,IAA8BA,EAAcl5D,OAAQ,CAC3D,IAAK,GAAImH,GAAI,EAAGA,EAAI+xD,EAAcl5D,OAAQmH,IACtCgyD,EAAgBD,EAAc/xD,GAC1BqN,EAAEmxB,OAAOwzB,IAAgB3kD,EAAEmxB,OAAO78B,GAAGqwD,GAAe/qD,SACpC4hC,EAAhBmpB,GAAgCnpB,GAExCA,GAAiBllC,KAAK2b,IAAIupB,EAAgB,OAG1CmpB,GAAgBD,EACZ1kD,EAAEmxB,OAAOwzB,IAAgB3kD,EAAEmxB,OAAO78B,GAAGqwD,GAAe/qD,SACpC4hC,EAAhBmpB,GAAgCnpB,IACpCA,EAAiBllC,KAAK2b,IAAIupB,EAAgB,EAG1Cx7B,GAAErW,OAAO2lC,MACTtvB,EAAEmkD,aAGAnkD,EAAErW,OAAOorD,UAAY/0C,EAAEpO,QAAQmjD,UACjC/0C,EAAEsgB,QAAO,GAETtgB,EAAErW,OAAO2lC,KACTtvB,EAAE6wB,QAAQ2K,EAAiBx7B,EAAE0xB,aAAc,GAAG,GAG9C1xB,EAAE6wB,QAAQ2K,EAAgB,GAAG,IAIrCx7B,EAAE4kD,gBAAkB,WAEhB,IAAK,GADDF,MACK/xD,EAAI,EAAGA,EAAIqN,EAAEmxB,OAAO3lC,OAAQmH,IACjC+xD,EAAc/wD,KAAKhB,EAEvBqN,GAAEykD,YAAYC,IAOlB1kD,EAAE0jD,SACE3M,MACI8N,UAAW,KACXf,aAAc,WACV,IAAK,GAAInxD,GAAI,EAAGA,EAAIqN,EAAEmxB,OAAO3lC,OAAQmH,IAAK,CACtC,GAAIygC,GAAQpzB,EAAEmxB,OAAO78B,GAAG3B,GACpBqE,EAASo8B,EAAM,GAAGgrB,kBAClB0G,GAAM9tD,CACLgJ,GAAErW,OAAO0sD,mBAAkByO,GAAU9kD,EAAEpH,UAC5C,IAAImsD,GAAK,CACJxmB,OACDwmB,EAAKD,EACLA,EAAK,EAET,IAAIE,GAAehlD,EAAErW,OAAOotD,KAAKC,UACzB1gD,KAAK2b,IAAI,EAAI3b,KAAKC,IAAI68B,EAAM,GAAGjb,UAAW,GAC1C,EAAI7hB,KAAK4b,IAAI5b,KAAK2b,IAAImhB,EAAM,GAAGjb,SAAU,IAAK,EAClD6sC,GAAe,GAAoB,EAAfA,IACpBhlD,EAAE0jD,QAAQ3M,KAAK8N,UAAYlyD,GAE/BygC,EACKjhC,KACG8F,QAAS+sD,IAEZjtD,UAAU,eAAiB+sD,EAAK,OAASC,EAAK,cAI3DpB,cAAe,SAAU7sC,GAErB,GADA9W,EAAEmxB,OAAO/wB,WAAW0W,GAChB9W,EAAErW,OAAO0sD,kBAAiC,IAAbv/B,EAAgB,CAC7C,GAAI+tC,GAAyC,OAA7B7kD,EAAE0jD,QAAQ3M,KAAK8N,UAAqB7kD,EAAE0jD,QAAQ3M,KAAK8N,UAAY7kD,EAAE2wB,WAC3E3wB,GAAErW,OAAO2lC,MAAQtvB,EAAErW,OAAOotD,KAAKC,WAA4B,IAAd6N,IAC/CA,EAAY7kD,EAAEmxB,OAAO3lC,OAAS,GAElCwU,EAAEmxB,OAAO78B,GAAGuwD,GAAWtrD,cAAc,WACjC,GAAKyG,EAEL,IAAK,GADDilD,IAAiB,sBAAuB,gBAAiB,iBAAkB,kBAAmB,mBACzFtyD,EAAI,EAAGA,EAAIsyD,EAAcz5D,OAAQmH,IACtCqN,EAAEi6B,QAAQ1uC,QAAQ05D,EAActyD,SAMpDgkD,MACImN,aAAc,WACV,GAAuBoB,GAAnBC,EAAgB,CAChBnlD,GAAErW,OAAOgtD,KAAKC,SACVrY,KACA2mB,EAAallD,EAAEi6B,QAAQ/uC,KAAK,uBACF,IAAtBg6D,EAAW15D,SACX05D,EAAaz6D,EAAE,0CACfuV,EAAEi6B,QAAQ9iC,OAAO+tD,IAErBA,EAAW/yD,KAAKtH,OAAQmV,EAAErJ,MAAQ,SAGlCuuD,EAAallD,EAAE7M,UAAUjI,KAAK,uBACJ,IAAtBg6D,EAAW15D,SACX05D,EAAaz6D,EAAE,0CACfuV,EAAE7M,UAAUgE,OAAO+tD,KAI/B,KAAK,GAAIvyD,GAAI,EAAGA,EAAIqN,EAAEmxB,OAAO3lC,OAAQmH,IAAK,CACtC,GAAIygC,GAAQpzB,EAAEmxB,OAAO78B,GAAG3B,GACpByyD,EAAiB,GAAJzyD,EACbmF,EAAQxB,KAAKu/B,MAAMuvB,EAAa,IAChCplD,GAAE9N,MACFkzD,GAAcA,EACdttD,EAAQxB,KAAKu/B,OAAOuvB,EAAa,KAErC,IAAIjtC,GAAW7hB,KAAK2b,IAAI3b,KAAK4b,IAAIkhB,EAAM,GAAGjb,SAAU,GAAI,IACpD2sC,EAAK,EAAGC,EAAK,EAAGM,EAAK,CACrB1yD,GAAI,IAAM,GACVmyD,EAAe,GAARhtD,EAAYkI,EAAE28C,KACrB0I,EAAK,IAEC1yD,EAAI,GAAK,IAAM,GACrBmyD,EAAK,EACLO,EAAe,GAARvtD,EAAYkI,EAAE28C,OAEfhqD,EAAI,GAAK,IAAM,GACrBmyD,EAAK9kD,EAAE28C,KAAe,EAAR7kD,EAAYkI,EAAE28C,KAC5B0I,EAAKrlD,EAAE28C,OAEDhqD,EAAI,GAAK,IAAM,IACrBmyD,GAAO9kD,EAAE28C,KACT0I,EAAK,EAAIrlD,EAAE28C,KAAgB,EAAT38C,EAAE28C,KAAW7kD,GAE/BkI,EAAE9N,MACF4yD,GAAMA,GAGLvmB,MACDwmB,EAAKD,EACLA,EAAK,EAGT,IAAI/sD,GAAY,YAAcwmC,IAAQ,GAAK6mB,GAAc,iBAAmB7mB,IAAQ6mB,EAAa,GAAK,oBAAsBN,EAAK,OAASC,EAAK,OAASM,EAAK,KAM7J,IALgB,GAAZltC,GAAiBA,EAAW,KAC5BgtC,EAAoB,GAAJxyD,EAAoB,GAAXwlB,EACrBnY,EAAE9N,MAAKizD,EAAqB,IAAJxyD,EAAoB,GAAXwlB,IAEzCib,EAAMr7B,UAAUA,GACZiI,EAAErW,OAAOgtD,KAAKD,aAAc,CAE5B,GAAI4O,GAAuBlyB,EAAMloC,KAAdqzC,IAAmB,4BAA0C,4BAC5EgnB,EAAsBnyB,EAAMloC,KAAdqzC,IAAmB,6BAA2C,8BACpD,KAAxB+mB,EAAa95D,SACb85D,EAAe76D,EAAE,oCAAsC8zC,IAAQ,OAAS,OAAS,YACjFnL,EAAMj8B,OAAOmuD,IAEU,IAAvBC,EAAY/5D,SACZ+5D,EAAc96D,EAAE,oCAAsC8zC,IAAQ,QAAU,UAAY,YACpFnL,EAAMj8B,OAAOouD,GAEjB,EAAoBnyB,EAAM,GAAGjb,SACzBmtC,EAAa95D,SAAQ85D,EAAa,GAAGttD,MAAMC,SAAWm7B,EAAM,GAAGjb,UAC/DotC,EAAY/5D,SAAQ+5D,EAAY,GAAGvtD,MAAMC,QAAUm7B,EAAM,GAAGjb,WAUxE,GAPAnY,EAAEi6B,QAAQ9nC,KACNqzD,2BAA4B,YAAexlD,EAAE28C,KAAO,EAAK,KACzD8I,wBAAyB,YAAezlD,EAAE28C,KAAO,EAAK,KACtD+I,uBAAwB,YAAe1lD,EAAE28C,KAAO,EAAK,KACrDgJ,mBAAoB,YAAe3lD,EAAE28C,KAAO,EAAK,OAGjD38C,EAAErW,OAAOgtD,KAAKC,OACd,GAAIrY,IACA2mB,EAAWntD,UAAU,qBAAuBiI,EAAErJ,MAAQ,EAAIqJ,EAAErW,OAAOgtD,KAAKE,cAAgB,QAAW72C,EAAErJ,MAAQ,EAAK,0CAA6CqJ,EAAErW,OAAOgtD,KAAgB,YAAI,SAE3L,CACD,GAAIiP,GAActvD,KAAKC,IAAI4uD,GAA4D,GAA3C7uD,KAAKu/B,MAAMv/B,KAAKC,IAAI4uD,GAAiB,IAC7EU,EAAa,KAAOvvD,KAAKwvD,IAAkB,EAAdF,EAAkBtvD,KAAK44C,GAAK,KAAO,EAAI54C,KAAK24C,IAAkB,EAAd2W,EAAkBtvD,KAAK44C,GAAK,KAAO,GAChH6W,EAAS/lD,EAAErW,OAAOgtD,KAAKG,YACvBkP,EAAShmD,EAAErW,OAAOgtD,KAAKG,YAAc+O,EACrC7uD,EAASgJ,EAAErW,OAAOgtD,KAAKE,YAC3BqO,GAAWntD,UAAU,WAAaguD,EAAS,QAAUC,EAAS,uBAAyBhmD,EAAEnV,OAAS,EAAImM,GAAU,QAAWgJ,EAAEnV,OAAS,EAAIm7D,EAAU,uBAG5J,GAAIC,GAAWjmD,EAAEkmD,UAAYlmD,EAAEmmD,aAAiBnmD,EAAE28C,KAAO,EAAK,CAC9D38C,GAAEi6B,QAAQliC,UAAU,qBAAuBkuD,EAAU,gBAAkB1nB,IAAQ,EAAI4mB,GAAiB,iBAAmB5mB,KAAS4mB,EAAgB,GAAK;;EAEzJxB,cAAe,SAAU7sC,GACrB9W,EAAEmxB,OAAO/wB,WAAW0W,GAAU5rB,KAAK,gHAAgHkV,WAAW0W,GAC1J9W,EAAErW,OAAOgtD,KAAKC,SAAWrY,KACzBv+B,EAAE7M,UAAUjI,KAAK,uBAAuBkV,WAAW0W,KAI/Dw/B,WACIwN,aAAc,WAMV,IAAK,GALD/rD,GAAYiI,EAAEpH,UACdgF,EAAS2gC,KAASxmC,EAAYiI,EAAErJ,MAAQ,GAAKoB,EAAYiI,EAAEnV,OAAS,EACpE0rD,EAAShY,IAAQv+B,EAAErW,OAAO2sD,UAAUC,QAASv2C,EAAErW,OAAO2sD,UAAUC,OAChE39C,EAAYoH,EAAErW,OAAO2sD,UAAU1E,MAE1Bj/C,EAAI,EAAGnH,EAASwU,EAAEmxB,OAAO3lC,OAAYA,EAAJmH,EAAYA,IAAK,CACvD,GAAIygC,GAAQpzB,EAAEmxB,OAAO78B,GAAG3B,GACpB2qD,EAAYt9C,EAAE88C,gBAAgBnqD,GAC9ByzD,EAAchzB,EAAM,GAAGgrB,kBACvBiI,GAAoBzoD,EAASwoD,EAAc9I,EAAY,GAAKA,EAAYt9C,EAAErW,OAAO2sD,UAAUG,SAE3F6P,EAAU/nB,IAAQgY,EAAS8P,EAAmB,EAC9CE,EAAUhoB,IAAQ,EAAIgY,EAAS8P,EAE/BG,GAAc5tD,EAAYtC,KAAKC,IAAI8vD,GAEnCI,EAAaloB,IAAQ,EAAIv+B,EAAErW,OAAO2sD,UAAUE,QAAU,EACtDkQ,EAAanoB,IAAQv+B,EAAErW,OAAO2sD,UAAUE,QAAU,EAAqB,CAGvElgD,MAAKC,IAAImwD,GAAc,OAAOA,EAAa,GAC3CpwD,KAAKC,IAAIkwD,GAAc,OAAOA,EAAa,GAC3CnwD,KAAKC,IAAIiwD,GAAc,OAAOA,EAAa,GAC3ClwD,KAAKC,IAAI+vD,GAAW,OAAOA,EAAU,GACrChwD,KAAKC,IAAIgwD,GAAW,OAAOA,EAAU,EAEzC,IAAII,GAAiB,eAAiBD,EAAa,MAAQD,EAAa,MAAQD,EAAa,gBAAkBD,EAAU,gBAAkBD,EAAU,MAIrJ,IAFAlzB,EAAMr7B,UAAU4uD,GAChBvzB,EAAM,GAAGp7B,MAAM4uD,QAAUtwD,KAAKC,IAAID,KAAKwB,MAAMuuD,IAAqB,EAC9DrmD,EAAErW,OAAO2sD,UAAUI,aAAc,CAEjC,GAAI4O,GAAuBlyB,EAAMloC,KAAdqzC,IAAmB,4BAA0C,4BAC5EgnB,EAAsBnyB,EAAMloC,KAAdqzC,IAAmB,6BAA2C,8BACpD,KAAxB+mB,EAAa95D,SACb85D,EAAe76D,EAAE,oCAAsC8zC,IAAQ,OAAS,OAAS,YACjFnL,EAAMj8B,OAAOmuD,IAEU,IAAvBC,EAAY/5D,SACZ+5D,EAAc96D,EAAE,oCAAsC8zC,IAAQ,QAAU,UAAY,YACpFnL,EAAMj8B,OAAOouD,IAEbD,EAAa95D,SAAQ85D,EAAa,GAAGttD,MAAMC,QAAUouD,EAAmB,EAAIA,EAAmB,GAC/Fd,EAAY/5D,SAAQ+5D,EAAY,GAAGvtD,MAAMC,SAAYouD,EAAoB,GAAKA,EAAmB,IAK7G,GAAIrmD,EAAEmgD,QAAQC,GAAI,CACd,GAAIyG,GAAK7mD,EAAEi6B,QAAQ,GAAGjiC,KACtB6uD,GAAGC,kBAAoBlpD,EAAS,WAGxC+lD,cAAe,SAAU7sC,GACrB9W,EAAEmxB,OAAO/wB,WAAW0W,GAAU5rB,KAAK,gHAAgHkV,WAAW0W,MAQ1K9W,EAAEsjD,MACEyD,oBAAoB,EACpBC,iBAAkB,SAAUprD,EAAOqrD,GAC/B,GAAqB,mBAAVrrD,KACoB,mBAApBqrD,KAAiCA,GAAkB,GACtC,IAApBjnD,EAAEmxB,OAAO3lC,QAAb,CAEA,GAAI4nC,GAAQpzB,EAAEmxB,OAAO78B,GAAGsH,GACpBy3B,EAAMD,EAAMloC,KAAK,oEACjBkoC,EAAMhoC,SAAS,gBAAmBgoC,EAAMhoC,SAAS,uBAA0BgoC,EAAMhoC,SAAS,wBAC1FioC,EAAI/gB,IAAI8gB,EAAM,IAEC,IAAfC,EAAI7nC,QAER6nC,EAAI16B,KAAK,WACL,GAAIuuD,GAAOz8D,EAAEC,KACbw8D,GAAK50D,SAAS,sBACd,IAAI60D,GAAaD,EAAK90D,KAAK,mBACvBgiB,EAAM8yC,EAAK90D,KAAK,WACpB4N,GAAEkU,UAAUgzC,EAAK,GAAK9yC,GAAO+yC,GAAa,EAAO,WAY7C,GAXIA,GACAD,EAAK/0D,IAAI,mBAAoB,OAASg1D,EAAa,KACnDD,EAAKthB,WAAW,qBAGhBshB,EAAK90D,KAAK,MAAOgiB,GACjB8yC,EAAKthB,WAAW,aAGpBshB,EAAK50D,SAAS,sBAAsBC,YAAY,uBAChD6gC,EAAMloC,KAAK,sCAAsC0O,SAC7CoG,EAAErW,OAAO2lC,MAAQ23B,EAAiB,CAClC,GAAIG,GAAqBh0B,EAAMhhC,KAAK,0BACpC,IAAIghC,EAAMhoC,SAAS4U,EAAErW,OAAOowD,qBAAsB,CAC9C,GAAIsN,GAAgBrnD,EAAEi6B,QAAQ/9B,SAAS,6BAA+BkrD,EAAqB,WAAapnD,EAAErW,OAAOowD,oBAAsB,IACvI/5C,GAAEsjD,KAAK0D,iBAAiBK,EAAczrD,SAAS,OAE9C,CACD,GAAI0rD,GAAkBtnD,EAAEi6B,QAAQ/9B,SAAS,IAAM8D,EAAErW,OAAOowD,oBAAsB,6BAA+BqN,EAAqB,KAClIpnD,GAAEsjD,KAAK0D,iBAAiBM,EAAgB1rD,SAAS,IAGzDoE,EAAEo1C,KAAK,mBAAoBp1C,EAAGozB,EAAM,GAAI8zB,EAAK,MAGjDlnD,EAAEo1C,KAAK,kBAAmBp1C,EAAGozB,EAAM,GAAI8zB,EAAK,QAIpD/sD,KAAM,WACF,GAAI6F,EAAErW,OAAOmvD,sBACT94C,EAAEi6B,QAAQ/9B,SAAS,IAAM8D,EAAErW,OAAOmwD,mBAAmBnhD,KAAK,WACtDqH,EAAEsjD,KAAK0D,iBAAiBv8D,EAAEC,MAAMkR,eAIpC,IAAIoE,EAAErW,OAAO6tD,cAAgB,EACzB,IAAK,GAAI7kD,GAAIqN,EAAE2wB,YAAah+B,EAAIqN,EAAE2wB,YAAc3wB,EAAErW,OAAO6tD,cAAgB7kD,IACjEqN,EAAEmxB,OAAOx+B,IAAIqN,EAAEsjD,KAAK0D,iBAAiBr0D,OAI7CqN,GAAEsjD,KAAK0D,iBAAiBhnD,EAAE2wB,YAGlC,IAAI3wB,EAAErW,OAAO6lC,sBAAuB,CAChC,GAAIuzB,GAAY/iD,EAAEi6B,QAAQ/9B,SAAS,IAAM8D,EAAErW,OAAOqwD,eAC9C+I,GAAUv3D,OAAS,GAAGwU,EAAEsjD,KAAK0D,iBAAiBjE,EAAUnnD,QAE5D,IAAI2rD,GAAYvnD,EAAEi6B,QAAQ/9B,SAAS,IAAM8D,EAAErW,OAAOswD,eAC9CsN,GAAU/7D,OAAS,GAAGwU,EAAEsjD,KAAK0D,iBAAiBO,EAAU3rD,WAGpEq3B,kBAAmB,WACXjzB,EAAErW,OAAO4lC,cACLvvB,EAAErW,OAAO8lC,+BAAkCzvB,EAAErW,OAAO8lC,+BAAiCzvB,EAAEsjD,KAAKyD,qBAC5F/mD,EAAEsjD,KAAKnpD,QAInB+4B,gBAAiB,WACTlzB,EAAErW,OAAO4lC,cAAgBvvB,EAAErW,OAAO8lC,8BAClCzvB,EAAEsjD,KAAKnpD,SASnB6F,EAAEk3C,WACEwI,IAAK,WACD,GAAK1/C,EAAErW,OAAOutD,UAAd,CACA,GAAI9zC,GAAKpD,EAAEk3C,SACX9zC,GAAGokD,MAAQ/8D,EAAEuV,EAAErW,OAAOutD,WACtB9zC,EAAGqkD,KAAOrkD,EAAGokD,MAAMt8D,KAAK,0BACD,IAAnBkY,EAAGqkD,KAAKj8D,SACR4X,EAAGqkD,KAAOh9D,EAAE,6CACZ2Y,EAAGokD,MAAMrwD,OAAOiM,EAAGqkD,OAEvBrkD,EAAGqkD,KAAK,GAAGzvD,MAAMrB,MAAQ,GACzByM,EAAGqkD,KAAK,GAAGzvD,MAAMnN,OAAS,GAC1BuY,EAAGskD,UAAYnpB,IAAQn7B,EAAGokD,MAAM,GAAGjpD,YAAc6E,EAAGokD,MAAM,GAAG18D,aAE7DsY,EAAGm0B,QAAUv3B,EAAE28C,KAAO38C,EAAEi9C,YACxB75C,EAAGukD,YAAcvkD,EAAGm0B,SAAWn0B,EAAGskD,UAAY1nD,EAAE28C,MAChDv5C,EAAGwkD,SAAWxkD,EAAGskD,UAAYtkD,EAAGm0B,QAE5BgH,IACAn7B,EAAGqkD,KAAK,GAAGzvD,MAAMrB,MAAQyM,EAAGwkD,SAAW,KAGvCxkD,EAAGqkD,KAAK,GAAGzvD,MAAMnN,OAASuY,EAAGwkD,SAAW,KAIxCxkD,EAAGokD,MAAM,GAAGxvD,MAAMwb,QADlBpQ,EAAGm0B,SAAW,EACc,OAGA,GAE5Bv3B,EAAErW,OAAOwtD,gBACT/zC,EAAGokD,MAAM,GAAGxvD,MAAMC,QAAU,KAGpC6rD,aAAc,WACV,GAAK9jD,EAAErW,OAAOutD,UAAd,CACA,GAGI2Q,GAFAzkD,EAAKpD,EAAEk3C,UAIP4Q,GAHY9nD,EAAEpH,WAAa,EAGjBwK,EAAGwkD,SACjBC,IAAUzkD,EAAGskD,UAAYtkD,EAAGwkD,UAAY5nD,EAAEmY,SACtCnY,EAAE9N,KAAOqsC,KACTspB,GAAUA,EACNA,EAAS,GACTC,EAAU1kD,EAAGwkD,SAAWC,EACxBA,EAAS,IAEHA,EAASzkD,EAAGwkD,SAAWxkD,EAAGskD,YAChCI,EAAU1kD,EAAGskD,UAAYG,IAIhB,EAATA,GACAC,EAAU1kD,EAAGwkD,SAAWC,EACxBA,EAAS,GAEJA,EAASzkD,EAAGwkD,SAAWxkD,EAAGskD,YAC/BI,EAAU1kD,EAAGskD,UAAYG,GAG7BtpB,KAEIn7B,EAAGqkD,KAAK1vD,UADRiI,EAAEpO,QAAQupD,aACQ,eAAiB,EAAW,YAG5B,cAAgB,EAAW,OAEjD/3C,EAAGqkD,KAAK,GAAGzvD,MAAMrB,MAAQmxD,EAAU,OAI/B1kD,EAAGqkD,KAAK1vD,UADRiI,EAAEpO,QAAQupD,aACQ,oBAAsB,EAAW,SAGjC,cAAgB,EAAW,OAEjD/3C,EAAGqkD,KAAK,GAAGzvD,MAAMnN,OAASi9D,EAAU,MAEpC9nD,EAAErW,OAAOwtD,gBACT3yC,aAAapB,EAAG0nC,SAChB1nC,EAAGokD,MAAM,GAAGxvD,MAAMC,QAAU,EAC5BmL,EAAG0nC,QAAU7+C,WAAW,WACpBmX,EAAGokD,MAAM,GAAGxvD,MAAMC,QAAU,EAC5BmL,EAAGokD,MAAMpnD,WAAW,MACrB,QAGXujD,cAAe,SAAU7sC,GAChB9W,EAAErW,OAAOutD,WACdl3C,EAAEk3C,UAAUuQ,KAAKrnD,WAAW0W,KAOpC9W,EAAE4jD,YACEE,aAAc,SAAUlrD,EAAW6qD,GAG/B,QAASsE,GAAuBC,GAC5BpvD,EAAYovD,EAAE91D,KAA8B,eAAvB81D,EAAEr+D,OAAOof,WAA8B/I,EAAEpH,UAAYoH,EAAEpH,UAC5EitD,GAAcmC,EAAE3tB,eAAiB2tB,EAAE5tB,iBAAmBp6B,EAAEq6B,eAAiBr6B,EAAEo6B,gBAC3E6tB,GAAuBrvD,EAAYoH,EAAEo6B,gBAAkByrB,EAAamC,EAAE5tB,eAClEp6B,EAAErW,OAAO2vD,iBACT2O,EAAsBD,EAAE3tB,eAAiB4tB,GAE7CD,EAAEpJ,eAAeqJ,GACjBD,EAAEvI,oBAAoBwI,GAAqB,EAAOjoD,GAClDgoD,EAAElJ,oBAXN,GACI+G,GAAYoC,EADZC,EAAaloD,EAAErW,OAAO0vD,OAa1B,IAAIr5C,EAAE4P,QAAQs4C,GACV,IAAK,GAAIv1D,GAAI,EAAGA,EAAIu1D,EAAW18D,OAAQmH,IAC/Bu1D,EAAWv1D,KAAO8wD,GAAgByE,EAAWv1D,YAAco7B,SAC3Dg6B,EAAuBG,EAAWv1D,QAIrCu1D,aAAsBn6B,SAAU01B,IAAiByE,GACtDH,EAAuBG,IAG/BvE,cAAe,SAAU7sC,EAAU2sC,GAG/B,QAAS0E,GAAwBH,GAC7BA,EAAE3F,qBAAqBvrC,EAAU9W,GAChB,IAAb8W,IACAkxC,EAAE/0B,oBACF+0B,EAAE/tB,QAAQ1gC,cAAc,WACf2uD,GACLF,EAAE90B,qBARd,GACIvgC,GADAu1D,EAAaloD,EAAErW,OAAO0vD,OAY1B,IAAIr5C,EAAE4P,QAAQs4C,GACV,IAAKv1D,EAAI,EAAGA,EAAIu1D,EAAW18D,OAAQmH,IAC3Bu1D,EAAWv1D,KAAO8wD,GAAgByE,EAAWv1D,YAAco7B,SAC3Do6B,EAAwBD,EAAWv1D,QAItCu1D,aAAsBn6B,SAAU01B,IAAiByE,GACtDC,EAAwBD,KA2CpCloD,EAAEi3C,UACE6M,aAAc,WACV9jD,EAAE7M,UAAU+I,SAAS,8EAA8EvD,KAAK,WACpG88C,EAAqB/qD,KAAMsV,EAAEmY,YAGjCnY,EAAEmxB,OAAOx4B,KAAK,WACV,GAAIy6B,GAAQ3oC,EAAEC,KACd0oC,GAAMloC,KAAK,8EAA8EyN,KAAK,WAC1F,GAAIwf,GAAW7hB,KAAK4b,IAAI5b,KAAK2b,IAAImhB,EAAM,GAAGjb,SAAU,IAAK,EACzDs9B,GAAqB/qD,KAAMytB,QAIvCwrC,cAAe,SAAU7sC,GACG,mBAAbA,KAA0BA,EAAW9W,EAAErW,OAAOilC,OACzD5uB,EAAE7M,UAAUjI,KAAK,8EAA8EyN,KAAK,WAChG,GAAIzD,GAAKzK,EAAEC,MACP09D,EAAmB98D,SAAS4J,EAAG9C,KAAK,iCAAkC,KAAO0kB,CAChE,KAAbA,IAAgBsxC,EAAmB,GACvClzD,EAAGkL,WAAWgoD,OAS1BpoD,EAAEikC,WACF,KAAK,GAAIE,KAAUnkC,GAAEokC,QAAS,CAC1B,GAAInN,GAAIj3B,EAAEokC,QAAQD,GAAQnkC,EAAGA,EAAErW,OAAOw6C,GAClClN,IAAGj3B,EAAEikC,SAAStwC,KAAKsjC,GAwR3B,MArRAj3B,GAAEqoD,YAAc,SAAU1nD,GACtB,IAAK,GAAIhO,GAAI,EAAGA,EAAIqN,EAAEikC,SAASz4C,OAAQmH,IAC/BgO,IAAaX,GAAEikC,SAAStxC,IACxBqN,EAAEikC,SAAStxC,GAAGgO,GAAWiO,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIA,UAAU,KAmBvG5O,EAAEsoD,yBAGFtoD,EAAEo1C,KAAO,SAAUz0C,GAEXX,EAAErW,OAAOgX,IACTX,EAAErW,OAAOgX,GAAWiO,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAE1F,IAAIjc,EAEJ,IAAIqN,EAAEsoD,sBAAsB3nD,GACxB,IAAKhO,EAAI,EAAGA,EAAIqN,EAAEsoD,sBAAsB3nD,GAAWnV,OAAQmH,IACvDqN,EAAEsoD,sBAAsB3nD,GAAWhO,GAAGic,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAI5G5O,GAAEqoD,aAAaroD,EAAEqoD,YAAY1nD,EAAWiO,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIA,UAAU,KAElH5O,EAAE+E,GAAK,SAAUpE,EAAWilB,GAIxB,MAHAjlB,GAAYi1C,EAAmBj1C,GAC1BX,EAAEsoD,sBAAsB3nD,KAAYX,EAAEsoD,sBAAsB3nD,OACjEX,EAAEsoD,sBAAsB3nD,GAAWhN,KAAKiyB,GACjC5lB,GAEXA,EAAE8E,IAAM,SAAUnE,EAAWilB,GACzB,GAAIjzB,EAEJ,IADAgO,EAAYi1C,EAAmBj1C,GACR,mBAAZilB,GAGP,MADA5lB,GAAEsoD,sBAAsB3nD,MACjBX,CAEX,IAAKA,EAAEsoD,sBAAsB3nD,IAA4D,IAA9CX,EAAEsoD,sBAAsB3nD,GAAWnV,OAA9E,CACA,IAAKmH,EAAI,EAAGA,EAAIqN,EAAEsoD,sBAAsB3nD,GAAWnV,OAAQmH,IACpDqN,EAAEsoD,sBAAsB3nD,GAAWhO,KAAOizB,GAAS5lB,EAAEsoD,sBAAsB3nD,GAAWsE,OAAOtS,EAAG,EAEvG,OAAOqN,KAEXA,EAAEsD,KAAO,SAAU3C,EAAWilB,GAC1BjlB,EAAYi1C,EAAmBj1C,EAC/B,IAAI4nD,GAAW,WACX3iC,EAAQhX,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIA,UAAU,GAAIA,UAAU,IAC1E5O,EAAE8E,IAAInE,EAAW4nD,GAGrB,OADAvoD,GAAE+E,GAAGpE,EAAW4nD,GACTvoD,GAIXA,EAAEw6C,MACEgO,cAAe,SAAU7gC,GAErB,MADAA,GAAI,GAAG8gC,SAAW,IACX9gC,GAEX+gC,QAAS,SAAU/gC,EAAKghC,GAEpB,MADAhhC,GAAIv1B,KAAK,OAAQu2D,GACVhhC,GAGXihC,SAAU,SAAUjhC,EAAKtX,GAErB,MADAsX,GAAIv1B,KAAK,aAAcie,GAChBsX,GAGX5mB,QAAS,SAAU4mB,GAEf,MADAA,GAAIv1B,KAAK,iBAAiB,GACnBu1B,GAGX/mB,OAAQ,SAAU+mB,GAEd,MADAA,GAAIv1B,KAAK,iBAAiB,GACnBu1B,GAGX44B,WAAY,SAAUsI,GACI,KAAlBA,EAAMC,UACNr+D,EAAEo+D,EAAMjyD,QAAQE,GAAGkJ,EAAErW,OAAO8oC,aAC5BzyB,EAAEsgD,YAAYuI,GAEV7oD,EAAEw6C,KAAKuO,OADP/oD,EAAE4xB,MACY5xB,EAAErW,OAAOq/D,aAGThpD,EAAErW,OAAOs/D,eAGtBx+D,EAAEo+D,EAAMjyD,QAAQE,GAAGkJ,EAAErW,OAAO+oC,cACjC1yB,EAAEwgD,YAAYqI,GAEV7oD,EAAEw6C,KAAKuO,OADP/oD,EAAE2xB,YACY3xB,EAAErW,OAAOu/D,cAGTlpD,EAAErW,OAAOw/D,iBAKnCC,WAAY3+D,EAAE,sFAEds+D,OAAQ,SAAUnzC,GACd,GAAIyzC,GAAerpD,EAAEw6C,KAAK4O,UACE,KAAxBC,EAAa79D,SACjB69D,EAAaxyC,KAAK,IAClBwyC,EAAaxyC,KAAKjB,KAEtBxkB,KAAM,WAEF,GAAI4O,EAAErW,OAAO8oC,WAAY,CACrB,GAAIA,GAAahoC,EAAEuV,EAAErW,OAAO8oC,WAC5BzyB,GAAEw6C,KAAKgO,cAAc/1B,GACrBzyB,EAAEw6C,KAAKkO,QAAQj2B,EAAY,UAC3BzyB,EAAEw6C,KAAKoO,SAASn2B,EAAYzyB,EAAErW,OAAOs/D,cAEzC,GAAIjpD,EAAErW,OAAO+oC,WAAY,CACrB,GAAIA,GAAajoC,EAAEuV,EAAErW,OAAO+oC,WAC5B1yB,GAAEw6C,KAAKgO,cAAc91B,GACrB1yB,EAAEw6C,KAAKkO,QAAQh2B,EAAY,UAC3B1yB,EAAEw6C,KAAKoO,SAASl2B,EAAY1yB,EAAErW,OAAOw/D,cAGzC1+D,EAAEuV,EAAE7M,WAAWgE,OAAO6I,EAAEw6C,KAAK4O,aAEjC5tD,QAAS,WACDwE,EAAEw6C,KAAK4O,YAAcppD,EAAEw6C,KAAK4O,WAAW59D,OAAS,GAAGwU,EAAEw6C,KAAK4O,WAAWxvD,WAQjFoG,EAAE5O,KAAO,WACD4O,EAAErW,OAAO2lC,MAAMtvB,EAAEmkD,aACrBnkD,EAAEy8C,sBACFz8C,EAAE48C,mBACF58C,EAAEo/C,mBACEp/C,EAAErW,OAAOutD,WAAal3C,EAAEk3C,WACxBl3C,EAAEk3C,UAAUwI,MAEQ,UAApB1/C,EAAErW,OAAO4pB,QAAsBvT,EAAE0jD,QAAQ1jD,EAAErW,OAAO4pB,UAC7CvT,EAAErW,OAAO2lC,MAAMtvB,EAAE4+C,iBACtB5+C,EAAE0jD,QAAQ1jD,EAAErW,OAAO4pB,QAAQuwC,gBAE3B9jD,EAAErW,OAAO2lC,KACTtvB,EAAE6wB,QAAQ7wB,EAAErW,OAAO+kC,aAAe1uB,EAAE0xB,aAAc,EAAG1xB,EAAErW,OAAOkxD,qBAG9D76C,EAAE6wB,QAAQ7wB,EAAErW,OAAO+kC,aAAc,EAAG1uB,EAAErW,OAAOkxD,oBACf,IAA1B76C,EAAErW,OAAO+kC,eACL1uB,EAAEi3C,UAAYj3C,EAAErW,OAAOstD,UAAUj3C,EAAEi3C,SAAS6M,eAC5C9jD,EAAEsjD,MAAQtjD,EAAErW,OAAO4lC,cACnBvvB,EAAEsjD,KAAKnpD,OACP6F,EAAEsjD,KAAKyD,oBAAqB,KAIxC/mD,EAAEnG,eACEmG,EAAErW,OAAOorD,UAAY/0C,EAAEpO,QAAQmjD,UAC/B/0C,EAAE+jD,gBAEF/jD,EAAErW,OAAOipC,gBAAkB5yB,EAAErW,OAAO4lC,aACpCvvB,EAAE4yB,gBAEF5yB,EAAErW,OAAOuqD,UACTl0C,EAAEs8C,gBAEFt8C,EAAErW,OAAOytD,iBACLp3C,EAAEspD,uBAAuBtpD,EAAEspD,wBAE/BtpD,EAAErW,OAAO0tD,mBACLr3C,EAAEupD,yBAAyBvpD,EAAEupD,0BAEjCvpD,EAAErW,OAAO4tD,SACLv3C,EAAEu3C,SAASv3C,EAAEu3C,QAAQnmD,OAEzB4O,EAAErW,OAAO6wD,MAAQx6C,EAAEw6C,MAAMx6C,EAAEw6C,KAAKppD,OACpC4O,EAAEo1C,KAAK,SAAUp1C,IAIrBA,EAAEwpD,cAAgB,WAEdxpD,EAAE7M,UAAUZ,YAAYyN,EAAEiwC,WAAW1tC,KAAK,MAAMqjC,WAAW,SAG3D5lC,EAAEi6B,QAAQ2L,WAAW,SAGjB5lC,EAAEmxB,QAAUnxB,EAAEmxB,OAAO3lC,QACrBwU,EAAEmxB,OACG5+B,aACCyN,EAAErW,OAAOmwD,kBACT95C,EAAErW,OAAOkwD,iBACT75C,EAAErW,OAAOqwD,eACTh6C,EAAErW,OAAOswD,gBACT13C,KAAK,MACNqjC,WAAW,SACXA,WAAW,sBACXA,WAAW,mBAIhB5lC,EAAEo7C,qBAAuBp7C,EAAEo7C,oBAAoB5vD,QAC/CwU,EAAEo7C,oBAAoB7oD,YAAYyN,EAAErW,OAAO2wD,uBAE3Ct6C,EAAEk/C,SAAWl/C,EAAEk/C,QAAQ1zD,QACvBwU,EAAEk/C,QAAQ3sD,YAAYyN,EAAErW,OAAOywD,mBAI/Bp6C,EAAErW,OAAO+oC,YAAYjoC,EAAEuV,EAAErW,OAAO+oC,YAAYngC,YAAYyN,EAAErW,OAAO0wD,qBACjEr6C,EAAErW,OAAO8oC,YAAYhoC,EAAEuV,EAAErW,OAAO8oC,YAAYlgC,YAAYyN,EAAErW,OAAO0wD,qBAGjEr6C,EAAErW,OAAOutD,WAAal3C,EAAEk3C,YACpBl3C,EAAEk3C,UAAUsQ,OAASxnD,EAAEk3C,UAAUsQ,MAAMh8D,QAAQwU,EAAEk3C,UAAUsQ,MAAM5hB,WAAW,SAC5E5lC,EAAEk3C,UAAUuQ,MAAQznD,EAAEk3C,UAAUuQ,KAAKj8D,QAAQwU,EAAEk3C,UAAUuQ,KAAK7hB,WAAW,WAKrF5lC,EAAExE,QAAU,SAAUiuD,EAAgBD,GAElCxpD,EAAEhG,eAEFgG,EAAEu0C,eAEEv0C,EAAErW,OAAO2lC,MACTtvB,EAAEskD,cAGFkF,GACAxpD,EAAEwpD,gBAGNxpD,EAAEikD,sBAEEjkD,EAAErW,OAAOytD,iBACLp3C,EAAE0pD,wBAAwB1pD,EAAE0pD,yBAEhC1pD,EAAErW,OAAO0tD,mBACLr3C,EAAE2pD,0BAA0B3pD,EAAE2pD,2BAGlC3pD,EAAErW,OAAO6wD,MAAQx6C,EAAEw6C,MAAMx6C,EAAEw6C,KAAKh/C,UAEpCwE,EAAEo1C,KAAK,aAEHqU,KAAmB,IAAOzpD,EAAI,OAGtCA,EAAE5O,OAKK4O,IAMX+tB,OAAOsX,WACH6gB,SAAU,WACN,GAAIvW,GAAK9W,UAAUC,UAAU32B,aAC7B,OAAQwtC,GAAGtkD,QAAQ,WAAa,GAAKskD,EAAGtkD,QAAQ,UAAY,GAAKskD,EAAGtkD,QAAQ,WAAa,KAE7F86D,YAAa,+CAA+C9nC,KAAKwa,UAAUC,WAC3ElpB,QAAS,SAAUi1B,GACf,MAAgD,mBAAzCwI,OAAOhI,UAAUj/B,SAASknC,MAAMzI,IAK3Csb,SACIC,GAAI32D,OAAOovC,UAAUinB,gBAAkBr2D,OAAOovC,UAAUknB,iBACxDoC,QAAU14D,OAAOovC,UAAUknB,kBAAoBt2D,OAAOovC,UAAU+wB,iBAAmB,GAAOngE,OAAOovC,UAAUinB,gBAAkBr2D,OAAOovC,UAAUgxB,eAAiB,GAKnKj+D,OAAQ,WACJ,GAAI+jD,GAAK9W,UAAUC,UACf5hC,EAAUy4C,EAAG3lD,MAAM,+BACnB6B,EAAO8jD,EAAG3lD,MAAM,wBAEhB6lD,GADOF,EAAG3lD,MAAM,4BACN6B,GAAQ8jD,EAAG3lD,MAAM,0BAC/B,QACI8W,IAAKjV,GAAQgkD,GAAUhkD,EACvBqL,QAASA,MAMjBtF,SACIC,MAASpI,OAAOqgE,WAAaA,UAAUj4D,SAAU,GAAS,WACtD,SAAW,gBAAkBpI,SAAWA,OAAOklD,eAAiB7iD,mBAAoB6iD,mBAGxFwM,aAAgB1xD,OAAOqgE,WAAaA,UAAUC,mBAAoB,GAAS,WACvE,GAAIC,GAAMl+D,SAAS4c,cAAc,OAAO1Q,KACxC,OAAQ,qBAAuBgyD,IAAO,kBAAoBA,IAAO,gBAAkBA,IAAO,iBAAmBA,IAAO,eAAiBA,MAGzI9O,QAAS,WAGL,IAAK,GAFD8O,GAAMl+D,SAAS4c,cAAc,OAAO1Q,MACpCqG,EAAS,yKAA2KnK,MAAM,KACrLvB,EAAI,EAAGA,EAAI0L,EAAO7S,OAAQmH,IAC/B,GAAI0L,EAAO1L,IAAMq3D,GAAK,OAAO,KAIrCjV,SAAU,WACN,MAAQ,oBAAsBtrD,SAAU,0BAA4BA,YAM5E26C","file":"framework7.min.js","sourcesContent":["/**\n * Framework7 1.0.6\n * Full Featured Mobile HTML Framework For Building iOS Apps\n * \n * http://www.idangero.us/framework7\n * \n * Copyright 2015, Vladimir Kharlampidi\n * The iDangero.us\n * http://www.idangero.us/\n * \n * Licensed under MIT\n * \n * Released on: May 1, 2015\n */\n(function () {\n\n 'use strict';\n /*===========================\n Framework 7\n ===========================*/\n window.Framework7 = function (params) {\n \n // App\n var app = this;\n \n // Version\n app.version = '1.0.6';\n \n // Default Parameters\n app.params = {\n cache: true,\n cacheIgnore: [],\n cacheIgnoreGetParameters: false,\n cacheDuration: 1000 * 60 * 10, // Ten minutes \n preloadPreviousPage: true,\n uniqueHistory: false,\n uniqueHistoryIgnoreGetParameters: false,\n dynamicPageUrl: 'content-{{index}}',\n allowDuplicateUrls: false,\n router: true,\n // Push State\n pushState: false,\n pushStateRoot: undefined,\n pushStateNoAnimation: false,\n pushStateSeparator: '#!/',\n pushStatePreventOnLoad: true,\n // Fast clicks\n fastClicks: true,\n fastClicksDistanceThreshold: 0,\n fastClicksDelayBetweenClicks: 50,\n // Tap Hold\n tapHold: false,\n tapHoldDelay: 750,\n tapHoldPreventClicks: true,\n // Active State\n activeState: true,\n activeStateElements: 'a, button, label, span',\n // Animate Nav Back Icon\n animateNavBackIcon: false,\n // Swipe Back\n swipeBackPage: true,\n swipeBackPageThreshold: 0,\n swipeBackPageActiveArea: 30,\n swipeBackPageAnimateShadow: true,\n swipeBackPageAnimateOpacity: true,\n // Ajax\n ajaxLinks: undefined, // or CSS selector\n // External Links\n externalLinks: '.external', // CSS selector\n // Sortable\n sortable: true,\n // Scroll toolbars\n hideNavbarOnPageScroll: false,\n hideToolbarOnPageScroll: false,\n hideTabbarOnPageScroll: false,\n showBarsOnPageScrollEnd: true,\n showBarsOnPageScrollTop: true,\n // Swipeout\n swipeout: true,\n swipeoutActionsNoFold: false,\n swipeoutNoFollow: false,\n // Smart Select Back link template\n smartSelectBackTemplate: '
',\n smartSelectBackText: 'Back',\n smartSelectInPopup: false,\n smartSelectPopupCloseTemplate: '',\n smartSelectPopupCloseText: 'Close',\n smartSelectSearchbar: false,\n smartSelectBackOnSelect: false,\n // Searchbar\n searchbarHideDividers: true,\n searchbarHideGroups: true,\n // Tap Navbar or Statusbar to scroll to top\n scrollTopOnNavbarClick: false,\n scrollTopOnStatusbarClick: false,\n // Panels\n swipePanel: false, // or 'left' or 'right'\n swipePanelActiveArea: 0,\n swipePanelCloseOpposite: true,\n swipePanelOnlyClose: false,\n swipePanelNoFollow: false,\n swipePanelThreshold: 0,\n panelsCloseByOutside: true,\n // Modals\n modalButtonOk: 'OK',\n modalButtonCancel: 'Cancel',\n modalUsernamePlaceholder: 'Username',\n modalPasswordPlaceholder: 'Password',\n modalTitle: 'Framework7',\n modalCloseByOutside: false,\n actionsCloseByOutside: true,\n popupCloseByOutside: true,\n modalPreloaderTitle: 'Loading... ',\n modalStack: true,\n // Lazy Load\n imagesLazyLoadThreshold: 0,\n imagesLazyLoadSequential: true,\n // Name space\n viewClass: 'view',\n viewMainClass: 'view-main',\n viewsClass: 'views',\n // Notifications defaults\n notificationCloseOnClick: false,\n notificationCloseIcon: true,\n // Animate Pages\n animatePages: true,\n // Template7\n templates: {},\n template7Data: {},\n template7Pages: false,\n precompileTemplates: false,\n // Auto init\n init: true,\n };\n \n // Extend defaults with parameters\n for (var param in params) {\n app.params[param] = params[param];\n }\n \n // DOM lib\n var $ = Dom7;\n \n // Template7 lib\n var t7 = Template7;\n app._compiledTemplates = {};\n \n // Touch events\n app.touchEvents = {\n start: app.support.touch ? 'touchstart' : 'mousedown',\n move: app.support.touch ? 'touchmove' : 'mousemove',\n end: app.support.touch ? 'touchend' : 'mouseup'\n };\n \n // Link to local storage\n app.ls = window.localStorage;\n \n // RTL\n app.rtl = $('body').css('direction') === 'rtl';\n if (app.rtl) $('html').attr('dir', 'rtl');\n \n // Overwrite statusbar overlay\n if (typeof app.params.statusbarOverlay !== 'undefined') {\n if (app.params.statusbarOverlay) $('html').addClass('with-statusbar-overlay');\n else $('html').removeClass('with-statusbar-overlay');\n }\n \n \n \n\n /*======================================================\n ************ Views ************\n ======================================================*/\n app.views = [];\n var View = function (selector, params) {\n var defaults = {\n dynamicNavbar: false,\n domCache: false,\n linksView: undefined,\n reloadPages: false,\n uniqueHistory: app.params.uniqueHistory,\n uniqueHistoryIgnoreGetParameters: app.params.uniqueHistoryIgnoreGetParameters,\n allowDuplicateUrls: app.params.allowDuplicateUrls,\n swipeBackPage: app.params.swipeBackPage,\n swipeBackPageAnimateShadow: app.params.swipeBackPageAnimateShadow,\n swipeBackPageAnimateOpacity: app.params.swipeBackPageAnimateOpacity,\n swipeBackPageActiveArea: app.params.swipeBackPageActiveArea,\n swipeBackPageThreshold: app.params.swipeBackPageThreshold,\n animatePages: app.params.animatePages,\n preloadPreviousPage: app.params.preloadPreviousPage\n };\n var i;\n \n params = params || {};\n for (var def in defaults) {\n if (typeof params[def] === 'undefined') {\n params[def] = defaults[def];\n }\n }\n // View\n var view = this;\n view.params = params;\n \n // Selector\n view.selector = selector;\n \n // Container\n var container = $(selector);\n view.container = container[0];\n \n // Is main\n view.main = container.hasClass(app.params.viewMainClass);\n \n // Content cache\n view.contentCache = {};\n \n // Pages cache\n view.pagesCache = {};\n \n // Store View in element for easy access\n container[0].f7View = view;\n \n // Pages\n view.pagesContainer = container.find('.pages')[0];\n view.initialPages = [];\n view.initialNavbars = [];\n if (view.params.domCache) {\n var initialPages = container.find('.page');\n for (i = 0; i < initialPages.length; i++) {\n view.initialPages.push(initialPages[i]);\n }\n if (view.params.dynamicNavbar) {\n var initialNavbars = container.find('.navbar-inner');\n for (i = 0; i < initialNavbars.length; i++) {\n view.initialNavbars.push(initialNavbars[i]);\n }\n }\n \n }\n \n view.allowPageChange = true;\n \n // Location\n var docLocation = document.location.href;\n \n // History\n view.history = [];\n var viewURL = docLocation;\n var pushStateSeparator = app.params.pushStateSeparator;\n var pushStateRoot = app.params.pushStateRoot;\n if (app.params.pushState && view.main) {\n if (pushStateRoot) {\n viewURL = pushStateRoot;\n }\n else {\n if (viewURL.indexOf(pushStateSeparator) >= 0 && viewURL.indexOf(pushStateSeparator + '#') < 0) viewURL = viewURL.split(pushStateSeparator)[0];\n }\n \n }\n \n // Active Page\n var currentPage, currentPageData;\n if (!view.activePage) {\n currentPage = $(view.pagesContainer).find('.page-on-center');\n if (currentPage.length === 0) {\n currentPage = $(view.pagesContainer).find('.page:not(.cached)');\n currentPage = currentPage.eq(currentPage.length - 1);\n }\n if (currentPage.length > 0) {\n currentPageData = currentPage[0].f7PageData;\n }\n }\n \n // View startup URL\n if (view.params.domCache && currentPage) {\n view.url = container.attr('data-url') || view.params.url || '#' + currentPage.attr('data-page'); \n view.pagesCache[view.url] = currentPage.attr('data-page');\n }\n else view.url = container.attr('data-url') || view.params.url || viewURL;\n \n // Update current page Data\n if (currentPageData) {\n currentPageData.view = view;\n currentPageData.url = view.url;\n view.activePage = currentPageData;\n currentPage[0].f7PageData = currentPageData;\n }\n \n // Store to history main view's url\n if (view.url) {\n view.history.push(view.url);\n }\n \n // Touch events\n var isTouched = false,\n isMoved = false,\n touchesStart = {},\n isScrolling,\n activePage = [],\n previousPage = [],\n viewContainerWidth,\n touchesDiff,\n allowViewTouchMove = true,\n touchStartTime,\n activeNavbar = [],\n previousNavbar = [],\n activeNavElements,\n previousNavElements,\n activeNavBackIcon,\n previousNavBackIcon,\n dynamicNavbar,\n pageShadow,\n el;\n \n view.handleTouchStart = function (e) {\n if (!allowViewTouchMove || !view.params.swipeBackPage || isTouched || app.swipeoutOpenedEl || !view.allowPageChange) return;\n isMoved = false;\n isTouched = true;\n isScrolling = undefined;\n touchesStart.x = e.type === 'touchstart' ? e.targetTouches[0].pageX : e.pageX;\n touchesStart.y = e.type === 'touchstart' ? e.targetTouches[0].pageY : e.pageY;\n touchStartTime = (new Date()).getTime();\n dynamicNavbar = view.params.dynamicNavbar && container.find('.navbar-inner').length > 1;\n };\n \n view.handleTouchMove = function (e) {\n if (!isTouched) return;\n var pageX = e.type === 'touchmove' ? e.targetTouches[0].pageX : e.pageX;\n var pageY = e.type === 'touchmove' ? e.targetTouches[0].pageY : e.pageY;\n if (typeof isScrolling === 'undefined') {\n isScrolling = !!(isScrolling || Math.abs(pageY - touchesStart.y) > Math.abs(pageX - touchesStart.x));\n }\n if (isScrolling || e.f7PreventSwipeBack || app.preventSwipeBack) {\n isTouched = false;\n return;\n }\n if (!isMoved) {\n var cancel = false;\n // Calc values during first move fired\n viewContainerWidth = container.width();\n var target = $(e.target);\n var swipeout = target.hasClass('swipeout') ? target : target.parents('.swipeout');\n if (swipeout.length > 0) {\n if (!app.rtl && swipeout.find('.swipeout-actions-left').length > 0) cancel = true;\n if (app.rtl && swipeout.find('.swipeout-actions-right').length > 0) cancel = true;\n }\n activePage = target.is('.page') ? target : target.parents('.page');\n if (activePage.hasClass('no-swipeback')) cancel = true;\n previousPage = container.find('.page-on-left:not(.cached)');\n var notFromBorder = touchesStart.x - container.offset().left > view.params.swipeBackPageActiveArea;\n if (app.rtl) {\n notFromBorder = touchesStart.x < container.offset().left - container[0].scrollLeft + viewContainerWidth - view.params.swipeBackPageActiveArea;\n }\n else {\n notFromBorder = touchesStart.x - container.offset().left > view.params.swipeBackPageActiveArea;\n }\n if (notFromBorder) cancel = true;\n if (previousPage.length === 0 || activePage.length === 0) cancel = true;\n if (cancel) {\n isTouched = false;\n return;\n }\n \n if (view.params.swipeBackPageAnimateShadow && !app.device.android) {\n pageShadow = activePage.find('.swipeback-page-shadow');\n if (pageShadow.length === 0) {\n pageShadow = $('');\n activePage.append(pageShadow);\n }\n }\n \n if (dynamicNavbar) {\n activeNavbar = container.find('.navbar-on-center:not(.cached)');\n previousNavbar = container.find('.navbar-on-left:not(.cached)');\n activeNavElements = activeNavbar.find('.left, .center, .right, .subnavbar, .fading');\n previousNavElements = previousNavbar.find('.left, .center, .right, .subnavbar, .fading');\n if (app.params.animateNavBackIcon) {\n activeNavBackIcon = activeNavbar.find('.left.sliding .back .icon');\n previousNavBackIcon = previousNavbar.find('.left.sliding .back .icon');\n }\n }\n \n // Close/Hide Any Picker\n if ($('.picker-modal.modal-in').length > 0) {\n app.closeModal($('.picker-modal.modal-in'));\n }\n }\n e.f7PreventPanelSwipe = true;\n isMoved = true;\n e.preventDefault();\n \n // RTL inverter\n var inverter = app.rtl ? -1 : 1;\n \n // Touches diff\n touchesDiff = (pageX - touchesStart.x - view.params.swipeBackPageThreshold) * inverter;\n if (touchesDiff < 0) touchesDiff = 0;\n var percentage = touchesDiff / viewContainerWidth;\n \n // Swipe Back Callback\n var callbackData = {\n percentage: percentage,\n activePage: activePage[0],\n previousPage: previousPage[0],\n activeNavbar: activeNavbar[0],\n previousNavbar: previousNavbar[0]\n };\n if (view.params.onSwipeBackMove) {\n view.params.onSwipeBackMove(callbackData);\n }\n container.trigger('swipeBackMove', callbackData);\n \n // Transform pages\n var activePageTranslate = touchesDiff * inverter;\n var previousPageTranslate = (touchesDiff / 5 - viewContainerWidth / 5) * inverter;\n if (app.device.pixelRatio === 1) {\n activePageTranslate = Math.round(activePageTranslate);\n previousPageTranslate = Math.round(previousPageTranslate);\n }\n \n activePage.transform('translate3d(' + activePageTranslate + 'px,0,0)');\n if (view.params.swipeBackPageAnimateShadow && !app.device.android) pageShadow[0].style.opacity = 1 - 1 * percentage;\n \n previousPage.transform('translate3d(' + previousPageTranslate + 'px,0,0)');\n if (view.params.swipeBackPageAnimateOpacity) previousPage[0].style.opacity = 0.9 + 0.1 * percentage;\n \n // Dynamic Navbars Animation\n if (dynamicNavbar) {\n var i;\n for (i = 0; i < activeNavElements.length; i++) {\n el = $(activeNavElements[i]);\n if (!el.is('.subnavbar.sliding')) el[0].style.opacity = (1 - percentage * 1.3);\n if (el[0].className.indexOf('sliding') >= 0) {\n var activeNavTranslate = percentage * el[0].f7NavbarRightOffset;\n if (app.device.pixelRatio === 1) activeNavTranslate = Math.round(activeNavTranslate);\n el.transform('translate3d(' + activeNavTranslate + 'px,0,0)');\n if (app.params.animateNavBackIcon) {\n if (el[0].className.indexOf('left') >= 0 && activeNavBackIcon.length > 0) {\n activeNavBackIcon.transform('translate3d(' + -activeNavTranslate + 'px,0,0)');\n }\n }\n }\n }\n for (i = 0; i < previousNavElements.length; i++) {\n el = $(previousNavElements[i]);\n if (!el.is('.subnavbar.sliding')) el[0].style.opacity = percentage * 1.3 - 0.3;\n if (el[0].className.indexOf('sliding') >= 0) {\n var previousNavTranslate = el[0].f7NavbarLeftOffset * (1 - percentage);\n if (app.device.pixelRatio === 1) previousNavTranslate = Math.round(previousNavTranslate);\n el.transform('translate3d(' + previousNavTranslate + 'px,0,0)');\n if (app.params.animateNavBackIcon) {\n if (el[0].className.indexOf('left') >= 0 && previousNavBackIcon.length > 0) {\n previousNavBackIcon.transform('translate3d(' + -previousNavTranslate + 'px,0,0)');\n }\n }\n }\n }\n }\n };\n \n view.handleTouchEnd = function (e) {\n if (!isTouched || !isMoved) {\n isTouched = false;\n isMoved = false;\n return;\n }\n isTouched = false;\n isMoved = false;\n if (touchesDiff === 0) {\n $([activePage[0], previousPage[0]]).transform('').css({opacity: '', boxShadow: ''});\n if (dynamicNavbar) {\n activeNavElements.transform('').css({opacity: ''});\n previousNavElements.transform('').css({opacity: ''});\n if (activeNavBackIcon && activeNavBackIcon.length > 0) activeNavBackIcon.transform('');\n if (previousNavBackIcon && activeNavBackIcon.length > 0) previousNavBackIcon.transform('');\n }\n return;\n }\n var timeDiff = (new Date()).getTime() - touchStartTime;\n var pageChanged = false;\n // Swipe back to previous page\n if (\n timeDiff < 300 && touchesDiff > 10 ||\n timeDiff >= 300 && touchesDiff > viewContainerWidth / 2\n ) {\n activePage.removeClass('page-on-center').addClass('page-on-right');\n previousPage.removeClass('page-on-left').addClass('page-on-center');\n if (dynamicNavbar) {\n activeNavbar.removeClass('navbar-on-center').addClass('navbar-on-right');\n previousNavbar.removeClass('navbar-on-left').addClass('navbar-on-center');\n }\n pageChanged = true;\n }\n // Reset custom styles\n // Add transitioning class for transition-duration\n $([activePage[0], previousPage[0]]).transform('').css({opacity: '', boxShadow: ''}).addClass('page-transitioning');\n if (dynamicNavbar) {\n activeNavElements.css({opacity: ''})\n .each(function () {\n var translate = pageChanged ? this.f7NavbarRightOffset : 0;\n var sliding = $(this);\n sliding.transform('translate3d(' + translate + 'px,0,0)');\n if (app.params.animateNavBackIcon) {\n if (sliding.hasClass('left') && activeNavBackIcon.length > 0) {\n activeNavBackIcon.addClass('page-transitioning').transform('translate3d(' + -translate + 'px,0,0)');\n }\n }\n \n }).addClass('page-transitioning');\n \n previousNavElements.transform('').css({opacity: ''}).each(function () {\n var translate = pageChanged ? 0 : this.f7NavbarLeftOffset;\n var sliding = $(this);\n sliding.transform('translate3d(' + translate + 'px,0,0)');\n if (app.params.animateNavBackIcon) {\n if (sliding.hasClass('left') && previousNavBackIcon.length > 0) {\n previousNavBackIcon.addClass('page-transitioning').transform('translate3d(' + -translate + 'px,0,0)');\n }\n }\n }).addClass('page-transitioning');\n }\n allowViewTouchMove = false;\n view.allowPageChange = false;\n // Swipe Back Callback\n var callbackData = {\n activePage: activePage[0],\n previousPage: previousPage[0],\n activeNavbar: activeNavbar[0],\n previousNavbar: previousNavbar[0]\n };\n if (pageChanged) {\n // Update View's URL\n var url = view.history[view.history.length - 2];\n view.url = url;\n \n // Page before animation callback\n app.pageBackCallback('before', view, {pageContainer: activePage[0], url: url, position: 'center', newPage: previousPage, oldPage: activePage, swipeBack: true});\n app.pageAnimCallback('before', view, {pageContainer: previousPage[0], url: url, position: 'left', newPage: previousPage, oldPage: activePage, swipeBack: true});\n \n if (view.params.onSwipeBackBeforeChange) {\n view.params.onSwipeBackBeforeChange(callbackData);\n }\n container.trigger('swipeBackBeforeChange', callbackData);\n }\n else {\n if (view.params.onSwipeBackBeforeReset) {\n view.params.onSwipeBackBeforeReset(callbackData);\n }\n container.trigger('swipeBackBeforeReset', callbackData);\n }\n \n activePage.transitionEnd(function () {\n $([activePage[0], previousPage[0]]).removeClass('page-transitioning');\n if (dynamicNavbar) {\n activeNavElements.removeClass('page-transitioning').css({opacity: ''});\n previousNavElements.removeClass('page-transitioning').css({opacity: ''});\n if (activeNavBackIcon && activeNavBackIcon.length > 0) activeNavBackIcon.removeClass('page-transitioning');\n if (previousNavBackIcon && previousNavBackIcon.length > 0) previousNavBackIcon.removeClass('page-transitioning');\n }\n allowViewTouchMove = true;\n view.allowPageChange = true;\n if (pageChanged) {\n if (app.params.pushState && view.main) history.back();\n // Page after animation callback\n app.pageBackCallback('after', view, {pageContainer: activePage[0], url: url, position: 'center', newPage: previousPage, oldPage: activePage, swipeBack: true});\n app.pageAnimCallback('after', view, {pageContainer: previousPage[0], url: url, position: 'left', newPage: previousPage, oldPage: activePage, swipeBack: true});\n app.router.afterBack(view, activePage, previousPage);\n \n if (view.params.onSwipeBackAfterChange) {\n view.params.onSwipeBackAfterChange(callbackData);\n }\n container.trigger('swipeBackAfterChange', callbackData);\n }\n else {\n if (view.params.onSwipeBackAfterReset) {\n view.params.onSwipeBackAfterReset(callbackData);\n }\n container.trigger('swipeBackAfterReset', callbackData);\n }\n if (pageShadow && pageShadow.length > 0) pageShadow.remove();\n });\n };\n view.attachEvents = function (detach) {\n var action = detach ? 'off' : 'on';\n container[action](app.touchEvents.start, view.handleTouchStart);\n container[action](app.touchEvents.move, view.handleTouchMove);\n container[action](app.touchEvents.end, view.handleTouchEnd);\n };\n view.detachEvents = function () {\n view.attachEvents(true);\n };\n \n // Init\n if (view.params.swipeBackPage && !app.params.material) {\n view.attachEvents();\n }\n \n // Add view to app\n app.views.push(view);\n if (view.main) app.mainView = view;\n \n // Router \n view.router = {\n load: function (options) {\n return app.router.load(view, options);\n },\n back: function (options) {\n return app.router.back(view, options); \n },\n // Shortcuts\n loadPage: function (options) {\n options = options || {};\n if (typeof options === 'string') {\n var url = options;\n options = {};\n if (url && url.indexOf('#') === 0 && view.params.domCache) {\n options.pageName = url.split('#')[1];\n }\n else options.url = url;\n }\n return app.router.load(view, options);\n },\n loadContent: function (content) {\n return app.router.load(view, {content: content});\n },\n reloadPage: function (url) {\n return app.router.load(view, {url: url, reload: true});\n },\n reloadContent: function (content) {\n return app.router.load(view, {content: content, reload: true});\n },\n reloadPreviousPage: function (url) {\n return app.router.load(view, {url: url, reloadPrevious: true, reload: true});\n },\n reloadPreviousContent: function (content) {\n return app.router.load(view, {content: content, reloadPrevious: true, reload: true});\n },\n refreshPage: function () {\n var options = {\n url: view.url,\n reload: true,\n ignoreCache: true\n };\n if (options.url && options.url.indexOf('#') === 0) {\n if (view.params.domCache && view.pagesCache[options.url]) {\n options.pageName = view.pagesCache[options.url];\n options.url = undefined;\n delete options.url;\n }\n else if (view.contentCache[options.url]) {\n options.content = view.contentCache[options.url];\n options.url = undefined;\n delete options.url;\n }\n }\n return app.router.load(view, options);\n },\n refreshPreviousPage: function () {\n var options = {\n url: view.history[view.history.length - 2],\n reload: true,\n reloadPrevious: true,\n ignoreCache: true\n };\n if (options.url && options.url.indexOf('#') === 0 && view.params.domCache && view.pagesCache[options.url]) {\n options.pageName = view.pagesCache[options.url];\n options.url = undefined;\n delete options.url;\n }\n return app.router.load(view, options);\n }\n };\n \n // Aliases for temporary backward compatibility\n view.loadPage = view.router.loadPage;\n view.loadContent = view.router.loadContent;\n view.reloadPage = view.router.reloadPage;\n view.reloadContent = view.router.reloadContent;\n view.reloadPreviousPage = view.router.reloadPreviousPage;\n view.reloadPreviousContent = view.router.reloadPreviousContent;\n view.refreshPage = view.router.refreshPage;\n view.refreshPreviousPage = view.router.refreshPreviousPage;\n view.back = view.router.back;\n \n // Bars methods\n view.hideNavbar = function () {\n return app.hideNavbar(container.find('.navbar'));\n };\n view.showNavbar = function () {\n return app.showNavbar(container.find('.navbar'));\n };\n view.hideToolbar = function () {\n return app.hideToolbar(container.find('.toolbar'));\n };\n view.showToolbar = function () {\n return app.showToolbar(container.find('.toolbar'));\n };\n \n // Push State on load\n if (app.params.pushState && view.main) {\n var pushStateUrl;\n if (pushStateRoot) {\n pushStateUrl = docLocation.split(app.params.pushStateRoot + pushStateSeparator)[1];\n }\n else if (docLocation.indexOf(pushStateSeparator) >= 0 && docLocation.indexOf(pushStateSeparator + '#') < 0) {\n pushStateUrl = docLocation.split(pushStateSeparator)[1];\n }\n var pushStateAnimatePages = app.params.pushStateNoAnimation ? false : undefined;\n \n if (pushStateUrl) {\n app.router.load(view, {url: pushStateUrl, animatePages: pushStateAnimatePages, pushState: false});\n }\n else if (docLocation.indexOf(pushStateSeparator + '#') >= 0) {\n var state = history.state;\n if (state.pageName && 'viewIndex' in state) {\n app.router.load(view, {pageName: state.pageName, pushState: false});\n }\n }\n \n }\n \n // Destroy\n view.destroy = function () {\n view.detachEvents();\n view = undefined;\n };\n \n // Plugin hook\n app.pluginHook('addView', view);\n \n // Return view\n return view;\n };\n \n app.addView = function (selector, params) {\n return new View(selector, params);\n };\n \n app.getCurrentView = function (index) {\n var popoverView = $('.popover.modal-in .view');\n var popupView = $('.popup.modal-in .view');\n var panelView = $('.panel.active .view');\n var appViews = $('.views');\n // Find active view as tab\n var appView = appViews.children('.view');\n // Propably in tabs or split view\n if (appView.length > 1) {\n if (appView.hasClass('tab')) {\n // Tabs\n appView = appViews.children('.view.active');\n }\n else {\n // Split View, leave appView intact\n }\n }\n if (popoverView.length > 0 && popoverView[0].f7View) return popoverView[0].f7View;\n if (popupView.length > 0 && popupView[0].f7View) return popupView[0].f7View;\n if (panelView.length > 0 && panelView[0].f7View) return panelView[0].f7View;\n if (appView.length > 0) {\n if (appView.length === 1 && appView[0].f7View) return appView[0].f7View;\n if (appView.length > 1) {\n var currentViews = [];\n for (var i = 0; i < appView.length; i++) {\n if (appView[i].f7View) currentViews.push(appView[i].f7View);\n }\n if (currentViews.length > 0 && typeof index !== 'undefined') return currentViews[index];\n if (currentViews.length > 1) return currentViews;\n if (currentViews.length === 1) return currentViews[0];\n return undefined;\n }\n }\n return undefined;\n };\n \n\n /*======================================================\n ************ Navbars && Toolbars ************\n ======================================================*/\n // On Navbar Init Callback\n app.navbarInitCallback = function (view, pageContainer, navbarContainer, navbarInnerContainer) {\n if (!navbarContainer && navbarInnerContainer) navbarContainer = $(navbarInnerContainer).parent('.navbar')[0];\n if (navbarInnerContainer.f7NavbarInitialized && !view.params.domCache) return;\n var navbarData = {\n container: navbarContainer,\n innerContainer: navbarInnerContainer\n };\n var pageData = pageContainer && pageContainer.f7PageData;\n \n var eventData = {\n page: pageData,\n navbar: navbarData\n };\n \n if (navbarInnerContainer.f7NavbarInitialized && view.params.domCache) {\n // Reinit Navbar\n app.reinitNavbar(navbarContainer, navbarInnerContainer);\n \n // Plugin hook\n app.pluginHook('navbarReinit', eventData);\n \n // Event\n $(navbarInnerContainer).trigger('navbarReinit', eventData);\n return;\n }\n navbarInnerContainer.f7NavbarInitialized = true;\n // Before Init\n app.pluginHook('navbarBeforeInit', navbarData, pageData);\n $(navbarInnerContainer).trigger('navbarBeforeInit', eventData);\n \n // Initialize Navbar\n app.initNavbar(navbarContainer, navbarInnerContainer);\n \n // On init\n app.pluginHook('navbarInit', navbarData, pageData);\n $(navbarInnerContainer).trigger('navbarInit', eventData);\n };\n // Navbar Remove Callback\n app.navbarRemoveCallback = function (view, pageContainer, navbarContainer, navbarInnerContainer) {\n if (!navbarContainer && navbarInnerContainer) navbarContainer = $(navbarInnerContainer).parent('.navbar')[0];\n var navbarData = {\n container: navbarContainer,\n innerContainer: navbarInnerContainer\n };\n var pageData = pageContainer.f7PageData;\n \n var eventData = {\n page: pageData,\n navbar: navbarData\n };\n app.pluginHook('navbarBeforeRemove', navbarData, pageData);\n $(navbarInnerContainer).trigger('navbarBeforeRemove', eventData);\n };\n app.initNavbar = function (navbarContainer, navbarInnerContainer) {\n // Init Subnavbar Searchbar\n if (app.initSearchbar) app.initSearchbar(navbarInnerContainer);\n };\n app.reinitNavbar = function (navbarContainer, navbarInnerContainer) {\n // Re init navbar methods\n };\n app.initNavbarWithCallback = function (navbarContainer) {\n navbarContainer = $(navbarContainer);\n var viewContainer = navbarContainer.parents('.' + app.params.viewClass);\n var view;\n if (viewContainer.length === 0) return;\n if (navbarContainer.parents('.navbar-through').length === 0 && viewContainer.find('.navbar-through').length === 0) return;\n view = viewContainer[0].f7View || undefined;\n \n navbarContainer.find('.navbar-inner').each(function () {\n var navbarInnerContainer = this;\n var pageContainer;\n if ($(navbarInnerContainer).attr('data-page')) {\n // For dom cache\n pageContainer = viewContainer.find('.page[data-page=\"' + $(navbarInnerContainer).attr('data-page') + '\"]')[0];\n }\n if (!pageContainer) {\n var pages = viewContainer.find('.page');\n if (pages.length === 1) {\n pageContainer = pages[0];\n }\n else {\n viewContainer.find('.page').each(function () {\n if (this.f7PageData && this.f7PageData.navbarInnerContainer === navbarInnerContainer) {\n pageContainer = this;\n }\n });\n }\n }\n app.navbarInitCallback(view, pageContainer, navbarContainer[0], navbarInnerContainer);\n });\n };\n \n // Size Navbars\n app.sizeNavbars = function (viewContainer) {\n if (app.params.material) return;\n var navbarInner = viewContainer ? $(viewContainer).find('.navbar .navbar-inner:not(.cached)') : $('.navbar .navbar-inner:not(.cached)');\n navbarInner.each(function () {\n var n = $(this);\n if (n.hasClass('cached')) return;\n var left = app.rtl ? n.find('.right') : n.find('.left'),\n right = app.rtl ? n.find('.left') : n.find('.right'),\n center = n.find('.center'),\n subnavbar = n.find('.subnavbar'),\n noLeft = left.length === 0,\n noRight = right.length === 0,\n leftWidth = noLeft ? 0 : left.outerWidth(true),\n rightWidth = noRight ? 0 : right.outerWidth(true),\n centerWidth = center.outerWidth(true),\n navbarStyles = n.styles(),\n navbarWidth = n[0].offsetWidth - parseInt(navbarStyles.paddingLeft, 10) - parseInt(navbarStyles.paddingRight, 10),\n onLeft = n.hasClass('navbar-on-left'),\n currLeft, diff;\n \n if (noRight) {\n currLeft = navbarWidth - centerWidth;\n }\n if (noLeft) {\n currLeft = 0;\n }\n if (!noLeft && !noRight) {\n currLeft = (navbarWidth - rightWidth - centerWidth + leftWidth) / 2;\n }\n var requiredLeft = (navbarWidth - centerWidth) / 2;\n if (navbarWidth - leftWidth - rightWidth > centerWidth) {\n if (requiredLeft < leftWidth) {\n requiredLeft = leftWidth;\n }\n if (requiredLeft + centerWidth > navbarWidth - rightWidth) {\n requiredLeft = navbarWidth - rightWidth - centerWidth;\n }\n diff = requiredLeft - currLeft;\n }\n else {\n diff = 0;\n }\n // RTL inverter\n var inverter = app.rtl ? -1 : 1;\n \n if (center.hasClass('sliding')) {\n center[0].f7NavbarLeftOffset = -(currLeft + diff) * inverter;\n center[0].f7NavbarRightOffset = (navbarWidth - currLeft - diff - centerWidth) * inverter;\n if (onLeft) center.transform('translate3d(' + center[0].f7NavbarLeftOffset + 'px, 0, 0)');\n }\n if (!noLeft && left.hasClass('sliding')) {\n if (app.rtl) {\n left[0].f7NavbarLeftOffset = -(navbarWidth - left[0].offsetWidth) / 2 * inverter;\n left[0].f7NavbarRightOffset = leftWidth * inverter;\n }\n else {\n left[0].f7NavbarLeftOffset = -leftWidth;\n left[0].f7NavbarRightOffset = (navbarWidth - left[0].offsetWidth) / 2;\n }\n if (onLeft) left.transform('translate3d(' + left[0].f7NavbarLeftOffset + 'px, 0, 0)');\n }\n if (!noRight && right.hasClass('sliding')) {\n if (app.rtl) {\n right[0].f7NavbarLeftOffset = -rightWidth * inverter;\n right[0].f7NavbarRightOffset = (navbarWidth - right[0].offsetWidth) / 2 * inverter;\n }\n else {\n right[0].f7NavbarLeftOffset = -(navbarWidth - right[0].offsetWidth) / 2;\n right[0].f7NavbarRightOffset = rightWidth;\n }\n if (onLeft) right.transform('translate3d(' + right[0].f7NavbarLeftOffset + 'px, 0, 0)');\n }\n if (subnavbar.length && subnavbar.hasClass('sliding')) {\n subnavbar[0].f7NavbarLeftOffset = app.rtl ? subnavbar[0].offsetWidth : -subnavbar[0].offsetWidth;\n subnavbar[0].f7NavbarRightOffset = -subnavbar[0].f7NavbarLeftOffset;\n }\n \n // Center left\n var centerLeft = diff;\n if (app.rtl && noLeft && noRight && center.length > 0) centerLeft = -centerLeft;\n center.css({left: centerLeft + 'px'});\n \n });\n };\n \n // Hide/Show Navbars/Toolbars\n app.hideNavbar = function (navbarContainer) {\n $(navbarContainer).addClass('navbar-hidden');\n return true;\n };\n app.showNavbar = function (navbarContainer) {\n var navbar = $(navbarContainer);\n navbar.addClass('navbar-hiding').removeClass('navbar-hidden').transitionEnd(function () {\n navbar.removeClass('navbar-hiding');\n });\n return true;\n };\n app.hideToolbar = function (toolbarContainer) {\n $(toolbarContainer).addClass('toolbar-hidden');\n return true;\n };\n app.showToolbar = function (toolbarContainer) {\n var toolbar = $(toolbarContainer);\n toolbar.addClass('toolbar-hiding').removeClass('toolbar-hidden').transitionEnd(function () {\n toolbar.removeClass('toolbar-hiding');\n });\n };\n \n\n /*======================================================\n ************ Searchbar ************\n ======================================================*/\n var Searchbar = function (container, params) {\n var defaults = {\n input: null,\n clearButton: null,\n cancelButton: null,\n searchList: null,\n searchIn: '.item-title',\n searchBy: '',\n found: null,\n notFound: null,\n overlay: null,\n ignore: '.searchbar-ignore',\n customSearch: false,\n removeDiacritics: false\n };\n params = params || {};\n for (var def in defaults) {\n if (typeof params[def] === 'undefined' || params[def] === null) {\n params[def] = defaults[def];\n }\n }\n \n // Instance\n var s = this;\n \n // Params\n s.params = params;\n \n // Container\n container = $(container);\n s.container = container;\n \n // Active\n s.active = false;\n \n // Input\n s.input = s.params.input ? $(s.params.input) : s.container.find('input[type=\"search\"]');\n s.clearButton = s.params.clearButton ? $(s.params.clearButton) : s.container.find('.searchbar-clear');\n s.cancelButton = s.params.cancelButton ? $(s.params.cancelButton) : s.container.find('.searchbar-cancel');\n \n // Search List\n s.searchList = $(s.params.searchList);\n \n // Is Virtual List\n s.isVirtualList = s.searchList.hasClass('virtual-list');\n \n // Is In Page\n s.pageContainer = s.container.parents('.page').eq(0);\n \n // Overlay\n if (!s.params.overlay) {\n s.overlay = s.pageContainer.length > 0 ? s.pageContainer.find('.searchbar-overlay') : $('.searchbar-overlay');\n }\n else {\n s.overlay = $(s.params.overlay);\n }\n // Found and not found\n if (!s.params.found) {\n s.found = s.pageContainer.length > 0 ? s.pageContainer.find('.searchbar-found') : $('.searchbar-found');\n }\n else {\n s.found = $(s.params.found);\n }\n if (!s.params.notFound) {\n s.notFound = s.pageContainer.length > 0 ? s.pageContainer.find('.searchbar-not-found') : $('.searchbar-not-found');\n }\n else {\n s.notFound = $(s.params.notFound);\n }\n \n // Cancel button\n var cancelMarginProp = app.rtl ? 'margin-left' : 'margin-right';\n if (s.cancelButton.length > 0) {\n s.cancelButton.transition(0).show();\n s.cancelButton.css(cancelMarginProp, -s.cancelButton[0].offsetWidth + 'px');\n setTimeout(function () {\n s.cancelButton.transition(''); \n }, 0);\n }\n \n // Diacritics\n var defaultDiacriticsRemovalap = [\n {base:'A', letters:'\\u0041\\u24B6\\uFF21\\u00C0\\u00C1\\u00C2\\u1EA6\\u1EA4\\u1EAA\\u1EA8\\u00C3\\u0100\\u0102\\u1EB0\\u1EAE\\u1EB4\\u1EB2\\u0226\\u01E0\\u00C4\\u01DE\\u1EA2\\u00C5\\u01FA\\u01CD\\u0200\\u0202\\u1EA0\\u1EAC\\u1EB6\\u1E00\\u0104\\u023A\\u2C6F'},\n {base:'AA',letters:'\\uA732'},\n {base:'AE',letters:'\\u00C6\\u01FC\\u01E2'},\n {base:'AO',letters:'\\uA734'},\n {base:'AU',letters:'\\uA736'},\n {base:'AV',letters:'\\uA738\\uA73A'},\n {base:'AY',letters:'\\uA73C'},\n {base:'B', letters:'\\u0042\\u24B7\\uFF22\\u1E02\\u1E04\\u1E06\\u0243\\u0182\\u0181'},\n {base:'C', letters:'\\u0043\\u24B8\\uFF23\\u0106\\u0108\\u010A\\u010C\\u00C7\\u1E08\\u0187\\u023B\\uA73E'},\n {base:'D', letters:'\\u0044\\u24B9\\uFF24\\u1E0A\\u010E\\u1E0C\\u1E10\\u1E12\\u1E0E\\u0110\\u018B\\u018A\\u0189\\uA779'},\n {base:'DZ',letters:'\\u01F1\\u01C4'},\n {base:'Dz',letters:'\\u01F2\\u01C5'},\n {base:'E', letters:'\\u0045\\u24BA\\uFF25\\u00C8\\u00C9\\u00CA\\u1EC0\\u1EBE\\u1EC4\\u1EC2\\u1EBC\\u0112\\u1E14\\u1E16\\u0114\\u0116\\u00CB\\u1EBA\\u011A\\u0204\\u0206\\u1EB8\\u1EC6\\u0228\\u1E1C\\u0118\\u1E18\\u1E1A\\u0190\\u018E'},\n {base:'F', letters:'\\u0046\\u24BB\\uFF26\\u1E1E\\u0191\\uA77B'},\n {base:'G', letters:'\\u0047\\u24BC\\uFF27\\u01F4\\u011C\\u1E20\\u011E\\u0120\\u01E6\\u0122\\u01E4\\u0193\\uA7A0\\uA77D\\uA77E'},\n {base:'H', letters:'\\u0048\\u24BD\\uFF28\\u0124\\u1E22\\u1E26\\u021E\\u1E24\\u1E28\\u1E2A\\u0126\\u2C67\\u2C75\\uA78D'},\n {base:'I', letters:'\\u0049\\u24BE\\uFF29\\u00CC\\u00CD\\u00CE\\u0128\\u012A\\u012C\\u0130\\u00CF\\u1E2E\\u1EC8\\u01CF\\u0208\\u020A\\u1ECA\\u012E\\u1E2C\\u0197'},\n {base:'J', letters:'\\u004A\\u24BF\\uFF2A\\u0134\\u0248'},\n {base:'K', letters:'\\u004B\\u24C0\\uFF2B\\u1E30\\u01E8\\u1E32\\u0136\\u1E34\\u0198\\u2C69\\uA740\\uA742\\uA744\\uA7A2'},\n {base:'L', letters:'\\u004C\\u24C1\\uFF2C\\u013F\\u0139\\u013D\\u1E36\\u1E38\\u013B\\u1E3C\\u1E3A\\u0141\\u023D\\u2C62\\u2C60\\uA748\\uA746\\uA780'},\n {base:'LJ',letters:'\\u01C7'},\n {base:'Lj',letters:'\\u01C8'},\n {base:'M', letters:'\\u004D\\u24C2\\uFF2D\\u1E3E\\u1E40\\u1E42\\u2C6E\\u019C'},\n {base:'N', letters:'\\u004E\\u24C3\\uFF2E\\u01F8\\u0143\\u00D1\\u1E44\\u0147\\u1E46\\u0145\\u1E4A\\u1E48\\u0220\\u019D\\uA790\\uA7A4'},\n {base:'NJ',letters:'\\u01CA'},\n {base:'Nj',letters:'\\u01CB'},\n {base:'O', letters:'\\u004F\\u24C4\\uFF2F\\u00D2\\u00D3\\u00D4\\u1ED2\\u1ED0\\u1ED6\\u1ED4\\u00D5\\u1E4C\\u022C\\u1E4E\\u014C\\u1E50\\u1E52\\u014E\\u022E\\u0230\\u00D6\\u022A\\u1ECE\\u0150\\u01D1\\u020C\\u020E\\u01A0\\u1EDC\\u1EDA\\u1EE0\\u1EDE\\u1EE2\\u1ECC\\u1ED8\\u01EA\\u01EC\\u00D8\\u01FE\\u0186\\u019F\\uA74A\\uA74C'},\n {base:'OI',letters:'\\u01A2'},\n {base:'OO',letters:'\\uA74E'},\n {base:'OU',letters:'\\u0222'},\n {base:'OE',letters:'\\u008C\\u0152'},\n {base:'oe',letters:'\\u009C\\u0153'},\n {base:'P', letters:'\\u0050\\u24C5\\uFF30\\u1E54\\u1E56\\u01A4\\u2C63\\uA750\\uA752\\uA754'},\n {base:'Q', letters:'\\u0051\\u24C6\\uFF31\\uA756\\uA758\\u024A'},\n {base:'R', letters:'\\u0052\\u24C7\\uFF32\\u0154\\u1E58\\u0158\\u0210\\u0212\\u1E5A\\u1E5C\\u0156\\u1E5E\\u024C\\u2C64\\uA75A\\uA7A6\\uA782'},\n {base:'S', letters:'\\u0053\\u24C8\\uFF33\\u1E9E\\u015A\\u1E64\\u015C\\u1E60\\u0160\\u1E66\\u1E62\\u1E68\\u0218\\u015E\\u2C7E\\uA7A8\\uA784'},\n {base:'T', letters:'\\u0054\\u24C9\\uFF34\\u1E6A\\u0164\\u1E6C\\u021A\\u0162\\u1E70\\u1E6E\\u0166\\u01AC\\u01AE\\u023E\\uA786'},\n {base:'TZ',letters:'\\uA728'},\n {base:'U', letters:'\\u0055\\u24CA\\uFF35\\u00D9\\u00DA\\u00DB\\u0168\\u1E78\\u016A\\u1E7A\\u016C\\u00DC\\u01DB\\u01D7\\u01D5\\u01D9\\u1EE6\\u016E\\u0170\\u01D3\\u0214\\u0216\\u01AF\\u1EEA\\u1EE8\\u1EEE\\u1EEC\\u1EF0\\u1EE4\\u1E72\\u0172\\u1E76\\u1E74\\u0244'},\n {base:'V', letters:'\\u0056\\u24CB\\uFF36\\u1E7C\\u1E7E\\u01B2\\uA75E\\u0245'},\n {base:'VY',letters:'\\uA760'},\n {base:'W', letters:'\\u0057\\u24CC\\uFF37\\u1E80\\u1E82\\u0174\\u1E86\\u1E84\\u1E88\\u2C72'},\n {base:'X', letters:'\\u0058\\u24CD\\uFF38\\u1E8A\\u1E8C'},\n {base:'Y', letters:'\\u0059\\u24CE\\uFF39\\u1EF2\\u00DD\\u0176\\u1EF8\\u0232\\u1E8E\\u0178\\u1EF6\\u1EF4\\u01B3\\u024E\\u1EFE'},\n {base:'Z', letters:'\\u005A\\u24CF\\uFF3A\\u0179\\u1E90\\u017B\\u017D\\u1E92\\u1E94\\u01B5\\u0224\\u2C7F\\u2C6B\\uA762'},\n {base:'a', letters:'\\u0061\\u24D0\\uFF41\\u1E9A\\u00E0\\u00E1\\u00E2\\u1EA7\\u1EA5\\u1EAB\\u1EA9\\u00E3\\u0101\\u0103\\u1EB1\\u1EAF\\u1EB5\\u1EB3\\u0227\\u01E1\\u00E4\\u01DF\\u1EA3\\u00E5\\u01FB\\u01CE\\u0201\\u0203\\u1EA1\\u1EAD\\u1EB7\\u1E01\\u0105\\u2C65\\u0250'},\n {base:'aa',letters:'\\uA733'},\n {base:'ae',letters:'\\u00E6\\u01FD\\u01E3'},\n {base:'ao',letters:'\\uA735'},\n {base:'au',letters:'\\uA737'},\n {base:'av',letters:'\\uA739\\uA73B'},\n {base:'ay',letters:'\\uA73D'},\n {base:'b', letters:'\\u0062\\u24D1\\uFF42\\u1E03\\u1E05\\u1E07\\u0180\\u0183\\u0253'},\n {base:'c', letters:'\\u0063\\u24D2\\uFF43\\u0107\\u0109\\u010B\\u010D\\u00E7\\u1E09\\u0188\\u023C\\uA73F\\u2184'},\n {base:'d', letters:'\\u0064\\u24D3\\uFF44\\u1E0B\\u010F\\u1E0D\\u1E11\\u1E13\\u1E0F\\u0111\\u018C\\u0256\\u0257\\uA77A'},\n {base:'dz',letters:'\\u01F3\\u01C6'},\n {base:'e', letters:'\\u0065\\u24D4\\uFF45\\u00E8\\u00E9\\u00EA\\u1EC1\\u1EBF\\u1EC5\\u1EC3\\u1EBD\\u0113\\u1E15\\u1E17\\u0115\\u0117\\u00EB\\u1EBB\\u011B\\u0205\\u0207\\u1EB9\\u1EC7\\u0229\\u1E1D\\u0119\\u1E19\\u1E1B\\u0247\\u025B\\u01DD'},\n {base:'f', letters:'\\u0066\\u24D5\\uFF46\\u1E1F\\u0192\\uA77C'},\n {base:'g', letters:'\\u0067\\u24D6\\uFF47\\u01F5\\u011D\\u1E21\\u011F\\u0121\\u01E7\\u0123\\u01E5\\u0260\\uA7A1\\u1D79\\uA77F'},\n {base:'h', letters:'\\u0068\\u24D7\\uFF48\\u0125\\u1E23\\u1E27\\u021F\\u1E25\\u1E29\\u1E2B\\u1E96\\u0127\\u2C68\\u2C76\\u0265'},\n {base:'hv',letters:'\\u0195'},\n {base:'i', letters:'\\u0069\\u24D8\\uFF49\\u00EC\\u00ED\\u00EE\\u0129\\u012B\\u012D\\u00EF\\u1E2F\\u1EC9\\u01D0\\u0209\\u020B\\u1ECB\\u012F\\u1E2D\\u0268\\u0131'},\n {base:'j', letters:'\\u006A\\u24D9\\uFF4A\\u0135\\u01F0\\u0249'},\n {base:'k', letters:'\\u006B\\u24DA\\uFF4B\\u1E31\\u01E9\\u1E33\\u0137\\u1E35\\u0199\\u2C6A\\uA741\\uA743\\uA745\\uA7A3'},\n {base:'l', letters:'\\u006C\\u24DB\\uFF4C\\u0140\\u013A\\u013E\\u1E37\\u1E39\\u013C\\u1E3D\\u1E3B\\u017F\\u0142\\u019A\\u026B\\u2C61\\uA749\\uA781\\uA747'},\n {base:'lj',letters:'\\u01C9'},\n {base:'m', letters:'\\u006D\\u24DC\\uFF4D\\u1E3F\\u1E41\\u1E43\\u0271\\u026F'},\n {base:'n', letters:'\\u006E\\u24DD\\uFF4E\\u01F9\\u0144\\u00F1\\u1E45\\u0148\\u1E47\\u0146\\u1E4B\\u1E49\\u019E\\u0272\\u0149\\uA791\\uA7A5'},\n {base:'nj',letters:'\\u01CC'},\n {base:'o', letters:'\\u006F\\u24DE\\uFF4F\\u00F2\\u00F3\\u00F4\\u1ED3\\u1ED1\\u1ED7\\u1ED5\\u00F5\\u1E4D\\u022D\\u1E4F\\u014D\\u1E51\\u1E53\\u014F\\u022F\\u0231\\u00F6\\u022B\\u1ECF\\u0151\\u01D2\\u020D\\u020F\\u01A1\\u1EDD\\u1EDB\\u1EE1\\u1EDF\\u1EE3\\u1ECD\\u1ED9\\u01EB\\u01ED\\u00F8\\u01FF\\u0254\\uA74B\\uA74D\\u0275'},\n {base:'oi',letters:'\\u01A3'},\n {base:'ou',letters:'\\u0223'},\n {base:'oo',letters:'\\uA74F'},\n {base:'p',letters:'\\u0070\\u24DF\\uFF50\\u1E55\\u1E57\\u01A5\\u1D7D\\uA751\\uA753\\uA755'},\n {base:'q',letters:'\\u0071\\u24E0\\uFF51\\u024B\\uA757\\uA759'},\n {base:'r',letters:'\\u0072\\u24E1\\uFF52\\u0155\\u1E59\\u0159\\u0211\\u0213\\u1E5B\\u1E5D\\u0157\\u1E5F\\u024D\\u027D\\uA75B\\uA7A7\\uA783'},\n {base:'s',letters:'\\u0073\\u24E2\\uFF53\\u00DF\\u015B\\u1E65\\u015D\\u1E61\\u0161\\u1E67\\u1E63\\u1E69\\u0219\\u015F\\u023F\\uA7A9\\uA785\\u1E9B'},\n {base:'t',letters:'\\u0074\\u24E3\\uFF54\\u1E6B\\u1E97\\u0165\\u1E6D\\u021B\\u0163\\u1E71\\u1E6F\\u0167\\u01AD\\u0288\\u2C66\\uA787'},\n {base:'tz',letters:'\\uA729'},\n {base:'u',letters: '\\u0075\\u24E4\\uFF55\\u00F9\\u00FA\\u00FB\\u0169\\u1E79\\u016B\\u1E7B\\u016D\\u00FC\\u01DC\\u01D8\\u01D6\\u01DA\\u1EE7\\u016F\\u0171\\u01D4\\u0215\\u0217\\u01B0\\u1EEB\\u1EE9\\u1EEF\\u1EED\\u1EF1\\u1EE5\\u1E73\\u0173\\u1E77\\u1E75\\u0289'},\n {base:'v',letters:'\\u0076\\u24E5\\uFF56\\u1E7D\\u1E7F\\u028B\\uA75F\\u028C'},\n {base:'vy',letters:'\\uA761'},\n {base:'w',letters:'\\u0077\\u24E6\\uFF57\\u1E81\\u1E83\\u0175\\u1E87\\u1E85\\u1E98\\u1E89\\u2C73'},\n {base:'x',letters:'\\u0078\\u24E7\\uFF58\\u1E8B\\u1E8D'},\n {base:'y',letters:'\\u0079\\u24E8\\uFF59\\u1EF3\\u00FD\\u0177\\u1EF9\\u0233\\u1E8F\\u00FF\\u1EF7\\u1E99\\u1EF5\\u01B4\\u024F\\u1EFF'},\n {base:'z',letters:'\\u007A\\u24E9\\uFF5A\\u017A\\u1E91\\u017C\\u017E\\u1E93\\u1E95\\u01B6\\u0225\\u0240\\u2C6C\\uA763'}\n ];\n \n var diacriticsMap = {};\n for (var i=0; i < defaultDiacriticsRemovalap.length; i++){\n var letters = defaultDiacriticsRemovalap[i].letters;\n for (var j=0; j < letters.length ; j++){\n diacriticsMap[letters[j]] = defaultDiacriticsRemovalap[i].base;\n }\n }\n \n function removeDiacritics (str) {\n return str.replace(/[^\\u0000-\\u007E]/g, function(a){ \n return diacriticsMap[a] || a; \n });\n }\n \n // Trigger\n s.triggerEvent = function (eventName, eventData) {\n s.container.trigger(eventName, eventData);\n if (s.searchList.length > 0) s.searchList.trigger(eventName, eventData);\n };\n \n // Enable/disalbe\n s.enable = function () {\n function _enable() {\n if (s.searchList.length && !s.container.hasClass('searchbar-active')) s.overlay.addClass('searchbar-overlay-active');\n s.container.addClass('searchbar-active');\n if (s.cancelButton.length > 0) s.cancelButton.css(cancelMarginProp, '0px');\n s.triggerEvent('enableSearch');\n s.active = true;\n }\n if (app.device.ios) {\n setTimeout(function () {\n _enable();\n }, 400);\n }\n else {\n _enable();\n }\n };\n \n s.disable = function () {\n s.input.val('').trigger('change');\n s.container.removeClass('searchbar-active searchbar-not-empty');\n if (s.cancelButton.length > 0) s.cancelButton.css(cancelMarginProp, -s.cancelButton[0].offsetWidth + 'px');\n \n if (s.searchList.length) s.overlay.removeClass('searchbar-overlay-active');\n function _disable() {\n s.input.blur();\n s.triggerEvent('disableSearch');\n s.active = false;\n }\n if (app.device.ios) {\n setTimeout(function () {\n _disable();\n }, 400);\n }\n else {\n _disable();\n }\n };\n \n // Clear\n s.clear = function () {\n s.input.val('').trigger('change').focus();\n s.triggerEvent('clearSearch');\n };\n \n // Search\n s.handleInput = function () {\n setTimeout(function () {\n var value = s.input.val().trim();\n if (s.searchList.length > 0 && (s.params.searchIn || s.isVirtualList)) s.search(value, true);\n }, 0);\n };\n \n var previousQuery = '';\n var virtualList;\n s.search = function (query, internal) {\n if (query.trim() === previousQuery) return;\n previousQuery = query.trim();\n \n if (!internal) {\n if (!s.active) {\n s.enable();\n }\n if (!internal) {\n s.input.val(query);\n }\n }\n // Add active/inactive classes on overlay\n if (query.length === 0) {\n s.container.removeClass('searchbar-not-empty');\n if (s.searchList.length && s.container.hasClass('searchbar-active')) s.overlay.addClass('searchbar-overlay-active');\n }\n else {\n s.container.addClass('searchbar-not-empty');\n if (s.searchList.length && s.container.hasClass('searchbar-active')) s.overlay.removeClass('searchbar-overlay-active');\n }\n \n if (s.params.customSearch) {\n s.triggerEvent('search', {query: query});\n return;\n }\n \n var foundItems = [];\n if (s.isVirtualList) {\n virtualList = s.searchList[0].f7VirtualList;\n if (query.trim() === '') {\n virtualList.resetFilter();\n s.notFound.hide();\n s.found.show();\n return;\n }\n if (virtualList.params.searchAll) {\n foundItems = virtualList.params.searchAll(query, virtualList.items) || [];\n }\n else if (virtualList.params.searchByItem) {\n for (var i = 0; i < virtualList.items.length; i++) {\n if(virtualList.params.searchByItem(query, i, virtualList.params.items[i])) {\n foundItems.push(i);\n }\n }\n }\n }\n else {\n var values;\n if (s.params.removeDiacritics) values = removeDiacritics(query.trim().toLowerCase()).split(' ');\n else {\n values = query.trim().toLowerCase().split(' ');\n }\n s.searchList.find('li').removeClass('hidden-by-searchbar').each(function (index, el) {\n el = $(el);\n var compareWithText = [];\n el.find(s.params.searchIn).each(function () {\n var itemText = $(this).text().trim().toLowerCase();\n if (s.params.removeDiacritics) itemText = removeDiacritics(itemText);\n compareWithText.push(itemText);\n });\n compareWithText = compareWithText.join(' ');\n var wordsMatch = 0;\n for (var i = 0; i < values.length; i++) {\n if (compareWithText.indexOf(values[i]) >= 0) wordsMatch++;\n }\n if (wordsMatch !== values.length && !(s.params.ignore && el.is(s.params.ignore))) {\n el.addClass('hidden-by-searchbar');\n }\n else {\n foundItems.push(el[0]);\n }\n });\n \n if (app.params.searchbarHideDividers) {\n s.searchList.find('.item-divider, .list-group-title').each(function () {\n var title = $(this);\n var nextElements = title.nextAll('li');\n var hide = true;\n for (var i = 0; i < nextElements.length; i++) {\n var nextEl = $(nextElements[i]);\n if (nextEl.hasClass('list-group-title') || nextEl.hasClass('item-divider')) break;\n if (!nextEl.hasClass('hidden-by-searchbar')) {\n hide = false;\n }\n }\n var ignore = s.params.ignore && title.is(s.params.ignore);\n if (hide && !ignore) title.addClass('hidden-by-searchbar');\n else title.removeClass('hidden-by-searchbar');\n });\n }\n if (app.params.searchbarHideGroups) {\n s.searchList.find('.list-group').each(function () {\n var group = $(this);\n var ignore = s.params.ignore && group.is(s.params.ignore);\n var notHidden = group.find('li:not(.hidden-by-searchbar)');\n if (notHidden.length === 0 && !ignore) {\n group.addClass('hidden-by-searchbar');\n }\n else {\n group.removeClass('hidden-by-searchbar');\n }\n });\n }\n }\n s.triggerEvent('search', {query: query, foundItems: foundItems});\n if (foundItems.length === 0) {\n s.notFound.show();\n s.found.hide();\n }\n else {\n s.notFound.hide();\n s.found.show();\n }\n if (s.isVirtualList) {\n virtualList.filterItems(foundItems);\n }\n };\n \n // Events\n function preventSubmit(e) {\n e.preventDefault();\n }\n \n s.attachEvents = function (destroy) {\n var method = destroy ? 'off' : 'on';\n s.container[method]('submit', preventSubmit);\n s.cancelButton[method]('click', s.disable);\n s.overlay[method]('click', s.disable);\n s.input[method]('focus', s.enable);\n s.input[method]('change keydown keypress keyup', s.handleInput);\n s.clearButton[method]('click', s.clear);\n };\n s.detachEvents = function() {\n s.attachEvents(true);\n };\n \n // Init Destroy\n s.init = function () {\n s.attachEvents();\n };\n s.destroy = function () {\n if (!s) return;\n s.detachEvents();\n s = null;\n };\n \n // Init\n s.init();\n \n s.container[0].f7Searchbar = s;\n return s;\n \n };\n app.searchbar = function (container, params) {\n return new Searchbar(container, params);\n };\n app.initSearchbar = function (container) {\n container = $(container);\n var searchbar = container.hasClass('searchbar') ? container : container.find('.searchbar');\n if (searchbar.length === 0) return;\n if (!searchbar.hasClass('searchbar-init')) return;\n \n var sb = app.searchbar(searchbar, searchbar.dataset());\n \n function onBeforeRemove() {\n if (sb) sb.destroy();\n }\n if (container.hasClass('page')) {\n container.once('pageBeforeRemove', onBeforeRemove); \n }\n else if (container.hasClass('navbar-inner')) {\n container.once('navbarBeforeRemove', onBeforeRemove);\n }\n };\n\n /*======================================================\n ************ Messagebar ************\n ======================================================*/\n var Messagebar = function (container, params) {\n var defaults = {\n textarea: null,\n maxHeight: null,\n };\n params = params || {};\n for (var def in defaults) {\n if (typeof params[def] === 'undefined' || params[def] === null) {\n params[def] = defaults[def];\n }\n }\n \n // Instance\n var m = this;\n \n // Params\n m.params = params;\n \n // Container\n m.container = $(container);\n if (m.container.length === 0) return;\n \n // Textarea\n m.textarea = m.params.textarea ? $(m.params.textarea) : m.container.find('textarea');\n \n // Is In Page\n m.pageContainer = m.container.parents('.page').eq(0);\n m.pageContent = m.pageContainer.find('.page-content');\n \n // Initial Sizes\n m.pageContentPadding = parseInt(m.pageContent.css('padding-bottom'));\n m.initialBarHeight = m.container[0].offsetHeight;\n m.initialAreaHeight = m.textarea[0].offsetHeight;\n \n \n // Resize textarea\n m.sizeTextarea = function () {\n // Reset\n m.textarea.css({'height': ''});\n \n var height = m.textarea[0].offsetHeight;\n var diff = height - m.textarea[0].clientHeight;\n var scrollHeight = m.textarea[0].scrollHeight;\n \n // Update\n if (scrollHeight + diff > height) {\n var newAreaHeight = scrollHeight + diff;\n var newBarHeight = m.initialBarHeight + (newAreaHeight - m.initialAreaHeight);\n var maxBarHeight = m.params.maxHeight || m.container.parents('.view')[0].offsetHeight - 88;\n if (newBarHeight > maxBarHeight) {\n newBarHeight = parseInt(maxBarHeight, 10);\n newAreaHeight = newBarHeight - m.initialBarHeight + m.initialAreaHeight;\n }\n m.textarea.css('height', newAreaHeight + 'px');\n m.container.css('height', newBarHeight + 'px');\n if (m.pageContent.length > 0) {\n m.pageContent.css('padding-bottom', newBarHeight + 'px');\n m.pageContent.scrollTop(m.pageContent[0].scrollHeight - m.pageContent[0].offsetHeight);\n }\n }\n else {\n if (m.pageContent.length > 0) {\n m.container.css({'height': '', 'bottom': ''});\n m.pageContent.css({'padding-bottom': ''});\n }\n }\n };\n \n // Clear\n m.clear = function () {\n m.textarea.val('').trigger('change');\n };\n m.value = function (value) {\n if (typeof value === 'undefined') return m.textarea.val();\n else m.textarea.val(value).trigger('change'); \n };\n \n // Handle textarea\n m.textareaTimeout = undefined;\n m.handleTextarea = function (e) {\n clearTimeout(m.textareaTimeout);\n m.textareaTimeout = setTimeout(function () {\n m.sizeTextarea();\n }, 0);\n };\n \n //Events\n function preventSubmit(e) {\n e.preventDefault();\n }\n \n m.attachEvents = function (destroy) {\n var method = destroy ? 'off' : 'on';\n m.container[method]('submit', preventSubmit);\n m.textarea[method]('change keydown keypress keyup paste cut', m.handleTextarea);\n };\n m.detachEvents = function () {\n m.attachEvents(true);\n };\n \n // Init Destroy\n m.init = function () {\n m.attachEvents();\n };\n m.destroy = function () {\n m.detachEvents();\n m = null;\n };\n \n // Init\n m.init();\n \n m.container[0].f7Messagebar = m;\n return m;\n };\n app.messagebar = function (container, params) {\n return new Messagebar(container, params);\n };\n app.initPageMessagebar = function (pageContainer) {\n pageContainer = $(pageContainer);\n var messagebar = pageContainer.hasClass('messagebar') ? pageContainer : pageContainer.find('.messagebar');\n if (messagebar.length === 0) return;\n if (!messagebar.hasClass('messagebar-init')) return;\n var mb = app.messagebar(messagebar, messagebar.dataset());\n \n // Destroy on page remove\n function pageBeforeRemove() {\n mb.destroy();\n pageContainer.off('pageBeforeRemove', pageBeforeRemove);\n }\n if (pageContainer.hasClass('page')) {\n pageContainer.on('pageBeforeRemove', pageBeforeRemove);\n }\n };\n\n /*======================================================\n ************ XHR ************\n ======================================================*/\n // XHR Caching\n app.cache = [];\n app.removeFromCache = function (url) {\n var index = false;\n for (var i = 0; i < app.cache.length; i++) {\n if (app.cache[i].url === url) index = i;\n }\n if (index !== false) app.cache.splice(index, 1);\n };\n \n // XHR\n app.xhr = false;\n app.get = function (url, view, ignoreCache, callback) {\n // should we ignore get params or not\n var _url = url;\n if (app.params.cacheIgnoreGetParameters && url.indexOf('?') >= 0) {\n _url = url.split('?')[0];\n }\n if (app.params.cache && !ignoreCache && url.indexOf('nocache') < 0 && app.params.cacheIgnore.indexOf(_url) < 0) {\n // Check is the url cached\n for (var i = 0; i < app.cache.length; i++) {\n if (app.cache[i].url === _url) {\n // Check expiration\n if ((new Date()).getTime() - app.cache[i].time < app.params.cacheDuration) {\n // Load from cache\n callback(app.cache[i].content);\n return false;\n }\n }\n }\n }\n \n app.xhr = $.ajax({\n url: url,\n method: 'GET',\n beforeSend: app.params.onAjaxStart,\n complete: function (xhr) {\n if ((xhr.status >= 200 && xhr.status < 300) || xhr.status === 0) {\n if (app.params.cache && !ignoreCache) {\n app.removeFromCache(_url);\n app.cache.push({\n url: _url,\n time: (new Date()).getTime(),\n content: xhr.responseText\n });\n }\n callback(xhr.responseText, false);\n }\n else {\n callback(xhr.responseText, true);\n }\n if (app.params.onAjaxComplete) app.params.onAjaxComplete(xhr);\n },\n error: function (xhr) {\n callback(xhr.responseText, true);\n if (app.params.onAjaxError) app.params.onAjaxError(xhr);\n }\n });\n if (view) view.xhr = app.xhr;\n \n return app.xhr;\n };\n \n\n /*======================================================\n ************ Pages ************\n ======================================================*/\n // Page Callbacks API\n app.pageCallbacks = {};\n \n app.onPage = function (callbackName, pageName, callback) {\n if (pageName && pageName.split(' ').length > 1) {\n var pageNames = pageName.split(' ');\n var returnCallbacks = [];\n for (var i = 0; i < pageNames.length; i++) {\n returnCallbacks.push(app.onPage(callbackName, pageNames[i], callback));\n }\n returnCallbacks.remove = function () {\n for (var i = 0; i < returnCallbacks.length; i++) {\n returnCallbacks[i].remove();\n }\n };\n returnCallbacks.trigger = function () {\n for (var i = 0; i < returnCallbacks.length; i++) {\n returnCallbacks[i].trigger();\n }\n };\n return returnCallbacks;\n }\n var callbacks = app.pageCallbacks[callbackName][pageName];\n if (!callbacks) {\n callbacks = app.pageCallbacks[callbackName][pageName] = [];\n }\n app.pageCallbacks[callbackName][pageName].push(callback);\n return {\n remove: function () {\n var removeIndex;\n for (var i = 0; i < callbacks.length; i++) {\n if (callbacks[i].toString() === callback.toString()) {\n removeIndex = i;\n }\n }\n if (typeof removeIndex !== 'undefined') callbacks.splice(removeIndex, 1);\n },\n trigger: callback\n };\n };\n \n //Create callbacks methods dynamically\n function createPageCallback(callbackName) {\n var capitalized = callbackName.replace(/^./, function (match) {\n return match.toUpperCase();\n });\n app['onPage' + capitalized] = function (pageName, callback) {\n return app.onPage(callbackName, pageName, callback);\n };\n }\n \n var pageCallbacksNames = ('beforeInit init reinit beforeAnimation afterAnimation back afterBack beforeRemove').split(' ');\n for (var i = 0; i < pageCallbacksNames.length; i++) {\n app.pageCallbacks[pageCallbacksNames[i]] = {};\n createPageCallback(pageCallbacksNames[i]);\n }\n \n app.triggerPageCallbacks = function (callbackName, pageName, pageData) {\n var allPagesCallbacks = app.pageCallbacks[callbackName]['*'];\n if (allPagesCallbacks) {\n for (var j = 0; j < allPagesCallbacks.length; j++) {\n allPagesCallbacks[j](pageData);\n }\n }\n var callbacks = app.pageCallbacks[callbackName][pageName];\n if (!callbacks || callbacks.length === 0) return;\n for (var i = 0; i < callbacks.length; i++) {\n callbacks[i](pageData);\n }\n };\n \n // On Page Init Callback\n app.pageInitCallback = function (view, params) {\n var pageContainer = params.pageContainer;\n if (pageContainer.f7PageInitialized && !view.params.domCache) return;\n \n // Page Data\n var pageData = {\n container: pageContainer,\n url: params.url,\n query: params.query || $.parseUrlQuery(params.url || ''),\n name: $(pageContainer).attr('data-page'),\n view: view,\n from: params.position,\n context: params.context,\n navbarInnerContainer: params.navbarInnerContainer,\n fromPage: params.fromPage\n };\n if (params.fromPage && !params.fromPage.navbarInnerContainer && params.oldNavbarInnerContainer) {\n params.fromPage.navbarInnerContainer = params.oldNavbarInnerContainer;\n }\n \n if (pageContainer.f7PageInitialized && view.params.domCache) {\n // Reinit Page\n app.reinitPage(pageContainer);\n \n // Callbacks\n app.pluginHook('pageReinit', pageData);\n if (app.params.onPageReinit) app.params.onPageBeforeInit(app, pageData);\n app.triggerPageCallbacks('reinit', pageData.name, pageData);\n $(pageData.container).trigger('pageReinit', {page: pageData});\n return;\n }\n pageContainer.f7PageInitialized = true;\n \n // Store pagedata in page\n pageContainer.f7PageData = pageData;\n \n // Update View's activePage\n if (view && !params.preloadOnly && !params.reloadPrevious) {\n // Add data-page on view\n $(view.container).attr('data-page', pageData.name);\n // Update View active page data\n view.activePage = pageData;\n }\n \n // Before Init Callbacks\n app.pluginHook('pageBeforeInit', pageData);\n if (app.params.onPageBeforeInit) app.params.onPageBeforeInit(app, pageData);\n app.triggerPageCallbacks('beforeInit', pageData.name, pageData);\n $(pageData.container).trigger('pageBeforeInit', {page: pageData});\n \n // Init page\n app.initPage(pageContainer);\n \n // Init Callback\n app.pluginHook('pageInit', pageData);\n if (app.params.onPageInit) app.params.onPageInit(app, pageData);\n app.triggerPageCallbacks('init', pageData.name, pageData);\n $(pageData.container).trigger('pageInit', {page: pageData});\n };\n app.pageRemoveCallback = function (view, pageContainer, position) {\n var pageContext;\n if (pageContainer.f7PageData) pageContext = pageContainer.f7PageData.context;\n // Page Data\n var pageData = {\n container: pageContainer,\n name: $(pageContainer).attr('data-page'),\n view: view,\n url: pageContainer.f7PageData && pageContainer.f7PageData.url,\n query: pageContainer.f7PageData && pageContainer.f7PageData.query,\n navbarInnerContainer: pageContainer.f7PageData && pageContainer.f7PageData.navbarInnerContainer,\n from: position,\n context: pageContext\n };\n // Before Init Callback\n app.pluginHook('pageBeforeRemove', pageData);\n if (app.params.onPageBeforeRemove) app.params.onPageBeforeRemove(app, pageData);\n app.triggerPageCallbacks('beforeRemove', pageData.name, pageData);\n $(pageData.container).trigger('pageBeforeRemove', {page: pageData});\n };\n app.pageBackCallback = function (callback, view, params) {\n // Page Data\n var pageContainer = params.pageContainer;\n var pageContext;\n if (pageContainer.f7PageData) pageContext = pageContainer.f7PageData.context;\n \n var pageData = {\n container: pageContainer,\n name: $(pageContainer).attr('data-page'),\n url: pageContainer.f7PageData && pageContainer.f7PageData.url,\n query: pageContainer.f7PageData && pageContainer.f7PageData.query,\n view: view,\n from: params.position,\n context: pageContext,\n navbarInnerContainer: pageContainer.f7PageData && pageContainer.f7PageData.navbarInnerContainer,\n swipeBack: params.swipeBack\n };\n \n if (callback === 'after') {\n app.pluginHook('pageAfterBack', pageData);\n if (app.params.onPageAfterBack) app.params.onPageAfterBack(app, pageData);\n app.triggerPageCallbacks('afterBack', pageData.name, pageData);\n $(pageContainer).trigger('pageAfterBack', {page: pageData});\n \n }\n if (callback === 'before') {\n app.pluginHook('pageBack', pageData);\n if (app.params.onPageBack) app.params.onPageBack(app, pageData);\n app.triggerPageCallbacks('back', pageData.name, pageData);\n $(pageData.container).trigger('pageBack', {page: pageData});\n }\n };\n app.pageAnimCallback = function (callback, view, params) {\n var pageContainer = params.pageContainer;\n var pageContext;\n if (pageContainer.f7PageData) pageContext = pageContainer.f7PageData.context;\n // Page Data\n var pageData = {\n container: pageContainer,\n url: params.url,\n query: params.query || $.parseUrlQuery(params.url || ''),\n name: $(pageContainer).attr('data-page'),\n view: view,\n from: params.position,\n context: pageContext,\n swipeBack: params.swipeBack,\n navbarInnerContainer: pageContainer.f7PageData && pageContainer.f7PageData.navbarInnerContainer,\n fromPage: params.fromPage\n };\n var oldPage = params.oldPage,\n newPage = params.newPage;\n \n // Update page date\n pageContainer.f7PageData = pageData;\n \n if (callback === 'after') {\n app.pluginHook('pageAfterAnimation', pageData);\n if (app.params.onPageAfterAnimation) app.params.onPageAfterAnimation(app, pageData);\n app.triggerPageCallbacks('afterAnimation', pageData.name, pageData);\n $(pageData.container).trigger('pageAfterAnimation', {page: pageData});\n \n }\n if (callback === 'before') {\n // Add data-page on view\n $(view.container).attr('data-page', pageData.name);\n \n // Update View's activePage\n if (view) view.activePage = pageData;\n \n // Hide/show navbar dynamically\n if (newPage.hasClass('no-navbar') && !oldPage.hasClass('no-navbar')) {\n view.hideNavbar();\n }\n if (!newPage.hasClass('no-navbar') && (oldPage.hasClass('no-navbar') || oldPage.hasClass('no-navbar-by-scroll'))) {\n view.showNavbar();\n }\n // Hide/show navbar toolbar\n if (newPage.hasClass('no-toolbar') && !oldPage.hasClass('no-toolbar')) {\n view.hideToolbar();\n }\n if (!newPage.hasClass('no-toolbar') && (oldPage.hasClass('no-toolbar') || oldPage.hasClass('no-toolbar-by-scroll'))) {\n view.showToolbar();\n }\n // Hide/show tabbar\n var tabBar;\n if (newPage.hasClass('no-tabbar') && !oldPage.hasClass('no-tabbar')) {\n tabBar = $(view.container).find('.tabbar');\n if (tabBar.length === 0) tabBar = $(view.container).parents('.' + app.params.viewsClass).find('.tabbar');\n app.hideToolbar(tabBar);\n }\n if (!newPage.hasClass('no-tabbar') && (oldPage.hasClass('no-tabbar') || oldPage.hasClass('no-tabbar-by-scroll'))) {\n tabBar = $(view.container).find('.tabbar');\n if (tabBar.length === 0) tabBar = $(view.container).parents('.' + app.params.viewsClass).find('.tabbar');\n app.showToolbar(tabBar);\n }\n \n oldPage.removeClass('no-navbar-by-scroll no-toolbar-by-scroll');\n // Callbacks\n app.pluginHook('pageBeforeAnimation', pageData);\n if (app.params.onPageBeforeAnimation) app.params.onPageBeforeAnimation(app, pageData);\n app.triggerPageCallbacks('beforeAnimation', pageData.name, pageData);\n $(pageData.container).trigger('pageBeforeAnimation', {page: pageData});\n }\n };\n \n // Init Page Events and Manipulations\n app.initPage = function (pageContainer) {\n pageContainer = $(pageContainer);\n // Size navbars on page load\n if (app.sizeNavbars) app.sizeNavbars(pageContainer.parents('.' + app.params.viewClass)[0]);\n // Init messages\n if (app.initPageMessages) app.initPageMessages(pageContainer);\n // Init forms storage\n if (app.initFormsStorage) app.initFormsStorage(pageContainer);\n // Init smart select\n if (app.initSmartSelects) app.initSmartSelects(pageContainer);\n // Init slider\n if (app.initPageSwiper) app.initPageSwiper(pageContainer);\n // Init pull to refres\n if (app.initPullToRefresh) app.initPullToRefresh(pageContainer);\n // Init infinite scroll\n if (app.initInfiniteScroll) app.initInfiniteScroll(pageContainer);\n // Init searchbar\n if (app.initSearchbar) app.initSearchbar(pageContainer);\n // Init message bar\n if (app.initPageMessagebar) app.initPageMessagebar(pageContainer);\n // Init scroll toolbars\n if (app.initScrollToolbars) app.initScrollToolbars(pageContainer);\n // Init scroll toolbars\n if (app.initImagesLazyLoad) app.initImagesLazyLoad(pageContainer);\n };\n app.reinitPage = function (pageContainer) {\n pageContainer = $(pageContainer);\n // Size navbars on page reinit\n if (app.sizeNavbars) app.sizeNavbars(pageContainer.parents('.' + app.params.viewClass)[0]);\n // Reinit slider\n if (app.reinitPageSwiper) app.reinitPageSwiper(pageContainer);\n // Reinit lazy load\n if (app.reinitLazyLoad) app.reinitLazyLoad(pageContainer);\n };\n app.initPageWithCallback = function (pageContainer) {\n pageContainer = $(pageContainer);\n var viewContainer = pageContainer.parents('.' + app.params.viewClass);\n if (viewContainer.length === 0) return;\n var view = viewContainer[0].f7View || undefined;\n var url = view && view.url ? view.url : undefined;\n if (viewContainer && pageContainer.attr('data-page')) {\n viewContainer.attr('data-page', pageContainer.attr('data-page'));\n }\n app.pageInitCallback(view, {pageContainer: pageContainer[0], url: url, position: 'center'});\n };\n\n /*======================================================\n ************ Navigation / Router ************\n ======================================================*/\n app.router = {\n // Temporary DOM Element\n temporaryDom: document.createElement('div'),\n \n // Find page or navbar in passed container which are related to View\n findElement: function (selector, container, view, notCached) {\n container = $(container);\n if (notCached) selector = selector + ':not(.cached)';\n var found = container.find(selector);\n if (found.length > 1) {\n if (typeof view.selector === 'string') {\n // Search in related view\n found = container.find(view.selector + ' ' + selector);\n }\n if (found.length > 1) {\n // Search in main view\n found = container.find('.' + app.params.viewMainClass + ' ' + selector);\n }\n }\n if (found.length === 1) return found;\n else {\n // Try to find non cached\n if (!notCached) found = app.router.findElement(selector, container, view, true);\n if (found && found.length === 1) return found;\n else return undefined;\n }\n },\n \n // Set pages classess for animationEnd\n animatePages: function (leftPage, rightPage, direction, view) {\n // Loading new page\n var removeClasses = 'page-on-center page-on-right page-on-left';\n if (direction === 'to-left') {\n leftPage.removeClass(removeClasses).addClass('page-from-center-to-left');\n rightPage.removeClass(removeClasses).addClass('page-from-right-to-center');\n }\n // Go back\n if (direction === 'to-right') {\n leftPage.removeClass(removeClasses).addClass('page-from-left-to-center');\n rightPage.removeClass(removeClasses).addClass('page-from-center-to-right');\n \n }\n },\n \n // Prepare navbar before animarion\n prepareNavbar: function (newNavbarInner, oldNavbarInner, newNavbarPosition) {\n $(newNavbarInner).find('.sliding').each(function () {\n var sliding = $(this);\n var slidingOffset = newNavbarPosition === 'right' ? this.f7NavbarRightOffset : this.f7NavbarLeftOffset;\n \n if (app.params.animateNavBackIcon) {\n if (sliding.hasClass('left') && sliding.find('.back .icon').length > 0) {\n sliding.find('.back .icon').transform('translate3d(' + (-slidingOffset) + 'px,0,0)');\n }\n if (newNavbarPosition === 'left' && sliding.hasClass('center') && $(oldNavbarInner).find('.left .back .icon ~ span').length > 0) {\n slidingOffset += $(oldNavbarInner).find('.left .back span')[0].offsetLeft;\n }\n }\n \n sliding.transform('translate3d(' + slidingOffset + 'px,0,0)');\n });\n },\n \n // Set navbars classess for animation\n animateNavbars: function (leftNavbarInner, rightNavbarInner, direction, view) {\n // Loading new page\n var removeClasses = 'navbar-on-right navbar-on-center navbar-on-left';\n if (direction === 'to-left') {\n rightNavbarInner.removeClass(removeClasses).addClass('navbar-from-right-to-center');\n rightNavbarInner.find('.sliding').each(function () {\n var sliding = $(this);\n sliding.transform('translate3d(0px,0,0)');\n if (app.params.animateNavBackIcon) {\n if (sliding.hasClass('left') && sliding.find('.back .icon').length > 0) {\n sliding.find('.back .icon').transform('translate3d(0px,0,0)');\n }\n }\n });\n \n leftNavbarInner.removeClass(removeClasses).addClass('navbar-from-center-to-left');\n leftNavbarInner.find('.sliding').each(function () {\n var sliding = $(this);\n if (app.params.animateNavBackIcon) {\n if (sliding.hasClass('center') && rightNavbarInner.find('.sliding.left .back .icon').length > 0) {\n this.f7NavbarLeftOffset += rightNavbarInner.find('.sliding.left .back span')[0].offsetLeft;\n }\n if (sliding.hasClass('left') && sliding.find('.back .icon').length > 0) {\n sliding.find('.back .icon').transform('translate3d(' + (-this.f7NavbarLeftOffset) + 'px,0,0)');\n }\n }\n sliding.transform('translate3d(' + (this.f7NavbarLeftOffset) + 'px,0,0)');\n });\n }\n // Go back\n if (direction === 'to-right') {\n leftNavbarInner.removeClass(removeClasses).addClass('navbar-from-left-to-center');\n leftNavbarInner.find('.sliding').each(function () {\n var sliding = $(this);\n sliding.transform('translate3d(0px,0,0)');\n if (app.params.animateNavBackIcon) {\n if (sliding.hasClass('left') && sliding.find('.back .icon').length > 0) {\n sliding.find('.back .icon').transform('translate3d(0px,0,0)');\n }\n }\n });\n \n rightNavbarInner.removeClass(removeClasses).addClass('navbar-from-center-to-right');\n rightNavbarInner.find('.sliding').each(function () {\n var sliding = $(this);\n if (app.params.animateNavBackIcon) {\n if (sliding.hasClass('left') && sliding.find('.back .icon').length > 0) {\n sliding.find('.back .icon').transform('translate3d(' + (-this.f7NavbarRightOffset) + 'px,0,0)');\n }\n }\n sliding.transform('translate3d(' + (this.f7NavbarRightOffset) + 'px,0,0)');\n });\n }\n },\n \n preprocess: function(view, content, url, next) {\n // Plugin hook\n app.pluginHook('routerPreprocess', view, content, url, next);\n \n // Preprocess by plugin\n content = app.pluginProcess('preprocess', content);\n \n if (view && view.params && view.params.preprocess) {\n content = view.params.preprocess(content, url, next);\n if (typeof content !== 'undefined') {\n next(content);\n }\n } \n else if (app.params.preprocess) {\n content = app.params.preprocess(content, url, next);\n if (typeof content !== 'undefined') {\n next(content);\n } \n }\n else {\n next(content);\n }\n },\n preroute: function(view, options) {\n app.pluginHook('routerPreroute', view, options);\n if ((app.params.preroute && app.params.preroute(view, options) === false) || (view && view.params.preroute && view.params.preroute(view, options) === false)) {\n return true;\n }\n else {\n return false;\n }\n },\n \n template7Render: function (view, options) {\n var url = options.url,\n content = options.content, //initial content\n t7_rendered_content = options.content, // will be rendered using Template7\n context = options.context, // Context data for Template7\n contextName = options.contextName, \n template = options.template, // Template 7 compiled template\n pageName = options.pageName;\n \n var t7_ctx, t7_template;\n if (typeof content === 'string') {\n if (url) {\n if (app.template7Cache[url]) t7_template = t7.cache[url];\n else {\n t7_template = t7.compile(content);\n t7.cache[url] = t7_template;\n }\n }\n else t7_template = t7.compile(content);\n }\n else if (template) {\n t7_template = template;\n }\n \n if (context) t7_ctx = context;\n else {\n if (contextName) {\n if (contextName.indexOf('.') >= 0) {\n var _ctx_path = contextName.split('.');\n var _ctx = t7.data[_ctx_path[0]];\n for (var i = 1; i < _ctx_path.length; i++) {\n if (_ctx_path[i]) _ctx = _ctx[_ctx_path[i]];\n }\n t7_ctx = _ctx;\n }\n else t7_ctx = t7.data[contextName];\n }\n if (!t7_ctx && url) {\n t7_ctx = t7.data['url:' + url];\n }\n if (!t7_ctx && typeof content === 'string' && !template) {\n //try to find by page name in content\n var pageNameMatch = content.match(/(data-page=[\"'][^\"^']*[\"'])/);\n if (pageNameMatch) {\n var page = pageNameMatch[0].split('data-page=')[1].replace(/['\"]/g, '');\n if (page) t7_ctx = t7.data['page:' + page];\n }\n }\n if (!t7_ctx && template && t7.templates) {\n // Try to find matched template name in t7.templates\n for (var templateName in t7.templates) {\n if (t7.templates[templateName] === template) t7_ctx = t7.data[templateName];\n }\n }\n if (!t7_ctx) t7_ctx = {};\n }\n \n if (t7_template && t7_ctx) {\n if (typeof t7_ctx === 'function') t7_ctx = t7_ctx();\n if (url) {\n // Extend data with URL query\n var query = $.parseUrlQuery(url);\n t7_ctx.url_query = {};\n for (var key in query) {\n t7_ctx.url_query[key] = query[key];\n }\n }\n t7_rendered_content = t7_template(t7_ctx);\n }\n \n return {content: t7_rendered_content, context: t7_ctx};\n }\n };\n \n \n app.router._load = function (view, options) {\n options = options || {};\n \n var url = options.url,\n content = options.content, //initial content\n t7_rendered = {content: options.content},\n template = options.template, // Template 7 compiled template\n pageName = options.pageName,\n viewContainer = $(view.container), \n pagesContainer = $(view.pagesContainer),\n animatePages = options.animatePages,\n newPage, oldPage, pagesInView, i, oldNavbarInner, newNavbarInner, navbar, dynamicNavbar, reloadPosition,\n isDynamicPage = typeof url === 'undefined' && content || template, \n pushState = options.pushState;\n \n if (typeof animatePages === 'undefined') animatePages = view.params.animatePages;\n \n // Plugin hook\n app.pluginHook('routerLoad', view, options);\n \n // Render with Template7\n if (app.params.template7Pages && typeof content === 'string' || template) {\n t7_rendered = app.router.template7Render(view, options);\n if (t7_rendered.content && !content) {\n content = t7_rendered.content;\n }\n }\n \n app.router.temporaryDom.innerHTML = '';\n \n // Parse DOM\n if (!pageName) {\n if (url || (typeof content === 'string')) {\n app.router.temporaryDom.innerHTML = t7_rendered.content;\n } else {\n if ('length' in content && content.length > 1) {\n for (var ci = 0; ci < content.length; ci++) {\n $(app.router.temporaryDom).append(content[ci]);\n }\n } else {\n $(app.router.temporaryDom).append(content);\n }\n }\n }\n \n // Reload position\n reloadPosition = options.reload && (options.reloadPrevious ? 'left' : 'center');\n \n // Find new page\n if (pageName) newPage = pagesContainer.find('.page[data-page=\"' + pageName + '\"]');\n else {\n newPage = app.router.findElement('.page', app.router.temporaryDom, view);\n }\n \n // If page not found exit\n if (!newPage || newPage.length === 0 || (pageName && view.activePage && view.activePage.name === pageName)) {\n view.allowPageChange = true;\n return;\n }\n \n newPage.addClass(options.reload ? 'page-on-' + reloadPosition : 'page-on-right');\n \n // Find old page (should be the last one) and remove older pages\n pagesInView = pagesContainer.children('.page:not(.cached)');\n \n if (options.reload && options.reloadPrevious && pagesInView.length === 1) {\n view.allowPageChange = true;\n return;\n }\n \n if (options.reload) {\n oldPage = pagesInView.eq(pagesInView.length - 1);\n }\n else {\n if (pagesInView.length > 1) {\n for (i = 0; i < pagesInView.length - 2; i++) {\n if (!view.params.domCache) {\n app.pageRemoveCallback(view, pagesInView[i], 'left');\n $(pagesInView[i]).remove();\n }\n else {\n $(pagesInView[i]).addClass('cached');\n }\n }\n if (!view.params.domCache) {\n app.pageRemoveCallback(view, pagesInView[i], 'left');\n $(pagesInView[i]).remove();\n }\n else {\n $(pagesInView[i]).addClass('cached');\n }\n }\n oldPage = pagesContainer.children('.page:not(.cached)');\n }\n if(view.params.domCache) newPage.removeClass('cached');\n \n // Dynamic navbar\n if (view.params.dynamicNavbar) {\n dynamicNavbar = true;\n // Find navbar\n if (pageName) {\n newNavbarInner = viewContainer.find('.navbar-inner[data-page=\"' + pageName + '\"]');\n }\n else {\n newNavbarInner = app.router.findElement('.navbar-inner', app.router.temporaryDom, view); \n }\n if (!newNavbarInner || newNavbarInner.length === 0) {\n dynamicNavbar = false;\n }\n navbar = viewContainer.find('.navbar');\n if (options.reload) {\n oldNavbarInner = navbar.find('.navbar-inner:not(.cached):last-child');\n }\n else {\n oldNavbarInner = navbar.find('.navbar-inner:not(.cached)'); \n \n if (oldNavbarInner.length > 0) {\n for (i = 0; i < oldNavbarInner.length - 1; i++) {\n if (!view.params.domCache) {\n app.navbarRemoveCallback(view, pagesInView[i], navbar[0], oldNavbarInner[i]);\n $(oldNavbarInner[i]).remove();\n }\n else\n $(oldNavbarInner[i]).addClass('cached');\n }\n if (!newNavbarInner && oldNavbarInner.length === 1) {\n if (!view.params.domCache) {\n app.navbarRemoveCallback(view, pagesInView[0], navbar[0], oldNavbarInner[0]);\n $(oldNavbarInner[0]).remove();\n }\n else\n $(oldNavbarInner[0]).addClass('cached');\n }\n oldNavbarInner = navbar.find('.navbar-inner:not(.cached)');\n }\n }\n }\n if (dynamicNavbar) {\n newNavbarInner.addClass(options.reload ? 'navbar-on-' + reloadPosition : 'navbar-on-right');\n if(view.params.domCache) newNavbarInner.removeClass('cached');\n newPage[0].f7RelatedNavbar = newNavbarInner[0];\n newNavbarInner[0].f7RelatedPage = newPage[0];\n }\n \n // save content areas into view's cache\n if (!url) {\n var newPageName = pageName || newPage.attr('data-page');\n if (isDynamicPage) url = '#' + app.params.dynamicPageUrl.replace(/{{name}}/g, newPageName).replace(/{{index}}/g, view.history.length - (options.reload ? 1 : 0));\n else url = '#' + newPageName;\n if (!view.params.domCache) {\n view.contentCache[url] = content;\n }\n if (view.params.domCache && pageName) {\n view.pagesCache[url] = pageName;\n }\n }\n \n // Push State\n if (app.params.pushState && !options.reloadPrevious && view.main) {\n if (typeof pushState === 'undefined') pushState = true;\n var pushStateRoot = app.params.pushStateRoot || '';\n var method = options.reload ? 'replaceState' : 'pushState';\n if (pushState) {\n if (!isDynamicPage && !pageName) {\n history[method]({url: url, viewIndex: app.views.indexOf(view)}, '', pushStateRoot + app.params.pushStateSeparator + url);\n }\n else if (isDynamicPage && content) {\n history[method]({content: content, url: url, viewIndex: app.views.indexOf(view)}, '', pushStateRoot + app.params.pushStateSeparator + url);\n }\n else if (pageName) {\n history[method]({pageName: pageName, url: url, viewIndex: app.views.indexOf(view)}, '', pushStateRoot + app.params.pushStateSeparator + url);\n }\n }\n }\n \n // Update View history\n view.url = url;\n if (options.reload) {\n var lastUrl = view.history[view.history.length - (options.reloadPrevious ? 2 : 1)];\n if (lastUrl && lastUrl.indexOf('#') === 0 && lastUrl in view.contentCache && lastUrl !== url) {\n view.contentCache[lastUrl] = null;\n delete view.contentCache[lastUrl];\n }\n view.history[view.history.length - (options.reloadPrevious ? 2 : 1)] = url;\n }\n else {\n view.history.push(url);\n }\n \n // Unique history\n var historyBecameUnique = false;\n if (view.params.uniqueHistory) {\n var _history = view.history;\n var _url = url;\n if (view.params.uniqueHistoryIgnoreGetParameters) {\n _history = [];\n _url = url.split('?')[0];\n for (i = 0; i < view.history.length; i++) {\n _history.push(view.history[i].split('?')[0]);\n }\n }\n \n if (_history.indexOf(_url) !== _history.lastIndexOf(_url)) {\n view.history = view.history.slice(0, _history.indexOf(_url));\n view.history.push(url);\n historyBecameUnique = true;\n }\n }\n // Dom manipulations\n if (options.reloadPrevious) {\n oldPage = oldPage.prev('.page');\n newPage.insertBefore(oldPage);\n if (dynamicNavbar) {\n oldNavbarInner = oldNavbarInner.prev('.navbar-inner');\n newNavbarInner.insertAfter(oldNavbarInner);\n }\n }\n else {\n pagesContainer.append(newPage[0]);\n if (dynamicNavbar) navbar.append(newNavbarInner[0]);\n }\n // Remove Old Page And Navbar\n if (options.reload) {\n if (view.params.domCache && view.initialPages.indexOf(oldPage[0]) >= 0) {\n oldPage.addClass('cached');\n if (dynamicNavbar) oldNavbarInner.addClass('cached');\n }\n else {\n app.pageRemoveCallback(view, oldPage[0], reloadPosition);\n if (dynamicNavbar) app.navbarRemoveCallback(view, oldPage[0], navbar[0], oldNavbarInner[0]);\n oldPage.remove();\n if (dynamicNavbar) oldNavbarInner.remove();\n }\n }\n \n // Page Init Events\n app.pageInitCallback(view, {\n pageContainer: newPage[0], \n url: url, \n position: options.reload ? reloadPosition : 'right', \n navbarInnerContainer: dynamicNavbar ? newNavbarInner && newNavbarInner[0] : undefined, \n oldNavbarInnerContainer: dynamicNavbar ? oldNavbarInner && oldNavbarInner[0] : undefined,\n context: t7_rendered.context,\n query: options.query,\n fromPage: oldPage && oldPage.length && oldPage[0].f7PageData,\n reload: options.reload,\n reloadPrevious: options.reloadPrevious\n });\n \n // Navbar init event\n if (dynamicNavbar) {\n app.navbarInitCallback(view, newPage[0], navbar[0], newNavbarInner[0], url, options.reload ? reloadPosition : 'right');\n }\n \n if (options.reload) {\n view.allowPageChange = true;\n if (historyBecameUnique) view.refreshPreviousPage();\n return;\n }\n \n if (dynamicNavbar && animatePages) {\n app.router.prepareNavbar(newNavbarInner, oldNavbarInner, 'right');\n }\n // Force reLayout\n var clientLeft = newPage[0].clientLeft;\n \n // Before Anim Callback\n app.pageAnimCallback('before', view, {\n pageContainer: newPage[0], \n url: url, \n position: 'right', \n oldPage: oldPage, \n newPage: newPage, \n query: options.query,\n fromPage: oldPage && oldPage.length && oldPage[0].f7PageData\n });\n \n function afterAnimation() {\n view.allowPageChange = true;\n newPage.removeClass('page-from-right-to-center page-on-right page-on-left').addClass('page-on-center');\n oldPage.removeClass('page-from-center-to-left page-on-center page-on-right').addClass('page-on-left');\n if (dynamicNavbar) {\n newNavbarInner.removeClass('navbar-from-right-to-center navbar-on-left navbar-on-right').addClass('navbar-on-center');\n oldNavbarInner.removeClass('navbar-from-center-to-left navbar-on-center navbar-on-right').addClass('navbar-on-left');\n }\n app.pageAnimCallback('after', view, {\n pageContainer: newPage[0], \n url: url, \n position: 'right', \n oldPage: oldPage, \n newPage: newPage, \n query: options.query,\n fromPage: oldPage && oldPage.length && oldPage[0].f7PageData\n });\n if (app.params.pushState && view.main) app.pushStateClearQueue();\n if (!(view.params.swipeBackPage || view.params.preloadPreviousPage)) {\n if (view.params.domCache) {\n oldPage.addClass('cached');\n oldNavbarInner.addClass('cached');\n }\n else {\n if (!(url.indexOf('#') === 0 && newPage.attr('data-page').indexOf('smart-select-') === 0)) {\n app.pageRemoveCallback(view, oldPage[0], 'left');\n if (dynamicNavbar) app.navbarRemoveCallback(view, oldPage[0], navbar[0], oldNavbarInner[0]);\n oldPage.remove();\n if (dynamicNavbar) oldNavbarInner.remove(); \n }\n }\n }\n if (view.params.uniqueHistory && historyBecameUnique) {\n view.refreshPreviousPage();\n }\n }\n if (animatePages) {\n // Set pages before animation\n app.router.animatePages(oldPage, newPage, 'to-left', view);\n \n // Dynamic navbar animation\n if (dynamicNavbar) {\n setTimeout(function() {\n app.router.animateNavbars(oldNavbarInner, newNavbarInner, 'to-left', view);\n }, 0);\n }\n newPage.animationEnd(function (e) {\n afterAnimation();\n });\n }\n else {\n if (dynamicNavbar) newNavbarInner.find('.sliding, .sliding .back .icon').transform('');\n afterAnimation();\n }\n \n };\n \n app.router.load = function (view, options) {\n if (app.router.preroute(view, options)) {\n return false;\n }\n options = options || {};\n var url = options.url;\n var content = options.content;\n var pageName = options.pageName;\n if (pageName) {\n if (pageName.indexOf('?') > 0) {\n options.query = $.parseUrlQuery(pageName);\n options.pageName = pageName = pageName.split('?')[0];\n }\n }\n var template = options.template;\n if (view.params.reloadPages === true) options.reload = true;\n \n if (!view.allowPageChange) return false;\n if (url && view.url === url && !options.reload && !view.params.allowDuplicateUrls) return false;\n view.allowPageChange = false;\n if (app.xhr && view.xhr && view.xhr === app.xhr) {\n app.xhr.abort();\n app.xhr = false;\n }\n function proceed(content) {\n app.router.preprocess(view, content, url, function (content) {\n options.content = content;\n app.router._load(view, options);\n });\n }\n if (content || pageName) {\n proceed(content);\n return;\n }\n else if (template) {\n app.router._load(view, options);\n return;\n }\n \n if (!options.url || options.url === '#') {\n view.allowPageChange = true;\n return;\n }\n app.get(options.url, view, options.ignoreCache, function (content, error) {\n if (error) {\n view.allowPageChange = true;\n return;\n }\n proceed(content);\n });\n };\n \n app.router._back = function (view, options) {\n options = options || {};\n var url = options.url,\n content = options.content, \n t7_rendered = {content: options.content}, // will be rendered using Template7\n template = options.template, // Template 7 compiled template\n animatePages = options.animatePages, \n preloadOnly = options.preloadOnly, \n pushState = options.pushState, \n ignoreCache = options.ignoreCache,\n force = options.force,\n pageName = options.pageName;\n \n var viewContainer = $(view.container),\n pagesContainer = $(view.pagesContainer),\n pagesInView = pagesContainer.children('.page:not(.cached)'),\n oldPage, newPage, oldNavbarInner, newNavbarInner, navbar, navbarInners, dynamicNavbar, manipulateDom = true;\n \n if (typeof animatePages === 'undefined') animatePages = view.params.animatePages;\n \n app.pluginHook('routerBack', view, options);\n \n // Render with Template7\n if (app.params.template7Pages && typeof content === 'string' || template) {\n t7_rendered = app.router.template7Render(view, options);\n if (t7_rendered.content && !content) {\n content = t7_rendered.content;\n }\n }\n \n // Push state\n if (app.params.pushState && view.main) {\n if (typeof pushState === 'undefined') pushState = true;\n if (!preloadOnly && history.state && pushState) {\n history.back();\n }\n }\n \n // Animation\n function afterAnimation() {\n app.pageBackCallback('after', view, {\n pageContainer: oldPage[0], \n url: url, \n position: 'center', \n oldPage: oldPage, \n newPage: newPage, \n });\n app.pageAnimCallback('after', view, {\n pageContainer: newPage[0], \n url: url, \n position: 'left', \n oldPage: oldPage, \n newPage: newPage, \n query: options.query,\n fromPage: oldPage && oldPage.length && oldPage[0].f7PageData\n });\n app.router.afterBack(view, oldPage[0], newPage[0]);\n }\n function animateBack() {\n // Page before animation callback\n app.pageBackCallback('before', view, {\n pageContainer: oldPage[0], \n url: url, \n position: 'center', \n oldPage: oldPage, \n newPage: newPage, \n });\n app.pageAnimCallback('before', view, {\n pageContainer: newPage[0], \n url: url, \n position: 'left', \n oldPage: oldPage, \n newPage: newPage, \n query: options.query,\n fromPage: oldPage && oldPage.length && oldPage[0].f7PageData\n });\n \n if (animatePages) {\n // Set pages before animation\n app.router.animatePages(newPage, oldPage, 'to-right', view);\n \n // Dynamic navbar animation\n if (dynamicNavbar) {\n setTimeout(function () {\n app.router.animateNavbars(newNavbarInner, oldNavbarInner, 'to-right', view);\n }, 0);\n }\n \n newPage.animationEnd(function () {\n afterAnimation();\n });\n }\n else {\n if (dynamicNavbar) newNavbarInner.find('.sliding, .sliding .back .icon').transform('');\n afterAnimation();\n }\n }\n \n function parseNewPage() {\n app.router.temporaryDom.innerHTML = '';\n // Parse DOM\n if (url || (typeof content === 'string')) {\n app.router.temporaryDom.innerHTML = t7_rendered.content;\n } else {\n if ('length' in content && content.length > 1) {\n for (var ci = 0; ci < content.length; ci++) {\n $(app.router.temporaryDom).append(content[ci]);\n }\n } else {\n $(app.router.temporaryDom).append(content);\n }\n }\n newPage = app.router.findElement('.page', app.router.temporaryDom, view);\n \n if (view.params.dynamicNavbar) {\n // Find navbar\n newNavbarInner = app.router.findElement('.navbar-inner', app.router.temporaryDom, view);\n }\n }\n function setPages() {\n // If pages not found or there are still more than one, exit\n if (!newPage || newPage.length === 0) {\n view.allowPageChange = true;\n return;\n }\n if (view.params.dynamicNavbar && typeof dynamicNavbar === 'undefined') {\n if (!newNavbarInner || newNavbarInner.length === 0) {\n dynamicNavbar = false;\n }\n else {\n dynamicNavbar = true;\n }\n }\n \n newPage.addClass('page-on-left').removeClass('cached');\n if (dynamicNavbar) {\n navbar = viewContainer.find('.navbar');\n navbarInners = viewContainer.find('.navbar-inner:not(.cached)');\n newNavbarInner.addClass('navbar-on-left').removeClass('cached');\n }\n // Remove/hide previous page in force mode\n if (force) {\n var pageToRemove, navbarToRemove;\n pageToRemove = $(pagesInView[pagesInView.length - 2]);\n \n if (dynamicNavbar) navbarToRemove = $(pageToRemove[0] && pageToRemove[0].f7RelatedNavbar || navbarInners[navbarInners.length - 2]);\n if (view.params.domCache && view.initialPages.indexOf(pageToRemove[0]) >= 0) {\n if (pageToRemove.length && pageToRemove[0] !== newPage[0]) pageToRemove.addClass('cached');\n if (dynamicNavbar && navbarToRemove.length && navbarToRemove[0] !== newNavbarInner[0]) {\n navbarToRemove.addClass('cached');\n }\n }\n else {\n if (pageToRemove.length) pageToRemove.remove();\n if (dynamicNavbar && navbarToRemove.length) {\n navbarToRemove.remove();\n } \n }\n pagesInView = pagesContainer.children('.page:not(.cached)');\n if (dynamicNavbar) {\n navbarInners = viewContainer.find('.navbar-inner:not(.cached)');\n }\n if (view.history.indexOf(url) >= 0) {\n view.history = view.history.slice(0, view.history.indexOf(url) + 2);\n }\n else {\n if (view.history[[view.history.length - 2]]) {\n view.history[view.history.length - 2] = url; \n }\n else {\n view.history.unshift(url);\n }\n }\n }\n \n oldPage = $(pagesInView[pagesInView.length - 1]);\n if (view.params.domCache) {\n if (oldPage[0] === newPage[0]) {\n oldPage = pagesContainer.children('.page.page-on-center');\n if (oldPage.length === 0 && view.activePage) oldPage = $(view.activePage.container);\n }\n }\n \n if (dynamicNavbar && !oldNavbarInner) {\n oldNavbarInner = $(navbarInners[navbarInners.length - 1]);\n if (view.params.domCache) {\n if (oldNavbarInner[0] === newNavbarInner[0]) {\n oldNavbarInner = navbar.children('.navbar-inner.navbar-on-center:not(.cached)');\n }\n if (oldNavbarInner.length === 0) {\n oldNavbarInner = navbar.children('.navbar-inner[data-page=\"'+oldPage.attr('data-page')+'\"]');\n }\n }\n if (oldNavbarInner.length === 0 || newNavbarInner[0] === oldNavbarInner[0]) dynamicNavbar = false;\n }\n \n if (dynamicNavbar) {\n if (manipulateDom) newNavbarInner.insertBefore(oldNavbarInner);\n newNavbarInner[0].f7RelatedPage = newPage[0];\n newPage[0].f7RelatedNavbar = newNavbarInner[0];\n }\n if (manipulateDom) newPage.insertBefore(oldPage);\n \n // Page Init Events\n app.pageInitCallback(view, {\n pageContainer: newPage[0], \n url: url, \n position: 'left', \n navbarInnerContainer: dynamicNavbar ? newNavbarInner[0] : undefined, \n oldNavbarInnerContainer: dynamicNavbar ? oldNavbarInner && oldNavbarInner[0] : undefined,\n context: t7_rendered.context,\n query: options.query,\n fromPage: oldPage && oldPage.length && oldPage[0].f7PageData,\n preloadOnly: preloadOnly\n });\n if (dynamicNavbar) {\n app.navbarInitCallback(view, newPage[0], navbar[0], newNavbarInner[0], url, 'right');\n }\n \n if (dynamicNavbar && newNavbarInner.hasClass('navbar-on-left') && animatePages) {\n app.router.prepareNavbar(newNavbarInner, oldNavbarInner, 'left');\n }\n \n if (preloadOnly) {\n view.allowPageChange = true;\n return;\n }\n \n // Update View's URL\n view.url = url;\n \n // Force reLayout\n var clientLeft = newPage[0].clientLeft;\n \n animateBack();\n return;\n }\n \n // Simple go back when we have pages on left\n if (pagesInView.length > 1 && !force) {\n // Exit if only preloadOnly\n if (preloadOnly) {\n view.allowPageChange = true;\n return;\n }\n // Update View's URL\n view.url = view.history[view.history.length - 2];\n url = view.url;\n \n // Define old and new pages\n newPage = $(pagesInView[pagesInView.length - 2]);\n oldPage = $(pagesInView[pagesInView.length - 1]);\n \n // Dynamic navbar\n if (view.params.dynamicNavbar) {\n dynamicNavbar = true;\n // Find navbar\n navbarInners = viewContainer.find('.navbar-inner:not(.cached)');\n newNavbarInner = $(navbarInners[0]);\n oldNavbarInner = $(navbarInners[1]);\n if (newNavbarInner.length === 0 || oldNavbarInner.length === 0 || oldNavbarInner[0] === newNavbarInner[0]) {\n dynamicNavbar = false;\n }\n }\n manipulateDom = false;\n setPages();\n return;\n }\n \n if (!force) {\n // Go back when there is no pages on left\n if (!preloadOnly) {\n view.url = view.history[view.history.length - 2];\n url = view.url;\n }\n \n if (content) {\n parseNewPage();\n setPages();\n return;\n }\n else if (pageName) {\n // Get dom cached pages\n newPage = $(viewContainer).find('.page[data-page=\"' + pageName + '\"]');\n if (view.params.dynamicNavbar) {\n newNavbarInner = $(viewContainer).find('.navbar-inner[data-page=\"' + pageName + '\"]');\n }\n setPages();\n return;\n }\n else {\n view.allowPageChange = true;\n return;\n }\n }\n else {\n if (url && url === view.url || pageName && view.activePage && view.activePage.name === pageName) {\n view.allowPageChange = true;\n return;\n }\n // Go back with force url\n if (content) {\n parseNewPage();\n setPages();\n return;\n }\n else if (pageName && view.params.domCache) {\n if (pageName) url = '#' + pageName;\n \n newPage = $(viewContainer).find('.page[data-page=\"' + pageName + '\"]');\n if (newPage[0].f7PageData && newPage[0].f7PageData.url) {\n url = newPage[0].f7PageData.url;\n }\n if (view.params.dynamicNavbar) {\n newNavbarInner = $(viewContainer).find('.navbar-inner[data-page=\"' + pageName + '\"]');\n if (newNavbarInner.length === 0) {\n newNavbarInner = $(newPage[0].f7RelatedNavbar);\n }\n }\n setPages();\n return;\n }\n else {\n view.allowPageChange = true;\n return;\n }\n }\n \n };\n app.router.back = function (view, options) {\n if (app.router.preroute(view, options)) {\n return false;\n }\n options = options || {};\n var url = options.url;\n var content = options.content;\n var pageName = options.pageName;\n if (pageName) {\n if (pageName.indexOf('?') > 0) {\n options.query = $.parseUrlQuery(pageName);\n options.pageName = pageName = pageName.split('?')[0];\n }\n }\n var force = options.force;\n if (!view.allowPageChange) return false;\n view.allowPageChange = false;\n if (app.xhr && view.xhr && view.xhr === app.xhr) {\n app.xhr.abort();\n app.xhr = false;\n }\n var pagesInView = $(view.pagesContainer).find('.page:not(.cached)');\n \n function proceed(content) {\n app.router.preprocess(view, content, url, function (content) {\n options.content = content;\n app.router._back(view, options);\n });\n }\n if (pagesInView.length > 1 && !force) {\n // Simple go back to previos page in view\n app.router._back(view, options);\n return;\n }\n if (!force) {\n url = options.url = view.history[view.history.length - 2];\n if (!url) {\n view.allowPageChange = true;\n return;\n }\n if (url.indexOf('#') === 0 && view.contentCache[url]) {\n proceed(view.contentCache[url]);\n return;\n }\n else if (url.indexOf('#') === 0 && view.params.domCache) {\n if (!pageName) options.pageName = url.split('#')[1];\n proceed();\n return;\n }\n else if (url.indexOf('#') !== 0) {\n // Load ajax page\n app.get(options.url, view, options.ignoreCache, function (content, error) {\n if (error) {\n view.allowPageChange = true;\n return;\n }\n proceed(content);\n });\n return;\n }\n }\n else {\n // Go back with force url\n if (!url && content) {\n proceed(content);\n return;\n }\n else if (!url && pageName) {\n if (pageName) url = '#' + pageName;\n proceed();\n return;\n }\n else if (url) {\n app.get(options.url, view, options.ignoreCache, function (content, error) {\n if (error) {\n view.allowPageChange = true;\n return;\n }\n proceed(content);\n });\n return;\n }\n }\n view.allowPageChange = true;\n return;\n };\n \n app.router.afterBack = function (view, oldPage, newPage) {\n // Remove old page and set classes on new one\n oldPage = $(oldPage);\n newPage = $(newPage);\n \n if (view.params.domCache && view.initialPages.indexOf(oldPage[0]) >= 0) {\n oldPage.removeClass('page-from-center-to-right').addClass('cached');\n }\n else {\n oldPage.remove();\n app.pageRemoveCallback(view, oldPage[0], 'right');\n }\n \n newPage.removeClass('page-from-left-to-center page-on-left').addClass('page-on-center');\n view.allowPageChange = true;\n \n // Update View's History\n var previousURL = view.history.pop();\n \n var newNavbar;\n \n // Updated dynamic navbar\n if (view.params.dynamicNavbar) {\n var inners = $(view.container).find('.navbar-inner:not(.cached)');\n var oldNavbar = $(oldPage[0].f7RelatedNavbar || inners[1]);\n if (view.params.domCache && view.initialNavbars.indexOf(oldNavbar[0]) >= 0) {\n oldNavbar.removeClass('navbar-from-center-to-right').addClass('cached');\n }\n else {\n app.navbarRemoveCallback(view, oldPage[0], undefined, oldNavbar[0]);\n oldNavbar.remove();\n }\n newNavbar = $(inners[0]).removeClass('navbar-on-left navbar-from-left-to-center').addClass('navbar-on-center');\n }\n \n // Remove pages in dom cache\n if (view.params.domCache) {\n $(view.container).find('.page.cached').each(function () {\n var page = $(this);\n var index = page.index();\n var pageUrl = page[0].f7PageData && page[0].f7PageData.url;\n if (pageUrl && view.history.indexOf(pageUrl) < 0 && view.initialPages.indexOf(this) < 0) {\n if (page[0].f7RelatedNavbar) $(page[0].f7RelatedNavbar).remove();\n page.remove();\n }\n });\n }\n \n // Check previous page is content based only and remove it from content cache\n if (!view.params.domCache && previousURL && previousURL.indexOf('#') > -1 && (previousURL in view.contentCache)) {\n view.contentCache[previousURL] = null;\n delete view.contentCache[previousURL];\n }\n \n if (app.params.pushState && view.main) app.pushStateClearQueue();\n \n // Preload previous page\n if (view.params.preloadPreviousPage) {\n if (view.params.domCache && view.history.length > 1) {\n var preloadUrl = view.history[view.history.length - 2];\n var previousPage;\n var previousNavbar;\n if (preloadUrl && view.pagesCache[preloadUrl]) {\n // Load by page name\n previousPage = $(view.container).find('.page[data-page=\"' + view.pagesCache[preloadUrl] + '\"]');\n previousPage.insertBefore(newPage);\n if (newNavbar) {\n previousNavbar = $(view.container).find('.navbar-inner[data-page=\"' + view.pagesCache[preloadUrl] + '\"]');\n previousNavbar.insertBefore(newNavbar);\n if(!previousNavbar || previousNavbar.length === 0) previousNavbar = newNavbar.prev('.navbar-inner.cached');\n }\n }\n else {\n // Just load previous page\n previousPage = newPage.prev('.page.cached');\n if (newNavbar) previousNavbar = newNavbar.prev('.navbar-inner.cached');\n }\n if (previousPage && previousPage.length > 0) previousPage.removeClass('cached page-on-right page-on-center').addClass('page-on-left');\n if (previousNavbar && previousNavbar.length > 0) previousNavbar.removeClass('cached navbar-on-right navbar-on-center').addClass('navbar-on-left');\n }\n else {\n app.router.back(view, {preloadOnly: true}); \n }\n }\n };\n \n\n /*======================================================\n ************ Modals ************\n ======================================================*/\n var _modalTemplateTempDiv = document.createElement('div');\n app.modalStack = [];\n app.modalStackClearQueue = function () {\n if (app.modalStack.length) {\n (app.modalStack.shift())();\n }\n };\n app.modal = function (params) {\n params = params || {};\n var modalHTML = '';\n if (app.params.modalTemplate) {\n if (!app._compiledTemplates.modal) app._compiledTemplates.modal = t7.compile(app.params.modalTemplate);\n modalHTML = app._compiledTemplates.modal(params);\n }\n else {\n var buttonsHTML = '';\n if (params.buttons && params.buttons.length > 0) {\n for (var i = 0; i < params.buttons.length; i++) {\n buttonsHTML += '';\n }\n }\n var titleHTML = params.title ? '