diff --git a/HISTORY.md b/HISTORY.md index de1c144f..412837d2 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -2,7 +2,7 @@ http://visjs.org -## not yet released, version 4.13.1-SNAPSHOT +## 2016-02-04, version 4.14.0 ### Timeline diff --git a/dist/vis.js b/dist/vis.js index c0c584f6..661263a5 100644 --- a/dist/vis.js +++ b/dist/vis.js @@ -4,8 +4,8 @@ * * A dynamic, browser-based visualization library. * - * @version 4.13.0 - * @date 2016-02-01 + * @version 4.14.0 + * @date 2016-02-04 * * @license * Copyright (C) 2011-2016 Almende B.V, http://almende.com @@ -1582,7 +1582,7 @@ return /******/ (function(modules) { // webpackBootstrap /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(module) {//! moment.js - //! version : 2.11.1 + //! version : 2.11.2 //! authors : Tim Wood, Iskren Chernev, Moment.js contributors //! license : MIT //! momentjs.com @@ -3399,7 +3399,7 @@ return /******/ (function(modules) { // webpackBootstrap } // ASP.NET json date format regex - var aspNetRegex = /(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/; + var aspNetRegex = /^(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?\d*)?$/; // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere @@ -5154,7 +5154,7 @@ return /******/ (function(modules) { // webpackBootstrap // Side effect imports - utils_hooks__hooks.version = '2.11.1'; + utils_hooks__hooks.version = '2.11.2'; setHookCallback(local__createLocal); @@ -7267,6 +7267,8 @@ return /******/ (function(modules) { // webpackBootstrap strokeWidth: 1 // px }; + this.dotSizeRatio = 0.02; // size of the dots as a fraction of the graph width + // create a frame and canvas this.create(); @@ -7985,6 +7987,8 @@ return /******/ (function(modules) { // webpackBootstrap if (options.yValueLabel !== undefined) this.yValueLabel = options.yValueLabel; if (options.zValueLabel !== undefined) this.zValueLabel = options.zValueLabel; + if (options.dotSizeRatio !== undefined) this.dotSizeRatio = options.dotSizeRatio; + if (options.style !== undefined) { var styleNumber = this._getStyleNumber(options.style); if (styleNumber !== -1) { @@ -8107,7 +8111,7 @@ return /******/ (function(modules) { // webpackBootstrap if (this.style === Graph3d.STYLE.DOTCOLOR || this.style === Graph3d.STYLE.DOTSIZE) { - var dotSize = this.frame.clientWidth * 0.02; + var dotSize = this.frame.clientWidth * this.dotSizeRatio; var widthMin, widthMax; if (this.style === Graph3d.STYLE.DOTSIZE) { @@ -8747,7 +8751,7 @@ return /******/ (function(modules) { // webpackBootstrap this.dataPoints.sort(sortDepth); // draw the datapoints as colored circles - var dotSize = this.frame.clientWidth * 0.02; // px + var dotSize = this.frame.clientWidth * this.dotSizeRatio; // px for (i = 0; i < this.dataPoints.length; i++) { var point = this.dataPoints[i]; @@ -15233,7 +15237,6 @@ return /******/ (function(modules) { // webpackBootstrap */ Core.prototype._create = function (container) { this.dom = {}; - this.options = {}; this.dom.container = container; diff --git a/dist/vis.map b/dist/vis.map index fd2326a8..83f7e60b 100644 --- a/dist/vis.map +++ b/dist/vis.map @@ -1 +1 @@ -{"version":3,"sources":["vis.js"],"names":["root","factory","exports","module","define","amd","this","modules","__webpack_require__","moduleId","installedModules","id","loaded","call","m","c","p","util","DOMutil","DataSet","DataView","Queue","Graph3d","graph3d","Camera","Filter","Point2d","Point3d","Slider","StepNumber","Timeline","Graph2d","timeline","Core","DateUtil","Range","stack","TimeStep","components","items","Item","BackgroundItem","BoxItem","PointItem","RangeItem","BackgroundGroup","Component","CurrentTime","CustomTime","DataAxis","DataScale","GraphGroup","Group","ItemSet","Legend","LineGraph","TimeAxis","Network","network","Images","dotparser","gephiParser","allOptions","convertDot","input","DOTToGraph","convertGephi","options","parseGephi","moment","Hammer","keycharm","uuid","isNumber","object","Number","recursiveDOMDelete","DOMobject","hasChildNodes","firstChild","removeChild","giveRange","min","max","total","value","scale","Math","isString","String","isDate","Date","match","ASPDateRegex","exec","isNaN","parse","randomUUID","v4","assignAllKeys","obj","prop","hasOwnProperty","fillIfDefined","a","b","allowDeletion","arguments","length","undefined","protoExtend","i","other","extend","selectiveExtend","props","Array","isArray","Error","selectiveDeepExtend","TypeError","constructor","Object","deepExtend","selectiveNotDeepExtend","indexOf","push","equalArray","len","convert","type","Boolean","valueOf","isMoment","toDate","getType","toISOString","copyAndExtendArray","arr","newValue","newArr","copyArray","getAbsoluteLeft","elem","getBoundingClientRect","left","getAbsoluteTop","top","addClassName","className","classes","split","join","removeClassName","index","splice","forEach","callback","toArray","array","updateProperty","key","throttle","fn","wait","timeout","needExecution","throttled","setTimeout","addEventListener","element","action","listener","useCapture","navigator","userAgent","attachEvent","removeEventListener","detachEvent","preventDefault","event","window","returnValue","getTarget","target","srcElement","nodeType","parentNode","hasParent","parent","e","option","asBoolean","defaultValue","asNumber","asString","asSize","asElement","hexToRGB","hex","shorthandRegex","replace","r","g","result","parseInt","overrideOpacity","color","opacity","rgb","substr","RGBToHex","red","green","blue","toString","slice","parseColor","isValidRGB","map","isValidHex","hsv","hexToHSV","lighterColorHSV","h","s","v","darkerColorHSV","darkerColorHex","HSVToHex","lighterColorHex","background","border","highlight","hover","RGBToHSV","minRGB","maxRGB","d","hue","saturation","cssUtil","cssText","styles","style","trim","parts","keys","addCssText","currentStyles","newStyles","removeCssText","removeStyles","HSVToRGB","floor","f","q","t","isOk","test","isValidRGBA","rgba","selectiveBridgeObject","fields","referenceObject","objectTo","create","bridgeObject","insertSort","compare","k","j","mergeOptions","mergeTarget","globalOptions","enabled","binarySearchCustom","orderedItems","comparator","field","field2","maxIterations","iteration","low","high","middle","item","searchResult","binarySearchValue","sidePreference","prevValue","nextValue","easingFunctions","linear","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","global","utils_hooks__hooks","hookCallback","apply","setHookCallback","prototype","res","hasOwnProp","create_utc__createUTC","format","locale","strict","createLocalOrUTC","utc","defaultParsingFlags","empty","unusedTokens","unusedInput","overflow","charsLeftOver","nullInput","invalidMonth","invalidFormat","userInvalidated","iso","getParsingFlags","_pf","valid__isValid","_isValid","flags","_d","getTime","invalidWeekday","_strict","bigHour","valid__createInvalid","NaN","isUndefined","copyConfig","to","from","val","_isAMomentObject","_i","_f","_l","_tzm","_isUTC","_offset","_locale","momentProperties","Moment","config","updateInProgress","updateOffset","absFloor","number","ceil","toInt","argumentForCoercion","coercedNumber","isFinite","compareArrays","array1","array2","dontConvert","lengthDiff","abs","diffs","Locale","normalizeLocale","toLowerCase","chooseLocale","names","next","loadLocale","name","oldLocale","locales","globalLocale","_abbr","code","locale_locales__getSetGlobalLocale","values","data","locale_locales__getLocale","defineLocale","abbr","set","addUnitAlias","unit","shorthand","lowerCase","aliases","normalizeUnits","units","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","isFunction","Function","makeGetSet","keepTime","get_set__set","get_set__get","mom","isValid","getSet","zeroFill","targetLength","forceSign","absNumber","zerosToFill","sign","pow","addFormatToken","token","padded","ordinal","func","formatTokenFunctions","localeData","removeFormattingTokens","makeFormatFunction","formattingTokens","output","formatMoment","expandFormat","formatFunctions","invalidDate","replaceLongDateFormatTokens","longDateFormat","localFormattingTokens","lastIndex","addRegexToken","regex","strictRegex","regexes","isStrict","getParseRegexForToken","RegExp","unescapeFormat","regexEscape","matched","p1","p2","p3","p4","addParseToken","tokens","addWeekParseToken","_w","addTimeToArrayFromToken","_a","daysInMonth","year","month","UTC","getUTCDate","localeMonths","_months","MONTHS_IN_FORMAT","localeMonthsShort","_monthsShort","localeMonthsParse","monthName","_monthsParse","_longMonthsParse","_shortMonthsParse","months","monthsShort","setMonth","dayOfMonth","monthsParse","date","getSetMonth","getDaysInMonth","monthsShortRegex","_monthsParseExact","computeMonthsParse","_monthsShortStrictRegex","_monthsShortRegex","monthsRegex","_monthsStrictRegex","_monthsRegex","cmpLenRev","shortPieces","longPieces","mixedPieces","sort","checkOverflow","MONTH","DATE","YEAR","HOUR","MINUTE","SECOND","MILLISECOND","_overflowDayOfYear","_overflowWeeks","WEEK","_overflowWeekday","WEEKDAY","warn","msg","suppressDeprecationWarnings","console","deprecate","firstTime","deprecateSimple","deprecations","configFromISO","l","allowTime","dateFormat","timeFormat","tzFormat","string","extendedIsoRegex","basicIsoRegex","isoDates","isoTimes","tzRegex","configFromStringAndFormat","configFromString","aspNetJsonRegex","createFromInputFallback","createDate","y","M","ms","getFullYear","setFullYear","createUTCDate","getUTCFullYear","setUTCFullYear","daysInYear","isLeapYear","getIsLeapYear","firstWeekOffset","dow","doy","fwd","fwdlw","getUTCDay","dayOfYearFromWeeks","week","weekday","resYear","resDayOfYear","localWeekday","weekOffset","dayOfYear","weekOfYear","resWeek","weeksInYear","weekOffsetNext","defaults","currentDateArray","nowValue","now","_useUTC","getUTCMonth","getMonth","getDate","configFromArray","currentDate","yearToUse","dayOfYearFromWeekInfo","_dayOfYear","_nextDay","setUTCMinutes","getUTCMinutes","w","weekYear","temp","weekdayOverflow","GG","W","E","local__createLocal","_week","gg","ISO_8601","parsedInput","skipped","stringLength","totalParsedInputLength","meridiemFixWrap","_meridiem","hour","meridiem","isPm","meridiemHour","isPM","configFromStringAndArray","tempConfig","bestMoment","scoreToBeat","currentScore","score","configFromObject","day","minute","second","millisecond","createFromConfig","prepareConfig","add","preparse","configFromInput","isUTC","pickBy","moments","args","Duration","duration","years","quarters","quarter","weeks","days","hours","minutes","seconds","milliseconds","_milliseconds","_days","_data","_bubble","isDuration","offset","separator","utcOffset","offsetFromString","matcher","matches","chunk","chunkOffset","cloneWithOffset","model","diff","clone","setTime","local","getDateOffset","round","getTimezoneOffset","getSetOffset","keepLocalTime","localAdjust","matchShortOffset","_changeInProgress","add_subtract__addSubtract","create__createDuration","getSetZone","setOffsetToUTC","setOffsetToLocal","subtract","setOffsetToParsedOffset","matchOffset","hasAlignedHourOffset","isDaylightSavingTime","isDaylightSavingTimeShifted","_isDSTShifted","isLocal","isUtcOffset","isUtc","ret","diffRes","aspNetRegex","isoRegex","parseIso","momentsDifference","inp","parseFloat","positiveMomentsDifference","base","isAfter","isBefore","createAdder","direction","period","dur","tmp","isAdding","moment_calendar__calendar","time","formats","sod","startOf","calendar","localInput","endOf","isBetween","isSame","inputMs","isSameOrAfter","isSameOrBefore","asFloat","that","zoneDelta","delta","monthDiff","anchor2","adjust","wholeMonthDiff","anchor","moment_format__toISOString","inputString","defaultFormat","postformat","withoutSuffix","humanize","fromNow","toNow","newLocaleData","isoWeekday","to_type__valueOf","unix","toObject","toJSON","moment_valid__isValid","parsingFlags","invalidAt","creationData","addWeekYearFormatToken","getter","getSetWeekYear","getSetWeekYearHelper","getSetISOWeekYear","isoWeek","getISOWeeksInYear","getWeeksInYear","weekInfo","weeksTarget","setWeekAll","dayOfYearData","getSetQuarter","localeWeek","localeFirstDayOfWeek","localeFirstDayOfYear","getSetWeek","getSetISOWeek","parseWeekday","weekdaysParse","localeWeekdays","_weekdays","isFormat","localeWeekdaysShort","_weekdaysShort","localeWeekdaysMin","_weekdaysMin","localeWeekdaysParse","weekdayName","_weekdaysParse","_minWeekdaysParse","_shortWeekdaysParse","_fullWeekdaysParse","weekdays","weekdaysShort","weekdaysMin","getSetDayOfWeek","getDay","getSetLocaleDayOfWeek","getSetISODayOfWeek","getSetDayOfYear","hFormat","lowercase","matchMeridiem","_meridiemParse","localeIsPM","charAt","localeMeridiem","isLower","parseMs","getZoneAbbr","getZoneName","moment__createUnix","moment__createInZone","parseZone","locale_calendar__calendar","_calendar","_longDateFormat","formatUpper","toUpperCase","_invalidDate","_ordinal","preParsePostFormat","relative__relativeTime","isFuture","_relativeTime","pastFuture","locale_set__set","_ordinalParseLenient","_ordinalParse","source","lists__get","setter","list","count","out","lists__listMonths","lists__listMonthsShort","lists__listWeekdays","lists__listWeekdaysShort","lists__listWeekdaysMin","duration_abs__abs","mathAbs","duration_add_subtract__addSubtract","duration_add_subtract__add","duration_add_subtract__subtract","absCeil","bubble","monthsFromDays","monthsToDays","daysToMonths","as","duration_as__valueOf","makeAs","alias","duration_get__get","makeGetter","substituteTimeAgo","relativeTime","duration_humanize__relativeTime","posNegDuration","thresholds","duration_humanize__getSetRelativeTimeThreshold","threshold","limit","withSuffix","iso_string__toISOString","iso_string__abs","Y","D","asSeconds","match1","match2","match3","match4","match6","match1to2","match3to4","match5to6","match1to3","match1to4","match1to6","matchUnsigned","matchSigned","matchTimestamp","matchWord","defaultLocaleMonths","defaultLocaleMonthsShort","defaultMonthsShortRegex","defaultMonthsRegex","parseTwoDigitYear","getSetYear","prototypeMin","prototypeMax","add_subtract__add","add_subtract__subtract","lang","isoWeekYear","defaultLocaleWeek","getSetDayOfMonth","defaultLocaleWeekdays","defaultLocaleWeekdaysShort","defaultLocaleWeekdaysMin","_isPm","pos","pos1","pos2","defaultLocaleMeridiemParse","getSetHour","getSetMinute","getSetSecond","getSetMillisecond","momentPrototype__proto","get","isoWeeks","isoWeeksInYear","isDST","isDSTShifted","zoneAbbr","zoneName","dates","zone","momentPrototype","defaultCalendar","sameDay","nextDay","nextWeek","lastDay","lastWeek","sameElse","defaultLongDateFormat","LTS","LT","L","LL","LLL","LLLL","defaultInvalidDate","defaultOrdinal","defaultOrdinalParse","defaultRelativeTime","future","past","mm","hh","dd","MM","yy","prototype__proto","firstDayOfYear","firstDayOfWeek","ordinalParse","langData","asMilliseconds","asMinutes","asHours","asDays","asWeeks","asMonths","asYears","duration_prototype__proto","toIsoString","version","invalid","relativeTimeThreshold","_moment","webpackPolyfill","paths","children","webpackContext","req","resolve","buf","ii","oct","_hexToByte","unparse","bth","_byteToHex","v1","clockseq","_clockseq","msecs","nsecs","_lastNSecs","dt","_lastMSecs","tl","tmh","node","_nodeId","n","rnds","random","rng","_rng","globalVar","crypto","getRandomValues","_rnds8","Uint8Array","_rnds","_seedBytes","prepareElements","JSONcontainer","elementType","redundant","used","cleanupElements","resetElements","getSVGElement","svgContainer","shift","document","createElementNS","appendChild","getDOMElement","DOMContainer","insertBefore","createElement","drawPoint","x","groupTemplate","labelObj","point","setAttributeNS","size","label","xOffset","yOffset","content","textContent","drawBar","width","height","rect","_options","_fieldId","fieldId","_type","_subscribers","setOptions","queue","_queue","destroy","on","subscribers","subscribe","off","filter","unsubscribe","_trigger","params","senderId","concat","subscriber","addedIds","me","_addItem","update","updatedIds","oldData","updatedData","addOrUpdate","oldItem","_updateItem","ids","firstType","returnType","allowedValues","itemIds","itemId","_getItem","order","_sort","_filterFields","resultant","getIds","getDataSet","mappedItems","filteredItem","itemFields","av","bv","remove","removedId","removedIds","_remove","clear","maxField","itemField","minField","distinct","fieldType","exists","types","raw","converted","JSON","stringify","delay","Infinity","_timeout","_extended","_flushIfNeeded","flush","methods","original","method","context","entry","clearTimeout","_ids","_onEvent","setData","refresh","oldIds","newIds","added","removed","viewOptions","getArguments","defaultFilter","dataSet","updated","container","SyntaxError","containerElement","margin","defaultXCenter","defaultYCenter","xLabel","yLabel","zLabel","passValueFn","xValueLabel","yValueLabel","zValueLabel","filterLabel","legendLabel","STYLE","DOT","showPerspective","showGrid","keepAspectRatio","showShadow","showGrayBottom","showTooltip","verticalRatio","animationInterval","animationPreload","camera","setArmRotation","setArmLength","eye","dataTable","dataPoints","colX","colY","colZ","colValue","colFilter","xMin","xStep","xMax","yMin","yStep","yMax","zMin","zStep","zMax","valueMin","valueMax","xBarWidth","yBarWidth","axisColor","gridColor","dataColor","fill","stroke","strokeWidth","getMouseX","clientX","targetTouches","getMouseY","clientY","Emitter","_setScale","z","xCenter","yCenter","zCenter","setArmLocation","_convert3Dto2D","point3d","translation","_convertPointToTranslation","_convertTranslationToScreen","ax","ay","az","cx","getCameraLocation","cy","cz","sinTx","sin","getCameraRotation","cosTx","cos","sinTy","cosTy","sinTz","cosTz","dx","dy","dz","bx","by","ex","ey","ez","getArmLength","xcenter","frame","canvas","clientWidth","ycenter","_setBackgroundColor","backgroundColor","borderColor","borderWidth","borderStyle","BAR","BARCOLOR","BARSIZE","DOTLINE","DOTCOLOR","DOTSIZE","GRID","LINE","SURFACE","_getStyleNumber","styleName","_determineColumnIndexes","getNumberOfColumns","getNumberOfRows","counter","column","getDistinctValues","distinctValues","getColumnRange","minMax","_dataInitialize","rawData","_onChange","dataFilter","setOnLoadCallback","redraw","withBars","defaultXBarWidth","dataX","defaultYBarWidth","dataY","xRange","defaultXMin","defaultXMax","defaultXStep","yRange","defaultYMin","defaultYMax","defaultYStep","zRange","defaultZMin","defaultZMax","defaultZStep","valueRange","defaultValueMin","defaultValueMax","_getDataPoints","sortNumber","dataMatrix","xIndex","yIndex","trans","screen","bottom","pointRight","pointTop","pointCross","position","noCanvas","fontWeight","padding","innerHTML","onmousedown","_onMouseDown","ontouchstart","_onTouchStart","onmousewheel","_onWheel","ontooltip","_onTooltip","onkeydown","setSize","_resizeCanvas","clientHeight","animationStart","slider","play","animationStop","stop","_resizeCenter","setCameraPosition","horizontal","vertical","distance","getCameraPosition","getArmRotation","_readData","_redrawFilter","animationAutoStart","cameraPosition","styleNumber","tooltip","showAnimationControls","_redrawSlider","_redrawClear","_redrawAxis","_redrawDataGrid","_redrawDataLine","_redrawDataBar","_redrawDataDot","_redrawInfo","_redrawLegend","ctx","getContext","clearRect","widthMin","widthMax","dotSize","right","lineWidth","font","ymin","ymax","_hsv2rgb","strokeStyle","beginPath","moveTo","lineTo","strokeRect","fillStyle","closePath","gridLineLen","step","start","getCurrent","end","textAlign","textBaseline","fillText","visible","setValues","setPlayInterval","onchange","getIndex","selectValue","setOnChangeCallback","lineStyle","getLabel","getSelectedValue","prettyStep","text","xText","yText","zText","xMin2d","xMax2d","gridLenX","gridLenY","textMargin","armAngle","H","S","V","R","G","B","C","Hi","X","cross","topSideVisible","zAvg","lineJoin","lineCap","transBottom","dist","sortDepth","aDiff","bDiff","crossproduct","crossProduct","_getStrokeWidth","radius","arc","PI","surface","corners","xWidth","yWidth","surfaces","center","avg","transCenter","leftButtonDown","_onMouseUp","which","button","touchDown","startMouseX","startMouseY","startStart","startEnd","startArmRotation","cursor","onmousemove","_onMouseMove","onmouseup","diffX","diffY","horizontalNew","verticalNew","snapAngle","snapValue","parameters","emit","boundingRect","mouseX","mouseY","tooltipTimeout","_hideTooltip","dataPoint","_dataPointFromXY","_showTooltip","ontouchmove","_onTouchMove","ontouchend","_onTouchEnd","wheelDelta","detail","oldLength","newLength","_insideTriangle","triangle","bs","cs","distMax","closestDataPoint","closestDist","triangle1","triangle2","distX","distY","sqrt","line","dot","dom","borderRadius","boxShadow","borderLeft","contentWidth","offsetWidth","contentHeight","offsetHeight","lineHeight","dotWidth","dotHeight","mixin","_callbacks","once","self","removeListener","removeAllListeners","callbacks","cb","listeners","hasListeners","sub","sum","armLocation","armRotation","armLength","cameraLocation","cameraRotation","calculateCameraOrientation","rot","graph","onLoadCallback","loadInBackground","isLoaded","getLoadedProgress","getColumn","getValues","getValue","dataView","progress","prev","bar","MozBorderRadius","slide","onclick","togglePlay","onChangeCallback","playTimeout","playInterval","playLoop","setIndex","playNext","interval","clearInterval","getPlayInterval","setPlayLoop","doLoop","onChange","indexToLeft","startClientX","startSlideX","leftToIndex","_start","_end","_step","precision","_current","setRange","setStep","calculatePrettyStep","log10","log","LN10","step1","step2","step5","toPrecision","getStep","groups","forthArgument","defaultOptions","autoResize","throttleRedraw","orientation","axis","maxHeight","minHeight","_create","body","domProps","emitter","bind","hiddenDates","getScale","timeAxis","toScreen","_toScreen","toGlobalScreen","_toGlobalScreen","toTime","_toTime","toGlobalTime","_toGlobalTime","range","timeAxis2","currentTime","itemSet","itemsData","groupsData","getEventProperties","oncontextmenu","fitDone","getItemRange","setWindow","animation","fit","setGroups","setItems","_redraw","Configurator","Validator","printStyle","configureOptions","_createConfigurator","markDirty","refreshItems","errorFound","validate","selection","getSelection","setSelection","newDataSet","focus","itemData","_this","getDataRange","minItem","maxItem","factor","lhs","rhs","getStart","getEnd","show","repositionX","getWidthLeft","getWidthRight","dataset","centerContainer","itemFromTarget","group","groupFromTarget","customTime","customTimeFromTarget","snap","snappedTime","what","foreground","labelSet","groupId","pageX","srcEvent","pageY","propagating","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","_firstTarget","hammer","events","propagatedHandler","_handled","stopped","stopPropagation","srcStop","firstTarget","elemHammer","_handlers","Manager","PropagatingHammer","o","assign","wrapper","pointerType","isFirst","handler","eventType","hammers","idx","exportName","setTimeoutContext","bindFn","invokeArrayArg","arg","each","iterator","message","deprecationMessage","inherit","child","properties","childP","baseP","_super","boolOrFn","TYPE_FUNCTION","ifUndefined","val1","val2","addEventListeners","splitStr","removeEventListeners","inStr","str","find","inArray","src","findByKey","uniqueArray","results","prefixed","property","prefix","camelProp","VENDOR_PREFIXES","uniqueId","_uniqueId","getWindowForElement","doc","ownerDocument","defaultView","parentWindow","Input","manager","inputTarget","domHandler","ev","enable","init","createInputInstance","Type","inputClass","SUPPORT_POINTER_EVENTS","PointerEventInput","SUPPORT_ONLY_TOUCH","TouchInput","SUPPORT_TOUCH","TouchMouseInput","MouseInput","inputHandler","pointersLen","pointers","changedPointersLen","changedPointers","INPUT_START","isFinal","INPUT_END","INPUT_CANCEL","session","computeInputData","recognize","prevInput","pointersLength","firstInput","simpleCloneInputData","firstMultiple","offsetCenter","getCenter","timeStamp","deltaTime","angle","getAngle","getDistance","computeDeltaXY","offsetDirection","getDirection","deltaX","deltaY","overallVelocity","getVelocity","overallVelocityX","overallVelocityY","rotation","getRotation","maxPointers","computeIntervalInputData","offsetDelta","prevDelta","velocity","velocityX","velocityY","last","lastInterval","COMPUTE_INTERVAL","DIRECTION_NONE","DIRECTION_LEFT","DIRECTION_RIGHT","DIRECTION_UP","DIRECTION_DOWN","PROPS_XY","atan2","PROPS_CLIENT_XY","evEl","MOUSE_ELEMENT_EVENTS","evWin","MOUSE_WINDOW_EVENTS","allow","pressed","POINTER_ELEMENT_EVENTS","POINTER_WINDOW_EVENTS","store","pointerEvents","SingleTouchInput","evTarget","SINGLE_TOUCH_TARGET_EVENTS","SINGLE_TOUCH_WINDOW_EVENTS","started","normalizeSingleTouches","all","touches","changed","changedTouches","TOUCH_TARGET_EVENTS","targetIds","getTouches","allTouches","INPUT_MOVE","identifier","changedTargetTouches","touch","mouse","TouchAction","cleanTouchActions","actions","TOUCH_ACTION_NONE","hasPanX","TOUCH_ACTION_PAN_X","hasPanY","TOUCH_ACTION_PAN_Y","TOUCH_ACTION_MANIPULATION","TOUCH_ACTION_AUTO","Recognizer","state","STATE_POSSIBLE","simultaneous","requireFail","stateStr","STATE_CANCELLED","STATE_ENDED","STATE_CHANGED","STATE_BEGAN","directionStr","getRecognizerByNameIfManager","otherRecognizer","recognizer","AttrRecognizer","PanRecognizer","pX","pY","PinchRecognizer","PressRecognizer","_timer","_input","RotateRecognizer","SwipeRecognizer","TapRecognizer","pTime","pCenter","recognizers","preset","handlers","touchAction","toggleCssProps","recognizeWith","requireFailure","cssProps","triggerDomEvent","gestureEvent","createEvent","initEvent","gesture","dispatchEvent","TEST_ELEMENT","nextKey","dest","merge","MOBILE_REGEX","INPUT_TYPE_TOUCH","INPUT_TYPE_PEN","INPUT_TYPE_MOUSE","INPUT_TYPE_KINECT","DIRECTION_HORIZONTAL","DIRECTION_VERTICAL","DIRECTION_ALL","MOUSE_INPUT_MAP","mousedown","mousemove","mouseup","POINTER_INPUT_MAP","pointerdown","pointermove","pointerup","pointercancel","pointerout","IE10_POINTER_TYPE_ENUM",2,3,4,5,"MSPointerEvent","PointerEvent","removePointer","eventTypeNormalized","isTouch","storeIndex","pointerId","SINGLE_TOUCH_INPUT_MAP","touchstart","touchmove","touchend","touchcancel","TOUCH_INPUT_MAP","inputEvent","inputData","isMouse","PREFIXED_TOUCH_ACTION","NATIVE_TOUCH_ACTION","TOUCH_ACTION_COMPUTE","compute","getTouchAction","preventDefaults","prevented","hasNone","isTapPointer","isTapMovement","isTapTouchTime","preventSrc","STATE_RECOGNIZED","STATE_FAILED","dropRecognizeWith","dropRequireFailure","hasRequireFailures","canRecognizeWith","additionalEvent","tryEmit","canEmit","inputDataClone","process","reset","attrTest","optionPointers","isRecognized","directionTest","hasMoved","inOut","validPointers","validMovement","validTime","taps","posThreshold","validTouchTime","failTimeout","validInterval","validMultiTap","tapCount","VERSION","domEvents","userSelect","touchSelect","touchCallout","contentZooming","userDrag","tapHighlightColor","STOP","FORCED_STOP","force","curRecognizer","existing","Tap","Pan","Swipe","Pinch","Rotate","Press","freeGlobal","deltaDifference","scaleOffset","startToFront","endToFront","moveable","zoomable","zoomMin","zoomMax","animationTimer","_onDragStart","_onDrag","_onDragEnd","_onMouseWheel","_onTouch","_onPinch","validateDirection","getPointer","byUser","finalStart","finalEnd","_cancelAnimation","initStart","initEnd","easingName","easingFunction","initTime","anyChanged","dragging","ease","done","_applyRange","updateHiddenDates","newStart","newEnd","getRange","conversion","totalHidden","previousDelta","_isInsideRange","allowDragging","getHiddenDurationBetween","diffRange","safeStart","snapAwayFromHidden","safeEnd","startDate","endDate","zoomKey","pointer","pointerDate","_pointerToDate","zoom","centerDate","hiddenDuration","hiddenDurationBefore","getHiddenDurationBefore","hiddenDurationAfter","move","onTouch","onRelease","offTouch","offRelease","_isResized","resized","_previousWidth","_previousHeight","convertHiddenOptions","repeat","dateItem","totalRange","pixelTime","runUntil","dayOffset","removeDuplicates","startHidden","isHidden","endHidden","rangeStart","rangeEnd","hidden","safeDates","printDates","stepOverHiddenDates","timeStep","previousTime","stepInHidden","currentValue","current","switchedYear","switchedMonth","switchedDay","correctTimeForHidden","totalDuration","partialDuration","accumulatedHiddenDuration","getAccumulatedHiddenDuration","newTime","timeOffset","requiredDuration","previousPoint","correctionEnabled","hammerUtil","Activator","onMouseWheel","isActive","backgroundVertical","backgroundHorizontal","leftContainer","rightContainer","shadowTop","shadowBottom","shadowTopLeft","shadowBottomLeft","shadowTopRight","shadowBottomRight","initialDrawDone","_redrawTimer","scrollTop","scrollTopMin","customTimes","redrawCount","drawPoints","onRender","clickToUse","activator","_initAutoResize","component","configurator","configure","appliedOptions","setModuleOptions","_origRedraw","active","_stopAutoResize","setCustomTime","getCustomTime","setCustomTimeTitle","title","setCustomTitle","addCustomTime","timestamp","some","removeCustomTime","getVisibleItems","getWindow","borderRootHeight","borderRootWidth","autoHeight","containerHeight","centerWidth","_updateScrollTop","visibilityTop","visibilityBottom","visibility","MAX_REDRAW","repaint","setCurrentTime","getCurrentTime","_startAutoResize","_onResize","lastWidth","lastHeight","watchTimer","setInterval","initialScrollTop","oldScrollTop","_getScrollTop","newScrollTop","_setScrollTop","align","groupOrderSwap","fromGroup","toGroup","targetOrder","groupOrder","selectable","multiselect","itemsAlwaysDraggable","editable","updateTime","updateGroup","groupEditable","onAdd","onUpdate","onMove","onRemove","onMoving","onAddGroup","onMoveGroup","onRemoveGroup","itemOptions","itemListeners","_onAdd","_onUpdate","_onRemove","groupListeners","_onAddGroups","_onUpdateGroups","_onRemoveGroups","groupIds","stackDirty","touchParams","groupTouchParams","UNGROUPED","BACKGROUND","box","_updateUngrouped","backgroundGroup","_onSelectItem","_onMultiSelectItem","_onAddItem","groupHammer","_onGroupDragStart","_onGroupDrag","_onGroupDragEnd","addCallback","dirty","displayed","hide","unselect","select","rawVisibleItems","visibleItems","_deselect","_orderGroups","visibleInterval","zoomed","lastVisibleInterval","restack","firstGroup","_firstGroup","firstMargin","nonFirstMargin","groupMargin","groupResized","firstGroupIndex","firstGroupId","ungrouped","_getGroupId","getLabelSet","oldItemsData","getItems","_order","getGroups","removeItem","_getType","selected","_removeItem","groupData","groupOptions","oldGroupId","oldSubGroupId","subgroup","oldGroup","_constructByEndArray","endArray","dragLeftItem","dragRightItem","itemProps","_getGroupIndex","initialX","dragLeft","_cloneItemData","dragRight","selectedItem","baseGroupIndex","itemsToDrag","groupIndex","groupOffset","ctrlKey","metaKey","_onDragStartAddItem","xAbs","newItem","offsetLeft","updateGroupAllowed","newGroupBase","initial","updateTimeAllowed","initialStart","initialEnd","newOffset","_moveToGroup","originalOrder","movingUp","targetGroupTop","draggedGroupHeight","targetGroupHeight","targetGroup","draggedGroup","newOrder","origOrder","draggedId","numGroups","curPos","orgOffset","slippedPosition","switchGroup","shouldBeGroup","switchGroupId","shiftKey","oldSelection","newSelection","newItemData","itemGroup","lastSelectedGroup","multiselectPerGroup","_getItemRange","_item","itemSetFromTarget","minimumStep","autoScale","FORMAT","minorLabels","majorLabels","setMoment","setFormat","setMinimumStep","roundToMinor","hasNext","setScale","setAutoScale","stepYear","stepMonth","stepDay","stepHour","stepMinute","stepSecond","stepMillisecond","isMajor","getLabelMinor","getLabelMajor","getClassName","even","today","currentWeek","currentMonth","currentYear","subgroups","subgroupIndex","subgroupOrderer","subgroupOrder","byStart","byEnd","checkRangedItems","inner","marker","Element","getLabelWidth","markerHeight","lastMarkerHeight","_calculateSubGroupHeights","limitSize","customOrderedItems","_updateVisibleItems","nostack","_calculateHeight","offsetTop","repositionY","resetSubgroups","setParent","orderSubgroups","_checkIfVisible","sortArray","sortField","itemIndex","removeFromDataSet","startArray","orderByStart","orderByEnd","oldVisibleItems","visibleItemsLookup","lowerBound","upperBound","searchFunction","_checkIfVisibleWithReference","initialPosByStart","_traceVisible","initialPosByEnd","initialPos","breakCondition","isVisible","EPSILON","aTime","bTime","iMax","collidingItem","jj","collision","newTop","baseClassName","_updateContents","_updateTitle","_updateDataAttributes","_updateStyle","getComputedStyle","maxWidth","_repaintDeleteButton","_repaintDragLeft","_repaintDragRight","contentLeft","parentWidth","boxWidth","groupChanged","deleteButton","template","_contentToString","removeAttribute","dataAttributes","attributes","setAttribute","outerHTML","itemSetHeight","marginLeft","onTop","itemSubgroup","totalHeight","newHeight","lines","majorTexts","minorTexts","lineTop","showMinorLabels","showMajorLabels","maxMinorChars","parentChanged","_calculateCharSize","minorLabelHeight","minorCharHeight","majorLabelHeight","majorCharHeight","minorLineHeight","minorLineWidth","majorLineHeight","majorLineWidth","foregroundNextSibling","nextSibling","backgroundNextSibling","_repaintLabels","timeLabelsize","minorCharWidth","xNext","nextIsMajor","prevWidth","labelMinor","xFirstMajorLabel","MAX","showMinorGrid","_repaintMinorText","_repaintMajorText","_repaintMajorLine","_repaintMinorLine","warnedForOverflow","leftTime","leftText","widthText","majorCharWidth","pop","createTextNode","childNodes","nodeValue","measureCharMinor","measureCharMajor","overlay","_onTapOverlay","onClick","_hasParent","deactivate","escListener","activate","display","unbind","_exportFunctions","_bound","keydown","keyup","_keys","fromCharCode","down","handleEvent","up","keyCode","bound","bindAll","getKey","newBindings","eventParams","drag","warned","substring","showCurrentTime","currentTimeTimer","_interopRequireDefault","__esModule","default","_classCallCheck","instance","Constructor","defineProperty","_createClass","defineProperties","descriptor","enumerable","configurable","writable","protoProps","staticProps","_ColorPicker","_ColorPicker2","parentModule","defaultContainer","pixelRatio","changedOptions","allowCreation","initialized","popupCounter","showButton","moduleOptions","domElements","popupDiv","popupLimit","popupHistory","colorPicker","_removePopup","_clean","_handleObject","_makeItem","_makeHeader","generateButton","_printOptions","onmouseover","onmouseout","optionsContainer","_push","_showPopupIfNeeded","path","_arguments","_this2","_len","_key","_ret2","div","objectLabel","selectedValue","_update","_makeLabel","err","popupString","popupValue","oninput","_setupPopup","_this3","html","hideTimeout","deleteTimeout","_this4","correspondingElement","checkbox","checked","_this5","defaultColor","_showColorPicker","_this6","insertTo","setColor","setUpdateCallback","colorString","setCloseCallback","checkOnly","visibleInSet","subObj","newPath","_getValue","_handleArray","_makeTextInput","_makeCheckbox","draw","physics","solver","enabledPath","enabledValue","error","_makeColorField","_makeDropdown","_makeRange","_constructOptions","optionsObj","getOptions","ColorPicker","generated","centerCoordinates","hueCircle","initialColor","previousColor","applied","updateCallback","closeCallback","_bindHammer","_setSize","htmlColors","black","navy","darkblue","mediumblue","darkgreen","teal","darkcyan","deepskyblue","darkturquoise","mediumspringgreen","lime","springgreen","aqua","cyan","midnightblue","dodgerblue","lightseagreen","forestgreen","seagreen","darkslategray","limegreen","mediumseagreen","turquoise","royalblue","steelblue","darkslateblue","mediumturquoise","indigo","darkolivegreen","cadetblue","cornflowerblue","mediumaquamarine","dimgray","slateblue","olivedrab","slategray","lightslategray","mediumslateblue","lawngreen","chartreuse","aquamarine","maroon","purple","olive","gray","skyblue","lightskyblue","blueviolet","darkred","darkmagenta","saddlebrown","darkseagreen","lightgreen","mediumpurple","darkviolet","palegreen","darkorchid","yellowgreen","sienna","brown","darkgray","lightblue","greenyellow","paleturquoise","lightsteelblue","powderblue","firebrick","darkgoldenrod","mediumorchid","rosybrown","darkkhaki","silver","mediumvioletred","indianred","peru","chocolate","tan","lightgrey","palevioletred","thistle","orchid","goldenrod","crimson","gainsboro","plum","burlywood","lightcyan","lavender","darksalmon","violet","palegoldenrod","lightcoral","khaki","aliceblue","honeydew","azure","sandybrown","wheat","beige","whitesmoke","mintcream","ghostwhite","salmon","antiquewhite","linen","lightgoldenrodyellow","oldlace","fuchsia","magenta","deeppink","orangered","tomato","hotpink","coral","darkorange","lightsalmon","orange","lightpink","pink","gold","peachpuff","navajowhite","moccasin","bisque","mistyrose","blanchedalmond","papayawhip","lavenderblush","seashell","cornsilk","lemonchiffon","floralwhite","snow","yellow","lightyellow","ivory","white","setInitial","htmlColor","_isColorString","rgbaArray","rgbObj","alpha","_setColor","_generateHueCircle","storePrevious","_hide","_updatePicker","alert","angleConvert","colorPickerSelector","colorPickerCanvas","pixelRation","devicePixelRatio","webkitBackingStorePixelRatio","mozBackingStorePixelRatio","msBackingStorePixelRatio","oBackingStorePixelRatio","backingStorePixelRatio","setTransform","putImageData","circle","brightnessRange","opacityRange","initialColorDiv","newColorDiv","colorPickerDiv","opacityDiv","brightnessDiv","arrowDiv","_setOpacity","_setBrightness","brightnessLabel","opacityLabel","cancelButton","applyButton","_apply","saveButton","_save","loadButton","_loadLast","pinch","_moveSelector","sat","hfac","sfac","fillRect","getImageData","centerY","centerX","newLeft","referenceOptions","subObject","usedOptions","check","__any__","getSuggestion","__type__","checkFields","referenceOption","refOptionObj","optionType","refOptionType","print","printLocation","localSearch","findInOptions","globalSearch","localSearchThreshold","globalSearchThreshold","indexMatch","closestMatch","recursive","closestMatchPath","lowerCaseOption","op","levenshteinDistance","matrix","boolean","any","function","null","groupsDraggable","linegraph","initialLoad","getLegend","isGroupVisible","yAxisLeft","yAxisRight","legendLeft","legendRight","screenToValue","yAxisOrientation","defaultGroup","sampling","graphHeight","shaded","barChart","sideBySide","interpolation","parametrization","dataAxis","legend","abortedGraphUpdate","updateSVGheight","updateSVGheightOnResize","forceGraphUpdate","lastStart","svgElements","groupsUsingDefaultStyles","svg","framework","Bars","Lines","Points","_removeGroup","_updateAllGroupData","removeGroup","_updateGroup","addGroup","groupsContent","groupCounts","extended","orginalY","_updateGraph","rangePerPixelInv","_getSortedGroupIds","grouplist","zIndex","bz","groupRanges","changeCalled","minDate","maxDate","_getRelevantData","_applySampling","_convertXcoordinates","_getYRanges","_updateYAxis","below","excludeFromStacking","_stack","_convertYcoordinates","calcPath","subGroupId","drawShading","subData","subPrevPoint","subNextPoint","dateComparator","first","dataContainer","increment","amountOfPoints","xDistance","pointsPerPixel","sampledData","combinedDataLeft","combinedDataRight","getYRange","getStackedYRange","minVal","maxVal","yAxisLeftUsed","yAxisRightUsed","minLeft","minRight","maxLeft","maxRight","ignore","_toggleAxisVisiblity","drawIcons","master","masterAxis","lineOffset","tempGroups","axisUsed","datapoints","screen_x","screen_y","svgHeight","convertValue","setZeroPosition","linegraphOptions","icons","majorLinesOffset","minorLinesOffset","labelOffsetX","labelOffsetY","iconWidth","alignZeros","linegraphSVG","DOMelements","labels","conversionFactor","minWidth","stepPixels","zeroCrossing","amountOfSteps","iconsRemoved","amountOfGroups","lineContainer","graphOptions","_redrawGroupIcons","iconHeight","iconOffset","groupArray","_cleanupIcons","activeGroups","_redrawLabels","_redrawTitle","customRange","autoScaleEnd","autoScaleStart","followScale","maxLabelSize","getLines","major","_redrawLabel","_redrawLine","titleWidth","titleCharHeight","characterHeight","largestWidth","textMinor","textMajor","textTitle","measureCharTitle","titleCharWidth","zeroAlign","formattingFunction","majorSteps","minorSteps","customLines","minorStepIdx","magnitudefactor","determineScale","rounded","setCharHeight","setHeight","minimumStepValue","orderOfMagnitude","solutionFound","stepSize","is_major","getFirstMajor","majorStep","formatValue","bottomOffset","oldStepIdx","oldStart","oldEnd","increaseMagnitude","decreaseMagnitude","otherZero","otherStep","newRange","myOriginalZero","majorOffset","zeroOffset","pixels","usingDefaultStyle","zeroPosition","drawIcon","icon","Bargraph","fillHeight","outline","barWidth","originalWidth","bar1Height","bar2Height","processedGroupData","coreDistance","drawData","combinedData","intersections","barPoints","_getDataIntersections","heightOffset","_getSafeDrawData","amount","resolved","accumulatedNegative","accumulatedPositive","pointData","groupLabel","_getStackedYRange","xpos","getGroupTemplate","callbackResult","getCallback","Line","_catmullRom","_linear","fillPath","pathArray","subPathArray","dFill","zero","serializePath","inverse","_catmullRomUniform","p0","bp1","bp2","normalization","d1","d2","d3","A","N","d3powA","d2powA","d3pow2A","d2pow2A","d1pow2A","d1powA","side","iconSize","iconSpacing","excludeFromLegend","textArea","scrollableHeight","drawLegendIcons","paddingTop","nodes","nodeIndices","edges","edgeIndices","eventListeners","onTap","onDoubleTap","onHold","onDragStart","onDrag","onDragEnd","onPinch","onMouseMove","onContext","functions","createNode","createEdge","view","bindEventListeners","images","_modulesGroups2","_modulesCanvas2","selectionHandler","_modulesSelectionHandler2","interactionHandler","_modulesInteractionHandler2","_modulesView2","renderer","_modulesCanvasRenderer2","_modulesPhysicsEngine2","layoutEngine","_modulesLayoutEngine2","clustering","_modulesClustering2","manipulation","_modulesManipulationSystem2","nodesHandler","_modulesNodesHandler2","edgesHandler","_modulesEdgesHandler2","_modulesKamadaKawaiJs2","_modulesGroups","_modulesNodesHandler","_modulesEdgesHandler","_modulesPhysicsEngine","_modulesClustering","_modulesCanvasRenderer","_modulesCanvas","_modulesView","_modulesInteractionHandler","_modulesSelectionHandler","_modulesLayoutEngine","_modulesManipulationSystem","_sharedConfigurator","_sharedConfigurator2","_sharedValidator","_sharedValidator2","_optionsJs","_modulesKamadaKawaiJs","layout","interaction","networkOptions","_updateVisibleIndices","nodeId","edgeId","_updateValueRange","unselectAll","dotData","gephi","gephiData","valueTotal","setValueRange","canvasToDOM","DOMtoCanvas","findNode","isCluster","openCluster","cluster","getNodesInCluster","clusterByConnection","clusterByHubsize","clusterOutliers","getSeed","enableEditMode","disableEditMode","addNodeMode","editNode","editNodeMode","addEdgeMode","editEdgeMode","deleteSelected","getPositions","storePositions","moveNode","getBoundingBox","getConnectedNodes","objectId","getConnectedEdges","startSimulation","stopSimulation","stabilize","getSelectedNodes","getSelectedEdges","getNodeAt","getEdgeAt","edge","selectNodes","selectEdges","getViewPosition","releaseNode","getOptionsFromConfigurator","Groups","defaultIndex","groupsArray","defaultGroups","useDefaultGroups","optionFields","groupName","groupname","_componentsNode","_componentsNode2","_componentsSharedLabel","_componentsSharedLabel2","NodesHandler","nodesListeners","borderWidthSelected","brokenImage","fixed","face","strokeColor","image","labelHighlightBold","level","mass","scaling","maxVisible","drawThreshold","customScalingFunction","shadow","shape","shapeProperties","borderDashes","useImageSize","useBorderWithImage","parseOptions","updateShape","updateLabelModule","_reset","doNotEmit","oldNodesData","newNodes","positionInitially","changedData","dataChanged","constructorClass","clearPositions","dataArray","boundingBox","nodeList","nodeObj","toId","fromId","edgeList","_sharedLabel","_sharedLabel2","_nodesShapesBox","_nodesShapesBox2","_nodesShapesCircle","_nodesShapesCircle2","_nodesShapesCircularImage","_nodesShapesCircularImage2","_nodesShapesDatabase","_nodesShapesDatabase2","_nodesShapesDiamond","_nodesShapesDiamond2","_nodesShapesDot","_nodesShapesDot2","_nodesShapesEllipse","_nodesShapesEllipse2","_nodesShapesIcon","_nodesShapesIcon2","_nodesShapesImage","_nodesShapesImage2","_nodesShapesSquare","_nodesShapesSquare2","_nodesShapesStar","_nodesShapesStar2","_nodesShapesText","_nodesShapesText2","_nodesShapesTriangle","_nodesShapesTriangle2","_nodesShapesTriangleDown","_nodesShapesTriangleDown2","Node","imagelist","baseSize","baseFontSize","predefinedPosition","labelModule","currentShape","groupObj","imageObj","load","distanceToBorder","sizeDiff","fontDiff","updateBoundingBox","resize","parentOptions","newOptions","parsedColor","_slicedToArray","sliceIterator","_arr","_n","_e","_s","Symbol","Label","pointToSelf","fontOptions","yLine","nodeOptions","labelDirty","baseline","viewFontSize","calculateLabelSize","_drawBackground","_drawText","lineMargin","fontSize","_getColor2","_getColor","_getColor22","fontColor","_setAlignment2","_setAlignment","_setAlignment22","lineCount","strokeText","_processLabel","measureText","newOptionsArray","_inherits","subClass","superClass","setPrototypeOf","__proto__","_get","_x","_x2","_x3","_again","receiver","desc","getOwnPropertyDescriptor","getPrototypeOf","_utilNodeBase","_utilNodeBase2","Box","_NodeBase","textSize","getTextSize","selectionLineWidth","roundRect","enableShadow","disableShadow","save","enableBorderDashes","disableBorderDashes","restore","NodeBase","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","setLineDash","dashes","_utilCircleImageBase","_utilCircleImageBase2","Circle","_CircleImageBase","diameter","_drawRawCircle","CircleImageBase","labelOffset","imageLoaded","ratio","neutralborderWidth","globalAlpha","drawImage","labelDimensions","CircularImage","_swapToImageResizeWhenImageLoaded","_resizeImage","clip","_drawImageAtPosition","_drawImageLabel","Database","database","_distanceToBorder","_utilShapeBase","_utilShapeBase2","Diamond","_ShapeBase","_resizeShape","_drawShape","ShapeBase","sizeMultiplier","Dot","Ellipse","ellipse","Icon","_icon","iconTextSpacing","Image","Square","Star","Text","Triangle","TriangleDown","_componentsEdge","_componentsEdge2","EdgesHandler","edgesListeners","arrows","scaleFactor","arrowStrikethrough","hoverWidth","selectionWidth","selfReferenceSize","smooth","forceDirection","roundness","emitChange","edgeData","edgeOptions","reconnectEdges","markAllEdgesAsDirty","updateEdgeType","oldEdgesData","edgesData","oldEdge","disconnect","showInternalIds","connect","cleanup","edgeType","colorDirty","_edgesCubicBezierEdge","_edgesCubicBezierEdge2","_edgesBezierEdgeDynamic","_edgesBezierEdgeDynamic2","_edgesBezierEdgeStatic","_edgesBezierEdgeStatic2","_edgesStraightEdge","_edgesStraightEdge2","Edge","baseWidth","connected","_setInteractionWidths","changeInType","attachEdge","detachEdge","widthDiff","viaNode","getViaNode","arrowData","fromPoint","toPoint","getArrowData","core","drawLine","drawArrows","drawLabel","drawArrowHead","node1","node2","getPoint","translate","_rotateForLabelAlignment","_pointOnCircle","xFrom","yFrom","xTo","yTo","xObj","yObj","getDistanceToEdge","angleInDegrees","rotate","percentage","colorsDefined","_x4","_x5","_utilCubicBezierEdgeBase","_utilCubicBezierEdgeBase2","CubicBezierEdge","_CubicBezierEdgeBase","viaNodes","via1","via2","bezierCurveTo","x1","y1","x2","y2","_getViaCoordinates","nearNode","_findBorderPositionBezier","x3","y3","_ref","_ref2","_getDistanceToBezierEdge","_ref3","_ref32","vec","_BezierEdgeBase2","_BezierEdgeBase3","CubicBezierEdgeBase","_BezierEdgeBase","minDistance","lastX","lastY","_getDistanceToLine","_EdgeBase2","_EdgeBase3","BezierEdgeBase","_EdgeBase","distanceToPoint","difference","via","EdgeBase","getColor","getLineWidth","_drawDashedLine","_drawLine","_line","_getCircleData2","_getCircleData","_getCircleData22","_circle","pattern","lineDashOffset","_getCircleData3","_getCircleData32","dashedLine","_getCircleData4","_getCircleData42","_findBorderPosition","_findBorderPositionCircle","_getCircleData5","_getCircleData52","colorOptions","grd","createLinearGradient","fromColor","toColor","addColorStop","_getDistanceToEdge","_getCircleData6","_getCircleData62","px","py","something","u","arrowPoint","guideOffset","findBorderPosition","guidePos","_getCircleData7","_getCircleData72","xi","yi","arrowCore","arrow","_utilBezierEdgeBase","_utilBezierEdgeBase2","BezierEdgeDynamic","_boundFunction","positionBezierNode","physicsChange","setupSupportNode","parentEdgeId","quadraticCurveTo","_x6","BezierEdgeStatic","xVia","yVia","pi","originalAngle","myAngle","_utilEdgeBase","_utilEdgeBase2","StraightEdge","edgeSegmentLength","toBorderDist","toBorderPoint","borderPos","_componentsPhysicsBarnesHutSolver","_componentsPhysicsBarnesHutSolver2","_componentsPhysicsRepulsionSolver","_componentsPhysicsRepulsionSolver2","_componentsPhysicsHierarchicalRepulsionSolver","_componentsPhysicsHierarchicalRepulsionSolver2","_componentsPhysicsSpringSolver","_componentsPhysicsSpringSolver2","_componentsPhysicsHierarchicalSpringSolver","_componentsPhysicsHierarchicalSpringSolver2","_componentsPhysicsCentralGravitySolver","_componentsPhysicsCentralGravitySolver2","_componentsPhysicsFA2BasedRepulsionSolver","_componentsPhysicsFA2BasedRepulsionSolver2","_componentsPhysicsFA2BasedCentralGravitySolver","_componentsPhysicsFA2BasedCentralGravitySolver2","PhysicsEngine","physicsBody","physicsNodeIndices","physicsEdgeIndices","forces","velocities","physicsEnabled","simulationInterval","requiresTimeout","previousStates","referenceState","freezeCache","renderTimer","adaptiveTimestep","adaptiveTimestepEnabled","adaptiveCounter","adaptiveInterval","stabilized","startedStabilization","stabilizationIterations","ready","barnesHut","theta","gravitationalConstant","centralGravity","springLength","springConstant","damping","avoidOverlap","forceAtlas2Based","repulsion","nodeDistance","hierarchicalRepulsion","maxVelocity","minVelocity","stabilization","iterations","updateInterval","onlyDynamicEdges","timestep","layoutFailed","initPhysics","updatePhysicsData","nodesSolver","edgesSolver","gravitySolver","modelOptions","viewFunction","simulationStep","_emitStabilized","startTime","physicsTick","physicsTime","runDoubleSpeed","amountOfIterations","calculateForces","moveNodes","revert","_evaluateStepQuality","nodeIds","positions","vx","vy","dpos","reference","maxNodeVelocity","averageNodeVelocity","velocityAdaptiveThreshold","nodeVelocity","_performStep","totalVelocity","solve","targetIterations","_freezeNodes","_stabilizationBatch","_finalizeStabilization","_restoreFrozenNodes","colorFactor","forceSize","arrowSize","BarnesHutSolver","barnesHutTree","randomSeed","thetaInversed","overlapAvoidanceFactor","nodeCount","_formBarnesHutTree","_getForceContribution","NW","NE","SW","SE","parentBranch","childrenCount","centerOfMass","calcSize","_calculateForces","gravityForce","fx","fy","minX","minY","maxX","maxY","minimumTreeSize","rootSize","halfRootSize","_splitBranch","_placeInTree","totalMass","totalMassInv","biggestSize","skipMassUpdate","_updateBranchMass","_placeInRegion","region","seededRandom","containedNode","_insertRegion","childSize","_drawBranch","branch","RepulsionSolver","repulsingForce","HierarchicalRepulsionSolver","steepness","SpringSolver","edgeLength","node3","_calculateSpringForce","springForce","HierarchicalSpringSolver","springFx","springFy","totalFx","totalFy","correctionFx","correctionFy","CentralGravitySolver","_BarnesHutSolver2","_BarnesHutSolver3","ForceAtlas2BasedRepulsionSolver","_BarnesHutSolver","degree","_CentralGravitySolver2","_CentralGravitySolver3","ForceAtlas2BasedCentralGravitySolver","_CentralGravitySolver","_NetworkUtil","_NetworkUtil2","_componentsNodesCluster","_componentsNodesCluster2","ClusterEngine","clusteredNodes","clusteredEdges","hubsize","_getHubSize","_checkOptions","nodesToCluster","refreshData","joinCondition","childNodesObj","childEdgesObj","clonedOptions","cloneOptions","_cluster","edgeCount","clusters","usedNodes","relevantEdgeCount","gatheringSuccessful","childNodeId","_getConnectedId","clusterByEdgeCount","clusterNodeProperties","parentNodeId","parentClonedOptions","childClonedOptions","clusterEdgeProperties","childNode","otherNodeId","childKeys","createEdges","_edge","newEdge","clusteringEdgeReplacingId","_backupEdgeOptions","processProperties","childNodesOptions","childEdgesOptions","clusterId","_getClusterPosition","clusterNode","containedNodes","containedEdges","_createClusterEdges","originalOptions","clusterNodeId","releaseFunction","clusterPosition","newPositions","edgesToBeDeleted","otherCluster","transferEdge","replacedEdge","_restoreEdge","nodesArray","reverse","average","averageSquared","hubCounter","largestHub","variance","standardDeviation","hubThreshold","NetworkUtil","allNodes","specificNodes","amountOfConnections","_Node2","_Node3","Cluster","_Node","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","CanvasRenderer","redrawRequested","renderingActive","renderRequests","allowRedraw","hideEdgesOnDrag","hideNodesOnDrag","_determineBrowserMethod","_resizeNodes","_requestRedraw","_startRendering","cancelAnimationFrame","_renderStep","_drawEdges","_drawNodes","alwaysShow","topLeft","bottomRight","viewableArea","isSelected","isBoundingBoxOverlappingWith","browserType","Canvas","resizeTimer","resizeFunction","cameraState","hammerFrame","_cleanUp","previousWidth","previousHeight","widthRatio","heightRatio","newScale","currentViewCenter","distanceFromCenter","tabIndex","_prepareValue","emitEvent","oldWidth","oldHeight","previousRatio","_getCameraState","_setCameraState","_XconvertCanvasToDOM","_YconvertCanvasToDOM","_XconvertDOMtoCanvas","_YconvertDOMtoCanvas","View","animationSpeed","renderRefreshRate","animationEasingFunction","easingTime","sourceScale","targetScale","sourceTranslation","targetTranslation","lockedOnNodeId","lockedOnNodeOffset","touchTime","initialZoom","zoomLevel","positionDefined","numberOfNodes","yDistance","xZoomLevel","yZoomLevel","findCenter","animationOptions","nodePosition","lockedOnNode","animateView","locked","_transitionRedraw","viewCenter","_lockedRedraw","finished","_componentsNavigationHandler","_componentsNavigationHandler2","_componentsPopup","_componentsPopup2","InteractionHandler","navigationHandler","popup","popupObj","popupTimer","dragNodes","dragView","keyboard","speed","bindToWindow","navigationButtons","tooltipDelay","zoomView","pinched","checkSelectionChanges","_generateClickEvent","previouslySelectedEdgeCount","_getSelectedEdgeCount","previouslySelectedNodeCount","_getSelectedNodeCount","previousSelection","selectAdditionalOnPoint","selectOnPoint","selectedEdgesCount","selectedNodesCount","currentSelection","_determineIfDifferent2","_determineIfDifferent","nodesChanges","edgesChanges","nodeSelected","selectObject","selectionObj","xFixed","yFixed","scaleOld","preScaleDragPointer","scaleFrac","tx","ty","postScaleDragPointer","popupVisible","_checkHidePopup","setPosition","_checkShowPopup","hoverObject","pointerObj","previousPopupObjId","nodeUnderCursor","popupType","overlappingNodes","isOverlappingWith","getTitle","overlappingEdges","popupTargetType","popupTargetId","setText","_pointerToPositionObject","stillOnObj","overNode","NavigationHandler","iconsCreated","navigationHammers","boundFunctions","activated","configureKeyboardBindings","loadNavigationElements","cleanNavigation","navigationDOM","navigationDivs","navigationDivActions","_fit","bindToRedraw","_stopMovement","boundAction","unbindFromRedraw","Popup","doShow","SelectionHandler","hoverObj","selectConnectedEdges","hoverConnectedEdges","updateSelection","selectionChanged","deselectObject","emptySelection","DOM","highlightEdges","_selectConnectedEdges","_addToSelection","_removeFromSelection","canvasPos","returnNode","positionObject","_getAllNodesOverlappingWith","_getEdgesOverlappingWith","returnEdge","_getAllEdgesOverlappingWith","_unselectConnectedEdges","clusterSize","_addToHover","hoverChanged","blurObject","_hoverConnectedEdges","edgeIds","idArray","RangeError","LayoutEngine","initialRandomSeed","setPhysics","optionsBackup","improvedLayout","hierarchical","levelSeparation","nodeSpacing","treeSpacing","blockShifting","edgeMinimization","sortMethod","setupHierarchicalLayout","layoutNetwork","prevHierarchicalState","adaptAllOptionsForHierarchicalLayout","MAX_LEVELS","clusterThreshold","startLength","before","clusterBridges","after","_declusterAll","info","kamadaKawai","_shiftToCenter","getRangeCore","clustersPresent","definedLevel","definedPositions","undefinedLevel","hierarchicalLevels","lastNodeOnLevel","hierarchicalParents","hierarchicalChildren","hierarchicalTrees","treeIndex","distributionOrdering","distributionIndex","distributionOrderingPresence","_determineLevelsByHubsize","_determineLevelsDirected","_determineLevelsCustomCallback","distribution","_getDistribution","_generateMap","_placeNodesByHierarchy","_condenseHierarchy","stillShifting","branches","shiftTrees","treeSizes","getTreeSizes","shiftTree","_setPositionForHierarchy","getTreeSize","_getPositionForHierarchy","treeWidths","getBranchNodes","getBranchBoundary","branchMap","maxLevel","minSpace","maxSpace","branchNode","_getSpaceAroundNode2","_getSpaceAroundNode","_getSpaceAroundNode22","minSpaceNode","maxSpaceNode","getMaxLevel","getCollisionLevel","maxLevel1","maxLevel2","hasSameParent","parents1","parents2","parents","shiftElementsCloser","levels","centerParents","levelNodes","branchShiftCallback","centerParent","diffAbs","branchNodes1","branchNodes2","_getBranchBoundary","_getBranchBoundary2","max1","_getBranchBoundary3","_getBranchBoundary32","min2","minSpace2","diffBranch","_shiftBlock","_centerParent","minimizeEdgeLength","allEdges","nodeLevel","C2","referenceNodes","aboveEdges","otherNode","getFx","getDFx","getGuess","guess","guessMap","dfx","moveBranch","branchNodes","_getBranchBoundary4","_getBranchBoundary42","minSpaceBranch","maxSpaceBranch","branchOffset","_getSpaceAroundNode3","_getSpaceAroundNode32","newPosition","minimizeEdgeLengthBottomUp","shiftBranchesCloserBottomUp","centerAllParents","useMap","prevNode","prevPos","nextNode","nextPos","parentId","minPos","maxPos","_getSpaceAroundNode4","_getSpaceAroundNode42","positionedNodes","nodeArray","_indexArrayToNodes","_sortNodeArray","_placeBranchNodes","hubSize","levelDownstream","nodeA","nodeB","_crawlNetwork","minLevel","customCallback","levelByDirection","levelA","_setMinLevelToZero","fillInRelations","startingNodeId","crawler","parentLevel","childNodeLevel","previousPos","sharedParent","_findCommonParent","withChild","childA","childB","_this7","iterateParents","_parent","findParent","_parent2","foundParent","doNotUpdate","tree","ManipulationSystem","editMode","manipulationDiv","editModeDiv","closeDiv","manipulationHammers","temporaryUIFunctions","temporaryEventFunctions","temporaryIds","guiEnabled","inMode","selectedControlNode","initiallyActive","addNode","addEdge","editEdge","deleteNode","deleteEdge","controlNodeStyle","_restore","_setup","showManipulatorToolbar","_createEditButton","manipulationDOM","selectedNodeCount","selectedEdgeCount","selectedTotalCount","needSeperator","_createAddNodeButton","_createSeperator","_createAddEdgeButton","_createEditNodeButton","_createEditEdgeButton","_createDeleteButton","_bindHammerToDiv","toggleEditMode","_temporaryBindEvent","_createBackButton","_createDescription","_performAddNode","_getSelectedNode","finalizedData","_temporaryBindUI","_handleConnect","_finishConnect","_dragControlNode","edgeBeingEditedId","controlNodeFrom","_getNewTargetNode","controlNodeTo","_controlNodeTouch","_controlNodeDragStart","_controlNodeDrag","_controlNodeDragEnd","findBorderPositions","selectedNodes","selectedEdges","deleteFunction","_createWrappers","_removeManipulationDOM","_createButton","_cleanManipulatorHammers","_cleanupTemporaryNodesAndEdges","_unbindTemporaryUIs","_unbindTemporaryEvents","labelClassName","newFunction","boundFunction","UIfunctionName","functionName","eventName","domElement","indexTempEdge","indexTempNode","lastTouch","fromSelect","toSelect","overlappingNodeIds","_performEditEdge","targetNode","connectionEdge","connectFromId","_performAddEdge","clickData","defaultData","sourceNodeId","targetNodeId","_componentsAlgorithmsFloydWarshallJs","_componentsAlgorithmsFloydWarshallJs2","KamadaKawai","edgeStrength","distanceSolver","edgesArray","ignoreClusters","D_matrix","getDistances","_createL_matrix","_createK_matrix","innerThreshold","maxInnerIterations","maxEnergy","highE_nodeId","dE_dx","dE_dy","delta_m","subIterations","_getHighestEnergyNode2","_getHighestEnergyNode","_getHighestEnergyNode22","_moveNode","_getEnergy2","_getEnergy","_getEnergy22","maxEnergyNodeId","dE_dx_max","dE_dy_max","nodeIdx","_getEnergy3","_getEnergy32","x_m","y_m","iIdx","x_i","y_i","denominator","K_matrix","L_matrix","d2E_dx2","d2E_dxdy","d2E_dy2","FloydWarshall","CanvasRenderingContext2D","square","s2","ir","triangleDown","star","diamond","r2d","kappa","ox","oy","xe","ye","xm","ym","wEllipse","hEllipse","ymb","yeb","xt","yt","xl","yl","xr","yr","patternLength","slope","distRemaining","patternIndex","dashLength","parseDOT","parseGraph","nextPreview","isAlphaNumeric","regexAlphaNumeric","setValue","graphs","attr","getToken","tokenType","TOKENTYPE","NULL","isComment","DELIMITER","c2","DELIMITERS","IDENTIFIER","newSyntaxError","UNKNOWN","chop","parseStatements","parseStatement","subgraph","parseSubgraph","parseEdge","parseAttributeStatement","parseNodeStatement","subgraphs","parseAttributeList","maxLength","forEach2","elem1","elem2","setProp","convertAttr","mapping","visProp","visPropI","graphData","dotNode","graphNode","NODE_ATTR_MAPPING","convertEdge","dotEdge","graphEdge","EDGE_ATTR_MAPPING","subEdge","fontsize","fontcolor","labelfontcolor","fontname","fillcolor","labeltooltip","{","}","[","]",";","=",",","->","--","gephiJSON","inheritColor","gEdges","gNodes","gEdge","gNode","imageBroken","url","imageToCache","brokenUrl","imageToLoadBrokenUrlOn","onerror","_addImageToCache","imageToRedrawWith","cachedImage","img","onload","_redrawWithImage","_tryloadBrokenUrl","edit","del","back","addDescription","edgeDescription","editEdgeDescription","createEdgeError","deleteClusterError","editClusterError"],"mappings":"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","file":"vis.map"} \ No newline at end of file +{"version":3,"sources":["vis.js"],"names":["root","factory","exports","module","define","amd","this","modules","__webpack_require__","moduleId","installedModules","id","loaded","call","m","c","p","util","DOMutil","DataSet","DataView","Queue","Graph3d","graph3d","Camera","Filter","Point2d","Point3d","Slider","StepNumber","Timeline","Graph2d","timeline","Core","DateUtil","Range","stack","TimeStep","components","items","Item","BackgroundItem","BoxItem","PointItem","RangeItem","BackgroundGroup","Component","CurrentTime","CustomTime","DataAxis","DataScale","GraphGroup","Group","ItemSet","Legend","LineGraph","TimeAxis","Network","network","Images","dotparser","gephiParser","allOptions","convertDot","input","DOTToGraph","convertGephi","options","parseGephi","moment","Hammer","keycharm","uuid","isNumber","object","Number","recursiveDOMDelete","DOMobject","hasChildNodes","firstChild","removeChild","giveRange","min","max","total","value","scale","Math","isString","String","isDate","Date","match","ASPDateRegex","exec","isNaN","parse","randomUUID","v4","assignAllKeys","obj","prop","hasOwnProperty","fillIfDefined","a","b","allowDeletion","arguments","length","undefined","protoExtend","i","other","extend","selectiveExtend","props","Array","isArray","Error","selectiveDeepExtend","TypeError","constructor","Object","deepExtend","selectiveNotDeepExtend","indexOf","push","equalArray","len","convert","type","Boolean","valueOf","isMoment","toDate","getType","toISOString","copyAndExtendArray","arr","newValue","newArr","copyArray","getAbsoluteLeft","elem","getBoundingClientRect","left","getAbsoluteTop","top","addClassName","className","classes","split","join","removeClassName","index","splice","forEach","callback","toArray","array","updateProperty","key","throttle","fn","wait","timeout","needExecution","throttled","setTimeout","addEventListener","element","action","listener","useCapture","navigator","userAgent","attachEvent","removeEventListener","detachEvent","preventDefault","event","window","returnValue","getTarget","target","srcElement","nodeType","parentNode","hasParent","parent","e","option","asBoolean","defaultValue","asNumber","asString","asSize","asElement","hexToRGB","hex","shorthandRegex","replace","r","g","result","parseInt","overrideOpacity","color","opacity","rgb","substr","RGBToHex","red","green","blue","toString","slice","parseColor","isValidRGB","map","isValidHex","hsv","hexToHSV","lighterColorHSV","h","s","v","darkerColorHSV","darkerColorHex","HSVToHex","lighterColorHex","background","border","highlight","hover","RGBToHSV","minRGB","maxRGB","d","hue","saturation","cssUtil","cssText","styles","style","trim","parts","keys","addCssText","currentStyles","newStyles","removeCssText","removeStyles","HSVToRGB","floor","f","q","t","isOk","test","isValidRGBA","rgba","selectiveBridgeObject","fields","referenceObject","objectTo","create","bridgeObject","insertSort","compare","k","j","mergeOptions","mergeTarget","globalOptions","enabled","binarySearchCustom","orderedItems","comparator","field","field2","maxIterations","iteration","low","high","middle","item","searchResult","binarySearchValue","sidePreference","prevValue","nextValue","easingFunctions","linear","easeInQuad","easeOutQuad","easeInOutQuad","easeInCubic","easeOutCubic","easeInOutCubic","easeInQuart","easeOutQuart","easeInOutQuart","easeInQuint","easeOutQuint","easeInOutQuint","global","utils_hooks__hooks","hookCallback","apply","setHookCallback","prototype","res","hasOwnProp","create_utc__createUTC","format","locale","strict","createLocalOrUTC","utc","defaultParsingFlags","empty","unusedTokens","unusedInput","overflow","charsLeftOver","nullInput","invalidMonth","invalidFormat","userInvalidated","iso","getParsingFlags","_pf","valid__isValid","_isValid","flags","_d","getTime","invalidWeekday","_strict","bigHour","valid__createInvalid","NaN","isUndefined","copyConfig","to","from","val","_isAMomentObject","_i","_f","_l","_tzm","_isUTC","_offset","_locale","momentProperties","Moment","config","updateInProgress","updateOffset","absFloor","number","ceil","toInt","argumentForCoercion","coercedNumber","isFinite","compareArrays","array1","array2","dontConvert","lengthDiff","abs","diffs","Locale","normalizeLocale","toLowerCase","chooseLocale","names","next","loadLocale","name","oldLocale","locales","globalLocale","_abbr","code","locale_locales__getSetGlobalLocale","values","data","locale_locales__getLocale","defineLocale","abbr","set","addUnitAlias","unit","shorthand","lowerCase","aliases","normalizeUnits","units","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","isFunction","Function","makeGetSet","keepTime","get_set__set","get_set__get","mom","isValid","getSet","zeroFill","targetLength","forceSign","absNumber","zerosToFill","sign","pow","addFormatToken","token","padded","ordinal","func","formatTokenFunctions","localeData","removeFormattingTokens","makeFormatFunction","formattingTokens","output","formatMoment","expandFormat","formatFunctions","invalidDate","replaceLongDateFormatTokens","longDateFormat","localFormattingTokens","lastIndex","addRegexToken","regex","strictRegex","regexes","isStrict","getParseRegexForToken","RegExp","unescapeFormat","regexEscape","matched","p1","p2","p3","p4","addParseToken","tokens","addWeekParseToken","_w","addTimeToArrayFromToken","_a","daysInMonth","year","month","UTC","getUTCDate","localeMonths","_months","MONTHS_IN_FORMAT","localeMonthsShort","_monthsShort","localeMonthsParse","monthName","_monthsParse","_longMonthsParse","_shortMonthsParse","months","monthsShort","setMonth","dayOfMonth","monthsParse","date","getSetMonth","getDaysInMonth","monthsShortRegex","_monthsParseExact","computeMonthsParse","_monthsShortStrictRegex","_monthsShortRegex","monthsRegex","_monthsStrictRegex","_monthsRegex","cmpLenRev","shortPieces","longPieces","mixedPieces","sort","checkOverflow","MONTH","DATE","YEAR","HOUR","MINUTE","SECOND","MILLISECOND","_overflowDayOfYear","_overflowWeeks","WEEK","_overflowWeekday","WEEKDAY","warn","msg","suppressDeprecationWarnings","console","deprecate","firstTime","deprecateSimple","deprecations","configFromISO","l","allowTime","dateFormat","timeFormat","tzFormat","string","extendedIsoRegex","basicIsoRegex","isoDates","isoTimes","tzRegex","configFromStringAndFormat","configFromString","aspNetJsonRegex","createFromInputFallback","createDate","y","M","ms","getFullYear","setFullYear","createUTCDate","getUTCFullYear","setUTCFullYear","daysInYear","isLeapYear","getIsLeapYear","firstWeekOffset","dow","doy","fwd","fwdlw","getUTCDay","dayOfYearFromWeeks","week","weekday","resYear","resDayOfYear","localWeekday","weekOffset","dayOfYear","weekOfYear","resWeek","weeksInYear","weekOffsetNext","defaults","currentDateArray","nowValue","now","_useUTC","getUTCMonth","getMonth","getDate","configFromArray","currentDate","yearToUse","dayOfYearFromWeekInfo","_dayOfYear","_nextDay","setUTCMinutes","getUTCMinutes","w","weekYear","temp","weekdayOverflow","GG","W","E","local__createLocal","_week","gg","ISO_8601","parsedInput","skipped","stringLength","totalParsedInputLength","meridiemFixWrap","_meridiem","hour","meridiem","isPm","meridiemHour","isPM","configFromStringAndArray","tempConfig","bestMoment","scoreToBeat","currentScore","score","configFromObject","day","minute","second","millisecond","createFromConfig","prepareConfig","add","preparse","configFromInput","isUTC","pickBy","moments","args","Duration","duration","years","quarters","quarter","weeks","days","hours","minutes","seconds","milliseconds","_milliseconds","_days","_data","_bubble","isDuration","offset","separator","utcOffset","offsetFromString","matcher","matches","chunk","chunkOffset","cloneWithOffset","model","diff","clone","setTime","local","getDateOffset","round","getTimezoneOffset","getSetOffset","keepLocalTime","localAdjust","matchShortOffset","_changeInProgress","add_subtract__addSubtract","create__createDuration","getSetZone","setOffsetToUTC","setOffsetToLocal","subtract","setOffsetToParsedOffset","matchOffset","hasAlignedHourOffset","isDaylightSavingTime","isDaylightSavingTimeShifted","_isDSTShifted","isLocal","isUtcOffset","isUtc","ret","diffRes","aspNetRegex","isoRegex","parseIso","momentsDifference","inp","parseFloat","positiveMomentsDifference","base","isAfter","isBefore","createAdder","direction","period","dur","tmp","isAdding","moment_calendar__calendar","time","formats","sod","startOf","calendar","localInput","endOf","isBetween","isSame","inputMs","isSameOrAfter","isSameOrBefore","asFloat","that","zoneDelta","delta","monthDiff","anchor2","adjust","wholeMonthDiff","anchor","moment_format__toISOString","inputString","defaultFormat","postformat","withoutSuffix","humanize","fromNow","toNow","newLocaleData","isoWeekday","to_type__valueOf","unix","toObject","toJSON","moment_valid__isValid","parsingFlags","invalidAt","creationData","addWeekYearFormatToken","getter","getSetWeekYear","getSetWeekYearHelper","getSetISOWeekYear","isoWeek","getISOWeeksInYear","getWeeksInYear","weekInfo","weeksTarget","setWeekAll","dayOfYearData","getSetQuarter","localeWeek","localeFirstDayOfWeek","localeFirstDayOfYear","getSetWeek","getSetISOWeek","parseWeekday","weekdaysParse","localeWeekdays","_weekdays","isFormat","localeWeekdaysShort","_weekdaysShort","localeWeekdaysMin","_weekdaysMin","localeWeekdaysParse","weekdayName","_weekdaysParse","_minWeekdaysParse","_shortWeekdaysParse","_fullWeekdaysParse","weekdays","weekdaysShort","weekdaysMin","getSetDayOfWeek","getDay","getSetLocaleDayOfWeek","getSetISODayOfWeek","getSetDayOfYear","hFormat","lowercase","matchMeridiem","_meridiemParse","localeIsPM","charAt","localeMeridiem","isLower","parseMs","getZoneAbbr","getZoneName","moment__createUnix","moment__createInZone","parseZone","locale_calendar__calendar","_calendar","_longDateFormat","formatUpper","toUpperCase","_invalidDate","_ordinal","preParsePostFormat","relative__relativeTime","isFuture","_relativeTime","pastFuture","locale_set__set","_ordinalParseLenient","_ordinalParse","source","lists__get","setter","list","count","out","lists__listMonths","lists__listMonthsShort","lists__listWeekdays","lists__listWeekdaysShort","lists__listWeekdaysMin","duration_abs__abs","mathAbs","duration_add_subtract__addSubtract","duration_add_subtract__add","duration_add_subtract__subtract","absCeil","bubble","monthsFromDays","monthsToDays","daysToMonths","as","duration_as__valueOf","makeAs","alias","duration_get__get","makeGetter","substituteTimeAgo","relativeTime","duration_humanize__relativeTime","posNegDuration","thresholds","duration_humanize__getSetRelativeTimeThreshold","threshold","limit","withSuffix","iso_string__toISOString","iso_string__abs","Y","D","asSeconds","match1","match2","match3","match4","match6","match1to2","match3to4","match5to6","match1to3","match1to4","match1to6","matchUnsigned","matchSigned","matchTimestamp","matchWord","defaultLocaleMonths","defaultLocaleMonthsShort","defaultMonthsShortRegex","defaultMonthsRegex","parseTwoDigitYear","getSetYear","prototypeMin","prototypeMax","add_subtract__add","add_subtract__subtract","lang","isoWeekYear","defaultLocaleWeek","getSetDayOfMonth","defaultLocaleWeekdays","defaultLocaleWeekdaysShort","defaultLocaleWeekdaysMin","_isPm","pos","pos1","pos2","defaultLocaleMeridiemParse","getSetHour","getSetMinute","getSetSecond","getSetMillisecond","momentPrototype__proto","get","isoWeeks","isoWeeksInYear","isDST","isDSTShifted","zoneAbbr","zoneName","dates","zone","momentPrototype","defaultCalendar","sameDay","nextDay","nextWeek","lastDay","lastWeek","sameElse","defaultLongDateFormat","LTS","LT","L","LL","LLL","LLLL","defaultInvalidDate","defaultOrdinal","defaultOrdinalParse","defaultRelativeTime","future","past","mm","hh","dd","MM","yy","prototype__proto","firstDayOfYear","firstDayOfWeek","ordinalParse","langData","asMilliseconds","asMinutes","asHours","asDays","asWeeks","asMonths","asYears","duration_prototype__proto","toIsoString","version","invalid","relativeTimeThreshold","_moment","webpackPolyfill","paths","children","webpackContext","req","resolve","buf","ii","oct","_hexToByte","unparse","bth","_byteToHex","v1","clockseq","_clockseq","msecs","nsecs","_lastNSecs","dt","_lastMSecs","tl","tmh","node","_nodeId","n","rnds","random","rng","_rng","globalVar","crypto","getRandomValues","_rnds8","Uint8Array","_rnds","_seedBytes","prepareElements","JSONcontainer","elementType","redundant","used","cleanupElements","resetElements","getSVGElement","svgContainer","shift","document","createElementNS","appendChild","getDOMElement","DOMContainer","insertBefore","createElement","drawPoint","x","groupTemplate","labelObj","point","setAttributeNS","size","label","xOffset","yOffset","content","textContent","drawBar","width","height","rect","_options","_fieldId","fieldId","_type","_subscribers","setOptions","queue","_queue","destroy","on","subscribers","subscribe","off","filter","unsubscribe","_trigger","params","senderId","concat","subscriber","addedIds","me","_addItem","update","updatedIds","oldData","updatedData","addOrUpdate","oldItem","_updateItem","ids","firstType","returnType","allowedValues","itemIds","itemId","_getItem","order","_sort","_filterFields","resultant","getIds","getDataSet","mappedItems","filteredItem","itemFields","av","bv","remove","removedId","removedIds","_remove","clear","maxField","itemField","minField","distinct","fieldType","exists","types","raw","converted","JSON","stringify","delay","Infinity","_timeout","_extended","_flushIfNeeded","flush","methods","original","method","context","entry","clearTimeout","_ids","_onEvent","setData","refresh","oldIds","newIds","added","removed","viewOptions","getArguments","defaultFilter","dataSet","updated","container","SyntaxError","containerElement","margin","defaultXCenter","defaultYCenter","xLabel","yLabel","zLabel","passValueFn","xValueLabel","yValueLabel","zValueLabel","filterLabel","legendLabel","STYLE","DOT","showPerspective","showGrid","keepAspectRatio","showShadow","showGrayBottom","showTooltip","verticalRatio","animationInterval","animationPreload","camera","setArmRotation","setArmLength","eye","dataTable","dataPoints","colX","colY","colZ","colValue","colFilter","xMin","xStep","xMax","yMin","yStep","yMax","zMin","zStep","zMax","valueMin","valueMax","xBarWidth","yBarWidth","axisColor","gridColor","dataColor","fill","stroke","strokeWidth","dotSizeRatio","getMouseX","clientX","targetTouches","getMouseY","clientY","Emitter","_setScale","z","xCenter","yCenter","zCenter","setArmLocation","_convert3Dto2D","point3d","translation","_convertPointToTranslation","_convertTranslationToScreen","ax","ay","az","cx","getCameraLocation","cy","cz","sinTx","sin","getCameraRotation","cosTx","cos","sinTy","cosTy","sinTz","cosTz","dx","dy","dz","bx","by","ex","ey","ez","getArmLength","xcenter","frame","canvas","clientWidth","ycenter","_setBackgroundColor","backgroundColor","borderColor","borderWidth","borderStyle","BAR","BARCOLOR","BARSIZE","DOTLINE","DOTCOLOR","DOTSIZE","GRID","LINE","SURFACE","_getStyleNumber","styleName","_determineColumnIndexes","getNumberOfColumns","getNumberOfRows","counter","column","getDistinctValues","distinctValues","getColumnRange","minMax","_dataInitialize","rawData","_onChange","dataFilter","setOnLoadCallback","redraw","withBars","defaultXBarWidth","dataX","defaultYBarWidth","dataY","xRange","defaultXMin","defaultXMax","defaultXStep","yRange","defaultYMin","defaultYMax","defaultYStep","zRange","defaultZMin","defaultZMax","defaultZStep","valueRange","defaultValueMin","defaultValueMax","_getDataPoints","sortNumber","dataMatrix","xIndex","yIndex","trans","screen","bottom","pointRight","pointTop","pointCross","position","noCanvas","fontWeight","padding","innerHTML","onmousedown","_onMouseDown","ontouchstart","_onTouchStart","onmousewheel","_onWheel","ontooltip","_onTooltip","onkeydown","setSize","_resizeCanvas","clientHeight","animationStart","slider","play","animationStop","stop","_resizeCenter","setCameraPosition","horizontal","vertical","distance","getCameraPosition","getArmRotation","_readData","_redrawFilter","animationAutoStart","cameraPosition","styleNumber","tooltip","showAnimationControls","_redrawSlider","_redrawClear","_redrawAxis","_redrawDataGrid","_redrawDataLine","_redrawDataBar","_redrawDataDot","_redrawInfo","_redrawLegend","ctx","getContext","clearRect","widthMin","widthMax","dotSize","right","lineWidth","font","ymin","ymax","_hsv2rgb","strokeStyle","beginPath","moveTo","lineTo","strokeRect","fillStyle","closePath","gridLineLen","step","start","getCurrent","end","textAlign","textBaseline","fillText","visible","setValues","setPlayInterval","onchange","getIndex","selectValue","setOnChangeCallback","lineStyle","getLabel","getSelectedValue","prettyStep","text","xText","yText","zText","xMin2d","xMax2d","gridLenX","gridLenY","textMargin","armAngle","H","S","V","R","G","B","C","Hi","X","cross","topSideVisible","zAvg","lineJoin","lineCap","transBottom","dist","sortDepth","aDiff","bDiff","crossproduct","crossProduct","_getStrokeWidth","radius","arc","PI","surface","corners","xWidth","yWidth","surfaces","center","avg","transCenter","leftButtonDown","_onMouseUp","which","button","touchDown","startMouseX","startMouseY","startStart","startEnd","startArmRotation","cursor","onmousemove","_onMouseMove","onmouseup","diffX","diffY","horizontalNew","verticalNew","snapAngle","snapValue","parameters","emit","boundingRect","mouseX","mouseY","tooltipTimeout","_hideTooltip","dataPoint","_dataPointFromXY","_showTooltip","ontouchmove","_onTouchMove","ontouchend","_onTouchEnd","wheelDelta","detail","oldLength","newLength","_insideTriangle","triangle","bs","cs","distMax","closestDataPoint","closestDist","triangle1","triangle2","distX","distY","sqrt","line","dot","dom","borderRadius","boxShadow","borderLeft","contentWidth","offsetWidth","contentHeight","offsetHeight","lineHeight","dotWidth","dotHeight","mixin","_callbacks","once","self","removeListener","removeAllListeners","callbacks","cb","listeners","hasListeners","sub","sum","armLocation","armRotation","armLength","cameraLocation","cameraRotation","calculateCameraOrientation","rot","graph","onLoadCallback","loadInBackground","isLoaded","getLoadedProgress","getColumn","getValues","getValue","dataView","progress","prev","bar","MozBorderRadius","slide","onclick","togglePlay","onChangeCallback","playTimeout","playInterval","playLoop","setIndex","playNext","interval","clearInterval","getPlayInterval","setPlayLoop","doLoop","onChange","indexToLeft","startClientX","startSlideX","leftToIndex","_start","_end","_step","precision","_current","setRange","setStep","calculatePrettyStep","log10","log","LN10","step1","step2","step5","toPrecision","getStep","groups","forthArgument","defaultOptions","autoResize","throttleRedraw","orientation","axis","maxHeight","minHeight","_create","body","domProps","emitter","bind","hiddenDates","getScale","timeAxis","toScreen","_toScreen","toGlobalScreen","_toGlobalScreen","toTime","_toTime","toGlobalTime","_toGlobalTime","range","timeAxis2","currentTime","itemSet","itemsData","groupsData","getEventProperties","oncontextmenu","fitDone","getItemRange","setWindow","animation","fit","setGroups","setItems","_redraw","Configurator","Validator","printStyle","configureOptions","_createConfigurator","markDirty","refreshItems","errorFound","validate","selection","getSelection","setSelection","newDataSet","focus","itemData","_this","getDataRange","minItem","maxItem","factor","lhs","rhs","getStart","getEnd","show","repositionX","getWidthLeft","getWidthRight","dataset","centerContainer","itemFromTarget","group","groupFromTarget","customTime","customTimeFromTarget","snap","snappedTime","what","foreground","labelSet","groupId","pageX","srcEvent","pageY","propagating","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","_firstTarget","hammer","events","propagatedHandler","_handled","stopped","stopPropagation","srcStop","firstTarget","elemHammer","_handlers","Manager","PropagatingHammer","o","assign","wrapper","pointerType","isFirst","handler","eventType","hammers","idx","exportName","setTimeoutContext","bindFn","invokeArrayArg","arg","each","iterator","message","deprecationMessage","inherit","child","properties","childP","baseP","_super","boolOrFn","TYPE_FUNCTION","ifUndefined","val1","val2","addEventListeners","splitStr","removeEventListeners","inStr","str","find","inArray","src","findByKey","uniqueArray","results","prefixed","property","prefix","camelProp","VENDOR_PREFIXES","uniqueId","_uniqueId","getWindowForElement","doc","ownerDocument","defaultView","parentWindow","Input","manager","inputTarget","domHandler","ev","enable","init","createInputInstance","Type","inputClass","SUPPORT_POINTER_EVENTS","PointerEventInput","SUPPORT_ONLY_TOUCH","TouchInput","SUPPORT_TOUCH","TouchMouseInput","MouseInput","inputHandler","pointersLen","pointers","changedPointersLen","changedPointers","INPUT_START","isFinal","INPUT_END","INPUT_CANCEL","session","computeInputData","recognize","prevInput","pointersLength","firstInput","simpleCloneInputData","firstMultiple","offsetCenter","getCenter","timeStamp","deltaTime","angle","getAngle","getDistance","computeDeltaXY","offsetDirection","getDirection","deltaX","deltaY","overallVelocity","getVelocity","overallVelocityX","overallVelocityY","rotation","getRotation","maxPointers","computeIntervalInputData","offsetDelta","prevDelta","velocity","velocityX","velocityY","last","lastInterval","COMPUTE_INTERVAL","DIRECTION_NONE","DIRECTION_LEFT","DIRECTION_RIGHT","DIRECTION_UP","DIRECTION_DOWN","PROPS_XY","atan2","PROPS_CLIENT_XY","evEl","MOUSE_ELEMENT_EVENTS","evWin","MOUSE_WINDOW_EVENTS","allow","pressed","POINTER_ELEMENT_EVENTS","POINTER_WINDOW_EVENTS","store","pointerEvents","SingleTouchInput","evTarget","SINGLE_TOUCH_TARGET_EVENTS","SINGLE_TOUCH_WINDOW_EVENTS","started","normalizeSingleTouches","all","touches","changed","changedTouches","TOUCH_TARGET_EVENTS","targetIds","getTouches","allTouches","INPUT_MOVE","identifier","changedTargetTouches","touch","mouse","TouchAction","cleanTouchActions","actions","TOUCH_ACTION_NONE","hasPanX","TOUCH_ACTION_PAN_X","hasPanY","TOUCH_ACTION_PAN_Y","TOUCH_ACTION_MANIPULATION","TOUCH_ACTION_AUTO","Recognizer","state","STATE_POSSIBLE","simultaneous","requireFail","stateStr","STATE_CANCELLED","STATE_ENDED","STATE_CHANGED","STATE_BEGAN","directionStr","getRecognizerByNameIfManager","otherRecognizer","recognizer","AttrRecognizer","PanRecognizer","pX","pY","PinchRecognizer","PressRecognizer","_timer","_input","RotateRecognizer","SwipeRecognizer","TapRecognizer","pTime","pCenter","recognizers","preset","handlers","touchAction","toggleCssProps","recognizeWith","requireFailure","cssProps","triggerDomEvent","gestureEvent","createEvent","initEvent","gesture","dispatchEvent","TEST_ELEMENT","nextKey","dest","merge","MOBILE_REGEX","INPUT_TYPE_TOUCH","INPUT_TYPE_PEN","INPUT_TYPE_MOUSE","INPUT_TYPE_KINECT","DIRECTION_HORIZONTAL","DIRECTION_VERTICAL","DIRECTION_ALL","MOUSE_INPUT_MAP","mousedown","mousemove","mouseup","POINTER_INPUT_MAP","pointerdown","pointermove","pointerup","pointercancel","pointerout","IE10_POINTER_TYPE_ENUM",2,3,4,5,"MSPointerEvent","PointerEvent","removePointer","eventTypeNormalized","isTouch","storeIndex","pointerId","SINGLE_TOUCH_INPUT_MAP","touchstart","touchmove","touchend","touchcancel","TOUCH_INPUT_MAP","inputEvent","inputData","isMouse","PREFIXED_TOUCH_ACTION","NATIVE_TOUCH_ACTION","TOUCH_ACTION_COMPUTE","compute","getTouchAction","preventDefaults","prevented","hasNone","isTapPointer","isTapMovement","isTapTouchTime","preventSrc","STATE_RECOGNIZED","STATE_FAILED","dropRecognizeWith","dropRequireFailure","hasRequireFailures","canRecognizeWith","additionalEvent","tryEmit","canEmit","inputDataClone","process","reset","attrTest","optionPointers","isRecognized","directionTest","hasMoved","inOut","validPointers","validMovement","validTime","taps","posThreshold","validTouchTime","failTimeout","validInterval","validMultiTap","tapCount","VERSION","domEvents","userSelect","touchSelect","touchCallout","contentZooming","userDrag","tapHighlightColor","STOP","FORCED_STOP","force","curRecognizer","existing","Tap","Pan","Swipe","Pinch","Rotate","Press","freeGlobal","deltaDifference","scaleOffset","startToFront","endToFront","moveable","zoomable","zoomMin","zoomMax","animationTimer","_onDragStart","_onDrag","_onDragEnd","_onMouseWheel","_onTouch","_onPinch","validateDirection","getPointer","byUser","finalStart","finalEnd","_cancelAnimation","initStart","initEnd","easingName","easingFunction","initTime","anyChanged","dragging","ease","done","_applyRange","updateHiddenDates","newStart","newEnd","getRange","conversion","totalHidden","previousDelta","_isInsideRange","allowDragging","getHiddenDurationBetween","diffRange","safeStart","snapAwayFromHidden","safeEnd","startDate","endDate","zoomKey","pointer","pointerDate","_pointerToDate","zoom","centerDate","hiddenDuration","hiddenDurationBefore","getHiddenDurationBefore","hiddenDurationAfter","move","onTouch","onRelease","offTouch","offRelease","_isResized","resized","_previousWidth","_previousHeight","convertHiddenOptions","repeat","dateItem","totalRange","pixelTime","runUntil","dayOffset","removeDuplicates","startHidden","isHidden","endHidden","rangeStart","rangeEnd","hidden","safeDates","printDates","stepOverHiddenDates","timeStep","previousTime","stepInHidden","currentValue","current","switchedYear","switchedMonth","switchedDay","correctTimeForHidden","totalDuration","partialDuration","accumulatedHiddenDuration","getAccumulatedHiddenDuration","newTime","timeOffset","requiredDuration","previousPoint","correctionEnabled","hammerUtil","Activator","onMouseWheel","isActive","backgroundVertical","backgroundHorizontal","leftContainer","rightContainer","shadowTop","shadowBottom","shadowTopLeft","shadowBottomLeft","shadowTopRight","shadowBottomRight","initialDrawDone","_redrawTimer","scrollTop","scrollTopMin","customTimes","redrawCount","drawPoints","onRender","clickToUse","activator","_initAutoResize","component","configurator","configure","appliedOptions","setModuleOptions","_origRedraw","active","_stopAutoResize","setCustomTime","getCustomTime","setCustomTimeTitle","title","setCustomTitle","addCustomTime","timestamp","some","removeCustomTime","getVisibleItems","getWindow","borderRootHeight","borderRootWidth","autoHeight","containerHeight","centerWidth","_updateScrollTop","visibilityTop","visibilityBottom","visibility","MAX_REDRAW","repaint","setCurrentTime","getCurrentTime","_startAutoResize","_onResize","lastWidth","lastHeight","watchTimer","setInterval","initialScrollTop","oldScrollTop","_getScrollTop","newScrollTop","_setScrollTop","align","groupOrderSwap","fromGroup","toGroup","targetOrder","groupOrder","selectable","multiselect","itemsAlwaysDraggable","editable","updateTime","updateGroup","groupEditable","onAdd","onUpdate","onMove","onRemove","onMoving","onAddGroup","onMoveGroup","onRemoveGroup","itemOptions","itemListeners","_onAdd","_onUpdate","_onRemove","groupListeners","_onAddGroups","_onUpdateGroups","_onRemoveGroups","groupIds","stackDirty","touchParams","groupTouchParams","UNGROUPED","BACKGROUND","box","_updateUngrouped","backgroundGroup","_onSelectItem","_onMultiSelectItem","_onAddItem","groupHammer","_onGroupDragStart","_onGroupDrag","_onGroupDragEnd","addCallback","dirty","displayed","hide","unselect","select","rawVisibleItems","visibleItems","_deselect","_orderGroups","visibleInterval","zoomed","lastVisibleInterval","restack","firstGroup","_firstGroup","firstMargin","nonFirstMargin","groupMargin","groupResized","firstGroupIndex","firstGroupId","ungrouped","_getGroupId","getLabelSet","oldItemsData","getItems","_order","getGroups","removeItem","_getType","selected","_removeItem","groupData","groupOptions","oldGroupId","oldSubGroupId","subgroup","oldGroup","_constructByEndArray","endArray","dragLeftItem","dragRightItem","itemProps","_getGroupIndex","initialX","dragLeft","_cloneItemData","dragRight","selectedItem","baseGroupIndex","itemsToDrag","groupIndex","groupOffset","ctrlKey","metaKey","_onDragStartAddItem","xAbs","newItem","offsetLeft","updateGroupAllowed","newGroupBase","initial","updateTimeAllowed","initialStart","initialEnd","newOffset","_moveToGroup","originalOrder","movingUp","targetGroupTop","draggedGroupHeight","targetGroupHeight","targetGroup","draggedGroup","newOrder","origOrder","draggedId","numGroups","curPos","orgOffset","slippedPosition","switchGroup","shouldBeGroup","switchGroupId","shiftKey","oldSelection","newSelection","newItemData","itemGroup","lastSelectedGroup","multiselectPerGroup","_getItemRange","_item","itemSetFromTarget","minimumStep","autoScale","FORMAT","minorLabels","majorLabels","setMoment","setFormat","setMinimumStep","roundToMinor","hasNext","setScale","setAutoScale","stepYear","stepMonth","stepDay","stepHour","stepMinute","stepSecond","stepMillisecond","isMajor","getLabelMinor","getLabelMajor","getClassName","even","today","currentWeek","currentMonth","currentYear","subgroups","subgroupIndex","subgroupOrderer","subgroupOrder","byStart","byEnd","checkRangedItems","inner","marker","Element","getLabelWidth","markerHeight","lastMarkerHeight","_calculateSubGroupHeights","limitSize","customOrderedItems","_updateVisibleItems","nostack","_calculateHeight","offsetTop","repositionY","resetSubgroups","setParent","orderSubgroups","_checkIfVisible","sortArray","sortField","itemIndex","removeFromDataSet","startArray","orderByStart","orderByEnd","oldVisibleItems","visibleItemsLookup","lowerBound","upperBound","searchFunction","_checkIfVisibleWithReference","initialPosByStart","_traceVisible","initialPosByEnd","initialPos","breakCondition","isVisible","EPSILON","aTime","bTime","iMax","collidingItem","jj","collision","newTop","baseClassName","_updateContents","_updateTitle","_updateDataAttributes","_updateStyle","getComputedStyle","maxWidth","_repaintDeleteButton","_repaintDragLeft","_repaintDragRight","contentLeft","parentWidth","boxWidth","groupChanged","deleteButton","template","_contentToString","removeAttribute","dataAttributes","attributes","setAttribute","outerHTML","itemSetHeight","marginLeft","onTop","itemSubgroup","totalHeight","newHeight","lines","majorTexts","minorTexts","lineTop","showMinorLabels","showMajorLabels","maxMinorChars","parentChanged","_calculateCharSize","minorLabelHeight","minorCharHeight","majorLabelHeight","majorCharHeight","minorLineHeight","minorLineWidth","majorLineHeight","majorLineWidth","foregroundNextSibling","nextSibling","backgroundNextSibling","_repaintLabels","timeLabelsize","minorCharWidth","xNext","nextIsMajor","prevWidth","labelMinor","xFirstMajorLabel","MAX","showMinorGrid","_repaintMinorText","_repaintMajorText","_repaintMajorLine","_repaintMinorLine","warnedForOverflow","leftTime","leftText","widthText","majorCharWidth","pop","createTextNode","childNodes","nodeValue","measureCharMinor","measureCharMajor","overlay","_onTapOverlay","onClick","_hasParent","deactivate","escListener","activate","display","unbind","_exportFunctions","_bound","keydown","keyup","_keys","fromCharCode","down","handleEvent","up","keyCode","bound","bindAll","getKey","newBindings","eventParams","drag","warned","substring","showCurrentTime","currentTimeTimer","_interopRequireDefault","__esModule","default","_classCallCheck","instance","Constructor","defineProperty","_createClass","defineProperties","descriptor","enumerable","configurable","writable","protoProps","staticProps","_ColorPicker","_ColorPicker2","parentModule","defaultContainer","pixelRatio","changedOptions","allowCreation","initialized","popupCounter","showButton","moduleOptions","domElements","popupDiv","popupLimit","popupHistory","colorPicker","_removePopup","_clean","_handleObject","_makeItem","_makeHeader","generateButton","_printOptions","onmouseover","onmouseout","optionsContainer","_push","_showPopupIfNeeded","path","_arguments","_this2","_len","_key","_ret2","div","objectLabel","selectedValue","_update","_makeLabel","err","popupString","popupValue","oninput","_setupPopup","_this3","html","hideTimeout","deleteTimeout","_this4","correspondingElement","checkbox","checked","_this5","defaultColor","_showColorPicker","_this6","insertTo","setColor","setUpdateCallback","colorString","setCloseCallback","checkOnly","visibleInSet","subObj","newPath","_getValue","_handleArray","_makeTextInput","_makeCheckbox","draw","physics","solver","enabledPath","enabledValue","error","_makeColorField","_makeDropdown","_makeRange","_constructOptions","optionsObj","getOptions","ColorPicker","generated","centerCoordinates","hueCircle","initialColor","previousColor","applied","updateCallback","closeCallback","_bindHammer","_setSize","htmlColors","black","navy","darkblue","mediumblue","darkgreen","teal","darkcyan","deepskyblue","darkturquoise","mediumspringgreen","lime","springgreen","aqua","cyan","midnightblue","dodgerblue","lightseagreen","forestgreen","seagreen","darkslategray","limegreen","mediumseagreen","turquoise","royalblue","steelblue","darkslateblue","mediumturquoise","indigo","darkolivegreen","cadetblue","cornflowerblue","mediumaquamarine","dimgray","slateblue","olivedrab","slategray","lightslategray","mediumslateblue","lawngreen","chartreuse","aquamarine","maroon","purple","olive","gray","skyblue","lightskyblue","blueviolet","darkred","darkmagenta","saddlebrown","darkseagreen","lightgreen","mediumpurple","darkviolet","palegreen","darkorchid","yellowgreen","sienna","brown","darkgray","lightblue","greenyellow","paleturquoise","lightsteelblue","powderblue","firebrick","darkgoldenrod","mediumorchid","rosybrown","darkkhaki","silver","mediumvioletred","indianred","peru","chocolate","tan","lightgrey","palevioletred","thistle","orchid","goldenrod","crimson","gainsboro","plum","burlywood","lightcyan","lavender","darksalmon","violet","palegoldenrod","lightcoral","khaki","aliceblue","honeydew","azure","sandybrown","wheat","beige","whitesmoke","mintcream","ghostwhite","salmon","antiquewhite","linen","lightgoldenrodyellow","oldlace","fuchsia","magenta","deeppink","orangered","tomato","hotpink","coral","darkorange","lightsalmon","orange","lightpink","pink","gold","peachpuff","navajowhite","moccasin","bisque","mistyrose","blanchedalmond","papayawhip","lavenderblush","seashell","cornsilk","lemonchiffon","floralwhite","snow","yellow","lightyellow","ivory","white","setInitial","htmlColor","_isColorString","rgbaArray","rgbObj","alpha","_setColor","_generateHueCircle","storePrevious","_hide","_updatePicker","alert","angleConvert","colorPickerSelector","colorPickerCanvas","pixelRation","devicePixelRatio","webkitBackingStorePixelRatio","mozBackingStorePixelRatio","msBackingStorePixelRatio","oBackingStorePixelRatio","backingStorePixelRatio","setTransform","putImageData","circle","brightnessRange","opacityRange","initialColorDiv","newColorDiv","colorPickerDiv","opacityDiv","brightnessDiv","arrowDiv","_setOpacity","_setBrightness","brightnessLabel","opacityLabel","cancelButton","applyButton","_apply","saveButton","_save","loadButton","_loadLast","pinch","_moveSelector","sat","hfac","sfac","fillRect","getImageData","centerY","centerX","newLeft","referenceOptions","subObject","usedOptions","check","__any__","getSuggestion","__type__","checkFields","referenceOption","refOptionObj","optionType","refOptionType","print","printLocation","localSearch","findInOptions","globalSearch","localSearchThreshold","globalSearchThreshold","indexMatch","closestMatch","recursive","closestMatchPath","lowerCaseOption","op","levenshteinDistance","matrix","boolean","any","function","null","groupsDraggable","linegraph","initialLoad","getLegend","isGroupVisible","yAxisLeft","yAxisRight","legendLeft","legendRight","screenToValue","yAxisOrientation","defaultGroup","sampling","graphHeight","shaded","barChart","sideBySide","interpolation","parametrization","dataAxis","legend","abortedGraphUpdate","updateSVGheight","updateSVGheightOnResize","forceGraphUpdate","lastStart","svgElements","groupsUsingDefaultStyles","svg","framework","Bars","Lines","Points","_removeGroup","_updateAllGroupData","removeGroup","_updateGroup","addGroup","groupsContent","groupCounts","extended","orginalY","_updateGraph","rangePerPixelInv","_getSortedGroupIds","grouplist","zIndex","bz","groupRanges","changeCalled","minDate","maxDate","_getRelevantData","_applySampling","_convertXcoordinates","_getYRanges","_updateYAxis","below","excludeFromStacking","_stack","_convertYcoordinates","calcPath","subGroupId","drawShading","subData","subPrevPoint","subNextPoint","dateComparator","first","dataContainer","increment","amountOfPoints","xDistance","pointsPerPixel","sampledData","combinedDataLeft","combinedDataRight","getYRange","getStackedYRange","minVal","maxVal","yAxisLeftUsed","yAxisRightUsed","minLeft","minRight","maxLeft","maxRight","ignore","_toggleAxisVisiblity","drawIcons","master","masterAxis","lineOffset","tempGroups","axisUsed","datapoints","screen_x","screen_y","svgHeight","convertValue","setZeroPosition","linegraphOptions","icons","majorLinesOffset","minorLinesOffset","labelOffsetX","labelOffsetY","iconWidth","alignZeros","linegraphSVG","DOMelements","labels","conversionFactor","minWidth","stepPixels","zeroCrossing","amountOfSteps","iconsRemoved","amountOfGroups","lineContainer","graphOptions","_redrawGroupIcons","iconHeight","iconOffset","groupArray","_cleanupIcons","activeGroups","_redrawLabels","_redrawTitle","customRange","autoScaleEnd","autoScaleStart","followScale","maxLabelSize","getLines","major","_redrawLabel","_redrawLine","titleWidth","titleCharHeight","characterHeight","largestWidth","textMinor","textMajor","textTitle","measureCharTitle","titleCharWidth","zeroAlign","formattingFunction","majorSteps","minorSteps","customLines","minorStepIdx","magnitudefactor","determineScale","rounded","setCharHeight","setHeight","minimumStepValue","orderOfMagnitude","solutionFound","stepSize","is_major","getFirstMajor","majorStep","formatValue","bottomOffset","oldStepIdx","oldStart","oldEnd","increaseMagnitude","decreaseMagnitude","otherZero","otherStep","newRange","myOriginalZero","majorOffset","zeroOffset","pixels","usingDefaultStyle","zeroPosition","drawIcon","icon","Bargraph","fillHeight","outline","barWidth","originalWidth","bar1Height","bar2Height","processedGroupData","coreDistance","drawData","combinedData","intersections","barPoints","_getDataIntersections","heightOffset","_getSafeDrawData","amount","resolved","accumulatedNegative","accumulatedPositive","pointData","groupLabel","_getStackedYRange","xpos","getGroupTemplate","callbackResult","getCallback","Line","_catmullRom","_linear","fillPath","pathArray","subPathArray","dFill","zero","serializePath","inverse","_catmullRomUniform","p0","bp1","bp2","normalization","d1","d2","d3","A","N","d3powA","d2powA","d3pow2A","d2pow2A","d1pow2A","d1powA","side","iconSize","iconSpacing","excludeFromLegend","textArea","scrollableHeight","drawLegendIcons","paddingTop","nodes","nodeIndices","edges","edgeIndices","eventListeners","onTap","onDoubleTap","onHold","onDragStart","onDrag","onDragEnd","onPinch","onMouseMove","onContext","functions","createNode","createEdge","view","bindEventListeners","images","_modulesGroups2","_modulesCanvas2","selectionHandler","_modulesSelectionHandler2","interactionHandler","_modulesInteractionHandler2","_modulesView2","renderer","_modulesCanvasRenderer2","_modulesPhysicsEngine2","layoutEngine","_modulesLayoutEngine2","clustering","_modulesClustering2","manipulation","_modulesManipulationSystem2","nodesHandler","_modulesNodesHandler2","edgesHandler","_modulesEdgesHandler2","_modulesKamadaKawaiJs2","_modulesGroups","_modulesNodesHandler","_modulesEdgesHandler","_modulesPhysicsEngine","_modulesClustering","_modulesCanvasRenderer","_modulesCanvas","_modulesView","_modulesInteractionHandler","_modulesSelectionHandler","_modulesLayoutEngine","_modulesManipulationSystem","_sharedConfigurator","_sharedConfigurator2","_sharedValidator","_sharedValidator2","_optionsJs","_modulesKamadaKawaiJs","layout","interaction","networkOptions","_updateVisibleIndices","nodeId","edgeId","_updateValueRange","unselectAll","dotData","gephi","gephiData","valueTotal","setValueRange","canvasToDOM","DOMtoCanvas","findNode","isCluster","openCluster","cluster","getNodesInCluster","clusterByConnection","clusterByHubsize","clusterOutliers","getSeed","enableEditMode","disableEditMode","addNodeMode","editNode","editNodeMode","addEdgeMode","editEdgeMode","deleteSelected","getPositions","storePositions","moveNode","getBoundingBox","getConnectedNodes","objectId","getConnectedEdges","startSimulation","stopSimulation","stabilize","getSelectedNodes","getSelectedEdges","getNodeAt","getEdgeAt","edge","selectNodes","selectEdges","getViewPosition","releaseNode","getOptionsFromConfigurator","Groups","defaultIndex","groupsArray","defaultGroups","useDefaultGroups","optionFields","groupName","groupname","_componentsNode","_componentsNode2","_componentsSharedLabel","_componentsSharedLabel2","NodesHandler","nodesListeners","borderWidthSelected","brokenImage","fixed","face","strokeColor","image","labelHighlightBold","level","mass","scaling","maxVisible","drawThreshold","customScalingFunction","shadow","shape","shapeProperties","borderDashes","useImageSize","useBorderWithImage","parseOptions","updateShape","updateLabelModule","_reset","doNotEmit","oldNodesData","newNodes","positionInitially","changedData","dataChanged","constructorClass","clearPositions","dataArray","boundingBox","nodeList","nodeObj","toId","fromId","edgeList","_sharedLabel","_sharedLabel2","_nodesShapesBox","_nodesShapesBox2","_nodesShapesCircle","_nodesShapesCircle2","_nodesShapesCircularImage","_nodesShapesCircularImage2","_nodesShapesDatabase","_nodesShapesDatabase2","_nodesShapesDiamond","_nodesShapesDiamond2","_nodesShapesDot","_nodesShapesDot2","_nodesShapesEllipse","_nodesShapesEllipse2","_nodesShapesIcon","_nodesShapesIcon2","_nodesShapesImage","_nodesShapesImage2","_nodesShapesSquare","_nodesShapesSquare2","_nodesShapesStar","_nodesShapesStar2","_nodesShapesText","_nodesShapesText2","_nodesShapesTriangle","_nodesShapesTriangle2","_nodesShapesTriangleDown","_nodesShapesTriangleDown2","Node","imagelist","baseSize","baseFontSize","predefinedPosition","labelModule","currentShape","groupObj","imageObj","load","distanceToBorder","sizeDiff","fontDiff","updateBoundingBox","resize","parentOptions","newOptions","parsedColor","_slicedToArray","sliceIterator","_arr","_n","_e","_s","Symbol","Label","pointToSelf","fontOptions","yLine","nodeOptions","labelDirty","baseline","viewFontSize","calculateLabelSize","_drawBackground","_drawText","lineMargin","fontSize","_getColor2","_getColor","_getColor22","fontColor","_setAlignment2","_setAlignment","_setAlignment22","lineCount","strokeText","_processLabel","measureText","newOptionsArray","_inherits","subClass","superClass","setPrototypeOf","__proto__","_get","_x","_x2","_x3","_again","receiver","desc","getOwnPropertyDescriptor","getPrototypeOf","_utilNodeBase","_utilNodeBase2","Box","_NodeBase","textSize","getTextSize","selectionLineWidth","roundRect","enableShadow","disableShadow","save","enableBorderDashes","disableBorderDashes","restore","NodeBase","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","setLineDash","dashes","_utilCircleImageBase","_utilCircleImageBase2","Circle","_CircleImageBase","diameter","_drawRawCircle","CircleImageBase","labelOffset","imageLoaded","ratio","neutralborderWidth","globalAlpha","drawImage","labelDimensions","CircularImage","_swapToImageResizeWhenImageLoaded","_resizeImage","clip","_drawImageAtPosition","_drawImageLabel","Database","database","_distanceToBorder","_utilShapeBase","_utilShapeBase2","Diamond","_ShapeBase","_resizeShape","_drawShape","ShapeBase","sizeMultiplier","Dot","Ellipse","ellipse","Icon","_icon","iconTextSpacing","Image","Square","Star","Text","Triangle","TriangleDown","_componentsEdge","_componentsEdge2","EdgesHandler","edgesListeners","arrows","scaleFactor","arrowStrikethrough","hoverWidth","selectionWidth","selfReferenceSize","smooth","forceDirection","roundness","emitChange","edgeData","edgeOptions","reconnectEdges","markAllEdgesAsDirty","updateEdgeType","oldEdgesData","edgesData","oldEdge","disconnect","showInternalIds","connect","cleanup","edgeType","colorDirty","_edgesCubicBezierEdge","_edgesCubicBezierEdge2","_edgesBezierEdgeDynamic","_edgesBezierEdgeDynamic2","_edgesBezierEdgeStatic","_edgesBezierEdgeStatic2","_edgesStraightEdge","_edgesStraightEdge2","Edge","baseWidth","connected","_setInteractionWidths","changeInType","attachEdge","detachEdge","widthDiff","viaNode","getViaNode","arrowData","fromPoint","toPoint","getArrowData","core","drawLine","drawArrows","drawLabel","drawArrowHead","node1","node2","getPoint","translate","_rotateForLabelAlignment","_pointOnCircle","xFrom","yFrom","xTo","yTo","xObj","yObj","getDistanceToEdge","angleInDegrees","rotate","percentage","colorsDefined","_x4","_x5","_utilCubicBezierEdgeBase","_utilCubicBezierEdgeBase2","CubicBezierEdge","_CubicBezierEdgeBase","viaNodes","via1","via2","bezierCurveTo","x1","y1","x2","y2","_getViaCoordinates","nearNode","_findBorderPositionBezier","x3","y3","_ref","_ref2","_getDistanceToBezierEdge","_ref3","_ref32","vec","_BezierEdgeBase2","_BezierEdgeBase3","CubicBezierEdgeBase","_BezierEdgeBase","minDistance","lastX","lastY","_getDistanceToLine","_EdgeBase2","_EdgeBase3","BezierEdgeBase","_EdgeBase","distanceToPoint","difference","via","EdgeBase","getColor","getLineWidth","_drawDashedLine","_drawLine","_line","_getCircleData2","_getCircleData","_getCircleData22","_circle","pattern","lineDashOffset","_getCircleData3","_getCircleData32","dashedLine","_getCircleData4","_getCircleData42","_findBorderPosition","_findBorderPositionCircle","_getCircleData5","_getCircleData52","colorOptions","grd","createLinearGradient","fromColor","toColor","addColorStop","_getDistanceToEdge","_getCircleData6","_getCircleData62","px","py","something","u","arrowPoint","guideOffset","findBorderPosition","guidePos","_getCircleData7","_getCircleData72","xi","yi","arrowCore","arrow","_utilBezierEdgeBase","_utilBezierEdgeBase2","BezierEdgeDynamic","_boundFunction","positionBezierNode","physicsChange","setupSupportNode","parentEdgeId","quadraticCurveTo","_x6","BezierEdgeStatic","xVia","yVia","pi","originalAngle","myAngle","_utilEdgeBase","_utilEdgeBase2","StraightEdge","edgeSegmentLength","toBorderDist","toBorderPoint","borderPos","_componentsPhysicsBarnesHutSolver","_componentsPhysicsBarnesHutSolver2","_componentsPhysicsRepulsionSolver","_componentsPhysicsRepulsionSolver2","_componentsPhysicsHierarchicalRepulsionSolver","_componentsPhysicsHierarchicalRepulsionSolver2","_componentsPhysicsSpringSolver","_componentsPhysicsSpringSolver2","_componentsPhysicsHierarchicalSpringSolver","_componentsPhysicsHierarchicalSpringSolver2","_componentsPhysicsCentralGravitySolver","_componentsPhysicsCentralGravitySolver2","_componentsPhysicsFA2BasedRepulsionSolver","_componentsPhysicsFA2BasedRepulsionSolver2","_componentsPhysicsFA2BasedCentralGravitySolver","_componentsPhysicsFA2BasedCentralGravitySolver2","PhysicsEngine","physicsBody","physicsNodeIndices","physicsEdgeIndices","forces","velocities","physicsEnabled","simulationInterval","requiresTimeout","previousStates","referenceState","freezeCache","renderTimer","adaptiveTimestep","adaptiveTimestepEnabled","adaptiveCounter","adaptiveInterval","stabilized","startedStabilization","stabilizationIterations","ready","barnesHut","theta","gravitationalConstant","centralGravity","springLength","springConstant","damping","avoidOverlap","forceAtlas2Based","repulsion","nodeDistance","hierarchicalRepulsion","maxVelocity","minVelocity","stabilization","iterations","updateInterval","onlyDynamicEdges","timestep","layoutFailed","initPhysics","updatePhysicsData","nodesSolver","edgesSolver","gravitySolver","modelOptions","viewFunction","simulationStep","_emitStabilized","startTime","physicsTick","physicsTime","runDoubleSpeed","amountOfIterations","calculateForces","moveNodes","revert","_evaluateStepQuality","nodeIds","positions","vx","vy","dpos","reference","maxNodeVelocity","averageNodeVelocity","velocityAdaptiveThreshold","nodeVelocity","_performStep","totalVelocity","solve","targetIterations","_freezeNodes","_stabilizationBatch","_finalizeStabilization","_restoreFrozenNodes","colorFactor","forceSize","arrowSize","BarnesHutSolver","barnesHutTree","randomSeed","thetaInversed","overlapAvoidanceFactor","nodeCount","_formBarnesHutTree","_getForceContribution","NW","NE","SW","SE","parentBranch","childrenCount","centerOfMass","calcSize","_calculateForces","gravityForce","fx","fy","minX","minY","maxX","maxY","minimumTreeSize","rootSize","halfRootSize","_splitBranch","_placeInTree","totalMass","totalMassInv","biggestSize","skipMassUpdate","_updateBranchMass","_placeInRegion","region","seededRandom","containedNode","_insertRegion","childSize","_drawBranch","branch","RepulsionSolver","repulsingForce","HierarchicalRepulsionSolver","steepness","SpringSolver","edgeLength","node3","_calculateSpringForce","springForce","HierarchicalSpringSolver","springFx","springFy","totalFx","totalFy","correctionFx","correctionFy","CentralGravitySolver","_BarnesHutSolver2","_BarnesHutSolver3","ForceAtlas2BasedRepulsionSolver","_BarnesHutSolver","degree","_CentralGravitySolver2","_CentralGravitySolver3","ForceAtlas2BasedCentralGravitySolver","_CentralGravitySolver","_NetworkUtil","_NetworkUtil2","_componentsNodesCluster","_componentsNodesCluster2","ClusterEngine","clusteredNodes","clusteredEdges","hubsize","_getHubSize","_checkOptions","nodesToCluster","refreshData","joinCondition","childNodesObj","childEdgesObj","clonedOptions","cloneOptions","_cluster","edgeCount","clusters","usedNodes","relevantEdgeCount","gatheringSuccessful","childNodeId","_getConnectedId","clusterByEdgeCount","clusterNodeProperties","parentNodeId","parentClonedOptions","childClonedOptions","clusterEdgeProperties","childNode","otherNodeId","childKeys","createEdges","_edge","newEdge","clusteringEdgeReplacingId","_backupEdgeOptions","processProperties","childNodesOptions","childEdgesOptions","clusterId","_getClusterPosition","clusterNode","containedNodes","containedEdges","_createClusterEdges","originalOptions","clusterNodeId","releaseFunction","clusterPosition","newPositions","edgesToBeDeleted","otherCluster","transferEdge","replacedEdge","_restoreEdge","nodesArray","reverse","average","averageSquared","hubCounter","largestHub","variance","standardDeviation","hubThreshold","NetworkUtil","allNodes","specificNodes","amountOfConnections","_Node2","_Node3","Cluster","_Node","requestAnimationFrame","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","CanvasRenderer","redrawRequested","renderingActive","renderRequests","allowRedraw","hideEdgesOnDrag","hideNodesOnDrag","_determineBrowserMethod","_resizeNodes","_requestRedraw","_startRendering","cancelAnimationFrame","_renderStep","_drawEdges","_drawNodes","alwaysShow","topLeft","bottomRight","viewableArea","isSelected","isBoundingBoxOverlappingWith","browserType","Canvas","resizeTimer","resizeFunction","cameraState","hammerFrame","_cleanUp","previousWidth","previousHeight","widthRatio","heightRatio","newScale","currentViewCenter","distanceFromCenter","tabIndex","_prepareValue","emitEvent","oldWidth","oldHeight","previousRatio","_getCameraState","_setCameraState","_XconvertCanvasToDOM","_YconvertCanvasToDOM","_XconvertDOMtoCanvas","_YconvertDOMtoCanvas","View","animationSpeed","renderRefreshRate","animationEasingFunction","easingTime","sourceScale","targetScale","sourceTranslation","targetTranslation","lockedOnNodeId","lockedOnNodeOffset","touchTime","initialZoom","zoomLevel","positionDefined","numberOfNodes","yDistance","xZoomLevel","yZoomLevel","findCenter","animationOptions","nodePosition","lockedOnNode","animateView","locked","_transitionRedraw","viewCenter","_lockedRedraw","finished","_componentsNavigationHandler","_componentsNavigationHandler2","_componentsPopup","_componentsPopup2","InteractionHandler","navigationHandler","popup","popupObj","popupTimer","dragNodes","dragView","keyboard","speed","bindToWindow","navigationButtons","tooltipDelay","zoomView","pinched","checkSelectionChanges","_generateClickEvent","previouslySelectedEdgeCount","_getSelectedEdgeCount","previouslySelectedNodeCount","_getSelectedNodeCount","previousSelection","selectAdditionalOnPoint","selectOnPoint","selectedEdgesCount","selectedNodesCount","currentSelection","_determineIfDifferent2","_determineIfDifferent","nodesChanges","edgesChanges","nodeSelected","selectObject","selectionObj","xFixed","yFixed","scaleOld","preScaleDragPointer","scaleFrac","tx","ty","postScaleDragPointer","popupVisible","_checkHidePopup","setPosition","_checkShowPopup","hoverObject","pointerObj","previousPopupObjId","nodeUnderCursor","popupType","overlappingNodes","isOverlappingWith","getTitle","overlappingEdges","popupTargetType","popupTargetId","setText","_pointerToPositionObject","stillOnObj","overNode","NavigationHandler","iconsCreated","navigationHammers","boundFunctions","activated","configureKeyboardBindings","loadNavigationElements","cleanNavigation","navigationDOM","navigationDivs","navigationDivActions","_fit","bindToRedraw","_stopMovement","boundAction","unbindFromRedraw","Popup","doShow","SelectionHandler","hoverObj","selectConnectedEdges","hoverConnectedEdges","updateSelection","selectionChanged","deselectObject","emptySelection","DOM","highlightEdges","_selectConnectedEdges","_addToSelection","_removeFromSelection","canvasPos","returnNode","positionObject","_getAllNodesOverlappingWith","_getEdgesOverlappingWith","returnEdge","_getAllEdgesOverlappingWith","_unselectConnectedEdges","clusterSize","_addToHover","hoverChanged","blurObject","_hoverConnectedEdges","edgeIds","idArray","RangeError","LayoutEngine","initialRandomSeed","setPhysics","optionsBackup","improvedLayout","hierarchical","levelSeparation","nodeSpacing","treeSpacing","blockShifting","edgeMinimization","sortMethod","setupHierarchicalLayout","layoutNetwork","prevHierarchicalState","adaptAllOptionsForHierarchicalLayout","MAX_LEVELS","clusterThreshold","startLength","before","clusterBridges","after","_declusterAll","info","kamadaKawai","_shiftToCenter","getRangeCore","clustersPresent","definedLevel","definedPositions","undefinedLevel","hierarchicalLevels","lastNodeOnLevel","hierarchicalParents","hierarchicalChildren","hierarchicalTrees","treeIndex","distributionOrdering","distributionIndex","distributionOrderingPresence","_determineLevelsByHubsize","_determineLevelsDirected","_determineLevelsCustomCallback","distribution","_getDistribution","_generateMap","_placeNodesByHierarchy","_condenseHierarchy","stillShifting","branches","shiftTrees","treeSizes","getTreeSizes","shiftTree","_setPositionForHierarchy","getTreeSize","_getPositionForHierarchy","treeWidths","getBranchNodes","getBranchBoundary","branchMap","maxLevel","minSpace","maxSpace","branchNode","_getSpaceAroundNode2","_getSpaceAroundNode","_getSpaceAroundNode22","minSpaceNode","maxSpaceNode","getMaxLevel","getCollisionLevel","maxLevel1","maxLevel2","hasSameParent","parents1","parents2","parents","shiftElementsCloser","levels","centerParents","levelNodes","branchShiftCallback","centerParent","diffAbs","branchNodes1","branchNodes2","_getBranchBoundary","_getBranchBoundary2","max1","_getBranchBoundary3","_getBranchBoundary32","min2","minSpace2","diffBranch","_shiftBlock","_centerParent","minimizeEdgeLength","allEdges","nodeLevel","C2","referenceNodes","aboveEdges","otherNode","getFx","getDFx","getGuess","guess","guessMap","dfx","moveBranch","branchNodes","_getBranchBoundary4","_getBranchBoundary42","minSpaceBranch","maxSpaceBranch","branchOffset","_getSpaceAroundNode3","_getSpaceAroundNode32","newPosition","minimizeEdgeLengthBottomUp","shiftBranchesCloserBottomUp","centerAllParents","useMap","prevNode","prevPos","nextNode","nextPos","parentId","minPos","maxPos","_getSpaceAroundNode4","_getSpaceAroundNode42","positionedNodes","nodeArray","_indexArrayToNodes","_sortNodeArray","_placeBranchNodes","hubSize","levelDownstream","nodeA","nodeB","_crawlNetwork","minLevel","customCallback","levelByDirection","levelA","_setMinLevelToZero","fillInRelations","startingNodeId","crawler","parentLevel","childNodeLevel","previousPos","sharedParent","_findCommonParent","withChild","childA","childB","_this7","iterateParents","_parent","findParent","_parent2","foundParent","doNotUpdate","tree","ManipulationSystem","editMode","manipulationDiv","editModeDiv","closeDiv","manipulationHammers","temporaryUIFunctions","temporaryEventFunctions","temporaryIds","guiEnabled","inMode","selectedControlNode","initiallyActive","addNode","addEdge","editEdge","deleteNode","deleteEdge","controlNodeStyle","_restore","_setup","showManipulatorToolbar","_createEditButton","manipulationDOM","selectedNodeCount","selectedEdgeCount","selectedTotalCount","needSeperator","_createAddNodeButton","_createSeperator","_createAddEdgeButton","_createEditNodeButton","_createEditEdgeButton","_createDeleteButton","_bindHammerToDiv","toggleEditMode","_temporaryBindEvent","_createBackButton","_createDescription","_performAddNode","_getSelectedNode","finalizedData","_temporaryBindUI","_handleConnect","_finishConnect","_dragControlNode","edgeBeingEditedId","controlNodeFrom","_getNewTargetNode","controlNodeTo","_controlNodeTouch","_controlNodeDragStart","_controlNodeDrag","_controlNodeDragEnd","findBorderPositions","selectedNodes","selectedEdges","deleteFunction","_createWrappers","_removeManipulationDOM","_createButton","_cleanManipulatorHammers","_cleanupTemporaryNodesAndEdges","_unbindTemporaryUIs","_unbindTemporaryEvents","labelClassName","newFunction","boundFunction","UIfunctionName","functionName","eventName","domElement","indexTempEdge","indexTempNode","lastTouch","fromSelect","toSelect","overlappingNodeIds","_performEditEdge","targetNode","connectionEdge","connectFromId","_performAddEdge","clickData","defaultData","sourceNodeId","targetNodeId","_componentsAlgorithmsFloydWarshallJs","_componentsAlgorithmsFloydWarshallJs2","KamadaKawai","edgeStrength","distanceSolver","edgesArray","ignoreClusters","D_matrix","getDistances","_createL_matrix","_createK_matrix","innerThreshold","maxInnerIterations","maxEnergy","highE_nodeId","dE_dx","dE_dy","delta_m","subIterations","_getHighestEnergyNode2","_getHighestEnergyNode","_getHighestEnergyNode22","_moveNode","_getEnergy2","_getEnergy","_getEnergy22","maxEnergyNodeId","dE_dx_max","dE_dy_max","nodeIdx","_getEnergy3","_getEnergy32","x_m","y_m","iIdx","x_i","y_i","denominator","K_matrix","L_matrix","d2E_dx2","d2E_dxdy","d2E_dy2","FloydWarshall","CanvasRenderingContext2D","square","s2","ir","triangleDown","star","diamond","r2d","kappa","ox","oy","xe","ye","xm","ym","wEllipse","hEllipse","ymb","yeb","xt","yt","xl","yl","xr","yr","patternLength","slope","distRemaining","patternIndex","dashLength","parseDOT","parseGraph","nextPreview","isAlphaNumeric","regexAlphaNumeric","setValue","graphs","attr","getToken","tokenType","TOKENTYPE","NULL","isComment","DELIMITER","c2","DELIMITERS","IDENTIFIER","newSyntaxError","UNKNOWN","chop","parseStatements","parseStatement","subgraph","parseSubgraph","parseEdge","parseAttributeStatement","parseNodeStatement","subgraphs","parseAttributeList","maxLength","forEach2","elem1","elem2","setProp","convertAttr","mapping","visProp","visPropI","graphData","dotNode","graphNode","NODE_ATTR_MAPPING","convertEdge","dotEdge","graphEdge","EDGE_ATTR_MAPPING","subEdge","fontsize","fontcolor","labelfontcolor","fontname","fillcolor","labeltooltip","{","}","[","]",";","=",",","->","--","gephiJSON","inheritColor","gEdges","gNodes","gEdge","gNode","imageBroken","url","imageToCache","brokenUrl","imageToLoadBrokenUrlOn","onerror","_addImageToCache","imageToRedrawWith","cachedImage","img","onload","_redrawWithImage","_tryloadBrokenUrl","edit","del","back","addDescription","edgeDescription","editEdgeDescription","createEdgeError","deleteClusterError","editClusterError"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAyBA,cAEA,SAA2CA,EAAMC,GAC1B,gBAAZC,UAA0C,gBAAXC,QACxCA,OAAOD,QAAUD,IACQ,kBAAXG,SAAyBA,OAAOC,IAC9CD,UAAWH,GACe,gBAAZC,SACdA,QAAa,IAAID,IAEjBD,EAAU,IAAIC,KACbK,KAAM,WACT,MAAgB,UAAUC,GAKhB,QAASC,GAAoBC,GAG5B,GAAGC,EAAiBD,GACnB,MAAOC,GAAiBD,GAAUP,OAGnC,IAAIC,GAASO,EAAiBD,IAC7BP,WACAS,GAAIF,EACJG,QAAQ,EAUT,OANAL,GAAQE,GAAUI,KAAKV,EAAOD,QAASC,EAAQA,EAAOD,QAASM,GAG/DL,EAAOS,QAAS,EAGTT,EAAOD,QAvBf,GAAIQ,KAqCJ,OATAF,GAAoBM,EAAIP,EAGxBC,EAAoBO,EAAIL,EAGxBF,EAAoBQ,EAAI,GAGjBR,EAAoB,KAK/B,SAASL,EAAQD,EAASM,GAK9BN,EAAQe,KAAOT,EAAoB,GACnCN,EAAQgB,QAAUV,EAAoB,GAGtCN,EAAQiB,QAAUX,EAAoB,GACtCN,EAAQkB,SAAWZ,EAAoB,IACvCN,EAAQmB,MAAQb,EAAoB,GAGpCN,EAAQoB,QAAUd,EAAoB,IACtCN,EAAQqB,SACNC,OAAQhB,EAAoB,IAC5BiB,OAAQjB,EAAoB,IAC5BkB,QAASlB,EAAoB,IAC7BmB,QAASnB,EAAoB,IAC7BoB,OAAQpB,EAAoB,IAC5BqB,WAAYrB,EAAoB,KAIlCN,EAAQ4B,SAAWtB,EAAoB,IACvCN,EAAQ6B,QAAUvB,EAAoB,IACtCN,EAAQ8B,UACNC,KAAMzB,EAAoB,IAC1B0B,SAAU1B,EAAoB,IAC9B2B,MAAO3B,EAAoB,IAC3B4B,MAAO5B,EAAoB,IAC3B6B,SAAU7B,EAAoB,IAE9B8B,YACEC,OACEC,KAAMhC,EAAoB,IAC1BiC,eAAgBjC,EAAoB,IACpCkC,QAASlC,EAAoB,IAC7BmC,UAAWnC,EAAoB,IAC/BoC,UAAWpC,EAAoB,KAGjCqC,gBAAiBrC,EAAoB,IACrCsC,UAAWtC,EAAoB,IAC/BuC,YAAavC,EAAoB,IACjCwC,WAAYxC,EAAoB,IAChCyC,SAAUzC,EAAoB,IAC9B0C,UAAW1C,EAAoB,IAC/B2C,WAAY3C,EAAoB,IAChC4C,MAAO5C,EAAoB,IAC3B6C,QAAS7C,EAAoB,IAC7B8C,OAAQ9C,EAAoB,IAC5B+C,UAAW/C,EAAoB,IAC/BgD,SAAUhD,EAAoB,MAKlCN,EAAQuD,QAAUjD,EAAoB,IACtCN,EAAQwD,SACNC,OAAQnD,EAAoB,KAC5BoD,UAAWpD,EAAoB,KAC/BqD,YAAarD,EAAoB,KACjCsD,WAAYtD,EAAoB,MAElCN,EAAQwD,QAAQK,WAAa,SAAUC,GACrC,MAAO9D,GAAQwD,QAAQE,UAAUK,WAAWD,IAE9C9D,EAAQwD,QAAQQ,aAAe,SAAUF,EAAOG,GAC9C,MAAOjE,GAAQwD,QAAQG,YAAYO,WAAWJ,EAAOG,IAIvDjE,EAAQmE,OAAS7D,EAAoB,GACrCN,EAAQoE,OAAS9D,EAAoB,IACrCN,EAAQqE,SAAW/D,EAAoB,KAInC,SAASL,EAAQD,EAASM,GAS9B,GAAI6D,GAAS7D,EAAoB,GAC7BgE,EAAOhE,EAAoB,EAO/BN,GAAQuE,SAAW,SAAUC,GAC3B,MAAOA,aAAkBC,SAA2B,gBAAVD,IAO5CxE,EAAQ0E,mBAAqB,SAAUC,GACrC,GAAIA,EACF,KAAOA,EAAUC,mBAAoB,GACnC5E,EAAQ0E,mBAAmBC,EAAUE,YACrCF,EAAUG,YAAYH,EAAUE,aActC7E,EAAQ+E,UAAY,SAAUC,EAAKC,EAAKC,EAAOC,GAC7C,GAAIF,GAAOD,EACT,MAAO,EAEP,IAAII,GAAQ,GAAKH,EAAMD,EACvB,OAAOK,MAAKJ,IAAI,GAAIE,EAAQH,GAAOI,IASvCpF,EAAQsF,SAAW,SAAUd,GAC3B,MAAOA,aAAkBe,SAA2B,gBAAVf,IAQ5CxE,EAAQwF,OAAS,SAAUhB,GACzB,GAAIA,YAAkBiB,MACpB,OAAO,CACF,IAAIzF,EAAQsF,SAASd,GAAS,CAEnC,GAAIkB,GAAQC,EAAaC,KAAKpB,EAC9B,IAAIkB,EACF,OAAO,CACF,KAAKG,MAAMJ,KAAKK,MAAMtB,IAC3B,OAAO,EAIX,OAAO,GAQTxE,EAAQ+F,WAAa,WACnB,MAAOzB,GAAK0B,MAQdhG,EAAQiG,cAAgB,SAAUC,EAAKf,GACrC,IAAK,GAAIgB,KAAQD,GACXA,EAAIE,eAAeD,IACI,gBAAdD,GAAIC,KACbD,EAAIC,GAAQhB,IAYpBnF,EAAQqG,cAAgB,SAAUC,EAAGC,GACnC,GAAIC,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAE5F,KAAK,GAAIN,KAAQG,GACCK,SAAZJ,EAAEJ,KACmB,gBAAZI,GAAEJ,GACMQ,SAAZJ,EAAEJ,IAAmC,OAAZI,EAAEJ,IAA+BQ,SAAZL,EAAEH,IAAuBK,KAAkB,EAG5FF,EAAEH,GAAQI,EAAEJ,SAFLG,GAAEH,GAKY,gBAAZG,GAAEH,IACXnG,EAAQqG,cAAcC,EAAEH,GAAOI,EAAEJ,GAAOK,KAclDxG,EAAQ4G,YAAc,SAAUN,EAAGC,GACjC,IAAK,GAAIM,GAAI,EAAGA,EAAIJ,UAAUC,OAAQG,IAAK,CACzC,GAAIC,GAAQL,UAAUI,EACtB,KAAK,GAAIV,KAAQW,GACfR,EAAEH,GAAQW,EAAMX,GAGpB,MAAOG,IAUTtG,EAAQ+G,OAAS,SAAUT,EAAGC,GAC5B,IAAK,GAAIM,GAAI,EAAGA,EAAIJ,UAAUC,OAAQG,IAAK,CACzC,GAAIC,GAAQL,UAAUI,EACtB,KAAK,GAAIV,KAAQW,GACXA,EAAMV,eAAeD,KACvBG,EAAEH,GAAQW,EAAMX,IAItB,MAAOG,IAWTtG,EAAQgH,gBAAkB,SAAUC,EAAOX,EAAGC,GAC5C,IAAKW,MAAMC,QAAQF,GACjB,KAAM,IAAIG,OAAM,uDAGlB,KAAK,GAAIP,GAAI,EAAGA,EAAIJ,UAAUC,OAAQG,IAGpC,IAAK,GAFDC,GAAQL,UAAUI,GAEb/F,EAAI,EAAGA,EAAImG,EAAMP,OAAQ5F,IAAK,CACrC,GAAIqF,GAAOc,EAAMnG,EACbgG,GAAMV,eAAeD,KACvBG,EAAEH,GAAQW,EAAMX,IAItB,MAAOG,IAWTtG,EAAQqH,oBAAsB,SAAUJ,EAAOX,EAAGC,GAChD,GAAIC,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAG5F,IAAIS,MAAMC,QAAQZ,GAChB,KAAM,IAAIe,WAAU,yCAEtB,KAAK,GAAIT,GAAI,EAAGA,EAAIJ,UAAUC,OAAQG,IAEpC,IAAK,GADDC,GAAQL,UAAUI,GACb/F,EAAI,EAAGA,EAAImG,EAAMP,OAAQ5F,IAAK,CACrC,GAAIqF,GAAOc,EAAMnG,EACjB,IAAIgG,EAAMV,eAAeD,GACvB,GAAII,EAAEJ,IAASI,EAAEJ,GAAMoB,cAAgBC,OACrBb,SAAZL,EAAEH,KACJG,EAAEH,OAEAG,EAAEH,GAAMoB,cAAgBC,OAC1BxH,EAAQyH,WAAWnB,EAAEH,GAAOI,EAAEJ,IAAO,EAAOK,GAE5B,OAAZD,EAAEJ,IAA8BQ,SAAZL,EAAEH,IAAuBK,KAAkB,QAC1DF,GAAEH,GAETG,EAAEH,GAAQI,EAAEJ,OAGX,CAAA,GAAIe,MAAMC,QAAQZ,EAAEJ,IACzB,KAAM,IAAImB,WAAU,yCAEJ,QAAZf,EAAEJ,IAA8BQ,SAAZL,EAAEH,IAAuBK,KAAkB,QAC1DF,GAAEH,GAETG,EAAEH,GAAQI,EAAEJ,IAMtB,MAAOG,IAWTtG,EAAQ0H,uBAAyB,SAAUT,EAAOX,EAAGC,GACnD,GAAIC,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAG5F,IAAIS,MAAMC,QAAQZ,GAChB,KAAM,IAAIe,WAAU,yCAEtB,KAAK,GAAInB,KAAQI,GACf,GAAIA,EAAEH,eAAeD,IACQ,IAAvBc,EAAMU,QAAQxB,GAChB,GAAII,EAAEJ,IAASI,EAAEJ,GAAMoB,cAAgBC,OACrBb,SAAZL,EAAEH,KACJG,EAAEH,OAEAG,EAAEH,GAAMoB,cAAgBC,OAC1BxH,EAAQyH,WAAWnB,EAAEH,GAAOI,EAAEJ,IAEd,OAAZI,EAAEJ,IAA8BQ,SAAZL,EAAEH,IAAuBK,KAAkB,QAC1DF,GAAEH,GAETG,EAAEH,GAAQI,EAAEJ,OAGX,IAAIe,MAAMC,QAAQZ,EAAEJ,IAAQ,CACjCG,EAAEH,KACF,KAAK,GAAIU,GAAI,EAAGA,EAAIN,EAAEJ,GAAMO,OAAQG,IAClCP,EAAEH,GAAMyB,KAAKrB,EAAEJ,GAAMU,QAGP,QAAZN,EAAEJ,IAA8BQ,SAAZL,EAAEH,IAAuBK,KAAkB,QAC1DF,GAAEH,GAETG,EAAEH,GAAQI,EAAEJ,EAMtB,OAAOG,IAYTtG,EAAQyH,WAAa,SAAUnB,EAAGC,EAAGK,EAAaJ,GAChD,IAAK,GAAIL,KAAQI,GACf,GAAIA,EAAEH,eAAeD,IAASS,KAAgB,EAC5C,GAAIL,EAAEJ,IAASI,EAAEJ,GAAMoB,cAAgBC,OACrBb,SAAZL,EAAEH,KACJG,EAAEH,OAEAG,EAAEH,GAAMoB,cAAgBC,OAC1BxH,EAAQyH,WAAWnB,EAAEH,GAAOI,EAAEJ,GAAOS,GAErB,OAAZL,EAAEJ,IAA8BQ,SAAZL,EAAEH,IAAuBK,KAAkB,QAC1DF,GAAEH,GAETG,EAAEH,GAAQI,EAAEJ,OAGX,IAAIe,MAAMC,QAAQZ,EAAEJ,IAAQ,CACjCG,EAAEH,KACF,KAAK,GAAIU,GAAI,EAAGA,EAAIN,EAAEJ,GAAMO,OAAQG,IAClCP,EAAEH,GAAMyB,KAAKrB,EAAEJ,GAAMU,QAGP,QAAZN,EAAEJ,IAA8BQ,SAAZL,EAAEH,IAAuBK,KAAkB,QAC1DF,GAAEH,GAETG,EAAEH,GAAQI,EAAEJ,EAKpB,OAAOG,IAUTtG,EAAQ6H,WAAa,SAAUvB,EAAGC,GAChC,GAAID,EAAEI,QAAUH,EAAEG,OAAQ,OAAO,CAEjC,KAAK,GAAIG,GAAI,EAAGiB,EAAMxB,EAAEI,OAAYoB,EAAJjB,EAASA,IACvC,GAAIP,EAAEO,IAAMN,EAAEM,GAAI,OAAO,CAG3B,QAAO,GAYT7G,EAAQ+H,QAAU,SAAUvD,EAAQwD,GAClC,GAAItC,EAEJ,IAAeiB,SAAXnC,EAAJ,CAGA,GAAe,OAAXA,EACF,MAAO,KAGT,KAAKwD,EACH,MAAOxD,EAET,IAAsB,gBAATwD,MAAwBA,YAAgBzC,SACnD,KAAM,IAAI6B,OAAM,wBAIlB,QAAQY,GACN,IAAK,UACL,IAAK,UACH,MAAOC,SAAQzD,EAEjB,KAAK,SACL,IAAK,SACH,MAAOC,QAAOD,EAAO0D,UAEvB,KAAK,SACL,IAAK,SACH,MAAO3C,QAAOf,EAEhB,KAAK,OACH,GAAIxE,EAAQuE,SAASC,GACnB,MAAO,IAAIiB,MAAKjB,EAElB,IAAIA,YAAkBiB,MACpB,MAAO,IAAIA,MAAKjB,EAAO0D,UAClB,IAAI/D,EAAOgE,SAAS3D,GACzB,MAAO,IAAIiB,MAAKjB,EAAO0D,UAEzB,IAAIlI,EAAQsF,SAASd,GAEnB,MADAkB,GAAQC,EAAaC,KAAKpB,GACtBkB,EAEK,GAAID,MAAKhB,OAAOiB,EAAM,KAEpBvB,EAAOK,GAAQ4D,QAGxB,MAAM,IAAIhB,OAAM,iCAAmCpH,EAAQqI,QAAQ7D,GAAU,gBAGnF,KAAK,SACH,GAAIxE,EAAQuE,SAASC,GACnB,MAAOL,GAAOK,EAEhB,IAAIA,YAAkBiB,MACpB,MAAOtB,GAAOK,EAAO0D,UAChB,IAAI/D,EAAOgE,SAAS3D,GACzB,MAAOL,GAAOK,EAEhB,IAAIxE,EAAQsF,SAASd,GAEnB,MADAkB,GAAQC,EAAaC,KAAKpB,GAGjBL,EAFLuB,EAEYjB,OAAOiB,EAAM,IAEXlB,EAGhB,MAAM,IAAI4C,OAAM,iCAAmCpH,EAAQqI,QAAQ7D,GAAU,gBAGnF,KAAK,UACH,GAAIxE,EAAQuE,SAASC,GACnB,MAAO,IAAIiB,MAAKjB,EACX,IAAIA,YAAkBiB,MAC3B,MAAOjB,GAAO8D,aACT,IAAInE,EAAOgE,SAAS3D,GACzB,MAAOA,GAAO4D,SAASE,aAClB,IAAItI,EAAQsF,SAASd,GAE1B,MADAkB,GAAQC,EAAaC,KAAKpB,GACtBkB,EAEK,GAAID,MAAKhB,OAAOiB,EAAM,KAAK4C,cAEzB,GAAI7C,MAAKjB,GAAQ8D,aAG1B,MAAM,IAAIlB,OAAM,iCAAmCpH,EAAQqI,QAAQ7D,GAAU,mBAGnF,KAAK,UACH,GAAIxE,EAAQuE,SAASC,GACnB,MAAO,SAAWA,EAAS,IACtB,IAAIA,YAAkBiB,MAC3B,MAAO,SAAWjB,EAAO0D,UAAY,IAChC,IAAIlI,EAAQsF,SAASd,GAAS,CACnCkB,EAAQC,EAAaC,KAAKpB,EAC1B,IAAIW,EAOJ,OAJEA,GAFEO,EAEM,GAAID,MAAKhB,OAAOiB,EAAM,KAAKwC,UAEzB,GAAIzC,MAAKjB,GAAQ0D,UAEtB,SAAW/C,EAAQ,KAE1B,KAAM,IAAIiC,OAAM,iCAAmCpH,EAAQqI,QAAQ7D,GAAU,mBAGjF,SACE,KAAM,IAAI4C,OAAM,iBAAmBY,EAAO,OAOhD,IAAIrC,GAAe,qBAOnB3F,GAAQqI,QAAU,SAAU7D,GAC1B,GAAIwD,SAAcxD,EAElB,OAAY,UAARwD,EACa,OAAXxD,EACK,OAELA,YAAkByD,SACb,UAELzD,YAAkBC,QACb,SAELD,YAAkBe,QACb,SAEL2B,MAAMC,QAAQ3C,GACT,QAELA,YAAkBiB,MACb,OAEF,SACU,UAARuC,EACF,SACU,WAARA,EACF,UACU,UAARA,EACF,SACWrB,SAATqB,EACF,YAGFA,GAUThI,EAAQuI,mBAAqB,SAAUC,EAAKC,GAE1C,IAAK,GADDC,MACK7B,EAAI,EAAGA,EAAI2B,EAAI9B,OAAQG,IAC9B6B,EAAOd,KAAKY,EAAI3B,GAGlB,OADA6B,GAAOd,KAAKa,GACLC,GAUT1I,EAAQ2I,UAAY,SAAUH,GAE5B,IAAK,GADDE,MACK7B,EAAI,EAAGA,EAAI2B,EAAI9B,OAAQG,IAC9B6B,EAAOd,KAAKY,EAAI3B,GAElB,OAAO6B,IAST1I,EAAQ4I,gBAAkB,SAAUC,GAClC,MAAOA,GAAKC,wBAAwBC,MAStC/I,EAAQgJ,eAAiB,SAAUH,GACjC,MAAOA,GAAKC,wBAAwBG,KAQtCjJ,EAAQkJ,aAAe,SAAUL,EAAMM,GACrC,GAAIC,GAAUP,EAAKM,UAAUE,MAAM,IACD,KAA9BD,EAAQzB,QAAQwB,KAClBC,EAAQxB,KAAKuB,GACbN,EAAKM,UAAYC,EAAQE,KAAK,OASlCtJ,EAAQuJ,gBAAkB,SAAUV,EAAMM,GACxC,GAAIC,GAAUP,EAAKM,UAAUE,MAAM,KAC/BG,EAAQJ,EAAQzB,QAAQwB,EACf,KAATK,IACFJ,EAAQK,OAAOD,EAAO,GACtBX,EAAKM,UAAYC,EAAQE,KAAK,OAalCtJ,EAAQ0J,QAAU,SAAUlF,EAAQmF,GAClC,GAAI9C,GAAGiB,CACP,IAAIZ,MAAMC,QAAQ3C,GAEhB,IAAKqC,EAAI,EAAGiB,EAAMtD,EAAOkC,OAAYoB,EAAJjB,EAASA,IACxC8C,EAASnF,EAAOqC,GAAIA,EAAGrC,OAIzB,KAAKqC,IAAKrC,GACJA,EAAO4B,eAAeS,IACxB8C,EAASnF,EAAOqC,GAAIA,EAAGrC,IAY/BxE,EAAQ4J,QAAU,SAAUpF,GAC1B,GAAIqF,KAEJ,KAAK,GAAI1D,KAAQ3B,GACXA,EAAO4B,eAAeD,IAAO0D,EAAMjC,KAAKpD,EAAO2B,GAGrD,OAAO0D,IAUT7J,EAAQ8J,eAAiB,SAAUtF,EAAQuF,EAAK5E,GAC9C,MAAIX,GAAOuF,KAAS5E,GAClBX,EAAOuF,GAAO5E,GACP,IAEA,GAUXnF,EAAQgK,SAAW,SAAUC,EAAIC,GAC/B,GAAIC,GAAU,KACVC,GAAgB,CAEpB,OAAO,SAASC,KACTF,EAWHC,GAAgB,GAVhBA,GAAgB,EAChBH,IAEAE,EAAUG,WAAW,WACnBH,EAAU,KACNC,GACFC,KAEDH,MAeTlK,EAAQuK,iBAAmB,SAAUC,EAASC,EAAQC,EAAUC,GAC1DH,EAAQD,kBACS5D,SAAfgE,IAA0BA,GAAa,GAE5B,eAAXF,GAA2BG,UAAUC,UAAUlD,QAAQ,YAAc,IACvE8C,EAAS,kBAGXD,EAAQD,iBAAiBE,EAAQC,EAAUC,IAE3CH,EAAQM,YAAY,KAAOL,EAAQC,IAWvC1K,EAAQ+K,oBAAsB,SAAUP,EAASC,EAAQC,EAAUC,GAC7DH,EAAQO,qBAESpE,SAAfgE,IAA0BA,GAAa,GAE5B,eAAXF,GAA2BG,UAAUC,UAAUlD,QAAQ,YAAc,IACvE8C,EAAS,kBAGXD,EAAQO,oBAAoBN,EAAQC,EAAUC,IAG9CH,EAAQQ,YAAY,KAAOP,EAAQC,IAOvC1K,EAAQiL,eAAiB,SAAUC,GAC5BA,IAAOA,EAAQC,OAAOD,OAEvBA,EAAMD,eACRC,EAAMD,iBAEJC,EAAME,aAAc,GAS1BpL,EAAQqL,UAAY,SAAUH,GAEvBA,IACHA,EAAQC,OAAOD,MAGjB,IAAII,EAaJ,OAXIJ,GAAMI,OACRA,EAASJ,EAAMI,OACNJ,EAAMK,aACfD,EAASJ,EAAMK,YAGM5E,QAAnB2E,EAAOE,UAA4C,GAAnBF,EAAOE,WAEzCF,EAASA,EAAOG,YAGXH,GAQTtL,EAAQ0L,UAAY,SAAUlB,EAASmB,GAGrC,IAFA,GAAIC,GAAIpB,EAEDoB,GAAG,CACR,GAAIA,IAAMD,EACR,OAAO,CAETC,GAAIA,EAAEH,WAGR,OAAO,GAGTzL,EAAQ6L,UAQR7L,EAAQ6L,OAAOC,UAAY,SAAU3G,EAAO4G,GAK1C,MAJoB,kBAAT5G,KACTA,EAAQA,KAGG,MAATA,EACc,GAATA,EAGF4G,GAAgB,MASzB/L,EAAQ6L,OAAOG,SAAW,SAAU7G,EAAO4G,GAKzC,MAJoB,kBAAT5G,KACTA,EAAQA,KAGG,MAATA,EACKV,OAAOU,IAAU4G,GAAgB,KAGnCA,GAAgB,MASzB/L,EAAQ6L,OAAOI,SAAW,SAAU9G,EAAO4G,GAKzC,MAJoB,kBAAT5G,KACTA,EAAQA,KAGG,MAATA,EACKI,OAAOJ,GAGT4G,GAAgB,MASzB/L,EAAQ6L,OAAOK,OAAS,SAAU/G,EAAO4G,GAKvC,MAJoB,kBAAT5G,KACTA,EAAQA,KAGNnF,EAAQsF,SAASH,GACZA,EACEnF,EAAQuE,SAASY,GACnBA,EAAQ,KAER4G,GAAgB,MAU3B/L,EAAQ6L,OAAOM,UAAY,SAAUhH,EAAO4G,GAK1C,MAJoB,kBAAT5G,KACTA,EAAQA,KAGHA,GAAS4G,GAAgB,MASlC/L,EAAQoM,SAAW,SAAUC,GAE3B,GAAIC,GAAiB,kCACrBD,GAAMA,EAAIE,QAAQD,EAAgB,SAAU1L,EAAG4L,EAAGC,EAAGlG,GACnD,MAAOiG,GAAIA,EAAIC,EAAIA,EAAIlG,EAAIA,GAE7B,IAAImG,GAAS,4CAA4C9G,KAAKyG,EAC9D,OAAOK,IACLF,EAAGG,SAASD,EAAO,GAAI,IACvBD,EAAGE,SAASD,EAAO,GAAI,IACvBnG,EAAGoG,SAASD,EAAO,GAAI,KACrB,MASN1M,EAAQ4M,gBAAkB,SAAUC,EAAOC,GACzC,GAA6B,IAAzBD,EAAMlF,QAAQ,QAChB,MAAOkF,EACF,IAA4B,IAAxBA,EAAMlF,QAAQ,OAAc,CACrC,GAAIoF,GAAMF,EAAMG,OAAOH,EAAMlF,QAAQ,KAAO,GAAG4E,QAAQ,IAAK,IAAIlD,MAAM,IACtE,OAAO,QAAU0D,EAAI,GAAK,IAAMA,EAAI,GAAK,IAAMA,EAAI,GAAK,IAAMD,EAAU,IAExE,GAAIC,GAAM/M,EAAQoM,SAASS,EAC3B,OAAW,OAAPE,EACKF,EAEA,QAAUE,EAAIP,EAAI,IAAMO,EAAIN,EAAI,IAAMM,EAAIxG,EAAI,IAAMuG,EAAU,KAa3E9M,EAAQiN,SAAW,SAAUC,EAAKC,EAAOC,GACvC,MAAO,MAAQ,GAAK,KAAOF,GAAO,KAAOC,GAAS,GAAKC,GAAMC,SAAS,IAAIC,MAAM,IASlFtN,EAAQuN,WAAa,SAAUV,GAC7B,GAAIhM,EACJ,IAAIb,EAAQsF,SAASuH,MAAW,EAAM,CACpC,GAAI7M,EAAQwN,WAAWX,MAAW,EAAM,CACtC,GAAIE,GAAMF,EAAMG,OAAO,GAAGA,OAAO,EAAGH,EAAMnG,OAAS,GAAG2C,MAAM,KAAKoE,IAAI,SAAUtI,GAC7E,MAAOwH,UAASxH,IAElB0H,GAAQ7M,EAAQiN,SAASF,EAAI,GAAIA,EAAI,GAAIA,EAAI,IAE/C,GAAI/M,EAAQ0N,WAAWb,MAAW,EAAM,CACtC,GAAIc,GAAM3N,EAAQ4N,SAASf,GACvBgB,GAAoBC,EAAGH,EAAIG,EAAGC,EAAW,GAARJ,EAAII,EAASC,EAAG3I,KAAKL,IAAI,EAAW,KAAR2I,EAAIK,IACjEC,GAAmBH,EAAGH,EAAIG,EAAGC,EAAG1I,KAAKL,IAAI,EAAW,KAAR2I,EAAII,GAAWC,EAAW,GAARL,EAAIK,GAClEE,EAAiBlO,EAAQmO,SAASF,EAAeH,EAAGG,EAAeF,EAAGE,EAAeD,GACrFI,EAAkBpO,EAAQmO,SAASN,EAAgBC,EAAGD,EAAgBE,EAAGF,EAAgBG,EAC7FnN,IACEwN,WAAYxB,EACZyB,OAAQJ,EACRK,WACEF,WAAYD,EACZE,OAAQJ,GAEVM,OACEH,WAAYD,EACZE,OAAQJ,QAIZrN,IACEwN,WAAYxB,EACZyB,OAAQzB,EACR0B,WACEF,WAAYxB,EACZyB,OAAQzB,GAEV2B,OACEH,WAAYxB,EACZyB,OAAQzB,QAKdhM,MACAA,EAAEwN,WAAaxB,EAAMwB,YAAc1H,OACnC9F,EAAEyN,OAASzB,EAAMyB,QAAU3H,OAEvB3G,EAAQsF,SAASuH,EAAM0B,WACzB1N,EAAE0N,WACAD,OAAQzB,EAAM0B,UACdF,WAAYxB,EAAM0B,YAGpB1N,EAAE0N,aACF1N,EAAE0N,UAAUF,WAAaxB,EAAM0B,WAAa1B,EAAM0B,UAAUF,YAAc1H,OAC1E9F,EAAE0N,UAAUD,OAASzB,EAAM0B,WAAa1B,EAAM0B,UAAUD,QAAU3H,QAGhE3G,EAAQsF,SAASuH,EAAM2B,OACzB3N,EAAE2N,OACAF,OAAQzB,EAAM2B,MACdH,WAAYxB,EAAM2B,QAGpB3N,EAAE2N,SACF3N,EAAE2N,MAAMH,WAAaxB,EAAM2B,OAAS3B,EAAM2B,MAAMH,YAAc1H,OAC9D9F,EAAE2N,MAAMF,OAASzB,EAAM2B,OAAS3B,EAAM2B,MAAMF,QAAU3H,OAI1D,OAAO9F,IAYTb,EAAQyO,SAAW,SAAUvB,EAAKC,EAAOC,GACvCF,GAAY,IAAIC,GAAgB,IAAIC,GAAc,GAClD,IAAIsB,GAASrJ,KAAKL,IAAIkI,EAAK7H,KAAKL,IAAImI,EAAOC,IACvCuB,EAAStJ,KAAKJ,IAAIiI,EAAK7H,KAAKJ,IAAIkI,EAAOC,GAG3C,IAAIsB,GAAUC,EACZ,OAASb,EAAG,EAAGC,EAAG,EAAGC,EAAGU,EAI1B,IAAIE,GAAI1B,GAAOwB,EAASvB,EAAQC,EAAOA,GAAQsB,EAASxB,EAAMC,EAAQC,EAAOF,EACzEY,EAAIZ,GAAOwB,EAAS,EAAItB,GAAQsB,EAAS,EAAI,EAC7CG,EAAM,IAAMf,EAAIc,GAAKD,EAASD,IAAW,IACzCI,GAAcH,EAASD,GAAUC,EACjCxJ,EAAQwJ,CACZ,QAASb,EAAGe,EAAKd,EAAGe,EAAYd,EAAG7I,GAGrC,IAAI4J,IAEF1F,MAAO,SAAe2F,GACpB,GAAIC,KAWJ,OATAD,GAAQ3F,MAAM,KAAKK,QAAQ,SAAUwF,GACnC,GAAoB,IAAhBA,EAAMC,OAAc,CACtB,GAAIC,GAAQF,EAAM7F,MAAM,KACpBU,EAAMqF,EAAM,GAAGD,OACfhK,EAAQiK,EAAM,GAAGD,MACrBF,GAAOlF,GAAO5E,KAIX8J,GAIT3F,KAAM,SAAc2F,GAClB,MAAOzH,QAAO6H,KAAKJ,GAAQxB,IAAI,SAAU1D,GACvC,MAAOA,GAAM,KAAOkF,EAAOlF,KAC1BT,KAAK,OASZtJ,GAAQsP,WAAa,SAAU9E,EAASwE,GACtC,GAAIO,GAAgBR,EAAQ1F,MAAMmB,EAAQ0E,MAAMF,SAC5CQ,EAAYT,EAAQ1F,MAAM2F,GAC1BC,EAASjP,EAAQ+G,OAAOwI,EAAeC,EAE3ChF,GAAQ0E,MAAMF,QAAUD,EAAQzF,KAAK2F,IAQvCjP,EAAQyP,cAAgB,SAAUjF,EAASwE,GACzC,GAAIC,GAASF,EAAQ1F,MAAMmB,EAAQ0E,MAAMF,SACrCU,EAAeX,EAAQ1F,MAAM2F,EAEjC,KAAK,GAAIjF,KAAO2F,GACVA,EAAatJ,eAAe2D,UACvBkF,GAAOlF,EAIlBS,GAAQ0E,MAAMF,QAAUD,EAAQzF,KAAK2F,IAWvCjP,EAAQ2P,SAAW,SAAU7B,EAAGC,EAAGC,GACjC,GAAIxB,GAAGC,EAAGlG,EAENM,EAAIxB,KAAKuK,MAAU,EAAJ9B,GACf+B,EAAQ,EAAJ/B,EAAQjH,EACZ/F,EAAIkN,GAAK,EAAID,GACb+B,EAAI9B,GAAK,EAAI6B,EAAI9B,GACjBgC,EAAI/B,GAAK,GAAK,EAAI6B,GAAK9B,EAE3B,QAAQlH,EAAI,GACV,IAAK,GACH2F,EAAIwB,EAAGvB,EAAIsD,EAAGxJ,EAAIzF,CAAE,MACtB,KAAK,GACH0L,EAAIsD,EAAGrD,EAAIuB,EAAGzH,EAAIzF,CAAE,MACtB,KAAK,GACH0L,EAAI1L,EAAG2L,EAAIuB,EAAGzH,EAAIwJ,CAAE,MACtB,KAAK,GACHvD,EAAI1L,EAAG2L,EAAIqD,EAAGvJ,EAAIyH,CAAE,MACtB,KAAK,GACHxB,EAAIuD,EAAGtD,EAAI3L,EAAGyF,EAAIyH,CAAE,MACtB,KAAK,GACHxB,EAAIwB,EAAGvB,EAAI3L,EAAGyF,EAAIuJ,EAGtB,OAAStD,EAAGnH,KAAKuK,MAAU,IAAJpD,GAAUC,EAAGpH,KAAKuK,MAAU,IAAJnD,GAAUlG,EAAGlB,KAAKuK,MAAU,IAAJrJ,KAGzEvG,EAAQmO,SAAW,SAAUL,EAAGC,EAAGC,GACjC,GAAIjB,GAAM/M,EAAQ2P,SAAS7B,EAAGC,EAAGC,EACjC,OAAOhO,GAAQiN,SAASF,EAAIP,EAAGO,EAAIN,EAAGM,EAAIxG,IAG5CvG,EAAQ4N,SAAW,SAAUvB,GAC3B,GAAIU,GAAM/M,EAAQoM,SAASC,EAC3B,OAAOrM,GAAQyO,SAAS1B,EAAIP,EAAGO,EAAIN,EAAGM,EAAIxG,IAG5CvG,EAAQ0N,WAAa,SAAUrB,GAC7B,GAAI2D,GAAO,qCAAqCC,KAAK5D,EACrD,OAAO2D,IAGThQ,EAAQwN,WAAa,SAAUT,GAC7BA,EAAMA,EAAIR,QAAQ,IAAK,GACvB,IAAIyD,GAAO,wCAAwCC,KAAKlD,EACxD,OAAOiD,IAEThQ,EAAQkQ,YAAc,SAAUC,GAC9BA,EAAOA,EAAK5D,QAAQ,IAAK,GACzB,IAAIyD,GAAO,kDAAkDC,KAAKE,EAClE,OAAOH,IAUThQ,EAAQoQ,sBAAwB,SAAUC,EAAQC,GAChD,GAA8B,gBAAnBA,GAA6B,CAEtC,IAAK,GADDC,GAAW/I,OAAOgJ,OAAOF,GACpBzJ,EAAI,EAAGA,EAAIwJ,EAAO3J,OAAQG,IAC7ByJ,EAAgBlK,eAAeiK,EAAOxJ,KACC,gBAA9ByJ,GAAgBD,EAAOxJ,MAChC0J,EAASF,EAAOxJ,IAAM7G,EAAQyQ,aAAaH,EAAgBD,EAAOxJ,KAIxE,OAAO0J,GAEP,MAAO,OAWXvQ,EAAQyQ,aAAe,SAAUH,GAC/B,GAA8B,gBAAnBA,GAA6B,CACtC,GAAIC,GAAW/I,OAAOgJ,OAAOF,EAC7B,KAAK,GAAIzJ,KAAKyJ,GACRA,EAAgBlK,eAAeS,IACA,gBAAtByJ,GAAgBzJ,KACzB0J,EAAS1J,GAAK7G,EAAQyQ,aAAaH,EAAgBzJ,IAIzD,OAAO0J,GAEP,MAAO,OAWXvQ,EAAQ0Q,WAAa,SAAUpK,EAAGqK,GAChC,IAAK,GAAI9J,GAAI,EAAGA,EAAIP,EAAEI,OAAQG,IAAK,CAEjC,IAAK,GADD+J,GAAItK,EAAEO,GACDgK,EAAIhK,EAAGgK,EAAI,GAAKF,EAAQC,EAAGtK,EAAEuK,EAAI,IAAM,EAAGA,IACjDvK,EAAEuK,GAAKvK,EAAEuK,EAAI,EAEfvK,GAAEuK,GAAKD,EAET,MAAOtK,IAWTtG,EAAQ8Q,aAAe,SAAUC,EAAa9M,EAAS4H,GACrD,GACImF,IADgBvK,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GACxEA,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAEzF,IAAwB,OAApBxC,EAAQ4H,GACVkF,EAAYlF,GAAUrE,OAAOgJ,OAAOQ,EAAcnF,QAElD,IAAwBlF,SAApB1C,EAAQ4H,GACV,GAA+B,iBAApB5H,GAAQ4H,GACjBkF,EAAYlF,GAAQoF,QAAUhN,EAAQ4H,OACjC,CAC2BlF,SAA5B1C,EAAQ4H,GAAQoF,UAClBF,EAAYlF,GAAQoF,SAAU,EAEhC,KAAK,GAAI9K,KAAQlC,GAAQ4H,GACnB5H,EAAQ4H,GAAQzF,eAAeD,KACjC4K,EAAYlF,GAAQ1F,GAAQlC,EAAQ4H,GAAQ1F,MAmBxDnG,EAAQkR,mBAAqB,SAAUC,EAAcC,EAAYC,EAAOC,GAMtE,IALA,GAAIC,GAAgB,IAChBC,EAAY,EACZC,EAAM,EACNC,EAAOP,EAAazK,OAAS,EAEnBgL,GAAPD,GAA2BF,EAAZC,GAA2B,CAC/C,GAAIG,GAAStM,KAAKuK,OAAO6B,EAAMC,GAAQ,GAEnCE,EAAOT,EAAaQ,GACpBxM,EAAmBwB,SAAX2K,EAAuBM,EAAKP,GAASO,EAAKP,GAAOC,GAEzDO,EAAeT,EAAWjM,EAC9B,IAAoB,GAAhB0M,EAEF,MAAOF,EACkB,KAAhBE,EAETJ,EAAME,EAAS,EAGfD,EAAOC,EAAS,EAGlBH,IAGF,MAAO,IAgBTxR,EAAQ8R,kBAAoB,SAAUX,EAAc7F,EAAQ+F,EAAOU,EAAgBX,GAWjF,IAVA,GAIIY,GAAW7M,EAAO8M,EAAWN,EAJ7BJ,EAAgB,IAChBC,EAAY,EACZC,EAAM,EACNC,EAAOP,EAAazK,OAAS,EAG7B0K,EAA2BzK,QAAdyK,EAA0BA,EAAa,SAAU9K,EAAGC,GACnE,MAAOD,IAAKC,EAAI,EAAQA,EAAJD,EAAQ,GAAK,GAGrBoL,GAAPD,GAA2BF,EAAZC,GAA2B,CAO/C,GALAG,EAAStM,KAAKuK,MAAM,IAAO8B,EAAOD,IAClCO,EAAYb,EAAa9L,KAAKJ,IAAI,EAAG0M,EAAS,IAAIN,GAClDlM,EAAQgM,EAAaQ,GAAQN,GAC7BY,EAAYd,EAAa9L,KAAKL,IAAImM,EAAazK,OAAS,EAAGiL,EAAS,IAAIN,GAEvC,GAA7BD,EAAWjM,EAAOmG,GAEpB,MAAOqG,EACF,IAAIP,EAAWY,EAAW1G,GAAU,GAAK8F,EAAWjM,EAAOmG,GAAU,EAE1E,MAAyB,UAAlByG,EAA6B1M,KAAKJ,IAAI,EAAG0M,EAAS,GAAKA,CACzD,IAAIP,EAAWjM,EAAOmG,GAAU,GAAK8F,EAAWa,EAAW3G,GAAU,EAE1E,MAAyB,UAAlByG,EAA6BJ,EAAStM,KAAKL,IAAImM,EAAazK,OAAS,EAAGiL,EAAS,EAGpFP,GAAWjM,EAAOmG,GAAU,EAE9BmG,EAAME,EAAS,EAGfD,EAAOC,EAAS,EAGpBH,IAIF,MAAO,IAQTxR,EAAQkS,iBAENC,OAAQ,SAAgBpC,GACtB,MAAOA,IAGTqC,WAAY,SAAoBrC,GAC9B,MAAOA,GAAIA,GAGbsC,YAAa,SAAqBtC,GAChC,MAAOA,IAAK,EAAIA,IAGlBuC,cAAe,SAAuBvC,GACpC,MAAW,GAAJA,EAAS,EAAIA,EAAIA,EAAI,IAAM,EAAI,EAAIA,GAAKA,GAGjDwC,YAAa,SAAqBxC,GAChC,MAAOA,GAAIA,EAAIA,GAGjByC,aAAc,SAAsBzC,GAClC,QAASA,EAAIA,EAAIA,EAAI,GAGvB0C,eAAgB,SAAwB1C,GACtC,MAAW,GAAJA,EAAS,EAAIA,EAAIA,EAAIA,GAAKA,EAAI,IAAM,EAAIA,EAAI,IAAM,EAAIA,EAAI,GAAK,GAGxE2C,YAAa,SAAqB3C,GAChC,MAAOA,GAAIA,EAAIA,EAAIA,GAGrB4C,aAAc,SAAsB5C,GAClC,MAAO,MAAMA,EAAIA,EAAIA,EAAIA,GAG3B6C,eAAgB,SAAwB7C,GACtC,MAAW,GAAJA,EAAS,EAAIA,EAAIA,EAAIA,EAAIA,EAAI,EAAI,IAAMA,EAAIA,EAAIA,EAAIA,GAG5D8C,YAAa,SAAqB9C,GAChC,MAAOA,GAAIA,EAAIA,EAAIA,EAAIA,GAGzB+C,aAAc,SAAsB/C,GAClC,MAAO,KAAMA,EAAIA,EAAIA,EAAIA,EAAIA,GAG/BgD,eAAgB,SAAwBhD,GACtC,MAAW,GAAJA,EAAS,GAAKA,EAAIA,EAAIA,EAAIA,EAAIA,EAAI,EAAI,KAAOA,EAAIA,EAAIA,EAAIA,EAAIA,KAMpE,SAAS9P,EAAQD,EAASM,GAM9BL,EAAOD,QAA4B,mBAAXmL,SAA0BA,OAAe,QAAK7K,EAAoB,IAItF,SAASL,EAAQD,EAASM,IAEF,SAASL,IAMnC,SAAU+S,EAAQjT,GACRE,EAAOD,QAAUD,KAG3BK,KAAM,WAIJ,QAAS6S,KACL,MAAOC,IAAaC,MAAM,KAAM1M,WAKpC,QAAS2M,GAAiBzJ,GACtBuJ,GAAevJ,EAGnB,QAASxC,GAAQrD,GACb,MAAiD,mBAA1C0D,OAAO6L,UAAUhG,SAAS1M,KAAKmD,GAG1C,QAAS0B,GAAO1B,GACZ,MAAOA,aAAiB2B,OAAkD,kBAA1C+B,OAAO6L,UAAUhG,SAAS1M,KAAKmD,GAGnE,QAAS2J,GAAIjF,EAAKyB,GACd,GAAcpD,GAAVyM,IACJ,KAAKzM,EAAI,EAAGA,EAAI2B,EAAI9B,SAAUG,EAC1ByM,EAAI1L,KAAKqC,EAAGzB,EAAI3B,GAAIA,GAExB,OAAOyM,GAGX,QAASC,GAAWjN,EAAGC,GACnB,MAAOiB,QAAO6L,UAAUjN,eAAezF,KAAK2F,EAAGC,GAGnD,QAASQ,GAAOT,EAAGC,GACf,IAAK,GAAIM,KAAKN,GACNgN,EAAWhN,EAAGM,KACdP,EAAEO,GAAKN,EAAEM,GAYjB,OARI0M,GAAWhN,EAAG,cACdD,EAAE+G,SAAW9G,EAAE8G,UAGfkG,EAAWhN,EAAG,aACdD,EAAE4B,QAAU3B,EAAE2B,SAGX5B,EAGX,QAASkN,GAAuB1P,EAAO2P,EAAQC,EAAQC,GACnD,MAAOC,IAAiB9P,EAAO2P,EAAQC,EAAQC,GAAQ,GAAME,MAGjE,QAASC,KAEL,OACIC,OAAkB,EAClBC,gBACAC,eACAC,SAAkB,GAClBC,cAAkB,EAClBC,WAAkB,EAClBC,aAAkB,KAClBC,eAAkB,EAClBC,iBAAkB,EAClBC,KAAkB,GAI1B,QAASC,GAAgB7T,GAIrB,MAHa,OAATA,EAAE8T,MACF9T,EAAE8T,IAAMZ,KAELlT,EAAE8T,IAGb,QAASC,GAAe/T,GACpB,GAAkB,MAAdA,EAAEgU,SAAkB,CACpB,GAAIC,GAAQJ,EAAgB7T,EAC5BA,GAAEgU,WAAY/O,MAAMjF,EAAEkU,GAAGC,cACrBF,EAAMX,SAAW,IAChBW,EAAMd,OACNc,EAAMR,cACNQ,EAAMG,gBACNH,EAAMT,WACNS,EAAMP,eACNO,EAAMN,iBAEP3T,EAAEqU,UACFrU,EAAEgU,SAAWhU,EAAEgU,UACa,IAAxBC,EAAMV,eACwB,IAA9BU,EAAMb,aAAatN,QACDC,SAAlBkO,EAAMK,SAGlB,MAAOtU,GAAEgU,SAGb,QAASO,GAAsBN,GAC3B,GAAIjU,GAAI4S,EAAsB4B,IAQ9B,OAPa,OAATP,EACA9N,EAAO0N,EAAgB7T,GAAIiU,GAG3BJ,EAAgB7T,GAAG2T,iBAAkB,EAGlC3T,EAGX,QAASyU,GAAYvR,GACjB,MAAiB,UAAVA,EAOX,QAASwR,GAAWC,EAAIC,GACpB,GAAI3O,GAAGV,EAAMsP,CAiCb,IA/BKJ,EAAYG,EAAKE,oBAClBH,EAAGG,iBAAmBF,EAAKE,kBAE1BL,EAAYG,EAAKG,MAClBJ,EAAGI,GAAKH,EAAKG,IAEZN,EAAYG,EAAKI,MAClBL,EAAGK,GAAKJ,EAAKI,IAEZP,EAAYG,EAAKK,MAClBN,EAAGM,GAAKL,EAAKK,IAEZR,EAAYG,EAAKP,WAClBM,EAAGN,QAAUO,EAAKP,SAEjBI,EAAYG,EAAKM,QAClBP,EAAGO,KAAON,EAAKM,MAEdT,EAAYG,EAAKO,UAClBR,EAAGQ,OAASP,EAAKO,QAEhBV,EAAYG,EAAKQ,WAClBT,EAAGS,QAAUR,EAAKQ,SAEjBX,EAAYG,EAAKd,OAClBa,EAAGb,IAAMD,EAAgBe,IAExBH,EAAYG,EAAKS,WAClBV,EAAGU,QAAUT,EAAKS,SAGlBC,GAAiBxP,OAAS,EAC1B,IAAKG,IAAKqP,IACN/P,EAAO+P,GAAiBrP,GACxB4O,EAAMD,EAAKrP,GACNkP,EAAYI,KACbF,EAAGpP,GAAQsP,EAKvB,OAAOF,GAMX,QAASY,GAAOC,GACZd,EAAWlV,KAAMgW,GACjBhW,KAAK0U,GAAK,GAAIrP,MAAkB,MAAb2Q,EAAOtB,GAAasB,EAAOtB,GAAGC,UAAYK,KAGzDiB,MAAqB,IACrBA,IAAmB,EACnBpD,EAAmBqD,aAAalW,MAChCiW,IAAmB,GAI3B,QAASlO,GAAUjC,GACf,MAAOA,aAAeiQ,IAAkB,MAAPjQ,GAAuC,MAAxBA,EAAIwP,iBAGxD,QAASa,GAAUC,GACf,MAAa,GAATA,EACOnR,KAAKoR,KAAKD,GAEVnR,KAAKuK,MAAM4G,GAI1B,QAASE,GAAMC,GACX,GAAIC,IAAiBD,EACjBxR,EAAQ,CAMZ,OAJsB,KAAlByR,GAAuBC,SAASD,KAChCzR,EAAQoR,EAASK,IAGdzR,EAIX,QAAS2R,GAAcC,EAAQC,EAAQC,GACnC,GAGIpQ,GAHAiB,EAAMzC,KAAKL,IAAI+R,EAAOrQ,OAAQsQ,EAAOtQ,QACrCwQ,EAAa7R,KAAK8R,IAAIJ,EAAOrQ,OAASsQ,EAAOtQ,QAC7C0Q,EAAQ,CAEZ,KAAKvQ,EAAI,EAAOiB,EAAJjB,EAASA,KACZoQ,GAAeF,EAAOlQ,KAAOmQ,EAAOnQ,KACnCoQ,GAAeP,EAAMK,EAAOlQ,MAAQ6P,EAAMM,EAAOnQ,MACnDuQ,GAGR,OAAOA,GAAQF,EAGnB,QAASG,MAOT,QAASC,GAAgBvN,GACrB,MAAOA,GAAMA,EAAIwN,cAAchL,QAAQ,IAAK,KAAOxC,EAMvD,QAASyN,GAAaC,GAGlB,IAFA,GAAW5G,GAAG6G,EAAMhE,EAAQrK,EAAxBxC,EAAI,EAEDA,EAAI4Q,EAAM/Q,QAAQ,CAKrB,IAJA2C,EAAQiO,EAAgBG,EAAM5Q,IAAIwC,MAAM,KACxCwH,EAAIxH,EAAM3C,OACVgR,EAAOJ,EAAgBG,EAAM5Q,EAAI,IACjC6Q,EAAOA,EAAOA,EAAKrO,MAAM,KAAO,KACzBwH,EAAI,GAAG,CAEV,GADA6C,EAASiE,EAAWtO,EAAMiE,MAAM,EAAGuD,GAAGvH,KAAK,MAEvC,MAAOoK,EAEX,IAAIgE,GAAQA,EAAKhR,QAAUmK,GAAKiG,EAAczN,EAAOqO,GAAM,IAAS7G,EAAI,EAEpE,KAEJA,KAEJhK,IAEJ,MAAO,MAGX,QAAS8Q,GAAWC,GAChB,GAAIC,GAAY,IAEhB,KAAKC,GAAQF,IAA4B,mBAAX3X,IACtBA,GAAUA,EAAOD,QACrB,IACI6X,EAAYE,GAAaC,OACvB,WAAkC,GAAIpM,GAAI,GAAIxE,OAAM,gCAAiE,MAA7BwE,GAAEqM,KAAO,mBAA0BrM,KAG7HsM,EAAmCL,GACrC,MAAOjM,IAEb,MAAOkM,IAAQF,GAMnB,QAASM,GAAoCnO,EAAKoO,GAC9C,GAAIC,EAeJ,OAdIrO,KAEIqO,EADA/C,EAAY8C,GACLE,EAA0BtO,GAG1BuO,EAAavO,EAAKoO,GAGzBC,IAEAL,GAAeK,IAIhBL,GAAaC,MAGxB,QAASM,GAAcV,EAAMO,GACzB,MAAe,QAAXA,GACAA,EAAOI,KAAOX,EACdE,GAAQF,GAAQE,GAAQF,IAAS,GAAIP,GACrCS,GAAQF,GAAMY,IAAIL,GAGlBD,EAAmCN,GAE5BE,GAAQF,WAGRE,IAAQF,GACR,MAKf,QAASS,GAA2BtO,GAChC,GAAI2J,EAMJ,IAJI3J,GAAOA,EAAIkM,SAAWlM,EAAIkM,QAAQ+B,QAClCjO,EAAMA,EAAIkM,QAAQ+B,QAGjBjO,EACD,MAAOgO,GAGX,KAAK5Q,EAAQ4C,GAAM,CAGf,GADA2J,EAASiE,EAAW5N,GAEhB,MAAO2J,EAEX3J,IAAOA,GAGX,MAAOyN,GAAazN,GAKxB,QAAS0O,GAAcC,EAAMC,GACzB,GAAIC,GAAYF,EAAKnB,aACrBsB,IAAQD,GAAaC,GAAQD,EAAY,KAAOC,GAAQF,GAAaD,EAGzE,QAASI,GAAeC,GACpB,MAAwB,gBAAVA,GAAqBF,GAAQE,IAAUF,GAAQE,EAAMxB,eAAiB5Q,OAGxF,QAASqS,GAAqBC,GAC1B,GACIC,GACA/S,EAFAgT,IAIJ,KAAKhT,IAAQ8S,GACL1F,EAAW0F,EAAa9S,KACxB+S,EAAiBJ,EAAe3S,GAC5B+S,IACAC,EAAgBD,GAAkBD,EAAY9S,IAK1D,OAAOgT,GAGX,QAASC,GAAWtV,GAChB,MAAOA,aAAiBuV,WAAsD,sBAA1C7R,OAAO6L,UAAUhG,SAAS1M,KAAKmD,GAGvE,QAASwV,GAAYZ,EAAMa,GACvB,MAAO,UAAUpU,GACb,MAAa,OAATA,GACAqU,EAAapZ,KAAMsY,EAAMvT,GACzB8N,EAAmBqD,aAAalW,KAAMmZ,GAC/BnZ,MAEAqZ,EAAarZ,KAAMsY,IAKtC,QAASe,GAAcC,EAAKhB,GACxB,MAAOgB,GAAIC,UACPD,EAAI5E,GAAG,OAAS4E,EAAI3D,OAAS,MAAQ,IAAM2C,KAAUtD,IAG7D,QAASoE,GAAcE,EAAKhB,EAAMvT,GAC1BuU,EAAIC,WACJD,EAAI5E,GAAG,OAAS4E,EAAI3D,OAAS,MAAQ,IAAM2C,GAAMvT,GAMzD,QAASyU,GAAQb,EAAO5T,GACpB,GAAIuT,EACJ,IAAqB,gBAAVK,GACP,IAAKL,IAAQK,GACT3Y,KAAKoY,IAAIE,EAAMK,EAAML,QAIzB,IADAK,EAAQD,EAAeC,GACnBK,EAAWhZ,KAAK2Y,IAChB,MAAO3Y,MAAK2Y,GAAO5T,EAG3B,OAAO/E,MAGX,QAASyZ,GAASrD,EAAQsD,EAAcC,GACpC,GAAIC,GAAY,GAAK3U,KAAK8R,IAAIX,GAC1ByD,EAAcH,EAAeE,EAAUtT,OACvCwT,EAAO1D,GAAU,CACrB,QAAQ0D,EAAQH,EAAY,IAAM,GAAM,KACpC1U,KAAK8U,IAAI,GAAI9U,KAAKJ,IAAI,EAAGgV,IAAc5M,WAAWL,OAAO,GAAKgN,EAetE,QAASI,GAAgBC,EAAOC,EAAQC,EAAS5Q,GAC7C,GAAI6Q,GAAO7Q,CACa,iBAAbA,KACP6Q,EAAO,WACH,MAAOpa,MAAKuJ,OAGhB0Q,IACAI,GAAqBJ,GAASG,GAE9BF,IACAG,GAAqBH,EAAO,IAAM,WAC9B,MAAOT,GAASW,EAAKrH,MAAM/S,KAAMqG,WAAY6T,EAAO,GAAIA,EAAO,MAGnEC,IACAE,GAAqBF,GAAW,WAC5B,MAAOna,MAAKsa,aAAaH,QAAQC,EAAKrH,MAAM/S,KAAMqG,WAAY4T,KAK1E,QAASM,GAAuB7W,GAC5B,MAAIA,GAAM4B,MAAM,YACL5B,EAAMyI,QAAQ,WAAY,IAE9BzI,EAAMyI,QAAQ,MAAO,IAGhC,QAASqO,GAAmBnH,GACxB,GAA4C5M,GAAGH,EAA3CmD,EAAQ4J,EAAO/N,MAAMmV,GAEzB,KAAKhU,EAAI,EAAGH,EAASmD,EAAMnD,OAAYA,EAAJG,EAAYA,IACvC4T,GAAqB5Q,EAAMhD,IAC3BgD,EAAMhD,GAAK4T,GAAqB5Q,EAAMhD,IAEtCgD,EAAMhD,GAAK8T,EAAuB9Q,EAAMhD,GAIhD,OAAO,UAAU6S,GACb,GAAIoB,GAAS,EACb,KAAKjU,EAAI,EAAOH,EAAJG,EAAYA,IACpBiU,GAAUjR,EAAMhD,YAAcwS,UAAWxP,EAAMhD,GAAGlG,KAAK+Y,EAAKjG,GAAU5J,EAAMhD,EAEhF,OAAOiU,IAKf,QAASC,GAAana,EAAG6S,GACrB,MAAK7S,GAAE+Y,WAIPlG,EAASuH,EAAavH,EAAQ7S,EAAE8Z,cAChCO,GAAgBxH,GAAUwH,GAAgBxH,IAAWmH,EAAmBnH,GAEjEwH,GAAgBxH,GAAQ7S,IANpBA,EAAE8Z,aAAaQ,cAS9B,QAASF,GAAavH,EAAQC,GAG1B,QAASyH,GAA4BrX,GACjC,MAAO4P,GAAO0H,eAAetX,IAAUA,EAH3C,GAAI+C,GAAI,CAOR,KADAwU,GAAsBC,UAAY,EAC3BzU,GAAK,GAAKwU,GAAsBpL,KAAKwD,IACxCA,EAASA,EAAOlH,QAAQ8O,GAAuBF,GAC/CE,GAAsBC,UAAY,EAClCzU,GAAK,CAGT,OAAO4M,GA8BX,QAAS8H,GAAelB,EAAOmB,EAAOC,GAClCC,GAAQrB,GAASjB,EAAWoC,GAASA,EAAQ,SAAUG,EAAUjB,GAC7D,MAAQiB,IAAYF,EAAeA,EAAcD,GAIzD,QAASI,GAAuBvB,EAAOjE,GACnC,MAAK7C,GAAWmI,GAASrB,GAIlBqB,GAAQrB,GAAOjE,EAAOnB,QAASmB,EAAOH,SAHlC,GAAI4F,QAAOC,EAAezB,IAOzC,QAASyB,GAAe/N,GACpB,MAAOgO,GAAYhO,EAAExB,QAAQ,KAAM,IAAIA,QAAQ,sCAAuC,SAAUyP,EAASC,EAAIC,EAAIC,EAAIC,GACjH,MAAOH,IAAMC,GAAMC,GAAMC,KAIjC,QAASL,GAAYhO,GACjB,MAAOA,GAAExB,QAAQ,yBAA0B,QAK/C,QAAS8P,GAAehC,EAAO1Q,GAC3B,GAAI9C,GAAG2T,EAAO7Q,CASd,KARqB,gBAAV0Q,KACPA,GAASA,IAEW,gBAAb1Q,KACP6Q,EAAO,SAAU1W,EAAO+F,GACpBA,EAAMF,GAAY+M,EAAM5S,KAG3B+C,EAAI,EAAGA,EAAIwT,EAAM3T,OAAQG,IAC1ByV,GAAOjC,EAAMxT,IAAM2T,EAI3B,QAAS+B,GAAmBlC,EAAO1Q,GAC/B0S,EAAchC,EAAO,SAAUvW,EAAO+F,EAAOuM,EAAQiE,GACjDjE,EAAOoG,GAAKpG,EAAOoG,OACnB7S,EAAS7F,EAAOsS,EAAOoG,GAAIpG,EAAQiE,KAI3C,QAASoC,GAAwBpC,EAAOvW,EAAOsS,GAC9B,MAATtS,GAAiByP,EAAW+I,GAAQjC,IACpCiC,GAAOjC,GAAOvW,EAAOsS,EAAOsG,GAAItG,EAAQiE,GAchD,QAASsC,GAAYC,EAAMC,GACvB,MAAO,IAAIpX,MAAKA,KAAKqX,IAAIF,EAAMC,EAAQ,EAAG,IAAIE,aAkDlD,QAASC,GAAcpc,EAAG6S,GACtB,MAAOtM,GAAQ/G,KAAK6c,SAAW7c,KAAK6c,QAAQrc,EAAEic,SAC1Czc,KAAK6c,QAAQC,GAAiBjN,KAAKwD,GAAU,SAAW,cAAc7S,EAAEic,SAIhF,QAASM,GAAmBvc,EAAG6S,GAC3B,MAAOtM,GAAQ/G,KAAKgd,cAAgBhd,KAAKgd,aAAaxc,EAAEic,SACpDzc,KAAKgd,aAAaF,GAAiBjN,KAAKwD,GAAU,SAAW,cAAc7S,EAAEic,SAGrF,QAASQ,GAAmBC,EAAW7J,EAAQE,GAC3C,GAAI9M,GAAG6S,EAAK8B,CAQZ,KANKpb,KAAKmd,eACNnd,KAAKmd,gBACLnd,KAAKod,oBACLpd,KAAKqd,sBAGJ5W,EAAI,EAAO,GAAJA,EAAQA,IAAK,CAYrB,GAVA6S,EAAMlG,GAAuB,IAAM3M,IAC/B8M,IAAWvT,KAAKod,iBAAiB3W,KACjCzG,KAAKod,iBAAiB3W,GAAK,GAAIgV,QAAO,IAAMzb,KAAKsd,OAAOhE,EAAK,IAAInN,QAAQ,IAAK,IAAM,IAAK,KACzFnM,KAAKqd,kBAAkB5W,GAAK,GAAIgV,QAAO,IAAMzb,KAAKud,YAAYjE,EAAK,IAAInN,QAAQ,IAAK,IAAM,IAAK,MAE9FoH,GAAWvT,KAAKmd,aAAa1W,KAC9B2U,EAAQ,IAAMpb,KAAKsd,OAAOhE,EAAK,IAAM,KAAOtZ,KAAKud,YAAYjE,EAAK,IAClEtZ,KAAKmd,aAAa1W,GAAK,GAAIgV,QAAOL,EAAMjP,QAAQ,IAAK,IAAK,MAG1DoH,GAAqB,SAAXF,GAAqBrT,KAAKod,iBAAiB3W,GAAGoJ,KAAKqN,GAC7D,MAAOzW,EACJ,IAAI8M,GAAqB,QAAXF,GAAoBrT,KAAKqd,kBAAkB5W,GAAGoJ,KAAKqN,GACpE,MAAOzW,EACJ,KAAK8M,GAAUvT,KAAKmd,aAAa1W,GAAGoJ,KAAKqN,GAC5C,MAAOzW,IAOnB,QAAS+W,GAAUlE,EAAKvU,GACpB,GAAI0Y,EAEJ,OAAKnE,GAAIC,UAMY,gBAAVxU,KACPA,EAAQuU,EAAIgB,aAAaoD,YAAY3Y,GAEhB,gBAAVA,IACAuU,GAIfmE,EAAaxY,KAAKL,IAAI0U,EAAIqE,OAAQpB,EAAYjD,EAAIkD,OAAQzX,IAC1DuU,EAAI5E,GAAG,OAAS4E,EAAI3D,OAAS,MAAQ,IAAM,SAAS5Q,EAAO0Y,GACpDnE,GAdIA,EAiBf,QAASsE,GAAa7Y,GAClB,MAAa,OAATA,GACAyY,EAASxd,KAAM+E,GACf8N,EAAmBqD,aAAalW,MAAM,GAC/BA,MAEAqZ,EAAarZ,KAAM,SAIlC,QAAS6d,MACL,MAAOtB,GAAYvc,KAAKwc,OAAQxc,KAAKyc,SAIzC,QAASqB,IAAkBvC,GACvB,MAAIvb,MAAK+d,mBACA5K,EAAWnT,KAAM,iBAClBge,GAAmBzd,KAAKP,MAExBub,EACOvb,KAAKie,wBAELje,KAAKke,mBAGTle,KAAKie,yBAA2B1C,EACnCvb,KAAKie,wBAA0Bje,KAAKke,kBAKhD,QAASC,IAAa5C,GAClB,MAAIvb,MAAK+d,mBACA5K,EAAWnT,KAAM,iBAClBge,GAAmBzd,KAAKP,MAExBub,EACOvb,KAAKoe,mBAELpe,KAAKqe,cAGTre,KAAKoe,oBAAsB7C,EAC9Bvb,KAAKoe,mBAAqBpe,KAAKqe,aAI3C,QAASL,MACL,QAASM,GAAUpY,EAAGC,GAClB,MAAOA,GAAEG,OAASJ,EAAEI,OAGxB,GACIG,GAAG6S,EADHiF,KAAkBC,KAAiBC,IAEvC,KAAKhY,EAAI,EAAO,GAAJA,EAAQA,IAEhB6S,EAAMlG,GAAuB,IAAM3M,IACnC8X,EAAY/W,KAAKxH,KAAKud,YAAYjE,EAAK,KACvCkF,EAAWhX,KAAKxH,KAAKsd,OAAOhE,EAAK,KACjCmF,EAAYjX,KAAKxH,KAAKsd,OAAOhE,EAAK,KAClCmF,EAAYjX,KAAKxH,KAAKud,YAAYjE,EAAK,IAO3C,KAHAiF,EAAYG,KAAKJ,GACjBE,EAAWE,KAAKJ,GAChBG,EAAYC,KAAKJ,GACZ7X,EAAI,EAAO,GAAJA,EAAQA,IAChB8X,EAAY9X,GAAKkV,EAAY4C,EAAY9X,IACzC+X,EAAW/X,GAAKkV,EAAY6C,EAAW/X,IACvCgY,EAAYhY,GAAKkV,EAAY8C,EAAYhY,GAG7CzG,MAAKqe,aAAe,GAAI5C,QAAO,KAAOgD,EAAYvV,KAAK,KAAO,IAAK,KACnElJ,KAAKke,kBAAoBle,KAAKqe,aAC9Bre,KAAKoe,mBAAqB,GAAI3C,QAAO,KAAO+C,EAAWtV,KAAK,KAAO,KAAM,KACzElJ,KAAKie,wBAA0B,GAAIxC,QAAO,KAAO8C,EAAYrV,KAAK,KAAO,KAAM,KAGnF,QAASyV,IAAene,GACpB,GAAIsT,GACA5N,EAAI1F,EAAE8b,EAyBV,OAvBIpW,IAAqC,KAAhCmO,EAAgB7T,GAAGsT,WACxBA,EACI5N,EAAE0Y,IAAe,GAAK1Y,EAAE0Y,IAAe,GAAMA,GAC7C1Y,EAAE2Y,IAAe,GAAK3Y,EAAE2Y,IAAetC,EAAYrW,EAAE4Y,IAAO5Y,EAAE0Y,KAAUC,GACxE3Y,EAAE6Y,IAAe,GAAK7Y,EAAE6Y,IAAe,IAAmB,KAAZ7Y,EAAE6Y,MAA+B,IAAd7Y,EAAE8Y,KAA+B,IAAd9Y,EAAE+Y,KAAoC,IAAnB/Y,EAAEgZ,KAAuBH,GAChI7Y,EAAE8Y,IAAe,GAAK9Y,EAAE8Y,IAAe,GAAMA,GAC7C9Y,EAAE+Y,IAAe,GAAK/Y,EAAE+Y,IAAe,GAAMA,GAC7C/Y,EAAEgZ,IAAe,GAAKhZ,EAAEgZ,IAAe,IAAMA,GAC7C,GAEA7K,EAAgB7T,GAAG2e,qBAAkCL,GAAXhL,GAAmBA,EAAW+K,MACxE/K,EAAW+K,IAEXxK,EAAgB7T,GAAG4e,gBAA+B,KAAbtL,IACrCA,EAAWuL,IAEXhL,EAAgB7T,GAAG8e,kBAAiC,KAAbxL,IACvCA,EAAWyL,IAGflL,EAAgB7T,GAAGsT,SAAWA,GAG3BtT,EAGX,QAASgf,IAAKC,GACN5M,EAAmB6M,+BAAgC,GAC1B,mBAAbC,UAA6BA,QAAQH,MACjDG,QAAQH,KAAK,wBAA0BC,GAI/C,QAASG,IAAUH,EAAK5V,GACpB,GAAIgW,IAAY,CAEhB,OAAOlZ,GAAO,WAKV,MAJIkZ,KACAL,GAAKC,EAAM,gBAAkB3Y,MAAMmM,UAAU/F,MAAM3M,KAAK8F,WAAW6C,KAAK,MAAQ,MAAO,GAAKlC,QAASlF,OACrG+d,GAAY,GAEThW,EAAGkJ,MAAM/S,KAAMqG,YACvBwD,GAKP,QAASiW,IAAgBtI,EAAMiI,GACtBM,GAAavI,KACdgI,GAAKC,GACLM,GAAavI,IAAQ,GA4C7B,QAASwI,IAAchK,GACnB,GAAIvP,GAAGwZ,EAGHC,EAAWC,EAAYC,EAAYC,EAFnCC,EAAStK,EAAOT,GAChBjQ,EAAQib,GAAiB/a,KAAK8a,IAAWE,GAAchb,KAAK8a,EAGhE,IAAIhb,EAAO,CAGP,IAFA+O,EAAgB2B,GAAQ5B,KAAM,EAEzB3N,EAAI,EAAGwZ,EAAIQ,GAASna,OAAY2Z,EAAJxZ,EAAOA,IACpC,GAAIga,GAASha,GAAG,GAAGjB,KAAKF,EAAM,IAAK,CAC/B6a,EAAaM,GAASha,GAAG,GACzByZ,EAAYO,GAASha,GAAG,MAAO,CAC/B,OAGR,GAAkB,MAAd0Z,EAEA,YADAnK,EAAOxB,UAAW,EAGtB,IAAIlP,EAAM,GAAI,CACV,IAAKmB,EAAI,EAAGwZ,EAAIS,GAASpa,OAAY2Z,EAAJxZ,EAAOA,IACpC,GAAIia,GAASja,GAAG,GAAGjB,KAAKF,EAAM,IAAK,CAE/B8a,GAAc9a,EAAM,IAAM,KAAOob,GAASja,GAAG,EAC7C,OAGR,GAAkB,MAAd2Z,EAEA,YADApK,EAAOxB,UAAW,GAI1B,IAAK0L,GAA2B,MAAdE,EAEd,YADApK,EAAOxB,UAAW,EAGtB,IAAIlP,EAAM,GAAI,CACV,IAAIqb,GAAQnb,KAAKF,EAAM,IAInB,YADA0Q,EAAOxB,UAAW,EAFlB6L,GAAW,IAMnBrK,EAAOR,GAAK2K,GAAcC,GAAc,KAAOC,GAAY,IAC3DO,GAA0B5K,OAE1BA,GAAOxB,UAAW,EAK1B,QAASqM,IAAiB7K,GACtB,GAAI4F,GAAUkF,GAAgBtb,KAAKwQ,EAAOT,GAE1C,OAAgB,QAAZqG,OACA5F,EAAOtB,GAAK,GAAIrP,OAAMuW,EAAQ,MAIlCoE,GAAchK,QACVA,EAAOxB,YAAa,UACbwB,GAAOxB,SACd3B,EAAmBkO,wBAAwB/K,MAcnD,QAASgL,IAAYC,EAAGzgB,EAAGgO,EAAGd,EAAGwT,EAAGvT,EAAGwT,GAGnC,GAAIxD,GAAO,GAAItY,MAAK4b,EAAGzgB,EAAGgO,EAAGd,EAAGwT,EAAGvT,EAAGwT,EAMtC,OAHQ,KAAJF,GAAWA,GAAK,GAAKxK,SAASkH,EAAKyD,gBACnCzD,EAAK0D,YAAYJ,GAEdtD,EAGX,QAAS2D,IAAeL,GACpB,GAAItD,GAAO,GAAItY,MAAKA,KAAKqX,IAAI3J,MAAM,KAAM1M,WAMzC,OAHQ,KAAJ4a,GAAWA,GAAK,GAAKxK,SAASkH,EAAK4D,mBACnC5D,EAAK6D,eAAeP,GAEjBtD,EA2CX,QAAS8D,IAAWjF,GAChB,MAAOkF,IAAWlF,GAAQ,IAAM,IAGpC,QAASkF,IAAWlF,GAChB,MAAQA,GAAO,IAAM,GAAKA,EAAO,MAAQ,GAAMA,EAAO,MAAQ,EAalE,QAASmF,MACL,MAAOD,IAAW1hB,KAAKwc,QAI3B,QAASoF,IAAgBpF,EAAMqF,EAAKC,GAChC,GACIC,GAAM,EAAIF,EAAMC,EAEhBE,GAAS,EAAIV,GAAc9E,EAAM,EAAGuF,GAAKE,YAAcJ,GAAO,CAElE,QAAQG,EAAQD,EAAM,EAI1B,QAASG,IAAmB1F,EAAM2F,EAAMC,EAASP,EAAKC,GAClD,GAGIO,GAASC,EAHTC,GAAgB,EAAIH,EAAUP,GAAO,EACrCW,EAAaZ,GAAgBpF,EAAMqF,EAAKC,GACxCW,EAAY,EAAI,GAAKN,EAAO,GAAKI,EAAeC,CAcpD,OAXiB,IAAbC,GACAJ,EAAU7F,EAAO,EACjB8F,EAAeb,GAAWY,GAAWI,GAC9BA,EAAYhB,GAAWjF,IAC9B6F,EAAU7F,EAAO,EACjB8F,EAAeG,EAAYhB,GAAWjF,KAEtC6F,EAAU7F,EACV8F,EAAeG,IAIfjG,KAAM6F,EACNI,UAAWH,GAInB,QAASI,IAAWpJ,EAAKuI,EAAKC,GAC1B,GAEIa,GAASN,EAFTG,EAAaZ,GAAgBtI,EAAIkD,OAAQqF,EAAKC,GAC9CK,EAAOld,KAAKuK,OAAO8J,EAAImJ,YAAcD,EAAa,GAAK,GAAK,CAchE,OAXW,GAAPL,GACAE,EAAU/I,EAAIkD,OAAS,EACvBmG,EAAUR,EAAOS,GAAYP,EAASR,EAAKC,IACpCK,EAAOS,GAAYtJ,EAAIkD,OAAQqF,EAAKC,IAC3Ca,EAAUR,EAAOS,GAAYtJ,EAAIkD,OAAQqF,EAAKC,GAC9CO,EAAU/I,EAAIkD,OAAS,IAEvB6F,EAAU/I,EAAIkD,OACdmG,EAAUR,IAIVA,KAAMQ,EACNnG,KAAM6F,GAId,QAASO,IAAYpG,EAAMqF,EAAKC,GAC5B,GAAIU,GAAaZ,GAAgBpF,EAAMqF,EAAKC,GACxCe,EAAiBjB,GAAgBpF,EAAO,EAAGqF,EAAKC,EACpD,QAAQL,GAAWjF,GAAQgG,EAAaK,GAAkB,EAI9D,QAASC,IAAS5c,EAAGC,EAAG1F,GACpB,MAAS,OAALyF,EACOA,EAEF,MAALC,EACOA,EAEJ1F,EAGX,QAASsiB,IAAiB/M,GAEtB,GAAIgN,GAAW,GAAI3d,MAAKwN,EAAmBoQ,MAC3C,OAAIjN,GAAOkN,SACCF,EAASzB,iBAAkByB,EAASG,cAAeH,EAASrG,eAEhEqG,EAAS5B,cAAe4B,EAASI,WAAYJ,EAASK,WAOlE,QAASC,IAAiBtN,GACtB,GAAIvP,GAAGkX,EAAkB4F,EAAaC,EAAzB9f,IAEb,KAAIsS,EAAOtB,GAAX,CA6BA,IAzBA6O,EAAcR,GAAiB/M,GAG3BA,EAAOoG,IAAyB,MAAnBpG,EAAOsG,GAAGuC,KAAqC,MAApB7I,EAAOsG,GAAGsC,KAClD6E,GAAsBzN,GAItBA,EAAO0N,aACPF,EAAYV,GAAS9M,EAAOsG,GAAGwC,IAAOyE,EAAYzE,KAE9C9I,EAAO0N,WAAajC,GAAW+B,KAC/BnP,EAAgB2B,GAAQmJ,oBAAqB,GAGjDxB,EAAO2D,GAAckC,EAAW,EAAGxN,EAAO0N,YAC1C1N,EAAOsG,GAAGsC,IAASjB,EAAKwF,cACxBnN,EAAOsG,GAAGuC,IAAQlB,EAAKhB,cAQtBlW,EAAI,EAAO,EAAJA,GAAyB,MAAhBuP,EAAOsG,GAAG7V,KAAcA,EACzCuP,EAAOsG,GAAG7V,GAAK/C,EAAM+C,GAAK8c,EAAY9c,EAI1C,MAAW,EAAJA,EAAOA,IACVuP,EAAOsG,GAAG7V,GAAK/C,EAAM+C,GAAsB,MAAhBuP,EAAOsG,GAAG7V,GAAqB,IAANA,EAAU,EAAI,EAAKuP,EAAOsG,GAAG7V,EAI7D,MAApBuP,EAAOsG,GAAGyC,KACgB,IAAtB/I,EAAOsG,GAAG0C,KACY,IAAtBhJ,EAAOsG,GAAG2C,KACiB,IAA3BjJ,EAAOsG,GAAG4C,MACdlJ,EAAO2N,UAAW,EAClB3N,EAAOsG,GAAGyC,IAAQ,GAGtB/I,EAAOtB,IAAMsB,EAAOkN,QAAU5B,GAAgBN,IAAYjO,MAAM,KAAMrP,GAGnD,MAAfsS,EAAON,MACPM,EAAOtB,GAAGkP,cAAc5N,EAAOtB,GAAGmP,gBAAkB7N,EAAON,MAG3DM,EAAO2N,WACP3N,EAAOsG,GAAGyC,IAAQ,KAI1B,QAAS0E,IAAsBzN,GAC3B,GAAI8N,GAAGC,EAAU5B,EAAMC,EAASP,EAAKC,EAAKkC,EAAMC,CAEhDH,GAAI9N,EAAOoG,GACC,MAAR0H,EAAEI,IAAqB,MAAPJ,EAAEK,GAAoB,MAAPL,EAAEM,GACjCvC,EAAM,EACNC,EAAM,EAMNiC,EAAWjB,GAASgB,EAAEI,GAAIlO,EAAOsG,GAAGwC,IAAO4D,GAAW2B,KAAsB,EAAG,GAAG7H,MAClF2F,EAAOW,GAASgB,EAAEK,EAAG,GACrB/B,EAAUU,GAASgB,EAAEM,EAAG,IACV,EAAVhC,GAAeA,EAAU,KACzB6B,GAAkB,KAGtBpC,EAAM7L,EAAOH,QAAQyO,MAAMzC,IAC3BC,EAAM9L,EAAOH,QAAQyO,MAAMxC,IAE3BiC,EAAWjB,GAASgB,EAAES,GAAIvO,EAAOsG,GAAGwC,IAAO4D,GAAW2B,KAAsBxC,EAAKC,GAAKtF,MACtF2F,EAAOW,GAASgB,EAAEA,EAAG,GAEV,MAAPA,EAAEtV,GAEF4T,EAAU0B,EAAEtV,GACE,EAAV4T,GAAeA,EAAU,KACzB6B,GAAkB,IAER,MAAPH,EAAEtY,GAET4W,EAAU0B,EAAEtY,EAAIqW,GACZiC,EAAEtY,EAAI,GAAKsY,EAAEtY,EAAI,KACjByY,GAAkB,IAItB7B,EAAUP,GAGP,EAAPM,GAAYA,EAAOS,GAAYmB,EAAUlC,EAAKC,GAC9CzN,EAAgB2B,GAAQoJ,gBAAiB,EACf,MAAnB6E,EACP5P,EAAgB2B,GAAQsJ,kBAAmB,GAE3C0E,EAAO9B,GAAmB6B,EAAU5B,EAAMC,EAASP,EAAKC,GACxD9L,EAAOsG,GAAGwC,IAAQkF,EAAKxH,KACvBxG,EAAO0N,WAAaM,EAAKvB,WAQjC,QAAS7B,IAA0B5K,GAE/B,GAAIA,EAAOR,KAAO3C,EAAmB2R,SAEjC,WADAxE,IAAchK,EAIlBA,GAAOsG,MACPjI,EAAgB2B,GAAQrC,OAAQ,CAGhC,IACIlN,GAAGge,EAAavI,EAAQjC,EAAOyK,EAD/BpE,EAAS,GAAKtK,EAAOT,GAErBoP,EAAerE,EAAOha,OACtBse,EAAyB,CAI7B,KAFA1I,EAAStB,EAAa5E,EAAOR,GAAIQ,EAAOH,SAASvQ,MAAMmV,QAElDhU,EAAI,EAAGA,EAAIyV,EAAO5V,OAAQG,IAC3BwT,EAAQiC,EAAOzV,GACfge,GAAenE,EAAOhb,MAAMkW,EAAsBvB,EAAOjE,SAAgB,GAGrEyO,IACAC,EAAUpE,EAAO1T,OAAO,EAAG0T,EAAO/Y,QAAQkd,IACtCC,EAAQpe,OAAS,GACjB+N,EAAgB2B,GAAQnC,YAAYrM,KAAKkd,GAE7CpE,EAASA,EAAOpT,MAAMoT,EAAO/Y,QAAQkd,GAAeA,EAAYne,QAChEse,GAA0BH,EAAYne,QAGtC+T,GAAqBJ,IACjBwK,EACApQ,EAAgB2B,GAAQrC,OAAQ,EAGhCU,EAAgB2B,GAAQpC,aAAapM,KAAKyS,GAE9CoC,EAAwBpC,EAAOwK,EAAazO,IAEvCA,EAAOnB,UAAY4P,GACxBpQ,EAAgB2B,GAAQpC,aAAapM,KAAKyS,EAKlD5F,GAAgB2B,GAAQjC,cAAgB4Q,EAAeC,EACnDtE,EAAOha,OAAS,GAChB+N,EAAgB2B,GAAQnC,YAAYrM,KAAK8Y,GAIzCjM,EAAgB2B,GAAQlB,WAAY,GAChCkB,EAAOsG,GAAGyC,KAAS,IACnB/I,EAAOsG,GAAGyC,IAAQ,IACtB1K,EAAgB2B,GAAQlB,QAAUvO,QAGtCyP,EAAOsG,GAAGyC,IAAQ8F,GAAgB7O,EAAOH,QAASG,EAAOsG,GAAGyC,IAAO/I,EAAO8O,WAE1ExB,GAAgBtN,GAChB2I,GAAc3I,GAIlB,QAAS6O,IAAiBvR,EAAQyR,EAAMC,GACpC,GAAIC,EAEJ,OAAgB,OAAZD,EAEOD,EAEgB,MAAvBzR,EAAO4R,aACA5R,EAAO4R,aAAaH,EAAMC,GACX,MAAf1R,EAAO6R,MAEdF,EAAO3R,EAAO6R,KAAKH,GACfC,GAAe,GAAPF,IACRA,GAAQ,IAEPE,GAAiB,KAATF,IACTA,EAAO,GAEJA,GAGAA,EAKf,QAASK,IAAyBpP,GAC9B,GAAIqP,GACAC,EAEAC,EACA9e,EACA+e,CAEJ,IAAyB,IAArBxP,EAAOR,GAAGlP,OAGV,MAFA+N,GAAgB2B,GAAQ9B,eAAgB,OACxC8B,EAAOtB,GAAK,GAAIrP,MAAK2P,KAIzB,KAAKvO,EAAI,EAAGA,EAAIuP,EAAOR,GAAGlP,OAAQG,IAC9B+e,EAAe,EACfH,EAAanQ,KAAec,GACN,MAAlBA,EAAOkN,UACPmC,EAAWnC,QAAUlN,EAAOkN,SAEhCmC,EAAW7P,GAAKQ,EAAOR,GAAG/O,GAC1Bma,GAA0ByE,GAErB9Q,EAAe8Q,KAKpBG,GAAgBnR,EAAgBgR,GAAYtR,cAG5CyR,GAAkE,GAAlDnR,EAAgBgR,GAAYzR,aAAatN,OAEzD+N,EAAgBgR,GAAYI,MAAQD,GAEjB,MAAfD,GAAsCA,EAAfC,KACvBD,EAAcC,EACdF,EAAaD,GAIrB1e,GAAOqP,EAAQsP,GAAcD,GAGjC,QAASK,IAAiB1P,GACtB,IAAIA,EAAOtB,GAAX,CAIA,GAAIjO,GAAImS,EAAqB5C,EAAOT,GACpCS,GAAOsG,GAAKjP,GAAK5G,EAAE+V,KAAM/V,EAAEgW,MAAOhW,EAAEkf,KAAOlf,EAAEkX,KAAMlX,EAAEse,KAAMte,EAAEmf,OAAQnf,EAAEof,OAAQpf,EAAEqf,aAAc,SAAUhgB,GACrG,MAAOA,IAAOyG,SAASzG,EAAK,MAGhCwd,GAAgBtN,IAGpB,QAAS+P,IAAkB/P,GACvB,GAAI9C,GAAM,GAAI6C,GAAO4I,GAAcqH,GAAchQ,IAOjD,OANI9C,GAAIyQ,WAEJzQ,EAAI+S,IAAI,EAAG,KACX/S,EAAIyQ,SAAWpd,QAGZ2M,EAGX,QAAS8S,IAAehQ,GACpB,GAAItS,GAAQsS,EAAOT,GACflC,EAAS2C,EAAOR,EAIpB,OAFAQ,GAAOH,QAAUG,EAAOH,SAAWoC,EAA0BjC,EAAOP,IAEtD,OAAV/R,GAA8B6C,SAAX8M,GAAkC,KAAV3P,EACpCqR,GAAsBf,WAAW,KAGvB,gBAAVtQ,KACPsS,EAAOT,GAAK7R,EAAQsS,EAAOH,QAAQqQ,SAASxiB,IAG5CqE,EAASrE,GACF,GAAIqS,GAAO4I,GAAcjb,KACzBqD,EAAQsM,GACf+R,GAAyBpP,GAClB3C,EACPuN,GAA0B5K,GACnB5Q,EAAO1B,GACdsS,EAAOtB,GAAKhR,EAEZyiB,GAAgBnQ,GAGfzB,EAAeyB,KAChBA,EAAOtB,GAAK,MAGTsB,IAGX,QAASmQ,IAAgBnQ,GACrB,GAAItS,GAAQsS,EAAOT,EACLhP,UAAV7C,EACAsS,EAAOtB,GAAK,GAAIrP,MAAKwN,EAAmBoQ,OACjC7d,EAAO1B,GACdsS,EAAOtB,GAAK,GAAIrP,OAAM3B,GACE,gBAAVA,GACdmd,GAAiB7K,GACVjP,EAAQrD,IACfsS,EAAOsG,GAAKjP,EAAI3J,EAAMwJ,MAAM,GAAI,SAAUpH,GACtC,MAAOyG,UAASzG,EAAK,MAEzBwd,GAAgBtN,IACS,gBAAZ,GACb0P,GAAiB1P,GACQ,gBAAZ,GAEbA,EAAOtB,GAAK,GAAIrP,MAAK3B,GAErBmP,EAAmBkO,wBAAwB/K,GAInD,QAASxC,IAAkB9P,EAAO2P,EAAQC,EAAQC,EAAQ6S,GACtD,GAAI3lB,KAeJ,OAbuB,iBAAb,KACN8S,EAASD,EACTA,EAAS/M,QAIb9F,EAAE6U,kBAAmB,EACrB7U,EAAEyiB,QAAUziB,EAAEkV,OAASyQ,EACvB3lB,EAAEgV,GAAKnC,EACP7S,EAAE8U,GAAK7R,EACPjD,EAAE+U,GAAKnC,EACP5S,EAAEoU,QAAUtB,EAELwS,GAAiBtlB,GAG5B,QAAS4jB,IAAoB3gB,EAAO2P,EAAQC,EAAQC,GAChD,MAAOC,IAAiB9P,EAAO2P,EAAQC,EAAQC,GAAQ,GAgC3D,QAAS8S,IAAOxc,EAAIyc,GAChB,GAAIpT,GAAKzM,CAIT,IAHuB,IAAnB6f,EAAQhgB,QAAgBS,EAAQuf,EAAQ,MACxCA,EAAUA,EAAQ,KAEjBA,EAAQhgB,OACT,MAAO+d,KAGX,KADAnR,EAAMoT,EAAQ,GACT7f,EAAI,EAAGA,EAAI6f,EAAQhgB,SAAUG,IACzB6f,EAAQ7f,GAAG8S,WAAa+M,EAAQ7f,GAAGoD,GAAIqJ,MACxCA,EAAMoT,EAAQ7f,GAGtB,OAAOyM,GAIX,QAAStO,MACL,GAAI2hB,MAAUrZ,MAAM3M,KAAK8F,UAAW,EAEpC,OAAOggB,IAAO,WAAYE,GAG9B,QAAS1hB,MACL,GAAI0hB,MAAUrZ,MAAM3M,KAAK8F,UAAW,EAEpC,OAAOggB,IAAO,UAAWE,GAO7B,QAASC,IAAUC,GACf,GAAI1N,GAAkBH,EAAqB6N,GACvCC,EAAQ3N,EAAgByD,MAAQ,EAChCmK,EAAW5N,EAAgB6N,SAAW,EACtCtJ,EAASvE,EAAgB0D,OAAS,EAClCoK,EAAQ9N,EAAgBoJ,MAAQ,EAChC2E,EAAO/N,EAAgB4M,KAAO,EAC9BoB,EAAQhO,EAAgBgM,MAAQ,EAChCiC,EAAUjO,EAAgB6M,QAAU,EACpCqB,EAAUlO,EAAgB8M,QAAU,EACpCqB,EAAenO,EAAgB+M,aAAe,CAGlD9lB,MAAKmnB,eAAiBD,EACR,IAAVD,EACU,IAAVD,EACQ,KAARD,EAGJ/mB,KAAKonB,OAASN,EACF,EAARD,EAIJ7mB,KAAK6c,SAAWS,EACD,EAAXqJ,EACQ,GAARD,EAEJ1mB,KAAKqnB,SAELrnB,KAAK6V,QAAUoC,IAEfjY,KAAKsnB,UAGT,QAASC,IAAYzhB,GACjB,MAAOA,aAAe0gB,IAK1B,QAASgB,IAAQvN,EAAOwN,GACpBzN,EAAeC,EAAO,EAAG,EAAG,WACxB,GAAIuN,GAASxnB,KAAK0nB,YACd5N,EAAO,GAKX,OAJa,GAAT0N,IACAA,GAAUA,EACV1N,EAAO,KAEJA,EAAOL,KAAY+N,EAAS,IAAK,GAAKC,EAAYhO,IAAW,EAAW,GAAI,KAuB3F,QAASkO,IAAiBC,EAAStH,GAC/B,GAAIuH,IAAYvH,GAAU,IAAIhb,MAAMsiB,OAChCE,EAAUD,EAAQA,EAAQvhB,OAAS,OACnC0I,GAAW8Y,EAAQ,IAAIxiB,MAAMyiB,MAAiB,IAAK,EAAG,GACtDf,IAAuB,GAAXhY,EAAM,IAAWsH,EAAMtH,EAAM,GAE7C,OAAoB,MAAbA,EAAM,GAAagY,GAAWA,EAIzC,QAASgB,IAAgBtkB,EAAOukB,GAC5B,GAAI/U,GAAKgV,CACT,OAAID,GAAMtS,QACNzC,EAAM+U,EAAME,QACZD,GAAQngB,EAASrE,IAAU0B,EAAO1B,IAAUA,GAAS2gB,GAAmB3gB,KAAYwP,EAEpFA,EAAIwB,GAAG0T,SAASlV,EAAIwB,GAAKwT,GACzBrV,EAAmBqD,aAAahD,GAAK,GAC9BA,GAEAmR,GAAmB3gB,GAAO2kB,QAIzC,QAASC,IAAe9nB,GAGpB,MAAoD,KAA5CyE,KAAKsjB,MAAM/nB,EAAEkU,GAAG8T,oBAAsB,IAqBlD,QAASC,IAAc/kB,EAAOglB,GAC1B,GACIC,GADAnB,EAASxnB,KAAK4V,SAAW,CAE7B,OAAK5V,MAAKuZ,UAGG,MAAT7V,GACqB,gBAAVA,GACPA,EAAQikB,GAAiBiB,GAAkBllB,GACpCuB,KAAK8R,IAAIrT,GAAS,KACzBA,EAAgB,GAARA,IAEP1D,KAAK2V,QAAU+S,IAChBC,EAAcL,GAActoB,OAEhCA,KAAK4V,QAAUlS,EACf1D,KAAK2V,QAAS,EACK,MAAfgT,GACA3oB,KAAKimB,IAAI0C,EAAa,KAEtBnB,IAAW9jB,KACNglB,GAAiB1oB,KAAK6oB,kBACvBC,GAA0B9oB,KAAM+oB,GAAuBrlB,EAAQ8jB,EAAQ,KAAM,GAAG,GACxExnB,KAAK6oB,oBACb7oB,KAAK6oB,mBAAoB,EACzBhW,EAAmBqD,aAAalW,MAAM,GACtCA,KAAK6oB,kBAAoB,OAG1B7oB,MAEAA,KAAK2V,OAAS6R,EAASc,GAActoB,MA3B5B,MAAT0D,EAAgB1D,KAAOgV,IA+BtC,QAASgU,IAAYtlB,EAAOglB,GACxB,MAAa,OAAThlB,GACqB,gBAAVA,KACPA,GAASA,GAGb1D,KAAK0nB,UAAUhkB,EAAOglB,GAEf1oB,OAECA,KAAK0nB,YAIrB,QAASuB,IAAgBP,GACrB,MAAO1oB,MAAK0nB,UAAU,EAAGgB,GAG7B,QAASQ,IAAkBR,GASvB,MARI1oB,MAAK2V,SACL3V,KAAK0nB,UAAU,EAAGgB,GAClB1oB,KAAK2V,QAAS,EAEV+S,GACA1oB,KAAKmpB,SAASb,GAActoB,MAAO,MAGpCA,KAGX,QAASopB,MAML,MALIppB,MAAK0V,KACL1V,KAAK0nB,UAAU1nB,KAAK0V,MACM,gBAAZ1V,MAAKuV,IACnBvV,KAAK0nB,UAAUC,GAAiB0B,GAAarpB,KAAKuV,KAE/CvV,KAGX,QAASspB,IAAsB5lB,GAC3B,MAAK1D,MAAKuZ,WAGV7V,EAAQA,EAAQ2gB,GAAmB3gB,GAAOgkB,YAAc,GAEhD1nB,KAAK0nB,YAAchkB,GAAS,KAAO,IAJhC,EAOf,QAAS6lB,MACL,MACIvpB,MAAK0nB,YAAc1nB,KAAKmoB,QAAQ1L,MAAM,GAAGiL,aACzC1nB,KAAK0nB,YAAc1nB,KAAKmoB,QAAQ1L,MAAM,GAAGiL,YAIjD,QAAS8B,MACL,IAAKvU,EAAYjV,KAAKypB,eAClB,MAAOzpB,MAAKypB,aAGhB,IAAIhpB,KAKJ,IAHAyU,EAAWzU,EAAGT,MACdS,EAAIulB,GAAcvlB,GAEdA,EAAE6b,GAAI,CACN,GAAI5V,GAAQjG,EAAEkV,OAASvC,EAAsB3S,EAAE6b,IAAM+H,GAAmB5jB,EAAE6b,GAC1Etc,MAAKypB,cAAgBzpB,KAAKuZ,WACtB7C,EAAcjW,EAAE6b,GAAI5V,EAAM8C,WAAa,MAE3CxJ,MAAKypB,eAAgB,CAGzB,OAAOzpB,MAAKypB,cAGhB,QAASC,MACL,MAAO1pB,MAAKuZ,WAAavZ,KAAK2V,QAAS,EAG3C,QAASgU,MACL,MAAO3pB,MAAKuZ,UAAYvZ,KAAK2V,QAAS,EAG1C,QAASiU,MACL,MAAO5pB,MAAKuZ,UAAYvZ,KAAK2V,QAA2B,IAAjB3V,KAAK4V,SAAgB,EAUhE,QAASmT,IAAwBrlB,EAAOiG,GACpC,GAGImQ,GACA+P,EACAC,EALArD,EAAW/iB,EAEX4B,EAAQ,IAuDZ,OAlDIiiB,IAAW7jB,GACX+iB,GACItF,GAAKzd,EAAMyjB,cACX3Y,EAAK9K,EAAM0jB,MACXlG,EAAKxd,EAAMmZ,SAES,gBAAVnZ,IACd+iB,KACI9c,EACA8c,EAAS9c,GAAOjG,EAEhB+iB,EAASS,aAAexjB,IAElB4B,EAAQykB,GAAYvkB,KAAK9B,KACnCoW,EAAqB,MAAbxU,EAAM,GAAc,GAAK,EACjCmhB,GACIxF,EAAK,EACLzS,EAAK8H,EAAMhR,EAAMuZ,KAAgB/E,EACjCpM,EAAK4I,EAAMhR,EAAMyZ,KAAgBjF,EACjCtZ,EAAK8V,EAAMhR,EAAM0Z,KAAgBlF,EACjCnM,EAAK2I,EAAMhR,EAAM2Z,KAAgBnF,EACjCqH,GAAK7K,EAAMhR,EAAM4Z,KAAgBpF,KAE3BxU,EAAQ0kB,GAASxkB,KAAK9B,KAChCoW,EAAqB,MAAbxU,EAAM,GAAc,GAAK,EACjCmhB,GACIxF,EAAIgJ,GAAS3kB,EAAM,GAAIwU,GACvBoH,EAAI+I,GAAS3kB,EAAM,GAAIwU,GACvBtL,EAAIyb,GAAS3kB,EAAM,GAAIwU,GACvBpM,EAAIuc,GAAS3kB,EAAM,GAAIwU,GACvBtZ,EAAIypB,GAAS3kB,EAAM,GAAIwU,GACvBnM,EAAIsc,GAAS3kB,EAAM,GAAIwU,GACvBgK,EAAImG,GAAS3kB,EAAM,GAAIwU,KAER,MAAZ2M,EACPA,KAC2B,gBAAbA,KAA0B,QAAUA,IAAY,MAAQA,MACtEqD,EAAUI,GAAkB7F,GAAmBoC,EAASrR,MAAOiP,GAAmBoC,EAAStR,KAE3FsR,KACAA,EAAStF,GAAK2I,EAAQ5C,aACtBT,EAASvF,EAAI4I,EAAQxM,QAGzBuM,EAAM,GAAIrD,IAASC,GAEfc,GAAW7jB,IAAUyP,EAAWzP,EAAO,aACvCmmB,EAAIhU,QAAUnS,EAAMmS,SAGjBgU,EAKX,QAASI,IAAUE,EAAKrQ,GAIpB,GAAI5G,GAAMiX,GAAOC,WAAWD,EAAIhe,QAAQ,IAAK,KAE7C,QAAQ1G,MAAMyN,GAAO,EAAIA,GAAO4G,EAGpC,QAASuQ,IAA0BC,EAAM5jB,GACrC,GAAIwM,IAAOgU,aAAc,EAAG5J,OAAQ,EAUpC,OARApK,GAAIoK,OAAS5W,EAAM+V,QAAU6N,EAAK7N,QACC,IAA9B/V,EAAM8V,OAAS8N,EAAK9N,QACrB8N,EAAKnC,QAAQlC,IAAI/S,EAAIoK,OAAQ,KAAKiN,QAAQ7jB,MACxCwM,EAAIoK,OAGVpK,EAAIgU,cAAgBxgB,GAAU4jB,EAAKnC,QAAQlC,IAAI/S,EAAIoK,OAAQ,KAEpDpK,EAGX,QAASgX,IAAkBI,EAAM5jB,GAC7B,GAAIwM,EACJ,OAAMoX,GAAK/Q,WAAa7S,EAAM6S,WAI9B7S,EAAQshB,GAAgBthB,EAAO4jB,GAC3BA,EAAKE,SAAS9jB,GACdwM,EAAMmX,GAA0BC,EAAM5jB,IAEtCwM,EAAMmX,GAA0B3jB,EAAO4jB,GACvCpX,EAAIgU,cAAgBhU,EAAIgU,aACxBhU,EAAIoK,QAAUpK,EAAIoK,QAGfpK,IAZKgU,aAAc,EAAG5J,OAAQ,GAgBzC,QAASmN,IAAYC,EAAWlT,GAC5B,MAAO,UAAUnC,EAAKsV,GAClB,GAAIC,GAAKC,CAUT,OARe,QAAXF,GAAoBllB,OAAOklB,KAC3B7K,GAAgBtI,EAAM,YAAcA,EAAQ,uDAAyDA,EAAO,qBAC5GqT,EAAMxV,EAAKA,EAAMsV,EAAQA,EAASE,GAGtCxV,EAAqB,gBAARA,IAAoBA,EAAMA,EACvCuV,EAAM7B,GAAuB1T,EAAKsV,GAClC7B,GAA0B9oB,KAAM4qB,EAAKF,GAC9B1qB,MAIf,QAAS8oB,IAA2BxP,EAAKmN,EAAUqE,EAAU5U,GACzD,GAAIgR,GAAeT,EAASU,cACxBL,EAAOL,EAASW,MAChB9J,EAASmJ,EAAS5J,OAEjBvD,GAAIC,YAKTrD,EAA+B,MAAhBA,GAAuB,EAAOA,EAEzCgR,GACA5N,EAAI5E,GAAG0T,SAAS9O,EAAI5E,GAAKwS,EAAe4D,GAExChE,GACA1N,EAAaE,EAAK,OAAQD,EAAaC,EAAK,QAAUwN,EAAOgE,GAE7DxN,GACAE,EAASlE,EAAKD,EAAaC,EAAK,SAAWgE,EAASwN,GAEpD5U,GACArD,EAAmBqD,aAAaoD,EAAKwN,GAAQxJ,IAOrD,QAASyN,IAA2BC,EAAMC,GAGtC,GAAIhI,GAAM+H,GAAQ3G,KACd6G,EAAMlD,GAAgB/E,EAAKjjB,MAAMmrB,QAAQ,OACzCjD,EAAOloB,KAAKkoB,KAAKgD,EAAK,QAAQ,GAC9B7X,EAAgB,GAAP6U,EAAY,WACV,GAAPA,EAAY,WACL,EAAPA,EAAW,UACJ,EAAPA,EAAW,UACJ,EAAPA,EAAW,UACJ,EAAPA,EAAW,WAAa,WAE5BxN,EAASuQ,IAAYjS,EAAWiS,EAAQ5X,IAAW4X,EAAQ5X,KAAY4X,EAAQ5X,GAEnF,OAAOrT,MAAKqT,OAAOqH,GAAU1a,KAAKsa,aAAa8Q,SAAS/X,EAAQrT,KAAMqkB,GAAmBpB,KAG7F,QAASkF,MACL,MAAO,IAAIpS,GAAO/V,MAGtB,QAASuqB,IAAS7mB,EAAOiV,GACrB,GAAI0S,GAAatjB,EAASrE,GAASA,EAAQ2gB,GAAmB3gB,EAC9D,OAAM1D,MAAKuZ,WAAa8R,EAAW9R,WAGnCZ,EAAQD,EAAgBzD,EAAY0D,GAAiB,cAARA,GAC/B,gBAAVA,GACQ3Y,MAAQqrB,GAERA,GAAcrrB,KAAKmoB,QAAQgD,QAAQxS,KANpC,EAUf,QAAS6R,IAAU9mB,EAAOiV,GACtB,GAAI0S,GAAatjB,EAASrE,GAASA,EAAQ2gB,GAAmB3gB,EAC9D,OAAM1D,MAAKuZ,WAAa8R,EAAW9R,WAGnCZ,EAAQD,EAAgBzD,EAAY0D,GAAiB,cAARA,GAC/B,gBAAVA,GACgB0S,GAARrrB,MAEAA,KAAKmoB,QAAQmD,MAAM3S,IAAU0S,IAN9B,EAUf,QAASE,IAAWnW,EAAMD,EAAIwD,GAC1B,MAAO3Y,MAAKuqB,QAAQnV,EAAMuD,IAAU3Y,KAAKwqB,SAASrV,EAAIwD,GAG1D,QAAS6S,IAAQ9nB,EAAOiV,GACpB,GACI8S,GADAJ,EAAatjB,EAASrE,GAASA,EAAQ2gB,GAAmB3gB,EAE9D,OAAM1D,MAAKuZ,WAAa8R,EAAW9R,WAGnCZ,EAAQD,EAAeC,GAAS,eAClB,gBAAVA,GACQ3Y,QAAUqrB,GAElBI,GAAWJ,GACFrrB,KAAKmoB,QAAQgD,QAAQxS,IAAW8S,GAAWA,IAAazrB,KAAKmoB,QAAQmD,MAAM3S,MAP7E,EAWf,QAAS+S,IAAehoB,EAAOiV,GAC3B,MAAO3Y,MAAKwrB,OAAO9nB,EAAOiV,IAAU3Y,KAAKuqB,QAAQ7mB,EAAMiV;AAG3D,QAASgT,IAAgBjoB,EAAOiV,GAC5B,MAAO3Y,MAAKwrB,OAAO9nB,EAAOiV,IAAU3Y,KAAKwqB,SAAS9mB,EAAMiV,GAG5D,QAASuP,IAAMxkB,EAAOiV,EAAOiT,GACzB,GAAIC,GACAC,EACAC,EAAOrR,CAEX,OAAK1a,MAAKuZ,WAIVsS,EAAO7D,GAAgBtkB,EAAO1D,MAEzB6rB,EAAKtS,WAIVuS,EAAoD,KAAvCD,EAAKnE,YAAc1nB,KAAK0nB,aAErC/O,EAAQD,EAAeC,GAET,SAAVA,GAA8B,UAAVA,GAA+B,YAAVA,GACzC+B,EAASsR,GAAUhsB,KAAM6rB,GACX,YAAVlT,EACA+B,GAAkB,EACD,SAAV/B,IACP+B,GAAkB,MAGtBqR,EAAQ/rB,KAAO6rB,EACfnR,EAAmB,WAAV/B,EAAqBoT,EAAQ,IACxB,WAAVpT,EAAqBoT,EAAQ,IACnB,SAAVpT,EAAmBoT,EAAQ,KACjB,QAAVpT,GAAmBoT,EAAQD,GAAa,MAC9B,SAAVnT,GAAoBoT,EAAQD,GAAa,OACzCC,GAEDH,EAAUlR,EAASvE,EAASuE,IAvBxB1F,KANAA,IAgCf,QAASgX,IAAW9lB,EAAGC,GAEnB,GAGI8lB,GAASC,EAHTC,EAA0C,IAAvBhmB,EAAEqW,OAAStW,EAAEsW,SAAiBrW,EAAEsW,QAAUvW,EAAEuW,SAE/D2P,EAASlmB,EAAEiiB,QAAQlC,IAAIkG,EAAgB,SAa3C,OAViB,GAAbhmB,EAAIimB,GACJH,EAAU/lB,EAAEiiB,QAAQlC,IAAIkG,EAAiB,EAAG,UAE5CD,GAAU/lB,EAAIimB,IAAWA,EAASH,KAElCA,EAAU/lB,EAAEiiB,QAAQlC,IAAIkG,EAAiB,EAAG,UAE5CD,GAAU/lB,EAAIimB,IAAWH,EAAUG,MAG9BD,EAAiBD,GAK9B,QAASjf,MACL,MAAOjN,MAAKmoB,QAAQ7U,OAAO,MAAMD,OAAO,oCAG5C,QAASgZ,MACL,GAAI7rB,GAAIR,KAAKmoB,QAAQ1U,KACrB,OAAI,GAAIjT,EAAEgc,QAAUhc,EAAEgc,QAAU,KACxBxD,EAAW3T,KAAK4N,UAAU/K,aAEnBlI,KAAKgI,SAASE,cAEdyS,EAAana,EAAG,gCAGpBma,EAAana,EAAG,kCAI/B,QAAS6S,IAAQiZ,GACb,GAAI5R,GAASC,EAAa3a,KAAMssB,GAAezZ,EAAmB0Z,cAClE,OAAOvsB,MAAKsa,aAAakS,WAAW9R,GAGxC,QAAStF,IAAM4V,EAAMyB,GACjB,MAAIzsB,MAAKuZ,YACCxR,EAASijB,IAASA,EAAKzR,WACxB8K,GAAmB2G,GAAMzR,WACvBwP,IAAwB5T,GAAInV,KAAMoV,KAAM4V,IAAO1X,OAAOtT,KAAKsT,UAAUoZ,UAAUD,GAE/EzsB,KAAKsa,aAAaQ,cAIjC,QAAS6R,IAASF,GACd,MAAOzsB,MAAKoV,KAAKiP,KAAsBoI,GAG3C,QAAStX,IAAI6V,EAAMyB,GACf,MAAIzsB,MAAKuZ,YACCxR,EAASijB,IAASA,EAAKzR,WACxB8K,GAAmB2G,GAAMzR,WACvBwP,IAAwB3T,KAAMpV,KAAMmV,GAAI6V,IAAO1X,OAAOtT,KAAKsT,UAAUoZ,UAAUD,GAE/EzsB,KAAKsa,aAAaQ,cAIjC,QAAS8R,IAAOH,GACZ,MAAOzsB,MAAKmV,GAAGkP,KAAsBoI,GAMzC,QAASnZ,IAAQ3J,GACb,GAAIkjB,EAEJ,OAAYtmB,UAARoD,EACO3J,KAAK6V,QAAQ+B,OAEpBiV,EAAgB5U,EAA0BtO,GACrB,MAAjBkjB,IACA7sB,KAAK6V,QAAUgX,GAEZ7sB,MAef,QAASsa,MACL,MAAOta,MAAK6V,QAGhB,QAASsV,IAASxS,GAId,OAHAA,EAAQD,EAAeC,IAIvB,IAAK,OACD3Y,KAAKyc,MAAM,EAEf,KAAK,UACL,IAAK,QACDzc,KAAK2d,KAAK,EAEd,KAAK,OACL,IAAK,UACL,IAAK,MACD3d,KAAK+mB,MAAM,EAEf,KAAK,OACD/mB,KAAKgnB,QAAQ,EAEjB,KAAK,SACDhnB,KAAKinB,QAAQ,EAEjB,KAAK,SACDjnB,KAAKknB,aAAa,GAgBtB,MAZc,SAAVvO,GACA3Y,KAAKoiB,QAAQ,GAEH,YAAVzJ,GACA3Y,KAAK8sB,WAAW,GAIN,YAAVnU,GACA3Y,KAAKyc,MAAqC,EAA/BxX,KAAKuK,MAAMxP,KAAKyc,QAAU,IAGlCzc,KAGX,QAASsrB,IAAO3S,GAEZ,MADAA,GAAQD,EAAeC,GACTpS,SAAVoS,GAAiC,gBAAVA,EAChB3Y,KAEJA,KAAKmrB,QAAQxS,GAAOsN,IAAI,EAAc,YAAVtN,EAAsB,OAASA,GAAQwQ,SAAS,EAAG,MAG1F,QAAS4D,MACL,OAAQ/sB,KAAK0U,GAA4B,KAArB1U,KAAK4V,SAAW,GAGxC,QAASoX,MACL,MAAO/nB,MAAKuK,OAAOxP,KAAO,KAG9B,QAASgI,MACL,MAAOhI,MAAK4V,QAAU,GAAIvQ,OAAMrF,MAAQA,KAAK0U,GAGjD,QAASlL,MACL,GAAIhJ,GAAIR,IACR,QAAQQ,EAAEgc,OAAQhc,EAAEic,QAASjc,EAAEmd,OAAQnd,EAAEukB,OAAQvkB,EAAEolB,SAAUplB,EAAEqlB,SAAUrlB,EAAEslB,eAG/E,QAASmH,MACL,GAAIzsB,GAAIR,IACR,QACI0mB,MAAOlmB,EAAEgc,OACTc,OAAQ9c,EAAEic,QACVkB,KAAMnd,EAAEmd,OACRoJ,MAAOvmB,EAAEumB,QACTC,QAASxmB,EAAEwmB,UACXC,QAASzmB,EAAEymB,UACXC,aAAc1mB,EAAE0mB,gBAIxB,QAASgG,MAEL,MAAOltB,MAAKuZ,UAAYvZ,KAAKkI,cAAgB,OAGjD,QAASilB,MACL,MAAO5Y,GAAevU,MAG1B,QAASotB,MACL,MAAOzmB,MAAW0N,EAAgBrU,OAGtC,QAASqtB,MACL,MAAOhZ,GAAgBrU,MAAM8T,SAGjC,QAASwZ,MACL,OACI5pB,MAAO1D,KAAKuV,GACZlC,OAAQrT,KAAKwV,GACblC,OAAQtT,KAAK6V,QACbuQ,MAAOpmB,KAAK2V,OACZpC,OAAQvT,KAAK6U,SAcrB,QAAS0Y,IAAwBtT,EAAOuT,GACpCxT,EAAe,GAAIC,EAAOA,EAAM3T,QAAS,EAAGknB,GAkChD,QAASC,IAAgB/pB,GACrB,MAAOgqB,IAAqBntB,KAAKP,KACzB0D,EACA1D,KAAKmiB,OACLniB,KAAKoiB,UACLpiB,KAAKsa,aAAagK,MAAMzC,IACxB7hB,KAAKsa,aAAagK,MAAMxC,KAGpC,QAAS6L,IAAmBjqB,GACxB,MAAOgqB,IAAqBntB,KAAKP,KACzB0D,EAAO1D,KAAK4tB,UAAW5tB,KAAK8sB,aAAc,EAAG,GAGzD,QAASe,MACL,MAAOjL,IAAY5iB,KAAKwc,OAAQ,EAAG,GAGvC,QAASsR,MACL,GAAIC,GAAW/tB,KAAKsa,aAAagK,KACjC,OAAO1B,IAAY5iB,KAAKwc,OAAQuR,EAASlM,IAAKkM,EAASjM,KAG3D,QAAS4L,IAAqBhqB,EAAOye,EAAMC,EAASP,EAAKC,GACrD,GAAIkM,EACJ,OAAa,OAATtqB,EACOgf,GAAW1iB,KAAM6hB,EAAKC,GAAKtF,MAElCwR,EAAcpL,GAAYlf,EAAOme,EAAKC,GAClCK,EAAO6L,IACP7L,EAAO6L,GAEJC,GAAW1tB,KAAKP,KAAM0D,EAAOye,EAAMC,EAASP,EAAKC,IAIhE,QAASmM,IAAWlK,EAAU5B,EAAMC,EAASP,EAAKC,GAC9C,GAAIoM,GAAgBhM,GAAmB6B,EAAU5B,EAAMC,EAASP,EAAKC,GACjEnE,EAAO2D,GAAc4M,EAAc1R,KAAM,EAAG0R,EAAczL,UAM9D,OAHAziB,MAAKwc,KAAKmB,EAAK4D,kBACfvhB,KAAKyc,MAAMkB,EAAKwF,eAChBnjB,KAAK2d,KAAKA,EAAKhB,cACR3c,KAoBX,QAASmuB,IAAezqB,GACpB,MAAgB,OAATA,EAAgBuB,KAAKoR,MAAMrW,KAAKyc,QAAU,GAAK,GAAKzc,KAAKyc,MAAoB,GAAb/Y,EAAQ,GAAS1D,KAAKyc,QAAU,GA4B3G,QAAS2R,IAAY9U,GACjB,MAAOoJ,IAAWpJ,EAAKtZ,KAAKskB,MAAMzC,IAAK7hB,KAAKskB,MAAMxC,KAAKK,KAQ3D,QAASkM,MACL,MAAOruB,MAAKskB,MAAMzC,IAGtB,QAASyM,MACL,MAAOtuB,MAAKskB,MAAMxC,IAKtB,QAASyM,IAAY7qB,GACjB,GAAIye,GAAOniB,KAAKsa,aAAa6H,KAAKniB,KAClC,OAAgB,OAAT0D,EAAgBye,EAAOniB,KAAKimB,IAAqB,GAAhBviB,EAAQye,GAAW,KAG/D,QAASqM,IAAe9qB,GACpB,GAAIye,GAAOO,GAAW1iB,KAAM,EAAG,GAAGmiB,IAClC,OAAgB,OAATze,EAAgBye,EAAOniB,KAAKimB,IAAqB,GAAhBviB,EAAQye,GAAW,KA8E/D,QAASsM,IAAa/qB,EAAO4P,GACzB,MAAqB,gBAAV5P,GACAA,EAGN+B,MAAM/B,IAIXA,EAAQ4P,EAAOob,cAAchrB,GACR,gBAAVA,GACAA,EAGJ,MARI6I,SAAS7I,EAAO,IAc/B,QAASirB,IAAgBnuB,EAAG6S,GACxB,MAAOtM,GAAQ/G,KAAK4uB,WAAa5uB,KAAK4uB,UAAUpuB,EAAEmlB,OAC9C3lB,KAAK4uB,UAAU5uB,KAAK4uB,UAAUC,SAAShf,KAAKwD,GAAU,SAAW,cAAc7S,EAAEmlB,OAIzF,QAASmJ,IAAqBtuB,GAC1B,MAAOR,MAAK+uB,eAAevuB,EAAEmlB,OAIjC,QAASqJ,IAAmBxuB,GACxB,MAAOR,MAAKivB,aAAazuB,EAAEmlB,OAG/B,QAASuJ,IAAqBC,EAAa9b,EAAQE,GAC/C,GAAI9M,GAAG6S,EAAK8B,CASZ,KAPKpb,KAAKovB,iBACNpvB,KAAKovB,kBACLpvB,KAAKqvB,qBACLrvB,KAAKsvB,uBACLtvB,KAAKuvB,uBAGJ9oB,EAAI,EAAO,EAAJA,EAAOA,IAAK,CAcpB,GAXA6S,EAAM+K,IAAoB,IAAM,IAAIsB,IAAIlf,GACpC8M,IAAWvT,KAAKuvB,mBAAmB9oB,KACnCzG,KAAKuvB,mBAAmB9oB,GAAK,GAAIgV,QAAO,IAAMzb,KAAKwvB,SAASlW,EAAK,IAAInN,QAAQ,IAAK,MAAS,IAAK,KAChGnM,KAAKsvB,oBAAoB7oB,GAAK,GAAIgV,QAAO,IAAMzb,KAAKyvB,cAAcnW,EAAK,IAAInN,QAAQ,IAAK,MAAS,IAAK,KACtGnM,KAAKqvB,kBAAkB5oB,GAAK,GAAIgV,QAAO,IAAMzb,KAAK0vB,YAAYpW,EAAK,IAAInN,QAAQ,IAAK,MAAS,IAAK,MAEjGnM,KAAKovB,eAAe3oB,KACrB2U,EAAQ,IAAMpb,KAAKwvB,SAASlW,EAAK,IAAM,KAAOtZ,KAAKyvB,cAAcnW,EAAK,IAAM,KAAOtZ,KAAK0vB,YAAYpW,EAAK,IACzGtZ,KAAKovB,eAAe3oB,GAAK,GAAIgV,QAAOL,EAAMjP,QAAQ,IAAK,IAAK,MAG5DoH,GAAqB,SAAXF,GAAqBrT,KAAKuvB,mBAAmB9oB,GAAGoJ,KAAKsf,GAC/D,MAAO1oB,EACJ,IAAI8M,GAAqB,QAAXF,GAAoBrT,KAAKsvB,oBAAoB7oB,GAAGoJ,KAAKsf,GACtE,MAAO1oB,EACJ,IAAI8M,GAAqB,OAAXF,GAAmBrT,KAAKqvB,kBAAkB5oB,GAAGoJ,KAAKsf,GACnE,MAAO1oB,EACJ,KAAK8M,GAAUvT,KAAKovB,eAAe3oB,GAAGoJ,KAAKsf,GAC9C,MAAO1oB,IAOnB,QAASkpB,IAAiBjsB,GACtB,IAAK1D,KAAKuZ,UACN,MAAgB,OAAT7V,EAAgB1D,KAAOgV,GAElC,IAAI2Q,GAAM3lB,KAAK2V,OAAS3V,KAAK0U,GAAGuN,YAAcjiB,KAAK0U,GAAGkb,QACtD,OAAa,OAATlsB,GACAA,EAAQ+qB,GAAa/qB,EAAO1D,KAAKsa,cAC1Bta,KAAKimB,IAAIviB,EAAQiiB,EAAK,MAEtBA,EAIf,QAASkK,IAAuBnsB,GAC5B,IAAK1D,KAAKuZ,UACN,MAAgB,OAAT7V,EAAgB1D,KAAOgV,GAElC,IAAIoN,IAAWpiB,KAAK2lB,MAAQ,EAAI3lB,KAAKsa,aAAagK,MAAMzC,KAAO,CAC/D,OAAgB,OAATne,EAAgB0e,EAAUpiB,KAAKimB,IAAIviB,EAAQ0e,EAAS,KAG/D,QAAS0N,IAAoBpsB,GACzB,MAAK1D,MAAKuZ,UAMM,MAAT7V,EAAgB1D,KAAK2lB,OAAS,EAAI3lB,KAAK2lB,IAAI3lB,KAAK2lB,MAAQ,EAAIjiB,EAAQA,EAAQ,GAL/D,MAATA,EAAgB1D,KAAOgV,IA4BtC,QAAS+a,IAAiBrsB,GACtB,GAAI+e,GAAYxd,KAAKsjB,OAAOvoB,KAAKmoB,QAAQgD,QAAQ,OAASnrB,KAAKmoB,QAAQgD,QAAQ,SAAW,OAAS,CACnG,OAAgB,OAATznB,EAAgB+e,EAAYziB,KAAKimB,IAAKviB,EAAQ+e,EAAY,KAKrE,QAASuN,MACL,MAAOhwB,MAAK+mB,QAAU,IAAM,GAwBhC,QAAS/B,IAAU/K,EAAOgW,GACtBjW,EAAeC,EAAO,EAAG,EAAG,WACxB,MAAOja,MAAKsa,aAAa0K,SAAShlB,KAAK+mB,QAAS/mB,KAAKgnB,UAAWiJ,KAaxE,QAASC,IAAe3U,EAAUjI,GAC9B,MAAOA,GAAO6c,eAqDlB,QAASC,IAAY1sB,GAGjB,MAAiD,OAAxCA,EAAQ,IAAIyT,cAAckZ,OAAO,GAI9C,QAASC,IAAgBvJ,EAAOC,EAASuJ,GACrC,MAAIxJ,GAAQ,GACDwJ,EAAU,KAAO,KAEjBA,EAAU,KAAO,KA+FhC,QAASC,IAAQ9sB,EAAO+F,GACpBA,EAAMyV,IAAe5I,EAAuB,KAAhB,KAAO5S,IAiBvC,QAAS+sB,MACL,MAAOzwB,MAAK2V,OAAS,MAAQ,GAGjC,QAAS+a,MACL,MAAO1wB,MAAK2V,OAAS,6BAA+B,GA4GxD,QAASgb,IAAoBjtB,GACzB,MAAO2gB,IAA2B,IAAR3gB,GAG9B,QAASktB,MACL,MAAOvM,IAAmBtR,MAAM,KAAM1M,WAAWwqB,YAYrD,QAASC,IAA2BnnB,EAAK2P,EAAK2J,GAC1C,GAAIvI,GAAS1a,KAAK+wB,UAAUpnB,EAC5B,OAAOqP,GAAW0B,GAAUA,EAAOna,KAAK+Y,EAAK2J,GAAOvI,EAYxD,QAASM,IAAgBrR,GACrB,GAAI0J,GAASrT,KAAKgxB,gBAAgBrnB,GAC9BsnB,EAAcjxB,KAAKgxB,gBAAgBrnB,EAAIunB,cAE3C,OAAI7d,KAAW4d,EACJ5d,GAGXrT,KAAKgxB,gBAAgBrnB,GAAOsnB,EAAY9kB,QAAQ,mBAAoB,SAAUkJ,GAC1E,MAAOA,GAAInI,MAAM,KAGdlN,KAAKgxB,gBAAgBrnB,IAKhC,QAASmR,MACL,MAAO9a,MAAKmxB,aAMhB,QAAShX,IAAS/D,GACd,MAAOpW,MAAKoxB,SAASjlB,QAAQ,KAAMiK,GAGvC,QAASib,IAAoB/Q,GACzB,MAAOA,GAmBX,QAASgR,IAAwBlb,EAAQqW,EAAenM,EAAQiR,GAC5D,GAAI7W,GAAS1a,KAAKwxB,cAAclR,EAChC,OAAQtH,GAAW0B,GACfA,EAAOtE,EAAQqW,EAAenM,EAAQiR,GACtC7W,EAAOvO,QAAQ,MAAOiK,GAG9B,QAASqb,IAAYvJ,EAAMxN,GACvB,GAAIrH,GAASrT,KAAKwxB,cAActJ,EAAO,EAAI,SAAW,OACtD,OAAOlP,GAAW3F,GAAUA,EAAOqH,GAAUrH,EAAOlH,QAAQ,MAAOuO,GAGvE,QAASgX,IAAiB1b,GACtB,GAAIjQ,GAAMU,CACV,KAAKA,IAAKuP,GACNjQ,EAAOiQ,EAAOvP,GACVuS,EAAWjT,GACX/F,KAAKyG,GAAKV,EAEV/F,KAAK,IAAMyG,GAAKV,CAKxB/F,MAAK2xB,qBAAuB,GAAIlW,QAAOzb,KAAK4xB,cAAcC,OAAS,IAAM,UAAYA,QAoDzF,QAASC,IAAYze,EAAQjK,EAAO6H,EAAO8gB,GACvC,GAAIze,GAAS2E,IACTxE,EAAML,IAAwBgF,IAAI2Z,EAAQ3oB,EAC9C,OAAOkK,GAAOrC,GAAOwC,EAAKJ,GAG9B,QAAS2e,IAAM3e,EAAQjK,EAAO6H,EAAOghB,EAAOF,GAQxC,GAPsB,gBAAX1e,KACPjK,EAAQiK,EACRA,EAAS9M,QAGb8M,EAASA,GAAU,GAEN,MAATjK,EACA,MAAO0oB,IAAWze,EAAQjK,EAAO6H,EAAO8gB,EAG5C,IAAItrB,GACAyrB,IACJ,KAAKzrB,EAAI,EAAOwrB,EAAJxrB,EAAWA,IACnByrB,EAAIzrB,GAAKqrB,GAAWze,EAAQ5M,EAAGwK,EAAO8gB,EAE1C,OAAOG,GAGX,QAASC,IAAmB9e,EAAQjK,GAChC,MAAO4oB,IAAK3e,EAAQjK,EAAO,SAAU,GAAI,SAG7C,QAASgpB,IAAwB/e,EAAQjK,GACrC,MAAO4oB,IAAK3e,EAAQjK,EAAO,cAAe,GAAI,SAGlD,QAASipB,IAAqBhf,EAAQjK,GAClC,MAAO4oB,IAAK3e,EAAQjK,EAAO,WAAY,EAAG,OAG9C,QAASkpB,IAA0Bjf,EAAQjK,GACvC,MAAO4oB,IAAK3e,EAAQjK,EAAO,gBAAiB,EAAG,OAGnD,QAASmpB,IAAwBlf,EAAQjK,GACrC,MAAO4oB,IAAK3e,EAAQjK,EAAO,cAAe,EAAG,OAqBjD,QAASopB,MACL,GAAIxa,GAAiBhY,KAAKqnB,KAa1B,OAXArnB,MAAKmnB,cAAgBsL,GAAQzyB,KAAKmnB,eAClCnnB,KAAKonB,MAAgBqL,GAAQzyB,KAAKonB,OAClCpnB,KAAK6c,QAAgB4V,GAAQzyB,KAAK6c,SAElC7E,EAAKkP,aAAgBuL,GAAQza,EAAKkP,cAClClP,EAAKiP,QAAgBwL,GAAQza,EAAKiP,SAClCjP,EAAKgP,QAAgByL,GAAQza,EAAKgP,SAClChP,EAAK+O,MAAgB0L,GAAQza,EAAK+O,OAClC/O,EAAKsF,OAAgBmV,GAAQza,EAAKsF,QAClCtF,EAAK0O,MAAgB+L,GAAQza,EAAK0O,OAE3B1mB,KAGX,QAAS0yB,IAAoCjM,EAAU/iB,EAAOqB,EAAO2lB,GACjE,GAAIhkB,GAAQqiB,GAAuBrlB,EAAOqB,EAM1C,OAJA0hB,GAASU,eAAiBuD,EAAYhkB,EAAMygB,cAC5CV,EAASW,OAAiBsD,EAAYhkB,EAAM0gB,MAC5CX,EAAS5J,SAAiB6N,EAAYhkB,EAAMmW,QAErC4J,EAASa,UAIpB,QAASqL,IAA4BjvB,EAAOqB,GACxC,MAAO2tB,IAAmC1yB,KAAM0D,EAAOqB,EAAO,GAIlE,QAAS6tB,IAAiClvB,EAAOqB,GAC7C,MAAO2tB,IAAmC1yB,KAAM0D,EAAOqB,EAAO,IAGlE,QAAS8tB,IAASzc,GACd,MAAa,GAATA,EACOnR,KAAKuK,MAAM4G,GAEXnR,KAAKoR,KAAKD,GAIzB,QAAS0c,MACL,GAII7L,GAASD,EAASD,EAAOL,EAAOqM,EAJhC7L,EAAelnB,KAAKmnB,cACpBL,EAAe9mB,KAAKonB,MACpB9J,EAAetd,KAAK6c,QACpB7E,EAAehY,KAAKqnB,KAwCxB,OAnCOH,IAAgB,GAAKJ,GAAQ,GAAKxJ,GAAU,GAC1B,GAAhB4J,GAA6B,GAARJ,GAAuB,GAAVxJ,IACvC4J,GAAuD,MAAvC2L,GAAQG,GAAa1V,GAAUwJ,GAC/CA,EAAO,EACPxJ,EAAS,GAKbtF,EAAKkP,aAAeA,EAAe,IAEnCD,EAAoB9Q,EAAS+Q,EAAe,KAC5ClP,EAAKiP,QAAeA,EAAU,GAE9BD,EAAoB7Q,EAAS8Q,EAAU,IACvCjP,EAAKgP,QAAeA,EAAU,GAE9BD,EAAoB5Q,EAAS6Q,EAAU,IACvChP,EAAK+O,MAAeA,EAAQ,GAE5BD,GAAQ3Q,EAAS4Q,EAAQ,IAGzBgM,EAAiB5c,EAAS8c,GAAanM,IACvCxJ,GAAUyV,EACVjM,GAAQ+L,GAAQG,GAAaD,IAG7BrM,EAAQvQ,EAASmH,EAAS,IAC1BA,GAAU,GAEVtF,EAAK8O,KAASA,EACd9O,EAAKsF,OAASA,EACdtF,EAAK0O,MAASA,EAEP1mB,KAGX,QAASizB,IAAcnM,GAGnB,MAAc,MAAPA,EAAc,OAGzB,QAASkM,IAAc1V,GAEnB,MAAgB,QAATA,EAAkB,KAG7B,QAAS4V,IAAIva,GACT,GAAImO,GACAxJ,EACA4J,EAAelnB,KAAKmnB,aAIxB,IAFAxO,EAAQD,EAAeC,GAET,UAAVA,GAA+B,SAAVA,EAGrB,MAFAmO,GAAS9mB,KAAKonB,MAAUF,EAAe,MACvC5J,EAAStd,KAAK6c,QAAUoW,GAAanM,GACpB,UAAVnO,EAAoB2E,EAASA,EAAS,EAI7C,QADAwJ,EAAO9mB,KAAKonB,MAAQniB,KAAKsjB,MAAMyK,GAAahzB,KAAK6c,UACzClE,GACJ,IAAK,OAAW,MAAOmO,GAAO,EAAQI,EAAe,MACrD,KAAK,MAAW,MAAOJ,GAAeI,EAAe,KACrD,KAAK,OAAW,MAAc,IAAPJ,EAAeI,EAAe,IACrD,KAAK,SAAW,MAAc,MAAPJ,EAAeI,EAAe,GACrD,KAAK,SAAW,MAAc,OAAPJ,EAAeI,EAAe,GAErD,KAAK,cAAe,MAAOjiB,MAAKuK,MAAa,MAAPsX,GAAgBI,CACtD,SAAS,KAAM,IAAIlgB,OAAM,gBAAkB2R,IAMvD,QAASwa,MACL,MACInzB,MAAKmnB,cACQ,MAAbnnB,KAAKonB,MACJpnB,KAAK6c,QAAU,GAAM,OACK,QAA3BvG,EAAMtW,KAAK6c,QAAU,IAI7B,QAASuW,IAAQC,GACb,MAAO,YACH,MAAOrzB,MAAKkzB,GAAGG,IAavB,QAASC,IAAmB3a,GAExB,MADAA,GAAQD,EAAeC,GAChB3Y,KAAK2Y,EAAQ,OAGxB,QAAS4a,IAAW/b,GAChB,MAAO,YACH,MAAOxX,MAAKqnB,MAAM7P,IAY1B,QAASqP,MACL,MAAO1Q,GAASnW,KAAK8mB,OAAS,GAalC,QAAS0M,IAAkBlT,EAAQlK,EAAQqW,EAAe8E,EAAUje,GAChE,MAAOA,GAAOmgB,aAAard,GAAU,IAAKqW,EAAenM,EAAQiR,GAGrE,QAASmC,IAAiCC,EAAgBlH,EAAenZ,GACrE,GAAImT,GAAWsC,GAAuB4K,GAAgB5c,MAClDkQ,EAAWsB,GAAM9B,EAASyM,GAAG,MAC7BlM,EAAWuB,GAAM9B,EAASyM,GAAG,MAC7BnM,EAAWwB,GAAM9B,EAASyM,GAAG,MAC7BpM,EAAWyB,GAAM9B,EAASyM,GAAG,MAC7B5V,EAAWiL,GAAM9B,EAASyM,GAAG,MAC7BxM,EAAW6B,GAAM9B,EAASyM,GAAG,MAE7BhtB,EAAI+gB,EAAU2M,GAAWjmB,IAAM,IAAKsZ,IACrB,GAAXD,IAA2B,MAC3BA,EAAU4M,GAAWpzB,IAAM,KAAMwmB,IACtB,GAAXD,IAA2B,MAC3BA,EAAU6M,GAAWlmB,IAAM,KAAMqZ,IACtB,GAAXD,IAA2B,MAC3BA,EAAU8M,GAAWplB,IAAM,KAAMsY,IACtB,GAAXxJ,IAA2B,MAC3BA,EAAUsW,GAAW1S,IAAM,KAAM5D,IACtB,GAAXoJ,IAA2B,OAAmB,KAAMA,EAK5D,OAHAxgB,GAAE,GAAKumB,EACPvmB,EAAE,IAAMytB,EAAiB,EACzBztB,EAAE,GAAKoN,EACAkgB,GAAkBzgB,MAAM,KAAM7M,GAIzC,QAAS2tB,IAAgDC,EAAWC,GAChE,MAA8BxtB,UAA1BqtB,GAAWE,IACJ,EAEGvtB,SAAVwtB,EACOH,GAAWE,IAEtBF,GAAWE,GAAaC,GACjB,GAGX,QAASrH,IAAUsH,GACf,GAAI1gB,GAAStT,KAAKsa,aACdI,EAASgZ,GAAgC1zB,MAAOg0B,EAAY1gB,EAMhE,OAJI0gB,KACAtZ,EAASpH,EAAOme,YAAYzxB,KAAM0a,IAG/BpH,EAAOkZ,WAAW9R,GAK7B,QAASuZ,MAQL,GAGIjN,GAASD,EAAOL,EAHhBO,EAAUiN,GAAgBl0B,KAAKmnB,eAAiB,IAChDL,EAAeoN,GAAgBl0B,KAAKonB,OACpC9J,EAAe4W,GAAgBl0B,KAAK6c,QAIxCmK,GAAoB7Q,EAAS8Q,EAAU,IACvCF,EAAoB5Q,EAAS6Q,EAAU,IACvCC,GAAW,GACXD,GAAW,GAGXN,EAASvQ,EAASmH,EAAS,IAC3BA,GAAU,EAIV,IAAI6W,GAAIzN,EACJxF,EAAI5D,EACJ8W,EAAItN,EACJpZ,EAAIqZ,EACJvmB,EAAIwmB,EACJrZ,EAAIsZ,EACJniB,EAAQ9E,KAAKq0B,WAEjB,OAAKvvB,IAMW,EAARA,EAAY,IAAM,IACtB,KACCqvB,EAAIA,EAAI,IAAM,KACdjT,EAAIA,EAAI,IAAM,KACdkT,EAAIA,EAAI,IAAM,KACb1mB,GAAKlN,GAAKmN,EAAK,IAAM,KACtBD,EAAIA,EAAI,IAAM,KACdlN,EAAIA,EAAI,IAAM,KACdmN,EAAIA,EAAI,IAAM,IAXR,MAl6Gf,GAAImF,IAgOA6E,GA3GA7B,GAAmBjD,EAAmBiD,oBAiDtCG,IAAmB,EAyDnByB,MAiHAe,MAgFAgC,GAAmB,mLAEnBQ,GAAwB,6CAExBJ,MAEAR,MAoFAia,GAAiB,KACjBC,GAAiB,OACjBC,GAAiB,QACjBC,GAAiB,QACjBC,GAAiB,aACjBC,GAAiB,QACjBC,GAAiB,YACjBC,GAAiB,gBACjBC,GAAiB,UACjBC,GAAiB,UACjBC,GAAiB,eAEjBC,GAAiB,MACjBC,GAAiB,WAEjB7L,GAAiB,qBACjBT,GAAmB,0BAEnBuM,GAAiB,uBAIjBC,GAAY,mHAGZ9Z,MA2BAY,MA8BA4C,GAAO,EACPF,GAAQ,EACRC,GAAO,EACPE,GAAO,EACPC,GAAS,EACTC,GAAS,EACTC,GAAc,EACdG,GAAO,EACPE,GAAU,CAQdvF,GAAe,KAAM,KAAM,GAAI,KAAM,WACjC,MAAOha,MAAKyc,QAAU,IAG1BzC,EAAe,MAAO,EAAG,EAAG,SAAU3G,GAClC,MAAOrT,MAAKsa,aAAaiD,YAAYvd,KAAMqT,KAG/C2G,EAAe,OAAQ,EAAG,EAAG,SAAU3G,GACnC,MAAOrT,MAAKsa,aAAagD,OAAOtd,KAAMqT,KAK1CgF,EAAa,QAAS,KAItB8C,EAAc,IAAQwZ,IACtBxZ,EAAc,KAAQwZ,GAAWJ,IACjCpZ,EAAc,MAAQ,SAAUI,EAAUjI,GACtC,MAAOA,GAAOwK,iBAAiBvC,KAEnCJ,EAAc,OAAQ,SAAUI,EAAUjI,GACtC,MAAOA,GAAO6K,YAAY5C,KAG9BU,GAAe,IAAK,MAAO,SAAUvY,EAAO+F,GACxCA,EAAMmV,IAAStI,EAAM5S,GAAS,IAGlCuY,GAAe,MAAO,QAAS,SAAUvY,EAAO+F,EAAOuM,EAAQiE,GAC3D,GAAIwC,GAAQzG,EAAOH,QAAQ6H,YAAYha,EAAOuW,EAAOjE,EAAOnB,QAE/C,OAAT4H,EACAhT,EAAMmV,IAASnC,EAEfpI,EAAgB2B,GAAQ/B,aAAevQ,GAM/C,IAAIoZ,IAAmB,iCACnBuY,GAAsB,wFAAwFpsB,MAAM,KAMpHqsB,GAA2B,kDAAkDrsB,MAAM,KA2EnFssB,GAA0BH,GAiB1BI,GAAqBJ,GAkGrBrV,KASJlN,GAAmB6M,6BAA8B,CAIjD,IAAIa,IAAmB,kJACnBC,GAAgB,6IAEhBG,GAAU,wBAEVF,KACC,eAAgB,wBAChB,aAAc,oBACd,eAAgB,mBAChB,aAAc,eAAe,IAC7B,WAAY,gBACZ,UAAW,cAAc,IACzB,aAAc,eACd,WAAY,UAEZ,aAAc,gBACd,YAAa,eAAe,IAC5B,UAAW,UAIZC,KACC,gBAAiB,wBACjB,gBAAiB,uBACjB,WAAY,mBACZ,QAAS,cACT,cAAe,sBACf,cAAe,qBACf,SAAU,iBACV,OAAQ,aACR,KAAM,SAGPI,GAAkB,qBAuEtBjO,GAAmBkO,wBAA0BnB,GACzC,4LAIA,SAAU5J,GACNA,EAAOtB,GAAK,GAAIrP,MAAK2Q,EAAOT,IAAMS,EAAOkN,QAAU,OAAS,OA4BpElJ,EAAe,IAAK,EAAG,EAAG,WACtB,GAAIiH,GAAIjhB,KAAKwc,MACb,OAAY,OAALyE,EAAY,GAAKA,EAAI,IAAMA,IAGtCjH,EAAe,GAAI,KAAM,GAAI,EAAG,WAC5B,MAAOha,MAAKwc,OAAS,MAGzBxC,EAAe,GAAI,OAAU,GAAU,EAAG,QAC1CA,EAAe,GAAI,QAAU,GAAU,EAAG,QAC1CA,EAAe,GAAI,SAAU,GAAG,GAAO,EAAG,QAI1C3B,EAAa,OAAQ,KAIrB8C,EAAc,IAAU+Z,IACxB/Z,EAAc,KAAUwZ,GAAWJ,IACnCpZ,EAAc,OAAU4Z,GAAWN,IACnCtZ,EAAc,QAAU6Z,GAAWN,IACnCvZ,EAAc,SAAU6Z,GAAWN,IAEnCzY,GAAe,QAAS,UAAW6C,IACnC7C,EAAc,OAAQ,SAAUvY,EAAO+F,GACnCA,EAAMqV,IAAyB,IAAjBpb,EAAM4C,OAAeuM,EAAmB4iB,kBAAkB/xB,GAAS4S,EAAM5S,KAE3FuY,EAAc,KAAM,SAAUvY,EAAO+F,GACjCA,EAAMqV,IAAQjM,EAAmB4iB,kBAAkB/xB,KAEvDuY,EAAc,IAAK,SAAUvY,EAAO+F,GAChCA,EAAMqV,IAAQvS,SAAS7I,EAAO,MAelCmP,EAAmB4iB,kBAAoB,SAAU/xB,GAC7C,MAAO4S,GAAM5S,IAAU4S,EAAM5S,GAAS,GAAK,KAAO,KAKtD,IAAIgyB,IAAaxc,EAAW,YAAY,EAgNxCrG,GAAmB2R,SAAW,YAkP9B,IAAImR,IAAe/V,GACd,mGACA,WACI,GAAIlZ,GAAQ2d,GAAmBtR,MAAM,KAAM1M,UAC3C,OAAIrG,MAAKuZ,WAAa7S,EAAM6S,UACTvZ,KAAR0G,EAAe1G,KAAO0G,EAEtBqO,MAKhB6gB,GAAehW,GACf,mGACA,WACI,GAAIlZ,GAAQ2d,GAAmBtR,MAAM,KAAM1M,UAC3C,OAAIrG,MAAKuZ,WAAa7S,EAAM6S,UACjB7S,EAAQ1G,KAAOA,KAAO0G,EAEtBqO,MAwCfkO,GAAM,WACN,MAAO5d,MAAK4d,IAAM5d,KAAK4d,OAAS,GAAK5d,MAwDzCmiB,IAAO,IAAK,KACZA,GAAO,KAAM,IAIbrM,EAAc,IAAMyN,IACpBzN,EAAc,KAAMyN,IACpB3M,GAAe,IAAK,MAAO,SAAUvY,EAAO+F,EAAOuM,GAC/CA,EAAOkN,SAAU,EACjBlN,EAAON,KAAOiS,GAAiBiB,GAAkBllB,IAQrD,IAAIqkB,IAAc,iBAoClBlV,GAAmBqD,aAAe,YA0IlC,IAAI6T,IAAc,8DAIdC,GAAW,+HA+DfjB,IAAuBlf,GAAK2c,GAASvT,SAsFrC,IAAI4iB,IAAyBpL,GAAY,EAAG,OACxCqL,GAAyBrL,GAAY,GAAI,WAuI7C5X,GAAmB0Z,cAAgB,sBAsEnC,IAAIwJ,IAAOnW,GACP,kJACA,SAAUjW,GACN,MAAYpD,UAARoD,EACO3J,KAAKsa,aAELta,KAAKsT,OAAO3J,IAuH/BqQ,GAAe,GAAI,KAAM,GAAI,EAAG,WAC5B,MAAOha,MAAK+jB,WAAa,MAG7B/J,EAAe,GAAI,KAAM,GAAI,EAAG,WAC5B,MAAOha,MAAKg2B,cAAgB,MAOhCzI,GAAuB,OAAY,YACnCA,GAAuB,QAAY,YACnCA,GAAuB,OAAS,eAChCA,GAAuB,QAAS,eAIhClV,EAAa,WAAY,MACzBA,EAAa,cAAe,MAI5B8C,EAAc,IAAU+Z,IACxB/Z,EAAc,IAAU+Z,IACxB/Z,EAAc,KAAUwZ,GAAWJ,IACnCpZ,EAAc,KAAUwZ,GAAWJ,IACnCpZ,EAAc,OAAU4Z,GAAWN,IACnCtZ,EAAc,OAAU4Z,GAAWN,IACnCtZ,EAAc,QAAU6Z,GAAWN,IACnCvZ,EAAc,QAAU6Z,GAAWN,IAEnCvY,GAAmB,OAAQ,QAAS,OAAQ,SAAU,SAAUzY,EAAOye,EAAMnM,EAAQiE,GACjFkI,EAAKlI,EAAMrN,OAAO,EAAG,IAAM0J,EAAM5S,KAGrCyY,GAAmB,KAAM,MAAO,SAAUzY,EAAOye,EAAMnM,EAAQiE,GAC3DkI,EAAKlI,GAASpH,EAAmB4iB,kBAAkB/xB,KAsDvDsW,EAAe,IAAK,EAAG,KAAM,WAI7B3B,EAAa,UAAW,KAIxB8C,EAAc,IAAKmZ,IACnBrY,EAAc,IAAK,SAAUvY,EAAO+F,GAChCA,EAAMmV,IAA8B,GAApBtI,EAAM5S,GAAS,KAWnCsW,EAAe,KAAM,KAAM,GAAI,KAAM,QACrCA,EAAe,KAAM,KAAM,GAAI,KAAM,WAIrC3B,EAAa,OAAQ,KACrBA,EAAa,UAAW,KAIxB8C,EAAc,IAAMwZ,IACpBxZ,EAAc,KAAMwZ,GAAWJ,IAC/BpZ,EAAc,IAAMwZ,IACpBxZ,EAAc,KAAMwZ,GAAWJ,IAE/BpY,GAAmB,IAAK,KAAM,IAAK,MAAO,SAAUzY,EAAOye,EAAMnM,EAAQiE,GACrEkI,EAAKlI,EAAMrN,OAAO,EAAG,IAAM0J,EAAM5S,IAWrC,IAAIuyB,KACApU,IAAM,EACNC,IAAM,EAyBV9H,GAAe,KAAM,KAAM,GAAI,KAAM,QAIrC3B,EAAa,OAAQ,KAIrB8C,EAAc,IAAMwZ,IACpBxZ,EAAc,KAAMwZ,GAAWJ,IAC/BpZ,EAAc,KAAM,SAAUI,EAAUjI,GACpC,MAAOiI,GAAWjI,EAAOse,cAAgBte,EAAOqe,uBAGpD1V,GAAe,IAAK,MAAO4C,IAC3B5C,EAAc,KAAM,SAAUvY,EAAO+F,GACjCA,EAAMoV,IAAQvI,EAAM5S,EAAM4B,MAAMqvB,IAAW,GAAI,KAKnD,IAAIuB,IAAmBhd,EAAW,QAAQ,EAI1Cc,GAAe,IAAK,EAAG,KAAM,OAE7BA,EAAe,KAAM,EAAG,EAAG,SAAU3G,GACjC,MAAOrT,MAAKsa,aAAaoV,YAAY1vB,KAAMqT,KAG/C2G,EAAe,MAAO,EAAG,EAAG,SAAU3G,GAClC,MAAOrT,MAAKsa,aAAamV,cAAczvB,KAAMqT,KAGjD2G,EAAe,OAAQ,EAAG,EAAG,SAAU3G,GACnC,MAAOrT,MAAKsa,aAAakV,SAASxvB,KAAMqT,KAG5C2G,EAAe,IAAK,EAAG,EAAG,WAC1BA,EAAe,IAAK,EAAG,EAAG,cAI1B3B,EAAa,MAAO,KACpBA,EAAa,UAAW,KACxBA,EAAa,aAAc,KAI3B8C,EAAc,IAAQwZ,IACtBxZ,EAAc,IAAQwZ,IACtBxZ,EAAc,IAAQwZ,IACtBxZ,EAAc,KAAQia,IACtBja,EAAc,MAAQia,IACtBja,EAAc,OAAQia,IAEtBjZ,GAAmB,KAAM,MAAO,QAAS,SAAUzY,EAAOye,EAAMnM,EAAQiE,GACpE,GAAImI,GAAUpM,EAAOH,QAAQ6Y,cAAchrB,EAAOuW,EAAOjE,EAAOnB,QAEjD,OAAXuN,EACAD,EAAK3T,EAAI4T,EAET/N,EAAgB2B,GAAQpB,eAAiBlR,IAIjDyY,GAAmB,IAAK,IAAK,KAAM,SAAUzY,EAAOye,EAAMnM,EAAQiE,GAC9DkI,EAAKlI,GAAS3D,EAAM5S,IAwBxB,IAAIyyB,IAAwB,2DAA2DltB,MAAM,KAMzFmtB,GAA6B,8BAA8BntB,MAAM,KAKjEotB,GAA2B,uBAAuBptB,MAAM,IA4E5D+Q,GAAe,OAAQ,OAAQ,GAAI,OAAQ,aAI3C3B,EAAa,YAAa,OAI1B8C,EAAc,MAAQ2Z,IACtB3Z,EAAc,OAAQqZ,IACtBvY,GAAe,MAAO,QAAS,SAAUvY,EAAO+F,EAAOuM,GACnDA,EAAO0N,WAAapN,EAAM5S,KAkB9BsW,EAAe,KAAM,KAAM,GAAI,EAAG,QAClCA,EAAe,KAAM,KAAM,GAAI,EAAGgW,IAElChW,EAAe,MAAO,EAAG,EAAG,WACxB,MAAO,GAAKgW,GAAQjd,MAAM/S,MAAQyZ,EAASzZ,KAAKgnB,UAAW,KAG/DhN,EAAe,QAAS,EAAG,EAAG,WAC1B,MAAO,GAAKgW,GAAQjd,MAAM/S,MAAQyZ,EAASzZ,KAAKgnB,UAAW,GACvDvN,EAASzZ,KAAKinB,UAAW,KAGjCjN,EAAe,MAAO,EAAG,EAAG,WACxB,MAAO,GAAKha,KAAK+mB,QAAUtN,EAASzZ,KAAKgnB,UAAW,KAGxDhN,EAAe,QAAS,EAAG,EAAG,WAC1B,MAAO,GAAKha,KAAK+mB,QAAUtN,EAASzZ,KAAKgnB,UAAW,GAChDvN,EAASzZ,KAAKinB,UAAW,KASjCjC,GAAS,KAAK,GACdA,GAAS,KAAK,GAId3M,EAAa,OAAQ,KAQrB8C,EAAc,IAAM+U,IACpB/U,EAAc,IAAM+U,IACpB/U,EAAc,IAAMwZ,IACpBxZ,EAAc,IAAMwZ,IACpBxZ,EAAc,KAAMwZ,GAAWJ,IAC/BpZ,EAAc,KAAMwZ,GAAWJ,IAE/BpZ,EAAc,MAAOyZ,IACrBzZ,EAAc,QAAS0Z,IACvB1Z,EAAc,MAAOyZ,IACrBzZ,EAAc,QAAS0Z,IAEvB5Y,GAAe,IAAK,MAAO8C,IAC3B9C,GAAe,IAAK,KAAM,SAAUvY,EAAO+F,EAAOuM,GAC9CA,EAAOsgB,MAAQtgB,EAAOH,QAAQsP,KAAKzhB,GACnCsS,EAAO8O,UAAYphB,IAEvBuY,GAAe,IAAK,MAAO,SAAUvY,EAAO+F,EAAOuM,GAC/CvM,EAAMsV,IAAQzI,EAAM5S,GACpB2Q,EAAgB2B,GAAQlB,SAAU,IAEtCmH,EAAc,MAAO,SAAUvY,EAAO+F,EAAOuM,GACzC,GAAIugB,GAAM7yB,EAAM4C,OAAS,CACzBmD,GAAMsV,IAAQzI,EAAM5S,EAAMkJ,OAAO,EAAG2pB,IACpC9sB,EAAMuV,IAAU1I,EAAM5S,EAAMkJ,OAAO2pB,IACnCliB,EAAgB2B,GAAQlB,SAAU,IAEtCmH,EAAc,QAAS,SAAUvY,EAAO+F,EAAOuM,GAC3C,GAAIwgB,GAAO9yB,EAAM4C,OAAS,EACtBmwB,EAAO/yB,EAAM4C,OAAS,CAC1BmD,GAAMsV,IAAQzI,EAAM5S,EAAMkJ,OAAO,EAAG4pB,IACpC/sB,EAAMuV,IAAU1I,EAAM5S,EAAMkJ,OAAO4pB,EAAM,IACzC/sB,EAAMwV,IAAU3I,EAAM5S,EAAMkJ,OAAO6pB,IACnCpiB,EAAgB2B,GAAQlB,SAAU,IAEtCmH,EAAc,MAAO,SAAUvY,EAAO+F,EAAOuM,GACzC,GAAIugB,GAAM7yB,EAAM4C,OAAS,CACzBmD,GAAMsV,IAAQzI,EAAM5S,EAAMkJ,OAAO,EAAG2pB,IACpC9sB,EAAMuV,IAAU1I,EAAM5S,EAAMkJ,OAAO2pB,MAEvCta,EAAc,QAAS,SAAUvY,EAAO+F,EAAOuM,GAC3C,GAAIwgB,GAAO9yB,EAAM4C,OAAS,EACtBmwB,EAAO/yB,EAAM4C,OAAS,CAC1BmD,GAAMsV,IAAQzI,EAAM5S,EAAMkJ,OAAO,EAAG4pB,IACpC/sB,EAAMuV,IAAU1I,EAAM5S,EAAMkJ,OAAO4pB,EAAM,IACzC/sB,EAAMwV,IAAU3I,EAAM5S,EAAMkJ,OAAO6pB,KAWvC,IAAIC,IAA6B,gBAgB7BC,GAAazd,EAAW,SAAS,EAIrCc,GAAe,KAAM,KAAM,GAAI,EAAG,UAIlC3B,EAAa,SAAU,KAIvB8C,EAAc,IAAMwZ,IACpBxZ,EAAc,KAAMwZ,GAAWJ,IAC/BtY,GAAe,IAAK,MAAO+C,GAI3B,IAAI4X,IAAe1d,EAAW,WAAW,EAIzCc,GAAe,KAAM,KAAM,GAAI,EAAG,UAIlC3B,EAAa,SAAU,KAIvB8C,EAAc,IAAMwZ,IACpBxZ,EAAc,KAAMwZ,GAAWJ,IAC/BtY,GAAe,IAAK,MAAOgD,GAI3B,IAAI4X,IAAe3d,EAAW,WAAW,EAIzCc,GAAe,IAAK,EAAG,EAAG,WACtB,SAAUha,KAAK8lB,cAAgB,OAGnC9L,EAAe,GAAI,KAAM,GAAI,EAAG,WAC5B,SAAUha,KAAK8lB,cAAgB,MAGnC9L,EAAe,GAAI,MAAO,GAAI,EAAG,eACjCA,EAAe,GAAI,OAAQ,GAAI,EAAG,WAC9B,MAA4B,IAArBha,KAAK8lB,gBAEhB9L,EAAe,GAAI,QAAS,GAAI,EAAG,WAC/B,MAA4B,KAArBha,KAAK8lB,gBAEhB9L,EAAe,GAAI,SAAU,GAAI,EAAG,WAChC,MAA4B,KAArBha,KAAK8lB,gBAEhB9L,EAAe,GAAI,UAAW,GAAI,EAAG,WACjC,MAA4B,KAArBha,KAAK8lB,gBAEhB9L,EAAe,GAAI,WAAY,GAAI,EAAG,WAClC,MAA4B,KAArBha,KAAK8lB,gBAEhB9L,EAAe,GAAI,YAAa,GAAI,EAAG,WACnC,MAA4B,KAArBha,KAAK8lB,gBAMhBzN,EAAa,cAAe,MAI5B8C,EAAc,IAAQ2Z,GAAWR,IACjCnZ,EAAc,KAAQ2Z,GAAWP,IACjCpZ,EAAc,MAAQ2Z,GAAWN,GAEjC,IAAIva,GACJ,KAAKA,GAAQ,OAAQA,GAAM3T,QAAU,EAAG2T,IAAS,IAC7CkB,EAAclB,GAAOgb,GAOzB,KAAKhb,GAAQ,IAAKA,GAAM3T,QAAU,EAAG2T,IAAS,IAC1CgC,EAAchC,GAAOuW,GAIzB,IAAIsG,IAAoB5d,EAAW,gBAAgB,EAInDc,GAAe,IAAM,EAAG,EAAG,YAC3BA,EAAe,KAAM,EAAG,EAAG,WAY3B,IAAI+c,IAAyBhhB,EAAO9C,SAEpC8jB,IAAuB9Q,IAAoB4P,GAC3CkB,GAAuB3L,SAAoBL,GAC3CgM,GAAuB5O,MAAoBA,GAC3C4O,GAAuB7O,KAAoBA,GAC3C6O,GAAuBzL,MAAoBA,GAC3CyL,GAAuB1jB,OAAoBA,GAC3C0jB,GAAuB3hB,KAAoBA,GAC3C2hB,GAAuBpK,QAAoBA,GAC3CoK,GAAuB5hB,GAAoBA,GAC3C4hB,GAAuBnK,MAAoBA,GAC3CmK,GAAuBC,IAAoBxd,EAC3Cud,GAAuB1J,UAAoBA,GAC3C0J,GAAuBxM,QAAoBA,GAC3CwM,GAAuBvM,SAAoBA,GAC3CuM,GAAuBxL,UAAoBA,GAC3CwL,GAAuBvL,OAAoBA,GAC3CuL,GAAuBrL,cAAoBA,GAC3CqL,GAAuBpL,eAAoBA,GAC3CoL,GAAuBxd,QAAoB4T,GAC3C4J,GAAuBhB,KAAoBA,GAC3CgB,GAAuBzjB,OAAoBA,GAC3CyjB,GAAuBzc,WAAoBA,GAC3Cyc,GAAuBlyB,IAAoB+wB,GAC3CmB,GAAuBnyB,IAAoB+wB,GAC3CoB,GAAuB3J,aAAoBA,GAC3C2J,GAAuB3e,IAAoBoB,EAC3Cud,GAAuB5L,QAAoBA,GAC3C4L,GAAuB5N,SAAoB2M,GAC3CiB,GAAuBvtB,QAAoBA,GAC3CutB,GAAuB9J,SAAoBA,GAC3C8J,GAAuB/uB,OAAoBA,GAC3C+uB,GAAuB7uB,YAAoBmkB,GAC3C0K,GAAuB7J,OAAoBA,GAC3C6J,GAAuB9pB,SAAoBA,GAC3C8pB,GAAuB/J,KAAoBA,GAC3C+J,GAAuBjvB,QAAoBilB,GAC3CgK,GAAuBzJ,aAAoBA,GAG3CyJ,GAAuBva,KAAakZ,GACpCqB,GAAuBrV,WAAaC,GAGpCoV,GAAuBhT,SAAc0J,GACrCsJ,GAAuBf,YAAcrI,GAGrCoJ,GAAuBnQ,QAAUmQ,GAAuBpQ,SAAWwH,GAGnE4I,GAAuBta,MAAcmB,EACrCmZ,GAAuBxa,YAAcsB,GAGrCkZ,GAAuB5U,KAAiB4U,GAAuBlQ,MAAe0H,GAC9EwI,GAAuBnJ,QAAiBmJ,GAAuBE,SAAezI,GAC9EuI,GAAuBnU,YAAiBkL,GACxCiJ,GAAuBG,eAAiBrJ,GAGxCkJ,GAAuBpZ,KAAauY,GACpCa,GAAuBpR,IAAaoR,GAAuBjQ,KAAmB6I,GAC9EoH,GAAuB3U,QAAayN,GACpCkH,GAAuBjK,WAAagD,GACpCiH,GAAuBtU,UAAasN,GAGpCgH,GAAuBhS,KAAOgS,GAAuBhQ,MAAQ4P,GAG7DI,GAAuBnR,OAASmR,GAAuB/P,QAAU4P,GAGjEG,GAAuBlR,OAASkR,GAAuB9P,QAAU4P,GAGjEE,GAAuBjR,YAAciR,GAAuB7P,aAAe4P,GAG3EC,GAAuBrP,UAAuBe,GAC9CsO,GAAuBtjB,IAAuBwV,GAC9C8N,GAAuB1O,MAAuBa,GAC9C6N,GAAuBlG,UAAuBzH,GAC9C2N,GAAuBzN,qBAAuBA,GAC9CyN,GAAuBI,MAAuB5N,GAC9CwN,GAAuBK,aAAuB5N,GAC9CuN,GAAuBrN,QAAuBA,GAC9CqN,GAAuBpN,YAAuBA,GAC9CoN,GAAuBnN,MAAuBA,GAC9CmN,GAAuB3Q,MAAuBwD,GAG9CmN,GAAuBM,SAAW5G,GAClCsG,GAAuBO,SAAW5G,GAGlCqG,GAAuBQ,MAAS3X,GAAU,kDAAmDsW,IAC7Fa,GAAuBzZ,OAASsC,GAAU,mDAAoDhC,GAC9FmZ,GAAuBrQ,MAAS9G,GAAU,iDAAkD8V,IAC5FqB,GAAuBS,KAAS5X,GAAU,4GAA6GoJ,GAEvJ,IAAIyO,IAAkBV,GAUlBW,IACAC,QAAU,gBACVC,QAAU,mBACVC,SAAW,eACXC,QAAU,oBACVC,SAAW,sBACXC,SAAW,KAQXC,IACAC,IAAO,YACPC,GAAO,SACPC,EAAO,aACPC,GAAO,eACPC,IAAO,sBACPC,KAAO,6BAkBPC,GAAqB,eAMrBC,GAAiB,KACjBC,GAAsB,UAUtBC,IACAC,OAAS,QACTC,KAAS,SACTlrB,EAAK,gBACLnN,EAAK,WACLs4B,GAAK,aACLprB,EAAK,UACLqrB,GAAK,WACLvqB,EAAK,QACLwqB,GAAK,UACL9X,EAAK,UACL+X,GAAK,YACLhY,EAAK,SACLiY,GAAK,YA8BLC,GAAmBliB,EAAOhE,SAE9BkmB,IAAiBpI,UAAkB2G,GACnCyB,GAAiB/N,SAAkB0F,GACnCqI,GAAiBnI,gBAAkBiH,GACnCkB,GAAiBne,eAAkBA,GACnCme,GAAiBhI,aAAkBqH,GACnCW,GAAiBre,YAAkBA,GACnCqe,GAAiB/H,SAAkBqH,GACnCU,GAAiBhf,QAAkBA,GACnCgf,GAAiBvH,cAAkB8G,GACnCS,GAAiBjT,SAAkBmL,GACnC8H,GAAiB3M,WAAkB6E,GACnC8H,GAAiB3H,cAAkBmH,GACnCQ,GAAiB1F,aAAkBnC,GACnC6H,GAAiB1H,WAAkBA,GACnC0H,GAAiB/gB,IAAkBsZ,GAGnCyH,GAAiB7b,OAA2BV,EAC5Cuc,GAAiBtc,QAAoBwY,GACrC8D,GAAiB5b,YAA2BR,EAC5Coc,GAAiBnc,aAAoBsY,GACrC6D,GAAiBzb,YAA2BT,EAC5Ckc,GAAiB9a,aAAoBmX,GACrC2D,GAAiBhb,YAAoBA,GACrCgb,GAAiBjb,kBAAoBqX,GACrC4D,GAAiBrb,iBAAoBA,GAGrCqb,GAAiBhX,KAAOiM,GACxB+K,GAAiB7U,MAAQ2R,GACzBkD,GAAiBC,eAAiB9K,GAClC6K,GAAiBE,eAAiBhL,GAGlC8K,GAAiB3J,SAAwBb,GACzCwK,GAAiBvK,UAAiBuH,GAClCgD,GAAiBzJ,YAAwBV,GACzCmK,GAAiBlK,aAAiBoH,GAClC8C,GAAiB1J,cAAwBX,GACzCqK,GAAiBpK,eAAiBqH,GAClC+C,GAAiBzK,cAAwBQ,GAGzCiK,GAAiBhU,KAAOiL,GACxB+I,GAAiBhJ,eAAiBuG,GAClCyC,GAAiBnU,SAAWsL,GAgD5BxY,EAAmC,MAC/BwhB,aAAc,uBACdnf,QAAU,SAAU/D,GAChB,GAAIjQ,GAAIiQ,EAAS,GACbsE,EAAuC,IAA7BpE,EAAMF,EAAS,IAAM,IAAa,KACrC,IAANjQ,EAAW,KACL,IAANA,EAAW,KACL,IAANA,EAAW,KAAO,IACvB,OAAOiQ,GAASsE,KAKxB7H,EAAmBkjB,KAAOnW,GAAU,wDAAyD9H,GAC7FjF,EAAmB0mB,SAAW3Z,GAAU,gEAAiE3H,EAEzG,IAAIwa,IAAUxtB,KAAK8R,IAoJfyiB,GAAiBpG,GAAO,MACxBiB,GAAiBjB,GAAO,KACxBqG,GAAiBrG,GAAO,KACxBsG,GAAiBtG,GAAO,KACxBuG,GAAiBvG,GAAO,KACxBwG,GAAiBxG,GAAO,KACxByG,GAAiBzG,GAAO,KACxB0G,GAAiB1G,GAAO,KAaxBlM,GAAeqM,GAAW,gBAC1BtM,GAAesM,GAAW,WAC1BvM,GAAeuM,GAAW,WAC1BxM,GAAewM,GAAW,SAC1BzM,GAAeyM,GAAW,QAC1BjW,GAAeiW,GAAW,UAC1B7M,GAAe6M,GAAW,SAM1BhL,GAAQtjB,KAAKsjB,MACbqL,IACAjmB,EAAG,GACHnN,EAAG,GACHkN,EAAG,GACHc,EAAG,GACH0S,EAAG,IAyDHgT,GAAkBjvB,KAAK8R,IAoDvBgjB,GAA4BvT,GAASvT,SAEzC8mB,IAA0BhjB,IAAiByb,GAC3CuH,GAA0B9T,IAAiB0M,GAC3CoH,GAA0B5Q,SAAiByJ,GAC3CmH,GAA0B7G,GAAiBA,GAC3C6G,GAA0BP,eAAiBA,GAC3CO,GAA0B1F,UAAiBA,GAC3C0F,GAA0BN,UAAiBA,GAC3CM,GAA0BL,QAAiBA,GAC3CK,GAA0BJ,OAAiBA,GAC3CI,GAA0BH,QAAiBA,GAC3CG,GAA0BF,SAAiBA,GAC3CE,GAA0BD,QAAiBA,GAC3CC,GAA0BjyB,QAAiBqrB,GAC3C4G,GAA0BzS,QAAiBwL,GAC3CiH,GAA0B/C,IAAiB1D,GAC3CyG,GAA0B7S,aAAiBA,GAC3C6S,GAA0B9S,QAAiBA,GAC3C8S,GAA0B/S,QAAiBA,GAC3C+S,GAA0BhT,MAAiBA,GAC3CgT,GAA0BjT,KAAiBA,GAC3CiT,GAA0BlT,MAAiBA,GAC3CkT,GAA0Bzc,OAAiBA,GAC3Cyc,GAA0BrT,MAAiBA,GAC3CqT,GAA0BrN,SAAiBA,GAC3CqN,GAA0B7xB,YAAiB+rB,GAC3C8F,GAA0B9sB,SAAiBgnB,GAC3C8F,GAA0B7M,OAAiB+G,GAC3C8F,GAA0BzmB,OAAiBA,GAC3CymB,GAA0Bzf,WAAiBA,GAG3Cyf,GAA0BC,YAAcpa,GAAU,sFAAuFqU,IACzI8F,GAA0BhE,KAAOA,GAMjC/b,EAAe,IAAK,EAAG,EAAG,QAC1BA,EAAe,IAAK,EAAG,EAAG,WAI1BmB,EAAc,IAAK+Z,IACnB/Z,EAAc,IAAKga,IACnBlZ,EAAc,IAAK,SAAUvY,EAAO+F,EAAOuM,GACvCA,EAAOtB,GAAK,GAAIrP,MAA6B,IAAxB+kB,WAAW1mB,EAAO,OAE3CuY,EAAc,IAAK,SAAUvY,EAAO+F,EAAOuM,GACvCA,EAAOtB,GAAK,GAAIrP,MAAKiR,EAAM5S,MAM/BmP,EAAmBonB,QAAU,SAE7BjnB,EAAgBqR,IAEhBxR,EAAmBhJ,GAAwB4tB,GAC3C5kB,EAAmBjO,IAAwBA,GAC3CiO,EAAmBhO,IAAwBA,GAC3CgO,EAAmBoQ,IAAwBA,GAC3CpQ,EAAmBY,IAAwBL,EAC3CP,EAAmBma,KAAwB2D,GAC3C9d,EAAmByK,OAAwB6U,GAC3Ctf,EAAmBzN,OAAwBA,EAC3CyN,EAAmBS,OAAwBwE,EAC3CjF,EAAmBqnB,QAAwBnlB,EAC3ClC,EAAmB4T,SAAwBsC,GAC3ClW,EAAmB9K,SAAwBA,EAC3C8K,EAAmB2c,SAAwB6C,GAC3Cxf,EAAmBge,UAAwBD,GAC3C/d,EAAmByH,WAAwBrC,EAC3CpF,EAAmB0U,WAAwBA,GAC3C1U,EAAmB0K,YAAwB6U,GAC3Cvf,EAAmB6c,YAAwB6C,GAC3C1f,EAAmBqF,aAAwBA,EAC3CrF,EAAmB4c,cAAwB6C,GAC3Czf,EAAmB6F,eAAwBA,EAC3C7F,EAAmBsnB,sBAAwBtG,GAC3ChhB,EAAmBI,UAAwBwkB,EAE3C,IAAI2C,IAAUvnB,CAEd,OAAOunB,QAGkB75B,KAAKX,EAASM,EAAoB,GAAGL,KAI9D,SAASA,EAAQD,GAErBC,EAAOD,QAAU,SAASC,GAQzB,MAPIA,GAAOw6B,kBACVx6B,EAAO+f,UAAY,aACnB/f,EAAOy6B,SAEPz6B,EAAO06B,YACP16B,EAAOw6B,gBAAkB,GAEnBx6B,IAMJ,SAASA,EAAQD,GAErB,QAAS46B,GAAeC,GACvB,KAAM,IAAIzzB,OAAM,uBAAyByzB,EAAM,MAEhDD,EAAevrB,KAAO,WAAa,UACnCurB,EAAeE,QAAUF,EACzB36B,EAAOD,QAAU46B,EACjBA,EAAen6B,GAAK,GAKhB,SAASR,EAAQD,IAEO,SAASgT,GAoDrC,QAASlN,GAAMiI,EAAGgtB,EAAKnT,GACrB,GAAI/gB,GAAIk0B,GAAOnT,GAAU,EACrBoT,EAAK,CAWT,KATAD,EAAMA,MACNhtB,EAAEwJ,cAAchL,QAAQ,eAAgB,SAAU0uB,GACvC,GAALD,IAEFD,EAAIl0B,EAAIm0B,KAAQE,EAAWD,MAKnB,GAALD,GACLD,EAAIl0B,EAAIm0B,KAAQ,CAGlB,OAAOD,GAIT,QAASI,GAAQJ,EAAKnT,GACpB,GAAI/gB,GAAI+gB,GAAU,EACdwT,EAAMC,CACV,OAAOD,GAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQ,IAAMu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQ,IAAMu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQ,IAAMu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQ,IAAMu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAAQu0B,EAAIL,EAAIl0B,MAsBzR,QAASy0B,GAAGr3B,EAAS82B,EAAKnT,GACxB,GAAI/gB,GAAIk0B,GAAOnT,GAAU,EACrBrhB,EAAIw0B,KAER92B,GAAUA,KAEV,IAAIs3B,GAAgC50B,SAArB1C,EAAQs3B,SAAyBt3B,EAAQs3B,SAAWC,EAM/DC,EAA0B90B,SAAlB1C,EAAQw3B,MAAsBx3B,EAAQw3B,OAAQ,GAAIh2B,OAAOsP,UAIjE2mB,EAA0B/0B,SAAlB1C,EAAQy3B,MAAsBz3B,EAAQy3B,MAAQC,EAAa,EAGnEC,EAAKH,EAAQI,GAAcH,EAAQC,GAAc,GAcrD,IAXS,EAALC,GAA+Bj1B,SAArB1C,EAAQs3B,WACpBA,EAAWA,EAAW,EAAI,QAKlB,EAALK,GAAUH,EAAQI,IAAiCl1B,SAAlB1C,EAAQy3B,QAC5CA,EAAQ,GAINA,GAAS,IACX,KAAM,IAAIt0B,OAAM,kDAGlBy0B,GAAaJ,EACbE,EAAaD,EACbF,EAAYD,EAGZE,GAAS,WAGT,IAAIK,IAA4B,KAAb,UAARL,GAA6BC,GAAS,UACjDn1B,GAAEM,KAAOi1B,IAAO,GAAK,IACrBv1B,EAAEM,KAAOi1B,IAAO,GAAK,IACrBv1B,EAAEM,KAAOi1B,IAAO,EAAI,IACpBv1B,EAAEM,KAAY,IAALi1B,CAGT,IAAIC,GAAMN,EAAQ,WAAc,IAAQ,SACxCl1B,GAAEM,KAAOk1B,IAAQ,EAAI,IACrBx1B,EAAEM,KAAa,IAANk1B,EAGTx1B,EAAEM,KAAOk1B,IAAQ,GAAK,GAAM,GAC5Bx1B,EAAEM,KAAOk1B,IAAQ,GAAK,IAGtBx1B,EAAEM,KAAO00B,IAAa,EAAI,IAG1Bh1B,EAAEM,KAAkB,IAAX00B,CAIT,KAAK,GADDS,GAAO/3B,EAAQ+3B,MAAQC,EAClBC,EAAI,EAAO,EAAJA,EAAOA,IACrB31B,EAAEM,EAAIq1B,GAAKF,EAAKE,EAGlB,OAAOnB,GAAMA,EAAMI,EAAQ50B,GAM7B,QAASP,GAAG/B,EAAS82B,EAAKnT,GAExB,GAAI/gB,GAAIk0B,GAAOnT,GAAU,CAEH,iBAAX3jB,KACT82B,EAAiB,UAAX92B,EAAsB,GAAIiD,OAAM,IAAM,KAC5CjD,EAAU,MAEZA,EAAUA,KAEV,IAAIk4B,GAAOl4B,EAAQm4B,SAAWn4B,EAAQo4B,KAAOC,IAO7C,IAJAH,EAAK,GAAe,GAAVA,EAAK,GAAY,GAC3BA,EAAK,GAAe,GAAVA,EAAK,GAAY,IAGvBpB,EACF,IAAK,GAAIC,GAAK,EAAQ,GAALA,EAASA,IACxBD,EAAIl0B,EAAIm0B,GAAMmB,EAAKnB,EAIvB,OAAOD,IAAOI,EAAQgB,GArMxB,GAAIG,GAEAC,EAA8B,mBAAXpxB,QAAyBA,OAA2B,mBAAX6H,GAAyBA,EAAS,IAElG,IAAIupB,GAAaA,EAAUC,QAAUA,OAAOC,gBAAiB,CAG3D,GAAIC,GAAS,GAAIC,YAAW,GAC5BL,GAAO,WAEL,MADAE,QAAOC,gBAAgBC,GAChBA,GAIX,IAAKJ,EAAM,CAKT,GAAIM,GAAQ,GAAI11B,OAAM,GACtBo1B,GAAO,WACL,IAAK,GAAW9vB,GAAP3F,EAAI,EAAU,GAAJA,EAAQA,IACN,KAAV,EAAJA,KAAiB2F,EAAoB,WAAhBnH,KAAK+2B,UAC/BQ,EAAM/1B,GAAK2F,MAAY,EAAJ3F,IAAa,GAAK,GAGvC,OAAO+1B,IAkBX,IAAK,GAFDvB,MACAH,KACKr0B,EAAI,EAAO,IAAJA,EAASA,IACvBw0B,EAAWx0B,IAAMA,EAAI,KAAOwG,SAAS,IAAIL,OAAO,GAChDkuB,EAAWG,EAAWx0B,IAAMA,CAqC9B,IAAIg2B,GAAaP,IAGbL,GAA2B,EAAhBY,EAAW,GAAWA,EAAW,GAAIA,EAAW,GAAIA,EAAW,GAAIA,EAAW,GAAIA,EAAW,IAGxGrB,EAAmD,OAAtCqB,EAAW,IAAM,EAAIA,EAAW,IAG7ChB,EAAa,EACbF,EAAa,EA4Gbr3B,EAAO0B,CACX1B,GAAKg3B,GAAKA,EACVh3B,EAAK0B,GAAKA,EACV1B,EAAKwB,MAAQA,EACbxB,EAAK62B,QAAUA,EAEfl7B,EAAOD,QAAUsE,IACY3D,KAAKX,EAAU,WAAa,MAAOI,WAI5D,SAASH,EAAQD,GAWrBA,EAAQ88B,gBAAkB,SAAUC,GAElC,IAAK,GAAIC,KAAeD,GAClBA,EAAc32B,eAAe42B,KAC/BD,EAAcC,GAAaC,UAAYF,EAAcC,GAAaE,KAClEH,EAAcC,GAAaE,UAYjCl9B,EAAQm9B,gBAAkB,SAAUJ,GAElC,IAAK,GAAIC,KAAeD,GACtB,GAAIA,EAAc32B,eAAe42B,IAC3BD,EAAcC,GAAaC,UAAW,CACxC,IAAK,GAAIp2B,GAAI,EAAGA,EAAIk2B,EAAcC,GAAaC,UAAUv2B,OAAQG,IAC/Dk2B,EAAcC,GAAaC,UAAUp2B,GAAG4E,WAAW3G,YAAYi4B,EAAcC,GAAaC,UAAUp2B,GAEtGk2B,GAAcC,GAAaC,eAUnCj9B,EAAQo9B,cAAgB,SAAUL,GAChC/8B,EAAQ88B,gBAAgBC,GACxB/8B,EAAQm9B,gBAAgBJ,GACxB/8B,EAAQ88B,gBAAgBC,IAa1B/8B,EAAQq9B,cAAgB,SAAUL,EAAaD,EAAeO,GAC5D,GAAI9yB,EAoBJ,OAlBIuyB,GAAc32B,eAAe42B,GAG3BD,EAAcC,GAAaC,UAAUv2B,OAAS,GAChD8D,EAAUuyB,EAAcC,GAAaC,UAAU,GAC/CF,EAAcC,GAAaC,UAAUM,UAGrC/yB,EAAUgzB,SAASC,gBAAgB,6BAA8BT,GACjEM,EAAaI,YAAYlzB,KAI3BA,EAAUgzB,SAASC,gBAAgB,6BAA8BT,GACjED,EAAcC,IAAiBE,QAAUD,cACzCK,EAAaI,YAAYlzB,IAE3BuyB,EAAcC,GAAaE,KAAKt1B,KAAK4C,GAC9BA,GAaTxK,EAAQ29B,cAAgB,SAAUX,EAAaD,EAAea,EAAcC,GAC1E,GAAIrzB,EA4BJ,OA1BIuyB,GAAc32B,eAAe42B,GAG3BD,EAAcC,GAAaC,UAAUv2B,OAAS,GAChD8D,EAAUuyB,EAAcC,GAAaC,UAAU,GAC/CF,EAAcC,GAAaC,UAAUM,UAGrC/yB,EAAUgzB,SAASM,cAAcd,GACZr2B,SAAjBk3B,EACFD,EAAaC,aAAarzB,EAASqzB,GAEnCD,EAAaF,YAAYlzB,KAK7BA,EAAUgzB,SAASM,cAAcd,GACjCD,EAAcC,IAAiBE,QAAUD,cACpBt2B,SAAjBk3B,EACFD,EAAaC,aAAarzB,EAASqzB,GAEnCD,EAAaF,YAAYlzB,IAG7BuyB,EAAcC,GAAaE,KAAKt1B,KAAK4C,GAC9BA,GAgBTxK,EAAQ+9B,UAAY,SAAUC,EAAG3c,EAAG4c,EAAelB,EAAeO,EAAcY,GAC9E,GAAIC,EAoBJ,IAnB2B,UAAvBF,EAAc/uB,OAChBivB,EAAQn+B,EAAQq9B,cAAc,SAAUN,EAAeO,GACvDa,EAAMC,eAAe,KAAM,KAAMJ,GACjCG,EAAMC,eAAe,KAAM,KAAM/c,GACjC8c,EAAMC,eAAe,KAAM,IAAK,GAAMH,EAAcI,QAEpDF,EAAQn+B,EAAQq9B,cAAc,OAAQN,EAAeO,GACrDa,EAAMC,eAAe,KAAM,IAAKJ,EAAI,GAAMC,EAAcI,MACxDF,EAAMC,eAAe,KAAM,IAAK/c,EAAI,GAAM4c,EAAcI,MACxDF,EAAMC,eAAe,KAAM,QAASH,EAAcI,MAClDF,EAAMC,eAAe,KAAM,SAAUH,EAAcI,OAGxB13B,SAAzBs3B,EAAchvB,QAChBkvB,EAAMC,eAAe,KAAM,QAASH,EAAchvB,QAEpDkvB,EAAMC,eAAe,KAAM,QAASH,EAAc90B,UAAY,cAG1D+0B,EAAU,CACZ,GAAII,GAAQt+B,EAAQq9B,cAAc,OAAQN,EAAeO,EACrDY,GAASK,UACXP,GAAQE,EAASK,SAGfL,EAASM,UACXnd,GAAQ6c,EAASM,SAEfN,EAASO,UACXH,EAAMI,YAAcR,EAASO,SAG3BP,EAAS/0B,WACXm1B,EAAMF,eAAe,KAAM,QAASF,EAAS/0B,UAAY,cAE3Dm1B,EAAMF,eAAe,KAAM,IAAKJ,GAChCM,EAAMF,eAAe,KAAM,IAAK/c,GAGlC,MAAO8c,IAUTn+B,EAAQ2+B,QAAU,SAAUX,EAAG3c,EAAGud,EAAOC,EAAQ11B,EAAW4zB,EAAeO,EAAcpuB,GACvF,GAAc,GAAV2vB,EAAa,CACF,EAATA,IACFA,GAAU,GACVxd,GAAKwd,EAEP,IAAIC,GAAO9+B,EAAQq9B,cAAc,OAAQN,EAAeO,EACxDwB,GAAKV,eAAe,KAAM,IAAKJ,EAAI,GAAMY,GACzCE,EAAKV,eAAe,KAAM,IAAK/c,GAC/Byd,EAAKV,eAAe,KAAM,QAASQ,GACnCE,EAAKV,eAAe,KAAM,SAAUS,GACpCC,EAAKV,eAAe,KAAM,QAASj1B,GAC/B+F,GACF4vB,EAAKV,eAAe,KAAM,QAASlvB,MAOrC,SAASjP,EAAQD,EAASM,GAkD9B,QAASW,GAAQmX,EAAMnU,GAerB,GAbImU,IAASlR,MAAMC,QAAQiR,KACzBnU,EAAUmU,EACVA,EAAO,MAGThY,KAAK2+B,SAAW96B,MAChB7D,KAAKqnB,SACLrnB,KAAKsG,OAAS,EACdtG,KAAK4+B,SAAW5+B,KAAK2+B,SAASE,SAAW,KACzC7+B,KAAK8+B,SAID9+B,KAAK2+B,SAAS/2B,KAEhB,IAAK,GADDqI,GAAS7I,OAAO6H,KAAKjP,KAAK2+B,SAAS/2B,MAC9BnB,EAAI,EAAGiB,EAAMuI,EAAO3J,OAAYoB,EAAJjB,EAASA,IAAK,CACjD,GAAIwK,GAAQhB,EAAOxJ,GACf1B,EAAQ/E,KAAK2+B,SAAS/2B,KAAKqJ,EAClB,SAATlM,GAA4B,WAATA,GAA+B,WAATA,EAC3C/E,KAAK8+B,MAAM7tB,GAAS,OAEpBjR,KAAK8+B,MAAM7tB,GAASlM,EAM1B,GAAI/E,KAAK2+B,SAASh3B,QAChB,KAAM,IAAIX,OAAM,sDAGlBhH,MAAK++B,gBAGD/mB,GACFhY,KAAKimB,IAAIjO,GAGXhY,KAAKg/B,WAAWn7B,GAtFlB,GAAIlD,GAAOT,EAAoB,GAC3Ba,EAAQb,EAAoB,EAiGhCW,GAAQoS,UAAU+rB,WAAa,SAAUn7B,GACnCA,GAA6B0C,SAAlB1C,EAAQo7B,QACjBp7B,EAAQo7B,SAAU,EAEhBj/B,KAAKk/B,SACPl/B,KAAKk/B,OAAOC,gBACLn/B,MAAKk/B,SAITl/B,KAAKk/B,SACRl/B,KAAKk/B,OAASn+B,EAAM4F,OAAO3G,MACzBmM,SAAU,MAAO,SAAU,aAIF,gBAAlBtI,GAAQo7B,OACjBj/B,KAAKk/B,OAAOF,WAAWn7B,EAAQo7B,UAevCp+B,EAAQoS,UAAUmsB,GAAK,SAAUt0B,EAAOvB,GACtC,GAAI81B,GAAcr/B,KAAK++B,aAAaj0B,EAC/Bu0B,KACHA,KACAr/B,KAAK++B,aAAaj0B,GAASu0B,GAG7BA,EAAY73B,MACV+B,SAAUA,KAKd1I,EAAQoS,UAAUqsB,UAAY,WAC5B,KAAM,IAAIt4B,OAAM,6DAQlBnG,EAAQoS,UAAUssB,IAAM,SAAUz0B,EAAOvB,GACvC,GAAI81B,GAAcr/B,KAAK++B,aAAaj0B,EAChCu0B,KACFr/B,KAAK++B,aAAaj0B,GAASu0B,EAAYG,OAAO,SAAUl1B,GACtD,MAAOA,GAASf,UAAYA,MAMlC1I,EAAQoS,UAAUwsB,YAAc,WAC9B,KAAM,IAAIz4B,OAAM,gEAUlBnG,EAAQoS,UAAUysB,SAAW,SAAU50B,EAAO60B,EAAQC,GACpD,GAAa,KAAT90B,EACF,KAAM,IAAI9D,OAAM,yBAGlB,IAAIq4B,KACAv0B,KAAS9K,MAAK++B,eAChBM,EAAcA,EAAYQ,OAAO7/B,KAAK++B,aAAaj0B,KAEjD,KAAO9K,MAAK++B,eACdM,EAAcA,EAAYQ,OAAO7/B,KAAK++B,aAAa,MAGrD,KAAK,GAAIt4B,GAAI,EAAGiB,EAAM23B,EAAY/4B,OAAYoB,EAAJjB,EAASA,IAAK,CACtD,GAAIq5B,GAAaT,EAAY54B,EACzBq5B,GAAWv2B,UACbu2B,EAAWv2B,SAASuB,EAAO60B,EAAQC,GAAY,QAYrD/+B,EAAQoS,UAAUgT,IAAM,SAAUjO,EAAM4nB,GACtC,GACIv/B,GADA0/B,KAEAC,EAAKhgC,IAET,IAAI8G,MAAMC,QAAQiR,GAEhB,IAAK,GAAIvR,GAAI,EAAGiB,EAAMsQ,EAAK1R,OAAYoB,EAAJjB,EAASA,IAC1CpG,EAAK2/B,EAAGC,SAASjoB,EAAKvR,IACtBs5B,EAASv4B,KAAKnH,OAEX,CAAA,KAAI2X,YAAgB5Q,SAKzB,KAAM,IAAIJ,OAAM,mBAHhB3G,GAAK2/B,EAAGC,SAASjoB,GACjB+nB,EAASv4B,KAAKnH,GAShB,MAJI0/B,GAASz5B,QACXtG,KAAK0/B,SAAS,OAASz9B,MAAO89B,GAAYH,GAGrCG,GASTl/B,EAAQoS,UAAUitB,OAAS,SAAUloB,EAAM4nB,GACzC,GAAIG,MACAI,KACAC,KACAC,KACAL,EAAKhgC,KACL6+B,EAAUmB,EAAGpB,SAEb0B,EAAc,SAAqB9uB,GACrC,GAAInR,GAAKmR,EAAKqtB,EACd,IAAImB,EAAG3Y,MAAMhnB,GAAK,CAChB,GAAIkgC,GAAU5/B,EAAKgG,UAAWq5B,EAAG3Y,MAAMhnB,GAEvCA,GAAK2/B,EAAGQ,YAAYhvB,GACpB2uB,EAAW34B,KAAKnH,GAChBggC,EAAY74B,KAAKgK,GACjB4uB,EAAQ54B,KAAK+4B,OAGblgC,GAAK2/B,EAAGC,SAASzuB,GACjBuuB,EAASv4B,KAAKnH,GAIlB,IAAIyG,MAAMC,QAAQiR,GAEhB,IAAK,GAAIvR,GAAI,EAAGiB,EAAMsQ,EAAK1R,OAAYoB,EAAJjB,EAASA,IACtCuR,EAAKvR,YAAcW,QACrBk5B,EAAYtoB,EAAKvR,IAEjBkZ,QAAQH,KAAK,wDAA0D/Y,OAGtE,CAAA,KAAIuR,YAAgB5Q,SAIzB,KAAM,IAAIJ,OAAM,mBAFhBs5B,GAAYtoB,GAQd,GAHI+nB,EAASz5B,QACXtG,KAAK0/B,SAAS,OAASz9B,MAAO89B,GAAYH,GAExCO,EAAW75B,OAAQ,CACrB,GAAIO,IAAU5E,MAAOk+B,EAAYC,QAASA,EAASpoB,KAAMqoB,EAQzDrgC,MAAK0/B,SAAS,SAAU74B,EAAO+4B,GAGjC,MAAOG,GAASF,OAAOM,IA8BzBt/B,EAAQoS,UAAU+jB,IAAM,SAAUzQ,GAChC,GAGIlmB,GAAIogC,EAAK58B,EAHTm8B,EAAKhgC,KAIL0gC,EAAY//B,EAAKsH,QAAQ5B,UAAU,GACtB,WAAbq6B,GAAsC,UAAbA,GAE3BrgC,EAAKgG,UAAU,GACfxC,EAAUwC,UAAU,IACE,SAAbq6B,GAETD,EAAMp6B,UAAU,GAChBxC,EAAUwC,UAAU,IAGpBxC,EAAUwC,UAAU,EAItB,IAAIs6B,EACJ,IAAI98B,GAAWA,EAAQ88B,WAAY,CACjC,GAAIC,IAAiB,QAAS,SAC9BD,GAA0D,IAA7CC,EAAcr5B,QAAQ1D,EAAQ88B,YAAoB,QAAU98B,EAAQ88B,eAEjFA,GAAa,OAIf,IAGInvB,GACAqvB,EACAC,EACAr6B,EACAiB,EAPAE,EAAO/D,GAAWA,EAAQ+D,MAAQ5H,KAAK2+B,SAAS/2B,KAChD43B,EAAS37B,GAAWA,EAAQ27B,OAC5Bv9B,IAQJ,IAAUsE,QAANlG,EAEFmR,EAAOwuB,EAAGe,SAAS1gC,EAAIuH,GACnB4J,GAAQguB,IAAWA,EAAOhuB,KAC5BA,EAAO,UAEJ,IAAWjL,QAAPk6B,EAET,IAAKh6B,EAAI,EAAGiB,EAAM+4B,EAAIn6B,OAAYoB,EAAJjB,EAASA,IACrC+K,EAAOwuB,EAAGe,SAASN,EAAIh6B,GAAImB,KACtB43B,GAAUA,EAAOhuB,KACpBvP,EAAMuF,KAAKgK,OAMf,KADAqvB,EAAUz5B,OAAO6H,KAAKjP,KAAKqnB,OACtB5gB,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IACzCq6B,EAASD,EAAQp6B,GACjB+K,EAAOwuB,EAAGe,SAASD,EAAQl5B,KACtB43B,GAAUA,EAAOhuB,KACpBvP,EAAMuF,KAAKgK,EAWjB,IALI3N,GAAWA,EAAQm9B,OAAez6B,QAANlG,GAC9BL,KAAKihC,MAAMh/B,EAAO4B,EAAQm9B,OAIxBn9B,GAAWA,EAAQoM,OAAQ,CAC7B,GAAIA,GAASpM,EAAQoM,MACrB,IAAU1J,QAANlG,EACFmR,EAAOxR,KAAKkhC,cAAc1vB,EAAMvB,OAEhC,KAAKxJ,EAAI,EAAGiB,EAAMzF,EAAMqE,OAAYoB,EAAJjB,EAASA,IACvCxE,EAAMwE,GAAKzG,KAAKkhC,cAAcj/B,EAAMwE,GAAIwJ,GAM9C,GAAkB,UAAd0wB,EAAwB,CAC1B,GACIQ,GADA70B,IAEJ,KAAK7F,EAAI,EAAGiB,EAAMzF,EAAMqE,OAAYoB,EAAJjB,EAASA,IACvC06B,EAAYl/B,EAAMwE,GAClB6F,EAAO60B,EAAU9gC,IAAM8gC,CAEzB,OAAO70B,GAEP,MAAU/F,SAANlG,EAEKmR,EAGAvP,GAabpB,EAAQoS,UAAUmuB,OAAS,SAAUv9B,GACnC,GAKI4C,GACAiB,EACArH,EACAmR,EACAvP,EATA+V,EAAOhY,KAAKqnB,MACZmY,EAAS37B,GAAWA,EAAQ27B,OAC5BwB,EAAQn9B,GAAWA,EAAQm9B,MAC3Bp5B,EAAO/D,GAAWA,EAAQ+D,MAAQ5H,KAAK2+B,SAAS/2B,KAChDi5B,EAAUz5B,OAAO6H,KAAK+I,GAMtByoB,IAEJ,IAAIjB,EAEF,GAAIwB,EAAO,CAGT,IADA/+B,KACKwE,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IACzCpG,EAAKwgC,EAAQp6B,GACb+K,EAAOxR,KAAK+gC,SAAS1gC,EAAIuH,GACrB43B,EAAOhuB,IACTvP,EAAMuF,KAAKgK,EAMf,KAFAxR,KAAKihC,MAAMh/B,EAAO++B,GAEbv6B,EAAI,EAAGiB,EAAMzF,EAAMqE,OAAYoB,EAAJjB,EAASA,IACvCg6B,EAAIj5B,KAAKvF,EAAMwE,GAAGzG,KAAK4+B,eAIzB,KAAKn4B,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IACzCpG,EAAKwgC,EAAQp6B,GACb+K,EAAOxR,KAAK+gC,SAAS1gC,EAAIuH,GACrB43B,EAAOhuB,IACTivB,EAAIj5B,KAAKgK,EAAKxR,KAAK4+B,eAMzB,IAAIoC,EAAO,CAGT,IADA/+B,KACKwE,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IACzCpG,EAAKwgC,EAAQp6B,GACbxE,EAAMuF,KAAKwQ,EAAK3X,GAKlB,KAFAL,KAAKihC,MAAMh/B,EAAO++B,GAEbv6B,EAAI,EAAGiB,EAAMzF,EAAMqE,OAAYoB,EAAJjB,EAASA,IACvCg6B,EAAIj5B,KAAKvF,EAAMwE,GAAGzG,KAAK4+B,eAIzB,KAAKn4B,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IACzCpG,EAAKwgC,EAAQp6B,GACb+K,EAAOwG,EAAK3X,GACZogC,EAAIj5B,KAAKgK,EAAKxR,KAAK4+B,UAKzB,OAAO6B,IAOT5/B,EAAQoS,UAAUouB,WAAa,WAC7B,MAAOrhC,OAaTa,EAAQoS,UAAU3J,QAAU,SAAUC,EAAU1F,GAC9C,GAII4C,GACAiB,EACA8J,EACAnR,EAPAm/B,EAAS37B,GAAWA,EAAQ27B,OAC5B53B,EAAO/D,GAAWA,EAAQ+D,MAAQ5H,KAAK2+B,SAAS/2B,KAChDoQ,EAAOhY,KAAKqnB,MACZwZ,EAAUz5B,OAAO6H,KAAK+I,EAM1B,IAAInU,GAAWA,EAAQm9B,MAAO,CAE5B,GAAI/+B,GAAQjC,KAAKg3B,IAAInzB,EAErB,KAAK4C,EAAI,EAAGiB,EAAMzF,EAAMqE,OAAYoB,EAAJjB,EAASA,IACvC+K,EAAOvP,EAAMwE,GACbpG,EAAKmR,EAAKxR,KAAK4+B,UACfr1B,EAASiI,EAAMnR,OAIjB,KAAKoG,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IACzCpG,EAAKwgC,EAAQp6B,GACb+K,EAAOxR,KAAK+gC,SAAS1gC,EAAIuH,KACpB43B,GAAUA,EAAOhuB,KACpBjI,EAASiI,EAAMnR,IAiBvBQ,EAAQoS,UAAU5F,IAAM,SAAU9D,EAAU1F,GAC1C,GAKI4C,GACAiB,EACArH,EACAmR,EARAguB,EAAS37B,GAAWA,EAAQ27B,OAC5B53B,EAAO/D,GAAWA,EAAQ+D,MAAQ5H,KAAK2+B,SAAS/2B,KAChD05B,KACAtpB,EAAOhY,KAAKqnB,MACZwZ,EAAUz5B,OAAO6H,KAAK+I,EAO1B,KAAKvR,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IACzCpG,EAAKwgC,EAAQp6B,GACb+K,EAAOxR,KAAK+gC,SAAS1gC,EAAIuH,KACpB43B,GAAUA,EAAOhuB,KACpB8vB,EAAY95B,KAAK+B,EAASiI,EAAMnR,GASpC,OAJIwD,IAAWA,EAAQm9B,OACrBhhC,KAAKihC,MAAMK,EAAaz9B,EAAQm9B,OAG3BM,GAUTzgC,EAAQoS,UAAUiuB,cAAgB,SAAU1vB,EAAMvB,GAChD,IAAKuB,EAEH,MAAOA,EAGT,IAGI/K,GACAwK,EAJAswB,KACAC,EAAap6B,OAAO6H,KAAKuC,GACzB9J,EAAM85B,EAAWl7B,MAIrB,IAAIQ,MAAMC,QAAQkJ,GAChB,IAAKxJ,EAAI,EAAOiB,EAAJjB,EAASA,IACnBwK,EAAQuwB,EAAW/6B,GACU,IAAzBwJ,EAAO1I,QAAQ0J,KACjBswB,EAAatwB,GAASO,EAAKP,QAI/B,KAAKxK,EAAI,EAAOiB,EAAJjB,EAASA,IACnBwK,EAAQuwB,EAAW/6B,GACfwJ,EAAOjK,eAAeiL,KACxBswB,EAAatxB,EAAOgB,IAAUO,EAAKP,GAKzC,OAAOswB,IAST1gC,EAAQoS,UAAUguB,MAAQ,SAAUh/B,EAAO++B,GACzC,GAAIrgC,EAAKuE,SAAS87B,GAAQ,CAExB,GAAIxpB,GAAOwpB,CACX/+B,GAAMyc,KAAK,SAAUxY,EAAGC,GACtB,GAAIs7B,GAAKv7B,EAAEsR,GACPkqB,EAAKv7B,EAAEqR,EACX,OAAOiqB,GAAKC,EAAK,EAASA,EAALD,EAAU,GAAK,QAEjC,CAAA,GAAqB,kBAAVT,GAOd,KAAM,IAAI95B,WAAU,uCALtBjF,GAAMyc,KAAKsiB,KAgBfngC,EAAQoS,UAAU0uB,OAAS,SAAUthC,EAAIu/B,GACvC,GACIn5B,GACAiB,EACAk6B,EAHAC,IAKJ,IAAI/6B,MAAMC,QAAQ1G,GAChB,IAAKoG,EAAI,EAAGiB,EAAMrH,EAAGiG,OAAYoB,EAAJjB,EAASA,IACpCm7B,EAAY5hC,KAAK8hC,QAAQzhC,EAAGoG;AACX,MAAbm7B,GACFC,EAAWr6B,KAAKo6B,OAIpBA,GAAY5hC,KAAK8hC,QAAQzhC,GACR,MAAbuhC,GACFC,EAAWr6B,KAAKo6B,EAQpB,OAJIC,GAAWv7B,QACbtG,KAAK0/B,SAAS,UAAYz9B,MAAO4/B,GAAcjC,GAG1CiC,GASThhC,EAAQoS,UAAU6uB,QAAU,SAAUzhC,GACpC,GAAIM,EAAKwD,SAAS9D,IAAOM,EAAKuE,SAAS7E,IACrC,GAAIL,KAAKqnB,MAAMhnB,GAGb,aAFOL,MAAKqnB,MAAMhnB,GAClBL,KAAKsG,SACEjG,MAEJ,IAAIA,YAAc+G,QAAQ,CAC/B,GAAI05B,GAASzgC,EAAGL,KAAK4+B,SACrB,IAAer4B,SAAXu6B,GAAwB9gC,KAAKqnB,MAAMyZ,GAGrC,aAFO9gC,MAAKqnB,MAAMyZ,GAClB9gC,KAAKsG,SACEw6B,EAGX,MAAO,OAQTjgC,EAAQoS,UAAU8uB,MAAQ,SAAUnC,GAClC,GAAIa,GAAMr5B,OAAO6H,KAAKjP,KAAKqnB,MAO3B,OALArnB,MAAKqnB,SACLrnB,KAAKsG,OAAS,EAEdtG,KAAK0/B,SAAS,UAAYz9B,MAAOw+B,GAAOb,GAEjCa,GAQT5/B,EAAQoS,UAAUpO,IAAM,SAAUoM,GAChC,GAIIxK,GACAiB,EALAsQ,EAAOhY,KAAKqnB,MACZwZ,EAAUz5B,OAAO6H,KAAK+I,GACtBnT,EAAM,KACNm9B,EAAW,IAIf,KAAKv7B,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IAAK,CAC9C,GAAIpG,GAAKwgC,EAAQp6B,GACb+K,EAAOwG,EAAK3X,GACZ4hC,EAAYzwB,EAAKP,EACJ,OAAbgxB,KAAuBp9B,GAAOo9B,EAAYD,KAC5Cn9B,EAAM2M,EACNwwB,EAAWC,GAIf,MAAOp9B,IAQThE,EAAQoS,UAAUrO,IAAM,SAAUqM,GAChC,GAIIxK,GACAiB,EALAsQ,EAAOhY,KAAKqnB,MACZwZ,EAAUz5B,OAAO6H,KAAK+I,GACtBpT,EAAM,KACNs9B,EAAW,IAIf,KAAKz7B,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IAAK,CAC9C,GAAIpG,GAAKwgC,EAAQp6B,GACb+K,EAAOwG,EAAK3X,GACZ4hC,EAAYzwB,EAAKP,EACJ,OAAbgxB,KAAuBr9B,GAAmBs9B,EAAZD,KAChCr9B,EAAM4M,EACN0wB,EAAWD,GAIf,MAAOr9B,IAUT/D,EAAQoS,UAAUkvB,SAAW,SAAUlxB,GACrC,GAKIxK,GAAGgK,EAAG/I,EALNsQ,EAAOhY,KAAKqnB,MACZwZ,EAAUz5B,OAAO6H,KAAK+I,GACtBD,KACAqqB,EAAYpiC,KAAK2+B,SAAS/2B,MAAQ5H,KAAK2+B,SAAS/2B,KAAKqJ,IAAU,KAC/DghB,EAAQ,CAGZ,KAAKxrB,EAAI,EAAGiB,EAAMm5B,EAAQv6B,OAAYoB,EAAJjB,EAASA,IAAK,CAC9C,GAAIpG,GAAKwgC,EAAQp6B,GACb+K,EAAOwG,EAAK3X,GACZ0E,EAAQyM,EAAKP,GACboxB,GAAS,CACb,KAAK5xB,EAAI,EAAOwhB,EAAJxhB,EAAWA,IACrB,GAAIsH,EAAOtH,IAAM1L,EAAO,CACtBs9B,GAAS,CACT,OAGCA,GAAoB97B,SAAVxB,IACbgT,EAAOka,GAASltB,EAChBktB,KAIJ,GAAImQ,EACF,IAAK37B,EAAI,EAAGiB,EAAMqQ,EAAOzR,OAAYoB,EAAJjB,EAASA,IACxCsR,EAAOtR,GAAK9F,EAAKgH,QAAQoQ,EAAOtR,GAAI27B,EAIxC,OAAOrqB,IASTlX,EAAQoS,UAAUgtB,SAAW,SAAUzuB,GACrC,GAAInR,GAAKmR,EAAKxR,KAAK4+B,SAEnB,IAAUr4B,QAANlG,GAEF,GAAIL,KAAKqnB,MAAMhnB,GAEb,KAAM,IAAI2G,OAAM,iCAAmC3G,EAAK,uBAI1DA,GAAKM,EAAKgF,aACV6L,EAAKxR,KAAK4+B,UAAYv+B,CAGxB,IAEIoG,GACAiB,EAHA8G,KACAyB,EAAS7I,OAAO6H,KAAKuC,EAGzB,KAAK/K,EAAI,EAAGiB,EAAMuI,EAAO3J,OAAYoB,EAAJjB,EAASA,IAAK,CAC7C,GAAIwK,GAAQhB,EAAOxJ,GACf27B,EAAYpiC,KAAK8+B,MAAM7tB,EAC3BzC,GAAEyC,GAAStQ,EAAKgH,QAAQ6J,EAAKP,GAAQmxB,GAKvC,MAHApiC,MAAKqnB,MAAMhnB,GAAMmO,EACjBxO,KAAKsG,SAEEjG,GAUTQ,EAAQoS,UAAU8tB,SAAW,SAAU1gC,EAAIiiC,GACzC,GAAIrxB,GAAOlM,EAAO0B,EAAGiB,EAGjB66B,EAAMviC,KAAKqnB,MAAMhnB,EACrB,KAAKkiC,EACH,MAAO,KAIT,IAAIC,MACAvyB,EAAS7I,OAAO6H,KAAKszB,EAEzB,IAAID,EACF,IAAK77B,EAAI,EAAGiB,EAAMuI,EAAO3J,OAAYoB,EAAJjB,EAASA,IACxCwK,EAAQhB,EAAOxJ,GACf1B,EAAQw9B,EAAItxB,GACZuxB,EAAUvxB,GAAStQ,EAAKgH,QAAQ5C,EAAOu9B,EAAMrxB,QAI/C,KAAKxK,EAAI,EAAGiB,EAAMuI,EAAO3J,OAAYoB,EAAJjB,EAASA,IACxCwK,EAAQhB,EAAOxJ,GACf1B,EAAQw9B,EAAItxB,GACZuxB,EAAUvxB,GAASlM,CAGvB,OAAOy9B,IAWT3hC,EAAQoS,UAAUutB,YAAc,SAAUhvB,GACxC,GAAInR,GAAKmR,EAAKxR,KAAK4+B,SACnB,IAAUr4B,QAANlG,EACF,KAAM,IAAI2G,OAAM,6CAA+Cy7B,KAAKC,UAAUlxB,GAAQ,IAExF,IAAIhD,GAAIxO,KAAKqnB,MAAMhnB,EACnB,KAAKmO,EAEH,KAAM,IAAIxH,OAAM,uCAAyC3G,EAAK,SAKhE,KAAK,GADD4P,GAAS7I,OAAO6H,KAAKuC,GAChB/K,EAAI,EAAGiB,EAAMuI,EAAO3J,OAAYoB,EAAJjB,EAASA,IAAK,CACjD,GAAIwK,GAAQhB,EAAOxJ,GACf27B,EAAYpiC,KAAK8+B,MAAM7tB,EAC3BzC,GAAEyC,GAAStQ,EAAKgH,QAAQ6J,EAAKP,GAAQmxB,GAGvC,MAAO/hC,IAGTR,EAAOD,QAAUiB,GAIb,SAAShB,EAAQD,GAiBrB,QAASmB,GAAM8C,GAEb7D,KAAK2iC,MAAQ,KACb3iC,KAAK6E,IAAM+9B,EAAAA,EAGX5iC,KAAKk/B,UACLl/B,KAAK6iC,SAAW,KAChB7iC,KAAK8iC,UAAY,KAEjB9iC,KAAKg/B,WAAWn7B,GAgBlB9C,EAAMkS,UAAU+rB,WAAa,SAAUn7B,GACjCA,GAAoC,mBAAlBA,GAAQ8+B,QAC5B3iC,KAAK2iC,MAAQ9+B,EAAQ8+B,OAEnB9+B,GAAkC,mBAAhBA,GAAQgB,MAC5B7E,KAAK6E,IAAMhB,EAAQgB,KAGrB7E,KAAK+iC,kBAsBPhiC,EAAM4F,OAAS,SAAUvC,EAAQP,GAC/B,GAAIo7B,GAAQ,GAAIl+B,GAAM8C,EAEtB,IAAqB0C,SAAjBnC,EAAO4+B,MACT,KAAM,IAAIh8B,OAAM,6CAElB5C,GAAO4+B,MAAQ,WACb/D,EAAM+D,QAGR,IAAIC,KACFzrB,KAAM,QACN0rB,SAAU38B,QAGZ,IAAI1C,GAAWA,EAAQsI,QACrB,IAAK,GAAI1F,GAAI,EAAGA,EAAI5C,EAAQsI,QAAQ7F,OAAQG,IAAK,CAC/C,GAAI+Q,GAAO3T,EAAQsI,QAAQ1F,EAC3Bw8B,GAAQz7B,MACNgQ,KAAMA,EACN0rB,SAAU9+B,EAAOoT,KAEnBynB,EAAM9yB,QAAQ/H,EAAQoT,GAS1B,MALAynB,GAAM6D,WACJ1+B,OAAQA,EACR6+B,QAASA,GAGJhE,GAOTl+B,EAAMkS,UAAUksB,QAAU,WAGxB,GAFAn/B,KAAKgjC,QAEDhjC,KAAK8iC,UAAW,CAGlB,IAAK,GAFD1+B,GAASpE,KAAK8iC,UAAU1+B,OACxB6+B,EAAUjjC,KAAK8iC,UAAUG,QACpBx8B,EAAI,EAAGA,EAAIw8B,EAAQ38B,OAAQG,IAAK,CACvC,GAAI08B,GAASF,EAAQx8B,EACjB08B,GAAOD,SACT9+B,EAAO++B,EAAO3rB,MAAQ2rB,EAAOD,eAEtB9+B,GAAO++B,EAAO3rB,MAGzBxX,KAAK8iC,UAAY,OASrB/hC,EAAMkS,UAAU9G,QAAU,SAAU/H,EAAQ++B,GAC1C,GAAInD,GAAKhgC,KACLkjC,EAAW9+B,EAAO++B,EACtB,KAAKD,EACH,KAAM,IAAIl8B,OAAM,UAAYm8B,EAAS,aAGvC/+B,GAAO++B,GAAU,WAGf,IAAK,GADD5c,MACK9f,EAAI,EAAGA,EAAIJ,UAAUC,OAAQG,IACpC8f,EAAK9f,GAAKJ,UAAUI,EAItBu5B,GAAGf,OACD1Y,KAAMA,EACN1c,GAAIq5B,EACJE,QAASpjC,SASfe,EAAMkS,UAAUgsB,MAAQ,SAAUoE,GACX,kBAAVA,GACTrjC,KAAKk/B,OAAO13B,MAAOqC,GAAIw5B,IAEvBrjC,KAAKk/B,OAAO13B,KAAK67B,GAGnBrjC,KAAK+iC,kBAOPhiC,EAAMkS,UAAU8vB,eAAiB,WAQ/B,GANI/iC,KAAKk/B,OAAO54B,OAAStG,KAAK6E,KAC5B7E,KAAKgjC,QAIPM,aAAatjC,KAAK6iC,UACd7iC,KAAKi/B,MAAM34B,OAAS,GAA2B,gBAAftG,MAAK2iC,MAAoB,CAC3D,GAAI3C,GAAKhgC,IACTA,MAAK6iC,SAAW34B,WAAW,WACzB81B,EAAGgD,SACFhjC,KAAK2iC,SAOZ5hC,EAAMkS,UAAU+vB,MAAQ,WACtB,KAAOhjC,KAAKk/B,OAAO54B,OAAS,GAAG,CAC7B,GAAI+8B,GAAQrjC,KAAKk/B,OAAO/B,OACxBkG,GAAMx5B,GAAGkJ,MAAMswB,EAAMD,SAAWC,EAAMx5B,GAAIw5B,EAAM9c,YAIpD1mB,EAAOD,QAAUmB,GAIb,SAASlB,EAAQD,EAASM,GAiB9B,QAASY,GAASkX,EAAMnU,GACtB7D,KAAKqnB,MAAQ,KACbrnB,KAAKujC,QACLvjC,KAAKsG,OAAS,EACdtG,KAAK2+B,SAAW96B,MAChB7D,KAAK4+B,SAAW,KAChB5+B,KAAK++B,eAEL,IAAIiB,GAAKhgC,IACTA,MAAKsK,SAAW,WACd01B,EAAGwD,SAASzwB,MAAMitB,EAAI35B,YAGxBrG,KAAKyjC,QAAQzrB,GA1Bf,GAAIrX,GAAOT,EAAoB,GAC3BW,EAAUX,EAAoB,EAmClCY,GAASmS,UAAUwwB,QAAU,SAAUzrB,GACrC,GAAIyoB,GAAKpgC,EAAIoG,EAAGiB,CAiBhB,IAfI1H,KAAKqnB,QAEHrnB,KAAKqnB,MAAMkY,KACbv/B,KAAKqnB,MAAMkY,IAAI,IAAKv/B,KAAKsK,UAI3Bm2B,EAAMr5B,OAAO6H,KAAKjP,KAAKujC,MACvBvjC,KAAKujC,QACLvjC,KAAKsG,OAAS,EACdtG,KAAK0/B,SAAS,UAAYz9B,MAAOw+B,KAGnCzgC,KAAKqnB,MAAQrP,EAEThY,KAAKqnB,MAAO,CAMd,IAJArnB,KAAK4+B,SAAW5+B,KAAK2+B,SAASE,SAAW7+B,KAAKqnB,OAASrnB,KAAKqnB,MAAMxjB,SAAW7D,KAAKqnB,MAAMxjB,QAAQg7B,SAAW,KAG3G4B,EAAMzgC,KAAKqnB,MAAM+Z,QAAS5B,OAAQx/B,KAAK2+B,UAAY3+B,KAAK2+B,SAASa,SAC5D/4B,EAAI,EAAGiB,EAAM+4B,EAAIn6B,OAAYoB,EAAJjB,EAASA,IACrCpG,EAAKogC,EAAIh6B,GACTzG,KAAKujC,KAAKljC,IAAM,CAElBL,MAAKsG,OAASm6B,EAAIn6B,OAClBtG,KAAK0/B,SAAS,OAASz9B,MAAOw+B,IAG1BzgC,KAAKqnB,MAAM+X,IACbp/B,KAAKqnB,MAAM+X,GAAG,IAAKp/B,KAAKsK,YAS9BxJ,EAASmS,UAAUywB,QAAU,WAC3B,GAAIrjC,GAAIoG,EAAGiB,EACP+4B,EAAMzgC,KAAKqnB,MAAM+Z,QAAS5B,OAAQx/B,KAAK2+B,UAAY3+B,KAAK2+B,SAASa,SACjEmE,EAASv8B,OAAO6H,KAAKjP,KAAKujC,MAC1BK,KACAC,KACAC,IAGJ,KAAKr9B,EAAI,EAAGiB,EAAM+4B,EAAIn6B,OAAYoB,EAAJjB,EAASA,IACrCpG,EAAKogC,EAAIh6B,GACTm9B,EAAOvjC,IAAM,EACRL,KAAKujC,KAAKljC,KACbwjC,EAAMr8B,KAAKnH,GACXL,KAAKujC,KAAKljC,IAAM,EAKpB,KAAKoG,EAAI,EAAGiB,EAAMi8B,EAAOr9B,OAAYoB,EAAJjB,EAASA,IACxCpG,EAAKsjC,EAAOl9B,GACPm9B,EAAOvjC,KACVyjC,EAAQt8B,KAAKnH,SACNL,MAAKujC,KAAKljC,GAIrBL,MAAKsG,QAAUu9B,EAAMv9B,OAASw9B,EAAQx9B,OAGlCu9B,EAAMv9B,QACRtG,KAAK0/B,SAAS,OAASz9B,MAAO4hC,IAE5BC,EAAQx9B,QACVtG,KAAK0/B,SAAS,UAAYz9B,MAAO6hC,KAsCrChjC,EAASmS,UAAU+jB,IAAM,SAAUzQ,GACjC,GAGIka,GAAK58B,EAASmU,EAHdgoB,EAAKhgC,KAIL0gC,EAAY//B,EAAKsH,QAAQ5B,UAAU,GACtB,WAAbq6B,GAAsC,UAAbA,GAAsC,SAAbA,GAEpDD,EAAMp6B,UAAU,GAChBxC,EAAUwC,UAAU,GACpB2R,EAAO3R,UAAU,KAGjBxC,EAAUwC,UAAU,GACpB2R,EAAO3R,UAAU,GAInB,IAAI09B,GAAcpjC,EAAKgG,UAAW3G,KAAK2+B,SAAU96B,EAG7C7D,MAAK2+B,SAASa,QAAU37B,GAAWA,EAAQ27B,SAC7CuE,EAAYvE,OAAS,SAAUhuB,GAC7B,MAAOwuB,GAAGrB,SAASa,OAAOhuB,IAAS3N,EAAQ27B,OAAOhuB,IAKtD,IAAIwyB,KAOJ,OANWz9B,SAAPk6B,GACFuD,EAAax8B,KAAKi5B,GAEpBuD,EAAax8B,KAAKu8B,GAClBC,EAAax8B,KAAKwQ,GAEXhY,KAAKqnB,OAASrnB,KAAKqnB,MAAM2P,IAAIjkB,MAAM/S,KAAKqnB,MAAO2c,IAWxDljC,EAASmS,UAAUmuB,OAAS,SAAUv9B,GACpC,GAAI48B,EAEJ,IAAIzgC,KAAKqnB,MAAO,CACd,GACImY,GADAyE,EAAgBjkC,KAAK2+B,SAASa,MAK9BA,GAFA37B,GAAWA,EAAQ27B,OACjByE,EACO,SAAUzyB,GACjB,MAAOyyB,GAAczyB,IAAS3N,EAAQ27B,OAAOhuB,IAGtC3N,EAAQ27B,OAGVyE,EAGXxD,EAAMzgC,KAAKqnB,MAAM+Z,QACf5B,OAAQA,EACRwB,MAAOn9B,GAAWA,EAAQm9B,YAG5BP,KAGF,OAAOA,IAcT3/B,EAASmS,UAAU5F,IAAM,SAAU9D,EAAU1F,GAC3C,GAAIy9B,KACJ,IAAIthC,KAAKqnB,MAAO,CACd,GACImY,GADAyE,EAAgBjkC,KAAK2+B,SAASa,MAK9BA,GAFA37B,GAAWA,EAAQ27B,OACjByE,EACO,SAAUzyB,GACjB,MAAOyyB,GAAczyB,IAAS3N,EAAQ27B,OAAOhuB,IAGtC3N,EAAQ27B,OAGVyE,EAGX3C,EAActhC,KAAKqnB,MAAMha,IAAI9D,GAC3Bi2B,OAAQA,EACRwB,MAAOn9B,GAAWA,EAAQm9B,YAG5BM,KAGF,OAAOA,IAQTxgC,EAASmS,UAAUouB,WAAa,WAE9B,IADA,GAAI6C,GAAUlkC,KACPkkC,YAAmBpjC,IACxBojC,EAAUA,EAAQ7c,KAEpB,OAAO6c,IAAW,MAYpBpjC,EAASmS,UAAUuwB,SAAW,SAAU14B,EAAO60B,EAAQC,GACrD,GAAIn5B,GAAGiB,EAAKrH,EAAImR,EACZivB,EAAMd,GAAUA,EAAO19B,MACvB+V,EAAOhY,KAAKqnB,MACZgZ,KACAwD,KACAM,KACAL,IAEJ,IAAIrD,GAAOzoB,EAAM,CACf,OAAQlN,GACN,IAAK,MAEH,IAAKrE,EAAI,EAAGiB,EAAM+4B,EAAIn6B,OAAYoB,EAAJjB,EAASA,IACrCpG,EAAKogC,EAAIh6B,GACT+K,EAAOxR,KAAKg3B,IAAI32B,GACZmR,IACFxR,KAAKujC,KAAKljC,IAAM,EAChBwjC,EAAMr8B,KAAKnH,GAIf,MAEF,KAAK,SAGH,IAAKoG,EAAI,EAAGiB,EAAM+4B,EAAIn6B,OAAYoB,EAAJjB,EAASA,IACrCpG,EAAKogC,EAAIh6B,GACT+K,EAAOxR,KAAKg3B,IAAI32B,GAEZmR,EACExR,KAAKujC,KAAKljC,IACZ8jC,EAAQ38B,KAAKnH,GACbggC,EAAY74B,KAAKm4B,EAAO3nB,KAAKvR,MAE7BzG,KAAKujC,KAAKljC,IAAM,EAChBwjC,EAAMr8B,KAAKnH,IAGTL,KAAKujC,KAAKljC,WACLL,MAAKujC,KAAKljC,GACjByjC,EAAQt8B,KAAKnH,GAOnB,MAEF,KAAK,SAEH,IAAKoG,EAAI,EAAGiB,EAAM+4B,EAAIn6B,OAAYoB,EAAJjB,EAASA,IACrCpG,EAAKogC,EAAIh6B,GACLzG,KAAKujC,KAAKljC,WACLL,MAAKujC,KAAKljC,GACjByjC,EAAQt8B,KAAKnH,IAOrBL,KAAKsG,QAAUu9B,EAAMv9B,OAASw9B,EAAQx9B,OAElCu9B,EAAMv9B,QACRtG,KAAK0/B,SAAS,OAASz9B,MAAO4hC,GAASjE,GAErCuE,EAAQ79B,QACVtG,KAAK0/B,SAAS,UAAYz9B,MAAOkiC,EAASnsB,KAAMqoB,GAAeT,GAE7DkE,EAAQx9B,QACVtG,KAAK0/B,SAAS,UAAYz9B,MAAO6hC,GAAWlE,KAMlD9+B,EAASmS,UAAUmsB,GAAKv+B,EAAQoS,UAAUmsB,GAC1Ct+B,EAASmS,UAAUssB,IAAM1+B,EAAQoS,UAAUssB,IAC3Cz+B,EAASmS,UAAUysB,SAAW7+B,EAAQoS,UAAUysB,SAGhD5+B,EAASmS,UAAUqsB,UAAYx+B,EAASmS,UAAUmsB,GAClDt+B,EAASmS,UAAUwsB,YAAc3+B,EAASmS,UAAUssB,IAEpD1/B,EAAOD,QAAUkB,GAIb,SAASjB,EAAQD,EAASM,GA0B9B,QAASc,GAAQojC,EAAWpsB,EAAMnU,GAChC,KAAM7D,eAAgBgB,IACpB,KAAM,IAAIqjC,aAAY,mDAIxBrkC,MAAKskC,iBAAmBF,EACxBpkC,KAAKw+B,MAAQ,QACbx+B,KAAKy+B,OAAS,QACdz+B,KAAKukC,OAAS,GACdvkC,KAAKwkC,eAAiB,MACtBxkC,KAAKykC,eAAiB,MAEtBzkC,KAAK0kC,OAAS,IACd1kC,KAAK2kC,OAAS,IACd3kC,KAAK4kC,OAAS,GAEd,IAAIC,GAAc,SAAqBj3B,GACrC,MAAOA,GAET5N,MAAK8kC,YAAcD,EACnB7kC,KAAK+kC,YAAcF,EACnB7kC,KAAKglC,YAAcH,EAEnB7kC,KAAKilC,YAAc,OACnBjlC,KAAKklC,YAAc,QAEnBllC,KAAK8O,MAAQ9N,EAAQmkC,MAAMC,IAC3BplC,KAAKqlC,iBAAkB,EACvBrlC,KAAKslC,UAAW,EAChBtlC,KAAKulC,iBAAkB,EACvBvlC,KAAKwlC,YAAa,EAClBxlC,KAAKylC,gBAAiB,EACtBzlC,KAAK0lC,aAAc,EACnB1lC,KAAK2lC,cAAgB,GAErB3lC,KAAK4lC,kBAAoB,IACzB5lC,KAAK6lC,kBAAmB,EAExB7lC,KAAK8lC,OAAS,GAAI5kC,GAClBlB,KAAK8lC,OAAOC,eAAe,EAAK,IAChC/lC,KAAK8lC,OAAOE,aAAa,KACzBhmC,KAAKimC,IAAM,GAAI5kC,GAAQ,EAAG,EAAG,IAE7BrB,KAAKkmC,UAAY,KACjBlmC,KAAKmmC,WAAa,KAGlBnmC,KAAKomC,KAAO7/B,OACZvG,KAAKqmC,KAAO9/B,OACZvG,KAAKsmC,KAAO//B,OACZvG,KAAKumC,SAAWhgC,OAChBvG,KAAKwmC,UAAYjgC,OAEjBvG,KAAKymC,KAAO,EACZzmC,KAAK0mC,MAAQngC,OACbvG,KAAK2mC,KAAO,EACZ3mC,KAAK4mC,KAAO,EACZ5mC,KAAK6mC,MAAQtgC,OACbvG,KAAK8mC,KAAO,EACZ9mC,KAAK+mC,KAAO,EACZ/mC,KAAKgnC,MAAQzgC,OACbvG,KAAKinC,KAAO,EACZjnC,KAAKknC,SAAW,EAChBlnC,KAAKmnC,SAAW,EAChBnnC,KAAKonC,UAAY,EACjBpnC,KAAKqnC,UAAY,EAIjBrnC,KAAKsnC,UAAY,UACjBtnC,KAAKunC,UAAY,UACjBvnC,KAAKwnC,WACHC,KAAM,UACNC,OAAQ,UACRC,YAAa,GAGf3nC,KAAK4nC,aAAe,IAGpB5nC,KAAKoQ,SAGLpQ,KAAKg/B,WAAWn7B,GAGZmU,GACFhY,KAAKyjC,QAAQzrB,GAukEjB,QAAS6vB,GAAU/8B,GACjB,MAAI,WAAaA,GAAcA,EAAMg9B,QAC9Bh9B,EAAMi9B,cAAc,IAAMj9B,EAAMi9B,cAAc,GAAGD,SAAW,EAQrE,QAASE,GAAUl9B,GACjB,MAAI,WAAaA,GAAcA,EAAMm9B,QAC9Bn9B,EAAMi9B,cAAc,IAAMj9B,EAAMi9B,cAAc,GAAGE,SAAW,EAjsErE,GAAIC,GAAUhoC,EAAoB,IAC9BW,EAAUX,EAAoB,GAC9BY,EAAWZ,EAAoB,IAC/BS,EAAOT,EAAoB,GAC3BmB,EAAUnB,EAAoB,IAC9BkB,EAAUlB,EAAoB,IAC9BgB,EAAShB,EAAoB,IAC7BiB,EAASjB,EAAoB,IAC7BoB,EAASpB,EAAoB,IAC7BqB,EAAarB,EAAoB,GA0GrCgoC,GAAQlnC,EAAQiS,WAKhBjS,EAAQiS,UAAUk1B,UAAY,WAC5BnoC,KAAKgF,MAAQ,GAAI3D,GAAQ,GAAKrB,KAAK2mC,KAAO3mC,KAAKymC,MAAO,GAAKzmC,KAAK8mC,KAAO9mC,KAAK4mC,MAAO,GAAK5mC,KAAKinC,KAAOjnC,KAAK+mC,OAGrG/mC,KAAKulC,kBACHvlC,KAAKgF,MAAM44B,EAAI59B,KAAKgF,MAAMic,EAE5BjhB,KAAKgF,MAAMic,EAAIjhB,KAAKgF,MAAM44B,EAG1B59B,KAAKgF,MAAM44B,EAAI59B,KAAKgF,MAAMic,GAK9BjhB,KAAKgF,MAAMojC,GAAKpoC,KAAK2lC,cAIrB3lC,KAAKgF,MAAMD,MAAQ,GAAK/E,KAAKmnC,SAAWnnC,KAAKknC,SAG7C,IAAImB,IAAWroC,KAAK2mC,KAAO3mC,KAAKymC,MAAQ,EAAIzmC,KAAKgF,MAAM44B,EACnD0K,GAAWtoC,KAAK8mC,KAAO9mC,KAAK4mC,MAAQ,EAAI5mC,KAAKgF,MAAMic,EACnDsnB,GAAWvoC,KAAKinC,KAAOjnC,KAAK+mC,MAAQ,EAAI/mC,KAAKgF,MAAMojC,CACvDpoC,MAAK8lC,OAAO0C,eAAeH,EAASC,EAASC,IAS/CvnC,EAAQiS,UAAUw1B,eAAiB,SAAUC,GAC3C,GAAIC,GAAc3oC,KAAK4oC,2BAA2BF,EAClD,OAAO1oC,MAAK6oC,4BAA4BF,IAW1C3nC,EAAQiS,UAAU21B,2BAA6B,SAAUF,GACvD,GAAII,GAAKJ,EAAQ9K,EAAI59B,KAAKgF,MAAM44B,EAC5BmL,EAAKL,EAAQznB,EAAIjhB,KAAKgF,MAAMic,EAC5B+nB,EAAKN,EAAQN,EAAIpoC,KAAKgF,MAAMojC,EAC5Ba,EAAKjpC,KAAK8lC,OAAOoD,oBAAoBtL,EACrCuL,EAAKnpC,KAAK8lC,OAAOoD,oBAAoBjoB,EACrCmoB,EAAKppC,KAAK8lC,OAAOoD,oBAAoBd,EAGzCiB,EAAQpkC,KAAKqkC,IAAItpC,KAAK8lC,OAAOyD,oBAAoB3L,GAC7C4L,EAAQvkC,KAAKwkC,IAAIzpC,KAAK8lC,OAAOyD,oBAAoB3L,GACjD8L,EAAQzkC,KAAKqkC,IAAItpC,KAAK8lC,OAAOyD,oBAAoBtoB,GACjD0oB,EAAQ1kC,KAAKwkC,IAAIzpC,KAAK8lC,OAAOyD,oBAAoBtoB,GACjD2oB,EAAQ3kC,KAAKqkC,IAAItpC,KAAK8lC,OAAOyD,oBAAoBnB,GACjDyB,EAAQ5kC,KAAKwkC,IAAIzpC,KAAK8lC,OAAOyD,oBAAoBnB,GAGrD0B,EAAKH,GAASC,GAASb,EAAKI,GAAMU,GAASf,EAAKG,IAAOS,GAASV,EAAKI,GACjEW,EAAKV,GAASM,GAASX,EAAKI,GAAMM,GAASE,GAASb,EAAKI,GAAMU,GAASf,EAAKG,KAAQO,GAASK,GAASd,EAAKI,GAAMS,GAASd,EAAKG,IAChIe,EAAKR,GAASG,GAASX,EAAKI,GAAMM,GAASE,GAASb,EAAKI,GAAMU,GAASf,EAAKG,KAAQI,GAASQ,GAASd,EAAKI,GAAMS,GAASd,EAAKG,GAEpI,OAAO,IAAI5nC,GAAQyoC,EAAIC,EAAIC,IAU7BhpC,EAAQiS,UAAU41B,4BAA8B,SAAUF,GACxD,GAQIsB,GACAC,EATAC,EAAKnqC,KAAKimC,IAAIrI,EACdwM,EAAKpqC,KAAKimC,IAAIhlB,EACdopB,EAAKrqC,KAAKimC,IAAImC,EACd0B,EAAKnB,EAAY/K,EACjBmM,EAAKpB,EAAY1nB,EACjB+oB,EAAKrB,EAAYP,CAerB,OAVIpoC,MAAKqlC,iBACP4E,GAAMH,EAAKK,IAAOE,EAAKL,GACvBE,GAAMH,EAAKK,IAAOC,EAAKL,KAEvBC,EAAKH,IAAOO,EAAKrqC,KAAK8lC,OAAOwE,gBAC7BJ,EAAKH,IAAOM,EAAKrqC,KAAK8lC,OAAOwE,iBAKxB,GAAIlpC,GAAQpB,KAAKuqC,QAAUN,EAAKjqC,KAAKwqC,MAAMC,OAAOC,YAAa1qC,KAAK2qC,QAAUT,EAAKlqC,KAAKwqC,MAAMC,OAAOC,cAO9G1pC,EAAQiS,UAAU23B,oBAAsB,SAAUC,GAChD,GAAIpD,GAAO,QACPC,EAAS,OACTC,EAAc,CAElB,IAA+B,gBAApBkD,GACTpD,EAAOoD,EACPnD,EAAS,OACTC,EAAc,MACT,IAA+B,gBAApBkD,GACatkC,SAAzBskC,EAAgBpD,OAAoBA,EAAOoD,EAAgBpD,MAChClhC,SAA3BskC,EAAgBnD,SAAsBA,EAASmD,EAAgBnD,QAC/BnhC,SAAhCskC,EAAgBlD,cAA2BA,EAAckD,EAAgBlD,iBACxE,IAAwBphC,SAApBskC,EAGP,KAAM,qCAGV7qC,MAAKwqC,MAAM17B,MAAM+7B,gBAAkBpD,EACnCznC,KAAKwqC,MAAM17B,MAAMg8B,YAAcpD,EAC/B1nC,KAAKwqC,MAAM17B,MAAMi8B,YAAcpD,EAAc,KAC7C3nC,KAAKwqC,MAAM17B,MAAMk8B,YAAc,SAIjChqC,EAAQmkC,OACN8F,IAAK,EACLC,SAAU,EACVC,QAAS,EACT/F,IAAK,EACLgG,QAAS,EACTC,SAAU,EACVC,QAAS,EACTC,KAAM,EACNC,KAAM,EACNC,QAAS,GASXzqC,EAAQiS,UAAUy4B,gBAAkB,SAAUC,GAC5C,OAAQA,GACN,IAAK,MACH,MAAO3qC,GAAQmkC,MAAMC,GACvB,KAAK,WACH,MAAOpkC,GAAQmkC,MAAMiG,OACvB,KAAK,YACH,MAAOpqC,GAAQmkC,MAAMkG,QACvB,KAAK,WACH,MAAOrqC,GAAQmkC,MAAMmG,OACvB,KAAK,OACH,MAAOtqC,GAAQmkC,MAAMqG,IACvB,KAAK,OACH,MAAOxqC,GAAQmkC,MAAMoG,IACvB,KAAK,UACH,MAAOvqC,GAAQmkC,MAAMsG,OACvB,KAAK,MACH,MAAOzqC,GAAQmkC,MAAM8F,GACvB,KAAK,YACH,MAAOjqC,GAAQmkC,MAAM+F,QACvB,KAAK,WACH,MAAOlqC,GAAQmkC,MAAMgG,QAGzB,MAAO,IAQTnqC,EAAQiS,UAAU24B,wBAA0B,SAAU5zB,EAAMlJ,GAC1D,GAAI9O,KAAK8O,QAAU9N,EAAQmkC,MAAMC,KAAOplC,KAAK8O,QAAU9N,EAAQmkC,MAAMiG,SAAWprC,KAAK8O,QAAU9N,EAAQmkC,MAAMqG,MAAQxrC,KAAK8O,QAAU9N,EAAQmkC,MAAMoG,MAAQvrC,KAAK8O,QAAU9N,EAAQmkC,MAAMsG,SAAWzrC,KAAK8O,QAAU9N,EAAQmkC,MAAM8F,IAE7NjrC,KAAKomC,KAAO,EACZpmC,KAAKqmC,KAAO,EACZrmC,KAAKsmC,KAAO,EACZtmC,KAAKumC,SAAWhgC,OAEZyR,EAAK6zB,qBAAuB,IAC9B7rC,KAAKwmC,UAAY,OAEd,CAAA,GAAIxmC,KAAK8O,QAAU9N,EAAQmkC,MAAMkG,UAAYrrC,KAAK8O,QAAU9N,EAAQmkC,MAAMmG,SAAWtrC,KAAK8O,QAAU9N,EAAQmkC,MAAM+F,UAAYlrC,KAAK8O,QAAU9N,EAAQmkC,MAAMgG,QAWhK,KAAM,kBAAoBnrC,KAAK8O,MAAQ,GATvC9O,MAAKomC,KAAO,EACZpmC,KAAKqmC,KAAO,EACZrmC,KAAKsmC,KAAO,EACZtmC,KAAKumC,SAAW,EAEZvuB,EAAK6zB,qBAAuB,IAC9B7rC,KAAKwmC,UAAY,KAOvBxlC,EAAQiS,UAAU64B,gBAAkB,SAAU9zB,GAC5C,MAAOA,GAAK1R,QAGdtF,EAAQiS,UAAU44B,mBAAqB,SAAU7zB,GAC/C,GAAI+zB,GAAU,CACd,KAAK,GAAIC,KAAUh0B,GAAK,GAClBA,EAAK,GAAGhS,eAAegmC,IACzBD,GAGJ,OAAOA,IAGT/qC,EAAQiS,UAAUg5B,kBAAoB,SAAUj0B,EAAMg0B,GAEpD,IAAK,GADDE,MACKzlC,EAAI,EAAGA,EAAIuR,EAAK1R,OAAQG,IACgB,IAA3CylC,EAAe3kC,QAAQyQ,EAAKvR,GAAGulC,KACjCE,EAAe1kC,KAAKwQ,EAAKvR,GAAGulC,GAGhC,OAAOE,IAGTlrC,EAAQiS,UAAUk5B,eAAiB,SAAUn0B,EAAMg0B,GAEjD,IAAK,GADDI,IAAWxnC,IAAKoT,EAAK,GAAGg0B,GAASnnC,IAAKmT,EAAK,GAAGg0B,IACzCvlC,EAAI,EAAGA,EAAIuR,EAAK1R,OAAQG,IAC3B2lC,EAAOxnC,IAAMoT,EAAKvR,GAAGulC,KACvBI,EAAOxnC,IAAMoT,EAAKvR,GAAGulC,IAEnBI,EAAOvnC,IAAMmT,EAAKvR,GAAGulC,KACvBI,EAAOvnC,IAAMmT,EAAKvR,GAAGulC,GAGzB,OAAOI,IASTprC,EAAQiS,UAAUo5B,gBAAkB,SAAUC,EAASx9B,GACrD,GAAIkxB,GAAKhgC,IAOT,IAJIA,KAAKkkC,SACPlkC,KAAKkkC,QAAQ3E,IAAI,IAAKv/B,KAAKusC,WAGbhmC,SAAZ+lC,EAAJ,CAEIxlC,MAAMC,QAAQulC,KAChBA,EAAU,GAAIzrC,GAAQyrC,GAGxB,IAAIt0B,EACJ,MAAIs0B,YAAmBzrC,IAAWyrC,YAAmBxrC,IAGnD,KAAM,IAAIkG,OAAM,uCAGlB,IALEgR,EAAOs0B,EAAQtV,MAKE,GAAfhf,EAAK1R,OAAT,CAEAtG,KAAKkkC,QAAUoI,EACftsC,KAAKkmC,UAAYluB,EAGjBhY,KAAKusC,UAAY,WACfvM,EAAGyD,QAAQzD,EAAGkE,UAEhBlkC,KAAKkkC,QAAQ9E,GAAG,IAAKp/B,KAAKusC,WAS1BvsC,KAAKomC,KAAO,IACZpmC,KAAKqmC,KAAO,IACZrmC,KAAKsmC,KAAO,IACZtmC,KAAKumC,SAAW,QAChBvmC,KAAKwmC,UAAY,SAGbxuB,EAAK,GAAGhS,eAAe,WACDO,SAApBvG,KAAKwsC,aACPxsC,KAAKwsC,WAAa,GAAIrrC,GAAOmrC,EAAStsC,KAAKwmC,UAAWxmC,MACtDA,KAAKwsC,WAAWC,kBAAkB,WAChCzM,EAAG0M,WAKT,IAAIC,GAAW3sC,KAAK8O,OAAS9N,EAAQmkC,MAAM8F,KAAOjrC,KAAK8O,OAAS9N,EAAQmkC,MAAM+F,UAAYlrC,KAAK8O,OAAS9N,EAAQmkC,MAAMgG,OAGtH,IAAIwB,EAAU,CACZ,GAA8BpmC,SAA1BvG,KAAK4sC,iBACP5sC,KAAKonC,UAAYpnC,KAAK4sC,qBACjB,CACL,GAAIC,GAAQ7sC,KAAKisC,kBAAkBj0B,EAAMhY,KAAKomC,KAC9CpmC,MAAKonC,UAAYyF,EAAM,GAAKA,EAAM,IAAM,EAG1C,GAA8BtmC,SAA1BvG,KAAK8sC,iBACP9sC,KAAKqnC,UAAYrnC,KAAK8sC,qBACjB,CACL,GAAIC,GAAQ/sC,KAAKisC,kBAAkBj0B,EAAMhY,KAAKqmC,KAC9CrmC,MAAKqnC,UAAY0F,EAAM,GAAKA,EAAM,IAAM,GAK5C,GAAIC,GAAShtC,KAAKmsC,eAAen0B,EAAMhY,KAAKomC,KACxCuG,KACFK,EAAOpoC,KAAO5E,KAAKonC,UAAY,EAC/B4F,EAAOnoC,KAAO7E,KAAKonC,UAAY,GAEjCpnC,KAAKymC,KAA4BlgC,SAArBvG,KAAKitC,YAA4BjtC,KAAKitC,YAAcD,EAAOpoC,IACvE5E,KAAK2mC,KAA4BpgC,SAArBvG,KAAKktC,YAA4BltC,KAAKktC,YAAcF,EAAOnoC,IACnE7E,KAAK2mC,MAAQ3mC,KAAKymC,OAAMzmC,KAAK2mC,KAAO3mC,KAAKymC,KAAO,GACpDzmC,KAAK0mC,MAA8BngC,SAAtBvG,KAAKmtC,aAA6BntC,KAAKmtC,cAAgBntC,KAAK2mC,KAAO3mC,KAAKymC,MAAQ,CAE7F,IAAI2G,GAASptC,KAAKmsC,eAAen0B,EAAMhY,KAAKqmC,KACxCsG,KACFS,EAAOxoC,KAAO5E,KAAKqnC,UAAY,EAC/B+F,EAAOvoC,KAAO7E,KAAKqnC,UAAY,GAEjCrnC,KAAK4mC,KAA4BrgC,SAArBvG,KAAKqtC,YAA4BrtC,KAAKqtC,YAAcD,EAAOxoC,IACvE5E,KAAK8mC,KAA4BvgC,SAArBvG,KAAKstC,YAA4BttC,KAAKstC,YAAcF,EAAOvoC,IACnE7E,KAAK8mC,MAAQ9mC,KAAK4mC,OAAM5mC,KAAK8mC,KAAO9mC,KAAK4mC,KAAO,GACpD5mC,KAAK6mC,MAA8BtgC,SAAtBvG,KAAKutC,aAA6BvtC,KAAKutC,cAAgBvtC,KAAK8mC,KAAO9mC,KAAK4mC,MAAQ,CAE7F,IAAI4G,GAASxtC,KAAKmsC,eAAen0B,EAAMhY,KAAKsmC,KAM5C,IALAtmC,KAAK+mC,KAA4BxgC,SAArBvG,KAAKytC,YAA4BztC,KAAKytC,YAAcD,EAAO5oC,IACvE5E,KAAKinC,KAA4B1gC,SAArBvG,KAAK0tC,YAA4B1tC,KAAK0tC,YAAcF,EAAO3oC,IACnE7E,KAAKinC,MAAQjnC,KAAK+mC,OAAM/mC,KAAKinC,KAAOjnC,KAAK+mC,KAAO,GACpD/mC,KAAKgnC,MAA8BzgC,SAAtBvG,KAAK2tC,aAA6B3tC,KAAK2tC,cAAgB3tC,KAAKinC,KAAOjnC,KAAK+mC,MAAQ,EAEvExgC,SAAlBvG,KAAKumC,SAAwB,CAC/B,GAAIqH,GAAa5tC,KAAKmsC,eAAen0B,EAAMhY,KAAKumC,SAChDvmC,MAAKknC,SAAoC3gC,SAAzBvG,KAAK6tC,gBAAgC7tC,KAAK6tC,gBAAkBD,EAAWhpC,IACvF5E,KAAKmnC,SAAoC5gC,SAAzBvG,KAAK8tC,gBAAgC9tC,KAAK8tC,gBAAkBF,EAAW/oC,IACnF7E,KAAKmnC,UAAYnnC,KAAKknC,WAAUlnC,KAAKmnC,SAAWnnC,KAAKknC,SAAW,GAItElnC,KAAKmoC,eAQPnnC,EAAQiS,UAAU86B,eAAiB,SAAU/1B,GAE3C,GAAI4lB,GAAG3c,EAAGxa,EAAG2hC,EAAGtiC,EAAKi4B,EAEjBoI,IAEJ,IAAInmC,KAAK8O,QAAU9N,EAAQmkC,MAAMoG,MAAQvrC,KAAK8O,QAAU9N,EAAQmkC,MAAMsG,QAAS,CAK7E,GAAIoB,MACAE,IACJ,KAAKtmC,EAAI,EAAGA,EAAIzG,KAAK8rC,gBAAgB9zB,GAAOvR,IAC1Cm3B,EAAI5lB,EAAKvR,GAAGzG,KAAKomC,OAAS,EAC1BnlB,EAAIjJ,EAAKvR,GAAGzG,KAAKqmC,OAAS,EAED,KAArBwG,EAAMtlC,QAAQq2B,IAChBiP,EAAMrlC,KAAKo2B,GAEY,KAArBmP,EAAMxlC,QAAQ0Z,IAChB8rB,EAAMvlC,KAAKyZ,EAIf,IAAI+sB,GAAa,SAAoB9nC,EAAGC,GACtC,MAAOD,GAAIC,EAEb0mC,GAAMnuB,KAAKsvB,GACXjB,EAAMruB,KAAKsvB,EAGX,IAAIC,KACJ,KAAKxnC,EAAI,EAAGA,EAAIuR,EAAK1R,OAAQG,IAAK,CAChCm3B,EAAI5lB,EAAKvR,GAAGzG,KAAKomC,OAAS,EAC1BnlB,EAAIjJ,EAAKvR,GAAGzG,KAAKqmC,OAAS,EAC1B+B,EAAIpwB,EAAKvR,GAAGzG,KAAKsmC,OAAS,CAE1B,IAAI4H,GAASrB,EAAMtlC,QAAQq2B,GACvBuQ,EAASpB,EAAMxlC,QAAQ0Z,EAEA1a,UAAvB0nC,EAAWC,KACbD,EAAWC,MAGb,IAAIxF,GAAU,GAAIrnC,EAClBqnC,GAAQ9K,EAAIA,EACZ8K,EAAQznB,EAAIA,EACZynB,EAAQN,EAAIA,EAEZtiC,KACAA,EAAIi4B,MAAQ2K,EACZ5iC,EAAIsoC,MAAQ7nC,OACZT,EAAIuoC,OAAS9nC,OACbT,EAAIwoC,OAAS,GAAIjtC,GAAQu8B,EAAG3c,EAAGjhB,KAAK+mC,MAEpCkH,EAAWC,GAAQC,GAAUroC,EAE7BqgC,EAAW3+B,KAAK1B,GAIlB,IAAK83B,EAAI,EAAGA,EAAIqQ,EAAW3nC,OAAQs3B,IACjC,IAAK3c,EAAI,EAAGA,EAAIgtB,EAAWrQ,GAAGt3B,OAAQ2a,IAChCgtB,EAAWrQ,GAAG3c,KAChBgtB,EAAWrQ,GAAG3c,GAAGstB,WAAa3Q,EAAIqQ,EAAW3nC,OAAS,EAAI2nC,EAAWrQ,EAAI,GAAG3c,GAAK1a,OACjF0nC,EAAWrQ,GAAG3c,GAAGutB,SAAWvtB,EAAIgtB,EAAWrQ,GAAGt3B,OAAS,EAAI2nC,EAAWrQ,GAAG3c,EAAI,GAAK1a,OAClF0nC,EAAWrQ,GAAG3c,GAAGwtB,WAAa7Q,EAAIqQ,EAAW3nC,OAAS,GAAK2a,EAAIgtB,EAAWrQ,GAAGt3B,OAAS,EAAI2nC,EAAWrQ,EAAI,GAAG3c,EAAI,GAAK1a,YAO3H,KAAKE,EAAI,EAAGA,EAAIuR,EAAK1R,OAAQG,IAC3Bs3B,EAAQ,GAAI18B,GACZ08B,EAAMH,EAAI5lB,EAAKvR,GAAGzG,KAAKomC,OAAS,EAChCrI,EAAM9c,EAAIjJ,EAAKvR,GAAGzG,KAAKqmC,OAAS,EAChCtI,EAAMqK,EAAIpwB,EAAKvR,GAAGzG,KAAKsmC,OAAS,EAEV//B,SAAlBvG,KAAKumC,WACPxI,EAAMh5B,MAAQiT,EAAKvR,GAAGzG,KAAKumC,WAAa,GAG1CzgC,KACAA,EAAIi4B,MAAQA,EACZj4B,EAAIwoC,OAAS,GAAIjtC,GAAQ08B,EAAMH,EAAGG,EAAM9c,EAAGjhB,KAAK+mC,MAChDjhC,EAAIsoC,MAAQ7nC,OACZT,EAAIuoC,OAAS9nC,OAEb4/B,EAAW3+B,KAAK1B,EAIpB,OAAOqgC,IASTnlC,EAAQiS,UAAU7C,OAAS,WAEzB,KAAOpQ,KAAKskC,iBAAiB9/B,iBAC3BxE,KAAKskC,iBAAiB5/B,YAAY1E,KAAKskC,iBAAiB7/B,WAG1DzE,MAAKwqC,MAAQpN,SAASM,cAAc,OACpC19B,KAAKwqC,MAAM17B,MAAM4/B,SAAW,WAC5B1uC,KAAKwqC,MAAM17B,MAAMgF,SAAW,SAG5B9T,KAAKwqC,MAAMC,OAASrN,SAASM,cAAc,UAC3C19B,KAAKwqC,MAAMC,OAAO37B,MAAM4/B,SAAW,WACnC1uC,KAAKwqC,MAAMlN,YAAYt9B,KAAKwqC,MAAMC,OAGhC,IAAIkE,GAAWvR,SAASM,cAAc,MACtCiR,GAAS7/B,MAAMrC,MAAQ,MACvBkiC,EAAS7/B,MAAM8/B,WAAa,OAC5BD,EAAS7/B,MAAM+/B,QAAU,OACzBF,EAASG,UAAY,mDACrB9uC,KAAKwqC,MAAMC,OAAOnN,YAAYqR,GAGhC3uC,KAAKwqC,MAAMhL,OAASpC,SAASM,cAAc,OAC3C19B,KAAKwqC,MAAMhL,OAAO1wB,MAAM4/B,SAAW,WACnC1uC,KAAKwqC,MAAMhL,OAAO1wB,MAAMw/B,OAAS,MACjCtuC,KAAKwqC,MAAMhL,OAAO1wB,MAAMnG,KAAO,MAC/B3I,KAAKwqC,MAAMhL,OAAO1wB,MAAM0vB,MAAQ,OAChCx+B,KAAKwqC,MAAMlN,YAAYt9B,KAAKwqC,MAAMhL,OAGlC,IAAIQ,GAAKhgC,KACL+uC,EAAc,SAAqBjkC,GACrCk1B,EAAGgP,aAAalkC,IAEdmkC,EAAe,SAAsBnkC,GACvCk1B,EAAGkP,cAAcpkC,IAEfqkC,EAAe,SAAsBrkC,GACvCk1B,EAAGoP,SAAStkC,IAEVukC,EAAY,SAAmBvkC,GACjCk1B,EAAGsP,WAAWxkC,GAIhBnK,GAAKwJ,iBAAiBnK,KAAKwqC,MAAMC,OAAQ,UAAW8E,WACpD5uC,EAAKwJ,iBAAiBnK,KAAKwqC,MAAMC,OAAQ,YAAasE,GACtDpuC,EAAKwJ,iBAAiBnK,KAAKwqC,MAAMC,OAAQ,aAAcwE,GACvDtuC,EAAKwJ,iBAAiBnK,KAAKwqC,MAAMC,OAAQ,aAAc0E,GACvDxuC,EAAKwJ,iBAAiBnK,KAAKwqC,MAAMC,OAAQ,YAAa4E,GAGtDrvC,KAAKskC,iBAAiBhH,YAAYt9B,KAAKwqC,QAUzCxpC,EAAQiS,UAAUu8B,QAAU,SAAUhR,EAAOC,GAC3Cz+B,KAAKwqC,MAAM17B,MAAM0vB,MAAQA,EACzBx+B,KAAKwqC,MAAM17B,MAAM2vB,OAASA,EAE1Bz+B,KAAKyvC,iBAMPzuC,EAAQiS,UAAUw8B,cAAgB,WAChCzvC,KAAKwqC,MAAMC,OAAO37B,MAAM0vB,MAAQ,OAChCx+B,KAAKwqC,MAAMC,OAAO37B,MAAM2vB,OAAS,OAEjCz+B,KAAKwqC,MAAMC,OAAOjM,MAAQx+B,KAAKwqC,MAAMC,OAAOC,YAC5C1qC,KAAKwqC,MAAMC,OAAOhM,OAASz+B,KAAKwqC,MAAMC,OAAOiF,aAG7C1vC,KAAKwqC,MAAMhL,OAAO1wB,MAAM0vB,MAAQx+B,KAAKwqC,MAAMC,OAAOC,YAAc,GAAS,MAM3E1pC,EAAQiS,UAAU08B,eAAiB,WACjC,IAAK3vC,KAAKwqC,MAAMhL,SAAWx/B,KAAKwqC,MAAMhL,OAAOoQ,OAAQ,KAAM,wBAE3D5vC,MAAKwqC,MAAMhL,OAAOoQ,OAAOC,QAM3B7uC,EAAQiS,UAAU68B,cAAgB,WAC3B9vC,KAAKwqC,MAAMhL,QAAWx/B,KAAKwqC,MAAMhL,OAAOoQ,QAE7C5vC,KAAKwqC,MAAMhL,OAAOoQ,OAAOG,QAS3B/uC,EAAQiS,UAAU+8B,cAAgB,WAEmC,MAA/DhwC,KAAKwkC,eAAenU,OAAOrwB,KAAKwkC,eAAel+B,OAAS,GAC1DtG,KAAKuqC,QAAUngB,WAAWpqB,KAAKwkC,gBAAkB,IAAMxkC,KAAKwqC,MAAMC,OAAOC,YAEzE1qC,KAAKuqC,QAAUngB,WAAWpqB,KAAKwkC,gBAIkC,MAA/DxkC,KAAKykC,eAAepU,OAAOrwB,KAAKykC,eAAen+B,OAAS,GAC1DtG,KAAK2qC,QAAUvgB,WAAWpqB,KAAKykC,gBAAkB,KAAOzkC,KAAKwqC,MAAMC,OAAOiF,aAAe1vC,KAAKwqC,MAAMhL,OAAOkQ,cAE3G1vC,KAAK2qC,QAAUvgB,WAAWpqB,KAAKykC,iBAoBnCzjC,EAAQiS,UAAUg9B,kBAAoB,SAAU1Z,GAClChwB,SAARgwB,IAImBhwB,SAAnBgwB,EAAI2Z,YAA6C3pC,SAAjBgwB,EAAI4Z,UACtCnwC,KAAK8lC,OAAOC,eAAexP,EAAI2Z,WAAY3Z,EAAI4Z,UAG5B5pC,SAAjBgwB,EAAI6Z,UACNpwC,KAAK8lC,OAAOE,aAAazP,EAAI6Z,UAG/BpwC,KAAK0sC,WAQP1rC,EAAQiS,UAAUo9B,kBAAoB,WACpC,GAAI9Z,GAAMv2B,KAAK8lC,OAAOwK,gBAEtB,OADA/Z,GAAI6Z,SAAWpwC,KAAK8lC,OAAOwE,eACpB/T,GAMTv1B,EAAQiS,UAAUs9B,UAAY,SAAUv4B,GAEtChY,KAAKqsC,gBAAgBr0B,EAAMhY,KAAK8O,OAE5B9O,KAAKwsC,WAEPxsC,KAAKmmC,WAAanmC,KAAKwsC,WAAWuB,iBAGlC/tC,KAAKmmC,WAAanmC,KAAK+tC,eAAe/tC,KAAKkmC,WAI7ClmC,KAAKwwC,iBAOPxvC,EAAQiS,UAAUwwB,QAAU,SAAUzrB,GACpChY,KAAKuwC,UAAUv4B,GACfhY,KAAK0sC,SAGD1sC,KAAKywC,oBAAsBzwC,KAAKwsC,YAClCxsC,KAAK2vC,kBAQT3uC,EAAQiS,UAAU+rB,WAAa,SAAUn7B,GACvC,GAAI6sC,GAAiBnqC,MAIrB,IAFAvG,KAAK8vC,gBAEWvpC,SAAZ1C,EAAuB,CAoBzB,GAlBsB0C,SAAlB1C,EAAQ26B,QAAqBx+B,KAAKw+B,MAAQ36B,EAAQ26B,OAC/Bj4B,SAAnB1C,EAAQ46B,SAAsBz+B,KAAKy+B,OAAS56B,EAAQ46B,QAEhCl4B,SAApB1C,EAAQwkC,UAAuBroC,KAAKwkC,eAAiB3gC,EAAQwkC,SACzC9hC,SAApB1C,EAAQykC,UAAuBtoC,KAAKykC,eAAiB5gC,EAAQykC,SAErC/hC,SAAxB1C,EAAQohC,cAA2BjlC,KAAKilC,YAAcphC,EAAQohC,aACtC1+B,SAAxB1C,EAAQqhC,cAA2BllC,KAAKklC,YAAcrhC,EAAQqhC,aAC3C3+B,SAAnB1C,EAAQ6gC,SAAsB1kC,KAAK0kC,OAAS7gC,EAAQ6gC,QACjCn+B,SAAnB1C,EAAQ8gC,SAAsB3kC,KAAK2kC,OAAS9gC,EAAQ8gC,QACjCp+B,SAAnB1C,EAAQ+gC,SAAsB5kC,KAAK4kC,OAAS/gC,EAAQ+gC,QAE5Br+B,SAAxB1C,EAAQihC,cAA2B9kC,KAAK8kC,YAAcjhC,EAAQihC,aACtCv+B,SAAxB1C,EAAQkhC,cAA2B/kC,KAAK+kC,YAAclhC,EAAQkhC,aACtCx+B,SAAxB1C,EAAQmhC,cAA2BhlC,KAAKglC,YAAcnhC,EAAQmhC,aAErCz+B,SAAzB1C,EAAQ+jC,eAA4B5nC,KAAK4nC,aAAe/jC,EAAQ+jC,cAE9CrhC,SAAlB1C,EAAQiL,MAAqB,CAC/B,GAAI6hC,GAAc3wC,KAAK0rC,gBAAgB7nC,EAAQiL,MAC3B,MAAhB6hC,IACF3wC,KAAK8O,MAAQ6hC,GAGQpqC,SAArB1C,EAAQyhC,WAAwBtlC,KAAKslC,SAAWzhC,EAAQyhC,UAC5B/+B,SAA5B1C,EAAQwhC,kBAA+BrlC,KAAKqlC,gBAAkBxhC,EAAQwhC,iBAC/C9+B,SAAvB1C,EAAQ2hC,aAA0BxlC,KAAKwlC,WAAa3hC,EAAQ2hC,YACxCj/B,SAApB1C,EAAQ+sC,UAAuB5wC,KAAK0lC,YAAc7hC,EAAQ+sC,SACxBrqC,SAAlC1C,EAAQgtC,wBAAqC7wC,KAAK6wC,sBAAwBhtC,EAAQgtC,uBACtDtqC,SAA5B1C,EAAQ0hC,kBAA+BvlC,KAAKulC,gBAAkB1hC,EAAQ0hC,iBAC5Ch/B,SAA1B1C,EAAQ8hC,gBAA6B3lC,KAAK2lC,cAAgB9hC,EAAQ8hC,eAEpCp/B,SAA9B1C,EAAQ+hC,oBAAiC5lC,KAAK4lC,kBAAoB/hC,EAAQ+hC,mBAC7Cr/B,SAA7B1C,EAAQgiC,mBAAgC7lC,KAAK6lC,iBAAmBhiC,EAAQgiC,kBACzCt/B,SAA/B1C,EAAQ4sC,qBAAkCzwC,KAAKywC,mBAAqB5sC,EAAQ4sC,oBAEtDlqC,SAAtB1C,EAAQujC,YAAyBpnC,KAAK4sC,iBAAmB/oC,EAAQujC,WAC3C7gC,SAAtB1C,EAAQwjC,YAAyBrnC,KAAK8sC,iBAAmBjpC,EAAQwjC,WAEhD9gC,SAAjB1C,EAAQ4iC,OAAoBzmC,KAAKitC,YAAcppC,EAAQ4iC,MACrClgC,SAAlB1C,EAAQ6iC,QAAqB1mC,KAAKmtC,aAAetpC,EAAQ6iC,OACxCngC,SAAjB1C,EAAQ8iC,OAAoB3mC,KAAKktC,YAAcrpC,EAAQ8iC,MACtCpgC,SAAjB1C,EAAQ+iC,OAAoB5mC,KAAKqtC,YAAcxpC,EAAQ+iC,MACrCrgC,SAAlB1C,EAAQgjC,QAAqB7mC,KAAKutC,aAAe1pC,EAAQgjC,OACxCtgC,SAAjB1C,EAAQijC,OAAoB9mC,KAAKstC,YAAczpC,EAAQijC,MACtCvgC,SAAjB1C,EAAQkjC,OAAoB/mC,KAAKytC,YAAc5pC,EAAQkjC,MACrCxgC,SAAlB1C,EAAQmjC,QAAqBhnC,KAAK2tC,aAAe9pC,EAAQmjC,OACxCzgC,SAAjB1C,EAAQojC,OAAoBjnC,KAAK0tC,YAAc7pC,EAAQojC,MAClC1gC,SAArB1C,EAAQqjC,WAAwBlnC,KAAK6tC,gBAAkBhqC,EAAQqjC,UAC1C3gC,SAArB1C,EAAQsjC,WAAwBnnC,KAAK8tC,gBAAkBjqC,EAAQsjC,UACnC5gC,SAA5B1C,EAAQgnC,iBAA+B7qC,KAAK4qC,oBAAoB/mC,EAAQgnC,iBAE7CtkC,SAA3B1C,EAAQ6sC,iBAA8BA,EAAiB7sC,EAAQ6sC,gBAE5CnqC,SAAnBmqC,IACF1wC,KAAK8lC,OAAOC,eAAe2K,EAAeR,WAAYQ,EAAeP,UACrEnwC,KAAK8lC,OAAOE,aAAa0K,EAAeN,WAIhB7pC,SAAtB1C,EAAQyjC,YAAyBtnC,KAAKsnC,UAAYzjC,EAAQyjC,WACpC/gC,SAAtB1C,EAAQ0jC,YAAyBvnC,KAAKunC,UAAY1jC,EAAQ0jC,WAC1D1jC,EAAQ2jC,YACuB,gBAAtB3jC,GAAQ2jC,WACjBxnC,KAAKwnC,UAAUC,KAAO5jC,EAAQ2jC,UAC9BxnC,KAAKwnC,UAAUE,OAAS7jC,EAAQ2jC,YAE5B3jC,EAAQ2jC,UAAUC,OACpBznC,KAAKwnC,UAAUC,KAAO5jC,EAAQ2jC,UAAUC,MAEtC5jC,EAAQ2jC,UAAUE,SACpB1nC,KAAKwnC,UAAUE,OAAS7jC,EAAQ2jC,UAAUE,QAENnhC,SAAlC1C,EAAQ2jC,UAAUG,cACpB3nC,KAAKwnC,UAAUG,YAAc9jC,EAAQ2jC,UAAUG,eAMvD3nC,KAAKwvC,QAAQxvC,KAAKw+B,MAAOx+B,KAAKy+B,QAG1Bz+B,KAAKkmC,WACPlmC,KAAKyjC,QAAQzjC,KAAKkmC,WAIhBlmC,KAAKywC,oBAAsBzwC,KAAKwsC,YAClCxsC,KAAK2vC,kBAOT3uC,EAAQiS,UAAUy5B,OAAS,WACzB,GAAwBnmC,SAApBvG,KAAKmmC,WACP,KAAM,mCAGRnmC,MAAKyvC,gBACLzvC,KAAKgwC,gBACLhwC,KAAK8wC,gBACL9wC,KAAK+wC,eACL/wC,KAAKgxC,cAEDhxC,KAAK8O,QAAU9N,EAAQmkC,MAAMoG,MAAQvrC,KAAK8O,QAAU9N,EAAQmkC,MAAMsG,QACpEzrC,KAAKixC,kBACIjxC,KAAK8O,QAAU9N,EAAQmkC,MAAMqG,KACtCxrC,KAAKkxC,kBACIlxC,KAAK8O,QAAU9N,EAAQmkC,MAAM8F,KAAOjrC,KAAK8O,QAAU9N,EAAQmkC,MAAM+F,UAAYlrC,KAAK8O,QAAU9N,EAAQmkC,MAAMgG,QACnHnrC,KAAKmxC,iBAGLnxC,KAAKoxC,iBAGPpxC,KAAKqxC,cACLrxC,KAAKsxC,iBAMPtwC,EAAQiS,UAAU89B,aAAe,WAC/B,GAAItG,GAASzqC,KAAKwqC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAE5BD,GAAIE,UAAU,EAAG,EAAGhH,EAAOjM,MAAOiM,EAAOhM,SAM3Cz9B,EAAQiS,UAAUq+B,cAAgB,WAChC,GAAIrwB,EAEJ,IAAIjhB,KAAK8O,QAAU9N,EAAQmkC,MAAMkG,UAAYrrC,KAAK8O,QAAU9N,EAAQmkC,MAAMmG,QAAS,CAEjF,GAEIoG,GAAUC,EAFVC,EAAU5xC,KAAKwqC,MAAME,YAAc1qC,KAAK4nC,YAGxC5nC,MAAK8O,QAAU9N,EAAQmkC,MAAMmG,SAC/BoG,EAAWE,EAAU,EACrBD,EAAWC,EAAU,EAAc,EAAVA,IAEvBF,EAAW,GACXC,EAAW,GAGf,IAAIlT,GAASx5B,KAAKJ,IAA8B,IAA1B7E,KAAKwqC,MAAMkF,aAAqB,KAClD7mC,EAAM7I,KAAKukC,OACXsN,EAAQ7xC,KAAKwqC,MAAME,YAAc1qC,KAAKukC,OACtC57B,EAAOkpC,EAAQF,EACfrD,EAASzlC,EAAM41B,EAGrB,GAAIgM,GAASzqC,KAAKwqC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAI5B,IAHAD,EAAIO,UAAY,EAChBP,EAAIQ,KAAO,aAEP/xC,KAAK8O,QAAU9N,EAAQmkC,MAAMkG,SAAU,CAEzC,GAAI2G,GAAO,EACPC,EAAOxT,CACX,KAAKxd,EAAI+wB,EAAUC,EAAJhxB,EAAUA,IAAK,CAC5B,GAAIxR,IAAKwR,EAAI+wB,IAASC,EAAOD,GAGzBvjC,EAAU,IAAJgB,EACNhD,EAAQzM,KAAKkyC,SAASzjC,EAAK,EAAG,EAElC8iC,GAAIY,YAAc1lC,EAClB8kC,EAAIa,YACJb,EAAIc,OAAO1pC,EAAME,EAAMoY,GACvBswB,EAAIe,OAAOT,EAAOhpC,EAAMoY,GACxBswB,EAAI7J,SAGN6J,EAAIY,YAAcnyC,KAAKsnC,UACvBiK,EAAIgB,WAAW5pC,EAAME,EAAK8oC,EAAUlT,GAiBtC,GAdIz+B,KAAK8O,QAAU9N,EAAQmkC,MAAMmG,UAE/BiG,EAAIY,YAAcnyC,KAAKsnC,UACvBiK,EAAIiB,UAAYxyC,KAAKwnC,UAAUC,KAC/B8J,EAAIa,YACJb,EAAIc,OAAO1pC,EAAME,GACjB0oC,EAAIe,OAAOT,EAAOhpC,GAClB0oC,EAAIe,OAAOT,EAAQF,EAAWD,EAAUpD,GACxCiD,EAAIe,OAAO3pC,EAAM2lC,GACjBiD,EAAIkB,YACJlB,EAAI9J,OACJ8J,EAAI7J,UAGF1nC,KAAK8O,QAAU9N,EAAQmkC,MAAMkG,UAAYrrC,KAAK8O,QAAU9N,EAAQmkC,MAAMmG,QAAS,CAEjF,GAAIoH,GAAc,EACdC,EAAO,GAAIpxC,GAAWvB,KAAKknC,SAAUlnC,KAAKmnC,UAAWnnC,KAAKmnC,SAAWnnC,KAAKknC,UAAY,GAAG,EAK7F,KAJAyL,EAAKC,QACDD,EAAKE,aAAe7yC,KAAKknC,UAC3ByL,EAAKr7B,QAECq7B,EAAKG,OACX7xB,EAAIqtB,GAAUqE,EAAKE,aAAe7yC,KAAKknC,WAAalnC,KAAKmnC,SAAWnnC,KAAKknC,UAAYzI,EAErF8S,EAAIa,YACJb,EAAIc,OAAO1pC,EAAO+pC,EAAazxB,GAC/BswB,EAAIe,OAAO3pC,EAAMsY,GACjBswB,EAAI7J,SAEJ6J,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,SACnBzB,EAAIiB,UAAYxyC,KAAKsnC,UACrBiK,EAAI0B,SAASN,EAAKE,aAAclqC,EAAO,EAAI+pC,EAAazxB,GAExD0xB,EAAKr7B,MAGPi6B,GAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,KACnB,IAAI9U,GAAQl+B,KAAKklC,WACjBqM,GAAI0B,SAAS/U,EAAO2T,EAAOvD,EAAStuC,KAAKukC,UAO7CvjC,EAAQiS,UAAUu9B,cAAgB,WAGhC,GAFAxwC,KAAKwqC,MAAMhL,OAAOsP,UAAY,GAE1B9uC,KAAKwsC,WAAY,CACnB,GAAI3oC,IACFqvC,QAAWlzC,KAAK6wC,uBAEdjB,EAAS,GAAItuC,GAAOtB,KAAKwqC,MAAMhL,OAAQ37B,EAC3C7D,MAAKwqC,MAAMhL,OAAOoQ,OAASA,EAG3B5vC,KAAKwqC,MAAMhL,OAAO1wB,MAAM+/B,QAAU,OAGlCe,EAAOuD,UAAUnzC,KAAKwsC,WAAWz0B,QACjC63B,EAAOwD,gBAAgBpzC,KAAK4lC,kBAG5B,IAAI5F,GAAKhgC,KACLqzC,EAAW,WACb,GAAIjqC,GAAQwmC,EAAO0D,UAEnBtT,GAAGwM,WAAW+G,YAAYnqC,GAC1B42B,EAAGmG,WAAanG,EAAGwM,WAAWuB,iBAE9B/N,EAAG0M,SAELkD,GAAO4D,oBAAoBH,OAE3BrzC,MAAKwqC,MAAMhL,OAAOoQ,OAASrpC,QAO/BvF,EAAQiS,UAAU69B,cAAgB,WACCvqC,SAA7BvG,KAAKwqC,MAAMhL,OAAOoQ,QACpB5vC,KAAKwqC,MAAMhL,OAAOoQ,OAAOlD,UAO7B1rC,EAAQiS,UAAUo+B,YAAc,WAC9B,GAAIrxC,KAAKwsC,WAAY,CACnB,GAAI/B,GAASzqC,KAAKwqC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAE5BD,GAAIQ,KAAO,aACXR,EAAIkC,UAAY,OAChBlC,EAAIiB,UAAY,OAChBjB,EAAIwB,UAAY,OAChBxB,EAAIyB,aAAe,KAEnB,IAAIpV,GAAI59B,KAAKukC,OACTtjB,EAAIjhB,KAAKukC,MACbgN,GAAI0B,SAASjzC,KAAKwsC,WAAWkH,WAAa,KAAO1zC,KAAKwsC,WAAWmH,mBAAoB/V,EAAG3c,KAO5FjgB,EAAQiS,UAAU+9B,YAAc,WAC9B,GAEI57B,GACAD,EACAw9B,EACAiB,EACAC,EACAC,EACAC,EACAC,EACAxsB,EACA2W,EACAC,EACA6V,EACAC,EAdAzJ,EAASzqC,KAAKwqC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAiB5BD,GAAIQ,KAAO,GAAK/xC,KAAK8lC,OAAOwE,eAAiB,UAG7C,IAAI6J,GAAW,KAAQn0C,KAAKgF,MAAM44B,EAC9BwW,EAAW,KAAQp0C,KAAKgF,MAAMic,EAC9BozB,EAAa,EAAIr0C,KAAK8lC,OAAOwE,eAC7BgK,EAAWt0C,KAAK8lC,OAAOwK,iBAAiBJ,UAU5C,KAPAqB,EAAIO,UAAY,EAChB8B,EAAmCrtC,SAAtBvG,KAAKmtC,aAClBwF,EAAO,GAAIpxC,GAAWvB,KAAKymC,KAAMzmC,KAAK2mC,KAAM3mC,KAAK0mC,MAAOkN,GACxDjB,EAAKC,QACDD,EAAKE,aAAe7yC,KAAKymC,MAC3BkM,EAAKr7B,QAECq7B,EAAKG,OAAO,CAClB,GAAIlV,GAAI+U,EAAKE,YAET7yC,MAAKslC,UACPlwB,EAAOpV,KAAKyoC,eAAe,GAAIpnC,GAAQu8B,EAAG59B,KAAK4mC,KAAM5mC,KAAK+mC,OAC1D5xB,EAAKnV,KAAKyoC,eAAe,GAAIpnC,GAAQu8B,EAAG59B,KAAK8mC,KAAM9mC,KAAK+mC,OACxDwK,EAAIY,YAAcnyC,KAAKunC,UACvBgK,EAAIa,YACJb,EAAIc,OAAOj9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBswB,EAAIe,OAAOn9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBswB,EAAI7J,WAEJtyB,EAAOpV,KAAKyoC,eAAe,GAAIpnC,GAAQu8B,EAAG59B,KAAK4mC,KAAM5mC,KAAK+mC,OAC1D5xB,EAAKnV,KAAKyoC,eAAe,GAAIpnC,GAAQu8B,EAAG59B,KAAK4mC,KAAOuN,EAAUn0C,KAAK+mC,OACnEwK,EAAIY,YAAcnyC,KAAKsnC,UACvBiK,EAAIa,YACJb,EAAIc,OAAOj9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBswB,EAAIe,OAAOn9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBswB,EAAI7J,SAEJtyB,EAAOpV,KAAKyoC,eAAe,GAAIpnC,GAAQu8B,EAAG59B,KAAK8mC,KAAM9mC,KAAK+mC,OAC1D5xB,EAAKnV,KAAKyoC,eAAe,GAAIpnC,GAAQu8B,EAAG59B,KAAK8mC,KAAOqN,EAAUn0C,KAAK+mC,OACnEwK,EAAIY,YAAcnyC,KAAKsnC,UACvBiK,EAAIa,YACJb,EAAIc,OAAOj9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBswB,EAAIe,OAAOn9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBswB,EAAI7J,UAGNqM,EAAQ9uC,KAAKwkC,IAAI6K,GAAY,EAAIt0C,KAAK4mC,KAAO5mC,KAAK8mC,KAClD+M,EAAO7zC,KAAKyoC,eAAe,GAAIpnC,GAAQu8B,EAAGmW,EAAO/zC,KAAK+mC,OAClD9hC,KAAKwkC,IAAe,EAAX6K,GAAgB,GAC3B/C,EAAIwB,UAAY,SAChBxB,EAAIyB,aAAe,MACnBa,EAAK5yB,GAAKozB,GACDpvC,KAAKqkC,IAAe,EAAXgL,GAAgB,GAClC/C,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,WAEnBzB,EAAIwB,UAAY,OAChBxB,EAAIyB,aAAe,UAErBzB,EAAIiB,UAAYxyC,KAAKsnC,UACrBiK,EAAI0B,SAAS,KAAOjzC,KAAK8kC,YAAY6N,EAAKE,cAAgB,KAAMgB,EAAKjW,EAAGiW,EAAK5yB,GAE7E0xB,EAAKr7B,OAWP,IAPAi6B,EAAIO,UAAY,EAChB8B,EAAmCrtC,SAAtBvG,KAAKutC,aAClBoF,EAAO,GAAIpxC,GAAWvB,KAAK4mC,KAAM5mC,KAAK8mC,KAAM9mC,KAAK6mC,MAAO+M,GACxDjB,EAAKC,QACDD,EAAKE,aAAe7yC,KAAK4mC,MAC3B+L,EAAKr7B,QAECq7B,EAAKG,OACP9yC,KAAKslC,UACPlwB,EAAOpV,KAAKyoC,eAAe,GAAIpnC,GAAQrB,KAAKymC,KAAMkM,EAAKE,aAAc7yC,KAAK+mC,OAC1E5xB,EAAKnV,KAAKyoC,eAAe,GAAIpnC,GAAQrB,KAAK2mC,KAAMgM,EAAKE,aAAc7yC,KAAK+mC,OACxEwK,EAAIY,YAAcnyC,KAAKunC,UACvBgK,EAAIa,YACJb,EAAIc,OAAOj9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBswB,EAAIe,OAAOn9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBswB,EAAI7J,WAEJtyB,EAAOpV,KAAKyoC,eAAe,GAAIpnC,GAAQrB,KAAKymC,KAAMkM,EAAKE,aAAc7yC,KAAK+mC,OAC1E5xB,EAAKnV,KAAKyoC,eAAe,GAAIpnC,GAAQrB,KAAKymC,KAAO2N,EAAUzB,EAAKE,aAAc7yC,KAAK+mC,OACnFwK,EAAIY,YAAcnyC,KAAKsnC,UACvBiK,EAAIa,YACJb,EAAIc,OAAOj9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBswB,EAAIe,OAAOn9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBswB,EAAI7J,SAEJtyB,EAAOpV,KAAKyoC,eAAe,GAAIpnC,GAAQrB,KAAK2mC,KAAMgM,EAAKE,aAAc7yC,KAAK+mC,OAC1E5xB,EAAKnV,KAAKyoC,eAAe,GAAIpnC,GAAQrB,KAAK2mC,KAAOyN,EAAUzB,EAAKE,aAAc7yC,KAAK+mC,OACnFwK,EAAIY,YAAcnyC,KAAKsnC,UACvBiK,EAAIa,YACJb,EAAIc,OAAOj9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBswB,EAAIe,OAAOn9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBswB,EAAI7J,UAGNoM,EAAQ7uC,KAAKqkC,IAAIgL,GAAY,EAAIt0C,KAAKymC,KAAOzmC,KAAK2mC,KAClDkN,EAAO7zC,KAAKyoC,eAAe,GAAIpnC,GAAQyyC,EAAOnB,EAAKE,aAAc7yC,KAAK+mC,OAClE9hC,KAAKwkC,IAAe,EAAX6K,GAAgB,GAC3B/C,EAAIwB,UAAY,SAChBxB,EAAIyB,aAAe,MACnBa,EAAK5yB,GAAKozB,GACDpvC,KAAKqkC,IAAe,EAAXgL,GAAgB,GAClC/C,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,WAEnBzB,EAAIwB,UAAY,OAChBxB,EAAIyB,aAAe,UAErBzB,EAAIiB,UAAYxyC,KAAKsnC,UACrBiK,EAAI0B,SAAS,KAAOjzC,KAAK+kC,YAAY4N,EAAKE,cAAgB,KAAMgB,EAAKjW,EAAGiW,EAAK5yB,GAE7E0xB,EAAKr7B,MAaP,KATAi6B,EAAIO,UAAY,EAChB8B,EAAmCrtC,SAAtBvG,KAAK2tC,aAClBgF,EAAO,GAAIpxC,GAAWvB,KAAK+mC,KAAM/mC,KAAKinC,KAAMjnC,KAAKgnC,MAAO4M,GACxDjB,EAAKC,QACDD,EAAKE,aAAe7yC,KAAK+mC,MAC3B4L,EAAKr7B,OAEPw8B,EAAQ7uC,KAAKwkC,IAAI6K,GAAY,EAAIt0C,KAAKymC,KAAOzmC,KAAK2mC,KAClDoN,EAAQ9uC,KAAKqkC,IAAIgL,GAAY,EAAIt0C,KAAK4mC,KAAO5mC,KAAK8mC,MAC1C6L,EAAKG,OAEX19B,EAAOpV,KAAKyoC,eAAe,GAAIpnC,GAAQyyC,EAAOC,EAAOpB,EAAKE,eAC1DtB,EAAIY,YAAcnyC,KAAKsnC,UACvBiK,EAAIa,YACJb,EAAIc,OAAOj9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBswB,EAAIe,OAAOl9B,EAAKwoB,EAAIyW,EAAYj/B,EAAK6L,GACrCswB,EAAI7J,SAEJ6J,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,SACnBzB,EAAIiB,UAAYxyC,KAAKsnC,UACrBiK,EAAI0B,SAASjzC,KAAKglC,YAAY2N,EAAKE,cAAgB,IAAKz9B,EAAKwoB,EAAI,EAAGxoB,EAAK6L,GAEzE0xB,EAAKr7B,MAEPi6B,GAAIO,UAAY,EAChB18B,EAAOpV,KAAKyoC,eAAe,GAAIpnC,GAAQyyC,EAAOC,EAAO/zC,KAAK+mC,OAC1D5xB,EAAKnV,KAAKyoC,eAAe,GAAIpnC,GAAQyyC,EAAOC,EAAO/zC,KAAKinC,OACxDsK,EAAIY,YAAcnyC,KAAKsnC,UACvBiK,EAAIa,YACJb,EAAIc,OAAOj9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBswB,EAAIe,OAAOn9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBswB,EAAI7J,SAGJ6J,EAAIO,UAAY,EAEhBmC,EAASj0C,KAAKyoC,eAAe,GAAIpnC,GAAQrB,KAAKymC,KAAMzmC,KAAK4mC,KAAM5mC,KAAK+mC,OACpEmN,EAASl0C,KAAKyoC,eAAe,GAAIpnC,GAAQrB,KAAK2mC,KAAM3mC,KAAK4mC,KAAM5mC,KAAK+mC,OACpEwK,EAAIY,YAAcnyC,KAAKsnC,UACvBiK,EAAIa,YACJb,EAAIc,OAAO4B,EAAOrW,EAAGqW,EAAOhzB,GAC5BswB,EAAIe,OAAO4B,EAAOtW,EAAGsW,EAAOjzB,GAC5BswB,EAAI7J,SAEJuM,EAASj0C,KAAKyoC,eAAe,GAAIpnC,GAAQrB,KAAKymC,KAAMzmC,KAAK8mC,KAAM9mC,KAAK+mC,OACpEmN,EAASl0C,KAAKyoC,eAAe,GAAIpnC,GAAQrB,KAAK2mC,KAAM3mC,KAAK8mC,KAAM9mC,KAAK+mC,OACpEwK,EAAIY,YAAcnyC,KAAKsnC,UACvBiK,EAAIa,YACJb,EAAIc,OAAO4B,EAAOrW,EAAGqW,EAAOhzB,GAC5BswB,EAAIe,OAAO4B,EAAOtW,EAAGsW,EAAOjzB,GAC5BswB,EAAI7J,SAGJ6J,EAAIO,UAAY,EAEhB18B,EAAOpV,KAAKyoC,eAAe,GAAIpnC,GAAQrB,KAAKymC,KAAMzmC,KAAK4mC,KAAM5mC,KAAK+mC,OAClE5xB,EAAKnV,KAAKyoC,eAAe,GAAIpnC,GAAQrB,KAAKymC,KAAMzmC,KAAK8mC,KAAM9mC,KAAK+mC,OAChEwK,EAAIY,YAAcnyC,KAAKsnC,UACvBiK,EAAIa,YACJb,EAAIc,OAAOj9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBswB,EAAIe,OAAOn9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBswB,EAAI7J,SAEJtyB,EAAOpV,KAAKyoC,eAAe,GAAIpnC,GAAQrB,KAAK2mC,KAAM3mC,KAAK4mC,KAAM5mC,KAAK+mC,OAClE5xB,EAAKnV,KAAKyoC,eAAe,GAAIpnC,GAAQrB,KAAK2mC,KAAM3mC,KAAK8mC,KAAM9mC,KAAK+mC,OAChEwK,EAAIY,YAAcnyC,KAAKsnC,UACvBiK,EAAIa,YACJb,EAAIc,OAAOj9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBswB,EAAIe,OAAOn9B,EAAGyoB,EAAGzoB,EAAG8L,GACpBswB,EAAI7J,QAGJ,IAAIhD,GAAS1kC,KAAK0kC,MACdA,GAAOp+B,OAAS,IAClB83B,EAAU,GAAMp+B,KAAKgF,MAAMic,EAC3B6yB,GAAS9zC,KAAKymC,KAAOzmC,KAAK2mC,MAAQ,EAClCoN,EAAQ9uC,KAAKwkC,IAAI6K,GAAY,EAAIt0C,KAAK4mC,KAAOxI,EAAUp+B,KAAK8mC,KAAO1I,EACnEyV,EAAO7zC,KAAKyoC,eAAe,GAAIpnC,GAAQyyC,EAAOC,EAAO/zC,KAAK+mC,OACtD9hC,KAAKwkC,IAAe,EAAX6K,GAAgB,GAC3B/C,EAAIwB,UAAY,SAChBxB,EAAIyB,aAAe,OACV/tC,KAAKqkC,IAAe,EAAXgL,GAAgB,GAClC/C,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,WAEnBzB,EAAIwB,UAAY,OAChBxB,EAAIyB,aAAe,UAErBzB,EAAIiB,UAAYxyC,KAAKsnC,UACrBiK,EAAI0B,SAASvO,EAAQmP,EAAKjW,EAAGiW,EAAK5yB,GAIpC,IAAI0jB,GAAS3kC,KAAK2kC,MACdA,GAAOr+B,OAAS,IAClB63B,EAAU,GAAMn+B,KAAKgF,MAAM44B,EAC3BkW,EAAQ7uC,KAAKqkC,IAAIgL,GAAY,EAAIt0C,KAAKymC,KAAOtI,EAAUn+B,KAAK2mC,KAAOxI,EACnE4V,GAAS/zC,KAAK4mC,KAAO5mC,KAAK8mC,MAAQ,EAClC+M,EAAO7zC,KAAKyoC,eAAe,GAAIpnC,GAAQyyC,EAAOC,EAAO/zC,KAAK+mC,OACtD9hC,KAAKwkC,IAAe,EAAX6K,GAAgB,GAC3B/C,EAAIwB,UAAY,SAChBxB,EAAIyB,aAAe,OACV/tC,KAAKqkC,IAAe,EAAXgL,GAAgB,GAClC/C,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,WAEnBzB,EAAIwB,UAAY,OAChBxB,EAAIyB,aAAe,UAErBzB,EAAIiB,UAAYxyC,KAAKsnC,UACrBiK,EAAI0B,SAAStO,EAAQkP,EAAKjW,EAAGiW,EAAK5yB,GAIpC,IAAI2jB,GAAS5kC,KAAK4kC,MACdA,GAAOt+B,OAAS,IAClBkhB,EAAS,GACTssB,EAAQ7uC,KAAKwkC,IAAI6K,GAAY,EAAIt0C,KAAKymC,KAAOzmC,KAAK2mC,KAClDoN,EAAQ9uC,KAAKqkC,IAAIgL,GAAY,EAAIt0C,KAAK4mC,KAAO5mC,KAAK8mC,KAClDkN,GAASh0C,KAAK+mC,KAAO/mC,KAAKinC,MAAQ,EAClC4M,EAAO7zC,KAAKyoC,eAAe,GAAIpnC,GAAQyyC,EAAOC,EAAOC,IACrDzC,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,SACnBzB,EAAIiB,UAAYxyC,KAAKsnC,UACrBiK,EAAI0B,SAASrO,EAAQiP,EAAKjW,EAAIpW,EAAQqsB,EAAK5yB,KAU/CjgB,EAAQiS,UAAUi/B,SAAW,SAAUqC,EAAGC,EAAGC,GAC3C,GAAIC,GAAGC,EAAGC,EAAGC,EAAGC,EAAIC,CAMpB,QAJAF,EAAIJ,EAAID,EACRM,EAAK7vC,KAAKuK,MAAM+kC,EAAI,IACpBQ,EAAIF,GAAK,EAAI5vC,KAAK8R,IAAIw9B,EAAI,GAAK,EAAI,IAE3BO,GACN,IAAK,GACHJ,EAAIG,EAAEF,EAAII,EAAEH,EAAI,CAAE,MACpB,KAAK,GACHF,EAAIK,EAAEJ,EAAIE,EAAED,EAAI,CAAE,MACpB,KAAK,GACHF,EAAI,EAAEC,EAAIE,EAAED,EAAIG,CAAE,MACpB,KAAK,GACHL,EAAI,EAAEC,EAAII,EAAEH,EAAIC,CAAE,MACpB,KAAK,GACHH,EAAIK,EAAEJ,EAAI,EAAEC,EAAIC,CAAE,MACpB,KAAK,GACHH,EAAIG,EAAEF,EAAI,EAAEC,EAAIG,CAAE,MAEpB,SACEL,EAAI,EAAEC,EAAI,EAAEC,EAAI,EAGpB,MAAO,OAASroC,SAAa,IAAJmoC,GAAW,IAAMnoC,SAAa,IAAJooC,GAAW,IAAMpoC,SAAa,IAAJqoC,GAAW,KAO1F5zC,EAAQiS,UAAUg+B,gBAAkB,WAClC,GAEIlT,GACA8T,EACAhpC,EACAmsC,EACAvuC,EACAwuC,EACAzC,EACAL,EAEAzkC,EACAC,EACAC,EACAsnC,EAdAzK,EAASzqC,KAAKwqC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAkB5B,IAHAD,EAAI4D,SAAW,QACf5D,EAAI6D,QAAU,UAEU7uC,SAApBvG,KAAKmmC,YAA4BnmC,KAAKmmC,WAAW7/B,QAAU,GAA/D,CAGA,IAAKG,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IAAK,CAC3C,GAAI2nC,GAAQpuC,KAAK4oC,2BAA2B5oC,KAAKmmC,WAAW1/B,GAAGs3B,OAC3DsQ,EAASruC,KAAK6oC,4BAA4BuF,EAE9CpuC,MAAKmmC,WAAW1/B,GAAG2nC,MAAQA,EAC3BpuC,KAAKmmC,WAAW1/B,GAAG4nC,OAASA,CAG5B,IAAIgH,GAAcr1C,KAAK4oC,2BAA2B5oC,KAAKmmC,WAAW1/B,GAAG6nC,OACrEtuC,MAAKmmC,WAAW1/B,GAAG6uC,KAAOt1C,KAAKqlC,gBAAkBgQ,EAAY/uC,UAAY+uC,EAAYjN,EAIvF,GAAImN,GAAY,SAAmBrvC,EAAGC,GACpC,MAAOA,GAAEmvC,KAAOpvC,EAAEovC,KAIpB,IAFAt1C,KAAKmmC,WAAWznB,KAAK62B,GAEjBv1C,KAAK8O,QAAU9N,EAAQmkC,MAAMsG,SAC/B,IAAKhlC,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IAMtC,GALAs3B,EAAQ/9B,KAAKmmC,WAAW1/B,GACxBorC,EAAQ7xC,KAAKmmC,WAAW1/B,GAAG8nC,WAC3B1lC,EAAM7I,KAAKmmC,WAAW1/B,GAAG+nC,SACzBwG,EAAQh1C,KAAKmmC,WAAW1/B,GAAGgoC,WAEbloC,SAAVw3B,GAAiCx3B,SAAVsrC,GAA+BtrC,SAARsC,GAA+BtC,SAAVyuC,EAAqB,CAE1F,GAAIh1C,KAAKylC,gBAAkBzlC,KAAKwlC,WAAY,CAK1C,GAAIgQ,GAAQn0C,EAAQ8nB,SAAS6rB,EAAM5G,MAAOrQ,EAAMqQ,OAC5CqH,EAAQp0C,EAAQ8nB,SAAStgB,EAAIulC,MAAOyD,EAAMzD,OAC1CsH,EAAer0C,EAAQs0C,aAAaH,EAAOC,GAC3C/tC,EAAMguC,EAAapvC,QAGvB2uC,GAAiBS,EAAatN,EAAI,MAElC6M,IAAiB,CAGfA,IAEFC,GAAQnX,EAAMA,MAAMqK,EAAIyJ,EAAM9T,MAAMqK,EAAIv/B,EAAIk1B,MAAMqK,EAAI4M,EAAMjX,MAAMqK,GAAK,EACvE16B,EAAmE,KAA9D,GAAKwnC,EAAOl1C,KAAK+mC,MAAQ/mC,KAAKgF,MAAMojC,EAAIpoC,KAAK2lC,eAClDh4B,EAAI,EAEA3N,KAAKwlC,YACP53B,EAAI3I,KAAKL,IAAI,EAAI8wC,EAAa9X,EAAIl2B,EAAM,EAAG,GAC3C8qC,EAAYxyC,KAAKkyC,SAASxkC,EAAGC,EAAGC,GAChCukC,EAAcK,IAEd5kC,EAAI,EACJ4kC,EAAYxyC,KAAKkyC,SAASxkC,EAAGC,EAAGC,GAChCukC,EAAcnyC,KAAKsnC,aAGnBkL,EAAY,OACZL,EAAcnyC,KAAKsnC,WAGvBiK,EAAIO,UAAY9xC,KAAK41C,gBAAgB7X,GACrCwT,EAAIiB,UAAYA,EAChBjB,EAAIY,YAAcA,EAClBZ,EAAIa,YACJb,EAAIc,OAAOtU,EAAMsQ,OAAOzQ,EAAGG,EAAMsQ,OAAOptB,GACxCswB,EAAIe,OAAOT,EAAMxD,OAAOzQ,EAAGiU,EAAMxD,OAAOptB,GACxCswB,EAAIe,OAAO0C,EAAM3G,OAAOzQ,EAAGoX,EAAM3G,OAAOptB,GACxCswB,EAAIe,OAAOzpC,EAAIwlC,OAAOzQ,EAAG/0B,EAAIwlC,OAAOptB,GACpCswB,EAAIkB,YACJlB,EAAI9J,OACJ8J,EAAI7J,cAKN,KAAKjhC,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IACtCs3B,EAAQ/9B,KAAKmmC,WAAW1/B,GACxBorC,EAAQ7xC,KAAKmmC,WAAW1/B,GAAG8nC,WAC3B1lC,EAAM7I,KAAKmmC,WAAW1/B,GAAG+nC,SAEXjoC,SAAVw3B,GAAiCx3B,SAAVsrC,IAEzBqD,GAAQnX,EAAMA,MAAMqK,EAAIyJ,EAAM9T,MAAMqK,GAAK,EACzC16B,EAAmE,KAA9D,GAAKwnC,EAAOl1C,KAAK+mC,MAAQ/mC,KAAKgF,MAAMojC,EAAIpoC,KAAK2lC,eAElD4L,EAAIO,UAA0C,EAA9B9xC,KAAK41C,gBAAgB7X,GACrCwT,EAAIY,YAAcnyC,KAAKkyC,SAASxkC,EAAG,EAAG,GACtC6jC,EAAIa,YACJb,EAAIc,OAAOtU,EAAMsQ,OAAOzQ,EAAGG,EAAMsQ,OAAOptB,GACxCswB,EAAIe,OAAOT,EAAMxD,OAAOzQ,EAAGiU,EAAMxD,OAAOptB,GACxCswB,EAAI7J,UAGQnhC,SAAVw3B,GAA+Bx3B,SAARsC,IAEzBqsC,GAAQnX,EAAMA,MAAMqK,EAAIv/B,EAAIk1B,MAAMqK,GAAK,EACvC16B,EAAmE,KAA9D,GAAKwnC,EAAOl1C,KAAK+mC,MAAQ/mC,KAAKgF,MAAMojC,EAAIpoC,KAAK2lC,eAElD4L,EAAIO,UAA0C,EAA9B9xC,KAAK41C,gBAAgB7X,GACrCwT,EAAIY,YAAcnyC,KAAKkyC,SAASxkC,EAAG,EAAG,GACtC6jC,EAAIa,YACJb,EAAIc,OAAOtU,EAAMsQ,OAAOzQ,EAAGG,EAAMsQ,OAAOptB,GACxCswB,EAAIe,OAAOzpC,EAAIwlC,OAAOzQ,EAAG/0B,EAAIwlC,OAAOptB,GACpCswB,EAAI7J,YAMd1mC,EAAQiS,UAAU2iC,gBAAkB,SAAU7X,GAC5C,MAAcx3B,UAAVw3B,EACE/9B,KAAKqlC,gBACA,GAAKtH,EAAMqQ,MAAMhG,EAAIpoC,KAAKwnC,UAAUG,cAElC3nC,KAAKimC,IAAImC,EAAIpoC,KAAK8lC,OAAOwE,gBAAkBtqC,KAAKwnC,UAAUG,YAIhE3nC,KAAKwnC,UAAUG;EAOxB3mC,EAAQiS,UAAUm+B,eAAiB,WACjC,GAEI3qC,GAFAgkC,EAASzqC,KAAKwqC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAG5B,MAAwBjrC,SAApBvG,KAAKmmC,YAA4BnmC,KAAKmmC,WAAW7/B,QAAU,GAA/D,CAGA,IAAKG,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IAAK,CAC3C,GAAI2nC,GAAQpuC,KAAK4oC,2BAA2B5oC,KAAKmmC,WAAW1/B,GAAGs3B,OAC3DsQ,EAASruC,KAAK6oC,4BAA4BuF,EAC9CpuC,MAAKmmC,WAAW1/B,GAAG2nC,MAAQA,EAC3BpuC,KAAKmmC,WAAW1/B,GAAG4nC,OAASA,CAG5B,IAAIgH,GAAcr1C,KAAK4oC,2BAA2B5oC,KAAKmmC,WAAW1/B,GAAG6nC,OACrEtuC,MAAKmmC,WAAW1/B,GAAG6uC,KAAOt1C,KAAKqlC,gBAAkBgQ,EAAY/uC,UAAY+uC,EAAYjN,EAIvF,GAAImN,GAAY,SAAmBrvC,EAAGC,GACpC,MAAOA,GAAEmvC,KAAOpvC,EAAEovC,KAEpBt1C,MAAKmmC,WAAWznB,KAAK62B,EAGrB,IAAI3D,GAAU5xC,KAAKwqC,MAAME,YAAc1qC,KAAK4nC,YAC5C,KAAKnhC,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IAAK,CAC3C,GAAIs3B,GAAQ/9B,KAAKmmC,WAAW1/B,EAE5B,IAAIzG,KAAK8O,QAAU9N,EAAQmkC,MAAMiG,QAAS,CAGxC,GAAIh2B,GAAOpV,KAAKyoC,eAAe1K,EAAMuQ,OACrCiD,GAAIO,UAAY,EAChBP,EAAIY,YAAcnyC,KAAKunC,UACvBgK,EAAIa,YACJb,EAAIc,OAAOj9B,EAAKwoB,EAAGxoB,EAAK6L,GACxBswB,EAAIe,OAAOvU,EAAMsQ,OAAOzQ,EAAGG,EAAMsQ,OAAOptB,GACxCswB,EAAI7J,SAIN,GAAIzJ,EAEFA,GADEj+B,KAAK8O,QAAU9N,EAAQmkC,MAAMmG,QACxBsG,EAAU,EAAI,EAAIA,GAAW7T,EAAMA,MAAMh5B,MAAQ/E,KAAKknC,WAAalnC,KAAKmnC,SAAWnnC,KAAKknC,UAExF0K,CAGT,IAAIiE,EAEFA,GADE71C,KAAKqlC,gBACEpH,GAAQF,EAAMqQ,MAAMhG,EAEpBnK,IAASj+B,KAAKimC,IAAImC,EAAIpoC,KAAK8lC,OAAOwE,gBAEhC,EAATuL,IACFA,EAAS,EAGX,IAAIpnC,GAAKhC,EAAOq+B,CACZ9qC,MAAK8O,QAAU9N,EAAQmkC,MAAMkG,UAE/B58B,EAAqE,KAA9D,GAAKsvB,EAAMA,MAAMh5B,MAAQ/E,KAAKknC,UAAYlnC,KAAKgF,MAAMD,OAC5D0H,EAAQzM,KAAKkyC,SAASzjC,EAAK,EAAG,GAC9Bq8B,EAAc9qC,KAAKkyC,SAASzjC,EAAK,EAAG,KAC3BzO,KAAK8O,QAAU9N,EAAQmkC,MAAMmG,SACtC7+B,EAAQzM,KAAKwnC,UAAUC,KACvBqD,EAAc9qC,KAAKwnC,UAAUE,SAG7Bj5B,EAA8E,KAAvE,GAAKsvB,EAAMA,MAAMqK,EAAIpoC,KAAK+mC,MAAQ/mC,KAAKgF,MAAMojC,EAAIpoC,KAAK2lC,eAC7Dl5B,EAAQzM,KAAKkyC,SAASzjC,EAAK,EAAG,GAC9Bq8B,EAAc9qC,KAAKkyC,SAASzjC,EAAK,EAAG,KAItC8iC,EAAIO,UAAY9xC,KAAK41C,gBAAgB7X,GACrCwT,EAAIY,YAAcrH,EAClByG,EAAIiB,UAAY/lC,EAChB8kC,EAAIa,YACJb,EAAIuE,IAAI/X,EAAMsQ,OAAOzQ,EAAGG,EAAMsQ,OAAOptB,EAAG40B,EAAQ,EAAa,EAAV5wC,KAAK8wC,IAAQ,GAChExE,EAAI9J,OACJ8J,EAAI7J,YAQR1mC,EAAQiS,UAAUk+B,eAAiB,WACjC,GAEI1qC,GAAGgK,EAAGulC,EAASC,EAFfxL,EAASzqC,KAAKwqC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAG5B,MAAwBjrC,SAApBvG,KAAKmmC,YAA4BnmC,KAAKmmC,WAAW7/B,QAAU,GAA/D,CAGA,IAAKG,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IAAK,CAC3C,GAAI2nC,GAAQpuC,KAAK4oC,2BAA2B5oC,KAAKmmC,WAAW1/B,GAAGs3B,OAC3DsQ,EAASruC,KAAK6oC,4BAA4BuF,EAC9CpuC,MAAKmmC,WAAW1/B,GAAG2nC,MAAQA,EAC3BpuC,KAAKmmC,WAAW1/B,GAAG4nC,OAASA,CAG5B,IAAIgH,GAAcr1C,KAAK4oC,2BAA2B5oC,KAAKmmC,WAAW1/B,GAAG6nC,OACrEtuC,MAAKmmC,WAAW1/B,GAAG6uC,KAAOt1C,KAAKqlC,gBAAkBgQ,EAAY/uC,UAAY+uC,EAAYjN,EAIvF,GAAImN,GAAY,SAAmBrvC,EAAGC,GACpC,MAAOA,GAAEmvC,KAAOpvC,EAAEovC,KAEpBt1C,MAAKmmC,WAAWznB,KAAK62B,GAErBhE,EAAI4D,SAAW,QACf5D,EAAI6D,QAAU,OAGd,IAAIc,GAASl2C,KAAKonC,UAAY,EAC1B+O,EAASn2C,KAAKqnC,UAAY,CAC9B,KAAK5gC,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IAAK,CAC3C,GAGIgI,GAAKhC,EAAOq+B,EAHZ/M,EAAQ/9B,KAAKmmC,WAAW1/B,EAIxBzG,MAAK8O,QAAU9N,EAAQmkC,MAAM+F,UAE/Bz8B,EAAqE,KAA9D,GAAKsvB,EAAMA,MAAMh5B,MAAQ/E,KAAKknC,UAAYlnC,KAAKgF,MAAMD,OAC5D0H,EAAQzM,KAAKkyC,SAASzjC,EAAK,EAAG,GAC9Bq8B,EAAc9qC,KAAKkyC,SAASzjC,EAAK,EAAG,KAC3BzO,KAAK8O,QAAU9N,EAAQmkC,MAAMgG,SACtC1+B,EAAQzM,KAAKwnC,UAAUC,KACvBqD,EAAc9qC,KAAKwnC,UAAUE,SAG7Bj5B,EAA8E,KAAvE,GAAKsvB,EAAMA,MAAMqK,EAAIpoC,KAAK+mC,MAAQ/mC,KAAKgF,MAAMojC,EAAIpoC,KAAK2lC,eAC7Dl5B,EAAQzM,KAAKkyC,SAASzjC,EAAK,EAAG,GAC9Bq8B,EAAc9qC,KAAKkyC,SAASzjC,EAAK,EAAG,KAIlCzO,KAAK8O,QAAU9N,EAAQmkC,MAAMgG,UAC/B+K,EAASl2C,KAAKonC,UAAY,IAAMrJ,EAAMA,MAAMh5B,MAAQ/E,KAAKknC,WAAalnC,KAAKmnC,SAAWnnC,KAAKknC,UAAY,GAAM,IAC7GiP,EAASn2C,KAAKqnC,UAAY,IAAMtJ,EAAMA,MAAMh5B,MAAQ/E,KAAKknC,WAAalnC,KAAKmnC,SAAWnnC,KAAKknC,UAAY,GAAM,IAI/G,IAAIlH,GAAKhgC,KACL0oC,EAAU3K,EAAMA,MAChBl1B,IAASk1B,MAAO,GAAI18B,GAAQqnC,EAAQ9K,EAAIsY,EAAQxN,EAAQznB,EAAIk1B,EAAQzN,EAAQN,KAAQrK,MAAO,GAAI18B,GAAQqnC,EAAQ9K,EAAIsY,EAAQxN,EAAQznB,EAAIk1B,EAAQzN,EAAQN,KAAQrK,MAAO,GAAI18B,GAAQqnC,EAAQ9K,EAAIsY,EAAQxN,EAAQznB,EAAIk1B,EAAQzN,EAAQN,KAAQrK,MAAO,GAAI18B,GAAQqnC,EAAQ9K,EAAIsY,EAAQxN,EAAQznB,EAAIk1B,EAAQzN,EAAQN,KAC7SkG,IAAYvQ,MAAO,GAAI18B,GAAQqnC,EAAQ9K,EAAIsY,EAAQxN,EAAQznB,EAAIk1B,EAAQn2C,KAAK+mC,QAAWhJ,MAAO,GAAI18B,GAAQqnC,EAAQ9K,EAAIsY,EAAQxN,EAAQznB,EAAIk1B,EAAQn2C,KAAK+mC,QAAWhJ,MAAO,GAAI18B,GAAQqnC,EAAQ9K,EAAIsY,EAAQxN,EAAQznB,EAAIk1B,EAAQn2C,KAAK+mC,QAAWhJ,MAAO,GAAI18B,GAAQqnC,EAAQ9K,EAAIsY,EAAQxN,EAAQznB,EAAIk1B,EAAQn2C,KAAK+mC,OAGjTl+B,GAAIS,QAAQ,SAAUxD,GACpBA,EAAIuoC,OAASrO,EAAGyI,eAAe3iC,EAAIi4B,SAErCuQ,EAAOhlC,QAAQ,SAAUxD,GACvBA,EAAIuoC,OAASrO,EAAGyI,eAAe3iC,EAAIi4B,QAIrC,IAAIqY,KAAcH,QAASptC,EAAKwtC,OAAQh1C,EAAQi1C,IAAIhI,EAAO,GAAGvQ,MAAOuQ,EAAO,GAAGvQ,SAAYkY,SAAUptC,EAAI,GAAIA,EAAI,GAAIylC,EAAO,GAAIA,EAAO,IAAK+H,OAAQh1C,EAAQi1C,IAAIhI,EAAO,GAAGvQ,MAAOuQ,EAAO,GAAGvQ,SAAYkY,SAAUptC,EAAI,GAAIA,EAAI,GAAIylC,EAAO,GAAIA,EAAO,IAAK+H,OAAQh1C,EAAQi1C,IAAIhI,EAAO,GAAGvQ,MAAOuQ,EAAO,GAAGvQ,SAAYkY,SAAUptC,EAAI,GAAIA,EAAI,GAAIylC,EAAO,GAAIA,EAAO,IAAK+H,OAAQh1C,EAAQi1C,IAAIhI,EAAO,GAAGvQ,MAAOuQ,EAAO,GAAGvQ,SAAYkY,SAAUptC,EAAI,GAAIA,EAAI,GAAIylC,EAAO,GAAIA,EAAO,IAAK+H,OAAQh1C,EAAQi1C,IAAIhI,EAAO,GAAGvQ,MAAOuQ,EAAO,GAAGvQ,QAI/f,KAHAA,EAAMqY,SAAWA,EAGZ3lC,EAAI,EAAGA,EAAI2lC,EAAS9vC,OAAQmK,IAAK,CACpCulC,EAAUI,EAAS3lC,EACnB,IAAI8lC,GAAcv2C,KAAK4oC,2BAA2BoN,EAAQK,OAC1DL,GAAQV,KAAOt1C,KAAKqlC,gBAAkBkR,EAAYjwC,UAAYiwC,EAAYnO,EAwB5E,IAjBAgO,EAAS13B,KAAK,SAAUxY,EAAGC,GACzB,GAAI+hB,GAAO/hB,EAAEmvC,KAAOpvC,EAAEovC,IACtB,OAAIptB,GAAaA,EAGbhiB,EAAE+vC,UAAYptC,EAAY,EAC1B1C,EAAE8vC,UAAYptC,EAAY,GAGvB,IAIT0oC,EAAIO,UAAY9xC,KAAK41C,gBAAgB7X,GACrCwT,EAAIY,YAAcrH,EAClByG,EAAIiB,UAAY/lC,EAEXgE,EAAI,EAAGA,EAAI2lC,EAAS9vC,OAAQmK,IAC/BulC,EAAUI,EAAS3lC,GACnBwlC,EAAUD,EAAQC,QAClB1E,EAAIa,YACJb,EAAIc,OAAO4D,EAAQ,GAAG5H,OAAOzQ,EAAGqY,EAAQ,GAAG5H,OAAOptB,GAClDswB,EAAIe,OAAO2D,EAAQ,GAAG5H,OAAOzQ,EAAGqY,EAAQ,GAAG5H,OAAOptB,GAClDswB,EAAIe,OAAO2D,EAAQ,GAAG5H,OAAOzQ,EAAGqY,EAAQ,GAAG5H,OAAOptB,GAClDswB,EAAIe,OAAO2D,EAAQ,GAAG5H,OAAOzQ,EAAGqY,EAAQ,GAAG5H,OAAOptB,GAClDswB,EAAIe,OAAO2D,EAAQ,GAAG5H,OAAOzQ,EAAGqY,EAAQ,GAAG5H,OAAOptB,GAClDswB,EAAI9J,OACJ8J,EAAI7J,YASV1mC,EAAQiS,UAAUi+B,gBAAkB,WAClC,GAEInT,GACAt3B,EAHAgkC,EAASzqC,KAAKwqC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAI5B,MAAwBjrC,SAApBvG,KAAKmmC,YAA4BnmC,KAAKmmC,WAAW7/B,QAAU,GAA/D,CAGA,IAAKG,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IAAK,CAC3C,GAAI2nC,GAAQpuC,KAAK4oC,2BAA2B5oC,KAAKmmC,WAAW1/B,GAAGs3B,OAC3DsQ,EAASruC,KAAK6oC,4BAA4BuF,EAE9CpuC,MAAKmmC,WAAW1/B,GAAG2nC,MAAQA,EAC3BpuC,KAAKmmC,WAAW1/B,GAAG4nC,OAASA,EAI9B,GAAIruC,KAAKmmC,WAAW7/B,OAAS,EAAG,CAW9B,IAVAy3B,EAAQ/9B,KAAKmmC,WAAW,GAExBoL,EAAIO,UAAY9xC,KAAK41C,gBAAgB7X,GACrCwT,EAAI4D,SAAW,QACf5D,EAAI6D,QAAU,QACd7D,EAAIY,YAAcnyC,KAAKwnC,UAAUE,OACjC6J,EAAIa,YACJb,EAAIc,OAAOtU,EAAMsQ,OAAOzQ,EAAGG,EAAMsQ,OAAOptB,GAGnCxa,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IACtCs3B,EAAQ/9B,KAAKmmC,WAAW1/B,GACxB8qC,EAAIe,OAAOvU,EAAMsQ,OAAOzQ,EAAGG,EAAMsQ,OAAOptB,EAI1CswB,GAAI7J,YASR1mC,EAAQiS,UAAU+7B,aAAe,SAAUlkC,GAWzC,GAVAA,EAAQA,GAASC,OAAOD,MAIpB9K,KAAKw2C,gBACPx2C,KAAKy2C,WAAW3rC,GAIlB9K,KAAKw2C,eAAiB1rC,EAAM4rC,MAAwB,IAAhB5rC,EAAM4rC,MAA+B,IAAjB5rC,EAAM6rC,OACzD32C,KAAKw2C,gBAAmBx2C,KAAK42C,UAAlC,CAGA52C,KAAK62C,YAAchP,EAAU/8B,GAC7B9K,KAAK82C,YAAc9O,EAAUl9B,GAE7B9K,KAAK+2C,WAAa,GAAI1xC,MAAKrF,KAAK4yC,OAChC5yC,KAAKg3C,SAAW,GAAI3xC,MAAKrF,KAAK8yC,KAC9B9yC,KAAKi3C,iBAAmBj3C,KAAK8lC,OAAOwK,iBAEpCtwC,KAAKwqC,MAAM17B,MAAMooC,OAAS,MAK1B,IAAIlX,GAAKhgC,IACTA,MAAKm3C,YAAc,SAAUrsC,GAC3Bk1B,EAAGoX,aAAatsC,IAElB9K,KAAKq3C,UAAY,SAAUvsC,GACzBk1B,EAAGyW,WAAW3rC,IAEhBnK,EAAKwJ,iBAAiBizB,SAAU,YAAa4C,EAAGmX,aAChDx2C,EAAKwJ,iBAAiBizB,SAAU,UAAW4C,EAAGqX,WAC9C12C,EAAKkK,eAAeC,KAQtB9J,EAAQiS,UAAUmkC,aAAe,SAAUtsC,GACzCA,EAAQA,GAASC,OAAOD,KAGxB,IAAIwsC,GAAQltB,WAAWyd,EAAU/8B,IAAU9K,KAAK62C,YAC5CU,EAAQntB,WAAW4d,EAAUl9B,IAAU9K,KAAK82C,YAE5CU,EAAgBx3C,KAAKi3C,iBAAiB/G,WAAaoH,EAAQ,IAC3DG,EAAcz3C,KAAKi3C,iBAAiB9G,SAAWoH,EAAQ,IAEvDG,EAAY,EACZC,EAAY1yC,KAAKqkC,IAAIoO,EAAY,IAAM,EAAIzyC,KAAK8wC,GAIhD9wC,MAAK8R,IAAI9R,KAAKqkC,IAAIkO,IAAkBG,IACtCH,EAAgBvyC,KAAKsjB,MAAMivB,EAAgBvyC,KAAK8wC,IAAM9wC,KAAK8wC,GAAK,MAE9D9wC,KAAK8R,IAAI9R,KAAKwkC,IAAI+N,IAAkBG,IACtCH,GAAiBvyC,KAAKsjB,MAAMivB,EAAgBvyC,KAAK8wC,GAAK,IAAO,IAAO9wC,KAAK8wC,GAAK,MAI5E9wC,KAAK8R,IAAI9R,KAAKqkC,IAAImO,IAAgBE,IACpCF,EAAcxyC,KAAKsjB,MAAMkvB,EAAcxyC,KAAK8wC,IAAM9wC,KAAK8wC,IAErD9wC,KAAK8R,IAAI9R,KAAKwkC,IAAIgO,IAAgBE,IACpCF,GAAexyC,KAAKsjB,MAAMkvB,EAAcxyC,KAAK8wC,GAAK,IAAO,IAAO9wC,KAAK8wC,IAGvE/1C,KAAK8lC,OAAOC,eAAeyR,EAAeC,GAC1Cz3C,KAAK0sC,QAGL,IAAIkL,GAAa53C,KAAKqwC,mBACtBrwC,MAAK63C,KAAK,uBAAwBD,GAElCj3C,EAAKkK,eAAeC,IAQtB9J,EAAQiS,UAAUwjC,WAAa,SAAU3rC,GACvC9K,KAAKwqC,MAAM17B,MAAMooC,OAAS,OAC1Bl3C,KAAKw2C,gBAAiB,EAGtB71C,EAAKgK,oBAAoByyB,SAAU,YAAap9B,KAAKm3C,aACrDx2C,EAAKgK,oBAAoByyB,SAAU,UAAWp9B,KAAKq3C,WACnD12C,EAAKkK,eAAeC,IAOtB9J,EAAQiS,UAAUq8B,WAAa,SAAUxkC,GACvC,GAAI63B,GAAQ,IACRmV,EAAe93C,KAAKwqC,MAAM9hC,wBAC1BqvC,EAASlQ,EAAU/8B,GAASgtC,EAAanvC,KACzCqvC,EAAShQ,EAAUl9B,GAASgtC,EAAajvC,GAE7C,IAAK7I,KAAK0lC,YAAV,CASA,GALI1lC,KAAKi4C,gBACP3U,aAAatjC,KAAKi4C,gBAIhBj4C,KAAKw2C,eAEP,WADAx2C,MAAKk4C,cAIP,IAAIl4C,KAAK4wC,SAAW5wC,KAAK4wC,QAAQuH,UAAW,CAE1C,GAAIA,GAAYn4C,KAAKo4C,iBAAiBL,EAAQC,EAC1CG,KAAcn4C,KAAK4wC,QAAQuH,YAEzBA,EACFn4C,KAAKq4C,aAAaF,GAElBn4C,KAAKk4C,oBAGJ,CAEL,GAAIlY,GAAKhgC,IACTA,MAAKi4C,eAAiB/tC,WAAW,WAC/B81B,EAAGiY,eAAiB,IAGpB,IAAIE,GAAYnY,EAAGoY,iBAAiBL,EAAQC,EACxCG,IACFnY,EAAGqY,aAAaF,IAEjBxV,MAOP3hC,EAAQiS,UAAUi8B,cAAgB,SAAUpkC,GAC1C9K,KAAK42C,WAAY,CAEjB,IAAI5W,GAAKhgC,IACTA,MAAKs4C,YAAc,SAAUxtC,GAC3Bk1B,EAAGuY,aAAaztC,IAElB9K,KAAKw4C,WAAa,SAAU1tC,GAC1Bk1B,EAAGyY,YAAY3tC,IAEjBnK,EAAKwJ,iBAAiBizB,SAAU,YAAa4C,EAAGsY,aAChD33C,EAAKwJ,iBAAiBizB,SAAU,WAAY4C,EAAGwY,YAE/Cx4C,KAAKgvC,aAAalkC,IAMpB9J,EAAQiS,UAAUslC,aAAe,SAAUztC,GACzC9K,KAAKo3C,aAAatsC,IAMpB9J,EAAQiS,UAAUwlC,YAAc,SAAU3tC,GACxC9K,KAAK42C,WAAY,EAEjBj2C,EAAKgK,oBAAoByyB,SAAU,YAAap9B,KAAKs4C,aACrD33C,EAAKgK,oBAAoByyB,SAAU,WAAYp9B,KAAKw4C,YAEpDx4C,KAAKy2C,WAAW3rC,IAQlB9J,EAAQiS,UAAUm8B,SAAW,SAAUtkC,GAChCA,IACHA,EAAQC,OAAOD,MAGjB,IAAIihB,GAAQ,CAcZ,IAbIjhB,EAAM4tC,WAER3sB,EAAQjhB,EAAM4tC,WAAa,IAClB5tC,EAAM6tC,SAIf5sB,GAASjhB,EAAM6tC,OAAS,GAMtB5sB,EAAO,CACT,GAAI6sB,GAAY54C,KAAK8lC,OAAOwE,eACxBuO,EAAYD,GAAa,EAAI7sB,EAAQ,GAEzC/rB,MAAK8lC,OAAOE,aAAa6S,GACzB74C,KAAK0sC,SAEL1sC,KAAKk4C,eAIP,GAAIN,GAAa53C,KAAKqwC,mBACtBrwC,MAAK63C,KAAK,uBAAwBD,GAKlCj3C,EAAKkK,eAAeC,IAUtB9J,EAAQiS,UAAU6lC,gBAAkB,SAAU/a,EAAOgb,GAKnD,QAASj/B,GAAK8jB,GACZ,MAAOA,GAAI,EAAI,EAAQ,EAAJA,EAAQ,GAAK,EALlC,GAAI13B,GAAI6yC,EAAS,GACb5yC,EAAI4yC,EAAS,GACbt4C,EAAIs4C,EAAS,GAMb7lB,EAAKpZ,GAAM3T,EAAEy3B,EAAI13B,EAAE03B,IAAMG,EAAM9c,EAAI/a,EAAE+a,IAAM9a,EAAE8a,EAAI/a,EAAE+a,IAAM8c,EAAMH,EAAI13B,EAAE03B,IACrEob,EAAKl/B,GAAMrZ,EAAEm9B,EAAIz3B,EAAEy3B,IAAMG,EAAM9c,EAAI9a,EAAE8a,IAAMxgB,EAAEwgB,EAAI9a,EAAE8a,IAAM8c,EAAMH,EAAIz3B,EAAEy3B,IACrEqb,EAAKn/B,GAAM5T,EAAE03B,EAAIn9B,EAAEm9B,IAAMG,EAAM9c,EAAIxgB,EAAEwgB,IAAM/a,EAAE+a,EAAIxgB,EAAEwgB,IAAM8c,EAAMH,EAAIn9B,EAAEm9B,GAGzE,SAAc,GAAN1K,GAAiB,GAAN8lB,GAAW9lB,GAAM8lB,GAAc,GAANA,GAAiB,GAANC,GAAWD,GAAMC,GAAc,GAAN/lB,GAAiB,GAAN+lB,GAAW/lB,GAAM+lB,IAU9Gj4C,EAAQiS,UAAUmlC,iBAAmB,SAAUxa,EAAG3c,GAChD,GAAIxa,GACAyyC,EAAU,IAEdf,EAAY,KACRgB,EAAmB,KACnBC,EAAc,KACd/C,EAAS,GAAIj1C,GAAQw8B,EAAG3c,EAE5B,IAAIjhB,KAAK8O,QAAU9N,EAAQmkC,MAAM8F,KAAOjrC,KAAK8O,QAAU9N,EAAQmkC,MAAM+F,UAAYlrC,KAAK8O,QAAU9N,EAAQmkC,MAAMgG,QAE5G,IAAK1kC,EAAIzG,KAAKmmC,WAAW7/B,OAAS,EAAGG,GAAK,EAAGA,IAAK,CAChD0xC,EAAYn4C,KAAKmmC,WAAW1/B,EAC5B,IAAI2vC,GAAW+B,EAAU/B,QACzB,IAAIA,EACF,IAAK,GAAIzoC,GAAIyoC,EAAS9vC,OAAS,EAAGqH,GAAK,EAAGA,IAAK,CAE7C,GAAIqoC,GAAUI,EAASzoC,GACnBsoC,EAAUD,EAAQC,QAClBoD,GAAapD,EAAQ,GAAG5H,OAAQ4H,EAAQ,GAAG5H,OAAQ4H,EAAQ,GAAG5H,QAC9DiL,GAAarD,EAAQ,GAAG5H,OAAQ4H,EAAQ,GAAG5H,OAAQ4H,EAAQ,GAAG5H,OAClE,IAAIruC,KAAK84C,gBAAgBzC,EAAQgD,IAAcr5C,KAAK84C,gBAAgBzC,EAAQiD,GAE1E,MAAOnB,QAOf,KAAK1xC,EAAI,EAAGA,EAAIzG,KAAKmmC,WAAW7/B,OAAQG,IAAK,CAC3C0xC,EAAYn4C,KAAKmmC,WAAW1/B,EAC5B,IAAIs3B,GAAQoa,EAAU9J,MACtB,IAAItQ,EAAO,CACT,GAAIwb,GAAQt0C,KAAK8R,IAAI6mB,EAAIG,EAAMH,GAC3B4b,EAAQv0C,KAAK8R,IAAIkK,EAAI8c,EAAM9c,GAC3Bq0B,EAAOrwC,KAAKw0C,KAAKF,EAAQA,EAAQC,EAAQA,IAExB,OAAhBJ,GAA+BA,EAAP9D,IAA8B4D,EAAP5D,IAClD8D,EAAc9D,EACd6D,EAAmBhB,IAM3B,MAAOgB,IAQTn4C,EAAQiS,UAAUolC,aAAe,SAAUF,GACzC,GAAI9Z,GAASqb,EAAMC,CAEd35C,MAAK4wC,SAgCRvS,EAAUr+B,KAAK4wC,QAAQgJ,IAAIvb,QAC3Bqb,EAAO15C,KAAK4wC,QAAQgJ,IAAIF,KACxBC,EAAM35C,KAAK4wC,QAAQgJ,IAAID,MAjCvBtb,EAAUjB,SAASM,cAAc,OACjCW,EAAQvvB,MAAM4/B,SAAW,WACzBrQ,EAAQvvB,MAAM+/B,QAAU,OACxBxQ,EAAQvvB,MAAMZ,OAAS,oBACvBmwB,EAAQvvB,MAAMrC,MAAQ,UACtB4xB,EAAQvvB,MAAMb,WAAa,wBAC3BowB,EAAQvvB,MAAM+qC,aAAe,MAC7Bxb,EAAQvvB,MAAMgrC,UAAY,qCAE1BJ,EAAOtc,SAASM,cAAc,OAC9Bgc,EAAK5qC,MAAM4/B,SAAW,WACtBgL,EAAK5qC,MAAM2vB,OAAS,OACpBib,EAAK5qC,MAAM0vB,MAAQ,IACnBkb,EAAK5qC,MAAMirC,WAAa,oBAExBJ,EAAMvc,SAASM,cAAc,OAC7Bic,EAAI7qC,MAAM4/B,SAAW,WACrBiL,EAAI7qC,MAAM2vB,OAAS,IACnBkb,EAAI7qC,MAAM0vB,MAAQ,IAClBmb,EAAI7qC,MAAMZ,OAAS,oBACnByrC,EAAI7qC,MAAM+qC,aAAe,MAEzB75C,KAAK4wC,SACHuH,UAAW,KACXyB,KACEvb,QAASA,EACTqb,KAAMA,EACNC,IAAKA,KASX35C,KAAKk4C,eAELl4C,KAAK4wC,QAAQuH,UAAYA,EACO,kBAArBn4C,MAAK0lC,YACdrH,EAAQyQ,UAAY9uC,KAAK0lC,YAAYyS,EAAUpa,OAE/CM,EAAQyQ,UAAY,6BAAoCqJ,EAAUpa,MAAMH,EAAI,gCAAuCua,EAAUpa,MAAM9c,EAAI,gCAAuCk3B,EAAUpa,MAAMqK,EAAI,qBAGpM/J,EAAQvvB,MAAMnG,KAAO,IACrB01B,EAAQvvB,MAAMjG,IAAM,IACpB7I,KAAKwqC,MAAMlN,YAAYe,GACvBr+B,KAAKwqC,MAAMlN,YAAYoc,GACvB15C,KAAKwqC,MAAMlN,YAAYqc,EAGvB,IAAIK,GAAe3b,EAAQ4b,YACvBC,EAAgB7b,EAAQ8b,aACxBC,EAAaV,EAAKS,aAClBE,EAAWV,EAAIM,YACfK,EAAYX,EAAIQ,aAEhBxxC,EAAOwvC,EAAU9J,OAAOzQ,EAAIoc,EAAe,CAC/CrxC,GAAO1D,KAAKL,IAAIK,KAAKJ,IAAI8D,EAAM,IAAK3I,KAAKwqC,MAAME,YAAc,GAAKsP,GAElEN,EAAK5qC,MAAMnG,KAAOwvC,EAAU9J,OAAOzQ,EAAI,KACvC8b,EAAK5qC,MAAMjG,IAAMsvC,EAAU9J,OAAOptB,EAAIm5B,EAAa,KACnD/b,EAAQvvB,MAAMnG,KAAOA,EAAO,KAC5B01B,EAAQvvB,MAAMjG,IAAMsvC,EAAU9J,OAAOptB,EAAIm5B,EAAaF,EAAgB,KACtEP,EAAI7qC,MAAMnG,KAAOwvC,EAAU9J,OAAOzQ,EAAIyc,EAAW,EAAI,KACrDV,EAAI7qC,MAAMjG,IAAMsvC,EAAU9J,OAAOptB,EAAIq5B,EAAY,EAAI,MAOvDt5C,EAAQiS,UAAUilC,aAAe,WAC/B,GAAIl4C,KAAK4wC,QAAS,CAChB5wC,KAAK4wC,QAAQuH,UAAY,IAEzB,KAAK,GAAIpyC,KAAQ/F,MAAK4wC,QAAQgJ,IAC5B,GAAI55C,KAAK4wC,QAAQgJ,IAAI5zC,eAAeD,GAAO,CACzC,GAAI0C,GAAOzI,KAAK4wC,QAAQgJ,IAAI7zC,EACxB0C,IAAQA,EAAK4C,YACf5C,EAAK4C,WAAW3G,YAAY+D,MA6BtC5I,EAAOD,QAAUoB,GAIb,SAASnB,EAAQD,GAerB,QAASsoC,GAAQpiC,GACf,MAAIA,GAAYy0C,EAAMz0C,GAAtB,OAWF,QAASy0C,GAAMz0C,GACb,IAAK,GAAI6D,KAAOu+B,GAAQj1B,UACtBnN,EAAI6D,GAAOu+B,EAAQj1B,UAAUtJ,EAE/B,OAAO7D,GAxBTjG,EAAOD,QAAUsoC,EAoCjBA,EAAQj1B,UAAUmsB,GAClB8I,EAAQj1B,UAAU9I,iBAAmB,SAASW,EAAOjB,GAInD,MAHA7J,MAAKw6C,WAAax6C,KAAKw6C,gBACtBx6C,KAAKw6C,WAAW1vC,GAAS9K,KAAKw6C,WAAW1vC,QACvCtD,KAAKqC,GACD7J,MAaTkoC,EAAQj1B,UAAUwnC,KAAO,SAAS3vC,EAAOjB,GAIvC,QAASu1B,KACPsb,EAAKnb,IAAIz0B,EAAOs0B,GAChBv1B,EAAGkJ,MAAM/S,KAAMqG,WALjB,GAAIq0C,GAAO16C,IAUX,OATAA,MAAKw6C,WAAax6C,KAAKw6C,eAOvBpb,EAAGv1B,GAAKA,EACR7J,KAAKo/B,GAAGt0B,EAAOs0B,GACRp/B,MAaTkoC,EAAQj1B,UAAUssB,IAClB2I,EAAQj1B,UAAU0nC,eAClBzS,EAAQj1B,UAAU2nC,mBAClB1S,EAAQj1B,UAAUtI,oBAAsB,SAASG,EAAOjB,GAItD,GAHA7J,KAAKw6C,WAAax6C,KAAKw6C,eAGnB,GAAKn0C,UAAUC,OAEjB,MADAtG,MAAKw6C,cACEx6C,IAIT,IAAI66C,GAAY76C,KAAKw6C,WAAW1vC,EAChC,KAAK+vC,EAAW,MAAO76C,KAGvB,IAAI,GAAKqG,UAAUC,OAEjB,aADOtG,MAAKw6C,WAAW1vC,GAChB9K,IAKT,KAAK,GADD86C,GACKr0C,EAAI,EAAGA,EAAIo0C,EAAUv0C,OAAQG,IAEpC,GADAq0C,EAAKD,EAAUp0C,GACXq0C,IAAOjxC,GAAMixC,EAAGjxC,KAAOA,EAAI,CAC7BgxC,EAAUxxC,OAAO5C,EAAG,EACpB,OAGJ,MAAOzG,OAWTkoC,EAAQj1B,UAAU4kC,KAAO,SAAS/sC,GAChC9K,KAAKw6C,WAAax6C,KAAKw6C,cACvB,IAAIj0B,MAAUrZ,MAAM3M,KAAK8F,UAAW,GAChCw0C,EAAY76C,KAAKw6C,WAAW1vC,EAEhC,IAAI+vC,EAAW,CACbA,EAAYA,EAAU3tC,MAAM,EAC5B,KAAK,GAAIzG,GAAI,EAAGiB,EAAMmzC,EAAUv0C,OAAYoB,EAAJjB,IAAWA,EACjDo0C,EAAUp0C,GAAGsM,MAAM/S,KAAMumB,GAI7B,MAAOvmB,OAWTkoC,EAAQj1B,UAAU8nC,UAAY,SAASjwC,GAErC,MADA9K,MAAKw6C,WAAax6C,KAAKw6C,eAChBx6C,KAAKw6C,WAAW1vC,QAWzBo9B,EAAQj1B,UAAU+nC,aAAe,SAASlwC,GACxC,QAAU9K,KAAK+6C,UAAUjwC,GAAOxE,SAM9B,SAASzG,EAAQD,GAUrB,QAASyB,GAAQu8B,EAAG3c,EAAGmnB,GACrBpoC,KAAK49B,EAAUr3B,SAANq3B,EAAkBA,EAAI,EAC/B59B,KAAKihB,EAAU1a,SAAN0a,EAAkBA,EAAI,EAC/BjhB,KAAKooC,EAAU7hC,SAAN6hC,EAAkBA,EAAI,EASjC/mC,EAAQ8nB,SAAW,SAAUjjB,EAAGC,GAC9B,GAAI80C,GAAM,GAAI55C,EAId,OAHA45C,GAAIrd,EAAI13B,EAAE03B,EAAIz3B,EAAEy3B,EAChBqd,EAAIh6B,EAAI/a,EAAE+a,EAAI9a,EAAE8a,EAChBg6B,EAAI7S,EAAIliC,EAAEkiC,EAAIjiC,EAAEiiC,EACT6S,GAST55C,EAAQ4kB,IAAM,SAAU/f,EAAGC,GACzB,GAAI+0C,GAAM,GAAI75C,EAId,OAHA65C,GAAItd,EAAI13B,EAAE03B,EAAIz3B,EAAEy3B,EAChBsd,EAAIj6B,EAAI/a,EAAE+a,EAAI9a,EAAE8a,EAChBi6B,EAAI9S,EAAIliC,EAAEkiC,EAAIjiC,EAAEiiC,EACT8S,GAST75C,EAAQi1C,IAAM,SAAUpwC,EAAGC,GACzB,MAAO,IAAI9E,IAAS6E,EAAE03B,EAAIz3B,EAAEy3B,GAAK,GAAI13B,EAAE+a,EAAI9a,EAAE8a,GAAK,GAAI/a,EAAEkiC,EAAIjiC,EAAEiiC,GAAK,IAUrE/mC,EAAQs0C,aAAe,SAAUzvC,EAAGC,GAClC,GAAIuvC,GAAe,GAAIr0C,EAMvB,OAJAq0C,GAAa9X,EAAI13B,EAAE+a,EAAI9a,EAAEiiC,EAAIliC,EAAEkiC,EAAIjiC,EAAE8a,EACrCy0B,EAAaz0B,EAAI/a,EAAEkiC,EAAIjiC,EAAEy3B,EAAI13B,EAAE03B,EAAIz3B,EAAEiiC,EACrCsN,EAAatN,EAAIliC,EAAE03B,EAAIz3B,EAAE8a,EAAI/a,EAAE+a,EAAI9a,EAAEy3B,EAE9B8X,GAOTr0C,EAAQ4R,UAAU3M,OAAS,WACzB,MAAOrB,MAAKw0C,KAAKz5C,KAAK49B,EAAI59B,KAAK49B,EAAI59B,KAAKihB,EAAIjhB,KAAKihB,EAAIjhB,KAAKooC,EAAIpoC,KAAKooC,IAGrEvoC,EAAOD,QAAUyB,GAIb,SAASxB,EAAQD,GASrB,QAASwB,GAAQw8B,EAAG3c,GAClBjhB,KAAK49B,EAAUr3B,SAANq3B,EAAkBA,EAAI,EAC/B59B,KAAKihB,EAAU1a,SAAN0a,EAAkBA,EAAI,EAGjCphB,EAAOD,QAAUwB,GAIb,SAASvB,EAAQD,EAASM,GAgB9B,QAASgB,KACPlB,KAAKm7C,YAAc,GAAI95C,GACvBrB,KAAKo7C,eACLp7C,KAAKo7C,YAAYlL,WAAa,EAC9BlwC,KAAKo7C,YAAYjL,SAAW,EAC5BnwC,KAAKq7C,UAAY,IAEjBr7C,KAAKs7C,eAAiB,GAAIj6C,GAC1BrB,KAAKu7C,eAAiB,GAAIl6C,GAAQ,GAAM4D,KAAK8wC,GAAI,EAAG,GAEpD/1C,KAAKw7C,6BAtBP,GAAIn6C,GAAUnB,EAAoB,GA+BlCgB,GAAO+R,UAAUu1B,eAAiB,SAAU5K,EAAG3c,EAAGmnB,GAChDpoC,KAAKm7C,YAAYvd,EAAIA,EACrB59B,KAAKm7C,YAAYl6B,EAAIA,EACrBjhB,KAAKm7C,YAAY/S,EAAIA,EAErBpoC,KAAKw7C,8BAWPt6C,EAAO+R,UAAU8yB,eAAiB,SAAUmK,EAAYC,GACnC5pC,SAAf2pC,IACFlwC,KAAKo7C,YAAYlL,WAAaA,GAGf3pC,SAAb4pC,IACFnwC,KAAKo7C,YAAYjL,SAAWA,EACxBnwC,KAAKo7C,YAAYjL,SAAW,IAAGnwC,KAAKo7C,YAAYjL,SAAW,GAC3DnwC,KAAKo7C,YAAYjL,SAAW,GAAMlrC,KAAK8wC,KAAI/1C,KAAKo7C,YAAYjL,SAAW,GAAMlrC,KAAK8wC,MAGrExvC,SAAf2pC,GAAyC3pC,SAAb4pC,IAC9BnwC,KAAKw7C,8BAQTt6C,EAAO+R,UAAUq9B,eAAiB,WAChC,GAAImL,KAIJ,OAHAA,GAAIvL,WAAalwC,KAAKo7C,YAAYlL,WAClCuL,EAAItL,SAAWnwC,KAAKo7C,YAAYjL,SAEzBsL,GAOTv6C,EAAO+R,UAAU+yB,aAAe,SAAU1/B,GACzBC,SAAXD,IAEJtG,KAAKq7C,UAAY/0C,EAKbtG,KAAKq7C,UAAY,MAAMr7C,KAAKq7C,UAAY,KACxCr7C,KAAKq7C,UAAY,IAAKr7C,KAAKq7C,UAAY,GAE3Cr7C,KAAKw7C,+BAOPt6C,EAAO+R,UAAUq3B,aAAe,WAC9B,MAAOtqC,MAAKq7C,WAOdn6C,EAAO+R,UAAUi2B,kBAAoB,WACnC,MAAOlpC,MAAKs7C,gBAOdp6C,EAAO+R,UAAUs2B,kBAAoB,WACnC,MAAOvpC,MAAKu7C,gBAOdr6C,EAAO+R,UAAUuoC,2BAA6B,WAE5Cx7C,KAAKs7C,eAAe1d,EAAI59B,KAAKm7C,YAAYvd,EAAI59B,KAAKq7C,UAAYp2C,KAAKqkC,IAAItpC,KAAKo7C,YAAYlL,YAAcjrC,KAAKwkC,IAAIzpC,KAAKo7C,YAAYjL,UAChInwC,KAAKs7C,eAAer6B,EAAIjhB,KAAKm7C,YAAYl6B,EAAIjhB,KAAKq7C,UAAYp2C,KAAKwkC,IAAIzpC,KAAKo7C,YAAYlL,YAAcjrC,KAAKwkC,IAAIzpC,KAAKo7C,YAAYjL,UAChInwC,KAAKs7C,eAAelT,EAAIpoC,KAAKm7C,YAAY/S,EAAIpoC,KAAKq7C,UAAYp2C,KAAKqkC,IAAItpC,KAAKo7C,YAAYjL,UAGxFnwC,KAAKu7C,eAAe3d,EAAI34B,KAAK8wC,GAAK,EAAI/1C,KAAKo7C,YAAYjL,SACvDnwC,KAAKu7C,eAAet6B,EAAI,EACxBjhB,KAAKu7C,eAAenT,GAAKpoC,KAAKo7C,YAAYlL,YAG5CrwC,EAAOD,QAAUsB,GAIb,SAASrB,EAAQD,EAASM,GAa9B,QAASiB,GAAO6W,EAAMg0B,EAAQ0P,GAC5B17C,KAAKgY,KAAOA,EACZhY,KAAKgsC,OAASA,EACdhsC,KAAK07C,MAAQA,EAEb17C,KAAKoJ,MAAQ7C,OACbvG,KAAK+E,MAAQwB,OAGbvG,KAAK+X,OAAS2jC,EAAMzP,kBAAkBj0B,EAAKgf,MAAOh3B,KAAKgsC,QAGvDhsC,KAAK+X,OAAO2G,KAAK,SAAUxY,EAAGC,GAC5B,MAAOD,GAAIC,EAAI,EAAQA,EAAJD,EAAQ,GAAK,IAG9BlG,KAAK+X,OAAOzR,OAAS,GACvBtG,KAAKuzC,YAAY,GAInBvzC,KAAKmmC,cAELnmC,KAAKM,QAAS,EACdN,KAAK27C,eAAiBp1C,OAElBm1C,EAAM7V,kBACR7lC,KAAKM,QAAS,EACdN,KAAK47C,oBAEL57C,KAAKM,QAAS,EAvClB,GAAIQ,GAAWZ,EAAoB,GA+CnCiB,GAAO8R,UAAU4oC,SAAW,WAC1B,MAAO77C,MAAKM,QAOda,EAAO8R,UAAU6oC,kBAAoB,WAInC,IAHA,GAAIp0C,GAAM1H,KAAK+X,OAAOzR,OAElBG,EAAI,EACDzG,KAAKmmC,WAAW1/B,IACrBA,GAGF,OAAOxB,MAAKsjB,MAAM9hB,EAAIiB,EAAM,MAO9BvG,EAAO8R,UAAUygC,SAAW,WAC1B,MAAO1zC,MAAK07C,MAAMzW,aAOpB9jC,EAAO8R,UAAU8oC,UAAY,WAC3B,MAAO/7C,MAAKgsC,QAOd7qC,EAAO8R,UAAU0gC,iBAAmB,WAClC,MAAmBptC,UAAfvG,KAAKoJ,MAEFpJ,KAAK+X,OAAO/X,KAAKoJ,OAFxB,QASFjI,EAAO8R,UAAU+oC,UAAY,WAC3B,MAAOh8C,MAAK+X,QAQd5W,EAAO8R,UAAUgpC,SAAW,SAAU7yC,GACpC,GAAIA,GAASpJ,KAAK+X,OAAOzR,OAAQ,KAAM,2BAEvC,OAAOtG,MAAK+X,OAAO3O,IAQrBjI,EAAO8R,UAAU86B,eAAiB,SAAU3kC,GAG1C,GAFc7C,SAAV6C,IAAqBA,EAAQpJ,KAAKoJ,OAExB7C,SAAV6C,EAAqB,QAEzB,IAAI+8B,EACJ,IAAInmC,KAAKmmC,WAAW/8B,GAClB+8B,EAAanmC,KAAKmmC,WAAW/8B,OACxB,CACL,GAAIqG,KACJA,GAAEu8B,OAAShsC,KAAKgsC,OAChBv8B,EAAE1K,MAAQ/E,KAAK+X,OAAO3O,EAEtB,IAAI8yC,GAAW,GAAIp7C,GAASd,KAAKgY,MAAQwnB,OAAQ,SAAgBhuB,GAC7D,MAAOA,GAAK/B,EAAEu8B,SAAWv8B,EAAE1K,SACxBiyB,KACPmP,GAAanmC,KAAK07C,MAAM3N,eAAemO,GAEvCl8C,KAAKmmC,WAAW/8B,GAAS+8B,EAG3B,MAAOA,IAMThlC,EAAO8R,UAAUw5B,kBAAoB,SAAUljC,GAC7CvJ,KAAK27C,eAAiBpyC,GAQxBpI,EAAO8R,UAAUsgC,YAAc,SAAUnqC,GACvC,GAAIA,GAASpJ,KAAK+X,OAAOzR,OAAQ,KAAM,2BAEvCtG,MAAKoJ,MAAQA,EACbpJ,KAAK+E,MAAQ/E,KAAK+X,OAAO3O,IAO3BjI,EAAO8R,UAAU2oC,iBAAmB,SAAUxyC,GAC9B7C,SAAV6C,IAAqBA,EAAQ,EAEjC,IAAIohC,GAAQxqC,KAAK07C,MAAMlR,KAEvB,IAAIphC,EAAQpJ,KAAK+X,OAAOzR,OAAQ,CACTtG,KAAK+tC,eAAe3kC,EAIlB7C,UAAnBikC,EAAM2R,WACR3R,EAAM2R,SAAW/e,SAASM,cAAc,OACxC8M,EAAM2R,SAASrtC,MAAM4/B,SAAW,WAChClE,EAAM2R,SAASrtC,MAAMrC,MAAQ,OAC7B+9B,EAAMlN,YAAYkN,EAAM2R,UAE1B,IAAIA,GAAWn8C,KAAK87C,mBACpBtR,GAAM2R,SAASrN,UAAY,wBAA0BqN,EAAW,IAEhE3R,EAAM2R,SAASrtC,MAAMw/B,OAAS,OAC9B9D,EAAM2R,SAASrtC,MAAMnG,KAAO,MAE5B,IAAIq3B,GAAKhgC,IACTkK,YAAW,WACT81B,EAAG4b,iBAAiBxyC,EAAQ,IAC3B,IACHpJ,KAAKM,QAAS,MAEdN,MAAKM,QAAS,EAGSiG,SAAnBikC,EAAM2R,WACR3R,EAAM9lC,YAAY8lC,EAAM2R,UACxB3R,EAAM2R,SAAW51C,QAGfvG,KAAK27C,gBAAgB37C,KAAK27C,kBAIlC97C,EAAOD,QAAUuB,GAIb,SAAStB,EAAQD,EAASM,GAe9B,QAASoB,GAAO8iC,EAAWvgC,GACzB,GAAkB0C,SAAd69B,EACF,KAAM,qCAKR,IAHApkC,KAAKokC,UAAYA,EACjBpkC,KAAKkzC,QAAUrvC,GAA8B0C,QAAnB1C,EAAQqvC,QAAuBrvC,EAAQqvC,SAAU,EAEvElzC,KAAKkzC,QAAS,CAChBlzC,KAAKwqC,MAAQpN,SAASM,cAAc,OAEpC19B,KAAKwqC,MAAM17B,MAAM0vB,MAAQ,OACzBx+B,KAAKwqC,MAAM17B,MAAM4/B,SAAW,WAC5B1uC,KAAKokC,UAAU9G,YAAYt9B,KAAKwqC,OAEhCxqC,KAAKwqC,MAAM4R,KAAOhf,SAASM,cAAc,SACzC19B,KAAKwqC,MAAM4R,KAAKx0C,KAAO,SACvB5H,KAAKwqC,MAAM4R,KAAKr3C,MAAQ,OACxB/E,KAAKwqC,MAAMlN,YAAYt9B,KAAKwqC,MAAM4R,MAElCp8C,KAAKwqC,MAAMqF,KAAOzS,SAASM,cAAc,SACzC19B,KAAKwqC,MAAMqF,KAAKjoC,KAAO,SACvB5H,KAAKwqC,MAAMqF,KAAK9qC,MAAQ,OACxB/E,KAAKwqC,MAAMlN,YAAYt9B,KAAKwqC,MAAMqF,MAElC7vC,KAAKwqC,MAAMlzB,KAAO8lB,SAASM,cAAc,SACzC19B,KAAKwqC,MAAMlzB,KAAK1P,KAAO,SACvB5H,KAAKwqC,MAAMlzB,KAAKvS,MAAQ,OACxB/E,KAAKwqC,MAAMlN,YAAYt9B,KAAKwqC,MAAMlzB,MAElCtX,KAAKwqC,MAAM6R,IAAMjf,SAASM,cAAc,SACxC19B,KAAKwqC,MAAM6R,IAAIz0C,KAAO,SACtB5H,KAAKwqC,MAAM6R,IAAIvtC,MAAM4/B,SAAW,WAChC1uC,KAAKwqC,MAAM6R,IAAIvtC,MAAMZ,OAAS,gBAC9BlO,KAAKwqC,MAAM6R,IAAIvtC,MAAM0vB,MAAQ,QAC7Bx+B,KAAKwqC,MAAM6R,IAAIvtC,MAAM2vB,OAAS,MAC9Bz+B,KAAKwqC,MAAM6R,IAAIvtC,MAAM+qC,aAAe,MACpC75C,KAAKwqC,MAAM6R,IAAIvtC,MAAMwtC,gBAAkB,MACvCt8C,KAAKwqC,MAAM6R,IAAIvtC,MAAMZ,OAAS,oBAC9BlO,KAAKwqC,MAAM6R,IAAIvtC,MAAM+7B,gBAAkB,UACvC7qC,KAAKwqC,MAAMlN,YAAYt9B,KAAKwqC,MAAM6R,KAElCr8C,KAAKwqC,MAAM+R,MAAQnf,SAASM,cAAc,SAC1C19B,KAAKwqC,MAAM+R,MAAM30C,KAAO,SACxB5H,KAAKwqC,MAAM+R,MAAMztC,MAAMy1B,OAAS,MAChCvkC,KAAKwqC,MAAM+R,MAAMx3C,MAAQ,IACzB/E,KAAKwqC,MAAM+R,MAAMztC,MAAM4/B,SAAW,WAClC1uC,KAAKwqC,MAAM+R,MAAMztC,MAAMnG,KAAO,SAC9B3I,KAAKwqC,MAAMlN,YAAYt9B,KAAKwqC,MAAM+R,MAGlC,IAAIvc,GAAKhgC,IACTA,MAAKwqC,MAAM+R,MAAMxN,YAAc,SAAUjkC,GACvCk1B,EAAGgP,aAAalkC,IAElB9K,KAAKwqC,MAAM4R,KAAKI,QAAU,SAAU1xC,GAClCk1B,EAAGoc,KAAKtxC,IAEV9K,KAAKwqC,MAAMqF,KAAK2M,QAAU,SAAU1xC,GAClCk1B,EAAGyc,WAAW3xC,IAEhB9K,KAAKwqC,MAAMlzB,KAAKklC,QAAU,SAAU1xC,GAClCk1B,EAAG1oB,KAAKxM,IAIZ9K,KAAK08C,iBAAmBn2C,OAExBvG,KAAK+X,UACL/X,KAAKoJ,MAAQ7C,OAEbvG,KAAK28C,YAAcp2C,OACnBvG,KAAK48C,aAAe,IACpB58C,KAAK68C,UAAW,EAnFlB,GAAIl8C,GAAOT,EAAoB,EAyF/BoB,GAAO2R,UAAUmpC,KAAO,WACtB,GAAIhzC,GAAQpJ,KAAKszC,UACblqC,GAAQ,IACVA,IACApJ,KAAK88C,SAAS1zC,KAOlB9H,EAAO2R,UAAUqE,KAAO,WACtB,GAAIlO,GAAQpJ,KAAKszC,UACblqC,GAAQpJ,KAAK+X,OAAOzR,OAAS,IAC/B8C,IACApJ,KAAK88C,SAAS1zC,KAOlB9H,EAAO2R,UAAU8pC,SAAW,WAC1B,GAAInK,GAAQ,GAAIvtC,MAEZ+D,EAAQpJ,KAAKszC,UACblqC,GAAQpJ,KAAK+X,OAAOzR,OAAS,GAC/B8C,IACApJ,KAAK88C,SAAS1zC,IACLpJ,KAAK68C,WAEdzzC,EAAQ,EACRpJ,KAAK88C,SAAS1zC,GAGhB,IAAI0pC,GAAM,GAAIztC,MACV6iB,EAAO4qB,EAAMF,EAIboK,EAAW/3C,KAAKJ,IAAI7E,KAAK48C,aAAe10B,EAAM,GAG9C8X,EAAKhgC,IACTA,MAAK28C,YAAczyC,WAAW,WAC5B81B,EAAG+c,YACFC,IAML17C,EAAO2R,UAAUwpC,WAAa,WACHl2C,SAArBvG,KAAK28C,YACP38C,KAAK6vC,OAEL7vC,KAAK+vC,QAOTzuC,EAAO2R,UAAU48B,KAAO,WAElB7vC,KAAK28C,cAET38C,KAAK+8C,WAED/8C,KAAKwqC,QACPxqC,KAAKwqC,MAAMqF,KAAK9qC,MAAQ,UAO5BzD,EAAO2R,UAAU88B,KAAO,WACtBkN,cAAcj9C,KAAK28C,aACnB38C,KAAK28C,YAAcp2C,OAEfvG,KAAKwqC,QACPxqC,KAAKwqC,MAAMqF,KAAK9qC,MAAQ,SAQ5BzD,EAAO2R,UAAUugC,oBAAsB,SAAUjqC,GAC/CvJ,KAAK08C,iBAAmBnzC,GAO1BjI,EAAO2R,UAAUmgC,gBAAkB,SAAU4J,GAC3Ch9C,KAAK48C,aAAeI,GAOtB17C,EAAO2R,UAAUiqC,gBAAkB,SAAUF,GAC3C,MAAOh9C,MAAK48C,cASdt7C,EAAO2R,UAAUkqC,YAAc,SAAUC,GACvCp9C,KAAK68C,SAAWO,GAMlB97C,EAAO2R,UAAUoqC,SAAW,WACI92C,SAA1BvG,KAAK08C,kBACP18C,KAAK08C,oBAOTp7C,EAAO2R,UAAUy5B,OAAS,WACxB,GAAI1sC,KAAKwqC,MAAO,CAEdxqC,KAAKwqC,MAAM6R,IAAIvtC,MAAMjG,IAAM7I,KAAKwqC,MAAMkF,aAAe,EAAI1vC,KAAKwqC,MAAM6R,IAAIlC,aAAe,EAAI,KAC3Fn6C,KAAKwqC,MAAM6R,IAAIvtC,MAAM0vB,MAAQx+B,KAAKwqC,MAAME,YAAc1qC,KAAKwqC,MAAM4R,KAAK1R,YAAc1qC,KAAKwqC,MAAMqF,KAAKnF,YAAc1qC,KAAKwqC,MAAMlzB,KAAKozB,YAAc,GAAK,IAGrJ,IAAI/hC,GAAO3I,KAAKs9C,YAAYt9C,KAAKoJ,MACjCpJ,MAAKwqC,MAAM+R,MAAMztC,MAAMnG,KAAOA,EAAO,OAQzCrH,EAAO2R,UAAUkgC,UAAY,SAAUp7B,GACrC/X,KAAK+X,OAASA,EAEV/X,KAAK+X,OAAOzR,OAAS,EAAGtG,KAAK88C,SAAS,GAAQ98C,KAAKoJ,MAAQ7C,QAOjEjF,EAAO2R,UAAU6pC,SAAW,SAAU1zC,GACpC,KAAIA,EAAQpJ,KAAK+X,OAAOzR,QAMtB,KAAM,2BALNtG,MAAKoJ,MAAQA,EAEbpJ,KAAK0sC,SACL1sC,KAAKq9C,YAUT/7C,EAAO2R,UAAUqgC,SAAW,WAC1B,MAAOtzC,MAAKoJ,OAOd9H,EAAO2R,UAAU+jB,IAAM,WACrB,MAAOh3B,MAAK+X,OAAO/X,KAAKoJ,QAG1B9H,EAAO2R,UAAU+7B,aAAe,SAAUlkC,GAExC,GAAI0rC,GAAiB1rC,EAAM4rC,MAAwB,IAAhB5rC,EAAM4rC,MAA+B,IAAjB5rC,EAAM6rC,MAC7D,IAAKH,EAAL,CAEAx2C,KAAKu9C,aAAezyC,EAAMg9B,QAC1B9nC,KAAKw9C,YAAcpzB,WAAWpqB,KAAKwqC,MAAM+R,MAAMztC,MAAMnG,MAErD3I,KAAKwqC,MAAM17B,MAAMooC,OAAS,MAK1B,IAAIlX,GAAKhgC,IACTA,MAAKm3C,YAAc,SAAUrsC,GAC3Bk1B,EAAGoX,aAAatsC,IAElB9K,KAAKq3C,UAAY,SAAUvsC,GACzBk1B,EAAGyW,WAAW3rC,IAEhBnK,EAAKwJ,iBAAiBizB,SAAU,YAAap9B,KAAKm3C,aAClDx2C,EAAKwJ,iBAAiBizB,SAAU,UAAWp9B,KAAKq3C,WAChD12C,EAAKkK,eAAeC,KAGtBxJ,EAAO2R,UAAUwqC,YAAc,SAAU90C,GACvC,GAAI61B,GAAQpU,WAAWpqB,KAAKwqC,MAAM6R,IAAIvtC,MAAM0vB,OAASx+B,KAAKwqC,MAAM+R,MAAM7R,YAAc,GAChF9M,EAAIj1B,EAAO,EAEXS,EAAQnE,KAAKsjB,MAAMqV,EAAIY,GAASx+B,KAAK+X,OAAOzR,OAAS,GAIzD,OAHY,GAAR8C,IAAWA,EAAQ,GACnBA,EAAQpJ,KAAK+X,OAAOzR,OAAS,IAAG8C,EAAQpJ,KAAK+X,OAAOzR,OAAS,GAE1D8C,GAGT9H,EAAO2R,UAAUqqC,YAAc,SAAUl0C,GACvC,GAAIo1B,GAAQpU,WAAWpqB,KAAKwqC,MAAM6R,IAAIvtC,MAAM0vB,OAASx+B,KAAKwqC,MAAM+R,MAAM7R,YAAc,GAEhF9M,EAAIx0B,GAASpJ,KAAK+X,OAAOzR,OAAS,GAAKk4B,EACvC71B,EAAOi1B,EAAI,CAEf,OAAOj1B,IAGTrH,EAAO2R,UAAUmkC,aAAe,SAAUtsC,GACxC,GAAIod,GAAOpd,EAAMg9B,QAAU9nC,KAAKu9C,aAC5B3f,EAAI59B,KAAKw9C,YAAct1B,EAEvB9e,EAAQpJ,KAAKy9C,YAAY7f,EAE7B59B,MAAK88C,SAAS1zC,GAEdzI,EAAKkK,kBAGPvJ,EAAO2R,UAAUwjC,WAAa,SAAU3rC,GACtC9K,KAAKwqC,MAAM17B,MAAMooC,OAAS,OAG1Bv2C,EAAKgK,oBAAoByyB,SAAU,YAAap9B,KAAKm3C,aACrDx2C,EAAKgK,oBAAoByyB,SAAU,UAAWp9B,KAAKq3C,WAEnD12C,EAAKkK,kBAGPhL,EAAOD,QAAU0B,GAIb,SAASzB,EAAQD,GA6BrB,QAAS2B,GAAWqxC,EAAOE,EAAKH,EAAMiB,GAEpC5zC,KAAK09C,OAAS,EACd19C,KAAK29C,KAAO,EACZ39C,KAAK49C,MAAQ,EACb59C,KAAK4zC,YAAa,EAClB5zC,KAAK69C,UAAY,EAEjB79C,KAAK89C,SAAW,EAChB99C,KAAK+9C,SAASnL,EAAOE,EAAKH,EAAMiB,GAYlCryC,EAAW0R,UAAU8qC,SAAW,SAAUnL,EAAOE,EAAKH,EAAMiB,GAC1D5zC,KAAK09C,OAAS9K,EAAQA,EAAQ,EAC9B5yC,KAAK29C,KAAO7K,EAAMA,EAAM,EAExB9yC,KAAKg+C,QAAQrL,EAAMiB,IASrBryC,EAAW0R,UAAU+qC,QAAU,SAAUrL,EAAMiB,GAChCrtC,SAATosC,GAA8B,GAARA,IAEPpsC,SAAfqtC,IAA0B5zC,KAAK4zC,WAAaA,GAE5C5zC,KAAK4zC,cAAe,EAAM5zC,KAAK49C,MAAQr8C,EAAW08C,oBAAoBtL,GAAW3yC,KAAK49C,MAAQjL,IAUpGpxC,EAAW08C,oBAAsB,SAAUtL,GACzC,GAAIuL,GAAQ,SAAetgB,GACzB,MAAO34B,MAAKk5C,IAAIvgB,GAAK34B,KAAKm5C,MAIxBC,EAAQp5C,KAAK8U,IAAI,GAAI9U,KAAKsjB,MAAM21B,EAAMvL,KACtC2L,EAAQ,EAAIr5C,KAAK8U,IAAI,GAAI9U,KAAKsjB,MAAM21B,EAAMvL,EAAO,KACjD4L,EAAQ,EAAIt5C,KAAK8U,IAAI,GAAI9U,KAAKsjB,MAAM21B,EAAMvL,EAAO,KAGjDiB,EAAayK,CASjB,OARIp5C,MAAK8R,IAAIunC,EAAQ3L,IAAS1tC,KAAK8R,IAAI68B,EAAajB,KAAOiB,EAAa0K,GACpEr5C,KAAK8R,IAAIwnC,EAAQ5L,IAAS1tC,KAAK8R,IAAI68B,EAAajB,KAAOiB,EAAa2K,GAGtD,GAAd3K,IACFA,EAAa,GAGRA,GAOTryC,EAAW0R,UAAU4/B,WAAa,WAChC,MAAOzoB,YAAWpqB,KAAK89C,SAASU,YAAYx+C,KAAK69C,aAOnDt8C,EAAW0R,UAAUwrC,QAAU,WAC7B,MAAOz+C,MAAK49C,OAOdr8C,EAAW0R,UAAU2/B,MAAQ,WAC3B5yC,KAAK89C,SAAW99C,KAAK09C,OAAS19C,KAAK09C,OAAS19C,KAAK49C,OAMnDr8C,EAAW0R,UAAUqE,KAAO,WAC1BtX,KAAK89C,UAAY99C,KAAK49C,OAOxBr8C,EAAW0R,UAAU6/B,IAAM,WACzB,MAAO9yC,MAAK89C,SAAW99C,KAAK29C,MAG9B99C,EAAOD,QAAU2B,GAIb,SAAS1B,EAAQD,EAASM,GAgC9B,QAASsB,GAAS4iC,EAAWniC,EAAOy8C,EAAQ76C,GAC1C,KAAM7D,eAAgBwB,IACpB,KAAM,IAAI6iC,aAAY,mDAIxB,MAAMv9B,MAAMC,QAAQ23C,IAAWA,YAAkB79C,IAAW69C,YAAkB59C,KAAa49C,YAAkBt3C,QAAQ,CACnH,GAAIu3C,GAAgB96C,CACpBA,GAAU66C,EACVA,EAASC,EAGX,GAAI3e,GAAKhgC,IACTA,MAAK4+C,gBACHhM,MAAO,KACPE,IAAK,KAEL+L,YAAY,EACZC,eAAgB,EAEhBC,aACEC,KAAM,SACNxtC,KAAM,UAGRzN,OAAQA,EAERy6B,MAAO,KACPC,OAAQ,KACRwgB,UAAW,KACXC,UAAW,MAEbl/C,KAAK6D,QAAUlD,EAAK0G,cAAerH,KAAK4+C,gBAGxC5+C,KAAKm/C,QAAQ/a,GAGbpkC,KAAKgC,cAELhC,KAAKo/C,MACHxF,IAAK55C,KAAK45C,IACVyF,SAAUr/C,KAAK6G,MACfy4C,SACElgB,GAAIp/B,KAAKo/B,GAAGmgB,KAAKv/C,MACjBu/B,IAAKv/B,KAAKu/B,IAAIggB,KAAKv/C,MACnB63C,KAAM73C,KAAK63C,KAAK0H,KAAKv/C,OAEvBw/C,eACA7+C,MACE8+C,SAAU,WACR,MAAOzf,GAAG0f,SAAS/M,KAAK3tC,OAE1By5C,QAAS,WACP,MAAOze,GAAG0f,SAAS/M,KAAKA,MAG1BgN,SAAU3f,EAAG4f,UAAUL,KAAKvf,GAC5B6f,eAAgB7f,EAAG8f,gBAAgBP,KAAKvf,GACxC+f,OAAQ/f,EAAGggB,QAAQT,KAAKvf,GACxBigB,aAAcjgB,EAAGkgB,cAAcX,KAAKvf,KAKxChgC,KAAKmgD,MAAQ,GAAIt+C,GAAM7B,KAAKo/C,MAC5Bp/C,KAAKgC,WAAWwF,KAAKxH,KAAKmgD,OAC1BngD,KAAKo/C,KAAKe,MAAQngD,KAAKmgD,MAGvBngD,KAAK0/C,SAAW,GAAIx8C,GAASlD,KAAKo/C,MAClCp/C,KAAKogD,UAAY,KACjBpgD,KAAKgC,WAAWwF,KAAKxH,KAAK0/C,UAG1B1/C,KAAKqgD,YAAc,GAAI59C,GAAYzC,KAAKo/C,MACxCp/C,KAAKgC,WAAWwF,KAAKxH,KAAKqgD,aAG1BrgD,KAAKsgD,QAAU,GAAIv9C,GAAQ/C,KAAKo/C,MAChCp/C,KAAKgC,WAAWwF,KAAKxH,KAAKsgD,SAE1BtgD,KAAKugD,UAAY,KACjBvgD,KAAKwgD,WAAa,KAElBxgD,KAAKo/B,GAAG,MAAO,SAAUt0B,GACvBk1B,EAAG6X,KAAK,QAAS7X,EAAGygB,mBAAmB31C,MAEzC9K,KAAKo/B,GAAG,YAAa,SAAUt0B,GAC7Bk1B,EAAG6X,KAAK,cAAe7X,EAAGygB,mBAAmB31C,MAE/C9K,KAAK45C,IAAIl6C,KAAKghD,cAAgB,SAAU51C,GACtCk1B,EAAG6X,KAAK,cAAe7X,EAAGygB,mBAAmB31C,KAI/C9K,KAAK2gD,SAAU,EACf3gD,KAAKo/B,GAAG,UAAW,WACjB,GAAsB,MAAlBp/B,KAAKugD,YACJvgB,EAAG2gB,QAEN,GADA3gB,EAAG2gB,SAAU,EACWp6C,QAApBy5B,EAAGn8B,QAAQ+uC,OAAwCrsC,QAAlBy5B,EAAGn8B,QAAQivC,IAAkB,CAChE,GAAwBvsC,QAApBy5B,EAAGn8B,QAAQ+uC,OAAwCrsC,QAAlBy5B,EAAGn8B,QAAQivC,IAC9C,GAAIqN,GAAQngB,EAAG4gB,cAGjB,IAAIhO,GAA4BrsC,QAApBy5B,EAAGn8B,QAAQ+uC,MAAqB5S,EAAGn8B,QAAQ+uC,MAAQuN,EAAMv7C,IACjEkuC,EAAwBvsC,QAAlBy5B,EAAGn8B,QAAQivC,IAAmB9S,EAAGn8B,QAAQivC,IAAMqN,EAAMt7C,GAE/Dm7B,GAAG6gB,UAAUjO,EAAOE,GAAOgO,WAAW,QAEtC9gB,GAAG+gB,KAAMD,WAAW,MAMtBj9C,GACF7D,KAAKg/B,WAAWn7B,GAId66C,GACF1+C,KAAKghD,UAAUtC,GAIbz8C,GACFjC,KAAKihD,SAASh/C,GAIhBjC,KAAKkhD,UAhKP,GAEIn9C,IAFU7D,EAAoB,IACrBA,EAAoB,IACpBA,EAAoB,IAC7BS,EAAOT,EAAoB,GAC3BW,EAAUX,EAAoB,GAC9BY,EAAWZ,EAAoB,IAC/B2B,EAAQ3B,EAAoB,IAC5ByB,EAAOzB,EAAoB,IAC3BgD,EAAWhD,EAAoB,IAC/BuC,EAAcvC,EAAoB,IAClCwC,EAAaxC,EAAoB,IACjC6C,EAAU7C,EAAoB,IAE9BihD,EAAejhD,EAAoB,IACnCkhD,EAAYlhD,EAAoB,IAAI,WACpCmhD,EAAanhD,EAAoB,IAAImhD,WACrC79C,EAAatD,EAAoB,IAAIsD,WACrC89C,EAAmBphD,EAAoB,IAAIohD,gBAmJ/C9/C,GAASyR,UAAY,GAAItR,GAOzBH,EAASyR,UAAUsuC,oBAAsB,WACvC,MAAO,IAAIJ,GAAanhD,KAAMA,KAAK45C,IAAIxV,UAAWkd,IAUpD9/C,EAASyR,UAAUy5B,OAAS,WAC1B1sC,KAAKsgD,SAAWtgD,KAAKsgD,QAAQkB,WAAYC,cAAc,IACvDzhD,KAAKkhD,WAGP1/C,EAASyR,UAAU+rB,WAAa,SAAUn7B,GAExC,GAAI69C,GAAaN,EAAUO,SAAS99C,EAASL,EAO7C,IANIk+C,KAAe,GACjB/hC,QAAQw+B,IAAI,2DAA4DkD,GAG1E1/C,EAAKsR,UAAU+rB,WAAWz+B,KAAKP,KAAM6D,GAEjC,QAAUA,IACRA,EAAQ+D,OAAS5H,KAAK6D,QAAQ+D,KAAM,CACtC5H,KAAK6D,QAAQ+D,KAAO/D,EAAQ+D,IAG5B,IAAI24C,GAAYvgD,KAAKugD,SACrB,IAAIA,EAAW,CACb,GAAIqB,GAAY5hD,KAAK6hD,cACrB7hD,MAAKihD,SAAS,MACdjhD,KAAKihD,SAASV,GACdvgD,KAAK8hD,aAAaF,MAU1BpgD,EAASyR,UAAUguC,SAAW,SAAUh/C,GAEtC,GAAI8/C,EAIFA,GAHG9/C,EAEMA,YAAiBpB,IAAWoB,YAAiBnB,GACzCmB,EAGA,GAAIpB,GAAQoB,GACvB2F,MACEgrC,MAAO,OACPE,IAAK,UARI,KAcf9yC,KAAKugD,UAAYwB,EACjB/hD,KAAKsgD,SAAWtgD,KAAKsgD,QAAQW,SAASc,IAOxCvgD,EAASyR,UAAU+tC,UAAY,SAAUtC,GAEvC,GAAIqD,EAIFA,GAHGrD,EAEMA,YAAkB79C,IAAW69C,YAAkB59C,GAC3C49C,EAGA,GAAI79C,GAAQ69C,GALZ,KAQf1+C,KAAKwgD,WAAauB,EAClB/hD,KAAKsgD,QAAQU,UAAUe,IAOzBvgD,EAASyR,UAAUwwB,QAAU,SAAUzrB,GACjCA,GAAQA,EAAK0mC,QACf1+C,KAAKghD,UAAUhpC,EAAK0mC,QAGlB1mC,GAAQA,EAAK/V,OACfjC,KAAKihD,SAASjpC,EAAK/V,QAqBvBT,EAASyR,UAAU6uC,aAAe,SAAUrhB,EAAK58B,GAC/C7D,KAAKsgD,SAAWtgD,KAAKsgD,QAAQwB,aAAarhB,GAEtC58B,GAAWA,EAAQm+C,OACrBhiD,KAAKgiD,MAAMvhB,EAAK58B,IAQpBrC,EAASyR,UAAU4uC,aAAe,WAChC,MAAO7hD,MAAKsgD,SAAWtgD,KAAKsgD,QAAQuB,oBAetCrgD,EAASyR,UAAU+uC,MAAQ,SAAU3hD,EAAIwD,GACvC,GAAK7D,KAAKugD,WAAmBh6C,QAANlG,EAAvB,CAEA,GAAIogC,GAAM35B,MAAMC,QAAQ1G,GAAMA,GAAMA,GAGhCkgD,EAAYvgD,KAAKugD,UAAUlf,aAAarK,IAAIyJ,GAC9C74B,MACEgrC,MAAO,OACPE,IAAK,UAKLF,EAAQ,KACRE,EAAM,IAcV,IAbAyN,EAAUj3C,QAAQ,SAAU24C,GAC1B,GAAIt0C,GAAIs0C,EAASrP,MAAM9qC,UACnB0D,EAAI,OAASy2C,GAAWA,EAASnP,IAAIhrC,UAAYm6C,EAASrP,MAAM9qC,WAEtD,OAAV8qC,GAAsBA,EAAJjlC,KACpBilC,EAAQjlC,IAGE,OAARmlC,GAAgBtnC,EAAIsnC,KACtBA,EAAMtnC,KAII,OAAVonC,GAA0B,OAARE,EAAc,CAElC,GAAIvhC,IAAUqhC,EAAQE,GAAO,EACzBkK,EAAW/3C,KAAKJ,IAAI7E,KAAKmgD,MAAMrN,IAAM9yC,KAAKmgD,MAAMvN,MAAuB,KAAfE,EAAMF,IAE9DkO,EAAYj9C,GAAiC0C,SAAtB1C,EAAQi9C,UAA0Bj9C,EAAQi9C,WAAY,CACjF9gD,MAAKmgD,MAAMpC,SAASxsC,EAASyrC,EAAW,EAAGzrC,EAASyrC,EAAW,EAAG8D,MActEt/C,EAASyR,UAAU8tC,IAAM,SAAUl9C,GACjC,GAAIi9C,GAAYj9C,GAAiC0C,SAAtB1C,EAAQi9C,UAA0Bj9C,EAAQi9C,WAAY,EAC7EX,EAAQngD,KAAK4gD,cACjB5gD,MAAKmgD,MAAMpC,SAASoC,EAAMv7C,IAAKu7C,EAAMt7C,IAAKi8C,IAQ5Ct/C,EAASyR,UAAU2tC,aAAe,WAChC,GAAIsB,GAAQliD,KAGRmgD,EAAQngD,KAAKmiD,eACbv9C,EAAoB,OAAdu7C,EAAMv7C,IAAeu7C,EAAMv7C,IAAIkD,UAAY,KACjDjD,EAAoB,OAAds7C,EAAMt7C,IAAes7C,EAAMt7C,IAAIiD,UAAY,KACjDs6C,EAAU,KACVC,EAAU,IAEd,IAAW,MAAPz9C,GAAsB,MAAPC,EAAa,CAC9B,GAAIm4C,GACAsF,EACAC,EACAC,EACAz2B,GAEJ,WACE,GAAI02B,GAAW,SAAkBjxC,GAC/B,MAAO7Q,GAAKgH,QAAQ6J,EAAKwG,KAAK46B,MAAO,QAAQ9qC,WAG3C46C,EAAS,SAAgBlxC,GAC3B,GAAIshC,GAAuBvsC,QAAjBiL,EAAKwG,KAAK86B,IAAmBthC,EAAKwG,KAAK86B,IAAMthC,EAAKwG,KAAK46B,KACjE,OAAOjyC,GAAKgH,QAAQmrC,EAAK,QAAQhrC,UAMnCk1C,GAAWn4C,EAAMD,EAED,GAAZo4C,IACFA,EAAW,IAEbsF,EAAStF,EAAWkF,EAAMr7C,MAAMwvC,OAAO7X,MACvC79B,EAAK2I,QAAQ44C,EAAM5B,QAAQr+C,MAAO,SAAWuP,GAC3CA,EAAKmxC,OACLnxC,EAAKoxC,aAEL,IAAIhQ,GAAQ6P,EAASjxC,GACjBshC,EAAM4P,EAAOlxC,GAEb7I,EAAOiqC,GAASphC,EAAKqxC,eAAiB,IAAMP,EAC5CzQ,EAAQiB,GAAOthC,EAAKsxC,gBAAkB,IAAMR,CAErC19C,GAAP+D,IACF/D,EAAM+D,EACNy5C,EAAU5wC,GAERqgC,EAAQhtC,IACVA,EAAMgtC,EACNwQ,EAAU7wC,IAEX+tC,KAAK2C,IAEJE,GAAWC,IACbE,EAAMH,EAAQS,eAAiB,GAC/BL,EAAMH,EAAQS,gBAAkB,GAChC/2B,EAAQm2B,EAAMr7C,MAAMwvC,OAAO7X,MAAQ+jB,EAAMC,EAGrCz2B,EAAQ,IACVnnB,EAAM69C,EAASL,GAAWG,EAAMvF,EAAWjxB,EAC3ClnB,EAAM69C,EAAOL,GAAWG,EAAMxF,EAAWjxB,OAMjD,OACEnnB,IAAY,MAAPA,EAAc,GAAIS,MAAKT,GAAO,KACnCC,IAAY,MAAPA,EAAc,GAAIQ,MAAKR,GAAO,OAQvCrD,EAASyR,UAAUkvC,aAAe,WAChC,GAAIv9C,GAAM,KACNC,EAAM,KAENk+C,EAAU/iD,KAAKugD,WAAavgD,KAAKugD,UAAUlf,YAc/C,OAbI0hB,IACFA,EAAQz5C,QAAQ,SAAUkI,GACxB,GAAIohC,GAAQjyC,EAAKgH,QAAQ6J,EAAKohC,MAAO,QAAQ9qC,UACzCgrC,EAAMnyC,EAAKgH,QAAoBpB,QAAZiL,EAAKshC,IAAmBthC,EAAKshC,IAAMthC,EAAKohC,MAAO,QAAQ9qC,WAClE,OAARlD,GAAwBA,EAARguC,KAClBhuC,EAAMguC,IAEI,OAAR/tC,GAAgBiuC,EAAMjuC,KACxBA,EAAMiuC,MAMVluC,IAAY,MAAPA,EAAc,GAAIS,MAAKT,GAAO,KACnCC,IAAY,MAAPA,EAAc,GAAIQ,MAAKR,GAAO,OAUvCrD,EAASyR,UAAUwtC,mBAAqB,SAAU31C,GAChD,GAAIg9B,GAAUh9B,EAAMurC,OAASvrC,EAAMurC,OAAOzY,EAAI9yB,EAAMg9B,QAChDG,EAAUn9B,EAAMurC,OAASvrC,EAAMurC,OAAOp1B,EAAInW,EAAMm9B,QAChDrK,EAAIkK,EAAUnnC,EAAK6H,gBAAgBxI,KAAK45C,IAAIoJ,iBAC5C/hC,EAAIgnB,EAAUtnC,EAAKiI,eAAe5I,KAAK45C,IAAIoJ,iBAE3CxxC,EAAOxR,KAAKsgD,QAAQ2C,eAAen4C,GACnCo4C,EAAQljD,KAAKsgD,QAAQ6C,gBAAgBr4C,GACrCs4C,EAAa1gD,EAAW2gD,qBAAqBv4C,GAE7Cw4C,EAAOtjD,KAAKsgD,QAAQz8C,QAAQy/C,MAAQ,KACpCt+C,EAAQhF,KAAKo/C,KAAKz+C,KAAK8+C,WACvB9M,EAAO3yC,KAAKo/C,KAAKz+C,KAAK89C,UACtBzzB,EAAOhrB,KAAKggD,QAAQpiB,GACpB2lB,EAAcD,EAAOA,EAAKt4B,EAAMhmB,EAAO2tC,GAAQ3nB,EAE/C5gB,EAAUzJ,EAAKsK,UAAUH,GACzB04C,EAAO,IAiBX,OAhBY,OAARhyC,EACFgyC,EAAO,OACgB,MAAdJ,EACTI,EAAO,cACE7iD,EAAK2K,UAAUlB,EAASpK,KAAK0/C,SAAS9F,IAAI6J,YACnDD,EAAO,OACExjD,KAAKogD,WAAaz/C,EAAK2K,UAAUlB,EAASpK,KAAKogD,UAAUxG,IAAI6J,YACtED,EAAO,OACE7iD,EAAK2K,UAAUlB,EAASpK,KAAKsgD,QAAQ1G,IAAI8J,UAClDF,EAAO,cACE7iD,EAAK2K,UAAUlB,EAASpK,KAAKqgD,YAAYhE,KAClDmH,EAAO,eACE7iD,EAAK2K,UAAUlB,EAASpK,KAAK45C,IAAIvD,UAC1CmN,EAAO,eAIP14C,MAAOA,EACP0G,KAAMA,EAAOA,EAAKnR,GAAK,KACvB6iD,MAAOA,EAAQA,EAAMS,QAAU,KAC/BH,KAAMA,EACNI,MAAO94C,EAAM+4C,SAAW/4C,EAAM+4C,SAASD,MAAQ94C,EAAM84C,MACrDE,MAAOh5C,EAAM+4C,SAAW/4C,EAAM+4C,SAASC,MAAQh5C,EAAMg5C,MACrDlmB,EAAGA,EACH3c,EAAGA,EACH+J,KAAMA,EACNu4B,YAAaA,IAIjB1jD,EAAOD,QAAU4B,GAIb,SAAS3B,EAAQD,EAASM,GAM9B,GAAsB,mBAAX6K,QAAwB,CACjC,GAAIg5C,GAAc7jD,EAAoB,IAClC8D,EAAS+G,OAAe,QAAK7K,EAAoB,GACrDL,GAAOD,QAAUmkD,EAAY//C,GAC3B6G,eAAgB,cAGlBhL,GAAOD,QAAU,WACf,KAAMoH,OAAM,+DAMZ,SAASnH,EAAQD,EAASM,GAE9B,GAAI8jD,GAAgCC,EAA8BC,GAEjE,SAAUvkD,GAGLskD,KAAmCD,EAAiC,EAAWE,EAA2E,kBAAnCF,GAAiDA,EAA+BjxC,MAAMnT,EAASqkD,GAAiCD,IAAmEz9C,SAAlC29C,IAAgDrkD,EAAOD,QAAUskD,KAU7V,WACA,GAAIC,GAAe,IAyBnB,OAAO,SAASJ,GAAYK,EAAQvgD,GAgIlC,QAASoF,GAAMo7C,GACb,MAAOA,GAAO/+C,MAAM,UAOtB,QAASg/C,GAAkBx5C,GAEzB,GAAmB,iBAAfA,EAAMlD,KAAyB,CAOjC,GAJKkD,EAAM+4C,SAASU,WAClBz5C,EAAM+4C,SAASU,aAGbz5C,EAAM+4C,SAASU,SAASz5C,EAAMlD,MAChC,MAGAkD,GAAM+4C,SAASU,SAASz5C,EAAMlD,OAAQ,EAK1C,GAAI48C,IAAU,CACd15C,GAAM25C,gBAAkB,WACtBD,GAAU,EAIZ,IAAIE,GAAU55C,EAAM+4C,SAASY,eACR,mBAAXC,KACR55C,EAAM+4C,SAASY,gBAAkB,WAC/BC,IACA55C,EAAM25C,oBAKV35C,EAAM65C,YAAcR,CAIpB,KADA,GAAI17C,GAAO07C,EACJ17C,IAAS+7C,GAAS,CACvB,GAAII,GAAan8C,EAAK27C,MACtB,IAAGQ,EAED,IAAI,GADAC,GACIr0C,EAAI,EAAGA,EAAIo0C,EAAWt+C,OAAQkK,IAEpC,GADAq0C,EAAYD,EAAWp0C,GAAGq0C,UAAU/5C,EAAMlD,MAC5B,IAAK,GAAInB,GAAI,EAAGA,EAAIo+C,EAAUv+C,SAAWk+C,EAAS/9C,IAC9Do+C,EAAUp+C,GAAGqE,EAInBrC,GAAOA,EAAK4C,YAvLhB,GAAIszB,GAAW96B,IACbgH,gBAAgB,EAGlB,IAAIu5C,EAAOU,QAAS,CAGlB,GAAI9gD,GAASogD,EAETW,EAAoB,SAAS36C,EAASvG,GACxC,GAAImhD,GAAI59C,OAAOgJ,OAAOuuB,EAEtB,OADI96B,IAASG,EAAOihD,OAAOD,EAAGnhD,GACvBkgD,EAAY,GAAI//C,GAAOoG,EAAS46C,GAAIA,GAU7C,OARAhhD,GAAOihD,OAAOF,EAAmB/gD,GAEjC+gD,EAAkBD,QAAU,SAAU16C,EAASvG,GAC7C,GAAImhD,GAAI59C,OAAOgJ,OAAOuuB,EAEtB,OADI96B,IAASG,EAAOihD,OAAOD,EAAGnhD,GACvBkgD,EAAY,GAAI//C,GAAO8gD,QAAQ16C,EAAS46C,GAAIA,IAG9CD,EAKT,GAAIG,GAAU99C,OAAOgJ,OAAOg0C,GAGxBh6C,EAAUg6C,EAAOh6C,OA6JrB,OA3JIA,GAAQg6C,SAAQh6C,EAAQg6C,WAC5Bh6C,EAAQg6C,OAAO58C,KAAK09C,GAIpBd,EAAOhlB,GAAG,eAAgB,SAAUt0B,IAC9B6zB,EAAS9zB,kBAAmB,GAAS8zB,EAAS9zB,iBAAmBC,EAAMq6C,cACzEr6C,EAAMD,iBAEJC,EAAMs6C,UACRjB,EAAer5C,EAAMI,UAKzBg6C,EAAQL,aAQRK,EAAQ9lB,GAAK,SAAUilB,EAAQgB,GAa7B,MAXAp8C,GAAMo7C,GAAQ/6C,QAAQ,SAAUwB,GAC9B,GAAI+5C,GAAYK,EAAQL,UAAU/5C,EAC7B+5C,KACHK,EAAQL,UAAU/5C,GAAS+5C,KAG3BT,EAAOhlB,GAAGt0B,EAAOw5C,IAEnBO,EAAUr9C,KAAK69C,KAGVH,GAWTA,EAAQ3lB,IAAM,SAAU8kB,EAAQgB,GAoB9B,MAlBAp8C,GAAMo7C,GAAQ/6C,QAAQ,SAAUwB,GAC9B,GAAI+5C,GAAYK,EAAQL,UAAU/5C,EAC9B+5C,KACFA,EAAYQ,EAAUR,EAAUrlB,OAAO,SAAU9xB,GAC/C,MAAOA,KAAM23C,OAGXR,EAAUv+C,OAAS,EACrB4+C,EAAQL,UAAU/5C,GAAS+5C,GAI3BT,EAAO7kB,IAAIz0B,EAAOw5C,SACXY,GAAQL,UAAU/5C,OAKxBo6C,GAQTA,EAAQrN,KAAO,SAASyN,EAAWx6C,GACjCq5C,EAAer5C,EAAMI,OACrBk5C,EAAOvM,KAAKyN,EAAWx6C,IAGzBo6C,EAAQ/lB,QAAU,WAEhB,GAAIomB,GAAUnB,EAAOh6C,QAAQg6C,OACzBoB,EAAMD,EAAQh+C,QAAQ29C,EACf,MAARM,GAAYD,EAAQl8C,OAAOm8C,EAAI,GAC9BD,EAAQj/C,cAAe89C,GAAOh6C,QAAQg6C,OAG1Cc,EAAQL,aAGRT,EAAOjlB,WAgEF+lB,MAOP,SAASrlD,EAAQD,EAASM,GAE9B,GAAIgkD,IAKJ,SAAUn5C,EAAQqyB,EAAUqoB,EAAYl/C,GAmBxC,QAASm/C,GAAkB77C,EAAIE,EAASq5B,GACpC,MAAOl5B,YAAWy7C,EAAO97C,EAAIu5B,GAAUr5B,GAY3C,QAAS67C,GAAeC,EAAKh8C,EAAIu5B,GAC7B,MAAIt8B,OAAMC,QAAQ8+C,IACdC,EAAKD,EAAKziB,EAAQv5B,GAAKu5B,IAChB,IAEJ,EASX,QAAS0iB,GAAKhgD,EAAKigD,EAAU3iB,GACzB,GAAI38B,EAEJ,IAAKX,EAIL,GAAIA,EAAIwD,QACJxD,EAAIwD,QAAQy8C,EAAU3iB,OACnB,IAAIt9B,EAAIQ,SAAWC,EAEtB,IADAE,EAAI,EACGA,EAAIX,EAAIQ,QACXy/C,EAASxlD,KAAK6iC,EAASt9B,EAAIW,GAAIA,EAAGX,GAClCW,QAGJ,KAAKA,IAAKX,GACNA,EAAIE,eAAeS,IAAMs/C,EAASxlD,KAAK6iC,EAASt9B,EAAIW,GAAIA,EAAGX,GAYvE,QAAS8Z,GAAUujB,EAAQ3rB,EAAMwuC,GAC7B,GAAIC,GAAqB,sBAAwBzuC,EAAO,KAAOwuC,EAAU,QACzE,OAAO,YACH,GAAIx6C,GAAI,GAAIxE,OAAM,mBACdlF,EAAQ0J,GAAKA,EAAE1J,MAAQ0J,EAAE1J,MAAMqK,QAAQ,kBAAmB,IACzDA,QAAQ,cAAe,IACvBA,QAAQ,6BAA8B,kBAAoB,sBAE3DgyC,EAAMpzC,EAAO4U,UAAY5U,EAAO4U,QAAQH,MAAQzU,EAAO4U,QAAQw+B,IAInE,OAHIA,IACAA,EAAI59C,KAAKwK,EAAO4U,QAASsmC,EAAoBnkD,GAE1CqhC,EAAOpwB,MAAM/S,KAAMqG,YAwElC,QAAS6/C,GAAQC,EAAO77B,EAAM87B,GAC1B,GACIC,GADAC,EAAQh8B,EAAKrX,SAGjBozC,GAASF,EAAMlzC,UAAY7L,OAAOgJ,OAAOk2C,GACzCD,EAAOl/C,YAAcg/C,EACrBE,EAAOE,OAASD,EAEZF,GACAnB,GAAOoB,EAAQD,GAUvB,QAAST,GAAO97C,EAAIu5B,GAChB,MAAO,YACH,MAAOv5B,GAAGkJ,MAAMqwB,EAAS/8B,YAWjC,QAASmgD,GAASnxC,EAAKkR,GACnB,aAAWlR,IAAOoxC,GACPpxC,EAAItC,MAAMwT,EAAOA,EAAK,IAAMhgB,EAAYA,EAAWggB,GAEvDlR,EASX,QAASqxC,GAAYC,EAAMC,GACvB,MAAQD,KAASpgD,EAAaqgD,EAAOD,EASzC,QAASE,GAAkB37C,EAAQo3B,EAAO+iB,GACtCS,EAAKgB,EAASxkB,GAAQ,SAAS16B,GAC3BsD,EAAOf,iBAAiBvC,EAAMy9C,GAAS,KAU/C,QAAS0B,GAAqB77C,EAAQo3B,EAAO+iB,GACzCS,EAAKgB,EAASxkB,GAAQ,SAAS16B,GAC3BsD,EAAOP,oBAAoB/C,EAAMy9C,GAAS,KAWlD,QAAS/5C,GAAUswB,EAAMrwB,GACrB,KAAOqwB,GAAM,CACT,GAAIA,GAAQrwB,EACR,OAAO,CAEXqwB,GAAOA,EAAKvwB,WAEhB,OAAO,EASX,QAAS27C,GAAMC,EAAKC,GAChB,MAAOD,GAAI1/C,QAAQ2/C,GAAQ,GAQ/B,QAASJ,GAASG,GACd,MAAOA,GAAIl4C,OAAO9F,MAAM,QAU5B,QAASk+C,GAAQC,EAAKF,EAAMG,GACxB,GAAID,EAAI7/C,UAAY8/C,EAChB,MAAOD,GAAI7/C,QAAQ2/C,EAGnB,KADA,GAAIzgD,GAAI,EACDA,EAAI2gD,EAAI9gD,QAAQ,CACnB,GAAK+gD,GAAaD,EAAI3gD,GAAG4gD,IAAcH,IAAWG,GAAaD,EAAI3gD,KAAOygD,EACtE,MAAOzgD,EAEXA,KAEJ,MAAO,GASf,QAAS+C,GAAQ1D,GACb,MAAOgB,OAAMmM,UAAU/F,MAAM3M,KAAKuF,EAAK,GAU3C,QAASwhD,GAAYF,EAAKz9C,EAAK+U,GAK3B,IAJA,GAAI6oC,MACAxvC,KACAtR,EAAI,EAEDA,EAAI2gD,EAAI9gD,QAAQ,CACnB,GAAI+O,GAAM1L,EAAMy9C,EAAI3gD,GAAGkD,GAAOy9C,EAAI3gD,EAC9B0gD,GAAQpvC,EAAQ1C,GAAO,GACvBkyC,EAAQ//C,KAAK4/C,EAAI3gD,IAErBsR,EAAOtR,GAAK4O,EACZ5O,IAaJ,MAVIiY,KAII6oC,EAHC59C,EAGS49C,EAAQ7oC,KAAK,SAAyBxY,EAAGC,GAC/C,MAAOD,GAAEyD,GAAOxD,EAAEwD,KAHZ49C,EAAQ7oC,QAQnB6oC,EASX,QAASC,GAAS1hD,EAAK2hD,GAKnB,IAJA,GAAIC,GAAQ3hD,EACR4hD,EAAYF,EAAS,GAAGv2B,cAAgBu2B,EAASv6C,MAAM,GAEvDzG,EAAI,EACDA,EAAImhD,GAAgBthD,QAAQ,CAI/B,GAHAohD,EAASE,GAAgBnhD,GACzBV,EAAO,EAAW2hD,EAASC,EAAYF,EAEnC1hD,IAAQD,GACR,MAAOC,EAEXU,KAEJ,MAAOF,GAQX,QAASshD,KACL,MAAOC,MAQX,QAASC,GAAoB39C,GACzB,GAAI49C,GAAM59C,EAAQ69C,eAAiB79C,CACnC,OAAQ49C,GAAIE,aAAeF,EAAIG,cAAgBp9C,EAyCnD,QAASq9C,GAAMC,EAAS9+C,GACpB,GAAImxC,GAAO16C,IACXA,MAAKqoD,QAAUA,EACfroD,KAAKuJ,SAAWA,EAChBvJ,KAAKoK,QAAUi+C,EAAQj+C,QACvBpK,KAAKkL,OAASm9C,EAAQxkD,QAAQykD,YAI9BtoD,KAAKuoD,WAAa,SAASC,GACnBhC,EAAS6B,EAAQxkD,QAAQ4kD,QAASJ,KAClC3N,EAAK2K,QAAQmD,IAIrBxoD,KAAK0oD,OAoCT,QAASC,GAAoBN,GACzB,GAAIO,GACAC,EAAaR,EAAQxkD,QAAQglD,UAajC,OAAO,KAVHD,EADAC,EACOA,EACAC,GACAC,EACAC,GACAC,EACCC,GAGDC,EAFAC,GAIOf,EAASgB,GAS/B,QAASA,GAAahB,EAAS/C,EAAW5hD,GACtC,GAAI4lD,GAAc5lD,EAAM6lD,SAASjjD,OAC7BkjD,EAAqB9lD,EAAM+lD,gBAAgBnjD,OAC3C8+C,EAAWE,EAAYoE,IAAgBJ,EAAcE,IAAuB,EAC5EG,EAAWrE,GAAasE,GAAYC,KAAkBP,EAAcE,IAAuB,CAE/F9lD,GAAM0hD,UAAYA;AAClB1hD,EAAMimD,UAAYA,EAEdvE,IACAiD,EAAQyB,YAKZpmD,EAAM4hD,UAAYA,EAGlByE,EAAiB1B,EAAS3kD,GAG1B2kD,EAAQxQ,KAAK,eAAgBn0C,GAE7B2kD,EAAQ2B,UAAUtmD,GAClB2kD,EAAQyB,QAAQG,UAAYvmD,EAQhC,QAASqmD,GAAiB1B,EAAS3kD,GAC/B,GAAIomD,GAAUzB,EAAQyB,QAClBP,EAAW7lD,EAAM6lD,SACjBW,EAAiBX,EAASjjD,MAGzBwjD,GAAQK,aACTL,EAAQK,WAAaC,EAAqB1mD,IAI1CwmD,EAAiB,IAAMJ,EAAQO,cAC/BP,EAAQO,cAAgBD,EAAqB1mD,GACnB,IAAnBwmD,IACPJ,EAAQO,eAAgB,EAG5B,IAAIF,GAAaL,EAAQK,WACrBE,EAAgBP,EAAQO,cACxBC,EAAeD,EAAgBA,EAAchU,OAAS8T,EAAW9T,OAEjEA,EAAS3yC,EAAM2yC,OAASkU,EAAUhB,EACtC7lD,GAAM8mD,UAAYvnC,KAClBvf,EAAM+mD,UAAY/mD,EAAM8mD,UAAYL,EAAWK,UAE/C9mD,EAAMgnD,MAAQC,EAASL,EAAcjU,GACrC3yC,EAAM0sC,SAAWwa,EAAYN,EAAcjU,GAE3CwU,EAAef,EAASpmD,GACxBA,EAAMonD,gBAAkBC,EAAarnD,EAAMsnD,OAAQtnD,EAAMunD,OAEzD,IAAIC,GAAkBC,EAAYznD,EAAM+mD,UAAW/mD,EAAMsnD,OAAQtnD,EAAMunD,OACvEvnD,GAAM0nD,iBAAmBF,EAAgBttB,EACzCl6B,EAAM2nD,iBAAmBH,EAAgBjqC,EACzCvd,EAAMwnD,gBAAmBn0C,GAAIm0C,EAAgBttB,GAAK7mB,GAAIm0C,EAAgBjqC,GAAMiqC,EAAgBttB,EAAIstB,EAAgBjqC,EAEhHvd,EAAMsB,MAAQqlD,EAAgB5K,EAAS4K,EAAcd,SAAUA,GAAY,EAC3E7lD,EAAM4nD,SAAWjB,EAAgBkB,EAAYlB,EAAcd,SAAUA,GAAY,EAEjF7lD,EAAM8nD,YAAe1B,EAAQG,UAAsCvmD,EAAM6lD,SAASjjD,OAC9EwjD,EAAQG,UAAUuB,YAAe9nD,EAAM6lD,SAASjjD,OAASwjD,EAAQG,UAAUuB,YADtC9nD,EAAM6lD,SAASjjD,OAGxDmlD,EAAyB3B,EAASpmD,EAGlC,IAAIwH,GAASm9C,EAAQj+C,OACjBkB,GAAU5H,EAAMmgD,SAAS34C,OAAQA,KACjCA,EAASxH,EAAMmgD,SAAS34C,QAE5BxH,EAAMwH,OAASA,EAGnB,QAAS2/C,GAAef,EAASpmD,GAC7B,GAAI2yC,GAAS3yC,EAAM2yC,OACf7uB,EAASsiC,EAAQ4B,gBACjBC,EAAY7B,EAAQ6B,cACpB1B,EAAYH,EAAQG,eAEpBvmD,EAAM4hD,YAAcoE,IAAeO,EAAU3E,YAAcsE,MAC3D+B,EAAY7B,EAAQ6B,WAChB/tB,EAAGqsB,EAAUe,QAAU,EACvB/pC,EAAGgpC,EAAUgB,QAAU,GAG3BzjC,EAASsiC,EAAQ4B,aACb9tB,EAAGyY,EAAOzY,EACV3c,EAAGo1B,EAAOp1B,IAIlBvd,EAAMsnD,OAASW,EAAU/tB,GAAKyY,EAAOzY,EAAIpW,EAAOoW,GAChDl6B,EAAMunD,OAASU,EAAU1qC,GAAKo1B,EAAOp1B,EAAIuG,EAAOvG,GAQpD,QAASwqC,GAAyB3B,EAASpmD,GACvC,GAEIkoD,GAAUC,EAAWC,EAAWphC,EAFhCqhC,EAAOjC,EAAQkC,cAAgBtoD,EAC/B+mD,EAAY/mD,EAAM8mD,UAAYuB,EAAKvB,SAGvC,IAAI9mD,EAAM4hD,WAAauE,KAAiBY,EAAYwB,IAAoBF,EAAKH,WAAarlD,GAAY,CAClG,GAAIykD,GAAStnD,EAAMsnD,OAASe,EAAKf,OAC7BC,EAASvnD,EAAMunD,OAASc,EAAKd,OAE7Br9C,EAAIu9C,EAAYV,EAAWO,EAAQC,EACvCY,GAAYj+C,EAAEgwB,EACdkuB,EAAYl+C,EAAEqT,EACd2qC,EAAY70C,GAAInJ,EAAEgwB,GAAK7mB,GAAInJ,EAAEqT,GAAMrT,EAAEgwB,EAAIhwB,EAAEqT,EAC3CyJ,EAAYqgC,EAAaC,EAAQC,GAEjCnB,EAAQkC,aAAetoD,MAGvBkoD,GAAWG,EAAKH,SAChBC,EAAYE,EAAKF,UACjBC,EAAYC,EAAKD,UACjBphC,EAAYqhC,EAAKrhC,SAGrBhnB,GAAMkoD,SAAWA,EACjBloD,EAAMmoD,UAAYA,EAClBnoD,EAAMooD,UAAYA,EAClBpoD,EAAMgnB,UAAYA,EAQtB,QAAS0/B,GAAqB1mD,GAK1B,IAFA,GAAI6lD,MACA9iD,EAAI,EACDA,EAAI/C,EAAM6lD,SAASjjD,QACtBijD,EAAS9iD,IACLqhC,QAASvf,GAAM7kB,EAAM6lD,SAAS9iD,GAAGqhC,SACjCG,QAAS1f,GAAM7kB,EAAM6lD,SAAS9iD,GAAGwhC,UAErCxhC,GAGJ,QACI+jD,UAAWvnC,KACXsmC,SAAUA,EACVlT,OAAQkU,EAAUhB,GAClByB,OAAQtnD,EAAMsnD,OACdC,OAAQvnD,EAAMunD,QAStB,QAASV,GAAUhB,GACf,GAAIW,GAAiBX,EAASjjD,MAG9B,IAAuB,IAAnB4jD,EACA,OACItsB,EAAGrV,GAAMghC,EAAS,GAAGzhB,SACrB7mB,EAAGsH,GAAMghC,EAAS,GAAGthB,SAK7B,KADA,GAAIrK,GAAI,EAAG3c,EAAI,EAAGxa,EAAI,EACXyjD,EAAJzjD,GACHm3B,GAAK2rB,EAAS9iD,GAAGqhC,QACjB7mB,GAAKsoC,EAAS9iD,GAAGwhC,QACjBxhC,GAGJ,QACIm3B,EAAGrV,GAAMqV,EAAIssB,GACbjpC,EAAGsH,GAAMtH,EAAIipC,IAWrB,QAASiB,GAAYV,EAAW7sB,EAAG3c,GAC/B,OACI2c,EAAGA,EAAI6sB,GAAa,EACpBxpC,EAAGA,EAAIwpC,GAAa,GAU5B,QAASM,GAAantB,EAAG3c,GACrB,MAAI2c,KAAM3c,EACCirC,GAGPn1C,GAAI6mB,IAAM7mB,GAAIkK,GACH,EAAJ2c,EAAQuuB,GAAiBC,GAEzB,EAAJnrC,EAAQorC,GAAeC,GAUlC,QAAS1B,GAAY/uC,EAAIC,EAAIjV,GACpBA,IACDA,EAAQ0lD,GAEZ,IAAI3uB,GAAI9hB,EAAGjV,EAAM,IAAMgV,EAAGhV,EAAM,IAC5Boa,EAAInF,EAAGjV,EAAM,IAAMgV,EAAGhV,EAAM,GAEhC,OAAO5B,MAAKw0C,KAAM7b,EAAIA,EAAM3c,EAAIA,GAUpC,QAAS0pC,GAAS9uC,EAAIC,EAAIjV,GACjBA,IACDA,EAAQ0lD,GAEZ,IAAI3uB,GAAI9hB,EAAGjV,EAAM,IAAMgV,EAAGhV,EAAM,IAC5Boa,EAAInF,EAAGjV,EAAM,IAAMgV,EAAGhV,EAAM,GAChC,OAA0B,KAAnB5B,KAAKunD,MAAMvrC,EAAG2c,GAAW34B,KAAK8wC,GASzC,QAASwV,GAAY3Y,EAAOE,GACxB,MAAO6X,GAAS7X,EAAI,GAAIA,EAAI,GAAI2Z,IAAmB9B,EAAS/X,EAAM,GAAIA,EAAM,GAAI6Z,IAUpF,QAAShN,GAAS7M,EAAOE,GACrB,MAAO8X,GAAY9X,EAAI,GAAIA,EAAI,GAAI2Z,IAAmB7B,EAAYhY,EAAM,GAAIA,EAAM,GAAI6Z,IAiB1F,QAASrD,KACLppD,KAAK0sD,KAAOC,GACZ3sD,KAAK4sD,MAAQC,GAEb7sD,KAAK8sD,OAAQ,EACb9sD,KAAK+sD,SAAU,EAEf3E,EAAMr1C,MAAM/S,KAAMqG,WAoEtB,QAAS0iD,KACL/oD,KAAK0sD,KAAOM,GACZhtD,KAAK4sD,MAAQK,GAEb7E,EAAMr1C,MAAM/S,KAAMqG,WAElBrG,KAAKktD,MAASltD,KAAKqoD,QAAQyB,QAAQqD,iBAoEvC,QAASC,KACLptD,KAAKqtD,SAAWC,GAChBttD,KAAK4sD,MAAQW,GACbvtD,KAAKwtD,SAAU,EAEfpF,EAAMr1C,MAAM/S,KAAMqG,WAsCtB,QAASonD,GAAuBjF,EAAI5gD,GAChC,GAAI8lD,GAAMlkD,EAAQg/C,EAAGmF,SACjBC,EAAUpkD,EAAQg/C,EAAGqF,eAMzB,OAJIjmD,IAAQgiD,GAAYC,MACpB6D,EAAMpG,EAAYoG,EAAI7tB,OAAO+tB,GAAU,cAAc,KAGjDF,EAAKE,GAiBjB,QAAS3E,KACLjpD,KAAKqtD,SAAWS,GAChB9tD,KAAK+tD,aAEL3F,EAAMr1C,MAAM/S,KAAMqG,WA0BtB,QAAS2nD,GAAWxF,EAAI5gD,GACpB,GAAIqmD,GAAazkD,EAAQg/C,EAAGmF,SACxBI,EAAY/tD,KAAK+tD,SAGrB,IAAInmD,GAAQ8hD,GAAcwE,KAAqC,IAAtBD,EAAW3nD,OAEhD,MADAynD,GAAUE,EAAW,GAAGE,aAAc,GAC9BF,EAAYA,EAGxB,IAAIxnD,GACAshC,EACA8lB,EAAiBrkD,EAAQg/C,EAAGqF,gBAC5BO,KACAljD,EAASlL,KAAKkL,MAQlB,IALA68B,EAAgBkmB,EAAWzuB,OAAO,SAAS6uB,GACvC,MAAO/iD,GAAU+iD,EAAMnjD,OAAQA,KAI/BtD,IAAS8hD,GAET,IADAjjD,EAAI,EACGA,EAAIshC,EAAczhC,QACrBynD,EAAUhmB,EAActhC,GAAG0nD,aAAc,EACzC1nD,GAMR,KADAA,EAAI,EACGA,EAAIonD,EAAevnD,QAClBynD,EAAUF,EAAepnD,GAAG0nD,aAC5BC,EAAqB5mD,KAAKqmD,EAAepnD,IAIzCmB,GAAQgiD,GAAYC,WACbkE,GAAUF,EAAepnD,GAAG0nD,YAEvC1nD,GAGJ,OAAK2nD,GAAqB9nD,QAMtBghD,EAAYvf,EAAclI,OAAOuuB,GAAuB,cAAc,GACtEA,GAPJ,OAoBJ,QAASjF,KACLf,EAAMr1C,MAAM/S,KAAMqG,UAElB,IAAIg/C,GAAUM,EAAO3lD,KAAKqlD,QAASrlD,KACnCA,MAAKquD,MAAQ,GAAIpF,GAAWjpD,KAAKqoD,QAAShD,GAC1CrlD,KAAKsuD,MAAQ,GAAIlF,GAAWppD,KAAKqoD,QAAShD,GAyD9C,QAASkJ,GAAYlG,EAAStjD,GAC1B/E,KAAKqoD,QAAUA,EACfroD,KAAKoY,IAAIrT,GAwGb,QAASypD,GAAkBC,GAEvB,GAAIzH,EAAMyH,EAASC,IACf,MAAOA,GAGX,IAAIC,GAAU3H,EAAMyH,EAASG,IACzBC,EAAU7H,EAAMyH,EAASK,GAM7B,OAAIH,IAAWE,EACJH,GAIPC,GAAWE,EACJF,EAAUC,GAAqBE,GAItC9H,EAAMyH,EAASM,IACRA,GAGJC,GA4CX,QAASC,GAAWprD,GAChB7D,KAAK6D,QAAUohD,MAAWjlD,KAAK8iB,SAAUjf,OAEzC7D,KAAKK,GAAKwnD,IAEV7nD,KAAKqoD,QAAU,KAGfroD,KAAK6D,QAAQ4kD,OAAS/B,EAAY1mD,KAAK6D,QAAQ4kD,QAAQ,GAEvDzoD,KAAKkvD,MAAQC,GAEbnvD,KAAKovD,gBACLpvD,KAAKqvD,eAqOT,QAASC,GAASJ,GACd,MAAIA,GAAQK,GACD,SACAL,EAAQM,GACR,MACAN,EAAQO,GACR,OACAP,EAAQQ,GACR,QAEJ,GAQX,QAASC,GAAajlC,GAClB,MAAIA,IAAa4hC,GACN,OACA5hC,GAAa2hC,GACb,KACA3hC,GAAayhC,GACb,OACAzhC,GAAa0hC,GACb,QAEJ,GASX,QAASwD,GAA6BC,EAAiBC,GACnD,GAAIzH,GAAUyH,EAAWzH,OACzB,OAAIA,GACOA,EAAQrxB,IAAI64B,GAEhBA,EAQX,QAASE,MACLd,EAAWl8C,MAAM/S,KAAMqG,WA6D3B,QAAS2pD,MACLD,GAAeh9C,MAAM/S,KAAMqG,WAE3BrG,KAAKiwD,GAAK,KACVjwD,KAAKkwD,GAAK,KA4Ed,QAASC,MACLJ,GAAeh9C,MAAM/S,KAAMqG,WAsC/B,QAAS+pD,MACLnB,EAAWl8C,MAAM/S,KAAMqG,WAEvBrG,KAAKqwD,OAAS,KACdrwD,KAAKswD,OAAS,KAmElB,QAASC,MACLR,GAAeh9C,MAAM/S,KAAMqG,WA8B/B,QAASmqD,MACLT,GAAeh9C,MAAM/S,KAAMqG,WA2D/B,QAASoqD,MACLxB,EAAWl8C,MAAM/S,KAAMqG,WAIvBrG,KAAK0wD,OAAQ,EACb1wD,KAAK2wD,SAAU,EAEf3wD,KAAKqwD,OAAS,KACdrwD,KAAKswD,OAAS,KACdtwD,KAAKiyB,MAAQ,EAqGjB,QAASjuB,IAAOoG,EAASvG,GAGrB,MAFAA,GAAUA,MACVA,EAAQ+sD,YAAclK,EAAY7iD,EAAQ+sD,YAAa5sD,GAAO8e,SAAS+tC,QAChE,GAAI/L,IAAQ16C,EAASvG,GAiIhC,QAASihD,IAAQ16C,EAASvG,GACtB7D,KAAK6D,QAAUohD,MAAWjhD,GAAO8e,SAAUjf,OAE3C7D,KAAK6D,QAAQykD,YAActoD,KAAK6D,QAAQykD,aAAel+C,EAEvDpK,KAAK8wD,YACL9wD,KAAK8pD,WACL9pD,KAAK4wD,eAEL5wD,KAAKoK,QAAUA,EACfpK,KAAK0D,MAAQilD,EAAoB3oD,MACjCA,KAAK+wD,YAAc,GAAIxC,GAAYvuD,KAAMA,KAAK6D,QAAQktD,aAEtDC,GAAehxD,MAAM,GAErB8lD,EAAK9lD,KAAK6D,QAAQ+sD,YAAa,SAASp/C,GACpC,GAAIs+C,GAAa9vD,KAAKimB,IAAI,GAAKzU,GAAK,GAAIA,EAAK,IAC7CA,GAAK,IAAMs+C,EAAWmB,cAAcz/C,EAAK,IACzCA,EAAK,IAAMs+C,EAAWoB,eAAe1/C,EAAK,KAC3CxR,MAiPP,QAASgxD,IAAe3I,EAASpiC,GAC7B,GAAI7b,GAAUi+C,EAAQj+C,OACjBA,GAAQ0E,OAGbg3C,EAAKuC,EAAQxkD,QAAQstD,SAAU,SAASpsD,EAAOyS,GAC3CpN,EAAQ0E,MAAM04C,EAASp9C,EAAQ0E,MAAO0I,IAASyO,EAAMlhB,EAAQ,KASrE,QAASqsD,IAAgBtmD,EAAOkN,GAC5B,GAAIq5C,GAAej0B,EAASk0B,YAAY,QACxCD,GAAaE,UAAUzmD,GAAO,GAAM,GACpCumD,EAAaG,QAAUx5C,EACvBA,EAAK9M,OAAOumD,cAAcJ,GAx7E9B,GA+FIpM,IA/FA2C,IAAmB,GAAI,SAAU,MAAO,KAAM,KAAM,KACpD8J,GAAet0B,EAASM,cAAc,OAEtC+oB,GAAgB,WAEhBl+B,GAAQtjB,KAAKsjB,MACbxR,GAAM9R,KAAK8R,IACXkM,GAAM5d,KAAK4d,GA0FXgiC,IADyB,kBAAlB79C,QAAO69C,OACL,SAAgB/5C,GACrB,GAAIA,IAAW3E,GAAwB,OAAX2E,EACxB,KAAM,IAAIhE,WAAU,6CAIxB,KAAK,GADDwT,GAAStT,OAAO8D,GACX9B,EAAQ,EAAGA,EAAQ/C,UAAUC,OAAQ8C,IAAS,CACnD,GAAIyoB,GAASxrB,UAAU+C,EACvB,IAAIyoB,IAAWtrB,GAAwB,OAAXsrB,EACxB,IAAK,GAAI8/B,KAAW9/B,GACZA,EAAO7rB,eAAe2rD,KACtBj3C,EAAOi3C,GAAW9/B,EAAO8/B,IAKzC,MAAOj3C,IAGFtT,OAAO69C,MAWpB,IAAIt+C,IAASiZ,EAAU,SAAgBgyC,EAAMxK,EAAKyK,GAG9C,IAFA,GAAI5iD,GAAO7H,OAAO6H,KAAKm4C,GACnB3gD,EAAI,EACDA,EAAIwI,EAAK3I,UACPurD,GAAUA,GAASD,EAAK3iD,EAAKxI,MAAQF,KACtCqrD,EAAK3iD,EAAKxI,IAAM2gD,EAAIn4C,EAAKxI,KAE7BA,GAEJ,OAAOmrD,IACR,SAAU,iBASTC,GAAQjyC,EAAU,SAAegyC,EAAMxK,GACvC,MAAOzgD,IAAOirD,EAAMxK,GAAK,IAC1B,QAAS,iBAiNRU,GAAY,EAeZgK,GAAe,wCAEf5I,GAAiB,gBAAkBn+C,GACnC+9C,GAAyBtB,EAASz8C,EAAQ,kBAAoBxE,EAC9DyiD,GAAqBE,IAAiB4I,GAAajiD,KAAKrF,UAAUC,WAElEsnD,GAAmB,QACnBC,GAAiB,MACjBC,GAAmB,QACnBC,GAAoB,SAEpBjG,GAAmB,GAEnBvC,GAAc,EACdwE,GAAa,EACbtE,GAAY,EACZC,GAAe,EAEfqC,GAAiB,EACjBC,GAAiB,EACjBC,GAAkB,EAClBC,GAAe,EACfC,GAAiB,GAEjB6F,GAAuBhG,GAAiBC,GACxCgG,GAAqB/F,GAAeC,GACpC+F,GAAgBF,GAAuBC,GAEvC7F,IAAY,IAAK,KACjBE,IAAmB,UAAW,UA4BlCrE,GAAMn1C,WAKFoyC,QAAS,aAKTqD,KAAM,WACF1oD,KAAK0sD,MAAQ7F,EAAkB7mD,KAAKoK,QAASpK,KAAK0sD,KAAM1sD,KAAKuoD,YAC7DvoD,KAAKqtD,UAAYxG,EAAkB7mD,KAAKkL,OAAQlL,KAAKqtD,SAAUrtD,KAAKuoD,YACpEvoD,KAAK4sD,OAAS/F,EAAkBkB,EAAoB/nD,KAAKoK,SAAUpK,KAAK4sD,MAAO5sD,KAAKuoD,aAMxFppB,QAAS,WACLn/B,KAAK0sD,MAAQ3F,EAAqB/mD,KAAKoK,QAASpK,KAAK0sD,KAAM1sD,KAAKuoD,YAChEvoD,KAAKqtD,UAAYtG,EAAqB/mD,KAAKkL,OAAQlL,KAAKqtD,SAAUrtD,KAAKuoD,YACvEvoD,KAAK4sD,OAAS7F,EAAqBgB,EAAoB/nD,KAAKoK,SAAUpK,KAAK4sD,MAAO5sD,KAAKuoD,aA4T/F,IAAI+J,KACAC,UAAW7I,GACX8I,UAAWtE,GACXuE,QAAS7I,IAGT+C,GAAuB,YACvBE,GAAsB,mBAiB1B3G,GAAQkD,EAAYhB,GAKhB/C,QAAS,SAAmBmD,GACxB,GAAIlD,GAAYgN,GAAgB9J,EAAG5gD,KAG/B09C,GAAYoE,IAA6B,IAAdlB,EAAG7R,SAC9B32C,KAAK+sD,SAAU,GAGfzH,EAAY4I,IAA2B,IAAb1F,EAAG9R,QAC7B4O,EAAYsE,IAIX5pD,KAAK+sD,SAAY/sD,KAAK8sD,QAIvBxH,EAAYsE,KACZ5pD,KAAK+sD,SAAU,GAGnB/sD,KAAKuJ,SAASvJ,KAAKqoD,QAAS/C,GACxBiE,UAAWf,GACXiB,iBAAkBjB,GAClBrD,YAAa8M,GACbpO,SAAU2E,OAKtB,IAAIkK,KACAC,YAAajJ,GACbkJ,YAAa1E,GACb2E,UAAWjJ,GACXkJ,cAAejJ,GACfkJ,WAAYlJ,IAIZmJ,IACAC,EAAGlB,GACHmB,EAAGlB,GACHmB,EAAGlB,GACHmB,EAAGlB,IAGHlF,GAAyB,cACzBC,GAAwB,qCAGxBliD,GAAOsoD,iBAAmBtoD,EAAOuoD,eACjCtG,GAAyB,gBACzBC,GAAwB,6CAiB5B/G,EAAQ6C,EAAmBX,GAKvB/C,QAAS,SAAmBmD,GACxB,GAAI0E,GAAQltD,KAAKktD,MACbqG,GAAgB,EAEhBC,EAAsBhL,EAAG5gD,KAAKuP,cAAchL,QAAQ,KAAM,IAC1Dm5C,EAAYoN,GAAkBc,GAC9BrO,EAAc6N,GAAuBxK,EAAGrD,cAAgBqD,EAAGrD,YAE3DsO,EAAWtO,GAAe4M,GAG1B2B,EAAavM,EAAQ+F,EAAO1E,EAAGmL,UAAW,YAG1CrO,GAAYoE,KAA8B,IAAdlB,EAAG7R,QAAgB8c,GAC9B,EAAbC,IACAxG,EAAM1lD,KAAKghD,GACXkL,EAAaxG,EAAM5mD,OAAS,GAEzBg/C,GAAasE,GAAYC,MAChC0J,GAAgB,GAIH,EAAbG,IAKJxG,EAAMwG,GAAclL,EAEpBxoD,KAAKuJ,SAASvJ,KAAKqoD,QAAS/C,GACxBiE,SAAU2D,EACVzD,iBAAkBjB,GAClBrD,YAAaA,EACbtB,SAAU2E,IAGV+K,GAEArG,EAAM7jD,OAAOqqD,EAAY,MAKrC,IAAIE,KACAC,WAAYnK,GACZoK,UAAW5F,GACX6F,SAAUnK,GACVoK,YAAanK,IAGbyD,GAA6B,aAC7BC,GAA6B,2CAejCrH,GAAQkH,EAAkBhF,GACtB/C,QAAS,SAAmBmD,GACxB,GAAI5gD,GAAOgsD,GAAuBpL,EAAG5gD,KAOrC,IAJIA,IAAS8hD,KACT1pD,KAAKwtD,SAAU,GAGdxtD,KAAKwtD,QAAV,CAIA,GAAIG,GAAUF,EAAuBltD,KAAKP,KAAMwoD,EAAI5gD,EAGhDA,IAAQgiD,GAAYC,KAAiB8D,EAAQ,GAAGrnD,OAASqnD,EAAQ,GAAGrnD,SAAW,IAC/EtG,KAAKwtD,SAAU,GAGnBxtD,KAAKuJ,SAASvJ,KAAKqoD,QAASzgD,GACxB2hD,SAAUoE,EAAQ,GAClBlE,gBAAiBkE,EAAQ,GACzBxI,YAAa4M,GACblO,SAAU2E,OAsBtB,IAAIyL,KACAJ,WAAYnK,GACZoK,UAAW5F,GACX6F,SAAUnK,GACVoK,YAAanK,IAGbiE,GAAsB,2CAc1B5H,GAAQ+C,EAAYb,GAChB/C,QAAS,SAAoBmD,GACzB,GAAI5gD,GAAOqsD,GAAgBzL,EAAG5gD,MAC1B+lD,EAAUK,EAAWztD,KAAKP,KAAMwoD,EAAI5gD,EACnC+lD,IAIL3tD,KAAKuJ,SAASvJ,KAAKqoD,QAASzgD,GACxB2hD,SAAUoE,EAAQ,GAClBlE,gBAAiBkE,EAAQ,GACzBxI,YAAa4M,GACblO,SAAU2E,OAmFtBtC,EAAQiD,EAAiBf,GAOrB/C,QAAS,SAAoBgD,EAAS6L,EAAYC,GAC9C,GAAIV,GAAWU,EAAUhP,aAAe4M,GACpCqC,EAAWD,EAAUhP,aAAe8M,EAIxC,IAAIwB,EACAzzD,KAAKsuD,MAAMxB,OAAQ,MAChB,IAAIsH,IAAYp0D,KAAKsuD,MAAMxB,MAC9B,MAIAoH,IAActK,GAAYC,MAC1B7pD,KAAKsuD,MAAMxB,OAAQ,GAGvB9sD,KAAKuJ,SAAS8+C,EAAS6L,EAAYC,IAMvCh1B,QAAS,WACLn/B,KAAKquD,MAAMlvB,UACXn/B,KAAKsuD,MAAMnvB,YAInB,IAAIk1B,IAAwB7M,EAASkK,GAAa5iD,MAAO,eACrDwlD,GAAsBD,KAA0B9tD,EAGhDguD,GAAuB,UACvBvF,GAAoB,OACpBD,GAA4B,eAC5BL,GAAoB,OACpBE,GAAqB,QACrBE,GAAqB,OAczBP,GAAYt7C,WAKRmF,IAAK,SAASrT,GAENA,GAASwvD,KACTxvD,EAAQ/E,KAAKw0D,WAGbF,IAAuBt0D,KAAKqoD,QAAQj+C,QAAQ0E,QAC5C9O,KAAKqoD,QAAQj+C,QAAQ0E,MAAMulD,IAAyBtvD,GAExD/E,KAAKyuD,QAAU1pD,EAAMoS,cAAcpI,QAMvCmxB,OAAQ,WACJlgC,KAAKoY,IAAIpY,KAAKqoD,QAAQxkD,QAAQktD,cAOlCyD,QAAS,WACL,GAAI/F,KAMJ,OALA3I,GAAK9lD,KAAKqoD,QAAQuI,YAAa,SAASd,GAChCtJ,EAASsJ,EAAWjsD,QAAQ4kD,QAASqH,MACrCrB,EAAUA,EAAQ5uB,OAAOiwB,EAAW2E,qBAGrCjG,EAAkBC,EAAQvlD,KAAK,OAO1CwrD,gBAAiB,SAAShxD,GAEtB,IAAI4wD,GAAJ,CAIA,GAAIzQ,GAAWngD,EAAMmgD,SACjBn5B,EAAYhnB,EAAMonD,eAGtB,IAAI9qD,KAAKqoD,QAAQyB,QAAQ6K,UAErB,WADA9Q,GAASh5C,gBAIb,IAAI4jD,GAAUzuD,KAAKyuD,QACfmG,EAAU5N,EAAMyH,EAASC,IACzBG,EAAU7H,EAAMyH,EAASK,IACzBH,EAAU3H,EAAMyH,EAASG,GAE7B,IAAIgG,EAAS,CAGT,GAAIC,GAAyC,IAA1BnxD,EAAM6lD,SAASjjD,OAC9BwuD,EAAgBpxD,EAAM0sC,SAAW,EACjC2kB,EAAiBrxD,EAAM+mD,UAAY,GAEvC,IAAIoK,GAAgBC,GAAiBC,EACjC,OAIR,IAAIpG,IAAWE,EAKf,MAAI+F,IACC/F,GAAWnkC,EAAYynC,IACvBxD,GAAWjkC,EAAY0nC,GACjBpyD,KAAKg1D,WAAWnR,GAH3B,SAWJmR,WAAY,SAASnR,GACjB7jD,KAAKqoD,QAAQyB,QAAQ6K,WAAY,EACjC9Q,EAASh5C,kBAkEjB,IAAIskD,IAAiB,EACjBO,GAAc,EACdD,GAAgB,EAChBD,GAAc,EACdyF,GAAmBzF,GACnBD,GAAkB,GAClB2F,GAAe,EAwBnBjG,GAAWh8C,WAKP6P,YAOA1K,IAAK,SAASvU,GAKV,MAJAohD,IAAOjlD,KAAK6D,QAASA,GAGrB7D,KAAKqoD,SAAWroD,KAAKqoD,QAAQ0I,YAAY7wB,SAClClgC,MAQXixD,cAAe,SAASpB,GACpB,GAAIjK,EAAeiK,EAAiB,gBAAiB7vD,MACjD,MAAOA,KAGX,IAAIovD,GAAepvD,KAAKovD,YAMxB,OALAS,GAAkBD,EAA6BC,EAAiB7vD,MAC3DovD,EAAaS,EAAgBxvD,MAC9B+uD,EAAaS,EAAgBxvD,IAAMwvD,EACnCA,EAAgBoB,cAAcjxD,OAE3BA,MAQXm1D,kBAAmB,SAAStF,GACxB,MAAIjK,GAAeiK,EAAiB,oBAAqB7vD,MAC9CA,MAGX6vD,EAAkBD,EAA6BC,EAAiB7vD,YACzDA,MAAKovD,aAAaS,EAAgBxvD,IAClCL,OAQXkxD,eAAgB,SAASrB,GACrB,GAAIjK,EAAeiK,EAAiB,iBAAkB7vD,MAClD,MAAOA,KAGX,IAAIqvD,GAAcrvD,KAAKqvD,WAMvB,OALAQ,GAAkBD,EAA6BC,EAAiB7vD,MAClB,KAA1CmnD,EAAQkI,EAAaQ,KACrBR,EAAY7nD,KAAKqoD,GACjBA,EAAgBqB,eAAelxD,OAE5BA,MAQXo1D,mBAAoB,SAASvF,GACzB,GAAIjK,EAAeiK,EAAiB,qBAAsB7vD,MACtD,MAAOA,KAGX6vD,GAAkBD,EAA6BC,EAAiB7vD,KAChE,IAAIoJ,GAAQ+9C,EAAQnnD,KAAKqvD,YAAaQ,EAItC,OAHIzmD,GAAQ,IACRpJ,KAAKqvD,YAAYhmD,OAAOD,EAAO,GAE5BpJ,MAOXq1D,mBAAoB,WAChB,MAAOr1D,MAAKqvD,YAAY/oD,OAAS,GAQrCgvD,iBAAkB,SAASzF,GACvB,QAAS7vD,KAAKovD,aAAaS,EAAgBxvD,KAQ/Cw3C,KAAM,SAASn0C,GAIX,QAASm0C,GAAK/sC,GACV4vC,EAAK2N,QAAQxQ,KAAK/sC,EAAOpH,GAJ7B,GAAIg3C,GAAO16C,KACPkvD,EAAQlvD,KAAKkvD,KAOLM,IAARN,GACArX,EAAK6C,EAAK72C,QAAQiH,MAAQwkD,EAASJ,IAGvCrX,EAAK6C,EAAK72C,QAAQiH,OAEdpH,EAAM6xD,iBACN1d,EAAKn0C,EAAM6xD,iBAIXrG,GAASM,IACT3X,EAAK6C,EAAK72C,QAAQiH,MAAQwkD,EAASJ,KAU3CsG,QAAS,SAAS9xD,GACd,MAAI1D,MAAKy1D,UACEz1D,KAAK63C,KAAKn0C,QAGrB1D,KAAKkvD,MAAQgG,KAOjBO,QAAS,WAEL,IADA,GAAIhvD,GAAI,EACDA,EAAIzG,KAAKqvD,YAAY/oD,QAAQ,CAChC,KAAMtG,KAAKqvD,YAAY5oD,GAAGyoD,OAASgG,GAAe/F,KAC9C,OAAO,CAEX1oD,KAEJ,OAAO,GAOXujD,UAAW,SAASmK,GAGhB,GAAIuB,GAAiBzQ,MAAWkP,EAGhC,OAAK3N,GAASxmD,KAAK6D,QAAQ4kD,QAASzoD,KAAM01D,KAOtC11D,KAAKkvD,OAAS+F,GAAmB1F,GAAkB2F,MACnDl1D,KAAKkvD,MAAQC,IAGjBnvD,KAAKkvD,MAAQlvD,KAAK21D,QAAQD,QAItB11D,KAAKkvD,OAASQ,GAAcD,GAAgBD,GAAcD,KAC1DvvD,KAAKw1D,QAAQE,MAfb11D,KAAK41D,aACL51D,KAAKkvD,MAAQgG,MAyBrBS,QAAS,SAASxB,KAOlBM,eAAgB,aAOhBmB,MAAO,cA8DX1P,EAAQ6J,GAAgBd,GAKpBnsC,UAKIymC,SAAU,GASdsM,SAAU,SAASnyD,GACf,GAAIoyD,GAAiB91D,KAAK6D,QAAQ0lD,QAClC,OAA0B,KAAnBuM,GAAwBpyD,EAAM6lD,SAASjjD,SAAWwvD,GAS7DH,QAAS,SAASjyD,GACd,GAAIwrD,GAAQlvD,KAAKkvD,MACb5J,EAAY5hD,EAAM4hD,UAElByQ,EAAe7G,GAASQ,GAAcD,IACtCl2C,EAAUvZ,KAAK61D,SAASnyD,EAG5B,OAAIqyD,KAAiBzQ,EAAYuE,KAAiBtwC,GACvC21C,EAAQK,GACRwG,GAAgBx8C,EACnB+rC,EAAYsE,GACLsF,EAAQM,GACNN,EAAQQ,GAGdR,EAAQO,GAFJC,GAIRwF,MAiBfhP,EAAQ8J,GAAeD,IAKnBjtC,UACIhY,MAAO,MACPgpB,UAAW,GACXy1B,SAAU,EACV7+B,UAAW2nC,IAGfoC,eAAgB,WACZ,GAAI/pC,GAAY1qB,KAAK6D,QAAQ6mB,UACzB+jC,IAOJ,OANI/jC,GAAYynC,IACZ1D,EAAQjnD,KAAKsnD,IAEbpkC,EAAY0nC,IACZ3D,EAAQjnD,KAAKonD,IAEVH,GAGXuH,cAAe,SAAStyD,GACpB,GAAIG,GAAU7D,KAAK6D,QACfoyD,GAAW,EACX7lB,EAAW1sC,EAAM0sC,SACjB1lB,EAAYhnB,EAAMgnB,UAClBkT,EAAIl6B,EAAMsnD,OACV/pC,EAAIvd,EAAMunD,MAed,OAZMvgC,GAAY7mB,EAAQ6mB,YAClB7mB,EAAQ6mB,UAAYynC,IACpBznC,EAAmB,IAANkT,EAAWsuB,GAAsB,EAAJtuB,EAASuuB,GAAiBC,GACpE6J,EAAWr4B,GAAK59B,KAAKiwD,GACrB7f,EAAWnrC,KAAK8R,IAAIrT,EAAMsnD,UAE1BtgC,EAAmB,IAANzJ,EAAWirC,GAAsB,EAAJjrC,EAASorC,GAAeC,GAClE2J,EAAWh1C,GAAKjhB,KAAKkwD,GACrB9f,EAAWnrC,KAAK8R,IAAIrT,EAAMunD,UAGlCvnD,EAAMgnB,UAAYA,EACXurC,GAAY7lB,EAAWvsC,EAAQiwB,WAAapJ,EAAY7mB,EAAQ6mB,WAG3EmrC,SAAU,SAASnyD,GACf,MAAOqsD,IAAe98C,UAAU4iD,SAASt1D,KAAKP,KAAM0D,KAC/C1D,KAAKkvD,MAAQQ,MAAkB1vD,KAAKkvD,MAAQQ,KAAgB1vD,KAAKg2D,cAActyD,KAGxFm0C,KAAM,SAASn0C,GAEX1D,KAAKiwD,GAAKvsD,EAAMsnD,OAChBhrD,KAAKkwD,GAAKxsD,EAAMunD,MAEhB,IAAIvgC,GAAYilC,EAAajsD,EAAMgnB,UAE/BA,KACAhnB,EAAM6xD,gBAAkBv1D,KAAK6D,QAAQiH,MAAQ4f,GAEjD1qB,KAAKumD,OAAO1O,KAAKt3C,KAAKP,KAAM0D,MAcpCwiD,EAAQiK,GAAiBJ,IAKrBjtC,UACIhY,MAAO,QACPgpB,UAAW,EACXy1B,SAAU,GAGdkL,eAAgB,WACZ,OAAQ/F,KAGZmH,SAAU,SAASnyD,GACf,MAAO1D,MAAKumD,OAAOsP,SAASt1D,KAAKP,KAAM0D,KAClCuB,KAAK8R,IAAIrT,EAAMsB,MAAQ,GAAKhF,KAAK6D,QAAQiwB,WAAa9zB,KAAKkvD,MAAQQ,KAG5E7X,KAAM,SAASn0C,GACX,GAAoB,IAAhBA,EAAMsB,MAAa,CACnB,GAAIkxD,GAAQxyD,EAAMsB,MAAQ,EAAI,KAAO,KACrCtB,GAAM6xD,gBAAkBv1D,KAAK6D,QAAQiH,MAAQorD,EAEjDl2D,KAAKumD,OAAO1O,KAAKt3C,KAAKP,KAAM0D,MAiBpCwiD,EAAQkK,GAAiBnB,GAKrBnsC,UACIhY,MAAO,QACPy+C,SAAU,EACVv+B,KAAM,IACN8I,UAAW,GAGf2gC,eAAgB,WACZ,OAAQzF,KAGZ2G,QAAS,SAASjyD,GACd,GAAIG,GAAU7D,KAAK6D,QACfsyD,EAAgBzyD,EAAM6lD,SAASjjD,SAAWzC,EAAQ0lD,SAClD6M,EAAgB1yD,EAAM0sC,SAAWvsC,EAAQiwB,UACzCuiC,EAAY3yD,EAAM+mD,UAAY5mD,EAAQmnB,IAM1C,IAJAhrB,KAAKswD,OAAS5sD,GAIT0yD,IAAkBD,GAAkBzyD,EAAM4hD,WAAasE,GAAYC,MAAkBwM,EACtFr2D,KAAK41D,YACF,IAAIlyD,EAAM4hD,UAAYoE,GACzB1pD,KAAK41D,QACL51D,KAAKqwD,OAAS3K,EAAkB,WAC5B1lD,KAAKkvD,MAAQ+F,GACbj1D,KAAKw1D,WACN3xD,EAAQmnB,KAAMhrB,UACd,IAAI0D,EAAM4hD,UAAYsE,GACzB,MAAOqL,GAEX,OAAOC,KAGXU,MAAO,WACHtyB,aAAatjC,KAAKqwD,SAGtBxY,KAAM,SAASn0C,GACP1D,KAAKkvD,QAAU+F,KAIfvxD,GAAUA,EAAM4hD,UAAYsE,GAC5B5pD,KAAKqoD,QAAQxQ,KAAK73C,KAAK6D,QAAQiH,MAAQ,KAAMpH,IAE7C1D,KAAKswD,OAAO9F,UAAYvnC,KACxBjjB,KAAKqoD,QAAQxQ,KAAK73C,KAAK6D,QAAQiH,MAAO9K,KAAKswD,aAevDpK,EAAQqK,GAAkBR,IAKtBjtC,UACIhY,MAAO,SACPgpB,UAAW,EACXy1B,SAAU,GAGdkL,eAAgB,WACZ,OAAQ/F,KAGZmH,SAAU,SAASnyD,GACf,MAAO1D,MAAKumD,OAAOsP,SAASt1D,KAAKP,KAAM0D,KAClCuB,KAAK8R,IAAIrT,EAAM4nD,UAAYtrD,KAAK6D,QAAQiwB,WAAa9zB,KAAKkvD,MAAQQ,OAc/ExJ,EAAQsK,GAAiBT,IAKrBjtC,UACIhY,MAAO,QACPgpB,UAAW,GACX83B,SAAU,GACVlhC,UAAWynC,GAAuBC,GAClC7I,SAAU,GAGdkL,eAAgB,WACZ,MAAOzE,IAAc/8C,UAAUwhD,eAAel0D,KAAKP,OAGvD61D,SAAU,SAASnyD,GACf,GACIkoD,GADAlhC,EAAY1qB,KAAK6D,QAAQ6mB,SAW7B,OARIA,IAAaynC,GAAuBC,IACpCxG,EAAWloD,EAAMwnD,gBACVxgC,EAAYynC,GACnBvG,EAAWloD,EAAM0nD,iBACV1gC,EAAY0nC,KACnBxG,EAAWloD,EAAM2nD,kBAGdrrD,KAAKumD,OAAOsP,SAASt1D,KAAKP,KAAM0D,IACnCgnB,EAAYhnB,EAAMonD,iBAClBpnD,EAAM0sC,SAAWpwC,KAAK6D,QAAQiwB,WAC9BpwB,EAAM8nD,aAAexrD,KAAK6D,QAAQ0lD,UAClCxyC,GAAI60C,GAAY5rD,KAAK6D,QAAQ+nD,UAAYloD,EAAM4hD,UAAYsE,IAGnE/R,KAAM,SAASn0C,GACX,GAAIgnB,GAAYilC,EAAajsD,EAAMonD,gBAC/BpgC,IACA1qB,KAAKqoD,QAAQxQ,KAAK73C,KAAK6D,QAAQiH,MAAQ4f,EAAWhnB,GAGtD1D,KAAKqoD,QAAQxQ,KAAK73C,KAAK6D,QAAQiH,MAAOpH,MA2B9CwiD,EAAQuK,GAAexB,GAKnBnsC,UACIhY,MAAO,MACPy+C,SAAU,EACV+M,KAAM,EACNtZ,SAAU,IACVhyB,KAAM,IACN8I,UAAW,EACXyiC,aAAc,IAGlB9B,eAAgB,WACZ,OAAQ1F,KAGZ4G,QAAS,SAASjyD,GACd,GAAIG,GAAU7D,KAAK6D,QAEfsyD,EAAgBzyD,EAAM6lD,SAASjjD,SAAWzC,EAAQ0lD,SAClD6M,EAAgB1yD,EAAM0sC,SAAWvsC,EAAQiwB,UACzC0iC,EAAiB9yD,EAAM+mD,UAAY5mD,EAAQmnB,IAI/C,IAFAhrB,KAAK41D,QAEAlyD,EAAM4hD,UAAYoE,IAAgC,IAAf1pD,KAAKiyB,MACzC,MAAOjyB,MAAKy2D,aAKhB,IAAIL,GAAiBI,GAAkBL,EAAe,CAClD,GAAIzyD,EAAM4hD,WAAasE,GACnB,MAAO5pD,MAAKy2D,aAGhB,IAAIC,GAAgB12D,KAAK0wD,MAAShtD,EAAM8mD,UAAYxqD,KAAK0wD,MAAQ7sD,EAAQm5C,UAAY,EACjF2Z,GAAiB32D,KAAK2wD,SAAW/F,EAAY5qD,KAAK2wD,QAASjtD,EAAM2yC,QAAUxyC,EAAQ0yD,YAEvFv2D,MAAK0wD,MAAQhtD,EAAM8mD,UACnBxqD,KAAK2wD,QAAUjtD,EAAM2yC,OAEhBsgB,GAAkBD,EAGnB12D,KAAKiyB,OAAS,EAFdjyB,KAAKiyB,MAAQ,EAKjBjyB,KAAKswD,OAAS5sD,CAId,IAAIkzD,GAAW52D,KAAKiyB,MAAQpuB,EAAQyyD,IACpC,IAAiB,IAAbM,EAGA,MAAK52D,MAAKq1D,sBAGNr1D,KAAKqwD,OAAS3K,EAAkB,WAC5B1lD,KAAKkvD,MAAQ+F,GACbj1D,KAAKw1D,WACN3xD,EAAQm5C,SAAUh9C,MACd0vD,IANAuF,GAUnB,MAAOC,KAGXuB,YAAa,WAIT,MAHAz2D,MAAKqwD,OAAS3K,EAAkB,WAC5B1lD,KAAKkvD,MAAQgG,IACdl1D,KAAK6D,QAAQm5C,SAAUh9C,MACnBk1D,IAGXU,MAAO,WACHtyB,aAAatjC,KAAKqwD,SAGtBxY,KAAM,WACE73C,KAAKkvD,OAAS+F,KACdj1D,KAAKswD,OAAOsG,SAAW52D,KAAKiyB,MAC5BjyB,KAAKqoD,QAAQxQ,KAAK73C,KAAK6D,QAAQiH,MAAO9K,KAAKswD,YAoBvDtsD,GAAO6yD,QAAU,QAMjB7yD,GAAO8e,UAOHg0C,WAAW,EAQX/F,YAAawD,GAMb9L,QAAQ,EASRH,YAAa,KAObO,WAAY,KAOZgI,SAEKN,IAAmB9H,QAAQ,KAC3B0H,IAAkB1H,QAAQ,IAAS,YACnC+H,IAAkB9lC,UAAWynC,MAC7BnC,IAAgBtlC,UAAWynC,KAAwB,WACnD1B,KACAA,IAAgB3lD,MAAO,YAAawrD,KAAM,IAAK,SAC/ClG,KAQLe,UAMI4F,WAAY,OAOZC,YAAa,OASbC,aAAc,OAOdC,eAAgB,OAOhBC,SAAU,OAQVC,kBAAmB,iBAI3B,IAAIC,IAAO,EACPC,GAAc,CA8BlBxS,IAAQ7xC,WAMJmF,IAAK,SAASvU,GAaV,MAZAohD,IAAOjlD,KAAK6D,QAASA,GAGjBA,EAAQktD,aACR/wD,KAAK+wD,YAAY7wB,SAEjBr8B,EAAQykD,cAERtoD,KAAK0D,MAAMy7B,UACXn/B,KAAK0D,MAAMwH,OAASrH,EAAQykD,YAC5BtoD,KAAK0D,MAAMglD,QAER1oD,MASX+vC,KAAM,SAASwnB,GACXv3D,KAAK8pD,QAAQtF,QAAU+S,EAAQD,GAAcD,IASjDrN,UAAW,SAASmK,GAChB,GAAIrK,GAAU9pD,KAAK8pD,OACnB,KAAIA,EAAQtF,QAAZ,CAKAxkD,KAAK+wD,YAAY2D,gBAAgBP,EAEjC,IAAIrE,GACAc,EAAc5wD,KAAK4wD,YAKnB4G,EAAgB1N,EAAQ0N,gBAIvBA,GAAkBA,GAAiBA,EAActI,MAAQ+F,MAC1DuC,EAAgB1N,EAAQ0N,cAAgB,KAI5C,KADA,GAAI/wD,GAAI,EACDA,EAAImqD,EAAYtqD,QACnBwpD,EAAac,EAAYnqD,GAQrBqjD,EAAQtF,UAAY8S,IACfE,GAAiB1H,GAAc0H,IAChC1H,EAAWwF,iBAAiBkC,GAGhC1H,EAAW8F,QAFX9F,EAAW9F,UAAUmK,IAOpBqD,GAAiB1H,EAAWZ,OAASQ,GAAcD,GAAgBD,MACpEgI,EAAgB1N,EAAQ0N,cAAgB1H,GAE5CrpD,MASRuwB,IAAK,SAAS84B,GACV,GAAIA,YAAsBb,GACtB,MAAOa,EAIX,KAAK,GADDc,GAAc5wD,KAAK4wD,YACdnqD,EAAI,EAAGA,EAAImqD,EAAYtqD,OAAQG,IACpC,GAAImqD,EAAYnqD,GAAG5C,QAAQiH,OAASglD,EAChC,MAAOc,GAAYnqD,EAG3B,OAAO,OASXwf,IAAK,SAAS6pC,GACV,GAAIlK,EAAekK,EAAY,MAAO9vD,MAClC,MAAOA,KAIX,IAAIy3D,GAAWz3D,KAAKg3B,IAAI84B,EAAWjsD,QAAQiH,MAS3C,OARI2sD,IACAz3D,KAAK2hC,OAAO81B,GAGhBz3D,KAAK4wD,YAAYppD,KAAKsoD,GACtBA,EAAWzH,QAAUroD,KAErBA,KAAK+wD,YAAY7wB,SACV4vB,GAQXnuB,OAAQ,SAASmuB,GACb,GAAIlK,EAAekK,EAAY,SAAU9vD,MACrC,MAAOA,KAMX,IAHA8vD,EAAa9vD,KAAKg3B,IAAI84B,GAGN,CACZ,GAAIc,GAAc5wD,KAAK4wD,YACnBxnD,EAAQ+9C,EAAQyJ,EAAad,EAEnB,MAAV1mD,IACAwnD,EAAYvnD,OAAOD,EAAO,GAC1BpJ,KAAK+wD,YAAY7wB,UAIzB,MAAOlgC,OASXo/B,GAAI,SAASilB,EAAQgB,GACjB,GAAIyL,GAAW9wD,KAAK8wD,QAKpB,OAJAhL,GAAKgB,EAASzC,GAAS,SAASv5C,GAC5BgmD,EAAShmD,GAASgmD,EAAShmD,OAC3BgmD,EAAShmD,GAAOtD,KAAK69C,KAElBrlD,MASXu/B,IAAK,SAAS8kB,EAAQgB,GAClB,GAAIyL,GAAW9wD,KAAK8wD,QAQpB,OAPAhL,GAAKgB,EAASzC,GAAS,SAASv5C,GACvBu6C,EAGDyL,EAAShmD,IAAUgmD,EAAShmD,GAAOzB,OAAO89C,EAAQ2J,EAAShmD,GAAQu6C,GAAU,SAFtEyL,GAAShmD,KAKjB9K,MAQX63C,KAAM,SAAS/sC,EAAOkN,GAEdhY,KAAK6D,QAAQizD,WACb1F,GAAgBtmD,EAAOkN,EAI3B,IAAI84C,GAAW9wD,KAAK8wD,SAAShmD,IAAU9K,KAAK8wD,SAAShmD,GAAOoC,OAC5D,IAAK4jD,GAAaA,EAASxqD,OAA3B,CAIA0R,EAAKpQ,KAAOkD,EACZkN,EAAKnN,eAAiB,WAClBmN,EAAK6rC,SAASh5C,iBAIlB,KADA,GAAIpE,GAAI,EACDA,EAAIqqD,EAASxqD,QAChBwqD,EAASrqD,GAAGuR,GACZvR,MAQR04B,QAAS,WACLn/B,KAAKoK,SAAW4mD,GAAehxD,MAAM,GAErCA,KAAK8wD,YACL9wD,KAAK8pD,WACL9pD,KAAK0D,MAAMy7B,UACXn/B,KAAKoK,QAAU,OA+BvB66C,GAAOjhD,IACH0lD,YAAaA,GACbwE,WAAYA,GACZtE,UAAWA,GACXC,aAAcA,GAEdsF,eAAgBA,GAChBO,YAAaA,GACbD,cAAeA,GACfD,YAAaA,GACbyF,iBAAkBA,GAClB1F,gBAAiBA,GACjB2F,aAAcA,GAEdhJ,eAAgBA,GAChBC,eAAgBA,GAChBC,gBAAiBA,GACjBC,aAAcA,GACdC,eAAgBA,GAChB6F,qBAAsBA,GACtBC,mBAAoBA,GACpBC,cAAeA,GAEfvN,QAASA,GACTsD,MAAOA,EACPmG,YAAaA,EAEbtF,WAAYA,EACZG,WAAYA,EACZL,kBAAmBA,EACnBI,gBAAiBA,EACjBiE,iBAAkBA,EAElB6B,WAAYA,EACZc,eAAgBA,GAChB2H,IAAKjH,GACLkH,IAAK3H,GACL4H,MAAOpH,GACPqH,MAAO1H,GACP2H,OAAQvH,GACRwH,MAAO3H,GAEPhxB,GAAIynB,EACJtnB,IAAKwnB,EACLjB,KAAMA,EACN+L,MAAOA,GACPlrD,OAAQA,GACRs+C,OAAQA,GACRiB,QAASA,EACTP,OAAQA,EACR6B,SAAUA,GAKd,IAAIwQ,IAAgC,mBAAXjtD,GAAyBA,EAA0B,mBAAT2vC,MAAuBA,OAC1Fsd,IAAWh0D,OAASA,GAGdkgD,EAAgC,WAC9B,MAAOlgD,KACTzD,KAAKX,EAASM,EAAqBN,EAASC,KAASqkD,IAAkC39C,IAAc1G,EAAOD,QAAUskD,KAOzHn5C,OAAQqyB,SAAU,WAKjB,SAASv9B,EAAQD,EAASM,GAkB9B,QAAS2B,GAAMu9C,EAAMv7C,GACnB,GAAIof,GAAMlf,IAASgjB,MAAM,GAAGC,QAAQ,GAAGC,QAAQ,GAAGC,aAAa,EAC/DlnB,MAAK4yC,MAAQ3vB,EAAIkF,QAAQlC,IAAI,GAAI,QAAQne,UACzC9H,KAAK8yC,IAAM7vB,EAAIkF,QAAQlC,IAAI,EAAG,QAAQne,UAEtC9H,KAAKo/C,KAAOA,EACZp/C,KAAKi4D,gBAAkB,EACvBj4D,KAAKk4D,YAAc,EACnBl4D,KAAKm4D,cAAe,EACpBn4D,KAAKo4D,YAAa,EAGlBp4D,KAAK4+C,gBACHhM,MAAO,KACPE,IAAK,KACL/uC,OAAQA,EACR2mB,UAAW,aACX2tC,UAAU,EACVC,UAAU,EACV1zD,IAAK,KACLC,IAAK,KACL0zD,QAAS,GACTC,QAAS,UAEXx4D,KAAK6D,QAAUlD,EAAKgG,UAAW3G,KAAK4+C,gBAEpC5+C,KAAK6G,OACHwnD,UAEFruD,KAAKy4D,eAAiB,KAGtBz4D,KAAKo/C,KAAKE,QAAQlgB,GAAG,WAAYp/B,KAAK04D,aAAanZ,KAAKv/C,OACxDA,KAAKo/C,KAAKE,QAAQlgB,GAAG,UAAWp/B,KAAK24D,QAAQpZ,KAAKv/C,OAClDA,KAAKo/C,KAAKE,QAAQlgB,GAAG,SAAUp/B,KAAK44D,WAAWrZ,KAAKv/C,OAGpDA,KAAKo/C,KAAKE,QAAQlgB,GAAG,aAAcp/B,KAAK64D,cAActZ,KAAKv/C,OAG3DA,KAAKo/C,KAAKE,QAAQlgB,GAAG,QAASp/B,KAAK84D,SAASvZ,KAAKv/C,OACjDA,KAAKo/C,KAAKE,QAAQlgB,GAAG,QAASp/B,KAAK+4D,SAASxZ,KAAKv/C,OAEjDA,KAAKg/B,WAAWn7B,GAsClB,QAASm1D,GAAkBtuC,GACzB,GAAiB,cAAbA,GAA0C,YAAbA,EAC/B,KAAM,IAAIxjB,WAAU,sBAAwBwjB,EAAY,yCA2gB5D,QAASuuC,GAAW5K,EAAOjkD,GACzB,OACEwzB,EAAGywB,EAAMzwB,EAAIj9B,EAAK6H,gBAAgB4B,GAClC6W,EAAGotC,EAAMptC,EAAItgB,EAAKiI,eAAewB,IA/mBrC,GAAIzJ,GAAOT,EAAoB,GAE3B6D,GADa7D,EAAoB,IACxBA,EAAoB,IAC7BsC,EAAYtC,EAAoB,IAChC0B,EAAW1B,EAAoB,GAwDnC2B,GAAMoR,UAAY,GAAIzQ,GAkBtBX,EAAMoR,UAAU+rB,WAAa,SAAUn7B,GACrC,GAAIA,EAAS,CAEX,GAAIoM,IAAU,YAAa,MAAO,MAAO,UAAW,UAAW,WAAY,WAAY,SAAU,WAAY,cAAe,UAC5HtP,GAAKiG,gBAAgBqJ,EAAQjQ,KAAK6D,QAASA,IAEvC,SAAWA,IAAW,OAASA,KAEjC7D,KAAK+9C,SAASl6C,EAAQ+uC,MAAO/uC,EAAQivC,OA4B3CjxC,EAAMoR,UAAU8qC,SAAW,SAAUnL,EAAOE,EAAKgO,EAAWoY,GACtDA,KAAW,IACbA,GAAS,EAEX,IAAIC,GAAsB5yD,QAATqsC,EAAqBjyC,EAAKgH,QAAQirC,EAAO,QAAQ9qC,UAAY,KAC1EsxD,EAAkB7yD,QAAPusC,EAAmBnyC,EAAKgH,QAAQmrC,EAAK,QAAQhrC,UAAY,IAGxE,IAFA9H,KAAKq5D,mBAEDvY,EAAW,CAEb,GAAI9gB,GAAKhgC,KACLs5D,EAAYt5D,KAAK4yC,MACjB2mB,EAAUv5D,KAAK8yC,IACfrsB,EAAgC,gBAAdq6B,IAA0B,YAAcA,GAAYA,EAAUr6B,SAAW,IAC3F+yC,EAAkC,gBAAd1Y,IAA0B,kBAAoBA,GAAYA,EAAU2Y,eAAiB,gBACzGA,EAAiB94D,EAAKmR,gBAAgB0nD,EAC1C,KAAKC,EACH,KAAM,IAAIzyD,OAAM,2BAA6By7B,KAAKC,UAAU82B,GAAc,kBAAyBpyD,OAAO6H,KAAKtO,EAAKmR,iBAAiB5I,KAAK,MAG5I,IAAIwwD,IAAW,GAAIr0D,OAAOyC,UACtB6xD,GAAa,EAEbriD,EAAO,QAASA,KAClB,IAAK0oB,EAAGn5B,MAAMwnD,MAAMuL,SAAU,CAC5B,GAAI32C,IAAM,GAAI5d,OAAOyC,UACjBkjB,EAAO/H,EAAMy2C,EACbG,EAAOJ,EAAezuC,EAAOvE,GAC7BqzC,EAAO9uC,EAAOvE,EACd9Y,EAAImsD,GAAuB,OAAfX,EAAsBA,EAAaG,GAAaH,EAAaG,GAAaO,EACtFruD,EAAIsuD,GAAqB,OAAbV,EAAoBA,EAAWG,GAAWH,EAAWG,GAAWM,CAEhFjM,GAAU5tB,EAAG+5B,YAAYpsD,EAAGnC,GAC5B5J,EAASo4D,kBAAkBh6B,EAAGn8B,QAAQE,OAAQi8B,EAAGof,KAAMpf,EAAGn8B,QAAQ27C,aAClEma,EAAaA,GAAc/L,EACvBA,GACF5tB,EAAGof,KAAKE,QAAQzH,KAAK,eAAiBjF,MAAO,GAAIvtC,MAAK26B,EAAG4S,OAAQE,IAAK,GAAIztC,MAAK26B,EAAG8S,KAAMomB,OAAQA,IAG9FY,EACEH,GACF35B,EAAGof,KAAKE,QAAQzH,KAAK,gBAAkBjF,MAAO,GAAIvtC,MAAK26B,EAAG4S,OAAQE,IAAK,GAAIztC,MAAK26B,EAAG8S,KAAMomB,OAAQA,IAKnGl5B,EAAGy4B,eAAiBvuD,WAAWoN,EAAM,KAK3C,OAAOA,KAEP,GAAIs2C,GAAU5tD,KAAK+5D,YAAYZ,EAAYC,EAE3C,IADAx3D,EAASo4D,kBAAkBh6D,KAAK6D,QAAQE,OAAQ/D,KAAKo/C,KAAMp/C,KAAK6D,QAAQ27C,aACpEoO,EAAS,CACX,GAAIjuB,IAAWiT,MAAO,GAAIvtC,MAAKrF,KAAK4yC,OAAQE,IAAK,GAAIztC,MAAKrF,KAAK8yC,KAAMomB,OAAQA,EAC7El5D,MAAKo/C,KAAKE,QAAQzH,KAAK,cAAelY,GACtC3/B,KAAKo/C,KAAKE,QAAQzH,KAAK,eAAgBlY,KAS7C99B,EAAMoR,UAAUomD,iBAAmB,WAC7Br5D,KAAKy4D,iBACPn1B,aAAatjC,KAAKy4D,gBAClBz4D,KAAKy4D,eAAiB,OAa1B52D,EAAMoR,UAAU8mD,YAAc,SAAUnnB,EAAOE,GAC7C,GAII5qB,GAJA+xC,EAAoB,MAATrnB,EAAgBjyC,EAAKgH,QAAQirC,EAAO,QAAQ9qC,UAAY9H,KAAK4yC,MACxEsnB,EAAgB,MAAPpnB,EAAcnyC,EAAKgH,QAAQmrC,EAAK,QAAQhrC,UAAY9H,KAAK8yC,IAClEjuC,EAA0B,MAApB7E,KAAK6D,QAAQgB,IAAclE,EAAKgH,QAAQ3H,KAAK6D,QAAQgB,IAAK,QAAQiD,UAAY,KACpFlD,EAA0B,MAApB5E,KAAK6D,QAAQe,IAAcjE,EAAKgH,QAAQ3H,KAAK6D,QAAQe,IAAK,QAAQkD,UAAY,IAIxF,IAAIrC,MAAMw0D,IAA0B,OAAbA,EACrB,KAAM,IAAIjzD,OAAM,kBAAoB4rC,EAAQ,IAE9C,IAAIntC,MAAMy0D,IAAsB,OAAXA,EACnB,KAAM,IAAIlzD,OAAM,gBAAkB8rC,EAAM,IAyC1C,IArCamnB,EAATC,IACFA,EAASD,GAIC,OAARr1D,GACaA,EAAXq1D,IACF/xC,EAAOtjB,EAAMq1D,EACbA,GAAY/xC,EACZgyC,GAAUhyC,EAGC,MAAPrjB,GACEq1D,EAASr1D,IACXq1D,EAASr1D,IAOL,OAARA,GACEq1D,EAASr1D,IACXqjB,EAAOgyC,EAASr1D,EAChBo1D,GAAY/xC,EACZgyC,GAAUhyC,EAGC,MAAPtjB,GACaA,EAAXq1D,IACFA,EAAWr1D,IAOU,OAAzB5E,KAAK6D,QAAQ00D,QAAkB,CACjC,GAAIA,GAAUnuC,WAAWpqB,KAAK6D,QAAQ00D,QACxB,GAAVA,IACFA,EAAU,GAEYA,EAApB2B,EAASD,IACPj6D,KAAK8yC,IAAM9yC,KAAK4yC,QAAU2lB,GAAW0B,EAAWj6D,KAAK4yC,OAASsnB,EAASl6D,KAAK8yC,KAE9EmnB,EAAWj6D,KAAK4yC,MAChBsnB,EAASl6D,KAAK8yC,MAGd5qB,EAAOqwC,GAAW2B,EAASD,GAC3BA,GAAY/xC,EAAO,EACnBgyC,GAAUhyC,EAAO,IAMvB,GAA6B,OAAzBloB,KAAK6D,QAAQ20D,QAAkB,CACjC,GAAIA,GAAUpuC,WAAWpqB,KAAK6D,QAAQ20D,QACxB,GAAVA,IACFA,EAAU,GAGR0B,EAASD,EAAWzB,IAClBx4D,KAAK8yC,IAAM9yC,KAAK4yC,QAAU4lB,GAAWyB,EAAWj6D,KAAK4yC,OAASsnB,EAASl6D,KAAK8yC,KAE9EmnB,EAAWj6D,KAAK4yC,MAChBsnB,EAASl6D,KAAK8yC,MAGd5qB,EAAOgyC,EAASD,EAAWzB,EAC3ByB,GAAY/xC,EAAO,EACnBgyC,GAAUhyC,EAAO,IAKvB,GAAI0lC,GAAU5tD,KAAK4yC,OAASqnB,GAAYj6D,KAAK8yC,KAAOonB,CASpD,OANMD,IAAYj6D,KAAK4yC,OAASqnB,GAAYj6D,KAAK8yC,KAAOonB,GAAUl6D,KAAK4yC,OAASsnB,GAAUl6D,KAAK8yC,KAAU9yC,KAAK4yC,OAASqnB,GAAYj6D,KAAK4yC,OAASsnB,GAAUl6D,KAAK8yC,KAAOmnB,GAAYj6D,KAAK8yC,KAAOonB,GAC7Ll6D,KAAKo/C,KAAKE,QAAQzH,KAAK,oBAGzB73C,KAAK4yC,MAAQqnB,EACbj6D,KAAK8yC,IAAMonB,EACJtM,GAOT/rD,EAAMoR,UAAUknD,SAAW,WACzB,OACEvnB,MAAO5yC,KAAK4yC,MACZE,IAAK9yC,KAAK8yC,MAUdjxC,EAAMoR,UAAUmnD,WAAa,SAAU57B,EAAO67B,GAC5C,MAAOx4D,GAAMu4D,WAAWp6D,KAAK4yC,MAAO5yC,KAAK8yC,IAAKtU,EAAO67B,IAWvDx4D,EAAMu4D,WAAa,SAAUxnB,EAAOE,EAAKtU,EAAO67B,GAI9C,MAHoB9zD,UAAhB8zD,IACFA,EAAc,GAEH,GAAT77B,GAAcsU,EAAMF,GAAS,GAE7BprB,OAAQorB,EACR5tC,MAAOw5B,GAASsU,EAAMF,EAAQynB,KAI9B7yC,OAAQ,EACRxiB,MAAO,IAUbnD,EAAMoR,UAAUylD,aAAe,SAAU5tD,GACvC9K,KAAKi4D,gBAAkB,EACvBj4D,KAAKs6D,cAAgB,EAGhBt6D,KAAK6D,QAAQw0D,UAGbr4D,KAAKu6D,eAAezvD,IAIpB9K,KAAK6G,MAAMwnD,MAAMmM,gBAEtBx6D,KAAK6G,MAAMwnD,MAAMzb,MAAQ5yC,KAAK4yC,MAC9B5yC,KAAK6G,MAAMwnD,MAAMvb,IAAM9yC,KAAK8yC,IAC5B9yC,KAAK6G,MAAMwnD,MAAMuL,UAAW,EAExB55D,KAAKo/C,KAAKxF,IAAIl6C,OAChBM,KAAKo/C,KAAKxF,IAAIl6C,KAAKoP,MAAMooC,OAAS,UAStCr1C,EAAMoR,UAAU0lD,QAAU,SAAU7tD,GAClC,GAAK9K,KAAK6G,MAAMwnD,MAAMuL,UAGjB55D,KAAK6D,QAAQw0D,UAKbr4D,KAAK6G,MAAMwnD,MAAMmM,cAAtB,CAEA,GAAI9vC,GAAY1qB,KAAK6D,QAAQ6mB,SAC7BsuC,GAAkBtuC,EAClB,IAAIqB,GAAqB,cAAbrB,EAA4B5f,EAAMkgD,OAASlgD,EAAMmgD,MAC7Dl/B,IAAS/rB,KAAKi4D,eACd,IAAIjb,GAAWh9C,KAAK6G,MAAMwnD,MAAMvb,IAAM9yC,KAAK6G,MAAMwnD,MAAMzb,MAGnDnsB,EAAW7kB,EAAS64D,yBAAyBz6D,KAAKo/C,KAAKI,YAAax/C,KAAK4yC,MAAO5yC,KAAK8yC,IACzFkK,IAAYv2B,CAEZ,IAAI+X,GAAqB,cAAb9T,EAA4B1qB,KAAKo/C,KAAKC,SAAShJ,OAAO7X,MAAQx+B,KAAKo/C,KAAKC,SAAShJ,OAAO5X,OAChGi8B,GAAa3uC,EAAQyS,EAAQwe,EAC7Bid,EAAWj6D,KAAK6G,MAAMwnD,MAAMzb,MAAQ8nB,EACpCR,EAASl6D,KAAK6G,MAAMwnD,MAAMvb,IAAM4nB,EAGhCC,EAAY/4D,EAASg5D,mBAAmB56D,KAAKo/C,KAAKI,YAAaya,EAAUj6D,KAAKs6D,cAAgBvuC,GAAO,GACrG8uC,EAAUj5D,EAASg5D,mBAAmB56D,KAAKo/C,KAAKI,YAAa0a,EAAQl6D,KAAKs6D,cAAgBvuC,GAAO,EACrG,IAAI4uC,GAAaV,GAAYY,GAAWX,EAKtC,MAJAl6D,MAAKi4D,iBAAmBlsC,EACxB/rB,KAAK6G,MAAMwnD,MAAMzb,MAAQ+nB,EACzB36D,KAAK6G,MAAMwnD,MAAMvb,IAAM+nB,MACvB76D,MAAK24D,QAAQ7tD,EAIf9K,MAAKs6D,cAAgBvuC,EACrB/rB,KAAK+5D,YAAYE,EAAUC,EAE3B,IAAIY,GAAY,GAAIz1D,MAAKrF,KAAK4yC,OAC1BmoB,EAAU,GAAI11D,MAAKrF,KAAK8yC,IAG5B9yC,MAAKo/C,KAAKE,QAAQzH,KAAK,eACrBjF,MAAOkoB,EACPhoB,IAAKioB,EACL7B,QAAQ,MASZr3D,EAAMoR,UAAU2lD,WAAa,SAAU9tD,GAChC9K,KAAK6G,MAAMwnD,MAAMuL,UAGjB55D,KAAK6D,QAAQw0D,UAKbr4D,KAAK6G,MAAMwnD,MAAMmM,gBAEtBx6D,KAAK6G,MAAMwnD,MAAMuL,UAAW,EACxB55D,KAAKo/C,KAAKxF,IAAIl6C,OAChBM,KAAKo/C,KAAKxF,IAAIl6C,KAAKoP,MAAMooC,OAAS,QAIpCl3C,KAAKo/C,KAAKE,QAAQzH,KAAK,gBACrBjF,MAAO,GAAIvtC,MAAKrF,KAAK4yC,OACrBE,IAAK,GAAIztC,MAAKrF,KAAK8yC,KACnBomB,QAAQ,MAUZr3D,EAAMoR,UAAU4lD,cAAgB,SAAU/tD,GAExC,GAAM9K,KAAK6D,QAAQy0D,UAAYt4D,KAAK6D,QAAQw0D,UAGvCr4D,KAAKu6D,eAAezvD,MAGrB9K,KAAK6D,QAAQm3D,SAAYlwD,EAAM9K,KAAK6D,QAAQm3D,UAAhD,CAGA,GAAIjvC,GAAQ,CAcZ,IAbIjhB,EAAM4tC,WAER3sB,EAAQjhB,EAAM4tC,WAAa,IAClB5tC,EAAM6tC,SAIf5sB,GAASjhB,EAAM6tC,OAAS,GAMtB5sB,EAAO,CAKT,GAAI/mB,EAEFA,GADU,EAAR+mB,EACM,EAAIA,EAAQ,EAEZ,GAAK,EAAIA,EAAQ,EAI3B,IAAIkvC,GAAUhC,GAAar7B,EAAG9yB,EAAMg9B,QAAS7mB,EAAGnW,EAAMm9B,SAAWjoC,KAAKo/C,KAAKxF,IAAIvD,QAC3E6kB,EAAcl7D,KAAKm7D,eAAeF,EAEtCj7D,MAAKo7D,KAAKp2D,EAAOk2D,EAAanvC,GAKhCjhB,EAAMD,mBAORhJ,EAAMoR,UAAU6lD,SAAW,SAAUhuD,GACnC9K,KAAK6G,MAAMwnD,MAAMzb,MAAQ5yC,KAAK4yC,MAC9B5yC,KAAK6G,MAAMwnD,MAAMvb,IAAM9yC,KAAK8yC,IAC5B9yC,KAAK6G,MAAMwnD,MAAMmM,eAAgB,EACjCx6D,KAAK6G,MAAMwnD,MAAMhY,OAAS,KAC1Br2C,KAAKk4D,YAAc,EACnBl4D,KAAKi4D,gBAAkB,GAQzBp2D,EAAMoR,UAAU8lD,SAAW,SAAUjuD,GAEnC,GAAM9K,KAAK6D,QAAQy0D,UAAYt4D,KAAK6D,QAAQw0D,SAA5C,CAEAr4D,KAAK6G,MAAMwnD,MAAMmM,eAAgB,EAE5Bx6D,KAAK6G,MAAMwnD,MAAMhY,SACpBr2C,KAAK6G,MAAMwnD,MAAMhY,OAAS4iB,EAAWnuD,EAAMurC,OAAQr2C,KAAKo/C,KAAKxF,IAAIvD,QAGnE,IAAIrxC,GAAQ,GAAK8F,EAAM9F,MAAQhF,KAAKk4D,aAChCmD,EAAar7D,KAAKm7D,eAAen7D,KAAK6G,MAAMwnD,MAAMhY,QAElDilB,EAAiB15D,EAAS64D,yBAAyBz6D,KAAKo/C,KAAKI,YAAax/C,KAAK4yC,MAAO5yC,KAAK8yC,KAC3FyoB,EAAuB35D,EAAS45D,wBAAwBx7D,KAAK6D,QAAQE,OAAQ/D,KAAKo/C,KAAKI,YAAax/C,KAAMq7D,GAC1GI,EAAsBH,EAAiBC,EAGvCtB,EAAWoB,EAAaE,GAAwBv7D,KAAK6G,MAAMwnD,MAAMzb,OAASyoB,EAAaE,IAAyBv2D,EAChHk1D,EAASmB,EAAaI,GAAuBz7D,KAAK6G,MAAMwnD,MAAMvb,KAAOuoB,EAAaI,IAAwBz2D,CAG9GhF,MAAKm4D,aAA4B,GAAb,EAAInzD,EACxBhF,KAAKo4D,WAA0B,GAAbpzD,EAAQ,CAE1B,IAAI21D,GAAY/4D,EAASg5D,mBAAmB56D,KAAKo/C,KAAKI,YAAaya,EAAU,EAAIj1D,GAAO,GACpF61D,EAAUj5D,EAASg5D,mBAAmB56D,KAAKo/C,KAAKI,YAAa0a,EAAQl1D,EAAQ,GAAG,IAChF21D,GAAaV,GAAYY,GAAWX,KACtCl6D,KAAK6G,MAAMwnD,MAAMzb,MAAQ+nB,EACzB36D,KAAK6G,MAAMwnD,MAAMvb,IAAM+nB,EACvB76D,KAAKk4D,YAAc,EAAIptD,EAAM9F,MAC7Bi1D,EAAWU,EACXT,EAASW,GAGX76D,KAAK+9C,SAASkc,EAAUC,GAAQ,GAAO,GAEvCl6D,KAAKm4D,cAAe,EACpBn4D,KAAKo4D,YAAa,IAUpBv2D,EAAMoR,UAAUsnD,eAAiB,SAAUzvD,GAGzC,GAAIg9B,GAAUh9B,EAAMurC,OAASvrC,EAAMurC,OAAOzY,EAAI9yB,EAAMg9B,QAChDlK,EAAIkK,EAAUnnC,EAAK6H,gBAAgBxI,KAAKo/C,KAAKxF,IAAIoJ,iBACjDh4B,EAAOhrB,KAAKo/C,KAAKz+C,KAAKo/C,OAAOniB,EAEjC,OAAO5S,IAAQhrB,KAAK4yC,OAAS5nB,GAAQhrB,KAAK8yC,KAS5CjxC,EAAMoR,UAAUkoD,eAAiB,SAAUF,GACzC,GAAIb,GACA1vC,EAAY1qB,KAAK6D,QAAQ6mB,SAI7B,IAFAsuC,EAAkBtuC,GAED,cAAbA,EACF,MAAO1qB,MAAKo/C,KAAKz+C,KAAKo/C,OAAOkb,EAAQr9B,GAAG91B,SAExC,IAAI22B,GAASz+B,KAAKo/C,KAAKC,SAAShJ,OAAO5X,MAEvC,OADA27B,GAAap6D,KAAKo6D,WAAW37B,GACtBw8B,EAAQh6C,EAAIm5C,EAAWp1D,MAAQo1D,EAAW5yC,QA4BrD3lB,EAAMoR,UAAUmoD,KAAO,SAAUp2D,EAAOqxC,EAAQtqB,GAEhC,MAAVsqB,IACFA,GAAUr2C,KAAK4yC,MAAQ5yC,KAAK8yC,KAAO,EAGrC,IAAIwoB,GAAiB15D,EAAS64D,yBAAyBz6D,KAAKo/C,KAAKI,YAAax/C,KAAK4yC,MAAO5yC,KAAK8yC,KAC3FyoB,EAAuB35D,EAAS45D,wBAAwBx7D,KAAK6D,QAAQE,OAAQ/D,KAAKo/C,KAAKI,YAAax/C,KAAMq2C,GAC1GolB,EAAsBH,EAAiBC,EAGvCtB,EAAW5jB,EAASklB,GAAwBv7D,KAAK4yC,OAASyD,EAASklB,IAAyBv2D,EAC5Fk1D,EAAS7jB,EAASolB,GAAuBz7D,KAAK8yC,KAAOuD,EAASolB,IAAwBz2D,CAG1FhF,MAAKm4D,aAAepsC,EAAQ,GAAI,GAAQ,EACxC/rB,KAAKo4D,YAAcrsC,EAAQ,GAAI,GAAQ,CACvC,IAAI4uC,GAAY/4D,EAASg5D,mBAAmB56D,KAAKo/C,KAAKI,YAAaya,EAAUluC,GAAO,GAChF8uC,EAAUj5D,EAASg5D,mBAAmB56D,KAAKo/C,KAAKI,YAAa0a,GAASnuC,GAAO,IAC7E4uC,GAAaV,GAAYY,GAAWX,KACtCD,EAAWU,EACXT,EAASW,GAGX76D,KAAK+9C,SAASkc,EAAUC,GAAQ,GAAO,GAEvCl6D,KAAKm4D,cAAe,EACpBn4D,KAAKo4D,YAAa,GASpBv2D,EAAMoR,UAAUyoD,KAAO,SAAU3vC,GAE/B,GAAI7D,GAAOloB,KAAK8yC,IAAM9yC,KAAK4yC,MAGvBqnB,EAAWj6D,KAAK4yC,MAAQ1qB,EAAO6D,EAC/BmuC,EAASl6D,KAAK8yC,IAAM5qB,EAAO6D,CAI/B/rB,MAAK4yC,MAAQqnB,EACbj6D,KAAK8yC,IAAMonB,GAObr4D,EAAMoR,UAAUo/B,OAAS,SAAUA,GACjC,GAAIgE,IAAUr2C,KAAK4yC,MAAQ5yC,KAAK8yC,KAAO,EAEnC5qB,EAAOmuB,EAAShE,EAGhB4nB,EAAWj6D,KAAK4yC,MAAQ1qB,EACxBgyC,EAASl6D,KAAK8yC,IAAM5qB,CAExBloB,MAAK+9C,SAASkc,EAAUC,IAG1Br6D,EAAOD,QAAUiC,GAIb,SAAShC,EAAQD,EAASM,GAIjBA,EAAoB,GAOjCN,GAAQ+7D,QAAU,SAAUvX,EAAQ76C,GAClCA,EAAS8/C,aAAe,SAAUv+C,GAC5BA,EAAMs6C,SACR77C,EAASuB,IAIbs5C,EAAOhlB,GAAG,eAAgB71B,EAAS8/C,eAQrCzpD,EAAQg8D,UAAY,SAAUxX,EAAQ76C,GAOpC,MANAA,GAAS8/C,aAAe,SAAUv+C,GAC5BA,EAAM6+C,SACRpgD,EAASuB,IAINs5C,EAAOhlB,GAAG,eAAgB71B,EAAS8/C,eAQ5CzpD,EAAQi8D,SAAW,SAAUzX,EAAQ76C,GACnC66C,EAAO7kB,IAAI,eAAgBh2B,EAAS8/C,eAQtCzpD,EAAQk8D,WAAal8D,EAAQi8D,UAIzB,SAASh8D,EAAQD,GASrB,QAAS4C,GAAU48C,EAAMv7C,GACvB7D,KAAK6D,QAAU,KACf7D,KAAK6G,MAAQ,KAQfrE,EAAUyQ,UAAU+rB,WAAa,SAAUn7B,GACrCA,GACFlD,KAAKgG,OAAO3G,KAAK6D,QAASA,IAQ9BrB,EAAUyQ,UAAUy5B,OAAS,WAE3B,OAAO,GAMTlqC,EAAUyQ,UAAUksB,QAAU,aAU9B38B,EAAUyQ,UAAU8oD,WAAa,WAC/B,GAAIC,GAAUh8D,KAAK6G,MAAMo1D,iBAAmBj8D,KAAK6G,MAAM23B,OAASx+B,KAAK6G,MAAMq1D,kBAAoBl8D,KAAK6G,MAAM43B,MAK1G,OAHAz+B,MAAK6G,MAAMo1D,eAAiBj8D,KAAK6G,MAAM23B,MACvCx+B,KAAK6G,MAAMq1D,gBAAkBl8D,KAAK6G,MAAM43B,OAEjCu9B,GAGTn8D,EAAOD,QAAU4C,GAIb,SAAS3C,EAAQD,GAYrBA,EAAQu8D,qBAAuB,SAAUp4D,EAAQq7C,EAAMI,GACrD,GAAIA,IAAgB14C,MAAMC,QAAQy4C,GAChC,MAAO5/C,GAAQu8D,qBAAqBp4D,EAAQq7C,GAAOI,GAIrD,IADAJ,EAAKI,eACDA,GACgC,GAA9B14C,MAAMC,QAAQy4C,GAAsB,CACtC,IAAK,GAAI/4C,GAAI,EAAGA,EAAI+4C,EAAYl5C,OAAQG,IACtC,GAA8BF,SAA1Bi5C,EAAY/4C,GAAG21D,OAAsB,CACvC,GAAIC,KACJA,GAASzpB,MAAQ7uC,EAAOy7C,EAAY/4C,GAAGmsC,OAAO5qC,SAASF,UACvDu0D,EAASvpB,IAAM/uC,EAAOy7C,EAAY/4C,GAAGqsC,KAAK9qC,SAASF,UACnDs3C,EAAKI,YAAYh4C,KAAK60D,GAG1Bjd,EAAKI,YAAY9gC,KAAK,SAAUxY,EAAGC,GACjC,MAAOD,GAAE0sC,MAAQzsC,EAAEysC,UAY3BhzC,EAAQo6D,kBAAoB,SAAUj2D,EAAQq7C,EAAMI,GAClD,GAAIA,IAAgB14C,MAAMC,QAAQy4C,GAChC,MAAO5/C,GAAQo6D,kBAAkBj2D,EAAQq7C,GAAOI,GAGlD,IAAIA,GAAuDj5C,SAAxC64C,EAAKC,SAAS2D,gBAAgBxkB,MAAqB,CACpE5+B,EAAQu8D,qBAAqBp4D,EAAQq7C,EAAMI,EAQ3C,KAAK,GAND5M,GAAQ7uC,EAAOq7C,EAAKe,MAAMvN,OAC1BE,EAAM/uC,EAAOq7C,EAAKe,MAAMrN,KAExBwpB,EAAald,EAAKe,MAAMrN,IAAMsM,EAAKe,MAAMvN,MACzC2pB,EAAYD,EAAald,EAAKC,SAAS2D,gBAAgBxkB,MAElD/3B,EAAI,EAAGA,EAAI+4C,EAAYl5C,OAAQG,IACtC,GAA8BF,SAA1Bi5C,EAAY/4C,GAAG21D,OAAsB,CACvC,GAAItB,GAAY/2D,EAAOy7C,EAAY/4C,GAAGmsC,OAClCmoB,EAAUh3D,EAAOy7C,EAAY/4C,GAAGqsC,IAEpC,IAAoB,gBAAhBgoB,EAAUpmD,GACZ,KAAM,IAAI1N,OAAM,qCAAuCw4C,EAAY/4C,GAAGmsC,MAExE,IAAkB,gBAAdmoB,EAAQrmD,GACV,KAAM,IAAI1N,OAAM,mCAAqCw4C,EAAY/4C,GAAGqsC,IAGtE,IAAIrsB,GAAWs0C,EAAUD,CACzB,IAAIr0C,GAAY,EAAI81C,EAAW,CAE7B,GAAI/0C,GAAS,EACTg1C,EAAW1pB,EAAI3qB,OACnB,QAAQq3B,EAAY/4C,GAAG21D,QACrB,IAAK,QAECtB,EAAUn1C,OAASo1C,EAAQp1C,QAC7B6B,EAAS,GAEXszC,EAAUr4C,UAAUmwB,EAAMnwB,aAC1Bq4C,EAAUt+C,KAAKo2B,EAAMp2B,QACrBs+C,EAAU3xC,SAAS,EAAG,QAEtB4xC,EAAQt4C,UAAUmwB,EAAMnwB,aACxBs4C,EAAQv+C,KAAKo2B,EAAMp2B,QACnBu+C,EAAQ5xC,SAAS,EAAI3B,EAAQ,QAE7Bg1C,EAASv2C,IAAI,EAAG,QAChB,MACF,KAAK,SACH,GAAIw2C,GAAY1B,EAAQ7yC,KAAK4yC,EAAW,QACpCn1C,EAAMm1C,EAAUn1C,KAGpBm1C,GAAUn9C,KAAKi1B,EAAMj1B,QACrBm9C,EAAUr+C,MAAMm2B,EAAMn2B,SACtBq+C,EAAUt+C,KAAKo2B,EAAMp2B,QACrBu+C,EAAUD,EAAU3yC,QAGpB2yC,EAAUn1C,IAAIA,GACdo1C,EAAQp1C,IAAIA,GACZo1C,EAAQ90C,IAAIw2C,EAAW,QAEvB3B,EAAU3xC,SAAS,EAAG,SACtB4xC,EAAQ5xC,SAAS,EAAG,SAEpBqzC,EAASv2C,IAAI,EAAG,QAChB,MACF,KAAK,UACC60C,EAAUr+C,SAAWs+C,EAAQt+C,UAC/B+K,EAAS,GAEXszC,EAAUr+C,MAAMm2B,EAAMn2B,SACtBq+C,EAAUt+C,KAAKo2B,EAAMp2B,QACrBs+C,EAAU3xC,SAAS,EAAG,UAEtB4xC,EAAQt+C,MAAMm2B,EAAMn2B,SACpBs+C,EAAQv+C,KAAKo2B,EAAMp2B,QACnBu+C,EAAQ5xC,SAAS,EAAG,UACpB4xC,EAAQ90C,IAAIuB,EAAQ,UAEpBg1C,EAASv2C,IAAI,EAAG,SAChB,MACF,KAAK,SACC60C,EAAUt+C,QAAUu+C,EAAQv+C,SAC9BgL,EAAS,GAEXszC,EAAUt+C,KAAKo2B,EAAMp2B,QACrBs+C,EAAU3xC,SAAS,EAAG,SACtB4xC,EAAQv+C,KAAKo2B,EAAMp2B,QACnBu+C,EAAQ5xC,SAAS,EAAG,SACpB4xC,EAAQ90C,IAAIuB,EAAQ,SAEpBg1C,EAASv2C,IAAI,EAAG,QAChB,MACF,SAEE,WADAtG,SAAQw+B,IAAI,2EAA4EqB,EAAY/4C,GAAG21D,QAG3G,KAAmBI,EAAZ1B,GAEL,OADA1b,EAAKI,YAAYh4C,MAAOorC,MAAOkoB,EAAUhzD,UAAWgrC,IAAKioB,EAAQjzD,YACzD03C,EAAY/4C,GAAG21D,QACrB,IAAK,QACHtB,EAAU70C,IAAI,EAAG,QACjB80C,EAAQ90C,IAAI,EAAG,OACf,MACF,KAAK,SACH60C,EAAU70C,IAAI,EAAG,SACjB80C,EAAQ90C,IAAI,EAAG,QACf,MACF,KAAK,UACH60C,EAAU70C,IAAI,EAAG,UACjB80C,EAAQ90C,IAAI,EAAG,SACf,MACF,KAAK,SACH60C,EAAU70C,IAAI,EAAG,KACjB80C,EAAQ90C,IAAI,EAAG,IACf,MACF,SAEE,WADAtG,SAAQw+B,IAAI,2EAA4EqB,EAAY/4C,GAAG21D,QAI7Ghd,EAAKI,YAAYh4C,MAAOorC,MAAOkoB,EAAUhzD,UAAWgrC,IAAKioB,EAAQjzD,aAKvElI,EAAQ88D,iBAAiBtd,EAEzB,IAAIud,GAAc/8D,EAAQg9D,SAASxd,EAAKe,MAAMvN,MAAOwM,EAAKI,aACtDqd,EAAYj9D,EAAQg9D,SAASxd,EAAKe,MAAMrN,IAAKsM,EAAKI,aAClDsd,EAAa1d,EAAKe,MAAMvN,MACxBmqB,EAAW3d,EAAKe,MAAMrN,GACA,IAAtB6pB,EAAYK,SACdF,EAAwC,GAA3B1d,EAAKe,MAAMgY,aAAuBwE,EAAY7B,UAAY,EAAI6B,EAAY5B,QAAU,GAE3E,GAApB8B,EAAUG,SACZD,EAAoC,GAAzB3d,EAAKe,MAAMiY,WAAqByE,EAAU/B,UAAY,EAAI+B,EAAU9B,QAAU,IAEjE,GAAtB4B,EAAYK,QAAsC,GAApBH,EAAUG,SAC1C5d,EAAKe,MAAM4Z,YAAY+C,EAAYC,KAUzCn9D,EAAQ88D,iBAAmB,SAAUtd,GAGnC,IAAK,GAFDI,GAAcJ,EAAKI,YACnByd,KACKx2D,EAAI,EAAGA,EAAI+4C,EAAYl5C,OAAQG,IACtC,IAAK,GAAIgK,GAAI,EAAGA,EAAI+uC,EAAYl5C,OAAQmK,IAClChK,GAAKgK,GAA8B,GAAzB+uC,EAAY/uC,GAAGkxB,QAA2C,GAAzB6d,EAAY/4C,GAAGk7B,SAExD6d,EAAY/uC,GAAGmiC,OAAS4M,EAAY/4C,GAAGmsC,OAAS4M,EAAY/uC,GAAGqiC,KAAO0M,EAAY/4C,GAAGqsC,IACvF0M,EAAY/uC,GAAGkxB,QAAS,EAGjB6d,EAAY/uC,GAAGmiC,OAAS4M,EAAY/4C,GAAGmsC,OAAS4M,EAAY/uC,GAAGmiC,OAAS4M,EAAY/4C,GAAGqsC,KAC5F0M,EAAY/4C,GAAGqsC,IAAM0M,EAAY/uC,GAAGqiC,IACpC0M,EAAY/uC,GAAGkxB,QAAS,GAGjB6d,EAAY/uC,GAAGqiC,KAAO0M,EAAY/4C,GAAGmsC,OAAS4M,EAAY/uC,GAAGqiC,KAAO0M,EAAY/4C,GAAGqsC,MACxF0M,EAAY/4C,GAAGmsC,MAAQ4M,EAAY/uC,GAAGmiC,MACtC4M,EAAY/uC,GAAGkxB,QAAS,GAMpC,KAAK,GAAIl7B,GAAI,EAAGA,EAAI+4C,EAAYl5C,OAAQG,IAClC+4C,EAAY/4C,GAAGk7B,UAAW,GAC5Bs7B,EAAUz1D,KAAKg4C,EAAY/4C,GAI/B24C,GAAKI,YAAcyd,EACnB7d,EAAKI,YAAY9gC,KAAK,SAAUxY,EAAGC,GACjC,MAAOD,GAAE0sC,MAAQzsC,EAAEysC,SAIvBhzC,EAAQs9D,WAAa,SAAU3lC,GAC7B,IAAK,GAAI9wB,GAAI,EAAGA,EAAI8wB,EAAMjxB,OAAQG,IAChCkZ,QAAQw+B,IAAI13C,EAAG,GAAIpB,MAAKkyB,EAAM9wB,GAAGmsC,OAAQ,GAAIvtC,MAAKkyB,EAAM9wB,GAAGqsC,KAAMvb,EAAM9wB,GAAGmsC,MAAOrb,EAAM9wB,GAAGqsC,IAAKvb,EAAM9wB,GAAGk7B,SAU5G/hC,EAAQu9D,oBAAsB,SAAUp5D,EAAQq5D,EAAUC,GAGxD,IAAK,GAFDC,IAAe,EACfC,EAAeH,EAASI,QAAQ11D,UAC3BrB,EAAI,EAAGA,EAAI22D,EAAS5d,YAAYl5C,OAAQG,IAAK,CACpD,GAAIq0D,GAAYsC,EAAS5d,YAAY/4C,GAAGmsC,MACpCmoB,EAAUqC,EAAS5d,YAAY/4C,GAAGqsC,GACtC,IAAIyqB,GAAgBzC,GAA4BC,EAAfwC,EAAwB,CACvDD,GAAe,CACf,QAIJ,GAAoB,GAAhBA,GAAwBC,EAAeH,EAASzf,KAAK71C,WAAay1D,GAAgBF,EAAc,CAClG,GAAIzrD,GAAY7N,EAAOs5D,GACnBh1D,EAAWtE,EAAOg3D,EAElBnpD,GAAU4K,QAAUnU,EAASmU,OAC/B4gD,EAASK,cAAe,EACf7rD,EAAU6K,SAAWpU,EAASoU,QACvC2gD,EAASM,eAAgB,EAChB9rD,EAAU6Q,aAAepa,EAASoa,cAC3C26C,EAASO,aAAc,GAGzBP,EAASI,QAAUn1D,IAkCvBzI,EAAQ+/C,SAAW,SAAUh+C,EAAMqpB,EAAMwT,GACvC,GAAoC,GAAhC78B,EAAKy9C,KAAKI,YAAYl5C,OAAa,CACrC,GAAI8zD,GAAaz4D,EAAKw+C,MAAMia,WAAW57B,EACvC,QAAQxT,EAAKljB,UAAYsyD,EAAW5yC,QAAU4yC,EAAWp1D,MAEzD,GAAIg4D,GAASp9D,EAAQg9D,SAAS5xC,EAAMrpB,EAAKy9C,KAAKI,YACzB,IAAjBwd,EAAOA,SACThyC,EAAOgyC,EAAOlC,UAGhB,IAAIr0C,GAAW7mB,EAAQ66D,yBAAyB94D,EAAKy9C,KAAKI,YAAa79C,EAAKw+C,MAAMvN,MAAOjxC,EAAKw+C,MAAMrN,IACpG9nB,GAAOprB,EAAQg+D,qBAAqBj8D,EAAKkC,QAAQE,OAAQpC,EAAKy9C,KAAKI,YAAa79C,EAAKw+C,MAAOn1B,EAE5F,IAAIovC,GAAaz4D,EAAKw+C,MAAMia,WAAW57B,EAAO/X,EAC9C,QAAQuE,EAAKljB,UAAYsyD,EAAW5yC,QAAU4yC,EAAWp1D,OAY7DpF,EAAQmgD,OAAS,SAAUp+C,EAAMi8B,EAAGY,GAClC,GAAoC,GAAhC78B,EAAKy9C,KAAKI,YAAYl5C,OAAa,CACrC,GAAI8zD,GAAaz4D,EAAKw+C,MAAMia,WAAW57B,EACvC,OAAO,IAAIn5B,MAAKu4B,EAAIw8B,EAAWp1D,MAAQo1D,EAAW5yC,QAElD,GAAI8zC,GAAiB17D,EAAQ66D,yBAAyB94D,EAAKy9C,KAAKI,YAAa79C,EAAKw+C,MAAMvN,MAAOjxC,EAAKw+C,MAAMrN,KACtG+qB,EAAgBl8D,EAAKw+C,MAAMrN,IAAMnxC,EAAKw+C,MAAMvN,MAAQ0oB,EACpDwC,EAAkBD,EAAgBjgC,EAAIY,EACtCu/B,EAA4Bn+D,EAAQo+D,6BAA6Br8D,EAAKy9C,KAAKI,YAAa79C,EAAKw+C,MAAO2d,GAEpGG,EAAU,GAAI54D,MAAK04D,EAA4BD,EAAkBn8D,EAAKw+C,MAAMvN,MAChF,OAAOqrB,IAWXr+D,EAAQ66D,yBAA2B,SAAUjb,EAAa5M,EAAOE,GAE/D,IAAK,GADDrsB,GAAW,EACNhgB,EAAI,EAAGA,EAAI+4C,EAAYl5C,OAAQG,IAAK,CAC3C,GAAIq0D,GAAYtb,EAAY/4C,GAAGmsC,MAC3BmoB,EAAUvb,EAAY/4C,GAAGqsC,GAEzBgoB,IAAaloB,GAAmBE,EAAVioB,IACxBt0C,GAAYs0C,EAAUD,GAG1B,MAAOr0C,IAWT7mB,EAAQg+D,qBAAuB,SAAU75D,EAAQy7C,EAAaW,EAAOn1B,GAGnE,MAFAA,GAAOjnB,EAAOinB,GAAMhjB,SAASF,UAC7BkjB,GAAQprB,EAAQ47D,wBAAwBz3D,EAAQy7C,EAAaW,EAAOn1B,IAItEprB,EAAQ47D,wBAA0B,SAAUz3D,EAAQy7C,EAAaW,EAAOn1B,GACtE,GAAIkzC,GAAa,CACjBlzC,GAAOjnB,EAAOinB,GAAMhjB,SAASF,SAE7B,KAAK,GAAIrB,GAAI,EAAGA,EAAI+4C,EAAYl5C,OAAQG,IAAK,CAC3C,GAAIq0D,GAAYtb,EAAY/4C,GAAGmsC,MAC3BmoB,EAAUvb,EAAY/4C,GAAGqsC,GAEzBgoB,IAAa3a,EAAMvN,OAASmoB,EAAU5a,EAAMrN,KAC1C9nB,GAAQ+vC,IACVmD,GAAcnD,EAAUD,GAI9B,MAAOoD,IAWTt+D,EAAQo+D,6BAA+B,SAAUxe,EAAaW,EAAOge,GAKnE,IAAK,GAJD7C,GAAiB,EACjB70C,EAAW,EACX23C,EAAgBje,EAAMvN,MAEjBnsC,EAAI,EAAGA,EAAI+4C,EAAYl5C,OAAQG,IAAK,CAC3C,GAAIq0D,GAAYtb,EAAY/4C,GAAGmsC,MAC3BmoB,EAAUvb,EAAY/4C,GAAGqsC,GAE7B,IAAIgoB,GAAa3a,EAAMvN,OAASmoB,EAAU5a,EAAMrN,IAAK,CAGnD,GAFArsB,GAAYq0C,EAAYsD,EACxBA,EAAgBrD,EACZt0C,GAAY03C,EACd,KAEA7C,IAAkBP,EAAUD,GAKlC,MAAOQ,IAWT17D,EAAQg7D,mBAAqB,SAAUpb,EAAax0B,EAAMN,EAAW2zC,GACnE,GAAIzB,GAAWh9D,EAAQg9D,SAAS5xC,EAAMw0B,EACtC,OAAuB,IAAnBod,EAASI,OACK,EAAZtyC,EACuB,GAArB2zC,EACKzB,EAAS9B,WAAa8B,EAAS7B,QAAU/vC,GAAQ,EAEjD4xC,EAAS9B,UAAY,EAGL,GAArBuD,EACKzB,EAAS7B,SAAW/vC,EAAO4xC,EAAS9B,WAAa,EAEjD8B,EAAS7B,QAAU,EAIvB/vC,GAWXprB,EAAQg9D,SAAW,SAAU5xC,EAAMw0B,GACjC,IAAK,GAAI/4C,GAAI,EAAGA,EAAI+4C,EAAYl5C,OAAQG,IAAK,CAC3C,GAAIq0D,GAAYtb,EAAY/4C,GAAGmsC,MAC3BmoB,EAAUvb,EAAY/4C,GAAGqsC,GAE7B,IAAI9nB,GAAQ8vC,GAAoBC,EAAP/vC,EAEvB,OAASgyC,QAAQ,EAAMlC,UAAWA,EAAWC,QAASA,GAI1D,OAASiC,QAAQ,EAAOlC,UAAWA,EAAWC,QAASA,KAKrD,SAASl7D,EAAQD,EAASM,GAqB9B,QAASyB,MAjBT,GAAIumC,GAAUhoC,EAAoB,IAC9B8D,EAAS9D,EAAoB,IAC7Bo+D,EAAap+D,EAAoB,IACjCS,EAAOT,EAAoB,GAK3BgD,GAJUhD,EAAoB,GACnBA,EAAoB,IACvBA,EAAoB,IAClBA,EAAoB,IACnBA,EAAoB,KAC/Bq+D,EAAYr+D,EAAoB,IAChC0B,EAAW1B,EAAoB,IAC/BwC,EAAaxC,EAAoB,GASrCgoC,GAAQvmC,EAAKsR,WASbtR,EAAKsR,UAAUksC,QAAU,SAAU/a,GAyHjC,QAASo6B,GAAa1zD;AAChBk1B,EAAGy+B,YACLz+B,EAAG6X,KAAK,aAAc/sC,GA1H1B9K,KAAK45C,OAEL55C,KAAK45C,IAAIxV,UAAYA,EAErBpkC,KAAK45C,IAAIl6C,KAAO09B,SAASM,cAAc,OACvC19B,KAAK45C,IAAI3rC,WAAamvB,SAASM,cAAc,OAC7C19B,KAAK45C,IAAI8kB,mBAAqBthC,SAASM,cAAc,OACrD19B,KAAK45C,IAAI+kB,qBAAuBvhC,SAASM,cAAc,OACvD19B,KAAK45C,IAAIoJ,gBAAkB5lB,SAASM,cAAc,OAClD19B,KAAK45C,IAAIglB,cAAgBxhC,SAASM,cAAc,OAChD19B,KAAK45C,IAAIilB,eAAiBzhC,SAASM,cAAc,OACjD19B,KAAK45C,IAAIvD,OAASjZ,SAASM,cAAc,OACzC19B,KAAK45C,IAAIjxC,KAAOy0B,SAASM,cAAc,OACvC19B,KAAK45C,IAAI/H,MAAQzU,SAASM,cAAc,OACxC19B,KAAK45C,IAAI/wC,IAAMu0B,SAASM,cAAc,OACtC19B,KAAK45C,IAAItL,OAASlR,SAASM,cAAc,OACzC19B,KAAK45C,IAAIklB,UAAY1hC,SAASM,cAAc,OAC5C19B,KAAK45C,IAAImlB,aAAe3hC,SAASM,cAAc,OAC/C19B,KAAK45C,IAAIolB,cAAgB5hC,SAASM,cAAc,OAChD19B,KAAK45C,IAAIqlB,iBAAmB7hC,SAASM,cAAc,OACnD19B,KAAK45C,IAAIslB,eAAiB9hC,SAASM,cAAc,OACjD19B,KAAK45C,IAAIulB,kBAAoB/hC,SAASM,cAAc,OAEpD19B,KAAK45C,IAAIl6C,KAAKqJ,UAAY,eAC1B/I,KAAK45C,IAAI3rC,WAAWlF,UAAY,2BAChC/I,KAAK45C,IAAI8kB,mBAAmB31D,UAAY,wCACxC/I,KAAK45C,IAAI+kB,qBAAqB51D,UAAY,0CAC1C/I,KAAK45C,IAAIoJ,gBAAgBj6C,UAAY,uBACrC/I,KAAK45C,IAAIglB,cAAc71D,UAAY,qBACnC/I,KAAK45C,IAAIilB,eAAe91D,UAAY,sBACpC/I,KAAK45C,IAAI/wC,IAAIE,UAAY,oBACzB/I,KAAK45C,IAAItL,OAAOvlC,UAAY,uBAC5B/I,KAAK45C,IAAIjxC,KAAKI,UAAY,cAC1B/I,KAAK45C,IAAIvD,OAAOttC,UAAY,cAC5B/I,KAAK45C,IAAI/H,MAAM9oC,UAAY,cAC3B/I,KAAK45C,IAAIklB,UAAU/1D,UAAY,qBAC/B/I,KAAK45C,IAAImlB,aAAah2D,UAAY,wBAClC/I,KAAK45C,IAAIolB,cAAcj2D,UAAY,qBACnC/I,KAAK45C,IAAIqlB,iBAAiBl2D,UAAY,wBACtC/I,KAAK45C,IAAIslB,eAAen2D,UAAY,qBACpC/I,KAAK45C,IAAIulB,kBAAkBp2D,UAAY,wBAEvC/I,KAAK45C,IAAIl6C,KAAK49B,YAAYt9B,KAAK45C,IAAI3rC,YACnCjO,KAAK45C,IAAIl6C,KAAK49B,YAAYt9B,KAAK45C,IAAI8kB,oBACnC1+D,KAAK45C,IAAIl6C,KAAK49B,YAAYt9B,KAAK45C,IAAI+kB,sBACnC3+D,KAAK45C,IAAIl6C,KAAK49B,YAAYt9B,KAAK45C,IAAIoJ,iBACnChjD,KAAK45C,IAAIl6C,KAAK49B,YAAYt9B,KAAK45C,IAAIglB,eACnC5+D,KAAK45C,IAAIl6C,KAAK49B,YAAYt9B,KAAK45C,IAAIilB,gBACnC7+D,KAAK45C,IAAIl6C,KAAK49B,YAAYt9B,KAAK45C,IAAI/wC,KACnC7I,KAAK45C,IAAIl6C,KAAK49B,YAAYt9B,KAAK45C,IAAItL,QAEnCtuC,KAAK45C,IAAIoJ,gBAAgB1lB,YAAYt9B,KAAK45C,IAAIvD,QAC9Cr2C,KAAK45C,IAAIglB,cAActhC,YAAYt9B,KAAK45C,IAAIjxC,MAC5C3I,KAAK45C,IAAIilB,eAAevhC,YAAYt9B,KAAK45C,IAAI/H,OAE7C7xC,KAAK45C,IAAIoJ,gBAAgB1lB,YAAYt9B,KAAK45C,IAAIklB,WAC9C9+D,KAAK45C,IAAIoJ,gBAAgB1lB,YAAYt9B,KAAK45C,IAAImlB,cAC9C/+D,KAAK45C,IAAIglB,cAActhC,YAAYt9B,KAAK45C,IAAIolB,eAC5Ch/D,KAAK45C,IAAIglB,cAActhC,YAAYt9B,KAAK45C,IAAIqlB,kBAC5Cj/D,KAAK45C,IAAIilB,eAAevhC,YAAYt9B,KAAK45C,IAAIslB,gBAC7Cl/D,KAAK45C,IAAIilB,eAAevhC,YAAYt9B,KAAK45C,IAAIulB,mBAE7Cn/D,KAAKo/B,GAAG,cAAe,WACjBp/B,KAAKo/D,mBAAoB,GAC3Bp/D,KAAKkhD,WAEN3B,KAAKv/C,OACRA,KAAKo/B,GAAG,QAASp/B,KAAK84D,SAASvZ,KAAKv/C,OACpCA,KAAKo/B,GAAG,MAAOp/B,KAAK24D,QAAQpZ,KAAKv/C,MAEjC,IAAIggC,GAAKhgC,IACTA,MAAKo/B,GAAG,UAAW,SAAUgnB,GACvBA,GAAkC,GAApBA,EAAWnnB,MAEtBe,EAAGq/B,eACNr/B,EAAGq/B,aAAen1D,WAAW,WAC3B81B,EAAGq/B,aAAe,KAClBr/B,EAAGkhB,WACF,IAILlhB,EAAGkhB,YAMPlhD,KAAKokD,OAAS,GAAIpgD,GAAOhE,KAAK45C,IAAIl6C,MAClCM,KAAKokD,OAAOptB,IAAI,SAAS5e,KAAMqwC,QAAQ,IACvCzoD,KAAKokD,OAAOptB,IAAI,OAAO5e,KAAM0b,UAAW,EAAGpJ,UAAW,KACtD1qB,KAAK+6C,YAEL,IAAIsJ,IAAU,MAAO,YAAa,QAAS,QAAS,MAAO,WAAY,UAAW,SA6DlF,IAtDAA,EAAO/6C,QAAQ,SAAU1B,GACvB,GAAI0C,GAAW,SAAkBQ,GAC3Bk1B,EAAGy+B,YACLz+B,EAAG6X,KAAKjwC,EAAMkD,GAGlBk1B,GAAGokB,OAAOhlB,GAAGx3B,EAAM0C,GACnB01B,EAAG+a,UAAUnzC,GAAQ0C,IAIvBg0D,EAAW3C,QAAQ37D,KAAKokD,OAAQ,SAAWt5C,GACzCk1B,EAAG6X,KAAK,QAAS/sC,IAChBy0C,KAAKv/C,OAGRs+D,EAAW1C,UAAU57D,KAAKokD,OAAQ,SAAWt5C,GAC3Ck1B,EAAG6X,KAAK,UAAW/sC,IAClBy0C,KAAKv/C,OAORA,KAAK45C,IAAIl6C,KAAKyK,iBAAiB,aAAcq0D,GAC7Cx+D,KAAK45C,IAAIl6C,KAAKyK,iBAAiB,iBAAkBq0D,GAGjDx+D,KAAK6G,OACHnH,QACAuO,cACA+0C,mBACA4b,iBACAC,kBACAxoB,UACA1tC,QACAkpC,SACAhpC,OACAylC,UACApgC,UACAoxD,UAAW,EACXC,aAAc,GAGhBv/D,KAAKw/D,eAGLx/D,KAAKquD,SAELruD,KAAKy/D,YAAc,EACnBz/D,KAAKo/D,iBAAkB,GAGlBh7B,EAAW,KAAM,IAAIp9B,OAAM,wBAChCo9B,GAAU9G,YAAYt9B,KAAK45C,IAAIl6C,OA4BjCiC,EAAKsR,UAAU+rB,WAAa,SAAUn7B,GACpC,GAAIA,EAAS,CAEX,GAAIoM,IAAU,QAAS,SAAU,YAAa,YAAa,aAAc,QAAS,MAAO,aAAc,iBAAkB,cAAe,SAAU,UAAW,SAAU,iBAoBvK,IAnBAtP,EAAKiG,gBAAgBqJ,EAAQjQ,KAAK6D,QAASA,GAE3C7D,KAAK6D,QAAQk7C,aAAgBvtC,KAAMjL,OAAWy4C,KAAMz4C,QAChD,eAAiB1C,KACgB,gBAAxBA,GAAQk7C,YACjB/+C,KAAK6D,QAAQk7C,aACXvtC,KAAM3N,EAAQk7C,YACdC,KAAMn7C,EAAQk7C,aAEwB,gBAAxBl7C,GAAQk7C,cACpB,QAAUl7C,GAAQk7C,cACpB/+C,KAAK6D,QAAQk7C,YAAYvtC,KAAO3N,EAAQk7C,YAAYvtC,MAElD,QAAU3N,GAAQk7C,cACpB/+C,KAAK6D,QAAQk7C,YAAYC,KAAOn7C,EAAQk7C,YAAYC,QAKpB,SAAlCh/C,KAAK6D,QAAQk7C,YAAYC,MAC3B,IAAKh/C,KAAKogD,UAAW,CACnB,GAAIA,GAAYpgD,KAAKogD,UAAY,GAAIl9C,GAASlD,KAAKo/C,KACnDgB,GAAUphB,WAAa,SAAUn7B,GAC/B,GAAI86B,GAAW96B,EAAUlD,EAAKgG,UAAW9C,KACzC86B,GAASogB,YAAc,MACvB77C,EAAS+P,UAAU+rB,WAAWz+B,KAAK6/C,EAAWzhB,IAEhD3+B,KAAKgC,WAAWwF,KAAK44C,QAGvB,IAAIpgD,KAAKogD,UAAW,CAClB,GAAIh3C,GAAQpJ,KAAKgC,WAAWuF,QAAQvH,KAAKogD,UAC3B,MAAVh3C,GACFpJ,KAAKgC,WAAWqH,OAAOD,EAAO,GAEhCpJ,KAAKogD,UAAUjhB,UACfn/B,KAAKogD,UAAY,KA4BrB,GAvBiC,kBAAtBv8C,GAAQ67D,aACjB77D,EAAQ67D,YACNC,SAAU97D,EAAQ67D,aAIlB,eAAiB1/D,MAAK6D,SACxBjC,EAASu6D,qBAAqBn8D,KAAK6D,QAAQE,OAAQ/D,KAAKo/C,KAAMp/C,KAAK6D,QAAQ27C,aAGzE,cAAgB37C,KACdA,EAAQ+7D,WACL5/D,KAAK6/D,YACR7/D,KAAK6/D,UAAY,GAAItB,GAAUv+D,KAAK45C,IAAIl6C,OAGtCM,KAAK6/D,YACP7/D,KAAK6/D,UAAU1gC,gBACRn/B,MAAK6/D,YAKd,kBAAoBh8D,GACtB,KAAM,IAAImD,OAAM,0GAIlBhH,MAAK8/D,kBASP,GALA9/D,KAAKgC,WAAWsH,QAAQ,SAAUy2D,GAChC,MAAOA,GAAU/gC,WAAWn7B,KAI1B,aAAeA,GAAS,CACrB7D,KAAKggE,eACRhgE,KAAKggE,aAAehgE,KAAKuhD,uBAG3BvhD,KAAKggE,aAAahhC,WAAWn7B,EAAQo8D,UAGrC,IAAIC,GAAiBv/D,EAAK0G,cAAerH,KAAK6D,QAC9C7D,MAAKgC,WAAWsH,QAAQ,SAAUy2D,GAChCp/D,EAAK0G,WAAW64D,EAAgBH,EAAUl8D,WAE5C7D,KAAKggE,aAAaG,kBAAmBvtD,OAAQstD,IAI1ClgE,KAAKogE,YAKRpgE,KAAKkhD,WAJLlhD,KAAKogE,YAAcpgE,KAAKkhD,QAAQ3B,KAAKv/C,MACrCA,KAAKkhD,QAAUvgD,EAAKiJ,SAAS5J,KAAKogE,YAAapgE,KAAK6D,QAAQi7C,kBAWhEn9C,EAAKsR,UAAUwrD,SAAW,WACxB,OAAQz+D,KAAK6/D,WAAa7/D,KAAK6/D,UAAUQ,QAM3C1+D,EAAKsR,UAAUksB,QAAU,WAEvBn/B,KAAKihD,SAAS,MACdjhD,KAAKghD,UAAU,MAGfhhD,KAAKu/B,MAGLv/B,KAAKsgE,kBAGDtgE,KAAK45C,IAAIl6C,KAAK2L,YAChBrL,KAAK45C,IAAIl6C,KAAK2L,WAAW3G,YAAY1E,KAAK45C,IAAIl6C,MAEhDM,KAAK45C,IAAM,KAGP55C,KAAK6/D,YACP7/D,KAAK6/D,UAAU1gC,gBACRn/B,MAAK6/D,UAId,KAAK,GAAI/0D,KAAS9K,MAAK+6C,UACjB/6C,KAAK+6C,UAAU/0C,eAAe8E,UACzB9K,MAAK+6C,UAAUjwC,EAG1B9K,MAAK+6C,UAAY,KACjB/6C,KAAKokD,OAAS,KAGdpkD,KAAKgC,WAAWsH,QAAQ,SAAUy2D,GAChC,MAAOA,GAAU5gC,YAGnBn/B,KAAKo/C,KAAO,MAQdz9C,EAAKsR,UAAUstD,cAAgB,SAAUv1C,EAAM3qB,GAC7C,GAAIm/D,GAAcx/D,KAAKw/D,YAAYhgC,OAAO,SAAUugC,GAClD,MAAO1/D,KAAO0/D,EAAUl8D,QAAQxD,IAGlC,IAA2B,IAAvBm/D,EAAYl5D,OACd,KAAM,IAAIU,OAAM,oCAAsCy7B,KAAKC,UAAUriC,GAGnEm/D,GAAYl5D,OAAS,GACvBk5D,EAAY,GAAGe,cAAcv1C,IASjCrpB,EAAKsR,UAAUutD,cAAgB,SAAUngE,GACvC,GAAIm/D,GAAcx/D,KAAKw/D,YAAYhgC,OAAO,SAAUugC,GAClD,MAAOA,GAAUl8D,QAAQxD,KAAOA,GAGlC,IAA2B,IAAvBm/D,EAAYl5D,OACd,KAAM,IAAIU,OAAM,oCAAsCy7B,KAAKC,UAAUriC,GAEvE,OAAOm/D,GAAY,GAAGgB,iBAQxB7+D,EAAKsR,UAAUwtD,mBAAqB,SAAUC,EAAOrgE,GACnD,GAAIm/D,GAAcx/D,KAAKw/D,YAAYhgC,OAAO,SAAUugC,GAClD,MAAOA,GAAUl8D,QAAQxD,KAAOA,GAGlC,IAA2B,IAAvBm/D,EAAYl5D,OACd,KAAM,IAAIU,OAAM,oCAAsCy7B,KAAKC,UAAUriC,GAEvE,OAAIm/D,GAAYl5D,OAAS,EAChBk5D,EAAY,GAAGmB,eAAeD,GADvC,QAWF/+D,EAAKsR,UAAUwtC,mBAAqB,SAAU31C,GAC5C,OAASA,MAAOA,IAalBnJ,EAAKsR,UAAU2tD,cAAgB,SAAU51C,EAAM3qB,GAC7C,GAAIwgE,GAAqBt6D,SAATykB,EAAqBrqB,EAAKgH,QAAQqjB,EAAM,QAAQljB,UAAY,GAAIzC,MAE5Eg9B,EAASriC,KAAKw/D,YAAYsB,KAAK,SAAU1d,GAC3C,MAAOA,GAAWv/C,QAAQxD,KAAOA,GAEnC,IAAIgiC,EACF,KAAM,IAAIr7B,OAAM,yBAA2By7B,KAAKC,UAAUriC,GAAM,kBAGlE,IAAI+iD,GAAa,GAAI1gD,GAAW1C,KAAKo/C,KAAMz+C,EAAKgG,UAAW3G,KAAK6D,SAC9DmnB,KAAM61C,EACNxgE,GAAIA,IAON,OAJAL,MAAKw/D,YAAYh4D,KAAK47C,GACtBpjD,KAAKgC,WAAWwF,KAAK47C,GACrBpjD,KAAKkhD,UAEE7gD,GAQTsB,EAAKsR,UAAU8tD,iBAAmB,SAAU1gE,GAC1C,GAAIm/D,GAAcx/D,KAAKw/D,YAAYhgC,OAAO,SAAU6c,GAClD,MAAOA,GAAIx4C,QAAQxD,KAAOA,GAG5B,IAA2B,IAAvBm/D,EAAYl5D,OACd,KAAM,IAAIU,OAAM,oCAAsCy7B,KAAKC,UAAUriC,GAGvEm/D,GAAYl2D,QAAQ,SAAW85C,GAC7BpjD,KAAKw/D,YAAYn2D,OAAOrJ,KAAKw/D,YAAYj4D,QAAQ67C,GAAa,GAC9DpjD,KAAKgC,WAAWqH,OAAOrJ,KAAKgC,WAAWuF,QAAQ67C,GAAa,GAC5DA,EAAWjkB,WACVogB,KAAKv/C,QAOV2B,EAAKsR,UAAU+tD,gBAAkB,WAC/B,MAAOhhE,MAAKsgD,SAAWtgD,KAAKsgD,QAAQ0gB,uBAatCr/D,EAAKsR,UAAU8tC,IAAM,SAAUl9C,GAC7B,GAAIs8C,GAAQngD,KAAKmiD,cAGjB,IAAkB,OAAdhC,EAAMv7C,KAA8B,OAAdu7C,EAAMt7C,IAAhC,CAKA,GAAIm4C,GAAWmD,EAAMt7C,IAAMs7C,EAAMv7C,IAC7BA,EAAM,GAAIS,MAAK86C,EAAMv7C,IAAIkD,UAAuB,IAAXk1C,GACrCn4C,EAAM,GAAIQ,MAAK86C,EAAMt7C,IAAIiD,UAAuB,IAAXk1C,GAErC8D,EAAYj9C,GAAiC0C,SAAtB1C,EAAQi9C,UAA0Bj9C,EAAQi9C,WAAY,CACjF9gD,MAAKmgD,MAAMpC,SAASn5C,EAAKC,EAAKi8C,KAQhCn/C,EAAKsR,UAAUkvC,aAAe,WAE5B,KAAM,IAAIn7C,OAAM,+CAwBlBrF,EAAKsR,UAAU4tC,UAAY,SAAUjO,EAAOE,EAAKjvC,GAC/C,GAAIi9C,EACJ,IAAwB,GAApBz6C,UAAUC,OAAa,CACzB,GAAI65C,GAAQ95C,UAAU,EACtBy6C,GAAgCv6C,SAApB45C,EAAMW,UAA0BX,EAAMW,WAAY,EAC9D9gD,KAAKmgD,MAAMpC,SAASoC,EAAMvN,MAAOuN,EAAMrN,IAAKgO,OAE5CA,GAAYj9C,GAAiC0C,SAAtB1C,EAAQi9C,UAA0Bj9C,EAAQi9C,WAAY,EAC7E9gD,KAAKmgD,MAAMpC,SAASnL,EAAOE,EAAKgO,IAepCn/C,EAAKsR,UAAUo/B,OAAS,SAAUrnB,EAAMnnB,GACtC,GAAIm5C,GAAWh9C,KAAKmgD,MAAMrN,IAAM9yC,KAAKmgD,MAAMvN,MACvCjjC,EAAIhP,EAAKgH,QAAQqjB,EAAM,QAAQljB,UAE/B8qC,EAAQjjC,EAAIqtC,EAAW,EACvBlK,EAAMnjC,EAAIqtC,EAAW,EACrB8D,EAAYj9C,GAAiC0C,SAAtB1C,EAAQi9C,UAA0Bj9C,EAAQi9C,WAAY,CAEjF9gD,MAAKmgD,MAAMpC,SAASnL,EAAOE,EAAKgO,IAOlCn/C,EAAKsR,UAAUguD,UAAY,WACzB,GAAI9gB,GAAQngD,KAAKmgD,MAAMga,UACvB,QACEvnB,MAAO,GAAIvtC,MAAK86C,EAAMvN,OACtBE,IAAK,GAAIztC,MAAK86C,EAAMrN,OASxBnxC,EAAKsR,UAAUy5B,OAAS,WACtB1sC,KAAKkhD,WAQPv/C,EAAKsR,UAAUiuC,QAAU,WACvBlhD,KAAKy/D,aACL,IAAIzD,IAAU,EACVn4D,EAAU7D,KAAK6D,QACfgD,EAAQ7G,KAAK6G,MACb+yC,EAAM55C,KAAK45C,GAEf,IAAKA,GAAQA,EAAIxV,WAA0C,GAA7BwV,EAAIxV,UAAUsG,YAA5C,CAEA9oC,EAASo4D,kBAAkBh6D,KAAK6D,QAAQE,OAAQ/D,KAAKo/C,KAAMp/C,KAAK6D,QAAQ27C,aAG7C,OAAvB37C,EAAQk7C,aACVp+C,EAAKmI,aAAa8wC,EAAIl6C,KAAM,WAC5BiB,EAAKwI,gBAAgBywC,EAAIl6C,KAAM,gBAE/BiB,EAAKwI,gBAAgBywC,EAAIl6C,KAAM,WAC/BiB,EAAKmI,aAAa8wC,EAAIl6C,KAAM,eAI9Bk6C,EAAIl6C,KAAKoP,MAAMmwC,UAAYt+C,EAAK8K,OAAOK,OAAOjI,EAAQo7C,UAAW,IACjErF,EAAIl6C,KAAKoP,MAAMowC,UAAYv+C,EAAK8K,OAAOK,OAAOjI,EAAQq7C,UAAW,IACjEtF,EAAIl6C,KAAKoP,MAAM0vB,MAAQ79B,EAAK8K,OAAOK,OAAOjI,EAAQ26B,MAAO,IAGzD33B,EAAMqH,OAAOvF,MAAQixC,EAAIoJ,gBAAgB/I,YAAcL,EAAIoJ,gBAAgBtY,aAAe,EAC1F7jC,EAAMqH,OAAO2jC,MAAQhrC,EAAMqH,OAAOvF,KAClC9B,EAAMqH,OAAOrF,KAAO+wC,EAAIoJ,gBAAgB7I,aAAeP,EAAIoJ,gBAAgBtT,cAAgB,EAC3F7oC,EAAMqH,OAAOogC,OAASznC,EAAMqH,OAAOrF,GACnC,IAAIq4D,GAAmBtnB,EAAIl6C,KAAKy6C,aAAeP,EAAIl6C,KAAKgwC,aACpDyxB,EAAkBvnB,EAAIl6C,KAAKu6C,YAAcL,EAAIl6C,KAAKgrC,WAIb,KAArCkP,EAAIoJ,gBAAgBtT,eACtB7oC,EAAMqH,OAAOvF,KAAO9B,EAAMqH,OAAOrF,IACjChC,EAAMqH,OAAO2jC,MAAQhrC,EAAMqH,OAAOvF,MAEN,IAA1BixC,EAAIl6C,KAAKgwC,eACXyxB,EAAkBD,GAKpBr6D,EAAMwvC,OAAO5X,OAASmb,EAAIvD,OAAO8D,aACjCtzC,EAAM8B,KAAK81B,OAASmb,EAAIjxC,KAAKwxC,aAC7BtzC,EAAMgrC,MAAMpT,OAASmb,EAAI/H,MAAMsI,aAC/BtzC,EAAMgC,IAAI41B,OAASmb,EAAI/wC,IAAI6mC,eAAiB7oC,EAAMqH,OAAOrF,IACzDhC,EAAMynC,OAAO7P,OAASmb,EAAItL,OAAOoB,eAAiB7oC,EAAMqH,OAAOogC,MAM/D,IAAI4L,GAAgBj1C,KAAKJ,IAAIgC,EAAM8B,KAAK81B,OAAQ53B,EAAMwvC,OAAO5X,OAAQ53B,EAAMgrC,MAAMpT,QAC7E2iC,EAAav6D,EAAMgC,IAAI41B,OAASyb,EAAgBrzC,EAAMynC,OAAO7P,OAASyiC,EAAmBr6D,EAAMqH,OAAOrF,IAAMhC,EAAMqH,OAAOogC,MAC7HsL,GAAIl6C,KAAKoP,MAAM2vB,OAAS99B,EAAK8K,OAAOK,OAAOjI,EAAQ46B,OAAQ2iC,EAAa,MAGxEv6D,EAAMnH,KAAK++B,OAASmb,EAAIl6C,KAAKy6C,aAC7BtzC,EAAMoH,WAAWwwB,OAAS53B,EAAMnH,KAAK++B,OAASyiC,CAC9C,IAAIG,GAAkBx6D,EAAMnH,KAAK++B,OAAS53B,EAAMgC,IAAI41B,OAAS53B,EAAMynC,OAAO7P,OAASyiC,CACnFr6D,GAAMm8C,gBAAgBvkB,OAAS4iC,EAC/Bx6D,EAAM+3D,cAAcngC,OAAS4iC,EAC7Bx6D,EAAMg4D,eAAepgC,OAAS53B,EAAM+3D,cAAcngC,OAGlD53B,EAAMnH,KAAK8+B,MAAQob,EAAIl6C,KAAKu6C,YAC5BpzC,EAAMoH,WAAWuwB,MAAQ33B,EAAMnH,KAAK8+B,MAAQ2iC,EAC5Ct6D,EAAM8B,KAAK61B,MAAQob,EAAIglB,cAAcl0B,cAAgB7jC,EAAMqH,OAAOvF,KAClE9B,EAAM+3D,cAAcpgC,MAAQ33B,EAAM8B,KAAK61B,MACvC33B,EAAMgrC,MAAMrT,MAAQob,EAAIilB,eAAen0B,cAAgB7jC,EAAMqH,OAAO2jC,MACpEhrC,EAAMg4D,eAAergC,MAAQ33B,EAAMgrC,MAAMrT,KACzC,IAAI8iC,GAAcz6D,EAAMnH,KAAK8+B,MAAQ33B,EAAM8B,KAAK61B,MAAQ33B,EAAMgrC,MAAMrT,MAAQ2iC,CAC5Et6D,GAAMwvC,OAAO7X,MAAQ8iC,EACrBz6D,EAAMm8C,gBAAgBxkB,MAAQ8iC,EAC9Bz6D,EAAMgC,IAAI21B,MAAQ8iC,EAClBz6D,EAAMynC,OAAO9P,MAAQ8iC,EAGrB1nB,EAAI3rC,WAAWa,MAAM2vB,OAAS53B,EAAMoH,WAAWwwB,OAAS,KACxDmb,EAAI8kB,mBAAmB5vD,MAAM2vB,OAAS53B,EAAMoH,WAAWwwB,OAAS,KAChEmb,EAAI+kB,qBAAqB7vD,MAAM2vB,OAAS53B,EAAMm8C,gBAAgBvkB,OAAS,KACvEmb,EAAIoJ,gBAAgBl0C,MAAM2vB,OAAS53B,EAAMm8C,gBAAgBvkB,OAAS,KAClEmb,EAAIglB,cAAc9vD,MAAM2vB,OAAS53B,EAAM+3D,cAAcngC,OAAS,KAC9Dmb,EAAIilB,eAAe/vD,MAAM2vB,OAAS53B,EAAMg4D,eAAepgC,OAAS,KAEhEmb,EAAI3rC,WAAWa,MAAM0vB,MAAQ33B,EAAMoH,WAAWuwB,MAAQ,KACtDob,EAAI8kB,mBAAmB5vD,MAAM0vB,MAAQ33B,EAAMm8C,gBAAgBxkB,MAAQ,KACnEob,EAAI+kB,qBAAqB7vD,MAAM0vB,MAAQ33B,EAAMoH,WAAWuwB,MAAQ,KAChEob,EAAIoJ,gBAAgBl0C,MAAM0vB,MAAQ33B,EAAMwvC,OAAO7X,MAAQ,KACvDob,EAAI/wC,IAAIiG,MAAM0vB,MAAQ33B,EAAMgC,IAAI21B,MAAQ,KACxCob,EAAItL,OAAOx/B,MAAM0vB,MAAQ33B,EAAMynC,OAAO9P,MAAQ,KAG9Cob,EAAI3rC,WAAWa,MAAMnG,KAAO,IAC5BixC,EAAI3rC,WAAWa,MAAMjG,IAAM,IAC3B+wC,EAAI8kB,mBAAmB5vD,MAAMnG,KAAO9B,EAAM8B,KAAK61B,MAAQ33B,EAAMqH,OAAOvF,KAAO,KAC3EixC,EAAI8kB,mBAAmB5vD,MAAMjG,IAAM,IACnC+wC,EAAI+kB,qBAAqB7vD,MAAMnG,KAAO,IACtCixC,EAAI+kB,qBAAqB7vD,MAAMjG,IAAMhC,EAAMgC,IAAI41B,OAAS,KACxDmb,EAAIoJ,gBAAgBl0C,MAAMnG,KAAO9B,EAAM8B,KAAK61B,MAAQ,KACpDob,EAAIoJ,gBAAgBl0C,MAAMjG,IAAMhC,EAAMgC,IAAI41B,OAAS,KACnDmb,EAAIglB,cAAc9vD,MAAMnG,KAAO,IAC/BixC,EAAIglB,cAAc9vD,MAAMjG,IAAMhC,EAAMgC,IAAI41B,OAAS,KACjDmb,EAAIilB,eAAe/vD,MAAMnG,KAAO9B,EAAM8B,KAAK61B,MAAQ33B,EAAMwvC,OAAO7X,MAAQ,KACxEob,EAAIilB,eAAe/vD,MAAMjG,IAAMhC,EAAMgC,IAAI41B,OAAS,KAClDmb,EAAI/wC,IAAIiG,MAAMnG,KAAO9B,EAAM8B,KAAK61B,MAAQ,KACxCob,EAAI/wC,IAAIiG,MAAMjG,IAAM,IACpB+wC,EAAItL,OAAOx/B,MAAMnG,KAAO9B,EAAM8B,KAAK61B,MAAQ,KAC3Cob,EAAItL,OAAOx/B,MAAMjG,IAAMhC,EAAMgC,IAAI41B,OAAS53B,EAAMm8C,gBAAgBvkB,OAAS,KAIzEz+B,KAAKuhE,kBAGL,IAAI/5C,GAASxnB,KAAK6G,MAAMy4D,SACQ,QAA5Bz7D,EAAQk7C,YAAYvtC,OACtBgW,GAAUviB,KAAKJ,IAAI7E,KAAK6G,MAAMm8C,gBAAgBvkB,OAASz+B,KAAK6G,MAAMwvC,OAAO5X,OAASz+B,KAAK6G,MAAMqH,OAAOrF,IAAM7I,KAAK6G,MAAMqH,OAAOogC,OAAQ,IAEtIsL,EAAIvD,OAAOvnC,MAAMnG,KAAO,IACxBixC,EAAIvD,OAAOvnC,MAAMjG,IAAM2e,EAAS,KAChCoyB,EAAIjxC,KAAKmG,MAAMnG,KAAO,IACtBixC,EAAIjxC,KAAKmG,MAAMjG,IAAM2e,EAAS,KAC9BoyB,EAAI/H,MAAM/iC,MAAMnG,KAAO,IACvBixC,EAAI/H,MAAM/iC,MAAMjG,IAAM2e,EAAS,IAG/B,IAAIg6C,GAAwC,GAAxBxhE,KAAK6G,MAAMy4D,UAAiB,SAAW,GACvDmC,EAAmBzhE,KAAK6G,MAAMy4D,WAAat/D,KAAK6G,MAAM04D,aAAe,SAAW,EACpF3lB,GAAIklB,UAAUhwD,MAAM4yD,WAAaF,EACjC5nB,EAAImlB,aAAajwD,MAAM4yD,WAAaD,EACpC7nB,EAAIolB,cAAclwD,MAAM4yD,WAAaF,EACrC5nB,EAAIqlB,iBAAiBnwD,MAAM4yD,WAAaD,EACxC7nB,EAAIslB,eAAepwD,MAAM4yD,WAAaF,EACtC5nB,EAAIulB,kBAAkBrwD,MAAM4yD,WAAaD,EAGzCzhE,KAAKgC,WAAWsH,QAAQ,SAAUy2D,GAChC/D,EAAU+D,EAAUrzB,UAAYsvB,GAElC,IAAI2F,GAAa,CACjB,IAAI3F,EAAS,CACX,GAAIh8D,KAAKy/D,YAAckC,EAErB,WADA3hE,MAAKo/C,KAAKE,QAAQzH,KAAK,UAGvBl4B,SAAQw+B,IAAI,yCAGdn+C,MAAKy/D,YAAc,CAErBz/D,MAAKo/D,iBAAkB,EAGvBp/D,KAAKo/C,KAAKE,QAAQzH,KAAK,aAIzBl2C,EAAKsR,UAAU2uD,QAAU,WACvB,KAAM,IAAI56D,OAAM,wDAUlBrF,EAAKsR,UAAU4uD,eAAiB,SAAU72C,GACxC,IAAKhrB,KAAKqgD,YACR,KAAM,IAAIr5C,OAAM,sCAGlBhH,MAAKqgD,YAAYwhB,eAAe72C,IAQlCrpB,EAAKsR,UAAU6uD,eAAiB,WAC9B,IAAK9hE,KAAKqgD,YACR,KAAM,IAAIr5C,OAAM,sCAGlB,OAAOhH,MAAKqgD,YAAYyhB,kBAU1BngE,EAAKsR,UAAU+sC,QAAU,SAAUpiB,GACjC,MAAOh8B,GAASm+C,OAAO//C,KAAM49B,EAAG59B,KAAK6G,MAAMwvC,OAAO7X,QAUpD78B,EAAKsR,UAAUitC,cAAgB,SAAUtiB,GACvC,MAAOh8B,GAASm+C,OAAO//C,KAAM49B,EAAG59B,KAAK6G,MAAMnH,KAAK8+B,QAalD78B,EAAKsR,UAAU2sC,UAAY,SAAU50B,GACnC,MAAOppB,GAAS+9C,SAAS3/C,KAAMgrB,EAAMhrB,KAAK6G,MAAMwvC,OAAO7X,QAYzD78B,EAAKsR,UAAU6sC,gBAAkB,SAAU90B,GACzC,MAAOppB,GAAS+9C,SAAS3/C,KAAMgrB,EAAMhrB,KAAK6G,MAAMnH,KAAK8+B,QASvD78B,EAAKsR,UAAU6sD,gBAAkB,WACA,GAA3B9/D,KAAK6D,QAAQg7C,WACf7+C,KAAK+hE,mBAEL/hE,KAAKsgE,mBAST3+D,EAAKsR,UAAU8uD,iBAAmB,WAChC,GAAI/hC,GAAKhgC,IAETA,MAAKsgE,kBAELtgE,KAAKgiE,UAAY,WACf,MAA6B,IAAzBhiC,EAAGn8B,QAAQg7C,eAEb7e,GAAGsgC,uBAIDtgC,EAAG4Z,IAAIl6C,OAKLsgC,EAAG4Z,IAAIl6C,KAAKu6C,aAAeja,EAAGn5B,MAAMo7D,WAAajiC,EAAG4Z,IAAIl6C,KAAKy6C,cAAgBna,EAAGn5B,MAAMq7D,cACxFliC,EAAGn5B,MAAMo7D,UAAYjiC,EAAG4Z,IAAIl6C,KAAKu6C,YACjCja,EAAGn5B,MAAMq7D,WAAaliC,EAAG4Z,IAAIl6C,KAAKy6C,aAElCna,EAAGof,KAAKE,QAAQzH,KAAK,cAM3Bl3C,EAAKwJ,iBAAiBY,OAAQ,SAAU/K,KAAKgiE,WAGzChiC,EAAG4Z,IAAIl6C,OACTsgC,EAAGn5B,MAAMo7D,UAAYjiC,EAAG4Z,IAAIl6C,KAAKu6C,YACjCja,EAAGn5B,MAAMq7D,WAAaliC,EAAG4Z,IAAIl6C,KAAKy6C,cAGpCn6C,KAAKmiE,WAAaC,YAAYpiE,KAAKgiE,UAAW,MAOhDrgE,EAAKsR,UAAUqtD,gBAAkB,WAC3BtgE,KAAKmiE,aACPllB,cAAcj9C,KAAKmiE,YACnBniE,KAAKmiE,WAAa57D,QAIhBvG,KAAKgiE,YACPrhE,EAAKgK,oBAAoBI,OAAQ,SAAU/K,KAAKgiE,WAChDhiE,KAAKgiE,UAAY,OASrBrgE,EAAKsR,UAAU6lD,SAAW,SAAUhuD,GAClC9K,KAAKquD,MAAMmM,eAAgB,EAC3Bx6D,KAAKquD,MAAMgU,iBAAmBriE,KAAK6G,MAAMy4D,WAQ3C39D,EAAKsR,UAAU8lD,SAAW,SAAUjuD,GAClC9K,KAAKquD,MAAMmM,eAAgB,GAQ7B74D,EAAKsR,UAAU0lD,QAAU,SAAU7tD,GAGjC,GAAK9K,KAAKquD,MAAMmM,cAAhB,CAEA,GAAIzuC,GAAQjhB,EAAMmgD,OAEdqX,EAAetiE,KAAKuiE,gBACpBC,EAAexiE,KAAKyiE,cAAcziE,KAAKquD,MAAMgU,iBAAmBt2C,EAEhEy2C,IAAgBF,GAClBtiE,KAAK63C,KAAK,kBAUdl2C,EAAKsR,UAAUwvD,cAAgB,SAAUnD,GAGvC,MAFAt/D,MAAK6G,MAAMy4D,UAAYA,EACvBt/D,KAAKuhE,mBACEvhE,KAAK6G,MAAMy4D,WAQpB39D,EAAKsR,UAAUsuD,iBAAmB,WAEhC,GAAIhC,GAAet6D,KAAKL,IAAI5E,KAAK6G,MAAMm8C,gBAAgBvkB,OAASz+B,KAAK6G,MAAMwvC,OAAO5X,OAAQ,EAc1F,OAbI8gC,IAAgBv/D,KAAK6G,MAAM04D,eAGQ,OAAjCv/D,KAAK6D,QAAQk7C,YAAYvtC,OAC3BxR,KAAK6G,MAAMy4D,WAAaC,EAAev/D,KAAK6G,MAAM04D,cAEpDv/D,KAAK6G,MAAM04D,aAAeA,GAIxBv/D,KAAK6G,MAAMy4D,UAAY,IAAGt/D,KAAK6G,MAAMy4D,UAAY,GACjDt/D,KAAK6G,MAAMy4D,UAAYC,IAAcv/D,KAAK6G,MAAMy4D,UAAYC,GAEzDv/D,KAAK6G,MAAMy4D,WAQpB39D,EAAKsR,UAAUsvD,cAAgB,WAC7B,MAAOviE,MAAK6G,MAAMy4D,WAQpB39D,EAAKsR,UAAUsuC,oBAAsB,WACnC,KAAM,IAAIv6C,OAAM,sDAGlBnH,EAAOD,QAAU+B,GAIb,SAAS9B,EAAQD,EAASM,GA6B9B,QAAS6C,GAAQq8C,EAAMv7C,GACrB7D,KAAKo/C,KAAOA,EAEZp/C,KAAK4+C,gBACHh3C,KAAM,KACNm3C,aACEvtC,KAAM,UAERkxD,MAAO,OACP5gE,OAAO,EACP6gE,eAAgB,SAAwBC,EAAWC,EAASnkB,GAC1D,GAAIokB,GAAcD,EAAQ7hC,KAC1B6hC,GAAQ7hC,MAAQ4hC,EAAU5hC,MAC1B4hC,EAAU5hC,MAAQ8hC,GAEpBC,WAAY,QAEZC,YAAY,EACZC,aAAa,EACbC,sBAAsB,EAEtBC,UACEC,YAAY,EACZC,aAAa,EACbp9C,KAAK,EACL0b,QAAQ,GAGV2hC,eACEtiC,OAAO,EACP/a,KAAK,EACL0b,QAAQ,GAGV2hB,KAAMvhD,EAASuhD,KAEfigB,MAAO,SAAe/xD,EAAMjI,GAC1BA,EAASiI,IAEXgyD,SAAU,SAAkBhyD,EAAMjI,GAChCA,EAASiI,IAEXiyD,OAAQ,SAAgBjyD,EAAMjI,GAC5BA,EAASiI,IAEXkyD,SAAU,SAAkBlyD,EAAMjI,GAChCA,EAASiI,IAEXmyD,SAAU,SAAkBnyD,EAAMjI,GAChCA,EAASiI,IAEXoyD,WAAY,SAAoBpyD,EAAMjI,GACpCA,EAASiI,IAEXqyD,YAAa,SAAqBryD,EAAMjI,GACtCA,EAASiI,IAEXsyD,cAAe,SAAuBtyD,EAAMjI,GAC1CA,EAASiI,IAGX+yB,QACE/yB,MACE0+B,WAAY,GACZC,SAAU,IAEZ6O,KAAM,KAKVh/C,KAAK6D,QAAUlD,EAAKgG,UAAW3G,KAAK4+C,gBAGpC5+C,KAAK+jE,aACHn8D,MAAQgrC,MAAO,OAAQE,IAAK,SAG9B9yC,KAAKo6D,YACHza,SAAUP,EAAKz+C,KAAKg/C,SACpBI,OAAQX,EAAKz+C,KAAKo/C,QAEpB//C,KAAK45C,OACL55C,KAAK6G,SACL7G,KAAKokD,OAAS,IAEd,IAAIpkB,GAAKhgC,IACTA,MAAKugD,UAAY,KACjBvgD,KAAKwgD,WAAa,KAGlBxgD,KAAKgkE,eACH/9C,IAAO,SAAanb,EAAO60B,EAAQC,GACjCI,EAAGikC,OAAOtkC,EAAO19B,QAEnBi+B,OAAU,SAAgBp1B,EAAO60B,EAAQC,GACvCI,EAAGkkC,UAAUvkC,EAAO19B,QAEtB0/B,OAAU,SAAgB72B,EAAO60B,EAAQC,GACvCI,EAAGmkC,UAAUxkC,EAAO19B,SAKxBjC,KAAKokE,gBACHn+C,IAAO,SAAanb,EAAO60B,EAAQC,GACjCI,EAAGqkC,aAAa1kC,EAAO19B,QAEzBi+B,OAAU,SAAgBp1B,EAAO60B,EAAQC,GACvCI,EAAGskC,gBAAgB3kC,EAAO19B,QAE5B0/B,OAAU,SAAgB72B,EAAO60B,EAAQC,GACvCI,EAAGukC,gBAAgB5kC,EAAO19B,SAI9BjC,KAAKiC,SACLjC,KAAK0+C,UACL1+C,KAAKwkE,YAELxkE,KAAK4hD,aACL5hD,KAAKykE,YAAa,EAElBzkE,KAAK0kE,eACL1kE,KAAK2kE,oBAGL3kE,KAAKm/C,UAELn/C,KAAKg/B,WAAWn7B,GA1JlB,GAAIG,GAAS9D,EAAoB,IAC7BS,EAAOT,EAAoB,GAC3BW,EAAUX,EAAoB,GAC9BY,EAAWZ,EAAoB,IAC/B6B,EAAW7B,EAAoB,IAC/BsC,EAAYtC,EAAoB,IAChC4C,EAAQ5C,EAAoB,IAC5BqC,EAAkBrC,EAAoB,IACtCkC,EAAUlC,EAAoB,IAC9BmC,EAAYnC,EAAoB,IAChCoC,EAAYpC,EAAoB,IAChCiC,EAAiBjC,EAAoB,IAErC0kE,EAAY,gBACZC,EAAa,gBA+IjB9hE,GAAQkQ,UAAY,GAAIzQ,GAGxBO,EAAQu/B,OACNr0B,WAAY9L,EACZ2iE,IAAK1iE,EACL+9C,MAAO79C,EACPy7B,MAAO17B,GAMTU,EAAQkQ,UAAUksC,QAAU,WAC1B,GAAI3U,GAAQpN,SAASM,cAAc,MACnC8M,GAAMzhC,UAAY,cAClByhC,EAAM,oBAAsBxqC,KAC5BA,KAAK45C,IAAIpP,MAAQA,CAGjB,IAAIv8B,GAAamvB,SAASM,cAAc,MACxCzvB,GAAWlF,UAAY,iBACvByhC,EAAMlN,YAAYrvB,GAClBjO,KAAK45C,IAAI3rC,WAAaA,CAGtB,IAAIw1C,GAAarmB,SAASM,cAAc,MACxC+lB,GAAW16C,UAAY,iBACvByhC,EAAMlN,YAAYmmB,GAClBzjD,KAAK45C,IAAI6J,WAAaA,CAGtB,IAAIzE,GAAO5hB,SAASM,cAAc,MAClCshB,GAAKj2C,UAAY,WACjB/I,KAAK45C,IAAIoF,KAAOA,CAGhB,IAAI0E,GAAWtmB,SAASM,cAAc,MACtCgmB,GAAS36C,UAAY,eACrB/I,KAAK45C,IAAI8J,SAAWA,EAGpB1jD,KAAK+kE,kBAGL,IAAIC,GAAkB,GAAIziE,GAAgBsiE,EAAY,KAAM7kE,KAC5DglE,GAAgBriB,OAChB3iD,KAAK0+C,OAAOmmB,GAAcG,EAM1BhlE,KAAKokD,OAAS,GAAIpgD,GAAOhE,KAAKo/C,KAAKxF,IAAIoJ,iBAGvChjD,KAAKokD,OAAOhlB,GAAG,eAAgB,SAAWt0B,GACpCA,EAAMs6C,SACRplD,KAAK84D,SAAShuD,IAEfy0C,KAAKv/C,OACRA,KAAKokD,OAAOhlB,GAAG,WAAYp/B,KAAK04D,aAAanZ,KAAKv/C,OAClDA,KAAKokD,OAAOhlB,GAAG,UAAWp/B,KAAK24D,QAAQpZ,KAAKv/C,OAC5CA,KAAKokD,OAAOhlB,GAAG,SAAUp/B,KAAK44D,WAAWrZ,KAAKv/C,OAC9CA,KAAKokD,OAAOptB,IAAI,OAAO5e,KAAM0b,UAAW,EAAGpJ,UAAW,KAGtD1qB,KAAKokD,OAAOhlB,GAAG,MAAOp/B,KAAKilE,cAAc1lB,KAAKv/C,OAG9CA,KAAKokD,OAAOhlB,GAAG,QAASp/B,KAAKklE,mBAAmB3lB,KAAKv/C,OAGrDA,KAAKokD,OAAOhlB,GAAG,YAAap/B,KAAKmlE,WAAW5lB,KAAKv/C,OAEjDA,KAAKolE,YAAc,GAAIphE,GAAOhE,KAAKo/C,KAAKxF,IAAIglB,eAC5C5+D,KAAKolE,YAAYhmC,GAAG,WAAYp/B,KAAKqlE,kBAAkB9lB,KAAKv/C,OAC5DA,KAAKolE,YAAYhmC,GAAG,UAAWp/B,KAAKslE,aAAa/lB,KAAKv/C,OACtDA,KAAKolE,YAAYhmC,GAAG,SAAUp/B,KAAKulE,gBAAgBhmB,KAAKv/C,OACxDA,KAAKolE,YAAYpuC,IAAI,OAAO5e,KAAM0b,UAAW,EAAGpJ,UAAW,KAG3D1qB,KAAK2iD,QAmEP5/C,EAAQkQ,UAAU+rB,WAAa,SAAUn7B,GACvC,GAAIA,EAAS,CAEX,GAAIoM,IAAU,OAAQ,QAAS,QAAS,QAAS,aAAc,cAAe,uBAAwB,sBAAuB,aAAc,iBAAkB,WAAY,gBAAiB,OAAQ,OAAQ,iBAC1MtP,GAAKiG,gBAAgBqJ,EAAQjQ,KAAK6D,QAASA,GAEvC,eAAiBA,KACgB,gBAAxBA,GAAQk7C,YACjB/+C,KAAK6D,QAAQk7C,YAAYvtC,KAA+B,QAAxB3N,EAAQk7C,YAAwB,MAAQ,SAChC,gBAAxBl7C,GAAQk7C,aAA4B,QAAUl7C,GAAQk7C,cACtE/+C,KAAK6D,QAAQk7C,YAAYvtC,KAAO3N,EAAQk7C,YAAYvtC,OAIpD,UAAY3N,KACgB,gBAAnBA,GAAQ0gC,QACjBvkC,KAAK6D,QAAQ0gC,OAAOya,KAAOn7C,EAAQ0gC,OACnCvkC,KAAK6D,QAAQ0gC,OAAO/yB,KAAK0+B,WAAarsC,EAAQ0gC,OAC9CvkC,KAAK6D,QAAQ0gC,OAAO/yB,KAAK2+B,SAAWtsC,EAAQ0gC,QACT,gBAAnB1gC,GAAQ0gC,SACxB5jC,EAAKiG,iBAAiB,QAAS5G,KAAK6D,QAAQ0gC,OAAQ1gC,EAAQ0gC,QACxD,QAAU1gC,GAAQ0gC,SACe,gBAAxB1gC,GAAQ0gC,OAAO/yB,MACxBxR,KAAK6D,QAAQ0gC,OAAO/yB,KAAK0+B,WAAarsC,EAAQ0gC,OAAO/yB,KACrDxR,KAAK6D,QAAQ0gC,OAAO/yB,KAAK2+B,SAAWtsC,EAAQ0gC,OAAO/yB,MACX,gBAAxB3N,GAAQ0gC,OAAO/yB,MAC/B7Q,EAAKiG,iBAAiB,aAAc,YAAa5G,KAAK6D,QAAQ0gC,OAAO/yB,KAAM3N,EAAQ0gC,OAAO/yB,SAM9F,YAAc3N,KACgB,iBAArBA,GAAQs/D,UACjBnjE,KAAK6D,QAAQs/D,SAASC,WAAav/D,EAAQs/D,SAC3CnjE,KAAK6D,QAAQs/D,SAASE,YAAcx/D,EAAQs/D,SAC5CnjE,KAAK6D,QAAQs/D,SAASl9C,IAAMpiB,EAAQs/D,SACpCnjE,KAAK6D,QAAQs/D,SAASxhC,OAAS99B,EAAQs/D,UACF,gBAArBt/D,GAAQs/D,UACxBxiE,EAAKiG,iBAAiB,aAAc,cAAe,MAAO,UAAW5G,KAAK6D,QAAQs/D,SAAUt/D,EAAQs/D,WAIpG,iBAAmBt/D,KACgB,iBAA1BA,GAAQy/D,eACjBtjE,KAAK6D,QAAQy/D,cAActiC,MAAQn9B,EAAQy/D,cAC3CtjE,KAAK6D,QAAQy/D,cAAcr9C,IAAMpiB,EAAQy/D,cACzCtjE,KAAK6D,QAAQy/D,cAAc3hC,OAAS99B,EAAQy/D,eACF,gBAA1Bz/D,GAAQy/D,eACxB3iE,EAAKiG,iBAAiB,QAAS,MAAO,UAAW5G,KAAK6D,QAAQy/D,cAAez/D,EAAQy/D,eAKzF,IAAIkC,GAAc,SAAWhuD,GAC3B,GAAI3N,GAAKhG,EAAQ2T,EACjB,IAAI3N,EAAI,CACN,KAAMA,YAAcoP,WAClB,KAAM,IAAIjS,OAAM,UAAYwQ,EAAO,uBAAyBA,EAAO,mBAErExX,MAAK6D,QAAQ2T,GAAQ3N,IAEtB01C,KAAKv/C,OACP,QAAS,WAAY,WAAY,SAAU,WAAY,aAAc,cAAe,iBAAiBsJ,QAAQk8D,GAG9GxlE,KAAKwhD,cASTz+C,EAAQkQ,UAAUuuC,UAAY,SAAU39C,GACtC7D,KAAKwkE,YACLxkE,KAAKykE,YAAa,EAEd5gE,GAAWA,EAAQ49C,cACrB9gD,EAAK2I,QAAQtJ,KAAKiC,MAAO,SAAUuP,GACjCA,EAAKi0D,OAAQ,EACTj0D,EAAKk0D,WAAWl0D,EAAKk7B,YAQ/B3pC,EAAQkQ,UAAUksB,QAAU,WAC1Bn/B,KAAK2lE,OACL3lE,KAAKihD,SAAS,MACdjhD,KAAKghD,UAAU,MAEfhhD,KAAKokD,OAAS,KAEdpkD,KAAKo/C,KAAO,KACZp/C,KAAKo6D,WAAa,MAMpBr3D,EAAQkQ,UAAU0yD,KAAO,WAEnB3lE,KAAK45C,IAAIpP,MAAMn/B,YACjBrL,KAAK45C,IAAIpP,MAAMn/B,WAAW3G,YAAY1E,KAAK45C,IAAIpP,OAI7CxqC,KAAK45C,IAAIoF,KAAK3zC,YAChBrL,KAAK45C,IAAIoF,KAAK3zC,WAAW3G,YAAY1E,KAAK45C,IAAIoF,MAI5Ch/C,KAAK45C,IAAI8J,SAASr4C,YACpBrL,KAAK45C,IAAI8J,SAASr4C,WAAW3G,YAAY1E,KAAK45C,IAAI8J,WAQtD3gD,EAAQkQ,UAAU0vC,KAAO,WAElB3iD,KAAK45C,IAAIpP,MAAMn/B,YAClBrL,KAAKo/C,KAAKxF,IAAIvD,OAAO/Y,YAAYt9B,KAAK45C,IAAIpP,OAIvCxqC,KAAK45C,IAAIoF,KAAK3zC,YACjBrL,KAAKo/C,KAAKxF,IAAI8kB,mBAAmBphC,YAAYt9B,KAAK45C,IAAIoF,MAInDh/C,KAAK45C,IAAI8J,SAASr4C,YACrBrL,KAAKo/C,KAAKxF,IAAIjxC,KAAK20B,YAAYt9B,KAAK45C,IAAI8J,WAW5C3gD,EAAQkQ,UAAU6uC,aAAe,SAAUrhB,GACzC,GAAIh6B,GAAGm0B,EAAIv6B,EAAImR,CAMf,KAJWjL,QAAPk6B,IAAkBA,MACjB35B,MAAMC,QAAQ05B,KAAMA,GAAOA,IAG3Bh6B,EAAI,EAAGm0B,EAAK56B,KAAK4hD,UAAUt7C,OAAYs0B,EAAJn0B,EAAQA,IAC9CpG,EAAKL,KAAK4hD,UAAUn7C,GACpB+K,EAAOxR,KAAKiC,MAAM5B,GACdmR,GAAMA,EAAKo0D,UAKjB,KADA5lE,KAAK4hD,aACAn7C,EAAI,EAAGm0B,EAAK6F,EAAIn6B,OAAYs0B,EAAJn0B,EAAQA,IACnCpG,EAAKogC,EAAIh6B,GACT+K,EAAOxR,KAAKiC,MAAM5B,GACdmR,IACFxR,KAAK4hD,UAAUp6C,KAAKnH,GACpBmR,EAAKq0D,WASX9iE,EAAQkQ,UAAU4uC,aAAe,WAC/B,MAAO7hD,MAAK4hD,UAAU/hB,YAOxB98B,EAAQkQ,UAAU+tD,gBAAkB,WAClC,GAAI7gB,GAAQngD,KAAKo/C,KAAKe,MAAMga,WACxBxxD,EAAO3I,KAAKo/C,KAAKz+C,KAAKg/C,SAASQ,EAAMvN,OACrCf,EAAQ7xC,KAAKo/C,KAAKz+C,KAAKg/C,SAASQ,EAAMrN,KAEtCrS,IACJ,KAAK,GAAIkjB,KAAW3jD,MAAK0+C,OACvB,GAAI1+C,KAAK0+C,OAAO14C,eAAe29C,GAM7B,IAAK,GALDT,GAAQljD,KAAK0+C,OAAOiF,GACpBmiB,EAAkB5iB,EAAM6iB,aAInBt/D,EAAI,EAAGA,EAAIq/D,EAAgBx/D,OAAQG,IAAK,CAC/C,GAAI+K,GAAOs0D,EAAgBr/D,EAEvB+K,GAAK7I,KAAOkpC,GAASrgC,EAAK7I,KAAO6I,EAAKgtB,MAAQ71B,GAChD83B,EAAIj5B,KAAKgK,EAAKnR,IAMtB,MAAOogC,IAQT19B,EAAQkQ,UAAU+yD,UAAY,SAAU3lE,GAEtC,IAAK,GADDuhD,GAAY5hD,KAAK4hD,UACZn7C,EAAI,EAAGm0B,EAAKgnB,EAAUt7C,OAAYs0B,EAAJn0B,EAAQA,IAC7C,GAAIm7C,EAAUn7C,IAAMpG,EAAI,CAEtBuhD,EAAUv4C,OAAO5C,EAAG,EACpB,SASN1D,EAAQkQ,UAAUy5B,OAAS,WACzB,GAAInI,GAASvkC,KAAK6D,QAAQ0gC,OACtB4b,EAAQngD,KAAKo/C,KAAKe,MAClBr0C,EAASnL,EAAK8K,OAAOK,OACrBjI,EAAU7D,KAAK6D,QACfk7C,EAAcl7C,EAAQk7C,YAAYvtC,KAClCwqD,GAAU,EACVxxB,EAAQxqC,KAAK45C,IAAIpP,KAGrBxqC,MAAK6G,MAAMgC,IAAM7I,KAAKo/C,KAAKC,SAASx2C,IAAI41B,OAASz+B,KAAKo/C,KAAKC,SAASnxC,OAAOrF,IAC3E7I,KAAK6G,MAAM8B,KAAO3I,KAAKo/C,KAAKC,SAAS12C,KAAK61B,MAAQx+B,KAAKo/C,KAAKC,SAASnxC,OAAOvF,KAG5E6hC,EAAMzhC,UAAY,cAGlBizD,EAAUh8D,KAAKimE,gBAAkBjK,CAIjC,IAAIkK,GAAkB/lB,EAAMrN,IAAMqN,EAAMvN,MACpCuzB,EAASD,GAAmBlmE,KAAKomE,qBAAuBpmE,KAAK6G,MAAM23B,OAASx+B,KAAK6G,MAAMo7D,SACvFkE,KAAQnmE,KAAKykE,YAAa,GAC9BzkE,KAAKomE,oBAAsBF,EAC3BlmE,KAAK6G,MAAMo7D,UAAYjiE,KAAK6G,MAAM23B,KAElC,IAAI6nC,GAAUrmE,KAAKykE,WACf6B,EAAatmE,KAAKumE,cAClBC,GACFh1D,KAAM+yB,EAAO/yB,KACbwtC,KAAMza,EAAOya,MAEXynB,GACFj1D,KAAM+yB,EAAO/yB,KACbwtC,KAAMza,EAAO/yB,KAAK2+B,SAAW,GAE3B1R,EAAS,EACTygB,EAAY3a,EAAOya,KAAOza,EAAO/yB,KAAK2+B,QA6B1C,OA1BAnwC,MAAK0+C,OAAOmmB,GAAYn4B,OAAOyT,EAAOsmB,EAAgBJ,GAGtD1lE,EAAK2I,QAAQtJ,KAAK0+C,OAAQ,SAAUwE,GAClC,GAAIwjB,GAAcxjB,GAASojB,EAAaE,EAAcC,EAClDE,EAAezjB,EAAMxW,OAAOyT,EAAOumB,EAAaL,EACpDrK,GAAU2K,GAAgB3K,EAC1Bv9B,GAAUykB,EAAMzkB,SAElBA,EAASx5B,KAAKJ,IAAI45B,EAAQygB,GAC1Bl/C,KAAKykE,YAAa,EAGlBj6B,EAAM17B,MAAM2vB,OAAS3yB,EAAO2yB,GAG5Bz+B,KAAK6G,MAAM23B,MAAQgM,EAAMyP,YACzBj6C,KAAK6G,MAAM43B,OAASA,EAGpBz+B,KAAK45C,IAAIoF,KAAKlwC,MAAMjG,IAAMiD,EAAsB,OAAfizC,EAAuB/+C,KAAKo/C,KAAKC,SAASx2C,IAAI41B,OAASz+B,KAAKo/C,KAAKC,SAASnxC,OAAOrF,IAAM7I,KAAKo/C,KAAKC,SAASx2C,IAAI41B,OAASz+B,KAAKo/C,KAAKC,SAAS2D,gBAAgBvkB,QAC3Lz+B,KAAK45C,IAAIoF,KAAKlwC,MAAMnG,KAAO,IAG3BqzD,EAAUh8D,KAAK+7D,cAAgBC,GAUjCj5D,EAAQkQ,UAAUszD,YAAc,WAC9B,GAAIK,GAAmD,OAAjC5mE,KAAK6D,QAAQk7C,YAAYvtC,KAAgB,EAAIxR,KAAKwkE,SAASl+D,OAAS,EACtFugE,EAAe7mE,KAAKwkE,SAASoC,GAC7BN,EAAatmE,KAAK0+C,OAAOmoB,IAAiB7mE,KAAK0+C,OAAOkmB,EAE1D,OAAO0B,IAAc,MAQvBvjE,EAAQkQ,UAAU8xD,iBAAmB,WACnC,GAEIvzD,GAAMsvB,EAFNgmC,EAAY9mE,KAAK0+C,OAAOkmB,EACX5kE,MAAK0+C,OAAOmmB,EAG7B,IAAI7kE,KAAKwgD,YAEP,GAAIsmB,EAAW,CACbA,EAAUnB,aACH3lE,MAAK0+C,OAAOkmB,EAEnB,KAAK9jC,IAAU9gC,MAAKiC,MAClB,GAAIjC,KAAKiC,MAAM+D,eAAe86B,GAAS,CACrCtvB,EAAOxR,KAAKiC,MAAM6+B,GAClBtvB,EAAKjG,QAAUiG,EAAKjG,OAAOo2B,OAAOnwB,EAClC,IAAImyC,GAAU3jD,KAAK+mE,YAAYv1D,EAAKwG,MAChCkrC,EAAQljD,KAAK0+C,OAAOiF,EACxBT,IAASA,EAAMj9B,IAAIzU,IAASA,EAAKm0D,aAMvC,KAAKmB,EAAW,CACd,GAAIzmE,GAAK,KACL2X,EAAO,IACX8uD,GAAY,GAAIhkE,GAAMzC,EAAI2X,EAAMhY,MAChCA,KAAK0+C,OAAOkmB,GAAakC,CAEzB,KAAKhmC,IAAU9gC,MAAKiC,MACdjC,KAAKiC,MAAM+D,eAAe86B,KAC5BtvB,EAAOxR,KAAKiC,MAAM6+B,GAClBgmC,EAAU7gD,IAAIzU,GAIlBs1D,GAAUnkB,SAShB5/C,EAAQkQ,UAAU+zD,YAAc,WAC9B,MAAOhnE,MAAK45C,IAAI8J,UAOlB3gD,EAAQkQ,UAAUguC,SAAW,SAAUh/C,GACrC,GACIw+B,GADAT,EAAKhgC,KAELinE,EAAejnE,KAAKugD,SAGxB,IAAKt+C,EAEE,CAAA,KAAIA,YAAiBpB,IAAWoB,YAAiBnB,IAGtD,KAAM,IAAIoG,WAAU,kDAFpBlH,MAAKugD,UAAYt+C,MAFjBjC,MAAKugD,UAAY,IAkBnB,IAXI0mB,IAEFtmE,EAAK2I,QAAQtJ,KAAKgkE,cAAe,SAAUz6D,EAAUuB,GACnDm8D,EAAa1nC,IAAIz0B,EAAOvB,KAI1Bk3B,EAAMwmC,EAAa7lC,SACnBphC,KAAKmkE,UAAU1jC,IAGbzgC,KAAKugD,UAAW,CAElB,GAAIlgD,GAAKL,KAAKK,EACdM,GAAK2I,QAAQtJ,KAAKgkE,cAAe,SAAUz6D,EAAUuB,GACnDk1B,EAAGugB,UAAUnhB,GAAGt0B,EAAOvB,EAAUlJ,KAInCogC,EAAMzgC,KAAKugD,UAAUnf,SACrBphC,KAAKikE,OAAOxjC,GAGZzgC,KAAK+kE,mBAGP/kE,KAAKo/C,KAAKE,QAAQzH,KAAK,WAAa5Y,OAAO,KAO7Cl8B,EAAQkQ,UAAUi0D,SAAW,WAC3B,MAAOlnE,MAAKugD,WAOdx9C,EAAQkQ,UAAU+tC,UAAY,SAAUtC,GACtC,GACIje,GADAT,EAAKhgC,IAgBT,IAZIA,KAAKwgD,aACP7/C,EAAK2I,QAAQtJ,KAAKokE,eAAgB,SAAU76D,EAAUuB,GACpDk1B,EAAGwgB,WAAWjhB,IAAIz0B,EAAOvB,KAI3Bk3B,EAAMzgC,KAAKwgD,WAAWpf,SACtBphC,KAAKwgD,WAAa,KAClBxgD,KAAKukE,gBAAgB9jC,IAIlBie,EAEE,CAAA,KAAIA,YAAkB79C,IAAW69C,YAAkB59C,IAGxD,KAAM,IAAIoG,WAAU,kDAFpBlH,MAAKwgD,WAAa9B,MAFlB1+C,MAAKwgD,WAAa,IAOpB,IAAIxgD,KAAKwgD,WAAY,CAEnB,GAAIngD,GAAKL,KAAKK,EACdM,GAAK2I,QAAQtJ,KAAKokE,eAAgB,SAAU76D,EAAUuB,GACpDk1B,EAAGwgB,WAAWphB,GAAGt0B,EAAOvB,EAAUlJ,KAIpCogC,EAAMzgC,KAAKwgD,WAAWpf,SACtBphC,KAAKqkE,aAAa5jC,GAIpBzgC,KAAK+kE,mBAGL/kE,KAAKmnE,SAELnnE,KAAKo/C,KAAKE,QAAQzH,KAAK,WAAa5Y,OAAO,KAO7Cl8B,EAAQkQ,UAAUm0D,UAAY,WAC5B,MAAOpnE,MAAKwgD,YAOdz9C,EAAQkQ,UAAUo0D,WAAa,SAAUhnE,GACvC,GAAImR,GAAOxR,KAAKugD,UAAUvpB,IAAI32B,GAC1B0iD,EAAU/iD,KAAKugD,UAAUlf,YAEzB7vB,IAEFxR,KAAK6D,QAAQ6/D,SAASlyD,EAAM,SAAUA,GAChCA,GAGFuxC,EAAQphB,OAAOthC,MAYvB0C,EAAQkQ,UAAUq0D,SAAW,SAAUrlB,GACrC,MAAOA,GAASr6C,MAAQ5H,KAAK6D,QAAQ+D,OAASq6C,EAASnP,IAAM,QAAU,QASzE/vC,EAAQkQ,UAAU8zD,YAAc,SAAU9kB,GACxC,GAAIr6C,GAAO5H,KAAKsnE,SAASrlB,EACzB,OAAY,cAARr6C,GAA0CrB,QAAlB07C,EAASiB,MAC5B2hB,EAEA7kE,KAAKwgD,WAAayB,EAASiB,MAAQ0hB,GAS9C7hE,EAAQkQ,UAAUixD,UAAY,SAAUzjC,GACtC,GAAIT,GAAKhgC,IAETygC,GAAIn3B,QAAQ,SAAWjJ,GACrB,GAKIknE,GALAtlB,EAAWjiB,EAAGugB,UAAUvpB,IAAI32B,EAAI2/B,EAAG+jC,aACnCvyD,EAAOwuB,EAAG/9B,MAAM5B,GAChBuH,EAAOo4B,EAAGsnC,SAASrlB,GAEnB96C,EAAcpE,EAAQu/B,MAAM16B,EAehC,IAZI4J,IAEGrK,GAAiBqK,YAAgBrK,GAMpC64B,EAAGQ,YAAYhvB,EAAMywC,IAJrBslB,EAAW/1D,EAAK+1D,SAChBvnC,EAAGwnC,YAAYh2D,GACfA,EAAO,QAMNA,EAAM,CAET,IAAIrK,EAQG,KAAY,iBAARS,EAEH,GAAIV,WAAU,gIAEd,GAAIA,WAAU,sBAAwBU,EAAO,IAXnD4J,GAAO,GAAIrK,GAAY86C,EAAUjiB,EAAGo6B,WAAYp6B,EAAGn8B,SACnD2N,EAAKnR,GAAKA,EACV2/B,EAAGC,SAASzuB,GACR+1D,IACFvnE,KAAK4hD,UAAUp6C,KAAKnH,GACpBmR,EAAKq0D,YASVtmB,KAAKv/C,OAERA,KAAKmnE,SACLnnE,KAAKykE,YAAa,EAClBzkE,KAAKo/C,KAAKE,QAAQzH,KAAK,WAAa5Y,OAAO,KAQ7Cl8B,EAAQkQ,UAAUgxD,OAASlhE,EAAQkQ,UAAUixD,UAO7CnhE,EAAQkQ,UAAUkxD,UAAY,SAAU1jC,GACtC,GAAIxO,GAAQ,EACR+N,EAAKhgC,IACTygC,GAAIn3B,QAAQ,SAAUjJ,GACpB,GAAImR,GAAOwuB,EAAG/9B,MAAM5B,EAChBmR,KACFygB,IACA+N,EAAGwnC,YAAYh2D,MAIfygB,IAEFjyB,KAAKmnE,SACLnnE,KAAKykE,YAAa,EAClBzkE,KAAKo/C,KAAKE,QAAQzH,KAAK,WAAa5Y,OAAO,MAQ/Cl8B,EAAQkQ,UAAUk0D,OAAS,WAGzBxmE,EAAK2I,QAAQtJ,KAAK0+C,OAAQ,SAAUwE,GAClCA,EAAMliB,WASVj+B,EAAQkQ,UAAUqxD,gBAAkB,SAAU7jC,GAC5CzgC,KAAKqkE,aAAa5jC,IAQpB19B,EAAQkQ,UAAUoxD,aAAe,SAAU5jC,GACzC,GAAIT,GAAKhgC,IAETygC,GAAIn3B,QAAQ,SAAUjJ,GACpB,GAAIonE,GAAYznC,EAAGwgB,WAAWxpB,IAAI32B,GAC9B6iD,EAAQljB,EAAG0e,OAAOr+C,EAEtB,IAAK6iD,EA4BHA,EAAMzf,QAAQgkC,OA5BJ,CAEV,GAAIpnE,GAAMukE,GAAavkE,GAAMwkE,EAC3B,KAAM,IAAI79D,OAAM,qBAAuB3G,EAAK,qBAG9C,IAAIqnE,GAAetgE,OAAOgJ,OAAO4vB,EAAGn8B,QACpClD,GAAKgG,OAAO+gE,GACVjpC,OAAQ,OAGVykB,EAAQ,GAAIpgD,GAAMzC,EAAIonE,EAAWznC,GACjCA,EAAG0e,OAAOr+C,GAAM6iD,CAGhB,KAAK,GAAIpiB,KAAUd,GAAG/9B,MACpB,GAAI+9B,EAAG/9B,MAAM+D,eAAe86B,GAAS,CACnC,GAAItvB,GAAOwuB,EAAG/9B,MAAM6+B,EAChBtvB,GAAKwG,KAAKkrC,OAAS7iD,GACrB6iD,EAAMj9B,IAAIzU,GAKhB0xC,EAAMliB,QACNkiB,EAAMP,UAOV3iD,KAAKo/C,KAAKE,QAAQzH,KAAK,WAAa5Y,OAAO,KAQ7Cl8B,EAAQkQ,UAAUsxD,gBAAkB,SAAU9jC,GAC5C,GAAIie,GAAS1+C,KAAK0+C,MAClBje,GAAIn3B,QAAQ,SAAUjJ,GACpB,GAAI6iD,GAAQxE,EAAOr+C,EAEf6iD,KACFA,EAAMyiB,aACCjnB,GAAOr+C,MAIlBL,KAAKwhD,YAELxhD,KAAKo/C,KAAKE,QAAQzH,KAAK,WAAa5Y,OAAO,KAQ7Cl8B,EAAQkQ,UAAUgzD,aAAe,WAC/B,GAAIjmE,KAAKwgD,WAAY,CAEnB,GAAIgkB,GAAWxkE,KAAKwgD,WAAWpf,QAC7BJ,MAAOhhC,KAAK6D,QAAQk/D,aAGlBnV,GAAWjtD,EAAK8G,WAAW+8D,EAAUxkE,KAAKwkE,SAC9C,IAAI5W,EAAS,CAEX,GAAIlP,GAAS1+C,KAAK0+C,MAClB8lB,GAASl7D,QAAQ,SAAUq6C,GACzBjF,EAAOiF,GAASgiB,SAIlBnB,EAASl7D,QAAQ,SAAUq6C,GACzBjF,EAAOiF,GAAShB,SAGlB3iD,KAAKwkE,SAAWA,EAGlB,MAAO5W,GAEP,OAAO,GASX7qD,EAAQkQ,UAAUgtB,SAAW,SAAUzuB,GACrCxR,KAAKiC,MAAMuP,EAAKnR,IAAMmR,CAGtB,IAAImyC,GAAU3jD,KAAK+mE,YAAYv1D,EAAKwG,MAChCkrC,EAAQljD,KAAK0+C,OAAOiF,EACpBT,IAAOA,EAAMj9B,IAAIzU,IASvBzO,EAAQkQ,UAAUutB,YAAc,SAAUhvB,EAAMywC,GAC9C,GAAI0lB,GAAan2D,EAAKwG,KAAKkrC,MACvB0kB,EAAgBp2D,EAAKwG,KAAK6vD,QAM9B,IAHAr2D,EAAKiyB,QAAQwe,GAGT0lB,GAAcn2D,EAAKwG,KAAKkrC,OAAS0kB,GAAiBp2D,EAAKwG,KAAK6vD,SAAU,CACxE,GAAIC,GAAW9nE,KAAK0+C,OAAOipB,EACvBG,IAAUA,EAASnmC,OAAOnwB,EAE9B,IAAImyC,GAAU3jD,KAAK+mE,YAAYv1D,EAAKwG,MAChCkrC,EAAQljD,KAAK0+C,OAAOiF,EACpBT,IAAOA,EAAMj9B,IAAIzU,KAUzBzO,EAAQkQ,UAAUu0D,YAAc,SAAUh2D,GAExCA,EAAKm0D,aAGE3lE,MAAKiC,MAAMuP,EAAKnR,GAGvB,IAAI+I,GAAQpJ,KAAK4hD,UAAUr6C,QAAQiK,EAAKnR,GAC3B,KAAT+I,GAAapJ,KAAK4hD,UAAUv4C,OAAOD,EAAO,GAG9CoI,EAAKjG,QAAUiG,EAAKjG,OAAOo2B,OAAOnwB,IASpCzO,EAAQkQ,UAAU80D,qBAAuB,SAAUt+D,GAGjD,IAAK,GAFDu+D,MAEKvhE,EAAI,EAAGA,EAAIgD,EAAMnD,OAAQG,IAC5BgD,EAAMhD,YAAcnE,IACtB0lE,EAASxgE,KAAKiC,EAAMhD,GAGxB,OAAOuhE,IAaTjlE,EAAQkQ,UAAU6lD,SAAW,SAAUhuD,GAErC9K,KAAK0kE,YAAYlzD,KAAOxR,KAAKijD,eAAen4C,GAC5C9K,KAAK0kE,YAAYuD,aAAen9D,EAAMI,OAAO+8D,eAAgB,EAC7DjoE,KAAK0kE,YAAYwD,cAAgBp9D,EAAMI,OAAOg9D,gBAAiB,EAC/DloE,KAAK0kE,YAAYyD,UAAY,MAS/BplE,EAAQkQ,UAAUm1D,eAAiB,SAAUzkB,GAC3C,IAAK,GAAIl9C,GAAI,EAAGA,EAAIzG,KAAKwkE,SAASl+D,OAAQG,IACxC,GAAIk9C,GAAW3jD,KAAKwkE,SAAS/9D,GAAI,MAAOA,IAS5C1D,EAAQkQ,UAAUylD,aAAe,SAAU5tD,GACzC,GAEIjE,GAFA2K,EAAOxR,KAAK0kE,YAAYlzD,MAAQ,KAChCwuB,EAAKhgC,IAGT,IAAIwR,IAASA,EAAK+1D,UAAYvnE,KAAK6D,QAAQq/D,sBAAuB,CAEhE,IAAKljE,KAAK6D,QAAQs/D,SAASC,aAAepjE,KAAK6D,QAAQs/D,SAASE,cAAgB7xD,EAAK2xD,SACnF,MAIF,IAAI3xD,EAAK2xD,YAAa,EACpB,MAGF,IAAI8E,GAAejoE,KAAK0kE,YAAYuD,aAChCC,EAAgBloE,KAAK0kE,YAAYwD,aAErC,IAAID,EACFphE,GACE2K,KAAMy2D,EACNI,SAAUv9D,EAAMurC,OAAOzY,EACvB0qC,UAAU,EACVtwD,KAAMhY,KAAKuoE,eAAe/2D,EAAKwG,OAGjChY,KAAK0kE,YAAYyD,WAAathE,OACzB,IAAIqhE,EACTrhE,GACE2K,KAAM02D,EACNG,SAAUv9D,EAAMurC,OAAOzY,EACvB4qC,WAAW,EACXxwD,KAAMhY,KAAKuoE,eAAe/2D,EAAKwG,OAGjChY,KAAK0kE,YAAYyD,WAAathE,OACzB,CACL7G,KAAK0kE,YAAY+D,aAAej3D,CAEhC,IAAIk3D,GAAiB1oE,KAAKooE,eAAe52D,EAAKwG,KAAKkrC,OAE/CylB,EAAc3oE,KAAK6D,QAAQq/D,uBAAyB1xD,EAAK+1D,UAAY/1D,EAAKnR,IAAML,KAAK6hD,cAEzF7hD,MAAK0kE,YAAYyD,UAAYQ,EAAYt7D,IAAI,SAAWhN,GACtD,GAAImR,GAAOwuB,EAAG/9B,MAAM5B,GAChBuoE,EAAa5oC,EAAGooC,eAAe52D,EAAKwG,KAAKkrC,MAC7C,QACE1xC,KAAMA,EACN62D,SAAUv9D,EAAMurC,OAAOzY,EACvBirC,YAAaH,EAAiBE,EAC9B5wD,KAAMhY,KAAKuoE,eAAe/2D,EAAKwG,QAEhCunC,KAAKv/C,OAGV8K,EAAM25C,sBACGzkD,MAAK6D,QAAQs/D,SAASl9C,MAAQnb,EAAM+4C,SAASilB,SAAWh+D,EAAM+4C,SAASklB,UAEhF/oE,KAAKgpE,oBAAoBl+D,IAS7B/H,EAAQkQ,UAAU+1D,oBAAsB,SAAUl+D,GAChD,GAAIw4C,GAAOtjD,KAAK6D,QAAQy/C,MAAQ,KAC5B2lB,EAAOtoE,EAAK6H,gBAAgBxI,KAAK45C,IAAIpP,OACrC5M,EAAI9yB,EAAMurC,OAAOzY,EAAIqrC,EAAO,GAC5Bj+C,EAAOhrB,KAAKo/C,KAAKz+C,KAAKo/C,OAAOniB,GAC7B54B,EAAQhF,KAAKo/C,KAAKz+C,KAAK8+C,WACvB9M,EAAO3yC,KAAKo/C,KAAKz+C,KAAK89C,UACtB7L,EAAQ0Q,EAAOA,EAAKt4B,EAAMhmB,EAAO2tC,GAAQ3nB,EACzC8nB,EAAMF,EAENqP,GACFr6C,KAAM,QACNgrC,MAAOA,EACPE,IAAKA,EACLzU,QAAS,YAGPh+B,EAAKM,EAAKgF,YACds8C,GAASjiD,KAAKugD,UAAU3hB,UAAYv+B,CAEpC,IAAI6iD,GAAQljD,KAAKmjD,gBAAgBr4C,EAC7Bo4C,KACFjB,EAASiB,MAAQA,EAAMS,QAGzB,IAAIulB,GAAU,GAAI5mE,GAAU2/C,EAAUjiD,KAAKo6D,WAAYp6D,KAAK6D,QAC5DqlE,GAAQ7oE,GAAKA,EACb6oE,EAAQlxD,KAAOhY,KAAKuoE,eAAetmB,GACnCjiD,KAAKigC,SAASipC,EAEd,IAAIriE,IACF2K,KAAM03D,EACNV,WAAW,EACXH,SAAUv9D,EAAMurC,OAAOzY,EACvB5lB,KAAMkxD,EAAQlxD,KAEhBhY,MAAK0kE,YAAYyD,WAAathE,GAE9BiE,EAAM25C,mBAQR1hD,EAAQkQ,UAAU0lD,QAAU,SAAU7tD,GACpC,GAAI9K,KAAK0kE,YAAYyD,UAAW,CAC9Br9D,EAAM25C,iBAEN,IAAIzkB,GAAKhgC,KACLsjD,EAAOtjD,KAAK6D,QAAQy/C,MAAQ,KAC5BnlB,EAAUn+B,KAAKo/C,KAAKxF,IAAIl6C,KAAKypE,WAAanpE,KAAKo/C,KAAKC,SAAS12C,KAAK61B,MAClEx5B,EAAQhF,KAAKo/C,KAAKz+C,KAAK8+C,WACvB9M,EAAO3yC,KAAKo/C,KAAKz+C,KAAK89C,UAGtBgqB,EAAezoE,KAAK0kE,YAAY+D,aAChCW,EAAqBppC,EAAGn8B,QAAQs/D,SAASE,YACzCgG,EAAe,IACnB,IAAID,GAAsBX,GACOliE,QAA3BkiE,EAAazwD,KAAKkrC,MAAoB,CAExC,GAAIA,GAAQljB,EAAGmjB,gBAAgBr4C,EAC3Bo4C,KAGFmmB,EAAerpE,KAAKooE,eAAellB,EAAMS,UAM/C3jD,KAAK0kE,YAAYyD,UAAU7+D,QAAQ,SAAWzC,GAC5C,GAAI22D,GAAUx9B,EAAGof,KAAKz+C,KAAKo/C,OAAOj1C,EAAMurC,OAAOzY,EAAIO,GAC/CmrC,EAAUtpC,EAAGof,KAAKz+C,KAAKo/C,OAAOl5C,EAAMwhE,SAAWlqC,GAC/C3W,EAASg2C,EAAU8L,EAEnBrnB,EAAWjiD,KAAKuoE,eAAe1hE,EAAM2K,KAAKwG,KAC9C,IAAInR,EAAM2K,KAAK2xD,YAAa,EAA5B,CAIA,GAAIoG,GAAoBvpC,EAAGn8B,QAAQs/D,SAASC,YAAcv8D,EAAM2K,KAAK2xD,YAAa,CAElF,IAAIoG,EACF,GAAI1iE,EAAMyhE,UAER,GAAsB/hE,QAAlB07C,EAASrP,MAAoB,CAC/B,GAAI42B,GAAe7oE,EAAKgH,QAAQd,EAAMmR,KAAK46B,MAAO,QAC9CA,EAAQ,GAAIvtC,MAAKmkE,EAAa1hE,UAAY0f,EAE9Cy6B,GAASrP,MAAQ0Q,EAAOA,EAAK1Q,EAAO5tC,EAAO2tC,GAAQC,OAEhD,IAAI/rC,EAAM2hE,WAEf,GAAoBjiE,QAAhB07C,EAASnP,IAAkB,CAC7B,GAAI22B,GAAa9oE,EAAKgH,QAAQd,EAAMmR,KAAK86B,IAAK,QAC1CA,EAAM,GAAIztC,MAAKokE,EAAW3hE,UAAY0f,EAE1Cy6B,GAASnP,IAAMwQ,EAAOA,EAAKxQ,EAAK9tC,EAAO2tC,GAAQG,OAIjD,IAAsBvsC,QAAlB07C,EAASrP,MAAoB,CAC/B,GAAI42B,GAAe7oE,EAAKgH,QAAQd,EAAMmR,KAAK46B,MAAO,QAAQ9qC,UACtD8qC,EAAQ,GAAIvtC,MAAKmkE,EAAehiD,EAEpC,IAAoBjhB,QAAhB07C,EAASnP,IAAkB,CAC7B,GAAI22B,GAAa9oE,EAAKgH,QAAQd,EAAMmR,KAAK86B,IAAK,QAC1CrsB,EAAWgjD,EAAW3hE,UAAY0hE,EAAa1hE,SAGnDm6C,GAASrP,MAAQ0Q,EAAOA,EAAK1Q,EAAO5tC,EAAO2tC,GAAQC,EACnDqP,EAASnP,IAAM,GAAIztC,MAAK48C,EAASrP,MAAM9qC,UAAY2e,OAGnDw7B,GAASrP,MAAQ0Q,EAAOA,EAAK1Q,EAAO5tC,EAAO2tC,GAAQC,EAM3D,GAAIw2B,GAAqBppC,EAAGn8B,QAAQs/D,SAASE,aAAex8D,EAAM2K,KAAK2xD,YAAa,CAEpF,IAAIiG,IAAuBviE,EAAMyhE,WAAazhE,EAAM2hE,WAA6B,MAAhBa,GACzC9iE,QAAlB07C,EAASiB,MAAoB,CAC/B,GAAIwmB,GAAYL,EAAexiE,EAAMgiE,WAGrCa,GAAYzkE,KAAKJ,IAAI,EAAG6kE,GACxBA,EAAYzkE,KAAKL,IAAIo7B,EAAGwkC,SAASl+D,OAAS,EAAGojE,GAE7CznB,EAASiB,MAAQljB,EAAGwkC,SAASkF,GAKjCznB,EAAWjiD,KAAKuoE,eAAetmB,GAC/BjiB,EAAGn8B,QAAQ8/D,SAAS1hB,EAAU,SAAWA,GACnCA,GACFp7C,EAAM2K,KAAKiyB,QAAQzjC,KAAKuoE,eAAetmB,EAAU;EAElD1C,KAAKv/C,SACPu/C,KAAKv/C,OAERA,KAAKykE,YAAa,EAClBzkE,KAAKo/C,KAAKE,QAAQzH,KAAK,aAU3B90C,EAAQkQ,UAAU02D,aAAe,SAAUn4D,EAAMmyC,GAC/C,GAAIT,GAAQljD,KAAK0+C,OAAOiF,EACxB,IAAIT,GAASA,EAAMS,SAAWnyC,EAAKwG,KAAKkrC,MAAO,CAC7C,GAAI4kB,GAAWt2D,EAAKjG,MACpBu8D,GAASnmC,OAAOnwB,GAChBs2D,EAAS9mC,QACTkiB,EAAMj9B,IAAIzU,GACV0xC,EAAMliB,QAENxvB,EAAKwG,KAAKkrC,MAAQA,EAAMS,UAS5B5gD,EAAQkQ,UAAU2lD,WAAa,SAAU9tD,GACvC,GAAI9K,KAAK0kE,YAAYyD,UAAW,CAC9Br9D,EAAM25C,iBAEN,IAAIzkB,GAAKhgC,KACL+iD,EAAU/iD,KAAKugD,UAAUlf,aACzB8mC,EAAYnoE,KAAK0kE,YAAYyD,SACjCnoE,MAAK0kE,YAAYyD,UAAY,KAE7BA,EAAU7+D,QAAQ,SAAWzC,GAC3B,GAAIxG,GAAKwG,EAAM2K,KAAKnR,GAChBgiC,EAAiD,MAAxCrC,EAAGugB,UAAUvpB,IAAI32B,EAAI2/B,EAAG+jC,YAErC,IAAK1hC,EAYE,CAEL,GAAI4f,GAAWjiD,KAAKuoE,eAAe1hE,EAAM2K,KAAKwG,KAC9CgoB,GAAGn8B,QAAQ4/D,OAAOxhB,EAAU,SAAUA,GAChCA,GAEFA,EAASc,EAAQnkB,UAAYv+B,EAC7B0iD,EAAQ7iB,OAAO+hB,KAGfp7C,EAAM2K,KAAKiyB,QAAQ58B,EAAMmR,MAEzBgoB,EAAGykC,YAAa,EAChBzkC,EAAGof,KAAKE,QAAQzH,KAAK,kBAvBzB7X,GAAGn8B,QAAQ0/D,MAAM18D,EAAM2K,KAAKwG,KAAM,SAAUiqC,GAC1CjiB,EAAGwnC,YAAY3gE,EAAM2K,MACjBywC,GACFjiB,EAAGugB,UAAUlf,aAAapb,IAAIg8B,GAIhCjiB,EAAGykC,YAAa,EAChBzkC,EAAGof,KAAKE,QAAQzH,KAAK,cAmBxB0H,KAAKv/C,SAIZ+C,EAAQkQ,UAAUoyD,kBAAoB,SAAUv6D,GAC1C9K,KAAK6D,QAAQy/D,cAActiC,QAC7BhhC,KAAK2kE,iBAAiBzhB,MAAQljD,KAAKmjD,gBAAgBr4C,GAE/C9K,KAAK2kE,iBAAiBzhB,QACxBp4C,EAAM25C,kBAENzkD,KAAK2kE,iBAAiBiF,cAAgB5pE,KAAKwgD,WAAWpf,QACpDJ,MAAOhhC,KAAK6D,QAAQk/D,gBAM5BhgE,EAAQkQ,UAAUqyD,aAAe,SAAUx6D,GACzC,GAAI9K,KAAK6D,QAAQy/D,cAActiC,OAAShhC,KAAK2kE,iBAAiBzhB,MAAO,CACnEp4C,EAAM25C,iBAGN,IAAIvB,GAAQljD,KAAKmjD,gBAAgBr4C,EAGjC,IAAIo4C,GAASA,EAAMzkB,QAAUz+B,KAAK2kE,iBAAiBzhB,MAAMzkB,OAAQ,CAC/D,GAAIorC,GAAW3mB,EAAMr6C,IAAM7I,KAAK2kE,iBAAiBzhB,MAAMr6C,IACnDo/B,EAAUn9B,EAAMurC,OAASvrC,EAAMurC,OAAOp1B,EAAInW,EAAMm9B,QAChD6hC,EAAiBnpE,EAAKiI,eAAes6C,EAAMtJ,IAAI6J,YAC/CsmB,EAAqB/pE,KAAK2kE,iBAAiBzhB,MAAMzkB,MACrD,IAAIorC,GAEF,GAA0C5hC,EAAtC6hC,EAAiBC,EACnB,WAEG,CACL,GAAIC,GAAoB9mB,EAAMzkB,MAE9B,IAAIqrC,EAAiBE,EAAoBD,EAAqB9hC,EAC5D,QAKN,GAAIib,GAASA,GAASljD,KAAK2kE,iBAAiBzhB,MAAO,CACjD,GAAI1C,GAAaxgD,KAAKwgD,WAClBypB,EAAczpB,EAAWxpB,IAAIksB,EAAMS,SACnCumB,EAAe1pB,EAAWxpB,IAAIh3B,KAAK2kE,iBAAiBzhB,MAAMS,QAG1DumB,IAAgBD,IAClBjqE,KAAK6D,QAAQ8+D,eAAeuH,EAAcD,EAAajqE,KAAKwgD,YAC5DxgD,KAAKwgD,WAAWtgB,OAAOgqC,GACvBlqE,KAAKwgD,WAAWtgB,OAAO+pC,GAIzB,IAAIE,GAAWnqE,KAAKwgD,WAAWpf,QAC7BJ,MAAOhhC,KAAK6D,QAAQk/D,YAItB,KAAKpiE,EAAK8G,WAAW0iE,EAAUnqE,KAAK2kE,iBAAiBiF,eAQnD,IAPA,GAAIppB,GAAaxgD,KAAKwgD,WAClB4pB,EAAYpqE,KAAK2kE,iBAAiBiF,cAClCS,EAAYrqE,KAAK2kE,iBAAiBzhB,MAAMS,QACxC2mB,EAAYrlE,KAAKL,IAAIwlE,EAAU9jE,OAAQ6jE,EAAS7jE,QAChDikE,EAAS,EACTb,EAAY,EACZc,EAAY,EACAF,EAATC,GAAoB,CAEzB,KAA4BD,EAArBC,EAASb,GAA8CY,EAArBC,EAASC,GAAyBL,EAASI,EAASb,IAAcU,EAAUG,EAASC,IAC5HD,GAIF,IAAIA,EAASb,GAAaY,EACxB,KAKF,IAAIH,EAASI,EAASb,IAAcW,EAK/B,GAAID,EAAUG,EAASC,IAAcH,EAArC,CAOC,GAAII,GAAkBN,EAAS5iE,QAAQ6iE,EAAUG,EAASC,IACtDE,EAAclqB,EAAWxpB,IAAImzC,EAASI,EAASb,IAC/CiB,EAAgBnqB,EAAWxpB,IAAIozC,EAAUG,EAASC,GACtDxqE,MAAK6D,QAAQ8+D,eAAe+H,EAAaC,EAAenqB,GACxDA,EAAWtgB,OAAOwqC,GAClBlqB,EAAWtgB,OAAOyqC,EAElB,IAAIC,GAAgBT,EAASI,EAASb,EACtCS,GAASI,EAASb,GAAaU,EAAUG,EAASC,GAClDL,EAASM,GAAmBG,EAE5BL,QAjBFC,GAAY,MALdd,GAAY,MA8BxB3mE,EAAQkQ,UAAUsyD,gBAAkB,SAAUz6D,GAC5C,GAAI9K,KAAK6D,QAAQy/D,cAActiC,OAAShhC,KAAK2kE,iBAAiBzhB,MAAO,CACnEp4C,EAAM25C,iBAGN,IAAIzkB,GAAKhgC,KACLK,EAAK2/B,EAAG2kC,iBAAiBzhB,MAAMS,QAC/BZ,EAAU/iB,EAAGwgB,WAAWnf,aACxBomC,EAAY9mE,EAAKgG,UAAWo8C,EAAQ/rB,IAAI32B,GAC5C2/B,GAAGn8B,QAAQggE,YAAY4D,EAAW,SAAUA,GAC1C,GAAIA,EAEFA,EAAU1kB,EAAQnkB,UAAYv+B,EAC9B0iD,EAAQ7iB,OAAOunC,OACV,CAGL,GAAI0C,GAAWpnB,EAAQ3hB,QACrBJ,MAAOhB,EAAGn8B,QAAQk/D,YAIpB,KAAKpiE,EAAK8G,WAAW0iE,EAAUnqC,EAAG2kC,iBAAiBiF,eAIjD,IAHA,GAAIQ,GAAYpqC,EAAG2kC,iBAAiBiF,cAChCU,EAAYrlE,KAAKL,IAAIwlE,EAAU9jE,OAAQ6jE,EAAS7jE,QAChDikE,EAAS,EACGD,EAATC,GAAoB,CAEzB,KAAgBD,EAATC,GAAsBJ,EAASI,IAAWH,EAAUG,IACzDA,GAIF,IAAIA,GAAUD,EACZ,KAKF,IAAIG,GAAkBN,EAAS5iE,QAAQ6iE,EAAUG,IAC7CG,EAAc3nB,EAAQ/rB,IAAImzC,EAASI,IACnCI,EAAgB5nB,EAAQ/rB,IAAIozC,EAAUG,GAC1CvqC,GAAGn8B,QAAQ8+D,eAAe+H,EAAaC,EAAe5nB,GACtDvC,WAAWtgB,OAAOwqC,GAClBlqB,WAAWtgB,OAAOyqC,EAElB,IAAIC,GAAgBT,EAASI,EAC7BJ,GAASI,GAAUH,EAAUG,GAC7BJ,EAASM,GAAmBG,EAE5BL,QAMRvqC,EAAGof,KAAKE,QAAQzH,KAAK,gBAAkB8L,QAAStjD,MASpD0C,EAAQkQ,UAAUgyD,cAAgB,SAAUn6D,GAC1C,GAAK9K,KAAK6D,QAAQm/D,WAAlB,CAEA,GAAI8F,GAAUh+D,EAAM+4C,WAAa/4C,EAAM+4C,SAASilB,SAAWh+D,EAAM+4C,SAASklB,SACtE8B,EAAW//D,EAAM+4C,UAAY/4C,EAAM+4C,SAASgnB,QAChD,IAAI/B,GAAW+B,EAEb,WADA7qE,MAAKklE,mBAAmBp6D,EAI1B,IAAIggE,GAAe9qE,KAAK6hD,eAEpBrwC,EAAOxR,KAAKijD,eAAen4C,GAC3B82C,EAAYpwC,GAAQA,EAAKnR,MAC7BL,MAAK8hD,aAAaF,EAElB,IAAImpB,GAAe/qE,KAAK6hD,gBAIpBkpB,EAAazkE,OAAS,GAAKwkE,EAAaxkE,OAAS,IACnDtG,KAAKo/C,KAAKE,QAAQzH,KAAK,UACrB51C,MAAO8oE,EACPjgE,MAAOA,MAUb/H,EAAQkQ,UAAUkyD,WAAa,SAAUr6D,GACvC,GAAK9K,KAAK6D,QAAQm/D,YACbhjE,KAAK6D,QAAQs/D,SAASl9C,IAA3B,CAEA,GAAI+Z,GAAKhgC,KACLsjD,EAAOtjD,KAAK6D,QAAQy/C,MAAQ,KAC5B9xC,EAAOxR,KAAKijD,eAAen4C,EAE/B,IAAI0G,EAAM,CAIR,GAAIywC,GAAWjiB,EAAGugB,UAAUvpB,IAAIxlB,EAAKnR,GACrCL,MAAK6D,QAAQ2/D,SAASvhB,EAAU,SAAUA,GACpCA,GACFjiB,EAAGugB,UAAUlf,aAAanB,OAAO+hB,SAGhC,CAEL,GAAIgnB,GAAOtoE,EAAK6H,gBAAgBxI,KAAK45C,IAAIpP,OACrC5M,EAAI9yB,EAAMurC,OAAOzY,EAAIqrC,EACrBr2B,EAAQ5yC,KAAKo/C,KAAKz+C,KAAKo/C,OAAOniB,GAC9B54B,EAAQhF,KAAKo/C,KAAKz+C,KAAK8+C,WACvB9M,EAAO3yC,KAAKo/C,KAAKz+C,KAAK89C,UAEtBusB,GACFp4B,MAAO0Q,EAAOA,EAAK1Q,EAAO5tC,EAAO2tC,GAAQC,EACzCvU,QAAS,WAIX,IAA0B,UAAtBr+B,KAAK6D,QAAQ+D,KAAkB,CACjC,GAAIkrC,GAAM9yC,KAAKo/C,KAAKz+C,KAAKo/C,OAAOniB,EAAI59B,KAAK6G,MAAM23B,MAAQ,EACvDwsC,GAAYl4B,IAAMwQ,EAAOA,EAAKxQ,EAAK9tC,EAAO2tC,GAAQG,EAGpDk4B,EAAYhrE,KAAKugD,UAAU3hB,UAAYj+B,EAAKgF,YAE5C,IAAIu9C,GAAQljD,KAAKmjD,gBAAgBr4C,EAC7Bo4C,KACF8nB,EAAY9nB,MAAQA,EAAMS,SAI5BqnB,EAAchrE,KAAKuoE,eAAeyC,GAClChrE,KAAK6D,QAAQ0/D,MAAMyH,EAAa,SAAUx5D,GACpCA,GACFwuB,EAAGugB,UAAUlf,aAAapb,IAAIzU,QAYtCzO,EAAQkQ,UAAUiyD,mBAAqB,SAAUp6D,GAC/C,GAAK9K,KAAK6D,QAAQm/D,WAAlB,CAEA,GAAIxxD,GAAOxR,KAAKijD,eAAen4C,EAE/B,IAAI0G,EAAM,CAGR,GAAIowC,GAAY5hD,KAAK6D,QAAQo/D,YAAcjjE,KAAK6hD,kBAG5CgpB,EAAW//D,EAAM+4C,UAAY/4C,EAAM+4C,SAASgnB,WAAY,CAE5D,IAAIA,GAAY7qE,KAAK6D,QAAQo/D,YAAa,CAExC,GAAIgI,GAAYjrE,KAAKugD,UAAUvpB,IAAIxlB,EAAKnR,IAAI6iD,MAGxCgoB,EAAoB3kE,MACpBvG,MAAK6D,QAAQsnE,qBACXvpB,EAAUt7C,OAAS,IACrB4kE,EAAoBlrE,KAAKugD,UAAUvpB,IAAI4qB,EAAU,IAAIsB,OAKpDljD,KAAK6D,QAAQsnE,qBAA4C5kE,QAArB2kE,GAAkCA,GAAqBD,GAC9FrpB,EAAUp6C,KAAKgK,EAAKnR,GAEtB,IAAI8/C,GAAQp9C,EAAQqoE,cAAcprE,KAAKugD,UAAUvpB,IAAI4qB,EAAW5hD,KAAK+jE,aAErE,KAAK/jE,KAAK6D,QAAQsnE,qBAAuBD,GAAqBD,EAAW,CAEvErpB,IACA,KAAK,GAAIvhD,KAAML,MAAKiC,MAClB,GAAIjC,KAAKiC,MAAM+D,eAAe3F,GAAK,CACjC,GAAIgrE,GAAQrrE,KAAKiC,MAAM5B,GACnBuyC,EAAQy4B,EAAMrzD,KAAK46B,MACnBE,EAAyBvsC,SAAnB8kE,EAAMrzD,KAAK86B,IAAoBu4B,EAAMrzD,KAAK86B,IAAMF,IAEtDA,GAASuN,EAAMv7C,KAAOkuC,GAAOqN,EAAMt7C,MAAS7E,KAAK6D,QAAQsnE,qBAAuBD,GAAqBlrE,KAAKugD,UAAUvpB,IAAIq0C,EAAMhrE,IAAI6iD,OAAYmoB,YAAiBlpE,IACjKy/C,EAAUp6C,KAAK6jE,EAAMhrE,UAKxB,CAEH,GAAI+I,GAAQw4C,EAAUr6C,QAAQiK,EAAKnR,GACtB,KAAT+I,EAEFw4C,EAAUp6C,KAAKgK,EAAKnR,IAGpBuhD,EAAUv4C,OAAOD,EAAO,GAI9BpJ,KAAK8hD,aAAaF,GAElB5hD,KAAKo/C,KAAKE,QAAQzH,KAAK,UACrB51C,MAAOjC,KAAK6hD,eACZ/2C,MAAOA,OAWb/H,EAAQqoE,cAAgB,SAAU7qB,GAChC,GAAI17C,GAAM,KACND,EAAM,IAkBV,OAhBA27C,GAAUj3C,QAAQ,SAAU0O,IACf,MAAPpT,GAAeoT,EAAK46B,MAAQhuC,KAC9BA,EAAMoT,EAAK46B,OAGGrsC,QAAZyR,EAAK86B,KACI,MAAPjuC,GAAemT,EAAK86B,IAAMjuC,KAC5BA,EAAMmT,EAAK86B,MAGF,MAAPjuC,GAAemT,EAAK46B,MAAQ/tC,KAC9BA,EAAMmT,EAAK46B,UAMfhuC,IAAKA,EACLC,IAAKA,IAUT9B,EAAQkQ,UAAUgwC,eAAiB,SAAUn4C,GAE3C,IADA,GAAII,GAASJ,EAAMI,OACZA,GAAQ,CACb,GAAIA,EAAOlF,eAAe,iBACxB,MAAOkF,GAAO,gBAEhBA,GAASA,EAAOG,WAGlB,MAAO,OASTtI,EAAQkQ,UAAUkwC,gBAAkB,SAAUr4C,GAE5C,IAAK,GADDm9B,GAAUn9B,EAAMurC,OAASvrC,EAAMurC,OAAOp1B,EAAInW,EAAMm9B,QAC3CxhC,EAAI,EAAGA,EAAIzG,KAAKwkE,SAASl+D,OAAQG,IAAK,CAC7C,GAAIk9C,GAAU3jD,KAAKwkE,SAAS/9D,GACxBy8C,EAAQljD,KAAK0+C,OAAOiF,GACpBF,EAAaP,EAAMtJ,IAAI6J,WACvB56C,EAAMlI,EAAKiI,eAAe66C,EAC9B,IAAIxb,EAAUp/B,GAAOo/B,EAAUp/B,EAAM46C,EAAWtJ,aAC9C,MAAO+I,EAGT,IAAsC,QAAlCljD,KAAK6D,QAAQk7C,YAAYvtC,MAC3B,GAAI/K,IAAMzG,KAAKwkE,SAASl+D,OAAS,GAAK2hC,EAAUp/B,EAC9C,MAAOq6C,OAGT,IAAU,IAANz8C,GAAWwhC,EAAUp/B,EAAM46C,EAAWj8B,OACxC,MAAO07B,GAKb,MAAO,OASTngD,EAAQuoE,kBAAoB,SAAUxgE,GAEpC,IADA,GAAII,GAASJ,EAAMI,OACZA,GAAQ,CACb,GAAIA,EAAOlF,eAAe,oBACxB,MAAOkF,GAAO,mBAEhBA,GAASA,EAAOG,WAGlB,MAAO,OAYTtI,EAAQkQ,UAAUs1D,eAAiB,SAAUtmB,EAAUr6C,GACrD,GAAIugB,GAAQxnB,EAAKgG,UAAWs7C,EAc5B,OAZKr6C,KAEHA,EAAO5H,KAAKugD,UAAUlf,aAAa1C,SAAS/2B,MAG3BrB,QAAf4hB,EAAMyqB,QACRzqB,EAAMyqB,MAAQjyC,EAAKgH,QAAQwgB,EAAMyqB,MAAOhrC,GAAQA,EAAKgrC,OAAS,SAE/CrsC,QAAb4hB,EAAM2qB,MACR3qB,EAAM2qB,IAAMnyC,EAAKgH,QAAQwgB,EAAM2qB,IAAKlrC,GAAQA,EAAKkrC,KAAO,SAGnD3qB,GAGTtoB,EAAOD,QAAUmD,GAIb,SAASlD,EAAQD,EAASM,GAkC9B,QAAS6B,GAAS6wC,EAAOE,EAAKy4B,EAAa/rB,GACzCx/C,KAAK+D,OAASA,EAGd/D,KAAKw9D,QAAUx9D,KAAK+D,SACpB/D,KAAK09C,OAAS19C,KAAK+D,SACnB/D,KAAK29C,KAAO39C,KAAK+D,SAEjB/D,KAAKwrE,WAAY,EACjBxrE,KAAKgF,MAAQ,MACbhF,KAAK2yC,KAAO,EAGZ3yC,KAAK+9C,SAASnL,EAAOE,EAAKy4B,GAG1BvrE,KAAK29D,aAAc,EACnB39D,KAAK09D,eAAgB,EACrB19D,KAAKy9D,cAAe,EAChB32D,MAAMC,QAAQy4C,GAChBx/C,KAAKw/C,YAAcA,EACKj5C,QAAfi5C,EACTx/C,KAAKw/C,aAAeA,GAEpBx/C,KAAKw/C,eAGPx/C,KAAKqT,OAAStR,EAAS0pE,OAzDzB,GAAI1nE,GAAS7D,EAAoB,GAC7B0B,EAAW1B,EAAoB,IAC/BS,EAAOT,EAAoB,EA2D/B6B,GAAS0pE,QACPC,aACE5lD,YAAa,MACbD,OAAQ,IACRD,OAAQ,QACRb,KAAM,QACN3C,QAAS,QACTuD,IAAK,IACLlJ,MAAO,MACPD,KAAM,QAERmvD,aACE7lD,YAAa,WACbD,OAAQ,eACRD,OAAQ,aACRb,KAAM,aACN3C,QAAS,YACTuD,IAAK,YACLlJ,MAAO,OACPD,KAAM,KASVza,EAASkR,UAAU24D,UAAY,SAAU7nE,GACvC/D,KAAK+D,OAASA,EAGd/D,KAAKw9D,QAAUx9D,KAAK+D,OAAO/D,KAAKw9D,SAChCx9D,KAAK09C,OAAS19C,KAAK+D,OAAO/D,KAAK09C,QAC/B19C,KAAK29C,KAAO39C,KAAK+D,OAAO/D,KAAK29C,OAS/B57C,EAASkR,UAAU44D,UAAY,SAAUx4D,GACvC,GAAIkZ,GAAgB5rB,EAAK0G,cAAetF,EAAS0pE,OACjDzrE,MAAKqT,OAAS1S,EAAK0G,WAAWklB,EAAelZ,IAa/CtR,EAASkR,UAAU8qC,SAAW,SAAUnL,EAAOE,EAAKy4B,GAClD,KAAM34B,YAAiBvtC,OAAWytC,YAAeztC,OAC/C,KAAM,+CAGRrF,MAAK09C,OAAkBn3C,QAATqsC,EAAqB5yC,KAAK+D,OAAO6uC,EAAM9qC,WAAa,GAAIzC,MACtErF,KAAK29C,KAAcp3C,QAAPusC,EAAmB9yC,KAAK+D,OAAO+uC,EAAIhrC,WAAa,GAAIzC,MAE5DrF,KAAKwrE,WACPxrE,KAAK8rE,eAAeP,IAOxBxpE,EAASkR,UAAU2/B,MAAQ,WACzB5yC,KAAKw9D,QAAUx9D,KAAK09C,OAAOv1B,QAC3BnoB,KAAK+rE,gBAOPhqE,EAASkR,UAAU84D,aAAe,WAIhC,OAAQ/rE,KAAKgF,OACX,IAAK,OACHhF,KAAKw9D,QAAQhhD,KAAKxc,KAAK2yC,KAAO1tC,KAAKuK,MAAMxP,KAAKw9D,QAAQhhD,OAASxc,KAAK2yC,OACpE3yC,KAAKw9D,QAAQ/gD,MAAM,EACrB,KAAK,QACHzc,KAAKw9D,QAAQ7/C,KAAK,EACpB,KAAK,MACL,IAAK,UACH3d,KAAKw9D,QAAQz2C,MAAM,EACrB,KAAK,OACH/mB,KAAKw9D,QAAQx2C,QAAQ,EACvB,KAAK,SACHhnB,KAAKw9D,QAAQv2C,QAAQ,EACvB,KAAK,SACHjnB,KAAKw9D,QAAQt2C,aAAa,GAI9B,GAAiB,GAAblnB,KAAK2yC,KAEP,OAAQ3yC,KAAKgF,OACX,IAAK,cACHhF,KAAKw9D,QAAQr0C,SAASnpB,KAAKw9D,QAAQt2C,eAAiBlnB,KAAK2yC,KAAM,eAAgB,MACjF,KAAK,SACH3yC,KAAKw9D,QAAQr0C,SAASnpB,KAAKw9D,QAAQv2C,UAAYjnB,KAAK2yC,KAAM,UAAW,MACvE,KAAK,SACH3yC,KAAKw9D,QAAQr0C,SAASnpB,KAAKw9D,QAAQx2C,UAAYhnB,KAAK2yC,KAAM,UAAW,MACvE,KAAK,OACH3yC,KAAKw9D,QAAQr0C,SAASnpB,KAAKw9D,QAAQz2C,QAAU/mB,KAAK2yC,KAAM,QAAS,MACnE,KAAK,UACL,IAAK,MACH3yC,KAAKw9D,QAAQr0C,UAAUnpB,KAAKw9D,QAAQ7/C,OAAS,GAAK3d,KAAK2yC,KAAM,MAAO,MACtE,KAAK,QACH3yC,KAAKw9D,QAAQr0C,SAASnpB,KAAKw9D,QAAQ/gD,QAAUzc,KAAK2yC,KAAM,QAAS,MACnE,KAAK,OACH3yC,KAAKw9D,QAAQr0C,SAASnpB,KAAKw9D,QAAQhhD,OAASxc,KAAK2yC,KAAM,UAW/D5wC,EAASkR,UAAU+4D,QAAU,WAC3B,MAAOhsE,MAAKw9D,QAAQ11D,WAAa9H,KAAK29C,KAAK71C,WAM7C/F,EAASkR,UAAUqE,KAAO,WACxB,GAAI8kC,GAAOp8C,KAAKw9D,QAAQ11D,SAIxB,IAAI9H,KAAKw9D,QAAQ/gD,QAAU,EACzB,OAAQzc,KAAKgF,OACX,IAAK,cACHhF,KAAKw9D,QAAQv3C,IAAIjmB,KAAK2yC,KAAM,cAAe,MAC7C,KAAK,SACH3yC,KAAKw9D,QAAQv3C,IAAIjmB,KAAK2yC,KAAM,SAAU,MACxC,KAAK,SACH3yC,KAAKw9D,QAAQv3C,IAAIjmB,KAAK2yC,KAAM,SAAU,MACxC,KAAK,OACH3yC,KAAKw9D,QAAQv3C,IAAIjmB,KAAK2yC,KAAM,QAG5B3yC,KAAKw9D,QAAQr0C,SAASnpB,KAAKw9D,QAAQz2C,QAAU/mB,KAAK2yC,KAAM,OACxD,MACF,KAAK,UACL,IAAK,MACH3yC,KAAKw9D,QAAQv3C,IAAIjmB,KAAK2yC,KAAM,MAAO,MACrC,KAAK,QACH3yC,KAAKw9D,QAAQv3C,IAAIjmB,KAAK2yC,KAAM,QAAS,MACvC,KAAK,OACH3yC,KAAKw9D,QAAQv3C,IAAIjmB,KAAK2yC,KAAM,YAKhC,QAAQ3yC,KAAKgF,OACX,IAAK,cACHhF,KAAKw9D,QAAQv3C,IAAIjmB,KAAK2yC,KAAM,cAAe,MAC7C,KAAK,SACH3yC,KAAKw9D,QAAQv3C,IAAIjmB,KAAK2yC,KAAM,SAAU,MACxC,KAAK,SACH3yC,KAAKw9D,QAAQv3C,IAAIjmB,KAAK2yC,KAAM,SAAU,MACxC,KAAK,OACH3yC,KAAKw9D,QAAQv3C,IAAIjmB,KAAK2yC,KAAM,OAAQ,MACtC,KAAK,UACL,IAAK,MACH3yC,KAAKw9D,QAAQv3C,IAAIjmB,KAAK2yC,KAAM,MAAO,MACrC,KAAK,QACH3yC,KAAKw9D,QAAQv3C,IAAIjmB,KAAK2yC,KAAM,QAAS,MACvC,KAAK,OACH3yC,KAAKw9D,QAAQv3C,IAAIjmB,KAAK2yC,KAAM,QAMlC,GAAiB,GAAb3yC,KAAK2yC,KAEP,OAAQ3yC,KAAKgF,OACX,IAAK,cACChF,KAAKw9D,QAAQt2C,eAAiBlnB,KAAK2yC,MAAM3yC,KAAKw9D,QAAQt2C,aAAa,EAAG,MAC5E,KAAK,SACClnB,KAAKw9D,QAAQv2C,UAAYjnB,KAAK2yC,MAAM3yC,KAAKw9D,QAAQv2C,QAAQ,EAAG,MAClE,KAAK,SACCjnB,KAAKw9D,QAAQx2C,UAAYhnB,KAAK2yC,MAAM3yC,KAAKw9D,QAAQx2C,QAAQ,EAAG,MAClE,KAAK,OACChnB,KAAKw9D,QAAQz2C,QAAU/mB,KAAK2yC,MAAM3yC,KAAKw9D,QAAQz2C,MAAM,EAAG,MAC9D,KAAK,UACL,IAAK,MACC/mB,KAAKw9D,QAAQ7/C,OAAS3d,KAAK2yC,KAAO,GAAG3yC,KAAKw9D,QAAQ7/C,KAAK,EAAG,MAChE,KAAK,QACC3d,KAAKw9D,QAAQ/gD,QAAUzc,KAAK2yC,MAAM3yC,KAAKw9D,QAAQ/gD,MAAM,EAAG,MAC9D,KAAK,QAQLzc,KAAKw9D,QAAQ11D,WAAas0C,IAC5Bp8C,KAAKw9D,QAAUx9D,KAAK29C,KAAKx1B,SAG3BvmB,EAASu7D,oBAAoBn9D,KAAK+D,OAAQ/D,KAAMo8C,IAOlDr6C,EAASkR,UAAU4/B,WAAa,WAC9B,MAAO7yC,MAAKw9D,SAedz7D,EAASkR,UAAUg5D,SAAW,SAAUtsC,GAClCA,GAAiC,gBAAhBA,GAAO36B,QAC1BhF,KAAKgF,MAAQ26B,EAAO36B,MACpBhF,KAAK2yC,KAAOhT,EAAOgT,KAAO,EAAIhT,EAAOgT,KAAO,EAC5C3yC,KAAKwrE,WAAY,IAQrBzpE,EAASkR,UAAUi5D,aAAe,SAAUzjB,GAC1CzoD,KAAKwrE,UAAY/iB,GAOnB1mD,EAASkR,UAAU64D,eAAiB,SAAUP,GAC5C,GAAmBhlE,QAAfglE,EAAJ,CAMA,GAAIY,GAAW,QACXC,EAAY,OACZC,EAAU,MACVC,EAAW,KACXC,EAAa,IACbC,EAAa,IACbC,EAAkB,CAGP,KAAXN,EAAkBZ,IACpBvrE,KAAKgF,MAAQ,OAAOhF,KAAK2yC,KAAO,KAEnB,IAAXw5B,EAAiBZ,IACnBvrE,KAAKgF,MAAQ,OAAOhF,KAAK2yC,KAAO,KAEnB,IAAXw5B,EAAiBZ,IACnBvrE,KAAKgF,MAAQ,OAAOhF,KAAK2yC,KAAO,KAEnB,GAAXw5B,EAAgBZ,IAClBvrE,KAAKgF,MAAQ,OAAOhF,KAAK2yC,KAAO,IAEnB,GAAXw5B,EAAgBZ,IAClBvrE,KAAKgF,MAAQ,OAAOhF,KAAK2yC,KAAO,IAEnB,EAAXw5B,EAAeZ,IACjBvrE,KAAKgF,MAAQ,OAAOhF,KAAK2yC,KAAO,GAE9Bw5B,EAAWZ,IACbvrE,KAAKgF,MAAQ,OAAOhF,KAAK2yC,KAAO,GAElB,EAAZy5B,EAAgBb,IAClBvrE,KAAKgF,MAAQ,QAAQhF,KAAK2yC,KAAO,GAE/By5B,EAAYb,IACdvrE,KAAKgF,MAAQ,QAAQhF,KAAK2yC,KAAO,GAErB,EAAV05B,EAAcd,IAChBvrE,KAAKgF,MAAQ,MAAMhF,KAAK2yC,KAAO,GAEnB,EAAV05B,EAAcd,IAChBvrE,KAAKgF,MAAQ,MAAMhF,KAAK2yC,KAAO,GAE7B05B,EAAUd,IACZvrE,KAAKgF,MAAQ,MAAMhF,KAAK2yC,KAAO,GAE7B05B,EAAU,EAAId,IAChBvrE,KAAKgF,MAAQ,UAAUhF,KAAK2yC,KAAO,GAEtB,EAAX25B,EAAef,IACjBvrE,KAAKgF,MAAQ,OAAOhF,KAAK2yC,KAAO,GAE9B25B,EAAWf,IACbvrE,KAAKgF,MAAQ,OAAOhF,KAAK2yC,KAAO,GAEjB,GAAb45B,EAAkBhB,IACpBvrE,KAAKgF,MAAQ,SAAShF,KAAK2yC,KAAO,IAEnB,GAAb45B,EAAkBhB,IACpBvrE,KAAKgF,MAAQ,SAAShF,KAAK2yC,KAAO,IAEnB,EAAb45B,EAAiBhB,IACnBvrE,KAAKgF,MAAQ,SAAShF,KAAK2yC,KAAO,GAEhC45B,EAAahB,IACfvrE,KAAKgF,MAAQ,SAAShF,KAAK2yC,KAAO,GAEnB,GAAb65B,EAAkBjB,IACpBvrE,KAAKgF,MAAQ,SAAShF,KAAK2yC,KAAO,IAEnB,GAAb65B,EAAkBjB,IACpBvrE,KAAKgF,MAAQ,SAAShF,KAAK2yC,KAAO,IAEnB,EAAb65B,EAAiBjB,IACnBvrE,KAAKgF,MAAQ,SAAShF,KAAK2yC,KAAO,GAEhC65B,EAAajB,IACfvrE,KAAKgF,MAAQ,SAAShF,KAAK2yC,KAAO,GAEd,IAAlB85B,EAAwBlB,IAC1BvrE,KAAKgF,MAAQ,cAAchF,KAAK2yC,KAAO,KAEnB,IAAlB85B,EAAwBlB,IAC1BvrE,KAAKgF,MAAQ,cAAchF,KAAK2yC,KAAO,KAEnB,GAAlB85B,EAAuBlB,IACzBvrE,KAAKgF,MAAQ,cAAchF,KAAK2yC,KAAO,IAEnB,GAAlB85B,EAAuBlB,IACzBvrE,KAAKgF,MAAQ,cAAchF,KAAK2yC,KAAO,IAEnB,EAAlB85B,EAAsBlB,IACxBvrE,KAAKgF,MAAQ,cAAchF,KAAK2yC,KAAO,GAErC85B,EAAkBlB,IACpBvrE,KAAKgF,MAAQ,cAAchF,KAAK2yC,KAAO,KAc3C5wC,EAASuhD,KAAO,SAAU3lC,EAAM3Y,EAAO2tC,GACrC,GAAIxqB,GAAQpkB,EAAO4Z,EAEnB,IAAa,QAAT3Y,EAAiB,CACnB,GAAIwX,GAAO2L,EAAM3L,OAASvX,KAAKsjB,MAAMJ,EAAM1L,QAAU,GACrD0L,GAAM3L,KAAKvX,KAAKsjB,MAAM/L,EAAOm2B,GAAQA,GACrCxqB,EAAM1L,MAAM,GACZ0L,EAAMxK,KAAK,GACXwK,EAAMpB,MAAM,GACZoB,EAAMnB,QAAQ,GACdmB,EAAMlB,QAAQ,GACdkB,EAAMjB,aAAa,OACd,IAAa,SAATliB,EACLmjB,EAAMxK,OAAS,IACjBwK,EAAMxK,KAAK,GACXwK,EAAMlC,IAAI,EAAG,UAGXkC,EAAMxK,KAAK,GAGfwK,EAAMpB,MAAM,GACZoB,EAAMnB,QAAQ,GACdmB,EAAMlB,QAAQ,GACdkB,EAAMjB,aAAa,OACd,IAAa,OAATliB,EAAgB,CAEzB,OAAQ2tC,GACN,IAAK,GACL,IAAK,GACHxqB,EAAMpB,MAAuC,GAAjC9hB,KAAKsjB,MAAMJ,EAAMpB,QAAU,IAAU,MACnD,SACEoB,EAAMpB,MAAuC,GAAjC9hB,KAAKsjB,MAAMJ,EAAMpB,QAAU,KAE3CoB,EAAMnB,QAAQ,GACdmB,EAAMlB,QAAQ,GACdkB,EAAMjB,aAAa,OACd,IAAa,WAATliB,EAAoB,CAE7B,OAAQ2tC,GACN,IAAK,GACL,IAAK,GACHxqB,EAAMpB,MAAuC,GAAjC9hB,KAAKsjB,MAAMJ,EAAMpB,QAAU,IAAU,MACnD,SACEoB,EAAMpB,MAAsC,EAAhC9hB,KAAKsjB,MAAMJ,EAAMpB,QAAU,IAE3CoB,EAAMnB,QAAQ,GACdmB,EAAMlB,QAAQ,GACdkB,EAAMjB,aAAa,OACd,IAAa,QAATliB,EAAiB,CAC1B,OAAQ2tC,GACN,IAAK,GACHxqB,EAAMnB,QAA2C,GAAnC/hB,KAAKsjB,MAAMJ,EAAMnB,UAAY,IAAU,MACvD,SACEmB,EAAMnB,QAA2C,GAAnC/hB,KAAKsjB,MAAMJ,EAAMnB,UAAY,KAE/CmB,EAAMlB,QAAQ,GACdkB,EAAMjB,aAAa,OACd,IAAa,UAATliB,EAAmB,CAE5B,OAAQ2tC,GACN,IAAK,IACL,IAAK,IACHxqB,EAAMnB,QAA0C,EAAlC/hB,KAAKsjB,MAAMJ,EAAMnB,UAAY,IAC3CmB,EAAMlB,QAAQ,EACd,MACF,KAAK,GACHkB,EAAMlB,QAA2C,GAAnChiB,KAAKsjB,MAAMJ,EAAMlB,UAAY,IAAU,MACvD,SACEkB,EAAMlB,QAA2C,GAAnChiB,KAAKsjB,MAAMJ,EAAMlB,UAAY,KAE/CkB,EAAMjB,aAAa,OACd,IAAa,UAATliB,EAET,OAAQ2tC,GACN,IAAK,IACL,IAAK,IACHxqB,EAAMlB,QAA0C,EAAlChiB,KAAKsjB,MAAMJ,EAAMlB,UAAY,IAC3CkB,EAAMjB,aAAa,EACnB,MACF,KAAK,GACHiB,EAAMjB,aAAuD,IAA1CjiB,KAAKsjB,MAAMJ,EAAMjB,eAAiB,KAAc,MACrE,SACEiB,EAAMjB,aAAsD,IAAzCjiB,KAAKsjB,MAAMJ,EAAMjB,eAAiB,UAEpD,IAAa,eAATliB,EAAwB,CACjC,GAAI44C,GAAQjL,EAAO,EAAIA,EAAO,EAAI,CAClCxqB,GAAMjB,aAAajiB,KAAKsjB,MAAMJ,EAAMjB,eAAiB02B,GAASA,GAGhE,MAAOz1B,IAQTpmB,EAASkR,UAAUy5D,QAAU,WAC3B,GAAyB,GAArB1sE,KAAKy9D,aAEP,OADAz9D,KAAKy9D,cAAe,EACZz9D,KAAKgF,OACX,IAAK,OACL,IAAK,QACL,IAAK,UACL,IAAK,MACL,IAAK,OACL,IAAK,SACL,IAAK,SACL,IAAK,cACH,OAAO,CACT,SACE,OAAO,MAEN,IAA0B,GAAtBhF,KAAK09D,cAEd,OADA19D,KAAK09D,eAAgB,EACb19D,KAAKgF,OACX,IAAK,UACL,IAAK,MACL,IAAK,OACL,IAAK,SACL,IAAK,SACL,IAAK,cACH,OAAO,CACT,SACE,OAAO,MAEN,IAAwB,GAApBhF,KAAK29D,YAEd,OADA39D,KAAK29D,aAAc,EACX39D,KAAKgF,OACX,IAAK,cACL,IAAK,SACL,IAAK,SACL,IAAK,OACH,OAAO,CACT,SACE,OAAO,EAIb,GAAI2Y,GAAO3d,KAAK+D,OAAO/D,KAAKw9D,QAC5B,QAAQx9D,KAAKgF,OACX,IAAK,cACH,MAA8B,IAAvB2Y,EAAKuJ,cACd,KAAK,SACH,MAAyB,IAAlBvJ,EAAKsJ,SACd,KAAK,SACH,MAAuB,IAAhBtJ,EAAKoJ,SAAkC,GAAlBpJ,EAAKqJ,SACnC,KAAK,OACH,MAAuB,IAAhBrJ,EAAKoJ,OACd,KAAK,UACL,IAAK,MACH,MAAsB,IAAfpJ,EAAKA,MACd,KAAK,QACH,MAAuB,IAAhBA,EAAKlB,OACd,KAAK,OACH,OAAO,CACT,SACE,OAAO,IAUb1a,EAASkR,UAAU05D,cAAgB,SAAUhvD,GAC/BpX,QAARoX,IACFA,EAAO3d,KAAKw9D,QAGd,IAAInqD,GAASrT,KAAKqT,OAAOq4D,YAAY1rE,KAAKgF,MAC1C,OAAOqO,IAAUA,EAAO/M,OAAS,EAAItG,KAAK+D,OAAO4Z,GAAMtK,OAAOA,GAAU,IAS1EtR,EAASkR,UAAU25D,cAAgB,SAAUjvD,GAC/BpX,QAARoX,IACFA,EAAO3d,KAAKw9D,QAGd,IAAInqD,GAASrT,KAAKqT,OAAOs4D,YAAY3rE,KAAKgF,MAC1C,OAAOqO,IAAUA,EAAO/M,OAAS,EAAItG,KAAK+D,OAAO4Z,GAAMtK,OAAOA,GAAU,IAG1EtR,EAASkR,UAAU45D,aAAe,WAMhC,QAASC,GAAK/nE,GACZ,MAAOA,GAAQ4tC,EAAO,GAAK,EAAI,YAAc,WAG/C,QAASo6B,GAAMpvD,GACb,MAAIA,GAAK6N,OAAO,GAAInmB,MAAQ,OACnB,aAELsY,EAAK6N,OAAO4O,IAAUnU,IAAI,EAAG,OAAQ,OAChC,gBAELtI,EAAK6N,OAAO4O,IAAUnU,IAAI,GAAI,OAAQ,OACjC,iBAEF,GAGT,QAAS+mD,GAAYrvD,GACnB,MAAOA,GAAK6N,OAAO,GAAInmB,MAAQ,QAAU,oBAAsB,GAGjE,QAAS4nE,GAAatvD,GACpB,MAAOA,GAAK6N,OAAO,GAAInmB,MAAQ,SAAW,qBAAuB,GAGnE,QAAS6nE,GAAYvvD,GACnB,MAAOA,GAAK6N,OAAO,GAAInmB,MAAQ,QAAU,oBAAsB,GA/BjE,GAAI+0B,GAAUp6B,KAAK+D,OACfvD,EAAIR,KAAK+D,OAAO/D,KAAKw9D,SACrBA,EAAUh9D,EAAE8S,OAAS9S,EAAE8S,OAAO,MAAQ9S,EAAEu1B,KAAK,MAC7C4c,EAAO3yC,KAAK2yC,IA+BhB,QAAQ3yC,KAAKgF,OACX,IAAK,cACH,MAAO8nE,GAAKtP,EAAQt2C,gBAAgBnY,MAEtC,KAAK,SACH,MAAO+9D,GAAKtP,EAAQv2C,WAAWlY,MAEjC,KAAK,SACH,MAAO+9D,GAAKtP,EAAQx2C,WAAWjY,MAEjC,KAAK,OACH,GAAIgY,GAAQy2C,EAAQz2C,OAIpB,OAHiB,IAAb/mB,KAAK2yC,OACP5rB,EAAQA,EAAQ,MAAQA,EAAQ,IAE3B,QAAUA,EAAQgmD,EAAMvP,GAAWsP,EAAKtP,EAAQz2C,QAEzD,KAAK,UACH,MAAO,OAASy2C,EAAQnqD,OAAO,QAAQ8D,cAAgB41D,EAAMvP,GAAWwP,EAAYxP,GAAWsP,EAAKtP,EAAQ7/C,OAE9G,KAAK,MACH,GAAIgI,GAAM63C,EAAQ7/C,OACdlB,EAAQ+gD,EAAQnqD,OAAO,QAAQ8D,aACnC,OAAO,UAAYwO,EAAM,QAAUlJ,EAAQwwD,EAAazP,GAAWsP,EAAKnnD,EAAM,EAEhF,KAAK,QACH,MAAO,OAAS63C,EAAQnqD,OAAO,QAAQ8D,cAAgB81D,EAAazP,GAAWsP,EAAKtP,EAAQ/gD,QAE9F,KAAK,OACH,GAAID,GAAOghD,EAAQhhD,MACnB,OAAO,WAAaA,EAAO0wD,EAAY1P,GAAWsP,EAAKtwD,EAEzD,SACE,MAAO,KAIb3c,EAAOD,QAAUmC,GAIb,SAASlC,EAAQD,EAASM,GAc9B,QAAS4C,GAAM6gD,EAAS3rC,EAAMsoC,GAC5BtgD,KAAK2jD,QAAUA,EACf3jD,KAAKmtE,aACLntE,KAAKotE,cAAgB,EACrBptE,KAAKqtE,gBAAkBr1D,GAAQA,EAAKs1D,cACpCttE,KAAKsgD,QAAUA,EAEftgD,KAAK45C,OACL55C,KAAK6G,OACHq3B,OACEM,MAAO,EACPC,OAAQ,IAGZz+B,KAAK+I,UAAY,KAEjB/I,KAAKiC,SACLjC,KAAK+lE,gBACL/lE,KAAK+Q,cACHw8D,WACAC,UAEFxtE,KAAKytE,kBAAmB,CACxB,IAAIztC,GAAKhgC,IACTA,MAAKsgD,QAAQlB,KAAKE,QAAQlgB,GAAG,mBAAoB,WAC/CY,EAAGytC,kBAAmB,IAGxBztE,KAAKm/C,UAELn/C,KAAKyjC,QAAQzrB,GAxCf,GAAIrX,GAAOT,EAAoB,GAC3B4B,EAAQ5B,EAAoB,GAChBA,GAAoB,GA6CpC4C,GAAMmQ,UAAUksC,QAAU,WACxB,GAAIjhB,GAAQd,SAASM,cAAc,MAC/B19B,MAAKsgD,QAAQz8C,QAAQy/D,cAActiC,MACrC9C,EAAMn1B,UAAY,sBAElBm1B,EAAMn1B,UAAY,YAEpB/I,KAAK45C,IAAI1b,MAAQA,CAEjB,IAAIwvC,GAAQtwC,SAASM,cAAc,MACnCgwC,GAAM3kE,UAAY,YAClBm1B,EAAMZ,YAAYowC,GAClB1tE,KAAK45C,IAAI8zB,MAAQA,CAEjB,IAAIjqB,GAAarmB,SAASM,cAAc,MACxC+lB,GAAW16C,UAAY,YACvB06C,EAAW,kBAAoBzjD,KAC/BA,KAAK45C,IAAI6J,WAAaA,EAEtBzjD,KAAK45C,IAAI3rC,WAAamvB,SAASM,cAAc,OAC7C19B,KAAK45C,IAAI3rC,WAAWlF,UAAY,YAEhC/I,KAAK45C,IAAIoF,KAAO5hB,SAASM,cAAc,OACvC19B,KAAK45C,IAAIoF,KAAKj2C,UAAY,YAK1B/I,KAAK45C,IAAI+zB,OAASvwC,SAASM,cAAc,OACzC19B,KAAK45C,IAAI+zB,OAAO7+D,MAAM4yD,WAAa,SACnC1hE,KAAK45C,IAAI+zB,OAAO7+B,UAAY,IAC5B9uC,KAAK45C,IAAI3rC,WAAWqvB,YAAYt9B,KAAK45C,IAAI+zB,SAO3C7qE,EAAMmQ,UAAUwwB,QAAU,SAAUzrB,GAElC,GAAIqmB,EAOJ,IALEA,EADEr+B,KAAKsgD,QAAQz8C,SAAW7D,KAAKsgD,QAAQz8C,QAAQg6B,cACrC79B,KAAKsgD,QAAQz8C,QAAQg6B,cAAc7lB,GAEnCA,GAAQA,EAAKqmB,QAGrBA,YAAmBuvC,SAAS,CAE9B,IADA5tE,KAAK45C,IAAI8zB,MAAMpwC,YAAYe,GACpBr+B,KAAK45C,IAAI8zB,MAAMjpE,YACpBzE,KAAK45C,IAAI8zB,MAAMhpE,YAAY1E,KAAK45C,IAAI8zB,MAAMjpE,WAE5CzE,MAAK45C,IAAI8zB,MAAMpwC,YAAYe,OACN93B,UAAZ83B,GAAqC,OAAZA,EAClCr+B,KAAK45C,IAAI8zB,MAAM5+B,UAAYzQ,EAE3Br+B,KAAK45C,IAAI8zB,MAAM5+B,UAAY9uC,KAAK2jD,SAAW,EAI7C3jD,MAAK45C,IAAI1b,MAAMwiC,MAAQ1oD,GAAQA,EAAK0oD,OAAS,GAExC1gE,KAAK45C,IAAI8zB,MAAMjpE,WAGlB9D,EAAKwI,gBAAgBnJ,KAAK45C,IAAI8zB,MAAO,cAFrC/sE,EAAKmI,aAAa9I,KAAK45C,IAAI8zB,MAAO,aAMpC,IAAI3kE,GAAYiP,GAAQA,EAAKjP,WAAa,IACtCA,IAAa/I,KAAK+I,YAChB/I,KAAK+I,YACPpI,EAAKwI,gBAAgBnJ,KAAK45C,IAAI1b,MAAOl+B,KAAK+I,WAC1CpI,EAAKwI,gBAAgBnJ,KAAK45C,IAAI6J,WAAYzjD,KAAK+I,WAC/CpI,EAAKwI,gBAAgBnJ,KAAK45C,IAAI3rC,WAAYjO,KAAK+I,WAC/CpI,EAAKwI,gBAAgBnJ,KAAK45C,IAAIoF,KAAMh/C,KAAK+I,YAE3CpI,EAAKmI,aAAa9I,KAAK45C,IAAI1b,MAAOn1B,GAClCpI,EAAKmI,aAAa9I,KAAK45C,IAAI6J,WAAY16C,GACvCpI,EAAKmI,aAAa9I,KAAK45C,IAAI3rC,WAAYlF,GACvCpI,EAAKmI,aAAa9I,KAAK45C,IAAIoF,KAAMj2C,GACjC/I,KAAK+I,UAAYA,GAIf/I,KAAK8O,QACPnO,EAAK0O,cAAcrP,KAAK45C,IAAI1b,MAAOl+B,KAAK8O,OACxC9O,KAAK8O,MAAQ,MAEXkJ,GAAQA,EAAKlJ,QACfnO,EAAKuO,WAAWlP,KAAK45C,IAAI1b,MAAOlmB,EAAKlJ,OACrC9O,KAAK8O,MAAQkJ,EAAKlJ,QAQtBhM,EAAMmQ,UAAU46D,cAAgB,WAC9B,MAAO7tE,MAAK6G,MAAMq3B,MAAMM,OAU1B17B,EAAMmQ,UAAUy5B,OAAS,SAAUyT,EAAO5b,EAAQ8hC,GAChD,GAAIrK,IAAU,EAIV8R,EAAe9tE,KAAK45C,IAAI+zB,OAAOj+B,YAgBnC,IAfIo+B,GAAgB9tE,KAAK+tE,mBACvB/tE,KAAK+tE,iBAAmBD,EAExBntE,EAAK2I,QAAQtJ,KAAKiC,MAAO,SAAUuP,GACjCA,EAAKi0D,OAAQ,EACTj0D,EAAKk0D,WAAWl0D,EAAKk7B,WAG3B25B,GAAU,GAIZrmE,KAAKguE,4BAGqC,kBAA/BhuE,MAAKsgD,QAAQz8C,QAAQm9B,MAAsB,CAGpD,GAAIqlC,EAAS,CAIX,GAAIrmC,GAAKhgC,KACLiuE,GAAY,CAChBttE,GAAK2I,QAAQtJ,KAAKiC,MAAO,SAAUuP,GAC5BA,EAAKk0D,YACRl0D,EAAKk7B,SACL1M,EAAG+lC,aAAav+D,KAAKgK,IAEvBA,EAAKoxC,YAAYqrB,IAInB,IAAIC,GAAqBluE,KAAK+Q,aAAaw8D,QAAQrgE,QAAQwR,KAAK,SAAUxY,EAAGC,GAC3E,MAAO65B,GAAGsgB,QAAQz8C,QAAQm9B,MAAM96B,EAAE8R,KAAM7R,EAAE6R,OAE5ClW,GAAMA,MAAMosE,EAAoB3pC,GAAQ,GAG1CvkC,KAAK+lE,aAAe/lE,KAAKmuE,oBAAoBnuE,KAAK+Q,aAAc/Q,KAAK+lE,aAAc5lB,OAGnFngD,MAAK+lE,aAAe/lE,KAAKmuE,oBAAoBnuE,KAAK+Q,aAAc/Q,KAAK+lE,aAAc5lB,GAE/EngD,KAAKsgD,QAAQz8C,QAAQ/B,MAEvBA,EAAMA,MAAM9B,KAAK+lE,aAAcxhC,EAAQ8hC,GAGvCvkE,EAAMssE,QAAQpuE,KAAK+lE,aAAcxhC,EAAQvkC,KAAKmtE,UAKlD,IAAI1uC,GAASz+B,KAAKquE,iBAAiB9pC,GAG/Bkf,EAAazjD,KAAK45C,IAAI6J,UAC1BzjD,MAAK6I,IAAM46C,EAAW6qB,UACtBtuE,KAAK2I,KAAO86C,EAAW0lB,WACvBnpE,KAAKw+B,MAAQilB,EAAWxJ,YACxB+hB,EAAUr7D,EAAK+I,eAAe1J,KAAM,SAAUy+B,IAAWu9B,EAGzDA,EAAUr7D,EAAK+I,eAAe1J,KAAK6G,MAAMq3B,MAAO,QAASl+B,KAAK45C,IAAI8zB,MAAMhjC,cAAgBsxB,EACxFA,EAAUr7D,EAAK+I,eAAe1J,KAAK6G,MAAMq3B,MAAO,SAAUl+B,KAAK45C,IAAI8zB,MAAMh+B,eAAiBssB,EAG1Fh8D,KAAK45C,IAAI3rC,WAAWa,MAAM2vB,OAASA,EAAS,KAC5Cz+B,KAAK45C,IAAI6J,WAAW30C,MAAM2vB,OAASA,EAAS,KAC5Cz+B,KAAK45C,IAAI1b,MAAMpvB,MAAM2vB,OAASA,EAAS,IAGvC,KAAK,GAAIh4B,GAAI,EAAGm0B,EAAK56B,KAAK+lE,aAAaz/D,OAAYs0B,EAAJn0B,EAAQA,IAAK,CAC1D,GAAI+K,GAAOxR,KAAK+lE,aAAat/D,EAC7B+K,GAAK+8D,YAAYhqC,GAGnB,MAAOy3B,IAOTl5D,EAAMmQ,UAAU+6D,0BAA4B,WAC1C,GAAI5mE,OAAO6H,KAAKjP,KAAKmtE,WAAW7mE,OAAS,EAAG,CAC1C,GAAI05B,GAAKhgC,IAETA,MAAKwuE,iBAEL7tE,EAAK2I,QAAQtJ,KAAK+lE,aAAc,SAAUv0D,GACbjL,SAAvBiL,EAAKwG,KAAK6vD,WACZ7nC,EAAGmtC,UAAU37D,EAAKwG,KAAK6vD,UAAUppC,OAASx5B,KAAKJ,IAAIm7B,EAAGmtC,UAAU37D,EAAKwG,KAAK6vD,UAAUppC,OAAQjtB,EAAKitB,QACjGuB,EAAGmtC,UAAU37D,EAAKwG,KAAK6vD,UAAU30B,SAAU,OAYnDpwC,EAAMmQ,UAAUo7D,iBAAmB,SAAU9pC,GAE3C,GAAI9F,GACAsnC,EAAe/lE,KAAK+lE,YACxB,IAAIA,EAAaz/D,OAAS,EAAG,CAC3B,GAAI1B,GAAMmhE,EAAa,GAAGl9D,IACtBhE,EAAMkhE,EAAa,GAAGl9D,IAAMk9D,EAAa,GAAGtnC,MAKhD,IAJA99B,EAAK2I,QAAQy8D,EAAc,SAAUv0D,GACnC5M,EAAMK,KAAKL,IAAIA,EAAK4M,EAAK3I,KACzBhE,EAAMI,KAAKJ,IAAIA,EAAK2M,EAAK3I,IAAM2I,EAAKitB,UAElC75B,EAAM2/B,EAAOya,KAAM,CAErB,GAAIx3B,GAAS5iB,EAAM2/B,EAAOya,IAC1Bn6C,IAAO2iB,EACP7mB,EAAK2I,QAAQy8D,EAAc,SAAUv0D,GACnCA,EAAK3I,KAAO2e,IAGhBiX,EAAS55B,EAAM0/B,EAAO/yB,KAAK2+B,SAAW,MAEtC1R,GAAS,CAIX,OAFAA,GAASx5B,KAAKJ,IAAI45B,EAAQz+B,KAAK6G,MAAMq3B,MAAMO,SAQ7C37B,EAAMmQ,UAAU0vC,KAAO,WAChB3iD,KAAK45C,IAAI1b,MAAM7yB,YAClBrL,KAAKsgD,QAAQ1G,IAAI8J,SAASpmB,YAAYt9B,KAAK45C,IAAI1b,OAG5Cl+B,KAAK45C,IAAI6J,WAAWp4C,YACvBrL,KAAKsgD,QAAQ1G,IAAI6J,WAAWnmB,YAAYt9B,KAAK45C,IAAI6J,YAG9CzjD,KAAK45C,IAAI3rC,WAAW5C,YACvBrL,KAAKsgD,QAAQ1G,IAAI3rC,WAAWqvB,YAAYt9B,KAAK45C,IAAI3rC,YAG9CjO,KAAK45C,IAAIoF,KAAK3zC,YACjBrL,KAAKsgD,QAAQ1G,IAAIoF,KAAK1hB,YAAYt9B,KAAK45C,IAAIoF,OAO/Cl8C,EAAMmQ,UAAU0yD,KAAO,WACrB,GAAIznC,GAAQl+B,KAAK45C,IAAI1b,KACjBA,GAAM7yB,YACR6yB,EAAM7yB,WAAW3G,YAAYw5B,EAG/B,IAAIulB,GAAazjD,KAAK45C,IAAI6J,UACtBA,GAAWp4C,YACbo4C,EAAWp4C,WAAW3G,YAAY++C,EAGpC,IAAIx1C,GAAajO,KAAK45C,IAAI3rC,UACtBA,GAAW5C,YACb4C,EAAW5C,WAAW3G,YAAYuJ,EAGpC,IAAI+wC,GAAOh/C,KAAK45C,IAAIoF,IAChBA,GAAK3zC,YACP2zC,EAAK3zC,WAAW3G,YAAYs6C,IAQhCl8C,EAAMmQ,UAAUgT,IAAM,SAAUzU,GAc9B,GAbAxR,KAAKiC,MAAMuP,EAAKnR,IAAMmR,EACtBA,EAAKi9D,UAAUzuE,MAGYuG,SAAvBiL,EAAKwG,KAAK6vD,WAC+BthE,SAAvCvG,KAAKmtE,UAAU37D,EAAKwG,KAAK6vD,YAC3B7nE,KAAKmtE,UAAU37D,EAAKwG,KAAK6vD,WAAcppC,OAAQ,EAAGyU,SAAS,EAAO9pC,MAAOpJ,KAAKotE,cAAenrE,UAC7FjC,KAAKotE,iBAEPptE,KAAKmtE,UAAU37D,EAAKwG,KAAK6vD,UAAU5lE,MAAMuF,KAAKgK,IAEhDxR,KAAK0uE,iBAEkC,IAAnC1uE,KAAK+lE,aAAax+D,QAAQiK,GAAa,CACzC,GAAI2uC,GAAQngD,KAAKsgD,QAAQlB,KAAKe,KAC9BngD,MAAK2uE,gBAAgBn9D,EAAMxR,KAAK+lE,aAAc5lB,KAIlDr9C,EAAMmQ,UAAUy7D,eAAiB,WAC/B,GAA6BnoE,SAAzBvG,KAAKqtE,gBAA+B,CACtC,GAAIuB,KACJ,IAAmC,gBAAxB5uE,MAAKqtE,gBAA6B,CAC3C,IAAK,GAAIxF,KAAY7nE,MAAKmtE,UACxByB,EAAUpnE,MAAOqgE,SAAUA,EAAUgH,UAAW7uE,KAAKmtE,UAAUtF,GAAU5lE,MAAM,GAAG+V,KAAKhY,KAAKqtE,kBAE9FuB,GAAUlwD,KAAK,SAAUxY,EAAGC,GAC1B,MAAOD,GAAE2oE,UAAY1oE,EAAE0oE,gBAEpB,IAAmC,kBAAxB7uE,MAAKqtE,gBAA+B,CACpD,IAAK,GAAIxF,KAAY7nE,MAAKmtE,UACxByB,EAAUpnE,KAAKxH,KAAKmtE,UAAUtF,GAAU5lE,MAAM,GAAG+V,KAEnD42D,GAAUlwD,KAAK1e,KAAKqtE,iBAGtB,GAAIuB,EAAUtoE,OAAS,EACrB,IAAK,GAAIG,GAAI,EAAGA,EAAImoE,EAAUtoE,OAAQG,IACpCzG,KAAKmtE,UAAUyB,EAAUnoE,GAAGohE,UAAUz+D,MAAQ3C,IAMtD3D,EAAMmQ,UAAUu7D,eAAiB,WAC/B,IAAK,GAAI3G,KAAY7nE,MAAKmtE,UACpBntE,KAAKmtE,UAAUnnE,eAAe6hE,KAChC7nE,KAAKmtE,UAAUtF,GAAU30B,SAAU,IASzCpwC,EAAMmQ,UAAU0uB,OAAS,SAAUnwB,SAC1BxR,MAAKiC,MAAMuP,EAAKnR,IACvBmR,EAAKi9D,UAAU,KAGf,IAAIrlE,GAAQpJ,KAAK+lE,aAAax+D,QAAQiK,EAGtC,IAFa,IAATpI,GAAapJ,KAAK+lE,aAAa18D,OAAOD,EAAO,GAEtB7C,SAAvBiL,EAAKwG,KAAK6vD,SAAwB,CACpC,GAAIA,GAAW7nE,KAAKmtE,UAAU37D,EAAKwG,KAAK6vD,SACxC,IAAIA,EAAU,CACZ,GAAIiH,GAAYjH,EAAS5lE,MAAMsF,QAAQiK,EACvCq2D,GAAS5lE,MAAMoH,OAAOylE,EAAW,GAC5BjH,EAAS5lE,MAAMqE,eACXtG,MAAKmtE,UAAU37D,EAAKwG,KAAK6vD,UAChC7nE,KAAKotE,iBAEPptE,KAAK0uE,oBASX5rE,EAAMmQ,UAAU87D,kBAAoB,SAAUv9D,GAC5CxR,KAAKsgD,QAAQ+mB,WAAW71D,EAAKnR,KAM/ByC,EAAMmQ,UAAU+tB,MAAQ,WAKtB,IAAK,GAJDv3B,GAAQ9I,EAAK6I,QAAQxJ,KAAKiC,OAC1B+sE,KACAhH,KAEKvhE,EAAI,EAAGA,EAAIgD,EAAMnD,OAAQG,IACNF,SAAtBkD,EAAMhD,GAAGuR,KAAK86B,KAChBk1B,EAASxgE,KAAKiC,EAAMhD,IAEtBuoE,EAAWxnE,KAAKiC,EAAMhD,GAExBzG,MAAK+Q,cACHw8D,QAASyB,EACTxB,MAAOxF,GAGTlmE,EAAMmtE,aAAajvE,KAAK+Q,aAAaw8D,SACrCzrE,EAAMotE,WAAWlvE,KAAK+Q,aAAay8D,QAWrC1qE,EAAMmQ,UAAUk7D,oBAAsB,SAAUp9D,EAAco+D,EAAiBhvB,GAC7E,GAKI3uC,GAAM/K,EALNs/D,KACAqJ,KACApyB,GAAYmD,EAAMrN,IAAMqN,EAAMvN,OAAS,EACvCy8B,EAAalvB,EAAMvN,MAAQoK,EAC3BsyB,EAAanvB,EAAMrN,IAAMkK,EAIzBuyB,EAAiB,SAAwBxqE,GAC3C,MAAYsqE,GAARtqE,EACK,GACWuqE,GAATvqE,EACF,EAEA,EAOX,IAAIoqE,EAAgB7oE,OAAS,EAC3B,IAAKG,EAAI,EAAGA,EAAI0oE,EAAgB7oE,OAAQG,IACtCzG,KAAKwvE,6BAA6BL,EAAgB1oE,GAAIs/D,EAAcqJ,EAAoBjvB,EAK5F,IAAIsvB,GAAoB9uE,EAAKmQ,mBAAmBC,EAAaw8D,QAASgC,EAAgB,OAAQ,QAS9F,IANAvvE,KAAK0vE,cAAcD,EAAmB1+D,EAAaw8D,QAASxH,EAAcqJ,EAAoB,SAAU59D,GACtG,MAAOA,GAAKwG,KAAK46B,MAAQy8B,GAAc79D,EAAKwG,KAAK46B,MAAQ08B,IAK9B,GAAzBtvE,KAAKytE,iBAEP,IADAztE,KAAKytE,kBAAmB,EACnBhnE,EAAI,EAAGA,EAAIsK,EAAay8D,MAAMlnE,OAAQG,IACzCzG,KAAKwvE,6BAA6Bz+D,EAAay8D,MAAM/mE,GAAIs/D,EAAcqJ,EAAoBjvB,OAExF,CAEL,GAAIwvB,GAAkBhvE,EAAKmQ,mBAAmBC,EAAay8D,MAAO+B,EAAgB,OAAQ,MAG1FvvE,MAAK0vE,cAAcC,EAAiB5+D,EAAay8D,MAAOzH,EAAcqJ,EAAoB,SAAU59D,GAClG,MAAOA,GAAKwG,KAAK86B,IAAMu8B,GAAc79D,EAAKwG,KAAK86B,IAAMw8B,IAKzD,IAAK7oE,EAAI,EAAGA,EAAIs/D,EAAaz/D,OAAQG,IACnC+K,EAAOu0D,EAAat/D,GACf+K,EAAKk0D,WAAWl0D,EAAKmxC,OAE1BnxC,EAAKoxC,aAgBP,OAAOmjB,IAGTjjE,EAAMmQ,UAAUy8D,cAAgB,SAAUE,EAAY3tE,EAAO8jE,EAAcqJ,EAAoBS,GAC7F,GAAIr+D,GACA/K,CAEJ,IAAkB,IAAdmpE,EAAkB,CACpB,IAAKnpE,EAAImpE,EAAYnpE,GAAK,IACxB+K,EAAOvP,EAAMwE,IACTopE,EAAer+D,IAFQ/K,IAKWF,SAAhC6oE,EAAmB59D,EAAKnR,MAC1B+uE,EAAmB59D,EAAKnR,KAAM,EAC9B0lE,EAAav+D,KAAKgK,GAKxB,KAAK/K,EAAImpE,EAAa,EAAGnpE,EAAIxE,EAAMqE,SACjCkL,EAAOvP,EAAMwE,IACTopE,EAAer+D,IAFsB/K,IAKHF,SAAhC6oE,EAAmB59D,EAAKnR,MAC1B+uE,EAAmB59D,EAAKnR,KAAM,EAC9B0lE,EAAav+D,KAAKgK,MAkB5B1O,EAAMmQ,UAAU07D,gBAAkB,SAAUn9D,EAAMu0D,EAAc5lB,GAC1D3uC,EAAKs+D,UAAU3vB,IACZ3uC,EAAKk0D,WAAWl0D,EAAKmxC,OAE1BnxC,EAAKoxC,cACLmjB,EAAav+D,KAAKgK,IAEdA,EAAKk0D,WAAWl0D,EAAKm0D,QAe7B7iE,EAAMmQ,UAAUu8D,6BAA+B,SAAUh+D,EAAMu0D,EAAcqJ,EAAoBjvB,GAC3F3uC,EAAKs+D,UAAU3vB,GACmB55C,SAAhC6oE,EAAmB59D,EAAKnR,MAC1B+uE,EAAmB59D,EAAKnR,KAAM,EAC9B0lE,EAAav+D,KAAKgK,IAGhBA,EAAKk0D,WAAWl0D,EAAKm0D,QAI7B9lE,EAAOD,QAAUkD,GAIb,SAASjD,EAAQD,GAKrB,GAAImwE,GAAU,IAMdnwE,GAAQqvE,aAAe,SAAUhtE,GAC/BA,EAAMyc,KAAK,SAAUxY,EAAGC,GACtB,MAAOD,GAAE8R,KAAK46B,MAAQzsC,EAAE6R,KAAK46B,SASjChzC,EAAQsvE,WAAa,SAAUjtE,GAC7BA,EAAMyc,KAAK,SAAUxY,EAAGC,GACtB,GAAI6pE,GAAQ,OAAS9pE,GAAE8R,KAAO9R,EAAE8R,KAAK86B,IAAM5sC,EAAE8R,KAAK46B,MAC9Cq9B,EAAQ,OAAS9pE,GAAE6R,KAAO7R,EAAE6R,KAAK86B,IAAM3sC,EAAE6R,KAAK46B,KAElD,OAAOo9B,GAAQC,KAenBrwE,EAAQkC,MAAQ,SAAUG,EAAOsiC,EAAQgzB,GACvC,GAAI9wD,GAAGypE,CAEP,IAAI3Y,EAEF,IAAK9wD,EAAI,EAAGypE,EAAOjuE,EAAMqE,OAAY4pE,EAAJzpE,EAAUA,IACzCxE,EAAMwE,GAAGoC,IAAM,IAKnB,KAAKpC,EAAI,EAAGypE,EAAOjuE,EAAMqE,OAAY4pE,EAAJzpE,EAAUA,IAAK,CAC9C,GAAI+K,GAAOvP,EAAMwE,EACjB,IAAI+K,EAAK1P,OAAsB,OAAb0P,EAAK3I,IAAc,CAEnC2I,EAAK3I,IAAM07B,EAAOya,IAElB,GAAG,CAID,IAAK,GADDmxB,GAAgB,KACX1/D,EAAI,EAAG2/D,EAAKnuE,EAAMqE,OAAY8pE,EAAJ3/D,EAAQA,IAAK,CAC9C,GAAI/J,GAAQzE,EAAMwO,EAClB,IAAkB,OAAd/J,EAAMmC,KAAgBnC,IAAU8K,GAAQ9K,EAAM5E,OAASlC,EAAQywE,UAAU7+D,EAAM9K,EAAO69B,EAAO/yB,MAAO,CACtG2+D,EAAgBzpE,CAChB,QAIiB,MAAjBypE,IAEF3+D,EAAK3I,IAAMsnE,EAActnE,IAAMsnE,EAAc1xC,OAAS8F,EAAO/yB,KAAK2+B,gBAE7DggC,MAYfvwE,EAAQwuE,QAAU,SAAUnsE,EAAOsiC,EAAQ4oC,GACzC,GAAI1mE,GAAGypE,EAAMI,CAGb,KAAK7pE,EAAI,EAAGypE,EAAOjuE,EAAMqE,OAAY4pE,EAAJzpE,EAAUA,IACzC,GAA+BF,SAA3BtE,EAAMwE,GAAGuR,KAAK6vD,SAAwB,CACxCyI,EAAS/rC,EAAOya,IAChB,KAAK,GAAI6oB,KAAYsF,GACfA,EAAUnnE,eAAe6hE,IACQ,GAA/BsF,EAAUtF,GAAU30B,SAAmBi6B,EAAUtF,GAAUz+D,MAAQ+jE,EAAUlrE,EAAMwE,GAAGuR,KAAK6vD,UAAUz+D,QACvGknE,GAAUnD,EAAUtF,GAAUppC,OAAS8F,EAAO/yB,KAAK2+B,SAIzDluC,GAAMwE,GAAGoC,IAAMynE,MAEfruE,GAAMwE,GAAGoC,IAAM07B,EAAOya,MAe5Bp/C,EAAQywE,UAAY,SAAUnqE,EAAGC,EAAGo+B,GAClC,MAAOr+B,GAAEyC,KAAO47B,EAAO2L,WAAa6/B,EAAU5pE,EAAEwC,KAAOxC,EAAEq4B,OAASt4B,EAAEyC,KAAOzC,EAAEs4B,MAAQ+F,EAAO2L,WAAa6/B,EAAU5pE,EAAEwC,MAAQzC,EAAE2C,IAAM07B,EAAO4L,SAAW4/B,EAAU5pE,EAAE0C,IAAM1C,EAAEs4B,QAAUv4B,EAAE2C,IAAM3C,EAAEu4B,OAAS8F,EAAO4L,SAAW4/B,EAAU5pE,EAAE0C,MAKpO,SAAShJ,EAAQD,EAASM,GAiB9B,QAASoC,GAAU0V,EAAMoiD,EAAYv2D,GASnC,GARA7D,KAAK6G,OACHw3B,SACEG,MAAO,IAGXx+B,KAAK8T,UAAW,EAGZkE,EAAM,CACR,GAAkBzR,QAAdyR,EAAK46B,MACP,KAAM,IAAI5rC,OAAM,oCAAsCgR,EAAK3X,GAE7D,IAAgBkG,QAAZyR,EAAK86B,IACP,KAAM,IAAI9rC,OAAM,kCAAoCgR,EAAK3X,IAI7D6B,EAAK3B,KAAKP,KAAMgY,EAAMoiD,EAAYv2D,GA/BpC,GACI3B,IADShC,EAAoB,IACtBA,EAAoB,IAiC/BoC,GAAU2Q,UAAY,GAAI/Q,GAAK,KAAM,KAAM,MAE3CI,EAAU2Q,UAAUs9D,cAAgB,qBAOpCjuE,EAAU2Q,UAAU68D,UAAY,SAAU3vB,GAExC,MAAOngD,MAAKgY,KAAK46B,MAAQuN,EAAMrN,KAAO9yC,KAAKgY,KAAK86B,IAAMqN,EAAMvN,OAM9DtwC,EAAU2Q,UAAUy5B,OAAS,WAC3B,GAAIkN,GAAM55C,KAAK45C,GA2Bf,IA1BKA,IAEH55C,KAAK45C,OACLA,EAAM55C,KAAK45C,IAGXA,EAAIkrB,IAAM1nC,SAASM,cAAc,OAIjCkc,EAAIpP,MAAQpN,SAASM,cAAc,OACnCkc,EAAIpP,MAAMzhC,UAAY,oBACtB6wC,EAAIkrB,IAAIxnC,YAAYsc,EAAIpP,OAGxBoP,EAAIvb,QAAUjB,SAASM,cAAc,OACrCkc,EAAIvb,QAAQt1B,UAAY,mBACxB6wC,EAAIpP,MAAMlN,YAAYsc,EAAIvb,SAG1Bub,EAAIkrB,IAAI,iBAAmB9kE,KAE3BA,KAAKylE,OAAQ,IAIVzlE,KAAKuL,OACR,KAAM,IAAIvE,OAAM,yCAElB,KAAK4yC,EAAIkrB,IAAIz5D,WAAY,CACvB,GAAIo4C,GAAazjD,KAAKuL,OAAOquC,IAAI6J,UACjC,KAAKA,EACH,KAAM,IAAIz8C,OAAM,iEAElBy8C,GAAWnmB,YAAYsc,EAAIkrB,KAQ7B,GANA9kE,KAAK0lE,WAAY,EAMb1lE,KAAKylE,MAAO,CACdzlE,KAAKwwE,gBAAgBxwE,KAAK45C,IAAIvb,SAC9Br+B,KAAKywE,aAAazwE,KAAK45C,IAAIkrB,KAC3B9kE,KAAK0wE,sBAAsB1wE,KAAK45C,IAAIkrB,KACpC9kE,KAAK2wE,aAAa3wE,KAAK45C,IAAIkrB,IAE3B,IAAI3B,IAAYnjE,KAAK6D,QAAQs/D,SAASC,YAAcpjE,KAAK6D,QAAQs/D,SAASE,aAAerjE,KAAKmjE,YAAa,IAASnjE,KAAKmjE,YAAa,EAGlIp6D,GAAa/I,KAAKgY,KAAKjP,UAAY,IAAM/I,KAAKgY,KAAKjP,UAAY,KAAO/I,KAAKunE,SAAW,gBAAkB,KAAOpE,EAAW,gBAAkB,gBAChJvpB,GAAIkrB,IAAI/7D,UAAY/I,KAAKuwE,cAAgBxnE,EAGzC/I,KAAK8T,SAA2D,WAAhD/I,OAAO6lE,iBAAiBh3B,EAAIpP,OAAO12B,SAKnD9T,KAAK45C,IAAIvb,QAAQvvB,MAAM+hE,SAAW,OAClC7wE,KAAK6G,MAAMw3B,QAAQG,MAAQx+B,KAAK45C,IAAIvb,QAAQ4b,YAC5Cj6C,KAAKy+B,OAASz+B,KAAK45C,IAAIkrB,IAAI3qB,aAC3Bn6C,KAAK45C,IAAIvb,QAAQvvB,MAAM+hE,SAAW,GAElC7wE,KAAKylE,OAAQ,EAGfzlE,KAAK8wE,qBAAqBl3B,EAAIkrB,KAC9B9kE,KAAK+wE,mBACL/wE,KAAKgxE,qBAOP1uE,EAAU2Q,UAAU0vC,KAAO,WACpB3iD,KAAK0lE,WACR1lE,KAAK0sC,UAQTpqC,EAAU2Q,UAAU0yD,KAAO,WACzB,GAAI3lE,KAAK0lE,UAAW,CAClB,GAAIZ,GAAM9kE,KAAK45C,IAAIkrB,GAEfA,GAAIz5D,YACNy5D,EAAIz5D,WAAW3G,YAAYogE,GAG7B9kE,KAAK0lE,WAAY,IAarBpjE,EAAU2Q,UAAU2vC,YAAc,SAAUqrB,GAC1C,GAGIgD,GACAj3B,EAJAk3B,EAAclxE,KAAKuL,OAAOizB,MAC1BoU,EAAQ5yC,KAAKo6D,WAAWza,SAAS3/C,KAAKgY,KAAK46B,OAC3CE,EAAM9yC,KAAKo6D,WAAWza,SAAS3/C,KAAKgY,KAAK86B,MAK3BvsC,SAAd0nE,GAA2BA,KAAc,MAC9BiD,EAATt+B,IACFA,GAASs+B,GAEPp+B,EAAM,EAAIo+B,IACZp+B,EAAM,EAAIo+B,GAGd,IAAIC,GAAWlsE,KAAKJ,IAAIiuC,EAAMF,EAAO,EAmBrC,QAjBI5yC,KAAK8T,UACP9T,KAAK2I,KAAOiqC,EACZ5yC,KAAKw+B,MAAQ2yC,EAAWnxE,KAAK6G,MAAMw3B,QAAQG,MAC3Cwb,EAAeh6C,KAAK6G,MAAMw3B,QAAQG,QAMhCx+B,KAAK2I,KAAOiqC,EACZ5yC,KAAKw+B,MAAQ2yC,EACbn3B,EAAe/0C,KAAKL,IAAIkuC,EAAMF,EAAO5yC,KAAK6G,MAAMw3B,QAAQG,QAG5Dx+B,KAAK45C,IAAIkrB,IAAIh2D,MAAMnG,KAAO3I,KAAK2I,KAAO,KACtC3I,KAAK45C,IAAIkrB,IAAIh2D,MAAM0vB,MAAQ2yC,EAAW,KAE9BnxE,KAAK6D,QAAQ6+D,OACnB,IAAK,OACH1iE,KAAK45C,IAAIvb,QAAQvvB,MAAMnG,KAAO,GAC9B,MAEF,KAAK,QACH3I,KAAK45C,IAAIvb,QAAQvvB,MAAMnG,KAAO1D,KAAKJ,IAAIssE,EAAWn3B,EAAc,GAAK,IACrE,MAEF,KAAK,SACHh6C,KAAK45C,IAAIvb,QAAQvvB,MAAMnG,KAAO1D,KAAKJ,KAAKssE,EAAWn3B,GAAgB,EAAG,GAAK,IAC3E,MAEF,SAKMi3B,EAFAjxE,KAAK8T,SACHg/B,EAAM,EACM7tC,KAAKJ,KAAK+tC,EAAO,IAEhBoH,EAGH,EAARpH,GACaA,EAED,EAGpB5yC,KAAK45C,IAAIvb,QAAQvvB,MAAMnG,KAAOsoE,EAAc,OAQlD3uE,EAAU2Q,UAAUs7D,YAAc,WAChC,GAAIxvB,GAAc/+C,KAAK6D,QAAQk7C,YAAYvtC,KACvCszD,EAAM9kE,KAAK45C,IAAIkrB,GAEA,QAAf/lB,EACF+lB,EAAIh2D,MAAMjG,IAAM7I,KAAK6I,IAAM,KAE3Bi8D,EAAIh2D,MAAMjG,IAAM7I,KAAKuL,OAAOkzB,OAASz+B,KAAK6I,IAAM7I,KAAKy+B,OAAS,MAQlEn8B,EAAU2Q,UAAU89D,iBAAmB,WACrC,GAAI/wE,KAAKunE,UAAYvnE,KAAK6D,QAAQs/D,SAASC,aAAepjE,KAAK45C,IAAI0uB,SAAU,CAE3E,GAAIA,GAAWlrC,SAASM,cAAc,MACtC4qC,GAASv/D,UAAY,gBACrBu/D,EAASL,aAAejoE,KAExBA,KAAK45C,IAAIkrB,IAAIxnC,YAAYgrC,GACzBtoE,KAAK45C,IAAI0uB,SAAWA,OACVtoE,KAAKunE,UAAYvnE,KAAK45C,IAAI0uB,WAEhCtoE,KAAK45C,IAAI0uB,SAASj9D,YACpBrL,KAAK45C,IAAI0uB,SAASj9D,WAAW3G,YAAY1E,KAAK45C,IAAI0uB,UAEpDtoE,KAAK45C,IAAI0uB,SAAW,OAQxBhmE,EAAU2Q,UAAU+9D,kBAAoB,WACtC,GAAIhxE,KAAKunE,UAAYvnE,KAAK6D,QAAQs/D,SAASC,aAAepjE,KAAK45C,IAAI4uB,UAAW,CAE5E,GAAIA,GAAYprC,SAASM,cAAc,MACvC8qC,GAAUz/D,UAAY,iBACtBy/D,EAAUN,cAAgBloE,KAE1BA,KAAK45C,IAAIkrB,IAAIxnC,YAAYkrC,GACzBxoE,KAAK45C,IAAI4uB,UAAYA,OACXxoE,KAAKunE,UAAYvnE,KAAK45C,IAAI4uB,YAEhCxoE,KAAK45C,IAAI4uB,UAAUn9D,YACrBrL,KAAK45C,IAAI4uB,UAAUn9D,WAAW3G,YAAY1E,KAAK45C,IAAI4uB,WAErDxoE,KAAK45C,IAAI4uB,UAAY,OAIzB3oE,EAAOD,QAAU0C,GAIb,SAASzC,EAAQD,EAASM,GAgB9B,QAASgC,GAAK8V,EAAMoiD,EAAYv2D,GAC9B7D,KAAKK,GAAK,KACVL,KAAKuL,OAAS,KACdvL,KAAKgY,KAAOA,EACZhY,KAAK45C,IAAM,KACX55C,KAAKo6D,WAAaA,MAClBp6D,KAAK6D,QAAUA,MAEf7D,KAAKunE,UAAW,EAChBvnE,KAAK0lE,WAAY,EACjB1lE,KAAKylE,OAAQ,EAEbzlE,KAAK6I,IAAM,KACX7I,KAAK2I,KAAO,KACZ3I,KAAKw+B,MAAQ,KACbx+B,KAAKy+B,OAAS,KAEdz+B,KAAKmjE,SAAW,KACZnjE,KAAKgY,MAAQhY,KAAKgY,KAAKhS,eAAe,aAA6C,iBAAvBhG,MAAKgY,KAAKmrD,WACxEnjE,KAAKmjE,SAAWnrD,EAAKmrD,UA/BzB,GAAIn/D,GAAS9D,EAAoB,IAC7BS,EAAOT,EAAoB,EAkC/BgC,GAAK+Q,UAAUnR,OAAQ,EAKvBI,EAAK+Q,UAAU4yD,OAAS,WACtB7lE,KAAKunE,UAAW,EAChBvnE,KAAKylE,OAAQ,EACTzlE,KAAK0lE,WAAW1lE,KAAK0sC,UAM3BxqC,EAAK+Q,UAAU2yD,SAAW,WACxB5lE,KAAKunE,UAAW,EAChBvnE,KAAKylE,OAAQ,EACTzlE,KAAK0lE,WAAW1lE,KAAK0sC,UAQ3BxqC,EAAK+Q,UAAUwwB,QAAU,SAAUzrB,GACjC,GAAIo5D,GAA6B7qE,QAAdyR,EAAKkrC,OAAsBljD,KAAKgY,KAAKkrC,OAASlrC,EAAKkrC,KAClEkuB,IACFpxE,KAAKuL,OAAO+0C,QAAQqpB,aAAa3pE,KAAMgY,EAAKkrC,OAG1ClrC,EAAKhS,eAAe,aAAwC,iBAAlBgS,GAAKmrD,WACjDnjE,KAAKmjE,SAAWnrD,EAAKmrD,UAGvBnjE,KAAKgY,KAAOA,EACZhY,KAAKylE,OAAQ,EACTzlE,KAAK0lE,WAAW1lE,KAAK0sC,UAO3BxqC,EAAK+Q,UAAUw7D,UAAY,SAAUljE,GAC/BvL,KAAK0lE,WACP1lE,KAAK2lE,OACL3lE,KAAKuL,OAASA,EACVvL,KAAKuL,QACPvL,KAAK2iD,QAGP3iD,KAAKuL,OAASA,GASlBrJ,EAAK+Q,UAAU68D,UAAY,SAAU3vB,GAEnC,OAAO,GAOTj+C,EAAK+Q,UAAU0vC,KAAO,WACpB,OAAO,GAOTzgD,EAAK+Q,UAAU0yD,KAAO,WACpB,OAAO,GAMTzjE,EAAK+Q,UAAUy5B,OAAS,aAOxBxqC,EAAK+Q,UAAU2vC,YAAc,aAO7B1gD,EAAK+Q,UAAUs7D,YAAc,aAS7BrsE,EAAK+Q,UAAU69D,qBAAuB,SAAU1kD,GAC9C,GAAI+2C,IAAYnjE,KAAK6D,QAAQs/D,SAASxhC,QAAU3hC,KAAKgY,KAAKmrD,YAAa,IAASnjE,KAAKgY,KAAKmrD,YAAa,CAEvG,IAAInjE,KAAKunE,UAAYpE,IAAanjE,KAAK45C,IAAIy3B,aAAc,CAEvD,GAAIrxC,GAAKhgC,KAELqxE,EAAej0C,SAASM,cAAc,MAC1C2zC,GAAatoE,UAAY,aACzBsoE,EAAa3Q,MAAQ,mBAGrB,GAAI18D,GAAOqtE,GAAcjyC,GAAG,MAAO,SAAUt0B,GAC3CA,EAAM25C,kBACNzkB,EAAGz0B,OAAOwjE,kBAAkB/uC,KAG9B5T,EAAOkR,YAAY+zC,GACnBrxE,KAAK45C,IAAIy3B,aAAeA,OACdrxE,KAAKunE,UAAYvnE,KAAK45C,IAAIy3B,eAEhCrxE,KAAK45C,IAAIy3B,aAAahmE,YACxBrL,KAAK45C,IAAIy3B,aAAahmE,WAAW3G,YAAY1E,KAAK45C,IAAIy3B,cAExDrxE,KAAK45C,IAAIy3B,aAAe,OAS5BnvE,EAAK+Q,UAAUu9D,gBAAkB,SAAUpmE,GACzC,GAAIi0B,EACJ,IAAIr+B,KAAK6D,QAAQytE,SAAU,CACzB,GAAIrvB,GAAWjiD,KAAKuL,OAAO+0C,QAAQC,UAAUvpB,IAAIh3B,KAAKK,GACtDg+B,GAAUr+B,KAAK6D,QAAQytE,SAASrvB,OAEhC5jB,GAAUr+B,KAAKgY,KAAKqmB,OAGtB,IAAIuvB,GAAU5tD,KAAKuxE,iBAAiBvxE,KAAKq+B,WAAar+B,KAAKuxE,iBAAiBlzC,EAC5E,IAAIuvB,EAAS,CAEX,GAAIvvB,YAAmBuvC,SACrBxjE,EAAQ0kC,UAAY,GACpB1kC,EAAQkzB,YAAYe,OACf,IAAe93B,QAAX83B,EACTj0B,EAAQ0kC,UAAYzQ,MAEpB,IAAwB,cAAlBr+B,KAAKgY,KAAKpQ,MAA8CrB,SAAtBvG,KAAKgY,KAAKqmB,QAChD,KAAM,IAAIr3B,OAAM,sCAAwChH,KAAKK,GAIjEL,MAAKq+B,QAAUA,IASnBn8B,EAAK+Q,UAAUw9D,aAAe,SAAUrmE,GACf,MAAnBpK,KAAKgY,KAAK0oD,MACZt2D,EAAQs2D,MAAQ1gE,KAAKgY,KAAK0oD,OAAS,GAEnCt2D,EAAQonE,gBAAgB,cAS5BtvE,EAAK+Q,UAAUy9D,sBAAwB,SAAUtmE,GAC/C,GAAIpK,KAAK6D,QAAQ4tE,gBAAkBzxE,KAAK6D,QAAQ4tE,eAAenrE,OAAS,EAAG,CACzE,GAAIorE,KAEJ,IAAI5qE,MAAMC,QAAQ/G,KAAK6D,QAAQ4tE,gBAC7BC,EAAa1xE,KAAK6D,QAAQ4tE,mBACrB,CAAA,GAAmC,OAA/BzxE,KAAK6D,QAAQ4tE,eAGtB,MAFAC,GAAatqE,OAAO6H,KAAKjP,KAAKgY,MAKhC,IAAK,GAAIvR,GAAI,EAAGA,EAAIirE,EAAWprE,OAAQG,IAAK,CAC1C,GAAI+Q,GAAOk6D,EAAWjrE,GAClB1B,EAAQ/E,KAAKgY,KAAKR,EAET,OAATzS,EACFqF,EAAQunE,aAAa,QAAUn6D,EAAMzS,GAErCqF,EAAQonE,gBAAgB,QAAUh6D,MAW1CtV,EAAK+Q,UAAU09D,aAAe,SAAUvmE,GAElCpK,KAAK8O,QACPnO,EAAK0O,cAAcjF,EAASpK,KAAK8O,OACjC9O,KAAK8O,MAAQ,MAIX9O,KAAKgY,KAAKlJ,QACZnO,EAAKuO,WAAW9E,EAASpK,KAAKgY,KAAKlJ,OACnC9O,KAAK8O,MAAQ9O,KAAKgY,KAAKlJ,QAU3B5M,EAAK+Q,UAAUs+D,iBAAmB,SAAUlzC,GAC1C,MAAuB,gBAAZA,GAA6BA,EACpCA,GAAW,aAAeA,GAAgBA,EAAQuzC,UAC/CvzC,GAOTn8B,EAAK+Q,UAAU4vC,aAAe,WAC5B,MAAO,IAOT3gD,EAAK+Q,UAAU6vC,cAAgB,WAC7B,MAAO,IAGTjjD,EAAOD,QAAUsC,GAIb,SAASrC,EAAQD,EAASM,GAa9B,QAASqC,GAAgBohD,EAAS3rC,EAAMsoC,GACtCx9C,EAAMvC,KAAKP,KAAM2jD,EAAS3rC,EAAMsoC,GAEhCtgD,KAAKw+B,MAAQ,EACbx+B,KAAKy+B,OAAS,EACdz+B,KAAK6I,IAAM,EACX7I,KAAK2I,KAAO,EAfd,GACI7F,IADO5C,EAAoB,GACnBA,EAAoB,IAiBhCqC,GAAgB0Q,UAAY7L,OAAOgJ,OAAOtN,EAAMmQ,WAShD1Q,EAAgB0Q,UAAUy5B,OAAS,SAAUyT,EAAO5b,EAAQ8hC,GAC1D,GAAIrK,IAAU,CAEdh8D,MAAK+lE,aAAe/lE,KAAKmuE,oBAAoBnuE,KAAK+Q,aAAc/Q,KAAK+lE,aAAc5lB,GAGnFngD,KAAKw+B,MAAQx+B,KAAK45C,IAAI3rC,WAAWgsC,YAGjCj6C,KAAK45C,IAAI3rC,WAAWa,MAAM2vB,OAAS,GAGnC,KAAK,GAAIh4B,GAAI,EAAGm0B,EAAK56B,KAAK+lE,aAAaz/D,OAAYs0B,EAAJn0B,EAAQA,IAAK,CAC1D,GAAI+K,GAAOxR,KAAK+lE,aAAat/D,EAC7B+K,GAAK+8D,YAAYhqC,GAGnB,MAAOy3B;EAMTz5D,EAAgB0Q,UAAU0vC,KAAO,WAC1B3iD,KAAK45C,IAAI3rC,WAAW5C,YACvBrL,KAAKsgD,QAAQ1G,IAAI3rC,WAAWqvB,YAAYt9B,KAAK45C,IAAI3rC,aAIrDpO,EAAOD,QAAU2C,GAIb,SAAS1C,EAAQD,EAASM,GAiB9B,QAASkC,GAAQ4V,EAAMoiD,EAAYv2D,GAajC,GAZA7D,KAAK6G,OACH8yC,KACEnb,MAAO,EACPC,OAAQ,GAEVib,MACElb,MAAO,EACPC,OAAQ,IAKRzmB,GACgBzR,QAAdyR,EAAK46B,MACP,KAAM,IAAI5rC,OAAM,oCAAsCgR,EAI1D9V,GAAK3B,KAAKP,KAAMgY,EAAMoiD,EAAYv2D,GAhCpC,GAAI3B,GAAOhC,EAAoB,GACpBA,GAAoB,EAkC/BkC,GAAQ6Q,UAAY,GAAI/Q,GAAK,KAAM,KAAM,MAOzCE,EAAQ6Q,UAAU68D,UAAY,SAAU3vB,GAGtC,GAAInD,IAAYmD,EAAMrN,IAAMqN,EAAMvN,OAAS,CAC3C,OAAO5yC,MAAKgY,KAAK46B,MAAQuN,EAAMvN,MAAQoK,GAAYh9C,KAAKgY,KAAK46B,MAAQuN,EAAMrN,IAAMkK,GAMnF56C,EAAQ6Q,UAAUy5B,OAAS,WACzB,GAAIkN,GAAM55C,KAAK45C,GA6Bf,IA5BKA,IAEH55C,KAAK45C,OACLA,EAAM55C,KAAK45C,IAGXA,EAAIkrB,IAAM1nC,SAASM,cAAc,OAGjCkc,EAAIvb,QAAUjB,SAASM,cAAc,OACrCkc,EAAIvb,QAAQt1B,UAAY,mBACxB6wC,EAAIkrB,IAAIxnC,YAAYsc,EAAIvb,SAGxBub,EAAIF,KAAOtc,SAASM,cAAc,OAClCkc,EAAIF,KAAK3wC,UAAY,WAGrB6wC,EAAID,IAAMvc,SAASM,cAAc,OACjCkc,EAAID,IAAI5wC,UAAY,UAGpB6wC,EAAIkrB,IAAI,iBAAmB9kE,KAE3BA,KAAKylE,OAAQ,IAIVzlE,KAAKuL,OACR,KAAM,IAAIvE,OAAM,yCAElB,KAAK4yC,EAAIkrB,IAAIz5D,WAAY,CACvB,GAAIo4C,GAAazjD,KAAKuL,OAAOquC,IAAI6J,UACjC,KAAKA,EAAY,KAAM,IAAIz8C,OAAM,iEACjCy8C,GAAWnmB,YAAYsc,EAAIkrB,KAE7B,IAAKlrB,EAAIF,KAAKruC,WAAY,CACxB,GAAI4C,GAAajO,KAAKuL,OAAOquC,IAAI3rC,UACjC,KAAKA,EAAY,KAAM,IAAIjH,OAAM,iEACjCiH,GAAWqvB,YAAYsc,EAAIF,MAE7B,IAAKE,EAAID,IAAItuC,WAAY,CACvB,GAAI2zC,GAAOh/C,KAAKuL,OAAOquC,IAAIoF,IAC3B,KAAK/wC,EAAY,KAAM,IAAIjH,OAAM,2DACjCg4C,GAAK1hB,YAAYsc,EAAID,KAQvB,GANA35C,KAAK0lE,WAAY,EAMb1lE,KAAKylE,MAAO,CACdzlE,KAAKwwE,gBAAgBxwE,KAAK45C,IAAIvb,SAC9Br+B,KAAKywE,aAAazwE,KAAK45C,IAAIkrB,KAC3B9kE,KAAK0wE,sBAAsB1wE,KAAK45C,IAAIkrB,KACpC9kE,KAAK2wE,aAAa3wE,KAAK45C,IAAIkrB,IAE3B,IAAI3B,IAAYnjE,KAAK6D,QAAQs/D,SAASC,YAAcpjE,KAAK6D,QAAQs/D,SAASE,aAAerjE,KAAKmjE,YAAa,IAASnjE,KAAKmjE,YAAa,EAGlIp6D,GAAa/I,KAAKgY,KAAKjP,UAAY,IAAM/I,KAAKgY,KAAKjP,UAAY,KAAO/I,KAAKunE,SAAW,gBAAkB,KAAOpE,EAAW,gBAAkB,gBAChJvpB,GAAIkrB,IAAI/7D,UAAY,mBAAqBA,EACzC6wC,EAAIF,KAAK3wC,UAAY,oBAAsBA,EAC3C6wC,EAAID,IAAI5wC,UAAY,mBAAqBA,EAGzC/I,KAAK6G,MAAM8yC,IAAIlb,OAASmb,EAAID,IAAIQ,aAChCn6C,KAAK6G,MAAM8yC,IAAInb,MAAQob,EAAID,IAAIM,YAC/Bj6C,KAAK6G,MAAM6yC,KAAKlb,MAAQob,EAAIF,KAAKO,YACjCj6C,KAAKw+B,MAAQob,EAAIkrB,IAAI7qB,YACrBj6C,KAAKy+B,OAASmb,EAAIkrB,IAAI3qB,aAEtBn6C,KAAKylE,OAAQ,EAGfzlE,KAAK8wE,qBAAqBl3B,EAAIkrB,MAOhC1iE,EAAQ6Q,UAAU0vC,KAAO,WAClB3iD,KAAK0lE,WACR1lE,KAAK0sC,UAOTtqC,EAAQ6Q,UAAU0yD,KAAO,WACvB,GAAI3lE,KAAK0lE,UAAW,CAClB,GAAI9rB,GAAM55C,KAAK45C,GAEXA,GAAIkrB,IAAIz5D,YAAYuuC,EAAIkrB,IAAIz5D,WAAW3G,YAAYk1C,EAAIkrB,KACvDlrB,EAAIF,KAAKruC,YAAYuuC,EAAIF,KAAKruC,WAAW3G,YAAYk1C,EAAIF,MACzDE,EAAID,IAAItuC,YAAYuuC,EAAID,IAAItuC,WAAW3G,YAAYk1C,EAAID,KAE3D35C,KAAK0lE,WAAY,IAQrBtjE,EAAQ6Q,UAAU2vC,YAAc,WAC9B,GAAIhQ,GAAQ5yC,KAAKo6D,WAAWza,SAAS3/C,KAAKgY,KAAK46B,OAC3C8vB,EAAQ1iE,KAAK6D,QAAQ6+D,KAIZ,UAATA,EACF1iE,KAAK2I,KAAOiqC,EAAQ5yC,KAAKw+B,MACP,QAATkkC,EACT1iE,KAAK2I,KAAOiqC,EAGZ5yC,KAAK2I,KAAOiqC,EAAQ5yC,KAAKw+B,MAAQ,EAInCx+B,KAAK45C,IAAIkrB,IAAIh2D,MAAMnG,KAAO3I,KAAK2I,KAAO,KAGtC3I,KAAK45C,IAAIF,KAAK5qC,MAAMnG,KAAOiqC,EAAQ5yC,KAAK6G,MAAM6yC,KAAKlb,MAAQ,EAAI,KAG/Dx+B,KAAK45C,IAAID,IAAI7qC,MAAMnG,KAAOiqC,EAAQ5yC,KAAK6G,MAAM8yC,IAAInb,MAAQ,EAAI,MAO/Dp8B,EAAQ6Q,UAAUs7D,YAAc,WAC9B,GAAIxvB,GAAc/+C,KAAK6D,QAAQk7C,YAAYvtC,KACvCszD,EAAM9kE,KAAK45C,IAAIkrB,IACfprB,EAAO15C,KAAK45C,IAAIF,KAChBC,EAAM35C,KAAK45C,IAAID,GAEnB,IAAmB,OAAfoF,EACF+lB,EAAIh2D,MAAMjG,KAAO7I,KAAK6I,KAAO,GAAK,KAElC6wC,EAAK5qC,MAAMjG,IAAM,IACjB6wC,EAAK5qC,MAAM2vB,OAASz+B,KAAKuL,OAAO1C,IAAM7I,KAAK6I,IAAM,EAAI,KACrD6wC,EAAK5qC,MAAMw/B,OAAS,OACf,CAEL,GAAIujC,GAAgB7xE,KAAKuL,OAAO+0C,QAAQz5C,MAAM43B,OAC1C2b,EAAay3B,EAAgB7xE,KAAKuL,OAAO1C,IAAM7I,KAAKuL,OAAOkzB,OAASz+B,KAAK6I,GAE7Ei8D,GAAIh2D,MAAMjG,KAAO7I,KAAKuL,OAAOkzB,OAASz+B,KAAK6I,IAAM7I,KAAKy+B,QAAU,GAAK,KACrEib,EAAK5qC,MAAMjG,IAAMgpE,EAAgBz3B,EAAa,KAC9CV,EAAK5qC,MAAMw/B,OAAS,IAGtBqL,EAAI7qC,MAAMjG,KAAO7I,KAAK6G,MAAM8yC,IAAIlb,OAAS,EAAI,MAO/Cr8B,EAAQ6Q,UAAU4vC,aAAe,WAC/B,MAAO7iD,MAAKw+B,MAAQ,GAOtBp8B,EAAQ6Q,UAAU6vC,cAAgB,WAChC,MAAO9iD,MAAKw+B,MAAQ,GAGtB3+B,EAAOD,QAAUwC,GAIb,SAASvC,EAAQD,EAASM,GAgB9B,QAASmC,GAAU2V,EAAMoiD,EAAYv2D,GAcnC,GAbA7D,KAAK6G,OACH8yC,KACE9wC,IAAK,EACL21B,MAAO,EACPC,OAAQ,GAEVJ,SACEI,OAAQ,EACRqzC,WAAY,IAKZ95D,GACgBzR,QAAdyR,EAAK46B,MACP,KAAM,IAAI5rC,OAAM,oCAAsCgR,EAI1D9V,GAAK3B,KAAKP,KAAMgY,EAAMoiD,EAAYv2D,GAhCpC,GAAI3B,GAAOhC,EAAoB,GAmC/BmC,GAAU4Q,UAAY,GAAI/Q,GAAK,KAAM,KAAM,MAO3CG,EAAU4Q,UAAU68D,UAAY,SAAU3vB,GAGxC,GAAInD,IAAYmD,EAAMrN,IAAMqN,EAAMvN,OAAS,CAC3C,OAAO5yC,MAAKgY,KAAK46B,MAAQuN,EAAMvN,MAAQoK,GAAYh9C,KAAKgY,KAAK46B,MAAQuN,EAAMrN,IAAMkK,GAMnF36C,EAAU4Q,UAAUy5B,OAAS,WAC3B,GAAIkN,GAAM55C,KAAK45C,GA0Bf,IAzBKA,IAEH55C,KAAK45C,OACLA,EAAM55C,KAAK45C,IAGXA,EAAI7b,MAAQX,SAASM,cAAc,OAInCkc,EAAIvb,QAAUjB,SAASM,cAAc,OACrCkc,EAAIvb,QAAQt1B,UAAY,mBACxB6wC,EAAI7b,MAAMT,YAAYsc,EAAIvb,SAG1Bub,EAAID,IAAMvc,SAASM,cAAc,OACjCkc,EAAI7b,MAAMT,YAAYsc,EAAID,KAG1BC,EAAI7b,MAAM,iBAAmB/9B,KAE7BA,KAAKylE,OAAQ,IAIVzlE,KAAKuL,OACR,KAAM,IAAIvE,OAAM,yCAElB,KAAK4yC,EAAI7b,MAAM1yB,WAAY,CACzB,GAAIo4C,GAAazjD,KAAKuL,OAAOquC,IAAI6J,UACjC,KAAKA,EACH,KAAM,IAAIz8C,OAAM,iEAElBy8C,GAAWnmB,YAAYsc,EAAI7b,OAQ7B,GANA/9B,KAAK0lE,WAAY,EAMb1lE,KAAKylE,MAAO,CACdzlE,KAAKwwE,gBAAgBxwE,KAAK45C,IAAIvb,SAC9Br+B,KAAKywE,aAAazwE,KAAK45C,IAAI7b,OAC3B/9B,KAAK0wE,sBAAsB1wE,KAAK45C,IAAI7b,OACpC/9B,KAAK2wE,aAAa3wE,KAAK45C,IAAI7b,MAE3B,IAAIolC,IAAYnjE,KAAK6D,QAAQs/D,SAASC,YAAcpjE,KAAK6D,QAAQs/D,SAASE,aAAerjE,KAAKmjE,YAAa,IAASnjE,KAAKmjE,YAAa,EAGlIp6D,GAAa/I,KAAKgY,KAAKjP,UAAY,IAAM/I,KAAKgY,KAAKjP,UAAY,KAAO/I,KAAKunE,SAAW,gBAAkB,KAAOpE,EAAW,gBAAkB,gBAChJvpB,GAAI7b,MAAMh1B,UAAY,qBAAuBA,EAC7C6wC,EAAID,IAAI5wC,UAAY,mBAAqBA,EAGzC/I,KAAK6G,MAAM8yC,IAAInb,MAAQob,EAAID,IAAIM,YAC/Bj6C,KAAK6G,MAAM8yC,IAAIlb,OAASmb,EAAID,IAAIQ,aAChCn6C,KAAK6G,MAAMw3B,QAAQI,OAASmb,EAAIvb,QAAQ8b,aAGxCP,EAAIvb,QAAQvvB,MAAMgjE,WAAa,EAAI9xE,KAAK6G,MAAM8yC,IAAInb,MAAQ,KAI1Dx+B,KAAKw+B,MAAQob,EAAI7b,MAAMkc,YACvBj6C,KAAKy+B,OAASmb,EAAI7b,MAAMoc,aAGxBP,EAAID,IAAI7qC,MAAMjG,KAAO7I,KAAKy+B,OAASz+B,KAAK6G,MAAM8yC,IAAIlb,QAAU,EAAI,KAChEmb,EAAID,IAAI7qC,MAAMnG,KAAO3I,KAAK6G,MAAM8yC,IAAInb,MAAQ,EAAI,KAEhDx+B,KAAKylE,OAAQ,EAGfzlE,KAAK8wE,qBAAqBl3B,EAAI7b,QAOhC17B,EAAU4Q,UAAU0vC,KAAO,WACpB3iD,KAAK0lE,WACR1lE,KAAK0sC,UAOTrqC,EAAU4Q,UAAU0yD,KAAO,WACrB3lE,KAAK0lE,YACH1lE,KAAK45C,IAAI7b,MAAM1yB,YACjBrL,KAAK45C,IAAI7b,MAAM1yB,WAAW3G,YAAY1E,KAAK45C,IAAI7b,OAGjD/9B,KAAK0lE,WAAY,IAQrBrjE,EAAU4Q,UAAU2vC,YAAc,WAChC,GAAIhQ,GAAQ5yC,KAAKo6D,WAAWza,SAAS3/C,KAAKgY,KAAK46B,MAE/C5yC,MAAK2I,KAAOiqC,EAAQ5yC,KAAK6G,MAAM8yC,IAAInb,MAGnCx+B,KAAK45C,IAAI7b,MAAMjvB,MAAMnG,KAAO3I,KAAK2I,KAAO,MAO1CtG,EAAU4Q,UAAUs7D,YAAc,WAChC,GAAIxvB,GAAc/+C,KAAK6D,QAAQk7C,YAAYvtC,KACvCusB,EAAQ/9B,KAAK45C,IAAI7b,KAEF,QAAfghB,EACFhhB,EAAMjvB,MAAMjG,IAAM7I,KAAK6I,IAAM,KAE7Bk1B,EAAMjvB,MAAMjG,IAAM7I,KAAKuL,OAAOkzB,OAASz+B,KAAK6I,IAAM7I,KAAKy+B,OAAS,MAQpEp8B,EAAU4Q,UAAU4vC,aAAe,WACjC,MAAO7iD,MAAK6G,MAAM8yC,IAAInb,OAOxBn8B,EAAU4Q,UAAU6vC,cAAgB,WAClC,MAAO9iD,MAAKw+B,MAAQx+B,KAAK6G,MAAM8yC,IAAInb,OAGrC3+B,EAAOD,QAAUyC,GAIb,SAASxC,EAAQD,EAASM,GAoB9B,QAASiC,GAAe6V,EAAMoiD,EAAYv2D,GASxC,GARA7D,KAAK6G,OACHw3B,SACEG,MAAO,IAGXx+B,KAAK8T,UAAW,EAGZkE,EAAM,CACR,GAAkBzR,QAAdyR,EAAK46B,MACP,KAAM,IAAI5rC,OAAM,oCAAsCgR,EAAK3X,GAE7D,IAAgBkG,QAAZyR,EAAK86B,IACP,KAAM,IAAI9rC,OAAM,kCAAoCgR,EAAK3X,IAI7D6B,EAAK3B,KAAKP,KAAMgY,EAAMoiD,EAAYv2D,GAlCpC,GACI3B,IADShC,EAAoB,IACtBA,EAAoB,KAC3BqC,EAAkBrC,EAAoB,IACtCoC,EAAYpC,EAAoB,GAkCpCiC,GAAe8Q,UAAY,GAAI/Q,GAAK,KAAM,KAAM,MAEhDC,EAAe8Q,UAAUs9D,cAAgB,0BACzCpuE,EAAe8Q,UAAUnR,OAAQ,EAOjCK,EAAe8Q,UAAU68D,UAAY,SAAU3vB,GAE7C,MAAOngD,MAAKgY,KAAK46B,MAAQuN,EAAMrN,KAAO9yC,KAAKgY,KAAK86B,IAAMqN,EAAMvN,OAM9DzwC,EAAe8Q,UAAUy5B,OAAS,WAChC,GAAIkN,GAAM55C,KAAK45C,GA4Bf,IA3BKA,IAEH55C,KAAK45C,OACLA,EAAM55C,KAAK45C,IAGXA,EAAIkrB,IAAM1nC,SAASM,cAAc,OAIjCkc,EAAIpP,MAAQpN,SAASM,cAAc,OACnCkc,EAAIpP,MAAMzhC,UAAY,oBACtB6wC,EAAIkrB,IAAIxnC,YAAYsc,EAAIpP,OAGxBoP,EAAIvb,QAAUjB,SAASM,cAAc,OACrCkc,EAAIvb,QAAQt1B,UAAY,mBACxB6wC,EAAIpP,MAAMlN,YAAYsc,EAAIvb,SAM1Br+B,KAAKylE,OAAQ,IAIVzlE,KAAKuL,OACR,KAAM,IAAIvE,OAAM,yCAElB,KAAK4yC,EAAIkrB,IAAIz5D,WAAY,CACvB,GAAI4C,GAAajO,KAAKuL,OAAOquC,IAAI3rC,UACjC,KAAKA,EACH,KAAM,IAAIjH,OAAM,iEAElBiH,GAAWqvB,YAAYsc,EAAIkrB,KAQ7B,GANA9kE,KAAK0lE,WAAY,EAMb1lE,KAAKylE,MAAO,CACdzlE,KAAKwwE,gBAAgBxwE,KAAK45C,IAAIvb,SAC9Br+B,KAAKywE,aAAazwE,KAAK45C,IAAIvb,SAC3Br+B,KAAK0wE,sBAAsB1wE,KAAK45C,IAAIvb,SACpCr+B,KAAK2wE,aAAa3wE,KAAK45C,IAAIkrB,IAG3B,IAAI/7D,IAAa/I,KAAKgY,KAAKjP,UAAY,IAAM/I,KAAKgY,KAAKjP,UAAY,KAAO/I,KAAKunE,SAAW,gBAAkB,GAC5G3tB,GAAIkrB,IAAI/7D,UAAY/I,KAAKuwE,cAAgBxnE,EAGzC/I,KAAK8T,SAA6D,WAAlD/I,OAAO6lE,iBAAiBh3B,EAAIvb,SAASvqB,SAGrD9T,KAAK6G,MAAMw3B,QAAQG,MAAQx+B,KAAK45C,IAAIvb,QAAQ4b,YAC5Cj6C,KAAKy+B,OAAS,EAEdz+B,KAAKylE,OAAQ,IAQjBtjE,EAAe8Q,UAAU0vC,KAAOrgD,EAAU2Q,UAAU0vC,KAMpDxgD,EAAe8Q,UAAU0yD,KAAOrjE,EAAU2Q,UAAU0yD,KAMpDxjE,EAAe8Q,UAAU2vC,YAActgD,EAAU2Q,UAAU2vC,YAM3DzgD,EAAe8Q,UAAUs7D,YAAc,SAAUhqC,GAC/C,GAAIwtC,GAA0C,QAAlC/xE,KAAK6D,QAAQk7C,YAAYvtC,IACrCxR,MAAK45C,IAAIvb,QAAQvvB,MAAMjG,IAAMkpE,EAAQ,GAAK,IAC1C/xE,KAAK45C,IAAIvb,QAAQvvB,MAAMw/B,OAASyjC,EAAQ,IAAM,EAC9C,IAAItzC,EAGJ,IAA2Bl4B,SAAvBvG,KAAKgY,KAAK6vD,SAAwB,CAGpC,GAAImK,GAAehyE,KAAKgY,KAAK6vD,SACzBsF,EAAYntE,KAAKuL,OAAO4hE,UACxBC,EAAgBD,EAAU6E,GAAc5oE,KAE5C,IAAa,GAAT2oE,EAAe,CAEjBtzC,EAASz+B,KAAKuL,OAAO4hE,UAAU6E,GAAcvzC,OAAS8F,EAAO/yB,KAAK2+B,SAClE1R,GAA2B,GAAjB2uC,EAAqB7oC,EAAOya,KAAO,GAAMza,EAAO/yB,KAAK2+B,SAAW,CAC1E,IAAImgC,GAAStwE,KAAKuL,OAAO1C,GACzB,KAAK,GAAIg/D,KAAYsF,GACfA,EAAUnnE,eAAe6hE,IACQ,GAA/BsF,EAAUtF,GAAU30B,SAAmBi6B,EAAUtF,GAAUz+D,MAAQgkE,IACrEkD,GAAUnD,EAAUtF,GAAUppC,OAAS8F,EAAO/yB,KAAK2+B,SAMzDmgC,IAA2B,GAAjBlD,EAAqB7oC,EAAOya,KAAO,GAAMza,EAAO/yB,KAAK2+B,SAAW,EAC1EnwC,KAAK45C,IAAIkrB,IAAIh2D,MAAMjG,IAAMynE,EAAS,KAClCtwE,KAAK45C,IAAIkrB,IAAIh2D,MAAMw/B,OAAS,OAGzB,CACD,GAAIgiC,GAAStwE,KAAKuL,OAAO1C,IACrBopE,EAAc,CAClB,KAAK,GAAIpK,KAAYsF,GACnB,GAAIA,EAAUnnE,eAAe6hE,IACQ,GAA/BsF,EAAUtF,GAAU30B,QAAiB,CACvC,GAAIg/B,GAAY/E,EAAUtF,GAAUppC,OAAS8F,EAAO/yB,KAAK2+B,QACzD8hC,IAAeC,EACX/E,EAAUtF,GAAUz+D,MAAQgkE,IAC9BkD,GAAU4B,GAKlBzzC,EAASz+B,KAAKuL,OAAO4hE,UAAU6E,GAAcvzC,OAAS8F,EAAO/yB,KAAK2+B,SAClEnwC,KAAK45C,IAAIkrB,IAAIh2D,MAAMjG,IAAM7I,KAAKuL,OAAOkzB,OAASwzC,EAAc3B,EAAS,KACrEtwE,KAAK45C,IAAIkrB,IAAIh2D,MAAMw/B,OAAS,QAM1BtuC,MAAKuL,iBAAkBhJ,IAEzBk8B,EAASx5B,KAAKJ,IAAI7E,KAAKuL,OAAOkzB,OAAQz+B,KAAKuL,OAAO+0C,QAAQlB,KAAKC,SAAShJ,OAAO5X,OAAQz+B,KAAKuL,OAAO+0C,QAAQlB,KAAKC,SAAS2D,gBAAgBvkB,QACzIz+B,KAAK45C,IAAIkrB,IAAIh2D,MAAMjG,IAAMkpE,EAAQ,IAAM,GACvC/xE,KAAK45C,IAAIkrB,IAAIh2D,MAAMw/B,OAASyjC,EAAQ,GAAK,MAEzCtzC,EAASz+B,KAAKuL,OAAOkzB,OAErBz+B,KAAK45C,IAAIkrB,IAAIh2D,MAAMjG,IAAM7I,KAAKuL,OAAO1C,IAAM,KAC3C7I,KAAK45C,IAAIkrB,IAAIh2D,MAAMw/B,OAAS,GAGlCtuC,MAAK45C,IAAIkrB,IAAIh2D,MAAM2vB,OAASA,EAAS,MAGvC5+B,EAAOD,QAAUuC,GAIb,SAAStC,EAAQD,EAASM,GAkB9B,QAASgD,GAASk8C,EAAMv7C,GACtB7D,KAAK45C,KACH6J,WAAY,KACZ0uB,SACAC,cACAC,cACAx1C,WACEs1C,SACAC,cACAC,gBAGJryE,KAAK6G,OACHs5C,OACEvN,MAAO,EACPE,IAAK,EACLy4B,YAAa,GAEf+G,QAAS,GAGXtyE,KAAK4+C,gBACHG,aACEC,KAAM,UAERuzB,iBAAiB,EACjBC,iBAAiB,EACjBC,cAAe,EACfp/D,OAAQtR,EAAS0pE,OACjB1nE,OAAQA,EACR27C,SAAU,MAEZ1/C,KAAK6D,QAAUlD,EAAKgG,UAAW3G,KAAK4+C,gBAEpC5+C,KAAKo/C,KAAOA,EAGZp/C,KAAKm/C,UAELn/C,KAAKg/B,WAAWn7B,GArDlB,GAAIlD,GAAOT,EAAoB,GAC3BsC,EAAYtC,EAAoB,IAChC6B,EAAW7B,EAAoB,IAC/B0B,EAAW1B,EAAoB,IAC/B6D,EAAS7D,EAAoB,EAoDjCgD,GAAS+P,UAAY,GAAIzQ,GAUzBU,EAAS+P,UAAU+rB,WAAa,SAAUn7B,GACpCA,IAEFlD,EAAKiG,iBAAiB,kBAAmB,kBAAmB,gBAAiB,cAAe,WAAY,UAAW5G,KAAK6D,QAASA,GAGjIlD,EAAKsG,qBAAqB,UAAWjH,KAAK6D,QAASA,GAE/C,eAAiBA,KACgB,gBAAxBA,GAAQk7C,YACjB/+C,KAAK6D,QAAQk7C,YAAYC,KAAOn7C,EAAQk7C,YACA,gBAAxBl7C,GAAQk7C,aAA4B,QAAUl7C,GAAQk7C,cACtE/+C,KAAK6D,QAAQk7C,YAAYC,KAAOn7C,EAAQk7C,YAAYC,OAMpD,UAAYn7C,KACe,kBAAlBE,GAAOuP,OAEhBvP,EAAOuP,OAAOzP,EAAQyP,QAEtBvP,EAAOgyB,KAAKlyB,EAAQyP,WAS5BpQ,EAAS+P,UAAUksC,QAAU,WAC3Bn/C,KAAK45C,IAAI6J,WAAarmB,SAASM,cAAc,OAC7C19B,KAAK45C,IAAI3rC,WAAamvB,SAASM,cAAc,OAE7C19B,KAAK45C,IAAI6J,WAAW16C,UAAY,+BAChC/I,KAAK45C,IAAI3rC,WAAWlF,UAAY,gCAMlC7F,EAAS+P,UAAUksB,QAAU,WAEvBn/B,KAAK45C,IAAI6J,WAAWp4C,YACtBrL,KAAK45C,IAAI6J,WAAWp4C,WAAW3G,YAAY1E,KAAK45C,IAAI6J,YAElDzjD,KAAK45C,IAAI3rC,WAAW5C,YACtBrL,KAAK45C,IAAI3rC,WAAW5C,WAAW3G,YAAY1E,KAAK45C,IAAI3rC,YAGtDjO,KAAKo/C,KAAO,MAOdl8C,EAAS+P,UAAUy5B,OAAS,WAC1B,GAAI7lC,GAAQ7G,KAAK6G,MACb48C,EAAazjD,KAAK45C,IAAI6J,WACtBx1C,EAAajO,KAAK45C,IAAI3rC,WAGtB1C,EAA0C,OAAjCvL,KAAK6D,QAAQk7C,YAAYC,KAAgBh/C,KAAKo/C,KAAKxF,IAAI/wC,IAAM7I,KAAKo/C,KAAKxF,IAAItL,OACpFokC,EAAgBjvB,EAAWp4C,aAAeE,CAG9CvL,MAAK2yE,oBAGL,IAAIJ,GAAkBvyE,KAAK6D,QAAQ0uE,iBAAqD,SAAlCvyE,KAAK6D,QAAQk7C,YAAYC,KAC3EwzB,EAAkBxyE,KAAK6D,QAAQ2uE,iBAAqD,SAAlCxyE,KAAK6D,QAAQk7C,YAAYC,IAG/En4C,GAAM+rE,iBAAmBL,EAAkB1rE,EAAMgsE,gBAAkB,EACnEhsE,EAAMisE,iBAAmBN,EAAkB3rE,EAAMksE,gBAAkB,EACnElsE,EAAM43B,OAAS53B,EAAM+rE,iBAAmB/rE,EAAMisE,iBAC9CjsE,EAAM23B,MAAQilB,EAAWxJ,YAEzBpzC,EAAMmsE,gBAAkBhzE,KAAKo/C,KAAKC,SAAS3/C,KAAK++B,OAAS53B,EAAMisE,kBAAqD,OAAjC9yE,KAAK6D,QAAQk7C,YAAYC,KAAgBh/C,KAAKo/C,KAAKC,SAAS/Q,OAAO7P,OAASz+B,KAAKo/C,KAAKC,SAASx2C,IAAI41B,QACtL53B,EAAMosE,eAAiB,EACvBpsE,EAAMqsE,gBAAkBrsE,EAAMmsE,gBAAkBnsE,EAAMisE,iBACtDjsE,EAAMssE,eAAiB,CAGvB,IAAIC,GAAwB3vB,EAAW4vB,YACnCC,EAAwBrlE,EAAWolE,WAoBvC,OAnBA5vB,GAAWp4C,YAAco4C,EAAWp4C,WAAW3G,YAAY++C,GAC3Dx1C,EAAW5C,YAAc4C,EAAW5C,WAAW3G,YAAYuJ,GAE3Dw1C,EAAW30C,MAAM2vB,OAASz+B,KAAK6G,MAAM43B,OAAS,KAE9Cz+B,KAAKuzE,iBAGDH,EACF7nE,EAAOkyB,aAAagmB,EAAY2vB,GAEhC7nE,EAAO+xB,YAAYmmB,GAEjB6vB,EACFtzE,KAAKo/C,KAAKxF,IAAI8kB,mBAAmBjhC,aAAaxvB,EAAYqlE,GAE1DtzE,KAAKo/C,KAAKxF,IAAI8kB,mBAAmBphC,YAAYrvB,GAGxCjO,KAAK+7D,cAAgB2W,GAO9BxvE,EAAS+P,UAAUsgE,eAAiB,WAClC,GAAIx0B,GAAc/+C,KAAK6D,QAAQk7C,YAAYC,KAGvCpM,EAAQjyC,EAAKgH,QAAQ3H,KAAKo/C,KAAKe,MAAMvN,MAAO,UAC5CE,EAAMnyC,EAAKgH,QAAQ3H,KAAKo/C,KAAKe,MAAMrN,IAAK,UACxC0gC,EAAgBxzE,KAAKo/C,KAAKz+C,KAAKo/C,QAAQ//C,KAAK6G,MAAM4sE,gBAAkB,IAAMzzE,KAAK6D,QAAQ4uE,eAAe3qE,UACtGyjE,EAAciI,EAAgB5xE,EAAS45D,wBAAwBx7D,KAAK6D,QAAQE,OAAQ/D,KAAKo/C,KAAKI,YAAax/C,KAAKo/C,KAAKe,MAAOqzB,EAChIjI,IAAevrE,KAAKo/C,KAAKz+C,KAAKo/C,OAAO,GAAGj4C,SAExC,IAAI6qC,GAAO,GAAI5wC,GAAS,GAAIsD,MAAKutC,GAAQ,GAAIvtC,MAAKytC,GAAMy4B,EAAavrE,KAAKo/C,KAAKI,YAC/E7M,GAAKi5B,UAAU5rE,KAAK6D,QAAQE,QACxB/D,KAAK6D,QAAQwP,QACfs/B,EAAKk5B,UAAU7rE,KAAK6D,QAAQwP,QAE1BrT,KAAK6D,QAAQ67C,UACf/M,EAAKs5B,SAASjsE,KAAK6D,QAAQ67C,UAE7B1/C,KAAK2yC,KAAOA,CAKZ,IAAIiH,GAAM55C,KAAK45C,GACfA,GAAI/c,UAAUs1C,MAAQv4B,EAAIu4B,MAC1Bv4B,EAAI/c,UAAUu1C,WAAax4B,EAAIw4B,WAC/Bx4B,EAAI/c,UAAUw1C,WAAaz4B,EAAIy4B,WAC/Bz4B,EAAIu4B,SACJv4B,EAAIw4B,cACJx4B,EAAIy4B,aAEJ,IAAI7U,GACAlmD,EACAsmB,EACA81C,EACAhH,EAASiH,EAETC,EACAl6B,EACAm6B,EAIA9qE,EAPAy1B,EAAQ,EAIRs1C,EAAmBvtE,OACnB0rB,EAAQ,EACR8hD,EAAM,GAMV,KAHAphC,EAAKC,QACLt7B,EAAOq7B,EAAKE,aACZ6gC,EAAQ1zE,KAAKo/C,KAAKz+C,KAAKg/C,SAASroC,GACzBq7B,EAAKq5B,WAAqB+H,EAAR9hD,GAAa,CACpCA,IAEAy6C,EAAU/5B,EAAK+5B,UACf3jE,EAAY4pC,EAAKk6B,eACjBgH,EAAalhC,EAAKg6B,gBAElBnP,EAAUlmD,EACVsmB,EAAI81C,EAEJ/gC,EAAKr7B,OACLA,EAAOq7B,EAAKE,aACZ8gC,EAAchhC,EAAK+5B,UACnBgH,EAAQ1zE,KAAKo/C,KAAKz+C,KAAKg/C,SAASroC,GAEhCs8D,EAAYp1C,EACZA,EAAQk1C,EAAQ91C,CAChB,IAAIo2C,GAAgBx1C,GAAqB,GAAZo1C,CAE7B,IAAI5zE,KAAK6D,QAAQ0uE,iBAAmByB,EAAe,CACjD,GAAI91C,GAAQl+B,KAAKi0E,kBAAkBr2C,EAAGi2C,EAAY90B,EAAah2C,EAC/Dm1B,GAAMpvB,MAAM0vB,MAAQA,EAAQ,KAG1BkuC,GAAW1sE,KAAK6D,QAAQ2uE,iBACtB50C,EAAI,IACkBr3B,QAApButE,IACFA,EAAmBl2C,GAErBM,EAAQl+B,KAAKk0E,kBAAkBt2C,EAAG+U,EAAKi6B,gBAAiB7tB,EAAah2C,IAEvE2wC,EAAO15C,KAAKm0E,kBAAkBv2C,EAAGY,EAAOugB,EAAah2C,IAGjDirE,EACFt6B,EAAO15C,KAAKo0E,kBAAkBx2C,EAAGY,EAAOugB,EAAah2C,GAEjD2wC,IAEFA,EAAK5qC,MAAM0vB,MAAQjyB,SAASmtC,EAAK5qC,MAAM0vB,OAASA,EAAQ,MAYhE,GANIvM,IAAU8hD,GAAQM,IACpB10D,QAAQH,KAAK,gFAAkFu0D,EAAM,WACrGM,GAAoB,GAIlBr0E,KAAK6D,QAAQ2uE,gBAAiB,CAChC,GAAI8B,GAAWt0E,KAAKo/C,KAAKz+C,KAAKo/C,OAAO,GACjCw0B,EAAW5hC,EAAKi6B,cAAc0H,GAC9BE,EAAYD,EAASjuE,QAAUtG,KAAK6G,MAAM4tE,gBAAkB,IAAM,IAE9CluE,QAApButE,GAA6CA,EAAZU,IACnCx0E,KAAKk0E,kBAAkB,EAAGK,EAAUx1B,EAAah2C,GAKrDpI,EAAK2I,QAAQtJ,KAAK45C,IAAI/c,UAAW,SAAUz0B,GACzC,KAAOA,EAAI9B,QAAQ,CACjB,GAAImC,GAAOL,EAAIssE,KACXjsE,IAAQA,EAAK4C,YACf5C,EAAK4C,WAAW3G,YAAY+D,OAepCvF,EAAS+P,UAAUghE,kBAAoB,SAAUr2C,EAAGiW,EAAMkL,EAAah2C,GAErE,GAAIm1B,GAAQl+B,KAAK45C,IAAI/c,UAAUw1C,WAAWl1C,OAE1C,KAAKe,EAAO,CAEV,GAAIG,GAAUjB,SAASu3C,eAAe,GACtCz2C,GAAQd,SAASM,cAAc,OAC/BQ,EAAMZ,YAAYe,GAClBr+B,KAAK45C,IAAI6J,WAAWnmB,YAAYY,GAWlC,MATAl+B,MAAK45C,IAAIy4B,WAAW7qE,KAAK02B,GAEzBA,EAAM02C,WAAW,GAAGC,UAAYhhC,EAEhC3V,EAAMpvB,MAAMjG,IAAqB,OAAfk2C,EAAuB/+C,KAAK6G,MAAMisE,iBAAmB,KAAO,IAC9E50C,EAAMpvB,MAAMnG,KAAOi1B,EAAI,KACvBM,EAAMn1B,UAAY,sBAAwBA,EAGnCm1B,GAYTh7B,EAAS+P,UAAUihE,kBAAoB,SAAUt2C,EAAGiW,EAAMkL,EAAah2C,GAErE,GAAIm1B,GAAQl+B,KAAK45C,IAAI/c,UAAUu1C,WAAWj1C,OAE1C,KAAKe,EAAO,CAEV,GAAIG,GAAUjB,SAASu3C,eAAe9gC,EACtC3V,GAAQd,SAASM,cAAc,OAC/BQ,EAAMZ,YAAYe,GAClBr+B,KAAK45C,IAAI6J,WAAWnmB,YAAYY,GAWlC,MATAl+B,MAAK45C,IAAIw4B,WAAW5qE,KAAK02B,GAEzBA,EAAM02C,WAAW,GAAGC,UAAYhhC,EAChC3V,EAAMn1B,UAAY,sBAAwBA,EAG1Cm1B,EAAMpvB,MAAMjG,IAAqB,OAAfk2C,EAAuB,IAAM/+C,KAAK6G,MAAM+rE,iBAAmB,KAC7E10C,EAAMpvB,MAAMnG,KAAOi1B,EAAI,KAEhBM,GAYTh7B,EAAS+P,UAAUmhE,kBAAoB,SAAUx2C,EAAGY,EAAOugB,EAAah2C,GAEtE,GAAI2wC,GAAO15C,KAAK45C,IAAI/c,UAAUs1C,MAAMh1C,OAC/Buc,KAEHA,EAAOtc,SAASM,cAAc,OAC9B19B,KAAK45C,IAAI3rC,WAAWqvB,YAAYoc,IAElC15C,KAAK45C,IAAIu4B,MAAM3qE,KAAKkyC,EAEpB,IAAI7yC,GAAQ7G,KAAK6G,KAYjB,OAXmB,OAAfk4C,EACFrF,EAAK5qC,MAAMjG,IAAMhC,EAAMisE,iBAAmB,KAE1Cp5B,EAAK5qC,MAAMjG,IAAM7I,KAAKo/C,KAAKC,SAASx2C,IAAI41B,OAAS,KAEnDib,EAAK5qC,MAAM2vB,OAAS53B,EAAMmsE,gBAAkB,KAC5Ct5B,EAAK5qC,MAAMnG,KAAOi1B,EAAI/2B,EAAMosE,eAAiB,EAAI,KACjDv5B,EAAK5qC,MAAM0vB,MAAQA,EAAQ,KAE3Bkb,EAAK3wC,UAAY,mCAAqCA,EAE/C2wC,GAYTx2C,EAAS+P,UAAUkhE,kBAAoB,SAAUv2C,EAAGY,EAAOugB,EAAah2C,GAEtE,GAAI2wC,GAAO15C,KAAK45C,IAAI/c,UAAUs1C,MAAMh1C,OAC/Buc,KAEHA,EAAOtc,SAASM,cAAc,OAC9B19B,KAAK45C,IAAI3rC,WAAWqvB,YAAYoc,IAElC15C,KAAK45C,IAAIu4B,MAAM3qE,KAAKkyC,EAEpB,IAAI7yC,GAAQ7G,KAAK6G,KAYjB,OAXmB,OAAfk4C,EACFrF,EAAK5qC,MAAMjG,IAAM,IAEjB6wC,EAAK5qC,MAAMjG,IAAM7I,KAAKo/C,KAAKC,SAASx2C,IAAI41B,OAAS,KAEnDib,EAAK5qC,MAAMnG,KAAOi1B,EAAI/2B,EAAMssE,eAAiB,EAAI,KACjDz5B,EAAK5qC,MAAM2vB,OAAS53B,EAAMqsE,gBAAkB,KAC5Cx5B,EAAK5qC,MAAM0vB,MAAQA,EAAQ,KAE3Bkb,EAAK3wC,UAAY,mCAAqCA,EAE/C2wC,GAQTx2C,EAAS+P,UAAU0/D,mBAAqB,WAKjC3yE,KAAK45C,IAAIk7B,mBACZ90E,KAAK45C,IAAIk7B,iBAAmB13C,SAASM,cAAc,OACnD19B,KAAK45C,IAAIk7B,iBAAiB/rE,UAAY,iCACtC/I,KAAK45C,IAAIk7B,iBAAiBhmE,MAAM4/B,SAAW,WAE3C1uC,KAAK45C,IAAIk7B,iBAAiBx3C,YAAYF,SAASu3C,eAAe,MAC9D30E,KAAK45C,IAAI6J,WAAWnmB,YAAYt9B,KAAK45C,IAAIk7B,mBAE3C90E,KAAK6G,MAAMgsE,gBAAkB7yE,KAAK45C,IAAIk7B,iBAAiBplC,aACvD1vC,KAAK6G,MAAM4sE,eAAiBzzE,KAAK45C,IAAIk7B,iBAAiBpqC,YAGjD1qC,KAAK45C,IAAIm7B,mBACZ/0E,KAAK45C,IAAIm7B,iBAAmB33C,SAASM,cAAc,OACnD19B,KAAK45C,IAAIm7B,iBAAiBhsE,UAAY,iCACtC/I,KAAK45C,IAAIm7B,iBAAiBjmE,MAAM4/B,SAAW,WAE3C1uC,KAAK45C,IAAIm7B,iBAAiBz3C,YAAYF,SAASu3C,eAAe,MAC9D30E,KAAK45C,IAAI6J,WAAWnmB,YAAYt9B,KAAK45C,IAAIm7B,mBAE3C/0E,KAAK6G,MAAMksE,gBAAkB/yE,KAAK45C,IAAIm7B,iBAAiBrlC,aACvD1vC,KAAK6G,MAAM4tE,eAAiBz0E,KAAK45C,IAAIm7B,iBAAiBrqC,YAGxD,IAAI2pC,IAAoB,CAExBx0E,GAAOD,QAAUsD,GAIb,SAASrD,EAAQD,EAASM,GAmB9B,QAASq+D,GAAUn6B,GACjBpkC,KAAKqgE,QAAS,EAEdrgE,KAAK45C,KACHxV,UAAWA,GAGbpkC,KAAK45C,IAAIo7B,QAAU53C,SAASM,cAAc,OAC1C19B,KAAK45C,IAAIo7B,QAAQjsE,UAAY,cAE7B/I,KAAK45C,IAAIxV,UAAU9G,YAAYt9B,KAAK45C,IAAIo7B,SAExCh1E,KAAKokD,OAASpgD,EAAOhE,KAAK45C,IAAIo7B,SAC9Bh1E,KAAKokD,OAAOhlB,GAAG,MAAOp/B,KAAKi1E,cAAc11B,KAAKv/C,MAG9C,IAAIggC,GAAKhgC,KACLqkD,GAAU,MAAO,YAAa,QAAS,QAAS,MAAO,WAAY,UAAW,SAClFA,GAAO/6C,QAAQ,SAAUwB,GACvBk1B,EAAGokB,OAAOhlB,GAAGt0B,EAAO,SAAUA,GAC5BA,EAAM25C,sBAKNrnB,UAAYA,SAASgiB,OACvBp/C,KAAKk1E,QAAU,SAAUpqE,GAClBqqE,EAAWrqE,EAAMI,OAAQk5B,IAC5BpE,EAAGo1C,cAGPh4C,SAASgiB,KAAKj1C,iBAAiB,QAASnK,KAAKk1E,UAGzB3uE,SAAlBvG,KAAKiE,UACPjE,KAAKiE,SAASk7B,UAEhBn/B,KAAKiE,SAAWA,IAGhBjE,KAAKq1E,YAAcr1E,KAAKo1E,WAAW71B,KAAKv/C,MAsF1C,QAASm1E,GAAW/qE,EAASmB,GAC3B,KAAOnB,GAAS,CACd,GAAIA,IAAYmB,EACd,OAAO,CAETnB,GAAUA,EAAQiB,WAEpB,OAAO,EApJT,GAAIpH,GAAW/D,EAAoB,IAC/BgoC,EAAUhoC,EAAoB,IAC9B8D,EAAS9D,EAAoB,IAC7BS,EAAOT,EAAoB,EAwD/BgoC,GAAQq2B,EAAUtrD,WAGlBsrD,EAAUf,QAAU,KAKpBe,EAAUtrD,UAAUksB,QAAU,WAC5Bn/B,KAAKo1E,aAGLp1E,KAAK45C,IAAIo7B,QAAQ3pE,WAAW3G,YAAY1E,KAAK45C,IAAIo7B,SAG7Ch1E,KAAKk1E,SACP93C,SAASgiB,KAAKz0C,oBAAoB,QAAS3K,KAAKk1E,SAIlDl1E,KAAKokD,OAAOjlB,UACZn/B,KAAKokD,OAAS,MAQhBma,EAAUtrD,UAAUqiE,SAAW,WAEzB/W,EAAUf,SACZe,EAAUf,QAAQ4X,aAEpB7W,EAAUf,QAAUx9D,KAEpBA,KAAKqgE,QAAS,EACdrgE,KAAK45C,IAAIo7B,QAAQlmE,MAAMymE,QAAU,OACjC50E,EAAKmI,aAAa9I,KAAK45C,IAAIxV,UAAW,cAEtCpkC,KAAK63C,KAAK,UACV73C,KAAK63C,KAAK,YAIV73C,KAAKiE,SAASs7C,KAAK,MAAOv/C,KAAKq1E,cAOjC9W,EAAUtrD,UAAUmiE,WAAa,WAC/Bp1E,KAAKqgE,QAAS,EACdrgE,KAAK45C,IAAIo7B,QAAQlmE,MAAMymE,QAAU,GACjC50E,EAAKwI,gBAAgBnJ,KAAK45C,IAAIxV,UAAW,cACzCpkC,KAAKiE,SAASuxE,OAAO,MAAOx1E,KAAKq1E,aAEjCr1E,KAAK63C,KAAK,UACV73C,KAAK63C,KAAK,eAQZ0mB,EAAUtrD,UAAUgiE,cAAgB,SAAUnqE,GAE5C9K,KAAKs1E,WACLxqE,EAAM25C,mBAsBR5kD,EAAOD,QAAU2+D,GAIb,SAAS1+D,EAAQD,EAASM,GAE9B,GAAI8jD,GAAgCC,EAA8BC,GAOjE,SAAUxkD,EAAMC,GAGXskD,KAAmCD,EAAiC,EAAWE,EAA2E,kBAAnCF,GAAiDA,EAA+BjxC,MAAMnT,EAASqkD,GAAiCD,IAAmEz9C,SAAlC29C,IAAgDrkD,EAAOD,QAAUskD,KAU7VlkD,KAAM,WAEN,QAASiE,GAASJ,GAChB,GAOI4C,GAPAoE,EAAiBhH,GAAWA,EAAQgH,iBAAkB,EAEtDu5B,EAAYvgC,GAAWA,EAAQugC,WAAar5B,OAE5C0qE,KACAC,GAAUC,WAAYC,UACtBC,IAIJ,KAAKpvE,EAAI,GAAS,KAALA,EAAUA,IAAMovE,EAAM1wE,OAAO2wE,aAAarvE,KAAOoR,KAAK,IAAMpR,EAAI,IAAK02B,OAAO,EAEzF,KAAK12B,EAAI,GAAS,IAALA,EAASA,IAAMovE,EAAM1wE,OAAO2wE,aAAarvE,KAAOoR,KAAKpR,EAAG02B,OAAO,EAE5E,KAAK12B,EAAI,EAAS,GAALA,EAAUA,IAAMovE,EAAM,GAAKpvE,IAAMoR,KAAK,GAAKpR,EAAG02B,OAAO,EAElE,KAAK12B,EAAI,EAAS,IAALA,EAAWA,IAAMovE,EAAM,IAAMpvE,IAAMoR,KAAK,IAAMpR,EAAG02B,OAAO,EAErE,KAAK12B,EAAI,EAAS,GAALA,EAAUA,IAAMovE,EAAM,MAAQpvE,IAAMoR,KAAK,GAAKpR,EAAG02B,OAAO,EAGrE04C,GAAM,SAAWh+D,KAAK,IAAKslB,OAAO,GAClC04C,EAAM,SAAWh+D,KAAK,IAAKslB,OAAO,GAClC04C,EAAM,SAAWh+D,KAAK,IAAKslB,OAAO,GAClC04C,EAAM,SAAWh+D,KAAK,IAAKslB,OAAO,GAClC04C,EAAM,SAAWh+D,KAAK,IAAKslB,OAAO,GAElC04C,EAAY,MAAMh+D,KAAK,GAAIslB,OAAO,GAClC04C,EAAU,IAAQh+D,KAAK,GAAIslB,OAAO,GAClC04C,EAAa,OAAKh+D,KAAK,GAAIslB,OAAO,GAClC04C,EAAY,MAAMh+D,KAAK,GAAIslB,OAAO,GAElC04C,EAAa,OAAKh+D,KAAK,GAAIslB,OAAO,GAClC04C,EAAa,OAAKh+D,KAAK,GAAIslB,OAAO,GAClC04C,EAAa,OAAKh+D,KAAK,GAAIslB,MAAO52B,QAClCsvE,EAAW,KAAOh+D,KAAK,GAAIslB,OAAO,GAClC04C,EAAiB,WAAKh+D,KAAK,EAAGslB,OAAO,GACrC04C,EAAW,KAAWh+D,KAAK,EAAGslB,OAAO,GACrC04C,EAAY,MAAUh+D,KAAK,GAAIslB,OAAO,GACtC04C,EAAW,KAAWh+D,KAAK,GAAIslB,OAAO,GACtC04C,EAAM,WAAgBh+D,KAAK,GAAIslB,OAAO,GACtC04C,EAAc,QAAQh+D,KAAK,GAAIslB,OAAO,GACtC04C,EAAgB,UAAMh+D,KAAK,GAAIslB,OAAO,GAEtC04C,EAAM,MAAYh+D,KAAK,IAAKslB,OAAO,GACnC04C,EAAM,MAAYh+D,KAAK,IAAKslB,OAAO,GACnC04C,EAAM,MAAYh+D,KAAK,IAAKslB,OAAO,GACnC04C,EAAM,MAAYh+D,KAAK,IAAKslB,OAAO,EAInC,IAAI44C,GAAO,SAASjrE,GAAQkrE,EAAYlrE,EAAM,YAC1CmrE,EAAK,SAASnrE,GAAQkrE,EAAYlrE,EAAM,UAGxCkrE,EAAc,SAASlrE,EAAMlD,GAC/B,GAAoCrB,SAAhCmvE,EAAO9tE,GAAMkD,EAAMorE,SAAwB,CAE7C,IAAK,GADDC,GAAQT,EAAO9tE,GAAMkD,EAAMorE,SACtBzvE,EAAI,EAAGA,EAAI0vE,EAAM7vE,OAAQG,IACTF,SAAnB4vE,EAAM1vE,GAAG02B,MACXg5C,EAAM1vE,GAAGoD,GAAGiB,GAEa,GAAlBqrE,EAAM1vE,GAAG02B,OAAmC,GAAlBryB,EAAM+/D,SACvCsL,EAAM1vE,GAAGoD,GAAGiB,GAEa,GAAlBqrE,EAAM1vE,GAAG02B,OAAoC,GAAlBryB,EAAM+/D,UACxCsL,EAAM1vE,GAAGoD,GAAGiB,EAIM,IAAlBD,GACFC,EAAMD,kBA4FZ,OAtFA4qE,GAAiBl2B,KAAO,SAAS51C,EAAKJ,EAAU3B,GAI9C,GAHarB,SAATqB,IACFA,EAAO,WAEUrB,SAAfsvE,EAAMlsE,GACR,KAAM,IAAI3C,OAAM,oBAAsB2C,EAEFpD,UAAlCmvE,EAAO9tE,GAAMiuE,EAAMlsE,GAAKkO,QAC1B69D,EAAO9tE,GAAMiuE,EAAMlsE,GAAKkO,UAE1B69D,EAAO9tE,GAAMiuE,EAAMlsE,GAAKkO,MAAMrQ,MAAMqC,GAAGN,EAAU4zB,MAAM04C,EAAMlsE,GAAKwzB,SAKpEs4C,EAAiBW,QAAU,SAAS7sE,EAAU3B,GAC/BrB,SAATqB,IACFA,EAAO,UAET,KAAK,GAAI+B,KAAOksE,GACVA,EAAM7vE,eAAe2D,IACvB8rE,EAAiBl2B,KAAK51C,EAAIJ,EAAS3B,IAMzC6tE,EAAiBY,OAAS,SAASvrE,GACjC,IAAK,GAAInB,KAAOksE,GACd,GAAIA,EAAM7vE,eAAe2D,GAAM,CAC7B,GAAsB,GAAlBmB,EAAM+/D,UAAwC,GAApBgL,EAAMlsE,GAAKwzB,OAAiBryB,EAAMorE,SAAWL,EAAMlsE,GAAKkO,KACpF,MAAOlO,EAEJ,IAAsB,GAAlBmB,EAAM+/D,UAAyC,GAApBgL,EAAMlsE,GAAKwzB,OAAkBryB,EAAMorE,SAAWL,EAAMlsE,GAAKkO,KAC3F,MAAOlO,EAEJ,IAAImB,EAAMorE,SAAWL,EAAMlsE,GAAKkO,MAAe,SAAPlO,EAC3C,MAAOA,GAIb,MAAO,wCAIT8rE,EAAiBD,OAAS,SAAS7rE,EAAKJ,EAAU3B,GAIhD,GAHarB,SAATqB,IACFA,EAAO,WAEUrB,SAAfsvE,EAAMlsE,GACR,KAAM,IAAI3C,OAAM,oBAAsB2C,EAExC,IAAiBpD,SAAbgD,EAAwB,CAC1B,GAAI+sE,MACAH,EAAQT,EAAO9tE,GAAMiuE,EAAMlsE,GAAKkO,KACpC,IAActR,SAAV4vE,EACF,IAAK,GAAI1vE,GAAI,EAAGA,EAAI0vE,EAAM7vE,OAAQG,KAC1B0vE,EAAM1vE,GAAGoD,IAAMN,GAAY4sE,EAAM1vE,GAAG02B,OAAS04C,EAAMlsE,GAAKwzB,QAC5Dm5C,EAAY9uE,KAAKkuE,EAAO9tE,GAAMiuE,EAAMlsE,GAAKkO,MAAMpR,GAIrDivE,GAAO9tE,GAAMiuE,EAAMlsE,GAAKkO,MAAQy+D,MAGhCZ,GAAO9tE,GAAMiuE,EAAMlsE,GAAKkO,UAK5B49D,EAAiB7f,MAAQ,WACvB8f,GAAUC,WAAYC,WAIxBH,EAAiBt2C,QAAU,WACzBu2C,GAAUC,WAAYC,UACtBxxC,EAAUz5B,oBAAoB,UAAWorE,GAAM,GAC/C3xC,EAAUz5B,oBAAoB,QAASsrE,GAAI,IAI7C7xC,EAAUj6B,iBAAiB,UAAU4rE,GAAK,GAC1C3xC,EAAUj6B,iBAAiB,QAAQ8rE,GAAG,GAG/BR,EAGT,MAAOxxE,MAQL,SAASpE,EAAQD,EAASM,GAqB9B,QAASwC,GAAW08C,EAAMv7C,GACxB7D,KAAKo/C,KAAOA,EAGZp/C,KAAK4+C,gBACH76C,OAAQA,EACR2T,QAASA,EACTpE,OAAQ,KACRjT,GAAIkG,OACJm6D,MAAOn6D,QAETvG,KAAK6D,QAAUlD,EAAKgG,UAAW3G,KAAK4+C,gBAEhC/6C,GAAWA,EAAQmnB,KACrBhrB,KAAKojD,WAAav/C,EAAQmnB,KAE1BhrB,KAAKojD,WAAa,GAAI/9C,MAGxBrF,KAAKu2E,eAELv2E,KAAKg/B,WAAWn7B,GAGhB7D,KAAKm/C,UAzCP,GAAIn7C,GAAS9D,EAAoB,IAC7BS,EAAOT,EAAoB,GAC3BsC,EAAYtC,EAAoB,IAChC6D,EAAS7D,EAAoB,GAC7BwX,EAAUxX,EAAoB,GAwClCwC,GAAWuQ,UAAY,GAAIzQ,GAS3BE,EAAWuQ,UAAU+rB,WAAa,SAAUn7B,GACtCA,GAEFlD,EAAKiG,iBAAiB,SAAU,SAAU,UAAW,MAAO5G,KAAK6D,QAASA,IAQ9EnB,EAAWuQ,UAAUksC,QAAU,WAC7B,GAAI9C,GAAMjf,SAASM,cAAc,MACjC2e,GAAI,eAAiBr8C,KACrBq8C,EAAItzC,UAAY,oBAAsB/I,KAAK6D,QAAQxD,IAAM,IACzDg8C,EAAIvtC,MAAM4/B,SAAW,WACrB2N,EAAIvtC,MAAMjG,IAAM,MAChBwzC,EAAIvtC,MAAM2vB,OAAS,OACnBz+B,KAAKq8C,IAAMA,CAEX,IAAIm6B,GAAOp5C,SAASM,cAAc,MAClC84C,GAAK1nE,MAAM4/B,SAAW,WACtB8nC,EAAK1nE,MAAMjG,IAAM,MACjB2tE,EAAK1nE,MAAMnG,KAAO,QAClB6tE,EAAK1nE,MAAM2vB,OAAS,OACpB+3C,EAAK1nE,MAAM0vB,MAAQ,OACnB6d,EAAI/e,YAAYk5C,GAGhBx2E,KAAKokD,OAAS,GAAIpgD,GAAOwyE,GACzBx2E,KAAKokD,OAAOhlB,GAAG,WAAYp/B,KAAK04D,aAAanZ,KAAKv/C,OAClDA,KAAKokD,OAAOhlB,GAAG,UAAWp/B,KAAK24D,QAAQpZ,KAAKv/C,OAC5CA,KAAKokD,OAAOhlB,GAAG,SAAUp/B,KAAK44D,WAAWrZ,KAAKv/C,OAC9CA,KAAKokD,OAAOptB,IAAI,OAAO5e,KAAM0b,UAAW,EAAGpJ,UAAW,MAMxDhoB,EAAWuQ,UAAUksB,QAAU,WAC7Bn/B,KAAK2lE,OAEL3lE,KAAKokD,OAAOjlB,UACZn/B,KAAKokD,OAAS,KAEdpkD,KAAKo/C,KAAO,MAOd18C,EAAWuQ,UAAUy5B,OAAS,WAC5B,GAAInhC,GAASvL,KAAKo/C,KAAKxF,IAAI8kB,kBACvB1+D,MAAKq8C,IAAIhxC,YAAcE,IAErBvL,KAAKq8C,IAAIhxC,YACXrL,KAAKq8C,IAAIhxC,WAAW3G,YAAY1E,KAAKq8C,KAEvC9wC,EAAO+xB,YAAYt9B,KAAKq8C,KAG1B,IAAIze,GAAI59B,KAAKo/C,KAAKz+C,KAAKg/C,SAAS3/C,KAAKojD,YAEjC9vC,EAAStT,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,OAC1CA,KACEtT,KAAKy2E,SACR92D,QAAQw+B,IAAI,6BAAgCn+C,KAAK6D,QAAQyP,OAAS,sEAClEtT,KAAKy2E,QAAS,GAEhBnjE,EAAStT,KAAK6D,QAAQ6T,QAAY,GAGpC,IAAIgpD,GAAQ1gE,KAAK6D,QAAQ68D,KAUzB,OARcn6D,UAAVm6D,IACFA,EAAQptD,EAAO0X,KAAO,KAAOhrB,KAAK6D,QAAQE,OAAO/D,KAAKojD,YAAY/vC,OAAO,+BACzEqtD,EAAQA,EAAMrwC,OAAO,GAAGa,cAAgBwvC,EAAMgW,UAAU,IAG1D12E,KAAKq8C,IAAIvtC,MAAMnG,KAAOi1B,EAAI,KAC1B59B,KAAKq8C,IAAIqkB,MAAQA,GAEV,GAMTh+D,EAAWuQ,UAAU0yD,KAAO,WAEtB3lE,KAAKq8C,IAAIhxC,YACXrL,KAAKq8C,IAAIhxC,WAAW3G,YAAY1E,KAAKq8C,MAQzC35C,EAAWuQ,UAAUstD,cAAgB,SAAUv1C,GAC7ChrB,KAAKojD,WAAaziD,EAAKgH,QAAQqjB,EAAM,QACrChrB,KAAK0sC,UAOPhqC,EAAWuQ,UAAUutD,cAAgB,WACnC,MAAO,IAAIn7D,MAAKrF,KAAKojD,WAAWt7C,YAOlCpF,EAAWuQ,UAAU0tD,eAAiB,SAAUD,GAC9C1gE,KAAK6D,QAAQ68D,MAAQA,GAQvBh+D,EAAWuQ,UAAUylD,aAAe,SAAU5tD,GAC5C9K,KAAKu2E,YAAY3c,UAAW,EAC5B55D,KAAKu2E,YAAYnzB,WAAapjD,KAAKojD,WAEnCt4C,EAAM25C,mBAQR/hD,EAAWuQ,UAAU0lD,QAAU,SAAU7tD,GACvC,GAAK9K,KAAKu2E,YAAY3c,SAAtB,CAEA,GAAIh8B,GAAI59B,KAAKo/C,KAAKz+C,KAAKg/C,SAAS3/C,KAAKu2E,YAAYnzB,YAAct4C,EAAMkgD,OACjEhgC,EAAOhrB,KAAKo/C,KAAKz+C,KAAKo/C,OAAOniB,EAEjC59B,MAAKugE,cAAcv1C,GAGnBhrB,KAAKo/C,KAAKE,QAAQzH,KAAK,cACrBx3C,GAAIL,KAAK6D,QAAQxD,GACjB2qB,KAAM,GAAI3lB,MAAKrF,KAAKojD,WAAWt7C,aAGjCgD,EAAM25C,oBAQR/hD,EAAWuQ,UAAU2lD,WAAa,SAAU9tD,GACrC9K,KAAKu2E,YAAY3c,WAGtB55D,KAAKo/C,KAAKE,QAAQzH,KAAK,eACrBx3C,GAAIL,KAAK6D,QAAQxD,GACjB2qB,KAAM,GAAI3lB,MAAKrF,KAAKojD,WAAWt7C,aAGjCgD,EAAM25C,oBASR/hD,EAAW2gD,qBAAuB,SAAUv4C,GAE1C,IADA,GAAII,GAASJ,EAAMI,OACZA,GAAQ,CACb,GAAIA,EAAOlF,eAAe,eACxB,MAAOkF,GAAO,cAEhBA,GAASA,EAAOG,WAGlB,MAAO,OAGTxL,EAAOD,QAAU8C,GAIb,SAAS7C,EAAQD,GAKrBA,EAAY,IACV49D,QAAS,UACTxyC,KAAM,QAERprB,EAAe,MAAIA,EAAY,GAC/BA,EAAe,MAAIA,EAAY,GAG/BA,EAAY,IACV49D,QAAS,UACTxyC,KAAM,QAERprB,EAAe,MAAIA,EAAY,GAC/BA,EAAe,MAAIA,EAAY,IAI3B,SAASC,EAAQD,EAASM,GAiB9B,QAASuC,GAAY28C,EAAMv7C,GACzB7D,KAAKo/C,KAAOA,EAGZp/C,KAAK4+C,gBACH+3B,iBAAiB,EAEjB5yE,OAAQA,EACR2T,QAASA,EACTpE,OAAQ,MAEVtT,KAAK6D,QAAUlD,EAAKgG,UAAW3G,KAAK4+C,gBACpC5+C,KAAKwnB,OAAS,EAEdxnB,KAAKm/C,UAELn/C,KAAKg/B,WAAWn7B,GA7BlB,GAAIlD,GAAOT,EAAoB,GAC3BsC,EAAYtC,EAAoB,IAChC6D,EAAS7D,EAAoB,GAC7BwX,EAAUxX,EAAoB,GA6BlCuC,GAAYwQ,UAAY,GAAIzQ,GAM5BC,EAAYwQ,UAAUksC,QAAU,WAC9B,GAAI9C,GAAMjf,SAASM,cAAc,MACjC2e,GAAItzC,UAAY,mBAChBszC,EAAIvtC,MAAM4/B,SAAW,WACrB2N,EAAIvtC,MAAMjG,IAAM,MAChBwzC,EAAIvtC,MAAM2vB,OAAS,OAEnBz+B,KAAKq8C,IAAMA,GAMb55C,EAAYwQ,UAAUksB,QAAU,WAC9Bn/B,KAAK6D,QAAQ8yE,iBAAkB,EAC/B32E,KAAK0sC,SAEL1sC,KAAKo/C,KAAO,MAQd38C,EAAYwQ,UAAU+rB,WAAa,SAAUn7B,GACvCA,GAEFlD,EAAKiG,iBAAiB,kBAAmB,SAAU,SAAU,WAAY5G,KAAK6D,QAASA,IAQ3FpB,EAAYwQ,UAAUy5B,OAAS,WAC7B,GAAI1sC,KAAK6D,QAAQ8yE,gBAAiB,CAChC,GAAIprE,GAASvL,KAAKo/C,KAAKxF,IAAI8kB,kBACvB1+D,MAAKq8C,IAAIhxC,YAAcE,IAErBvL,KAAKq8C,IAAIhxC,YACXrL,KAAKq8C,IAAIhxC,WAAW3G,YAAY1E,KAAKq8C,KAEvC9wC,EAAO+xB,YAAYt9B,KAAKq8C,KAExBr8C,KAAK4yC,QAGP,IAAI3vB,GAAMjjB,KAAK6D,QAAQE,QAAO,GAAIsB,OAAOyC,UAAY9H,KAAKwnB,QACtDoW,EAAI59B,KAAKo/C,KAAKz+C,KAAKg/C,SAAS18B,GAE5B3P,EAAStT,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,OAC1CA,KACEtT,KAAKy2E,SACR92D,QAAQw+B,IAAI,6BAAgCn+C,KAAK6D,QAAQyP,OAAS,kEAClEtT,KAAKy2E,QAAS,GAEhBnjE,EAAStT,KAAK6D,QAAQ6T,QAAY,GAEpC,IAAIgpD,GAAQptD,EAAOkqD,QAAU,IAAMlqD,EAAO0X,KAAO,KAAO/H,EAAI5P,OAAO,8BACnEqtD,GAAQA,EAAMrwC,OAAO,GAAGa,cAAgBwvC,EAAMgW,UAAU,GAExD12E,KAAKq8C,IAAIvtC,MAAMnG,KAAOi1B,EAAI,KAC1B59B,KAAKq8C,IAAIqkB,MAAQA,MAGb1gE,MAAKq8C,IAAIhxC,YACXrL,KAAKq8C,IAAIhxC,WAAW3G,YAAY1E,KAAKq8C,KAEvCr8C,KAAK+vC,MAGP,QAAO,GAMTttC,EAAYwQ,UAAU2/B,MAAQ,WAG5B,QAAS1S,KACPF,EAAG+P,MAGH,IAAI/qC,GAAQg7B,EAAGof,KAAKe,MAAMia,WAAWp6B,EAAGof,KAAKC,SAAShJ,OAAO7X,OAAOx5B,MAChEg4C,EAAW,EAAIh4C,EAAQ,EACZ,IAAXg4C,IAAeA,EAAW,IAC1BA,EAAW,MAAMA,EAAW,KAEhChd,EAAG0M,SAGH1M,EAAG42C,iBAAmB1sE,WAAWg2B,EAAQ8c,GAd3C,GAAIhd,GAAKhgC,IAiBTkgC,MAMFz9B,EAAYwQ,UAAU88B,KAAO,WACGxpC,SAA1BvG,KAAK42E,mBACPtzC,aAAatjC,KAAK42E,wBACX52E,MAAK42E,mBAUhBn0E,EAAYwQ,UAAU4uD,eAAiB,SAAU72C,GAC/C,GAAIrb,GAAIhP,EAAKgH,QAAQqjB,EAAM,QAAQljB,UAC/Bmb,GAAM,GAAI5d,OAAOyC,SACrB9H,MAAKwnB,OAAS7X,EAAIsT,EAClBjjB,KAAK0sC,UAOPjqC,EAAYwQ,UAAU6uD,eAAiB,WACrC,MAAO,IAAIz8D,OAAK,GAAIA,OAAOyC,UAAY9H,KAAKwnB,SAG9C3nB,EAAOD,QAAU6C,GAIb,SAAS5C,EAAQD,EAASM,GAU9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCARhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hBU,EAAe13E,EAAoB,IAEnC23E,EAAgBhB,EAAuBe,GAgBvCj3E,EAAOT,EAAoB,GAE3BihD,EAAe,WACjB,QAASA,GAAa22B,EAAcC,EAAkBz2B,GACpD,GAAI02B,GAAa3xE,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,EAAIA,UAAU,EAErF2wE,GAAgBh3E,KAAMmhD,GAEtBnhD,KAAKuL,OAASusE,EACd93E,KAAKi4E,kBACLj4E,KAAKokC,UAAY2zC,EACjB/3E,KAAKk4E,eAAgB,EAErBl4E,KAAK6D,WACL7D,KAAKm4E,aAAc,EACnBn4E,KAAKo4E,aAAe,EACpBp4E,KAAK4+C,gBACH/tC,SAAS,EACT2uB,QAAQ,EACR4E,UAAW79B,OACX8xE,YAAY,GAEd13E,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK4+C,gBAE/B5+C,KAAKshD,iBAAmBA,EACxBthD,KAAKs4E,iBACLt4E,KAAKu4E,eACLv4E,KAAKw4E,YACLx4E,KAAKy4E,WAAa,EAClBz4E,KAAK04E,gBACL14E,KAAK24E,YAAc,GAAId,GAAc,WAAWG,GAChDh4E,KAAKklD,QAAU3+C,OA6tBjB,MAntBA6wE,GAAaj2B,IACXx3C,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAgB0C,SAAZ1C,EAAuB,CAEzB7D,KAAK04E,gBACL14E,KAAK44E,cAEL,IAAI/nE,IAAU,CACS,iBAAZhN,GACT7D,KAAK6D,QAAQ27B,OAAS37B,EACbA,YAAmBiD,OAC5B9G,KAAK6D,QAAQ27B,OAAS37B,EAAQqF,OACF,gBAAZrF,IACU0C,SAAtB1C,EAAQugC,YACVpkC,KAAK6D,QAAQugC,UAAYvgC,EAAQugC,WAEZ79B,SAAnB1C,EAAQ27B,SACVx/B,KAAK6D,QAAQ27B,OAAS37B,EAAQ27B,QAELj5B,SAAvB1C,EAAQw0E,aACVr4E,KAAK6D,QAAQw0E,WAAax0E,EAAQw0E,YAEZ9xE,SAApB1C,EAAQgN,UACVA,EAAUhN,EAAQgN,UAEQ,iBAAZhN,IAChB7D,KAAK6D,QAAQ27B,QAAS,EACtB3uB,EAAUhN,GACkB,kBAAZA,KAChB7D,KAAK6D,QAAQ27B,OAAS37B,EACtBgN,GAAU,GAER7Q,KAAK6D,QAAQ27B,UAAW,IAC1B3uB,GAAU,GAGZ7Q,KAAK6D,QAAQgN,QAAUA,EAEzB7Q,KAAK64E,YAGPlvE,IAAK,mBACL5E,MAAO,SAA0BuzE,GAC/Bt4E,KAAKs4E,cAAgBA,EACjBt4E,KAAK6D,QAAQgN,WAAY,IAC3B7Q,KAAK64E,SAC0BtyE,SAA3BvG,KAAK6D,QAAQugC,YACfpkC,KAAKokC,UAAYpkC,KAAK6D,QAAQugC,WAEhCpkC,KAAKm/C,cASTx1C,IAAK,UACL5E,MAAO,WACL,GAAIm9C,GAAQliD,IAEZA,MAAK64E,SACL74E,KAAKi4E,iBAEL,IAAIz4C,GAASx/B,KAAK6D,QAAQ27B,OACtBuM,EAAU,EACV4W,GAAO,CACX,KAAK,GAAIl3C,KAAUzL,MAAKshD,iBAClBthD,KAAKshD,iBAAiBt7C,eAAeyF,KACvCzL,KAAKk4E,eAAgB,EACrBv1B,GAAO,EACe,kBAAXnjB,IACTmjB,EAAOnjB,EAAO/zB,MACdk3C,EAAOA,GAAQ3iD,KAAK84E,cAAc94E,KAAKshD,iBAAiB71C,IAAUA,IAAS,KAClE+zB,KAAW,GAAmC,KAA3BA,EAAOj4B,QAAQkE,MAC3Ck3C,GAAO,GAGLA,KAAS,IACX3iD,KAAKk4E,eAAgB,EAGjBnsC,EAAU,GACZ/rC,KAAK+4E,cAGP/4E,KAAKg5E,YAAYvtE,GAGjBzL,KAAK84E,cAAc94E,KAAKshD,iBAAiB71C,IAAUA,KAErDsgC,IAIA/rC,MAAK6D,QAAQw0E,cAAe,IAC9B,WACE,GAAIY,GAAiB77C,SAASM,cAAc,MAC5Cu7C,GAAelwE,UAAY,sCAC3BkwE,EAAenqC,UAAY,mBAC3BmqC,EAAez8B,QAAU,WACvB0F,EAAMg3B,iBAERD,EAAeE,YAAc,WAC3BF,EAAelwE,UAAY,6CAE7BkwE,EAAeG,WAAa,WAC1BH,EAAelwE,UAAY,uCAG7Bm5C,EAAMm3B,iBAAmBj8C,SAASM,cAAc,OAChDwkB,EAAMm3B,iBAAiBtwE,UAAY,gDAEnCm5C,EAAMq2B,YAAY/wE,KAAK06C,EAAMm3B,kBAC7Bn3B,EAAMq2B,YAAY/wE,KAAKyxE,MAI3Bj5E,KAAKs5E,WASP3vE,IAAK,QACL5E,MAAO,WACL/E,KAAKklD,QAAU9nB,SAASM,cAAc,OACtC19B,KAAKklD,QAAQn8C,UAAY,4BACzB/I,KAAKokC,UAAU9G,YAAYt9B,KAAKklD,QAChC,KAAK,GAAIz+C,GAAI,EAAGA,EAAIzG,KAAKu4E,YAAYjyE,OAAQG,IAC3CzG,KAAKklD,QAAQ5nB,YAAYt9B,KAAKu4E,YAAY9xE,GAG5CzG,MAAKu5E,wBAQP5vE,IAAK,SACL5E,MAAO,WACL,IAAK,GAAI0B,GAAI,EAAGA,EAAIzG,KAAKu4E,YAAYjyE,OAAQG,IAC3CzG,KAAKklD,QAAQxgD,YAAY1E,KAAKu4E,YAAY9xE,GAGvBF,UAAjBvG,KAAKklD,UACPllD,KAAKokC,UAAU1/B,YAAY1E,KAAKklD,SAChCllD,KAAKklD,QAAU3+C,QAEjBvG,KAAKu4E,eAELv4E,KAAK44E,kBAUPjvE,IAAK,YACL5E,MAAO,SAAmBy0E,GAExB,IAAK,GADDlvD,GAAOtqB,KAAKs4E,cACP7xE,EAAI,EAAGA,EAAI+yE,EAAKlzE,OAAQG,IAAK,CACpC,GAAsBF,SAAlB+jB,EAAKkvD,EAAK/yE,IAEP,CACL6jB,EAAO/jB,MACP,OAHA+jB,EAAOA,EAAKkvD,EAAK/yE,IAMrB,MAAO6jB,MAUT3gB,IAAK,YACL5E,MAAO,SAAmBy0E,GACxB,GAAIC,GAAapzE,UACbqzE,EAAS15E,IAEb,IAAIA,KAAKk4E,iBAAkB,EAAM,CAC/B,GAAIyB,GAAMpB,EAAaqB,EAEnBC,EAAQ,WACV,GAAIroE,GAAO4rB,SAASM,cAAc,MAGlC,KAFAlsB,EAAKzI,UAAY,iDAAmDywE,EAAKlzE,OAEpEqzE,EAAOF,EAAWnzE,OAAQiyE,EAAczxE,MAAM6yE,EAAO,EAAIA,EAAO,EAAI,GAAIC,EAAO,EAAUD,EAAPC,EAAaA,IAClGrB,EAAYqB,EAAO,GAAKH,EAAWG,EAOrC,OAJArB,GAAYjvE,QAAQ,SAAUc,GAC5BoH,EAAK8rB,YAAYlzB,KAEnBsvE,EAAOnB,YAAY/wE,KAAKgK,IAEtB5D,EAAG8rE,EAAOnB,YAAYjyE,UAI1B,IAAqB,gBAAVuzE,GAAoB,MAAOA,GAAMjsE,EAE9C,MAAO,MASTjE,IAAK,cACL5E,MAAO,SAAqByS,GAC1B,GAAIsiE,GAAM18C,SAASM,cAAc,MACjCo8C,GAAI/wE,UAAY,sCAChB+wE,EAAIhrC,UAAYt3B,EAChBxX,KAAK+4E,aAAce,MAYrBnwE,IAAK,aACL5E,MAAO,SAAoByS,EAAMgiE,GAC/B,GAAIO,GAAc1zE,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEtFyzE,EAAM18C,SAASM,cAAc,MAOjC,OANAo8C,GAAI/wE,UAAY,kDAAoDywE,EAAKlzE,OACrEyzE,KAAgB,EAClBD,EAAIhrC,UAAY,SAAWt3B,EAAO,YAElCsiE,EAAIhrC,UAAYt3B,EAAO,IAElBsiE,KAWTnwE,IAAK,gBACL5E,MAAO,SAAuBqD,EAAKrD,EAAOy0E,GACxC,GAAI3T,GAASzoC,SAASM,cAAc,SACpCmoC,GAAO98D,UAAY,qCACnB,IAAIixE,GAAgB,CACNzzE,UAAVxB,GACyB,KAAvBqD,EAAIb,QAAQxC,KACdi1E,EAAgB5xE,EAAIb,QAAQxC,GAIhC,KAAK,GAAI0B,GAAI,EAAGA,EAAI2B,EAAI9B,OAAQG,IAAK,CACnC,GAAIgF,GAAS2xB,SAASM,cAAc,SACpCjyB,GAAO1G,MAAQqD,EAAI3B,GACfA,IAAMuzE,IACRvuE,EAAO87D,SAAW,YAEpB97D,EAAOqjC,UAAY1mC,EAAI3B,GACvBo/D,EAAOvoC,YAAY7xB,GAGrB,GAAIu0B,GAAKhgC,IACT6lE,GAAOxyB,SAAW,WAChBrT,EAAGi6C,QAAQj6E,KAAK+E,MAAOy0E,GAGzB,IAAIt7C,GAAQl+B,KAAKk6E,WAAWV,EAAKA,EAAKlzE,OAAS,GAAIkzE,EACnDx5E,MAAK+4E,UAAUS,EAAMt7C,EAAO2nC,MAW9Bl8D,IAAK,aACL5E,MAAO,SAAoBqD,EAAKrD,EAAOy0E,GACrC,GAAI7tE,GAAevD,EAAI,GACnBxD,EAAMwD,EAAI,GACVvD,EAAMuD,EAAI,GACVuqC,EAAOvqC,EAAI,GACX+3C,EAAQ/iB,SAASM,cAAc,QACnCyiB,GAAMp3C,UAAY,oCAClB,KACEo3C,EAAMv4C,KAAO,QACbu4C,EAAMv7C,IAAMA,EACZu7C,EAAMt7C,IAAMA,EACZ,MAAOs1E,IACTh6B,EAAMxN,KAAOA,CAGb,IAAIynC,GAAc,GACdC,EAAa,CAEjB,IAAc9zE,SAAVxB,EAAqB,CACvB,GAAIu9C,GAAS,GACD,GAARv9C,GAA8BH,EAAjBG,EAAQu9C,GACvBnC,EAAMv7C,IAAMK,KAAKoR,KAAKtR,EAAQu9C,GAC9B+3B,EAAal6B,EAAMv7C,IACnBw1E,EAAc,mBACYx1E,EAAjBG,EAAQu9C,IACjBnC,EAAMv7C,IAAMK,KAAKoR,KAAKtR,EAAQu9C,GAC9B+3B,EAAal6B,EAAMv7C,IACnBw1E,EAAc,mBAEZr1E,EAAQu9C,EAASz9C,GAAe,IAARA,IAC1Bs7C,EAAMt7C,IAAMI,KAAKoR,KAAKtR,EAAQu9C,GAC9B+3B,EAAal6B,EAAMt7C,IACnBu1E,EAAc,mBAEhBj6B,EAAMp7C,MAAQA,MAEdo7C,GAAMp7C,MAAQ4G,CAGhB,IAAIjI,GAAQ05B,SAASM,cAAc,QACnCh6B,GAAMqF,UAAY,0CAClBrF,EAAMqB,MAAQo7C,EAAMp7C,KAEpB,IAAIi7B,GAAKhgC,IACTmgD,GAAM9M,SAAW,WACf3vC,EAAMqB,MAAQ/E,KAAK+E,MAAMi7B,EAAGi6C,QAAQ51E,OAAOrE,KAAK+E,OAAQy0E,IAE1Dr5B,EAAMm6B,QAAU,WACd52E,EAAMqB,MAAQ/E,KAAK+E,MAGrB,IAAIm5B,GAAQl+B,KAAKk6E,WAAWV,EAAKA,EAAKlzE,OAAS,GAAIkzE,GAC/C1K,EAAY9uE,KAAK+4E,UAAUS,EAAMt7C,EAAOiiB,EAAOz8C,EAG/B,MAAhB02E,GAAsBp6E,KAAK04E,aAAa5J,KAAeuL,IACzDr6E,KAAK04E,aAAa5J,GAAauL,EAC/Br6E,KAAKu6E,YAAYH,EAAatL,OAWlCnlE,IAAK,cACL5E,MAAO,SAAqBub,EAAQlX,GAClC,GAAIoxE,GAASx6E,IAEb,IAAIA,KAAKm4E,eAAgB,GAAQn4E,KAAKk4E,iBAAkB,GAAQl4E,KAAKo4E,aAAep4E,KAAKy4E,WAAY,CACnG,GAAIqB,GAAM18C,SAASM,cAAc,MACjCo8C,GAAIz5E,GAAK,0BACTy5E,EAAI/wE,UAAY,0BAChB+wE,EAAIhrC,UAAYxuB,EAChBw5D,EAAIt9B,QAAU,WACZg+B,EAAO5B,gBAET54E,KAAKo4E,cAAgB,EACrBp4E,KAAKw4E,UAAaiC,KAAMX,EAAK1wE,MAAOA,OASxCO,IAAK,eACL5E,MAAO,WACsBwB,SAAvBvG,KAAKw4E,SAASiC,OAChBz6E,KAAKw4E,SAASiC,KAAKpvE,WAAW3G,YAAY1E,KAAKw4E,SAASiC,MACxDn3C,aAAatjC,KAAKw4E,SAASkC,aAC3Bp3C,aAAatjC,KAAKw4E,SAASmC,eAC3B36E,KAAKw4E,gBAST7uE,IAAK,qBACL5E,MAAO,WACL,GAAI61E,GAAS56E,IAEb,IAA2BuG,SAAvBvG,KAAKw4E,SAASiC,KAAoB,CACpC,GAAII,GAAuB76E,KAAKu4E,YAAYv4E,KAAKw4E,SAASpvE,OACtDs1B,EAAOm8C,EAAqBnyE,uBAChC1I,MAAKw4E,SAASiC,KAAK3rE,MAAMnG,KAAO+1B,EAAK/1B,KAAO,KAC5C3I,KAAKw4E,SAASiC,KAAK3rE,MAAMjG,IAAM61B,EAAK71B,IAAM,GAAK,KAC/Cu0B,SAASgiB,KAAK9hB,YAAYt9B,KAAKw4E,SAASiC,MACxCz6E,KAAKw4E,SAASkC,YAAcxwE,WAAW,WACrC0wE,EAAOpC,SAASiC,KAAK3rE,MAAMpC,QAAU,GACpC,MACH1M,KAAKw4E,SAASmC,cAAgBzwE,WAAW,WACvC0wE,EAAOhC,gBACN,UAYPjvE,IAAK,gBACL5E,MAAO,SAAuB4G,EAAc5G,EAAOy0E,GACjD,GAAIsB,GAAW19C,SAASM,cAAc;AACtCo9C,EAASlzE,KAAO,WAChBkzE,EAAS/xE,UAAY,wCACrB+xE,EAASC,QAAUpvE,EACLpF,SAAVxB,IACF+1E,EAASC,QAAUh2E,EACfA,IAAU4G,IACgB,gBAAjBA,GACL5G,IAAU4G,EAAakF,SACzB7Q,KAAKi4E,eAAezwE,MAAOgyE,KAAMA,EAAMz0E,MAAOA,IAGhD/E,KAAKi4E,eAAezwE,MAAOgyE,KAAMA,EAAMz0E,MAAOA,KAKpD,IAAIi7B,GAAKhgC,IACT86E,GAASznC,SAAW,WAClBrT,EAAGi6C,QAAQj6E,KAAK+6E,QAASvB,GAG3B,IAAIt7C,GAAQl+B,KAAKk6E,WAAWV,EAAKA,EAAKlzE,OAAS,GAAIkzE,EACnDx5E,MAAK+4E,UAAUS,EAAMt7C,EAAO48C,MAW9BnxE,IAAK,iBACL5E,MAAO,SAAwB4G,EAAc5G,EAAOy0E,GAClD,GAAIsB,GAAW19C,SAASM,cAAc,QACtCo9C,GAASlzE,KAAO,OAChBkzE,EAAS/xE,UAAY,oCACrB+xE,EAAS/1E,MAAQA,EACbA,IAAU4G,GACZ3L,KAAKi4E,eAAezwE,MAAOgyE,KAAMA,EAAMz0E,MAAOA,GAGhD,IAAIi7B,GAAKhgC,IACT86E,GAASznC,SAAW,WAClBrT,EAAGi6C,QAAQj6E,KAAK+E,MAAOy0E,GAGzB,IAAIt7C,GAAQl+B,KAAKk6E,WAAWV,EAAKA,EAAKlzE,OAAS,GAAIkzE,EACnDx5E,MAAK+4E,UAAUS,EAAMt7C,EAAO48C,MAW9BnxE,IAAK,kBACL5E,MAAO,SAAyBqD,EAAKrD,EAAOy0E,GAC1C,GAAIwB,GAASh7E,KAETi7E,EAAe7yE,EAAI,GACnB0xE,EAAM18C,SAASM,cAAc,MACjC34B,GAAkBwB,SAAVxB,EAAsBk2E,EAAel2E,EAE/B,SAAVA,GACF+0E,EAAI/wE,UAAY,0CAChB+wE,EAAIhrE,MAAM+7B,gBAAkB9lC,GAE5B+0E,EAAI/wE,UAAY,+CAGlBhE,EAAkBwB,SAAVxB,EAAsBk2E,EAAel2E,EAC7C+0E,EAAIt9B,QAAU,WACZw+B,EAAOE,iBAAiBn2E,EAAO+0E,EAAKN,GAGtC,IAAIt7C,GAAQl+B,KAAKk6E,WAAWV,EAAKA,EAAKlzE,OAAS,GAAIkzE,EACnDx5E,MAAK+4E,UAAUS,EAAMt7C,EAAO47C,MAY9BnwE,IAAK,mBACL5E,MAAO,SAA0BA,EAAO+0E,EAAKN,GAC3C,GAAI2B,GAASn7E,IAGb85E,GAAIt9B,QAAU,aAEdx8C,KAAK24E,YAAYyC,SAAStB,GAC1B95E,KAAK24E,YAAYh2B,OAEjB3iD,KAAK24E,YAAY0C,SAASt2E,GAC1B/E,KAAK24E,YAAY2C,kBAAkB,SAAU7uE,GAC3C,GAAI8uE,GAAc,QAAU9uE,EAAML,EAAI,IAAMK,EAAMJ,EAAI,IAAMI,EAAMtG,EAAI,IAAMsG,EAAMvG,EAAI,GACtF4zE,GAAIhrE,MAAM+7B,gBAAkB0wC,EAC5BJ,EAAOlB,QAAQsB,EAAa/B,KAI9Bx5E,KAAK24E,YAAY6C,iBAAiB,WAChC1B,EAAIt9B,QAAU,WACZ2+B,EAAOD,iBAAiBn2E,EAAO+0E,EAAKN,SAY1C7vE,IAAK,gBACL5E,MAAO,SAAuBe,GAC5B,GAAI0zE,GAAOnzE,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAC5Eo1E,EAAYp1E,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpFs8C,GAAO,EACPnjB,EAASx/B,KAAK6D,QAAQ27B,OACtBk8C,GAAe,CACnB,KAAK,GAAIC,KAAU71E,GACjB,GAAIA,EAAIE,eAAe21E,GAAS,CAC9Bh5B,GAAO,CACP,IAAInxC,GAAO1L,EAAI61E,GACXC,EAAUj7E,EAAKwH,mBAAmBqxE,EAAMmC,EAc5C,IAbsB,kBAAXn8C,KACTmjB,EAAOnjB,EAAOm8C,EAAQnC,GAGlB72B,KAAS,KACLnxC,YAAgB1K,SAA0B,gBAAT0K,IAAqC,iBAATA,IAAsBA,YAAgBpK,UACvGpH,KAAKk4E,eAAgB,EACrBv1B,EAAO3iD,KAAK84E,cAActnE,EAAMoqE,GAAS,GACzC57E,KAAKk4E,cAAgBuD,KAAc,IAKrC94B,KAAS,EAAO,CAClB+4B,GAAe,CACf,IAAI32E,GAAQ/E,KAAK67E,UAAUD,EAE3B,IAAIpqE,YAAgB1K,OAClB9G,KAAK87E,aAAatqE,EAAMzM,EAAO62E,OAC1B,IAAoB,gBAATpqE,GAChBxR,KAAK+7E,eAAevqE,EAAMzM,EAAO62E,OAC5B,IAAoB,iBAATpqE,GAChBxR,KAAKg8E,cAAcxqE,EAAMzM,EAAO62E,OAC3B,IAAIpqE,YAAgBpK,QAAQ,CAEjC,GAAI60E,IAAO,CAOX,IANgC,KAA5BzC,EAAKjyE,QAAQ,YACXvH,KAAKs4E,cAAc4D,QAAQC,SAAWR,IACxCM,GAAO,GAIPA,KAAS,EAEX,GAAqB11E,SAAjBiL,EAAKX,QAAuB,CAC9B,GAAIurE,GAAcz7E,EAAKwH,mBAAmByzE,EAAS,WAC/CS,EAAer8E,KAAK67E,UAAUO,EAClC,IAAIC,KAAiB,EAAM,CACzB,GAAIn+C,GAAQl+B,KAAKk6E,WAAWyB,EAAQC,GAAS,EAC7C57E,MAAK+4E,UAAU6C,EAAS19C,GACxBw9C,EAAe17E,KAAK84E,cAActnE,EAAMoqE,IAAYF,MAEpD17E,MAAKg8E,cAAcxqE,EAAM6qE,EAAcT,OAEpC,CACL,GAAI19C,GAAQl+B,KAAKk6E,WAAWyB,EAAQC,GAAS,EAC7C57E,MAAK+4E,UAAU6C,EAAS19C,GACxBw9C,EAAe17E,KAAK84E,cAActnE,EAAMoqE,IAAYF,OAIxD/7D,SAAQ28D,MAAM,0BAA2B9qE,EAAMmqE,EAAQC,IAK/D,MAAOF,MAYT/xE,IAAK,eACL5E,MAAO,SAAsBqD,EAAKrD,EAAOy0E,GACjB,gBAAXpxE,GAAI,IAA8B,UAAXA,EAAI,IACpCpI,KAAKu8E,gBAAgBn0E,EAAKrD,EAAOy0E,GAC7BpxE,EAAI,KAAOrD,GACb/E,KAAKi4E,eAAezwE,MAAOgyE,KAAMA,EAAMz0E,MAAOA,KAErB,gBAAXqD,GAAI,IACpBpI,KAAKw8E,cAAcp0E,EAAKrD,EAAOy0E,GAC3BpxE,EAAI,KAAOrD,GACb/E,KAAKi4E,eAAezwE,MAAOgyE,KAAMA,EAAMz0E,MAAOA,KAErB,gBAAXqD,GAAI,KACpBpI,KAAKy8E,WAAWr0E,EAAKrD,EAAOy0E,GACxBpxE,EAAI,KAAOrD,GACb/E,KAAKi4E,eAAezwE,MAAOgyE,KAAMA,EAAMz0E,MAAOV,OAAOU,SAY3D4E,IAAK,UACL5E,MAAO,SAAiBA,EAAOy0E,GAC7B,GAAI31E,GAAU7D,KAAK08E,kBAAkB33E,EAAOy0E,EAExCx5E,MAAKuL,OAAO6zC,MAAQp/C,KAAKuL,OAAO6zC,KAAKE,SAAWt/C,KAAKuL,OAAO6zC,KAAKE,QAAQzH,MAC3E73C,KAAKuL,OAAO6zC,KAAKE,QAAQzH,KAAK,eAAgBh0C,GAEhD7D,KAAKm4E,aAAc,EACnBn4E,KAAKuL,OAAOyzB,WAAWn7B,MAGzB8F,IAAK,oBACL5E,MAAO,SAA2BA,EAAOy0E,GACvC,GAAImD,GAAat2E,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAElF40D,EAAU0hB,CAGd53E,GAAkB,SAAVA,GAAmB,EAAOA,EAClCA,EAAkB,UAAVA,GAAoB,EAAQA,CAEpC,KAAK,GAAI0B,GAAI,EAAGA,EAAI+yE,EAAKlzE,OAAQG,IACf,WAAZ+yE,EAAK/yE,KACkBF,SAArB00D,EAAQue,EAAK/yE,MACfw0D,EAAQue,EAAK/yE,QAEXA,IAAM+yE,EAAKlzE,OAAS,EACtB20D,EAAUA,EAAQue,EAAK/yE,IAEvBw0D,EAAQue,EAAK/yE,IAAM1B,EAIzB,OAAO43E,MAGThzE,IAAK,gBACL5E,MAAO,WACL,GAAIlB,GAAU7D,KAAK48E,YACnB58E,MAAKq5E,iBAAiBvqC,UAAY,sBAAwBrM,KAAKC,UAAU7+B,EAAS,KAAM,GAAK,YAG/F8F,IAAK,aACL5E,MAAO,WAEL,IAAK,GADDlB,MACK4C,EAAI,EAAGA,EAAIzG,KAAKi4E,eAAe3xE,OAAQG,IAC9CzG,KAAK08E,kBAAkB18E,KAAKi4E,eAAexxE,GAAG1B,MAAO/E,KAAKi4E,eAAexxE,GAAG+yE,KAAM31E,EAEpF,OAAOA,OAIJs9C,IAGTvhD,GAAQ,WAAauhD,EACrBthD,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS82E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBlzE,EAAS9D,EAAoB,IAC7Bo+D,EAAap+D,EAAoB,IACjCS,EAAOT,EAAoB,GAE3B28E,EAAc,WAChB,QAASA,KACP,GAAI7E,GAAa3xE,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,EAAIA,UAAU,EAErF2wE,GAAgBh3E,KAAM68E,GAEtB78E,KAAKg4E,WAAaA,EAClBh4E,KAAK88E,WAAY,EACjB98E,KAAK+8E,mBAAsBn/C,EAAG,MAAS3c,EAAG,OAC1CjhB,KAAKoM,EAAI,IAAM,IACfpM,KAAKyM,OAAUL,EAAG,IAAKC,EAAG,IAAKlG,EAAG,IAAKD,EAAG,GAC1ClG,KAAKg9E,UAAYz2E,OACjBvG,KAAKi9E,cAAiB7wE,EAAG,IAAKC,EAAG,IAAKlG,EAAG,IAAKD,EAAG,GACjDlG,KAAKk9E,cAAgB32E,OACrBvG,KAAKm9E,SAAU,EAGfn9E,KAAKo9E,eAAiB,aACtBp9E,KAAKq9E,cAAgB,aAGrBr9E,KAAKm/C,UAujBP,MA/iBAi4B,GAAayF,IACXlzE,IAAK,WACL5E,MAAO,SAAkBq/B,GACH79B,SAAhBvG,KAAKokD,SACPpkD,KAAKokD,OAAOjlB,UACZn/B,KAAKokD,OAAS79C,QAEhBvG,KAAKokC,UAAYA,EACjBpkC,KAAKokC,UAAU9G,YAAYt9B,KAAKwqC,OAChCxqC,KAAKs9E,cAELt9E,KAAKu9E,cAQP5zE,IAAK,oBACL5E,MAAO,SAA2BwE,GAChC,GAAwB,kBAAbA,GAGT,KAAM,IAAIvC,OAAM,8EAFhBhH,MAAKo9E,eAAiB7zE,KAW1BI,IAAK,mBACL5E,MAAO,SAA0BwE,GAC/B,GAAwB,kBAAbA,GAGT,KAAM,IAAIvC,OAAM,+EAFhBhH,MAAKq9E,cAAgB9zE,KAMzBI,IAAK,iBACL5E,MAAO,SAAwB0H,GAC7B,GAAI+wE,IAAeC,MAAO,UAAWC,KAAM,UAAWC,SAAU,UAAWC,WAAY,UAAW5wE,KAAM,UAAW6wE,UAAW,UAAW9wE,MAAO,UAAW+wE,KAAM,UAAWC,SAAU,UAAWC,YAAa,UAAWC,cAAe,UAAWC,kBAAmB,UAAWC,KAAM,UAAWC,YAAa,UAAWC,KAAM,UAAWC,KAAM,UAAWC,aAAc,UAAWC,WAAY,UAAWC,cAAe,UAAWC,YAAa,UAAWC,SAAU,UAAWC,cAAe,UAAWC,UAAW,UAAWC,eAAgB,UAAWC,UAAW,UAAWC,UAAW,UAAWC,UAAW,UAAWC,cAAe,UAAWC,gBAAiB,UAAWC,OAAQ,UAAWC,eAAgB,UAAWC,UAAW,UAAWC,eAAgB,UAAWC,iBAAkB,UAAWC,QAAS,UAAWC,UAAW,UAAWC,UAAW,UAAWC,UAAW,UAAWC,eAAgB,UAAWC,gBAAiB,UAAWC,UAAW,UAAWC,WAAY,UAAWC,WAAY,UAAWC,OAAQ,UAAWC,OAAQ,UAAWC,MAAO,UAAWC,KAAM,UAAWC,QAAS,UAAWC,aAAc,UAAWC,WAAY,UAAWC,QAAS,UAAWC,YAAa,UAAWC,YAAa,UAAWC,aAAc,UAAWC,WAAY,UAAWC,aAAc,UAAWC,WAAY,UAAWC,UAAW,UAAWC,WAAY,UAAWC,YAAa,UAAWC,OAAQ,UAAWC,MAAO,UAAWC,SAAU,UAAWC,UAAW,UAAWC,YAAa,UAAWC,cAAe,UAAWC,eAAgB,UAAWC,WAAY,UAAWC,UAAW,UAAWC,cAAe,UAAWC,aAAc,UAAWC,UAAW,UAAWC,UAAW,UAAWC,OAAQ,UAAWC,gBAAiB,UAAWC,UAAW,UAAWC,KAAM,UAAWC,UAAW,UAAWC,IAAK,UAAWC,UAAW,UAAWC,cAAe,UAAWC,QAAS,UAAWC,OAAQ,UAAWC,UAAW,UAAWC,QAAS,UAAWC,UAAW,UAAWC,KAAM,UAAWC,UAAW,UAAWC,UAAW,UAAWC,SAAU,UAAWC,WAAY,UAAWC,OAAQ,UAAWC,cAAe,UAAWC,WAAY,UAAWC,MAAO,UAAWC,UAAW,UAAWC,SAAU,UAAWC,MAAO,UAAWC,WAAY,UAAWC,MAAO,UAAWC,MAAO,UAAWC,WAAY,UAAWC,UAAW,UAAWC,WAAY,UAAWC,OAAQ,UAAWC,aAAc,UAAWC,MAAO,UAAWC,qBAAsB,UAAWC,QAAS,UAAWr3E,IAAK,UAAWs3E,QAAS,UAAWC,QAAS,UAAWC,SAAU,UAAWC,UAAW,UAAWC,OAAQ,UAAWC,QAAS,UAAWC,MAAO,UAAWC,WAAY,UAAWC,YAAa,UAAWC,OAAQ,UAAWC,UAAW,UAAWC,KAAM,UAAWC,KAAM,UAAWC,UAAW,UAAWC,YAAa,UAAWC,SAAU,UAAWC,OAAQ,UAAWC,UAAW,UAAWC,eAAgB,UAAWC,WAAY,UAAWC,cAAe,UAAWC,SAAU,UAAWC,SAAU,UAAWC,aAAc,UAAWC,YAAa,UAAWC,KAAM,UAAWC,OAAQ,UAAWC,YAAa,UAAWC,MAAO,UAAWC,MAAO,UACjgG,OAAqB,gBAAVx5E,GACF+wE,EAAW/wE,GADpB,UAkBF9C,IAAK,WACL5E,MAAO,SAAkB0H,GACvB,GAAIy5E,GAAa7/E,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAExF,IAAc,SAAVoG,EAAJ,CAIA,GAAIsD,GAAOxJ,OAGP4/E,EAAYnmF,KAAKomF,eAAe35E,EAMpC,IALkBlG,SAAd4/E,IACF15E,EAAQ05E,GAINxlF,EAAKuE,SAASuH,MAAW,GAC3B,GAAI9L,EAAKyM,WAAWX,MAAW,EAAM,CACnC,GAAI45E,GAAY55E,EAAMG,OAAO,GAAGA,OAAO,EAAGH,EAAMnG,OAAS,GAAG2C,MAAM,IAClE8G,IAAS3D,EAAGi6E,EAAU,GAAIh6E,EAAGg6E,EAAU,GAAIlgF,EAAGkgF,EAAU,GAAIngF,EAAG,OAC1D,IAAIvF,EAAKmP,YAAYrD,MAAW,EAAM,CAC3C,GAAI45E,GAAY55E,EAAMG,OAAO,GAAGA,OAAO,EAAGH,EAAMnG,OAAS,GAAG2C,MAAM,IAClE8G,IAAS3D,EAAGi6E,EAAU,GAAIh6E,EAAGg6E,EAAU,GAAIlgF,EAAGkgF,EAAU,GAAIngF,EAAGmgF,EAAU,QACpE,IAAI1lF,EAAK2M,WAAWb,MAAW,EAAM,CAC1C,GAAI65E,GAAS3lF,EAAKqL,SAASS,EAC3BsD,IAAS3D,EAAGk6E,EAAOl6E,EAAGC,EAAGi6E,EAAOj6E,EAAGlG,EAAGmgF,EAAOngF,EAAGD,EAAG,QAGrD,IAAIuG,YAAiBrF,SACHb,SAAZkG,EAAML,GAA+B7F,SAAZkG,EAAMJ,GAA+B9F,SAAZkG,EAAMtG,EAAiB,CAC3E,GAAIogF,GAAoBhgF,SAAZkG,EAAMvG,EAAkBuG,EAAMvG,EAAI,KAC9C6J,IAAS3D,EAAGK,EAAML,EAAGC,EAAGI,EAAMJ,EAAGlG,EAAGsG,EAAMtG,EAAGD,EAAGqgF,GAMtD,GAAahgF,SAATwJ,EACF,KAAM,IAAI/I,OAAM,gIAAkIy7B,KAAKC,UAAUj2B,GAEjKzM,MAAKwmF,UAAUz2E,EAAMm2E,OASzBv8E,IAAK,OACL5E,MAAO,WACsBwB,SAAvBvG,KAAKq9E,gBACPr9E,KAAKq9E,gBACLr9E,KAAKq9E,cAAgB92E,QAGvBvG,KAAKm9E,SAAU,EACfn9E,KAAKwqC,MAAM17B,MAAMymE,QAAU,QAC3Bv1E,KAAKymF,wBAYP98E,IAAK,QACL5E,MAAO,WACL,GAAIm9C,GAAQliD,KAER0mF,EAAgBrgF,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAGvFqgF,MAAkB,IACpB1mF,KAAKk9E,cAAgBv8E,EAAKgG,UAAW3G,KAAKyM,QAGxCzM,KAAKm9E,WAAY,GACnBn9E,KAAKo9E,eAAep9E,KAAKi9E,cAG3Bj9E,KAAKwqC,MAAM17B,MAAMymE,QAAU,OAI3BrrE,WAAW,WACmB3D,SAAxB27C,EAAMm7B,gBACRn7B,EAAMm7B,gBACNn7B,EAAMm7B,cAAgB92E,SAEvB,MAQLoD,IAAK,QACL5E,MAAO,WACL/E,KAAKo9E,eAAep9E,KAAKyM,OACzBzM,KAAKm9E,SAAU,EACfn9E,KAAK2mF,WAQPh9E,IAAK,SACL5E,MAAO,WACL/E,KAAKm9E,SAAU,EACfn9E,KAAKo9E,eAAep9E,KAAKyM,OACzBzM,KAAK4mF,cAAc5mF,KAAKyM,UAQ1B9C,IAAK,YACL5E,MAAO,WACsBwB,SAAvBvG,KAAKk9E,cACPl9E,KAAKq7E,SAASr7E,KAAKk9E,eAAe,GAElC2J,MAAM,wCAWVl9E,IAAK,YACL5E,MAAO,SAAmBgL,GACxB,GAAIm2E,GAAa7/E,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAGpF6/E,MAAe,IACjBlmF,KAAKi9E,aAAet8E,EAAKgG,UAAWoJ,IAGtC/P,KAAKyM,MAAQsD,CACb,IAAIxC,GAAM5M,EAAK0N,SAAS0B,EAAK3D,EAAG2D,EAAK1D,EAAG0D,EAAK5J,GAEzC2gF,EAAe,EAAI7hF,KAAK8wC,GACxBF,EAAS71C,KAAKoM,EAAImB,EAAII,EACtBiwB,EAAI59B,KAAK+8E,kBAAkBn/C,EAAIiY,EAAS5wC,KAAKqkC,IAAIw9C,EAAev5E,EAAIG,GACpEuT,EAAIjhB,KAAK+8E,kBAAkB97D,EAAI40B,EAAS5wC,KAAKwkC,IAAIq9C,EAAev5E,EAAIG,EAExE1N,MAAK+mF,oBAAoBj4E,MAAMnG,KAAOi1B,EAAI,GAAM59B,KAAK+mF,oBAAoBr8C,YAAc,KACvF1qC,KAAK+mF,oBAAoBj4E,MAAMjG,IAAMoY,EAAI,GAAMjhB,KAAK+mF,oBAAoBr3C,aAAe,KAEvF1vC,KAAK4mF,cAAc72E,MASrBpG,IAAK,cACL5E,MAAO,SAAqBA,GAC1B/E,KAAKyM,MAAMvG,EAAInB,EAAQ,IACvB/E,KAAK4mF,cAAc5mF,KAAKyM,UAS1B9C,IAAK,iBACL5E,MAAO,SAAwBA,GAC7B,GAAIwI,GAAM5M,EAAK0N,SAASrO,KAAKyM,MAAML,EAAGpM,KAAKyM,MAAMJ,EAAGrM,KAAKyM,MAAMtG,EAC/DoH,GAAIK,EAAI7I,EAAQ,GAChB,IAAIgL,GAAOpP,EAAK4O,SAAShC,EAAIG,EAAGH,EAAII,EAAGJ,EAAIK,EAC3CmC,GAAQ,EAAI/P,KAAKyM,MAAMvG,EACvBlG,KAAKyM,MAAQsD,EACb/P,KAAK4mF,mBASPj9E,IAAK,gBACL5E,MAAO,WACL,GAAIgL,GAAO1J,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAKyM,MAAQpG,UAAU,GAEpFkH,EAAM5M,EAAK0N,SAAS0B,EAAK3D,EAAG2D,EAAK1D,EAAG0D,EAAK5J,GACzCorC,EAAMvxC,KAAKgnF,kBAAkBx1C,WAAW,KACnBjrC,UAArBvG,KAAKinF,cACPjnF,KAAKg4E,YAAcjtE,OAAOm8E,kBAAoB,IAAM31C,EAAI41C,8BAAgC51C,EAAI61C,2BAA6B71C,EAAI81C,0BAA4B91C,EAAI+1C,yBAA2B/1C,EAAIg2C,wBAA0B,IAExNh2C,EAAIi2C,aAAaxnF,KAAKg4E,WAAY,EAAG,EAAGh4E,KAAKg4E,WAAY,EAAG,EAG5D,IAAIl0D,GAAI9jB,KAAKgnF,kBAAkBt8C,YAC3Bh9B,EAAI1N,KAAKgnF,kBAAkBt3C,YAC/B6B,GAAIE,UAAU,EAAG,EAAG3tB,EAAGpW,GAEvB6jC,EAAIk2C,aAAaznF,KAAKg9E,UAAW,EAAG,GACpCzrC,EAAIiB,UAAY,eAAiB,EAAIjlC,EAAIK,GAAK,IAC9C2jC,EAAIm2C,OAAO1nF,KAAK+8E,kBAAkBn/C,EAAG59B,KAAK+8E,kBAAkB97D,EAAGjhB,KAAKoM,GACpEmlC,EAAI9J,OAEJznC,KAAK2nF,gBAAgB5iF,MAAQ,IAAMwI,EAAIK,EACvC5N,KAAK4nF,aAAa7iF,MAAQ,IAAMgL,EAAK7J,EAErClG,KAAK6nF,gBAAgB/4E,MAAM+7B,gBAAkB,QAAU7qC,KAAKi9E,aAAa7wE,EAAI,IAAMpM,KAAKi9E,aAAa5wE,EAAI,IAAMrM,KAAKi9E,aAAa92E,EAAI,IAAMnG,KAAKi9E,aAAa/2E,EAAI,IACjKlG,KAAK8nF,YAAYh5E,MAAM+7B,gBAAkB,QAAU7qC,KAAKyM,MAAML,EAAI,IAAMpM,KAAKyM,MAAMJ,EAAI,IAAMrM,KAAKyM,MAAMtG,EAAI,IAAMnG,KAAKyM,MAAMvG,EAAI,OAQnIyD,IAAK,WACL5E,MAAO,WACL/E,KAAKgnF,kBAAkBl4E,MAAM0vB,MAAQ,OACrCx+B,KAAKgnF,kBAAkBl4E,MAAM2vB,OAAS,OAEtCz+B,KAAKgnF,kBAAkBxoD,MAAQ,IAAMx+B,KAAKg4E,WAC1Ch4E,KAAKgnF,kBAAkBvoD,OAAS,IAAMz+B,KAAKg4E,cAS7CruE,IAAK,UACL5E,MAAO,WAYL,GAXA/E,KAAKwqC,MAAQpN,SAASM,cAAc,OACpC19B,KAAKwqC,MAAMzhC,UAAY,mBAEvB/I,KAAK+nF,eAAiB3qD,SAASM,cAAc,OAC7C19B,KAAK+mF,oBAAsB3pD,SAASM,cAAc,OAClD19B,KAAK+mF,oBAAoBh+E,UAAY,eACrC/I,KAAK+nF,eAAezqD,YAAYt9B,KAAK+mF,qBAErC/mF,KAAKgnF,kBAAoB5pD,SAASM,cAAc,UAChD19B,KAAK+nF,eAAezqD,YAAYt9B,KAAKgnF,mBAEhChnF,KAAKgnF,kBAAkBx1C,WAOrB,CACL,GAAID,GAAMvxC,KAAKgnF,kBAAkBx1C,WAAW,KAC5CxxC,MAAKg4E,YAAcjtE,OAAOm8E,kBAAoB,IAAM31C,EAAI41C,8BAAgC51C,EAAI61C,2BAA6B71C,EAAI81C,0BAA4B91C,EAAI+1C,yBAA2B/1C,EAAIg2C,wBAA0B,GAEtNvnF,KAAKgnF,kBAAkBx1C,WAAW,MAAMg2C,aAAaxnF,KAAKg4E,WAAY,EAAG,EAAGh4E,KAAKg4E,WAAY,EAAG,OAX1D,CACtC,GAAIrpC,GAAWvR,SAASM,cAAc,MACtCiR,GAAS7/B,MAAMrC,MAAQ,MACvBkiC,EAAS7/B,MAAM8/B,WAAa,OAC5BD,EAAS7/B,MAAM+/B,QAAU,OACzBF,EAASG,UAAY,mDACrB9uC,KAAKgnF,kBAAkB1pD,YAAYqR,GAQrC3uC,KAAK+nF,eAAeh/E,UAAY,YAEhC/I,KAAKgoF,WAAa5qD,SAASM,cAAc,OACzC19B,KAAKgoF,WAAWj/E,UAAY,cAE5B/I,KAAKioF,cAAgB7qD,SAASM,cAAc,OAC5C19B,KAAKioF,cAAcl/E,UAAY,iBAE/B/I,KAAKkoF,SAAW9qD,SAASM,cAAc,OACvC19B,KAAKkoF,SAASn/E,UAAY,YAE1B/I,KAAK4nF,aAAexqD,SAASM,cAAc,QAC3C,KACE19B,KAAK4nF,aAAahgF,KAAO,QACzB5H,KAAK4nF,aAAahjF,IAAM,IACxB5E,KAAK4nF,aAAa/iF,IAAM,MACxB,MAAOs1E,IACTn6E,KAAK4nF,aAAa7iF,MAAQ,MAC1B/E,KAAK4nF,aAAa7+E,UAAY,YAE9B/I,KAAK2nF,gBAAkBvqD,SAASM,cAAc,QAC9C,KACE19B,KAAK2nF,gBAAgB//E,KAAO,QAC5B5H,KAAK2nF,gBAAgB/iF,IAAM,IAC3B5E,KAAK2nF,gBAAgB9iF,IAAM,MAC3B,MAAOs1E,IACTn6E,KAAK2nF,gBAAgB5iF,MAAQ,MAC7B/E,KAAK2nF,gBAAgB5+E,UAAY,YAEjC/I,KAAKgoF,WAAW1qD,YAAYt9B,KAAK4nF,cACjC5nF,KAAKioF,cAAc3qD,YAAYt9B,KAAK2nF,gBAEpC,IAAI3nD,GAAKhgC,IACTA,MAAK4nF,aAAav0C,SAAW,WAC3BrT,EAAGmoD,YAAYnoF,KAAK+E,QAEtB/E,KAAK4nF,aAAatN,QAAU,WAC1Bt6C,EAAGmoD,YAAYnoF,KAAK+E,QAEtB/E,KAAK2nF,gBAAgBt0C,SAAW,WAC9BrT,EAAGooD,eAAepoF,KAAK+E,QAEzB/E,KAAK2nF,gBAAgBrN,QAAU,WAC7Bt6C,EAAGooD,eAAepoF,KAAK+E,QAGzB/E,KAAKqoF,gBAAkBjrD,SAASM,cAAc,OAC9C19B,KAAKqoF,gBAAgBt/E,UAAY,2BACjC/I,KAAKqoF,gBAAgBv5C,UAAY,cAEjC9uC,KAAKsoF,aAAelrD,SAASM,cAAc,OAC3C19B,KAAKsoF,aAAav/E,UAAY,wBAC9B/I,KAAKsoF,aAAax5C,UAAY,WAE9B9uC,KAAK8nF,YAAc1qD,SAASM,cAAc,OAC1C19B,KAAK8nF,YAAY/+E,UAAY,gBAC7B/I,KAAK8nF,YAAYh5C,UAAY,MAE7B9uC,KAAK6nF,gBAAkBzqD,SAASM,cAAc,OAC9C19B,KAAK6nF,gBAAgB9+E,UAAY,oBACjC/I,KAAK6nF,gBAAgB/4C,UAAY,UAEjC9uC,KAAKuoF,aAAenrD,SAASM,cAAc,OAC3C19B,KAAKuoF,aAAax/E,UAAY,wBAC9B/I,KAAKuoF,aAAaz5C,UAAY,SAC9B9uC,KAAKuoF,aAAa/rC,QAAUx8C,KAAK2mF,MAAMpnC,KAAKv/C,MAAM,GAElDA,KAAKwoF,YAAcprD,SAASM,cAAc,OAC1C19B,KAAKwoF,YAAYz/E,UAAY,uBAC7B/I,KAAKwoF,YAAY15C,UAAY,QAC7B9uC,KAAKwoF,YAAYhsC,QAAUx8C,KAAKyoF,OAAOlpC,KAAKv/C,MAE5CA,KAAK0oF,WAAatrD,SAASM,cAAc,OACzC19B,KAAK0oF,WAAW3/E,UAAY,sBAC5B/I,KAAK0oF,WAAW55C,UAAY,OAC5B9uC,KAAK0oF,WAAWlsC,QAAUx8C,KAAK2oF,MAAMppC,KAAKv/C,MAE1CA,KAAK4oF,WAAaxrD,SAASM,cAAc,OACzC19B,KAAK4oF,WAAW7/E,UAAY,sBAC5B/I,KAAK4oF,WAAW95C,UAAY,YAC5B9uC,KAAK4oF,WAAWpsC,QAAUx8C,KAAK6oF,UAAUtpC,KAAKv/C,MAE9CA,KAAKwqC,MAAMlN,YAAYt9B,KAAK+nF,gBAC5B/nF,KAAKwqC,MAAMlN,YAAYt9B,KAAKkoF,UAC5BloF,KAAKwqC,MAAMlN,YAAYt9B,KAAKqoF,iBAC5BroF,KAAKwqC,MAAMlN,YAAYt9B,KAAKioF,eAC5BjoF,KAAKwqC,MAAMlN,YAAYt9B,KAAKsoF,cAC5BtoF,KAAKwqC,MAAMlN,YAAYt9B,KAAKgoF,YAC5BhoF,KAAKwqC,MAAMlN,YAAYt9B,KAAK8nF,aAC5B9nF,KAAKwqC,MAAMlN,YAAYt9B,KAAK6nF,iBAE5B7nF,KAAKwqC,MAAMlN,YAAYt9B,KAAKuoF,cAC5BvoF,KAAKwqC,MAAMlN,YAAYt9B,KAAKwoF,aAC5BxoF,KAAKwqC,MAAMlN,YAAYt9B,KAAK0oF,YAC5B1oF,KAAKwqC,MAAMlN,YAAYt9B,KAAK4oF,eAQ9Bj/E,IAAK,cACL5E,MAAO,WACL,GAAI20E,GAAS15E,IAEbA,MAAKw2E,QACLx2E,KAAK8oF,SACL9oF,KAAKokD,OAAS,GAAIpgD,GAAOhE,KAAKgnF,mBAC9BhnF,KAAKokD,OAAOptB,IAAI,SAAS5e,KAAMqwC,QAAQ,IAEvC6V,EAAW3C,QAAQ37D,KAAKokD,OAAQ,SAAUt5C,GACxC4uE,EAAOqP,cAAcj+E,KAEvB9K,KAAKokD,OAAOhlB,GAAG,MAAO,SAAUt0B,GAC9B4uE,EAAOqP,cAAcj+E,KAEvB9K,KAAKokD,OAAOhlB,GAAG,WAAY,SAAUt0B,GACnC4uE,EAAOqP,cAAcj+E,KAEvB9K,KAAKokD,OAAOhlB,GAAG,UAAW,SAAUt0B,GAClC4uE,EAAOqP,cAAcj+E,KAEvB9K,KAAKokD,OAAOhlB,GAAG,SAAU,SAAUt0B,GACjC4uE,EAAOqP,cAAcj+E,QASzBnB,IAAK,qBACL5E,MAAO,WACL,GAAI/E,KAAK88E,aAAc,EAAO,CAC5B,GAAIvrC,GAAMvxC,KAAKgnF,kBAAkBx1C,WAAW,KACnBjrC,UAArBvG,KAAKinF,cACPjnF,KAAKg4E,YAAcjtE,OAAOm8E,kBAAoB,IAAM31C,EAAI41C,8BAAgC51C,EAAI61C,2BAA6B71C,EAAI81C,0BAA4B91C,EAAI+1C,yBAA2B/1C,EAAIg2C,wBAA0B,IAExNh2C,EAAIi2C,aAAaxnF,KAAKg4E,WAAY,EAAG,EAAGh4E,KAAKg4E,WAAY,EAAG,EAG5D,IAAIl0D,GAAI9jB,KAAKgnF,kBAAkBt8C,YAC3Bh9B,EAAI1N,KAAKgnF,kBAAkBt3C,YAC/B6B,GAAIE,UAAU,EAAG,EAAG3tB,EAAGpW,EAGvB,IAAIkwB,GAAIr3B,OACJ0a,EAAI1a,OACJkI,EAAMlI,OACNyiF,EAAMziF,MACVvG,MAAK+8E,mBAAsBn/C,EAAO,GAAJ9Z,EAAS7C,EAAO,GAAJvT,GAC1C1N,KAAKoM,EAAI,IAAO0X,CAChB,IAAIgjE,GAAe,EAAI7hF,KAAK8wC,GAAK,IAC7BkzC,EAAO,EAAI,IACXC,EAAO,EAAIlpF,KAAKoM,EAChBO,EAAMpG,MACV,KAAKkI,EAAM,EAAS,IAANA,EAAWA,IACvB,IAAKu6E,EAAM,EAAGA,EAAMhpF,KAAKoM,EAAG48E,IAC1BprD,EAAI59B,KAAK+8E,kBAAkBn/C,EAAIorD,EAAM/jF,KAAKqkC,IAAIw9C,EAAer4E,GAC7DwS,EAAIjhB,KAAK+8E,kBAAkB97D,EAAI+nE,EAAM/jF,KAAKwkC,IAAIq9C,EAAer4E,GAC7D9B,EAAMhM,EAAK4O,SAASd,EAAMw6E,EAAMD,EAAME,EAAM,GAC5C33C,EAAIiB,UAAY,OAAS7lC,EAAIP,EAAI,IAAMO,EAAIN,EAAI,IAAMM,EAAIxG,EAAI,IAC7DorC,EAAI43C,SAASvrD,EAAI,GAAK3c,EAAI,GAAK,EAAG,EAGtCswB,GAAIY,YAAc,gBAClBZ,EAAIm2C,OAAO1nF,KAAK+8E,kBAAkBn/C,EAAG59B,KAAK+8E,kBAAkB97D,EAAGjhB,KAAKoM,GACpEmlC,EAAI7J,SAEJ1nC,KAAKg9E,UAAYzrC,EAAI63C,aAAa,EAAG,EAAGtlE,EAAGpW,GAE7C1N,KAAK88E,WAAY,KAUnBnzE,IAAK,gBACL5E,MAAO,SAAuB+F,GAC5B,GAAI4zB,GAAO1+B,KAAK+nF,eAAer/E,wBAC3BC,EAAOmC,EAAMurC,OAAOzY,EAAIc,EAAK/1B,KAC7BE,EAAMiC,EAAMurC,OAAOp1B,EAAIyd,EAAK71B,IAE5BwgF,EAAU,GAAMrpF,KAAK+nF,eAAer4C,aACpC45C,EAAU,GAAMtpF,KAAK+nF,eAAer9C,YAEpC9M,EAAIj1B,EAAO2gF,EACXroE,EAAIpY,EAAMwgF,EAEV3+B,EAAQzlD,KAAKunD,MAAM5uB,EAAG3c,GACtB40B,EAAS,IAAO5wC,KAAKL,IAAIK,KAAKw0C,KAAK7b,EAAIA,EAAI3c,EAAIA,GAAIqoE,GAEnDhZ,EAASrrE,KAAKwkC,IAAIihB,GAAS7U,EAASwzC,EACpCE,EAAUtkF,KAAKqkC,IAAIohB,GAAS7U,EAASyzC,CAEzCtpF,MAAK+mF,oBAAoBj4E,MAAMjG,IAAMynE,EAAS,GAAMtwE,KAAK+mF,oBAAoBr3C,aAAe,KAC5F1vC,KAAK+mF,oBAAoBj4E,MAAMnG,KAAO4gF,EAAU,GAAMvpF,KAAK+mF,oBAAoBr8C,YAAc,IAG7F,IAAIh9B,GAAIg9C,GAAS,EAAIzlD,KAAK8wC,GAC1BroC,GAAQ,EAAJA,EAAQA,EAAI,EAAIA,CACpB,IAAIC,GAAIkoC,EAAS71C,KAAKoM,EAClBmB,EAAM5M,EAAK0N,SAASrO,KAAKyM,MAAML,EAAGpM,KAAKyM,MAAMJ,EAAGrM,KAAKyM,MAAMtG,EAC/DoH,GAAIG,EAAIA,EACRH,EAAII,EAAIA,CACR,IAAIoC,GAAOpP,EAAK4O,SAAShC,EAAIG,EAAGH,EAAII,EAAGJ,EAAIK,EAC3CmC,GAAQ,EAAI/P,KAAKyM,MAAMvG,EACvBlG,KAAKyM,MAAQsD,EAGb/P,KAAK6nF,gBAAgB/4E,MAAM+7B,gBAAkB,QAAU7qC,KAAKi9E,aAAa7wE,EAAI,IAAMpM,KAAKi9E,aAAa5wE,EAAI,IAAMrM,KAAKi9E,aAAa92E,EAAI,IAAMnG,KAAKi9E,aAAa/2E,EAAI,IACjKlG,KAAK8nF,YAAYh5E,MAAM+7B,gBAAkB,QAAU7qC,KAAKyM,MAAML,EAAI,IAAMpM,KAAKyM,MAAMJ,EAAI,IAAMrM,KAAKyM,MAAMtG,EAAI,IAAMnG,KAAKyM,MAAMvG,EAAI,QAI9H22E,IAGTj9E,GAAQ,WAAai9E,EACrBh9E,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS82E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBv2E,EAAOT,EAAoB,GAE3BwhD,GAAa,EACbl+C,EAAa+C,OACb86C,EAAa,sCAKbD,EAAY,WACd,QAASA,KACP41B,EAAgBh3E,KAAMohD,GA6RxB,MAnRAg2B,GAAah2B,EAAW,OACtBz3C,IAAK,WACL5E,MAAO,SAAkBlB,EAAS2lF,EAAkBC,GAClD/nC,GAAa,EACbl+C,EAAagmF,CACb,IAAIE,GAAcF,CAKlB,OAJkBjjF,UAAdkjF,IACFC,EAAcF,EAAiBC,IAEjCroC,EAAU17C,MAAM7B,EAAS6lF,MAClBhoC,KAUT/3C,IAAK,QACL5E,MAAO,SAAelB,EAAS2lF,EAAkBhQ,GAC/C,IAAK,GAAI/tE,KAAU5H,GACbA,EAAQmC,eAAeyF,IACzB21C,EAAUuoC,MAAMl+E,EAAQ5H,EAAS2lF,EAAkBhQ,MAazD7vE,IAAK,QACL5E,MAAO,SAAe0G,EAAQ5H,EAAS2lF,EAAkBhQ,GACtBjzE,SAA7BijF,EAAiB/9E,IAAsDlF,SAA7BijF,EAAiBI,QAC7DxoC,EAAUyoC,cAAcp+E,EAAQ+9E,EAAkBhQ,GACZjzE,SAA7BijF,EAAiB/9E,IAAsDlF,SAA7BijF,EAAiBI,QAEzB,WAAvCxoC,EAAUn5C,QAAQpE,EAAQ4H,KAAkElF,SAAzCijF,EAA0B,QAAEM,SAEjF1oC,EAAU2oC,YAAYt+E,EAAQ5H,EAAS2lF,EAAkB,UAAWA,EAA0B,QAAEM,SAAUtQ,GAE1Gp4B,EAAU2oC,YAAYt+E,EAAQ5H,EAAS2lF,EAAkB,UAAWA,EAA0B,QAAGhQ,GAIzDjzE,SAAtCijF,EAAiB/9E,GAAQq+E,SAE3B1oC,EAAU2oC,YAAYt+E,EAAQ5H,EAAS2lF,EAAkB/9E,EAAQ+9E,EAAiB/9E,GAAQq+E,SAAUtQ,GAEpGp4B,EAAU2oC,YAAYt+E,EAAQ5H,EAAS2lF,EAAkB/9E,EAAQ+9E,EAAiB/9E,GAAS+tE,MAejG7vE,IAAK,cACL5E,MAAO,SAAqB0G,EAAQ5H,EAAS2lF,EAAkBQ,EAAiBC,EAAczQ,GAC5F,GAAI0Q,GAAa9oC,EAAUn5C,QAAQpE,EAAQ4H,IACvC0+E,EAAgBF,EAAaC,EACX3jF,UAAlB4jF,EAEuC,UAArC/oC,EAAUn5C,QAAQkiF,IAC2B,KAA3CA,EAAc5iF,QAAQ1D,EAAQ4H,KAChCkU,QAAQw+B,IAAI,iCAAmC1yC,EAAS,yBAAgC21C,EAAUgpC,MAAMD,GAAiB,SAAWtmF,EAAQ4H,GAAU,MAAQ21C,EAAUipC,cAAc7Q,EAAM/tE,GAAS41C,GACrMK,GAAa,GAKS,WAAfwoC,GAA+C,YAApBF,IACpCxQ,EAAO74E,EAAKwH,mBAAmBqxE,EAAM/tE,GACrC21C,EAAU17C,MAAM7B,EAAQ4H,GAAS+9E,EAAiBQ,GAAkBxQ,IAErCjzE,SAAxB0jF,EAAkB,MAE3BtqE,QAAQw+B,IAAI,gCAAkC1yC,EAAS,gBAAkB21C,EAAUgpC,MAAMhjF,OAAO6H,KAAKg7E,IAAiB,eAAiBC,EAAa,MAAQrmF,EAAQ4H,GAAU,IAAM21C,EAAUipC,cAAc7Q,EAAM/tE,GAAS41C,GAC3NK,GAAa,MAIjB/3C,IAAK,UACL5E,MAAO,SAAiBX,GACtB,GAAIwD,SAAcxD,EAElB,OAAa,WAATwD,EACa,OAAXxD,EACK,OAELA,YAAkByD,SACb,UAELzD,YAAkBC,QACb,SAELD,YAAkBe,QACb,SAEL2B,MAAMC,QAAQ3C,GACT,QAELA,YAAkBiB,MACb,OAEekB,SAApBnC,EAAOgH,SACF,MAELhH,EAAOkR,oBAAqB,EACvB,SAEF,SACW,WAAT1N,EACF,SACW,YAATA,EACF,UACW,WAATA,EACF,SACWrB,SAATqB,EACF,YAEFA,KAGT+B,IAAK,gBACL5E,MAAO,SAAuB0G,EAAQ5H,EAAS21E,GAC7C,GAAI8Q,GAAclpC,EAAUmpC,cAAc9+E,EAAQ5H,EAAS21E,GAAM,GAC7DgR,EAAeppC,EAAUmpC,cAAc9+E,EAAQjI,MAAgB,GAE/DinF,EAAuB,EACvBC,EAAwB,CAEGnkF,UAA3B+jF,EAAYK,WACdhrE,QAAQw+B,IAAI,+BAAiC1yC,EAAS,QAAU21C,EAAUipC,cAAcC,EAAY9Q,KAAM/tE,EAAQ,IAAM,6CAA+C6+E,EAAYK,WAAa,SAAUtpC,GACjMmpC,EAAap6C,UAAYs6C,GAAyBJ,EAAYl6C,SAAWo6C,EAAap6C,SAC/FzwB,QAAQw+B,IAAI,+BAAiC1yC,EAAS,QAAU21C,EAAUipC,cAAcC,EAAY9Q,KAAM/tE,EAAQ,IAAM,uDAAyD21C,EAAUipC,cAAcG,EAAahR,KAAMgR,EAAaI,aAAc,IAAKvpC,GACnPipC,EAAYl6C,UAAYq6C,EACjC9qE,QAAQw+B,IAAI,+BAAiC1yC,EAAS,oBAAsB6+E,EAAYM,aAAe,KAAOxpC,EAAUipC,cAAcC,EAAY9Q,KAAM/tE,GAAS41C,GAEjK1hC,QAAQw+B,IAAI,+BAAiC1yC,EAAS,iCAAmC21C,EAAUgpC,MAAMhjF,OAAO6H,KAAKpL,IAAYu9C,EAAUipC,cAAc7Q,EAAM/tE,GAAS41C,GAG1KK,GAAa,KAYf/3C,IAAK,gBACL5E,MAAO,SAAuB0G,EAAQ5H,EAAS21E,GAC7C,GAAIqR,GAAYxkF,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpFzB,EAAM,IACNgmF,EAAe,GACfE,KACAC,EAAkBt/E,EAAO0L,cACzBwzE,EAAapkF,MACjB,KAAK,GAAIykF,KAAMnnF,GAAS,CACtB,GAAIusC,GAAW7pC,MACf,IAA6BA,SAAzB1C,EAAQmnF,GAAIlB,UAA0Be,KAAc,EAAM,CAC5D,GAAIv+E,GAAS80C,EAAUmpC,cAAc9+E,EAAQ5H,EAAQmnF,GAAKrqF,EAAKwH,mBAAmBqxE,EAAMwR,GACpFpmF,GAAM0H,EAAO8jC,WACfw6C,EAAet+E,EAAOs+E,aACtBE,EAAmBx+E,EAAOktE,KAC1B50E,EAAM0H,EAAO8jC,SACbu6C,EAAar+E,EAAOq+E,gBAG4B,KAA9CK,EAAG7zE,cAAc5P,QAAQwjF,KAC3BJ,EAAaK,GAEf56C,EAAWgR,EAAU6pC,oBAAoBx/E,EAAQu/E,GAC7CpmF,EAAMwrC,IACRw6C,EAAeI,EACfF,EAAmBnqF,EAAK4H,UAAUixE,GAClC50E,EAAMwrC,GAIZ,OAASw6C,aAAcA,EAAcpR,KAAMsR,EAAkB16C,SAAUxrC,EAAK+lF,WAAYA,MAG1FhhF,IAAK,gBACL5E,MAAO,SAAuBy0E,EAAM/tE,GAIlC,IAAK,GAHDi8C,GAASrhD,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,6BAA+BA,UAAU,GAExG4gD,EAAM,OAASS,EAAS,gBACnBjhD,EAAI,EAAGA,EAAI+yE,EAAKlzE,OAAQG,IAAK,CACpC,IAAK,GAAIgK,GAAI,EAAOhK,EAAI,EAARgK,EAAWA,IACzBw2C,GAAO,IAETA,IAAOuyB,EAAK/yE,GAAK,QAEnB,IAAK,GAAIgK,GAAI,EAAGA,EAAI+oE,EAAKlzE,OAAS,EAAGmK,IACnCw2C,GAAO,IAETA,IAAOx7C,EAAS,IAChB,KAAK,GAAIhF,GAAI,EAAGA,EAAI+yE,EAAKlzE,OAAS,EAAGG,IAAK,CACxC,IAAK,GAAIgK,GAAI,EAAGA,EAAI+oE,EAAKlzE,OAASG,EAAGgK,IACnCw2C,GAAO,IAETA,IAAO,MAET,MAAOA,GAAM,UAGft9C,IAAK,QACL5E,MAAO,SAAelB,GACpB,MAAO4+B,MAAKC,UAAU7+B,GAASsI,QAAQ,gCAAiC,IAAIA,QAAQ,QAAS,SAY/FxC,IAAK,sBACL5E,MAAO,SAA6BmB,EAAGC,GACrC,GAAiB,IAAbD,EAAEI,OAAc,MAAOH,GAAEG,MAC7B,IAAiB,IAAbH,EAAEG,OAAc,MAAOJ,GAAEI,MAE7B,IAGIG,GAHAykF,IAIJ,KAAKzkF,EAAI,EAAGA,GAAKN,EAAEG,OAAQG,IACzBykF,EAAOzkF,IAAMA,EAIf,IAAIgK,EACJ,KAAKA,EAAI,EAAGA,GAAKvK,EAAEI,OAAQmK,IACzBy6E,EAAO,GAAGz6E,GAAKA,CAIjB,KAAKhK,EAAI,EAAGA,GAAKN,EAAEG,OAAQG,IACzB,IAAKgK,EAAI,EAAGA,GAAKvK,EAAEI,OAAQmK,IACrBtK,EAAEkqB,OAAO5pB,EAAI,IAAMP,EAAEmqB,OAAO5f,EAAI,GAClCy6E,EAAOzkF,GAAGgK,GAAKy6E,EAAOzkF,EAAI,GAAGgK,EAAI,GAEjCy6E,EAAOzkF,GAAGgK,GAAKxL,KAAKL,IAAIsmF,EAAOzkF,EAAI,GAAGgK,EAAI,GAAK,EAC/CxL,KAAKL,IAAIsmF,EAAOzkF,GAAGgK,EAAI,GAAK,EAC5By6E,EAAOzkF,EAAI,GAAGgK,GAAK,GAKzB,OAAOy6E,GAAO/kF,EAAEG,QAAQJ,EAAEI,YAIvB86C,IAGTxhD,GAAQ,WAAawhD,EACrBxhD,EAAQyhD,WAAaA,GAIjB,SAASxhD,EAAQD,GAWrBwH,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAET,IAAIub,GAAS,SACT6qE,EAAU,UACV/0E,EAAS,SACT3M,EAAQ,QACRkU,EAAO,OACPvZ,EAAS,SACTw1C,EAAM,MACN71C,EAAS,SACTqnF,EAAM,MAEN5nF,GACFy8D,WACEpvD,SAAWs6E,UAASA,GACpB3rD,QAAU2rD,UAASA,EAASE,WAAY,YACxCjnD,WAAawV,IAAKA,GAClBkwC,UAAY1lF,OAAQA,EAAQ+mF,UAASA,EAASE,WAAY,aAI5D3oB,OAASpiD,OAAQA,GACjBu+B,YAAcssC,UAASA,GACvBrsC,gBAAkB1oC,OAAQA,GAC1BwpD,YAAcurB,UAASA,GACvB1Z,gBAAkBnxD,OAAQA,EAAQ7W,MAAOA,GACzC05D,UACEl9C,KAAOklE,UAASA,EAAS5kF,UAAa,aACtCo7B,QAAUwpD,UAASA,EAAS5kF,UAAa,aACzC88D,aAAe8nB,UAASA,EAAS5kF,UAAa,aAC9C68D,YAAc+nB,UAASA,EAAS5kF,UAAa,aAC7CujF,UAAYqB,UAASA,EAAS/mF,OAAQA,IAExC0uC,KAAO18B,OAAQA,EAAQuH,KAAMA,EAAM2C,OAAQA,EAAQvc,OAAQA,GAC3DsP,QACEq4D,aACE5lD,aAAexF,OAAQA,EAAQ/Z,UAAa,aAC5Csf,QAAUvF,OAAQA,EAAQ/Z,UAAa,aACvCqf,QAAUtF,OAAQA,EAAQ/Z,UAAa,aACvCwe,MAAQzE,OAAQA,EAAQ/Z,UAAa,aACrC6b,SAAW9B,OAAQA,EAAQ/Z,UAAa,aACxCof,KAAOrF,OAAQA,EAAQ/Z,UAAa,aACpCkW,OAAS6D,OAAQA,EAAQ/Z,UAAa,aACtCiW,MAAQ8D,OAAQA,EAAQ/Z,UAAa,aACrCujF,UAAY1lF,OAAQA,IAEtBunE,aACE7lD,aAAexF,OAAQA,EAAQ/Z,UAAa,aAC5Csf,QAAUvF,OAAQA,EAAQ/Z,UAAa,aACvCqf,QAAUtF,OAAQA,EAAQ/Z,UAAa,aACvCwe,MAAQzE,OAAQA,EAAQ/Z,UAAa,aACrC6b,SAAW9B,OAAQA,EAAQ/Z,UAAa,aACxCof,KAAOrF,OAAQA,EAAQ/Z,UAAa,aACpCkW,OAAS6D,OAAQA,EAAQ/Z,UAAa,aACtCiW,MAAQ8D,OAAQA,EAAQ/Z,UAAa,aACrCujF,UAAY1lF,OAAQA,IAEtB0lF,UAAY1lF,OAAQA,IAEtBL,QAAUsnF,WAAY,YACtBtoB,YAAcziD,OAAQA,EAAQ+qE,WAAY,YAC1C/nB,eACEr9C,KAAOklE,UAASA,EAAS5kF,UAAa,aACtCo7B,QAAUwpD,UAASA,EAAS5kF,UAAa,aACzCy6B,OAASmqD,UAASA,EAAS5kF,UAAa,aACxCujF,UAAYqB,UAASA,EAAS/mF,OAAQA,IAExCu+D,gBAAkB0oB,WAAY,YAC9B5sD,QAAUne,OAAQA,EAAQlK,OAAQA,GAClCopC,aACE5M,OAASj1B,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC7D+uC,KAAOn1B,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC3Dq4D,QAAU97C,OAAQA,GAClBwpE,UAAY1lF,OAAQA,EAAQqF,MAAOA,IAErCy5D,sBAAwBioB,UAASA,GACjC73E,QAAUgN,OAAQA,GAClB5I,SACEkyE,SAAWwB,IAAKA,GAChBtB,UAAY1lF,OAAQA,IAEtBmgC,QACEya,MAAQ5oC,OAAQA,GAChB5E,MACE0+B,YAAc95B,OAAQA,EAAQ7P,UAAa,aAC3C4pC,UAAY/5B,OAAQA,EAAQ7P,UAAa,aACzCujF,UAAY1lF,OAAQA,EAAQgS,OAAQA,IAEtC0zE,UAAY1lF,OAAQA,EAAQgS,OAAQA,IAEtCvR,KAAO8Y,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC3Dk7C,WAAa7oC,OAAQA,EAAQkK,OAAQA,GACrCmyD,eAAiBr8D,OAAQA,GACzBxR,KAAO+Y,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC3Dm7C,WAAa9oC,OAAQA,EAAQkK,OAAQA,GACrC+3C,UAAY8yB,UAASA,GACrBloB,aAAekoB,UAASA,GACxBhgB,qBAAuBggB,UAASA,GAChC5nB,OAAS8nB,WAAY,YACrB7nB,UAAY6nB,WAAY,YACxB5nB,QAAU4nB,WAAY,YACtB1nB,UAAY0nB,WAAY,YACxB3nB,UAAY2nB,WAAY,YACxBznB,YAAcynB,WAAY,YAC1BxnB,aAAewnB,WAAY,YAC3BvnB,eAAiBunB,WAAY,YAC7BrqD,OAASqqD,WAAY,YACrBtsC,aACEC,MAAQ1+B,OAAQA,EAAQ/Z,UAAa,aACrCiL,MAAQ8O,OAAQA,EAAQ/Z,UAAa,aACrCujF,UAAYxpE,OAAQA,EAAQlc,OAAQA,IAEtC4+D,YAAcmoB,UAASA,GACvBxU,iBAAmBwU,UAASA,GAC5B3Y,iBAAmB2Y,UAASA,GAC5B5Y,iBAAmB4Y,UAASA,GAC5BrpF,OAASqpF,UAASA,GAClB7nC,MAAQ+nC,WAAY,WAAYC,OAAQ,QACxC14C,OAASj1B,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC7DutE,UAAY+Z,WAAY,YACxBxtD,eAAiBwtD,WAAY,YAC7B3rC,UACE16C,OAASsb,OAAQA,EAAQ/Z,UAAa,aACtCosC,MAAQv8B,OAAQA,EAAQ7P,UAAa,aACrCujF,UAAY1lF,OAAQA,IAEtBwD,MAAQ0Y,OAAQA,GAChBke,OAASle,OAAQA,EAAQlK,OAAQA,GACjCkiD,UAAY6yB,UAASA,GACrBnwB,SAAW16C,QAAS,UAAW,SAAU,UAAW,KACpDk4C,SAAWpiD,OAAQA,GACnBmiD,SAAWniD,OAAQA,GAEnB0zE,UAAY1lF,OAAQA,IAGlBk9C,GACF1uC,QACE8vD,OAAQ,SAAU,OAAQ,SAC1B7jB,YAAY,EACZC,gBAAiB,GAAI,EAAG,IAAM,IAC9B8gB,YAAY,EAEZuD,UACEl9C,KAAK,EACL0b,QAAQ,EACR0hC,aAAa,EACbD,YAAY,GAEdtwB,IAAK,GACLz/B,QACEq4D,aACE5lD,YAAa,MACbD,OAAQ,IACRD,OAAQ,QACRb,KAAM,QACN3C,QAAS,QACTuD,IAAK,IACLlJ,MAAO,MACPD,KAAM,QAERmvD,aACE7lD,YAAa,WACbD,OAAQ,eACRD,OAAQ,aACRb,KAAM,aACN3C,QAAS,YACTuD,IAAK,YACLlJ,MAAO,OACPD,KAAM,KAKV+uE,iBAAiB,EACjB9sD,OAAQ,GAERnrB,OAAQ,GACRixB,QACEya,MAAO,GAAI,EAAG,IAAK,GACnBxtC,MACE0+B,YAAa,GAAI,EAAG,IAAK,GACzBC,UAAW,GAAI,EAAG,IAAK,KAG3BtrC,IAAK,GACLo6C,UAAW,GACXwzB,eAAgB,EAAG,EAAG,GAAI,GAC1B7tE,IAAK,GACLs6C,UAAW,GACXmZ,UAAU,EACV4K,aAAa,EACbkI,qBAAqB,EAOrBpsB,aACEC,MAAO,OAAQ,SAAU,OACzBxtC,MAAO,SAAU,QAEnBwxD,YAAY,EACZ2T,iBAAiB,EACjBnE,iBAAiB,EACjBD,iBAAiB,EACjBzwE,OAAO,EAEP8wC,MAAO,GAMPhrC,MAAO,MAAO,QAAS,QAAS,cAChC42B,MAAO,OACP85B,UAAU,EACV0C,SAAU,UAAW,SAAU,UAAW,IAC1CxC,SAAU,SAAiB,GAAI,SAAiB,GAChDD,SAAU,GAAI,GAAI,SAAiB,IAIvC34D,GAAQ4D,WAAaA,EACrB5D,EAAQ0hD,iBAAmBA,GAIvB,SAASzhD,EAAQD,EAASM,GA+B9B,QAASuB,GAAQ2iC,EAAWniC,EAAOy8C,EAAQ76C,GAEzC,KAAMiD,MAAMC,QAAQ23C,IAAWA,YAAkB79C,IAAW69C,YAAkB59C,KAAa49C,YAAkBt3C,QAAQ,CACnH,GAAIu3C,GAAgB96C,CACpBA,GAAU66C,EACVA,EAASC,EAGX,GAAI3e,GAAKhgC,IACTA,MAAK4+C,gBACHhM,MAAO,KACPE,IAAK,KAEL+L,YAAY,EAEZE,aACEC,KAAM,SACNxtC,KAAM,UAGRzN,OAAQA,EAERy6B,MAAO,KACPC,OAAQ,KACRwgB,UAAW,KACXC,UAAW,MAEbl/C,KAAK6D,QAAUlD,EAAK0G,cAAerH,KAAK4+C,gBAGxC5+C,KAAKm/C,QAAQ/a,GAGbpkC,KAAKgC,cAELhC,KAAKo/C,MACHxF,IAAK55C,KAAK45C,IACVyF,SAAUr/C,KAAK6G,MACfy4C,SACElgB,GAAIp/B,KAAKo/B,GAAGmgB,KAAKv/C,MACjBu/B,IAAKv/B,KAAKu/B,IAAIggB,KAAKv/C,MACnB63C,KAAM73C,KAAK63C,KAAK0H,KAAKv/C,OAEvBw/C,eACA7+C,MACEg/C,SAAU3f,EAAG4f,UAAUL,KAAKvf,GAC5B6f,eAAgB7f,EAAG8f,gBAAgBP,KAAKvf,GACxC+f,OAAQ/f,EAAGggB,QAAQT,KAAKvf,GACxBigB,aAAcjgB,EAAGkgB,cAAcX,KAAKvf,KAKxChgC,KAAKmgD,MAAQ,GAAIt+C,GAAM7B,KAAKo/C,MAC5Bp/C,KAAKgC,WAAWwF,KAAKxH,KAAKmgD,OAC1BngD,KAAKo/C,KAAKe,MAAQngD,KAAKmgD,MAGvBngD,KAAK0/C,SAAW,GAAIx8C,GAASlD,KAAKo/C,MAClCp/C,KAAKgC,WAAWwF,KAAKxH,KAAK0/C,UAI1B1/C,KAAKqgD,YAAc,GAAI59C,GAAYzC,KAAKo/C,MACxCp/C,KAAKgC,WAAWwF,KAAKxH,KAAKqgD,aAG1BrgD,KAAKwrF,UAAY,GAAIvoF,GAAUjD,KAAKo/C,MAEpCp/C,KAAKgC,WAAWwF,KAAKxH,KAAKwrF,WAE1BxrF,KAAKugD,UAAY,KACjBvgD,KAAKwgD,WAAa,KAElBxgD,KAAKo/B,GAAG,MAAO,SAAUt0B,GACvBk1B,EAAG6X,KAAK,QAAS7X,EAAGygB,mBAAmB31C,MAEzC9K,KAAKo/B,GAAG,YAAa,SAAUt0B,GAC7Bk1B,EAAG6X,KAAK,cAAe7X,EAAGygB,mBAAmB31C,MAE/C9K,KAAK45C,IAAIl6C,KAAKghD,cAAgB,SAAU51C,GACtCk1B,EAAG6X,KAAK,cAAe7X,EAAGygB,mBAAmB31C,KAI3CjH,GACF7D,KAAKg/B,WAAWn7B,GAId66C,GACF1+C,KAAKghD,UAAUtC,GAIbz8C,GACFjC,KAAKihD,SAASh/C,GAIhBjC,KAAKkhD,UA/HP,GAEIn9C,IAFU7D,EAAoB,IACrBA,EAAoB,IACpBA,EAAoB,IAC7BS,EAAOT,EAAoB,GAC3BW,EAAUX,EAAoB,GAC9BY,EAAWZ,EAAoB,IAC/B2B,EAAQ3B,EAAoB,IAC5ByB,EAAOzB,EAAoB,IAC3BgD,EAAWhD,EAAoB,IAC/BuC,EAAcvC,EAAoB,IAClCwC,EAAaxC,EAAoB,IACjC+C,EAAY/C,EAAoB,IAEhCihD,EAAejhD,EAAoB,IACnCkhD,EAAYlhD,EAAoB,IAAI,WACpCmhD,EAAanhD,EAAoB,IAAImhD,WACrC79C,EAAatD,EAAoB,IAAIsD,WACrC89C,EAAmBphD,EAAoB,IAAIohD,gBAkH/C7/C,GAAQwR,UAAY,GAAItR,GAExBF,EAAQwR,UAAU+rB,WAAa,SAAUn7B,GAEvC,GAAI69C,GAAaN,EAAUO,SAAS99C,EAASL,EACzCk+C,MAAe,GACjB/hC,QAAQw+B,IAAI,2DAA4DkD,GAG1E1/C,EAAKsR,UAAU+rB,WAAWz+B,KAAKP,KAAM6D,IAOvCpC,EAAQwR,UAAUguC,SAAW,SAAUh/C,GACrC,GAGI8/C,GAHA0pC,EAAgC,MAAlBzrF,KAAKugD,SAsBvB,IAfEwB,EAHG9/C,EAEMA,YAAiBpB,IAAWoB,YAAiBnB,GACzCmB,EAGA,GAAIpB,GAAQoB,GACvB2F,MACEgrC,MAAO,OACPE,IAAK,UARI,KAcf9yC,KAAKugD,UAAYwB,EACjB/hD,KAAKwrF,WAAaxrF,KAAKwrF,UAAUvqC,SAASc,GAEtC0pC,EACF,GAA0BllF,QAAtBvG,KAAK6D,QAAQ+uC,OAA0CrsC,QAApBvG,KAAK6D,QAAQivC,IAAkB,CACpE,GAAIF,GAA8BrsC,QAAtBvG,KAAK6D,QAAQ+uC,MAAqB5yC,KAAK6D,QAAQ+uC,MAAQ,KAC/DE,EAA0BvsC,QAApBvG,KAAK6D,QAAQivC,IAAmB9yC,KAAK6D,QAAQivC,IAAM,IAC7D9yC,MAAK6gD,UAAUjO,EAAOE,GAAOgO,WAAW,QAExC9gD,MAAK+gD,KAAMD,WAAW,KAS5Br/C,EAAQwR,UAAU+tC,UAAY,SAAUtC,GAEtC,GAAIqD,EAIFA,GAHGrD,EAEMA,YAAkB79C,IAAW69C,YAAkB59C,GAC3C49C,EAGA,GAAI79C,GAAQ69C,GALZ,KAQf1+C,KAAKwgD,WAAauB,EAClB/hD,KAAKwrF,UAAUxqC,UAAUe,IAS3BtgD,EAAQwR,UAAUy4E,UAAY,SAAU/nC,EAASnlB,EAAOC,GAOtD,MANcl4B,UAAVi4B,IACFA,EAAQ,IAEKj4B,SAAXk4B,IACFA,EAAS,IAE4Bl4B,SAAnCvG,KAAKwrF,UAAU9sC,OAAOiF,GACjB3jD,KAAKwrF,UAAU9sC,OAAOiF,GAAS+nC,UAAUltD,EAAOC,GAEhD,sBAAwBklB,EAAU,KAS7CliD,EAAQwR,UAAU04E,eAAiB,SAAUhoC,GAC3C,MAAuCp9C,UAAnCvG,KAAKwrF,UAAU9sC,OAAOiF,GACjB3jD,KAAKwrF,UAAU9sC,OAAOiF,GAASzQ,UAAkE3sC,SAAtDvG,KAAKwrF,UAAU3nF,QAAQ66C,OAAOgjB,WAAW/d,IAA+E,GAArD3jD,KAAKwrF,UAAU3nF,QAAQ66C,OAAOgjB,WAAW/d,KAEvJ,GAUXliD,EAAQwR,UAAUkvC,aAAe,WAC/B,GAAIv9C,GAAM,KACNC,EAAM,IAGV,KAAK,GAAI8+C,KAAW3jD,MAAKwrF,UAAU9sC,OACjC,GAAI1+C,KAAKwrF,UAAU9sC,OAAO14C,eAAe29C,IACO,GAA1C3jD,KAAKwrF,UAAU9sC,OAAOiF,GAASzQ,QACjC,IAAK,GAAIzsC,GAAI,EAAGA,EAAIzG,KAAKwrF,UAAU9sC,OAAOiF,GAASpD,UAAUj6C,OAAQG,IAAK,CACxE,GAAI+K,GAAOxR,KAAKwrF,UAAU9sC,OAAOiF,GAASpD,UAAU95C,GAChD1B,EAAQpE,EAAKgH,QAAQ6J,EAAKosB,EAAG,QAAQ91B,SACzClD,GAAa,MAAPA,EAAcG,EAAQH,EAAMG,EAAQA,EAAQH,EAClDC,EAAa,MAAPA,EAAcE,EAAcA,EAANF,EAAcE,EAAQF,EAM1D,OACED,IAAY,MAAPA,EAAc,GAAIS,MAAKT,GAAO,KACnCC,IAAY,MAAPA,EAAc,GAAIQ,MAAKR,GAAO,OAUvCpD,EAAQwR,UAAUwtC,mBAAqB,SAAU31C,GAC/C,GAAIg9B,GAAUh9B,EAAMurC,OAASvrC,EAAMurC,OAAOzY,EAAI9yB,EAAMg9B,QAChDG,EAAUn9B,EAAMurC,OAASvrC,EAAMurC,OAAOp1B,EAAInW,EAAMm9B,QAChDrK,EAAIkK,EAAUnnC,EAAK6H,gBAAgBxI,KAAK45C,IAAIoJ,iBAC5C/hC,EAAIgnB,EAAUtnC,EAAKiI,eAAe5I,KAAK45C,IAAIoJ,iBAC3Ch4B,EAAOhrB,KAAKggD,QAAQpiB,GAEpBwlB,EAAa1gD,EAAW2gD,qBAAqBv4C,GAE7CV,EAAUzJ,EAAKsK,UAAUH,GACzB04C,EAAO,IACP7iD,GAAK2K,UAAUlB,EAASpK,KAAK0/C,SAAS9F,IAAI6J,YAC5CD,EAAO,OACExjD,KAAKogD,WAAaz/C,EAAK2K,UAAUlB,EAASpK,KAAKogD,UAAUxG,IAAI6J,YACtED,EAAO,OACE7iD,EAAK2K,UAAUlB,EAASpK,KAAKwrF,UAAUI,UAAUhyC,IAAIpP,OAC9DgZ,EAAO,YACE7iD,EAAK2K,UAAUlB,EAASpK,KAAKwrF,UAAUK,WAAWjyC,IAAIpP,OAC/DgZ,EAAO,YACE7iD,EAAK2K,UAAUlB,EAASpK,KAAKwrF,UAAUM,WAAWlyC,IAAIpP,OAC/DgZ,EAAO,SACE7iD,EAAK2K,UAAUlB,EAASpK,KAAKwrF,UAAUO,YAAYnyC,IAAIpP,OAChEgZ,EAAO,SACgB,MAAdJ,EACTI,EAAO,cACE7iD,EAAK2K,UAAUlB,EAASpK,KAAKqgD,YAAYhE,KAClDmH,EAAO,eACE7iD,EAAK2K,UAAUlB,EAASpK,KAAK45C,IAAIvD,UAC1CmN,EAAO,aAGT,IAAIz+C,MACA6mF,EAAY5rF,KAAKwrF,UAAUI,UAC3BC,EAAa7rF,KAAKwrF,UAAUK,UAQhC,OAPKD,GAAU5uB,QACbj4D,EAAMyC,KAAKokF,EAAUI,cAAc/qE,IAEhC4qE,EAAW7uB,QACdj4D,EAAMyC,KAAKqkF,EAAWG,cAAc/qE,KAIpCnW,MAAOA,EACP04C,KAAMA,EACNI,MAAO94C,EAAM+4C,SAAW/4C,EAAM+4C,SAASD,MAAQ94C,EAAM84C,MACrDE,MAAOh5C,EAAM+4C,SAAW/4C,EAAM+4C,SAASC,MAAQh5C,EAAMg5C,MACrDlmB,EAAGA,EACH3c,EAAGA,EACH+J,KAAMA,EACNjmB,MAAOA,IASXtD,EAAQwR,UAAUsuC,oBAAsB,WACtC,MAAO,IAAIJ,GAAanhD,KAAMA,KAAK45C,IAAIxV,UAAWkd,IAGpDzhD,EAAOD,QAAU6B,GAIb,SAAS5B,EAAQD,EAASM,GAyB9B,QAAS+C,GAAUm8C,EAAMv7C,GACvB7D,KAAKK,GAAKM,EAAKgF,aACf3F,KAAKo/C,KAAOA,EAEZp/C,KAAK4+C,gBACHqtC,iBAAkB,OAClBC,aAAc,UACdxtE,MAAM,EACNytE,UAAU,EACVrqF,OAAO,EACPsqF,YAAa,QACbC,QACEx7E,SAAS,EACTkuC,YAAa,UAEfjwC,MAAO,OACPw9E,UACE9tD,MAAO,GACP+tD,YAAY,EACZ7pB,MAAO,UAET8pB,eACE37E,SAAS,EACT47E,gBAAiB,cACjBlG,MAAO,IAET7mB,YACE7uD,SAAS,EACTotB,KAAM,EACNnvB,MAAO,UAET49E,YACAC,UACAjuC,QACEgjB,gBAKJ1hE,KAAK6D,QAAUlD,EAAKgG,UAAW3G,KAAK4+C,gBACpC5+C,KAAK45C,OACL55C,KAAK6G,SACL7G,KAAKokD,OAAS,KACdpkD,KAAK0+C,UACL1+C,KAAK4sF,oBAAqB,EAC1B5sF,KAAK6sF,iBAAkB,EACvB7sF,KAAK8sF,yBAA0B,EAC/B9sF,KAAK+sF,kBAAmB,CAExB,IAAI/sD,GAAKhgC,IACTA,MAAKugD,UAAY,KACjBvgD,KAAKwgD,WAAa,KAGlBxgD,KAAKgkE,eACH/9C,IAAO,SAAanb,EAAO60B,EAAQC,GACjCI,EAAGikC,OAAOtkC,EAAO19B,QAEnBi+B,OAAU,SAAgBp1B,EAAO60B,EAAQC,GACvCI,EAAGkkC,UAAUvkC,EAAO19B,QAEtB0/B,OAAU,SAAgB72B,EAAO60B,EAAQC,GACvCI,EAAGmkC,UAAUxkC,EAAO19B,SAKxBjC,KAAKokE,gBACHn+C,IAAO,SAAanb,EAAO60B,EAAQC;AACjCI,EAAGqkC,aAAa1kC,EAAO19B,QAEzBi+B,OAAU,SAAgBp1B,EAAO60B,EAAQC,GACvCI,EAAGskC,gBAAgB3kC,EAAO19B,QAE5B0/B,OAAU,SAAgB72B,EAAO60B,EAAQC,GACvCI,EAAGukC,gBAAgB5kC,EAAO19B,SAI9BjC,KAAKiC,SACLjC,KAAK4hD,aACL5hD,KAAKgtF,UAAYhtF,KAAKo/C,KAAKe,MAAMvN,MACjC5yC,KAAK0kE,eAEL1kE,KAAKitF,eACLjtF,KAAKg/B,WAAWn7B,GAChB7D,KAAKktF,0BAA4B,GACjCltF,KAAKo/C,KAAKE,QAAQlgB,GAAG,eAAgB,WACnCY,EAAGgtD,UAAYhtD,EAAGof,KAAKe,MAAMvN,MAC7B5S,EAAGmtD,IAAIr+E,MAAMnG,KAAOhI,EAAK8K,OAAOK,QAAQk0B,EAAGn5B,MAAM23B,OAEjDwB,EAAG+sD,kBAAmB,EAEtB/sD,EAAG0M,OAAOnsC,KAAKy/B,KAIjBhgC,KAAKm/C,UACLn/C,KAAKotF,WAAcD,IAAKntF,KAAKmtF,IAAKF,YAAajtF,KAAKitF,YAAappF,QAAS7D,KAAK6D,QAAS66C,OAAQ1+C,KAAK0+C,QAvHvG,GAAI/9C,GAAOT,EAAoB,GAC3BU,EAAUV,EAAoB,GAC9BW,EAAUX,EAAoB,GAC9BY,EAAWZ,EAAoB,IAC/BsC,EAAYtC,EAAoB,IAChCyC,EAAWzC,EAAoB,IAC/B2C,EAAa3C,EAAoB,IACjC8C,EAAS9C,EAAoB,IAC7BmtF,EAAOntF,EAAoB,IAC3BotF,EAAQptF,EAAoB,IAC5BqtF,EAASrtF,EAAoB,IAE7B0kE,EAAY,eA8GhB3hE,GAAUgQ,UAAY,GAAIzQ,GAK1BS,EAAUgQ,UAAUksC,QAAU,WAC5B,GAAI3U,GAAQpN,SAASM,cAAc,MACnC8M,GAAMzhC,UAAY,iBAClB/I,KAAK45C,IAAIpP,MAAQA,EAGjBxqC,KAAKmtF,IAAM/vD,SAASC,gBAAgB,6BAA8B,OAClEr9B,KAAKmtF,IAAIr+E,MAAM4/B,SAAW,WAC1B1uC,KAAKmtF,IAAIr+E,MAAM2vB,QAAU,GAAKz+B,KAAK6D,QAAQuoF,aAAajgF,QAAQ,KAAM,IAAM,KAC5EnM,KAAKmtF,IAAIr+E,MAAMymE,QAAU,QACzB/qC,EAAMlN,YAAYt9B,KAAKmtF,KAGvBntF,KAAK6D,QAAQ6oF,SAAS3tC,YAAc,OACpC/+C,KAAK4rF,UAAY,GAAIjpF,GAAS3C,KAAKo/C,KAAMp/C,KAAK6D,QAAQ6oF,SAAU1sF,KAAKmtF,IAAKntF,KAAK6D,QAAQ66C,QAEvF1+C,KAAK6D,QAAQ6oF,SAAS3tC,YAAc,QACpC/+C,KAAK6rF,WAAa,GAAIlpF,GAAS3C,KAAKo/C,KAAMp/C,KAAK6D,QAAQ6oF,SAAU1sF,KAAKmtF,IAAKntF,KAAK6D,QAAQ66C,cACjF1+C,MAAK6D,QAAQ6oF,SAAS3tC,YAG7B/+C,KAAK8rF,WAAa,GAAI9oF,GAAOhD,KAAKo/C,KAAMp/C,KAAK6D,QAAQ8oF,OAAQ,OAAQ3sF,KAAK6D,QAAQ66C,QAClF1+C,KAAK+rF,YAAc,GAAI/oF,GAAOhD,KAAKo/C,KAAMp/C,KAAK6D,QAAQ8oF,OAAQ,QAAS3sF,KAAK6D,QAAQ66C,QAEpF1+C,KAAK2iD,QAOP1/C,EAAUgQ,UAAU+rB,WAAa,SAAUn7B,GACzC,GAAIA,EAAS,CACX,GAAIoM,IAAU,WAAY,eAAgB,QAAS,SAAU,cAAe,mBAAoB,QAAS,WAAY,WAAY,OAAQ,SAC7G1J,UAAxB1C,EAAQuoF,aAAgD7lF,SAAnB1C,EAAQ46B,QAC/Cz+B,KAAK6sF,iBAAkB,EACvB7sF,KAAK8sF,yBAA0B,GACwBvmF,SAA9CvG,KAAKo/C,KAAKC,SAAS2D,gBAAgBvkB,QAAgDl4B,SAAxB1C,EAAQuoF,aACxE7/E,UAAU1I,EAAQuoF,YAAc,IAAIjgF,QAAQ,KAAM,KAAOnM,KAAKo/C,KAAKC,SAAS2D,gBAAgBvkB,SAC9Fz+B,KAAK6sF,iBAAkB,GAG3BlsF,EAAKsG,oBAAoBgJ,EAAQjQ,KAAK6D,QAASA,GAC/ClD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,iBACzClD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,cACzClD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,UACzClD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,UAErCA,EAAQ2oF,eAC0B,gBAAzB3oF,GAAQ2oF,eACb3oF,EAAQ2oF,cAAcC,kBACqB,WAAzC5oF,EAAQ2oF,cAAcC,gBACxBzsF,KAAK6D,QAAQ2oF,cAAcjG,MAAQ,EACe,WAAzC1iF,EAAQ2oF,cAAcC,gBAC/BzsF,KAAK6D,QAAQ2oF,cAAcjG,MAAQ,GAEnCvmF,KAAK6D,QAAQ2oF,cAAcC,gBAAkB,cAC7CzsF,KAAK6D,QAAQ2oF,cAAcjG,MAAQ,KAMvCvmF,KAAK4rF,WACkBrlF,SAArB1C,EAAQ6oF,WACV1sF,KAAK4rF,UAAU5sD,WAAWh/B,KAAK6D,QAAQ6oF,UACvC1sF,KAAK6rF,WAAW7sD,WAAWh/B,KAAK6D,QAAQ6oF,WAIxC1sF,KAAK8rF,YACgBvlF,SAAnB1C,EAAQ8oF,SACV3sF,KAAK8rF,WAAW9sD,WAAWh/B,KAAK6D,QAAQ8oF,QACxC3sF,KAAK+rF,YAAY/sD,WAAWh/B,KAAK6D,QAAQ8oF,SAIzC3sF,KAAK0+C,OAAO14C,eAAe4+D,IAC7B5kE,KAAK0+C,OAAOkmB,GAAW5lC,WAAWn7B,GAKlC7D,KAAK45C,IAAIpP,QAEXxqC,KAAK+sF,kBAAmB,EACxB/sF,KAAKo/C,KAAKE,QAAQzH,KAAK,WAAa5Y,OAAO,MAO/Ch8B,EAAUgQ,UAAU0yD,KAAO,WAErB3lE,KAAK45C,IAAIpP,MAAMn/B,YACjBrL,KAAK45C,IAAIpP,MAAMn/B,WAAW3G,YAAY1E,KAAK45C,IAAIpP,QAQnDvnC,EAAUgQ,UAAU0vC,KAAO,WAEpB3iD,KAAK45C,IAAIpP,MAAMn/B,YAClBrL,KAAKo/C,KAAKxF,IAAIvD,OAAO/Y,YAAYt9B,KAAK45C,IAAIpP,QAQ9CvnC,EAAUgQ,UAAUguC,SAAW,SAAUh/C,GACvC,GACIw+B,GADAT,EAAKhgC,KAELinE,EAAejnE,KAAKugD,SAGxB,IAAKt+C,EAEE,CAAA,KAAIA,YAAiBpB,IAAWoB,YAAiBnB,IAGtD,KAAM,IAAIoG,WAAU,kDAFpBlH,MAAKugD,UAAYt+C,MAFjBjC,MAAKugD,UAAY,IAkBnB,IAXI0mB,IAEFtmE,EAAK2I,QAAQtJ,KAAKgkE,cAAe,SAAUz6D,EAAUuB,GACnDm8D,EAAa1nC,IAAIz0B,EAAOvB,KAI1Bk3B,EAAMwmC,EAAa7lC,SACnBphC,KAAKmkE,UAAU1jC,IAGbzgC,KAAKugD,UAAW,CAElB,GAAIlgD,GAAKL,KAAKK,EACdM,GAAK2I,QAAQtJ,KAAKgkE,cAAe,SAAUz6D,EAAUuB,GACnDk1B,EAAGugB,UAAUnhB,GAAGt0B,EAAOvB,EAAUlJ,KAInCogC,EAAMzgC,KAAKugD,UAAUnf,SACrBphC,KAAKikE,OAAOxjC,KAQhBx9B,EAAUgQ,UAAU+tC,UAAY,SAAUtC,GACxC,GACIje,GADAT,EAAKhgC,IAIT,IAAIA,KAAKwgD,WAAY,CACnB7/C,EAAK2I,QAAQtJ,KAAKokE,eAAgB,SAAU76D,EAAUuB,GACpDk1B,EAAGwgB,WAAWjhB,IAAIz0B,EAAOvB,KAI3Bk3B,EAAMzgC,KAAKwgD,WAAWpf,SACtBphC,KAAKwgD,WAAa,IAClB,KAAK,GAAI/5C,GAAI,EAAGA,EAAIg6B,EAAIn6B,OAAQG,IAC9BzG,KAAKwtF,aAAa/sD,EAAIh6B,IAK1B,GAAKi4C,EAEE,CAAA,KAAIA,YAAkB79C,IAAW69C,YAAkB59C,IAGxD,KAAM,IAAIoG,WAAU,kDAFpBlH,MAAKwgD,WAAa9B,MAFlB1+C,MAAKwgD,WAAa,IAOpB,IAAIxgD,KAAKwgD,WAAY,CAEnB,GAAIngD,GAAKL,KAAKK,EACdM,GAAK2I,QAAQtJ,KAAKokE,eAAgB,SAAU76D,EAAUuB,GACpDk1B,EAAGwgB,WAAWphB,GAAGt0B,EAAOvB,EAAUlJ,KAIpCogC,EAAMzgC,KAAKwgD,WAAWpf,SACtBphC,KAAKqkE,aAAa5jC,KAItBx9B,EAAUgQ,UAAUixD,UAAY,SAAUzjC,GACxCzgC,KAAKytF,uBAEPxqF,EAAUgQ,UAAUgxD,OAAS,SAAUxjC,GACrCzgC,KAAKkkE,UAAUzjC,IAEjBx9B,EAAUgQ,UAAUkxD,UAAY,SAAU1jC,GACxCzgC,KAAKkkE,UAAUzjC,IAEjBx9B,EAAUgQ,UAAUqxD,gBAAkB,SAAUE,GAC9CxkE,KAAKytF,uBAEPxqF,EAAUgQ,UAAUoxD,aAAe,SAAUG,GAC3CxkE,KAAKskE,gBAAgBE,IAQvBvhE,EAAUgQ,UAAUsxD,gBAAkB,SAAUC,GAC9C,IAAK,GAAI/9D,GAAI,EAAGA,EAAI+9D,EAASl+D,OAAQG,IACnCzG,KAAKwtF,aAAahpB,EAAS/9D,GAE7BzG,MAAK+sF,kBAAmB,EACxB/sF,KAAKo/C,KAAKE,QAAQzH,KAAK,WAAa5Y,OAAO,KAQ7Ch8B,EAAUgQ,UAAUu6E,aAAe,SAAU7pC,GACvC3jD,KAAK0+C,OAAO14C,eAAe29C,KACwB,SAAjD3jD,KAAK0+C,OAAOiF,GAAS9/C,QAAQooF,kBAC/BjsF,KAAK6rF,WAAW6B,YAAY/pC,GAC5B3jD,KAAK+rF,YAAY2B,YAAY/pC,GAC7B3jD,KAAK+rF,YAAYr/C,WAEjB1sC,KAAK4rF,UAAU8B,YAAY/pC,GAC3B3jD,KAAK8rF,WAAW4B,YAAY/pC,GAC5B3jD,KAAK8rF,WAAWp/C,gBAEX1sC,MAAK0+C,OAAOiF,KAWvB1gD,EAAUgQ,UAAU06E,aAAe,SAAUzqC,EAAOS,GAC7C3jD,KAAK0+C,OAAO14C,eAAe29C,IAU9B3jD,KAAK0+C,OAAOiF,GAASzjB,OAAOgjB,GACyB,SAAjDljD,KAAK0+C,OAAOiF,GAAS9/C,QAAQooF,kBAC/BjsF,KAAK6rF,WAAWxoB,YAAY1f,EAAS3jD,KAAK0+C,OAAOiF,IACjD3jD,KAAK+rF,YAAY1oB,YAAY1f,EAAS3jD,KAAK0+C,OAAOiF,IAElD3jD,KAAK4rF,UAAU8B,YAAY/pC,GAC3B3jD,KAAK8rF,WAAW4B,YAAY/pC,KAE5B3jD,KAAK4rF,UAAUvoB,YAAY1f,EAAS3jD,KAAK0+C,OAAOiF,IAChD3jD,KAAK8rF,WAAWzoB,YAAY1f,EAAS3jD,KAAK0+C,OAAOiF,IAEjD3jD,KAAK6rF,WAAW6B,YAAY/pC,GAC5B3jD,KAAK+rF,YAAY2B,YAAY/pC,MArB/B3jD,KAAK0+C,OAAOiF,GAAW,GAAI9gD,GAAWqgD,EAAOS,EAAS3jD,KAAK6D,QAAS7D,KAAKktF,0BACpB,SAAjDltF,KAAK0+C,OAAOiF,GAAS9/C,QAAQooF,kBAC/BjsF,KAAK6rF,WAAW+B,SAASjqC,EAAS3jD,KAAK0+C,OAAOiF,IAC9C3jD,KAAK+rF,YAAY6B,SAASjqC,EAAS3jD,KAAK0+C,OAAOiF,MAE/C3jD,KAAK4rF,UAAUgC,SAASjqC,EAAS3jD,KAAK0+C,OAAOiF,IAC7C3jD,KAAK8rF,WAAW8B,SAASjqC,EAAS3jD,KAAK0+C,OAAOiF,MAkBlD3jD,KAAK8rF,WAAWp/C,SAChB1sC,KAAK+rF,YAAYr/C,UAQnBzpC,EAAUgQ,UAAUw6E,oBAAsB,WACxC,GAAsB,MAAlBztF,KAAKugD,UAAmB,CAK1B,IAAK,GAJDstC,MACA5rF,EAAQjC,KAAKugD,UAAUvpB,MAEvB82D,KACKrnF,EAAI,EAAGA,EAAIxE,EAAMqE,OAAQG,IAAK,CACrC,GAAI+K,GAAOvP,EAAMwE,GACbk9C,EAAUnyC,EAAK0xC,OACH,OAAZS,GAAgCp9C,SAAZo9C,KACtBA,EAAUihB,GAEZkpB,EAAY9nF,eAAe29C,GAAWmqC,EAAYnqC,KAAamqC,EAAYnqC,GAAW,EAGxF,IAAK,GAAIl9C,GAAI,EAAGA,EAAIxE,EAAMqE,OAAQG,IAAK,CACrC,GAAI+K,GAAOvP,EAAMwE,GACbk9C,EAAUnyC,EAAK0xC,OACH,OAAZS,GAAgCp9C,SAAZo9C,KACtBA,EAAUihB,GAEPipB,EAAc7nF,eAAe29C,KAChCkqC,EAAclqC,GAAW,GAAI78C,OAAMgnF,EAAYnqC,IAGjD,IAAIoqC,GAAWptF,EAAK0P,aAAamB,EACjCu8E,GAASnwD,EAAIj9B,EAAKgH,QAAQ6J,EAAKosB,EAAG,QAClCmwD,EAASC,SAAWx8E,EAAKyP,EACzB8sE,EAAS9sE,EAAI5c,OAAOmN,EAAKyP,EAEzB,IAAI7X,GAAQykF,EAAclqC,GAASr9C,OAASwnF,EAAYnqC,IACxDkqC,GAAclqC,GAASv6C,GAAS2kF,EAIlC,IAAK,GAAIpqC,KAAW3jD,MAAK0+C,OACnB1+C,KAAK0+C,OAAO14C,eAAe29C,KACxBkqC,EAAc7nF,eAAe29C,KAChCkqC,EAAclqC,GAAW,GAAI78C,OAAM,IAMzC,KAAK,GAAI68C,KAAWkqC,GAClB,GAAIA,EAAc7nF,eAAe29C,GAC/B,GAAqC,GAAjCkqC,EAAclqC,GAASr9C,OACrBtG,KAAK0+C,OAAO14C,eAAe29C,IAC7B3jD,KAAKwtF,aAAa7pC,OAEf,CACL,GAAIT,GAAQ38C,MACWA,SAAnBvG,KAAKwgD,aACP0C,EAAQljD,KAAKwgD,WAAWxpB,IAAI2sB,IAEjBp9C,QAAT28C,IACFA,GAAU7iD,GAAIsjD,EAAStlB,QAASr+B,KAAK6D,QAAQqoF,aAAevoC,IAE9D3jD,KAAK2tF,aAAazqC,EAAOS,GACzB3jD,KAAK0+C,OAAOiF,GAAS1C,SAAS4sC,EAAclqC,IAIlD3jD,KAAK+sF,kBAAmB,EACxB/sF,KAAKo/C,KAAKE,QAAQzH,KAAK,WAAa5Y,OAAO,MAQ/Ch8B,EAAUgQ,UAAUy5B,OAAS,WAC3B,GAAIsvB,IAAU,CAGdh8D,MAAK6G,MAAM23B,MAAQx+B,KAAK45C,IAAIpP,MAAMyP,YAClCj6C,KAAK6G,MAAM43B,OAASz+B,KAAKo/C,KAAKC,SAAS2D,gBAAgBvkB,OAASz+B,KAAKo/C,KAAKC,SAASnxC,OAAOrF,IAAM7I,KAAKo/C,KAAKC,SAASnxC,OAAOogC,OAG1H0tB,EAAUh8D,KAAK+7D,cAAgBC,CAG/B,IAAIkK,GAAkBlmE,KAAKo/C,KAAKe,MAAMrN,IAAM9yC,KAAKo/C,KAAKe,MAAMvN,MACxDuzB,EAASD,GAAmBlmE,KAAKomE,mBA2BrC,IA1BApmE,KAAKomE,oBAAsBF,EAIZ,GAAXlK,IACFh8D,KAAKmtF,IAAIr+E,MAAM0vB,MAAQ79B,EAAK8K,OAAOK,OAAO,EAAI9L,KAAK6G,MAAM23B,OACzDx+B,KAAKmtF,IAAIr+E,MAAMnG,KAAOhI,EAAK8K,OAAOK,QAAQ9L,KAAK6G,MAAM23B,QAGN,KAA1Cx+B,KAAK6D,QAAQ46B,OAAS,IAAIl3B,QAAQ,MAA8C,GAAhCvH,KAAK8sF,2BACxD9sF,KAAK6sF,iBAAkB,IAKC,GAAxB7sF,KAAK6sF,iBACH7sF,KAAK6D,QAAQuoF,aAAepsF,KAAK6G,MAAM43B,OAAS,OAClDz+B,KAAK6D,QAAQuoF,YAAcpsF,KAAK6G,MAAM43B,OAAS,KAC/Cz+B,KAAKmtF,IAAIr+E,MAAM2vB,OAASz+B,KAAK6G,MAAM43B,OAAS,MAE9Cz+B,KAAK6sF,iBAAkB,GAEvB7sF,KAAKmtF,IAAIr+E,MAAM2vB,QAAU,GAAKz+B,KAAK6D,QAAQuoF,aAAajgF,QAAQ,KAAM,IAAM,KAI/D,GAAX6vD,GAA6B,GAAVmK,GAA6C,GAA3BnmE,KAAK4sF,oBAAuD,GAAzB5sF,KAAK+sF,iBAC/E/wB,EAAUh8D,KAAKiuF,gBAAkBjyB,EACjCh8D,KAAK+sF,kBAAmB,MAGxB,IAAsB,GAAlB/sF,KAAKgtF,UAAgB,CACvB,GAAIxlE,GAASxnB,KAAKo/C,KAAKe,MAAMvN,MAAQ5yC,KAAKgtF,UACtC7sC,EAAQngD,KAAKo/C,KAAKe,MAAMrN,IAAM9yC,KAAKo/C,KAAKe,MAAMvN,KAClD,IAAwB,GAApB5yC,KAAK6G,MAAM23B,MAAY,CACzB,GAAI0vD,GAAmBluF,KAAK6G,MAAM23B,MAAQ2hB,EACtChiB,EAAU3W,EAAS0mE,CACvBluF,MAAKmtF,IAAIr+E,MAAMnG,MAAQ3I,KAAK6G,MAAM23B,MAAQL,EAAU,MAM1D,MAFAn+B,MAAK8rF,WAAWp/C,SAChB1sC,KAAK+rF,YAAYr/C,SACVsvB,GAGT/4D,EAAUgQ,UAAUk7E,mBAAqB,WAEvC,GAAIC,KACJ,KAAK,GAAIzqC,KAAW3jD,MAAK0+C,OACvB,GAAI1+C,KAAK0+C,OAAO14C,eAAe29C,GAAU,CACvC,GAAIT,GAAQljD,KAAK0+C,OAAOiF,EACH,IAAjBT,EAAMhQ,SAAgE3sC,SAA5CvG,KAAK6D,QAAQ66C,OAAOgjB,WAAW/d,IAAqE,GAA3C3jD,KAAK6D,QAAQ66C,OAAOgjB,WAAW/d,IACpHyqC,EAAU5mF,MAAOnH,GAAIsjD,EAAS0qC,OAAQnrC,EAAMr/C,QAAQwqF,SAI1D1tF,EAAK2P,WAAW89E,EAAW,SAAUloF,EAAGC,GACtC,GAAI6iC,GAAK9iC,EAAEmoF,OACPC,EAAKnoF,EAAEkoF,MAGX,OAFW9nF,UAAPyiC,IAAkBA,EAAK,GAChBziC,SAAP+nF,IAAkBA,EAAK,GACpBtlD,GAAMslD,EAAK,EAASA,EAALtlD,EAAU,GAAK,GAGvC,KAAK,GADDw7B,GAAW,GAAI19D,OAAMsnF,EAAU9nF,QAC1BG,EAAI,EAAGA,EAAI2nF,EAAU9nF,OAAQG,IACpC+9D,EAAS/9D,GAAK2nF,EAAU3nF,GAAGpG,EAE7B,OAAOmkE,IAOTvhE,EAAUgQ,UAAUg7E,aAAe,WAGjC,GADArtF,EAAQ87B,gBAAgB18B,KAAKitF,aACL,GAApBjtF,KAAK6G,MAAM23B,OAAgC,MAAlBx+B,KAAKugD,UAAmB,CACnD,GAAI2C,GAAOz8C,EACP8nF,KACAC,GAAe,EAEfC,EAAUzuF,KAAKo/C,KAAKz+C,KAAKs/C,cAAcjgD,KAAKo/C,KAAKC,SAAS3/C,KAAK8+B,OAC/DkwD,EAAU1uF,KAAKo/C,KAAKz+C,KAAKs/C,aAAa,EAAIjgD,KAAKo/C,KAAKC,SAAS3/C,KAAK8+B,OAGlEgmC,EAAWxkE,KAAKmuF,oBACpB,IAAI3pB,EAASl+D,OAAS,EAAG,CACvB,GAAIk6C,KASJ,KANAxgD,KAAK2uF,iBAAiBnqB,EAAUhkB,EAAYiuC,EAASC,GAGrD1uF,KAAK4uF,eAAepqB,EAAUhkB,GAGzB/5C,EAAI,EAAGA,EAAI+9D,EAASl+D,OAAQG,IAC/BzG,KAAK6uF,qBAAqBruC,EAAWgkB,EAAS/9D,IAWhD,IAPAzG,KAAK8uF,YAAYtqB,EAAUhkB,EAAY+tC,GAGvCC,EAAexuF,KAAK+uF,aAAavqB,EAAU+pB,GAIvB,GAAhBC,EAGF,MAFA5tF,GAAQm8B,gBAAgB/8B,KAAKitF,aAC7BjtF,KAAK4sF,oBAAqB,GACnB,CAET5sF,MAAK4sF,oBAAqB,CAG1B,IAAIoC,GAAQzoF,MACZ,KAAKE,EAAI,EAAGA,EAAI+9D,EAASl+D,OAAQG,IAC/By8C,EAAQljD,KAAK0+C,OAAO8lB,EAAS/9D,IACzBzG,KAAK6D,QAAQ/B,SAAU,GAA+B,SAAvB9B,KAAK6D,QAAQiL,QACLvI,QAArC28C,EAAMr/C,QAAQorF,qBAAqC/rC,EAAMr/C,QAAQorF,sBACtD1oF,QAATyoF,IACFhvF,KAAKkvF,OAAO1uC,EAAW0C,EAAM7iD,IAAKmgD,EAAWwuC,EAAM3uF,KACf,GAAhC6iD,EAAMr/C,QAAQwoF,OAAOx7E,SAAwD,UAArCqyC,EAAMr/C,QAAQwoF,OAAOttC,cACvB,OAApCmE,EAAMr/C,QAAQwoF,OAAOttC,aAA6D,UAArCiwC,EAAMnrF,QAAQwoF,OAAOttC,aACpEiwC,EAAMnrF,QAAQwoF,OAAOttC,YAAc,QACnCiwC,EAAMnrF,QAAQwoF,OAAO1oC,QAAUT,EAAM7iD,KAErC6iD,EAAMr/C,QAAQwoF,OAAOttC,YAAc,QACnCmE,EAAMr/C,QAAQwoF,OAAO1oC,QAAUqrC,EAAM3uF,MAI3C2uF,EAAQ9rC,IAGZljD,KAAKmvF,qBAAqB3uC,EAAWgkB,EAAS/9D,IAAKy8C,EAIrD,IAAI5oB,KACJ,KAAK7zB,EAAI,EAAGA,EAAI+9D,EAASl+D,OAAQG,IAE/B,GADAy8C,EAAQljD,KAAK0+C,OAAO8lB,EAAS/9D,IACD,SAAxBy8C,EAAMr/C,QAAQiL,OAAoD,GAAhCo0C,EAAMr/C,QAAQwoF,OAAOx7E,QAAiB,CAC1E,GAAIkyC,GAAUvC,EAAWgkB,EAAS/9D,GAClC,IAAe,MAAXs8C,GAAqC,GAAlBA,EAAQz8C,OAC7B,QAKF,IAHKg0B,EAAMt0B,eAAew+D,EAAS/9D,MACjC6zB,EAAMkqC,EAAS/9D,IAAM6mF,EAAM8B,SAASrsC,EAASG,IAEN,UAArCA,EAAMr/C,QAAQwoF,OAAOttC,YAAyB,CAChD,GAAIswC,GAAansC,EAAMr/C,QAAQwoF,OAAO1oC,OACtC,IAAqC,KAAjC6gB,EAASj9D,QAAQ8nF,GAAoB,CACvC1vE,QAAQw+B,IAAI+E,EAAM7iD,GAAK,wCAA0CgvF,EACjE,UAEG/0D,EAAMt0B,eAAeqpF,KACxB/0D,EAAM+0D,GAAc/B,EAAM8B,SAAS5uC,EAAW6uC,GAAarvF,KAAK0+C,OAAO2wC,KAEzE/B,EAAMgC,YAAYh1D,EAAMkqC,EAAS/9D,IAAKy8C,EAAO5oB,EAAM+0D,GAAarvF,KAAKotF,eAErEE,GAAMgC,YAAYh1D,EAAMkqC,EAAS/9D,IAAKy8C,EAAO38C,OAAWvG,KAAKotF,WAOnE,IADAC,EAAKpR,KAAKzX,EAAUhkB,EAAYxgD,KAAKotF,WAChC3mF,EAAI,EAAGA,EAAI+9D,EAASl+D,OAAQG,IAE/B,GADAy8C,EAAQljD,KAAK0+C,OAAO8lB,EAAS/9D,IACzB+5C,EAAWgkB,EAAS/9D,IAAIH,OAAS,EACnC,OAAQ48C,EAAMr/C,QAAQiL,OACpB,IAAK,OACEwrB,EAAMt0B,eAAew+D,EAAS/9D,MACjC6zB,EAAMkqC,EAAS/9D,IAAM6mF,EAAM8B,SAAS5uC,EAAWgkB,EAAS/9D,IAAKy8C,IAE/DoqC,EAAMrR,KAAK3hD,EAAMkqC,EAAS/9D,IAAKy8C,EAAOljD,KAAKotF,UAE7C,KAAK,QAEL,IAAK,UACwB,SAAvBlqC,EAAMr/C,QAAQiL,OAA2C,UAAvBo0C,EAAMr/C,QAAQiL,OAAyD,GAApCo0C,EAAMr/C,QAAQ67D,WAAW7uD,UAChG08E,EAAOtR,KAAKz7B,EAAWgkB,EAAS/9D,IAAKy8C,EAAOljD,KAAKotF,UAEnD,MACF,KAAK,SAaf,MADAxsF,GAAQm8B,gBAAgB/8B,KAAKitF,cACtB,GAGThqF,EAAUgQ,UAAUi8E,OAAS,SAAUl3E,EAAMu3E,GAC3C,GAAInmF,GAAO0gC,EAAIC,EAAIylD,EAAcC,CACjCrmF,GAAQ,CAER,KAAK,GAAIqH,GAAI,EAAGA,EAAIuH,EAAK1R,OAAQmK,IAAK,CACpC++E,EAAejpF,OACfkpF,EAAelpF,MAEf,KAAK,GAAIiK,GAAIpH,EAAOoH,EAAI++E,EAAQjpF,OAAQkK,IAAK,CAE3C,GAAI++E,EAAQ/+E,GAAGotB,IAAM5lB,EAAKvH,GAAGmtB,EAAG,CAC9B4xD,EAAeD,EAAQ/+E,GACvBi/E,EAAeF,EAAQ/+E,GACvBpH,EAAQoH,CACR,OACK,GAAI++E,EAAQ/+E,GAAGotB,EAAI5lB,EAAKvH,GAAGmtB,EAAG,CAEnC6xD,EAAeF,EAAQ/+E,GAErBg/E,EADO,GAALh/E,EACai/E,EAEAF,EAAQ/+E,EAAI,GAE7BpH,EAAQoH,CACR,QAIiBjK,SAAjBkpF,IACFD,EAAeD,EAAQA,EAAQjpF,OAAS,GACxCmpF,EAAeF,EAAQA,EAAQjpF,OAAS,IAG1CwjC,EAAK2lD,EAAa7xD,EAAI4xD,EAAa5xD,EACnCmM,EAAK0lD,EAAaxuE,EAAIuuE,EAAavuE,EACzB,GAAN6oB,EACF9xB,EAAKvH,GAAGwQ,EAAIjJ,EAAKvH,GAAGu9E,SAAWyB,EAAaxuE,EAE5CjJ,EAAKvH,GAAGwQ,EAAIjJ,EAAKvH,GAAGu9E,SAAWjkD,EAAKD,GAAM9xB,EAAKvH,GAAGmtB,EAAI4xD,EAAa5xD,GAAK4xD,EAAavuE,IAkB3Fhe,EAAUgQ,UAAU07E,iBAAmB,SAAUnqB,EAAUhkB,EAAYiuC,EAASC,GAC9E,GAAIxrC,GAAOz8C,EAAGgK,EAAGe,CACjB,IAAIgzD,EAASl+D,OAAS,EACpB,IAAKG,EAAI,EAAGA,EAAI+9D,EAASl+D,OAAQG,IAAK,CACpCy8C,EAAQljD,KAAK0+C,OAAO8lB,EAAS/9D,GAC7B,IAAI85C,GAAY2C,EAAMgkB,UAEtB,IAA0B,GAAtBhkB,EAAMr/C,QAAQ6a,KAAc,CAC9B,GAAIgxE,GAAiB,SAAwBxpF,EAAGC,GAC9C,MAAOD,GAAEyO,WAAaxO,EAAEwO,UAAY,EAAQxO,EAAJD,EAAQ,GAAK,GAEnDypF,EAAQ1qF,KAAKJ,IAAI,EAAGlE,EAAK+Q,kBAAkB6uC,EAAWkuC,EAAS,IAAK,SAAUiB,IAC9E3jC,EAAO9mD,KAAKL,IAAI27C,EAAUj6C,OAAQ3F,EAAK+Q,kBAAkB6uC,EAAWmuC,EAAS,IAAK,QAASgB,GAAkB,EACrG,IAAR3jC,IACFA,EAAOxL,EAAUj6C,OAEnB,IAAIspF,GAAgB,GAAI9oF,OAAMilD,EAAO4jC,EACrC,KAAKl/E,EAAIk/E,EAAW5jC,EAAJt7C,EAAUA,IACxBe,EAAO0xC,EAAM3C,UAAU9vC,GACvBm/E,EAAcn/E,EAAIk/E,GAASn+E,CAE7BgvC,GAAWgkB,EAAS/9D,IAAMmpF,MAG1BpvC,GAAWgkB,EAAS/9D,IAAMy8C,EAAM3C,YAYxCt9C,EAAUgQ,UAAU27E,eAAiB,SAAUpqB,EAAUhkB,GACvD,GAAI0C,EACJ,IAAIshB,EAASl+D,OAAS,EACpB,IAAK,GAAIG,GAAI,EAAGA,EAAI+9D,EAASl+D,OAAQG,IAEnC,GADAy8C,EAAQljD,KAAK0+C,OAAO8lB,EAAS/9D,IACC,GAA1By8C,EAAMr/C,QAAQsoF,SAAkB,CAClC,GAAIyD,GAAgBpvC,EAAWgkB,EAAS/9D,GACxC,IAAImpF,EAActpF,OAAS,EAAG,CAC5B,GAAIupF,GAAY,EACZC,EAAiBF,EAActpF,OAI/BypF,EAAY/vF,KAAKo/C,KAAKz+C,KAAKk/C,eAAe+vC,EAAcA,EAActpF,OAAS,GAAGs3B,GAAK59B,KAAKo/C,KAAKz+C,KAAKk/C,eAAe+vC,EAAc,GAAGhyD,GACtIoyD,EAAiBF,EAAiBC,CACtCF,GAAY5qF,KAAKL,IAAIK,KAAKoR,KAAK,GAAMy5E,GAAiB7qF,KAAKJ,IAAI,EAAGI,KAAKsjB,MAAMynE,IAG7E,KAAK,GADDC,GAAc,GAAInpF,OAAMgpF,GACnBr/E,EAAI,EAAOq/E,EAAJr/E,EAAoBA,GAAKo/E,EAAW,CAClD,GAAIrqC,GAAMvgD,KAAKsjB,MAAM9X,EAAIo/E,EACzBI,GAAYzqC,GAAOoqC,EAAcn/E,GAEnC+vC,EAAWgkB,EAAS/9D,IAAMwpF,EAAY5mF,OAAO,EAAGpE,KAAKsjB,MAAMunE,EAAiBD,OAetF5sF,EAAUgQ,UAAU67E,YAAc,SAAUtqB,EAAUhkB,EAAY+tC,GAChE,GAAI9mB,GAAWvkB,EAAOz8C,EAGlB5C,EAFAqsF,KACAC,IAEJ,IAAI3rB,EAASl+D,OAAS,EAAG,CACvB,IAAKG,EAAI,EAAGA,EAAI+9D,EAASl+D,OAAQG,IAC/BghE,EAAYjnB,EAAWgkB,EAAS/9D,IAChC5C,EAAU7D,KAAK0+C,OAAO8lB,EAAS/9D,IAAI5C,QAC/B4jE,EAAUnhE,OAAS,IACrB48C,EAAQljD,KAAK0+C,OAAO8lB,EAAS/9D,IAEzB5C,EAAQ/B,SAAU,GAA0B,QAAlB+B,EAAQiL,MACH,SAA7BjL,EAAQooF,iBACViE,EAAmBA,EAAiBrwD,OAAOqjB,EAAMgkB,YAEjDipB,EAAoBA,EAAkBtwD,OAAOqjB,EAAMgkB,YAGrDqnB,EAAY/pB,EAAS/9D,IAAMy8C,EAAMktC,UAAU3oB,EAAWjD,EAAS/9D,IAMrE4mF,GAAKgD,iBAAiBH,EAAkB3B,EAAa/pB,EAAU,iBAAkB,QACjF6oB,EAAKgD,iBAAiBF,EAAmB5B,EAAa/pB,EAAU,kBAAmB,WAUvFvhE,EAAUgQ,UAAU87E,aAAe,SAAUvqB,EAAU+pB,GACrD,GAOI+B,GACAC,EARAv0B,GAAU,EACVw0B,GAAgB,EAChBC,GAAiB,EACjBC,EAAU,IACVC,EAAW,IACXC,EAAU,KACVC,EAAW,IAIf,IAAIrsB,EAASl+D,OAAS,EAAG,CAEvB,IAAK,GAAIG,GAAI,EAAGA,EAAI+9D,EAASl+D,OAAQG,IAAK,CACxC,GAAIy8C,GAAQljD,KAAK0+C,OAAO8lB,EAAS/9D,GAC7By8C,IAA2C,SAAlCA,EAAMr/C,QAAQooF,kBACzBuE,GAAgB,EAChBE,EAAU,IACVE,EAAU,MACD1tC,GAASA,EAAMr/C,QAAQooF,mBAChCwE,GAAiB,EACjBE,EAAW,IACXE,EAAW,MAKf,IAAK,GAAIpqF,GAAI,EAAGA,EAAI+9D,EAASl+D,OAAQG,IAC/B8nF,EAAYvoF,eAAew+D,EAAS/9D,KAClC8nF,EAAY/pB,EAAS/9D,IAAIqqF,UAAW,IACtCR,EAAS/B,EAAY/pB,EAAS/9D,IAAI7B,IAClC2rF,EAAShC,EAAY/pB,EAAS/9D,IAAI5B,IAEe,SAA7C0pF,EAAY/pB,EAAS/9D,IAAIwlF,kBAC3BuE,GAAgB,EAChBE,EAAUA,EAAUJ,EAASA,EAASI,EACtCE,EAAoBL,EAAVK,EAAmBL,EAASK,IAEtCH,GAAiB,EACjBE,EAAWA,EAAWL,EAASA,EAASK,EACxCE,EAAsBN,EAAXM,EAAoBN,EAASM,GAM3B,IAAjBL,GACFxwF,KAAK4rF,UAAU7tC,SAAS2yC,EAASE,GAEb,GAAlBH,GACFzwF,KAAK6rF,WAAW9tC,SAAS4yC,EAAUE,GAGvC70B,EAAUh8D,KAAK+wF,qBAAqBP,EAAexwF,KAAK4rF,YAAc5vB,EACtEA,EAAUh8D,KAAK+wF,qBAAqBN,EAAgBzwF,KAAK6rF,aAAe7vB,EAElD,GAAlBy0B,GAA2C,GAAjBD,GAC5BxwF,KAAK4rF,UAAUoF,WAAY,EAC3BhxF,KAAK6rF,WAAWmF,WAAY,IAE5BhxF,KAAK4rF,UAAUoF,WAAY,EAC3BhxF,KAAK6rF,WAAWmF,WAAY,GAE9BhxF,KAAK6rF,WAAWoF,QAAUT,EAC1BxwF,KAAK6rF,WAAWqF,WAAalxF,KAAK4rF,UAEJ,GAA1B5rF,KAAK6rF,WAAWoF,QACI,GAAlBR,EACFzwF,KAAK4rF,UAAUuF,WAAanxF,KAAK6rF,WAAWrtD,MAE5Cx+B,KAAK4rF,UAAUuF,WAAa,EAG9Bn1B,EAAUh8D,KAAK4rF,UAAUl/C,UAAYsvB,EACrCA,EAAUh8D,KAAK6rF,WAAWn/C,UAAYsvB,GAEtCA,EAAUh8D,KAAK6rF,WAAWn/C,UAAYsvB,CAKxC,KAAK,GADDo1B,IAAc,iBAAkB,kBAAmB,kBAAmB,oBACjE3qF,EAAI,EAAGA,EAAI2qF,EAAW9qF,OAAQG,IACE,IAAnC+9D,EAASj9D,QAAQ6pF,EAAW3qF,KAC9B+9D,EAASn7D,OAAOm7D,EAASj9D,QAAQ6pF,EAAW3qF,IAAK,EAIrD,OAAOu1D,IAWT/4D,EAAUgQ,UAAU89E,qBAAuB,SAAUM,EAAUryC,GAC7D,GAAI4O,IAAU,CAYd,OAXgB,IAAZyjC,EACEryC,EAAKpF,IAAIpP,MAAMn/B,YAA6B,GAAf2zC,EAAKge,SACpChe,EAAK2mB,OACL/X,GAAU,GAGP5O,EAAKpF,IAAIpP,MAAMn/B,YAA6B,GAAf2zC,EAAKge,SACrChe,EAAK2D,OACLiL,GAAU,GAGPA,GAYT3qD,EAAUgQ,UAAU47E,qBAAuB,SAAUyC,GAEnD,IAAK,GADD3xC,GAAW3/C,KAAKo/C,KAAKz+C,KAAKg/C,SACrBl5C,EAAI,EAAGA,EAAI6qF,EAAWhrF,OAAQG,IACrC6qF,EAAW7qF,GAAG8qF,SAAW5xC,EAAS2xC,EAAW7qF,GAAGm3B,GAAK59B,KAAK6G,MAAM23B,MAChE8yD,EAAW7qF,GAAG+qF,SAAWF,EAAW7qF,GAAGwa,GAc3Che,EAAUgQ,UAAUk8E,qBAAuB,SAAUmC,EAAYpuC,GAC/D,GAAIlE,GAAOh/C,KAAK4rF,UACZ6F,EAAYptF,OAAOrE,KAAKmtF,IAAIr+E,MAAM2vB,OAAOtyB,QAAQ,KAAM,IACrB,UAAlC+2C,EAAMr/C,QAAQooF,mBAChBjtC,EAAOh/C,KAAK6rF,WAEd,KAAK,GAAIplF,GAAI,EAAGA,EAAI6qF,EAAWhrF,OAAQG,IACrC6qF,EAAW7qF,GAAG+qF,SAAWvsF,KAAKsjB,MAAMy2B,EAAK0yC,aAAaJ,EAAW7qF,GAAGwa,GAEtEiiC,GAAMyuC,gBAAgB1sF,KAAKL,IAAI6sF,EAAWzyC,EAAK0yC,aAAa,MAG9D7xF,EAAOD,QAAUqD,GAIb,SAASpD,EAAQD,EAASM,GAgB9B,QAASyC,GAASy8C,EAAMv7C,EAASspF,EAAKyE,GACpC5xF,KAAKK,GAAKM,EAAKgF,aACf3F,KAAKo/C,KAAOA,EAEZp/C,KAAK4+C,gBACHG,YAAa,OACbwzB,iBAAiB,EACjBC,iBAAiB,EACjBqf,OAAO,EACPC,iBAAkB,EAClBC,iBAAkB,EAClBC,aAAc,GACdC,aAAc,EACdC,UAAW,GACX1zD,MAAO,OACP0U,SAAS,EACTi/C,YAAY,EACZxpF,MACEw3C,OAASv7C,IAAK2B,OAAW1B,IAAK0B,QAC9B8M,OAAQ,SAAgBtO,GACtB,MAAO,GAAKV,OAAO+lB,WAAWrlB,EAAMy5C,YAAY,KAElDkiB,OAAS7sB,KAAMttC,OAAWuI,MAAOvI,SAEnCsrC,OACEsO,OAASv7C,IAAK2B,OAAW1B,IAAK0B,QAC9B8M,OAAQ,SAAgBtO,GACtB,MAAO,GAAKV,OAAO+lB,WAAWrlB,EAAMy5C,YAAY,KAElDkiB,OAAS7sB,KAAMttC,OAAWuI,MAAOvI,UAIrCvG,KAAK4xF,iBAAmBA,EACxB5xF,KAAKoyF,aAAejF,EACpBntF,KAAK6G,SACL7G,KAAKqyF,aACHlgB,SACAmgB,UACA5xB,UAGF1gE,KAAK45C,OACL55C,KAAKgF,MAAQuB,OACbvG,KAAKmgD,OAAUvN,MAAO,EAAGE,IAAK,GAE9B9yC,KAAK6D,QAAUlD,EAAKgG,UAAW3G,KAAK4+C,gBACpC5+C,KAAKuyF,iBAAmB,EAExBvyF,KAAKg/B,WAAWn7B,GAChB7D,KAAKw+B,MAAQn6B,QAAQ,GAAKrE,KAAK6D,QAAQ26B,OAAOryB,QAAQ,KAAM,KAC5DnM,KAAKwyF,SAAWxyF,KAAKw+B,MACrBx+B,KAAKy+B,OAASz+B,KAAKoyF,aAAa1pF,wBAAwB+1B,OACxDz+B,KAAKg9D,QAAS,EAEdh9D,KAAKyyF,WAAa,GAClBzyF,KAAK0yF,aAAe,GACpB1yF,KAAK2yF,cAAgB,GAErB3yF,KAAKmxF,WAAa,EAClBnxF,KAAKixF,QAAS,EACdjxF,KAAKkxF,WAAa,KAClBlxF,KAAKitF,eACLjtF,KAAK4yF,cAAe,EAEpB5yF,KAAK0+C,UACL1+C,KAAK6yF,eAAiB,EAGtB7yF,KAAKm/C,UACLn/C,KAAKotF,WAAcD,IAAKntF,KAAKmtF,IAAKF,YAAajtF,KAAKitF,YAAappF,QAAS7D,KAAK6D,QAAS66C,OAAQ1+C,KAAK0+C,OAErG,IAAI1e,GAAKhgC,IACTA,MAAKo/C,KAAKE,QAAQlgB,GAAG,eAAgB,WACnCY,EAAG4Z,IAAIk5C,cAAchkF,MAAMjG,IAAMm3B,EAAGof,KAAKC,SAASigB,UAAY,OAtFlE,GAAI3+D,GAAOT,EAAoB,GAC3BU,EAAUV,EAAoB,GAC9BsC,EAAYtC,EAAoB,IAChC0C,EAAY1C,EAAoB,GAuFpCyC,GAASsQ,UAAY,GAAIzQ,GAEzBG,EAASsQ,UAAU26E,SAAW,SAAU1vD,EAAO60D,GACxC/yF,KAAK0+C,OAAO14C,eAAek4B,KAC9Bl+B,KAAK0+C,OAAOxgB,GAAS60D,GAEvB/yF,KAAK6yF,gBAAkB,GAGzBlwF,EAASsQ,UAAUowD,YAAc,SAAUnlC,EAAO60D,GAC3C/yF,KAAK0+C,OAAO14C,eAAek4B,KAC9Bl+B,KAAK6yF,gBAAkB,GAEzB7yF,KAAK0+C,OAAOxgB,GAAS60D,GAGvBpwF,EAASsQ,UAAUy6E,YAAc,SAAUxvD,GACrCl+B,KAAK0+C,OAAO14C,eAAek4B,WACtBl+B,MAAK0+C,OAAOxgB,GACnBl+B,KAAK6yF,gBAAkB,IAI3BlwF,EAASsQ,UAAU+rB,WAAa,SAAUn7B,GACxC,GAAIA,EAAS,CACX,GAAI6oC,IAAS,CACT1sC,MAAK6D,QAAQk7C,aAAel7C,EAAQk7C,aAAuCx4C,SAAxB1C,EAAQk7C,cAC7DrS,GAAS,EAEX,IAAIz8B,IAAU,cAAe,kBAAmB,kBAAmB,QAAS,mBAAoB,mBAAoB,eAAgB,eAAgB,YAAa,QAAS,UAAW,OAAQ,QAAS,aACtMtP,GAAKsG,oBAAoBgJ,EAAQjQ,KAAK6D,QAASA,GAE/C7D,KAAKwyF,SAAWnuF,QAAQ,GAAKrE,KAAK6D,QAAQ26B,OAAOryB,QAAQ,KAAM,KAC3DugC,KAAW,GAAQ1sC,KAAK45C,IAAIpP,QAC9BxqC,KAAK2lE,OACL3lE,KAAK2iD,UAQXhgD,EAASsQ,UAAUksC,QAAU,WAC3Bn/C,KAAK45C,IAAIpP,MAAQpN,SAASM,cAAc,OACxC19B,KAAK45C,IAAIpP,MAAM17B,MAAM0vB,MAAQx+B,KAAK6D,QAAQ26B,MAC1Cx+B,KAAK45C,IAAIpP,MAAM17B,MAAM2vB,OAASz+B,KAAKy+B,OAEnCz+B,KAAK45C,IAAIk5C,cAAgB11D,SAASM,cAAc,OAChD19B,KAAK45C,IAAIk5C,cAAchkF,MAAM0vB,MAAQ,OACrCx+B,KAAK45C,IAAIk5C,cAAchkF,MAAM2vB,OAASz+B,KAAKy+B,OAC3Cz+B,KAAK45C,IAAIk5C,cAAchkF,MAAM4/B,SAAW,WAGxC1uC,KAAKmtF,IAAM/vD,SAASC,gBAAgB,6BAA8B,OAClEr9B,KAAKmtF,IAAIr+E,MAAM4/B,SAAW,WAC1B1uC,KAAKmtF,IAAIr+E,MAAMjG,IAAM,MACrB7I,KAAKmtF,IAAIr+E,MAAM2vB,OAAS,OACxBz+B,KAAKmtF,IAAIr+E,MAAM0vB,MAAQ,OACvBx+B,KAAKmtF,IAAIr+E,MAAMymE,QAAU,QACzBv1E,KAAK45C,IAAIpP,MAAMlN,YAAYt9B,KAAKmtF,MAGlCxqF,EAASsQ,UAAU+/E,kBAAoB,WACrCpyF,EAAQ87B,gBAAgB18B,KAAKitF,YAE7B,IAAIrvD,GACAs0D,EAAYlyF,KAAK6D,QAAQquF,UACzBe,EAAa,GACbC,EAAa,EACbjyE,EAAIiyE,EAAa,GAAMD,CAGzBr1D,GAD+B,SAA7B59B,KAAK6D,QAAQk7C,YACXm0C,EAEAlzF,KAAKw+B,MAAQ0zD,EAAYgB,CAG/B,IAAIC,GAAa/rF,OAAO6H,KAAKjP,KAAK0+C,OAClCy0C,GAAWz0E,KAAK,SAAUxY,EAAGC,GAC3B,MAAWA,GAAJD,EAAQ,GAAK,GAGtB,KAAK,GAAIO,GAAI,EAAGA,EAAI0sF,EAAW7sF,OAAQG,IAAK,CAC1C,GAAIk9C,GAAUwvC,EAAW1sF,EACrBzG,MAAK0+C,OAAOiF,GAASzQ,WAAY,GAAuD3sC,SAA9CvG,KAAK4xF,iBAAiBlwB,WAAW/d,IAA0B3jD,KAAK4xF,iBAAiBlwB,WAAW/d,MAAa,IACrJ3jD,KAAK0+C,OAAOiF,GAAS+nC,UAAUwG,EAAWe,EAAYjzF,KAAKotF,UAAWxvD,EAAG3c,GACzEA,GAAKgyE,EAAaC,GAItBtyF,EAAQm8B,gBAAgB/8B,KAAKitF,aAC7BjtF,KAAK4yF,cAAe,GAGtBjwF,EAASsQ,UAAUmgF,cAAgB,WAC7BpzF,KAAK4yF,gBAAiB,IACxBhyF,EAAQ87B,gBAAgB18B,KAAKitF,aAC7BrsF,EAAQm8B,gBAAgB/8B,KAAKitF,aAC7BjtF,KAAK4yF,cAAe,IAOxBjwF,EAASsQ,UAAU0vC,KAAO,WACxB3iD,KAAKg9D,QAAS,EACTh9D,KAAK45C,IAAIpP,MAAMn/B,aACe,SAA7BrL,KAAK6D,QAAQk7C,YACf/+C,KAAKo/C,KAAKxF,IAAIjxC,KAAK20B,YAAYt9B,KAAK45C,IAAIpP,OAExCxqC,KAAKo/C,KAAKxF,IAAI/H,MAAMvU,YAAYt9B,KAAK45C,IAAIpP,QAIxCxqC,KAAK45C,IAAIk5C,cAAcznF,YAC1BrL,KAAKo/C,KAAKxF,IAAI+kB,qBAAqBrhC,YAAYt9B,KAAK45C,IAAIk5C,gBAO5DnwF,EAASsQ,UAAU0yD,KAAO,WACxB3lE,KAAKg9D,QAAS,EACVh9D,KAAK45C,IAAIpP,MAAMn/B,YACjBrL,KAAK45C,IAAIpP,MAAMn/B,WAAW3G,YAAY1E,KAAK45C,IAAIpP,OAG7CxqC,KAAK45C,IAAIk5C,cAAcznF,YACzBrL,KAAK45C,IAAIk5C,cAAcznF,WAAW3G,YAAY1E,KAAK45C,IAAIk5C,gBAU3DnwF,EAASsQ,UAAU8qC,SAAW,SAAUnL,EAAOE,GAC7C9yC,KAAKmgD,MAAMvN,MAAQA,EACnB5yC,KAAKmgD,MAAMrN,IAAMA,GAOnBnwC,EAASsQ,UAAUy5B,OAAS,WAC1B,GAAIsvB,IAAU,EACVq3B,EAAe,CAGnBrzF,MAAK45C,IAAIk5C,cAAchkF,MAAMjG,IAAM7I,KAAKo/C,KAAKC,SAASigB,UAAY,IAElE,KAAK,GAAI3b,KAAW3jD,MAAK0+C,OACnB1+C,KAAK0+C,OAAO14C,eAAe29C,KACzB3jD,KAAK0+C,OAAOiF,GAASzQ,WAAY,GAAuD3sC,SAA9CvG,KAAK4xF,iBAAiBlwB,WAAW/d,IAA0B3jD,KAAK4xF,iBAAiBlwB,WAAW/d,MAAa,GACrJ0vC,IAIN,IAA4B,IAAxBrzF,KAAK6yF,gBAAyC,IAAjBQ,EAC/BrzF,KAAK2lE,WACA,CACL3lE,KAAK2iD,OACL3iD,KAAKy+B,OAASp6B,OAAOrE,KAAKoyF,aAAatjF,MAAM2vB,OAAOtyB,QAAQ,KAAM,KAGlEnM,KAAK45C,IAAIk5C,cAAchkF,MAAM2vB,OAASz+B,KAAKy+B,OAAS,KACpDz+B,KAAKw+B,MAAQx+B,KAAK6D,QAAQqvC,WAAY,EAAO7uC,QAAQ,GAAKrE,KAAK6D,QAAQ26B,OAAOryB,QAAQ,KAAM,KAAO,CAEnG,IAAItF,GAAQ7G,KAAK6G,MACb2jC,EAAQxqC,KAAK45C,IAAIpP,KAGrBA,GAAMzhC,UAAY,gBAGlB/I,KAAK2yE,oBAEL,IAAI5zB,GAAc/+C,KAAK6D,QAAQk7C,YAC3BwzB,EAAkBvyE,KAAK6D,QAAQ0uE,gBAC/BC,EAAkBxyE,KAAK6D,QAAQ2uE,eAGnC3rE,GAAM+rE,iBAAmBL,EAAkB1rE,EAAMgsE,gBAAkB,EACnEhsE,EAAMisE,iBAAmBN,EAAkB3rE,EAAMksE,gBAAkB,EAEnElsE,EAAMosE,eAAiBjzE,KAAKo/C,KAAKxF,IAAI+kB,qBAAqB1kB,YAAcj6C,KAAKmxF,WAAanxF,KAAKw+B,MAAQ,EAAIx+B,KAAK6D,QAAQkuF,iBACxHlrF,EAAMmsE,gBAAkB,EACxBnsE,EAAMssE,eAAiBnzE,KAAKo/C,KAAKxF,IAAI+kB,qBAAqB1kB,YAAcj6C,KAAKmxF,WAAanxF,KAAKw+B,MAAQ,EAAIx+B,KAAK6D,QAAQiuF,iBACxHjrF,EAAMqsE,gBAAkB,EAGJ,SAAhBn0B,GACFvU,EAAM17B,MAAMjG,IAAM,IAClB2hC,EAAM17B,MAAMnG,KAAO,IACnB6hC,EAAM17B,MAAMw/B,OAAS,GACrB9D,EAAM17B,MAAM0vB,MAAQx+B,KAAKw+B,MAAQ,KACjCgM,EAAM17B,MAAM2vB,OAASz+B,KAAKy+B,OAAS,KACnCz+B,KAAK6G,MAAM23B,MAAQx+B,KAAKo/C,KAAKC,SAAS12C,KAAK61B,MAC3Cx+B,KAAK6G,MAAM43B,OAASz+B,KAAKo/C,KAAKC,SAAS12C,KAAK81B,SAG5C+L,EAAM17B,MAAMjG,IAAM,GAClB2hC,EAAM17B,MAAMw/B,OAAS,IACrB9D,EAAM17B,MAAMnG,KAAO,IACnB6hC,EAAM17B,MAAM0vB,MAAQx+B,KAAKw+B,MAAQ,KACjCgM,EAAM17B,MAAM2vB,OAASz+B,KAAKy+B,OAAS,KACnCz+B,KAAK6G,MAAM23B,MAAQx+B,KAAKo/C,KAAKC,SAASxN,MAAMrT,MAC5Cx+B,KAAK6G,MAAM43B,OAASz+B,KAAKo/C,KAAKC,SAASxN,MAAMpT,QAG/Cu9B,EAAUh8D,KAAKszF,gBACft3B,EAAUh8D,KAAK+7D,cAAgBC,EAE3Bh8D,KAAK6D,QAAQguF,SAAU,EACzB7xF,KAAKgzF,oBAELhzF,KAAKozF,gBAGPpzF,KAAKuzF,aAAax0C,GAEpB,MAAOid,IAOTr5D,EAASsQ,UAAUqgF,cAAgB,WACjC,GAAIpxC,GAAQliD,KAERg8D,GAAU,CACdp7D,GAAQ87B,gBAAgB18B,KAAKqyF,YAAYlgB,OACzCvxE,EAAQ87B,gBAAgB18B,KAAKqyF,YAAYC,OACzC,IAAIvzC,GAAc/+C,KAAK6D,QAAqB,YACxC2vF,EAAiDjtF,QAAnCvG,KAAK6D,QAAQk7C,GAAaoB,MAAqBngD,KAAK6D,QAAQk7C,GAAaoB,SAGvFszC,GAAe,CACIltF,SAAnBitF,EAAY3uF,MACd7E,KAAKmgD,MAAMrN,IAAM0gD,EAAY3uF,IAC7B4uF,GAAe,EAEjB,IAAIC,IAAiB,CACEntF,SAAnBitF,EAAY5uF,MACd5E,KAAKmgD,MAAMvN,MAAQ4gD,EAAY5uF,IAC/B8uF,GAAiB,GAGnB1zF,KAAKgF,MAAQ,GAAIpC,GAAU5C,KAAKmgD,MAAMvN,MAAO5yC,KAAKmgD,MAAMrN,IAAK4gD,EAAgBD,EAAczzF,KAAK45C,IAAIpP,MAAM2P,aAAcn6C,KAAK6G,MAAMksE,gBAAiB/yE,KAAK6D,QAAQsuF,WAAYnyF,KAAK6D,QAAQk7C,GAAa1rC,QAEnMrT,KAAKixF,UAAW,GAA4B1qF,QAAnBvG,KAAKkxF,YAChClxF,KAAKgF,MAAM2uF,YAAY3zF,KAAKkxF,WAAWlsF,OAIzChF,KAAK4zF,aAAe,CAEpB,IAAIzhB,GAAQnyE,KAAKgF,MAAM6uF,UACvB1hB,GAAM7oE,QAAQ,SAAUowC,GACtB,GAAIz4B,GAAIy4B,EAAKz4B,EACTyrD,EAAUhzB,EAAKo6C,KACf5xC,GAAMr+C,QAAyB,iBAAK6oE,KAAY,GAClDxqB,EAAM6xC,aAAa9yE,EAAI,EAAGy4B,EAAKrkC,IAAK0pC,EAAa,uBAAwBmD,EAAMr7C,MAAMgsE,iBAEnFnG,GACEzrD,GAAK,GACPihC,EAAM6xC,aAAa9yE,EAAI,EAAGy4B,EAAKrkC,IAAK0pC,EAAa,uBAAwBmD,EAAMr7C,MAAMksE,iBAGrF7wB,EAAM+uC,UAAW,IACfvkB,EACFxqB,EAAM8xC,YAAY/yE,EAAG89B,EAAa,oCAAqCmD,EAAMr+C,QAAQiuF,iBAAkB5vC,EAAMr7C,MAAMssE,gBAEnHjxB,EAAM8xC,YAAY/yE,EAAG89B,EAAa,oCAAqCmD,EAAMr+C,QAAQkuF,iBAAkB7vC,EAAMr7C,MAAMosE,kBAMzH,IAAIghB,GAAa,CACuB1tF,UAApCvG,KAAK6D,QAAQk7C,GAAa2hB,OAAgEn6D,SAAzCvG,KAAK6D,QAAQk7C,GAAa2hB,MAAM7sB,OACnFogD,EAAaj0F,KAAK6G,MAAMqtF,gBAE1B,IAAI1sE,GAASxnB,KAAK6D,QAAQguF,SAAU,EAAO5sF,KAAKJ,IAAI7E,KAAK6D,QAAQquF,UAAW+B,GAAcj0F,KAAK6D,QAAQmuF,aAAe,GAAKiC,EAAaj0F,KAAK6D,QAAQmuF,aAAe,EAyBpK,OAtBIhyF,MAAK4zF,aAAe5zF,KAAKw+B,MAAQhX,GAAUxnB,KAAK6D,QAAQqvC,WAAY,GACtElzC,KAAKw+B,MAAQx+B,KAAK4zF,aAAepsE,EACjCxnB,KAAK6D,QAAQ26B,MAAQx+B,KAAKw+B,MAAQ,KAClC59B,EAAQm8B,gBAAgB/8B,KAAKqyF,YAAYlgB,OACzCvxE,EAAQm8B,gBAAgB/8B,KAAKqyF,YAAYC,QACzCtyF,KAAK0sC,SACLsvB,GAAU,GAGHh8D,KAAK4zF,aAAe5zF,KAAKw+B,MAAQhX,GAAUxnB,KAAK6D,QAAQqvC,WAAY,GAAQlzC,KAAKw+B,MAAQx+B,KAAKwyF,UACnGxyF,KAAKw+B,MAAQv5B,KAAKJ,IAAI7E,KAAKwyF,SAAUxyF,KAAK4zF,aAAepsE,GACzDxnB,KAAK6D,QAAQ26B,MAAQx+B,KAAKw+B,MAAQ,KAClC59B,EAAQm8B,gBAAgB/8B,KAAKqyF,YAAYlgB,OACzCvxE,EAAQm8B,gBAAgB/8B,KAAKqyF,YAAYC,QACzCtyF,KAAK0sC,SACLsvB,GAAU,IAEVp7D,EAAQm8B,gBAAgB/8B,KAAKqyF,YAAYlgB,OACzCvxE,EAAQm8B,gBAAgB/8B,KAAKqyF,YAAYC,QACzCt2B,GAAU,GAGPA,GAGTr5D,EAASsQ,UAAUy+E,aAAe,SAAU3sF,GAC1C,MAAO/E,MAAKgF,MAAM0sF,aAAa3sF,IAGjCpC,EAASsQ,UAAU+4E,cAAgB,SAAUpuD,GAC3C,MAAO59B,MAAKgF,MAAMgnF,cAAcpuD,IAYlCj7B,EAASsQ,UAAU8gF,aAAe,SAAU9yE,EAAG4yB,EAAMkL,EAAah2C,EAAWorF,GAE3E,GAAIj2D,GAAQt9B,EAAQ28B,cAAc,MAAOv9B,KAAKqyF,YAAYC,OAAQtyF,KAAK45C,IAAIpP,MAC3EtM,GAAMn1B,UAAYA,EAClBm1B,EAAM4Q,UAAY+E,EACE,SAAhBkL,GACF7gB,EAAMpvB,MAAMnG,KAAO,IAAM3I,KAAK6D,QAAQmuF,aAAe,KACrD9zD,EAAMpvB,MAAMikC,UAAY,UAExB7U,EAAMpvB,MAAM+iC,MAAQ,IAAM7xC,KAAK6D,QAAQmuF,aAAe,KACtD9zD,EAAMpvB,MAAMikC,UAAY,QAG1B7U,EAAMpvB,MAAMjG,IAAMoY,EAAI,GAAMkzE,EAAkBn0F,KAAK6D,QAAQouF,aAAe,KAE1Ep+C,GAAQ,EAER,IAAIugD,GAAenvF,KAAKJ,IAAI7E,KAAK6G,MAAM4tE,eAAgBz0E,KAAK6G,MAAM4sE,eAC9DzzE,MAAK4zF,aAAe//C,EAAKvtC,OAAS8tF,IACpCp0F,KAAK4zF,aAAe//C,EAAKvtC,OAAS8tF,IAYtCzxF,EAASsQ,UAAU+gF,YAAc,SAAU/yE,EAAG89B,EAAah2C,EAAWye,EAAQgX,GAC5E,GAAIx+B,KAAKixF,UAAW,EAAM,CACxB,GAAIv3C,GAAO94C,EAAQ28B,cAAc,MAAOv9B,KAAKqyF,YAAYlgB,MAAOnyE,KAAK45C,IAAIk5C,cACzEp5C,GAAK3wC,UAAYA,EACjB2wC,EAAK5K,UAAY,GAEG,SAAhBiQ,EACFrF,EAAK5qC,MAAMnG,KAAO3I,KAAKw+B,MAAQhX,EAAS,KAExCkyB,EAAK5qC,MAAM+iC,MAAQ7xC,KAAKw+B,MAAQhX,EAAS,KAG3CkyB,EAAK5qC,MAAM0vB,MAAQA,EAAQ,KAC3Bkb,EAAK5qC,MAAMjG,IAAMoY,EAAI,OASzBte,EAASsQ,UAAUsgF,aAAe,SAAUx0C,GAI1C,GAHAn+C,EAAQ87B,gBAAgB18B,KAAKqyF,YAAY3xB,OAGDn6D,SAApCvG,KAAK6D,QAAQk7C,GAAa2hB,OAAgEn6D,SAAzCvG,KAAK6D,QAAQk7C,GAAa2hB,MAAM7sB,KAAoB,CACvG,GAAI6sB,GAAQ9/D,EAAQ28B,cAAc,MAAOv9B,KAAKqyF,YAAY3xB,MAAO1gE,KAAK45C,IAAIpP,MAC1Ek2B,GAAM33D,UAAY,4BAA8Bg2C,EAChD2hB,EAAM5xB,UAAY9uC,KAAK6D,QAAQk7C,GAAa2hB,MAAM7sB,KAGJttC,SAA1CvG,KAAK6D,QAAQk7C,GAAa2hB,MAAM5xD,OAClCnO,EAAKuO,WAAWwxD,EAAO1gE,KAAK6D,QAAQk7C,GAAa2hB,MAAM5xD,OAGrC,SAAhBiwC,EACF2hB,EAAM5xD,MAAMnG,KAAO3I,KAAK6G,MAAMqtF,gBAAkB,KAEhDxzB,EAAM5xD,MAAM+iC,MAAQ7xC,KAAK6G,MAAMqtF,gBAAkB,KAGnDxzB,EAAM5xD,MAAM0vB,MAAQx+B,KAAKy+B,OAAS,KAIpC79B,EAAQm8B,gBAAgB/8B,KAAKqyF,YAAY3xB,QAQ3C/9D,EAASsQ,UAAU0/D,mBAAqB,WAEtC,KAAM,mBAAqB3yE,MAAK6G,OAAQ,CACtC,GAAIwtF,GAAYj3D,SAASu3C,eAAe,KACpCG,EAAmB13C,SAASM,cAAc,MAC9Co3C,GAAiB/rE,UAAY,mCAC7B+rE,EAAiBx3C,YAAY+2D,GAC7Br0F,KAAK45C,IAAIpP,MAAMlN,YAAYw3C,GAE3B90E,KAAK6G,MAAMgsE,gBAAkBiC,EAAiBplC,aAC9C1vC,KAAK6G,MAAM4sE,eAAiBqB,EAAiBpqC,YAE7C1qC,KAAK45C,IAAIpP,MAAM9lC,YAAYowE,GAG7B,KAAM,mBAAqB90E,MAAK6G,OAAQ,CACtC,GAAIytF,GAAYl3D,SAASu3C,eAAe,KACpCI,EAAmB33C,SAASM,cAAc,MAC9Cq3C,GAAiBhsE,UAAY,mCAC7BgsE,EAAiBz3C,YAAYg3D,GAC7Bt0F,KAAK45C,IAAIpP,MAAMlN,YAAYy3C,GAE3B/0E,KAAK6G,MAAMksE,gBAAkBgC,EAAiBrlC,aAC9C1vC,KAAK6G,MAAM4tE,eAAiBM,EAAiBrqC,YAE7C1qC,KAAK45C,IAAIpP,MAAM9lC,YAAYqwE,GAG7B,KAAM,mBAAqB/0E,MAAK6G,OAAQ,CACtC,GAAI0tF,GAAYn3D,SAASu3C,eAAe,KACpC6f,EAAmBp3D,SAASM,cAAc,MAC9C82D,GAAiBzrF,UAAY,mCAC7ByrF,EAAiBl3D,YAAYi3D,GAC7Bv0F,KAAK45C,IAAIpP,MAAMlN,YAAYk3D,GAE3Bx0F,KAAK6G,MAAMqtF,gBAAkBM,EAAiB9kD,aAC9C1vC,KAAK6G,MAAM4tF,eAAiBD,EAAiB9pD,YAE7C1qC,KAAK45C,IAAIpP,MAAM9lC,YAAY8vF,KAI/B30F,EAAOD,QAAU+C,GAIb,SAAS9C,EAAQD,GAQrB,QAASgD,GAAUgwC,EAAOE,EAAK4gD,EAAgBD,EAAcpyB,EAAiB0R,GAC5E,GAAI2hB,GAAYruF,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GACpFsuF,EAAqBtuF,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAsBjG,IApBArG,KAAK40F,YAAc,EAAG,EAAG,EAAG,IAC5B50F,KAAK60F,YAAc,IAAM,GAAK,EAAG,GACjC70F,KAAK80F,YAAc,KAEnB90F,KAAKqhE,gBAAkBA,EACvBrhE,KAAK+yE,gBAAkBA,EACvB/yE,KAAK09C,OAAS9K,EACd5yC,KAAK29C,KAAO7K,EAEZ9yC,KAAKgF,MAAQ,EACbhF,KAAK+0F,aAAe,GACpB/0F,KAAKg1F,gBAAkB,EACvBh1F,KAAKi1F,iBAELj1F,KAAK00F,UAAYA,EACjB10F,KAAK0zF,eAAiBA,EACtB1zF,KAAKyzF,aAAeA,EAEpBzzF,KAAK20F,mBAAqBA,EAEtBjB,GAAkBD,EAAc,CAClC,GAAIzzD,GAAKhgC,KACL+rE,EAAe,SAAsBhnE,GACvC,GAAImwF,GAAUnwF,EAAQA,GAASi7B,EAAGg1D,gBAAkBh1D,EAAG60D,WAAW70D,EAAG+0D,cACrE,OAAIhwF,IAASi7B,EAAGg1D,gBAAkBh1D,EAAG60D,WAAW70D,EAAG+0D,eAAiB,IAAO/0D,EAAGg1D,gBAAkBh1D,EAAG60D,WAAW70D,EAAG+0D,eACxGG,EAAUl1D,EAAGg1D,gBAAkBh1D,EAAG60D,WAAW70D,EAAG+0D,cAEhDG,EAGPxB,KACF1zF,KAAK09C,QAAiC,EAAvB19C,KAAKg1F,gBAAsBh1F,KAAK60F,WAAW70F,KAAK+0F,cAC/D/0F,KAAK09C,OAASquB,EAAa/rE,KAAK09C,SAG9B+1C,IACFzzF,KAAK29C,MAAQ39C,KAAKg1F,gBAAkBh1F,KAAK60F,WAAW70F,KAAK+0F,cACzD/0F,KAAK29C,KAAOouB,EAAa/rE,KAAK29C,OAEhC39C,KAAKi1F,kBAITryF,EAAUqQ,UAAUkiF,cAAgB,SAAUpiB,GAC5C/yE,KAAK+yE,gBAAkBA,GAGzBnwE,EAAUqQ,UAAUmiF,UAAY,SAAU/zB,GACxCrhE,KAAKqhE,gBAAkBA,GAGzBz+D,EAAUqQ,UAAUgiF,eAAiB,WACnC,GAAI90C,GAAQngD,KAAK29C,KAAO39C,KAAK09C,MAC7B19C,MAAKgF,MAAQhF,KAAKqhE,gBAAkBlhB,CACpC,IAAIk1C,GAAmBr1F,KAAK+yE,gBAAkB/yE,KAAKgF,MAC/CswF,EAAmBrwF,KAAKsjB,MAAMtjB,KAAKk5C,IAAIgC,GAASl7C,KAAKm5C,KAEzDp+C,MAAK+0F,aAAe,GACpB/0F,KAAKg1F,gBAAkB/vF,KAAK8U,IAAI,GAAIu7E,EAEpC,IAAI1iD,GAAQ,CACW,GAAnB0iD,IACF1iD,EAAQ0iD,EAIV,KAAK,GADDC,IAAgB,EACXt1E,EAAI2yB,EAAO3tC,KAAK8R,IAAIkJ,IAAMhb,KAAK8R,IAAIu+E,GAAmBr1E,IAAK,CAClEjgB,KAAKg1F,gBAAkB/vF,KAAK8U,IAAI,GAAIkG,EACpC,KAAK,GAAIxP,GAAI,EAAGA,EAAIzQ,KAAK60F,WAAWvuF,OAAQmK,IAAK,CAC/C,GAAI+kF,GAAWx1F,KAAKg1F,gBAAkBh1F,KAAK60F,WAAWpkF,EACtD,IAAI+kF,GAAYH,EAAkB,CAChCE,GAAgB,EAChBv1F,KAAK+0F,aAAetkF,CACpB,QAGJ,GAAI8kF,KAAkB,EACpB,QAKN3yF,EAAUqQ,UAAUwiF,SAAW,SAAU1wF,GACvC,MAAOA,IAAS/E,KAAKg1F,gBAAkBh1F,KAAK40F,WAAW50F,KAAK+0F,iBAAmB,GAGjFnyF,EAAUqQ,UAAUwrC,QAAU,WAC5B,MAAOz+C,MAAKg1F,gBAAkBh1F,KAAK60F,WAAW70F,KAAK+0F,eAGrDnyF,EAAUqQ,UAAUyiF,cAAgB,WAClC,GAAIC,GAAY31F,KAAKg1F,gBAAkBh1F,KAAK40F,WAAW50F,KAAK+0F,aAC5D,OAAO/0F,MAAK0xF,aAAa1xF,KAAK09C,QAAUi4C,EAAY31F,KAAK09C,OAASi4C,GAAaA,IAGjF/yF,EAAUqQ,UAAU2iF,YAAc,SAAUp4B,GAC1C,GAAIxyD,GAAcwyD,EAAQhf,YAAY,EAKtC,OAJuC,kBAA5Bx+C,MAAK20F,qBACd3pF,EAAchL,KAAK20F,mBAAmBn3B,IAGb,gBAAhBxyD,GACF,GAAKA,EACoB,gBAAhBA,GACTA,EAEAwyD,EAAQhf,YAAY,IAI/B57C,EAAUqQ,UAAU4gF,SAAW,WAI7B,IAAK,GAHD1hB,MACAx/B,EAAO3yC,KAAKy+C,UACZo3C,GAAgBljD,EAAO3yC,KAAK09C,OAAS/K,GAAQA,EACxClsC,EAAIzG,KAAK09C,OAASm4C,EAAc71F,KAAK29C,KAAOl3C,EAAI,KAASA,GAAKksC,EACjElsC,GAAKzG,KAAK09C,QAEZy0B,EAAM3qE,MAAOssF,MAAO9zF,KAAKy1F,SAAShvF,GAAIwa,EAAGjhB,KAAK0xF,aAAajrF,GAAI4O,IAAKrV,KAAK41F,YAAYnvF,IAGzF,OAAO0rE,IAGTvvE,EAAUqQ,UAAU0gF,YAAc,SAAUjtF,GAC1C,GAAIovF,GAAa91F,KAAK+0F,aAClBgB,EAAW/1F,KAAK09C,OAChBs4C,EAASh2F,KAAK29C,KAEd3d,EAAKhgC,KACLi2F,EAAoB,WACtBj2D,EAAGg1D,iBAAmB,GAEpBkB,EAAoB,WACtBl2D,EAAGg1D,iBAAmB,EAGpBtuF,GAAMquF,cAAgB,GAAK/0F,KAAK+0F,cAAgB,GAAKruF,EAAMquF,aAAe,GAAK/0F,KAAK+0F,aAAe,IAE5FruF,EAAMquF,aAAe/0F,KAAK+0F,cAEjC/0F,KAAK+0F,aAAe,EACF,GAAde,EACFG,KAEAA,IACAA,OAIFj2F,KAAK+0F,aAAe,EACF,GAAde,EACFI,KAEAA,IACAA,MAYN,KAPA,GACIC,IADQzvF,EAAMmtF,WACFntF,EAAMgrF,aAAa,IAC/B0E,EAAY1vF,EAAM+3C,UAAY/3C,EAAM1B,MAEpC80D,GAAO,EACP7nC,EAAQ,GAEJ6nC,GAAQ7nC,IAAU,GAAG,CAG3BjyB,KAAKgF,MAAQoxF,GAAap2F,KAAK60F,WAAW70F,KAAK+0F,cAAgB/0F,KAAKg1F,gBACpE,IAAIqB,GAAWr2F,KAAKqhE,gBAAkBrhE,KAAKgF,KAG3ChF,MAAK09C,OAASq4C,EACd/1F,KAAK29C,KAAO39C,KAAK09C,OAAS24C,CAE1B,IAAIC,GAAiBt2F,KAAK29C,KAAO39C,KAAKgF,MAClC2wF,EAAY31F,KAAKg1F,gBAAkBh1F,KAAK40F,WAAW50F,KAAK+0F,cACxDwB,EAAcv2F,KAAK01F,gBAAkBhvF,EAAMgvF,eAE/C,IAAI11F,KAAK00F,UAAW,CAClB,GAAI8B,GAAaL,EAAYG,CAC7Bt2F,MAAK29C,MAAQ64C,EAAax2F,KAAKgF,MAC/BhF,KAAK09C,OAAS19C,KAAK29C,KAAO04C,MAErBr2F,MAAK0zF,gBAIR1zF,KAAK09C,QAAU64C,EAAcv2F,KAAKgF,MAClChF,KAAK29C,KAAO39C,KAAK09C,OAAS24C,IAJ1Br2F,KAAK09C,QAAUi4C,EAAYY,EAAcv2F,KAAKgF,MAC9ChF,KAAK29C,KAAO39C,KAAK09C,OAAS24C,EAM9B,KAAKr2F,KAAKyzF,cAAgBzzF,KAAK29C,KAAOq4C,EAAS,KAE7CE,IACAp8B,GAAO,MAHT,CAMA,IAAK95D,KAAK0zF,gBAAkB1zF,KAAK09C,OAASq4C,EAAW,KAAS,CAC5D,KAAI/1F,KAAK00F,WAAaqB,GAAY,GAE3B,CAELG,IACAp8B,GAAO,CACP,UALAn6C,QAAQH,KAAK,uDAQbxf,KAAK0zF,gBAAkB1zF,KAAKyzF,cAA2BuC,EAASD,EAApBM,GAC9CJ,IACAn8B,GAAO,GAGTA,GAAO,KAIXl3D,EAAUqQ,UAAUy+E,aAAe,SAAU3sF,GAC3C,MAAO/E,MAAKqhE,iBAAmBt8D,EAAQ/E,KAAK09C,QAAU19C,KAAKgF,OAG7DpC,EAAUqQ,UAAU+4E,cAAgB,SAAUyK,GAC5C,OAAQz2F,KAAKqhE,gBAAkBo1B,GAAUz2F,KAAKgF,MAAQhF,KAAK09C,QAG7D79C,EAAOD,QAAUgD,GAIb,SAAS/C,EAAQD,EAASM,GAoB9B,QAAS2C,GAAWqgD,EAAOS,EAAS9/C,EAASqpF,GAC3CltF,KAAKK,GAAKsjD,CACV,IAAI1zC,IAAU,WAAY,QAAS,OAAQ,mBAAoB,WAAY,aAAc,SAAU,gBAAiB,SAAU,sBAAuB,oBACrJjQ,MAAK6D,QAAUlD,EAAKqP,sBAAsBC,EAAQpM,GAClD7D,KAAK02F,kBAAwCnwF,SAApB28C,EAAMn6C,UAC/B/I,KAAKktF,yBAA2BA,EAChCltF,KAAK22F,aAAe,EACpB32F,KAAKkgC,OAAOgjB,GACkB,GAA1BljD,KAAK02F,oBACP12F,KAAKktF,yBAAyB,IAAM,GAEtCltF,KAAKugD,aACLvgD,KAAKkzC,QAA4B3sC,SAAlB28C,EAAMhQ,SAAwB,EAAOgQ,EAAMhQ,QA5B5D,GAAIvyC,GAAOT,EAAoB,GAE3BmtF,GADUntF,EAAoB,GACvBA,EAAoB,KAC3BotF,EAAQptF,EAAoB,IAC5BqtF,EAASrtF,EAAoB,GA+BjC2C,GAAWoQ,UAAUguC,SAAW,SAAUh/C,GAC3B,MAATA,GACFjC,KAAKugD,UAAYt+C,EACQ,GAArBjC,KAAK6D,QAAQ6a,MACf/d,EAAK2P,WAAWtQ,KAAKugD,UAAW,SAAUr6C,EAAGC,GAC3C,MAAOD,GAAE03B,EAAIz3B,EAAEy3B,EAAI,EAAI,MAI3B59B,KAAKugD,cAIT19C,EAAWoQ,UAAUi0D,SAAW,WAC9B,MAAOlnE,MAAKugD,WAOd19C,EAAWoQ,UAAU0+E,gBAAkB,SAAUp7D,GAC/Cv2B,KAAK22F,aAAepgE,GAOtB1zB,EAAWoQ,UAAU+rB,WAAa,SAAUn7B,GAC1C,GAAgB0C,SAAZ1C,EAAuB,CACzB,GAAIoM,IAAU,WAAY,QAAS,OAAQ,mBAAoB,WAAY,SAAU,sBAAuB,oBAC5GtP,GAAKsG,oBAAoBgJ,EAAQjQ,KAAK6D,QAASA,GAGd,kBAAtBA,GAAQ67D,aACjB77D,EAAQ67D,YACNC,SAAU97D,EAAQ67D,aAItB/+D,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,iBACzClD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,cACzClD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,UAErCA,EAAQ2oF,eAC0B,gBAAzB3oF,GAAQ2oF,eACb3oF,EAAQ2oF,cAAcC,kBACqB,WAAzC5oF,EAAQ2oF,cAAcC,gBACxBzsF,KAAK6D,QAAQ2oF,cAAcjG,MAAQ,EACe,WAAzC1iF,EAAQ2oF,cAAcC,gBAC/BzsF,KAAK6D,QAAQ2oF,cAAcjG,MAAQ,GAEnCvmF,KAAK6D,QAAQ2oF,cAAcC,gBAAkB,cAC7CzsF,KAAK6D,QAAQ2oF,cAAcjG,MAAQ,OAY/C1jF,EAAWoQ,UAAUitB,OAAS,SAAUgjB,GACtCljD,KAAKkjD,MAAQA,EACbljD,KAAKq+B,QAAU6kB,EAAM7kB,SAAW,QAChCr+B,KAAK+I,UAAYm6C,EAAMn6C,WAAa/I,KAAK+I,WAAa,kBAAoB/I,KAAKktF,yBAAyB,GAAK,GAC7GltF,KAAKkzC,QAA4B3sC,SAAlB28C,EAAMhQ,SAAwB,EAAOgQ,EAAMhQ,QAC1DlzC,KAAK8O,MAAQo0C,EAAMp0C,MACnB9O,KAAKg/B,WAAWkkB,EAAMr/C,UAUxBhB,EAAWoQ,UAAUy4E,UAAY,SAAUwG,EAAWe,EAAY7F,EAAWxvD,EAAG3c,GAC9E,GAAiB1a,QAAb6mF,GAAuC,MAAbA,EAAmB,CAC/C,GAAID,GAAM/vD,SAASC,gBAAgB,6BAA8B,MACjE+vD,IAAcD,IAAKA,EAAKF,eAAiBppF,QAAS7D,KAAK6D,QAAS66C,QAAS1+C,OAQ3E,QANSuG,QAALq3B,GAAuB,MAALA,KACpBA,EAAI,IAEGr3B,QAAL0a,GAAuB,MAALA,KACpBA,EAAI,GAAMgyE,GAEJjzF,KAAK6D,QAAQiL,OACnB,IAAK,OACHw+E,EAAMsJ,SAAS52F,KAAM49B,EAAG3c,EAAGixE,EAAWe,EAAY7F,EAClD,MACF,KAAK,SACL,IAAK,QACHG,EAAOqJ,SAAS52F,KAAM49B,EAAG3c,EAAGixE,EAAWe,EAAY7F,EACnD,MACF,KAAK,MACHC,EAAKuJ,SAAS52F,KAAM49B,EAAG3c,EAAGixE,EAAWe,EAAY7F,GAGrD,OAASyJ,KAAMzJ,EAAUD,IAAKjvD,MAAOl+B,KAAKq+B,QAAS0gB,YAAa/+C,KAAK6D,QAAQooF,mBAG/EppF,EAAWoQ,UAAUm9E,UAAY,SAAU3oB,GAGzC,IAAK,GAFD7gC,GAAO6gC,EAAU,GAAGxmD,EACpB6lB,EAAO2gC,EAAU,GAAGxmD,EACfxQ,EAAI,EAAGA,EAAIg3D,EAAUnhE,OAAQmK,IACpCm2B,EAAOA,EAAO6gC,EAAUh3D,GAAGwQ,EAAIwmD,EAAUh3D,GAAGwQ,EAAI2lB,EAChDE,EAAOA,EAAO2gC,EAAUh3D,GAAGwQ,EAAIwmD,EAAUh3D,GAAGwQ,EAAI6lB,CAElD,QAASliC,IAAKgiC,EAAM/hC,IAAKiiC,EAAMmlD,iBAAkBjsF,KAAK6D,QAAQooF,mBAGhEpsF,EAAOD,QAAUiD,GAIb,SAAShD,EAAQD,EAASM,GAO9B,QAAS42F,GAASnzC,EAAS9/C,IAH3B,GAAIjD,GAAUV,EAAoB,GAC9BqtF,EAASrtF,EAAoB,GAIjC42F,GAASF,SAAW,SAAU1zC,EAAOtlB,EAAG3c,EAAGixE,EAAWe,EAAY7F,GAChE,GAAI2J,GAA0B,GAAb9D,EAGb+D,EAAUp2F,EAAQq8B,cAAc,OAAQmwD,EAAUH,YAAaG,EAAUD,IAC7E6J,GAAQh5D,eAAe,KAAM,IAAKJ,GAClCo5D,EAAQh5D,eAAe,KAAM,IAAK/c,EAAI81E,GACtCC,EAAQh5D,eAAe,KAAM,QAASk0D,GACtC8E,EAAQh5D,eAAe,KAAM,SAAU,EAAI+4D,GAC3CC,EAAQh5D,eAAe,KAAM,QAAS,cAEtC,IAAIi5D,GAAWhyF,KAAKsjB,MAAM,GAAM2pE,GAC5BgF,EAAgBh0C,EAAMr/C,QAAQyoF,SAAS9tD,MACvCx5B,EAAQkyF,EAAgBD,EACxBE,EAAalyF,KAAKsjB,MAAM,GAAM0qE,GAC9BmE,EAAanyF,KAAKsjB,MAAM,IAAO0qE,GAE/BzrE,EAASviB,KAAKsjB,OAAO2pE,EAAY,EAAI+E,GAAY,EAKrD,IAHAr2F,EAAQ29B,QAAQX,EAAI,GAAMq5D,EAAWzvE,EAAQvG,EAAI81E,EAAaI,EAAa,EAAGF,EAAUE,EAAYj0C,EAAMn6C,UAAY,WAAYqkF,EAAUH,YAAaG,EAAUD,IAAKjqC,EAAMp0C,OAC9KlO,EAAQ29B,QAAQX,EAAI,IAAMq5D,EAAWzvE,EAAS,EAAGvG,EAAI81E,EAAaK,EAAa,EAAGH,EAAUG,EAAYl0C,EAAMn6C,UAAY,WAAYqkF,EAAUH,YAAaG,EAAUD,IAAKjqC,EAAMp0C,OAE1I,GAApCo0C,EAAMr/C,QAAQ67D,WAAW7uD,QAAiB,CAC5C,GAAIgtB,IACF/uB,MAAOo0C,EAAMr/C,QAAQ67D,WAAW5wD,MAChCD,OAAQq0C,EAAMr/C,QAAQ67D,WAAW7wD,OACjCovB,KAAMilB,EAAMr/C,QAAQ67D,WAAWzhC,KAAOj5B,EACtC+D,UAAWm6C,EAAMn6C,UAEnBnI,GAAQ+8B,UAAUC,EAAI,GAAMq5D,EAAWzvE,EAAQvG,EAAI81E,EAAaI,EAAa,EAAGt5D,EAAeuvD,EAAUH,YAAaG,EAAUD,KAChIvsF,EAAQ+8B,UAAUC,EAAI,IAAMq5D,EAAWzvE,EAAS,EAAGvG,EAAI81E,EAAaK,EAAa,EAAGv5D,EAAeuvD,EAAUH,YAAaG,EAAUD,OAUxI2J,EAAS7a,KAAO,SAAUzX,EAAU6yB,EAAoBjK,GACtD,GAEIkK,GACA3tF,EAAK4tF,EACLr0C,EACAz8C,EAAGgK,EALH+mF,KACAC,KAKAC,EAAY,CAGhB,KAAKjxF,EAAI,EAAGA,EAAI+9D,EAASl+D,OAAQG,IAE/B,GADAy8C,EAAQkqC,EAAU1uC,OAAO8lB,EAAS/9D,IACN,QAAxBy8C,EAAMr/C,QAAQiL,OACZo0C,EAAMhQ,WAAY,IAA8D3sC,SAArD6mF,EAAUvpF,QAAQ66C,OAAOgjB,WAAW8C,EAAS/9D,KAAqB2mF,EAAUvpF,QAAQ66C,OAAOgjB,WAAW8C,EAAS/9D,OAAQ,GACpJ,IAAKgK,EAAI,EAAGA,EAAI4mF,EAAmB7yB,EAAS/9D,IAAIH,OAAQmK,IACtD+mF,EAAahwF,MACX+pF,SAAU8F,EAAmB7yB,EAAS/9D,IAAIgK,GAAG8gF,SAC7CC,SAAU6F,EAAmB7yB,EAAS/9D,IAAIgK,GAAG+gF,SAC7C5zD,EAAGy5D,EAAmB7yB,EAAS/9D,IAAIgK,GAAGmtB,EACtC3c,EAAGo2E,EAAmB7yB,EAAS/9D,IAAIgK,GAAGwQ,EACtC0iC,QAAS6gB,EAAS/9D,GAClBy3B,MAAOm5D,EAAmB7yB,EAAS/9D,IAAIgK,GAAGytB,QAE5Cw5D,GAAa,CAMrB,IAAkB,IAAdA,EAiBJ,IAZAF,EAAa94E,KAAK,SAAUxY,EAAGC,GAC7B,MAAID,GAAEqrF,WAAaprF,EAAEorF,SACZrrF,EAAEy9C,QAAUx9C,EAAEw9C,QAAU,GAAK,EAE7Bz9C,EAAEqrF,SAAWprF,EAAEorF,WAK1BuF,EAASa,sBAAsBF,EAAeD,GAGzC/wF,EAAI,EAAGA,EAAI+wF,EAAalxF,OAAQG,IAAK,CACxCy8C,EAAQkqC,EAAU1uC,OAAO84C,EAAa/wF,GAAGk9C,QACzC,IAAI6uC,GAA8CjsF,QAAnC28C,EAAMr/C,QAAQyoF,SAASkG,SAAwBtvC,EAAMr/C,QAAQyoF,SAASkG,SAAW,GAAMtvC,EAAMr/C,QAAQyoF,SAAS9tD,KAE7H70B,GAAM6tF,EAAa/wF,GAAG8qF,QACtB,IAAIqG,GAAe,CACnB,IAA2BrxF,SAAvBkxF,EAAc9tF,GACZlD,EAAI,EAAI+wF,EAAalxF,SACvBgxF,EAAeryF,KAAK8R,IAAIygF,EAAa/wF,EAAI,GAAG8qF,SAAW5nF;AAEzD4tF,EAAWT,EAASe,iBAAiBP,EAAcp0C,EAAOsvC,OACrD,CACL,GAAI7gC,GAAUlrD,GAAKgxF,EAAc9tF,GAAKmuF,OAASL,EAAc9tF,GAAKouF,SACpDtxF,IAAKgxF,EAAc9tF,GAAKouF,SAAW,EAC7CpmC,GAAU6lC,EAAalxF,SACzBgxF,EAAeryF,KAAK8R,IAAIygF,EAAa7lC,GAAS4/B,SAAW5nF,IAE3D4tF,EAAWT,EAASe,iBAAiBP,EAAcp0C,EAAOsvC,GAC1DiF,EAAc9tF,GAAKouF,UAAY,EAE3B70C,EAAMr/C,QAAQ/B,SAAU,GAAQohD,EAAMr/C,QAAQorF,uBAAwB,EACpEuI,EAAa/wF,GAAG+qF,SAAWtuC,EAAMyzC,cACnCiB,EAAeH,EAAc9tF,GAAKquF,oBAClCP,EAAc9tF,GAAKquF,qBAAuB90C,EAAMyzC,aAAea,EAAa/wF,GAAG+qF,WAE/EoG,EAAeH,EAAc9tF,GAAKsuF,oBAClCR,EAAc9tF,GAAKsuF,qBAAuB/0C,EAAMyzC,aAAea,EAAa/wF,GAAG+qF,UAExEtuC,EAAMr/C,QAAQyoF,SAASC,cAAe,IAC/CgL,EAAS/4D,MAAQ+4D,EAAS/4D,MAAQi5D,EAAc9tF,GAAKmuF,OACrDP,EAAS/vE,QAAUiwE,EAAc9tF,GAAKouF,SAAWR,EAAS/4D,MAAQ,GAAM+4D,EAAS/4D,OAASi5D,EAAc9tF,GAAKmuF,OAAS,IAK1H,GAFAl3F,EAAQ29B,QAAQi5D,EAAa/wF,GAAG8qF,SAAWgG,EAAS/vE,OAAQgwE,EAAa/wF,GAAG+qF,SAAWoG,EAAcL,EAAS/4D,MAAO0kB,EAAMyzC,aAAea,EAAa/wF,GAAG+qF,SAAUtuC,EAAMn6C,UAAY,WAAYqkF,EAAUH,YAAaG,EAAUD,IAAKjqC,EAAMp0C,OAE1Oo0C,EAAMr/C,QAAQ67D,WAAW7uD,WAAY,EAAM,CAC7C,GAAIqnF,IACF3G,SAAUiG,EAAa/wF,GAAG8qF,SAC1BC,SAAUgG,EAAa/wF,GAAG+qF,SAAWoG,EACrCh6D,EAAG45D,EAAa/wF,GAAGm3B,EACnB3c,EAAGu2E,EAAa/wF,GAAGwa,EACnB0iC,QAAS6zC,EAAa/wF,GAAGk9C,QACzBzlB,MAAOs5D,EAAa/wF,GAAGy3B,MAEzBqvD,GAAOtR,MAAMic,GAAYh1C,EAAOkqC,EAAWmK,EAAS/vE,WAY1DsvE,EAASa,sBAAwB,SAAUF,EAAeD,GAGxD,IAAK,GADDF,GACK7wF,EAAI,EAAGA,EAAI+wF,EAAalxF,OAAQG,IACnCA,EAAI,EAAI+wF,EAAalxF,SACvBgxF,EAAeryF,KAAK8R,IAAIygF,EAAa/wF,EAAI,GAAG8qF,SAAWiG,EAAa/wF,GAAG8qF,WAErE9qF,EAAI,IACN6wF,EAAeryF,KAAKL,IAAI0yF,EAAcryF,KAAK8R,IAAIygF,EAAa/wF,EAAI,GAAG8qF,SAAWiG,EAAa/wF,GAAG8qF,YAE3E,IAAjB+F,IAC8C/wF,SAA5CkxF,EAAcD,EAAa/wF,GAAG8qF,YAChCkG,EAAcD,EAAa/wF,GAAG8qF,WAC5BuG,OAAQ,EACRC,SAAU,EACVE,oBAAqB,EACrBD,oBAAqB,IAGzBP,EAAcD,EAAa/wF,GAAG8qF,UAAUuG,QAAU,IAcxDhB,EAASe,iBAAmB,SAAUP,EAAcp0C,EAAOsvC,GACzD,GAAIh0D,GAAOhX,CAqBX,OApBI8vE,GAAep0C,EAAMr/C,QAAQyoF,SAAS9tD,OAAS84D,EAAe,GAChE94D,EAAuBg0D,EAAf8E,EAA0B9E,EAAW8E,EAE7C9vE,EAAS,EAC4B,SAAjC07B,EAAMr/C,QAAQyoF,SAAS5pB,MACzBl7C,GAAU,GAAM8vE,EAC0B,UAAjCp0C,EAAMr/C,QAAQyoF,SAAS5pB,QAChCl7C,GAAU,GAAM8vE,KAIlB94D,EAAQ0kB,EAAMr/C,QAAQyoF,SAAS9tD,MAC/BhX,EAAS,EAC4B,SAAjC07B,EAAMr/C,QAAQyoF,SAAS5pB,MACzBl7C,GAAU,GAAM07B,EAAMr/C,QAAQyoF,SAAS9tD,MACG,UAAjC0kB,EAAMr/C,QAAQyoF,SAAS5pB,QAChCl7C,GAAU,GAAM07B,EAAMr/C,QAAQyoF,SAAS9tD,SAIlCA,MAAOA,EAAOhX,OAAQA,IAGjCsvE,EAASzG,iBAAmB,SAAUmH,EAAcjJ,EAAa/pB,EAAU2zB,EAAYp5C,GACrF,GAAIy4C,EAAalxF,OAAS,EAAG,CAE3BkxF,EAAa94E,KAAK,SAAUxY,EAAGC,GAC7B,MAAID,GAAEqrF,WAAaprF,EAAEorF,SACZrrF,EAAEy9C,QAAUx9C,EAAEw9C,QAAU,GAAK,EAE7Bz9C,EAAEqrF,SAAWprF,EAAEorF,UAG1B,IAAIkG,KAEJX,GAASa,sBAAsBF,EAAeD,GAC9CjJ,EAAY4J,GAAcrB,EAASsB,kBAAkBX,EAAeD,GACpEjJ,EAAY4J,GAAYlM,iBAAmBltC,EAC3CylB,EAASh9D,KAAK2wF,KAIlBrB,EAASsB,kBAAoB,SAAUX,EAAeD,GAIpD,IAAK,GAHD7tF,GACAi9B,EAAO4wD,EAAa,GAAGhG,SACvB1qD,EAAO0wD,EAAa,GAAGhG,SAClB/qF,EAAI,EAAGA,EAAI+wF,EAAalxF,OAAQG,IACvCkD,EAAM6tF,EAAa/wF,GAAG8qF,SACKhrF,SAAvBkxF,EAAc9tF,IAChBi9B,EAAOA,EAAO4wD,EAAa/wF,GAAG+qF,SAAWgG,EAAa/wF,GAAG+qF,SAAW5qD,EACpEE,EAAOA,EAAO0wD,EAAa/wF,GAAG+qF,SAAWgG,EAAa/wF,GAAG+qF,SAAW1qD,GAEhE0wD,EAAa/wF,GAAG+qF,SAAW,EAC7BiG,EAAc9tF,GAAKquF,qBAAuBR,EAAa/wF,GAAG+qF,SAE1DiG,EAAc9tF,GAAKsuF,qBAAuBT,EAAa/wF,GAAG+qF,QAIhE,KAAK,GAAI6G,KAAQZ,GACXA,EAAczxF,eAAeqyF,KAC/BzxD,EAAOA,EAAO6wD,EAAcY,GAAML,oBAAsBP,EAAcY,GAAML,oBAAsBpxD,EAClGA,EAAOA,EAAO6wD,EAAcY,GAAMJ,oBAAsBR,EAAcY,GAAMJ,oBAAsBrxD,EAClGE,EAAOA,EAAO2wD,EAAcY,GAAML,oBAAsBP,EAAcY,GAAML,oBAAsBlxD,EAClGA,EAAOA,EAAO2wD,EAAcY,GAAMJ,oBAAsBR,EAAcY,GAAMJ,oBAAsBnxD,EAItG,QAASliC,IAAKgiC,EAAM/hC,IAAKiiC,IAG3BjnC,EAAOD,QAAUk3F,GAIb,SAASj3F,EAAQD,EAASM,GAM9B,QAASqtF,GAAO5pC,EAAS9/C,IA2CzB,QAASy0F,GAAiBp1C,EAAOq1C,GAE/B,MADAA,GAA2C,mBAAnBA,MAAsCA,GAE5DzpF,MAAOypF,EAAezpF,OAASo0C,EAAMr/C,QAAQ67D,WAAW5wD,MACxDD,OAAQ0pF,EAAe1pF,QAAUq0C,EAAMr/C,QAAQ67D,WAAW7wD,OAC1DovB,KAAMs6D,EAAet6D,MAAQilB,EAAMr/C,QAAQ67D,WAAWzhC,KACtDl1B,UAAWwvF,EAAexvF,WAAam6C,EAAMn6C,WAIjD,QAASyvF,GAAYpL,EAAWlqC,GAC9B,GAAI35C,GAAWhD,MAUf,OARI6mF,GAAUvpF,SAAWupF,EAAUvpF,QAAQ67D,YAAc0tB,EAAUvpF,QAAQ67D,WAAWC,UAA4D,kBAAzCytB,GAAUvpF,QAAQ67D,WAAWC,WACpIp2D,EAAW6jF,EAAUvpF,QAAQ67D,WAAWC,UAItCzc,EAAMA,MAAMr/C,SAAWq/C,EAAMA,MAAMr/C,QAAQ67D,YAAcxc,EAAMA,MAAMr/C,QAAQ67D,WAAWC,UAA8D,kBAA3Czc,GAAMA,MAAMr/C,QAAQ67D,WAAWC,WAC5Ip2D,EAAW25C,EAAMA,MAAMr/C,QAAQ67D,WAAWC,UAErCp2D,EAlET,GAAI3I,GAAUV,EAAoB,EAalCqtF,GAAOtR,KAAO,SAAUl5B,EAASG,EAAOkqC,EAAW5lE,GACjDA,EAASA,GAAU,CAGnB,KAAK,GAFDje,GAAWivF,EAAYpL,EAAWlqC,GAE7Bz8C,EAAI,EAAGA,EAAIs8C,EAAQz8C,OAAQG,IAClC,GAAK8C,EAGE,CACL,GAAIgvF,GAAiBhvF,EAASw5C,EAAQt8C,GAAIy8C,IACtCq1C,KAAmB,GAAkC,gBAAnBA,KACpC33F,EAAQ+8B,UAAUolB,EAAQt8C,GAAG8qF,SAAW/pE,EAAQu7B,EAAQt8C,GAAG+qF,SAAU8G,EAAiBp1C,EAAOq1C,GAAiBnL,EAAUH,YAAaG,EAAUD,IAAKpqC,EAAQt8C,GAAGy3B,WAJjKt9B,GAAQ+8B,UAAUolB,EAAQt8C,GAAG8qF,SAAW/pE,EAAQu7B,EAAQt8C,GAAG+qF,SAAU8G,EAAiBp1C,GAAQkqC,EAAUH,YAAaG,EAAUD,IAAKpqC,EAAQt8C,GAAGy3B,QAUrJqvD,EAAOqJ,SAAW,SAAU1zC,EAAOtlB,EAAG3c,EAAGixE,EAAWe,EAAY7F,GAC9D,GAAI2J,GAA0B,GAAb9D,EAGb+D,EAAUp2F,EAAQq8B,cAAc,OAAQmwD,EAAUH,YAAaG,EAAUD,IAC7E6J,GAAQh5D,eAAe,KAAM,IAAKJ,GAClCo5D,EAAQh5D,eAAe,KAAM,IAAK/c,EAAI81E,GACtCC,EAAQh5D,eAAe,KAAM,QAASk0D,GACtC8E,EAAQh5D,eAAe,KAAM,SAAU,EAAI+4D,GAC3CC,EAAQh5D,eAAe,KAAM,QAAS,eAGtCp9B,EAAQ+8B,UAAUC,EAAI,GAAMs0D,EAAWjxE,EAAGq3E,EAAiBp1C,GAAQkqC,EAAUH,YAAaG,EAAUD,MA2BtGttF,EAAOD,QAAU2tF,GAIb,SAAS1tF,EAAQD,EAASM,GAM9B,QAASu4F,GAAK90C,EAAS9/C,IAFvB,GAAIjD,GAAUV,EAAoB,EAIlCu4F,GAAKrJ,SAAW,SAAUrsC,EAASG,GAC/B,GAAe,MAAXH,GACIA,EAAQz8C,OAAS,EAAG,CACpB,GAAIkI,KAQJ,OAJIA,GADuC,GAAvC00C,EAAMr/C,QAAQ2oF,cAAc37E,QACxB4nF,EAAKC,YAAY31C,EAASG,GAE1Bu1C,EAAKE,QAAQ51C,KAOjC01C,EAAK7B,SAAW,SAAU1zC,EAAOtlB,EAAG3c,EAAGixE,EAAWe,EAAY7F,GAC1D,GACI5T,GAAMof,EADN7B,EAA0B,GAAb9D,EAGb+D,EAAUp2F,EAAQq8B,cAAc,OAAQmwD,EAAUH,YAAaG,EAAUD,IA2B7E,IA1BA6J,EAAQh5D,eAAe,KAAM,IAAKJ,GAClCo5D,EAAQh5D,eAAe,KAAM,IAAK/c,EAAI81E,GACtCC,EAAQh5D,eAAe,KAAM,QAASk0D,GACtC8E,EAAQh5D,eAAe,KAAM,SAAU,EAAI+4D,GAC3CC,EAAQh5D,eAAe,KAAM,QAAS,eAEtCw7C,EAAO54E,EAAQq8B,cAAc,OAAQmwD,EAAUH,YAAaG,EAAUD,KACtE3T,EAAKx7C,eAAe,KAAM,QAASklB,EAAMn6C,WACrBxC,SAAhB28C,EAAMp0C,OACN0qE,EAAKx7C,eAAe,KAAM,QAASklB,EAAMp0C,OAG7C0qE,EAAKx7C,eAAe,KAAM,IAAK,IAAMJ,EAAI,IAAM3c,EAAI,MAAQ2c,EAAIs0D,GAAa,IAAMjxE,GAC9C,GAAhCiiC,EAAMr/C,QAAQwoF,OAAOx7E,UACrB+nF,EAAWh4F,EAAQq8B,cAAc,OAAQmwD,EAAUH,YAAaG,EAAUD,KAClC,OAApCjqC,EAAMr/C,QAAQwoF,OAAOttC,YACrB65C,EAAS56D,eAAe,KAAM,IAAK,IAAMJ,EAAI,MAAQ3c,EAAI81E,GAAc,IAAMn5D,EAAI,IAAM3c,EAAI,MAAQ2c,EAAIs0D,GAAa,IAAMjxE,EAAI,MAAQ2c,EAAIs0D,GAAa,KAAOjxE,EAAI81E,IAElK6B,EAAS56D,eAAe,KAAM,IAAK,IAAMJ,EAAI,IAAM3c,EAAI,KAAY2c,EAAI,KAAO3c,EAAI81E,GAAc,MAAan5D,EAAIs0D,GAAa,KAAOjxE,EAAI81E,GAAc,KAAOn5D,EAAIs0D,GAAa,IAAMjxE,GAEzL23E,EAAS56D,eAAe,KAAM,QAASklB,EAAMn6C,UAAY,kBACtBxC,SAA/B28C,EAAMr/C,QAAQwoF,OAAOv9E,OAAsD,KAA/Bo0C,EAAMr/C,QAAQwoF,OAAOv9E,OACjE8pF,EAAS56D,eAAe,KAAM,QAASklB,EAAMr/C,QAAQwoF,OAAOv9E,QAI5B,GAApCo0C,EAAMr/C,QAAQ67D,WAAW7uD,QAAiB,CAC1C,GAAIgtB,IACA/uB,MAAOo0C,EAAMr/C,QAAQ67D,WAAW5wD,MAChCD,OAAQq0C,EAAMr/C,QAAQ67D,WAAW7wD,OACjCovB,KAAMilB,EAAMr/C,QAAQ67D,WAAWzhC,KAC/Bl1B,UAAWm6C,EAAMn6C,UAErBnI,GAAQ+8B,UAAUC,EAAI,GAAMs0D,EAAWjxE,EAAG4c,EAAeuvD,EAAUH,YAAaG,EAAUD,OAIlGsL,EAAKnJ,YAAc,SAAUuJ,EAAW31C,EAAO41C,EAAc1L,GAEzD,GAAoC,GAAhClqC,EAAMr/C,QAAQwoF,OAAOx7E,QAAiB,CACtC,GAAI4gF,GAAYptF,OAAO+oF,EAAUD,IAAIr+E,MAAM2vB,OAAOtyB,QAAQ,KAAM,KAC5DysF,EAAWh4F,EAAQq8B,cAAc,OAAQmwD,EAAUH,YAAaG,EAAUD,KAC1EvlF,EAAO,GACgC,IAAvCs7C,EAAMr/C,QAAQ2oF,cAAc37E,UAC5BjJ,EAAO,IAEX,IAAImxF,GACAC,EAAO,CAEPA,GADoC,OAApC91C,EAAMr/C,QAAQwoF,OAAOttC,YACd,EACoC,UAApCmE,EAAMr/C,QAAQwoF,OAAOttC,YACrB0yC,EAEAxsF,KAAKL,IAAIK,KAAKJ,IAAI,EAAGq+C,EAAMyzC,cAAelF,GAGjDsH,EADoC,SAApC71C,EAAMr/C,QAAQwoF,OAAOttC,aAA0C,MAAhB+5C,GAAwCvyF,QAAhBuyF,EAC/D,IAAMD,EAAU,GAAG,GAAK,IAAMA,EAAU,GAAG,GAAK,IAAM74F,KAAKi5F,cAAcJ,EAAWjxF,GAAM,GAAS,KAAOkxF,EAAaA,EAAaxyF,OAAS,GAAG,GAAK,IAAMwyF,EAAaA,EAAaxyF,OAAS,GAAG,GAAK,IAAMtG,KAAKi5F,cAAcH,EAAclxF,GAAM,GAAQkxF,EAAa,GAAG,GAAK,IAAMA,EAAa,GAAG,GAAK,KAE3S,IAAMD,EAAU,GAAG,GAAK,IAAMA,EAAU,GAAG,GAAK,IAAM74F,KAAKi5F,cAAcJ,EAAWjxF,GAAM,GAAS,KAAOoxF,EAAO,KAAOH,EAAU,GAAG,GAAK,KAGtJD,EAAS56D,eAAe,KAAM,QAASklB,EAAMn6C,UAAY,aACtBxC,SAA/B28C,EAAMr/C,QAAQwoF,OAAOv9E,OACrB8pF,EAAS56D,eAAe,KAAM,QAASklB,EAAMr/C,QAAQwoF,OAAOv9E,OAEhE8pF,EAAS56D,eAAe,KAAM,IAAK+6D,KAU3CN,EAAKxc,KAAO,SAAU4c,EAAW31C,EAAOkqC,GACpC,GAAiB,MAAbyL,GAAkCtyF,QAAbsyF,EAAwB,CAC7C,GAAIrf,GAAO54E,EAAQq8B,cAAc,OAAQmwD,EAAUH,YAAaG,EAAUD,IAC1E3T,GAAKx7C,eAAe,KAAM,QAASklB,EAAMn6C,WACrBxC,SAAhB28C,EAAMp0C,OACN0qE,EAAKx7C,eAAe,KAAM,QAASklB,EAAMp0C,MAG7C,IAAIlH,GAAO,GACgC,IAAvCs7C,EAAMr/C,QAAQ2oF,cAAc37E,UAC5BjJ,EAAO,KAGX4xE,EAAKx7C,eAAe,KAAM,IAAK,IAAM66D,EAAU,GAAG,GAAK,IAAMA,EAAU,GAAG,GAAK,IAAM74F,KAAKi5F,cAAcJ,EAAWjxF,GAAM,MAIjI6wF,EAAKQ,cAAgB,SAAUJ,EAAWjxF,EAAMsxF,GAC5C,GAAIL,EAAUvyF,OAAS,EAEnB,MAAO,EAEX,IAAIkI,GAAI5G,CACR,IAAIsxF,EACA,IAAK,GAAIzyF,GAAIoyF,EAAUvyF,OAAS,EAAGG,EAAI,EAAGA,IACtC+H,GAAKqqF,EAAUpyF,GAAG,GAAK,IAAMoyF,EAAUpyF,GAAG,GAAK,QAGnD,KAAK,GAAIA,GAAI,EAAGA,EAAIoyF,EAAUvyF,OAAQG,IAClC+H,GAAKqqF,EAAUpyF,GAAG,GAAK,IAAMoyF,EAAUpyF,GAAG,GAAK,GAGvD,OAAO+H,IAUXiqF,EAAKU,mBAAqB,SAAUnhF,GAEhC,GAAIohF,GAAIv9E,EAAIC,EAAIC,EAAIs9E,EAAKC,EACrB9qF,IACJA,GAAEhH,MAAMvC,KAAKsjB,MAAMvQ,EAAK,GAAGu5E,UAAWtsF,KAAKsjB,MAAMvQ,EAAK,GAAGw5E,WAGzD,KAAK,GAFD+H,GAAgB,EAAI,EACpBjzF,EAAS0R,EAAK1R,OACTG,EAAI,EAAOH,EAAS,EAAbG,EAAgBA,IAE5B2yF,EAAU,GAAL3yF,EAASuR,EAAK,GAAKA,EAAKvR,EAAI,GACjCoV,EAAK7D,EAAKvR,GACVqV,EAAK9D,EAAKvR,EAAI,GACdsV,EAAazV,EAARG,EAAI,EAAauR,EAAKvR,EAAI,GAAKqV,EASpCu9E,GACI9H,WAAY6H,EAAG7H,SAAW,EAAI11E,EAAG01E,SAAWz1E,EAAGy1E,UAAYgI,EAC3D/H,WAAY4H,EAAG5H,SAAW,EAAI31E,EAAG21E,SAAW11E,EAAG01E,UAAY+H,GAE/DD,GACI/H,UAAW11E,EAAG01E,SAAW,EAAIz1E,EAAGy1E,SAAWx1E,EAAGw1E,UAAYgI,EAC1D/H,UAAW31E,EAAG21E,SAAW,EAAI11E,EAAG01E,SAAWz1E,EAAGy1E,UAAY+H,GAI9D/qF,EAAEhH,MAAM6xF,EAAI9H,SAAU8H,EAAI7H,WAC1BhjF,EAAEhH,MAAM8xF,EAAI/H,SAAU+H,EAAI9H,WAC1BhjF,EAAEhH,MAAMsU,EAAGy1E,SAAUz1E,EAAG01E,UAG5B,OAAOhjF,IAcXiqF,EAAKC,YAAc,SAAU1gF,EAAMkrC,GAC/B,GAAIqjC,GAAQrjC,EAAMr/C,QAAQ2oF,cAAcjG,KACxC,IAAa,GAATA,GAAwBhgF,SAAVggF,EACd,MAAOvmF,MAAKm5F,mBAAmBnhF,EAE/B,IAAIohF,GAAIv9E,EAAIC,EAAIC,EAAIs9E,EAAKC,EAAKE,EAAIC,EAAIC,EAAIC,EAAG/kD,EAAGglD,EAAG14E,EAC/C24E,EAAQC,EAAQC,EAASC,EAASC,EAASC,EAC3C1rF,IACJA,GAAEhH,MAAMvC,KAAKsjB,MAAMvQ,EAAK,GAAGu5E,UAAWtsF,KAAKsjB,MAAMvQ,EAAK,GAAGw5E,WAEzD,KAAK,GADDlrF,GAAS0R,EAAK1R,OACTG,EAAI,EAAOH,EAAS,EAAbG,EAAgBA,IAE5B2yF,EAAU,GAAL3yF,EAASuR,EAAK,GAAKA,EAAKvR,EAAI,GACjCoV,EAAK7D,EAAKvR,GACVqV,EAAK9D,EAAKvR,EAAI,GACdsV,EAAazV,EAARG,EAAI,EAAauR,EAAKvR,EAAI,GAAKqV,EAEpC09E,EAAKv0F,KAAKw0C,KAAKx0C,KAAK8U,IAAIq/E,EAAG7H,SAAW11E,EAAG01E,SAAU,GAAKtsF,KAAK8U,IAAIq/E,EAAG5H,SAAW31E,EAAG21E,SAAU,IAC5FiI,EAAKx0F,KAAKw0C,KAAKx0C,KAAK8U,IAAI8B,EAAG01E,SAAWz1E,EAAGy1E,SAAU,GAAKtsF,KAAK8U,IAAI8B,EAAG21E,SAAW11E,EAAG01E,SAAU,IAC5FkI,EAAKz0F,KAAKw0C,KAAKx0C,KAAK8U,IAAI+B,EAAGy1E,SAAWx1E,EAAGw1E,SAAU,GAAKtsF,KAAK8U,IAAI+B,EAAG01E,SAAWz1E,EAAGy1E,SAAU,IAY5FqI,EAAS50F,KAAK8U,IAAI2/E,EAAInT,GACtBwT,EAAU90F,KAAK8U,IAAI2/E,EAAI,EAAInT,GAC3BuT,EAAS70F,KAAK8U,IAAI0/E,EAAIlT,GACtByT,EAAU/0F,KAAK8U,IAAI0/E,EAAI,EAAIlT,GAC3B2T,EAASj1F,KAAK8U,IAAIy/E,EAAIjT,GACtB0T,EAAUh1F,KAAK8U,IAAIy/E,EAAI,EAAIjT,GAE3BoT,EAAI,EAAIM,EAAU,EAAIC,EAASJ,EAASE,EACxCplD,EAAI,EAAImlD,EAAU,EAAIF,EAASC,EAASE,EACxCJ,EAAI,EAAIM,GAAUA,EAASJ,GACvBF,EAAI,IACJA,EAAI,EAAIA,GAEZ14E,EAAI,EAAI24E,GAAUA,EAASC,GACvB54E,EAAI,IACJA,EAAI,EAAIA,GAGZm4E,GACI9H,WAAYyI,EAAUZ,EAAG7H,SAAWoI,EAAI99E,EAAG01E,SAAW0I,EAAUn+E,EAAGy1E,UAAYqI,EAC/EpI,WAAYwI,EAAUZ,EAAG5H,SAAWmI,EAAI99E,EAAG21E,SAAWyI,EAAUn+E,EAAG01E,UAAYoI,GAGnFN,GACI/H,UAAWwI,EAAUl+E,EAAG01E,SAAW38C,EAAI94B,EAAGy1E,SAAWyI,EAAUj+E,EAAGw1E,UAAYrwE,EAC9EswE,UAAWuI,EAAUl+E,EAAG21E,SAAW58C,EAAI94B,EAAG01E,SAAWwI,EAAUj+E,EAAGy1E,UAAYtwE,GAG9D,GAAhBm4E,EAAI9H,UAAiC,GAAhB8H,EAAI7H,WACzB6H,EAAMx9E,GAEU,GAAhBy9E,EAAI/H,UAAiC,GAAhB+H,EAAI9H,WACzB8H,EAAMx9E,GAEVtN,EAAEhH,MAAM6xF,EAAI9H,SAAU8H,EAAI7H,WAC1BhjF,EAAEhH,MAAM8xF,EAAI/H,SAAU+H,EAAI9H,WAC1BhjF,EAAEhH,MAAMsU,EAAGy1E,SAAUz1E,EAAG01E,UAG5B,OAAOhjF,IAUfiqF,EAAKE,QAAU,SAAU3gF,GAGrB,IAAK,GADDxJ,MACK/H,EAAI,EAAGA,EAAIuR,EAAK1R,OAAQG,IAC7B+H,EAAEhH,MAAMwQ,EAAKvR,GAAG8qF,SAAUv5E,EAAKvR,GAAG+qF,UAEtC,OAAOhjF,IAGX3O,EAAOD,QAAU64F,GAIb,SAAS54F,EAAQD,EAASM,GAW9B,QAAS8C,GAAOo8C,EAAMv7C,EAASs2F,EAAMvI,GACnC5xF,KAAKo/C,KAAOA,EACZp/C,KAAK4+C,gBACH/tC,SAAS,EACTghF,OAAO,EACPuI,SAAU,GACVC,YAAa,EACb1xF,MACEuqC,SAAS,EACTxE,SAAU,YAEZmD,OACEqB,SAAS,EACTxE,SAAU,cAId1uC,KAAKm6F,KAAOA,EACZn6F,KAAK6D,QAAUlD,EAAKgG,UAAW3G,KAAK4+C,gBACpC5+C,KAAK4xF,iBAAmBA,EAExB5xF,KAAKitF,eACLjtF,KAAK45C,OACL55C,KAAK0+C,UACL1+C,KAAK6yF,eAAiB,EACtB7yF,KAAKm/C,UACLn/C,KAAKotF,WAAcD,IAAKntF,KAAKmtF,IAAKF,YAAajtF,KAAKitF,YAAappF,QAAS7D,KAAK6D,QAAS66C,OAAQ1+C,KAAK0+C,QAErG1+C,KAAKg/B,WAAWn7B,GAnClB,GAAIlD,GAAOT,EAAoB,GAC3BU,EAAUV,EAAoB,GAC9BsC,EAAYtC,EAAoB,GAoCpC8C,GAAOiQ,UAAY,GAAIzQ,GAEvBQ,EAAOiQ,UAAU8uB,MAAQ,WACvB/hC,KAAK0+C,UACL1+C,KAAK6yF,eAAiB,GAGxB7vF,EAAOiQ,UAAU26E,SAAW,SAAU1vD,EAAO60D,GAGG,GAA1CA,EAAalvF,QAAQy2F,oBAClBt6F,KAAK0+C,OAAO14C,eAAek4B,KAC9Bl+B,KAAK0+C,OAAOxgB,GAAS60D,GAEvB/yF,KAAK6yF,gBAAkB,IAI3B7vF,EAAOiQ,UAAUowD,YAAc,SAAUnlC,EAAO60D,GAC9C/yF,KAAK0+C,OAAOxgB,GAAS60D,GAGvB/vF,EAAOiQ,UAAUy6E,YAAc,SAAUxvD,GACnCl+B,KAAK0+C,OAAO14C,eAAek4B,WACtBl+B,MAAK0+C,OAAOxgB,GACnBl+B,KAAK6yF,gBAAkB,IAI3B7vF,EAAOiQ,UAAUksC,QAAU,WACzBn/C,KAAK45C,IAAIpP,MAAQpN,SAASM,cAAc,OACxC19B,KAAK45C,IAAIpP,MAAMzhC,UAAY,aAC3B/I,KAAK45C,IAAIpP,MAAM17B,MAAM4/B,SAAW,WAChC1uC,KAAK45C,IAAIpP,MAAM17B,MAAMjG,IAAM,OAC3B7I,KAAK45C,IAAIpP,MAAM17B,MAAMymE,QAAU,QAE/Bv1E,KAAK45C,IAAI2gD,SAAWn9D,SAASM,cAAc,OAC3C19B,KAAK45C,IAAI2gD,SAASxxF,UAAY,kBAC9B/I,KAAK45C,IAAI2gD,SAASzrF,MAAM4/B,SAAW,WACnC1uC,KAAK45C,IAAI2gD,SAASzrF,MAAMjG,IAAM,MAE9B7I,KAAKmtF,IAAM/vD,SAASC,gBAAgB,6BAA8B,OAClEr9B,KAAKmtF,IAAIr+E,MAAM4/B,SAAW,WAC1B1uC,KAAKmtF,IAAIr+E,MAAMjG,IAAM,MACrB7I,KAAKmtF,IAAIr+E,MAAM0vB,MAAQx+B,KAAK6D,QAAQu2F,SAAW,EAAI,KACnDp6F,KAAKmtF,IAAIr+E,MAAM2vB,OAAS,OAExBz+B,KAAK45C,IAAIpP,MAAMlN,YAAYt9B,KAAKmtF,KAChCntF,KAAK45C,IAAIpP,MAAMlN,YAAYt9B,KAAK45C,IAAI2gD,WAMtCv3F,EAAOiQ,UAAU0yD,KAAO,WAElB3lE,KAAK45C,IAAIpP,MAAMn/B,YACjBrL,KAAK45C,IAAIpP,MAAMn/B,WAAW3G,YAAY1E,KAAK45C,IAAIpP,QAQnDxnC,EAAOiQ,UAAU0vC,KAAO,WAEjB3iD,KAAK45C,IAAIpP,MAAMn/B,YAClBrL,KAAKo/C,KAAKxF,IAAIvD,OAAO/Y,YAAYt9B,KAAK45C,IAAIpP,QAI9CxnC,EAAOiQ,UAAU+rB,WAAa,SAAUn7B,GACtC,GAAIoM,IAAU,UAAW,cAAe,QAAS,OAAQ,QACzDtP,GAAKsG,oBAAoBgJ,EAAQjQ,KAAK6D,QAASA,IAGjDb,EAAOiQ,UAAUy5B,OAAS,WACxB,GAAI2mD,GAAe,EACfF,EAAa/rF,OAAO6H,KAAKjP,KAAK0+C,OAClCy0C,GAAWz0E,KAAK,SAAUxY,EAAGC,GAC3B,MAAWA,GAAJD,EAAQ,GAAK,GAGtB,KAAK,GAAIO,GAAI,EAAGA,EAAI0sF,EAAW7sF,OAAQG,IAAK,CAC1C,GAAIk9C,GAAUwvC,EAAW1sF,EACW,IAAhCzG,KAAK0+C,OAAOiF,GAASzQ,SAAkE3sC,SAA9CvG,KAAK4xF,iBAAiBlwB,WAAW/d,IAAuE,GAA7C3jD,KAAK4xF,iBAAiBlwB,WAAW/d,IACvI0vC,IAIJ,GAAuC,GAAnCrzF,KAAK6D,QAAQ7D,KAAKm6F,MAAMjnD,SAA2C,GAAvBlzC,KAAK6yF,gBAA+C,GAAxB7yF,KAAK6D,QAAQgN,SAAoC,GAAhBwiF,EAC3GrzF,KAAK2lE,WACA,CAoBL,GAnBA3lE,KAAK2iD,OACmC,YAApC3iD,KAAK6D,QAAQ7D,KAAKm6F,MAAMzrD,UAA8D,eAApC1uC,KAAK6D,QAAQ7D,KAAKm6F,MAAMzrD,UAC5E1uC,KAAK45C,IAAIpP,MAAM17B,MAAMnG,KAAO,MAC5B3I,KAAK45C,IAAIpP,MAAM17B,MAAMikC,UAAY,OACjC/yC,KAAK45C,IAAI2gD,SAASzrF,MAAMikC,UAAY,OACpC/yC,KAAK45C,IAAI2gD,SAASzrF,MAAMnG,KAAO3I,KAAK6D,QAAQu2F,SAAW,GAAK,KAC5Dp6F,KAAK45C,IAAI2gD,SAASzrF,MAAM+iC,MAAQ,GAChC7xC,KAAKmtF,IAAIr+E,MAAMnG,KAAO,MACtB3I,KAAKmtF,IAAIr+E,MAAM+iC,MAAQ,KAEvB7xC,KAAK45C,IAAIpP,MAAM17B,MAAM+iC,MAAQ,MAC7B7xC,KAAK45C,IAAIpP,MAAM17B,MAAMikC,UAAY,QACjC/yC,KAAK45C,IAAI2gD,SAASzrF,MAAMikC,UAAY,QACpC/yC,KAAK45C,IAAI2gD,SAASzrF,MAAM+iC,MAAQ7xC,KAAK6D,QAAQu2F,SAAW,GAAK,KAC7Dp6F,KAAK45C,IAAI2gD,SAASzrF,MAAMnG,KAAO,GAC/B3I,KAAKmtF,IAAIr+E,MAAM+iC,MAAQ,MACvB7xC,KAAKmtF,IAAIr+E,MAAMnG,KAAO,IAGgB,YAApC3I,KAAK6D,QAAQ7D,KAAKm6F,MAAMzrD,UAA8D,aAApC1uC,KAAK6D,QAAQ7D,KAAKm6F,MAAMzrD,SAC5E1uC,KAAK45C,IAAIpP,MAAM17B,MAAMjG,IAAM,EAAIxE,OAAOrE,KAAKo/C,KAAKxF,IAAIvD,OAAOvnC,MAAMjG,IAAIsD,QAAQ,KAAM,KAAO,KAC1FnM,KAAK45C,IAAIpP,MAAM17B,MAAMw/B,OAAS,OACzB,CACL,GAAIksD,GAAmBx6F,KAAKo/C,KAAKC,SAAShJ,OAAO5X,OAASz+B,KAAKo/C,KAAKC,SAAS2D,gBAAgBvkB,MAC7Fz+B,MAAK45C,IAAIpP,MAAM17B,MAAMw/B,OAAS,EAAIksD,EAAmBn2F,OAAOrE,KAAKo/C,KAAKxF,IAAIvD,OAAOvnC,MAAMjG,IAAIsD,QAAQ,KAAM,KAAO,KAChHnM,KAAK45C,IAAIpP,MAAM17B,MAAMjG,IAAM,GAGH,GAAtB7I,KAAK6D,QAAQguF,OACf7xF,KAAK45C,IAAIpP,MAAM17B,MAAM0vB,MAAQx+B,KAAK45C,IAAI2gD,SAAStgD,YAAc,GAAK,KAClEj6C,KAAK45C,IAAI2gD,SAASzrF,MAAM+iC,MAAQ,GAChC7xC,KAAK45C,IAAI2gD,SAASzrF,MAAMnG,KAAO,GAC/B3I,KAAKmtF,IAAIr+E,MAAM0vB,MAAQ,QAEvBx+B,KAAK45C,IAAIpP,MAAM17B,MAAM0vB,MAAQx+B,KAAK6D,QAAQu2F,SAAW,GAAKp6F,KAAK45C,IAAI2gD,SAAStgD,YAAc,GAAK,KAC/Fj6C,KAAKy6F,kBAIP,KAAK,GADDp8D,GAAU,GACL53B,EAAI,EAAGA,EAAI0sF,EAAW7sF,OAAQG,IAAK,CAC1C,GAAIk9C,GAAUwvC,EAAW1sF,EACW,IAAhCzG,KAAK0+C,OAAOiF,GAASzQ,SAAkE3sC,SAA9CvG,KAAK4xF,iBAAiBlwB,WAAW/d,IAAuE,GAA7C3jD,KAAK4xF,iBAAiBlwB,WAAW/d,KACvItlB,GAAWr+B,KAAK0+C,OAAOiF,GAAStlB,QAAU,UAG9Cr+B,KAAK45C,IAAI2gD,SAASzrD,UAAYzQ,EAC9Br+B,KAAK45C,IAAI2gD,SAASzrF,MAAMsrC,WAAa,IAAOp6C,KAAK6D,QAAQu2F,SAAWp6F,KAAK6D,QAAQw2F,YAAc,OAInGr3F,EAAOiQ,UAAUwnF,gBAAkB,WACjC,GAAIz6F,KAAK45C,IAAIpP,MAAMn/B,WAAY,CAC7B,GAAI8nF,GAAa/rF,OAAO6H,KAAKjP,KAAK0+C,OAClCy0C,GAAWz0E,KAAK,SAAUxY,EAAGC,GAC3B,MAAWA,GAAJD,EAAQ,GAAK,IAItBtF,EAAQo8B,cAAch9B,KAAKitF,YAE3B,IAAIp+C,GAAU9jC,OAAO6lE,iBAAiB5wE,KAAK45C,IAAIpP,OAAOkwD,WAClDxH,EAAa7uF,OAAOwqC,EAAQ1iC,QAAQ,KAAM,KAC1CyxB,EAAIs1D,EACJhB,EAAYlyF,KAAK6D,QAAQu2F,SACzBnH,EAAa,IAAOjzF,KAAK6D,QAAQu2F,SACjCn5E,EAAIiyE,EAAa,GAAMD,EAAa,CAExCjzF,MAAKmtF,IAAIr+E,MAAM0vB,MAAQ0zD,EAAY,EAAIgB,EAAa,IAEpD,KAAK,GAAIzsF,GAAI,EAAGA,EAAI0sF,EAAW7sF,OAAQG,IAAK,CAC1C,GAAIk9C,GAAUwvC,EAAW1sF,EACW,IAAhCzG,KAAK0+C,OAAOiF,GAASzQ,SAAkE3sC,SAA9CvG,KAAK4xF,iBAAiBlwB,WAAW/d,IAAuE,GAA7C3jD,KAAK4xF,iBAAiBlwB,WAAW/d,KACvI3jD,KAAK0+C,OAAOiF,GAAS+nC,UAAUwG,EAAWe,EAAYjzF,KAAKotF,UAAWxvD,EAAG3c,GACzEA,GAAKgyE,EAAajzF,KAAK6D,QAAQw2F,gBAMvCx6F,EAAOD,QAAUoD,GAIb,SAASnD,EAAQD,GAWrBwH,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAET,IAAIub,GAAS,SACT6qE,EAAU,UACV/0E,EAAS,SACT3M,EAAQ,QACRkU,EAAO,OACPvZ,EAAS,SACTw1C,EAAM,MACN71C,EAAS,SACTqnF,EAAM,MAEN5nF,GACFy8D,WACEpvD,SAAWs6E,UAASA,GACpB3rD,QAAU2rD,UAASA,EAASE,WAAY,YACxCjnD,WAAawV,IAAKA,GAClBkwC,UAAY1lF,OAAQA,EAAQ+mF,UAASA,EAASE,WAAY,aAI5DY,kBAAoB3rE,QAAS,OAAQ,UACrC4rE,cAAgB5rE,OAAQA,GACxB5B,MAAQysE,UAASA,GACjBgB,UAAYhB,UAASA,GACrBrpF,OAASqpF,UAASA,GAClBiB,aAAe9rE,OAAQA,EAAQlK,OAAQA,GACvCi2E,QACEx7E,SAAWs6E,UAASA,GACpBpsC,aAAez+B,QAAS,SAAU,MAAO,OAAQ,UACjDqjC,SAAWv/C,OAAQA,GACnB0lF,UAAYqB,UAASA,EAAS/mF,OAAQA,IAExC0K,OAASwR,QAAS,OAAQ,MAAO,WACjCgsE,UACE9tD,OAASpoB,OAAQA,GACjBo8E,UAAYp8E,OAAQA,GACpBm2E,YAAcpB,UAASA,GACvBzoB,OAASpiD,QAAS,OAAQ,SAAU,UACpCwpE,UAAY1lF,OAAQA,IAEtBooF,eACE37E,SAAWs6E,UAASA,GACpBsB,iBAAmBnsE,QAAS,cAAe,UAAW,YACtDimE,OAASnwE,OAAQA,GACjB0zE,UAAY1lF,OAAQA,EAAQ+mF,UAASA,IAEvCzrB,YACE7uD,SAAWs6E,UAASA,GACpBxrB,UAAY0rB,WAAY,YACxBptD,MAAQ7nB,OAAQA,GAChBtH,OAASwR,QAAS,SAAU,WAC5BwpE,UAAY1lF,OAAQA,EAAQ+mF,UAASA,EAASE,WAAY,aAE5DqB,UACEna,iBAAmB4Y,UAASA,GAC5B3Y,iBAAmB2Y,UAASA,GAC5B0G,OAAS1G,UAASA,GAClB3sD,OAASle,OAAQA,EAAQlK,OAAQA,GACjC88B,SAAWi4C,UAASA,GACpBgH,YAAchH,UAASA,GACvBxiF,MACEw3C,OAASv7C,KAAOwR,OAAQA,GAAUvR,KAAOuR,OAAQA,GAAU0zE,UAAY1lF,OAAQA,IAC/EiP,QAAUg4E,WAAY,YACtB3qB,OAAS7sB,MAAQvzB,OAAQA,EAAQlK,OAAQA,GAAUtH,OAASwR,OAAQA,GAAUwpE,UAAY1lF,OAAQA,IAClG0lF,UAAY1lF,OAAQA,IAEtBytC,OACEsO,OAASv7C,KAAOwR,OAAQA,GAAUvR,KAAOuR,OAAQA,GAAU0zE,UAAY1lF,OAAQA,IAC/EiP,QAAUg4E,WAAY,YACtB3qB,OAAS7sB,MAAQvzB,OAAQA,EAAQlK,OAAQA,GAAUtH,OAASwR,OAAQA,GAAUwpE,UAAY1lF,OAAQA,IAClG0lF,UAAY1lF,OAAQA,IAEtB0lF,UAAY1lF,OAAQA,IAEtBuoF,QACE97E,SAAWs6E,UAASA,GACpB0G,OAAS1G,UAASA,GAClBxiF,MACEuqC,SAAWi4C,UAASA,GACpBz8C,UAAYpuB,QAAS,YAAa,eAAgB,WAAY,gBAC9DwpE,UAAY1lF,OAAQA,IAEtBytC,OACEqB,SAAWi4C,UAASA,GACpBz8C,UAAYpuB,QAAS,YAAa,eAAgB,WAAY,gBAC9DwpE,UAAY1lF,OAAQA,IAEtB0lF,UAAY1lF,OAAQA,EAAQ+mF,UAASA,IAEvCzsC,QACEgjB,YAAc0pB,IAAKA,GACnBtB,UAAY1lF,OAAQA,IAGtBy6C,YAAcssC,UAASA,GACvBrsC,gBAAkB1oC,OAAQA,GAC1BwpD,YAAcurB,UAASA,GACvBr4C,KAAO18B,OAAQA,EAAQuH,KAAMA,EAAM2C,OAAQA,EAAQvc,OAAQA,GAC3DsP,QACEq4D,aACE5lD,aAAexF,OAAQA,EAAQ/Z,UAAa,aAC5Csf,QAAUvF,OAAQA,EAAQ/Z,UAAa,aACvCqf,QAAUtF,OAAQA,EAAQ/Z,UAAa,aACvCwe,MAAQzE,OAAQA,EAAQ/Z,UAAa,aACrC6b,SAAW9B,OAAQA,EAAQ/Z,UAAa,aACxCof,KAAOrF,OAAQA,EAAQ/Z,UAAa,aACpCkW,OAAS6D,OAAQA,EAAQ/Z,UAAa,aACtCiW,MAAQ8D,OAAQA,EAAQ/Z,UAAa,aACrCujF,UAAY1lF,OAAQA,IAEtBunE,aACE7lD,aAAexF,OAAQA,EAAQ/Z,UAAa,aAC5Csf,QAAUvF,OAAQA,EAAQ/Z,UAAa,aACvCqf,QAAUtF,OAAQA,EAAQ/Z,UAAa,aACvCwe,MAAQzE,OAAQA,EAAQ/Z,UAAa,aACrC6b,SAAW9B,OAAQA,EAAQ/Z,UAAa,aACxCof,KAAOrF,OAAQA,EAAQ/Z,UAAa,aACpCkW,OAAS6D,OAAQA,EAAQ/Z,UAAa,aACtCiW,MAAQ8D,OAAQA,EAAQ/Z,UAAa,aACrCujF,UAAY1lF,OAAQA,IAEtB0lF,UAAY1lF,OAAQA,IAEtBL,QAAUsnF,WAAY,YACtB5sD,QAAUne,OAAQA,EAAQlK,OAAQA,GAClCopC,aACE5M,OAASj1B,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC7D+uC,KAAOn1B,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC3Dq4D,QAAU97C,OAAQA,GAClBwpE,UAAY1lF,OAAQA,EAAQqF,MAAOA,IAErC6J,QAAUgN,OAAQA,GAClB5I,SACEkyE,SAAWwB,IAAKA,GAChBtB,UAAY1lF,OAAQA,IAEtBS,KAAO8Y,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC3Dk7C,WAAa7oC,OAAQA,EAAQkK,OAAQA,GACrCmyD,eAAiBr8D,OAAQA,GACzBxR,KAAO+Y,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC3Dm7C,WAAa9oC,OAAQA,EAAQkK,OAAQA,GACrC+3C,UAAY8yB,UAASA,GACrBloB,aAAekoB,UAASA,GACxBpsC,aAAez+B,OAAQA,GACvBq2D,iBAAmBwU,UAASA,GAC5B3Y,iBAAmB2Y,UAASA,GAC5B5Y,iBAAmB4Y,UAASA,GAC5Bv4C,OAASj1B,KAAMA,EAAMvH,OAAQA,EAAQkK,OAAQA,EAAQvc,OAAQA,GAC7D27C,UACE16C,OAASsb,OAAQA,EAAQ/Z,UAAa,aACtCosC,MAAQv8B,OAAQA,EAAQ7P,UAAa,aACrCujF,UAAY1lF,OAAQA,IAEtBo6B,OAASle,OAAQA,EAAQlK,OAAQA,GACjCkiD,UAAY6yB,UAASA,GACrBnwB,SAAW16C,QAAS,UAAW,SAAU,UAAW,KACpDk4C,SAAWpiD,OAAQA,GACnBmiD,SAAWniD,OAAQA,GACnBi4E,QAAUj4E,OAAQA,GAClB0zE,UAAY1lF,OAAQA,IAGlBk9C,GACF1uC,QAEE8L,MAAM,EACNytE,UAAU,EACVrqF,OAAO,EACPuqF,QACEx7E,SAAS,EACTkuC,aAAc,OAAQ,MAAO,SAAU,UAEzCjwC,OAAQ,OAAQ,MAAO,UACvBw9E,UACE9tD,OAAQ,GAAI,EAAG,IAAK,GACpBg0D,UAAW,GAAI,EAAG,IAAK,GACvBjG,YAAY,EACZ7pB,OAAQ,OAAQ,SAAU,UAE5B8pB,eACE37E,SAAS,EACT47E,iBAAkB,cAAe,UAAW,YAE9C/sB,YACE7uD,SAAS,EACTotB,MAAO,EAAG,EAAG,GAAI,GACjBnvB,OAAQ,SAAU,WAEpB49E,UACEna,iBAAiB,EACjBC,iBAAiB,EACjBqf,OAAO,EACPrzD,OAAQ,GAAI,EAAG,IAAK,GACpB0U,SAAS,EACTi/C,YAAY,EACZxpF,MAGE+3D,OAAS7sB,KAAM,GAAI/kC,MAAO,KAE5B+iC,OAGE6uB,OAAS7sB,KAAM,GAAI/kC,MAAO,MAG9B69E,QACE97E,SAAS,EACTghF,OAAO,EACPlpF,MACEuqC,SAAS,EACTxE,UAAW,YAAa,eAAgB,WAAY,gBAEtDmD,OACEqB,SAAS,EACTxE,UAAW,YAAa,eAAgB,WAAY,iBAIxDmQ,YAAY,EACZC,gBAAiB,GAAI,EAAG,IAAM,IAC9B8gB,YAAY,EACZ9sB,IAAK,GACLz/B,QACEq4D,aACE5lD,YAAa,MACbD,OAAQ,IACRD,OAAQ,QACRb,KAAM,QACN3C,QAAS,QACTuD,IAAK,IACLlJ,MAAO,MACPD,KAAM,QAERmvD,aACE7lD,YAAa,WACbD,OAAQ,eACRD,OAAQ,aACRb,KAAM,aACN3C,QAAS,YACTuD,IAAK,YACLlJ,MAAO,OACPD,KAAM,KAIViiB,OAAQ,GACRnrB,OAAQ,GACRzO,IAAK,GACLo6C,UAAW,GACXwzB,eAAgB,EAAG,EAAG,GAAI,GAC1B7tE,IAAK,GACLs6C,UAAW,GACXmZ,UAAU,EACVtZ,aAAc,OAAQ,SAAU,OAChC43B,iBAAiB,EACjBnE,iBAAiB,EACjBD,iBAAiB,EACjB3/B,MAAO,GACPpU,MAAO,OACP85B,UAAU,EACV0C,SAAU,UAAW,SAAU,UAAW,IAC1CxC,SAAU,SAAiB,GAAI,SAAiB,GAChDD,SAAU,GAAI,GAAI,SAAiB,GACnC81B,OAAQ,GAIZzuF,GAAQ4D,WAAaA,EACrB5D,EAAQ0hD,iBAAmBA,GAIvB,SAASzhD,EAAQD,EAASM,GAK9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAwFzF,QAAS3C,GAAQihC,EAAWpsB,EAAMnU,GAChC,GAAIq+C,GAAQliD,IAEZ,MAAMA,eAAgBmD,IACpB,KAAM,IAAIkhC,aAAY,mDAIxBrkC,MAAK6D,WACL7D,KAAK4+C,gBACHtrC,OAAQ,KACRoE,QAASA,EACTkoD,YAAY,GAEdj/D,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK4+C,gBAG/B5+C,KAAKo/C,MACHhb,UAAWA,EACXu2D,SACAC,eACAC,SACAC,eACAx7C,SACElgB,GAAIp/B,KAAKo/B,GAAGmgB,KAAKv/C,MACjBu/B,IAAKv/B,KAAKu/B,IAAIggB,KAAKv/C,MACnB63C,KAAM73C,KAAK63C,KAAK0H,KAAKv/C,MACrBy6C,KAAMz6C,KAAKy6C,KAAK8E,KAAKv/C,OAEvB+6F,gBACEC,MAAO,aACPr/B,QAAS,aACTs/B,YAAa,aACbC,OAAQ,aACRC,YAAa,aACbC,OAAQ,aACRC,UAAW,aACX78B,aAAc,aACd88B,QAAS,aACTC,YAAa,aACb3/B,UAAW,aACX4/B,UAAW,cAEbxjF,MACE2iF,MAAO,KACPE,MAAO,MAETY,WACEC,WAAY,aACZC,WAAY,aACZ1iC,WAAY,cAEdh5D,WACA27F,MACE52F,MAAO,EACP2jC,aAAe/K,EAAG,EAAG3c,EAAG,KAK5BjhB,KAAK67F,qBAGL77F,KAAK87F,OAAS,GAAIz4F,GAAO,WACvB,MAAO6+C,GAAM9C,KAAKE,QAAQzH,KAAK,oBAEjC73C,KAAK0+C,OAAS,GAAIq9C,GAAgB,WAClC/7F,KAAKyqC,OAAS,GAAIuxD,GAAgB,WAAWh8F,KAAKo/C,MAClDp/C,KAAKi8F,iBAAmB,GAAIC,GAA0B,WAAWl8F,KAAKo/C,KAAMp/C,KAAKyqC,QACjFzqC,KAAKm8F,mBAAqB,GAAIC,GAA4B,WAAWp8F,KAAKo/C,KAAMp/C,KAAKyqC,OAAQzqC,KAAKi8F,kBAClGj8F,KAAK47F,KAAO,GAAIS,GAAc,WAAWr8F,KAAKo/C,KAAMp/C,KAAKyqC,QACzDzqC,KAAKs8F,SAAW,GAAIC,GAAwB,WAAWv8F,KAAKo/C,KAAMp/C,KAAKyqC,QACvEzqC,KAAKk8E,QAAU,GAAIsgB,GAAuB,WAAWx8F,KAAKo/C,MAC1Dp/C,KAAKy8F,aAAe,GAAIC,GAAsB,WAAW18F,KAAKo/C,MAC9Dp/C,KAAK28F,WAAa,GAAIC,GAAoB,WAAW58F,KAAKo/C,MAC1Dp/C,KAAK68F,aAAe,GAAIC,GAA4B,WAAW98F,KAAKo/C,KAAMp/C,KAAKyqC,OAAQzqC,KAAKi8F,kBAE5Fj8F,KAAK+8F,aAAe,GAAIC,GAAsB,WAAWh9F,KAAKo/C,KAAMp/C,KAAK87F,OAAQ97F,KAAK0+C,OAAQ1+C,KAAKy8F,cACnGz8F,KAAKi9F,aAAe,GAAIC,GAAsB,WAAWl9F,KAAKo/C,KAAMp/C,KAAK87F,OAAQ97F,KAAK0+C,QAEtF1+C,KAAKo/C,KAAKn/C,QAAqB,YAAI,GAAIk9F,GAAuB,WAAWn9F,KAAKo/C,KAAM,IAAK,KACzFp/C,KAAKo/C,KAAKn/C,QAAoB,WAAID,KAAK28F,WAGvC38F,KAAKyqC,OAAO0U,UAGZn/C,KAAKg/B,WAAWn7B,GAGhB7D,KAAKyjC,QAAQzrB,GAhLf,GAAIolF,GAAiBl9F,EAAoB,IAErC67F,EAAkBllB,EAAuBumB,GAEzCC,EAAuBn9F,EAAoB,IAE3C88F,EAAwBnmB,EAAuBwmB,GAE/CC,EAAuBp9F,EAAoB,IAE3Cg9F,EAAwBrmB,EAAuBymB,GAE/CC,EAAwBr9F,EAAoB,IAE5Cs8F,EAAyB3lB,EAAuB0mB,GAEhDC,EAAqBt9F,EAAoB,IAEzC08F,EAAsB/lB,EAAuB2mB,GAE7CC,EAAyBv9F,EAAoB,KAE7Cq8F,EAA0B1lB,EAAuB4mB,GAEjDC,EAAiBx9F,EAAoB,KAErC87F,EAAkBnlB,EAAuB6mB,GAEzCC,EAAez9F,EAAoB,KAEnCm8F,EAAgBxlB,EAAuB8mB,GAEvCC,EAA6B19F,EAAoB,KAEjDk8F,EAA8BvlB,EAAuB+mB,GAErDC,EAA2B39F,EAAoB,KAE/Cg8F,EAA4BrlB,EAAuBgnB,GAEnDC,EAAuB59F,EAAoB,KAE3Cw8F,EAAwB7lB,EAAuBinB,GAE/CC,EAA6B79F,EAAoB,KAEjD48F,EAA8BjmB,EAAuBknB,GAErDC,EAAsB99F,EAAoB,IAE1C+9F,EAAuBpnB,EAAuBmnB,GAE9CE,EAAmBh+F,EAAoB,IAEvCi+F,EAAoBtnB,EAAuBqnB,GAE3CE,EAAal+F,EAAoB,KAEjCm+F,EAAwBn+F,EAAoB,KAE5Ci9F,EAAyBtmB,EAAuBwnB,EAapDn+F,GAAoB,IAEpB,IAAIgoC,GAAUhoC,EAAoB,IAE9BS,GADST,EAAoB,IACtBA,EAAoB,IAG3BoD,GAFUpD,EAAoB,GACnBA,EAAoB,IACnBA,EAAoB,MAChCqD,EAAcrD,EAAoB,KAClCmD,EAASnD,EAAoB,KAC7Bq+D,EAAYr+D,EAAoB,IAChCwX,EAAUxX,EAAoB,IAgGlCgoC,GAAQ/kC,EAAQ8P,WAMhB9P,EAAQ8P,UAAU+rB,WAAa,SAAUn7B,GACvC,GAAI61E,GAAS15E,IAEb,IAAgBuG,SAAZ1C,EAAuB,CACzB,GAAI69C,GAAay8C,EAAkB,WAAWx8C,SAAS99C,EAASu6F,EAAW56F,WACvEk+C,MAAe,GACjB/hC,QAAQw+B,IAAI,2DAA4D+/C,EAAiB78C,WAI3F,IAAIpxC,IAAU,SAAU,UAAW,aAoCnC,IAnCAtP,EAAKsG,oBAAoBgJ,EAAQjQ,KAAK6D,QAASA,GAG/CA,EAAU7D,KAAKy8F,aAAaz9D,WAAWn7B,EAAQy6F,OAAQz6F,GAEvD7D,KAAKyqC,OAAOzL,WAAWn7B,GAGvB7D,KAAK0+C,OAAO1f,WAAWn7B,EAAQ66C,QAC/B1+C,KAAK+8F,aAAa/9D,WAAWn7B,EAAQ82F,OACrC36F,KAAKi9F,aAAaj+D,WAAWn7B,EAAQg3F,OACrC76F,KAAKk8E,QAAQl9C,WAAWn7B,EAAQq4E,SAChCl8E,KAAK68F,aAAa79D,WAAWn7B,EAAQg5F,aAAch5F,EAAS7D,KAAK6D,SAEjE7D,KAAKm8F,mBAAmBn9D,WAAWn7B,EAAQ06F,aAC3Cv+F,KAAKs8F,SAASt9D,WAAWn7B,EAAQ06F,aACjCv+F,KAAKi8F,iBAAiBj9D,WAAWn7B,EAAQ06F,aAGlBh4F,SAAnB1C,EAAQ66C,QACV1+C,KAAKo/C,KAAKE,QAAQzH,KAAK,gBAMrB,aAAeh0C,KACZ7D,KAAKggE,eACRhgE,KAAKggE,aAAe,GAAIi+B,GAAqB,WAAWj+F,KAAMA,KAAKo/C,KAAKhb,UAAWg6D,EAAW98C,iBAAkBthD,KAAKyqC,OAAOutC,aAG9Hh4E,KAAKggE,aAAahhC,WAAWn7B,EAAQo8D,YAInCjgE,KAAKggE,cAAgBhgE,KAAKggE,aAAan8D,QAAQgN,WAAY,EAAM,CACnE,GAAI2tF,IAAmB7D,SAAWE,SAAWyD,UAAYC,eAAiB1B,gBAAkB3gB,WAAatpE,UACzGjS,GAAK0G,WAAWm3F,EAAe7D,MAAO36F,KAAK+8F,aAAal5F,SACxDlD,EAAK0G,WAAWm3F,EAAe3D,MAAO76F,KAAKi9F,aAAap5F,SACxDlD,EAAK0G,WAAWm3F,EAAeF,OAAQt+F,KAAKy8F,aAAa54F,SAEzDlD,EAAK0G,WAAWm3F,EAAeD,YAAav+F,KAAKi8F,iBAAiBp4F,SAClElD,EAAK0G,WAAWm3F,EAAeD,YAAav+F,KAAKs8F,SAASz4F,SAE1DlD,EAAK0G,WAAWm3F,EAAeD,YAAav+F,KAAKm8F,mBAAmBt4F,SACpElD,EAAK0G,WAAWm3F,EAAe3B,aAAc78F,KAAK68F,aAAah5F,SAC/DlD,EAAK0G,WAAWm3F,EAAetiB,QAASl8E,KAAKk8E,QAAQr4E,SAGrDlD,EAAK0G,WAAWm3F,EAAe5rF,OAAQ5S,KAAKyqC,OAAO5mC,SACnDlD,EAAK0G,WAAWm3F,EAAe5rF,OAAQ5S,KAAK6D,SAE5C7D,KAAKggE,aAAaG,iBAAiBq+B,GAIVj4F,SAAvB1C,EAAQ+7D,WACN/7D,EAAQ+7D,cAAe,EACFr5D,SAAnBvG,KAAK6/D,YACP7/D,KAAK6/D,UAAY,GAAItB,GAAUv+D,KAAKyqC,OAAOD,OAC3CxqC,KAAK6/D,UAAUzgC,GAAG,SAAU,WAC1Bs6C,EAAOt6B,KAAKE,QAAQzH,KAAK,gBAINtxC,SAAnBvG,KAAK6/D,YACP7/D,KAAK6/D,UAAU1gC,gBACRn/B,MAAK6/D,WAEd7/D,KAAKo/C,KAAKE,QAAQzH,KAAK,aAGzB73C,KAAKo/C,KAAKE,QAAQzH,KAAK,YAGzB73C,KAAKyqC,OAAO+E,UAEZxvC,KAAKo/C,KAAKE,QAAQzH,KAAK,qBAQ3B10C,EAAQ8P,UAAUwrF,sBAAwB,WACxC,GAAI9D,GAAQ36F,KAAKo/C,KAAKu7C,MAClBE,EAAQ76F,KAAKo/C,KAAKy7C,KACtB76F,MAAKo/C,KAAKw7C,eACV56F,KAAKo/C,KAAK07C,cAEV,KAAK,GAAI4D,KAAU/D,GACbA,EAAM30F,eAAe04F,IACnB/D,EAAM+D,GAAQ76F,QAAQm5D,UAAW,GACnCh9D,KAAKo/C,KAAKw7C,YAAYpzF,KAAKmzF,EAAM+D,GAAQr+F,GAK/C,KAAK,GAAIs+F,KAAU9D,GACbA,EAAM70F,eAAe24F,IACnB9D,EAAM8D,GAAQ96F,QAAQm5D,UAAW,GACnCh9D,KAAKo/C,KAAK07C,YAAYtzF,KAAKqzF,EAAM8D,GAAQt+F,KASjD8C,EAAQ8P,UAAU4oF,mBAAqB,WACrC,GAAIrhB,GAASx6E,IAGbA,MAAKo/C,KAAKE,QAAQlgB,GAAG,eAAgB,WAEnCo7C,EAAOikB,wBACPjkB,EAAOp7B,KAAKE,QAAQzH,KAAK,kBAEzB2iC,EAAOp7B,KAAKE,QAAQzH,KAAK,kBAI3B73C,KAAKo/C,KAAKE,QAAQlgB,GAAG,eAAgB,WAEnCo7C,EAAOokB,kBAAkBpkB,EAAOp7B,KAAKu7C,OACrCngB,EAAOokB,kBAAkBpkB,EAAOp7B,KAAKy7C,OAErCrgB,EAAOp7B,KAAKE,QAAQzH,KAAK,mBACzB2iC,EAAOp7B,KAAKE,QAAQzH,KAAK,qBAc7B10C,EAAQ8P,UAAUwwB,QAAU,SAAUzrB,GAQpC,GANAhY,KAAKo/C,KAAKE,QAAQzH,KAAK,gBACvB73C,KAAKo/C,KAAKE,QAAQzH,KAAK,cAGvB73C,KAAKi8F,iBAAiB4C,cAElB7mF,GAAQA,EAAK2hC,MAAQ3hC,EAAK2iF,OAAS3iF,EAAK6iF,OAC1C,KAAM,IAAIx2D,aAAY,iGAMxB,IAFArkC,KAAKg/B,WAAWhnB,GAAQA,EAAKnU,SAEzBmU,GAAQA,EAAK2hC,IAAK,CACpBh6B,QAAQw+B,IAAI,4PAEZ,IAAI2gD,GAAUx7F,EAAUK,WAAWqU,EAAK2hC,IAExC,YADA35C,MAAKyjC,QAAQq7D,GAER,GAAI9mF,GAAQA,EAAK+mF,MAAO,CAE7Bp/E,QAAQw+B,IAAI,oQACZ,IAAI6gD,GAAYz7F,EAAYO,WAAWkU,EAAK+mF,MAE5C,YADA/+F,MAAKyjC,QAAQu7D,GAGbh/F,KAAK+8F,aAAat5D,QAAQzrB,GAAQA,EAAK2iF,OAAO,GAC9C36F,KAAKi9F,aAAax5D,QAAQzrB,GAAQA,EAAK6iF,OAAO,GAIhD76F,KAAKo/C,KAAKE,QAAQzH,KAAK,gBAGvB73C,KAAKo/C,KAAKE,QAAQzH,KAAK,eAGvB73C,KAAKo/C,KAAKE,QAAQzH,KAAK,gBASzB10C,EAAQ8P,UAAUksB,QAAU,WAC1Bn/B,KAAKo/C,KAAKE,QAAQzH,KAAK,WAEvB73C,KAAKo/C,KAAKE,QAAQ/f,MAClBv/B,KAAKu/B,YAGEv/B,MAAK0+C,aACL1+C,MAAKyqC,aACLzqC,MAAKi8F,uBACLj8F,MAAKm8F,yBACLn8F,MAAK47F,WACL57F,MAAKs8F,eACLt8F,MAAKk8E,cACLl8E,MAAKy8F,mBACLz8F,MAAK28F,iBACL38F,MAAK68F,mBACL78F,MAAK+8F,mBACL/8F,MAAKi9F,mBACLj9F,MAAKggE,mBACLhgE,MAAK87F,MAEZ,KAAK,GAAI4C,KAAU1+F,MAAKo/C,KAAKu7C,YACpB36F,MAAKo/C,KAAKu7C,MAAM+D,EAEzB,KAAK,GAAIC,KAAU3+F,MAAKo/C,KAAKy7C,YACpB76F,MAAKo/C,KAAKy7C,MAAM8D,EAIzBh+F,GAAK2D,mBAAmBtE,KAAKo/C,KAAKhb,YAWpCjhC,EAAQ8P,UAAU2rF,kBAAoB,SAAU94F,GAC9C,GAAIzF,GAGA6mC,EAAW3gC,OACX4gC,EAAW5gC,OACX04F,EAAa,CACjB,KAAK5+F,IAAMyF,GACT,GAAIA,EAAIE,eAAe3F,GAAK,CAC1B,GAAI0E,GAAQe,EAAIzF,GAAI47C,UACN11C,UAAVxB,IACFmiC,EAAwB3gC,SAAb2gC,EAAyBniC,EAAQE,KAAKL,IAAIG,EAAOmiC,GAC5DC,EAAwB5gC,SAAb4gC,EAAyBpiC,EAAQE,KAAKJ,IAAIE,EAAOoiC,GAC5D83D,GAAcl6F,GAMpB,GAAiBwB,SAAb2gC,GAAuC3gC,SAAb4gC,EAC5B,IAAK9mC,IAAMyF,GACLA,EAAIE,eAAe3F,IACrByF,EAAIzF,GAAI6+F,cAAch4D,EAAUC,EAAU83D,IAUlD97F,EAAQ8P,UAAUwrD,SAAW,WAC3B,OAAQz+D,KAAK6/D,WAAa7/D,KAAK6/D,UAAUQ,QAG3Cl9D,EAAQ8P,UAAUu8B,QAAU,WAC1B,MAAOxvC,MAAKyqC,OAAO+E,QAAQz8B,MAAM/S,KAAKyqC,OAAQpkC,YAEhDlD,EAAQ8P,UAAUksF,YAAc,WAC9B,MAAOn/F,MAAKyqC,OAAO00D,YAAYpsF,MAAM/S,KAAKyqC,OAAQpkC,YAEpDlD,EAAQ8P,UAAUmsF,YAAc,WAC9B,MAAOp/F,MAAKyqC,OAAO20D,YAAYrsF,MAAM/S,KAAKyqC,OAAQpkC,YAEpDlD,EAAQ8P,UAAUosF,SAAW,WAC3B,MAAOr/F,MAAK28F,WAAW0C,SAAStsF,MAAM/S,KAAK28F,WAAYt2F,YAEzDlD,EAAQ8P,UAAUqsF,UAAY,WAC5B,MAAOt/F,MAAK28F,WAAW2C,UAAUvsF,MAAM/S,KAAK28F,WAAYt2F,YAE1DlD,EAAQ8P,UAAUssF,YAAc,WAC9B,MAAOv/F,MAAK28F,WAAW4C,YAAYxsF,MAAM/S,KAAK28F,WAAYt2F,YAE5DlD,EAAQ8P,UAAUusF,QAAU,WAC1B,MAAOx/F,MAAK28F,WAAW6C,QAAQzsF,MAAM/S,KAAK28F,WAAYt2F,YAExDlD,EAAQ8P,UAAUwsF,kBAAoB,WACpC,MAAOz/F,MAAK28F,WAAW8C,kBAAkB1sF,MAAM/S,KAAK28F,WAAYt2F,YAElElD,EAAQ8P,UAAUysF,oBAAsB,WACtC,MAAO1/F,MAAK28F,WAAW+C,oBAAoB3sF,MAAM/S,KAAK28F,WAAYt2F,YAEpElD,EAAQ8P,UAAU0sF,iBAAmB,WACnC,MAAO3/F,MAAK28F,WAAWgD,iBAAiB5sF,MAAM/S,KAAK28F,WAAYt2F,YAEjElD,EAAQ8P,UAAU2sF,gBAAkB,WAClC,MAAO5/F,MAAK28F,WAAWiD,gBAAgB7sF,MAAM/S,KAAK28F,WAAYt2F,YAEhElD,EAAQ8P,UAAU4sF,QAAU,WAC1B,MAAO7/F,MAAKy8F,aAAaoD,QAAQ9sF,MAAM/S,KAAKy8F,aAAcp2F,YAE5DlD,EAAQ8P,UAAU6sF,eAAiB,WACjC,MAAO9/F,MAAK68F,aAAaiD,eAAe/sF,MAAM/S,KAAK68F,aAAcx2F,YAEnElD,EAAQ8P,UAAU8sF,gBAAkB,WAClC,MAAO//F,MAAK68F,aAAakD,gBAAgBhtF,MAAM/S,KAAK68F,aAAcx2F,YAEpElD,EAAQ8P,UAAU+sF,YAAc,WAC9B,MAAOhgG,MAAK68F,aAAamD,YAAYjtF,MAAM/S,KAAK68F,aAAcx2F,YAEhElD,EAAQ8P,UAAUgtF,SAAW,WAC3B,MAAOjgG,MAAK68F,aAAaoD,SAASltF,MAAM/S,KAAK68F,aAAcx2F,YAE7DlD,EAAQ8P,UAAUitF,aAAe,WACyC,MAAxEvgF,SAAQw+B,IAAI,4DAAmEn+C,KAAK68F,aAAaoD,SAASltF,MAAM/S,KAAK68F,aAAcx2F,YAErIlD,EAAQ8P,UAAUktF,YAAc,WAC9B,MAAOngG,MAAK68F,aAAasD,YAAYptF,MAAM/S,KAAK68F,aAAcx2F,YAEhElD,EAAQ8P,UAAUmtF,aAAe,WAC/B,MAAOpgG,MAAK68F,aAAauD,aAAartF,MAAM/S,KAAK68F,aAAcx2F,YAEjElD,EAAQ8P,UAAUotF,eAAiB,WACjC,MAAOrgG,MAAK68F,aAAawD,eAAettF,MAAM/S,KAAK68F,aAAcx2F,YAEnElD,EAAQ8P,UAAUqtF,aAAe,WAC/B,MAAOtgG,MAAK+8F,aAAauD,aAAavtF,MAAM/S,KAAK+8F,aAAc12F,YAEjElD,EAAQ8P,UAAUstF,eAAiB,WACjC,MAAOvgG,MAAK+8F,aAAawD,eAAextF,MAAM/S,KAAK+8F,aAAc12F,YAEnElD,EAAQ8P,UAAUutF,SAAW,WAC3B,MAAOxgG,MAAK+8F,aAAayD,SAASztF,MAAM/S,KAAK+8F,aAAc12F,YAE7DlD,EAAQ8P,UAAUwtF,eAAiB,WACjC,MAAOzgG,MAAK+8F,aAAa0D,eAAe1tF,MAAM/S,KAAK+8F,aAAc12F,YAEnElD,EAAQ8P,UAAUytF,kBAAoB,SAAUC,GAC9C,MAAkCp6F,UAA9BvG,KAAKo/C,KAAKu7C,MAAMgG,GACX3gG,KAAK+8F,aAAa2D,kBAAkB3tF,MAAM/S,KAAK+8F,aAAc12F,WAE7DrG,KAAKi9F,aAAayD,kBAAkB3tF,MAAM/S,KAAKi9F,aAAc52F,YAGxElD,EAAQ8P,UAAU2tF,kBAAoB,WACpC,MAAO5gG,MAAK+8F,aAAa6D,kBAAkB7tF,MAAM/S,KAAK+8F,aAAc12F,YAEtElD,EAAQ8P,UAAU4tF,gBAAkB,WAClC,MAAO7gG,MAAKk8E,QAAQ2kB,gBAAgB9tF,MAAM/S,KAAKk8E,QAAS71E,YAE1DlD,EAAQ8P,UAAU6tF,eAAiB,WACjC,MAAO9gG,MAAKk8E,QAAQ4kB,eAAe/tF,MAAM/S,KAAKk8E,QAAS71E,YAEzDlD,EAAQ8P,UAAU8tF,UAAY,WAC5B,MAAO/gG,MAAKk8E,QAAQ6kB,UAAUhuF,MAAM/S,KAAKk8E,QAAS71E,YAEpDlD,EAAQ8P,UAAU4uC,aAAe,WAC/B,MAAO7hD,MAAKi8F,iBAAiBp6C,aAAa9uC,MAAM/S,KAAKi8F,iBAAkB51F,YAEzElD,EAAQ8P,UAAU6uC,aAAe,WAC/B,MAAO9hD,MAAKi8F,iBAAiBn6C,aAAa/uC,MAAM/S,KAAKi8F,iBAAkB51F,YAEzElD,EAAQ8P,UAAU+tF,iBAAmB,WACnC,MAAOhhG,MAAKi8F,iBAAiB+E,iBAAiBjuF,MAAM/S,KAAKi8F,iBAAkB51F,YAE7ElD,EAAQ8P,UAAUguF,iBAAmB,WACnC,MAAOjhG,MAAKi8F,iBAAiBgF,iBAAiBluF,MAAM/S,KAAKi8F,iBAAkB51F,YAE7ElD,EAAQ8P,UAAUiuF,UAAY,WAC5B,GAAItlE,GAAO57B,KAAKi8F,iBAAiBiF,UAAUnuF,MAAM/S,KAAKi8F,iBAAkB51F,UACxE,OAAaE,UAATq1B,GAAkCr1B,SAAZq1B,EAAKv7B,GACtBu7B,EAAKv7B,GAEPu7B,GAETz4B,EAAQ8P,UAAUkuF,UAAY,WAC5B,GAAIC,GAAOphG,KAAKi8F,iBAAiBkF,UAAUpuF,MAAM/S,KAAKi8F,iBAAkB51F,UACxE,OAAaE,UAAT66F,GAAkC76F,SAAZ66F,EAAK/gG,GACtB+gG,EAAK/gG,GAEP+gG,GAETj+F,EAAQ8P,UAAUouF,YAAc,WAC9B,MAAOrhG,MAAKi8F,iBAAiBoF,YAAYtuF,MAAM/S,KAAKi8F,iBAAkB51F,YAExElD,EAAQ8P,UAAUquF,YAAc,WAC9B,MAAOthG,MAAKi8F,iBAAiBqF,YAAYvuF,MAAM/S,KAAKi8F,iBAAkB51F,YAExElD,EAAQ8P,UAAU4rF,YAAc,WAC9B7+F,KAAKi8F,iBAAiB4C,YAAY9rF,MAAM/S,KAAKi8F,iBAAkB51F,WAC/DrG,KAAK0sC,UAEPvpC,EAAQ8P,UAAUy5B,OAAS,WACzB,MAAO1sC,MAAKs8F,SAAS5vD,OAAO35B,MAAM/S,KAAKs8F,SAAUj2F,YAEnDlD,EAAQ8P,UAAUwsC,SAAW,WAC3B,MAAOz/C,MAAK47F,KAAKn8C,SAAS1sC,MAAM/S,KAAK47F,KAAMv1F,YAE7ClD,EAAQ8P,UAAUsuF,gBAAkB,WAClC,MAAOvhG,MAAK47F,KAAK2F,gBAAgBxuF,MAAM/S,KAAK47F,KAAMv1F,YAEpDlD,EAAQ8P,UAAU8tC,IAAM,WACtB,MAAO/gD,MAAK47F,KAAK76C,IAAIhuC,MAAM/S,KAAK47F,KAAMv1F,YAExClD,EAAQ8P,UAAUo/B,OAAS,WACzB,MAAOryC,MAAK47F,KAAKvpD,OAAOt/B,MAAM/S,KAAK47F,KAAMv1F,YAE3ClD,EAAQ8P,UAAU+uC,MAAQ,WACxB,MAAOhiD,MAAK47F,KAAK55C,MAAMjvC,MAAM/S,KAAK47F,KAAMv1F,YAE1ClD,EAAQ8P,UAAUuuF,YAAc,WAC9B,MAAOxhG,MAAK47F,KAAK4F,YAAYzuF,MAAM/S,KAAK47F,KAAMv1F,YAEhDlD,EAAQ8P,UAAUwuF,2BAA6B,WAC7C,GAAI59F,KAIJ,OAHI7D,MAAKggE,eACPn8D,EAAU7D,KAAKggE,aAAa4c,WAAW7pE,MAAM/S,KAAKggE,eAE7Cn8D,GAGThE,EAAOD,QAAUuD,GAIb,SAAStD,EAAQD,EAASM,GAU9B,QAAS82E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBv2E,EAAOT,EAAoB,GAO3BwhG,EAAS,WACX,QAASA,KACP1qB,EAAgBh3E,KAAM0hG,GAEtB1hG,KAAK+hC,QACL/hC,KAAK2hG,aAAe,EACpB3hG,KAAK4hG,eACL5hG,KAAK4oE,WAAa,EAElB5oE,KAAK6hG,gBAAmB3zF,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aACjKC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ;AAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAE3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAE3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAC3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAE3IC,OAAQ,UAAWD,WAAY,UAAWE,WAAaD,OAAQ,UAAWD,WAAY,WAAaG,OAASF,OAAQ,UAAWD,WAAY,aAG7IjO,KAAK6D,WACL7D,KAAK4+C,gBACHkjD,kBAAkB,GAEpBnhG,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK4+C,gBA6EjC,MA1EAw4B,GAAasqB,IACX/3F,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAIk+F,IAAgB,mBAEpB,IAAgBx7F,SAAZ1C,EACF,IAAK,GAAIm+F,KAAan+F,GACpB,GAAIA,EAAQmC,eAAeg8F,IACe,KAApCD,EAAax6F,QAAQy6F,GAAmB,CAC1C,GAAI9+C,GAAQr/C,EAAQm+F,EACpBhiG,MAAKimB,IAAI+7E,EAAW9+C,OAW9Bv5C,IAAK,QACL5E,MAAO,WACL/E,KAAK0+C,UACL1+C,KAAK4hG,kBAUPj4F,IAAK,MACL5E,MAAO,SAAak9F,GAClB,GAAI/+C,GAAQljD,KAAK0+C,OAAOujD,EACxB,IAAc17F,SAAV28C,EACF,GAAIljD,KAAK6D,QAAQi+F,oBAAqB,GAAS9hG,KAAK4hG,YAAYt7F,OAAS,EAAG,CAE1E,GAAI8C,GAAQpJ,KAAK4oE,WAAa5oE,KAAK4hG,YAAYt7F,MAC/CtG,MAAK4oE,aACL1lB,KACAA,EAAMz2C,MAAQzM,KAAK0+C,OAAO1+C,KAAK4hG,YAAYx4F,IAC3CpJ,KAAK0+C,OAAOujD,GAAa/+C,MACpB,CAEL,GAAI95C,GAAQpJ,KAAK2hG,aAAe3hG,KAAK6hG,cAAcv7F,MACnDtG,MAAK2hG,eACLz+C,KACAA,EAAMz2C,MAAQzM,KAAK6hG,cAAcz4F,GACjCpJ,KAAK0+C,OAAOujD,GAAa/+C,EAI7B,MAAOA,MAWTv5C,IAAK,MACL5E,MAAO,SAAai9F,EAAWlzF,GAG7B,MAFA9O,MAAK0+C,OAAOsjD,GAAalzF,EACzB9O,KAAK4hG,YAAYp6F,KAAKw6F,GACflzF,MAIJ4yF,IAGT9hG,GAAQ,WAAa8hG,EACrB7hG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCARhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hBgrB,EAAkBhiG,EAAoB,IAEtCiiG,EAAmBtrB,EAAuBqrB,GAE1CE,EAAyBliG,EAAoB,IAE7CmiG,EAA0BxrB,EAAuBurB,GAEjDzhG,EAAOT,EAAoB,GAC3BW,EAAUX,EAAoB,GAC9BY,EAAWZ,EAAoB,IAE/BoiG,EAAe,WACjB,QAASA,GAAaljD,EAAM08C,EAAQp9C,EAAQ+9C,GAC1C,GAAIv6C,GAAQliD,IAEZg3E,GAAgBh3E,KAAMsiG,GAEtBtiG,KAAKo/C,KAAOA,EACZp/C,KAAK87F,OAASA,EACd97F,KAAK0+C,OAASA,EACd1+C,KAAKy8F,aAAeA,EAGpBz8F,KAAKo/C,KAAKq8C,UAAUC,WAAa17F,KAAKoQ,OAAOmvC,KAAKv/C,MAElDA,KAAKuiG,gBACHt8E,IAAK,SAAanb,EAAO60B,GACvBuiB,EAAMj8B,IAAI0Z,EAAO19B,QAEnBi+B,OAAQ,SAAgBp1B,EAAO60B,GAC7BuiB,EAAMhiB,OAAOP,EAAO19B,MAAO09B,EAAO3nB,OAEpC2pB,OAAQ,SAAgB72B,EAAO60B,GAC7BuiB,EAAMvgB,OAAOhC,EAAO19B,SAIxBjC,KAAK6D,WACL7D,KAAK4+C,gBACH7T,YAAa,EACby3D,oBAAqB,EACrBC,YAAal8F,OACbkG,OACEyB,OAAQ,UACRD,WAAY,UACZE,WACED,OAAQ,UACRD,WAAY,WAEdG,OACEF,OAAQ,UACRD,WAAY,YAGhBy0F,OACE9kE,GAAG,EACH3c,GAAG,GAEL8wB,MACEtlC,MAAO,UACPwxB,KAAM,GACN0kE,KAAM,QACN10F,WAAY,OACZ05B,YAAa,EACbi7D,YAAa,UACblgC,MAAO,cAETxf,MAAO38C,OACPy2D,QAAQ,EACR65B,MACE8L,KAAM,cACN9qF,KAAMtR,OACN03B,KAAM,GACNxxB,MAAO,WAETo2F,MAAOt8F,OACP23B,MAAO33B,OACPu8F,oBAAoB,EACpBC,MAAOx8F,OACPy8F,KAAM,EACN9mB,SAAS,EACT+mB,SACEr+F,IAAK,GACLC,IAAK,GACLq5B,OACErtB,SAAS,EACTjM,IAAK,GACLC,IAAK,GACLq+F,WAAY,GACZC,cAAe,GAEjBC,sBAAuB,SAA+Bx+F,EAAKC,EAAKC,EAAOC,GACrE,GAAIF,IAAQD,EACV,MAAO,EAEP,IAAII,GAAQ,GAAKH,EAAMD,EACvB,OAAOK,MAAKJ,IAAI,GAAIE,EAAQH,GAAOI,KAIzCq+F,QACExyF,SAAS,EACTpE,MAAO,kBACPwxB,KAAM,GACNL,EAAG,EACH3c,EAAG,GAELqiF,MAAO,UACPC,iBACEC,cAAc,EACd3pD,aAAc,EACd4pD,cAAc,EACdC,oBAAoB,GAEtBzlE,KAAM,GACNyiC,MAAOn6D,OACPxB,MAAOwB,OACPq3B,EAAGr3B,OACH0a,EAAG1a,QAEL5F,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK4+C,gBAE/B5+C,KAAK67F,qBAiXP,MA9WAzkB,GAAakrB,IACX34F,IAAK,qBACL5E,MAAO,WACL,GAAI20E,GAAS15E,IAGbA,MAAKo/C,KAAKE,QAAQlgB,GAAG,eAAgBp/B,KAAK0jC,QAAQ6b,KAAKv/C,OACvDA,KAAKo/C,KAAKE,QAAQlgB,GAAG,UAAWp/B,KAAK0jC,QAAQ6b,KAAKv/C,OAClDA,KAAKo/C,KAAKE,QAAQlgB,GAAG,UAAW,WAC9Bz+B,EAAK2I,QAAQowE,EAAO6oB,eAAgB,SAAUh5F,EAAUuB,GAClD4uE,EAAOt6B,KAAKpnC,KAAK2iF,OAAOjhB,EAAOt6B,KAAKpnC,KAAK2iF,MAAMp7D,IAAIz0B,EAAOvB,WAEzDmwE,GAAOt6B,KAAKq8C,UAAUC,iBACtBhiB,GAAO6oB,eAAet8E,UACtByzD,GAAO6oB,eAAeriE,aACtBw5C,GAAO6oB,eAAe5gE,aACtB+3C,GAAO6oB,oBAIlB54F,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAgB0C,SAAZ1C,EAAuB,CAIzB,GAHAs+F,EAAiB,WAAWwB,aAAa3jG,KAAK6D,QAASA,GAGjC0C,SAAlB1C,EAAQy/F,MACV,IAAK,GAAI5E,KAAU1+F,MAAKo/C,KAAKu7C,MACvB36F,KAAKo/C,KAAKu7C,MAAM30F,eAAe04F,IACjC1+F,KAAKo/C,KAAKu7C,MAAM+D,GAAQkF,aAM9B,IAAqBr9F,SAAjB1C,EAAQkuC,KAAoB,CAC9BswD,EAAwB,WAAWsB,aAAa3jG,KAAK6D,QAAQkuC,KAAMluC,EACnE,KAAK,GAAI66F,KAAU1+F,MAAKo/C,KAAKu7C,MACvB36F,KAAKo/C,KAAKu7C,MAAM30F,eAAe04F,KACjC1+F,KAAKo/C,KAAKu7C,MAAM+D,GAAQmF,oBACxB7jG,KAAKo/C,KAAKu7C,MAAM+D,GAAQoF,UAM9B,GAAqBv9F,SAAjB1C,EAAQo6B,KACV,IAAK,GAAIygE,KAAU1+F,MAAKo/C,KAAKu7C,MACvB36F,KAAKo/C,KAAKu7C,MAAM30F,eAAe04F,IACjC1+F,KAAKo/C,KAAKu7C,MAAM+D,GAAQoF,UAMPv9F,SAAnB1C,EAAQm5D,QAA4Cz2D,SAApB1C,EAAQq4E,UAC1Cl8E,KAAKo/C,KAAKE,QAAQzH,KAAK,oBAW7BluC,IAAK,UACL5E,MAAO,SAAiB41F,GACtB,GAAIngB,GAASx6E,KAET+jG,EAAY19F,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpF29F,EAAehkG,KAAKo/C,KAAKpnC,KAAK2iF,KAElC,IAAIA,YAAiB95F,IAAW85F,YAAiB75F,GAC/Cd,KAAKo/C,KAAKpnC,KAAK2iF,MAAQA,MAClB,IAAI7zF,MAAMC,QAAQ4zF,GACvB36F,KAAKo/C,KAAKpnC,KAAK2iF,MAAQ,GAAI95F,GAC3Bb,KAAKo/C,KAAKpnC,KAAK2iF,MAAM10E,IAAI00E,OACpB,CAAA,GAAKA,EAGV,KAAM,IAAIzzF,WAAU,4BAFpBlH,MAAKo/C,KAAKpnC,KAAK2iF,MAAQ,GAAI95F,GAKzBmjG,GAEFrjG,EAAK2I,QAAQtJ,KAAKuiG,eAAgB,SAAUh5F,EAAUuB,GACpDk5F,EAAazkE,IAAIz0B,EAAOvB,KAK5BvJ,KAAKo/C,KAAKu7C,SAEN36F,KAAKo/C,KAAKpnC,KAAK2iF,QACjB,WAEE,GAAI36D,GAAKw6C,CACT75E,GAAK2I,QAAQkxE,EAAO+nB,eAAgB,SAAUh5F,EAAUuB,GACtDk1B,EAAGof,KAAKpnC,KAAK2iF,MAAMv7D,GAAGt0B,EAAOvB,IAI/B,IAAIk3B,GAAM+5C,EAAOp7B,KAAKpnC,KAAK2iF,MAAMv5D,QACjCo5C,GAAOv0D,IAAIwa,GAAK,MAIhBsjE,KAAc,GAChB/jG,KAAKo/C,KAAKE,QAAQzH,KAAK,mBAU3BluC,IAAK,MACL5E,MAAO,SAAa07B,GAKlB,IAAK,GAJDsjE,GAAY19F,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpFhG,EAAKkG,OACL09F,KACKx9F,EAAI,EAAGA,EAAIg6B,EAAIn6B,OAAQG,IAAK,CACnCpG,EAAKogC,EAAIh6B,EACT,IAAI2/C,GAAapmD,KAAKo/C,KAAKpnC,KAAK2iF,MAAM3jE,IAAI32B,GACtCu7B,EAAO57B,KAAKoQ,OAAOg2C,EACvB69C,GAASz8F,KAAKo0B,GACd57B,KAAKo/C,KAAKu7C,MAAMt6F,GAAMu7B,EAGxB57B,KAAKy8F,aAAayH,kBAAkBD,GAEhCF,KAAc,GAChB/jG,KAAKo/C,KAAKE,QAAQzH,KAAK,mBAU3BluC,IAAK,SACL5E,MAAO,SAAgB07B,EAAK0jE,GAG1B,IAAK,GAFDxJ,GAAQ36F,KAAKo/C,KAAKu7C,MAClByJ,GAAc,EACT39F,EAAI,EAAGA,EAAIg6B,EAAIn6B,OAAQG,IAAK,CACnC,GAAIpG,GAAKogC,EAAIh6B,GACTm1B,EAAO++D,EAAMt6F,GACb2X,EAAOmsF,EAAY19F,EACVF,UAATq1B,EAEFwoE,EAAcxoE,EAAKoD,WAAWhnB,IAE9BosF,GAAc,EAEdxoE,EAAO57B,KAAKoQ,OAAO4H,GACnB2iF,EAAMt6F,GAAMu7B,GAGZwoE,KAAgB,EAClBpkG,KAAKo/C,KAAKE,QAAQzH,KAAK,gBAEvB73C,KAAKo/C,KAAKE,QAAQzH,KAAK,mBAU3BluC,IAAK,SACL5E,MAAO,SAAgB07B,GAGrB,IAAK,GAFDk6D,GAAQ36F,KAAKo/C,KAAKu7C,MAEbl0F,EAAI,EAAGA,EAAIg6B,EAAIn6B,OAAQG,IAAK,CACnC,GAAIpG,GAAKogC,EAAIh6B,SACNk0F,GAAMt6F,GAGfL,KAAKo/C,KAAKE,QAAQzH,KAAK,mBASzBluC,IAAK,SACL5E,MAAO,SAAgBqhD,GACrB,GAAIi+C,GAAmBh+F,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB87F,EAAiB,WAAa97F,UAAU,EAErH,OAAO,IAAIg+F,GAAiBj+C,EAAYpmD,KAAKo/C,KAAMp/C,KAAK87F,OAAQ97F,KAAK0+C,OAAQ1+C,KAAK6D,YAGpF8F,IAAK,UACL5E,MAAO,WACL,GAAIu/F,GAAiBj+F,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEzFs0F,EAAQ36F,KAAKo/C,KAAKu7C,KACtB,KAAK,GAAI+D,KAAU/D,GAAO,CACxB,GAAI/+D,GAAOr1B,MACPo0F,GAAM30F,eAAe04F,KACvB9iE,EAAO++D,EAAM+D,GAEf,IAAI1mF,GAAOhY,KAAKo/C,KAAKpnC,KAAK2iF,MAAMtzE,MAAMq3E,EACzBn4F,UAATq1B,GAA+Br1B,SAATyR,IACpBssF,KAAmB,GACrB1oE,EAAKoD,YAAapB,EAAG,KAAM3c,EAAG,OAEhC2a,EAAKoD,YAAa0jE,OAAO,IACzB9mE,EAAKoD,WAAWhnB,QAWtBrO,IAAK,eACL5E,MAAO,SAAsB07B,GAC3B,GAAI8jE,KACJ,IAAYh+F,SAARk6B,GACF,GAAI35B,MAAMC,QAAQ05B,MAAS,GACzB,IAAK,GAAIh6B,GAAI,EAAGA,EAAIg6B,EAAIn6B,OAAQG,IAC9B,GAAgCF,SAA5BvG,KAAKo/C,KAAKu7C,MAAMl6D,EAAIh6B,IAAmB,CACzC,GAAIm1B,GAAO57B,KAAKo/C,KAAKu7C,MAAMl6D,EAAIh6B,GAC/B89F,GAAU9jE,EAAIh6B,KAAQm3B,EAAG34B,KAAKsjB,MAAMqT,EAAKgC,GAAI3c,EAAGhc,KAAKsjB,MAAMqT,EAAK3a,SAIpE,IAA6B1a,SAAzBvG,KAAKo/C,KAAKu7C,MAAMl6D,GAAoB,CACtC,GAAI7E,GAAO57B,KAAKo/C,KAAKu7C,MAAMl6D,EAC3B8jE,GAAU9jE,IAAS7C,EAAG34B,KAAKsjB,MAAMqT,EAAKgC,GAAI3c,EAAGhc,KAAKsjB,MAAMqT,EAAK3a,SAIjE,KAAK,GAAIxa,GAAI,EAAGA,EAAIzG,KAAKo/C,KAAKw7C,YAAYt0F,OAAQG,IAAK,CACrD,GAAIm1B,GAAO57B,KAAKo/C,KAAKu7C,MAAM36F,KAAKo/C,KAAKw7C,YAAYn0F,GACjD89F,GAAUvkG,KAAKo/C,KAAKw7C,YAAYn0F,KAAQm3B,EAAG34B,KAAKsjB,MAAMqT,EAAKgC,GAAI3c,EAAGhc,KAAKsjB,MAAMqT,EAAK3a,IAGtF,MAAOsjF,MAOT56F,IAAK,iBACL5E,MAAO,WAEL,GAAIw/F,MACAxhD,EAAU/iD,KAAKo/C,KAAKpnC,KAAK2iF,MAAMt5D,YAEnC,KAAK,GAAIq9D,KAAU37C,GAAQ17B,MACzB,GAAI07B,EAAQ17B,MAAMrhB,eAAe04F,GAAS,CACxC,GAAI9iE,GAAO57B,KAAKo/C,KAAKu7C,MAAM+D,IACvB37C,EAAQ17B,MAAMq3E,GAAQ9gE,GAAK34B,KAAKsjB,MAAMqT,EAAKgC,IAAMmlB,EAAQ17B,MAAMq3E,GAAQz9E,GAAKhc,KAAKsjB,MAAMqT,EAAK3a,KAC9FsjF,EAAU/8F,MAAOnH,GAAIu7B,EAAKv7B,GAAIu9B,EAAG34B,KAAKsjB,MAAMqT,EAAKgC,GAAI3c,EAAGhc,KAAKsjB,MAAMqT,EAAK3a,KAI9E8hC,EAAQ7iB,OAAOqkE,MASjB56F,IAAK,iBACL5E,MAAO,SAAwB25F,GAC7B,MAAgCn4F,UAA5BvG,KAAKo/C,KAAKu7C,MAAM+D,GACX1+F,KAAKo/C,KAAKu7C,MAAM+D,GAAQ4E,MAAMkB,YADvC,UAWF76F,IAAK,oBACL5E,MAAO,SAA2B25F,GAChC,GAAI+F,KACJ,IAAgCl+F,SAA5BvG,KAAKo/C,KAAKu7C,MAAM+D,GAGlB,IAAK,GAFD9iE,GAAO57B,KAAKo/C,KAAKu7C,MAAM+D,GACvBgG,KACKj+F,EAAI,EAAGA,EAAIm1B,EAAKi/D,MAAMv0F,OAAQG,IAAK,CAC1C,GAAI26F,GAAOxlE,EAAKi/D,MAAMp0F,EAClB26F,GAAKuD,MAAQ/oE,EAAKv7B,GAESkG,SAAzBm+F,EAAQtD,EAAKwD,UACfH,EAASj9F,KAAK45F,EAAKwD,QACnBF,EAAQtD,EAAKwD,SAAU,GAEhBxD,EAAKwD,QAAUhpE,EAAKv7B,IAEFkG,SAAvBm+F,EAAQtD,EAAKuD,QACfF,EAASj9F,KAAK45F,EAAKuD,MACnBD,EAAQtD,EAAKuD,OAAQ,GAK7B,MAAOF,MAST96F,IAAK,oBACL5E,MAAO,SAA2B25F,GAChC,GAAImG,KACJ,IAAgCt+F,SAA5BvG,KAAKo/C,KAAKu7C,MAAM+D,GAElB,IAAK,GADD9iE,GAAO57B,KAAKo/C,KAAKu7C,MAAM+D,GAClBj4F,EAAI,EAAGA,EAAIm1B,EAAKi/D,MAAMv0F,OAAQG,IACrCo+F,EAASr9F,KAAKo0B,EAAKi/D,MAAMp0F,GAAGpG,QAG9Bsf,SAAQw+B,IAAI,mEAAoEugD,EAElF,OAAOmG,MAUTl7F,IAAK,WACL5E,MAAO,SAAkB25F,EAAQ9gE,EAAG3c,GAClC,GAAI25D,GAAS56E,IAEmBuG,UAA5BvG,KAAKo/C,KAAKu7C,MAAM+D,IAClB1+F,KAAKo/C,KAAKu7C,MAAM+D,GAAQ9gE,EAAIv5B,OAAOu5B,GACnC59B,KAAKo/C,KAAKu7C,MAAM+D,GAAQz9E,EAAI5c,OAAO4c,GACnC/W,WAAW,WACT0wE,EAAOx7B,KAAKE,QAAQzH,KAAK,oBACxB,IAEHl4B,QAAQw+B,IAAI,0DAA2DugD,OAKtE4D,IAGT1iG,GAAQ,WAAa0iG,EACrBziG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCARhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hB4tB,EAAe5kG,EAAoB,IAEnC6kG,EAAgBluB,EAAuBiuB,GAEvCE,EAAkB9kG,EAAoB,IAEtC+kG,EAAmBpuB,EAAuBmuB,GAE1CE,EAAqBhlG,EAAoB,IAEzCilG,EAAsBtuB,EAAuBquB,GAE7CE,EAA4BllG,EAAoB,IAEhDmlG,EAA6BxuB,EAAuBuuB,GAEpDE,EAAuBplG,EAAoB,IAE3CqlG,EAAwB1uB,EAAuByuB,GAE/CE,EAAsBtlG,EAAoB,IAE1CulG,EAAuB5uB,EAAuB2uB,GAE9CE,EAAkBxlG,EAAoB,IAEtCylG,EAAmB9uB,EAAuB6uB,GAE1CE,EAAsB1lG,EAAoB,IAE1C2lG,EAAuBhvB,EAAuB+uB,GAE9CE,EAAmB5lG,EAAoB,IAEvC6lG,EAAoBlvB,EAAuBivB,GAE3CE,EAAoB9lG,EAAoB,IAExC+lG,EAAqBpvB,EAAuBmvB,GAE5CE,EAAqBhmG,EAAoB,IAEzCimG,EAAsBtvB,EAAuBqvB,GAE7CE,EAAmBlmG,EAAoB,IAEvCmmG,EAAoBxvB,EAAuBuvB,GAE3CE,EAAmBpmG,EAAoB,IAEvCqmG,EAAoB1vB,EAAuByvB,GAE3CE,EAAuBtmG,EAAoB,IAE3CumG,EAAwB5vB,EAAuB2vB,GAE/CE,EAA2BxmG,EAAoB,IAE/CymG,EAA4B9vB,EAAuB6vB,GAEnDxI,EAAmBh+F,EAAoB,IAIvCS,GAFoBk2E,EAAuBqnB,GAEpCh+F,EAAoB,IA4B3B0mG,EAAO,WACT,QAASA,GAAK/iG,EAASu7C,EAAMynD,EAAWzY,EAAWx9E,GACjDomE,EAAgBh3E,KAAM4mG,GAEtB5mG,KAAK6D,QAAUlD,EAAK0P,aAAaO,GACjC5Q,KAAK4Q,cAAgBA,EACrB5Q,KAAKo/C,KAAOA,EAEZp/C,KAAK66F,SAGL76F,KAAKK,GAAKkG,OACVvG,KAAK6mG,UAAYA,EACjB7mG,KAAKouF,UAAYA,EAGjBpuF,KAAK49B,EAAIr3B,OACTvG,KAAKihB,EAAI1a,OACTvG,KAAK8mG,SAAW9mG,KAAK6D,QAAQo6B,KAC7Bj+B,KAAK+mG,aAAe/mG,KAAK6D,QAAQkuC,KAAK9T,KACtCj+B,KAAKgnG,oBAAqB,EAC1BhnG,KAAKunE,UAAW,EAChBvnE,KAAKoO,OAAQ,EAEbpO,KAAKinG,YAAc,GAAIlC,GAAc,WAAW/kG,KAAKo/C,KAAMp/C,KAAK6D,SAChE7D,KAAKg/B,WAAWn7B,GAqYlB,MA7XAuzE,GAAawvB,IACXj9F,IAAK,aACL5E,MAAO,SAAoBq8F,GACQ,KAA7BphG,KAAK66F,MAAMtzF,QAAQ65F,IACrBphG,KAAK66F,MAAMrzF,KAAK45F,MASpBz3F,IAAK,aACL5E,MAAO,SAAoBq8F,GACzB,GAAIh4F,GAAQpJ,KAAK66F,MAAMtzF,QAAQ65F,EAClB,KAATh4F,GACFpJ,KAAK66F,MAAMxxF,OAAOD,EAAO,MAU7BO,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAIqjG,GAAelnG,KAAK6D,QAAQy/F,KAChC,IAAKz/F,EAAL,CAQA,GAJmB0C,SAAf1C,EAAQxD,KACVL,KAAKK,GAAKwD,EAAQxD,IAGJkG,SAAZvG,KAAKK,GACP,KAAM,sBA2BR,IAtBkBkG,SAAd1C,EAAQ+5B,IACQ,OAAd/5B,EAAQ+5B,GACV59B,KAAK49B,EAAIr3B,OAAUvG,KAAKgnG,oBAAqB,IAE7ChnG,KAAK49B,EAAIrxB,SAAS1I,EAAQ+5B,GAAG59B,KAAKgnG,oBAAqB,IAGzCzgG,SAAd1C,EAAQod,IACQ,OAAdpd,EAAQod,GACVjhB,KAAKihB,EAAI1a,OAAUvG,KAAKgnG,oBAAqB,IAE7ChnG,KAAKihB,EAAI1U,SAAS1I,EAAQod,GAAGjhB,KAAKgnG,oBAAqB,IAGtCzgG,SAAjB1C,EAAQo6B,OACVj+B,KAAK8mG,SAAWjjG,EAAQo6B,MAEJ13B,SAAlB1C,EAAQkB,QACVlB,EAAQkB,MAAQqlB,WAAWvmB,EAAQkB,QAIR,gBAAlBlB,GAAQq/C,OAA+C,gBAAlBr/C,GAAQq/C,OAAuC,IAAjBr/C,EAAQq/C,MAAa,CACjG,GAAIikD,GAAWnnG,KAAKouF,UAAUp3D,IAAInzB,EAAQq/C,MAC1CviD,GAAK0G,WAAWrH,KAAK6D,QAASsjG,GAE9BnnG,KAAK6D,QAAQ4I,MAAQ9L,EAAKwM,WAAWnN,KAAK6D,QAAQ4I,OAOpD,GAHAm6F,EAAKjD,aAAa3jG,KAAK6D,QAASA,GAAS,EAAM7D,KAAK4Q,eAGzBrK,SAAvBvG,KAAK6D,QAAQg/F,MAAqB,CACpC,IAAI7iG,KAAK6mG,UAGP,KAAM,uBAFN7mG,MAAKonG,SAAWpnG,KAAK6mG,UAAUQ,KAAKrnG,KAAK6D,QAAQg/F,MAAO7iG,KAAK6D,QAAQ4+F,YAAaziG,KAAKK,IAS3F,MAHAL,MAAK6jG,oBACL7jG,KAAK4jG,YAAYsD,GAEM3gG,SAAnB1C,EAAQm5D,QAA4Cz2D,SAApB1C,EAAQq4E,SACnC,GAEF,MAYTvyE,IAAK,oBACL5E,MAAO,YACsBwB,SAAvBvG,KAAK6D,QAAQq6B,OAA8C,OAAvBl+B,KAAK6D,QAAQq6B,SACnDl+B,KAAK6D,QAAQq6B,MAAQ,IAEvBl+B,KAAKinG,YAAYjoE,WAAWh/B,KAAK6D,SAAS,GACR0C,SAA9BvG,KAAKinG,YAAYH,WACnB9mG,KAAK+mG,aAAe/mG,KAAKinG,YAAYH,aAIzCn9F,IAAK,cACL5E,MAAO,SAAqBmiG,GAC1B,GAAIA,IAAiBlnG,KAAK6D,QAAQy/F,OAAStjG,KAAKsjG,MAC9CtjG,KAAKsjG,MAAMtkE,WAAWh/B,KAAK6D,QAAS7D,KAAKonG,cAGzC,QAAQpnG,KAAK6D,QAAQy/F,OACnB,IAAK,MACHtjG,KAAKsjG,MAAQ,GAAI2B,GAAiB,WAAWjlG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,YAC3E,MACF,KAAK,SACHjnG,KAAKsjG,MAAQ,GAAI6B,GAAoB,WAAWnlG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,YAC9E,MACF,KAAK,gBACHjnG,KAAKsjG,MAAQ,GAAI+B,GAA2B,WAAWrlG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,YAAajnG,KAAKonG,SACvG,MACF,KAAK,WACHpnG,KAAKsjG,MAAQ,GAAIiC,GAAsB,WAAWvlG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,YAChF,MACF,KAAK,UACHjnG,KAAKsjG,MAAQ,GAAImC,GAAqB,WAAWzlG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,YAC/E,MACF,KAAK,MACHjnG,KAAKsjG,MAAQ,GAAIqC,GAAiB,WAAW3lG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,YAC3E,MACF,KAAK,UACHjnG,KAAKsjG,MAAQ,GAAIuC,GAAqB,WAAW7lG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,YAC/E,MACF,KAAK,OACHjnG,KAAKsjG,MAAQ,GAAIyC,GAAkB,WAAW/lG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,YAC5E,MACF,KAAK,QACHjnG,KAAKsjG,MAAQ,GAAI2C,GAAmB,WAAWjmG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,YAAajnG,KAAKonG,SAC/F,MACF,KAAK,SACHpnG,KAAKsjG,MAAQ,GAAI6C,GAAoB,WAAWnmG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,YAC9E,MACF,KAAK,OACHjnG,KAAKsjG,MAAQ,GAAI+C,GAAkB,WAAWrmG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,YAC5E,MACF,KAAK,OACHjnG,KAAKsjG,MAAQ,GAAIiD,GAAkB,WAAWvmG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,YAC5E,MACF,KAAK,WACHjnG,KAAKsjG,MAAQ,GAAImD,GAAsB,WAAWzmG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,YAChF,MACF,KAAK,eACHjnG,KAAKsjG,MAAQ,GAAIqD,GAA0B,WAAW3mG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,YACpF,MACF,SACEjnG,KAAKsjG,MAAQ,GAAIuC,GAAqB,WAAW7lG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,aAIrFjnG,KAAK8jG,YAOPn6F,IAAK,SACL5E,MAAO,WACL/E,KAAKunE,UAAW,EAChBvnE,KAAK8jG,YAOPn6F,IAAK,WACL5E,MAAO,WACL/E,KAAKunE,UAAW,EAChBvnE,KAAK8jG,YAQPn6F,IAAK,SACL5E,MAAO,WACL/E,KAAKsjG,MAAM9kE,MAAQj4B,OACnBvG,KAAKsjG,MAAM7kE,OAASl4B,UAStBoD,IAAK,WACL5E,MAAO,WACL,MAAO/E,MAAK6D,QAAQ68D,SAUtB/2D,IAAK,mBACL5E,MAAO,SAA0BwsC,EAAKmZ,GACpC,MAAO1qD,MAAKsjG,MAAMgE,iBAAiB/1D,EAAKmZ,MAQ1C/gD,IAAK,UACL5E,MAAO,WACL,MAAO/E,MAAK6D,QAAQ6+F,MAAM9kE,GAAK59B,KAAK6D,QAAQ6+F,MAAMzhF,KAQpDtX,IAAK,aACL5E,MAAO,WACL,MAAO/E,MAAKunE,YAQd59D,IAAK,WACL5E,MAAO,WACL,MAAO/E,MAAK6D,QAAQkB,SAUtB4E,IAAK,gBACL5E,MAAO,SAAuBH,EAAKC,EAAKC,GACtC,GAA2ByB,SAAvBvG,KAAK6D,QAAQkB,MAAqB,CACpC,GAAIC,GAAQhF,KAAK6D,QAAQo/F,QAAQG,sBAAsBx+F,EAAKC,EAAKC,EAAO9E,KAAK6D,QAAQkB,OACjFwiG,EAAWvnG,KAAK6D,QAAQo/F,QAAQp+F,IAAM7E,KAAK6D,QAAQo/F,QAAQr+F,GAC/D,IAAI5E,KAAK6D,QAAQo/F,QAAQ/kE,MAAMrtB,WAAY,EAAM,CAC/C,GAAI22F,GAAWxnG,KAAK6D,QAAQo/F,QAAQ/kE,MAAMr5B,IAAM7E,KAAK6D,QAAQo/F,QAAQ/kE,MAAMt5B,GAC3E5E,MAAK6D,QAAQkuC,KAAK9T,KAAOj+B,KAAK6D,QAAQo/F,QAAQ/kE,MAAMt5B,IAAMI,EAAQwiG,EAEpExnG,KAAK6D,QAAQo6B,KAAOj+B,KAAK6D,QAAQo/F,QAAQr+F,IAAMI,EAAQuiG,MAEvDvnG,MAAK6D,QAAQo6B,KAAOj+B,KAAK8mG,SACzB9mG,KAAK6D,QAAQkuC,KAAK9T,KAAOj+B,KAAK+mG,YAGhC/mG,MAAK6jG,uBASPl6F,IAAK,OACL5E,MAAO,SAAcwsC,GACnBvxC,KAAKsjG,MAAMrnB,KAAK1qC,EAAKvxC,KAAK49B,EAAG59B,KAAKihB,EAAGjhB,KAAKunE,SAAUvnE,KAAKoO,UAO3DzE,IAAK,oBACL5E,MAAO,SAA2BwsC,GAChCvxC,KAAKsjG,MAAMmE,kBAAkBznG,KAAK49B,EAAG59B,KAAKihB,EAAGswB,MAS/C5nC,IAAK,SACL5E,MAAO,SAAgBwsC,GACrBvxC,KAAKsjG,MAAMoE,OAAOn2D,EAAKvxC,KAAKunE,aAS9B59D,IAAK,oBACL5E,MAAO,SAA2Be,GAChC,MAAO9F,MAAKsjG,MAAM36F,KAAO7C,EAAI+rC,OAAS7xC,KAAKsjG,MAAM36F,KAAO3I,KAAKsjG,MAAM9kE,MAAQ14B,EAAI6C,MAAQ3I,KAAKsjG,MAAMz6F,IAAM/C,EAAIwoC,QAAUtuC,KAAKsjG,MAAMz6F,IAAM7I,KAAKsjG,MAAM7kE,OAAS34B,EAAI+C,OASjKc,IAAK,+BACL5E,MAAO,SAAsCe,GAC3C,MAAO9F,MAAKsjG,MAAMkB,YAAY77F,KAAO7C,EAAI+rC,OAAS7xC,KAAKsjG,MAAMkB,YAAY3yD,MAAQ/rC,EAAI6C,MAAQ3I,KAAKsjG,MAAMkB,YAAY37F,IAAM/C,EAAIwoC,QAAUtuC,KAAKsjG,MAAMkB,YAAYl2D,OAASxoC,EAAI+C,SAG9Kc,IAAK,eACL5E,MAAO,SAAsB4iG,EAAeC,GAC1C,GAAIxhG,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GACxFuK,EAAgBvK,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAErF4J,GAAU,QAAS,OAAQ,QAAS,SAOxC,IANAtP,EAAK2G,uBAAuB2I,EAAQ03F,EAAeC,EAAYxhG,GAG/DzF,EAAK+P,aAAai3F,EAAeC,EAAY,SAAUxhG,EAAewK,GAG7CrK,SAArBqhG,EAAWn7F,OAA4C,OAArBm7F,EAAWn7F,MAAgB,CAC/D,GAAIo7F,GAAclnG,EAAKwM,WAAWy6F,EAAWn7F,MAC7C9L,GAAKsF,cAAc0hG,EAAcl7F,MAAOo7F,OAC/BzhG,MAAkB,GAA6B,OAArBwhG,EAAWn7F,QAC9Ck7F,EAAcl7F,MAAQ9L,EAAK0P,aAAaO,EAAcnE,OAI/BlG,UAArBqhG,EAAWlF,OAA4C,OAArBkF,EAAWlF,QACf,iBAArBkF,GAAWlF,OACpBiF,EAAcjF,MAAM9kE,EAAIgqE,EAAWlF,MACnCiF,EAAcjF,MAAMzhF,EAAI2mF,EAAWlF,QAERn8F,SAAvBqhG,EAAWlF,MAAM9kE,GAAiD,iBAAvBgqE,GAAWlF,MAAM9kE,IAC9D+pE,EAAcjF,MAAM9kE,EAAIgqE,EAAWlF,MAAM9kE,GAEhBr3B,SAAvBqhG,EAAWlF,MAAMzhF,GAAiD,iBAAvB2mF,GAAWlF,MAAMzhF,IAC9D0mF,EAAcjF,MAAMzhF,EAAI2mF,EAAWlF,MAAMzhF,KAMvB1a,SAApBqhG,EAAW71D,MAA0C,OAApB61D,EAAW71D,KAC9CgzD,EAAc,WAAWpB,aAAagE,EAAc51D,KAAM61D,GACjDxhG,KAAkB,GAA4B,OAApBwhG,EAAW71D,OAC9C41D,EAAc51D,KAAOpxC,EAAK0P,aAAaO,EAAcmhC,OAI5BxrC,SAAvBqhG,EAAW3E,SACbtiG,EAAK+P,aAAai3F,EAAc1E,QAAS2E,EAAW3E,QAAS,QAAS78F,EAAewK,EAAcqyF,aAKlG2D,IAGThnG,GAAQ,WAAagnG,EACrB/mG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS82E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCARhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAI+iG,GAAiB,WAAe,QAASC,GAAc3/F,EAAK3B,GAAK,GAAIuhG,MAAeC,GAAK,EAAUvzF,GAAK,EAAWwzF,EAAK3hG,MAAW,KAAM,IAAK,GAAiC4hG,GAA7B5yF,EAAKnN,EAAIggG,OAAOriD,cAAmBkiD,GAAME,EAAK5yF,EAAG+B,QAAQwiD,QAAoBkuC,EAAKxgG,KAAK2gG,EAAGpjG,QAAY0B,GAAKuhG,EAAK1hG,SAAWG,GAA3DwhG,GAAK,IAAoE,MAAO9tB,GAAOzlE,GAAK,EAAMwzF,EAAK/tB,EAAO,QAAU,KAAW8tB,GAAM1yF,EAAG,WAAWA,EAAG,YAAe,QAAU,GAAIb,EAAI,KAAMwzF,IAAQ,MAAOF,GAAQ,MAAO,UAAU5/F,EAAK3B,GAAK,GAAIK,MAAMC,QAAQqB,GAAQ,MAAOA,EAAY,IAAIggG,OAAOriD,WAAY3+C,QAAOgB,GAAQ,MAAO2/F,GAAc3/F,EAAK3B,EAAa,MAAM,IAAIS,WAAU,4DAEnlBkwE,EAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBv2E,EAAOT,EAAoB,GAE3BmoG,EAAQ,WACV,QAASA,GAAMjpD,EAAMv7C,GACnBmzE,EAAgBh3E,KAAMqoG,GAEtBroG,KAAKo/C,KAAOA,EAEZp/C,KAAKsoG,aAAc,EACnBtoG,KAAK8mG,SAAWvgG,OAChBvG,KAAKuoG,eACLvoG,KAAKg/B,WAAWn7B,GAChB7D,KAAKi+B,MAASp1B,IAAK,EAAGF,KAAM,EAAG61B,MAAO,EAAGC,OAAQ,EAAG+pE,MAAO,GA+R7D,MA5RApxB,GAAaixB,IACX1+F,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAIuC,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAE5FrG,MAAKyoG,YAAc5kG,EAInB7D,KAAKuoG,YAAc5nG,EAAK0G,cAAexD,EAAQkuC,MAAM,GAE/BxrC,SAAlB1C,EAAQq6B,QACVl+B,KAAK0oG,YAAa,GAGCniG,SAAjB1C,EAAQkuC,OACVs2D,EAAM1E,aAAa3jG,KAAKuoG,YAAa1kG,EAASuC,GAClB,gBAAjBvC,GAAQkuC,KACjB/xC,KAAK8mG,SAAW9mG,KAAKuoG,YAAYtqE,KACA,gBAAjBp6B,GAAQkuC,MACExrC,SAAtB1C,EAAQkuC,KAAK9T,OACfj+B,KAAK8mG,SAAWjjG,EAAQkuC,KAAK9T,UAMrCt0B,IAAK,OAUL5E,MAAO,SAAcwsC,EAAK3T,EAAG3c,EAAGsmD,GAC9B,GAAIohC,GAAWtiG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,SAAWA,UAAU,EAG1F,IAA+BE,SAA3BvG,KAAKyoG,YAAYvqE,MAArB,CAGA,GAAI0qE,GAAe5oG,KAAKuoG,YAAYtqE,KAAOj+B,KAAKo/C,KAAKw8C,KAAK52F,KACtDhF,MAAKyoG,YAAYvqE,OAAS0qE,EAAe5oG,KAAKyoG,YAAYxF,QAAQ/kE,MAAMilE,cAAgB,IAG5FnjG,KAAK6oG,mBAAmBt3D,EAAKg2B,EAAU3pC,EAAG3c,EAAG0nF,GAG7C3oG,KAAK8oG,gBAAgBv3D,GAErBvxC,KAAK+oG,UAAUx3D,EAAKg2B,EAAU3pC,EAAG3c,EAAG0nF,QAStCh/F,IAAK,kBACL5E,MAAO,SAAyBwsC,GAC9B,GAAoChrC,SAAhCvG,KAAKuoG,YAAYt6F,YAA4D,SAAhCjO,KAAKuoG,YAAYt6F,WAAuB,CACvFsjC,EAAIiB,UAAYxyC,KAAKuoG,YAAYt6F,UAEjC,IAAI+6F,GAAa,CAEjB,QAAQhpG,KAAKuoG,YAAY7lC,OACvB,IAAK,SACHnxB,EAAI43C,SAA4B,IAAlBnpF,KAAKi+B,KAAKO,MAAiC,IAAnBx+B,KAAKi+B,KAAKQ,OAAcz+B,KAAKi+B,KAAKO,MAAOx+B,KAAKi+B,KAAKQ,OACzF,MACF,KAAK,MACH8S,EAAI43C,SAA4B,IAAlBnpF,KAAKi+B,KAAKO,QAAex+B,KAAKi+B,KAAKQ,OAASuqE,GAAahpG,KAAKi+B,KAAKO,MAAOx+B,KAAKi+B,KAAKQ,OAClG,MACF,KAAK,SACH8S,EAAI43C,SAA4B,IAAlBnpF,KAAKi+B,KAAKO,MAAawqE,EAAYhpG,KAAKi+B,KAAKO,MAAOx+B,KAAKi+B,KAAKQ,OAC5E,MACF,SACE8S,EAAI43C,SAASnpF,KAAKi+B,KAAKt1B,KAAM3I,KAAKi+B,KAAKp1B,IAAM,GAAMmgG,EAAYhpG,KAAKi+B,KAAKO,MAAOx+B,KAAKi+B,KAAKQ,aAclG90B,IAAK,YACL5E,MAAO,SAAmBwsC,EAAKg2B,EAAU3pC,EAAG3c,GAC1C,GAAI0nF,GAAWtiG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,SAAWA,UAAU,GAEtF4iG,EAAWjpG,KAAKuoG,YAAYtqE,KAC5B2qE,EAAeK,EAAWjpG,KAAKo/C,KAAKw8C,KAAK52F,KAEzC4jG,IAAgB5oG,KAAKyoG,YAAYxF,QAAQ/kE,MAAMglE,aACjD+F,EAAW5kG,OAAOrE,KAAKyoG,YAAYxF,QAAQ/kE,MAAMglE,YAAcljG,KAAKo/C,KAAKw8C,KAAK52F,MAGhF,IAAIwjG,GAAQxoG,KAAKi+B,KAAKuqE,MAElBU,EAAalpG,KAAKmpG,UAAUP,GAE5BQ,EAActB,EAAeoB,EAAY,GAEzCG,EAAYD,EAAY,GACxBxG,EAAcwG,EAAY,GAI1BE,EAAiBtpG,KAAKupG,cAAch4D,EAAK3T,EAAG4qE,EAAOG,GAEnDa,EAAkB1B,EAAewB,EAAgB,EAErD1rE,GAAI4rE,EAAgB,GACpBhB,EAAQgB,EAAgB,GACxBj4D,EAAIQ,MAAQw1B,GAAYvnE,KAAKyoG,YAAY3F,mBAAqB,QAAU,IAAMmG,EAAW,MAAQjpG,KAAKuoG,YAAY5F,KAClHpxD,EAAIiB,UAAY62D,EAChB93D,EAAIwB,UAAY,SAGZ/yC,KAAKuoG,YAAY5gE,YAAc,IACjC4J,EAAIO,UAAY9xC,KAAKuoG,YAAY5gE,YACjC4J,EAAIY,YAAcywD,EAClBrxD,EAAI4D,SAAW,QAIjB,KAAK,GAAI1uC,GAAI,EAAGA,EAAIzG,KAAKypG,UAAWhjG,IAC9BzG,KAAKuoG,YAAY5gE,YAAc,GACjC4J,EAAIm4D,WAAW1pG,KAAKmyE,MAAM1rE,GAAIm3B,EAAG4qE,GAEnCj3D,EAAI0B,SAASjzC,KAAKmyE,MAAM1rE,GAAIm3B,EAAG4qE,GAC/BA,GAASS,KAIbt/F,IAAK,gBACL5E,MAAO,SAAuBwsC,EAAK3T,EAAG4qE,EAAOG,GAG3C,GAA+B,eAA3B3oG,KAAKuoG,YAAY7lC,OAA0B1iE,KAAKsoG,eAAgB,EAAO,CACzE1qE,EAAI,EACJ4qE,EAAQ,CAER,IAAIQ,GAAa,CACc,SAA3BhpG,KAAKuoG,YAAY7lC,OACnBnxB,EAAIyB,aAAe,aACnBw1D,GAAS,EAAIQ,GACuB,WAA3BhpG,KAAKuoG,YAAY7lC,OACxBnxB,EAAIyB,aAAe,UACnBw1D,GAAS,EAAIQ,GAEXz3D,EAAIyB,aAAe,aAGzBzB,GAAIyB,aAAe21D,CAGrB,QAAQ/qE,EAAG4qE,MAYb7+F,IAAK,YACL5E,MAAO,SAAmB6jG,GACxB,GAAIS,GAAYrpG,KAAKuoG,YAAY97F,OAAS,UACtCm2F,EAAc5iG,KAAKuoG,YAAY3F,aAAe,SAClD,IAAIgG,GAAgB5oG,KAAKyoG,YAAYxF,QAAQ/kE,MAAMilE,cAAe,CAChE,GAAIz2F,GAAUzH,KAAKJ,IAAI,EAAGI,KAAKL,IAAI,EAAG,GAAK5E,KAAKyoG,YAAYxF,QAAQ/kE,MAAMilE,cAAgByF,IAC1FS,GAAY1oG,EAAK6L,gBAAgB68F,EAAW38F,GAC5Ck2F,EAAcjiG,EAAK6L,gBAAgBo2F,EAAal2F,GAElD,OAAQ28F,EAAWzG,MAUrBj5F,IAAK,cACL5E,MAAO,SAAqBwsC,GAC1B,GAAIg2B,GAAWlhE,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEnF43B,GACFO,MAAOx+B,KAAK2pG,cAAcp4D,EAAKg2B,GAC/B9oC,OAAQz+B,KAAKuoG,YAAYtqE,KAAOj+B,KAAKypG,UACrCA,UAAWzpG,KAAKypG,UAElB,OAAOxrE,MAYTt0B,IAAK,qBACL5E,MAAO,SAA4BwsC,EAAKg2B,GACtC,GAAI3pC,GAAIv3B,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,EAAIA,UAAU,GACxE4a,EAAI5a,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,EAAIA,UAAU,GACxEsiG,EAAWtiG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,SAAWA,UAAU,EAEtFrG,MAAK0oG,cAAe,IACtB1oG,KAAKi+B,KAAKO,MAAQx+B,KAAK2pG,cAAcp4D,EAAKg2B,IAE5CvnE,KAAKi+B,KAAKQ,OAASz+B,KAAKuoG,YAAYtqE,KAAOj+B,KAAKypG,UAChDzpG,KAAKi+B,KAAKt1B,KAAOi1B,EAAsB,GAAlB59B,KAAKi+B,KAAKO,MAC/Bx+B,KAAKi+B,KAAKp1B,IAAMoY,EAAuB,GAAnBjhB,KAAKi+B,KAAKQ,OAC9Bz+B,KAAKi+B,KAAKuqE,MAAQvnF,EAA2B,IAAtB,EAAIjhB,KAAKypG,WAAmBzpG,KAAKuoG,YAAYtqE,KACnD,YAAb0qE,IACF3oG,KAAKi+B,KAAKp1B,KAAO,GAAM7I,KAAKuoG,YAAYtqE,KACxCj+B,KAAKi+B,KAAKp1B,KAAO,EACjB7I,KAAKi+B,KAAKuqE,OAAS,GAGrBxoG,KAAK0oG,YAAa,KAWpB/+F,IAAK,gBACL5E,MAAO,SAAuBwsC,EAAKg2B,GACjC,GAAI/oC,GAAQ,EACR2zC,GAAS,IACTs3B,EAAY,CAChB,IAA+BljG,SAA3BvG,KAAKyoG,YAAYvqE,MAAqB,CACxCi0C,EAAQhtE,OAAOnF,KAAKyoG,YAAYvqE,OAAOj1B,MAAM,MAC7CwgG,EAAYt3B,EAAM7rE,OAClBirC,EAAIQ,MAAQw1B,GAAYvnE,KAAKyoG,YAAY3F,mBAAqB,QAAU,IAAM9iG,KAAKuoG,YAAYtqE,KAAO,MAAQj+B,KAAKuoG,YAAY5F,KAC/HnkE,EAAQ+S,EAAIq4D,YAAYz3B,EAAM,IAAI3zC,KAClC,KAAK,GAAI/3B,GAAI,EAAOgjG,EAAJhjG,EAAeA,IAAK,CAClC,GAAIqrC,GAAYP,EAAIq4D,YAAYz3B,EAAM1rE,IAAI+3B,KAC1CA,GAAQsT,EAAYtT,EAAQsT,EAAYtT,GAM5C,MAHAx+B,MAAKmyE,MAAQA,EACbnyE,KAAKypG,UAAYA,EAEVjrE,OAGT70B,IAAK,eACL5E,MAAO,SAAsB4iG,EAAeC,GAC1C,GAAIxhG,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAE5F,IAA+B,gBAApBuhG,GAAW71D,KAAmB,CACvC,GAAI83D,GAAkBjC,EAAW71D,KAAK9oC,MAAM,IAC5C0+F,GAAc1pE,KAAO4rE,EAAgB,GAAG19F,QAAQ,KAAM,IACtDw7F,EAAchF,KAAOkH,EAAgB,GACrClC,EAAcl7F,MAAQo9F,EAAgB,OACF,gBAApBjC,GAAW71D,MAC3BpxC,EAAKsF,cAAc0hG,EAAeC,EAAW71D,KAAM3rC,EAErDuhG,GAAc1pE,KAAO55B,OAAOsjG,EAAc1pE,UAIvCoqE,IAGTzoG,GAAQ,WAAayoG,EACrBxoG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcqkG,EAAgB1qG,EAAoB,IAEpC2qG,EAAiBh0B,EAAuB+zB,GAExCE,EAAM,SAAWC,GAGnB,QAASD,GAAIjnG,EAASu7C,EAAM6nD,GAC1BjwB,EAAgBh3E,KAAM8qG,GAEtBX,EAAK/iG,OAAOujG,eAAeG,EAAI73F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GA+E5F,MApFA6C,GAAUgB,EAAKC,GAQf3zB,EAAa0zB,IACXnhG,IAAK,SACL5E,MAAO,SAAgBwsC,EAAKg2B,GAC1B,GAAmBhhE,SAAfvG,KAAKw+B,MAAqB,CAC5B,GAAI+F,GAAS,EACTymE,EAAWhrG,KAAKinG,YAAYgE,YAAY15D,EAAKg2B,EACjDvnE,MAAKw+B,MAAQwsE,EAASxsE,MAAQ,EAAI+F,EAClCvkC,KAAKy+B,OAASusE,EAASvsE,OAAS,EAAI8F,EACpCvkC,KAAK61C,OAAS,GAAM71C,KAAKw+B,UAI7B70B,IAAK,OACL5E,MAAO,SAAcwsC,EAAK3T,EAAG3c,EAAGsmD,EAAUn5D,GACxCpO,KAAK0nG,OAAOn2D,EAAKg2B,GACjBvnE,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,CAE7B,IAAIsM,GAAc/qC,KAAK6D,QAAQknC,YAC3BmgE,EAAqBlrG,KAAK6D,QAAQ2+F,qBAAuB,EAAIxiG,KAAK6D,QAAQknC,WAE9EwG,GAAIY,YAAco1B,EAAWvnE,KAAK6D,QAAQ4I,MAAM0B,UAAUD,OAASE,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMF,OAASlO,KAAK6D,QAAQ4I,MAAMyB,OAChIqjC,EAAIO,UAAYy1B,EAAW2jC,EAAqBngE,EAChDwG,EAAIO,WAAa9xC,KAAKo/C,KAAKw8C,KAAK52F,MAChCusC,EAAIO,UAAY7sC,KAAKL,IAAI5E,KAAKw+B,MAAO+S,EAAIO,WAEzCP,EAAIiB,UAAY+0B,EAAWvnE,KAAK6D,QAAQ4I,MAAM0B,UAAUF,WAAaG,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMH,WAAajO,KAAK6D,QAAQ4I,MAAMwB,UAEtI,IAAI4rC,GAAe75C,KAAK6D,QAAQ0/F,gBAAgB1pD,YAChDtI,GAAI45D,UAAUnrG,KAAK2I,KAAM3I,KAAK6I,IAAK7I,KAAKw+B,MAAOx+B,KAAKy+B,OAAQob,GAG5D75C,KAAKorG,aAAa75D,GAElBA,EAAI9J,OAEJznC,KAAKqrG,cAAc95D,GAGnBA,EAAI+5D,OAEAvgE,EAAc,IAChB/qC,KAAKurG,mBAAmBh6D,GAExBA,EAAI7J,SAEJ1nC,KAAKwrG,oBAAoBj6D,IAE3BA,EAAIk6D,UAEJzrG,KAAKynG,kBAAkB7pE,EAAG3c,EAAGswB,EAAKg2B,GAClCvnE,KAAKinG,YAAYhrB,KAAK1qC,EAAK3T,EAAG3c,EAAGsmD,MAGnC59D,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,EAAGswB,EAAKg2B,GAC3CvnE,KAAK0nG,OAAOn2D,EAAKg2B,GACjBvnE,KAAK2I,KAAOi1B,EAAiB,GAAb59B,KAAKw+B,MACrBx+B,KAAK6I,IAAMoY,EAAkB,GAAdjhB,KAAKy+B,MAEpB,IAAIob,GAAe75C,KAAK6D,QAAQ0/F,gBAAgB1pD,YAChD75C,MAAKwkG,YAAY77F,KAAO3I,KAAK2I,KAAOkxC,EACpC75C,KAAKwkG,YAAY37F,IAAM7I,KAAK6I,IAAMgxC,EAClC75C,KAAKwkG,YAAYl2D,OAAStuC,KAAK6I,IAAM7I,KAAKy+B,OAASob,EACnD75C,KAAKwkG,YAAY3yD,MAAQ7xC,KAAK2I,KAAO3I,KAAKw+B,MAAQqb,KAGpDlwC,IAAK,mBACL5E,MAAO,SAA0BwsC,EAAKmZ,GACpC1qD,KAAK0nG,OAAOn2D,EACZ,IAAIxG,GAAc/qC,KAAK6D,QAAQknC,WAE/B,OAAO9lC,MAAKL,IAAIK,KAAK8R,IAAI/W,KAAKw+B,MAAQ,EAAIv5B,KAAKwkC,IAAIihB,IAASzlD,KAAK8R,IAAI/W,KAAKy+B,OAAS,EAAIx5B,KAAKqkC,IAAIohB,KAAW3f,MAIxG+/D,GACND,EAAe,WAElBjrG,GAAQ,WAAakrG,EACrBjrG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAUrB,QAASo3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBw0B,EAAW,WACb,QAASA,GAAS7nG,EAASu7C,EAAM6nD,GAC/BjwB,EAAgBh3E,KAAM0rG,GAEtB1rG,KAAKo/C,KAAOA,EACZp/C,KAAKinG,YAAcA,EACnBjnG,KAAKg/B,WAAWn7B,GAChB7D,KAAK6I,IAAMtC,OACXvG,KAAK2I,KAAOpC,OACZvG,KAAKy+B,OAASl4B,OACdvG,KAAKw+B,MAAQj4B,OACbvG,KAAK61C,OAAStvC,OACdvG,KAAKwkG,aAAgB37F,IAAK,EAAGF,KAAM,EAAGkpC,MAAO,EAAGvD,OAAQ,GAiE1D,MA9DA8oC,GAAas0B,IACX/hG,IAAK,aACL5E,MAAO,SAAoBlB,GACzB7D,KAAK6D,QAAUA,KAGjB8F,IAAK,oBACL5E,MAAO,SAA2BwsC,EAAKmZ,GACrC,GAAI3f,GAAc/qC,KAAK6D,QAAQknC,WAE/B,OADA/qC,MAAK0nG,OAAOn2D,GACLtsC,KAAKL,IAAIK,KAAK8R,IAAI/W,KAAKw+B,MAAQ,EAAIv5B,KAAKwkC,IAAIihB,IAASzlD,KAAK8R,IAAI/W,KAAKy+B,OAAS,EAAIx5B,KAAKqkC,IAAIohB,KAAW3f,KAG7GphC,IAAK,eACL5E,MAAO,SAAsBwsC,GACvBvxC,KAAK6D,QAAQw/F,OAAOxyF,WAAY,IAClC0gC,EAAIo6D,YAAc3rG,KAAK6D,QAAQw/F,OAAO52F,MACtC8kC,EAAIq6D,WAAa5rG,KAAK6D,QAAQw/F,OAAOplE,KACrCsT,EAAIs6D,cAAgB7rG,KAAK6D,QAAQw/F,OAAOzlE,EACxC2T,EAAIu6D,cAAgB9rG,KAAK6D,QAAQw/F,OAAOpiF,MAI5CtX,IAAK,gBACL5E,MAAO,SAAuBwsC,GACxBvxC,KAAK6D,QAAQw/F,OAAOxyF,WAAY,IAClC0gC,EAAIo6D,YAAc,gBAClBp6D,EAAIq6D,WAAa,EACjBr6D,EAAIs6D,cAAgB,EACpBt6D,EAAIu6D,cAAgB,MAIxBniG,IAAK,qBACL5E,MAAO,SAA4BwsC,GACjC,GAAIvxC,KAAK6D,QAAQ0/F,gBAAgBC,gBAAiB,EAChD,GAAwBj9F,SAApBgrC,EAAIw6D,YAA2B,CACjC,GAAIC,GAAShsG,KAAK6D,QAAQ0/F,gBAAgBC,YACtCwI,MAAW,IACbA,GAAU,EAAG,KAEfz6D,EAAIw6D,YAAYC,OAEhBrsF,SAAQH,KAAK,oFACbxf,KAAK6D,QAAQ0/F,gBAAgBC,cAAe,KAKlD75F,IAAK,sBACL5E,MAAO,SAA6BwsC,GAC9BvxC,KAAK6D,QAAQ0/F,gBAAgBC,gBAAiB,IACxBj9F,SAApBgrC,EAAIw6D,YACNx6D,EAAIw6D,aAAa,KAEjBpsF,QAAQH,KAAK,oFACbxf,KAAK6D,QAAQ0/F,gBAAgBC,cAAe,QAM7CkI,IAGT9rG,GAAQ,WAAa8rG,EACrB7rG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxc0lG,EAAuB/rG,EAAoB,IAE3CgsG,EAAwBr1B,EAAuBo1B,GAE/CE,EAAS,SAAWC,GAGtB,QAASD,GAAOtoG,EAASu7C,EAAM6nD,GAC7BjwB,EAAgBh3E,KAAMmsG,GAEtBhC,EAAK/iG,OAAOujG,eAAewB,EAAOl5F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GAkD/F,MAvDA6C,GAAUqC,EAAQC,GAQlBh1B,EAAa+0B,IACXxiG,IAAK,SACL5E,MAAO,SAAgBwsC,EAAKg2B,GAC1B,GAAmBhhE,SAAfvG,KAAKw+B,MAAqB,CAC5B,GAAI+F,GAAS,EACTymE,EAAWhrG,KAAKinG,YAAYgE,YAAY15D,EAAKg2B,GAC7C8kC,EAAWpnG,KAAKJ,IAAImmG,EAASxsE,MAAOwsE,EAASvsE,QAAU,EAAI8F,CAC/DvkC,MAAK6D,QAAQo6B,KAAOouE,EAAW,EAE/BrsG,KAAKw+B,MAAQ6tE,EACbrsG,KAAKy+B,OAAS4tE,EACdrsG,KAAK61C,OAAS,GAAM71C,KAAKw+B,UAI7B70B,IAAK,OACL5E,MAAO,SAAcwsC,EAAK3T,EAAG3c,EAAGsmD,EAAUn5D,GACxCpO,KAAK0nG,OAAOn2D,EAAKg2B,GACjBvnE,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,EAE7Bz+B,KAAKssG,eAAe/6D,EAAK3T,EAAG3c,EAAGsmD,EAAUn5D,EAAOpO,KAAK6D,QAAQo6B,MAE7Dj+B,KAAKwkG,YAAY37F,IAAMoY,EAAIjhB,KAAK6D,QAAQo6B,KACxCj+B,KAAKwkG,YAAY77F,KAAOi1B,EAAI59B,KAAK6D,QAAQo6B,KACzCj+B,KAAKwkG,YAAY3yD,MAAQjU,EAAI59B,KAAK6D,QAAQo6B,KAC1Cj+B,KAAKwkG,YAAYl2D,OAASrtB,EAAIjhB,KAAK6D,QAAQo6B,KAE3Cj+B,KAAKynG,kBAAkB7pE,EAAG3c,GAC1BjhB,KAAKinG,YAAYhrB,KAAK1qC,EAAK3T,EAAG3c,EAAGsmD,MAGnC59D,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,GACnCjhB,KAAKwkG,YAAY37F,IAAMoY,EAAIjhB,KAAK6D,QAAQo6B,KACxCj+B,KAAKwkG,YAAY77F,KAAOi1B,EAAI59B,KAAK6D,QAAQo6B,KACzCj+B,KAAKwkG,YAAY3yD,MAAQjU,EAAI59B,KAAK6D,QAAQo6B,KAC1Cj+B,KAAKwkG,YAAYl2D,OAASrtB,EAAIjhB,KAAK6D,QAAQo6B,QAG7Ct0B,IAAK,mBACL5E,MAAO,SAA0BwsC,EAAKmZ,GAEpC,MADA1qD,MAAK0nG,OAAOn2D,GACQ,GAAbvxC,KAAKw+B,UAIT2tE,GACND,EAAsB,WAEzBtsG,GAAQ,WAAausG,EACrBtsG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcqkG,EAAgB1qG,EAAoB,IAEpC2qG,EAAiBh0B,EAAuB+zB,GAExC2B,EAAkB,SAAWxB,GAG/B,QAASwB,GAAgB1oG,EAASu7C,EAAM6nD,GACtCjwB,EAAgBh3E,KAAMusG,GAEtBpC,EAAK/iG,OAAOujG,eAAe4B,EAAgBt5F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GACtGjnG,KAAKwsG,YAAc,EACnBxsG,KAAKysG,aAAc,EAsIrB,MA7IA3C,GAAUyC,EAAiBxB,GAU3B3zB,EAAam1B,IACX5iG,IAAK,aACL5E,MAAO,SAAoBlB,EAASujG,GAClCpnG,KAAK6D,QAAUA,EACXujG,IACFpnG,KAAKonG,SAAWA,MAWpBz9F,IAAK,eACL5E,MAAO,WACL,GAAIwyD,IAAQ,CASZ,IARKv3D,KAAKonG,SAAS5oE,OAAUx+B,KAAKonG,SAAS3oE,OAGhCz+B,KAAKysG,eAAgB,IAC9BzsG,KAAKysG,aAAc,EACnBl1C,GAAQ,GAHRv3D,KAAKysG,aAAc,GAMhBzsG,KAAKw+B,QAAUx+B,KAAKy+B,QAAU84B,KAAU,EAAM,CAEjD,GAAI/4B,GAAOC,EAAQiuE,CACf1sG,MAAKonG,SAAS5oE,OAASx+B,KAAKonG,SAAS3oE,SAEvCD,EAAQ,EACRC,EAAS,GAEPz+B,KAAK6D,QAAQ0/F,gBAAgBE,gBAAiB,EAC5CzjG,KAAKonG,SAAS5oE,MAAQx+B,KAAKonG,SAAS3oE,QACtCiuE,EAAQ1sG,KAAKonG,SAAS5oE,MAAQx+B,KAAKonG,SAAS3oE,OAC5CD,EAA4B,EAApBx+B,KAAK6D,QAAQo6B,KAAWyuE,GAAS1sG,KAAKonG,SAAS5oE,MACvDC,EAA6B,EAApBz+B,KAAK6D,QAAQo6B,MAAYj+B,KAAKonG,SAAS3oE,SAI9CiuE,EAFE1sG,KAAKonG,SAAS5oE,OAASx+B,KAAKonG,SAAS3oE,OAE/Bz+B,KAAKonG,SAAS3oE,OAASz+B,KAAKonG,SAAS5oE,MAErC,EAEVA,EAA4B,EAApBx+B,KAAK6D,QAAQo6B,KACrBQ,EAA6B,EAApBz+B,KAAK6D,QAAQo6B,KAAWyuE,IAInCluE,EAAQx+B,KAAKonG,SAAS5oE,MACtBC,EAASz+B,KAAKonG,SAAS3oE,QAEzBz+B,KAAKw+B,MAAQA,EACbx+B,KAAKy+B,OAASA,EACdz+B,KAAK61C,OAAS,GAAM71C,KAAKw+B,UAI7B70B,IAAK,iBACL5E,MAAO,SAAwBwsC,EAAK3T,EAAG3c,EAAGsmD,EAAUn5D,EAAO6vB,GACzD,GAAI0uE,GAAqB3sG,KAAK6D,QAAQknC,YAClCmgE,EAAqBlrG,KAAK6D,QAAQ2+F,qBAAuB,EAAIxiG,KAAK6D,QAAQknC,YAC1EA,GAAew8B,EAAW2jC,EAAqByB,GAAsB3sG,KAAKo/C,KAAKw8C,KAAK52F,KACxFusC,GAAIO,UAAY7sC,KAAKL,IAAI5E,KAAKw+B,MAAOuM,GAErCwG,EAAIY,YAAco1B,EAAWvnE,KAAK6D,QAAQ4I,MAAM0B,UAAUD,OAASE,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMF,OAASlO,KAAK6D,QAAQ4I,MAAMyB,OAChIqjC,EAAIiB,UAAY+0B,EAAWvnE,KAAK6D,QAAQ4I,MAAM0B,UAAUF,WAAaG,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMH,WAAajO,KAAK6D,QAAQ4I,MAAMwB,WACtIsjC,EAAIm2C,OAAO9pD,EAAG3c,EAAGgd,GAGjBj+B,KAAKorG,aAAa75D,GAElBA,EAAI9J,OAEJznC,KAAKqrG,cAAc95D,GAGnBA,EAAI+5D,OAEAvgE,EAAc,IAChB/qC,KAAKurG,mBAAmBh6D,GAExBA,EAAI7J,SAEJ1nC,KAAKwrG,oBAAoBj6D,IAE3BA,EAAIk6D,aAGN9hG,IAAK,uBACL5E,MAAO,SAA8BwsC,GACR,GAAvBvxC,KAAKonG,SAAS5oE,QAEhB+S,EAAIq7D,YAAc,EAGlB5sG,KAAKorG,aAAa75D,GAGlBA,EAAIs7D,UAAU7sG,KAAKonG,SAAUpnG,KAAK2I,KAAM3I,KAAK6I,IAAK7I,KAAKw+B,MAAOx+B,KAAKy+B,QAGnEz+B,KAAKqrG,cAAc95D,OAIvB5nC,IAAK,kBACL5E,MAAO,SAAyBwsC,EAAK3T,EAAG3c,EAAGsmD,GACzC,GAAI5iC,GACAnd,EAAS,CAEb,IAAoBjhB,SAAhBvG,KAAKy+B,OAAsB,CAC7BjX,EAAuB,GAAdxnB,KAAKy+B,MACd,IAAIquE,GAAkB9sG,KAAKinG,YAAYgE,YAAY15D,EAC/Cu7D,GAAgBrD,WAAa,IAC/BjiF,GAAUslF,EAAgBruE,OAAS,GAIvCkG,EAAS1jB,EAAIuG,EAETxnB,KAAK6D,QAAQq6B,QACfl+B,KAAKwsG,YAAchlF,GAErBxnB,KAAKinG,YAAYhrB,KAAK1qC,EAAK3T,EAAG+G,EAAQ4iC,EAAU,eAI7CglC,GACN1B,EAAe,WAElBjrG,GAAQ,WAAa2sG,EACrB1sG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ;AAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxc0lG,EAAuB/rG,EAAoB,IAE3CgsG,EAAwBr1B,EAAuBo1B,GAE/Cc,EAAgB,SAAWX,GAG7B,QAASW,GAAclpG,EAASu7C,EAAM6nD,EAAaG,GACjDpwB,EAAgBh3E,KAAM+sG,GAEtB5C,EAAK/iG,OAAOujG,eAAeoC,EAAc95F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GACpGjnG,KAAKonG,SAAWA,EAChBpnG,KAAKgtG,mCAAoC,EAoE3C,MA3EAlD,GAAUiD,EAAeX,GAUzBh1B,EAAa21B,IACXpjG,IAAK,SACL5E,MAAO,WACL,GAA0BwB,SAAtBvG,KAAKonG,SAAShgD,KAA6C7gD,SAAxBvG,KAAKonG,SAAS5oE,OAAgDj4B,SAAzBvG,KAAKonG,SAAS3oE,QACxF,IAAKz+B,KAAKw+B,MAAO,CACf,GAAI6tE,GAA+B,EAApBrsG,KAAK6D,QAAQo6B,IAC5Bj+B,MAAKw+B,MAAQ6tE,EACbrsG,KAAKy+B,OAAS4tE,EACdrsG,KAAKgtG,mCAAoC,EACzChtG,KAAK61C,OAAS,GAAM71C,KAAKw+B,WAGvBx+B,MAAKgtG,oCACPhtG,KAAKw+B,MAAQj4B,OACbvG,KAAKy+B,OAASl4B,OACdvG,KAAKgtG,mCAAoC,GAE3ChtG,KAAKitG,kBAITtjG,IAAK,OACL5E,MAAO,SAAcwsC,EAAK3T,EAAG3c,EAAGsmD,EAAUn5D,GACxCpO,KAAK0nG,SAEL1nG,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,CAE7B,IAAIR,GAAOh5B,KAAKL,IAAI,GAAM5E,KAAKy+B,OAAQ,GAAMz+B,KAAKw+B,MAGlDx+B,MAAKssG,eAAe/6D,EAAK3T,EAAG3c,EAAGsmD,EAAUn5D,EAAO6vB,GAGhDsT,EAAI+5D,OAEJ/5D,EAAI27D,OAEJltG,KAAKmtG,qBAAqB57D,GAE1BA,EAAIk6D,UAEJzrG,KAAKotG,gBAAgB77D,EAAK3T,EAAG3c,EAAGsmD,GAEhCvnE,KAAKynG,kBAAkB7pE,EAAG3c,MAG5BtX,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,GACnCjhB,KAAKwkG,YAAY37F,IAAMoY,EAAIjhB,KAAK6D,QAAQo6B,KACxCj+B,KAAKwkG,YAAY77F,KAAOi1B,EAAI59B,KAAK6D,QAAQo6B,KACzCj+B,KAAKwkG,YAAY3yD,MAAQjU,EAAI59B,KAAK6D,QAAQo6B,KAC1Cj+B,KAAKwkG,YAAYl2D,OAASrtB,EAAIjhB,KAAK6D,QAAQo6B,KAC3Cj+B,KAAKwkG,YAAY77F,KAAO1D,KAAKL,IAAI5E,KAAKwkG,YAAY77F,KAAM3I,KAAKinG,YAAYhpE,KAAKt1B,MAC9E3I,KAAKwkG,YAAY3yD,MAAQ5sC,KAAKJ,IAAI7E,KAAKwkG,YAAY3yD,MAAO7xC,KAAKinG,YAAYhpE,KAAKt1B,KAAO3I,KAAKinG,YAAYhpE,KAAKO,OAC7Gx+B,KAAKwkG,YAAYl2D,OAASrpC,KAAKJ,IAAI7E,KAAKwkG,YAAYl2D,OAAQtuC,KAAKwkG,YAAYl2D,OAAStuC,KAAKwsG,gBAG7F7iG,IAAK,mBACL5E,MAAO,SAA0BwsC,EAAKmZ,GAEpC,MADA1qD,MAAK0nG,OAAOn2D,GACQ,GAAbvxC,KAAKw+B,UAITuuE,GACNb,EAAsB,WAEzBtsG,GAAQ,WAAamtG,EACrBltG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcqkG,EAAgB1qG,EAAoB,IAEpC2qG,EAAiBh0B,EAAuB+zB,GAExCyC,EAAW,SAAWtC,GAGxB,QAASsC,GAASxpG,EAASu7C,EAAM6nD,GAC/BjwB,EAAgBh3E,KAAMqtG,GAEtBlD,EAAK/iG,OAAOujG,eAAe0C,EAASp6F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GA0EjG,MA/EA6C,GAAUuD,EAAUtC,GAQpB3zB,EAAai2B,IACX1jG,IAAK,SACL5E,MAAO,SAAgBwsC,EAAKg2B,GAC1B,GAAmBhhE,SAAfvG,KAAKw+B,MAAqB,CAC5B,GAAI+F,GAAS,EACTymE,EAAWhrG,KAAKinG,YAAYgE,YAAY15D,EAAKg2B,GAC7CtpC,EAAO+sE,EAASxsE,MAAQ,EAAI+F,CAChCvkC,MAAKw+B,MAAQP,EACbj+B,KAAKy+B,OAASR,EACdj+B,KAAK61C,OAAS,GAAM71C,KAAKw+B,UAI7B70B,IAAK,OACL5E,MAAO,SAAcwsC,EAAK3T,EAAG3c,EAAGsmD,EAAUn5D,GACxCpO,KAAK0nG,OAAOn2D,EAAKg2B,GACjBvnE,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,CAE7B,IAAIkuE,GAAqB3sG,KAAK6D,QAAQknC,YAClCmgE,EAAqBlrG,KAAK6D,QAAQ2+F,qBAAuB,EAAIxiG,KAAK6D,QAAQknC,YAC1EA,GAAew8B,EAAW2jC,EAAqByB,GAAsB3sG,KAAKo/C,KAAKw8C,KAAK52F,KACxFusC,GAAIO,UAAY7sC,KAAKL,IAAI5E,KAAKw+B,MAAOuM,GAErCwG,EAAIY,YAAco1B,EAAWvnE,KAAK6D,QAAQ4I,MAAM0B,UAAUD,OAASE,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMF,OAASlO,KAAK6D,QAAQ4I,MAAMyB,OAEhIqjC,EAAIiB,UAAY+0B,EAAWvnE,KAAK6D,QAAQ4I,MAAM0B,UAAUF,WAAaG,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMH,WAAajO,KAAK6D,QAAQ4I,MAAMwB,WACtIsjC,EAAI+7D,SAAS1vE,EAAI59B,KAAKw+B,MAAQ,EAAGvd,EAAkB,GAAdjhB,KAAKy+B,OAAcz+B,KAAKw+B,MAAOx+B,KAAKy+B,QAGzEz+B,KAAKorG,aAAa75D,GAElBA,EAAI9J,OAEJznC,KAAKqrG,cAAc95D,GAGnBA,EAAI+5D,OAEAvgE,EAAc,IAChB/qC,KAAKurG,mBAAmBh6D,GAExBA,EAAI7J,SAEJ1nC,KAAKwrG,oBAAoBj6D,IAE3BA,EAAIk6D,UAEJzrG,KAAKynG,kBAAkB7pE,EAAG3c,EAAGswB,EAAKg2B,GAClCvnE,KAAKinG,YAAYhrB,KAAK1qC,EAAK3T,EAAG3c,EAAGsmD,MAGnC59D,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,EAAGswB,EAAKg2B,GAC3CvnE,KAAK0nG,OAAOn2D,EAAKg2B,GAEjBvnE,KAAK2I,KAAOi1B,EAAiB,GAAb59B,KAAKw+B,MACrBx+B,KAAK6I,IAAMoY,EAAkB,GAAdjhB,KAAKy+B,OAEpBz+B,KAAKwkG,YAAY77F,KAAO3I,KAAK2I,KAC7B3I,KAAKwkG,YAAY37F,IAAM7I,KAAK6I,IAC5B7I,KAAKwkG,YAAYl2D,OAAStuC,KAAK6I,IAAM7I,KAAKy+B,OAC1Cz+B,KAAKwkG,YAAY3yD,MAAQ7xC,KAAK2I,KAAO3I,KAAKw+B,SAG5C70B,IAAK,mBACL5E,MAAO,SAA0BwsC,EAAKmZ,GACpC,MAAO1qD,MAAKutG,kBAAkBh8D,EAAKmZ,OAIhC2iD,GACNxC,EAAe,WAElBjrG,GAAQ,WAAaytG,EACrBxtG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcinG,EAAiBttG,EAAoB,IAErCutG,EAAkB52B,EAAuB22B,GAEzCE,EAAU,SAAWC,GAGvB,QAASD,GAAQ7pG,EAASu7C,EAAM6nD,GAC9BjwB,EAAgBh3E,KAAM0tG,GAEtBvD,EAAK/iG,OAAOujG,eAAe+C,EAAQz6F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GAoBhG,MAzBA6C,GAAU4D,EAASC,GAQnBv2B,EAAas2B,IACX/jG,IAAK,SACL5E,MAAO,SAAgBwsC,GACrBvxC,KAAK4tG,kBAGPjkG,IAAK,OACL5E,MAAO,SAAcwsC,EAAK3T,EAAG3c,EAAGsmD,EAAUn5D,GACxCpO,KAAK6tG,WAAWt8D,EAAK,UAAW,EAAG3T,EAAG3c,EAAGsmD,EAAUn5D,MAGrDzE,IAAK,mBACL5E,MAAO,SAA0BwsC,EAAKmZ,GACpC,MAAO1qD,MAAKutG,kBAAkBh8D,EAAKmZ,OAIhCgjD,GACND,EAAgB,WAEnB7tG,GAAQ,WAAa8tG,EACrB7tG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcqkG,EAAgB1qG,EAAoB,IAEpC2qG,EAAiBh0B,EAAuB+zB,GAExCkD,EAAY,SAAW/C,GAGzB,QAAS+C,GAAUjqG,EAASu7C,EAAM6nD,GAChCjwB,EAAgBh3E,KAAM8tG,GAEtB3D,EAAK/iG,OAAOujG,eAAemD,EAAU76F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GAwElG,MA7EA6C,GAAUgE,EAAW/C,GAQrB3zB,EAAa02B,IACXnkG,IAAK,eACL5E,MAAO,WACL,GAAmBwB,SAAfvG,KAAKw+B,MAAqB,CAC5B,GAAIP,GAAO,EAAIj+B,KAAK6D,QAAQo6B,IAC5Bj+B,MAAKw+B,MAAQP,EACbj+B,KAAKy+B,OAASR,EACdj+B,KAAK61C,OAAS,GAAM71C,KAAKw+B,UAI7B70B,IAAK,aACL5E,MAAO,SAAoBwsC,EAAK+xD,EAAOyK,EAAgBnwE,EAAG3c,EAAGsmD,EAAUn5D,GACrEpO,KAAK4tG,eAEL5tG,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,CAE7B,IAAIkuE,GAAqB3sG,KAAK6D,QAAQknC,YAClCmgE,EAAqBlrG,KAAK6D,QAAQ2+F,qBAAuB,EAAIxiG,KAAK6D,QAAQknC,YAC1EA,GAAew8B,EAAW2jC,EAAqByB,GAAsB3sG,KAAKo/C,KAAKw8C,KAAK52F,KA0BxF,IAzBAusC,EAAIO,UAAY7sC,KAAKL,IAAI5E,KAAKw+B,MAAOuM,GAErCwG,EAAIY,YAAco1B,EAAWvnE,KAAK6D,QAAQ4I,MAAM0B,UAAUD,OAASE,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMF,OAASlO,KAAK6D,QAAQ4I,MAAMyB,OAChIqjC,EAAIiB,UAAY+0B,EAAWvnE,KAAK6D,QAAQ4I,MAAM0B,UAAUF,WAAaG,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMH,WAAajO,KAAK6D,QAAQ4I,MAAMwB,WACtIsjC,EAAI+xD,GAAO1lE,EAAG3c,EAAGjhB,KAAK6D,QAAQo6B,MAG9Bj+B,KAAKorG,aAAa75D,GAElBA,EAAI9J,OAEJznC,KAAKqrG,cAAc95D,GAGnBA,EAAI+5D,OAEAvgE,EAAc,IAChB/qC,KAAKurG,mBAAmBh6D,GAExBA,EAAI7J,SAEJ1nC,KAAKwrG,oBAAoBj6D,IAE3BA,EAAIk6D,UAEuBllG,SAAvBvG,KAAK6D,QAAQq6B,MAAqB,CACpC,GAAIyG,GAAS1jB,EAAI,GAAMjhB,KAAKy+B,OAAS,CACrCz+B,MAAKinG,YAAYhrB,KAAK1qC,EAAK3T,EAAG+G,EAAQ4iC,EAAU,WAGlDvnE,KAAKynG,kBAAkB7pE,EAAG3c,MAG5BtX,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,GACnCjhB,KAAKwkG,YAAY37F,IAAMoY,EAAIjhB,KAAK6D,QAAQo6B,KACxCj+B,KAAKwkG,YAAY77F,KAAOi1B,EAAI59B,KAAK6D,QAAQo6B,KACzCj+B,KAAKwkG,YAAY3yD,MAAQjU,EAAI59B,KAAK6D,QAAQo6B,KAC1Cj+B,KAAKwkG,YAAYl2D,OAASrtB,EAAIjhB,KAAK6D,QAAQo6B,KAEhB13B,SAAvBvG,KAAK6D,QAAQq6B,OAAuBl+B,KAAKinG,YAAYhpE,KAAKO,MAAQ,IACpEx+B,KAAKwkG,YAAY77F,KAAO1D,KAAKL,IAAI5E,KAAKwkG,YAAY77F,KAAM3I,KAAKinG,YAAYhpE,KAAKt1B,MAC9E3I,KAAKwkG,YAAY3yD,MAAQ5sC,KAAKJ,IAAI7E,KAAKwkG,YAAY3yD,MAAO7xC,KAAKinG,YAAYhpE,KAAKt1B,KAAO3I,KAAKinG,YAAYhpE,KAAKO,OAC7Gx+B,KAAKwkG,YAAYl2D,OAASrpC,KAAKJ,IAAI7E,KAAKwkG,YAAYl2D,OAAQtuC,KAAKwkG,YAAYl2D,OAAStuC,KAAKinG,YAAYhpE,KAAKQ,OAAS,QAKpHqvE,GACNjD,EAAe,WAElBjrG,GAAQ,WAAakuG,EACrBjuG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcinG,EAAiBttG,EAAoB,IAErCutG,EAAkB52B,EAAuB22B,GAEzCQ,EAAM,SAAWL,GAGnB,QAASK,GAAInqG,EAASu7C,EAAM6nD,GAC1BjwB,EAAgBh3E,KAAMguG,GAEtB7D,EAAK/iG,OAAOujG,eAAeqD,EAAI/6F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GAqB5F,MA1BA6C,GAAUkE,EAAKL,GAQfv2B,EAAa42B,IACXrkG,IAAK,SACL5E,MAAO,SAAgBwsC,GACrBvxC,KAAK4tG,kBAGPjkG,IAAK,OACL5E,MAAO,SAAcwsC,EAAK3T,EAAG3c,EAAGsmD,EAAUn5D,GACxCpO,KAAK6tG,WAAWt8D,EAAK,SAAU,EAAG3T,EAAG3c,EAAGsmD,EAAUn5D,MAGpDzE,IAAK,mBACL5E,MAAO,SAA0BwsC,EAAKmZ,GAEpC,MADA1qD,MAAK0nG,OAAOn2D,GACLvxC,KAAK6D,QAAQo6B,SAIjB+vE,GACNP,EAAgB,WAEnB7tG,GAAQ,WAAaouG,EACrBnuG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcqkG,EAAgB1qG,EAAoB,IAEpC2qG,EAAiBh0B,EAAuB+zB,GAExCqD,EAAU,SAAWlD,GAGvB,QAASkD,GAAQpqG,EAASu7C,EAAM6nD,GAC9BjwB,EAAgBh3E,KAAMiuG,GAEtB9D,EAAK/iG,OAAOujG,eAAesD,EAAQh7F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GAmFhG,MAxFA6C,GAAUmE,EAASlD,GAQnB3zB,EAAa62B,IACXtkG,IAAK,SACL5E,MAAO,SAAgBwsC,EAAKg2B,GAC1B,GAAmBhhE,SAAfvG,KAAKw+B,MAAqB,CAC5B,GAAIwsE,GAAWhrG,KAAKinG,YAAYgE,YAAY15D,EAAKg2B,EAEjDvnE,MAAKw+B,MAAyB,IAAjBwsE,EAASxsE,MACtBx+B,KAAKy+B,OAA2B,EAAlBusE,EAASvsE,OACnBz+B,KAAKw+B,MAAQx+B,KAAKy+B,SACpBz+B,KAAKw+B,MAAQx+B,KAAKy+B,QAEpBz+B,KAAK61C,OAAS,GAAM71C,KAAKw+B,UAI7B70B,IAAK,OACL5E,MAAO,SAAcwsC,EAAK3T,EAAG3c,EAAGsmD,EAAUn5D,GACxCpO,KAAK0nG,OAAOn2D,EAAKg2B,GACjBvnE,KAAK2I,KAAOi1B,EAAiB,GAAb59B,KAAKw+B,MACrBx+B,KAAK6I,IAAMoY,EAAkB,GAAdjhB,KAAKy+B,MAEpB,IAAIkuE,GAAqB3sG,KAAK6D,QAAQknC,YAClCmgE,EAAqBlrG,KAAK6D,QAAQ2+F,qBAAuB,EAAIxiG,KAAK6D,QAAQknC,YAC1EA,GAAew8B,EAAW2jC,EAAqByB,GAAsB3sG,KAAKo/C,KAAKw8C,KAAK52F,KACxFusC,GAAIO,UAAY7sC,KAAKL,IAAI5E,KAAKw+B,MAAOuM,GAErCwG,EAAIY,YAAco1B,EAAWvnE,KAAK6D,QAAQ4I,MAAM0B,UAAUD,OAASE,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMF,OAASlO,KAAK6D,QAAQ4I,MAAMyB,OAEhIqjC,EAAIiB,UAAY+0B,EAAWvnE,KAAK6D,QAAQ4I,MAAM0B,UAAUF,WAAaG,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMH,WAAajO,KAAK6D,QAAQ4I,MAAMwB,WACtIsjC,EAAI28D,QAAQluG,KAAK2I,KAAM3I,KAAK6I,IAAK7I,KAAKw+B,MAAOx+B,KAAKy+B,QAGlDz+B,KAAKorG,aAAa75D,GAElBA,EAAI9J,OAEJznC,KAAKqrG,cAAc95D,GAGnBA,EAAI+5D,OAGAvgE,EAAc,IAChB/qC,KAAKurG,mBAAmBh6D,GAExBA,EAAI7J,SAEJ1nC,KAAKwrG,oBAAoBj6D,IAG3BA,EAAIk6D,UAEJzrG,KAAKynG,kBAAkB7pE,EAAG3c,EAAGswB,EAAKg2B,GAClCvnE,KAAKinG,YAAYhrB,KAAK1qC,EAAK3T,EAAG3c,EAAGsmD,MAGnC59D,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,EAAGswB,EAAKg2B,GAC3CvnE,KAAK0nG,OAAOn2D,EAAKg2B,GAEjBvnE,KAAK2I,KAAOi1B,EAAiB,GAAb59B,KAAKw+B,MACrBx+B,KAAK6I,IAAMoY,EAAkB,GAAdjhB,KAAKy+B,OAEpBz+B,KAAKwkG,YAAY77F,KAAO3I,KAAK2I,KAC7B3I,KAAKwkG,YAAY37F,IAAM7I,KAAK6I,IAC5B7I,KAAKwkG,YAAYl2D,OAAStuC,KAAK6I,IAAM7I,KAAKy+B,OAC1Cz+B,KAAKwkG,YAAY3yD,MAAQ7xC,KAAK2I,KAAO3I,KAAKw+B,SAG5C70B,IAAK,mBACL5E,MAAO,SAA0BwsC,EAAKmZ,GACpC1qD,KAAK0nG,OAAOn2D,EACZ,IAAIrrC,GAAiB,GAAblG,KAAKw+B,MACTr4B,EAAkB,GAAdnG,KAAKy+B,OACT3a,EAAI7e,KAAKqkC,IAAIohB,GAASxkD,EACtBwH,EAAIzI,KAAKwkC,IAAIihB,GAASvkD,CAC1B,OAAOD,GAAIC,EAAIlB,KAAKw0C,KAAK31B,EAAIA,EAAIpW,EAAIA,OAIlCugG,GACNpD,EAAe,WAElBjrG,GAAQ,WAAaquG,EACrBpuG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcqkG,EAAgB1qG,EAAoB,IAEpC2qG,EAAiBh0B,EAAuB+zB,GAExCuD,EAAO,SAAWpD,GAGpB,QAASoD,GAAKtqG,EAASu7C,EAAM6nD,GAC3BjwB,EAAgBh3E,KAAMmuG,GAEtBhE,EAAK/iG,OAAOujG,eAAewD,EAAKl7F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GA+E7F,MApFA6C,GAAUqE,EAAMpD,GAQhB3zB,EAAa+2B,IACXxkG,IAAK,SACL5E,MAAO,SAAgBwsC,GACrB,GAAmBhrC,SAAfvG,KAAKw+B,MAAqB,CAC5B,GAAI+F,GAAS,EACT61D,GACF57D,MAAOn6B,OAAOrE,KAAK6D,QAAQgzF,KAAK54D,MAChCQ,OAAQp6B,OAAOrE,KAAK6D,QAAQgzF,KAAK54D,MAEnCj+B,MAAKw+B,MAAQ47D,EAAS57D,MAAQ,EAAI+F,EAClCvkC,KAAKy+B,OAAS27D,EAAS37D,OAAS,EAAI8F,EACpCvkC,KAAK61C,OAAS,GAAM71C,KAAKw+B,UAI7B70B,IAAK,OACL5E,MAAO,SAAcwsC,EAAK3T,EAAG3c,EAAGsmD,EAAUn5D,GAQxC,GAPApO,KAAK0nG,OAAOn2D,GACZvxC,KAAK6D,QAAQgzF,KAAK54D,KAAOj+B,KAAK6D,QAAQgzF,KAAK54D,MAAQ,GAEnDj+B,KAAK2I,KAAOi1B,EAAiB,GAAb59B,KAAKw+B,MACrBx+B,KAAK6I,IAAMoY,EAAkB,GAAdjhB,KAAKy+B,OACpBz+B,KAAKouG,MAAM78D,EAAK3T,EAAG3c,EAAGsmD,GAEKhhE,SAAvBvG,KAAK6D,QAAQq6B,MAAqB,CACpC,GAAImwE,GAAkB,CACtBruG,MAAKinG,YAAYhrB,KAAK1qC,EAAK3T,EAAG3c,EAAkB,GAAdjhB,KAAKy+B,OAAe4vE,EAAiB9mC,GAGzEvnE,KAAKynG,kBAAkB7pE,EAAG3c,MAG5BtX,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,GAMnC,GALAjhB,KAAKwkG,YAAY37F,IAAMoY,EAA6B,GAAzBjhB,KAAK6D,QAAQgzF,KAAK54D,KAC7Cj+B,KAAKwkG,YAAY77F,KAAOi1B,EAA6B,GAAzB59B,KAAK6D,QAAQgzF,KAAK54D,KAC9Cj+B,KAAKwkG,YAAY3yD,MAAQjU,EAA6B,GAAzB59B,KAAK6D,QAAQgzF,KAAK54D,KAC/Cj+B,KAAKwkG,YAAYl2D,OAASrtB,EAA6B,GAAzBjhB,KAAK6D,QAAQgzF,KAAK54D,KAErB13B,SAAvBvG,KAAK6D,QAAQq6B,OAAuBl+B,KAAKinG,YAAYhpE,KAAKO,MAAQ,EAAG,CACvE,GAAI6vE,GAAkB,CACtBruG,MAAKwkG,YAAY77F,KAAO1D,KAAKL,IAAI5E,KAAKwkG,YAAY77F,KAAM3I,KAAKinG,YAAYhpE,KAAKt1B,MAC9E3I,KAAKwkG,YAAY3yD,MAAQ5sC,KAAKJ,IAAI7E,KAAKwkG,YAAY3yD,MAAO7xC,KAAKinG,YAAYhpE,KAAKt1B,KAAO3I,KAAKinG,YAAYhpE,KAAKO,OAC7Gx+B,KAAKwkG,YAAYl2D,OAASrpC,KAAKJ,IAAI7E,KAAKwkG,YAAYl2D,OAAQtuC,KAAKwkG,YAAYl2D,OAAStuC,KAAKinG,YAAYhpE,KAAKQ,OAAS4vE,OAIzH1kG,IAAK,QACL5E,MAAO,SAAewsC,EAAK3T,EAAG3c,EAAGsmD,GAC/B,GAAI6yB,GAAW/1F,OAAOrE,KAAK6D,QAAQgzF,KAAK54D,KAET13B,UAA3BvG,KAAK6D,QAAQgzF,KAAKh/E,MACpB05B,EAAIQ,MAAQw1B,EAAW,QAAU,IAAM6yB,EAAW,MAAQp6F,KAAK6D,QAAQgzF,KAAK8L,KAG5EpxD,EAAIiB,UAAYxyC,KAAK6D,QAAQgzF,KAAKpqF,OAAS,QAC3C8kC,EAAIwB,UAAY,SAChBxB,EAAIyB,aAAe,SAGnBhzC,KAAKorG,aAAa75D,GAClBA,EAAI0B,SAASjzC,KAAK6D,QAAQgzF,KAAKh/E,KAAM+lB,EAAG3c,GAGxCjhB,KAAKqrG,cAAc95D,IAEnB5xB,QAAQ28D,MAAM,gIAIlB3yE,IAAK,mBACL5E,MAAO,SAA0BwsC,EAAKmZ,GACpC,MAAO1qD,MAAKutG,kBAAkBh8D,EAAKmZ,OAIhCyjD,GACNtD,EAAe,WAElBjrG,GAAQ,WAAauuG,EACrBtuG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxc0lG,EAAuB/rG,EAAoB,IAE3CgsG,EAAwBr1B,EAAuBo1B,GAE/CqC,EAAQ,SAAWlC,GAGrB,QAASkC,GAAMzqG,EAASu7C,EAAM6nD,EAAaG,GACzCpwB,EAAgBh3E,KAAMsuG,GAEtBnE,EAAK/iG,OAAOujG,eAAe2D,EAAMr7F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GAC5FjnG,KAAKonG,SAAWA,EA+ElB,MArFA0C,GAAUwE,EAAOlC,GASjBh1B,EAAak3B,IACX3kG,IAAK,SACL5E,MAAO,WACL/E,KAAKitG,kBAGPtjG,IAAK,OACL5E,MAAO,SAAcwsC,EAAK3T,EAAG3c,EAAGsmD,EAAUn5D,GAKxC,GAJApO,KAAK0nG,SACL1nG,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,EAEzBz+B,KAAK6D,QAAQ0/F,gBAAgBG,sBAAuB,EAAM,CAC5D,GAAIiJ,GAAqB3sG,KAAK6D,QAAQknC,YAClCmgE,EAAqBlrG,KAAK6D,QAAQ2+F,qBAAuB,EAAIxiG,KAAK6D,QAAQknC,YAC1EA,GAAew8B,EAAW2jC,EAAqByB,GAAsB3sG,KAAKo/C,KAAKw8C,KAAK52F,KACxFusC,GAAIO,UAAY7sC,KAAKL,IAAI5E,KAAKw+B,MAAOuM,GAErCwG,EAAIa,YAGJb,EAAIY,YAAco1B,EAAWvnE,KAAK6D,QAAQ4I,MAAM0B,UAAUD,OAASE,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMF,OAASlO,KAAK6D,QAAQ4I,MAAMyB,OAGhIqjC,EAAIiB,UAAY+0B,EAAWvnE,KAAK6D,QAAQ4I,MAAM0B,UAAUF,WAAaG,EAAQpO,KAAK6D,QAAQ4I,MAAM2B,MAAMH,WAAajO,KAAK6D,QAAQ4I,MAAMwB,WAGtIsjC,EAAI7S,KAAK1+B,KAAK2I,KAAO,GAAM4oC,EAAIO,UAAW9xC,KAAK6I,IAAM,GAAM0oC,EAAIO,UAAW9xC,KAAKw+B,MAAQ+S,EAAIO,UAAW9xC,KAAKy+B,OAAS8S,EAAIO,WACxHP,EAAI9J,OAGJ8J,EAAI+5D,OAEAvgE,EAAc,IAChB/qC,KAAKurG,mBAAmBh6D,GAExBA,EAAI7J,SAEJ1nC,KAAKwrG,oBAAoBj6D,IAE3BA,EAAIk6D,UAEJl6D,EAAIkB,YAGNzyC,KAAKmtG,qBAAqB57D,GAE1BvxC,KAAKotG,gBAAgB77D,EAAK3T,EAAG3c,EAAGsmD,GAAYn5D,GAE5CpO,KAAKynG,kBAAkB7pE,EAAG3c,MAG5BtX,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,GACnCjhB,KAAK0nG,SACL1nG,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,EAE7Bz+B,KAAKwkG,YAAY37F,IAAM7I,KAAK6I,IAC5B7I,KAAKwkG,YAAY77F,KAAO3I,KAAK2I,KAC7B3I,KAAKwkG,YAAY3yD,MAAQ7xC,KAAK2I,KAAO3I,KAAKw+B,MAC1Cx+B,KAAKwkG,YAAYl2D,OAAStuC,KAAK6I,IAAM7I,KAAKy+B,OAEfl4B,SAAvBvG,KAAK6D,QAAQq6B,OAAuBl+B,KAAKinG,YAAYhpE,KAAKO,MAAQ,IACpEx+B,KAAKwkG,YAAY77F,KAAO1D,KAAKL,IAAI5E,KAAKwkG,YAAY77F,KAAM3I,KAAKinG,YAAYhpE,KAAKt1B,MAC9E3I,KAAKwkG,YAAY3yD,MAAQ5sC,KAAKJ,IAAI7E,KAAKwkG,YAAY3yD,MAAO7xC,KAAKinG,YAAYhpE,KAAKt1B,KAAO3I,KAAKinG,YAAYhpE,KAAKO,OAC7Gx+B,KAAKwkG,YAAYl2D,OAASrpC,KAAKJ,IAAI7E,KAAKwkG,YAAYl2D,OAAQtuC,KAAKwkG,YAAYl2D,OAAStuC,KAAKwsG,iBAI/F7iG,IAAK,mBACL5E,MAAO,SAA0BwsC,EAAKmZ,GACpC,MAAO1qD,MAAKutG,kBAAkBh8D,EAAKmZ,OAIhC4jD,GACNpC,EAAsB,WAEzBtsG,GAAQ,WAAa0uG,EACrBzuG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcinG,EAAiBttG,EAAoB,IAErCutG,EAAkB52B,EAAuB22B,GAEzCe,EAAS,SAAWZ,GAGtB,QAASY,GAAO1qG,EAASu7C,EAAM6nD,GAC7BjwB,EAAgBh3E,KAAMuuG,GAEtBpE,EAAK/iG,OAAOujG,eAAe4D,EAAOt7F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GAoB/F,MAzBA6C,GAAUyE,EAAQZ,GAQlBv2B,EAAam3B,IACX5kG,IAAK,SACL5E,MAAO,WACL/E,KAAK4tG,kBAGPjkG,IAAK,OACL5E,MAAO,SAAcwsC,EAAK3T,EAAG3c,EAAGsmD,EAAUn5D,GACxCpO,KAAK6tG,WAAWt8D,EAAK,SAAU,EAAG3T,EAAG3c,EAAGsmD,EAAUn5D,MAGpDzE,IAAK,mBACL5E,MAAO,SAA0BwsC,EAAKmZ,GACpC,MAAO1qD,MAAKutG,kBAAkBh8D,EAAKmZ,OAIhC6jD,GACNd,EAAgB,WAEnB7tG,GAAQ,WAAa2uG,EACrB1uG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcinG,EAAiBttG,EAAoB,IAErCutG,EAAkB52B,EAAuB22B,GAEzCgB,EAAO,SAAWb,GAGpB,QAASa,GAAK3qG,EAASu7C,EAAM6nD,GAC3BjwB,EAAgBh3E,KAAMwuG,GAEtBrE,EAAK/iG,OAAOujG,eAAe6D,EAAKv7F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GAoB7F,MAzBA6C,GAAU0E,EAAMb,GAQhBv2B,EAAao3B,IACX7kG,IAAK,SACL5E,MAAO,SAAgBwsC,GACrBvxC,KAAK4tG,kBAGPjkG,IAAK,OACL5E,MAAO,SAAcwsC,EAAK3T,EAAG3c,EAAGsmD,EAAUn5D,GACxCpO,KAAK6tG,WAAWt8D,EAAK,OAAQ,EAAG3T,EAAG3c,EAAGsmD,EAAUn5D,MAGlDzE,IAAK,mBACL5E,MAAO,SAA0BwsC,EAAKmZ,GACpC,MAAO1qD,MAAKutG,kBAAkBh8D,EAAKmZ,OAIhC8jD,GACNf,EAAgB,WAEnB7tG,GAAQ,WAAa4uG,EACrB3uG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcqkG,EAAgB1qG,EAAoB,IAEpC2qG,EAAiBh0B,EAAuB+zB,GAExC6D,EAAO,SAAW1D,GAGpB,QAAS0D,GAAK5qG,EAASu7C,EAAM6nD,GAC3BjwB,EAAgBh3E,KAAMyuG,GAEtBtE,EAAK/iG,OAAOujG,eAAe8D,EAAKx7F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GAkD7F,MAvDA6C,GAAU2E,EAAM1D,GAQhB3zB,EAAaq3B,IACX9kG,IAAK,SACL5E,MAAO,SAAgBwsC,EAAKg2B,GAC1B,GAAmBhhE,SAAfvG,KAAKw+B,MAAqB,CAC5B,GAAI+F,GAAS,EACTymE,EAAWhrG,KAAKinG,YAAYgE,YAAY15D,EAAKg2B,EACjDvnE,MAAKw+B,MAAQwsE,EAASxsE,MAAQ,EAAI+F,EAClCvkC,KAAKy+B,OAASusE,EAASvsE,OAAS,EAAI8F,EACpCvkC,KAAK61C,OAAS,GAAM71C,KAAKw+B,UAI7B70B,IAAK,OACL5E,MAAO,SAAcwsC,EAAK3T,EAAG3c,EAAGsmD,EAAUn5D,GACxCpO,KAAK0nG,OAAOn2D,EAAKg2B,GAAYn5D,GAC7BpO,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,EAG7Bz+B,KAAKorG,aAAa75D,GAClBvxC,KAAKinG,YAAYhrB,KAAK1qC,EAAK3T,EAAG3c,EAAGsmD,GAAYn5D,GAG7CpO,KAAKqrG,cAAc95D,GAEnBvxC,KAAKynG,kBAAkB7pE,EAAG3c,EAAGswB,EAAKg2B,MAGpC59D,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,EAAGswB,EAAKg2B,GAC3CvnE,KAAK0nG,OAAOn2D,EAAKg2B,GAEjBvnE,KAAK2I,KAAOi1B,EAAI59B,KAAKw+B,MAAQ,EAC7Bx+B,KAAK6I,IAAMoY,EAAIjhB,KAAKy+B,OAAS,EAE7Bz+B,KAAKwkG,YAAY37F,IAAM7I,KAAK6I,IAC5B7I,KAAKwkG,YAAY77F,KAAO3I,KAAK2I,KAC7B3I,KAAKwkG,YAAY3yD,MAAQ7xC,KAAK2I,KAAO3I,KAAKw+B,MAC1Cx+B,KAAKwkG,YAAYl2D,OAAStuC,KAAK6I,IAAM7I,KAAKy+B,UAG5C90B,IAAK,mBACL5E,MAAO,SAA0BwsC,EAAKmZ,GACpC,MAAO1qD,MAAKutG,kBAAkBh8D,EAAKmZ,OAIhC+jD,GACN5D,EAAe,WAElBjrG,GAAQ,WAAa6uG,EACrB5uG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcinG,EAAiBttG,EAAoB,IAErCutG,EAAkB52B,EAAuB22B,GAEzCkB,EAAW,SAAWf,GAGxB,QAASe,GAAS7qG,EAASu7C,EAAM6nD,GAC/BjwB,EAAgBh3E,KAAM0uG,GAEtBvE,EAAK/iG,OAAOujG,eAAe+D,EAASz7F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GAoBjG,MAzBA6C,GAAU4E,EAAUf,GAQpBv2B,EAAas3B,IACX/kG,IAAK,SACL5E,MAAO,SAAgBwsC,GACrBvxC,KAAK4tG,kBAGPjkG,IAAK,OACL5E,MAAO,SAAcwsC,EAAK3T,EAAG3c,EAAGsmD,EAAUn5D,GACxCpO,KAAK6tG,WAAWt8D,EAAK,WAAY,EAAG3T,EAAG3c,EAAGsmD,EAAUn5D,MAGtDzE,IAAK,mBACL5E,MAAO,SAA0BwsC,EAAKmZ,GACpC,MAAO1qD,MAAKutG,kBAAkBh8D,EAAKmZ,OAIhCgkD,GACNjB,EAAgB,WAEnB7tG,GAAQ,WAAa8uG,EACrB7uG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcinG,EAAiBttG,EAAoB,IAErCutG,EAAkB52B,EAAuB22B,GAEzCmB,EAAe,SAAWhB,GAG5B,QAASgB,GAAa9qG,EAASu7C,EAAM6nD,GACnCjwB,EAAgBh3E,KAAM2uG,GAEtBxE,EAAK/iG,OAAOujG,eAAegE,EAAa17F,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GAoBrG,MAzBA6C,GAAU6E,EAAchB,GAQxBv2B,EAAau3B,IACXhlG,IAAK,SACL5E,MAAO,SAAgBwsC,GACrBvxC,KAAK4tG,kBAGPjkG,IAAK,OACL5E,MAAO,SAAcwsC,EAAK3T,EAAG3c,EAAGsmD,EAAUn5D,GACxCpO,KAAK6tG,WAAWt8D,EAAK,eAAgB,EAAG3T,EAAG3c,EAAGsmD,EAAUn5D,MAG1DzE,IAAK,mBACL5E,MAAO,SAA0BwsC,EAAKmZ,GACpC,MAAO1qD,MAAKutG,kBAAkBh8D,EAAKmZ,OAIhCikD,GACNlB,EAAgB,WAEnB7tG,GAAQ,WAAa+uG,EACrB9uG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCARhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hB03B,EAAkB1uG,EAAoB,IAEtC2uG,EAAmBh4B,EAAuB+3B,GAE1CxM,EAAyBliG,EAAoB,IAE7CmiG,EAA0BxrB,EAAuBurB,GAEjDzhG,EAAOT,EAAoB,GAC3BW,EAAUX,EAAoB,GAC9BY,EAAWZ,EAAoB,IAE/B4uG,EAAe,WACjB,QAASA,GAAa1vD,EAAM08C,EAAQp9C,GAClC,GAAIwD,GAAQliD,IAEZg3E,GAAgBh3E,KAAM8uG,GAEtB9uG,KAAKo/C,KAAOA,EACZp/C,KAAK87F,OAASA,EACd97F,KAAK0+C,OAASA,EAGd1+C,KAAKo/C,KAAKq8C,UAAUE,WAAa37F,KAAKoQ,OAAOmvC,KAAKv/C,MAElDA,KAAK+uG,gBACH9oF,IAAK,SAAanb,EAAO60B,GACvBuiB,EAAMj8B,IAAI0Z,EAAO19B,QAEnBi+B,OAAQ,SAAgBp1B,EAAO60B,GAC7BuiB,EAAMhiB,OAAOP,EAAO19B,QAEtB0/B,OAAQ,SAAgB72B,EAAO60B,GAC7BuiB,EAAMvgB,OAAOhC,EAAO19B,SAIxBjC,KAAK6D,WACL7D,KAAK4+C,gBACHowD,QACE75F,IAAMtE,SAAS,EAAOo+F,YAAa,GACnC19F,QAAUV,SAAS,EAAOo+F,YAAa,GACvC75F,MAAQvE,SAAS,EAAOo+F,YAAa,IAEvCC,oBAAoB,EACpBziG,OACEA,MAAO,UACP0B,UAAW,UACXC,MAAO,UACP83C,QAAS,OACTx5C,QAAS,GAEXs/F,QAAQ,EACRj6D,MACEtlC,MAAO,UACPwxB,KAAM,GACN0kE,KAAM,QACN10F,WAAY,OACZ05B,YAAa,EACbi7D,YAAa,UACblgC,MAAO,cAET1F,QAAQ,EACRmyC,WAAY,IACZjxE,MAAO33B,OACPu8F,oBAAoB,EACpBx8F,OAAQC,OACR21E,SAAS,EACT+mB,SACEr+F,IAAK,EACLC,IAAK,GACLq5B,OACErtB,SAAS,EACTjM,IAAK,GACLC,IAAK,GACLq+F,WAAY,GACZC,cAAe,GAEjBC,sBAAuB,SAA+Bx+F,EAAKC,EAAKC,EAAOC,GACrE,GAAIF,IAAQD,EACV,MAAO,EAEP,IAAII,GAAQ,GAAKH,EAAMD,EACvB,OAAOK,MAAKJ,IAAI,GAAIE,EAAQH,GAAOI,KAIzCoqG,eAAgB,IAChBC,kBAAmB,GACnBhM,QACExyF,SAAS,EACTpE,MAAO,kBACPwxB,KAAM,GACNL,EAAG,EACH3c,EAAG,GAELquF,QACEz+F,SAAS,EACTjJ,KAAM,UACN2nG,eAAgB,OAChBC,UAAW,IAEb9uC,MAAOn6D,OACPi4B,MAAO,EACPz5B,MAAOwB,QAGT5F,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK4+C,gBAE/B5+C,KAAK67F,qBAuTP,MApTAzkB,GAAa03B,IACXnlG,IAAK,qBACL5E,MAAO,WACL,GAAI20E,GAAS15E,IAGbA,MAAKo/C,KAAKE,QAAQlgB,GAAG,6BAA8B,SAAUx3B,GAC9C,YAATA,IACFA,EAAO,aAET,IAAI6nG,IAAa,CACjB,KAAK,GAAI9Q,KAAUjlB,GAAOt6B,KAAKy7C,MAC7B,GAAInhB,EAAOt6B,KAAKy7C,MAAM70F,eAAe24F,GAAS,CAC5C,GAAIyC,GAAO1nB,EAAOt6B,KAAKy7C,MAAM8D,GACzB+Q,EAAWh2B,EAAOt6B,KAAKpnC,KAAK6iF,MAAMxzE,MAAMs3E,EAI5C,IAAiBp4F,SAAbmpG,EAAwB,CAC1B,GAAIC,GAAcD,EAASJ,MACP/oG,UAAhBopG,GACEA,EAAY9+F,WAAY,GAA6B,YAArB8+F,EAAY/nG,OACjCrB,SAATqB,EACFw5F,EAAKpiE,YAAaswE,QAAQ,IAE1BlO,EAAKpiE,YAAaswE,QAAU1nG,KAAMA,KAEpC6nG,GAAa,IAMnBA,KAAe,GACjB/1B,EAAOt6B,KAAKE,QAAQzH,KAAK,kBAK7B73C,KAAKo/C,KAAKE,QAAQlgB,GAAG,eAAgB,WACnCs6C,EAAOk2B,iBACPl2B,EAAOm2B,wBAIT7vG,KAAKo/C,KAAKE,QAAQlgB,GAAG,eAAgBp/B,KAAK0jC,QAAQ6b,KAAKv/C,OACvDA,KAAKo/C,KAAKE,QAAQlgB,GAAG,UAAWp/B,KAAK0jC,QAAQ6b,KAAKv/C,OAClDA,KAAKo/C,KAAKE,QAAQlgB,GAAG,UAAW,WAC9Bz+B,EAAK2I,QAAQowE,EAAOq1B,eAAgB,SAAUxlG,EAAUuB,GAClD4uE,EAAOt6B,KAAKpnC,KAAK6iF,OAAOnhB,EAAOt6B,KAAKpnC,KAAK6iF,MAAMt7D,IAAIz0B,EAAOvB,WAEzDmwE,GAAOt6B,KAAKq8C,UAAUE,iBACtBjiB,GAAOq1B,eAAe9oF,UACtByzD,GAAOq1B,eAAe7uE,aACtBw5C,GAAOq1B,eAAeptE,aACtB+3C,GAAOq1B,oBAIlBplG,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAgB0C,SAAZ1C,EAAuB,CAEzBgrG,EAAiB,WAAWlL,aAAa3jG,KAAK6D,QAASA,GAGjC0C,SAAlB1C,EAAQ4I,OACVzM,KAAK6vG,qBAIP,IAAIzL,IAAc,CAClB,IAAuB79F,SAAnB1C,EAAQyrG,OACV,IAAK,GAAI3Q,KAAU3+F,MAAKo/C,KAAKy7C,MACvB76F,KAAKo/C,KAAKy7C,MAAM70F,eAAe24F,KACjCyF,EAAcpkG,KAAKo/C,KAAKy7C,MAAM8D,GAAQmR,kBAAoB1L,EAMhE,IAAqB79F,SAAjB1C,EAAQkuC,KAAoB,CAE9BswD,EAAwB,WAAWsB,aAAa3jG,KAAK6D,QAAQkuC,KAAMluC,EACnE,KAAK,GAAI86F,KAAU3+F,MAAKo/C,KAAKy7C,MACvB76F,KAAKo/C,KAAKy7C,MAAM70F,eAAe24F,IACjC3+F,KAAKo/C,KAAKy7C,MAAM8D,GAAQkF,qBAMPt9F,SAAnB1C,EAAQm5D,QAA4Cz2D,SAApB1C,EAAQq4E,SAAyBkoB,KAAgB,IACnFpkG,KAAKo/C,KAAKE,QAAQzH,KAAK,oBAY7BluC,IAAK,UACL5E,MAAO,SAAiB81F,GACtB,GAAIrgB,GAASx6E,KAET+jG,EAAY19F,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpF0pG,EAAe/vG,KAAKo/C,KAAKpnC,KAAK6iF,KAElC,IAAIA,YAAiBh6F,IAAWg6F,YAAiB/5F,GAC/Cd,KAAKo/C,KAAKpnC,KAAK6iF,MAAQA,MAClB,IAAI/zF,MAAMC,QAAQ8zF,GACvB76F,KAAKo/C,KAAKpnC,KAAK6iF,MAAQ,GAAIh6F,GAC3Bb,KAAKo/C,KAAKpnC,KAAK6iF,MAAM50E,IAAI40E,OACpB,CAAA,GAAKA,EAGV,KAAM,IAAI3zF,WAAU,4BAFpBlH,MAAKo/C,KAAKpnC,KAAK6iF,MAAQ,GAAIh6F,GAiB7B,GAXIkvG,GAEFpvG,EAAK2I,QAAQtJ,KAAK+uG,eAAgB,SAAUxlG,EAAUuB,GACpDilG,EAAaxwE,IAAIz0B,EAAOvB,KAK5BvJ,KAAKo/C,KAAKy7C,SAGN76F,KAAKo/C,KAAKpnC,KAAK6iF,MAAO,CAExBl6F,EAAK2I,QAAQtJ,KAAK+uG,eAAgB,SAAUxlG,EAAUuB,GACpD0vE,EAAOp7B,KAAKpnC,KAAK6iF,MAAMz7D,GAAGt0B,EAAOvB,IAInC,IAAIk3B,GAAMzgC,KAAKo/C,KAAKpnC,KAAK6iF,MAAMz5D,QAC/BphC,MAAKimB,IAAIwa,GAAK,GAGZsjE,KAAc,GAChB/jG,KAAKo/C,KAAKE,QAAQzH,KAAK,mBAU3BluC,IAAK,MACL5E,MAAO,SAAa07B,GAMlB,IAAK,GALDsjE,GAAY19F,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpFw0F,EAAQ76F,KAAKo/C,KAAKy7C,MAClBmV,EAAYhwG,KAAKo/C,KAAKpnC,KAAK6iF,MAEtBp0F,EAAI,EAAGA,EAAIg6B,EAAIn6B,OAAQG,IAAK,CACnC,GAAIpG,GAAKogC,EAAIh6B,GAETwpG,EAAUpV,EAAMx6F,EAChB4vG,IACFA,EAAQC,YAGV,IAAIl4F,GAAOg4F,EAAUh5E,IAAI32B,GAAM8vG,iBAAmB,GAClDtV,GAAMx6F,GAAML,KAAKoQ,OAAO4H,GAGtB+rF,KAAc,GAChB/jG,KAAKo/C,KAAKE,QAAQzH,KAAK,mBAU3BluC,IAAK,SACL5E,MAAO,SAAgB07B,GAIrB,IAAK,GAHDo6D,GAAQ76F,KAAKo/C,KAAKy7C,MAClBmV,EAAYhwG,KAAKo/C,KAAKpnC,KAAK6iF,MAC3BuJ,GAAc,EACT39F,EAAI,EAAGA,EAAIg6B,EAAIn6B,OAAQG,IAAK,CACnC,GAAIpG,GAAKogC,EAAIh6B,GACTuR,EAAOg4F,EAAUh5E,IAAI32B,GACrB+gG,EAAOvG,EAAMx6F,EACJkG,UAAT66F,GAEFA,EAAK8O,aACL9L,EAAchD,EAAKpiE,WAAWhnB,IAASosF,EACvChD,EAAKgP,YAGLpwG,KAAKo/C,KAAKy7C,MAAMx6F,GAAML,KAAKoQ,OAAO4H,GAClCosF,GAAc,GAIdA,KAAgB,EAClBpkG,KAAKo/C,KAAKE,QAAQzH,KAAK,gBAEvB73C,KAAKo/C,KAAKE,QAAQzH,KAAK,mBAU3BluC,IAAK,SACL5E,MAAO,SAAgB07B,GAErB,IAAK,GADDo6D,GAAQ76F,KAAKo/C,KAAKy7C,MACbp0F,EAAI,EAAGA,EAAIg6B,EAAIn6B,OAAQG,IAAK,CACnC,GAAIpG,GAAKogC,EAAIh6B,GACT26F,EAAOvG,EAAMx6F,EACJkG,UAAT66F,IACFA,EAAKiP,UACLjP,EAAK8O,mBACErV,GAAMx6F,IAIjBL,KAAKo/C,KAAKE,QAAQzH,KAAK,mBAGzBluC,IAAK,UACL5E,MAAO,WACL,GAAI81F,GAAQ76F,KAAKo/C,KAAKy7C,KACtB,KAAK,GAAI8D,KAAU9D,GAAO,CACxB,GAAIuG,GAAO76F,MACPs0F,GAAM70F,eAAe24F,KACvByC,EAAOvG,EAAM8D,GAEf,IAAI3mF,GAAOhY,KAAKo/C,KAAKpnC,KAAK6iF,MAAMxzE,MAAMs3E,EACzBp4F,UAAT66F,GAA+B76F,SAATyR,GACxBopF,EAAKpiE,WAAWhnB,OAKtBrO,IAAK,SACL5E,MAAO,SAAgBqhD,GACrB,MAAO,IAAIyoD,GAAiB,WAAWzoD,EAAYpmD,KAAKo/C,KAAMp/C,KAAK6D,YAGrE8F,IAAK,sBACL5E,MAAO,WACL,IAAK,GAAI45F,KAAU3+F,MAAKo/C,KAAKy7C,MAC3B76F,KAAKo/C,KAAKy7C,MAAM8D,GAAQ2R,SAASC,YAAa,KASlD5mG,IAAK,iBACL5E,MAAO,WACL,GAAI1E,GACAs6F,EAAQ36F,KAAKo/C,KAAKu7C,MAClBE,EAAQ76F,KAAKo/C,KAAKy7C,KAEtB,KAAKx6F,IAAMs6F,GACLA,EAAM30F,eAAe3F,KACvBs6F,EAAMt6F,GAAIw6F;AAId,IAAKx6F,IAAMw6F,GACT,GAAIA,EAAM70F,eAAe3F,GAAK,CAC5B,GAAI+gG,GAAOvG,EAAMx6F,EACjB+gG,GAAKhsF,KAAO,KACZgsF,EAAKjsF,GAAK,KACVisF,EAAKgP,cAKXzmG,IAAK,oBACL5E,MAAO,SAA2B45F,GAChC,GAAI8F,KACJ,IAAgCl+F,SAA5BvG,KAAKo/C,KAAKy7C,MAAM8D,GAAuB,CACzC,GAAIyC,GAAOphG,KAAKo/C,KAAKy7C,MAAM8D,EACvByC,GAAKwD,QACPH,EAASj9F,KAAK45F,EAAKwD,QAEjBxD,EAAKuD,MACPF,EAASj9F,KAAK45F,EAAKuD,MAGvB,MAAOF,OAIJqK,IAGTlvG,GAAQ,WAAakvG,EACrBjvG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCARhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hB4tB,EAAe5kG,EAAoB,IAEnC6kG,EAAgBluB,EAAuBiuB,GAEvC0L,EAAwBtwG,EAAoB,IAE5CuwG,EAAyB55B,EAAuB25B,GAEhDE,EAA0BxwG,EAAoB,IAE9CywG,EAA2B95B,EAAuB65B,GAElDE,EAAyB1wG,EAAoB,IAE7C2wG,EAA0Bh6B,EAAuB+5B,GAEjDE,EAAqB5wG,EAAoB,IAEzC6wG,EAAsBl6B,EAAuBi6B,GAiB7CnwG,EAAOT,EAAoB,GAE3B8wG,EAAO,WACT,QAASA,GAAKntG,EAASu7C,EAAMxuC,GAG3B,GAFAomE,EAAgBh3E,KAAMgxG,GAETzqG,SAAT64C,EACF,KAAM,kBAERp/C,MAAK6D,QAAUlD,EAAK0P,aAAaO,GACjC5Q,KAAK4Q,cAAgBA,EACrB5Q,KAAKo/C,KAAOA,EAGZp/C,KAAKK,GAAKkG,OACVvG,KAAK4kG,OAASr+F,OACdvG,KAAK2kG,KAAOp+F,OACZvG,KAAKunE,UAAW,EAChBvnE,KAAKoO,OAAQ,EACbpO,KAAK0oG,YAAa,EAClB1oG,KAAKuwG,YAAa,EAElBvwG,KAAKixG,UAAYjxG,KAAK6D,QAAQ26B,MAC9Bx+B,KAAK+mG,aAAe/mG,KAAK6D,QAAQkuC,KAAK9T,KAEtCj+B,KAAKoV,KAAO7O,OACZvG,KAAKmV,GAAK5O,OAEVvG,KAAKswG,SAAW/pG,OAEhBvG,KAAKkxG,WAAY,EAEjBlxG,KAAKinG,YAAc,GAAIlC,GAAc,WAAW/kG,KAAKo/C,KAAMp/C,KAAK6D,SAEhE7D,KAAKg/B,WAAWn7B,GA6flB,MApfAuzE,GAAa45B,IACXrnG,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAKA,EAAL,CAGA7D,KAAKuwG,YAAa,EAElBS,EAAKrN,aAAa3jG,KAAK6D,QAASA,GAAS,EAAM7D,KAAK4Q,eAEjCrK,SAAf1C,EAAQxD,KACVL,KAAKK,GAAKwD,EAAQxD,IAECkG,SAAjB1C,EAAQuR,OACVpV,KAAK4kG,OAAS/gG,EAAQuR,MAEL7O,SAAf1C,EAAQsR,KACVnV,KAAK2kG,KAAO9gG,EAAQsR,IAEA5O,SAAlB1C,EAAQ68D,QACV1gE,KAAK0gE,MAAQ78D,EAAQ68D,OAEDn6D,SAAlB1C,EAAQkB,QACVlB,EAAQkB,MAAQqlB,WAAWvmB,EAAQkB,QAIrC/E,KAAK6jG,mBAEL,IAAIO,GAAcpkG,KAAK8vG,gBAYvB,OATA9vG,MAAKmxG,wBAGLnxG,KAAKowG,WAEkB7pG,SAAnB1C,EAAQm5D,QAA4Cz2D,SAApB1C,EAAQq4E,WAC1CkoB,GAAc,GAGTA,MAGTz6F,IAAK,oBAML5E,MAAO,WACL/E,KAAKinG,YAAYjoE,WAAWh/B,KAAK6D,SAAS,GACR0C,SAA9BvG,KAAKinG,YAAYH,WACnB9mG,KAAK+mG,aAAe/mG,KAAKinG,YAAYH,aASzCn9F,IAAK,iBACL5E,MAAO,WACL,GAAIq/F,IAAc,EACdgN,GAAe,EACf9B,EAAStvG,KAAK6D,QAAQyrG,MAsC1B,OArCsB/oG,UAAlBvG,KAAKswG,WACHtwG,KAAKswG,mBAAoBK,GAAyB,YAAcrB,EAAOz+F,WAAY,GAAwB,YAAhBy+F,EAAO1nG,OACpGwpG,GAAe,GAEbpxG,KAAKswG,mBAAoBG,GAAuB,YAAcnB,EAAOz+F,WAAY,GAAwB,gBAAhBy+F,EAAO1nG,OAClGwpG,GAAe,GAEbpxG,KAAKswG,mBAAoBO,GAAwB,YAAcvB,EAAOz+F,WAAY,GAAwB,YAAhBy+F,EAAO1nG,MAAsC,gBAAhB0nG,EAAO1nG,OAChIwpG,GAAe,GAEbpxG,KAAKswG,mBAAoBS,GAAoB,YAAczB,EAAOz+F,WAAY,IAChFugG,GAAe,GAGbA,KAAiB,IACnBhN,EAAcpkG,KAAKqwG,YAInBe,KAAiB,EACfpxG,KAAK6D,QAAQyrG,OAAOz+F,WAAY,EACD,YAA7B7Q,KAAK6D,QAAQyrG,OAAO1nG,MACtBw8F,GAAc,EACdpkG,KAAKswG,SAAW,GAAIK,GAAyB,WAAW3wG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,cAChD,gBAA7BjnG,KAAK6D,QAAQyrG,OAAO1nG,KAC7B5H,KAAKswG,SAAW,GAAIG,GAAuB,WAAWzwG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,aAEpFjnG,KAAKswG,SAAW,GAAIO,GAAwB,WAAW7wG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,aAGvFjnG,KAAKswG,SAAW,GAAIS,GAAoB,WAAW/wG,KAAK6D,QAAS7D,KAAKo/C,KAAMp/C,KAAKinG,aAInFjnG,KAAKswG,SAAStxE,WAAWh/B,KAAK6D,SAGzBugG,KAOTz6F,IAAK,UACL5E,MAAO,WACL/E,KAAKkwG,aAELlwG,KAAKoV,KAAOpV,KAAKo/C,KAAKu7C,MAAM36F,KAAK4kG,SAAWr+F,OAC5CvG,KAAKmV,GAAKnV,KAAKo/C,KAAKu7C,MAAM36F,KAAK2kG,OAASp+F,OACxCvG,KAAKkxG,UAA0B3qG,SAAdvG,KAAKoV,MAAkC7O,SAAZvG,KAAKmV,GAE7CnV,KAAKkxG,aAAc,GACrBlxG,KAAKoV,KAAKi8F,WAAWrxG,MACrBA,KAAKmV,GAAGk8F,WAAWrxG,QAEfA,KAAKoV,MACPpV,KAAKoV,KAAKk8F,WAAWtxG,MAEnBA,KAAKmV,IACPnV,KAAKmV,GAAGm8F,WAAWtxG,OAIvBA,KAAKswG,SAASF,aAOhBzmG,IAAK,aACL5E,MAAO,WACD/E,KAAKoV,OACPpV,KAAKoV,KAAKk8F,WAAWtxG,MACrBA,KAAKoV,KAAO7O,QAEVvG,KAAKmV,KACPnV,KAAKmV,GAAGm8F,WAAWtxG,MACnBA,KAAKmV,GAAK5O,QAGZvG,KAAKkxG,WAAY,KASnBvnG,IAAK,WACL5E,MAAO,WACL,MAAO/E,MAAK0gE,SAQd/2D,IAAK,aACL5E,MAAO,WACL,MAAO/E,MAAKunE,YAQd59D,IAAK,WACL5E,MAAO,WACL,MAAO/E,MAAK6D,QAAQkB,SAWtB4E,IAAK,gBACL5E,MAAO,SAAuBH,EAAKC,EAAKC,GACtC,GAA2ByB,SAAvBvG,KAAK6D,QAAQkB,MAAqB,CACpC,GAAIC,GAAQhF,KAAK6D,QAAQo/F,QAAQG,sBAAsBx+F,EAAKC,EAAKC,EAAO9E,KAAK6D,QAAQkB,OACjFwsG,EAAYvxG,KAAK6D,QAAQo/F,QAAQp+F,IAAM7E,KAAK6D,QAAQo/F,QAAQr+F,GAChE,IAAI5E,KAAK6D,QAAQo/F,QAAQ/kE,MAAMrtB,WAAY,EAAM,CAC/C,GAAI22F,GAAWxnG,KAAK6D,QAAQo/F,QAAQ/kE,MAAMr5B,IAAM7E,KAAK6D,QAAQo/F,QAAQ/kE,MAAMt5B,GAC3E5E,MAAK6D,QAAQkuC,KAAK9T,KAAOj+B,KAAK6D,QAAQo/F,QAAQ/kE,MAAMt5B,IAAMI,EAAQwiG,EAEpExnG,KAAK6D,QAAQ26B,MAAQx+B,KAAK6D,QAAQo/F,QAAQr+F,IAAMI,EAAQusG,MAExDvxG,MAAK6D,QAAQ26B,MAAQx+B,KAAKixG,UAC1BjxG,KAAK6D,QAAQkuC,KAAK9T,KAAOj+B,KAAK+mG,YAGhC/mG,MAAKmxG,wBACLnxG,KAAK6jG,uBAGPl6F,IAAK,wBACL5E,MAAO,WACkC,kBAA5B/E,MAAK6D,QAAQsrG,WACtBnvG,KAAKswG,SAASnB,WAAanvG,KAAK6D,QAAQsrG,WAAWnvG,KAAK6D,QAAQ26B,OAEhEx+B,KAAKswG,SAASnB,WAAanvG,KAAK6D,QAAQsrG,WAAanvG,KAAK6D,QAAQ26B,MAGzB,kBAAhCx+B,MAAK6D,QAAQurG,eACtBpvG,KAAKswG,SAASlB,eAAiBpvG,KAAK6D,QAAQurG,eAAepvG,KAAK6D,QAAQ26B,OAExEx+B,KAAKswG,SAASlB,eAAiBpvG,KAAK6D,QAAQurG,eAAiBpvG,KAAK6D,QAAQ26B,SAW9E70B,IAAK,OACL5E,MAAO,SAAcwsC,GAEnB,GAAIigE,GAAUxxG,KAAKswG,SAASmB,aACxBC,IAGJ1xG,MAAKswG,SAASqB,UAAY3xG,KAAKoV,KAC/BpV,KAAKswG,SAASsB,QAAU5xG,KAAKmV,GAGzBnV,KAAK6D,QAAQmrG,OAAO55F,KAAKvE,WAAY,IACvC6gG,EAAUt8F,KAAOpV,KAAKswG,SAASuB,aAAatgE,EAAK,OAAQigE,EAASxxG,KAAKunE,SAAUvnE,KAAKoO,OAClFpO,KAAK6D,QAAQqrG,sBAAuB,IAAOlvG,KAAKswG,SAASqB,UAAYD,EAAUt8F,KAAK08F,OAEtF9xG,KAAK6D,QAAQmrG,OAAO75F,GAAGtE,WAAY,IACrC6gG,EAAUv8F,GAAKnV,KAAKswG,SAASuB,aAAatgE,EAAK,KAAMigE,EAASxxG,KAAKunE,SAAUvnE,KAAKoO,OAC9EpO,KAAK6D,QAAQqrG,sBAAuB,IAAOlvG,KAAKswG,SAASsB,QAAUF,EAAUv8F,GAAG28F,OAIlF9xG,KAAK6D,QAAQmrG,OAAOz9F,OAAOV,WAAY,IACzC6gG,EAAUngG,OAASvR,KAAKswG,SAASuB,aAAatgE,EAAK,SAAUigE,EAASxxG,KAAKunE,SAAUvnE,KAAKoO,QAI5FpO,KAAKswG,SAASyB,SAASxgE,EAAKvxC,KAAKunE,SAAUvnE,KAAKoO,MAAOojG,GACvDxxG,KAAKgyG,WAAWzgE,EAAKmgE,GACrB1xG,KAAKiyG,UAAU1gE,EAAKigE,MAGtB7nG,IAAK,aACL5E,MAAO,SAAoBwsC,EAAKmgE,GAC1B1xG,KAAK6D,QAAQmrG,OAAO55F,KAAKvE,WAAY,GACvC7Q,KAAKswG,SAAS4B,cAAc3gE,EAAKvxC,KAAKunE,SAAUvnE,KAAKoO,MAAOsjG,EAAUt8F,MAEpEpV,KAAK6D,QAAQmrG,OAAOz9F,OAAOV,WAAY,GACzC7Q,KAAKswG,SAAS4B,cAAc3gE,EAAKvxC,KAAKunE,SAAUvnE,KAAKoO,MAAOsjG,EAAUngG,QAEpEvR,KAAK6D,QAAQmrG,OAAO75F,GAAGtE,WAAY,GACrC7Q,KAAKswG,SAAS4B,cAAc3gE,EAAKvxC,KAAKunE,SAAUvnE,KAAKoO,MAAOsjG,EAAUv8F,OAI1ExL,IAAK,YACL5E,MAAO,SAAmBwsC,EAAKigE,GAC7B,GAA2BjrG,SAAvBvG,KAAK6D,QAAQq6B,MAAqB,CAEpC,GAAIi0E,GAAQnyG,KAAKoV,KACbg9F,EAAQpyG,KAAKmV,GACboyD,EAAWvnE,KAAKoV,KAAKmyD,UAAYvnE,KAAKmV,GAAGoyD,UAAYvnE,KAAKunE,QAC9D,IAAI4qC,EAAM9xG,IAAM+xG,EAAM/xG,GAAI,CACxBL,KAAKinG,YAAYqB,aAAc,CAC/B,IAAIvqE,GAAQ/9B,KAAKswG,SAAS+B,SAAS,GAAKb,EACxCjgE,GAAI+5D,OAG4B,eAA5BtrG,KAAK6D,QAAQkuC,KAAK2wB,QACpB1iE,KAAKinG,YAAY4B,mBAAmBt3D,EAAKg2B,EAAUxpC,EAAMH,EAAGG,EAAM9c,GAClEswB,EAAI+gE,UAAUv0E,EAAMH,EAAG59B,KAAKinG,YAAYhpE,KAAKuqE,OAC7CxoG,KAAKuyG,yBAAyBhhE,IAIhCvxC,KAAKinG,YAAYhrB,KAAK1qC,EAAKxT,EAAMH,EAAGG,EAAM9c,EAAGsmD,GAC7Ch2B,EAAIk6D,cACC,CAELzrG,KAAKinG,YAAYqB,aAAc,CAC/B,IAAI1qE,GAAG3c,EACH40B,EAAS71C,KAAK6D,QAAQwrG,iBACtB8C,GAAM7O,MAAM9kE,MAAQ2zE,EAAM7O,MAAM7kE,QAClCb,EAAIu0E,EAAMv0E,EAAwB,GAApBu0E,EAAM7O,MAAM9kE,MAC1Bvd,EAAIkxF,EAAMlxF,EAAI40B,IAEdjY,EAAIu0E,EAAMv0E,EAAIiY,EACd50B,EAAIkxF,EAAMlxF,EAAyB,GAArBkxF,EAAM7O,MAAM7kE,QAE5BV,EAAQ/9B,KAAKwyG,eAAe50E,EAAG3c,EAAG40B,EAAQ,MAC1C71C,KAAKinG,YAAYhrB,KAAK1qC,EAAKxT,EAAMH,EAAGG,EAAM9c,EAAGsmD,QAWnD59D,IAAK,oBACL5E,MAAO,SAA2Be,GAChC,GAAI9F,KAAKkxG,UAAW,CAClB,GAAIh4D,GAAU,GACVu5D,EAAQzyG,KAAKoV,KAAKwoB,EAClB80E,EAAQ1yG,KAAKoV,KAAK6L,EAClB0xF,EAAM3yG,KAAKmV,GAAGyoB,EACdg1E,EAAM5yG,KAAKmV,GAAG8L,EACd4xF,EAAO/sG,EAAI6C,KACXmqG,EAAOhtG,EAAI+C,IAEXysC,EAAOt1C,KAAKswG,SAASyC,kBAAkBN,EAAOC,EAAOC,EAAKC,EAAKC,EAAMC,EAEzE,OAAc55D,GAAP5D,EAEP,OAAO,KAUX3rC,IAAK,2BACL5E,MAAO,SAAkCwsC,GACvC,GAAIxH,GAAK/pC,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,EAC3B6oB,EAAK9pC,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,EAC3Bo1E,EAAiB/tG,KAAKunD,MAAMziB,EAAID,IAGf,GAAjBkpE,GAA4B,EAALlpE,GAAUkpE,EAAiB,GAAU,EAALlpE,KACzDkpE,GAAkC/tG,KAAK8wC,IAGzCxE,EAAI0hE,OAAOD,MAabrpG,IAAK,iBACL5E,MAAO,SAAwB64B,EAAG3c,EAAG40B,EAAQq9D,GAC3C,GAAIxoD,GAAqB,EAAbwoD,EAAiBjuG,KAAK8wC,EAClC,QACEnY,EAAGA,EAAIiY,EAAS5wC,KAAKwkC,IAAIihB,GACzBzpC,EAAGA,EAAI40B,EAAS5wC,KAAKqkC,IAAIohB,OAI7B/gD,IAAK,SACL5E,MAAO,WACL/E,KAAKunE,UAAW,KAGlB59D,IAAK,WACL5E,MAAO,WACL/E,KAAKunE,UAAW,KAQlB59D,IAAK,UACL5E,MAAO,WACL,MAAO/E,MAAKswG,SAASD,eAGvB1mG,IAAK,eACL5E,MAAO,SAAsB4iG,EAAeC,GAC1C,GAAIxhG,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GACxFuK,EAAgBvK,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAErF4J,GAAU,qBAAsB,KAAM,OAAQ,SAAU,aAAc,QAAS,qBAAsB,SAAU,OAAQ,UAAW,UAAW,UAAW,iBAAkB,oBAAqB,KAAM,QAAS,QAAS,QA4B3N,IAzBAtP,EAAKsG,oBAAoBgJ,EAAQ03F,EAAeC,EAAYxhG,GAE5DzF,EAAK+P,aAAai3F,EAAeC,EAAY,SAAUxhG,EAAewK,GACtEjQ,EAAK+P,aAAai3F,EAAeC,EAAY,SAAUxhG,EAAewK,GAE5CrK,SAAtBqhG,EAAWoE,QAA8C,OAAtBpE,EAAWoE,OAChDrE,EAAcqE,OAASpE,EAAWoE,OACzB5lG,KAAkB,GAA8B,OAAtBwhG,EAAWoE,SAC9CrE,EAAcqE,OAAS5kG,OAAOgJ,OAAOQ,EAAco7F,SAI1BzlG,SAAvBqhG,EAAW3E,SAAgD,OAAvB2E,EAAW3E,SAClB18F,SAA3BqhG,EAAW3E,QAAQr+F,MACrB+iG,EAAc1E,QAAQr+F,IAAMgjG,EAAW3E,QAAQr+F,KAElB2B,SAA3BqhG,EAAW3E,QAAQp+F,MACrB8iG,EAAc1E,QAAQp+F,IAAM+iG,EAAW3E,QAAQp+F,KAEjDlE,EAAK+P,aAAai3F,EAAc1E,QAAS2E,EAAW3E,QAAS,QAAS78F,EAAewK,EAAcqyF,UAC1F78F,KAAkB,GAA+B,OAAvBwhG,EAAW3E,UAC9C0E,EAAc1E,QAAU77F,OAAOgJ,OAAOQ,EAAcqyF,UAI5B18F,SAAtBqhG,EAAWoH,QAA8C,OAAtBpH,EAAWoH,OAChD,GAAiC,gBAAtBpH,GAAWoH,OAAqB,CACzC,GAAIA,GAASpH,EAAWoH,OAAO73F,aACH,KAAxB63F,EAAOznG,QAAQ,QACjBogG,EAAcqH,OAAO75F,GAAGtE,SAAU,GAEJ,IAA5Bm+F,EAAOznG,QAAQ,YACjBogG,EAAcqH,OAAOz9F,OAAOV,SAAU,GAEV,IAA1Bm+F,EAAOznG,QAAQ,UACjBogG,EAAcqH,OAAO55F,KAAKvE,SAAU,OAEjC,CAAA,GAAiC,gBAAtB+2F,GAAWoH,OAK3B,KAAM,IAAIhoG,OAAM,gGAAkGy7B,KAAKC,UAAUklE,EAAWoH,QAJ5IruG,GAAK+P,aAAai3F,EAAcqH,OAAQpH,EAAWoH,OAAQ,KAAM5oG,EAAewK,EAAco+F,QAC9FruG,EAAK+P,aAAai3F,EAAcqH,OAAQpH,EAAWoH,OAAQ,SAAU5oG,EAAewK,EAAco+F,QAClGruG,EAAK+P,aAAai3F,EAAcqH,OAAQpH,EAAWoH,OAAQ,OAAQ5oG,EAAewK,EAAco+F,YAIzF5oG,MAAkB,GAA8B,OAAtBwhG,EAAWoH,SAC9CrH,EAAcqH,OAAS5nG,OAAOgJ,OAAOQ,EAAco+F,QAIrD,IAAyBzoG,SAArBqhG,EAAWn7F,OAA4C,OAArBm7F,EAAWn7F,MAG/C,GADAk7F,EAAcl7F,MAAQ9L,EAAK0G,cAAesgG,EAAcl7F,OAAO,GAC3D9L,EAAKuE,SAAS0iG,EAAWn7F,OAC3Bk7F,EAAcl7F,MAAMA,MAAQm7F,EAAWn7F,MACvCk7F,EAAcl7F,MAAM0B,UAAYy5F,EAAWn7F,MAC3Ck7F,EAAcl7F,MAAM2B,MAAQw5F,EAAWn7F,MACvCk7F,EAAcl7F,MAAMy5C,SAAU,MACzB,CACL,GAAIitD,IAAgB,CACW5sG,UAA3BqhG,EAAWn7F,MAAMA,QACnBk7F,EAAcl7F,MAAMA,MAAQm7F,EAAWn7F,MAAMA,MAAM0mG,GAAgB,GAElC5sG,SAA/BqhG,EAAWn7F,MAAM0B,YACnBw5F,EAAcl7F,MAAM0B,UAAYy5F,EAAWn7F,MAAM0B,UAAUglG,GAAgB,GAE9C5sG,SAA3BqhG,EAAWn7F,MAAM2B,QACnBu5F,EAAcl7F,MAAM2B,MAAQw5F,EAAWn7F,MAAM2B,MAAM+kG,GAAgB,GAEpC5sG,SAA7BqhG,EAAWn7F,MAAMy5C,UACnByhD,EAAcl7F,MAAMy5C,QAAU0hD,EAAWn7F,MAAMy5C,SAEhB3/C,SAA7BqhG,EAAWn7F,MAAMC,UACnBi7F,EAAcl7F,MAAMC,QAAUzH,KAAKL,IAAI,EAAGK,KAAKJ,IAAI,EAAG+iG,EAAWn7F,MAAMC,WAGxCnG,SAA7BqhG,EAAWn7F,MAAMy5C,SAAyBitD,KAAkB,IAC9DxL,EAAcl7F,MAAMy5C,SAAU,OAGzB9/C,MAAkB,GAA6B,OAArBwhG,EAAWn7F,QAC9Ck7F,EAAcl7F,MAAQ9L,EAAK0P,aAAaO,EAAcnE,OAIhClG,UAApBqhG,EAAW71D,MAA0C,OAApB61D,EAAW71D,KAC9CgzD,EAAc,WAAWpB,aAAagE,EAAc51D,KAAM61D,GACjDxhG,KAAkB,GAA4B,OAApBwhG,EAAW71D,OAC9C41D,EAAc51D,KAAOpxC,EAAK0P,aAAaO,EAAcmhC,WAKpDi/D,IAGTpxG,GAAQ,WAAaoxG,EACrBnxG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAc9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAdje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAI+iG,GAAiB,WAAe,QAASC,GAAc3/F,EAAK3B,GAAK,GAAIuhG,MAAeC,GAAK,EAAUvzF,GAAK,EAAWwzF,EAAK3hG,MAAW,KAAM,IAAK,GAAiC4hG,GAA7B5yF,EAAKnN,EAAIggG,OAAOriD,cAAmBkiD,GAAME,EAAK5yF,EAAG+B,QAAQwiD,QAAoBkuC,EAAKxgG,KAAK2gG,EAAGpjG,QAAY0B,GAAKuhG,EAAK1hG,SAAWG,GAA3DwhG,GAAK,IAAoE,MAAO9tB,GAAOzlE,GAAK,EAAMwzF,EAAK/tB,EAAO,QAAU,KAAW8tB,GAAM1yF,EAAG,WAAWA,EAAG,YAAe,QAAU,GAAIb,EAAI,KAAMwzF,IAAQ,MAAOF,GAAQ,MAAO,UAAU5/F,EAAK3B,GAAK,GAAIK,MAAMC,QAAQqB,GAAQ,MAAOA,EAAY,IAAIggG,OAAOriD,WAAY3+C,QAAOgB,GAAQ,MAAO2/F,GAAc3/F,EAAK3B,EAAa,MAAM,IAAIS,WAAU,4DAEnlBkwE,EAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaG,EAAK8I,EAAKC,GAAqC,IAA9B,GAAI9I,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASkmG,EAAK7iD,EAAW2rD,EAAK5I,EAAW6I,CAAK9I,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA6O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAAhW,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B++F,GAAM/+F,EAAQ6nG,EAAM3rD,EAAU4rD,EAAM7I,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQ3c+sG,EAA2BpzG,EAAoB,IAE/CqzG,EAA4B18B,EAAuBy8B,GAEnDE,EAAkB,SAAWC,GAG/B,QAASD,GAAgB3vG,EAASu7C,EAAM6nD,GACtCjwB,EAAgBh3E,KAAMwzG,GAEtBrJ,EAAK/iG,OAAOujG,eAAe6I,EAAgBvgG,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GA+GxG,MApHA6C,GAAU0J,EAAiBC,GAc3Br8B,EAAao8B,IACX7pG,IAAK,QACL5E,MAAO,SAAewsC,EAAKmiE,GAEzB,GAAIC,GAAOD,EAAS,GAChBE,EAAOF,EAAS,EAGpBniE,GAAIa,YACJb,EAAIc,OAAOryC,KAAK2xG,UAAU/zE,EAAG59B,KAAK2xG,UAAU1wF,GAG3B1a,SAAbmtG,GAAqCntG,SAAXotG,EAAK/1E,EACjC2T,EAAIe,OAAOtyC,KAAK4xG,QAAQh0E,EAAG59B,KAAK4xG,QAAQ3wF,GAExCswB,EAAIsiE,cAAcF,EAAK/1E,EAAG+1E,EAAK1yF,EAAG2yF,EAAKh2E,EAAGg2E,EAAK3yF,EAAGjhB,KAAK4xG,QAAQh0E,EAAG59B,KAAK4xG,QAAQ3wF,GAGjFjhB,KAAKorG,aAAa75D,GAClBA,EAAI7J,SACJ1nC,KAAKqrG,cAAc95D,MAGrB5nC,IAAK,qBACL5E,MAAO,WACL,GAAI+kC,GAAK9pC,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,EAC3BmM,EAAK/pC,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,EAE3B6yF,EAAKvtG,OACLwtG,EAAKxtG,OACLytG,EAAKztG,OACL0tG,EAAK1tG,OACLipG,EAAYxvG,KAAK6D,QAAQyrG,OAAOE,SAepC,QAZKvqG,KAAK8R,IAAI+yB,GAAM7kC,KAAK8R,IAAIgzB,IAAO/pC,KAAK6D,QAAQyrG,OAAOC,kBAAmB,GAA+C,eAAvCvvG,KAAK6D,QAAQyrG,OAAOC,iBAA2E,aAAvCvvG,KAAK6D,QAAQyrG,OAAOC,gBAC7JwE,EAAK/zG,KAAKoV,KAAK6L,EACfgzF,EAAKj0G,KAAKmV,GAAG8L,EACb6yF,EAAK9zG,KAAKoV,KAAKwoB,EAAI4xE,EAAY1lE,EAC/BkqE,EAAKh0G,KAAKmV,GAAGyoB,EAAI4xE,EAAY1lE,IAE7BiqE,EAAK/zG,KAAKoV,KAAK6L,EAAIuuF,EAAYzlE,EAC/BkqE,EAAKj0G,KAAKmV,GAAG8L,EAAIuuF,EAAYzlE,EAC7B+pE,EAAK9zG,KAAKoV,KAAKwoB,EACfo2E,EAAKh0G,KAAKmV,GAAGyoB,KAGLA,EAAGk2E,EAAI7yF,EAAG8yF,IAAQn2E,EAAGo2E,EAAI/yF,EAAGgzF,OAGxCtqG,IAAK,aACL5E,MAAO,WACL,MAAO/E,MAAKk0G,wBAGdvqG,IAAK,sBACL5E,MAAO,SAA6BovG,EAAU5iE,GAC5C,MAAOvxC,MAAKo0G,0BAA0BD,EAAU5iE,MAGlD5nC,IAAK,qBACL5E,MAAO,SAA4B+uG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,GACrD,GAAIC,GAAOluG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAKk0G,qBAAuB7tG,UAAU,GAEnGmuG,EAAQ1M,EAAeyM,EAAM,GAE7BZ,EAAOa,EAAM,GACbZ,EAAOY,EAAM,EAEjB,OAAOx0G,MAAKy0G,yBAAyBX,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIX,EAAMC,MAWrEjqG,IAAK,WACL5E,MAAO,SAAkBmuG,GACvB,GAAIwB,GAAQruG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAKk0G,qBAAuB7tG,UAAU,GAEpGsuG,EAAS7M,EAAe4M,EAAO,GAE/Bf,EAAOgB,EAAO,GACdf,EAAOe,EAAO,GAEdhlG,EAAIujG,EACJ0B,IACJA,GAAI,GAAK3vG,KAAK8U,IAAI,EAAIpK,EAAG,GACzBilG,EAAI,GAAK,EAAIjlG,EAAI1K,KAAK8U,IAAI,EAAIpK,EAAG,GACjCilG,EAAI,GAAK,EAAI3vG,KAAK8U,IAAIpK,EAAG,IAAM,EAAIA,GACnCilG,EAAI,GAAK3vG,KAAK8U,IAAIpK,EAAG,EACrB,IAAIiuB,GAAIg3E,EAAI,GAAK50G,KAAK2xG,UAAU/zE,EAAIg3E,EAAI,GAAKjB,EAAK/1E,EAAIg3E,EAAI,GAAKhB,EAAKh2E,EAAIg3E,EAAI,GAAK50G,KAAK4xG,QAAQh0E,EAC1F3c,EAAI2zF,EAAI,GAAK50G,KAAK2xG,UAAU1wF,EAAI2zF,EAAI,GAAKjB,EAAK1yF,EAAI2zF,EAAI,GAAKhB,EAAK3yF,EAAI2zF,EAAI,GAAK50G,KAAK4xG,QAAQ3wF,CAE9F,QAAS2c,EAAGA,EAAG3c,EAAGA,OAIfuyF,GACND,EAA0B,WAE7B3zG,GAAQ,WAAa4zG,EACrB3zG,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcsuG,EAAmB30G,EAAoB,IAEvC40G,EAAmBj+B,EAAuBg+B,GAE1CE,EAAsB,SAAWC,GAGnC,QAASD,GAAoBlxG,EAASu7C,EAAM6nD,GAC1CjwB,EAAgBh3E,KAAM+0G,GAEtB5K,EAAK/iG,OAAOujG,eAAeoK,EAAoB9hG,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GAkD5G,MAvDA6C,GAAUiL,EAAqBC,GAsB/B59B,EAAa29B,IACXprG,IAAK,2BACL5E,MAAO,SAAkC+uG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIX,EAAMC,GAErE,GAAIqB,GAAc,IACd7kE,EAAW7pC,OACXE,EAAIF,OACJoJ,EAAIpJ,OACJq3B,EAAIr3B,OACJ0a,EAAI1a,OACJ2uG,EAAQpB,EACRqB,EAAQpB,EACRa,GAAO,EAAG,EAAG,EAAG,EACpB,KAAKnuG,EAAI,EAAO,GAAJA,EAAQA,IAClBkJ,EAAI,GAAMlJ,EACVmuG,EAAI,GAAK3vG,KAAK8U,IAAI,EAAIpK,EAAG,GACzBilG,EAAI,GAAK,EAAIjlG,EAAI1K,KAAK8U,IAAI,EAAIpK,EAAG,GACjCilG,EAAI,GAAK,EAAI3vG,KAAK8U,IAAIpK,EAAG,IAAM,EAAIA,GACnCilG,EAAI,GAAK3vG,KAAK8U,IAAIpK,EAAG,GACrBiuB,EAAIg3E,EAAI,GAAKd,EAAKc,EAAI,GAAKjB,EAAK/1E,EAAIg3E,EAAI,GAAKhB,EAAKh2E,EAAIg3E,EAAI,GAAKZ,EAC/D/yF,EAAI2zF,EAAI,GAAKb,EAAKa,EAAI,GAAKjB,EAAK1yF,EAAI2zF,EAAI,GAAKhB,EAAK3yF,EAAI2zF,EAAI,GAAKX,EAC3DxtG,EAAI,IACN2pC,EAAWpwC,KAAKo1G,mBAAmBF,EAAOC,EAAOv3E,EAAG3c,EAAGozF,EAAIC,GAC3DW,EAAyBA,EAAX7kE,EAAyBA,EAAW6kE,GAEpDC,EAAQt3E,EACRu3E,EAAQl0F,CAGV,OAAOg0F,OAIJF,GACND,EAAiB,WAEpBl1G,GAAQ,WAAam1G,EACrBl1G,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaE,EAAKC,EAAK8I,GAAqC,IAA9B,GAAI7I,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASimG,EAAK5iD,EAAW6iD,EAAKE,EAAW4I,CAAK7I,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA6O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAAhW,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B8+F,GAAM9+F,EAAQ++F,EAAM7iD,EAAU2rD,EAAM5I,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQ3c8uG,EAAan1G,EAAoB,IAEjCo1G,EAAaz+B,EAAuBw+B,GAEpCE,EAAiB,SAAWC,GAG9B,QAASD,GAAe1xG,EAASu7C,EAAM6nD,GACrCjwB,EAAgBh3E,KAAMu1G,GAEtBpL,EAAK/iG,OAAOujG,eAAe4K,EAAetiG,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GA2GvG,MAhHA6C,GAAUyL,EAAgBC,GAsB1Bp+B,EAAam+B,IACX5rG,IAAK,4BACL5E,MAAO,SAAmCovG,EAAU5iE,GAClD,GAMIhb,GAAKm0B,EAAO48C,EAAkBmO,EAAiBC,EAN/ClE,EAAUnrG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAKk0G,qBAAuB7tG,UAAU,GAEtG8K,EAAgB,GAChBC,EAAY,EACZC,EAAM,EACNC,EAAO,EAEPwiB,EAAY,GACZ8H,EAAO57B,KAAKmV,GACZC,GAAO,CAMX,KALI++F,EAAS9zG,KAAOL,KAAKoV,KAAK/U,KAC5Bu7B,EAAO57B,KAAKoV,KACZA,GAAO,GAGK9D,GAAPD,GAA2BF,EAAZC,GAA2B,CAC/C,GAAIG,GAAwB,IAAdF,EAAMC,EAOpB,IALAilB,EAAMv2B,KAAKqyG,SAAS9gG,EAAQigG,GAC5B9mD,EAAQzlD,KAAKunD,MAAM5wB,EAAK3a,EAAIsV,EAAItV,EAAG2a,EAAKgC,EAAIrH,EAAIqH,GAChD0pE,EAAmB1rE,EAAK0rE,iBAAiB/1D,EAAKmZ,GAC9C+qD,EAAkBxwG,KAAKw0C,KAAKx0C,KAAK8U,IAAIwc,EAAIqH,EAAIhC,EAAKgC,EAAG,GAAK34B,KAAK8U,IAAIwc,EAAItV,EAAI2a,EAAK3a,EAAG,IACnFy0F,EAAapO,EAAmBmO,EAC5BxwG,KAAK8R,IAAI2+F,GAAc5hF,EACzB,KACsB,GAAb4hF,EAEHtgG,KAAS,EACX/D,EAAME,EAEND,EAAOC,EAGL6D,KAAS,EACX9D,EAAOC,EAEPF,EAAME,EAIZH,IAIF,MAFAmlB,GAAI5mB,EAAI4B,EAEDglB,KAgBT5sB,IAAK,2BACL5E,MAAO,SAAkC+uG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIqB,GAE/D,GAAIV,GAAc,IACd7kE,EAAW7pC,OACXE,EAAIF,OACJoJ,EAAIpJ,OACJq3B,EAAIr3B,OACJ0a,EAAI1a,OACJ2uG,EAAQpB,EACRqB,EAAQpB,CACZ,KAAKttG,EAAI,EAAO,GAAJA,EAAQA,IAClBkJ,EAAI,GAAMlJ,EACVm3B,EAAI34B,KAAK8U,IAAI,EAAIpK,EAAG,GAAKmkG,EAAK,EAAInkG,GAAK,EAAIA,GAAKgmG,EAAI/3E,EAAI34B,KAAK8U,IAAIpK,EAAG,GAAKqkG,EACzE/yF,EAAIhc,KAAK8U,IAAI,EAAIpK,EAAG,GAAKokG,EAAK,EAAIpkG,GAAK,EAAIA,GAAKgmG,EAAI10F,EAAIhc,KAAK8U,IAAIpK,EAAG,GAAKskG,EACrExtG,EAAI,IACN2pC,EAAWpwC,KAAKo1G,mBAAmBF,EAAOC,EAAOv3E,EAAG3c,EAAGozF,EAAIC,GAC3DW,EAAyBA,EAAX7kE,EAAyBA,EAAW6kE,GAEpDC,EAAQt3E,EACRu3E,EAAQl0F,CAGV,OAAOg0F,OAIJM,GACND,EAAW,WAEd11G,GAAQ,WAAa21G,EACrB11G,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS82E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCARhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAI+iG,GAAiB,WAAe,QAASC,GAAc3/F,EAAK3B,GAAK,GAAIuhG,MAAeC,GAAK,EAAUvzF,GAAK,EAAWwzF,EAAK3hG,MAAW,KAAM,IAAK,GAAiC4hG,GAA7B5yF,EAAKnN,EAAIggG,OAAOriD,cAAmBkiD,GAAME,EAAK5yF,EAAG+B,QAAQwiD,QAAoBkuC,EAAKxgG,KAAK2gG,EAAGpjG,QAAY0B,GAAKuhG,EAAK1hG,SAAWG,GAA3DwhG,GAAK,IAAoE,MAAO9tB,GAAOzlE,GAAK,EAAMwzF,EAAK/tB,EAAO,QAAU,KAAW8tB,GAAM1yF,EAAG,WAAWA,EAAG,YAAe,QAAU,GAAIb,EAAI,KAAMwzF,IAAQ,MAAOF,GAAQ,MAAO,UAAU5/F,EAAK3B,GAAK,GAAIK,MAAMC,QAAQqB,GAAQ,MAAOA,EAAY,IAAIggG,OAAOriD,WAAY3+C,QAAOgB,GAAQ,MAAO2/F,GAAc3/F,EAAK3B,EAAa,MAAM,IAAIS,WAAU,4DAEnlBkwE,EAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBv2E,EAAOT,EAAoB,GAE3B01G,EAAW,WACb,QAASA,GAAS/xG,EAASu7C,EAAM6nD,GAC/BjwB,EAAgBh3E,KAAM41G,GAEtB51G,KAAKo/C,KAAOA,EACZp/C,KAAKinG,YAAcA,EACnBjnG,KAAK6D,WACL7D,KAAKg/B,WAAWn7B,GAChB7D,KAAKuwG,YAAa,EAClBvwG,KAAKyM,SACLzM,KAAKovG,eAAiB,EACtBpvG,KAAKmvG,WAAa,IAClBnvG,KAAK2xG,UAAY3xG,KAAKoV,KACtBpV,KAAK4xG,QAAU5xG,KAAKmV,GAsiBtB,MAniBAiiE,GAAaw+B,IACXjsG,IAAK,UACL5E,MAAO,WACL/E,KAAKoV,KAAOpV,KAAKo/C,KAAKu7C,MAAM36F,KAAK6D,QAAQuR,MACzCpV,KAAKmV,GAAKnV,KAAKo/C,KAAKu7C,MAAM36F,KAAK6D,QAAQsR,OAGzCxL,IAAK,UACL5E,MAAO,WACL,OAAO,KAGT4E,IAAK,aACL5E,MAAO,SAAoBlB,GACzB7D,KAAK6D,QAAUA,EACf7D,KAAKoV,KAAOpV,KAAKo/C,KAAKu7C,MAAM36F,KAAK6D,QAAQuR,MACzCpV,KAAKmV,GAAKnV,KAAKo/C,KAAKu7C,MAAM36F,KAAK6D,QAAQsR,IACvCnV,KAAKK,GAAKL,KAAK6D,QAAQxD,MAWzBsJ,IAAK,WACL5E,MAAO,SAAkBwsC,EAAKg2B,EAAUn5D,EAAOojG,GAE7CjgE,EAAIY,YAAcnyC,KAAK61G,SAAStkE,EAAKg2B,EAAUn5D,GAC/CmjC,EAAIO,UAAY9xC,KAAK81G,aAAavuC,EAAUn5D,GAExCpO,KAAK6D,QAAQmoG,UAAW,EAC1BhsG,KAAK+1G,gBAAgBxkE,EAAKigE,GAE1BxxG,KAAKg2G,UAAUzkE,EAAKigE,MAIxB7nG,IAAK,YACL5E,MAAO,SAAmBwsC,EAAKigE,EAASG,EAAWC,GACjD,GAAI5xG,KAAKoV,MAAQpV,KAAKmV,GAEpBnV,KAAKi2G,MAAM1kE,EAAKigE,EAASG,EAAWC,OAC/B,CACL,GAAIsE,GAAkBl2G,KAAKm2G,eAAe5kE,GAEtC6kE,EAAmBtO,EAAeoO,EAAiB,GAEnDt4E,EAAIw4E,EAAiB,GACrBn1F,EAAIm1F,EAAiB,GACrBvgE,EAASugE,EAAiB,EAE9Bp2G,MAAKq2G,QAAQ9kE,EAAK3T,EAAG3c,EAAG40B,OAI5BlsC,IAAK,kBACL5E,MAAO,SAAyBwsC,EAAKigE,EAASG,EAAWC,GACvDrgE,EAAI6D,QAAU,OACd,IAAIkhE,IAAW,EAAG,EAMlB,IALIxvG,MAAMC,QAAQ/G,KAAK6D,QAAQmoG,WAAY,IACzCsK,EAAUt2G,KAAK6D,QAAQmoG,QAIDzlG,SAApBgrC,EAAIw6D,YAA2B,CAQjC,GAPAx6D,EAAI+5D,OAGJ/5D,EAAIw6D,YAAYuK,GAChB/kE,EAAIglE,eAAiB,EAGjBv2G,KAAKoV,MAAQpV,KAAKmV,GAEpBnV,KAAKi2G,MAAM1kE,EAAKigE,OACX,CACL,GAAIgF,GAAkBx2G,KAAKm2G,eAAe5kE,GAEtCklE,EAAmB3O,EAAe0O,EAAiB,GAEnD54E,EAAI64E,EAAiB,GACrBx1F,EAAIw1F,EAAiB,GACrB5gE,EAAS4gE,EAAiB,EAE9Bz2G,MAAKq2G,QAAQ9kE,EAAK3T,EAAG3c,EAAG40B,GAI1BtE,EAAIw6D,aAAa,IACjBx6D,EAAIglE,eAAiB,EACrBhlE,EAAIk6D,cACC,CAEL,GAAIzrG,KAAKoV,MAAQpV,KAAKmV,GAEpBo8B,EAAImlE,WAAW12G,KAAKoV,KAAKwoB,EAAG59B,KAAKoV,KAAK6L,EAAGjhB,KAAKmV,GAAGyoB,EAAG59B,KAAKmV,GAAG8L,EAAGq1F,OAC1D,CACL,GAAIK,GAAkB32G,KAAKm2G,eAAe5kE,GAEtCqlE,EAAmB9O,EAAe6O,EAAiB,GAEnD/4E,EAAIg5E,EAAiB,GACrB31F,EAAI21F,EAAiB,GACrB/gE,EAAS+gE,EAAiB,EAE9B52G,MAAKq2G,QAAQ9kE,EAAK3T,EAAG3c,EAAG40B,GAG1B71C,KAAKorG,aAAa75D,GAElBA,EAAI7J,SAGJ1nC,KAAKqrG,cAAc95D,OAIvB5nC,IAAK,qBACL5E,MAAO,SAA4BovG,EAAU5iE,EAAK1tC,GAChD,MAAI7D,MAAKoV,MAAQpV,KAAKmV,GACbnV,KAAK62G,oBAAoB1C,EAAU5iE,EAAK1tC,GAExC7D,KAAK82G,0BAA0B3C,EAAU5iE,EAAK1tC,MAIzD8F,IAAK,sBACL5E,MAAO,SAA6BwsC,GAClC,GAAIn8B,MACAD,IACJ,IAAInV,KAAKoV,MAAQpV,KAAKmV,GACpBC,EAAOpV,KAAK62G,oBAAoB72G,KAAKoV,KAAMm8B,GAC3Cp8B,EAAKnV,KAAK62G,oBAAoB72G,KAAKmV,GAAIo8B,OAClC,CACL,GAAIwlE,GAAkB/2G,KAAKm2G,eAAe5kE,GAEtCylE,EAAmBlP,EAAeiP,EAAiB,GAEnDn5E,EAAIo5E,EAAiB,GACrB/1F,EAAI+1F,EAAiB,EACZA,GAAiB,EAE9B5hG,GAAOpV,KAAK82G,0BAA0B92G,KAAKoV,KAAMm8B,GAAO3T,EAAGA,EAAG3c,EAAGA,EAAG5P,IAAK,IAAMC,KAAM,GAAKoZ,UAAW,KACrGvV,EAAKnV,KAAK82G,0BAA0B92G,KAAKoV,KAAMm8B,GAAO3T,EAAGA,EAAG3c,EAAGA,EAAG5P,IAAK,GAAKC,KAAM,GAAKoZ,UAAW,IAEpG,OAAStV,KAAMA,EAAMD,GAAIA,MAG3BxL,IAAK,iBACL5E,MAAO,SAAwBwsC,GAC7B,GAAI3T,GAAIr3B,OACJ0a,EAAI1a,OACJq1B,EAAO57B,KAAKoV,KACZygC,EAAS71C,KAAK6D,QAAQwrG,iBAgB1B,OAdY9oG,UAARgrC,GACuBhrC,SAArBq1B,EAAK0nE,MAAM9kE,OACb5C,EAAK0nE,MAAMoE,OAAOn2D,GAKlB3V,EAAK0nE,MAAM9kE,MAAQ5C,EAAK0nE,MAAM7kE,QAChCb,EAAIhC,EAAKgC,EAAuB,GAAnBhC,EAAK0nE,MAAM9kE,MACxBvd,EAAI2a,EAAK3a,EAAI40B,IAEbjY,EAAIhC,EAAKgC,EAAIiY,EACb50B,EAAI2a,EAAK3a,EAAwB,GAApB2a,EAAK0nE,MAAM7kE,SAElBb,EAAG3c,EAAG40B,MAahBlsC,IAAK,iBACL5E,MAAO,SAAwB64B,EAAG3c,EAAG40B,EAAQq9D,GAC3C,GAAIxoD,GAAqB,EAAbwoD,EAAiBjuG,KAAK8wC,EAClC,QACEnY,EAAGA,EAAIiY,EAAS5wC,KAAKwkC,IAAIihB,GACzBzpC,EAAGA,EAAI40B,EAAS5wC,KAAKqkC,IAAIohB,OAa7B/gD,IAAK,4BACL5E,MAAO,SAAmC62B,EAAM2V,EAAK1tC,GAkBnD,IAjBA,GAAI+5B,GAAI/5B,EAAQ+5B,EACZ3c,EAAIpd,EAAQod,EACZ5P,EAAMxN,EAAQwN,IACdC,EAAOzN,EAAQyN,KACfoZ,EAAY7mB,EAAQ6mB,UAEpBvZ,EAAgB,GAChBC,EAAY,EACZykC,EAAS71C,KAAK6D,QAAQwrG,kBACtB94E,EAAMhwB,OACNmkD,EAAQnkD,OACR+gG,EAAmB/gG,OACnBkvG,EAAkBlvG,OAClBmvG,EAAanvG,OACbutB,EAAY,IACZviB,EAAwB,IAAdF,EAAMC,GAENA,GAAPD,GAA2BF,EAAZC,IACpBG,EAAwB,IAAdF,EAAMC,GAEhBilB,EAAMv2B,KAAKwyG,eAAe50E,EAAG3c,EAAG40B,EAAQtkC,GACxCm5C,EAAQzlD,KAAKunD,MAAM5wB,EAAK3a,EAAIsV,EAAItV,EAAG2a,EAAKgC,EAAIrH,EAAIqH,GAChD0pE,EAAmB1rE,EAAK0rE,iBAAiB/1D,EAAKmZ,GAC9C+qD,EAAkBxwG,KAAKw0C,KAAKx0C,KAAK8U,IAAIwc,EAAIqH,EAAIhC,EAAKgC,EAAG,GAAK34B,KAAK8U,IAAIwc,EAAItV,EAAI2a,EAAK3a,EAAG,IACnFy0F,EAAapO,EAAmBmO,IAC5BxwG,KAAK8R,IAAI2+F,GAAc5hF,KAEhB4hF,EAAa,EAEhBhrF,EAAY,EACdrZ,EAAME,EAEND,EAAOC,EAGLmZ,EAAY,EACdpZ,EAAOC,EAEPF,EAAME,EAGZH,GAIF,OAFAmlB,GAAI5mB,EAAI4B,EAEDglB,KAUT5sB,IAAK,eACL5E,MAAO,SAAsBwiE,EAAUn5D,GACrC,MAAIm5D,MAAa,EACRtiE,KAAKJ,IAAI7E,KAAKovG,eAAgB,GAAMpvG,KAAKo/C,KAAKw8C,KAAK52F,OAEtDoJ,KAAU,EACLnJ,KAAKJ,IAAI7E,KAAKmvG,WAAY,GAAMnvG,KAAKo/C,KAAKw8C,KAAK52F,OAE/CC,KAAKJ,IAAI7E,KAAK6D,QAAQ26B,MAAO,GAAMx+B,KAAKo/C,KAAKw8C,KAAK52F,UAK/D2E,IAAK,WACL5E,MAAO,SAAkBwsC,EAAKg2B,EAAUn5D,GACtC,GAAI6oG,GAAej3G,KAAK6D,QAAQ4I,KAChC,IAAIwqG,EAAa/wD,WAAY,EAAO,CAElC,GAA6B,SAAzB+wD,EAAa/wD,SAAsBlmD,KAAKoV,KAAK/U,KAAOL,KAAKmV,GAAG9U,GAAI,CAClE,GAAI62G,GAAM3lE,EAAI4lE,qBAAqBn3G,KAAKoV,KAAKwoB,EAAG59B,KAAKoV,KAAK6L,EAAGjhB,KAAKmV,GAAGyoB,EAAG59B,KAAKmV,GAAG8L,GAC5Em2F,EAAY7wG,OACZ8wG,EAAU9wG,MAgBd,OAfA6wG,GAAYp3G,KAAKoV,KAAKvR,QAAQ4I,MAAM0B,UAAUD,OAC9CmpG,EAAUr3G,KAAKmV,GAAGtR,QAAQ4I,MAAM0B,UAAUD,OAEtClO,KAAKoV,KAAKmyD,YAAa,GAASvnE,KAAKmV,GAAGoyD,YAAa,GACvD6vC,EAAYz2G,EAAK6L,gBAAgBxM,KAAKoV,KAAKvR,QAAQ4I,MAAMyB,OAAQlO,KAAK6D,QAAQ4I,MAAMC,SACpF2qG,EAAU12G,EAAK6L,gBAAgBxM,KAAKmV,GAAGtR,QAAQ4I,MAAMyB,OAAQlO,KAAK6D,QAAQ4I,MAAMC,UACvE1M,KAAKoV,KAAKmyD,YAAa,GAAQvnE,KAAKmV,GAAGoyD,YAAa,EAC7D8vC,EAAUr3G,KAAKmV,GAAGtR,QAAQ4I,MAAMyB,OACvBlO,KAAKoV,KAAKmyD,YAAa,GAASvnE,KAAKmV,GAAGoyD,YAAa,IAC9D6vC,EAAYp3G,KAAKoV,KAAKvR,QAAQ4I,MAAMyB,QAEtCgpG,EAAII,aAAa,EAAGF,GACpBF,EAAII,aAAa,EAAGD,GAGbH,EAGLl3G,KAAKuwG,cAAe,IACO,OAAzB0G,EAAa/wD,SACflmD,KAAKyM,MAAM0B,UAAYnO,KAAKmV,GAAGtR,QAAQ4I,MAAM0B,UAAUD,OACvDlO,KAAKyM,MAAM2B,MAAQpO,KAAKmV,GAAGtR,QAAQ4I,MAAM2B,MAAMF,OAC/ClO,KAAKyM,MAAMA,MAAQ9L,EAAK6L,gBAAgBxM,KAAKmV,GAAGtR,QAAQ4I,MAAMyB,OAAQ+oG,EAAavqG,WAGnF1M,KAAKyM,MAAM0B,UAAYnO,KAAKoV,KAAKvR,QAAQ4I,MAAM0B,UAAUD,OACzDlO,KAAKyM,MAAM2B,MAAQpO,KAAKoV,KAAKvR,QAAQ4I,MAAM2B,MAAMF,OACjDlO,KAAKyM,MAAMA,MAAQ9L,EAAK6L,gBAAgBxM,KAAKoV,KAAKvR,QAAQ4I,MAAMyB,OAAQ+oG,EAAavqG,eAGhF1M,MAAKuwG,cAAe,IAC7BvwG,KAAKyM,MAAM0B,UAAY8oG,EAAa9oG,UACpCnO,KAAKyM,MAAM2B,MAAQ6oG,EAAa7oG,MAChCpO,KAAKyM,MAAMA,MAAQ9L,EAAK6L,gBAAgByqG,EAAaxqG,MAAOwqG,EAAavqG,SAM3E,OAFA1M,MAAKuwG,YAAa,EAEdhpC,KAAa,EACRvnE,KAAKyM,MAAM0B,UACTC,KAAU,EACZpO,KAAKyM,MAAM2B,MAEXpO,KAAKyM,MAAMA,SAatB9C,IAAK,UACL5E,MAAO,SAAiBwsC,EAAK3T,EAAG3c,EAAG40B,GAEjC71C,KAAKorG,aAAa75D,GAGlBA,EAAIa,YACJb,EAAIuE,IAAIlY,EAAG3c,EAAG40B,EAAQ,EAAG,EAAI5wC,KAAK8wC,IAAI,GACtCxE,EAAI7J,SAGJ1nC,KAAKqrG,cAAc95D,MAgBrB5nC,IAAK,oBACL5E,MAAO,SAA2B+uG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIqB,GAExD,GAAI3qG,GAAc,CAClB,IAAIhL,KAAKoV,MAAQpV,KAAKmV,GACpBnK,EAAchL,KAAKu3G,mBAAmBzD,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIqB,OACzD,CACL,GAAI6B,GAAkBx3G,KAAKm2G,iBAEvBsB,EAAmB3P,EAAe0P,EAAiB,GAEnD55E,EAAI65E,EAAiB,GACrBx2F,EAAIw2F,EAAiB,GACrB5hE,EAAS4hE,EAAiB,GAE1B3tE,EAAKlM,EAAIy2E,EACTtqE,EAAK9oB,EAAIqzF,CACbtpG,GAAc/F,KAAK8R,IAAI9R,KAAKw0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAAM8L,GAGxD,MAAI71C,MAAKinG,YAAYhpE,KAAKt1B,KAAO0rG,GAAMr0G,KAAKinG,YAAYhpE,KAAKt1B,KAAO3I,KAAKinG,YAAYhpE,KAAKO,MAAQ61E,GAAMr0G,KAAKinG,YAAYhpE,KAAKp1B,IAAMyrG,GAAMt0G,KAAKinG,YAAYhpE,KAAKp1B,IAAM7I,KAAKinG,YAAYhpE,KAAKQ,OAAS61E,EAC5L,EAEAtpG,KAIXrB,IAAK,qBACL5E,MAAO,SAA4B+uG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,GACrD,GAAIoD,GAAK1D,EAAKF,EACV6D,EAAK1D,EAAKF,EACV6D,EAAYF,EAAKA,EAAKC,EAAKA,EAC3BE,IAAMxD,EAAKP,GAAM4D,GAAMpD,EAAKP,GAAM4D,GAAMC,CAExCC,GAAI,EACNA,EAAI,EACS,EAAJA,IACTA,EAAI,EAGN,IAAIj6E,GAAIk2E,EAAK+D,EAAIH,EACbz2F,EAAI8yF,EAAK8D,EAAIF,EACb7tE,EAAKlM,EAAIy2E,EACTtqE,EAAK9oB,EAAIqzF,CAQb,OAAOrvG,MAAKw0C,KAAK3P,EAAKA,EAAKC,EAAKA,MAUlCpgC,IAAK,eACL5E,MAAO,SAAsBwsC,EAAK7C,EAAU8iE,EAASjqC,EAAUn5D,GAE7D,GAAIs8C,GAAQnkD,OACRuxG,EAAavxG,OACb4rG,EAAQ5rG,OACR6rG,EAAQ7rG,OACRwxG,EAAcxxG,OACd0oG,EAAc1oG,OACdurC,EAAY9xC,KAAK81G,aAAavuC,EAAUn5D,EAmB5C,IAjBiB,SAAbsgC,GACFyjE,EAAQnyG,KAAKoV,KACbg9F,EAAQpyG,KAAKmV,GACb4iG,EAAc,GACd9I,EAAcjvG,KAAK6D,QAAQmrG,OAAO55F,KAAK65F,aACjB,OAAbvgE,GACTyjE,EAAQnyG,KAAKmV,GACbi9F,EAAQpyG,KAAKoV,KACb2iG,GAAe,GACf9I,EAAcjvG,KAAK6D,QAAQmrG,OAAO75F,GAAG85F,cAErCkD,EAAQnyG,KAAKmV,GACbi9F,EAAQpyG,KAAKoV,KACb65F,EAAcjvG,KAAK6D,QAAQmrG,OAAOz9F,OAAO09F,aAIvCkD,GAASC,EACX,GAAiB,WAAb1jE,EAEF,GAAI1uC,KAAK6D,QAAQyrG,OAAOz+F,WAAY,EAAM,CACxCinG,EAAa93G,KAAKg4G,mBAAmB7F,EAAO5gE,GAAOokE,IAAKnE,GACxD,IAAIyG,GAAWj4G,KAAKqyG,SAASptG,KAAKJ,IAAI,EAAKI,KAAKL,IAAI,EAAKkzG,EAAWnoG,EAAIooG,IAAevG,EACvF9mD,GAAQzlD,KAAKunD,MAAMsrD,EAAW72F,EAAIg3F,EAASh3F,EAAG62F,EAAWl6E,EAAIq6E,EAASr6E,OAEtE8sB,GAAQzlD,KAAKunD,MAAM2lD,EAAMlxF,EAAImxF,EAAMnxF,EAAGkxF,EAAMv0E,EAAIw0E,EAAMx0E,GACtDk6E,EAAa93G,KAAKg4G,mBAAmB7F,EAAO5gE,OAG9CmZ,GAAQzlD,KAAKunD,MAAM2lD,EAAMlxF,EAAImxF,EAAMnxF,EAAGkxF,EAAMv0E,EAAIw0E,EAAMx0E,GACtDk6E,EAAa93G,KAAKqyG,SAAS,GAAKb,OAE7B,CACH,GAAI0G,GAAkBl4G,KAAKm2G,eAAe5kE,GAEtC4mE,EAAmBrQ,EAAeoQ,EAAiB,GAEnDt6E,EAAIu6E,EAAiB,GACrBl3F,EAAIk3F,EAAiB,GACrBtiE,EAASsiE,EAAiB,EAEb,UAAbzpE,GACFopE,EAAa93G,KAAKg4G,mBAAmBh4G,KAAKoV,KAAMm8B,GAAO3T,EAAGA,EAAG3c,EAAGA,EAAG5P,IAAK,IAAMC,KAAM,GAAKoZ,UAAW,KACpGggC,EAAuB,GAAfotD,EAAWnoG,EAAS1K,KAAK8wC,GAAK,IAAM9wC,KAAK8wC,GAAK,GAAM9wC,KAAK8wC,IAC3C,OAAbrH,GACTopE,EAAa93G,KAAKg4G,mBAAmBh4G,KAAKoV,KAAMm8B,GAAO3T,EAAGA,EAAG3c,EAAGA,EAAG5P,IAAK,GAAKC,KAAM,EAAKoZ,UAAW,IACnGggC,EAAuB,GAAfotD,EAAWnoG,EAAS1K,KAAK8wC,GAAK,IAAM9wC,KAAK8wC,GAAK,IAAM9wC,KAAK8wC,KAEjE+hE,EAAa93G,KAAKwyG,eAAe50E,EAAG3c,EAAG40B,EAAQ,MAC/C6U,EAAQ,oBAId,GAAIpkD,GAAS,GAAK2oG,EAAc,EAAIn9D,EAEhCsmE,EAAKN,EAAWl6E,EAAa,GAATt3B,EAAerB,KAAKwkC,IAAIihB,GAC5C2tD,EAAKP,EAAW72F,EAAa,GAAT3a,EAAerB,KAAKqkC,IAAIohB,GAC5C4tD,GAAc16E,EAAGw6E,EAAIn3F,EAAGo3F,EAE5B,QAASt6E,MAAO+5E,EAAYhG,KAAMwG,EAAW5tD,MAAOA,EAAOpkD,OAAQA,MAWrEqD,IAAK,gBACL5E,MAAO,SAAuBwsC,EAAKg2B,EAAUn5D,EAAOsjG,GAElDngE,EAAIY,YAAcnyC,KAAK61G,SAAStkE,EAAKg2B,EAAUn5D,GAC/CmjC,EAAIiB,UAAYjB,EAAIY,YACpBZ,EAAIO,UAAY9xC,KAAK81G,aAAavuC,EAAUn5D,GAG5CmjC,EAAIgnE,MAAM7G,EAAU3zE,MAAMH,EAAG8zE,EAAU3zE,MAAM9c,EAAGywF,EAAUhnD,MAAOgnD,EAAUprG,QAG3EtG,KAAKorG,aAAa75D,GAClBA,EAAI9J,OAEJznC,KAAKqrG,cAAc95D,MAGrB5nC,IAAK,eACL5E,MAAO,SAAsBwsC,GACvBvxC,KAAK6D,QAAQw/F,OAAOxyF,WAAY,IAClC0gC,EAAIo6D,YAAc3rG,KAAK6D,QAAQw/F,OAAO52F,MACtC8kC,EAAIq6D,WAAa5rG,KAAK6D,QAAQw/F,OAAOplE,KACrCsT,EAAIs6D,cAAgB7rG,KAAK6D,QAAQw/F,OAAOzlE,EACxC2T,EAAIu6D,cAAgB9rG,KAAK6D,QAAQw/F,OAAOpiF,MAI5CtX,IAAK,gBACL5E,MAAO,SAAuBwsC,GACxBvxC,KAAK6D,QAAQw/F,OAAOxyF,WAAY,IAClC0gC,EAAIo6D,YAAc,gBAClBp6D,EAAIq6D,WAAa,EACjBr6D,EAAIs6D,cAAgB,EACpBt6D,EAAIu6D,cAAgB,OAKnB8J,IAGTh2G,GAAQ,WAAag2G,EACrB/1G,EAAOD,QAAUA,EAAQ,YAMrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaE,EAAKC,EAAK8I,GAAqC,IAA9B,GAAI7I,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASimG,EAAK5iD,EAAW6iD,EAAKE,EAAW4I,CAAK7I,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA6O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAAhW,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B8+F,GAAM9+F,EAAQ++F,EAAM7iD,EAAU2rD,EAAM5I,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQ3ciyG,EAAsBt4G,EAAoB,IAE1Cu4G,EAAuB5hC,EAAuB2hC,GAE9CE,EAAoB,SAAW1D,GAGjC,QAAS0D,GAAkB70G,EAASu7C,EAAM6nD,GACxC,GAAI/kD,GAAQliD,IAEZg3E,GAAgBh3E,KAAM04G,GAGtBvO,EAAK/iG,OAAOujG,eAAe+N,EAAkBzlG,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GACxGjnG,KAAK24G,eAAiB,WACpBz2D,EAAM02D,sBAER54G,KAAKo/C,KAAKE,QAAQlgB,GAAG,yBAA0Bp/B,KAAK24G,gBA4JtD,MAxKA7O,GAAU4O,EAAmB1D,GAe7B59B,EAAashC,IACX/uG,IAAK,aACL5E,MAAO,SAAoBlB,GAEzB,GAAIg1G,IAAgB,CAChB74G,MAAK6D,QAAQq4E,UAAYr4E,EAAQq4E,UACnC28B,GAAgB,GAIlB74G,KAAK6D,QAAUA,EACf7D,KAAKK,GAAKL,KAAK6D,QAAQxD,GACvBL,KAAKoV,KAAOpV,KAAKo/C,KAAKu7C,MAAM36F,KAAK6D,QAAQuR,MACzCpV,KAAKmV,GAAKnV,KAAKo/C,KAAKu7C,MAAM36F,KAAK6D,QAAQsR,IAGvCnV,KAAK84G,mBACL94G,KAAKowG,UAGDyI,KAAkB,IACpB74G,KAAK21G,IAAI32E,YAAak9C,QAASl8E,KAAK6D,QAAQq4E,UAC5Cl8E,KAAK44G,yBAITjvG,IAAK,UACL5E,MAAO,WACL/E,KAAKoV,KAAOpV,KAAKo/C,KAAKu7C,MAAM36F,KAAK6D,QAAQuR,MACzCpV,KAAKmV,GAAKnV,KAAKo/C,KAAKu7C,MAAM36F,KAAK6D,QAAQsR,IACrB5O,SAAdvG,KAAKoV,MAAkC7O,SAAZvG,KAAKmV,IAAoBnV,KAAK6D,QAAQq4E,WAAY,EAC/El8E,KAAK21G,IAAI32E,YAAak9C,SAAS,IAG3Bl8E,KAAKoV,KAAK/U,KAAOL,KAAKmV,GAAG9U,GAC3BL,KAAK21G,IAAI32E,YAAak9C,SAAS,IAE/Bl8E,KAAK21G,IAAI32E,YAAak9C,SAAS,OAUrCvyE,IAAK,UACL5E,MAAO,WAEL,MADA/E,MAAKo/C,KAAKE,QAAQ/f,IAAI,yBAA0Bv/B,KAAK24G,gBACpCpyG,SAAbvG,KAAK21G,WACA31G,MAAKo/C,KAAKu7C,MAAM36F,KAAK21G,IAAIt1G,IAChCL,KAAK21G,IAAMpvG,QACJ,IAEF,KAWToD,IAAK,mBACL5E,MAAO,WACL,GAAiBwB,SAAbvG,KAAK21G,IAAmB,CAC1B,GAAIjX,GAAS,UAAY1+F,KAAKK,GAC1Bu7B,EAAO57B,KAAKo/C,KAAKq8C,UAAUC,YAC7Br7F,GAAIq+F,EACJ4E,MAAO,SACPpnB,SAAS,EACTlf,QAAQ,GAEVh9D,MAAKo/C,KAAKu7C,MAAM+D,GAAU9iE,EAC1B57B,KAAK21G,IAAM/5E,EACX57B,KAAK21G,IAAIoD,aAAe/4G,KAAKK,GAC7BL,KAAK44G,yBAITjvG,IAAK,qBACL5E,MAAO,WACYwB,SAAbvG,KAAK21G,KAAmCpvG,SAAdvG,KAAKoV,MAAkC7O,SAAZvG,KAAKmV,IAC5DnV,KAAK21G,IAAI/3E,EAAI,IAAO59B,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,GAC1C59B,KAAK21G,IAAI10F,EAAI,IAAOjhB,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,IACpB1a,SAAbvG,KAAK21G,MACd31G,KAAK21G,IAAI/3E,EAAI,EACb59B,KAAK21G,IAAI10F,EAAI,MAUjBtX,IAAK,QACL5E,MAAO,SAAewsC,EAAKigE,GAEzBjgE,EAAIa,YACJb,EAAIc,OAAOryC,KAAK2xG,UAAU/zE,EAAG59B,KAAK2xG,UAAU1wF,GAE1B1a,SAAdirG,EAAQ5zE,EACV2T,EAAIe,OAAOtyC,KAAK4xG,QAAQh0E,EAAG59B,KAAK4xG,QAAQ3wF,GAExCswB,EAAIynE,iBAAiBxH,EAAQ5zE,EAAG4zE,EAAQvwF,EAAGjhB,KAAK4xG,QAAQh0E,EAAG59B,KAAK4xG,QAAQ3wF,GAG1EjhB,KAAKorG,aAAa75D,GAClBA,EAAI7J,SACJ1nC,KAAKqrG,cAAc95D,MAGrB5nC,IAAK,aACL5E,MAAO,WACL,MAAO/E,MAAK21G,OAWdhsG,IAAK,WACL5E,MAAO,SAAkBmuG,GACvB,GAAI1B,GAAUnrG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAK21G,IAAMtvG,UAAU,GAErFsJ,EAAIujG,EACJt1E,EAAI34B,KAAK8U,IAAI,EAAIpK,EAAG,GAAK3P,KAAK2xG,UAAU/zE,EAAI,EAAIjuB,GAAK,EAAIA,GAAK6hG,EAAQ5zE,EAAI34B,KAAK8U,IAAIpK,EAAG,GAAK3P,KAAK4xG,QAAQh0E,EACxG3c,EAAIhc,KAAK8U,IAAI,EAAIpK,EAAG,GAAK3P,KAAK2xG,UAAU1wF,EAAI,EAAItR,GAAK,EAAIA,GAAK6hG,EAAQvwF,EAAIhc,KAAK8U,IAAIpK,EAAG,GAAK3P,KAAK4xG,QAAQ3wF,CAE5G,QAAS2c,EAAGA,EAAG3c,EAAGA,MAGpBtX,IAAK,sBACL5E,MAAO,SAA6BovG,EAAU5iE,GAC5C,MAAOvxC,MAAKo0G,0BAA0BD,EAAU5iE,EAAKvxC,KAAK21G,QAG5DhsG,IAAK,qBACL5E,MAAO,SAA4B+uG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,GAErD,MAAOt0G,MAAKy0G,yBAAyBX,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIt0G,KAAK21G,SAI/D+C,GACND,EAAqB,WAExB74G,GAAQ,WAAa84G,EACrB74G,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaiJ,EAAKC,EAAK4F,GAAqC,IAA9B,GAAI1O,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgvG,EAAK3rD,EAAW4rD,EAAK7I,EAAWyO,CAAK1O,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA6O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAAhW,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6nG,GAAM7nG,EAAQ8nG,EAAM5rD,EAAUwxD,EAAMzO,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQ3ciyG,EAAsBt4G,EAAoB,IAE1Cu4G,EAAuB5hC,EAAuB2hC,GAE9CU,EAAmB,SAAWlE,GAGhC,QAASkE,GAAiBr1G,EAASu7C,EAAM6nD,GACvCjwB,EAAgBh3E,KAAMk5G,GAEtB/O,EAAK/iG,OAAOujG,eAAeuO,EAAiBjmG,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GAsOzG,MA3OA6C,GAAUoP,EAAkBlE,GAc5B59B,EAAa8hC,IACXvvG,IAAK,QACL5E,MAAO,SAAewsC,EAAKigE,GAEzBjgE,EAAIa,YACJb,EAAIc,OAAOryC,KAAK2xG,UAAU/zE,EAAG59B,KAAK2xG,UAAU1wF,GAG1B1a,SAAdirG,EAAQ5zE,EACV2T,EAAIe,OAAOtyC,KAAK4xG,QAAQh0E,EAAG59B,KAAK4xG,QAAQ3wF,GAExCswB,EAAIynE,iBAAiBxH,EAAQ5zE,EAAG4zE,EAAQvwF,EAAGjhB,KAAK4xG,QAAQh0E,EAAG59B,KAAK4xG,QAAQ3wF,GAG1EjhB,KAAKorG,aAAa75D,GAClBA,EAAI7J,SACJ1nC,KAAKqrG,cAAc95D,MAGrB5nC,IAAK,aACL5E,MAAO,WACL,MAAO/E,MAAKk0G,wBASdvqG,IAAK,qBACL5E,MAAO,WACL,GAAIo0G,GAAO5yG,OACP6yG,EAAO7yG,OACP+7C,EAAStiD,KAAK6D,QAAQyrG,OAAOE,UAC7B5nG,EAAO5H,KAAK6D,QAAQyrG,OAAO1nG,KAC3BkiC,EAAK7kC,KAAK8R,IAAI/W,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,GACpCmM,EAAK9kC,KAAK8R,IAAI/W,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,EACxC,IAAa,aAATrZ,GAAgC,kBAATA,EACrB3C,KAAK8R,IAAI/W,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAAM34B,KAAK8R,IAAI/W,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,IAClEjhB,KAAKoV,KAAK6L,GAAKjhB,KAAKmV,GAAG8L,EACrBjhB,KAAKoV,KAAKwoB,GAAK59B,KAAKmV,GAAGyoB,GACzBu7E,EAAOn5G,KAAKoV,KAAKwoB,EAAI0kB,EAASvY,EAC9BqvE,EAAOp5G,KAAKoV,KAAK6L,EAAIqhC,EAASvY,GACrB/pC,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAC/Bu7E,EAAOn5G,KAAKoV,KAAKwoB,EAAI0kB,EAASvY,EAC9BqvE,EAAOp5G,KAAKoV,KAAK6L,EAAIqhC,EAASvY,GAEvB/pC,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,IAC3BjhB,KAAKoV,KAAKwoB,GAAK59B,KAAKmV,GAAGyoB,GACzBu7E,EAAOn5G,KAAKoV,KAAKwoB,EAAI0kB,EAASvY,EAC9BqvE,EAAOp5G,KAAKoV,KAAK6L,EAAIqhC,EAASvY,GACrB/pC,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAC/Bu7E,EAAOn5G,KAAKoV,KAAKwoB,EAAI0kB,EAASvY,EAC9BqvE,EAAOp5G,KAAKoV,KAAK6L,EAAIqhC,EAASvY,IAGrB,aAATniC,IACFuxG,EAAY72D,EAASvY,EAAdD,EAAmB9pC,KAAKoV,KAAKwoB,EAAIu7E,IAEjCl0G,KAAK8R,IAAI/W,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,GAAK34B,KAAK8R,IAAI/W,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,KACxEjhB,KAAKoV,KAAK6L,GAAKjhB,KAAKmV,GAAG8L,EACrBjhB,KAAKoV,KAAKwoB,GAAK59B,KAAKmV,GAAGyoB,GACzBu7E,EAAOn5G,KAAKoV,KAAKwoB,EAAI0kB,EAASxY,EAC9BsvE,EAAOp5G,KAAKoV,KAAK6L,EAAIqhC,EAASxY,GACrB9pC,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAC/Bu7E,EAAOn5G,KAAKoV,KAAKwoB,EAAI0kB,EAASxY,EAC9BsvE,EAAOp5G,KAAKoV,KAAK6L,EAAIqhC,EAASxY,GAEvB9pC,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,IAC3BjhB,KAAKoV,KAAKwoB,GAAK59B,KAAKmV,GAAGyoB,GACzBu7E,EAAOn5G,KAAKoV,KAAKwoB,EAAI0kB,EAASxY,EAC9BsvE,EAAOp5G,KAAKoV,KAAK6L,EAAIqhC,EAASxY,GACrB9pC,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAC/Bu7E,EAAOn5G,KAAKoV,KAAKwoB,EAAI0kB,EAASxY,EAC9BsvE,EAAOp5G,KAAKoV,KAAK6L,EAAIqhC,EAASxY,IAGrB,aAATliC,IACFwxG,EAAY92D,EAASxY,EAAdC,EAAmB/pC,KAAKoV,KAAK6L,EAAIm4F,QAGvC,IAAa,kBAATxxG,EACL3C,KAAK8R,IAAI/W,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAAM34B,KAAK8R,IAAI/W,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,IAEtEk4F,EAAOn5G,KAAKoV,KAAKwoB,EAEfw7E,EADEp5G,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,EACjBjhB,KAAKmV,GAAG8L,GAAK,EAAIqhC,GAAUvY,EAE3B/pC,KAAKmV,GAAG8L,GAAK,EAAIqhC,GAAUvY,GAE3B9kC,KAAK8R,IAAI/W,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,GAAK34B,KAAK8R,IAAI/W,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,KAG1Ek4F,EADEn5G,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,EACjB59B,KAAKmV,GAAGyoB,GAAK,EAAI0kB,GAAUxY,EAE3B9pC,KAAKmV,GAAGyoB,GAAK,EAAI0kB,GAAUxY,EAEpCsvE,EAAOp5G,KAAKoV,KAAK6L,OAEd,IAAa,eAATrZ,EAEPuxG,EADEn5G,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,EACjB59B,KAAKmV,GAAGyoB,GAAK,EAAI0kB,GAAUxY,EAE3B9pC,KAAKmV,GAAGyoB,GAAK,EAAI0kB,GAAUxY,EAEpCsvE,EAAOp5G,KAAKoV,KAAK6L,MACZ,IAAa,aAATrZ,EACTuxG,EAAOn5G,KAAKoV,KAAKwoB,EAEfw7E,EADEp5G,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,EACjBjhB,KAAKmV,GAAG8L,GAAK,EAAIqhC,GAAUvY,EAE3B/pC,KAAKmV,GAAG8L,GAAK,EAAIqhC,GAAUvY,MAE/B,IAAa,aAATniC,EAAqB,CAC9BkiC,EAAK9pC,KAAKmV,GAAGyoB,EAAI59B,KAAKoV,KAAKwoB,EAC3BmM,EAAK/pC,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,CAC3B,IAAI40B,GAAS5wC,KAAKw0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAClCsvE,EAAKp0G,KAAK8wC,GAEVujE,EAAgBr0G,KAAKunD,MAAMziB,EAAID,GAC/ByvE,GAAWD,GAA0B,GAATh3D,EAAe,IAAO+2D,IAAO,EAAIA,EAEjEF,GAAOn5G,KAAKoV,KAAKwoB,GAAc,GAAT0kB,EAAe,IAAOzM,EAAS5wC,KAAKqkC,IAAIiwE,GAC9DH,EAAOp5G,KAAKoV,KAAK6L,GAAc,GAATqhC,EAAe,IAAOzM,EAAS5wC,KAAKwkC,IAAI8vE,OACzD,IAAa,cAAT3xG,EAAsB,CAC/BkiC,EAAK9pC,KAAKmV,GAAGyoB,EAAI59B,KAAKoV,KAAKwoB,EAC3BmM,EAAK/pC,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,CAC3B,IAAI40B,GAAS5wC,KAAKw0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAClCsvE,EAAKp0G,KAAK8wC,GAEVujE,EAAgBr0G,KAAKunD,MAAMziB,EAAID,GAC/ByvE,GAAWD,GAA2B,IAATh3D,EAAe,IAAO+2D,IAAO,EAAIA,EAElEF,GAAOn5G,KAAKoV,KAAKwoB,GAAc,GAAT0kB,EAAe,IAAOzM,EAAS5wC,KAAKqkC,IAAIiwE,GAC9DH,EAAOp5G,KAAKoV,KAAK6L,GAAc,GAATqhC,EAAe,IAAOzM,EAAS5wC,KAAKwkC,IAAI8vE,OAG1Dt0G,MAAK8R,IAAI/W,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAAM34B,KAAK8R,IAAI/W,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,GAClEjhB,KAAKoV,KAAK6L,GAAKjhB,KAAKmV,GAAG8L,EACrBjhB,KAAKoV,KAAKwoB,GAAK59B,KAAKmV,GAAGyoB,GACzBu7E,EAAOn5G,KAAKoV,KAAKwoB,EAAI0kB,EAASvY,EAC9BqvE,EAAOp5G,KAAKoV,KAAK6L,EAAIqhC,EAASvY,EAC9BovE,EAAOn5G,KAAKmV,GAAGyoB,EAAIu7E,EAAOn5G,KAAKmV,GAAGyoB,EAAIu7E,GAC7Bn5G,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAC/Bu7E,EAAOn5G,KAAKoV,KAAKwoB,EAAI0kB,EAASvY,EAC9BqvE,EAAOp5G,KAAKoV,KAAK6L,EAAIqhC,EAASvY,EAC9BovE,EAAOn5G,KAAKmV,GAAGyoB,EAAIu7E,EAAOn5G,KAAKmV,GAAGyoB,EAAIu7E,GAE/Bn5G,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,IAC3BjhB,KAAKoV,KAAKwoB,GAAK59B,KAAKmV,GAAGyoB,GACzBu7E,EAAOn5G,KAAKoV,KAAKwoB,EAAI0kB,EAASvY,EAC9BqvE,EAAOp5G,KAAKoV,KAAK6L,EAAIqhC,EAASvY,EAC9BovE,EAAOn5G,KAAKmV,GAAGyoB,EAAIu7E,EAAOn5G,KAAKmV,GAAGyoB,EAAIu7E,GAC7Bn5G,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAC/Bu7E,EAAOn5G,KAAKoV,KAAKwoB,EAAI0kB,EAASvY,EAC9BqvE,EAAOp5G,KAAKoV,KAAK6L,EAAIqhC,EAASvY,EAC9BovE,EAAOn5G,KAAKmV,GAAGyoB,EAAIu7E,EAAOn5G,KAAKmV,GAAGyoB,EAAIu7E,IAGjCl0G,KAAK8R,IAAI/W,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,GAAK34B,KAAK8R,IAAI/W,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,KACxEjhB,KAAKoV,KAAK6L,GAAKjhB,KAAKmV,GAAG8L,EACrBjhB,KAAKoV,KAAKwoB,GAAK59B,KAAKmV,GAAGyoB,GACzBu7E,EAAOn5G,KAAKoV,KAAKwoB,EAAI0kB,EAASxY,EAC9BsvE,EAAOp5G,KAAKoV,KAAK6L,EAAIqhC,EAASxY;AAC9BsvE,EAAOp5G,KAAKmV,GAAG8L,EAAIm4F,EAAOp5G,KAAKmV,GAAG8L,EAAIm4F,GAC7Bp5G,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAC/Bu7E,EAAOn5G,KAAKoV,KAAKwoB,EAAI0kB,EAASxY,EAC9BsvE,EAAOp5G,KAAKoV,KAAK6L,EAAIqhC,EAASxY,EAC9BsvE,EAAOp5G,KAAKmV,GAAG8L,EAAIm4F,EAAOp5G,KAAKmV,GAAG8L,EAAIm4F,GAE/Bp5G,KAAKoV,KAAK6L,EAAIjhB,KAAKmV,GAAG8L,IAC3BjhB,KAAKoV,KAAKwoB,GAAK59B,KAAKmV,GAAGyoB,GACzBu7E,EAAOn5G,KAAKoV,KAAKwoB,EAAI0kB,EAASxY,EAC9BsvE,EAAOp5G,KAAKoV,KAAK6L,EAAIqhC,EAASxY,EAC9BsvE,EAAOp5G,KAAKmV,GAAG8L,EAAIm4F,EAAOp5G,KAAKmV,GAAG8L,EAAIm4F,GAC7Bp5G,KAAKoV,KAAKwoB,EAAI59B,KAAKmV,GAAGyoB,IAC/Bu7E,EAAOn5G,KAAKoV,KAAKwoB,EAAI0kB,EAASxY,EAC9BsvE,EAAOp5G,KAAKoV,KAAK6L,EAAIqhC,EAASxY,EAC9BsvE,EAAOp5G,KAAKmV,GAAG8L,EAAIm4F,EAAOp5G,KAAKmV,GAAG8L,EAAIm4F,IAK9C,QAASx7E,EAAGu7E,EAAMl4F,EAAGm4F,MAGvBzvG,IAAK,sBACL5E,MAAO,SAA6BovG,EAAU5iE,GAC5C,GAAI1tC,GAAUwC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,EAEnF,OAAOrG,MAAKo0G,0BAA0BD,EAAU5iE,EAAK1tC,EAAQ8xG,QAG/DhsG,IAAK,qBACL5E,MAAO,SAA4B+uG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,GACrD,GAAI9C,GAAUnrG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAKk0G,qBAAuB7tG,UAAU,EAE1G,OAAOrG,MAAKy0G,yBAAyBX,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAI9C,MAW/D7nG,IAAK,WACL5E,MAAO,SAAkBmuG,GACvB,GAAI1B,GAAUnrG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAKk0G,qBAAuB7tG,UAAU,GAEtGsJ,EAAIujG,EACJt1E,EAAI34B,KAAK8U,IAAI,EAAIpK,EAAG,GAAK3P,KAAK2xG,UAAU/zE,EAAI,EAAIjuB,GAAK,EAAIA,GAAK6hG,EAAQ5zE,EAAI34B,KAAK8U,IAAIpK,EAAG,GAAK3P,KAAK4xG,QAAQh0E,EACxG3c,EAAIhc,KAAK8U,IAAI,EAAIpK,EAAG,GAAK3P,KAAK2xG,UAAU1wF,EAAI,EAAItR,GAAK,EAAIA,GAAK6hG,EAAQvwF,EAAIhc,KAAK8U,IAAIpK,EAAG,GAAK3P,KAAK4xG,QAAQ3wF,CAE5G,QAAS2c,EAAGA,EAAG3c,EAAGA,OAIfi4F,GACNT,EAAqB,WAExB74G,GAAQ,WAAas5G,EACrBr5G,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcizG,EAAgBt5G,EAAoB,IAEpCu5G,EAAiB5iC,EAAuB2iC,GAExCE,EAAe,SAAWlE,GAG5B,QAASkE,GAAa71G,EAASu7C,EAAM6nD,GACnCjwB,EAAgBh3E,KAAM05G,GAEtBvP,EAAK/iG,OAAOujG,eAAe+O,EAAazmG,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAM6nD,GAyErG,MA9EA6C,GAAU4P,EAAclE,GAcxBp+B,EAAasiC,IACX/vG,IAAK,QACL5E,MAAO,SAAewsC,GAEpBA,EAAIa,YACJb,EAAIc,OAAOryC,KAAK2xG,UAAU/zE,EAAG59B,KAAK2xG,UAAU1wF,GAC5CswB,EAAIe,OAAOtyC,KAAK4xG,QAAQh0E,EAAG59B,KAAK4xG,QAAQ3wF,GAExCjhB,KAAKorG,aAAa75D,GAClBA,EAAI7J,SACJ1nC,KAAKqrG,cAAc95D,MAGrB5nC,IAAK,aACL5E,MAAO,eAYP4E,IAAK,WACL5E,MAAO,SAAkBmuG,GACvB,OACEt1E,GAAI,EAAIs1E,GAAclzG,KAAK2xG,UAAU/zE,EAAIs1E,EAAalzG,KAAK4xG,QAAQh0E,EACnE3c,GAAI,EAAIiyF,GAAclzG,KAAK2xG,UAAU1wF,EAAIiyF,EAAalzG,KAAK4xG,QAAQ3wF,MAIvEtX,IAAK,sBACL5E,MAAO,SAA6BovG,EAAU5iE,GAC5C,GAAI4gE,GAAQnyG,KAAKmV,GACbi9F,EAAQpyG,KAAKoV,IACb++F,GAAS9zG,KAAOL,KAAKoV,KAAK/U,KAC5B8xG,EAAQnyG,KAAKoV,KACbg9F,EAAQpyG,KAAKmV,GAGf,IAAIu1C,GAAQzlD,KAAKunD,MAAM2lD,EAAMlxF,EAAImxF,EAAMnxF,EAAGkxF,EAAMv0E,EAAIw0E,EAAMx0E,GACtDkM,EAAKqoE,EAAMv0E,EAAIw0E,EAAMx0E,EACrBmM,EAAKooE,EAAMlxF,EAAImxF,EAAMnxF,EACrB04F,EAAoB10G,KAAKw0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAC7C6vE,EAAezF,EAAS7M,iBAAiB/1D,EAAKmZ,GAC9CmvD,GAAiBF,EAAoBC,GAAgBD,EAErDG,IAIJ,OAHAA,GAAUl8E,GAAK,EAAIi8E,GAAiBzH,EAAMx0E,EAAIi8E,EAAgB1H,EAAMv0E,EACpEk8E,EAAU74F,GAAK,EAAI44F,GAAiBzH,EAAMnxF,EAAI44F,EAAgB1H,EAAMlxF,EAE7D64F,KAGTnwG,IAAK,qBACL5E,MAAO,SAA4B+uG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,GAErD,MAAOt0G,MAAKo1G,mBAAmBtB,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,OAIhDoF,GACND,EAAe,WAElB75G,GAAQ,WAAa85G,EACrB75G,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCARhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hB6iC,EAAoC75G,EAAoB,IAExD85G,EAAqCnjC,EAAuBkjC,GAE5DE,EAAoC/5G,EAAoB,IAExDg6G,EAAqCrjC,EAAuBojC,GAE5DE,EAAgDj6G,EAAoB,IAEpEk6G,EAAiDvjC,EAAuBsjC,GAExEE,EAAiCn6G,EAAoB,IAErDo6G,EAAkCzjC,EAAuBwjC,GAEzDE,EAA6Cr6G,EAAoB,IAEjEs6G,EAA8C3jC,EAAuB0jC,GAErEE,EAAyCv6G,EAAoB,IAE7Dw6G,EAA0C7jC,EAAuB4jC,GAEjEE,EAA4Cz6G,EAAoB,IAEhE06G,EAA6C/jC,EAAuB8jC,GAEpEE,EAAiD36G,EAAoB,IAErE46G,EAAkDjkC,EAAuBgkC,GAEzEl6G,EAAOT,EAAoB,GAE3B66G,EAAgB,WAClB,QAASA,GAAc37D,GACrB43B,EAAgBh3E,KAAM+6G,GAEtB/6G,KAAKo/C,KAAOA,EACZp/C,KAAKg7G,aAAgBC,sBAAwBC,sBAAwBC,UAAYC,eAEjFp7G,KAAKq7G,gBAAiB,EACtBr7G,KAAKs7G,mBAAqB,IAAO,GACjCt7G,KAAKu7G,iBAAkB,EACvBv7G,KAAKw7G,kBACLx7G,KAAKy7G,kBACLz7G,KAAK07G,eACL17G,KAAK27G,YAAcp1G,OAGnBvG,KAAK47G,kBAAmB,EACxB57G,KAAK67G,yBAA0B,EAC/B77G,KAAK87G,gBAAkB,EACvB97G,KAAK+7G,iBAAmB,EAExB/7G,KAAKg8G,YAAa,EAClBh8G,KAAKi8G,sBAAuB,EAC5Bj8G,KAAKk8G,wBAA0B,EAC/Bl8G,KAAKm8G,OAAQ,EAGbn8G,KAAK6D,WACL7D,KAAK4+C,gBACH/tC,SAAS,EACTurG,WACEC,MAAO,GACPC,sBAAuB,KACvBC,eAAgB,GAChBC,aAAc,GACdC,eAAgB,IAChBC,QAAS,IACTC,aAAc,GAEhBC,kBACEP,MAAO,GACPC,sBAAuB,IACvBC,eAAgB,IAChBE,eAAgB,IAChBD,aAAc,IACdE,QAAS,GACTC,aAAc,GAEhBE,WACEN,eAAgB,GAChBC,aAAc,IACdC,eAAgB,IAChBK,aAAc,IACdJ,QAAS,IACTC,aAAc,GAEhBI,uBACER,eAAgB,EAChBC,aAAc,IACdC,eAAgB,IAChBK,aAAc,IACdJ,QAAS,KAEXM,YAAa,GACbC,YAAa,IACb9gC,OAAQ,YACR+gC,eACErsG,SAAS,EACTssG,WAAY,IACZC,eAAgB,GAChBC,kBAAkB,EAClBt8D,KAAK,GAEPu8D,SAAU,GACV1B,kBAAkB,GAEpBj7G,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK4+C,gBAC/B5+C,KAAKs9G,SAAW,GAChBt9G,KAAKu9G,cAAe,EAEpBv9G,KAAK67F,qBA2pBP,MAxpBAzkB,GAAa2jC,IACXpxG,IAAK,qBACL5E,MAAO,WACL,GAAIm9C,GAAQliD,IAEZA,MAAKo/C,KAAKE,QAAQlgB,GAAG,cAAe,WAClC8iB,EAAMs7D,gBAERx9G,KAAKo/C,KAAKE,QAAQlgB,GAAG,gBAAiB,WACpC8iB,EAAMq7D,cAAe,IAEvBv9G,KAAKo/C,KAAKE,QAAQlgB,GAAG,eAAgB,WACnC8iB,EAAM4+C,iBAAiB5+C,EAAMi6D,OAAQ,IAEvCn8G,KAAKo/C,KAAKE,QAAQlgB,GAAG,iBAAkB,WACrC8iB,EAAMm5D,gBAAiB,EAAMn5D,EAAM4+C,mBAErC9gG,KAAKo/C,KAAKE,QAAQlgB,GAAG,iBAAkB,WACrC8iB,EAAMljB,WAAWkjB,EAAMr+C,SACnBq+C,EAAMi6D,SAAU,GAClBj6D,EAAM2+C,oBAGV7gG,KAAKo/C,KAAKE,QAAQlgB,GAAG,kBAAmB,WAClC8iB,EAAMi6D,SAAU,GAClBj6D,EAAM2+C,oBAGV7gG,KAAKo/C,KAAKE,QAAQlgB,GAAG,iBAAkB,WACrC8iB,EAAM4+C,mBAER9gG,KAAKo/C,KAAKE,QAAQlgB,GAAG,UAAW,WAC9B8iB,EAAM4+C,gBAAe,GACrB5+C,EAAM9C,KAAKE,QAAQ/f,QAGrBv/B,KAAKo/C,KAAKE,QAAQlgB,GAAG,eAAgB,WAEnC8iB,EAAMu7D,yBAYV9zG,IAAK,aACL5E,MAAO,SAAoBlB,GACT0C,SAAZ1C,IACEA,KAAY,GACd7D,KAAK6D,QAAQgN,SAAU,EACvB7Q,KAAKq7G,gBAAiB,EACtBr7G,KAAK8gG,mBAEL9gG,KAAKq7G,gBAAiB,EACtB16G,EAAK2G,wBAAwB,iBAAkBtH,KAAK6D,QAASA,GAC7DlD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,iBAEjB0C,SAApB1C,EAAQgN,UACV7Q,KAAK6D,QAAQgN,SAAU,GAGrB7Q,KAAK6D,QAAQgN,WAAY,IAC3B7Q,KAAKq7G,gBAAiB,EACtBr7G,KAAK8gG,kBAIP9gG,KAAKs9G,SAAWt9G,KAAK6D,QAAQy5G,WAGjCt9G,KAAK0oD,UAOP/+C,IAAK,OACL5E,MAAO,WACL,GAAIlB,EACwB,sBAAxB7D,KAAK6D,QAAQs4E,QACft4E,EAAU7D,KAAK6D,QAAQ+4G,iBACvB58G,KAAK09G,YAAc,GAAI9C,GAA2C,WAAW56G,KAAKo/C,KAAMp/C,KAAKg7G,YAAan3G,GAC1G7D,KAAK29G,YAAc,GAAIrD,GAAgC,WAAWt6G,KAAKo/C,KAAMp/C,KAAKg7G,YAAan3G,GAC/F7D,KAAK49G,cAAgB,GAAI9C,GAAgD,WAAW96G,KAAKo/C,KAAMp/C,KAAKg7G,YAAan3G,IAChF,cAAxB7D,KAAK6D,QAAQs4E,QACtBt4E,EAAU7D,KAAK6D,QAAQg5G,UACvB78G,KAAK09G,YAAc,GAAIxD,GAAmC,WAAWl6G,KAAKo/C,KAAMp/C,KAAKg7G,YAAan3G,GAClG7D,KAAK29G,YAAc,GAAIrD,GAAgC,WAAWt6G,KAAKo/C,KAAMp/C,KAAKg7G,YAAan3G,GAC/F7D,KAAK49G,cAAgB,GAAIlD,GAAwC,WAAW16G,KAAKo/C,KAAMp/C,KAAKg7G,YAAan3G,IACxE,0BAAxB7D,KAAK6D,QAAQs4E,QACtBt4E,EAAU7D,KAAK6D,QAAQk5G,sBACvB/8G,KAAK09G,YAAc,GAAItD,GAA+C,WAAWp6G,KAAKo/C,KAAMp/C,KAAKg7G,YAAan3G,GAC9G7D,KAAK29G,YAAc,GAAInD,GAA4C,WAAWx6G,KAAKo/C,KAAMp/C,KAAKg7G,YAAan3G,GAC3G7D,KAAK49G,cAAgB,GAAIlD,GAAwC,WAAW16G,KAAKo/C,KAAMp/C,KAAKg7G,YAAan3G,KAGzGA,EAAU7D,KAAK6D,QAAQu4G,UACvBp8G,KAAK09G,YAAc,GAAI1D,GAAmC,WAAWh6G,KAAKo/C,KAAMp/C,KAAKg7G,YAAan3G,GAClG7D,KAAK29G,YAAc,GAAIrD,GAAgC,WAAWt6G,KAAKo/C,KAAMp/C,KAAKg7G,YAAan3G,GAC/F7D,KAAK49G,cAAgB,GAAIlD,GAAwC,WAAW16G,KAAKo/C,KAAMp/C,KAAKg7G,YAAan3G,IAG3G7D,KAAK69G,aAAeh6G,KAOtB8F,IAAK,cACL5E,MAAO,WACD/E,KAAKq7G,kBAAmB,GAAQr7G,KAAK6D,QAAQgN,WAAY,EACvD7Q,KAAK6D,QAAQq5G,cAAcrsG,WAAY,EACzC7Q,KAAK+gG,aAEL/gG,KAAKg8G,YAAa,EAClBh8G,KAAKm8G,OAAQ,EACbn8G,KAAKo/C,KAAKE,QAAQzH,KAAK,SAAW73C,KAAKu9G,cACvCv9G,KAAK6gG,oBAGP7gG,KAAKm8G,OAAQ,EACbn8G,KAAKo/C,KAAKE,QAAQzH,KAAK,WAQ3BluC,IAAK,kBACL5E,MAAO,WACD/E,KAAKq7G,kBAAmB,GAAQr7G,KAAK6D,QAAQgN,WAAY,GAC3D7Q,KAAKg8G,YAAa,EAGlBh8G,KAAK47G,kBAAmB,EAGxB57G,KAAKo/C,KAAKE,QAAQzH,KAAK,gBACGtxC,SAAtBvG,KAAK89G,eACP99G,KAAK89G,aAAe99G,KAAK+9G,eAAex+D,KAAKv/C,MAC7CA,KAAKo/C,KAAKE,QAAQlgB,GAAG,aAAcp/B,KAAK89G,cACxC99G,KAAKo/C,KAAKE,QAAQzH,KAAK,qBAGzB73C,KAAKo/C,KAAKE,QAAQzH,KAAK,cAQ3BluC,IAAK,iBACL5E,MAAO,WACL,GAAI8yC,GAAOxxC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAElFrG,MAAKg8G,YAAa,EACdnkE,KAAS,GACX73C,KAAKg+G,kBAEmBz3G,SAAtBvG,KAAK89G,eACP99G,KAAKo/C,KAAKE,QAAQ/f,IAAI,aAAcv/B,KAAK89G,cACzC99G,KAAK89G,aAAev3G,OAChBsxC,KAAS,GACX73C,KAAKo/C,KAAKE,QAAQzH,KAAK,sBAU7BluC,IAAK,iBACL5E,MAAO,WAEL,GAAIk5G,GAAY54G,KAAK4d,KACrBjjB,MAAKk+G,aACL,IAAIC,GAAc94G,KAAK4d,MAAQg7F,GAG1BE,EAAc,GAAMn+G,KAAKs7G,oBAAsBt7G,KAAKo+G,kBAAmB,IAASp+G,KAAKg8G,cAAe,IACvGh8G,KAAKk+G,cAGLl+G,KAAKo+G,gBAAiB,GAGpBp+G,KAAKg8G,cAAe,GACtBh8G,KAAK8gG,oBASTn3F,IAAK,kBACL5E,MAAO,WACL,GAAI20E,GAAS15E,KAETq+G,EAAqBh4G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAKk8G,wBAA0B71G,UAAU,IAEpHrG,KAAKk8G,wBAA0B,GAAKl8G,KAAKi8G,wBAAyB,IACpE/xG,WAAW,WACTwvE,EAAOt6B,KAAKE,QAAQzH,KAAK,cAAgBslE,WAAYkB,IACrD3kC,EAAOuiC,sBAAuB,EAC9BviC,EAAOwiC,wBAA0B,GAChC,MAUPvyG,IAAK,cACL5E,MAAO,WAOL,GALI/E,KAAKi8G,wBAAyB,IAChCj8G,KAAKo/C,KAAKE,QAAQzH,KAAK,oBACvB73C,KAAKi8G,sBAAuB,GAG1Bj8G,KAAKg8G,cAAe,EAAO,CAE7B,GAAIh8G,KAAK47G,oBAAqB,GAAQ57G,KAAK67G,2BAA4B,EAAM,CAE3E,GAAIv5D,GAAS,GAGTtiD,MAAK87G,gBAAkB97G,KAAK+7G,mBAAqB,GAGnD/7G,KAAKs9G,SAAW,EAAIt9G,KAAKs9G,SACzBt9G,KAAKs+G,kBACLt+G,KAAKu+G,YACLv+G,KAAKw+G,SAGLx+G,KAAKs9G,SAAW,GAAMt9G,KAAKs9G,SAG3Bt9G,KAAKs+G,kBACLt+G,KAAKu+G,YACLv+G,KAAKs+G,kBACLt+G,KAAKu+G,YAGDv+G,KAAKy+G,0BAA2B,EAClCz+G,KAAKs9G,SAAWh7D,EAAStiD,KAAKs9G,SAK1Bt9G,KAAKs9G,SAAWh7D,EAAStiD,KAAK6D,QAAQy5G,SACxCt9G,KAAKs9G,SAAWt9G,KAAK6D,QAAQy5G,UAI7Bt9G,KAAK87G,gBAAkB,GACvB97G,KAAKs9G,SAAWr4G,KAAKJ,IAAI7E,KAAK6D,QAAQy5G,SAAUt9G,KAAKs9G,SAAWh7D,MAKpEtiD,KAAKs+G,kBACLt+G,KAAKu+G,aAIPv+G,KAAK87G,iBAAmB,MAGxB97G,MAAKs9G,SAAWt9G,KAAK6D,QAAQy5G,SAC7Bt9G,KAAKs+G,kBACLt+G,KAAKu+G,WAIHv+G,MAAKg8G,cAAe,GACtBh8G,KAAKw+G,SAGPx+G,KAAKk8G,8BAUTvyG,IAAK,oBACL5E,MAAO,WACL/E,KAAKg7G,YAAYG,UACjBn7G,KAAKg7G,YAAYC,sBACjBj7G,KAAKg7G,YAAYE,qBACjB,IAAIvgB,GAAQ36F,KAAKo/C,KAAKu7C,MAClBE,EAAQ76F,KAAKo/C,KAAKy7C,KAGtB,KAAK,GAAI6D,KAAU/D,GACbA,EAAM30F,eAAe04F,IACnB/D,EAAM+D,GAAQ76F,QAAQq4E,WAAY,GACpCl8E,KAAKg7G,YAAYC,mBAAmBzzG,KAAKmzF,EAAM+D,GAAQr+F,GAM7D,KAAK,GAAIs+F,KAAU9D,GACbA,EAAM70F,eAAe24F,IACnB9D,EAAM8D,GAAQ96F,QAAQq4E,WAAY,GACpCl8E,KAAKg7G,YAAYE,mBAAmB1zG,KAAKqzF,EAAM8D,GAAQt+F,GAM7D,KAAK,GAAIoG,GAAI,EAAGA,EAAIzG,KAAKg7G,YAAYC,mBAAmB30G,OAAQG,IAAK,CACnE,GAAIi4F,GAAS1+F,KAAKg7G,YAAYC,mBAAmBx0G,EACjDzG,MAAKg7G,YAAYG,OAAOzc,IAAY9gE,EAAG,EAAG3c,EAAG,GAGD1a,SAAxCvG,KAAKg7G,YAAYI,WAAW1c,KAC9B1+F,KAAKg7G,YAAYI,WAAW1c,IAAY9gE,EAAG,EAAG3c,EAAG,IAKrD,IAAK,GAAIy9E,KAAU1+F,MAAKg7G,YAAYI,WACZ70G,SAAlBo0F,EAAM+D,UACD1+F,MAAKg7G,YAAYI,WAAW1c,MASzC/0F,IAAK,SACL5E,MAAO,WACL,GAAI25G,GAAUt3G,OAAO6H,KAAKjP,KAAKw7G,gBAC3B7gB,EAAQ36F,KAAKo/C,KAAKu7C,MAClBygB,EAAap7G,KAAKg7G,YAAYI,UAClCp7G,MAAKy7G,iBAEL,KAAK,GAAIh1G,GAAI,EAAGA,EAAIi4G,EAAQp4G,OAAQG,IAAK,CACvC,GAAIi4F,GAASggB,EAAQj4G,EACCF,UAAlBo0F,EAAM+D,GACJ/D,EAAM+D,GAAQ76F,QAAQq4E,WAAY,IACpCl8E,KAAKy7G,eAAe/c,IAClBigB,WAAa/gF,EAAG+8D,EAAM+D,GAAQ9gE,EAAG3c,EAAG05E,EAAM+D,GAAQz9E,IAEpDm6F,EAAW1c,GAAQ9gE,EAAI59B,KAAKw7G,eAAe9c,GAAQkgB,GACnDxD,EAAW1c,GAAQz9E,EAAIjhB,KAAKw7G,eAAe9c,GAAQmgB,GACnDlkB,EAAM+D,GAAQ9gE,EAAI59B,KAAKw7G,eAAe9c,GAAQ9gE,EAC9C+8D,EAAM+D,GAAQz9E,EAAIjhB,KAAKw7G,eAAe9c,GAAQz9E,SAGzCjhB,MAAKw7G,eAAe9c,OASjC/0F,IAAK,uBACL5E,MAAO,WACL,GAAI+kC,GAAKvjC,OACLwjC,EAAKxjC,OACLu4G,EAAOv4G,OACPo0F,EAAQ36F,KAAKo/C,KAAKu7C,MAClBokB,EAAY/+G,KAAKy7G,eACjBllD,EAAe,EAEnB,KAAK,GAAImoC,KAAU1+F,MAAKy7G,eACtB,GAAIz7G,KAAKy7G,eAAez1G,eAAe04F,IAA6Bn4F,SAAlBo0F,EAAM+D,KACtD50D,EAAK6wD,EAAM+D,GAAQ9gE,EAAImhF,EAAUrgB,GAAQigB,UAAU/gF,EACnDmM,EAAK4wD,EAAM+D,GAAQz9E,EAAI89F,EAAUrgB,GAAQigB,UAAU19F,EAEnD69F,EAAO75G,KAAKw0C,KAAKx0C,KAAK8U,IAAI+vB,EAAI,GAAK7kC,KAAK8U,IAAIgwB,EAAI,IAE5C+0E,EAAOvoD,GACT,OAAO,CAIb,QAAO,KAQT5sD,IAAK,YACL5E,MAAO,WASL,IAAK,GARD61F,GAAc56F,KAAKg7G,YAAYC,mBAC/B+B,EAAch9G,KAAK6D,QAAQm5G,YAAch9G,KAAK6D,QAAQm5G,YAAc,IACpEgC,EAAkB,EAClBC,EAAsB,EAGtBC,EAA4B,EAEvBz4G,EAAI,EAAGA,EAAIm0F,EAAYt0F,OAAQG,IAAK,CAC3C,GAAIi4F,GAAS9D,EAAYn0F,GACrB04G,EAAen/G,KAAKo/G,aAAa1gB,EAAQse,EAE7CgC,GAAkB/5G,KAAKJ,IAAIm6G,EAAiBG,GAC5CF,GAAuBE,EAIzBn/G,KAAK67G,wBAA0BoD,EAAsBrkB,EAAYt0F,OAAS44G,EAC1El/G,KAAKg8G,WAAagD,EAAkBh/G,KAAK6D,QAAQo5G,eAYnDtzG,IAAK,eACL5E,MAAO,SAAsB25F,EAAQse,GACnC,GAAIphF,GAAO57B,KAAKo/C,KAAKu7C,MAAM+D,GACvB4e,EAAWt9G,KAAKs9G,SAChBnC,EAASn7G,KAAKg7G,YAAYG,OAC1BC,EAAap7G,KAAKg7G,YAAYI,UAKlC,IAFAp7G,KAAKw7G,eAAe9c,IAAY9gE,EAAGhC,EAAKgC,EAAG3c,EAAG2a,EAAK3a,EAAG29F,GAAIxD,EAAW1c,GAAQ9gE,EAAGihF,GAAIzD,EAAW1c,GAAQz9E,GAEnG2a,EAAK/3B,QAAQ6+F,MAAM9kE,KAAM,EAAO,CAClC,GAAIkM,GAAK9pC,KAAK69G,aAAanB,QAAUtB,EAAW1c,GAAQ9gE,EACpDkL,GAAMqyE,EAAOzc,GAAQ9gE,EAAIkM,GAAMlO,EAAK/3B,QAAQm/F,IAChDoY,GAAW1c,GAAQ9gE,GAAKkL,EAAKw0E,EAC7BlC,EAAW1c,GAAQ9gE,EAAI34B,KAAK8R,IAAIqkG,EAAW1c,GAAQ9gE,GAAKo/E,EAAc5B,EAAW1c,GAAQ9gE,EAAI,EAAIo/E,GAAeA,EAAc5B,EAAW1c,GAAQ9gE,EACjJhC,EAAKgC,GAAKw9E,EAAW1c,GAAQ9gE,EAAI0/E,MAE/BnC,GAAOzc,GAAQ9gE,EAAI,EACnBw9E,EAAW1c,GAAQ9gE,EAAI,CAG3B,IAAIhC,EAAK/3B,QAAQ6+F,MAAMzhF,KAAM,EAAO,CAClC,GAAI8oB,GAAK/pC,KAAK69G,aAAanB,QAAUtB,EAAW1c,GAAQz9E,EACpD8nB,GAAMoyE,EAAOzc,GAAQz9E,EAAI8oB,GAAMnO,EAAK/3B,QAAQm/F,IAChDoY,GAAW1c,GAAQz9E,GAAK8nB,EAAKu0E,EAC7BlC,EAAW1c,GAAQz9E,EAAIhc,KAAK8R,IAAIqkG,EAAW1c,GAAQz9E,GAAK+7F,EAAc5B,EAAW1c,GAAQz9E,EAAI,EAAI+7F,GAAeA,EAAc5B,EAAW1c,GAAQz9E,EACjJ2a,EAAK3a,GAAKm6F,EAAW1c,GAAQz9E,EAAIq8F,MAE/BnC,GAAOzc,GAAQz9E,EAAI,EACnBm6F,EAAW1c,GAAQz9E,EAAI,CAG3B,IAAIo+F,GAAgBp6G,KAAKw0C,KAAKx0C,KAAK8U,IAAIqhG,EAAW1c,GAAQ9gE,EAAG,GAAK34B,KAAK8U,IAAIqhG,EAAW1c,GAAQz9E,EAAG,GACjG,OAAOo+F,MAOT11G,IAAK,kBACL5E,MAAO,WACL/E,KAAK49G,cAAc0B,QACnBt/G,KAAK09G,YAAY4B,QACjBt/G,KAAK29G,YAAY2B,WAUnB31G,IAAK,eACL5E,MAAO,WACL,GAAI41F,GAAQ36F,KAAKo/C,KAAKu7C,KACtB,KAAK,GAAIt6F,KAAMs6F,GACTA,EAAM30F,eAAe3F,IACnBs6F,EAAMt6F,GAAIu9B,GAAK+8D,EAAMt6F,GAAI4gB,IAC3BjhB,KAAK07G,YAAYr7G,IAAQu9B,EAAG+8D,EAAMt6F,GAAIwD,QAAQ6+F,MAAM9kE,EAAG3c,EAAG05E,EAAMt6F,GAAIwD,QAAQ6+F,MAAMzhF,GAClF05E,EAAMt6F,GAAIwD,QAAQ6+F,MAAM9kE,GAAI,EAC5B+8D,EAAMt6F,GAAIwD,QAAQ6+F,MAAMzhF,GAAI,MAYpCtX,IAAK,sBACL5E,MAAO,WACL,GAAI41F,GAAQ36F,KAAKo/C,KAAKu7C,KACtB,KAAK,GAAIt6F,KAAMs6F,GACTA,EAAM30F,eAAe3F,IACMkG,SAAzBvG,KAAK07G,YAAYr7G,KACnBs6F,EAAMt6F,GAAIwD,QAAQ6+F,MAAM9kE,EAAI59B,KAAK07G,YAAYr7G,GAAIu9B,EACjD+8D,EAAMt6F,GAAIwD,QAAQ6+F,MAAMzhF,EAAIjhB,KAAK07G,YAAYr7G,GAAI4gB,EAIvDjhB,MAAK07G,kBAOP/xG,IAAK,YACL5E,MAAO,WACL,GAAIy1E,GAASx6E,KAETm9G,EAAa92G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAK6D,QAAQq5G,cAAcC,WAAa92G,UAAU,EAOzH,OAL0B,gBAAf82G,KACTx9F,QAAQw+B,IAAI,oFAAqFn+C,KAAK6D,QAAQq5G,cAAcC,YAC5HA,EAAan9G,KAAK6D,QAAQq5G,cAAcC,YAGS,IAA/Cn9G,KAAKg7G,YAAYC,mBAAmB30G,YACtCtG,KAAKm8G,OAAQ,IAKfn8G,KAAK47G,iBAA2B57G,KAAK6D,QAAQ+3G,iBAG7C57G,KAAKo/C,KAAKE,QAAQzH,KAAK,gBAGvB73C,KAAK8gG,iBAGL9gG,KAAKg8G,YAAa,EAGlBh8G,KAAKo/C,KAAKE,QAAQzH,KAAK,gBACvB73C,KAAKu/G,iBAAmBpC,EAGpBn9G,KAAK6D,QAAQq5G,cAAcG,oBAAqB,GAClDr9G,KAAKw/G,eAEPx/G,KAAKk8G,wBAA0B,MAE/BhyG,YAAW,WACT,MAAOswE,GAAOilC,uBACb,OAQL91G,IAAK,sBACL5E,MAAO,WAED/E,KAAKi8G,wBAAyB,IAChCj8G,KAAKo/C,KAAKE,QAAQzH,KAAK,oBACvB73C,KAAKi8G,sBAAuB,EAI9B,KADA,GAAIhqF,GAAQ,EACLjyB,KAAKg8G,cAAe,GAAS/pF,EAAQjyB,KAAK6D,QAAQq5G,cAAcE,gBAAkBp9G,KAAKk8G,wBAA0Bl8G,KAAKu/G,kBAC3Hv/G,KAAKk+G,cACLjsF,GAGEjyB,MAAKg8G,cAAe,GAASh8G,KAAKk8G,wBAA0Bl8G,KAAKu/G,kBACnEv/G,KAAKo/C,KAAKE,QAAQzH,KAAK,yBAA2BslE,WAAYn9G,KAAKk8G,wBAAyBp3G,MAAO9E,KAAKu/G,mBACxGr1G,WAAWlK,KAAKy/G,oBAAoBlgE,KAAKv/C,MAAO,IAEhDA,KAAK0/G,4BAST/1G,IAAK,yBACL5E,MAAO,WACL/E,KAAKo/C,KAAKE,QAAQzH,KAAK,gBACnB73C,KAAK6D,QAAQq5G,cAAcn8D,OAAQ,GACrC/gD,KAAKo/C,KAAKE,QAAQzH,KAAK,OAGrB73C,KAAK6D,QAAQq5G,cAAcG,oBAAqB,GAClDr9G,KAAK2/G,sBAGP3/G,KAAKo/C,KAAKE,QAAQzH,KAAK,+BACvB73C,KAAKo/C,KAAKE,QAAQzH,KAAK,kBAEnB73C,KAAKg8G,cAAe,EACtBh8G,KAAKg+G,kBAELh+G,KAAK6gG,kBAGP7gG,KAAKm8G,OAAQ,KAGfxyG,IAAK,cACL5E,MAAO,SAAqBwsC,GAC1B,IAAK,GAAI9qC,GAAI,EAAGA,EAAIzG,KAAKg7G,YAAYC,mBAAmB30G,OAAQG,IAAK,CACnE,GAAIm1B,GAAO57B,KAAKo/C,KAAKu7C,MAAM36F,KAAKg7G,YAAYC,mBAAmBx0G,IAC3D8wD,EAAQv3D,KAAKg7G,YAAYG,OAAOn7G,KAAKg7G,YAAYC,mBAAmBx0G,IACpE67C,EAAS,GACTs9D,EAAc,IACdC,EAAY56G,KAAKw0C,KAAKx0C,KAAK8U,IAAIw9C,EAAM35B,EAAG,GAAK34B,KAAK8U,IAAIw9C,EAAM35B,EAAG,IAE/DK,EAAOh5B,KAAKL,IAAIK,KAAKJ,IAAI,EAAGg7G,GAAY,IACxCC,EAAY,EAAI7hF,EAEhBxxB,EAAQ9L,EAAKoN,UAAU,IAA0D,IAApD9I,KAAKL,IAAI,EAAGK,KAAKJ,IAAI,EAAG+6G,EAAcC,KAAqB,IAAK,EAAG,EAEpGtuE,GAAIO,UAAY7T,EAChBsT,EAAIY,YAAc1lC,EAClB8kC,EAAIa,YACJb,EAAIc,OAAOzW,EAAKgC,EAAGhC,EAAK3a,GACxBswB,EAAIe,OAAO1W,EAAKgC,EAAI0kB,EAASiV,EAAM35B,EAAGhC,EAAK3a,EAAIqhC,EAASiV,EAAMt2C,GAC9DswB,EAAI7J,QAEJ,IAAIgjB,GAAQzlD,KAAKunD,MAAM+K,EAAMt2C,EAAGs2C,EAAM35B,EACtC2T,GAAIiB,UAAY/lC,EAChB8kC,EAAIgnE,MAAM38E,EAAKgC,EAAI0kB,EAASiV,EAAM35B,EAAI34B,KAAKwkC,IAAIihB,GAASo1D,EAAWlkF,EAAK3a,EAAIqhC,EAASiV,EAAMt2C,EAAIhc,KAAKqkC,IAAIohB,GAASo1D,EAAWp1D,EAAOo1D,GACnIvuE,EAAI9J,YAKHszE,IAGTn7G,GAAQ,WAAam7G,EACrBl7G,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAUrB,QAASo3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hB6oC,EAAkB,WACpB,QAASA,GAAgB3gE,EAAM47D,EAAan3G,GAC1CmzE,EAAgBh3E,KAAM+/G,GAEtB//G,KAAKo/C,KAAOA,EACZp/C,KAAKg7G,YAAcA,EACnBh7G,KAAKggH,cACLhgH,KAAKg/B,WAAWn7B,GAChB7D,KAAKigH,WAAa,EA0dpB,MApdA7oC,GAAa2oC,IACXp2G,IAAK,aACL5E,MAAO,SAAoBlB,GACzB7D,KAAK6D,QAAUA,EACf7D,KAAKkgH,cAAgB,EAAIlgH,KAAK6D,QAAQw4G,MACtCr8G,KAAKmgH,uBAAyB,EAAIl7G,KAAKJ,IAAI,EAAGI,KAAKL,IAAI,EAAG5E,KAAK6D,QAAQ84G,kBAGzEhzG,IAAK,eACL5E,MAAO,WACL,GAAI64B,GAAkC,IAA9B34B,KAAKqkC,IAAItpC,KAAKigH,aACtB,OAAOriF,GAAI34B,KAAKuK,MAAMouB,MAUxBj0B,IAAK,QACL5E,MAAO,WACL,GAA2C,IAAvC/E,KAAK6D,QAAQy4G,uBAA+Bt8G,KAAKg7G,YAAYC,mBAAmB30G,OAAS,EAAG,CAC9F,GAAIs1B,GAAOr1B,OACPo0F,EAAQ36F,KAAKo/C,KAAKu7C,MAClBC,EAAc56F,KAAKg7G,YAAYC,mBAC/BmF,EAAYxlB,EAAYt0F,OAGxB05G,EAAgBhgH,KAAKqgH,mBAAmB1lB,EAAOC,EAGnD56F,MAAKggH,cAAgBA,CAGrB,KAAK,GAAIv5G,GAAI,EAAO25G,EAAJ35G,EAAeA,IAC7Bm1B,EAAO++D,EAAMC,EAAYn0F,IACrBm1B,EAAK/3B,QAAQm/F,KAAO,IAEtBhjG,KAAKsgH,sBAAsBN,EAActgH,KAAK66B,SAASgmF,GAAI3kF,GAC3D57B,KAAKsgH,sBAAsBN,EAActgH,KAAK66B,SAASimF,GAAI5kF,GAC3D57B,KAAKsgH,sBAAsBN,EAActgH,KAAK66B,SAASkmF,GAAI7kF,GAC3D57B,KAAKsgH,sBAAsBN,EAActgH,KAAK66B,SAASmmF,GAAI9kF,QAenEjyB,IAAK,wBACL5E,MAAO,SAA+B47G,EAAc/kF,GAElD,GAAI+kF,EAAaC,cAAgB,EAAG,CAClC,GAAI92E,GAAKvjC,OACLwjC,EAAKxjC,OACL6pC,EAAW7pC,MAGfujC,GAAK62E,EAAaE,aAAajjF,EAAIhC,EAAKgC,EACxCmM,EAAK42E,EAAaE,aAAa5/F,EAAI2a,EAAK3a,EACxCmvB,EAAWnrC,KAAKw0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAKhCqG,EAAWuwE,EAAaG,SAAW9gH,KAAKkgH,cAC1ClgH,KAAK+gH,iBAAiB3wE,EAAUtG,EAAIC,EAAInO,EAAM+kF,GAGX,IAA/BA,EAAaC,eACf5gH,KAAKsgH,sBAAsBK,EAAapmF,SAASgmF,GAAI3kF,GACrD57B,KAAKsgH,sBAAsBK,EAAapmF,SAASimF,GAAI5kF,GACrD57B,KAAKsgH,sBAAsBK,EAAapmF,SAASkmF,GAAI7kF,GACrD57B,KAAKsgH,sBAAsBK,EAAapmF,SAASmmF,GAAI9kF,IAGjD+kF,EAAapmF,SAASviB,KAAK3X,IAAMu7B,EAAKv7B,IAExCL,KAAK+gH,iBAAiB3wE,EAAUtG,EAAIC,EAAInO,EAAM+kF,OAkBxDh3G,IAAK,mBACL5E,MAAO,SAA0BqrC,EAAUtG,EAAIC,EAAInO,EAAM+kF,GACtC,IAAbvwE,IACFA,EAAW,GACXtG,EAAKsG,GAGHpwC,KAAKmgH,uBAAyB,IAChC/vE,EAAWnrC,KAAKJ,IAAI,GAAM7E,KAAKmgH,uBAAyBvkF,EAAK0nE,MAAMztD,OAAQzF,EAAWxU,EAAK0nE,MAAMztD,QAKnG,IAAImrE,GAAehhH,KAAK6D,QAAQy4G,sBAAwBqE,EAAa3d,KAAOpnE,EAAK/3B,QAAQm/F,KAAO/9F,KAAK8U,IAAIq2B,EAAU,GAC/G6wE,EAAKn3E,EAAKk3E,EACVE,EAAKn3E,EAAKi3E,CAEdhhH,MAAKg7G,YAAYG,OAAOv/E,EAAKv7B,IAAIu9B,GAAKqjF,EACtCjhH,KAAKg7G,YAAYG,OAAOv/E,EAAKv7B,IAAI4gB,GAAKigG,KAWxCv3G,IAAK,qBACL5E,MAAO,SAA4B41F,EAAOC,GAUxC,IAAK,GATDh/D,GAAOr1B,OACP65G,EAAYxlB,EAAYt0F,OAExB66G,EAAOxmB,EAAMC,EAAY,IAAIh9D,EAC7BwjF,EAAOzmB,EAAMC,EAAY,IAAI35E,EAC7BogG,EAAO1mB,EAAMC,EAAY,IAAIh9D,EAC7B0jF,EAAO3mB,EAAMC,EAAY,IAAI35E,EAGxBxa,EAAI,EAAO25G,EAAJ35G,EAAeA,IAAK,CAClC,GAAIm3B,GAAI+8D,EAAMC,EAAYn0F,IAAIm3B,EAC1B3c,EAAI05E,EAAMC,EAAYn0F,IAAIwa,CAC1B05E,GAAMC,EAAYn0F,IAAI5C,QAAQm/F,KAAO,IAC/Bme,EAAJvjF,IACFujF,EAAOvjF,GAELA,EAAIyjF,IACNA,EAAOzjF,GAEDwjF,EAAJngG,IACFmgG,EAAOngG,GAELA,EAAIqgG,IACNA,EAAOrgG,IAKb,GAAIsmF,GAAWtiG,KAAK8R,IAAIsqG,EAAOF,GAAQl8G,KAAK8R,IAAIuqG,EAAOF,EACnD7Z,GAAW,GACb6Z,GAAQ,GAAM7Z,EACd+Z,GAAQ,GAAM/Z,IAGZ4Z,GAAQ,GAAM5Z,EACd8Z,GAAQ,GAAM9Z,EAGlB,IAAIga,GAAkB,KAClBC,EAAWv8G,KAAKJ,IAAI08G,EAAiBt8G,KAAK8R,IAAIsqG,EAAOF,IACrDM,EAAe,GAAMD,EACrBl4B,EAAU,IAAO63B,EAAOE,GACxBh4B,EAAU,IAAO+3B,EAAOE,GAGxBtB,GACFtgH,MACEmhH,cAAgBjjF,EAAG,EAAG3c,EAAG,GACzB+hF,KAAM,EACN7iD,OACEghE,KAAM73B,EAAUm4B,EAAcJ,KAAM/3B,EAAUm4B,EAC9CL,KAAM/3B,EAAUo4B,EAAcH,KAAMj4B,EAAUo4B,GAEhDxjF,KAAMujF,EACNV,SAAU,EAAIU,EACdjnF,UAAYviB,KAAM,MAClB64D,SAAU,EACVkyB,MAAO,EACP6d,cAAe,GAGnB5gH,MAAK0hH,aAAa1B,EAActgH,KAGhC,KAAK,GAAI+G,GAAI,EAAO25G,EAAJ35G,EAAeA,IAC7Bm1B,EAAO++D,EAAMC,EAAYn0F,IACrBm1B,EAAK/3B,QAAQm/F,KAAO,GACtBhjG,KAAK2hH,aAAa3B,EAActgH,KAAMk8B,EAK1C,OAAOokF,MAWTr2G,IAAK,oBACL5E,MAAO,SAA2B47G,EAAc/kF,GAC9C,GAAIgmF,GAAYjB,EAAa3d,KAAOpnE,EAAK/3B,QAAQm/F,KAC7C6e,EAAe,EAAID,CAEvBjB,GAAaE,aAAajjF,EAAI+iF,EAAaE,aAAajjF,EAAI+iF,EAAa3d,KAAOpnE,EAAKgC,EAAIhC,EAAK/3B,QAAQm/F,KACtG2d,EAAaE,aAAajjF,GAAKikF,EAE/BlB,EAAaE,aAAa5/F,EAAI0/F,EAAaE,aAAa5/F,EAAI0/F,EAAa3d,KAAOpnE,EAAK3a,EAAI2a,EAAK/3B,QAAQm/F,KACtG2d,EAAaE,aAAa5/F,GAAK4gG,EAE/BlB,EAAa3d,KAAO4e,CACpB,IAAIE,GAAc78G,KAAKJ,IAAII,KAAKJ,IAAI+2B,EAAK6C,OAAQ7C,EAAKia,QAASja,EAAK4C,MACpEmiF,GAAa9vC,SAAW8vC,EAAa9vC,SAAWixC,EAAcA,EAAcnB,EAAa9vC,YAY3FlnE,IAAK,eACL5E,MAAO,SAAsB47G,EAAc/kF,EAAMmmF,IACzB,GAAlBA,GAA6Cx7G,SAAnBw7G,IAE5B/hH,KAAKgiH,kBAAkBrB,EAAc/kF,GAGnC+kF,EAAapmF,SAASgmF,GAAGpgE,MAAMkhE,KAAOzlF,EAAKgC,EAEzC+iF,EAAapmF,SAASgmF,GAAGpgE,MAAMmhE,KAAO1lF,EAAK3a,EAE7CjhB,KAAKiiH,eAAetB,EAAc/kF,EAAM,MAGxC57B,KAAKiiH,eAAetB,EAAc/kF,EAAM,MAItC+kF,EAAapmF,SAASgmF,GAAGpgE,MAAMmhE,KAAO1lF,EAAK3a,EAE7CjhB,KAAKiiH,eAAetB,EAAc/kF,EAAM,MAGxC57B,KAAKiiH,eAAetB,EAAc/kF,EAAM,SAc9CjyB,IAAK,iBACL5E,MAAO,SAAwB47G,EAAc/kF,EAAMsmF,GACjD,OAAQvB,EAAapmF,SAAS2nF,GAAQtB,eACpC,IAAK,GAEHD,EAAapmF,SAAS2nF,GAAQ3nF,SAASviB,KAAO4jB,EAC9C+kF,EAAapmF,SAAS2nF,GAAQtB,cAAgB,EAC9C5gH,KAAKgiH,kBAAkBrB,EAAapmF,SAAS2nF,GAAStmF,EACtD,MACF,KAAK,GAIC+kF,EAAapmF,SAAS2nF,GAAQ3nF,SAASviB,KAAK4lB,IAAMhC,EAAKgC,GAAK+iF,EAAapmF,SAAS2nF,GAAQ3nF,SAASviB,KAAKiJ,IAAM2a,EAAK3a,GACrH2a,EAAKgC,GAAK59B,KAAKmiH,eACfvmF,EAAK3a,GAAKjhB,KAAKmiH,iBAEfniH,KAAK0hH,aAAaf,EAAapmF,SAAS2nF,IACxCliH,KAAK2hH,aAAahB,EAAapmF,SAAS2nF,GAAStmF,GAEnD,MACF,KAAK,GAEH57B,KAAK2hH,aAAahB,EAAapmF,SAAS2nF,GAAStmF,OAavDjyB,IAAK,eACL5E,MAAO,SAAsB47G,GAE3B,GAAIyB,GAAgB,IACe,KAA/BzB,EAAaC,gBACfwB,EAAgBzB,EAAapmF,SAASviB,KACtC2oG,EAAa3d,KAAO,EACpB2d,EAAaE,aAAajjF,EAAI,EAC9B+iF,EAAaE,aAAa5/F,EAAI,GAEhC0/F,EAAaC,cAAgB,EAC7BD,EAAapmF,SAASviB,KAAO,KAC7BhY,KAAKqiH,cAAc1B,EAAc,MACjC3gH,KAAKqiH,cAAc1B,EAAc,MACjC3gH,KAAKqiH,cAAc1B,EAAc,MACjC3gH,KAAKqiH,cAAc1B,EAAc,MAEZ,MAAjByB,GACFpiH,KAAK2hH,aAAahB,EAAcyB,MAepCz4G,IAAK,gBACL5E,MAAO,SAAuB47G,EAAcuB,GAC1C,GAAIf,GAAO56G,OACP86G,EAAO96G,OACP66G,EAAO76G,OACP+6G,EAAO/6G,OACP+7G,EAAY,GAAM3B,EAAa1iF,IACnC,QAAQikF,GACN,IAAK,KACHf,EAAOR,EAAaxgE,MAAMghE,KAC1BE,EAAOV,EAAaxgE,MAAMghE,KAAOmB,EACjClB,EAAOT,EAAaxgE,MAAMihE,KAC1BE,EAAOX,EAAaxgE,MAAMihE,KAAOkB,CACjC,MACF,KAAK,KACHnB,EAAOR,EAAaxgE,MAAMghE,KAAOmB,EACjCjB,EAAOV,EAAaxgE,MAAMkhE,KAC1BD,EAAOT,EAAaxgE,MAAMihE,KAC1BE,EAAOX,EAAaxgE,MAAMihE,KAAOkB,CACjC,MACF,KAAK,KACHnB,EAAOR,EAAaxgE,MAAMghE,KAC1BE,EAAOV,EAAaxgE,MAAMghE,KAAOmB,EACjClB,EAAOT,EAAaxgE,MAAMihE,KAAOkB,EACjChB,EAAOX,EAAaxgE,MAAMmhE,IAC1B,MACF,KAAK,KACHH,EAAOR,EAAaxgE,MAAMghE,KAAOmB,EACjCjB,EAAOV,EAAaxgE,MAAMkhE,KAC1BD,EAAOT,EAAaxgE,MAAMihE,KAAOkB,EACjChB,EAAOX,EAAaxgE,MAAMmhE,KAI9BX,EAAapmF,SAAS2nF,IACpBrB,cAAgBjjF,EAAG,EAAG3c,EAAG,GACzB+hF,KAAM,EACN7iD,OAASghE,KAAMA,EAAME,KAAMA,EAAMD,KAAMA,EAAME,KAAMA,GACnDrjF,KAAM,GAAM0iF,EAAa1iF,KACzB6iF,SAAU,EAAIH,EAAaG,SAC3BvmF,UAAYviB,KAAM,MAClB64D,SAAU,EACVkyB,MAAO4d,EAAa5d,MAAQ,EAC5B6d,cAAe,MAcnBj3G,IAAK,SACL5E,MAAO,SAAgBwsC,EAAK9kC,GACClG,SAAvBvG,KAAKggH,gBAEPzuE,EAAIO,UAAY,EAEhB9xC,KAAKuiH,YAAYviH,KAAKggH,cAActgH,KAAM6xC,EAAK9kC,OAanD9C,IAAK,cACL5E,MAAO,SAAqBy9G,EAAQjxE,EAAK9kC,GACzBlG,SAAVkG,IACFA,EAAQ,WAGmB,IAAzB+1G,EAAO5B,gBACT5gH,KAAKuiH,YAAYC,EAAOjoF,SAASgmF,GAAIhvE,GACrCvxC,KAAKuiH,YAAYC,EAAOjoF,SAASimF,GAAIjvE,GACrCvxC,KAAKuiH,YAAYC,EAAOjoF,SAASmmF,GAAInvE,GACrCvxC,KAAKuiH,YAAYC,EAAOjoF,SAASkmF,GAAIlvE,IAEvCA,EAAIY,YAAc1lC,EAClB8kC,EAAIa,YACJb,EAAIc,OAAOmwE,EAAOriE,MAAMghE,KAAMqB,EAAOriE,MAAMihE,MAC3C7vE,EAAIe,OAAOkwE,EAAOriE,MAAMkhE,KAAMmB,EAAOriE,MAAMihE,MAC3C7vE,EAAI7J,SAEJ6J,EAAIa,YACJb,EAAIc,OAAOmwE,EAAOriE,MAAMkhE,KAAMmB,EAAOriE,MAAMihE,MAC3C7vE,EAAIe,OAAOkwE,EAAOriE,MAAMkhE,KAAMmB,EAAOriE,MAAMmhE,MAC3C/vE,EAAI7J,SAEJ6J,EAAIa,YACJb,EAAIc,OAAOmwE,EAAOriE,MAAMkhE,KAAMmB,EAAOriE,MAAMmhE,MAC3C/vE,EAAIe,OAAOkwE,EAAOriE,MAAMghE,KAAMqB,EAAOriE,MAAMmhE,MAC3C/vE,EAAI7J,SAEJ6J,EAAIa,YACJb,EAAIc,OAAOmwE,EAAOriE,MAAMghE,KAAMqB,EAAOriE,MAAMmhE,MAC3C/vE,EAAIe,OAAOkwE,EAAOriE,MAAMghE,KAAMqB,EAAOriE,MAAMihE,MAC3C7vE,EAAI7J,aAWDq4E,IAGTngH,GAAQ,WAAamgH,EACrBlgH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAUrB,QAASo3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBurC,EAAkB,WACpB,QAASA,GAAgBrjE,EAAM47D,EAAan3G,GAC1CmzE,EAAgBh3E,KAAMyiH,GAEtBziH,KAAKo/C,KAAOA,EACZp/C,KAAKg7G,YAAcA,EACnBh7G,KAAKg/B,WAAWn7B,GAqElB,MAlEAuzE,GAAaqrC,IACX94G,IAAK,aACL5E,MAAO,SAAoBlB,GACzB7D,KAAK6D,QAAUA,KAUjB8F,IAAK,QACL5E,MAAO,WAgBL,IAAK,GAfD+kC,GAAIC,EAAIqG,EAAU6wE,EAAIC,EAAIwB,EAAgBvQ,EAAOC,EAEjDzX,EAAQ36F,KAAKo/C,KAAKu7C,MAClBC,EAAc56F,KAAKg7G,YAAYC,mBAC/BE,EAASn7G,KAAKg7G,YAAYG,OAG1B2B,EAAe98G,KAAK6D,QAAQi5G,aAG5B52G,EAAI,GAAK,EAAI42G,EACb32G,EAAI,EAAI,EAIHM,EAAI,EAAGA,EAAIm0F,EAAYt0F,OAAS,EAAGG,IAAK,CAC/C0rG,EAAQxX,EAAMC,EAAYn0F,GAC1B,KAAK,GAAIgK,GAAIhK,EAAI,EAAGgK,EAAImqF,EAAYt0F,OAAQmK,IAC1C2hG,EAAQzX,EAAMC,EAAYnqF,IAE1Bq5B,EAAKsoE,EAAMx0E,EAAIu0E,EAAMv0E,EACrBmM,EAAKqoE,EAAMnxF,EAAIkxF,EAAMlxF,EACrBmvB,EAAWnrC,KAAKw0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAGnB,IAAbqG,IACFA,EAAW,GAAMnrC,KAAK+2B,SACtB8N,EAAKsG,GAGQ,EAAI0sE,EAAf1sE,IAEAsyE,EADa,GAAM5F,EAAjB1sE,EACe,EAEAlqC,EAAIkqC,EAAWjqC,EAElCu8G,GAAkCtyE,EAElC6wE,EAAKn3E,EAAK44E,EACVxB,EAAKn3E,EAAK24E,EAEVvH,EAAOhJ,EAAM9xG,IAAIu9B,GAAKqjF,EACtB9F,EAAOhJ,EAAM9xG,IAAI4gB,GAAKigG,EACtB/F,EAAO/I,EAAM/xG,IAAIu9B,GAAKqjF,EACtB9F,EAAO/I,EAAM/xG,IAAI4gB,GAAKigG,QAOzBuB,IAGT7iH,GAAQ,WAAa6iH,EACrB5iH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAUrB,QAASo3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hByrC,EAA8B,WAChC,QAASA,GAA4BvjE,EAAM47D,EAAan3G,GACtDmzE,EAAgBh3E,KAAM2iH,GAEtB3iH,KAAKo/C,KAAOA,EACZp/C,KAAKg7G,YAAcA,EACnBh7G,KAAKg/B,WAAWn7B,GAiElB,MA9DAuzE,GAAaurC,IACXh5G,IAAK,aACL5E,MAAO,SAAoBlB,GACzB7D,KAAK6D,QAAUA,KAUjB8F,IAAK,QACL5E,MAAO,WACL,GAAI+kC,GAAIC,EAAIqG,EAAU6wE,EAAIC,EAAIwB,EAAgBvQ,EAAOC,EAAO3rG,EAAGgK,EAE3DkqF,EAAQ36F,KAAKo/C,KAAKu7C,MAClBC,EAAc56F,KAAKg7G,YAAYC,mBAC/BE,EAASn7G,KAAKg7G,YAAYG,OAG1B2B,EAAe98G,KAAK6D,QAAQi5G,YAIhC,KAAKr2G,EAAI,EAAGA,EAAIm0F,EAAYt0F,OAAS,EAAGG,IAEtC,IADA0rG,EAAQxX,EAAMC,EAAYn0F,IACrBgK,EAAIhK,EAAI,EAAGgK,EAAImqF,EAAYt0F,OAAQmK,IAItC,GAHA2hG,EAAQzX,EAAMC,EAAYnqF,IAGtB0hG,EAAMpP,QAAUqP,EAAMrP,MAAO,CAC/Bj5D,EAAKsoE,EAAMx0E,EAAIu0E,EAAMv0E,EACrBmM,EAAKqoE,EAAMnxF,EAAIkxF,EAAMlxF,EACrBmvB,EAAWnrC,KAAKw0C,KAAK3P,EAAKA,EAAKC,EAAKA,EAEpC,IAAI64E,GAAY,GAEdF,GADa5F,EAAX1sE,GACgBnrC,KAAK8U,IAAI6oG,EAAYxyE,EAAU,GAAKnrC,KAAK8U,IAAI6oG,EAAY9F,EAAc,GAExE,EAGF,IAAb1sE,EACFA,EAAW,IAEXsyE,GAAkCtyE,EAEpC6wE,EAAKn3E,EAAK44E,EACVxB,EAAKn3E,EAAK24E,EAEVvH,EAAOhJ,EAAM9xG,IAAIu9B,GAAKqjF,EACtB9F,EAAOhJ,EAAM9xG,IAAI4gB,GAAKigG,EACtB/F,EAAO/I,EAAM/xG,IAAIu9B,GAAKqjF,EACtB9F,EAAO/I,EAAM/xG,IAAI4gB,GAAKigG,OAOzByB,IAGT/iH,GAAQ,WAAa+iH,EACrB9iH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAUrB,QAASo3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hB2rC,EAAe,WACjB,QAASA,GAAazjE,EAAM47D,EAAan3G,GACvCmzE,EAAgBh3E,KAAM6iH,GAEtB7iH,KAAKo/C,KAAOA,EACZp/C,KAAKg7G,YAAcA,EACnBh7G,KAAKg/B,WAAWn7B,GAoFlB,MAjFAuzE,GAAayrC,IACXl5G,IAAK,aACL5E,MAAO,SAAoBlB,GACzB7D,KAAK6D,QAAUA,KASjB8F,IAAK,QACL5E,MAAO,WAUL,IAAK,GATD+9G,GAAav8G,OACb66F,EAAO76F,OACPu0F,EAAc96F,KAAKg7G,YAAYE,mBAC/BrgB,EAAQ76F,KAAKo/C,KAAKy7C,MAClBsX,EAAQ5rG,OACR6rG,EAAQ7rG,OACRw8G,EAAQx8G,OAGHE,EAAI,EAAGA,EAAIq0F,EAAYx0F,OAAQG,IACtC26F,EAAOvG,EAAMC,EAAYr0F,IACrB26F,EAAK8P,aAAc,GAAQ9P,EAAKuD,OAASvD,EAAKwD,QAEbr+F,SAA/BvG,KAAKo/C,KAAKu7C,MAAMyG,EAAKuD,OAAwDp+F,SAAjCvG,KAAKo/C,KAAKu7C,MAAMyG,EAAKwD,UACzCr+F,SAAtB66F,EAAKkP,SAASqF,KAChBmN,EAAqCv8G,SAAxB66F,EAAKv9F,QAAQyC,OAAuBtG,KAAK6D,QAAQ24G,aAAepb,EAAKv9F,QAAQyC,OAC1F6rG,EAAQ/Q,EAAKjsF,GACbi9F,EAAQhR,EAAKkP,SAASqF,IACtBoN,EAAQ3hB,EAAKhsF,KAEbpV,KAAKgjH,sBAAsB7Q,EAAOC,EAAO,GAAM0Q,GAC/C9iH,KAAKgjH,sBAAsB5Q,EAAO2Q,EAAO,GAAMD,KAI/CA,EAAqCv8G,SAAxB66F,EAAKv9F,QAAQyC,OAAmD,IAA5BtG,KAAK6D,QAAQ24G,aAAqBpb,EAAKv9F,QAAQyC,OAChGtG,KAAKgjH,sBAAsB5hB,EAAKhsF,KAAMgsF,EAAKjsF,GAAI2tG,QAgBzDn5G,IAAK,wBACL5E,MAAO,SAA+BotG,EAAOC,EAAO0Q,GAClD,GAAIh5E,GAAKqoE,EAAMv0E,EAAIw0E,EAAMx0E,EACrBmM,EAAKooE,EAAMlxF,EAAImxF,EAAMnxF,EACrBmvB,EAAWnrC,KAAKJ,IAAII,KAAKw0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAAK,KAGlDk5E,EAAcjjH,KAAK6D,QAAQ44G,gBAAkBqG,EAAa1yE,GAAYA,EAEtE6wE,EAAKn3E,EAAKm5E,EACV/B,EAAKn3E,EAAKk5E,CAG4B18G,UAAtCvG,KAAKg7G,YAAYG,OAAOhJ,EAAM9xG,MAChCL,KAAKg7G,YAAYG,OAAOhJ,EAAM9xG,IAAIu9B,GAAKqjF,EACvCjhH,KAAKg7G,YAAYG,OAAOhJ,EAAM9xG,IAAI4gB,GAAKigG,GAGC36G,SAAtCvG,KAAKg7G,YAAYG,OAAO/I,EAAM/xG,MAChCL,KAAKg7G,YAAYG,OAAO/I,EAAM/xG,IAAIu9B,GAAKqjF,EACvCjhH,KAAKg7G,YAAYG,OAAO/I,EAAM/xG,IAAI4gB,GAAKigG,OAKtC2B,IAGTjjH,GAAQ,WAAaijH,EACrBhjH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAUrB,QAASo3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBgsC,EAA2B,WAC7B,QAASA,GAAyB9jE,EAAM47D,EAAan3G,GACnDmzE,EAAgBh3E,KAAMkjH,GAEtBljH,KAAKo/C,KAAOA,EACZp/C,KAAKg7G,YAAcA,EACnBh7G,KAAKg/B,WAAWn7B,GAuGlB,MApGAuzE,GAAa8rC,IACXv5G,IAAK,aACL5E,MAAO,SAAoBlB,GACzB7D,KAAK6D,QAAUA,KASjB8F,IAAK,QACL5E,MAAO,WAWL,IAAK,GAVD+9G,GAAY1hB,EACZt3D,EAAIC,EAAIk3E,EAAIC,EAAI+B,EAAa7yE,EAC7ByqD,EAAQ76F,KAAKo/C,KAAKy7C,MAClBv4C,EAAS,GAETw4C,EAAc96F,KAAKg7G,YAAYE,mBAC/BtgB,EAAc56F,KAAKg7G,YAAYC,mBAC/BE,EAASn7G,KAAKg7G,YAAYG,OAGrB10G,EAAI,EAAGA,EAAIm0F,EAAYt0F,OAAQG,IAAK,CAC3C,GAAIi4F,GAAS9D,EAAYn0F,EACzB00G,GAAOzc,GAAQykB,SAAW,EAC1BhI,EAAOzc,GAAQ0kB,SAAW,EAI5B,IAAK,GAAI38G,GAAI,EAAGA,EAAIq0F,EAAYx0F,OAAQG,IACtC26F,EAAOvG,EAAMC,EAAYr0F,IACrB26F,EAAK8P,aAAc,IACrB4R,EAAqCv8G,SAAxB66F,EAAKv9F,QAAQyC,OAAuBtG,KAAK6D,QAAQ24G,aAAepb,EAAKv9F,QAAQyC,OAE1FwjC,EAAKs3D,EAAKhsF,KAAKwoB,EAAIwjE,EAAKjsF,GAAGyoB,EAC3BmM,EAAKq3D,EAAKhsF,KAAK6L,EAAImgF,EAAKjsF,GAAG8L,EAC3BmvB,EAAWnrC,KAAKw0C,KAAK3P,EAAKA,EAAKC,EAAKA,GACpCqG,EAAwB,IAAbA,EAAiB,IAAOA,EAGnC6yE,EAAcjjH,KAAK6D,QAAQ44G,gBAAkBqG,EAAa1yE,GAAYA,EAEtE6wE,EAAKn3E,EAAKm5E,EACV/B,EAAKn3E,EAAKk5E,EAEN7hB,EAAKjsF,GAAG4tF,OAAS3B,EAAKhsF,KAAK2tF,OACHx8F,SAAtB40G,EAAO/Z,EAAKuD,QACdwW,EAAO/Z,EAAKuD,MAAMwe,UAAYlC,EAC9B9F,EAAO/Z,EAAKuD,MAAMye,UAAYlC,GAEJ36G,SAAxB40G,EAAO/Z,EAAKwD,UACduW,EAAO/Z,EAAKwD,QAAQue,UAAYlC,EAChC9F,EAAO/Z,EAAKwD,QAAQwe,UAAYlC,KAGR36G,SAAtB40G,EAAO/Z,EAAKuD,QACdwW,EAAO/Z,EAAKuD,MAAM/mE,GAAK0kB,EAAS2+D,EAChC9F,EAAO/Z,EAAKuD,MAAM1jF,GAAKqhC,EAAS4+D,GAEN36G,SAAxB40G,EAAO/Z,EAAKwD,UACduW,EAAO/Z,EAAKwD,QAAQhnE,GAAK0kB,EAAS2+D,EAClC9F,EAAO/Z,EAAKwD,QAAQ3jF,GAAKqhC,EAAS4+D,IAS1C,KAAK,GADDiC,GAAUC,EADVH,EAAc,EAETx8G,EAAI,EAAGA,EAAIm0F,EAAYt0F,OAAQG,IAAK,CAC3C,GAAIi4F,GAAS9D,EAAYn0F,EACzB08G,GAAWl+G,KAAKL,IAAIq+G,EAAah+G,KAAKJ,KAAKo+G,EAAa9H,EAAOzc,GAAQykB,WACvEC,EAAWn+G,KAAKL,IAAIq+G,EAAah+G,KAAKJ,KAAKo+G,EAAa9H,EAAOzc,GAAQ0kB,WAEvEjI,EAAOzc,GAAQ9gE,GAAKulF,EACpBhI,EAAOzc,GAAQz9E,GAAKmiG,EAMtB,IAAK,GAFDC,GAAU,EACVC,EAAU,EACL78G,EAAI,EAAGA,EAAIm0F,EAAYt0F,OAAQG,IAAK,CAC3C,GAAIi4F,GAAS9D,EAAYn0F,EACzB48G,IAAWlI,EAAOzc,GAAQ9gE,EAC1B0lF,GAAWnI,EAAOzc,GAAQz9E,EAK5B,IAAK,GAHDsiG,GAAeF,EAAUzoB,EAAYt0F,OACrCk9G,EAAeF,EAAU1oB,EAAYt0F,OAEhCG,EAAI,EAAGA,EAAIm0F,EAAYt0F,OAAQG,IAAK,CAC3C,GAAIi4F,GAAS9D,EAAYn0F,EACzB00G,GAAOzc,GAAQ9gE,GAAK2lF,EACpBpI,EAAOzc,GAAQz9E,GAAKuiG,OAKnBN,IAGTtjH,GAAQ,WAAasjH,EACrBrjH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAUrB,QAASo3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBusC,EAAuB,WACzB,QAASA,GAAqBrkE,EAAM47D,EAAan3G,GAC/CmzE,EAAgBh3E,KAAMyjH,GAEtBzjH,KAAKo/C,KAAOA,EACZp/C,KAAKg7G,YAAcA,EACnBh7G,KAAKg/B,WAAWn7B,GA2ClB,MAxCAuzE,GAAaqsC,IACX95G,IAAK,aACL5E,MAAO,SAAoBlB,GACzB7D,KAAK6D,QAAUA,KAGjB8F,IAAK,QACL5E,MAAO,WASL,IAAK,GARD+kC,GAAKvjC,OACLwjC,EAAKxjC,OACL6pC,EAAW7pC,OACXq1B,EAAOr1B,OACPo0F,EAAQ36F,KAAKo/C,KAAKu7C,MAClBC,EAAc56F,KAAKg7G,YAAYC,mBAC/BE,EAASn7G,KAAKg7G,YAAYG,OAErB10G,EAAI,EAAGA,EAAIm0F,EAAYt0F,OAAQG,IAAK,CAC3C,GAAIi4F,GAAS9D,EAAYn0F,EACzBm1B,GAAO++D,EAAM+D,GACb50D,GAAMlO,EAAKgC,EACXmM,GAAMnO,EAAK3a,EACXmvB,EAAWnrC,KAAKw0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAEpC/pC,KAAK+gH,iBAAiB3wE,EAAUtG,EAAIC,EAAIoxE,EAAQv/E,OASpDjyB,IAAK,mBACL5E,MAAO,SAA0BqrC,EAAUtG,EAAIC,EAAIoxE,EAAQv/E,GACzD,GAAIolF,GAA4B,IAAb5wE,EAAiB,EAAIpwC,KAAK6D,QAAQ04G,eAAiBnsE,CACtE+qE,GAAOv/E,EAAKv7B,IAAIu9B,EAAIkM,EAAKk3E,EACzB7F,EAAOv/E,EAAKv7B,IAAI4gB,EAAI8oB,EAAKi3E,MAItByC,IAGT7jH,GAAQ,WAAa6jH,EACrB5jH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcm9G,EAAoBxjH,EAAoB,IAExCyjH,EAAoB9sC,EAAuB6sC,GAE3CE,EAAkC,SAAWC,GAG/C,QAASD,GAAgCxkE,EAAM47D,EAAan3G,GAC1DmzE,EAAgBh3E,KAAM4jH,GAEtBzZ,EAAK/iG,OAAOujG,eAAeiZ,EAAgC3wG,WAAY,cAAejT,MAAMO,KAAKP,KAAMo/C,EAAM47D,EAAan3G,GAsC5H,MA3CAimG,GAAU8Z,EAAiCC,GAmB3CzsC,EAAawsC,IACXj6G,IAAK,mBACL5E,MAAO,SAA0BqrC,EAAUtG,EAAIC,EAAInO,EAAM+kF,GACtC,IAAbvwE,IACFA,EAAW,GAAMnrC,KAAK+2B,SACtB8N,EAAKsG,GAGHpwC,KAAKmgH,uBAAyB,IAChC/vE,EAAWnrC,KAAKJ,IAAI,GAAM7E,KAAKmgH,uBAAyBvkF,EAAK0nE,MAAMztD,OAAQzF,EAAWxU,EAAK0nE,MAAMztD,QAGnG,IAAIiuE,GAASloF,EAAKi/D,MAAMv0F,OAAS,EAG7B06G,EAAehhH,KAAK6D,QAAQy4G,sBAAwBqE,EAAa3d,KAAOpnE,EAAK/3B,QAAQm/F,KAAO8gB,EAAS7+G,KAAK8U,IAAIq2B,EAAU,GACxH6wE,EAAKn3E,EAAKk3E,EACVE,EAAKn3E,EAAKi3E,CAEdhhH,MAAKg7G,YAAYG,OAAOv/E,EAAKv7B,IAAIu9B,GAAKqjF,EACtCjhH,KAAKg7G,YAAYG,OAAOv/E,EAAKv7B,IAAI4gB,GAAKigG,MAInC0C,GACND,EAAkB,WAErB/jH,GAAQ,WAAagkH,EACrB/jH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAZje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE7hBizB,EAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcw9G,EAAyB7jH,EAAoB,IAE7C8jH,EAAyBntC,EAAuBktC,GAEhDE,EAAuC,SAAWC,GAGpD,QAASD,GAAqC7kE,EAAM47D,EAAan3G,GAC/DmzE,EAAgBh3E,KAAMikH,GAEtB9Z,EAAK/iG,OAAOujG,eAAesZ,EAAqChxG,WAAY,cAAejT,MAAMO,KAAKP,KAAMo/C,EAAM47D,EAAan3G,GAoBjI,MAzBAimG,GAAUma,EAAsCC,GAahD9sC,EAAa6sC,IACXt6G,IAAK,mBACL5E,MAAO,SAA0BqrC,EAAUtG,EAAIC,EAAIoxE,EAAQv/E,GACzD,GAAIwU,EAAW,EAAG,CAChB,GAAI0zE,GAASloF,EAAKi/D,MAAMv0F,OAAS,EAC7B06G,EAAehhH,KAAK6D,QAAQ04G,eAAiBuH,EAASloF,EAAK/3B,QAAQm/F,IACvEmY,GAAOv/E,EAAKv7B,IAAIu9B,EAAIkM,EAAKk3E,EACzB7F,EAAOv/E,EAAKv7B,IAAI4gB,EAAI8oB,EAAKi3E,OAKxBiD,GACND,EAAuB,WAE1BpkH,GAAQ,WAAaqkH,EACrBpkH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCARhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hBitC,EAAejkH,EAAoB,IAEnCkkH,EAAgBvtC,EAAuBstC,GAEvCE,EAA0BnkH,EAAoB,KAE9CokH,EAA2BztC,EAAuBwtC,GAElD1jH,EAAOT,EAAoB,GAE3BqkH,EAAgB,WAClB,QAASA,GAAcnlE,GACrB,GAAI8C,GAAQliD,IAEZg3E,GAAgBh3E,KAAMukH,GAEtBvkH,KAAKo/C,KAAOA,EACZp/C,KAAKwkH,kBACLxkH,KAAKykH,kBAELzkH,KAAK6D,WACL7D,KAAK4+C,kBACLj+C,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK4+C,gBAE/B5+C,KAAKo/C,KAAKE,QAAQlgB,GAAG,aAAc,WACjC8iB,EAAMsiE,kBAAoBtiE,EAAMuiE,oBAqyBpC,MAjyBArtC,GAAamtC,IACX56G,IAAK,aACL5E,MAAO,SAAoBlB,OAU3B8F,IAAK,mBACL5E,MAAO,SAA0B2/G,EAAS7gH,GACxB0C,SAAZm+G,EACFA,EAAU1kH,KAAK2kH,cACa,gBAAZD,KAChB7gH,EAAU7D,KAAK4kH,cAAcF,GAC7BA,EAAU1kH,KAAK2kH,cAIjB,KAAK,GADDE,MACKp+G,EAAI,EAAGA,EAAIzG,KAAKo/C,KAAKw7C,YAAYt0F,OAAQG,IAAK,CACrD,GAAIm1B,GAAO57B,KAAKo/C,KAAKu7C,MAAM36F,KAAKo/C,KAAKw7C,YAAYn0F,GAC7Cm1B,GAAKi/D,MAAMv0F,QAAUo+G,GACvBG,EAAer9G,KAAKo0B,EAAKv7B,IAI7B,IAAK,GAAIoG,GAAI,EAAGA,EAAIo+G,EAAev+G,OAAQG,IACzCzG,KAAK0/F,oBAAoBmlB,EAAep+G,GAAI5C,GAAS,EAGvD7D,MAAKo/C,KAAKE,QAAQzH,KAAK,mBASzBluC,IAAK,UACL5E,MAAO,WACL,GAAIlB,GAAUwC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAC/Ey+G,EAAcz+G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAEzF,IAA8BE,SAA1B1C,EAAQkhH,cACV,KAAM,IAAI/9G,OAAM,iFAIlBnD,GAAU7D,KAAK4kH,cAAc/gH,EAM7B,KAAK,GAJDmhH,MACAC,KAGKx+G,EAAI,EAAGA,EAAIzG,KAAKo/C,KAAKw7C,YAAYt0F,OAAQG,IAAK,CACrD,GAAIi4F,GAAS1+F,KAAKo/C,KAAKw7C,YAAYn0F,GAC/Bm1B,EAAO57B,KAAKo/C,KAAKu7C,MAAM+D,GACvBwmB,EAAgBd,EAAc,WAAWe,aAAavpF,EAC1D,IAAI/3B,EAAQkhH,cAAcG,MAAmB,EAAM;AACjDF,EAActmB,GAAU1+F,KAAKo/C,KAAKu7C,MAAM+D,EAGxC,KAAK,GAAInpF,GAAK,EAAGA,EAAKqmB,EAAKi/D,MAAMv0F,OAAQiP,IAAM,CAC7C,GAAI6rF,GAAOxlE,EAAKi/D,MAAMtlF,EACehP,UAAjCvG,KAAKykH,eAAerjB,EAAK/gG,MAC3B4kH,EAAc7jB,EAAK/gG,IAAM+gG,KAMjCphG,KAAKolH,SAASJ,EAAeC,EAAephH,EAASihH,MAUvDn7G,IAAK,qBACL5E,MAAO,SAA4BsgH,EAAWxhH,GAC5C,GAAIihH,GAAcz+G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAEzFxC,GAAU7D,KAAK4kH,cAAc/gH,EAS7B,KAAK,GARDyhH,MACAC,KACAnkB,EAAO76F,OACPs0F,EAAQt0F,OACRq1B,EAAOr1B,OACPm4F,EAASn4F,OACTi/G,EAAoBj/G,OAEfE,EAAI,EAAGA,EAAIzG,KAAKo/C,KAAKw7C,YAAYt0F,OAAQG,IAAK,CACrD,GAAIu+G,MACAC,IAIJ,IAHAvmB,EAAS1+F,KAAKo/C,KAAKw7C,YAAYn0F,GAGLF,SAAtBg/G,EAAU7mB,GAAuB,CACnC8mB,EAAoB,EACpB5pF,EAAO57B,KAAKo/C,KAAKu7C,MAAM+D,GACvB7D,IACA,KAAK,GAAIpqF,GAAI,EAAGA,EAAImrB,EAAKi/D,MAAMv0F,OAAQmK,IACrC2wF,EAAOxlE,EAAKi/D,MAAMpqF,GACmBlK,SAAjCvG,KAAKykH,eAAerjB,EAAK/gG,MACvB+gG,EAAKuD,OAASvD,EAAKwD,QACrB4gB,IAEF3qB,EAAMrzF,KAAK45F,GAKf,IAAIokB,IAAsBH,EAAW,CAEnC,IAAK,GADDI,IAAsB,EACjBh1G,EAAI,EAAGA,EAAIoqF,EAAMv0F,OAAQmK,IAAK,CACrC2wF,EAAOvG,EAAMpqF,EACb,IAAIi1G,GAAc1lH,KAAK2lH,gBAAgBvkB,EAAM1C,EAE7C,IAA8Bn4F,SAA1B1C,EAAQkhH,cACVE,EAAc7jB,EAAK/gG,IAAM+gG,EACzB4jB,EAActmB,GAAU1+F,KAAKo/C,KAAKu7C,MAAM+D,GACxCsmB,EAAcU,GAAe1lH,KAAKo/C,KAAKu7C,MAAM+qB,GAC7CH,EAAU7mB,IAAU,MACf,CACL,GAAIwmB,GAAgBd,EAAc,WAAWe,aAAanlH,KAAKo/C,KAAKu7C,MAAM+D,GAC1E,IAAI76F,EAAQkhH,cAAcG,MAAmB,EAItC,CAELO,GAAsB,CACtB,OANAR,EAAc7jB,EAAK/gG,IAAM+gG,EACzB4jB,EAActmB,GAAU1+F,KAAKo/C,KAAKu7C,MAAM+D,GACxC6mB,EAAU7mB,IAAU,GAUtBt3F,OAAO6H,KAAK+1G,GAAe1+G,OAAS,GAAKc,OAAO6H,KAAKg2G,GAAe3+G,OAAS,GAAKm/G,KAAwB,GAC5GH,EAAS99G,MAAOmzF,MAAOqqB,EAAenqB,MAAOoqB,MAMrD,IAAK,GAAIx+G,GAAI,EAAGA,EAAI6+G,EAASh/G,OAAQG,IACnCzG,KAAKolH,SAASE,EAAS7+G,GAAGk0F,MAAO2qB,EAAS7+G,GAAGo0F,MAAOh3F,GAAS,EAG3DihH,MAAgB,GAClB9kH,KAAKo/C,KAAKE,QAAQzH,KAAK,mBAU3BluC,IAAK,kBACL5E,MAAO,SAAyBlB,GAC9B,GAAIihH,GAAcz+G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAEzFrG,MAAK4lH,mBAAmB,EAAG/hH,EAASihH,MAStCn7G,IAAK,iBACL5E,MAAO,SAAwBlB,GAC7B,GAAIihH,GAAcz+G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAEzFrG,MAAK4lH,mBAAmB,EAAG/hH,EAASihH,MAUtCn7G,IAAK,sBACL5E,MAAO,SAA6B25F,EAAQ76F,GAC1C,GAAIihH,GAAcz+G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAGzF,IAAeE,SAAXm4F,EACF,KAAM,IAAI13F,OAAM,6CAElB,IAAgCT,SAA5BvG,KAAKo/C,KAAKu7C,MAAM+D,GAClB,KAAM,IAAI13F,OAAM,0DAGlB,IAAI40B,GAAO57B,KAAKo/C,KAAKu7C,MAAM+D,EAC3B76F,GAAU7D,KAAK4kH,cAAc/gH,EAAS+3B,GACEr1B,SAApC1C,EAAQgiH,sBAAsBjoF,IAChC/5B,EAAQgiH,sBAAsBjoF,EAAIhC,EAAKgC,GAEDr3B,SAApC1C,EAAQgiH,sBAAsB5kG,IAChCpd,EAAQgiH,sBAAsB5kG,EAAI2a,EAAK3a,GAEG1a,SAAxC1C,EAAQgiH,sBAAsBnjB,QAChC7+F,EAAQgiH,sBAAsBnjB,SAC9B7+F,EAAQgiH,sBAAsBnjB,MAAM9kE,EAAIhC,EAAK/3B,QAAQ6+F,MAAM9kE,EAC3D/5B,EAAQgiH,sBAAsBnjB,MAAMzhF,EAAI2a,EAAK/3B,QAAQ6+F,MAAMzhF,EAG7D,IAAI+jG,MACAC,KACAa,EAAelqF,EAAKv7B,GACpB0lH,EAAsB3B,EAAc,WAAWe,aAAavpF,EAChEopF,GAAcc,GAAgBlqF,CAG9B,KAAK,GAAIn1B,GAAI,EAAGA,EAAIm1B,EAAKi/D,MAAMv0F,OAAQG,IAAK,CAC1C,GAAI26F,GAAOxlE,EAAKi/D,MAAMp0F,EACtB,IAAqCF,SAAjCvG,KAAKykH,eAAerjB,EAAK/gG,IAAmB,CAC9C,GAAIqlH,GAAc1lH,KAAK2lH,gBAAgBvkB,EAAM0kB,EAG7C,IAAyCv/G,SAArCvG,KAAKwkH,eAAekB,GACtB,GAAIA,IAAgBI,EAClB,GAA8Bv/G,SAA1B1C,EAAQkhH,cACVE,EAAc7jB,EAAK/gG,IAAM+gG,EACzB4jB,EAAcU,GAAe1lH,KAAKo/C,KAAKu7C,MAAM+qB,OACxC,CAEL,GAAIM,GAAqB5B,EAAc,WAAWe,aAAanlH,KAAKo/C,KAAKu7C,MAAM+qB,GAC3E7hH,GAAQkhH,cAAcgB,EAAqBC,MAAwB,IACrEf,EAAc7jB,EAAK/gG,IAAM+gG,EACzB4jB,EAAcU,GAAe1lH,KAAKo/C,KAAKu7C,MAAM+qB,QAKjDT,GAAc7jB,EAAK/gG,IAAM+gG,GAMjCphG,KAAKolH,SAASJ,EAAeC,EAAephH,EAASihH,MAcvDn7G,IAAK,sBACL5E,MAAO,SAA6BigH,EAAeC,EAAeY,EAAuBI,GAYvF,IAAK,GAXD7kB,GAAO76F,OACPm/G,EAAcn/G,OACd2/G,EAAY3/G,OACZo+F,EAAOp+F,OACPq+F,EAASr+F,OACT4/G,EAAc5/G,OAId6/G,EAAYh/G,OAAO6H,KAAK+1G,GACxBqB,KACK5/G,EAAI,EAAGA,EAAI2/G,EAAU9/G,OAAQG,IAAK,CACzCi/G,EAAcU,EAAU3/G,GACxBy/G,EAAYlB,EAAcU,EAG1B,KAAK,GAAIj1G,GAAI,EAAGA,EAAIy1G,EAAUrrB,MAAMv0F,OAAQmK,IAC1C2wF,EAAO8kB,EAAUrrB,MAAMpqF,GAEclK,SAAjCvG,KAAKykH,eAAerjB,EAAK/gG,MAEvB+gG,EAAKuD,MAAQvD,EAAKwD,OACpBqgB,EAAc7jB,EAAK/gG,IAAM+gG,EAGrBA,EAAKuD,MAAQ+gB,GAEf/gB,EAAOkhB,EAAsBxlH,GAC7BukG,EAASxD,EAAKwD,OACduhB,EAAcvhB,IAEdD,EAAOvD,EAAKuD,KACZC,EAASihB,EAAsBxlH,GAC/B8lH,EAAcxhB,GAKiBp+F,SAA/By+G,EAAcmB,IAChBE,EAAY7+G,MAAO45F,KAAMA,EAAMwD,OAAQA,EAAQD,KAAMA,KAQ7D,IAAK,GAAIl0F,GAAI,EAAGA,EAAI41G,EAAY//G,OAAQmK,IAAK,CAC3C,GAAI61G,GAAQD,EAAY51G,GAAG2wF,KAEvB8jB,EAAgBd,EAAc,WAAWe,aAAamB,EAAO,OAEjE3lH,GAAK0G,WAAW69G,EAAee,GAG/Bf,EAAc9vG,KAAOixG,EAAY51G,GAAGm0F,OACpCsgB,EAAc/vG,GAAKkxG,EAAY51G,GAAGk0F,KAClCugB,EAAc7kH,GAAK,eAAiBM,EAAKgF,YAIzC,IAAI4gH,GAAUvmH,KAAKo/C,KAAKq8C,UAAUE,WAAWupB,EAC7CqB,GAAQC,0BAA4BF,EAAMjmH,GAG1CL,KAAKo/C,KAAKy7C,MAAM0rB,EAAQlmH,IAAMkmH,EAC9BA,EAAQnW,UAGRpwG,KAAKymH,mBAAmBH,GACxBA,EAAMtnF,YAAak9C,SAAS,EAAOlf,QAAQ,QAY/CrzD,IAAK,gBACL5E,MAAO,WACL,GAAIlB,GAAUwC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,EASnF,OAPsCE,UAAlC1C,EAAQoiH,wBACVpiH,EAAQoiH,0BAE4B1/G,SAAlC1C,EAAQgiH,wBACVhiH,EAAQgiH,0BAGHhiH,KAYT8F,IAAK,WACL5E,MAAO,SAAkBigH,EAAeC,EAAephH,GACrD,GAAIihH,GAAcz+G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAGzF,MAAIe,OAAO6H,KAAK+1G,GAAe1+G,OAAS,GAAxC,CAKA,IAAK,GAAIo4F,KAAUsmB,GACjB,GAAIA,EAAch/G,eAAe04F,IACKn4F,SAAhCvG,KAAKwkH,eAAe9lB,GACtB,MAKN,IAAImnB,GAAwBllH,EAAK0G,cAAexD,EAAQgiH,sBAGxD,IAAkCt/G,SAA9B1C,EAAQ6iH,kBAAiC,CAE3C,GAAIC,KACJ,KAAK,GAAIjoB,KAAUsmB,GACjB,GAAIA,EAAch/G,eAAe04F,GAAS,CACxC,GAAIwmB,GAAgBd,EAAc,WAAWe,aAAaH,EAActmB,GACxEioB,GAAkBn/G,KAAK09G,GAK3B,GAAI0B,KACJ,KAAK,GAAIjoB,KAAUsmB,GACjB,GAAIA,EAAcj/G,eAAe24F,IAEF,iBAAzBA,EAAO/xF,OAAO,EAAG,IAAwB,CAC3C,GAAIs4G,GAAgBd,EAAc,WAAWe,aAAaF,EAActmB,GAAS,OACjFioB,GAAkBp/G,KAAK09G,GAM7B,GADAW,EAAwBhiH,EAAQ6iH,kBAAkBb,EAAuBc,EAAmBC,IACvFf,EACH,KAAM,IAAI7+G,OAAM,8DAKaT,SAA7Bs/G,EAAsBxlH,KACxBwlH,EAAsBxlH,GAAK,WAAaM,EAAKgF,aAE/C,IAAIkhH,GAAYhB,EAAsBxlH,EAEFkG,UAAhCs/G,EAAsB3nF,QACxB2nF,EAAsB3nF,MAAQ,UAIhC,IAAI3H,GAAMhwB,MACsBA,UAA5Bs/G,EAAsBjoF,IACxBrH,EAAMv2B,KAAK8mH,oBAAoB9B,GAC/Ba,EAAsBjoF,EAAIrH,EAAIqH,GAEAr3B,SAA5Bs/G,EAAsB5kG,IACZ1a,SAARgwB,IACFA,EAAMv2B,KAAK8mH,oBAAoB9B,IAEjCa,EAAsB5kG,EAAIsV,EAAItV,GAIhC4kG,EAAsBxlH,GAAKwmH,CAG3B,IAAIE,GAAc/mH,KAAKo/C,KAAKq8C,UAAUC,WAAWmqB,EAAuBvB,EAAyB,WACjGyC,GAAYznB,WAAY,EACxBynB,EAAYC,eAAiBhC,EAC7B+B,EAAYE,eAAiBhC,EAE7B8B,EAAYd,sBAAwBpiH,EAAQoiH,sBAG5CjmH,KAAKo/C,KAAKu7C,MAAMkrB,EAAsBxlH,IAAM0mH,EAG5C/mH,KAAKknH,oBAAoBlC,EAAeC,EAAeY,EAAuBhiH,EAAQoiH,sBAGtF,KAAK,GAAItnB,KAAUsmB,GACjB,GAAIA,EAAcj/G,eAAe24F,IACCp4F,SAA5BvG,KAAKo/C,KAAKy7C,MAAM8D,GAAuB,CACzC,GAAIyC,GAAOphG,KAAKo/C,KAAKy7C,MAAM8D,EAE3B3+F,MAAKymH,mBAAmBrlB,GAExBA,EAAKpiE,YAAak9C,SAAS,EAAOlf,QAAQ,IAMhD,IAAK,GAAI0hC,KAAUsmB,GACbA,EAAch/G,eAAe04F,KAC/B1+F,KAAKwkH,eAAe9lB,IAAYmoB,UAAWhB,EAAsBxlH,GAAIu7B,KAAM57B,KAAKo/C,KAAKu7C,MAAM+D,IAC3F1+F,KAAKo/C,KAAKu7C,MAAM+D,GAAQ1/D,YAAag+B,QAAQ,EAAMkf,SAAS,IAKhE2pC,GAAsBxlH,GAAKkG,OAGvBu+G,KAAgB,GAClB9kH,KAAKo/C,KAAKE,QAAQzH,KAAK,oBAI3BluC,IAAK,qBACL5E,MAAO,SAA4Bq8F,GACI76F,SAAjCvG,KAAKykH,eAAerjB,EAAK/gG,MAC3BL,KAAKykH,eAAerjB,EAAK/gG,KAAQ67E,QAASklB,EAAKv9F,QAAQq4E,QAASlf,OAAQokC,EAAKv9F,QAAQm5D,YAIzFrzD,IAAK,eACL5E,MAAO,SAAsBq8F,GAC3B,GAAI+lB,GAAkBnnH,KAAKykH,eAAerjB,EAAK/gG,GACvBkG,UAApB4gH,IACF/lB,EAAKpiE,YAAak9C,QAASirC,EAAgBjrC,QAASlf,OAAQmqD,EAAgBnqD,eACrEh9D,MAAKykH,eAAerjB,EAAK/gG,QAUpCsJ,IAAK,YACL5E,MAAO,SAAmB25F,GACxB,MAAgCn4F,UAA5BvG,KAAKo/C,KAAKu7C,MAAM+D,GACX1+F,KAAKo/C,KAAKu7C,MAAM+D,GAAQY,aAAc,GAE7C3/E,QAAQw+B,IAAI,yBACL,MAWXx0C,IAAK,sBACL5E,MAAO,SAA6BigH,GAOlC,IAAK,GANDoB,GAAYh/G,OAAO6H,KAAK+1G,GACxB7D,EAAO6D,EAAcoB,EAAU,IAAIxoF,EACnCyjF,EAAO2D,EAAcoB,EAAU,IAAIxoF,EACnCwjF,EAAO4D,EAAcoB,EAAU,IAAInlG,EACnCqgG,EAAO0D,EAAcoB,EAAU,IAAInlG,EACnC2a,EAAOr1B,OACFE,EAAI,EAAGA,EAAI2/G,EAAU9/G,OAAQG,IACpCm1B,EAAOopF,EAAcoB,EAAU3/G,IAC/B06G,EAAOvlF,EAAKgC,EAAIujF,EAAOvlF,EAAKgC,EAAIujF,EAChCE,EAAOzlF,EAAKgC,EAAIyjF,EAAOzlF,EAAKgC,EAAIyjF,EAChCD,EAAOxlF,EAAK3a,EAAImgG,EAAOxlF,EAAK3a,EAAImgG,EAChCE,EAAO1lF,EAAK3a,EAAIqgG,EAAO1lF,EAAK3a,EAAIqgG,CAGlC,QAAS1jF,EAAG,IAAOujF,EAAOE,GAAOpgG,EAAG,IAAOmgG,EAAOE,OASpD33G,IAAK,cACL5E,MAAO,SAAqBqiH,EAAevjH,GACzC,GAAIihH,GAAcz+G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAGzF,IAAsBE,SAAlB6gH,EACF,KAAM,IAAIpgH,OAAM,4CAElB,IAAuCT,SAAnCvG,KAAKo/C,KAAKu7C,MAAMysB,GAClB,KAAM,IAAIpgH,OAAM,4DAElB,IAAsDT,SAAlDvG,KAAKo/C,KAAKu7C,MAAMysB,GAAeJ,eAEjC,WADArnG,SAAQw+B,IAAI,YAAcipE,EAAgB,qBAG5C,IAAIL,GAAc/mH,KAAKo/C,KAAKu7C,MAAMysB,GAC9BJ,EAAiBD,EAAYC,eAC7BC,EAAiBF,EAAYE,cAGjC,IAAgB1gH,SAAZ1C,GAAqD0C,SAA5B1C,EAAQwjH,iBAAoE,kBAA5BxjH,GAAQwjH,gBAAgC,CACnH,GAAI1I,MACA2I,GAAoB1pF,EAAGmpF,EAAYnpF,EAAG3c,EAAG8lG,EAAY9lG,EACzD,KAAK,GAAIy9E,KAAUsoB,GACjB,GAAIA,EAAehhH,eAAe04F,GAAS,CACzC,GAAI0jB,GAAgBpiH,KAAKo/C,KAAKu7C,MAAM+D,EACpCigB,GAAUjgB,IAAY9gE,EAAGwkF,EAAcxkF,EAAG3c,EAAGmhG,EAAcnhG,GAG/D,GAAIsmG,GAAe1jH,EAAQwjH,gBAAgBC,EAAiB3I,EAE5D,KAAK,GAAIjgB,KAAUsoB,GACjB,GAAIA,EAAehhH,eAAe04F,GAAS,CACzC,GAAI0jB,GAAgBpiH,KAAKo/C,KAAKu7C,MAAM+D,EACPn4F,UAAzBghH,EAAa7oB,KACf0jB,EAAcxkF,EAA+Br3B,SAA3BghH,EAAa7oB,GAAQ9gE,EAAkBmpF,EAAYnpF,EAAI2pF,EAAa7oB,GAAQ9gE,EAC9FwkF,EAAcnhG,EAA+B1a,SAA3BghH,EAAa7oB,GAAQz9E,EAAkB8lG,EAAY9lG,EAAIsmG,EAAa7oB,GAAQz9E,QAMpG,KAAK,GAAIy9E,KAAUsoB,GACjB,GAAIA,EAAehhH,eAAe04F,GAAS,CACzC,GAAI0jB,GAAgBpiH,KAAKo/C,KAAKu7C,MAAM+D,EACpC0jB,GAAgB4E,EAAetoB,GAE3B0jB,EAAcv+G,QAAQ6+F,MAAM9kE,KAAM,IACpCwkF,EAAcxkF,EAAImpF,EAAYnpF,GAE5BwkF,EAAcv+G,QAAQ6+F,MAAMzhF,KAAM,IACpCmhG,EAAcnhG,EAAI8lG,EAAY9lG,GAOtC,IAAK,GAAIy9E,KAAUsoB,GACjB,GAAIA,EAAehhH,eAAe04F,GAAS,CACzC,GAAI0jB,GAAgBpiH,KAAKo/C,KAAKu7C,MAAM+D,EAGpC0jB,GAAcxD,GAAKmI,EAAYnI,GAC/BwD,EAAcvD,GAAKkI,EAAYlI,GAG/BuD,EAAcpjF,YAAag+B,QAAQ,EAAOkf,SAAS,UAE5Cl8E,MAAKwkH,eAAe9lB,GAM/B,IAAK,GADD8oB,MACK/gH,EAAI,EAAGA,EAAIsgH,EAAYlsB,MAAMv0F,OAAQG,IAC5C+gH,EAAiBhgH,KAAKu/G,EAAYlsB,MAAMp0F,GAI1C,KAAK,GAAIA,GAAI,EAAGA,EAAI+gH,EAAiBlhH,OAAQG,IAAK,CAChD,GAAI26F,GAAOomB,EAAiB/gH,GAExB0/G,EAAcnmH,KAAK2lH,gBAAgBvkB,EAAMgmB,EAE7C,IAAyC7gH,SAArCvG,KAAKwkH,eAAe2B,GAA4B,CAElD,GAAIsB,GAAeznH,KAAKo/C,KAAKu7C,MAAM36F,KAAKwkH,eAAe2B,GAAaU,WAChEa,EAAe1nH,KAAKo/C,KAAKy7C,MAAMuG,EAAKolB,0BACxC,IAAqBjgH,SAAjBmhH,EAA4B,CAC9BD,EAAaR,eAAeS,EAAarnH,IAAMqnH,QAGxCT,GAAeS,EAAarnH,GAInC,IAAIukG,GAAS8iB,EAAa9iB,OACtBD,EAAO+iB,EAAa/iB,IACpB+iB,GAAa/iB,MAAQwhB,EACvBxhB,EAAO3kG,KAAKwkH,eAAe2B,GAAaU,UAExCjiB,EAAS5kG,KAAKwkH,eAAe2B,GAAaU,SAI5C,IAAI3B,GAAgBd,EAAc,WAAWe,aAAauC,EAAc,OACxE/mH,GAAK0G,WAAW69G,EAAeuC,EAAaxB,sBAG5C,IAAI5lH,GAAK,eAAiBM,EAAKgF,YAC/BhF,GAAK0G,WAAW69G,GAAiB9vG,KAAMwvF,EAAQzvF,GAAIwvF,EAAM3nC,QAAQ,EAAOkf,SAAS,EAAM77E,GAAIA,GAG3F,IAAIkmH,GAAUvmH,KAAKo/C,KAAKq8C,UAAUE,WAAWupB,EAC7CqB,GAAQC,0BAA4BkB,EAAarnH,GACjDL,KAAKo/C,KAAKy7C,MAAMx6F,GAAMkmH,EACtBvmH,KAAKo/C,KAAKy7C,MAAMx6F,GAAI+vG,eAEjB,CACL,GAAIuX,GAAe3nH,KAAKo/C,KAAKy7C,MAAMuG,EAAKolB,0BACnBjgH,UAAjBohH,GACF3nH,KAAK4nH,aAAaD,GAGtBvmB,EAAKiP,UAELjP,EAAK8O,mBACElwG,MAAKo/C,KAAKy7C,MAAMuG,EAAK/gG,IAI9B,IAAK,GAAIs+F,KAAUsoB,GACbA,EAAejhH,eAAe24F,IAChC3+F,KAAK4nH,aAAaX,EAAetoB,UAK9B3+F,MAAKo/C,KAAKu7C,MAAMysB,GAEnBtC,KAAgB,GAClB9kH,KAAKo/C,KAAKE,QAAQzH,KAAK,mBAI3BluC,IAAK,oBACL5E,MAAO,SAA2B8hH,GAChC,GAAIgB,KACJ,IAAI7nH,KAAKs/F,UAAUunB,MAAe,EAAM,CACtC,GAAIG,GAAiBhnH,KAAKo/C,KAAKu7C,MAAMksB,GAAWG,cAChD,KAAK,GAAItoB,KAAUsoB,GACbA,EAAehhH,eAAe04F,IAChCmpB,EAAWrgH,KAAKxH,KAAKo/C,KAAKu7C,MAAM+D,GAAQr+F,IAK9C,MAAOwnH,MASTl+G,IAAK,WACL5E,MAAO,SAAkB25F,GAKvB,IAJA,GAAI58F,MACA+C,EAAM,IACNknC,EAAU,EAEyBxlC,SAAhCvG,KAAKwkH,eAAe9lB,IAAmC75F,EAAVknC,GAClDjqC,EAAM0F,KAAKxH,KAAKo/C,KAAKu7C,MAAM+D,GAAQr+F,IACnCq+F,EAAS1+F,KAAKwkH,eAAe9lB,GAAQmoB,UACrC96E,GAKF,OAHAjqC,GAAM0F,KAAKxH,KAAKo/C,KAAKu7C,MAAM+D,GAAQr+F,IACnCyB,EAAMgmH,UAEChmH,KAWT6H,IAAK,kBACL5E,MAAO,SAAyBq8F,EAAM1C,GACpC,MAAI0C,GAAKuD,MAAQjG,EACR0C,EAAKuD,KACHvD,EAAKwD,QAAUlG,EACjB0C,EAAKwD,OAELxD,EAAKwD,UAWhBj7F,IAAK,cACL5E,MAAO,WAML,IAAK,GALDgjH,GAAU,EACVC,EAAiB,EACjBC,EAAa,EACbC,EAAa,EAERzhH,EAAI,EAAGA,EAAIzG,KAAKo/C,KAAKw7C,YAAYt0F,OAAQG,IAAK,CACrD,GAAIm1B,GAAO57B,KAAKo/C,KAAKu7C,MAAM36F,KAAKo/C,KAAKw7C,YAAYn0F,GAC7Cm1B,GAAKi/D,MAAMv0F,OAAS4hH,IACtBA,EAAatsF,EAAKi/D,MAAMv0F,QAE1ByhH,GAAWnsF,EAAKi/D,MAAMv0F,OACtB0hH,GAAkB/iH,KAAK8U,IAAI6hB,EAAKi/D,MAAMv0F,OAAQ,GAC9C2hH,GAAc,EAEhBF,GAAoBE,EACpBD,GAAkCC,CAElC,IAAIE,GAAWH,EAAiB/iH,KAAK8U,IAAIguG,EAAS,GAC9CK,EAAoBnjH,KAAKw0C,KAAK0uE,GAE9BE,EAAepjH,KAAKuK,MAAMu4G,EAAU,EAAIK,EAO5C,OAJIC,GAAeH,IACjBG,EAAeH,GAGVG,MAIJ9D,IAGT3kH,GAAQ,WAAa2kH,EACrB1kH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS82E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBv2E,EAAOT,EAAoB,GAE3BooH,EAAc,WAChB,QAASA,KACPtxC,EAAgBh3E,KAAMsoH,GA+GxB,MAxGAlxC,GAAakxC,EAAa,OACxB3+G,IAAK,WACL5E,MAAO,SAAkBwjH,GACvB,GAMI3sF,GANA4sF,EAAgBniH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAErF+6G,EAAO,IACPE,EAAO,KACPH,EAAO,IACPE,EAAO,IAEX,IAAImH,EAAcliH,OAAS,EACzB,IAAK,GAAIG,GAAI,EAAGA,EAAI+hH,EAAcliH,OAAQG,IACxCm1B,EAAO2sF,EAASC,EAAc/hH,IAC1B06G,EAAOvlF,EAAK0nE,MAAMkB,YAAY77F,OAChCw4G,EAAOvlF,EAAK0nE,MAAMkB,YAAY77F,MAE5B04G,EAAOzlF,EAAK0nE,MAAMkB,YAAY3yD,QAChCwvE,EAAOzlF,EAAK0nE,MAAMkB,YAAY3yD,OAE5BuvE,EAAOxlF,EAAK0nE,MAAMkB,YAAY37F,MAChCu4G,EAAOxlF,EAAK0nE,MAAMkB,YAAY37F,KAE5By4G,EAAO1lF,EAAK0nE,MAAMkB,YAAYl2D,SAChCgzE,EAAO1lF,EAAK0nE,MAAMkB,YAAYl2D,OAQpC,OAHa,OAAT6yE,GAAyB,OAATE,GAA0B,MAATD,GAAyB,OAATE,IACnDF,EAAO,EAAGE,EAAO,EAAGH,EAAO,EAAGE,EAAO,IAE9BF,KAAMA,EAAME,KAAMA,EAAMD,KAAMA,EAAME,KAAMA,MAOrD33G,IAAK,eACL5E,MAAO,SAAsBwjH,GAC3B,GAMI3sF,GANA4sF,EAAgBniH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAErF+6G,EAAO,IACPE,EAAO,KACPH,EAAO,IACPE,EAAO,IAEX,IAAImH,EAAcliH,OAAS,EACzB,IAAK,GAAIG,GAAI,EAAGA,EAAI+hH,EAAcliH,OAAQG,IACxCm1B,EAAO2sF,EAASC,EAAc/hH,IAC1B06G,EAAOvlF,EAAKgC,IACdujF,EAAOvlF,EAAKgC,GAEVyjF,EAAOzlF,EAAKgC,IACdyjF,EAAOzlF,EAAKgC,GAEVwjF,EAAOxlF,EAAK3a,IACdmgG,EAAOxlF,EAAK3a,GAEVqgG,EAAO1lF,EAAK3a,IACdqgG,EAAO1lF,EAAK3a,EAQlB,OAHa,OAATkgG,GAAyB,OAATE,GAA0B,MAATD,GAAyB,OAATE,IACnDF,EAAO,EAAGE,EAAO,EAAGH,EAAO,EAAGE,EAAO,IAE9BF,KAAMA,EAAME,KAAMA,EAAMD,KAAMA,EAAME,KAAMA,MAQrD33G,IAAK,aACL5E,MAAO,SAAoBo7C,GACzB,OAASviB,EAAG,IAAOuiB,EAAMkhE,KAAOlhE,EAAMghE,MACpClgG,EAAG,IAAOk/B,EAAMmhE,KAAOnhE,EAAMihE,UAUjCz3G,IAAK,eACL5E,MAAO,SAAsByM,EAAM5J,GACjC,GAAIs9G,KASJ,OARa3+G,UAATqB,GAA+B,SAATA,GACxBjH,EAAK0G,WAAW69G,EAAe1zG,EAAK3N,SAAS,GAC7CqhH,EAActnF,EAAIpsB,EAAKosB,EACvBsnF,EAAcjkG,EAAIzP,EAAKyP,EACvBikG,EAAcuD,oBAAsBj3G,EAAKqpF,MAAMv0F,QAE/C3F,EAAK0G,WAAW69G,EAAe1zG,EAAK3N,SAAS,GAExCqhH,MAIJoD,IAGT1oH,GAAQ,WAAa0oH,EACrBzoH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAEhH,QAAS4iG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAI9iG,WAAU,iEAAoE8iG,GAAeD,GAAS92F,UAAY7L,OAAOgJ,OAAO45F,GAAcA,EAAW/2F,WAAa9L,aAAepC,MAAOglG,EAAUxyB,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAewyB,IAAY5iG,OAAO6iG,eAAiB7iG,OAAO6iG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAVje5iG,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIolG,GAAO,SAAaC,EAAIC,EAAKC,GAAqC,IAA9B,GAAIC,IAAS,EAAwBA,GAAQ,CAAE,GAAInmG,GAASgmG,EAAI3iD,EAAW4iD,EAAKG,EAAWF,CAAKC,IAAS,EAAsB,OAAXnmG,IAAiBA,EAAS6U,SAAShG,UAAW,IAAIw3F,GAAOrjG,OAAOsjG,yBAAyBtmG,EAAQqjD,EAAW,IAAalhD,SAATkkG,EAAJ,CAA4O,GAAI,SAAWA,GAAQ,MAAOA,GAAK1lG,KAAgB,IAAIyoB,GAASi9E,EAAKzzE,GAAK,IAAezwB,SAAXinB,EAAwB,MAAoB,OAAOA,GAAOjtB,KAAKiqG,GAA/V,GAAIj/F,GAASnE,OAAOujG,eAAevmG,EAAS,IAAe,OAAXmH,EAAmB,MAA2B6+F,GAAK7+F,EAAQ8+F,EAAM5iD,EAAU6iD,EAAME,EAAUD,GAAS,EAAME,EAAOl/F,EAAShF,SAQxcmiH,EAASxoH,EAAoB,IAE7ByoH,EAAS9xC,EAAuB6xC,GAMhCE,EAAU,SAAWC,GAGvB,QAASD,GAAQ/kH,EAASu7C,EAAMynD,EAAWzY,EAAWx9E,GACpDomE,EAAgBh3E,KAAM4oH,GAEtBze,EAAK/iG,OAAOujG,eAAeie,EAAQ31G,WAAY,cAAejT,MAAMO,KAAKP,KAAM6D,EAASu7C,EAAMynD,EAAWzY,EAAWx9E,GAEpH5Q,KAAKs/F,WAAY,EACjBt/F,KAAKgnH,kBACLhnH,KAAKinH,kBAGP,MAZAnd,GAAU8e,EAASC,GAYZD,GACND,EAAO,WAEV/oH,GAAQ,WAAagpH,EACrB/oH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS82E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,KAI3gB,oBAAXnsE,UACTA,OAAO+9G,sBAAwB/9G,OAAO+9G,uBAAyB/9G,OAAOg+G,0BAA4Bh+G,OAAOi+G,6BAA+Bj+G,OAAOk+G,wBAGjJ,IAAItoH,GAAOT,EAAoB,GAE3BgpH,EAAiB,WACnB,QAASA,GAAe9pE,EAAM3U,GAC5BusC,EAAgBh3E,KAAMkpH,GAEtBlpH,KAAKo/C,KAAOA,EACZp/C,KAAKyqC,OAASA,EAEdzqC,KAAKmpH,iBAAkB,EACvBnpH,KAAK27G,YAAcp1G,OACnBvG,KAAKu7G,iBAAkB,EACvBv7G,KAAKopH,iBAAkB,EACvBppH,KAAKqpH,eAAiB,EACtBrpH,KAAKg4E,WAAazxE,OAClBvG,KAAKspH,aAAc,EAEnBtpH,KAAK45D,UAAW,EAChB55D,KAAK6D,WACL7D,KAAK4+C,gBACH2qE,iBAAiB,EACjBC,iBAAiB,GAEnB7oH,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK4+C,gBAE/B5+C,KAAKypH,0BACLzpH,KAAK67F,qBA8TP,MA3TAzkB,GAAa8xC,IACXv/G,IAAK,qBACL5E,MAAO,WACL,GAAIm9C,GAAQliD,IAEZA,MAAKo/C,KAAKE,QAAQlgB,GAAG,YAAa,WAChC8iB,EAAM0X,UAAW,IAEnB55D,KAAKo/C,KAAKE,QAAQlgB,GAAG,UAAW,WAC9B,MAAO8iB,GAAM0X,UAAW,IAE1B55D,KAAKo/C,KAAKE,QAAQlgB,GAAG,eAAgB,WACnC,MAAO8iB,GAAMwnE,iBAEf1pH,KAAKo/C,KAAKE,QAAQlgB,GAAG,UAAW,WAC1B8iB,EAAMknE,mBAAoB,GAC5BlnE,EAAMhB,YAGVlhD,KAAKo/C,KAAKE,QAAQlgB,GAAG,eAAgB,WACnC8iB,EAAMonE,aAAc,IAEtBtpH,KAAKo/C,KAAKE,QAAQlgB,GAAG,eAAgB,WACnC8iB,EAAMonE,aAAc,EAAKpnE,EAAMinE,iBAAkB,IAEnDnpH,KAAKo/C,KAAKE,QAAQlgB,GAAG,iBAAkBp/B,KAAK2pH,eAAepqE,KAAKv/C,OAChEA,KAAKo/C,KAAKE,QAAQlgB,GAAG,kBAAmB,WACtC8iB,EAAMmnE,gBAAkB,EACxBnnE,EAAMknE,iBAAkB,EACxBlnE,EAAM0nE,oBAER5pH,KAAKo/C,KAAKE,QAAQlgB,GAAG,iBAAkB,WACrC8iB,EAAMmnE,gBAAkB,EACxBnnE,EAAMknE,gBAAkBlnE,EAAMmnE,eAAiB,EAC/CnnE,EAAMy5D,YAAcp1G,SAEtBvG,KAAKo/C,KAAKE,QAAQlgB,GAAG,UAAW,WAC9B8iB,EAAMmnE,eAAiB,EACvBnnE,EAAMonE,aAAc,EACpBpnE,EAAMknE,iBAAkB,EACpBlnE,EAAMq5D,mBAAoB,EAC5Bj4E,aAAa4e,EAAMy5D,aAEnBkO,qBAAqB3nE,EAAMy5D,aAE7Bz5D,EAAM9C,KAAKE,QAAQ/f,WAIvB51B,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAgB0C,SAAZ1C,EAAuB,CACzB,GAAIoM,IAAU,kBAAmB,kBACjCtP,GAAKsG,oBAAoBgJ,EAAQjQ,KAAK6D,QAASA,OAInD8F,IAAK,kBACL5E,MAAO,WACD/E,KAAKopH,mBAAoB,GACF7iH,SAArBvG,KAAK27G,cACH37G,KAAKu7G,mBAAoB,EAC3Bv7G,KAAK27G,YAAc5wG,OAAOb,WAAWlK,KAAK8pH,YAAYvqE,KAAKv/C,MAAOA,KAAKs7G,oBAErEt7G,KAAK27G,YAAc5wG,OAAO+9G,sBAAsB9oH,KAAK8pH,YAAYvqE,KAAKv/C,WAMhF2J,IAAK,cACL5E,MAAO,WACD/E,KAAKopH,mBAAoB,IAE3BppH,KAAK27G,YAAcp1G,OAEfvG,KAAKu7G,mBAAoB,GAE3Bv7G,KAAK4pH,kBAGP5pH,KAAKkhD,UAEDlhD,KAAKu7G,mBAAoB,GAE3Bv7G,KAAK4pH,sBAUXjgH,IAAK,SACL5E,MAAO,WACL/E,KAAKo/C,KAAKE,QAAQzH,KAAK,WACvB73C,KAAKkhD,aASPv3C,IAAK,iBACL5E,MAAO,WACL,GAAI20E,GAAS15E,IAETA,MAAKmpH,mBAAoB,GAAQnpH,KAAKopH,mBAAoB,GAASppH,KAAKspH,eAAgB,IAC1FtpH,KAAKmpH,iBAAkB,EACnBnpH,KAAKu7G,mBAAoB,EAC3BxwG,OAAOb,WAAW,WAChBwvE,EAAOx4B,SAAQ,IACd,GAEHn2C,OAAO+9G,sBAAsB,WAC3BpvC,EAAOx4B,SAAQ,SAMvBv3C,IAAK,UACL5E,MAAO,WACL,GAAIi4D,GAAS32D,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAErF,IAAIrG,KAAKspH,eAAgB,EAAM,CAC7BtpH,KAAKo/C,KAAKE,QAAQzH,KAAK,cAEvB73C,KAAKmpH,iBAAkB,CACvB,IAAI53E,GAAMvxC,KAAKyqC,OAAOD,MAAMC,OAAO+G,WAAW,OAGP,IAAnCxxC,KAAKyqC,OAAOD,MAAMC,OAAOjM,OAAmD,IAApCx+B,KAAKyqC,OAAOD,MAAMC,OAAOhM,SACnEz+B,KAAKyqC,OAAO+E,UAGdxvC,KAAKg4E,YAAcjtE,OAAOm8E,kBAAoB,IAAM31C,EAAI41C,8BAAgC51C,EAAI61C,2BAA6B71C,EAAI81C,0BAA4B91C,EAAI+1C,yBAA2B/1C,EAAIg2C,wBAA0B,GAEtNh2C,EAAIi2C,aAAaxnF,KAAKg4E,WAAY,EAAG,EAAGh4E,KAAKg4E,WAAY,EAAG,EAG5D,IAAIl0D,GAAI9jB,KAAKyqC,OAAOD,MAAMC,OAAOC,YAC7Bh9B,EAAI1N,KAAKyqC,OAAOD,MAAMC,OAAOiF,YAIjC,IAHA6B,EAAIE,UAAU,EAAG,EAAG3tB,EAAGpW,GAGe,IAAlC1N,KAAKyqC,OAAOD,MAAME,YACpB,MAIF6G,GAAI+5D,OACJ/5D,EAAI+gE,UAAUtyG,KAAKo/C,KAAKw8C,KAAKjzD,YAAY/K,EAAG59B,KAAKo/C,KAAKw8C,KAAKjzD,YAAY1nB,GACvEswB,EAAIvsC,MAAMhF,KAAKo/C,KAAKw8C,KAAK52F,MAAOhF,KAAKo/C,KAAKw8C,KAAK52F,OAE/CusC,EAAIa,YACJpyC,KAAKo/C,KAAKE,QAAQzH,KAAK,gBAAiBtG,GACxCA,EAAIkB,YAEAuqB,KAAW,IACTh9D,KAAK45D,YAAa,GAAS55D,KAAK45D,YAAa,GAAQ55D,KAAK6D,QAAQ0lH,mBAAoB,IACxFvpH,KAAK+pH,WAAWx4E,IAIhBvxC,KAAK45D,YAAa,GAAS55D,KAAK45D,YAAa,GAAQ55D,KAAK6D,QAAQ2lH,mBAAoB,IACxFxpH,KAAKgqH,WAAWz4E,EAAKyrB,GAGvBzrB,EAAIa,YACJpyC,KAAKo/C,KAAKE,QAAQzH,KAAK,eAAgBtG,GACvCA,EAAIkB,YAGJlB,EAAIk6D,UACAzuC,KAAW,GACbzrB,EAAIE,UAAU,EAAG,EAAG3tB,EAAGpW,OAa7B/D,IAAK,eACL5E,MAAO,WACL,GAAIwsC,GAAMvxC,KAAKyqC,OAAOD,MAAMC,OAAO+G,WAAW,KACtBjrC,UAApBvG,KAAKg4E,aACPh4E,KAAKg4E,YAAcjtE,OAAOm8E,kBAAoB,IAAM31C,EAAI41C,8BAAgC51C,EAAI61C,2BAA6B71C,EAAI81C,0BAA4B91C,EAAI+1C,yBAA2B/1C,EAAIg2C,wBAA0B,IAExNh2C,EAAIi2C,aAAaxnF,KAAKg4E,WAAY,EAAG,EAAGh4E,KAAKg4E,WAAY,EAAG,GAC5DzmC,EAAI+5D,OACJ/5D,EAAI+gE,UAAUtyG,KAAKo/C,KAAKw8C,KAAKjzD,YAAY/K,EAAG59B,KAAKo/C,KAAKw8C,KAAKjzD,YAAY1nB,GACvEswB,EAAIvsC,MAAMhF,KAAKo/C,KAAKw8C,KAAK52F,MAAOhF,KAAKo/C,KAAKw8C,KAAK52F,MAE/C,IAAI21F,GAAQ36F,KAAKo/C,KAAKu7C,MAClB/+D,EAAOr1B,MAGX,KAAK,GAAIm4F,KAAU/D,GACbA,EAAM30F,eAAe04F,KACvB9iE,EAAO++D,EAAM+D,GACb9iE,EAAK8rE,OAAOn2D,GACZ3V,EAAK6rE,kBAAkBl2D,EAAK3V,EAAK2rC,UAKrCh2B,GAAIk6D,aAWN9hG,IAAK,aACL5E,MAAO,SAAoBwsC,GAgBzB,IAAK,GAfD04E,GAAa5jH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAErFs0F,EAAQ36F,KAAKo/C,KAAKu7C,MAClBC,EAAc56F,KAAKo/C,KAAKw7C,YACxBh/D,EAAOr1B,OACPghE,KACAhjC,EAAS,GACT2lF,EAAUlqH,KAAKyqC,OAAO20D,aAAcxhE,GAAI2G,EAAQtjB,GAAIsjB,IACpD4lF,EAAcnqH,KAAKyqC,OAAO20D,aAC5BxhE,EAAG59B,KAAKyqC,OAAOD,MAAMC,OAAOC,YAAcnG,EAC1CtjB,EAAGjhB,KAAKyqC,OAAOD,MAAMC,OAAOiF,aAAenL,IAEzC6lF,GAAiBvhH,IAAKqhH,EAAQjpG,EAAGtY,KAAMuhH,EAAQtsF,EAAG0Q,OAAQ67E,EAAYlpG,EAAG4wB,MAAOs4E,EAAYvsF,GAGvFn3B,EAAI,EAAGA,EAAIm0F,EAAYt0F,OAAQG,IACtCm1B,EAAO++D,EAAMC,EAAYn0F,IAErBm1B,EAAKyuF,aACP9iD,EAAS//D,KAAKozF,EAAYn0F,IAEtBwjH,KAAe,EACjBruF,EAAKqgD,KAAK1qC,GACD3V,EAAK0uF,6BAA6BF,MAAkB,EAC7DxuF,EAAKqgD,KAAK1qC,GAEV3V,EAAK6rE,kBAAkBl2D,EAAK3V,EAAK2rC,SAMvC,KAAK,GAAI9gE,GAAI,EAAGA,EAAI8gE,EAASjhE,OAAQG,IACnCm1B,EAAO++D,EAAMpzB,EAAS9gE,IACtBm1B,EAAKqgD,KAAK1qC,MAWd5nC,IAAK,aACL5E,MAAO,SAAoBwsC,GAKzB,IAAK,GAJDspD,GAAQ76F,KAAKo/C,KAAKy7C,MAClBC,EAAc96F,KAAKo/C,KAAK07C,YACxBsG,EAAO76F,OAEFE,EAAI,EAAGA,EAAIq0F,EAAYx0F,OAAQG,IACtC26F,EAAOvG,EAAMC,EAAYr0F,IACrB26F,EAAK8P,aAAc,GACrB9P,EAAKnlB,KAAK1qC,MAWhB5nC,IAAK,0BACL5E,MAAO,WACL,GAAsB,mBAAXgG,QAAwB,CACjC,GAAIw/G,GAAc//G,UAAUC,UAAU0M,aACtCnX,MAAKu7G,iBAAkB,EACgB,IAAnCgP,EAAYhjH,QAAQ,YAEtBvH,KAAKu7G,iBAAkB,EACmB,IAAjCgP,EAAYhjH,QAAQ,WAEzBgjH,EAAYhjH,QAAQ,WAAa,KACnCvH,KAAKu7G,iBAAkB,OAI3Bv7G,MAAKu7G,iBAAkB,MAKtB2N,IAGTtpH,GAAQ,WAAaspH,EACrBrpH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS82E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBlzE,EAAS9D,EAAoB,IAC7Bo+D,EAAap+D,EAAoB,IAEjCS,EAAOT,EAAoB,GAU3BsqH,EAAS,WACX,QAASA,GAAOprE,GACd43B,EAAgBh3E,KAAMwqH,GAEtBxqH,KAAKo/C,KAAOA,EACZp/C,KAAKg4E,WAAa,EAClBh4E,KAAKyqH,YAAclkH,OACnBvG,KAAK0qH,eAAiB1qH,KAAKgiE,UAAUziB,KAAKv/C,MAC1CA,KAAK2qH,eAEL3qH,KAAK6D,WACL7D,KAAK4+C,gBACHC,YAAY,EACZpgB,OAAQ,OACRD,MAAO,QAET79B,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK4+C,gBAE/B5+C,KAAK67F,qBA2YP,MAxYAzkB,GAAaozC,IACX7gH,IAAK,qBACL5E,MAAO,WACL,GAAIm9C,GAAQliD,IAGZA,MAAKo/C,KAAKE,QAAQ7E,KAAK,SAAU,SAAU30C,GACvB,IAAdA,EAAI04B,QACN0jB,EAAM9C,KAAKw8C,KAAKjzD,YAAY/K,EAAgB,GAAZ93B,EAAI04B,OAEnB,IAAf14B,EAAI24B,SACNyjB,EAAM9C,KAAKw8C,KAAKjzD,YAAY1nB,EAAiB,GAAbnb,EAAI24B,UAGxCz+B,KAAKo/C,KAAKE,QAAQlgB,GAAG,UAAWp/B,KAAKwvC,QAAQ+P,KAAKv/C,OAClDA,KAAKo/C,KAAKE,QAAQlgB,GAAG,UAAW,WAC9B8iB,EAAM0oE,YAAYzrF,UAClB+iB,EAAMkC,OAAOjlB,UACb+iB,EAAM2oE,gBAIVlhH,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAI61E,GAAS15E,IAEb,IAAgBuG,SAAZ1C,EAAuB,CACzB,GAAIoM,IAAU,QAAS,SAAU,aACjCtP,GAAKsG,oBAAoBgJ,EAAQjQ,KAAK6D,QAASA,GAG7C7D,KAAK6D,QAAQg7C,cAAe,IAE9B7+C,KAAK6qH,WACL7qH,KAAKyqH,YAAcroD,YAAY,WAC7B,GAAIxU,GAAU8rB,EAAOlqC,SACjBoe,MAAY,GACd8rB,EAAOt6B,KAAKE,QAAQzH,KAAK,mBAE1B,KACH73C,KAAK0qH,eAAiB1qH,KAAKgiE,UAAUziB,KAAKv/C,MAC1CW,EAAKwJ,iBAAiBY,OAAQ,SAAU/K,KAAK0qH,oBAIjD/gH,IAAK,WACL5E,MAAO,WAEoBwB,SAArBvG,KAAKyqH,aACPxtE,cAAcj9C,KAAKyqH,aAErB9pH,EAAKgK,oBAAoBI,OAAQ,SAAU/K,KAAK0qH,gBAChD1qH,KAAK0qH,eAAiBnkH,UAGxBoD,IAAK,YACL5E,MAAO,WACL/E,KAAKwvC,UACLxvC,KAAKo/C,KAAKE,QAAQzH,KAAK,cAQzBluC,IAAK,kBACL5E,MAAO,WACL,GAAIizE,GAAa3xE,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAKg4E,WAAa3xE,UAAU,EAEnGrG,MAAK2qH,YAAYG,cAAgB9qH,KAAKwqC,MAAMC,OAAOjM,MAAQw5C,EAC3Dh4E,KAAK2qH,YAAYI,eAAiB/qH,KAAKwqC,MAAMC,OAAOhM,OAASu5C,EAC7Dh4E,KAAK2qH,YAAY3lH,MAAQhF,KAAKo/C,KAAKw8C,KAAK52F,MACxChF,KAAK2qH,YAAYj8E,SAAW1uC,KAAKo/F,aAAcxhE,EAAG,GAAM59B,KAAKwqC,MAAMC,OAAOjM,MAAQw5C,EAAY/2D,EAAG,GAAMjhB,KAAKwqC,MAAMC,OAAOhM,OAASu5C,OAQpIruE,IAAK,kBACL5E,MAAO,WACL,GAA+BwB,SAA3BvG,KAAK2qH,YAAY3lH,OAAyD,IAAlChF,KAAKwqC,MAAMC,OAAOC,aAAwD,IAAnC1qC,KAAKwqC,MAAMC,OAAOiF,cAA0C,IAApB1vC,KAAKg4E,YAAoBh4E,KAAK2qH,YAAYG,cAAgB,EAAG,CAEtL,GAAIE,GAAahrH,KAAKwqC,MAAMC,OAAOjM,MAAQx+B,KAAKg4E,WAAah4E,KAAK2qH,YAAYG,cAC1EG,EAAcjrH,KAAKwqC,MAAMC,OAAOhM,OAASz+B,KAAKg4E,WAAah4E,KAAK2qH,YAAYI,eAC5EG,EAAWlrH,KAAK2qH,YAAY3lH,KAEd,IAAdgmH,GAAkC,GAAfC,EACrBC,EAAoC,GAAzBlrH,KAAK2qH,YAAY3lH,OAAegmH,EAAaC,GACjC,GAAdD,EACTE,EAAWlrH,KAAK2qH,YAAY3lH,MAAQgmH,EACZ,GAAfC,IACTC,EAAWlrH,KAAK2qH,YAAY3lH,MAAQimH,GAGtCjrH,KAAKo/C,KAAKw8C,KAAK52F,MAAQkmH,CAEvB,IAAIC,GAAoBnrH,KAAKo/F,aAC3BxhE,EAAG,GAAM59B,KAAKwqC,MAAMC,OAAOC,YAC3BzpB,EAAG,GAAMjhB,KAAKwqC,MAAMC,OAAOiF,eAGzB07E,GACFxtF,EAAGutF,EAAkBvtF,EAAI59B,KAAK2qH,YAAYj8E,SAAS9Q,EACnD3c,EAAGkqG,EAAkBlqG,EAAIjhB,KAAK2qH,YAAYj8E,SAASztB,EAErDjhB,MAAKo/C,KAAKw8C,KAAKjzD,YAAY/K,GAAKwtF,EAAmBxtF,EAAI59B,KAAKo/C,KAAKw8C,KAAK52F,MACtEhF,KAAKo/C,KAAKw8C,KAAKjzD,YAAY1nB,GAAKmqG,EAAmBnqG,EAAIjhB,KAAKo/C,KAAKw8C,KAAK52F,UAI1E2E,IAAK,gBACL5E,MAAO,SAAuBA,GAC5B,GAAqB,gBAAVA,GACT,MAAOA,GAAQ,IACV,IAAqB,gBAAVA,GAAoB,CACpC,GAA2B,KAAvBA,EAAMwC,QAAQ,MAAuC,KAAxBxC,EAAMwC,QAAQ,MAC7C,MAAOxC,EACF,IAA2B,KAAvBA,EAAMwC,QAAQ,KACvB,MAAOxC,GAAQ,KAGnB,KAAM,IAAIiC,OAAM,wDAA0DjC,MAO5E4E,IAAK,UACL5E,MAAO,WAEL,KAAO/E,KAAKo/C,KAAKhb,UAAU5/B,iBACzBxE,KAAKo/C,KAAKhb,UAAU1/B,YAAY1E,KAAKo/C,KAAKhb,UAAU3/B,WAetD,IAZAzE,KAAKwqC,MAAQpN,SAASM,cAAc,OACpC19B,KAAKwqC,MAAMzhC,UAAY,cACvB/I,KAAKwqC,MAAM17B,MAAM4/B,SAAW,WAC5B1uC,KAAKwqC,MAAM17B,MAAMgF,SAAW,SAC5B9T,KAAKwqC,MAAM6gF,SAAW,IAItBrrH,KAAKwqC,MAAMC,OAASrN,SAASM,cAAc,UAC3C19B,KAAKwqC,MAAMC,OAAO37B,MAAM4/B,SAAW,WACnC1uC,KAAKwqC,MAAMlN,YAAYt9B,KAAKwqC,MAAMC,QAE7BzqC,KAAKwqC,MAAMC,OAAO+G,WAOhB,CACL,GAAID,GAAMvxC,KAAKwqC,MAAMC,OAAO+G,WAAW,KACvCxxC,MAAKg4E,YAAcjtE,OAAOm8E,kBAAoB,IAAM31C,EAAI41C,8BAAgC51C,EAAI61C,2BAA6B71C,EAAI81C,0BAA4B91C,EAAI+1C,yBAA2B/1C,EAAIg2C,wBAA0B,GAEtNvnF,KAAKwqC,MAAMC,OAAO+G,WAAW,MAAMg2C,aAAaxnF,KAAKg4E,WAAY,EAAG,EAAGh4E,KAAKg4E,WAAY,EAAG,OAX1D,CACjC,GAAIrpC,GAAWvR,SAASM,cAAc,MACtCiR,GAAS7/B,MAAMrC,MAAQ,MACvBkiC,EAAS7/B,MAAM8/B,WAAa,OAC5BD,EAAS7/B,MAAM+/B,QAAU,OACzBF,EAASG,UAAY,mDACrB9uC,KAAKwqC,MAAMC,OAAOnN,YAAYqR,GAShC3uC,KAAKo/C,KAAKhb,UAAU9G,YAAYt9B,KAAKwqC,OAErCxqC,KAAKo/C,KAAKw8C,KAAK52F,MAAQ,EACvBhF,KAAKo/C,KAAKw8C,KAAKjzD,aAAgB/K,EAAG,GAAM59B,KAAKwqC,MAAMC,OAAOC,YAAazpB,EAAG,GAAMjhB,KAAKwqC,MAAMC,OAAOiF,cAElG1vC,KAAKs9E,iBAQP3zE,IAAK,cACL5E,MAAO,WACL,GAAIy1E,GAASx6E,IAEOuG,UAAhBvG,KAAKokD,QACPpkD,KAAKokD,OAAOjlB,UAEdn/B,KAAKw2E,QACLx2E,KAAK8oF,SAGL9oF,KAAKokD,OAAS,GAAIpgD,GAAOhE,KAAKwqC,MAAMC,QACpCzqC,KAAKokD,OAAOptB,IAAI,SAAS5e,KAAMqwC,QAAQ,IAEvCzoD,KAAKokD,OAAOptB,IAAI,OAAO5e,KAAM0b,UAAW,EAAGpJ,UAAW,KAEtD4zC,EAAW3C,QAAQ37D,KAAKokD,OAAQ,SAAUt5C,GACxC0vE,EAAOp7B,KAAK27C,eAAep/B,QAAQ7wD,KAErC9K,KAAKokD,OAAOhlB,GAAG,MAAO,SAAUt0B,GAC9B0vE,EAAOp7B,KAAK27C,eAAeC,MAAMlwF,KAEnC9K,KAAKokD,OAAOhlB,GAAG,YAAa,SAAUt0B,GACpC0vE,EAAOp7B,KAAK27C,eAAeE,YAAYnwF,KAEzC9K,KAAKokD,OAAOhlB,GAAG,QAAS,SAAUt0B,GAChC0vE,EAAOp7B,KAAK27C,eAAeG,OAAOpwF,KAEpC9K,KAAKokD,OAAOhlB,GAAG,WAAY,SAAUt0B,GACnC0vE,EAAOp7B,KAAK27C,eAAeI,YAAYrwF,KAEzC9K,KAAKokD,OAAOhlB,GAAG,UAAW,SAAUt0B,GAClC0vE,EAAOp7B,KAAK27C,eAAeK,OAAOtwF,KAEpC9K,KAAKokD,OAAOhlB,GAAG,SAAU,SAAUt0B,GACjC0vE,EAAOp7B,KAAK27C,eAAeM,UAAUvwF,KAEvC9K,KAAKokD,OAAOhlB,GAAG,QAAS,SAAUt0B,GAChC0vE,EAAOp7B,KAAK27C,eAAeO,QAAQxwF,KAIrC9K,KAAKwqC,MAAMC,OAAOtgC,iBAAiB,aAAc,SAAUW,GACzD0vE,EAAOp7B,KAAK27C,eAAev8B,aAAa1zD,KAE1C9K,KAAKwqC,MAAMC,OAAOtgC,iBAAiB,iBAAkB,SAAUW,GAC7D0vE,EAAOp7B,KAAK27C,eAAev8B,aAAa1zD,KAG1C9K,KAAKwqC,MAAMC,OAAOtgC,iBAAiB,YAAa,SAAUW,GACxD0vE,EAAOp7B,KAAK27C,eAAeQ,YAAYzwF,KAEzC9K,KAAKwqC,MAAMC,OAAOtgC,iBAAiB,cAAe,SAAUW,GAC1D0vE,EAAOp7B,KAAK27C,eAAeS,UAAU1wF,KAGvC9K,KAAK4qH,YAAc,GAAI5mH,GAAOhE,KAAKwqC,OACnC8zB,EAAW1C,UAAU57D,KAAK4qH,YAAa,SAAU9/G,GAC/C0vE,EAAOp7B,KAAK27C,eAAen/B,UAAU9wD,QAYzCnB,IAAK,UACL5E,MAAO,WACL,GAAIy5B,GAAQn4B,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAK6D,QAAQ26B,MAAQn4B,UAAU,GAC7Fo4B,EAASp4B,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAK6D,QAAQ46B,OAASp4B,UAAU,EAEnGm4B,GAAQx+B,KAAKsrH,cAAc9sF,GAC3BC,EAASz+B,KAAKsrH,cAAc7sF,EAE5B,IAAI8sF,IAAY,EACZC,EAAWxrH,KAAKwqC,MAAMC,OAAOjM,MAC7BitF,EAAYzrH,KAAKwqC,MAAMC,OAAOhM,OAG9B8S,EAAMvxC,KAAKwqC,MAAMC,OAAO+G,WAAW,MACnCk6E,EAAgB1rH,KAAKg4E,UAkDzB,OAjDAh4E,MAAKg4E,YAAcjtE,OAAOm8E,kBAAoB,IAAM31C,EAAI41C,8BAAgC51C,EAAI61C,2BAA6B71C,EAAI81C,0BAA4B91C,EAAI+1C,yBAA2B/1C,EAAIg2C,wBAA0B,GAElN/oD,GAASx+B,KAAK6D,QAAQ26B,OAASC,GAAUz+B,KAAK6D,QAAQ46B,QAAUz+B,KAAKwqC,MAAM17B,MAAM0vB,OAASA,GAASx+B,KAAKwqC,MAAM17B,MAAM2vB,QAAUA,GAChIz+B,KAAK2rH,gBAAgBD,GAErB1rH,KAAKwqC,MAAM17B,MAAM0vB,MAAQA,EACzBx+B,KAAKwqC,MAAM17B,MAAM2vB,OAASA,EAE1Bz+B,KAAKwqC,MAAMC,OAAO37B,MAAM0vB,MAAQ,OAChCx+B,KAAKwqC,MAAMC,OAAO37B,MAAM2vB,OAAS,OAEjCz+B,KAAKwqC,MAAMC,OAAOjM,MAAQv5B,KAAKsjB,MAAMvoB,KAAKwqC,MAAMC,OAAOC,YAAc1qC,KAAKg4E,YAC1Eh4E,KAAKwqC,MAAMC,OAAOhM,OAASx5B,KAAKsjB,MAAMvoB,KAAKwqC,MAAMC,OAAOiF,aAAe1vC,KAAKg4E,YAE5Eh4E,KAAK6D,QAAQ26B,MAAQA,EACrBx+B,KAAK6D,QAAQ46B,OAASA,EAEtB8sF,GAAY,KAMRvrH,KAAKwqC,MAAMC,OAAOjM,OAASv5B,KAAKsjB,MAAMvoB,KAAKwqC,MAAMC,OAAOC,YAAc1qC,KAAKg4E,aAAeh4E,KAAKwqC,MAAMC,OAAOhM,QAAUx5B,KAAKsjB,MAAMvoB,KAAKwqC,MAAMC,OAAOiF,aAAe1vC,KAAKg4E,cACzKh4E,KAAK2rH,gBAAgBD,GAGnB1rH,KAAKwqC,MAAMC,OAAOjM,OAASv5B,KAAKsjB,MAAMvoB,KAAKwqC,MAAMC,OAAOC,YAAc1qC,KAAKg4E,cAC7Eh4E,KAAKwqC,MAAMC,OAAOjM,MAAQv5B,KAAKsjB,MAAMvoB,KAAKwqC,MAAMC,OAAOC,YAAc1qC,KAAKg4E,YAC1EuzC,GAAY,GAEVvrH,KAAKwqC,MAAMC,OAAOhM,QAAUx5B,KAAKsjB,MAAMvoB,KAAKwqC,MAAMC,OAAOiF,aAAe1vC,KAAKg4E,cAC/Eh4E,KAAKwqC,MAAMC,OAAOhM,OAASx5B,KAAKsjB,MAAMvoB,KAAKwqC,MAAMC,OAAOiF,aAAe1vC,KAAKg4E,YAC5EuzC,GAAY,IAIZA,KAAc,IAChBvrH,KAAKo/C,KAAKE,QAAQzH,KAAK,UACrBrZ,MAAOv5B,KAAKsjB,MAAMvoB,KAAKwqC,MAAMC,OAAOjM,MAAQx+B,KAAKg4E,YACjDv5C,OAAQx5B,KAAKsjB,MAAMvoB,KAAKwqC,MAAMC,OAAOhM,OAASz+B,KAAKg4E,YACnDwzC,SAAUvmH,KAAKsjB,MAAMijG,EAAWxrH,KAAKg4E,YACrCyzC,UAAWxmH,KAAKsjB,MAAMkjG,EAAYzrH,KAAKg4E,cAIzCh4E,KAAK4rH,mBAGAL,KAGT5hH,IAAK,uBASL5E,MAAO,SAA8B64B,GACnC,OAAQA,EAAI59B,KAAKo/C,KAAKw8C,KAAKjzD,YAAY/K,GAAK59B,KAAKo/C,KAAKw8C,KAAK52F,SAW7D2E,IAAK,uBACL5E,MAAO,SAA8B64B,GACnC,MAAOA,GAAI59B,KAAKo/C,KAAKw8C,KAAK52F,MAAQhF,KAAKo/C,KAAKw8C,KAAKjzD,YAAY/K,KAW/Dj0B,IAAK,uBACL5E,MAAO,SAA8Bkc,GACnC,OAAQA,EAAIjhB,KAAKo/C,KAAKw8C,KAAKjzD,YAAY1nB,GAAKjhB,KAAKo/C,KAAKw8C,KAAK52F,SAW7D2E,IAAK,uBACL5E,MAAO,SAA8Bkc,GACnC,MAAOA,GAAIjhB,KAAKo/C,KAAKw8C,KAAK52F,MAAQhF,KAAKo/C,KAAKw8C,KAAKjzD,YAAY1nB,KAU/DtX,IAAK,cACL5E,MAAO,SAAqBwxB,GAC1B,OAASqH,EAAG59B,KAAK6rH,qBAAqBt1F,EAAIqH,GAAI3c,EAAGjhB,KAAK8rH,qBAAqBv1F,EAAItV,OAUjFtX,IAAK,cACL5E,MAAO,SAAqBwxB,GAC1B,OAASqH,EAAG59B,KAAK+rH,qBAAqBx1F,EAAIqH,GAAI3c,EAAGjhB,KAAKgsH,qBAAqBz1F,EAAItV,QAI5EupG,IAGT5qH,GAAQ,WAAa4qH,EACrB3qH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCARhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hBitC,EAAejkH,EAAoB,IAEnCkkH,EAAgBvtC,EAAuBstC,GAEvCxjH,EAAOT,EAAoB,GAE3B+rH,EAAO,WACT,QAASA,GAAK7sE,EAAM3U,GAClB,GAAIyX,GAAQliD,IAEZg3E,GAAgBh3E,KAAMisH,GAEtBjsH,KAAKo/C,KAAOA,EACZp/C,KAAKyqC,OAASA,EAEdzqC,KAAKksH,eAAiB,EAAIlsH,KAAKmsH,kBAC/BnsH,KAAKosH,wBAA0B,iBAC/BpsH,KAAKqsH,WAAa,EAClBrsH,KAAKssH,YAAc,EACnBtsH,KAAKusH,YAAc,EACnBvsH,KAAKwsH,kBAAoB,EACzBxsH,KAAKysH,kBAAoB,EACzBzsH,KAAK0sH,eAAiBnmH,OACtBvG,KAAK2sH,mBAAqBpmH,OAC1BvG,KAAK4sH,UAAY,EAEjB5sH,KAAK89G,aAAev3G,OAEpBvG,KAAKo/C,KAAKE,QAAQlgB,GAAG,MAAOp/B,KAAK+gD,IAAIxB,KAAKv/C,OAC1CA,KAAKo/C,KAAKE,QAAQlgB,GAAG,oBAAqB,WACxC8iB,EAAM9C,KAAKE,QAAQzH,KAAK,oBAE1B73C,KAAKo/C,KAAKE,QAAQlgB,GAAG,aAAcp/B,KAAKwhG,YAAYjiD,KAAKv/C,OAmS3D,MAhSAo3E,GAAa60C,IACXtiH,IAAK,aACL5E,MAAO,WACL,GAAIlB,GAAUwC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,EAEnFrG,MAAK6D,QAAUA,KASjB8F,IAAK,MACL5E,MAAO,WACL,GAAIlB,GAAUwC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAqBs0F,UAAct0F,UAAU,GAC1FwmH,EAAcxmH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEtF85C,EAAQ55C,OACRumH,EAAYvmH,MAKhB,KAJsBA,SAAlB1C,EAAQ82F,OAAgD,IAAzB92F,EAAQ82F,MAAMr0F,UAC/CzC,EAAQ82F,MAAQ36F,KAAKo/C,KAAKw7C,aAGxBiyB,KAAgB,EAAM,CAExB,GAAIE,GAAkB,CACtB,KAAK,GAAIruB,KAAU1+F,MAAKo/C,KAAKu7C,MAC3B,GAAI36F,KAAKo/C,KAAKu7C,MAAM30F,eAAe04F,GAAS,CAC1C,GAAI9iE,GAAO57B,KAAKo/C,KAAKu7C,MAAM+D,EACvB9iE,GAAKorE,sBAAuB,IAC9B+lB,GAAmB,GAIzB,GAAIA,EAAkB,GAAM/sH,KAAKo/C,KAAKw7C,YAAYt0F,OAEhD,WADAtG,MAAK+gD,IAAIl9C,GAAS,EAIpBs8C,GAAQikE,EAAc,WAAWjqD,SAASn6D,KAAKo/C,KAAKu7C,MAAO92F,EAAQ82F,MAEnE,IAAIqyB,GAAgBhtH,KAAKo/C,KAAKw7C,YAAYt0F,MAC1CwmH,GAAY,QAAUE,EAAgB,QAAU,QAGhD,IAAI1qE,GAASr9C,KAAKL,IAAI5E,KAAKyqC,OAAOD,MAAMC,OAAOC,YAAc,IAAK1qC,KAAKyqC,OAAOD,MAAMC,OAAOiF,aAAe,IAC1Go9E,IAAaxqE,MACR,CACLtiD,KAAKo/C,KAAKE,QAAQzH,KAAK,gBACvBsI,EAAQikE,EAAc,WAAWjqD,SAASn6D,KAAKo/C,KAAKu7C,MAAO92F,EAAQ82F,MAEnE,IAAI5K,GAAgD,IAApC9qF,KAAK8R,IAAIopC,EAAMkhE,KAAOlhE,EAAMghE,MACxC8L,EAAgD,IAApChoH,KAAK8R,IAAIopC,EAAMmhE,KAAOnhE,EAAMihE,MAExC8L,EAAaltH,KAAKyqC,OAAOD,MAAMC,OAAOC,YAAcqlD,EACpDo9B,EAAantH,KAAKyqC,OAAOD,MAAMC,OAAOiF,aAAeu9E,CAEzDH,GAA0BK,GAAdD,EAA2BA,EAAaC,EAGlDL,EAAY,EACdA,EAAY,EACW,IAAdA,IACTA,EAAY,EAGd,IAAIz2E,GAAS+tE,EAAc,WAAWgJ,WAAWjtE,GAC7CktE,GAAqB3+E,SAAU2H,EAAQrxC,MAAO8nH,EAAWhsE,UAAWj9C,EAAQi9C,UAChF9gD,MAAKqyC,OAAOg7E,MAYd1jH,IAAK,QACL5E,MAAO,SAAe25F,GACpB,GAAI76F,GAAUwC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,EAEnF,IAAgCE,SAA5BvG,KAAKo/C,KAAKu7C,MAAM+D,GAAuB,CACzC,GAAI4uB,IAAiB1vF,EAAG59B,KAAKo/C,KAAKu7C,MAAM+D,GAAQ9gE,EAAG3c,EAAGjhB,KAAKo/C,KAAKu7C,MAAM+D,GAAQz9E,EAC9Epd,GAAQ6qC,SAAW4+E,EACnBzpH,EAAQ0pH,aAAe7uB,EAEvB1+F,KAAKqyC,OAAOxuC,OAEZ8b,SAAQw+B,IAAI,SAAWugD,EAAS,wBAYpC/0F,IAAK,SACL5E,MAAO,SAAgBlB,GACrB,MAAgB0C,UAAZ1C,OACFA,OAGqB0C,SAAnB1C,EAAQ2jB,SACV3jB,EAAQ2jB,QAAWoW,EAAG,EAAG3c,EAAG,IAEL1a,SAArB1C,EAAQ2jB,OAAOoW,IACjB/5B,EAAQ2jB,OAAOoW,EAAI,GAEIr3B,SAArB1C,EAAQ2jB,OAAOvG,IACjBpd,EAAQ2jB,OAAOvG,EAAI,GAEC1a,SAAlB1C,EAAQmB,QACVnB,EAAQmB,MAAQhF,KAAKo/C,KAAKw8C,KAAK52F,OAERuB,SAArB1C,EAAQ6qC,WACV7qC,EAAQ6qC,SAAW1uC,KAAKuhG,mBAEAh7F,SAAtB1C,EAAQi9C,YACVj9C,EAAQi9C,WAAcr6B,SAAU,IAE9B5iB,EAAQi9C,aAAc,IACxBj9C,EAAQi9C,WAAcr6B,SAAU,IAE9B5iB,EAAQi9C,aAAc,IACxBj9C,EAAQi9C,cAEyBv6C,SAA/B1C,EAAQi9C,UAAUr6B,WACpB5iB,EAAQi9C,UAAUr6B,SAAW,KAEUlgB,SAArC1C,EAAQi9C,UAAU2Y,iBACpB51D,EAAQi9C,UAAU2Y,eAAiB,qBAGrCz5D,MAAKwtH,YAAY3pH,OAenB8F,IAAK,cACL5E,MAAO,SAAqBlB,GAC1B,GAAgB0C,SAAZ1C,EAAJ,CAGA7D,KAAKosH,wBAA0BvoH,EAAQi9C,UAAU2Y,eAEjDz5D,KAAKwhG,cACD39F,EAAQ4pH,UAAW,IACrBztH,KAAK0sH,eAAiB7oH,EAAQ0pH,aAC9BvtH,KAAK2sH,mBAAqB9oH,EAAQ2jB,QAIb,GAAnBxnB,KAAKqsH,YACPrsH,KAAK0tH,mBAAkB,GAGzB1tH,KAAKssH,YAActsH,KAAKo/C,KAAKw8C,KAAK52F,MAClChF,KAAKwsH,kBAAoBxsH,KAAKo/C,KAAKw8C,KAAKjzD,YACxC3oC,KAAKusH,YAAc1oH,EAAQmB,MAI3BhF,KAAKo/C,KAAKw8C,KAAK52F,MAAQhF,KAAKusH,WAC5B,IAAIoB,GAAa3tH,KAAKyqC,OAAO20D,aAAcxhE,EAAG,GAAM59B,KAAKyqC,OAAOD,MAAMC,OAAOC,YAAazpB,EAAG,GAAMjhB,KAAKyqC,OAAOD,MAAMC,OAAOiF,eAExH07E,GACFxtF,EAAG+vF,EAAW/vF,EAAI/5B,EAAQ6qC,SAAS9Q,EACnC3c,EAAG0sG,EAAW1sG,EAAIpd,EAAQ6qC,SAASztB,EAErCjhB,MAAKysH,mBACH7uF,EAAG59B,KAAKwsH,kBAAkB5uF,EAAIwtF,EAAmBxtF,EAAI59B,KAAKusH,YAAc1oH,EAAQ2jB,OAAOoW,EACvF3c,EAAGjhB,KAAKwsH,kBAAkBvrG,EAAImqG,EAAmBnqG,EAAIjhB,KAAKusH,YAAc1oH,EAAQ2jB,OAAOvG,GAItD,IAA/Bpd,EAAQi9C,UAAUr6B,SACOlgB,QAAvBvG,KAAK0sH,gBACP1sH,KAAK89G,aAAe99G,KAAK4tH,cAAcruE,KAAKv/C,MAC5CA,KAAKo/C,KAAKE,QAAQlgB,GAAG,aAAcp/B,KAAK89G,gBAExC99G,KAAKo/C,KAAKw8C,KAAK52F,MAAQhF,KAAKusH,YAC5BvsH,KAAKo/C,KAAKw8C,KAAKjzD,YAAc3oC,KAAKysH,kBAClCzsH,KAAKo/C,KAAKE,QAAQzH,KAAK,oBAGzB73C,KAAKksH,eAAiB,GAAK,GAAKroH,EAAQi9C,UAAUr6B,SAAW,OAAU,EAAI,GAC3EzmB,KAAKosH,wBAA0BvoH,EAAQi9C,UAAU2Y,eAEjDz5D,KAAK89G,aAAe99G,KAAK0tH,kBAAkBnuE,KAAKv/C,MAChDA,KAAKo/C,KAAKE,QAAQlgB,GAAG,aAAcp/B,KAAK89G,cACxC99G,KAAKo/C,KAAKE,QAAQzH,KAAK,wBAS3BluC,IAAK,gBACL5E,MAAO,WACL,GAAIuoH,IAAiB1vF,EAAG59B,KAAKo/C,KAAKu7C,MAAM36F,KAAK0sH,gBAAgB9uF,EAAG3c,EAAGjhB,KAAKo/C,KAAKu7C,MAAM36F,KAAK0sH,gBAAgBzrG,GACpG0sG,EAAa3tH,KAAKyqC,OAAO20D,aAAcxhE,EAAG,GAAM59B,KAAKyqC,OAAOD,MAAMC,OAAOC,YAAazpB,EAAG,GAAMjhB,KAAKyqC,OAAOD,MAAMC,OAAOiF,eACxH07E,GACFxtF,EAAG+vF,EAAW/vF,EAAI0vF,EAAa1vF,EAC/B3c,EAAG0sG,EAAW1sG,EAAIqsG,EAAarsG,GAE7BurG,EAAoBxsH,KAAKo/C,KAAKw8C,KAAKjzD,YACnC8jF,GACF7uF,EAAG4uF,EAAkB5uF,EAAIwtF,EAAmBxtF,EAAI59B,KAAKo/C,KAAKw8C,KAAK52F,MAAQhF,KAAK2sH,mBAAmB/uF,EAC/F3c,EAAGurG,EAAkBvrG,EAAImqG,EAAmBnqG,EAAIjhB,KAAKo/C,KAAKw8C,KAAK52F,MAAQhF,KAAK2sH,mBAAmB1rG,EAGjGjhB,MAAKo/C,KAAKw8C,KAAKjzD,YAAc8jF,KAG/B9iH,IAAK,cACL5E,MAAO,WACuBwB,SAAxBvG,KAAK0sH,gBAAsDnmH,SAAtBvG,KAAK89G,eAC5C99G,KAAKo/C,KAAKE,QAAQ/f,IAAI,aAAcv/B,KAAK89G,cACzC99G,KAAK0sH,eAAiBnmH,OACtBvG,KAAK2sH,mBAAqBpmH,WAU9BoD,IAAK,oBACL5E,MAAO,WACL,GAAI8oH,GAAWxnH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAEvFrG,MAAKqsH,YAAcrsH,KAAKksH,eACxBlsH,KAAKqsH,WAAawB,KAAa,EAAO,EAAM7tH,KAAKqsH,UAEjD,IAAIlwE,GAAWx7C,EAAKmR,gBAAgB9R,KAAKosH,yBAAyBpsH,KAAKqsH,WAEvErsH,MAAKo/C,KAAKw8C,KAAK52F,MAAQhF,KAAKssH,aAAetsH,KAAKusH,YAAcvsH,KAAKssH,aAAenwE,EAClFn8C,KAAKo/C,KAAKw8C,KAAKjzD,aACb/K,EAAG59B,KAAKwsH,kBAAkB5uF,GAAK59B,KAAKysH,kBAAkB7uF,EAAI59B,KAAKwsH,kBAAkB5uF,GAAKue,EACtFl7B,EAAGjhB,KAAKwsH,kBAAkBvrG,GAAKjhB,KAAKysH,kBAAkBxrG,EAAIjhB,KAAKwsH,kBAAkBvrG,GAAKk7B,GAIpFn8C,KAAKqsH,YAAc,IACrBrsH,KAAKo/C,KAAKE,QAAQ/f,IAAI,aAAcv/B,KAAK89G,cACzC99G,KAAKqsH,WAAa,EACS9lH,QAAvBvG,KAAK0sH,iBACP1sH,KAAK89G,aAAe99G,KAAK4tH,cAAcruE,KAAKv/C,MAC5CA,KAAKo/C,KAAKE,QAAQlgB,GAAG,aAAcp/B,KAAK89G,eAE1C99G,KAAKo/C,KAAKE,QAAQzH,KAAK,yBAI3BluC,IAAK,WACL5E,MAAO,WACL,MAAO/E,MAAKo/C,KAAKw8C,KAAK52F,SAGxB2E,IAAK,kBACL5E,MAAO,WACL,MAAO/E,MAAKyqC,OAAO20D,aAAcxhE,EAAG,GAAM59B,KAAKyqC,OAAOD,MAAMC,OAAOC,YAAazpB,EAAG,GAAMjhB,KAAKyqC,OAAOD,MAAMC,OAAOiF,mBAI/Gu8E,IAGTrsH,GAAQ,WAAaqsH,EACrBpsH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCARhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe;AAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hB42C,EAA+B5tH,EAAoB,KAEnD6tH,EAAgCl3C,EAAuBi3C,GAEvDE,EAAmB9tH,EAAoB,KAEvC+tH,EAAoBp3C,EAAuBm3C,GAE3CrtH,EAAOT,EAAoB,GAE3BguH,EAAqB,WACvB,QAASA,GAAmB9uE,EAAM3U,EAAQwxD,GACxCjlB,EAAgBh3E,KAAMkuH,GAEtBluH,KAAKo/C,KAAOA,EACZp/C,KAAKyqC,OAASA,EACdzqC,KAAKi8F,iBAAmBA,EACxBj8F,KAAKmuH,kBAAoB,GAAIJ,GAA8B,WAAW3uE,EAAM3U,GAG5EzqC,KAAKo/C,KAAK27C,eAAeC,MAAQh7F,KAAKg7F,MAAMz7C,KAAKv/C,MACjDA,KAAKo/C,KAAK27C,eAAep/B,QAAU37D,KAAK27D,QAAQpc,KAAKv/C,MACrDA,KAAKo/C,KAAK27C,eAAeE,YAAcj7F,KAAKi7F,YAAY17C,KAAKv/C,MAC7DA,KAAKo/C,KAAK27C,eAAeG,OAASl7F,KAAKk7F,OAAO37C,KAAKv/C,MACnDA,KAAKo/C,KAAK27C,eAAeI,YAAcn7F,KAAKm7F,YAAY57C,KAAKv/C,MAC7DA,KAAKo/C,KAAK27C,eAAeK,OAASp7F,KAAKo7F,OAAO77C,KAAKv/C,MACnDA,KAAKo/C,KAAK27C,eAAeM,UAAYr7F,KAAKq7F,UAAU97C,KAAKv/C,MACzDA,KAAKo/C,KAAK27C,eAAev8B,aAAex+D,KAAKw+D,aAAajf,KAAKv/C,MAC/DA,KAAKo/C,KAAK27C,eAAeO,QAAUt7F,KAAKs7F,QAAQ/7C,KAAKv/C,MACrDA,KAAKo/C,KAAK27C,eAAeQ,YAAcv7F,KAAKu7F,YAAYh8C,KAAKv/C,MAC7DA,KAAKo/C,KAAK27C,eAAen/B,UAAY57D,KAAK47D,UAAUrc,KAAKv/C,MACzDA,KAAKo/C,KAAK27C,eAAeS,UAAYx7F,KAAKw7F,UAAUj8C,KAAKv/C,MAEzDA,KAAK4sH,UAAY,EACjB5sH,KAAKw2E,QACLx2E,KAAK8oF,SACL9oF,KAAKouH,MAAQ7nH,OACbvG,KAAKquH,SAAW9nH,OAChBvG,KAAKsuH,WAAa/nH,OAElBvG,KAAKo/C,KAAKq8C,UAAUxiC,WAAaj5D,KAAKi5D,WAAW1Z,KAAKv/C,MAEtDA,KAAK6D,WACL7D,KAAK4+C,gBACH2vE,WAAW,EACXC,UAAU,EACVpgH,OAAO,EACPqgH,UACE59G,SAAS,EACT69G,OAAS9wF,EAAG,GAAI3c,EAAG,GAAIm6C,KAAM,KAC7BuzD,cAAc,GAEhBC,mBAAmB,EACnBC,aAAc,IACdC,UAAU,GAEZnuH,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK4+C,gBAE/B5+C,KAAK67F,qBAorBP,MAjrBAzkB,GAAa82C,IACXvkH,IAAK,qBACL5E,MAAO,WACL,GAAIm9C,GAAQliD,IAEZA,MAAKo/C,KAAKE,QAAQlgB,GAAG,UAAW,WAC9BkE,aAAa4e,EAAMosE,kBACZpsE,GAAM9C,KAAKq8C,UAAUxiC,gBAIhCtvD,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAgB0C,SAAZ1C,EAAuB,CAEzB,GAAIoM,IAAU,kBAAmB,kBAAmB,WAAY,cAAe,aAAc,uBAC7FtP,GAAK2G,uBAAuB2I,EAAQjQ,KAAK6D,QAASA,GAGlDlD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,YAErCA,EAAQ+sC,UACVjwC,EAAKgG,OAAO3G,KAAK6D,QAAQ+sC,QAAS/sC,EAAQ+sC,SACtC/sC,EAAQ+sC,QAAQnkC,QAClBzM,KAAK6D,QAAQ+sC,QAAQnkC,MAAQ9L,EAAKwM,WAAWtJ,EAAQ+sC,QAAQnkC,SAKnEzM,KAAKmuH,kBAAkBnvF,WAAWh/B,KAAK6D,YAUzC8F,IAAK,aACL5E,MAAO,SAAoBspD,GACzB,OACEzwB,EAAGywB,EAAMzwB,EAAIj9B,EAAK6H,gBAAgBxI,KAAKyqC,OAAOD,MAAMC,QACpDxpB,EAAGotC,EAAMptC,EAAItgB,EAAKiI,eAAe5I,KAAKyqC,OAAOD,MAAMC,YAUvD9gC,IAAK,UACL5E,MAAO,SAAiB+F,IAClB,GAAIzF,OAAOyC,UAAY9H,KAAK4sH,UAAY,KAC1C5sH,KAAKw2E,KAAKvb,QAAUj7D,KAAKi5D,WAAWnuD,EAAMurC,QAC1Cr2C,KAAKw2E,KAAKu4C,SAAU,EACpB/uH,KAAK8oF,MAAM9jF,MAAQhF,KAAKo/C,KAAKw8C,KAAK52F,MAElChF,KAAK4sH,WAAY,GAAIvnH,OAAOyC,cAShC6B,IAAK,QACL5E,MAAO,SAAe+F,GACpB,GAAImwD,GAAUj7D,KAAKi5D,WAAWnuD,EAAMurC,QAChC4sB,EAAcjjE,KAAKi8F,iBAAiBp4F,QAAQo/D,cAAgBn4D,EAAM2+C,gBAAgB,GAAGqf,SAAWh+D,EAAM2+C,gBAAgB,GAAGsf,QAE7H/oE,MAAKgvH,sBAAsB/zD,EAASnwD,EAAOm4D,GAC3CjjE,KAAKi8F,iBAAiBgzB,oBAAoB,QAASnkH,EAAOmwD,MAQ5DtxD,IAAK,cACL5E,MAAO,SAAqB+F,GAC1B,GAAImwD,GAAUj7D,KAAKi5D,WAAWnuD,EAAMurC,OACpCr2C,MAAKi8F,iBAAiBgzB,oBAAoB,cAAenkH,EAAOmwD,MAQlEtxD,IAAK,SACL5E,MAAO,SAAgB+F,GACrB,GAAImwD,GAAUj7D,KAAKi5D,WAAWnuD,EAAMurC,QAChC4sB,EAAcjjE,KAAKi8F,iBAAiBp4F,QAAQo/D,WAEhDjjE,MAAKgvH,sBAAsB/zD,EAASnwD,EAAOm4D,GAE3CjjE,KAAKi8F,iBAAiBgzB,oBAAoB,QAASnkH,EAAOmwD,GAC1Dj7D,KAAKi8F,iBAAiBgzB,oBAAoB,OAAQnkH,EAAOmwD,MAS3DtxD,IAAK,YACL5E,MAAO,SAAmB+F,GACxB,IAAI,GAAIzF,OAAOyC,UAAY9H,KAAK4sH,UAAY,GAAI,CAC9C,GAAI3xD,GAAUj7D,KAAKi5D,WAAWnuD,EAAMurC,OACpCr2C,MAAKi8F,iBAAiBgzB,oBAAoB,UAAWnkH,EAAOmwD,GAE5Dj7D,KAAK4sH,WAAY,GAAIvnH,OAAOyC,cAIhC6B,IAAK,YACL5E,MAAO,SAAmB+F,GACxB,GAAImwD,GAAUj7D,KAAKi5D,YAAar7B,EAAG9yB,EAAMg9B,QAAS7mB,EAAGnW,EAAMm9B,SAC3DjoC,MAAKi8F,iBAAiBgzB,oBAAoB,YAAankH,EAAOmwD,MAShEtxD,IAAK,wBACL5E,MAAO,SAA+Bk2D,EAASnwD,GAC7C,GAAImb,GAAM5f,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAE9E6oH,EAA8BlvH,KAAKi8F,iBAAiBkzB,wBACpDC,EAA8BpvH,KAAKi8F,iBAAiBozB,wBACpDC,EAAoBtvH,KAAKi8F,iBAAiBp6C,eAC1C0lB,EAAWhhE,MAEbghE,GADEthD,KAAQ,EACCjmB,KAAKi8F,iBAAiBszB,wBAAwBt0D,GAE9Cj7D,KAAKi8F,iBAAiBuzB,cAAcv0D,EAEjD,IAAIw0D,GAAqBzvH,KAAKi8F,iBAAiBkzB,wBAC3CO,EAAqB1vH,KAAKi8F,iBAAiBozB,wBAC3CM,EAAmB3vH,KAAKi8F,iBAAiBp6C,eAEzC+tE,EAAyB5vH,KAAK6vH,sBAAsBP,EAAmBK,GAEvEG,EAAeF,EAAuBE,aACtCC,EAAeH,EAAuBG,aAEtCC,GAAe,CAEfN,GAAqBN,EAA8B,GAErDpvH,KAAKi8F,iBAAiBgzB,oBAAoB,aAAcnkH,EAAOmwD,GAC/DsM,GAAW,EACXyoD,GAAe,GAC6C,EAAnDN,EAAqBN,GAE9BpvH,KAAKi8F,iBAAiBgzB,oBAAoB,eAAgBnkH,EAAOmwD,EAASq0D,GAC1E/nD,GAAW,GACFmoD,IAAuBN,GAA+BU,KAAiB,IAChF9vH,KAAKi8F,iBAAiBgzB,oBAAoB,eAAgBnkH,EAAOmwD,EAASq0D,GAC1EtvH,KAAKi8F,iBAAiBgzB,oBAAoB,aAAcnkH,EAAOmwD,GAC/D+0D,GAAe,EACfzoD,GAAW,GAITkoD,EAAqBP,EAA8B,GAAKc,KAAiB,GAE3EhwH,KAAKi8F,iBAAiBgzB,oBAAoB,aAAcnkH,EAAOmwD,GAC/DsM,GAAW,GACiD,EAAnDkoD,EAAqBP,GAE9BlvH,KAAKi8F,iBAAiBgzB,oBAAoB,eAAgBnkH,EAAOmwD,EAASq0D,GAC1E/nD,GAAW,GACFkoD,IAAuBP,GAA+Ba,KAAiB,IAChF/vH,KAAKi8F,iBAAiBgzB,oBAAoB,eAAgBnkH,EAAOmwD,EAASq0D,GAC1EtvH,KAAKi8F,iBAAiBgzB,oBAAoB,aAAcnkH,EAAOmwD,GAC/DsM,GAAW,GAITA,KAAa,GAEfvnE,KAAKi8F,iBAAiBgzB,oBAAoB,SAAUnkH,EAAOmwD,MAY/DtxD,IAAK,wBACL5E,MAAO,SAA+BuqH,EAAmBK,GAIvD,IAAK,GAHDG,IAAe,EACfC,GAAe,EAEVtpH,EAAI,EAAGA,EAAI6oH,EAAkB30B,MAAMr0F,OAAQG,IACiB,KAA/DkpH,EAAiBh1B,MAAMpzF,QAAQ+nH,EAAkB30B,MAAMl0F,MACzDqpH,GAAe,EAGnB,KAAK,GAAIrpH,GAAI,EAAGA,EAAIkpH,EAAiBh1B,MAAMr0F,OAAQG,IACmB,KAAhE6oH,EAAkB30B,MAAMpzF,QAAQ+nH,EAAkB30B,MAAMl0F,MAC1DqpH,GAAe,EAGnB,KAAK,GAAIrpH,GAAI,EAAGA,EAAI6oH,EAAkBz0B,MAAMv0F,OAAQG,IACiB,KAA/DkpH,EAAiB90B,MAAMtzF,QAAQ+nH,EAAkBz0B,MAAMp0F,MACzDspH,GAAe,EAGnB,KAAK,GAAItpH,GAAI,EAAGA,EAAIkpH,EAAiB90B,MAAMv0F,OAAQG,IACmB,KAAhE6oH,EAAkBz0B,MAAMtzF,QAAQ+nH,EAAkBz0B,MAAMp0F,MAC1DspH,GAAe,EAInB,QAASD,aAAcA,EAAcC,aAAcA,MAUrDpmH,IAAK,cACL5E,MAAO,SAAqB+F,GAEAvE,SAAtBvG,KAAKw2E,KAAKvb,SACZj7D,KAAK27D,QAAQ7wD,EAIf,IAAI8wB,GAAO57B,KAAKi8F,iBAAiBiF,UAAUlhG,KAAKw2E,KAAKvb,QAOrD,IALAj7D,KAAKw2E,KAAK5c,UAAW,EACrB55D,KAAKw2E,KAAK50B,aACV5hD,KAAKw2E,KAAK7tC,YAAchoC,EAAKgG,UAAW3G,KAAKo/C,KAAKw8C,KAAKjzD,aACvD3oC,KAAKw2E,KAAKkoB,OAASn4F,OAENA,SAATq1B,GAAsB57B,KAAK6D,QAAQ0qH,aAAc,EAAM,CACzDvuH,KAAKw2E,KAAKkoB,OAAS9iE,EAAKv7B,GAEpBu7B,EAAKyuF,gBAAiB,IACxBrqH,KAAKi8F,iBAAiB4C,cACtB7+F,KAAKi8F,iBAAiBg0B,aAAar0F,IAIrC57B,KAAKi8F,iBAAiBgzB,oBAAoB,YAAankH,EAAO9K,KAAKw2E,KAAKvb,QAExE,IAAIrZ,GAAY5hD,KAAKi8F,iBAAiBi0B,aAAav1B,KAEnD,KAAK,GAAI+D,KAAU98C,GACjB,GAAIA,EAAU57C,eAAe04F,GAAS,CACpC,GAAIt6F,GAASw9C,EAAU88C,GACnB/wF,GACFtN,GAAI+D,EAAO/D,GACXu7B,KAAMx3B,EAGNw5B,EAAGx5B,EAAOw5B,EACV3c,EAAG7c,EAAO6c,EACVkvG,OAAQ/rH,EAAOP,QAAQ6+F,MAAM9kE,EAC7BwyF,OAAQhsH,EAAOP,QAAQ6+F,MAAMzhF,EAG/B7c,GAAOP,QAAQ6+F,MAAM9kE,GAAI,EACzBx5B,EAAOP,QAAQ6+F,MAAMzhF,GAAI,EAEzBjhB,KAAKw2E,KAAK50B,UAAUp6C,KAAKmG,QAK7B3N,MAAKi8F,iBAAiBgzB,oBAAoB,YAAankH,EAAO9K,KAAKw2E,KAAKvb,QAAS10D,QAAW,MAShGoD,IAAK,SACL5E,MAAO,SAAgB+F,GACrB,GAAI4uE,GAAS15E,IAEb,IAAIA,KAAKw2E,KAAKu4C,WAAY,EAA1B,CAKA/uH,KAAKo/C,KAAKE,QAAQzH,KAAK,aAEvB,IAAIojB,GAAUj7D,KAAKi5D,WAAWnuD,EAAMurC,QAEhCuL,EAAY5hD,KAAKw2E,KAAK50B,SAC1B,IAAIA,GAAaA,EAAUt7C,QAAUtG,KAAK6D,QAAQ0qH,aAAc,GAC9D,WACE70C,EAAOuiB,iBAAiBgzB,oBAAoB,WAAYnkH,EAAOmwD,EAG/D,IAAIjQ,GAASiQ,EAAQr9B,EAAI87C,EAAOlD,KAAKvb,QAAQr9B,EACzCqtB,EAASgQ,EAAQh6C,EAAIy4D,EAAOlD,KAAKvb,QAAQh6C,CAG7C2gC,GAAUt4C,QAAQ,SAAUs4C,GAC1B,GAAIhmB,GAAOgmB,EAAUhmB,IAEjBgmB,GAAUuuE,UAAW,IACvBv0F,EAAKgC,EAAI87C,EAAOjvC,OAAOshF,qBAAqBryC,EAAOjvC,OAAOohF,qBAAqBjqE,EAAUhkB,GAAKotB,IAG5FpJ,EAAUwuE,UAAW,IACvBx0F,EAAK3a,EAAIy4D,EAAOjvC,OAAOuhF,qBAAqBtyC,EAAOjvC,OAAOqhF,qBAAqBlqE,EAAU3gC,GAAKgqC,MAKlGyuB,EAAOt6B,KAAKE,QAAQzH,KAAK,0BAI3B,IAAI73C,KAAK6D,QAAQ2qH,YAAa,EAAM,CAIlC,GAHAxuH,KAAKi8F,iBAAiBgzB,oBAAoB,WAAYnkH,EAAOmwD,EAAS10D,QAAW,GAGvDA,SAAtBvG,KAAKw2E,KAAKvb,QAEZ,WADAj7D,MAAKm7F,YAAYrwF,EAGnB,IAAIwsC,GAAQ2jB,EAAQr9B,EAAI59B,KAAKw2E,KAAKvb,QAAQr9B,EACtC2Z,EAAQ0jB,EAAQh6C,EAAIjhB,KAAKw2E,KAAKvb,QAAQh6C,CAE1CjhB,MAAKo/C,KAAKw8C,KAAKjzD,aAAgB/K,EAAG59B,KAAKw2E,KAAK7tC,YAAY/K,EAAI0Z,EAAOr2B,EAAGjhB,KAAKw2E,KAAK7tC,YAAY1nB,EAAIs2B,GAChGv3C,KAAKo/C,KAAKE,QAAQzH,KAAK,gBAU7BluC,IAAK,YACL5E,MAAO,SAAmB+F,GACxB9K,KAAKw2E,KAAK5c,UAAW,CACrB,IAAIhY,GAAY5hD,KAAKw2E,KAAK50B,SACtBA,IAAaA,EAAUt7C,QACzBs7C,EAAUt4C,QAAQ,SAAUqE,GAE1BA,EAAEiuB,KAAK/3B,QAAQ6+F,MAAM9kE,EAAIjwB,EAAEwiH,OAC3BxiH,EAAEiuB,KAAK/3B,QAAQ6+F,MAAMzhF,EAAItT,EAAEyiH,SAE7BpwH,KAAKi8F,iBAAiBgzB,oBAAoB,UAAWnkH,EAAO9K,KAAKi5D,WAAWnuD,EAAMurC,SAClFr2C,KAAKo/C,KAAKE,QAAQzH,KAAK,qBAEvB73C,KAAKi8F,iBAAiBgzB,oBAAoB,UAAWnkH,EAAO9K,KAAKi5D,WAAWnuD,EAAMurC,QAAS9vC,QAAW,GACtGvG,KAAKo/C,KAAKE,QAAQzH,KAAK,sBAU3BluC,IAAK,UACL5E,MAAO,SAAiB+F,GACtB,GAAImwD,GAAUj7D,KAAKi5D,WAAWnuD,EAAMurC,OAEpCr2C,MAAKw2E,KAAKu4C,SAAU,EACQxoH,SAAxBvG,KAAK8oF,MAAa,QACpB9oF,KAAK8oF,MAAM9jF,MAAQ,EAIrB,IAAIA,GAAQhF,KAAK8oF,MAAM9jF,MAAQ8F,EAAM9F,KACrChF,MAAKo7D,KAAKp2D,EAAOi2D,MAWnBtxD,IAAK,OACL5E,MAAO,SAAcC,EAAOi2D,GAC1B,GAAIj7D,KAAK6D,QAAQirH,YAAa,EAAM,CAClC,GAAIuB,GAAWrwH,KAAKo/C,KAAKw8C,KAAK52F,KAClB,MAARA,IACFA,EAAQ,MAENA,EAAQ,KACVA,EAAQ,GAGV,IAAIsrH,GAAsB/pH,MACRA,UAAdvG,KAAKw2E,MACHx2E,KAAKw2E,KAAK5c,YAAa,IACzB02D,EAAsBtwH,KAAKyqC,OAAO20D,YAAYp/F,KAAKw2E,KAAKvb,SAI5D,IAAItyB,GAAc3oC,KAAKo/C,KAAKw8C,KAAKjzD,YAE7B4nF,EAAYvrH,EAAQqrH,EACpBG,GAAM,EAAID,GAAat1D,EAAQr9B,EAAI+K,EAAY/K,EAAI2yF,EACnDE,GAAM,EAAIF,GAAat1D,EAAQh6C,EAAI0nB,EAAY1nB,EAAIsvG,CAKvD,IAHAvwH,KAAKo/C,KAAKw8C,KAAK52F,MAAQA,EACvBhF,KAAKo/C,KAAKw8C,KAAKjzD,aAAgB/K,EAAG4yF,EAAIvvG,EAAGwvG,GAEdlqH,QAAvB+pH,EAAkC,CACpC,GAAII,GAAuB1wH,KAAKyqC,OAAO00D,YAAYmxB,EACnDtwH,MAAKw2E,KAAKvb,QAAQr9B,EAAI8yF,EAAqB9yF,EAC3C59B,KAAKw2E,KAAKvb,QAAQh6C,EAAIyvG,EAAqBzvG,EAG7CjhB,KAAKo/C,KAAKE,QAAQzH,KAAK,kBAER7yC,EAAXqrH,EACFrwH,KAAKo/C,KAAKE,QAAQzH,KAAK,QAAUntB,UAAW,IAAK1lB,MAAOhF,KAAKo/C,KAAKw8C,KAAK52F,QAEvEhF,KAAKo/C,KAAKE,QAAQzH,KAAK,QAAUntB,UAAW,IAAK1lB,MAAOhF,KAAKo/C,KAAKw8C,KAAK52F,YAa7E2E,IAAK,eACL5E,MAAO,SAAsB+F,GAC3B,GAAI9K,KAAK6D,QAAQirH,YAAa,EAAM,CAElC,GAAI/iG,GAAQ,CAcZ,IAbIjhB,EAAM4tC,WAER3sB,EAAQjhB,EAAM4tC,WAAa,IAClB5tC,EAAM6tC,SAIf5sB,GAASjhB,EAAM6tC,OAAS,GAMZ,IAAV5sB,EAAa,CAGf,GAAI/mB,GAAQhF,KAAKo/C,KAAKw8C,KAAK52F,MACvBo2D,EAAOrvC,EAAQ,EACP,GAARA,IACFqvC,GAAe,EAAIA,GAErBp2D,GAAS,EAAIo2D,CAGb,IAAIH,GAAUj7D,KAAKi5D,YAAar7B,EAAG9yB,EAAMg9B,QAAS7mB,EAAGnW,EAAMm9B,SAG3DjoC,MAAKo7D,KAAKp2D,EAAOi2D,GAInBnwD,EAAMD,qBAUVlB,IAAK,cACL5E,MAAO,SAAqB+F,GAC1B,GAAI0vE,GAASx6E,KAETi7D,EAAUj7D,KAAKi5D,YAAar7B,EAAG9yB,EAAMg9B,QAAS7mB,EAAGnW,EAAMm9B,UACvD0oF,GAAe,CAqCnB,IAlCmBpqH,SAAfvG,KAAKouH,QACHpuH,KAAKouH,MAAMpxD,UAAW,GACxBh9D,KAAK4wH,gBAAgB31D,GAInBj7D,KAAKouH,MAAMpxD,UAAW,IACxB2zD,GAAe,EACf3wH,KAAKouH,MAAMyC,YAAY51D,EAAQr9B,EAAI,EAAGq9B,EAAQh6C,EAAI,GAClDjhB,KAAKouH,MAAMzrE,SAKX3iD,KAAK6D,QAAQ4qH,SAASE,gBAAiB,GAAS3uH,KAAK6D,QAAQ4qH,SAAS59G,WAAY,GACpF7Q,KAAKyqC,OAAOD,MAAMwX,QAIhB2uE,KAAiB,IACKpqH,SAApBvG,KAAKsuH,aACPrxE,cAAcj9C,KAAKsuH,YACnBtuH,KAAKsuH,WAAa/nH,QAEfvG,KAAKw2E,KAAK5c,WACb55D,KAAKsuH,WAAapkH,WAAW,WAC3B,MAAOswE,GAAOs2C,gBAAgB71D,IAC7Bj7D,KAAK6D,QAAQgrH,gBAOhB7uH,KAAK6D,QAAQuK,SAAU,EAAM,CAE/B,GAAItI,GAAM9F,KAAKi8F,iBAAiBiF,UAAUjmC,EAC9B10D,UAART,IACFA,EAAM9F,KAAKi8F,iBAAiBkF,UAAUlmC,IAExCj7D,KAAKi8F,iBAAiB80B,YAAYjrH,OAatC6D,IAAK,kBACL5E,MAAO,SAAyBk2D,GAC9B,GAAIr9B,GAAI59B,KAAKyqC,OAAOshF,qBAAqB9wD,EAAQr9B,GAC7C3c,EAAIjhB,KAAKyqC,OAAOuhF,qBAAqB/wD,EAAQh6C,GAC7C+vG,GACFroH,KAAMi1B,EACN/0B,IAAKoY,EACL4wB,MAAOjU,EACP0Q,OAAQrtB,GAGNgwG,EAAuC1qH,SAAlBvG,KAAKquH,SAAyB9nH,OAAYvG,KAAKquH,SAAShuH,GAC7E6wH,GAAkB,EAClBC,EAAY,MAGhB,IAAsB5qH,SAAlBvG,KAAKquH,SAAwB,CAM/B,IAAK,GAJDzzB,GAAc56F,KAAKo/C,KAAKw7C,YACxBD,EAAQ36F,KAAKo/C,KAAKu7C,MAClB/+D,EAAOr1B,OACP6qH,KACK3qH,EAAI,EAAGA,EAAIm0F,EAAYt0F,OAAQG,IACtCm1B,EAAO++D,EAAMC,EAAYn0F,IACrBm1B,EAAKy1F,kBAAkBL,MAAgB,GACjBzqH,SAApBq1B,EAAK01F,YACPF,EAAiB5pH,KAAKozF,EAAYn0F,GAKpC2qH,GAAiB9qH,OAAS,IAE5BtG,KAAKquH,SAAW1zB,EAAMy2B,EAAiBA,EAAiB9qH,OAAS,IAEjE4qH,GAAkB,GAItB,GAAsB3qH,SAAlBvG,KAAKquH,UAA0B6C,KAAoB,EAAO,CAM5D,IAAK,GAJDp2B,GAAc96F,KAAKo/C,KAAK07C,YACxBD,EAAQ76F,KAAKo/C,KAAKy7C,MAClBuG,EAAO76F,OACPgrH,KACK9qH,EAAI,EAAGA,EAAIq0F,EAAYx0F,OAAQG,IACtC26F,EAAOvG,EAAMC,EAAYr0F,IACrB26F,EAAKiwB,kBAAkBL,MAAgB,GACrC5vB,EAAK8P,aAAc,GAA4B3qG,SAApB66F,EAAKkwB,YAClCC,EAAiB/pH,KAAKszF,EAAYr0F,GAKpC8qH,GAAiBjrH,OAAS,IAC5BtG,KAAKquH,SAAWxzB,EAAM02B,EAAiBA,EAAiBjrH,OAAS,IACjE6qH,EAAY,QAIM5qH,SAAlBvG,KAAKquH,SAEHruH,KAAKquH,SAAShuH,KAAO4wH,IACJ1qH,SAAfvG,KAAKouH,QACPpuH,KAAKouH,MAAQ,GAAIH,GAAkB,WAAWjuH,KAAKyqC,OAAOD,QAG5DxqC,KAAKouH,MAAMoD,gBAAkBL,EAC7BnxH,KAAKouH,MAAMqD,cAAgBzxH,KAAKquH,SAAShuH,GAKzCL,KAAKouH,MAAMyC,YAAY51D,EAAQr9B,EAAI,EAAGq9B,EAAQh6C,EAAI,GAClDjhB,KAAKouH,MAAMsD,QAAQ1xH,KAAKquH,SAASiD,YACjCtxH,KAAKouH,MAAMzrE,OACX3iD,KAAKo/C,KAAKE,QAAQzH,KAAK,YAAa73C,KAAKquH,SAAShuH,KAGjCkG,SAAfvG,KAAKouH,QACPpuH,KAAKouH,MAAMzoD,OACX3lE,KAAKo/C,KAAKE,QAAQzH,KAAK,iBAY7BluC,IAAK,kBACL5E,MAAO,SAAyBk2D,GAC9B,GAAI+1D,GAAahxH,KAAKi8F,iBAAiB01B,yBAAyB12D,GAE5D22D,GAAa,CACjB,IAAmC,SAA/B5xH,KAAKouH,MAAMoD,iBACb,GAAkDjrH,SAA9CvG,KAAKo/C,KAAKu7C,MAAM36F,KAAKouH,MAAMqD,iBAC7BG,EAAa5xH,KAAKo/C,KAAKu7C,MAAM36F,KAAKouH,MAAMqD,eAAeJ,kBAAkBL,GAIrEY,KAAe,GAAM,CACvB,GAAIC,GAAW7xH,KAAKi8F,iBAAiBiF,UAAUjmC,EAC/C22D,GAAaC,EAASxxH,KAAOL,KAAKouH,MAAMqD,mBAIKlrH,UAA7CvG,KAAKi8F,iBAAiBiF,UAAUjmC,IACgB10D,SAA9CvG,KAAKo/C,KAAKy7C,MAAM76F,KAAKouH,MAAMqD,iBAC7BG,EAAa5xH,KAAKo/C,KAAKy7C,MAAM76F,KAAKouH,MAAMqD,eAAeJ,kBAAkBL,GAK3EY,MAAe,IACjB5xH,KAAKquH,SAAW9nH,OAChBvG,KAAKouH,MAAMzoD,OACX3lE,KAAKo/C,KAAKE,QAAQzH,KAAK,kBAKtBq2E,IAGTtuH,GAAQ,WAAasuH,EACrBruH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS82E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAK7hBlzE,GADO9D,EAAoB,GAClBA,EAAoB,KAC7Bo+D,EAAap+D,EAAoB,IACjC+D,EAAW/D,EAAoB,IAE/B4xH,EAAoB,WACtB,QAASA,GAAkB1yE,EAAM3U,GAC/B,GAAIyX,GAAQliD,IAEZg3E,GAAgBh3E,KAAM8xH,GAEtB9xH,KAAKo/C,KAAOA,EACZp/C,KAAKyqC,OAASA,EAEdzqC,KAAK+xH,cAAe,EACpB/xH,KAAKgyH,qBACLhyH,KAAKiyH,kBACLjyH,KAAK4sH,UAAY,EACjB5sH,KAAKkyH,WAAY,EAEjBlyH,KAAKo/C,KAAKE,QAAQlgB,GAAG,WAAY,WAC/B8iB,EAAMgwE,WAAY,EAAKhwE,EAAMiwE,8BAE/BnyH,KAAKo/C,KAAKE,QAAQlgB,GAAG,aAAc,WACjC8iB,EAAMgwE,WAAY,EAAMhwE,EAAMiwE,8BAEhCnyH,KAAKo/C,KAAKE,QAAQlgB,GAAG,UAAW,WACP74B,SAAnB27C,EAAMj+C,UACRi+C,EAAMj+C,SAASk7B,YAInBn/B,KAAK6D,WAkRP,MA/QAuzE,GAAa06C,IACXnoH,IAAK,aACL5E,MAAO,SAAoBlB,GACT0C,SAAZ1C,IACF7D,KAAK6D,QAAUA,EACf7D,KAAKoQ,aAITzG,IAAK,SACL5E,MAAO,WACD/E,KAAK6D,QAAQ+qH,qBAAsB,EACjC5uH,KAAK+xH,gBAAiB,GACxB/xH,KAAKoyH,yBAEEpyH,KAAK+xH,gBAAiB,GAC/B/xH,KAAKqyH,kBAGPryH,KAAKmyH,+BAGPxoH,IAAK,kBACL5E,MAAO,WAEL,GAAqC,GAAjC/E,KAAKgyH,kBAAkB1rH,OAAa,CACtC,IAAK,GAAIG,GAAI,EAAGA,EAAIzG,KAAKgyH,kBAAkB1rH,OAAQG,IACjDzG,KAAKgyH,kBAAkBvrH,GAAG04B,SAE5Bn/B,MAAKgyH,qBAIHhyH,KAAKsyH,eAAiBtyH,KAAKsyH,cAAuB,SAAKtyH,KAAKsyH,cAAuB,QAAEjnH,YACvFrL,KAAKsyH,cAAuB,QAAEjnH,WAAW3G,YAAY1E,KAAKsyH,cAAuB,SAGnFtyH,KAAK+xH,cAAe,KAYtBpoH,IAAK,yBACL5E,MAAO,WACL,GAAI20E,GAAS15E,IAEbA,MAAKqyH,kBAELryH,KAAKsyH,gBACL,IAAIC,IAAkB,KAAM,OAAQ,OAAQ,QAAS,SAAU,UAAW,eACtEC,GAAwB,UAAW,YAAa,YAAa,aAAc,UAAW,WAAY,OAEtGxyH,MAAKsyH,cAAuB,QAAIl1F,SAASM,cAAc,OACvD19B,KAAKsyH,cAAuB,QAAEvpH,UAAY,iBAC1C/I,KAAKyqC,OAAOD,MAAMlN,YAAYt9B,KAAKsyH,cAAuB,QAE1D,KAAK,GAAI7rH,GAAI,EAAGA,EAAI8rH,EAAejsH,OAAQG,IAAK,CAC9CzG,KAAKsyH,cAAcC,EAAe9rH,IAAM22B,SAASM,cAAc,OAC/D19B,KAAKsyH,cAAcC,EAAe9rH,IAAIsC,UAAY,kBAAoBwpH,EAAe9rH,GACrFzG,KAAKsyH,cAAuB,QAAEh1F,YAAYt9B,KAAKsyH,cAAcC,EAAe9rH,IAE5E,IAAI29C,GAAS,GAAIpgD,GAAOhE,KAAKsyH,cAAcC,EAAe9rH,IAC1B,UAA5B+rH,EAAqB/rH,GACvB63D,EAAW3C,QAAQvX,EAAQpkD,KAAKyyH,KAAKlzE,KAAKv/C,OAE1Cs+D,EAAW3C,QAAQvX,EAAQpkD,KAAK0yH,aAAanzE,KAAKv/C,KAAMwyH,EAAqB/rH,KAG/EzG,KAAKgyH,kBAAkBxqH,KAAK48C,GAK9B,GAAIwmE,GAAc,GAAI5mH,GAAOhE,KAAKyqC,OAAOD,MACzC8zB,GAAW1C,UAAUgvD,EAAa,WAChClxC,EAAOi5C,kBAET3yH,KAAKgyH,kBAAkBxqH,KAAKojH,GAE5B5qH,KAAK+xH,cAAe,KAGtBpoH,IAAK,eACL5E,MAAO,SAAsBsF,GACS9D,SAAhCvG,KAAKiyH,eAAe5nH,KACtBrK,KAAKiyH,eAAe5nH,GAAUrK,KAAKqK,GAAQk1C,KAAKv/C,MAChDA,KAAKo/C,KAAKE,QAAQlgB,GAAG,aAAcp/B,KAAKiyH,eAAe5nH,IACvDrK,KAAKo/C,KAAKE,QAAQzH,KAAK,uBAI3BluC,IAAK,mBACL5E,MAAO,SAA0BsF,GACK9D,SAAhCvG,KAAKiyH,eAAe5nH,KACtBrK,KAAKo/C,KAAKE,QAAQ/f,IAAI,aAAcv/B,KAAKiyH,eAAe5nH,IACxDrK,KAAKo/C,KAAKE,QAAQzH,KAAK,wBAChB73C,MAAKiyH,eAAe5nH,OAU/BV,IAAK,OACL5E,MAAO,YACD,GAAIM,OAAOyC,UAAY9H,KAAK4sH,UAAY,MAE1C5sH,KAAKo/C,KAAKE,QAAQzH,KAAK,OAASpxB,SAAU,MAC1CzmB,KAAK4sH,WAAY,GAAIvnH,OAAOyC,cAUhC6B,IAAK,gBACL5E,MAAO,WACL,IAAK,GAAI6tH,KAAe5yH,MAAKiyH,eACvBjyH,KAAKiyH,eAAejsH,eAAe4sH,KACrC5yH,KAAKo/C,KAAKE,QAAQ/f,IAAI,aAAcv/B,KAAKiyH,eAAeW,IACxD5yH,KAAKo/C,KAAKE,QAAQzH,KAAK,kBAG3B73C,MAAKiyH,qBAGPtoH,IAAK,UACL5E,MAAO,WACL/E,KAAKo/C,KAAKw8C,KAAKjzD,YAAY1nB,GAAKjhB,KAAK6D,QAAQ4qH,SAASC,MAAMztG,KAG9DtX,IAAK,YACL5E,MAAO,WACL/E,KAAKo/C,KAAKw8C,KAAKjzD,YAAY1nB,GAAKjhB,KAAK6D,QAAQ4qH,SAASC,MAAMztG,KAG9DtX,IAAK,YACL5E,MAAO,WACL/E,KAAKo/C,KAAKw8C,KAAKjzD,YAAY/K,GAAK59B,KAAK6D,QAAQ4qH,SAASC,MAAM9wF,KAG9Dj0B,IAAK,aACL5E,MAAO,WACL/E,KAAKo/C,KAAKw8C,KAAKjzD,YAAY/K,GAAK59B,KAAK6D,QAAQ4qH,SAASC,MAAM9wF,KAG9Dj0B,IAAK,UACL5E,MAAO,WACL/E,KAAKo/C,KAAKw8C,KAAK52F,OAAS,EAAIhF,KAAK6D,QAAQ4qH,SAASC,MAAMtzD,KACxDp7D,KAAKo/C,KAAKE,QAAQzH,KAAK,QAAUntB,UAAW,IAAK1lB,MAAOhF,KAAKo/C,KAAKw8C,KAAK52F,WAGzE2E,IAAK,WACL5E,MAAO,WACL/E,KAAKo/C,KAAKw8C,KAAK52F,OAAS,EAAIhF,KAAK6D,QAAQ4qH,SAASC,MAAMtzD,KACxDp7D,KAAKo/C,KAAKE,QAAQzH,KAAK,QAAUntB,UAAW,IAAK1lB,MAAOhF,KAAKo/C,KAAKw8C,KAAK52F,WAOzE2E,IAAK,4BACL5E,MAAO,WACL,GAAIy1E,GAASx6E,IAESuG,UAAlBvG,KAAKiE,UACPjE,KAAKiE,SAASk7B,UAGZn/B,KAAK6D,QAAQ4qH,SAAS59G,WAAY,IAChC7Q,KAAK6D,QAAQ4qH,SAASE,gBAAiB,EACzC3uH,KAAKiE,SAAWA,GAAWmgC,UAAWr5B,OAAQF,gBAAgB,IAE9D7K,KAAKiE,SAAWA,GAAWmgC,UAAWpkC,KAAKyqC,OAAOD,MAAO3/B,gBAAgB,IAG3E7K,KAAKiE,SAAS2xD,QAEV51D,KAAKkyH,aAAc,IACrBlyH,KAAKiE,SAASs7C,KAAK,KAAM,WACvBi7B,EAAOk4C,aAAa,YACnB,WACH1yH,KAAKiE,SAASs7C,KAAK,OAAQ,WACzBi7B,EAAOk4C,aAAa,cACnB,WACH1yH,KAAKiE,SAASs7C,KAAK,OAAQ,WACzBi7B,EAAOk4C,aAAa,cACnB,WACH1yH,KAAKiE,SAASs7C,KAAK,QAAS,WAC1Bi7B,EAAOk4C,aAAa,eACnB,WACH1yH,KAAKiE,SAASs7C,KAAK,IAAK,WACtBi7B,EAAOk4C,aAAa,YACnB,WACH1yH,KAAKiE,SAASs7C,KAAK,OAAQ,WACzBi7B,EAAOk4C,aAAa,YACnB,WACH1yH,KAAKiE,SAASs7C,KAAK,OAAQ,WACzBi7B,EAAOk4C,aAAa,aACnB,WACH1yH,KAAKiE,SAASs7C,KAAK,IAAK,WACtBi7B,EAAOk4C,aAAa,aACnB,WACH1yH,KAAKiE,SAASs7C,KAAK,IAAK,WACtBi7B,EAAOk4C,aAAa,aACnB,WACH1yH,KAAKiE,SAASs7C,KAAK,IAAK,WACtBi7B,EAAOk4C,aAAa,YACnB,WACH1yH,KAAKiE,SAASs7C,KAAK,SAAU,WAC3Bi7B,EAAOk4C,aAAa,YACnB,WACH1yH,KAAKiE,SAASs7C,KAAK,WAAY,WAC7Bi7B,EAAOk4C,aAAa,aACnB,WAEH1yH,KAAKiE,SAASs7C,KAAK,KAAM,WACvBi7B,EAAOq4C,iBAAiB,YACvB,SACH7yH,KAAKiE,SAASs7C,KAAK,OAAQ,WACzBi7B,EAAOq4C,iBAAiB,cACvB,SACH7yH,KAAKiE,SAASs7C,KAAK,OAAQ,WACzBi7B,EAAOq4C,iBAAiB,cACvB,SACH7yH,KAAKiE,SAASs7C,KAAK,QAAS,WAC1Bi7B,EAAOq4C,iBAAiB,eACvB,SACH7yH,KAAKiE,SAASs7C,KAAK,IAAK,WACtBi7B,EAAOq4C,iBAAiB,YACvB,SACH7yH,KAAKiE,SAASs7C,KAAK,OAAQ,WACzBi7B,EAAOq4C,iBAAiB,YACvB,SACH7yH,KAAKiE,SAASs7C,KAAK,OAAQ,WACzBi7B,EAAOq4C,iBAAiB,aACvB,SACH7yH,KAAKiE,SAASs7C,KAAK,IAAK,WACtBi7B,EAAOq4C,iBAAiB,aACvB,SACH7yH,KAAKiE,SAASs7C,KAAK,IAAK,WACtBi7B,EAAOq4C,iBAAiB,aACvB,SACH7yH,KAAKiE,SAASs7C,KAAK,IAAK,WACtBi7B,EAAOq4C,iBAAiB,YACvB,SACH7yH,KAAKiE,SAASs7C,KAAK,SAAU,WAC3Bi7B,EAAOq4C,iBAAiB,YACvB,SACH7yH,KAAKiE,SAASs7C,KAAK,WAAY,WAC7Bi7B,EAAOq4C,iBAAiB,aACvB,eAMJf,IAGTlyH,GAAQ,WAAakyH,EACrBjyH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAmBrB,QAASo3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hB47C,EAAQ,WACV,QAASA,GAAM1uF,GACb4yC,EAAgBh3E,KAAM8yH,GAEtB9yH,KAAKokC,UAAYA,EAEjBpkC,KAAK49B,EAAI,EACT59B,KAAKihB,EAAI,EACTjhB,KAAK6uC,QAAU,EACf7uC,KAAKg9D,QAAS,EAGdh9D,KAAKwqC,MAAQpN,SAASM,cAAc,OACpC19B,KAAKwqC,MAAMzhC,UAAY,sBACvB/I,KAAKokC,UAAU9G,YAAYt9B,KAAKwqC,OAmFlC,MA3EA4sC,GAAa07C,IACXnpH,IAAK,cACL5E,MAAO,SAAqB64B,EAAG3c,GAC7BjhB,KAAK49B,EAAIrxB,SAASqxB,GAClB59B,KAAKihB,EAAI1U,SAAS0U,MAQpBtX,IAAK,UACL5E,MAAO,SAAiBs5B,GAClBA,YAAmBuvC,UACrB5tE,KAAKwqC,MAAMsE,UAAY,GACvB9uC,KAAKwqC,MAAMlN,YAAYe,IAEvBr+B,KAAKwqC,MAAMsE,UAAYzQ,KAS3B10B,IAAK,OACL5E,MAAO,SAAcguH,GAKnB,GAJexsH,SAAXwsH,IACFA,GAAS,GAGPA,KAAW,EAAM,CACnB,GAAIt0F,GAASz+B,KAAKwqC,MAAMkF,aACpBlR,EAAQx+B,KAAKwqC,MAAME,YACnBuU,EAAYj/C,KAAKwqC,MAAMn/B,WAAWqkC,aAClCmhC,EAAW7wE,KAAKwqC,MAAMn/B,WAAWq/B,YAEjC7hC,EAAM7I,KAAKihB,EAAIwd,CACf51B,GAAM41B,EAASz+B,KAAK6uC,QAAUoQ,IAChCp2C,EAAMo2C,EAAYxgB,EAASz+B,KAAK6uC,SAE9BhmC,EAAM7I,KAAK6uC,UACbhmC,EAAM7I,KAAK6uC,QAGb,IAAIlmC,GAAO3I,KAAK49B,CACZj1B,GAAO61B,EAAQx+B,KAAK6uC,QAAUgiC,IAChCloE,EAAOkoE,EAAWryC,EAAQx+B,KAAK6uC,SAE7BlmC,EAAO3I,KAAK6uC,UACdlmC,EAAO3I,KAAK6uC,SAGd7uC,KAAKwqC,MAAM17B,MAAMnG,KAAOA,EAAO,KAC/B3I,KAAKwqC,MAAM17B,MAAMjG,IAAMA,EAAM,KAC7B7I,KAAKwqC,MAAM17B,MAAM4yD,WAAa,UAC9B1hE,KAAKg9D,QAAS,MAEdh9D,MAAK2lE,UAQTh8D,IAAK,OACL5E,MAAO,WACL/E,KAAKg9D,QAAS,EACdh9D,KAAKwqC,MAAM17B,MAAM4yD,WAAa,aAI3BoxD,IAGTlzH,GAAQ,WAAakzH,EACrBjzH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS82E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hB0vB,EAAO1mG,EAAoB,IAC3B8wG,EAAO9wG,EAAoB,IAC3BS,EAAOT,EAAoB,GAE3B8yH,EAAmB,WACrB,QAASA,GAAiB5zE,EAAM3U,GAC9B,GAAIyX,GAAQliD,IAEZg3E,GAAgBh3E,KAAMgzH,GAEtBhzH,KAAKo/C,KAAOA,EACZp/C,KAAKyqC,OAASA,EACdzqC,KAAKkwH,cAAiBv1B,SAAWE,UACjC76F,KAAKizH,UAAat4B,SAAWE,UAE7B76F,KAAK6D,WACL7D,KAAK4+C,gBACHqkB,aAAa,EACbD,YAAY,EACZkwD,sBAAsB,EACtBC,qBAAqB,GAEvBxyH,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK4+C,gBAE/B5+C,KAAKo/C,KAAKE,QAAQlgB,GAAG,eAAgB,WACnC8iB,EAAMkxE,oBAusBV,MAnsBAh8C,GAAa47C,IACXrpH,IAAK,aACL5E,MAAO,SAAoBlB,GACzB,GAAgB0C,SAAZ1C,EAAuB,CACzB,GAAIoM,IAAU,cAAe,sBAAuB,aAAc,uBAClEtP,GAAKsG,oBAAoBgJ,EAAQjQ,KAAK6D,QAASA,OAWnD8F,IAAK,gBACL5E,MAAO,SAAuBk2D,GAC5B,GAAIsM,IAAW,CACf,IAAIvnE,KAAK6D,QAAQm/D,cAAe,EAAM,CACpC,GAAIl9D,GAAM9F,KAAKkhG,UAAUjmC,IAAYj7D,KAAKmhG,UAAUlmC,EAGpDj7D,MAAK6+F,cAEOt4F,SAART,IACFyhE,EAAWvnE,KAAKiwH,aAAanqH,IAE/B9F,KAAKo/C,KAAKE,QAAQzH,KAAK,kBAEzB,MAAO0vB,MAGT59D,IAAK,0BACL5E,MAAO,SAAiCk2D,GACtC,GAAIo4D,IAAmB,CACvB,IAAIrzH,KAAK6D,QAAQm/D,cAAe,EAAM,CACpC,GAAIl9D,GAAM9F,KAAKkhG,UAAUjmC,IAAYj7D,KAAKmhG,UAAUlmC,EAExC10D,UAART,IACFutH,GAAmB,EACfvtH,EAAIukH,gBAAiB,EACvBrqH,KAAKszH,eAAextH,GAEpB9F,KAAKiwH,aAAanqH,GAGpB9F,KAAKo/C,KAAKE,QAAQzH,KAAK,mBAG3B,MAAOw7E,MAGT1pH,IAAK,sBACL5E,MAAO,SAA6BugD,EAAWx6C,EAAOmwD,EAAS6P,GAC7D,GAAIyoD,GAAiBltH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEzF+/C,EAAa7/C,MAEf6/C,GADEmtE,KAAmB,GACN54B,SAAWE,UAEb76F,KAAK6hD,eAEpBuE,EAAoB,SAClBotE,KAAO51F,EAAGq9B,EAAQr9B,EAAG3c,EAAGg6C,EAAQh6C,GAChCwpB,OAAQzqC,KAAKyqC,OAAO20D,YAAYnkC,IAElC7U,EAAkB,MAAIt7C,EAEDvE,SAAjBukE,IACF1kB,EAA8B,kBAAI0kB,GAEpC9qE,KAAKo/C,KAAKE,QAAQzH,KAAKyN,EAAWc,MAGpCz8C,IAAK,eACL5E,MAAO,SAAsBe,GAC3B,GAAI2tH,GAAiBptH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBrG,KAAK6D,QAAQqvH,qBAAuB7sH,UAAU,EAEzH,OAAYE,UAART,GACEA,YAAe8gG,IACb6sB,KAAmB,GACrBzzH,KAAK0zH,sBAAsB5tH,GAG/BA,EAAI+/D,SACJ7lE,KAAK2zH,gBAAgB7tH,IACd,IAEF,KAGT6D,IAAK,iBACL5E,MAAO,SAAwBe,GACzBA,EAAIukH,gBAAiB,IACvBvkH,EAAIyhE,UAAW,EACfvnE,KAAK4zH,qBAAqB9tH,OAW9B6D,IAAK,8BACL5E,MAAO,SAAqCX,GAG1C,IAAK,GAFDgtH,MACAz2B,EAAQ36F,KAAKo/C,KAAKu7C,MACbl0F,EAAI,EAAGA,EAAIzG,KAAKo/C,KAAKw7C,YAAYt0F,OAAQG,IAAK,CACrD,GAAIi4F,GAAS1+F,KAAKo/C,KAAKw7C,YAAYn0F,EAC/Bk0F,GAAM+D,GAAQ2yB,kBAAkBjtH,IAClCgtH,EAAiB5pH,KAAKk3F,GAG1B,MAAO0yB,MAWTznH,IAAK,2BACL5E,MAAO,SAAkCk2D,GACvC,GAAI44D,GAAY7zH,KAAKyqC,OAAO20D,YAAYnkC,EACxC,QACEtyD,KAAMkrH,EAAUj2F,EAAI,EACpB/0B,IAAKgrH,EAAU5yG,EAAI,EACnB4wB,MAAOgiF,EAAUj2F,EAAI,EACrB0Q,OAAQulF,EAAU5yG,EAAI,MAW1BtX,IAAK,YACL5E,MAAO,SAAmBk2D,GACxB,GAAI64D,GAAaztH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,GAGpF0tH,EAAiB/zH,KAAK2xH,yBAAyB12D,GAC/Cm2D,EAAmBpxH,KAAKg0H,4BAA4BD,EAGxD,OAAI3C,GAAiB9qH,OAAS,EACxBwtH,KAAe,EACV9zH,KAAKo/C,KAAKu7C,MAAMy2B,EAAiBA,EAAiB9qH,OAAS,IAE3D8qH,EAAiBA,EAAiB9qH,OAAS,GAGpD,UAWJqD,IAAK,2BACL5E,MAAO,SAAkCX,EAAQmtH,GAE/C,IAAK,GADD12B,GAAQ76F,KAAKo/C,KAAKy7C,MACbp0F,EAAI,EAAGA,EAAIzG,KAAKo/C,KAAK07C,YAAYx0F,OAAQG,IAAK,CACrD,GAAIk4F,GAAS3+F,KAAKo/C,KAAK07C,YAAYr0F,EAC/Bo0F,GAAM8D,GAAQ0yB,kBAAkBjtH,IAClCmtH,EAAiB/pH,KAAKm3F,OAY5Bh1F,IAAK,8BACL5E,MAAO,SAAqCX,GAC1C,GAAImtH,KAEJ,OADAvxH,MAAKi0H,yBAAyB7vH,EAAQmtH,GAC/BA,KAWT5nH,IAAK,YACL5E,MAAO,SAAmBk2D,GACxB,GAAIi5D,GAAa7tH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,GAEpF0tH,EAAiB/zH,KAAK2xH,yBAAyB12D,GAC/Cs2D,EAAmBvxH,KAAKm0H,4BAA4BJ,EAExD,OAAIxC,GAAiBjrH,OAAS,EACxB4tH,KAAe,EACVl0H,KAAKo/C,KAAKy7C,MAAM02B,EAAiBA,EAAiBjrH,OAAS,IAE3DirH,EAAiBA,EAAiBjrH,OAAS,GAGpD,UAWJqD,IAAK,kBACL5E,MAAO,SAAyBe,GAC1BA,YAAe8gG,GACjB5mG,KAAKkwH,aAAav1B,MAAM70F,EAAIzF,IAAMyF,EAElC9F,KAAKkwH,aAAar1B,MAAM/0F,EAAIzF,IAAMyF,KAWtC6D,IAAK,cACL5E,MAAO,SAAqBe,GACtBA,YAAe8gG,GACjB5mG,KAAKizH,SAASt4B,MAAM70F,EAAIzF,IAAMyF,EAE9B9F,KAAKizH,SAASp4B,MAAM/0F,EAAIzF,IAAMyF,KAWlC6D,IAAK,uBACL5E,MAAO,SAA8Be,GAC/BA,YAAe8gG,UACV5mG,MAAKkwH,aAAav1B,MAAM70F,EAAIzF,IACnCL,KAAKo0H,wBAAwBtuH,UAEtB9F,MAAKkwH,aAAar1B,MAAM/0F,EAAIzF,OAQvCsJ,IAAK,cACL5E,MAAO,WACL,IAAK,GAAI25F,KAAU1+F,MAAKkwH,aAAav1B,MAC/B36F,KAAKkwH,aAAav1B,MAAM30F,eAAe04F,IACzC1+F,KAAKkwH,aAAav1B,MAAM+D,GAAQ94B,UAGpC,KAAK,GAAI+4B,KAAU3+F,MAAKkwH,aAAar1B,MAC/B76F,KAAKkwH,aAAar1B,MAAM70F,eAAe24F,IACzC3+F,KAAKkwH,aAAar1B,MAAM8D,GAAQ/4B,UAIpC5lE,MAAKkwH,cAAiBv1B,SAAWE,aAUnClxF,IAAK,wBACL5E,MAAO,WACL,GAAIktB,GAAQ,CACZ,KAAK,GAAIysE,KAAU1+F,MAAKkwH,aAAav1B,MAC/B36F,KAAKkwH,aAAav1B,MAAM30F,eAAe04F,KACzCzsE,GAAS,EAGb,OAAOA,MAUTtoB,IAAK,mBACL5E,MAAO,WACL,IAAK,GAAI25F,KAAU1+F,MAAKkwH,aAAav1B,MACnC,GAAI36F,KAAKkwH,aAAav1B,MAAM30F,eAAe04F,GACzC,MAAO1+F,MAAKkwH,aAAav1B,MAAM+D,MAarC/0F,IAAK,mBACL5E,MAAO,WACL,IAAK,GAAI45F,KAAU3+F,MAAKkwH,aAAar1B,MACnC,GAAI76F,KAAKkwH,aAAar1B,MAAM70F,eAAe24F,GACzC,MAAO3+F,MAAKkwH,aAAar1B,MAAM8D,MAarCh1F,IAAK,wBACL5E,MAAO,WACL,GAAIktB,GAAQ,CACZ,KAAK,GAAI0sE,KAAU3+F,MAAKkwH,aAAar1B,MAC/B76F,KAAKkwH,aAAar1B,MAAM70F,eAAe24F,KACzC1sE,GAAS,EAGb,OAAOA,MAUTtoB,IAAK,0BACL5E,MAAO,WACL,GAAIktB,GAAQ,CACZ,KAAK,GAAIysE,KAAU1+F,MAAKkwH,aAAav1B,MAC/B36F,KAAKkwH,aAAav1B,MAAM30F,eAAe04F,KACzCzsE,GAAS,EAGb,KAAK,GAAI0sE,KAAU3+F,MAAKkwH,aAAar1B,MAC/B76F,KAAKkwH,aAAar1B,MAAM70F,eAAe24F,KACzC1sE,GAAS,EAGb,OAAOA,MAUTtoB,IAAK,oBACL5E,MAAO,WACL,IAAK,GAAI25F,KAAU1+F,MAAKkwH,aAAav1B,MACnC,GAAI36F,KAAKkwH,aAAav1B,MAAM30F,eAAe04F,GACzC,OAAO,CAGX,KAAK,GAAIC,KAAU3+F,MAAKkwH,aAAar1B,MACnC,GAAI76F,KAAKkwH,aAAar1B,MAAM70F,eAAe24F,GACzC,OAAO,CAGX,QAAO,KAUTh1F,IAAK,sBACL5E,MAAO,WACL,IAAK,GAAI25F,KAAU1+F,MAAKkwH,aAAav1B,MACnC,GAAI36F,KAAKkwH,aAAav1B,MAAM30F,eAAe04F,IACrC1+F,KAAKkwH,aAAav1B,MAAM+D,GAAQ21B,YAAc,EAChD,OAAO,CAIb,QAAO,KAUT1qH,IAAK,wBACL5E,MAAO,SAA+B62B,GACpC,IAAK,GAAIn1B,GAAI,EAAGA,EAAIm1B,EAAKi/D,MAAMv0F,OAAQG,IAAK,CAC1C,GAAI26F,GAAOxlE,EAAKi/D,MAAMp0F,EACtB26F,GAAKv7B,SACL7lE,KAAK2zH,gBAAgBvyB,OAWzBz3F,IAAK,uBACL5E,MAAO,SAA8B62B,GACnC,IAAK,GAAIn1B,GAAI,EAAGA,EAAIm1B,EAAKi/D,MAAMv0F,OAAQG,IAAK,CAC1C,GAAI26F,GAAOxlE,EAAKi/D,MAAMp0F,EACtB26F,GAAKhzF,OAAQ,EACbpO,KAAKs0H,YAAYlzB,OAWrBz3F,IAAK,0BACL5E,MAAO,SAAiC62B,GACtC,IAAK,GAAIn1B,GAAI,EAAGA,EAAIm1B,EAAKi/D,MAAMv0F,OAAQG,IAAK,CAC1C,GAAI26F,GAAOxlE,EAAKi/D,MAAMp0F,EACtB26F,GAAKx7B,WACL5lE,KAAK4zH,qBAAqBxyB,OAY9Bz3F,IAAK,aACL5E,MAAO,SAAoBX,GACrBA,EAAOgK,SAAU,IACnBhK,EAAOgK,OAAQ,EACXhK,YAAkBwiG,GACpB5mG,KAAKo/C,KAAKE,QAAQzH,KAAK,YAAcjc,KAAMx3B,EAAO/D,KAElDL,KAAKo/C,KAAKE,QAAQzH,KAAK,YAAcupD,KAAMh9F,EAAO/D,SAaxDsJ,IAAK,cACL5E,MAAO,SAAqBX,GAC1B,GAAImwH,IAAe,CAEnB,KAAK,GAAI71B,KAAU1+F,MAAKizH,SAASt4B,MAC3B36F,KAAKizH,SAASt4B,MAAM30F,eAAe04F,KACtBn4F,SAAXnC,GAAwBA,YAAkBwiG,IAAQxiG,EAAO/D,IAAMq+F,GAAUt6F,YAAkB4sG,MAC7FhxG,KAAKw0H,WAAWx0H,KAAKizH,SAASt4B,MAAM+D,UAC7B1+F,MAAKizH,SAASt4B,MAAM+D,GAC3B61B,GAAe,EAMrB,KAAK,GAAI51B,KAAU3+F,MAAKizH,SAASp4B,MAC3B76F,KAAKizH,SAASp4B,MAAM70F,eAAe24F,KAGjC41B,KAAiB,GACnBv0H,KAAKizH,SAASp4B,MAAM8D,GAAQvwF,OAAQ,QAC7BpO,MAAKizH,SAASp4B,MAAM8D,IAGTp4F,SAAXnC,IACLpE,KAAKw0H,WAAWx0H,KAAKizH,SAASp4B,MAAM8D,UAC7B3+F,MAAKizH,SAASp4B,MAAM8D,GAC3B41B,GAAe,GAKRhuH,UAAXnC,IACEA,EAAOgK,SAAU,IACnBhK,EAAOgK,OAAQ,EACfpO,KAAKs0H,YAAYlwH,GACjBmwH,GAAe,EACXnwH,YAAkBwiG,GACpB5mG,KAAKo/C,KAAKE,QAAQzH,KAAK,aAAejc,KAAMx3B,EAAO/D,KAEnDL,KAAKo/C,KAAKE,QAAQzH,KAAK,aAAeupD,KAAMh9F,EAAO/D,MAGnD+D,YAAkBwiG,IAAQ5mG,KAAK6D,QAAQsvH,uBAAwB,GACjEnzH,KAAKy0H,qBAAqBrwH,IAI1BmwH,KAAiB,GACnBv0H,KAAKo/C,KAAKE,QAAQzH,KAAK,qBAU3BluC,IAAK,eACL5E,MAAO,WACL,GAAI25G,GAAU1+G,KAAKghG,mBACf0zB,EAAU10H,KAAKihG,kBACnB,QAAStG,MAAO+jB,EAAS7jB,MAAO65B,MAUlC/qH,IAAK,mBACL5E,MAAO,WACL,GAAI4vH,KACJ,IAAI30H,KAAK6D,QAAQm/D,cAAe,EAC9B,IAAK,GAAI07B,KAAU1+F,MAAKkwH,aAAav1B,MAC/B36F,KAAKkwH,aAAav1B,MAAM30F,eAAe04F,IACzCi2B,EAAQntH,KAAKxH,KAAKkwH,aAAav1B,MAAM+D,GAAQr+F,GAInD,OAAOs0H,MAUThrH,IAAK,mBACL5E,MAAO,WACL,GAAI4vH,KACJ,IAAI30H,KAAK6D,QAAQm/D,cAAe,EAC9B,IAAK,GAAI27B,KAAU3+F,MAAKkwH,aAAar1B,MAC/B76F,KAAKkwH,aAAar1B,MAAM70F,eAAe24F,IACzCg2B,EAAQntH,KAAKxH,KAAKkwH,aAAar1B,MAAM8D,GAAQt+F,GAInD,OAAOs0H,MASThrH,IAAK,eACL5E,MAAO,SAAsB68C,GAC3B,GAAI/9C,GAAUwC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAE/EI,EAAIF,OACJlG,EAAKkG,MAET,KAAKq7C,IAAcA,EAAU+4C,QAAU/4C,EAAUi5C,MAAO,KAAM,gEAK9D,KAHIh3F,EAAQg7F,aAAuCt4F,SAAxB1C,EAAQg7F,cACjC7+F,KAAK6+F,cAEHj9C,EAAU+4C,MACZ,IAAKl0F,EAAI,EAAGA,EAAIm7C,EAAU+4C,MAAMr0F,OAAQG,IAAK,CAC3CpG,EAAKuhD,EAAU+4C,MAAMl0F,EAErB,IAAIm1B,GAAO57B,KAAKo/C,KAAKu7C,MAAMt6F,EAC3B,KAAKu7B,EACH,KAAM,IAAIg5F,YAAW,iBAAmBv0H,EAAK,cAG/CL,MAAKiwH,aAAar0F,EAAM/3B,EAAQ4vH,gBAIpC,GAAI7xE,EAAUi5C,MACZ,IAAKp0F,EAAI,EAAGA,EAAIm7C,EAAUi5C,MAAMv0F,OAAQG,IAAK,CAC3CpG,EAAKuhD,EAAUi5C,MAAMp0F,EAErB,IAAI26F,GAAOphG,KAAKo/C,KAAKy7C,MAAMx6F,EAC3B,KAAK+gG,EACH,KAAM,IAAIwzB,YAAW,iBAAmBv0H,EAAK,cAE/CL,MAAKiwH,aAAa7uB,GAGtBphG,KAAKo/C,KAAKE,QAAQzH,KAAK,qBAUzBluC,IAAK,cACL5E,MAAO,SAAqB68C,GAC1B,GAAI6xE,GAAiBptH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAE5F,KAAKu7C,GAAkCr7C,SAArBq7C,EAAUt7C,OAAsB,KAAM,qCAExDtG,MAAK8hD,cAAe64C,MAAO/4C,IAAe6xE,eAAgBA,OAS5D9pH,IAAK,cACL5E,MAAO,SAAqB68C,GAC1B,IAAKA,GAAkCr7C,SAArBq7C,EAAUt7C,OAAsB,KAAM,qCAExDtG,MAAK8hD,cAAe+4C,MAAOj5C,OAQ7Bj4C,IAAK,kBACL5E,MAAO,WACL,IAAK,GAAI25F,KAAU1+F,MAAKkwH,aAAav1B,MAC/B36F,KAAKkwH,aAAav1B,MAAM30F,eAAe04F,KACpC1+F,KAAKo/C,KAAKu7C,MAAM30F,eAAe04F,UAC3B1+F,MAAKkwH,aAAav1B,MAAM+D,GAIrC,KAAK,GAAIC,KAAU3+F,MAAKkwH,aAAar1B,MAC/B76F,KAAKkwH,aAAar1B,MAAM70F,eAAe24F,KACpC3+F,KAAKo/C,KAAKy7C,MAAM70F,eAAe24F,UAC3B3+F,MAAKkwH,aAAar1B,MAAM8D,QAOlCq0B,IAGTpzH,GAAQ,WAAaozH,EACrBnzH,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAY9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAVhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAI+iG,GAAiB,WAAe,QAASC,GAAc3/F,EAAK3B,GAAK,GAAIuhG,MAAeC,GAAK,EAAUvzF,GAAK,EAAWwzF,EAAK3hG,MAAW,KAAM,IAAK,GAAiC4hG,GAA7B5yF,EAAKnN,EAAIggG,OAAOriD,cAAmBkiD,GAAME,EAAK5yF,EAAG+B,QAAQwiD,QAAoBkuC,EAAKxgG,KAAK2gG,EAAGpjG,QAAY0B,GAAKuhG,EAAK1hG,SAAWG,GAA3DwhG,GAAK,IAAoE,MAAO9tB,GAAOzlE,GAAK,EAAMwzF,EAAK/tB,EAAO,QAAU,KAAW8tB,GAAM1yF,EAAG,WAAWA,EAAG,YAAe,QAAU,GAAIb,EAAI,KAAMwzF,IAAQ,MAAOF,GAAQ,MAAO,UAAU5/F,EAAK3B,GAAK,GAAIK,MAAMC,QAAQqB,GAAQ,MAAOA,EAAY,IAAIggG,OAAOriD,WAAY3+C,QAAOgB,GAAQ,MAAO2/F,GAAc3/F,EAAK3B,EAAa,MAAM,IAAIS,WAAU,4DAEnlBkwE,EAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hBitC,EAAejkH,EAAoB,IAEnCkkH,EAAgBvtC,EAAuBstC,GAEvCxjH,EAAOT,EAAoB,GAE3B20H,EAAe,WACjB,QAASA,GAAaz1E,GACpB43B,EAAgBh3E,KAAM60H,GAEtB70H,KAAKo/C,KAAOA,EAEZp/C,KAAK80H,kBAAoB7vH,KAAKsjB,MAAsB,IAAhBtjB,KAAK+2B,UACzCh8B,KAAKigH,WAAajgH,KAAK80H,kBACvB90H,KAAK+0H,YAAa,EAClB/0H,KAAK6D,WACL7D,KAAKg1H,eAAkB94C,YAEvBl8E,KAAK4+C,gBACHqhE,WAAY15G,OACZ0uH,gBAAgB,EAChBC,cACErkH,SAAS,EACTskH,gBAAiB,IACjBC,YAAa,IACbC,YAAa,IACbC,eAAe,EACfC,kBAAkB,EAClB7qG,UAAW,KACX8qG,WAAY,YAGhB70H,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK4+C,gBAC/B5+C,KAAK67F,qBAq2CP,MAl2CAzkB,GAAay9C,IACXlrH,IAAK,qBACL5E,MAAO,WACL,GAAIm9C,GAAQliD,IAEZA,MAAKo/C,KAAKE,QAAQlgB,GAAG,eAAgB,WACnC8iB,EAAMuzE,4BAERz1H,KAAKo/C,KAAKE,QAAQlgB,GAAG,cAAe,WAClC8iB,EAAMwzE,kBAER11H,KAAKo/C,KAAKE,QAAQlgB,GAAG,2BAA4B,WAC/C8iB,EAAMuzE,+BAIV9rH,IAAK,aACL5E,MAAO,SAAoBlB,EAASL,GAClC,GAAgB+C,SAAZ1C,EAAuB,CACzB,GAAI8xH,GAAwB31H,KAAK6D,QAAQqxH,aAAarkH,OAOtD,IANAlQ,EAAKsG,qBAAqB,aAAc,kBAAmBjH,KAAK6D,QAASA,GACzElD,EAAK+P,aAAa1Q,KAAK6D,QAASA,EAAS,gBACd0C,SAAvB1C,EAAQo8G,aACVjgH,KAAK80H,kBAAoBjxH,EAAQo8G,YAG/BjgH,KAAK6D,QAAQqxH,aAAarkH,WAAY,EAmBxC,MAlBI8kH,MAA0B,GAE5B31H,KAAKo/C,KAAKE,QAAQzH,KAAK,WAAW,GAIQ,OAAxC73C,KAAK6D,QAAQqxH,aAAaxqG,WAA8D,OAAxC1qB,KAAK6D,QAAQqxH,aAAaxqG,UACxE1qB,KAAK6D,QAAQqxH,aAAaC,gBAAkB,IAC9Cn1H,KAAK6D,QAAQqxH,aAAaC,iBAAmB,IAG3Cn1H,KAAK6D,QAAQqxH,aAAaC,gBAAkB,IAC9Cn1H,KAAK6D,QAAQqxH,aAAaC,iBAAmB,IAIjDn1H,KAAKo/C,KAAKE,QAAQzH,KAAK,4BAEhB73C,KAAK41H,qCAAqCpyH,EAEjD,IAAImyH,KAA0B,EAG5B,MADA31H,MAAKo/C,KAAKE,QAAQzH,KAAK,WAChBl3C,EAAK0G,WAAW7D,EAAYxD,KAAKg1H,eAI9C,MAAOxxH,MAGTmG,IAAK,uCACL5E,MAAO,SAA8CvB,GACnD,GAAIxD,KAAK6D,QAAQqxH,aAAarkH,WAAY,EAAM,CAEnBtK,SAAvB/C,EAAW04E,SAAyB14E,EAAW04E,WAAY,GAC7D14E,EAAW04E,SACTrrE,QAAgDtK,SAAvCvG,KAAKg1H,cAAc94C,QAAQrrE,SAAwB,EAAO7Q,KAAKg1H,cAAc94C,QAAQrrE,QAC9FsrE,OAAQ,yBAEVn8E,KAAKg1H,cAAc94C,QAAQrrE,QAAiDtK,SAAvCvG,KAAKg1H,cAAc94C,QAAQrrE,SAAwB,EAAO7Q,KAAKg1H,cAAc94C,QAAQrrE,QAC1H7Q,KAAKg1H,cAAc94C,QAAQC,OAASn8E,KAAKg1H,cAAc94C,QAAQC,QAAU,aAClC,gBAAvB34E,GAAW04E,SAC3Bl8E,KAAKg1H,cAAc94C,QAAQrrE,QAAyCtK,SAA/B/C,EAAW04E,QAAQrrE,SAAwB,EAAOrN,EAAW04E,QAAQrrE,QAC1G7Q,KAAKg1H,cAAc94C,QAAQC,OAAS34E,EAAW04E,QAAQC,QAAU,YACjE34E,EAAW04E,QAAQC,OAAS,yBACnB34E,EAAW04E,WAAY,IAChCl8E,KAAKg1H,cAAc94C,QAAQC,OAAS,YACpC34E,EAAW04E,SAAYC,OAAQ,yBAIjC,IAAIv0E,GAAO,cACiC,OAAxC5H,KAAK6D,QAAQqxH,aAAaxqG,WAA8D,OAAxC1qB,KAAK6D,QAAQqxH,aAAaxqG,aAC5E9iB,EAAO,YAIgBrB,SAArB/C,EAAWq3F,OACb76F,KAAKg1H,cAAcn6B,OAAUyU,QAAUz+F,SAAS,EAAMjJ,KAAM,YAC5DpE,EAAWq3F,OAAUyU,QAAQ,IACQ/oG,SAA5B/C,EAAWq3F,MAAMyU,QAC1BtvG,KAAKg1H,cAAcn6B,OAAUyU,QAAUz+F,SAAS,EAAMjJ,KAAM,YAC5DpE,EAAWq3F,MAAMyU,QAAS,GAEa,iBAA5B9rG,GAAWq3F,MAAMyU,QAC1BtvG,KAAKg1H,cAAcn6B,OAAUyU,OAAQ9rG,EAAWq3F,MAAMyU,QACtD9rG,EAAWq3F,MAAMyU,QAAWz+F,QAASrN,EAAWq3F,MAAMyU,OAAQ1nG,KAAMA,KAG/BrB,SAAjC/C,EAAWq3F,MAAMyU,OAAO1nG,MAAuD,YAAjCpE,EAAWq3F,MAAMyU,OAAO1nG,OACxEA,EAAOpE,EAAWq3F,MAAMyU,OAAO1nG,MAGjC5H,KAAKg1H,cAAcn6B,OACjByU,OAA4C/oG,SAApC/C,EAAWq3F,MAAMyU,OAAOz+F,SAAwB,EAAOrN,EAAWq3F,MAAMyU,OAAOz+F,QACvFjJ,KAAuCrB,SAAjC/C,EAAWq3F,MAAMyU,OAAO1nG,KAAqB,UAAYpE,EAAWq3F,MAAMyU,OAAO1nG,KACvF4nG,UAAiDjpG,SAAtC/C,EAAWq3F,MAAMyU,OAAOE,UAA0B,GAAMhsG,EAAWq3F,MAAMyU,OAAOE,UAC3FD,eAA2DhpG,SAA3C/C,EAAWq3F,MAAMyU,OAAOC,gBAA+B,EAAQ/rG,EAAWq3F,MAAMyU,OAAOC,gBAEzG/rG,EAAWq3F,MAAMyU,QACfz+F,QAA6CtK,SAApC/C,EAAWq3F,MAAMyU,OAAOz+F,SAAwB,EAAOrN,EAAWq3F,MAAMyU,OAAOz+F,QACxFjJ,KAAMA,EACN4nG,UAAiDjpG,SAAtC/C,EAAWq3F,MAAMyU,OAAOE,UAA0B,GAAMhsG,EAAWq3F,MAAMyU,OAAOE,UAC3FD,eAA2DhpG,SAA3C/C,EAAWq3F,MAAMyU,OAAOC,gBAA+B,EAAQ/rG,EAAWq3F,MAAMyU,OAAOC,iBAM7GvvG,KAAKo/C,KAAKE,QAAQzH,KAAK,6BAA8BjwC,GAGvD,MAAOpE,MAGTmG,IAAK,eACL5E,MAAO,WACL,GAAI64B,GAAkC,IAA9B34B,KAAKqkC,IAAItpC,KAAKigH,aACtB,OAAOriF,GAAI34B,KAAKuK,MAAMouB,MAGxBj0B,IAAK,oBACL5E,MAAO,SAA2B8iH;AAChC,GAAI7nH,KAAK6D,QAAQqxH,aAAarkH,WAAY,EAAM,CAC9C7Q,KAAKigH,WAAajgH,KAAK80H,iBACvB,KAAK,GAAIruH,GAAI,EAAGA,EAAIohH,EAAWvhH,OAAQG,IAAK,CAC1C,GAAIm1B,GAAOisF,EAAWphH,GAClBovC,EAAS,EAAWgyE,EAAWvhH,OAAS,GACxCokD,EAAQ,EAAIzlD,KAAK8wC,GAAK/1C,KAAKmiH,cAChB57G,UAAXq1B,EAAKgC,IACPhC,EAAKgC,EAAIiY,EAAS5wC,KAAKwkC,IAAIihB,IAEdnkD,SAAXq1B,EAAK3a,IACP2a,EAAK3a,EAAI40B,EAAS5wC,KAAKqkC,IAAIohB,SAWnC/gD,IAAK,gBACL5E,MAAO,WACL,GAAI/E,KAAK6D,QAAQqxH,aAAarkH,WAAY,GAAQ7Q,KAAK6D,QAAQoxH,kBAAmB,EAAM,CAItF,IAAK,GADDlI,GAAkB,EACbtmH,EAAI,EAAGA,EAAIzG,KAAKo/C,KAAKw7C,YAAYt0F,OAAQG,IAAK,CACrD,GAAIm1B,GAAO57B,KAAKo/C,KAAKu7C,MAAM36F,KAAKo/C,KAAKw7C,YAAYn0F,GAC7Cm1B,GAAKorE,sBAAuB,IAC9B+lB,GAAmB,GAKvB,GAAIA,EAAkB,GAAM/sH,KAAKo/C,KAAKw7C,YAAYt0F,OAAQ,CACxD,GAAIuvH,GAAa,GACb9yB,EAAQ,EACR+yB,EAAmB,GAEvB,IAAI91H,KAAKo/C,KAAKw7C,YAAYt0F,OAASwvH,EAAkB,CAEnD,IADA,GAAIC,GAAc/1H,KAAKo/C,KAAKw7C,YAAYt0F,OACjCtG,KAAKo/C,KAAKw7C,YAAYt0F,OAASwvH,GAAkB,CAEtD/yB,GAAS,CACT,IAAIizB,GAASh2H,KAAKo/C,KAAKw7C,YAAYt0F,MAE/By8F,GAAQ,IAAM,EAChB/iG,KAAKo/C,KAAKn/C,QAAQ08F,WAAWs5B,iBAE7Bj2H,KAAKo/C,KAAKn/C,QAAQ08F,WAAWiD,iBAE/B,IAAIs2B,GAAQl2H,KAAKo/C,KAAKw7C,YAAYt0F,MAClC,IAAI0vH,GAAUE,GAASnzB,EAAQ,IAAM,GAAKA,EAAQ8yB,EAIhD,MAHA71H,MAAKm2H,gBACLn2H,KAAKo/C,KAAKE,QAAQzH,KAAK,qBACvBl4B,SAAQy2G,KAAK,gJAOjBp2H,KAAKo/C,KAAKn/C,QAAQo2H,YAAYr3F,YAAaw9E,aAAcv3G,KAAKJ,IAAI,IAAK,EAAIkxH,KAI7E/1H,KAAKo/C,KAAKn/C,QAAQo2H,YAAY/W,MAAMt/G,KAAKo/C,KAAKw7C,YAAa56F,KAAKo/C,KAAK07C,aAAa,GAGlF96F,KAAKs2H,gBAIL,KAAK,GADD9uG,GAAS,GACJ/gB,EAAI,EAAGA,EAAIzG,KAAKo/C,KAAKw7C,YAAYt0F,OAAQG,IAChDzG,KAAKo/C,KAAKu7C,MAAM36F,KAAKo/C,KAAKw7C,YAAYn0F,IAAIm3B,IAAM,GAAM59B,KAAKmiH,gBAAkB36F,EAC7ExnB,KAAKo/C,KAAKu7C,MAAM36F,KAAKo/C,KAAKw7C,YAAYn0F,IAAIwa,IAAM,GAAMjhB,KAAKmiH,gBAAkB36F,CAI/ExnB,MAAKm2H,gBAGLn2H,KAAKo/C,KAAKE,QAAQzH,KAAK,+BAU7BluC,IAAK,iBACL5E,MAAO,WAGL,IAAK,GAFDo7C,GAAQikE,EAAc,WAAWmS,aAAav2H,KAAKo/C,KAAKu7C,MAAO36F,KAAKo/C,KAAKw7C,aACzEvkD,EAAS+tE,EAAc,WAAWgJ,WAAWjtE,GACxC15C,EAAI,EAAGA,EAAIzG,KAAKo/C,KAAKw7C,YAAYt0F,OAAQG,IAChDzG,KAAKo/C,KAAKu7C,MAAM36F,KAAKo/C,KAAKw7C,YAAYn0F,IAAIm3B,GAAKyY,EAAOzY,EACtD59B,KAAKo/C,KAAKu7C,MAAM36F,KAAKo/C,KAAKw7C,YAAYn0F,IAAIwa,GAAKo1B,EAAOp1B,KAI1DtX,IAAK,gBACL5E,MAAO,WAEL,IADA,GAAIyxH,IAAkB,EACfA,KAAoB,GAAM,CAC/BA,GAAkB,CAClB,KAAK,GAAI/vH,GAAI,EAAGA,EAAIzG,KAAKo/C,KAAKw7C,YAAYt0F,OAAQG,IAC5CzG,KAAKo/C,KAAKu7C,MAAM36F,KAAKo/C,KAAKw7C,YAAYn0F,IAAI64F,aAAc,IAC1Dk3B,GAAkB,EAClBx2H,KAAKo/C,KAAKn/C,QAAQ08F,WAAW4C,YAAYv/F,KAAKo/C,KAAKw7C,YAAYn0F,OAAQ,GAGvE+vH,MAAoB,GACtBx2H,KAAKo/C,KAAKE,QAAQzH,KAAK,oBAK7BluC,IAAK,UACL5E,MAAO,WACL,MAAO/E,MAAK80H,qBAUdnrH,IAAK,0BACL5E,MAAO,WACL,GAAI/E,KAAK6D,QAAQqxH,aAAarkH,WAAY,GAAQ7Q,KAAKo/C,KAAKw7C,YAAYt0F,OAAS,EAAG,CAElF,GAAIs1B,GAAOr1B,OACPm4F,EAASn4F,OACTkwH,GAAe,EACfC,GAAmB,EACnBC,GAAiB,CACrB32H,MAAK42H,sBACL52H,KAAK62H,mBACL72H,KAAK82H,uBACL92H,KAAK+2H,wBACL/2H,KAAKg3H,qBACLh3H,KAAKi3H,UAAY,GAEjBj3H,KAAKk3H,wBACLl3H,KAAKm3H,qBACLn3H,KAAKo3H,+BAEL,KAAK14B,IAAU1+F,MAAKo/C,KAAKu7C,MACnB36F,KAAKo/C,KAAKu7C,MAAM30F,eAAe04F,KACjC9iE,EAAO57B,KAAKo/C,KAAKu7C,MAAM+D,GACAn4F,SAAnBq1B,EAAK/3B,QAAQ+5B,GAAsCr3B,SAAnBq1B,EAAK/3B,QAAQod,IAC/Cy1G,GAAmB,GAEMnwH,SAAvBq1B,EAAK/3B,QAAQk/F,OACf0zB,GAAe,EACfz2H,KAAK42H,mBAAmBl4B,GAAU9iE,EAAK/3B,QAAQk/F,OAE/C4zB,GAAiB,EAMvB,IAAIA,KAAmB,GAAQF,KAAiB,EAC9C,KAAM,IAAIzvH,OAAM,wHAIZ2vH,MAAmB,IACwB,YAAzC32H,KAAK6D,QAAQqxH,aAAaM,WAC5Bx1H,KAAKq3H,4BAC6C,aAAzCr3H,KAAK6D,QAAQqxH,aAAaM,WACnCx1H,KAAKs3H,2BAC6C,WAAzCt3H,KAAK6D,QAAQqxH,aAAaM,YACnCx1H,KAAKu3H,iCAKT,KAAK,GAAI17F,KAAW77B,MAAKo/C,KAAKu7C,MACxB36F,KAAKo/C,KAAKu7C,MAAM30F,eAAe61B,IACQt1B,SAArCvG,KAAK42H,mBAAmB/6F,KAC1B77B,KAAK42H,mBAAmB/6F,GAAW,EAKzC,IAAI27F,GAAex3H,KAAKy3H,kBAGxBz3H,MAAK03H,eAGL13H,KAAK23H,uBAAuBH,GAG5Bx3H,KAAK43H,qBAGL53H,KAAKs2H,qBASX3sH,IAAK,qBACL5E,MAAO,WACL,GAAI20E,GAAS15E,KAGT63H,GAAgB,EAChBC,KAGAC,EAAa,WAEf,IAAK,GADDC,GAAYC,IACPxxH,EAAI,EAAGA,EAAIuxH,EAAU1xH,OAAS,EAAGG,IAAK,CAC7C,GAAIyhB,GAAO8vG,EAAUvxH,GAAG5B,IAAMmzH,EAAUvxH,EAAI,GAAG7B,GAC3CsjB,KAASwxD,EAAO71E,QAAQqxH,aAAaG,aACvC6C,EAAUzxH,EAAI,EAAGyhB,EAAOwxD,EAAO71E,QAAQqxH,aAAaG,eAMtD6C,EAAY,SAAmB9uH,EAAOoe,GACxC,IAAK,GAAIk3E,KAAUhlB,GAAOs9C,kBACpBt9C,EAAOs9C,kBAAkBhxH,eAAe04F,IACtChlB,EAAOs9C,kBAAkBt4B,KAAYt1F,GACvCswE,EAAOy+C,yBAAyBz+C,EAAOt6B,KAAKu7C,MAAM+D,GAASl3E,EAAQjhB,QAAW,IAOlF6xH,EAAc,SAAqBhvH,GACrC,GAAIxE,GAAM,IACNC,EAAM,IACV,KAAK,GAAI65F,KAAUhlB,GAAOs9C,kBACxB,GAAIt9C,EAAOs9C,kBAAkBhxH,eAAe04F,IACtChlB,EAAOs9C,kBAAkBt4B,KAAYt1F,EAAO,CAC9C,GAAImtB,GAAMmjD,EAAO2+C,yBAAyB3+C,EAAOt6B,KAAKu7C,MAAM+D,GAC5D95F,GAAMK,KAAKL,IAAI2xB,EAAK3xB,GACpBC,EAAMI,KAAKJ,IAAI0xB,EAAK1xB,GAI1B,OAASD,IAAKA,EAAKC,IAAKA,IAItBozH,EAAe,WAEjB,IAAK,GADDK,MACK7xH,EAAI,EAAGA,EAAIizE,EAAOu9C,UAAWxwH,IACpC6xH,EAAW9wH,KAAK4wH,EAAY3xH,GAE9B,OAAO6xH,IAILC,EAAiB,QAASA,GAAe1mG,EAAQxkB,GAEnD,GADAA,EAAIwkB,EAAOxxB,KAAM,EACbq5E,EAAOo9C,oBAAoBjlG,EAAOxxB,IAAK,CACzC,GAAIk6B,GAAWm/C,EAAOo9C,oBAAoBjlG,EAAOxxB,IAAIk6B,QACrD,IAAIA,EAASj0B,OAAS,EACpB,IAAK,GAAIG,GAAI,EAAGA,EAAI8zB,EAASj0B,OAAQG,IACnC8xH,EAAe7+C,EAAOt6B,KAAKu7C,MAAMpgE,EAAS9zB,IAAK4G,KAQnDmrH,EAAoB,SAA2BC,GACjD,GAAIC,GAAWryH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,IAAMA,UAAU,GAEjFsyH,EAAW,IACXC,EAAW,IACXh0H,EAAM,IACNC,EAAM,IACV,KAAK,GAAIg0H,KAAcJ,GACrB,GAAIA,EAAUzyH,eAAe6yH,GAAa,CACxC,GAAIj9F,GAAO89C,EAAOt6B,KAAKu7C,MAAMk+B,GACzB91B,EAAQrpB,EAAOk9C,mBAAmBh7F,EAAKv7B,IACvCquC,EAAWgrC,EAAO2+C,yBAAyBz8F,GAI3Ck9F,EAAuBp/C,EAAOq/C,oBAAoBn9F,EAAM68F,GAExDO,EAAwBlxB,EAAegxB,EAAsB,GAE7DG,EAAeD,EAAsB,GACrCE,EAAeF,EAAsB,EAEzCL,GAAW1zH,KAAKL,IAAIq0H,EAAcN,GAClCC,EAAW3zH,KAAKL,IAAIs0H,EAAcN,GAGrBF,GAAT31B,IACFn+F,EAAMK,KAAKL,IAAI8pC,EAAU9pC,GACzBC,EAAMI,KAAKJ,IAAI6pC,EAAU7pC,IAK/B,OAAQD,EAAKC,EAAK8zH,EAAUC,IAI1BO,EAAc,QAASA,GAAYz6B,GACrC,GAAIqE,GAAQrpB,EAAOk9C,mBAAmBl4B,EACtC,IAAIhlB,EAAOo9C,oBAAoBp4B,GAAS,CACtC,GAAInkE,GAAWm/C,EAAOo9C,oBAAoBp4B,GAAQnkE,QAClD,IAAIA,EAASj0B,OAAS,EACpB,IAAK,GAAIG,GAAI,EAAGA,EAAI8zB,EAASj0B,OAAQG,IACnCs8F,EAAQ99F,KAAKJ,IAAIk+F,EAAOo2B,EAAY5+F,EAAS9zB,KAInD,MAAOs8F,IAILq2B,EAAoB,SAA2BjnB,EAAOC,GACxD,GAAIinB,GAAYF,EAAYhnB,EAAM9xG,IAC9Bi5H,EAAYH,EAAY/mB,EAAM/xG,GAClC,OAAO4E,MAAKL,IAAIy0H,EAAWC,IAIzBC,EAAgB,SAAuBpnB,EAAOC,GAChD,GAAIonB,GAAW9/C,EAAOq9C,qBAAqB5kB,EAAM9xG,IAC7Co5H,EAAW//C,EAAOq9C,qBAAqB3kB,EAAM/xG,GACjD,IAAiBkG,SAAbizH,GAAuCjzH,SAAbkzH,EAC5B,OAAO,CAETD,GAAWA,EAASE,QACpBD,EAAWA,EAASC,OACpB,KAAK,GAAIjzH,GAAI,EAAGA,EAAI+yH,EAASlzH,OAAQG,IACnC,IAAK,GAAIgK,GAAI,EAAGA,EAAIgpH,EAASnzH,OAAQmK,IACnC,GAAI+oH,EAAS/yH,IAAMgzH,EAAShpH,GAC1B,OAAO,CAIb,QAAO,GAILkpH,EAAsB,SAA6BpwH,EAAUqwH,EAAQC,GACvE,IAAK,GAAIpzH,GAAI,EAAGA,EAAImzH,EAAOtzH,OAAQG,IAAK,CACtC,GAAIs8F,GAAQ62B,EAAOnzH,GACfqzH,EAAapgD,EAAOw9C,qBAAqBn0B,EAC7C,IAAI+2B,EAAWxzH,OAAS,EACtB,IAAK,GAAImK,GAAI,EAAGA,EAAIqpH,EAAWxzH,OAAS,EAAGmK,IACrC8oH,EAAcO,EAAWrpH,GAAIqpH,EAAWrpH,EAAI,OAAQ,GAClDipE,EAAOs9C,kBAAkB8C,EAAWrpH,GAAGpQ,MAAQq5E,EAAOs9C,kBAAkB8C,EAAWrpH,EAAI,GAAGpQ,KAC5FkJ,EAASuwH,EAAWrpH,GAAIqpH,EAAWrpH,EAAI,GAAIopH,KASnDE,EAAsB,SAA6B5nB,EAAOC,GAC5D,GAAI4nB,GAAe3zH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAGvFmwB,EAAOkjD,EAAO2+C,yBAAyBlmB,GACvC17E,EAAOijD,EAAO2+C,yBAAyBjmB,GACvC6nB,EAAUh1H,KAAK8R,IAAI0f,EAAOD,EAE9B,IAAIyjG,EAAUvgD,EAAO71E,QAAQqxH,aAAaE,YAAa,CACrD,GAAI8E,KAAkBA,GAAa/nB,EAAM9xG,KAAM,CAC/C,IAAI85H,KAAkBA,GAAa/nB,EAAM/xG,KAAM,EAE/Ck4H,EAAepmB,EAAO+nB,GACtB3B,EAAenmB,EAAO+nB,EAGtB,IAAIzB,GAAWU,EAAkBjnB,EAAOC,GAEpCgoB,EAAqB5B,EAAkB0B,EAAcxB,GAErD2B,EAAsBvyB,EAAesyB,EAAoB,GAGzDE,GADOD,EAAoB,GACpBA,EAAoB,IAI3BE,GAHYF,EAAoB,GACpBA,EAAoB,GAEV7B,EAAkB2B,EAAczB,IAEtD8B,EAAuB1yB,EAAeyyB,EAAqB,GAE3DE,EAAOD,EAAqB,GAE5BE,GADOF,EAAqB,GAChBA,EAAqB,IAIjCG,GAHYH,EAAqB,GAGpBv1H,KAAK8R,IAAIujH,EAAOG,GACjC,IAAIE,EAAajhD,EAAO71E,QAAQqxH,aAAaE,YAAa,CACxD,GAAI5tG,GAAS8yG,EAAOG,EAAO/gD,EAAO71E,QAAQqxH,aAAaE,WACnD5tG,IAAUkzG,EAAYhhD,EAAO71E,QAAQqxH,aAAaE,cACpD5tG,GAAUkzG,EAAYhhD,EAAO71E,QAAQqxH,aAAaE,aAGvC,EAAT5tG,IAEFkyD,EAAOkhD,YAAYxoB,EAAM/xG,GAAImnB,GAC7BqwG,GAAgB,EAEZmC,KAAiB,GAAMtgD,EAAOmhD,cAAczoB,OAOpD0oB,EAAqB,SAA4B3d,EAAYvhF,GAW/D,IAAK,GARD8iE,GAAS9iE,EAAKv7B,GACd06H,EAAWn/F,EAAKi/D,MAChBmgC,EAAYthD,EAAOk9C,mBAAmBh7F,EAAKv7B,IAG3C46H,EAAKvhD,EAAO71E,QAAQqxH,aAAaC,gBAAkBz7C,EAAO71E,QAAQqxH,aAAaC,gBAC/E+F,KACAC,KACK10H,EAAI,EAAGA,EAAIs0H,EAASz0H,OAAQG,IAAK,CACxC,GAAI26F,GAAO25B,EAASt0H,EACpB,IAAI26F,EAAKuD,MAAQvD,EAAKwD,OAAQ,CAC5B,GAAIw2B,GAAYh6B,EAAKuD,MAAQjG,EAAS0C,EAAKhsF,KAAOgsF,EAAKjsF,EACvD+lH,GAAeH,EAASt0H,GAAGpG,IAAM+6H,EAC7B1hD,EAAOk9C,mBAAmBwE,EAAU/6H,IAAM26H,GAC5CG,EAAW3zH,KAAK45F,IAMtB,GAAIi6B,GAAQ,SAAet9F,EAAO88D,GAEhC,IAAK,GADD3/C,GAAM,EACDz0C,EAAI,EAAGA,EAAIo0F,EAAMv0F,OAAQG,IAChC,GAAoCF,SAAhC20H,EAAergC,EAAMp0F,GAAGpG,IAAmB,CAC7C,GAAI6F,GAAIwzE,EAAO2+C,yBAAyB6C,EAAergC,EAAMp0F,GAAGpG,KAAO09B,CACvEmd,IAAOh1C,EAAIjB,KAAKw0C,KAAKvzC,EAAIA,EAAI+0H,GAGjC,MAAO//E,IAILogF,EAAS,SAAgBv9F,EAAO88D,GAElC,IAAK,GADD3/C,GAAM,EACDz0C,EAAI,EAAGA,EAAIo0F,EAAMv0F,OAAQG,IAChC,GAAoCF,SAAhC20H,EAAergC,EAAMp0F,GAAGpG,IAAmB,CAC7C,GAAI6F,GAAIwzE,EAAO2+C,yBAAyB6C,EAAergC,EAAMp0F,GAAGpG,KAAO09B,CACvEmd,IAAO+/E,EAAKh2H,KAAK8U,IAAI7T,EAAIA,EAAI+0H,EAAI,MAGrC,MAAO//E,IAGLqgF,EAAW,SAAkBpe,EAAYtiB,GAI3C,IAAK,GAHD2gC,GAAQ9hD,EAAO2+C,yBAAyBz8F,GAExC6/F,KACKh1H,EAAI,EAAO02G,EAAJ12G,EAAgBA,IAAK,CACnC,GAAIw6G,GAAKoa,EAAMG,EAAO3gC,GAClB6gC,EAAMJ,EAAOE,EAAO3gC,GAGpB9mE,EAAQ,GACR24E,EAAQznG,KAAKJ,KAAKkvB,EAAO9uB,KAAKL,IAAImvB,EAAO9uB,KAAKsjB,MAAM04F,EAAKya,IAG7D,IAFAF,GAAgB9uB,EAEQnmG,SAApBk1H,EAASD,GACX,KAEFC,GAASD,GAAS/0H,EAEpB,MAAO+0H,IAGLG,EAAa,SAAoBH,GAEnC,GAAIlO,GAAe5zC,EAAO2+C,yBAAyBz8F,EAGnD,IAA0Br1B,SAAtBuxH,EAASl8F,EAAKv7B,IAAmB,CACnC,GAAIu7H,KACJA,GAAYhgG,EAAKv7B,KAAM,EACvBk4H,EAAe38F,EAAMggG,GACrB9D,EAASl8F,EAAKv7B,IAAMu7H,EAGtB,GAAIC,GAAsBrD,EAAkBV,EAASl8F,EAAKv7B,KAEtDy7H,EAAuBh0B,EAAe+zB,EAAqB,GAI3DE,GAFYD,EAAqB,GACrBA,EAAqB,GAChBA,EAAqB,IACtCE,EAAiBF,EAAqB,GAEtC5zG,EAAOszG,EAAQlO,EAGf2O,EAAe,CACf/zG,GAAO,EACT+zG,EAAeh3H,KAAKL,IAAIsjB,EAAM8zG,EAAiBtiD,EAAO71E,QAAQqxH,aAAaE,aAC3D,EAAPltG,IACT+zG,GAAgBh3H,KAAKL,KAAKsjB,EAAM6zG,EAAiBriD,EAAO71E,QAAQqxH,aAAaE,cAG3D,GAAhB6G,IAEFviD,EAAOkhD,YAAYh/F,EAAKv7B,GAAI47H,GAE5BpE,GAAgB,IAIhBr3B,EAAW,SAAkBg7B,GAC/B,GAAIlO,GAAe5zC,EAAO2+C,yBAAyBz8F,GAI/CsgG,EAAuBxiD,EAAOq/C,oBAAoBn9F,GAElDugG,EAAwBr0B,EAAeo0B,EAAsB,GAE7DvD,EAAWwD,EAAsB,GACjCvD,EAAWuD,EAAsB,GAEjCj0G,EAAOszG,EAAQlO,EAEf8O,EAAc9O,CACdplG,GAAO,EACTk0G,EAAcn3H,KAAKL,IAAI0oH,GAAgBsL,EAAWl/C,EAAO71E,QAAQqxH,aAAaE,aAAcoG,GAC5E,EAAPtzG,IACTk0G,EAAcn3H,KAAKJ,IAAIyoH,GAAgBqL,EAAWj/C,EAAO71E,QAAQqxH,aAAaE,aAAcoG,IAG1FY,IAAgB9O,IAElB5zC,EAAOy+C,yBAAyBv8F,EAAMwgG,EAAa71H,QAAW,GAE9DsxH,GAAgB,IAIhB2D,EAAQD,EAASpe,EAAYge,EACjCQ,GAAWH,GACXA,EAAQD,EAASpe,EAAY4d,GAC7Bv6B,EAASg7B,IAKPa,EAA6B,SAAoClf,GACnE,GAAIyc,GAASxyH,OAAO6H,KAAKyqE,EAAOw9C,qBAChC0C,GAASA,EAAO9R,SAChB,KAAK,GAAIrhH,GAAI,EAAO02G,EAAJ12G,EAAgBA,IAAK,CACnCoxH,GAAgB,CAChB,KAAK,GAAIpnH,GAAI,EAAGA,EAAImpH,EAAOtzH,OAAQmK,IAGjC,IAAK,GAFDsyF,GAAQ62B,EAAOnpH,GACfqpH,EAAapgD,EAAOw9C,qBAAqBn0B,GACpCvyF,EAAI,EAAGA,EAAIspH,EAAWxzH,OAAQkK,IACrCsqH,EAAmB,IAAMhB,EAAWtpH,GAGxC,IAAIqnH,KAAkB,EAEpB,QAMFyE,EAA8B,SAAqCnf,GACrE,GAAIyc,GAASxyH,OAAO6H,KAAKyqE,EAAOw9C,qBAChC0C,GAASA,EAAO9R,SAChB,KAAK,GAAIrhH,GAAI,EAAO02G,EAAJ12G,IACdoxH,GAAgB,EAChB8B,EAAoBI,EAAqBH,GAAQ,GAC7C/B,KAAkB,GAHQpxH,OAW9B81H,EAAmB,WACrB,IAAK,GAAI79B,KAAUhlB,GAAOt6B,KAAKu7C,MACzBjhB,EAAOt6B,KAAKu7C,MAAM30F,eAAe04F,IAAShlB,EAAOmhD,cAAcnhD,EAAOt6B,KAAKu7C,MAAM+D,IAKrF1+F,MAAK6D,QAAQqxH,aAAaI,iBAAkB,IAC9CgH,EAA4B,GAC5BC,KAIEv8H,KAAK6D,QAAQqxH,aAAaK,oBAAqB,GACjD8G,EAA2B,IAG7BtE,OAYFpuH,IAAK,sBACL5E,MAAO,SAA6B62B,EAAMvuB,GACxC,GAAImvH,IAAS,CACDj2H,UAAR8G,IACFmvH,GAAS,EAEX,IAAIz5B,GAAQ/iG,KAAK42H,mBAAmBh7F,EAAKv7B,GACzC,IAAckG,SAAVw8F,EAAqB,CACvB,GAAI35F,GAAQpJ,KAAKm3H,kBAAkBv7F,EAAKv7B,IACpCquC,EAAW1uC,KAAKq4H,yBAAyBz8F,GACzC+8F,EAAW,IACXC,EAAW,GACf,IAAc,IAAVxvH,EAAa,CACf,GAAIqzH,GAAWz8H,KAAKk3H,qBAAqBn0B,GAAO35F,EAAQ,EACxD,IAAIozH,KAAW,GAA6Bj2H,SAArB8G,EAAIovH,EAASp8H,KAAqBm8H,KAAW,EAAO,CACzE,GAAIE,GAAU18H,KAAKq4H,yBAAyBoE,EAC5C9D,GAAWjqF,EAAWguF,GAI1B,GAAItzH,GAASpJ,KAAKk3H,qBAAqBn0B,GAAOz8F,OAAS,EAAG,CACxD,GAAIq2H,GAAW38H,KAAKk3H,qBAAqBn0B,GAAO35F,EAAQ,EACxD,IAAIozH,KAAW,GAA6Bj2H,SAArB8G,EAAIsvH,EAASt8H,KAAqBm8H,KAAW,EAAO,CACzE,GAAII,GAAU58H,KAAKq4H,yBAAyBsE,EAC5C/D,GAAW3zH,KAAKL,IAAIg0H,EAAUgE,EAAUluF,IAI5C,OAAQiqF,EAAUC,GAElB,OAAQ,EAAG,MAUfjvH,IAAK,gBACL5E,MAAO,SAAuB62B,GAC5B,GAAI57B,KAAK+2H,qBAAqBn7F,EAAKv7B,IAEjC,IAAK,GADDq5H,GAAU15H,KAAK+2H,qBAAqBn7F,EAAKv7B,IAAIq5H,QACxCjzH,EAAI,EAAGA,EAAIizH,EAAQpzH,OAAQG,IAAK,CACvC,GAAIo2H,GAAWnD,EAAQjzH,GACnB4E,EAAarL,KAAKo/C,KAAKu7C,MAAMkiC,EACjC,IAAI78H,KAAK82H,oBAAoB+F,GAAW,CAEtC,GAAIC,GAAS,IACTC,EAAS,KACTxiG,EAAWv6B,KAAK82H,oBAAoB+F,GAAUtiG,QAClD,IAAIA,EAASj0B,OAAS,EACpB,IAAK,GAAIiP,GAAK,EAAGA,EAAKglB,EAASj0B,OAAQiP,IAAM,CAC3C,GAAI2wG,GAAYlmH,KAAKo/C,KAAKu7C,MAAMpgE,EAAShlB,GACzCunH,GAAS73H,KAAKL,IAAIk4H,EAAQ98H,KAAKq4H,yBAAyBnS,IACxD6W,EAAS93H,KAAKJ,IAAIk4H,EAAQ/8H,KAAKq4H,yBAAyBnS,IAI5D,GAAIx3E,GAAW1uC,KAAKq4H,yBAAyBhtH,GAEzC2xH,EAAuBh9H,KAAK+4H,oBAAoB1tH,GAEhD4xH,EAAwBn1B,EAAek1B,EAAsB,GAE7DrE,EAAWsE,EAAsB,GACjCrE,EAAWqE,EAAsB,GAEjCb,EAAc,IAAOU,EAASC,GAC9B70G,EAAOwmB,EAAW0tF,GACX,EAAPl0G,GAAYjjB,KAAK8R,IAAImR,GAAQ0wG,EAAW54H,KAAK6D,QAAQqxH,aAAaE,aAAeltG,EAAO,GAAKjjB,KAAK8R,IAAImR,GAAQywG,EAAW34H,KAAK6D,QAAQqxH,aAAaE,cACrJp1H,KAAKm4H,yBAAyB9sH,EAAY+wH,EAAa71H,QAAW,QAc5EoD,IAAK,yBACL5E,MAAO,SAAgCyyH,GACrCx3H,KAAKk9H,kBAEL,KAAK,GAAIn6B,KAASy0B,GAChB,GAAIA,EAAaxxH,eAAe+8F,GAAQ,CAEtC,GAAIo6B,GAAY/1H,OAAO6H,KAAKuoH,EAAaz0B,GACzCo6B,GAAYn9H,KAAKo9H,mBAAmBD,GACpCn9H,KAAKq9H,eAAeF,EAEpB,KAAK,GAAI12H,GAAI,EAAGA,EAAI02H,EAAU72H,OAAQG,IAAK,CACzC,GAAIm1B,GAAOuhG,EAAU12H,EACiBF,UAAlCvG,KAAKk9H,gBAAgBthG,EAAKv7B,MAC5BL,KAAKm4H,yBAAyBv8F,EAAM57B,KAAK6D,QAAQqxH,aAAaE,YAAc3uH,EAAGs8F,GAC/E/iG,KAAKk9H,gBAAgBthG,EAAKv7B,KAAM,EAChCL,KAAKs9H,kBAAkB1hG,EAAKv7B,GAAI0iG,SAa1Cp5F,IAAK,qBACL5E,MAAO,SAA4B4vH,GAEjC,IAAK,GADDlrH,MACKhD,EAAI,EAAGA,EAAIkuH,EAAQruH,OAAQG,IAClCgD,EAAMjC,KAAKxH,KAAKo/C,KAAKu7C,MAAMg6B,EAAQluH,IAErC,OAAOgD,MAUTE,IAAK,mBACL5E,MAAO,WACL,GAAIyyH,MACA94B,EAASn4F,OACTq1B,EAAOr1B,MAIX,KAAKm4F,IAAU1+F,MAAKo/C,KAAKu7C,MACvB,GAAI36F,KAAKo/C,KAAKu7C,MAAM30F,eAAe04F,GAAS,CAC1C9iE,EAAO57B,KAAKo/C,KAAKu7C,MAAM+D,EACvB,IAAIqE,GAA4Cx8F,SAApCvG,KAAK42H,mBAAmBl4B,GAAwB,EAAI1+F,KAAK42H,mBAAmBl4B,EAC5C,QAAxC1+F,KAAK6D,QAAQqxH,aAAaxqG,WAA8D,OAAxC1qB,KAAK6D,QAAQqxH,aAAaxqG,WAC5EkR,EAAK3a,EAAIjhB,KAAK6D,QAAQqxH,aAAaC,gBAAkBpyB,EACrDnnE,EAAK/3B,QAAQ6+F,MAAMzhF,GAAI,IAEvB2a,EAAKgC,EAAI59B,KAAK6D,QAAQqxH,aAAaC,gBAAkBpyB,EACrDnnE,EAAK/3B,QAAQ6+F,MAAM9kE,GAAI,GAEGr3B,SAAxBixH,EAAaz0B,KACfy0B,EAAaz0B,OAEfy0B,EAAaz0B,GAAOrE,GAAU9iE,EAGlC,MAAO47F,MAUT7tH,IAAK,cACL5E,MAAO,WACL,GAAIw4H,GAAU,CACd,KAAK,GAAI7+B,KAAU1+F,MAAKo/C,KAAKu7C,MAC3B,GAAI36F,KAAKo/C,KAAKu7C,MAAM30F,eAAe04F,GAAS,CAC1C,GAAI9iE,GAAO57B,KAAKo/C,KAAKu7C,MAAM+D,EACan4F,UAApCvG,KAAK42H,mBAAmBl4B,KAC1B6+B,EAAU3hG,EAAKi/D,MAAMv0F,OAASi3H,EAAUA,EAAU3hG,EAAKi/D,MAAMv0F,QAInE,MAAOi3H,MAUT5zH,IAAK,4BACL5E,MAAO,WAgBL,IAfA,GAAIy1E,GAASx6E,KAETu9H,EAAU,EAEVC,EAAkB,SAAyBC,EAAOC,GACRn3H,SAAxCi0E,EAAOo8C,mBAAmB8G,EAAMr9H,MAEUkG,SAAxCi0E,EAAOo8C,mBAAmB6G,EAAMp9H,MAClCm6E,EAAOo8C,mBAAmB6G,EAAMp9H,IAAM,GAGxCm6E,EAAOo8C,mBAAmB8G,EAAMr9H,IAAMm6E,EAAOo8C,mBAAmB6G,EAAMp9H,IAAM,IAIzEk9H,EAAU,IAEfA,EAAUv9H,KAAK2kH,cACC,IAAZ4Y,IAEJ,IAAK,GAAI7+B,KAAU1+F,MAAKo/C,KAAKu7C,MAC3B,GAAI36F,KAAKo/C,KAAKu7C,MAAM30F,eAAe04F,GAAS,CAC1C,GAAI9iE,GAAO57B,KAAKo/C,KAAKu7C,MAAM+D,EACvB9iE,GAAKi/D,MAAMv0F,SAAWi3H,GACxBv9H,KAAK29H,cAAcH,EAAiB9+B,OAY9C/0F,IAAK,iCACL5E,MAAO,WACL,GAAI61E,GAAS56E,KAET49H,EAAW,IAGXC,EAAiB,SAAwBJ,EAAOC,EAAOt8B,KAEvD08B,EAAmB,SAA0BL,EAAOC,EAAOt8B,GAC7D,GAAI28B,GAASnjD,EAAOg8C,mBAAmB6G,EAAMp9H,GAE9BkG,UAAXw3H,IACFnjD,EAAOg8C,mBAAmB6G,EAAMp9H,IAAMu9H,EAGxC,IAAI11G,GAAO21G,EAAezZ,EAAc,WAAWe,aAAasY,EAAO,QAASrZ,EAAc,WAAWe,aAAauY,EAAO,QAAStZ,EAAc,WAAWe,aAAa/jB,EAAM,QAElLxmB,GAAOg8C,mBAAmB8G,EAAMr9H,IAAMu6E,EAAOg8C,mBAAmB6G,EAAMp9H,IAAM6nB,EAG9EloB,MAAK29H,cAAcG,GACnB99H,KAAKg+H,wBAUPr0H,IAAK,2BACL5E,MAAO,WACL,GAAIi2E,GAASh7E,KAET49H,EAAW,IACXE,EAAmB,SAA0BL,EAAOC,EAAOt8B,GAC7D,GAAI28B,GAAS/iD,EAAO47C,mBAAmB6G,EAAMp9H,GAE9BkG,UAAXw3H,IACF/iD,EAAO47C,mBAAmB6G,EAAMp9H,IAAMu9H,GAEpCx8B,EAAKuD,MAAQ+4B,EAAMr9H,GACrB26E,EAAO47C,mBAAmB8G,EAAMr9H,IAAM26E,EAAO47C,mBAAmB6G,EAAMp9H,IAAM,EAE5E26E,EAAO47C,mBAAmB8G,EAAMr9H,IAAM26E,EAAO47C,mBAAmB6G,EAAMp9H,IAAM,EAGhFL,MAAK29H,cAAcG,GACnB99H,KAAKg+H,wBAQPr0H,IAAK,qBACL5E,MAAO,WACL,GAAI64H,GAAW,GAEf,KAAK,GAAIl/B,KAAU1+F,MAAKo/C,KAAKu7C,MACvB36F,KAAKo/C,KAAKu7C,MAAM30F,eAAe04F,IACOn4F,SAApCvG,KAAK42H,mBAAmBl4B,KAC1Bk/B,EAAW34H,KAAKL,IAAI5E,KAAK42H,mBAAmBl4B,GAASk/B,GAM3D,KAAK,GAAIl/B,KAAU1+F,MAAKo/C,KAAKu7C,MACvB36F,KAAKo/C,KAAKu7C,MAAM30F,eAAe04F,IACOn4F,SAApCvG,KAAK42H,mBAAmBl4B,KAC1B1+F,KAAK42H,mBAAmBl4B,IAAWk/B,MAW3Cj0H,IAAK,eACL5E,MAAO,WACL,GAAIo2E,GAASn7E,KAETi+H,EAAkB,SAAyB5yH,EAAY66G,GACzD,GAAI/qC,EAAOy7C,mBAAmB1Q,EAAU7lH,IAAM86E,EAAOy7C,mBAAmBvrH,EAAWhL,IAAK,CACtF,GAAIylH,GAAez6G,EAAWhL,GAC1BqlH,EAAcQ,EAAU7lH,EACqBkG,UAA7C40E,EAAO27C,oBAAoBhR,KAC7B3qC,EAAO27C,oBAAoBhR,IAAkBvrF,YAAcu9D,OAAQ,IAErE3c,EAAO27C,oBAAoBhR,GAAcvrF,SAAS/yB,KAAKk+G,GACNn/G,SAA7C40E,EAAO47C,qBAAqBrR,KAC9BvqC,EAAO47C,qBAAqBrR,IAAiBgU,WAAa5hC,OAAQ,IAEpE3c,EAAO47C,qBAAqBrR,GAAagU,QAAQlyH,KAAKs+G,IAI1D9lH,MAAK29H,cAAcM,MAUrBt0H,IAAK,gBACL5E,MAAO,SAAuBwE,EAAU20H,GACrB33H,SAAbgD,IAAwBA,EAAW,aAEvC,IAAI4yC,MACAgiF,EAAU,QAASA,GAAQviG,GAC7B,GAA0Br1B,SAAtB41C,EAASvgB,EAAKv7B,IAAmB,CACnC87C,EAASvgB,EAAKv7B,KAAM,CAEpB,KAAK,GADD6lH,GAAY3/G,OACPE,EAAI,EAAGA,EAAIm1B,EAAKi/D,MAAMv0F,OAAQG,IACjCm1B,EAAKi/D,MAAMp0F,GAAGyqG,aAAc,IAE5BgV,EADEtqF,EAAKi/D,MAAMp0F,GAAGk+F,OAAS/oE,EAAKv7B,GAClBu7B,EAAKi/D,MAAMp0F,GAAG2O,KAEdwmB,EAAKi/D,MAAMp0F,GAAG0O,GAGxBymB,EAAKv7B,KAAO6lH,EAAU7lH,KACxBkJ,EAASqyB,EAAMsqF,EAAWtqF,EAAKi/D,MAAMp0F,IACrC03H,EAAQjY,MAQlB,IAAuB3/G,SAAnB23H,EACF,IAAK,GAAIz3H,GAAI,EAAGA,EAAIzG,KAAKo/C,KAAKw7C,YAAYt0F,OAAQG,IAAK,CACrD,GAAIm1B,GAAO57B,KAAKo/C,KAAKu7C,MAAM36F,KAAKo/C,KAAKw7C,YAAYn0F,GACjD03H,GAAQviG,OAEL,CACL,GAAIA,GAAO57B,KAAKo/C,KAAKu7C,MAAMujC,EAC3B,IAAa33H,SAATq1B,EAEF,WADAjc,SAAQ28D,MAAM,kBAAmB4hD,EAGnCC,GAAQviG,OAaZjyB,IAAK,oBACL5E,MAAO,SAA2B83H,EAAUuB,GAE1C,GAA2C73H,SAAvCvG,KAAK82H,oBAAoB+F,GAA7B,CAMA,IAAK,GADDjoD,MACKnuE,EAAI,EAAGA,EAAIzG,KAAK82H,oBAAoB+F,GAAUtiG,SAASj0B,OAAQG,IACtEmuE,EAAWptE,KAAKxH,KAAKo/C,KAAKu7C,MAAM36F,KAAK82H,oBAAoB+F,GAAUtiG,SAAS9zB,IAI9EzG,MAAKq9H,eAAezoD,EAGpB,KAAK,GAAInuE,GAAI,EAAGA,EAAImuE,EAAWtuE,OAAQG,IAAK,CAC1C,GAAIy/G,GAAYtxC,EAAWnuE,GACvB43H,EAAiBr+H,KAAK42H,mBAAmB1Q,EAAU7lH,GAEvD,MAAIg+H,EAAiBD,GAAsD73H,SAAvCvG,KAAKk9H,gBAAgBhX,EAAU7lH,KA6BjE,MA3BA,IAAIk2B,GAAMhwB,MAWV,IAPEgwB,EADQ,IAAN9vB,EACIzG,KAAKq4H,yBAAyBr4H,KAAKo/C,KAAKu7C,MAAMkiC,IAE9C78H,KAAKq4H,yBAAyBzjD,EAAWnuE,EAAI,IAAMzG,KAAK6D,QAAQqxH,aAAaE,YAErFp1H,KAAKm4H,yBAAyBjS,EAAW3vF,EAAK8nG,GAGD93H,SAAzCvG,KAAK62H,gBAAgBwH,GAA+B,CACtD,GAAIC,GAAct+H,KAAKq4H,yBAAyBr4H,KAAKo/C,KAAKu7C,MAAM36F,KAAK62H,gBAAgBwH,IACrF,IAAI9nG,EAAM+nG,EAAct+H,KAAK6D,QAAQqxH,aAAaE,YAAa,CAC7D,GAAIltG,GAAOo2G,EAAct+H,KAAK6D,QAAQqxH,aAAaE,YAAc7+F,EAC7DgoG,EAAev+H,KAAKw+H,kBAAkBx+H,KAAK62H,gBAAgBwH,GAAiBnY,EAAU7lH,GAC1FL,MAAK46H,YAAY2D,EAAaE,UAAWv2G,IAK7CloB,KAAK62H,gBAAgBwH,GAAkBnY,EAAU7lH,GAEjDL,KAAKk9H,gBAAgBhX,EAAU7lH,KAAM,EAErCL,KAAKs9H,kBAAkBpX,EAAU7lH,GAAIg+H,GASzC,IAAK,GAFDvB,GAAS,IACTC,EAAS,KACJt2H,EAAI,EAAGA,EAAImuE,EAAWtuE,OAAQG,IAAK,CAC1C,GAAIi/G,GAAc9wC,EAAWnuE,GAAGpG,EAChCy8H,GAAS73H,KAAKL,IAAIk4H,EAAQ98H,KAAKq4H,yBAAyBr4H,KAAKo/C,KAAKu7C,MAAM+qB,KACxEqX,EAAS93H,KAAKJ,IAAIk4H,EAAQ/8H,KAAKq4H,yBAAyBr4H,KAAKo/C,KAAKu7C,MAAM+qB,KAE1E1lH,KAAKm4H,yBAAyBn4H,KAAKo/C,KAAKu7C,MAAMkiC,GAAW,IAAOC,EAASC,GAASqB,OAUpFz0H,IAAK,cACL5E,MAAO,SAAqB83H,EAAU30G,GAMpC,GAL4C,OAAxCloB,KAAK6D,QAAQqxH,aAAaxqG,WAA8D,OAAxC1qB,KAAK6D,QAAQqxH,aAAaxqG,UAC5E1qB,KAAKo/C,KAAKu7C,MAAMkiC,GAAUj/F,GAAK1V,EAE/BloB,KAAKo/C,KAAKu7C,MAAMkiC,GAAU57G,GAAKiH,EAEU3hB,SAAvCvG,KAAK82H,oBAAoB+F,GAC3B,IAAK,GAAIp2H,GAAI,EAAGA,EAAIzG,KAAK82H,oBAAoB+F,GAAUtiG,SAASj0B,OAAQG,IACtEzG,KAAK46H,YAAY56H,KAAK82H,oBAAoB+F,GAAUtiG,SAAS9zB,GAAIyhB,MAavEve,IAAK,oBACL5E,MAAO,SAA2B25H,EAAQC,GACxC,GAAIC,GAAS5+H,KAET05H,KACAmF,EAAiB,QAASA,GAAenF,EAASvzE,GACpD,GAA2C5/C,SAAvCq4H,EAAO7H,qBAAqB5wE,GAC9B,IAAK,GAAI1/C,GAAI,EAAGA,EAAIm4H,EAAO7H,qBAAqB5wE,GAAOuzE,QAAQpzH,OAAQG,IAAK,CAC1E,GAAIq4H,GAAUF,EAAO7H,qBAAqB5wE,GAAOuzE,QAAQjzH,EACzDizH,GAAQoF,IAAW,EACnBD,EAAenF,EAASoF,KAI1BC,EAAa,QAASA,GAAWrF,EAASvzE,GAC5C,GAA2C5/C,SAAvCq4H,EAAO7H,qBAAqB5wE,GAC9B,IAAK,GAAI1/C,GAAI,EAAGA,EAAIm4H,EAAO7H,qBAAqB5wE,GAAOuzE,QAAQpzH,OAAQG,IAAK,CAC1E,GAAIu4H,GAAWJ,EAAO7H,qBAAqB5wE,GAAOuzE,QAAQjzH,EAC1D,IAA0BF,SAAtBmzH,EAAQsF,GACV,OAASC,YAAaD,EAAUP,UAAWt4E,EAE7C,IAAIq8D,GAASuc,EAAWrF,EAASsF,EACjC,IAA2B,OAAvBxc,EAAOyc,YACT,MAAOzc,GAIb,OAASyc,YAAa,KAAMR,UAAWt4E,GAIzC,OADA04E,GAAenF,EAASgF,GACjBK,EAAWrF,EAASiF,MAW7Bh1H,IAAK,2BACL5E,MAAO,SAAkC62B,EAAM8S,EAAUq0D,GACvD,GAAIm8B,GAAc74H,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAE1F,IAAI64H,KAAgB,IACuB34H,SAArCvG,KAAKk3H,qBAAqBn0B,KAC5B/iG,KAAKk3H,qBAAqBn0B,MAC1B/iG,KAAKo3H,6BAA6Br0B,OAGsBx8F,SAAtDvG,KAAKo3H,6BAA6Br0B,GAAOnnE,EAAKv7B,MAChDL,KAAKk3H,qBAAqBn0B,GAAOv7F,KAAKo0B,GACtC57B,KAAKm3H,kBAAkBv7F,EAAKv7B,IAAML,KAAKk3H,qBAAqBn0B,GAAOz8F,OAAS,GAE9EtG,KAAKo3H,6BAA6Br0B,GAAOnnE,EAAKv7B,KAAM,EAEZkG,SAApCvG,KAAKg3H,kBAAkBp7F,EAAKv7B,KAC9B,GAA2CkG,SAAvCvG,KAAK+2H,qBAAqBn7F,EAAKv7B,IAAmB,CAGpD,IAAK,GAFD8+H,GAAO,EAEF14H,EAAI,EAAGA,EAAIzG,KAAK+2H,qBAAqBn7F,EAAKv7B,IAAIq5H,QAAQpzH,OAAQG,IAAK,CAC1E,GAAIo2H,GAAW78H,KAAK+2H,qBAAqBn7F,EAAKv7B,IAAIq5H,QAAQjzH,EACjBF,UAArCvG,KAAKg3H,kBAAkB6F,KAEzBsC,EAAOn/H,KAAKg3H,kBAAkB6F,IAOlC78H,KAAKg3H,kBAAkBp7F,EAAKv7B,IAAM8+H,MAElCn/H,MAAKg3H,kBAAkBp7F,EAAKv7B,MAAQL,KAAKi3H,SAKH,QAAxCj3H,KAAK6D,QAAQqxH,aAAaxqG,WAA8D,OAAxC1qB,KAAK6D,QAAQqxH,aAAaxqG,UAC5EkR,EAAKgC,EAAI8Q,EAET9S,EAAK3a,EAAIytB,KAWb/kC,IAAK,2BACL5E,MAAO,SAAkC62B,GACvC,MAA4C,OAAxC57B,KAAK6D,QAAQqxH,aAAaxqG,WAA8D,OAAxC1qB,KAAK6D,QAAQqxH,aAAaxqG,UACrEkR,EAAKgC,EAELhC,EAAK3a,KAUhBtX,IAAK,iBACL5E,MAAO,SAAwBo4H,GACzBA,EAAU72H,OAAS,IACuB,OAAxCtG,KAAK6D,QAAQqxH,aAAaxqG,WAA8D,OAAxC1qB,KAAK6D,QAAQqxH,aAAaxqG,UAC5EyyG,EAAUz+G,KAAK,SAAUxY,EAAGC,GAC1B,MAAOD,GAAE03B,EAAIz3B,EAAEy3B,IAGjBu/F,EAAUz+G,KAAK,SAAUxY,EAAGC,GAC1B,MAAOD,GAAE+a,EAAI9a,EAAE8a,SAOlB4zG,IAGTj1H,GAAQ,WAAai1H,EACrBh1H,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,EAASM,GAU9B,QAAS82E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBv2E,EAAOT,EAAoB,GAC3B8D,EAAS9D,EAAoB,IAC7Bo+D,EAAap+D,EAAoB,IAQjCk/H,EAAqB,WACvB,QAASA,GAAmBhgF,EAAM3U,EAAQwxD,GACxC,GAAI/5C,GAAQliD,IAEZg3E,GAAgBh3E,KAAMo/H,GAEtBp/H,KAAKo/C,KAAOA,EACZp/C,KAAKyqC,OAASA,EACdzqC,KAAKi8F,iBAAmBA,EAExBj8F,KAAKq/H,UAAW,EAChBr/H,KAAKs/H,gBAAkB/4H,OACvBvG,KAAKu/H,YAAch5H,OACnBvG,KAAKw/H,SAAWj5H,OAEhBvG,KAAKy/H,uBACLz/H,KAAK0/H,wBACL1/H,KAAK2/H,2BAEL3/H,KAAK4sH,UAAY,EACjB5sH,KAAK4/H,cAAiBjlC,SAAWE,UACjC76F,KAAK6/H,YAAa,EAClB7/H,KAAK8/H,QAAS,EACd9/H,KAAK+/H,oBAAsBx5H,OAE3BvG,KAAK6D,WACL7D,KAAK4+C,gBACH/tC,SAAS,EACTmvH,iBAAiB,EACjBC,SAAS,EACTC,SAAS,EACTjgC,SAAU15F,OACV45H,UAAU,EACVC,YAAY,EACZC,YAAY,EACZC,kBACEh9B,MAAO,MACPrlE,KAAM,EACNxxB,OAASwB,WAAY,UAAWC,OAAQ,UAAWC,WAAaF,WAAY,UAAWC,OAAQ,YAC/F68B,YAAa,EACby3D,oBAAqB,IAGzB7hG,EAAKgG,OAAO3G,KAAK6D,QAAS7D,KAAK4+C,gBAE/B5+C,KAAKo/C,KAAKE,QAAQlgB,GAAG,UAAW,WAC9B8iB,EAAM22B,WAER74E,KAAKo/C,KAAKE,QAAQlgB,GAAG,eAAgBp/B,KAAKugI,SAAShhF,KAAKv/C,OACxDA,KAAKo/C,KAAKE,QAAQlgB,GAAG,aAAcp/B,KAAKugI,SAAShhF,KAAKv/C,OA8mCxD,MAtmCAo3E,GAAagoD,IACXz1H,IAAK,WACL5E,MAAO,WACD/E,KAAK8/H,UAAW,IACd9/H,KAAK6D,QAAQm8H,mBAAoB,EACnChgI,KAAK8/F,iBAEL9/F,KAAK+/F,sBAUXp2F,IAAK,aACL5E,MAAO,SAAoBlB,EAASL,EAAYoN,GAC3BrK,SAAf/C,IACwB+C,SAAtB/C,EAAW8P,OACbtT,KAAK6D,QAAQyP,OAAS9P,EAAW8P,OAEjCtT,KAAK6D,QAAQyP,OAAS1C,EAAc0C,OAEX/M,SAAvB/C,EAAWkU,QACb1X,KAAK6D,QAAQ6T,QAAUlU,EAAWkU,QAElC1X,KAAK6D,QAAQ6T,QAAU9G,EAAc8G,SAIzBnR,SAAZ1C,IACqB,iBAAZA,GACT7D,KAAK6D,QAAQgN,QAAUhN,GAEvB7D,KAAK6D,QAAQgN,SAAU,EACvBlQ,EAAK0G,WAAWrH,KAAK6D,QAASA,IAE5B7D,KAAK6D,QAAQm8H,mBAAoB,IACnChgI,KAAKq/H,UAAW,GAElBr/H,KAAKwgI,aAUT72H,IAAK,iBACL5E,MAAO,WACD/E,KAAKq/H,YAAa,EACpBr/H,KAAK+/F,kBAEL//F,KAAK8/F,oBAITn2F,IAAK,iBACL5E,MAAO,WACL/E,KAAKq/H,UAAW,EAEhBr/H,KAAK64E,SACD74E,KAAK6/H,cAAe,IACtB7/H,KAAKs/H,gBAAgBxwH,MAAMymE,QAAU,QACrCv1E,KAAKw/H,SAAS1wH,MAAMymE,QAAU,QAC9Bv1E,KAAKu/H,YAAYzwH,MAAMymE,QAAU,OACjCv1E,KAAKygI,6BAIT92H,IAAK,kBACL5E,MAAO,WACL/E,KAAKq/H,UAAW,EAEhBr/H,KAAK64E,SACD74E,KAAK6/H,cAAe,IACtB7/H,KAAKs/H,gBAAgBxwH,MAAMymE,QAAU,OACrCv1E,KAAKw/H,SAAS1wH,MAAMymE,QAAU,OAC9Bv1E,KAAKu/H,YAAYzwH,MAAMymE,QAAU,QACjCv1E,KAAK0gI,wBAUT/2H,IAAK,yBACL5E,MAAO,WAQL,GANA/E,KAAK64E,SAGL74E,KAAK2gI,mBAGD3gI,KAAK6/H,cAAe,EAAM,CAE5B7/H,KAAKq/H,UAAW,EAChBr/H,KAAKs/H,gBAAgBxwH,MAAMymE,QAAU,QACrCv1E,KAAKw/H,SAAS1wH,MAAMymE,QAAU,OAE9B,IAAIqrD,GAAoB5gI,KAAKi8F,iBAAiBozB,wBAC1CwR,EAAoB7gI,KAAKi8F,iBAAiBkzB,wBAC1C2R,EAAqBF,EAAoBC,EACzCvtH,EAAStT,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,QAC3CytH,GAAgB,CAEhB/gI,MAAK6D,QAAQo8H,WAAY,IAC3BjgI,KAAKghI,qBAAqB1tH,GAC1BytH,GAAgB,GAEd/gI,KAAK6D,QAAQq8H,WAAY,IACvBa,KAAkB,EACpB/gI,KAAKihI,iBAAiB,GAEtBF,GAAgB,EAElB/gI,KAAKkhI,qBAAqB5tH,IAGF,IAAtBstH,GAA4D,kBAA1B5gI,MAAK6D,QAAQo8F,UAC7C8gC,KAAkB,EACpB/gI,KAAKihI,iBAAiB,GAEtBF,GAAgB,EAElB/gI,KAAKmhI,sBAAsB7tH,IACI,IAAtButH,GAAiD,IAAtBD,GAA2B5gI,KAAK6D,QAAQs8H,YAAa,IACrFY,KAAkB,EACpB/gI,KAAKihI,iBAAiB,GAEtBF,GAAgB,EAElB/gI,KAAKohI,sBAAsB9tH,IAIF,IAAvBwtH,IACEF,EAAoB,GAAK5gI,KAAK6D,QAAQu8H,cAAe,GACnDW,KAAkB,GACpB/gI,KAAKihI,iBAAiB,GAExBjhI,KAAKqhI,oBAAoB/tH,IACM,IAAtBstH,GAA2B5gI,KAAK6D,QAAQw8H,cAAe,IAC5DU,KAAkB,GACpB/gI,KAAKihI,iBAAiB,GAExBjhI,KAAKqhI,oBAAoB/tH,KAK7BtT,KAAKshI,iBAAiBthI,KAAKw/H,SAAUx/H,KAAKuhI,eAAehiF,KAAKv/C,OAG9DA,KAAKwhI,oBAAoB,SAAUxhI,KAAKygI,uBAAuBlhF,KAAKv/C,OAItEA,KAAKo/C,KAAKE,QAAQzH,KAAK,cAOzBluC,IAAK,cACL5E,MAAO,WAUL,GARI/E,KAAKq/H,YAAa,GACpBr/H,KAAK8/F,iBAIP9/F,KAAK64E,SAEL74E,KAAK8/H,OAAS,UACV9/H,KAAK6/H,cAAe,EAAM,CAC5B,GAAIvsH,GAAStT,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,OAC/CtT,MAAK2gI,mBACL3gI,KAAKyhI,kBAAkBnuH,GACvBtT,KAAKihI,mBACLjhI,KAAK0hI,mBAAmBpuH,EAAuB,gBAAKtT,KAAK6D,QAAQ6T,QAAY,GAAkB,gBAG/F1X,KAAKshI,iBAAiBthI,KAAKw/H,SAAUx/H,KAAKuhI,eAAehiF,KAAKv/C,OAGhEA,KAAKwhI,oBAAoB,QAASxhI,KAAK2hI,gBAAgBpiF,KAAKv/C,UAO9D2J,IAAK,WACL5E,MAAO,WACL,GAAI20E,GAAS15E,IAGTA,MAAKq/H,YAAa,GACpBr/H,KAAK8/F,iBAIP9/F,KAAK64E,QACL,IAAIj9C,GAAO57B,KAAKi8F,iBAAiB2lC,kBACjC,IAAar7H,SAATq1B,EAAoB,CAEtB,GADA57B,KAAK8/H,OAAS,WACuB,kBAA1B9/H,MAAK6D,QAAQo8F,SAqBtB,KAAM,IAAIj5F,OAAM,kEApBhB,IAAI40B,EAAK0jE,aAAc,EAAM,CAC3B,GAAItnF,GAAOrX,EAAK0G,cAAeu0B,EAAK/3B,SAAS,EAI7C,IAHAmU,EAAK4lB,EAAIhC,EAAKgC,EACd5lB,EAAKiJ,EAAI2a,EAAK3a,EAEuB,IAAjCjhB,KAAK6D,QAAQo8F,SAAS35F,OASxB,KAAM,IAAIU,OAAM,wEARhBhH,MAAK6D,QAAQo8F,SAASjoF,EAAM,SAAU6pH,GACd,OAAlBA,GAA4Ct7H,SAAlBs7H,GAAiD,aAAlBnoD,EAAOomD,QAElEpmD,EAAOt6B,KAAKpnC,KAAK2iF,MAAMt5D,aAAanB,OAAO2hG,GAE7CnoD,EAAO+mD,+BAMX55C,OAAM7mF,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,QAA0B,kBAAKtT,KAAK6D,QAAQ6T,QAAY,GAAoB,sBAMxH1X,MAAKygI,4BAQT92H,IAAK,cACL5E,MAAO,WAUL,GARI/E,KAAKq/H,YAAa,GACpBr/H,KAAK8/F,iBAIP9/F,KAAK64E,SAEL74E,KAAK8/H,OAAS,UACV9/H,KAAK6/H,cAAe,EAAM,CAC5B,GAAIvsH,GAAStT,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,OAC/CtT,MAAK2gI,mBACL3gI,KAAKyhI,kBAAkBnuH,GACvBtT,KAAKihI,mBACLjhI,KAAK0hI,mBAAmBpuH,EAAwB,iBAAKtT,KAAK6D,QAAQ6T,QAAY,GAAmB,iBAGjG1X,KAAKshI,iBAAiBthI,KAAKw/H,SAAUx/H,KAAKuhI,eAAehiF,KAAKv/C,OAIhEA,KAAK8hI,iBAAiB,UAAW9hI,KAAK+hI,eAAexiF,KAAKv/C,OAC1DA,KAAK8hI,iBAAiB,YAAa9hI,KAAKgiI,eAAeziF,KAAKv/C,OAC5DA,KAAK8hI,iBAAiB,SAAU9hI,KAAKiiI,iBAAiB1iF,KAAKv/C,OAC3DA,KAAK8hI,iBAAiB,YAAa9hI,KAAKgiI,eAAeziF,KAAKv/C,OAE5DA,KAAK8hI,iBAAiB,cAAe,cACrC9hI,KAAK8hI,iBAAiB,SAAU,iBAOlCn4H,IAAK,eACL5E,MAAO,WACL,GAAIy1E,GAASx6E,IAWb,IARIA,KAAKq/H,YAAa,GACpBr/H,KAAK8/F,iBAIP9/F,KAAK64E,SAEL74E,KAAK8/H,OAAS,WACV9/H,KAAK6/H,cAAe,EAAM,CAC5B,GAAIvsH,GAAStT,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,OAC/CtT,MAAK2gI,mBACL3gI,KAAKyhI,kBAAkBnuH,GACvBtT,KAAKihI,mBACLjhI,KAAK0hI,mBAAmBpuH,EAA4B,qBAAKtT,KAAK6D,QAAQ6T,QAAY,GAAuB,qBAGzG1X,KAAKshI,iBAAiBthI,KAAKw/H,SAAUx/H,KAAKuhI,eAAehiF,KAAKv/C,OAGhEA,KAAKkiI,kBAAoBliI,KAAKi8F,iBAAiBgF,mBAAmB,GACnC16F,SAA3BvG,KAAKkiI,mBACP,WACE,GAAI9gC,GAAO5mB,EAAOp7B,KAAKy7C,MAAMrgB,EAAO0nD,mBAGhCC,EAAkB3nD,EAAO4nD,kBAAkBhhC,EAAKhsF,KAAKwoB,EAAGwjE,EAAKhsF,KAAK6L,GAClEohH,EAAgB7nD,EAAO4nD,kBAAkBhhC,EAAKjsF,GAAGyoB,EAAGwjE,EAAKjsF,GAAG8L,EAEhEu5D,GAAOolD,aAAajlC,MAAMnzF,KAAK26H,EAAgB9hI,IAC/Cm6E,EAAOolD,aAAajlC,MAAMnzF,KAAK66H,EAAchiI,IAE7Cm6E,EAAOp7B,KAAKu7C,MAAMwnC,EAAgB9hI,IAAM8hI,EACxC3nD,EAAOp7B,KAAKw7C,YAAYpzF,KAAK26H,EAAgB9hI,IAC7Cm6E,EAAOp7B,KAAKu7C,MAAM0nC,EAAchiI,IAAMgiI,EACtC7nD,EAAOp7B,KAAKw7C,YAAYpzF,KAAK66H,EAAchiI,IAG3Cm6E,EAAOsnD,iBAAiB,UAAWtnD,EAAO8nD,kBAAkB/iF,KAAKi7B,IACjEA,EAAOsnD,iBAAiB,QAAS,cACjCtnD,EAAOsnD,iBAAiB,SAAU,cAClCtnD,EAAOsnD,iBAAiB,cAAetnD,EAAO+nD,sBAAsBhjF,KAAKi7B,IACzEA,EAAOsnD,iBAAiB,SAAUtnD,EAAOgoD,iBAAiBjjF,KAAKi7B,IAC/DA,EAAOsnD,iBAAiB,YAAatnD,EAAOioD,oBAAoBljF,KAAKi7B,IACrEA,EAAOsnD,iBAAiB,cAAe,cAIvCtnD,EAAOgnD,oBAAoB,gBAAiB,SAAUjwF,GACpD,GAAIotE,GAAYvd,EAAKkP,SAASoyB,oBAAoBnxF,EAC9C4wF,GAAgB56D,YAAa,IAC/B46D,EAAgBvkG,EAAI+gF,EAAUvpG,KAAKwoB,EACnCukG,EAAgBlhH,EAAI09F,EAAUvpG,KAAK6L,GAEjCohH,EAAc96D,YAAa,IAC7B86D,EAAczkG,EAAI+gF,EAAUxpG,GAAGyoB,EAC/BykG,EAAcphH,EAAI09F,EAAUxpG,GAAG8L,KAInCu5D,EAAOp7B,KAAKE,QAAQzH,KAAK,cAG3B73C,KAAKygI,4BAQT92H,IAAK,iBACL5E,MAAO,WACL,GAAI61E,GAAS56E,IAGTA,MAAKq/H,YAAa,GACpBr/H,KAAK8/F,iBAIP9/F,KAAK64E,SAEL74E,KAAK8/H,OAAS,QACd,IAAI6C,GAAgB3iI,KAAKi8F,iBAAiB+E,mBACtC4hC,EAAgB5iI,KAAKi8F,iBAAiBgF,mBACtC4hC,EAAiBt8H,MACrB,IAAIo8H,EAAcr8H,OAAS,EAAG,CAC5B,IAAK,GAAIG,GAAI,EAAGA,EAAIk8H,EAAcr8H,OAAQG,IACxC,GAAIzG,KAAKo/C,KAAKu7C,MAAMgoC,EAAcl8H,IAAI64F,aAAc,EAElD,WADAzY,OAAM7mF,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,QAA4B,oBAAKtT,KAAK6D,QAAQ6T,QAAY,GAAsB,mBAKrF,mBAA5B1X,MAAK6D,QAAQu8H,aACtByC,EAAiB7iI,KAAK6D,QAAQu8H,gBAEvBwC,GAAct8H,OAAS,GACO,kBAA5BtG,MAAK6D,QAAQw8H,aACtBwC,EAAiB7iI,KAAK6D,QAAQw8H,WAIlC,IAA8B,kBAAnBwC,GAA+B,CACxC,GAAI7qH,IAAS2iF,MAAOgoC,EAAe9nC,MAAO+nC,EAC1C,IAA8B,IAA1BC,EAAev8H,OAcjB,KAAM,IAAIU,OAAM,0EAbhB67H,GAAe7qH,EAAM,SAAU6pH,GACP,OAAlBA,GAA4Ct7H,SAAlBs7H,GAAiD,WAAlBjnD,EAAOklD,QAElEllD,EAAOx7B,KAAKpnC,KAAK6iF,MAAMx5D,aAAaM,OAAOkgG,EAAchnC,OACzDjgB,EAAOx7B,KAAKpnC,KAAK2iF,MAAMt5D,aAAaM,OAAOkgG,EAAclnC,OACzD/f,EAAOx7B,KAAKE,QAAQzH,KAAK,mBACzB+iC,EAAO6lD,2BAEP7lD,EAAOx7B,KAAKE,QAAQzH,KAAK,mBACzB+iC,EAAO6lD,gCAObzgI,MAAKo/C,KAAKpnC,KAAK6iF,MAAMx5D,aAAaM,OAAOihG,GACzC5iI,KAAKo/C,KAAKpnC,KAAK2iF,MAAMt5D,aAAaM,OAAOghG,GACzC3iI,KAAKo/C,KAAKE,QAAQzH,KAAK,mBACvB73C,KAAKygI,4BAWT92H,IAAK,SACL5E,MAAO,WACD/E,KAAK6D,QAAQgN,WAAY,GAE3B7Q,KAAK6/H,YAAa,EAElB7/H,KAAK8iI,kBACD9iI,KAAKq/H,YAAa,EACpBr/H,KAAK0gI,oBAEL1gI,KAAKygI,2BAGPzgI,KAAK+iI,yBAGL/iI,KAAK6/H,YAAa,MAStBl2H,IAAK,kBACL5E,MAAO,WAEwBwB,SAAzBvG,KAAKs/H,kBACPt/H,KAAKs/H,gBAAkBliG,SAASM,cAAc,OAC9C19B,KAAKs/H,gBAAgBv2H,UAAY,mBAC7B/I,KAAKq/H,YAAa,EACpBr/H,KAAKs/H,gBAAgBxwH,MAAMymE,QAAU,QAErCv1E,KAAKs/H,gBAAgBxwH,MAAMymE,QAAU,OAEvCv1E,KAAKyqC,OAAOD,MAAMlN,YAAYt9B,KAAKs/H,kBAIZ/4H,SAArBvG,KAAKu/H,cACPv/H,KAAKu/H,YAAcniG,SAASM,cAAc,OAC1C19B,KAAKu/H,YAAYx2H,UAAY,gBACzB/I,KAAKq/H,YAAa,EACpBr/H,KAAKu/H,YAAYzwH,MAAMymE,QAAU,OAEjCv1E,KAAKu/H,YAAYzwH,MAAMymE,QAAU,QAEnCv1E,KAAKyqC,OAAOD,MAAMlN,YAAYt9B,KAAKu/H,cAIfh5H,SAAlBvG,KAAKw/H,WACPx/H,KAAKw/H,SAAWpiG,SAASM,cAAc,OACvC19B,KAAKw/H,SAASz2H,UAAY,YAC1B/I,KAAKw/H,SAAS1wH,MAAMymE,QAAUv1E,KAAKs/H,gBAAgBxwH,MAAMymE,QACzDv1E,KAAKyqC,OAAOD,MAAMlN,YAAYt9B,KAAKw/H,cAYvC71H,IAAK,oBACL5E,MAAO,SAA2B64B,EAAG3c,GACnC,GAAIq/G,GAAmB3/H,EAAK0G,cAAerH,KAAK6D,QAAQy8H,iBAExDA,GAAiBjgI,GAAK,aAAeM,EAAKgF,aAC1C26H,EAAiBtjE,QAAS,EAC1BsjE,EAAiBpkD,SAAU,EAC3BokD,EAAiB1iG,EAAIA,EACrB0iG,EAAiBr/G,EAAIA,CAGrB,IAAI2a,GAAO57B,KAAKo/C,KAAKq8C,UAAUC,WAAW4kC,EAG1C,OAFA1kG,GAAK0nE,MAAMkB,aAAgB77F,KAAMi1B,EAAGiU,MAAOjU,EAAG/0B,IAAKoY,EAAGqtB,OAAQrtB,GAEvD2a,KAOTjyB,IAAK,oBACL5E,MAAO,WAEL/E,KAAK64E,SAGL74E,KAAK2gI,mBAGLhgI,EAAK2D,mBAAmBtE,KAAKu/H,YAG7B,IAAIjsH,GAAStT,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,QAC3CqjC,EAAS32C,KAAKgjI,cAAc,WAAY,oCAAqC1vH,EAAa,MAAKtT,KAAK6D,QAAQ6T,QAAY,GAAQ,KACpI1X,MAAKu/H,YAAYjiG,YAAYqZ,GAG7B32C,KAAKshI,iBAAiB3qF,EAAQ32C,KAAKuhI,eAAehiF,KAAKv/C,UAQzD2J,IAAK,SACL5E,MAAO,WAEL/E,KAAK8/H,QAAS,EAGV9/H,KAAK6/H,cAAe,IACtBl/H,EAAK2D,mBAAmBtE,KAAKu/H,aAC7B5+H,EAAK2D,mBAAmBtE,KAAKs/H,iBAG7Bt/H,KAAKijI,4BAIPjjI,KAAKkjI,iCAGLljI,KAAKmjI,sBAGLnjI,KAAKojI,yBAGLpjI,KAAKo/C,KAAKE,QAAQzH,KAAK,qBAQzBluC,IAAK,2BACL5E,MAAO,WAEL,GAAuC,GAAnC/E,KAAKy/H,oBAAoBn5H,OAAa,CACxC,IAAK,GAAIG,GAAI,EAAGA,EAAIzG,KAAKy/H,oBAAoBn5H,OAAQG,IACnDzG,KAAKy/H,oBAAoBh5H,GAAG04B,SAE9Bn/B,MAAKy/H,2BAST91H,IAAK,yBACL5E,MAAO,WAEL/E,KAAK64E,SAGLl4E,EAAK2D,mBAAmBtE,KAAKs/H,iBAC7B3+H,EAAK2D,mBAAmBtE,KAAKu/H,aAC7B5+H,EAAK2D,mBAAmBtE,KAAKw/H,UAGzBx/H,KAAKs/H,iBACPt/H,KAAKyqC,OAAOD,MAAM9lC,YAAY1E,KAAKs/H,iBAEjCt/H,KAAKu/H,aACPv/H,KAAKyqC,OAAOD,MAAM9lC,YAAY1E,KAAKu/H,aAEjCv/H,KAAKw/H,UACPx/H,KAAKyqC,OAAOD,MAAM9lC,YAAY1E,KAAKw/H,UAIrCx/H,KAAKs/H,gBAAkB/4H,OACvBvG,KAAKu/H,YAAch5H,OACnBvG,KAAKw/H,SAAWj5H,UASlBoD,IAAK,mBACL5E,MAAO,WACL,GAAIqE,GAAQ/C,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,EAAIA,UAAU,EAEhFrG,MAAK2gI,gBAAgB,mBAAqBv3H,GAASg0B,SAASM,cAAc,OAC1E19B,KAAK2gI,gBAAgB,mBAAqBv3H,GAAOL,UAAY,qBAC7D/I,KAAKs/H,gBAAgBhiG,YAAYt9B,KAAK2gI,gBAAgB,mBAAqBv3H,OAM7EO,IAAK,uBACL5E,MAAO,SAA8BuO,GACnC,GAAIqjC,GAAS32C,KAAKgjI,cAAc,UAAW,qBAAsB1vH,EAAgB,SAAKtT,KAAK6D,QAAQ6T,QAAY,GAAW,QAC1H1X,MAAKs/H,gBAAgBhiG,YAAYqZ,GACjC32C,KAAKshI,iBAAiB3qF,EAAQ32C,KAAKggG,YAAYzgD,KAAKv/C,UAGtD2J,IAAK,uBACL5E,MAAO,SAA8BuO,GACnC,GAAIqjC,GAAS32C,KAAKgjI,cAAc,UAAW,yBAA0B1vH,EAAgB,SAAKtT,KAAK6D,QAAQ6T,QAAY,GAAW,QAC9H1X,MAAKs/H,gBAAgBhiG,YAAYqZ,GACjC32C,KAAKshI,iBAAiB3qF,EAAQ32C,KAAKmgG,YAAY5gD,KAAKv/C,UAGtD2J,IAAK,wBACL5E,MAAO,SAA+BuO,GACpC,GAAIqjC,GAAS32C,KAAKgjI,cAAc,WAAY,sBAAuB1vH,EAAiB,UAAKtT,KAAK6D,QAAQ6T,QAAY,GAAY,SAC9H1X,MAAKs/H,gBAAgBhiG,YAAYqZ,GACjC32C,KAAKshI,iBAAiB3qF,EAAQ32C,KAAKigG,SAAS1gD,KAAKv/C,UAGnD2J,IAAK,wBACL5E,MAAO,SAA+BuO,GACpC,GAAIqjC,GAAS32C,KAAKgjI,cAAc,WAAY,sBAAuB1vH,EAAiB,UAAKtT,KAAK6D,QAAQ6T,QAAY,GAAY,SAC9H1X,MAAKs/H,gBAAgBhiG,YAAYqZ,GACjC32C,KAAKshI,iBAAiB3qF,EAAQ32C,KAAKogG,aAAa7gD,KAAKv/C,UAGvD2J,IAAK,sBACL5E,MAAO,SAA6BuO,GAClC,GAAIqjC,GAAS32C,KAAKgjI,cAAc,SAAU,wBAAyB1vH,EAAY,KAAKtT,KAAK6D,QAAQ6T,QAAY,GAAO,IACpH1X,MAAKs/H,gBAAgBhiG,YAAYqZ,GACjC32C,KAAKshI,iBAAiB3qF,EAAQ32C,KAAKqgG,eAAe9gD,KAAKv/C,UAGzD2J,IAAK,oBACL5E,MAAO,SAA2BuO,GAChC,GAAIqjC,GAAS32C,KAAKgjI,cAAc,OAAQ,sBAAuB1vH,EAAa,MAAKtT,KAAK6D,QAAQ6T,QAAY,GAAQ,KAClH1X,MAAKs/H,gBAAgBhiG,YAAYqZ,GACjC32C,KAAKshI,iBAAiB3qF,EAAQ32C,KAAKygI,uBAAuBlhF,KAAKv/C,UAGjE2J,IAAK,gBACL5E,MAAO,SAAuB1E,EAAI0I,EAAWm1B,GAC3C,GAAImlG,GAAiBh9H,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,YAAcA,UAAU,EAQnG,OANArG,MAAK2gI,gBAAgBtgI,EAAK,OAAS+8B,SAASM,cAAc,OAC1D19B,KAAK2gI,gBAAgBtgI,EAAK,OAAO0I,UAAYA,EAC7C/I,KAAK2gI,gBAAgBtgI,EAAK,SAAW+8B,SAASM,cAAc,OAC5D19B,KAAK2gI,gBAAgBtgI,EAAK,SAAS0I,UAAYs6H,EAC/CrjI,KAAK2gI,gBAAgBtgI,EAAK,SAASyuC,UAAY5Q,EAC/Cl+B,KAAK2gI,gBAAgBtgI,EAAK,OAAOi9B,YAAYt9B,KAAK2gI,gBAAgBtgI,EAAK,UAChEL,KAAK2gI,gBAAgBtgI,EAAK,UAGnCsJ,IAAK,qBACL5E,MAAO,SAA4Bm5B,GACjCl+B,KAAKs/H,gBAAgBhiG,YAAYt9B,KAAKgjI,cAAc,cAAe,sBAAuB9kG,OAY5Fv0B,IAAK,sBACL5E,MAAO,SAA6B+F,EAAOw4H,GACzCtjI,KAAK2/H,wBAAwBn4H,MAAOsD,MAAOA,EAAOy4H,cAAeD,IACjEtjI,KAAKo/C,KAAKE,QAAQlgB,GAAGt0B,EAAOw4H,MAU9B35H,IAAK,mBACL5E,MAAO,SAA0By+H,EAAgBF,GAC/C,GAAiD/8H,SAA7CvG,KAAKo/C,KAAK27C,eAAeyoC,GAI3B,KAAM,IAAIx8H,OAAM,qDAAuDw8H,EAAiB,kBAAoB/gG,KAAKC,UAAUt7B,OAAO6H,KAAKjP,KAAKo/C,KAAK27C,iBAHjJ/6F,MAAK0/H,qBAAqB8D,GAAkBxjI,KAAKo/C,KAAK27C,eAAeyoC,GACrExjI,KAAKo/C,KAAK27C,eAAeyoC,GAAkBF,KAY/C35H,IAAK,sBACL5E,MAAO,WACL,IAAK,GAAI0+H,KAAgBzjI,MAAK0/H,qBACxB1/H,KAAK0/H,qBAAqB15H,eAAey9H,KAC3CzjI,KAAKo/C,KAAK27C,eAAe0oC,GAAgBzjI,KAAK0/H,qBAAqB+D,SAC5DzjI,MAAK0/H,qBAAqB+D,GAGrCzjI,MAAK0/H,2BAQP/1H,IAAK,yBACL5E,MAAO,WACL,IAAK,GAAI0B,GAAI,EAAGA,EAAIzG,KAAK2/H,wBAAwBr5H,OAAQG,IAAK,CAC5D,GAAIi9H,GAAY1jI,KAAK2/H,wBAAwBl5H,GAAGqE,MAC5Cy4H,EAAgBvjI,KAAK2/H,wBAAwBl5H,GAAG88H,aACpDvjI,MAAKo/C,KAAKE,QAAQ/f,IAAImkG,EAAWH,GAEnCvjI,KAAK2/H,8BASPh2H,IAAK,mBACL5E,MAAO,SAA0B4+H,EAAYJ,GAC3C,GAAIn/E,GAAS,GAAIpgD,GAAO2/H,KACxBrlE,GAAW3C,QAAQvX,EAAQm/E,GAC3BvjI,KAAKy/H,oBAAoBj4H,KAAK48C,MAQhCz6C,IAAK,iCACL5E,MAAO,WAEL,IAAK,GAAI0B,GAAI,EAAGA,EAAIzG,KAAK4/H,aAAa/kC,MAAMv0F,OAAQG,IAAK,CACvDzG,KAAKo/C,KAAKy7C,MAAM76F,KAAK4/H,aAAa/kC,MAAMp0F,IAAIypG,mBACrClwG,MAAKo/C,KAAKy7C,MAAM76F,KAAK4/H,aAAa/kC,MAAMp0F,GAC/C,IAAIm9H,GAAgB5jI,KAAKo/C,KAAK07C,YAAYvzF,QAAQvH,KAAK4/H,aAAa/kC,MAAMp0F,GACpD,MAAlBm9H,GACF5jI,KAAKo/C,KAAK07C,YAAYzxF,OAAOu6H,EAAe,GAKhD,IAAK,GAAIn9H,GAAI,EAAGA,EAAIzG,KAAK4/H,aAAajlC,MAAMr0F,OAAQG,IAAK,OAChDzG,MAAKo/C,KAAKu7C,MAAM36F,KAAK4/H,aAAajlC,MAAMl0F,GAC/C,IAAIo9H,GAAgB7jI,KAAKo/C,KAAKw7C,YAAYrzF,QAAQvH,KAAK4/H,aAAajlC,MAAMl0F,GACpD,MAAlBo9H,GACF7jI,KAAKo/C,KAAKw7C,YAAYvxF,OAAOw6H,EAAe,GAIhD7jI,KAAK4/H,cAAiBjlC,SAAWE,aAWnClxF,IAAK,oBACL5E,MAAO,SAA2B+F,GAChC9K,KAAKi8F,iBAAiB4C,cACtB7+F,KAAK8jI,UAAY9jI,KAAKo/C,KAAKq8C,UAAUxiC,WAAWnuD,EAAMurC,QACtDr2C,KAAK8jI,UAAUn7F,YAAchoC,EAAKgG,UAAW3G,KAAKo/C,KAAKw8C,KAAKjzD,gBAS9Dh/B,IAAK,wBACL5E,MAAO,SAA+B+F,GACpC,GAAImwD,GAAUj7D,KAAK8jI,UACf9S,EAAahxH,KAAKi8F,iBAAiB01B,yBAAyB12D,GAC5D7lD,EAAOpV,KAAKo/C,KAAKu7C,MAAM36F,KAAK4/H,aAAajlC,MAAM,IAC/CxlF,EAAKnV,KAAKo/C,KAAKu7C,MAAM36F,KAAK4/H,aAAajlC,MAAM,IAC7CyG,EAAOphG,KAAKo/C,KAAKy7C,MAAM76F,KAAKkiI,kBAChCliI,MAAK+/H,oBAAsBx5H,MAE3B,IAAIw9H,GAAa3uH,EAAKi8G,kBAAkBL,GACpCgT,EAAW7uH,EAAGk8G,kBAAkBL,EAEhC+S,MAAe,GACjB/jI,KAAK+/H,oBAAsB3qH,EAC3BgsF,EAAKkP,SAASl7F,KAAOA,GACZ4uH,KAAa,IACtBhkI,KAAK+/H,oBAAsB5qH,EAC3BisF,EAAKkP,SAASn7F,GAAKA;AAGrBnV,KAAKo/C,KAAKE,QAAQzH,KAAK,cASzBluC,IAAK,mBACL5E,MAAO,SAA0B+F,GAC/B9K,KAAKo/C,KAAKE,QAAQzH,KAAK,iBACvB,IAAIojB,GAAUj7D,KAAKo/C,KAAKq8C,UAAUxiC,WAAWnuD,EAAMurC,QAC/C9f,EAAMv2B,KAAKyqC,OAAO20D,YAAYnkC,EAElC,IAAiC10D,SAA7BvG,KAAK+/H,oBACP//H,KAAK+/H,oBAAoBniG,EAAIrH,EAAIqH,EACjC59B,KAAK+/H,oBAAoB9+G,EAAIsV,EAAItV,MAC5B,CAEL,GAAIq2B,GAAQ2jB,EAAQr9B,EAAI59B,KAAK8jI,UAAUlmG,EACnC2Z,EAAQ0jB,EAAQh6C,EAAIjhB,KAAK8jI,UAAU7iH,CACvCjhB,MAAKo/C,KAAKw8C,KAAKjzD,aAAgB/K,EAAG59B,KAAK8jI,UAAUn7F,YAAY/K,EAAI0Z,EAAOr2B,EAAGjhB,KAAK8jI,UAAUn7F,YAAY1nB,EAAIs2B,GAE5Gv3C,KAAKo/C,KAAKE,QAAQzH,KAAK,cASzBluC,IAAK,sBACL5E,MAAO,SAA6B+F,GAClC,GAAImwD,GAAUj7D,KAAKo/C,KAAKq8C,UAAUxiC,WAAWnuD,EAAMurC,QAC/C26E,EAAahxH,KAAKi8F,iBAAiB01B,yBAAyB12D,GAC5DmmC,EAAOphG,KAAKo/C,KAAKy7C,MAAM76F,KAAKkiI,kBAGhC,IAAiC37H,SAA7BvG,KAAK+/H,oBAAT,CAMA,IAAK,GAFDkE,GAAqBjkI,KAAKi8F,iBAAiB+3B,4BAA4BhD,GACvEp1F,EAAOr1B,OACFE,EAAIw9H,EAAmB39H,OAAS,EAAGG,GAAK,EAAGA,IAClD,GAAIw9H,EAAmBx9H,KAAOzG,KAAK+/H,oBAAoB1/H,GAAI,CACzDu7B,EAAO57B,KAAKo/C,KAAKu7C,MAAMspC,EAAmBx9H,GAC1C,OAKJ,GAAaF,SAATq1B,GAAmDr1B,SAA7BvG,KAAK+/H,oBAC7B,GAAInkG,EAAK0jE,aAAc,EACrBzY,MAAM7mF,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,QAAyB,iBAAKtT,KAAK6D,QAAQ6T,QAAY,GAAmB,qBAC7G,CACL,GAAItC,GAAOpV,KAAKo/C,KAAKu7C,MAAM36F,KAAK4/H,aAAajlC,MAAM,GAC/C36F,MAAK+/H,oBAAoB1/H,KAAO+U,EAAK/U,GACvCL,KAAKkkI,iBAAiBtoG,EAAKv7B,GAAI+gG,EAAKjsF,GAAG9U,IAEvCL,KAAKkkI,iBAAiB9iC,EAAKhsF,KAAK/U,GAAIu7B,EAAKv7B,QAI7C+gG,GAAK0O,iBACL9vG,KAAKo/C,KAAKE,QAAQzH,KAAK,iBAEzB73C,MAAKo/C,KAAKE,QAAQzH,KAAK,eAazBluC,IAAK,iBACL5E,MAAO,SAAwB+F,GAE7B,IAAI,GAAIzF,OAAOyC,UAAY9H,KAAK4sH,UAAY,IAAK,CAC/C5sH,KAAK8jI,UAAY9jI,KAAKo/C,KAAKq8C,UAAUxiC,WAAWnuD,EAAMurC,QACtDr2C,KAAK8jI,UAAUn7F,YAAchoC,EAAKgG,UAAW3G,KAAKo/C,KAAKw8C,KAAKjzD,YAE5D,IAAIsyB,GAAUj7D,KAAK8jI,UACfloG,EAAO57B,KAAKi8F,iBAAiBiF,UAAUjmC,EAE3C,IAAa10D,SAATq1B,EACF,GAAIA,EAAK0jE,aAAc,EACrBzY,MAAM7mF,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,QAAyB,iBAAKtT,KAAK6D,QAAQ6T,QAAY,GAAmB,qBAC7G,CAEL,GAAIysH,GAAankI,KAAKoiI,kBAAkBxmG,EAAKgC,EAAGhC,EAAK3a,EACrDjhB,MAAKo/C,KAAKu7C,MAAMwpC,EAAW9jI,IAAM8jI,EACjCnkI,KAAKo/C,KAAKw7C,YAAYpzF,KAAK28H,EAAW9jI,GAGtC,IAAI+jI,GAAiBpkI,KAAKo/C,KAAKq8C,UAAUE,YACvCt7F,GAAI,iBAAmBM,EAAKgF,aAC5ByP,KAAMwmB,EAAKv7B,GACX8U,GAAIgvH,EAAW9jI,GACf67E,SAAS,EACTozB,QACEz+F,SAAS,EACTjJ,KAAM,aACN4nG,UAAW,KAGfxvG,MAAKo/C,KAAKy7C,MAAMupC,EAAe/jI,IAAM+jI,EACrCpkI,KAAKo/C,KAAK07C,YAAYtzF,KAAK48H,EAAe/jI,IAE1CL,KAAK4/H,aAAajlC,MAAMnzF,KAAK28H,EAAW9jI,IACxCL,KAAK4/H,aAAa/kC,MAAMrzF,KAAK48H,EAAe/jI,IAGhDL,KAAK4sH,WAAY,GAAIvnH,OAAOyC,cAIhC6B,IAAK,mBACL5E,MAAO,SAA0B+F,GAC/B,GAAImwD,GAAUj7D,KAAKo/C,KAAKq8C,UAAUxiC,WAAWnuD,EAAMurC,OACnD,IAAmC9vC,SAA/BvG,KAAK4/H,aAAajlC,MAAM,GAAkB,CAC5C,GAAIwpC,GAAankI,KAAKo/C,KAAKu7C,MAAM36F,KAAK4/H,aAAajlC,MAAM,GACzDwpC,GAAWvmG,EAAI59B,KAAKyqC,OAAOshF,qBAAqB9wD,EAAQr9B,GACxDumG,EAAWljH,EAAIjhB,KAAKyqC,OAAOuhF,qBAAqB/wD,EAAQh6C,GACxDjhB,KAAKo/C,KAAKE,QAAQzH,KAAK,eAClB,CACL,GAAIP,GAAQ2jB,EAAQr9B,EAAI59B,KAAK8jI,UAAUlmG,EACnC2Z,EAAQ0jB,EAAQh6C,EAAIjhB,KAAK8jI,UAAU7iH,CACvCjhB,MAAKo/C,KAAKw8C,KAAKjzD,aAAgB/K,EAAG59B,KAAK8jI,UAAUn7F,YAAY/K,EAAI0Z,EAAOr2B,EAAGjhB,KAAK8jI,UAAUn7F,YAAY1nB,EAAIs2B,OAU9G5tC,IAAK,iBACL5E,MAAO,SAAwB+F,GAC7B,GAAImwD,GAAUj7D,KAAKo/C,KAAKq8C,UAAUxiC,WAAWnuD,EAAMurC,QAC/C26E,EAAahxH,KAAKi8F,iBAAiB01B,yBAAyB12D,GAG5DopE,EAAgB99H,MACeA,UAA/BvG,KAAK4/H,aAAa/kC,MAAM,KAC1BwpC,EAAgBrkI,KAAKo/C,KAAKy7C,MAAM76F,KAAK4/H,aAAa/kC,MAAM,IAAI+J,OAM9D,KAAK,GAFDq/B,GAAqBjkI,KAAKi8F,iBAAiB+3B,4BAA4BhD,GACvEp1F,EAAOr1B,OACFE,EAAIw9H,EAAmB39H,OAAS,EAAGG,GAAK,EAAGA,IAElD,GAA+D,KAA3DzG,KAAK4/H,aAAajlC,MAAMpzF,QAAQ08H,EAAmBx9H,IAAY,CACjEm1B,EAAO57B,KAAKo/C,KAAKu7C,MAAMspC,EAAmBx9H,GAC1C,OAKJzG,KAAKkjI,iCAGQ38H,SAATq1B,IACEA,EAAK0jE,aAAc,EACrBzY,MAAM7mF,KAAK6D,QAAQ6T,QAAQ1X,KAAK6D,QAAQyP,QAAyB,iBAAKtT,KAAK6D,QAAQ6T,QAAY,GAAmB,iBAE3EnR,SAAnCvG,KAAKo/C,KAAKu7C,MAAM0pC,IAA6D99H,SAA7BvG,KAAKo/C,KAAKu7C,MAAM/+D,EAAKv7B,KACvEL,KAAKskI,gBAAgBD,EAAezoG,EAAKv7B,KAI/CL,KAAKo/C,KAAKE,QAAQzH,KAAK,cAWzBluC,IAAK,kBACL5E,MAAO,SAAyBw/H,GAC9B,GAAIvpD,GAASh7E,KAETwkI,GACFnkI,GAAIM,EAAKgF,aACTi4B,EAAG2mG,EAAUtpE,QAAQxwB,OAAO7M,EAC5B3c,EAAGsjH,EAAUtpE,QAAQxwB,OAAOxpB,EAC5Bid,MAAO,MAGT,IAAoC,kBAAzBl+B,MAAK6D,QAAQo8H,QAAwB,CAC9C,GAAoC,IAAhCjgI,KAAK6D,QAAQo8H,QAAQ35H,OASvB,KAAM,IAAIU,OAAM,sEARhBhH,MAAK6D,QAAQo8H,QAAQuE,EAAa,SAAU3C,GACpB,OAAlBA,GAA4Ct7H,SAAlBs7H,GAAiD,YAAlB7mD,EAAO8kD,SAElE9kD,EAAO57B,KAAKpnC,KAAK2iF,MAAMt5D,aAAapb,IAAI47G,GACxC7mD,EAAOylD,gCAQbzgI,MAAKo/C,KAAKpnC,KAAK2iF,MAAMt5D,aAAapb,IAAIu+G,GACtCxkI,KAAKygI,4BAUT92H,IAAK,kBACL5E,MAAO,SAAyB0/H,EAAcC,GAC5C,GAAIvpD,GAASn7E,KAETwkI,GAAgBpvH,KAAMqvH,EAActvH,GAAIuvH,EAC5C,IAAoC,kBAAzB1kI,MAAK6D,QAAQq8H,QAAwB,CAC9C,GAAoC,IAAhClgI,KAAK6D,QAAQq8H,QAAQ55H,OAUvB,KAAM,IAAIU,OAAM,0EAThBhH,MAAK6D,QAAQq8H,QAAQsE,EAAa,SAAU3C,GACpB,OAAlBA,GAA4Ct7H,SAAlBs7H,GAAiD,YAAlB1mD,EAAO2kD,SAElE3kD,EAAO/7B,KAAKpnC,KAAK6iF,MAAMx5D,aAAapb,IAAI47G,GACxC1mD,EAAO8gB,iBAAiB4C,cACxB1jB,EAAOslD,gCAObzgI,MAAKo/C,KAAKpnC,KAAK6iF,MAAMx5D,aAAapb,IAAIu+G,GACtCxkI,KAAKi8F,iBAAiB4C,cACtB7+F,KAAKygI,4BAUT92H,IAAK,mBACL5E,MAAO,SAA0B0/H,EAAcC,GAC7C,GAAI9F,GAAS5+H,KAETwkI,GAAgBnkI,GAAIL,KAAKkiI,kBAAmB9sH,KAAMqvH,EAActvH,GAAIuvH,EACxE,IAAqC,kBAA1B1kI,MAAK6D,QAAQs8H,SAAyB,CAC/C,GAAqC,IAAjCngI,KAAK6D,QAAQs8H,SAAS75H,OAaxB,KAAM,IAAIU,OAAM,wEAZhBhH,MAAK6D,QAAQs8H,SAASqE,EAAa,SAAU3C,GACrB,OAAlBA,GAA4Ct7H,SAAlBs7H,GAAiD,aAAlBjD,EAAOkB,QAElElB,EAAOx/E,KAAKy7C,MAAM2pC,EAAYnkI,IAAIyvG,iBAClC8uB,EAAOx/E,KAAKE,QAAQzH,KAAK,aAEzB+mF,EAAOx/E,KAAKpnC,KAAK6iF,MAAMx5D,aAAanB,OAAO2hG,GAC3CjD,EAAO3iC,iBAAiB4C,cACxB+/B,EAAO6B,gCAObzgI,MAAKo/C,KAAKpnC,KAAK6iF,MAAMx5D,aAAanB,OAAOskG,GACzCxkI,KAAKi8F,iBAAiB4C,cACtB7+F,KAAKygI,6BAKJrB,IAGTx/H,GAAQ,WAAaw/H,EACrBv/H,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAWrBwH,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAET,IAAIub,GAAS,SACT6qE,EAAU,UACV/0E,EAAS,SACT3M,EAAQ,QACRrF,EAAS,SACTw1C,EAAM,MACNwxC,EAAM,MAEN5nF,GACFy8D,WACEpvD,SAAWs6E,UAASA,GACpB3rD,QAAU2rD,UAASA,EAAS7qE,OAAQA,EAAQ7W,MAAOA,EAAO4hF,WAAY,YACtEjnD,WAAawV,IAAKA,GAClBy+B,YAAc8S,UAASA,GACvBrB,UAAY1lF,OAAQA,EAAQ+mF,UAASA,EAAS7qE,OAAQA,EAAQ7W,MAAOA,EAAO4hF,WAAY,aAE1FwP,OACEmU,QACE75F,IAAMtE,SAAWs6E,UAASA,GAAW8jB,aAAe74F,OAAQA,GAAU0zE,UAAY1lF,OAAQA,EAAQ+mF,UAASA,IAC3G55E,QAAUV,SAAWs6E,UAASA,GAAW8jB,aAAe74F,OAAQA,GAAU0zE,UAAY1lF,OAAQA,EAAQ+mF,UAASA,IAC/G/1E,MAAQvE,SAAWs6E,UAASA,GAAW8jB,aAAe74F,OAAQA,GAAU0zE,UAAY1lF,OAAQA,EAAQ+mF,UAASA,IAC7GrB,UAAYxpE,QAAS,OAAQ,KAAM,UAAWlc,OAAQA,IAExD8qG,oBAAsB/jB,UAASA,GAC/B1+E,OACEA,OAAS6T,OAAQA,GACjBnS,WAAamS,OAAQA,GACrBlS,OAASkS,OAAQA,GACjB4lC,SAAW5lC,QAAS,OAAQ,KAAM,QAAS6qE,UAASA,GACpDz+E,SAAW0J,OAAQA,GACnB0zE,UAAY1lF,OAAQA,EAAQkc,OAAQA,IAEtC0rF,QAAU7gB,UAASA,EAAS1hF,MAAOA,GACnCsoC,MACEtlC,OAAS6T,OAAQA,GACjB2d,MAAQ7nB,OAAQA,GAChBusF,MAAQriF,OAAQA,GAChBrS,YAAcqS,OAAQA,GACtBqnB,aAAevxB,OAAQA,GACvBwsF,aAAetiF,OAAQA,GACvBoiD,OAASpiD,QAAS,aAAc,MAAO,SAAU,WACjDwpE,UAAY1lF,OAAQA,EAAQkc,OAAQA,IAEtC08C,QAAUmuB,UAASA,GACnBgkB,YAAc9jB,WAAY,WAAYj1E,OAAQA,GAC9C8nB,OAAS5d,OAAQA,EAAQ/Z,UAAa,aACtCu8F,oBAAsB3X,UAASA,GAC/B7kF,QAAU8P,OAAQA,EAAQ7P,UAAa,aACvC21E,SAAWiP,UAASA,GACpB8X,SACEr+F,KAAOwR,OAAQA,GACfvR,KAAOuR,OAAQA,GACf8nB,OACErtB,SAAWs6E,UAASA,GACpBvmF,KAAOwR,OAAQA,GACfvR,KAAOuR,OAAQA,GACf8sF,YAAc9sF,OAAQA,GACtB+sF,eAAiB/sF,OAAQA,GACzB0zE,UAAY1lF,OAAQA,EAAQ+mF,UAASA,IAEvCiY,uBAAyB/X,WAAY,YACrCvB,UAAY1lF,OAAQA,IAEtBgrG,gBAAkB/jB,WAAY,WAAYj1E,OAAQA,GAClDi5F,mBAAqBj5F,OAAQA,GAC7BitF,QACExyF,SAAWs6E,UAASA,GACpB1+E,OAAS6T,OAAQA,GACjB2d,MAAQ7nB,OAAQA,GAChBwnB,GAAKxnB,OAAQA,GACb6K,GAAK7K,OAAQA,GACb0zE,UAAY1lF,OAAQA,EAAQ+mF,UAASA,IAEvCmkB,QACEz+F,SAAWs6E,UAASA,GACpBvjF,MAAQ0Y,QAAS,UAAW,aAAc,WAAY,gBAAiB,gBAAiB,aAAc,WAAY,WAAY,YAAa,gBAC3IkvF,WAAap5F,OAAQA,GACrBm5F,gBAAkBjvF,QAAS,aAAc,WAAY,QAAS6qE,UAASA,GACvErB,UAAY1lF,OAAQA,EAAQ+mF,UAASA,IAEvCzqB,OAASpgD,OAAQA,EAAQ/Z,UAAa,aACtCi4B,OAASpoB,OAAQA,GACjBrR,OAASqR,OAAQA,EAAQ7P,UAAa,aACtCujF,UAAY1lF,OAAQA,IAEtBs6C,QACEojD,kBAAoB3W,UAASA,GAC7BvB,QAAS,4CACTE,UAAY1lF,OAAQA,IAEtBm6F,aACEgwB,WAAapjC,UAASA,GACtBqjC,UAAYrjC,UAASA,GACrBo+B,iBAAmBp+B,UAASA,GAC5Bq+B,iBAAmBr+B,UAASA,GAC5B/8E,OAAS+8E,UAASA,GAClBsjC,UACE59G,SAAWs6E,UAASA,GACpBujC,OAAS9wF,GAAKxnB,OAAQA,GAAU6K,GAAK7K,OAAQA,GAAUglD,MAAQhlD,OAAQA,GAAU0zE,UAAY1lF,OAAQA,IACrGuqH,cAAgBxjC,UAASA,GACzBrB,UAAY1lF,OAAQA,EAAQ+mF,UAASA,IAEvCloB,aAAekoB,UAASA,GACxByjC,mBAAqBzjC,UAASA,GAC9BnoB,YAAcmoB,UAASA,GACvB+nC,sBAAwB/nC,UAASA,GACjCgoC,qBAAuBhoC,UAASA,GAChC0jC,cAAgBz4G,OAAQA,GACxB04G,UAAY3jC,UAASA,GACrBrB,UAAY1lF,OAAQA,IAEtBk6F,QACE2hB,YAAc15G,UAAa,YAAa6P,OAAQA,GAChD6+G,gBAAkB9pC,UAASA,GAC3B+pC,cACErkH,SAAWs6E,UAASA,GACpBgqC,iBAAmB/+G,OAAQA,GAC3Bg/G,aAAeh/G,OAAQA,GACvBi/G,aAAej/G,OAAQA,GACvBk/G,eAAiBnqC,UAASA,GAC1BoqC,kBAAoBpqC,UAASA,GAC7BzgE,WAAapK,QAAS,KAAM,KAAM,KAAM,OACxCk1G,YAAcl1G,QAAS,UAAW,aAClCwpE,UAAY1lF,OAAQA,EAAQ+mF,UAASA,IAEvCrB,UAAY1lF,OAAQA,IAEtBy4F,cACEhsF,SAAWs6E,UAASA,GACpB60C,iBAAmB70C,UAASA,GAC5B80C,SAAW90C,UAASA,EAASE,WAAY,YACzC60C,SAAW/0C,UAASA,EAASE,WAAY,YACzC4U,UAAY5U,WAAY,YACxB80C,UAAYh1C,UAASA,EAASE,WAAY,YAC1C+0C,YAAcj1C,UAASA,EAASE,WAAY,YAC5Cg1C,YAAcl1C,UAASA,EAASE,WAAY,YAC5Ci1C,iBAAkB,4CAClBx2C,UAAY1lF,OAAQA,EAAQ+mF,UAASA,IAEvCwP,OACE5vD,aAAe30B,OAAQA,GACvBosF,qBAAuBpsF,OAAQA,EAAQ7P,UAAa,aACpDk8F,aAAeniF,OAAQA,EAAQ/Z,UAAa,aAC5CkG,OACEyB,QAAUoS,OAAQA,GAClBrS,YAAcqS,OAAQA,GACtBnS,WACED,QAAUoS,OAAQA,GAClBrS,YAAcqS,OAAQA,GACtBwpE,UAAY1lF,OAAQA,EAAQkc,OAAQA,IAEtClS,OACEF,QAAUoS,OAAQA,GAClBrS,YAAcqS,OAAQA,GACtBwpE,UAAY1lF,OAAQA,EAAQkc,OAAQA,IAEtCwpE,UAAY1lF,OAAQA,EAAQkc,OAAQA,IAEtCoiF,OACE9kE,GAAKutD,UAASA,GACdlqE,GAAKkqE,UAASA,GACdrB,UAAY1lF,OAAQA,EAAQ+mF,UAASA,IAEvCp5C,MACEtlC,OAAS6T,OAAQA,GACjB2d,MAAQ7nB,OAAQA,GAChBusF,MAAQriF,OAAQA,GAChBrS,YAAcqS,OAAQA,GACtBqnB,aAAevxB,OAAQA,GACvBwsF,aAAetiF,OAAQA,GACvBwpE,UAAY1lF,OAAQA,EAAQkc,OAAQA,IAEtC4iC,OAAS5iC,OAAQA,EAAQlK,OAAQA,EAAQ7P,UAAa,aACtDy2D,QAAUmuB,UAASA,GACnB0L,MACE8L,MAAQriF,OAAQA,GAChBzI,MAAQyI,OAAQA,GAChB2d,MAAQ7nB,OAAQA,GAChB3J,OAAS6T,OAAQA,GACjBwpE,UAAY1lF,OAAQA,IAEtB/D,IAAMigB,OAAQA,EAAQlK,OAAQA,GAC9BysF,OAASviF,OAAQA,EAAQ/Z,UAAa,aACtC23B,OAAS5d,OAAQA,EAAQ/Z,UAAa,aACtCu8F,oBAAsB3X,UAASA,GAC/B4X,OAAS3sF,OAAQA,EAAQ7P,UAAa,aACtCy8F,MAAQ5sF,OAAQA,GAChB8lE,SAAWiP,UAASA,GACpB8X,SACEr+F,KAAOwR,OAAQA,GACfvR,KAAOuR,OAAQA,GACf8nB,OACErtB,SAAWs6E,UAASA,GACpBvmF,KAAOwR,OAAQA,GACfvR,KAAOuR,OAAQA,GACf8sF,YAAc9sF,OAAQA,GACtB+sF,eAAiB/sF,OAAQA,GACzB0zE,UAAY1lF,OAAQA,EAAQ+mF,UAASA,IAEvCiY,uBAAyB/X,WAAY,YACrCvB,UAAY1lF,OAAQA,IAEtBi/F,QACExyF,SAAWs6E,UAASA,GACpB1+E,OAAS6T,OAAQA,GACjB2d,MAAQ7nB,OAAQA,GAChBwnB,GAAKxnB,OAAQA,GACb6K,GAAK7K,OAAQA,GACb0zE,UAAY1lF,OAAQA,EAAQ+mF,UAASA,IAEvCmY,OAAShjF,QAAS,UAAW,SAAU,WAAY,MAAO,OAAQ,QAAS,gBAAiB,UAAW,MAAO,OAAQ,WAAY,eAAgB,SAAU,SAC5JijF,iBACEC,cAAgBrY,UAASA,EAAS1hF,MAAOA,GACzCowC,cAAgBzjC,OAAQA,GACxBqtF,cAAgBtY,UAASA,GACzBuY,oBAAsBvY,UAASA,GAC/BrB,UAAY1lF,OAAQA,IAEtB65B,MAAQ7nB,OAAQA,GAChBsqD,OAASpgD,OAAQA,EAAQ/Z,UAAa,aACtCxB,OAASqR,OAAQA,EAAQ7P,UAAa,aACtCq3B,GAAKxnB,OAAQA,GACb6K,GAAK7K,OAAQA,GACb0zE,UAAY1lF,OAAQA,IAEtB83E,SACErrE,SAAWs6E,UAASA,GACpBixB,WACEE,uBAAyBlmG,OAAQA,GACjCmmG,gBAAkBnmG,OAAQA,GAC1BomG,cAAgBpmG,OAAQA,GACxBqmG,gBAAkBrmG,OAAQA,GAC1BsmG,SAAWtmG,OAAQA,GACnBumG,cAAgBvmG,OAAQA,GACxB0zE,UAAY1lF,OAAQA,IAEtBw4G,kBACEN,uBAAyBlmG,OAAQA,GACjCmmG,gBAAkBnmG,OAAQA,GAC1BomG,cAAgBpmG,OAAQA,GACxBqmG,gBAAkBrmG,OAAQA,GAC1BsmG,SAAWtmG,OAAQA,GACnBumG,cAAgBvmG,OAAQA,GACxB0zE,UAAY1lF,OAAQA,IAEtBy4G,WACEN,gBAAkBnmG,OAAQA,GAC1BomG,cAAgBpmG,OAAQA,GACxBqmG,gBAAkBrmG,OAAQA,GAC1B0mG,cAAgB1mG,OAAQA,GACxBsmG,SAAWtmG,OAAQA,GACnB0zE,UAAY1lF,OAAQA,IAEtB24G,uBACER,gBAAkBnmG,OAAQA,GAC1BomG,cAAgBpmG,OAAQA,GACxBqmG,gBAAkBrmG,OAAQA,GAC1B0mG,cAAgB1mG,OAAQA,GACxBsmG,SAAWtmG,OAAQA,GACnB0zE,UAAY1lF,OAAQA,IAEtB44G,aAAe5mG,OAAQA,GACvB6mG,aAAe7mG,OAAQA,GACvB+lE,QAAU77D,QAAS,YAAa,YAAa,wBAAyB,qBACtE48F,eACErsG,SAAWs6E,UAASA,GACpBgyB,YAAc/mG,OAAQA,GACtBgnG,gBAAkBhnG,OAAQA,GAC1BinG,kBAAoBlyB,UAASA,GAC7BpqC,KAAOoqC,UAASA,GAChBrB,UAAY1lF,OAAQA,EAAQ+mF,UAASA,IAEvCmyB,UAAYlnG,OAAQA,GACpBwlG,kBAAoBzwB,UAASA,GAC7BrB,UAAY1lF,OAAQA,EAAQ+mF,UAASA,IAIvCtsC,YAAcssC,UAASA,GACvBvrB,YAAcurB,UAASA,GACvB73E,QAAUgN,OAAQA,GAClB5I,SACEkyE,SAAWwB,IAAKA,GAChBtB,UAAY1lF,OAAQA,IAEtBq6B,QAAUne,OAAQA,GAClBke,OAASle,OAAQA,GACjBwpE,UAAY1lF,OAAQA,GAGtBZ,GAAWk7C,OAAOkrC,QAAUpmF,EAAWm3F,MACvCn3F,EAAWq5F,aAAayjC,iBAAmB98H,EAAWm3F,KAEtD,IAAIr5C,IACFq5C,OACE5vD,aAAc,EAAG,EAAG,GAAI,GACxBy3D,qBAAsB,EAAG,EAAG,GAAI,GAChC/1F,OACEyB,QAAS,QAAS,WAClBD,YAAa,QAAS,WACtBE,WACED,QAAS,QAAS,WAClBD,YAAa,QAAS,YAExBG,OACEF,QAAS,QAAS,WAClBD,YAAa,QAAS,aAG1By0F,OACE9kE,GAAG,EACH3c,GAAG,GAEL8wB,MACEtlC,OAAQ,QAAS,WACjBwxB,MAAO,GAAI,EAAG,IAAK,GACnB0kE,MAAO,QAAS,UAAW,UAC3B10F,YAAa,QAAS,QACtB05B,aAAc,EAAG,EAAG,GAAI,GACxBi7D,aAAc,QAAS,YAGzB5lC,QAAQ,EACR8lC,oBAAoB,EAQpB5mB,SAAS,EACT+mB,SACEr+F,KAAM,GAAI,EAAG,IAAK,GAClBC,KAAM,GAAI,EAAG,IAAK,GAClBq5B,OACErtB,SAAS,EACTjM,KAAM,GAAI,EAAG,IAAK,GAClBC,KAAM,GAAI,EAAG,IAAK,GAClBq+F,YAAa,GAAI,EAAG,IAAK,GACzBC,eAAgB,EAAG,EAAG,GAAI,KAG9BE,QACExyF,SAAS,EACTpE,MAAO,kBACPwxB,MAAO,GAAI,EAAG,GAAI,GAClBL,GAAI,EAAG,IAAK,GAAI,GAChB3c,GAAI,EAAG,IAAK,GAAI,IAElBqiF,OAAQ,UAAW,MAAO,SAAU,WAAY,UAAW,MAAO,SAAU,OAAQ,OAAQ,WAAY,gBACxGC,iBACEC,cAAc,EACd3pD,cAAe,EAAG,EAAG,GAAI,GACzB4pD,cAAc,GAEhBxlE,MAAO,GAAI,EAAG,IAAK,IAErB48D,OACEmU,QACE75F,IAAMtE,SAAS,EAAOo+F,aAAc,EAAG,EAAG,EAAG,MAC7C19F,QAAUV,SAAS,EAAOo+F,aAAc,EAAG,EAAG,EAAG,MACjD75F,MAAQvE,SAAS,EAAOo+F,aAAc,EAAG,EAAG,EAAG,OAEjDC,oBAAoB,EACpBziG,OACEA,OAAQ,QAAS,WACjB0B,WAAY,QAAS,WACrBC,OAAQ,QAAS,WACjB83C,SAAU,OAAQ,KAAM,QAAQ,GAAM,GACtCx5C,SAAU,EAAG,EAAG,EAAG,MAErBs/F,QAAQ,EACRj6D,MACEtlC,OAAQ,QAAS,WACjBwxB,MAAO,GAAI,EAAG,IAAK,GACnB0kE,MAAO,QAAS,UAAW,UAC3B10F,YAAa,QAAS,QACtB05B,aAAc,EAAG,EAAG,GAAI,GACxBi7D,aAAc,QAAS,WACvBlgC,OAAQ,aAAc,MAAO,SAAU,WAEzC1F,QAAQ,EACRmyC,YAAa,IAAK,EAAG,EAAG,IACxBrM,oBAAoB,EACpB5mB,SAAS,EACT+mB,SACEr+F,KAAM,EAAG,EAAG,IAAK,GACjBC,KAAM,GAAI,EAAG,IAAK,GAClBq5B,OACErtB,SAAS,EACTjM,KAAM,GAAI,EAAG,IAAK,GAClBC,KAAM,GAAI,EAAG,IAAK,GAClBq+F,YAAa,GAAI,EAAG,IAAK,GACzBC,eAAgB,EAAG,EAAG,GAAI,KAG9BiM,gBAAiB,IAAK,EAAG,EAAG,IAC5BC,mBAAoB,GAAI,EAAG,IAAK,GAChChM,QACExyF,SAAS,EACTpE,MAAO,kBACPwxB,MAAO,GAAI,EAAG,GAAI,GAClBL,GAAI,EAAG,IAAK,GAAI,GAChB3c,GAAI,EAAG,IAAK,GAAI,IAElBquF,QACEz+F,SAAS,EACTjJ,MAAO,UAAW,aAAc,WAAY,gBAAiB,gBAAiB,aAAc,WAAY,WAAY,YAAa,eACjI2nG,gBAAiB,aAAc,WAAY,QAC3CC,WAAY,GAAK,EAAG,EAAG,MAEzBhxE,OAAQ,EAAG,EAAG,GAAI,IAEpB8/D,QAGE42B,cACErkH,SAAS,EACTskH,iBAAkB,IAAK,GAAI,IAAK,GAChCC,aAAc,IAAK,GAAI,IAAK,GAC5BC,aAAc,IAAK,GAAI,IAAK,GAC5BC,eAAe,EACfC,kBAAkB,EAClB7qG,WAAY,KAAM,KAAM,KAAM,MAC9B8qG,YAAa,UAAW,cAG5Bj3B,aACEgwB,WAAW,EACXC,UAAU,EACVjF,iBAAiB,EACjBC,iBAAiB,EACjBp7G,OAAO,EACPqgH,UACE59G,SAAS,EACT69G,OAAS9wF,GAAI,GAAI,EAAG,GAAI,GAAI3c,GAAI,GAAI,EAAG,GAAI,GAAIm6C,MAAO,IAAM,EAAG,GAAK,OACpEuzD,cAAc,GAEhB1rD,aAAa,EACb2rD,mBAAmB,EACnB5rD,YAAY,EACZkwD,sBAAsB,EACtBC,qBAAqB,EACrBtE,cAAe,IAAK,EAAG,IAAM,IAC7BC,UAAU,GAEZjyB,cACEhsF,SAAS,EACTmvH,iBAAiB,GAEnB9jD,SACErrE,SAAS,EACTurG,WAEEE,uBAAwB,KAAO,KAAQ,EAAG,IAC1CC,gBAAiB,GAAK,EAAG,GAAI,KAC7BC,cAAe,GAAI,EAAG,IAAK,GAC3BC,gBAAiB,IAAM,EAAG,IAAK,MAC/BC,SAAU,IAAM,EAAG,EAAG,KACtBC,cAAe,EAAG,EAAG,EAAG,MAE1BC,kBAEEN,uBAAwB,IAAK,KAAM,EAAG,GACtCC,gBAAiB,IAAM,EAAG,EAAG,MAC7BC,cAAe,GAAI,EAAG,IAAK,GAC3BC,gBAAiB,IAAM,EAAG,IAAK,MAC/BC,SAAU,GAAK,EAAG,EAAG,KACrBC,cAAe,EAAG,EAAG,EAAG,MAE1BE,WACEN,gBAAiB,GAAK,EAAG,GAAI,KAC7BC,cAAe,IAAK,EAAG,IAAK,GAC5BC,gBAAiB,IAAM,EAAG,IAAK,MAC/BK,cAAe,IAAK,EAAG,IAAK,GAC5BJ,SAAU,IAAM,EAAG,EAAG,MAExBK,uBACER,gBAAiB,GAAK,EAAG,GAAI,KAC7BC,cAAe,IAAK,EAAG,IAAK,GAC5BC,gBAAiB,IAAM,EAAG,IAAK,MAC/BK,cAAe,IAAK,EAAG,IAAK,GAC5BJ,SAAU,IAAM,EAAG,EAAG,MAExBM,aAAc,GAAI,EAAG,IAAK,GAC1BC,aAAc,GAAK,IAAM,GAAK,KAC9B9gC,QAAS,YAAa,mBAAoB,YAAa,yBACvDmhC,UAAW,GAAK,IAAM,EAAG,MAG3B1qG,QACEU,QAAS,KAAM,OAInB1T,GAAQ4D,WAAaA,EACrB5D,EAAQ0hD,iBAAmBA,GAIvB,SAASzhD,EAAQD,EAASM,GAa9B,QAAS22E,GAAuB/wE,GAAO,MAAOA,IAAOA,EAAIgxE,WAAahxE,GAAQixE,UAAWjxE,GAEzF,QAASkxE,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCAVhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAI+iG,GAAiB,WAAe,QAASC,GAAc3/F,EAAK3B,GAAK,GAAIuhG,MAAeC,GAAK,EAAUvzF,GAAK,EAAWwzF,EAAK3hG,MAAW,KAAM,IAAK,GAAiC4hG,GAA7B5yF,EAAKnN,EAAIggG,OAAOriD,cAAmBkiD,GAAME,EAAK5yF,EAAG+B,QAAQwiD,QAAoBkuC,EAAKxgG,KAAK2gG,EAAGpjG,QAAY0B,GAAKuhG,EAAK1hG,SAAWG,GAA3DwhG,GAAK,IAAoE,MAAO9tB,GAAOzlE,GAAK,EAAMwzF,EAAK/tB,EAAO,QAAU,KAAW8tB,GAAM1yF,EAAG,WAAWA,EAAG,YAAe,QAAU,GAAIb,EAAI,KAAMwzF,IAAQ,MAAOF,GAAQ,MAAO,UAAU5/F,EAAK3B,GAAK,GAAIK,MAAMC,QAAQqB,GAAQ,MAAOA,EAAY,IAAIggG,OAAOriD,WAAY3+C,QAAOgB,GAAQ,MAAO2/F,GAAc3/F,EAAK3B,EAAa,MAAM,IAAIS,WAAU,4DAEnlBkwE,EAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAM7hBytD,EAAuCzkI,EAAoB,KAE3D0kI,EAAwC/tD,EAAuB8tD,GAW/DE,EAAc,WAChB,QAASA,GAAYzlF,EAAM0jE,EAAYgiB,GACrC9tD,EAAgBh3E,KAAM6kI,GAEtB7kI,KAAKo/C,KAAOA,EACZp/C,KAAKw8G,aAAesG,EACpB9iH,KAAKy8G,eAAiBqoB,EACtB9kI,KAAK+kI,eAAiB,GAAIH,GAAsC,WAgPlE,MAxOAxtD,GAAaytD,IACXl7H,IAAK,aACL5E,MAAO,SAAoBlB,GACrBA,IACEA,EAAQ24G,eACVx8G,KAAKw8G,aAAe34G,EAAQ24G,cAE1B34G,EAAQ44G,iBACVz8G,KAAKy8G,eAAiB54G,EAAQ44G,oBAWpC9yG,IAAK,QACL5E,MAAO,SAAe8iH,EAAYmd,GAChC,GAAIC,GAAiB5+H,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAGzF6+H,EAAWllI,KAAK+kI,eAAeI,aAAanlI,KAAKo/C,KAAMyoE,EAAYmd,EAGvEhlI,MAAKolI,gBAAgBF,GAGrBllI,KAAKqlI,gBAAgBH,EAgBrB,KAbA,GAAIpxG,GAAY,IACZwxG,EAAiB,EACjBnoB,EAAa,EACbhsG,EAAgBlM,KAAKJ,IAAI,IAAMI,KAAKL,IAAI,GAAK5E,KAAKo/C,KAAKw7C,YAAYt0F,OAAQ,MAC3Ei/H,EAAqB,EAErBC,EAAY,IACZC,EAAe,EACfC,EAAQ,EACRC,EAAQ,EACRC,EAAU,EACVC,EAAgB,EAEbL,EAAY1xG,GAA0B3iB,EAAbgsG,GAA4B,CAC1DA,GAAc,CAEd,IAAI2oB,GAAyB9lI,KAAK+lI,sBAAsBd,GAEpDe,EAA0Bl+B,EAAeg+B,EAAwB,EASrE,KAPAL,EAAeO,EAAwB,GACvCR,EAAYQ,EAAwB,GACpCN,EAAQM,EAAwB,GAChCL,EAAQK,EAAwB,GAEhCJ,EAAUJ,EACVK,EAAgB,EACTD,EAAUN,GAAkCC,EAAhBM,GAAoC,CACrEA,GAAiB,EACjB7lI,KAAKimI,UAAUR,EAAcC,EAAOC,EAEpC,IAAIO,GAAclmI,KAAKmmI,WAAWV,GAE9BW,EAAet+B,EAAeo+B,EAAa,EAE/CN,GAAUQ,EAAa,GACvBV,EAAQU,EAAa,GACrBT,EAAQS,EAAa,QAW3Bz8H,IAAK,wBACL5E,MAAO,SAA+BkgI,GAQpC,IAAK,GAPDpd,GAAa7nH,KAAKo/C,KAAKw7C,YACvBD,EAAQ36F,KAAKo/C,KAAKu7C,MAClB6qC,EAAY,EACZa,EAAkBxe,EAAW,GAC7Bye,EAAY,EACZC,EAAY,EAEPC,EAAU,EAAGA,EAAU3e,EAAWvhH,OAAQkgI,IAAW,CAC5D,GAAIhmI,GAAIqnH,EAAW2e,EAEnB,IAAI7rC,EAAMn6F,GAAGwmG,sBAAuB,GAASrM,EAAMn6F,GAAG8+F,aAAc,GAAQ2lC,KAAmB,GAAQtqC,EAAMn6F,GAAGqD,QAAQ6+F,MAAM9kE,KAAM,GAAQ+8D,EAAMn6F,GAAGqD,QAAQ6+F,MAAMzhF,KAAM,EAAM,CAC7K,GAAIwlH,GAAczmI,KAAKmmI,WAAW3lI,GAE9BkmI,EAAe5+B,EAAe2+B,EAAa,GAE3Cb,EAAUc,EAAa,GACvBhB,EAAQgB,EAAa,GACrBf,EAAQe,EAAa,EAETd,GAAZJ,IACFA,EAAYI,EACZS,EAAkB7lI,EAClB8lI,EAAYZ,EACZa,EAAYZ,IAKlB,OAAQU,EAAiBb,EAAWc,EAAWC,MAUjD58H,IAAK,aACL5E,MAAO,SAAoBvE,GAQzB,IAAK,GAPDqnH,GAAa7nH,KAAKo/C,KAAKw7C,YACvBD,EAAQ36F,KAAKo/C,KAAKu7C,MAElBgsC,EAAMhsC,EAAMn6F,GAAGo9B,EACfgpG,EAAMjsC,EAAMn6F,GAAGygB,EACfykH,EAAQ,EACRC,EAAQ,EACHkB,EAAO,EAAGA,EAAOhf,EAAWvhH,OAAQugI,IAAQ,CACnD,GAAIpgI,GAAIohH,EAAWgf,EACnB,IAAIpgI,IAAMjG,EAAG,CACX,GAAIsmI,GAAMnsC,EAAMl0F,GAAGm3B,EACfmpG,EAAMpsC,EAAMl0F,GAAGwa,EACf+lH,EAAc,EAAM/hI,KAAKw0C,KAAKx0C,KAAK8U,IAAI4sH,EAAMG,EAAK,GAAK7hI,KAAK8U,IAAI6sH,EAAMG,EAAK,GAC/ErB,IAAS1lI,KAAKinI,SAASzmI,GAAGiG,IAAMkgI,EAAMG,EAAM9mI,KAAKknI,SAAS1mI,GAAGiG,IAAMkgI,EAAMG,GAAOE,GAChFrB,GAAS3lI,KAAKinI,SAASzmI,GAAGiG,IAAMmgI,EAAMG,EAAM/mI,KAAKknI,SAAS1mI,GAAGiG,IAAMmgI,EAAMG,GAAOC,IAIpF,GAAIpB,GAAU3gI,KAAKw0C,KAAKx0C,KAAK8U,IAAI2rH,EAAO,GAAKzgI,KAAK8U,IAAI4rH,EAAO,GAC7D,QAAQC,EAASF,EAAOC,MAY1Bh8H,IAAK,YACL5E,MAAO,SAAmBvE,EAAGklI,EAAOC,GASlC,IAAK,GARD9d,GAAa7nH,KAAKo/C,KAAKw7C,YACvBD,EAAQ36F,KAAKo/C,KAAKu7C,MAClBwsC,EAAU,EACVC,EAAW,EACXC,EAAU,EAEVV,EAAMhsC,EAAMn6F,GAAGo9B,EACfgpG,EAAMjsC,EAAMn6F,GAAGygB,EACV4lH,EAAO,EAAGA,EAAOhf,EAAWvhH,OAAQugI,IAAQ,CACnD,GAAIpgI,GAAIohH,EAAWgf,EACnB,IAAIpgI,IAAMjG,EAAG,CACX,GAAIsmI,GAAMnsC,EAAMl0F,GAAGm3B,EACfmpG,EAAMpsC,EAAMl0F,GAAGwa,EACf+lH,EAAc,EAAM/hI,KAAK8U,IAAI9U,KAAK8U,IAAI4sH,EAAMG,EAAK,GAAK7hI,KAAK8U,IAAI6sH,EAAMG,EAAK,GAAI,IAClFI,IAAWnnI,KAAKinI,SAASzmI,GAAGiG,IAAM,EAAIzG,KAAKknI,SAAS1mI,GAAGiG,GAAKxB,KAAK8U,IAAI6sH,EAAMG,EAAK,GAAKC,GACrFI,GAAYpnI,KAAKinI,SAASzmI,GAAGiG,IAAMzG,KAAKknI,SAAS1mI,GAAGiG,IAAMkgI,EAAMG,IAAQF,EAAMG,GAAOC,GACrFK,GAAWrnI,KAAKinI,SAASzmI,GAAGiG,IAAM,EAAIzG,KAAKknI,SAAS1mI,GAAGiG,GAAKxB,KAAK8U,IAAI4sH,EAAMG,EAAK,GAAKE,IAIzF,GAAIrtC,GAAIwtC,EACJvyF,EAAIwyF,EACJvyF,EAAI6wF,EACJtxG,EAAIizG,EACJjjH,EAAIuhH,EAGJ57F,GAAM8K,EAAI8kD,EAAIv1E,EAAIwwB,IAAMA,EAAI+kD,EAAIvlE,EAAIwgB,GACpC9K,IAAO8K,EAAI7K,EAAK8K,GAAK8kD,CAGzBgB,GAAMn6F,GAAGo9B,GAAKkM,EACd6wD,EAAMn6F,GAAGygB,GAAK8oB,KAShBpgC,IAAK,kBACL5E,MAAO,SAAyBmgI,GAC9B,GAAIrd,GAAa7nH,KAAKo/C,KAAKw7C,YACvBkoB,EAAa9iH,KAAKw8G,YAEtBx8G,MAAKknI,WACL,KAAK,GAAIzgI,GAAI,EAAGA,EAAIohH,EAAWvhH,OAAQG,IAAK,CAC1CzG,KAAKknI,SAASrf,EAAWphH,MACzB,KAAK,GAAIgK,GAAI,EAAGA,EAAIo3G,EAAWvhH,OAAQmK,IACrCzQ,KAAKknI,SAASrf,EAAWphH,IAAIohH,EAAWp3G,IAAMqyG,EAAaoiB,EAASrd,EAAWphH,IAAIohH,EAAWp3G,QAWpG9G,IAAK,kBACL5E,MAAO,SAAyBmgI,GAC9B,GAAIrd,GAAa7nH,KAAKo/C,KAAKw7C,YACvBkqC,EAAe9kI,KAAKy8G,cAExBz8G,MAAKinI,WACL,KAAK,GAAIxgI,GAAI,EAAGA,EAAIohH,EAAWvhH,OAAQG,IAAK,CAC1CzG,KAAKinI,SAASpf,EAAWphH,MACzB,KAAK,GAAIgK,GAAI,EAAGA,EAAIo3G,EAAWvhH,OAAQmK,IACrCzQ,KAAKinI,SAASpf,EAAWphH,IAAIohH,EAAWp3G,IAAMq0H,EAAe7/H,KAAK8U,IAAImrH,EAASrd,EAAWphH,IAAIohH,EAAWp3G,IAAK,SAM/Go0H,IAGTjlI,GAAQ,WAAailI,EACrBhlI,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAcrB,QAASo3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC7BmF,OAAO,GAGT,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hBowD,EAAgB,WAClB,QAASA,KACPtwD,EAAgBh3E,KAAMsnI,GA6CxB,MA1CAlwD,GAAakwD,IACX39H,IAAK,eACL5E,MAAO,SAAsBq6C,EAAMyoE,EAAYmd,GAK7C,IAAK,GAJDE,MACArqC,EAAQz7C,EAAKy7C,MAGRp0F,EAAI,EAAGA,EAAIohH,EAAWvhH,OAAQG,IAAK,CAC1Cy+H,EAASrd,EAAWphH,OACpBy+H,EAASrd,EAAWphH,MACpB,KAAK,GAAIgK,GAAI,EAAGA,EAAIo3G,EAAWvhH,OAAQmK,IACrCy0H,EAASrd,EAAWphH,IAAIohH,EAAWp3G,IAAMhK,GAAKgK,EAAI,EAAI,IACtDy0H,EAASrd,EAAWphH,IAAIohH,EAAWp3G,IAAMhK,GAAKgK,EAAI,EAAI,IAK1D,IAAK,GAAIhK,GAAI,EAAGA,EAAIu+H,EAAW1+H,OAAQG,IAAK,CAC1C,GAAI26F,GAAOvG,EAAMmqC,EAAWv+H,GAExB26F,GAAK8P,aAAc,GAAkC3qG,SAA1B2+H,EAAS9jC,EAAKwD,SAAiDr+F,SAAxB2+H,EAAS9jC,EAAKuD,QAClFugC,EAAS9jC,EAAKwD,QAAQxD,EAAKuD,MAAQ,EACnCugC,EAAS9jC,EAAKuD,MAAMvD,EAAKwD,QAAU,GAOvC,IAAK,GAHDwb,GAAYyH,EAAWvhH,OAGlBkK,EAAI,EAAO4vG,EAAJ5vG,EAAeA,IAC7B,IAAK,GAAI/J,GAAI,EAAO25G,EAAY,EAAhB35G,EAAmBA,IACjC,IAAK,GAAIgK,GAAIhK,EAAI,EAAO25G,EAAJ3vG,EAAeA,IACjCy0H,EAASrd,EAAWphH,IAAIohH,EAAWp3G,IAAMxL,KAAKL,IAAIsgI,EAASrd,EAAWphH,IAAIohH,EAAWp3G,IAAKy0H,EAASrd,EAAWphH,IAAIohH,EAAWr3G,IAAM00H,EAASrd,EAAWr3G,IAAIq3G,EAAWp3G,KACtKy0H,EAASrd,EAAWp3G,IAAIo3G,EAAWphH,IAAMy+H,EAASrd,EAAWphH,IAAIohH,EAAWp3G,GAKlF,OAAOy0H,OAIJoC,IAGT1nI,GAAQ,WAAa0nI,EACrBznI,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAOmB,mBAA7B2nI,4BAKTA,yBAAyBt0H,UAAUy0E,OAAS,SAAU9pD,EAAG3c,EAAG7U,GAC1DpM,KAAKoyC,YACLpyC,KAAK81C,IAAIlY,EAAG3c,EAAG7U,EAAG,EAAG,EAAInH,KAAK8wC,IAAI,GAClC/1C,KAAKyyC,aASP80F,yBAAyBt0H,UAAUu0H,OAAS,SAAU5pG,EAAG3c,EAAG7U,GAC1DpM,KAAKoyC,YACLpyC,KAAK0+B,KAAKd,EAAIxxB,EAAG6U,EAAI7U,EAAO,EAAJA,EAAW,EAAJA,GAC/BpM,KAAKyyC,aASP80F,yBAAyBt0H,UAAU8lC,SAAW,SAAUnb,EAAG3c,EAAG7U,GAE5DpM,KAAKoyC,YAGLhmC,GAAK,KACL6U,GAAK,KAAQ7U,CAEb,IAAIuB,GAAQ,EAAJvB,EACJq7H,EAAK95H,EAAI,EACT+5H,EAAKziI,KAAKw0C,KAAK,GAAK,EAAI9rC,EACxBD,EAAIzI,KAAKw0C,KAAK9rC,EAAIA,EAAI85H,EAAKA,EAE/BznI,MAAKqyC,OAAOzU,EAAG3c,GAAKvT,EAAIg6H,IACxB1nI,KAAKsyC,OAAO1U,EAAI6pG,EAAIxmH,EAAIymH,GACxB1nI,KAAKsyC,OAAO1U,EAAI6pG,EAAIxmH,EAAIymH,GACxB1nI,KAAKsyC,OAAO1U,EAAG3c,GAAKvT,EAAIg6H,IACxB1nI,KAAKyyC,aASP80F,yBAAyBt0H,UAAU00H,aAAe,SAAU/pG,EAAG3c,EAAG7U,GAEhEpM,KAAKoyC,YAGLhmC,GAAK,KACL6U,GAAK,KAAQ7U,CAEb,IAAIuB,GAAQ,EAAJvB,EACJq7H,EAAK95H,EAAI,EACT+5H,EAAKziI,KAAKw0C,KAAK,GAAK,EAAI9rC,EACxBD,EAAIzI,KAAKw0C,KAAK9rC,EAAIA,EAAI85H,EAAKA,EAE/BznI,MAAKqyC,OAAOzU,EAAG3c,GAAKvT,EAAIg6H,IACxB1nI,KAAKsyC,OAAO1U,EAAI6pG,EAAIxmH,EAAIymH,GACxB1nI,KAAKsyC,OAAO1U,EAAI6pG,EAAIxmH,EAAIymH,GACxB1nI,KAAKsyC,OAAO1U,EAAG3c,GAAKvT,EAAIg6H,IACxB1nI,KAAKyyC,aASP80F,yBAAyBt0H,UAAU20H,KAAO,SAAUhqG,EAAG3c,EAAG7U,GAExDpM,KAAKoyC,YAGLhmC,GAAK,IACL6U,GAAK,GAAM7U,CAEX,KAAK,GAAI0vB,GAAI,EAAO,GAAJA,EAAQA,IAAK,CAC3B,GAAI+Z,GAAS/Z,EAAI,IAAM,EAAQ,IAAJ1vB,EAAc,GAAJA,CACrCpM,MAAKsyC,OAAO1U,EAAIiY,EAAS5wC,KAAKqkC,IAAQ,EAAJxN,EAAQ72B,KAAK8wC,GAAK,IAAK90B,EAAI40B,EAAS5wC,KAAKwkC,IAAQ,EAAJ3N,EAAQ72B,KAAK8wC,GAAK,KAGnG/1C,KAAKyyC,aASP80F,yBAAyBt0H,UAAU40H,QAAU,SAAUjqG,EAAG3c,EAAG7U,GAE3DpM,KAAKoyC,YAELpyC,KAAKsyC,OAAO1U,EAAG3c,EAAI7U,GACnBpM,KAAKsyC,OAAO1U,EAAIxxB,EAAG6U,GACnBjhB,KAAKsyC,OAAO1U,EAAG3c,EAAI7U,GACnBpM,KAAKsyC,OAAO1U,EAAIxxB,EAAG6U,GAEnBjhB,KAAKyyC,aAMP80F,yBAAyBt0H,UAAUk4F,UAAY,SAAUvtE,EAAG3c,EAAG6C,EAAGpW,EAAGtB,GACnE,GAAI07H,GAAM7iI,KAAK8wC,GAAK,GACJ,GAAZjyB,EAAI,EAAI1X,IACVA,EAAI0X,EAAI,GAEM,EAAZpW,EAAI,EAAItB,IACVA,EAAIsB,EAAI,GAEV1N,KAAKoyC,YACLpyC,KAAKqyC,OAAOzU,EAAIxxB,EAAG6U,GACnBjhB,KAAKsyC,OAAO1U,EAAI9Z,EAAI1X,EAAG6U,GACvBjhB,KAAK81C,IAAIlY,EAAI9Z,EAAI1X,EAAG6U,EAAI7U,EAAGA,EAAS,IAAN07H,EAAiB,IAANA,GAAW,GACpD9nI,KAAKsyC,OAAO1U,EAAI9Z,EAAG7C,EAAIvT,EAAItB,GAC3BpM,KAAK81C,IAAIlY,EAAI9Z,EAAI1X,EAAG6U,EAAIvT,EAAItB,EAAGA,EAAG,EAAS,GAAN07H,GAAU,GAC/C9nI,KAAKsyC,OAAO1U,EAAIxxB,EAAG6U,EAAIvT,GACvB1N,KAAK81C,IAAIlY,EAAIxxB,EAAG6U,EAAIvT,EAAItB,EAAGA,EAAS,GAAN07H,EAAgB,IAANA,GAAW,GACnD9nI,KAAKsyC,OAAO1U,EAAG3c,EAAI7U,GACnBpM,KAAK81C,IAAIlY,EAAIxxB,EAAG6U,EAAI7U,EAAGA,EAAS,IAAN07H,EAAiB,IAANA,GAAW,GAChD9nI,KAAKyyC,aAMP80F,yBAAyBt0H,UAAUi7F,QAAU,SAAUtwE,EAAG3c,EAAG6C,EAAGpW,GAC9D,GAAIq6H,GAAQ,SACRC,EAAKlkH,EAAI,EAAIikH,EAEjBE,EAAKv6H,EAAI,EAAIq6H,EAEbG,EAAKtqG,EAAI9Z,EAETqkH,EAAKlnH,EAAIvT,EAET06H,EAAKxqG,EAAI9Z,EAAI,EAEbukH,EAAKpnH,EAAIvT,EAAI,CAEb1N,MAAKoyC,YACLpyC,KAAKqyC,OAAOzU,EAAGyqG,GACfroI,KAAK6zG,cAAcj2E,EAAGyqG,EAAKJ,EAAIG,EAAKJ,EAAI/mH,EAAGmnH,EAAInnH,GAC/CjhB,KAAK6zG,cAAcu0B,EAAKJ,EAAI/mH,EAAGinH,EAAIG,EAAKJ,EAAIC,EAAIG,GAChDroI,KAAK6zG,cAAcq0B,EAAIG,EAAKJ,EAAIG,EAAKJ,EAAIG,EAAIC,EAAID,GACjDnoI,KAAK6zG,cAAcu0B,EAAKJ,EAAIG,EAAIvqG,EAAGyqG,EAAKJ,EAAIrqG,EAAGyqG,GAC/CroI,KAAKyyC,aAMP80F,yBAAyBt0H,UAAUq6F,SAAW,SAAU1vE,EAAG3c,EAAG6C,EAAGpW,GAC/D,GAAI+B,GAAI,EAAI,EACR64H,EAAWxkH,EACXykH,EAAW76H,EAAI+B,EAEfs4H,EAAQ,SACRC,EAAKM,EAAW,EAAIP,EAExBE,EAAKM,EAAW,EAAIR,EAEpBG,EAAKtqG,EAAI0qG,EAETH,EAAKlnH,EAAIsnH,EAETH,EAAKxqG,EAAI0qG,EAAW,EAEpBD,EAAKpnH,EAAIsnH,EAAW,EAEpBC,EAAMvnH,GAAKvT,EAAI66H,EAAW,GAE1BE,EAAMxnH,EAAIvT,CAEV1N,MAAKoyC,YACLpyC,KAAKqyC,OAAO61F,EAAIG,GAEhBroI,KAAK6zG,cAAcq0B,EAAIG,EAAKJ,EAAIG,EAAKJ,EAAIG,EAAIC,EAAID,GACjDnoI,KAAK6zG,cAAcu0B,EAAKJ,EAAIG,EAAIvqG,EAAGyqG,EAAKJ,EAAIrqG,EAAGyqG,GAE/CroI,KAAK6zG,cAAcj2E,EAAGyqG,EAAKJ,EAAIG,EAAKJ,EAAI/mH,EAAGmnH,EAAInnH,GAC/CjhB,KAAK6zG,cAAcu0B,EAAKJ,EAAI/mH,EAAGinH,EAAIG,EAAKJ,EAAIC,EAAIG,GAEhDroI,KAAKsyC,OAAO41F,EAAIM,GAEhBxoI,KAAK6zG,cAAcq0B,EAAIM,EAAMP,EAAIG,EAAKJ,EAAIS,EAAKL,EAAIK,GACnDzoI,KAAK6zG,cAAcu0B,EAAKJ,EAAIS,EAAK7qG,EAAG4qG,EAAMP,EAAIrqG,EAAG4qG,GAEjDxoI,KAAKsyC,OAAO1U,EAAGyqG,IAMjBd,yBAAyBt0H,UAAUslG,MAAQ,SAAU36E,EAAG3c,EAAGypC,EAAOpkD,GAEhE,GAAIoiI,GAAK9qG,EAAIt3B,EAASrB,KAAKwkC,IAAIihB,GAC3Bi+E,EAAK1nH,EAAI3a,EAASrB,KAAKqkC,IAAIohB,GAG3B0tD,EAAKx6E,EAAa,GAATt3B,EAAerB,KAAKwkC,IAAIihB,GACjC2tD,EAAKp3F,EAAa,GAAT3a,EAAerB,KAAKqkC,IAAIohB,GAGjCk+E,EAAKF,EAAKpiI,EAAS,EAAIrB,KAAKwkC,IAAIihB,EAAQ,GAAMzlD,KAAK8wC,IACnD8yF,EAAKF,EAAKriI,EAAS,EAAIrB,KAAKqkC,IAAIohB,EAAQ,GAAMzlD,KAAK8wC,IAGnD+yF,EAAKJ,EAAKpiI,EAAS,EAAIrB,KAAKwkC,IAAIihB,EAAQ,GAAMzlD,KAAK8wC,IACnDgzF,EAAKJ,EAAKriI,EAAS,EAAIrB,KAAKqkC,IAAIohB,EAAQ,GAAMzlD,KAAK8wC,GAEvD/1C,MAAKoyC,YACLpyC,KAAKqyC,OAAOzU,EAAG3c,GACfjhB,KAAKsyC,OAAOs2F,EAAIC,GAChB7oI,KAAKsyC,OAAO8lE,EAAIC,GAChBr4G,KAAKsyC,OAAOw2F,EAAIC,GAChB/oI,KAAKyyC,aASP80F,yBAAyBt0H,UAAUyjG,WAAa,SAAU94E,EAAG3c,EAAG+yF,EAAIC,EAAIqC,GACtEt2G,KAAKoyC,YACLpyC,KAAKqyC,OAAOzU,EAAG3c,EAYf,KAVA,GAAI+nH,GAAgB1yB,EAAQhwG,OACxBwjC,EAAKkqE,EAAKp2E,EACVmM,EAAKkqE,EAAKhzF,EACVgoH,EAAQl/F,EAAKD,EACbo/F,EAAgBjkI,KAAKw0C,KAAK3P,EAAKA,EAAKC,EAAKA,GACzCo/F,EAAe,EACfltD,GAAO,EACPv1C,EAAQ,EACR0iG,EAAa9yB,EAAQ,GAElB4yB,GAAiB,IACtBE,EAAa9yB,EAAQ6yB,IAAiBH,GAClCI,EAAaF,IACfE,EAAaF,GAGfxiG,EAAQzhC,KAAKw0C,KAAK2vF,EAAaA,GAAc,EAAIH,EAAQA,IACzDviG,EAAa,EAALoD,GAAUpD,EAAQA,EAC1B9I,GAAK8I,EACLzlB,GAAKgoH,EAAQviG,EAETu1C,KAAS,EACXj8E,KAAKsyC,OAAO1U,EAAG3c,GAEfjhB,KAAKqyC,OAAOzU,EAAG3c,GAGjBioH,GAAiBE,EACjBntD,GAAQA,KAOV,SAASp8E,EAAQD,GAiBrB,QAASypI,GAASrxH,GAEhB,MADA2hC,GAAM3hC,EACCsxH,IAkDT,QAAS35C,KACPvmF,EAAQ,EACR3I,EAAIk5C,EAAItpB,OAAO,GAQjB,QAAS/Y,KACPlO,IACA3I,EAAIk5C,EAAItpB,OAAOjnB,GAOjB,QAASmgI,KACP,MAAO5vF,GAAItpB,OAAOjnB,EAAQ,GAS5B,QAASogI,GAAe/oI,GACtB,MAAOgpI,GAAkB55H,KAAKpP,GAShC,QAASoxD,GAAM3rD,EAAGC,GAKhB,GAJKD,IACHA,MAGEC,EACF,IAAK,GAAIqR,KAAQrR,GACXA,EAAEH,eAAewR,KACnBtR,EAAEsR,GAAQrR,EAAEqR,GAIlB,OAAOtR,GAeT,QAASwjI,GAAS5jI,EAAK0zE,EAAMz0E,GAG3B,IAFA,GAAIkK,GAAOuqE,EAAKvwE,MAAM,KAClB+7C,EAAIl/C,EACDmJ,EAAK3I,QAAQ,CAClB,GAAIqD,GAAMsF,EAAKkuB,OACXluB,GAAK3I,QAEF0+C,EAAEr7C,KACLq7C,EAAEr7C,OAEJq7C,EAAIA,EAAEr7C,IAGNq7C,EAAEr7C,GAAO5E,GAWf,QAASk7H,GAAQvkF,EAAO9f,GAOtB,IANA,GAAIn1B,GAAGiB,EACH81D,EAAU,KAGVmsE,GAAUjuF,GACVh8C,EAAOg8C,EACJh8C,EAAK6L,QACVo+H,EAAOniI,KAAK9H,EAAK6L,QACjB7L,EAAOA,EAAK6L,MAId,IAAI7L,EAAKi7F,MACP,IAAKl0F,EAAI,EAAGiB,EAAMhI,EAAKi7F,MAAMr0F,OAAYoB,EAAJjB,EAASA,IAC5C,GAAIm1B,EAAKv7B,KAAOX,EAAKi7F,MAAMl0F,GAAGpG,GAAI,CAChCm9D,EAAU99D,EAAKi7F,MAAMl0F,EACrB,OAiBN,IAZK+2D,IAEHA,GACEn9D,GAAIu7B,EAAKv7B,IAEPq7C,EAAM9f,OAER4hC,EAAQosE,KAAO/3E,EAAM2L,EAAQosE,KAAMluF,EAAM9f,QAKxCn1B,EAAIkjI,EAAOrjI,OAAS,EAAGG,GAAK,EAAGA,IAAK,CACvC,GAAI4F,GAAIs9H,EAAOljI,EAEV4F,GAAEsuF,QACLtuF,EAAEsuF,UAE6B,KAA7BtuF,EAAEsuF,MAAMpzF,QAAQi2D,IAClBnxD,EAAEsuF,MAAMnzF,KAAKg2D,GAKb5hC,EAAKguG,OACPpsE,EAAQosE,KAAO/3E,EAAM2L,EAAQosE,KAAMhuG,EAAKguG,OAS5C,QAAS1J,GAAQxkF,EAAO0lD,GAKtB,GAJK1lD,EAAMm/C,QACTn/C,EAAMm/C,UAERn/C,EAAMm/C,MAAMrzF,KAAK45F,GACb1lD,EAAM0lD,KAAM,CACd,GAAIwoC,GAAO/3E,KAAUnW,EAAM0lD,KAC3BA,GAAKwoC,KAAO/3E,EAAM+3E,EAAMxoC,EAAKwoC,OAajC,QAASjuC,GAAWjgD,EAAOtmC,EAAMD,EAAIvN,EAAMgiI,GACzC,GAAIxoC,IACFhsF,KAAMA,EACND,GAAIA,EACJvN,KAAMA,EAQR,OALI8zC,GAAM0lD,OACRA,EAAKwoC,KAAO/3E,KAAUnW,EAAM0lD,OAE9BA,EAAKwoC,KAAO/3E,EAAMuvC,EAAKwoC,SAAYA,GAE5BxoC,EAOT,QAASyoC,KAKP,IAJAC,EAAYC,EAAUC,KACtB/vH,EAAQ,GAGK,MAANxZ,GAAmB,MAANA,GAAoB,OAANA,GAAoB,OAANA,GAE9C6W,GAGF,GAAG,CACD,GAAI2yH,IAAY,CAGhB,IAAU,MAANxpI,EAAW,CAGb,IADA,GAAIgG,GAAI2C,EAAQ,EACS,MAAlBuwC,EAAItpB,OAAO5pB,IAAgC,MAAlBkzC,EAAItpB,OAAO5pB,IACzCA,GAEF,IAAsB,OAAlBkzC,EAAItpB,OAAO5pB,IAAiC,KAAlBkzC,EAAItpB,OAAO5pB,GAAW,CAElD,KAAY,IAALhG,GAAgB,MAALA,GAChB6W,GAEF2yH,IAAY,GAGhB,GAAU,MAANxpI,GAA+B,MAAlB8oI,IAAuB,CAEtC,KAAY,IAAL9oI,GAAgB,MAALA,GAChB6W,GAEF2yH,IAAY,EAEd,GAAU,MAANxpI,GAA+B,MAAlB8oI,IAAuB,CAEtC,KAAY,IAAL9oI,GAAS,CACd,GAAU,MAANA,GAA+B,MAAlB8oI,IAAuB,CAEtCjyH,IACAA,GACA,OAEAA,IAGJ2yH,GAAY,EAId,KAAa,MAANxpI,GAAmB,MAANA,GAAoB,OAANA,GAAoB,OAANA,GAE9C6W,UAEK2yH,EAGT,IAAU,KAANxpI,EAGF,YADAqpI,EAAYC,EAAUG,UAKxB,IAAIC,GAAK1pI,EAAI8oI,GACb,IAAIa,EAAWD,GAKb,MAJAL,GAAYC,EAAUG,UACtBjwH,EAAQkwH,EACR7yH,QACAA,IAKF,IAAI8yH,EAAW3pI,GAIb,MAHAqpI,GAAYC,EAAUG,UACtBjwH,EAAQxZ,MACR6W,IAMF,IAAIkyH,EAAe/oI,IAAY,MAANA,EAAW,CAIlC,IAHAwZ,GAASxZ,EACT6W,IAEOkyH,EAAe/oI,IACpBwZ,GAASxZ,EACT6W,GAUF,OARc,UAAV2C,EACFA,GAAQ,EACW,SAAVA,EACPA,GAAQ,EACExU,MAAMpB,OAAO4V,MACrBA,EAAQ5V,OAAO4V,SAErB6vH,EAAYC,EAAUM,YAKxB,GAAU,MAAN5pI,EAAW,CAEb,IADA6W,IACY,IAAL7W,IAAiB,KAALA,GAAkB,MAANA,GAA+B,MAAlB8oI,MAC1CtvH,GAASxZ,EACC,MAANA,GAEF6W,IAEFA,GAEF,IAAS,KAAL7W,EACF,KAAM6pI,GAAe,2BAIvB,OAFAhzH,UACAwyH,EAAYC,EAAUM,YAMxB,IADAP,EAAYC,EAAUQ,QACV,IAAL9pI,GACLwZ,GAASxZ,EACT6W,GAEF,MAAM,IAAI+sB,aAAY,yBAA2BmmG,EAAKvwH,EAAO,IAAM,KAOrE,QAASqvH,KACP,GAAI5tF,KAwBJ,IAtBAi0C,IACAk6C,IAGc,WAAV5vH,IACFyhC,EAAMnoC,QAAS,EACfs2H,MAIY,UAAV5vH,GAA+B,YAAVA,KACvByhC,EAAM9zC,KAAOqS,EACb4vH,KAIEC,IAAcC,EAAUM,aAC1B3uF,EAAMr7C,GAAK4Z,EACX4vH,KAIW,KAAT5vH,EACF,KAAMqwH,GAAe,2BAQvB,IANAT,IAGAY,EAAgB/uF,GAGH,KAATzhC,EACF,KAAMqwH,GAAe,2BAKvB,IAHAT,IAGc,KAAV5vH,EACF,KAAMqwH,GAAe,uBASvB,OAPAT,WAGOnuF,GAAM9f,WACN8f,GAAM0lD,WACN1lD,GAAMA,MAENA,EAOT,QAAS+uF,GAAgB/uF,GACvB,KAAiB,KAAVzhC,GAAyB,KAATA,GACrBywH,EAAehvF,GACD,MAAVzhC,GACF4vH,IAWN,QAASa,GAAehvF,GAEtB,GAAIivF,GAAWC,EAAclvF,EAC7B,IAAIivF,EAIF,WAFAE,GAAUnvF,EAAOivF,EAMnB,IAAIf,GAAOkB,EAAwBpvF,EACnC,KAAIkuF,EAAJ,CAKA,GAAIE,GAAaC,EAAUM,WACzB,KAAMC,GAAe,sBAEvB,IAAIjqI,GAAK4Z,CAGT,IAFA4vH,IAEc,MAAV5vH,EAAe,CAGjB,GADA4vH,IACIC,GAAaC,EAAUM,WACzB,KAAMC,GAAe,sBAEvB5uF,GAAMr7C,GAAM4Z,EACZ4vH,QAGEkB,GAAmBrvF,EAAOr7C,IAShC,QAASuqI,GAAclvF,GACrB,GAAIivF,GAAW,IAgBf,IAbc,aAAV1wH,IACF0wH,KACAA,EAAS/iI,KAAO,WAChBiiI,IAGIC,IAAcC,EAAUM,aAC1BM,EAAStqI,GAAK4Z,EACd4vH,MAKU,MAAV5vH,EAAe,CAejB,GAdA4vH,IAEKc,IACHA,MAEFA,EAASp/H,OAASmwC,EAClBivF,EAAS/uG,KAAO8f,EAAM9f,KACtB+uG,EAASvpC,KAAO1lD,EAAM0lD,KACtBupC,EAASjvF,MAAQA,EAAMA,MAGvB+uF,EAAgBE,GAGH,KAAT1wH,EACF,KAAMqwH,GAAe,2BAEvBT,WAGOc,GAAS/uG,WACT+uG,GAASvpC,WACTupC,GAASjvF,YACTivF,GAASp/H,OAGXmwC,EAAMsvF,YACTtvF,EAAMsvF,cAERtvF,EAAMsvF,UAAUxjI,KAAKmjI,GAGvB,MAAOA,GAYT,QAASG,GAAwBpvF,GAE/B,MAAc,SAAVzhC,GACF4vH,IAGAnuF,EAAM9f,KAAOqvG,IACN,QACY,SAAVhxH,GACT4vH,IAGAnuF,EAAM0lD,KAAO6pC,IACN,QACY,UAAVhxH,GACT4vH,IAGAnuF,EAAMA,MAAQuvF,IACP,SAGF,KAQT,QAASF,GAAmBrvF,EAAOr7C,GAEjC,GAAIu7B,IACFv7B,GAAIA,GAEFupI,EAAOqB,GACPrB,KACFhuG,EAAKguG,KAAOA,GAEd3J,EAAQvkF,EAAO9f,GAGfivG,EAAUnvF,EAAOr7C,GAQnB,QAASwqI,GAAUnvF,EAAOtmC,GACxB,KAAiB,OAAV6E,GAA4B,OAAVA,GAAgB,CACvC,GAAI9E,GACAvN,EAAOqS,CACX4vH,IAEA,IAAIc,GAAWC,EAAclvF,EAC7B,IAAIivF,EACFx1H,EAAKw1H,MACA,CACL,GAAIb,GAAaC,EAAUM,WACzB,KAAMC,GAAe,kCAEvBn1H,GAAK8E,EACLgmH,EAAQvkF,GACNr7C,GAAI8U,IAEN00H,IAIF,GAAID,GAAOqB,IAGP7pC,EAAOzF,EAAWjgD,EAAOtmC,EAAMD,EAAIvN,EAAMgiI,EAC7C1J,GAAQxkF,EAAO0lD,GAEfhsF,EAAOD,GASX,QAAS81H,KAGP,IAFA,GAAIrB,GAAO,KAEM,MAAV3vH,GAAe,CAGpB,IAFA4vH,IACAD,KACiB,KAAV3vH,GAAyB,KAATA,GAAc,CACnC,GAAI6vH,GAAaC,EAAUM,WACzB,KAAMC,GAAe,0BAEvB,IAAI9yH,GAAOyC,CAGX,IADA4vH,IACa,KAAT5vH,EACF,KAAMqwH,GAAe,wBAIvB,IAFAT,IAEIC,GAAaC,EAAUM,WACzB,KAAMC,GAAe,2BAEvB,IAAIvlI,GAAQkV,CACZyvH,GAASE,EAAMpyH,EAAMzS,GAErB8kI,IACa,KAAT5vH,GACF4vH,IAIJ,GAAa,KAAT5vH,EACF,KAAMqwH,GAAe,qBAEvBT,KAGF,MAAOD,GAQT,QAASU,GAAetkF,GACtB,MAAO,IAAI3hB,aAAY2hB,EAAU,UAAYwkF,EAAKvwH,EAAO,IAAM,WAAa7Q,EAAQ,KAStF,QAASohI,GAAK32F,EAAMq3F,GAClB,MAAOr3F,GAAKvtC,QAAU4kI,EAAYr3F,EAAOA,EAAKjnC,OAAO,EAAG,IAAM,MAShE,QAASu+H,GAASx0H,EAAQC,EAAQ/M,GAC5B/C,MAAMC,QAAQ4P,GAChBA,EAAOrN,QAAQ,SAAU8hI,GACnBtkI,MAAMC,QAAQ6P,GAChBA,EAAOtN,QAAQ,SAAU+hI,GACvBxhI,EAAGuhI,EAAOC,KAGZxhI,EAAGuhI,EAAOx0H,KAIV9P,MAAMC,QAAQ6P,GAChBA,EAAOtN,QAAQ,SAAU+hI,GACvBxhI,EAAG8M,EAAQ00H,KAGbxhI,EAAG8M,EAAQC,GAcjB,QAAS00H,GAAQlnI,EAAQo1E,EAAMz0E,GAM7B,IAAK,GALDsS,GAAQmiE,EAAKvwE,MAAM,KACnBlD,EAAOsR,EAAMq9D,MAGb5uE,EAAM1B,EACDqC,EAAI,EAAGA,EAAI4Q,EAAM/Q,OAAQG,IAAK,CACrC,GAAI+Q,GAAOH,EAAM5Q,EACX+Q,KAAQ1R,KACZA,EAAI0R,OAEN1R,EAAMA,EAAI0R,GAMZ,MAFA1R,GAAIC,GAAQhB,EAELX,EAST,QAASmnI,GAAY3B,EAAM4B,GACzB,GAAIhpG,KAEJ,KAAK,GAAIz8B,KAAQ6jI,GACf,GAAIA,EAAK5jI,eAAeD,GAAO,CAC7B,GAAI0lI,GAAUD,EAAQzlI,EAClBe,OAAMC,QAAQ0kI,GAChBA,EAAQniI,QAAQ,SAAUoiI,GACxBJ,EAAQ9oG,EAAWkpG,EAAU9B,EAAK7jI,MAER,gBAAZ0lI,GAChBH,EAAQ9oG,EAAWipG,EAAS7B,EAAK7jI,IAEjCulI,EAAQ9oG,EAAWz8B,EAAM6jI,EAAK7jI,IAKpC,MAAOy8B,GAST,QAAS7+B,GAAWqU,GAElB,GAAI8mF,GAAUuqC,EAASrxH,GACnB2zH,GACFhxC,SACAE,SACAh3F,WAmBF,IAfIi7F,EAAQnE,OACVmE,EAAQnE,MAAMrxF,QAAQ,SAAUsiI,GAC9B,GAAIC,IACFxrI,GAAIurI,EAAQvrI,GACZ69B,MAAO/4B,OAAOymI,EAAQ1tG,OAAS0tG,EAAQvrI,IAEzCwxD,GAAMg6E,EAAWN,EAAYK,EAAQhC,KAAMkC,IACvCD,EAAUhpC,QACZgpC,EAAUvoC,MAAQ,SAEpBqoC,EAAUhxC,MAAMnzF,KAAKqkI,KAKrB/sC,EAAQjE,MAAO,CAMjB,GAAIkxC,GAAc,SAAqBC,GACrC,GAAIC,IACF72H,KAAM42H,EAAQ52H,KACdD,GAAI62H,EAAQ72H,GAKd,OAHA08C,GAAMo6E,EAAWV,EAAYS,EAAQpC,KAAMsC,IAC3CD,EAAUj9B,OAA0B,OAAjBg9B,EAAQpkI,KAAgB,KAAOrB,OAE3C0lI,EAGTntC,GAAQjE,MAAMvxF,QAAQ,SAAU0iI,GAC9B,GAAI52H,GAAMD,CAERC,GADE42H,EAAQ52H,eAAgBhO,QACnB4kI,EAAQ52H,KAAKulF,OAGlBt6F,GAAI2rI,EAAQ52H,MAQdD,EADE62H,EAAQ72H,aAAc/N,QACnB4kI,EAAQ72H,GAAGwlF,OAGdt6F,GAAI2rI,EAAQ72H,IAIZ62H,EAAQ52H,eAAgBhO,SAAU4kI,EAAQ52H,KAAKylF,OACjDmxC,EAAQ52H,KAAKylF,MAAMvxF,QAAQ,SAAU6iI,GACnC,GAAIF,GAAYF,EAAYI,EAC5BR,GAAU9wC,MAAMrzF,KAAKykI,KAIzBd,EAAS/1H,EAAMD,EAAI,SAAUC,EAAMD,GACjC,GAAIg3H,GAAUxwC,EAAWgwC,EAAWv2H,EAAK/U,GAAI8U,EAAG9U,GAAI2rI,EAAQpkI,KAAMokI,EAAQpC,MACtEqC,EAAYF,EAAYI,EAC5BR,GAAU9wC,MAAMrzF,KAAKykI,KAGnBD,EAAQ72H,aAAc/N,SAAU4kI,EAAQ72H,GAAG0lF,OAC7CmxC,EAAQ72H,GAAG0lF,MAAMvxF,QAAQ,SAAU6iI,GACjC,GAAIF,GAAYF,EAAYI,EAC5BR,GAAU9wC,MAAMrzF,KAAKykI,OAW7B,MAJIntC,GAAQ8qC,OACV+B,EAAU9nI,QAAUi7F,EAAQ8qC,MAGvB+B,EAl2BT,GAAIG,IACFM,SAAY,YACZC,UAAa,aACbC,eAAkB,aAClBC,SAAY,YACZ9/H,OAAU,eAAgB,oBAC1B+/H,UAAa,mBACb57F,QAAW,QACX67F,aAAgB,SAEdP,EAAoB9kI,OAAOgJ,OAAO07H,EACtCI,GAAkBz/H,MAAQ,aAG1B,IAAIs9H,IACFC,KAAM,EACNE,UAAW,EACXG,WAAY,EACZE,QAAS,GAIPH,GACFsC,KAAK,EACLC,KAAK,EACLC,KAAK,EACLC,KAAK,EACLC,KAAK,EACLC,KAAK,EACLC,KAAK,EAELC,MAAM,EACNC,MAAM,GAGJvzF,EAAM,GACNvwC,EAAQ,EACR3I,EAAI,GACJwZ,EAAQ,GACR6vH,EAAYC,EAAUC,KAmCtBP,EAAoB,iBA4xBxB7pI,GAAQypI,SAAWA,EACnBzpI,EAAQ+D,WAAaA,GAIjB,SAAS9D,EAAQD,GAIrB,QAASkE,GAAWqpI,EAAWxwD,GAC7B,GAAIke,MACAF,KACA92F,GACFg3F,OACEuyC,cAAc,GAEhBzyC,OACE+H,OAAO,EACPv1F,YAAY,GAIG5G,UAAfo2E,IACuBp2E,SAArBo2E,EAAW+lB,QACb7+F,EAAQ82F,MAAM+H,MAAQ/lB,EAAW+lB,OAELn8F,SAA1Bo2E,EAAWxvE,aACbtJ,EAAQ82F,MAAMxtF,WAAawvE,EAAWxvE,YAER5G,SAA5Bo2E,EAAWywD,eACbvpI,EAAQg3F,MAAMuyC,aAAezwD,EAAWywD,cAM5C,KAAK,GAFDC,GAASF,EAAUtyC,MACnByyC,EAASH,EAAUxyC,MACdl0F,EAAI,EAAGA,EAAI4mI,EAAO/mI,OAAQG,IAAK,CACtC,GAAI26F,MACAmsC,EAAQF,EAAO5mI,EACnB26F,GAAS,GAAImsC,EAAMltI,GACnB+gG,EAAW,KAAImsC,EAAM17G,OACrBuvE,EAAS,GAAImsC,EAAMriI,OACnBk2F,EAAiB,WAAImsC,EAAM77D,WAC3B0vB,EAAY,MAAImsC,EAAMrvG,MACtBkjE,EAAY,MAAyB76F,SAArBgnI,EAAM77D,WAA2B67D,EAAM77D,WAAWhR,MAAQn6D,OACpD,aAAlBgnI,EAAY,OACdnsC,EAAa,OAAI,MAIfmsC,EAAM9gI,OAAS5I,EAAQupI,gBAAiB,IAC1ChsC,EAAY,MAAImsC,EAAM9gI,OAExBouF,EAAMrzF,KAAK45F,GAGb,IAAK,GAAI36F,GAAI,EAAGA,EAAI6mI,EAAOhnI,OAAQG,IAAK,CACtC,GAAIm1B,MACA4xG,EAAQF,EAAO7mI,EACnBm1B,GAAS,GAAI4xG,EAAMntI,GACnBu7B,EAAiB,WAAI4xG,EAAM97D,WAC3B91C,EAAY,MAAI4xG,EAAM9sE,MACtB9kC,EAAQ,EAAI4xG,EAAM5vG,EAClBhC,EAAQ,EAAI4xG,EAAMvsH,EAClB2a,EAAY,MAAI4xG,EAAMtvG,MACtBtC,EAAY,MAAyBr1B,SAArBinI,EAAM97D,WAA2B87D,EAAM97D,WAAWhR,MAAQn6D,OACtE1C,EAAQ82F,MAAMxtF,cAAe,EAC/ByuB,EAAY,MAAI4xG,EAAM/gI,MAEtBmvB,EAAY,MAAoBr1B,SAAhBinI,EAAM/gI,OAAwBwB,WAAYu/H,EAAM/gI,MAAOyB,OAAQs/H,EAAM/gI,MAAO0B,WAAaF,WAAYu/H,EAAM/gI,MAAOyB,OAAQs/H,EAAM/gI,OAAS2B,OAASH,WAAYu/H,EAAM/gI,MAAOyB,OAAQs/H,EAAM/gI,QAAYlG,OAEvNq1B,EAAW,KAAI4xG,EAAMvvG,KACrBrC,EAAY,MAAI/3B,EAAQ82F,MAAM+H,OAAqBn8F,SAAZinI,EAAM5vG,GAA+Br3B,SAAZinI,EAAMvsH,EACtE05E,EAAMnzF,KAAKo0B,GAGb,OAAS++D,MAAOA,EAAOE,MAAOA,GAGhCj7F,EAAQkE,WAAaA,GAIjB,SAASjE,EAAQD,GAcrB,QAASo3E,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIhwE,WAAU,qCANhHE,OAAO+vE,eAAev3E,EAAS,cAC3BmF,OAAO,GAGX,IAAIqyE,GAAe,WAAe,QAASC,GAAiBnsE,EAAQrE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAI6wE,GAAazwE,EAAMJ,EAAI6wE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMrwE,OAAO+vE,eAAejsE,EAAQosE,EAAW3tE,IAAK2tE,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAYjkE,UAAWykE,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI7hB7zE,EAAS,WACT,QAASA,GAAOkG,GACZytE,EAAgBh3E,KAAMqD,GAEtBrD,KAAK87F,UACL97F,KAAKytI,eACLztI,KAAKuJ,SAAWA,EAgGpB,MAxFA6tE,GAAa/zE,IACTsG,IAAK,mBACL5E,MAAO,SAA0B2oI,EAAKC,GAEP,IAAvBA,EAAanvG,QACbpB,SAASgiB,KAAK9hB,YAAYqwG,GAC1BA,EAAanvG,MAAQmvG,EAAa1zF,YAClC0zF,EAAalvG,OAASkvG,EAAaxzF,aACnC/c,SAASgiB,KAAK16C,YAAYipI,IAG9B3tI,KAAK87F,OAAO4xC,GAAOC,KASvBhkI,IAAK,oBACL5E,MAAO,SAA2B2oI,EAAKE,EAAWC,GAC9C,GAAI3rF,GAAQliD,IAGAuG,UAARmnI,GAAmCnnI,SAAdqnI,GAAsDrnI,SAA3BsnI,IAGpDA,EAAuBC,QAAU,WAC7BnuH,QAAQ28D,MAAM,8BAA+BsxD,GAE7C1rF,EAAM6rF,iBAAiBL,EAAK,GAAIp/B,SAIpCu/B,EAAuBzmF,IAAMwmF,MAOjCjkI,IAAK,mBACL5E,MAAO,SAA0BipI,GACzBhuI,KAAKuJ,UACLvJ,KAAKuJ,SAASykI,MAUtBrkI,IAAK,OACL5E,MAAO,SAAc2oI,EAAKE,EAAWvtI,GACjC,GAAIq5E,GAAS15E,KAGTiuI,EAAcjuI,KAAK87F,OAAO4xC,EAC9B,IAAIO,EAAa,MAAOA,EAGxB,IAAIC,GAAM,GAAI5/B,MAoBd,OAjBA4/B,GAAIC,OAAS,WAETz0D,EAAOq0D,iBAAiBL,EAAKQ,GAC7Bx0D,EAAO00D,iBAAiBF,IAI5BA,EAAIJ,QAAU,WACVnuH,QAAQ28D,MAAM,wBAAyBoxD,GAEvCh0D,EAAO20D,kBAAkBX,EAAKE,EAAWM,IAI7CA,EAAI9mF,IAAMsmF,EAGHQ,MAIR7qI,IAGXzD,GAAQ,WAAayD,EACrBxD,EAAOD,QAAUA,EAAQ,YAIrB,SAASC,EAAQD,GAKrBA,EAAY,IACV0uI,KAAM,OACNC,IAAK,kBACLC,KAAM,OACNvO,QAAS,WACTC,QAAS,WACTjgC,SAAU,YACVkgC,SAAU,YACVsO,eAAgB,+CAChBC,gBAAiB,qEACjBC,oBAAqB,wEACrBC,gBAAiB,kCACjBC,mBAAoB,8BACpBC,iBAAkB,8BAEpBlvI,EAAe,MAAIA,EAAY,GAC/BA,EAAe,MAAIA,EAAY,GAG/BA,EAAY,IACV0uI,KAAM,YACNC,IAAK,iBACLC,KAAM,SACNvO,QAAS,oBACTC,QAAS,mBACTjgC,SAAU,mBACVkgC,SAAU,kBACVsO,eAAgB,oEAChBC,gBAAiB,8FACjBC,oBAAqB,0FACrBC,gBAAiB,0DACjBC,mBAAoB,wCACpBC,iBAAkB,yCAEpBlvI,EAAe,MAAIA,EAAY,GAG/BA,EAAY,IACV0uI,KAAM,SACNC,IAAK,qBACLC,KAAM,QACNvO,QAAS,cACTC,QAAS,gBACTjgC,SAAU,cACVkgC,SAAU;AACVsO,eAAgB,0DAChBC,gBAAiB,8EACjBC,oBAAqB,2EACrBC,gBAAiB,8CACjBC,mBAAoB,iCACpBC,iBAAkB,gCAEpBlvI,EAAe,MAAIA,EAAY,GAG/BA,EAAY,IACV0uI,KAAM,WACNC,IAAK,uBACLC,KAAM,QACNvO,QAAS,iBACTC,QAAS,iBACTjgC,SAAU,gBACVkgC,SAAU,gBACVsO,eAAgB,uDAChBC,gBAAiB,6EACjBC,oBAAqB,kFACrBC,gBAAiB,wCACjBC,mBAAoB,0CACpBC,iBAAkB,0CAEpBlvI,EAAe,MAAIA,EAAY,GAC/BA,EAAe,MAAIA,EAAY","file":"vis.map"} \ No newline at end of file diff --git a/dist/vis.min.js b/dist/vis.min.js index d3274fe6..e81b83ee 100644 --- a/dist/vis.min.js +++ b/dist/vis.min.js @@ -4,8 +4,8 @@ * * A dynamic, browser-based visualization library. * - * @version 4.13.0 - * @date 2016-02-01 + * @version 4.14.0 + * @date 2016-02-04 * * @license * Copyright (C) 2011-2016 Almende B.V, http://almende.com @@ -23,23 +23,23 @@ * Vis.js may be distributed under either license. */ "use strict";!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.vis=e():t.vis=e()}(this,function(){return function(t){function e(o){if(i[o])return i[o].exports;var n=i[o]={exports:{},id:o,loaded:!1};return t[o].call(n.exports,n,n.exports,e),n.loaded=!0,n.exports}var i={};return e.m=t,e.c=i,e.p="",e(0)}([function(t,e,i){e.util=i(1),e.DOMutil=i(7),e.DataSet=i(8),e.DataView=i(10),e.Queue=i(9),e.Graph3d=i(11),e.graph3d={Camera:i(15),Filter:i(16),Point2d:i(14),Point3d:i(13),Slider:i(17),StepNumber:i(18)},e.Timeline=i(19),e.Graph2d=i(48),e.timeline={Core:i(27),DateUtil:i(26),Range:i(23),stack:i(31),TimeStep:i(29),components:{items:{Item:i(33),BackgroundItem:i(37),BoxItem:i(35),PointItem:i(36),RangeItem:i(32)},BackgroundGroup:i(34),Component:i(25),CurrentTime:i(43),CustomTime:i(41),DataAxis:i(50),DataScale:i(51),GraphGroup:i(52),Group:i(30),ItemSet:i(28),Legend:i(56),LineGraph:i(49),TimeAxis:i(38)}},e.Network=i(58),e.network={Images:i(116),dotparser:i(114),gephiParser:i(115),allOptions:i(110)},e.network.convertDot=function(t){return e.network.dotparser.DOTToGraph(t)},e.network.convertGephi=function(t,i){return e.network.gephiParser.parseGephi(t,i)},e.moment=i(2),e.Hammer=i(20),e.keycharm=i(40)},function(t,e,i){var o=i(2),n=i(6);e.isNumber=function(t){return t instanceof Number||"number"==typeof t},e.recursiveDOMDelete=function(t){if(t)for(;t.hasChildNodes()===!0;)e.recursiveDOMDelete(t.firstChild),t.removeChild(t.firstChild)},e.giveRange=function(t,e,i,o){if(e==t)return.5;var n=1/(e-t);return Math.max(0,(o-t)*n)},e.isString=function(t){return t instanceof String||"string"==typeof t},e.isDate=function(t){if(t instanceof Date)return!0;if(e.isString(t)){var i=s.exec(t);if(i)return!0;if(!isNaN(Date.parse(t)))return!0}return!1},e.randomUUID=function(){return n.v4()},e.assignAllKeys=function(t,e){for(var i in t)t.hasOwnProperty(i)&&"object"!=typeof t[i]&&(t[i]=e)},e.fillIfDefined=function(t,i){var o=arguments.length<=2||void 0===arguments[2]?!1:arguments[2];for(var n in t)void 0!==i[n]&&("object"!=typeof i[n]?void 0!==i[n]&&null!==i[n]||void 0===t[n]||o!==!0?t[n]=i[n]:delete t[n]:"object"==typeof t[n]&&e.fillIfDefined(t[n],i[n],o))},e.protoExtend=function(t,e){for(var i=1;ii;i++)if(t[i]!=e[i])return!1;return!0},e.convert=function(t,i){var n;if(void 0!==t){if(null===t)return null;if(!i)return t;if("string"!=typeof i&&!(i instanceof String))throw new Error("Type must be a string");switch(i){case"boolean":case"Boolean":return Boolean(t);case"number":case"Number":return Number(t.valueOf());case"string":case"String":return String(t);case"Date":if(e.isNumber(t))return new Date(t);if(t instanceof Date)return new Date(t.valueOf());if(o.isMoment(t))return new Date(t.valueOf());if(e.isString(t))return n=s.exec(t),n?new Date(Number(n[1])):o(t).toDate();throw new Error("Cannot convert object of type "+e.getType(t)+" to type Date");case"Moment":if(e.isNumber(t))return o(t);if(t instanceof Date)return o(t.valueOf());if(o.isMoment(t))return o(t);if(e.isString(t))return n=s.exec(t),o(n?Number(n[1]):t);throw new Error("Cannot convert object of type "+e.getType(t)+" to type Date");case"ISODate":if(e.isNumber(t))return new Date(t);if(t instanceof Date)return t.toISOString();if(o.isMoment(t))return t.toDate().toISOString();if(e.isString(t))return n=s.exec(t),n?new Date(Number(n[1])).toISOString():new Date(t).toISOString();throw new Error("Cannot convert object of type "+e.getType(t)+" to type ISODate");case"ASPDate":if(e.isNumber(t))return"/Date("+t+")/";if(t instanceof Date)return"/Date("+t.valueOf()+")/";if(e.isString(t)){n=s.exec(t);var r;return r=n?new Date(Number(n[1])).valueOf():new Date(t).valueOf(),"/Date("+r+")/"}throw new Error("Cannot convert object of type "+e.getType(t)+" to type ASPDate");default:throw new Error('Unknown type "'+i+'"')}}};var s=/^\/?Date\((\-?\d+)/i;e.getType=function(t){var e=typeof t;return"object"==e?null===t?"null":t instanceof Boolean?"Boolean":t instanceof Number?"Number":t instanceof String?"String":Array.isArray(t)?"Array":t instanceof Date?"Date":"Object":"number"==e?"Number":"boolean"==e?"Boolean":"string"==e?"String":void 0===e?"undefined":e},e.copyAndExtendArray=function(t,e){for(var i=[],o=0;oi;i++)e(t[i],i,t);else for(i in t)t.hasOwnProperty(i)&&e(t[i],i,t)},e.toArray=function(t){var e=[];for(var i in t)t.hasOwnProperty(i)&&e.push(t[i]);return e},e.updateProperty=function(t,e,i){return t[e]!==i?(t[e]=i,!0):!1},e.throttle=function(t,e){var i=null,o=!1;return function n(){i?o=!0:(o=!1,t(),i=setTimeout(function(){i=null,o&&n()},e))}},e.addEventListener=function(t,e,i,o){t.addEventListener?(void 0===o&&(o=!1),"mousewheel"===e&&navigator.userAgent.indexOf("Firefox")>=0&&(e="DOMMouseScroll"),t.addEventListener(e,i,o)):t.attachEvent("on"+e,i)},e.removeEventListener=function(t,e,i,o){t.removeEventListener?(void 0===o&&(o=!1),"mousewheel"===e&&navigator.userAgent.indexOf("Firefox")>=0&&(e="DOMMouseScroll"),t.removeEventListener(e,i,o)):t.detachEvent("on"+e,i)},e.preventDefault=function(t){t||(t=window.event),t.preventDefault?t.preventDefault():t.returnValue=!1},e.getTarget=function(t){t||(t=window.event);var e;return t.target?e=t.target:t.srcElement&&(e=t.srcElement),void 0!=e.nodeType&&3==e.nodeType&&(e=e.parentNode),e},e.hasParent=function(t,e){for(var i=t;i;){if(i===e)return!0;i=i.parentNode}return!1},e.option={},e.option.asBoolean=function(t,e){return"function"==typeof t&&(t=t()),null!=t?0!=t:e||null},e.option.asNumber=function(t,e){return"function"==typeof t&&(t=t()),null!=t?Number(t)||e||null:e||null},e.option.asString=function(t,e){return"function"==typeof t&&(t=t()),null!=t?String(t):e||null},e.option.asSize=function(t,i){return"function"==typeof t&&(t=t()),e.isString(t)?t:e.isNumber(t)?t+"px":i||null},e.option.asElement=function(t,e){return"function"==typeof t&&(t=t()),t||e||null},e.hexToRGB=function(t){var e=/^#?([a-f\d])([a-f\d])([a-f\d])$/i;t=t.replace(e,function(t,e,i,o){return e+e+i+i+o+o});var i=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return i?{r:parseInt(i[1],16),g:parseInt(i[2],16),b:parseInt(i[3],16)}:null},e.overrideOpacity=function(t,i){if(-1!=t.indexOf("rgba"))return t;if(-1!=t.indexOf("rgb")){var o=t.substr(t.indexOf("(")+1).replace(")","").split(",");return"rgba("+o[0]+","+o[1]+","+o[2]+","+i+")"}var o=e.hexToRGB(t);return null==o?t:"rgba("+o.r+","+o.g+","+o.b+","+i+")"},e.RGBToHex=function(t,e,i){return"#"+((1<<24)+(t<<16)+(e<<8)+i).toString(16).slice(1)},e.parseColor=function(t){var i;if(e.isString(t)===!0){if(e.isValidRGB(t)===!0){var o=t.substr(4).substr(0,t.length-5).split(",").map(function(t){return parseInt(t)});t=e.RGBToHex(o[0],o[1],o[2])}if(e.isValidHex(t)===!0){var n=e.hexToHSV(t),s={h:n.h,s:.8*n.s,v:Math.min(1,1.02*n.v)},r={h:n.h,s:Math.min(1,1.25*n.s),v:.8*n.v},a=e.HSVToHex(r.h,r.s,r.v),h=e.HSVToHex(s.h,s.s,s.v);i={background:t,border:a,highlight:{background:h,border:a},hover:{background:h,border:a}}}else i={background:t,border:t,highlight:{background:t,border:t},hover:{background:t,border:t}}}else i={},i.background=t.background||void 0,i.border=t.border||void 0,e.isString(t.highlight)?i.highlight={border:t.highlight,background:t.highlight}:(i.highlight={},i.highlight.background=t.highlight&&t.highlight.background||void 0,i.highlight.border=t.highlight&&t.highlight.border||void 0),e.isString(t.hover)?i.hover={border:t.hover,background:t.hover}:(i.hover={},i.hover.background=t.hover&&t.hover.background||void 0,i.hover.border=t.hover&&t.hover.border||void 0);return i},e.RGBToHSV=function(t,e,i){t/=255,e/=255,i/=255;var o=Math.min(t,Math.min(e,i)),n=Math.max(t,Math.max(e,i));if(o==n)return{h:0,s:0,v:o};var s=t==o?e-i:i==o?t-e:i-t,r=t==o?3:i==o?1:5,a=60*(r-s/(n-o))/360,h=(n-o)/n,d=n;return{h:a,s:h,v:d}};var r={split:function(t){var e={};return t.split(";").forEach(function(t){if(""!=t.trim()){var i=t.split(":"),o=i[0].trim(),n=i[1].trim();e[o]=n}}),e},join:function(t){return Object.keys(t).map(function(e){return e+": "+t[e]}).join("; ")}};e.addCssText=function(t,i){var o=r.split(t.style.cssText),n=r.split(i),s=e.extend(o,n);t.style.cssText=r.join(s)},e.removeCssText=function(t,e){var i=r.split(t.style.cssText),o=r.split(e);for(var n in o)o.hasOwnProperty(n)&&delete i[n];t.style.cssText=r.join(i)},e.HSVToRGB=function(t,e,i){var o,n,s,r=Math.floor(6*t),a=6*t-r,h=i*(1-e),d=i*(1-a*e),l=i*(1-(1-a)*e);switch(r%6){case 0:o=i,n=l,s=h;break;case 1:o=d,n=i,s=h;break;case 2:o=h,n=i,s=l;break;case 3:o=h,n=d,s=i;break;case 4:o=l,n=h,s=i;break;case 5:o=i,n=h,s=d}return{r:Math.floor(255*o),g:Math.floor(255*n),b:Math.floor(255*s)}},e.HSVToHex=function(t,i,o){var n=e.HSVToRGB(t,i,o);return e.RGBToHex(n.r,n.g,n.b)},e.hexToHSV=function(t){var i=e.hexToRGB(t);return e.RGBToHSV(i.r,i.g,i.b)},e.isValidHex=function(t){var e=/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(t);return e},e.isValidRGB=function(t){t=t.replace(" ","");var e=/rgb\((\d{1,3}),(\d{1,3}),(\d{1,3})\)/i.test(t);return e},e.isValidRGBA=function(t){t=t.replace(" ","");var e=/rgba\((\d{1,3}),(\d{1,3}),(\d{1,3}),(.{1,3})\)/i.test(t);return e},e.selectiveBridgeObject=function(t,i){if("object"==typeof i){for(var o=Object.create(i),n=0;n0&&e(o,t[n-1])<0;n--)t[n]=t[n-1];t[n]=o}return t},e.mergeOptions=function(t,e,i){var o=(arguments.length<=3||void 0===arguments[3]?!1:arguments[3],arguments.length<=4||void 0===arguments[4]?{}:arguments[4]);if(null===e[i])t[i]=Object.create(o[i]);else if(void 0!==e[i])if("boolean"==typeof e[i])t[i].enabled=e[i];else{void 0===e[i].enabled&&(t[i].enabled=!0);for(var n in e[i])e[i].hasOwnProperty(n)&&(t[i][n]=e[i][n])}},e.binarySearchCustom=function(t,e,i,o){for(var n=1e4,s=0,r=0,a=t.length-1;a>=r&&n>s;){var h=Math.floor((r+a)/2),d=t[h],l=void 0===o?d[i]:d[i][o],u=e(l);if(0==u)return h;-1==u?r=h+1:a=h-1,s++}return-1},e.binarySearchValue=function(t,e,i,o,n){for(var s,r,a,h,d=1e4,l=0,u=0,c=t.length-1,n=void 0!=n?n:function(t,e){return t==e?0:e>t?-1:1};c>=u&&d>l;){if(h=Math.floor(.5*(c+u)),s=t[Math.max(0,h-1)][i],r=t[h][i],a=t[Math.min(t.length-1,h+1)][i],0==n(r,e))return h;if(n(s,e)<0&&n(r,e)>0)return"before"==o?Math.max(0,h-1):h;if(n(r,e)<0&&n(a,e)>0)return"before"==o?h:Math.min(t.length-1,h+1);n(r,e)<0?u=h+1:c=h-1,l++}return-1},e.easingFunctions={linear:function(t){return t},easeInQuad:function(t){return t*t},easeOutQuad:function(t){return t*(2-t)},easeInOutQuad:function(t){return.5>t?2*t*t:-1+(4-2*t)*t},easeInCubic:function(t){return t*t*t},easeOutCubic:function(t){return--t*t*t+1},easeInOutCubic:function(t){return.5>t?4*t*t*t:(t-1)*(2*t-2)*(2*t-2)+1},easeInQuart:function(t){return t*t*t*t},easeOutQuart:function(t){return 1- --t*t*t*t},easeInOutQuart:function(t){return.5>t?8*t*t*t*t:1-8*--t*t*t*t},easeInQuint:function(t){return t*t*t*t*t},easeOutQuint:function(t){return 1+--t*t*t*t*t},easeInOutQuint:function(t){return.5>t?16*t*t*t*t*t:1+16*--t*t*t*t*t}}},function(t,e,i){t.exports="undefined"!=typeof window&&window.moment||i(3)},function(t,e,i){(function(t){!function(e,i){t.exports=i()}(this,function(){function e(){return qi.apply(null,arguments)}function i(t){qi=t}function o(t){return"[object Array]"===Object.prototype.toString.call(t)}function n(t){return t instanceof Date||"[object Date]"===Object.prototype.toString.call(t)}function s(t,e){var i,o=[];for(i=0;i0)for(i in Zi)o=Zi[i],n=e[o],p(n)||(t[o]=n);return t}function m(t){f(this,t),this._d=new Date(null!=t._d?t._d.getTime():NaN),Ki===!1&&(Ki=!0,e.updateOffset(this),Ki=!1)}function v(t){return t instanceof m||null!=t&&null!=t._isAMomentObject}function g(t){return 0>t?Math.ceil(t):Math.floor(t)}function y(t){var e=+t,i=0;return 0!==e&&isFinite(e)&&(i=g(e)),i}function b(t,e,i){var o,n=Math.min(t.length,e.length),s=Math.abs(t.length-e.length),r=0;for(o=0;n>o;o++)(i&&t[o]!==e[o]||!i&&y(t[o])!==y(e[o]))&&r++;return r+s}function _(){}function w(t){return t?t.toLowerCase().replace("_","-"):t}function x(t){for(var e,i,o,n,s=0;s0;){if(o=k(n.slice(0,e).join("-")))return o;if(i&&i.length>=e&&b(n,i,!0)>=e-1)break;e--}s++}return null}function k(e){var i=null;if(!Ji[e]&&"undefined"!=typeof t&&t&&t.exports)try{i=Xi._abbr,!function(){var t=new Error('Cannot find module "./locale"');throw t.code="MODULE_NOT_FOUND",t}(),O(i)}catch(o){}return Ji[e]}function O(t,e){var i;return t&&(i=p(e)?D(t):M(t,e),i&&(Xi=i)),Xi._abbr}function M(t,e){return null!==e?(e.abbr=t,Ji[t]=Ji[t]||new _,Ji[t].set(e),O(t),Ji[t]):(delete Ji[t],null)}function D(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return Xi;if(!o(t)){if(e=k(t))return e;t=[t]}return x(t)}function C(t,e){var i=t.toLowerCase();Qi[i]=Qi[i+"s"]=Qi[e]=t}function S(t){return"string"==typeof t?Qi[t]||Qi[t.toLowerCase()]:void 0}function T(t){var e,i,o={};for(i in t)r(t,i)&&(e=S(i),e&&(o[e]=t[i]));return o}function E(t){return t instanceof Function||"[object Function]"===Object.prototype.toString.call(t)}function P(t,i){return function(o){return null!=o?(N(this,t,o),e.updateOffset(this,i),this):I(this,t)}}function I(t,e){return t.isValid()?t._d["get"+(t._isUTC?"UTC":"")+e]():NaN}function N(t,e,i){t.isValid()&&t._d["set"+(t._isUTC?"UTC":"")+e](i)}function z(t,e){var i;if("object"==typeof t)for(i in t)this.set(i,t[i]);else if(t=S(t),E(this[t]))return this[t](e);return this}function L(t,e,i){var o=""+Math.abs(t),n=e-o.length,s=t>=0;return(s?i?"+":"":"-")+Math.pow(10,Math.max(0,n)).toString().substr(1)+o}function A(t,e,i,o){var n=o;"string"==typeof o&&(n=function(){return this[o]()}),t&&(io[t]=n),e&&(io[e[0]]=function(){return L(n.apply(this,arguments),e[1],e[2])}),i&&(io[i]=function(){return this.localeData().ordinal(n.apply(this,arguments),t)})}function F(t){return t.match(/\[[\s\S]/)?t.replace(/^\[|\]$/g,""):t.replace(/\\/g,"")}function B(t){var e,i,o=t.match($i);for(e=0,i=o.length;i>e;e++)io[o[e]]?o[e]=io[o[e]]:o[e]=F(o[e]);return function(n){var s="";for(e=0;i>e;e++)s+=o[e]instanceof Function?o[e].call(n,t):o[e];return s}}function R(t,e){return t.isValid()?(e=j(e,t.localeData()),eo[e]=eo[e]||B(e),eo[e](t)):t.localeData().invalidDate()}function j(t,e){function i(t){return e.longDateFormat(t)||t}var o=5;for(to.lastIndex=0;o>=0&&to.test(t);)t=t.replace(to,i),to.lastIndex=0,o-=1;return t}function H(t,e,i){wo[t]=E(e)?e:function(t,o){return t&&i?i:e}}function W(t,e){return r(wo,t)?wo[t](e._strict,e._locale):new RegExp(Y(t))}function Y(t){return G(t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(t,e,i,o,n){return e||i||o||n}))}function G(t){return t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function V(t,e){var i,o=e;for("string"==typeof t&&(t=[t]),"number"==typeof e&&(o=function(t,i){i[e]=y(t)}),i=0;io;o++){if(n=h([2e3,o]),i&&!this._longMonthsParse[o]&&(this._longMonthsParse[o]=new RegExp("^"+this.months(n,"").replace(".","")+"$","i"),this._shortMonthsParse[o]=new RegExp("^"+this.monthsShort(n,"").replace(".","")+"$","i")),i||this._monthsParse[o]||(s="^"+this.months(n,"")+"|^"+this.monthsShort(n,""),this._monthsParse[o]=new RegExp(s.replace(".",""),"i")),i&&"MMMM"===e&&this._longMonthsParse[o].test(t))return o;if(i&&"MMM"===e&&this._shortMonthsParse[o].test(t))return o;if(!i&&this._monthsParse[o].test(t))return o}}function Q(t,e){var i;return t.isValid()?"string"==typeof e&&(e=t.localeData().monthsParse(e),"number"!=typeof e)?t:(i=Math.min(t.date(),X(t.year(),e)),t._d["set"+(t._isUTC?"UTC":"")+"Month"](e,i),t):t}function $(t){return null!=t?(Q(this,t),e.updateOffset(this,!0),this):I(this,"Month")}function tt(){return X(this.year(),this.month())}function et(t){return this._monthsParseExact?(r(this,"_monthsRegex")||ot.call(this),t?this._monthsShortStrictRegex:this._monthsShortRegex):this._monthsShortStrictRegex&&t?this._monthsShortStrictRegex:this._monthsShortRegex}function it(t){return this._monthsParseExact?(r(this,"_monthsRegex")||ot.call(this),t?this._monthsStrictRegex:this._monthsRegex):this._monthsStrictRegex&&t?this._monthsStrictRegex:this._monthsRegex}function ot(){function t(t,e){return e.length-t.length}var e,i,o=[],n=[],s=[];for(e=0;12>e;e++)i=h([2e3,e]),o.push(this.monthsShort(i,"")),n.push(this.months(i,"")),s.push(this.months(i,"")),s.push(this.monthsShort(i,""));for(o.sort(t),n.sort(t),s.sort(t),e=0;12>e;e++)o[e]=G(o[e]),n[e]=G(n[e]),s[e]=G(s[e]);this._monthsRegex=new RegExp("^("+s.join("|")+")","i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp("^("+n.join("|")+")$","i"),this._monthsShortStrictRegex=new RegExp("^("+o.join("|")+")$","i")}function nt(t){var e,i=t._a;return i&&-2===l(t).overflow&&(e=i[Oo]<0||i[Oo]>11?Oo:i[Mo]<1||i[Mo]>X(i[ko],i[Oo])?Mo:i[Do]<0||i[Do]>24||24===i[Do]&&(0!==i[Co]||0!==i[So]||0!==i[To])?Do:i[Co]<0||i[Co]>59?Co:i[So]<0||i[So]>59?So:i[To]<0||i[To]>999?To:-1,l(t)._overflowDayOfYear&&(ko>e||e>Mo)&&(e=Mo),l(t)._overflowWeeks&&-1===e&&(e=Eo),l(t)._overflowWeekday&&-1===e&&(e=Po),l(t).overflow=e),t}function st(t){e.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function rt(t,e){var i=!0;return a(function(){return i&&(st(t+"\nArguments: "+Array.prototype.slice.call(arguments).join(", ")+"\n"+(new Error).stack),i=!1),e.apply(this,arguments)},e)}function at(t,e){Fo[t]||(st(e),Fo[t]=!0)}function ht(t){var e,i,o,n,s,r,a=t._i,h=Bo.exec(a)||Ro.exec(a);if(h){for(l(t).iso=!0,e=0,i=Ho.length;i>e;e++)if(Ho[e][1].exec(h[1])){n=Ho[e][0],o=Ho[e][2]!==!1;break}if(null==n)return void(t._isValid=!1);if(h[3]){for(e=0,i=Wo.length;i>e;e++)if(Wo[e][1].exec(h[3])){s=(h[2]||" ")+Wo[e][0];break}if(null==s)return void(t._isValid=!1)}if(!o&&null!=s)return void(t._isValid=!1);if(h[4]){if(!jo.exec(h[4]))return void(t._isValid=!1);r="Z"}t._f=n+(s||"")+(r||""),kt(t)}else t._isValid=!1}function dt(t){var i=Yo.exec(t._i);return null!==i?void(t._d=new Date(+i[1])):(ht(t),void(t._isValid===!1&&(delete t._isValid,e.createFromInputFallback(t))))}function lt(t,e,i,o,n,s,r){var a=new Date(t,e,i,o,n,s,r);return 100>t&&t>=0&&isFinite(a.getFullYear())&&a.setFullYear(t),a}function ut(t){var e=new Date(Date.UTC.apply(null,arguments));return 100>t&&t>=0&&isFinite(e.getUTCFullYear())&&e.setUTCFullYear(t),e}function ct(t){return pt(t)?366:365}function pt(t){return t%4===0&&t%100!==0||t%400===0}function ft(){return pt(this.year())}function mt(t,e,i){var o=7+e-i,n=(7+ut(t,0,o).getUTCDay()-e)%7;return-n+o-1}function vt(t,e,i,o,n){var s,r,a=(7+i-o)%7,h=mt(t,o,n),d=1+7*(e-1)+a+h;return 0>=d?(s=t-1,r=ct(s)+d):d>ct(t)?(s=t+1,r=d-ct(t)):(s=t,r=d),{year:s,dayOfYear:r}}function gt(t,e,i){var o,n,s=mt(t.year(),e,i),r=Math.floor((t.dayOfYear()-s-1)/7)+1;return 1>r?(n=t.year()-1,o=r+yt(n,e,i)):r>yt(t.year(),e,i)?(o=r-yt(t.year(),e,i),n=t.year()+1):(n=t.year(),o=r),{week:o,year:n}}function yt(t,e,i){var o=mt(t,e,i),n=mt(t+1,e,i);return(ct(t)-o+n)/7}function bt(t,e,i){return null!=t?t:null!=e?e:i}function _t(t){var i=new Date(e.now());return t._useUTC?[i.getUTCFullYear(),i.getUTCMonth(),i.getUTCDate()]:[i.getFullYear(),i.getMonth(),i.getDate()]}function wt(t){var e,i,o,n,s=[];if(!t._d){for(o=_t(t),t._w&&null==t._a[Mo]&&null==t._a[Oo]&&xt(t),t._dayOfYear&&(n=bt(t._a[ko],o[ko]),t._dayOfYear>ct(n)&&(l(t)._overflowDayOfYear=!0),i=ut(n,0,t._dayOfYear),t._a[Oo]=i.getUTCMonth(),t._a[Mo]=i.getUTCDate()),e=0;3>e&&null==t._a[e];++e)t._a[e]=s[e]=o[e];for(;7>e;e++)t._a[e]=s[e]=null==t._a[e]?2===e?1:0:t._a[e];24===t._a[Do]&&0===t._a[Co]&&0===t._a[So]&&0===t._a[To]&&(t._nextDay=!0,t._a[Do]=0),t._d=(t._useUTC?ut:lt).apply(null,s),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[Do]=24)}}function xt(t){var e,i,o,n,s,r,a,h;e=t._w,null!=e.GG||null!=e.W||null!=e.E?(s=1,r=4,i=bt(e.GG,t._a[ko],gt(Pt(),1,4).year),o=bt(e.W,1),n=bt(e.E,1),(1>n||n>7)&&(h=!0)):(s=t._locale._week.dow,r=t._locale._week.doy,i=bt(e.gg,t._a[ko],gt(Pt(),s,r).year),o=bt(e.w,1),null!=e.d?(n=e.d,(0>n||n>6)&&(h=!0)):null!=e.e?(n=e.e+s,(e.e<0||e.e>6)&&(h=!0)):n=s),1>o||o>yt(i,s,r)?l(t)._overflowWeeks=!0:null!=h?l(t)._overflowWeekday=!0:(a=vt(i,o,n,s,r),t._a[ko]=a.year,t._dayOfYear=a.dayOfYear)}function kt(t){if(t._f===e.ISO_8601)return void ht(t);t._a=[],l(t).empty=!0;var i,o,n,s,r,a=""+t._i,h=a.length,d=0;for(n=j(t._f,t._locale).match($i)||[],i=0;i0&&l(t).unusedInput.push(r),a=a.slice(a.indexOf(o)+o.length),d+=o.length),io[s]?(o?l(t).empty=!1:l(t).unusedTokens.push(s),q(s,o,t)):t._strict&&!o&&l(t).unusedTokens.push(s);l(t).charsLeftOver=h-d,a.length>0&&l(t).unusedInput.push(a),l(t).bigHour===!0&&t._a[Do]<=12&&t._a[Do]>0&&(l(t).bigHour=void 0),t._a[Do]=Ot(t._locale,t._a[Do],t._meridiem),wt(t),nt(t)}function Ot(t,e,i){var o;return null==i?e:null!=t.meridiemHour?t.meridiemHour(e,i):null!=t.isPM?(o=t.isPM(i),o&&12>e&&(e+=12),o||12!==e||(e=0),e):e}function Mt(t){var e,i,o,n,s;if(0===t._f.length)return l(t).invalidFormat=!0,void(t._d=new Date(NaN));for(n=0;ns)&&(o=s,i=e));a(t,i||e)}function Dt(t){if(!t._d){var e=T(t._i);t._a=s([e.year,e.month,e.day||e.date,e.hour,e.minute,e.second,e.millisecond],function(t){return t&&parseInt(t,10)}),wt(t)}}function Ct(t){var e=new m(nt(St(t)));return e._nextDay&&(e.add(1,"d"),e._nextDay=void 0),e}function St(t){var e=t._i,i=t._f;return t._locale=t._locale||D(t._l),null===e||void 0===i&&""===e?c({nullInput:!0}):("string"==typeof e&&(t._i=e=t._locale.preparse(e)),v(e)?new m(nt(e)):(o(i)?Mt(t):i?kt(t):n(e)?t._d=e:Tt(t),u(t)||(t._d=null),t))}function Tt(t){var i=t._i;void 0===i?t._d=new Date(e.now()):n(i)?t._d=new Date(+i):"string"==typeof i?dt(t):o(i)?(t._a=s(i.slice(0),function(t){return parseInt(t,10)}),wt(t)):"object"==typeof i?Dt(t):"number"==typeof i?t._d=new Date(i):e.createFromInputFallback(t)}function Et(t,e,i,o,n){var s={};return"boolean"==typeof i&&(o=i,i=void 0),s._isAMomentObject=!0,s._useUTC=s._isUTC=n,s._l=i,s._i=t,s._f=e,s._strict=o,Ct(s)}function Pt(t,e,i,o){return Et(t,e,i,o,!1)}function It(t,e){var i,n;if(1===e.length&&o(e[0])&&(e=e[0]),!e.length)return Pt();for(i=e[0],n=1;nt&&(t=-t,i="-"),i+L(~~(t/60),2)+e+L(~~t%60,2)})}function Bt(t,e){var i=(e||"").match(t)||[],o=i[i.length-1]||[],n=(o+"").match(Xo)||["-",0,0],s=+(60*n[1])+y(n[2]);return"+"===n[0]?s:-s}function Rt(t,i){var o,s;return i._isUTC?(o=i.clone(),s=(v(t)||n(t)?+t:+Pt(t))-+o,o._d.setTime(+o._d+s),e.updateOffset(o,!1),o):Pt(t).local()}function jt(t){return 15*-Math.round(t._d.getTimezoneOffset()/15)}function Ht(t,i){var o,n=this._offset||0;return this.isValid()?null!=t?("string"==typeof t?t=Bt(yo,t):Math.abs(t)<16&&(t=60*t),!this._isUTC&&i&&(o=jt(this)),this._offset=t,this._isUTC=!0,null!=o&&this.add(o,"m"),n!==t&&(!i||this._changeInProgress?oe(this,Qt(t-n,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,e.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?n:jt(this):null!=t?this:NaN}function Wt(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()}function Yt(t){return this.utcOffset(0,t)}function Gt(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(jt(this),"m")),this}function Vt(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(Bt(go,this._i)),this}function Ut(t){return this.isValid()?(t=t?Pt(t).utcOffset():0,(this.utcOffset()-t)%60===0):!1}function qt(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function Xt(){if(!p(this._isDSTShifted))return this._isDSTShifted;var t={};if(f(t,this),t=St(t),t._a){var e=t._isUTC?h(t._a):Pt(t._a);this._isDSTShifted=this.isValid()&&b(t._a,e.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}function Zt(){return this.isValid()?!this._isUTC:!1}function Kt(){return this.isValid()?this._isUTC:!1}function Jt(){return this.isValid()?this._isUTC&&0===this._offset:!1}function Qt(t,e){var i,o,n,s=t,a=null;return At(t)?s={ms:t._milliseconds,d:t._days,M:t._months}:"number"==typeof t?(s={},e?s[e]=t:s.milliseconds=t):(a=Zo.exec(t))?(i="-"===a[1]?-1:1,s={y:0,d:y(a[Mo])*i,h:y(a[Do])*i,m:y(a[Co])*i,s:y(a[So])*i,ms:y(a[To])*i}):(a=Ko.exec(t))?(i="-"===a[1]?-1:1,s={y:$t(a[2],i),M:$t(a[3],i),d:$t(a[4],i),h:$t(a[5],i),m:$t(a[6],i),s:$t(a[7],i),w:$t(a[8],i)}):null==s?s={}:"object"==typeof s&&("from"in s||"to"in s)&&(n=ee(Pt(s.from),Pt(s.to)),s={},s.ms=n.milliseconds,s.M=n.months),o=new Lt(s),At(t)&&r(t,"_locale")&&(o._locale=t._locale),o}function $t(t,e){var i=t&&parseFloat(t.replace(",","."));return(isNaN(i)?0:i)*e}function te(t,e){var i={milliseconds:0,months:0};return i.months=e.month()-t.month()+12*(e.year()-t.year()),t.clone().add(i.months,"M").isAfter(e)&&--i.months,i.milliseconds=+e-+t.clone().add(i.months,"M"),i}function ee(t,e){var i;return t.isValid()&&e.isValid()?(e=Rt(e,t),t.isBefore(e)?i=te(t,e):(i=te(e,t),i.milliseconds=-i.milliseconds,i.months=-i.months),i):{milliseconds:0,months:0}}function ie(t,e){return function(i,o){var n,s;return null===o||isNaN(+o)||(at(e,"moment()."+e+"(period, number) is deprecated. Please use moment()."+e+"(number, period)."),s=i,i=o,o=s),i="string"==typeof i?+i:i,n=Qt(i,o),oe(this,n,t),this}}function oe(t,i,o,n){var s=i._milliseconds,r=i._days,a=i._months;t.isValid()&&(n=null==n?!0:n,s&&t._d.setTime(+t._d+s*o),r&&N(t,"Date",I(t,"Date")+r*o),a&&Q(t,I(t,"Month")+a*o),n&&e.updateOffset(t,r||a))}function ne(t,e){var i=t||Pt(),o=Rt(i,this).startOf("day"),n=this.diff(o,"days",!0),s=-6>n?"sameElse":-1>n?"lastWeek":0>n?"lastDay":1>n?"sameDay":2>n?"nextDay":7>n?"nextWeek":"sameElse",r=e&&(E(e[s])?e[s]():e[s]);return this.format(r||this.localeData().calendar(s,this,Pt(i)))}function se(){return new m(this)}function re(t,e){var i=v(t)?t:Pt(t);return this.isValid()&&i.isValid()?(e=S(p(e)?"millisecond":e),"millisecond"===e?+this>+i:+i<+this.clone().startOf(e)):!1}function ae(t,e){var i=v(t)?t:Pt(t);return this.isValid()&&i.isValid()?(e=S(p(e)?"millisecond":e),"millisecond"===e?+i>+this:+this.clone().endOf(e)<+i):!1}function he(t,e,i){return this.isAfter(t,i)&&this.isBefore(e,i)}function de(t,e){var i,o=v(t)?t:Pt(t);return this.isValid()&&o.isValid()?(e=S(e||"millisecond"),"millisecond"===e?+this===+o:(i=+o,+this.clone().startOf(e)<=i&&i<=+this.clone().endOf(e))):!1}function le(t,e){return this.isSame(t,e)||this.isAfter(t,e)} -function ue(t,e){return this.isSame(t,e)||this.isBefore(t,e)}function ce(t,e,i){var o,n,s,r;return this.isValid()?(o=Rt(t,this),o.isValid()?(n=6e4*(o.utcOffset()-this.utcOffset()),e=S(e),"year"===e||"month"===e||"quarter"===e?(r=pe(this,o),"quarter"===e?r/=3:"year"===e&&(r/=12)):(s=this-o,r="second"===e?s/1e3:"minute"===e?s/6e4:"hour"===e?s/36e5:"day"===e?(s-n)/864e5:"week"===e?(s-n)/6048e5:s),i?r:g(r)):NaN):NaN}function pe(t,e){var i,o,n=12*(e.year()-t.year())+(e.month()-t.month()),s=t.clone().add(n,"months");return 0>e-s?(i=t.clone().add(n-1,"months"),o=(e-s)/(s-i)):(i=t.clone().add(n+1,"months"),o=(e-s)/(i-s)),-(n+o)}function fe(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function me(){var t=this.clone().utc();return 0s&&(e=s),He.call(this,t,e,i,o,n))}function He(t,e,i,o,n){var s=vt(t,e,i,o,n),r=ut(s.year,0,s.dayOfYear);return this.year(r.getUTCFullYear()),this.month(r.getUTCMonth()),this.date(r.getUTCDate()),this}function We(t){return null==t?Math.ceil((this.month()+1)/3):this.month(3*(t-1)+this.month()%3)}function Ye(t){return gt(t,this._week.dow,this._week.doy).week}function Ge(){return this._week.dow}function Ve(){return this._week.doy}function Ue(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")}function qe(t){var e=gt(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")}function Xe(t,e){return"string"!=typeof t?t:isNaN(t)?(t=e.weekdaysParse(t),"number"==typeof t?t:null):parseInt(t,10)}function Ze(t,e){return o(this._weekdays)?this._weekdays[t.day()]:this._weekdays[this._weekdays.isFormat.test(e)?"format":"standalone"][t.day()]}function Ke(t){return this._weekdaysShort[t.day()]}function Je(t){return this._weekdaysMin[t.day()]}function Qe(t,e,i){var o,n,s;for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),o=0;7>o;o++){if(n=Pt([2e3,1]).day(o),i&&!this._fullWeekdaysParse[o]&&(this._fullWeekdaysParse[o]=new RegExp("^"+this.weekdays(n,"").replace(".",".?")+"$","i"),this._shortWeekdaysParse[o]=new RegExp("^"+this.weekdaysShort(n,"").replace(".",".?")+"$","i"),this._minWeekdaysParse[o]=new RegExp("^"+this.weekdaysMin(n,"").replace(".",".?")+"$","i")),this._weekdaysParse[o]||(s="^"+this.weekdays(n,"")+"|^"+this.weekdaysShort(n,"")+"|^"+this.weekdaysMin(n,""),this._weekdaysParse[o]=new RegExp(s.replace(".",""),"i")),i&&"dddd"===e&&this._fullWeekdaysParse[o].test(t))return o;if(i&&"ddd"===e&&this._shortWeekdaysParse[o].test(t))return o;if(i&&"dd"===e&&this._minWeekdaysParse[o].test(t))return o;if(!i&&this._weekdaysParse[o].test(t))return o}}function $e(t){if(!this.isValid())return null!=t?this:NaN;var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=Xe(t,this.localeData()),this.add(t-e,"d")):e}function ti(t){if(!this.isValid())return null!=t?this:NaN;var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")}function ei(t){return this.isValid()?null==t?this.day()||7:this.day(this.day()%7?t:t-7):null!=t?this:NaN}function ii(t){var e=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==t?e:this.add(t-e,"d")}function oi(){return this.hours()%12||12}function ni(t,e){A(t,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)})}function si(t,e){return e._meridiemParse}function ri(t){return"p"===(t+"").toLowerCase().charAt(0)}function ai(t,e,i){return t>11?i?"pm":"PM":i?"am":"AM"}function hi(t,e){e[To]=y(1e3*("0."+t))}function di(){return this._isUTC?"UTC":""}function li(){return this._isUTC?"Coordinated Universal Time":""}function ui(t){return Pt(1e3*t)}function ci(){return Pt.apply(null,arguments).parseZone()}function pi(t,e,i){var o=this._calendar[t];return E(o)?o.call(e,i):o}function fi(t){var e=this._longDateFormat[t],i=this._longDateFormat[t.toUpperCase()];return e||!i?e:(this._longDateFormat[t]=i.replace(/MMMM|MM|DD|dddd/g,function(t){return t.slice(1)}),this._longDateFormat[t])}function mi(){return this._invalidDate}function vi(t){return this._ordinal.replace("%d",t)}function gi(t){return t}function yi(t,e,i,o){var n=this._relativeTime[i];return E(n)?n(t,e,i,o):n.replace(/%d/i,t)}function bi(t,e){var i=this._relativeTime[t>0?"future":"past"];return E(i)?i(e):i.replace(/%s/i,e)}function _i(t){var e,i;for(i in t)e=t[i],E(e)?this[i]=e:this["_"+i]=e;this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)}function wi(t,e,i,o){var n=D(),s=h().set(o,e);return n[i](s,t)}function xi(t,e,i,o,n){if("number"==typeof t&&(e=t,t=void 0),t=t||"",null!=e)return wi(t,e,i,n);var s,r=[];for(s=0;o>s;s++)r[s]=wi(t,s,i,n);return r}function ki(t,e){return xi(t,e,"months",12,"month")}function Oi(t,e){return xi(t,e,"monthsShort",12,"month")}function Mi(t,e){return xi(t,e,"weekdays",7,"day")}function Di(t,e){return xi(t,e,"weekdaysShort",7,"day")}function Ci(t,e){return xi(t,e,"weekdaysMin",7,"day")}function Si(){var t=this._data;return this._milliseconds=wn(this._milliseconds),this._days=wn(this._days),this._months=wn(this._months),t.milliseconds=wn(t.milliseconds),t.seconds=wn(t.seconds),t.minutes=wn(t.minutes),t.hours=wn(t.hours),t.months=wn(t.months),t.years=wn(t.years),this}function Ti(t,e,i,o){var n=Qt(e,i);return t._milliseconds+=o*n._milliseconds,t._days+=o*n._days,t._months+=o*n._months,t._bubble()}function Ei(t,e){return Ti(this,t,e,1)}function Pi(t,e){return Ti(this,t,e,-1)}function Ii(t){return 0>t?Math.floor(t):Math.ceil(t)}function Ni(){var t,e,i,o,n,s=this._milliseconds,r=this._days,a=this._months,h=this._data;return s>=0&&r>=0&&a>=0||0>=s&&0>=r&&0>=a||(s+=864e5*Ii(Li(a)+r),r=0,a=0),h.milliseconds=s%1e3,t=g(s/1e3),h.seconds=t%60,e=g(t/60),h.minutes=e%60,i=g(e/60),h.hours=i%24,r+=g(i/24),n=g(zi(r)),a+=n,r-=Ii(Li(n)),o=g(a/12),a%=12,h.days=r,h.months=a,h.years=o,this}function zi(t){return 4800*t/146097}function Li(t){return 146097*t/4800}function Ai(t){var e,i,o=this._milliseconds;if(t=S(t),"month"===t||"year"===t)return e=this._days+o/864e5,i=this._months+zi(e),"month"===t?i:i/12;switch(e=this._days+Math.round(Li(this._months)),t){case"week":return e/7+o/6048e5;case"day":return e+o/864e5;case"hour":return 24*e+o/36e5;case"minute":return 1440*e+o/6e4;case"second":return 86400*e+o/1e3;case"millisecond":return Math.floor(864e5*e)+o;default:throw new Error("Unknown unit "+t)}}function Fi(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*y(this._months/12)}function Bi(t){return function(){return this.as(t)}}function Ri(t){return t=S(t),this[t+"s"]()}function ji(t){return function(){return this._data[t]}}function Hi(){return g(this.days()/7)}function Wi(t,e,i,o,n){return n.relativeTime(e||1,!!i,t,o)}function Yi(t,e,i){var o=Qt(t).abs(),n=Fn(o.as("s")),s=Fn(o.as("m")),r=Fn(o.as("h")),a=Fn(o.as("d")),h=Fn(o.as("M")),d=Fn(o.as("y")),l=n=s&&["m"]||s=r&&["h"]||r=a&&["d"]||a=h&&["M"]||h=d&&["y"]||["yy",d];return l[2]=e,l[3]=+t>0,l[4]=i,Wi.apply(null,l)}function Gi(t,e){return void 0===Bn[t]?!1:void 0===e?Bn[t]:(Bn[t]=e,!0)}function Vi(t){var e=this.localeData(),i=Yi(this,!t,e);return t&&(i=e.pastFuture(+this,i)),e.postformat(i)}function Ui(){var t,e,i,o=Rn(this._milliseconds)/1e3,n=Rn(this._days),s=Rn(this._months);t=g(o/60),e=g(t/60),o%=60,t%=60,i=g(s/12),s%=12;var r=i,a=s,h=n,d=e,l=t,u=o,c=this.asSeconds();return c?(0>c?"-":"")+"P"+(r?r+"Y":"")+(a?a+"M":"")+(h?h+"D":"")+(d||l||u?"T":"")+(d?d+"H":"")+(l?l+"M":"")+(u?u+"S":""):"P0D"}var qi,Xi,Zi=e.momentProperties=[],Ki=!1,Ji={},Qi={},$i=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,to=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,eo={},io={},oo=/\d/,no=/\d\d/,so=/\d{3}/,ro=/\d{4}/,ao=/[+-]?\d{6}/,ho=/\d\d?/,lo=/\d\d\d\d?/,uo=/\d\d\d\d\d\d?/,co=/\d{1,3}/,po=/\d{1,4}/,fo=/[+-]?\d{1,6}/,mo=/\d+/,vo=/[+-]?\d+/,go=/Z|[+-]\d\d:?\d\d/gi,yo=/Z|[+-]\d\d(?::?\d\d)?/gi,bo=/[+-]?\d+(\.\d{1,3})?/,_o=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,wo={},xo={},ko=0,Oo=1,Mo=2,Do=3,Co=4,So=5,To=6,Eo=7,Po=8;A("M",["MM",2],"Mo",function(){return this.month()+1}),A("MMM",0,0,function(t){return this.localeData().monthsShort(this,t)}),A("MMMM",0,0,function(t){return this.localeData().months(this,t)}),C("month","M"),H("M",ho),H("MM",ho,no),H("MMM",function(t,e){return e.monthsShortRegex(t)}),H("MMMM",function(t,e){return e.monthsRegex(t)}),V(["M","MM"],function(t,e){e[Oo]=y(t)-1}),V(["MMM","MMMM"],function(t,e,i,o){var n=i._locale.monthsParse(t,o,i._strict);null!=n?e[Oo]=n:l(i).invalidMonth=t});var Io=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/,No="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),zo="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),Lo=_o,Ao=_o,Fo={};e.suppressDeprecationWarnings=!1;var Bo=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/,Ro=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/,jo=/Z|[+-]\d\d(?::?\d\d)?/,Ho=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],Wo=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],Yo=/^\/?Date\((\-?\d+)/i;e.createFromInputFallback=rt("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(t){t._d=new Date(t._i+(t._useUTC?" UTC":""))}),A("Y",0,0,function(){var t=this.year();return 9999>=t?""+t:"+"+t}),A(0,["YY",2],0,function(){return this.year()%100}),A(0,["YYYY",4],0,"year"),A(0,["YYYYY",5],0,"year"),A(0,["YYYYYY",6,!0],0,"year"),C("year","y"),H("Y",vo),H("YY",ho,no),H("YYYY",po,ro),H("YYYYY",fo,ao),H("YYYYYY",fo,ao),V(["YYYYY","YYYYYY"],ko),V("YYYY",function(t,i){i[ko]=2===t.length?e.parseTwoDigitYear(t):y(t)}),V("YY",function(t,i){i[ko]=e.parseTwoDigitYear(t)}),V("Y",function(t,e){e[ko]=parseInt(t,10)}),e.parseTwoDigitYear=function(t){return y(t)+(y(t)>68?1900:2e3)};var Go=P("FullYear",!1);e.ISO_8601=function(){};var Vo=rt("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var t=Pt.apply(null,arguments);return this.isValid()&&t.isValid()?this>t?this:t:c()}),Uo=rt("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(){var t=Pt.apply(null,arguments);return this.isValid()&&t.isValid()?t>this?this:t:c()}),qo=function(){return Date.now?Date.now():+new Date};Ft("Z",":"),Ft("ZZ",""),H("Z",yo),H("ZZ",yo),V(["Z","ZZ"],function(t,e,i){i._useUTC=!0,i._tzm=Bt(yo,t)});var Xo=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var Zo=/(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?)?/,Ko=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/;Qt.fn=Lt.prototype;var Jo=ie(1,"add"),Qo=ie(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";var $o=rt("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(t){return void 0===t?this.localeData():this.locale(t)});A(0,["gg",2],0,function(){return this.weekYear()%100}),A(0,["GG",2],0,function(){return this.isoWeekYear()%100}),Le("gggg","weekYear"),Le("ggggg","weekYear"),Le("GGGG","isoWeekYear"),Le("GGGGG","isoWeekYear"),C("weekYear","gg"),C("isoWeekYear","GG"),H("G",vo),H("g",vo),H("GG",ho,no),H("gg",ho,no),H("GGGG",po,ro),H("gggg",po,ro),H("GGGGG",fo,ao),H("ggggg",fo,ao),U(["gggg","ggggg","GGGG","GGGGG"],function(t,e,i,o){e[o.substr(0,2)]=y(t)}),U(["gg","GG"],function(t,i,o,n){i[n]=e.parseTwoDigitYear(t)}),A("Q",0,"Qo","quarter"),C("quarter","Q"),H("Q",oo),V("Q",function(t,e){e[Oo]=3*(y(t)-1)}),A("w",["ww",2],"wo","week"),A("W",["WW",2],"Wo","isoWeek"),C("week","w"),C("isoWeek","W"),H("w",ho),H("ww",ho,no),H("W",ho),H("WW",ho,no),U(["w","ww","W","WW"],function(t,e,i,o){e[o.substr(0,1)]=y(t)});var tn={dow:0,doy:6};A("D",["DD",2],"Do","date"),C("date","D"),H("D",ho),H("DD",ho,no),H("Do",function(t,e){return t?e._ordinalParse:e._ordinalParseLenient}),V(["D","DD"],Mo),V("Do",function(t,e){e[Mo]=y(t.match(ho)[0],10)});var en=P("Date",!0);A("d",0,"do","day"),A("dd",0,0,function(t){return this.localeData().weekdaysMin(this,t)}),A("ddd",0,0,function(t){return this.localeData().weekdaysShort(this,t)}),A("dddd",0,0,function(t){return this.localeData().weekdays(this,t)}),A("e",0,0,"weekday"),A("E",0,0,"isoWeekday"),C("day","d"),C("weekday","e"),C("isoWeekday","E"),H("d",ho),H("e",ho),H("E",ho),H("dd",_o),H("ddd",_o),H("dddd",_o),U(["dd","ddd","dddd"],function(t,e,i,o){var n=i._locale.weekdaysParse(t,o,i._strict);null!=n?e.d=n:l(i).invalidWeekday=t}),U(["d","e","E"],function(t,e,i,o){e[o]=y(t)});var on="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),nn="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),sn="Su_Mo_Tu_We_Th_Fr_Sa".split("_");A("DDD",["DDDD",3],"DDDo","dayOfYear"),C("dayOfYear","DDD"),H("DDD",co),H("DDDD",so),V(["DDD","DDDD"],function(t,e,i){i._dayOfYear=y(t)}),A("H",["HH",2],0,"hour"),A("h",["hh",2],0,oi),A("hmm",0,0,function(){return""+oi.apply(this)+L(this.minutes(),2)}),A("hmmss",0,0,function(){return""+oi.apply(this)+L(this.minutes(),2)+L(this.seconds(),2)}),A("Hmm",0,0,function(){return""+this.hours()+L(this.minutes(),2)}),A("Hmmss",0,0,function(){return""+this.hours()+L(this.minutes(),2)+L(this.seconds(),2)}),ni("a",!0),ni("A",!1),C("hour","h"),H("a",si),H("A",si),H("H",ho),H("h",ho),H("HH",ho,no),H("hh",ho,no),H("hmm",lo),H("hmmss",uo),H("Hmm",lo),H("Hmmss",uo),V(["H","HH"],Do),V(["a","A"],function(t,e,i){i._isPm=i._locale.isPM(t),i._meridiem=t}),V(["h","hh"],function(t,e,i){e[Do]=y(t),l(i).bigHour=!0}),V("hmm",function(t,e,i){var o=t.length-2;e[Do]=y(t.substr(0,o)),e[Co]=y(t.substr(o)),l(i).bigHour=!0}),V("hmmss",function(t,e,i){var o=t.length-4,n=t.length-2;e[Do]=y(t.substr(0,o)),e[Co]=y(t.substr(o,2)),e[So]=y(t.substr(n)),l(i).bigHour=!0}),V("Hmm",function(t,e,i){var o=t.length-2;e[Do]=y(t.substr(0,o)),e[Co]=y(t.substr(o))}),V("Hmmss",function(t,e,i){var o=t.length-4,n=t.length-2;e[Do]=y(t.substr(0,o)),e[Co]=y(t.substr(o,2)),e[So]=y(t.substr(n))});var rn=/[ap]\.?m?\.?/i,an=P("Hours",!0);A("m",["mm",2],0,"minute"),C("minute","m"),H("m",ho),H("mm",ho,no),V(["m","mm"],Co);var hn=P("Minutes",!1);A("s",["ss",2],0,"second"),C("second","s"),H("s",ho),H("ss",ho,no),V(["s","ss"],So);var dn=P("Seconds",!1);A("S",0,0,function(){return~~(this.millisecond()/100)}),A(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),A(0,["SSS",3],0,"millisecond"),A(0,["SSSS",4],0,function(){return 10*this.millisecond()}),A(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),A(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),A(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),A(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),A(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),C("millisecond","ms"),H("S",co,oo),H("SS",co,no),H("SSS",co,so);var ln;for(ln="SSSS";ln.length<=9;ln+="S")H(ln,mo);for(ln="S";ln.length<=9;ln+="S")V(ln,hi);var un=P("Milliseconds",!1);A("z",0,0,"zoneAbbr"),A("zz",0,0,"zoneName");var cn=m.prototype;cn.add=Jo,cn.calendar=ne,cn.clone=se,cn.diff=ce,cn.endOf=Oe,cn.format=ve,cn.from=ge,cn.fromNow=ye,cn.to=be,cn.toNow=_e,cn.get=z,cn.invalidAt=Ne,cn.isAfter=re,cn.isBefore=ae,cn.isBetween=he,cn.isSame=de,cn.isSameOrAfter=le,cn.isSameOrBefore=ue,cn.isValid=Pe,cn.lang=$o,cn.locale=we,cn.localeData=xe,cn.max=Uo,cn.min=Vo,cn.parsingFlags=Ie,cn.set=z,cn.startOf=ke,cn.subtract=Qo,cn.toArray=Se,cn.toObject=Te,cn.toDate=Ce,cn.toISOString=me,cn.toJSON=Ee,cn.toString=fe,cn.unix=De,cn.valueOf=Me,cn.creationData=ze,cn.year=Go,cn.isLeapYear=ft,cn.weekYear=Ae,cn.isoWeekYear=Fe,cn.quarter=cn.quarters=We,cn.month=$,cn.daysInMonth=tt,cn.week=cn.weeks=Ue,cn.isoWeek=cn.isoWeeks=qe,cn.weeksInYear=Re,cn.isoWeeksInYear=Be,cn.date=en,cn.day=cn.days=$e,cn.weekday=ti,cn.isoWeekday=ei,cn.dayOfYear=ii,cn.hour=cn.hours=an,cn.minute=cn.minutes=hn,cn.second=cn.seconds=dn,cn.millisecond=cn.milliseconds=un,cn.utcOffset=Ht,cn.utc=Yt,cn.local=Gt,cn.parseZone=Vt,cn.hasAlignedHourOffset=Ut,cn.isDST=qt,cn.isDSTShifted=Xt,cn.isLocal=Zt,cn.isUtcOffset=Kt,cn.isUtc=Jt,cn.isUTC=Jt,cn.zoneAbbr=di,cn.zoneName=li,cn.dates=rt("dates accessor is deprecated. Use date instead.",en),cn.months=rt("months accessor is deprecated. Use month instead",$),cn.years=rt("years accessor is deprecated. Use year instead",Go),cn.zone=rt("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",Wt);var pn=cn,fn={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},mn={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},vn="Invalid date",gn="%d",yn=/\d{1,2}/,bn={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},_n=_.prototype;_n._calendar=fn,_n.calendar=pi,_n._longDateFormat=mn,_n.longDateFormat=fi,_n._invalidDate=vn,_n.invalidDate=mi,_n._ordinal=gn,_n.ordinal=vi,_n._ordinalParse=yn,_n.preparse=gi,_n.postformat=gi,_n._relativeTime=bn,_n.relativeTime=yi,_n.pastFuture=bi,_n.set=_i,_n.months=Z,_n._months=No,_n.monthsShort=K,_n._monthsShort=zo,_n.monthsParse=J,_n._monthsRegex=Ao,_n.monthsRegex=it,_n._monthsShortRegex=Lo,_n.monthsShortRegex=et,_n.week=Ye,_n._week=tn,_n.firstDayOfYear=Ve,_n.firstDayOfWeek=Ge,_n.weekdays=Ze,_n._weekdays=on,_n.weekdaysMin=Je,_n._weekdaysMin=sn,_n.weekdaysShort=Ke,_n._weekdaysShort=nn,_n.weekdaysParse=Qe,_n.isPM=ri,_n._meridiemParse=rn,_n.meridiem=ai,O("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10,i=1===y(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th";return t+i}}),e.lang=rt("moment.lang is deprecated. Use moment.locale instead.",O),e.langData=rt("moment.langData is deprecated. Use moment.localeData instead.",D);var wn=Math.abs,xn=Bi("ms"),kn=Bi("s"),On=Bi("m"),Mn=Bi("h"),Dn=Bi("d"),Cn=Bi("w"),Sn=Bi("M"),Tn=Bi("y"),En=ji("milliseconds"),Pn=ji("seconds"),In=ji("minutes"),Nn=ji("hours"),zn=ji("days"),Ln=ji("months"),An=ji("years"),Fn=Math.round,Bn={s:45,m:45,h:22,d:26,M:11},Rn=Math.abs,jn=Lt.prototype;jn.abs=Si,jn.add=Ei,jn.subtract=Pi,jn.as=Ai,jn.asMilliseconds=xn,jn.asSeconds=kn,jn.asMinutes=On,jn.asHours=Mn,jn.asDays=Dn,jn.asWeeks=Cn,jn.asMonths=Sn,jn.asYears=Tn,jn.valueOf=Fi,jn._bubble=Ni,jn.get=Ri,jn.milliseconds=En,jn.seconds=Pn,jn.minutes=In,jn.hours=Nn,jn.days=zn,jn.weeks=Hi,jn.months=Ln,jn.years=An,jn.humanize=Vi,jn.toISOString=Ui,jn.toString=Ui,jn.toJSON=Ui,jn.locale=we,jn.localeData=xe,jn.toIsoString=rt("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Ui),jn.lang=$o,A("X",0,0,"unix"),A("x",0,0,"valueOf"),H("x",vo),H("X",bo),V("X",function(t,e,i){i._d=new Date(1e3*parseFloat(t,10))}),V("x",function(t,e,i){i._d=new Date(y(t))}),e.version="2.11.1",i(Pt),e.fn=pn,e.min=Nt,e.max=zt,e.now=qo,e.utc=h,e.unix=ui,e.months=ki,e.isDate=n,e.locale=O,e.invalid=c,e.duration=Qt,e.isMoment=v,e.weekdays=Mi,e.parseZone=ci,e.localeData=D,e.isDuration=At,e.monthsShort=Oi,e.weekdaysMin=Ci,e.defineLocale=M,e.weekdaysShort=Di,e.normalizeUnits=S,e.relativeTimeThreshold=Gi,e.prototype=pn;var Hn=e;return Hn})}).call(e,i(4)(t))},function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children=[],t.webpackPolyfill=1),t}},function(t,e){function i(t){throw new Error("Cannot find module '"+t+"'.")}i.keys=function(){return[]},i.resolve=i,t.exports=i,i.id=5},function(t,e){(function(e){function i(t,e,i){var o=e&&i||0,n=0;for(e=e||[],t.toLowerCase().replace(/[0-9a-f]{2}/g,function(t){16>n&&(e[o+n++]=u[t])});16>n;)e[o+n++]=0;return e}function o(t,e){var i=e||0,o=l;return o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]}function n(t,e,i){var n=e&&i||0,s=e||[];t=t||{};var r=void 0!==t.clockseq?t.clockseq:m,a=void 0!==t.msecs?t.msecs:(new Date).getTime(),h=void 0!==t.nsecs?t.nsecs:g+1,d=a-v+(h-g)/1e4;if(0>d&&void 0===t.clockseq&&(r=r+1&16383),(0>d||a>v)&&void 0===t.nsecs&&(h=0),h>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");v=a,g=h,m=r,a+=122192928e5;var l=(1e4*(268435455&a)+h)%4294967296;s[n++]=l>>>24&255,s[n++]=l>>>16&255,s[n++]=l>>>8&255,s[n++]=255&l;var u=a/4294967296*1e4&268435455;s[n++]=u>>>8&255,s[n++]=255&u,s[n++]=u>>>24&15|16,s[n++]=u>>>16&255,s[n++]=r>>>8|128,s[n++]=255&r;for(var c=t.node||f,p=0;6>p;p++)s[n+p]=c[p];return e?e:o(s)}function s(t,e,i){var n=e&&i||0;"string"==typeof t&&(e="binary"==t?new Array(16):null,t=null),t=t||{};var s=t.random||(t.rng||r)();if(s[6]=15&s[6]|64,s[8]=63&s[8]|128,e)for(var a=0;16>a;a++)e[n+a]=s[a];return e||o(s)}var r,a="undefined"!=typeof window?window:"undefined"!=typeof e?e:null;if(a&&a.crypto&&crypto.getRandomValues){var h=new Uint8Array(16);r=function(){return crypto.getRandomValues(h),h}}if(!r){var d=new Array(16);r=function(){for(var t,e=0;16>e;e++)0===(3&e)&&(t=4294967296*Math.random()),d[e]=t>>>((3&e)<<3)&255;return d}}for(var l=[],u={},c=0;256>c;c++)l[c]=(c+256).toString(16).substr(1),u[l[c]]=c;var p=r(),f=[1|p[0],p[1],p[2],p[3],p[4],p[5]],m=16383&(p[6]<<8|p[7]),v=0,g=0,y=s;y.v1=n,y.v4=s,y.parse=i,y.unparse=o,t.exports=y}).call(e,function(){return this}())},function(t,e){e.prepareElements=function(t){for(var e in t)t.hasOwnProperty(e)&&(t[e].redundant=t[e].used,t[e].used=[])},e.cleanupElements=function(t){for(var e in t)if(t.hasOwnProperty(e)&&t[e].redundant){for(var i=0;i0?(o=e[t].redundant[0],e[t].redundant.shift()):(o=document.createElementNS("http://www.w3.org/2000/svg",t),i.appendChild(o)):(o=document.createElementNS("http://www.w3.org/2000/svg",t),e[t]={used:[],redundant:[]},i.appendChild(o)),e[t].used.push(o),o},e.getDOMElement=function(t,e,i,o){var n;return e.hasOwnProperty(t)?e[t].redundant.length>0?(n=e[t].redundant[0],e[t].redundant.shift()):(n=document.createElement(t),void 0!==o?i.insertBefore(n,o):i.appendChild(n)):(n=document.createElement(t),e[t]={used:[],redundant:[]},void 0!==o?i.insertBefore(n,o):i.appendChild(n)),e[t].used.push(n),n},e.drawPoint=function(t,i,o,n,s,r){var a;if("circle"==o.style?(a=e.getSVGElement("circle",n,s),a.setAttributeNS(null,"cx",t),a.setAttributeNS(null,"cy",i),a.setAttributeNS(null,"r",.5*o.size)):(a=e.getSVGElement("rect",n,s),a.setAttributeNS(null,"x",t-.5*o.size),a.setAttributeNS(null,"y",i-.5*o.size),a.setAttributeNS(null,"width",o.size),a.setAttributeNS(null,"height",o.size)),void 0!==o.styles&&a.setAttributeNS(null,"style",o.styles),a.setAttributeNS(null,"class",o.className+" vis-point"),r){var h=e.getSVGElement("text",n,s);r.xOffset&&(t+=r.xOffset),r.yOffset&&(i+=r.yOffset),r.content&&(h.textContent=r.content),r.className&&h.setAttributeNS(null,"class",r.className+" vis-label"),h.setAttributeNS(null,"x",t),h.setAttributeNS(null,"y",i)}return a},e.drawBar=function(t,i,o,n,s,r,a,h){if(0!=n){0>n&&(n*=-1,i-=n);var d=e.getSVGElement("rect",r,a);d.setAttributeNS(null,"x",t-.5*o),d.setAttributeNS(null,"y",i),d.setAttributeNS(null,"width",o),d.setAttributeNS(null,"height",n),d.setAttributeNS(null,"class",s),h&&d.setAttributeNS(null,"style",h)}}},function(t,e,i){function o(t,e){if(t&&!Array.isArray(t)&&(e=t,t=null),this._options=e||{},this._data={},this.length=0,this._fieldId=this._options.fieldId||"id",this._type={},this._options.type)for(var i=Object.keys(this._options.type),o=0,n=i.length;n>o;o++){var s=i[o],r=this._options.type[s];"Date"==r||"ISODate"==r||"ASPDate"==r?this._type[s]="Date":this._type[s]=r}if(this._options.convert)throw new Error('Option "convert" is deprecated. Use "type" instead.');this._subscribers={},t&&this.add(t),this.setOptions(e)}var n=i(1),s=i(9);o.prototype.setOptions=function(t){t&&void 0!==t.queue&&(t.queue===!1?this._queue&&(this._queue.destroy(),delete this._queue):(this._queue||(this._queue=s.extend(this,{replace:["add","update","remove"]})),"object"==typeof t.queue&&this._queue.setOptions(t.queue)))},o.prototype.on=function(t,e){var i=this._subscribers[t];i||(i=[],this._subscribers[t]=i),i.push({callback:e})},o.prototype.subscribe=function(){throw new Error("DataSet.subscribe is deprecated. Use DataSet.on instead.")},o.prototype.off=function(t,e){var i=this._subscribers[t];i&&(this._subscribers[t]=i.filter(function(t){return t.callback!=e}))},o.prototype.unsubscribe=function(){throw new Error("DataSet.unsubscribe is deprecated. Use DataSet.off instead.")},o.prototype._trigger=function(t,e,i){if("*"==t)throw new Error("Cannot trigger event *");var o=[];t in this._subscribers&&(o=o.concat(this._subscribers[t])),"*"in this._subscribers&&(o=o.concat(this._subscribers["*"]));for(var n=0,s=o.length;s>n;n++){var r=o[n];r.callback&&r.callback(t,e,i||null)}},o.prototype.add=function(t,e){var i,o=[],n=this;if(Array.isArray(t))for(var s=0,r=t.length;r>s;s++)i=n._addItem(t[s]),o.push(i);else{if(!(t instanceof Object))throw new Error("Unknown dataType");i=n._addItem(t),o.push(i)}return o.length&&this._trigger("add",{items:o},e),o},o.prototype.update=function(t,e){var i=[],o=[],s=[],r=[],a=this,h=a._fieldId,d=function(t){var e=t[h];if(a._data[e]){var d=n.extend({},a._data[e]);e=a._updateItem(t),o.push(e),r.push(t),s.push(d)}else e=a._addItem(t),i.push(e)};if(Array.isArray(t))for(var l=0,u=t.length;u>l;l++)t[l]instanceof Object?d(t[l]):console.warn("Ignoring input item, which is not an object at index "+l);else{if(!(t instanceof Object))throw new Error("Unknown dataType");d(t)}if(i.length&&this._trigger("add",{items:i},e),o.length){var c={items:o,oldData:s,data:r};this._trigger("update",c,e)}return i.concat(o)},o.prototype.get=function(t){var e,i,o,s=this,r=n.getType(arguments[0]);"String"==r||"Number"==r?(e=arguments[0],o=arguments[1]):"Array"==r?(i=arguments[0],o=arguments[1]):o=arguments[0];var a;if(o&&o.returnType){var h=["Array","Object"];a=-1==h.indexOf(o.returnType)?"Array":o.returnType}else a="Array";var d,l,u,c,p,f=o&&o.type||this._options.type,m=o&&o.filter,v=[];if(void 0!=e)d=s._getItem(e,f),d&&m&&!m(d)&&(d=null);else if(void 0!=i)for(c=0,p=i.length;p>c;c++)d=s._getItem(i[c],f),(!m||m(d))&&v.push(d);else for(l=Object.keys(this._data),c=0,p=l.length;p>c;c++)u=l[c],d=s._getItem(u,f),(!m||m(d))&&v.push(d);if(o&&o.order&&void 0==e&&this._sort(v,o.order),o&&o.fields){var g=o.fields;if(void 0!=e)d=this._filterFields(d,g);else for(c=0,p=v.length;p>c;c++)v[c]=this._filterFields(v[c],g)}if("Object"==a){var y,b={};for(c=0,p=v.length;p>c;c++)y=v[c],b[y.id]=y;return b}return void 0!=e?d:v},o.prototype.getIds=function(t){var e,i,o,n,s,r=this._data,a=t&&t.filter,h=t&&t.order,d=t&&t.type||this._options.type,l=Object.keys(r),u=[];if(a)if(h){for(s=[],e=0,i=l.length;i>e;e++)o=l[e],n=this._getItem(o,d),a(n)&&s.push(n);for(this._sort(s,h),e=0,i=s.length;i>e;e++)u.push(s[e][this._fieldId])}else for(e=0,i=l.length;i>e;e++)o=l[e],n=this._getItem(o,d),a(n)&&u.push(n[this._fieldId]);else if(h){for(s=[],e=0,i=l.length;i>e;e++)o=l[e],s.push(r[o]);for(this._sort(s,h),e=0,i=s.length;i>e;e++)u.push(s[e][this._fieldId])}else for(e=0,i=l.length;i>e;e++)o=l[e],n=r[o],u.push(n[this._fieldId]);return u},o.prototype.getDataSet=function(){return this},o.prototype.forEach=function(t,e){var i,o,n,s,r=e&&e.filter,a=e&&e.type||this._options.type,h=this._data,d=Object.keys(h);if(e&&e.order){var l=this.get(e);for(i=0,o=l.length;o>i;i++)n=l[i],s=n[this._fieldId],t(n,s)}else for(i=0,o=d.length;o>i;i++)s=d[i],n=this._getItem(s,a),(!r||r(n))&&t(n,s)},o.prototype.map=function(t,e){var i,o,n,s,r=e&&e.filter,a=e&&e.type||this._options.type,h=[],d=this._data,l=Object.keys(d);for(i=0,o=l.length;o>i;i++)n=l[i],s=this._getItem(n,a),(!r||r(s))&&h.push(t(s,n));return e&&e.order&&this._sort(h,e.order),h},o.prototype._filterFields=function(t,e){if(!t)return t;var i,o,n={},s=Object.keys(t),r=s.length;if(Array.isArray(e))for(i=0;r>i;i++)o=s[i],-1!=e.indexOf(o)&&(n[o]=t[o]);else for(i=0;r>i;i++)o=s[i],e.hasOwnProperty(o)&&(n[e[o]]=t[o]);return n},o.prototype._sort=function(t,e){if(n.isString(e)){var i=e;t.sort(function(t,e){var o=t[i],n=e[i];return o>n?1:n>o?-1:0})}else{if("function"!=typeof e)throw new TypeError("Order must be a function or a string");t.sort(e)}},o.prototype.remove=function(t,e){var i,o,n,s=[];if(Array.isArray(t))for(i=0,o=t.length;o>i;i++)n=this._remove(t[i]), -null!=n&&s.push(n);else n=this._remove(t),null!=n&&s.push(n);return s.length&&this._trigger("remove",{items:s},e),s},o.prototype._remove=function(t){if(n.isNumber(t)||n.isString(t)){if(this._data[t])return delete this._data[t],this.length--,t}else if(t instanceof Object){var e=t[this._fieldId];if(void 0!==e&&this._data[e])return delete this._data[e],this.length--,e}return null},o.prototype.clear=function(t){var e=Object.keys(this._data);return this._data={},this.length=0,this._trigger("remove",{items:e},t),e},o.prototype.max=function(t){var e,i,o=this._data,n=Object.keys(o),s=null,r=null;for(e=0,i=n.length;i>e;e++){var a=n[e],h=o[a],d=h[t];null!=d&&(!s||d>r)&&(s=h,r=d)}return s},o.prototype.min=function(t){var e,i,o=this._data,n=Object.keys(o),s=null,r=null;for(e=0,i=n.length;i>e;e++){var a=n[e],h=o[a],d=h[t];null!=d&&(!s||r>d)&&(s=h,r=d)}return s},o.prototype.distinct=function(t){var e,i,o,s=this._data,r=Object.keys(s),a=[],h=this._options.type&&this._options.type[t]||null,d=0;for(e=0,o=r.length;o>e;e++){var l=r[e],u=s[l],c=u[t],p=!1;for(i=0;d>i;i++)if(a[i]==c){p=!0;break}p||void 0===c||(a[d]=c,d++)}if(h)for(e=0,o=a.length;o>e;e++)a[e]=n.convert(a[e],h);return a},o.prototype._addItem=function(t){var e=t[this._fieldId];if(void 0!=e){if(this._data[e])throw new Error("Cannot add item: item with id "+e+" already exists")}else e=n.randomUUID(),t[this._fieldId]=e;var i,o,s={},r=Object.keys(t);for(i=0,o=r.length;o>i;i++){var a=r[i],h=this._type[a];s[a]=n.convert(t[a],h)}return this._data[e]=s,this.length++,e},o.prototype._getItem=function(t,e){var i,o,s,r,a=this._data[t];if(!a)return null;var h={},d=Object.keys(a);if(e)for(s=0,r=d.length;r>s;s++)i=d[s],o=a[i],h[i]=n.convert(o,e[i]);else for(s=0,r=d.length;r>s;s++)i=d[s],o=a[i],h[i]=o;return h},o.prototype._updateItem=function(t){var e=t[this._fieldId];if(void 0==e)throw new Error("Cannot update item: item has no id (item: "+JSON.stringify(t)+")");var i=this._data[e];if(!i)throw new Error("Cannot update item: no item with id "+e+" found");for(var o=Object.keys(t),s=0,r=o.length;r>s;s++){var a=o[s],h=this._type[a];i[a]=n.convert(t[a],h)}return e},t.exports=o},function(t,e){function i(t){this.delay=null,this.max=1/0,this._queue=[],this._timeout=null,this._extended=null,this.setOptions(t)}i.prototype.setOptions=function(t){t&&"undefined"!=typeof t.delay&&(this.delay=t.delay),t&&"undefined"!=typeof t.max&&(this.max=t.max),this._flushIfNeeded()},i.extend=function(t,e){var o=new i(e);if(void 0!==t.flush)throw new Error("Target object already has a property flush");t.flush=function(){o.flush()};var n=[{name:"flush",original:void 0}];if(e&&e.replace)for(var s=0;sthis.max&&this.flush(),clearTimeout(this._timeout),this.queue.length>0&&"number"==typeof this.delay){var t=this;this._timeout=setTimeout(function(){t.flush()},this.delay)}},i.prototype.flush=function(){for(;this._queue.length>0;){var t=this._queue.shift();t.fn.apply(t.context||t.fn,t.args||[])}},t.exports=i},function(t,e,i){function o(t,e){this._data=null,this._ids={},this.length=0,this._options=e||{},this._fieldId="id",this._subscribers={};var i=this;this.listener=function(){i._onEvent.apply(i,arguments)},this.setData(t)}var n=i(1),s=i(8);o.prototype.setData=function(t){var e,i,o,n;if(this._data&&(this._data.off&&this._data.off("*",this.listener),e=Object.keys(this._ids),this._ids={},this.length=0,this._trigger("remove",{items:e})),this._data=t,this._data){for(this._fieldId=this._options.fieldId||this._data&&this._data.options&&this._data.options.fieldId||"id",e=this._data.getIds({filter:this._options&&this._options.filter}),o=0,n=e.length;n>o;o++)i=e[o],this._ids[i]=!0;this.length=e.length,this._trigger("add",{items:e}),this._data.on&&this._data.on("*",this.listener)}},o.prototype.refresh=function(){var t,e,i,o=this._data.getIds({filter:this._options&&this._options.filter}),n=Object.keys(this._ids),s={},r=[],a=[];for(e=0,i=o.length;i>e;e++)t=o[e],s[t]=!0,this._ids[t]||(r.push(t),this._ids[t]=!0);for(e=0,i=n.length;i>e;e++)t=n[e],s[t]||(a.push(t),delete this._ids[t]);this.length+=r.length-a.length,r.length&&this._trigger("add",{items:r}),a.length&&this._trigger("remove",{items:a})},o.prototype.get=function(t){var e,i,o,s=this,r=n.getType(arguments[0]);"String"==r||"Number"==r||"Array"==r?(e=arguments[0],i=arguments[1],o=arguments[2]):(i=arguments[0],o=arguments[1]);var a=n.extend({},this._options,i);this._options.filter&&i&&i.filter&&(a.filter=function(t){return s._options.filter(t)&&i.filter(t)});var h=[];return void 0!=e&&h.push(e),h.push(a),h.push(o),this._data&&this._data.get.apply(this._data,h)},o.prototype.getIds=function(t){var e;if(this._data){var i,o=this._options.filter;i=t&&t.filter?o?function(e){return o(e)&&t.filter(e)}:t.filter:o,e=this._data.getIds({filter:i,order:t&&t.order})}else e=[];return e},o.prototype.map=function(t,e){var i=[];if(this._data){var o,n=this._options.filter;o=e&&e.filter?n?function(t){return n(t)&&e.filter(t)}:e.filter:n,i=this._data.map(t,{filter:o,order:e&&e.order})}else i=[];return i},o.prototype.getDataSet=function(){for(var t=this;t instanceof o;)t=t._data;return t||null},o.prototype._onEvent=function(t,e,i){var o,n,s,r,a=e&&e.items,h=this._data,d=[],l=[],u=[],c=[];if(a&&h){switch(t){case"add":for(o=0,n=a.length;n>o;o++)s=a[o],r=this.get(s),r&&(this._ids[s]=!0,l.push(s));break;case"update":for(o=0,n=a.length;n>o;o++)s=a[o],r=this.get(s),r?this._ids[s]?(u.push(s),d.push(e.data[o])):(this._ids[s]=!0,l.push(s)):this._ids[s]&&(delete this._ids[s],c.push(s));break;case"remove":for(o=0,n=a.length;n>o;o++)s=a[o],this._ids[s]&&(delete this._ids[s],c.push(s))}this.length+=l.length-c.length,l.length&&this._trigger("add",{items:l},i),u.length&&this._trigger("update",{items:u,data:d},i),c.length&&this._trigger("remove",{items:c},i)}},o.prototype.on=s.prototype.on,o.prototype.off=s.prototype.off,o.prototype._trigger=s.prototype._trigger,o.prototype.subscribe=o.prototype.on,o.prototype.unsubscribe=o.prototype.off,t.exports=o},function(t,e,i){function o(t,e,i){if(!(this instanceof o))throw new SyntaxError("Constructor must be called with the new operator");this.containerElement=t,this.width="400px",this.height="400px",this.margin=10,this.defaultXCenter="55%",this.defaultYCenter="50%",this.xLabel="x",this.yLabel="y",this.zLabel="z";var n=function(t){return t};this.xValueLabel=n,this.yValueLabel=n,this.zValueLabel=n,this.filterLabel="time",this.legendLabel="value",this.style=o.STYLE.DOT,this.showPerspective=!0,this.showGrid=!0,this.keepAspectRatio=!0,this.showShadow=!1,this.showGrayBottom=!1,this.showTooltip=!1,this.verticalRatio=.5,this.animationInterval=1e3,this.animationPreload=!1,this.camera=new c,this.camera.setArmRotation(1,.5),this.camera.setArmLength(1.7),this.eye=new l(0,0,-1),this.dataTable=null,this.dataPoints=null,this.colX=void 0,this.colY=void 0,this.colZ=void 0,this.colValue=void 0,this.colFilter=void 0,this.xMin=0,this.xStep=void 0,this.xMax=1,this.yMin=0,this.yStep=void 0,this.yMax=1,this.zMin=0,this.zStep=void 0,this.zMax=1,this.valueMin=0,this.valueMax=1,this.xBarWidth=1,this.yBarWidth=1,this.axisColor="#4D4D4D",this.gridColor="#D3D3D3",this.dataColor={fill:"#7DC1FF",stroke:"#3267D2",strokeWidth:1},this.create(),this.setOptions(i),e&&this.setData(e)}function n(t){return"clientX"in t?t.clientX:t.targetTouches[0]&&t.targetTouches[0].clientX||0}function s(t){return"clientY"in t?t.clientY:t.targetTouches[0]&&t.targetTouches[0].clientY||0}var r=i(12),a=i(8),h=i(10),d=i(1),l=i(13),u=i(14),c=i(15),p=i(16),f=i(17),m=i(18);r(o.prototype),o.prototype._setScale=function(){this.scale=new l(1/(this.xMax-this.xMin),1/(this.yMax-this.yMin),1/(this.zMax-this.zMin)),this.keepAspectRatio&&(this.scale.x3&&(this.colFilter=3);else{if(this.style!==o.STYLE.DOTCOLOR&&this.style!==o.STYLE.DOTSIZE&&this.style!==o.STYLE.BARCOLOR&&this.style!==o.STYLE.BARSIZE)throw'Unknown style "'+this.style+'"';this.colX=0,this.colY=1,this.colZ=2,this.colValue=3,t.getNumberOfColumns()>4&&(this.colFilter=4)}},o.prototype.getNumberOfRows=function(t){return t.length},o.prototype.getNumberOfColumns=function(t){var e=0;for(var i in t[0])t[0].hasOwnProperty(i)&&e++;return e},o.prototype.getDistinctValues=function(t,e){for(var i=[],o=0;ot[o][e]&&(i.min=t[o][e]),i.maxt;t++){var f=(t-c)/(p-c),v=240*f,g=this._hsv2rgb(v,1,1);u.strokeStyle=g,u.beginPath(),u.moveTo(h,r+t),u.lineTo(a,r+t),u.stroke()}u.strokeStyle=this.axisColor,u.strokeRect(h,r,i,s)}if(this.style===o.STYLE.DOTSIZE&&(u.strokeStyle=this.axisColor,u.fillStyle=this.dataColor.fill,u.beginPath(),u.moveTo(h,r),u.lineTo(a,r),u.lineTo(a-i+e,d),u.lineTo(h,d),u.closePath(),u.fill(),u.stroke()),this.style===o.STYLE.DOTCOLOR||this.style===o.STYLE.DOTSIZE){var y=5,b=new m(this.valueMin,this.valueMax,(this.valueMax-this.valueMin)/5,!0);for(b.start(),b.getCurrent()0?this.yMin:this.yMax,n=this._convert3Dto2D(new l(w,r,this.zMin)),Math.cos(2*_)>0?(v.textAlign="center",v.textBaseline="top",n.y+=b):Math.sin(2*_)<0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.axisColor,v.fillText(" "+this.xValueLabel(i.getCurrent())+" ",n.x,n.y),i.next()}for(v.lineWidth=1,o=void 0===this.defaultYStep,i=new m(this.yMin,this.yMax,this.yStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,n=this._convert3Dto2D(new l(s,i.getCurrent(),this.zMin)),Math.cos(2*_)<0?(v.textAlign="center",v.textBaseline="top",n.y+=b):Math.sin(2*_)>0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.axisColor,v.fillText(" "+this.yValueLabel(i.getCurrent())+" ",n.x,n.y),i.next();for(v.lineWidth=1,o=void 0===this.defaultZStep,i=new m(this.zMin,this.zMax,this.zStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,r=Math.sin(_)<0?this.yMin:this.yMax;!i.end();)t=this._convert3Dto2D(new l(s,r,i.getCurrent())),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(t.x-b,t.y),v.stroke(),v.textAlign="right",v.textBaseline="middle",v.fillStyle=this.axisColor,v.fillText(this.zValueLabel(i.getCurrent())+" ",t.x-5,t.y),i.next();v.lineWidth=1,t=this._convert3Dto2D(new l(s,r,this.zMin)),e=this._convert3Dto2D(new l(s,r,this.zMax)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke(),v.lineWidth=1,c=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),p=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(c.x,c.y),v.lineTo(p.x,p.y),v.stroke(),c=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),p=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(c.x,c.y),v.lineTo(p.x,p.y),v.stroke(),v.lineWidth=1,t=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke(),t=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke();var x=this.xLabel;x.length>0&&(u=.1/this.scale.y,s=(this.xMin+this.xMax)/2,r=Math.cos(_)>0?this.yMin-u:this.yMax+u,n=this._convert3Dto2D(new l(s,r,this.zMin)),Math.cos(2*_)>0?(v.textAlign="center",v.textBaseline="top"):Math.sin(2*_)<0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.axisColor,v.fillText(x,n.x,n.y));var k=this.yLabel;k.length>0&&(d=.1/this.scale.x,s=Math.sin(_)>0?this.xMin-d:this.xMax+d,r=(this.yMin+this.yMax)/2,n=this._convert3Dto2D(new l(s,r,this.zMin)),Math.cos(2*_)<0?(v.textAlign="center",v.textBaseline="top"):Math.sin(2*_)>0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.axisColor,v.fillText(k,n.x,n.y));var O=this.zLabel;O.length>0&&(h=30,s=Math.cos(_)>0?this.xMin:this.xMax,r=Math.sin(_)<0?this.yMin:this.yMax,a=(this.zMin+this.zMax)/2,n=this._convert3Dto2D(new l(s,r,a)),v.textAlign="right",v.textBaseline="middle",v.fillStyle=this.axisColor,v.fillText(O,n.x-h,n.y))},o.prototype._hsv2rgb=function(t,e,i){var o,n,s,r,a,h;switch(r=i*e,a=Math.floor(t/60),h=r*(1-Math.abs(t/60%2-1)),a){case 0:o=r,n=h,s=0;break;case 1:o=h,n=r,s=0;break;case 2:o=0,n=r,s=h;break;case 3:o=0,n=h,s=r;break;case 4:o=h,n=0,s=r;break;case 5:o=r,n=0,s=h;break;default:o=0,n=0,s=0}return"RGB("+parseInt(255*o)+","+parseInt(255*n)+","+parseInt(255*s)+")"},o.prototype._redrawDataGrid=function(){var t,e,i,n,s,r,a,h,d,u,c,p,f=this.frame.canvas,m=f.getContext("2d");if(m.lineJoin="round",m.lineCap="round",!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(s=0;s0}else r=!0;r?(p=(t.point.z+e.point.z+i.point.z+n.point.z)/4,d=240*(1-(p-this.zMin)*this.scale.z/this.verticalRatio),u=1,this.showShadow?(c=Math.min(1+x.x/k/2,1),a=this._hsv2rgb(d,u,c),h=a):(c=1,a=this._hsv2rgb(d,u,c),h=this.axisColor)):(a="gray",h=this.axisColor),m.lineWidth=this._getStrokeWidth(t),m.fillStyle=a,m.strokeStyle=h,m.beginPath(),m.moveTo(t.screen.x,t.screen.y),m.lineTo(e.screen.x,e.screen.y),m.lineTo(n.screen.x,n.screen.y),m.lineTo(i.screen.x,i.screen.y),m.closePath(),m.fill(),m.stroke()}}else for(s=0;sc&&(c=0);var p,f,m;this.style===o.STYLE.DOTCOLOR?(p=240*(1-(d.point.value-this.valueMin)*this.scale.value),f=this._hsv2rgb(p,1,1),m=this._hsv2rgb(p,1,.8)):this.style===o.STYLE.DOTSIZE?(f=this.dataColor.fill,m=this.dataColor.stroke):(p=240*(1-(d.point.z-this.zMin)*this.scale.z/this.verticalRatio),f=this._hsv2rgb(p,1,1),m=this._hsv2rgb(p,1,.8)),i.lineWidth=this._getStrokeWidth(d),i.strokeStyle=m,i.fillStyle=f,i.beginPath(),i.arc(d.screen.x,d.screen.y,c,0,2*Math.PI,!0),i.fill(),i.stroke()}}},o.prototype._redrawDataBar=function(){var t,e,i,n,s=this.frame.canvas,r=s.getContext("2d");if(!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(t=0;t0){for(t=this.dataPoints[0],o.lineWidth=this._getStrokeWidth(t),o.lineJoin="round",o.lineCap="round",o.strokeStyle=this.dataColor.stroke,o.beginPath(),o.moveTo(t.screen.x,t.screen.y),e=1;e0?1:0>t?-1:0}var o=e[0],n=e[1],s=e[2],r=i((n.x-o.x)*(t.y-o.y)-(n.y-o.y)*(t.x-o.x)),a=i((s.x-n.x)*(t.y-n.y)-(s.y-n.y)*(t.x-n.x)),h=i((o.x-s.x)*(t.y-s.y)-(o.y-s.y)*(t.x-s.x));return!(0!=r&&0!=a&&r!=a||0!=a&&0!=h&&a!=h||0!=r&&0!=h&&r!=h)},o.prototype._dataPointFromXY=function(t,e){var i,n=100,s=null,r=null,a=null,h=new u(t,e);if(this.style===o.STYLE.BAR||this.style===o.STYLE.BARCOLOR||this.style===o.STYLE.BARSIZE)for(i=this.dataPoints.length-1;i>=0;i--){s=this.dataPoints[i];var d=s.surfaces;if(d)for(var l=d.length-1;l>=0;l--){var c=d[l],p=c.corners,f=[p[0].screen,p[1].screen,p[2].screen],m=[p[2].screen,p[3].screen,p[0].screen];if(this._insideTriangle(h,f)||this._insideTriangle(h,m))return s}}else for(i=0;ib)&&n>b&&(a=b,r=s)}}return r},o.prototype._showTooltip=function(t){var e,i,o;this.tooltip?(e=this.tooltip.dom.content,i=this.tooltip.dom.line,o=this.tooltip.dom.dot):(e=document.createElement("div"),e.style.position="absolute",e.style.padding="10px",e.style.border="1px solid #4d4d4d",e.style.color="#1a1a1a",e.style.background="rgba(255,255,255,0.7)",e.style.borderRadius="2px",e.style.boxShadow="5px 5px 10px rgba(128,128,128,0.5)",i=document.createElement("div"),i.style.position="absolute",i.style.height="40px",i.style.width="0",i.style.borderLeft="1px solid #4d4d4d",o=document.createElement("div"),o.style.position="absolute",o.style.height="0",o.style.width="0",o.style.border="5px solid #4d4d4d",o.style.borderRadius="5px",this.tooltip={dataPoint:null,dom:{content:e,line:i,dot:o}}),this._hideTooltip(),this.tooltip.dataPoint=t,"function"==typeof this.showTooltip?e.innerHTML=this.showTooltip(t.point):e.innerHTML="
x:"+t.point.x+"
y:"+t.point.y+"
z:"+t.point.z+"
",e.style.left="0",e.style.top="0",this.frame.appendChild(e),this.frame.appendChild(i),this.frame.appendChild(o);var n=e.offsetWidth,s=e.offsetHeight,r=i.offsetHeight,a=o.offsetWidth,h=o.offsetHeight,d=t.screen.x-n/2;d=Math.min(Math.max(d,10),this.frame.clientWidth-10-n),i.style.left=t.screen.x+"px",i.style.top=t.screen.y-r+"px",e.style.left=d+"px",e.style.top=t.screen.y-r-s+"px",o.style.left=t.screen.x-a/2+"px",o.style.top=t.screen.y-h/2+"px"},o.prototype._hideTooltip=function(){if(this.tooltip){this.tooltip.dataPoint=null;for(var t in this.tooltip.dom)if(this.tooltip.dom.hasOwnProperty(t)){var e=this.tooltip.dom[t];e&&e.parentNode&&e.parentNode.removeChild(e)}}},t.exports=o},function(t,e){function i(t){return t?o(t):void 0}function o(t){for(var e in i.prototype)t[e]=i.prototype[e];return t}t.exports=i,i.prototype.on=i.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks[t]=this._callbacks[t]||[]).push(e),this},i.prototype.once=function(t,e){function i(){o.off(t,i),e.apply(this,arguments)}var o=this;return this._callbacks=this._callbacks||{},i.fn=e,this.on(t,i),this},i.prototype.off=i.prototype.removeListener=i.prototype.removeAllListeners=i.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var i=this._callbacks[t];if(!i)return this;if(1==arguments.length)return delete this._callbacks[t],this;for(var o,n=0;no;++o)i[o].apply(this,e)}return this},i.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks[t]||[]},i.prototype.hasListeners=function(t){return!!this.listeners(t).length}},function(t,e){function i(t,e,i){this.x=void 0!==t?t:0,this.y=void 0!==e?e:0,this.z=void 0!==i?i:0}i.subtract=function(t,e){var o=new i;return o.x=t.x-e.x,o.y=t.y-e.y,o.z=t.z-e.z,o},i.add=function(t,e){var o=new i;return o.x=t.x+e.x,o.y=t.y+e.y,o.z=t.z+e.z,o},i.avg=function(t,e){return new i((t.x+e.x)/2,(t.y+e.y)/2,(t.z+e.z)/2)},i.crossProduct=function(t,e){var o=new i;return o.x=t.y*e.z-t.z*e.y,o.y=t.z*e.x-t.x*e.z,o.z=t.x*e.y-t.y*e.x,o},i.prototype.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},t.exports=i},function(t,e){function i(t,e){this.x=void 0!==t?t:0,this.y=void 0!==e?e:0}t.exports=i},function(t,e,i){function o(){this.armLocation=new n,this.armRotation={},this.armRotation.horizontal=0,this.armRotation.vertical=0,this.armLength=1.7,this.cameraLocation=new n,this.cameraRotation=new n(.5*Math.PI,0,0),this.calculateCameraOrientation()}var n=i(13);o.prototype.setArmLocation=function(t,e,i){this.armLocation.x=t,this.armLocation.y=e,this.armLocation.z=i,this.calculateCameraOrientation()},o.prototype.setArmRotation=function(t,e){void 0!==t&&(this.armRotation.horizontal=t),void 0!==e&&(this.armRotation.vertical=e,this.armRotation.vertical<0&&(this.armRotation.vertical=0),this.armRotation.vertical>.5*Math.PI&&(this.armRotation.vertical=.5*Math.PI)),(void 0!==t||void 0!==e)&&this.calculateCameraOrientation()},o.prototype.getArmRotation=function(){var t={};return t.horizontal=this.armRotation.horizontal,t.vertical=this.armRotation.vertical,t},o.prototype.setArmLength=function(t){void 0!==t&&(this.armLength=t,this.armLength<.71&&(this.armLength=.71),this.armLength>5&&(this.armLength=5),this.calculateCameraOrientation())},o.prototype.getArmLength=function(){return this.armLength},o.prototype.getCameraLocation=function(){return this.cameraLocation},o.prototype.getCameraRotation=function(){return this.cameraRotation},o.prototype.calculateCameraOrientation=function(){this.cameraLocation.x=this.armLocation.x-this.armLength*Math.sin(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical),this.cameraLocation.y=this.armLocation.y-this.armLength*Math.cos(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical),this.cameraLocation.z=this.armLocation.z+this.armLength*Math.sin(this.armRotation.vertical),this.cameraRotation.x=Math.PI/2-this.armRotation.vertical,this.cameraRotation.y=0,this.cameraRotation.z=-this.armRotation.horizontal},t.exports=o},function(t,e,i){function o(t,e,i){this.data=t,this.column=e,this.graph=i,this.index=void 0,this.value=void 0,this.values=i.getDistinctValues(t.get(),this.column),this.values.sort(function(t,e){return t>e?1:e>t?-1:0}),this.values.length>0&&this.selectValue(0),this.dataPoints=[],this.loaded=!1,this.onLoadCallback=void 0,i.animationPreload?(this.loaded=!1,this.loadInBackground()):this.loaded=!0}var n=i(10);o.prototype.isLoaded=function(){return this.loaded},o.prototype.getLoadedProgress=function(){for(var t=this.values.length,e=0;this.dataPoints[e];)e++;return Math.round(e/t*100)},o.prototype.getLabel=function(){return this.graph.filterLabel},o.prototype.getColumn=function(){return this.column},o.prototype.getSelectedValue=function(){return void 0!==this.index?this.values[this.index]:void 0},o.prototype.getValues=function(){return this.values},o.prototype.getValue=function(t){if(t>=this.values.length)throw"Error: index out of range";return this.values[t]},o.prototype._getDataPoints=function(t){if(void 0===t&&(t=this.index),void 0===t)return[];var e;if(this.dataPoints[t])e=this.dataPoints[t];else{var i={};i.column=this.column,i.value=this.values[t];var o=new n(this.data,{filter:function(t){return t[i.column]==i.value}}).get();e=this.graph._getDataPoints(o),this.dataPoints[t]=e}return e},o.prototype.setOnLoadCallback=function(t){this.onLoadCallback=t},o.prototype.selectValue=function(t){if(t>=this.values.length)throw"Error: index out of range";this.index=t,this.value=this.values[t]},o.prototype.loadInBackground=function(t){void 0===t&&(t=0);var e=this.graph.frame;if(t0&&(t--,this.setIndex(t))},o.prototype.next=function(){var t=this.getIndex();t0?this.setIndex(0):this.index=void 0},o.prototype.setIndex=function(t){if(!(to&&(o=0),o>this.values.length-1&&(o=this.values.length-1),o},o.prototype.indexToLeft=function(t){var e=parseFloat(this.frame.bar.style.width)-this.frame.slide.clientWidth-10,i=t/(this.values.length-1)*e,o=i+3;return o},o.prototype._onMouseMove=function(t){var e=t.clientX-this.startClientX,i=this.startSlideX+e,o=this.leftToIndex(i);this.setIndex(o),n.preventDefault()},o.prototype._onMouseUp=function(t){this.frame.style.cursor="auto",n.removeEventListener(document,"mousemove",this.onmousemove),n.removeEventListener(document,"mouseup",this.onmouseup),n.preventDefault()},t.exports=o},function(t,e){function i(t,e,i,o){this._start=0,this._end=0,this._step=1,this.prettyStep=!0,this.precision=5,this._current=0,this.setRange(t,e,i,o)}i.prototype.setRange=function(t,e,i,o){this._start=t?t:0,this._end=e?e:0,this.setStep(i,o)},i.prototype.setStep=function(t,e){void 0===t||0>=t||(void 0!==e&&(this.prettyStep=e),this.prettyStep===!0?this._step=i.calculatePrettyStep(t):this._step=t)},i.calculatePrettyStep=function(t){var e=function(t){return Math.log(t)/Math.LN10},i=Math.pow(10,Math.round(e(t))),o=2*Math.pow(10,Math.round(e(t/2))),n=5*Math.pow(10,Math.round(e(t/5))),s=i;return Math.abs(o-t)<=Math.abs(s-t)&&(s=o),Math.abs(n-t)<=Math.abs(s-t)&&(s=n),0>=s&&(s=1),s},i.prototype.getCurrent=function(){return parseFloat(this._current.toPrecision(this.precision))},i.prototype.getStep=function(){return this._step},i.prototype.start=function(){this._current=this._start-this._start%this._step},i.prototype.next=function(){this._current+=this._step},i.prototype.end=function(){return this._current>this._end},t.exports=i},function(t,e,i){function o(t,e,i,d){if(!(this instanceof o))throw new SyntaxError("Constructor must be called with the new operator");if(!(Array.isArray(i)||i instanceof r||i instanceof a)&&i instanceof Object){var c=d;d=i,i=c}var f=this;this.defaultOptions={start:null,end:null,autoResize:!0,throttleRedraw:0,orientation:{axis:"bottom",item:"bottom"},moment:n,width:null,height:null,maxHeight:null,minHeight:null},this.options=s.deepExtend({},this.defaultOptions),this._create(t),this.components=[],this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{getScale:function(){return f.timeAxis.step.scale},getStep:function(){return f.timeAxis.step.step},toScreen:f._toScreen.bind(f),toGlobalScreen:f._toGlobalScreen.bind(f),toTime:f._toTime.bind(f),toGlobalTime:f._toGlobalTime.bind(f)}},this.range=new h(this.body),this.components.push(this.range),this.body.range=this.range,this.timeAxis=new l(this.body),this.timeAxis2=null,this.components.push(this.timeAxis),this.currentTime=new u(this.body),this.components.push(this.currentTime),this.itemSet=new p(this.body),this.components.push(this.itemSet),this.itemsData=null,this.groupsData=null,this.on("tap",function(t){f.emit("click",f.getEventProperties(t))}),this.on("doubletap",function(t){f.emit("doubleClick",f.getEventProperties(t))}),this.dom.root.oncontextmenu=function(t){f.emit("contextmenu",f.getEventProperties(t))},this.fitDone=!1,this.on("changed",function(){if(null!=this.itemsData&&!f.fitDone)if(f.fitDone=!0,void 0!=f.options.start||void 0!=f.options.end){if(void 0==f.options.start||void 0==f.options.end)var t=f.getItemRange();var e=void 0!=f.options.start?f.options.start:t.min,i=void 0!=f.options.end?f.options.end:t.max;f.setWindow(e,i,{animation:!1})}else f.fit({animation:!1})}),d&&this.setOptions(d),i&&this.setGroups(i),e&&this.setItems(e),this._redraw()}var n=(i(12),i(20),i(2)),s=i(1),r=i(8),a=i(10),h=i(23),d=i(27),l=i(38),u=i(43),c=i(41),p=i(28),f=i(44),m=i(46)["default"],v=i(46).printStyle,g=i(47).allOptions,y=i(47).configureOptions;o.prototype=new d,o.prototype._createConfigurator=function(){return new f(this,this.dom.container,y)},o.prototype.redraw=function(){this.itemSet&&this.itemSet.markDirty({refreshItems:!0}),this._redraw()},o.prototype.setOptions=function(t){var e=m.validate(t,g);if(e===!0&&console.log("%cErrors have been found in the supplied options object.",v),d.prototype.setOptions.call(this,t),"type"in t&&t.type!==this.options.type){this.options.type=t.type;var i=this.itemsData;if(i){var o=this.getSelection();this.setItems(null),this.setItems(i),this.setSelection(o)}}},o.prototype.setItems=function(t){var e;e=t?t instanceof r||t instanceof a?t:new r(t,{type:{start:"Date",end:"Date"}}):null,this.itemsData=e,this.itemSet&&this.itemSet.setItems(e)},o.prototype.setGroups=function(t){var e;e=t?t instanceof r||t instanceof a?t:new r(t):null,this.groupsData=e,this.itemSet.setGroups(e)},o.prototype.setData=function(t){t&&t.groups&&this.setGroups(t.groups),t&&t.items&&this.setItems(t.items)},o.prototype.setSelection=function(t,e){this.itemSet&&this.itemSet.setSelection(t),e&&e.focus&&this.focus(t,e)},o.prototype.getSelection=function(){return this.itemSet&&this.itemSet.getSelection()||[]},o.prototype.focus=function(t,e){if(this.itemsData&&void 0!=t){var i=Array.isArray(t)?t:[t],o=this.itemsData.getDataSet().get(i,{type:{start:"Date",end:"Date"}}),n=null,s=null;if(o.forEach(function(t){var e=t.start.valueOf(),i="end"in t?t.end.valueOf():t.start.valueOf();(null===n||n>e)&&(n=e),(null===s||i>s)&&(s=i)}),null!==n&&null!==s){var r=(n+s)/2,a=Math.max(this.range.end-this.range.start,1.1*(s-n)),h=e&&void 0!==e.animation?e.animation:!0;this.range.setRange(r-a/2,r+a/2,h)}}},o.prototype.fit=function(t){var e=t&&void 0!==t.animation?t.animation:!0,i=this.getItemRange();this.range.setRange(i.min,i.max,e)},o.prototype.getItemRange=function(){var t=this,e=this.getDataRange(),i=null!==e.min?e.min.valueOf():null,o=null!==e.max?e.max.valueOf():null,n=null,r=null;if(null!=i&&null!=o){var a,h,d,l,u;!function(){var e=function(t){return s.convert(t.data.start,"Date").valueOf()},c=function(t){var e=void 0!=t.data.end?t.data.end:t.data.start;return s.convert(e,"Date").valueOf()};a=o-i,0>=a&&(a=10),h=a/t.props.center.width,s.forEach(t.itemSet.items,function(t){t.show(),t.repositionX();var s=e(t),a=c(t),d=s-(t.getWidthLeft()+10)*h,l=a+(t.getWidthRight()+10)*h;i>d&&(i=d,n=t),l>o&&(o=l,r=t)}.bind(t)),n&&r&&(d=n.getWidthLeft()+10,l=r.getWidthRight()+10,u=t.props.center.width-d-l,u>0&&(i=e(n)-d*a/u,o=c(r)+l*a/u))}()}return{min:null!=i?new Date(i):null,max:null!=o?new Date(o):null}},o.prototype.getDataRange=function(){var t=null,e=null,i=this.itemsData&&this.itemsData.getDataSet();return i&&i.forEach(function(i){var o=s.convert(i.start,"Date").valueOf(),n=s.convert(void 0!=i.end?i.end:i.start,"Date").valueOf();(null===t||t>o)&&(t=o),(null===e||n>e)&&(e=n)}),{min:null!=t?new Date(t):null,max:null!=e?new Date(e):null}},o.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=e-s.getAbsoluteLeft(this.dom.centerContainer),n=i-s.getAbsoluteTop(this.dom.centerContainer),r=this.itemSet.itemFromTarget(t),a=this.itemSet.groupFromTarget(t),h=c.customTimeFromTarget(t),d=this.itemSet.options.snap||null,l=this.body.util.getScale(),u=this.body.util.getStep(),p=this._toTime(o),f=d?d(p,l,u):p,m=s.getTarget(t),v=null;return null!=r?v="item":null!=h?v="custom-time":s.hasParent(m,this.timeAxis.dom.foreground)?v="axis":this.timeAxis2&&s.hasParent(m,this.timeAxis2.dom.foreground)?v="axis":s.hasParent(m,this.itemSet.dom.labelSet)?v="group-label":s.hasParent(m,this.currentTime.bar)?v="current-time":s.hasParent(m,this.dom.center)&&(v="background"),{event:t,item:r?r.id:null,group:a?a.groupId:null,what:v,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:n,time:p,snappedTime:f}},t.exports=o},function(t,e,i){if("undefined"!=typeof window){var o=i(21),n=window.Hammer||i(22);t.exports=o(n,{preventDefault:"mouse"})}else t.exports=function(){throw Error("hammer.js is only available in a browser, not in node.js.")}},function(t,e,i){var o,n,s;!function(i){n=[],o=i,s="function"==typeof o?o.apply(e,n):o,!(void 0!==s&&(t.exports=s))}(function(){var t=null;return function e(i,o){function n(t){return t.match(/[^ ]+/g)}function s(e){if("hammer.input"!==e.type){if(e.srcEvent._handled||(e.srcEvent._handled={}),e.srcEvent._handled[e.type])return;e.srcEvent._handled[e.type]=!0}var i=!1;e.stopPropagation=function(){i=!0};var o=e.srcEvent.stopPropagation;"function"==typeof o&&(e.srcEvent.stopPropagation=function(){o(),e.stopPropagation()}),e.firstTarget=t;for(var n=t;n&&!i;){var s=n.hammer;if(s)for(var r,a=0;a0?d._handlers[t]=o:(i.off(t,s),delete d._handlers[t]))}),d},d.emit=function(e,o){t=o.target,i.emit(e,o)},d.destroy=function(){var t=i.element.hammer,e=t.indexOf(d);-1!==e&&t.splice(e,1),t.length||delete i.element.hammer,d._handlers={},i.destroy()},d}})},function(t,e,i){var o;!function(n,s,r,a){function h(t,e,i){return setTimeout(p(t,i),e)}function d(t,e,i){return Array.isArray(t)?(l(t,i[e],i),!0):!1}function l(t,e,i){var o;if(t)if(t.forEach)t.forEach(e,i);else if(t.length!==a)for(o=0;o\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",s=n.console&&(n.console.warn||n.console.log);return s&&s.call(n.console,o,i),t.apply(this,arguments)}}function c(t,e,i){var o,n=e.prototype;o=t.prototype=Object.create(n),o.constructor=t,o._super=n,i&&ut(o,i)}function p(t,e){return function(){return t.apply(e,arguments)}}function f(t,e){return typeof t==ft?t.apply(e?e[0]||a:a,e):t}function m(t,e){return t===a?e:t}function v(t,e,i){l(_(e),function(e){t.addEventListener(e,i,!1)})}function g(t,e,i){l(_(e),function(e){t.removeEventListener(e,i,!1)})}function y(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function b(t,e){return t.indexOf(e)>-1}function _(t){return t.trim().split(/\s+/g)}function w(t,e,i){if(t.indexOf&&!i)return t.indexOf(e);for(var o=0;oi[e]}):o.sort()),o}function O(t,e){for(var i,o,n=e[0].toUpperCase()+e.slice(1),s=0;s1&&!i.firstMultiple?i.firstMultiple=N(e):1===n&&(i.firstMultiple=!1);var s=i.firstInput,r=i.firstMultiple,a=r?r.center:s.center,h=e.center=z(o);e.timeStamp=gt(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=B(a,h),e.distance=F(a,h),P(i,e),e.offsetDirection=A(e.deltaX,e.deltaY);var d=L(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=d.x,e.overallVelocityY=d.y,e.overallVelocity=vt(d.x)>vt(d.y)?d.x:d.y,e.scale=r?j(r.pointers,o):1,e.rotation=r?R(r.pointers,o):0,e.maxPointers=i.prevInput?e.pointers.length>i.prevInput.maxPointers?e.pointers.length:i.prevInput.maxPointers:e.pointers.length,I(i,e);var l=t.element;y(e.srcEvent.target,l)&&(l=e.srcEvent.target),e.target=l}function P(t,e){var i=e.center,o=t.offsetDelta||{},n=t.prevDelta||{},s=t.prevInput||{};(e.eventType===Et||s.eventType===It)&&(n=t.prevDelta={x:s.deltaX||0,y:s.deltaY||0},o=t.offsetDelta={x:i.x,y:i.y}),e.deltaX=n.x+(i.x-o.x),e.deltaY=n.y+(i.y-o.y)}function I(t,e){var i,o,n,s,r=t.lastInterval||e,h=e.timeStamp-r.timeStamp;if(e.eventType!=Nt&&(h>Tt||r.velocity===a)){var d=e.deltaX-r.deltaX,l=e.deltaY-r.deltaY,u=L(h,d,l);o=u.x,n=u.y,i=vt(u.x)>vt(u.y)?u.x:u.y,s=A(d,l),t.lastInterval=e}else i=r.velocity,o=r.velocityX,n=r.velocityY,s=r.direction;e.velocity=i,e.velocityX=o,e.velocityY=n,e.direction=s}function N(t){for(var e=[],i=0;in;)i+=t[n].clientX,o+=t[n].clientY,n++;return{x:mt(i/e),y:mt(o/e)}}function L(t,e,i){return{x:e/t||0,y:i/t||0}}function A(t,e){return t===e?zt:vt(t)>=vt(e)?0>t?Lt:At:0>e?Ft:Bt}function F(t,e,i){i||(i=Wt);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return Math.sqrt(o*o+n*n)}function B(t,e,i){i||(i=Wt);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return 180*Math.atan2(n,o)/Math.PI}function R(t,e){return B(e[1],e[0],Yt)+B(t[1],t[0],Yt)}function j(t,e){return F(e[0],e[1],Yt)/F(t[0],t[1],Yt)}function H(){this.evEl=Vt,this.evWin=Ut,this.allow=!0,this.pressed=!1,C.apply(this,arguments)}function W(){this.evEl=Zt,this.evWin=Kt,C.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function Y(){this.evTarget=Qt,this.evWin=$t,this.started=!1,C.apply(this,arguments)}function G(t,e){var i=x(t.touches),o=x(t.changedTouches);return e&(It|Nt)&&(i=k(i.concat(o),"identifier",!0)),[i,o]}function V(){this.evTarget=ee,this.targetIds={},C.apply(this,arguments)}function U(t,e){var i=x(t.touches),o=this.targetIds;if(e&(Et|Pt)&&1===i.length)return o[i[0].identifier]=!0,[i,i];var n,s,r=x(t.changedTouches),a=[],h=this.target;if(s=i.filter(function(t){return y(t.target,h)}),e===Et)for(n=0;na&&(e.push(t),a=e.length-1):n&(It|Nt)&&(i=!0),0>a||(e[a]=t,this.callback(this.manager,n,{pointers:e,changedPointers:[t],pointerType:s,srcEvent:t}),i&&e.splice(a,1))}});var Jt={touchstart:Et,touchmove:Pt,touchend:It,touchcancel:Nt},Qt="touchstart",$t="touchstart touchmove touchend touchcancel";c(Y,C,{handler:function(t){var e=Jt[t.type];if(e===Et&&(this.started=!0),this.started){var i=G.call(this,t,e);e&(It|Nt)&&i[0].length-i[1].length===0&&(this.started=!1),this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:Mt,srcEvent:t})}}});var te={touchstart:Et,touchmove:Pt,touchend:It,touchcancel:Nt},ee="touchstart touchmove touchend touchcancel";c(V,C,{handler:function(t){var e=te[t.type],i=U.call(this,t,e);i&&this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:Mt,srcEvent:t})}}),c(q,C,{handler:function(t,e,i){var o=i.pointerType==Mt,n=i.pointerType==Ct;if(o)this.mouse.allow=!1;else if(n&&!this.mouse.allow)return;e&(It|Nt)&&(this.mouse.allow=!0),this.callback(t,e,i)},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var ie=O(pt.style,"touchAction"),oe=ie!==a,ne="compute",se="auto",re="manipulation",ae="none",he="pan-x",de="pan-y";X.prototype={set:function(t){t==ne&&(t=this.compute()),oe&&this.manager.element.style&&(this.manager.element.style[ie]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var t=[];return l(this.manager.recognizers,function(e){f(e.options.enable,[e])&&(t=t.concat(e.getTouchAction()))}),Z(t.join(" "))},preventDefaults:function(t){if(!oe){var e=t.srcEvent,i=t.offsetDirection;if(this.manager.session.prevented)return void e.preventDefault();var o=this.actions,n=b(o,ae),s=b(o,de),r=b(o,he);if(n){var a=1===t.pointers.length,h=t.distance<2,d=t.deltaTime<250;if(a&&h&&d)return}if(!r||!s)return n||s&&i&Rt||r&&i&jt?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var le=1,ue=2,ce=4,pe=8,fe=pe,me=16,ve=32;K.prototype={defaults:{},set:function(t){return ut(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(d(t,"recognizeWith",this))return this;var e=this.simultaneous;return t=$(t,this),e[t.id]||(e[t.id]=t,t.recognizeWith(this)),this},dropRecognizeWith:function(t){return d(t,"dropRecognizeWith",this)?this:(t=$(t,this),delete this.simultaneous[t.id],this)},requireFailure:function(t){if(d(t,"requireFailure",this))return this;var e=this.requireFail;return t=$(t,this),-1===w(e,t)&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(d(t,"dropRequireFailure",this))return this;t=$(t,this);var e=w(this.requireFail,t);return e>-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){function e(e){i.manager.emit(e,t)}var i=this,o=this.state;pe>o&&e(i.options.event+J(o)),e(i.options.event),t.additionalEvent&&e(t.additionalEvent),o>=pe&&e(i.options.event+J(o))},tryEmit:function(t){return this.canEmit()?this.emit(t):void(this.state=ve)},canEmit:function(){for(var t=0;ts?Lt:At,i=s!=this.pX,o=Math.abs(t.deltaX)):(n=0===r?zt:0>r?Ft:Bt,i=r!=this.pY,o=Math.abs(t.deltaY))),t.direction=n,i&&o>e.threshold&&n&e.direction},attrTest:function(t){return tt.prototype.attrTest.call(this,t)&&(this.state&ue||!(this.state&ue)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=Q(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),c(it,tt,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[ae]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||this.state&ue)},emit:function(t){if(1!==t.scale){var e=t.scale<1?"in":"out";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),c(ot,K,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[se]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,o=t.distancee.time;if(this._input=t,!o||!i||t.eventType&(It|Nt)&&!n)this.reset();else if(t.eventType&Et)this.reset(),this._timer=h(function(){this.state=fe,this.tryEmit()},e.time,this);else if(t.eventType&It)return fe;return ve},reset:function(){clearTimeout(this._timer)},emit:function(t){this.state===fe&&(t&&t.eventType&It?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=gt(),this.manager.emit(this.options.event,this._input)))}}),c(nt,tt,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[ae]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||this.state&ue)}}),c(st,tt,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:Rt|jt,pointers:1},getTouchAction:function(){return et.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(Rt|jt)?e=t.overallVelocity:i&Rt?e=t.overallVelocityX:i&jt&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&i&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&vt(e)>this.options.velocity&&t.eventType&It},emit:function(t){var e=Q(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),c(rt,K,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[re]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,o=t.distanceu,c=r||null===n?n:h+(n-h)*i,v=r||null===s?s:l+(s-l)*i;g=a._applyRange(c,v),d.updateHiddenDates(a.options.moment,a.body,a.options.hiddenDates),m=m||g,g&&a.body.emitter.emit("rangechange",{start:new Date(a.start),end:new Date(a.end),byUser:o}),r?m&&a.body.emitter.emit("rangechanged",{start:new Date(a.start),end:new Date(a.end),byUser:o}):a.animationTimer=setTimeout(b,20)}};return v()}var g=this._applyRange(n,s);if(d.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates),g){var y={start:new Date(this.start),end:new Date(this.end),byUser:o};this.body.emitter.emit("rangechange",y),this.body.emitter.emit("rangechanged",y)}},o.prototype._cancelAnimation=function(){this.animationTimer&&(clearTimeout(this.animationTimer),this.animationTimer=null)},o.prototype._applyRange=function(t,e){var i,o=null!=t?r.convert(t,"Date").valueOf():this.start,n=null!=e?r.convert(e,"Date").valueOf():this.end,s=null!=this.options.max?r.convert(this.options.max,"Date").valueOf():null,a=null!=this.options.min?r.convert(this.options.min,"Date").valueOf():null;if(isNaN(o)||null===o)throw new Error('Invalid start "'+t+'"');if(isNaN(n)||null===n)throw new Error('Invalid end "'+e+'"');if(o>n&&(n=o),null!==a&&a>o&&(i=a-o,o+=i,n+=i,null!=s&&n>s&&(n=s)),null!==s&&n>s&&(i=n-s,o-=i,n-=i,null!=a&&a>o&&(o=a)),null!==this.options.zoomMin){var h=parseFloat(this.options.zoomMin);0>h&&(h=0),h>n-o&&(this.end-this.start===h&&o>this.start&&nd&&(d=0),n-o>d&&(this.end-this.start===d&&othis.end?(o=this.start,n=this.end):(i=n-o-d,o+=i/2,n-=i/2))}var l=this.start!=o||this.end!=n;return o>=this.start&&o<=this.end||n>=this.start&&n<=this.end||this.start>=o&&this.start<=n||this.end>=o&&this.end<=n||this.body.emitter.emit("checkRangedItems"),this.start=o,this.end=n,l},o.prototype.getRange=function(){return{start:this.start,end:this.end}},o.prototype.conversion=function(t,e){return o.conversion(this.start,this.end,t,e)},o.conversion=function(t,e,i,o){return void 0===o&&(o=0),0!=i&&e-t!=0?{offset:t,scale:i/(e-t-o)}:{offset:0,scale:1}},o.prototype._onDragStart=function(t){this.deltaDifference=0,this.previousDelta=0,this.options.moveable&&this._isInsideRange(t)&&this.props.touch.allowDragging&&(this.props.touch.start=this.start,this.props.touch.end=this.end,this.props.touch.dragging=!0,this.body.dom.root&&(this.body.dom.root.style.cursor="move"))},o.prototype._onDrag=function(t){if(this.props.touch.dragging&&this.options.moveable&&this.props.touch.allowDragging){var e=this.options.direction;n(e);var i="horizontal"==e?t.deltaX:t.deltaY;i-=this.deltaDifference;var o=this.props.touch.end-this.props.touch.start,s=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);o-=s;var r="horizontal"==e?this.body.domProps.center.width:this.body.domProps.center.height,a=-i/r*o,h=this.props.touch.start+a,l=this.props.touch.end+a,u=d.snapAwayFromHidden(this.body.hiddenDates,h,this.previousDelta-i,!0),c=d.snapAwayFromHidden(this.body.hiddenDates,l,this.previousDelta-i,!0);if(u!=h||c!=l)return this.deltaDifference+=i,this.props.touch.start=u,this.props.touch.end=c,void this._onDrag(t);this.previousDelta=i,this._applyRange(h,l);var p=new Date(this.start),f=new Date(this.end);this.body.emitter.emit("rangechange",{start:p,end:f,byUser:!0})}},o.prototype._onDragEnd=function(t){this.props.touch.dragging&&this.options.moveable&&this.props.touch.allowDragging&&(this.props.touch.dragging=!1,this.body.dom.root&&(this.body.dom.root.style.cursor="auto"),this.body.emitter.emit("rangechanged",{start:new Date(this.start),end:new Date(this.end),byUser:!0}))},o.prototype._onMouseWheel=function(t){if(this.options.zoomable&&this.options.moveable&&this._isInsideRange(t)&&(!this.options.zoomKey||t[this.options.zoomKey])){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),e){var i;i=0>e?1-e/5:1/(1+e/5);var o=s({x:t.clientX,y:t.clientY},this.body.dom.center),n=this._pointerToDate(o);this.zoom(i,n,e)}t.preventDefault()}},o.prototype._onTouch=function(t){this.props.touch.start=this.start,this.props.touch.end=this.end,this.props.touch.allowDragging=!0,this.props.touch.center=null,this.scaleOffset=0,this.deltaDifference=0},o.prototype._onPinch=function(t){if(this.options.zoomable&&this.options.moveable){this.props.touch.allowDragging=!1,this.props.touch.center||(this.props.touch.center=s(t.center,this.body.dom.center));var e=1/(t.scale+this.scaleOffset),i=this._pointerToDate(this.props.touch.center),o=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=d.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this,i),r=o-n,a=i-n+(this.props.touch.start-(i-n))*e,h=i+r+(this.props.touch.end-(i+r))*e;this.startToFront=0>=1-e,this.endToFront=0>=e-1;var l=d.snapAwayFromHidden(this.body.hiddenDates,a,1-e,!0),u=d.snapAwayFromHidden(this.body.hiddenDates,h,e-1,!0);(l!=a||u!=h)&&(this.props.touch.start=l,this.props.touch.end=u,this.scaleOffset=1-t.scale,a=l,h=u),this.setRange(a,h,!1,!0),this.startToFront=!1,this.endToFront=!0}},o.prototype._isInsideRange=function(t){var e=t.center?t.center.x:t.clientX,i=e-r.getAbsoluteLeft(this.body.dom.centerContainer),o=this.body.util.toTime(i);return o>=this.start&&o<=this.end},o.prototype._pointerToDate=function(t){var e,i=this.options.direction;if(n(i),"horizontal"==i)return this.body.util.toTime(t.x).valueOf();var o=this.body.domProps.center.height;return e=this.conversion(o),t.y/e.scale+e.offset},o.prototype.zoom=function(t,e,i){null==e&&(e=(this.start+this.end)/2);var o=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=d.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this,e),s=o-n,r=e-n+(this.start-(e-n))*t,a=e+s+(this.end-(e+s))*t;this.startToFront=i>0?!1:!0,this.endToFront=-i>0?!1:!0;var h=d.snapAwayFromHidden(this.body.hiddenDates,r,i,!0),l=d.snapAwayFromHidden(this.body.hiddenDates,a,-i,!0);(h!=r||l!=a)&&(r=h,a=l),this.setRange(r,a,!1,!0),this.startToFront=!1,this.endToFront=!0},o.prototype.move=function(t){var e=this.end-this.start,i=this.start+e*t,o=this.end+e*t;this.start=i,this.end=o},o.prototype.moveTo=function(t){var e=(this.start+this.end)/2,i=e-t,o=this.start-i,n=this.end-i;this.setRange(o,n)},t.exports=o},function(t,e,i){i(20);e.onTouch=function(t,e){e.inputHandler=function(t){t.isFirst&&e(t)},t.on("hammer.input",e.inputHandler)},e.onRelease=function(t,e){return e.inputHandler=function(t){t.isFinal&&e(t)},t.on("hammer.input",e.inputHandler)},e.offTouch=function(t,e){t.off("hammer.input",e.inputHandler)},e.offRelease=e.offTouch},function(t,e){function i(t,e){this.options=null,this.props=null}i.prototype.setOptions=function(t){t&&util.extend(this.options,t)},i.prototype.redraw=function(){return!1},i.prototype.destroy=function(){},i.prototype._isResized=function(){var t=this.props._previousWidth!==this.props.width||this.props._previousHeight!==this.props.height;return this.props._previousWidth=this.props.width,this.props._previousHeight=this.props.height,t},t.exports=i},function(t,e){e.convertHiddenOptions=function(t,i,o){if(o&&!Array.isArray(o))return e.convertHiddenOptions(t,i,[o]);if(i.hiddenDates=[],o&&1==Array.isArray(o)){for(var n=0;n=4*a){var c=0,p=s.clone();switch(o[h].repeat){case"daily":d.day()!=l.day()&&(c=1),d.dayOfYear(n.dayOfYear()),d.year(n.year()),d.subtract(7,"days"),l.dayOfYear(n.dayOfYear()),l.year(n.year()),l.subtract(7-c,"days"),p.add(1,"weeks");break;case"weekly":var f=l.diff(d,"days"),m=d.day();d.date(n.date()),d.month(n.month()),d.year(n.year()),l=d.clone(),d.day(m),l.day(m),l.add(f,"days"),d.subtract(1,"weeks"),l.subtract(1,"weeks"),p.add(1,"weeks");break;case"monthly":d.month()!=l.month()&&(c=1),d.month(n.month()),d.year(n.year()),d.subtract(1,"months"),l.month(n.month()),l.year(n.year()),l.subtract(1,"months"),l.add(c,"months"),p.add(1,"months");break;case"yearly":d.year()!=l.year()&&(c=1),d.year(n.year()),d.subtract(1,"years"),l.year(n.year()),l.subtract(1,"years"),l.add(c,"years"),p.add(1,"years");break;default:return void console.log("Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:",o[h].repeat)}for(;p>d;)switch(i.hiddenDates.push({start:d.valueOf(),end:l.valueOf()}),o[h].repeat){case"daily":d.add(1,"days"),l.add(1,"days");break;case"weekly":d.add(1,"weeks"),l.add(1,"weeks");break;case"monthly":d.add(1,"months"),l.add(1,"months");break;case"yearly":d.add(1,"y"),l.add(1,"y");break;default:return void console.log("Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:",o[h].repeat)}i.hiddenDates.push({start:d.valueOf(),end:l.valueOf()})}}e.removeDuplicates(i);var v=e.isHidden(i.range.start,i.hiddenDates),g=e.isHidden(i.range.end,i.hiddenDates),y=i.range.start,b=i.range.end;1==v.hidden&&(y=1==i.range.startToFront?v.startDate-1:v.endDate+1),1==g.hidden&&(b=1==i.range.endToFront?g.startDate-1:g.endDate+1),(1==v.hidden||1==g.hidden)&&i.range._applyRange(y,b)}},e.removeDuplicates=function(t){for(var e=t.hiddenDates,i=[],o=0;o=e[o].start&&e[n].end<=e[o].end?e[n].remove=!0:e[n].start>=e[o].start&&e[n].start<=e[o].end?(e[o].end=e[n].end,e[n].remove=!0):e[n].end>=e[o].start&&e[n].end<=e[o].end&&(e[o].start=e[n].start,e[n].remove=!0));for(var o=0;o=r&&a>n){o=!0;break}}if(1==o&&n=e&&i>r&&(o+=r-s)}return o},e.correctTimeForHidden=function(t,i,o,n){return n=t(n).toDate().valueOf(),n-=e.getHiddenDurationBefore(t,i,o,n)},e.getHiddenDurationBefore=function(t,e,i,o){var n=0;o=t(o).toDate().valueOf();for(var s=0;s=i.start&&a=a&&(n+=a-r)}return n},e.getAccumulatedHiddenDuration=function(t,e,i){for(var o=0,n=0,s=e.start,r=0;r=e.start&&h=i)break;o+=h-a}}return o},e.snapAwayFromHidden=function(t,i,o,n){var s=e.isHidden(i,t);return 1==s.hidden?0>o?1==n?s.startDate-(s.endDate-i)-1:s.startDate-1:1==n?s.endDate+(i-s.startDate)+1:s.endDate+1:i},e.isHidden=function(t,e){for(var i=0;i=o&&n>t)return{hidden:!0,startDate:o,endDate:n}}return{hidden:!1,startDate:o,endDate:n}}},function(t,e,i){function o(){}var n=i(12),s=i(20),r=i(24),a=i(1),h=(i(8),i(10),i(23),i(28),i(38)),d=i(39),l=i(26),u=i(41);n(o.prototype),o.prototype._create=function(t){function e(t){i.isActive()&&i.emit("mousewheel",t)}this.dom={},this.options={},this.dom.container=t,this.dom.root=document.createElement("div"),this.dom.background=document.createElement("div"), -this.dom.backgroundVertical=document.createElement("div"),this.dom.backgroundHorizontal=document.createElement("div"),this.dom.centerContainer=document.createElement("div"),this.dom.leftContainer=document.createElement("div"),this.dom.rightContainer=document.createElement("div"),this.dom.center=document.createElement("div"),this.dom.left=document.createElement("div"),this.dom.right=document.createElement("div"),this.dom.top=document.createElement("div"),this.dom.bottom=document.createElement("div"),this.dom.shadowTop=document.createElement("div"),this.dom.shadowBottom=document.createElement("div"),this.dom.shadowTopLeft=document.createElement("div"),this.dom.shadowBottomLeft=document.createElement("div"),this.dom.shadowTopRight=document.createElement("div"),this.dom.shadowBottomRight=document.createElement("div"),this.dom.root.className="vis-timeline",this.dom.background.className="vis-panel vis-background",this.dom.backgroundVertical.className="vis-panel vis-background vis-vertical",this.dom.backgroundHorizontal.className="vis-panel vis-background vis-horizontal",this.dom.centerContainer.className="vis-panel vis-center",this.dom.leftContainer.className="vis-panel vis-left",this.dom.rightContainer.className="vis-panel vis-right",this.dom.top.className="vis-panel vis-top",this.dom.bottom.className="vis-panel vis-bottom",this.dom.left.className="vis-content",this.dom.center.className="vis-content",this.dom.right.className="vis-content",this.dom.shadowTop.className="vis-shadow vis-top",this.dom.shadowBottom.className="vis-shadow vis-bottom",this.dom.shadowTopLeft.className="vis-shadow vis-top",this.dom.shadowBottomLeft.className="vis-shadow vis-bottom",this.dom.shadowTopRight.className="vis-shadow vis-top",this.dom.shadowBottomRight.className="vis-shadow vis-bottom",this.dom.root.appendChild(this.dom.background),this.dom.root.appendChild(this.dom.backgroundVertical),this.dom.root.appendChild(this.dom.backgroundHorizontal),this.dom.root.appendChild(this.dom.centerContainer),this.dom.root.appendChild(this.dom.leftContainer),this.dom.root.appendChild(this.dom.rightContainer),this.dom.root.appendChild(this.dom.top),this.dom.root.appendChild(this.dom.bottom),this.dom.centerContainer.appendChild(this.dom.center),this.dom.leftContainer.appendChild(this.dom.left),this.dom.rightContainer.appendChild(this.dom.right),this.dom.centerContainer.appendChild(this.dom.shadowTop),this.dom.centerContainer.appendChild(this.dom.shadowBottom),this.dom.leftContainer.appendChild(this.dom.shadowTopLeft),this.dom.leftContainer.appendChild(this.dom.shadowBottomLeft),this.dom.rightContainer.appendChild(this.dom.shadowTopRight),this.dom.rightContainer.appendChild(this.dom.shadowBottomRight),this.on("rangechange",function(){this.initialDrawDone===!0&&this._redraw()}.bind(this)),this.on("touch",this._onTouch.bind(this)),this.on("pan",this._onDrag.bind(this));var i=this;this.on("_change",function(t){t&&1==t.queue?i._redrawTimer||(i._redrawTimer=setTimeout(function(){i._redrawTimer=null,i._redraw()},0)):i._redraw()}),this.hammer=new s(this.dom.root),this.hammer.get("pinch").set({enable:!0}),this.hammer.get("pan").set({threshold:5,direction:30}),this.listeners={};var o=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];if(o.forEach(function(t){var e=function(e){i.isActive()&&i.emit(t,e)};i.hammer.on(t,e),i.listeners[t]=e}),r.onTouch(this.hammer,function(t){i.emit("touch",t)}.bind(this)),r.onRelease(this.hammer,function(t){i.emit("release",t)}.bind(this)),this.dom.root.addEventListener("mousewheel",e),this.dom.root.addEventListener("DOMMouseScroll",e),this.props={root:{},background:{},centerContainer:{},leftContainer:{},rightContainer:{},center:{},left:{},right:{},top:{},bottom:{},border:{},scrollTop:0,scrollTopMin:0},this.customTimes=[],this.touch={},this.redrawCount=0,this.initialDrawDone=!1,!t)throw new Error("No container provided");t.appendChild(this.dom.root)},o.prototype.setOptions=function(t){if(t){var e=["width","height","minHeight","maxHeight","autoResize","start","end","clickToUse","dataAttributes","hiddenDates","locale","locales","moment","throttleRedraw"];if(a.selectiveExtend(e,this.options,t),this.options.orientation={item:void 0,axis:void 0},"orientation"in t&&("string"==typeof t.orientation?this.options.orientation={item:t.orientation,axis:t.orientation}:"object"==typeof t.orientation&&("item"in t.orientation&&(this.options.orientation.item=t.orientation.item),"axis"in t.orientation&&(this.options.orientation.axis=t.orientation.axis))),"both"===this.options.orientation.axis){if(!this.timeAxis2){var i=this.timeAxis2=new h(this.body);i.setOptions=function(t){var e=t?a.extend({},t):{};e.orientation="top",h.prototype.setOptions.call(i,e)},this.components.push(i)}}else if(this.timeAxis2){var o=this.components.indexOf(this.timeAxis2);-1!==o&&this.components.splice(o,1),this.timeAxis2.destroy(),this.timeAxis2=null}if("function"==typeof t.drawPoints&&(t.drawPoints={onRender:t.drawPoints}),"hiddenDates"in this.options&&l.convertHiddenOptions(this.options.moment,this.body,this.options.hiddenDates),"clickToUse"in t&&(t.clickToUse?this.activator||(this.activator=new d(this.dom.root)):this.activator&&(this.activator.destroy(),delete this.activator)),"showCustomTime"in t)throw new Error("Option `showCustomTime` is deprecated. Create a custom time bar via timeline.addCustomTime(time [, id])");this._initAutoResize()}if(this.components.forEach(function(e){return e.setOptions(t)}),"configure"in t){this.configurator||(this.configurator=this._createConfigurator()),this.configurator.setOptions(t.configure);var n=a.deepExtend({},this.options);this.components.forEach(function(t){a.deepExtend(n,t.options)}),this.configurator.setModuleOptions({global:n})}this._origRedraw?this._redraw():(this._origRedraw=this._redraw.bind(this),this._redraw=a.throttle(this._origRedraw,this.options.throttleRedraw))},o.prototype.isActive=function(){return!this.activator||this.activator.active},o.prototype.destroy=function(){this.setItems(null),this.setGroups(null),this.off(),this._stopAutoResize(),this.dom.root.parentNode&&this.dom.root.parentNode.removeChild(this.dom.root),this.dom=null,this.activator&&(this.activator.destroy(),delete this.activator);for(var t in this.listeners)this.listeners.hasOwnProperty(t)&&delete this.listeners[t];this.listeners=null,this.hammer=null,this.components.forEach(function(t){return t.destroy()}),this.body=null},o.prototype.setCustomTime=function(t,e){var i=this.customTimes.filter(function(t){return e===t.options.id});if(0===i.length)throw new Error("No custom time bar found with id "+JSON.stringify(e));i.length>0&&i[0].setCustomTime(t)},o.prototype.getCustomTime=function(t){var e=this.customTimes.filter(function(e){return e.options.id===t});if(0===e.length)throw new Error("No custom time bar found with id "+JSON.stringify(t));return e[0].getCustomTime()},o.prototype.setCustomTimeTitle=function(t,e){var i=this.customTimes.filter(function(t){return t.options.id===e});if(0===i.length)throw new Error("No custom time bar found with id "+JSON.stringify(e));return i.length>0?i[0].setCustomTitle(t):void 0},o.prototype.getEventProperties=function(t){return{event:t}},o.prototype.addCustomTime=function(t,e){var i=void 0!==t?a.convert(t,"Date").valueOf():new Date,o=this.customTimes.some(function(t){return t.options.id===e});if(o)throw new Error("A custom time with id "+JSON.stringify(e)+" already exists");var n=new u(this.body,a.extend({},this.options,{time:i,id:e}));return this.customTimes.push(n),this.components.push(n),this._redraw(),e},o.prototype.removeCustomTime=function(t){var e=this.customTimes.filter(function(e){return e.options.id===t});if(0===e.length)throw new Error("No custom time bar found with id "+JSON.stringify(t));e.forEach(function(t){this.customTimes.splice(this.customTimes.indexOf(t),1),this.components.splice(this.components.indexOf(t),1),t.destroy()}.bind(this))},o.prototype.getVisibleItems=function(){return this.itemSet&&this.itemSet.getVisibleItems()||[]},o.prototype.fit=function(t){var e=this.getDataRange();if(null!==e.min||null!==e.max){var i=e.max-e.min,o=new Date(e.min.valueOf()-.01*i),n=new Date(e.max.valueOf()+.01*i),s=t&&void 0!==t.animation?t.animation:!0;this.range.setRange(o,n,s)}},o.prototype.getDataRange=function(){throw new Error("Cannot invoke abstract method getDataRange")},o.prototype.setWindow=function(t,e,i){var o;if(1==arguments.length){var n=arguments[0];o=void 0!==n.animation?n.animation:!0,this.range.setRange(n.start,n.end,o)}else o=i&&void 0!==i.animation?i.animation:!0,this.range.setRange(t,e,o)},o.prototype.moveTo=function(t,e){var i=this.range.end-this.range.start,o=a.convert(t,"Date").valueOf(),n=o-i/2,s=o+i/2,r=e&&void 0!==e.animation?e.animation:!0;this.range.setRange(n,s,r)},o.prototype.getWindow=function(){var t=this.range.getRange();return{start:new Date(t.start),end:new Date(t.end)}},o.prototype.redraw=function(){this._redraw()},o.prototype._redraw=function(){this.redrawCount++;var t=!1,e=this.options,i=this.props,o=this.dom;if(o&&o.container&&0!=o.container.clientWidth){l.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates),"top"==e.orientation?(a.addClassName(o.root,"vis-top"),a.removeClassName(o.root,"vis-bottom")):(a.removeClassName(o.root,"vis-top"),a.addClassName(o.root,"vis-bottom")),o.root.style.maxHeight=a.option.asSize(e.maxHeight,""),o.root.style.minHeight=a.option.asSize(e.minHeight,""),o.root.style.width=a.option.asSize(e.width,""),i.border.left=(o.centerContainer.offsetWidth-o.centerContainer.clientWidth)/2,i.border.right=i.border.left,i.border.top=(o.centerContainer.offsetHeight-o.centerContainer.clientHeight)/2,i.border.bottom=i.border.top;var n=o.root.offsetHeight-o.root.clientHeight,s=o.root.offsetWidth-o.root.clientWidth;0===o.centerContainer.clientHeight&&(i.border.left=i.border.top,i.border.right=i.border.left),0===o.root.clientHeight&&(s=n),i.center.height=o.center.offsetHeight,i.left.height=o.left.offsetHeight,i.right.height=o.right.offsetHeight,i.top.height=o.top.clientHeight||-i.border.top,i.bottom.height=o.bottom.clientHeight||-i.border.bottom;var r=Math.max(i.left.height,i.center.height,i.right.height),h=i.top.height+r+i.bottom.height+n+i.border.top+i.border.bottom;o.root.style.height=a.option.asSize(e.height,h+"px"),i.root.height=o.root.offsetHeight,i.background.height=i.root.height-n;var d=i.root.height-i.top.height-i.bottom.height-n;i.centerContainer.height=d,i.leftContainer.height=d,i.rightContainer.height=i.leftContainer.height,i.root.width=o.root.offsetWidth,i.background.width=i.root.width-s,i.left.width=o.leftContainer.clientWidth||-i.border.left,i.leftContainer.width=i.left.width,i.right.width=o.rightContainer.clientWidth||-i.border.right,i.rightContainer.width=i.right.width;var u=i.root.width-i.left.width-i.right.width-s;i.center.width=u,i.centerContainer.width=u,i.top.width=u,i.bottom.width=u,o.background.style.height=i.background.height+"px",o.backgroundVertical.style.height=i.background.height+"px",o.backgroundHorizontal.style.height=i.centerContainer.height+"px",o.centerContainer.style.height=i.centerContainer.height+"px",o.leftContainer.style.height=i.leftContainer.height+"px",o.rightContainer.style.height=i.rightContainer.height+"px",o.background.style.width=i.background.width+"px",o.backgroundVertical.style.width=i.centerContainer.width+"px",o.backgroundHorizontal.style.width=i.background.width+"px",o.centerContainer.style.width=i.center.width+"px",o.top.style.width=i.top.width+"px",o.bottom.style.width=i.bottom.width+"px",o.background.style.left="0",o.background.style.top="0",o.backgroundVertical.style.left=i.left.width+i.border.left+"px",o.backgroundVertical.style.top="0",o.backgroundHorizontal.style.left="0",o.backgroundHorizontal.style.top=i.top.height+"px",o.centerContainer.style.left=i.left.width+"px",o.centerContainer.style.top=i.top.height+"px",o.leftContainer.style.left="0",o.leftContainer.style.top=i.top.height+"px",o.rightContainer.style.left=i.left.width+i.center.width+"px",o.rightContainer.style.top=i.top.height+"px",o.top.style.left=i.left.width+"px",o.top.style.top="0",o.bottom.style.left=i.left.width+"px",o.bottom.style.top=i.top.height+i.centerContainer.height+"px",this._updateScrollTop();var c=this.props.scrollTop;"top"!=e.orientation.item&&(c+=Math.max(this.props.centerContainer.height-this.props.center.height-this.props.border.top-this.props.border.bottom,0)),o.center.style.left="0",o.center.style.top=c+"px",o.left.style.left="0",o.left.style.top=c+"px",o.right.style.left="0",o.right.style.top=c+"px";var p=0==this.props.scrollTop?"hidden":"",f=this.props.scrollTop==this.props.scrollTopMin?"hidden":"";o.shadowTop.style.visibility=p,o.shadowBottom.style.visibility=f,o.shadowTopLeft.style.visibility=p,o.shadowBottomLeft.style.visibility=f,o.shadowTopRight.style.visibility=p,o.shadowBottomRight.style.visibility=f,this.components.forEach(function(e){t=e.redraw()||t});var m=5;if(t){if(this.redrawCount0&&(this.props.scrollTop=0),this.props.scrollTope;e++)o=this.selection[e],n=this.items[o],n&&n.unselect();for(this.selection=[],e=0,i=t.length;i>e;e++)o=t[e],n=this.items[o],n&&(this.selection.push(o),n.select())},o.prototype.getSelection=function(){return this.selection.concat([])},o.prototype.getVisibleItems=function(){var t=this.body.range.getRange(),e=this.body.util.toScreen(t.start),i=this.body.util.toScreen(t.end),o=[];for(var n in this.groups)if(this.groups.hasOwnProperty(n))for(var s=this.groups[n],r=s.visibleItems,a=0;ae&&o.push(h.id)}return o},o.prototype._deselect=function(t){for(var e=this.selection,i=0,o=e.length;o>i;i++)if(e[i]==t){e.splice(i,1);break}},o.prototype.redraw=function(){var t=this.options.margin,e=this.body.range,i=s.option.asSize,o=this.options,n=o.orientation.item,r=!1,a=this.dom.frame;this.props.top=this.body.domProps.top.height+this.body.domProps.border.top,this.props.left=this.body.domProps.left.width+this.body.domProps.border.left,a.className="vis-itemset",r=this._orderGroups()||r;var h=e.end-e.start,d=h!=this.lastVisibleInterval||this.props.width!=this.props.lastWidth;d&&(this.stackDirty=!0),this.lastVisibleInterval=h,this.props.lastWidth=this.props.width;var l=this.stackDirty,u=this._firstGroup(),c={item:t.item,axis:t.axis},p={item:t.item,axis:t.item.vertical/2},f=0,m=t.axis+t.item.vertical;return this.groups[g].redraw(e,p,l),s.forEach(this.groups,function(t){var i=t==u?c:p,o=t.redraw(e,i,l);r=o||r,f+=t.height}),f=Math.max(f,m),this.stackDirty=!1,a.style.height=i(f),this.props.width=a.offsetWidth,this.props.height=f,this.dom.axis.style.top=i("top"==n?this.body.domProps.top.height+this.body.domProps.border.top:this.body.domProps.top.height+this.body.domProps.centerContainer.height),this.dom.axis.style.left="0",r=this._isResized()||r},o.prototype._firstGroup=function(){var t="top"==this.options.orientation.item?0:this.groupIds.length-1,e=this.groupIds[t],i=this.groups[e]||this.groups[v];return i||null},o.prototype._updateUngrouped=function(){var t,e,i=this.groups[v];this.groups[g];if(this.groupsData){if(i){i.hide(),delete this.groups[v];for(e in this.items)if(this.items.hasOwnProperty(e)){t=this.items[e],t.parent&&t.parent.remove(t);var o=this._getGroupId(t.data),n=this.groups[o];n&&n.add(t)||t.hide()}}}else if(!i){var s=null,r=null;i=new l(s,r,this),this.groups[v]=i;for(e in this.items)this.items.hasOwnProperty(e)&&(t=this.items[e],i.add(t));i.show()}},o.prototype.getLabelSet=function(){return this.dom.labelSet},o.prototype.setItems=function(t){var e,i=this,o=this.itemsData;if(t){if(!(t instanceof r||t instanceof a))throw new TypeError("Data must be an instance of DataSet or DataView");this.itemsData=t}else this.itemsData=null;if(o&&(s.forEach(this.itemListeners,function(t,e){o.off(e,t)}),e=o.getIds(),this._onRemove(e)),this.itemsData){var n=this.id;s.forEach(this.itemListeners,function(t,e){i.itemsData.on(e,t,n)}),e=this.itemsData.getIds(),this._onAdd(e),this._updateUngrouped()}this.body.emitter.emit("_change",{queue:!0})},o.prototype.getItems=function(){return this.itemsData},o.prototype.setGroups=function(t){var e,i=this;if(this.groupsData&&(s.forEach(this.groupListeners,function(t,e){i.groupsData.off(e,t)}),e=this.groupsData.getIds(),this.groupsData=null,this._onRemoveGroups(e)),t){if(!(t instanceof r||t instanceof a))throw new TypeError("Data must be an instance of DataSet or DataView");this.groupsData=t}else this.groupsData=null;if(this.groupsData){var o=this.id;s.forEach(this.groupListeners,function(t,e){i.groupsData.on(e,t,o)}),e=this.groupsData.getIds(),this._onAddGroups(e)}this._updateUngrouped(),this._order(),this.body.emitter.emit("_change",{queue:!0})},o.prototype.getGroups=function(){return this.groupsData},o.prototype.removeItem=function(t){var e=this.itemsData.get(t),i=this.itemsData.getDataSet();e&&this.options.onRemove(e,function(e){e&&i.remove(t)})},o.prototype._getType=function(t){return t.type||this.options.type||(t.end?"range":"box")},o.prototype._getGroupId=function(t){var e=this._getType(t);return"background"==e&&void 0==t.group?g:this.groupsData?t.group:v},o.prototype._onUpdate=function(t){var e=this;t.forEach(function(t){var i,n=e.itemsData.get(t,e.itemOptions),s=e.items[t],r=e._getType(n),a=o.types[r];if(s&&(a&&s instanceof a?e._updateItem(s,n):(i=s.selected,e._removeItem(s),s=null)),!s){if(!a)throw"rangeoverflow"==r?new TypeError('Item type "rangeoverflow" is deprecated. Use css styling instead: .vis-item.vis-range .vis-item-content {overflow: visible;}'):new TypeError('Unknown item type "'+r+'"');s=new a(n,e.conversion,e.options),s.id=t,e._addItem(s),i&&(this.selection.push(t),s.select())}}.bind(this)),this._order(),this.stackDirty=!0,this.body.emitter.emit("_change",{queue:!0})},o.prototype._onAdd=o.prototype._onUpdate,o.prototype._onRemove=function(t){var e=0,i=this;t.forEach(function(t){var o=i.items[t];o&&(e++,i._removeItem(o))}),e&&(this._order(),this.stackDirty=!0,this.body.emitter.emit("_change",{queue:!0}))},o.prototype._order=function(){s.forEach(this.groups,function(t){t.order()})},o.prototype._onUpdateGroups=function(t){this._onAddGroups(t)},o.prototype._onAddGroups=function(t){var e=this;t.forEach(function(t){var i=e.groupsData.get(t),o=e.groups[t];if(o)o.setData(i);else{if(t==v||t==g)throw new Error("Illegal group id. "+t+" is a reserved id.");var n=Object.create(e.options);s.extend(n,{height:null}),o=new l(t,i,e),e.groups[t]=o;for(var r in e.items)if(e.items.hasOwnProperty(r)){var a=e.items[r];a.data.group==t&&o.add(a)}o.order(),o.show()}}),this.body.emitter.emit("_change",{queue:!0})},o.prototype._onRemoveGroups=function(t){var e=this.groups;t.forEach(function(t){var i=e[t];i&&(i.hide(),delete e[t])}),this.markDirty(),this.body.emitter.emit("_change",{queue:!0})},o.prototype._orderGroups=function(){if(this.groupsData){var t=this.groupsData.getIds({order:this.options.groupOrder}),e=!s.equalArray(t,this.groupIds);if(e){var i=this.groups;t.forEach(function(t){i[t].hide()}),t.forEach(function(t){i[t].show()}),this.groupIds=t}return e}return!1},o.prototype._addItem=function(t){this.items[t.id]=t;var e=this._getGroupId(t.data),i=this.groups[e];i&&i.add(t)},o.prototype._updateItem=function(t,e){var i=t.data.group,o=t.data.subgroup;if(t.setData(e),i!=t.data.group||o!=t.data.subgroup){var n=this.groups[i];n&&n.remove(t);var s=this._getGroupId(t.data),r=this.groups[s];r&&r.add(t)}},o.prototype._removeItem=function(t){t.hide(),delete this.items[t.id];var e=this.selection.indexOf(t.id);-1!=e&&this.selection.splice(e,1),t.parent&&t.parent.remove(t)},o.prototype._constructByEndArray=function(t){for(var e=[],i=0;in+r)return}else{var a=e.height;if(n+a-r>o)return}}if(e&&e!=this.groupTouchParams.group){var h=this.groupsData,d=h.get(e.groupId),l=h.get(this.groupTouchParams.group.groupId);l&&d&&(this.options.groupOrderSwap(l,d,this.groupsData),this.groupsData.update(l),this.groupsData.update(d));var u=this.groupsData.getIds({order:this.options.groupOrder});if(!s.equalArray(u,this.groupTouchParams.originalOrder))for(var h=this.groupsData,c=this.groupTouchParams.originalOrder,p=this.groupTouchParams.group.groupId,f=Math.min(c.length,u.length),m=0,v=0,g=0;f>m;){for(;f>m+v&&f>m+g&&u[m+v]==c[m+g];)m++;if(m+v>=f)break;if(u[m+v]!=p)if(c[m+g]!=p){var y=u.indexOf(c[m+g]),b=h.get(u[m+v]),_=h.get(c[m+g]);this.options.groupOrderSwap(b,_,h),h.update(b),h.update(_);var w=u[m+v];u[m+v]=c[m+g],u[y]=w,m++}else g=1;else v=1}}}},o.prototype._onGroupDragEnd=function(t){if(this.options.groupEditable.order&&this.groupTouchParams.group){t.stopPropagation();var e=this,i=e.groupTouchParams.group.groupId,o=e.groupsData.getDataSet(),n=s.extend({},o.get(i));e.options.onMoveGroup(n,function(t){if(t)t[o._fieldId]=i,o.update(t);else{var n=o.getIds({order:e.options.groupOrder});if(!s.equalArray(n,e.groupTouchParams.originalOrder))for(var r=e.groupTouchParams.originalOrder,a=Math.min(r.length,n.length),h=0;a>h;){for(;a>h&&n[h]==r[h];)h++;if(h>=a)break;var d=n.indexOf(r[h]),l=o.get(n[h]),u=o.get(r[h]);e.options.groupOrderSwap(l,u,o),groupsData.update(l),groupsData.update(u);var c=n[h];n[h]=r[h],n[d]=c,h++}}}),e.body.emitter.emit("groupDragged",{groupId:i})}},o.prototype._onSelectItem=function(t){if(this.options.selectable){var e=t.srcEvent&&(t.srcEvent.ctrlKey||t.srcEvent.metaKey),i=t.srcEvent&&t.srcEvent.shiftKey;if(e||i)return void this._onMultiSelectItem(t);var o=this.getSelection(),n=this.itemFromTarget(t),s=n?[n.id]:[];this.setSelection(s);var r=this.getSelection();(r.length>0||o.length>0)&&this.body.emitter.emit("select",{items:r,event:t})}},o.prototype._onAddItem=function(t){if(this.options.selectable&&this.options.editable.add){var e=this,i=this.options.snap||null,o=this.itemFromTarget(t);if(o){var n=e.itemsData.get(o.id);this.options.onUpdate(n,function(t){t&&e.itemsData.getDataSet().update(t)})}else{var r=s.getAbsoluteLeft(this.dom.frame),a=t.center.x-r,h=this.body.util.toTime(a),d=this.body.util.getScale(),l=this.body.util.getStep(),u={start:i?i(h,d,l):h,content:"new item"};if("range"===this.options.type){var c=this.body.util.toTime(a+this.props.width/5);u.end=i?i(c,d,l):c}u[this.itemsData._fieldId]=s.randomUUID();var p=this.groupFromTarget(t);p&&(u.group=p.groupId),u=this._cloneItemData(u),this.options.onAdd(u,function(t){t&&e.itemsData.getDataSet().add(t)})}}},o.prototype._onMultiSelectItem=function(t){if(this.options.selectable){var e=this.itemFromTarget(t);if(e){var i=this.options.multiselect?this.getSelection():[],n=t.srcEvent&&t.srcEvent.shiftKey||!1;if(n&&this.options.multiselect){var s=this.itemsData.get(e.id).group,r=void 0;this.options.multiselectPerGroup&&i.length>0&&(r=this.itemsData.get(i[0]).group),this.options.multiselectPerGroup&&void 0!=r&&r!=s||i.push(e.id);var a=o._getItemRange(this.itemsData.get(i,this.itemOptions));if(!this.options.multiselectPerGroup||r==s){i=[];for(var h in this.items)if(this.items.hasOwnProperty(h)){var d=this.items[h],l=d.data.start,u=void 0!==d.data.end?d.data.end:l;!(l>=a.min&&u<=a.max)||this.options.multiselectPerGroup&&r!=this.itemsData.get(d.id).group||d instanceof m||i.push(d.id)}}}else{var c=i.indexOf(e.id);-1==c?i.push(e.id):i.splice(c,1)}this.setSelection(i),this.body.emitter.emit("select",{items:this.getSelection(),event:t})}}},o._getItemRange=function(t){var e=null,i=null;return t.forEach(function(t){(null==i||t.starte)&&(e=t.end):(null==e||t.start>e)&&(e=t.start)}),{min:i,max:e}},o.prototype.itemFromTarget=function(t){for(var e=t.target;e;){if(e.hasOwnProperty("timeline-item"))return e["timeline-item"];e=e.parentNode}return null},o.prototype.groupFromTarget=function(t){for(var e=t.center?t.center.y:t.clientY,i=0;ia&&ea)return n}else if(0===i&&e0?t.step:1,this.autoScale=!1)},o.prototype.setAutoScale=function(t){this.autoScale=t},o.prototype.setMinimumStep=function(t){if(void 0!=t){var e=31104e6,i=2592e6,o=864e5,n=36e5,s=6e4,r=1e3,a=1;1e3*e>t&&(this.scale="year",this.step=1e3),500*e>t&&(this.scale="year",this.step=500),100*e>t&&(this.scale="year",this.step=100),50*e>t&&(this.scale="year",this.step=50),10*e>t&&(this.scale="year",this.step=10),5*e>t&&(this.scale="year",this.step=5),e>t&&(this.scale="year",this.step=1),3*i>t&&(this.scale="month",this.step=3),i>t&&(this.scale="month",this.step=1),5*o>t&&(this.scale="day",this.step=5),2*o>t&&(this.scale="day",this.step=2),o>t&&(this.scale="day",this.step=1),o/2>t&&(this.scale="weekday",this.step=1),4*n>t&&(this.scale="hour",this.step=4),n>t&&(this.scale="hour",this.step=1),15*s>t&&(this.scale="minute",this.step=15),10*s>t&&(this.scale="minute",this.step=10),5*s>t&&(this.scale="minute",this.step=5),s>t&&(this.scale="minute",this.step=1),15*r>t&&(this.scale="second",this.step=15),10*r>t&&(this.scale="second",this.step=10),5*r>t&&(this.scale="second",this.step=5),r>t&&(this.scale="second",this.step=1),200*a>t&&(this.scale="millisecond",this.step=200),100*a>t&&(this.scale="millisecond",this.step=100),50*a>t&&(this.scale="millisecond",this.step=50),10*a>t&&(this.scale="millisecond",this.step=10),5*a>t&&(this.scale="millisecond",this.step=5),a>t&&(this.scale="millisecond",this.step=1)}},o.snap=function(t,e,i){var o=n(t);if("year"==e){var s=o.year()+Math.round(o.month()/12);o.year(Math.round(s/i)*i),o.month(0),o.date(0),o.hours(0),o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("month"==e)o.date()>15?(o.date(1),o.add(1,"month")):o.date(1),o.hours(0),o.minutes(0),o.seconds(0),o.milliseconds(0);else if("day"==e){switch(i){case 5:case 2:o.hours(24*Math.round(o.hours()/24));break;default:o.hours(12*Math.round(o.hours()/12))}o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("weekday"==e){switch(i){case 5:case 2:o.hours(12*Math.round(o.hours()/12));break;default:o.hours(6*Math.round(o.hours()/6))}o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("hour"==e){switch(i){case 4:o.minutes(60*Math.round(o.minutes()/60));break;default:o.minutes(30*Math.round(o.minutes()/30))}o.seconds(0),o.milliseconds(0)}else if("minute"==e){switch(i){case 15:case 10:o.minutes(5*Math.round(o.minutes()/5)),o.seconds(0);break;case 5:o.seconds(60*Math.round(o.seconds()/60));break;default:o.seconds(30*Math.round(o.seconds()/30))}o.milliseconds(0)}else if("second"==e)switch(i){case 15:case 10:o.seconds(5*Math.round(o.seconds()/5)),o.milliseconds(0);break;case 5:o.milliseconds(1e3*Math.round(o.milliseconds()/1e3));break;default:o.milliseconds(500*Math.round(o.milliseconds()/500))}else if("millisecond"==e){var r=i>5?i/2:1;o.milliseconds(Math.round(o.milliseconds()/r)*r)}return o},o.prototype.isMajor=function(){if(1==this.switchedYear)switch(this.switchedYear=!1,this.scale){case"year":case"month":case"weekday":case"day":case"hour":case"minute":case"second":case"millisecond":return!0;default:return!1}else if(1==this.switchedMonth)switch(this.switchedMonth=!1,this.scale){case"weekday":case"day":case"hour":case"minute":case"second":case"millisecond":return!0;default:return!1}else if(1==this.switchedDay)switch(this.switchedDay=!1,this.scale){case"millisecond":case"second":case"minute":case"hour":return!0;default:return!1}var t=this.moment(this.current);switch(this.scale){case"millisecond":return 0==t.milliseconds();case"second":return 0==t.seconds();case"minute":return 0==t.hours()&&0==t.minutes();case"hour":return 0==t.hours();case"weekday":case"day":return 1==t.date();case"month":return 0==t.month();case"year":return!1;default:return!1}},o.prototype.getLabelMinor=function(t){void 0==t&&(t=this.current);var e=this.format.minorLabels[this.scale];return e&&e.length>0?this.moment(t).format(e):""},o.prototype.getLabelMajor=function(t){void 0==t&&(t=this.current);var e=this.format.majorLabels[this.scale];return e&&e.length>0?this.moment(t).format(e):""},o.prototype.getClassName=function(){function t(t){return t/h%2==0?" vis-even":" vis-odd"}function e(t){return t.isSame(new Date,"day")?" vis-today":t.isSame(s().add(1,"day"),"day")?" vis-tomorrow":t.isSame(s().add(-1,"day"),"day")?" vis-yesterday":""}function i(t){return t.isSame(new Date,"week")?" vis-current-week":""}function o(t){return t.isSame(new Date,"month")?" vis-current-month":""}function n(t){return t.isSame(new Date,"year")?" vis-current-year":""}var s=this.moment,r=this.moment(this.current),a=r.locale?r.locale("en"):r.lang("en"),h=this.step;switch(this.scale){case"millisecond":return t(a.milliseconds()).trim();case"second":return t(a.seconds()).trim();case"minute":return t(a.minutes()).trim();case"hour":var d=a.hours();return 4==this.step&&(d=d+"-h"+(d+4)),"vis-h"+d+e(a)+t(a.hours());case"weekday":return"vis-"+a.format("dddd").toLowerCase()+e(a)+i(a)+t(a.date());case"day":var l=a.date(),u=a.format("MMMM").toLowerCase();return"vis-day"+l+" vis-"+u+o(a)+t(l-1);case"month":return"vis-"+a.format("MMMM").toLowerCase()+o(a)+t(a.month());case"year":var c=a.year();return"vis-year"+c+n(a)+t(c);default:return""}},t.exports=o},function(t,e,i){function o(t,e,i){this.groupId=t,this.subgroups={},this.subgroupIndex=0,this.subgroupOrderer=e&&e.subgroupOrder,this.itemSet=i,this.dom={},this.props={label:{width:0,height:0}},this.className=null,this.items={},this.visibleItems=[],this.orderedItems={byStart:[],byEnd:[]},this.checkRangedItems=!1;var o=this;this.itemSet.body.emitter.on("checkRangedItems",function(){o.checkRangedItems=!0}),this._create(),this.setData(e)}var n=i(1),s=i(31);i(32);o.prototype._create=function(){var t=document.createElement("div");this.itemSet.options.groupEditable.order?t.className="vis-label draggable":t.className="vis-label",this.dom.label=t;var e=document.createElement("div");e.className="vis-inner",t.appendChild(e),this.dom.inner=e;var i=document.createElement("div");i.className="vis-group",i["timeline-group"]=this,this.dom.foreground=i,this.dom.background=document.createElement("div"),this.dom.background.className="vis-group",this.dom.axis=document.createElement("div"),this.dom.axis.className="vis-group",this.dom.marker=document.createElement("div"),this.dom.marker.style.visibility="hidden",this.dom.marker.innerHTML="?",this.dom.background.appendChild(this.dom.marker)},o.prototype.setData=function(t){var e;if(e=this.itemSet.options&&this.itemSet.options.groupTemplate?this.itemSet.options.groupTemplate(t):t&&t.content,e instanceof Element){for(this.dom.inner.appendChild(e);this.dom.inner.firstChild;)this.dom.inner.removeChild(this.dom.inner.firstChild);this.dom.inner.appendChild(e)}else void 0!==e&&null!==e?this.dom.inner.innerHTML=e:this.dom.inner.innerHTML=this.groupId||"";this.dom.label.title=t&&t.title||"",this.dom.inner.firstChild?n.removeClassName(this.dom.inner,"vis-hidden"):n.addClassName(this.dom.inner,"vis-hidden");var i=t&&t.className||null;i!=this.className&&(this.className&&(n.removeClassName(this.dom.label,this.className),n.removeClassName(this.dom.foreground,this.className),n.removeClassName(this.dom.background,this.className),n.removeClassName(this.dom.axis,this.className)),n.addClassName(this.dom.label,i),n.addClassName(this.dom.foreground,i),n.addClassName(this.dom.background,i),n.addClassName(this.dom.axis,i),this.className=i),this.style&&(n.removeCssText(this.dom.label,this.style),this.style=null),t&&t.style&&(n.addCssText(this.dom.label,t.style),this.style=t.style)},o.prototype.getLabelWidth=function(){return this.props.label.width},o.prototype.redraw=function(t,e,i){var o=!1,r=this.dom.marker.clientHeight;if(r!=this.lastMarkerHeight&&(this.lastMarkerHeight=r,n.forEach(this.items,function(t){t.dirty=!0,t.displayed&&t.redraw()}),i=!0),this._calculateSubGroupHeights(),"function"==typeof this.itemSet.options.order){if(i){var a=this,h=!1;n.forEach(this.items,function(t){t.displayed||(t.redraw(),a.visibleItems.push(t)),t.repositionX(h)});var d=this.orderedItems.byStart.slice().sort(function(t,e){return a.itemSet.options.order(t.data,e.data)});s.stack(d,e,!0)}this.visibleItems=this._updateVisibleItems(this.orderedItems,this.visibleItems,t)}else this.visibleItems=this._updateVisibleItems(this.orderedItems,this.visibleItems,t),this.itemSet.options.stack?s.stack(this.visibleItems,e,i):s.nostack(this.visibleItems,e,this.subgroups);var l=this._calculateHeight(e),u=this.dom.foreground;this.top=u.offsetTop,this.left=u.offsetLeft,this.width=u.offsetWidth,o=n.updateProperty(this,"height",l)||o,o=n.updateProperty(this.props.label,"width",this.dom.inner.clientWidth)||o,o=n.updateProperty(this.props.label,"height",this.dom.inner.clientHeight)||o,this.dom.background.style.height=l+"px",this.dom.foreground.style.height=l+"px",this.dom.label.style.height=l+"px";for(var c=0,p=this.visibleItems.length;p>c;c++){var f=this.visibleItems[c];f.repositionY(e)}return o},o.prototype._calculateSubGroupHeights=function(){if(Object.keys(this.subgroups).length>0){var t=this;this.resetSubgroups(),n.forEach(this.visibleItems,function(e){void 0!==e.data.subgroup&&(t.subgroups[e.data.subgroup].height=Math.max(t.subgroups[e.data.subgroup].height,e.height),t.subgroups[e.data.subgroup].visible=!0)})}},o.prototype._calculateHeight=function(t){var e,i=this.visibleItems;if(i.length>0){var o=i[0].top,s=i[0].top+i[0].height;if(n.forEach(i,function(t){o=Math.min(o,t.top),s=Math.max(s,t.top+t.height)}),o>t.axis){var r=o-t.axis;s-=r,n.forEach(i,function(t){t.top-=r})}e=s+t.item.vertical/2}else e=0;return e=Math.max(e,this.props.label.height)},o.prototype.show=function(){this.dom.label.parentNode||this.itemSet.dom.labelSet.appendChild(this.dom.label),this.dom.foreground.parentNode||this.itemSet.dom.foreground.appendChild(this.dom.foreground),this.dom.background.parentNode||this.itemSet.dom.background.appendChild(this.dom.background),this.dom.axis.parentNode||this.itemSet.dom.axis.appendChild(this.dom.axis)},o.prototype.hide=function(){var t=this.dom.label;t.parentNode&&t.parentNode.removeChild(t);var e=this.dom.foreground;e.parentNode&&e.parentNode.removeChild(e);var i=this.dom.background;i.parentNode&&i.parentNode.removeChild(i);var o=this.dom.axis;o.parentNode&&o.parentNode.removeChild(o)},o.prototype.add=function(t){if(this.items[t.id]=t,t.setParent(this),void 0!==t.data.subgroup&&(void 0===this.subgroups[t.data.subgroup]&&(this.subgroups[t.data.subgroup]={height:0,visible:!1,index:this.subgroupIndex,items:[]},this.subgroupIndex++),this.subgroups[t.data.subgroup].items.push(t)),this.orderSubgroups(),-1==this.visibleItems.indexOf(t)){var e=this.itemSet.body.range;this._checkIfVisible(t,this.visibleItems,e)}},o.prototype.orderSubgroups=function(){if(void 0!==this.subgroupOrderer){var t=[];if("string"==typeof this.subgroupOrderer){for(var e in this.subgroups)t.push({subgroup:e,sortField:this.subgroups[e].items[0].data[this.subgroupOrderer]});t.sort(function(t,e){return t.sortField-e.sortField})}else if("function"==typeof this.subgroupOrderer){for(var e in this.subgroups)t.push(this.subgroups[e].items[0].data);t.sort(this.subgroupOrderer)}if(t.length>0)for(var i=0;it?-1:l>=t?0:1};if(e.length>0)for(s=0;sl}),1==this.checkRangedItems)for(this.checkRangedItems=!1,s=0;sl})}for(s=0;s=0&&(s=e[r],!n(s));r--)void 0===o[s.id]&&(o[s.id]=!0,i.push(s));for(r=t+1;rn;n++)t[n].top=null;for(n=0,s=t.length;s>n;n++){var r=t[n];if(r.stack&&null===r.top){r.top=i.axis;do{for(var a=null,h=0,d=t.length;d>h;h++){var l=t[h];if(null!==l.top&&l!==r&&l.stack&&e.collision(r,l,i.item)){a=l;break}}null!=a&&(r.top=a.top+a.height+i.item.vertical)}while(a)}}},e.nostack=function(t,e,i){var o,n,s;for(o=0,n=t.length;n>o;o++)if(void 0!==t[o].data.subgroup){s=e.axis;for(var r in i)i.hasOwnProperty(r)&&1==i[r].visible&&i[r].indexe.left&&t.top-o.vertical+ie.top}},function(t,e,i){function o(t,e,i){if(this.props={content:{width:0}},this.overflow=!1,t){if(void 0==t.start)throw new Error('Property "start" missing in item '+t.id);if(void 0==t.end)throw new Error('Property "end" missing in item '+t.id)}n.call(this,t,e,i)}var n=(i(20),i(33));o.prototype=new n(null,null,null),o.prototype.baseClassName="vis-item vis-range",o.prototype.isVisible=function(t){return this.data.startt.start},o.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.frame=document.createElement("div"),t.frame.className="vis-item-overflow",t.box.appendChild(t.frame),t.content=document.createElement("div"),t.content.className="vis-item-content",t.frame.appendChild(t.content),t.box["timeline-item"]=this,this.dirty=!0),!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!t.box.parentNode){var e=this.parent.dom.foreground;if(!e)throw new Error("Cannot redraw item: parent has no foreground container element");e.appendChild(t.box)}if(this.displayed=!0,this.dirty){this._updateContents(this.dom.content),this._updateTitle(this.dom.box),this._updateDataAttributes(this.dom.box),this._updateStyle(this.dom.box);var i=(this.options.editable.updateTime||this.options.editable.updateGroup||this.editable===!0)&&this.editable!==!1,o=(this.data.className?" "+this.data.className:"")+(this.selected?" vis-selected":"")+(i?" vis-editable":" vis-readonly");t.box.className=this.baseClassName+o,this.overflow="hidden"!==window.getComputedStyle(t.frame).overflow,this.dom.content.style.maxWidth="none",this.props.content.width=this.dom.content.offsetWidth,this.height=this.dom.box.offsetHeight,this.dom.content.style.maxWidth="",this.dirty=!1}this._repaintDeleteButton(t.box),this._repaintDragLeft(),this._repaintDragRight()},o.prototype.show=function(){this.displayed||this.redraw()},o.prototype.hide=function(){if(this.displayed){var t=this.dom.box;t.parentNode&&t.parentNode.removeChild(t),this.displayed=!1}},o.prototype.repositionX=function(t){var e,i,o=this.parent.width,n=this.conversion.toScreen(this.data.start),s=this.conversion.toScreen(this.data.end);(void 0===t||t===!0)&&(-o>n&&(n=-o),s>2*o&&(s=2*o));var r=Math.max(s-n,1);switch(this.overflow?(this.left=n,this.width=r+this.props.content.width,i=this.props.content.width):(this.left=n,this.width=r,i=Math.min(s-n,this.props.content.width)),this.dom.box.style.left=this.left+"px",this.dom.box.style.width=r+"px",this.options.align){case"left":this.dom.content.style.left="0";break;case"right":this.dom.content.style.left=Math.max(r-i,0)+"px";break;case"center":this.dom.content.style.left=Math.max((r-i)/2,0)+"px";break;default:e=this.overflow?s>0?Math.max(-n,0):-i:0>n?-n:0,this.dom.content.style.left=e+"px"}},o.prototype.repositionY=function(){var t=this.options.orientation.item,e=this.dom.box;"top"==t?e.style.top=this.top+"px":e.style.top=this.parent.height-this.top-this.height+"px"},o.prototype._repaintDragLeft=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragLeft){var t=document.createElement("div");t.className="vis-drag-left",t.dragLeftItem=this,this.dom.box.appendChild(t),this.dom.dragLeft=t}else!this.selected&&this.dom.dragLeft&&(this.dom.dragLeft.parentNode&&this.dom.dragLeft.parentNode.removeChild(this.dom.dragLeft),this.dom.dragLeft=null)},o.prototype._repaintDragRight=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragRight){var t=document.createElement("div");t.className="vis-drag-right",t.dragRightItem=this,this.dom.box.appendChild(t),this.dom.dragRight=t}else!this.selected&&this.dom.dragRight&&(this.dom.dragRight.parentNode&&this.dom.dragRight.parentNode.removeChild(this.dom.dragRight),this.dom.dragRight=null)},t.exports=o},function(t,e,i){function o(t,e,i){this.id=null,this.parent=null,this.data=t,this.dom=null,this.conversion=e||{},this.options=i||{},this.selected=!1,this.displayed=!1,this.dirty=!0,this.top=null,this.left=null,this.width=null,this.height=null,this.editable=null,this.data&&this.data.hasOwnProperty("editable")&&"boolean"==typeof this.data.editable&&(this.editable=t.editable)}var n=i(20),s=i(1);o.prototype.stack=!0,o.prototype.select=function(){this.selected=!0,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.unselect=function(){this.selected=!1,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.setData=function(t){var e=void 0!=t.group&&this.data.group!=t.group;e&&this.parent.itemSet._moveToGroup(this,t.group),t.hasOwnProperty("editable")&&"boolean"==typeof t.editable&&(this.editable=t.editable),this.data=t,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.setParent=function(t){this.displayed?(this.hide(),this.parent=t,this.parent&&this.show()):this.parent=t},o.prototype.isVisible=function(t){return!1},o.prototype.show=function(){return!1},o.prototype.hide=function(){return!1},o.prototype.redraw=function(){},o.prototype.repositionX=function(){},o.prototype.repositionY=function(){},o.prototype._repaintDeleteButton=function(t){var e=(this.options.editable.remove||this.data.editable===!0)&&this.data.editable!==!1;if(this.selected&&e&&!this.dom.deleteButton){var i=this,o=document.createElement("div");o.className="vis-delete",o.title="Delete this item",new n(o).on("tap",function(t){t.stopPropagation(),i.parent.removeFromDataSet(i)}),t.appendChild(o),this.dom.deleteButton=o}else!this.selected&&this.dom.deleteButton&&(this.dom.deleteButton.parentNode&&this.dom.deleteButton.parentNode.removeChild(this.dom.deleteButton),this.dom.deleteButton=null)},o.prototype._updateContents=function(t){var e;if(this.options.template){var i=this.parent.itemSet.itemsData.get(this.id);e=this.options.template(i)}else e=this.data.content;var o=this._contentToString(this.content)!==this._contentToString(e);if(o){if(e instanceof Element)t.innerHTML="",t.appendChild(e);else if(void 0!=e)t.innerHTML=e;else if("background"!=this.data.type||void 0!==this.data.content)throw new Error('Property "content" missing in item '+this.id);this.content=e}},o.prototype._updateTitle=function(t){null!=this.data.title?t.title=this.data.title||"":t.removeAttribute("vis-title")},o.prototype._updateDataAttributes=function(t){if(this.options.dataAttributes&&this.options.dataAttributes.length>0){var e=[];if(Array.isArray(this.options.dataAttributes))e=this.options.dataAttributes;else{if("all"!=this.options.dataAttributes)return;e=Object.keys(this.data)}for(var i=0;in;n++){var r=this.visibleItems[n];r.repositionY(e)}return o},o.prototype.show=function(){this.dom.background.parentNode||this.itemSet.dom.background.appendChild(this.dom.background)},t.exports=o},function(t,e,i){ -function o(t,e,i){if(this.props={dot:{width:0,height:0},line:{width:0,height:0}},t&&void 0==t.start)throw new Error('Property "start" missing in item '+t);n.call(this,t,e,i)}var n=i(33);i(1);o.prototype=new n(null,null,null),o.prototype.isVisible=function(t){var e=(t.end-t.start)/4;return this.data.start>t.start-e&&this.data.startt.start-e&&this.data.startt.start},o.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.frame=document.createElement("div"),t.frame.className="vis-item-overflow",t.box.appendChild(t.frame),t.content=document.createElement("div"),t.content.className="vis-item-content",t.frame.appendChild(t.content),this.dirty=!0),!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!t.box.parentNode){var e=this.parent.dom.background;if(!e)throw new Error("Cannot redraw item: parent has no background container element");e.appendChild(t.box)}if(this.displayed=!0,this.dirty){this._updateContents(this.dom.content),this._updateTitle(this.dom.content),this._updateDataAttributes(this.dom.content),this._updateStyle(this.dom.box);var i=(this.data.className?" "+this.data.className:"")+(this.selected?" vis-selected":"");t.box.className=this.baseClassName+i,this.overflow="hidden"!==window.getComputedStyle(t.content).overflow,this.props.content.width=this.dom.content.offsetWidth,this.height=0,this.dirty=!1}},o.prototype.show=r.prototype.show,o.prototype.hide=r.prototype.hide,o.prototype.repositionX=r.prototype.repositionX,o.prototype.repositionY=function(t){var e="top"===this.options.orientation.item;this.dom.content.style.top=e?"":"0",this.dom.content.style.bottom=e?"0":"";var i;if(void 0!==this.data.subgroup){var o=this.data.subgroup,n=this.parent.subgroups,r=n[o].index;if(1==e){i=this.parent.subgroups[o].height+t.item.vertical,i+=0==r?t.axis-.5*t.item.vertical:0;var a=this.parent.top;for(var h in n)n.hasOwnProperty(h)&&1==n[h].visible&&n[h].indexr&&(a+=l)}i=this.parent.subgroups[o].height+t.item.vertical,this.dom.box.style.top=this.parent.height-d+a+"px",this.dom.box.style.bottom=""}}else this.parent instanceof s?(i=Math.max(this.parent.height,this.parent.itemSet.body.domProps.center.height,this.parent.itemSet.body.domProps.centerContainer.height),this.dom.box.style.top=e?"0":"",this.dom.box.style.bottom=e?"":"0"):(i=this.parent.height,this.dom.box.style.top=this.parent.top+"px",this.dom.box.style.bottom="");this.dom.box.style.height=i+"px"},t.exports=o},function(t,e,i){function o(t,e){this.dom={foreground:null,lines:[],majorTexts:[],minorTexts:[],redundant:{lines:[],majorTexts:[],minorTexts:[]}},this.props={range:{start:0,end:0,minimumStep:0},lineTop:0},this.defaultOptions={orientation:{axis:"bottom"},showMinorLabels:!0,showMajorLabels:!0,maxMinorChars:7,format:r.FORMAT,moment:h,timeAxis:null},this.options=n.extend({},this.defaultOptions),this.body=t,this._create(),this.setOptions(e)}var n=i(1),s=i(25),r=i(29),a=i(26),h=i(2);o.prototype=new s,o.prototype.setOptions=function(t){t&&(n.selectiveExtend(["showMinorLabels","showMajorLabels","maxMinorChars","hiddenDates","timeAxis","moment"],this.options,t),n.selectiveDeepExtend(["format"],this.options,t),"orientation"in t&&("string"==typeof t.orientation?this.options.orientation.axis=t.orientation:"object"==typeof t.orientation&&"axis"in t.orientation&&(this.options.orientation.axis=t.orientation.axis)),"locale"in t&&("function"==typeof h.locale?h.locale(t.locale):h.lang(t.locale)))},o.prototype._create=function(){this.dom.foreground=document.createElement("div"),this.dom.background=document.createElement("div"),this.dom.foreground.className="vis-time-axis vis-foreground",this.dom.background.className="vis-time-axis vis-background"},o.prototype.destroy=function(){this.dom.foreground.parentNode&&this.dom.foreground.parentNode.removeChild(this.dom.foreground),this.dom.background.parentNode&&this.dom.background.parentNode.removeChild(this.dom.background),this.body=null},o.prototype.redraw=function(){var t=this.props,e=this.dom.foreground,i=this.dom.background,o="top"==this.options.orientation.axis?this.body.dom.top:this.body.dom.bottom,n=e.parentNode!==o;this._calculateCharSize();var s=this.options.showMinorLabels&&"none"!==this.options.orientation.axis,r=this.options.showMajorLabels&&"none"!==this.options.orientation.axis;t.minorLabelHeight=s?t.minorCharHeight:0,t.majorLabelHeight=r?t.majorCharHeight:0,t.height=t.minorLabelHeight+t.majorLabelHeight,t.width=e.offsetWidth,t.minorLineHeight=this.body.domProps.root.height-t.majorLabelHeight-("top"==this.options.orientation.axis?this.body.domProps.bottom.height:this.body.domProps.top.height),t.minorLineWidth=1,t.majorLineHeight=t.minorLineHeight+t.majorLabelHeight,t.majorLineWidth=1;var a=e.nextSibling,h=i.nextSibling;return e.parentNode&&e.parentNode.removeChild(e),i.parentNode&&i.parentNode.removeChild(i),e.style.height=this.props.height+"px",this._repaintLabels(),a?o.insertBefore(e,a):o.appendChild(e),h?this.body.dom.backgroundVertical.insertBefore(i,h):this.body.dom.backgroundVertical.appendChild(i),this._isResized()||n},o.prototype._repaintLabels=function(){var t=this.options.orientation.axis,e=n.convert(this.body.range.start,"Number"),i=n.convert(this.body.range.end,"Number"),o=this.body.util.toTime((this.props.minorCharWidth||10)*this.options.maxMinorChars).valueOf(),s=o-a.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this.body.range,o);s-=this.body.util.toTime(0).valueOf();var h=new r(new Date(e),new Date(i),s,this.body.hiddenDates);h.setMoment(this.options.moment),this.options.format&&h.setFormat(this.options.format),this.options.timeAxis&&h.setScale(this.options.timeAxis),this.step=h;var l=this.dom;l.redundant.lines=l.lines,l.redundant.majorTexts=l.majorTexts,l.redundant.minorTexts=l.minorTexts,l.lines=[],l.majorTexts=[],l.minorTexts=[];var u,c,p,f,m,v,g,y,b,_,w=0,x=void 0,k=0,O=1e3;for(h.start(),c=h.getCurrent(),f=this.body.util.toScreen(c);h.hasNext()&&O>k;){k++,m=h.isMajor(),_=h.getClassName(),b=h.getLabelMinor(),u=c,p=f,h.next(),c=h.getCurrent(),v=h.isMajor(),f=this.body.util.toScreen(c),g=w,w=f-p;var M=w>=.4*g;if(this.options.showMinorLabels&&M){var D=this._repaintMinorText(p,b,t,_);D.style.width=w+"px"}m&&this.options.showMajorLabels?(p>0&&(void 0==x&&(x=p),D=this._repaintMajorText(p,h.getLabelMajor(),t,_)),y=this._repaintMajorLine(p,w,t,_)):M?y=this._repaintMinorLine(p,w,t,_):y&&(y.style.width=parseInt(y.style.width)+w+"px")}if(k!==O||d||(console.warn("Something is wrong with the Timeline scale. Limited drawing of grid lines to "+O+" lines."),d=!0),this.options.showMajorLabels){var C=this.body.util.toTime(0),S=h.getLabelMajor(C),T=S.length*(this.props.majorCharWidth||10)+10;(void 0==x||x>T)&&this._repaintMajorText(0,S,t,_)}n.forEach(this.dom.redundant,function(t){for(;t.length;){var e=t.pop();e&&e.parentNode&&e.parentNode.removeChild(e)}})},o.prototype._repaintMinorText=function(t,e,i,o){var n=this.dom.redundant.minorTexts.shift();if(!n){var s=document.createTextNode("");n=document.createElement("div"),n.appendChild(s),this.dom.foreground.appendChild(n)}return this.dom.minorTexts.push(n),n.childNodes[0].nodeValue=e,n.style.top="top"==i?this.props.majorLabelHeight+"px":"0",n.style.left=t+"px",n.className="vis-text vis-minor "+o,n},o.prototype._repaintMajorText=function(t,e,i,o){var n=this.dom.redundant.majorTexts.shift();if(!n){var s=document.createTextNode(e);n=document.createElement("div"),n.appendChild(s),this.dom.foreground.appendChild(n)}return this.dom.majorTexts.push(n),n.childNodes[0].nodeValue=e,n.className="vis-text vis-major "+o,n.style.top="top"==i?"0":this.props.minorLabelHeight+"px",n.style.left=t+"px",n},o.prototype._repaintMinorLine=function(t,e,i,o){var n=this.dom.redundant.lines.shift();n||(n=document.createElement("div"),this.dom.background.appendChild(n)),this.dom.lines.push(n);var s=this.props;return"top"==i?n.style.top=s.majorLabelHeight+"px":n.style.top=this.body.domProps.top.height+"px",n.style.height=s.minorLineHeight+"px",n.style.left=t-s.minorLineWidth/2+"px",n.style.width=e+"px",n.className="vis-grid vis-vertical vis-minor "+o,n},o.prototype._repaintMajorLine=function(t,e,i,o){var n=this.dom.redundant.lines.shift();n||(n=document.createElement("div"),this.dom.background.appendChild(n)),this.dom.lines.push(n);var s=this.props;return"top"==i?n.style.top="0":n.style.top=this.body.domProps.top.height+"px",n.style.left=t-s.majorLineWidth/2+"px",n.style.height=s.majorLineHeight+"px",n.style.width=e+"px",n.className="vis-grid vis-vertical vis-major "+o,n},o.prototype._calculateCharSize=function(){this.dom.measureCharMinor||(this.dom.measureCharMinor=document.createElement("DIV"),this.dom.measureCharMinor.className="vis-text vis-minor vis-measure",this.dom.measureCharMinor.style.position="absolute",this.dom.measureCharMinor.appendChild(document.createTextNode("0")),this.dom.foreground.appendChild(this.dom.measureCharMinor)),this.props.minorCharHeight=this.dom.measureCharMinor.clientHeight,this.props.minorCharWidth=this.dom.measureCharMinor.clientWidth,this.dom.measureCharMajor||(this.dom.measureCharMajor=document.createElement("DIV"),this.dom.measureCharMajor.className="vis-text vis-major vis-measure",this.dom.measureCharMajor.style.position="absolute",this.dom.measureCharMajor.appendChild(document.createTextNode("0")),this.dom.foreground.appendChild(this.dom.measureCharMajor)),this.props.majorCharHeight=this.dom.measureCharMajor.clientHeight,this.props.majorCharWidth=this.dom.measureCharMajor.clientWidth};var d=!1;t.exports=o},function(t,e,i){function o(t){this.active=!1,this.dom={container:t},this.dom.overlay=document.createElement("div"),this.dom.overlay.className="vis-overlay",this.dom.container.appendChild(this.dom.overlay),this.hammer=a(this.dom.overlay),this.hammer.on("tap",this._onTapOverlay.bind(this));var e=this,i=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];i.forEach(function(t){e.hammer.on(t,function(t){t.stopPropagation()})}),document&&document.body&&(this.onClick=function(i){n(i.target,t)||e.deactivate()},document.body.addEventListener("click",this.onClick)),void 0!==this.keycharm&&this.keycharm.destroy(),this.keycharm=s(),this.escListener=this.deactivate.bind(this)}function n(t,e){for(;t;){if(t===e)return!0;t=t.parentNode}return!1}var s=i(40),r=i(12),a=i(20),h=i(1);r(o.prototype),o.current=null,o.prototype.destroy=function(){this.deactivate(),this.dom.overlay.parentNode.removeChild(this.dom.overlay),this.onClick&&document.body.removeEventListener("click",this.onClick),this.hammer.destroy(),this.hammer=null},o.prototype.activate=function(){o.current&&o.current.deactivate(),o.current=this,this.active=!0,this.dom.overlay.style.display="none",h.addClassName(this.dom.container,"vis-active"),this.emit("change"),this.emit("activate"),this.keycharm.bind("esc",this.escListener)},o.prototype.deactivate=function(){this.active=!1,this.dom.overlay.style.display="",h.removeClassName(this.dom.container,"vis-active"),this.keycharm.unbind("esc",this.escListener),this.emit("change"),this.emit("deactivate")},o.prototype._onTapOverlay=function(t){this.activate(),t.stopPropagation()},t.exports=o},function(t,e,i){var o,n,s;!function(i,r){n=[],o=r,s="function"==typeof o?o.apply(e,n):o,!(void 0!==s&&(t.exports=s))}(this,function(){function t(t){var e,i=t&&t.preventDefault||!1,o=t&&t.container||window,n={},s={keydown:{},keyup:{}},r={};for(e=97;122>=e;e++)r[String.fromCharCode(e)]={code:65+(e-97),shift:!1};for(e=65;90>=e;e++)r[String.fromCharCode(e)]={code:e,shift:!0};for(e=0;9>=e;e++)r[""+e]={code:48+e,shift:!1};for(e=1;12>=e;e++)r["F"+e]={code:111+e,shift:!1};for(e=0;9>=e;e++)r["num"+e]={code:96+e,shift:!1};r["num*"]={code:106,shift:!1},r["num+"]={code:107,shift:!1},r["num-"]={code:109,shift:!1},r["num/"]={code:111,shift:!1},r["num."]={code:110,shift:!1},r.left={code:37,shift:!1},r.up={code:38,shift:!1},r.right={code:39,shift:!1},r.down={code:40,shift:!1},r.space={code:32,shift:!1},r.enter={code:13,shift:!1},r.shift={code:16,shift:void 0},r.esc={code:27,shift:!1},r.backspace={code:8,shift:!1},r.tab={code:9,shift:!1},r.ctrl={code:17,shift:!1},r.alt={code:18,shift:!1},r["delete"]={code:46,shift:!1},r.pageup={code:33,shift:!1},r.pagedown={code:34,shift:!1},r["="]={code:187,shift:!1},r["-"]={code:189,shift:!1},r["]"]={code:221,shift:!1},r["["]={code:219,shift:!1};var a=function(t){d(t,"keydown")},h=function(t){d(t,"keyup")},d=function(t,e){if(void 0!==s[e][t.keyCode]){for(var o=s[e][t.keyCode],n=0;no&&(o=30),o>1e3&&(o=1e3),e.redraw(),e.currentTimeTimer=setTimeout(t,o)}var e=this;t()},o.prototype.stop=function(){void 0!==this.currentTimeTimer&&(clearTimeout(this.currentTimeTimer),delete this.currentTimeTimer)},o.prototype.setCurrentTime=function(t){var e=n.convert(t,"Date").valueOf(),i=(new Date).valueOf();this.offset=e-i,this.redraw()},o.prototype.getCurrentTime=function(){return new Date((new Date).valueOf()+this.offset)},t.exports=o},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i0&&this._makeItem([]),this._makeHeader(n),this._handleObject(this.configureOptions[n],[n])),i++);this.options.showButton===!0&&!function(){var e=document.createElement("div");e.className="vis-configuration vis-config-button",e.innerHTML="generate options",e.onclick=function(){t._printOptions()},e.onmouseover=function(){e.className="vis-configuration vis-config-button hover"},e.onmouseout=function(){e.className="vis-configuration vis-config-button"},t.optionsContainer=document.createElement("div"),t.optionsContainer.className="vis-configuration vis-config-option-container",t.domElements.push(t.optionsContainer),t.domElements.push(e)}(),this._push()}},{key:"_push",value:function(){this.wrapper=document.createElement("div"),this.wrapper.className="vis-configuration-wrapper",this.container.appendChild(this.wrapper);for(var t=0;t1?o-1:0),s=1;o>s;s++)n[s-1]=e[s];return n.forEach(function(t){r.appendChild(t)}),i.domElements.push(r),{v:i.domElements.length}}();if("object"==typeof r)return r.v}return 0}},{key:"_makeHeader",value:function(t){var e=document.createElement("div");e.className="vis-configuration vis-config-header",e.innerHTML=t,this._makeItem([],e)}},{key:"_makeLabel",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],o=document.createElement("div");return o.className="vis-configuration vis-config-label vis-config-s"+e.length,i===!0?o.innerHTML=""+t+":":o.innerHTML=t+":",o}},{key:"_makeDropdown",value:function(t,e,i){var o=document.createElement("select");o.className="vis-configuration vis-config-select";var n=0;void 0!==e&&-1!==t.indexOf(e)&&(n=t.indexOf(e));for(var s=0;se&&n>e*u?(a.min=Math.ceil(e*u),l=a.min,d="range increased"):n>e/u&&(a.min=Math.ceil(e/u),l=a.min,d="range increased"),e*u>s&&1!==s&&(a.max=Math.ceil(e*u),l=a.max,d="range increased"),a.value=e}else a.value=o;var c=document.createElement("input");c.className="vis-configuration vis-config-rangeinput",c.value=a.value;var p=this;a.onchange=function(){c.value=this.value,p._update(Number(this.value),i)},a.oninput=function(){c.value=this.value};var f=this._makeLabel(i[i.length-1],i),m=this._makeItem(i,f,a,c);""!==d&&this.popupHistory[m]!==l&&(this.popupHistory[m]=l,this._setupPopup(d,m))}},{key:"_setupPopup",value:function(t,e){var i=this;if(this.initialized===!0&&this.allowCreation===!0&&this.popupCountervar options = "+JSON.stringify(t,null,2)+""}},{key:"getOptions",value:function(){for(var t={},e=0;es;s++)for(r=0;rp?p+1:p;var f=l/this.r,m=a.RGBToHSV(this.color.r,this.color.g,this.color.b);m.h=p,m.s=f;var v=a.HSVToRGB(m.h,m.s,m.v);v.a=this.color.a,this.color=v,this.initialColorDiv.style.backgroundColor="rgba("+this.initialColor.r+","+this.initialColor.g+","+this.initialColor.b+","+this.initialColor.a+")",this.newColorDiv.style.backgroundColor="rgba("+this.color.r+","+this.color.g+","+this.color.b+","+this.color.a+")"}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;is.distance?console.log('%cUnknown option detected: "'+e+'" in '+t.printLocation(n.path,e,"")+"Perhaps it was misplaced? Matching option found at: "+t.printLocation(s.path,s.closestMatch,""),h):n.distance<=d?console.log('%cUnknown option detected: "'+e+'". Did you mean "'+n.closestMatch+'"?'+t.printLocation(n.path,e),h):console.log('%cUnknown option detected: "'+e+'". Did you mean one of these: '+t.print(Object.keys(i))+t.printLocation(o,e),h),r=!0}},{key:"findInOptions",value:function(e,i,o){var n=arguments.length<=3||void 0===arguments[3]?!1:arguments[3],r=1e9,a="",h=[],d=e.toLowerCase(),l=void 0;for(var u in i){var c=void 0;if(void 0!==i[u].__type__&&n===!0){var p=t.findInOptions(e,i[u],s.copyAndExtendArray(o,u));r>p.distance&&(a=p.closestMatch,h=p.path,r=p.distance,l=p.indexMatch)}else-1!==u.toLowerCase().indexOf(d)&&(l=u),c=t.levenshteinDistance(e,u),r>c&&(a=u,h=s.copyArray(o),r=c)}return{closestMatch:a,path:h,distance:r,indexMatch:l}}},{key:"printLocation",value:function(t,e){for(var i=arguments.length<=2||void 0===arguments[2]?"Problem value found at: \n":arguments[2],o="\n\n"+i+"options = {\n",n=0;ns;s++)o+=" ";o+=t[n]+": {\n"}for(var s=0;sr?r:t,e=null==e?r:r>e?r:e}return{min:null!=t?new Date(t):null,max:null!=e?new Date(e):null}},o.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=e-s.getAbsoluteLeft(this.dom.centerContainer),n=i-s.getAbsoluteTop(this.dom.centerContainer),r=this._toTime(o),a=c.customTimeFromTarget(t),h=s.getTarget(t),d=null;s.hasParent(h,this.timeAxis.dom.foreground)?d="axis":this.timeAxis2&&s.hasParent(h,this.timeAxis2.dom.foreground)?d="axis":s.hasParent(h,this.linegraph.yAxisLeft.dom.frame)?d="data-axis":s.hasParent(h,this.linegraph.yAxisRight.dom.frame)?d="data-axis":s.hasParent(h,this.linegraph.legendLeft.dom.frame)?d="legend":s.hasParent(h,this.linegraph.legendRight.dom.frame)?d="legend":null!=a?d="custom-time":s.hasParent(h,this.currentTime.bar)?d="current-time":s.hasParent(h,this.dom.center)&&(d="background");var l=[],u=this.linegraph.yAxisLeft,p=this.linegraph.yAxisRight;return u.hidden||l.push(u.screenToValue(n)),p.hidden||l.push(p.screenToValue(n)),{event:t,what:d,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:n,time:r,value:l}},o.prototype._createConfigurator=function(){return new f(this,this.dom.container,y)},t.exports=o},function(t,e,i){function o(t,e){this.id=n.randomUUID(),this.body=t,this.defaultOptions={yAxisOrientation:"left",defaultGroup:"default",sort:!0,sampling:!0,stack:!1,graphHeight:"400px",shaded:{enabled:!1,orientation:"bottom"},style:"line",barChart:{width:50,sideBySide:!1,align:"center"},interpolation:{enabled:!0,parametrization:"centripetal",alpha:.5},drawPoints:{enabled:!0,size:6,style:"square"},dataAxis:{},legend:{},groups:{visibility:{}}},this.options=n.extend({},this.defaultOptions),this.dom={},this.props={},this.hammer=null,this.groups={},this.abortedGraphUpdate=!1,this.updateSVGheight=!1,this.updateSVGheightOnResize=!1,this.forceGraphUpdate=!0;var i=this;this.itemsData=null,this.groupsData=null,this.itemListeners={add:function(t,e,o){i._onAdd(e.items)},update:function(t,e,o){i._onUpdate(e.items)},remove:function(t,e,o){i._onRemove(e.items)}},this.groupListeners={add:function(t,e,o){i._onAddGroups(e.items)},update:function(t,e,o){i._onUpdateGroups(e.items)},remove:function(t,e,o){i._onRemoveGroups(e.items)}},this.items={},this.selection=[],this.lastStart=this.body.range.start, -this.touchParams={},this.svgElements={},this.setOptions(e),this.groupsUsingDefaultStyles=[0],this.body.emitter.on("rangechanged",function(){i.lastStart=i.body.range.start,i.svg.style.left=n.option.asSize(-i.props.width),i.forceGraphUpdate=!0,i.redraw.call(i)}),this._create(),this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups}}var n=i(1),s=i(7),r=i(8),a=i(10),h=i(25),d=i(50),l=i(52),u=i(56),c=i(53),p=i(55),f=i(54),m="__ungrouped__";o.prototype=new h,o.prototype._create=function(){var t=document.createElement("div");t.className="vis-line-graph",this.dom.frame=t,this.svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.svg.style.position="relative",this.svg.style.height=(""+this.options.graphHeight).replace("px","")+"px",this.svg.style.display="block",t.appendChild(this.svg),this.options.dataAxis.orientation="left",this.yAxisLeft=new d(this.body,this.options.dataAxis,this.svg,this.options.groups),this.options.dataAxis.orientation="right",this.yAxisRight=new d(this.body,this.options.dataAxis,this.svg,this.options.groups),delete this.options.dataAxis.orientation,this.legendLeft=new u(this.body,this.options.legend,"left",this.options.groups),this.legendRight=new u(this.body,this.options.legend,"right",this.options.groups),this.show()},o.prototype.setOptions=function(t){if(t){var e=["sampling","defaultGroup","stack","height","graphHeight","yAxisOrientation","style","barChart","dataAxis","sort","groups"];void 0===t.graphHeight&&void 0!==t.height?(this.updateSVGheight=!0,this.updateSVGheightOnResize=!0):void 0!==this.body.domProps.centerContainer.height&&void 0!==t.graphHeight&&parseInt((t.graphHeight+"").replace("px",""))i?-1:1});for(var o=new Array(t.length),s=0;s0){var h={};for(this._getRelevantData(a,h,n,r),this._applySampling(a,h),e=0;e0)switch(t.options.style){case"line":l.hasOwnProperty(a[e])||(l[a[e]]=p.calcPath(h[a[e]],t)),p.draw(l[a[e]],t,this.framework);case"point":case"points":("point"==t.options.style||"points"==t.options.style||1==t.options.drawPoints.enabled)&&f.draw(h[a[e]],t,this.framework);break;case"bar":}}}return s.cleanupElements(this.svgElements),!1},o.prototype._stack=function(t,e){var i,o,n,s,r;i=0;for(var a=0;at[a].x){r=e[h],s=0==h?r:e[h-1],i=h;break}}void 0===r&&(s=e[e.length-1],r=e[e.length-1]),o=r.x-s.x,n=r.y-s.y,0==o?t[a].y=t[a].orginalY+r.y:t[a].y=t[a].orginalY+n/o*(t[a].x-s.x)+s.y}},o.prototype._getRelevantData=function(t,e,i,o){var s,r,a,h;if(t.length>0)for(r=0;rt?-1:1},u=Math.max(0,n.binarySearchValue(d,i,"x","before",l)),c=Math.min(d.length,n.binarySearchValue(d,o,"x","after",l)+1);0>=c&&(c=d.length);var p=new Array(c-u);for(a=u;c>a;a++)h=s.itemsData[a],p[a-u]=h;e[t[r]]=p}else e[t[r]]=s.itemsData}},o.prototype._applySampling=function(t,e){var i;if(t.length>0)for(var o=0;o0){var s=1,r=n.length,a=this.body.util.toGlobalScreen(n[n.length-1].x)-this.body.util.toGlobalScreen(n[0].x),h=r/a;s=Math.min(Math.ceil(.2*r),Math.max(1,Math.round(h)));for(var d=new Array(r),l=0;r>l;l+=s){var u=Math.round(l/s);d[u]=n[l]}e[t[o]]=d.splice(0,Math.round(r/s))}}},o.prototype._getYRanges=function(t,e,i){var o,n,s,r,a=[],h=[];if(t.length>0){for(s=0;s0&&(n=this.groups[t[s]],r.stack===!0&&"bar"===r.style?"left"===r.yAxisOrientation?a=a.concat(n.getItems()):h=h.concat(n.getItems()):i[t[s]]=n.getYRange(o,t[s]));c.getStackedYRange(a,i,t,"__barStackLeft","left"),c.getStackedYRange(h,i,t,"__barStackRight","right")}},o.prototype._updateYAxis=function(t,e){var i,o,n=!1,s=!1,r=!1,a=1e9,h=1e9,d=-1e9,l=-1e9;if(t.length>0){for(var u=0;ui?i:a,d=o>d?o:d):(r=!0,h=h>i?i:h,l=o>l?o:l));1==s&&this.yAxisLeft.setRange(a,d),1==r&&this.yAxisRight.setRange(h,l)}n=this._toggleAxisVisiblity(s,this.yAxisLeft)||n,n=this._toggleAxisVisiblity(r,this.yAxisRight)||n,1==r&&1==s?(this.yAxisLeft.drawIcons=!0,this.yAxisRight.drawIcons=!0):(this.yAxisLeft.drawIcons=!1,this.yAxisRight.drawIcons=!1),this.yAxisRight.master=!s,this.yAxisRight.masterAxis=this.yAxisLeft,0==this.yAxisRight.master?(1==r?this.yAxisLeft.lineOffset=this.yAxisRight.width:this.yAxisLeft.lineOffset=0,n=this.yAxisLeft.redraw()||n,n=this.yAxisRight.redraw()||n):n=this.yAxisRight.redraw()||n;for(var p=["__barStackLeft","__barStackRight","__lineStackLeft","__lineStackRight"],u=0;ut?-1:1});for(var a=0;a=0&&t._redrawLabel(o-2,e.val,i,"vis-y-axis vis-major",t.props.majorCharHeight),t.master===!0&&(n?t._redrawLine(o,i,"vis-grid vis-horizontal vis-major",t.options.majorLinesOffset,t.props.majorLineWidth):t._redrawLine(o,i,"vis-grid vis-horizontal vis-minor",t.options.minorLinesOffset,t.props.minorLineWidth))});var d=0;void 0!==this.options[i].title&&void 0!==this.options[i].title.text&&(d=this.props.titleCharHeight);var l=this.options.icons===!0?Math.max(this.options.iconWidth,d)+this.options.labelOffsetX+15:d+this.options.labelOffsetX+15;return this.maxLabelSize>this.width-l&&this.options.visible===!0?(this.width=this.maxLabelSize+l,this.options.width=this.width+"px",s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),this.redraw(),e=!0):this.maxLabelSizethis.minWidth?(this.width=Math.max(this.minWidth,this.maxLabelSize+l),this.options.width=this.width+"px",s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),this.redraw(),e=!0):(s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),e=!1),e},o.prototype.convertValue=function(t){return this.scale.convertValue(t)},o.prototype.screenToValue=function(t){return this.scale.screenToValue(t)},o.prototype._redrawLabel=function(t,e,i,o,n){var r=s.getDOMElement("div",this.DOMelements.labels,this.dom.frame);r.className=o,r.innerHTML=e,"left"===i?(r.style.left="-"+this.options.labelOffsetX+"px",r.style.textAlign="right"):(r.style.right="-"+this.options.labelOffsetX+"px",r.style.textAlign="left"),r.style.top=t-.5*n+this.options.labelOffsetY+"px",e+="";var a=Math.max(this.props.majorCharWidth,this.props.minorCharWidth);this.maxLabelSize.5*(h.magnitudefactor*h.minorSteps[h.minorStepIdx])?e+h.magnitudefactor*h.minorSteps[h.minorStepIdx]:e};i&&(this._start-=2*this.magnitudefactor*this.minorSteps[this.minorStepIdx],this._start=d(this._start)),o&&(this._end+=this.magnitudefactor*this.minorSteps[this.minorStepIdx],this._end=d(this._end)),this.determineScale()}}i.prototype.setCharHeight=function(t){this.majorCharHeight=t},i.prototype.setHeight=function(t){this.containerHeight=t},i.prototype.determineScale=function(){var t=this._end-this._start;this.scale=this.containerHeight/t;var e=this.majorCharHeight/this.scale,i=Math.round(Math.log(t)/Math.LN10);this.minorStepIdx=-1,this.magnitudefactor=Math.pow(10,i);var o=0;0>i&&(o=i);for(var n=!1,s=o;Math.abs(s)<=Math.abs(i);s++){this.magnitudefactor=Math.pow(10,s);for(var r=0;r=e){n=!0,this.minorStepIdx=r;break}}if(n===!0)break}},i.prototype.is_major=function(t){return t%(this.magnitudefactor*this.majorSteps[this.minorStepIdx])===0},i.prototype.getStep=function(){return this.magnitudefactor*this.minorSteps[this.minorStepIdx]},i.prototype.getFirstMajor=function(){var t=this.magnitudefactor*this.majorSteps[this.minorStepIdx];return this.convertValue(this._start+(t-this._start%t)%t)},i.prototype.formatValue=function(t){var e=t.toPrecision(5);return"function"==typeof this.formattingFunction&&(e=this.formattingFunction(t)),"number"==typeof e?""+e:"string"==typeof e?e:t.toPrecision(5)},i.prototype.getLines=function(){for(var t=[],e=this.getStep(),i=(e-this._start%e)%e,o=this._start+i;this._end-o>1e-5;o+=e)o!=this._start&&t.push({major:this.is_major(o),y:this.convertValue(o),val:this.formatValue(o)});return t},i.prototype.followScale=function(t){var e=this.minorStepIdx,i=this._start,o=this._end,n=this,s=function(){n.magnitudefactor*=2},r=function(){n.magnitudefactor/=2};t.minorStepIdx<=1&&this.minorStepIdx<=1||t.minorStepIdx>1&&this.minorStepIdx>1||(t.minorStepIdxo+1e-5)r(),d=!1;else{if(!this.autoScaleStart&&this._start=0)){r(),d=!1;continue}console.warn("Can't adhere to given 'min' range, due to zeroalign")}this.autoScaleStart&&this.autoScaleEnd&&o-i>u?(s(),d=!1):d=!0}}},i.prototype.convertValue=function(t){return this.containerHeight-(t-this._start)*this.scale},i.prototype.screenToValue=function(t){return(this.containerHeight-t)/this.scale+this._start},t.exports=i},function(t,e,i){function o(t,e,i,o){this.id=e;var s=["sampling","style","sort","yAxisOrientation","barChart","drawPoints","shaded","interpolation","zIndex","excludeFromStacking","excludeFromLegend"];this.options=n.selectiveBridgeObject(s,i),this.usingDefaultStyle=void 0===t.className,this.groupsUsingDefaultStyles=o,this.zeroPosition=0,this.update(t),1==this.usingDefaultStyle&&(this.groupsUsingDefaultStyles[0]+=1),this.itemsData=[],this.visible=void 0===t.visible?!0:t.visible}var n=i(1),s=(i(7),i(53)),r=i(55),a=i(54);o.prototype.setItems=function(t){null!=t?(this.itemsData=t,1==this.options.sort&&n.insertSort(this.itemsData,function(t,e){return t.x>e.x?1:-1})):this.itemsData=[]},o.prototype.getItems=function(){return this.itemsData},o.prototype.setZeroPosition=function(t){this.zeroPosition=t},o.prototype.setOptions=function(t){if(void 0!==t){var e=["sampling","style","sort","yAxisOrientation","barChart","zIndex","excludeFromStacking","excludeFromLegend"];n.selectiveDeepExtend(e,this.options,t),"function"==typeof t.drawPoints&&(t.drawPoints={onRender:t.drawPoints}),n.mergeOptions(this.options,t,"interpolation"),n.mergeOptions(this.options,t,"drawPoints"),n.mergeOptions(this.options,t,"shaded"),t.interpolation&&"object"==typeof t.interpolation&&t.interpolation.parametrization&&("uniform"==t.interpolation.parametrization?this.options.interpolation.alpha=0:"chordal"==t.interpolation.parametrization?this.options.interpolation.alpha=1:(this.options.interpolation.parametrization="centripetal",this.options.interpolation.alpha=.5))}},o.prototype.update=function(t){this.group=t,this.content=t.content||"graph",this.className=t.className||this.className||"vis-graph-group"+this.groupsUsingDefaultStyles[0]%10,this.visible=void 0===t.visible?!0:t.visible,this.style=t.style,this.setOptions(t.options)},o.prototype.getLegend=function(t,e,i,o,n){if(void 0==i||null==i){var h=document.createElementNS("http://www.w3.org/2000/svg","svg");i={svg:h,svgElements:{},options:this.options,groups:[this]}}switch((void 0==o||null==o)&&(o=0),(void 0==n||null==n)&&(n=.5*e),this.options.style){case"line":r.drawIcon(this,o,n,t,e,i);break;case"points":case"point":a.drawIcon(this,o,n,t,e,i);break;case"bar":s.drawIcon(this,o,n,t,e,i)}return{icon:i.svg,label:this.content,orientation:this.options.yAxisOrientation}},o.prototype.getYRange=function(t){for(var e=t[0].y,i=t[0].y,o=0;ot[o].y?t[o].y:e,i=i0&&(i=Math.min(i,Math.abs(e[o-1].screen_x-e[o].screen_x))),0===i&&(void 0===t[e[o].screen_x]&&(t[e[o].screen_x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}),t[e[o].screen_x].amount+=1)},o._getSafeDrawData=function(t,e,i){var o,n;return t0?(o=i>t?i:t,n=0,"left"===e.options.barChart.align?n-=.5*t:"right"===e.options.barChart.align&&(n+=.5*t)):(o=e.options.barChart.width,n=0,"left"===e.options.barChart.align?n-=.5*e.options.barChart.width:"right"===e.options.barChart.align&&(n+=.5*e.options.barChart.width)),{width:o,offset:n}},o.getStackedYRange=function(t,e,i,n,s){if(t.length>0){t.sort(function(t,e){return t.screen_x===e.screen_x?t.groupIde[s].screen_y?e[s].screen_y:o,n=nt[r].accumulatedNegative?t[r].accumulatedNegative:o,o=o>t[r].accumulatedPositive?t[r].accumulatedPositive:o,n=n0){var i=[];return i=1==e.options.interpolation.enabled?o._catmullRom(t,e):o._linear(t)}},o.drawIcon=function(t,e,i,o,s,r){var a,h,d=.5*s,l=n.getSVGElement("rect",r.svgElements,r.svg);if(l.setAttributeNS(null,"x",e),l.setAttributeNS(null,"y",i-d),l.setAttributeNS(null,"width",o),l.setAttributeNS(null,"height",2*d),l.setAttributeNS(null,"class","vis-outline"),a=n.getSVGElement("path",r.svgElements,r.svg),a.setAttributeNS(null,"class",t.className),void 0!==t.style&&a.setAttributeNS(null,"style",t.style),a.setAttributeNS(null,"d","M"+e+","+i+" L"+(e+o)+","+i),1==t.options.shaded.enabled&&(h=n.getSVGElement("path",r.svgElements,r.svg),"top"==t.options.shaded.orientation?h.setAttributeNS(null,"d","M"+e+", "+(i-d)+"L"+e+","+i+" L"+(e+o)+","+i+" L"+(e+o)+","+(i-d)):h.setAttributeNS(null,"d","M"+e+","+i+" L"+e+","+(i+d)+" L"+(e+o)+","+(i+d)+"L"+(e+o)+","+i),h.setAttributeNS(null,"class",t.className+" vis-icon-fill"),void 0!==t.options.shaded.style&&""!==t.options.shaded.style&&h.setAttributeNS(null,"style",t.options.shaded.style)),1==t.options.drawPoints.enabled){var u={style:t.options.drawPoints.style,styles:t.options.drawPoints.styles,size:t.options.drawPoints.size,className:t.className};n.drawPoint(e+.5*o,i,u,r.svgElements,r.svg)}},o.drawShading=function(t,e,i,o){if(1==e.options.shaded.enabled){var s=Number(o.svg.style.height.replace("px","")),r=n.getSVGElement("path",o.svgElements,o.svg),a="L";1==e.options.interpolation.enabled&&(a="C");var h,d=0;d="top"==e.options.shaded.orientation?0:"bottom"==e.options.shaded.orientation?s:Math.min(Math.max(0,e.zeroPosition),s),h="group"==e.options.shaded.orientation&&null!=i&&void 0!=i?"M"+t[0][0]+","+t[0][1]+" "+this.serializePath(t,a,!1)+" L"+i[i.length-1][0]+","+i[i.length-1][1]+" "+this.serializePath(i,a,!0)+i[0][0]+","+i[0][1]+" Z":"M"+t[0][0]+","+t[0][1]+" "+this.serializePath(t,a,!1)+" V"+d+" H"+t[0][0]+" Z",r.setAttributeNS(null,"class",e.className+" vis-fill"),void 0!==e.options.shaded.style&&r.setAttributeNS(null,"style",e.options.shaded.style),r.setAttributeNS(null,"d",h)}},o.draw=function(t,e,i){if(null!=t&&void 0!=t){var o=n.getSVGElement("path",i.svgElements,i.svg);o.setAttributeNS(null,"class",e.className),void 0!==e.style&&o.setAttributeNS(null,"style",e.style);var s="L";1==e.options.interpolation.enabled&&(s="C"),o.setAttributeNS(null,"d","M"+t[0][0]+","+t[0][1]+" "+this.serializePath(t,s,!1))}},o.serializePath=function(t,e,i){if(t.length<2)return"";var o=e;if(i)for(var n=t.length-2;n>0;n--)o+=t[n][0]+","+t[n][1]+" ";else for(var n=1;nl;l++)e=0==l?t[0]:t[l-1],i=t[l],o=t[l+1],n=d>l+2?t[l+2]:o,s={screen_x:(-e.screen_x+6*i.screen_x+o.screen_x)*h,screen_y:(-e.screen_y+6*i.screen_y+o.screen_y)*h},r={screen_x:(i.screen_x+6*o.screen_x-n.screen_x)*h,screen_y:(i.screen_y+6*o.screen_y-n.screen_y)*h},a.push([s.screen_x,s.screen_y]),a.push([r.screen_x,r.screen_y]),a.push([o.screen_x,o.screen_y]);return a},o._catmullRom=function(t,e){var i=e.options.interpolation.alpha;if(0==i||void 0===i)return this._catmullRomUniform(t);var o,n,s,r,a,h,d,l,u,c,p,f,m,v,g,y,b,_,w,x=[];x.push([Math.round(t[0].screen_x),Math.round(t[0].screen_y)]);for(var k=t.length,O=0;k-1>O;O++)o=0==O?t[0]:t[O-1],n=t[O],s=t[O+1],r=k>O+2?t[O+2]:s,d=Math.sqrt(Math.pow(o.screen_x-n.screen_x,2)+Math.pow(o.screen_y-n.screen_y,2)),l=Math.sqrt(Math.pow(n.screen_x-s.screen_x,2)+Math.pow(n.screen_y-s.screen_y,2)),u=Math.sqrt(Math.pow(s.screen_x-r.screen_x,2)+Math.pow(s.screen_y-r.screen_y,2)),v=Math.pow(u,i),y=Math.pow(u,2*i),g=Math.pow(l,i),b=Math.pow(l,2*i),w=Math.pow(d,i),_=Math.pow(d,2*i),c=2*_+3*w*g+b,p=2*y+3*v*g+b,f=3*w*(w+g),f>0&&(f=1/f),m=3*v*(v+g),m>0&&(m=1/m),a={screen_x:(-b*o.screen_x+c*n.screen_x+_*s.screen_x)*f,screen_y:(-b*o.screen_y+c*n.screen_y+_*s.screen_y)*f},h={screen_x:(y*n.screen_x+p*s.screen_x-b*r.screen_x)*m,screen_y:(y*n.screen_y+p*s.screen_y-b*r.screen_y)*m},0==a.screen_x&&0==a.screen_y&&(a=n),0==h.screen_x&&0==h.screen_y&&(h=s),x.push([a.screen_x,a.screen_y]),x.push([h.screen_x,h.screen_y]),x.push([s.screen_x,s.screen_y]);return x},o._linear=function(t){for(var e=[],i=0;it?-1:1});for(var i=0;i")}this.dom.textArea.innerHTML=s,this.dom.textArea.style.lineHeight=.75*this.options.iconSize+this.options.iconSpacing+"px"}},o.prototype.drawLegendIcons=function(){if(this.dom.frame.parentNode){var t=Object.keys(this.groups);t.sort(function(t,e){return e>t?-1:1}),s.resetElements(this.svgElements);var e=window.getComputedStyle(this.dom.frame).paddingTop,i=Number(e.replace("px","")),o=i,n=this.options.iconSize,r=.75*this.options.iconSize,a=i+.5*r+3;this.svg.style.width=n+5+i+"px";for(var h=0;h0){var i=this.groupIndex%this.groupsArray.length;this.groupIndex++,e={},e.color=this.groups[this.groupsArray[i]],this.groups[t]=e}else{var i=this.defaultIndex%this.defaultGroups.length;this.defaultIndex++,e={},e.color=this.defaultGroups[i],this.groups[t]=e}return e}},{key:"add",value:function(t,e){return this.groups[t]=e,this.groupsArray.push(t),e}}]),t}();e["default"]=r,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;it.left&&this.shape.topt.top}},{key:"isBoundingBoxOverlappingWith",value:function(t){return this.shape.boundingBox.leftt.left&&this.shape.boundingBox.topt.top}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],o=arguments.length<=3||void 0===arguments[3]?{}:arguments[3],n=["color","font","fixed","shadow"];if(F.selectiveNotDeepExtend(n,t,e,i),F.mergeOptions(t,e,"shadow",i,o),void 0!==e.color&&null!==e.color){var s=F.parseColor(e.color);F.fillIfDefined(t.color,s)}else i===!0&&null===e.color&&(t.color=F.bridgeObject(o.color));void 0!==e.fixed&&null!==e.fixed&&("boolean"==typeof e.fixed?(t.fixed.x=e.fixed,t.fixed.y=e.fixed):(void 0!==e.fixed.x&&"boolean"==typeof e.fixed.x&&(t.fixed.x=e.fixed.x),void 0!==e.fixed.y&&"boolean"==typeof e.fixed.y&&(t.fixed.y=e.fixed.y))),void 0!==e.font&&null!==e.font?a["default"].parseOptions(t.font,e):i===!0&&null===e.font&&(t.font=F.bridgeObject(o.font)),void 0!==e.scaling&&F.mergeOptions(t.scaling,e.scaling,"label",i,o.scaling)}}]),t}();e["default"]=B,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s=function(){function t(t,e){for(var i=0;i=this.nodeOptions.scaling.label.maxVisible&&(r=Number(this.nodeOptions.scaling.label.maxVisible)/this.body.view.scale);var h=this.size.yLine,d=this._getColor(a),l=n(d,2),u=l[0],c=l[1],p=this._setAlignment(t,i,h,s),f=n(p,2);i=f[0],h=f[1],t.font=(e&&this.nodeOptions.labelHighlightBold?"bold ":"")+r+"px "+this.fontOptions.face,t.fillStyle=u,t.textAlign="center",this.fontOptions.strokeWidth>0&&(t.lineWidth=this.fontOptions.strokeWidth,t.strokeStyle=c,t.lineJoin="round");for(var m=0;m0&&t.strokeText(this.lines[m],i,h),t.fillText(this.lines[m],i,h),h+=r}},{key:"_setAlignment",value:function(t,e,i,o){if("horizontal"!==this.fontOptions.align&&this.pointToSelf===!1){e=0,i=0;var n=2;"top"===this.fontOptions.align?(t.textBaseline="alphabetic",i-=2*n):"bottom"===this.fontOptions.align?(t.textBaseline="hanging",i+=2*n):t.textBaseline="middle"}else t.textBaseline=o;return[e,i]}},{key:"_getColor",value:function(t){var e=this.fontOptions.color||"#000000",i=this.fontOptions.strokeColor||"#ffffff";if(t<=this.nodeOptions.scaling.label.drawThreshold){var o=Math.max(0,Math.min(1,1-(this.nodeOptions.scaling.label.drawThreshold-t)));e=r.overrideOpacity(e,o),i=r.overrideOpacity(i,o)}return[e,i]}},{key:"getTextSize",value:function(t){var e=arguments.length<=1||void 0===arguments[1]?!1:arguments[1],i={width:this._processLabel(t,e),height:this.fontOptions.size*this.lineCount,lineCount:this.lineCount};return i}},{key:"calculateLabelSize",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?0:arguments[2],o=arguments.length<=3||void 0===arguments[3]?0:arguments[3],n=arguments.length<=4||void 0===arguments[4]?"middle":arguments[4];this.labelDirty===!0&&(this.size.width=this._processLabel(t,e)),this.size.height=this.fontOptions.size*this.lineCount,this.size.left=i-.5*this.size.width,this.size.top=o-.5*this.size.height,this.size.yLine=o+.5*(1-this.lineCount)*this.fontOptions.size,"hanging"===n&&(this.size.top+=.5*this.fontOptions.size,this.size.top+=4,this.size.yLine+=4),this.labelDirty=!1}},{key:"_processLabel",value:function(t,e){var i=0,o=[""],n=0;if(void 0!==this.nodeOptions.label){o=String(this.nodeOptions.label).split("\n"),n=o.length,t.font=(e&&this.nodeOptions.labelHighlightBold?"bold ":"")+this.fontOptions.size+"px "+this.fontOptions.face,i=t.measureText(o[0]).width;for(var s=1;n>s;s++){var r=t.measureText(o[s]).width;i=r>i?r:i}}return this.lines=o,this.lineCount=n,i}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2];if("string"==typeof e.font){var o=e.font.split(" ");t.size=o[0].replace("px",""),t.face=o[1],t.color=o[2]}else"object"==typeof e.font&&r.fillIfDefined(t,e.font,i);t.size=Number(t.size)}}]),t}();e["default"]=a,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),this.updateBoundingBox(e,i,t,o),this.labelModule.draw(t,e,i,o)}},{key:"updateBoundingBox",value:function(t,e,i,o){this.resize(i,o),this.left=t-.5*this.width,this.top=e-.5*this.height;var n=this.options.shapeProperties.borderRadius;this.boundingBox.left=this.left-n,this.boundingBox.top=this.top-n,this.boundingBox.bottom=this.top+this.height+n,this.boundingBox.right=this.left+this.width+n}},{key:"distanceToBorder",value:function(t,e){this.resize(t);var i=this.options.borderWidth;return Math.min(Math.abs(this.width/2/Math.cos(e)),Math.abs(this.height/2/Math.sin(e)))+i}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;ithis.imageObj.height?(o=this.imageObj.width/this.imageObj.height,e=2*this.options.size*o||this.imageObj.width,i=2*this.options.size||this.imageObj.height):(o=this.imageObj.width&&this.imageObj.height?this.imageObj.height/this.imageObj.width:1,e=2*this.options.size,i=2*this.options.size*o):(e=this.imageObj.width,i=this.imageObj.height),this.width=e,this.height=i,this.radius=.5*this.width}}},{key:"_drawRawCircle",value:function(t,e,i,o,n,s){var r=this.options.borderWidth,a=this.options.borderWidthSelected||2*this.options.borderWidth,h=(o?a:r)/this.body.view.scale;t.lineWidth=Math.min(this.width,h),t.strokeStyle=o?this.options.color.highlight.border:n?this.options.color.hover.border:this.options.color.border,t.fillStyle=o?this.options.color.highlight.background:n?this.options.color.hover.background:this.options.color.background,t.circle(e,i,s),this.enableShadow(t),t.fill(),this.disableShadow(t),t.save(),h>0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore()}},{key:"_drawImageAtPosition",value:function(t){0!=this.imageObj.width&&(t.globalAlpha=1,this.enableShadow(t),t.drawImage(this.imageObj,this.left,this.top,this.width,this.height),this.disableShadow(t))}},{key:"_drawImageLabel",value:function(t,e,i,o){var n,s=0;if(void 0!==this.height){s=.5*this.height;var r=this.labelModule.getTextSize(t);r.lineCount>=1&&(s+=r.height/2)}n=i+s,this.options.label&&(this.labelOffset=s),this.labelModule.draw(t,e,n,o,"hanging")}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),this.updateBoundingBox(e,i,t,o),this.labelModule.draw(t,e,i,o)}},{key:"updateBoundingBox",value:function(t,e,i,o){this.resize(i,o),this.left=t-.5*this.width,this.top=e-.5*this.height,this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width}},{key:"distanceToBorder",value:function(t,e){return this._distanceToBorder(t,e)}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),void 0!==this.options.label){var l=n+.5*this.height+3;this.labelModule.draw(t,o,l,s,"hanging")}this.updateBoundingBox(o,n)}},{key:"updateBoundingBox",value:function(t,e){this.boundingBox.top=e-this.options.size,this.boundingBox.left=t-this.options.size,this.boundingBox.right=t+this.options.size,this.boundingBox.bottom=e+this.options.size,void 0!==this.options.label&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+3))}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),this.updateBoundingBox(e,i,t,o),this.labelModule.draw(t,e,i,o)}},{key:"updateBoundingBox",value:function(t,e,i,o){this.resize(i,o),this.left=t-.5*this.width,this.top=e-.5*this.height,this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width}},{key:"distanceToBorder",value:function(t,e){this.resize(t);var i=.5*this.width,o=.5*this.height,n=Math.sin(e)*i,s=Math.cos(e)*o;return i*o/Math.sqrt(n*n+s*s)}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0){var i=5;this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+i)}}},{key:"_icon",value:function(t,e,i,o){var n=Number(this.options.icon.size);void 0!==this.options.icon.code?(t.font=(o?"bold ":"")+n+"px "+this.options.icon.face,t.fillStyle=this.options.icon.color||"black",t.textAlign="center",t.textBaseline="middle",this.enableShadow(t),t.fillText(this.options.icon.code,e,i),this.disableShadow(t)):console.error("When using the icon shape, you need to define the code in the icon options object. This can be done per node or globally.")}},{key:"distanceToBorder",value:function(t,e){return this._distanceToBorder(t,e)}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),t.closePath()}this._drawImageAtPosition(t),this._drawImageLabel(t,e,i,o||n),this.updateBoundingBox(e,i)}},{key:"updateBoundingBox",value:function(t,e){this.resize(),this.left=t-this.width/2,this.top=e-this.height/2,this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height,void 0!==this.options.label&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset))}},{key:"distanceToBorder",value:function(t,e){return this._distanceToBorder(t,e)}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;ii.shape.height?(r=i.x+.5*i.shape.width,a=i.y-h):(r=i.x+h,a=i.y-.5*i.shape.height),s=this._pointOnCircle(r,a,h,.125),this.labelModule.draw(t,s.x,s.y,n)}}}},{key:"isOverlappingWith",value:function(t){if(this.connected){var e=10,i=this.from.x,o=this.from.y,n=this.to.x,s=this.to.y,r=t.left,a=t.top,h=this.edgeType.getDistanceToEdge(i,o,n,s,r,a);return e>h}return!1}},{key:"_rotateForLabelAlignment",value:function(t){var e=this.from.y-this.to.y,i=this.from.x-this.to.x,o=Math.atan2(e,i);(-1>o&&0>i||o>0&&0>i)&&(o+=Math.PI),t.rotate(o)}},{key:"_pointOnCircle",value:function(t,e,i,o){var n=2*o*Math.PI;return{x:t+i*Math.cos(n),y:e-i*Math.sin(n)}}},{key:"select",value:function(){this.selected=!0}},{key:"unselect",value:function(){this.selected=!1}},{key:"cleanup",value:function(){return this.edgeType.cleanup()}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],o=arguments.length<=3||void 0===arguments[3]?{}:arguments[3],n=["arrowStrikethrough","id","from","hidden","hoverWidth","label","labelHighlightBold","length","line","opacity","physics","scaling","selectionWidth","selfReferenceSize","to","title","value","width"];if(v.selectiveDeepExtend(n,t,e,i),v.mergeOptions(t,e,"smooth",i,o),v.mergeOptions(t,e,"shadow",i,o),void 0!==e.dashes&&null!==e.dashes?t.dashes=e.dashes:i===!0&&null===e.dashes&&(t.dashes=Object.create(o.dashes)),void 0!==e.scaling&&null!==e.scaling?(void 0!==e.scaling.min&&(t.scaling.min=e.scaling.min),void 0!==e.scaling.max&&(t.scaling.max=e.scaling.max),v.mergeOptions(t.scaling,e.scaling,"label",i,o.scaling)):i===!0&&null===e.scaling&&(t.scaling=Object.create(o.scaling)),void 0!==e.arrows&&null!==e.arrows)if("string"==typeof e.arrows){var s=e.arrows.toLowerCase();-1!=s.indexOf("to")&&(t.arrows.to.enabled=!0),-1!=s.indexOf("middle")&&(t.arrows.middle.enabled=!0),-1!=s.indexOf("from")&&(t.arrows.from.enabled=!0)}else{if("object"!=typeof e.arrows)throw new Error("The arrow newOptions can only be an object or a string. Refer to the documentation. You used:"+JSON.stringify(e.arrows));v.mergeOptions(t.arrows,e.arrows,"to",i,o.arrows),v.mergeOptions(t.arrows,e.arrows,"middle",i,o.arrows),v.mergeOptions(t.arrows,e.arrows,"from",i,o.arrows)}else i===!0&&null===e.arrows&&(t.arrows=Object.create(o.arrows));if(void 0!==e.color&&null!==e.color)if(t.color=v.deepExtend({},t.color,!0),v.isString(e.color))t.color.color=e.color,t.color.highlight=e.color,t.color.hover=e.color,t.color.inherit=!1;else{var r=!1;void 0!==e.color.color&&(t.color.color=e.color.color,r=!0),void 0!==e.color.highlight&&(t.color.highlight=e.color.highlight,r=!0),void 0!==e.color.hover&&(t.color.hover=e.color.hover,r=!0),void 0!==e.color.inherit&&(t.color.inherit=e.color.inherit),void 0!==e.color.opacity&&(t.color.opacity=Math.min(1,Math.max(0,e.color.opacity))),void 0===e.color.inherit&&r===!0&&(t.color.inherit=!1)}else i===!0&&null===e.color&&(t.color=v.bridgeObject(o.color));void 0!==e.font&&null!==e.font?a["default"].parseOptions(t.font,e):i===!0&&null===e.font&&(t.font=v.bridgeObject(o.font))}}]),t}();e["default"]=g,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),a=function(){function t(t,e){for(var i=0;iMath.abs(e)||this.options.smooth.forceDirection===!0||"horizontal"===this.options.smooth.forceDirection)&&"vertical"!==this.options.smooth.forceDirection?(o=this.from.y,s=this.to.y,i=this.from.x-r*t,n=this.to.x+r*t):(o=this.from.y-r*e,s=this.to.y+r*e,i=this.from.x,n=this.to.x),[{x:i,y:o},{x:n,y:s}]}},{key:"getViaNode",value:function(){return this._getViaCoordinates()}},{key:"_findBorderPosition",value:function(t,e){return this._findBorderPositionBezier(t,e)}},{key:"_getDistanceToEdge",value:function(t,e,i,o,n,s){var a=arguments.length<=6||void 0===arguments[6]?this._getViaCoordinates():arguments[6],h=r(a,2),d=h[0],l=h[1];return this._getDistanceToBezierEdge(t,e,i,o,n,s,d,l)}},{key:"getPoint",value:function(t){var e=arguments.length<=1||void 0===arguments[1]?this._getViaCoordinates():arguments[1],i=r(e,2),o=i[0],n=i[1],s=t,a=[];a[0]=Math.pow(1-s,3),a[1]=3*s*Math.pow(1-s,2),a[2]=3*Math.pow(s,2)*(1-s),a[3]=Math.pow(s,3);var h=a[0]*this.fromPoint.x+a[1]*o.x+a[2]*n.x+a[3]*this.toPoint.x,d=a[0]*this.fromPoint.y+a[1]*o.y+a[2]*n.y+a[3]*this.toPoint.y;return{x:h,y:d}}}]),e}(l["default"]);e["default"]=u,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;il;l++)u=.1*l,v[0]=Math.pow(1-u,3),v[1]=3*u*Math.pow(1-u,2),v[2]=3*Math.pow(u,2)*(1-u),v[3]=Math.pow(u,3),c=v[0]*t+v[1]*r.x+v[2]*a.x+v[3]*i,p=v[0]*e+v[1]*r.y+v[2]*a.y+v[3]*o,l>0&&(d=this._getDistanceToLine(f,m,c,p,n,s),h=h>d?d:h),f=c,m=p;return h}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i=l&&h>d;){var m=.5*(l+u);if(i=this.getPoint(m,a),o=Math.atan2(p.y-i.y,p.x-i.x),n=p.distanceToBorder(e,o),s=Math.sqrt(Math.pow(i.x-p.x,2)+Math.pow(i.y-p.y,2)),r=n-s,Math.abs(r)r?f===!1?l=m:u=m:f===!1?u=m:l=m,d++}return i.t=m,i}},{key:"_getDistanceToBezierEdge",value:function(t,e,i,o,n,s,r){var a=1e9,h=void 0,d=void 0,l=void 0,u=void 0,c=void 0,p=t,f=e;for(d=1;10>d;d++)l=.1*d,u=Math.pow(1-l,2)*t+2*l*(1-l)*r.x+Math.pow(l,2)*i,c=Math.pow(1-l,2)*e+2*l*(1-l)*r.y+Math.pow(l,2)*o,d>0&&(h=this._getDistanceToLine(p,f,u,c,n,s),a=a>h?h:a),p=u,f=c;return a}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s=function(){function t(t,e){for(var i=0;io.shape.height?(e=o.x+.5*o.shape.width,i=o.y-n):(e=o.x+n,i=o.y-.5*o.shape.height),[e,i,n]}},{key:"_pointOnCircle",value:function(t,e,i,o){var n=2*o*Math.PI;return{x:t+i*Math.cos(n),y:e-i*Math.sin(n)}}},{key:"_findBorderPositionCircle",value:function(t,e,i){for(var o=i.x,n=i.y,s=i.low,r=i.high,a=i.direction,h=10,d=0,l=this.options.selfReferenceSize,u=void 0,c=void 0,p=void 0,f=void 0,m=void 0,v=.05,g=.5*(s+r);r>=s&&h>d&&(g=.5*(s+r),u=this._pointOnCircle(o,n,l,g),c=Math.atan2(t.y-u.y,t.x-u.x),p=t.distanceToBorder(e,c),f=Math.sqrt(Math.pow(u.x-t.x,2)+Math.pow(u.y-t.y,2)),m=p-f,!(Math.abs(m)0?a>0?s=g:r=g:a>0?r=g:s=g,d++;return u.t=g,u}},{key:"getLineWidth",value:function(t,e){return t===!0?Math.max(this.selectionWidth,.3/this.body.view.scale):e===!0?Math.max(this.hoverWidth,.3/this.body.view.scale):Math.max(this.options.width,.3/this.body.view.scale)}},{key:"getColor",value:function(t,e,i){var o=this.options.color;if(o.inherit!==!1){if("both"===o.inherit&&this.from.id!==this.to.id){var n=t.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y),s=void 0,a=void 0;return s=this.from.options.color.highlight.border,a=this.to.options.color.highlight.border,this.from.selected===!1&&this.to.selected===!1?(s=r.overrideOpacity(this.from.options.color.border,this.options.color.opacity),a=r.overrideOpacity(this.to.options.color.border,this.options.color.opacity)):this.from.selected===!0&&this.to.selected===!1?a=this.to.options.color.border:this.from.selected===!1&&this.to.selected===!0&&(s=this.from.options.color.border),n.addColorStop(0,s),n.addColorStop(1,a),n}this.colorDirty===!0&&("to"===o.inherit?(this.color.highlight=this.to.options.color.highlight.border,this.color.hover=this.to.options.color.hover.border,this.color.color=r.overrideOpacity(this.to.options.color.border,o.opacity)):(this.color.highlight=this.from.options.color.highlight.border,this.color.hover=this.from.options.color.hover.border,this.color.color=r.overrideOpacity(this.from.options.color.border,o.opacity)))}else this.colorDirty===!0&&(this.color.highlight=o.highlight,this.color.hover=o.hover,this.color.color=r.overrideOpacity(o.color,o.opacity));return this.colorDirty=!1,e===!0?this.color.highlight:i===!0?this.color.hover:this.color.color}},{key:"_circle",value:function(t,e,i,o){this.enableShadow(t),t.beginPath(),t.arc(e,i,o,0,2*Math.PI,!1),t.stroke(),this.disableShadow(t)}},{key:"getDistanceToEdge",value:function(t,e,i,o,s,r,a){var h=0;if(this.from!=this.to)h=this._getDistanceToEdge(t,e,i,o,s,r,a);else{var d=this._getCircleData(),l=n(d,3),u=l[0],c=l[1],p=l[2],f=u-s,m=c-r;h=Math.abs(Math.sqrt(f*f+m*m)-p)}return this.labelModule.size.lefts&&this.labelModule.size.topr?0:h}},{key:"_getDistanceToLine",value:function(t,e,i,o,n,s){var r=i-t,a=o-e,h=r*r+a*a,d=((n-t)*r+(s-e)*a)/h;d>1?d=1:0>d&&(d=0);var l=t+d*r,u=e+d*a,c=l-n,p=u-s;return Math.sqrt(c*c+p*p)}},{key:"getArrowData",value:function(t,e,i,o,s){var r=void 0,a=void 0,h=void 0,d=void 0,l=void 0,u=void 0,c=this.getLineWidth(o,s);if("from"===e?(h=this.from,d=this.to,l=.1,u=this.options.arrows.from.scaleFactor):"to"===e?(h=this.to,d=this.from,l=-.1,u=this.options.arrows.to.scaleFactor):(h=this.to,d=this.from,u=this.options.arrows.middle.scaleFactor),h!=d)if("middle"!==e)if(this.options.smooth.enabled===!0){a=this.findBorderPosition(h,t,{via:i});var p=this.getPoint(Math.max(0,Math.min(1,a.t+l)),i);r=Math.atan2(a.y-p.y,a.x-p.x)}else r=Math.atan2(h.y-d.y,h.x-d.x),a=this.findBorderPosition(h,t);else r=Math.atan2(h.y-d.y,h.x-d.x),a=this.getPoint(.5,i);else{var f=this._getCircleData(t),m=n(f,3),v=m[0],g=m[1],y=m[2];"from"===e?(a=this.findBorderPosition(this.from,t,{x:v,y:g,low:.25,high:.6,direction:-1}),r=-2*a.t*Math.PI+1.5*Math.PI+.1*Math.PI):"to"===e?(a=this.findBorderPosition(this.from,t,{x:v,y:g,low:.6,high:1,direction:1}),r=-2*a.t*Math.PI+1.5*Math.PI-1.1*Math.PI):(a=this._pointOnCircle(v,g,y,.175),r=3.9269908169872414)}var b=15*u+3*c,_=a.x-.9*b*Math.cos(r),w=a.y-.9*b*Math.sin(r),x={x:_,y:w};return{point:a,core:x,angle:r,length:b}}},{key:"drawArrowHead",value:function(t,e,i,o){t.strokeStyle=this.getColor(t,e,i),t.fillStyle=t.strokeStyle,t.lineWidth=this.getLineWidth(e,i),t.arrow(o.point.x,o.point.y,o.angle,o.length),this.enableShadow(t),t.fill(),this.disableShadow(t)}},{key:"enableShadow",value:function(t){this.options.shadow.enabled===!0&&(t.shadowColor=this.options.shadow.color,t.shadowBlur=this.options.shadow.size,t.shadowOffsetX=this.options.shadow.x,t.shadowOffsetY=this.options.shadow.y)}},{key:"disableShadow",value:function(t){this.options.shadow.enabled===!0&&(t.shadowColor="rgba(0,0,0,0)",t.shadowBlur=0,t.shadowOffsetX=0,t.shadowOffsetY=0)}}]),t}();e["default"]=a,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*s,e=this.from.y-i*s):this.from.x>this.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s)),"discrete"===o&&(t=i*s>n?this.from.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*n,e=this.from.y-i*n):this.from.x>this.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n)),"discrete"===o&&(e=i*n>s?this.from.y:e));else if("straightCross"===o)Math.abs(this.from.x-this.to.x)<=Math.abs(this.from.y-this.to.y)?(t=this.from.x,e=this.from.yMath.abs(this.from.y-this.to.y)&&(t=this.from.x=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*s,e=this.from.y-i*s,t=this.to.xthis.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s,t=this.to.x>t?this.to.x:t):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s,t=this.to.x>t?this.to.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*n,e=this.from.y-i*n,e=this.to.y>e?this.to.y:e):this.from.x>this.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n,e=this.to.y>e?this.to.y:e):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n,e=this.to.y1||this.startedStabilization===!0)&&setTimeout(function(){t.body.emitter.emit("stabilized",{iterations:e}),t.startedStabilization=!1,t.stabilizationIterations=0},0)}},{key:"physicsTick",value:function(){if(this.startedStabilization===!1&&(this.body.emitter.emit("startStabilizing"),this.startedStabilization=!0),this.stabilized===!1){if(this.adaptiveTimestep===!0&&this.adaptiveTimestepEnabled===!0){var t=1.2;this.adaptiveCounter%this.adaptiveInterval===0?(this.timestep=2*this.timestep,this.calculateForces(),this.moveNodes(),this.revert(),this.timestep=.5*this.timestep,this.calculateForces(),this.moveNodes(),this.calculateForces(),this.moveNodes(),this._evaluateStepQuality()===!0?this.timestep=t*this.timestep:this.timestep/ts))return!1;return!0}},{key:"moveNodes",value:function(){for(var t=this.physicsBody.physicsNodeIndices,e=this.options.maxVelocity?this.options.maxVelocity:1e9,i=0,o=0,n=5,s=0;se?s[t].x>0?e:-e:s[t].x,i.x+=s[t].x*o}else n[t].x=0,s[t].x=0;if(i.options.fixed.y===!1){var h=this.modelOptions.damping*s[t].y,d=(n[t].y-h)/i.options.mass;s[t].y+=d*o,s[t].y=Math.abs(s[t].y)>e?s[t].y>0?e:-e:s[t].y,i.y+=s[t].y*o}else n[t].y=0,s[t].y=0;var l=Math.sqrt(Math.pow(s[t].x,2)+Math.pow(s[t].y,2));return l}},{key:"calculateForces",value:function(){this.gravitySolver.solve(),this.nodesSolver.solve(),this.edgesSolver.solve()}},{key:"_freezeNodes",value:function(){var t=this.body.nodes;for(var e in t)t.hasOwnProperty(e)&&t[e].x&&t[e].y&&(this.freezeCache[e]={x:t[e].options.fixed.x,y:t[e].options.fixed.y},t[e].options.fixed.x=!0,t[e].options.fixed.y=!0)}},{key:"_restoreFrozenNodes",value:function(){var t=this.body.nodes;for(var e in t)t.hasOwnProperty(e)&&void 0!==this.freezeCache[e]&&(t[e].options.fixed.x=this.freezeCache[e].x,t[e].options.fixed.y=this.freezeCache[e].y);this.freezeCache={}}},{key:"stabilize",value:function(){var t=this,e=arguments.length<=0||void 0===arguments[0]?this.options.stabilization.iterations:arguments[0];return"number"!=typeof e&&(console.log("The stabilize method needs a numeric amount of iterations. Switching to default: ",this.options.stabilization.iterations),e=this.options.stabilization.iterations),0===this.physicsBody.physicsNodeIndices.length?void(this.ready=!0):(this.adaptiveTimestep=this.options.adaptiveTimestep,this.body.emitter.emit("_resizeNodes"),this.stopSimulation(),this.stabilized=!1,this.body.emitter.emit("_blockRedraw"),this.targetIterations=e,this.options.stabilization.onlyDynamicEdges===!0&&this._freezeNodes(),this.stabilizationIterations=0,void setTimeout(function(){return t._stabilizationBatch()},0))}},{key:"_stabilizationBatch",value:function(){this.startedStabilization===!1&&(this.body.emitter.emit("startStabilizing"),this.startedStabilization=!0);for(var t=0;this.stabilized===!1&&t0){var t=void 0,e=this.body.nodes,i=this.physicsBody.physicsNodeIndices,o=i.length,n=this._formBarnesHutTree(e,i);this.barnesHutTree=n;for(var s=0;o>s;s++)t=e[i[s]],t.options.mass>0&&(this._getForceContribution(n.root.children.NW,t),this._getForceContribution(n.root.children.NE,t),this._getForceContribution(n.root.children.SW,t),this._getForceContribution(n.root.children.SE,t))}}},{key:"_getForceContribution",value:function(t,e){if(t.childrenCount>0){var i=void 0,o=void 0,n=void 0;i=t.centerOfMass.x-e.x,o=t.centerOfMass.y-e.y,n=Math.sqrt(i*i+o*o),n*t.calcSize>this.thetaInversed?this._calculateForces(n,i,o,e,t):4===t.childrenCount?(this._getForceContribution(t.children.NW,e),this._getForceContribution(t.children.NE,e),this._getForceContribution(t.children.SW,e),this._getForceContribution(t.children.SE,e)):t.children.data.id!=e.id&&this._calculateForces(n,i,o,e,t)}}},{key:"_calculateForces",value:function(t,e,i,o,n){0===t&&(t=.1,e=t),this.overlapAvoidanceFactor<1&&(t=Math.max(.1+this.overlapAvoidanceFactor*o.shape.radius,t-o.shape.radius));var s=this.options.gravitationalConstant*n.mass*o.options.mass/Math.pow(t,3),r=e*s,a=i*s;this.physicsBody.forces[o.id].x+=r,this.physicsBody.forces[o.id].y+=a}},{key:"_formBarnesHutTree",value:function(t,e){for(var i=void 0,o=e.length,n=t[e[0]].x,s=t[e[0]].y,r=t[e[0]].x,a=t[e[0]].y,h=1;o>h;h++){var d=t[e[h]].x,l=t[e[h]].y;t[e[h]].options.mass>0&&(n>d&&(n=d),d>r&&(r=d),s>l&&(s=l),l>a&&(a=l))}var u=Math.abs(r-n)-Math.abs(a-s);u>0?(s-=.5*u,a+=.5*u):(n+=.5*u,r-=.5*u);var c=1e-5,p=Math.max(c,Math.abs(r-n)),f=.5*p,m=.5*(n+r),v=.5*(s+a),g={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:m-f,maxX:m+f,minY:v-f,maxY:v+f},size:p,calcSize:1/p,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(g.root);for(var h=0;o>h;h++)i=t[e[h]],i.options.mass>0&&this._placeInTree(g.root,i);return g}},{key:"_updateBranchMass",value:function(t,e){var i=t.mass+e.options.mass,o=1/i;t.centerOfMass.x=t.centerOfMass.x*t.mass+e.x*e.options.mass,t.centerOfMass.x*=o,t.centerOfMass.y=t.centerOfMass.y*t.mass+e.y*e.options.mass,t.centerOfMass.y*=o,t.mass=i;var n=Math.max(Math.max(e.height,e.radius),e.width);t.maxWidth=t.maxWidthe.x?t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NW"):this._placeInRegion(t,e,"SW"):t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NE"):this._placeInRegion(t,e,"SE")}},{key:"_placeInRegion",value:function(t,e,i){switch(t.children[i].childrenCount){case 0:t.children[i].children.data=e,t.children[i].childrenCount=1,this._updateBranchMass(t.children[i],e);break;case 1:t.children[i].children.data.x===e.x&&t.children[i].children.data.y===e.y?(e.x+=this.seededRandom(),e.y+=this.seededRandom()):(this._splitBranch(t.children[i]),this._placeInTree(t.children[i],e));break;case 4:this._placeInTree(t.children[i],e)}}},{key:"_splitBranch",value:function(t){var e=null;1===t.childrenCount&&(e=t.children.data,t.mass=0,t.centerOfMass.x=0,t.centerOfMass.y=0),t.childrenCount=4,t.children.data=null,this._insertRegion(t,"NW"),this._insertRegion(t,"NE"),this._insertRegion(t,"SW"),this._insertRegion(t,"SE"),null!=e&&this._placeInTree(t,e)}},{key:"_insertRegion",value:function(t,e){var i=void 0,o=void 0,n=void 0,s=void 0,r=.5*t.size;switch(e){case"NW":i=t.range.minX,o=t.range.minX+r,n=t.range.minY,s=t.range.minY+r;break;case"NE":i=t.range.minX+r,o=t.range.maxX,n=t.range.minY,s=t.range.minY+r;break;case"SW":i=t.range.minX,o=t.range.minX+r,n=t.range.minY+r,s=t.range.maxY;break;case"SE":i=t.range.minX+r,o=t.range.maxX,n=t.range.minY+r,s=t.range.maxY}t.children[e]={centerOfMass:{x:0,y:0},mass:0,range:{minX:i,maxX:o,minY:n,maxY:s},size:.5*t.size,calcSize:2*t.calcSize,children:{data:null},maxWidth:0,level:t.level+1,childrenCount:0}}},{key:"_debug",value:function(t,e){void 0!==this.barnesHutTree&&(t.lineWidth=1,this._drawBranch(this.barnesHutTree.root,t,e))}},{key:"_drawBranch",value:function(t,e,i){void 0===i&&(i="#FF0000"),4===t.childrenCount&&(this._drawBranch(t.children.NW,e),this._drawBranch(t.children.NE,e),this._drawBranch(t.children.SE,e),this._drawBranch(t.children.SW,e)),e.strokeStyle=i,e.beginPath(),e.moveTo(t.range.minX,t.range.minY),e.lineTo(t.range.maxX,t.range.minY),e.stroke(),e.beginPath(),e.moveTo(t.range.maxX,t.range.minY),e.lineTo(t.range.maxX,t.range.maxY),e.stroke(),e.beginPath(),e.moveTo(t.range.maxX,t.range.maxY),e.lineTo(t.range.minX,t.range.maxY),e.stroke(),e.beginPath(),e.moveTo(t.range.minX,t.range.maxY),e.lineTo(t.range.minX,t.range.minY),e.stroke()}}]),t}();e["default"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;ii&&(s=.5*u>i?1:c*i+p,s/=i,o=t*s,n=e*s,l[r.id].x-=o,l[r.id].y-=n,l[a.id].x+=o,l[a.id].y+=n)}}}]),t}();e["default"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;ii?-Math.pow(f*i,2)+Math.pow(f*p,2):0,0===i?i=.01:s/=i,o=t*s,n=e*s,c[r.id].x-=o,c[r.id].y-=n,c[a.id].x+=o,c[a.id].y+=n}}}]),t}();e["default"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;i0){var s=n.edges.length+1,r=this.options.centralGravity*s*n.options.mass;o[n.id].x=e*r,o[n.id].y=i*r}}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i=t&&i.push(n.id)}for(var o=0;o0&&Object.keys(p).length>0&&m===!0&&o.push({nodes:c,edges:p})}}}for(var u=0;uo?r.x:o,n=r.ys?r.y:s;return{x:.5*(i+o),y:.5*(n+s)}}},{key:"openCluster",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!0:arguments[2];if(void 0===t)throw new Error("No clusterNodeId supplied to openCluster.");if(void 0===this.body.nodes[t])throw new Error("The clusterNodeId supplied to openCluster does not exist.");if(void 0===this.body.nodes[t].containedNodes)return void console.log("The node:"+t+" is not a cluster.");var o=this.body.nodes[t],n=o.containedNodes,s=o.containedEdges;if(void 0!==e&&void 0!==e.releaseFunction&&"function"==typeof e.releaseFunction){var r={},h={x:o.x,y:o.y};for(var d in n)if(n.hasOwnProperty(d)){var u=this.body.nodes[d];r[d]={x:u.x,y:u.y}}var c=e.releaseFunction(h,r);for(var d in n)if(n.hasOwnProperty(d)){var u=this.body.nodes[d];void 0!==c[d]&&(u.x=void 0===c[d].x?o.x:c[d].x,u.y=void 0===c[d].y?o.y:c[d].y)}}else for(var d in n)if(n.hasOwnProperty(d)){var u=this.body.nodes[d];u=n[d],u.options.fixed.x===!1&&(u.x=o.x),u.options.fixed.y===!1&&(u.y=o.y)}for(var d in n)if(n.hasOwnProperty(d)){var u=this.body.nodes[d];u.vx=o.vx,u.vy=o.vy,u.setOptions({hidden:!1,physics:!0}),delete this.clusteredNodes[d]}for(var p=[],f=0;fo;)e.push(this.body.nodes[t].id),t=this.clusteredNodes[t].clusterId,o++;return e.push(this.body.nodes[t].id),e.reverse(),e}},{key:"_getConnectedId",value:function(t,e){return t.toId!=e?t.toId:t.fromId!=e?t.fromId:t.fromId}},{key:"_getHubSize",value:function(){for(var t=0,e=0,i=0,o=0,n=0;no&&(o=s.edges.length),t+=s.edges.length,e+=Math.pow(s.edges.length,2),i+=1}t/=i,e/=i;var r=e-Math.pow(t,2),a=Math.sqrt(r),h=Math.floor(t+2*a);return h>o&&(h=o),h}}]),t}();e["default"]=u,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0)for(var a=0;ae.shape.boundingBox.left&&(s=e.shape.boundingBox.left),re.shape.boundingBox.top&&(o=e.shape.boundingBox.top),n0)for(var a=0;ae.x&&(s=e.x),re.y&&(o=e.y),n0,t.renderTimer=void 0}),this.body.emitter.on("destroy",function(){t.renderRequests=0,t.allowRedraw=!1,t.renderingActive=!1,t.requiresTimeout===!0?clearTimeout(t.renderTimer):cancelAnimationFrame(t.renderTimer),t.body.emitter.off()})}},{key:"setOptions",value:function(t){if(void 0!==t){var e=["hideEdgesOnDrag","hideNodesOnDrag"];s.selectiveDeepExtend(e,this.options,t)}}},{key:"_startRendering",value:function(){this.renderingActive===!0&&void 0===this.renderTimer&&(this.requiresTimeout===!0?this.renderTimer=window.setTimeout(this._renderStep.bind(this),this.simulationInterval):this.renderTimer=window.requestAnimationFrame(this._renderStep.bind(this)))}},{key:"_renderStep",value:function(){this.renderingActive===!0&&(this.renderTimer=void 0,this.requiresTimeout===!0&&this._startRendering(),this._redraw(),this.requiresTimeout===!1&&this._startRendering())}},{key:"redraw",value:function(){this.body.emitter.emit("setSize"),this._redraw()}},{key:"_requestRedraw",value:function(){var t=this;this.redrawRequested!==!0&&this.renderingActive===!1&&this.allowRedraw===!0&&(this.redrawRequested=!0,this.requiresTimeout===!0?window.setTimeout(function(){t._redraw(!1)},0):window.requestAnimationFrame(function(){t._redraw(!1)}))}},{key:"_redraw",value:function(){var t=arguments.length<=0||void 0===arguments[0]?!1:arguments[0];if(this.allowRedraw===!0){this.body.emitter.emit("initRedraw"),this.redrawRequested=!1;var e=this.canvas.frame.canvas.getContext("2d");(0===this.canvas.frame.canvas.width||0===this.canvas.frame.canvas.height)&&this.canvas.setSize(),this.pixelRatio=(window.devicePixelRatio||1)/(e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1),e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var i=this.canvas.frame.canvas.clientWidth,o=this.canvas.frame.canvas.clientHeight;if(e.clearRect(0,0,i,o),0===this.canvas.frame.clientWidth)return;e.save(),e.translate(this.body.view.translation.x,this.body.view.translation.y),e.scale(this.body.view.scale,this.body.view.scale),e.beginPath(),this.body.emitter.emit("beforeDrawing",e),e.closePath(),t===!1&&(this.dragging===!1||this.dragging===!0&&this.options.hideEdgesOnDrag===!1)&&this._drawEdges(e),(this.dragging===!1||this.dragging===!0&&this.options.hideNodesOnDrag===!1)&&this._drawNodes(e,t),e.beginPath(),this.body.emitter.emit("afterDrawing",e),e.closePath(),e.restore(),t===!0&&e.clearRect(0,0,i,o)}}},{key:"_resizeNodes",value:function(){var t=this.canvas.frame.canvas.getContext("2d");void 0===this.pixelRatio&&(this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1)),t.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0),t.save(),t.translate(this.body.view.translation.x,this.body.view.translation.y),t.scale(this.body.view.scale,this.body.view.scale);var e=this.body.nodes,i=void 0;for(var o in e)e.hasOwnProperty(o)&&(i=e[o],i.resize(t),i.updateBoundingBox(t,i.selected));t.restore()}},{key:"_drawNodes",value:function(t){for(var e=arguments.length<=1||void 0===arguments[1]?!1:arguments[1],i=this.body.nodes,o=this.body.nodeIndices,n=void 0,s=[],r=20,a=this.canvas.DOMtoCanvas({x:-r,y:-r}),h=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+r,y:this.canvas.frame.canvas.clientHeight+r}),d={top:a.y,left:a.x,bottom:h.y,right:h.x},l=0;l0){var t=this.frame.canvas.width/this.pixelRatio/this.cameraState.previousWidth,e=this.frame.canvas.height/this.pixelRatio/this.cameraState.previousHeight,i=this.cameraState.scale;1!=t&&1!=e?i=.5*this.cameraState.scale*(t+e):1!=t?i=this.cameraState.scale*t:1!=e&&(i=this.cameraState.scale*e),this.body.view.scale=i;var o=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight}),n={x:o.x-this.cameraState.position.x,y:o.y-this.cameraState.position.y};this.body.view.translation.x+=n.x*this.body.view.scale,this.body.view.translation.y+=n.y*this.body.view.scale}}},{key:"_prepareValue",value:function(t){if("number"==typeof t)return t+"px";if("string"==typeof t){if(-1!==t.indexOf("%")||-1!==t.indexOf("px"))return t;if(-1===t.indexOf("%"))return t+"px"}throw new Error("Could not use the value supplied for width or height:"+t)}},{key:"_create",value:function(){for(;this.body.container.hasChildNodes();)this.body.container.removeChild(this.body.container.firstChild);if(this.frame=document.createElement("div"),this.frame.className="vis-network",this.frame.style.position="relative",this.frame.style.overflow="hidden",this.frame.tabIndex=900,this.frame.canvas=document.createElement("canvas"),this.frame.canvas.style.position="relative",this.frame.appendChild(this.frame.canvas),this.frame.canvas.getContext){var t=this.frame.canvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1),this.frame.canvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{var e=document.createElement("DIV");e.style.color="red",e.style.fontWeight="bold",e.style.padding="10px",e.innerHTML="Error: your browser does not support HTML canvas",this.frame.canvas.appendChild(e)}this.body.container.appendChild(this.frame),this.body.view.scale=1,this.body.view.translation={x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight},this._bindHammer()}},{key:"_bindHammer",value:function(){var t=this;void 0!==this.hammer&&this.hammer.destroy(),this.drag={},this.pinch={},this.hammer=new s(this.frame.canvas),this.hammer.get("pinch").set({enable:!0}),this.hammer.get("pan").set({threshold:5,direction:30}),r.onTouch(this.hammer,function(e){t.body.eventListeners.onTouch(e)}),this.hammer.on("tap",function(e){t.body.eventListeners.onTap(e)}),this.hammer.on("doubletap",function(e){t.body.eventListeners.onDoubleTap(e)}),this.hammer.on("press",function(e){t.body.eventListeners.onHold(e)}),this.hammer.on("panstart",function(e){t.body.eventListeners.onDragStart(e)}),this.hammer.on("panmove",function(e){t.body.eventListeners.onDrag(e)}),this.hammer.on("panend",function(e){t.body.eventListeners.onDragEnd(e)}),this.hammer.on("pinch",function(e){t.body.eventListeners.onPinch(e)}),this.frame.canvas.addEventListener("mousewheel",function(e){t.body.eventListeners.onMouseWheel(e)}),this.frame.canvas.addEventListener("DOMMouseScroll",function(e){t.body.eventListeners.onMouseWheel(e)}),this.frame.canvas.addEventListener("mousemove",function(e){t.body.eventListeners.onMouseMove(e)}),this.frame.canvas.addEventListener("contextmenu",function(e){t.body.eventListeners.onContext(e)}),this.hammerFrame=new s(this.frame),r.onRelease(this.hammerFrame,function(e){t.body.eventListeners.onRelease(e)})}},{key:"setSize",value:function(){var t=arguments.length<=0||void 0===arguments[0]?this.options.width:arguments[0],e=arguments.length<=1||void 0===arguments[1]?this.options.height:arguments[1];t=this._prepareValue(t),e=this._prepareValue(e);var i=!1,o=this.frame.canvas.width,n=this.frame.canvas.height,s=this.frame.canvas.getContext("2d"),r=this.pixelRatio;return this.pixelRatio=(window.devicePixelRatio||1)/(s.webkitBackingStorePixelRatio||s.mozBackingStorePixelRatio||s.msBackingStorePixelRatio||s.oBackingStorePixelRatio||s.backingStorePixelRatio||1),t!=this.options.width||e!=this.options.height||this.frame.style.width!=t||this.frame.style.height!=e?(this._getCameraState(r),this.frame.style.width=t,this.frame.style.height=e,this.frame.canvas.style.width="100%",this.frame.canvas.style.height="100%",this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio),this.options.width=t,this.options.height=e,i=!0):((this.frame.canvas.width!=Math.round(this.frame.canvas.clientWidth*this.pixelRatio)||this.frame.canvas.height!=Math.round(this.frame.canvas.clientHeight*this.pixelRatio))&&this._getCameraState(r),this.frame.canvas.width!=Math.round(this.frame.canvas.clientWidth*this.pixelRatio)&&(this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),i=!0),this.frame.canvas.height!=Math.round(this.frame.canvas.clientHeight*this.pixelRatio)&&(this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio),i=!0)),i===!0&&(this.body.emitter.emit("resize",{width:Math.round(this.frame.canvas.width/this.pixelRatio),height:Math.round(this.frame.canvas.height/this.pixelRatio),oldWidth:Math.round(o/this.pixelRatio),oldHeight:Math.round(n/this.pixelRatio)}),this._setCameraState()),i}},{key:"_XconvertDOMtoCanvas",value:function(t){return(t-this.body.view.translation.x)/this.body.view.scale}},{key:"_XconvertCanvasToDOM",value:function(t){return t*this.body.view.scale+this.body.view.translation.x}},{key:"_YconvertDOMtoCanvas",value:function(t){return(t-this.body.view.translation.y)/this.body.view.scale}},{key:"_YconvertCanvasToDOM",value:function(t){return t*this.body.view.scale+this.body.view.translation.y}},{key:"canvasToDOM",value:function(t){return{x:this._XconvertCanvasToDOM(t.x),y:this._YconvertCanvasToDOM(t.y)}}},{key:"DOMtoCanvas",value:function(t){return{x:this._XconvertDOMtoCanvas(t.x),y:this._YconvertDOMtoCanvas(t.y)}}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i.5*this.body.nodeIndices.length)return void this.fit(t,!1);i=a["default"].getRange(this.body.nodes,t.nodes);var h=this.body.nodeIndices.length;o=12.662/(h+7.4147)+.0964822;var d=Math.min(this.canvas.frame.canvas.clientWidth/600,this.canvas.frame.canvas.clientHeight/600);o*=d}else{this.body.emitter.emit("_resizeNodes"),i=a["default"].getRange(this.body.nodes,t.nodes);var l=1.1*Math.abs(i.maxX-i.minX),u=1.1*Math.abs(i.maxY-i.minY),c=this.canvas.frame.canvas.clientWidth/l,p=this.canvas.frame.canvas.clientHeight/u;o=p>=c?c:p}o>1?o=1:0===o&&(o=1);var f=a["default"].findCenter(i),m={position:f,scale:o,animation:t.animation};this.moveTo(m)}},{key:"focus",value:function(t){var e=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];if(void 0!==this.body.nodes[t]){var i={x:this.body.nodes[t].x,y:this.body.nodes[t].y};e.position=i,e.lockedOnNode=t,this.moveTo(e)}else console.log("Node: "+t+" cannot be found.")}},{key:"moveTo",value:function(t){return void 0===t?void(t={}):(void 0===t.offset&&(t.offset={x:0,y:0}),void 0===t.offset.x&&(t.offset.x=0),void 0===t.offset.y&&(t.offset.y=0),void 0===t.scale&&(t.scale=this.body.view.scale),void 0===t.position&&(t.position=this.getViewPosition()),void 0===t.animation&&(t.animation={duration:0}),t.animation===!1&&(t.animation={duration:0}),t.animation===!0&&(t.animation={}),void 0===t.animation.duration&&(t.animation.duration=1e3),void 0===t.animation.easingFunction&&(t.animation.easingFunction="easeInOutQuad"),void this.animateView(t))}},{key:"animateView",value:function(t){if(void 0!==t){this.animationEasingFunction=t.animation.easingFunction,this.releaseNode(),t.locked===!0&&(this.lockedOnNodeId=t.lockedOnNode,this.lockedOnNodeOffset=t.offset),0!=this.easingTime&&this._transitionRedraw(!0),this.sourceScale=this.body.view.scale,this.sourceTranslation=this.body.view.translation,this.targetScale=t.scale,this.body.view.scale=this.targetScale;var e=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:e.x-t.position.x,y:e.y-t.position.y};this.targetTranslation={x:this.sourceTranslation.x+i.x*this.targetScale+t.offset.x,y:this.sourceTranslation.y+i.y*this.targetScale+t.offset.y},0===t.animation.duration?void 0!=this.lockedOnNodeId?(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)):(this.body.view.scale=this.targetScale,this.body.view.translation=this.targetTranslation,this.body.emitter.emit("_requestRedraw")):(this.animationSpeed=1/(60*t.animation.duration*.001)||1/60,this.animationEasingFunction=t.animation.easingFunction,this.viewFunction=this._transitionRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering"))}}},{key:"_lockedRedraw",value:function(){var t={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y},e=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:e.x-t.x,y:e.y-t.y},o=this.body.view.translation,n={x:o.x+i.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:o.y+i.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=n}},{key:"releaseNode",value:function(){void 0!==this.lockedOnNodeId&&void 0!==this.viewFunction&&(this.body.emitter.off("initRedraw",this.viewFunction),this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0)}},{key:"_transitionRedraw",value:function(){var t=arguments.length<=0||void 0===arguments[0]?!1:arguments[0];this.easingTime+=this.animationSpeed,this.easingTime=t===!0?1:this.easingTime;var e=h.easingFunctions[this.animationEasingFunction](this.easingTime);this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*e,this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*e,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*e},this.easingTime>=1&&(this.body.emitter.off("initRedraw",this.viewFunction),this.easingTime=0,void 0!=this.lockedOnNodeId&&(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)),this.body.emitter.emit("animationFinished"))}},{key:"getScale",value:function(){return this.body.view.scale}},{key:"getViewPosition",value:function(){return this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight})}}]),t}();e["default"]=d,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i50&&(this.drag.pointer=this.getPointer(t.center),this.drag.pinched=!1,this.pinch.scale=this.body.view.scale,this.touchTime=(new Date).valueOf())}},{key:"onTap",value:function(t){var e=this.getPointer(t.center),i=this.selectionHandler.options.multiselect&&(t.changedPointers[0].ctrlKey||t.changedPointers[0].metaKey);this.checkSelectionChanges(e,t,i),this.selectionHandler._generateClickEvent("click",t,e)}},{key:"onDoubleTap",value:function(t){var e=this.getPointer(t.center);this.selectionHandler._generateClickEvent("doubleClick",t,e)}},{key:"onHold",value:function(t){var e=this.getPointer(t.center),i=this.selectionHandler.options.multiselect;this.checkSelectionChanges(e,t,i),this.selectionHandler._generateClickEvent("click",t,e),this.selectionHandler._generateClickEvent("hold",t,e)}},{key:"onRelease",value:function(t){if((new Date).valueOf()-this.touchTime>10){var e=this.getPointer(t.center);this.selectionHandler._generateClickEvent("release",t,e),this.touchTime=(new Date).valueOf()}}},{key:"onContext",value:function(t){var e=this.getPointer({x:t.clientX,y:t.clientY});this.selectionHandler._generateClickEvent("oncontext",t,e)}},{key:"checkSelectionChanges",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],o=this.selectionHandler._getSelectedEdgeCount(),n=this.selectionHandler._getSelectedNodeCount(),s=this.selectionHandler.getSelection(),r=void 0;r=i===!0?this.selectionHandler.selectAdditionalOnPoint(t):this.selectionHandler.selectOnPoint(t);var a=this.selectionHandler._getSelectedEdgeCount(),h=this.selectionHandler._getSelectedNodeCount(),d=this.selectionHandler.getSelection(),l=this._determineIfDifferent(s,d),u=l.nodesChanges,c=l.edgesChanges,p=!1;h-n>0?(this.selectionHandler._generateClickEvent("selectNode",e,t),r=!0,p=!0):0>h-n?(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),r=!0):h===n&&u===!0&&(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),this.selectionHandler._generateClickEvent("selectNode",e,t),p=!0,r=!0),a-o>0&&p===!1?(this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0):0>a-o?(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),r=!0):a===o&&c===!0&&(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0),r===!0&&this.selectionHandler._generateClickEvent("select",e,t)}},{key:"_determineIfDifferent",value:function(t,e){for(var i=!1,o=!1,n=0;nt&&(t=1e-5),t>10&&(t=10);var o=void 0;void 0!==this.drag&&this.drag.dragging===!0&&(o=this.canvas.DOMtoCanvas(this.drag.pointer));var n=this.body.view.translation,s=t/i,r=(1-s)*e.x+n.x*s,a=(1-s)*e.y+n.y*s;if(this.body.view.scale=t,this.body.view.translation={x:r,y:a},void 0!=o){var h=this.canvas.canvasToDOM(o);this.drag.pointer.x=h.x,this.drag.pointer.y=h.y}this.body.emitter.emit("_requestRedraw"),t>i?this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale}):this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale})}}},{key:"onMouseWheel",value:function(t){if(this.options.zoomView===!0){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),0!==e){var i=this.body.view.scale,o=e/10;0>e&&(o/=1-o),i*=1+o;var n=this.getPointer({x:t.clientX,y:t.clientY});this.zoom(i,n)}t.preventDefault()}}},{key:"onMouseMove",value:function(t){var e=this,i=this.getPointer({x:t.clientX,y:t.clientY}),o=!1;if(void 0!==this.popup&&(this.popup.hidden===!1&&this._checkHidePopup(i),this.popup.hidden===!1&&(o=!0,this.popup.setPosition(i.x+3,i.y-5),this.popup.show())),this.options.keyboard.bindToWindow===!1&&this.options.keyboard.enabled===!0&&this.canvas.frame.focus(),o===!1&&(void 0!==this.popupTimer&&(clearInterval(this.popupTimer),this.popupTimer=void 0),this.drag.dragging||(this.popupTimer=setTimeout(function(){return e._checkShowPopup(i)},this.options.tooltipDelay))),this.options.hover===!0){var n=this.selectionHandler.getNodeAt(i);void 0===n&&(n=this.selectionHandler.getEdgeAt(i)),this.selectionHandler.hoverObject(n)}}},{key:"_checkShowPopup",value:function(t){var e=this.canvas._XconvertDOMtoCanvas(t.x),i=this.canvas._YconvertDOMtoCanvas(t.y),o={left:e,top:i,right:e,bottom:i},n=void 0===this.popupObj?void 0:this.popupObj.id,s=!1,r="node";if(void 0===this.popupObj){for(var a=this.body.nodeIndices,h=this.body.nodes,l=void 0,u=[],c=0;c0&&(this.popupObj=h[u[u.length-1]],s=!0)}if(void 0===this.popupObj&&s===!1){for(var p=this.body.edgeIndices,f=this.body.edges,m=void 0,v=[],c=0;c0&&(this.popupObj=f[v[v.length-1]],r="edge")}void 0!==this.popupObj?this.popupObj.id!==n&&(void 0===this.popup&&(this.popup=new d["default"](this.canvas.frame)),this.popup.popupTargetType=r,this.popup.popupTargetId=this.popupObj.id,this.popup.setPosition(t.x+3,t.y-5),this.popup.setText(this.popupObj.getTitle()),this.popup.show(),this.body.emitter.emit("showPopup",this.popupObj.id)):void 0!==this.popup&&(this.popup.hide(),this.body.emitter.emit("hidePopup"))}},{key:"_checkHidePopup",value:function(t){var e=this.selectionHandler._pointerToPositionObject(t),i=!1;if("node"===this.popup.popupTargetType){if(void 0!==this.body.nodes[this.popup.popupTargetId]&&(i=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(e),i===!0)){var o=this.selectionHandler.getNodeAt(t);i=o.id===this.popup.popupTargetId}}else void 0===this.selectionHandler.getNodeAt(t)&&void 0!==this.body.edges[this.popup.popupTargetId]&&(i=this.body.edges[this.popup.popupTargetId].isOverlappingWith(e));i===!1&&(this.popupObj=void 0,this.popup.hide(),this.body.emitter.emit("hidePopup"))}}]),t}();e["default"]=u,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i700&&(this.body.emitter.emit("fit",{duration:700}),this.touchTime=(new Date).valueOf())}},{key:"_stopMovement",value:function(){for(var t in this.boundFunctions)this.boundFunctions.hasOwnProperty(t)&&(this.body.emitter.off("initRedraw",this.boundFunctions[t]),this.body.emitter.emit("_stopRendering"));this.boundFunctions={}}},{key:"_moveUp",value:function(){this.body.view.translation.y+=this.options.keyboard.speed.y}},{key:"_moveDown",value:function(){this.body.view.translation.y-=this.options.keyboard.speed.y}},{key:"_moveLeft",value:function(){this.body.view.translation.x+=this.options.keyboard.speed.x}},{key:"_moveRight",value:function(){this.body.view.translation.x-=this.options.keyboard.speed.x}},{key:"_zoomIn",value:function(){this.body.view.scale*=1+this.options.keyboard.speed.zoom,this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale})}},{key:"_zoomOut",value:function(){this.body.view.scale/=1+this.options.keyboard.speed.zoom,this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale})}},{key:"configureKeyboardBindings",value:function(){var t=this;void 0!==this.keycharm&&this.keycharm.destroy(),this.options.keyboard.enabled===!0&&(this.options.keyboard.bindToWindow===!0?this.keycharm=a({container:window,preventDefault:!0}):this.keycharm=a({container:this.canvas.frame,preventDefault:!0}),this.keycharm.reset(),this.activated===!0&&(this.keycharm.bind("up",function(){t.bindToRedraw("_moveUp")},"keydown"),this.keycharm.bind("down",function(){t.bindToRedraw("_moveDown")},"keydown"),this.keycharm.bind("left",function(){t.bindToRedraw("_moveLeft")},"keydown"),this.keycharm.bind("right",function(){t.bindToRedraw("_moveRight")},"keydown"),this.keycharm.bind("=",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("num+",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("num-",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("-",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("[",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("]",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("pageup",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("pagedown",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("up",function(){t.unbindFromRedraw("_moveUp")},"keyup"),this.keycharm.bind("down",function(){t.unbindFromRedraw("_moveDown")},"keyup"),this.keycharm.bind("left",function(){t.unbindFromRedraw("_moveLeft")},"keyup"),this.keycharm.bind("right",function(){t.unbindFromRedraw("_moveRight")},"keyup"),this.keycharm.bind("=",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("num+",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("num-",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("-",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("[",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("]",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("pageup",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("pagedown",function(){t.unbindFromRedraw("_zoomOut")},"keyup")))}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;io&&(s=o-e-this.padding),sn&&(r=n-i-this.padding),r0?e===!0?this.body.nodes[o[o.length-1]]:o[o.length-1]:void 0}},{key:"_getEdgesOverlappingWith",value:function(t,e){for(var i=this.body.edges,o=0;o0?e===!0?this.body.edges[o[o.length-1]]:o[o.length-1]:void 0}},{key:"_addToSelection",value:function(t){t instanceof s?this.selectionObj.nodes[t.id]=t:this.selectionObj.edges[t.id]=t}},{key:"_addToHover",value:function(t){t instanceof s?this.hoverObj.nodes[t.id]=t:this.hoverObj.edges[t.id]=t}},{key:"_removeFromSelection",value:function(t){t instanceof s?(delete this.selectionObj.nodes[t.id],this._unselectConnectedEdges(t)):delete this.selectionObj.edges[t.id]}},{key:"unselectAll",value:function(){for(var t in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(t)&&this.selectionObj.nodes[t].unselect();for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&this.selectionObj.edges[e].unselect();this.selectionObj={nodes:{},edges:{}}}},{key:"_getSelectedNodeCount",value:function(){var t=0;for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&(t+=1);return t}},{key:"_getSelectedNode",value:function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t))return this.selectionObj.nodes[t]}},{key:"_getSelectedEdge",value:function(){for(var t in this.selectionObj.edges)if(this.selectionObj.edges.hasOwnProperty(t))return this.selectionObj.edges[t]}},{key:"_getSelectedEdgeCount",value:function(){var t=0;for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&(t+=1);return t}},{key:"_getSelectedObjectCount",value:function(){var t=0;for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&(t+=1);for(var i in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(i)&&(t+=1);return t}},{key:"_selectionIsEmpty",value:function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t))return!1;for(var e in this.selectionObj.edges)if(this.selectionObj.edges.hasOwnProperty(e))return!1;return!0}},{key:"_clusterInSelection",value:function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t)&&this.selectionObj.nodes[t].clusterSize>1)return!0;return!1}},{key:"_selectConnectedEdges",value:function(t){for(var e=0;e0&&(this.options.hierarchical.levelSeparation*=-1):this.options.hierarchical.levelSeparation<0&&(this.options.hierarchical.levelSeparation*=-1),this.body.emitter.emit("_resetHierarchicalLayout"),this.adaptAllOptionsForHierarchicalLayout(e);if(i===!0)return this.body.emitter.emit("refresh"),d.deepExtend(e,this.optionsBackup)}return e}},{key:"adaptAllOptionsForHierarchicalLayout",value:function(t){if(this.options.hierarchical.enabled===!0){void 0===t.physics||t.physics===!0?(t.physics={enabled:void 0===this.optionsBackup.physics.enabled?!0:this.optionsBackup.physics.enabled,solver:"hierarchicalRepulsion"},this.optionsBackup.physics.enabled=void 0===this.optionsBackup.physics.enabled?!0:this.optionsBackup.physics.enabled,this.optionsBackup.physics.solver=this.optionsBackup.physics.solver||"barnesHut"):"object"==typeof t.physics?(this.optionsBackup.physics.enabled=void 0===t.physics.enabled?!0:t.physics.enabled,this.optionsBackup.physics.solver=t.physics.solver||"barnesHut",t.physics.solver="hierarchicalRepulsion"):t.physics!==!1&&(this.optionsBackup.physics.solver="barnesHut",t.physics={solver:"hierarchicalRepulsion"});var e="horizontal";("RL"===this.options.hierarchical.direction||"LR"===this.options.hierarchical.direction)&&(e="vertical"),void 0===t.edges?(this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},t.edges={smooth:!1}):void 0===t.edges.smooth?(this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},t.edges.smooth=!1):"boolean"==typeof t.edges.smooth?(this.optionsBackup.edges={smooth:t.edges.smooth},t.edges.smooth={enabled:t.edges.smooth,type:e}):(void 0!==t.edges.smooth.type&&"dynamic"!==t.edges.smooth.type&&(e=t.edges.smooth.type),this.optionsBackup.edges={smooth:void 0===t.edges.smooth.enabled?!0:t.edges.smooth.enabled,type:void 0===t.edges.smooth.type?"dynamic":t.edges.smooth.type,roundness:void 0===t.edges.smooth.roundness?.5:t.edges.smooth.roundness,forceDirection:void 0===t.edges.smooth.forceDirection?!1:t.edges.smooth.forceDirection},t.edges.smooth={enabled:void 0===t.edges.smooth.enabled?!0:t.edges.smooth.enabled,type:e,roundness:void 0===t.edges.smooth.roundness?.5:t.edges.smooth.roundness,forceDirection:void 0===t.edges.smooth.forceDirection?!1:t.edges.smooth.forceDirection}),this.body.emitter.emit("_forceDisableDynamicCurves",e)}return t}},{key:"seededRandom",value:function(){var t=1e4*Math.sin(this.randomSeed++);return t-Math.floor(t)}},{key:"positionInitially",value:function(t){if(this.options.hierarchical.enabled!==!0){this.randomSeed=this.initialRandomSeed;for(var e=0;es){for(var r=this.body.nodeIndices.length;this.body.nodeIndices.length>s;){n+=1;var a=this.body.nodeIndices.length;n%3===0?this.body.modules.clustering.clusterBridges():this.body.modules.clustering.clusterOutliers();var h=this.body.nodeIndices.length;if(a==h&&n%3!==0||n>o)return this._declusterAll(),this.body.emitter.emit("_layoutFailed"),void console.info("This network could not be positioned by this version of the improved layout algorithm. Please disable improvedLayout for better performance.")}this.body.modules.kamadaKawai.setOptions({springLength:Math.max(150,2*r)})}this.body.modules.kamadaKawai.solve(this.body.nodeIndices,this.body.edgeIndices,!0),this._shiftToCenter();for(var d=70,e=0;e0){var t=void 0,e=void 0,i=!1,o=!0,n=!1;this.hierarchicalLevels={},this.lastNodeOnLevel={},this.hierarchicalParents={},this.hierarchicalChildren={},this.hierarchicalTrees={},this.treeIndex=-1,this.distributionOrdering={},this.distributionIndex={},this.distributionOrderingPresence={};for(e in this.body.nodes)this.body.nodes.hasOwnProperty(e)&&(t=this.body.nodes[e],void 0===t.options.x&&void 0===t.options.y&&(o=!1),void 0!==t.options.level?(i=!0,this.hierarchicalLevels[e]=t.options.level):n=!0);if(n===!0&&i===!0)throw new Error("To use the hierarchical layout, nodes require either no predefined levels or levels have to be defined for all nodes.");n===!0&&("hubsize"===this.options.hierarchical.sortMethod?this._determineLevelsByHubsize():"directed"===this.options.hierarchical.sortMethod?this._determineLevelsDirected():"custom"===this.options.hierarchical.sortMethod&&this._determineLevelsCustomCallback());for(var s in this.body.nodes)this.body.nodes.hasOwnProperty(s)&&void 0===this.hierarchicalLevels[s]&&(this.hierarchicalLevels[s]=0);var r=this._getDistribution();this._generateMap(),this._placeNodesByHierarchy(r),this._condenseHierarchy(),this._shiftToCenter()}}},{key:"_condenseHierarchy",value:function(){var t=this,e=!1,i={},o=function(){for(var e=a(),i=0;i0)for(var n=0;n=l&&(r=Math.min(u,r),a=Math.max(u,a))}return[r,a,o,n]},l=function _(e){var i=t.hierarchicalLevels[e];if(t.hierarchicalParents[e]){var o=t.hierarchicalParents[e].children;if(o.length>0)for(var n=0;n1)for(var a=0;at.options.hierarchical.nodeSpacing){var c={};c[i.id]=!0;var p={};p[o.id]=!0,h(i,c),h(o,p);var f=u(i,o),m=d(c,f),v=s(m,4),g=(v[0],v[1]),y=(v[2],v[3],d(p,f)),b=s(y,4),_=b[0],w=(b[1],b[2]),x=(b[3],Math.abs(g-_));if(x>t.options.hierarchical.nodeSpacing){var k=g-_+t.options.hierarchical.nodeSpacing;k<-w+t.options.hierarchical.nodeSpacing&&(k=-w+t.options.hierarchical.nodeSpacing),0>k&&(t._shiftBlock(o.id,k),e=!0,n===!0&&t._centerParent(o))}}},m=function(o,n){for(var r=n.id,a=n.edges,l=t.hierarchicalLevels[n.id],u=t.options.hierarchical.levelSeparation*t.options.hierarchical.levelSeparation,c={},p=[],f=0;fr;r++){var a=g(o,i),h=y(o,i),d=40,l=Math.max(-d,Math.min(d,Math.round(a/h)));if(o-=l,void 0!==s[o])break;s[o]=r}return o},_=function(o){var r=t._getPositionForHierarchy(n);if(void 0===i[n.id]){var a={};a[n.id]=!0,h(n,a),i[n.id]=a}var l=d(i[n.id]),u=s(l,4),c=(u[0],u[1],u[2]),p=u[3],f=o-r,m=0;f>0?m=Math.min(f,p-t.options.hierarchical.nodeSpacing):0>f&&(m=-Math.min(-f,c-t.options.hierarchical.nodeSpacing)),0!=m&&(t._shiftBlock(n.id,m),e=!0)},w=function(i){var o=t._getPositionForHierarchy(n),r=t._getSpaceAroundNode(n),a=s(r,2),h=a[0],d=a[1],l=i-o,u=o;l>0?u=Math.min(o+(d-t.options.hierarchical.nodeSpacing),i):0>l&&(u=Math.max(o-(h-t.options.hierarchical.nodeSpacing),i)),u!==o&&(t._setPositionForHierarchy(n,u,void 0,!0),e=!0)},x=b(o,p);_(x),x=b(o,a),w(x)},v=function(i){var o=Object.keys(t.distributionOrdering);o=o.reverse();for(var n=0;i>n;n++){e=!1;for(var s=0;sn&&(e=!1,p(f,o,!0),e===!0);n++);},y=function(){for(var e in t.body.nodes)t.body.nodes.hasOwnProperty(e)&&t._centerParent(t.body.nodes[e])};this.options.hierarchical.blockShifting===!0&&(g(5),y()),this.options.hierarchical.edgeMinimization===!0&&v(20),o()}},{key:"_getSpaceAroundNode",value:function(t,e){var i=!0;void 0===e&&(i=!1);var o=this.hierarchicalLevels[t.id];if(void 0!==o){var n=this.distributionIndex[t.id],s=this._getPositionForHierarchy(t),r=1e9,a=1e9;if(0!==n){var h=this.distributionOrdering[o][n-1];if(i===!0&&void 0===e[h.id]||i===!1){var d=this._getPositionForHierarchy(h);r=s-d}}if(n!=this.distributionOrdering[o].length-1){var l=this.distributionOrdering[o][n+1];if(i===!0&&void 0===e[l.id]||i===!1){var u=this._getPositionForHierarchy(l);a=Math.min(a,u-s)}}return[r,a]}return[0,0]}},{key:"_centerParent",value:function(t){if(this.hierarchicalChildren[t.id])for(var e=this.hierarchicalChildren[t.id].parents,i=0;i0)for(var d=0;dg&&Math.abs(g)0&&Math.abs(g)0&&(e=this._getHubSize(),0!==e);)for(var o in this.body.nodes)if(this.body.nodes.hasOwnProperty(o)){var n=this.body.nodes[o];n.edges.length===e&&this._crawlNetwork(i,o)}}},{key:"_determineLevelsCustomCallback",value:function(){var t=this,e=1e5,i=function(t,e,i){},o=function(o,n,s){var r=t.hierarchicalLevels[o.id];void 0===r&&(t.hierarchicalLevels[o.id]=e);var a=i(h["default"].cloneOptions(o,"node"),h["default"].cloneOptions(n,"node"),h["default"].cloneOptions(s,"edge"));t.hierarchicalLevels[n.id]=t.hierarchicalLevels[o.id]+a};this._crawlNetwork(o),this._setMinLevelToZero()}},{key:"_determineLevelsDirected",value:function(){var t=this,e=1e4,i=function(i,o,n){var s=t.hierarchicalLevels[i.id];void 0===s&&(t.hierarchicalLevels[i.id]=e),n.toId==o.id?t.hierarchicalLevels[o.id]=t.hierarchicalLevels[i.id]+1:t.hierarchicalLevels[o.id]=t.hierarchicalLevels[i.id]-1};this._crawlNetwork(i),this._setMinLevelToZero()}},{key:"_setMinLevelToZero",value:function(){var t=1e9;for(var e in this.body.nodes)this.body.nodes.hasOwnProperty(e)&&void 0!==this.hierarchicalLevels[e]&&(t=Math.min(this.hierarchicalLevels[e],t));for(var e in this.body.nodes)this.body.nodes.hasOwnProperty(e)&&void 0!==this.hierarchicalLevels[e]&&(this.hierarchicalLevels[e]-=t)}},{key:"_generateMap",value:function(){var t=this,e=function(e,i){if(t.hierarchicalLevels[i.id]>t.hierarchicalLevels[e.id]){var o=e.id,n=i.id;void 0===t.hierarchicalParents[o]&&(t.hierarchicalParents[o]={children:[],amount:0}),t.hierarchicalParents[o].children.push(n),void 0===t.hierarchicalChildren[n]&&(t.hierarchicalChildren[n]={parents:[],amount:0}),t.hierarchicalChildren[n].parents.push(o)}};this._crawlNetwork(e)}},{key:"_crawlNetwork",value:function(t,e){void 0===t&&(t=function(){});var i={},o=function r(e){if(void 0===i[e.id]){i[e.id]=!0;for(var o=void 0,n=0;ne&&void 0===this.positionedNodes[n.id]))return;var r=void 0;if(r=0===o?this._getPositionForHierarchy(this.body.nodes[t]):this._getPositionForHierarchy(i[o-1])+this.options.hierarchical.nodeSpacing,this._setPositionForHierarchy(n,r,s),void 0!==this.lastNodeOnLevel[s]){var a=this._getPositionForHierarchy(this.body.nodes[this.lastNodeOnLevel[s]]);if(r-a1&&("UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction?t.sort(function(t,e){return t.x-e.x}):t.sort(function(t,e){return t.y-e.y}))}}]),t}();e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0&&this.options.deleteNode!==!1?(n===!0&&this._createSeperator(4),this._createDeleteButton(o)):0===t&&this.options.deleteEdge!==!1&&(n===!0&&this._createSeperator(4),this._createDeleteButton(o))),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this)),this._temporaryBindEvent("select",this.showManipulatorToolbar.bind(this))}this.body.emitter.emit("_redraw")}},{key:"addNodeMode",value:function(){if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addNode",this.guiEnabled===!0){var t=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(t),this._createSeperator(),this._createDescription(t.addDescription||this.options.locales.en.addDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindEvent("click",this._performAddNode.bind(this))}},{key:"editNode",value:function(){var t=this;this.editMode!==!0&&this.enableEditMode(),this._clean();var e=this.selectionHandler._getSelectedNode();if(void 0!==e){if(this.inMode="editNode","function"!=typeof this.options.editNode)throw new Error("No function has been configured to handle the editing of nodes.");if(e.isCluster!==!0){var i=s.deepExtend({},e.options,!0);if(i.x=e.x,i.y=e.y,2!==this.options.editNode.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editNode(i,function(e){null!==e&&void 0!==e&&"editNode"===t.inMode&&t.body.data.nodes.getDataSet().update(e),t.showManipulatorToolbar()})}else alert(this.options.locales[this.options.locale].editClusterError||this.options.locales.en.editClusterError)}else this.showManipulatorToolbar()}},{key:"addEdgeMode",value:function(){if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addEdge",this.guiEnabled===!0){var t=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(t),this._createSeperator(),this._createDescription(t.edgeDescription||this.options.locales.en.edgeDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindUI("onTouch",this._handleConnect.bind(this)),this._temporaryBindUI("onDragEnd",this._finishConnect.bind(this)),this._temporaryBindUI("onDrag",this._dragControlNode.bind(this)),this._temporaryBindUI("onRelease",this._finishConnect.bind(this)),this._temporaryBindUI("onDragStart",function(){}),this._temporaryBindUI("onHold",function(){})}},{key:"editEdgeMode",value:function(){var t=this;if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="editEdge",this.guiEnabled===!0){var e=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(e),this._createSeperator(),this._createDescription(e.editEdgeDescription||this.options.locales.en.editEdgeDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this.edgeBeingEditedId=this.selectionHandler.getSelectedEdges()[0],void 0!==this.edgeBeingEditedId?!function(){var e=t.body.edges[t.edgeBeingEditedId],i=t._getNewTargetNode(e.from.x,e.from.y),o=t._getNewTargetNode(e.to.x,e.to.y);t.temporaryIds.nodes.push(i.id),t.temporaryIds.nodes.push(o.id),t.body.nodes[i.id]=i,t.body.nodeIndices.push(i.id),t.body.nodes[o.id]=o,t.body.nodeIndices.push(o.id),t._temporaryBindUI("onTouch",t._controlNodeTouch.bind(t)),t._temporaryBindUI("onTap",function(){}),t._temporaryBindUI("onHold",function(){}),t._temporaryBindUI("onDragStart",t._controlNodeDragStart.bind(t)),t._temporaryBindUI("onDrag",t._controlNodeDrag.bind(t)),t._temporaryBindUI("onDragEnd",t._controlNodeDragEnd.bind(t)),t._temporaryBindUI("onMouseMove",function(){}),t._temporaryBindEvent("beforeDrawing",function(t){var n=e.edgeType.findBorderPositions(t);i.selected===!1&&(i.x=n.from.x,i.y=n.from.y),o.selected===!1&&(o.x=n.to.x,o.y=n.to.y)}),t.body.emitter.emit("_redraw")}():this.showManipulatorToolbar()}},{key:"deleteSelected",value:function(){var t=this;this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="delete";var e=this.selectionHandler.getSelectedNodes(),i=this.selectionHandler.getSelectedEdges(),o=void 0;if(e.length>0){for(var n=0;n0&&"function"==typeof this.options.deleteEdge&&(o=this.options.deleteEdge);if("function"==typeof o){var s={nodes:e,edges:i};if(2!==o.length)throw new Error("The function for delete does not support two arguments (data, callback)");o(s,function(e){null!==e&&void 0!==e&&"delete"===t.inMode?(t.body.data.edges.getDataSet().remove(e.edges),t.body.data.nodes.getDataSet().remove(e.nodes),t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar()):(t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().remove(i),this.body.data.nodes.getDataSet().remove(e),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()}},{key:"_setup",value:function(){this.options.enabled===!0?(this.guiEnabled=!0,this._createWrappers(),this.editMode===!1?this._createEditButton():this.showManipulatorToolbar()):(this._removeManipulationDOM(),this.guiEnabled=!1)}},{key:"_createWrappers",value:function(){void 0===this.manipulationDiv&&(this.manipulationDiv=document.createElement("div"),this.manipulationDiv.className="vis-manipulation",this.editMode===!0?this.manipulationDiv.style.display="block":this.manipulationDiv.style.display="none",this.canvas.frame.appendChild(this.manipulationDiv)),void 0===this.editModeDiv&&(this.editModeDiv=document.createElement("div"),this.editModeDiv.className="vis-edit-mode",this.editMode===!0?this.editModeDiv.style.display="none":this.editModeDiv.style.display="block",this.canvas.frame.appendChild(this.editModeDiv)),void 0===this.closeDiv&&(this.closeDiv=document.createElement("div"),this.closeDiv.className="vis-close",this.closeDiv.style.display=this.manipulationDiv.style.display,this.canvas.frame.appendChild(this.closeDiv))}},{key:"_getNewTargetNode",value:function(t,e){var i=s.deepExtend({},this.options.controlNodeStyle);i.id="targetNode"+s.randomUUID(),i.hidden=!1,i.physics=!1,i.x=t,i.y=e;var o=this.body.functions.createNode(i);return o.shape.boundingBox={left:t,right:t,top:e,bottom:e},o}},{key:"_createEditButton",value:function(){this._clean(),this.manipulationDOM={},s.recursiveDOMDelete(this.editModeDiv);var t=this.options.locales[this.options.locale],e=this._createButton("editMode","vis-button vis-edit vis-edit-mode",t.edit||this.options.locales.en.edit);this.editModeDiv.appendChild(e),this._bindHammerToDiv(e,this.toggleEditMode.bind(this))}},{key:"_clean",value:function(){this.inMode=!1,this.guiEnabled===!0&&(s.recursiveDOMDelete(this.editModeDiv),s.recursiveDOMDelete(this.manipulationDiv),this._cleanManipulatorHammers()),this._cleanupTemporaryNodesAndEdges(),this._unbindTemporaryUIs(),this._unbindTemporaryEvents(),this.body.emitter.emit("restorePhysics")}},{key:"_cleanManipulatorHammers",value:function(){if(0!=this.manipulationHammers.length){for(var t=0;t=0;r--)if(n[r]!==this.selectedControlNode.id){s=this.body.nodes[n[r]];break}if(void 0!==s&&void 0!==this.selectedControlNode)if(s.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{var a=this.body.nodes[this.temporaryIds.nodes[0]];this.selectedControlNode.id===a.id?this._performEditEdge(s.id,o.to.id):this._performEditEdge(o.from.id,s.id)}else o.updateEdgeType(),this.body.emitter.emit("restorePhysics");this.body.emitter.emit("_redraw")}}},{key:"_handleConnect",value:function(t){if((new Date).valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(t.center),this.lastTouch.translation=s.extend({},this.body.view.translation);var e=this.lastTouch,i=this.selectionHandler.getNodeAt(e);if(void 0!==i)if(i.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{var o=this._getNewTargetNode(i.x,i.y);this.body.nodes[o.id]=o,this.body.nodeIndices.push(o.id);var n=this.body.functions.createEdge({id:"connectionEdge"+s.randomUUID(),from:i.id,to:o.id,physics:!1,smooth:{enabled:!0,type:"continuous",roundness:.5}});this.body.edges[n.id]=n,this.body.edgeIndices.push(n.id),this.temporaryIds.nodes.push(o.id),this.temporaryIds.edges.push(n.id)}this.touchTime=(new Date).valueOf()}}},{key:"_dragControlNode",value:function(t){var e=this.body.functions.getPointer(t.center);if(void 0!==this.temporaryIds.nodes[0]){var i=this.body.nodes[this.temporaryIds.nodes[0]];i.x=this.canvas._XconvertDOMtoCanvas(e.x),i.y=this.canvas._YconvertDOMtoCanvas(e.y),this.body.emitter.emit("_redraw")}else{var o=e.x-this.lastTouch.x,n=e.y-this.lastTouch.y;this.body.view.translation={x:this.lastTouch.translation.x+o,y:this.lastTouch.translation.y+n}}}},{key:"_finishConnect",value:function(t){var e=this.body.functions.getPointer(t.center),i=this.selectionHandler._pointerToPositionObject(e),o=void 0;void 0!==this.temporaryIds.edges[0]&&(o=this.body.edges[this.temporaryIds.edges[0]].fromId);for(var n=this.selectionHandler._getAllNodesOverlappingWith(i),s=void 0,r=n.length-1;r>=0;r--)if(-1===this.temporaryIds.nodes.indexOf(n[r])){s=this.body.nodes[n[r]];break}this._cleanupTemporaryNodesAndEdges(),void 0!==s&&(s.isCluster===!0?alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError):void 0!==this.body.nodes[o]&&void 0!==this.body.nodes[s.id]&&this._performAddEdge(o,s.id)),this.body.emitter.emit("_redraw")}},{key:"_performAddNode",value:function(t){var e=this,i={id:s.randomUUID(),x:t.pointer.canvas.x,y:t.pointer.canvas.y,label:"new"};if("function"==typeof this.options.addNode){if(2!==this.options.addNode.length)throw new Error("The function for add does not support two arguments (data,callback)");this.options.addNode(i,function(t){null!==t&&void 0!==t&&"addNode"===e.inMode&&(e.body.data.nodes.getDataSet().add(t),e.showManipulatorToolbar())})}else this.body.data.nodes.getDataSet().add(i),this.showManipulatorToolbar()}},{key:"_performAddEdge",value:function(t,e){var i=this,o={from:t,to:e};if("function"==typeof this.options.addEdge){if(2!==this.options.addEdge.length)throw new Error("The function for connect does not support two arguments (data,callback)");this.options.addEdge(o,function(t){null!==t&&void 0!==t&&"addEdge"===i.inMode&&(i.body.data.edges.getDataSet().add(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().add(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}},{key:"_performEditEdge",value:function(t,e){var i=this,o={id:this.edgeBeingEditedId,from:t,to:e};if("function"==typeof this.options.editEdge){if(2!==this.options.editEdge.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editEdge(o,function(t){null===t||void 0===t||"editEdge"!==i.inMode?(i.body.edges[o.id].updateEdgeType(),i.body.emitter.emit("_redraw")):(i.body.data.edges.getDataSet().update(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().update(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var i="string",o="boolean",n="number",s="array",r="object",a="dom",h="any",d={configure:{enabled:{"boolean":o},filter:{"boolean":o,string:i,array:s,"function":"function"},container:{dom:a},showButton:{"boolean":o},__type__:{object:r,"boolean":o,string:i,array:s,"function":"function"}},edges:{arrows:{to:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},middle:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},from:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},__type__:{string:["from","to","middle"],object:r}},arrowStrikethrough:{"boolean":o},color:{color:{string:i},highlight:{string:i},hover:{string:i},inherit:{string:["from","to","both"],"boolean":o},opacity:{number:n},__type__:{object:r,string:i}},dashes:{"boolean":o,array:s},font:{color:{string:i},size:{number:n},face:{string:i},background:{string:i},strokeWidth:{number:n},strokeColor:{string:i},align:{string:["horizontal","top","middle","bottom"]},__type__:{object:r,string:i}},hidden:{"boolean":o},hoverWidth:{"function":"function",number:n},label:{string:i,undefined:"undefined"},labelHighlightBold:{"boolean":o},length:{number:n,undefined:"undefined"},physics:{"boolean":o},scaling:{min:{number:n},max:{number:n},label:{enabled:{"boolean":o},min:{number:n},max:{number:n},maxVisible:{number:n},drawThreshold:{number:n},__type__:{object:r,"boolean":o}},customScalingFunction:{"function":"function"},__type__:{object:r}},selectionWidth:{"function":"function",number:n},selfReferenceSize:{number:n},shadow:{enabled:{"boolean":o},color:{string:i},size:{number:n},x:{number:n},y:{number:n},__type__:{object:r,"boolean":o}},smooth:{enabled:{"boolean":o},type:{string:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"]},roundness:{number:n},forceDirection:{string:["horizontal","vertical","none"],"boolean":o},__type__:{object:r,"boolean":o}},title:{string:i,undefined:"undefined"},width:{number:n},value:{number:n,undefined:"undefined"},__type__:{object:r}},groups:{useDefaultGroups:{"boolean":o},__any__:"get from nodes, will be overwritten below",__type__:{object:r}},interaction:{dragNodes:{"boolean":o},dragView:{"boolean":o},hideEdgesOnDrag:{"boolean":o},hideNodesOnDrag:{"boolean":o},hover:{"boolean":o},keyboard:{enabled:{"boolean":o},speed:{x:{number:n},y:{number:n},zoom:{number:n},__type__:{object:r}},bindToWindow:{"boolean":o},__type__:{object:r,"boolean":o}},multiselect:{"boolean":o},navigationButtons:{"boolean":o},selectable:{"boolean":o},selectConnectedEdges:{"boolean":o},hoverConnectedEdges:{"boolean":o},tooltipDelay:{number:n},zoomView:{"boolean":o},__type__:{object:r}},layout:{randomSeed:{undefined:"undefined",number:n},improvedLayout:{"boolean":o},hierarchical:{enabled:{"boolean":o},levelSeparation:{number:n},nodeSpacing:{number:n},treeSpacing:{number:n},blockShifting:{"boolean":o},edgeMinimization:{"boolean":o},direction:{string:["UD","DU","LR","RL"]},sortMethod:{string:["hubsize","directed"]},__type__:{object:r,"boolean":o}},__type__:{object:r}},manipulation:{enabled:{"boolean":o},initiallyActive:{"boolean":o},addNode:{"boolean":o,"function":"function"},addEdge:{"boolean":o,"function":"function"},editNode:{"function":"function"},editEdge:{"boolean":o,"function":"function"},deleteNode:{"boolean":o,"function":"function"},deleteEdge:{"boolean":o,"function":"function"},controlNodeStyle:"get from nodes, will be overwritten below",__type__:{object:r,"boolean":o}},nodes:{borderWidth:{number:n},borderWidthSelected:{number:n,undefined:"undefined"},brokenImage:{string:i,undefined:"undefined"},color:{border:{string:i},background:{string:i},highlight:{border:{string:i},background:{string:i},__type__:{object:r,string:i}},hover:{border:{string:i},background:{string:i},__type__:{object:r,string:i}},__type__:{object:r,string:i}},fixed:{x:{"boolean":o},y:{"boolean":o},__type__:{object:r,"boolean":o}},font:{color:{string:i},size:{number:n},face:{string:i},background:{string:i},strokeWidth:{number:n},strokeColor:{string:i},__type__:{object:r,string:i}},group:{string:i,number:n,undefined:"undefined"},hidden:{"boolean":o},icon:{face:{string:i},code:{string:i},size:{number:n},color:{string:i},__type__:{object:r}},id:{string:i,number:n},image:{string:i,undefined:"undefined"},label:{string:i,undefined:"undefined"},labelHighlightBold:{"boolean":o},level:{number:n,undefined:"undefined"},mass:{number:n},physics:{"boolean":o},scaling:{min:{number:n},max:{number:n},label:{enabled:{"boolean":o},min:{number:n},max:{number:n},maxVisible:{number:n},drawThreshold:{number:n},__type__:{object:r,"boolean":o}},customScalingFunction:{"function":"function"},__type__:{object:r}},shadow:{enabled:{"boolean":o},color:{string:i},size:{number:n},x:{number:n},y:{number:n},__type__:{object:r,"boolean":o}},shape:{string:["ellipse","circle","database","box","text","image","circularImage","diamond","dot","star","triangle","triangleDown","square","icon"]},shapeProperties:{borderDashes:{"boolean":o,array:s},borderRadius:{number:n},useImageSize:{"boolean":o},useBorderWithImage:{"boolean":o},__type__:{object:r}},size:{number:n},title:{string:i,undefined:"undefined"},value:{number:n,undefined:"undefined"},x:{number:n},y:{number:n},__type__:{object:r}},physics:{enabled:{"boolean":o},barnesHut:{gravitationalConstant:{number:n},centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},damping:{number:n},avoidOverlap:{number:n},__type__:{object:r}},forceAtlas2Based:{gravitationalConstant:{number:n},centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},damping:{number:n},avoidOverlap:{number:n},__type__:{object:r}},repulsion:{centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},nodeDistance:{number:n},damping:{number:n},__type__:{object:r}},hierarchicalRepulsion:{centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},nodeDistance:{number:n},damping:{number:n},__type__:{object:r}},maxVelocity:{number:n},minVelocity:{number:n},solver:{string:["barnesHut","repulsion","hierarchicalRepulsion","forceAtlas2Based"]},stabilization:{enabled:{"boolean":o},iterations:{number:n},updateInterval:{number:n},onlyDynamicEdges:{"boolean":o},fit:{"boolean":o},__type__:{object:r,"boolean":o}},timestep:{number:n},adaptiveTimestep:{"boolean":o},__type__:{object:r,"boolean":o}},autoResize:{"boolean":o},clickToUse:{"boolean":o},locale:{string:i},locales:{__any__:{any:h},__type__:{object:r}},height:{string:i},width:{string:i},__type__:{object:r}};d.groups.__any__=d.nodes,d.manipulation.controlNodeStyle=d.nodes;var l={nodes:{borderWidth:[1,0,10,1],borderWidthSelected:[2,0,10,1],color:{border:["color","#2B7CE9"],background:["color","#97C2FC"],highlight:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]},hover:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]}},fixed:{x:!1,y:!1},font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[0,0,50,1],strokeColor:["color","#ffffff"]},hidden:!1,labelHighlightBold:!0,physics:!0,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:!1,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:["ellipse","box","circle","database","diamond","dot","square","star","text","triangle","triangleDown"],shapeProperties:{borderDashes:!1,borderRadius:[6,0,20,1],useImageSize:!1},size:[25,0,200,1]},edges:{arrows:{to:{enabled:!1,scaleFactor:[1,0,3,.05]},middle:{enabled:!1,scaleFactor:[1,0,3,.05]},from:{enabled:!1,scaleFactor:[1,0,3,.05]}},arrowStrikethrough:!0,color:{color:["color","#848484"],highlight:["color","#848484"],hover:["color","#848484"],inherit:["from","to","both",!0,!1],opacity:[1,0,1,.05]},dashes:!1,font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[2,0,50,1],strokeColor:["color","#ffffff"],align:["horizontal","top","middle","bottom"]},hidden:!1,hoverWidth:[1.5,0,5,.1],labelHighlightBold:!0,physics:!0,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:!0,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},smooth:{enabled:!0,type:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"],forceDirection:["horizontal","vertical","none"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:!1,levelSeparation:[150,20,500,5],nodeSpacing:[100,20,500,5],treeSpacing:[200,20,500,5],blockShifting:!0,edgeMinimization:!0,direction:["UD","DU","LR","RL"],sortMethod:["hubsize","directed"]}},interaction:{dragNodes:!0,dragView:!0,hideEdgesOnDrag:!1,hideNodesOnDrag:!1,hover:!1,keyboard:{enabled:!1,speed:{x:[10,0,40,1],y:[10,0,40,1],zoom:[.02,0,.1,.005]},bindToWindow:!0},multiselect:!1,navigationButtons:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0,tooltipDelay:[300,0,1e3,25],zoomView:!0},manipulation:{enabled:!1,initiallyActive:!1},physics:{enabled:!0,barnesHut:{gravitationalConstant:[-2e3,-3e4,0,50],centralGravity:[.3,0,10,.05],springLength:[95,0,500,5],springConstant:[.04,0,1.2,.005],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},forceAtlas2Based:{gravitationalConstant:[-50,-500,0,1],centralGravity:[.01,0,1,.005],springLength:[95,0,500,5],springConstant:[.08,0,1.2,.005],damping:[.4,0,1,.01],avoidOverlap:[0,0,1,.01]},repulsion:{centralGravity:[.2,0,10,.05],springLength:[200,0,500,5],springConstant:[.05,0,1.2,.005],nodeDistance:[100,0,500,5],damping:[.09,0,1,.01]},hierarchicalRepulsion:{centralGravity:[.2,0,10,.05],springLength:[100,0,500,5],springConstant:[.01,0,1.2,.005],nodeDistance:[120,0,500,5],damping:[.09,0,1,.01]},maxVelocity:[50,0,150,1],minVelocity:[.1,.01,.5,.01],solver:["barnesHut","forceAtlas2Based","repulsion","hierarchicalRepulsion"],timestep:[.5,.01,1,.01]},global:{locale:["en","nl"]}};e.allOptions=d,e.configureOptions=l},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),r=function(){function t(t,e){for(var i=0;in&&h>a;){a+=1;var v=this._getHighestEnergyNode(i),g=s(v,4);for(u=g[0],l=g[1],c=g[2],p=g[3],f=l,m=0;f>r&&d>m;){m+=1,this._moveNode(u,c,p);var y=this._getEnergy(u),b=s(y,3);f=b[0],c=b[1],p=b[2]}}}},{key:"_getHighestEnergyNode",value:function(t){for(var e=this.body.nodeIndices,i=this.body.nodes,o=0,n=e[0],r=0,a=0,h=0;ho&&(o=c,n=d,r=p,a=f)}}return[n,o,r,a]}},{key:"_getEnergy",value:function(t){for(var e=this.body.nodeIndices,i=this.body.nodes,o=i[t].x,n=i[t].y,s=0,r=0,a=0;ad;d++)for(var s=0;h-1>s;s++)for(var r=s+1;h>r;r++)o[e[s]][e[r]]=Math.min(o[e[s]][e[r]],o[e[s]][e[d]]+o[e[d]][e[r]]),o[e[r]][e[s]]=o[e[s]][e[r]];return o}}]),t}();e["default"]=n,t.exports=e["default"]},function(t,e){"undefined"!=typeof CanvasRenderingContext2D&&(CanvasRenderingContext2D.prototype.circle=function(t,e,i){this.beginPath(),this.arc(t,e,i,0,2*Math.PI,!1),this.closePath()},CanvasRenderingContext2D.prototype.square=function(t,e,i){this.beginPath(),this.rect(t-i,e-i,2*i,2*i),this.closePath()},CanvasRenderingContext2D.prototype.triangle=function(t,e,i){this.beginPath(),i*=1.15,e+=.275*i;var o=2*i,n=o/2,s=Math.sqrt(3)/6*o,r=Math.sqrt(o*o-n*n);this.moveTo(t,e-(r-s)),this.lineTo(t+n,e+s),this.lineTo(t-n,e+s),this.lineTo(t,e-(r-s)),this.closePath()},CanvasRenderingContext2D.prototype.triangleDown=function(t,e,i){this.beginPath(),i*=1.15,e-=.275*i;var o=2*i,n=o/2,s=Math.sqrt(3)/6*o,r=Math.sqrt(o*o-n*n);this.moveTo(t,e+(r-s)),this.lineTo(t+n,e-s),this.lineTo(t-n,e-s),this.lineTo(t,e+(r-s)),this.closePath()},CanvasRenderingContext2D.prototype.star=function(t,e,i){this.beginPath(),i*=.82,e+=.1*i;for(var o=0;10>o;o++){var n=o%2===0?1.3*i:.5*i;this.lineTo(t+n*Math.sin(2*o*Math.PI/10),e-n*Math.cos(2*o*Math.PI/10))}this.closePath()},CanvasRenderingContext2D.prototype.diamond=function(t,e,i){this.beginPath(),this.lineTo(t,e+i),this.lineTo(t+i,e),this.lineTo(t,e-i),this.lineTo(t-i,e),this.closePath()},CanvasRenderingContext2D.prototype.roundRect=function(t,e,i,o,n){var s=Math.PI/180;0>i-2*n&&(n=i/2),0>o-2*n&&(n=o/2),this.beginPath(),this.moveTo(t+n,e),this.lineTo(t+i-n,e),this.arc(t+i-n,e+n,n,270*s,360*s,!1),this.lineTo(t+i,e+o-n),this.arc(t+i-n,e+o-n,n,0,90*s,!1),this.lineTo(t+n,e+o),this.arc(t+n,e+o-n,n,90*s,180*s,!1),this.lineTo(t,e+n),this.arc(t+n,e+n,n,180*s,270*s,!1),this.closePath()},CanvasRenderingContext2D.prototype.ellipse=function(t,e,i,o){var n=.5522848,s=i/2*n,r=o/2*n,a=t+i,h=e+o,d=t+i/2,l=e+o/2;this.beginPath(),this.moveTo(t,l),this.bezierCurveTo(t,l-r,d-s,e,d,e),this.bezierCurveTo(d+s,e,a,l-r,a,l),this.bezierCurveTo(a,l+r,d+s,h,d,h),this.bezierCurveTo(d-s,h,t,l+r,t,l),this.closePath()},CanvasRenderingContext2D.prototype.database=function(t,e,i,o){var n=1/3,s=i,r=o*n,a=.5522848,h=s/2*a,d=r/2*a,l=t+s,u=e+r,c=t+s/2,p=e+r/2,f=e+(o-r/2),m=e+o;this.beginPath(),this.moveTo(l,p),this.bezierCurveTo(l,p+d,c+h,u,c,u),this.bezierCurveTo(c-h,u,t,p+d,t,p),this.bezierCurveTo(t,p-d,c-h,e,c,e),this.bezierCurveTo(c+h,e,l,p-d,l,p),this.lineTo(l,f),this.bezierCurveTo(l,f+d,c+h,m,c,m),this.bezierCurveTo(c-h,m,t,f+d,t,f),this.lineTo(t,p)},CanvasRenderingContext2D.prototype.arrow=function(t,e,i,o){var n=t-o*Math.cos(i),s=e-o*Math.sin(i),r=t-.9*o*Math.cos(i),a=e-.9*o*Math.sin(i),h=n+o/3*Math.cos(i+.5*Math.PI),d=s+o/3*Math.sin(i+.5*Math.PI),l=n+o/3*Math.cos(i-.5*Math.PI),u=s+o/3*Math.sin(i-.5*Math.PI);this.beginPath(),this.moveTo(t,e),this.lineTo(h,d),this.lineTo(r,a),this.lineTo(l,u),this.closePath()},CanvasRenderingContext2D.prototype.dashedLine=function(t,e,i,o,n){this.beginPath(),this.moveTo(t,e);for(var s=n.length,r=i-t,a=o-e,h=a/r,d=Math.sqrt(r*r+a*a),l=0,u=!0,c=0,p=n[0];d>=.1;)p=n[l++%s],p>d&&(p=d),c=Math.sqrt(p*p/(1+h*h)),c=0>r?-c:c,t+=c,e+=h*c,u===!0?this.lineTo(t,e):this.moveTo(t,e),d-=p,u=!u})},function(t,e){function i(t){return P=t,p()}function o(){I=0,N=P.charAt(0)}function n(){I++,N=P.charAt(I)}function s(){return P.charAt(I+1)}function r(t){return A.test(t)}function a(t,e){if(t||(t={}),e)for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i]);return t}function h(t,e,i){for(var o=e.split("."),n=t;o.length;){var s=o.shift();o.length?(n[s]||(n[s]={}),n=n[s]):n[s]=i}}function d(t,e){for(var i,o,n=null,s=[t],r=t;r.parent;)s.push(r.parent),r=r.parent;if(r.nodes)for(i=0,o=r.nodes.length;o>i;i++)if(e.id===r.nodes[i].id){n=r.nodes[i];break}for(n||(n={id:e.id},t.node&&(n.attr=a(n.attr,t.node))),i=s.length-1;i>=0;i--){var h=s[i];h.nodes||(h.nodes=[]),-1===h.nodes.indexOf(n)&&h.nodes.push(n)}e.attr&&(n.attr=a(n.attr,e.attr))}function l(t,e){if(t.edges||(t.edges=[]),t.edges.push(e),t.edge){var i=a({},t.edge);e.attr=a(i,e.attr)}}function u(t,e,i,o,n){var s={from:e,to:i,type:o};return t.edge&&(s.attr=a({},t.edge)),s.attr=a(s.attr||{},n),s}function c(){for(L=T.NULL,z="";" "===N||" "===N||"\n"===N||"\r"===N;)n();do{var t=!1;if("#"===N){for(var e=I-1;" "===P.charAt(e)||" "===P.charAt(e);)e--;if("\n"===P.charAt(e)||""===P.charAt(e)){for(;""!=N&&"\n"!=N;)n();t=!0}}if("/"===N&&"/"===s()){for(;""!=N&&"\n"!=N;)n();t=!0}if("/"===N&&"*"===s()){for(;""!=N;){if("*"===N&&"/"===s()){n(),n();break}n()}t=!0}for(;" "===N||" "===N||"\n"===N||"\r"===N;)n()}while(t);if(""===N)return void(L=T.DELIMITER);var i=N+s();if(E[i])return L=T.DELIMITER,z=i,n(),void n();if(E[N])return L=T.DELIMITER,z=N,void n();if(r(N)||"-"===N){for(z+=N,n();r(N);)z+=N,n();return"false"===z?z=!1:"true"===z?z=!0:isNaN(Number(z))||(z=Number(z)),void(L=T.IDENTIFIER)}if('"'===N){for(n();""!=N&&('"'!=N||'"'===N&&'"'===s());)z+=N,'"'===N&&n(),n();if('"'!=N)throw w('End of string " expected');return n(),void(L=T.IDENTIFIER)}for(L=T.UNKNOWN;""!=N;)z+=N,n();throw new SyntaxError('Syntax error in part "'+x(z,30)+'"')}function p(){var t={};if(o(),c(),"strict"===z&&(t.strict=!0,c()),("graph"===z||"digraph"===z)&&(t.type=z,c()),L===T.IDENTIFIER&&(t.id=z,c()),"{"!=z)throw w("Angle bracket { expected");if(c(),f(t),"}"!=z)throw w("Angle bracket } expected");if(c(),""!==z)throw w("End of file expected");return c(),delete t.node,delete t.edge,delete t.graph,t}function f(t){for(;""!==z&&"}"!=z;)m(t),";"===z&&c()}function m(t){var e=v(t);if(e)return void b(t,e);var i=g(t);if(!i){if(L!=T.IDENTIFIER)throw w("Identifier expected");var o=z;if(c(),"="===z){if(c(),L!=T.IDENTIFIER)throw w("Identifier expected");t[o]=z,c()}else y(t,o)}}function v(t){var e=null;if("subgraph"===z&&(e={},e.type="subgraph",c(),L===T.IDENTIFIER&&(e.id=z,c())),"{"===z){if(c(),e||(e={}),e.parent=t,e.node=t.node,e.edge=t.edge,e.graph=t.graph,f(e),"}"!=z)throw w("Angle bracket } expected");c(),delete e.node,delete e.edge,delete e.graph,delete e.parent,t.subgraphs||(t.subgraphs=[]),t.subgraphs.push(e)}return e}function g(t){return"node"===z?(c(),t.node=_(),"node"):"edge"===z?(c(),t.edge=_(),"edge"):"graph"===z?(c(),t.graph=_(),"graph"):null}function y(t,e){var i={id:e},o=_();o&&(i.attr=o),d(t,i),b(t,e)}function b(t,e){for(;"->"===z||"--"===z;){var i,o=z;c();var n=v(t);if(n)i=n;else{if(L!=T.IDENTIFIER)throw w("Identifier or subgraph expected");i=z,d(t,{id:i}),c()}var s=_(),r=u(t,e,i,o,s);l(t,r),e=i}}function _(){for(var t=null;"["===z;){for(c(),t={};""!==z&&"]"!=z;){if(L!=T.IDENTIFIER)throw w("Attribute name expected");var e=z;if(c(),"="!=z)throw w("Equal sign = expected");if(c(),L!=T.IDENTIFIER)throw w("Attribute value expected");var i=z;h(t,e,i),c(),","==z&&c()}if("]"!=z)throw w("Bracket ] expected");c()}return t}function w(t){return new SyntaxError(t+', got "'+x(z,30)+'" (char '+I+")")}function x(t,e){return t.length<=e?t:t.substr(0,27)+"..."}function k(t,e,i){Array.isArray(t)?t.forEach(function(t){Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}):Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}function O(t,e,i){for(var o=e.split("."),n=o.pop(),s=t,r=0;r":!0,"--":!0},P="",I=0,N="",z="",L=T.NULL,A=/[a-zA-Z_0-9.:#]/;e.parseDOT=i,e.DOTToGraph=D},function(t,e){function i(t,e){var i=[],o=[],n={edges:{inheritColor:!1},nodes:{fixed:!1,parseColor:!1}};void 0!==e&&(void 0!==e.fixed&&(n.nodes.fixed=e.fixed),void 0!==e.parseColor&&(n.nodes.parseColor=e.parseColor),void 0!==e.inheritColor&&(n.edges.inheritColor=e.inheritColor));for(var s=t.edges,r=t.nodes,a=0;ae-s?(i=t.clone().add(n-1,"months"),o=(e-s)/(s-i)):(i=t.clone().add(n+1,"months"),o=(e-s)/(i-s)),-(n+o)}function fe(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function me(){var t=this.clone().utc();return 0s&&(e=s),He.call(this,t,e,i,o,n))}function He(t,e,i,o,n){var s=vt(t,e,i,o,n),r=ut(s.year,0,s.dayOfYear);return this.year(r.getUTCFullYear()),this.month(r.getUTCMonth()),this.date(r.getUTCDate()),this}function We(t){return null==t?Math.ceil((this.month()+1)/3):this.month(3*(t-1)+this.month()%3)}function Ye(t){return gt(t,this._week.dow,this._week.doy).week}function Ge(){return this._week.dow}function Ve(){return this._week.doy}function Ue(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")}function qe(t){var e=gt(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")}function Xe(t,e){return"string"!=typeof t?t:isNaN(t)?(t=e.weekdaysParse(t),"number"==typeof t?t:null):parseInt(t,10)}function Ze(t,e){return o(this._weekdays)?this._weekdays[t.day()]:this._weekdays[this._weekdays.isFormat.test(e)?"format":"standalone"][t.day()]}function Ke(t){return this._weekdaysShort[t.day()]}function Je(t){return this._weekdaysMin[t.day()]}function Qe(t,e,i){var o,n,s;for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),o=0;7>o;o++){if(n=Pt([2e3,1]).day(o),i&&!this._fullWeekdaysParse[o]&&(this._fullWeekdaysParse[o]=new RegExp("^"+this.weekdays(n,"").replace(".",".?")+"$","i"),this._shortWeekdaysParse[o]=new RegExp("^"+this.weekdaysShort(n,"").replace(".",".?")+"$","i"),this._minWeekdaysParse[o]=new RegExp("^"+this.weekdaysMin(n,"").replace(".",".?")+"$","i")),this._weekdaysParse[o]||(s="^"+this.weekdays(n,"")+"|^"+this.weekdaysShort(n,"")+"|^"+this.weekdaysMin(n,""),this._weekdaysParse[o]=new RegExp(s.replace(".",""),"i")),i&&"dddd"===e&&this._fullWeekdaysParse[o].test(t))return o;if(i&&"ddd"===e&&this._shortWeekdaysParse[o].test(t))return o;if(i&&"dd"===e&&this._minWeekdaysParse[o].test(t))return o;if(!i&&this._weekdaysParse[o].test(t))return o}}function $e(t){if(!this.isValid())return null!=t?this:NaN;var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=Xe(t,this.localeData()),this.add(t-e,"d")):e}function ti(t){if(!this.isValid())return null!=t?this:NaN;var e=(this.day()+7-this.localeData()._week.dow)%7;return null==t?e:this.add(t-e,"d")}function ei(t){return this.isValid()?null==t?this.day()||7:this.day(this.day()%7?t:t-7):null!=t?this:NaN}function ii(t){var e=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return null==t?e:this.add(t-e,"d")}function oi(){return this.hours()%12||12}function ni(t,e){A(t,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)})}function si(t,e){return e._meridiemParse}function ri(t){return"p"===(t+"").toLowerCase().charAt(0)}function ai(t,e,i){return t>11?i?"pm":"PM":i?"am":"AM"}function hi(t,e){e[To]=y(1e3*("0."+t))}function di(){return this._isUTC?"UTC":""}function li(){return this._isUTC?"Coordinated Universal Time":""}function ui(t){return Pt(1e3*t)}function ci(){return Pt.apply(null,arguments).parseZone()}function pi(t,e,i){var o=this._calendar[t];return E(o)?o.call(e,i):o}function fi(t){var e=this._longDateFormat[t],i=this._longDateFormat[t.toUpperCase()];return e||!i?e:(this._longDateFormat[t]=i.replace(/MMMM|MM|DD|dddd/g,function(t){return t.slice(1)}),this._longDateFormat[t])}function mi(){return this._invalidDate}function vi(t){return this._ordinal.replace("%d",t)}function gi(t){return t}function yi(t,e,i,o){var n=this._relativeTime[i];return E(n)?n(t,e,i,o):n.replace(/%d/i,t)}function bi(t,e){var i=this._relativeTime[t>0?"future":"past"];return E(i)?i(e):i.replace(/%s/i,e)}function _i(t){var e,i;for(i in t)e=t[i],E(e)?this[i]=e:this["_"+i]=e;this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)}function wi(t,e,i,o){var n=D(),s=h().set(o,e);return n[i](s,t)}function xi(t,e,i,o,n){if("number"==typeof t&&(e=t,t=void 0),t=t||"",null!=e)return wi(t,e,i,n);var s,r=[];for(s=0;o>s;s++)r[s]=wi(t,s,i,n);return r}function ki(t,e){return xi(t,e,"months",12,"month")}function Oi(t,e){return xi(t,e,"monthsShort",12,"month")}function Mi(t,e){return xi(t,e,"weekdays",7,"day")}function Di(t,e){return xi(t,e,"weekdaysShort",7,"day")}function Ci(t,e){return xi(t,e,"weekdaysMin",7,"day")}function Si(){var t=this._data;return this._milliseconds=wn(this._milliseconds),this._days=wn(this._days),this._months=wn(this._months),t.milliseconds=wn(t.milliseconds),t.seconds=wn(t.seconds),t.minutes=wn(t.minutes),t.hours=wn(t.hours),t.months=wn(t.months),t.years=wn(t.years),this}function Ti(t,e,i,o){var n=Qt(e,i);return t._milliseconds+=o*n._milliseconds,t._days+=o*n._days,t._months+=o*n._months,t._bubble()}function Ei(t,e){return Ti(this,t,e,1)}function Pi(t,e){return Ti(this,t,e,-1)}function Ii(t){return 0>t?Math.floor(t):Math.ceil(t)}function Ni(){var t,e,i,o,n,s=this._milliseconds,r=this._days,a=this._months,h=this._data;return s>=0&&r>=0&&a>=0||0>=s&&0>=r&&0>=a||(s+=864e5*Ii(Li(a)+r),r=0,a=0),h.milliseconds=s%1e3,t=g(s/1e3),h.seconds=t%60,e=g(t/60),h.minutes=e%60,i=g(e/60),h.hours=i%24,r+=g(i/24),n=g(zi(r)),a+=n,r-=Ii(Li(n)),o=g(a/12),a%=12,h.days=r,h.months=a,h.years=o,this}function zi(t){return 4800*t/146097}function Li(t){return 146097*t/4800}function Ai(t){var e,i,o=this._milliseconds;if(t=S(t),"month"===t||"year"===t)return e=this._days+o/864e5,i=this._months+zi(e),"month"===t?i:i/12;switch(e=this._days+Math.round(Li(this._months)),t){case"week":return e/7+o/6048e5;case"day":return e+o/864e5;case"hour":return 24*e+o/36e5;case"minute":return 1440*e+o/6e4;case"second":return 86400*e+o/1e3;case"millisecond":return Math.floor(864e5*e)+o;default:throw new Error("Unknown unit "+t)}}function Fi(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*y(this._months/12)}function Bi(t){return function(){return this.as(t)}}function Ri(t){return t=S(t),this[t+"s"]()}function ji(t){return function(){return this._data[t]}}function Hi(){return g(this.days()/7)}function Wi(t,e,i,o,n){return n.relativeTime(e||1,!!i,t,o)}function Yi(t,e,i){var o=Qt(t).abs(),n=Fn(o.as("s")),s=Fn(o.as("m")),r=Fn(o.as("h")),a=Fn(o.as("d")),h=Fn(o.as("M")),d=Fn(o.as("y")),l=n=s&&["m"]||s=r&&["h"]||r=a&&["d"]||a=h&&["M"]||h=d&&["y"]||["yy",d];return l[2]=e,l[3]=+t>0,l[4]=i,Wi.apply(null,l)}function Gi(t,e){return void 0===Bn[t]?!1:void 0===e?Bn[t]:(Bn[t]=e,!0)}function Vi(t){var e=this.localeData(),i=Yi(this,!t,e);return t&&(i=e.pastFuture(+this,i)),e.postformat(i)}function Ui(){var t,e,i,o=Rn(this._milliseconds)/1e3,n=Rn(this._days),s=Rn(this._months);t=g(o/60),e=g(t/60),o%=60,t%=60,i=g(s/12),s%=12;var r=i,a=s,h=n,d=e,l=t,u=o,c=this.asSeconds();return c?(0>c?"-":"")+"P"+(r?r+"Y":"")+(a?a+"M":"")+(h?h+"D":"")+(d||l||u?"T":"")+(d?d+"H":"")+(l?l+"M":"")+(u?u+"S":""):"P0D"}var qi,Xi,Zi=e.momentProperties=[],Ki=!1,Ji={},Qi={},$i=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,to=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,eo={},io={},oo=/\d/,no=/\d\d/,so=/\d{3}/,ro=/\d{4}/,ao=/[+-]?\d{6}/,ho=/\d\d?/,lo=/\d\d\d\d?/,uo=/\d\d\d\d\d\d?/,co=/\d{1,3}/,po=/\d{1,4}/,fo=/[+-]?\d{1,6}/,mo=/\d+/,vo=/[+-]?\d+/,go=/Z|[+-]\d\d:?\d\d/gi,yo=/Z|[+-]\d\d(?::?\d\d)?/gi,bo=/[+-]?\d+(\.\d{1,3})?/,_o=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,wo={},xo={},ko=0,Oo=1,Mo=2,Do=3,Co=4,So=5,To=6,Eo=7,Po=8;A("M",["MM",2],"Mo",function(){return this.month()+1}),A("MMM",0,0,function(t){return this.localeData().monthsShort(this,t)}),A("MMMM",0,0,function(t){return this.localeData().months(this,t)}),C("month","M"),H("M",ho),H("MM",ho,no),H("MMM",function(t,e){return e.monthsShortRegex(t)}),H("MMMM",function(t,e){return e.monthsRegex(t)}),V(["M","MM"],function(t,e){e[Oo]=y(t)-1}),V(["MMM","MMMM"],function(t,e,i,o){var n=i._locale.monthsParse(t,o,i._strict);null!=n?e[Oo]=n:l(i).invalidMonth=t});var Io=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/,No="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),zo="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),Lo=_o,Ao=_o,Fo={};e.suppressDeprecationWarnings=!1;var Bo=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/,Ro=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?/,jo=/Z|[+-]\d\d(?::?\d\d)?/,Ho=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],Wo=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],Yo=/^\/?Date\((\-?\d+)/i;e.createFromInputFallback=rt("moment construction falls back to js Date. This is discouraged and will be removed in upcoming major release. Please refer to https://github.com/moment/moment/issues/1407 for more info.",function(t){t._d=new Date(t._i+(t._useUTC?" UTC":""))}),A("Y",0,0,function(){var t=this.year();return 9999>=t?""+t:"+"+t}),A(0,["YY",2],0,function(){return this.year()%100}),A(0,["YYYY",4],0,"year"),A(0,["YYYYY",5],0,"year"),A(0,["YYYYYY",6,!0],0,"year"),C("year","y"),H("Y",vo),H("YY",ho,no),H("YYYY",po,ro),H("YYYYY",fo,ao),H("YYYYYY",fo,ao),V(["YYYYY","YYYYYY"],ko),V("YYYY",function(t,i){i[ko]=2===t.length?e.parseTwoDigitYear(t):y(t)}),V("YY",function(t,i){i[ko]=e.parseTwoDigitYear(t)}),V("Y",function(t,e){e[ko]=parseInt(t,10)}),e.parseTwoDigitYear=function(t){return y(t)+(y(t)>68?1900:2e3)};var Go=P("FullYear",!1);e.ISO_8601=function(){};var Vo=rt("moment().min is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var t=Pt.apply(null,arguments);return this.isValid()&&t.isValid()?this>t?this:t:c()}),Uo=rt("moment().max is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(){var t=Pt.apply(null,arguments);return this.isValid()&&t.isValid()?t>this?this:t:c()}),qo=function(){return Date.now?Date.now():+new Date};Ft("Z",":"),Ft("ZZ",""),H("Z",yo),H("ZZ",yo),V(["Z","ZZ"],function(t,e,i){i._useUTC=!0,i._tzm=Bt(yo,t)});var Xo=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var Zo=/^(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?\d*)?$/,Ko=/^(-)?P(?:(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?|([0-9,.]*)W)$/;Qt.fn=Lt.prototype;var Jo=ie(1,"add"),Qo=ie(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";var $o=rt("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(t){return void 0===t?this.localeData():this.locale(t)});A(0,["gg",2],0,function(){return this.weekYear()%100}),A(0,["GG",2],0,function(){return this.isoWeekYear()%100}),Le("gggg","weekYear"),Le("ggggg","weekYear"),Le("GGGG","isoWeekYear"),Le("GGGGG","isoWeekYear"),C("weekYear","gg"),C("isoWeekYear","GG"),H("G",vo),H("g",vo),H("GG",ho,no),H("gg",ho,no),H("GGGG",po,ro),H("gggg",po,ro),H("GGGGG",fo,ao),H("ggggg",fo,ao),U(["gggg","ggggg","GGGG","GGGGG"],function(t,e,i,o){e[o.substr(0,2)]=y(t)}),U(["gg","GG"],function(t,i,o,n){i[n]=e.parseTwoDigitYear(t)}),A("Q",0,"Qo","quarter"),C("quarter","Q"),H("Q",oo),V("Q",function(t,e){e[Oo]=3*(y(t)-1)}),A("w",["ww",2],"wo","week"),A("W",["WW",2],"Wo","isoWeek"),C("week","w"),C("isoWeek","W"),H("w",ho),H("ww",ho,no),H("W",ho),H("WW",ho,no),U(["w","ww","W","WW"],function(t,e,i,o){e[o.substr(0,1)]=y(t)});var tn={dow:0,doy:6};A("D",["DD",2],"Do","date"),C("date","D"),H("D",ho),H("DD",ho,no),H("Do",function(t,e){return t?e._ordinalParse:e._ordinalParseLenient}),V(["D","DD"],Mo),V("Do",function(t,e){e[Mo]=y(t.match(ho)[0],10)});var en=P("Date",!0);A("d",0,"do","day"),A("dd",0,0,function(t){return this.localeData().weekdaysMin(this,t)}),A("ddd",0,0,function(t){return this.localeData().weekdaysShort(this,t)}),A("dddd",0,0,function(t){return this.localeData().weekdays(this,t)}),A("e",0,0,"weekday"),A("E",0,0,"isoWeekday"),C("day","d"),C("weekday","e"),C("isoWeekday","E"),H("d",ho),H("e",ho),H("E",ho),H("dd",_o),H("ddd",_o),H("dddd",_o),U(["dd","ddd","dddd"],function(t,e,i,o){var n=i._locale.weekdaysParse(t,o,i._strict);null!=n?e.d=n:l(i).invalidWeekday=t}),U(["d","e","E"],function(t,e,i,o){e[o]=y(t)});var on="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),nn="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),sn="Su_Mo_Tu_We_Th_Fr_Sa".split("_");A("DDD",["DDDD",3],"DDDo","dayOfYear"),C("dayOfYear","DDD"),H("DDD",co),H("DDDD",so),V(["DDD","DDDD"],function(t,e,i){i._dayOfYear=y(t)}),A("H",["HH",2],0,"hour"),A("h",["hh",2],0,oi),A("hmm",0,0,function(){return""+oi.apply(this)+L(this.minutes(),2)}),A("hmmss",0,0,function(){return""+oi.apply(this)+L(this.minutes(),2)+L(this.seconds(),2)}),A("Hmm",0,0,function(){return""+this.hours()+L(this.minutes(),2)}),A("Hmmss",0,0,function(){return""+this.hours()+L(this.minutes(),2)+L(this.seconds(),2)}),ni("a",!0),ni("A",!1),C("hour","h"),H("a",si),H("A",si),H("H",ho),H("h",ho),H("HH",ho,no),H("hh",ho,no),H("hmm",lo),H("hmmss",uo),H("Hmm",lo),H("Hmmss",uo),V(["H","HH"],Do),V(["a","A"],function(t,e,i){i._isPm=i._locale.isPM(t),i._meridiem=t}),V(["h","hh"],function(t,e,i){e[Do]=y(t),l(i).bigHour=!0}),V("hmm",function(t,e,i){var o=t.length-2;e[Do]=y(t.substr(0,o)),e[Co]=y(t.substr(o)),l(i).bigHour=!0}),V("hmmss",function(t,e,i){var o=t.length-4,n=t.length-2;e[Do]=y(t.substr(0,o)),e[Co]=y(t.substr(o,2)),e[So]=y(t.substr(n)),l(i).bigHour=!0}),V("Hmm",function(t,e,i){var o=t.length-2;e[Do]=y(t.substr(0,o)),e[Co]=y(t.substr(o))}),V("Hmmss",function(t,e,i){var o=t.length-4,n=t.length-2;e[Do]=y(t.substr(0,o)),e[Co]=y(t.substr(o,2)),e[So]=y(t.substr(n))});var rn=/[ap]\.?m?\.?/i,an=P("Hours",!0);A("m",["mm",2],0,"minute"),C("minute","m"),H("m",ho),H("mm",ho,no),V(["m","mm"],Co);var hn=P("Minutes",!1);A("s",["ss",2],0,"second"),C("second","s"),H("s",ho),H("ss",ho,no),V(["s","ss"],So);var dn=P("Seconds",!1);A("S",0,0,function(){return~~(this.millisecond()/100)}),A(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),A(0,["SSS",3],0,"millisecond"),A(0,["SSSS",4],0,function(){return 10*this.millisecond()}),A(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),A(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),A(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),A(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),A(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),C("millisecond","ms"),H("S",co,oo),H("SS",co,no),H("SSS",co,so);var ln;for(ln="SSSS";ln.length<=9;ln+="S")H(ln,mo);for(ln="S";ln.length<=9;ln+="S")V(ln,hi);var un=P("Milliseconds",!1);A("z",0,0,"zoneAbbr"),A("zz",0,0,"zoneName");var cn=m.prototype;cn.add=Jo,cn.calendar=ne,cn.clone=se,cn.diff=ce,cn.endOf=Oe,cn.format=ve,cn.from=ge,cn.fromNow=ye,cn.to=be,cn.toNow=_e,cn.get=z,cn.invalidAt=Ne,cn.isAfter=re,cn.isBefore=ae,cn.isBetween=he,cn.isSame=de,cn.isSameOrAfter=le,cn.isSameOrBefore=ue,cn.isValid=Pe,cn.lang=$o,cn.locale=we,cn.localeData=xe,cn.max=Uo,cn.min=Vo,cn.parsingFlags=Ie,cn.set=z,cn.startOf=ke,cn.subtract=Qo,cn.toArray=Se,cn.toObject=Te,cn.toDate=Ce,cn.toISOString=me,cn.toJSON=Ee,cn.toString=fe,cn.unix=De,cn.valueOf=Me,cn.creationData=ze,cn.year=Go,cn.isLeapYear=ft,cn.weekYear=Ae,cn.isoWeekYear=Fe,cn.quarter=cn.quarters=We,cn.month=$,cn.daysInMonth=tt,cn.week=cn.weeks=Ue,cn.isoWeek=cn.isoWeeks=qe,cn.weeksInYear=Re,cn.isoWeeksInYear=Be,cn.date=en,cn.day=cn.days=$e,cn.weekday=ti,cn.isoWeekday=ei,cn.dayOfYear=ii,cn.hour=cn.hours=an,cn.minute=cn.minutes=hn,cn.second=cn.seconds=dn,cn.millisecond=cn.milliseconds=un,cn.utcOffset=Ht,cn.utc=Yt,cn.local=Gt,cn.parseZone=Vt,cn.hasAlignedHourOffset=Ut,cn.isDST=qt,cn.isDSTShifted=Xt,cn.isLocal=Zt,cn.isUtcOffset=Kt,cn.isUtc=Jt,cn.isUTC=Jt,cn.zoneAbbr=di,cn.zoneName=li,cn.dates=rt("dates accessor is deprecated. Use date instead.",en),cn.months=rt("months accessor is deprecated. Use month instead",$),cn.years=rt("years accessor is deprecated. Use year instead",Go),cn.zone=rt("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",Wt);var pn=cn,fn={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},mn={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},vn="Invalid date",gn="%d",yn=/\d{1,2}/,bn={future:"in %s",past:"%s ago",s:"a few seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},_n=_.prototype;_n._calendar=fn,_n.calendar=pi,_n._longDateFormat=mn,_n.longDateFormat=fi,_n._invalidDate=vn,_n.invalidDate=mi,_n._ordinal=gn,_n.ordinal=vi,_n._ordinalParse=yn,_n.preparse=gi,_n.postformat=gi,_n._relativeTime=bn,_n.relativeTime=yi,_n.pastFuture=bi,_n.set=_i,_n.months=Z,_n._months=No,_n.monthsShort=K,_n._monthsShort=zo,_n.monthsParse=J,_n._monthsRegex=Ao,_n.monthsRegex=it,_n._monthsShortRegex=Lo,_n.monthsShortRegex=et,_n.week=Ye,_n._week=tn,_n.firstDayOfYear=Ve,_n.firstDayOfWeek=Ge,_n.weekdays=Ze,_n._weekdays=on,_n.weekdaysMin=Je,_n._weekdaysMin=sn,_n.weekdaysShort=Ke,_n._weekdaysShort=nn,_n.weekdaysParse=Qe,_n.isPM=ri,_n._meridiemParse=rn,_n.meridiem=ai,O("en",{ordinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(t){var e=t%10,i=1===y(t%100/10)?"th":1===e?"st":2===e?"nd":3===e?"rd":"th";return t+i}}),e.lang=rt("moment.lang is deprecated. Use moment.locale instead.",O),e.langData=rt("moment.langData is deprecated. Use moment.localeData instead.",D);var wn=Math.abs,xn=Bi("ms"),kn=Bi("s"),On=Bi("m"),Mn=Bi("h"),Dn=Bi("d"),Cn=Bi("w"),Sn=Bi("M"),Tn=Bi("y"),En=ji("milliseconds"),Pn=ji("seconds"),In=ji("minutes"),Nn=ji("hours"),zn=ji("days"),Ln=ji("months"),An=ji("years"),Fn=Math.round,Bn={s:45,m:45,h:22,d:26,M:11},Rn=Math.abs,jn=Lt.prototype;jn.abs=Si,jn.add=Ei,jn.subtract=Pi,jn.as=Ai,jn.asMilliseconds=xn,jn.asSeconds=kn,jn.asMinutes=On,jn.asHours=Mn,jn.asDays=Dn,jn.asWeeks=Cn,jn.asMonths=Sn,jn.asYears=Tn,jn.valueOf=Fi,jn._bubble=Ni,jn.get=Ri,jn.milliseconds=En,jn.seconds=Pn,jn.minutes=In,jn.hours=Nn,jn.days=zn,jn.weeks=Hi,jn.months=Ln,jn.years=An,jn.humanize=Vi,jn.toISOString=Ui,jn.toString=Ui,jn.toJSON=Ui,jn.locale=we,jn.localeData=xe,jn.toIsoString=rt("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Ui),jn.lang=$o,A("X",0,0,"unix"),A("x",0,0,"valueOf"),H("x",vo),H("X",bo),V("X",function(t,e,i){i._d=new Date(1e3*parseFloat(t,10))}),V("x",function(t,e,i){i._d=new Date(y(t))}),e.version="2.11.2",i(Pt),e.fn=pn,e.min=Nt,e.max=zt,e.now=qo,e.utc=h,e.unix=ui,e.months=ki,e.isDate=n,e.locale=O,e.invalid=c,e.duration=Qt,e.isMoment=v,e.weekdays=Mi,e.parseZone=ci,e.localeData=D,e.isDuration=At,e.monthsShort=Oi,e.weekdaysMin=Ci,e.defineLocale=M,e.weekdaysShort=Di,e.normalizeUnits=S,e.relativeTimeThreshold=Gi,e.prototype=pn;var Hn=e;return Hn})}).call(e,i(4)(t))},function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children=[],t.webpackPolyfill=1),t}},function(t,e){function i(t){throw new Error("Cannot find module '"+t+"'.")}i.keys=function(){return[]},i.resolve=i,t.exports=i,i.id=5},function(t,e){(function(e){function i(t,e,i){var o=e&&i||0,n=0;for(e=e||[],t.toLowerCase().replace(/[0-9a-f]{2}/g,function(t){16>n&&(e[o+n++]=u[t])});16>n;)e[o+n++]=0;return e}function o(t,e){var i=e||0,o=l;return o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+"-"+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]+o[t[i++]]}function n(t,e,i){var n=e&&i||0,s=e||[];t=t||{};var r=void 0!==t.clockseq?t.clockseq:m,a=void 0!==t.msecs?t.msecs:(new Date).getTime(),h=void 0!==t.nsecs?t.nsecs:g+1,d=a-v+(h-g)/1e4;if(0>d&&void 0===t.clockseq&&(r=r+1&16383),(0>d||a>v)&&void 0===t.nsecs&&(h=0),h>=1e4)throw new Error("uuid.v1(): Can't create more than 10M uuids/sec");v=a,g=h,m=r,a+=122192928e5;var l=(1e4*(268435455&a)+h)%4294967296;s[n++]=l>>>24&255,s[n++]=l>>>16&255,s[n++]=l>>>8&255,s[n++]=255&l;var u=a/4294967296*1e4&268435455;s[n++]=u>>>8&255,s[n++]=255&u,s[n++]=u>>>24&15|16,s[n++]=u>>>16&255,s[n++]=r>>>8|128,s[n++]=255&r;for(var c=t.node||f,p=0;6>p;p++)s[n+p]=c[p];return e?e:o(s)}function s(t,e,i){var n=e&&i||0;"string"==typeof t&&(e="binary"==t?new Array(16):null,t=null),t=t||{};var s=t.random||(t.rng||r)();if(s[6]=15&s[6]|64,s[8]=63&s[8]|128,e)for(var a=0;16>a;a++)e[n+a]=s[a];return e||o(s)}var r,a="undefined"!=typeof window?window:"undefined"!=typeof e?e:null;if(a&&a.crypto&&crypto.getRandomValues){var h=new Uint8Array(16);r=function(){return crypto.getRandomValues(h),h}}if(!r){var d=new Array(16);r=function(){for(var t,e=0;16>e;e++)0===(3&e)&&(t=4294967296*Math.random()),d[e]=t>>>((3&e)<<3)&255;return d}}for(var l=[],u={},c=0;256>c;c++)l[c]=(c+256).toString(16).substr(1),u[l[c]]=c;var p=r(),f=[1|p[0],p[1],p[2],p[3],p[4],p[5]],m=16383&(p[6]<<8|p[7]),v=0,g=0,y=s;y.v1=n,y.v4=s,y.parse=i,y.unparse=o,t.exports=y}).call(e,function(){return this}())},function(t,e){e.prepareElements=function(t){for(var e in t)t.hasOwnProperty(e)&&(t[e].redundant=t[e].used,t[e].used=[])},e.cleanupElements=function(t){for(var e in t)if(t.hasOwnProperty(e)&&t[e].redundant){for(var i=0;i0?(o=e[t].redundant[0],e[t].redundant.shift()):(o=document.createElementNS("http://www.w3.org/2000/svg",t),i.appendChild(o)):(o=document.createElementNS("http://www.w3.org/2000/svg",t),e[t]={used:[],redundant:[]},i.appendChild(o)),e[t].used.push(o),o},e.getDOMElement=function(t,e,i,o){var n;return e.hasOwnProperty(t)?e[t].redundant.length>0?(n=e[t].redundant[0],e[t].redundant.shift()):(n=document.createElement(t),void 0!==o?i.insertBefore(n,o):i.appendChild(n)):(n=document.createElement(t),e[t]={used:[],redundant:[]},void 0!==o?i.insertBefore(n,o):i.appendChild(n)),e[t].used.push(n),n},e.drawPoint=function(t,i,o,n,s,r){var a;if("circle"==o.style?(a=e.getSVGElement("circle",n,s),a.setAttributeNS(null,"cx",t),a.setAttributeNS(null,"cy",i),a.setAttributeNS(null,"r",.5*o.size)):(a=e.getSVGElement("rect",n,s),a.setAttributeNS(null,"x",t-.5*o.size),a.setAttributeNS(null,"y",i-.5*o.size),a.setAttributeNS(null,"width",o.size),a.setAttributeNS(null,"height",o.size)),void 0!==o.styles&&a.setAttributeNS(null,"style",o.styles),a.setAttributeNS(null,"class",o.className+" vis-point"),r){var h=e.getSVGElement("text",n,s);r.xOffset&&(t+=r.xOffset),r.yOffset&&(i+=r.yOffset),r.content&&(h.textContent=r.content),r.className&&h.setAttributeNS(null,"class",r.className+" vis-label"),h.setAttributeNS(null,"x",t),h.setAttributeNS(null,"y",i)}return a},e.drawBar=function(t,i,o,n,s,r,a,h){if(0!=n){0>n&&(n*=-1,i-=n);var d=e.getSVGElement("rect",r,a);d.setAttributeNS(null,"x",t-.5*o),d.setAttributeNS(null,"y",i),d.setAttributeNS(null,"width",o),d.setAttributeNS(null,"height",n),d.setAttributeNS(null,"class",s),h&&d.setAttributeNS(null,"style",h)}}},function(t,e,i){function o(t,e){if(t&&!Array.isArray(t)&&(e=t,t=null),this._options=e||{},this._data={},this.length=0,this._fieldId=this._options.fieldId||"id",this._type={},this._options.type)for(var i=Object.keys(this._options.type),o=0,n=i.length;n>o;o++){var s=i[o],r=this._options.type[s];"Date"==r||"ISODate"==r||"ASPDate"==r?this._type[s]="Date":this._type[s]=r}if(this._options.convert)throw new Error('Option "convert" is deprecated. Use "type" instead.');this._subscribers={},t&&this.add(t),this.setOptions(e)}var n=i(1),s=i(9);o.prototype.setOptions=function(t){t&&void 0!==t.queue&&(t.queue===!1?this._queue&&(this._queue.destroy(),delete this._queue):(this._queue||(this._queue=s.extend(this,{replace:["add","update","remove"]})),"object"==typeof t.queue&&this._queue.setOptions(t.queue)))},o.prototype.on=function(t,e){var i=this._subscribers[t];i||(i=[],this._subscribers[t]=i),i.push({callback:e})},o.prototype.subscribe=function(){throw new Error("DataSet.subscribe is deprecated. Use DataSet.on instead.")},o.prototype.off=function(t,e){var i=this._subscribers[t];i&&(this._subscribers[t]=i.filter(function(t){return t.callback!=e}))},o.prototype.unsubscribe=function(){throw new Error("DataSet.unsubscribe is deprecated. Use DataSet.off instead.")},o.prototype._trigger=function(t,e,i){if("*"==t)throw new Error("Cannot trigger event *");var o=[];t in this._subscribers&&(o=o.concat(this._subscribers[t])),"*"in this._subscribers&&(o=o.concat(this._subscribers["*"]));for(var n=0,s=o.length;s>n;n++){var r=o[n];r.callback&&r.callback(t,e,i||null)}},o.prototype.add=function(t,e){var i,o=[],n=this;if(Array.isArray(t))for(var s=0,r=t.length;r>s;s++)i=n._addItem(t[s]),o.push(i);else{if(!(t instanceof Object))throw new Error("Unknown dataType");i=n._addItem(t),o.push(i)}return o.length&&this._trigger("add",{items:o},e),o},o.prototype.update=function(t,e){var i=[],o=[],s=[],r=[],a=this,h=a._fieldId,d=function(t){var e=t[h];if(a._data[e]){var d=n.extend({},a._data[e]);e=a._updateItem(t),o.push(e),r.push(t),s.push(d)}else e=a._addItem(t),i.push(e)};if(Array.isArray(t))for(var l=0,u=t.length;u>l;l++)t[l]instanceof Object?d(t[l]):console.warn("Ignoring input item, which is not an object at index "+l);else{if(!(t instanceof Object))throw new Error("Unknown dataType");d(t)}if(i.length&&this._trigger("add",{items:i},e),o.length){var c={items:o,oldData:s,data:r};this._trigger("update",c,e)}return i.concat(o)},o.prototype.get=function(t){var e,i,o,s=this,r=n.getType(arguments[0]);"String"==r||"Number"==r?(e=arguments[0],o=arguments[1]):"Array"==r?(i=arguments[0],o=arguments[1]):o=arguments[0];var a;if(o&&o.returnType){var h=["Array","Object"];a=-1==h.indexOf(o.returnType)?"Array":o.returnType}else a="Array";var d,l,u,c,p,f=o&&o.type||this._options.type,m=o&&o.filter,v=[];if(void 0!=e)d=s._getItem(e,f),d&&m&&!m(d)&&(d=null);else if(void 0!=i)for(c=0,p=i.length;p>c;c++)d=s._getItem(i[c],f),(!m||m(d))&&v.push(d);else for(l=Object.keys(this._data),c=0,p=l.length;p>c;c++)u=l[c],d=s._getItem(u,f),(!m||m(d))&&v.push(d);if(o&&o.order&&void 0==e&&this._sort(v,o.order),o&&o.fields){var g=o.fields;if(void 0!=e)d=this._filterFields(d,g);else for(c=0,p=v.length;p>c;c++)v[c]=this._filterFields(v[c],g)}if("Object"==a){var y,b={};for(c=0,p=v.length;p>c;c++)y=v[c],b[y.id]=y;return b}return void 0!=e?d:v},o.prototype.getIds=function(t){var e,i,o,n,s,r=this._data,a=t&&t.filter,h=t&&t.order,d=t&&t.type||this._options.type,l=Object.keys(r),u=[];if(a)if(h){for(s=[],e=0,i=l.length;i>e;e++)o=l[e],n=this._getItem(o,d),a(n)&&s.push(n);for(this._sort(s,h),e=0,i=s.length;i>e;e++)u.push(s[e][this._fieldId])}else for(e=0,i=l.length;i>e;e++)o=l[e],n=this._getItem(o,d),a(n)&&u.push(n[this._fieldId]);else if(h){for(s=[],e=0,i=l.length;i>e;e++)o=l[e],s.push(r[o]);for(this._sort(s,h),e=0,i=s.length;i>e;e++)u.push(s[e][this._fieldId])}else for(e=0,i=l.length;i>e;e++)o=l[e],n=r[o],u.push(n[this._fieldId]);return u},o.prototype.getDataSet=function(){return this},o.prototype.forEach=function(t,e){var i,o,n,s,r=e&&e.filter,a=e&&e.type||this._options.type,h=this._data,d=Object.keys(h);if(e&&e.order){var l=this.get(e);for(i=0,o=l.length;o>i;i++)n=l[i],s=n[this._fieldId],t(n,s)}else for(i=0,o=d.length;o>i;i++)s=d[i],n=this._getItem(s,a),(!r||r(n))&&t(n,s)},o.prototype.map=function(t,e){var i,o,n,s,r=e&&e.filter,a=e&&e.type||this._options.type,h=[],d=this._data,l=Object.keys(d);for(i=0,o=l.length;o>i;i++)n=l[i],s=this._getItem(n,a),(!r||r(s))&&h.push(t(s,n));return e&&e.order&&this._sort(h,e.order),h},o.prototype._filterFields=function(t,e){if(!t)return t;var i,o,n={},s=Object.keys(t),r=s.length;if(Array.isArray(e))for(i=0;r>i;i++)o=s[i],-1!=e.indexOf(o)&&(n[o]=t[o]);else for(i=0;r>i;i++)o=s[i],e.hasOwnProperty(o)&&(n[e[o]]=t[o]);return n},o.prototype._sort=function(t,e){if(n.isString(e)){var i=e;t.sort(function(t,e){var o=t[i],n=e[i];return o>n?1:n>o?-1:0})}else{if("function"!=typeof e)throw new TypeError("Order must be a function or a string");t.sort(e)}},o.prototype.remove=function(t,e){var i,o,n,s=[];if(Array.isArray(t))for(i=0,o=t.length;o>i;i++)n=this._remove(t[i]), +null!=n&&s.push(n);else n=this._remove(t),null!=n&&s.push(n);return s.length&&this._trigger("remove",{items:s},e),s},o.prototype._remove=function(t){if(n.isNumber(t)||n.isString(t)){if(this._data[t])return delete this._data[t],this.length--,t}else if(t instanceof Object){var e=t[this._fieldId];if(void 0!==e&&this._data[e])return delete this._data[e],this.length--,e}return null},o.prototype.clear=function(t){var e=Object.keys(this._data);return this._data={},this.length=0,this._trigger("remove",{items:e},t),e},o.prototype.max=function(t){var e,i,o=this._data,n=Object.keys(o),s=null,r=null;for(e=0,i=n.length;i>e;e++){var a=n[e],h=o[a],d=h[t];null!=d&&(!s||d>r)&&(s=h,r=d)}return s},o.prototype.min=function(t){var e,i,o=this._data,n=Object.keys(o),s=null,r=null;for(e=0,i=n.length;i>e;e++){var a=n[e],h=o[a],d=h[t];null!=d&&(!s||r>d)&&(s=h,r=d)}return s},o.prototype.distinct=function(t){var e,i,o,s=this._data,r=Object.keys(s),a=[],h=this._options.type&&this._options.type[t]||null,d=0;for(e=0,o=r.length;o>e;e++){var l=r[e],u=s[l],c=u[t],p=!1;for(i=0;d>i;i++)if(a[i]==c){p=!0;break}p||void 0===c||(a[d]=c,d++)}if(h)for(e=0,o=a.length;o>e;e++)a[e]=n.convert(a[e],h);return a},o.prototype._addItem=function(t){var e=t[this._fieldId];if(void 0!=e){if(this._data[e])throw new Error("Cannot add item: item with id "+e+" already exists")}else e=n.randomUUID(),t[this._fieldId]=e;var i,o,s={},r=Object.keys(t);for(i=0,o=r.length;o>i;i++){var a=r[i],h=this._type[a];s[a]=n.convert(t[a],h)}return this._data[e]=s,this.length++,e},o.prototype._getItem=function(t,e){var i,o,s,r,a=this._data[t];if(!a)return null;var h={},d=Object.keys(a);if(e)for(s=0,r=d.length;r>s;s++)i=d[s],o=a[i],h[i]=n.convert(o,e[i]);else for(s=0,r=d.length;r>s;s++)i=d[s],o=a[i],h[i]=o;return h},o.prototype._updateItem=function(t){var e=t[this._fieldId];if(void 0==e)throw new Error("Cannot update item: item has no id (item: "+JSON.stringify(t)+")");var i=this._data[e];if(!i)throw new Error("Cannot update item: no item with id "+e+" found");for(var o=Object.keys(t),s=0,r=o.length;r>s;s++){var a=o[s],h=this._type[a];i[a]=n.convert(t[a],h)}return e},t.exports=o},function(t,e){function i(t){this.delay=null,this.max=1/0,this._queue=[],this._timeout=null,this._extended=null,this.setOptions(t)}i.prototype.setOptions=function(t){t&&"undefined"!=typeof t.delay&&(this.delay=t.delay),t&&"undefined"!=typeof t.max&&(this.max=t.max),this._flushIfNeeded()},i.extend=function(t,e){var o=new i(e);if(void 0!==t.flush)throw new Error("Target object already has a property flush");t.flush=function(){o.flush()};var n=[{name:"flush",original:void 0}];if(e&&e.replace)for(var s=0;sthis.max&&this.flush(),clearTimeout(this._timeout),this.queue.length>0&&"number"==typeof this.delay){var t=this;this._timeout=setTimeout(function(){t.flush()},this.delay)}},i.prototype.flush=function(){for(;this._queue.length>0;){var t=this._queue.shift();t.fn.apply(t.context||t.fn,t.args||[])}},t.exports=i},function(t,e,i){function o(t,e){this._data=null,this._ids={},this.length=0,this._options=e||{},this._fieldId="id",this._subscribers={};var i=this;this.listener=function(){i._onEvent.apply(i,arguments)},this.setData(t)}var n=i(1),s=i(8);o.prototype.setData=function(t){var e,i,o,n;if(this._data&&(this._data.off&&this._data.off("*",this.listener),e=Object.keys(this._ids),this._ids={},this.length=0,this._trigger("remove",{items:e})),this._data=t,this._data){for(this._fieldId=this._options.fieldId||this._data&&this._data.options&&this._data.options.fieldId||"id",e=this._data.getIds({filter:this._options&&this._options.filter}),o=0,n=e.length;n>o;o++)i=e[o],this._ids[i]=!0;this.length=e.length,this._trigger("add",{items:e}),this._data.on&&this._data.on("*",this.listener)}},o.prototype.refresh=function(){var t,e,i,o=this._data.getIds({filter:this._options&&this._options.filter}),n=Object.keys(this._ids),s={},r=[],a=[];for(e=0,i=o.length;i>e;e++)t=o[e],s[t]=!0,this._ids[t]||(r.push(t),this._ids[t]=!0);for(e=0,i=n.length;i>e;e++)t=n[e],s[t]||(a.push(t),delete this._ids[t]);this.length+=r.length-a.length,r.length&&this._trigger("add",{items:r}),a.length&&this._trigger("remove",{items:a})},o.prototype.get=function(t){var e,i,o,s=this,r=n.getType(arguments[0]);"String"==r||"Number"==r||"Array"==r?(e=arguments[0],i=arguments[1],o=arguments[2]):(i=arguments[0],o=arguments[1]);var a=n.extend({},this._options,i);this._options.filter&&i&&i.filter&&(a.filter=function(t){return s._options.filter(t)&&i.filter(t)});var h=[];return void 0!=e&&h.push(e),h.push(a),h.push(o),this._data&&this._data.get.apply(this._data,h)},o.prototype.getIds=function(t){var e;if(this._data){var i,o=this._options.filter;i=t&&t.filter?o?function(e){return o(e)&&t.filter(e)}:t.filter:o,e=this._data.getIds({filter:i,order:t&&t.order})}else e=[];return e},o.prototype.map=function(t,e){var i=[];if(this._data){var o,n=this._options.filter;o=e&&e.filter?n?function(t){return n(t)&&e.filter(t)}:e.filter:n,i=this._data.map(t,{filter:o,order:e&&e.order})}else i=[];return i},o.prototype.getDataSet=function(){for(var t=this;t instanceof o;)t=t._data;return t||null},o.prototype._onEvent=function(t,e,i){var o,n,s,r,a=e&&e.items,h=this._data,d=[],l=[],u=[],c=[];if(a&&h){switch(t){case"add":for(o=0,n=a.length;n>o;o++)s=a[o],r=this.get(s),r&&(this._ids[s]=!0,l.push(s));break;case"update":for(o=0,n=a.length;n>o;o++)s=a[o],r=this.get(s),r?this._ids[s]?(u.push(s),d.push(e.data[o])):(this._ids[s]=!0,l.push(s)):this._ids[s]&&(delete this._ids[s],c.push(s));break;case"remove":for(o=0,n=a.length;n>o;o++)s=a[o],this._ids[s]&&(delete this._ids[s],c.push(s))}this.length+=l.length-c.length,l.length&&this._trigger("add",{items:l},i),u.length&&this._trigger("update",{items:u,data:d},i),c.length&&this._trigger("remove",{items:c},i)}},o.prototype.on=s.prototype.on,o.prototype.off=s.prototype.off,o.prototype._trigger=s.prototype._trigger,o.prototype.subscribe=o.prototype.on,o.prototype.unsubscribe=o.prototype.off,t.exports=o},function(t,e,i){function o(t,e,i){if(!(this instanceof o))throw new SyntaxError("Constructor must be called with the new operator");this.containerElement=t,this.width="400px",this.height="400px",this.margin=10,this.defaultXCenter="55%",this.defaultYCenter="50%",this.xLabel="x",this.yLabel="y",this.zLabel="z";var n=function(t){return t};this.xValueLabel=n,this.yValueLabel=n,this.zValueLabel=n,this.filterLabel="time",this.legendLabel="value",this.style=o.STYLE.DOT,this.showPerspective=!0,this.showGrid=!0,this.keepAspectRatio=!0,this.showShadow=!1,this.showGrayBottom=!1,this.showTooltip=!1,this.verticalRatio=.5,this.animationInterval=1e3,this.animationPreload=!1,this.camera=new c,this.camera.setArmRotation(1,.5),this.camera.setArmLength(1.7),this.eye=new l(0,0,-1),this.dataTable=null,this.dataPoints=null,this.colX=void 0,this.colY=void 0,this.colZ=void 0,this.colValue=void 0,this.colFilter=void 0,this.xMin=0,this.xStep=void 0,this.xMax=1,this.yMin=0,this.yStep=void 0,this.yMax=1,this.zMin=0,this.zStep=void 0,this.zMax=1,this.valueMin=0,this.valueMax=1,this.xBarWidth=1,this.yBarWidth=1,this.axisColor="#4D4D4D",this.gridColor="#D3D3D3",this.dataColor={fill:"#7DC1FF",stroke:"#3267D2",strokeWidth:1},this.dotSizeRatio=.02,this.create(),this.setOptions(i),e&&this.setData(e)}function n(t){return"clientX"in t?t.clientX:t.targetTouches[0]&&t.targetTouches[0].clientX||0}function s(t){return"clientY"in t?t.clientY:t.targetTouches[0]&&t.targetTouches[0].clientY||0}var r=i(12),a=i(8),h=i(10),d=i(1),l=i(13),u=i(14),c=i(15),p=i(16),f=i(17),m=i(18);r(o.prototype),o.prototype._setScale=function(){this.scale=new l(1/(this.xMax-this.xMin),1/(this.yMax-this.yMin),1/(this.zMax-this.zMin)),this.keepAspectRatio&&(this.scale.x3&&(this.colFilter=3);else{if(this.style!==o.STYLE.DOTCOLOR&&this.style!==o.STYLE.DOTSIZE&&this.style!==o.STYLE.BARCOLOR&&this.style!==o.STYLE.BARSIZE)throw'Unknown style "'+this.style+'"';this.colX=0,this.colY=1,this.colZ=2,this.colValue=3,t.getNumberOfColumns()>4&&(this.colFilter=4)}},o.prototype.getNumberOfRows=function(t){return t.length},o.prototype.getNumberOfColumns=function(t){var e=0;for(var i in t[0])t[0].hasOwnProperty(i)&&e++;return e},o.prototype.getDistinctValues=function(t,e){for(var i=[],o=0;ot[o][e]&&(i.min=t[o][e]),i.maxt;t++){var f=(t-c)/(p-c),v=240*f,g=this._hsv2rgb(v,1,1);u.strokeStyle=g,u.beginPath(),u.moveTo(h,r+t),u.lineTo(a,r+t),u.stroke()}u.strokeStyle=this.axisColor,u.strokeRect(h,r,i,s)}if(this.style===o.STYLE.DOTSIZE&&(u.strokeStyle=this.axisColor,u.fillStyle=this.dataColor.fill,u.beginPath(),u.moveTo(h,r),u.lineTo(a,r),u.lineTo(a-i+e,d),u.lineTo(h,d),u.closePath(),u.fill(),u.stroke()),this.style===o.STYLE.DOTCOLOR||this.style===o.STYLE.DOTSIZE){var y=5,b=new m(this.valueMin,this.valueMax,(this.valueMax-this.valueMin)/5,!0);for(b.start(),b.getCurrent()0?this.yMin:this.yMax,n=this._convert3Dto2D(new l(w,r,this.zMin)),Math.cos(2*_)>0?(v.textAlign="center",v.textBaseline="top",n.y+=b):Math.sin(2*_)<0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.axisColor,v.fillText(" "+this.xValueLabel(i.getCurrent())+" ",n.x,n.y),i.next()}for(v.lineWidth=1,o=void 0===this.defaultYStep,i=new m(this.yMin,this.yMax,this.yStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,n=this._convert3Dto2D(new l(s,i.getCurrent(),this.zMin)),Math.cos(2*_)<0?(v.textAlign="center",v.textBaseline="top",n.y+=b):Math.sin(2*_)>0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.axisColor,v.fillText(" "+this.yValueLabel(i.getCurrent())+" ",n.x,n.y),i.next();for(v.lineWidth=1,o=void 0===this.defaultZStep,i=new m(this.zMin,this.zMax,this.zStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,r=Math.sin(_)<0?this.yMin:this.yMax;!i.end();)t=this._convert3Dto2D(new l(s,r,i.getCurrent())),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(t.x-b,t.y),v.stroke(),v.textAlign="right",v.textBaseline="middle",v.fillStyle=this.axisColor,v.fillText(this.zValueLabel(i.getCurrent())+" ",t.x-5,t.y),i.next();v.lineWidth=1,t=this._convert3Dto2D(new l(s,r,this.zMin)),e=this._convert3Dto2D(new l(s,r,this.zMax)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke(),v.lineWidth=1,c=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),p=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(c.x,c.y),v.lineTo(p.x,p.y),v.stroke(),c=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),p=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(c.x,c.y),v.lineTo(p.x,p.y),v.stroke(),v.lineWidth=1,t=this._convert3Dto2D(new l(this.xMin,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMin,this.yMax,this.zMin)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke(),t=this._convert3Dto2D(new l(this.xMax,this.yMin,this.zMin)),e=this._convert3Dto2D(new l(this.xMax,this.yMax,this.zMin)),v.strokeStyle=this.axisColor,v.beginPath(),v.moveTo(t.x,t.y),v.lineTo(e.x,e.y),v.stroke();var x=this.xLabel;x.length>0&&(u=.1/this.scale.y,s=(this.xMin+this.xMax)/2,r=Math.cos(_)>0?this.yMin-u:this.yMax+u,n=this._convert3Dto2D(new l(s,r,this.zMin)),Math.cos(2*_)>0?(v.textAlign="center",v.textBaseline="top"):Math.sin(2*_)<0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.axisColor,v.fillText(x,n.x,n.y));var k=this.yLabel;k.length>0&&(d=.1/this.scale.x,s=Math.sin(_)>0?this.xMin-d:this.xMax+d,r=(this.yMin+this.yMax)/2,n=this._convert3Dto2D(new l(s,r,this.zMin)),Math.cos(2*_)<0?(v.textAlign="center",v.textBaseline="top"):Math.sin(2*_)>0?(v.textAlign="right",v.textBaseline="middle"):(v.textAlign="left",v.textBaseline="middle"),v.fillStyle=this.axisColor,v.fillText(k,n.x,n.y));var O=this.zLabel;O.length>0&&(h=30,s=Math.cos(_)>0?this.xMin:this.xMax,r=Math.sin(_)<0?this.yMin:this.yMax,a=(this.zMin+this.zMax)/2,n=this._convert3Dto2D(new l(s,r,a)),v.textAlign="right",v.textBaseline="middle",v.fillStyle=this.axisColor,v.fillText(O,n.x-h,n.y))},o.prototype._hsv2rgb=function(t,e,i){var o,n,s,r,a,h;switch(r=i*e,a=Math.floor(t/60),h=r*(1-Math.abs(t/60%2-1)),a){case 0:o=r,n=h,s=0;break;case 1:o=h,n=r,s=0;break;case 2:o=0,n=r,s=h;break;case 3:o=0,n=h,s=r;break;case 4:o=h,n=0,s=r;break;case 5:o=r,n=0,s=h;break;default:o=0,n=0,s=0}return"RGB("+parseInt(255*o)+","+parseInt(255*n)+","+parseInt(255*s)+")"},o.prototype._redrawDataGrid=function(){var t,e,i,n,s,r,a,h,d,u,c,p,f=this.frame.canvas,m=f.getContext("2d");if(m.lineJoin="round",m.lineCap="round",!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(s=0;s0}else r=!0;r?(p=(t.point.z+e.point.z+i.point.z+n.point.z)/4,d=240*(1-(p-this.zMin)*this.scale.z/this.verticalRatio),u=1,this.showShadow?(c=Math.min(1+x.x/k/2,1),a=this._hsv2rgb(d,u,c),h=a):(c=1,a=this._hsv2rgb(d,u,c),h=this.axisColor)):(a="gray",h=this.axisColor),m.lineWidth=this._getStrokeWidth(t),m.fillStyle=a,m.strokeStyle=h,m.beginPath(),m.moveTo(t.screen.x,t.screen.y),m.lineTo(e.screen.x,e.screen.y),m.lineTo(n.screen.x,n.screen.y),m.lineTo(i.screen.x,i.screen.y),m.closePath(),m.fill(),m.stroke()}}else for(s=0;sc&&(c=0);var p,f,m;this.style===o.STYLE.DOTCOLOR?(p=240*(1-(d.point.value-this.valueMin)*this.scale.value),f=this._hsv2rgb(p,1,1),m=this._hsv2rgb(p,1,.8)):this.style===o.STYLE.DOTSIZE?(f=this.dataColor.fill,m=this.dataColor.stroke):(p=240*(1-(d.point.z-this.zMin)*this.scale.z/this.verticalRatio),f=this._hsv2rgb(p,1,1),m=this._hsv2rgb(p,1,.8)),i.lineWidth=this._getStrokeWidth(d),i.strokeStyle=m,i.fillStyle=f,i.beginPath(),i.arc(d.screen.x,d.screen.y,c,0,2*Math.PI,!0),i.fill(),i.stroke()}}},o.prototype._redrawDataBar=function(){var t,e,i,n,s=this.frame.canvas,r=s.getContext("2d");if(!(void 0===this.dataPoints||this.dataPoints.length<=0)){for(t=0;t0){for(t=this.dataPoints[0],o.lineWidth=this._getStrokeWidth(t),o.lineJoin="round",o.lineCap="round",o.strokeStyle=this.dataColor.stroke,o.beginPath(),o.moveTo(t.screen.x,t.screen.y),e=1;e0?1:0>t?-1:0}var o=e[0],n=e[1],s=e[2],r=i((n.x-o.x)*(t.y-o.y)-(n.y-o.y)*(t.x-o.x)),a=i((s.x-n.x)*(t.y-n.y)-(s.y-n.y)*(t.x-n.x)),h=i((o.x-s.x)*(t.y-s.y)-(o.y-s.y)*(t.x-s.x));return!(0!=r&&0!=a&&r!=a||0!=a&&0!=h&&a!=h||0!=r&&0!=h&&r!=h)},o.prototype._dataPointFromXY=function(t,e){var i,n=100,s=null,r=null,a=null,h=new u(t,e);if(this.style===o.STYLE.BAR||this.style===o.STYLE.BARCOLOR||this.style===o.STYLE.BARSIZE)for(i=this.dataPoints.length-1;i>=0;i--){s=this.dataPoints[i];var d=s.surfaces;if(d)for(var l=d.length-1;l>=0;l--){var c=d[l],p=c.corners,f=[p[0].screen,p[1].screen,p[2].screen],m=[p[2].screen,p[3].screen,p[0].screen];if(this._insideTriangle(h,f)||this._insideTriangle(h,m))return s}}else for(i=0;ib)&&n>b&&(a=b,r=s)}}return r},o.prototype._showTooltip=function(t){var e,i,o;this.tooltip?(e=this.tooltip.dom.content,i=this.tooltip.dom.line,o=this.tooltip.dom.dot):(e=document.createElement("div"),e.style.position="absolute",e.style.padding="10px",e.style.border="1px solid #4d4d4d",e.style.color="#1a1a1a",e.style.background="rgba(255,255,255,0.7)",e.style.borderRadius="2px",e.style.boxShadow="5px 5px 10px rgba(128,128,128,0.5)",i=document.createElement("div"),i.style.position="absolute",i.style.height="40px",i.style.width="0",i.style.borderLeft="1px solid #4d4d4d",o=document.createElement("div"),o.style.position="absolute",o.style.height="0",o.style.width="0",o.style.border="5px solid #4d4d4d",o.style.borderRadius="5px",this.tooltip={dataPoint:null,dom:{content:e,line:i,dot:o}}),this._hideTooltip(),this.tooltip.dataPoint=t,"function"==typeof this.showTooltip?e.innerHTML=this.showTooltip(t.point):e.innerHTML="
x:"+t.point.x+"
y:"+t.point.y+"
z:"+t.point.z+"
",e.style.left="0",e.style.top="0",this.frame.appendChild(e),this.frame.appendChild(i),this.frame.appendChild(o);var n=e.offsetWidth,s=e.offsetHeight,r=i.offsetHeight,a=o.offsetWidth,h=o.offsetHeight,d=t.screen.x-n/2;d=Math.min(Math.max(d,10),this.frame.clientWidth-10-n),i.style.left=t.screen.x+"px",i.style.top=t.screen.y-r+"px",e.style.left=d+"px",e.style.top=t.screen.y-r-s+"px",o.style.left=t.screen.x-a/2+"px",o.style.top=t.screen.y-h/2+"px"},o.prototype._hideTooltip=function(){if(this.tooltip){this.tooltip.dataPoint=null;for(var t in this.tooltip.dom)if(this.tooltip.dom.hasOwnProperty(t)){var e=this.tooltip.dom[t];e&&e.parentNode&&e.parentNode.removeChild(e)}}},t.exports=o},function(t,e){function i(t){return t?o(t):void 0}function o(t){for(var e in i.prototype)t[e]=i.prototype[e];return t}t.exports=i,i.prototype.on=i.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks[t]=this._callbacks[t]||[]).push(e),this},i.prototype.once=function(t,e){function i(){o.off(t,i),e.apply(this,arguments)}var o=this;return this._callbacks=this._callbacks||{},i.fn=e,this.on(t,i),this},i.prototype.off=i.prototype.removeListener=i.prototype.removeAllListeners=i.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var i=this._callbacks[t];if(!i)return this;if(1==arguments.length)return delete this._callbacks[t],this;for(var o,n=0;no;++o)i[o].apply(this,e)}return this},i.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks[t]||[]},i.prototype.hasListeners=function(t){return!!this.listeners(t).length}},function(t,e){function i(t,e,i){this.x=void 0!==t?t:0,this.y=void 0!==e?e:0,this.z=void 0!==i?i:0}i.subtract=function(t,e){var o=new i;return o.x=t.x-e.x,o.y=t.y-e.y,o.z=t.z-e.z,o},i.add=function(t,e){var o=new i;return o.x=t.x+e.x,o.y=t.y+e.y,o.z=t.z+e.z,o},i.avg=function(t,e){return new i((t.x+e.x)/2,(t.y+e.y)/2,(t.z+e.z)/2)},i.crossProduct=function(t,e){var o=new i;return o.x=t.y*e.z-t.z*e.y,o.y=t.z*e.x-t.x*e.z,o.z=t.x*e.y-t.y*e.x,o},i.prototype.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)},t.exports=i},function(t,e){function i(t,e){this.x=void 0!==t?t:0,this.y=void 0!==e?e:0}t.exports=i},function(t,e,i){function o(){this.armLocation=new n,this.armRotation={},this.armRotation.horizontal=0,this.armRotation.vertical=0,this.armLength=1.7,this.cameraLocation=new n,this.cameraRotation=new n(.5*Math.PI,0,0),this.calculateCameraOrientation()}var n=i(13);o.prototype.setArmLocation=function(t,e,i){this.armLocation.x=t,this.armLocation.y=e,this.armLocation.z=i,this.calculateCameraOrientation()},o.prototype.setArmRotation=function(t,e){void 0!==t&&(this.armRotation.horizontal=t),void 0!==e&&(this.armRotation.vertical=e,this.armRotation.vertical<0&&(this.armRotation.vertical=0),this.armRotation.vertical>.5*Math.PI&&(this.armRotation.vertical=.5*Math.PI)),(void 0!==t||void 0!==e)&&this.calculateCameraOrientation()},o.prototype.getArmRotation=function(){var t={};return t.horizontal=this.armRotation.horizontal,t.vertical=this.armRotation.vertical,t},o.prototype.setArmLength=function(t){void 0!==t&&(this.armLength=t,this.armLength<.71&&(this.armLength=.71),this.armLength>5&&(this.armLength=5),this.calculateCameraOrientation())},o.prototype.getArmLength=function(){return this.armLength},o.prototype.getCameraLocation=function(){return this.cameraLocation},o.prototype.getCameraRotation=function(){return this.cameraRotation},o.prototype.calculateCameraOrientation=function(){this.cameraLocation.x=this.armLocation.x-this.armLength*Math.sin(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical),this.cameraLocation.y=this.armLocation.y-this.armLength*Math.cos(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical),this.cameraLocation.z=this.armLocation.z+this.armLength*Math.sin(this.armRotation.vertical),this.cameraRotation.x=Math.PI/2-this.armRotation.vertical,this.cameraRotation.y=0,this.cameraRotation.z=-this.armRotation.horizontal},t.exports=o},function(t,e,i){function o(t,e,i){this.data=t,this.column=e,this.graph=i,this.index=void 0,this.value=void 0,this.values=i.getDistinctValues(t.get(),this.column),this.values.sort(function(t,e){return t>e?1:e>t?-1:0}),this.values.length>0&&this.selectValue(0),this.dataPoints=[],this.loaded=!1,this.onLoadCallback=void 0,i.animationPreload?(this.loaded=!1,this.loadInBackground()):this.loaded=!0}var n=i(10);o.prototype.isLoaded=function(){return this.loaded},o.prototype.getLoadedProgress=function(){for(var t=this.values.length,e=0;this.dataPoints[e];)e++;return Math.round(e/t*100)},o.prototype.getLabel=function(){return this.graph.filterLabel},o.prototype.getColumn=function(){return this.column},o.prototype.getSelectedValue=function(){return void 0!==this.index?this.values[this.index]:void 0},o.prototype.getValues=function(){return this.values},o.prototype.getValue=function(t){if(t>=this.values.length)throw"Error: index out of range";return this.values[t]},o.prototype._getDataPoints=function(t){if(void 0===t&&(t=this.index),void 0===t)return[];var e;if(this.dataPoints[t])e=this.dataPoints[t];else{var i={};i.column=this.column,i.value=this.values[t];var o=new n(this.data,{filter:function(t){return t[i.column]==i.value}}).get();e=this.graph._getDataPoints(o),this.dataPoints[t]=e}return e},o.prototype.setOnLoadCallback=function(t){this.onLoadCallback=t},o.prototype.selectValue=function(t){if(t>=this.values.length)throw"Error: index out of range";this.index=t,this.value=this.values[t]},o.prototype.loadInBackground=function(t){void 0===t&&(t=0);var e=this.graph.frame;if(t0&&(t--,this.setIndex(t))},o.prototype.next=function(){var t=this.getIndex();t0?this.setIndex(0):this.index=void 0},o.prototype.setIndex=function(t){if(!(to&&(o=0),o>this.values.length-1&&(o=this.values.length-1),o},o.prototype.indexToLeft=function(t){var e=parseFloat(this.frame.bar.style.width)-this.frame.slide.clientWidth-10,i=t/(this.values.length-1)*e,o=i+3;return o},o.prototype._onMouseMove=function(t){var e=t.clientX-this.startClientX,i=this.startSlideX+e,o=this.leftToIndex(i);this.setIndex(o),n.preventDefault()},o.prototype._onMouseUp=function(t){this.frame.style.cursor="auto",n.removeEventListener(document,"mousemove",this.onmousemove),n.removeEventListener(document,"mouseup",this.onmouseup),n.preventDefault()},t.exports=o},function(t,e){function i(t,e,i,o){this._start=0,this._end=0,this._step=1,this.prettyStep=!0,this.precision=5,this._current=0,this.setRange(t,e,i,o)}i.prototype.setRange=function(t,e,i,o){this._start=t?t:0,this._end=e?e:0,this.setStep(i,o)},i.prototype.setStep=function(t,e){void 0===t||0>=t||(void 0!==e&&(this.prettyStep=e),this.prettyStep===!0?this._step=i.calculatePrettyStep(t):this._step=t)},i.calculatePrettyStep=function(t){var e=function(t){return Math.log(t)/Math.LN10},i=Math.pow(10,Math.round(e(t))),o=2*Math.pow(10,Math.round(e(t/2))),n=5*Math.pow(10,Math.round(e(t/5))),s=i;return Math.abs(o-t)<=Math.abs(s-t)&&(s=o),Math.abs(n-t)<=Math.abs(s-t)&&(s=n),0>=s&&(s=1),s},i.prototype.getCurrent=function(){return parseFloat(this._current.toPrecision(this.precision))},i.prototype.getStep=function(){return this._step},i.prototype.start=function(){this._current=this._start-this._start%this._step},i.prototype.next=function(){this._current+=this._step},i.prototype.end=function(){return this._current>this._end},t.exports=i},function(t,e,i){function o(t,e,i,d){if(!(this instanceof o))throw new SyntaxError("Constructor must be called with the new operator");if(!(Array.isArray(i)||i instanceof r||i instanceof a)&&i instanceof Object){var c=d;d=i,i=c}var f=this;this.defaultOptions={start:null,end:null,autoResize:!0,throttleRedraw:0,orientation:{axis:"bottom",item:"bottom"},moment:n,width:null,height:null,maxHeight:null,minHeight:null},this.options=s.deepExtend({},this.defaultOptions),this._create(t),this.components=[],this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{getScale:function(){return f.timeAxis.step.scale},getStep:function(){return f.timeAxis.step.step},toScreen:f._toScreen.bind(f),toGlobalScreen:f._toGlobalScreen.bind(f),toTime:f._toTime.bind(f),toGlobalTime:f._toGlobalTime.bind(f)}},this.range=new h(this.body),this.components.push(this.range),this.body.range=this.range,this.timeAxis=new l(this.body),this.timeAxis2=null,this.components.push(this.timeAxis),this.currentTime=new u(this.body),this.components.push(this.currentTime),this.itemSet=new p(this.body),this.components.push(this.itemSet),this.itemsData=null,this.groupsData=null,this.on("tap",function(t){f.emit("click",f.getEventProperties(t))}),this.on("doubletap",function(t){f.emit("doubleClick",f.getEventProperties(t))}),this.dom.root.oncontextmenu=function(t){f.emit("contextmenu",f.getEventProperties(t))},this.fitDone=!1,this.on("changed",function(){if(null!=this.itemsData&&!f.fitDone)if(f.fitDone=!0,void 0!=f.options.start||void 0!=f.options.end){if(void 0==f.options.start||void 0==f.options.end)var t=f.getItemRange();var e=void 0!=f.options.start?f.options.start:t.min,i=void 0!=f.options.end?f.options.end:t.max;f.setWindow(e,i,{animation:!1})}else f.fit({animation:!1})}),d&&this.setOptions(d),i&&this.setGroups(i),e&&this.setItems(e),this._redraw()}var n=(i(12),i(20),i(2)),s=i(1),r=i(8),a=i(10),h=i(23),d=i(27),l=i(38),u=i(43),c=i(41),p=i(28),f=i(44),m=i(46)["default"],v=i(46).printStyle,g=i(47).allOptions,y=i(47).configureOptions;o.prototype=new d,o.prototype._createConfigurator=function(){return new f(this,this.dom.container,y)},o.prototype.redraw=function(){this.itemSet&&this.itemSet.markDirty({refreshItems:!0}),this._redraw()},o.prototype.setOptions=function(t){var e=m.validate(t,g);if(e===!0&&console.log("%cErrors have been found in the supplied options object.",v),d.prototype.setOptions.call(this,t),"type"in t&&t.type!==this.options.type){this.options.type=t.type;var i=this.itemsData;if(i){var o=this.getSelection();this.setItems(null),this.setItems(i),this.setSelection(o)}}},o.prototype.setItems=function(t){var e;e=t?t instanceof r||t instanceof a?t:new r(t,{type:{start:"Date",end:"Date"}}):null,this.itemsData=e,this.itemSet&&this.itemSet.setItems(e)},o.prototype.setGroups=function(t){var e;e=t?t instanceof r||t instanceof a?t:new r(t):null,this.groupsData=e,this.itemSet.setGroups(e)},o.prototype.setData=function(t){t&&t.groups&&this.setGroups(t.groups),t&&t.items&&this.setItems(t.items)},o.prototype.setSelection=function(t,e){this.itemSet&&this.itemSet.setSelection(t),e&&e.focus&&this.focus(t,e)},o.prototype.getSelection=function(){return this.itemSet&&this.itemSet.getSelection()||[]},o.prototype.focus=function(t,e){if(this.itemsData&&void 0!=t){var i=Array.isArray(t)?t:[t],o=this.itemsData.getDataSet().get(i,{type:{start:"Date",end:"Date"}}),n=null,s=null;if(o.forEach(function(t){var e=t.start.valueOf(),i="end"in t?t.end.valueOf():t.start.valueOf();(null===n||n>e)&&(n=e),(null===s||i>s)&&(s=i)}),null!==n&&null!==s){var r=(n+s)/2,a=Math.max(this.range.end-this.range.start,1.1*(s-n)),h=e&&void 0!==e.animation?e.animation:!0;this.range.setRange(r-a/2,r+a/2,h)}}},o.prototype.fit=function(t){var e=t&&void 0!==t.animation?t.animation:!0,i=this.getItemRange();this.range.setRange(i.min,i.max,e)},o.prototype.getItemRange=function(){var t=this,e=this.getDataRange(),i=null!==e.min?e.min.valueOf():null,o=null!==e.max?e.max.valueOf():null,n=null,r=null;if(null!=i&&null!=o){var a,h,d,l,u;!function(){var e=function(t){return s.convert(t.data.start,"Date").valueOf()},c=function(t){var e=void 0!=t.data.end?t.data.end:t.data.start;return s.convert(e,"Date").valueOf()};a=o-i,0>=a&&(a=10),h=a/t.props.center.width,s.forEach(t.itemSet.items,function(t){t.show(),t.repositionX();var s=e(t),a=c(t),d=s-(t.getWidthLeft()+10)*h,l=a+(t.getWidthRight()+10)*h;i>d&&(i=d,n=t),l>o&&(o=l,r=t)}.bind(t)),n&&r&&(d=n.getWidthLeft()+10,l=r.getWidthRight()+10,u=t.props.center.width-d-l,u>0&&(i=e(n)-d*a/u,o=c(r)+l*a/u))}()}return{min:null!=i?new Date(i):null,max:null!=o?new Date(o):null}},o.prototype.getDataRange=function(){var t=null,e=null,i=this.itemsData&&this.itemsData.getDataSet();return i&&i.forEach(function(i){var o=s.convert(i.start,"Date").valueOf(),n=s.convert(void 0!=i.end?i.end:i.start,"Date").valueOf();(null===t||t>o)&&(t=o),(null===e||n>e)&&(e=n)}),{min:null!=t?new Date(t):null,max:null!=e?new Date(e):null}},o.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=e-s.getAbsoluteLeft(this.dom.centerContainer),n=i-s.getAbsoluteTop(this.dom.centerContainer),r=this.itemSet.itemFromTarget(t),a=this.itemSet.groupFromTarget(t),h=c.customTimeFromTarget(t),d=this.itemSet.options.snap||null,l=this.body.util.getScale(),u=this.body.util.getStep(),p=this._toTime(o),f=d?d(p,l,u):p,m=s.getTarget(t),v=null;return null!=r?v="item":null!=h?v="custom-time":s.hasParent(m,this.timeAxis.dom.foreground)?v="axis":this.timeAxis2&&s.hasParent(m,this.timeAxis2.dom.foreground)?v="axis":s.hasParent(m,this.itemSet.dom.labelSet)?v="group-label":s.hasParent(m,this.currentTime.bar)?v="current-time":s.hasParent(m,this.dom.center)&&(v="background"),{event:t,item:r?r.id:null,group:a?a.groupId:null,what:v,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:n,time:p,snappedTime:f}},t.exports=o},function(t,e,i){if("undefined"!=typeof window){var o=i(21),n=window.Hammer||i(22);t.exports=o(n,{preventDefault:"mouse"})}else t.exports=function(){throw Error("hammer.js is only available in a browser, not in node.js.")}},function(t,e,i){var o,n,s;!function(i){n=[],o=i,s="function"==typeof o?o.apply(e,n):o,!(void 0!==s&&(t.exports=s))}(function(){var t=null;return function e(i,o){function n(t){return t.match(/[^ ]+/g)}function s(e){if("hammer.input"!==e.type){if(e.srcEvent._handled||(e.srcEvent._handled={}),e.srcEvent._handled[e.type])return;e.srcEvent._handled[e.type]=!0}var i=!1;e.stopPropagation=function(){i=!0};var o=e.srcEvent.stopPropagation;"function"==typeof o&&(e.srcEvent.stopPropagation=function(){o(),e.stopPropagation()}),e.firstTarget=t;for(var n=t;n&&!i;){var s=n.hammer;if(s)for(var r,a=0;a0?d._handlers[t]=o:(i.off(t,s),delete d._handlers[t]))}),d},d.emit=function(e,o){t=o.target,i.emit(e,o)},d.destroy=function(){var t=i.element.hammer,e=t.indexOf(d);-1!==e&&t.splice(e,1),t.length||delete i.element.hammer,d._handlers={},i.destroy()},d}})},function(t,e,i){var o;!function(n,s,r,a){function h(t,e,i){return setTimeout(p(t,i),e)}function d(t,e,i){return Array.isArray(t)?(l(t,i[e],i),!0):!1}function l(t,e,i){var o;if(t)if(t.forEach)t.forEach(e,i);else if(t.length!==a)for(o=0;o\s*\(/gm,"{anonymous}()@"):"Unknown Stack Trace",s=n.console&&(n.console.warn||n.console.log);return s&&s.call(n.console,o,i),t.apply(this,arguments)}}function c(t,e,i){var o,n=e.prototype;o=t.prototype=Object.create(n),o.constructor=t,o._super=n,i&&ut(o,i)}function p(t,e){return function(){return t.apply(e,arguments)}}function f(t,e){return typeof t==ft?t.apply(e?e[0]||a:a,e):t}function m(t,e){return t===a?e:t}function v(t,e,i){l(_(e),function(e){t.addEventListener(e,i,!1)})}function g(t,e,i){l(_(e),function(e){t.removeEventListener(e,i,!1)})}function y(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function b(t,e){return t.indexOf(e)>-1}function _(t){return t.trim().split(/\s+/g)}function w(t,e,i){if(t.indexOf&&!i)return t.indexOf(e);for(var o=0;oi[e]}):o.sort()),o}function O(t,e){for(var i,o,n=e[0].toUpperCase()+e.slice(1),s=0;s1&&!i.firstMultiple?i.firstMultiple=N(e):1===n&&(i.firstMultiple=!1);var s=i.firstInput,r=i.firstMultiple,a=r?r.center:s.center,h=e.center=z(o);e.timeStamp=gt(),e.deltaTime=e.timeStamp-s.timeStamp,e.angle=B(a,h),e.distance=F(a,h),P(i,e),e.offsetDirection=A(e.deltaX,e.deltaY);var d=L(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=d.x,e.overallVelocityY=d.y,e.overallVelocity=vt(d.x)>vt(d.y)?d.x:d.y,e.scale=r?j(r.pointers,o):1,e.rotation=r?R(r.pointers,o):0,e.maxPointers=i.prevInput?e.pointers.length>i.prevInput.maxPointers?e.pointers.length:i.prevInput.maxPointers:e.pointers.length,I(i,e);var l=t.element;y(e.srcEvent.target,l)&&(l=e.srcEvent.target),e.target=l}function P(t,e){var i=e.center,o=t.offsetDelta||{},n=t.prevDelta||{},s=t.prevInput||{};(e.eventType===Et||s.eventType===It)&&(n=t.prevDelta={x:s.deltaX||0,y:s.deltaY||0},o=t.offsetDelta={x:i.x,y:i.y}),e.deltaX=n.x+(i.x-o.x),e.deltaY=n.y+(i.y-o.y)}function I(t,e){var i,o,n,s,r=t.lastInterval||e,h=e.timeStamp-r.timeStamp;if(e.eventType!=Nt&&(h>Tt||r.velocity===a)){var d=e.deltaX-r.deltaX,l=e.deltaY-r.deltaY,u=L(h,d,l);o=u.x,n=u.y,i=vt(u.x)>vt(u.y)?u.x:u.y,s=A(d,l),t.lastInterval=e}else i=r.velocity,o=r.velocityX,n=r.velocityY,s=r.direction;e.velocity=i,e.velocityX=o,e.velocityY=n,e.direction=s}function N(t){for(var e=[],i=0;in;)i+=t[n].clientX,o+=t[n].clientY,n++;return{x:mt(i/e),y:mt(o/e)}}function L(t,e,i){return{x:e/t||0,y:i/t||0}}function A(t,e){return t===e?zt:vt(t)>=vt(e)?0>t?Lt:At:0>e?Ft:Bt}function F(t,e,i){i||(i=Wt);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return Math.sqrt(o*o+n*n)}function B(t,e,i){i||(i=Wt);var o=e[i[0]]-t[i[0]],n=e[i[1]]-t[i[1]];return 180*Math.atan2(n,o)/Math.PI}function R(t,e){return B(e[1],e[0],Yt)+B(t[1],t[0],Yt)}function j(t,e){return F(e[0],e[1],Yt)/F(t[0],t[1],Yt)}function H(){this.evEl=Vt,this.evWin=Ut,this.allow=!0,this.pressed=!1,C.apply(this,arguments)}function W(){this.evEl=Zt,this.evWin=Kt,C.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function Y(){this.evTarget=Qt,this.evWin=$t,this.started=!1,C.apply(this,arguments)}function G(t,e){var i=x(t.touches),o=x(t.changedTouches);return e&(It|Nt)&&(i=k(i.concat(o),"identifier",!0)),[i,o]}function V(){this.evTarget=ee,this.targetIds={},C.apply(this,arguments)}function U(t,e){var i=x(t.touches),o=this.targetIds;if(e&(Et|Pt)&&1===i.length)return o[i[0].identifier]=!0,[i,i];var n,s,r=x(t.changedTouches),a=[],h=this.target;if(s=i.filter(function(t){return y(t.target,h)}),e===Et)for(n=0;na&&(e.push(t),a=e.length-1):n&(It|Nt)&&(i=!0),0>a||(e[a]=t,this.callback(this.manager,n,{pointers:e,changedPointers:[t],pointerType:s,srcEvent:t}),i&&e.splice(a,1))}});var Jt={touchstart:Et,touchmove:Pt,touchend:It,touchcancel:Nt},Qt="touchstart",$t="touchstart touchmove touchend touchcancel";c(Y,C,{handler:function(t){var e=Jt[t.type];if(e===Et&&(this.started=!0),this.started){var i=G.call(this,t,e);e&(It|Nt)&&i[0].length-i[1].length===0&&(this.started=!1),this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:Mt,srcEvent:t})}}});var te={touchstart:Et,touchmove:Pt,touchend:It,touchcancel:Nt},ee="touchstart touchmove touchend touchcancel";c(V,C,{handler:function(t){var e=te[t.type],i=U.call(this,t,e);i&&this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:Mt,srcEvent:t})}}),c(q,C,{handler:function(t,e,i){var o=i.pointerType==Mt,n=i.pointerType==Ct;if(o)this.mouse.allow=!1;else if(n&&!this.mouse.allow)return;e&(It|Nt)&&(this.mouse.allow=!0),this.callback(t,e,i)},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var ie=O(pt.style,"touchAction"),oe=ie!==a,ne="compute",se="auto",re="manipulation",ae="none",he="pan-x",de="pan-y";X.prototype={set:function(t){t==ne&&(t=this.compute()),oe&&this.manager.element.style&&(this.manager.element.style[ie]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var t=[];return l(this.manager.recognizers,function(e){f(e.options.enable,[e])&&(t=t.concat(e.getTouchAction()))}),Z(t.join(" "))},preventDefaults:function(t){if(!oe){var e=t.srcEvent,i=t.offsetDirection;if(this.manager.session.prevented)return void e.preventDefault();var o=this.actions,n=b(o,ae),s=b(o,de),r=b(o,he);if(n){var a=1===t.pointers.length,h=t.distance<2,d=t.deltaTime<250;if(a&&h&&d)return}if(!r||!s)return n||s&&i&Rt||r&&i&jt?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var le=1,ue=2,ce=4,pe=8,fe=pe,me=16,ve=32;K.prototype={defaults:{},set:function(t){return ut(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(d(t,"recognizeWith",this))return this;var e=this.simultaneous;return t=$(t,this),e[t.id]||(e[t.id]=t,t.recognizeWith(this)),this},dropRecognizeWith:function(t){return d(t,"dropRecognizeWith",this)?this:(t=$(t,this),delete this.simultaneous[t.id],this)},requireFailure:function(t){if(d(t,"requireFailure",this))return this;var e=this.requireFail;return t=$(t,this),-1===w(e,t)&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(d(t,"dropRequireFailure",this))return this;t=$(t,this);var e=w(this.requireFail,t);return e>-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){function e(e){i.manager.emit(e,t)}var i=this,o=this.state;pe>o&&e(i.options.event+J(o)),e(i.options.event),t.additionalEvent&&e(t.additionalEvent),o>=pe&&e(i.options.event+J(o))},tryEmit:function(t){return this.canEmit()?this.emit(t):void(this.state=ve)},canEmit:function(){for(var t=0;ts?Lt:At,i=s!=this.pX,o=Math.abs(t.deltaX)):(n=0===r?zt:0>r?Ft:Bt,i=r!=this.pY,o=Math.abs(t.deltaY))),t.direction=n,i&&o>e.threshold&&n&e.direction},attrTest:function(t){return tt.prototype.attrTest.call(this,t)&&(this.state&ue||!(this.state&ue)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=Q(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),c(it,tt,{defaults:{event:"pinch",threshold:0,pointers:2},getTouchAction:function(){return[ae]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||this.state&ue)},emit:function(t){if(1!==t.scale){var e=t.scale<1?"in":"out";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),c(ot,K,{defaults:{event:"press",pointers:1,time:251,threshold:9},getTouchAction:function(){return[se]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,o=t.distancee.time;if(this._input=t,!o||!i||t.eventType&(It|Nt)&&!n)this.reset();else if(t.eventType&Et)this.reset(),this._timer=h(function(){this.state=fe,this.tryEmit()},e.time,this);else if(t.eventType&It)return fe;return ve},reset:function(){clearTimeout(this._timer)},emit:function(t){this.state===fe&&(t&&t.eventType&It?this.manager.emit(this.options.event+"up",t):(this._input.timeStamp=gt(),this.manager.emit(this.options.event,this._input)))}}),c(nt,tt,{defaults:{event:"rotate",threshold:0,pointers:2},getTouchAction:function(){return[ae]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||this.state&ue)}}),c(st,tt,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:Rt|jt,pointers:1},getTouchAction:function(){return et.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(Rt|jt)?e=t.overallVelocity:i&Rt?e=t.overallVelocityX:i&jt&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&i&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&vt(e)>this.options.velocity&&t.eventType&It},emit:function(t){var e=Q(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),c(rt,K,{defaults:{event:"tap",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[re]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,o=t.distanceu,c=r||null===n?n:h+(n-h)*i,v=r||null===s?s:l+(s-l)*i;g=a._applyRange(c,v),d.updateHiddenDates(a.options.moment,a.body,a.options.hiddenDates),m=m||g,g&&a.body.emitter.emit("rangechange",{start:new Date(a.start),end:new Date(a.end),byUser:o}),r?m&&a.body.emitter.emit("rangechanged",{start:new Date(a.start),end:new Date(a.end),byUser:o}):a.animationTimer=setTimeout(b,20)}};return v()}var g=this._applyRange(n,s);if(d.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates),g){var y={start:new Date(this.start),end:new Date(this.end),byUser:o};this.body.emitter.emit("rangechange",y),this.body.emitter.emit("rangechanged",y)}},o.prototype._cancelAnimation=function(){this.animationTimer&&(clearTimeout(this.animationTimer),this.animationTimer=null)},o.prototype._applyRange=function(t,e){var i,o=null!=t?r.convert(t,"Date").valueOf():this.start,n=null!=e?r.convert(e,"Date").valueOf():this.end,s=null!=this.options.max?r.convert(this.options.max,"Date").valueOf():null,a=null!=this.options.min?r.convert(this.options.min,"Date").valueOf():null;if(isNaN(o)||null===o)throw new Error('Invalid start "'+t+'"');if(isNaN(n)||null===n)throw new Error('Invalid end "'+e+'"');if(o>n&&(n=o),null!==a&&a>o&&(i=a-o,o+=i,n+=i,null!=s&&n>s&&(n=s)),null!==s&&n>s&&(i=n-s,o-=i,n-=i,null!=a&&a>o&&(o=a)),null!==this.options.zoomMin){var h=parseFloat(this.options.zoomMin);0>h&&(h=0),h>n-o&&(this.end-this.start===h&&o>this.start&&nd&&(d=0),n-o>d&&(this.end-this.start===d&&othis.end?(o=this.start,n=this.end):(i=n-o-d,o+=i/2,n-=i/2))}var l=this.start!=o||this.end!=n;return o>=this.start&&o<=this.end||n>=this.start&&n<=this.end||this.start>=o&&this.start<=n||this.end>=o&&this.end<=n||this.body.emitter.emit("checkRangedItems"),this.start=o,this.end=n,l},o.prototype.getRange=function(){return{start:this.start,end:this.end}},o.prototype.conversion=function(t,e){return o.conversion(this.start,this.end,t,e)},o.conversion=function(t,e,i,o){return void 0===o&&(o=0),0!=i&&e-t!=0?{offset:t,scale:i/(e-t-o)}:{offset:0,scale:1}},o.prototype._onDragStart=function(t){this.deltaDifference=0,this.previousDelta=0,this.options.moveable&&this._isInsideRange(t)&&this.props.touch.allowDragging&&(this.props.touch.start=this.start,this.props.touch.end=this.end,this.props.touch.dragging=!0,this.body.dom.root&&(this.body.dom.root.style.cursor="move"))},o.prototype._onDrag=function(t){if(this.props.touch.dragging&&this.options.moveable&&this.props.touch.allowDragging){var e=this.options.direction;n(e);var i="horizontal"==e?t.deltaX:t.deltaY;i-=this.deltaDifference;var o=this.props.touch.end-this.props.touch.start,s=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);o-=s;var r="horizontal"==e?this.body.domProps.center.width:this.body.domProps.center.height,a=-i/r*o,h=this.props.touch.start+a,l=this.props.touch.end+a,u=d.snapAwayFromHidden(this.body.hiddenDates,h,this.previousDelta-i,!0),c=d.snapAwayFromHidden(this.body.hiddenDates,l,this.previousDelta-i,!0);if(u!=h||c!=l)return this.deltaDifference+=i,this.props.touch.start=u,this.props.touch.end=c,void this._onDrag(t);this.previousDelta=i,this._applyRange(h,l);var p=new Date(this.start),f=new Date(this.end);this.body.emitter.emit("rangechange",{start:p,end:f,byUser:!0})}},o.prototype._onDragEnd=function(t){this.props.touch.dragging&&this.options.moveable&&this.props.touch.allowDragging&&(this.props.touch.dragging=!1,this.body.dom.root&&(this.body.dom.root.style.cursor="auto"),this.body.emitter.emit("rangechanged",{start:new Date(this.start),end:new Date(this.end),byUser:!0}))},o.prototype._onMouseWheel=function(t){if(this.options.zoomable&&this.options.moveable&&this._isInsideRange(t)&&(!this.options.zoomKey||t[this.options.zoomKey])){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),e){var i;i=0>e?1-e/5:1/(1+e/5);var o=s({x:t.clientX,y:t.clientY},this.body.dom.center),n=this._pointerToDate(o);this.zoom(i,n,e)}t.preventDefault()}},o.prototype._onTouch=function(t){this.props.touch.start=this.start,this.props.touch.end=this.end,this.props.touch.allowDragging=!0,this.props.touch.center=null,this.scaleOffset=0,this.deltaDifference=0},o.prototype._onPinch=function(t){if(this.options.zoomable&&this.options.moveable){this.props.touch.allowDragging=!1,this.props.touch.center||(this.props.touch.center=s(t.center,this.body.dom.center));var e=1/(t.scale+this.scaleOffset),i=this._pointerToDate(this.props.touch.center),o=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=d.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this,i),r=o-n,a=i-n+(this.props.touch.start-(i-n))*e,h=i+r+(this.props.touch.end-(i+r))*e;this.startToFront=0>=1-e,this.endToFront=0>=e-1;var l=d.snapAwayFromHidden(this.body.hiddenDates,a,1-e,!0),u=d.snapAwayFromHidden(this.body.hiddenDates,h,e-1,!0);(l!=a||u!=h)&&(this.props.touch.start=l,this.props.touch.end=u,this.scaleOffset=1-t.scale,a=l,h=u),this.setRange(a,h,!1,!0),this.startToFront=!1,this.endToFront=!0}},o.prototype._isInsideRange=function(t){var e=t.center?t.center.x:t.clientX,i=e-r.getAbsoluteLeft(this.body.dom.centerContainer),o=this.body.util.toTime(i);return o>=this.start&&o<=this.end},o.prototype._pointerToDate=function(t){var e,i=this.options.direction;if(n(i),"horizontal"==i)return this.body.util.toTime(t.x).valueOf();var o=this.body.domProps.center.height;return e=this.conversion(o),t.y/e.scale+e.offset},o.prototype.zoom=function(t,e,i){null==e&&(e=(this.start+this.end)/2);var o=d.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=d.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this,e),s=o-n,r=e-n+(this.start-(e-n))*t,a=e+s+(this.end-(e+s))*t;this.startToFront=i>0?!1:!0,this.endToFront=-i>0?!1:!0;var h=d.snapAwayFromHidden(this.body.hiddenDates,r,i,!0),l=d.snapAwayFromHidden(this.body.hiddenDates,a,-i,!0);(h!=r||l!=a)&&(r=h,a=l),this.setRange(r,a,!1,!0),this.startToFront=!1,this.endToFront=!0},o.prototype.move=function(t){var e=this.end-this.start,i=this.start+e*t,o=this.end+e*t;this.start=i,this.end=o},o.prototype.moveTo=function(t){var e=(this.start+this.end)/2,i=e-t,o=this.start-i,n=this.end-i;this.setRange(o,n)},t.exports=o},function(t,e,i){i(20);e.onTouch=function(t,e){e.inputHandler=function(t){t.isFirst&&e(t)},t.on("hammer.input",e.inputHandler)},e.onRelease=function(t,e){return e.inputHandler=function(t){t.isFinal&&e(t)},t.on("hammer.input",e.inputHandler)},e.offTouch=function(t,e){t.off("hammer.input",e.inputHandler)},e.offRelease=e.offTouch},function(t,e){function i(t,e){this.options=null,this.props=null}i.prototype.setOptions=function(t){t&&util.extend(this.options,t)},i.prototype.redraw=function(){return!1},i.prototype.destroy=function(){},i.prototype._isResized=function(){var t=this.props._previousWidth!==this.props.width||this.props._previousHeight!==this.props.height;return this.props._previousWidth=this.props.width,this.props._previousHeight=this.props.height,t},t.exports=i},function(t,e){e.convertHiddenOptions=function(t,i,o){if(o&&!Array.isArray(o))return e.convertHiddenOptions(t,i,[o]);if(i.hiddenDates=[],o&&1==Array.isArray(o)){for(var n=0;n=4*a){var c=0,p=s.clone();switch(o[h].repeat){case"daily":d.day()!=l.day()&&(c=1),d.dayOfYear(n.dayOfYear()),d.year(n.year()),d.subtract(7,"days"),l.dayOfYear(n.dayOfYear()),l.year(n.year()),l.subtract(7-c,"days"),p.add(1,"weeks");break;case"weekly":var f=l.diff(d,"days"),m=d.day();d.date(n.date()),d.month(n.month()),d.year(n.year()),l=d.clone(),d.day(m),l.day(m),l.add(f,"days"),d.subtract(1,"weeks"),l.subtract(1,"weeks"),p.add(1,"weeks");break;case"monthly":d.month()!=l.month()&&(c=1),d.month(n.month()),d.year(n.year()),d.subtract(1,"months"),l.month(n.month()),l.year(n.year()),l.subtract(1,"months"),l.add(c,"months"),p.add(1,"months");break;case"yearly":d.year()!=l.year()&&(c=1),d.year(n.year()),d.subtract(1,"years"),l.year(n.year()),l.subtract(1,"years"),l.add(c,"years"),p.add(1,"years");break;default:return void console.log("Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:",o[h].repeat)}for(;p>d;)switch(i.hiddenDates.push({start:d.valueOf(),end:l.valueOf()}),o[h].repeat){case"daily":d.add(1,"days"),l.add(1,"days");break;case"weekly":d.add(1,"weeks"),l.add(1,"weeks");break;case"monthly":d.add(1,"months"),l.add(1,"months");break;case"yearly":d.add(1,"y"),l.add(1,"y");break;default:return void console.log("Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:",o[h].repeat)}i.hiddenDates.push({start:d.valueOf(),end:l.valueOf()})}}e.removeDuplicates(i);var v=e.isHidden(i.range.start,i.hiddenDates),g=e.isHidden(i.range.end,i.hiddenDates),y=i.range.start,b=i.range.end;1==v.hidden&&(y=1==i.range.startToFront?v.startDate-1:v.endDate+1),1==g.hidden&&(b=1==i.range.endToFront?g.startDate-1:g.endDate+1),(1==v.hidden||1==g.hidden)&&i.range._applyRange(y,b)}},e.removeDuplicates=function(t){for(var e=t.hiddenDates,i=[],o=0;o=e[o].start&&e[n].end<=e[o].end?e[n].remove=!0:e[n].start>=e[o].start&&e[n].start<=e[o].end?(e[o].end=e[n].end,e[n].remove=!0):e[n].end>=e[o].start&&e[n].end<=e[o].end&&(e[o].start=e[n].start,e[n].remove=!0));for(var o=0;o=r&&a>n){o=!0;break}}if(1==o&&n=e&&i>r&&(o+=r-s)}return o},e.correctTimeForHidden=function(t,i,o,n){return n=t(n).toDate().valueOf(),n-=e.getHiddenDurationBefore(t,i,o,n)},e.getHiddenDurationBefore=function(t,e,i,o){var n=0;o=t(o).toDate().valueOf();for(var s=0;s=i.start&&a=a&&(n+=a-r)}return n},e.getAccumulatedHiddenDuration=function(t,e,i){for(var o=0,n=0,s=e.start,r=0;r=e.start&&h=i)break;o+=h-a}}return o},e.snapAwayFromHidden=function(t,i,o,n){var s=e.isHidden(i,t);return 1==s.hidden?0>o?1==n?s.startDate-(s.endDate-i)-1:s.startDate-1:1==n?s.endDate+(i-s.startDate)+1:s.endDate+1:i},e.isHidden=function(t,e){for(var i=0;i=o&&n>t)return{hidden:!0,startDate:o,endDate:n}}return{hidden:!1,startDate:o,endDate:n}}},function(t,e,i){function o(){}var n=i(12),s=i(20),r=i(24),a=i(1),h=(i(8),i(10),i(23),i(28),i(38)),d=i(39),l=i(26),u=i(41);n(o.prototype),o.prototype._create=function(t){function e(t){ +i.isActive()&&i.emit("mousewheel",t)}this.dom={},this.dom.container=t,this.dom.root=document.createElement("div"),this.dom.background=document.createElement("div"),this.dom.backgroundVertical=document.createElement("div"),this.dom.backgroundHorizontal=document.createElement("div"),this.dom.centerContainer=document.createElement("div"),this.dom.leftContainer=document.createElement("div"),this.dom.rightContainer=document.createElement("div"),this.dom.center=document.createElement("div"),this.dom.left=document.createElement("div"),this.dom.right=document.createElement("div"),this.dom.top=document.createElement("div"),this.dom.bottom=document.createElement("div"),this.dom.shadowTop=document.createElement("div"),this.dom.shadowBottom=document.createElement("div"),this.dom.shadowTopLeft=document.createElement("div"),this.dom.shadowBottomLeft=document.createElement("div"),this.dom.shadowTopRight=document.createElement("div"),this.dom.shadowBottomRight=document.createElement("div"),this.dom.root.className="vis-timeline",this.dom.background.className="vis-panel vis-background",this.dom.backgroundVertical.className="vis-panel vis-background vis-vertical",this.dom.backgroundHorizontal.className="vis-panel vis-background vis-horizontal",this.dom.centerContainer.className="vis-panel vis-center",this.dom.leftContainer.className="vis-panel vis-left",this.dom.rightContainer.className="vis-panel vis-right",this.dom.top.className="vis-panel vis-top",this.dom.bottom.className="vis-panel vis-bottom",this.dom.left.className="vis-content",this.dom.center.className="vis-content",this.dom.right.className="vis-content",this.dom.shadowTop.className="vis-shadow vis-top",this.dom.shadowBottom.className="vis-shadow vis-bottom",this.dom.shadowTopLeft.className="vis-shadow vis-top",this.dom.shadowBottomLeft.className="vis-shadow vis-bottom",this.dom.shadowTopRight.className="vis-shadow vis-top",this.dom.shadowBottomRight.className="vis-shadow vis-bottom",this.dom.root.appendChild(this.dom.background),this.dom.root.appendChild(this.dom.backgroundVertical),this.dom.root.appendChild(this.dom.backgroundHorizontal),this.dom.root.appendChild(this.dom.centerContainer),this.dom.root.appendChild(this.dom.leftContainer),this.dom.root.appendChild(this.dom.rightContainer),this.dom.root.appendChild(this.dom.top),this.dom.root.appendChild(this.dom.bottom),this.dom.centerContainer.appendChild(this.dom.center),this.dom.leftContainer.appendChild(this.dom.left),this.dom.rightContainer.appendChild(this.dom.right),this.dom.centerContainer.appendChild(this.dom.shadowTop),this.dom.centerContainer.appendChild(this.dom.shadowBottom),this.dom.leftContainer.appendChild(this.dom.shadowTopLeft),this.dom.leftContainer.appendChild(this.dom.shadowBottomLeft),this.dom.rightContainer.appendChild(this.dom.shadowTopRight),this.dom.rightContainer.appendChild(this.dom.shadowBottomRight),this.on("rangechange",function(){this.initialDrawDone===!0&&this._redraw()}.bind(this)),this.on("touch",this._onTouch.bind(this)),this.on("pan",this._onDrag.bind(this));var i=this;this.on("_change",function(t){t&&1==t.queue?i._redrawTimer||(i._redrawTimer=setTimeout(function(){i._redrawTimer=null,i._redraw()},0)):i._redraw()}),this.hammer=new s(this.dom.root),this.hammer.get("pinch").set({enable:!0}),this.hammer.get("pan").set({threshold:5,direction:30}),this.listeners={};var o=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];if(o.forEach(function(t){var e=function(e){i.isActive()&&i.emit(t,e)};i.hammer.on(t,e),i.listeners[t]=e}),r.onTouch(this.hammer,function(t){i.emit("touch",t)}.bind(this)),r.onRelease(this.hammer,function(t){i.emit("release",t)}.bind(this)),this.dom.root.addEventListener("mousewheel",e),this.dom.root.addEventListener("DOMMouseScroll",e),this.props={root:{},background:{},centerContainer:{},leftContainer:{},rightContainer:{},center:{},left:{},right:{},top:{},bottom:{},border:{},scrollTop:0,scrollTopMin:0},this.customTimes=[],this.touch={},this.redrawCount=0,this.initialDrawDone=!1,!t)throw new Error("No container provided");t.appendChild(this.dom.root)},o.prototype.setOptions=function(t){if(t){var e=["width","height","minHeight","maxHeight","autoResize","start","end","clickToUse","dataAttributes","hiddenDates","locale","locales","moment","throttleRedraw"];if(a.selectiveExtend(e,this.options,t),this.options.orientation={item:void 0,axis:void 0},"orientation"in t&&("string"==typeof t.orientation?this.options.orientation={item:t.orientation,axis:t.orientation}:"object"==typeof t.orientation&&("item"in t.orientation&&(this.options.orientation.item=t.orientation.item),"axis"in t.orientation&&(this.options.orientation.axis=t.orientation.axis))),"both"===this.options.orientation.axis){if(!this.timeAxis2){var i=this.timeAxis2=new h(this.body);i.setOptions=function(t){var e=t?a.extend({},t):{};e.orientation="top",h.prototype.setOptions.call(i,e)},this.components.push(i)}}else if(this.timeAxis2){var o=this.components.indexOf(this.timeAxis2);-1!==o&&this.components.splice(o,1),this.timeAxis2.destroy(),this.timeAxis2=null}if("function"==typeof t.drawPoints&&(t.drawPoints={onRender:t.drawPoints}),"hiddenDates"in this.options&&l.convertHiddenOptions(this.options.moment,this.body,this.options.hiddenDates),"clickToUse"in t&&(t.clickToUse?this.activator||(this.activator=new d(this.dom.root)):this.activator&&(this.activator.destroy(),delete this.activator)),"showCustomTime"in t)throw new Error("Option `showCustomTime` is deprecated. Create a custom time bar via timeline.addCustomTime(time [, id])");this._initAutoResize()}if(this.components.forEach(function(e){return e.setOptions(t)}),"configure"in t){this.configurator||(this.configurator=this._createConfigurator()),this.configurator.setOptions(t.configure);var n=a.deepExtend({},this.options);this.components.forEach(function(t){a.deepExtend(n,t.options)}),this.configurator.setModuleOptions({global:n})}this._origRedraw?this._redraw():(this._origRedraw=this._redraw.bind(this),this._redraw=a.throttle(this._origRedraw,this.options.throttleRedraw))},o.prototype.isActive=function(){return!this.activator||this.activator.active},o.prototype.destroy=function(){this.setItems(null),this.setGroups(null),this.off(),this._stopAutoResize(),this.dom.root.parentNode&&this.dom.root.parentNode.removeChild(this.dom.root),this.dom=null,this.activator&&(this.activator.destroy(),delete this.activator);for(var t in this.listeners)this.listeners.hasOwnProperty(t)&&delete this.listeners[t];this.listeners=null,this.hammer=null,this.components.forEach(function(t){return t.destroy()}),this.body=null},o.prototype.setCustomTime=function(t,e){var i=this.customTimes.filter(function(t){return e===t.options.id});if(0===i.length)throw new Error("No custom time bar found with id "+JSON.stringify(e));i.length>0&&i[0].setCustomTime(t)},o.prototype.getCustomTime=function(t){var e=this.customTimes.filter(function(e){return e.options.id===t});if(0===e.length)throw new Error("No custom time bar found with id "+JSON.stringify(t));return e[0].getCustomTime()},o.prototype.setCustomTimeTitle=function(t,e){var i=this.customTimes.filter(function(t){return t.options.id===e});if(0===i.length)throw new Error("No custom time bar found with id "+JSON.stringify(e));return i.length>0?i[0].setCustomTitle(t):void 0},o.prototype.getEventProperties=function(t){return{event:t}},o.prototype.addCustomTime=function(t,e){var i=void 0!==t?a.convert(t,"Date").valueOf():new Date,o=this.customTimes.some(function(t){return t.options.id===e});if(o)throw new Error("A custom time with id "+JSON.stringify(e)+" already exists");var n=new u(this.body,a.extend({},this.options,{time:i,id:e}));return this.customTimes.push(n),this.components.push(n),this._redraw(),e},o.prototype.removeCustomTime=function(t){var e=this.customTimes.filter(function(e){return e.options.id===t});if(0===e.length)throw new Error("No custom time bar found with id "+JSON.stringify(t));e.forEach(function(t){this.customTimes.splice(this.customTimes.indexOf(t),1),this.components.splice(this.components.indexOf(t),1),t.destroy()}.bind(this))},o.prototype.getVisibleItems=function(){return this.itemSet&&this.itemSet.getVisibleItems()||[]},o.prototype.fit=function(t){var e=this.getDataRange();if(null!==e.min||null!==e.max){var i=e.max-e.min,o=new Date(e.min.valueOf()-.01*i),n=new Date(e.max.valueOf()+.01*i),s=t&&void 0!==t.animation?t.animation:!0;this.range.setRange(o,n,s)}},o.prototype.getDataRange=function(){throw new Error("Cannot invoke abstract method getDataRange")},o.prototype.setWindow=function(t,e,i){var o;if(1==arguments.length){var n=arguments[0];o=void 0!==n.animation?n.animation:!0,this.range.setRange(n.start,n.end,o)}else o=i&&void 0!==i.animation?i.animation:!0,this.range.setRange(t,e,o)},o.prototype.moveTo=function(t,e){var i=this.range.end-this.range.start,o=a.convert(t,"Date").valueOf(),n=o-i/2,s=o+i/2,r=e&&void 0!==e.animation?e.animation:!0;this.range.setRange(n,s,r)},o.prototype.getWindow=function(){var t=this.range.getRange();return{start:new Date(t.start),end:new Date(t.end)}},o.prototype.redraw=function(){this._redraw()},o.prototype._redraw=function(){this.redrawCount++;var t=!1,e=this.options,i=this.props,o=this.dom;if(o&&o.container&&0!=o.container.clientWidth){l.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates),"top"==e.orientation?(a.addClassName(o.root,"vis-top"),a.removeClassName(o.root,"vis-bottom")):(a.removeClassName(o.root,"vis-top"),a.addClassName(o.root,"vis-bottom")),o.root.style.maxHeight=a.option.asSize(e.maxHeight,""),o.root.style.minHeight=a.option.asSize(e.minHeight,""),o.root.style.width=a.option.asSize(e.width,""),i.border.left=(o.centerContainer.offsetWidth-o.centerContainer.clientWidth)/2,i.border.right=i.border.left,i.border.top=(o.centerContainer.offsetHeight-o.centerContainer.clientHeight)/2,i.border.bottom=i.border.top;var n=o.root.offsetHeight-o.root.clientHeight,s=o.root.offsetWidth-o.root.clientWidth;0===o.centerContainer.clientHeight&&(i.border.left=i.border.top,i.border.right=i.border.left),0===o.root.clientHeight&&(s=n),i.center.height=o.center.offsetHeight,i.left.height=o.left.offsetHeight,i.right.height=o.right.offsetHeight,i.top.height=o.top.clientHeight||-i.border.top,i.bottom.height=o.bottom.clientHeight||-i.border.bottom;var r=Math.max(i.left.height,i.center.height,i.right.height),h=i.top.height+r+i.bottom.height+n+i.border.top+i.border.bottom;o.root.style.height=a.option.asSize(e.height,h+"px"),i.root.height=o.root.offsetHeight,i.background.height=i.root.height-n;var d=i.root.height-i.top.height-i.bottom.height-n;i.centerContainer.height=d,i.leftContainer.height=d,i.rightContainer.height=i.leftContainer.height,i.root.width=o.root.offsetWidth,i.background.width=i.root.width-s,i.left.width=o.leftContainer.clientWidth||-i.border.left,i.leftContainer.width=i.left.width,i.right.width=o.rightContainer.clientWidth||-i.border.right,i.rightContainer.width=i.right.width;var u=i.root.width-i.left.width-i.right.width-s;i.center.width=u,i.centerContainer.width=u,i.top.width=u,i.bottom.width=u,o.background.style.height=i.background.height+"px",o.backgroundVertical.style.height=i.background.height+"px",o.backgroundHorizontal.style.height=i.centerContainer.height+"px",o.centerContainer.style.height=i.centerContainer.height+"px",o.leftContainer.style.height=i.leftContainer.height+"px",o.rightContainer.style.height=i.rightContainer.height+"px",o.background.style.width=i.background.width+"px",o.backgroundVertical.style.width=i.centerContainer.width+"px",o.backgroundHorizontal.style.width=i.background.width+"px",o.centerContainer.style.width=i.center.width+"px",o.top.style.width=i.top.width+"px",o.bottom.style.width=i.bottom.width+"px",o.background.style.left="0",o.background.style.top="0",o.backgroundVertical.style.left=i.left.width+i.border.left+"px",o.backgroundVertical.style.top="0",o.backgroundHorizontal.style.left="0",o.backgroundHorizontal.style.top=i.top.height+"px",o.centerContainer.style.left=i.left.width+"px",o.centerContainer.style.top=i.top.height+"px",o.leftContainer.style.left="0",o.leftContainer.style.top=i.top.height+"px",o.rightContainer.style.left=i.left.width+i.center.width+"px",o.rightContainer.style.top=i.top.height+"px",o.top.style.left=i.left.width+"px",o.top.style.top="0",o.bottom.style.left=i.left.width+"px",o.bottom.style.top=i.top.height+i.centerContainer.height+"px",this._updateScrollTop();var c=this.props.scrollTop;"top"!=e.orientation.item&&(c+=Math.max(this.props.centerContainer.height-this.props.center.height-this.props.border.top-this.props.border.bottom,0)),o.center.style.left="0",o.center.style.top=c+"px",o.left.style.left="0",o.left.style.top=c+"px",o.right.style.left="0",o.right.style.top=c+"px";var p=0==this.props.scrollTop?"hidden":"",f=this.props.scrollTop==this.props.scrollTopMin?"hidden":"";o.shadowTop.style.visibility=p,o.shadowBottom.style.visibility=f,o.shadowTopLeft.style.visibility=p,o.shadowBottomLeft.style.visibility=f,o.shadowTopRight.style.visibility=p,o.shadowBottomRight.style.visibility=f,this.components.forEach(function(e){t=e.redraw()||t});var m=5;if(t){if(this.redrawCount0&&(this.props.scrollTop=0),this.props.scrollTope;e++)o=this.selection[e],n=this.items[o],n&&n.unselect();for(this.selection=[],e=0,i=t.length;i>e;e++)o=t[e],n=this.items[o],n&&(this.selection.push(o),n.select())},o.prototype.getSelection=function(){return this.selection.concat([])},o.prototype.getVisibleItems=function(){var t=this.body.range.getRange(),e=this.body.util.toScreen(t.start),i=this.body.util.toScreen(t.end),o=[];for(var n in this.groups)if(this.groups.hasOwnProperty(n))for(var s=this.groups[n],r=s.visibleItems,a=0;ae&&o.push(h.id)}return o},o.prototype._deselect=function(t){for(var e=this.selection,i=0,o=e.length;o>i;i++)if(e[i]==t){e.splice(i,1);break}},o.prototype.redraw=function(){var t=this.options.margin,e=this.body.range,i=s.option.asSize,o=this.options,n=o.orientation.item,r=!1,a=this.dom.frame;this.props.top=this.body.domProps.top.height+this.body.domProps.border.top,this.props.left=this.body.domProps.left.width+this.body.domProps.border.left,a.className="vis-itemset",r=this._orderGroups()||r;var h=e.end-e.start,d=h!=this.lastVisibleInterval||this.props.width!=this.props.lastWidth;d&&(this.stackDirty=!0),this.lastVisibleInterval=h,this.props.lastWidth=this.props.width;var l=this.stackDirty,u=this._firstGroup(),c={item:t.item,axis:t.axis},p={item:t.item,axis:t.item.vertical/2},f=0,m=t.axis+t.item.vertical;return this.groups[g].redraw(e,p,l),s.forEach(this.groups,function(t){var i=t==u?c:p,o=t.redraw(e,i,l);r=o||r,f+=t.height}),f=Math.max(f,m),this.stackDirty=!1,a.style.height=i(f),this.props.width=a.offsetWidth,this.props.height=f,this.dom.axis.style.top=i("top"==n?this.body.domProps.top.height+this.body.domProps.border.top:this.body.domProps.top.height+this.body.domProps.centerContainer.height),this.dom.axis.style.left="0",r=this._isResized()||r},o.prototype._firstGroup=function(){var t="top"==this.options.orientation.item?0:this.groupIds.length-1,e=this.groupIds[t],i=this.groups[e]||this.groups[v];return i||null},o.prototype._updateUngrouped=function(){var t,e,i=this.groups[v];this.groups[g];if(this.groupsData){if(i){i.hide(),delete this.groups[v];for(e in this.items)if(this.items.hasOwnProperty(e)){t=this.items[e],t.parent&&t.parent.remove(t);var o=this._getGroupId(t.data),n=this.groups[o];n&&n.add(t)||t.hide()}}}else if(!i){var s=null,r=null;i=new l(s,r,this),this.groups[v]=i;for(e in this.items)this.items.hasOwnProperty(e)&&(t=this.items[e],i.add(t));i.show()}},o.prototype.getLabelSet=function(){return this.dom.labelSet},o.prototype.setItems=function(t){var e,i=this,o=this.itemsData;if(t){if(!(t instanceof r||t instanceof a))throw new TypeError("Data must be an instance of DataSet or DataView");this.itemsData=t}else this.itemsData=null;if(o&&(s.forEach(this.itemListeners,function(t,e){o.off(e,t)}),e=o.getIds(),this._onRemove(e)),this.itemsData){var n=this.id;s.forEach(this.itemListeners,function(t,e){i.itemsData.on(e,t,n)}),e=this.itemsData.getIds(),this._onAdd(e),this._updateUngrouped()}this.body.emitter.emit("_change",{queue:!0})},o.prototype.getItems=function(){return this.itemsData},o.prototype.setGroups=function(t){var e,i=this;if(this.groupsData&&(s.forEach(this.groupListeners,function(t,e){i.groupsData.off(e,t)}),e=this.groupsData.getIds(),this.groupsData=null,this._onRemoveGroups(e)),t){if(!(t instanceof r||t instanceof a))throw new TypeError("Data must be an instance of DataSet or DataView");this.groupsData=t}else this.groupsData=null;if(this.groupsData){var o=this.id;s.forEach(this.groupListeners,function(t,e){i.groupsData.on(e,t,o)}),e=this.groupsData.getIds(),this._onAddGroups(e)}this._updateUngrouped(),this._order(),this.body.emitter.emit("_change",{queue:!0})},o.prototype.getGroups=function(){return this.groupsData},o.prototype.removeItem=function(t){var e=this.itemsData.get(t),i=this.itemsData.getDataSet();e&&this.options.onRemove(e,function(e){e&&i.remove(t)})},o.prototype._getType=function(t){return t.type||this.options.type||(t.end?"range":"box")},o.prototype._getGroupId=function(t){var e=this._getType(t);return"background"==e&&void 0==t.group?g:this.groupsData?t.group:v},o.prototype._onUpdate=function(t){var e=this;t.forEach(function(t){var i,n=e.itemsData.get(t,e.itemOptions),s=e.items[t],r=e._getType(n),a=o.types[r];if(s&&(a&&s instanceof a?e._updateItem(s,n):(i=s.selected,e._removeItem(s),s=null)),!s){if(!a)throw"rangeoverflow"==r?new TypeError('Item type "rangeoverflow" is deprecated. Use css styling instead: .vis-item.vis-range .vis-item-content {overflow: visible;}'):new TypeError('Unknown item type "'+r+'"');s=new a(n,e.conversion,e.options),s.id=t,e._addItem(s),i&&(this.selection.push(t),s.select())}}.bind(this)),this._order(),this.stackDirty=!0,this.body.emitter.emit("_change",{queue:!0})},o.prototype._onAdd=o.prototype._onUpdate,o.prototype._onRemove=function(t){var e=0,i=this;t.forEach(function(t){var o=i.items[t];o&&(e++,i._removeItem(o))}),e&&(this._order(),this.stackDirty=!0,this.body.emitter.emit("_change",{queue:!0}))},o.prototype._order=function(){s.forEach(this.groups,function(t){t.order()})},o.prototype._onUpdateGroups=function(t){this._onAddGroups(t)},o.prototype._onAddGroups=function(t){var e=this;t.forEach(function(t){var i=e.groupsData.get(t),o=e.groups[t];if(o)o.setData(i);else{if(t==v||t==g)throw new Error("Illegal group id. "+t+" is a reserved id.");var n=Object.create(e.options);s.extend(n,{height:null}),o=new l(t,i,e),e.groups[t]=o;for(var r in e.items)if(e.items.hasOwnProperty(r)){var a=e.items[r];a.data.group==t&&o.add(a)}o.order(),o.show()}}),this.body.emitter.emit("_change",{queue:!0})},o.prototype._onRemoveGroups=function(t){var e=this.groups;t.forEach(function(t){var i=e[t];i&&(i.hide(),delete e[t])}),this.markDirty(),this.body.emitter.emit("_change",{queue:!0})},o.prototype._orderGroups=function(){if(this.groupsData){var t=this.groupsData.getIds({order:this.options.groupOrder}),e=!s.equalArray(t,this.groupIds);if(e){var i=this.groups;t.forEach(function(t){i[t].hide()}),t.forEach(function(t){i[t].show()}),this.groupIds=t}return e}return!1},o.prototype._addItem=function(t){this.items[t.id]=t;var e=this._getGroupId(t.data),i=this.groups[e];i&&i.add(t)},o.prototype._updateItem=function(t,e){var i=t.data.group,o=t.data.subgroup;if(t.setData(e),i!=t.data.group||o!=t.data.subgroup){var n=this.groups[i];n&&n.remove(t);var s=this._getGroupId(t.data),r=this.groups[s];r&&r.add(t)}},o.prototype._removeItem=function(t){t.hide(),delete this.items[t.id];var e=this.selection.indexOf(t.id);-1!=e&&this.selection.splice(e,1),t.parent&&t.parent.remove(t)},o.prototype._constructByEndArray=function(t){for(var e=[],i=0;in+r)return}else{var a=e.height;if(n+a-r>o)return}}if(e&&e!=this.groupTouchParams.group){var h=this.groupsData,d=h.get(e.groupId),l=h.get(this.groupTouchParams.group.groupId);l&&d&&(this.options.groupOrderSwap(l,d,this.groupsData),this.groupsData.update(l),this.groupsData.update(d));var u=this.groupsData.getIds({order:this.options.groupOrder});if(!s.equalArray(u,this.groupTouchParams.originalOrder))for(var h=this.groupsData,c=this.groupTouchParams.originalOrder,p=this.groupTouchParams.group.groupId,f=Math.min(c.length,u.length),m=0,v=0,g=0;f>m;){for(;f>m+v&&f>m+g&&u[m+v]==c[m+g];)m++;if(m+v>=f)break;if(u[m+v]!=p)if(c[m+g]!=p){var y=u.indexOf(c[m+g]),b=h.get(u[m+v]),_=h.get(c[m+g]);this.options.groupOrderSwap(b,_,h),h.update(b),h.update(_);var w=u[m+v];u[m+v]=c[m+g],u[y]=w,m++}else g=1;else v=1}}}},o.prototype._onGroupDragEnd=function(t){if(this.options.groupEditable.order&&this.groupTouchParams.group){t.stopPropagation();var e=this,i=e.groupTouchParams.group.groupId,o=e.groupsData.getDataSet(),n=s.extend({},o.get(i));e.options.onMoveGroup(n,function(t){if(t)t[o._fieldId]=i,o.update(t);else{var n=o.getIds({order:e.options.groupOrder});if(!s.equalArray(n,e.groupTouchParams.originalOrder))for(var r=e.groupTouchParams.originalOrder,a=Math.min(r.length,n.length),h=0;a>h;){for(;a>h&&n[h]==r[h];)h++;if(h>=a)break;var d=n.indexOf(r[h]),l=o.get(n[h]),u=o.get(r[h]);e.options.groupOrderSwap(l,u,o),groupsData.update(l),groupsData.update(u);var c=n[h];n[h]=r[h],n[d]=c,h++}}}),e.body.emitter.emit("groupDragged",{groupId:i})}},o.prototype._onSelectItem=function(t){if(this.options.selectable){var e=t.srcEvent&&(t.srcEvent.ctrlKey||t.srcEvent.metaKey),i=t.srcEvent&&t.srcEvent.shiftKey;if(e||i)return void this._onMultiSelectItem(t);var o=this.getSelection(),n=this.itemFromTarget(t),s=n?[n.id]:[];this.setSelection(s);var r=this.getSelection();(r.length>0||o.length>0)&&this.body.emitter.emit("select",{items:r,event:t})}},o.prototype._onAddItem=function(t){if(this.options.selectable&&this.options.editable.add){var e=this,i=this.options.snap||null,o=this.itemFromTarget(t);if(o){var n=e.itemsData.get(o.id);this.options.onUpdate(n,function(t){t&&e.itemsData.getDataSet().update(t)})}else{var r=s.getAbsoluteLeft(this.dom.frame),a=t.center.x-r,h=this.body.util.toTime(a),d=this.body.util.getScale(),l=this.body.util.getStep(),u={start:i?i(h,d,l):h,content:"new item"};if("range"===this.options.type){var c=this.body.util.toTime(a+this.props.width/5);u.end=i?i(c,d,l):c}u[this.itemsData._fieldId]=s.randomUUID();var p=this.groupFromTarget(t);p&&(u.group=p.groupId),u=this._cloneItemData(u),this.options.onAdd(u,function(t){t&&e.itemsData.getDataSet().add(t)})}}},o.prototype._onMultiSelectItem=function(t){if(this.options.selectable){var e=this.itemFromTarget(t);if(e){var i=this.options.multiselect?this.getSelection():[],n=t.srcEvent&&t.srcEvent.shiftKey||!1;if(n&&this.options.multiselect){var s=this.itemsData.get(e.id).group,r=void 0;this.options.multiselectPerGroup&&i.length>0&&(r=this.itemsData.get(i[0]).group),this.options.multiselectPerGroup&&void 0!=r&&r!=s||i.push(e.id);var a=o._getItemRange(this.itemsData.get(i,this.itemOptions));if(!this.options.multiselectPerGroup||r==s){i=[];for(var h in this.items)if(this.items.hasOwnProperty(h)){var d=this.items[h],l=d.data.start,u=void 0!==d.data.end?d.data.end:l;!(l>=a.min&&u<=a.max)||this.options.multiselectPerGroup&&r!=this.itemsData.get(d.id).group||d instanceof m||i.push(d.id)}}}else{var c=i.indexOf(e.id);-1==c?i.push(e.id):i.splice(c,1)}this.setSelection(i),this.body.emitter.emit("select",{items:this.getSelection(),event:t})}}},o._getItemRange=function(t){var e=null,i=null;return t.forEach(function(t){(null==i||t.starte)&&(e=t.end):(null==e||t.start>e)&&(e=t.start)}),{min:i,max:e}},o.prototype.itemFromTarget=function(t){for(var e=t.target;e;){if(e.hasOwnProperty("timeline-item"))return e["timeline-item"];e=e.parentNode}return null},o.prototype.groupFromTarget=function(t){for(var e=t.center?t.center.y:t.clientY,i=0;ia&&ea)return n}else if(0===i&&e0?t.step:1,this.autoScale=!1)},o.prototype.setAutoScale=function(t){this.autoScale=t},o.prototype.setMinimumStep=function(t){if(void 0!=t){var e=31104e6,i=2592e6,o=864e5,n=36e5,s=6e4,r=1e3,a=1;1e3*e>t&&(this.scale="year",this.step=1e3),500*e>t&&(this.scale="year",this.step=500),100*e>t&&(this.scale="year",this.step=100),50*e>t&&(this.scale="year",this.step=50),10*e>t&&(this.scale="year",this.step=10),5*e>t&&(this.scale="year",this.step=5),e>t&&(this.scale="year",this.step=1),3*i>t&&(this.scale="month",this.step=3),i>t&&(this.scale="month",this.step=1),5*o>t&&(this.scale="day",this.step=5),2*o>t&&(this.scale="day",this.step=2),o>t&&(this.scale="day",this.step=1),o/2>t&&(this.scale="weekday",this.step=1),4*n>t&&(this.scale="hour",this.step=4),n>t&&(this.scale="hour",this.step=1),15*s>t&&(this.scale="minute",this.step=15),10*s>t&&(this.scale="minute",this.step=10),5*s>t&&(this.scale="minute",this.step=5),s>t&&(this.scale="minute",this.step=1),15*r>t&&(this.scale="second",this.step=15),10*r>t&&(this.scale="second",this.step=10),5*r>t&&(this.scale="second",this.step=5),r>t&&(this.scale="second",this.step=1),200*a>t&&(this.scale="millisecond",this.step=200),100*a>t&&(this.scale="millisecond",this.step=100),50*a>t&&(this.scale="millisecond",this.step=50),10*a>t&&(this.scale="millisecond",this.step=10),5*a>t&&(this.scale="millisecond",this.step=5),a>t&&(this.scale="millisecond",this.step=1)}},o.snap=function(t,e,i){var o=n(t);if("year"==e){var s=o.year()+Math.round(o.month()/12);o.year(Math.round(s/i)*i),o.month(0),o.date(0),o.hours(0),o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("month"==e)o.date()>15?(o.date(1),o.add(1,"month")):o.date(1),o.hours(0),o.minutes(0),o.seconds(0),o.milliseconds(0);else if("day"==e){switch(i){case 5:case 2:o.hours(24*Math.round(o.hours()/24));break;default:o.hours(12*Math.round(o.hours()/12))}o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("weekday"==e){switch(i){case 5:case 2:o.hours(12*Math.round(o.hours()/12));break;default:o.hours(6*Math.round(o.hours()/6))}o.minutes(0),o.seconds(0),o.milliseconds(0)}else if("hour"==e){switch(i){case 4:o.minutes(60*Math.round(o.minutes()/60));break;default:o.minutes(30*Math.round(o.minutes()/30))}o.seconds(0),o.milliseconds(0)}else if("minute"==e){switch(i){case 15:case 10:o.minutes(5*Math.round(o.minutes()/5)),o.seconds(0);break;case 5:o.seconds(60*Math.round(o.seconds()/60));break;default:o.seconds(30*Math.round(o.seconds()/30))}o.milliseconds(0)}else if("second"==e)switch(i){case 15:case 10:o.seconds(5*Math.round(o.seconds()/5)),o.milliseconds(0);break;case 5:o.milliseconds(1e3*Math.round(o.milliseconds()/1e3));break;default:o.milliseconds(500*Math.round(o.milliseconds()/500))}else if("millisecond"==e){var r=i>5?i/2:1;o.milliseconds(Math.round(o.milliseconds()/r)*r)}return o},o.prototype.isMajor=function(){if(1==this.switchedYear)switch(this.switchedYear=!1,this.scale){case"year":case"month":case"weekday":case"day":case"hour":case"minute":case"second":case"millisecond":return!0;default:return!1}else if(1==this.switchedMonth)switch(this.switchedMonth=!1,this.scale){case"weekday":case"day":case"hour":case"minute":case"second":case"millisecond":return!0;default:return!1}else if(1==this.switchedDay)switch(this.switchedDay=!1,this.scale){case"millisecond":case"second":case"minute":case"hour":return!0;default:return!1}var t=this.moment(this.current);switch(this.scale){case"millisecond":return 0==t.milliseconds();case"second":return 0==t.seconds();case"minute":return 0==t.hours()&&0==t.minutes();case"hour":return 0==t.hours();case"weekday":case"day":return 1==t.date();case"month":return 0==t.month();case"year":return!1;default:return!1}},o.prototype.getLabelMinor=function(t){void 0==t&&(t=this.current);var e=this.format.minorLabels[this.scale];return e&&e.length>0?this.moment(t).format(e):""},o.prototype.getLabelMajor=function(t){void 0==t&&(t=this.current);var e=this.format.majorLabels[this.scale];return e&&e.length>0?this.moment(t).format(e):""},o.prototype.getClassName=function(){function t(t){return t/h%2==0?" vis-even":" vis-odd"}function e(t){return t.isSame(new Date,"day")?" vis-today":t.isSame(s().add(1,"day"),"day")?" vis-tomorrow":t.isSame(s().add(-1,"day"),"day")?" vis-yesterday":""}function i(t){return t.isSame(new Date,"week")?" vis-current-week":""}function o(t){return t.isSame(new Date,"month")?" vis-current-month":""}function n(t){return t.isSame(new Date,"year")?" vis-current-year":""}var s=this.moment,r=this.moment(this.current),a=r.locale?r.locale("en"):r.lang("en"),h=this.step;switch(this.scale){case"millisecond":return t(a.milliseconds()).trim();case"second":return t(a.seconds()).trim();case"minute":return t(a.minutes()).trim();case"hour":var d=a.hours();return 4==this.step&&(d=d+"-h"+(d+4)),"vis-h"+d+e(a)+t(a.hours());case"weekday":return"vis-"+a.format("dddd").toLowerCase()+e(a)+i(a)+t(a.date());case"day":var l=a.date(),u=a.format("MMMM").toLowerCase();return"vis-day"+l+" vis-"+u+o(a)+t(l-1);case"month":return"vis-"+a.format("MMMM").toLowerCase()+o(a)+t(a.month());case"year":var c=a.year();return"vis-year"+c+n(a)+t(c);default:return""}},t.exports=o},function(t,e,i){function o(t,e,i){this.groupId=t,this.subgroups={},this.subgroupIndex=0,this.subgroupOrderer=e&&e.subgroupOrder,this.itemSet=i,this.dom={},this.props={label:{width:0,height:0}},this.className=null,this.items={},this.visibleItems=[],this.orderedItems={byStart:[],byEnd:[]},this.checkRangedItems=!1;var o=this;this.itemSet.body.emitter.on("checkRangedItems",function(){o.checkRangedItems=!0}),this._create(),this.setData(e)}var n=i(1),s=i(31);i(32);o.prototype._create=function(){var t=document.createElement("div");this.itemSet.options.groupEditable.order?t.className="vis-label draggable":t.className="vis-label",this.dom.label=t;var e=document.createElement("div");e.className="vis-inner",t.appendChild(e),this.dom.inner=e;var i=document.createElement("div");i.className="vis-group",i["timeline-group"]=this,this.dom.foreground=i,this.dom.background=document.createElement("div"),this.dom.background.className="vis-group",this.dom.axis=document.createElement("div"),this.dom.axis.className="vis-group",this.dom.marker=document.createElement("div"),this.dom.marker.style.visibility="hidden",this.dom.marker.innerHTML="?",this.dom.background.appendChild(this.dom.marker)},o.prototype.setData=function(t){var e;if(e=this.itemSet.options&&this.itemSet.options.groupTemplate?this.itemSet.options.groupTemplate(t):t&&t.content,e instanceof Element){for(this.dom.inner.appendChild(e);this.dom.inner.firstChild;)this.dom.inner.removeChild(this.dom.inner.firstChild);this.dom.inner.appendChild(e)}else void 0!==e&&null!==e?this.dom.inner.innerHTML=e:this.dom.inner.innerHTML=this.groupId||"";this.dom.label.title=t&&t.title||"",this.dom.inner.firstChild?n.removeClassName(this.dom.inner,"vis-hidden"):n.addClassName(this.dom.inner,"vis-hidden");var i=t&&t.className||null;i!=this.className&&(this.className&&(n.removeClassName(this.dom.label,this.className),n.removeClassName(this.dom.foreground,this.className),n.removeClassName(this.dom.background,this.className),n.removeClassName(this.dom.axis,this.className)),n.addClassName(this.dom.label,i),n.addClassName(this.dom.foreground,i),n.addClassName(this.dom.background,i),n.addClassName(this.dom.axis,i),this.className=i),this.style&&(n.removeCssText(this.dom.label,this.style),this.style=null),t&&t.style&&(n.addCssText(this.dom.label,t.style),this.style=t.style)},o.prototype.getLabelWidth=function(){return this.props.label.width},o.prototype.redraw=function(t,e,i){var o=!1,r=this.dom.marker.clientHeight;if(r!=this.lastMarkerHeight&&(this.lastMarkerHeight=r,n.forEach(this.items,function(t){t.dirty=!0,t.displayed&&t.redraw()}),i=!0),this._calculateSubGroupHeights(),"function"==typeof this.itemSet.options.order){if(i){var a=this,h=!1;n.forEach(this.items,function(t){t.displayed||(t.redraw(),a.visibleItems.push(t)),t.repositionX(h)});var d=this.orderedItems.byStart.slice().sort(function(t,e){return a.itemSet.options.order(t.data,e.data)});s.stack(d,e,!0)}this.visibleItems=this._updateVisibleItems(this.orderedItems,this.visibleItems,t)}else this.visibleItems=this._updateVisibleItems(this.orderedItems,this.visibleItems,t),this.itemSet.options.stack?s.stack(this.visibleItems,e,i):s.nostack(this.visibleItems,e,this.subgroups);var l=this._calculateHeight(e),u=this.dom.foreground;this.top=u.offsetTop,this.left=u.offsetLeft,this.width=u.offsetWidth,o=n.updateProperty(this,"height",l)||o,o=n.updateProperty(this.props.label,"width",this.dom.inner.clientWidth)||o,o=n.updateProperty(this.props.label,"height",this.dom.inner.clientHeight)||o,this.dom.background.style.height=l+"px",this.dom.foreground.style.height=l+"px",this.dom.label.style.height=l+"px";for(var c=0,p=this.visibleItems.length;p>c;c++){var f=this.visibleItems[c];f.repositionY(e)}return o},o.prototype._calculateSubGroupHeights=function(){if(Object.keys(this.subgroups).length>0){var t=this;this.resetSubgroups(),n.forEach(this.visibleItems,function(e){void 0!==e.data.subgroup&&(t.subgroups[e.data.subgroup].height=Math.max(t.subgroups[e.data.subgroup].height,e.height),t.subgroups[e.data.subgroup].visible=!0)})}},o.prototype._calculateHeight=function(t){var e,i=this.visibleItems;if(i.length>0){var o=i[0].top,s=i[0].top+i[0].height;if(n.forEach(i,function(t){o=Math.min(o,t.top),s=Math.max(s,t.top+t.height)}),o>t.axis){var r=o-t.axis;s-=r,n.forEach(i,function(t){t.top-=r})}e=s+t.item.vertical/2}else e=0;return e=Math.max(e,this.props.label.height)},o.prototype.show=function(){this.dom.label.parentNode||this.itemSet.dom.labelSet.appendChild(this.dom.label),this.dom.foreground.parentNode||this.itemSet.dom.foreground.appendChild(this.dom.foreground),this.dom.background.parentNode||this.itemSet.dom.background.appendChild(this.dom.background),this.dom.axis.parentNode||this.itemSet.dom.axis.appendChild(this.dom.axis)},o.prototype.hide=function(){var t=this.dom.label;t.parentNode&&t.parentNode.removeChild(t);var e=this.dom.foreground;e.parentNode&&e.parentNode.removeChild(e);var i=this.dom.background;i.parentNode&&i.parentNode.removeChild(i);var o=this.dom.axis;o.parentNode&&o.parentNode.removeChild(o)},o.prototype.add=function(t){if(this.items[t.id]=t,t.setParent(this),void 0!==t.data.subgroup&&(void 0===this.subgroups[t.data.subgroup]&&(this.subgroups[t.data.subgroup]={height:0,visible:!1,index:this.subgroupIndex,items:[]},this.subgroupIndex++),this.subgroups[t.data.subgroup].items.push(t)),this.orderSubgroups(),-1==this.visibleItems.indexOf(t)){var e=this.itemSet.body.range;this._checkIfVisible(t,this.visibleItems,e)}},o.prototype.orderSubgroups=function(){if(void 0!==this.subgroupOrderer){var t=[];if("string"==typeof this.subgroupOrderer){for(var e in this.subgroups)t.push({subgroup:e,sortField:this.subgroups[e].items[0].data[this.subgroupOrderer]});t.sort(function(t,e){return t.sortField-e.sortField})}else if("function"==typeof this.subgroupOrderer){for(var e in this.subgroups)t.push(this.subgroups[e].items[0].data);t.sort(this.subgroupOrderer)}if(t.length>0)for(var i=0;it?-1:l>=t?0:1};if(e.length>0)for(s=0;sl}),1==this.checkRangedItems)for(this.checkRangedItems=!1,s=0;sl})}for(s=0;s=0&&(s=e[r],!n(s));r--)void 0===o[s.id]&&(o[s.id]=!0,i.push(s));for(r=t+1;rn;n++)t[n].top=null;for(n=0,s=t.length;s>n;n++){var r=t[n];if(r.stack&&null===r.top){r.top=i.axis;do{for(var a=null,h=0,d=t.length;d>h;h++){var l=t[h];if(null!==l.top&&l!==r&&l.stack&&e.collision(r,l,i.item)){a=l;break}}null!=a&&(r.top=a.top+a.height+i.item.vertical)}while(a)}}},e.nostack=function(t,e,i){var o,n,s;for(o=0,n=t.length;n>o;o++)if(void 0!==t[o].data.subgroup){s=e.axis;for(var r in i)i.hasOwnProperty(r)&&1==i[r].visible&&i[r].indexe.left&&t.top-o.vertical+ie.top}},function(t,e,i){function o(t,e,i){if(this.props={content:{width:0}},this.overflow=!1,t){if(void 0==t.start)throw new Error('Property "start" missing in item '+t.id);if(void 0==t.end)throw new Error('Property "end" missing in item '+t.id)}n.call(this,t,e,i)}var n=(i(20),i(33));o.prototype=new n(null,null,null),o.prototype.baseClassName="vis-item vis-range",o.prototype.isVisible=function(t){return this.data.startt.start},o.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.frame=document.createElement("div"),t.frame.className="vis-item-overflow",t.box.appendChild(t.frame),t.content=document.createElement("div"),t.content.className="vis-item-content",t.frame.appendChild(t.content),t.box["timeline-item"]=this,this.dirty=!0),!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!t.box.parentNode){var e=this.parent.dom.foreground;if(!e)throw new Error("Cannot redraw item: parent has no foreground container element");e.appendChild(t.box)}if(this.displayed=!0,this.dirty){this._updateContents(this.dom.content),this._updateTitle(this.dom.box),this._updateDataAttributes(this.dom.box),this._updateStyle(this.dom.box);var i=(this.options.editable.updateTime||this.options.editable.updateGroup||this.editable===!0)&&this.editable!==!1,o=(this.data.className?" "+this.data.className:"")+(this.selected?" vis-selected":"")+(i?" vis-editable":" vis-readonly");t.box.className=this.baseClassName+o,this.overflow="hidden"!==window.getComputedStyle(t.frame).overflow,this.dom.content.style.maxWidth="none",this.props.content.width=this.dom.content.offsetWidth,this.height=this.dom.box.offsetHeight,this.dom.content.style.maxWidth="",this.dirty=!1}this._repaintDeleteButton(t.box),this._repaintDragLeft(),this._repaintDragRight()},o.prototype.show=function(){this.displayed||this.redraw()},o.prototype.hide=function(){if(this.displayed){var t=this.dom.box;t.parentNode&&t.parentNode.removeChild(t),this.displayed=!1}},o.prototype.repositionX=function(t){var e,i,o=this.parent.width,n=this.conversion.toScreen(this.data.start),s=this.conversion.toScreen(this.data.end);(void 0===t||t===!0)&&(-o>n&&(n=-o),s>2*o&&(s=2*o));var r=Math.max(s-n,1);switch(this.overflow?(this.left=n,this.width=r+this.props.content.width,i=this.props.content.width):(this.left=n,this.width=r,i=Math.min(s-n,this.props.content.width)),this.dom.box.style.left=this.left+"px",this.dom.box.style.width=r+"px",this.options.align){case"left":this.dom.content.style.left="0";break;case"right":this.dom.content.style.left=Math.max(r-i,0)+"px";break;case"center":this.dom.content.style.left=Math.max((r-i)/2,0)+"px";break;default:e=this.overflow?s>0?Math.max(-n,0):-i:0>n?-n:0,this.dom.content.style.left=e+"px"}},o.prototype.repositionY=function(){var t=this.options.orientation.item,e=this.dom.box;"top"==t?e.style.top=this.top+"px":e.style.top=this.parent.height-this.top-this.height+"px"},o.prototype._repaintDragLeft=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragLeft){var t=document.createElement("div");t.className="vis-drag-left",t.dragLeftItem=this,this.dom.box.appendChild(t),this.dom.dragLeft=t}else!this.selected&&this.dom.dragLeft&&(this.dom.dragLeft.parentNode&&this.dom.dragLeft.parentNode.removeChild(this.dom.dragLeft),this.dom.dragLeft=null)},o.prototype._repaintDragRight=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragRight){var t=document.createElement("div");t.className="vis-drag-right",t.dragRightItem=this,this.dom.box.appendChild(t),this.dom.dragRight=t}else!this.selected&&this.dom.dragRight&&(this.dom.dragRight.parentNode&&this.dom.dragRight.parentNode.removeChild(this.dom.dragRight),this.dom.dragRight=null)},t.exports=o},function(t,e,i){function o(t,e,i){this.id=null,this.parent=null,this.data=t,this.dom=null,this.conversion=e||{},this.options=i||{},this.selected=!1,this.displayed=!1,this.dirty=!0,this.top=null,this.left=null,this.width=null,this.height=null,this.editable=null,this.data&&this.data.hasOwnProperty("editable")&&"boolean"==typeof this.data.editable&&(this.editable=t.editable)}var n=i(20),s=i(1);o.prototype.stack=!0,o.prototype.select=function(){this.selected=!0,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.unselect=function(){this.selected=!1,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.setData=function(t){var e=void 0!=t.group&&this.data.group!=t.group;e&&this.parent.itemSet._moveToGroup(this,t.group),t.hasOwnProperty("editable")&&"boolean"==typeof t.editable&&(this.editable=t.editable),this.data=t,this.dirty=!0,this.displayed&&this.redraw()},o.prototype.setParent=function(t){this.displayed?(this.hide(),this.parent=t,this.parent&&this.show()):this.parent=t},o.prototype.isVisible=function(t){return!1},o.prototype.show=function(){return!1},o.prototype.hide=function(){return!1},o.prototype.redraw=function(){},o.prototype.repositionX=function(){},o.prototype.repositionY=function(){},o.prototype._repaintDeleteButton=function(t){var e=(this.options.editable.remove||this.data.editable===!0)&&this.data.editable!==!1;if(this.selected&&e&&!this.dom.deleteButton){var i=this,o=document.createElement("div");o.className="vis-delete",o.title="Delete this item",new n(o).on("tap",function(t){t.stopPropagation(),i.parent.removeFromDataSet(i)}),t.appendChild(o),this.dom.deleteButton=o}else!this.selected&&this.dom.deleteButton&&(this.dom.deleteButton.parentNode&&this.dom.deleteButton.parentNode.removeChild(this.dom.deleteButton),this.dom.deleteButton=null)},o.prototype._updateContents=function(t){var e;if(this.options.template){var i=this.parent.itemSet.itemsData.get(this.id);e=this.options.template(i)}else e=this.data.content;var o=this._contentToString(this.content)!==this._contentToString(e);if(o){if(e instanceof Element)t.innerHTML="",t.appendChild(e);else if(void 0!=e)t.innerHTML=e;else if("background"!=this.data.type||void 0!==this.data.content)throw new Error('Property "content" missing in item '+this.id);this.content=e}},o.prototype._updateTitle=function(t){null!=this.data.title?t.title=this.data.title||"":t.removeAttribute("vis-title")},o.prototype._updateDataAttributes=function(t){if(this.options.dataAttributes&&this.options.dataAttributes.length>0){var e=[];if(Array.isArray(this.options.dataAttributes))e=this.options.dataAttributes;else{if("all"!=this.options.dataAttributes)return;e=Object.keys(this.data)}for(var i=0;in;n++){var r=this.visibleItems[n];r.repositionY(e)}return o; +},o.prototype.show=function(){this.dom.background.parentNode||this.itemSet.dom.background.appendChild(this.dom.background)},t.exports=o},function(t,e,i){function o(t,e,i){if(this.props={dot:{width:0,height:0},line:{width:0,height:0}},t&&void 0==t.start)throw new Error('Property "start" missing in item '+t);n.call(this,t,e,i)}var n=i(33);i(1);o.prototype=new n(null,null,null),o.prototype.isVisible=function(t){var e=(t.end-t.start)/4;return this.data.start>t.start-e&&this.data.startt.start-e&&this.data.startt.start},o.prototype.redraw=function(){var t=this.dom;if(t||(this.dom={},t=this.dom,t.box=document.createElement("div"),t.frame=document.createElement("div"),t.frame.className="vis-item-overflow",t.box.appendChild(t.frame),t.content=document.createElement("div"),t.content.className="vis-item-content",t.frame.appendChild(t.content),this.dirty=!0),!this.parent)throw new Error("Cannot redraw item: no parent attached");if(!t.box.parentNode){var e=this.parent.dom.background;if(!e)throw new Error("Cannot redraw item: parent has no background container element");e.appendChild(t.box)}if(this.displayed=!0,this.dirty){this._updateContents(this.dom.content),this._updateTitle(this.dom.content),this._updateDataAttributes(this.dom.content),this._updateStyle(this.dom.box);var i=(this.data.className?" "+this.data.className:"")+(this.selected?" vis-selected":"");t.box.className=this.baseClassName+i,this.overflow="hidden"!==window.getComputedStyle(t.content).overflow,this.props.content.width=this.dom.content.offsetWidth,this.height=0,this.dirty=!1}},o.prototype.show=r.prototype.show,o.prototype.hide=r.prototype.hide,o.prototype.repositionX=r.prototype.repositionX,o.prototype.repositionY=function(t){var e="top"===this.options.orientation.item;this.dom.content.style.top=e?"":"0",this.dom.content.style.bottom=e?"0":"";var i;if(void 0!==this.data.subgroup){var o=this.data.subgroup,n=this.parent.subgroups,r=n[o].index;if(1==e){i=this.parent.subgroups[o].height+t.item.vertical,i+=0==r?t.axis-.5*t.item.vertical:0;var a=this.parent.top;for(var h in n)n.hasOwnProperty(h)&&1==n[h].visible&&n[h].indexr&&(a+=l)}i=this.parent.subgroups[o].height+t.item.vertical,this.dom.box.style.top=this.parent.height-d+a+"px",this.dom.box.style.bottom=""}}else this.parent instanceof s?(i=Math.max(this.parent.height,this.parent.itemSet.body.domProps.center.height,this.parent.itemSet.body.domProps.centerContainer.height),this.dom.box.style.top=e?"0":"",this.dom.box.style.bottom=e?"":"0"):(i=this.parent.height,this.dom.box.style.top=this.parent.top+"px",this.dom.box.style.bottom="");this.dom.box.style.height=i+"px"},t.exports=o},function(t,e,i){function o(t,e){this.dom={foreground:null,lines:[],majorTexts:[],minorTexts:[],redundant:{lines:[],majorTexts:[],minorTexts:[]}},this.props={range:{start:0,end:0,minimumStep:0},lineTop:0},this.defaultOptions={orientation:{axis:"bottom"},showMinorLabels:!0,showMajorLabels:!0,maxMinorChars:7,format:r.FORMAT,moment:h,timeAxis:null},this.options=n.extend({},this.defaultOptions),this.body=t,this._create(),this.setOptions(e)}var n=i(1),s=i(25),r=i(29),a=i(26),h=i(2);o.prototype=new s,o.prototype.setOptions=function(t){t&&(n.selectiveExtend(["showMinorLabels","showMajorLabels","maxMinorChars","hiddenDates","timeAxis","moment"],this.options,t),n.selectiveDeepExtend(["format"],this.options,t),"orientation"in t&&("string"==typeof t.orientation?this.options.orientation.axis=t.orientation:"object"==typeof t.orientation&&"axis"in t.orientation&&(this.options.orientation.axis=t.orientation.axis)),"locale"in t&&("function"==typeof h.locale?h.locale(t.locale):h.lang(t.locale)))},o.prototype._create=function(){this.dom.foreground=document.createElement("div"),this.dom.background=document.createElement("div"),this.dom.foreground.className="vis-time-axis vis-foreground",this.dom.background.className="vis-time-axis vis-background"},o.prototype.destroy=function(){this.dom.foreground.parentNode&&this.dom.foreground.parentNode.removeChild(this.dom.foreground),this.dom.background.parentNode&&this.dom.background.parentNode.removeChild(this.dom.background),this.body=null},o.prototype.redraw=function(){var t=this.props,e=this.dom.foreground,i=this.dom.background,o="top"==this.options.orientation.axis?this.body.dom.top:this.body.dom.bottom,n=e.parentNode!==o;this._calculateCharSize();var s=this.options.showMinorLabels&&"none"!==this.options.orientation.axis,r=this.options.showMajorLabels&&"none"!==this.options.orientation.axis;t.minorLabelHeight=s?t.minorCharHeight:0,t.majorLabelHeight=r?t.majorCharHeight:0,t.height=t.minorLabelHeight+t.majorLabelHeight,t.width=e.offsetWidth,t.minorLineHeight=this.body.domProps.root.height-t.majorLabelHeight-("top"==this.options.orientation.axis?this.body.domProps.bottom.height:this.body.domProps.top.height),t.minorLineWidth=1,t.majorLineHeight=t.minorLineHeight+t.majorLabelHeight,t.majorLineWidth=1;var a=e.nextSibling,h=i.nextSibling;return e.parentNode&&e.parentNode.removeChild(e),i.parentNode&&i.parentNode.removeChild(i),e.style.height=this.props.height+"px",this._repaintLabels(),a?o.insertBefore(e,a):o.appendChild(e),h?this.body.dom.backgroundVertical.insertBefore(i,h):this.body.dom.backgroundVertical.appendChild(i),this._isResized()||n},o.prototype._repaintLabels=function(){var t=this.options.orientation.axis,e=n.convert(this.body.range.start,"Number"),i=n.convert(this.body.range.end,"Number"),o=this.body.util.toTime((this.props.minorCharWidth||10)*this.options.maxMinorChars).valueOf(),s=o-a.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this.body.range,o);s-=this.body.util.toTime(0).valueOf();var h=new r(new Date(e),new Date(i),s,this.body.hiddenDates);h.setMoment(this.options.moment),this.options.format&&h.setFormat(this.options.format),this.options.timeAxis&&h.setScale(this.options.timeAxis),this.step=h;var l=this.dom;l.redundant.lines=l.lines,l.redundant.majorTexts=l.majorTexts,l.redundant.minorTexts=l.minorTexts,l.lines=[],l.majorTexts=[],l.minorTexts=[];var u,c,p,f,m,v,g,y,b,_,w=0,x=void 0,k=0,O=1e3;for(h.start(),c=h.getCurrent(),f=this.body.util.toScreen(c);h.hasNext()&&O>k;){k++,m=h.isMajor(),_=h.getClassName(),b=h.getLabelMinor(),u=c,p=f,h.next(),c=h.getCurrent(),v=h.isMajor(),f=this.body.util.toScreen(c),g=w,w=f-p;var M=w>=.4*g;if(this.options.showMinorLabels&&M){var D=this._repaintMinorText(p,b,t,_);D.style.width=w+"px"}m&&this.options.showMajorLabels?(p>0&&(void 0==x&&(x=p),D=this._repaintMajorText(p,h.getLabelMajor(),t,_)),y=this._repaintMajorLine(p,w,t,_)):M?y=this._repaintMinorLine(p,w,t,_):y&&(y.style.width=parseInt(y.style.width)+w+"px")}if(k!==O||d||(console.warn("Something is wrong with the Timeline scale. Limited drawing of grid lines to "+O+" lines."),d=!0),this.options.showMajorLabels){var C=this.body.util.toTime(0),S=h.getLabelMajor(C),T=S.length*(this.props.majorCharWidth||10)+10;(void 0==x||x>T)&&this._repaintMajorText(0,S,t,_)}n.forEach(this.dom.redundant,function(t){for(;t.length;){var e=t.pop();e&&e.parentNode&&e.parentNode.removeChild(e)}})},o.prototype._repaintMinorText=function(t,e,i,o){var n=this.dom.redundant.minorTexts.shift();if(!n){var s=document.createTextNode("");n=document.createElement("div"),n.appendChild(s),this.dom.foreground.appendChild(n)}return this.dom.minorTexts.push(n),n.childNodes[0].nodeValue=e,n.style.top="top"==i?this.props.majorLabelHeight+"px":"0",n.style.left=t+"px",n.className="vis-text vis-minor "+o,n},o.prototype._repaintMajorText=function(t,e,i,o){var n=this.dom.redundant.majorTexts.shift();if(!n){var s=document.createTextNode(e);n=document.createElement("div"),n.appendChild(s),this.dom.foreground.appendChild(n)}return this.dom.majorTexts.push(n),n.childNodes[0].nodeValue=e,n.className="vis-text vis-major "+o,n.style.top="top"==i?"0":this.props.minorLabelHeight+"px",n.style.left=t+"px",n},o.prototype._repaintMinorLine=function(t,e,i,o){var n=this.dom.redundant.lines.shift();n||(n=document.createElement("div"),this.dom.background.appendChild(n)),this.dom.lines.push(n);var s=this.props;return"top"==i?n.style.top=s.majorLabelHeight+"px":n.style.top=this.body.domProps.top.height+"px",n.style.height=s.minorLineHeight+"px",n.style.left=t-s.minorLineWidth/2+"px",n.style.width=e+"px",n.className="vis-grid vis-vertical vis-minor "+o,n},o.prototype._repaintMajorLine=function(t,e,i,o){var n=this.dom.redundant.lines.shift();n||(n=document.createElement("div"),this.dom.background.appendChild(n)),this.dom.lines.push(n);var s=this.props;return"top"==i?n.style.top="0":n.style.top=this.body.domProps.top.height+"px",n.style.left=t-s.majorLineWidth/2+"px",n.style.height=s.majorLineHeight+"px",n.style.width=e+"px",n.className="vis-grid vis-vertical vis-major "+o,n},o.prototype._calculateCharSize=function(){this.dom.measureCharMinor||(this.dom.measureCharMinor=document.createElement("DIV"),this.dom.measureCharMinor.className="vis-text vis-minor vis-measure",this.dom.measureCharMinor.style.position="absolute",this.dom.measureCharMinor.appendChild(document.createTextNode("0")),this.dom.foreground.appendChild(this.dom.measureCharMinor)),this.props.minorCharHeight=this.dom.measureCharMinor.clientHeight,this.props.minorCharWidth=this.dom.measureCharMinor.clientWidth,this.dom.measureCharMajor||(this.dom.measureCharMajor=document.createElement("DIV"),this.dom.measureCharMajor.className="vis-text vis-major vis-measure",this.dom.measureCharMajor.style.position="absolute",this.dom.measureCharMajor.appendChild(document.createTextNode("0")),this.dom.foreground.appendChild(this.dom.measureCharMajor)),this.props.majorCharHeight=this.dom.measureCharMajor.clientHeight,this.props.majorCharWidth=this.dom.measureCharMajor.clientWidth};var d=!1;t.exports=o},function(t,e,i){function o(t){this.active=!1,this.dom={container:t},this.dom.overlay=document.createElement("div"),this.dom.overlay.className="vis-overlay",this.dom.container.appendChild(this.dom.overlay),this.hammer=a(this.dom.overlay),this.hammer.on("tap",this._onTapOverlay.bind(this));var e=this,i=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];i.forEach(function(t){e.hammer.on(t,function(t){t.stopPropagation()})}),document&&document.body&&(this.onClick=function(i){n(i.target,t)||e.deactivate()},document.body.addEventListener("click",this.onClick)),void 0!==this.keycharm&&this.keycharm.destroy(),this.keycharm=s(),this.escListener=this.deactivate.bind(this)}function n(t,e){for(;t;){if(t===e)return!0;t=t.parentNode}return!1}var s=i(40),r=i(12),a=i(20),h=i(1);r(o.prototype),o.current=null,o.prototype.destroy=function(){this.deactivate(),this.dom.overlay.parentNode.removeChild(this.dom.overlay),this.onClick&&document.body.removeEventListener("click",this.onClick),this.hammer.destroy(),this.hammer=null},o.prototype.activate=function(){o.current&&o.current.deactivate(),o.current=this,this.active=!0,this.dom.overlay.style.display="none",h.addClassName(this.dom.container,"vis-active"),this.emit("change"),this.emit("activate"),this.keycharm.bind("esc",this.escListener)},o.prototype.deactivate=function(){this.active=!1,this.dom.overlay.style.display="",h.removeClassName(this.dom.container,"vis-active"),this.keycharm.unbind("esc",this.escListener),this.emit("change"),this.emit("deactivate")},o.prototype._onTapOverlay=function(t){this.activate(),t.stopPropagation()},t.exports=o},function(t,e,i){var o,n,s;!function(i,r){n=[],o=r,s="function"==typeof o?o.apply(e,n):o,!(void 0!==s&&(t.exports=s))}(this,function(){function t(t){var e,i=t&&t.preventDefault||!1,o=t&&t.container||window,n={},s={keydown:{},keyup:{}},r={};for(e=97;122>=e;e++)r[String.fromCharCode(e)]={code:65+(e-97),shift:!1};for(e=65;90>=e;e++)r[String.fromCharCode(e)]={code:e,shift:!0};for(e=0;9>=e;e++)r[""+e]={code:48+e,shift:!1};for(e=1;12>=e;e++)r["F"+e]={code:111+e,shift:!1};for(e=0;9>=e;e++)r["num"+e]={code:96+e,shift:!1};r["num*"]={code:106,shift:!1},r["num+"]={code:107,shift:!1},r["num-"]={code:109,shift:!1},r["num/"]={code:111,shift:!1},r["num."]={code:110,shift:!1},r.left={code:37,shift:!1},r.up={code:38,shift:!1},r.right={code:39,shift:!1},r.down={code:40,shift:!1},r.space={code:32,shift:!1},r.enter={code:13,shift:!1},r.shift={code:16,shift:void 0},r.esc={code:27,shift:!1},r.backspace={code:8,shift:!1},r.tab={code:9,shift:!1},r.ctrl={code:17,shift:!1},r.alt={code:18,shift:!1},r["delete"]={code:46,shift:!1},r.pageup={code:33,shift:!1},r.pagedown={code:34,shift:!1},r["="]={code:187,shift:!1},r["-"]={code:189,shift:!1},r["]"]={code:221,shift:!1},r["["]={code:219,shift:!1};var a=function(t){d(t,"keydown")},h=function(t){d(t,"keyup")},d=function(t,e){if(void 0!==s[e][t.keyCode]){for(var o=s[e][t.keyCode],n=0;no&&(o=30),o>1e3&&(o=1e3),e.redraw(),e.currentTimeTimer=setTimeout(t,o)}var e=this;t()},o.prototype.stop=function(){void 0!==this.currentTimeTimer&&(clearTimeout(this.currentTimeTimer),delete this.currentTimeTimer)},o.prototype.setCurrentTime=function(t){var e=n.convert(t,"Date").valueOf(),i=(new Date).valueOf();this.offset=e-i,this.redraw()},o.prototype.getCurrentTime=function(){return new Date((new Date).valueOf()+this.offset)},t.exports=o},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i0&&this._makeItem([]),this._makeHeader(n),this._handleObject(this.configureOptions[n],[n])),i++);this.options.showButton===!0&&!function(){var e=document.createElement("div");e.className="vis-configuration vis-config-button",e.innerHTML="generate options",e.onclick=function(){t._printOptions()},e.onmouseover=function(){e.className="vis-configuration vis-config-button hover"},e.onmouseout=function(){e.className="vis-configuration vis-config-button"},t.optionsContainer=document.createElement("div"),t.optionsContainer.className="vis-configuration vis-config-option-container",t.domElements.push(t.optionsContainer),t.domElements.push(e)}(),this._push()}},{key:"_push",value:function(){this.wrapper=document.createElement("div"),this.wrapper.className="vis-configuration-wrapper",this.container.appendChild(this.wrapper);for(var t=0;t1?o-1:0),s=1;o>s;s++)n[s-1]=e[s];return n.forEach(function(t){r.appendChild(t)}),i.domElements.push(r),{v:i.domElements.length}}();if("object"==typeof r)return r.v}return 0}},{key:"_makeHeader",value:function(t){var e=document.createElement("div");e.className="vis-configuration vis-config-header",e.innerHTML=t,this._makeItem([],e)}},{key:"_makeLabel",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],o=document.createElement("div");return o.className="vis-configuration vis-config-label vis-config-s"+e.length,i===!0?o.innerHTML=""+t+":":o.innerHTML=t+":",o}},{key:"_makeDropdown",value:function(t,e,i){var o=document.createElement("select");o.className="vis-configuration vis-config-select";var n=0;void 0!==e&&-1!==t.indexOf(e)&&(n=t.indexOf(e));for(var s=0;se&&n>e*u?(a.min=Math.ceil(e*u),l=a.min,d="range increased"):n>e/u&&(a.min=Math.ceil(e/u),l=a.min,d="range increased"),e*u>s&&1!==s&&(a.max=Math.ceil(e*u),l=a.max,d="range increased"),a.value=e}else a.value=o;var c=document.createElement("input");c.className="vis-configuration vis-config-rangeinput",c.value=a.value;var p=this;a.onchange=function(){c.value=this.value,p._update(Number(this.value),i)},a.oninput=function(){c.value=this.value};var f=this._makeLabel(i[i.length-1],i),m=this._makeItem(i,f,a,c);""!==d&&this.popupHistory[m]!==l&&(this.popupHistory[m]=l,this._setupPopup(d,m))}},{key:"_setupPopup",value:function(t,e){var i=this;if(this.initialized===!0&&this.allowCreation===!0&&this.popupCountervar options = "+JSON.stringify(t,null,2)+""}},{key:"getOptions",value:function(){for(var t={},e=0;es;s++)for(r=0;rp?p+1:p;var f=l/this.r,m=a.RGBToHSV(this.color.r,this.color.g,this.color.b);m.h=p,m.s=f;var v=a.HSVToRGB(m.h,m.s,m.v);v.a=this.color.a,this.color=v,this.initialColorDiv.style.backgroundColor="rgba("+this.initialColor.r+","+this.initialColor.g+","+this.initialColor.b+","+this.initialColor.a+")",this.newColorDiv.style.backgroundColor="rgba("+this.color.r+","+this.color.g+","+this.color.b+","+this.color.a+")"}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;is.distance?console.log('%cUnknown option detected: "'+e+'" in '+t.printLocation(n.path,e,"")+"Perhaps it was misplaced? Matching option found at: "+t.printLocation(s.path,s.closestMatch,""),h):n.distance<=d?console.log('%cUnknown option detected: "'+e+'". Did you mean "'+n.closestMatch+'"?'+t.printLocation(n.path,e),h):console.log('%cUnknown option detected: "'+e+'". Did you mean one of these: '+t.print(Object.keys(i))+t.printLocation(o,e),h),r=!0}},{key:"findInOptions",value:function(e,i,o){var n=arguments.length<=3||void 0===arguments[3]?!1:arguments[3],r=1e9,a="",h=[],d=e.toLowerCase(),l=void 0;for(var u in i){var c=void 0;if(void 0!==i[u].__type__&&n===!0){var p=t.findInOptions(e,i[u],s.copyAndExtendArray(o,u));r>p.distance&&(a=p.closestMatch,h=p.path,r=p.distance,l=p.indexMatch)}else-1!==u.toLowerCase().indexOf(d)&&(l=u),c=t.levenshteinDistance(e,u),r>c&&(a=u,h=s.copyArray(o),r=c)}return{closestMatch:a,path:h,distance:r,indexMatch:l}}},{key:"printLocation",value:function(t,e){for(var i=arguments.length<=2||void 0===arguments[2]?"Problem value found at: \n":arguments[2],o="\n\n"+i+"options = {\n",n=0;ns;s++)o+=" ";o+=t[n]+": {\n"}for(var s=0;sr?r:t,e=null==e?r:r>e?r:e}return{min:null!=t?new Date(t):null,max:null!=e?new Date(e):null}},o.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=e-s.getAbsoluteLeft(this.dom.centerContainer),n=i-s.getAbsoluteTop(this.dom.centerContainer),r=this._toTime(o),a=c.customTimeFromTarget(t),h=s.getTarget(t),d=null;s.hasParent(h,this.timeAxis.dom.foreground)?d="axis":this.timeAxis2&&s.hasParent(h,this.timeAxis2.dom.foreground)?d="axis":s.hasParent(h,this.linegraph.yAxisLeft.dom.frame)?d="data-axis":s.hasParent(h,this.linegraph.yAxisRight.dom.frame)?d="data-axis":s.hasParent(h,this.linegraph.legendLeft.dom.frame)?d="legend":s.hasParent(h,this.linegraph.legendRight.dom.frame)?d="legend":null!=a?d="custom-time":s.hasParent(h,this.currentTime.bar)?d="current-time":s.hasParent(h,this.dom.center)&&(d="background");var l=[],u=this.linegraph.yAxisLeft,p=this.linegraph.yAxisRight;return u.hidden||l.push(u.screenToValue(n)),p.hidden||l.push(p.screenToValue(n)),{event:t,what:d,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:n,time:r,value:l}},o.prototype._createConfigurator=function(){return new f(this,this.dom.container,y)},t.exports=o},function(t,e,i){function o(t,e){this.id=n.randomUUID(),this.body=t,this.defaultOptions={yAxisOrientation:"left",defaultGroup:"default",sort:!0,sampling:!0,stack:!1,graphHeight:"400px",shaded:{enabled:!1,orientation:"bottom"},style:"line",barChart:{width:50,sideBySide:!1,align:"center"},interpolation:{enabled:!0,parametrization:"centripetal",alpha:.5},drawPoints:{enabled:!0,size:6,style:"square"},dataAxis:{},legend:{},groups:{visibility:{}}},this.options=n.extend({},this.defaultOptions),this.dom={},this.props={},this.hammer=null,this.groups={},this.abortedGraphUpdate=!1,this.updateSVGheight=!1,this.updateSVGheightOnResize=!1,this.forceGraphUpdate=!0;var i=this;this.itemsData=null,this.groupsData=null,this.itemListeners={add:function(t,e,o){i._onAdd(e.items)},update:function(t,e,o){i._onUpdate(e.items)},remove:function(t,e,o){i._onRemove(e.items)}},this.groupListeners={add:function(t,e,o){ +i._onAddGroups(e.items)},update:function(t,e,o){i._onUpdateGroups(e.items)},remove:function(t,e,o){i._onRemoveGroups(e.items)}},this.items={},this.selection=[],this.lastStart=this.body.range.start,this.touchParams={},this.svgElements={},this.setOptions(e),this.groupsUsingDefaultStyles=[0],this.body.emitter.on("rangechanged",function(){i.lastStart=i.body.range.start,i.svg.style.left=n.option.asSize(-i.props.width),i.forceGraphUpdate=!0,i.redraw.call(i)}),this._create(),this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups}}var n=i(1),s=i(7),r=i(8),a=i(10),h=i(25),d=i(50),l=i(52),u=i(56),c=i(53),p=i(55),f=i(54),m="__ungrouped__";o.prototype=new h,o.prototype._create=function(){var t=document.createElement("div");t.className="vis-line-graph",this.dom.frame=t,this.svg=document.createElementNS("http://www.w3.org/2000/svg","svg"),this.svg.style.position="relative",this.svg.style.height=(""+this.options.graphHeight).replace("px","")+"px",this.svg.style.display="block",t.appendChild(this.svg),this.options.dataAxis.orientation="left",this.yAxisLeft=new d(this.body,this.options.dataAxis,this.svg,this.options.groups),this.options.dataAxis.orientation="right",this.yAxisRight=new d(this.body,this.options.dataAxis,this.svg,this.options.groups),delete this.options.dataAxis.orientation,this.legendLeft=new u(this.body,this.options.legend,"left",this.options.groups),this.legendRight=new u(this.body,this.options.legend,"right",this.options.groups),this.show()},o.prototype.setOptions=function(t){if(t){var e=["sampling","defaultGroup","stack","height","graphHeight","yAxisOrientation","style","barChart","dataAxis","sort","groups"];void 0===t.graphHeight&&void 0!==t.height?(this.updateSVGheight=!0,this.updateSVGheightOnResize=!0):void 0!==this.body.domProps.centerContainer.height&&void 0!==t.graphHeight&&parseInt((t.graphHeight+"").replace("px",""))i?-1:1});for(var o=new Array(t.length),s=0;s0){var h={};for(this._getRelevantData(a,h,n,r),this._applySampling(a,h),e=0;e0)switch(t.options.style){case"line":l.hasOwnProperty(a[e])||(l[a[e]]=p.calcPath(h[a[e]],t)),p.draw(l[a[e]],t,this.framework);case"point":case"points":("point"==t.options.style||"points"==t.options.style||1==t.options.drawPoints.enabled)&&f.draw(h[a[e]],t,this.framework);break;case"bar":}}}return s.cleanupElements(this.svgElements),!1},o.prototype._stack=function(t,e){var i,o,n,s,r;i=0;for(var a=0;at[a].x){r=e[h],s=0==h?r:e[h-1],i=h;break}}void 0===r&&(s=e[e.length-1],r=e[e.length-1]),o=r.x-s.x,n=r.y-s.y,0==o?t[a].y=t[a].orginalY+r.y:t[a].y=t[a].orginalY+n/o*(t[a].x-s.x)+s.y}},o.prototype._getRelevantData=function(t,e,i,o){var s,r,a,h;if(t.length>0)for(r=0;rt?-1:1},u=Math.max(0,n.binarySearchValue(d,i,"x","before",l)),c=Math.min(d.length,n.binarySearchValue(d,o,"x","after",l)+1);0>=c&&(c=d.length);var p=new Array(c-u);for(a=u;c>a;a++)h=s.itemsData[a],p[a-u]=h;e[t[r]]=p}else e[t[r]]=s.itemsData}},o.prototype._applySampling=function(t,e){var i;if(t.length>0)for(var o=0;o0){var s=1,r=n.length,a=this.body.util.toGlobalScreen(n[n.length-1].x)-this.body.util.toGlobalScreen(n[0].x),h=r/a;s=Math.min(Math.ceil(.2*r),Math.max(1,Math.round(h)));for(var d=new Array(r),l=0;r>l;l+=s){var u=Math.round(l/s);d[u]=n[l]}e[t[o]]=d.splice(0,Math.round(r/s))}}},o.prototype._getYRanges=function(t,e,i){var o,n,s,r,a=[],h=[];if(t.length>0){for(s=0;s0&&(n=this.groups[t[s]],r.stack===!0&&"bar"===r.style?"left"===r.yAxisOrientation?a=a.concat(n.getItems()):h=h.concat(n.getItems()):i[t[s]]=n.getYRange(o,t[s]));c.getStackedYRange(a,i,t,"__barStackLeft","left"),c.getStackedYRange(h,i,t,"__barStackRight","right")}},o.prototype._updateYAxis=function(t,e){var i,o,n=!1,s=!1,r=!1,a=1e9,h=1e9,d=-1e9,l=-1e9;if(t.length>0){for(var u=0;ui?i:a,d=o>d?o:d):(r=!0,h=h>i?i:h,l=o>l?o:l));1==s&&this.yAxisLeft.setRange(a,d),1==r&&this.yAxisRight.setRange(h,l)}n=this._toggleAxisVisiblity(s,this.yAxisLeft)||n,n=this._toggleAxisVisiblity(r,this.yAxisRight)||n,1==r&&1==s?(this.yAxisLeft.drawIcons=!0,this.yAxisRight.drawIcons=!0):(this.yAxisLeft.drawIcons=!1,this.yAxisRight.drawIcons=!1),this.yAxisRight.master=!s,this.yAxisRight.masterAxis=this.yAxisLeft,0==this.yAxisRight.master?(1==r?this.yAxisLeft.lineOffset=this.yAxisRight.width:this.yAxisLeft.lineOffset=0,n=this.yAxisLeft.redraw()||n,n=this.yAxisRight.redraw()||n):n=this.yAxisRight.redraw()||n;for(var p=["__barStackLeft","__barStackRight","__lineStackLeft","__lineStackRight"],u=0;ut?-1:1});for(var a=0;a=0&&t._redrawLabel(o-2,e.val,i,"vis-y-axis vis-major",t.props.majorCharHeight),t.master===!0&&(n?t._redrawLine(o,i,"vis-grid vis-horizontal vis-major",t.options.majorLinesOffset,t.props.majorLineWidth):t._redrawLine(o,i,"vis-grid vis-horizontal vis-minor",t.options.minorLinesOffset,t.props.minorLineWidth))});var d=0;void 0!==this.options[i].title&&void 0!==this.options[i].title.text&&(d=this.props.titleCharHeight);var l=this.options.icons===!0?Math.max(this.options.iconWidth,d)+this.options.labelOffsetX+15:d+this.options.labelOffsetX+15;return this.maxLabelSize>this.width-l&&this.options.visible===!0?(this.width=this.maxLabelSize+l,this.options.width=this.width+"px",s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),this.redraw(),e=!0):this.maxLabelSizethis.minWidth?(this.width=Math.max(this.minWidth,this.maxLabelSize+l),this.options.width=this.width+"px",s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),this.redraw(),e=!0):(s.cleanupElements(this.DOMelements.lines),s.cleanupElements(this.DOMelements.labels),e=!1),e},o.prototype.convertValue=function(t){return this.scale.convertValue(t)},o.prototype.screenToValue=function(t){return this.scale.screenToValue(t)},o.prototype._redrawLabel=function(t,e,i,o,n){var r=s.getDOMElement("div",this.DOMelements.labels,this.dom.frame);r.className=o,r.innerHTML=e,"left"===i?(r.style.left="-"+this.options.labelOffsetX+"px",r.style.textAlign="right"):(r.style.right="-"+this.options.labelOffsetX+"px",r.style.textAlign="left"),r.style.top=t-.5*n+this.options.labelOffsetY+"px",e+="";var a=Math.max(this.props.majorCharWidth,this.props.minorCharWidth);this.maxLabelSize.5*(h.magnitudefactor*h.minorSteps[h.minorStepIdx])?e+h.magnitudefactor*h.minorSteps[h.minorStepIdx]:e};i&&(this._start-=2*this.magnitudefactor*this.minorSteps[this.minorStepIdx],this._start=d(this._start)),o&&(this._end+=this.magnitudefactor*this.minorSteps[this.minorStepIdx],this._end=d(this._end)),this.determineScale()}}i.prototype.setCharHeight=function(t){this.majorCharHeight=t},i.prototype.setHeight=function(t){this.containerHeight=t},i.prototype.determineScale=function(){var t=this._end-this._start;this.scale=this.containerHeight/t;var e=this.majorCharHeight/this.scale,i=Math.round(Math.log(t)/Math.LN10);this.minorStepIdx=-1,this.magnitudefactor=Math.pow(10,i);var o=0;0>i&&(o=i);for(var n=!1,s=o;Math.abs(s)<=Math.abs(i);s++){this.magnitudefactor=Math.pow(10,s);for(var r=0;r=e){n=!0,this.minorStepIdx=r;break}}if(n===!0)break}},i.prototype.is_major=function(t){return t%(this.magnitudefactor*this.majorSteps[this.minorStepIdx])===0},i.prototype.getStep=function(){return this.magnitudefactor*this.minorSteps[this.minorStepIdx]},i.prototype.getFirstMajor=function(){var t=this.magnitudefactor*this.majorSteps[this.minorStepIdx];return this.convertValue(this._start+(t-this._start%t)%t)},i.prototype.formatValue=function(t){var e=t.toPrecision(5);return"function"==typeof this.formattingFunction&&(e=this.formattingFunction(t)),"number"==typeof e?""+e:"string"==typeof e?e:t.toPrecision(5)},i.prototype.getLines=function(){for(var t=[],e=this.getStep(),i=(e-this._start%e)%e,o=this._start+i;this._end-o>1e-5;o+=e)o!=this._start&&t.push({major:this.is_major(o),y:this.convertValue(o),val:this.formatValue(o)});return t},i.prototype.followScale=function(t){var e=this.minorStepIdx,i=this._start,o=this._end,n=this,s=function(){n.magnitudefactor*=2},r=function(){n.magnitudefactor/=2};t.minorStepIdx<=1&&this.minorStepIdx<=1||t.minorStepIdx>1&&this.minorStepIdx>1||(t.minorStepIdxo+1e-5)r(),d=!1;else{if(!this.autoScaleStart&&this._start=0)){r(),d=!1;continue}console.warn("Can't adhere to given 'min' range, due to zeroalign")}this.autoScaleStart&&this.autoScaleEnd&&o-i>u?(s(),d=!1):d=!0}}},i.prototype.convertValue=function(t){return this.containerHeight-(t-this._start)*this.scale},i.prototype.screenToValue=function(t){return(this.containerHeight-t)/this.scale+this._start},t.exports=i},function(t,e,i){function o(t,e,i,o){this.id=e;var s=["sampling","style","sort","yAxisOrientation","barChart","drawPoints","shaded","interpolation","zIndex","excludeFromStacking","excludeFromLegend"];this.options=n.selectiveBridgeObject(s,i),this.usingDefaultStyle=void 0===t.className,this.groupsUsingDefaultStyles=o,this.zeroPosition=0,this.update(t),1==this.usingDefaultStyle&&(this.groupsUsingDefaultStyles[0]+=1),this.itemsData=[],this.visible=void 0===t.visible?!0:t.visible}var n=i(1),s=(i(7),i(53)),r=i(55),a=i(54);o.prototype.setItems=function(t){null!=t?(this.itemsData=t,1==this.options.sort&&n.insertSort(this.itemsData,function(t,e){return t.x>e.x?1:-1})):this.itemsData=[]},o.prototype.getItems=function(){return this.itemsData},o.prototype.setZeroPosition=function(t){this.zeroPosition=t},o.prototype.setOptions=function(t){if(void 0!==t){var e=["sampling","style","sort","yAxisOrientation","barChart","zIndex","excludeFromStacking","excludeFromLegend"];n.selectiveDeepExtend(e,this.options,t),"function"==typeof t.drawPoints&&(t.drawPoints={onRender:t.drawPoints}),n.mergeOptions(this.options,t,"interpolation"),n.mergeOptions(this.options,t,"drawPoints"),n.mergeOptions(this.options,t,"shaded"),t.interpolation&&"object"==typeof t.interpolation&&t.interpolation.parametrization&&("uniform"==t.interpolation.parametrization?this.options.interpolation.alpha=0:"chordal"==t.interpolation.parametrization?this.options.interpolation.alpha=1:(this.options.interpolation.parametrization="centripetal",this.options.interpolation.alpha=.5))}},o.prototype.update=function(t){this.group=t,this.content=t.content||"graph",this.className=t.className||this.className||"vis-graph-group"+this.groupsUsingDefaultStyles[0]%10,this.visible=void 0===t.visible?!0:t.visible,this.style=t.style,this.setOptions(t.options)},o.prototype.getLegend=function(t,e,i,o,n){if(void 0==i||null==i){var h=document.createElementNS("http://www.w3.org/2000/svg","svg");i={svg:h,svgElements:{},options:this.options,groups:[this]}}switch((void 0==o||null==o)&&(o=0),(void 0==n||null==n)&&(n=.5*e),this.options.style){case"line":r.drawIcon(this,o,n,t,e,i);break;case"points":case"point":a.drawIcon(this,o,n,t,e,i);break;case"bar":s.drawIcon(this,o,n,t,e,i)}return{icon:i.svg,label:this.content,orientation:this.options.yAxisOrientation}},o.prototype.getYRange=function(t){for(var e=t[0].y,i=t[0].y,o=0;ot[o].y?t[o].y:e,i=i0&&(i=Math.min(i,Math.abs(e[o-1].screen_x-e[o].screen_x))),0===i&&(void 0===t[e[o].screen_x]&&(t[e[o].screen_x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}),t[e[o].screen_x].amount+=1)},o._getSafeDrawData=function(t,e,i){var o,n;return t0?(o=i>t?i:t,n=0,"left"===e.options.barChart.align?n-=.5*t:"right"===e.options.barChart.align&&(n+=.5*t)):(o=e.options.barChart.width,n=0,"left"===e.options.barChart.align?n-=.5*e.options.barChart.width:"right"===e.options.barChart.align&&(n+=.5*e.options.barChart.width)),{width:o,offset:n}},o.getStackedYRange=function(t,e,i,n,s){if(t.length>0){t.sort(function(t,e){return t.screen_x===e.screen_x?t.groupIde[s].screen_y?e[s].screen_y:o,n=nt[r].accumulatedNegative?t[r].accumulatedNegative:o,o=o>t[r].accumulatedPositive?t[r].accumulatedPositive:o,n=n0){var i=[];return i=1==e.options.interpolation.enabled?o._catmullRom(t,e):o._linear(t)}},o.drawIcon=function(t,e,i,o,s,r){var a,h,d=.5*s,l=n.getSVGElement("rect",r.svgElements,r.svg);if(l.setAttributeNS(null,"x",e),l.setAttributeNS(null,"y",i-d),l.setAttributeNS(null,"width",o),l.setAttributeNS(null,"height",2*d),l.setAttributeNS(null,"class","vis-outline"),a=n.getSVGElement("path",r.svgElements,r.svg),a.setAttributeNS(null,"class",t.className),void 0!==t.style&&a.setAttributeNS(null,"style",t.style),a.setAttributeNS(null,"d","M"+e+","+i+" L"+(e+o)+","+i),1==t.options.shaded.enabled&&(h=n.getSVGElement("path",r.svgElements,r.svg),"top"==t.options.shaded.orientation?h.setAttributeNS(null,"d","M"+e+", "+(i-d)+"L"+e+","+i+" L"+(e+o)+","+i+" L"+(e+o)+","+(i-d)):h.setAttributeNS(null,"d","M"+e+","+i+" L"+e+","+(i+d)+" L"+(e+o)+","+(i+d)+"L"+(e+o)+","+i),h.setAttributeNS(null,"class",t.className+" vis-icon-fill"),void 0!==t.options.shaded.style&&""!==t.options.shaded.style&&h.setAttributeNS(null,"style",t.options.shaded.style)),1==t.options.drawPoints.enabled){var u={style:t.options.drawPoints.style,styles:t.options.drawPoints.styles,size:t.options.drawPoints.size,className:t.className};n.drawPoint(e+.5*o,i,u,r.svgElements,r.svg)}},o.drawShading=function(t,e,i,o){if(1==e.options.shaded.enabled){var s=Number(o.svg.style.height.replace("px","")),r=n.getSVGElement("path",o.svgElements,o.svg),a="L";1==e.options.interpolation.enabled&&(a="C");var h,d=0;d="top"==e.options.shaded.orientation?0:"bottom"==e.options.shaded.orientation?s:Math.min(Math.max(0,e.zeroPosition),s),h="group"==e.options.shaded.orientation&&null!=i&&void 0!=i?"M"+t[0][0]+","+t[0][1]+" "+this.serializePath(t,a,!1)+" L"+i[i.length-1][0]+","+i[i.length-1][1]+" "+this.serializePath(i,a,!0)+i[0][0]+","+i[0][1]+" Z":"M"+t[0][0]+","+t[0][1]+" "+this.serializePath(t,a,!1)+" V"+d+" H"+t[0][0]+" Z",r.setAttributeNS(null,"class",e.className+" vis-fill"),void 0!==e.options.shaded.style&&r.setAttributeNS(null,"style",e.options.shaded.style),r.setAttributeNS(null,"d",h)}},o.draw=function(t,e,i){if(null!=t&&void 0!=t){var o=n.getSVGElement("path",i.svgElements,i.svg);o.setAttributeNS(null,"class",e.className),void 0!==e.style&&o.setAttributeNS(null,"style",e.style);var s="L";1==e.options.interpolation.enabled&&(s="C"),o.setAttributeNS(null,"d","M"+t[0][0]+","+t[0][1]+" "+this.serializePath(t,s,!1))}},o.serializePath=function(t,e,i){if(t.length<2)return"";var o=e;if(i)for(var n=t.length-2;n>0;n--)o+=t[n][0]+","+t[n][1]+" ";else for(var n=1;nl;l++)e=0==l?t[0]:t[l-1],i=t[l],o=t[l+1],n=d>l+2?t[l+2]:o,s={screen_x:(-e.screen_x+6*i.screen_x+o.screen_x)*h,screen_y:(-e.screen_y+6*i.screen_y+o.screen_y)*h},r={screen_x:(i.screen_x+6*o.screen_x-n.screen_x)*h,screen_y:(i.screen_y+6*o.screen_y-n.screen_y)*h},a.push([s.screen_x,s.screen_y]),a.push([r.screen_x,r.screen_y]),a.push([o.screen_x,o.screen_y]);return a},o._catmullRom=function(t,e){var i=e.options.interpolation.alpha;if(0==i||void 0===i)return this._catmullRomUniform(t);var o,n,s,r,a,h,d,l,u,c,p,f,m,v,g,y,b,_,w,x=[];x.push([Math.round(t[0].screen_x),Math.round(t[0].screen_y)]);for(var k=t.length,O=0;k-1>O;O++)o=0==O?t[0]:t[O-1],n=t[O],s=t[O+1],r=k>O+2?t[O+2]:s,d=Math.sqrt(Math.pow(o.screen_x-n.screen_x,2)+Math.pow(o.screen_y-n.screen_y,2)),l=Math.sqrt(Math.pow(n.screen_x-s.screen_x,2)+Math.pow(n.screen_y-s.screen_y,2)),u=Math.sqrt(Math.pow(s.screen_x-r.screen_x,2)+Math.pow(s.screen_y-r.screen_y,2)),v=Math.pow(u,i),y=Math.pow(u,2*i),g=Math.pow(l,i),b=Math.pow(l,2*i),w=Math.pow(d,i),_=Math.pow(d,2*i),c=2*_+3*w*g+b,p=2*y+3*v*g+b,f=3*w*(w+g),f>0&&(f=1/f),m=3*v*(v+g),m>0&&(m=1/m),a={screen_x:(-b*o.screen_x+c*n.screen_x+_*s.screen_x)*f,screen_y:(-b*o.screen_y+c*n.screen_y+_*s.screen_y)*f},h={screen_x:(y*n.screen_x+p*s.screen_x-b*r.screen_x)*m,screen_y:(y*n.screen_y+p*s.screen_y-b*r.screen_y)*m},0==a.screen_x&&0==a.screen_y&&(a=n),0==h.screen_x&&0==h.screen_y&&(h=s),x.push([a.screen_x,a.screen_y]),x.push([h.screen_x,h.screen_y]),x.push([s.screen_x,s.screen_y]);return x},o._linear=function(t){for(var e=[],i=0;it?-1:1});for(var i=0;i")}this.dom.textArea.innerHTML=s,this.dom.textArea.style.lineHeight=.75*this.options.iconSize+this.options.iconSpacing+"px"}},o.prototype.drawLegendIcons=function(){if(this.dom.frame.parentNode){var t=Object.keys(this.groups);t.sort(function(t,e){return e>t?-1:1}),s.resetElements(this.svgElements);var e=window.getComputedStyle(this.dom.frame).paddingTop,i=Number(e.replace("px","")),o=i,n=this.options.iconSize,r=.75*this.options.iconSize,a=i+.5*r+3;this.svg.style.width=n+5+i+"px";for(var h=0;h0){var i=this.groupIndex%this.groupsArray.length;this.groupIndex++,e={},e.color=this.groups[this.groupsArray[i]],this.groups[t]=e}else{var i=this.defaultIndex%this.defaultGroups.length;this.defaultIndex++,e={},e.color=this.defaultGroups[i],this.groups[t]=e}return e}},{key:"add",value:function(t,e){return this.groups[t]=e,this.groupsArray.push(t),e}}]),t}();e["default"]=r,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;it.left&&this.shape.topt.top}},{key:"isBoundingBoxOverlappingWith",value:function(t){return this.shape.boundingBox.leftt.left&&this.shape.boundingBox.topt.top}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],o=arguments.length<=3||void 0===arguments[3]?{}:arguments[3],n=["color","font","fixed","shadow"];if(F.selectiveNotDeepExtend(n,t,e,i),F.mergeOptions(t,e,"shadow",i,o),void 0!==e.color&&null!==e.color){var s=F.parseColor(e.color);F.fillIfDefined(t.color,s)}else i===!0&&null===e.color&&(t.color=F.bridgeObject(o.color));void 0!==e.fixed&&null!==e.fixed&&("boolean"==typeof e.fixed?(t.fixed.x=e.fixed,t.fixed.y=e.fixed):(void 0!==e.fixed.x&&"boolean"==typeof e.fixed.x&&(t.fixed.x=e.fixed.x),void 0!==e.fixed.y&&"boolean"==typeof e.fixed.y&&(t.fixed.y=e.fixed.y))),void 0!==e.font&&null!==e.font?a["default"].parseOptions(t.font,e):i===!0&&null===e.font&&(t.font=F.bridgeObject(o.font)),void 0!==e.scaling&&F.mergeOptions(t.scaling,e.scaling,"label",i,o.scaling)}}]),t}();e["default"]=B,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s=function(){function t(t,e){for(var i=0;i=this.nodeOptions.scaling.label.maxVisible&&(r=Number(this.nodeOptions.scaling.label.maxVisible)/this.body.view.scale);var h=this.size.yLine,d=this._getColor(a),l=n(d,2),u=l[0],c=l[1],p=this._setAlignment(t,i,h,s),f=n(p,2);i=f[0],h=f[1],t.font=(e&&this.nodeOptions.labelHighlightBold?"bold ":"")+r+"px "+this.fontOptions.face,t.fillStyle=u,t.textAlign="center",this.fontOptions.strokeWidth>0&&(t.lineWidth=this.fontOptions.strokeWidth,t.strokeStyle=c,t.lineJoin="round");for(var m=0;m0&&t.strokeText(this.lines[m],i,h),t.fillText(this.lines[m],i,h),h+=r}},{key:"_setAlignment",value:function(t,e,i,o){if("horizontal"!==this.fontOptions.align&&this.pointToSelf===!1){e=0,i=0;var n=2;"top"===this.fontOptions.align?(t.textBaseline="alphabetic",i-=2*n):"bottom"===this.fontOptions.align?(t.textBaseline="hanging",i+=2*n):t.textBaseline="middle"}else t.textBaseline=o;return[e,i]}},{key:"_getColor",value:function(t){var e=this.fontOptions.color||"#000000",i=this.fontOptions.strokeColor||"#ffffff";if(t<=this.nodeOptions.scaling.label.drawThreshold){var o=Math.max(0,Math.min(1,1-(this.nodeOptions.scaling.label.drawThreshold-t)));e=r.overrideOpacity(e,o),i=r.overrideOpacity(i,o)}return[e,i]}},{key:"getTextSize",value:function(t){var e=arguments.length<=1||void 0===arguments[1]?!1:arguments[1],i={width:this._processLabel(t,e),height:this.fontOptions.size*this.lineCount,lineCount:this.lineCount};return i}},{key:"calculateLabelSize",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?0:arguments[2],o=arguments.length<=3||void 0===arguments[3]?0:arguments[3],n=arguments.length<=4||void 0===arguments[4]?"middle":arguments[4];this.labelDirty===!0&&(this.size.width=this._processLabel(t,e)),this.size.height=this.fontOptions.size*this.lineCount,this.size.left=i-.5*this.size.width,this.size.top=o-.5*this.size.height,this.size.yLine=o+.5*(1-this.lineCount)*this.fontOptions.size,"hanging"===n&&(this.size.top+=.5*this.fontOptions.size,this.size.top+=4,this.size.yLine+=4),this.labelDirty=!1}},{key:"_processLabel",value:function(t,e){var i=0,o=[""],n=0;if(void 0!==this.nodeOptions.label){o=String(this.nodeOptions.label).split("\n"),n=o.length,t.font=(e&&this.nodeOptions.labelHighlightBold?"bold ":"")+this.fontOptions.size+"px "+this.fontOptions.face,i=t.measureText(o[0]).width;for(var s=1;n>s;s++){var r=t.measureText(o[s]).width;i=r>i?r:i}}return this.lines=o,this.lineCount=n,i}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2];if("string"==typeof e.font){var o=e.font.split(" ");t.size=o[0].replace("px",""),t.face=o[1],t.color=o[2]}else"object"==typeof e.font&&r.fillIfDefined(t,e.font,i);t.size=Number(t.size)}}]),t}();e["default"]=a,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),this.updateBoundingBox(e,i,t,o),this.labelModule.draw(t,e,i,o)}},{key:"updateBoundingBox",value:function(t,e,i,o){this.resize(i,o),this.left=t-.5*this.width,this.top=e-.5*this.height;var n=this.options.shapeProperties.borderRadius;this.boundingBox.left=this.left-n,this.boundingBox.top=this.top-n,this.boundingBox.bottom=this.top+this.height+n,this.boundingBox.right=this.left+this.width+n}},{key:"distanceToBorder",value:function(t,e){this.resize(t);var i=this.options.borderWidth;return Math.min(Math.abs(this.width/2/Math.cos(e)),Math.abs(this.height/2/Math.sin(e)))+i}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;ithis.imageObj.height?(o=this.imageObj.width/this.imageObj.height,e=2*this.options.size*o||this.imageObj.width,i=2*this.options.size||this.imageObj.height):(o=this.imageObj.width&&this.imageObj.height?this.imageObj.height/this.imageObj.width:1,e=2*this.options.size,i=2*this.options.size*o):(e=this.imageObj.width,i=this.imageObj.height),this.width=e,this.height=i,this.radius=.5*this.width}}},{key:"_drawRawCircle",value:function(t,e,i,o,n,s){var r=this.options.borderWidth,a=this.options.borderWidthSelected||2*this.options.borderWidth,h=(o?a:r)/this.body.view.scale;t.lineWidth=Math.min(this.width,h),t.strokeStyle=o?this.options.color.highlight.border:n?this.options.color.hover.border:this.options.color.border,t.fillStyle=o?this.options.color.highlight.background:n?this.options.color.hover.background:this.options.color.background,t.circle(e,i,s),this.enableShadow(t),t.fill(),this.disableShadow(t),t.save(),h>0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore()}},{key:"_drawImageAtPosition",value:function(t){0!=this.imageObj.width&&(t.globalAlpha=1,this.enableShadow(t),t.drawImage(this.imageObj,this.left,this.top,this.width,this.height),this.disableShadow(t))}},{key:"_drawImageLabel",value:function(t,e,i,o){var n,s=0;if(void 0!==this.height){s=.5*this.height;var r=this.labelModule.getTextSize(t);r.lineCount>=1&&(s+=r.height/2)}n=i+s,this.options.label&&(this.labelOffset=s),this.labelModule.draw(t,e,n,o,"hanging")}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),this.updateBoundingBox(e,i,t,o),this.labelModule.draw(t,e,i,o)}},{key:"updateBoundingBox",value:function(t,e,i,o){this.resize(i,o),this.left=t-.5*this.width,this.top=e-.5*this.height,this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width}},{key:"distanceToBorder",value:function(t,e){return this._distanceToBorder(t,e)}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),void 0!==this.options.label){var l=n+.5*this.height+3;this.labelModule.draw(t,o,l,s,"hanging")}this.updateBoundingBox(o,n)}},{key:"updateBoundingBox",value:function(t,e){this.boundingBox.top=e-this.options.size,this.boundingBox.left=t-this.options.size,this.boundingBox.right=t+this.options.size,this.boundingBox.bottom=e+this.options.size,void 0!==this.options.label&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+3))}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),this.updateBoundingBox(e,i,t,o),this.labelModule.draw(t,e,i,o)}},{key:"updateBoundingBox",value:function(t,e,i,o){this.resize(i,o),this.left=t-.5*this.width,this.top=e-.5*this.height,this.boundingBox.left=this.left,this.boundingBox.top=this.top,this.boundingBox.bottom=this.top+this.height,this.boundingBox.right=this.left+this.width}},{key:"distanceToBorder",value:function(t,e){this.resize(t);var i=.5*this.width,o=.5*this.height,n=Math.sin(e)*i,s=Math.cos(e)*o;return i*o/Math.sqrt(n*n+s*s)}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0){var i=5;this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+i)}}},{key:"_icon",value:function(t,e,i,o){var n=Number(this.options.icon.size);void 0!==this.options.icon.code?(t.font=(o?"bold ":"")+n+"px "+this.options.icon.face,t.fillStyle=this.options.icon.color||"black",t.textAlign="center",t.textBaseline="middle",this.enableShadow(t),t.fillText(this.options.icon.code,e,i),this.disableShadow(t)):console.error("When using the icon shape, you need to define the code in the icon options object. This can be done per node or globally.")}},{key:"distanceToBorder",value:function(t,e){return this._distanceToBorder(t,e)}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i0&&(this.enableBorderDashes(t),t.stroke(),this.disableBorderDashes(t)),t.restore(),t.closePath()}this._drawImageAtPosition(t),this._drawImageLabel(t,e,i,o||n),this.updateBoundingBox(e,i)}},{key:"updateBoundingBox",value:function(t,e){this.resize(),this.left=t-this.width/2,this.top=e-this.height/2,this.boundingBox.top=this.top,this.boundingBox.left=this.left,this.boundingBox.right=this.left+this.width,this.boundingBox.bottom=this.top+this.height,void 0!==this.options.label&&this.labelModule.size.width>0&&(this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left),this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width),this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset))}},{key:"distanceToBorder",value:function(t,e){return this._distanceToBorder(t,e)}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;ii.shape.height?(r=i.x+.5*i.shape.width,a=i.y-h):(r=i.x+h,a=i.y-.5*i.shape.height),s=this._pointOnCircle(r,a,h,.125),this.labelModule.draw(t,s.x,s.y,n)}}}},{key:"isOverlappingWith",value:function(t){if(this.connected){var e=10,i=this.from.x,o=this.from.y,n=this.to.x,s=this.to.y,r=t.left,a=t.top,h=this.edgeType.getDistanceToEdge(i,o,n,s,r,a);return e>h}return!1}},{key:"_rotateForLabelAlignment",value:function(t){var e=this.from.y-this.to.y,i=this.from.x-this.to.x,o=Math.atan2(e,i);(-1>o&&0>i||o>0&&0>i)&&(o+=Math.PI),t.rotate(o)}},{key:"_pointOnCircle",value:function(t,e,i,o){var n=2*o*Math.PI;return{x:t+i*Math.cos(n),y:e-i*Math.sin(n)}}},{key:"select",value:function(){this.selected=!0}},{key:"unselect",value:function(){this.selected=!1}},{key:"cleanup",value:function(){return this.edgeType.cleanup()}}],[{key:"parseOptions",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],o=arguments.length<=3||void 0===arguments[3]?{}:arguments[3],n=["arrowStrikethrough","id","from","hidden","hoverWidth","label","labelHighlightBold","length","line","opacity","physics","scaling","selectionWidth","selfReferenceSize","to","title","value","width"];if(v.selectiveDeepExtend(n,t,e,i),v.mergeOptions(t,e,"smooth",i,o),v.mergeOptions(t,e,"shadow",i,o),void 0!==e.dashes&&null!==e.dashes?t.dashes=e.dashes:i===!0&&null===e.dashes&&(t.dashes=Object.create(o.dashes)),void 0!==e.scaling&&null!==e.scaling?(void 0!==e.scaling.min&&(t.scaling.min=e.scaling.min),void 0!==e.scaling.max&&(t.scaling.max=e.scaling.max),v.mergeOptions(t.scaling,e.scaling,"label",i,o.scaling)):i===!0&&null===e.scaling&&(t.scaling=Object.create(o.scaling)),void 0!==e.arrows&&null!==e.arrows)if("string"==typeof e.arrows){var s=e.arrows.toLowerCase();-1!=s.indexOf("to")&&(t.arrows.to.enabled=!0),-1!=s.indexOf("middle")&&(t.arrows.middle.enabled=!0),-1!=s.indexOf("from")&&(t.arrows.from.enabled=!0)}else{if("object"!=typeof e.arrows)throw new Error("The arrow newOptions can only be an object or a string. Refer to the documentation. You used:"+JSON.stringify(e.arrows));v.mergeOptions(t.arrows,e.arrows,"to",i,o.arrows),v.mergeOptions(t.arrows,e.arrows,"middle",i,o.arrows),v.mergeOptions(t.arrows,e.arrows,"from",i,o.arrows)}else i===!0&&null===e.arrows&&(t.arrows=Object.create(o.arrows));if(void 0!==e.color&&null!==e.color)if(t.color=v.deepExtend({},t.color,!0),v.isString(e.color))t.color.color=e.color,t.color.highlight=e.color,t.color.hover=e.color,t.color.inherit=!1;else{var r=!1;void 0!==e.color.color&&(t.color.color=e.color.color,r=!0),void 0!==e.color.highlight&&(t.color.highlight=e.color.highlight,r=!0),void 0!==e.color.hover&&(t.color.hover=e.color.hover,r=!0),void 0!==e.color.inherit&&(t.color.inherit=e.color.inherit),void 0!==e.color.opacity&&(t.color.opacity=Math.min(1,Math.max(0,e.color.opacity))),void 0===e.color.inherit&&r===!0&&(t.color.inherit=!1)}else i===!0&&null===e.color&&(t.color=v.bridgeObject(o.color));void 0!==e.font&&null!==e.font?a["default"].parseOptions(t.font,e):i===!0&&null===e.font&&(t.font=v.bridgeObject(o.font))}}]),t}();e["default"]=g,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),a=function(){function t(t,e){for(var i=0;iMath.abs(e)||this.options.smooth.forceDirection===!0||"horizontal"===this.options.smooth.forceDirection)&&"vertical"!==this.options.smooth.forceDirection?(o=this.from.y,s=this.to.y,i=this.from.x-r*t,n=this.to.x+r*t):(o=this.from.y-r*e,s=this.to.y+r*e,i=this.from.x,n=this.to.x),[{x:i,y:o},{x:n,y:s}]}},{key:"getViaNode",value:function(){return this._getViaCoordinates()}},{key:"_findBorderPosition",value:function(t,e){return this._findBorderPositionBezier(t,e)}},{key:"_getDistanceToEdge",value:function(t,e,i,o,n,s){var a=arguments.length<=6||void 0===arguments[6]?this._getViaCoordinates():arguments[6],h=r(a,2),d=h[0],l=h[1];return this._getDistanceToBezierEdge(t,e,i,o,n,s,d,l)}},{key:"getPoint",value:function(t){var e=arguments.length<=1||void 0===arguments[1]?this._getViaCoordinates():arguments[1],i=r(e,2),o=i[0],n=i[1],s=t,a=[];a[0]=Math.pow(1-s,3),a[1]=3*s*Math.pow(1-s,2),a[2]=3*Math.pow(s,2)*(1-s),a[3]=Math.pow(s,3);var h=a[0]*this.fromPoint.x+a[1]*o.x+a[2]*n.x+a[3]*this.toPoint.x,d=a[0]*this.fromPoint.y+a[1]*o.y+a[2]*n.y+a[3]*this.toPoint.y;return{x:h,y:d}}}]),e}(l["default"]);e["default"]=u,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;il;l++)u=.1*l,v[0]=Math.pow(1-u,3),v[1]=3*u*Math.pow(1-u,2),v[2]=3*Math.pow(u,2)*(1-u),v[3]=Math.pow(u,3),c=v[0]*t+v[1]*r.x+v[2]*a.x+v[3]*i,p=v[0]*e+v[1]*r.y+v[2]*a.y+v[3]*o,l>0&&(d=this._getDistanceToLine(f,m,c,p,n,s),h=h>d?d:h),f=c,m=p;return h}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i=l&&h>d;){var m=.5*(l+u);if(i=this.getPoint(m,a),o=Math.atan2(p.y-i.y,p.x-i.x),n=p.distanceToBorder(e,o),s=Math.sqrt(Math.pow(i.x-p.x,2)+Math.pow(i.y-p.y,2)),r=n-s,Math.abs(r)r?f===!1?l=m:u=m:f===!1?u=m:l=m,d++}return i.t=m,i}},{key:"_getDistanceToBezierEdge",value:function(t,e,i,o,n,s,r){var a=1e9,h=void 0,d=void 0,l=void 0,u=void 0,c=void 0,p=t,f=e;for(d=1;10>d;d++)l=.1*d,u=Math.pow(1-l,2)*t+2*l*(1-l)*r.x+Math.pow(l,2)*i,c=Math.pow(1-l,2)*e+2*l*(1-l)*r.y+Math.pow(l,2)*o,d>0&&(h=this._getDistanceToLine(p,f,u,c,n,s),a=a>h?h:a),p=u,f=c;return a}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),s=function(){function t(t,e){for(var i=0;io.shape.height?(e=o.x+.5*o.shape.width,i=o.y-n):(e=o.x+n,i=o.y-.5*o.shape.height),[e,i,n]}},{key:"_pointOnCircle",value:function(t,e,i,o){var n=2*o*Math.PI;return{x:t+i*Math.cos(n),y:e-i*Math.sin(n)}}},{key:"_findBorderPositionCircle",value:function(t,e,i){for(var o=i.x,n=i.y,s=i.low,r=i.high,a=i.direction,h=10,d=0,l=this.options.selfReferenceSize,u=void 0,c=void 0,p=void 0,f=void 0,m=void 0,v=.05,g=.5*(s+r);r>=s&&h>d&&(g=.5*(s+r),u=this._pointOnCircle(o,n,l,g),c=Math.atan2(t.y-u.y,t.x-u.x),p=t.distanceToBorder(e,c),f=Math.sqrt(Math.pow(u.x-t.x,2)+Math.pow(u.y-t.y,2)),m=p-f,!(Math.abs(m)0?a>0?s=g:r=g:a>0?r=g:s=g,d++;return u.t=g,u}},{key:"getLineWidth",value:function(t,e){return t===!0?Math.max(this.selectionWidth,.3/this.body.view.scale):e===!0?Math.max(this.hoverWidth,.3/this.body.view.scale):Math.max(this.options.width,.3/this.body.view.scale)}},{key:"getColor",value:function(t,e,i){var o=this.options.color;if(o.inherit!==!1){if("both"===o.inherit&&this.from.id!==this.to.id){var n=t.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y),s=void 0,a=void 0;return s=this.from.options.color.highlight.border,a=this.to.options.color.highlight.border,this.from.selected===!1&&this.to.selected===!1?(s=r.overrideOpacity(this.from.options.color.border,this.options.color.opacity),a=r.overrideOpacity(this.to.options.color.border,this.options.color.opacity)):this.from.selected===!0&&this.to.selected===!1?a=this.to.options.color.border:this.from.selected===!1&&this.to.selected===!0&&(s=this.from.options.color.border),n.addColorStop(0,s),n.addColorStop(1,a),n}this.colorDirty===!0&&("to"===o.inherit?(this.color.highlight=this.to.options.color.highlight.border,this.color.hover=this.to.options.color.hover.border,this.color.color=r.overrideOpacity(this.to.options.color.border,o.opacity)):(this.color.highlight=this.from.options.color.highlight.border,this.color.hover=this.from.options.color.hover.border,this.color.color=r.overrideOpacity(this.from.options.color.border,o.opacity)))}else this.colorDirty===!0&&(this.color.highlight=o.highlight,this.color.hover=o.hover,this.color.color=r.overrideOpacity(o.color,o.opacity));return this.colorDirty=!1,e===!0?this.color.highlight:i===!0?this.color.hover:this.color.color}},{key:"_circle",value:function(t,e,i,o){this.enableShadow(t),t.beginPath(),t.arc(e,i,o,0,2*Math.PI,!1),t.stroke(),this.disableShadow(t)}},{key:"getDistanceToEdge",value:function(t,e,i,o,s,r,a){var h=0;if(this.from!=this.to)h=this._getDistanceToEdge(t,e,i,o,s,r,a);else{var d=this._getCircleData(),l=n(d,3),u=l[0],c=l[1],p=l[2],f=u-s,m=c-r;h=Math.abs(Math.sqrt(f*f+m*m)-p)}return this.labelModule.size.lefts&&this.labelModule.size.topr?0:h}},{key:"_getDistanceToLine",value:function(t,e,i,o,n,s){var r=i-t,a=o-e,h=r*r+a*a,d=((n-t)*r+(s-e)*a)/h;d>1?d=1:0>d&&(d=0);var l=t+d*r,u=e+d*a,c=l-n,p=u-s;return Math.sqrt(c*c+p*p)}},{key:"getArrowData",value:function(t,e,i,o,s){var r=void 0,a=void 0,h=void 0,d=void 0,l=void 0,u=void 0,c=this.getLineWidth(o,s);if("from"===e?(h=this.from,d=this.to,l=.1,u=this.options.arrows.from.scaleFactor):"to"===e?(h=this.to,d=this.from,l=-.1,u=this.options.arrows.to.scaleFactor):(h=this.to,d=this.from,u=this.options.arrows.middle.scaleFactor),h!=d)if("middle"!==e)if(this.options.smooth.enabled===!0){a=this.findBorderPosition(h,t,{via:i});var p=this.getPoint(Math.max(0,Math.min(1,a.t+l)),i);r=Math.atan2(a.y-p.y,a.x-p.x)}else r=Math.atan2(h.y-d.y,h.x-d.x),a=this.findBorderPosition(h,t);else r=Math.atan2(h.y-d.y,h.x-d.x),a=this.getPoint(.5,i);else{var f=this._getCircleData(t),m=n(f,3),v=m[0],g=m[1],y=m[2];"from"===e?(a=this.findBorderPosition(this.from,t,{x:v,y:g,low:.25,high:.6,direction:-1}),r=-2*a.t*Math.PI+1.5*Math.PI+.1*Math.PI):"to"===e?(a=this.findBorderPosition(this.from,t,{x:v,y:g,low:.6,high:1,direction:1}),r=-2*a.t*Math.PI+1.5*Math.PI-1.1*Math.PI):(a=this._pointOnCircle(v,g,y,.175),r=3.9269908169872414)}var b=15*u+3*c,_=a.x-.9*b*Math.cos(r),w=a.y-.9*b*Math.sin(r),x={x:_,y:w};return{point:a,core:x,angle:r,length:b}}},{key:"drawArrowHead",value:function(t,e,i,o){t.strokeStyle=this.getColor(t,e,i),t.fillStyle=t.strokeStyle,t.lineWidth=this.getLineWidth(e,i),t.arrow(o.point.x,o.point.y,o.angle,o.length),this.enableShadow(t),t.fill(),this.disableShadow(t)}},{key:"enableShadow",value:function(t){this.options.shadow.enabled===!0&&(t.shadowColor=this.options.shadow.color,t.shadowBlur=this.options.shadow.size,t.shadowOffsetX=this.options.shadow.x,t.shadowOffsetY=this.options.shadow.y)}},{key:"disableShadow",value:function(t){this.options.shadow.enabled===!0&&(t.shadowColor="rgba(0,0,0,0)",t.shadowBlur=0,t.shadowOffsetX=0,t.shadowOffsetY=0)}}]),t}();e["default"]=a,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function s(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}Object.defineProperty(e,"__esModule",{value:!0});var r=function(){function t(t,e){for(var i=0;i=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*s,e=this.from.y-i*s):this.from.x>this.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s)),"discrete"===o&&(t=i*s>n?this.from.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*n,e=this.from.y-i*n):this.from.x>this.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n)),"discrete"===o&&(e=i*n>s?this.from.y:e));else if("straightCross"===o)Math.abs(this.from.x-this.to.x)<=Math.abs(this.from.y-this.to.y)?(t=this.from.x,e=this.from.yMath.abs(this.from.y-this.to.y)&&(t=this.from.x=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*s,e=this.from.y-i*s,t=this.to.xthis.to.x&&(t=this.from.x-i*s,e=this.from.y-i*s,t=this.to.x>t?this.to.x:t):this.from.ythis.to.x&&(t=this.from.x-i*s,e=this.from.y+i*s,t=this.to.x>t?this.to.x:t)):Math.abs(this.from.x-this.to.x)>Math.abs(this.from.y-this.to.y)&&(this.from.y>=this.to.y?this.from.x<=this.to.x?(t=this.from.x+i*n,e=this.from.y-i*n, +e=this.to.y>e?this.to.y:e):this.from.x>this.to.x&&(t=this.from.x-i*n,e=this.from.y-i*n,e=this.to.y>e?this.to.y:e):this.from.ythis.to.x&&(t=this.from.x-i*n,e=this.from.y+i*n,e=this.to.y1||this.startedStabilization===!0)&&setTimeout(function(){t.body.emitter.emit("stabilized",{iterations:e}),t.startedStabilization=!1,t.stabilizationIterations=0},0)}},{key:"physicsTick",value:function(){if(this.startedStabilization===!1&&(this.body.emitter.emit("startStabilizing"),this.startedStabilization=!0),this.stabilized===!1){if(this.adaptiveTimestep===!0&&this.adaptiveTimestepEnabled===!0){var t=1.2;this.adaptiveCounter%this.adaptiveInterval===0?(this.timestep=2*this.timestep,this.calculateForces(),this.moveNodes(),this.revert(),this.timestep=.5*this.timestep,this.calculateForces(),this.moveNodes(),this.calculateForces(),this.moveNodes(),this._evaluateStepQuality()===!0?this.timestep=t*this.timestep:this.timestep/ts))return!1;return!0}},{key:"moveNodes",value:function(){for(var t=this.physicsBody.physicsNodeIndices,e=this.options.maxVelocity?this.options.maxVelocity:1e9,i=0,o=0,n=5,s=0;se?s[t].x>0?e:-e:s[t].x,i.x+=s[t].x*o}else n[t].x=0,s[t].x=0;if(i.options.fixed.y===!1){var h=this.modelOptions.damping*s[t].y,d=(n[t].y-h)/i.options.mass;s[t].y+=d*o,s[t].y=Math.abs(s[t].y)>e?s[t].y>0?e:-e:s[t].y,i.y+=s[t].y*o}else n[t].y=0,s[t].y=0;var l=Math.sqrt(Math.pow(s[t].x,2)+Math.pow(s[t].y,2));return l}},{key:"calculateForces",value:function(){this.gravitySolver.solve(),this.nodesSolver.solve(),this.edgesSolver.solve()}},{key:"_freezeNodes",value:function(){var t=this.body.nodes;for(var e in t)t.hasOwnProperty(e)&&t[e].x&&t[e].y&&(this.freezeCache[e]={x:t[e].options.fixed.x,y:t[e].options.fixed.y},t[e].options.fixed.x=!0,t[e].options.fixed.y=!0)}},{key:"_restoreFrozenNodes",value:function(){var t=this.body.nodes;for(var e in t)t.hasOwnProperty(e)&&void 0!==this.freezeCache[e]&&(t[e].options.fixed.x=this.freezeCache[e].x,t[e].options.fixed.y=this.freezeCache[e].y);this.freezeCache={}}},{key:"stabilize",value:function(){var t=this,e=arguments.length<=0||void 0===arguments[0]?this.options.stabilization.iterations:arguments[0];return"number"!=typeof e&&(console.log("The stabilize method needs a numeric amount of iterations. Switching to default: ",this.options.stabilization.iterations),e=this.options.stabilization.iterations),0===this.physicsBody.physicsNodeIndices.length?void(this.ready=!0):(this.adaptiveTimestep=this.options.adaptiveTimestep,this.body.emitter.emit("_resizeNodes"),this.stopSimulation(),this.stabilized=!1,this.body.emitter.emit("_blockRedraw"),this.targetIterations=e,this.options.stabilization.onlyDynamicEdges===!0&&this._freezeNodes(),this.stabilizationIterations=0,void setTimeout(function(){return t._stabilizationBatch()},0))}},{key:"_stabilizationBatch",value:function(){this.startedStabilization===!1&&(this.body.emitter.emit("startStabilizing"),this.startedStabilization=!0);for(var t=0;this.stabilized===!1&&t0){var t=void 0,e=this.body.nodes,i=this.physicsBody.physicsNodeIndices,o=i.length,n=this._formBarnesHutTree(e,i);this.barnesHutTree=n;for(var s=0;o>s;s++)t=e[i[s]],t.options.mass>0&&(this._getForceContribution(n.root.children.NW,t),this._getForceContribution(n.root.children.NE,t),this._getForceContribution(n.root.children.SW,t),this._getForceContribution(n.root.children.SE,t))}}},{key:"_getForceContribution",value:function(t,e){if(t.childrenCount>0){var i=void 0,o=void 0,n=void 0;i=t.centerOfMass.x-e.x,o=t.centerOfMass.y-e.y,n=Math.sqrt(i*i+o*o),n*t.calcSize>this.thetaInversed?this._calculateForces(n,i,o,e,t):4===t.childrenCount?(this._getForceContribution(t.children.NW,e),this._getForceContribution(t.children.NE,e),this._getForceContribution(t.children.SW,e),this._getForceContribution(t.children.SE,e)):t.children.data.id!=e.id&&this._calculateForces(n,i,o,e,t)}}},{key:"_calculateForces",value:function(t,e,i,o,n){0===t&&(t=.1,e=t),this.overlapAvoidanceFactor<1&&(t=Math.max(.1+this.overlapAvoidanceFactor*o.shape.radius,t-o.shape.radius));var s=this.options.gravitationalConstant*n.mass*o.options.mass/Math.pow(t,3),r=e*s,a=i*s;this.physicsBody.forces[o.id].x+=r,this.physicsBody.forces[o.id].y+=a}},{key:"_formBarnesHutTree",value:function(t,e){for(var i=void 0,o=e.length,n=t[e[0]].x,s=t[e[0]].y,r=t[e[0]].x,a=t[e[0]].y,h=1;o>h;h++){var d=t[e[h]].x,l=t[e[h]].y;t[e[h]].options.mass>0&&(n>d&&(n=d),d>r&&(r=d),s>l&&(s=l),l>a&&(a=l))}var u=Math.abs(r-n)-Math.abs(a-s);u>0?(s-=.5*u,a+=.5*u):(n+=.5*u,r-=.5*u);var c=1e-5,p=Math.max(c,Math.abs(r-n)),f=.5*p,m=.5*(n+r),v=.5*(s+a),g={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:m-f,maxX:m+f,minY:v-f,maxY:v+f},size:p,calcSize:1/p,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(g.root);for(var h=0;o>h;h++)i=t[e[h]],i.options.mass>0&&this._placeInTree(g.root,i);return g}},{key:"_updateBranchMass",value:function(t,e){var i=t.mass+e.options.mass,o=1/i;t.centerOfMass.x=t.centerOfMass.x*t.mass+e.x*e.options.mass,t.centerOfMass.x*=o,t.centerOfMass.y=t.centerOfMass.y*t.mass+e.y*e.options.mass,t.centerOfMass.y*=o,t.mass=i;var n=Math.max(Math.max(e.height,e.radius),e.width);t.maxWidth=t.maxWidthe.x?t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NW"):this._placeInRegion(t,e,"SW"):t.children.NW.range.maxY>e.y?this._placeInRegion(t,e,"NE"):this._placeInRegion(t,e,"SE")}},{key:"_placeInRegion",value:function(t,e,i){switch(t.children[i].childrenCount){case 0:t.children[i].children.data=e,t.children[i].childrenCount=1,this._updateBranchMass(t.children[i],e);break;case 1:t.children[i].children.data.x===e.x&&t.children[i].children.data.y===e.y?(e.x+=this.seededRandom(),e.y+=this.seededRandom()):(this._splitBranch(t.children[i]),this._placeInTree(t.children[i],e));break;case 4:this._placeInTree(t.children[i],e)}}},{key:"_splitBranch",value:function(t){var e=null;1===t.childrenCount&&(e=t.children.data,t.mass=0,t.centerOfMass.x=0,t.centerOfMass.y=0),t.childrenCount=4,t.children.data=null,this._insertRegion(t,"NW"),this._insertRegion(t,"NE"),this._insertRegion(t,"SW"),this._insertRegion(t,"SE"),null!=e&&this._placeInTree(t,e)}},{key:"_insertRegion",value:function(t,e){var i=void 0,o=void 0,n=void 0,s=void 0,r=.5*t.size;switch(e){case"NW":i=t.range.minX,o=t.range.minX+r,n=t.range.minY,s=t.range.minY+r;break;case"NE":i=t.range.minX+r,o=t.range.maxX,n=t.range.minY,s=t.range.minY+r;break;case"SW":i=t.range.minX,o=t.range.minX+r,n=t.range.minY+r,s=t.range.maxY;break;case"SE":i=t.range.minX+r,o=t.range.maxX,n=t.range.minY+r,s=t.range.maxY}t.children[e]={centerOfMass:{x:0,y:0},mass:0,range:{minX:i,maxX:o,minY:n,maxY:s},size:.5*t.size,calcSize:2*t.calcSize,children:{data:null},maxWidth:0,level:t.level+1,childrenCount:0}}},{key:"_debug",value:function(t,e){void 0!==this.barnesHutTree&&(t.lineWidth=1,this._drawBranch(this.barnesHutTree.root,t,e))}},{key:"_drawBranch",value:function(t,e,i){void 0===i&&(i="#FF0000"),4===t.childrenCount&&(this._drawBranch(t.children.NW,e),this._drawBranch(t.children.NE,e),this._drawBranch(t.children.SE,e),this._drawBranch(t.children.SW,e)),e.strokeStyle=i,e.beginPath(),e.moveTo(t.range.minX,t.range.minY),e.lineTo(t.range.maxX,t.range.minY),e.stroke(),e.beginPath(),e.moveTo(t.range.maxX,t.range.minY),e.lineTo(t.range.maxX,t.range.maxY),e.stroke(),e.beginPath(),e.moveTo(t.range.maxX,t.range.maxY),e.lineTo(t.range.minX,t.range.maxY),e.stroke(),e.beginPath(),e.moveTo(t.range.minX,t.range.maxY),e.lineTo(t.range.minX,t.range.minY),e.stroke()}}]),t}();e["default"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;ii&&(s=.5*u>i?1:c*i+p,s/=i,o=t*s,n=e*s,l[r.id].x-=o,l[r.id].y-=n,l[a.id].x+=o,l[a.id].y+=n)}}}]),t}();e["default"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;ii?-Math.pow(f*i,2)+Math.pow(f*p,2):0,0===i?i=.01:s/=i,o=t*s,n=e*s,c[r.id].x-=o,c[r.id].y-=n,c[a.id].x+=o,c[a.id].y+=n}}}]),t}();e["default"]=n,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;i0){var s=n.edges.length+1,r=this.options.centralGravity*s*n.options.mass;o[n.id].x=e*r,o[n.id].y=i*r}}}]),e}(d["default"]);e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i=t&&i.push(n.id)}for(var o=0;o0&&Object.keys(p).length>0&&m===!0&&o.push({nodes:c,edges:p})}}}for(var u=0;uo?r.x:o,n=r.ys?r.y:s;return{x:.5*(i+o),y:.5*(n+s)}}},{key:"openCluster",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!0:arguments[2];if(void 0===t)throw new Error("No clusterNodeId supplied to openCluster.");if(void 0===this.body.nodes[t])throw new Error("The clusterNodeId supplied to openCluster does not exist.");if(void 0===this.body.nodes[t].containedNodes)return void console.log("The node:"+t+" is not a cluster.");var o=this.body.nodes[t],n=o.containedNodes,s=o.containedEdges;if(void 0!==e&&void 0!==e.releaseFunction&&"function"==typeof e.releaseFunction){var r={},h={x:o.x,y:o.y};for(var d in n)if(n.hasOwnProperty(d)){var u=this.body.nodes[d];r[d]={x:u.x,y:u.y}}var c=e.releaseFunction(h,r);for(var d in n)if(n.hasOwnProperty(d)){var u=this.body.nodes[d];void 0!==c[d]&&(u.x=void 0===c[d].x?o.x:c[d].x,u.y=void 0===c[d].y?o.y:c[d].y)}}else for(var d in n)if(n.hasOwnProperty(d)){var u=this.body.nodes[d];u=n[d],u.options.fixed.x===!1&&(u.x=o.x),u.options.fixed.y===!1&&(u.y=o.y)}for(var d in n)if(n.hasOwnProperty(d)){var u=this.body.nodes[d];u.vx=o.vx,u.vy=o.vy,u.setOptions({hidden:!1,physics:!0}),delete this.clusteredNodes[d]}for(var p=[],f=0;fo;)e.push(this.body.nodes[t].id),t=this.clusteredNodes[t].clusterId,o++;return e.push(this.body.nodes[t].id),e.reverse(),e}},{key:"_getConnectedId",value:function(t,e){return t.toId!=e?t.toId:t.fromId!=e?t.fromId:t.fromId}},{key:"_getHubSize",value:function(){for(var t=0,e=0,i=0,o=0,n=0;no&&(o=s.edges.length),t+=s.edges.length,e+=Math.pow(s.edges.length,2),i+=1}t/=i,e/=i;var r=e-Math.pow(t,2),a=Math.sqrt(r),h=Math.floor(t+2*a);return h>o&&(h=o),h}}]),t}();e["default"]=u,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0)for(var a=0;ae.shape.boundingBox.left&&(s=e.shape.boundingBox.left),re.shape.boundingBox.top&&(o=e.shape.boundingBox.top),n0)for(var a=0;ae.x&&(s=e.x),re.y&&(o=e.y),n0,t.renderTimer=void 0}),this.body.emitter.on("destroy",function(){t.renderRequests=0,t.allowRedraw=!1,t.renderingActive=!1,t.requiresTimeout===!0?clearTimeout(t.renderTimer):cancelAnimationFrame(t.renderTimer),t.body.emitter.off()})}},{key:"setOptions",value:function(t){if(void 0!==t){var e=["hideEdgesOnDrag","hideNodesOnDrag"];s.selectiveDeepExtend(e,this.options,t)}}},{key:"_startRendering",value:function(){this.renderingActive===!0&&void 0===this.renderTimer&&(this.requiresTimeout===!0?this.renderTimer=window.setTimeout(this._renderStep.bind(this),this.simulationInterval):this.renderTimer=window.requestAnimationFrame(this._renderStep.bind(this)))}},{key:"_renderStep",value:function(){this.renderingActive===!0&&(this.renderTimer=void 0,this.requiresTimeout===!0&&this._startRendering(),this._redraw(),this.requiresTimeout===!1&&this._startRendering())}},{key:"redraw",value:function(){this.body.emitter.emit("setSize"),this._redraw()}},{key:"_requestRedraw",value:function(){var t=this;this.redrawRequested!==!0&&this.renderingActive===!1&&this.allowRedraw===!0&&(this.redrawRequested=!0,this.requiresTimeout===!0?window.setTimeout(function(){t._redraw(!1)},0):window.requestAnimationFrame(function(){t._redraw(!1)}))}},{key:"_redraw",value:function(){var t=arguments.length<=0||void 0===arguments[0]?!1:arguments[0];if(this.allowRedraw===!0){this.body.emitter.emit("initRedraw"),this.redrawRequested=!1;var e=this.canvas.frame.canvas.getContext("2d");(0===this.canvas.frame.canvas.width||0===this.canvas.frame.canvas.height)&&this.canvas.setSize(),this.pixelRatio=(window.devicePixelRatio||1)/(e.webkitBackingStorePixelRatio||e.mozBackingStorePixelRatio||e.msBackingStorePixelRatio||e.oBackingStorePixelRatio||e.backingStorePixelRatio||1),e.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var i=this.canvas.frame.canvas.clientWidth,o=this.canvas.frame.canvas.clientHeight;if(e.clearRect(0,0,i,o),0===this.canvas.frame.clientWidth)return;e.save(),e.translate(this.body.view.translation.x,this.body.view.translation.y),e.scale(this.body.view.scale,this.body.view.scale),e.beginPath(),this.body.emitter.emit("beforeDrawing",e),e.closePath(),t===!1&&(this.dragging===!1||this.dragging===!0&&this.options.hideEdgesOnDrag===!1)&&this._drawEdges(e),(this.dragging===!1||this.dragging===!0&&this.options.hideNodesOnDrag===!1)&&this._drawNodes(e,t),e.beginPath(),this.body.emitter.emit("afterDrawing",e),e.closePath(),e.restore(),t===!0&&e.clearRect(0,0,i,o)}}},{key:"_resizeNodes",value:function(){var t=this.canvas.frame.canvas.getContext("2d");void 0===this.pixelRatio&&(this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1)),t.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0),t.save(),t.translate(this.body.view.translation.x,this.body.view.translation.y),t.scale(this.body.view.scale,this.body.view.scale);var e=this.body.nodes,i=void 0;for(var o in e)e.hasOwnProperty(o)&&(i=e[o],i.resize(t),i.updateBoundingBox(t,i.selected));t.restore()}},{key:"_drawNodes",value:function(t){for(var e=arguments.length<=1||void 0===arguments[1]?!1:arguments[1],i=this.body.nodes,o=this.body.nodeIndices,n=void 0,s=[],r=20,a=this.canvas.DOMtoCanvas({x:-r,y:-r}),h=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+r,y:this.canvas.frame.canvas.clientHeight+r}),d={top:a.y,left:a.x,bottom:h.y,right:h.x},l=0;l0){var t=this.frame.canvas.width/this.pixelRatio/this.cameraState.previousWidth,e=this.frame.canvas.height/this.pixelRatio/this.cameraState.previousHeight,i=this.cameraState.scale;1!=t&&1!=e?i=.5*this.cameraState.scale*(t+e):1!=t?i=this.cameraState.scale*t:1!=e&&(i=this.cameraState.scale*e),this.body.view.scale=i;var o=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight}),n={x:o.x-this.cameraState.position.x,y:o.y-this.cameraState.position.y};this.body.view.translation.x+=n.x*this.body.view.scale,this.body.view.translation.y+=n.y*this.body.view.scale}}},{key:"_prepareValue",value:function(t){if("number"==typeof t)return t+"px";if("string"==typeof t){if(-1!==t.indexOf("%")||-1!==t.indexOf("px"))return t;if(-1===t.indexOf("%"))return t+"px"}throw new Error("Could not use the value supplied for width or height:"+t)}},{key:"_create",value:function(){for(;this.body.container.hasChildNodes();)this.body.container.removeChild(this.body.container.firstChild);if(this.frame=document.createElement("div"),this.frame.className="vis-network",this.frame.style.position="relative",this.frame.style.overflow="hidden",this.frame.tabIndex=900,this.frame.canvas=document.createElement("canvas"),this.frame.canvas.style.position="relative",this.frame.appendChild(this.frame.canvas),this.frame.canvas.getContext){var t=this.frame.canvas.getContext("2d");this.pixelRatio=(window.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1),this.frame.canvas.getContext("2d").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}else{var e=document.createElement("DIV");e.style.color="red",e.style.fontWeight="bold",e.style.padding="10px",e.innerHTML="Error: your browser does not support HTML canvas",this.frame.canvas.appendChild(e)}this.body.container.appendChild(this.frame),this.body.view.scale=1,this.body.view.translation={x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight},this._bindHammer()}},{key:"_bindHammer",value:function(){var t=this;void 0!==this.hammer&&this.hammer.destroy(),this.drag={},this.pinch={},this.hammer=new s(this.frame.canvas),this.hammer.get("pinch").set({enable:!0}),this.hammer.get("pan").set({threshold:5,direction:30}),r.onTouch(this.hammer,function(e){t.body.eventListeners.onTouch(e)}),this.hammer.on("tap",function(e){t.body.eventListeners.onTap(e)}),this.hammer.on("doubletap",function(e){t.body.eventListeners.onDoubleTap(e)}),this.hammer.on("press",function(e){t.body.eventListeners.onHold(e)}),this.hammer.on("panstart",function(e){t.body.eventListeners.onDragStart(e)}),this.hammer.on("panmove",function(e){t.body.eventListeners.onDrag(e)}),this.hammer.on("panend",function(e){t.body.eventListeners.onDragEnd(e)}),this.hammer.on("pinch",function(e){t.body.eventListeners.onPinch(e)}),this.frame.canvas.addEventListener("mousewheel",function(e){t.body.eventListeners.onMouseWheel(e)}),this.frame.canvas.addEventListener("DOMMouseScroll",function(e){t.body.eventListeners.onMouseWheel(e)}),this.frame.canvas.addEventListener("mousemove",function(e){t.body.eventListeners.onMouseMove(e)}),this.frame.canvas.addEventListener("contextmenu",function(e){t.body.eventListeners.onContext(e)}),this.hammerFrame=new s(this.frame),r.onRelease(this.hammerFrame,function(e){t.body.eventListeners.onRelease(e)})}},{key:"setSize",value:function(){var t=arguments.length<=0||void 0===arguments[0]?this.options.width:arguments[0],e=arguments.length<=1||void 0===arguments[1]?this.options.height:arguments[1];t=this._prepareValue(t),e=this._prepareValue(e);var i=!1,o=this.frame.canvas.width,n=this.frame.canvas.height,s=this.frame.canvas.getContext("2d"),r=this.pixelRatio;return this.pixelRatio=(window.devicePixelRatio||1)/(s.webkitBackingStorePixelRatio||s.mozBackingStorePixelRatio||s.msBackingStorePixelRatio||s.oBackingStorePixelRatio||s.backingStorePixelRatio||1),t!=this.options.width||e!=this.options.height||this.frame.style.width!=t||this.frame.style.height!=e?(this._getCameraState(r),this.frame.style.width=t,this.frame.style.height=e,this.frame.canvas.style.width="100%",this.frame.canvas.style.height="100%",this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio),this.options.width=t,this.options.height=e,i=!0):((this.frame.canvas.width!=Math.round(this.frame.canvas.clientWidth*this.pixelRatio)||this.frame.canvas.height!=Math.round(this.frame.canvas.clientHeight*this.pixelRatio))&&this._getCameraState(r),this.frame.canvas.width!=Math.round(this.frame.canvas.clientWidth*this.pixelRatio)&&(this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio),i=!0),this.frame.canvas.height!=Math.round(this.frame.canvas.clientHeight*this.pixelRatio)&&(this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio),i=!0)),i===!0&&(this.body.emitter.emit("resize",{width:Math.round(this.frame.canvas.width/this.pixelRatio),height:Math.round(this.frame.canvas.height/this.pixelRatio),oldWidth:Math.round(o/this.pixelRatio),oldHeight:Math.round(n/this.pixelRatio)}),this._setCameraState()),i}},{key:"_XconvertDOMtoCanvas",value:function(t){return(t-this.body.view.translation.x)/this.body.view.scale}},{key:"_XconvertCanvasToDOM",value:function(t){return t*this.body.view.scale+this.body.view.translation.x}},{key:"_YconvertDOMtoCanvas",value:function(t){return(t-this.body.view.translation.y)/this.body.view.scale}},{key:"_YconvertCanvasToDOM",value:function(t){return t*this.body.view.scale+this.body.view.translation.y}},{key:"canvasToDOM",value:function(t){return{x:this._XconvertCanvasToDOM(t.x),y:this._YconvertCanvasToDOM(t.y)}}},{key:"DOMtoCanvas",value:function(t){return{x:this._XconvertDOMtoCanvas(t.x),y:this._YconvertDOMtoCanvas(t.y)}}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){for(var i=0;i.5*this.body.nodeIndices.length)return void this.fit(t,!1);i=a["default"].getRange(this.body.nodes,t.nodes);var h=this.body.nodeIndices.length;o=12.662/(h+7.4147)+.0964822;var d=Math.min(this.canvas.frame.canvas.clientWidth/600,this.canvas.frame.canvas.clientHeight/600);o*=d}else{this.body.emitter.emit("_resizeNodes"),i=a["default"].getRange(this.body.nodes,t.nodes);var l=1.1*Math.abs(i.maxX-i.minX),u=1.1*Math.abs(i.maxY-i.minY),c=this.canvas.frame.canvas.clientWidth/l,p=this.canvas.frame.canvas.clientHeight/u;o=p>=c?c:p}o>1?o=1:0===o&&(o=1);var f=a["default"].findCenter(i),m={position:f,scale:o,animation:t.animation};this.moveTo(m)}},{key:"focus",value:function(t){var e=arguments.length<=1||void 0===arguments[1]?{}:arguments[1];if(void 0!==this.body.nodes[t]){var i={x:this.body.nodes[t].x,y:this.body.nodes[t].y};e.position=i,e.lockedOnNode=t,this.moveTo(e)}else console.log("Node: "+t+" cannot be found.")}},{key:"moveTo",value:function(t){return void 0===t?void(t={}):(void 0===t.offset&&(t.offset={x:0,y:0}),void 0===t.offset.x&&(t.offset.x=0),void 0===t.offset.y&&(t.offset.y=0),void 0===t.scale&&(t.scale=this.body.view.scale),void 0===t.position&&(t.position=this.getViewPosition()),void 0===t.animation&&(t.animation={duration:0}),t.animation===!1&&(t.animation={duration:0}),t.animation===!0&&(t.animation={}),void 0===t.animation.duration&&(t.animation.duration=1e3),void 0===t.animation.easingFunction&&(t.animation.easingFunction="easeInOutQuad"),void this.animateView(t))}},{key:"animateView",value:function(t){if(void 0!==t){this.animationEasingFunction=t.animation.easingFunction,this.releaseNode(),t.locked===!0&&(this.lockedOnNodeId=t.lockedOnNode,this.lockedOnNodeOffset=t.offset),0!=this.easingTime&&this._transitionRedraw(!0),this.sourceScale=this.body.view.scale,this.sourceTranslation=this.body.view.translation,this.targetScale=t.scale,this.body.view.scale=this.targetScale;var e=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:e.x-t.position.x,y:e.y-t.position.y};this.targetTranslation={x:this.sourceTranslation.x+i.x*this.targetScale+t.offset.x,y:this.sourceTranslation.y+i.y*this.targetScale+t.offset.y},0===t.animation.duration?void 0!=this.lockedOnNodeId?(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)):(this.body.view.scale=this.targetScale,this.body.view.translation=this.targetTranslation,this.body.emitter.emit("_requestRedraw")):(this.animationSpeed=1/(60*t.animation.duration*.001)||1/60,this.animationEasingFunction=t.animation.easingFunction,this.viewFunction=this._transitionRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction),this.body.emitter.emit("_startRendering"))}}},{key:"_lockedRedraw",value:function(){var t={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y},e=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight}),i={x:e.x-t.x,y:e.y-t.y},o=this.body.view.translation,n={x:o.x+i.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:o.y+i.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=n}},{key:"releaseNode",value:function(){void 0!==this.lockedOnNodeId&&void 0!==this.viewFunction&&(this.body.emitter.off("initRedraw",this.viewFunction),this.lockedOnNodeId=void 0,this.lockedOnNodeOffset=void 0)}},{key:"_transitionRedraw",value:function(){var t=arguments.length<=0||void 0===arguments[0]?!1:arguments[0];this.easingTime+=this.animationSpeed,this.easingTime=t===!0?1:this.easingTime;var e=h.easingFunctions[this.animationEasingFunction](this.easingTime);this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*e,this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*e,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*e},this.easingTime>=1&&(this.body.emitter.off("initRedraw",this.viewFunction),this.easingTime=0,void 0!=this.lockedOnNodeId&&(this.viewFunction=this._lockedRedraw.bind(this),this.body.emitter.on("initRedraw",this.viewFunction)),this.body.emitter.emit("animationFinished"))}},{key:"getScale",value:function(){return this.body.view.scale}},{key:"getViewPosition",value:function(){return this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight})}}]),t}();e["default"]=d,t.exports=e["default"]},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){ +function t(t,e){for(var i=0;i50&&(this.drag.pointer=this.getPointer(t.center),this.drag.pinched=!1,this.pinch.scale=this.body.view.scale,this.touchTime=(new Date).valueOf())}},{key:"onTap",value:function(t){var e=this.getPointer(t.center),i=this.selectionHandler.options.multiselect&&(t.changedPointers[0].ctrlKey||t.changedPointers[0].metaKey);this.checkSelectionChanges(e,t,i),this.selectionHandler._generateClickEvent("click",t,e)}},{key:"onDoubleTap",value:function(t){var e=this.getPointer(t.center);this.selectionHandler._generateClickEvent("doubleClick",t,e)}},{key:"onHold",value:function(t){var e=this.getPointer(t.center),i=this.selectionHandler.options.multiselect;this.checkSelectionChanges(e,t,i),this.selectionHandler._generateClickEvent("click",t,e),this.selectionHandler._generateClickEvent("hold",t,e)}},{key:"onRelease",value:function(t){if((new Date).valueOf()-this.touchTime>10){var e=this.getPointer(t.center);this.selectionHandler._generateClickEvent("release",t,e),this.touchTime=(new Date).valueOf()}}},{key:"onContext",value:function(t){var e=this.getPointer({x:t.clientX,y:t.clientY});this.selectionHandler._generateClickEvent("oncontext",t,e)}},{key:"checkSelectionChanges",value:function(t,e){var i=arguments.length<=2||void 0===arguments[2]?!1:arguments[2],o=this.selectionHandler._getSelectedEdgeCount(),n=this.selectionHandler._getSelectedNodeCount(),s=this.selectionHandler.getSelection(),r=void 0;r=i===!0?this.selectionHandler.selectAdditionalOnPoint(t):this.selectionHandler.selectOnPoint(t);var a=this.selectionHandler._getSelectedEdgeCount(),h=this.selectionHandler._getSelectedNodeCount(),d=this.selectionHandler.getSelection(),l=this._determineIfDifferent(s,d),u=l.nodesChanges,c=l.edgesChanges,p=!1;h-n>0?(this.selectionHandler._generateClickEvent("selectNode",e,t),r=!0,p=!0):0>h-n?(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),r=!0):h===n&&u===!0&&(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),this.selectionHandler._generateClickEvent("selectNode",e,t),p=!0,r=!0),a-o>0&&p===!1?(this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0):0>a-o?(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),r=!0):a===o&&c===!0&&(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0),r===!0&&this.selectionHandler._generateClickEvent("select",e,t)}},{key:"_determineIfDifferent",value:function(t,e){for(var i=!1,o=!1,n=0;nt&&(t=1e-5),t>10&&(t=10);var o=void 0;void 0!==this.drag&&this.drag.dragging===!0&&(o=this.canvas.DOMtoCanvas(this.drag.pointer));var n=this.body.view.translation,s=t/i,r=(1-s)*e.x+n.x*s,a=(1-s)*e.y+n.y*s;if(this.body.view.scale=t,this.body.view.translation={x:r,y:a},void 0!=o){var h=this.canvas.canvasToDOM(o);this.drag.pointer.x=h.x,this.drag.pointer.y=h.y}this.body.emitter.emit("_requestRedraw"),t>i?this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale}):this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale})}}},{key:"onMouseWheel",value:function(t){if(this.options.zoomView===!0){var e=0;if(t.wheelDelta?e=t.wheelDelta/120:t.detail&&(e=-t.detail/3),0!==e){var i=this.body.view.scale,o=e/10;0>e&&(o/=1-o),i*=1+o;var n=this.getPointer({x:t.clientX,y:t.clientY});this.zoom(i,n)}t.preventDefault()}}},{key:"onMouseMove",value:function(t){var e=this,i=this.getPointer({x:t.clientX,y:t.clientY}),o=!1;if(void 0!==this.popup&&(this.popup.hidden===!1&&this._checkHidePopup(i),this.popup.hidden===!1&&(o=!0,this.popup.setPosition(i.x+3,i.y-5),this.popup.show())),this.options.keyboard.bindToWindow===!1&&this.options.keyboard.enabled===!0&&this.canvas.frame.focus(),o===!1&&(void 0!==this.popupTimer&&(clearInterval(this.popupTimer),this.popupTimer=void 0),this.drag.dragging||(this.popupTimer=setTimeout(function(){return e._checkShowPopup(i)},this.options.tooltipDelay))),this.options.hover===!0){var n=this.selectionHandler.getNodeAt(i);void 0===n&&(n=this.selectionHandler.getEdgeAt(i)),this.selectionHandler.hoverObject(n)}}},{key:"_checkShowPopup",value:function(t){var e=this.canvas._XconvertDOMtoCanvas(t.x),i=this.canvas._YconvertDOMtoCanvas(t.y),o={left:e,top:i,right:e,bottom:i},n=void 0===this.popupObj?void 0:this.popupObj.id,s=!1,r="node";if(void 0===this.popupObj){for(var a=this.body.nodeIndices,h=this.body.nodes,l=void 0,u=[],c=0;c0&&(this.popupObj=h[u[u.length-1]],s=!0)}if(void 0===this.popupObj&&s===!1){for(var p=this.body.edgeIndices,f=this.body.edges,m=void 0,v=[],c=0;c0&&(this.popupObj=f[v[v.length-1]],r="edge")}void 0!==this.popupObj?this.popupObj.id!==n&&(void 0===this.popup&&(this.popup=new d["default"](this.canvas.frame)),this.popup.popupTargetType=r,this.popup.popupTargetId=this.popupObj.id,this.popup.setPosition(t.x+3,t.y-5),this.popup.setText(this.popupObj.getTitle()),this.popup.show(),this.body.emitter.emit("showPopup",this.popupObj.id)):void 0!==this.popup&&(this.popup.hide(),this.body.emitter.emit("hidePopup"))}},{key:"_checkHidePopup",value:function(t){var e=this.selectionHandler._pointerToPositionObject(t),i=!1;if("node"===this.popup.popupTargetType){if(void 0!==this.body.nodes[this.popup.popupTargetId]&&(i=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(e),i===!0)){var o=this.selectionHandler.getNodeAt(t);i=o.id===this.popup.popupTargetId}}else void 0===this.selectionHandler.getNodeAt(t)&&void 0!==this.body.edges[this.popup.popupTargetId]&&(i=this.body.edges[this.popup.popupTargetId].isOverlappingWith(e));i===!1&&(this.popupObj=void 0,this.popup.hide(),this.body.emitter.emit("hidePopup"))}}]),t}();e["default"]=u,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i700&&(this.body.emitter.emit("fit",{duration:700}),this.touchTime=(new Date).valueOf())}},{key:"_stopMovement",value:function(){for(var t in this.boundFunctions)this.boundFunctions.hasOwnProperty(t)&&(this.body.emitter.off("initRedraw",this.boundFunctions[t]),this.body.emitter.emit("_stopRendering"));this.boundFunctions={}}},{key:"_moveUp",value:function(){this.body.view.translation.y+=this.options.keyboard.speed.y}},{key:"_moveDown",value:function(){this.body.view.translation.y-=this.options.keyboard.speed.y}},{key:"_moveLeft",value:function(){this.body.view.translation.x+=this.options.keyboard.speed.x}},{key:"_moveRight",value:function(){this.body.view.translation.x-=this.options.keyboard.speed.x}},{key:"_zoomIn",value:function(){this.body.view.scale*=1+this.options.keyboard.speed.zoom,this.body.emitter.emit("zoom",{direction:"+",scale:this.body.view.scale})}},{key:"_zoomOut",value:function(){this.body.view.scale/=1+this.options.keyboard.speed.zoom,this.body.emitter.emit("zoom",{direction:"-",scale:this.body.view.scale})}},{key:"configureKeyboardBindings",value:function(){var t=this;void 0!==this.keycharm&&this.keycharm.destroy(),this.options.keyboard.enabled===!0&&(this.options.keyboard.bindToWindow===!0?this.keycharm=a({container:window,preventDefault:!0}):this.keycharm=a({container:this.canvas.frame,preventDefault:!0}),this.keycharm.reset(),this.activated===!0&&(this.keycharm.bind("up",function(){t.bindToRedraw("_moveUp")},"keydown"),this.keycharm.bind("down",function(){t.bindToRedraw("_moveDown")},"keydown"),this.keycharm.bind("left",function(){t.bindToRedraw("_moveLeft")},"keydown"),this.keycharm.bind("right",function(){t.bindToRedraw("_moveRight")},"keydown"),this.keycharm.bind("=",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("num+",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("num-",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("-",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("[",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("]",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("pageup",function(){t.bindToRedraw("_zoomIn")},"keydown"),this.keycharm.bind("pagedown",function(){t.bindToRedraw("_zoomOut")},"keydown"),this.keycharm.bind("up",function(){t.unbindFromRedraw("_moveUp")},"keyup"),this.keycharm.bind("down",function(){t.unbindFromRedraw("_moveDown")},"keyup"),this.keycharm.bind("left",function(){t.unbindFromRedraw("_moveLeft")},"keyup"),this.keycharm.bind("right",function(){t.unbindFromRedraw("_moveRight")},"keyup"),this.keycharm.bind("=",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("num+",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("num-",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("-",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("[",function(){t.unbindFromRedraw("_zoomOut")},"keyup"),this.keycharm.bind("]",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("pageup",function(){t.unbindFromRedraw("_zoomIn")},"keyup"),this.keycharm.bind("pagedown",function(){t.unbindFromRedraw("_zoomOut")},"keyup")))}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e){function i(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var o=function(){function t(t,e){for(var i=0;io&&(s=o-e-this.padding),sn&&(r=n-i-this.padding),r0?e===!0?this.body.nodes[o[o.length-1]]:o[o.length-1]:void 0}},{key:"_getEdgesOverlappingWith",value:function(t,e){for(var i=this.body.edges,o=0;o0?e===!0?this.body.edges[o[o.length-1]]:o[o.length-1]:void 0}},{key:"_addToSelection",value:function(t){t instanceof s?this.selectionObj.nodes[t.id]=t:this.selectionObj.edges[t.id]=t}},{key:"_addToHover",value:function(t){t instanceof s?this.hoverObj.nodes[t.id]=t:this.hoverObj.edges[t.id]=t}},{key:"_removeFromSelection",value:function(t){t instanceof s?(delete this.selectionObj.nodes[t.id],this._unselectConnectedEdges(t)):delete this.selectionObj.edges[t.id]}},{key:"unselectAll",value:function(){for(var t in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(t)&&this.selectionObj.nodes[t].unselect();for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&this.selectionObj.edges[e].unselect();this.selectionObj={nodes:{},edges:{}}}},{key:"_getSelectedNodeCount",value:function(){var t=0;for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&(t+=1);return t}},{key:"_getSelectedNode",value:function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t))return this.selectionObj.nodes[t]}},{key:"_getSelectedEdge",value:function(){for(var t in this.selectionObj.edges)if(this.selectionObj.edges.hasOwnProperty(t))return this.selectionObj.edges[t]}},{key:"_getSelectedEdgeCount",value:function(){var t=0;for(var e in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(e)&&(t+=1);return t}},{key:"_getSelectedObjectCount",value:function(){var t=0;for(var e in this.selectionObj.nodes)this.selectionObj.nodes.hasOwnProperty(e)&&(t+=1);for(var i in this.selectionObj.edges)this.selectionObj.edges.hasOwnProperty(i)&&(t+=1);return t}},{key:"_selectionIsEmpty",value:function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t))return!1;for(var e in this.selectionObj.edges)if(this.selectionObj.edges.hasOwnProperty(e))return!1;return!0}},{key:"_clusterInSelection",value:function(){for(var t in this.selectionObj.nodes)if(this.selectionObj.nodes.hasOwnProperty(t)&&this.selectionObj.nodes[t].clusterSize>1)return!0;return!1}},{key:"_selectConnectedEdges",value:function(t){for(var e=0;e0&&(this.options.hierarchical.levelSeparation*=-1):this.options.hierarchical.levelSeparation<0&&(this.options.hierarchical.levelSeparation*=-1),this.body.emitter.emit("_resetHierarchicalLayout"),this.adaptAllOptionsForHierarchicalLayout(e);if(i===!0)return this.body.emitter.emit("refresh"),d.deepExtend(e,this.optionsBackup)}return e}},{key:"adaptAllOptionsForHierarchicalLayout",value:function(t){if(this.options.hierarchical.enabled===!0){void 0===t.physics||t.physics===!0?(t.physics={enabled:void 0===this.optionsBackup.physics.enabled?!0:this.optionsBackup.physics.enabled,solver:"hierarchicalRepulsion"},this.optionsBackup.physics.enabled=void 0===this.optionsBackup.physics.enabled?!0:this.optionsBackup.physics.enabled,this.optionsBackup.physics.solver=this.optionsBackup.physics.solver||"barnesHut"):"object"==typeof t.physics?(this.optionsBackup.physics.enabled=void 0===t.physics.enabled?!0:t.physics.enabled,this.optionsBackup.physics.solver=t.physics.solver||"barnesHut",t.physics.solver="hierarchicalRepulsion"):t.physics!==!1&&(this.optionsBackup.physics.solver="barnesHut",t.physics={solver:"hierarchicalRepulsion"});var e="horizontal";("RL"===this.options.hierarchical.direction||"LR"===this.options.hierarchical.direction)&&(e="vertical"),void 0===t.edges?(this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},t.edges={smooth:!1}):void 0===t.edges.smooth?(this.optionsBackup.edges={smooth:{enabled:!0,type:"dynamic"}},t.edges.smooth=!1):"boolean"==typeof t.edges.smooth?(this.optionsBackup.edges={smooth:t.edges.smooth},t.edges.smooth={enabled:t.edges.smooth,type:e}):(void 0!==t.edges.smooth.type&&"dynamic"!==t.edges.smooth.type&&(e=t.edges.smooth.type),this.optionsBackup.edges={smooth:void 0===t.edges.smooth.enabled?!0:t.edges.smooth.enabled,type:void 0===t.edges.smooth.type?"dynamic":t.edges.smooth.type,roundness:void 0===t.edges.smooth.roundness?.5:t.edges.smooth.roundness,forceDirection:void 0===t.edges.smooth.forceDirection?!1:t.edges.smooth.forceDirection},t.edges.smooth={enabled:void 0===t.edges.smooth.enabled?!0:t.edges.smooth.enabled,type:e,roundness:void 0===t.edges.smooth.roundness?.5:t.edges.smooth.roundness,forceDirection:void 0===t.edges.smooth.forceDirection?!1:t.edges.smooth.forceDirection}),this.body.emitter.emit("_forceDisableDynamicCurves",e)}return t}},{key:"seededRandom",value:function(){var t=1e4*Math.sin(this.randomSeed++);return t-Math.floor(t)}},{key:"positionInitially",value:function(t){ +if(this.options.hierarchical.enabled!==!0){this.randomSeed=this.initialRandomSeed;for(var e=0;es){for(var r=this.body.nodeIndices.length;this.body.nodeIndices.length>s;){n+=1;var a=this.body.nodeIndices.length;n%3===0?this.body.modules.clustering.clusterBridges():this.body.modules.clustering.clusterOutliers();var h=this.body.nodeIndices.length;if(a==h&&n%3!==0||n>o)return this._declusterAll(),this.body.emitter.emit("_layoutFailed"),void console.info("This network could not be positioned by this version of the improved layout algorithm. Please disable improvedLayout for better performance.")}this.body.modules.kamadaKawai.setOptions({springLength:Math.max(150,2*r)})}this.body.modules.kamadaKawai.solve(this.body.nodeIndices,this.body.edgeIndices,!0),this._shiftToCenter();for(var d=70,e=0;e0){var t=void 0,e=void 0,i=!1,o=!0,n=!1;this.hierarchicalLevels={},this.lastNodeOnLevel={},this.hierarchicalParents={},this.hierarchicalChildren={},this.hierarchicalTrees={},this.treeIndex=-1,this.distributionOrdering={},this.distributionIndex={},this.distributionOrderingPresence={};for(e in this.body.nodes)this.body.nodes.hasOwnProperty(e)&&(t=this.body.nodes[e],void 0===t.options.x&&void 0===t.options.y&&(o=!1),void 0!==t.options.level?(i=!0,this.hierarchicalLevels[e]=t.options.level):n=!0);if(n===!0&&i===!0)throw new Error("To use the hierarchical layout, nodes require either no predefined levels or levels have to be defined for all nodes.");n===!0&&("hubsize"===this.options.hierarchical.sortMethod?this._determineLevelsByHubsize():"directed"===this.options.hierarchical.sortMethod?this._determineLevelsDirected():"custom"===this.options.hierarchical.sortMethod&&this._determineLevelsCustomCallback());for(var s in this.body.nodes)this.body.nodes.hasOwnProperty(s)&&void 0===this.hierarchicalLevels[s]&&(this.hierarchicalLevels[s]=0);var r=this._getDistribution();this._generateMap(),this._placeNodesByHierarchy(r),this._condenseHierarchy(),this._shiftToCenter()}}},{key:"_condenseHierarchy",value:function(){var t=this,e=!1,i={},o=function(){for(var e=a(),i=0;i0)for(var n=0;n=l&&(r=Math.min(u,r),a=Math.max(u,a))}return[r,a,o,n]},l=function _(e){var i=t.hierarchicalLevels[e];if(t.hierarchicalParents[e]){var o=t.hierarchicalParents[e].children;if(o.length>0)for(var n=0;n1)for(var a=0;at.options.hierarchical.nodeSpacing){var c={};c[i.id]=!0;var p={};p[o.id]=!0,h(i,c),h(o,p);var f=u(i,o),m=d(c,f),v=s(m,4),g=(v[0],v[1]),y=(v[2],v[3],d(p,f)),b=s(y,4),_=b[0],w=(b[1],b[2]),x=(b[3],Math.abs(g-_));if(x>t.options.hierarchical.nodeSpacing){var k=g-_+t.options.hierarchical.nodeSpacing;k<-w+t.options.hierarchical.nodeSpacing&&(k=-w+t.options.hierarchical.nodeSpacing),0>k&&(t._shiftBlock(o.id,k),e=!0,n===!0&&t._centerParent(o))}}},m=function(o,n){for(var r=n.id,a=n.edges,l=t.hierarchicalLevels[n.id],u=t.options.hierarchical.levelSeparation*t.options.hierarchical.levelSeparation,c={},p=[],f=0;fr;r++){var a=g(o,i),h=y(o,i),d=40,l=Math.max(-d,Math.min(d,Math.round(a/h)));if(o-=l,void 0!==s[o])break;s[o]=r}return o},_=function(o){var r=t._getPositionForHierarchy(n);if(void 0===i[n.id]){var a={};a[n.id]=!0,h(n,a),i[n.id]=a}var l=d(i[n.id]),u=s(l,4),c=(u[0],u[1],u[2]),p=u[3],f=o-r,m=0;f>0?m=Math.min(f,p-t.options.hierarchical.nodeSpacing):0>f&&(m=-Math.min(-f,c-t.options.hierarchical.nodeSpacing)),0!=m&&(t._shiftBlock(n.id,m),e=!0)},w=function(i){var o=t._getPositionForHierarchy(n),r=t._getSpaceAroundNode(n),a=s(r,2),h=a[0],d=a[1],l=i-o,u=o;l>0?u=Math.min(o+(d-t.options.hierarchical.nodeSpacing),i):0>l&&(u=Math.max(o-(h-t.options.hierarchical.nodeSpacing),i)),u!==o&&(t._setPositionForHierarchy(n,u,void 0,!0),e=!0)},x=b(o,p);_(x),x=b(o,a),w(x)},v=function(i){var o=Object.keys(t.distributionOrdering);o=o.reverse();for(var n=0;i>n;n++){e=!1;for(var s=0;sn&&(e=!1,p(f,o,!0),e===!0);n++);},y=function(){for(var e in t.body.nodes)t.body.nodes.hasOwnProperty(e)&&t._centerParent(t.body.nodes[e])};this.options.hierarchical.blockShifting===!0&&(g(5),y()),this.options.hierarchical.edgeMinimization===!0&&v(20),o()}},{key:"_getSpaceAroundNode",value:function(t,e){var i=!0;void 0===e&&(i=!1);var o=this.hierarchicalLevels[t.id];if(void 0!==o){var n=this.distributionIndex[t.id],s=this._getPositionForHierarchy(t),r=1e9,a=1e9;if(0!==n){var h=this.distributionOrdering[o][n-1];if(i===!0&&void 0===e[h.id]||i===!1){var d=this._getPositionForHierarchy(h);r=s-d}}if(n!=this.distributionOrdering[o].length-1){var l=this.distributionOrdering[o][n+1];if(i===!0&&void 0===e[l.id]||i===!1){var u=this._getPositionForHierarchy(l);a=Math.min(a,u-s)}}return[r,a]}return[0,0]}},{key:"_centerParent",value:function(t){if(this.hierarchicalChildren[t.id])for(var e=this.hierarchicalChildren[t.id].parents,i=0;i0)for(var d=0;dg&&Math.abs(g)0&&Math.abs(g)0&&(e=this._getHubSize(),0!==e);)for(var o in this.body.nodes)if(this.body.nodes.hasOwnProperty(o)){var n=this.body.nodes[o];n.edges.length===e&&this._crawlNetwork(i,o)}}},{key:"_determineLevelsCustomCallback",value:function(){var t=this,e=1e5,i=function(t,e,i){},o=function(o,n,s){var r=t.hierarchicalLevels[o.id];void 0===r&&(t.hierarchicalLevels[o.id]=e);var a=i(h["default"].cloneOptions(o,"node"),h["default"].cloneOptions(n,"node"),h["default"].cloneOptions(s,"edge"));t.hierarchicalLevels[n.id]=t.hierarchicalLevels[o.id]+a};this._crawlNetwork(o),this._setMinLevelToZero()}},{key:"_determineLevelsDirected",value:function(){var t=this,e=1e4,i=function(i,o,n){var s=t.hierarchicalLevels[i.id];void 0===s&&(t.hierarchicalLevels[i.id]=e),n.toId==o.id?t.hierarchicalLevels[o.id]=t.hierarchicalLevels[i.id]+1:t.hierarchicalLevels[o.id]=t.hierarchicalLevels[i.id]-1};this._crawlNetwork(i),this._setMinLevelToZero()}},{key:"_setMinLevelToZero",value:function(){var t=1e9;for(var e in this.body.nodes)this.body.nodes.hasOwnProperty(e)&&void 0!==this.hierarchicalLevels[e]&&(t=Math.min(this.hierarchicalLevels[e],t));for(var e in this.body.nodes)this.body.nodes.hasOwnProperty(e)&&void 0!==this.hierarchicalLevels[e]&&(this.hierarchicalLevels[e]-=t)}},{key:"_generateMap",value:function(){var t=this,e=function(e,i){if(t.hierarchicalLevels[i.id]>t.hierarchicalLevels[e.id]){var o=e.id,n=i.id;void 0===t.hierarchicalParents[o]&&(t.hierarchicalParents[o]={children:[],amount:0}),t.hierarchicalParents[o].children.push(n),void 0===t.hierarchicalChildren[n]&&(t.hierarchicalChildren[n]={parents:[],amount:0}),t.hierarchicalChildren[n].parents.push(o)}};this._crawlNetwork(e)}},{key:"_crawlNetwork",value:function(t,e){void 0===t&&(t=function(){});var i={},o=function r(e){if(void 0===i[e.id]){i[e.id]=!0;for(var o=void 0,n=0;ne&&void 0===this.positionedNodes[n.id]))return;var r=void 0;if(r=0===o?this._getPositionForHierarchy(this.body.nodes[t]):this._getPositionForHierarchy(i[o-1])+this.options.hierarchical.nodeSpacing,this._setPositionForHierarchy(n,r,s),void 0!==this.lastNodeOnLevel[s]){var a=this._getPositionForHierarchy(this.body.nodes[this.lastNodeOnLevel[s]]);if(r-a1&&("UD"===this.options.hierarchical.direction||"DU"===this.options.hierarchical.direction?t.sort(function(t,e){return t.x-e.x}):t.sort(function(t,e){return t.y-e.y}))}}]),t}();e["default"]=l,t.exports=e["default"]},function(t,e,i){function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var n=function(){function t(t,e){for(var i=0;i0&&this.options.deleteNode!==!1?(n===!0&&this._createSeperator(4),this._createDeleteButton(o)):0===t&&this.options.deleteEdge!==!1&&(n===!0&&this._createSeperator(4),this._createDeleteButton(o))),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this)),this._temporaryBindEvent("select",this.showManipulatorToolbar.bind(this))}this.body.emitter.emit("_redraw")}},{key:"addNodeMode",value:function(){if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addNode",this.guiEnabled===!0){var t=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(t),this._createSeperator(),this._createDescription(t.addDescription||this.options.locales.en.addDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindEvent("click",this._performAddNode.bind(this))}},{key:"editNode",value:function(){var t=this;this.editMode!==!0&&this.enableEditMode(),this._clean();var e=this.selectionHandler._getSelectedNode();if(void 0!==e){if(this.inMode="editNode","function"!=typeof this.options.editNode)throw new Error("No function has been configured to handle the editing of nodes.");if(e.isCluster!==!0){var i=s.deepExtend({},e.options,!0);if(i.x=e.x,i.y=e.y,2!==this.options.editNode.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editNode(i,function(e){null!==e&&void 0!==e&&"editNode"===t.inMode&&t.body.data.nodes.getDataSet().update(e),t.showManipulatorToolbar()})}else alert(this.options.locales[this.options.locale].editClusterError||this.options.locales.en.editClusterError)}else this.showManipulatorToolbar()}},{key:"addEdgeMode",value:function(){if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="addEdge",this.guiEnabled===!0){var t=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(t),this._createSeperator(),this._createDescription(t.edgeDescription||this.options.locales.en.edgeDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindUI("onTouch",this._handleConnect.bind(this)),this._temporaryBindUI("onDragEnd",this._finishConnect.bind(this)),this._temporaryBindUI("onDrag",this._dragControlNode.bind(this)),this._temporaryBindUI("onRelease",this._finishConnect.bind(this)),this._temporaryBindUI("onDragStart",function(){}),this._temporaryBindUI("onHold",function(){})}},{key:"editEdgeMode",value:function(){var t=this;if(this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="editEdge",this.guiEnabled===!0){var e=this.options.locales[this.options.locale];this.manipulationDOM={},this._createBackButton(e),this._createSeperator(),this._createDescription(e.editEdgeDescription||this.options.locales.en.editEdgeDescription),this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this.edgeBeingEditedId=this.selectionHandler.getSelectedEdges()[0],void 0!==this.edgeBeingEditedId?!function(){var e=t.body.edges[t.edgeBeingEditedId],i=t._getNewTargetNode(e.from.x,e.from.y),o=t._getNewTargetNode(e.to.x,e.to.y);t.temporaryIds.nodes.push(i.id),t.temporaryIds.nodes.push(o.id),t.body.nodes[i.id]=i,t.body.nodeIndices.push(i.id),t.body.nodes[o.id]=o,t.body.nodeIndices.push(o.id),t._temporaryBindUI("onTouch",t._controlNodeTouch.bind(t)),t._temporaryBindUI("onTap",function(){}),t._temporaryBindUI("onHold",function(){}),t._temporaryBindUI("onDragStart",t._controlNodeDragStart.bind(t)),t._temporaryBindUI("onDrag",t._controlNodeDrag.bind(t)),t._temporaryBindUI("onDragEnd",t._controlNodeDragEnd.bind(t)),t._temporaryBindUI("onMouseMove",function(){}),t._temporaryBindEvent("beforeDrawing",function(t){var n=e.edgeType.findBorderPositions(t);i.selected===!1&&(i.x=n.from.x,i.y=n.from.y),o.selected===!1&&(o.x=n.to.x,o.y=n.to.y)}),t.body.emitter.emit("_redraw")}():this.showManipulatorToolbar()}},{key:"deleteSelected",value:function(){var t=this;this.editMode!==!0&&this.enableEditMode(),this._clean(),this.inMode="delete";var e=this.selectionHandler.getSelectedNodes(),i=this.selectionHandler.getSelectedEdges(),o=void 0;if(e.length>0){for(var n=0;n0&&"function"==typeof this.options.deleteEdge&&(o=this.options.deleteEdge);if("function"==typeof o){var s={nodes:e,edges:i};if(2!==o.length)throw new Error("The function for delete does not support two arguments (data, callback)");o(s,function(e){null!==e&&void 0!==e&&"delete"===t.inMode?(t.body.data.edges.getDataSet().remove(e.edges),t.body.data.nodes.getDataSet().remove(e.nodes),t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar()):(t.body.emitter.emit("startSimulation"),t.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().remove(i),this.body.data.nodes.getDataSet().remove(e),this.body.emitter.emit("startSimulation"),this.showManipulatorToolbar()}},{key:"_setup",value:function(){this.options.enabled===!0?(this.guiEnabled=!0,this._createWrappers(),this.editMode===!1?this._createEditButton():this.showManipulatorToolbar()):(this._removeManipulationDOM(),this.guiEnabled=!1)}},{key:"_createWrappers",value:function(){void 0===this.manipulationDiv&&(this.manipulationDiv=document.createElement("div"),this.manipulationDiv.className="vis-manipulation",this.editMode===!0?this.manipulationDiv.style.display="block":this.manipulationDiv.style.display="none",this.canvas.frame.appendChild(this.manipulationDiv)),void 0===this.editModeDiv&&(this.editModeDiv=document.createElement("div"),this.editModeDiv.className="vis-edit-mode",this.editMode===!0?this.editModeDiv.style.display="none":this.editModeDiv.style.display="block",this.canvas.frame.appendChild(this.editModeDiv)),void 0===this.closeDiv&&(this.closeDiv=document.createElement("div"),this.closeDiv.className="vis-close",this.closeDiv.style.display=this.manipulationDiv.style.display,this.canvas.frame.appendChild(this.closeDiv))}},{key:"_getNewTargetNode",value:function(t,e){var i=s.deepExtend({},this.options.controlNodeStyle);i.id="targetNode"+s.randomUUID(),i.hidden=!1,i.physics=!1,i.x=t,i.y=e;var o=this.body.functions.createNode(i);return o.shape.boundingBox={left:t,right:t,top:e,bottom:e},o}},{key:"_createEditButton",value:function(){this._clean(),this.manipulationDOM={},s.recursiveDOMDelete(this.editModeDiv);var t=this.options.locales[this.options.locale],e=this._createButton("editMode","vis-button vis-edit vis-edit-mode",t.edit||this.options.locales.en.edit);this.editModeDiv.appendChild(e),this._bindHammerToDiv(e,this.toggleEditMode.bind(this))}},{key:"_clean",value:function(){this.inMode=!1,this.guiEnabled===!0&&(s.recursiveDOMDelete(this.editModeDiv),s.recursiveDOMDelete(this.manipulationDiv),this._cleanManipulatorHammers()),this._cleanupTemporaryNodesAndEdges(),this._unbindTemporaryUIs(),this._unbindTemporaryEvents(),this.body.emitter.emit("restorePhysics")}},{key:"_cleanManipulatorHammers",value:function(){if(0!=this.manipulationHammers.length){for(var t=0;t=0;r--)if(n[r]!==this.selectedControlNode.id){s=this.body.nodes[n[r]];break}if(void 0!==s&&void 0!==this.selectedControlNode)if(s.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{var a=this.body.nodes[this.temporaryIds.nodes[0]];this.selectedControlNode.id===a.id?this._performEditEdge(s.id,o.to.id):this._performEditEdge(o.from.id,s.id)}else o.updateEdgeType(),this.body.emitter.emit("restorePhysics");this.body.emitter.emit("_redraw")}}},{key:"_handleConnect",value:function(t){if((new Date).valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(t.center),this.lastTouch.translation=s.extend({},this.body.view.translation);var e=this.lastTouch,i=this.selectionHandler.getNodeAt(e);if(void 0!==i)if(i.isCluster===!0)alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError);else{var o=this._getNewTargetNode(i.x,i.y);this.body.nodes[o.id]=o,this.body.nodeIndices.push(o.id);var n=this.body.functions.createEdge({id:"connectionEdge"+s.randomUUID(),from:i.id,to:o.id,physics:!1,smooth:{enabled:!0,type:"continuous",roundness:.5}});this.body.edges[n.id]=n,this.body.edgeIndices.push(n.id),this.temporaryIds.nodes.push(o.id),this.temporaryIds.edges.push(n.id)}this.touchTime=(new Date).valueOf()}}},{key:"_dragControlNode",value:function(t){var e=this.body.functions.getPointer(t.center);if(void 0!==this.temporaryIds.nodes[0]){var i=this.body.nodes[this.temporaryIds.nodes[0]];i.x=this.canvas._XconvertDOMtoCanvas(e.x),i.y=this.canvas._YconvertDOMtoCanvas(e.y),this.body.emitter.emit("_redraw")}else{var o=e.x-this.lastTouch.x,n=e.y-this.lastTouch.y;this.body.view.translation={x:this.lastTouch.translation.x+o,y:this.lastTouch.translation.y+n}}}},{key:"_finishConnect",value:function(t){var e=this.body.functions.getPointer(t.center),i=this.selectionHandler._pointerToPositionObject(e),o=void 0;void 0!==this.temporaryIds.edges[0]&&(o=this.body.edges[this.temporaryIds.edges[0]].fromId);for(var n=this.selectionHandler._getAllNodesOverlappingWith(i),s=void 0,r=n.length-1;r>=0;r--)if(-1===this.temporaryIds.nodes.indexOf(n[r])){s=this.body.nodes[n[r]];break}this._cleanupTemporaryNodesAndEdges(),void 0!==s&&(s.isCluster===!0?alert(this.options.locales[this.options.locale].createEdgeError||this.options.locales.en.createEdgeError):void 0!==this.body.nodes[o]&&void 0!==this.body.nodes[s.id]&&this._performAddEdge(o,s.id)),this.body.emitter.emit("_redraw")}},{key:"_performAddNode",value:function(t){var e=this,i={id:s.randomUUID(),x:t.pointer.canvas.x,y:t.pointer.canvas.y,label:"new"};if("function"==typeof this.options.addNode){if(2!==this.options.addNode.length)throw new Error("The function for add does not support two arguments (data,callback)");this.options.addNode(i,function(t){null!==t&&void 0!==t&&"addNode"===e.inMode&&(e.body.data.nodes.getDataSet().add(t),e.showManipulatorToolbar())})}else this.body.data.nodes.getDataSet().add(i),this.showManipulatorToolbar()}},{key:"_performAddEdge",value:function(t,e){var i=this,o={from:t,to:e};if("function"==typeof this.options.addEdge){if(2!==this.options.addEdge.length)throw new Error("The function for connect does not support two arguments (data,callback)");this.options.addEdge(o,function(t){null!==t&&void 0!==t&&"addEdge"===i.inMode&&(i.body.data.edges.getDataSet().add(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().add(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}},{key:"_performEditEdge",value:function(t,e){var i=this,o={id:this.edgeBeingEditedId,from:t,to:e};if("function"==typeof this.options.editEdge){if(2!==this.options.editEdge.length)throw new Error("The function for edit does not support two arguments (data, callback)");this.options.editEdge(o,function(t){null===t||void 0===t||"editEdge"!==i.inMode?(i.body.edges[o.id].updateEdgeType(),i.body.emitter.emit("_redraw")):(i.body.data.edges.getDataSet().update(t),i.selectionHandler.unselectAll(),i.showManipulatorToolbar())})}else this.body.data.edges.getDataSet().update(o),this.selectionHandler.unselectAll(),this.showManipulatorToolbar()}}]),t}();e["default"]=h,t.exports=e["default"]},function(t,e){Object.defineProperty(e,"__esModule",{value:!0});var i="string",o="boolean",n="number",s="array",r="object",a="dom",h="any",d={configure:{enabled:{"boolean":o},filter:{"boolean":o,string:i,array:s,"function":"function"},container:{dom:a},showButton:{"boolean":o},__type__:{object:r,"boolean":o,string:i,array:s,"function":"function"}},edges:{arrows:{to:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},middle:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},from:{enabled:{"boolean":o},scaleFactor:{number:n},__type__:{object:r,"boolean":o}},__type__:{string:["from","to","middle"],object:r}},arrowStrikethrough:{"boolean":o},color:{color:{string:i},highlight:{string:i},hover:{string:i},inherit:{string:["from","to","both"],"boolean":o},opacity:{number:n},__type__:{object:r,string:i}},dashes:{"boolean":o,array:s},font:{color:{string:i},size:{number:n},face:{string:i},background:{string:i},strokeWidth:{number:n},strokeColor:{string:i},align:{string:["horizontal","top","middle","bottom"]},__type__:{object:r,string:i}},hidden:{"boolean":o},hoverWidth:{"function":"function",number:n},label:{string:i,undefined:"undefined"},labelHighlightBold:{"boolean":o},length:{number:n,undefined:"undefined"},physics:{"boolean":o},scaling:{min:{number:n},max:{number:n},label:{enabled:{"boolean":o},min:{number:n},max:{number:n},maxVisible:{number:n},drawThreshold:{number:n},__type__:{object:r,"boolean":o}},customScalingFunction:{"function":"function"},__type__:{object:r}},selectionWidth:{"function":"function",number:n},selfReferenceSize:{number:n},shadow:{enabled:{"boolean":o},color:{string:i},size:{number:n},x:{number:n},y:{number:n},__type__:{object:r,"boolean":o}},smooth:{enabled:{"boolean":o},type:{string:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"]},roundness:{number:n},forceDirection:{string:["horizontal","vertical","none"],"boolean":o},__type__:{object:r,"boolean":o}},title:{string:i,undefined:"undefined"},width:{number:n},value:{number:n,undefined:"undefined"},__type__:{object:r}},groups:{useDefaultGroups:{"boolean":o},__any__:"get from nodes, will be overwritten below",__type__:{object:r}},interaction:{dragNodes:{"boolean":o},dragView:{"boolean":o},hideEdgesOnDrag:{"boolean":o},hideNodesOnDrag:{"boolean":o},hover:{"boolean":o},keyboard:{enabled:{"boolean":o},speed:{x:{number:n},y:{number:n},zoom:{number:n},__type__:{object:r}},bindToWindow:{"boolean":o},__type__:{object:r,"boolean":o}},multiselect:{"boolean":o},navigationButtons:{"boolean":o},selectable:{"boolean":o},selectConnectedEdges:{"boolean":o},hoverConnectedEdges:{"boolean":o},tooltipDelay:{number:n},zoomView:{"boolean":o},__type__:{object:r}},layout:{randomSeed:{undefined:"undefined",number:n},improvedLayout:{"boolean":o},hierarchical:{enabled:{"boolean":o},levelSeparation:{number:n},nodeSpacing:{number:n},treeSpacing:{number:n},blockShifting:{"boolean":o},edgeMinimization:{"boolean":o},direction:{string:["UD","DU","LR","RL"]},sortMethod:{string:["hubsize","directed"]},__type__:{object:r,"boolean":o}},__type__:{object:r}},manipulation:{enabled:{"boolean":o},initiallyActive:{"boolean":o},addNode:{"boolean":o,"function":"function"},addEdge:{"boolean":o,"function":"function"},editNode:{"function":"function"},editEdge:{"boolean":o,"function":"function"},deleteNode:{"boolean":o,"function":"function"},deleteEdge:{"boolean":o,"function":"function"},controlNodeStyle:"get from nodes, will be overwritten below",__type__:{object:r,"boolean":o}},nodes:{borderWidth:{number:n},borderWidthSelected:{number:n,undefined:"undefined"},brokenImage:{string:i,undefined:"undefined"},color:{border:{string:i},background:{string:i},highlight:{border:{string:i},background:{string:i},__type__:{object:r,string:i}},hover:{border:{string:i},background:{string:i},__type__:{object:r,string:i}},__type__:{object:r,string:i}},fixed:{x:{"boolean":o},y:{"boolean":o},__type__:{object:r,"boolean":o}},font:{color:{string:i},size:{number:n},face:{string:i},background:{string:i},strokeWidth:{number:n},strokeColor:{string:i},__type__:{object:r,string:i}},group:{string:i,number:n,undefined:"undefined"},hidden:{"boolean":o},icon:{face:{string:i},code:{string:i},size:{number:n},color:{string:i},__type__:{object:r}},id:{string:i,number:n},image:{string:i,undefined:"undefined"},label:{string:i,undefined:"undefined"},labelHighlightBold:{"boolean":o},level:{number:n,undefined:"undefined"},mass:{number:n},physics:{"boolean":o},scaling:{min:{number:n},max:{number:n},label:{enabled:{"boolean":o},min:{number:n},max:{number:n},maxVisible:{number:n},drawThreshold:{number:n},__type__:{object:r,"boolean":o}},customScalingFunction:{"function":"function"},__type__:{object:r}},shadow:{enabled:{"boolean":o},color:{string:i},size:{number:n},x:{number:n},y:{number:n},__type__:{object:r,"boolean":o}},shape:{string:["ellipse","circle","database","box","text","image","circularImage","diamond","dot","star","triangle","triangleDown","square","icon"]},shapeProperties:{borderDashes:{"boolean":o,array:s},borderRadius:{number:n},useImageSize:{"boolean":o},useBorderWithImage:{"boolean":o},__type__:{object:r}},size:{number:n},title:{string:i,undefined:"undefined"},value:{number:n,undefined:"undefined"},x:{number:n},y:{number:n},__type__:{object:r}},physics:{enabled:{"boolean":o},barnesHut:{gravitationalConstant:{number:n},centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},damping:{number:n},avoidOverlap:{number:n},__type__:{object:r}},forceAtlas2Based:{gravitationalConstant:{number:n},centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},damping:{number:n},avoidOverlap:{number:n},__type__:{object:r}},repulsion:{centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},nodeDistance:{number:n},damping:{number:n},__type__:{object:r}},hierarchicalRepulsion:{centralGravity:{number:n},springLength:{number:n},springConstant:{number:n},nodeDistance:{number:n},damping:{number:n},__type__:{object:r}},maxVelocity:{number:n},minVelocity:{number:n},solver:{string:["barnesHut","repulsion","hierarchicalRepulsion","forceAtlas2Based"]},stabilization:{enabled:{"boolean":o},iterations:{number:n},updateInterval:{number:n},onlyDynamicEdges:{"boolean":o},fit:{"boolean":o},__type__:{object:r,"boolean":o}},timestep:{number:n},adaptiveTimestep:{"boolean":o},__type__:{object:r,"boolean":o}},autoResize:{"boolean":o},clickToUse:{"boolean":o},locale:{string:i},locales:{__any__:{any:h},__type__:{object:r}},height:{string:i},width:{string:i},__type__:{object:r}};d.groups.__any__=d.nodes,d.manipulation.controlNodeStyle=d.nodes;var l={nodes:{borderWidth:[1,0,10,1],borderWidthSelected:[2,0,10,1],color:{border:["color","#2B7CE9"],background:["color","#97C2FC"],highlight:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]},hover:{border:["color","#2B7CE9"],background:["color","#D2E5FF"]}},fixed:{x:!1,y:!1},font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[0,0,50,1],strokeColor:["color","#ffffff"]},hidden:!1,labelHighlightBold:!0,physics:!0,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:!1,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:["ellipse","box","circle","database","diamond","dot","square","star","text","triangle","triangleDown"],shapeProperties:{borderDashes:!1,borderRadius:[6,0,20,1],useImageSize:!1},size:[25,0,200,1]},edges:{arrows:{to:{enabled:!1,scaleFactor:[1,0,3,.05]},middle:{enabled:!1,scaleFactor:[1,0,3,.05]},from:{enabled:!1,scaleFactor:[1,0,3,.05]}},arrowStrikethrough:!0,color:{color:["color","#848484"],highlight:["color","#848484"],hover:["color","#848484"],inherit:["from","to","both",!0,!1],opacity:[1,0,1,.05]},dashes:!1,font:{color:["color","#343434"],size:[14,0,100,1],face:["arial","verdana","tahoma"],background:["color","none"],strokeWidth:[2,0,50,1],strokeColor:["color","#ffffff"],align:["horizontal","top","middle","bottom"]},hidden:!1,hoverWidth:[1.5,0,5,.1],labelHighlightBold:!0,physics:!0,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:!0,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],shadow:{enabled:!1,color:"rgba(0,0,0,0.5)",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},smooth:{enabled:!0,type:["dynamic","continuous","discrete","diagonalCross","straightCross","horizontal","vertical","curvedCW","curvedCCW","cubicBezier"],forceDirection:["horizontal","vertical","none"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:!1,levelSeparation:[150,20,500,5],nodeSpacing:[100,20,500,5],treeSpacing:[200,20,500,5],blockShifting:!0,edgeMinimization:!0,direction:["UD","DU","LR","RL"],sortMethod:["hubsize","directed"]}},interaction:{dragNodes:!0,dragView:!0,hideEdgesOnDrag:!1,hideNodesOnDrag:!1,hover:!1,keyboard:{enabled:!1,speed:{x:[10,0,40,1],y:[10,0,40,1],zoom:[.02,0,.1,.005]},bindToWindow:!0},multiselect:!1,navigationButtons:!1,selectable:!0,selectConnectedEdges:!0,hoverConnectedEdges:!0,tooltipDelay:[300,0,1e3,25],zoomView:!0},manipulation:{enabled:!1,initiallyActive:!1},physics:{enabled:!0,barnesHut:{gravitationalConstant:[-2e3,-3e4,0,50],centralGravity:[.3,0,10,.05],springLength:[95,0,500,5],springConstant:[.04,0,1.2,.005],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},forceAtlas2Based:{gravitationalConstant:[-50,-500,0,1],centralGravity:[.01,0,1,.005],springLength:[95,0,500,5],springConstant:[.08,0,1.2,.005],damping:[.4,0,1,.01],avoidOverlap:[0,0,1,.01]},repulsion:{centralGravity:[.2,0,10,.05],springLength:[200,0,500,5],springConstant:[.05,0,1.2,.005],nodeDistance:[100,0,500,5],damping:[.09,0,1,.01]},hierarchicalRepulsion:{centralGravity:[.2,0,10,.05],springLength:[100,0,500,5],springConstant:[.01,0,1.2,.005],nodeDistance:[120,0,500,5],damping:[.09,0,1,.01]},maxVelocity:[50,0,150,1],minVelocity:[.1,.01,.5,.01],solver:["barnesHut","forceAtlas2Based","repulsion","hierarchicalRepulsion"],timestep:[.5,.01,1,.01]},global:{locale:["en","nl"]}};e.allOptions=d,e.configureOptions=l},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var s=function(){function t(t,e){var i=[],o=!0,n=!1,s=void 0;try{for(var r,a=t[Symbol.iterator]();!(o=(r=a.next()).done)&&(i.push(r.value),!e||i.length!==e);o=!0);}catch(h){n=!0,s=h}finally{try{!o&&a["return"]&&a["return"]()}finally{if(n)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),r=function(){function t(t,e){for(var i=0;in&&h>a;){a+=1;var v=this._getHighestEnergyNode(i),g=s(v,4);for(u=g[0],l=g[1],c=g[2],p=g[3],f=l,m=0;f>r&&d>m;){m+=1,this._moveNode(u,c,p);var y=this._getEnergy(u),b=s(y,3);f=b[0],c=b[1],p=b[2]}}}},{key:"_getHighestEnergyNode",value:function(t){for(var e=this.body.nodeIndices,i=this.body.nodes,o=0,n=e[0],r=0,a=0,h=0;ho&&(o=c,n=d,r=p,a=f)}}return[n,o,r,a]}},{key:"_getEnergy",value:function(t){for(var e=this.body.nodeIndices,i=this.body.nodes,o=i[t].x,n=i[t].y,s=0,r=0,a=0;ad;d++)for(var s=0;h-1>s;s++)for(var r=s+1;h>r;r++)o[e[s]][e[r]]=Math.min(o[e[s]][e[r]],o[e[s]][e[d]]+o[e[d]][e[r]]),o[e[r]][e[s]]=o[e[s]][e[r]];return o}}]),t}();e["default"]=n,t.exports=e["default"]},function(t,e){"undefined"!=typeof CanvasRenderingContext2D&&(CanvasRenderingContext2D.prototype.circle=function(t,e,i){this.beginPath(),this.arc(t,e,i,0,2*Math.PI,!1),this.closePath()},CanvasRenderingContext2D.prototype.square=function(t,e,i){this.beginPath(),this.rect(t-i,e-i,2*i,2*i),this.closePath()},CanvasRenderingContext2D.prototype.triangle=function(t,e,i){this.beginPath(),i*=1.15,e+=.275*i;var o=2*i,n=o/2,s=Math.sqrt(3)/6*o,r=Math.sqrt(o*o-n*n);this.moveTo(t,e-(r-s)),this.lineTo(t+n,e+s),this.lineTo(t-n,e+s),this.lineTo(t,e-(r-s)),this.closePath()},CanvasRenderingContext2D.prototype.triangleDown=function(t,e,i){this.beginPath(),i*=1.15,e-=.275*i;var o=2*i,n=o/2,s=Math.sqrt(3)/6*o,r=Math.sqrt(o*o-n*n);this.moveTo(t,e+(r-s)),this.lineTo(t+n,e-s),this.lineTo(t-n,e-s),this.lineTo(t,e+(r-s)),this.closePath()},CanvasRenderingContext2D.prototype.star=function(t,e,i){this.beginPath(),i*=.82,e+=.1*i;for(var o=0;10>o;o++){var n=o%2===0?1.3*i:.5*i;this.lineTo(t+n*Math.sin(2*o*Math.PI/10),e-n*Math.cos(2*o*Math.PI/10))}this.closePath()},CanvasRenderingContext2D.prototype.diamond=function(t,e,i){this.beginPath(),this.lineTo(t,e+i),this.lineTo(t+i,e),this.lineTo(t,e-i),this.lineTo(t-i,e),this.closePath()},CanvasRenderingContext2D.prototype.roundRect=function(t,e,i,o,n){var s=Math.PI/180;0>i-2*n&&(n=i/2),0>o-2*n&&(n=o/2),this.beginPath(),this.moveTo(t+n,e),this.lineTo(t+i-n,e),this.arc(t+i-n,e+n,n,270*s,360*s,!1),this.lineTo(t+i,e+o-n),this.arc(t+i-n,e+o-n,n,0,90*s,!1),this.lineTo(t+n,e+o),this.arc(t+n,e+o-n,n,90*s,180*s,!1),this.lineTo(t,e+n),this.arc(t+n,e+n,n,180*s,270*s,!1),this.closePath()},CanvasRenderingContext2D.prototype.ellipse=function(t,e,i,o){var n=.5522848,s=i/2*n,r=o/2*n,a=t+i,h=e+o,d=t+i/2,l=e+o/2;this.beginPath(),this.moveTo(t,l),this.bezierCurveTo(t,l-r,d-s,e,d,e),this.bezierCurveTo(d+s,e,a,l-r,a,l),this.bezierCurveTo(a,l+r,d+s,h,d,h),this.bezierCurveTo(d-s,h,t,l+r,t,l),this.closePath()},CanvasRenderingContext2D.prototype.database=function(t,e,i,o){var n=1/3,s=i,r=o*n,a=.5522848,h=s/2*a,d=r/2*a,l=t+s,u=e+r,c=t+s/2,p=e+r/2,f=e+(o-r/2),m=e+o;this.beginPath(),this.moveTo(l,p),this.bezierCurveTo(l,p+d,c+h,u,c,u),this.bezierCurveTo(c-h,u,t,p+d,t,p),this.bezierCurveTo(t,p-d,c-h,e,c,e),this.bezierCurveTo(c+h,e,l,p-d,l,p),this.lineTo(l,f),this.bezierCurveTo(l,f+d,c+h,m,c,m),this.bezierCurveTo(c-h,m,t,f+d,t,f),this.lineTo(t,p)},CanvasRenderingContext2D.prototype.arrow=function(t,e,i,o){var n=t-o*Math.cos(i),s=e-o*Math.sin(i),r=t-.9*o*Math.cos(i),a=e-.9*o*Math.sin(i),h=n+o/3*Math.cos(i+.5*Math.PI),d=s+o/3*Math.sin(i+.5*Math.PI),l=n+o/3*Math.cos(i-.5*Math.PI),u=s+o/3*Math.sin(i-.5*Math.PI);this.beginPath(),this.moveTo(t,e),this.lineTo(h,d),this.lineTo(r,a),this.lineTo(l,u),this.closePath()},CanvasRenderingContext2D.prototype.dashedLine=function(t,e,i,o,n){this.beginPath(),this.moveTo(t,e);for(var s=n.length,r=i-t,a=o-e,h=a/r,d=Math.sqrt(r*r+a*a),l=0,u=!0,c=0,p=n[0];d>=.1;)p=n[l++%s],p>d&&(p=d),c=Math.sqrt(p*p/(1+h*h)),c=0>r?-c:c,t+=c,e+=h*c,u===!0?this.lineTo(t,e):this.moveTo(t,e),d-=p,u=!u})},function(t,e){function i(t){return P=t,p()}function o(){I=0,N=P.charAt(0)}function n(){I++,N=P.charAt(I)}function s(){return P.charAt(I+1)}function r(t){return A.test(t)}function a(t,e){if(t||(t={}),e)for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i]);return t}function h(t,e,i){for(var o=e.split("."),n=t;o.length;){var s=o.shift();o.length?(n[s]||(n[s]={}),n=n[s]):n[s]=i}}function d(t,e){for(var i,o,n=null,s=[t],r=t;r.parent;)s.push(r.parent),r=r.parent;if(r.nodes)for(i=0,o=r.nodes.length;o>i;i++)if(e.id===r.nodes[i].id){n=r.nodes[i];break}for(n||(n={id:e.id},t.node&&(n.attr=a(n.attr,t.node))),i=s.length-1;i>=0;i--){var h=s[i];h.nodes||(h.nodes=[]),-1===h.nodes.indexOf(n)&&h.nodes.push(n)}e.attr&&(n.attr=a(n.attr,e.attr))}function l(t,e){if(t.edges||(t.edges=[]),t.edges.push(e),t.edge){var i=a({},t.edge);e.attr=a(i,e.attr)}}function u(t,e,i,o,n){var s={from:e,to:i,type:o};return t.edge&&(s.attr=a({},t.edge)),s.attr=a(s.attr||{},n),s}function c(){for(L=T.NULL,z="";" "===N||" "===N||"\n"===N||"\r"===N;)n();do{var t=!1;if("#"===N){for(var e=I-1;" "===P.charAt(e)||" "===P.charAt(e);)e--;if("\n"===P.charAt(e)||""===P.charAt(e)){for(;""!=N&&"\n"!=N;)n();t=!0}}if("/"===N&&"/"===s()){for(;""!=N&&"\n"!=N;)n();t=!0}if("/"===N&&"*"===s()){for(;""!=N;){if("*"===N&&"/"===s()){n(),n();break}n()}t=!0}for(;" "===N||" "===N||"\n"===N||"\r"===N;)n()}while(t);if(""===N)return void(L=T.DELIMITER);var i=N+s();if(E[i])return L=T.DELIMITER,z=i,n(),void n();if(E[N])return L=T.DELIMITER,z=N,void n();if(r(N)||"-"===N){for(z+=N,n();r(N);)z+=N,n();return"false"===z?z=!1:"true"===z?z=!0:isNaN(Number(z))||(z=Number(z)),void(L=T.IDENTIFIER)}if('"'===N){for(n();""!=N&&('"'!=N||'"'===N&&'"'===s());)z+=N,'"'===N&&n(),n();if('"'!=N)throw w('End of string " expected');return n(),void(L=T.IDENTIFIER)}for(L=T.UNKNOWN;""!=N;)z+=N,n();throw new SyntaxError('Syntax error in part "'+x(z,30)+'"')}function p(){var t={};if(o(),c(),"strict"===z&&(t.strict=!0,c()),("graph"===z||"digraph"===z)&&(t.type=z,c()),L===T.IDENTIFIER&&(t.id=z,c()),"{"!=z)throw w("Angle bracket { expected");if(c(),f(t),"}"!=z)throw w("Angle bracket } expected");if(c(),""!==z)throw w("End of file expected");return c(),delete t.node,delete t.edge,delete t.graph,t}function f(t){for(;""!==z&&"}"!=z;)m(t),";"===z&&c()}function m(t){var e=v(t);if(e)return void b(t,e);var i=g(t);if(!i){if(L!=T.IDENTIFIER)throw w("Identifier expected");var o=z;if(c(),"="===z){if(c(),L!=T.IDENTIFIER)throw w("Identifier expected");t[o]=z,c()}else y(t,o)}}function v(t){var e=null;if("subgraph"===z&&(e={},e.type="subgraph",c(),L===T.IDENTIFIER&&(e.id=z,c())),"{"===z){if(c(),e||(e={}),e.parent=t,e.node=t.node,e.edge=t.edge,e.graph=t.graph,f(e),"}"!=z)throw w("Angle bracket } expected");c(),delete e.node,delete e.edge,delete e.graph,delete e.parent,t.subgraphs||(t.subgraphs=[]),t.subgraphs.push(e)}return e}function g(t){return"node"===z?(c(),t.node=_(),"node"):"edge"===z?(c(),t.edge=_(),"edge"):"graph"===z?(c(),t.graph=_(),"graph"):null}function y(t,e){var i={id:e},o=_();o&&(i.attr=o),d(t,i),b(t,e)}function b(t,e){for(;"->"===z||"--"===z;){var i,o=z;c();var n=v(t);if(n)i=n;else{if(L!=T.IDENTIFIER)throw w("Identifier or subgraph expected");i=z,d(t,{id:i}),c()}var s=_(),r=u(t,e,i,o,s);l(t,r),e=i}}function _(){for(var t=null;"["===z;){for(c(),t={};""!==z&&"]"!=z;){if(L!=T.IDENTIFIER)throw w("Attribute name expected");var e=z;if(c(),"="!=z)throw w("Equal sign = expected");if(c(),L!=T.IDENTIFIER)throw w("Attribute value expected");var i=z;h(t,e,i),c(),","==z&&c()}if("]"!=z)throw w("Bracket ] expected");c()}return t}function w(t){return new SyntaxError(t+', got "'+x(z,30)+'" (char '+I+")")}function x(t,e){return t.length<=e?t:t.substr(0,27)+"..."}function k(t,e,i){Array.isArray(t)?t.forEach(function(t){Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}):Array.isArray(e)?e.forEach(function(e){i(t,e)}):i(t,e)}function O(t,e,i){for(var o=e.split("."),n=o.pop(),s=t,r=0;r":!0,"--":!0},P="",I=0,N="",z="",L=T.NULL,A=/[a-zA-Z_0-9.:#]/;e.parseDOT=i,e.DOTToGraph=D},function(t,e){function i(t,e){var i=[],o=[],n={edges:{inheritColor:!1},nodes:{fixed:!1,parseColor:!1}};void 0!==e&&(void 0!==e.fixed&&(n.nodes.fixed=e.fixed),void 0!==e.parseColor&&(n.nodes.parseColor=e.parseColor),void 0!==e.inheritColor&&(n.edges.inheritColor=e.inheritColor));for(var s=t.edges,r=t.nodes,a=0;a