{"version":3,"file":"kendo.scheduler.min.js","names":["global","factory","exports","module","require","define","amd","globalThis","self","kendoscheduler","js","this","$","undefined$1","kendo","window","date","MS_PER_DAY","getDate","getMilliseconds","recurrence","encode","htmlEncode","keys","ui","Widget","DataBoundWidget","STRING","Popup","Calendar","DataSource","data","isPlainObject","extend","toString","Object","prototype","isArray","Array","NS","CLICK","MOUSEDOWN","TOUCHSTART","support","pointers","TOUCHMOVE","TOUCHEND","MOUSEMOVE","mousemove","CHANGE","PROGRESS","ERROR","CANCEL","REMOVE","RESET","SAVE","EDIT","DISABLED","FOCUSEDSTATE","valueStartEndBoundRegex","MIN_SCREEN","TODAY","Date","EXCEPTION_SEPARATOR","OLD_EXCEPTION_SEPARATOR_REGEXP","RECURRENCE_EXCEPTION","EDITRECURRING","COMMANDBUTTONTMPL","ref","className","attr","text","icon","fillMode","themeColor","html","renderButton","VIEWS_DROPDOWN_TEMPLATE","template","label","views","type","map","view","join","DEFAULT_TOOLS","pdf","name","attributes","class","pdfMobile","showText","today","previous","next","current","search","refresh","create","calendar","previousMobile","nextMobile","currentMobile","togglable","group","defaultDesktopTools","defaultMobileToolsFirst","defaultMobileToolsSecond","timezoneButtonText","model","message","startTimezone","endTimezone","appendTimezoneAttr","attrs","options","timezone","appendValidDateValidator","validationRules","fields","field","validation","validDateRule","validDateValidator","appendDateCompareValidator","dateCompareRule","dateCompare","convertData","method","removeUid","event","idx","length","startOffset","endOffset","start","getTimezoneOffset","end","convert","uid","getTime","getOccurrenceByUid","SchedulerDataReader","Class","init","schema","reader","originalFunction","wrapDataAccess","bind","serialize","call","ObservableArray","wrapDataSerialization","errors","parse","total","groups","aggregates","applyZone","fromZone","toZone","remove","input","filter","picker","widgetInstance","parseDate","val","format","value","SchedulerEvent","Model","that","fn","_defaultId","defaults","idField","_time","fieldTime","toUtcTime","_date","clone","updateUid","constructor","toJSON","duration","offset","MS_PER_MINUTE","expand","zone","update","eventInfo","set","_startTime","_endTime","isMultiDay","isAllDay","isException","isNew","recurrenceId","isOccurrence","isRecurring","recurrenceRule","isRecurrenceHead","id","toOccurrence","recurrenceException","obj","shouldSerialize","key","milliseconds","setTime","title","defaultValue","required","validDate","container","closest","startInput","find","endInput","startPicker","endPicker","editable","untilDateCompare","until","description","SchedulerDataSource","modelBase","apply","logic","filters","operator","Query","events","concat","expandAll","toArray","cancelChanges","_removeExceptionDate","insert","index","_createNewModel","accept","_pushCreated","_addExceptionDate","pushCreate","items","_removeExceptions","slice","item","shift","head","get","replaceRegExp","RegExp","toExceptionString","replace","test","newException","dataSource","Error","defaultCommands","canceledit","destroy","imageClass","iconClass","descriptionEditor","createValidationAttributes","appendTo","wrap","ruleName","rule","modelField","specialRules","datatype","inArray","isFunction","filterResourceEditorData","editor","parentValue","parentValueField","valueField","valueArray","editorValue","isMs","JSON","stringify","forEach","currentValue","indexOf","splice","trigger","bindParentValueChangeHandler","currentEditor","resource","parent","parentElement","ns","parentWidget","getKendoDropDownList","ev","sender","dataParentValueField","dataValueField","on","target","filterMobileResourceEditorData","parentSelectedValue","itemParentValue","getter","removeAttribute","setAttribute","moveEventRange","distance","editors","mobile","dateRange","dateTimeValidate","dateValidate","hide","timezonePopUp","messages","noTimezone","click","kendoMobileTimezoneEditor","optionLabel","kendoMobileRecurrenceEditor","pane","multipleResources","dataTextField","setTimeout","resources","desktop","timezoneEditorButton","visible","toggle","kendoTimezoneEditor","kendoRecurrenceEditor","kendoMultiSelect","valuePrimitive","itemTemplate","disabled","dataColorField","tagTemplate","select","e","dataItem","preventDefault","dataBound","list","each","i","el","element","addClass","kendoDropDownList","Editor","Observable","createButton","toggleDateValidationHandler","_toggleDateValidation","isDateTimeInput","shouldValidate","bindAttribute","is","allDayEvent","checkHierarchical","windows_zones","push","_initTimezoneEditor","repeat","recurrenceEditor","resourceIndex","parentResource","some","multiple","_buildDesktopEditTemplate","editableFields","this$1$1","renderCheckBox","separateTimezones","editableField","fieldName","fieldTitle","_createEndTimezoneButton","_buildMobileEditTemplate","_buildEditTemplate","isMobile","settings","Template","templateSettings","unescape","_revertTimezones","_startTimezone","_endTimezone","MobileEditor","arguments","Pane","viewEngine","viewOptions","renderOnInit","wrapInSections","detachOnHide","detachOnDestroy","css","height","animations","left","right","close","unbind","timezoneView","content","kSwitch","endTimezoneRow","last","cancel","timezoneTitle","save","append","contentElement","show","stopPropagation","hasClass","editView","_editPane","navigate","checked","enable","showDialog","actions","buttons","button","action","primary","document","body","kendoDialog","modal","preventScroll","closable","editEvent","updateText","removeText","cancelText","titleText","editorTitle","resetSeries","resetSeriesBtn","deleteBtn","kendoEditable","clearContainer","validateOnBlur","_views","roleSelector","not","eq","purge","PopupEditor","$html","deleteText","applyStylesFromKendoAttributes","kendoWindow","resizable","draggable","userTriggered","position","open","center","cycleForm","popup","_timezonePopup","buttonIndex","wrapper","currentTarget","getKendoWindow","activator","wnd","checkbox","saveButton","cancelButton","timezonePopup","startTimezoneChange","prop","timezoneEditorTitle","focus","Scheduler","_initModel","_wrapper","selectable","_tabindex","_toolbar","_dataSource","_resources","_resizeHandler","resize","_resizable","_movable","_bindResize","_navigation","_selectable","_touchHandlers","_ariaId","guid","_createEditor","mediaQueryList","matchMedia","addEventListener","_onMediaChange","_selectedView","toolbarEl","toolbar","getKendoToolBar","matches","_model","dateForTitle","shortDateForTitle","_unbindResize","off","dataItems","_data","eventsUids","dict","eventsUidsLength","eventsCount","sortedData","_isMobile","mobileOS","_isTouch","originalEvent","pointerType","_isInverseColor","eventElement","_groupsByResource","groupIndex","groupsArray","parentFieldValue","parentField","prevIndex","dataIndex","fieldValue","currentGroupIndex","selectedGroups","selection","_selection","selectedEvents","slots","_selectedSlots","_selectedEvents","_resourceBySlot","_old","clearSelection","groupsByResource","groupedResources","_selectEvents","_select","ranges","rangeStart","_startDate","rangeEnd","addDays","_endDate","timeSlotCollectionCount","toLocalDate","isDaySlot","eventsLength","isGrouped","ctrlKey","_ctrlKey","currentGroup","daySlotCollectionCount","collIdx","getTimeSlotCollection","dayCollIdx","getDaySlotCollection","getAttribute","_createSelection","startX","startY","endX","endY","timeStamp","touchMoveHandler","_touchMove","stop","_touchPosX","_tapPosition","_touchPosY","_userTouched","_scrolling","now","_preventFocus","delta","amplitude","_amplitude","_dragging","Math","abs","_mouseDownSelection","kineticScrollNeeded","animate","scrollTop","_mouseDown","_initialFocus","_shiftKey","_keydown","shiftKey","mouseMoveHandler","_mouseMove","which","isRight","_activeElement","focusElement","removeClass","_selectFirstSlot","firstSlot","firstAllDay","first","firstContent","_firstEvent","firstEvent","contentEvent","firstEventInAllDay","firstEventInContent","occurrenceByUid","_focusToolbar","oldSelection","oldEventsLength","removeAttr","currentUid","uids","coordinate","changedTouches","verticalScroll","scrollHeight","clientHeight","horizontalScroll","scrollWidth","clientWidth","round","scrollLeft","applyVerticalScroll","applyhorizontalScroll","clearTimeout","_moveTimer","slot","selectionByElement","startDate","endDate","backward","_viewByIndex","_keydownToolbar","keyCode","altKey","DOWN","_showCalendar","_selectedViewName","activeElement","_keydownView","cell","isModifier","arrowKeys","LEFT","RIGHT","UP","isRtl","ENTER","DELETE","BACKSPACE","moveToEvent","HOME","END","_scrollTo","removeEvent","_keydownShortcut","currentDate","toggleFullDay","addEvent","timezoneOffset","_keydownYearView","TAB","F10","_adjustSelectedDate","_keydownAgendaView","move","_keydownChangeView","viewByIndex","viewIndex","_keydownChangeDate","direction","nextDate","previousDate","toolbarIsFocused","ESC","_updateSelection","_updateEventForSelection","_timeSlotInterval","indexOfEvent","autoBind","snap","allDaySlot","min","max","workWeekStart","workWeekEnd","workDays","showWorkHours","startTime","endTime","currentTimeMarker","updateInterval","useLocalTimezone","ongoingEvents","cssClass","enabled","footer","deleteWindowTitle","selectView","ariaSlotLabel","ariaEventLabel","at","to","allDay","prefix","day","week","workWeek","agenda","month","timeline","timelineWeek","timelineWorkWeek","timelineMonth","year","recurrenceMessages","resetSeriesWindowTitle","deleteWindowOccurrence","deleteWindowSeries","editWindowTitle","editWindowOccurrence","editWindowSeries","confirmation","width","orientation","_refreshHandler","_progressHandler","_errorHandler","_resourceRefreshHandler","resourceDS","_resourceProgressHandler","_resourceErrorHandler","_editor","_moveDraggable","_resizeDraggable","add","setDataSource","fetch","siblings","startSlot","endSlot","startResources","clonedEvent","originSlot","originStartTime","clonedEvents","cachedEvents","movable","android","Draggable","ignore","holdToDrag","autoScroll","isTouch","_eventOptionsForMove","inverseColor","evtClone","evtCloneElement","_slotByPosition","x","startLocation","y","range","location","slotIndex","targetSlotElement","children","top","_updateMoveHint","_removeMoveHint","endResources","_isMultiDrag","evt","updatedEventOptions","eventOptions","_updateEvent","sync","cancelHold","handle","directions","dragstart","_updateEventForResize","drag","dir","currentSlot","originalStart","originalEnd","_updateResizeHint","dragend","dragHandle","_removeResizeHint","setHours","setMinutes","dragcancel","updateEvent","callback","_preventRefresh","_convertDates","getHours","getMinutes","getSeconds","recurrenceHead","getByUid","_showRecurringDialog","eventUid","exception","editRecurring","occurrenceText","seriesText","_modelForContainer","_confirmation","isResetSeries","_isEditorOpened","deleteRecurringConfirmation","deleteSeriesConfirmation","resetSeriesConfirmation","cancelEvent","_editEvent","saveEvent","dirty","_editRecurringDialog","_createPopupEditor","editOccurrence","editSeries","editRecurringMode","_createButton","command","commandName","edit","_set","_attemptRefresh","_deleteRecurringDialog","_removeEvent","occurrence","occurrencesInRange","deleteOccurrence","deleteSeries","createException","deleteOccurrenceConfirmation","createExceptionConfirmation","currentModel","seriesCallback","occurrenceCallback","exeptionCallback","deleteRecurring","_unbindView","angular","elements","_bindView","_viewRemoveHandler","_viewAddHandler","_viewEditHandler","_viewNavigateHandler","isWorkDay","switchWorkDay","_workDayMode","_selectView","_viewActivateHandler","constrainSelection","_renderView","_initialSize","_viewsCount","viewElementToSelect","viewsDropdown","viewsButtonGroup","rebind","viewName","_initializeView","mouseAndTouchPresent","mobileDateForTitle","force","size","getSize","currentSize","_size","selectedDate","isInDateRange","setFullYear","getFullYear","getMonth","isSettings","overrideOptions","trimOptions","defaultView","selected","hasType","defaultViews","time","resourceFetchArray","_preventRebind","when","then","_requestStart","_error","_progress","progress","resourcePromises","_resourceDataSource","groupName","promises","dataSourceInstance","_bindResourceEvents","isResourceGrouped","_refreshResource","observable","formattedDate","formattedShortDate","_processHandlers","_pdfClickHandler","saveAsPDF","_createClickHandler","_calendarClickHandler","_currentClickHandler","_todayClickHandler","_previousClickHandler","_nextClickHandler","_refreshClickHandler","_viewClickHandler","values","t","_processDefaults","viewsDdl","viewsMobile","viewsButtons","toLowerCase","_viewsButtons","_processToolbarArray","tools","toolbarOptions","commands","grep","unshift","_processViewTools","result","viewsIndex","_processToolbarItems","desktopItems","mobileItems","navigation","main","_processTools","secondToolbar","kendoToolBar","defaultTools","parentMessages","placeholder","throttle","targetElm","anchor","activate","_toggleResize","change","setOptions","depth","copyAnchorStyles","preventRefresh","visibleEndDate","refreshLayout","render","slotByPosition","slotByElement","centerX","centerY","resourcesBySlot","plugin","PDFMixin","SCHEDULER_EXPORT","_drawPDF","styles","style","cssText","scheduler","promise","Deferred","table","_drawPDFShadow","avoidLinks","done","args","page","pageNumber","totalPages","notify","resolve","fail","err","reject","always","TimezoneEditor","zones","zones_titles","_zonesQuery","_zoneTitleId","_zoneTitlePicker","_zonePicker","_zoneTitle","_zone","_value","zoneTitle","DropDownList","cascadeFrom","other_zone","ZONETITLEOPTIONTEMPLATE","ZONEOPTIONTEMPLATE","territory","MobileTimezoneEditor","_bindZones","_filter","_options","_zonePickerLabel","zoneSelect","after","zonePicker","zone_value","jQuery"],"sources":["kendo.scheduler.js"],"mappings":"CAAA,SAAWA,EAAQC,GACI,iBAAZC,SAA0C,oBAAXC,OAAyBA,OAAOD,QAAUD,EAAQG,QAAQ,yBAA0BA,QAAQ,qBAAsBA,QAAQ,wBAAyBA,QAAQ,mBAAoBA,QAAQ,2BAA4BA,QAAQ,iCAAkCA,QAAQ,2BAA4BA,QAAQ,8BAA+BA,QAAQ,iCAAkCA,QAAQ,gCAAiCA,QAAQ,mCAAoCA,QAAQ,+BAAgCA,QAAQ,mBAAoBA,QAAQ,iBAAkBA,QAAQ,gBAAiBA,QAAQ,mBAAoBA,QAAQ,oBAAqBA,QAAQ,wBAAyBA,QAAQ,mBACprB,mBAAXC,QAAyBA,OAAOC,IAAMD,OAAO,CAAC,yBAA0B,qBAAsB,wBAAyB,mBAAoB,2BAA4B,iCAAkC,2BAA4B,8BAA+B,iCAAkC,gCAAiC,mCAAoC,+BAAgC,mBAAoB,iBAAkB,gBAAiB,mBAAoB,oBAAqB,wBAAyB,mBAAoBJ,KAC9hBD,EAA+B,oBAAfO,WAA6BA,WAAaP,GAAUQ,MAAcC,eAAiBT,EAAOS,gBAAkB,GAAIT,EAAOS,eAAeC,GAAKT,KAHhK,CAIGU,MAAM,WA0kLL,OAvhLA,SAAUC,EAAGC,GACT,IAAIC,EAAQC,OAAOD,MACfE,EAAOF,EAAME,KACbC,EAAaD,EAAKC,WAClBC,EAAUF,EAAKE,QACfC,EAAkBL,EAAME,KAAKG,gBAC7BC,EAAaN,EAAMM,WACnBC,EAASP,EAAMQ,WACfC,EAAOT,EAAMS,KACbC,EAAKV,EAAMU,GACXC,EAASD,EAAGC,OACZC,EAAkBF,EAAGE,gBACrBC,EAAS,SACTC,EAAQJ,EAAGI,MACXC,EAAWL,EAAGK,SACdC,EAAahB,EAAMiB,KAAKD,WACxBE,EAAgBpB,EAAEoB,cAClBC,EAASrB,EAAEqB,OACXC,EAAWC,OAAOC,UAAUF,SAC5BG,EAAUC,MAAMD,QAChBE,EAAK,kBACLC,EAAQ,QACRC,EAAY,YACZC,EAAa5B,EAAM6B,QAAQC,SAAW,cAAgB,aACtDC,EAAY/B,EAAM6B,QAAQC,SAAW,cAAgB,YACrDE,EAAWhC,EAAM6B,QAAQC,SAAW,YAAc,WAClDG,EAAYjC,EAAM6B,QAAQK,UAC1BC,EAAS,SACTC,EAAW,WACXC,EAAQ,QACRC,EAAS,SACTC,EAAS,SACTC,EAAQ,cACRC,EAAO,OAEPC,EAAO,OACPC,EAAW,WAEXC,EAAe,UAEfC,EAA0B,mCAC1BC,EAAa,sBACbC,EAAQ3C,EAAQ,IAAI4C,MACpBC,EAAsB,IACtBC,EAAiC,MACjCC,EAAuB,sBAGvBC,EAAgB,sEAKhBC,EAAoB,SAAUC,GACtB,IAAIC,EAAYD,EAAIC,UAChBC,EAAOF,EAAIE,KACXC,EAAOH,EAAIG,KACXC,EAAOJ,EAAII,KACXC,EAAWL,EAAIK,SACfC,EAAaN,EAAIM,WAErB,OAAO5D,EAAM6D,KAAKC,aAAc,gCAAqCP,EAAY,KAAQC,EAAO,IAAMC,EAAO,YAAc,CAC3HC,KAAMA,EACNC,SAAUA,EACVC,WAAYA,KAGpBG,EAA0B/D,EAAMgE,UAAS,SAAUV,GAC3C,IAAIW,EAAQX,EAAIW,MACZC,EAAQZ,EAAIY,MAGhB,MAAO,uBAA0BD,EAAQ,gDAF9BX,EAAIa,KAEqF,KACpG9C,OAAOZ,KAAKyD,GAAOE,KAAI,SAAUC,GAAQ,MAAQ,kBAAqBA,EAAO,KAASH,EAAMG,GAAW,MAAI,eAAiBC,KAAK,IACrI,eAIJC,EAAgB,CACZC,IAAK,CACDC,KAAM,MACNN,KAAM,SACNT,KAAM,WACNgB,WAAY,CACRC,MAAO,UAGfC,UAAW,CACPH,KAAM,MACNN,KAAM,SACNT,KAAM,WACNmB,SAAU,WACVH,WAAY,CACRC,MAAO,UAGfG,MAAO,CACHL,KAAM,QACNN,KAAM,SACNO,WAAY,CACRC,MAAO,gBAGfI,SAAU,CACNN,KAAM,WACNN,KAAM,SACNT,KAAM,iBACNmB,SAAU,WACVH,WAAY,CACRC,MAAO,eAGfK,KAAM,CACFP,KAAM,OACNN,KAAM,SACNT,KAAM,kBACNmB,SAAU,WACVH,WAAY,CACRC,MAAO,eAGfM,QAAS,CACLR,KAAM,UACNN,KAAM,SACNT,KAAM,WACNC,SAAU,OACVF,KAAM,cACNiB,WAAY,CACR,YAAa,SACbC,MAAO,kBAGfO,OAAQ,CACJlB,SAAU,gOAEmChE,EAAMU,GAAGgD,KAAK,UAFjD,kBAKdyB,QAAS,CACLV,KAAM,UACNN,KAAM,SACNT,KAAM,kBACNmB,SAAU,WACVH,WAAY,CACRC,MAAO,wBAGfS,OAAQ,CACJX,KAAM,SACNN,KAAM,SACNT,KAAM,OACNgB,WAAY,CACRC,MAAO,mBAGfU,SAAU,CACNZ,KAAM,WACNN,KAAM,SACNT,KAAM,WACNgB,WAAY,CACRC,MAAO,mBAGfW,eAAgB,CACZb,KAAM,WACNN,KAAM,SACNT,KAAM,eACNmB,SAAU,WACVH,WAAY,CACRC,MAAO,eAGfY,WAAY,CACRd,KAAM,OACNN,KAAM,SACNT,KAAM,gBACNmB,SAAU,WACVH,WAAY,CACRC,MAAO,eAGfa,cAAe,CACXxB,SAAU,6JAOdK,KAAM,CACFI,KAAM,OACNN,KAAM,SACNsB,WAAW,EACXC,MAAO,UAIfC,EAAsB,CAClB,CAAC,QAAS,WAAY,QACtB,UACA,CAAExB,KAAM,WAGZyB,EAA0B,CACtB,CAAC,YACD,CAAEzB,KAAM,WAGZ0B,EAA2B,CACvB,iBACA,CAAE1B,KAAM,UACR,gBACA,CAAEA,KAAM,UACR,cAsHR,SAAS2B,EAAmBC,EAAOC,GAW/B,OAVAA,EAAUA,GAAW,GAEjBD,EAAME,gBACND,EAAUD,EAAME,cAEZF,EAAMG,cACNF,GAAW,MAAQD,EAAMG,cAI1BF,EAGX,SAASG,EAAmBC,EAAOC,GAC/B,IAAIC,EAAWD,EAAQC,SAEnBA,IACAF,EAAMpG,EAAMwD,KAAK,aAAe8C,GAIxC,SAASC,EAAyBH,EAAOC,GACrC,IAAIG,EAAkBH,EAAQN,MAAMU,OAAOJ,EAAQK,OAAOC,WAE1D,GAAIH,EAAiB,CACjB,IAAII,EAAgBJ,EAAgBK,mBAChCD,GAAiB1F,EAAc0F,IAAkBA,EAAcZ,UAC/DI,EAAMpG,EAAMwD,KAAK,kBAAoBoD,EAAcZ,UAK/D,SAASc,GAA2BV,EAAOC,GACvC,IAAIG,EAAkBH,EAAQN,MAAMU,OAAOJ,EAAQK,OAAOC,WAE1D,GAAIH,EAAiB,CACjB,IAAIO,EAAkBP,EAAgBQ,YAClCD,GAAmB7F,EAAc6F,IAAoBA,EAAgBf,UACrEI,EAAMpG,EAAMwD,KAAK,oBAAsBuD,EAAgBf,UAgCnE,SAASiB,GAAYhG,EAAMiG,EAAQZ,EAAUa,GACzC,IAAIC,EACAC,EACAC,EACAC,EACAC,EAIJ,IAAKH,EAAM,EAAGC,GAFdrG,EAAOA,GAAQ,IAEaqG,OAAQD,EAAMC,EAAQD,IAE9CE,GADAH,EAAQnG,EAAKoG,IACOI,MAAQL,EAAMK,MAAMC,oBAAsB,KAC9DF,EAAYJ,EAAMK,MAAQL,EAAMO,IAAID,oBAAsB,KAEtDP,EACIC,EAAMnB,eAAiBmB,EAAMlB,YACzBI,GACAc,EAAMK,MAAQzH,EAAMsG,SAASsB,QAAQR,EAAMK,MAAOL,EAAMnB,eAAiBmB,EAAMlB,YAAaI,GAC5Fc,EAAMO,IAAM3H,EAAMsG,SAASsB,QAAQR,EAAMO,IAAKP,EAAMlB,aAAekB,EAAMnB,cAAeK,GAExFc,EAAMK,MAAQzH,EAAMsG,SAASY,GAAQE,EAAMK,MAAOnB,GAClDc,EAAMO,IAAM3H,EAAMsG,SAASY,GAAQE,EAAMO,IAAKrB,KAE9Cc,EAAMK,MAAQzH,EAAMsG,SAASY,GAAQE,EAAMK,MAAOL,EAAMnB,eAAiBmB,EAAMlB,aAC/EkB,EAAMO,IAAM3H,EAAMsG,SAASY,GAAQE,EAAMO,IAAKP,EAAMlB,aAAekB,EAAMnB,gBAGtEK,IACPc,EAAMK,MAAQzH,EAAMsG,SAASY,GAAQE,EAAMK,MAAOnB,GAClDc,EAAMO,IAAM3H,EAAMsG,SAASY,GAAQE,EAAMO,IAAKrB,IAG9Cc,EAAMnB,eAAiBmB,EAAMlB,aAC7BkB,EAAMK,MAAQzH,EAAMsG,SAASY,GAAQE,EAAMK,MAAOL,EAAMnB,eAAiBmB,EAAMlB,aAC/EkB,EAAMO,IAAM3H,EAAMsG,SAASY,GAAQE,EAAMO,IAAKP,EAAMlB,aAAekB,EAAMnB,eAErEK,IACAc,EAAMK,MAAQzH,EAAMsG,SAASsB,QAAQR,EAAMK,MAAOL,EAAMnB,eAAiBmB,EAAMlB,YAAaI,GAC5Fc,EAAMO,IAAM3H,EAAMsG,SAASsB,QAAQR,EAAMO,IAAKP,EAAMlB,aAAekB,EAAMnB,cAAeK,KAGrFA,IACPc,EAAMK,MAAQzH,EAAMsG,SAASY,GAAQE,EAAMK,MAAOnB,GAClDc,EAAMO,IAAM3H,EAAMsG,SAASY,GAAQE,EAAMO,IAAKrB,IAIlDa,UACOC,EAAMS,IAGF,WAAXX,GAAuBE,EAAMK,OAASF,GAAeA,IAAgBH,EAAMK,MAAMC,sBACjFN,EAAMK,MAAQ,IAAIzE,KAAKoE,EAAMK,MAAMK,UAA8D,KAAjDP,EAAcH,EAAMK,MAAMC,uBAE/D,WAAXR,GAAuBE,EAAMO,KAAOH,GAAaA,IAAcJ,EAAMO,IAAID,sBACzEN,EAAMO,IAAM,IAAI3E,KAAKoE,EAAMO,IAAIG,UAA0D,KAA7CN,EAAYJ,EAAMO,IAAID,uBAG1E,OAAOzG,EAGX,SAAS8G,GAAmB9G,EAAM4G,GAK9B,IAJA,IAEIT,EAFAE,EAASrG,EAAKqG,OACdD,EAAM,EAGHA,EAAMC,EAAQD,IAGjB,IAFAD,EAAQnG,EAAKoG,IAEHQ,MAAQA,EACd,OAAOT,EAKnB,IAAIY,GAAsBhI,EAAMiI,MAAM9G,OAAO,CACzC+G,KAAM,SAASC,EAAQC,GACnB,IAAI9B,EAAW6B,EAAO7B,SAEtBzG,KAAKuI,OAASA,EAEVA,EAAOrC,QACPlG,KAAKkG,MAAQqC,EAAOrC,OAGxBlG,KAAKyG,SAAWA,EAChBzG,KAAKoB,KAjHb,SAAwBoH,EAAkB/B,GACtC,OAAO,SAASrF,GAKZ,OAFAgG,GAFAhG,EAAOoH,EAAiBpH,GAEN,QAASqF,GAEpBrF,GAAQ,IA2GHqH,CAAezI,KAAKoB,KAAKsH,KAAK1I,MAAOyG,GACjDzG,KAAK2I,UAxGb,SAA+BH,EAAkB/B,GAC7C,OAAO,SAASrF,GAYZ,OAVIA,IAC4B,mBAAxBG,EAASqH,KAAKxH,IAAgCA,aAAgBjB,EAAMiB,KAAKyH,kBACzEzH,EAAO,CAACA,KAIhBgG,GAAYhG,EAAM,SAAUqF,GAAU,IAEtCrF,EAAOoH,EAAiBpH,KAET,IA2FE0H,CAAsB9I,KAAK2I,UAAUD,KAAK1I,MAAOyG,IAEtEsC,OAAQ,SAAS3H,GACb,OAAOpB,KAAKuI,OAAOQ,OAAO3H,IAE9B4H,MAAO,SAAS5H,GACZ,OAAOpB,KAAKuI,OAAOS,MAAM5H,IAE7BA,KAAM,SAASA,GACX,OAAOpB,KAAKuI,OAAOnH,KAAKA,IAE5B6H,MAAO,SAAS7H,GACZ,OAAOpB,KAAKuI,OAAOU,MAAM7H,IAE7B8H,OAAQ,SAAS9H,GACb,OAAOpB,KAAKuI,OAAOW,OAAO9H,IAE9B+H,WAAY,SAAS/H,GACjB,OAAOpB,KAAKuI,OAAOY,WAAW/H,IAElCuH,UAAW,SAASvH,GAChB,OAAOpB,KAAKuI,OAAOI,UAAUvH,MAIrC,SAASgI,GAAU/I,EAAMgJ,EAAUC,GAO/B,OALIjJ,EADAiJ,EACOnJ,EAAMsG,SAASsB,QAAQ1H,EAAMgJ,EAAUC,GAEvCnJ,EAAMsG,SAAS8C,OAAOlJ,EAAMgJ,GAM3C,SAASrC,GAAmBwC,GACxB,GAAKA,EAAMC,OAAO,gBAAgBhC,QAAU+B,EAAMC,OAAO,iBAAiBhC,QACrE+B,EAAMC,OAAO,cAAchC,QAAU+B,EAAMC,OAAO,eAAehC,QAClE+B,EAAMC,OAAO,kBAAkBhC,OAAQ,CACvC,IACIiC,EAASvJ,EAAMwJ,eAAeH,EAAOrJ,EAAMU,IAE/C,OAAI6I,IACOvJ,EAAMyJ,UAAUJ,EAAMK,MAAOH,EAAOlD,QAAQsD,SAClCJ,EAAOK,UAEjB5J,EAAMyJ,UAAUJ,EAAMK,OAKrC,OAAO,EA4EX,IAAIG,GAAiB7J,EAAMiB,KAAK6I,MAAMvK,OAAO,CACzC2I,KAAM,SAAS0B,GACX,IAAIG,EAAOlK,KAEXG,EAAMiB,KAAK6I,MAAME,GAAG9B,KAAKO,KAAKsB,EAAMH,GAEpCG,EAAKE,WAAaF,EAAKG,SAASH,EAAKI,UAGzCC,MAAO,SAAS1D,GACZ,IAAIxG,EAAOL,KAAK6G,GACZ2D,EAAY,IAAM3D,EAAQ,OAE9B,OAAI7G,KAAKwK,GACExK,KAAKwK,GAAarK,EAAME,KAAKoK,UAAUtK,EAAME,KAAKE,QAAQF,IAG9DG,EAAgBH,IAG3BqK,MAAO,SAAS7D,GACZ,IAAI2D,EAAY,IAAM3D,EAAQ,OAE9B,OAAI7G,KAAKwK,GACExK,KAAKwK,GAAaxK,KAAKuK,MAAM1D,GAGjC1G,EAAME,KAAKE,QAAQP,KAAK6G,KAGnC8D,MAAO,SAASnE,EAASoE,GACrB,IAAI5C,EAAMhI,KAAKgI,IACXT,EAAQ,IAAIvH,KAAK6K,YAAY5K,EAAEqB,OAAO,GAAItB,KAAK8K,SAAUtE,IAM7D,OAJKoE,IACDrD,EAAMS,IAAMA,GAGTT,GAGXwD,SAAU,WACN,IAAIjD,EAAM9H,KAAK8H,IACXF,EAAQ5H,KAAK4H,MACboD,GAAUlD,EAAID,oBAAsBD,EAAMC,qBAAuB1H,EAAME,KAAK4K,cAEhF,OAAOnD,EAAMF,EAAQoD,GAGzBE,OAAQ,SAAStD,EAAOE,EAAKqD,GACzB,OAAO1K,EAAaA,EAAWyK,OAAOlL,KAAM4H,EAAOE,EAAKqD,GAAQ,CAACnL,OAGrEoL,OAAQ,SAASC,GACb,IAAK,IAAIxE,KAASwE,EACdrL,KAAKsL,IAAIzE,EAAOwE,EAAUxE,IAG1B7G,KAAKuL,YACLvL,KAAKsL,IAAI,aAAcnL,EAAME,KAAKoK,UAAUzK,KAAK4H,QAGjD5H,KAAKwL,UACLxL,KAAKsL,IAAI,WAAYnL,EAAME,KAAKoK,UAAUzK,KAAK8H,OAIvD2D,WAAY,WACR,OAAOzL,KAAK0L,UAAY1L,KAAK+K,YAAc5K,EAAME,KAAKC,YAG1DqL,YAAa,WACT,OAAQ3L,KAAK4L,SAAW5L,KAAK6L,cAGjCC,aAAc,WACV,OAAO9L,KAAK4L,SAAW5L,KAAK6L,cAGhCE,YAAa,WACT,SAAU/L,KAAKgM,iBAAkBhM,KAAK6L,eAG1CI,iBAAkB,WACd,SAAUjM,KAAKkM,KAAMlM,KAAKgM,iBAG9BG,aAAc,SAAS3F,GASnB,OARAA,EAAUvG,EAAEqB,OAAOkF,EAAS,CACxB4F,oBAAqB,KACrBJ,eAAgB,KAChBH,aAAc7L,KAAKkM,IAAMlM,KAAK6L,gBAG1B7L,KAAKsK,SAAWtK,KAAKqK,SAASrK,KAAKsK,SAEpCtK,KAAK2K,MAAMnE,GAAS,IAG/BsE,OAAQ,WACJ,IAAIuB,EAAMlM,EAAMiB,KAAK6I,MAAME,GAAGW,OAAOlC,KAAK5I,MAM1C,OALAqM,EAAIrE,IAAMhI,KAAKgI,WAERqE,EAAId,kBACJc,EAAIb,SAEJa,GAGXC,gBAAiB,SAASzF,GACtB,OAAO1G,EAAMiB,KAAK6I,MAAME,GAAGmC,gBAAgB1D,KAAK5I,KAAM6G,IAAoB,eAAVA,GAGpEyE,IAAK,SAASiB,EAAKxC,GACf,IAAI2B,EAAW1L,KAAK0L,WAAY,EAIhC,GAFAvL,EAAMiB,KAAK6I,MAAME,GAAGmB,IAAI1C,KAAK5I,KAAMuM,EAAKxC,GAE7B,YAAPwC,GAAqBxC,GAAS2B,EAAU,CACxC,IAAI9D,EAAQzH,EAAME,KAAKE,QAAQP,KAAK4H,OAChCE,EAAM,IAAI3E,KAAKnD,KAAK8H,KACpB0E,EAAerM,EAAME,KAAKG,gBAAgBsH,GAEzB,IAAjB0E,GAAsBzC,IACtByC,EAAelM,GAGnBN,KAAKsL,IAAI,QAAS1D,IAEJ,IAAVmC,GACA5J,EAAME,KAAKoM,QAAQ3E,GAAM0E,GAErB1E,EAAMF,IACNE,EAAMF,IAGVzH,EAAME,KAAKoM,QAAQ3E,EAAKxH,EAAakM,GAGzCxM,KAAKsL,IAAI,MAAOxD,KAGxBoE,GAAI,KACJtF,OAAQ,CACJsF,GAAI,CAAE5H,KAAM,UACZoI,MAAO,CAAEC,aAAc,GAAIrI,KAAM,UACjCsD,MAAO,CAAEtD,KAAM,OAAQwC,WAAY,CAAE8F,UAAU,EAAMC,UAAW,CAAE9C,MAAO/C,MACzEZ,cAAe,CAAE9B,KAAM,UACvBwD,IAAK,CACDxD,KAAM,OACNwC,WAAY,CACR8F,UAAU,EACVC,UAAW,CAAE9C,MAAO/C,IACpBG,YAAa,CAAE4C,MAlO/B,SAA8BP,GAC1B,GAAIA,EAAMC,OAAO,cAAchC,OAAQ,CACnC,IAAIqF,EAAYtD,EAAMuD,QAAQ,0BAC1BC,EAAaF,EAAUG,KAAK,wBAC5BC,EAAWJ,EAAUG,KAAK,sBAE9B,GAAIC,EAAS,IAAMF,EAAW,GAAI,CAC9B,IAAIpF,EAAOE,EACPqF,EAAchN,EAAMwJ,eAAeqD,EAAY7M,EAAMU,IACrDuM,EAAYjN,EAAMwJ,eAAeuD,EAAU/M,EAAMU,IAEjDwM,EAAWP,EAAU1L,KAAK,iBAC1B8E,EAAQmH,EAAWA,EAAS7G,QAAQN,MAAQ,KAUhD,GARIiH,GAAeC,GACfxF,EAAQuF,EAAYpD,QACpBjC,EAAMsF,EAAUrD,UAEhBnC,EAAQzH,EAAMyJ,UAAUoD,EAAWnD,OACnC/B,EAAM3H,EAAMyJ,UAAUsD,EAASrD,QAG/BjC,GAASE,EAAK,CACd,GAAI5B,EAAO,CACP,IAAIO,EAAWuG,EAAWrJ,KAAKxD,EAAMwD,KAAK,aACtCyC,EAAgBF,EAAME,cACtBC,EAAcH,EAAMG,YAExBD,EAAgBA,GAAiBC,EACjCA,EAAcA,GAAeD,EAEzBA,IACAwB,EAAQwB,GAAUxB,EAAOxB,EAAeK,GACxCqB,EAAMsB,GAAUtB,EAAKzB,EAAaI,IAI1C,OAAOmB,GAASE,IAK5B,OAAO,MA2LHzB,YAAa,CAAE/B,KAAM,UACrB0H,eAAgB,CACZW,aAAc,GACdrI,KAAM,SACNwC,WAAY,CACR+F,UAAW,CAAE9C,MAAO/C,IACpBsG,iBAAkB,CAAEvD,MA9LpC,SAAmCP,GAC/B,IAAiB+D,EACFP,EAAYpF,EAAOuF,EAElC,QAAI3D,EAAMC,OAAO,kBAAkBhC,SAE/B8F,EADcpN,EAAMwJ,eAAeH,EAAOrJ,EAAMU,IAC5BkJ,SAEpBiD,EADYxD,EAAMuD,QAAQ,0BACHE,KAAK,yBAEb,KAIPrF,GAHJuF,EAAchN,EAAMwJ,eAAeqD,EAAY7M,EAAMU,KAGzCsM,EAAYpD,QAEZ5J,EAAMyJ,UAAUoD,EAAWnD,SAG1B0D,KACF3F,GAAS2F,MA6KxBnB,oBAAqB,CAAEO,aAAc,GAAIrI,KAAM,UAC/CoH,SAAU,CAAEpH,KAAM,UAAWqI,cAAc,GAC3Ca,YAAa,CAAElJ,KAAM,aAIzBmJ,GAAsBtM,EAAWG,OAAO,CACxC+G,KAAM,SAAS7B,GAEXrF,EAAWgJ,GAAG9B,KAAKO,KAAK5I,KAAMsB,GAAO,EAAM,GAAI,CAC3CgH,OAAQ,CACJoF,UAAW1D,GACX9D,MAAO8D,KAEZxD,IAEHxG,KAAKuI,OAAS,IAAIJ,GAAoBnI,KAAKwG,QAAQ8B,OAAQtI,KAAKuI,SAGpE2C,OAAQ,SAAStD,EAAOE,GACpB,IAEIH,EAFAvG,EAAOpB,KAAKwE,OACZiF,EAAS,GAmCb,OAhCI7B,GAASE,IACTH,EAAYG,EAAID,qBAChBC,EAAM,IAAI3E,KAAK2E,EAAIG,UAAY3H,EAAa,IAEpCuH,sBAAwBF,IAC5BG,EAAM3H,EAAMsG,SAASkH,MAAM7F,EAAKH,IAGpC8B,EAAS,CACLmE,MAAO,KACPC,QAAS,CACL,CACID,MAAO,MACPC,QAAS,CACL,CAAEhH,MAAO,QAASiH,SAAU,MAAO/D,MAAOnC,GAC1C,CAAEf,MAAO,MAAOiH,SAAU,MAAO/D,MAAOnC,GACxC,CAAEf,MAAO,QAASiH,SAAU,MAAO/D,MAAOjC,KAGlD,CACI8F,MAAO,MACPC,QAAS,CACL,CAAEhH,MAAO,QAASiH,SAAU,MAAO/D,MAAO,IAAI5G,KAAKyE,EAAMK,UAAY3H,EAAa,IAClF,CAAEuG,MAAO,MAAOiH,SAAU,MAAO/D,MAAOnC,OAMxDxG,EAAO,IAAIjB,EAAMiB,KAAK2M,MAoGlC,SAAmBC,EAAQpG,EAAOE,EAAKqD,GAKnC,IAJA,IAAI1D,EAASuG,EAAOvG,OAChBrG,EAAO,GACPoG,EAAM,EAEHA,EAAMC,EAAQD,IACjBpG,EAAOA,EAAK6M,OAAOD,EAAOxG,GAAK0D,OAAOtD,EAAOE,EAAKqD,IAGtD,OAAO/J,EA7G6B8M,CAAU9M,EAAMwG,EAAOE,EAAK9H,KAAKuI,OAAO9B,WAAWgD,OAAOA,GAAQ0E,WAG3F/M,GAGXgN,cAAe,SAASlI,GAChBA,GAASA,EAAM4F,gBACf9L,KAAKqO,qBAAqBnI,GAG9B/E,EAAWgJ,GAAGiE,cAAcxF,KAAK5I,KAAMkG,IAG3CoI,OAAQ,SAASC,EAAOrI,GACpB,GAAKA,EAAL,CAIA,KAAMA,aAAiB8D,IAAiB,CACpC,IAAIqB,EAAYnF,GAEhBA,EAAQlG,KAAKwO,mBACPC,OAAOpD,GAQjB,QALMrL,KAAK0O,cAAgBxI,EAAM+F,oBAAuB/F,EAAM2F,gBAC1D3F,EAAQA,EAAM2F,aAAe3F,EAAQA,EAAMiG,eAC3CnM,KAAK2O,kBAAkBzI,IAGpB/E,EAAWgJ,GAAGmE,OAAO1F,KAAK5I,KAAMuO,EAAOrI,KAGlD0I,WAAY,SAASC,GACjB7O,KAAK0O,cAAe,EACpBvN,EAAWgJ,GAAGyE,WAAWhG,KAAK5I,KAAM6O,GACpC7O,KAAK0O,cAAe,GAGxBnF,OAAQ,SAASrD,GAOb,OANIA,EAAM+F,mBACNjM,KAAK8O,kBAAkB5I,GAChBA,EAAM6F,eACb/L,KAAK2O,kBAAkBzI,GAGpB/E,EAAWgJ,GAAGZ,OAAOX,KAAK5I,KAAMkG,IAG3C4I,kBAAmB,SAAS5I,GAKxB,IAJA,IAAI9E,EAAOpB,KAAKoB,OAAO2N,MAAM,GACzBC,EAAO5N,EAAK6N,QACZ/C,EAAKhG,EAAMgG,GAER8C,GACCA,EAAKnD,eAAiBK,GACtB/K,EAAWgJ,GAAGZ,OAAOX,KAAK5I,KAAMgP,GAGpCA,EAAO5N,EAAK6N,QAGhB/I,EAAMoF,IAAIhI,EAAsB,KAGpC+K,qBAAsB,SAASnI,GAC3B,GAAIA,EAAM2F,aAAc,CACpB,IAAIqD,EAAOlP,KAAKmP,IAAIjJ,EAAM2F,cAE1B,GAAIqD,EAAM,CACN,IAAItH,EAAQ1B,EAAMmE,SAASzC,MACvBwH,EAAgB,IAAIC,OAAO,SAAqC5O,EAAW6O,kBAAkB1H,EAAO5H,KAAKuI,OAAO9B,WAChH2F,GAAuB8C,EAAK9C,qBAAuB,IAAImD,QAAQlM,EAAgCD,GAAqBmM,QAAQ,MAAO,IAEnIH,EAAcI,KAAKpD,KAGnBxE,EAAQ1B,EAAM0B,MACdwH,EAAgB,IAAIC,OAAO,SAAqC5O,EAAW6O,kBAAkB1H,EAAO5H,KAAKuI,OAAO9B,YAHhHyI,EAAK5D,IAAIhI,EAAsB8I,EAAoBmD,QAAQH,EAAe,QAU1FT,kBAAmB,SAASzI,GACxB,IAAI0B,EAAQ1B,EAAM0B,MACduD,EAAOnL,KAAKuI,OAAO9B,SACnByI,EAAOlP,KAAKmP,IAAIjJ,EAAM2F,cACtBO,GAAuB8C,EAAK9C,qBAAuB,IAAImD,QAAQlM,EAAgCD,GAAqBmM,QAAQ,MAAO,IAEvI,IAAK9O,EAAWkL,YAAYS,EAAqBxE,EAAOuD,GAAO,CAC3D,IAAIsE,EAAehP,EAAW6O,kBAAkB1H,EAAOuD,GACvDjF,EAAMmE,SAASzC,MAAQA,EACvBsH,EAAK5D,IAAIhI,EAAsB8I,GAAuBA,GAAuBqD,EAAerM,EAAsB,IAAMqM,OAiBpIhC,GAAoBlI,OAAS,SAASiB,IAC9B9E,EAAQ8E,IAAYA,aAAmBrG,EAAMiB,KAAKyH,mBAClDrC,EAAU,CAAEpF,KAAMoF,IAGtB,IAAIkJ,EAAalJ,GAAW,GACxBpF,EAAOsO,EAAWtO,KAItB,GAFAsO,EAAWtO,KAAOA,IAEZsO,aAAsBjC,KAAwBiC,aAAsBvP,EAAMiB,KAAKD,WACjF,MAAM,IAAIwO,MAAM,+EAGpB,OAAOD,aAAsBjC,GAAsBiC,EAAa,IAAIjC,GAAoBiC,IAG5FpO,GAAO,EAAMnB,EAAMiB,KAAM,CACtBqM,oBAAqBA,GACrBtF,oBAAqBA,GACrB6B,eAAgBA,KAGnB,IAAI4F,GAAkB,CAClBxE,OAAQ,CACJxH,KAAM,OACNF,UAAW,6CAEfmM,WAAY,CACRjM,KAAM,SACNF,UAAW,sBAEfoM,QAAS,CACLlM,KAAM,SACNC,KAAM,QACNkM,WAAY,YACZrM,UAAW,4CACXsM,UAAW,WA2BnB,SAASC,GAAkBzJ,GACvB,IAAI7C,EAAOuM,GAA2B1J,EAAQN,MAAOM,EAAQK,OAE7D,OAAO,SAASiG,EAAW5G,GACvBjG,EAAE,6DAA+DiG,EAAMwG,MAAQ,OAAO/I,KAAKA,GACtFwM,SAASrD,GACTsD,KAAK,mFAIlB,SAASF,GAA2BhK,EAAOW,GACvC,IAMIwJ,EACAC,EAPAC,GAAcrK,EAAMU,QAAUV,GAAOW,GACrC2J,EAAe,CAAC,MAAO,QAAS,SAAU,OAAQ,WAClD1J,EAAayJ,EAAaA,EAAWzJ,WAAa,GAElD2J,EAAWtQ,EAAMwD,KAAK,QACtB+M,EAAUzQ,EAAEyQ,QAIZ/M,EAAO,GAEX,IAAK0M,KAAYvJ,EACbwJ,EAAOxJ,EAAWuJ,GAEdK,EAAQL,EAAUG,IAAiB,EACnC7M,EAAK8M,GAAYJ,EACTlQ,EAAMwQ,WAAWL,KACzB3M,EAAK0M,GAAYhP,EAAciP,GAASA,EAAKvG,OAASsG,EAAYC,GAGtE3M,EAAKxD,EAAMwD,KAAK0M,EAAW,SAAWC,EAAKnK,QAG/C,OAAOxC,EAGX,SAASiN,GAAyBC,EAAQC,EAAaC,EAAkBC,GACrE,IAEIC,EAFAC,EAAcL,EAAO9G,QACrBoH,EAAOxP,MAAMD,QAAQwP,GAIrBD,EADAE,EACaC,KAAKpI,MAAMoI,KAAKC,UAAUH,IAE1B,CAACA,EAAY3P,YAG9BsP,EAAOnB,WAAWtO,OAAOkQ,SAAQ,SAAStC,GACtC,GAA+B,OAA3BA,EAAK+B,IAA8B/B,EAAK+B,KAAsB7Q,GAAe8O,EAAK+B,IAAqBD,EACvG9B,EAAK1D,IAAIxI,GAAU,OAChB,CACH,IAAIyO,EAAevC,EAAKG,IAAI6B,GAE5BhC,EAAK1D,IAAIxI,GAAU,IAEfmO,EAAWO,QAAQD,IAAiB,GAAKN,EAAWO,QAAQD,EAAahQ,aAAe,KACpF4P,EACAF,EAAWQ,OAAOR,EAAWO,QAAQD,GAAe,IAEpDV,EAAO9G,MAAM,MACb8G,EAAOa,QAAQpP,SAM3B6O,GAAQF,EAAWxJ,OAASyJ,EAAYzJ,SACxCoJ,EAAO9G,MAAMkH,GACbJ,EAAOa,QAAQpP,IAIvB,SAASqP,GAA6B7E,EAAW8E,EAAeC,EAAUC,GACtE,IAAIC,EAAgBjF,EAAUC,QAAQ,0BAA0BE,KAAK,SAAW9M,EAAM6R,GAAK,eAAiBF,EAAS,MACjHG,EAAeF,EAAcG,uBAE7BD,EACAA,EAAavJ,KAAKpG,GAAQ,SAAS6P,GAC/B,IAAIrB,EAAcqB,EAAGC,OAAOrI,QAE5B6G,GAAyBgB,EAAed,EAAae,EAASQ,qBAAsBR,EAASS,mBAGjGP,EAAcQ,GAAGjQ,GAAQ,SAAS6P,GAC9B,IAAIrB,EAAcqB,EAAGK,OAAOzI,MAE5B6G,GAAyBgB,EAAed,EAAae,EAASQ,qBAAsBR,EAASS,mBAKzG,SAASG,GAA+BZ,EAAUD,EAAec,GAC7D,IAGIzB,EAHAzK,EAAUoL,EAAc3E,KA1iCnB,UA2iCLiE,EAAcU,EAAc/H,MAC5BsH,EAAOxP,MAAMD,QAAQwP,GAIrBD,EADAE,EACaC,KAAKpI,MAAMoI,KAAKC,UAAUH,IAE1B,CAACA,GAGlBW,EAASnC,WAAWlL,OAAO8M,SAAQ,SAAStC,EAAMT,GAC9C,IAAIoE,EAAkBxS,EAAMyS,OAAOf,EAASQ,qBAAtBlS,CAA4C6O,GAGlE,GAFgC,OAApB2D,GAA4BA,IAAoBzS,GAAeyS,GAAmBD,EAG1FlM,EAAQ+H,GAAOsE,gBAAgB/P,OAC5B,CACH0D,EAAQ+H,GAAOuE,aAAahQ,EAAUA,GAEtC,IAAIyO,EAAe,GAAKvC,EAAKG,IAAI0C,EAASS,gBAEtCrB,EAAWO,QAAQD,IAAiB,IAChCJ,EACAF,EAAWQ,OAAOR,EAAWO,QAAQD,GAAe,IAEpDK,EAAc/H,IAAI,MAClB+H,EAAcF,QAAQpP,SAMlC6O,GAAQF,EAAWxJ,OAASyJ,EAAYzJ,SACxCmK,EAAc/H,IAAIoH,GAClBW,EAAcF,QAAQpP,IAwK9B,SAASyQ,GAAexL,EAAOyL,GAC3B,IAAIjI,EAAWxD,EAAMO,IAAIG,UAAYV,EAAMK,MAAMK,UAE7CL,EAAQ,IAAIzE,KAAKoE,EAAMK,MAAMK,WAEjC9H,EAAME,KAAKoM,QAAQ7E,EAAOoL,GAE1B,IAAIlL,EAAM,IAAI3E,KAAKyE,EAAMK,WAIzB,OAFA9H,EAAME,KAAKoM,QAAQ3E,EAAKiD,GAAU,GAE3B,CACHnD,MAAOA,EACPE,IAAKA,GAIb,IAAImL,GAAU,CACVC,OAAQ,CACJC,UArlCoB,SAASrG,EAAWtG,GACxC,IAAI7C,EAAO,CAAEiB,KAAM4B,EAAQK,MAAO6F,MAAOlG,EAAQkG,OAC7ChB,EAAWlF,EAAQN,MAAMwF,SACzB0H,EAAmBjT,EAAMwD,KAAK,YAAc,MAAS+H,EAAY,IACjE2H,EAAelT,EAAMwD,KAAK,YAAc,OAAU+H,EAAY,IAElEpF,EAAmB3C,EAAM6C,GACzBE,EAAyB/C,EAAM6C,GAC/BS,GAA2BtD,EAAM6C,GAEjCvG,EAAE,yCAA2CE,EAAMwD,KAAK,QAAU,qBAAuBxD,EAAMwD,KAAK,QAAU,WAAa6C,EAAQK,MAAQ,yBAA2BuM,EAAmB,MACpLzP,KAAKA,GACLwM,SAASrD,GAEd7M,EAAE,+BAAiCE,EAAMwD,KAAK,QAAU,WAAaxD,EAAMwD,KAAK,QAAU,WAAa6C,EAAQK,MAAQ,sBACnHwM,EAAe,MACd1P,KAAKA,GAAMwM,SAASrD,GAEzB7M,EAAE,SAAWE,EAAMwD,KAAK,OAAS,KAAO6C,EAAQK,MAAQ,6BAA6ByM,OAAOnD,SAASrD,IAokCrGyG,cAlgCkB,SAASzG,EAAWtG,GACtC,IAAI5C,EAAOqC,EAAmBO,EAAQN,MAAOM,EAAQgN,SAASC,YAC9DxT,EAAE,0CAA0C2D,KAAKA,GAAMuM,SAASrD,GAChE7M,EAAEE,EAAMU,GAAGgD,KAAK,wBAAwBsM,SAASrD,GACjDA,EAAUC,QAAQ,mBAAmBwF,GAAG1Q,EAAO2E,EAAQkN,QA+/BvDjN,SA1/BmB,SAASqG,EAAWtG,GACvCvG,EAAE,uCAAyCE,EAAMwD,KAAK,QAAU,WAAa6C,EAAQK,MAAQ,QACxFlD,KAAK,CACFiB,KAAM4B,EAAQK,QAEjBsJ,SAASrD,GACT6G,0BAA0B,CACvBC,YAAapN,EAAQiN,cAo/B7BhT,WA9hCqB,SAASqM,EAAWtG,GACzCvG,EAAE,QAAUE,EAAMwD,KAAK,QAAU,WAAa6C,EAAQK,MAAQ,QACzDlD,KAAK,CACFiB,KAAM4B,EAAQK,QAEjBsJ,SAASrD,GACT+G,4BAA4B,CACzBjM,MAAOpB,EAAQN,MAAM0B,MACrBnB,SAAUD,EAAQC,SAClB+M,SAAUhN,EAAQgN,SAClBM,KAAMtN,EAAQsN,KACd/J,MAAOvD,EAAQN,MAAMM,EAAQK,UAohCrC2G,YAAayC,GACb8D,kBA/DR,SAAyClC,EAAU3L,EAAO4L,GACtD,IAAInO,EAAOuM,GAA2BhK,EAAO2L,EAAShL,OAEtD,OAAO,SAASiG,GAIZ,IAHA,IAAItG,EAAU,GACVhC,EAAOqN,EAASnC,WAAWlL,OAEtBgD,EAAM,EAAGC,EAASjD,EAAKiD,OAAQD,EAAMC,EAAQD,IAClDhB,GAAWrG,EAAM2J,OAAO,mCACpB3J,EAAMyS,OAAOf,EAASS,eAAtBnS,CAAsCqE,EAAKgD,IAC3CrH,EAAMyS,OAAOf,EAASmC,cAAtB7T,CAAqCqE,EAAKgD,KAIlD,IAAIoK,EAAgB3R,EAAEE,EAAM2J,OAAO,4BAA8B+H,EAAShL,MAAQ,oEAC9E1G,EAAM6R,GACNH,EAAShL,MACTL,IAEH2J,SAASrD,GACTnJ,KAAKA,GAEFmO,GACAmC,YAAW,WACP,IAAIlC,EAAgBjF,EAAUC,QAAQ,qBAAqBE,KAAK,SAAW9M,EAAM6R,GAAK,eAAiBF,EAAS,MAC5GY,EAAsBxM,EAAM4L,GAEhCW,GAA+BZ,EAAUD,EAAec,GAExDX,EAAcQ,GAAGjQ,GAAQ,SAAS6P,GAC9B,IAAIrB,EAAcqB,EAAGK,OAAOzI,MAE5B0I,GAA+BZ,EAAUD,EAAed,WAgCpEoD,UAlJR,SAAsCrC,EAAU3L,EAAO4L,GACnD,IAAInO,EAAOuM,GAA2BhK,EAAO2L,EAAShL,OAEtD,OAAO,SAASiG,GAIZ,IAHA,IAAItG,EAAU,GACVhC,EAAOqN,EAASnC,WAAWlL,OAEtBgD,EAAM,EAAGC,EAASjD,EAAKiD,OAAQD,EAAMC,EAAQD,IAClDhB,GAAWrG,EAAM2J,OAAO,mCACpB3J,EAAMyS,OAAOf,EAASS,eAAtBnS,CAAsCqE,EAAKgD,IAC3CrH,EAAMyS,OAAOf,EAASmC,cAAtB7T,CAAqCqE,EAAKgD,KAIlD,IAAIoK,EAAgB3R,EAAEE,EAAM2J,OAAO,4BAA8B+H,EAAShL,MAAQ,gDAC9E1G,EAAM6R,GACNH,EAAShL,MACTL,IAEH2J,SAASrD,GACTnJ,KAAKA,GAEFmO,GACAmC,YAAW,WACP,IAAIlC,EAAgBjF,EAAUC,QAAQ,qBAAqBE,KAAK,SAAW9M,EAAM6R,GAAK,eAAiBF,EAAS,MAC5GY,EAAsBxM,EAAM4L,GAEhCW,GAA+BZ,EAAUD,EAAec,GAExDX,EAAcQ,GAAGjQ,GAAQ,SAAS6P,GAC9B,IAAIrB,EAAcqB,EAAGK,OAAOzI,MAE5B0I,GAA+BZ,EAAUD,EAAed,WAmHpEpF,SAphCmB,SAASoB,EAAWtG,GACvCvG,EAAE,4CAA8CE,EAAMwD,KAAK,QAAU,WAAa6C,EAAQK,MAAQ,QAAQsJ,SAASrD,KAqhCvHqH,QAAS,CACLhB,UA3kCc,SAASrG,EAAWtG,GAClC,IAAI7C,EAAO,CAAEiB,KAAM4B,EAAQK,MAAO6F,MAAOlG,EAAQkG,OAC7ChB,EAAWlF,EAAQN,MAAMwF,SACzB0H,EAAmBjT,EAAMwD,KAAK,YAAc,MAAS+H,EAAY,KACjE2H,EAAelT,EAAMwD,KAAK,YAAc,OAAU+H,EAAY,KAElEpF,EAAmB3C,EAAM6C,GACzBE,EAAyB/C,EAAM6C,GAC/BS,GAA2BtD,EAAM6C,GAEjCvG,EAAE,+BAAiCE,EAAMwD,KAAK,QAA5C,WAAwExD,EAAMwD,KAAK,QAAU,qBAAuBxD,EAAMwD,KAAK,QAAU,WAAa6C,EAAQK,MAAQ,wBACpKuM,EAAmB,MACtBzP,KAAKA,GAAMwM,SAASrD,GAErB7M,EAAE,+BAAiCE,EAAMwD,KAAK,QAA5C,WAAwExD,EAAMwD,KAAK,QAAU,iBAAmBxD,EAAMwD,KAAK,QAAU,WAAa6C,EAAQK,MAAQ,sBAChKwM,EAAe,MAClB1P,KAAKA,GAAMwM,SAASrD,GAErB7M,EAAE,SAAWE,EAAMwD,KAAK,QAAU,WAAa6C,EAAQK,MAAQ,qBAAqBsJ,SAASrD,GAEvE,QAAlBtG,EAAQK,OACR5G,EAAE,SAAWE,EAAMwD,KAAK,QAAU,0DAA0DwM,SAASrD,GAGzG7M,EAAE,SAAWE,EAAMwD,KAAK,OAAS,KAAO6C,EAAQK,MAAQ,6BAA6ByM,OAAOnD,SAASrD,IAojCrGyG,cAtgCY,SAASzG,EAAWtG,GAChCvG,EAAE,uJAAyJuG,EAAQgN,SAASY,qBAAuB,eAAe7B,GAAG1Q,EAAO2E,EAAQkN,OAAOvD,SAASrD,IAsgCpPrG,SA1/Ba,SAASqG,EAAWtG,GACjC,IAAI6N,EAAU7N,EAAQ6N,SAAW7N,EAAQ6N,UAAYnU,EACrDD,EAAE,QAAUE,EAAMwD,KAAK,QAAU,WAAa6C,EAAQK,MAAQ,QACzDlD,KAAK,CAAEiB,KAAM4B,EAAQK,QACrByN,OAAOD,GACPlE,SAASrD,GACTyH,oBAAoB,CACjBX,YAAapN,EAAQiN,WACrB/G,MAAOlG,EAAQkG,SAm/BvBjM,WApjCe,SAASqM,EAAWtG,GACnCvG,EAAE,QAAUE,EAAMwD,KAAK,QAAU,WAAa6C,EAAQK,MAAQ,QACzDlD,KAAK,CACFiB,KAAM4B,EAAQK,QAEjBsJ,SAASrD,GACT0H,sBAAsB,CACnB5M,MAAOpB,EAAQN,MAAM0B,MACrBnB,SAAUD,EAAQC,SAClB+M,SAAUhN,EAAQgN,YA4iC1BhG,YAAayC,GACb8D,kBApHR,SAAmClC,EAAU3L,EAAO4L,GAChD,IAAInO,EAAOuM,GAA2BhK,EAAO2L,EAAShL,OAEtD,OAAO,SAASiG,GACZ,IAAI8E,EAEAE,GACAmC,YAAW,WACPrD,GAAyBgB,EAAe1L,EAAM4L,GAASD,EAASQ,qBAAsBR,EAASS,gBAC/FX,GAA6B7E,EAAW8E,EAAeC,EAAUC,MAIzEF,EAAgB3R,EAAEE,EAAM2J,OAAO,4BAA8B+H,EAAShL,MAAQ,oCAAqC1G,EAAM6R,GAAIH,EAAShL,QACjIsJ,SAASrD,GACTnJ,KAAKA,GACL8Q,iBAAiB,CACdT,cAAenC,EAASmC,cACxB1B,eAAgBT,EAASS,eACzB5C,WAAYmC,EAASnC,WAAWtO,OAChCsT,eAAgB7C,EAAS6C,eACzBC,aAAc,SAAUvT,GAAQ,MAAQ,UAAYA,EAAKwT,SAAW,gBAAkB,IAAM,mCAAwCzU,EAAMwD,KAAK,0BAA6B,MAASvC,EAAKyQ,EAASgD,iBAAmB,QAAU,YAAgBzT,EAAKyQ,EAASmC,eAAkB,WAChRc,YAAa,SAAU1T,GAAQ,MAAQ,kCAAuCjB,EAAMwD,KAAK,0BAA6B,MAASvC,EAAKyQ,EAASgD,iBAAmB,QAAU,YAAgBzT,EAAKyQ,EAASmC,gBACxMe,OAAQ,SAASC,GACTA,EAAEC,UAAYD,EAAEC,SAASL,UACzBI,EAAEE,kBAGVC,UAAW,SAASH,GACFA,EAAE5C,OAAOgD,KAAKnI,KAAK,MAEzBoI,MAAK,SAASC,EAAGC,GACrB,IAAIC,EAAUvV,EAAEsV,GAEZC,EAAQvI,KAAK,mBAAmBxF,OAAS,GACzC+N,EAAQC,SAAS,oBAI9BrU,KAAK,sBA8EZ8S,UAvMR,SAAgCrC,EAAU3L,EAAO4L,GAC7C,IAAInO,EAAOuM,GAA2BhK,EAAO2L,EAAShL,OAEtD,OAAO,SAASiG,GACZ,IAAI8E,EAEAE,GACAmC,YAAW,WACPrD,GAAyBgB,EAAe1L,EAAM4L,GAASD,EAASQ,qBAAsBR,EAASS,gBAC/FX,GAA6B7E,EAAW8E,EAAeC,EAAUC,MAIzEF,EAAgB3R,EAAEE,EAAM2J,OAAO,4BAA8B+H,EAAShL,MAAQ,2CAA6CX,EAAMwG,MAAQ,KAAMvM,EAAM6R,GAAIH,EAAShL,QAC7JsJ,SAASrD,GACTnJ,KAAKA,GACL+R,kBAAkB,CACf1B,cAAenC,EAASmC,cACxB1B,eAAgBT,EAASS,eACzB5C,WAAYmC,EAASnC,WAAWtO,OAChCsT,eAAgB7C,EAAS6C,eACzBd,YAAa,OACbzP,SAAU,SAAU/C,GAAQ,MAAQ,UAAYA,EAAKwT,SAAW,gBAAkB,IAAM,mCAAwCzU,EAAMwD,KAAK,0BAA6B,MAASvC,EAAKyQ,EAASgD,iBAAmB,QAAU,YAAgBzT,EAAKyQ,EAASmC,eAAkB,WAC5Qe,OAAQ,SAASC,GACTA,EAAEC,UAAYD,EAAEC,SAASL,UACzBI,EAAEE,kBAGVC,UAAW,SAASH,GACFA,EAAE5C,OAAOgD,KAAKnI,KAAK,MAEzBoI,MAAK,SAASC,EAAGC,GACrB,IAAIC,EAAUvV,EAAEsV,GAEZC,EAAQvI,KAAK,mBAAmBxF,OAAS,GACzC+N,EAAQC,SAAS,oBAI9BrU,KAAK,uBAiKZsK,SA3hCa,SAASoB,EAAWtG,GACjCvG,EAAE,8CAAgDE,EAAMwD,KAAK,QAAU,WAAa6C,EAAQK,MAAQ,iBAAmBL,EAAQkG,MAAQ,QAClI/I,KAAK,CACFuI,GAAI1F,EAAQK,MACZjC,KAAM4B,EAAQK,MACd6F,MAAOlG,EAAQkG,MAAQlG,EAAQkG,MAAQlG,EAAQK,QAElDsJ,SAASrD,MAwhClB6I,GAASxV,EAAMyV,WAAWtU,OAAO,CACjC+G,KAAM,SAASmN,EAAShP,GAEpBrG,EAAMyV,WAAWzL,GAAG9B,KAAKO,KAAK5I,MAE9BA,KAAKwV,QAAUA,EACfxV,KAAKwG,QAAUlF,GAAO,EAAM,GAAItB,KAAKwG,QAASA,GAC9CxG,KAAK6V,aAAe7V,KAAKwG,QAAQqP,aAEjC7V,KAAK8V,4BAA8B9V,KAAK+V,sBAAsBrN,KAAK1I,OAGvE+V,sBAAuB,SAASf,GAC5B,GAAe,YAAXA,EAAEnO,MAAqB,CACvB,IAGI2O,EAASQ,EAAiBC,EAH1BnJ,EAAY9M,KAAK8M,UACjBpB,EAAW1L,KAAKqN,SAAS7G,QAAQN,MAAMwF,SACvCwK,EAAgB/V,EAAMwD,KAAK,QAE/BmJ,EAAUG,KAAK,IAAMiJ,EAAgB,WAAaA,EAAgB,YAAYb,MAAK,WAC/EG,EAAUvV,EAAED,MACRgD,EAAwBwM,KAAKgG,EAAQ7R,KAAKuS,MAC1CF,EAAkBR,EAAQW,GAAG,IAAMhW,EAAMwD,KAAK,QAAU,qCACxDsS,EAAiBvK,IAAasK,EAC9BR,EAAQ7R,KAAKxD,EAAMwD,KAAK,YAAasS,SAMrDrP,OAAQ,SAASqM,EAAS/M,GACtB,IAAIgE,EAAOlK,KACPwT,EAAWtJ,EAAK1D,QAAQgN,SACxB/M,EAAWyD,EAAK1D,QAAQC,SAOxBG,EAAS,CACT,CAAEC,MAAO,QAAS6F,MAAO8G,EAAS3C,OAAOnE,OACzC,CAAE7F,MAAO,QAAS6F,MAAO8G,EAAS3C,OAAOjJ,MAAOiJ,OAAQoC,EAAQE,UAAW1M,SAAUA,GACrF,CAAEI,MAAO,MAAO6F,MAAO8G,EAAS3C,OAAO/I,IAAK+I,OAAQoC,EAAQE,UAAW1M,SAAUA,GACjF,CAAEI,MAAO,WAAY6F,MAAO8G,EAAS3C,OAAOuF,YAAavF,OAAQoC,EAAQvH,WAGzE2K,EAAoB,SAASrH,GAC7B,QAASA,EAAK6C,EAASQ,uBAGvBlS,EAAMsG,SAAS6P,gBACf1P,EAAO2P,KAAK,CAAE1P,MAAO,WAAY6F,MAAO8G,EAAS3C,OAAOpK,SAAUoK,OAAQoC,EAAQM,cAAeG,MAjBzF,SAASsB,GACjBA,EAAEE,iBACFhL,EAAKsM,oBAAoBtQ,EAAOlG,OAe+EwT,SAAUA,EAAS3C,OAAQ3K,MAAOA,IACjJU,EAAO2P,KAAK,CAAE1P,MAAO,gBAAiB6F,MAAO8G,EAAS3C,OAAOzK,cAAeyK,OAAQoC,EAAQxM,SAAUgN,WAAYD,EAAS3C,OAAO4C,aAClI7M,EAAO2P,KAAK,CAAE1P,MAAO,cAAe6F,MAAO8G,EAAS3C,OAAOxK,YAAawK,OAAQoC,EAAQxM,SAAUgN,WAAYD,EAAS3C,OAAO4C,cAG7HvN,EAAM2F,cACPjF,EAAO2P,KAAK,CAAE1P,MAAO,iBAAkB6F,MAAO8G,EAAS3C,OAAO4F,OAAQ5F,OAAQoC,EAAQxS,WAAYgG,SAAUA,EAAU+M,SAAUA,EAASkD,iBAAkB5C,KAAM9T,KAAK8T,OAGtK,gBAAiB5N,GACjBU,EAAO2P,KAAK,CAAE1P,MAAO,cAAe6F,MAAO8G,EAAS3C,OAAOrD,YAAaqD,OAAQoC,EAAQzF,YAAY,CAAEtH,MAAOA,EAAOW,MAAO,kBAG/H,IAAK,IAAI8P,EAAgB,EAAGA,EAAgB3W,KAAKwG,QAAQ0N,UAAUzM,OAAQkP,IAAiB,CACxF,IAGIC,EAAgB9E,EAHhBD,EAAW7R,KAAKwG,QAAQ0N,UAAUyC,GACnB9E,EAASnC,WAAWlL,OACVqS,KAAKR,KAI9BO,EAAiB5W,KAAKwG,QAAQ0N,UAAUyC,EAAgB,MAGpD7E,EAAS8E,EAAe/P,OAIhCD,EAAO2P,KAAK,CACR1P,MAAOgL,EAAShL,MAChB6F,MAAOmF,EAASnF,MAChBmE,OAAQgB,EAASiF,SAAW7D,EAAQc,kBAAkBlC,EAAU3L,EAAO4L,GAAUmB,EAAQiB,UAAUrC,EAAU3L,EAAO4L,KAI5H,OAAOlL,GAGXkB,IAAK,WACD,OAAO9H,KAAKqN,SAASvF,OAGzBiP,0BAA2B,SAAS7Q,EAAOU,EAAQoQ,GAC/C,IAAIC,EAAWjX,KAEXwT,EAAWxT,KAAKwG,QAAQgN,SAExBpN,EAAgB,8EAAmFjG,EAAMwD,KAAK,iBAA9F,wFAEkExD,EAAM6D,KAAKkT,eAAejX,EAAE,sCAAuC,CAAEmE,MAAOoP,EAAS3C,OAAOsG,oBAAuB,eAErMC,EAAgB,SAAUC,GAG1B,OAFkBnR,EAAMmH,UAAYnH,EAAMmH,SAASgK,GAGvC,QAAWlX,EAAMwD,KAAK,iBAAoB,KAAQ0T,EAAY,qCAE9D,mCAAwCA,GAAalX,EAAMyS,OAAOyE,EAAblX,CAAwB+F,IAAW,IAAM,UAqB9G,MAAO,uBACHU,EAAOrC,KAlBU,SAAUsC,GAC3B,IAAIwQ,EAAYxQ,EAAMA,MAClByQ,EAAazQ,EAAM6F,MACnB6D,EAAarK,EAAMU,OAAOyQ,GAO9B,QANkBnR,EAAMmH,UAAYnH,EAAMmH,SAASgK,KAG/CL,EAAeT,KAAK1P,IAGF,kBAAdwQ,EAAgCjR,EAAgB,KACnDmK,GAAkC,YAApBA,EAAWjM,KACrB,6BAAkC8S,EAAcC,GAAc,SAC9D,sEAA6EA,EAAY,SAAaA,EAAY,YAAeC,GAAcD,GAAa,IAAM,WAAcD,EAAcC,GAAc,WAClM,gBAAdA,EAA8BJ,EAASM,2BAA6B,OAI9C9S,KAAK,IACpC,UAGJ+S,yBAA0B,SAAStR,EAAOU,EAAQoQ,GAC9C,IAAIxD,EAAWxT,KAAKwG,QAAQgN,SAExBpN,EAAgB,8EAAmFjG,EAAMwD,KAAK,iBAA9F,qLAIqEjD,EAAO8S,EAAS3C,OAAOsG,mBAJ5F,iJAwDpB,MAJa,6CACTvQ,EAAOrC,KAhBU,SAAUsC,GAC3B,IAAIwQ,EAAYxQ,EAAMA,MAOtB,QANkBX,EAAMmH,UAAYnH,EAAMmH,SAASgK,KAG/CL,EAAeT,KAAK1P,IAGF,aAAdwQ,GAA0C,mBAAdA,EAAiC,kDAAoD,KACtG,kBAAdA,EAAgCjR,EAAgB,IAnCrC,SAAUS,GAC1B,IAAIwQ,EAAYxQ,EAAMA,MAClByQ,EAAazQ,EAAM6F,MAkBvB,MAAO,yCAjBWxG,EAAMmH,UAAYnH,EAAMmH,SAASgK,IAIjB,aAAdA,EACA,yFACA,gDACZ,4DAAgEC,GAAcD,GAAa,IAHrF,sDAI8ClX,EAAMwD,KAAK,iBAAoB,KAAQ0T,EAAY,WAEjG,uJAE0DC,GAAcD,GAAa,IAFrF,oEAG4DA,GAAalX,EAAMyS,OAAOyE,EAAblX,CAAwB+F,IAAW,IAAM,WAMhI,gBAcIkR,CAAcvQ,IACC,mBAAdwQ,EAAiC,kDAAoD,KACvE,gBAAdA,EAA8B,cAAgB,OAIxB5S,KAAK,IACpC,SAKJgT,mBAAoB,SAASvR,EAAOU,EAAQoQ,EAAgBU,GACxD,IAAIC,EAAWrW,EAAO,GAAInB,EAAMyX,SAAU5X,KAAKwG,QAAQqR,kBACnD1T,EAAWnE,KAAKwG,QAAQ6G,SAASlJ,SACjCH,EAAO,GAaX,OAXIG,UACWA,IAAanD,IACpBmD,EAAWhE,EAAM2X,SAAS3T,IAE9BH,GAAS7D,EAAMgE,SAASA,EAAUwT,EAA1B,CAAqCzR,IAE7ClC,GADO0T,EACC,4BAA8B1X,KAAKwX,yBAAyBtR,EAAOU,EAAQoQ,GAAkB,SAE7FhX,KAAK+W,0BAA0B7Q,EAAOU,EAAQoQ,GAGnDhT,GAGXuT,yBAA0B,WACtB,MAAO,eAGXQ,iBAAkB,SAAS7R,GACvBA,EAAMoF,IAAI,gBAAiBtL,KAAKgY,gBAChC9R,EAAMoF,IAAI,cAAetL,KAAKiY,qBAEvBjY,KAAKgY,sBACLhY,KAAKiY,gBAIhBC,GAAevC,GAAOrU,OAAO,CAC7B+G,KAAM,WACFsN,GAAOxL,GAAG9B,KAAKsF,MAAM3N,KAAMmY,WAE3BnY,KAAK8T,KAAO3T,EAAMiY,KAAKhI,KAAKpQ,KAAKwV,QAAS,CACtC6C,WAAY,CACRC,YAAa,CACTC,cAAc,EACdnI,MAAM,EACNoI,gBAAgB,EAChBC,cAAc,EACdC,iBAAiB,MAI7B1Y,KAAK8T,KAAK0B,QAAQ1D,SAAS6G,IAAI,SAAU3Y,KAAKwG,QAAQoS,QACtD5Y,KAAKwE,KAAOxE,KAAK8T,KAAKtP,QAG1BgC,QAAS,CACLqS,WAAY,CACRC,KAAM,QACNC,MAAO,gBAIfjJ,QAAS,WACL9P,KAAKgZ,QACLhZ,KAAKiZ,SACLjZ,KAAK8T,KAAKhE,WAGd0G,oBAAqB,SAAStQ,GAC1B,IAAIgE,EAAOlK,KACP8T,EAAO5J,EAAK4J,KACZN,EAAWtJ,EAAK1D,QAAQgN,SACxB0F,EAAehP,EAAKgP,aACpBpM,EAAYoM,EAAeA,EAAaC,QAAQlM,KAAK,0BAA4B/C,EAAK4C,UAAUG,KAAK,0BACrGmM,EAAUtM,EAAUG,KAAK,2BAA2B7L,KAAK,eACzDiY,EAAiBvM,EAAUG,KAAK,gCAAgCqM,OAkBpE,GAHApP,EAAK8N,eAAiB9R,EAAME,eAAiB,GAC7C8D,EAAK+N,aAAe/R,EAAMG,aAAe,IAEpC6S,EAAc,CACf,IAAIlV,EAAO,yLAEqEwP,EAAS+F,OAF9E,gBAGY/F,EAAe,OAAI,KAASrT,EAAMU,GAAGgD,KAAK,gBAAmB,OAChFnD,EAAO8S,EAAS3C,OAAO2I,eACvB,wEAA0EhG,EAASiG,KAL5E,iBAMYjG,EAAa,KAAI,KAASrT,EAAMU,GAAGgD,KAAK,SANpD,4CASX7D,KAAKkZ,aAAeA,EAAepF,EAAK4F,OAAO1V,GAE/CkV,EAAaS,eAAeD,OAAO5M,EAAU8M,QAE7CV,EAAa1D,QAAQjD,GAAG1Q,EAAQD,EAAI,4CAA4C,SAASoT,GACrFA,EAAEE,iBACFF,EAAE6E,kBAEE5Z,EAAED,MAAM8Z,SAAS,uBACjB5P,EAAK6N,iBAAiB7R,GAG1B,IAAI6T,EAAW7P,EAAK8P,UAEhBpW,EAAOqC,EAAmBC,EAAOsN,EAAS3C,OAAO4C,YAErDsG,EAASZ,QAAQlM,KAAK,qBAAqBrJ,KAAKA,GAEhDkQ,EAAKmG,SAASF,EAAU7P,EAAK1D,QAAQqS,WAAWE,UAGpDK,EAAQ1Q,KAAKpG,GAAQ,SAAS6P,GAC1BkH,EAAe/E,OAAOnC,EAAG+H,SACzBhU,EAAMoF,IAAI,cAAe,OAE7BpF,EAAMwC,KAAKpG,GApDW,SAAS0S,GAC/B,GAAgB,kBAAZA,EAAEnO,MAA2B,CAC7B,IAAIkD,EAAQ7D,EAAME,cAElBgT,EAAQe,OAAOpQ,GAEVA,IACDsP,EAAe/F,OACfpN,EAAMoF,IAAI,cAAe,IACzB8N,EAAQrP,OAAM,QA8C1BqP,EAAQrP,QAAQ7D,EAAMG,aACtB+S,EAAQe,SAASjU,EAAME,eAEnBF,EAAMG,YACNgT,EAAeO,OAEfP,EAAe/F,OAGnBQ,EAAKmG,SAASf,EAAchP,EAAK1D,QAAQqS,WAAWC,OAGxDsB,WAAY,SAAS5T,GACjB,IAAI6T,EAAU7T,EAAQ8T,QAAQ/V,KAAI,SAASgW,GACvC,MAAO,CACH3W,KAAM2W,EAAO3W,KACb4W,OAAQD,EAAO7G,UAIvB2G,EAAQ9D,KAAK,CACT3S,KAAM5D,KAAKwG,QAAQgN,SAAS+F,OAC5BkB,SAAS,IAGbxa,EAAE,WAAWkQ,SAASuK,SAASC,MAC1BC,YAAY,CACT5B,MAAO,WACHhZ,KAAK8P,WAET+K,MAAO,CACHC,eAAe,GAEnBC,UAAU,EACVrO,OAAO,EACPyM,QAAS3S,EAAQ5C,KACjByW,QAASA,KAIrBW,UAAW,SAAS9U,GAChB,IAAI4N,EAAO9T,KAAK8T,KACZ9P,EAAO,GAEPwP,EAAWxT,KAAKwG,QAAQgN,SACxByH,EAAazH,EAASiG,KACtByB,EAAa1H,EAAS1D,QACtBqL,EAAa3H,EAAS+F,OACtB6B,EAAY5H,EAAS3C,OAAOwK,YAC5BC,EAAc9H,EAAS8H,YAE3BtX,GAAQ,wEAA0E7D,EAAMwD,KAAK,OAAS,KAAOuC,EAAM8B,IAA3G,mHAE0EmT,EAF1E,gBAGkBA,EAAa,KAAShb,EAAMU,GAAGgD,KAAK,gBAAmB,OACzEnD,EAAO0a,GACP,sEAAwEH,EALxE,iBAMkBA,EAAa,KAAS9a,EAAMU,GAAGgD,KAAK,SANtD,aASR,IAAI+C,EAAS5G,KAAK4G,OAAOqM,GAAQC,OAAQhN,GAErCgE,EAAOlK,KAEPgX,EAAiB,GAErBhT,GAAQhE,KAAKyX,mBAAmBvR,EAAOU,EAAQoQ,GAAgB,GAE/DhT,GAAQ,SAER,IAAIQ,EAAOsP,EAAK4F,OAAO1V,GAEvB,IAAKkC,EAAM0F,SAAW5L,KAAKwG,QAAQ6G,WAA8C,IAAlCrN,KAAKwG,QAAQ6G,SAASyC,SAAqB5J,EAAM+F,oBAAsB/F,EAAMkG,oBAAqB,CAC7I,IAAImP,EAAiB,iKAAmKD,EAAc,KAAOA,EAAc,oBAC3N9W,EAAKmV,eAAeD,OAAO6B,GAG/B,IAAKrV,EAAM0F,SAAW5L,KAAKwG,QAAQ6G,WAA8C,IAAlCrN,KAAKwG,QAAQ6G,SAASyC,QAAmB,CACpF,IAAI0L,EAAY,4JAA8JN,EAAa,KAAOA,EAAa,oBAC/M1W,EAAKmV,eAAeD,OAAO8B,GAG/Bxb,KAAKga,UAAYxV,EAEjB,IAAIsI,EAAY9M,KAAK8M,UAAYtI,EAAKgR,QA2CtC,OAzCAxV,KAAKqN,SAAWP,EAAU2O,cAAc,CACpC7U,OAAQoQ,EACR9Q,MAAOA,EACPwV,gBAAgB,EAChBlJ,OAAQtI,EAAK1D,QAAQgM,OACrBmJ,gBAAgB,IACjBva,KAAK,iBAEHpB,KAAK0R,QAAQ,OAAQ,CAAE5E,UAAWA,EAAW5G,MAAOA,IA8BrDlG,KAAK0R,QAAQ,SAAU,CAAE5E,UAAWA,EAAW5G,MAAOA,KA5BtD4G,EAAUyF,GAAG1Q,EAAQD,EAAI,yHAAyH,SAASoT,GACvJA,EAAEE,iBACFF,EAAE6E,kBAEF,IAAIU,EAASta,EAAED,MAEf,GAAKua,EAAOT,SAAS,oBAcjBhG,EAAKmG,SAASja,KAAKga,UAAW9P,EAAK1D,QAAQqS,WAAWE,WAdhB,CAEtC,IAAInU,EAAO,SAEP2V,EAAOT,SAAS,sBAChBlV,EAAO,OACA2V,EAAOT,SAAS,sBACvBlV,EAAO,SACA2V,EAAOT,SAAS,6BACvBlV,EAAOjC,GAGXuH,EAAKwH,QAAQ9M,EAAM,CAAEkI,UAAWA,EAAW5G,MAAOA,QAM1D4N,EAAKmG,SAASzV,EAAM0F,EAAK1D,QAAQqS,WAAWC,MAE5C5S,EAAMwC,KAAKpG,EAAQ4H,EAAK4L,8BAKrB9V,KAAKqN,UAGhBuO,OAAQ,WACJ,OAAO5b,KAAK8T,KAAK0B,QACRvI,KAAK9M,EAAM0b,aAAa,SACxBC,IAAI9b,KAAKwE,KAAKgR,UAG3BwD,MAAO,WACH,GAAIhZ,KAAK8M,UAAW,CAChB9M,KAAK8T,KAAKmG,SAAS,GAAIja,KAAKwG,QAAQqS,WAAWE,OAK/C,IAHA,IACIvU,EADAH,EAAQrE,KAAK4b,SAGRpU,EAAM,EAAGC,EAASpD,EAAMoD,OAAQD,EAAMC,EAAQD,KACnDhD,EAAOH,EAAM0X,GAAGvU,GAAKpG,KAAK,eAEvBoD,EAAKwX,QAIZ3X,EAAMkF,SAENvJ,KAAK8M,UAAY,KACb9M,KAAKqN,WACLrN,KAAKqN,SAAS7G,QAAQN,MAAM+S,OAAO3W,EAAQtC,KAAK8V,6BAChD9V,KAAKqN,SAASyC,UACd9P,KAAKqN,SAAW,MAEpBrN,KAAKkZ,aAAe,SAK5B+C,GAActG,GAAOrU,OAAO,CAC5BwO,QAAS,WACL9P,KAAKgZ,QACLhZ,KAAKiZ,UAGT+B,UAAW,SAAS9U,GAChB,IAGIgW,EAWA7E,EAIA1T,EAlBAuG,EAAOlK,KACPqN,EAAWnD,EAAK1D,QAAQ6G,SACxBrJ,EAAO,QAAU7D,EAAMwD,KAAK,OAAS,KAAOuC,EAAM8B,IAAM,wFAExDwL,EAAWtJ,EAAK1D,QAAQgN,SACxByH,EAAazH,EAASiG,KAEtB0B,EAAa3H,EAAS+F,OAEtB4C,EAAa3I,EAAS1D,QAEtBwL,EAAc9H,EAAS8H,YACvB1U,EAAS5G,KAAK4G,OAAOqM,GAAQkB,QAASjO,GACtC8Q,EAAiB,GAGrBhT,GAAQhE,KAAKyX,mBAAmBvR,EAAOU,EAAQoQ,GAAgB,GAG/D,IAAIxQ,EAAUnF,EAAcgM,GAAYA,EAASjN,OAAS,GAE1D4D,GAAQ,+BAERA,GAAQhE,KAAK6V,aAAa,CAAEjR,KAAM,SAAUhB,KAAMqX,EAAYtX,KAAMA,EAAME,KAjBzD,SAiB+E7D,KAAK6V,aAAa,CAAEjR,KAAM,aAAchB,KAAMuX,EAAYxX,KAAMA,EAAME,KAfrJ,oBAiBZqC,EAAM0F,UAAgC,IAArByB,EAASyC,SAAqB5J,EAAM+F,oBAAsB/F,EAAMkG,sBAClFpI,GAAQhE,KAAK6V,aAAa,CAAEjR,KAAM,cAAehB,KAAM0X,EAAa3X,KAAMA,KAGxEuC,EAAM0F,UAAW1F,EAAM6F,gBAAuC,IAArBsB,EAASyC,UACpD9L,GAAQ,iCAAmChE,KAAK6V,aAAa,CAAEjR,KAAM,SAAUhB,KAAMuY,EAAYxY,KAAMA,EAAME,KApBhG,QAoBkHC,SAAU,OAAQC,WAAY,aAKjKmY,EAAQjc,EAFR+D,GAAQ,sBAGR7D,EAAMic,+BAA+BF,EAAO,CAAC,YAE7C,IAAIpP,EAAY9M,KAAK8M,UAAYoP,EAC5B/L,SAASjG,EAAKsL,SAASuG,GAAG,GAC1BM,YAAY/a,EAAO,CAChBuZ,OAAO,EACPyB,WAAW,EACXC,WAAW,EACX7P,MAAO8G,EAAS3C,OAAOwK,YACvBhH,SAAS,EACT2E,MAAO,SAAShE,GACRA,EAAEwH,eACEtS,EAAKwH,QAAQjP,EAAQ,CAAEqK,UAAWA,EAAW5G,MAAOA,KACpD8O,EAAEE,mBAIf1O,IAUP,IAAK,IAAIK,KARTqD,EAAKmD,SAAWP,EAAU2O,cAAc,CACpC7U,OAAQoQ,EACR9Q,MAAOA,EACPwV,gBAAgB,EAChBC,gBAAgB,EAChBnJ,OAAQtI,EAAK1D,QAAQgM,SACtBpR,KAAK,iBAEU4V,EACsB,mBAAhCA,EAAenQ,GAAOA,QACtBwQ,EAAYL,EAAenQ,GAAOA,MAClCiG,EAAUG,KAAK,UAAYoK,EAAY,MAAM1T,KAAK,kBAAmB0T,EAAY,WAGjD,aAAhCL,EAAenQ,GAAOA,OACtBiG,EAAUG,KAAK,cAAgBoK,EAAY,MAAM1T,KAAK,KAAM0T,EAAY,UA8ChF,OA1CKnN,EAAKwH,QAAQ7O,EAAM,CAAEiK,UAAWA,EAAW5G,MAAOA,IAuCnDgE,EAAKwH,QAAQjP,EAAQ,CAAEqK,UAAWA,EAAW5G,MAAOA,KArChDmH,EAASjN,QAAUiN,EAASjN,OAAOqc,SACnC3P,EAAU1L,KAAK,eAAesb,OAE9B5P,EAAU1L,KAAK,eAAeub,SAASD,OAG3C5P,EAAUyF,GAAG1Q,EAAQD,EAAI,6BAA6B,SAASoT,GAC3DA,EAAEE,iBACFF,EAAE6E,kBAEF3P,EAAKwH,QAAQjP,EAAQ,CAAEqK,UAAWA,EAAW5G,MAAOA,OAGxD4G,EAAUyF,GAAG1Q,EAAQD,EAAI,6BAA6B,SAASoT,GAC3DA,EAAEE,iBACFF,EAAE6E,kBAEF3P,EAAKwH,QAAQ,OAAQ,CAAE5E,UAAWA,EAAW5G,MAAOA,OAGxD4G,EAAUyF,GAAG1Q,EAAQD,EAAI,6BAA6B,SAASoT,GAC3DA,EAAEE,iBACFF,EAAE6E,kBAEF3P,EAAKwH,QAAQhP,EAAQ,CAAEoK,UAAWA,EAAW5G,MAAOA,OAGxD4G,EAAUyF,GAAG1Q,EAAQD,EAAI,kCAAkC,SAASoT,GAChEA,EAAEE,iBACFF,EAAE6E,kBACF3P,EAAKwH,QAAQ/O,EAAO,CAAEmK,UAAWA,EAAW5G,MAAOA,OAGvD/F,EAAMyc,UAAU9P,GAEhB5G,EAAMwC,KAAKpG,EAAQ4H,EAAK4L,8BAKrB5L,EAAKmD,UAGhB2L,MAAO,WACH,IAAI9O,EAAOlK,KAEP8P,EAAU,WACN5F,EAAKmD,WACLnD,EAAKmD,SAAS7G,QAAQN,MAAM+S,OAAO3W,EAAQ4H,EAAK4L,6BAChD5L,EAAKmD,SAASyC,UACd5F,EAAKmD,SAAW,KAChBnD,EAAK4C,UAAY,MAEjB5C,EAAK2S,QACL3S,EAAK2S,MAAM/M,UACX5F,EAAK2S,MAAQ,OAIjB3S,EAAKmD,UACDnD,EAAK4S,gBAAkB5S,EAAK4S,eAAe1b,KAAK,iBAChD8I,EAAK4S,eAAe1b,KAAK,eAAe0O,UACxC5F,EAAK4S,eAAiB,MAGtB5S,EAAK4C,UAAUqJ,GAAG,YAClBjM,EAAK4C,UAAU1L,KAAK,eAAesH,KAAK,aAAcoH,GAASkJ,QAE/DlJ,KAGJA,KAIRyH,yBAA0B,WACtB,IAAI/D,EAAWxT,KAAKwG,QAAQgN,SACxBxP,EAAO,GAMX,OAJAA,GAAQ,+BACRA,GAAQhE,KAAK6V,aAAa,CAAEjR,KAAM,eAAgBf,KAAM,OAAQE,WAAY,UAAWH,KAAM4P,EAASiG,OAAUzZ,KAAK6V,aAAa,CAAEjR,KAAM,iBAAkBf,KAAM,iBAAkBD,KAAM4P,EAAS+F,SACnMvV,GAAQ,sBAKZoW,WAAY,SAAS5T,GACjB,IAAIxC,EAAO7D,EAAM2J,OAAO,uGAAwGtD,EAAQ5C,MAExII,GAAQ,+BAER,IAAK,IAAI+Y,EAAc,EAAGA,EAAcvW,EAAQ8T,QAAQ7S,OAAQsV,IAC5D/Y,GAAQhE,KAAK6V,aAAarP,EAAQ8T,QAAQyC,IAG9C/Y,GAAQ,qBAER,IAAIgZ,EAAUhd,KAAKwV,QAEfxV,KAAK6c,OACL7c,KAAK6c,MAAM/M,UAGf,IAAI+M,EAAQ7c,KAAK6c,MAAQ5c,EAAE+D,GAAMmM,SAAS6M,GACtBjB,GAAG,GACHxJ,GAAG1Q,EAAO,aAAa,SAASmT,GAC5BA,EAAEE,iBAEF2H,EAAM7D,QAEN,IAAI+D,EAAc9c,EAAE+U,EAAEiI,eAAe1O,QAErC/H,EAAQ8T,QAAQyC,GAAarJ,WAEjC2I,YAAY,CACTxB,OAAO,EACPyB,WAAW,EACXC,WAAW,EACX7P,MAAOlG,EAAQkG,MACf2H,SAAS,EACT2E,MAAO,WACHhZ,KAAK8P,UACLkN,EAAQtL,QAAQ,YAGvBwL,iBAEpBL,EAAMF,SAASD,QAGnBlG,oBAAqB,SAAStQ,EAAOiX,GACjC,IAoBIC,EApBAlT,EAAOlK,KACP8M,EAAY5C,EAAK4C,UAAUG,KAAK,0BAChCoQ,EAAWvQ,EAAUG,KAAK,2BAC1BoM,EAAiBvM,EAAUG,KAAK,iBAAiBqM,OACjDgE,EAAaxQ,EAAUG,KAAK,6BAC5BsQ,EAAezQ,EAAUG,KAAK,+BAC9BuQ,EAAgBtT,EAAK4S,eACrBW,EAAsB,SAASzI,GAC/B,GAAgB,kBAAZA,EAAEnO,MAA2B,CAC7B,IAAIkD,EAAQ7D,EAAME,cAElBiX,EAASK,KAAK5a,GAAWiH,GAEpBA,IACDsP,EAAe/F,OACfpN,EAAMoF,IAAI,cAAe,IACzB+R,EAASK,KAAK,WAAW,MAMrCxT,EAAK8N,eAAiB9R,EAAME,cAC5B8D,EAAK+N,aAAe/R,EAAMG,YAErBmX,IACDtT,EAAK4S,eAAiBU,EAAgB1Q,EAAUuP,YAAY,CACxDxB,OAAO,EACPyB,WAAW,EACXC,WAAW,EACX7P,MAAOxC,EAAK1D,QAAQgN,SAAS3C,OAAO8M,oBACpCtJ,SAAS,EACT2E,MAAO,SAAShE,GACZ9O,EAAM+S,OAAO3W,EAAQmb,GAEjBzI,EAAEwH,eACFtS,EAAK6N,iBAAiB7R,GAGtBiX,GACAA,EAAUS,WAKtBP,EAAS9K,GAAG1Q,GAAO,WACfwX,EAAe/E,OAAO+I,EAASK,KAAK,YACpCxX,EAAMoF,IAAI,cAAe,OAG7BgS,EAAW/K,GAAG1Q,GAAO,SAASmT,GAC1BA,EAAEE,iBACFkI,EAAIpE,WAGRuE,EAAahL,GAAG1Q,GAAO,SAASmT,GAC5BA,EAAEE,iBACFhL,EAAK6N,iBAAiB7R,GACtBkX,EAAIpE,WAGR9S,EAAMwC,KAAKpG,EAAQmb,IAGvBJ,EAASK,KAAK,UAAWxX,EAAMG,aAAaqX,KAAK5a,GAAWoD,EAAME,eAE9DF,EAAMG,YACNgT,EAAeO,OAEfP,EAAe/F,QAGnB8J,EAAMI,EAAcpc,KAAK,gBACrBub,SAASD,UAIjBmB,GAAY9c,EAAgBO,OAAO,CACnC+G,KAAM,SAASmN,EAAShP,GACpB,IAAI0D,EAAOlK,KAEXc,EAAOqJ,GAAG9B,KAAKO,KAAKsB,EAAMsL,EAAShP,GAE9B0D,EAAK1D,QAAQnC,OAAU6F,EAAK1D,QAAQnC,MAAMoD,SAC3CyC,EAAK1D,QAAQnC,MAAQ,CAAC,MAAO,SAGjC6F,EAAKgK,UAAY,GAEjBhK,EAAK4T,aAEL5T,EAAK6T,WAED7T,EAAK1D,QAAQwX,YACb9T,EAAK+T,YAGT/T,EAAK0R,SAEL1R,EAAKgU,WAELhU,EAAKiU,cAELjU,EAAKkU,aAELlU,EAAKmU,eAAiB,WAClBnU,EAAKoU,UAGTpU,EAAK8S,QAAQzK,GAAGzQ,EAAYF,EAAK,eAAiBA,GAAI,SAASoT,GAC3D,IAAIxC,EAASvS,EAAE+U,EAAExC,QAEZA,EAAO2D,GAAG,oBAA6D,IAAvC3D,EAAOzF,QAAQ,aAAatF,QAC7DuN,EAAEE,oBAINhL,EAAK1D,QAAQ6G,WAA6C,IAAjCnD,EAAK1D,QAAQ6G,SAASiR,QAC/CpU,EAAKqU,aAGTrU,EAAKsU,WAELtU,EAAKuU,cAEDvU,EAAK1D,QAAQgN,UAAYtJ,EAAK1D,QAAQgN,SAAS/S,aAC/CA,EAAW+F,QAAU0D,EAAK1D,QAAQgN,SAAS/S,YAG/CyJ,EAAKwU,cACLxU,EAAKyU,cACLzU,EAAK0U,iBAEL1U,EAAK2U,QAAU1e,EAAM2e,OAErB5U,EAAK6U,gBACL7U,EAAK8U,eAAiB5e,OAAO6e,WAAWhc,GACxCiH,EAAK8U,eAAeE,iBAAiB,SAAUhV,EAAKiV,eAAezW,KAAKwB,KAG5EiV,eAAgB,SAASnK,GACrB,IAAI9K,EAAOlK,KACPwE,EAAO0F,EAAKkV,cACZC,EAAYnV,EAAKoV,QACjBA,EAAUD,EAAUE,kBAEpBvK,EAAEwK,SACFF,EAAQhM,KAAK+L,EAAUpS,KAAK,sBAC5BqS,EAAQ1F,KAAKyF,EAAUpS,KAAK,qBAAqB6E,SAAS3M,KAAK,sBAE/Dma,EAAQ1F,KAAKyF,EAAUpS,KAAK,sBAC5BqS,EAAQhM,KAAK+L,EAAUpS,KAAK,qBAAqB6E,SAAS3M,KAAK,qBAGnE+E,EAAKuV,OAAOnU,IAAI,gBAAiB0J,EAAEwK,QAAUhb,EAAKkb,eAAiBlb,EAAKmb,sBAG5ElB,YAAa,WACTxe,EAAEG,QAAQmS,GAAG,SAAW3Q,EAAI5B,KAAKqe,iBAGrCuB,cAAe,WACX3f,EAAEG,QAAQyf,IAAI,SAAWje,EAAI5B,KAAKqe,iBAGtCyB,UAAW,WACP,IAMIxK,EACA/I,EANAsC,EADO7O,KACM6O,QACbb,EAFOhO,KAEO+f,MACdC,EAAa/f,EAAEsE,IAAIsK,GAAO,SAASG,GACnC,OAAO/O,EAAE+O,GAAMrL,KAAK,eAKpBsc,EAAO,GACPC,EAAmBF,EAAWvY,OAClC,IAAK6N,EAAI,EAAGA,EAAI4K,EAAkB5K,IAC9B2K,EAAKD,EAAW1K,IAAM,KAG1B,IAAI6K,EAAcnS,EAAOvG,OACzB,IAAK6N,EAAI,EAAGA,EAAI6K,EAAa7K,IAAK,CAC9B,IAAI/N,EAAQyG,EAAOsH,GACf2K,EAAK1Y,EAAMS,OAAS9H,IACpB+f,EAAK1Y,EAAMS,KAAOT,GAI1B,IAAI6Y,EAAa,GACjB,IAAK7T,KAAO0T,EACRG,EAAW7J,KAAK0J,EAAK1T,IAGzB,OAAO6T,GAGXC,UAAW,WACP,IAAI7Z,EAAUxG,KAAKwG,QACnB,OAA2B,IAAnBA,EAAQ0M,QAAmB/S,EAAM6B,QAAQse,UAAgC,UAAnB9Z,EAAQ0M,QAAyC,WAAnB1M,EAAQ0M,QAGxGqN,SAAU,SAAShZ,GACf,MAAO,QAAQiI,KAAKjI,EAAMjD,OAAUiD,EAAMiZ,eAAiB,QAAQhR,KAAKjI,EAAMiZ,cAAcC,cAGhGC,gBAAiB,SAASC,GACtB,OAAOA,EAAa7G,SArqEJ,oBAwqEpB8G,kBAAmB,SAAS1M,EAAW2M,EAAYC,EAAaC,EAAkBC,GACzEF,IACDA,EAAc,IAGlB,IAAIjP,EAAWqC,EAAU,GACzB,GAAIrC,EAAU,CAKV,IAJA,IAAIhM,EACAzE,EAAOyQ,EAASnC,WAAWlL,OAC3Byc,EAAY,EAEPC,EAAY,EAAGA,EAAY9f,EAAKqG,OAAQyZ,IAAa,CAC1D,IAAIC,EAAahhB,EAAMyS,OAAOf,EAASS,eAAtBnS,CAAsCiB,EAAK8f,IACxDE,EAAoBP,EAAaI,EAAYC,GAEjDrb,EAAQ7F,KAAK4gB,kBAAkB1M,EAAUnF,MAAM,GAAIqS,EAAmBN,EAAaK,EAAYtP,EAAShL,QAClGgL,EAAShL,OAASsa,EACxBF,EAAYpb,EAAMgb,WAEdG,GAAeD,IACflb,EAAMmb,GAAeD,GAGA,IAArB7M,EAAUzM,SACV5B,EAAMgb,WAAaA,EAAaK,EAChCJ,EAAYvK,KAAK1Q,IAGzB,OAAOA,EAEP,MAAO,IAIfzE,KAAM,WACF,OAAOpB,KAAK+f,OAGhBhL,OAAQ,SAASvO,GACb,IAII6a,EAJAnX,EAAOlK,KACPwE,EAAO0F,EAAK1F,OACZ8c,EAAYpX,EAAKqX,WACjBrY,EAAS1E,EAAK0E,OAGlB,GAAI1C,IAAYtG,EAAa,CACzB,IAAIshB,EACAC,EAAQjd,EAAKkd,eAEjB,OAAKJ,GAIDA,GAAaA,EAAUtT,SACvBwT,EAAiBtX,EAAKyX,mBAGnB,CACH/Z,MAAO0Z,EAAU1Z,MACjBE,IAAKwZ,EAAUxZ,IACfkG,OAAQwT,EACRC,MAAOA,EACPvN,UAAW1P,EAAKod,gBAAgBN,KAZzB,GAgBf,IAAK9a,EAKD,OAJA0D,EAAKqX,WAAa,KAClBrX,EAAK2X,KAAO,UACZrd,EAAKsd,iBAWT,GANIngB,MAAMD,QAAQ8E,KACdA,EAAU,CACNwH,OAAQxH,EAAQiL,OAAO,KAI3BjL,EAAQ0N,UAAW,CACnB,IAAImD,EACAxJ,EAAU,GACVkU,EAAmB,GAMvB,IAAK1K,KAJD7S,EAAKwd,kBACL9X,EAAK0W,kBAAkBpc,EAAKwd,iBAAkB,EAAGD,GAGnCvb,EAAQ0N,UACtBrG,EAAQ0I,KAAK,CAAE1P,MAAOwQ,EAAWvJ,SAAU,KAAM/D,MAAOvD,EAAQ0N,UAAUmD,KAG9EgK,EAAiB,IAAIlhB,EAAMiB,KAAK2M,MAAMgU,GACjCtY,OAAOoE,GACPM,UAGT,GAAI3H,EAAQwH,QAAUxH,EAAQwH,OAAOvG,OAIjC,OAHAyC,EAAK+X,cAAczb,EAAQwH,OAAQqT,QACnCnX,EAAKgY,UAKT,GAAIhZ,GAAW1C,EAAQoB,OAASpB,EAAQsB,IAAM,CAC1C,IAEIjC,EACAsc,EAHAC,EAAa7hB,EAAQiE,EAAK6d,YAC1BC,EAAWniB,EAAME,KAAKkiB,QAAQhiB,EAAQiE,EAAKge,UAAU,GAIrDhc,EAAQoB,MAAQ0a,GAAYF,GAAc5b,EAAQsB,OAE9CjC,EADAwb,GAAkBA,EAAe5Z,OACzByB,EAAOmY,EAAe,GAAGR,YAEzB3X,EAAO,IAGRuZ,4BACPjc,EAAQkF,UAAW,IAGvByW,EAAStc,EAAMsc,OAAO3b,EAAQoB,MAAOpB,EAAQsB,IAAKtB,EAAQkF,UAAU,IAEzDjE,SACPyC,EAAKqX,WAAa,CACd3Z,MAAOzH,EAAMsG,SAASic,YAAYP,EAAO,GAAGva,MAAMA,OAClDE,IAAK3H,EAAMsG,SAASic,YAAYP,EAAOA,EAAO1a,OAAS,GAAGK,IAAIA,KAC9D+Y,WAAYsB,EAAO,GAAGva,MAAMiZ,WAC5BtS,MAAO4T,EAAO,GAAGva,MAAM2G,MACvB7C,SAAUyW,EAAO,GAAGva,MAAM+a,UAC1B3U,OAAQ,IAGZ9D,EAAKgY,cAMrBD,cAAe,SAASjC,EAAYqB,GAChC,IACI7Z,EADA0C,EAAOlK,KAEPwE,EAAO0F,EAAK1F,OACZ0E,EAAS1E,EAAK0E,OACd0Z,EAAe5C,EAAWvY,OAC1Bob,EAAYxB,GAAkBA,EAAe5Z,OAC7Cqb,EAAU5Y,EAAK6Y,SAInB,IAFA7Y,EAAK6Y,UAAW,EAEXvb,EAAM,EAAGA,EAAMob,EAAcpb,IAC9B,GAAI0B,GAAU2Z,EAAW,CAMrB,IALA,IAAIG,EAAe9Z,EAAOmY,EAAe,GAAGR,YACxC7S,EAAS,GACTyU,EAA0BO,EAAaP,0BACvCQ,EAAyBD,EAAaC,yBAEjCC,EAAU,EAAGA,EAAUT,EAAyBS,IACrDlV,EAASA,EAAOC,OAAO+U,EAAaG,sBAAsBD,GAASlV,UAGvE,IAAK,IAAIoV,EAAa,EAAGA,EAAaH,EAAwBG,IAC1DpV,EAASA,EAAOC,OAAO+U,EAAaK,qBAAqBD,GAAYpV,WAGzEA,EAAS,IAAI7N,EAAMiB,KAAK2M,MAAMC,GACzBvE,OAAO,CAAE5C,MAAO,SAAUU,GAAS,OAAOA,EAAMiO,QAAQ,GAAG8N,aAAa,aAAgBxV,SAAU,KAAM/D,MAAOiW,EAAWxY,KAC1H2G,WAEM,IACPjE,EAAKqZ,iBAAiBvV,EAAO,GAAGwH,aAEjC,CACH,IAAIA,EAAUhR,EAAKgR,QAAQvI,KAAK9M,EAAM2J,OAAO,gDAAiDkW,EAAWxY,KAErGgO,EAAQ/N,QACRyC,EAAKqZ,iBAAiB/N,EAAQ,IAK1CtL,EAAK6Y,SAAWD,GAGpBlE,eAAgB,WACZ,IACI4E,EACAC,EACAC,EACAC,EACAC,EALA1Z,EAAOlK,KAMPgd,EAAU9S,EAAK8S,QACf6G,EAAmB3Z,EAAK4Z,WAAWpb,KAAKwB,GAE5C8S,EAAQzK,GAAGxQ,EAAaH,EAAI,qEAAqE,SAASoT,GACtG,IAAImE,EAAUjP,EAAK8S,QAAQ/P,KAAK,wBAE3B/C,EAAKqW,SAASvL,KAInBmE,EAAQ4K,MAAK,GAAM,GAEnB7Z,EAAK8Z,WAAaR,EAAStZ,EAAK+Z,aAAajP,EAAG,KAChD9K,EAAKga,WAAaT,EAASvZ,EAAK+Z,aAAajP,EAAG,KAChD9K,EAAKia,cAAe,EACpBja,EAAK1F,OAAO4f,YAAa,EACzBR,EAAYzgB,KAAKkhB,MAEjBrH,EAAQzK,GAAGrQ,EAAYN,EAAI,oEAAqEiiB,OAGpG7G,EAAQzK,GAAG,cAAgB3Q,EAAI,qEAAqE,SAASoT,GACzG9K,EAAKoa,eAAgB,KAGzBtH,EAAQzK,GAAGpQ,EAAWP,EAAI,qEAAqE,SAASoT,GACpG,GAAK9K,EAAKqW,SAASvL,GAAnB,CAIA,IAAIuP,EAAQphB,KAAKkhB,MAAQT,EACrBzK,EAAUjP,EAAK8S,QAAQ/P,KAAK,wBAC5BuX,GAAata,EAAKua,YAAc,IAAOF,GAE3Cb,EAAOxZ,EAAK+Z,aAAajP,EAAG,KAC5B2O,EAAOzZ,EAAK+Z,aAAajP,EAAG,KAExB9K,EAAKwa,YAILxa,EAAK1D,QAAQwX,aAAe2G,KAAKC,IAAIlB,EAAOF,IAAW,IAAMmB,KAAKC,IAAIjB,EAAOF,IAAW,KACxFvZ,EAAK2a,oBAAoB7P,IAGxB7U,EAAM6B,QAAQ8iB,qBAAuBP,EAAQ,KAAOI,KAAKC,IAAIlB,EAAOF,GAAU,IAC/ErK,EAAQ4L,QAAQ,CACZC,UAAW7L,EAAQ,GAAG6L,UAAYR,IAI1CxH,EAAQ6C,IAAI3d,EAAYN,EAAI,0DAA2DiiB,SAI/FnF,YAAa,WACT,IAAIxU,EAAOlK,KACPgd,EAAU9S,EAAK8S,QAEnBA,EAAQzK,GAAG,QAAU3Q,GAAI,WACrB,IAAI0f,EAAYpX,EAAKqX,WAErBtN,YAAW,WACF/J,EAAKoa,cAYNpa,EAAKoa,eAAgB,GAXfhD,KACGA,EAAUtT,OAAOvG,OAAS,GAAyE,IAApEuV,EAAQ/P,KAAK,cAAgBqU,EAAUtT,OAAO,GAAK,MAAMvG,SAC5FyC,EAAKia,cACLja,EAAK+a,WAGN/a,EAAK+a,YAAa,EAFd/a,EAAKgb,gBAKbhb,EAAKgY,aAIV,QAGPlF,EAAQzK,GAAG,WAAa3Q,GAAI,WACxBsI,EAAK6Y,SAAW7Y,EAAKib,WAAY,KAGrCnI,EAAQzK,GAAG,UAAY3Q,EAAIsI,EAAKkb,SAAS1c,KAAKwB,IAE9C8S,EAAQzK,GAAG,QAAU3Q,GAAI,SAASoT,GAC9B9K,EAAK6Y,SAAW/N,EAAE8N,QAClB5Y,EAAKib,UAAYnQ,EAAEqQ,aAI3B1G,YAAa,WACT,IAAIzU,EAAOlK,KACPgd,EAAU9S,EAAK8S,QAEnB,GAAK9S,EAAK1D,QAAQwX,WAAlB,CAIAhB,EAAQzK,GAAGzQ,EAAYF,EAAI,mGAAmG,SAASoT,GAC/H9K,EAAKqW,SAASvL,IAGlB9K,EAAK2a,oBAAoB7P,MAG7B,IAAIsQ,EAAmBpb,EAAKqb,WAAW7c,KAAKwB,GAE5C8S,EAAQzK,GAAGzQ,EAAYF,EAAI,2DAA2D,SAASoT,GAC3F,IAAIwQ,EAAQxQ,EAAEwQ,MACVjL,EAASvF,EAAEuF,OACXkL,EAAUD,GAAmB,IAAVA,GAAejL,GAAoB,GAAVA,EAE5CrQ,EAAKqW,SAASvL,IAIbyQ,GACDzI,EAAQzK,GAAGnQ,EAAYR,EAAI,0DAA2D0jB,MAI9FtI,EAAQzK,GAAG,UAAY3Q,EAAK,eAAiBA,GAAI,WAC7Cob,EAAQ6C,IAAIzd,EAAYR,EAAI,0DAA2D0jB,QAI/FT,oBAAqB,SAAS7P,GAC1B,IAAIwQ,EAAQxQ,EAAEwQ,MACVjL,EAASvF,EAAEuF,OACDiL,GAAmB,IAAVA,GAAejL,GAAoB,GAAVA,IAGxCvF,EAAE8N,UACF9iB,KAAK+iB,SAAW/N,EAAE8N,SAGlB9N,EAAEqQ,WACFrlB,KAAKmlB,UAAYnQ,EAAEqQ,UAGvBrlB,KAAKilB,YAAa,EAClBjlB,KAAKujB,iBAAiBvO,EAAEiI,eAEpBhd,EAAE+U,EAAEiI,eAAenD,SAAS,aAC5B9Z,KAAKuhB,WAAWZ,aAAe3L,EAAEiI,gBAIhB,SAArBjd,KAAKwE,OAAOI,MAAmBzE,EAAMulB,mBAAqB1lB,KAAKgd,QAAQ7N,IAAI,GAC3EhP,EAAMwlB,aAAa3lB,KAAKgd,SAExBhd,KAAKkiB,UAGLliB,KAAKsf,SACLtf,KAAKsf,QAAQrS,KAAK,YAAoB2Y,YAAY7iB,IAI1D8iB,iBAAkB,WACd,IAEIC,EAFAC,EAAc/lB,KAAKgd,QAAQ/P,KAAK,+BAA+BA,KAAK,MAAM+Y,QAC1EC,EAAejmB,KAAKgd,QAAQ/P,KAAK,wBAAwBA,KAAK,MAAM+Y,QAIpEF,EADAC,EAAYte,OAAS,EACTse,EACLE,EAAaxe,OAAS,EACjBwe,EAEAjmB,KAAKgd,QAAQ/P,KAAK,qBAAqBA,KAAK,WAAW+Y,QAGvEhmB,KAAKujB,iBAAiBuC,IAG1BI,YAAa,WACT,IAEIC,EAAY/P,EAAagQ,EAFzBC,EAAqBrmB,KAAKgd,QAAQ/P,KAAK,8CAA8C+Y,QACrFM,EAAsBtmB,KAAKgd,QAAQ/P,KAAK,iCAAiC+Y,QAgB7E,OAbIK,EAAmB5e,OAAS,EACxB6e,EAAoB7e,OAAS,GAC7B2O,EAAcpW,KAAKumB,gBAAgBF,EAAmBjlB,KAAK,QAC3DglB,EAAepmB,KAAKumB,gBAAgBD,EAAoBllB,KAAK,QAE7D+kB,EAAa/P,EAAYxO,OAASwe,EAAaxe,MAAQye,EAAqBC,GAE5EH,EAAaE,EAEVC,IACPH,EAAaG,GAGVH,GAGXjB,cAAe,WACX,IAAIiB,EAAanmB,KAAKkmB,cAElBlmB,KAAKwG,QAAQwX,WACTmI,GAAcA,EAAW1e,OAAS,GAClCzH,KAAKujB,iBAAiB4C,GACtBnmB,KAAKuhB,WAAWZ,aAAewF,EAAW,IAE1CnmB,KAAK6lB,mBAEF7lB,KAAKsf,SAA4D,IAAjDtf,KAAKsf,QAAQrS,KAAK,YAAoBxF,OAC7DzH,KAAKwmB,gBACExmB,KAAKsf,SACZtf,KAAKsf,QAAQrS,KAAK,YAAoB2Y,YAAY7iB,IAI1Dmf,QAAS,WACL,IAAIhY,EAAOlK,KACPwE,EAAO0F,EAAK1F,OACZwY,EAAU9S,EAAK8S,QACf5X,EAAUZ,EAAKY,UACfkc,EAAYpX,EAAKqX,WACjBkF,EAAevc,EAAK2X,KAAO3X,EAAK2X,KAAKP,UAAY,KACjDoF,EAAkBxc,EAAK2X,KAAO3X,EAAK2X,KAAKe,aAAe,KAC3D,GAAKtB,IAIDlc,IACAA,EAAQyN,gBAAgB,MACxBmK,EAAQ2J,WAAW,0BAGvBniB,EAAKuQ,OAAOuM,GACZpX,EAAKqX,WAAWZ,aAAe,MAE/Bvb,EAAUZ,EAAKY,aAEXA,EAAQ0N,aAAa,KAAM5I,EAAK2U,SAChC7B,EAAQrZ,KAAK,wBAAyBuG,EAAK2U,SAEvC4H,IAAiBrhB,GAAYkc,EAAUtT,QAAW0Y,IAAoBpF,EAAUtT,OAAOvG,SAAW,CAClG,IAAImf,EAAa3mB,EAAEmF,GAAShE,KAAK,OAEjC,GAAI8I,EAAK2X,MAAQ+E,GACbA,IAAe3mB,EAAEiK,EAAK2X,KAAKP,WAAWlgB,KAAK,QAC1CkgB,EAAUtT,QAAU9D,EAAK2X,KAAKe,eAAiBtB,EAAUtT,OAAOvG,OACjE,OAGJ,IAAIuG,EAAS9D,EAAKyX,kBACdF,EAAQjd,EAAKkd,eAEjBxX,EAAK2X,KAAO,CACRP,UAAWlc,EACXwd,aAAc5U,EAAOvG,QAGzByC,EAAKwH,QAAQpP,EAAQ,CACjBsF,MAAO0Z,EAAU1Z,MACjBE,IAAKwZ,EAAUxZ,IACfkG,OAAQA,EACRyT,MAAOA,EACPvN,UAAW1P,EAAKod,gBAAgBN,OAMhDK,gBAAiB,WAQb,IAPA,IAGIpa,EAHAsf,EAAO7mB,KAAKuhB,WAAWvT,OACvBvG,EAASof,EAAKpf,OACdD,EAAM,EAGNwG,EAAS,GAENxG,EAAMC,EAAQD,KACjBD,EAAQvH,KAAKumB,gBAAgBM,EAAKrf,MAE9BwG,EAAOuI,KAAKhP,GAIpB,OAAOyG,GAGXiW,aAAc,SAAS1c,EAAOuf,GAC1B,MAAO,QAAQtX,KAAKjI,EAAMjD,OAASiD,EAAMiZ,eAAiBjZ,GAAOwf,eAAe,GAAG,OAASD,GAAcvf,EAAM,OAASuf,IAG7HhD,WAAY,SAAS9O,GACjB,IAAI9K,EAAOlK,KACPmZ,EAAUjP,EAAK8S,QAAQ/P,KAAK,wBAC5B+Z,EAAiB7N,EAAQ,GAAG8N,aAAe9N,EAAQ,GAAG+N,aACtDC,EAAmBhO,EAAQ,GAAGiO,YAAcjO,EAAQ,GAAGkO,YACvD1D,EAAOzZ,EAAK+Z,aAAajP,EAAG,KAC5B0O,EAAOxZ,EAAK+Z,aAAajP,EAAG,KAC5BgQ,EAAY7L,EAAQ,GAAG6L,UAAYL,KAAK2C,MAAM3D,EAAOzZ,EAAKga,YAC1DqD,EAAapO,EAAQ,GAAGoO,WAAa5C,KAAK2C,MAAM5D,EAAOxZ,EAAK8Z,YAC5DwD,EAAsBR,GAAkBrC,KAAKC,IAAIjB,EAAOzZ,EAAKga,YAAc,GAC3EuD,EAAwBN,GAAoBxC,KAAKC,IAAIjB,EAAOzZ,EAAKga,YAAc,GAG/Eha,EAAKwa,WAAavkB,EAAM6B,QAAQ8iB,sBAAwB5a,EAAKqW,SAASvL,KAItEwS,GAAuBC,KACvBvd,EAAKua,WAAaE,KAAK2C,MAAM3D,EAAOzZ,EAAKga,YACzCha,EAAKga,WAAaP,EAClBzZ,EAAK8Z,WAAaN,EAClBvK,EAAQ4L,QAAQ,CACZC,UAAWA,EACXuC,WAAYA,GACb,GACHrd,EAAK1F,OAAO4f,YAAa,IAIjCmB,WAAY,SAASvQ,GACjB,IAAI9K,EAAOlK,KACX0nB,aAAaxd,EAAKyd,YAEdzd,EAAKqW,SAASvL,KAIlB9K,EAAKyd,WAAa1T,YAAW,WACzB,IAAIzP,EAAO0F,EAAK1F,OACZ8c,EAAYpX,EAAKqX,WAErB,GAAID,EAAW,CACX,IAAIsG,EAAOpjB,EAAKqjB,mBAAmB5nB,EAAE+U,EAAEiI,gBAEvC,GAAI2K,GAAQtG,EAAUT,aAAe+G,EAAK/G,WAAY,CAClD,IAAIiH,EAAYF,EAAKE,YACjBC,EAAUH,EAAKG,UAEfD,GAAaxG,EAAUxZ,IACvBwZ,EAAU0G,UAAW,EACdD,GAAWzG,EAAU1Z,QAC5B0Z,EAAU0G,UAAW,GAGrB1G,EAAU0G,SACV1G,EAAU1Z,MAAQkgB,EAElBxG,EAAUxZ,IAAMigB,EAGpB7d,EAAKgY,cAGd,KAGP+F,aAAc,SAAS1Z,GACnB,IAAI/J,EAAMH,EAAQrE,KAAKqE,MAEvB,IAAKG,KAAQH,EAAO,CAChB,IAAKkK,EACD,OAAO/J,EAGX+J,MAIR2Z,gBAAiB,SAASlT,GACtB,IAAIzI,EAAMyI,EAAEmT,QAEZ,OAAInT,EAAEoT,QAAU7b,IAAQ3L,EAAKynB,MAAQroB,KAAKsf,QAAQrS,KAAK,kBAAkB6M,SAAS/W,IAC9E/C,KAAKsoB,qBACLtT,EAAEE,kBAEK3I,IAAQ3L,EAAKynB,MACW,SAA3BroB,KAAKuoB,kBACLvoB,KAAKwE,OAAOgB,SAASoY,QACdlD,SAAS8N,gBAAkBxoB,KAAKwV,QAAQ,IAC/CxV,KAAKwV,QAAQoI,aAGjB5I,EAAEE,uBAPC,GAaXuT,aAAc,SAASzT,GACnB,IAOI9P,EAAUiU,EAASuP,EAPnBnc,EAAMyI,EAAEmT,QACRQ,EAAqB,KAARpc,GAAsB,KAARA,GAAsB,KAARA,GAAsB,KAARA,GAAsB,KAARA,EACrE+U,EAAYthB,KAAKuhB,WACjB/c,EAAOxE,KAAKwE,OACZ6I,EAAW7I,EAAKgC,QAAQ6G,SACxBub,EAAY,CAAEhoB,EAAKioB,KAAMjoB,EAAKkoB,MAAOloB,EAAKmoB,GAAInoB,EAAKynB,MACnDW,EAAQ7oB,EAAM6B,QAAQgnB,MAAMhpB,KAAKwV,SAGjCmT,GAMCrH,IAID/U,IAAQ3L,EAAKqoB,MACT3H,EAAUtT,OAAOvG,QAAU4F,IACH,IAApBA,EAASjC,QACTpL,KAAKgb,UAAUsG,EAAUtT,OAAO,IAGhCzB,IAAQ3L,EAAKsoB,QAAU3c,IAAQ3L,EAAKuoB,YAA2B,IAAb9b,IAA2C,IAArBA,EAASyC,QAElF8Y,EAAUpX,QAAQjF,IAAQ,GACjCrH,EAAWqH,IAAQ3L,EAAKmoB,IAAOxc,IAAQ3L,EAAKioB,OAASG,GAAWzc,IAAQ3L,EAAKkoB,OAASE,EAElFxkB,EAAK4kB,YAAY9H,EAAWpc,KAC5BlF,KAAKkiB,UAGDxH,SAAS8N,gBAAkBxoB,KAAKwV,QAAQ,IACxCxV,KAAKwV,QAAQoI,QAGjB5I,EAAEE,mBAEC3I,IAAQ3L,EAAKyoB,MAAQ9c,IAAQ3L,EAAK0oB,MACzCtU,EAAEE,iBACFiE,EAAUnZ,KAAKwE,OAAO2U,QAAQ4C,GAAG,GAG7B2M,EADAnc,IAAQ3L,EAAKyoB,KACNlQ,EAAQlM,KAAK,yBAAyB+Y,QAEtC7M,EAAQlM,KAAK,yBAAyBqM,OAGjDtZ,KAAKwE,OAAO+kB,UAAUb,EAAK,GAAIvP,EAAQ,KAxBvCnZ,KAAKwpB,YAAYlI,EAAUtT,OAAO,MA4B1Cyb,iBAAkB,SAASld,GACvB,IAAImd,EAAc,IAAIvmB,KAClBsD,EAAWzG,KAAKwG,QAAQC,SACxB4G,EAAWrN,KAAKwE,OAAOgC,QAAQ6G,SAEnC,GAAY,KAARd,GAAgBvM,KAAKwE,OAAOmlB,cAC5B3pB,KAAKwE,OAAOmlB,qBACT,GAAY,KAARpd,GAAcc,IAAgC,IAApBA,EAAS9H,OAC1CvF,KAAK4pB,SAAStoB,EAAO,GAAI,CACrBsG,MAAO5H,KAAKK,OACZyH,IAAK9H,KAAKK,eAEX,GAAY,KAARkM,EAAY,CACnB,GAAI9F,EAAU,CACV,IAAIojB,EAAiB1pB,EAAMsG,SAASuE,OAAO0e,EAAajjB,GACxDpG,EAAOF,EAAMsG,SAASsB,QAAQ2hB,EAAaA,EAAY7hB,oBAAqBgiB,QAE5ExpB,EAAOqpB,EAGN1pB,KAAK0R,QAAQ,WAAY,CAAElN,KAAMxE,KAAKuoB,kBAAmB/N,OAAQ,QAASna,KAAMA,KACjFL,KAAKK,KAAKA,KAKtBypB,iBAAkB,SAAS9U,GACvB,IAAIxQ,EAAOxE,KAAKwE,OACZ8c,EAAYthB,KAAKuhB,WACjBhV,EAAMyI,EAAEmT,QAER5b,IAAQ3L,EAAKmpB,MAIbxd,IAAQ3L,EAAKopB,KACbhqB,KAAKwmB,gBACLxR,EAAEE,mBAEFlV,KAAKsf,QAAQrS,KAAK,YAAoB2Y,YAAY7iB,GAClDyB,EAAKgB,SAASoY,SAGd0D,GACAthB,KAAKiqB,sBAGTjV,EAAEE,mBAGNgV,mBAAoB,SAASlV,GACzB,IAGImE,EAASuP,EAHTnc,EAAMyI,EAAEmT,QACR3jB,EAAOxE,KAAKwE,OACZ8c,EAAYthB,KAAKuhB,WAGjB/c,EAAK2lB,KAAK7I,EAAW/U,IACrByI,EAAEE,iBACFlV,KAAKsf,QAAQrS,KAAK,YAAoB2Y,YAAY7iB,GAClD/C,KAAKkiB,WACE3V,IAAQ3L,EAAKyoB,MAAQ9c,IAAQ3L,EAAK0oB,MACzCtU,EAAEE,iBACFiE,EAAUnZ,KAAKwE,OAAO2U,QAAQ4C,GAAG,GAG7B2M,EADAnc,IAAQ3L,EAAKyoB,KACNlQ,EAAQlM,KAAK,yBAAyB+Y,QAEtC7M,EAAQlM,KAAK,yBAAyBqM,OAGjDtZ,KAAKwE,OAAO+kB,UAAUb,EAAK,GAAIvP,EAAQ,MAI/CiR,mBAAoB,SAAS7d,GACzB,IACI8d,EADAC,EAAY/d,EAAM,IAGH,IAAf+d,IACAA,EAAY,IAGhBD,EAAcrqB,KAAKioB,aAAaqC,MAEZtqB,KAAK0R,QAAQ,WAAY,CAAElN,KAAM6lB,EAAa7P,OAAQ,aAAcna,KAAML,KAAKK,UAC/FL,KAAKwE,KAAK6lB,IAIlBE,mBAAoB,SAAShe,GACzB,IAAIyc,EAAQ7oB,EAAM6B,QAAQgnB,MAAMhpB,KAAKwV,SACjCgV,EAAaxB,GAASzc,IAAQ3L,EAAKioB,OAAWG,GAASzc,IAAQ3L,EAAKkoB,MAAS,OAAS,WAGtFzoB,EADc,SAAdmqB,EACOxqB,KAAKwE,OAAOimB,WAEZzqB,KAAKwE,OAAOkmB,eAGlB1qB,KAAK0R,QAAQ,WAAY,CAAElN,KAAMxE,KAAKuoB,kBAAmB/N,OAAQgQ,EAAWnqB,KAAMA,MACnFL,KAAKK,KAAKA,GACVL,KAAKklB,gBACLllB,KAAKkiB,YAIbkD,SAAU,SAASpQ,GACf,IAAIzI,EAAMyI,EAAEmT,QAERwC,EAAmB1qB,EAAE+U,EAAExC,QAAQzF,QAAQ,cAActF,OAAS,EAC9D2gB,EAASpT,EAAEoT,OAKf,GAHApoB,KAAK+iB,SAAW/N,EAAE8N,QAClB9iB,KAAKmlB,UAAYnQ,EAAEqQ,SAEf9Y,IAAQ3L,EAAKgqB,KAAO5qB,KAAK6c,OAAS7c,KAAK6c,MAAMxI,UAG7C,OAFArU,KAAK6c,MAAM7D,aACXhE,EAAEE,iBAIN,GAAK3I,IAAQ3L,EAAKioB,MAAQtc,IAAQ3L,EAAKkoB,QAAU9oB,KAAKmlB,UAKtD,GAAIiD,GAAU7b,GAAO,IAAMA,GAAO,GAC9BvM,KAAKoqB,mBAAmB7d,QAI5B,GAvBmB,CAAC,GAAI,GAAI,IAuBXiF,QAAQjF,IAAQ,EACxBtM,EAAE+U,EAAExC,QAAQsH,SAAS,6BACtB9Z,KAAKypB,iBAAiBld,QAM9B,GAAIoe,EACA3qB,KAAKkoB,gBAAgBlT,OAClB,CACH,GAA+B,SAA3BhV,KAAKuoB,kBAEL,YADAvoB,KAAK8pB,iBAAiB9U,GAI1B,GAAIzI,IAAQ3L,EAAKopB,IAGb,OAFAhqB,KAAKwmB,qBACLxR,EAAEE,iBAIN,GAA+B,WAA3BlV,KAAKuoB,kBAEL,YADAvoB,KAAKkqB,mBAAmBlV,GAI5BhV,KAAKyoB,aAAazT,QApClBhV,KAAKuqB,mBAAmBhe,IAwChCia,cAAe,WACXxmB,KAAKsf,QAAQrS,KAAK,gBAAgB+Y,QAC7BtU,QAAQ,SACR+D,SAAS1S,IAGlBwgB,iBAAkB,SAASvU,GACvB,IACIhH,EAAK4f,EADLtG,EAAYthB,KAAKuhB,YAGrBvS,EAAO/O,EAAE+O,IAEAmH,GAAG,cACRnO,EAAMgH,EAAKrL,KAAKxD,EAAMwD,KAAK,QAEvB2d,IAAgD,IAAnCA,EAAUtT,OAAOwD,QAAQxJ,KAAgBhI,KAAK+iB,YAK9DzB,IAAethB,KAAK+iB,UAAa/iB,KAAKmlB,aACvC7D,EAAYthB,KAAKuhB,WAAa,CAC1BvT,OAAQ,GACR6S,WAAY,KAIpB+G,EAAO5nB,KAAKwE,OAAOqjB,mBAAmB7Y,MAGlCsS,EAAUT,WAAa+G,EAAK/G,YAAc,GAG1C7Y,IACA4f,EAAO1f,GAAmBlI,KAAK+f,MAAO/X,IAGtC4f,GAAQA,EAAK5f,MACbA,EAAM,CAAC4f,EAAK5f,MAGhBhI,KAAK6qB,iBAAiBjD,EAAM5f,GAC5BhI,KAAKiqB,wBAGTY,iBAAkB,SAAS5V,EAAUjH,EAAQ6S,GACzC,IAAIS,EAAYthB,KAAKuhB,WAErB,GAAItM,GAAYqM,EAAW,CACvB,IAAI9c,EAAOxE,KAAKwE,OAMhB,GAJIyQ,EAASjN,MACTiN,EAAWzQ,EAAKsmB,yBAAyB7V,IAGzCjV,KAAKmlB,WAAa7D,EAAU1Z,OAAS0Z,EAAUxZ,IAAK,CACpD,IAAIkgB,EAAW/S,EAASnN,IAAMwZ,EAAUxZ,IAExCwZ,EAAUxZ,IAAMmN,EAAS8S,QAAU9S,EAAS8S,UAAY9S,EAASnN,IAE7DkgB,GAAYxjB,EAAKumB,mBACjB5qB,EAAME,KAAKoM,QAAQ6U,EAAUxZ,KAAMtD,EAAKumB,0BAG5CzJ,EAAU1Z,MAAQqN,EAAS6S,UAAY7S,EAAS6S,YAAc7S,EAASrN,MACvE0Z,EAAUxZ,IAAMmN,EAAS8S,QAAU9S,EAAS8S,UAAY9S,EAASnN,IAcrE,GAVIwZ,EAAU5V,SADV,cAAeuJ,EACMA,EAAS0N,UAET1N,EAASvJ,SAGf,OAAfmV,GAAuBA,IAAe3gB,IACtCohB,EAAUT,WAAaA,GAG3BS,EAAU/S,MAAQ0G,EAAS1G,MACvBvO,KAAK+iB,SAAU,CACf,IAAIiI,EAAgBhd,GAAUA,EAAOvG,OAAU6Z,EAAUtT,OAAOwD,QAAQxD,EAAO,KAAO,EAElFgd,GAAgB,EAChB1J,EAAUtT,OAAOyD,OAAOuZ,EAAc,GAEtC1J,EAAUtT,OAASsT,EAAUtT,OAAOC,OAAOD,GAAU,SAGrDsT,EAAUtT,OAASA,GAAU,KAK7CxH,QAAS,CACL5B,KAAM,YACNvE,KAAM6C,EACNmK,UAAU,EACV4d,UAAU,EACVC,MAAM,EACNhY,QAAQ,EACRzM,SAAU,GACV0kB,YAAY,EACZC,IAAK,IAAIjoB,KAAK,KAAM,EAAG,GACvBkoB,IAAK,IAAIloB,KAAK,KAAM,GAAI,IACxBmc,QAAS,KACTgM,cAAe,EACfC,YAAa,EACbC,SAAU,KACVC,eAAe,EACfC,UAAWxoB,EACXyoB,QAASzoB,EACT0oB,kBAAmB,CACfC,eAAgB,IAChBC,kBAAkB,GAEtBC,cAAe,CACXC,SA5iGQ,kBA6iGRC,SAAS,EACTJ,eAAgB,IAChBC,kBAAkB,GAEtBI,OAAQ,GACR1Y,SAAU,CACNvO,MAAO,QACPN,IAAK,gBACL8U,KAAM,OACNF,OAAQ,SACRzJ,QAAS,SACTwL,YAAa,eACb6Q,kBAAmB,eACnBhnB,KAAM,OACND,SAAU,WACVI,QAAS,UACT8mB,WAAY,cACZC,cAAe,+BACfC,eAAgB,CACZ/Z,GAAI,KACJga,GAAI,KACJC,GAAI,KACJC,OAAQ,YACRC,OAAQ,IAEZrnB,OAAQ,YACRhB,MAAO,CACHsoB,IAAK,MACLC,KAAM,OACNC,SAAU,YACVC,OAAQ,SACRC,MAAO,QACPC,SAAU,WACVC,aAAc,gBACdC,iBAAkB,qBAClBC,cAAe,iBACfC,KAAM,QAEVC,mBAAoB,CAChBlB,kBAAmB,wBACnBmB,uBAAwB,eACxBC,uBAAwB,4BACxBC,mBAAoB,oBACpBC,gBAAiB,sBACjBC,qBAAsB,0BACtBC,iBAAkB,mBAEtBtgB,SAAU,CACNugB,aAnmGI,+CAqmGR/c,OAAQ,CACJnE,MAAO,QACP9E,MAAO,QACPE,IAAK,MACLsO,YAAa,gBACb5I,YAAa,cACbiJ,OAAQ,SACRhQ,SAAU,WACVL,cAAe,iBACfC,YAAa,eACb8Q,kBAAmB,wCACnBwG,oBAAqB,YACrBvJ,qBAAsB,YACtBoF,cAAe,aACf/F,WAAY,cACZ4H,YAAa,UAGrBzC,OAAQ,KACRiV,MAAO,KACP3Z,UAAW,GACXrO,MAAO,CACHqO,UAAW,GACX4Z,YAAa,cAEjBzpB,MAAO,GACP2Z,YAAY,GAGhBhQ,OAAQ,CACJtL,EACAG,EACAJ,EACAG,EACA,MACA,cACA,YACA,YACA,OACA,UACA,cACA,SACA,YACA,WACAN,GAGJwN,QAAS,WACL,IAAI5F,EAAOlK,KAWX,GARAc,EAAOqJ,GAAG2F,QAAQlH,KAAKsB,GAEnBA,EAAKwF,aACLxF,EAAKwF,WAAWuJ,OAAO3W,EAAQ4H,EAAK6jB,iBACpC7jB,EAAKwF,WAAWuJ,OAAO1W,EAAU2H,EAAK8jB,kBACtC9jB,EAAKwF,WAAWuJ,OAAOzW,EAAO0H,EAAK+jB,gBAGnC/jB,EAAKgkB,wBACL,IAAK,IAAI1mB,EAAM,EAAGA,EAAM0C,EAAKgK,UAAUzM,OAAQD,IAAO,CAClD,IAAI2mB,EAAajkB,EAAKgK,UAAU1M,GAAKkI,WACrCye,EAAWlV,OAAO3W,EAAQ4H,EAAKgkB,yBAC/BC,EAAWlV,OAAO1W,EAAU2H,EAAKkkB,0BACjCD,EAAWlV,OAAOzW,EAAO0H,EAAKmkB,uBAIlCnkB,EAAK1E,WACL0E,EAAK1E,SAASsK,UACd5F,EAAK2S,MAAM/M,WAGX5F,EAAK1F,QACL0F,EAAK1F,OAAOsL,UAGZ5F,EAAKokB,SACLpkB,EAAKokB,QAAQxe,UAGb9P,KAAKuuB,gBACLvuB,KAAKuuB,eAAeze,UAGpB9P,KAAKwuB,kBACLxuB,KAAKwuB,iBAAiB1e,UAGhB5F,EAAKsL,QACViZ,IAAIvkB,EAAK8S,SACTyR,IAAIvkB,EAAKoV,SACTmP,IAAIvkB,EAAK2S,OAENgD,IAAIje,GAEZ8lB,aAAaxd,EAAKyd,YAElBzd,EAAKuV,OAAS,KACdvV,EAAKoV,QAAU,KACfpV,EAAKsL,QAAU,KAEfvV,EAAEG,QAAQyf,IAAI,SAAWje,EAAIsI,EAAKmU,gBAElCle,EAAM2P,QAAQ5F,EAAK8S,UAGvB0R,cAAe,SAAShf,GACpB1P,KAAKwG,QAAQkJ,WAAaA,EAE1B1P,KAAKme,cAEDne,KAAKwG,QAAQykB,UAAYvb,EAAWif,MACpCjf,EAAWif,QACJjtB,EAAQgO,IACf1P,KAAKwE,KAAKxE,KAAKof,gBAIvBvQ,MAAO,WACH,IAAIsK,EAAUnZ,KAAKgd,QAAQ/P,KAAK,wBAC5BzI,EAAOxE,KAAKwE,OAEhB,OAAIA,GAA8B,WAAtBA,EAAKgC,QAAQ5B,KACduU,EAAQlM,KAAK,WAEbkM,EAAQlM,KAAK,YACLwhB,IAAIzuB,KAAKgd,QAAQ/P,KAAK,4BACbA,KAAK,+BAA+B2hB,aAIpEpQ,SAAU,WACN,IAAIqQ,EACAC,EACAC,EACArD,EACAC,EACApkB,EACAynB,EAEAC,EACAC,EAFAhlB,EAAOlK,KAIPgT,EAAW,EACXmc,EAAe,GACfC,EAAe,GAEf1X,EAAWxN,EAAKmW,YAChBgP,EAAUnlB,EAAK1D,QAAQ6G,WAA2C,IAA/BnD,EAAK1D,QAAQ6G,SAAS8c,KACzD7N,EAAYpS,EAAK1D,QAAQ6G,WAA6C,IAAjCnD,EAAK1D,QAAQ6G,SAASiR,QAE3D+Q,GAAY/S,GAAa5E,KACzBxN,EAAKwa,WAAY,EACbhN,GAAYvX,EAAM6B,QAAQse,SAASgP,UACnCtc,EAAW,GAGf9I,EAAKqkB,eAAiB,IAAIpuB,EAAMU,GAAG0uB,UAAUrlB,EAAKsL,QAAS,CACvDxC,SAAUA,EACVvJ,OAAQ,WACR+lB,OAAQ,mBACRC,WAAY/X,EACZgY,YAAY,IAGZL,GACAnlB,EAAKqkB,eAAe7lB,KAAK,aAAa,SAASsM,GAC3C,IAAIxQ,EAAO0F,EAAK1F,OACZmc,EAAe3L,EAAEiI,cACjB0S,EAAUzlB,EAAKqW,SAASvL,GAG5B,GAFA9K,EAAKwa,WAAY,GAEZlgB,EAAKgC,QAAQ6G,WAA2C,IAA/B7I,EAAKgC,QAAQ6G,SAAS8c,KAGhD,OAFAjgB,EAAKwa,WAAY,OACjB1P,EAAEE,iBAIN,GAAIya,IAAYhP,EAAa7G,SAAS,kBAIlC,OAHA5P,EAAKwa,WAAY,EACjBxa,EAAKsL,QAAQvI,KAAK,mBAAmB2Y,YAAY,uBACjD5Q,EAAEE,iBAcN,GAVA3N,EAAQ2C,EAAKqc,gBAAgB5F,EAAahd,KAAKxD,EAAMwD,KAAK,SAE1DqrB,EAAcznB,EAAMoD,QACJpD,EAAMoD,QAEtBqkB,EAAY5jB,OAAO5G,EAAKorB,qBAAqBZ,IAE7CA,EAAYa,aAAe3lB,EAAKwW,gBAAgBC,GAEhDwO,EAAe,GACXjlB,EAAKqX,WAGL,IAFA,IAAIvT,EAAS9D,EAAKqX,WAAWvT,OAEpBsH,EAAI,EAAGA,EAAItH,EAAOvG,OAAQ6N,IAAK,CACpC,IAAIwa,EAAW5lB,EAAKqc,gBAAgBvY,EAAOsH,IAAI3K,QAC3ColB,EAAkB/vB,KAAKwV,QAAQvI,KAAK,yBAA2B6iB,EAAS9nB,IAAM,MAAM+T,GAAG,GAE3F+T,EAAS1kB,OAAO5G,EAAKorB,qBAAqBE,IAEtCC,EAAgBtoB,SAChBqoB,EAASD,aAAe3lB,EAAKwW,gBAAgBqP,IAGjDZ,EAAa5Y,KAAKuZ,QAGtBX,EAAa5Y,KAAKyY,GAGtBH,EAAYrqB,EAAKwrB,gBAAgBhb,EAAEib,EAAEC,cAAelb,EAAEmb,EAAED,eACxDnB,EAAiBvqB,EAAKod,gBAAgBiN,GAEtCK,EAAkBxD,EAAYmD,EAAUnnB,YAAYsN,EAAEib,EAAEC,cAAelb,EAAEmb,EAAED,cAAehmB,EAAK1D,QAAQ0kB,MAEvG4D,EAAUD,EAEVI,EAAaJ,EAERA,IAAa3kB,EAAKwH,QAAQ,YAAa,CAAEnK,MAAOA,KACjDyN,EAAEE,oBAGTxM,KAAK,QAAQ,SAASsM,GACnB,IAEIhC,EACAod,EACA9a,EAJA9Q,EAAO0F,EAAK1F,OACZojB,EAAOpjB,EAAKwrB,gBAAgBhb,EAAEib,EAAEI,SAAUrb,EAAEmb,EAAEE,UAKlD,GAAKzI,EAAL,CAMA,GAFA+D,EAAU/D,EAAKlgB,YAAYsN,EAAEib,EAAEI,SAAUrb,EAAEmb,EAAEE,SAAUnmB,EAAK1D,QAAQ0kB,MAEhEtD,EAAKjF,YAAckM,EAAUlM,UAE7B,GAAIiF,EAAKjF,YAAcsM,EAAWtM,UAAW,CACzC,IAAI2N,EAAYrwB,EAAE4uB,EAAUrZ,SAASjH,QAEjCgiB,EAAoBtwB,EAAE2nB,EAAKpS,SAAS1D,SAAS0e,WAAWzU,GAAGuU,GAQ/D,IANAzB,EAAYrqB,EAAKwrB,gBAAgBO,EAAkBvlB,SAAS8N,KAAMyX,EAAkBvlB,SAASylB,KAE7F/E,EAAYmD,EAAUnnB,YAAYsN,EAAEib,EAAEI,SAAUrb,EAAEmb,EAAEE,UAAU,GAE9DjB,EAAeD,EAAa5qB,KAAI,SAASgD,GAAS,OAAOA,EAAMoD,WAE1D2K,EAAI,EAAGA,EAAI6Z,EAAa1nB,OAAQ6N,IAC7B6Z,EAAa7Z,GAAG5J,UAAYkc,EAAKjF,YACjCwM,EAAa7Z,GAAG5J,SAAWkc,EAAKjF,UAEhCwM,EAAa7Z,GAAGxN,IAAM3H,EAAME,KAAKE,QAAQ4uB,EAAa7Z,GAAG1N,OACzDunB,EAAa7Z,GAAG1N,MAAQzH,EAAME,KAAKE,QAAQ4uB,EAAa7Z,GAAG1N,OAEtDggB,EAAKjF,YACNxiB,EAAME,KAAKoM,QAAQ0iB,EAAa7Z,GAAG1N,MAAOzH,EAAME,KAAKG,gBAAgBgE,EAAKknB,cAC1EvrB,EAAME,KAAKoM,QAAQ0iB,EAAa7Z,GAAGxN,IAAK3H,EAAME,KAAKG,gBAAgBgE,EAAKknB,aAAelnB,EAAKumB,4BAKxG8D,EAAY5uB,EAAEqB,QAAO,EAAM,GAAK2tB,GAChCvD,EAAYwD,EAEZC,EAAeC,EAMvB,IAFApc,EAAW2Y,EAAUD,EAEhBpW,EAAI,EAAGA,EAAI6Z,EAAa1nB,OAAQ6N,IACjC9Q,EAAKksB,gBAAgBvB,EAAa7Z,GAAIsS,EAAK/G,WAAY7N,GAK3D,GAFAod,EAAQrd,GAAeic,EAAahc,GAE/B9I,EAAKwH,QAAQ,OAAQ,CACtBnK,MAAOA,EACPqgB,KAAM,CAAEpS,QAASoS,EAAKpS,QAAS5N,MAAOggB,EAAKE,YAAahgB,IAAK8f,EAAKG,UAAWpF,UAAWiF,EAAKjF,WAC7FzO,UAAW1P,EAAKod,gBAAgBgG,GAChChgB,MAAOwoB,EAAMxoB,MACbE,IAAKsoB,EAAMtoB,MAIX,IAAKwN,EAAI,EAAGA,EAAI6Z,EAAa1nB,OAAQ6N,IACjC9Q,EAAKksB,gBAAgBvB,EAAa7Z,GAAIsS,EAAK/G,WAAY7N,QAH3D8b,EAAUlH,MAOjBlf,KAAK,WAAW,SAASsM,GACtB9K,EAAK1F,OAAOmsB,kBACZ,IAAI3d,EAAW2Y,EAAUD,EACrB0E,EAAQrd,GAAeic,EAAahc,GACpCpL,EAAQwoB,EAAMxoB,MACdE,EAAMsoB,EAAMtoB,IAChBoC,EAAKwa,WAAY,EAEjB,IAAIkM,EAAe1mB,EAAK1F,OAAOod,gBAAgBkN,GAU/C,IARgB5kB,EAAKwH,QAAQ,UAAW,CACpCnK,MAAOA,EACPqgB,KAAM,CAAEpS,QAASsZ,EAAQtZ,QAAS5N,MAAOknB,EAAQhH,YAAahgB,IAAKgnB,EAAQ/G,WAC3EngB,MAAOA,EACPE,IAAKA,EACLoM,UAAW0c,MAGIrpB,EAAMK,MAAMK,YAAcL,EAAMK,WAC/CV,EAAMO,IAAIG,YAAcH,EAAIG,WAC5BgnB,EAAWtM,YAAcmM,EAAQnM,WACjCxiB,EAAMkR,UAAUuf,KAAkBzwB,EAAMkR,UAAU0d,IAAkB,CAEpE7kB,EAAK2mB,aAAe1B,EAAa1nB,OAAS,EAE1C,IAAK,IAAI6N,EAAI,EAAGA,EAAI6Z,EAAa1nB,OAAQ6N,IAAK,CAC1C,IAAIwb,EAAM3B,EAAa7Z,GAEvB8a,EAAQrd,GAAe+d,EAAK9d,GAE5B,IAAI+d,EAAsB7mB,EAAK1F,OAAOorB,qBAAqBkB,GACvDE,EAAe/wB,EAAEqB,OACjB,CACIoK,SAAUolB,EAAIplB,SACd9D,MAAOwoB,EAAMxoB,MACbE,IAAKsoB,EAAMtoB,KAEfipB,EACAH,GAGJ1mB,EAAK+mB,aAAa,KAAMH,EAAKE,GAG7B9mB,EAAK2mB,eACL3mB,EAAKwF,WAAWwhB,OAChBhnB,EAAK2mB,cAAe,GAI5B7b,EAAEiI,cAAc2I,YAAY,kBAC5B5lB,KAAKmxB,aACLhC,EAAe,GACfC,EAAe,MAElB1mB,KAAK,cAAc,WAChBwB,EAAK1F,OAAOmsB,kBACZ3wB,KAAKmxB,aACLhC,EAAe,GACfC,EAAe,MAIvBllB,EAAKqkB,eAAe7lB,KAAK,QAAQ,SAASsM,GAClC9K,EAAKqW,SAASvL,KACd9K,EAAKsL,QAAQvI,KAAK,mBAAmB2Y,YAAY,kBAC7C1b,EAAK1D,QAAQwX,YACb9T,EAAKqZ,iBAAiBvO,EAAEiI,eAE5BjI,EAAEiI,cAAcxH,SAAS,wBAMzC8I,WAAY,WACR,IAAImN,EACAC,EACApkB,EACAynB,EACApH,EACA1d,EAAOlK,KACPgT,EAAW,EAEf,SAASwX,EAAU4G,GACf,IAAIC,EAAa,CACb,aAAc,OACd,aAAc,OACd,aAAc,QACd,aAAc,SAGlB,IAAK,IAAI9kB,KAAO8kB,EACZ,GAAID,EAAOtX,SAASvN,GAChB,OAAO8kB,EAAW9kB,GAK1BrC,EAAKmW,aAAelgB,EAAM6B,QAAQse,SAASgP,UAC3Ctc,EAAW,GAGf9I,EAAKskB,iBAAmB,IAAIruB,EAAMU,GAAG0uB,UAAUrlB,EAAKsL,QAAS,CACzDxC,SAAUA,EACVvJ,OAAQ,mBACRimB,YAAY,EACZ4B,UAAW,SAAStc,GAChB,IAIIhN,EAJa/H,EAAE+U,EAAEiI,eAESlQ,QAAQ,YAEfpJ,KAAKxD,EAAMwD,KAAK,QAEnCa,EAAO0F,EAAK1F,OAEhB0F,EAAKwa,WAAY,EACjBnd,EAAQ2C,EAAKqc,gBAAgBve,GAE7BgnB,EAAcznB,EAAMoD,QAEpBnG,EAAK+sB,sBAAsBvC,GAE3BpH,EAAOpjB,EAAKwrB,gBAAgBhb,EAAEib,EAAEC,cAAelb,EAAEmb,EAAED,eAE/ChmB,EAAKwH,QAAQ,cAAe,CAAEnK,MAAOA,KACrCyN,EAAEE,iBAGNwW,EAAYvrB,EAAME,KAAKoK,UAAUukB,EAAYpnB,OAE7C+jB,EAAUxrB,EAAME,KAAKoK,UAAUukB,EAAYlnB,MAE/C0pB,KAAM,SAASxc,GACX,GAAK4S,EAAL,CAIA,IAEI6J,EAAMjH,EAFOvqB,EAAE+U,EAAEiI,gBAIjBzY,EAAO0F,EAAK1F,OAEZktB,EAAcltB,EAAKwrB,gBAAgBhb,EAAEib,EAAEI,SAAUrb,EAAEmb,EAAEE,UAEzD,GAAKqB,GAAe9J,EAAK/G,YAAc6Q,EAAY7Q,WAAnD,CAIA+G,EAAO8J,EAEP,IAAIC,EAAgBjG,EAEhBkG,EAAcjG,EAEP,SAAP8F,GACK7J,EAAKjF,WAAaiF,EAAK9f,IAAM3H,EAAME,KAAKoK,UAAUukB,EAAYpnB,QAAUpD,EAAKumB,sBAE1EY,EADAqD,EAAYtjB,SACFkc,EAAKlgB,YAAYsN,EAAEib,EAAEI,SAAUrb,EAAEmb,EAAEE,SAAUnmB,EAAK1D,QAAQ0kB,MAE1DtD,EAAKjgB,UAAUqN,EAAEib,EAAEI,SAAUrb,EAAEmb,EAAEE,SAAUnmB,EAAK1D,QAAQ0kB,OAG5D,SAAPuG,GACF7J,EAAKjF,WAAaxiB,EAAME,KAAKoK,UAAUukB,EAAYlnB,KAAO8f,EAAKhgB,OAASpD,EAAKumB,sBAC9EW,EAAY9D,EAAKlgB,YAAYsN,EAAEib,EAAEI,SAAUrb,EAAEmb,EAAEE,SAAUnmB,EAAK1D,QAAQ0kB,OAE5D,QAAPuG,EACH7J,EAAKjF,WAAaxiB,EAAME,KAAKoK,UAAUtK,EAAME,KAAKE,QAAQqnB,EAAKG,aAAe5nB,EAAME,KAAKoK,UAAUtK,EAAME,KAAKE,QAAQyuB,EAAYpnB,QAE9H+jB,EADAqD,EAAYtjB,SACFkc,EAAKlgB,YAAYsN,EAAEib,EAAEI,SAAUrb,EAAEmb,EAAEE,SAAUnmB,EAAK1D,QAAQ0kB,MAE1DtD,EAAKjgB,UAAUqN,EAAEib,EAAEI,SAAUrb,EAAEmb,EAAEE,SAAUnmB,EAAK1D,QAAQ0kB,OAE9DtD,EAAKjF,WAAaiF,EAAK9f,IAAM3H,EAAME,KAAKoK,UAAUukB,EAAYpnB,QAAUpD,EAAKumB,sBACrFY,EAAU/D,EAAKjgB,UAAUqN,EAAEib,EAAEI,SAAUrb,EAAEmb,EAAEE,SAAUnmB,EAAK1D,QAAQ0kB,OAExD,QAAPuG,IACH7J,EAAKjF,WAAaxiB,EAAME,KAAKoK,UAAUtK,EAAME,KAAKE,QAAQyuB,EAAYlnB,OAAS3H,EAAME,KAAKoK,UAAUtK,EAAME,KAAKE,QAAQqnB,EAAKE,gBAEpHF,EAAKjF,WAAaxiB,EAAME,KAAKoK,UAAUukB,EAAYlnB,KAAO8f,EAAKhgB,OAASpD,EAAKumB,uBADrFW,EAAY9D,EAAKlgB,YAAYsN,EAAEib,EAAEI,SAAUrb,EAAEmb,EAAEE,SAAUnmB,EAAK1D,QAAQ0kB,OAMzEhhB,EAAKwH,QAAQ,SAAU,CACxBnK,MAAOA,EACPqgB,KAAM,CAAEpS,QAASoS,EAAKpS,QAAS5N,MAAOggB,EAAKE,YAAahgB,IAAK8f,EAAKG,WAClEngB,MAAOzH,EAAMsG,SAASic,YAAYgJ,GAClC5jB,IAAK3H,EAAMsG,SAASic,YAAYiJ,GAChCzX,UAAW1P,EAAKod,gBAAgBgG,MAIhC8D,EAAYiG,EACZhG,EAAUiG,GAHVptB,EAAKqtB,kBAAkB7C,EAAapH,EAAK/G,WAAY6K,EAAWC,MAMxEmG,QAAS,SAAS9c,GACd,IAAI+c,EAAa9xB,EAAE+U,EAAEiI,eACjBrV,EAAQ,IAAIzE,KAAK6rB,EAAYpnB,MAAMK,WACnCH,EAAM,IAAI3E,KAAK6rB,EAAYlnB,IAAIG,WAC/BwpB,EAAMjH,EAAUuH,GAEpB7nB,EAAKwa,WAAY,EACjBxa,EAAK1F,OAAOwtB,oBAED,SAAPP,EACA3pB,EAAM3H,EAAMsG,SAASic,YAAYiJ,GACnB,SAAP8F,EACP7pB,EAAQzH,EAAMsG,SAASic,YAAYgJ,GACrB,QAAP+F,EAEH3pB,EADA8f,EAAKjF,UACCxiB,EAAME,KAAKE,QAAQJ,EAAMsG,SAASic,YAAYiJ,IAE9CxrB,EAAMsG,SAASic,YAAYiJ,GAEvB,QAAP8F,IACH7J,EAAKjF,YACL/a,EAAQ,IAAIzE,KAAKhD,EAAMsG,SAASic,YAAYgJ,KACtCuG,SAAS,GACfrqB,EAAMsqB,WAAW,IAEjBtqB,EAAQzH,EAAMsG,SAASic,YAAYgJ,KAI3BxhB,EAAKwH,QAAQ,YAAa,CACtCnK,MAAOA,EACPqgB,KAAM,CAAEpS,QAASoS,EAAKpS,QAAS5N,MAAOggB,EAAKE,YAAahgB,IAAK8f,EAAKG,WAClEngB,MAAOA,EACPE,IAAKA,EACLoM,UAAWhK,EAAK1F,OAAOod,gBAAgBgG,MAGzB9f,EAAIG,WAAaL,EAAMK,YACjC+mB,EAAYpnB,MAAMK,WAAaL,EAAMK,WAAa+mB,EAAYlnB,IAAIG,WAAaH,EAAIG,YACnFiC,EAAK1F,OAAO+sB,sBAAsBhqB,GAClC2C,EAAK+mB,aAAaQ,EAAKlqB,EAAO,CAAEK,MAAOA,EAAOE,IAAKA,MAI3D8f,EAAO,KACPrgB,EAAQ,MAEZ4qB,WAAY,WACRjoB,EAAKwa,WAAY,EACjBxa,EAAK1F,OAAOwtB,oBAEZpK,EAAO,KACPrgB,EAAQ,SAKpB0pB,aAAc,SAASQ,EAAKlqB,EAAO8D,GAC/B,IAAInB,EAAOlK,KAEPoyB,EAAc,SAAS7qB,EAAO8qB,GAC9B,IAAIzqB,EAEJ,IACIsC,EAAKooB,iBAAkB,EACvB/qB,EAAM6D,OAAOC,GACbnB,EAAKqoB,cAAchrB,GACnBK,EAAQL,EAAMK,MAEV6pB,GAAOlqB,EAAMwD,WAAazK,GAAe,GAA0B,IAArBsH,EAAM4qB,YAA2C,IAAvB5qB,EAAM6qB,cAA6C,IAAvB7qB,EAAM8qB,cAAkD,IAA5B9qB,EAAMpH,mBACtI+G,EAAM+D,IAAI,YAAY,GAE5B,QACEpB,EAAKooB,iBAAkB,EAGtBpoB,EAAKwH,QAAQ9O,EAAM,CAAE2E,MAAOA,MACzB8qB,GACAA,IAGCnoB,EAAK2mB,cACN3mB,EAAKwF,WAAWwhB,SAKxByB,EAAiB,SAASprB,GAC1B,OAAIA,EAAMyE,eACC9B,EAAKwF,WAAWkjB,SAASrrB,EAAMS,KAE/BkC,EAAKwF,WAAWP,IAAI5H,EAAMsE,eA4CzC,GAAItE,EAAMyE,gBAAkBzE,EAAMuE,eAAgB,CAC9C,IAAIuhB,EAAqBnjB,EAAK1D,QAAQgN,SAAS6Z,mBAE/CnjB,EAAK2oB,qBAAqBtrB,GAtBP,WACnB,IACIurB,EADA5jB,EAAOyjB,EAAeprB,GAWtBwrB,EAAY7jB,EAAK/C,aAAa,CAAEvE,MAAOL,EAAMK,MAAOE,IAAKP,EAAMO,MAEnEgrB,EAAWC,EAAU/qB,IAErBoqB,EAAYloB,EAAKwF,WAAW+e,IAAIsE,IAZjB,WACX7oB,EAAKqoB,cAAcrjB,GAEfhF,EAAKqX,YACLrX,EAAKqX,WAAWvT,OAAOuI,KAAKuc,SA7BrB,WACf,IAAI5jB,EAAOyjB,EAAeprB,GAE1B,GAAW,SAAPkqB,GAAyB,SAAPA,EAAgB,CAClC,GAAIpmB,EAAUzD,MAAO,CACjB,IAAIA,EAAQzH,EAAME,KAAKE,QAAQ2O,EAAKtH,OACpCzH,EAAME,KAAKoM,QAAQ7E,EAAOpH,EAAgB6K,EAAUzD,QACpDyD,EAAUzD,MAAQA,EAEtB,GAAIyD,EAAUvD,IAAK,CACf,IAAIA,EAAM3H,EAAME,KAAKE,QAAQ2O,EAAKpH,KAClC3H,EAAME,KAAKoM,QAAQ3E,EAAKtH,EAAgB6K,EAAUvD,MAClDuD,EAAUvD,IAAMA,GAIxBoC,EAAKwF,WAAWZ,kBAAkBI,GAElCkjB,EAAYljB,KAyBoD,CAC5DxC,MAAO2gB,EAAmBI,gBAC1B7pB,KAAMypB,EAAmB2F,cAAgB3F,EAAmB2F,cAAgBzvB,EAC5E0vB,eAAgB5F,EAAmBK,qBACnCwF,WAAY7F,EAAmBM,wBAGnCyE,EAAYloB,EAAKwF,WAAWkjB,SAASrrB,EAAMS,OAInDmrB,mBAAoB,SAASrmB,GAGzB,OAFAA,EAAY7M,EAAE6M,GAAWC,QAAQ,IAAM5M,EAAMwD,KAAK,OAAS,KAEpD3D,KAAK0P,WAAWkjB,SAAS9lB,EAAUnJ,KAAKxD,EAAMwD,KAAK,UAG9DyW,WAAY,SAAS5T,GACjBxG,KAAKsf,QAAQrS,KAAK,YAAoB2Y,YAAY7iB,GAClD/C,KAAKsuB,QAAQlU,WAAW5T,IAG5BoX,MAAO,WACH5d,KAAKgd,QAAQtL,QAAQ,UAGzB0hB,cAAe,SAASf,EAAUnsB,EAAOmtB,GACrC,IAAIhmB,EAAWrN,KAAKwG,QAAQ6G,SAE5B,IAAiB,IAAbA,IAA+C,IAA1BA,EAASugB,aAAwB,CACtD,IAAIpa,EAAWxT,KAAKwG,QAAQgN,SACxB9G,EAAQ8G,EAAS2Y,kBACjBvoB,SAAcyJ,EAASugB,eAAiB5sB,EAASqM,EAASugB,aAAepa,EAASnG,SAASugB,aAE/F,GAAI5tB,KAAKszB,mBAAqBptB,EAAM6F,cAAe,CAC/C,IAAIshB,EAAqBrtB,KAAKwG,QAAQgN,SAAS6Z,mBAC/C3gB,EAAQ2gB,EAAmBlB,kBAGvBvoB,EADAsC,EAAMyF,eAAiBzF,EAAM0F,QACtByhB,EAAmBkG,4BAA8BlG,EAAmBkG,4BAnwHlE,yDAqwHFlG,EAAmBmG,yBAA2BnG,EAAmBmG,yBAnwHlE,oDAswHNH,IACA3mB,EAAQ2gB,EAAmBC,uBAC3B1pB,EAAOypB,EAAmBoG,wBAA0BpG,EAAmBoG,wBAzwHlE,oDA6wHb,IAAInZ,EAAU,CACV,CAAE1V,KAAM,UAAWhB,KAAMyvB,EAAgB7f,EAAS8H,YAAc9H,EAAS1D,QAAS4D,MAAO,WAAa2e,OAGpGryB,KAAKqgB,aAAelgB,EAAMiY,MAC5BkC,EAAQ/D,KAAK,CAAE3R,KAAM,aAAchB,KAAM4P,EAAS+F,OAAQ7F,MAAO,WAAa2e,GAAS,MAG3FryB,KAAK4f,gBAEL5f,KAAKoa,WAAW,CACZlU,MAAOA,EACPtC,KAAMA,EACN8I,MAAOA,EACP4N,QAASA,IAGbta,KAAKye,mBAEL4T,KAIRzI,SAAU,SAASve,GACf,IAEI9D,EAFA8F,EAAWrN,KAAKsuB,QAAQjhB,SACxBqC,EAAa1P,KAAK0P,WAGtBrE,EAAYA,GAAa,IAETrL,KAAK0R,QAAQ,MAAO,CAAEnK,MAAO8D,MAEzBgC,GAAYA,EAASvF,QAAWuF,KAChDrN,KAAK0zB,cAEDroB,GAAaA,EAAUP,SACvBO,EAAYA,EAAUP,WAG1BvD,EAAQmI,EAAW+e,IAAIpjB,MAGnBrL,KAAK0zB,cACL1zB,KAAK2zB,WAAWpsB,MAK7BqsB,UAAW,WACN,IAAI1pB,EAAOlK,KACP6Q,EAAS3G,EAAKokB,QACd5e,EAAaxF,EAAKwF,WAEtB,GAAKmB,EAAL,CAIA,IAGI7C,EAAQsH,EAAG/N,EAHX8F,EAAWwD,EAAOxD,SAClBP,EAAY+D,EAAO/D,UACnB5G,EAAQgE,EAAKipB,mBAAmBrmB,GAGpC,GAAIA,GAAaO,GAAYA,EAASvF,QACjCoC,EAAKwH,QAAQ9O,EAAM,CAAEkK,UAAWA,EAAWvF,MAAOrB,IAAW,CAE9D,IAAKA,EAAM4F,gBAAoB5F,EAAMkG,sBAAwBlG,EAAM8F,eAAgB,CAG/E,IAAKsJ,GAFLtH,EAAS0B,EAAWtO,QAEJqG,OAAS,EAAG6N,GAAK,EAAGA,GAAK,GACrC/N,EAAQyG,EAAOsH,KACF/N,EAAMsE,eAAiB3F,EAAMgG,IACtCwD,EAAWnG,OAAOhC,GAI1BrB,EAAMoF,IAAI,sBAAuB,IAGhCpF,EAAM2tB,OAAU3tB,EAAM4F,gBACvB5B,EAAKqoB,cAAcrsB,EAAO,UAG9BwJ,EAAWwhB,UAInBwC,YAAa,WACT,IAEIxtB,EAFA2K,EAAS7Q,KAAKsuB,QACdxhB,EAAY+D,EAAO/D,UAGnBA,KACA5G,EAAQlG,KAAKmzB,mBAAmBrmB,KAEnB5G,EAAM4F,iBACf9L,KAAKuyB,cAAcrsB,EAAO,UAC1BlG,KAAKuyB,cAAcvyB,KAAK0P,WAAWP,IAAIjJ,EAAM2F,cAAe,WAGhE7L,KAAK0P,WAAWtB,cAAclI,GAI9B2K,EAAOmI,UAIfgC,UAAW,SAAShT,GAChB,IAAI9B,EAAsB,iBAAP8B,EAAkBhI,KAAKumB,gBAAgBve,GAAOA,EAE5D9B,IAILlG,KAAK0zB,cAEDxtB,EAAM6F,cACN/L,KAAK8zB,qBAAqB5tB,GAE1BlG,KAAK2zB,WAAWztB,KAIxBytB,WAAY,SAASztB,GACjBlG,KAAKsyB,iBAAkB,EACvBtyB,KAAK4f,gBAEL5f,KAAK+zB,mBAAmB7tB,GACxBlG,KAAKsf,QAAQrS,KAAK,YAAoB2Y,YAAY7iB,GAElD/C,KAAKye,eAGTqV,qBAAsB,SAAS5tB,GAC3B,IAAIgE,EAAOlK,KAkBPqtB,EAAqBnjB,EAAK1D,QAAQgN,SAAS6Z,mBAC/CnjB,EAAK2oB,qBAAqB3sB,GAjBL,WACbA,EAAMyF,cACNzB,EAAKypB,WAAWztB,GAEhBgE,EAAK0f,SAAS1jB,MAIL,WACTA,EAAM2F,eACN3F,EAAQgE,EAAKwF,WAAWP,IAAIjJ,EAAM2F,eAGtC3B,EAAKypB,WAAWztB,KAIyC,CACzDwG,MAAO2gB,EAAmBI,gBAC1B7pB,KAAMypB,EAAmB2F,cAAgB3F,EAAmB2F,cAAgBzvB,EAC5E0vB,eAAgB5F,EAAmBK,qBACnCwF,WAAY7F,EAAmBM,oBAItCkF,qBAAsB,SAAS3sB,EAAO8tB,EAAgBC,EAAYzgB,GAC9D,IAAInG,EAAWrN,KAAKwG,QAAQ6G,SACxB6mB,EAAoB7yB,EAAcgM,GAAYA,EAAS6mB,kBAAoB,SAErD,eAAtBA,GAAsCl0B,KAAK6wB,aAC3CmD,IAC6B,WAAtBE,EACPD,KAEAj0B,KAAK4f,gBAEL5f,KAAKoa,WAAW,CACZlU,MAAOA,EACPwG,MAAO8G,EAAS9G,MAChB9I,KAAM4P,EAAS5P,KACf0W,QAAS,CACL,CAAE1W,KAAM4P,EAASyf,eAAgBvf,MAAOsgB,GACxC,CAAEpwB,KAAM4P,EAAS0f,WAAYxf,MAAOugB,MAI5Cj0B,KAAKye,gBAId0V,cAAe,SAASC,GACpB,IAAIjwB,EAAWiwB,EAAQjwB,UAAYX,EAC/B6wB,SAAqBD,IAAYpzB,EAASozB,EAAUA,EAAQxvB,MAAQwvB,EAAQxwB,KAC5E4C,EAAU,CAAE9C,UAAW,gBAAkB2wB,GAAe,IAAI9kB,QAAQ,MAAO,IAAK3L,KAAMywB,EAAa1wB,KAAM,IAE7G,KAAK0wB,GAAiBhzB,EAAc+yB,IAAYA,EAAQjwB,UACpD,MAAM,IAAIwL,MAAM,8CAwBpB,OArBItO,EAAc+yB,IACVA,EAAQ1wB,YACR0wB,EAAQ1wB,WAAa,IAAM8C,EAAQ9C,WAGnB,SAAhB2wB,GAA0BhzB,EAAc+yB,EAAQxwB,SAChDwwB,EAAU9yB,GAAO,EAAM,GAAI8yB,IACnBxwB,KAAOwwB,EAAQxwB,KAAK0wB,MAGhC9tB,EAAUlF,GAAO,EAAMkF,EAASoJ,GAAgBykB,GAAcD,IAE9D5tB,EAAUlF,GAAO,EAAMkF,EAASoJ,GAAgBykB,IAG/C7tB,EAAQ9C,WAEuD,IAAzD8C,EAAQ9C,UAAU8N,QAAQ,4BACjChL,EAAQ9C,WAAa,wBAFrB8C,EAAQ9C,UAAY,sBAKjBvD,EAAMgE,SAASA,EAAfhE,CAAyBqG,IAGpC+rB,cAAe,SAASrsB,EAAOmB,GAC3B,IAAIZ,EAAWzG,KAAK0P,WAAWnH,OAAO9B,SAClCL,EAAgBF,EAAME,cACtBC,EAAcH,EAAMG,YACpBuB,EAAQ1B,EAAM0B,MACdE,EAAM5B,EAAM0B,MAEhBP,EAASA,GAAU,QACnBjB,EAAgBA,GAAiBC,EACjCA,EAAcA,GAAeD,EAEzBA,IACIK,EACe,UAAXY,GACAO,EAAQzH,EAAMsG,SAASsB,QAAQ7B,EAAM0B,MAAOnB,EAAUL,GACtD0B,EAAM3H,EAAMsG,SAASsB,QAAQ7B,EAAM4B,IAAKrB,EAAUJ,KAElDuB,EAAQzH,EAAMsG,SAASsB,QAAQ7B,EAAM0B,MAAOxB,EAAeK,GAC3DqB,EAAM3H,EAAMsG,SAASsB,QAAQ7B,EAAM4B,IAAKzB,EAAaI,KAGzDmB,EAAQzH,EAAMsG,SAASY,GAAQnB,EAAM0B,MAAOxB,GAC5C0B,EAAM3H,EAAMsG,SAASY,GAAQnB,EAAM4B,IAAKzB,IAG5CH,EAAMquB,KAAK,QAAS3sB,GACpB1B,EAAMquB,KAAK,MAAOzsB,KAI1BiX,cAAe,WACX,IAEIlO,EAFA3G,EAAOlK,MAKP6Q,EADA7Q,KAAKqgB,aAAelgB,EAAMiY,KACjBlO,EAAKokB,QAAU,IAAIpW,GAAalY,KAAKgd,QAAS1b,EAAO,GAAItB,KAAKwG,QAAS,CAC5EgM,OAAQxS,KACRyG,SAAUyD,EAAKwF,WAAWnH,OAAO9B,SACjCyN,UAAWhK,EAAKgK,UAChB2B,aAAc7V,KAAKm0B,cAAczrB,KAAK1I,SAGjCkK,EAAKokB,QAAU,IAAIrS,GAAYjc,KAAKgd,QAAS1b,EAAO,GAAItB,KAAKwG,QAAS,CAC3EgM,OAAQxS,KACR6V,aAAc7V,KAAKm0B,cAAczrB,KAAK1I,MACtCyG,SAAUyD,EAAKwF,WAAWnH,OAAO9B,SACjCyN,UAAWhK,EAAKgK,cAIjBxL,KAAK,UAAU,SAASsM,GACvB9K,EAAKwH,QAAQ,SAAU,CAAE5E,UAAWkI,EAAElI,UAAWvF,MAAOyN,EAAE9O,QAC1D8O,EAAEE,kBAGNhL,EAAKooB,iBAAkB,EACvBpoB,EAAKwpB,cAEDxpB,EAAKsqB,iBACLtqB,EAAK5E,UAGT4E,EAAK0T,YAGT/M,EAAOnI,KAAK,QAAQ,SAASsM,GACrB9K,EAAKwH,QAAQ7O,EAAM,CAAEiK,UAAWkI,EAAElI,UAAWvF,MAAOyN,EAAE9O,SACtD8O,EAAEE,oBAIVrE,EAAOnI,KAAK,QAAQ,WAChBwB,EAAKooB,iBAAkB,EACvBpoB,EAAK0pB,eAGT/iB,EAAOnI,KAAK,UAAU,SAASsM,GAC3B9K,EAAKooB,iBAAkB,EACvBpoB,EAAKsf,YAAYxU,EAAE9O,UAGvB2K,EAAOnI,KAAK,eAAe,SAASsM,GAChC9K,EAAKkpB,eAAc,SAAS7Z,GACxBrP,EAAKooB,iBAAkB,EAClB/Y,IACDrP,EAAKwF,WAAWZ,kBAAkBkG,EAAE9O,OACpCgE,EAAK0pB,eAEV5e,EAAE9O,OAAO,OAIpB6tB,mBAAoB,SAAS7tB,GACzB,IAAI2K,EAAS7Q,KAAKsuB,QAEbpoB,EAAM0F,UAAW1F,EAAM4F,iBACpB5F,EAAM4F,gBACN9L,KAAKuyB,cAAcrsB,EAAM2F,aAAe7L,KAAK0P,WAAWP,IAAIjJ,EAAM2F,cAAgB3F,GAEtFlG,KAAKuyB,cAAcrsB,IAGvBlG,KAAKqN,SAAWwD,EAAOmK,UAAU9U,IAGrCsjB,YAAa,SAASxhB,GAClB,IAAIkC,EAAOlK,KACPkG,EAAsB,iBAAP8B,EAAkBkC,EAAKqc,gBAAgBve,GAAOA,EAE5D9B,IAIDA,EAAM6F,cACN7B,EAAKuqB,uBAAuBvuB,GAE5BgE,EAAKkpB,eAAc,SAAS7Z,GACnBA,GACDrP,EAAKwqB,aAAaxuB,KAEvBA,KAIXqgB,gBAAiB,SAASve,GACtB,IAAI2sB,EAAa30B,KAAK0P,WAAWkjB,SAAS5qB,GAK1C,OAJK2sB,IACDA,EAAazsB,GAAmBlI,KAAK+f,MAAO/X,IAGzC2sB,GAGXC,mBAAoB,SAAShtB,EAAOE,GAChC,OAAO,IAAI3H,EAAMiB,KAAK2M,MAAM/N,KAAK+f,OAAOtW,OAAO,CAC3CmE,MAAO,KACPC,QAAS,CACL,CACID,MAAO,MACPC,QAAS,CACL,CAAEhH,MAAO,QAASiH,SAAU,MAAO/D,MAAOnC,GAC1C,CAAEf,MAAO,MAAOiH,SAAU,MAAO/D,MAAOnC,GACxC,CAAEf,MAAO,QAASiH,SAAU,KAAM/D,MAAOjC,KAGjD,CACI8F,MAAO,MACPC,QAAS,CACL,CAAEhH,MAAO,QAASiH,SAAU,MAAO/D,MAAOnC,GAC1C,CAAEf,MAAO,MAAOiH,SAAU,KAAM/D,MAAOnC,QAIpDuG,WAGPumB,aAAc,SAASxuB,GACdlG,KAAK0R,QAAQhP,EAAQ,CAAE6E,MAAOrB,KAC3BlG,KAAK0P,WAAWnG,OAAOrD,IACvBlG,KAAK0P,WAAWwhB,QAK5BuD,uBAAwB,SAASvuB,GAC7B,IAGI2uB,EACAC,EACAC,EACAC,EACAxB,EACAyB,EARA/qB,EAAOlK,KACPk1B,EAAehvB,EACfmH,EAAWnD,EAAK1D,QAAQ6G,SAOxB6mB,EAAoB7yB,EAAcgM,GAAYA,EAAS6mB,kBAAoB,SAE/EW,EAAmB,WACf,IAAIF,EAAaO,EAAarpB,aAAeqpB,EAAeA,EAAa/oB,eACrE+C,EAAOhF,EAAKwF,WAAWP,IAAIwlB,EAAW9oB,cAE1C3B,EAAKqoB,cAAcrjB,GACnBhF,EAAKwqB,aAAaC,IAGtBG,EAAe,WACPI,EAAarpB,eACbqpB,EAAehrB,EAAKwF,WAAWP,IAAI+lB,EAAarpB,eAGpD3B,EAAKwqB,aAAaQ,IAGtBH,EAAkB,WACd7qB,EAAKwF,WAAWnG,OAAO2rB,GACvBhrB,EAAKwF,WAAWwhB,SAGK,UAArBgD,GAAiChqB,EAAKopB,qBACtC0B,EAA+B,WAC3B9qB,EAAKkpB,eAAc,SAAS7Z,GACnBA,GACDsb,MAELK,IAGP1B,EAA2B,WACvBtpB,EAAKkpB,eAAc,SAAS7Z,GACnBA,GACDub,MAELI,IAGPD,EAA8B,WAC1B/qB,EAAKkpB,eAAc,SAAS7Z,GACnBA,GACDwb,MAELG,KAIX,IAAIC,EAAiB3B,GAA4BsB,EAC7CM,EAAqBJ,GAAgCH,EACrDQ,EAAmBJ,GAA+BF,EAEtD,GAAI7qB,EAAKopB,kBACDptB,EAAMyF,cACNypB,IACOlvB,EAAM0F,QACbypB,IAEAF,QAED,CACH,IAAI9H,EAAqBnjB,EAAK1D,QAAQgN,SAAS6Z,mBAC/CnjB,EAAK2oB,qBAAqB3sB,EAAOkvB,EAAoBD,EAAgB,CACjEzoB,MAAO2gB,EAAmBlB,kBAC1BvoB,KAAMypB,EAAmBiI,gBAAkBjI,EAAmBiI,gBA3tIxD,wEA4tINrC,eAAgB5F,EAAmBE,uBACnC2F,WAAY7F,EAAmBG,uBAK3C8F,gBAAiB,WACb,QAAStzB,KAAKsuB,QAAQxhB,WAG1ByoB,YAAa,SAAS/wB,GAClB,IAAI0F,EAAOlK,KACXkK,EAAKsrB,QAAQ,WAAW,WACpB,MAAO,CAAEC,SAAUvrB,EAAK2E,YAG5BrK,EAAKsL,WAGT4lB,UAAW,SAASlxB,GAChB,IAAI0F,EAAOlK,KAEPkK,EAAK1D,QAAQ6G,WACTnD,EAAKyrB,oBACLnxB,EAAKyU,OAAOvW,EAAQwH,EAAKyrB,oBAG7BzrB,EAAKyrB,mBAAqB,SAAS3gB,GAC/B9K,EAAKsf,YAAYxU,EAAEhN,MAGvBxD,EAAKkE,KAAKhG,EAAQwH,EAAKyrB,oBAEnBzrB,EAAK0rB,iBACLpxB,EAAKyU,OA3wIX,MA2wIuB/O,EAAK0rB,iBAG1B1rB,EAAK0rB,gBAAkB,SAAS5gB,GAC5B9K,EAAK0f,SAAS5U,EAAE3J,YAGpB7G,EAAKkE,KAlxIP,MAkxIiB1I,KAAK41B,iBAEhB1rB,EAAK2rB,kBACLrxB,EAAKyU,OAAOpW,EAAMqH,EAAK2rB,kBAG3B3rB,EAAK2rB,iBAAmB,SAAS7gB,GAC7B9K,EAAK8Q,UAAUhG,EAAEhN,MAGrBxD,EAAKkE,KAAK7F,EAAM7C,KAAK61B,mBAGrB3rB,EAAK4rB,sBACLtxB,EAAKyU,OAAO,WAAY/O,EAAK4rB,sBAGjC5rB,EAAK4rB,qBAAuB,SAAS9gB,GACjC,GAAIA,EAAEwF,OACGtQ,EAAKwH,QAAQ,WAAY,CAAElN,KAAMwQ,EAAExQ,KAAMuxB,UAAW/gB,EAAE+gB,UAAWvb,OAAQxF,EAAEwF,OAAQna,KAAM2U,EAAE3U,QAC5F6J,EAAK7J,KAAK2U,EAAE3U,WAEb,GAAI2U,EAAExQ,KAAM,CACf,IAAIwxB,EAAgB,cAAehhB,EAC/BwF,EAASwb,EAAgB,gBAAkB,aAE1C9rB,EAAKwH,QAAQ,WAAY,CAAElN,KAAMwQ,EAAExQ,KAAMuxB,UAAW/gB,EAAE+gB,UAAWvb,OAAQA,EAAQna,KAAM2U,EAAE3U,SACtF21B,IACA9rB,EAAK+rB,aAAejhB,EAAE+gB,WAG1B7rB,EAAKgsB,YAAYlhB,EAAExQ,MACnB0F,EAAK7J,KAAK2U,EAAE3U,SAKxBmE,EAAKkE,KAAK,WAAYwB,EAAK4rB,sBAEvB5rB,EAAKisB,sBACL3xB,EAAKyU,OAAO,WAAY/O,EAAKisB,sBAGjCjsB,EAAKisB,qBAAuB,WAEpBjsB,EAAKqX,aADEvhB,KAEFo2B,mBAAmBlsB,EAAKqX,YAE4C,IAArEthB,EAAEya,SAAS8N,eAAezb,QAAQ,wBAAwBtF,SACtDiT,SAAS8N,gBAAkBte,EAAK8S,QAAQ,GACxC9S,EAAKsL,QAAQoI,QAEb1T,EAAKgY,WAIbhY,EAAK+f,wBAIbzlB,EAAKkE,KAAK,WAAYwB,EAAKisB,uBAG/BD,YAAa,SAAStxB,GAClB,IAAIsF,EAAOlK,KAEX,GAAI4E,GAAQsF,EAAK7F,MAAMO,GAanB,GAZIsF,EAAKkV,eACLlV,EAAKqrB,YAAYrrB,EAAKkV,eAG1BlV,EAAKkV,cAAgBlV,EAAKmsB,YAAYzxB,GACtCsF,EAAKqe,kBAAoB3jB,EAErB5E,KAAKs2B,eACLt2B,KAAKs2B,cAAe,EACpBt2B,KAAKmf,eAAe/e,OAAO6e,WAAWhc,KAGtCiH,EAAKqsB,YAAc,IAAMrsB,EAAKmW,YAAa,CAC3C,IAAImW,EAAsBtsB,EAAKoV,QAAQrS,KAAK,IAAM9M,EAAMwD,KAAK,QAAU,IAAMiB,EAAO,KAChF6xB,EAAgBvsB,EAAKoV,QAAQrS,KAAK,qBAElCypB,EADeF,EAAoBzpB,QAAQ,mBACX3L,KAAK,oBAEzCq1B,EAAc5sB,IAAIjF,GAEd8xB,GACAA,EAAiB3hB,OAAOyhB,QAEzB,GAAItsB,EAAKqsB,YAAc,EAAG,CACZrsB,EAAKoV,QAAQrS,KAAK,6BAExBA,KAAK,UAAYrI,EAAK2K,QAAQ,MAAO,OAAS,KACpDmO,KAAK,WAAY,cAKlClZ,KAAM,SAASI,GACX,IAAIsF,EAAOlK,KAEX,OAAI4E,GACa,SAATA,EACAsF,EAAK8S,QAAQ2J,WAAW,YAExBzc,EAAK8S,QAAQrZ,KAAK,WAAY,GAGlCuG,EAAKgsB,YAAYtxB,QACjBsF,EAAKysB,UAKFzsB,EAAKkV,eAGhBwX,SAAU,WACN,OAAO52B,KAAKwE,OAAOI,MAGvByxB,YAAa,SAASzxB,GAClB,IAAIJ,EAAOxE,KAAK62B,gBAAgBjyB,GAchC,OAZA5E,KAAK01B,UAAUlxB,IAEXrE,EAAM6B,QAAQ80B,sBAAwB32B,EAAM6B,QAAQC,YACpDuC,EAAK2U,QAAQR,IAAI,mBAAoB,cACrCnU,EAAK2U,QAAQR,IAAI,eAAgB,eAGrC3Y,KAAKyf,OAAOnU,IAAI,gBAAiB9G,EAAKkb,gBACtC1f,KAAKyf,OAAOnU,IAAI,qBAAsB9G,EAAKmb,qBAC3C3f,KAAKyf,OAAOnU,IAAI,sBAAuB9G,EAAKuyB,mBAAqBvyB,EAAKuyB,qBAAuBvyB,EAAKmb,qBAClG3f,KAAKyf,OAAOnU,IAAI,gBAAiBnL,EAAM2J,OAAO,WAAYtF,EAAKsjB,cAExDtjB,GAGX8Z,OAAQ,SAAS0Y,GACb,IAAIC,EAAOj3B,KAAKk3B,UACZC,EAAcn3B,KAAKo3B,MACnB5yB,EAAOxE,KAAKwE,OAEXA,GAASA,EAAK0E,UAIf8tB,GAAUG,GAAeF,EAAKpJ,QAAUsJ,EAAYtJ,OAASoJ,EAAKre,SAAWue,EAAYve,SACzF5Y,KAAKsF,QAAQ,CAAEkV,OAAQ,WACvBxa,KAAKo3B,MAAQH,KAIrBhN,oBAAqB,WACjB,IAAI5pB,EAAOL,KAAKyf,OAAO4X,aACnB/V,EAAYthB,KAAKuhB,WACjB3Z,EAAQ0Z,EAAU1Z,MAElBA,IAAUzH,EAAME,KAAKi3B,cAAcj3B,EAAME,EAAQqH,GAAQrH,EAAQ+gB,EAAUxZ,OAC3EzH,EAAKk3B,YAAY3vB,EAAM4vB,cAAe5vB,EAAM6vB,WAAY7vB,EAAMrH,YAItEs2B,gBAAiB,SAASjyB,GACtB,IAAIJ,EAAOxE,KAAKqE,MAAMO,GAEtB,GAAIJ,EAAM,CACN,IAAIkzB,EAAar2B,EAAcmD,GAC3BmzB,EAAkB,GAClBrzB,EAAOE,EAAKF,KAUhB,UARWA,IAAStD,IAChBsD,EAAOnE,EAAMyS,OAAOpO,EAAKF,KAAlBnE,CAAwBC,SAG/Bs3B,GAAclzB,EAAKgnB,UAAYhnB,EAAKgnB,SAAS/jB,SAC7CkwB,EAAgBnM,SAAWhnB,EAAKgnB,WAGhClnB,EAUA,MAAM,IAAIqL,MAAM,yBAThBnL,EAAO,IAAIF,EAAKtE,KAAKgd,QA/gHrC,SAAqBxW,EAASmxB,GAS1B,IAAK,IAAIprB,YARF/F,EAAQ5B,YACR4B,EAAQkmB,cAERlmB,EAAQ+C,cACR/C,EAAQ8tB,YACR9tB,EAAQioB,WACRjoB,EAAQyT,SAEC0d,EACZnxB,EAAQ+F,GAAOorB,EAAgBprB,GAGnC,OAAO/F,EAkgHmCoxB,CAAYt2B,GAAO,EAAM,GAAItB,KAAKwG,QAASkxB,EAAalzB,EAAO,GAAI,CAC7F0P,UAAWlU,KAAKkU,UAChB7T,KAAML,KAAKK,OACXqrB,UAAWvrB,EAAMyJ,UAAUpF,EAAKknB,YAAcvrB,EAAMyJ,UAAU5J,KAAKwG,QAAQklB,WAC3EC,QAASxrB,EAAMyJ,UAAUpF,EAAKmnB,UAAYxrB,EAAMyJ,UAAU5J,KAAKwG,QAAQmlB,SACvEF,cAAezrB,KAAKi2B,eACrB0B,IAOX,OAAOnzB,GAGXoX,OAAQ,WACJ,IACIpX,EACAqzB,EACAC,EACAJ,EACA9yB,EAEA4C,EACAC,EARApD,EAAQrE,KAAKwG,QAAQnC,MAazB,IAHArE,KAAKqE,MAAQ,GACbrE,KAAKu2B,YAAc,EAEd/uB,EAAM,EAAGC,EAASpD,EAAMoD,OAAQD,EAAMC,EAAQD,IAAO,CACtD,IAAIuwB,GAAU,EAEdvzB,EAAOH,EAAMmD,IAEbkwB,EAAar2B,EAAcmD,WAGhBI,EAAOJ,EAAKF,KAAOE,EAAKF,KAAOE,KAClBxD,IAChB4D,EAAOJ,EAAKI,MAAQJ,EAAKkI,MACzBqrB,GAAU,IAGPnzB,EAAOJ,EACdA,EAAO,KAGXqzB,EAAcG,GAAapzB,MAEPmzB,IAChBvzB,EAAKF,KAAOuzB,EAAYvzB,KACxBuzB,EAAYnrB,MAAQ1M,KAAKwG,QAAQgN,SAASnP,MAAMO,GACvB,QAArBizB,EAAYvzB,KACZuzB,EAAYrkB,SAAW,CAAEiZ,OAAQzsB,KAAKwG,QAAQgN,SAASiZ,QAC3B,WAArBoL,EAAYvzB,OACnBuzB,EAAYrkB,SAAW,CACnBjM,MAAOvH,KAAKwG,QAAQgN,SAASjM,MAC7BlH,KAAML,KAAKwG,QAAQgN,SAASnT,KAC5B43B,KAAMj4B,KAAKwG,QAAQgN,SAASykB,QAKxCzzB,EAAOlD,EAAO,CAAEoL,MAAO9H,GAAQizB,EAAaH,EAAalzB,EAAO,IAE5DI,IACA5E,KAAKqE,MAAMO,GAAQJ,EACnBxE,KAAKu2B,cAEAuB,IAAYtzB,EAAKszB,WAClBA,EAAWlzB,IAKnBkzB,IACA93B,KAAKuoB,kBAAoBuP,IAIjCnB,OAAQ,WACJ,IAAIzsB,EAAOlK,KACPkU,EAAYhK,EAAKgK,UACjBgkB,EAAqB,GAErBhuB,EAAKiuB,eACLjuB,EAAKiuB,gBAAiB,GAII,IAA1BjuB,EAAK1D,QAAQykB,UAAsB/W,GAAaA,EAAUzM,OAAS,GACnEyM,EAAU5C,SAAQ,SAASO,GACmB,IAAtCA,EAASnC,WAAWtO,OAAOqG,SAC3ByC,EAAKiuB,gBAAiB,EACtBD,EAAmB3hB,KAAK1E,EAASnC,WAAWif,aAIpD1uB,EAAEm4B,KAAKzqB,MAAM,KAAMuqB,GAAoBG,MAAK,WACxCnuB,EAAKwF,WAAWif,QAChBzkB,EAAKiuB,gBAAiB,MAG1BjuB,EAAKwF,WAAWif,SAIxBxQ,YAAa,WACT,IAAIjU,EAAOlK,KACPwG,EAAU0D,EAAK1D,QACfkJ,EAAalJ,EAAQkJ,WAEzBA,EAAahO,EAAQgO,GAAc,CAAEtO,KAAMsO,GAAeA,GAEtDlJ,EAAQC,UAAciJ,aAAsBjC,GAErCiC,aAAsBjC,KAC7BjH,EAAQC,SAAWiJ,EAAWlJ,QAAQ8B,OAASoH,EAAWlJ,QAAQ8B,OAAO7B,SAAW,IAFpFiJ,EAAapO,GAAO,EAAMoO,EAAY,CAAEpH,OAAQ,CAAE7B,SAAUD,EAAQC,YAKpEyD,EAAKwF,YAAcxF,EAAK6jB,gBACxB7jB,EAAKwF,WACAuJ,OAAO3W,EAAQ4H,EAAK6jB,iBACpB9U,OAAO1W,EAAU2H,EAAK8jB,kBACtB/U,OAAOzW,EAAO0H,EAAK+jB,gBAExB/jB,EAAK6jB,gBAAkB7jB,EAAK5E,QAAQoD,KAAKwB,GACzCA,EAAK8jB,iBAAmB9jB,EAAKouB,cAAc5vB,KAAKwB,GAChDA,EAAK+jB,cAAgB/jB,EAAKquB,OAAO7vB,KAAKwB,IAG1CA,EAAKwF,WAAavP,EAAMiB,KAAKqM,oBAAoBlI,OAAOmK,GACnDhH,KAAKpG,EAAQ4H,EAAK6jB,iBAClBrlB,KAAKnG,EAAU2H,EAAK8jB,kBACpBtlB,KAAKlG,EAAO0H,EAAK+jB,eAEtB/jB,EAAK1D,QAAQkJ,WAAaxF,EAAKwF,YAInC6oB,OAAQ,WACJv4B,KAAKw4B,WAAU,IAGnBF,cAAe,WACXt4B,KAAKw4B,WAAU,IAGnBA,UAAW,SAASlkB,GAChB,IAAIkB,EAAUxV,KAAKwV,QAAQvI,KAAK,wBAChC9M,EAAMU,GAAG43B,SAASjjB,EAASlB,IAG/B8J,WAAY,WAKR,IAJA,IAAIlU,EAAOlK,KACPkU,EAAYhK,EAAK1D,QAAQ0N,UACzBwkB,EAAmB,GAEdlxB,EAAM,EAAGA,EAAM0M,EAAUzM,OAAQD,IAAO,CAC7C,IAAIqK,EAAWqC,EAAU1M,GACrBX,EAAQgL,EAAShL,MACjBjC,EAAOiN,EAASjN,MAAQiC,EACxB6I,EAAamC,EAASnC,WAE1B,IAAK7I,IAAU6I,EACX,MAAM,IAAIC,MAAM,iFAGpBzF,EAAKgK,UAAUqC,KAAK,CAChB1P,MAAOA,EACPjC,KAAMA,EACN8H,MAAOmF,EAASnF,OAAS7F,EACzBmN,cAAenC,EAASmC,eAAiB,OACzC1B,eAAgBT,EAASS,gBAAkB,QAC3CuC,eAAgBhD,EAASgD,gBAAkB,QAC3CxC,qBAAsBR,EAASQ,sBAAwB,cACvDqC,eAA2C,MAA3B7C,EAAS6C,gBAAyB7C,EAAS6C,eAC3DoC,SAAUjF,EAASiF,WAAY,EAC/BpH,WAAYxF,EAAKyuB,oBAAoBjpB,EAAY9K,EAAM8zB,KAI1DxuB,EAAK1D,QAAQykB,SAGdhrB,EAAEm4B,KAAKzqB,MAAM,KAAM+qB,GACZL,MAAK,WACAnuB,EAAK1F,KAAK0F,EAAKqe,sBAJ3Bre,EAAKgsB,YAAYhsB,EAAKqe,oBAS9BoQ,oBAAqB,SAASxK,EAAYyK,EAAWC,GACjD,IAAI3uB,EAAOlK,KACP0P,EAAahO,EAAQysB,GAAc,CAAE/sB,KAAM+sB,GAAeA,EAC1D2K,EAAqB34B,EAAMiB,KAAKD,WAAWoE,OAAOmK,GAWtD,OATIxF,EAAK1D,QAAQykB,SACb4N,EAAStiB,KAAKuiB,EAAmBnK,OAAM,WAEnCzkB,EAAK6uB,oBAAoB/4B,KAAM44B,OAGnC1uB,EAAK6uB,oBAAoBD,EAAoBF,GAG1CE,GAGXC,oBAAqB,SAAS5K,EAAYyK,GACtC,IAAI1uB,EAAOlK,KAEPg5B,EADY9uB,EAAK1D,QAAQX,OAASqE,EAAK1D,QAAQX,MAAMqO,UAAUzM,QAC9ByC,EAAK1D,QAAQX,MAAMqO,UAAU1C,QAAQonB,IAAc,GAEnF1uB,EAAKgkB,yBAA2B8K,IACjC9uB,EAAKgkB,wBAA0BhkB,EAAK+uB,iBAAiBvwB,KAAKwB,GAC1DA,EAAKmkB,sBAAwBnkB,EAAKquB,OAAO7vB,KAAKwB,IAG9C8uB,GACA7K,EAAWzlB,KAAKpG,EAAQ4H,EAAKgkB,yBACxBxlB,KAAKlG,EAAO0H,EAAKmkB,wBAI9B4K,iBAAkB,WACd,IAAI/uB,EAAOlK,KACWkK,EAAKokB,SAAWpkB,EAAKokB,QAAQjhB,UAAanD,EAAKooB,iBAGjEpoB,EAAK1F,KAAK0F,EAAKqe,oBAIvBzK,WAAY,WACR,IAAI5T,EAAOlK,KACXkK,EAAKuV,OAAStf,EAAM+4B,WAAW,CAC5B7B,aAAc,IAAIl0B,KAAKnD,KAAKwG,QAAQnG,MACpC84B,cAAe,GACfC,mBAAoB,KAGxBlvB,EAAKuV,OAAO/W,KAAKpG,GAAQ,SAAS0S,GACb,iBAAZA,EAAEnO,OACFqD,EAAK1F,KAAK0F,EAAKqe,uBAK3BxK,SAAU,WACN,IAAI7T,EAAOlK,KACPwG,EAAU0D,EAAK1D,QACfoS,EAASpS,EAAQoS,OACjBiV,EAAQrnB,EAAQqnB,MAEpB3jB,EAAK8S,QAAU9S,EAAKsL,QAAQC,SAAS,oCAEjCvL,EAAKmW,aACNnW,EAAK8S,QAAQvH,SAAS,sBAGrBmD,GACA1O,EAAK8S,QAAQpE,OAAOA,GAGpBiV,GACA3jB,EAAK8S,QAAQ6Q,MAAMA,IAI3BxtB,KAAM,SAAS0J,GAIX,OAHa,MAATA,GAAiBxJ,EAAQwJ,IAAUxJ,EAAQP,KAAKwG,QAAQ4kB,MAAQ7qB,EAAQwJ,IAAUxJ,EAAQP,KAAKwG,QAAQ6kB,MACvGrrB,KAAKyf,OAAOnU,IAAI,eAAgBvB,GAE7BxJ,EAAQP,KAAKyf,OAAOtQ,IAAI,kBAGnCkqB,iBAAkB,SAAShvB,GACvB,IAAIH,EAAOlK,KAEXkK,EAAKovB,iBAAmB,SAAUtkB,GAC9BA,EAAEE,iBACFhL,EAAKqvB,aAGTrvB,EAAKsvB,oBAAsB,SAAUxkB,GACjCA,EAAEE,iBACFhL,EAAK0f,YAGT1f,EAAKuvB,sBAAwBvvB,EAAKwvB,qBAAuB,SAAU1kB,GAC/DA,EAAEE,iBACFhL,EAAKoe,cAActT,EAAExC,SAGzBtI,EAAKyvB,mBAAqB,SAAU3kB,GAChCA,EAAEE,iBAEF,IAEI7U,EAFAoG,EAAWyD,EAAK1D,QAAQC,SACxBijB,EAAc,IAAIvmB,KAGtB,GAAIsD,EAAU,CACV,IAAIojB,EAAiB1pB,EAAMsG,SAASuE,OAAO0e,EAAajjB,GACxDpG,EAAOF,EAAMsG,SAASsB,QAAQ2hB,EAAaA,EAAY7hB,oBAAqBgiB,QAE5ExpB,EAAOqpB,EAGNxf,EAAKwH,QAAQ,WAAY,CAAElN,KAAM0F,EAAKqe,kBAAmB/N,OAAQ,QAASna,KAAMA,KACjF6J,EAAK7J,KAAKA,IAIlB6J,EAAK0vB,sBAAwB,SAAU5kB,GACnCA,EAAEE,iBAEF,IAAI7U,EAAO6J,EAAK1F,OAAOkmB,eAElBxgB,EAAKwH,QAAQ,WAAY,CAAElN,KAAM0F,EAAKqe,kBAAmB/N,OAAQ,WAAYna,KAAMA,KACpF6J,EAAK7J,KAAKA,IAIlB6J,EAAK2vB,kBAAoB,SAAU7kB,GAC/BA,EAAEE,iBAEF,IAAI7U,EAAO6J,EAAK1F,OAAOimB,WAElBvgB,EAAKwH,QAAQ,WAAY,CAAElN,KAAM0F,EAAKqe,kBAAmB/N,OAAQ,OAAQna,KAAMA,KAChF6J,EAAK7J,KAAKA,IAIlB6J,EAAK4vB,qBAAuB,SAAU9kB,GAClCA,EAAEE,iBAEF,IAAItQ,EAAOsF,EAAK1F,OAAOI,KAElBsF,EAAKwH,QAAQ,WAAY,CAAElN,KAAMI,EAAM4V,OAAQ,aAAcna,KAAM6J,EAAK7J,UACzE6J,EAAK1F,KAAKI,IAIlBsF,EAAK6vB,kBAAoB,SAAU/kB,GAC/B,IAAIpQ,EAAOoQ,EAAExC,OAAO7O,KAAKxD,EAAMwD,KAAK,SAE/BuG,EAAKwH,QAAQ,WAAY,CAAElN,KAAMI,EAAM4V,OAAQ,aAAcna,KAAM6J,EAAK7J,UACzE6J,EAAK1F,KAAKI,IAIlBpD,OAAOw4B,OAAO3vB,GAAU9F,KAAI,SAAU01B,GAC9BA,EAAEr1B,OACFq1B,EAAEvmB,MAAQxJ,EAAK,IAAM+vB,EAAEr1B,KAAO,qBAK1Cs1B,iBAAkB,WACd,IAIIC,EAAUC,EAJV/1B,EAAQrE,KAAKqE,MACbgG,EAAWpK,EAAEqB,QAAO,EAAM,GAAIoD,GAC9B21B,EAAe,GACfrR,EAAQ7oB,EAAM6B,QAAQgnB,MAAMhpB,KAAKgd,SAqCrC,OAlCAxb,OAAOZ,KAAKyD,GAAOE,KAAI,SAAUK,GAC7B,IAAIQ,EAAUnF,EAAEqB,QAAO,EAAM,GAAI+I,EAAS7F,MAE1CY,EAAQxB,KAAOS,EAAMO,GAAM8H,MAC3BtH,EAAQP,WAAa,CACjBC,MAAO,UAAYF,EAAK01B,cACxB,YAAa11B,GAGjByF,EAASzF,GAAQQ,EAEjBi1B,EAAa9jB,KAAK3R,MAGlBy1B,EAAa5yB,OAAS,IACtB0yB,EAAWj2B,EAAwB,CAAEG,MAAOrE,KAAKqE,MAAOD,MAAOpE,KAAKwG,QAAQgN,SAAS4Y,WAAY9nB,KAAM,qBACvG81B,EAAcl2B,EAAwB,CAAEG,MAAOrE,KAAKqE,MAAOD,MAAOpE,KAAKwG,QAAQgN,SAAS4Y,WAAY9nB,KAAM,8BAG9G+F,EAAS8vB,SAAW,CAChBh2B,SAAUg2B,GAGd9vB,EAAS+vB,YAAc,CACnBj2B,SAAUi2B,GAGdp6B,KAAKu6B,cAAgBF,EAEjBrR,IACA3e,EAASnF,SAASrB,KAAO,kBACzBwG,EAASlF,KAAKtB,KAAO,kBAGlBwG,GAGXmwB,qBAAsB,WAClB,IAIIC,EAAO91B,EAAKU,EAJZmB,EAAUxG,KAAKwG,QACfk0B,EAAiBl0B,EAAQ8Y,QACzBqb,EAAW,GACXjjB,EAAW1X,KAAKqgB,YAgDpB,OA7CIqa,IACAC,EAAWh5B,MAAMD,QAAQg5B,GAAkBA,EAAiB,CAACA,IAGjE/1B,EAAM1E,EAAE26B,KAAKD,GAAU,SAAS3rB,GAC5B,MAAe,OAARA,GAA8B,OAAbA,EAAKpK,QAC9B6C,OAAS,EAEZpC,EAASpF,EAAE26B,KAAKD,GAAU,SAAS3rB,GAC/B,MAAe,UAARA,GAAiC,UAAbA,EAAKpK,QACjC6C,OAAS,EAERiQ,GACA+iB,EAAQ,GAAGxsB,OAAQlI,GAEfS,EAAQ6G,UACRotB,EAAM,GAAGlkB,KAAK,WAGlBkkB,EAAQ,GAAGxsB,OAAQnI,GAGnBT,GACAo1B,EAAMlkB,KAAK,UAGX5R,IACI+S,EACA+iB,EAAM,GAAGI,QAAQ,aAEjBJ,EAAMI,QAAQ,QAIG,IAArB76B,KAAKu2B,YACLkE,EAAMlkB,KAAK,WACJvW,KAAKu2B,YAAc,IACtB7e,EACA+iB,EAAMlkB,KAAK,gBAEXkkB,EAAMlkB,KAAK,YACXkkB,EAAMlkB,KAAKvW,KAAKu6B,iBAIjBE,GAGXK,kBAAmB,SAASjsB,GACxB,IAAIksB,EAASlsB,EACTmsB,GAAc,EAelB,OAbAnsB,EAAMgI,MAAK,SAAU7H,EAAMT,GACvB,OAAa,UAATS,GAAkC,UAAdA,EAAKpK,QACzBo2B,EAAazsB,GACN,MAMXysB,GAAc,GACdD,EAAOtpB,OAAOupB,EAAY,EAAG,WAAYh7B,KAAKu6B,eAG3CQ,GAGXE,qBAAsB,WAClB,IAAIC,EAAel7B,KAAKwG,QAAQ8Y,QAAQzQ,MAAMsF,SAAWnU,KAAKwG,QAAQ8Y,QAAQzQ,MAC1EssB,EAAcn7B,KAAKwG,QAAQ8Y,QAAQzQ,MAAMqE,QAAUlT,KAAKwG,QAAQ8Y,QAAQzQ,MAG5E,OAFe7O,KAAKqgB,YAaZ1e,MAAMD,QAAQy5B,GACP,CACHV,MAAOz6B,KAAK86B,kBAAkBK,GAC9BC,WAAY,IAGT,CACHX,MAAOz6B,KAAK86B,kBAAkBK,EAAYE,MAC1CD,WAAYp7B,KAAK86B,kBAAkBK,EAAYC,cAlBnDF,EAAaG,OAETH,EADAA,EAAaE,WACEF,EAAaG,KAAKptB,OAAOitB,EAAaE,YAEtCF,EAAaG,MAI7B,CAAEZ,MAAOz6B,KAAK86B,kBAAkBI,MAgB/CI,cAAe,WACX,IACIZ,EADU16B,KAAKwG,QACU8Y,QAE7B,OAAIob,GAAkBA,EAAe7rB,MAC1B7O,KAAKi7B,uBAEL,CAAER,MAAOz6B,KAAKw6B,yBAI7Btc,SAAU,WACN,IAOIqd,EAPArxB,EAAOlK,KACPwG,EAAU0D,EAAK1D,QACf6D,EAAWH,EAAKgwB,mBAChBz2B,EAAMyG,EAAKoxB,gBACXb,EAAQh3B,EAAIg3B,MACZW,EAAa33B,EAAI23B,WACjB9b,EAAUrf,EAAE,qCAGhBiK,EAAKmvB,iBAAiBhvB,GACtBH,EAAK8S,QAAQtD,OAAO4F,GACpBpV,EAAKoV,QAAUA,EAEfA,EAAQkc,aAAa,CACjBlf,WAAW,EACXme,MAAOA,EACPgB,aAAcpxB,EACdqxB,eAAgBl1B,EAAQgN,YAGxBtJ,EAAKmW,aAAiB+a,GAAoC,IAAtBA,EAAW3zB,SAC/C8zB,EAAgBt7B,EAAE,qCAClBiK,EAAK8S,QAAQtD,OAAO6hB,GACpBrxB,EAAKoV,QAAUpV,EAAKoV,QAAQmP,IAAI8M,GAEhCA,EAAcC,aAAa,CACvBlf,WAAW,EACXme,MAAOW,GAAc,GAAGntB,OAAQjI,GAChCy1B,aAAcpxB,EACdqxB,eAAgBl1B,EAAQgN,YAIhCtJ,EAAKoV,QAAQrS,KAAK,iCAAiCtJ,KAAK,QAAUxD,EAAM6R,GAAK,OAAQ,uBACrF9H,EAAKoV,QAAQrS,KAAK,oBAAoBtJ,KAAK,QAAUxD,EAAM6R,GAAK,OAAQ,6BACxE9H,EAAKoV,QAAQrS,KAAK,oBAAoBtJ,KAAK,QAAUxD,EAAM6R,GAAK,OAAQ,uBAExE7R,EAAMuI,KAAKwB,EAAKoV,QAASpV,EAAKuV,QAE9BvV,EAAKoV,QAAQrS,KAAK,6BAA6BtJ,KAAK,CAChDg4B,YAAan1B,EAAQgN,SAASnO,OAC9BqH,MAAOlG,EAAQgN,SAASnO,SAG5Bia,EAAQ/M,GAAG,QAAU3Q,EAAI,4BAA6BzB,EAAMy7B,UAAS,SAAS5mB,GAC1E9K,EAAKwF,WAAWjG,OAAO,CACnBmE,MAAO,KACPC,QAAS,CACL,CAAEhH,MAAO,QAASiH,SAAU,WAAY/D,MAAOiL,EAAExC,OAAOzI,OACxD,CAAElD,MAAO,cAAeiH,SAAU,WAAY/D,MAAOiL,EAAExC,OAAOzI,YAGvE,MAEHuV,EAAQ/M,GAAGjQ,EAASV,EAAI,gDAAgD,WACpE,IAAIgD,EAAO5E,KAAK+J,MAEXG,EAAKwH,QAAQ,WAAY,CAAElN,KAAMI,EAAM4V,OAAQ,aAAcna,KAAM6J,EAAK7J,UACzE6J,EAAK1F,KAAKI,MAIlBsF,EAAKosB,cAAe,GAGxBhO,cAAe,SAASuT,GACpB,IAAI3xB,EAAOlK,KACPwS,EAASqpB,GAAa3xB,EAAKoV,QAAQrS,KAAK,kBACxCjJ,EAAO/D,EAAE,oFAERiK,EAAK2S,QACN3S,EAAK2S,MAAQ,IAAI5b,EAAM+C,EAAM,CACzB83B,OAAQtpB,EACRupB,SAAU,WACF7xB,EAAK2S,OAAS3S,EAAK1E,WACnB0E,EAAK2S,MAAMmf,eAAc,GACzB9xB,EAAK1E,SAASgQ,QAAQvI,KAAK,SAASyE,QAAQ,SAC5CxH,EAAK2S,MAAMmf,eAAc,KAGjCtf,KAAM,WACGxS,EAAK1E,WACN0E,EAAK1E,SAAW,IAAItE,EAASlB,KAAKwV,QAAQvI,KAAK,yBAC/C,CACIgvB,OAAQ,WACJ,IAAI57B,EAAOL,KAAK+J,QACXG,EAAKwH,QAAQ,WAAY,CAAElN,KAAM0F,EAAKqe,kBAAmB/N,OAAQ,aAAcna,KAAMA,MACtF6J,EAAK7J,KAAKA,GACV6J,EAAK2S,MAAM7D,SAGV9O,EAAKmW,cACNnW,EAAKkV,cAAc5J,QAAQ9D,QAAQ,SACnCxH,EAAKoV,QAAQrS,KAAK,kBAAkByE,QAAQ,SAAS+D,SAAS1S,KAGtEqoB,IAAKlhB,EAAK1D,QAAQ4kB,IAClBC,IAAKnhB,EAAK1D,QAAQ6kB,OAG1BnhB,EAAK1E,SAASgQ,QAAQjD,GAAG,UAAY3Q,GAAI,SAASoT,GAC1CA,EAAEmT,UAAYvnB,EAAKgqB,KAAO5V,EAAEmT,UAAYvnB,EAAKmpB,MAC7C7f,EAAK2S,MAAM7D,QACX9O,EAAKkV,cAAc5J,QAAQ9D,QAAQ,SACnCxH,EAAKoV,QAAQrS,KAAK,kBAAkByE,QAAQ,SAAS+D,SAAS1S,OAItEmH,EAAK1E,SAAS02B,WAAW,CACrBt0B,MAAkC,SAA3BsC,EAAKqe,kBAA+B,SAAW,QACtD4T,MAAkC,SAA3BjyB,EAAKqe,kBAA+B,SAAW,UAG1Dre,EAAK1E,SAASuE,MAAMG,EAAK7J,SAE7B+7B,kBAAkB,KAI1BlyB,EAAK2S,MAAMH,QAGfpX,QAAS,SAAS0P,GACd,IAAI9K,EAAOlK,KACPwE,EAAOxE,KAAKwE,OACZ63B,EAAkBrnB,GAAkB,eAAbA,EAAEwF,SAA4Bxa,KAAKsuB,QAAQjhB,UAAYrN,KAAKsyB,kBAChC,YAAjCtyB,KAAK0P,WAAWlJ,QAAQlC,MAAsBtE,KAAKsyB,gBAEzEtyB,KAAKw4B,WAAU,GAEfx4B,KAAKw1B,QAAQ,WAAW,WACpB,MAAO,CAAEC,SAAUvrB,EAAK2E,YAG5BmG,EAAIA,GAAK,GAEJxQ,IAID63B,EACAr8B,KAAKw0B,gBAA2D,YAAjCx0B,KAAK0P,WAAWlJ,QAAQlC,KAIvDtE,KAAK0R,QAAQ,cAAe,CAAE8I,OAAQxF,EAAEwF,QAAU,SAAUjM,MAAOyG,EAAEzG,MAAOM,MAAOmG,EAAEnG,UAInFmG,GAAkB,WAAbA,EAAEwF,SAAwBxa,KAAKsuB,SACtCtuB,KAAKsuB,QAAQtV,QAGjBhZ,KAAK+f,MAAQ/f,KAAK0P,WAAWxE,OAAO1G,EAAKsjB,YAAatjB,EAAK83B,kBAE3D93B,EAAK+3B,gBAEL/3B,EAAKg4B,OAAOx8B,KAAK+f,OAEjB/f,KAAK0R,QAAQ,aACb1R,KAAKw0B,iBAAkB,KAG3BiI,eAAgB,SAASxM,EAAGE,GACxB,IAAI3rB,EAAOxE,KAAKwE,OAEhB,IAAKA,EAAKwrB,gBACN,OAAO,KAGX,IAAIpI,EAAOpjB,EAAKwrB,gBAAgBC,EAAGE,GAEnC,OAAKvI,EAIE,CACHE,UAAWF,EAAKE,YAChBC,QAASH,EAAKG,UACdlH,WAAY+G,EAAK/G,WACjBrL,QAASoS,EAAKpS,QACdmN,UAAWiF,EAAKjF,WART,MAYf+Z,cAAe,SAASlnB,GACpB,IAAID,EAAKtV,EAAEuV,GACPxK,EAASuK,EAAGvK,SACZ6iB,EAAQtY,EAAGsY,QACXjV,EAASrD,EAAGqD,SACZ+jB,EAAU3xB,EAAO8N,KAAO+U,EAAQ,EAChC+O,EAAU5xB,EAAOylB,IAAM7X,EAAS,EAChC5N,EAAS/K,EAAEuV,GAASxK,SAExB,OAAOhL,KAAKy8B,eAAeE,EAASC,IAGxCC,gBAAiB,SAASjV,GACtB,OAAO5nB,KAAKwE,OAAOod,gBAAgBgG,MAIvCoQ,GAAe,CACfrL,IAAK,CACDroB,KAAM,oBAEVsoB,KAAM,CACFtoB,KAAM,qBAEVuoB,SAAU,CACNvoB,KAAM,yBAEVwoB,OAAQ,CACJxoB,KAAM,uBAEVyoB,MAAO,CACHzoB,KAAM,sBAEV0oB,SAAU,CACN1oB,KAAM,yBAEV2oB,aAAc,CACV3oB,KAAM,6BAEV4oB,iBAAkB,CACd5oB,KAAM,iCAEV6oB,cAAe,CACX7oB,KAAM,8BAEV8oB,KAAM,CACF9oB,KAAM,sBAMd,GAFAzD,EAAGi8B,OAAOjf,IAEN1d,EAAM48B,SAAU,CAChB58B,EAAM48B,SAASz7B,OAAOuc,GAAUpc,WAEhC,IAAIu7B,GAAmB,yBACvBnf,GAAU1T,GAAG8yB,SAAW,SAASxE,GAC7B,IAAIzb,EAAUhd,KAAKgd,QACfkgB,EAASlgB,EAAQ,GAAGmgB,MAAMC,QAE9BpgB,EAAQrE,IAAI,CACRkV,MAAO7Q,EAAQ6Q,QACfjV,OAAQoE,EAAQpE,WAGpBoE,EAAQvH,SAASunB,IAEjB,IAAIK,EAAYr9B,KACZs9B,EAAU,IAAIr9B,EAAEs9B,SAChBC,EAAQxgB,EAAQ/P,KAAK,wBAAwBA,KAAK,SAAS0L,IAAI,eAAgB,QAiCnF,OA/BA1E,YAAW,WACPupB,EAAM7kB,IAAI,eAAgB,SAC1B0kB,EAAU/e,QAAO,GAEjB+e,EAAUI,eAAe,GAAI,CACzBC,WAAYL,EAAU72B,QAAQ7B,IAAI+4B,aAErCC,MAAK,SAAS93B,GACX,IAAI+3B,EAAO,CACPC,KAAMh4B,EACNi4B,WAAY,EACZrF,SAAU,EACVsF,WAAY,GAGhBtF,EAASuF,OAAOJ,GAChBN,EAAQW,QAAQL,EAAKC,SAExBK,MAAK,SAASC,GACXb,EAAQc,OAAOD,MAElBE,QAAO,WACJrhB,EAAQ,GAAGmgB,MAAMC,QAAUF,EAC3BlgB,EAAQ4I,YAAYoX,IACpBK,EAAU/e,QAAO,GAGjB+e,EAAU/e,QAAO,SAIlBgf,GAIf,IAAIgB,GAAiBx9B,EAAOQ,OAAO,CAC/B+G,KAAM,SAASmN,EAAShP,GACpB,IAAI0D,EAAOlK,KACPu+B,EAAQp+B,EAAMsG,SAAS6P,cAE3B,IAAKioB,IAAUp+B,EAAMsG,SAAS+3B,aAC1B,MAAM,IAAI7uB,MAAM,2CAGpB7O,EAAOqJ,GAAG9B,KAAKO,KAAKsB,EAAMsL,EAAShP,GAEnC0D,EAAK8S,QAAU9S,EAAKsL,QAEpBtL,EAAKu0B,YAAc,IAAIt+B,EAAMiB,KAAK2M,MAAMwwB,GACxCr0B,EAAKw0B,aAAev+B,EAAM2e,OAC1B5U,EAAKy0B,mBACLz0B,EAAK00B,cAEL10B,EAAK20B,WAAWn2B,KAAK,WAAW,WACvB1I,KAAK+J,SACNG,EAAK40B,MAAM9hB,QAAQ1J,UAI3BpJ,EAAK40B,MAAMp2B,KAAK,WAAW,WACvBwB,EAAK60B,OAAS/+B,KAAK+J,QACnBG,EAAKwH,QAAQpP,MAGjB4H,EAAKH,MAAMG,EAAK1D,QAAQuD,QAE5BvD,QAAS,CACL5B,KAAM,iBACNmF,MAAO,GACP6J,YAAa,eAEjB5F,OAAQ,CAAE1L,GAEVq8B,iBAAkB,WACd,IAAIz0B,EAAOlK,KACPg/B,EAAY/+B,EAAE,cAAgBiK,EAAKw0B,aAAe,iBAAmBx0B,EAAK1D,QAAQkG,MAAQ,OAAOyD,SAASjG,EAAK8S,SAEnH9S,EAAK20B,WAAa,IAAI1+B,EAAMU,GAAGo+B,aAAaD,EAAW,CACnDtvB,WAAYvP,EAAMsG,SAAS+3B,aAC3BlsB,eAAgB,aAChB0B,cAAe,OACfJ,YAAa1J,EAAK1D,QAAQoN,eAIlCgrB,YAAa,WACT,IAAI10B,EAAOlK,KACPmL,EAAOlL,EAAE,sBAAwBiK,EAAK1D,QAAQkG,MAAQ,OAAOyD,SAASnQ,KAAKgd,SAE/E9S,EAAK40B,MAAQ,IAAI3+B,EAAMU,GAAGo+B,aAAa9zB,EAAM,CACzCmH,eAAgB,OAChB0B,cAAe,YACftE,WAAYxF,EAAKu0B,YAAYr9B,KAC7B89B,YAAah1B,EAAKw0B,aAClBvpB,UAAW,WACPjL,EAAK60B,OAAS/+B,KAAK+J,QACnB/J,KAAKgd,QAAQ1I,OAAOtU,KAAK0P,WAAWlL,OAAOiD,OAAS,MAI5DyC,EAAK40B,MAAM9hB,QAAQ1J,QAGvBxD,QAAS,WACLhP,EAAOqJ,GAAG2F,QAAQlH,KAAK5I,MAEvBG,EAAM2P,QAAQ9P,KAAKgd,UAGvBjT,MAAO,SAASA,GACZ,IACIoB,EADAjB,EAAOlK,KAGX,GAAI+J,IAAU7J,EACV,OAAOgK,EAAK60B,QAGhB5zB,EAAOjB,EAAKu0B,YAAYh1B,OAAO,CAAE5C,MAAO,OAAQiH,SAAU,KAAM/D,MAAOA,IAAS3I,KAAK,KAGjF8I,EAAK20B,WAAW90B,MAAMoB,EAAKg0B,YAC3Bj1B,EAAK40B,MAAM/0B,MAAMoB,EAAKA,OAEtBjB,EAAK20B,WAAW9pB,OAAO,MAMnClU,EAAGi8B,OAAOwB,IAEV,IAAIc,GAA0Bj/B,EAAMgE,UAAS,SAAUV,GACnD,IAAImB,EAAOnB,EAAImB,KAGf,MAAQ,kBAFSnB,EAAI07B,WAEqB,KAAQv6B,EAAO,eAEzDy6B,GAAqBl/B,EAAMgE,UAAS,SAAUV,GAI9C,MAAQ,kBAHGA,EAAI0H,KAGqB,KAFpB1H,EAAI67B,UAEoC,eAGxDC,GAAuBz+B,EAAOQ,OAAO,CACrC+G,KAAM,SAASmN,EAAShP,GACpB,IAAI0D,EAAOlK,KACPu+B,EAAQp+B,EAAMsG,SAAS6P,cAE3B,IAAKioB,IAAUp+B,EAAMsG,SAAS+3B,aAC1B,MAAM,IAAI7uB,MAAM,2CAGpB7O,EAAOqJ,GAAG9B,KAAKO,KAAKsB,EAAMsL,EAAShP,GAEnC0D,EAAK8S,QAAU9S,EAAKsL,QAEpBtL,EAAKu0B,YAAc,IAAIt+B,EAAMiB,KAAK2M,MAAMwwB,GACxCr0B,EAAKy0B,mBACLz0B,EAAK00B,cAEL10B,EAAKH,MAAMG,EAAK1D,QAAQuD,QAG5BvD,QAAS,CACL5B,KAAM,uBACNgP,YAAa,cACb7J,MAAO,IAGXiE,OAAQ,CAAE1L,GAEVk9B,WAAY,SAASz1B,GACjB,IAAI3I,EAAO2I,EAAQ/J,KAAKy/B,QAAQ11B,GAAS,GAEzC/J,KAAK8+B,MAAM96B,KAAKhE,KAAK0/B,SAASt+B,EAAMi+B,MAGxCI,QAAS,SAAS11B,GACd,OAAO/J,KAAKy+B,YAAYh1B,OAAO,CAAE5C,MAAO,aAAciH,SAAU,KAAM/D,MAAOA,IAAS3I,MAG1Fs+B,SAAU,SAASt+B,EAAM+C,EAAUyP,GAC/B,IAAIpM,EAAM,EACNxD,EAAO,GACPyD,EAASrG,EAAKqG,OAMlB,IAJImM,IACA5P,GAAQG,EAAS,CAAEg7B,WAAY,GAAIv6B,KAAMgP,KAGtCpM,EAAMC,EAAQD,IACjBxD,GAAQG,EAAS/C,EAAKoG,IAG1B,OAAOxD,GAGX26B,iBAAkB,WACd,IAAIz0B,EAAOlK,KACPwG,EAAU0D,EAAKw1B,SAASv/B,EAAMsG,SAAS+3B,aAAcY,GAAyBl1B,EAAK1D,QAAQoN,aAE/F1J,EAAK20B,WAAa5+B,EAAE,WAAauG,EAAU,aACtB2J,SAASjG,EAAK8S,SACdzK,GAAG,UAAU,WACV,IAAIxI,EAAQ/J,KAAK+J,MACboB,EAAOjB,EAAKy1B,iBACZC,EAAaz0B,EAAK8B,KAAK,UAE3B/C,EAAKs1B,WAAWz1B,GAEZA,GAAS61B,EAAWpP,WAAW/oB,OAAS,EACxC0D,EAAKyO,OAELzO,EAAKmI,OAGTpJ,EAAK60B,OAAS70B,EAAK40B,MAAM,GAAG/0B,MAE5BG,EAAKwH,QAAQpP,OAIzCs8B,YAAa,WACT,IAAI10B,EAAOlK,KAEXkK,EAAKy1B,iBAAmB1/B,EAAE,+NAKOqT,OAEjCpJ,EAAK40B,MAAQ7+B,EAAE,qBACEkQ,SAASjG,EAAKy1B,iBAAiB1yB,KAAK,QACpCsF,GAAG,UAAU,WACVrI,EAAK60B,OAAS/+B,KAAK+J,MAEnBG,EAAKwH,QAAQpP,MAGjCtC,KAAKgd,QAAQjQ,QAAQ,WAAW8yB,MAAM31B,EAAKy1B,kBAE3Cz1B,EAAKs1B,WAAWt1B,EAAK20B,WAAWh1B,OAChCK,EAAK60B,OAAS70B,EAAK40B,MAAM,GAAG/0B,OAGhC+F,QAAS,WACLhP,EAAOqJ,GAAG2F,QAAQlH,KAAK5I,MAEvBG,EAAM2P,QAAQ9P,KAAKgd,UAGvBjT,MAAO,SAASA,GACZ,IAIIoB,EAJAjB,EAAOlK,KACP8/B,EAAa51B,EAAK40B,MAClBK,EAAa,GACbY,EAAa,GAGjB,GAAIh2B,IAAU7J,EACV,OAAOgK,EAAK60B,QAGhB5zB,EAAOjB,EAAKu0B,YAAYh1B,OAAO,CAAE5C,MAAO,OAAQiH,SAAU,KAAM/D,MAAOA,IAAS3I,KAAK,MAGjF2+B,EAAa50B,EAAKA,KAClBg0B,EAAah0B,EAAKg0B,YAGtBj1B,EAAK20B,WAAWh1B,IAAIs1B,GACpBj1B,EAAKs1B,WAAWL,GAEhBW,EAAWj2B,IAAIk2B,IACfA,EAAaD,EAAW,GAAG/1B,QAET+1B,EAAWtP,SAAS/oB,OAAS,EAC3CyC,EAAKy1B,iBAAiB/lB,OAEtB1P,EAAKy1B,iBAAiBrsB,OAG1BpJ,EAAK60B,OAASgB,KAItBl/B,EAAGi8B,OAAOyC,IAlhLd,CAohLGn/B,OAAOD,MAAM6/B,QACF7/B","sourcesContent":["(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('kendo.dropdownlist.js'), require('kendo.editable.js'), require('kendo.multiselect.js'), require('kendo.window.js'), require('kendo.datetimepicker.js'), require('kendo.scheduler.recurrence.js'), require('kendo.scheduler.view.js'), require('kendo.scheduler.dayview.js'), require('kendo.scheduler.agendaview.js'), require('kendo.scheduler.monthview.js'), require('kendo.scheduler.timelineview.js'), require('kendo.scheduler.yearview.js'), require('kendo.dialog.js'), require('kendo.pane.js'), require('kendo.pdf.js'), require('kendo.switch.js'), require('kendo.toolbar.js'), require('kendo.html.button.js'), require('kendo.icons.js')) :\n typeof define === 'function' && define.amd ? define(['kendo.dropdownlist', 'kendo.editable', 'kendo.multiselect', 'kendo.window', 'kendo.datetimepicker', 'kendo.scheduler.recurrence', 'kendo.scheduler.view', 'kendo.scheduler.dayview', 'kendo.scheduler.agendaview', 'kendo.scheduler.monthview', 'kendo.scheduler.timelineview', 'kendo.scheduler.yearview', 'kendo.dialog', 'kendo.pane', 'kendo.pdf', 'kendo.switch', 'kendo.toolbar', 'kendo.html.button', 'kendo.icons'], factory) :\n (global = typeof globalThis !== 'undefined' ? globalThis : global || self, (global.kendoscheduler = global.kendoscheduler || {}, global.kendoscheduler.js = factory()));\n})(this, (function () {\n var __meta__ = {\n id: \"scheduler\",\n name: \"Scheduler\",\n category: \"web\",\n description: \"The Scheduler is an event calendar.\",\n depends: [ \"dropdownlist\", \"editable\", \"multiselect\", \"window\", \"datepicker\", \"datetimepicker\", \"toolbar\", \"scheduler.recurrence\", \"scheduler.view\", \"html.button\", \"icons\" ],\n features: [ {\n id: \"scheduler-dayview\",\n name: \"Scheduler Day View\",\n description: \"Scheduler Day View\",\n depends: [ \"scheduler.dayview\" ]\n }, {\n id: \"scheduler-agendaview\",\n name: \"Scheduler Agenda View\",\n description: \"Scheduler Agenda View\",\n depends: [ \"scheduler.agendaview\" ]\n }, {\n id: \"scheduler-monthview\",\n name: \"Scheduler Month View\",\n description: \"Scheduler Month View\",\n depends: [ \"scheduler.monthview\" ]\n }, {\n id: \"scheduler-timelineview\",\n name: \"Scheduler Timeline View\",\n description: \"Scheduler Timeline View\",\n depends: [ \"scheduler.timelineview\" ]\n }, {\n id: \"scheduler-yearview\",\n name: \"Scheduler Year View\",\n description: \"Scheduler Year View\",\n depends: [ \"scheduler.yearview\" ]\n }, {\n id: \"scheduler-mobile\",\n name: \"Scheduler adaptive rendering\",\n description: \"Support for adaptive rendering\",\n depends: [ \"dialog\", \"pane\", \"switch\" ]\n }, {\n id: \"scheduler-pdf-export\",\n name: \"PDF export\",\n description: \"Export the scheduler events as PDF\",\n depends: [ \"pdf\", \"drawing\" ]\n }, {\n id: \"scheduler-timezones\",\n name: \"Timezones\",\n description: \"Allow selecting timezones different than Etc/UTC\",\n depends: [ \"timezones\" ]\n }]\n };\n\n\n (function($, undefined$1) {\n var kendo = window.kendo,\n date = kendo.date,\n MS_PER_DAY = date.MS_PER_DAY,\n getDate = date.getDate,\n getMilliseconds = kendo.date.getMilliseconds,\n recurrence = kendo.recurrence,\n encode = kendo.htmlEncode,\n keys = kendo.keys,\n ui = kendo.ui,\n Widget = ui.Widget,\n DataBoundWidget = ui.DataBoundWidget,\n STRING = \"string\",\n Popup = ui.Popup,\n Calendar = ui.Calendar,\n DataSource = kendo.data.DataSource,\n isPlainObject = $.isPlainObject,\n extend = $.extend,\n toString = Object.prototype.toString,\n isArray = Array.isArray,\n NS = \".kendoScheduler\",\n CLICK = \"click\",\n MOUSEDOWN = \"mousedown\",\n TOUCHSTART = kendo.support.pointers ? \"pointerdown\" : \"touchstart\",\n TOUCHMOVE = kendo.support.pointers ? \"pointermove\" : \"touchmove\",\n TOUCHEND = kendo.support.pointers ? \"pointerup\" : \"touchend\",\n MOUSEMOVE = kendo.support.mousemove,\n CHANGE = \"change\",\n PROGRESS = \"progress\",\n ERROR = \"error\",\n CANCEL = \"cancel\",\n REMOVE = \"remove\",\n RESET = \"resetSeries\",\n SAVE = \"save\",\n ADD = \"add\",\n EDIT = \"edit\",\n DISABLED = \"disabled\",\n OPTION = \"option\",\n FOCUSEDSTATE = \"k-focus\",\n INVERSECOLORCLASS = \"k-event-inverse\",\n valueStartEndBoundRegex = /(?:value:start|value:end)(?:,|$)/,\n MIN_SCREEN = \"(min-width: 1024px)\",\n TODAY = getDate(new Date()),\n EXCEPTION_SEPARATOR = \",\",\n OLD_EXCEPTION_SEPARATOR_REGEXP = /\\;/g,\n RECURRENCE_EXCEPTION = \"recurrenceException\",\n DELETECONFIRM = \"Are you sure you want to delete this event?\",\n DELETERECURRING = \"Do you want to delete only this event occurrence or the whole series?\",\n EDITRECURRING = \"Do you want to edit only this event occurrence or the whole series?\",\n DELETERECURRINGCONFIRM = \"Are you sure you want to delete this event occurrence?\",\n RESETSERIESCONFIRM = \"Are you sure you want to reset the whole series?\",\n DELETESERIESCONFIRM = \"Are you sure you want to delete the whole series?\",\n ONGOING_CLASS = \"k-event-ongoing\",\n COMMANDBUTTONTMPL = function (ref) {\n var className = ref.className;\n var attr = ref.attr;\n var text = ref.text;\n var icon = ref.icon;\n var fillMode = ref.fillMode;\n var themeColor = ref.themeColor;\n\n return kendo.html.renderButton((\"\"), {\n icon: icon,\n fillMode: fillMode,\n themeColor: themeColor\n });\n },\n VIEWS_DROPDOWN_TEMPLATE = kendo.template(function (ref) {\n var label = ref.label;\n var views = ref.views;\n var type = ref.type;\n\n return \"';\n }\n ),\n\n DEFAULT_TOOLS = {\n pdf: {\n name: \"pdf\",\n type: \"button\",\n icon: \"file-pdf\",\n attributes: {\n class: \"k-pdf\"\n }\n },\n pdfMobile: {\n name: \"pdf\",\n type: \"button\",\n icon: \"file-pdf\",\n showText: \"overflow\",\n attributes: {\n class: \"k-pdf\"\n }\n },\n today: {\n name: \"today\",\n type: \"button\",\n attributes: {\n class: \"k-nav-today\",\n }\n },\n previous: {\n name: \"previous\",\n type: \"button\",\n icon: \"caret-alt-left\",\n showText: \"overflow\",\n attributes: {\n class: \"k-nav-prev\"\n }\n },\n next: {\n name: \"next\",\n type: \"button\",\n icon: \"caret-alt-right\",\n showText: \"overflow\",\n attributes: {\n class: \"k-nav-next\"\n }\n },\n current: {\n name: \"current\",\n type: \"button\",\n icon: \"calendar\",\n fillMode: \"flat\",\n text: 'placeholder',\n attributes: {\n \"aria-live\": \"polite\",\n class: \"k-nav-current\"\n }\n },\n search: {\n template: '' +\n '' +\n \"\" + (kendo.ui.icon(\"search\")) + \"\" +\n ''\n },\n refresh: {\n name: \"refresh\",\n type: \"button\",\n icon: \"arrow-rotate-cw\",\n showText: \"overflow\",\n attributes: {\n class: \"k-scheduler-refresh\"\n }\n },\n create: {\n name: \"create\",\n type: \"button\",\n icon: \"plus\",\n attributes: {\n class: \"k-create-event\"\n }\n },\n calendar: {\n name: \"calendar\",\n type: \"button\",\n icon: \"calendar\",\n attributes: {\n class: \"k-nav-calendar\"\n }\n },\n previousMobile: {\n name: \"previous\",\n type: \"button\",\n icon: \"chevron-left\",\n showText: \"overflow\",\n attributes: {\n class: \"k-nav-prev\"\n }\n },\n nextMobile: {\n name: \"next\",\n type: \"button\",\n icon: \"chevron-right\",\n showText: \"overflow\",\n attributes: {\n class: \"k-nav-next\"\n }\n },\n currentMobile: {\n template: '' +\n '' +\n '' +\n '' +\n '' +\n ''\n },\n view: {\n name: \"view\",\n type: \"button\",\n togglable: true,\n group: \"views\"\n }\n },\n\n defaultDesktopTools = [\n [\"today\", \"previous\", \"next\"],\n \"current\",\n { type: \"spacer\" }\n ],\n\n defaultMobileToolsFirst = [\n [\"calendar\"],\n { type: \"spacer\" }\n ],\n\n defaultMobileToolsSecond = [\n \"previousMobile\",\n { type: \"spacer\" },\n \"currentMobile\",\n { type: \"spacer\" },\n \"nextMobile\"\n ],\n\n MOBILEDATERANGEEDITOR = function(container, options) {\n var attr = { name: options.field, title: options.title };\n var isAllDay = options.model.isAllDay;\n var dateTimeValidate = kendo.attr(\"validate\") + \"='\" + (!isAllDay) + \"'\";\n var dateValidate = kendo.attr(\"validate\") + \"='\" + (!!isAllDay) + \"'\";\n\n appendTimezoneAttr(attr, options);\n appendValidDateValidator(attr, options);\n appendDateCompareValidator(attr, options);\n\n $('')\n .attr(attr)\n .appendTo(container);\n\n $('')\n .attr(attr).appendTo(container);\n\n $('').hide().appendTo(container);\n },\n DATERANGEEDITOR = function(container, options) {\n var attr = { name: options.field, title: options.title },\n isAllDay = options.model.isAllDay,\n dateTimeValidate = kendo.attr(\"validate\") + \"='\" + (!isAllDay) + \"' \",\n dateValidate = kendo.attr(\"validate\") + \"='\" + (!!isAllDay) + \"' \";\n\n appendTimezoneAttr(attr, options);\n appendValidDateValidator(attr, options);\n appendDateCompareValidator(attr, options);\n\n $('')\n .attr(attr).appendTo(container);\n\n $('')\n .attr(attr).appendTo(container);\n\n $('').appendTo(container);\n\n if (options.field === \"end\") {\n $('').appendTo(container);\n }\n\n $('').hide().appendTo(container);\n },\n RECURRENCEEDITOR = function(container, options) {\n $('
')\n .attr({\n name: options.field\n })\n .appendTo(container)\n .kendoRecurrenceEditor({\n start: options.model.start,\n timezone: options.timezone,\n messages: options.messages\n });\n },\n MOBILERECURRENCEEDITOR = function(container, options) {\n $('
')\n .attr({\n name: options.field\n })\n .appendTo(container)\n .kendoMobileRecurrenceEditor({\n start: options.model.start,\n timezone: options.timezone,\n messages: options.messages,\n pane: options.pane,\n value: options.model[options.field]\n });\n },\n MOBILEISALLDAYEDITOR = function(container, options) {\n $('').appendTo(container);\n },\n ISALLDAYEDITOR = function(container, options) {\n $('')\n .attr({\n id: options.field,\n name: options.field,\n title: options.title ? options.title : options.field\n })\n .appendTo(container);\n },\n MOBILETIMEZONEPOPUP = function(container, options) {\n var text = timezoneButtonText(options.model, options.messages.noTimezone);\n $('').text(text).appendTo(container);\n $(kendo.ui.icon(\"arrow-chevron-right\")).appendTo(container);\n container.closest(\"li.k-item label\").on(CLICK, options.click);\n },\n TIMEZONEPOPUP = function(container, options) {\n $('' + options.messages.timezoneEditorButton + '').on(CLICK, options.click).appendTo(container);\n },\n MOBILETIMEZONEEDITOR = function(container, options) {\n $('
')\n .attr({\n name: options.field\n })\n .appendTo(container)\n .kendoMobileTimezoneEditor({\n optionLabel: options.noTimezone\n });\n },\n TIMEZONEEDITOR = function(container, options) {\n var visible = options.visible || options.visible === undefined$1;\n $('
')\n .attr({ name: options.field })\n .toggle(visible)\n .appendTo(container)\n .kendoTimezoneEditor({\n optionLabel: options.noTimezone,\n title: options.title\n });\n };\n\n function timezoneButtonText(model, message) {\n message = message || \"\";\n\n if (model.startTimezone) {\n message = model.startTimezone;\n\n if (model.endTimezone) {\n message += \" | \" + model.endTimezone;\n }\n }\n\n return message;\n }\n\n function appendTimezoneAttr(attrs, options) {\n var timezone = options.timezone;\n\n if (timezone) {\n attrs[kendo.attr(\"timezone\")] = timezone;\n }\n }\n\n function appendValidDateValidator(attrs, options) {\n var validationRules = options.model.fields[options.field].validation;\n\n if (validationRules) {\n var validDateRule = validationRules.validDateValidator;\n if (validDateRule && isPlainObject(validDateRule) && validDateRule.message) {\n attrs[kendo.attr(\"validDate-msg\")] = validDateRule.message;\n }\n }\n }\n\n function appendDateCompareValidator(attrs, options) {\n var validationRules = options.model.fields[options.field].validation;\n\n if (validationRules) {\n var dateCompareRule = validationRules.dateCompare;\n if (dateCompareRule && isPlainObject(dateCompareRule) && dateCompareRule.message) {\n attrs[kendo.attr(\"dateCompare-msg\")] = dateCompareRule.message;\n }\n }\n }\n\n function wrapDataAccess(originalFunction, timezone) {\n return function(data) {\n data = originalFunction(data);\n\n convertData(data, \"apply\", timezone);\n\n return data || [];\n };\n }\n\n function wrapDataSerialization(originalFunction, timezone) {\n return function(data) {\n\n if (data) {\n if (toString.call(data) !== \"[object Array]\" && !(data instanceof kendo.data.ObservableArray)) {\n data = [data];\n }\n }\n\n convertData(data, \"remove\", timezone, true);\n\n data = originalFunction(data);\n\n return data || [];\n };\n }\n\n function convertData(data, method, timezone, removeUid) {\n var event,\n idx,\n length,\n startOffset,\n endOffset;\n\n data = data || [];\n\n for (idx = 0, length = data.length; idx < length; idx++) {\n event = data[idx];\n startOffset = event.start ? event.start.getTimezoneOffset() : null;\n endOffset = event.start ? event.end.getTimezoneOffset() : null;\n\n if (removeUid) {\n if (event.startTimezone || event.endTimezone) {\n if (timezone) {\n event.start = kendo.timezone.convert(event.start, event.startTimezone || event.endTimezone, timezone);\n event.end = kendo.timezone.convert(event.end, event.endTimezone || event.startTimezone, timezone);\n\n event.start = kendo.timezone[method](event.start, timezone);\n event.end = kendo.timezone[method](event.end, timezone);\n } else {\n event.start = kendo.timezone[method](event.start, event.startTimezone || event.endTimezone);\n event.end = kendo.timezone[method](event.end, event.endTimezone || event.startTimezone);\n }\n\n } else if (timezone) {\n event.start = kendo.timezone[method](event.start, timezone);\n event.end = kendo.timezone[method](event.end, timezone);\n }\n } else {\n if (event.startTimezone || event.endTimezone) {\n event.start = kendo.timezone[method](event.start, event.startTimezone || event.endTimezone);\n event.end = kendo.timezone[method](event.end, event.endTimezone || event.startTimezone);\n\n if (timezone) {\n event.start = kendo.timezone.convert(event.start, event.startTimezone || event.endTimezone, timezone);\n event.end = kendo.timezone.convert(event.end, event.endTimezone || event.startTimezone, timezone);\n }\n\n } else if (timezone) {\n event.start = kendo.timezone[method](event.start, timezone);\n event.end = kendo.timezone[method](event.end, timezone);\n }\n }\n\n if (removeUid) {\n delete event.uid;\n }\n\n if (method === \"remove\" && event.start && startOffset && startOffset !== event.start.getTimezoneOffset()) {\n event.start = new Date(event.start.getTime() + (startOffset - event.start.getTimezoneOffset()) * 60000);\n }\n if (method === \"remove\" && event.end && endOffset && endOffset !== event.end.getTimezoneOffset()) {\n event.end = new Date(event.end.getTime() + (endOffset - event.end.getTimezoneOffset()) * 60000);\n }\n }\n return data;\n }\n\n function getOccurrenceByUid(data, uid) {\n var length = data.length,\n idx = 0,\n event;\n\n for (; idx < length; idx++) {\n event = data[idx];\n\n if (event.uid === uid) {\n return event;\n }\n }\n }\n\n var SchedulerDataReader = kendo.Class.extend({\n init: function(schema, reader) {\n var timezone = schema.timezone;\n\n this.reader = reader;\n\n if (reader.model) {\n this.model = reader.model;\n }\n\n this.timezone = timezone;\n this.data = wrapDataAccess(this.data.bind(this), timezone);\n this.serialize = wrapDataSerialization(this.serialize.bind(this), timezone);\n },\n errors: function(data) {\n return this.reader.errors(data);\n },\n parse: function(data) {\n return this.reader.parse(data);\n },\n data: function(data) {\n return this.reader.data(data);\n },\n total: function(data) {\n return this.reader.total(data);\n },\n groups: function(data) {\n return this.reader.groups(data);\n },\n aggregates: function(data) {\n return this.reader.aggregates(data);\n },\n serialize: function(data) {\n return this.reader.serialize(data);\n }\n });\n\n function applyZone(date, fromZone, toZone) {\n if (toZone) {\n date = kendo.timezone.convert(date, fromZone, toZone);\n } else {\n date = kendo.timezone.remove(date, fromZone);\n }\n\n return date;\n }\n\n function validDateValidator(input) {\n if ((input.filter(\"[name=start]\").length && input.filter(\"[title=Start]\").length) ||\n (input.filter(\"[name=end]\").length && input.filter(\"[title=End]\").length) ||\n input.filter(\".k-recur-until\").length) {\n var date;\n var picker = kendo.widgetInstance(input, kendo.ui);\n\n if (picker) {\n date = kendo.parseDate(input.val(), picker.options.format);\n return !!date && picker.value();\n } else {\n date = kendo.parseDate(input.val());\n return !!date;\n }\n }\n\n return true;\n }\n\n function dateCompareValidator(input) {\n if (input.filter(\"[name=end]\").length) {\n var container = input.closest(\".k-scheduler-edit-form\");\n var startInput = container.find(\"[name=start]:visible\");\n var endInput = container.find(\"[name=end]:visible\");\n\n if (endInput[0] && startInput[0]) {\n var start, end;\n var startPicker = kendo.widgetInstance(startInput, kendo.ui);\n var endPicker = kendo.widgetInstance(endInput, kendo.ui);\n\n var editable = container.data(\"kendoEditable\");\n var model = editable ? editable.options.model : null;\n\n if (startPicker && endPicker) {\n start = startPicker.value();\n end = endPicker.value();\n } else {\n start = kendo.parseDate(startInput.val());\n end = kendo.parseDate(endInput.val());\n }\n\n if (start && end) {\n if (model) {\n var timezone = startInput.attr(kendo.attr(\"timezone\"));\n var startTimezone = model.startTimezone;\n var endTimezone = model.endTimezone;\n\n startTimezone = startTimezone || endTimezone;\n endTimezone = endTimezone || startTimezone;\n\n if (startTimezone) {\n start = applyZone(start, startTimezone, timezone);\n end = applyZone(end, endTimezone, timezone);\n }\n }\n\n return start <= end;\n }\n }\n }\n\n return true;\n }\n\n function untilDateCompareValidator(input) {\n var untilPicker, until,\n container, startInput, start, startPicker;\n\n if (input.filter(\".k-recur-until\").length) {\n untilPicker = kendo.widgetInstance(input, kendo.ui);\n until = untilPicker.value();\n container = input.closest(\".k-scheduler-edit-form\");\n startInput = container.find(\"[name=start]:visible\");\n\n if (startInput[0]) {\n startPicker = kendo.widgetInstance(startInput, kendo.ui);\n\n if (startPicker) {\n start = startPicker.value();\n } else {\n start = kendo.parseDate(startInput.val());\n }\n\n if (start && until) {\n return start <= until;\n }\n }\n }\n\n return true;\n }\n\n var SchedulerEvent = kendo.data.Model.define({\n init: function(value) {\n var that = this;\n\n kendo.data.Model.fn.init.call(that, value);\n\n that._defaultId = that.defaults[that.idField];\n },\n\n _time: function(field) {\n var date = this[field];\n var fieldTime = \"_\" + field + \"Time\";\n\n if (this[fieldTime]) {\n return this[fieldTime] - kendo.date.toUtcTime(kendo.date.getDate(date));\n }\n\n return getMilliseconds(date);\n },\n\n _date: function(field) {\n var fieldTime = \"_\" + field + \"Time\";\n\n if (this[fieldTime]) {\n return this[fieldTime] - this._time(field);\n }\n\n return kendo.date.getDate(this[field]);\n },\n\n clone: function(options, updateUid) {\n var uid = this.uid,\n event = new this.constructor($.extend({}, this.toJSON(), options));\n\n if (!updateUid) {\n event.uid = uid;\n }\n\n return event;\n },\n\n duration: function() {\n var end = this.end;\n var start = this.start;\n var offset = (end.getTimezoneOffset() - start.getTimezoneOffset()) * kendo.date.MS_PER_MINUTE;\n\n return end - start - offset;\n },\n\n expand: function(start, end, zone) {\n return recurrence ? recurrence.expand(this, start, end, zone) : [this];\n },\n\n update: function(eventInfo) {\n for (var field in eventInfo) {\n this.set(field, eventInfo[field]);\n }\n\n if (this._startTime) {\n this.set(\"_startTime\", kendo.date.toUtcTime(this.start));\n }\n\n if (this._endTime) {\n this.set(\"_endTime\", kendo.date.toUtcTime(this.end));\n }\n },\n\n isMultiDay: function() {\n return this.isAllDay || this.duration() >= kendo.date.MS_PER_DAY;\n },\n\n isException: function() {\n return !this.isNew() && this.recurrenceId;\n },\n\n isOccurrence: function() {\n return this.isNew() && this.recurrenceId;\n },\n\n isRecurring: function() {\n return !!(this.recurrenceRule || this.recurrenceId);\n },\n\n isRecurrenceHead: function() {\n return !!(this.id && this.recurrenceRule);\n },\n\n toOccurrence: function(options) {\n options = $.extend(options, {\n recurrenceException: null,\n recurrenceRule: null,\n recurrenceId: this.id || this.recurrenceId\n });\n\n options[this.idField] = this.defaults[this.idField];\n\n return this.clone(options, true);\n },\n\n toJSON: function() {\n var obj = kendo.data.Model.fn.toJSON.call(this);\n obj.uid = this.uid;\n\n delete obj._startTime;\n delete obj._endTime;\n\n return obj;\n },\n\n shouldSerialize: function(field) {\n return kendo.data.Model.fn.shouldSerialize.call(this, field) && field !== \"_defaultId\";\n },\n\n set: function(key, value) {\n var isAllDay = this.isAllDay || false;\n\n kendo.data.Model.fn.set.call(this, key, value);\n\n if (key == \"isAllDay\" && value != isAllDay) {\n var start = kendo.date.getDate(this.start);\n var end = new Date(this.end);\n var milliseconds = kendo.date.getMilliseconds(end);\n\n if (milliseconds === 0 && value) {\n milliseconds = MS_PER_DAY;\n }\n\n this.set(\"start\", start);\n\n if (value === true) {\n kendo.date.setTime(end, -milliseconds);\n\n if (end < start) {\n end = start;\n }\n } else {\n kendo.date.setTime(end, MS_PER_DAY - milliseconds);\n }\n\n this.set(\"end\", end);\n }\n },\n id: \"id\",\n fields: {\n id: { type: \"number\" },\n title: { defaultValue: \"\", type: \"string\" },\n start: { type: \"date\", validation: { required: true, validDate: { value: validDateValidator } } },\n startTimezone: { type: \"string\" },\n end: {\n type: \"date\",\n validation: {\n required: true,\n validDate: { value: validDateValidator },\n dateCompare: { value: dateCompareValidator }\n }\n },\n endTimezone: { type: \"string\" },\n recurrenceRule: {\n defaultValue: \"\",\n type: \"string\",\n validation: {\n validDate: { value: validDateValidator },\n untilDateCompare: { value: untilDateCompareValidator }\n }\n },\n recurrenceException: { defaultValue: \"\", type: \"string\" },\n isAllDay: { type: \"boolean\", defaultValue: false },\n description: { type: \"string\" }\n }\n });\n\n var SchedulerDataSource = DataSource.extend({\n init: function(options) {\n\n DataSource.fn.init.call(this, extend(true, {}, {\n schema: {\n modelBase: SchedulerEvent,\n model: SchedulerEvent\n }\n }, options));\n\n this.reader = new SchedulerDataReader(this.options.schema, this.reader);\n },\n\n expand: function(start, end) {\n var data = this.view(),\n filter = {},\n endOffset;\n\n if (start && end) {\n endOffset = end.getTimezoneOffset();\n end = new Date(end.getTime() + MS_PER_DAY - 1);\n\n if (end.getTimezoneOffset() !== endOffset) {\n end = kendo.timezone.apply(end, endOffset);\n }\n\n filter = {\n logic: \"or\",\n filters: [\n {\n logic: \"and\",\n filters: [\n { field: \"start\", operator: \"gte\", value: start },\n { field: \"end\", operator: \"gte\", value: start },\n { field: \"start\", operator: \"lte\", value: end }\n ]\n },\n {\n logic: \"and\",\n filters: [\n { field: \"start\", operator: \"lte\", value: new Date(start.getTime() + MS_PER_DAY - 1) },\n { field: \"end\", operator: \"gte\", value: start }\n ]\n }\n ]\n };\n\n data = new kendo.data.Query(expandAll(data, start, end, this.reader.timezone)).filter(filter).toArray();\n }\n\n return data;\n },\n\n cancelChanges: function(model) {\n if (model && model.isOccurrence()) {\n this._removeExceptionDate(model);\n }\n\n DataSource.fn.cancelChanges.call(this, model);\n },\n\n insert: function(index, model) {\n if (!model) {\n return;\n }\n\n if (!(model instanceof SchedulerEvent)) {\n var eventInfo = model;\n\n model = this._createNewModel();\n model.accept(eventInfo);\n }\n\n if ((!this._pushCreated && model.isRecurrenceHead()) || model.recurrenceId) {\n model = model.recurrenceId ? model : model.toOccurrence();\n this._addExceptionDate(model);\n }\n\n return DataSource.fn.insert.call(this, index, model);\n },\n\n pushCreate: function(items) {\n this._pushCreated = true;\n DataSource.fn.pushCreate.call(this, items);\n this._pushCreated = false;\n },\n\n remove: function(model) {\n if (model.isRecurrenceHead()) {\n this._removeExceptions(model);\n } else if (model.isRecurring()) {\n this._addExceptionDate(model);\n }\n\n return DataSource.fn.remove.call(this, model);\n },\n\n _removeExceptions: function(model) {\n var data = this.data().slice(0),\n item = data.shift(),\n id = model.id;\n\n while (item) {\n if (item.recurrenceId === id) {\n DataSource.fn.remove.call(this, item);\n }\n\n item = data.shift();\n }\n\n model.set(RECURRENCE_EXCEPTION, \"\");\n },\n\n _removeExceptionDate: function(model) {\n if (model.recurrenceId) {\n var head = this.get(model.recurrenceId);\n\n if (head) {\n var start = model.defaults.start;\n var replaceRegExp = new RegExp(\"(\\\\\" + EXCEPTION_SEPARATOR + \"?)\" + recurrence.toExceptionString(start, this.reader.timezone));\n var recurrenceException = (head.recurrenceException || \"\").replace(OLD_EXCEPTION_SEPARATOR_REGEXP, EXCEPTION_SEPARATOR).replace(/\\,$/, \"\");\n\n if (replaceRegExp.test(recurrenceException)) {\n head.set(RECURRENCE_EXCEPTION, recurrenceException.replace(replaceRegExp, \"\"));\n } else {\n start = model.start;\n replaceRegExp = new RegExp(\"(\\\\\" + EXCEPTION_SEPARATOR + \"?)\" + recurrence.toExceptionString(start, this.reader.timezone));\n head.set(RECURRENCE_EXCEPTION, recurrenceException.replace(replaceRegExp, \"\"));\n }\n }\n }\n },\n\n _addExceptionDate: function(model) {\n var start = model.start;\n var zone = this.reader.timezone;\n var head = this.get(model.recurrenceId);\n var recurrenceException = (head.recurrenceException || \"\").replace(OLD_EXCEPTION_SEPARATOR_REGEXP, EXCEPTION_SEPARATOR).replace(/\\,$/, \"\");\n\n if (!recurrence.isException(recurrenceException, start, zone)) {\n var newException = recurrence.toExceptionString(start, zone);\n model.defaults.start = start;\n head.set(RECURRENCE_EXCEPTION, recurrenceException + (recurrenceException && newException ? EXCEPTION_SEPARATOR : \"\") + newException);\n }\n }\n });\n\n function expandAll(events, start, end, zone) {\n var length = events.length,\n data = [],\n idx = 0;\n\n for (; idx < length; idx++) {\n data = data.concat(events[idx].expand(start, end, zone));\n }\n\n return data;\n }\n\n SchedulerDataSource.create = function(options) {\n if (isArray(options) || options instanceof kendo.data.ObservableArray) {\n options = { data: options };\n }\n\n var dataSource = options || {},\n data = dataSource.data;\n\n dataSource.data = data;\n\n if (!(dataSource instanceof SchedulerDataSource) && dataSource instanceof kendo.data.DataSource) {\n throw new Error(\"Incorrect DataSource type. Only SchedulerDataSource instances are supported\");\n }\n\n return dataSource instanceof SchedulerDataSource ? dataSource : new SchedulerDataSource(dataSource);\n };\n\n extend(true, kendo.data, {\n SchedulerDataSource: SchedulerDataSource,\n SchedulerDataReader: SchedulerDataReader,\n SchedulerEvent: SchedulerEvent\n });\n\n var defaultCommands = {\n update: {\n text: \"Save\",\n className: \"k-button-solid-primary k-scheduler-update\"\n },\n canceledit: {\n text: \"Cancel\",\n className: \"k-scheduler-cancel\"\n },\n destroy: {\n text: \"Delete\",\n icon: \"trash\",\n imageClass: \"k-i-trash\",\n className: \"k-button-solid-primary k-scheduler-delete\",\n iconClass: \"k-icon\"\n }\n };\n\n function trimOptions(options, overrideOptions) {\n delete options.name;\n delete options.prefix;\n\n delete options.remove;\n delete options.edit;\n delete options.add;\n delete options.navigate;\n\n for (var key in overrideOptions) {\n options[key] = overrideOptions[key];\n }\n\n return options;\n }\n\n /*\n function fieldType(field) {\n field = field != null ? field : \"\";\n return field.type || kendo.type(field) || \"string\";\n }\n */\n\n function descriptionEditor(options) {\n var attr = createValidationAttributes(options.model, options.field);\n\n return function(container, model) {\n $('