From 8757b434de5c9f362b845e3f819a371f4efd3fc7 Mon Sep 17 00:00:00 2001 From: jos Date: Tue, 5 Apr 2016 12:03:53 +0200 Subject: [PATCH] Updated history and /dist --- HISTORY.md | 3 +- dist/vis.js | 106 ++++++++++++++++++++++++++---------------------- dist/vis.map | 2 +- dist/vis.min.js | 44 ++++++++++---------- 4 files changed, 83 insertions(+), 72 deletions(-) diff --git a/HISTORY.md b/HISTORY.md index a3ef2044..92b3463b 100644 --- a/HISTORY.md +++ b/HISTORY.md @@ -2,10 +2,11 @@ http://visjs.org -## not yet released, version 4.15.2-SNAPSHOT +## not yet released, version 4.16.0-SNAPSHOT ### Timeline +- Implemented rtl support. Thanks @yotamberk. - Fixed #1697: Timeline not drawn when used within the Angular.js directive. - Fixed #1774: Wrong initial scale when Timeline contains a single item. diff --git a/dist/vis.js b/dist/vis.js index f62b1468..134e71dc 100644 --- a/dist/vis.js +++ b/dist/vis.js @@ -5,7 +5,7 @@ * A dynamic, browser-based visualization library. * * @version 4.15.2-SNAPSHOT - * @date 2016-03-15 + * @date 2016-04-05 * * @license * Copyright (C) 2011-2016 Almende B.V, http://almende.com @@ -11006,8 +11006,18 @@ return /******/ (function(modules) { // webpackBootstrap */ Timeline.prototype.fit = function (options) { var animation = options && options.animation !== undefined ? options.animation : true; - var range = this.getItemRange(); - this.range.setRange(range.min, range.max, animation); + var range; + + var dataset = this.itemsData && this.itemsData.getDataSet(); + if (dataset.length === 1 && dataset.get()[0].end === undefined) { + // a single item -> don't fit, just show a range around the item from -4 to +3 days + range = this.getDataRange(); + this.moveTo(range.min.valueOf(), { animation: animation }); + } else { + // exactly fit the items (plus a small margin) + range = this.getItemRange(); + this.range.setRange(range.min, range.max, animation); + } }; /** @@ -15824,9 +15834,9 @@ return /******/ (function(modules) { // webpackBootstrap // http://en.wikibooks.org/wiki/Algorithm_Implementation/Strings/Levenshtein_distance#JavaScript /* Copyright (c) 2011 Andrei Mackenzie - Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. */ }, { @@ -29325,9 +29335,7 @@ return /******/ (function(modules) { // webpackBootstrap value: function create(properties) { var constructorClass = arguments.length <= 1 || arguments[1] === undefined ? _Node2.default : arguments[1]; - var idField = this.body.data.nodes._fieldId; - var id = properties[idField]; - return new constructorClass(id, properties, this.body, this.images, this.groups, this.options); + return new constructorClass(properties, this.body, this.images, this.groups, this.options); } }, { key: 'refresh', @@ -29588,9 +29596,9 @@ return /******/ (function(modules) { // webpackBootstrap /** * @class Node * A node. A node can be connected to other nodes via one or multiple edges. - * @param {string} id Id for the node * @param {object} options An object containing options for the node. All - * options are optional + * options are optional, except for the id. + * {number} id Id of the node. Required * {string} label Text label for the node * {number} x Horizontal position of the node * {number} y Vertical position of the node @@ -29612,7 +29620,7 @@ return /******/ (function(modules) { // webpackBootstrap */ var Node = function () { - function Node(id, options, body, imagelist, grouplist, globalOptions) { + function Node(options, body, imagelist, grouplist, globalOptions) { _classCallCheck(this, Node); this.options = util.bridgeObject(globalOptions); @@ -29621,11 +29629,8 @@ return /******/ (function(modules) { // webpackBootstrap this.edges = []; // all edges connected to this node - if (id === undefined) { - throw "Node must have an id"; - } - - this.id = id; + // set defaults for the options + this.id = undefined; this.imagelist = imagelist; this.grouplist = grouplist; @@ -29683,6 +29688,14 @@ return /******/ (function(modules) { // webpackBootstrap if (!options) { return; } + // basic options + if (options.id !== undefined) { + this.id = options.id; + } + + if (this.id === undefined) { + throw "Node must have an id"; + } // set these options locally // clear x and y positions @@ -32357,9 +32370,7 @@ return /******/ (function(modules) { // webpackBootstrap }, { key: 'create', value: function create(properties) { - var idField = this.body.data.edges._fieldId; - var id = properties[idField]; - return new _Edge2.default(id, properties, this.body, this.options); + return new _Edge2.default(properties, this.body, this.options); } }, { key: 'markAllEdgesAsDirty', @@ -32462,7 +32473,6 @@ return /******/ (function(modules) { // webpackBootstrap * @class Edge * * A edge connects two nodes - * @param {string} [id] Id for the edge. optional * @param {Object} properties Object with options. Must contain * At least options from and to. * Available options: from (number), @@ -32476,7 +32486,7 @@ return /******/ (function(modules) { // webpackBootstrap */ var Edge = function () { - function Edge(id, options, body, globalOptions) { + function Edge(options, body, globalOptions) { _classCallCheck(this, Edge); if (body === undefined) { @@ -32487,7 +32497,7 @@ return /******/ (function(modules) { // webpackBootstrap this.body = body; // initialize variables - this.id = id; + this.id = undefined; this.fromId = undefined; this.toId = undefined; this.selected = false; @@ -32527,6 +32537,9 @@ return /******/ (function(modules) { // webpackBootstrap Edge.parseOptions(this.options, options, true, this.globalOptions); + if (options.id !== undefined) { + this.id = options.id; + } if (options.from !== undefined) { this.fromId = options.from; } @@ -32606,14 +32619,14 @@ return /******/ (function(modules) { // webpackBootstrap if (this.options.smooth.enabled === true) { if (this.options.smooth.type === 'dynamic') { dataChanged = true; - this.edgeType = new _BezierEdgeDynamic2.default(this.id, this.options, this.body, this.labelModule); + this.edgeType = new _BezierEdgeDynamic2.default(this.options, this.body, this.labelModule); } else if (this.options.smooth.type === 'cubicBezier') { - this.edgeType = new _CubicBezierEdge2.default(this.id, this.options, this.body, this.labelModule); + this.edgeType = new _CubicBezierEdge2.default(this.options, this.body, this.labelModule); } else { - this.edgeType = new _BezierEdgeStatic2.default(this.id, this.options, this.body, this.labelModule); + this.edgeType = new _BezierEdgeStatic2.default(this.options, this.body, this.labelModule); } } else { - this.edgeType = new _StraightEdge2.default(this.id, this.options, this.body, this.labelModule); + this.edgeType = new _StraightEdge2.default(this.options, this.body, this.labelModule); } } else { // if nothing changes, we just set the options. @@ -33061,10 +33074,10 @@ return /******/ (function(modules) { // webpackBootstrap var CubicBezierEdge = function (_CubicBezierEdgeBase) { _inherits(CubicBezierEdge, _CubicBezierEdgeBase); - function CubicBezierEdge(id, options, body, labelModule) { + function CubicBezierEdge(options, body, labelModule) { _classCallCheck(this, CubicBezierEdge); - return _possibleConstructorReturn(this, Object.getPrototypeOf(CubicBezierEdge).call(this, id, options, body, labelModule)); + return _possibleConstructorReturn(this, Object.getPrototypeOf(CubicBezierEdge).call(this, options, body, labelModule)); } /** @@ -33209,10 +33222,10 @@ return /******/ (function(modules) { // webpackBootstrap var CubicBezierEdgeBase = function (_BezierEdgeBase) { _inherits(CubicBezierEdgeBase, _BezierEdgeBase); - function CubicBezierEdgeBase(id, options, body, labelModule) { + function CubicBezierEdgeBase(options, body, labelModule) { _classCallCheck(this, CubicBezierEdgeBase); - return _possibleConstructorReturn(this, Object.getPrototypeOf(CubicBezierEdgeBase).call(this, id, options, body, labelModule)); + return _possibleConstructorReturn(this, Object.getPrototypeOf(CubicBezierEdgeBase).call(this, options, body, labelModule)); } /** @@ -33295,10 +33308,10 @@ return /******/ (function(modules) { // webpackBootstrap var BezierEdgeBase = function (_EdgeBase) { _inherits(BezierEdgeBase, _EdgeBase); - function BezierEdgeBase(id, options, body, labelModule) { + function BezierEdgeBase(options, body, labelModule) { _classCallCheck(this, BezierEdgeBase); - return _possibleConstructorReturn(this, Object.getPrototypeOf(BezierEdgeBase).call(this, id, options, body, labelModule)); + return _possibleConstructorReturn(this, Object.getPrototypeOf(BezierEdgeBase).call(this, options, body, labelModule)); } /** @@ -33431,10 +33444,9 @@ return /******/ (function(modules) { // webpackBootstrap var util = __webpack_require__(1); var EdgeBase = function () { - function EdgeBase(id, options, body, labelModule) { + function EdgeBase(options, body, labelModule) { _classCallCheck(this, EdgeBase); - this.id = id; this.body = body; this.labelModule = labelModule; this.options = {}; @@ -33464,6 +33476,7 @@ return /******/ (function(modules) { // webpackBootstrap this.options = options; this.from = this.body.nodes[this.options.from]; this.to = this.body.nodes[this.options.to]; + this.id = this.options.id; } /** @@ -34037,12 +34050,12 @@ return /******/ (function(modules) { // webpackBootstrap var BezierEdgeDynamic = function (_BezierEdgeBase) { _inherits(BezierEdgeDynamic, _BezierEdgeBase); - function BezierEdgeDynamic(id, options, body, labelModule) { + function BezierEdgeDynamic(options, body, labelModule) { _classCallCheck(this, BezierEdgeDynamic); // --> this calls the setOptions below - var _this = _possibleConstructorReturn(this, Object.getPrototypeOf(BezierEdgeDynamic).call(this, id, options, body, labelModule)); + var _this = _possibleConstructorReturn(this, Object.getPrototypeOf(BezierEdgeDynamic).call(this, options, body, labelModule)); //this.via = undefined; // Here for completeness but not allowed to defined before super() is invoked. @@ -34064,6 +34077,7 @@ return /******/ (function(modules) { // webpackBootstrap // set the options and the to and from nodes this.options = options; + this.id = this.options.id; this.from = this.body.nodes[this.options.from]; this.to = this.body.nodes[this.options.to]; @@ -34124,14 +34138,12 @@ return /******/ (function(modules) { // webpackBootstrap value: function setupSupportNode() { if (this.via === undefined) { var nodeId = "edgeId:" + this.id; - var properties = { + var node = this.body.functions.createNode({ + id: nodeId, shape: 'circle', physics: true, hidden: true - }; - var idField = this.body.data.nodes._fieldId; - properties[idField] = nodeId; - var node = this.body.functions.createNode(properties); + }); this.body.nodes[nodeId] = node; this.via = node; this.via.parentEdgeId = this.id; @@ -34243,10 +34255,10 @@ return /******/ (function(modules) { // webpackBootstrap var BezierEdgeStatic = function (_BezierEdgeBase) { _inherits(BezierEdgeStatic, _BezierEdgeBase); - function BezierEdgeStatic(id, options, body, labelModule) { + function BezierEdgeStatic(options, body, labelModule) { _classCallCheck(this, BezierEdgeStatic); - return _possibleConstructorReturn(this, Object.getPrototypeOf(BezierEdgeStatic).call(this, id, options, body, labelModule)); + return _possibleConstructorReturn(this, Object.getPrototypeOf(BezierEdgeStatic).call(this, options, body, labelModule)); } /** @@ -42913,9 +42925,8 @@ return /******/ (function(modules) { // webpackBootstrap key: '_getNewTargetNode', value: function _getNewTargetNode(x, y) { var controlNodeStyle = util.deepExtend({}, this.options.controlNodeStyle); - var idField = this.body.data.nodes._fieldId; - controlNodeStyle[idField] = 'targetNode' + util.randomUUID(); + controlNodeStyle.id = 'targetNode' + util.randomUUID(); controlNodeStyle.hidden = false; controlNodeStyle.physics = false; controlNodeStyle.x = x; @@ -43481,12 +43492,11 @@ return /******/ (function(modules) { // webpackBootstrap var _this5 = this; var defaultData = { + id: util.randomUUID(), x: clickData.pointer.canvas.x, y: clickData.pointer.canvas.y, label: 'new' }; - var idField = this.body.data.nodes._fieldId; - defaultData[idField] = util.randomUUID(); if (typeof this.options.addNode === 'function') { if (this.options.addNode.length === 2) { diff --git a/dist/vis.map b/dist/vis.map index 2398f8f1..6405e82b 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","_typeof","Symbol","iterator","obj","constructor","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","prop","hasOwnProperty","fillIfDefined","a","b","allowDeletion","arguments","length","undefined","protoExtend","i","other","extend","selectiveExtend","props","Array","isArray","Error","selectiveDeepExtend","TypeError","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","warn","msg","suppressDeprecationWarnings","console","deprecate","firstTime","deprecateSimple","name","deprecations","isFunction","Function","isObject","locale_set__set","_config","_ordinalParseLenient","RegExp","_ordinalParse","source","mergeConfigs","parentConfig","childConfig","Locale","set","normalizeLocale","toLowerCase","chooseLocale","names","next","loadLocale","oldLocale","locales","globalLocale","_abbr","code","locale_locales__getSetGlobalLocale","values","data","locale_locales__getLocale","defineLocale","abbr","parentLocale","updateLocale","locale_locales__listLocales","addUnitAlias","unit","shorthand","lowerCase","aliases","normalizeUnits","units","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","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","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","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","absRound","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","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","_interopRequireDefault","__esModule","default","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","_Configurator2","_Validator","_Validator2","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","_classCallCheck","instance","Constructor","defineProperty","_createClass","defineProperties","descriptor","enumerable","configurable","writable","protoProps","staticProps","_ColorPicker","_ColorPicker2","Configurator","parentModule","defaultContainer","pixelRatio","changedOptions","allowCreation","initialized","popupCounter","showButton","moduleOptions","domElements","popupDiv","popupLimit","popupHistory","colorPicker","wrapper","_removePopup","_clean","_handleObject","_makeItem","_makeHeader","generateButton","_printOptions","onmouseover","onmouseout","optionsContainer","_push","_showPopupIfNeeded","path","_arguments","_this2","_len","_key","_ret2","div","objectLabel","select","selectedValue","selected","_update","_makeLabel","err","popupString","popupValue","oninput","itemIndex","_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","_label","error","_makeColorField","_makeDropdown","_makeRange","_constructOptions","optionsObj","pointer","getOptions","hammerUtil","ColorPicker","generated","centerCoordinates","hueCircle","initialColor","previousColor","applied","updateCallback","closeCallback","hammer","_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","_rgbaArray","rgbObj","alpha","_setColor","display","_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","drag","pinch","enable","onTouch","_moveSelector","sat","hfac","sfac","fillRect","getImageData","centerY","centerX","angle","atan2","newTop","newLeft","propagating","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","_firstTarget","events","propagatedHandler","_handled","stopped","stopPropagation","srcStop","firstTarget","elemHammer","_handlers","Manager","PropagatingHammer","o","assign","pointerType","isFirst","handler","eventType","hammers","idx","exportName","setTimeoutContext","bindFn","invokeArrayArg","arg","each","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","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","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","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","onRelease","offTouch","offRelease","disablePreventDefaultVertically","pinchRecognizer","Validator","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","_j","_j2","matrix","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","pointerDate","_pointerToDate","zoom","centerDate","hiddenDuration","hiddenDurationBefore","getHiddenDurationBefore","hiddenDurationAfter","move","_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","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","contentsOverflow","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","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","_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","removeFromDataSet","startArray","orderByStart","orderByEnd","oldVisibleItems","visibleItemsLookup","lowerBound","upperBound","searchFunction","_checkIfVisibleWithReference","initialPosByStart","_traceVisible","initialPosByEnd","initialPos","breakCondition","isVisible","EPSILON","aTime","bTime","iMax","collidingItem","jj","collision","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","unbind","_exportFunctions","_bound","keydown","keyup","_keys","fromCharCode","down","handleEvent","up","keyCode","bound","bindAll","getKey","newBindings","eventParams","warned","substring","showCurrentTime","currentTimeTimer","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","_Images2","_Groups2","_Canvas2","selectionHandler","_SelectionHandler2","interactionHandler","_InteractionHandler2","_View2","renderer","_CanvasRenderer2","_PhysicsEngine2","layoutEngine","_LayoutEngine2","clustering","_Clustering2","manipulation","_ManipulationSystem2","nodesHandler","_NodesHandler2","edgesHandler","_EdgesHandler2","_KamadaKawai2","_Images","_Groups","_NodesHandler","_EdgesHandler","_PhysicsEngine","_Clustering","_CanvasRenderer","_Canvas","_View","_InteractionHandler","_SelectionHandler","_LayoutEngine","_ManipulationSystem","_KamadaKawai","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","imageBroken","url","imageToCache","brokenUrl","imageToLoadBrokenUrlOn","onerror","_addImageToCache","Image","imageToRedrawWith","cachedImage","img","onload","_redrawWithImage","_tryloadBrokenUrl","Groups","defaultIndex","groupsArray","defaultGroups","useDefaultGroups","optionFields","groupName","groupname","_index","_Node","_Node2","_Label","_Label2","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","_nodeId2","doNotEmit","oldNodesData","newNodes","positionInitially","changedData","dataChanged","constructorClass","clearPositions","dataArray","_node","_node2","boundingBox","nodeList","nodeObj","toId","fromId","edgeList","_Box","_Box2","_Circle","_Circle2","_CircularImage","_CircularImage2","_Database","_Database2","_Diamond","_Diamond2","_Dot","_Dot2","_Ellipse","_Ellipse2","_Icon","_Icon2","_Image","_Image2","_Square","_Square2","_Star","_Star2","_Text","_Text2","_Triangle","_Triangle2","_TriangleDown","_TriangleDown2","Node","imagelist","baseSize","baseFontSize","predefinedPosition","labelModule","currentShape","groupObj","imageObj","load","distanceToBorder","sizeDiff","fontDiff","updateBoundingBox","resize","parentOptions","newOptions","parsedColor","_slicedToArray","sliceIterator","_arr","_n","_e","_s","Label","edgelabel","pointToSelf","fontOptions","yLine","isEdgeLabel","nodeOptions","labelDirty","baseline","viewFontSize","calculateLabelSize","_drawBackground","_drawText","lineMargin","fontSize","_getColor2","_getColor","_getColor3","fontColor","_setAlignment2","_setAlignment","_setAlignment3","lineCount","strokeText","_processLabel","measureText","newOptionsArray","_possibleConstructorReturn","ReferenceError","_inherits","subClass","superClass","setPrototypeOf","__proto__","_NodeBase2","_NodeBase3","Box","_NodeBase","getPrototypeOf","textSize","getTextSize","selectionLineWidth","roundRect","enableShadow","disableShadow","save","enableBorderDashes","disableBorderDashes","restore","NodeBase","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","setLineDash","dashes","_CircleImageBase2","_CircleImageBase3","Circle","_CircleImageBase","diameter","_drawRawCircle","CircleImageBase","labelOffset","imageLoaded","ratio","neutralborderWidth","globalAlpha","can2","ctx2","drawImage","iterations","labelDimensions","CircularImage","_swapToImageResizeWhenImageLoaded","_resizeImage","clip","_drawImageAtPosition","_drawImageLabel","Database","database","_distanceToBorder","_ShapeBase2","_ShapeBase3","Diamond","_ShapeBase","_resizeShape","_drawShape","ShapeBase","sizeMultiplier","Dot","Ellipse","ellipse","Icon","_icon","iconTextSpacing","Square","Star","Text","Triangle","TriangleDown","_Edge","_Edge2","EdgesHandler","edgesListeners","arrows","scaleFactor","arrowStrikethrough","hoverWidth","selectionWidth","selfReferenceSize","smooth","forceDirection","roundness","emitChange","edgeData","edgeOptions","reconnectEdges","markAllEdgesAsDirty","updateEdgeType","_edgeId","oldEdgesData","edgesData","oldEdge","disconnect","showInternalIds","connect","cleanup","edgeType","colorDirty","_CubicBezierEdge","_CubicBezierEdge2","_BezierEdgeDynamic","_BezierEdgeDynamic2","_BezierEdgeStatic","_BezierEdgeStatic2","_StraightEdge","_StraightEdge2","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","_CubicBezierEdgeBase2","_CubicBezierEdgeBase3","CubicBezierEdge","_CubicBezierEdgeBase","viaNodes","via1","via2","bezierCurveTo","x1","y1","x2","y2","_getViaCoordinates","nearNode","_findBorderPositionBezier","x3","y3","_ref","_ref2","_getDistanceToBezierEdge","_ref3","_ref4","vec","_BezierEdgeBase2","_BezierEdgeBase3","CubicBezierEdgeBase","_BezierEdgeBase","minDistance","lastX","lastY","_getDistanceToLine","_EdgeBase2","_EdgeBase3","BezierEdgeBase","_EdgeBase","distanceToPoint","difference","via","EdgeBase","getColor","getLineWidth","_drawDashedLine","_drawLine","_line","_getCircleData2","_getCircleData","_getCircleData3","_circle","pattern","lineDashOffset","_getCircleData4","_getCircleData5","dashedLine","_getCircleData6","_getCircleData7","_x","_y","_radius","_findBorderPosition","_findBorderPositionCircle","_getCircleData8","_getCircleData9","colorOptions","grd","createLinearGradient","fromColor","toColor","addColorStop","_getDistanceToEdge","_getCircleData10","_getCircleData11","px","py","something","u","arrowPoint","guideOffset","findBorderPosition","guidePos","_getCircleData12","_getCircleData13","xi","yi","arrowCore","arrow","BezierEdgeDynamic","_boundFunction","positionBezierNode","physicsChange","setupSupportNode","parentEdgeId","quadraticCurveTo","BezierEdgeStatic","xVia","yVia","pi","originalAngle","myAngle","_pi","_originalAngle","_myAngle","StraightEdge","edgeSegmentLength","toBorderDist","toBorderPoint","borderPos","_BarnesHutSolver","_BarnesHutSolver2","_RepulsionSolver","_RepulsionSolver2","_HierarchicalRepulsionSolver","_HierarchicalRepulsionSolver2","_SpringSolver","_SpringSolver2","_HierarchicalSpringSolver","_HierarchicalSpringSolver2","_CentralGravitySolver","_CentralGravitySolver2","_FA2BasedRepulsionSolver","_FA2BasedRepulsionSolver2","_FA2BasedCentralGravitySolver","_FA2BasedCentralGravitySolver2","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","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","_i2","totalFx","totalFy","_i3","correctionFx","correctionFy","_i4","_nodeId3","CentralGravitySolver","_BarnesHutSolver3","ForceAtlas2BasedRepulsionSolver","degree","_CentralGravitySolver3","ForceAtlas2BasedCentralGravitySolver","_NetworkUtil","_NetworkUtil2","_Cluster","_Cluster2","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","_clonedOptions","clusterId","_getClusterPosition","clusterNode","containedNodes","containedEdges","_createClusterEdges","originalOptions","clusterNodeId","releaseFunction","clusterPosition","newPositions","_containedNode","_nodeId4","_containedNode2","_nodeId5","_containedNode3","edgesToBeDeleted","otherCluster","transferEdge","replacedEdge","_restoreEdge","nodesArray","reverse","average","averageSquared","hubCounter","largestHub","variance","standardDeviation","hubThreshold","NetworkUtil","allNodes","specificNodes","amountOfConnections","_Node3","Cluster","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","_NavigationHandler","_NavigationHandler2","_Popup","_Popup2","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","nodesChanged","edgesChanged","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","parentCentralization","sortMethod","setupHierarchicalLayout","layoutNetwork","prevHierarchicalState","adaptAllOptionsForHierarchicalLayout","MAX_LEVELS","clusterThreshold","startLength","before","clusterBridges","after","_declusterAll","info","kamadaKawai","_shiftToCenter","getRangeCore","clustersPresent","definedLevel","definedPositions","undefinedLevel","hierarchicalLevels","lastNodeOnLevel","hierarchicalChildrenReference","hierarchicalParentReference","hierarchicalTrees","treeIndex","distributionOrdering","distributionIndex","distributionOrderingPresence","_determineLevelsByHubsize","_determineLevelsDirected","_determineLevelsCustomCallback","distribution","_getDistribution","_generateMap","_placeNodesByHierarchy","_condenseHierarchy","stillShifting","branches","shiftTrees","treeSizes","getTreeSizes","shiftTree","_getPositionForHierarchy","_setPositionForHierarchy","getTreeSize","treeWidths","getBranchNodes","getBranchBoundary","branchMap","maxLevel","minSpace","maxSpace","branchNode","_getSpaceAroundNode2","_getSpaceAroundNode","_getSpaceAroundNode3","minSpaceNode","maxSpaceNode","getMaxLevel","getCollisionLevel","maxLevel1","maxLevel2","hasSameParent","parents1","parents2","shiftElementsCloser","levels","centerParents","levelNodes","branchShiftCallback","centerParent","diffAbs","branchNodes1","branchNodes2","_getBranchBoundary","_getBranchBoundary2","max1","_getBranchBoundary3","_getBranchBoundary4","min2","minSpace2","diffBranch","_shiftBlock","_centerParent","minimizeEdgeLength","allEdges","nodeLevel","C2","referenceNodes","aboveEdges","otherNode","getFx","getDFx","getGuess","guess","guessMap","dfx","moveBranch","branchNodes","_getBranchBoundary5","_getBranchBoundary6","minSpaceBranch","maxSpaceBranch","branchOffset","_getSpaceAroundNode4","_getSpaceAroundNode5","newPosition","minimizeEdgeLengthBottomUp","shiftBranchesCloserBottomUp","centerAllParents","centerAllParentsBottomUp","useMap","prevNode","prevPos","nextNode","nextPos","parents","parentId","minPos","maxPos","_i5","_getSpaceAroundNode6","_getSpaceAroundNode7","positionedNodes","nodeArray","_indexArrayToNodes","_sortNodeArray","handledNodeCount","_validataPositionAndContinue","parentLevel","_i6","childNodeLevel","_i7","previousPos","sharedParent","_findCommonParent","withChild","_placeBranchNodes","hubSize","levelDownstream","nodeA","nodeB","_crawlNetwork","minLevel","customCallback","levelByDirection","levelA","_setMinLevelToZero","fillInRelations","_this7","startingNodeId","crawler","tree","childA","childB","_this8","iterateParents","findParent","foundParent","doNotUpdate","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","_FloydWarshall","_FloydWarshall2","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","_getHighestEnergyNode3","_moveNode","_getEnergy2","_getEnergy","_getEnergy3","maxEnergyNodeId","dE_dx_max","dE_dy_max","nodeIdx","_getEnergy4","_getEnergy5","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","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,IAC5BoD,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,GAI9B,GAAIgE,GAA4B,kBAAXC,SAAoD,gBAApBA,QAAOC,SAAwB,SAAUC,GAAO,aAAcA,IAAS,SAAUA,GAAO,MAAOA,IAAyB,kBAAXF,SAAyBE,EAAIC,cAAgBH,OAAS,eAAkBE,IAOtON,EAAS7D,EAAoB,GAC7BqE,EAAOrE,EAAoB,EAO/BN,GAAQ4E,SAAW,SAAUC,GAC3B,MAAOA,aAAkBC,SAA2B,gBAAVD,IAO5C7E,EAAQ+E,mBAAqB,SAAUC,GACrC,GAAIA,EACF,KAAOA,EAAUC,mBAAoB,GACnCjF,EAAQ+E,mBAAmBC,EAAUE,YACrCF,EAAUG,YAAYH,EAAUE,aActClF,EAAQoF,UAAY,SAAUC,EAAKC,EAAKC,EAAOC,GAC7C,GAAIF,GAAOD,EACT,MAAO,EAEP,IAAII,GAAQ,GAAKH,EAAMD,EACvB,OAAOK,MAAKJ,IAAI,GAAIE,EAAQH,GAAOI,IASvCzF,EAAQ2F,SAAW,SAAUd,GAC3B,MAAOA,aAAkBe,SAA2B,gBAAVf,IAQ5C7E,EAAQ6F,OAAS,SAAUhB,GACzB,GAAIA,YAAkBiB,MACpB,OAAO,CACF,IAAI9F,EAAQ2F,SAASd,GAAS,CAEnC,GAAIkB,GAAQC,EAAaC,KAAKpB,EAC9B,IAAIkB,EACF,OAAO,CACF,KAAKG,MAAMJ,KAAKK,MAAMtB,IAC3B,OAAO,EAIX,OAAO,GAQT7E,EAAQoG,WAAa,WACnB,MAAOzB,GAAK0B,MAQdrG,EAAQsG,cAAgB,SAAU7B,EAAKe,GACrC,IAAK,GAAIe,KAAQ9B,GACXA,EAAI+B,eAAeD,IACM,WAAvBjC,EAAQG,EAAI8B,MACd9B,EAAI8B,GAAQf,IAYpBxF,EAAQyG,cAAgB,SAAUC,EAAGC,GACnC,GAAIC,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAE5F,KAAK,GAAIN,KAAQG,GACCK,SAAZJ,EAAEJ,KACqB,WAArBjC,EAAQqC,EAAEJ,IACKQ,SAAZJ,EAAEJ,IAAmC,OAAZI,EAAEJ,IAA+BQ,SAAZL,EAAEH,IAAuBK,KAAkB,EAG5FF,EAAEH,GAAQI,EAAEJ,SAFLG,GAAEH,GAKc,WAArBjC,EAAQoC,EAAEH,KACZvG,EAAQyG,cAAcC,EAAEH,GAAOI,EAAEJ,GAAOK,KAclD5G,EAAQgH,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,IAUT1G,EAAQmH,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,IAWT1G,EAAQoH,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,GAEbnG,EAAI,EAAGA,EAAIuG,EAAMP,OAAQhG,IAAK,CACrC,GAAIyF,GAAOc,EAAMvG,EACboG,GAAMV,eAAeD,KACvBG,EAAEH,GAAQW,EAAMX,IAItB,MAAOG,IAWT1G,EAAQyH,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,GACbnG,EAAI,EAAGA,EAAIuG,EAAMP,OAAQhG,IAAK,CACrC,GAAIyF,GAAOc,EAAMvG,EACjB,IAAIoG,EAAMV,eAAeD,GACvB,GAAII,EAAEJ,IAASI,EAAEJ,GAAM7B,cAAgBiD,OACrBZ,SAAZL,EAAEH,KACJG,EAAEH,OAEAG,EAAEH,GAAM7B,cAAgBiD,OAC1B3H,EAAQ4H,WAAWlB,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,IAWT1G,EAAQ6H,uBAAyB,SAAUR,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,EAAMS,QAAQvB,GAChB,GAAII,EAAEJ,IAASI,EAAEJ,GAAM7B,cAAgBiD,OACrBZ,SAAZL,EAAEH,KACJG,EAAEH,OAEAG,EAAEH,GAAM7B,cAAgBiD,OAC1B3H,EAAQ4H,WAAWlB,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,GAAMwB,KAAKpB,EAAEJ,GAAMU,QAGP,QAAZN,EAAEJ,IAA8BQ,SAAZL,EAAEH,IAAuBK,KAAkB,QAC1DF,GAAEH,GAETG,EAAEH,GAAQI,EAAEJ,EAMtB,OAAOG,IAYT1G,EAAQ4H,WAAa,SAAUlB,EAAGC,EAAGK,EAAaJ,GAChD,IAAK,GAAIL,KAAQI,GACf,GAAIA,EAAEH,eAAeD,IAASS,KAAgB,EAC5C,GAAIL,EAAEJ,IAASI,EAAEJ,GAAM7B,cAAgBiD,OACrBZ,SAAZL,EAAEH,KACJG,EAAEH,OAEAG,EAAEH,GAAM7B,cAAgBiD,OAC1B3H,EAAQ4H,WAAWlB,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,GAAMwB,KAAKpB,EAAEJ,GAAMU,QAGP,QAAZN,EAAEJ,IAA8BQ,SAAZL,EAAEH,IAAuBK,KAAkB,QAC1DF,GAAEH,GAETG,EAAEH,GAAQI,EAAEJ,EAKpB,OAAOG,IAUT1G,EAAQgI,WAAa,SAAUtB,EAAGC,GAChC,GAAID,EAAEI,QAAUH,EAAEG,OAAQ,OAAO,CAEjC,KAAK,GAAIG,GAAI,EAAGgB,EAAMvB,EAAEI,OAAYmB,EAAJhB,EAASA,IACvC,GAAIP,EAAEO,IAAMN,EAAEM,GAAI,OAAO,CAG3B,QAAO,GAYTjH,EAAQkI,QAAU,SAAUrD,EAAQsD,GAClC,GAAIpC,EAEJ,IAAegB,SAAXlC,EAAJ,CAGA,GAAe,OAAXA,EACF,MAAO,KAGT,KAAKsD,EACH,MAAOtD,EAET,IAAsB,gBAATsD,MAAwBA,YAAgBvC,SACnD,KAAM,IAAI4B,OAAM,wBAIlB,QAAQW,GACN,IAAK,UACL,IAAK,UACH,MAAOC,SAAQvD,EAEjB,KAAK,SACL,IAAK,SACH,MAAOC,QAAOD,EAAOwD,UAEvB,KAAK,SACL,IAAK,SACH,MAAOzC,QAAOf,EAEhB,KAAK,OACH,GAAI7E,EAAQ4E,SAASC,GACnB,MAAO,IAAIiB,MAAKjB,EAElB,IAAIA,YAAkBiB,MACpB,MAAO,IAAIA,MAAKjB,EAAOwD,UAClB,IAAIlE,EAAOmE,SAASzD,GACzB,MAAO,IAAIiB,MAAKjB,EAAOwD,UAEzB,IAAIrI,EAAQ2F,SAASd,GAEnB,MADAkB,GAAQC,EAAaC,KAAKpB,GACtBkB,EAEK,GAAID,MAAKhB,OAAOiB,EAAM,KAEpB5B,EAAOU,GAAQ0D,QAGxB,MAAM,IAAIf,OAAM,iCAAmCxH,EAAQwI,QAAQ3D,GAAU,gBAGnF,KAAK,SACH,GAAI7E,EAAQ4E,SAASC,GACnB,MAAOV,GAAOU,EAEhB,IAAIA,YAAkBiB,MACpB,MAAO3B,GAAOU,EAAOwD,UAChB,IAAIlE,EAAOmE,SAASzD,GACzB,MAAOV,GAAOU,EAEhB,IAAI7E,EAAQ2F,SAASd,GAEnB,MADAkB,GAAQC,EAAaC,KAAKpB,GAGjBV,EAFL4B,EAEYjB,OAAOiB,EAAM,IAEXlB,EAGhB,MAAM,IAAI2C,OAAM,iCAAmCxH,EAAQwI,QAAQ3D,GAAU,gBAGnF,KAAK,UACH,GAAI7E,EAAQ4E,SAASC,GACnB,MAAO,IAAIiB,MAAKjB,EACX,IAAIA,YAAkBiB,MAC3B,MAAOjB,GAAO4D,aACT,IAAItE,EAAOmE,SAASzD,GACzB,MAAOA,GAAO0D,SAASE,aAClB,IAAIzI,EAAQ2F,SAASd,GAE1B,MADAkB,GAAQC,EAAaC,KAAKpB,GACtBkB,EAEK,GAAID,MAAKhB,OAAOiB,EAAM,KAAK0C,cAEzB,GAAI3C,MAAKjB,GAAQ4D,aAG1B,MAAM,IAAIjB,OAAM,iCAAmCxH,EAAQwI,QAAQ3D,GAAU,mBAGnF,KAAK,UACH,GAAI7E,EAAQ4E,SAASC,GACnB,MAAO,SAAWA,EAAS,IACtB,IAAIA,YAAkBiB,MAC3B,MAAO,SAAWjB,EAAOwD,UAAY,IAChC,IAAIrI,EAAQ2F,SAASd,GAAS,CACnCkB,EAAQC,EAAaC,KAAKpB,EAC1B,IAAIW,EAOJ,OAJEA,GAFEO,EAEM,GAAID,MAAKhB,OAAOiB,EAAM,KAAKsC,UAEzB,GAAIvC,MAAKjB,GAAQwD,UAEtB,SAAW7C,EAAQ,KAE1B,KAAM,IAAIgC,OAAM,iCAAmCxH,EAAQwI,QAAQ3D,GAAU,mBAGjF,SACE,KAAM,IAAI2C,OAAM,iBAAmBW,EAAO,OAOhD,IAAInC,GAAe,qBAOnBhG,GAAQwI,QAAU,SAAU3D,GAC1B,GAAIsD,GAAyB,mBAAXtD,GAAyB,YAAcP,EAAQO,EAEjE,OAAY,UAARsD,EACa,OAAXtD,EACK,OAELA,YAAkBuD,SACb,UAELvD,YAAkBC,QACb,SAELD,YAAkBe,QACb,SAEL0B,MAAMC,QAAQ1C,GACT,QAELA,YAAkBiB,MACb,OAEF,SACU,UAARqC,EACF,SACU,WAARA,EACF,UACU,UAARA,EACF,SACWpB,SAAToB,EACF,YAGFA,GAUTnI,EAAQ0I,mBAAqB,SAAUC,EAAKC,GAE1C,IAAK,GADDC,MACK5B,EAAI,EAAGA,EAAI0B,EAAI7B,OAAQG,IAC9B4B,EAAOd,KAAKY,EAAI1B,GAGlB,OADA4B,GAAOd,KAAKa,GACLC,GAUT7I,EAAQ8I,UAAY,SAAUH,GAE5B,IAAK,GADDE,MACK5B,EAAI,EAAGA,EAAI0B,EAAI7B,OAAQG,IAC9B4B,EAAOd,KAAKY,EAAI1B,GAElB,OAAO4B,IAST7I,EAAQ+I,gBAAkB,SAAUC,GAClC,MAAOA,GAAKC,wBAAwBC,MAStClJ,EAAQmJ,eAAiB,SAAUH,GACjC,MAAOA,GAAKC,wBAAwBG,KAQtCpJ,EAAQqJ,aAAe,SAAUL,EAAMM,GACrC,GAAIC,GAAUP,EAAKM,UAAUE,MAAM,IACD,KAA9BD,EAAQzB,QAAQwB,KAClBC,EAAQxB,KAAKuB,GACbN,EAAKM,UAAYC,EAAQE,KAAK,OASlCzJ,EAAQ0J,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,OAalCzJ,EAAQ6J,QAAU,SAAUhF,EAAQiF,GAClC,GAAI7C,GAAGgB,CACP,IAAIX,MAAMC,QAAQ1C,GAEhB,IAAKoC,EAAI,EAAGgB,EAAMpD,EAAOiC,OAAYmB,EAAJhB,EAASA,IACxC6C,EAASjF,EAAOoC,GAAIA,EAAGpC,OAIzB,KAAKoC,IAAKpC,GACJA,EAAO2B,eAAeS,IACxB6C,EAASjF,EAAOoC,GAAIA,EAAGpC,IAY/B7E,EAAQ+J,QAAU,SAAUlF,GAC1B,GAAImF,KAEJ,KAAK,GAAIzD,KAAQ1B,GACXA,EAAO2B,eAAeD,IAAOyD,EAAMjC,KAAKlD,EAAO0B,GAGrD,OAAOyD,IAUThK,EAAQiK,eAAiB,SAAUpF,EAAQqF,EAAK1E,GAC9C,MAAIX,GAAOqF,KAAS1E,GAClBX,EAAOqF,GAAO1E,GACP,IAEA,GAUXxF,EAAQmK,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,MAeTrK,EAAQ0K,iBAAmB,SAAUC,EAASC,EAAQC,EAAUC,GAC1DH,EAAQD,kBACS3D,SAAf+D,IAA0BA,GAAa,GAE5B,eAAXF,GAA2BG,UAAUC,UAAUlD,QAAQ,YAAc,IACvE8C,EAAS,kBAGXD,EAAQD,iBAAiBE,EAAQC,EAAUC,IAE3CH,EAAQM,YAAY,KAAOL,EAAQC,IAWvC7K,EAAQkL,oBAAsB,SAAUP,EAASC,EAAQC,EAAUC,GAC7DH,EAAQO,qBAESnE,SAAf+D,IAA0BA,GAAa,GAE5B,eAAXF,GAA2BG,UAAUC,UAAUlD,QAAQ,YAAc,IACvE8C,EAAS,kBAGXD,EAAQO,oBAAoBN,EAAQC,EAAUC,IAG9CH,EAAQQ,YAAY,KAAOP,EAAQC,IAOvC7K,EAAQoL,eAAiB,SAAUC,GAC5BA,IAAOA,EAAQC,OAAOD,OAEvBA,EAAMD,eACRC,EAAMD,iBAEJC,EAAME,aAAc,GAS1BvL,EAAQwL,UAAY,SAAUH,GAEvBA,IACHA,EAAQC,OAAOD,MAGjB,IAAII,EAaJ,OAXIJ,GAAMI,OACRA,EAASJ,EAAMI,OACNJ,EAAMK,aACfD,EAASJ,EAAMK,YAGM3E,QAAnB0E,EAAOE,UAA4C,GAAnBF,EAAOE,WAEzCF,EAASA,EAAOG,YAGXH,GAQTzL,EAAQ6L,UAAY,SAAUlB,EAASmB,GAGrC,IAFA,GAAIC,GAAIpB,EAEDoB,GAAG,CACR,GAAIA,IAAMD,EACR,OAAO,CAETC,GAAIA,EAAEH,WAGR,OAAO,GAGT5L,EAAQgM,UAQRhM,EAAQgM,OAAOC,UAAY,SAAUzG,EAAO0G,GAK1C,MAJoB,kBAAT1G,KACTA,EAAQA,KAGG,MAATA,EACc,GAATA,EAGF0G,GAAgB,MASzBlM,EAAQgM,OAAOG,SAAW,SAAU3G,EAAO0G,GAKzC,MAJoB,kBAAT1G,KACTA,EAAQA,KAGG,MAATA,EACKV,OAAOU,IAAU0G,GAAgB,KAGnCA,GAAgB,MASzBlM,EAAQgM,OAAOI,SAAW,SAAU5G,EAAO0G,GAKzC,MAJoB,kBAAT1G,KACTA,EAAQA,KAGG,MAATA,EACKI,OAAOJ,GAGT0G,GAAgB,MASzBlM,EAAQgM,OAAOK,OAAS,SAAU7G,EAAO0G,GAKvC,MAJoB,kBAAT1G,KACTA,EAAQA,KAGNxF,EAAQ2F,SAASH,GACZA,EACExF,EAAQ4E,SAASY,GACnBA,EAAQ,KAER0G,GAAgB,MAU3BlM,EAAQgM,OAAOM,UAAY,SAAU9G,EAAO0G,GAK1C,MAJoB,kBAAT1G,KACTA,EAAQA,KAGHA,GAAS0G,GAAgB,MASlClM,EAAQuM,SAAW,SAAUC,GAE3B,GAAIC,GAAiB,kCACrBD,GAAMA,EAAIE,QAAQD,EAAgB,SAAU7L,EAAG+L,EAAGC,EAAGjG,GACnD,MAAOgG,GAAIA,EAAIC,EAAIA,EAAIjG,EAAIA,GAE7B,IAAIkG,GAAS,4CAA4C5G,KAAKuG,EAC9D,OAAOK,IACLF,EAAGG,SAASD,EAAO,GAAI,IACvBD,EAAGE,SAASD,EAAO,GAAI,IACvBlG,EAAGmG,SAASD,EAAO,GAAI,KACrB,MASN7M,EAAQ+M,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,GAAMlN,EAAQuM,SAASS,EAC3B,OAAW,OAAPE,EACKF,EAEA,QAAUE,EAAIP,EAAI,IAAMO,EAAIN,EAAI,IAAMM,EAAIvG,EAAI,IAAMsG,EAAU,KAa3EjN,EAAQoN,SAAW,SAAUC,EAAKC,EAAOC,GACvC,MAAO,MAAQ,GAAK,KAAOF,GAAO,KAAOC,GAAS,GAAKC,GAAMC,SAAS,IAAIC,MAAM,IASlFzN,EAAQ0N,WAAa,SAAUV,GAC7B,GAAInM,EACJ,IAAIb,EAAQ2F,SAASqH,MAAW,EAAM,CACpC,GAAIhN,EAAQ2N,WAAWX,MAAW,EAAM,CACtC,GAAIE,GAAMF,EAAMG,OAAO,GAAGA,OAAO,EAAGH,EAAMlG,OAAS,GAAG0C,MAAM,KAAKoE,IAAI,SAAUpI,GAC7E,MAAOsH,UAAStH,IAElBwH,GAAQhN,EAAQoN,SAASF,EAAI,GAAIA,EAAI,GAAIA,EAAI,IAE/C,GAAIlN,EAAQ6N,WAAWb,MAAW,EAAM,CACtC,GAAIc,GAAM9N,EAAQ+N,SAASf,GACvBgB,GAAoBC,EAAGH,EAAIG,EAAGC,EAAW,GAARJ,EAAII,EAASC,EAAGzI,KAAKL,IAAI,EAAW,KAARyI,EAAIK,IACjEC,GAAmBH,EAAGH,EAAIG,EAAGC,EAAGxI,KAAKL,IAAI,EAAW,KAARyI,EAAII,GAAWC,EAAW,GAARL,EAAIK,GAClEE,EAAiBrO,EAAQsO,SAASF,EAAeH,EAAGG,EAAeF,EAAGE,EAAeD,GACrFI,EAAkBvO,EAAQsO,SAASN,EAAgBC,EAAGD,EAAgBE,EAAGF,EAAgBG,EAC7FtN,IACE2N,WAAYxB,EACZyB,OAAQJ,EACRK,WACEF,WAAYD,EACZE,OAAQJ,GAEVM,OACEH,WAAYD,EACZE,OAAQJ,QAIZxN,IACE2N,WAAYxB,EACZyB,OAAQzB,EACR0B,WACEF,WAAYxB,EACZyB,OAAQzB,GAEV2B,OACEH,WAAYxB,EACZyB,OAAQzB,QAKdnM,MACAA,EAAE2N,WAAaxB,EAAMwB,YAAczH,OACnClG,EAAE4N,OAASzB,EAAMyB,QAAU1H,OAEvB/G,EAAQ2F,SAASqH,EAAM0B,WACzB7N,EAAE6N,WACAD,OAAQzB,EAAM0B,UACdF,WAAYxB,EAAM0B,YAGpB7N,EAAE6N,aACF7N,EAAE6N,UAAUF,WAAaxB,EAAM0B,WAAa1B,EAAM0B,UAAUF,YAAczH,OAC1ElG,EAAE6N,UAAUD,OAASzB,EAAM0B,WAAa1B,EAAM0B,UAAUD,QAAU1H,QAGhE/G,EAAQ2F,SAASqH,EAAM2B,OACzB9N,EAAE8N,OACAF,OAAQzB,EAAM2B,MACdH,WAAYxB,EAAM2B,QAGpB9N,EAAE8N,SACF9N,EAAE8N,MAAMH,WAAaxB,EAAM2B,OAAS3B,EAAM2B,MAAMH,YAAczH,OAC9DlG,EAAE8N,MAAMF,OAASzB,EAAM2B,OAAS3B,EAAM2B,MAAMF,QAAU1H,OAI1D,OAAOlG,IAYTb,EAAQ4O,SAAW,SAAUvB,EAAKC,EAAOC,GACvCF,GAAY,IAAIC,GAAgB,IAAIC,GAAc,GAClD,IAAIsB,GAASnJ,KAAKL,IAAIgI,EAAK3H,KAAKL,IAAIiI,EAAOC,IACvCuB,EAASpJ,KAAKJ,IAAI+H,EAAK3H,KAAKJ,IAAIgI,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,EACjCtJ,EAAQsJ,CACZ,QAASb,EAAGe,EAAKd,EAAGe,EAAYd,EAAG3I,GAGrC,IAAI0J,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,OACf9J,EAAQ+J,EAAM,GAAGD,MACrBF,GAAOlF,GAAO1E,KAIX4J,GAIT3F,KAAM,SAAc2F,GAClB,MAAOzH,QAAO6H,KAAKJ,GAAQxB,IAAI,SAAU1D,GACvC,MAAOA,GAAM,KAAOkF,EAAOlF,KAC1BT,KAAK,OASZzJ,GAAQyP,WAAa,SAAU9E,EAASwE,GACtC,GAAIO,GAAgBR,EAAQ1F,MAAMmB,EAAQ0E,MAAMF,SAC5CQ,EAAYT,EAAQ1F,MAAM2F,GAC1BC,EAASpP,EAAQmH,OAAOuI,EAAeC,EAE3ChF,GAAQ0E,MAAMF,QAAUD,EAAQzF,KAAK2F,IAQvCpP,EAAQ4P,cAAgB,SAAUjF,EAASwE,GACzC,GAAIC,GAASF,EAAQ1F,MAAMmB,EAAQ0E,MAAMF,SACrCU,EAAeX,EAAQ1F,MAAM2F,EAEjC,KAAK,GAAIjF,KAAO2F,GACVA,EAAarJ,eAAe0D,UACvBkF,GAAOlF,EAIlBS,GAAQ0E,MAAMF,QAAUD,EAAQzF,KAAK2F,IAWvCpP,EAAQ8P,SAAW,SAAU7B,EAAGC,EAAGC,GACjC,GAAIxB,GAAGC,EAAGjG,EAENM,EAAIvB,KAAKqK,MAAU,EAAJ9B,GACf+B,EAAQ,EAAJ/B,EAAQhH,EACZnG,EAAIqN,GAAK,EAAID,GACb+B,EAAI9B,GAAK,EAAI6B,EAAI9B,GACjBgC,EAAI/B,GAAK,GAAK,EAAI6B,GAAK9B,EAE3B,QAAQjH,EAAI,GACV,IAAK,GACH0F,EAAIwB,EAAGvB,EAAIsD,EAAGvJ,EAAI7F,CAAE,MACtB,KAAK,GACH6L,EAAIsD,EAAGrD,EAAIuB,EAAGxH,EAAI7F,CAAE,MACtB,KAAK,GACH6L,EAAI7L,EAAG8L,EAAIuB,EAAGxH,EAAIuJ,CAAE,MACtB,KAAK,GACHvD,EAAI7L,EAAG8L,EAAIqD,EAAGtJ,EAAIwH,CAAE,MACtB,KAAK,GACHxB,EAAIuD,EAAGtD,EAAI9L,EAAG6F,EAAIwH,CAAE,MACtB,KAAK,GACHxB,EAAIwB,EAAGvB,EAAI9L,EAAG6F,EAAIsJ,EAGtB,OAAStD,EAAGjH,KAAKqK,MAAU,IAAJpD,GAAUC,EAAGlH,KAAKqK,MAAU,IAAJnD,GAAUjG,EAAGjB,KAAKqK,MAAU,IAAJpJ,KAGzE3G,EAAQsO,SAAW,SAAUL,EAAGC,EAAGC,GACjC,GAAIjB,GAAMlN,EAAQ8P,SAAS7B,EAAGC,EAAGC,EACjC,OAAOnO,GAAQoN,SAASF,EAAIP,EAAGO,EAAIN,EAAGM,EAAIvG,IAG5C3G,EAAQ+N,SAAW,SAAUvB,GAC3B,GAAIU,GAAMlN,EAAQuM,SAASC,EAC3B,OAAOxM,GAAQ4O,SAAS1B,EAAIP,EAAGO,EAAIN,EAAGM,EAAIvG,IAG5C3G,EAAQ6N,WAAa,SAAUrB,GAC7B,GAAI2D,GAAO,qCAAqCC,KAAK5D,EACrD,OAAO2D,IAGTnQ,EAAQ2N,WAAa,SAAUT,GAC7BA,EAAMA,EAAIR,QAAQ,IAAK,GACvB,IAAIyD,GAAO,wCAAwCC,KAAKlD,EACxD,OAAOiD,IAETnQ,EAAQqQ,YAAc,SAAUC,GAC9BA,EAAOA,EAAK5D,QAAQ,IAAK,GACzB,IAAIyD,GAAO,kDAAkDC,KAAKE,EAClE,OAAOH,IAUTnQ,EAAQuQ,sBAAwB,SAAUC,EAAQC,GAChD,GAAyF,WAAzD,mBAApBA,GAAkC,YAAcnM,EAAQmM,IAA+B,CAEjG,IAAK,GADDC,GAAW/I,OAAOgJ,OAAOF,GACpBxJ,EAAI,EAAGA,EAAIuJ,EAAO1J,OAAQG,IAC7BwJ,EAAgBjK,eAAegK,EAAOvJ,KACG,UAAvC3C,EAAQmM,EAAgBD,EAAOvJ,OACjCyJ,EAASF,EAAOvJ,IAAMjH,EAAQ4Q,aAAaH,EAAgBD,EAAOvJ,KAIxE,OAAOyJ,GAEP,MAAO,OAWX1Q,EAAQ4Q,aAAe,SAAUH,GAC/B,GAAyF,WAAzD,mBAApBA,GAAkC,YAAcnM,EAAQmM,IAA+B,CACjG,GAAIC,GAAW/I,OAAOgJ,OAAOF,EAC7B,KAAK,GAAIxJ,KAAKwJ,GACRA,EAAgBjK,eAAeS,IACE,UAA/B3C,EAAQmM,EAAgBxJ,MAC1ByJ,EAASzJ,GAAKjH,EAAQ4Q,aAAaH,EAAgBxJ,IAIzD,OAAOyJ,GAEP,MAAO,OAWX1Q,EAAQ6Q,WAAa,SAAUnK,EAAGoK,GAChC,IAAK,GAAI7J,GAAI,EAAGA,EAAIP,EAAEI,OAAQG,IAAK,CAEjC,IAAK,GADD8J,GAAIrK,EAAEO,GACD+J,EAAI/J,EAAG+J,EAAI,GAAKF,EAAQC,EAAGrK,EAAEsK,EAAI,IAAM,EAAGA,IACjDtK,EAAEsK,GAAKtK,EAAEsK,EAAI,EAEftK,GAAEsK,GAAKD,EAET,MAAOrK,IAWT1G,EAAQiR,aAAe,SAAUC,EAAajN,EAAS+H,GACrD,GACImF,IADgBtK,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GACxEA,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAEzF,IAAwB,OAApB5C,EAAQ+H,GACVkF,EAAYlF,GAAUrE,OAAOgJ,OAAOQ,EAAcnF,QAElD,IAAwBjF,SAApB9C,EAAQ+H,GACV,GAA+B,iBAApB/H,GAAQ+H,GACjBkF,EAAYlF,GAAQoF,QAAUnN,EAAQ+H,OACjC,CAC2BjF,SAA5B9C,EAAQ+H,GAAQoF,UAClBF,EAAYlF,GAAQoF,SAAU,EAEhC,KAAK,GAAI7K,KAAQtC,GAAQ+H,GACnB/H,EAAQ+H,GAAQxF,eAAeD,KACjC2K,EAAYlF,GAAQzF,GAAQtC,EAAQ+H,GAAQzF,MAmBxDvG,EAAQqR,mBAAqB,SAAUC,EAAcC,EAAYC,EAAOC,GAMtE,IALA,GAAIC,GAAgB,IAChBC,EAAY,EACZC,EAAM,EACNC,EAAOP,EAAaxK,OAAS,EAEnB+K,GAAPD,GAA2BF,EAAZC,GAA2B,CAC/C,GAAIG,GAASpM,KAAKqK,OAAO6B,EAAMC,GAAQ,GAEnCE,EAAOT,EAAaQ,GACpBtM,EAAmBuB,SAAX0K,EAAuBM,EAAKP,GAASO,EAAKP,GAAOC,GAEzDO,EAAeT,EAAW/L,EAC9B,IAAoB,GAAhBwM,EAEF,MAAOF,EACkB,KAAhBE,EAETJ,EAAME,EAAS,EAGfD,EAAOC,EAAS,EAGlBH,IAGF,MAAO,IAgBT3R,EAAQiS,kBAAoB,SAAUX,EAAc7F,EAAQ+F,EAAOU,EAAgBX,GAWjF,IAVA,GAIIY,GAAW3M,EAAO4M,EAAWN,EAJ7BJ,EAAgB,IAChBC,EAAY,EACZC,EAAM,EACNC,EAAOP,EAAaxK,OAAS,EAG7ByK,EAA2BxK,QAAdwK,EAA0BA,EAAa,SAAU7K,EAAGC,GACnE,MAAOD,IAAKC,EAAI,EAAQA,EAAJD,EAAQ,GAAK,GAGrBmL,GAAPD,GAA2BF,EAAZC,GAA2B,CAO/C,GALAG,EAASpM,KAAKqK,MAAM,IAAO8B,EAAOD,IAClCO,EAAYb,EAAa5L,KAAKJ,IAAI,EAAGwM,EAAS,IAAIN,GAClDhM,EAAQ8L,EAAaQ,GAAQN,GAC7BY,EAAYd,EAAa5L,KAAKL,IAAIiM,EAAaxK,OAAS,EAAGgL,EAAS,IAAIN,GAEvC,GAA7BD,EAAW/L,EAAOiG,GAEpB,MAAOqG,EACF,IAAIP,EAAWY,EAAW1G,GAAU,GAAK8F,EAAW/L,EAAOiG,GAAU,EAE1E,MAAyB,UAAlByG,EAA6BxM,KAAKJ,IAAI,EAAGwM,EAAS,GAAKA,CACzD,IAAIP,EAAW/L,EAAOiG,GAAU,GAAK8F,EAAWa,EAAW3G,GAAU,EAE1E,MAAyB,UAAlByG,EAA6BJ,EAASpM,KAAKL,IAAIiM,EAAaxK,OAAS,EAAGgL,EAAS,EAGpFP,GAAW/L,EAAOiG,GAAU,EAE9BmG,EAAME,EAAS,EAGfD,EAAOC,EAAS,EAGpBH,IAIF,MAAO,IAQT3R,EAAQqS,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,SAASjQ,EAAQD,EAASM,GAM9BL,EAAOD,QAA4B,mBAAXsL,SAA0BA,OAAe,QAAKhL,EAAoB,IAItF,SAASL,EAAQD,EAASM,IAEF,SAASL,IAMnC,SAAUkT,EAAQpT,GACRE,EAAOD,QAAUD,KAG3BK,KAAM,WAIJ,QAASgT,KACL,MAAOC,IAAaC,MAAM,KAAMzM,WAKpC,QAAS0M,GAAiBzJ,GACtBuJ,GAAevJ,EAGnB,QAASvC,GAAQzD,GACb,MAAOA,aAAiBwD,QAAmD,mBAA1CK,OAAO6L,UAAUhG,SAAS7M,KAAKmD,GAGpE,QAAS+B,GAAO/B,GACZ,MAAOA,aAAiBgC,OAAkD,kBAA1C6B,OAAO6L,UAAUhG,SAAS7M,KAAKmD,GAGnE,QAAS8J,GAAIjF,EAAKyB,GACd,GAAcnD,GAAVwM,IACJ,KAAKxM,EAAI,EAAGA,EAAI0B,EAAI7B,SAAUG,EAC1BwM,EAAI1L,KAAKqC,EAAGzB,EAAI1B,GAAIA,GAExB,OAAOwM,GAGX,QAASC,GAAWhN,EAAGC,GACnB,MAAOgB,QAAO6L,UAAUhN,eAAe7F,KAAK+F,EAAGC,GAGnD,QAASQ,GAAOT,EAAGC,GACf,IAAK,GAAIM,KAAKN,GACN+M,EAAW/M,EAAGM,KACdP,EAAEO,GAAKN,EAAEM,GAYjB,OARIyM,GAAW/M,EAAG,cACdD,EAAE8G,SAAW7G,EAAE6G,UAGfkG,EAAW/M,EAAG,aACdD,EAAE2B,QAAU1B,EAAE0B,SAGX3B,EAGX,QAASiN,GAAuB7P,EAAO8P,EAAQC,EAAQC,GACnD,MAAOC,IAAiBjQ,EAAO8P,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,GAAgBhU,GAIrB,MAHa,OAATA,EAAEiU,MACFjU,EAAEiU,IAAMZ,KAELrT,EAAEiU,IAGb,QAASC,GAAelU,GACpB,GAAkB,MAAdA,EAAEmU,SAAkB,CACpB,GAAIC,GAAQJ,EAAgBhU,EAC5BA,GAAEmU,WAAY7O,MAAMtF,EAAEqU,GAAGC,cACrBF,EAAMX,SAAW,IAChBW,EAAMd,OACNc,EAAMR,cACNQ,EAAMG,gBACNH,EAAMT,WACNS,EAAMP,eACNO,EAAMN,iBAEP9T,EAAEwU,UACFxU,EAAEmU,SAAWnU,EAAEmU,UACa,IAAxBC,EAAMV,eACwB,IAA9BU,EAAMb,aAAarN,QACDC,SAAlBiO,EAAMK,SAGlB,MAAOzU,GAAEmU,SAGb,QAASO,GAAsBN,GAC3B,GAAIpU,GAAI+S,EAAsB4B,IAQ9B,OAPa,OAATP,EACA7N,EAAOyN,EAAgBhU,GAAIoU,GAG3BJ,EAAgBhU,GAAG8T,iBAAkB,EAGlC9T,EAGX,QAAS4U,GAAY1R,GACjB,MAAiB,UAAVA,EAOX,QAAS2R,GAAWC,EAAIC,GACpB,GAAI1O,GAAGV,EAAMqP,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,GAAiBvP,OAAS,EAC1B,IAAKG,IAAKoP,IACN9P,EAAO8P,GAAiBpP,GACxB2O,EAAMD,EAAKpP,GACNiP,EAAYI,KACbF,EAAGnP,GAAQqP,EAKvB,OAAOF,GAMX,QAASY,GAAOC,GACZd,EAAWrV,KAAMmW,GACjBnW,KAAK6U,GAAK,GAAInP,MAAkB,MAAbyQ,EAAOtB,GAAasB,EAAOtB,GAAGC,UAAYK,KAGzDiB,MAAqB,IACrBA,IAAmB,EACnBpD,EAAmBqD,aAAarW,MAChCoW,IAAmB,GAI3B,QAASlO,GAAU7D,GACf,MAAOA,aAAe6R,IAAkB,MAAP7R,GAAuC,MAAxBA,EAAIoR,iBAGxD,QAASa,GAAUC,GACf,MAAa,GAATA,EACOjR,KAAKkR,KAAKD,GAEVjR,KAAKqK,MAAM4G,GAI1B,QAASE,GAAMC,GACX,GAAIC,IAAiBD,EACjBtR,EAAQ,CAMZ,OAJsB,KAAlBuR,GAAuBC,SAASD,KAChCvR,EAAQkR,EAASK,IAGdvR,EAIX,QAASyR,GAAcC,EAAQC,EAAQC,GACnC,GAGInQ,GAHAgB,EAAMvC,KAAKL,IAAI6R,EAAOpQ,OAAQqQ,EAAOrQ,QACrCuQ,EAAa3R,KAAK4R,IAAIJ,EAAOpQ,OAASqQ,EAAOrQ,QAC7CyQ,EAAQ,CAEZ,KAAKtQ,EAAI,EAAOgB,EAAJhB,EAASA,KACZmQ,GAAeF,EAAOjQ,KAAOkQ,EAAOlQ,KACnCmQ,GAAeP,EAAMK,EAAOjQ,MAAQ4P,EAAMM,EAAOlQ,MACnDsQ,GAGR,OAAOA,GAAQF,EAGnB,QAASG,GAAKC,GACNrE,EAAmBsE,+BAAgC,GAC1B,mBAAbC,UAA6BA,QAAQH,MACjDG,QAAQH,KAAK,wBAA0BC,GAI/C,QAASG,GAAUH,EAAKrN,GACpB,GAAIyN,IAAY,CAEhB,OAAO1Q,GAAO,WAKV,MAJI0Q,KACAL,EAAKC,EAAM,gBAAkBnQ,MAAMkM,UAAU/F,MAAM9M,KAAKkG,WAAW4C,KAAK,MAAQ,MAAO,GAAKjC,QAAStF,OACrG2V,GAAY,GAETzN,EAAGkJ,MAAMlT,KAAMyG,YACvBuD,GAKP,QAAS0N,GAAgBC,EAAMN,GACtBO,GAAaD,KACdP,EAAKC,GACLO,GAAaD,IAAQ,GAM7B,QAASE,GAAWnU,GAChB,MAAOA,aAAiBoU,WAAsD,sBAA1CvQ,OAAO6L,UAAUhG,SAAS7M,KAAKmD,GAGvE,QAASqU,GAASrU,GACd,MAAiD,oBAA1C6D,OAAO6L,UAAUhG,SAAS7M,KAAKmD,GAG1C,QAASsU,GAAiB7B,GACtB,GAAIhQ,GAAMU,CACV,KAAKA,IAAKsP,GACNhQ,EAAOgQ,EAAOtP,GACVgR,EAAW1R,GACXnG,KAAK6G,GAAKV,EAEVnG,KAAK,IAAM6G,GAAKV,CAGxBnG,MAAKiY,QAAU9B,EAGfnW,KAAKkY,qBAAuB,GAAIC,QAAOnY,KAAKoY,cAAcC,OAAS,IAAM,UAAYA,QAGzF,QAASC,GAAaC,EAAcC,GAChC,GAAoCrS,GAAhCkN,EAAMtM,KAAWwR,EACrB,KAAKpS,IAAQqS,GACLlF,EAAWkF,EAAarS,KACpB4R,EAASQ,EAAapS,KAAU4R,EAASS,EAAYrS,KACrDkN,EAAIlN,MACJY,EAAOsM,EAAIlN,GAAOoS,EAAapS,IAC/BY,EAAOsM,EAAIlN,GAAOqS,EAAYrS,KACF,MAArBqS,EAAYrS,GACnBkN,EAAIlN,GAAQqS,EAAYrS,SAEjBkN,GAAIlN,GAIvB,OAAOkN,GAGX,QAASoF,GAAOtC,GACE,MAAVA,GACAnW,KAAK0Y,IAAIvC,GAQjB,QAASwC,GAAgB7O,GACrB,MAAOA,GAAMA,EAAI8O,cAActM,QAAQ,IAAK,KAAOxC,EAMvD,QAAS+O,GAAaC,GAGlB,IAFA,GAAWlI,GAAGmI,EAAMtF,EAAQrK,EAAxBvC,EAAI,EAEDA,EAAIiS,EAAMpS,QAAQ,CAKrB,IAJA0C,EAAQuP,EAAgBG,EAAMjS,IAAIuC,MAAM,KACxCwH,EAAIxH,EAAM1C,OACVqS,EAAOJ,EAAgBG,EAAMjS,EAAI,IACjCkS,EAAOA,EAAOA,EAAK3P,MAAM,KAAO,KACzBwH,EAAI,GAAG,CAEV,GADA6C,EAASuF,EAAW5P,EAAMiE,MAAM,EAAGuD,GAAGvH,KAAK,MAEvC,MAAOoK,EAEX,IAAIsF,GAAQA,EAAKrS,QAAUkK,GAAKiG,EAAczN,EAAO2P,GAAM,IAASnI,EAAI,EAEpE,KAEJA,KAEJ/J,IAEJ,MAAO,MAGX,QAASmS,GAAWrB,GAChB,GAAIsB,GAAY,IAEhB,KAAKC,GAAQvB,IAA4B,mBAAX9X,IACtBA,GAAUA,EAAOD,QACrB,IACIqZ,EAAYE,GAAaC,OACvB,WAAkC,GAAIzN,GAAI,GAAIvE,OAAM,gCAAiE,MAA7BuE,GAAE0N,KAAO,mBAA0B1N,KAG7H2N,EAAmCL,GACrC,MAAOtN,IAEb,MAAOuN,IAAQvB,GAMnB,QAAS2B,GAAoCxP,EAAKyP,GAC9C,GAAIC,EAeJ,OAdI1P,KAEI0P,EADApE,EAAYmE,GACLE,EAA0B3P,GAG1B4P,EAAa5P,EAAKyP,GAGzBC,IAEAL,GAAeK,IAIhBL,GAAaC,MAGxB,QAASM,GAAc/B,EAAMxB,GACzB,MAAe,QAAXA,GACAA,EAAOwD,KAAOhC,EACO,MAAjBuB,GAAQvB,IACRD,EAAgB,uBACR,mKAGRvB,EAASmC,EAAaY,GAAQvB,GAAMM,QAAS9B,IACf,MAAvBA,EAAOyD,eACsB,MAAhCV,GAAQ/C,EAAOyD,cACfzD,EAASmC,EAAaY,GAAQ/C,EAAOyD,cAAc3B,QAAS9B,GAG5DuB,EAAgB,wBACR,8CAGhBwB,GAAQvB,GAAQ,GAAIc,GAAOtC,GAG3BmD,EAAmC3B,GAE5BuB,GAAQvB,WAGRuB,IAAQvB,GACR,MAIf,QAASkC,GAAalC,EAAMxB,GACxB,GAAc,MAAVA,EAAgB,CAChB,GAAI1C,EACiB,OAAjByF,GAAQvB,KACRxB,EAASmC,EAAaY,GAAQvB,GAAMM,QAAS9B,IAEjD1C,EAAS,GAAIgF,GAAOtC,GACpB1C,EAAOmG,aAAeV,GAAQvB,GAC9BuB,GAAQvB,GAAQlE,EAGhB6F,EAAmC3B,OAGd,OAAjBuB,GAAQvB,KAC0B,MAA9BuB,GAAQvB,GAAMiC,aACdV,GAAQvB,GAAQuB,GAAQvB,GAAMiC,aACN,MAAjBV,GAAQvB,UACRuB,IAAQvB,GAI3B,OAAOuB,IAAQvB,GAInB,QAAS8B,GAA2B3P,GAChC,GAAI2J,EAMJ,IAJI3J,GAAOA,EAAIkM,SAAWlM,EAAIkM,QAAQoD,QAClCtP,EAAMA,EAAIkM,QAAQoD,QAGjBtP,EACD,MAAOqP,GAGX,KAAKhS,EAAQ2C,GAAM,CAGf,GADA2J,EAASuF,EAAWlP,GAEhB,MAAO2J,EAEX3J,IAAOA,GAGX,MAAO+O,GAAa/O,GAGxB,QAASgQ,KACL,MAAOvS,QAAO6H,KAAK8J,IAKvB,QAASa,GAAcC,EAAMC,GACzB,GAAIC,GAAYF,EAAKpB,aACrBuB,IAAQD,GAAaC,GAAQD,EAAY,KAAOC,GAAQF,GAAaD,EAGzE,QAASI,GAAeC,GACpB,MAAwB,gBAAVA,GAAqBF,GAAQE,IAAUF,GAAQE,EAAMzB,eAAiBjS,OAGxF,QAAS2T,GAAqBC,GAC1B,GACIC,GACArU,EAFAsU,IAIJ,KAAKtU,IAAQoU,GACLjH,EAAWiH,EAAapU,KACxBqU,EAAiBJ,EAAejU,GAC5BqU,IACAC,EAAgBD,GAAkBD,EAAYpU,IAK1D,OAAOsU,GAGX,QAASC,GAAYV,EAAMW,GACvB,MAAO,UAAUvV,GACb,MAAa,OAATA,GACAwV,EAAa5a,KAAMga,EAAM5U,GACzB4N,EAAmBqD,aAAarW,KAAM2a,GAC/B3a,MAEA6a,EAAa7a,KAAMga,IAKtC,QAASa,GAAcC,EAAKd,GACxB,MAAOc,GAAIC,UACPD,EAAIjG,GAAG,OAASiG,EAAIhF,OAAS,MAAQ,IAAMkE,KAAU7E,IAG7D,QAASyF,GAAcE,EAAKd,EAAM5U,GAC1B0V,EAAIC,WACJD,EAAIjG,GAAG,OAASiG,EAAIhF,OAAS,MAAQ,IAAMkE,GAAM5U,GAMzD,QAAS4V,GAAQX,EAAOjV,GACpB,GAAI4U,EACJ,IAAqB,gBAAVK,GACP,IAAKL,IAAQK,GACTra,KAAK0Y,IAAIsB,EAAMK,EAAML,QAIzB,IADAK,EAAQD,EAAeC,GACnBxC,EAAW7X,KAAKqa,IAChB,MAAOra,MAAKqa,GAAOjV,EAG3B,OAAOpF,MAGX,QAASib,GAAS1E,EAAQ2E,EAAcC,GACpC,GAAIC,GAAY,GAAK9V,KAAK4R,IAAIX,GAC1B8E,EAAcH,EAAeE,EAAU1U,OACvC4U,EAAO/E,GAAU,CACrB,QAAQ+E,EAAQH,EAAY,IAAM,GAAM,KACpC7V,KAAKiW,IAAI,GAAIjW,KAAKJ,IAAI,EAAGmW,IAAcjO,WAAWL,OAAO,GAAKqO,EAetE,QAASI,GAAgBC,EAAOC,EAAQC,EAASjS,GAC7C,GAAIkS,GAAOlS,CACa,iBAAbA,KACPkS,EAAO,WACH,MAAO5b,MAAK0J,OAGhB+R,IACAI,GAAqBJ,GAASG,GAE9BF,IACAG,GAAqBH,EAAO,IAAM,WAC9B,MAAOT,GAASW,EAAK1I,MAAMlT,KAAMyG,WAAYiV,EAAO,GAAIA,EAAO,MAGnEC,IACAE,GAAqBF,GAAW,WAC5B,MAAO3b,MAAK8b,aAAaH,QAAQC,EAAK1I,MAAMlT,KAAMyG,WAAYgV,KAK1E,QAASM,GAAuBrY,GAC5B,MAAIA,GAAMiC,MAAM,YACLjC,EAAM4I,QAAQ,WAAY,IAE9B5I,EAAM4I,QAAQ,MAAO,IAGhC,QAAS0P,GAAmBxI,GACxB,GAA4C3M,GAAGH,EAA3CkD,EAAQ4J,EAAO7N,MAAMsW,GAEzB,KAAKpV,EAAI,EAAGH,EAASkD,EAAMlD,OAAYA,EAAJG,EAAYA,IACvCgV,GAAqBjS,EAAM/C,IAC3B+C,EAAM/C,GAAKgV,GAAqBjS,EAAM/C,IAEtC+C,EAAM/C,GAAKkV,EAAuBnS,EAAM/C,GAIhD,OAAO,UAAUiU,GACb,GAAIoB,GAAS,EACb,KAAKrV,EAAI,EAAOH,EAAJG,EAAYA,IACpBqV,GAAUtS,EAAM/C,YAAciR,UAAWlO,EAAM/C,GAAGtG,KAAKua,EAAKtH,GAAU5J,EAAM/C,EAEhF,OAAOqV,IAKf,QAASC,GAAa3b,EAAGgT,GACrB,MAAKhT,GAAEua,WAIPvH,EAAS4I,EAAa5I,EAAQhT,EAAEsb,cAChCO,GAAgB7I,GAAU6I,GAAgB7I,IAAWwI,EAAmBxI,GAEjE6I,GAAgB7I,GAAQhT,IANpBA,EAAEsb,aAAaQ,cAS9B,QAASF,GAAa5I,EAAQC,GAG1B,QAAS8I,GAA4B7Y,GACjC,MAAO+P,GAAO+I,eAAe9Y,IAAUA,EAH3C,GAAImD,GAAI,CAOR,KADA4V,GAAsBC,UAAY,EAC3B7V,GAAK,GAAK4V,GAAsBzM,KAAKwD,IACxCA,EAASA,EAAOlH,QAAQmQ,GAAuBF,GAC/CE,GAAsBC,UAAY,EAClC7V,GAAK,CAGT,OAAO2M,GA8BX,QAASmJ,GAAelB,EAAOmB,EAAOC,GAClCC,GAAQrB,GAAS5D,EAAW+E,GAASA,EAAQ,SAAUG,EAAUjB,GAC7D,MAAQiB,IAAYF,EAAeA,EAAcD,GAIzD,QAASI,GAAuBvB,EAAOtF,GACnC,MAAK7C,GAAWwJ,GAASrB,GAIlBqB,GAAQrB,GAAOtF,EAAOnB,QAASmB,EAAOH,SAHlC,GAAImC,QAAO8E,EAAexB,IAOzC,QAASwB,GAAenP,GACpB,MAAOoP,GAAYpP,EAAExB,QAAQ,KAAM,IAAIA,QAAQ,sCAAuC,SAAU6Q,EAASC,EAAIC,EAAIC,EAAIC,GACjH,MAAOH,IAAMC,GAAMC,GAAMC,KAIjC,QAASL,GAAYpP,GACjB,MAAOA,GAAExB,QAAQ,yBAA0B,QAK/C,QAASkR,GAAe/B,EAAO/R,GAC3B,GAAI7C,GAAG+U,EAAOlS,CASd,KARqB,gBAAV+R,KACPA,GAASA,IAEW,gBAAb/R,KACPkS,EAAO,SAAUlY,EAAOkG,GACpBA,EAAMF,GAAY+M,EAAM/S,KAG3BmD,EAAI,EAAGA,EAAI4U,EAAM/U,OAAQG,IAC1B4W,GAAOhC,EAAM5U,IAAM+U,EAI3B,QAAS8B,IAAmBjC,EAAO/R,GAC/B8T,EAAc/B,EAAO,SAAU/X,EAAOkG,EAAOuM,EAAQsF,GACjDtF,EAAOwH,GAAKxH,EAAOwH,OACnBjU,EAAShG,EAAOyS,EAAOwH,GAAIxH,EAAQsF,KAI3C,QAASmC,IAAwBnC,EAAO/X,EAAOyS,GAC9B,MAATzS,GAAiB4P,EAAWmK,GAAQhC,IACpCgC,GAAOhC,GAAO/X,EAAOyS,EAAO0H,GAAI1H,EAAQsF,GAchD,QAASqC,IAAYC,EAAMC,GACvB,MAAO,IAAItY,MAAKA,KAAKuY,IAAIF,EAAMC,EAAQ,EAAG,IAAIE,aAkDlD,QAASC,IAAc3d,EAAGgT,GACtB,MAAOrM,GAAQnH,KAAKoe,SAAWpe,KAAKoe,QAAQ5d,EAAEwd,SAC1Che,KAAKoe,QAAQC,GAAiBrO,KAAKwD,GAAU,SAAW,cAAchT,EAAEwd,SAIhF,QAASM,IAAmB9d,EAAGgT,GAC3B,MAAOrM,GAAQnH,KAAKue,cAAgBve,KAAKue,aAAa/d,EAAEwd,SACpDhe,KAAKue,aAAaF,GAAiBrO,KAAKwD,GAAU,SAAW,cAAchT,EAAEwd,SAGrF,QAASQ,IAAmBC,EAAWjL,EAAQE,GAC3C,GAAI7M,GAAGiU,EAAK8B,CAQZ,KANK5c,KAAK0e,eACN1e,KAAK0e,gBACL1e,KAAK2e,oBACL3e,KAAK4e,sBAGJ/X,EAAI,EAAO,GAAJA,EAAQA,IAAK,CAYrB,GAVAiU,EAAMvH,GAAuB,IAAM1M,IAC/B6M,IAAW1T,KAAK2e,iBAAiB9X,KACjC7G,KAAK2e,iBAAiB9X,GAAK,GAAIsR,QAAO,IAAMnY,KAAK6e,OAAO/D,EAAK,IAAIxO,QAAQ,IAAK,IAAM,IAAK,KACzFtM,KAAK4e,kBAAkB/X,GAAK,GAAIsR,QAAO,IAAMnY,KAAK8e,YAAYhE,EAAK,IAAIxO,QAAQ,IAAK,IAAM,IAAK,MAE9FoH,GAAW1T,KAAK0e,aAAa7X,KAC9B+V,EAAQ,IAAM5c,KAAK6e,OAAO/D,EAAK,IAAM,KAAO9a,KAAK8e,YAAYhE,EAAK,IAClE9a,KAAK0e,aAAa7X,GAAK,GAAIsR,QAAOyE,EAAMtQ,QAAQ,IAAK,IAAK,MAG1DoH,GAAqB,SAAXF,GAAqBxT,KAAK2e,iBAAiB9X,GAAGmJ,KAAKyO,GAC7D,MAAO5X,EACJ,IAAI6M,GAAqB,QAAXF,GAAoBxT,KAAK4e,kBAAkB/X,GAAGmJ,KAAKyO,GACpE,MAAO5X,EACJ,KAAK6M,GAAU1T,KAAK0e,aAAa7X,GAAGmJ,KAAKyO,GAC5C,MAAO5X,IAOnB,QAASkY,IAAUjE,EAAK1V,GACpB,GAAI4Z,EAEJ,KAAKlE,EAAIC,UAEL,MAAOD,EAGX,IAAqB,gBAAV1V,GACP,GAAI,QAAQ4K,KAAK5K,GACbA,EAAQqR,EAAMrR,OAId,IAFAA,EAAQ0V,EAAIgB,aAAamD,YAAY7Z,GAEhB,gBAAVA,GACP,MAAO0V,EAOnB,OAFAkE,GAAa1Z,KAAKL,IAAI6V,EAAIoE,OAAQpB,GAAYhD,EAAIiD,OAAQ3Y,IAC1D0V,EAAIjG,GAAG,OAASiG,EAAIhF,OAAS,MAAQ,IAAM,SAAS1Q,EAAO4Z,GACpDlE,EAGX,QAASqE,IAAa/Z,GAClB,MAAa,OAATA,GACA2Z,GAAS/e,KAAMoF,GACf4N,EAAmBqD,aAAarW,MAAM,GAC/BA,MAEA6a,EAAa7a,KAAM,SAIlC,QAASof,MACL,MAAOtB,IAAY9d,KAAK+d,OAAQ/d,KAAKge,SAIzC,QAASqB,IAAkBtC,GACvB,MAAI/c,MAAKsf,mBACAhM,EAAWtT,KAAM,iBAClBuf,GAAmBhf,KAAKP,MAExB+c,EACO/c,KAAKwf,wBAELxf,KAAKyf,mBAGTzf,KAAKwf,yBAA2BzC,EACnC/c,KAAKwf,wBAA0Bxf,KAAKyf,kBAKhD,QAASC,IAAa3C,GAClB,MAAI/c,MAAKsf,mBACAhM,EAAWtT,KAAM,iBAClBuf,GAAmBhf,KAAKP,MAExB+c,EACO/c,KAAK2f,mBAEL3f,KAAK4f,cAGT5f,KAAK2f,oBAAsB5C,EAC9B/c,KAAK2f,mBAAqB3f,KAAK4f,aAI3C,QAASL,MACL,QAASM,GAAUvZ,EAAGC,GAClB,MAAOA,GAAEG,OAASJ,EAAEI,OAGxB,GACIG,GAAGiU,EADHgF,KAAkBC,KAAiBC,IAEvC,KAAKnZ,EAAI,EAAO,GAAJA,EAAQA,IAEhBiU,EAAMvH,GAAuB,IAAM1M,IACnCiZ,EAAYnY,KAAK3H,KAAK8e,YAAYhE,EAAK,KACvCiF,EAAWpY,KAAK3H,KAAK6e,OAAO/D,EAAK,KACjCkF,EAAYrY,KAAK3H,KAAK6e,OAAO/D,EAAK,KAClCkF,EAAYrY,KAAK3H,KAAK8e,YAAYhE,EAAK,IAO3C,KAHAgF,EAAYG,KAAKJ,GACjBE,EAAWE,KAAKJ,GAChBG,EAAYC,KAAKJ,GACZhZ,EAAI,EAAO,GAAJA,EAAQA,IAChBiZ,EAAYjZ,GAAKqW,EAAY4C,EAAYjZ,IACzCkZ,EAAWlZ,GAAKqW,EAAY6C,EAAWlZ,IACvCmZ,EAAYnZ,GAAKqW,EAAY8C,EAAYnZ,GAG7C7G,MAAK4f,aAAe,GAAIzH,QAAO,KAAO6H,EAAY3W,KAAK,KAAO,IAAK,KACnErJ,KAAKyf,kBAAoBzf,KAAK4f,aAC9B5f,KAAK2f,mBAAqB,GAAIxH,QAAO,KAAO4H,EAAW1W,KAAK,KAAO,KAAM,KACzErJ,KAAKwf,wBAA0B,GAAIrH,QAAO,KAAO2H,EAAYzW,KAAK,KAAO,KAAM,KAGnF,QAAS6W,IAAe1f,GACpB,GAAIyT,GACA3N,EAAI9F,EAAEqd,EAyBV,OAvBIvX,IAAqC,KAAhCkO,EAAgBhU,GAAGyT,WACxBA,EACI3N,EAAE6Z,IAAe,GAAK7Z,EAAE6Z,IAAe,GAAMA,GAC7C7Z,EAAE8Z,IAAe,GAAK9Z,EAAE8Z,IAAetC,GAAYxX,EAAE+Z,IAAO/Z,EAAE6Z,KAAUC,GACxE9Z,EAAEga,IAAe,GAAKha,EAAEga,IAAe,IAAmB,KAAZha,EAAEga,MAA+B,IAAdha,EAAEia,KAA+B,IAAdja,EAAEka,KAAoC,IAAnBla,EAAEma,KAAuBH,GAChIha,EAAEia,IAAe,GAAKja,EAAEia,IAAe,GAAMA,GAC7Cja,EAAEka,IAAe,GAAKla,EAAEka,IAAe,GAAMA,GAC7Cla,EAAEma,IAAe,GAAKna,EAAEma,IAAe,IAAMA,GAC7C,GAEAjM,EAAgBhU,GAAGkgB,qBAAkCL,GAAXpM,GAAmBA,EAAWmM,MACxEnM,EAAWmM,IAEX5L,EAAgBhU,GAAGmgB,gBAA+B,KAAb1M,IACrCA,EAAW2M,IAEXpM,EAAgBhU,GAAGqgB,kBAAiC,KAAb5M,IACvCA,EAAW6M,IAGftM,EAAgBhU,GAAGyT,SAAWA,GAG3BzT,EAyCX,QAASugB,IAAc5K,GACnB,GAAItP,GAAGma,EAGHC,EAAWC,EAAYC,EAAYC,EAFnCC,EAASlL,EAAOT,GAChB/P,EAAQ2b,GAAiBzb,KAAKwb,IAAWE,GAAc1b,KAAKwb,EAGhE,IAAI1b,EAAO,CAGP,IAFA6O,EAAgB2B,GAAQ5B,KAAM,EAEzB1N,EAAI,EAAGma,EAAIQ,GAAS9a,OAAYsa,EAAJna,EAAOA,IACpC,GAAI2a,GAAS3a,GAAG,GAAGhB,KAAKF,EAAM,IAAK,CAC/Bub,EAAaM,GAAS3a,GAAG,GACzBoa,EAAYO,GAAS3a,GAAG,MAAO,CAC/B,OAGR,GAAkB,MAAdqa,EAEA,YADA/K,EAAOxB,UAAW,EAGtB,IAAIhP,EAAM,GAAI,CACV,IAAKkB,EAAI,EAAGma,EAAIS,GAAS/a,OAAYsa,EAAJna,EAAOA,IACpC,GAAI4a,GAAS5a,GAAG,GAAGhB,KAAKF,EAAM,IAAK,CAE/Bwb,GAAcxb,EAAM,IAAM,KAAO8b,GAAS5a,GAAG,EAC7C,OAGR,GAAkB,MAAdsa,EAEA,YADAhL,EAAOxB,UAAW,GAI1B,IAAKsM,GAA2B,MAAdE,EAEd,YADAhL,EAAOxB,UAAW,EAGtB,IAAIhP,EAAM,GAAI,CACV,IAAI+b,GAAQ7b,KAAKF,EAAM,IAInB,YADAwQ,EAAOxB,UAAW,EAFlByM,GAAW,IAMnBjL,EAAOR,GAAKuL,GAAcC,GAAc,KAAOC,GAAY,IAC3DO,GAA0BxL,OAE1BA,GAAOxB,UAAW,EAK1B,QAASiN,IAAiBzL,GACtB,GAAIgH,GAAU0E,GAAgBhc,KAAKsQ,EAAOT,GAE1C,OAAgB,QAAZyH,OACAhH,EAAOtB,GAAK,GAAInP,OAAMyX,EAAQ,MAIlC4D,GAAc5K,QACVA,EAAOxB,YAAa,UACbwB,GAAOxB,SACd3B,EAAmB8O,wBAAwB3L,MAcnD,QAAS4L,IAAYC,EAAGxhB,EAAGmO,EAAGd,EAAGoU,EAAGnU,EAAGoU,GAGnC,GAAIhD,GAAO,GAAIxZ,MAAKsc,EAAGxhB,EAAGmO,EAAGd,EAAGoU,EAAGnU,EAAGoU,EAMtC,OAHQ,KAAJF,GAAWA,GAAK,GAAKpL,SAASsI,EAAKiD,gBACnCjD,EAAKkD,YAAYJ,GAEd9C,EAGX,QAASmD,IAAeL,GACpB,GAAI9C,GAAO,GAAIxZ,MAAKA,KAAKuY,IAAI/K,MAAM,KAAMzM,WAMzC,OAHQ,KAAJub,GAAWA,GAAK,GAAKpL,SAASsI,EAAKoD,mBACnCpD,EAAKqD,eAAeP,GAEjB9C,EA2CX,QAASsD,IAAWzE,GAChB,MAAO0E,IAAW1E,GAAQ,IAAM,IAGpC,QAAS0E,IAAW1E,GAChB,MAAQA,GAAO,IAAM,GAAKA,EAAO,MAAQ,GAAMA,EAAO,MAAQ,EAalE,QAAS2E,MACL,MAAOD,IAAWziB,KAAK+d,QAI3B,QAAS4E,IAAgB5E,EAAM6E,EAAKC,GAChC,GACIC,GAAM,EAAIF,EAAMC,EAEhBE,GAAS,EAAIV,GAActE,EAAM,EAAG+E,GAAKE,YAAcJ,GAAO,CAElE,QAAQG,EAAQD,EAAM,EAI1B,QAASG,IAAmBlF,EAAMmF,EAAMC,EAASP,EAAKC,GAClD,GAGIO,GAASC,EAHTC,GAAgB,EAAIH,EAAUP,GAAO,EACrCW,EAAaZ,GAAgB5E,EAAM6E,EAAKC,GACxCW,EAAY,EAAI,GAAKN,EAAO,GAAKI,EAAeC,CAcpD,OAXiB,IAAbC,GACAJ,EAAUrF,EAAO,EACjBsF,EAAeb,GAAWY,GAAWI,GAC9BA,EAAYhB,GAAWzE,IAC9BqF,EAAUrF,EAAO,EACjBsF,EAAeG,EAAYhB,GAAWzE,KAEtCqF,EAAUrF,EACVsF,EAAeG,IAIfzF,KAAMqF,EACNI,UAAWH,GAInB,QAASI,IAAW3I,EAAK8H,EAAKC,GAC1B,GAEIa,GAASN,EAFTG,EAAaZ,GAAgB7H,EAAIiD,OAAQ6E,EAAKC,GAC9CK,EAAO5d,KAAKqK,OAAOmL,EAAI0I,YAAcD,EAAa,GAAK,GAAK,CAchE,OAXW,GAAPL,GACAE,EAAUtI,EAAIiD,OAAS,EACvB2F,EAAUR,EAAOS,GAAYP,EAASR,EAAKC,IACpCK,EAAOS,GAAY7I,EAAIiD,OAAQ6E,EAAKC,IAC3Ca,EAAUR,EAAOS,GAAY7I,EAAIiD,OAAQ6E,EAAKC,GAC9CO,EAAUtI,EAAIiD,OAAS,IAEvBqF,EAAUtI,EAAIiD,OACd2F,EAAUR,IAIVA,KAAMQ,EACN3F,KAAMqF,GAId,QAASO,IAAY5F,EAAM6E,EAAKC,GAC5B,GAAIU,GAAaZ,GAAgB5E,EAAM6E,EAAKC,GACxCe,EAAiBjB,GAAgB5E,EAAO,EAAG6E,EAAKC,EACpD,QAAQL,GAAWzE,GAAQwF,EAAaK,GAAkB,EAI9D,QAASC,IAASvd,EAAGC,EAAG9F,GACpB,MAAS,OAAL6F,EACOA,EAEF,MAALC,EACOA,EAEJ9F,EAGX,QAASqjB,IAAiB3N,GAEtB,GAAI4N,GAAW,GAAIre,MAAKsN,EAAmBgR,MAC3C,OAAI7N,GAAO8N,SACCF,EAASzB,iBAAkByB,EAASG,cAAeH,EAAS7F,eAEhE6F,EAAS5B,cAAe4B,EAASI,WAAYJ,EAASK,WAOlE,QAASC,IAAiBlO,GACtB,GAAItP,GAAGqY,EAAkBoF,EAAaC,EAAzB7gB,IAEb,KAAIyS,EAAOtB,GAAX,CA6BA,IAzBAyP,EAAcR,GAAiB3N,GAG3BA,EAAOwH,IAAyB,MAAnBxH,EAAO0H,GAAGuC,KAAqC,MAApBjK,EAAO0H,GAAGsC,KAClDqE,GAAsBrO,GAItBA,EAAOsO,aACPF,EAAYV,GAAS1N,EAAO0H,GAAGwC,IAAOiE,EAAYjE,KAE9ClK,EAAOsO,WAAajC,GAAW+B,KAC/B/P,EAAgB2B,GAAQuK,oBAAqB,GAGjDxB,EAAOmD,GAAckC,EAAW,EAAGpO,EAAOsO,YAC1CtO,EAAO0H,GAAGsC,IAASjB,EAAKgF,cACxB/N,EAAO0H,GAAGuC,IAAQlB,EAAKhB,cAQtBrX,EAAI,EAAO,EAAJA,GAAyB,MAAhBsP,EAAO0H,GAAGhX,KAAcA,EACzCsP,EAAO0H,GAAGhX,GAAKnD,EAAMmD,GAAKyd,EAAYzd,EAI1C,MAAW,EAAJA,EAAOA,IACVsP,EAAO0H,GAAGhX,GAAKnD,EAAMmD,GAAsB,MAAhBsP,EAAO0H,GAAGhX,GAAqB,IAANA,EAAU,EAAI,EAAKsP,EAAO0H,GAAGhX,EAI7D,MAApBsP,EAAO0H,GAAGyC,KACgB,IAAtBnK,EAAO0H,GAAG0C,KACY,IAAtBpK,EAAO0H,GAAG2C,KACiB,IAA3BrK,EAAO0H,GAAG4C,MACdtK,EAAOuO,UAAW,EAClBvO,EAAO0H,GAAGyC,IAAQ,GAGtBnK,EAAOtB,IAAMsB,EAAO8N,QAAU5B,GAAgBN,IAAY7O,MAAM,KAAMxP,GAGnD,MAAfyS,EAAON,MACPM,EAAOtB,GAAG8P,cAAcxO,EAAOtB,GAAG+P,gBAAkBzO,EAAON,MAG3DM,EAAOuO,WACPvO,EAAO0H,GAAGyC,IAAQ,KAI1B,QAASkE,IAAsBrO,GAC3B,GAAI0O,GAAGC,EAAU5B,EAAMC,EAASP,EAAKC,EAAKkC,EAAMC,CAEhDH,GAAI1O,EAAOwH,GACC,MAARkH,EAAEI,IAAqB,MAAPJ,EAAEK,GAAoB,MAAPL,EAAEM,GACjCvC,EAAM,EACNC,EAAM,EAMNiC,EAAWjB,GAASgB,EAAEI,GAAI9O,EAAO0H,GAAGwC,IAAOoD,GAAW2B,KAAsB,EAAG,GAAGrH,MAClFmF,EAAOW,GAASgB,EAAEK,EAAG,GACrB/B,EAAUU,GAASgB,EAAEM,EAAG,IACV,EAAVhC,GAAeA,EAAU,KACzB6B,GAAkB,KAGtBpC,EAAMzM,EAAOH,QAAQqP,MAAMzC,IAC3BC,EAAM1M,EAAOH,QAAQqP,MAAMxC,IAE3BiC,EAAWjB,GAASgB,EAAES,GAAInP,EAAO0H,GAAGwC,IAAOoD,GAAW2B,KAAsBxC,EAAKC,GAAK9E,MACtFmF,EAAOW,GAASgB,EAAEA,EAAG,GAEV,MAAPA,EAAElW,GAEFwU,EAAU0B,EAAElW,GACE,EAAVwU,GAAeA,EAAU,KACzB6B,GAAkB,IAER,MAAPH,EAAElZ,GAETwX,EAAU0B,EAAElZ,EAAIiX,GACZiC,EAAElZ,EAAI,GAAKkZ,EAAElZ,EAAI,KACjBqZ,GAAkB,IAItB7B,EAAUP,GAGP,EAAPM,GAAYA,EAAOS,GAAYmB,EAAUlC,EAAKC,GAC9CrO,EAAgB2B,GAAQwK,gBAAiB,EACf,MAAnBqE,EACPxQ,EAAgB2B,GAAQ0K,kBAAmB,GAE3CkE,EAAO9B,GAAmB6B,EAAU5B,EAAMC,EAASP,EAAKC,GACxD1M,EAAO0H,GAAGwC,IAAQ0E,EAAKhH,KACvB5H,EAAOsO,WAAaM,EAAKvB,WAQjC,QAAS7B,IAA0BxL,GAE/B,GAAIA,EAAOR,KAAO3C,EAAmBuS,SAEjC,WADAxE,IAAc5K,EAIlBA,GAAO0H,MACPrJ,EAAgB2B,GAAQrC,OAAQ,CAGhC,IACIjN,GAAG2e,EAAa/H,EAAQhC,EAAOgK,EAD/BpE,EAAS,GAAKlL,EAAOT,GAErBgQ,EAAerE,EAAO3a,OACtBif,EAAyB,CAI7B,KAFAlI,EAASrB,EAAajG,EAAOR,GAAIQ,EAAOH,SAASrQ,MAAMsW,QAElDpV,EAAI,EAAGA,EAAI4W,EAAO/W,OAAQG,IAC3B4U,EAAQgC,EAAO5W,GACf2e,GAAenE,EAAO1b,MAAMqX,EAAsBvB,EAAOtF,SAAgB,GAGrEqP,IACAC,EAAUpE,EAAOtU,OAAO,EAAGsU,EAAO3Z,QAAQ8d,IACtCC,EAAQ/e,OAAS,GACjB8N,EAAgB2B,GAAQnC,YAAYrM,KAAK8d,GAE7CpE,EAASA,EAAOhU,MAAMgU,EAAO3Z,QAAQ8d,GAAeA,EAAY9e,QAChEif,GAA0BH,EAAY9e,QAGtCmV,GAAqBJ,IACjB+J,EACAhR,EAAgB2B,GAAQrC,OAAQ,EAGhCU,EAAgB2B,GAAQpC,aAAapM,KAAK8T,GAE9CmC,GAAwBnC,EAAO+J,EAAarP,IAEvCA,EAAOnB,UAAYwQ,GACxBhR,EAAgB2B,GAAQpC,aAAapM,KAAK8T,EAKlDjH,GAAgB2B,GAAQjC,cAAgBwR,EAAeC,EACnDtE,EAAO3a,OAAS,GAChB8N,EAAgB2B,GAAQnC,YAAYrM,KAAK0Z,GAIzC7M,EAAgB2B,GAAQlB,WAAY,GAChCkB,EAAO0H,GAAGyC,KAAS,IACnBnK,EAAO0H,GAAGyC,IAAQ,IACtB9L,EAAgB2B,GAAQlB,QAAUtO,QAGtCwP,EAAO0H,GAAGyC,IAAQsF,GAAgBzP,EAAOH,QAASG,EAAO0H,GAAGyC,IAAOnK,EAAO0P,WAE1ExB,GAAgBlO,GAChB+J,GAAc/J,GAIlB,QAASyP,IAAiBnS,EAAQqS,EAAMC,GACpC,GAAIC,EAEJ,OAAgB,OAAZD,EAEOD,EAEgB,MAAvBrS,EAAOwS,aACAxS,EAAOwS,aAAaH,EAAMC,GACX,MAAftS,EAAOyS,MAEdF,EAAOvS,EAAOyS,KAAKH,GACfC,GAAe,GAAPF,IACRA,GAAQ,IAEPE,GAAiB,KAATF,IACTA,EAAO,GAEJA,GAGAA,EAKf,QAASK,IAAyBhQ,GAC9B,GAAIiQ,GACAC,EAEAC,EACAzf,EACA0f,CAEJ,IAAyB,IAArBpQ,EAAOR,GAAGjP,OAGV,MAFA8N,GAAgB2B,GAAQ9B,eAAgB,OACxC8B,EAAOtB,GAAK,GAAInP,MAAKyP,KAIzB,KAAKtO,EAAI,EAAGA,EAAIsP,EAAOR,GAAGjP,OAAQG,IAC9B0f,EAAe,EACfH,EAAa/Q,KAAec,GACN,MAAlBA,EAAO8N,UACPmC,EAAWnC,QAAU9N,EAAO8N,SAEhCmC,EAAWzQ,GAAKQ,EAAOR,GAAG9O,GAC1B8a,GAA0ByE,GAErB1R,EAAe0R,KAKpBG,GAAgB/R,EAAgB4R,GAAYlS,cAG5CqS,GAAkE,GAAlD/R,EAAgB4R,GAAYrS,aAAarN,OAEzD8N,EAAgB4R,GAAYI,MAAQD,GAEjB,MAAfD,GAAsCA,EAAfC,KACvBD,EAAcC,EACdF,EAAaD,GAIrBrf,GAAOoP,EAAQkQ,GAAcD,GAGjC,QAASK,IAAiBtQ,GACtB,IAAIA,EAAOtB,GAAX,CAIA,GAAIhO,GAAIyT,EAAqBnE,EAAOT,GACpCS,GAAO0H,GAAKrQ,GAAK3G,EAAEkX,KAAMlX,EAAEmX,MAAOnX,EAAE6f,KAAO7f,EAAEqY,KAAMrY,EAAEif,KAAMjf,EAAE8f,OAAQ9f,EAAE+f,OAAQ/f,EAAEggB,aAAc,SAAUxiB,GACrG,MAAOA,IAAOqI,SAASrI,EAAK,MAGhCggB,GAAgBlO,IAGpB,QAAS2Q,IAAkB3Q,GACvB,GAAI9C,GAAM,GAAI6C,GAAOgK,GAAc6G,GAAc5Q,IAOjD,OANI9C,GAAIqR,WAEJrR,EAAI2T,IAAI,EAAG,KACX3T,EAAIqR,SAAW/d,QAGZ0M,EAGX,QAAS0T,IAAe5Q,GACpB,GAAIzS,GAAQyS,EAAOT,GACflC,EAAS2C,EAAOR,EAIpB,OAFAQ,GAAOH,QAAUG,EAAOH,SAAWyD,EAA0BtD,EAAOP,IAEtD,OAAVlS,GAA8BiD,SAAX6M,GAAkC,KAAV9P,EACpCwR,GAAsBf,WAAW,KAGvB,gBAAVzQ,KACPyS,EAAOT,GAAKhS,EAAQyS,EAAOH,QAAQiR,SAASvjB,IAG5CwE,EAASxE,GACF,GAAIwS,GAAOgK,GAAcxc,KACzByD,EAAQqM,GACf2S,GAAyBhQ,GAClB3C,EACPmO,GAA0BxL,GACnB1Q,EAAO/B,GACdyS,EAAOtB,GAAKnR,EAEZwjB,GAAgB/Q,GAGfzB,EAAeyB,KAChBA,EAAOtB,GAAK,MAGTsB,IAGX,QAAS+Q,IAAgB/Q,GACrB,GAAIzS,GAAQyS,EAAOT,EACL/O,UAAVjD,EACAyS,EAAOtB,GAAK,GAAInP,MAAKsN,EAAmBgR,OACjCve,EAAO/B,GACdyS,EAAOtB,GAAK,GAAInP,OAAMhC,GACE,gBAAVA,GACdke,GAAiBzL,GACVhP,EAAQzD,IACfyS,EAAO0H,GAAKrQ,EAAI9J,EAAM2J,MAAM,GAAI,SAAUhJ,GACtC,MAAOqI,UAASrI,EAAK,MAEzBggB,GAAgBlO,IACS,gBAAZ,GACbsQ,GAAiBtQ,GACQ,gBAAZ,GAEbA,EAAOtB,GAAK,GAAInP,MAAKhC,GAErBsP,EAAmB8O,wBAAwB3L,GAInD,QAASxC,IAAkBjQ,EAAO8P,EAAQC,EAAQC,EAAQyT,GACtD,GAAI1mB,KAeJ,OAbuB,iBAAb,KACNiT,EAASD,EACTA,EAAS9M,QAIblG,EAAEgV,kBAAmB,EACrBhV,EAAEwjB,QAAUxjB,EAAEqV,OAASqR,EACvB1mB,EAAEmV,GAAKnC,EACPhT,EAAEiV,GAAKhS,EACPjD,EAAEkV,GAAKnC,EACP/S,EAAEuU,QAAUtB,EAELoT,GAAiBrmB,GAG5B,QAAS2kB,IAAoB1hB,EAAO8P,EAAQC,EAAQC,GAChD,MAAOC,IAAiBjQ,EAAO8P,EAAQC,EAAQC,GAAQ,GAgC3D,QAAS0T,IAAOpd,EAAIqd,GAChB,GAAIhU,GAAKxM,CAIT,IAHuB,IAAnBwgB,EAAQ3gB,QAAgBS,EAAQkgB,EAAQ,MACxCA,EAAUA,EAAQ,KAEjBA,EAAQ3gB,OACT,MAAO0e,KAGX,KADA/R,EAAMgU,EAAQ,GACTxgB,EAAI,EAAGA,EAAIwgB,EAAQ3gB,SAAUG,EACzBwgB,EAAQxgB,GAAGkU,YAAasM,EAAQxgB,GAAGmD,GAAIqJ,KACxCA,EAAMgU,EAAQxgB,GAGtB,OAAOwM,GAIX,QAASpO,MACL,GAAIqiB,MAAUja,MAAM9M,KAAKkG,UAAW,EAEpC,OAAO2gB,IAAO,WAAYE,GAG9B,QAASpiB,MACL,GAAIoiB,MAAUja,MAAM9M,KAAKkG,UAAW,EAEpC,OAAO2gB,IAAO,UAAWE,GAO7B,QAASC,IAAUC,GACf,GAAI/M,GAAkBH,EAAqBkN,GACvCC,EAAQhN,EAAgBsD,MAAQ,EAChC2J,EAAWjN,EAAgBkN,SAAW,EACtC9I,EAASpE,EAAgBuD,OAAS,EAClC4J,EAAQnN,EAAgByI,MAAQ,EAChC2E,EAAOpN,EAAgBiM,KAAO,EAC9BoB,EAAQrN,EAAgBqL,MAAQ,EAChCiC,EAAUtN,EAAgBkM,QAAU,EACpCqB,EAAUvN,EAAgBmM,QAAU,EACpCqB,EAAexN,EAAgBoM,aAAe,CAGlD7mB,MAAKkoB,eAAiBD,EACR,IAAVD,EACU,IAAVD,EACQ,KAARD,EAGJ9nB,KAAKmoB,OAASN,EACF,EAARD,EAIJ5nB,KAAKoe,SAAWS,EACD,EAAX6I,EACQ,GAARD,EAEJznB,KAAKooB,SAELpoB,KAAKgW,QAAUyD,IAEfzZ,KAAKqoB,UAGT,QAASC,IAAYjkB,GACjB,MAAOA,aAAekjB,IAK1B,QAASgB,IAAQ9M,EAAO+M,GACpBhN,EAAeC,EAAO,EAAG,EAAG,WACxB,GAAI8M,GAASvoB,KAAKyoB,YACdnN,EAAO,GAKX,OAJa,GAATiN,IACAA,GAAUA,EACVjN,EAAO,KAEJA,EAAOL,KAAYsN,EAAS,IAAK,GAAKC,EAAYvN,IAAW,EAAW,GAAI,KAuB3F,QAASyN,IAAiBC,EAAStH,GAC/B,GAAIuH,IAAYvH,GAAU,IAAI1b,MAAMgjB,OAChCE,EAAUD,EAAQA,EAAQliB,OAAS,OACnCyI,GAAW0Z,EAAQ,IAAIljB,MAAMmjB,MAAiB,IAAK,EAAG,GACtDf,IAAuB,GAAX5Y,EAAM,IAAWsH,EAAMtH,EAAM,GAE7C,OAAoB,MAAbA,EAAM,GAAa4Y,GAAWA,EAIzC,QAASgB,IAAgBrlB,EAAOslB,GAC5B,GAAI3V,GAAK4V,CACT,OAAID,GAAMlT,QACNzC,EAAM2V,EAAME,QACZD,GAAQ/gB,EAASxE,IAAU+B,EAAO/B,IAAUA,GAAS0hB,GAAmB1hB,KAAY2P,EAEpFA,EAAIwB,GAAGsU,SAAS9V,EAAIwB,GAAKoU,GACzBjW,EAAmBqD,aAAahD,GAAK,GAC9BA,GAEA+R,GAAmB1hB,GAAO0lB,QAIzC,QAASC,IAAe7oB,GAGpB,MAAoD,KAA5C8E,KAAKgkB,MAAM9oB,EAAEqU,GAAG0U,oBAAsB,IAqBlD,QAASC,IAAc9lB,EAAO+lB,GAC1B,GACIC,GADAnB,EAASvoB,KAAK+V,SAAW,CAE7B,OAAK/V,MAAK+a,UAGG,MAATrX,GACqB,gBAAVA,GACPA,EAAQglB,GAAiBiB,GAAkBjmB,GACpC4B,KAAK4R,IAAIxT,GAAS,KACzBA,EAAgB,GAARA,IAEP1D,KAAK8V,QAAU2T,IAChBC,EAAcL,GAAcrpB,OAEhCA,KAAK+V,QAAUrS,EACf1D,KAAK8V,QAAS,EACK,MAAf4T,GACA1pB,KAAKgnB,IAAI0C,EAAa,KAEtBnB,IAAW7kB,KACN+lB,GAAiBzpB,KAAK4pB,kBACvBC,GAA0B7pB,KAAM8pB,GAAuBpmB,EAAQ6kB,EAAQ,KAAM,GAAG,GACxEvoB,KAAK4pB,oBACb5pB,KAAK4pB,mBAAoB,EACzB5W,EAAmBqD,aAAarW,MAAM,GACtCA,KAAK4pB,kBAAoB,OAG1B5pB,MAEAA,KAAK8V,OAASyS,EAASc,GAAcrpB,MA3B5B,MAAT0D,EAAgB1D,KAAOmV,IA+BtC,QAAS4U,IAAYrmB,EAAO+lB,GACxB,MAAa,OAAT/lB,GACqB,gBAAVA,KACPA,GAASA,GAGb1D,KAAKyoB,UAAU/kB,EAAO+lB,GAEfzpB,OAECA,KAAKyoB,YAIrB,QAASuB,IAAgBP,GACrB,MAAOzpB,MAAKyoB,UAAU,EAAGgB,GAG7B,QAASQ,IAAkBR,GASvB,MARIzpB,MAAK8V,SACL9V,KAAKyoB,UAAU,EAAGgB,GAClBzpB,KAAK8V,QAAS,EAEV2T,GACAzpB,KAAKkqB,SAASb,GAAcrpB,MAAO,MAGpCA,KAGX,QAASmqB,MAML,MALInqB,MAAK6V,KACL7V,KAAKyoB,UAAUzoB,KAAK6V,MACM,gBAAZ7V,MAAK0V,IACnB1V,KAAKyoB,UAAUC,GAAiB0B,GAAapqB,KAAK0V,KAE/C1V,KAGX,QAASqqB,IAAsB3mB,GAC3B,MAAK1D,MAAK+a,WAGVrX,EAAQA,EAAQ0hB,GAAmB1hB,GAAO+kB,YAAc,GAEhDzoB,KAAKyoB,YAAc/kB,GAAS,KAAO,IAJhC,EAOf,QAAS4mB,MACL,MACItqB,MAAKyoB,YAAczoB,KAAKkpB,QAAQlL,MAAM,GAAGyK,aACzCzoB,KAAKyoB,YAAczoB,KAAKkpB,QAAQlL,MAAM,GAAGyK,YAIjD,QAAS8B,MACL,IAAKnV,EAAYpV,KAAKwqB,eAClB,MAAOxqB,MAAKwqB,aAGhB,IAAI/pB,KAKJ,IAHA4U,EAAW5U,EAAGT,MACdS,EAAIsmB,GAActmB,GAEdA,EAAEod,GAAI,CACN,GAAI/W,GAAQrG,EAAEqV,OAASvC,EAAsB9S,EAAEod,IAAMuH,GAAmB3kB,EAAEod,GAC1E7d,MAAKwqB,cAAgBxqB,KAAK+a,WACtBlE,EAAcpW,EAAEod,GAAI/W,EAAM6C,WAAa,MAE3C3J,MAAKwqB,eAAgB,CAGzB,OAAOxqB,MAAKwqB,cAGhB,QAASC,MACL,MAAOzqB,MAAK+a,WAAa/a,KAAK8V,QAAS,EAG3C,QAAS4U,MACL,MAAO1qB,MAAK+a,UAAY/a,KAAK8V,QAAS,EAG1C,QAAS6U,MACL,MAAO3qB,MAAK+a,UAAY/a,KAAK8V,QAA2B,IAAjB9V,KAAK+V,SAAgB,EAWhE,QAAS+T,IAAwBpmB,EAAOoG,GACpC,GAGIwR,GACAsP,EACAC,EALArD,EAAW9jB,EAEXiC,EAAQ,IAuDZ,OAlDI2iB,IAAW5kB,GACX8jB,GACItF,GAAKxe,EAAMwkB,cACXvZ,EAAKjL,EAAMykB,MACXlG,EAAKve,EAAM0a,SAES,gBAAV1a,IACd8jB,KACI1d,EACA0d,EAAS1d,GAAOpG,EAEhB8jB,EAASS,aAAevkB,IAElBiC,EAAQmlB,GAAYjlB,KAAKnC,KACnC4X,EAAqB,MAAb3V,EAAM,GAAc,GAAK,EACjC6hB,GACIxF,EAAK,EACLrT,EAAK8H,EAAM9Q,EAAMya,KAAgB9E,EACjCzN,EAAK4I,EAAM9Q,EAAM2a,KAAgBhF,EACjC9a,EAAKiW,EAAM9Q,EAAM4a,KAAgBjF,EACjCxN,EAAK2I,EAAM9Q,EAAM6a,KAAgBlF,EACjC4G,GAAKzL,EAAM9Q,EAAM8a,KAAgBnF,KAE3B3V,EAAQolB,GAASllB,KAAKnC,KAChC4X,EAAqB,MAAb3V,EAAM,GAAc,GAAK,EACjC6hB,GACIxF,EAAIgJ,GAASrlB,EAAM,GAAI2V,GACvB2G,EAAI+I,GAASrlB,EAAM,GAAI2V,GACvBuJ,EAAImG,GAASrlB,EAAM,GAAI2V,GACvB3M,EAAIqc,GAASrlB,EAAM,GAAI2V,GACvBzN,EAAImd,GAASrlB,EAAM,GAAI2V,GACvB9a,EAAIwqB,GAASrlB,EAAM,GAAI2V,GACvBxN,EAAIkd,GAASrlB,EAAM,GAAI2V,KAER,MAAZkM,EACPA,KAC2B,gBAAbA,KAA0B,QAAUA,IAAY,MAAQA,MACtEqD,EAAUI,GAAkB7F,GAAmBoC,EAASjS,MAAO6P,GAAmBoC,EAASlS,KAE3FkS,KACAA,EAAStF,GAAK2I,EAAQ5C,aACtBT,EAASvF,EAAI4I,EAAQhM,QAGzB+L,EAAM,GAAIrD,IAASC,GAEfc,GAAW5kB,IAAU4P,EAAW5P,EAAO,aACvCknB,EAAI5U,QAAUtS,EAAMsS,SAGjB4U,EAKX,QAASI,IAAUE,EAAK5P,GAIpB,GAAIjI,GAAM6X,GAAOC,WAAWD,EAAI5e,QAAQ,IAAK,KAE7C,QAAQxG,MAAMuN,GAAO,EAAIA,GAAOiI,EAGpC,QAAS8P,IAA0BC,EAAMvkB,GACrC,GAAIuM,IAAO4U,aAAc,EAAGpJ,OAAQ,EAUpC,OARAxL,GAAIwL,OAAS/X,EAAMkX,QAAUqN,EAAKrN,QACC,IAA9BlX,EAAMiX,OAASsN,EAAKtN,QACrBsN,EAAKnC,QAAQlC,IAAI3T,EAAIwL,OAAQ,KAAKyM,QAAQxkB,MACxCuM,EAAIwL,OAGVxL,EAAI4U,cAAgBnhB,GAAUukB,EAAKnC,QAAQlC,IAAI3T,EAAIwL,OAAQ,KAEpDxL,EAGX,QAAS4X,IAAkBI,EAAMvkB,GAC7B,GAAIuM,EACJ,OAAMgY,GAAKtQ,WAAajU,EAAMiU,WAI9BjU,EAAQiiB,GAAgBjiB,EAAOukB,GAC3BA,EAAKE,SAASzkB,GACduM,EAAM+X,GAA0BC,EAAMvkB,IAEtCuM,EAAM+X,GAA0BtkB,EAAOukB,GACvChY,EAAI4U,cAAgB5U,EAAI4U,aACxB5U,EAAIwL,QAAUxL,EAAIwL,QAGfxL,IAZK4U,aAAc,EAAGpJ,OAAQ,GAezC,QAAS2M,IAAUjV;AACf,MAAa,GAATA,EACiC,GAA1BjR,KAAKgkB,MAAM,GAAK/S,GAEhBjR,KAAKgkB,MAAM/S,GAK1B,QAASkV,IAAYC,EAAW/T,GAC5B,MAAO,UAAUnC,EAAKmW,GAClB,GAAIC,GAAKC,CAUT,OARe,QAAXF,GAAoB7lB,OAAO6lB,KAC3BjU,EAAgBC,EAAM,YAAcA,EAAQ,uDAAyDA,EAAO,qBAC5GkU,EAAMrW,EAAKA,EAAMmW,EAAQA,EAASE,GAGtCrW,EAAqB,gBAARA,IAAoBA,EAAMA,EACvCoW,EAAM9B,GAAuBtU,EAAKmW,GAClC9B,GAA0B7pB,KAAM4rB,EAAKF,GAC9B1rB,MAIf,QAAS6pB,IAA2B/O,EAAK0M,EAAUsE,EAAUzV,GACzD,GAAI4R,GAAeT,EAASU,cACxBL,EAAO2D,GAAShE,EAASW,OACzBtJ,EAAS2M,GAAShE,EAASpJ,QAE1BtD,GAAIC,YAKT1E,EAA+B,MAAhBA,GAAuB,EAAOA,EAEzC4R,GACAnN,EAAIjG,GAAGsU,SAASrO,EAAIjG,GAAKoT,EAAe6D,GAExCjE,GACAjN,EAAaE,EAAK,OAAQD,EAAaC,EAAK,QAAU+M,EAAOiE,GAE7DjN,GACAE,GAASjE,EAAKD,EAAaC,EAAK,SAAW+D,EAASiN,GAEpDzV,GACArD,EAAmBqD,aAAayE,EAAK+M,GAAQhJ,IAOrD,QAASkN,IAA2BC,EAAMC,GAGtC,GAAIjI,GAAMgI,GAAQ5G,KACd8G,EAAMnD,GAAgB/E,EAAKhkB,MAAMmsB,QAAQ,OACzClD,EAAOjpB,KAAKipB,KAAKiD,EAAK,QAAQ,GAC9B1Y,EAAgB,GAAPyV,EAAY,WACV,GAAPA,EAAY,WACL,EAAPA,EAAW,UACJ,EAAPA,EAAW,UACJ,EAAPA,EAAW,UACJ,EAAPA,EAAW,WAAa,WAE5B/M,EAAS+P,IAAYpU,EAAWoU,EAAQzY,IAAWyY,EAAQzY,KAAYyY,EAAQzY,GAEnF,OAAOxT,MAAKwT,OAAO0I,GAAUlc,KAAK8b,aAAasQ,SAAS5Y,EAAQxT,KAAMolB,GAAmBpB,KAG7F,QAASkF,MACL,MAAO,IAAIhT,GAAOlW,MAGtB,QAASsrB,IAAS5nB,EAAO2W,GACrB,GAAIgS,GAAankB,EAASxE,GAASA,EAAQ0hB,GAAmB1hB,EAC9D,OAAM1D,MAAK+a,WAAasR,EAAWtR,WAGnCV,EAAQD,EAAgBhF,EAAYiF,GAAiB,cAARA,GAC/B,gBAAVA,GACQra,MAAQqsB,GAERA,GAAcrsB,KAAKkpB,QAAQiD,QAAQ9R,KANpC,EAUf,QAASkR,IAAU7nB,EAAO2W,GACtB,GAAIgS,GAAankB,EAASxE,GAASA,EAAQ0hB,GAAmB1hB,EAC9D,OAAM1D,MAAK+a,WAAasR,EAAWtR,WAGnCV,EAAQD,EAAgBhF,EAAYiF,GAAiB,cAARA,GAC/B,gBAAVA,GACgBgS,GAARrsB,MAEAA,KAAKkpB,QAAQoD,MAAMjS,IAAUgS,IAN9B,EAUf,QAASE,IAAWhX,EAAMD,EAAI+E,GAC1B,MAAOra,MAAKsrB,QAAQ/V,EAAM8E,IAAUra,KAAKurB,SAASjW,EAAI+E,GAG1D,QAASmS,IAAQ9oB,EAAO2W,GACpB,GACIoS,GADAJ,EAAankB,EAASxE,GAASA,EAAQ0hB,GAAmB1hB,EAE9D,OAAM1D,MAAK+a,WAAasR,EAAWtR,WAGnCV,EAAQD,EAAeC,GAAS,eAClB,gBAAVA,GACQra,QAAUqsB,GAElBI,GAAWJ,GACFrsB,KAAKkpB,QAAQiD,QAAQ9R,IAAWoS,GAAWA,IAAazsB,KAAKkpB,QAAQoD,MAAMjS,MAP7E,EAWf,QAASqS,IAAehpB,EAAO2W,GAC3B,MAAOra,MAAKwsB,OAAO9oB,EAAO2W,IAAUra,KAAKsrB,QAAQ5nB,EAAM2W,GAG3D,QAASsS,IAAgBjpB,EAAO2W,GAC5B,MAAOra,MAAKwsB,OAAO9oB,EAAO2W,IAAUra,KAAKurB,SAAS7nB,EAAM2W,GAG5D,QAAS4O,IAAMvlB,EAAO2W,EAAOuS,GACzB,GAAIC,GACAC,EACAC,EAAO7Q,CAEX,OAAKlc,MAAK+a,WAIV8R,EAAO9D,GAAgBrlB,EAAO1D,MAEzB6sB,EAAK9R,WAIV+R,EAAoD,KAAvCD,EAAKpE,YAAczoB,KAAKyoB,aAErCpO,EAAQD,EAAeC,GAET,SAAVA,GAA8B,UAAVA,GAA+B,YAAVA,GACzC6B,EAAS8Q,GAAUhtB,KAAM6sB,GACX,YAAVxS,EACA6B,GAAkB,EACD,SAAV7B,IACP6B,GAAkB,MAGtB6Q,EAAQ/sB,KAAO6sB,EACf3Q,EAAmB,WAAV7B,EAAqB0S,EAAQ,IACxB,WAAV1S,EAAqB0S,EAAQ,IACnB,SAAV1S,EAAmB0S,EAAQ,KACjB,QAAV1S,GAAmB0S,EAAQD,GAAa,MAC9B,SAAVzS,GAAoB0S,EAAQD,GAAa,OACzCC,GAEDH,EAAU1Q,EAAS5F,EAAS4F,IAvBxB/G,KANAA,IAgCf,QAAS6X,IAAW1mB,EAAGC,GAEnB,GAGI0mB,GAASC,EAHTC,EAA0C,IAAvB5mB,EAAEwX,OAASzX,EAAEyX,SAAiBxX,EAAEyX,QAAU1X,EAAE0X,SAE/DoP,EAAS9mB,EAAE4iB,QAAQlC,IAAImG,EAAgB,SAa3C,OAViB,GAAb5mB,EAAI6mB,GACJH,EAAU3mB,EAAE4iB,QAAQlC,IAAImG,EAAiB,EAAG,UAE5CD,GAAU3mB,EAAI6mB,IAAWA,EAASH,KAElCA,EAAU3mB,EAAE4iB,QAAQlC,IAAImG,EAAiB,EAAG,UAE5CD,GAAU3mB,EAAI6mB,IAAWH,EAAUG,MAG9BD,EAAiBD,GAK9B,QAAS9f,MACL,MAAOpN,MAAKkpB,QAAQzV,OAAO,MAAMD,OAAO,oCAG5C,QAAS6Z,MACL,GAAI7sB,GAAIR,KAAKkpB,QAAQtV,KACrB,OAAI,GAAIpT,EAAEud,QAAUvd,EAAEud,QAAU,KACxBlG,EAAWnS,KAAK0N,UAAU/K,aAEnBrI,KAAKmI,SAASE,cAEd8T,EAAa3b,EAAG,gCAGpB2b,EAAa3b,EAAG,kCAI/B,QAASgT,IAAQ8Z,GACb,GAAIpR,GAASC,EAAanc,KAAMstB,GAAeta,EAAmBua,cAClE,OAAOvtB,MAAK8b,aAAa0R,WAAWtR,GAGxC,QAAS3G,IAAMyW,EAAMyB,GACjB,MAAIztB,MAAK+a,YACC7S,EAAS8jB,IAASA,EAAKjR,WACxBqK,GAAmB4G,GAAMjR,WACvB+O,IAAwBxU,GAAItV,KAAMuV,KAAMyW,IAAOvY,OAAOzT,KAAKyT,UAAUia,UAAUD,GAE/EztB,KAAK8b,aAAaQ,cAIjC,QAASqR,IAASF,GACd,MAAOztB,MAAKuV,KAAK6P,KAAsBqI,GAG3C,QAASnY,IAAI0W,EAAMyB,GACf,MAAIztB,MAAK+a,YACC7S,EAAS8jB,IAASA,EAAKjR,WACxBqK,GAAmB4G,GAAMjR,WACvB+O,IAAwBvU,KAAMvV,KAAMsV,GAAI0W,IAAOvY,OAAOzT,KAAKyT,UAAUia,UAAUD,GAE/EztB,KAAK8b,aAAaQ,cAIjC,QAASsR,IAAOH,GACZ,MAAOztB,MAAKsV,GAAG8P,KAAsBqI,GAMzC,QAASha,IAAQ3J,GACb,GAAI+jB,EAEJ,OAAYlnB,UAARmD,EACO9J,KAAKgW,QAAQoD,OAEpByU,EAAgBpU,EAA0B3P,GACrB,MAAjB+jB,IACA7tB,KAAKgW,QAAU6X,GAEZ7tB,MAef,QAAS8b,MACL,MAAO9b,MAAKgW,QAGhB,QAASmW,IAAS9R,GAId,OAHAA,EAAQD,EAAeC,IAIvB,IAAK,OACDra,KAAKge,MAAM,EAEf,KAAK,UACL,IAAK,QACDhe,KAAKkf,KAAK,EAEd,KAAK,OACL,IAAK,UACL,IAAK,MACDlf,KAAK8nB,MAAM,EAEf,KAAK,OACD9nB,KAAK+nB,QAAQ,EAEjB,KAAK,SACD/nB,KAAKgoB,QAAQ,EAEjB,KAAK,SACDhoB,KAAKioB,aAAa,GAgBtB,MAZc,SAAV5N,GACAra,KAAKmjB,QAAQ,GAEH,YAAV9I,GACAra,KAAK8tB,WAAW,GAIN,YAAVzT,GACAra,KAAKge,MAAqC,EAA/B1Y,KAAKqK,MAAM3P,KAAKge,QAAU,IAGlChe,KAGX,QAASssB,IAAOjS,GAEZ,MADAA,GAAQD,EAAeC,GACT1T,SAAV0T,GAAiC,gBAAVA,EAChBra,KAEJA,KAAKmsB,QAAQ9R,GAAO2M,IAAI,EAAc,YAAV3M,EAAsB,OAASA,GAAQ6P,SAAS,EAAG,MAG1F,QAAS6D,MACL,OAAQ/tB,KAAK6U,GAA4B,KAArB7U,KAAK+V,SAAW,GAGxC,QAASiY,MACL,MAAO1oB,MAAKqK,OAAO3P,KAAO,KAG9B,QAASmI,MACL,MAAOnI,MAAK+V,QAAU,GAAIrQ,OAAM1F,MAAQA,KAAK6U,GAGjD,QAASlL,MACL,GAAInJ,GAAIR,IACR,QAAQQ,EAAEud,OAAQvd,EAAEwd,QAASxd,EAAE0e,OAAQ1e,EAAEslB,OAAQtlB,EAAEmmB,SAAUnmB,EAAEomB,SAAUpmB,EAAEqmB,eAG/E,QAASoH,MACL,GAAIztB,GAAIR,IACR,QACIynB,MAAOjnB,EAAEud,OACTc,OAAQre,EAAEwd,QACVkB,KAAM1e,EAAE0e,OACR4I,MAAOtnB,EAAEsnB,QACTC,QAASvnB,EAAEunB,UACXC,QAASxnB,EAAEwnB,UACXC,aAAcznB,EAAEynB,gBAIxB,QAASiG,MAEL,MAAOluB,MAAK+a,UAAY/a,KAAKqI,cAAgB,KAGjD,QAAS8lB,MACL,MAAOzZ,GAAe1U,MAG1B,QAASouB,MACL,MAAOrnB,MAAWyN,EAAgBxU,OAGtC,QAASquB,MACL,MAAO7Z,GAAgBxU,MAAMiU,SAGjC,QAASqa,MACL,OACI5qB,MAAO1D,KAAK0V,GACZlC,OAAQxT,KAAK2V,GACblC,OAAQzT,KAAKgW,QACbmR,MAAOnnB,KAAK8V,OACZpC,OAAQ1T,KAAKgV,SAcrB,QAASuZ,IAAwB9S,EAAO+S,GACpChT,EAAe,GAAIC,EAAOA,EAAM/U,QAAS,EAAG8nB,GAkChD,QAASC,IAAgB/qB,GACrB,MAAOgrB,IAAqBnuB,KAAKP,KACzB0D,EACA1D,KAAKkjB,OACLljB,KAAKmjB,UACLnjB,KAAK8b,aAAauJ,MAAMzC,IACxB5iB,KAAK8b,aAAauJ,MAAMxC,KAGpC,QAAS8L,IAAmBjrB,GACxB,MAAOgrB,IAAqBnuB,KAAKP,KACzB0D,EAAO1D,KAAK4uB,UAAW5uB,KAAK8tB,aAAc,EAAG,GAGzD,QAASe,MACL,MAAOlL,IAAY3jB,KAAK+d,OAAQ,EAAG,GAGvC,QAAS+Q,MACL,GAAIC,GAAW/uB,KAAK8b,aAAauJ,KACjC,OAAO1B,IAAY3jB,KAAK+d,OAAQgR,EAASnM,IAAKmM,EAASlM,KAG3D,QAAS6L,IAAqBhrB,EAAOwf,EAAMC,EAASP,EAAKC,GACrD,GAAImM,EACJ,OAAa,OAATtrB,EACO+f,GAAWzjB,KAAM4iB,EAAKC,GAAK9E,MAElCiR,EAAcrL,GAAYjgB,EAAOkf,EAAKC,GAClCK,EAAO8L,IACP9L,EAAO8L,GAEJC,GAAW1uB,KAAKP,KAAM0D,EAAOwf,EAAMC,EAASP,EAAKC,IAIhE,QAASoM,IAAWnK,EAAU5B,EAAMC,EAASP,EAAKC,GAC9C,GAAIqM,GAAgBjM,GAAmB6B,EAAU5B,EAAMC,EAASP,EAAKC,GACjE3D,EAAOmD,GAAc6M,EAAcnR,KAAM,EAAGmR,EAAc1L,UAK9D,OAHAxjB,MAAK+d,KAAKmB,EAAKoD,kBACftiB,KAAKge,MAAMkB,EAAKgF,eAChBlkB,KAAKkf,KAAKA,EAAKhB,cACRle,KAoBX,QAASmvB,IAAezrB,GACpB,MAAgB,OAATA,EAAgB4B,KAAKkR,MAAMxW,KAAKge,QAAU,GAAK,GAAKhe,KAAKge,MAAoB,GAAbta,EAAQ,GAAS1D,KAAKge,QAAU,GA4B3G,QAASoR,IAAYtU,GACjB,MAAO2I,IAAW3I,EAAK9a,KAAKqlB,MAAMzC,IAAK5iB,KAAKqlB,MAAMxC,KAAKK,KAQ3D,QAASmM,MACL,MAAOrvB,MAAKqlB,MAAMzC,IAGtB,QAAS0M,MACL,MAAOtvB,MAAKqlB,MAAMxC,IAKtB,QAAS0M,IAAY7rB,GACjB,GAAIwf,GAAOljB,KAAK8b,aAAaoH,KAAKljB,KAClC,OAAgB,OAAT0D,EAAgBwf,EAAOljB,KAAKgnB,IAAqB,GAAhBtjB,EAAQwf,GAAW,KAG/D,QAASsM,IAAe9rB,GACpB,GAAIwf,GAAOO,GAAWzjB,KAAM,EAAG,GAAGkjB,IAClC,OAAgB,OAATxf,EAAgBwf,EAAOljB,KAAKgnB,IAAqB,GAAhBtjB,EAAQwf,GAAW,KA8E/D,QAASuM,IAAa/rB,EAAO+P,GACzB,MAAqB,gBAAV/P,GACAA,EAGNoC,MAAMpC,IAIXA,EAAQ+P,EAAOic,cAAchsB,GACR,gBAAVA,GACAA,EAGJ,MARIgJ,SAAShJ,EAAO,IAc/B,QAASisB,IAAgBnvB,EAAGgT,GACxB,MAAOrM,GAAQnH,KAAK4vB,WAAa5vB,KAAK4vB,UAAUpvB,EAAEkmB,OAC9C1mB,KAAK4vB,UAAU5vB,KAAK4vB,UAAUC,SAAS7f,KAAKwD,GAAU,SAAW,cAAchT,EAAEkmB,OAIzF,QAASoJ,IAAqBtvB,GAC1B,MAAOR,MAAK+vB,eAAevvB,EAAEkmB,OAIjC,QAASsJ,IAAmBxvB,GACxB,MAAOR,MAAKiwB,aAAazvB,EAAEkmB,OAG/B,QAASwJ,IAAqBC,EAAa3c,EAAQE,GAC/C,GAAI7M,GAAGiU,EAAK8B,CASZ,KAPK5c,KAAKowB,iBACNpwB,KAAKowB,kBACLpwB,KAAKqwB,qBACLrwB,KAAKswB,uBACLtwB,KAAKuwB,uBAGJ1pB,EAAI,EAAO,EAAJA,EAAOA,IAAK,CAcpB,GAXAiU,EAAMsK,IAAoB,IAAM,IAAIsB,IAAI7f,GACpC6M,IAAW1T,KAAKuwB,mBAAmB1pB,KACnC7G,KAAKuwB,mBAAmB1pB,GAAK,GAAIsR,QAAO,IAAMnY,KAAKwwB,SAAS1V,EAAK,IAAIxO,QAAQ,IAAK,MAAS,IAAK,KAChGtM,KAAKswB,oBAAoBzpB,GAAK,GAAIsR,QAAO,IAAMnY,KAAKywB,cAAc3V,EAAK,IAAIxO,QAAQ,IAAK,MAAS,IAAK,KACtGtM,KAAKqwB,kBAAkBxpB,GAAK,GAAIsR,QAAO,IAAMnY,KAAK0wB,YAAY5V,EAAK,IAAIxO,QAAQ,IAAK,MAAS,IAAK,MAEjGtM,KAAKowB,eAAevpB,KACrB+V,EAAQ,IAAM5c,KAAKwwB,SAAS1V,EAAK,IAAM,KAAO9a,KAAKywB,cAAc3V,EAAK,IAAM,KAAO9a,KAAK0wB,YAAY5V,EAAK,IACzG9a,KAAKowB,eAAevpB,GAAK,GAAIsR,QAAOyE,EAAMtQ,QAAQ,IAAK,IAAK,MAG5DoH,GAAqB,SAAXF,GAAqBxT,KAAKuwB,mBAAmB1pB,GAAGmJ,KAAKmgB,GAC/D,MAAOtpB,EACJ,IAAI6M,GAAqB,QAAXF,GAAoBxT,KAAKswB,oBAAoBzpB,GAAGmJ,KAAKmgB,GACtE,MAAOtpB,EACJ,IAAI6M,GAAqB,OAAXF,GAAmBxT,KAAKqwB,kBAAkBxpB,GAAGmJ,KAAKmgB,GACnE,MAAOtpB,EACJ,KAAK6M,GAAU1T,KAAKowB,eAAevpB,GAAGmJ,KAAKmgB,GAC9C,MAAOtpB,IAOnB,QAAS8pB,IAAiBjtB,GACtB,IAAK1D,KAAK+a,UACN,MAAgB,OAATrX,EAAgB1D,KAAOmV,GAElC,IAAIuR,GAAM1mB,KAAK8V,OAAS9V,KAAK6U,GAAGmO,YAAchjB,KAAK6U,GAAG+b,QACtD,OAAa,OAATltB,GACAA,EAAQ+rB,GAAa/rB,EAAO1D,KAAK8b,cAC1B9b,KAAKgnB,IAAItjB,EAAQgjB,EAAK,MAEtBA,EAIf,QAASmK,IAAuBntB,GAC5B,IAAK1D,KAAK+a,UACN,MAAgB,OAATrX,EAAgB1D,KAAOmV,GAElC,IAAIgO,IAAWnjB,KAAK0mB,MAAQ,EAAI1mB,KAAK8b,aAAauJ,MAAMzC,KAAO,CAC/D,OAAgB,OAATlf,EAAgByf,EAAUnjB,KAAKgnB,IAAItjB,EAAQyf,EAAS,KAG/D,QAAS2N,IAAoBptB,GACzB,MAAK1D,MAAK+a,UAMM,MAATrX,EAAgB1D,KAAK0mB,OAAS,EAAI1mB,KAAK0mB,IAAI1mB,KAAK0mB,MAAQ,EAAIhjB,EAAQA,EAAQ,GAL/D,MAATA,EAAgB1D,KAAOmV,IA4BtC,QAAS4b,IAAiBrtB,GACtB,GAAI8f,GAAYle,KAAKgkB,OAAOtpB,KAAKkpB,QAAQiD,QAAQ,OAASnsB,KAAKkpB,QAAQiD,QAAQ,SAAW,OAAS,CACnG,OAAgB,OAATzoB,EAAgB8f,EAAYxjB,KAAKgnB,IAAKtjB,EAAQ8f,EAAY,KAKrE,QAASwN,MACL,MAAOhxB,MAAK8nB,QAAU,IAAM,GAwBhC,QAAS/B,IAAUtK,EAAOwV,GACtBzV,EAAeC,EAAO,EAAG,EAAG,WACxB,MAAOzb,MAAK8b,aAAaiK,SAAS/lB,KAAK8nB,QAAS9nB,KAAK+nB,UAAWkJ,KAaxE,QAASC,IAAenU,EAAUtJ,GAC9B,MAAOA,GAAO0d,eAqDlB,QAASC,IAAY1tB,GAGjB,MAAiD,OAAxCA,EAAQ,IAAIkV,cAAcyY,OAAO,GAI9C,QAASC,IAAgBxJ,EAAOC,EAASwJ,GACrC,MAAIzJ,GAAQ,GACDyJ,EAAU,KAAO,KAEjBA,EAAU,KAAO,KA+FhC,QAASC,IAAQ9tB,EAAOkG,GACpBA,EAAM6W,IAAehK,EAAuB,KAAhB,KAAO/S,IAiBvC,QAAS+tB,MACL,MAAOzxB,MAAK8V,OAAS,MAAQ,GAGjC,QAAS4b,MACL,MAAO1xB,MAAK8V,OAAS,6BAA+B,GA4GxD,QAAS6b,IAAoBjuB,GACzB,MAAO0hB,IAA2B,IAAR1hB,GAG9B,QAASkuB,MACL,MAAOxM,IAAmBlS,MAAM,KAAMzM,WAAWorB,YAYrD,QAASC,IAA2BhoB,EAAKgR,EAAKkJ,GAC1C,GAAI9H,GAASlc,KAAK+xB,UAAUjoB,EAC5B,OAAO+N,GAAWqE,GAAUA,EAAO3b,KAAKua,EAAKkJ,GAAO9H,EAYxD,QAASM,IAAgB1S,GACrB,GAAI0J,GAASxT,KAAKgyB,gBAAgBloB,GAC9BmoB,EAAcjyB,KAAKgyB,gBAAgBloB,EAAIooB,cAE3C,OAAI1e,KAAWye,EACJze,GAGXxT,KAAKgyB,gBAAgBloB,GAAOmoB,EAAY3lB,QAAQ,mBAAoB,SAAUkJ,GAC1E,MAAOA,GAAInI,MAAM,KAGdrN,KAAKgyB,gBAAgBloB,IAKhC,QAASwS,MACL,MAAOtc,MAAKmyB,aAMhB,QAASxW,IAASpF,GACd,MAAOvW,MAAKoyB,SAAS9lB,QAAQ,KAAMiK,GAGvC,QAAS8b,IAAoBhR,GACzB,MAAOA,GAmBX,QAASiR,IAAwB/b,EAAQkX,EAAepM,EAAQkR,GAC5D,GAAIrW,GAASlc,KAAKwyB,cAAcnR,EAChC,OAAQxJ,GAAWqE,GACfA,EAAO3F,EAAQkX,EAAepM,EAAQkR,GACtCrW,EAAO5P,QAAQ,MAAOiK,GAG9B,QAASkc,IAAYxJ,EAAM/M,GACvB,GAAI1I,GAASxT,KAAKwyB,cAAcvJ,EAAO,EAAI,SAAW,OACtD,OAAOpR,GAAWrE,GAAUA,EAAO0I,GAAU1I,EAAOlH,QAAQ,MAAO4P,GAoDvE,QAASwW,IAAYlf,EAAQjK,EAAO6H,EAAOuhB,GACvC,GAAIlf,GAASgG,IACT7F,EAAML,IAAwBmF,IAAIia,EAAQppB,EAC9C,OAAOkK,GAAOrC,GAAOwC,EAAKJ,GAG9B,QAASof,IAAMpf,EAAQjK,EAAO6H,EAAOyhB,EAAOF,GAQxC,GAPsB,gBAAXnf,KACPjK,EAAQiK,EACRA,EAAS7M,QAGb6M,EAASA,GAAU,GAEN,MAATjK,EACA,MAAOmpB,IAAWlf,EAAQjK,EAAO6H,EAAOuhB,EAG5C,IAAI9rB,GACAisB,IACJ,KAAKjsB,EAAI,EAAOgsB,EAAJhsB,EAAWA,IACnBisB,EAAIjsB,GAAK6rB,GAAWlf,EAAQ3M,EAAGuK,EAAOuhB,EAE1C,OAAOG,GAGX,QAASC,IAAmBvf,EAAQjK,GAChC,MAAOqpB,IAAKpf,EAAQjK,EAAO,SAAU,GAAI,SAG7C,QAASypB,IAAwBxf,EAAQjK,GACrC,MAAOqpB,IAAKpf,EAAQjK,EAAO,cAAe,GAAI,SAGlD,QAAS0pB,IAAqBzf,EAAQjK,GAClC,MAAOqpB,IAAKpf,EAAQjK,EAAO,WAAY,EAAG,OAG9C,QAAS2pB,IAA0B1f,EAAQjK,GACvC,MAAOqpB,IAAKpf,EAAQjK,EAAO,gBAAiB,EAAG,OAGnD,QAAS4pB,IAAwB3f,EAAQjK,GACrC,MAAOqpB,IAAKpf,EAAQjK,EAAO,cAAe,EAAG,OAqBjD,QAAS6pB,MACL,GAAI5Z,GAAiBxZ,KAAKooB,KAa1B,OAXApoB,MAAKkoB,cAAgBmL,GAAQrzB,KAAKkoB,eAClCloB,KAAKmoB,MAAgBkL,GAAQrzB,KAAKmoB,OAClCnoB,KAAKoe,QAAgBiV,GAAQrzB,KAAKoe,SAElC5E,EAAKyO,aAAgBoL,GAAQ7Z,EAAKyO,cAClCzO,EAAKwO,QAAgBqL,GAAQ7Z,EAAKwO,SAClCxO,EAAKuO,QAAgBsL,GAAQ7Z,EAAKuO,SAClCvO,EAAKsO,MAAgBuL,GAAQ7Z,EAAKsO,OAClCtO,EAAKqF,OAAgBwU,GAAQ7Z,EAAKqF,QAClCrF,EAAKiO,MAAgB4L,GAAQ7Z,EAAKiO,OAE3BznB,KAGX,QAASszB,IAAoC9L,EAAU9jB,EAAO0B,EAAOsmB,GACjE,GAAI5kB,GAAQgjB,GAAuBpmB,EAAO0B,EAM1C,OAJAoiB,GAASU,eAAiBwD,EAAY5kB,EAAMohB,cAC5CV,EAASW,OAAiBuD,EAAY5kB,EAAMqhB,MAC5CX,EAASpJ,SAAiBsN,EAAY5kB,EAAMsX,QAErCoJ,EAASa,UAIpB,QAASkL,IAA4B7vB,EAAO0B,GACxC,MAAOkuB,IAAmCtzB,KAAM0D,EAAO0B,EAAO,GAIlE,QAASouB,IAAiC9vB,EAAO0B,GAC7C,MAAOkuB,IAAmCtzB,KAAM0D,EAAO0B,EAAO,IAGlE,QAASquB,IAASld,GACd,MAAa,GAATA,EACOjR,KAAKqK,MAAM4G,GAEXjR,KAAKkR,KAAKD,GAIzB,QAASmd,MACL,GAII1L,GAASD,EAASD,EAAOL,EAAOkM,EAJhC1L,EAAejoB,KAAKkoB,cACpBL,EAAe7nB,KAAKmoB,MACpBtJ,EAAe7e,KAAKoe,QACpB5E,EAAexZ,KAAKooB,KAwCxB,OAnCOH,IAAgB,GAAKJ,GAAQ,GAAKhJ,GAAU,GAC1B,GAAhBoJ,GAA6B,GAARJ,GAAuB,GAAVhJ,IACvCoJ,GAAuD,MAAvCwL,GAAQG,GAAa/U,GAAUgJ,GAC/CA,EAAO,EACPhJ,EAAS,GAKbrF,EAAKyO,aAAeA,EAAe,IAEnCD,EAAoB1R,EAAS2R,EAAe,KAC5CzO,EAAKwO,QAAeA,EAAU,GAE9BD,EAAoBzR,EAAS0R,EAAU,IACvCxO,EAAKuO,QAAeA,EAAU,GAE9BD,EAAoBxR,EAASyR,EAAU,IACvCvO,EAAKsO,MAAeA,EAAQ,GAE5BD,GAAQvR,EAASwR,EAAQ,IAGzB6L,EAAiBrd,EAASud,GAAahM,IACvChJ,GAAU8U,EACV9L,GAAQ4L,GAAQG,GAAaD,IAG7BlM,EAAQnR,EAASuI,EAAS,IAC1BA,GAAU,GAEVrF,EAAKqO,KAASA,EACdrO,EAAKqF,OAASA,EACdrF,EAAKiO,MAASA,EAEPznB,KAGX,QAAS6zB,IAAchM,GAGnB,MAAc,MAAPA,EAAc,OAGzB,QAAS+L,IAAc/U,GAEnB,MAAgB,QAATA,EAAkB,KAG7B,QAASiV,IAAIzZ,GACT,GAAIwN,GACAhJ,EACAoJ,EAAejoB,KAAKkoB,aAIxB,IAFA7N,EAAQD,EAAeC,GAET,UAAVA,GAA+B,SAAVA,EAGrB,MAFAwN,GAAS7nB,KAAKmoB,MAAUF,EAAe,MACvCpJ,EAAS7e,KAAKoe,QAAUyV,GAAahM,GACpB,UAAVxN,EAAoBwE,EAASA,EAAS,EAI7C,QADAgJ,EAAO7nB,KAAKmoB,MAAQ7iB,KAAKgkB,MAAMsK,GAAa5zB,KAAKoe,UACzC/D,GACJ,IAAK,OAAW,MAAOwN,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,MAAO3iB,MAAKqK,MAAa,MAAPkY,GAAgBI,CACtD,SAAS,KAAM,IAAI7gB,OAAM,gBAAkBiT,IAMvD,QAAS0Z,MACL,MACI/zB,MAAKkoB,cACQ,MAAbloB,KAAKmoB,MACJnoB,KAAKoe,QAAU,GAAM,OACK,QAA3B3H,EAAMzW,KAAKoe,QAAU,IAI7B,QAAS4V,IAAQC,GACb,MAAO,YACH,MAAOj0B,MAAK8zB,GAAGG,IAavB,QAASC,IAAmB7Z,GAExB,MADAA,GAAQD,EAAeC,GAChBra,KAAKqa,EAAQ,OAGxB,QAAS8Z,IAAWxc,GAChB,MAAO,YACH,MAAO3X,MAAKooB,MAAMzQ,IAY1B,QAASiQ,MACL,MAAOtR,GAAStW,KAAK6nB,OAAS,GAalC,QAASuM,IAAkB/S,EAAQ9K,EAAQkX,EAAe8E,EAAU9e,GAChE,MAAOA,GAAO4gB,aAAa9d,GAAU,IAAKkX,EAAepM,EAAQkR,GAGrE,QAAS+B,IAAiCC,EAAgB9G,EAAeha,GACrE,GAAI+T,GAAWsC,GAAuByK,GAAgBrd,MAClD8Q,EAAWsB,GAAM9B,EAASsM,GAAG,MAC7B/L,EAAWuB,GAAM9B,EAASsM,GAAG,MAC7BhM,EAAWwB,GAAM9B,EAASsM,GAAG,MAC7BjM,EAAWyB,GAAM9B,EAASsM,GAAG,MAC7BjV,EAAWyK,GAAM9B,EAASsM,GAAG,MAC7BrM,EAAW6B,GAAM9B,EAASsM,GAAG,MAE7BxtB,EAAI0hB,EAAUwM,GAAW1mB,IAAM,IAAKka,IACrB,GAAXD,IAA2B,MAC3BA,EAAUyM,GAAWh0B,IAAM,KAAMunB,IACtB,GAAXD,IAA2B,MAC3BA,EAAU0M,GAAW3mB,IAAM,KAAMia,IACtB,GAAXD,IAA2B,MAC3BA,EAAU2M,GAAW7lB,IAAM,KAAMkZ,IACtB,GAAXhJ,IAA2B,MAC3BA,EAAU2V,GAAWvS,IAAM,KAAMpD,IACtB,GAAX4I,IAA2B,OAAmB,KAAMA,EAK5D,OAHAnhB,GAAE,GAAKmnB,EACPnnB,EAAE,IAAMiuB,EAAiB,EACzBjuB,EAAE,GAAKmN,EACA2gB,GAAkBlhB,MAAM,KAAM5M,GAIzC,QAASmuB,IAAgDC,EAAWC,GAChE,MAA8BhuB,UAA1B6tB,GAAWE,IACJ,EAEG/tB,SAAVguB,EACOH,GAAWE,IAEtBF,GAAWE,GAAaC,GACjB,GAGX,QAASjH,IAAUkH,GACf,GAAInhB,GAASzT,KAAK8b,aACdI,EAASoY,GAAgCt0B,MAAO40B,EAAYnhB,EAMhE,OAJImhB,KACA1Y,EAASzI,EAAOgf,YAAYzyB,KAAMkc,IAG/BzI,EAAO+Z,WAAWtR,GAK7B,QAAS2Y,MAQL,GAGI9M,GAASD,EAAOL,EAHhBO,EAAU8M,GAAgB90B,KAAKkoB,eAAiB,IAChDL,EAAeiN,GAAgB90B,KAAKmoB,OACpCtJ,EAAeiW,GAAgB90B,KAAKoe,QAIxC2J,GAAoBzR,EAAS0R,EAAU,IACvCF,EAAoBxR,EAASyR,EAAU,IACvCC,GAAW,GACXD,GAAW,GAGXN,EAASnR,EAASuI,EAAS,IAC3BA,GAAU,EAIV,IAAIkW,GAAItN,EACJxF,EAAIpD,EACJmW,EAAInN,EACJha,EAAIia,EACJtnB,EAAIunB,EACJja,EAAIka,EACJ7iB,EAAQnF,KAAKi1B,WAEjB,OAAK9vB,IAMW,EAARA,EAAY,IAAM,IACtB,KACC4vB,EAAIA,EAAI,IAAM,KACd9S,EAAIA,EAAI,IAAM,KACd+S,EAAIA,EAAI,IAAM,KACbnnB,GAAKrN,GAAKsN,EAAK,IAAM,KACtBD,EAAIA,EAAI,IAAM,KACdrN,EAAIA,EAAI,IAAM,KACdsN,EAAIA,EAAI,IAAM,IAXR,MAl/Gf,GAAImF,IAqHAgD,GAAmBjD,EAAmBiD,oBAiDtCG,IAAmB,EAwEnBwB,KASJ5E,GAAmBsE,6BAA8B,CAmDjD,IACI6B,IADAD,MA4JAiB,MA4EA8B,GAAmB,mLAEnBQ,GAAwB,6CAExBJ,MAEAR,MAoFAqZ,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,WAEjB1L,GAAiB,qBACjBT,GAAmB,0BAEnBoM,GAAiB,uBAIjBC,GAAY,mHAGZlZ,MA2BAW,MA8BA4C,GAAO,EACPF,GAAQ,EACRC,GAAO,EACPE,GAAO,EACPC,GAAS,EACTC,GAAS,EACTC,GAAc,EACdG,GAAO,EACPE,GAAU,CAQdtF,GAAe,KAAM,KAAM,GAAI,KAAM,WACjC,MAAOxb,MAAKge,QAAU,IAG1BxC,EAAe,MAAO,EAAG,EAAG,SAAUhI,GAClC,MAAOxT,MAAK8b,aAAagD,YAAY9e,KAAMwT,KAG/CgI,EAAe,OAAQ,EAAG,EAAG,SAAUhI,GACnC,MAAOxT,MAAK8b,aAAa+C,OAAO7e,KAAMwT,KAK1CuG,EAAa,QAAS,KAItB4C,EAAc,IAAQ4Y,IACtB5Y,EAAc,KAAQ4Y,GAAWJ,IACjCxY,EAAc,MAAQ,SAAUI,EAAUtJ,GACtC,MAAOA,GAAO4L,iBAAiBtC,KAEnCJ,EAAc,OAAQ,SAAUI,EAAUtJ,GACtC,MAAOA,GAAOiM,YAAY3C,KAG9BS,GAAe,IAAK,MAAO,SAAU9Z,EAAOkG,GACxCA,EAAMuW,IAAS1J,EAAM/S,GAAS,IAGlC8Z,GAAe,MAAO,QAAS,SAAU9Z,EAAOkG,EAAOuM,EAAQsF,GAC3D,GAAIuC,GAAQ7H,EAAOH,QAAQiJ,YAAYvb,EAAO+X,EAAOtF,EAAOnB,QAE/C,OAATgJ,EACApU,EAAMuW,IAASnC,EAEfxJ,EAAgB2B,GAAQ/B,aAAe1Q,GAM/C,IAAI2a,IAAmB,iCACnB4X,GAAsB,wFAAwF7sB,MAAM,KAMpH8sB,GAA2B,kDAAkD9sB,MAAM,KA8EnF+sB,GAA0BH,GAiB1BI,GAAqBJ,GAiFrB1U,GAAmB,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,qBAuEtB7O,GAAmB8O,wBAA0BtK,EACzC,4LAIA,SAAUrB,GACNA,EAAOtB,GAAK,GAAInP,MAAKyQ,EAAOT,IAAMS,EAAO8N,QAAU,OAAS,OA4BpEzI,EAAe,IAAK,EAAG,EAAG,WACtB,GAAIwG,GAAIhiB,KAAK+d,MACb,OAAY,OAALiE,EAAY,GAAKA,EAAI,IAAMA,IAGtCxG,EAAe,GAAI,KAAM,GAAI,EAAG,WAC5B,MAAOxb,MAAK+d,OAAS,MAGzBvC,EAAe,GAAI,OAAU,GAAU,EAAG,QAC1CA,EAAe,GAAI,QAAU,GAAU,EAAG,QAC1CA,EAAe,GAAI,SAAU,GAAG,GAAO,EAAG,QAI1CzB,EAAa,OAAQ,KAIrB4C,EAAc,IAAUmZ,IACxBnZ,EAAc,KAAU4Y,GAAWJ,IACnCxY,EAAc,OAAUgZ,GAAWN,IACnC1Y,EAAc,QAAUiZ,GAAWN,IACnC3Y,EAAc,SAAUiZ,GAAWN,IAEnC9X,GAAe,QAAS,UAAW6C,IACnC7C,EAAc,OAAQ,SAAU9Z,EAAOkG,GACnCA,EAAMyW,IAAyB,IAAjB3c,EAAMgD,OAAesM,EAAmBqjB,kBAAkB3yB,GAAS+S,EAAM/S,KAE3F8Z,EAAc,KAAM,SAAU9Z,EAAOkG,GACjCA,EAAMyW,IAAQrN,EAAmBqjB,kBAAkB3yB,KAEvD8Z,EAAc,IAAK,SAAU9Z,EAAOkG,GAChCA,EAAMyW,IAAQ3T,SAAShJ,EAAO,MAelCsP,EAAmBqjB,kBAAoB,SAAU3yB,GAC7C,MAAO+S,GAAM/S,IAAU+S,EAAM/S,GAAS,GAAK,KAAO,KAKtD,IAAI4yB,IAAa5b,EAAW,YAAY,EAgNxC1H,GAAmBuS,SAAW,YAkP9B,IAAIgR,IAAe/e,EACd,mGACA,WACI,GAAI1Q,GAAQse,GAAmBlS,MAAM,KAAMzM,UAC3C,OAAIzG,MAAK+a,WAAajU,EAAMiU,UACT/a,KAAR8G,EAAe9G,KAAO8G,EAEtBoO,MAKhBshB,GAAehf,EACf,mGACA,WACI,GAAI1Q,GAAQse,GAAmBlS,MAAM,KAAMzM,UAC3C,OAAIzG,MAAK+a,WAAajU,EAAMiU,UACjBjU,EAAQ9G,KAAOA,KAAO8G,EAEtBoO,MAwCf8O,GAAM,WACN,MAAOte,MAAKse,IAAMte,KAAKse,OAAS,GAAKte,MAwDzC6iB,IAAO,IAAK,KACZA,GAAO,KAAM,IAIb5L,EAAc,IAAMgN,IACpBhN,EAAc,KAAMgN,IACpBnM,GAAe,IAAK,MAAO,SAAU9Z,EAAOkG,EAAOuM,GAC/CA,EAAO8N,SAAU,EACjB9N,EAAON,KAAO6S,GAAiBiB,GAAkBjmB,IAQrD,IAAIolB,IAAc,iBAoClB9V,GAAmBqD,aAAe,YA0IlC,IAAIyU,IAAc,8DAKdC,GAAW,+HA+DfjB,IAAuB9f,GAAKud,GAASnU,SA8FrC,IAAIqjB,IAAyBhL,GAAY,EAAG,OACxCiL,GAAyBjL,GAAY,GAAI,WAuI7CzY,GAAmBua,cAAgB,sBAsEnC,IAAIoJ,IAAOnf,EACP,kJACA,SAAU1N,GACN,MAAYnD,UAARmD,EACO9J,KAAK8b,aAEL9b,KAAKyT,OAAO3J,IAuH/B0R,GAAe,GAAI,KAAM,GAAI,EAAG,WAC5B,MAAOxb,MAAK8kB,WAAa,MAG7BtJ,EAAe,GAAI,KAAM,GAAI,EAAG,WAC5B,MAAOxb,MAAK42B,cAAgB,MAOhCrI,GAAuB,OAAY,YACnCA,GAAuB,QAAY,YACnCA,GAAuB,OAAS,eAChCA,GAAuB,QAAS,eAIhCxU,EAAa,WAAY,MACzBA,EAAa,cAAe,MAI5B4C,EAAc,IAAUmZ,IACxBnZ,EAAc,IAAUmZ,IACxBnZ,EAAc,KAAU4Y,GAAWJ,IACnCxY,EAAc,KAAU4Y,GAAWJ,IACnCxY,EAAc,OAAUgZ,GAAWN,IACnC1Y,EAAc,OAAUgZ,GAAWN,IACnC1Y,EAAc,QAAUiZ,GAAWN,IACnC3Y,EAAc,QAAUiZ,GAAWN,IAEnC5X,IAAmB,OAAQ,QAAS,OAAQ,SAAU,SAAUha,EAAOwf,EAAM/M,EAAQsF,GACjFyH,EAAKzH,EAAM1O,OAAO,EAAG,IAAM0J,EAAM/S,KAGrCga,IAAmB,KAAM,MAAO,SAAUha,EAAOwf,EAAM/M,EAAQsF,GAC3DyH,EAAKzH,GAASzI,EAAmBqjB,kBAAkB3yB,KAqDvD8X,EAAe,IAAK,EAAG,KAAM,WAI7BzB,EAAa,UAAW,KAIxB4C,EAAc,IAAKuY,IACnB1X,EAAc,IAAK,SAAU9Z,EAAOkG,GAChCA,EAAMuW,IAA8B,GAApB1J,EAAM/S,GAAS,KAWnC8X,EAAe,KAAM,KAAM,GAAI,KAAM,QACrCA,EAAe,KAAM,KAAM,GAAI,KAAM,WAIrCzB,EAAa,OAAQ,KACrBA,EAAa,UAAW,KAIxB4C,EAAc,IAAM4Y,IACpB5Y,EAAc,KAAM4Y,GAAWJ,IAC/BxY,EAAc,IAAM4Y,IACpB5Y,EAAc,KAAM4Y,GAAWJ,IAE/BzX,IAAmB,IAAK,KAAM,IAAK,MAAO,SAAUha,EAAOwf,EAAM/M,EAAQsF,GACrEyH,EAAKzH,EAAM1O,OAAO,EAAG,IAAM0J,EAAM/S,IAWrC,IAAImzB,KACAjU,IAAM,EACNC,IAAM,EAyBVrH,GAAe,KAAM,KAAM,GAAI,KAAM,QAIrCzB,EAAa,OAAQ,KAIrB4C,EAAc,IAAM4Y,IACpB5Y,EAAc,KAAM4Y,GAAWJ,IAC/BxY,EAAc,KAAM,SAAUI,EAAUtJ,GACpC,MAAOsJ,GAAWtJ,EAAO2E,cAAgB3E,EAAOyE,uBAGpDsF,GAAe,IAAK,MAAO4C,IAC3B5C,EAAc,KAAM,SAAU9Z,EAAOkG,GACjCA,EAAMwW,IAAQ3J,EAAM/S,EAAMiC,MAAM4vB,IAAW,GAAI,KAKnD,IAAIuB,IAAmBpc,EAAW,QAAQ,EAI1Cc,GAAe,IAAK,EAAG,KAAM,OAE7BA,EAAe,KAAM,EAAG,EAAG,SAAUhI,GACjC,MAAOxT,MAAK8b,aAAa4U,YAAY1wB,KAAMwT,KAG/CgI,EAAe,MAAO,EAAG,EAAG,SAAUhI,GAClC,MAAOxT,MAAK8b,aAAa2U,cAAczwB,KAAMwT,KAGjDgI,EAAe,OAAQ,EAAG,EAAG,SAAUhI,GACnC,MAAOxT,MAAK8b,aAAa0U,SAASxwB,KAAMwT,KAG5CgI,EAAe,IAAK,EAAG,EAAG,WAC1BA,EAAe,IAAK,EAAG,EAAG,cAI1BzB,EAAa,MAAO,KACpBA,EAAa,UAAW,KACxBA,EAAa,aAAc,KAI3B4C,EAAc,IAAQ4Y,IACtB5Y,EAAc,IAAQ4Y,IACtB5Y,EAAc,IAAQ4Y,IACtB5Y,EAAc,KAAQqZ,IACtBrZ,EAAc,MAAQqZ,IACtBrZ,EAAc,OAAQqZ,IAEtBtY,IAAmB,KAAM,MAAO,QAAS,SAAUha,EAAOwf,EAAM/M,EAAQsF,GACpE,GAAI0H,GAAUhN,EAAOH,QAAQ0Z,cAAchsB,EAAO+X,EAAOtF,EAAOnB,QAEjD,OAAXmO,EACAD,EAAKvU,EAAIwU,EAET3O,EAAgB2B,GAAQpB,eAAiBrR,IAIjDga,IAAmB,IAAK,IAAK,KAAM,SAAUha,EAAOwf,EAAM/M,EAAQsF,GAC9DyH,EAAKzH,GAAShF,EAAM/S,IAwBxB,IAAIqzB,IAAwB,2DAA2D3tB,MAAM,KAMzF4tB,GAA6B,8BAA8B5tB,MAAM,KAKjE6tB,GAA2B,uBAAuB7tB,MAAM,IA4E5DoS,GAAe,OAAQ,OAAQ,GAAI,OAAQ,aAI3CzB,EAAa,YAAa,OAI1B4C,EAAc,MAAQ+Y,IACtB/Y,EAAc,OAAQyY,IACtB5X,GAAe,MAAO,QAAS,SAAU9Z,EAAOkG,EAAOuM,GACnDA,EAAOsO,WAAahO,EAAM/S,KAkB9B8X,EAAe,KAAM,KAAM,GAAI,EAAG,QAClCA,EAAe,KAAM,KAAM,GAAI,EAAGwV,IAElCxV,EAAe,MAAO,EAAG,EAAG,WACxB,MAAO,GAAKwV,GAAQ9d,MAAMlT,MAAQib,EAASjb,KAAK+nB,UAAW,KAG/DvM,EAAe,QAAS,EAAG,EAAG,WAC1B,MAAO,GAAKwV,GAAQ9d,MAAMlT,MAAQib,EAASjb,KAAK+nB,UAAW,GACvD9M,EAASjb,KAAKgoB,UAAW,KAGjCxM,EAAe,MAAO,EAAG,EAAG,WACxB,MAAO,GAAKxb,KAAK8nB,QAAU7M,EAASjb,KAAK+nB,UAAW,KAGxDvM,EAAe,QAAS,EAAG,EAAG,WAC1B,MAAO,GAAKxb,KAAK8nB,QAAU7M,EAASjb,KAAK+nB,UAAW,GAChD9M,EAASjb,KAAKgoB,UAAW,KASjCjC,GAAS,KAAK,GACdA,GAAS,KAAK,GAIdhM,EAAa,OAAQ,KAQrB4C,EAAc,IAAMuU,IACpBvU,EAAc,IAAMuU,IACpBvU,EAAc,IAAM4Y,IACpB5Y,EAAc,IAAM4Y,IACpB5Y,EAAc,KAAM4Y,GAAWJ,IAC/BxY,EAAc,KAAM4Y,GAAWJ,IAE/BxY,EAAc,MAAO6Y,IACrB7Y,EAAc,QAAS8Y,IACvB9Y,EAAc,MAAO6Y,IACrB7Y,EAAc,QAAS8Y,IAEvBjY,GAAe,IAAK,MAAO8C,IAC3B9C,GAAe,IAAK,KAAM,SAAU9Z,EAAOkG,EAAOuM,GAC9CA,EAAO+gB,MAAQ/gB,EAAOH,QAAQkQ,KAAKxiB,GACnCyS,EAAO0P,UAAYniB,IAEvB8Z,GAAe,IAAK,MAAO,SAAU9Z,EAAOkG,EAAOuM,GAC/CvM,EAAM0W,IAAQ7J,EAAM/S,GACpB8Q,EAAgB2B,GAAQlB,SAAU,IAEtCuI,EAAc,MAAO,SAAU9Z,EAAOkG,EAAOuM,GACzC,GAAIghB,GAAMzzB,EAAMgD,OAAS,CACzBkD,GAAM0W,IAAQ7J,EAAM/S,EAAMqJ,OAAO,EAAGoqB,IACpCvtB,EAAM2W,IAAU9J,EAAM/S,EAAMqJ,OAAOoqB,IACnC3iB,EAAgB2B,GAAQlB,SAAU,IAEtCuI,EAAc,QAAS,SAAU9Z,EAAOkG,EAAOuM,GAC3C,GAAIihB,GAAO1zB,EAAMgD,OAAS,EACtB2wB,EAAO3zB,EAAMgD,OAAS,CAC1BkD,GAAM0W,IAAQ7J,EAAM/S,EAAMqJ,OAAO,EAAGqqB,IACpCxtB,EAAM2W,IAAU9J,EAAM/S,EAAMqJ,OAAOqqB,EAAM,IACzCxtB,EAAM4W,IAAU/J,EAAM/S,EAAMqJ,OAAOsqB,IACnC7iB,EAAgB2B,GAAQlB,SAAU,IAEtCuI,EAAc,MAAO,SAAU9Z,EAAOkG,EAAOuM,GACzC,GAAIghB,GAAMzzB,EAAMgD,OAAS,CACzBkD,GAAM0W,IAAQ7J,EAAM/S,EAAMqJ,OAAO,EAAGoqB,IACpCvtB,EAAM2W,IAAU9J,EAAM/S,EAAMqJ,OAAOoqB,MAEvC3Z,EAAc,QAAS,SAAU9Z,EAAOkG,EAAOuM,GAC3C,GAAIihB,GAAO1zB,EAAMgD,OAAS,EACtB2wB,EAAO3zB,EAAMgD,OAAS,CAC1BkD,GAAM0W,IAAQ7J,EAAM/S,EAAMqJ,OAAO,EAAGqqB,IACpCxtB,EAAM2W,IAAU9J,EAAM/S,EAAMqJ,OAAOqqB,EAAM,IACzCxtB,EAAM4W,IAAU/J,EAAM/S,EAAMqJ,OAAOsqB,KAWvC,IAAIC,IAA6B,gBAgB7BC,GAAa7c,EAAW,SAAS,EAIrCc,GAAe,KAAM,KAAM,GAAI,EAAG,UAIlCzB,EAAa,SAAU,KAIvB4C,EAAc,IAAM4Y,IACpB5Y,EAAc,KAAM4Y,GAAWJ,IAC/B3X,GAAe,IAAK,MAAO+C,GAI3B,IAAIiX,IAAe9c,EAAW,WAAW,EAIzCc,GAAe,KAAM,KAAM,GAAI,EAAG,UAIlCzB,EAAa,SAAU,KAIvB4C,EAAc,IAAM4Y,IACpB5Y,EAAc,KAAM4Y,GAAWJ,IAC/B3X,GAAe,IAAK,MAAOgD,GAI3B,IAAIiX,IAAe/c,EAAW,WAAW,EAIzCc,GAAe,IAAK,EAAG,EAAG,WACtB,SAAUxb,KAAK6mB,cAAgB,OAGnCrL,EAAe,GAAI,KAAM,GAAI,EAAG,WAC5B,SAAUxb,KAAK6mB,cAAgB,MAGnCrL,EAAe,GAAI,MAAO,GAAI,EAAG,eACjCA,EAAe,GAAI,OAAQ,GAAI,EAAG,WAC9B,MAA4B,IAArBxb,KAAK6mB,gBAEhBrL,EAAe,GAAI,QAAS,GAAI,EAAG,WAC/B,MAA4B,KAArBxb,KAAK6mB,gBAEhBrL,EAAe,GAAI,SAAU,GAAI,EAAG,WAChC,MAA4B,KAArBxb,KAAK6mB,gBAEhBrL,EAAe,GAAI,UAAW,GAAI,EAAG,WACjC,MAA4B,KAArBxb,KAAK6mB,gBAEhBrL,EAAe,GAAI,WAAY,GAAI,EAAG,WAClC,MAA4B,KAArBxb,KAAK6mB,gBAEhBrL,EAAe,GAAI,YAAa,GAAI,EAAG,WACnC,MAA4B,KAArBxb,KAAK6mB,gBAMhB9M,EAAa,cAAe,MAI5B4C,EAAc,IAAQ+Y,GAAWR,IACjCvY,EAAc,KAAQ+Y,GAAWP,IACjCxY,EAAc,MAAQ+Y,GAAWN,GAEjC,IAAI3Z,GACJ,KAAKA,GAAQ,OAAQA,GAAM/U,QAAU,EAAG+U,IAAS,IAC7CkB,EAAclB,GAAOoa,GAOzB,KAAKpa,GAAQ,IAAKA,GAAM/U,QAAU,EAAG+U,IAAS,IAC1C+B,EAAc/B,GAAO+V,GAIzB,IAAIkG,IAAoBhd,EAAW,gBAAgB,EAInDc,GAAe,IAAM,EAAG,EAAG,YAC3BA,EAAe,KAAM,EAAG,EAAG,WAY3B,IAAImc,IAAyBzhB,EAAO9C,SAEpCukB,IAAuB3Q,IAAoByP,GAC3CkB,GAAuBvL,SAAoBL,GAC3C4L,GAAuBzO,MAAoBA,GAC3CyO,GAAuB1O,KAAoBA,GAC3C0O,GAAuBrL,MAAoBA,GAC3CqL,GAAuBnkB,OAAoBA,GAC3CmkB,GAAuBpiB,KAAoBA,GAC3CoiB,GAAuBhK,QAAoBA,GAC3CgK,GAAuBriB,GAAoBA,GAC3CqiB,GAAuB/J,MAAoBA,GAC3C+J,GAAuBC,IAAoB5c,EAC3C2c,GAAuBtJ,UAAoBA,GAC3CsJ,GAAuBrM,QAAoBA,GAC3CqM,GAAuBpM,SAAoBA,GAC3CoM,GAAuBpL,UAAoBA,GAC3CoL,GAAuBnL,OAAoBA,GAC3CmL,GAAuBjL,cAAoBA,GAC3CiL,GAAuBhL,eAAoBA,GAC3CgL,GAAuB5c,QAAoBoT,GAC3CwJ,GAAuBhB,KAAoBA,GAC3CgB,GAAuBlkB,OAAoBA,GAC3CkkB,GAAuB7b,WAAoBA,GAC3C6b,GAAuBzyB,IAAoBsxB,GAC3CmB,GAAuB1yB,IAAoBsxB,GAC3CoB,GAAuBvJ,aAAoBA,GAC3CuJ,GAAuBjf,IAAoBsC,EAC3C2c,GAAuBxL,QAAoBA,GAC3CwL,GAAuBzN,SAAoBwM,GAC3CiB,GAAuBhuB,QAAoBA,GAC3CguB,GAAuB1J,SAAoBA,GAC3C0J,GAAuBxvB,OAAoBA,GAC3CwvB,GAAuBtvB,YAAoBglB,GAC3CsK,GAAuBzJ,OAAoBA,GAC3CyJ,GAAuBvqB,SAAoBA,GAC3CuqB,GAAuB3J,KAAoBA,GAC3C2J,GAAuB1vB,QAAoB8lB,GAC3C4J,GAAuBrJ,aAAoBA,GAG3CqJ,GAAuB5Z,KAAauY,GACpCqB,GAAuBlV,WAAaC,GAGpCiV,GAAuB7S,SAAc2J,GACrCkJ,GAAuBf,YAAcjI,GAGrCgJ,GAAuBhQ,QAAUgQ,GAAuBjQ,SAAWyH,GAGnEwI,GAAuB3Z,MAAcmB,GACrCwY,GAAuB7Z,YAAcsB,GAGrCuY,GAAuBzU,KAAiByU,GAAuB/P,MAAe2H,GAC9EoI,GAAuB/I,QAAiB+I,GAAuBE,SAAerI,GAC9EmI,GAAuBhU,YAAiBmL,GACxC6I,GAAuBG,eAAiBjJ,GAGxC8I,GAAuBzY,KAAa4X,GACpCa,GAAuBjR,IAAaiR,GAAuB9P,KAAmB8I,GAC9EgH,GAAuBxU,QAAa0N,GACpC8G,GAAuB7J,WAAagD,GACpC6G,GAAuBnU,UAAauN,GAGpC4G,GAAuB7R,KAAO6R,GAAuB7P,MAAQyP,GAG7DI,GAAuBhR,OAASgR,GAAuB5P,QAAUyP,GAGjEG,GAAuB/Q,OAAS+Q,GAAuB3P,QAAUyP,GAGjEE,GAAuB9Q,YAAc8Q,GAAuB1P,aAAeyP,GAG3EC,GAAuBlP,UAAuBe,GAC9CmO,GAAuB/jB,IAAuBoW,GAC9C2N,GAAuBvO,MAAuBa,GAC9C0N,GAAuB9F,UAAuB1H,GAC9CwN,GAAuBtN,qBAAuBA,GAC9CsN,GAAuBI,MAAuBzN,GAC9CqN,GAAuBK,aAAuBzN,GAC9CoN,GAAuBlN,QAAuBA,GAC9CkN,GAAuBjN,YAAuBA,GAC9CiN,GAAuBhN,MAAuBA,GAC9CgN,GAAuBxQ,MAAuBwD,GAG9CgN,GAAuBM,SAAWxG,GAClCkG,GAAuBO,SAAWxG,GAGlCiG,GAAuBQ,MAAS3gB,EAAU,kDAAmDsf,IAC7Fa,GAAuB9Y,OAASrH,EAAU,mDAAoD2H,IAC9FwY,GAAuBlQ,MAASjQ,EAAU,iDAAkD8e,IAC5FqB,GAAuBS,KAAS5gB,EAAU,4GAA6GuS,GAEvJ,IAAIsO,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,SACT3rB,EAAK,gBACLtN,EAAK,WACLk5B,GAAK,aACL7rB,EAAK,UACL8rB,GAAK,WACLhrB,EAAK,QACLirB,GAAK,UACL3X,EAAK,UACL4X,GAAK,YACL7X,EAAK,SACL8X,GAAK,YAeLC,GAAmBthB,EAAOrF,SAE9B2mB,IAAiBhI,UAAkBuG,GACnCyB,GAAiB3N,SAAkB0F,GACnCiI,GAAiB/H,gBAAkB6G,GACnCkB,GAAiBvd,eAAkBA,GACnCud,GAAiB5H,aAAkBiH,GACnCW,GAAiBzd,YAAkBA,GACnCyd,GAAiB3H,SAAkBiH,GACnCU,GAAiBpe,QAAkBA,GACnCoe,GAAiB3hB,cAAkBkhB,GACnCS,GAAiB9S,SAAkBoL,GACnC0H,GAAiBvM,WAAkB6E,GACnC0H,GAAiBvH,cAAkB+G,GACnCQ,GAAiB1F,aAAkB/B,GACnCyH,GAAiBtH,WAAkBA,GACnCsH,GAAiBrhB,IAAkBV,EAGnC+hB,GAAiBlb,OAA2BV,GAC5C4b,GAAiB3b,QAAoB6X,GACrC8D,GAAiBjb,YAA2BR,GAC5Cyb,GAAiBxb,aAAoB2X,GACrC6D,GAAiB9a,YAA2BT,GAC5Cub,GAAiBna,aAAoBwW,GACrC2D,GAAiBra,YAAoBA,GACrCqa,GAAiBta,kBAAoB0W,GACrC4D,GAAiB1a,iBAAoBA,GAGrC0a,GAAiB7W,KAAOkM,GACxB2K,GAAiB1U,MAAQwR,GACzBkD,GAAiBC,eAAiB1K,GAClCyK,GAAiBE,eAAiB5K,GAGlC0K,GAAiBvJ,SAAwBb,GACzCoK,GAAiBnK,UAAiBmH,GAClCgD,GAAiBrJ,YAAwBV,GACzC+J,GAAiB9J,aAAiBgH,GAClC8C,GAAiBtJ,cAAwBX,GACzCiK,GAAiBhK,eAAiBiH,GAClC+C,GAAiBrK,cAAwBQ,GAGzC6J,GAAiB7T,KAAOkL,GACxB2I,GAAiB5I,eAAiBmG,GAClCyC,GAAiBhU,SAAWuL,GAgD5BhY,EAAmC,MAC/B4gB,aAAc,uBACdve,QAAU,SAAUpF,GAChB,GAAIhQ,GAAIgQ,EAAS,GACb2F,EAAuC,IAA7BzF,EAAMF,EAAS,IAAM,IAAa,KACrC,IAANhQ,EAAW,KACL,IAANA,EAAW,KACL,IAANA,EAAW,KAAO,IACvB,OAAOgQ,GAAS2F,KAKxBlJ,EAAmB2jB,KAAOnf,EAAU,wDAAyD8B,GAC7FtG,EAAmBmnB,SAAW3iB,EAAU,gEAAiEiC,EAEzG,IAAI4Z,IAAU/tB,KAAK4R,IAoJfkjB,GAAiBpG,GAAO,MACxBiB,GAAiBjB,GAAO,KACxBqG,GAAiBrG,GAAO,KACxBsG,GAAiBtG,GAAO,KACxBuG,GAAiBvG,GAAO,KACxBwG,GAAiBxG,GAAO,KACxByG,GAAiBzG,GAAO,KACxB0G,GAAiB1G,GAAO,KAaxB/L,GAAekM,GAAW,gBAC1BnM,GAAemM,GAAW,WAC1BpM,GAAeoM,GAAW,WAC1BrM,GAAeqM,GAAW,SAC1BtM,GAAesM,GAAW,QAC1BtV,GAAesV,GAAW,UAC1B1M,GAAe0M,GAAW,SAM1B7K,GAAQhkB,KAAKgkB,MACbkL,IACA1mB,EAAG,GACHtN,EAAG,GACHqN,EAAG,GACHc,EAAG,GACHsT,EAAG,IAyDH6S,GAAkBxvB,KAAK4R,IAoDvByjB,GAA4BpT,GAASnU,SAEzCunB,IAA0BzjB,IAAiBkc,GAC3CuH,GAA0B3T,IAAiBuM,GAC3CoH,GAA0BzQ,SAAiBsJ,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,GAA0B1yB,QAAiB8rB,GAC3C4G,GAA0BtS,QAAiBqL,GAC3CiH,GAA0B/C,IAAiB1D,GAC3CyG,GAA0B1S,aAAiBA,GAC3C0S,GAA0B3S,QAAiBA,GAC3C2S,GAA0B5S,QAAiBA,GAC3C4S,GAA0B7S,MAAiBA,GAC3C6S,GAA0B9S,KAAiBA,GAC3C8S,GAA0B/S,MAAiBA,GAC3C+S,GAA0B9b,OAAiBA,GAC3C8b,GAA0BlT,MAAiBA,GAC3CkT,GAA0BjN,SAAiBA,GAC3CiN,GAA0BtyB,YAAiBwsB,GAC3C8F,GAA0BvtB,SAAiBynB,GAC3C8F,GAA0BzM,OAAiB2G,GAC3C8F,GAA0BlnB,OAAiBA,GAC3CknB,GAA0B7e,WAAiBA,GAG3C6e,GAA0BC,YAAcpjB,EAAU,sFAAuFqd,IACzI8F,GAA0BhE,KAAOA,GAMjCnb,EAAe,IAAK,EAAG,EAAG,QAC1BA,EAAe,IAAK,EAAG,EAAG,WAI1BmB,EAAc,IAAKmZ,IACnBnZ,EAAc,IAAKoZ,IACnBvY,EAAc,IAAK,SAAU9Z,EAAOkG,EAAOuM,GACvCA,EAAOtB,GAAK,GAAInP,MAA6B,IAAxBylB,WAAWznB,EAAO,OAE3C8Z,EAAc,IAAK,SAAU9Z,EAAOkG,EAAOuM,GACvCA,EAAOtB,GAAK,GAAInP,MAAK+Q,EAAM/S,MAM/BsP,EAAmB6nB,QAAU,SAE7B1nB,EAAgBiS,IAEhBpS,EAAmBhJ,GAAwBquB,GAC3CrlB,EAAmB/N,IAAwBA,GAC3C+N,EAAmB9N,IAAwBA,GAC3C8N,EAAmBgR,IAAwBA,GAC3ChR,EAAmBY,IAAwBL,EAC3CP,EAAmBgb,KAAwB2D,GAC3C3e,EAAmB6L,OAAwBkU,GAC3C/f,EAAmBvN,OAAwBA,EAC3CuN,EAAmBS,OAAwB6F,EAC3CtG,EAAmB8nB,QAAwB5lB,EAC3ClC,EAAmBwU,SAAwBsC,GAC3C9W,EAAmB9K,SAAwBA,EAC3C8K,EAAmBwd,SAAwByC,GAC3CjgB,EAAmB6e,UAAwBD,GAC3C5e,EAAmB8I,WAAwBrC,EAC3CzG,EAAmBsV,WAAwBA,GAC3CtV,EAAmB8L,YAAwBkU,GAC3ChgB,EAAmB0d,YAAwByC,GAC3CngB,EAAmB0G,aAAwBA,EAC3C1G,EAAmB6G,aAAwBA,EAC3C7G,EAAmBkG,QAAwBY,EAC3C9G,EAAmByd,cAAwByC,GAC3ClgB,EAAmBoH,eAAwBA,EAC3CpH,EAAmB+nB,sBAAwBtG,GAC3CzhB,EAAmBI,UAAwBilB,EAE3C,IAAI2C,IAAUhoB,CAEd,OAAOgoB,QAGkBz6B,KAAKX,EAASM,EAAoB,GAAGL,KAI9D,SAASA,EAAQD,GAErBC,EAAOD,QAAU,SAASC,GAQzB,MAPIA,GAAOo7B,kBACVp7B,EAAO2X,UAAY,aACnB3X,EAAOq7B,SAEPr7B,EAAOs7B,YACPt7B,EAAOo7B,gBAAkB,GAEnBp7B,IAMJ,SAASA,EAAQD,GAErB,QAASw7B,GAAeC,GACvB,KAAM,IAAIj0B,OAAM,uBAAyBi0B,EAAM,MAEhDD,EAAehsB,KAAO,WAAa,UACnCgsB,EAAeE,QAAUF,EACzBv7B,EAAOD,QAAUw7B,EACjBA,EAAe/6B,GAAK,GAKhB,SAASR,EAAQD,IAEO,SAASmT,GAoDrC,QAAShN,GAAM+H,EAAGytB,EAAKhT,GACrB,GAAI1hB,GAAI00B,GAAOhT,GAAU,EACrBiT,EAAK,CAWT,KATAD,EAAMA,MACNztB,EAAE8K,cAActM,QAAQ,eAAgB,SAAUmvB,GACvC,GAALD,IAEFD,EAAI10B,EAAI20B,KAAQE,EAAWD,MAKnB,GAALD,GACLD,EAAI10B,EAAI20B,KAAQ,CAGlB,OAAOD,GAIT,QAASI,GAAQJ,EAAKhT,GACpB,GAAI1hB,GAAI0hB,GAAU,EACdqT,EAAMC,CACV,OAAOD,GAAIL,EAAI10B,MAAQ+0B,EAAIL,EAAI10B,MAAQ+0B,EAAIL,EAAI10B,MAAQ+0B,EAAIL,EAAI10B,MAAQ,IAAM+0B,EAAIL,EAAI10B,MAAQ+0B,EAAIL,EAAI10B,MAAQ,IAAM+0B,EAAIL,EAAI10B,MAAQ+0B,EAAIL,EAAI10B,MAAQ,IAAM+0B,EAAIL,EAAI10B,MAAQ+0B,EAAIL,EAAI10B,MAAQ,IAAM+0B,EAAIL,EAAI10B,MAAQ+0B,EAAIL,EAAI10B,MAAQ+0B,EAAIL,EAAI10B,MAAQ+0B,EAAIL,EAAI10B,MAAQ+0B,EAAIL,EAAI10B,MAAQ+0B,EAAIL,EAAI10B,MAsBzR,QAASi1B,GAAGj4B,EAAS03B,EAAKhT,GACxB,GAAI1hB,GAAI00B,GAAOhT,GAAU,EACrBhiB,EAAIg1B,KAER13B,GAAUA,KAEV,IAAIk4B,GAAgCp1B,SAArB9C,EAAQk4B,SAAyBl4B,EAAQk4B,SAAWC,EAM/DC,EAA0Bt1B,SAAlB9C,EAAQo4B,MAAsBp4B,EAAQo4B,OAAQ,GAAIv2B,OAAOoP,UAIjEonB,EAA0Bv1B,SAAlB9C,EAAQq4B,MAAsBr4B,EAAQq4B,MAAQC,EAAa,EAGnEC,EAAKH,EAAQI,GAAcH,EAAQC,GAAc,GAcrD,IAXS,EAALC,GAA+Bz1B,SAArB9C,EAAQk4B,WACpBA,EAAWA,EAAW,EAAI,QAKlB,EAALK,GAAUH,EAAQI,IAAiC11B,SAAlB9C,EAAQq4B,QAC5CA,EAAQ,GAINA,GAAS,IACX,KAAM,IAAI90B,OAAM,kDAGlBi1B,GAAaJ,EACbE,EAAaD,EACbF,EAAYD,EAGZE,GAAS,WAGT,IAAIK,IAA4B,KAAb,UAARL,GAA6BC,GAAS,UACjD31B,GAAEM,KAAOy1B,IAAO,GAAK,IACrB/1B,EAAEM,KAAOy1B,IAAO,GAAK,IACrB/1B,EAAEM,KAAOy1B,IAAO,EAAI,IACpB/1B,EAAEM,KAAY,IAALy1B,CAGT,IAAIC,GAAMN,EAAQ,WAAc,IAAQ,SACxC11B,GAAEM,KAAO01B,IAAQ,EAAI,IACrBh2B,EAAEM,KAAa,IAAN01B,EAGTh2B,EAAEM,KAAO01B,IAAQ,GAAK,GAAM,GAC5Bh2B,EAAEM,KAAO01B,IAAQ,GAAK,IAGtBh2B,EAAEM,KAAOk1B,IAAa,EAAI,IAG1Bx1B,EAAEM,KAAkB,IAAXk1B,CAIT,KAAK,GADDS,GAAO34B,EAAQ24B,MAAQC,EAClBC,EAAI,EAAO,EAAJA,EAAOA,IACrBn2B,EAAEM,EAAI61B,GAAKF,EAAKE,EAGlB,OAAOnB,GAAMA,EAAMI,EAAQp1B,GAM7B,QAASN,GAAGpC,EAAS03B,EAAKhT,GAExB,GAAI1hB,GAAI00B,GAAOhT,GAAU,CAEH,iBAAX1kB,KACT03B,EAAiB,UAAX13B,EAAsB,GAAIqD,OAAM,IAAM,KAC5CrD,EAAU,MAEZA,EAAUA,KAEV,IAAI84B,GAAO94B,EAAQ+4B,SAAW/4B,EAAQg5B,KAAOC,IAO7C,IAJAH,EAAK,GAAe,GAAVA,EAAK,GAAY,GAC3BA,EAAK,GAAe,GAAVA,EAAK,GAAY,IAGvBpB,EACF,IAAK,GAAIC,GAAK,EAAQ,GAALA,EAASA,IACxBD,EAAI10B,EAAI20B,GAAMmB,EAAKnB,EAIvB,OAAOD,IAAOI,EAAQgB,GArMxB,GAAIG,GAEAC,EAA8B,mBAAX7xB,QAAyBA,OAA2B,mBAAX6H,GAAyBA,EAAS,IAElG,IAAIgqB,GAAaA,EAAUC,QAAUA,OAAOC,gBAAiB,CAG3D,GAAIC,GAAS,GAAIC,YAAW,GAC5BL,GAAO,WAEL,MADAE,QAAOC,gBAAgBC,GAChBA,GAIX,IAAKJ,EAAM,CAKT,GAAIM,GAAQ,GAAIl2B,OAAM,GACtB41B,GAAO,WACL,IAAK,GAAWvwB,GAAP1F,EAAI,EAAU,GAAJA,EAAQA,IACN,KAAV,EAAJA,KAAiB0F,EAAoB,WAAhBjH,KAAKs3B,UAC/BQ,EAAMv2B,GAAK0F,MAAY,EAAJ1F,IAAa,GAAK,GAGvC,OAAOu2B,IAkBX,IAAK,GAFDvB,MACAH,KACK70B,EAAI,EAAO,IAAJA,EAASA,IACvBg1B,EAAWh1B,IAAMA,EAAI,KAAOuG,SAAS,IAAIL,OAAO,GAChD2uB,EAAWG,EAAWh1B,IAAMA,CAqC9B,IAAIw2B,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,EA4Gb53B,EAAO0B,CACX1B,GAAKu3B,GAAKA,EACVv3B,EAAK0B,GAAKA,EACV1B,EAAKwB,MAAQA,EACbxB,EAAKo3B,QAAUA,EAEf97B,EAAOD,QAAU2E,IACYhE,KAAKX,EAAU,WAAa,MAAOI,WAI5D,SAASH,EAAQD,GAWrBA,EAAQ09B,gBAAkB,SAAUC,GAElC,IAAK,GAAIC,KAAeD,GAClBA,EAAcn3B,eAAeo3B,KAC/BD,EAAcC,GAAaC,UAAYF,EAAcC,GAAaE,KAClEH,EAAcC,GAAaE,UAYjC99B,EAAQ+9B,gBAAkB,SAAUJ,GAElC,IAAK,GAAIC,KAAeD,GACtB,GAAIA,EAAcn3B,eAAeo3B,IAC3BD,EAAcC,GAAaC,UAAW,CACxC,IAAK,GAAI52B,GAAI,EAAGA,EAAI02B,EAAcC,GAAaC,UAAU/2B,OAAQG,IAC/D02B,EAAcC,GAAaC,UAAU52B,GAAG2E,WAAWzG,YAAYw4B,EAAcC,GAAaC,UAAU52B,GAEtG02B,GAAcC,GAAaC,eAUnC79B,EAAQg+B,cAAgB,SAAUL,GAChC39B,EAAQ09B,gBAAgBC,GACxB39B,EAAQ+9B,gBAAgBJ,GACxB39B,EAAQ09B,gBAAgBC,IAa1B39B,EAAQi+B,cAAgB,SAAUL,EAAaD,EAAeO,GAC5D,GAAIvzB,EAoBJ,OAlBIgzB,GAAcn3B,eAAeo3B,GAG3BD,EAAcC,GAAaC,UAAU/2B,OAAS,GAChD6D,EAAUgzB,EAAcC,GAAaC,UAAU,GAC/CF,EAAcC,GAAaC,UAAUM,UAGrCxzB,EAAUyzB,SAASC,gBAAgB,6BAA8BT,GACjEM,EAAaI,YAAY3zB,KAI3BA,EAAUyzB,SAASC,gBAAgB,6BAA8BT,GACjED,EAAcC,IAAiBE,QAAUD,cACzCK,EAAaI,YAAY3zB,IAE3BgzB,EAAcC,GAAaE,KAAK/1B,KAAK4C,GAC9BA,GAaT3K,EAAQu+B,cAAgB,SAAUX,EAAaD,EAAea,EAAcC,GAC1E,GAAI9zB,EA4BJ,OA1BIgzB,GAAcn3B,eAAeo3B,GAG3BD,EAAcC,GAAaC,UAAU/2B,OAAS,GAChD6D,EAAUgzB,EAAcC,GAAaC,UAAU,GAC/CF,EAAcC,GAAaC,UAAUM,UAGrCxzB,EAAUyzB,SAASM,cAAcd,GACZ72B,SAAjB03B,EACFD,EAAaC,aAAa9zB,EAAS8zB,GAEnCD,EAAaF,YAAY3zB,KAK7BA,EAAUyzB,SAASM,cAAcd,GACjCD,EAAcC,IAAiBE,QAAUD,cACpB92B,SAAjB03B,EACFD,EAAaC,aAAa9zB,EAAS8zB,GAEnCD,EAAaF,YAAY3zB,IAG7BgzB,EAAcC,GAAaE,KAAK/1B,KAAK4C,GAC9BA,GAgBT3K,EAAQ2+B,UAAY,SAAUC,EAAGxc,EAAGyc,EAAelB,EAAeO,EAAcY,GAC9E,GAAIC,EAoBJ,IAnB2B,UAAvBF,EAAcxvB,OAChB0vB,EAAQ/+B,EAAQi+B,cAAc,SAAUN,EAAeO,GACvDa,EAAMC,eAAe,KAAM,KAAMJ,GACjCG,EAAMC,eAAe,KAAM,KAAM5c,GACjC2c,EAAMC,eAAe,KAAM,IAAK,GAAMH,EAAcI,QAEpDF,EAAQ/+B,EAAQi+B,cAAc,OAAQN,EAAeO,GACrDa,EAAMC,eAAe,KAAM,IAAKJ,EAAI,GAAMC,EAAcI,MACxDF,EAAMC,eAAe,KAAM,IAAK5c,EAAI,GAAMyc,EAAcI,MACxDF,EAAMC,eAAe,KAAM,QAASH,EAAcI,MAClDF,EAAMC,eAAe,KAAM,SAAUH,EAAcI,OAGxBl4B,SAAzB83B,EAAczvB,QAChB2vB,EAAMC,eAAe,KAAM,QAASH,EAAczvB,QAEpD2vB,EAAMC,eAAe,KAAM,QAASH,EAAcv1B,UAAY,cAG1Dw1B,EAAU,CACZ,GAAII,GAAQl/B,EAAQi+B,cAAc,OAAQN,EAAeO,EACrDY,GAASK,UACXP,GAAQE,EAASK,SAGfL,EAASM,UACXhd,GAAQ0c,EAASM,SAEfN,EAASO,UACXH,EAAMI,YAAcR,EAASO,SAG3BP,EAASx1B,WACX41B,EAAMF,eAAe,KAAM,QAASF,EAASx1B,UAAY,cAE3D41B,EAAMF,eAAe,KAAM,IAAKJ,GAChCM,EAAMF,eAAe,KAAM,IAAK5c,GAGlC,MAAO2c,IAUT/+B,EAAQu/B,QAAU,SAAUX,EAAGxc,EAAGod,EAAOC,EAAQn2B,EAAWq0B,EAAeO,EAAc7uB,GACvF,GAAc,GAAVowB,EAAa,CACF,EAATA,IACFA,GAAU,GACVrd,GAAKqd,EAEP,IAAIC,GAAO1/B,EAAQi+B,cAAc,OAAQN,EAAeO,EACxDwB,GAAKV,eAAe,KAAM,IAAKJ,EAAI,GAAMY,GACzCE,EAAKV,eAAe,KAAM,IAAK5c,GAC/Bsd,EAAKV,eAAe,KAAM,QAASQ,GACnCE,EAAKV,eAAe,KAAM,SAAUS,GACpCC,EAAKV,eAAe,KAAM,QAAS11B,GAC/B+F,GACFqwB,EAAKV,eAAe,KAAM,QAAS3vB,MAOrC,SAASpP,EAAQD,EAASM,GAoD9B,QAASW,GAAQ2Y,EAAM3V,GAerB,GAbI2V,IAAStS,MAAMC,QAAQqS,KACzB3V,EAAU2V,EACVA,EAAO,MAGTxZ,KAAKu/B,SAAW17B,MAChB7D,KAAKooB,SACLpoB,KAAK0G,OAAS,EACd1G,KAAKw/B,SAAWx/B,KAAKu/B,SAASE,SAAW,KACzCz/B,KAAK0/B,SAID1/B,KAAKu/B,SAASx3B,KAEhB,IAAK,GADDqI,GAAS7I,OAAO6H,KAAKpP,KAAKu/B,SAASx3B,MAC9BlB,EAAI,EAAGgB,EAAMuI,EAAO1J,OAAYmB,EAAJhB,EAASA,IAAK,CACjD,GAAIuK,GAAQhB,EAAOvJ,GACfzB,EAAQpF,KAAKu/B,SAASx3B,KAAKqJ,EAClB,SAAThM,GAA4B,WAATA,GAA+B,WAATA,EAC3CpF,KAAK0/B,MAAMtuB,GAAS,OAEpBpR,KAAK0/B,MAAMtuB,GAAShM,EAM1B,GAAIpF,KAAKu/B,SAASz3B,QAChB,KAAM,IAAIV,OAAM,sDAGlBpH,MAAK2/B,gBAGDnmB,GACFxZ,KAAKgnB,IAAIxN,GAGXxZ,KAAK4/B,WAAW/7B,GAxFlB,GAAIK,GAA4B,kBAAXC,SAAoD,gBAApBA,QAAOC,SAAwB,SAAUC,GAAO,aAAcA,IAAS,SAAUA,GAAO,MAAOA,IAAyB,kBAAXF,SAAyBE,EAAIC,cAAgBH,OAAS,eAAkBE,IAEtO1D,EAAOT,EAAoB,GAC3Ba,EAAQb,EAAoB,EAiGhCW,GAAQuS,UAAUwsB,WAAa,SAAU/7B,GACnCA,GAA6B8C,SAAlB9C,EAAQg8B,QACjBh8B,EAAQg8B,SAAU,EAEhB7/B,KAAK8/B,SACP9/B,KAAK8/B,OAAOC,gBACL//B,MAAK8/B,SAIT9/B,KAAK8/B,SACR9/B,KAAK8/B,OAAS/+B,EAAMgG,OAAO/G,MACzBsM,SAAU,MAAO,SAAU,aAIA,WAA3BpI,EAAQL,EAAQg8B,QAClB7/B,KAAK8/B,OAAOF,WAAW/7B,EAAQg8B,UAevCh/B,EAAQuS,UAAU4sB,GAAK,SAAU/0B,EAAOvB,GACtC,GAAIu2B,GAAcjgC,KAAK2/B,aAAa10B,EAC/Bg1B,KACHA,KACAjgC,KAAK2/B,aAAa10B,GAASg1B,GAG7BA,EAAYt4B,MACV+B,SAAUA,KAKd7I,EAAQuS,UAAU8sB,UAAY,WAC5B,KAAM,IAAI94B,OAAM,6DAQlBvG,EAAQuS,UAAU+sB,IAAM,SAAUl1B,EAAOvB,GACvC,GAAIu2B,GAAcjgC,KAAK2/B,aAAa10B,EAChCg1B,KACFjgC,KAAK2/B,aAAa10B,GAASg1B,EAAYG,OAAO,SAAU31B,GACtD,MAAOA,GAASf,UAAYA,MAMlC7I,EAAQuS,UAAUitB,YAAc,WAC9B,KAAM,IAAIj5B,OAAM,gEAUlBvG,EAAQuS,UAAUktB,SAAW,SAAUr1B,EAAOs1B,EAAQC,GACpD,GAAa,KAATv1B,EACF,KAAM,IAAI7D,OAAM,yBAGlB,IAAI64B,KACAh1B,KAASjL,MAAK2/B,eAChBM,EAAcA,EAAYQ,OAAOzgC,KAAK2/B,aAAa10B,KAEjD,KAAOjL,MAAK2/B,eACdM,EAAcA,EAAYQ,OAAOzgC,KAAK2/B,aAAa,MAGrD,KAAK,GAAI94B,GAAI,EAAGgB,EAAMo4B,EAAYv5B,OAAYmB,EAAJhB,EAASA,IAAK,CACtD,GAAI65B,GAAaT,EAAYp5B,EACzB65B,GAAWh3B,UACbg3B,EAAWh3B,SAASuB,EAAOs1B,EAAQC,GAAY,QAYrD3/B,EAAQuS,UAAU4T,IAAM,SAAUxN,EAAMgnB,GACtC,GACIngC,GADAsgC,KAEAC,EAAK5gC,IAET,IAAIkH,MAAMC,QAAQqS,GAEhB,IAAK,GAAI3S,GAAI,EAAGgB,EAAM2R,EAAK9S,OAAYmB,EAAJhB,EAASA,IAC1CxG,EAAKugC,EAAGC,SAASrnB,EAAK3S,IACtB85B,EAASh5B,KAAKtH,OAEX,CAAA,KAAImZ,YAAgBjS,SAKzB,KAAM,IAAIH,OAAM,mBAHhB/G,GAAKugC,EAAGC,SAASrnB,GACjBmnB,EAASh5B,KAAKtH,GAShB,MAJIsgC,GAASj6B,QACX1G,KAAKsgC,SAAS,OAASr+B,MAAO0+B,GAAYH,GAGrCG,GAST9/B,EAAQuS,UAAU0tB,OAAS,SAAUtnB,EAAMgnB,GACzC,GAAIG,MACAI,KACAC,KACAC,KACAL,EAAK5gC,KACLy/B,EAAUmB,EAAGpB,SAEb0B,EAAc,SAAqBvvB,GACrC,GAAItR,GAAKsR,EAAK8tB,EACd,IAAImB,EAAGxY,MAAM/nB,GAAK,CAChB,GAAI8gC,GAAUxgC,EAAKoG,UAAW65B,EAAGxY,MAAM/nB,GAEvCA,GAAKugC,EAAGQ,YAAYzvB,GACpBovB,EAAWp5B,KAAKtH,GAChB4gC,EAAYt5B,KAAKgK,GACjBqvB,EAAQr5B,KAAKw5B,OAGb9gC,GAAKugC,EAAGC,SAASlvB,GACjBgvB,EAASh5B,KAAKtH,GAIlB,IAAI6G,MAAMC,QAAQqS,GAEhB,IAAK,GAAI3S,GAAI,EAAGgB,EAAM2R,EAAK9S,OAAYmB,EAAJhB,EAASA,IACtC2S,EAAK3S,YAAcU,QACrB25B,EAAY1nB,EAAK3S,IAEjB0Q,QAAQH,KAAK,wDAA0DvQ,OAGtE,CAAA,KAAI2S,YAAgBjS,SAIzB,KAAM,IAAIH,OAAM,mBAFhB85B,GAAY1nB,GAQd,GAHImnB,EAASj6B,QACX1G,KAAKsgC,SAAS,OAASr+B,MAAO0+B,GAAYH,GAExCO,EAAWr6B,OAAQ,CACrB,GAAIO,IAAUhF,MAAO8+B,EAAYC,QAASA,EAASxnB,KAAMynB,EAQzDjhC,MAAKsgC,SAAS,SAAUr5B,EAAOu5B,GAGjC,MAAOG,GAASF,OAAOM,IA8BzBlgC,EAAQuS,UAAUwkB,IAAM,SAAUtQ,GAChC,GAGIjnB,GAAIghC,EAAKx9B,EAHT+8B,EAAK5gC,KAILshC,EAAY3gC,EAAKyH,QAAQ3B,UAAU,GACtB,WAAb66B,GAAsC,UAAbA,GAE3BjhC,EAAKoG,UAAU,GACf5C,EAAU4C,UAAU,IACE,SAAb66B,GAETD,EAAM56B,UAAU,GAChB5C,EAAU4C,UAAU,IAGpB5C,EAAU4C,UAAU,EAItB,IAAI86B,EACJ,IAAI19B,GAAWA,EAAQ09B,WAAY,CACjC,GAAIC,IAAiB,QAAS,SAC9BD,GAA0D,IAA7CC,EAAc95B,QAAQ7D,EAAQ09B,YAAoB,QAAU19B,EAAQ09B,eAEjFA,GAAa,OAIf,IAGI5vB,GACA8vB,EACAC,EACA76B,EACAgB,EAPAE,EAAOlE,GAAWA,EAAQkE,MAAQ/H,KAAKu/B,SAASx3B,KAChDq4B,EAASv8B,GAAWA,EAAQu8B,OAC5Bn+B,IAQJ,IAAU0E,QAANtG,EAEFsR,EAAOivB,EAAGe,SAASthC,EAAI0H,GACnB4J,GAAQyuB,IAAWA,EAAOzuB,KAC5BA,EAAO,UAEJ,IAAWhL,QAAP06B,EAET,IAAKx6B,EAAI,EAAGgB,EAAMw5B,EAAI36B,OAAYmB,EAAJhB,EAASA,IACrC8K,EAAOivB,EAAGe,SAASN,EAAIx6B,GAAIkB,GACtBq4B,IAAUA,EAAOzuB,IACpB1P,EAAM0F,KAAKgK,OAMf,KADA8vB,EAAUl6B,OAAO6H,KAAKpP,KAAKooB,OACtBvhB,EAAI,EAAGgB,EAAM45B,EAAQ/6B,OAAYmB,EAAJhB,EAASA,IACzC66B,EAASD,EAAQ56B,GACjB8K,EAAOivB,EAAGe,SAASD,EAAQ35B,GACtBq4B,IAAUA,EAAOzuB,IACpB1P,EAAM0F,KAAKgK,EAWjB,IALI9N,GAAWA,EAAQ+9B,OAAej7B,QAANtG,GAC9BL,KAAK6hC,MAAM5/B,EAAO4B,EAAQ+9B,OAIxB/9B,GAAWA,EAAQuM,OAAQ,CAC7B,GAAIA,GAASvM,EAAQuM,MACrB,IAAUzJ,QAANtG,EACFsR,EAAO3R,KAAK8hC,cAAcnwB,EAAMvB,OAEhC,KAAKvJ,EAAI,EAAGgB,EAAM5F,EAAMyE,OAAYmB,EAAJhB,EAASA,IACvC5E,EAAM4E,GAAK7G,KAAK8hC,cAAc7/B,EAAM4E,GAAIuJ,GAM9C,GAAkB,UAAdmxB,EAAwB,CAC1B,GACIQ,GADAt1B,IAEJ,KAAK5F,EAAI,EAAGgB,EAAM5F,EAAMyE,OAAYmB,EAAJhB,EAASA,IACvCk7B,EAAY9/B,EAAM4E,GAClB4F,EAAOs1B,EAAU1hC,IAAM0hC,CAEzB,OAAOt1B,GAEP,MAAU9F,SAANtG,EAEKsR,EAGA1P,GAabpB,EAAQuS,UAAU4uB,OAAS,SAAUn+B,GACnC,GAKIgD,GACAgB,EACAxH,EACAsR,EACA1P,EATAuX,EAAOxZ,KAAKooB,MACZgY,EAASv8B,GAAWA,EAAQu8B,OAC5BwB,EAAQ/9B,GAAWA,EAAQ+9B,MAC3B75B,EAAOlE,GAAWA,EAAQkE,MAAQ/H,KAAKu/B,SAASx3B,KAChD05B,EAAUl6B,OAAO6H,KAAKoK,GAMtB6nB,IAEJ,IAAIjB,EAEF,GAAIwB,EAAO,CAGT,IADA3/B,KACK4E,EAAI,EAAGgB,EAAM45B,EAAQ/6B,OAAYmB,EAAJhB,EAASA,IACzCxG,EAAKohC,EAAQ56B,GACb8K,EAAO3R,KAAK2hC,SAASthC,EAAI0H,GACrBq4B,EAAOzuB,IACT1P,EAAM0F,KAAKgK,EAMf,KAFA3R,KAAK6hC,MAAM5/B,EAAO2/B,GAEb/6B,EAAI,EAAGgB,EAAM5F,EAAMyE,OAAYmB,EAAJhB,EAASA,IACvCw6B,EAAI15B,KAAK1F,EAAM4E,GAAG7G,KAAKw/B;KAIzB,KAAK34B,EAAI,EAAGgB,EAAM45B,EAAQ/6B,OAAYmB,EAAJhB,EAASA,IACzCxG,EAAKohC,EAAQ56B,GACb8K,EAAO3R,KAAK2hC,SAASthC,EAAI0H,GACrBq4B,EAAOzuB,IACT0vB,EAAI15B,KAAKgK,EAAK3R,KAAKw/B,eAMzB,IAAIoC,EAAO,CAGT,IADA3/B,KACK4E,EAAI,EAAGgB,EAAM45B,EAAQ/6B,OAAYmB,EAAJhB,EAASA,IACzCxG,EAAKohC,EAAQ56B,GACb5E,EAAM0F,KAAK6R,EAAKnZ,GAKlB,KAFAL,KAAK6hC,MAAM5/B,EAAO2/B,GAEb/6B,EAAI,EAAGgB,EAAM5F,EAAMyE,OAAYmB,EAAJhB,EAASA,IACvCw6B,EAAI15B,KAAK1F,EAAM4E,GAAG7G,KAAKw/B,eAIzB,KAAK34B,EAAI,EAAGgB,EAAM45B,EAAQ/6B,OAAYmB,EAAJhB,EAASA,IACzCxG,EAAKohC,EAAQ56B,GACb8K,EAAO6H,EAAKnZ,GACZghC,EAAI15B,KAAKgK,EAAK3R,KAAKw/B,UAKzB,OAAO6B,IAOTxgC,EAAQuS,UAAU6uB,WAAa,WAC7B,MAAOjiC,OAaTa,EAAQuS,UAAU3J,QAAU,SAAUC,EAAU7F,GAC9C,GAIIgD,GACAgB,EACA8J,EACAtR,EAPA+/B,EAASv8B,GAAWA,EAAQu8B,OAC5Br4B,EAAOlE,GAAWA,EAAQkE,MAAQ/H,KAAKu/B,SAASx3B,KAChDyR,EAAOxZ,KAAKooB,MACZqZ,EAAUl6B,OAAO6H,KAAKoK,EAM1B,IAAI3V,GAAWA,EAAQ+9B,MAAO,CAE5B,GAAI3/B,GAAQjC,KAAK43B,IAAI/zB,EAErB,KAAKgD,EAAI,EAAGgB,EAAM5F,EAAMyE,OAAYmB,EAAJhB,EAASA,IACvC8K,EAAO1P,EAAM4E,GACbxG,EAAKsR,EAAK3R,KAAKw/B,UACf91B,EAASiI,EAAMtR,OAIjB,KAAKwG,EAAI,EAAGgB,EAAM45B,EAAQ/6B,OAAYmB,EAAJhB,EAASA,IACzCxG,EAAKohC,EAAQ56B,GACb8K,EAAO3R,KAAK2hC,SAASthC,EAAI0H,GACpBq4B,IAAUA,EAAOzuB,IACpBjI,EAASiI,EAAMtR,IAiBvBQ,EAAQuS,UAAU5F,IAAM,SAAU9D,EAAU7F,GAC1C,GAKIgD,GACAgB,EACAxH,EACAsR,EARAyuB,EAASv8B,GAAWA,EAAQu8B,OAC5Br4B,EAAOlE,GAAWA,EAAQkE,MAAQ/H,KAAKu/B,SAASx3B,KAChDm6B,KACA1oB,EAAOxZ,KAAKooB,MACZqZ,EAAUl6B,OAAO6H,KAAKoK,EAO1B,KAAK3S,EAAI,EAAGgB,EAAM45B,EAAQ/6B,OAAYmB,EAAJhB,EAASA,IACzCxG,EAAKohC,EAAQ56B,GACb8K,EAAO3R,KAAK2hC,SAASthC,EAAI0H,GACpBq4B,IAAUA,EAAOzuB,IACpBuwB,EAAYv6B,KAAK+B,EAASiI,EAAMtR,GASpC,OAJIwD,IAAWA,EAAQ+9B,OACrB5hC,KAAK6hC,MAAMK,EAAar+B,EAAQ+9B,OAG3BM,GAUTrhC,EAAQuS,UAAU0uB,cAAgB,SAAUnwB,EAAMvB,GAChD,IAAKuB,EAEH,MAAOA,EAGT,IAGI9K,GACAuK,EAJA+wB,KACAC,EAAa76B,OAAO6H,KAAKuC,GACzB9J,EAAMu6B,EAAW17B,MAIrB,IAAIQ,MAAMC,QAAQiJ,GAChB,IAAKvJ,EAAI,EAAOgB,EAAJhB,EAASA,IACnBuK,EAAQgxB,EAAWv7B,GACU,IAAzBuJ,EAAO1I,QAAQ0J,KACjB+wB,EAAa/wB,GAASO,EAAKP,QAI/B,KAAKvK,EAAI,EAAOgB,EAAJhB,EAASA,IACnBuK,EAAQgxB,EAAWv7B,GACfuJ,EAAOhK,eAAegL,KACxB+wB,EAAa/xB,EAAOgB,IAAUO,EAAKP,GAKzC,OAAO+wB,IASTthC,EAAQuS,UAAUyuB,MAAQ,SAAU5/B,EAAO2/B,GACzC,GAAIjhC,EAAK4E,SAASq8B,GAAQ,CAExB,GAAIjqB,GAAOiqB,CACX3/B,GAAMge,KAAK,SAAU3Z,EAAGC,GACtB,GAAI87B,GAAK/7B,EAAEqR,GACP2qB,EAAK/7B,EAAEoR,EACX,OAAO0qB,GAAKC,EAAK,EAASA,EAALD,EAAU,GAAK,QAEjC,CAAA,GAAqB,kBAAVT,GAOd,KAAM,IAAIt6B,WAAU,uCALtBrF,GAAMge,KAAK2hB,KAgBf/gC,EAAQuS,UAAUmvB,OAAS,SAAUliC,EAAImgC,GACvC,GACI35B,GACAgB,EACA26B,EAHAC,IAKJ,IAAIv7B,MAAMC,QAAQ9G,GAChB,IAAKwG,EAAI,EAAGgB,EAAMxH,EAAGqG,OAAYmB,EAAJhB,EAASA,IACpC27B,EAAYxiC,KAAK0iC,QAAQriC,EAAGwG,IACX,MAAb27B,GACFC,EAAW96B,KAAK66B,OAIpBA,GAAYxiC,KAAK0iC,QAAQriC,GACR,MAAbmiC,GACFC,EAAW96B,KAAK66B,EAQpB,OAJIC,GAAW/7B,QACb1G,KAAKsgC,SAAS,UAAYr+B,MAAOwgC,GAAcjC,GAG1CiC,GAST5hC,EAAQuS,UAAUsvB,QAAU,SAAUriC,GACpC,GAAIM,EAAK6D,SAASnE,IAAOM,EAAK4E,SAASlF,IACrC,GAAIL,KAAKooB,MAAM/nB,GAGb,aAFOL,MAAKooB,MAAM/nB,GAClBL,KAAK0G,SACErG,MAEJ,IAAIA,YAAckH,QAAQ,CAC/B,GAAIm6B,GAASrhC,EAAGL,KAAKw/B,SACrB,IAAe74B,SAAX+6B,GAAwB1hC,KAAKooB,MAAMsZ,GAGrC,aAFO1hC,MAAKooB,MAAMsZ,GAClB1hC,KAAK0G,SACEg7B,EAGX,MAAO,OAQT7gC,EAAQuS,UAAUuvB,MAAQ,SAAUnC,GAClC,GAAIa,GAAM95B,OAAO6H,KAAKpP,KAAKooB,MAO3B,OALApoB,MAAKooB,SACLpoB,KAAK0G,OAAS,EAEd1G,KAAKsgC,SAAS,UAAYr+B,MAAOo/B,GAAOb,GAEjCa,GAQTxgC,EAAQuS,UAAUlO,IAAM,SAAUkM,GAChC,GAIIvK,GACAgB,EALA2R,EAAOxZ,KAAKooB,MACZqZ,EAAUl6B,OAAO6H,KAAKoK,GACtBtU,EAAM,KACN09B,EAAW,IAIf,KAAK/7B,EAAI,EAAGgB,EAAM45B,EAAQ/6B,OAAYmB,EAAJhB,EAASA,IAAK,CAC9C,GAAIxG,GAAKohC,EAAQ56B,GACb8K,EAAO6H,EAAKnZ,GACZwiC,EAAYlxB,EAAKP,EACJ,OAAbyxB,KAAuB39B,GAAO29B,EAAYD,KAC5C19B,EAAMyM,EACNixB,EAAWC,GAIf,MAAO39B,IAQTrE,EAAQuS,UAAUnO,IAAM,SAAUmM,GAChC,GAIIvK,GACAgB,EALA2R,EAAOxZ,KAAKooB,MACZqZ,EAAUl6B,OAAO6H,KAAKoK,GACtBvU,EAAM,KACN69B,EAAW,IAIf,KAAKj8B,EAAI,EAAGgB,EAAM45B,EAAQ/6B,OAAYmB,EAAJhB,EAASA,IAAK,CAC9C,GAAIxG,GAAKohC,EAAQ56B,GACb8K,EAAO6H,EAAKnZ,GACZwiC,EAAYlxB,EAAKP,EACJ,OAAbyxB,KAAuB59B,GAAmB69B,EAAZD,KAChC59B,EAAM0M,EACNmxB,EAAWD,GAIf,MAAO59B,IAUTpE,EAAQuS,UAAU2vB,SAAW,SAAU3xB,GACrC,GAKIvK,GAAG+J,EAAG/I,EALN2R,EAAOxZ,KAAKooB,MACZqZ,EAAUl6B,OAAO6H,KAAKoK,GACtBD,KACAypB,EAAYhjC,KAAKu/B,SAASx3B,MAAQ/H,KAAKu/B,SAASx3B,KAAKqJ,IAAU,KAC/DyhB,EAAQ,CAGZ,KAAKhsB,EAAI,EAAGgB,EAAM45B,EAAQ/6B,OAAYmB,EAAJhB,EAASA,IAAK,CAC9C,GAAIxG,GAAKohC,EAAQ56B,GACb8K,EAAO6H,EAAKnZ,GACZ+E,EAAQuM,EAAKP,GACb6xB,GAAS,CACb,KAAKryB,EAAI,EAAOiiB,EAAJjiB,EAAWA,IACrB,GAAI2I,EAAO3I,IAAMxL,EAAO,CACtB69B,GAAS,CACT,OAGCA,GAAoBt8B,SAAVvB,IACbmU,EAAOsZ,GAASztB,EAChBytB,KAIJ,GAAImQ,EACF,IAAKn8B,EAAI,EAAGgB,EAAM0R,EAAO7S,OAAYmB,EAAJhB,EAASA,IACxC0S,EAAO1S,GAAKlG,EAAKmH,QAAQyR,EAAO1S,GAAIm8B,EAIxC,OAAOzpB,IAST1Y,EAAQuS,UAAUytB,SAAW,SAAUlvB,GACrC,GAAItR,GAAKsR,EAAK3R,KAAKw/B,SAEnB,IAAU74B,QAANtG,GAEF,GAAIL,KAAKooB,MAAM/nB,GAEb,KAAM,IAAI+G,OAAM,iCAAmC/G,EAAK,uBAI1DA,GAAKM,EAAKqF,aACV2L,EAAK3R,KAAKw/B,UAAYn/B,CAGxB,IAEIwG,GACAgB,EAHA8G,KACAyB,EAAS7I,OAAO6H,KAAKuC,EAGzB,KAAK9K,EAAI,EAAGgB,EAAMuI,EAAO1J,OAAYmB,EAAJhB,EAASA,IAAK,CAC7C,GAAIuK,GAAQhB,EAAOvJ,GACfm8B,EAAYhjC,KAAK0/B,MAAMtuB,EAC3BzC,GAAEyC,GAASzQ,EAAKmH,QAAQ6J,EAAKP,GAAQ4xB,GAKvC,MAHAhjC,MAAKooB,MAAM/nB,GAAMsO,EACjB3O,KAAK0G,SAEErG,GAUTQ,EAAQuS,UAAUuuB,SAAW,SAAUthC,EAAI6iC,GACzC,GAAI9xB,GAAOhM,EAAOyB,EAAGgB,EAGjBs7B,EAAMnjC,KAAKooB,MAAM/nB,EACrB,KAAK8iC,EACH,MAAO,KAIT,IAAIC,MACAhzB,EAAS7I,OAAO6H,KAAK+zB,EAEzB,IAAID,EACF,IAAKr8B,EAAI,EAAGgB,EAAMuI,EAAO1J,OAAYmB,EAAJhB,EAASA,IACxCuK,EAAQhB,EAAOvJ,GACfzB,EAAQ+9B,EAAI/xB,GACZgyB,EAAUhyB,GAASzQ,EAAKmH,QAAQ1C,EAAO89B,EAAM9xB,QAI/C,KAAKvK,EAAI,EAAGgB,EAAMuI,EAAO1J,OAAYmB,EAAJhB,EAASA,IACxCuK,EAAQhB,EAAOvJ,GACfzB,EAAQ+9B,EAAI/xB,GACZgyB,EAAUhyB,GAAShM,CAGvB,OAAOg+B,IAWTviC,EAAQuS,UAAUguB,YAAc,SAAUzvB,GACxC,GAAItR,GAAKsR,EAAK3R,KAAKw/B,SACnB,IAAU74B,QAANtG,EACF,KAAM,IAAI+G,OAAM,6CAA+Ci8B,KAAKC,UAAU3xB,GAAQ,IAExF,IAAIhD,GAAI3O,KAAKooB,MAAM/nB,EACnB,KAAKsO,EAEH,KAAM,IAAIvH,OAAM,uCAAyC/G,EAAK,SAKhE,KAAK,GADD+P,GAAS7I,OAAO6H,KAAKuC,GAChB9K,EAAI,EAAGgB,EAAMuI,EAAO1J,OAAYmB,EAAJhB,EAASA,IAAK,CACjD,GAAIuK,GAAQhB,EAAOvJ,GACfm8B,EAAYhjC,KAAK0/B,MAAMtuB,EAC3BzC,GAAEyC,GAASzQ,EAAKmH,QAAQ6J,EAAKP,GAAQ4xB,GAGvC,MAAO3iC,IAGTR,EAAOD,QAAUiB,GAIb,SAAShB,EAAQD,GAiBrB,QAASmB,GAAM8C,GAEb7D,KAAKujC,MAAQ,KACbvjC,KAAKkF,IAAMs+B,EAAAA,EAGXxjC,KAAK8/B,UACL9/B,KAAKyjC,SAAW,KAChBzjC,KAAK0jC,UAAY,KAEjB1jC,KAAK4/B,WAAW/7B,GAgBlB9C,EAAMqS,UAAUwsB,WAAa,SAAU/7B,GACjCA,GAAoC,mBAAlBA,GAAQ0/B,QAC5BvjC,KAAKujC,MAAQ1/B,EAAQ0/B,OAEnB1/B,GAAkC,mBAAhBA,GAAQqB,MAC5BlF,KAAKkF,IAAMrB,EAAQqB,KAGrBlF,KAAK2jC,kBAsBP5iC,EAAMgG,OAAS,SAAUtC,EAAQZ,GAC/B,GAAIg8B,GAAQ,GAAI9+B,GAAM8C,EAEtB,IAAqB8C,SAAjBlC,EAAOm/B,MACT,KAAM,IAAIx8B,OAAM,6CAElB3C,GAAOm/B,MAAQ,WACb/D,EAAM+D,QAGR,IAAIC,KACFlsB,KAAM,QACNmsB,SAAUn9B,QAGZ,IAAI9C,GAAWA,EAAQyI,QACrB,IAAK,GAAIzF,GAAI,EAAGA,EAAIhD,EAAQyI,QAAQ5F,OAAQG,IAAK,CAC/C,GAAI8Q,GAAO9T,EAAQyI,QAAQzF,EAC3Bg9B,GAAQl8B,MACNgQ,KAAMA,EACNmsB,SAAUr/B,EAAOkT,KAEnBkoB,EAAMvzB,QAAQ7H,EAAQkT,GAS1B,MALAkoB,GAAM6D,WACJj/B,OAAQA,EACRo/B,QAASA,GAGJhE,GAOT9+B,EAAMqS,UAAU2sB,QAAU,WAGxB,GAFA//B,KAAK4jC,QAED5jC,KAAK0jC,UAAW,CAGlB,IAAK,GAFDj/B,GAASzE,KAAK0jC,UAAUj/B,OACxBo/B,EAAU7jC,KAAK0jC,UAAUG,QACpBh9B,EAAI,EAAGA,EAAIg9B,EAAQn9B,OAAQG,IAAK,CACvC,GAAIk9B,GAASF,EAAQh9B,EACjBk9B,GAAOD,SACTr/B,EAAOs/B,EAAOpsB,MAAQosB,EAAOD,eAEtBr/B,GAAOs/B,EAAOpsB,MAGzB3X,KAAK0jC,UAAY,OASrB3iC,EAAMqS,UAAU9G,QAAU,SAAU7H,EAAQs/B,GAC1C,GAAInD,GAAK5gC,KACL8jC,EAAWr/B,EAAOs/B,EACtB,KAAKD,EACH,KAAM,IAAI18B,OAAM,UAAY28B,EAAS,aAGvCt/B,GAAOs/B,GAAU,WAGf,IAAK,GADDzc,MACKzgB,EAAI,EAAGA,EAAIJ,UAAUC,OAAQG,IACpCygB,EAAKzgB,GAAKJ,UAAUI,EAItB+5B,GAAGf,OACDvY,KAAMA,EACNtd,GAAI85B,EACJE,QAAShkC,SASfe,EAAMqS,UAAUysB,MAAQ,SAAUoE,GACX,kBAAVA,GACTjkC,KAAK8/B,OAAOn4B,MAAOqC,GAAIi6B,IAEvBjkC,KAAK8/B,OAAOn4B,KAAKs8B,GAGnBjkC,KAAK2jC,kBAOP5iC,EAAMqS,UAAUuwB,eAAiB,WAQ/B,GANI3jC,KAAK8/B,OAAOp5B,OAAS1G,KAAKkF,KAC5BlF,KAAK4jC,QAIPM,aAAalkC,KAAKyjC,UACdzjC,KAAK6/B,MAAMn5B,OAAS,GAA2B,gBAAf1G,MAAKujC,MAAoB,CAC3D,GAAI3C,GAAK5gC,IACTA,MAAKyjC,SAAWp5B,WAAW,WACzBu2B,EAAGgD,SACF5jC,KAAKujC,SAOZxiC,EAAMqS,UAAUwwB,MAAQ,WACtB,KAAO5jC,KAAK8/B,OAAOp5B,OAAS,GAAG,CAC7B,GAAIu9B,GAAQjkC,KAAK8/B,OAAO/B,OACxBkG,GAAMj6B,GAAGkJ,MAAM+wB,EAAMD,SAAWC,EAAMj6B,GAAIi6B,EAAM3c,YAIpDznB,EAAOD,QAAUmB,GAIb,SAASlB,EAAQD,EAASM,GAiB9B,QAASY,GAAS0Y,EAAM3V,GACtB7D,KAAKooB,MAAQ,KACbpoB,KAAKmkC,QACLnkC,KAAK0G,OAAS,EACd1G,KAAKu/B,SAAW17B,MAChB7D,KAAKw/B,SAAW,KAChBx/B,KAAK2/B,eAEL,IAAIiB,GAAK5gC,IACTA,MAAKyK,SAAW,WACdm2B,EAAGwD,SAASlxB,MAAM0tB,EAAIn6B,YAGxBzG,KAAKqkC,QAAQ7qB,GA1Bf,GAAI7Y,GAAOT,EAAoB,GAC3BW,EAAUX,EAAoB,EAmClCY,GAASsS,UAAUixB,QAAU,SAAU7qB,GACrC,GAAI6nB,GAAKhhC,EAAIwG,EAAGgB,CAiBhB,IAfI7H,KAAKooB,QAEHpoB,KAAKooB,MAAM+X,KACbngC,KAAKooB,MAAM+X,IAAI,IAAKngC,KAAKyK,UAI3B42B,EAAM95B,OAAO6H,KAAKpP,KAAKmkC,MACvBnkC,KAAKmkC,QACLnkC,KAAK0G,OAAS,EACd1G,KAAKsgC,SAAS,UAAYr+B,MAAOo/B,KAGnCrhC,KAAKooB,MAAQ5O,EAETxZ,KAAKooB,MAAO,CAMd,IAJApoB,KAAKw/B,SAAWx/B,KAAKu/B,SAASE,SAAWz/B,KAAKooB,OAASpoB,KAAKooB,MAAMvkB,SAAW7D,KAAKooB,MAAMvkB,QAAQ47B,SAAW,KAG3G4B,EAAMrhC,KAAKooB,MAAM4Z,QAAS5B,OAAQpgC,KAAKu/B,UAAYv/B,KAAKu/B,SAASa,SAC5Dv5B,EAAI,EAAGgB,EAAMw5B,EAAI36B,OAAYmB,EAAJhB,EAASA,IACrCxG,EAAKghC,EAAIx6B,GACT7G,KAAKmkC,KAAK9jC,IAAM,CAElBL,MAAK0G,OAAS26B,EAAI36B,OAClB1G,KAAKsgC,SAAS,OAASr+B,MAAOo/B,IAG1BrhC,KAAKooB,MAAM4X,IACbhgC,KAAKooB,MAAM4X,GAAG,IAAKhgC,KAAKyK,YAS9B3J,EAASsS,UAAUkxB,QAAU,WAC3B,GAAIjkC,GAAIwG,EAAGgB,EACPw5B,EAAMrhC,KAAKooB,MAAM4Z,QAAS5B,OAAQpgC,KAAKu/B,UAAYv/B,KAAKu/B,SAASa,SACjEmE,EAASh9B,OAAO6H,KAAKpP,KAAKmkC,MAC1BK,KACAC,KACAC,IAGJ,KAAK79B,EAAI,EAAGgB,EAAMw5B,EAAI36B,OAAYmB,EAAJhB,EAASA,IACrCxG,EAAKghC,EAAIx6B,GACT29B,EAAOnkC,IAAM,EACRL,KAAKmkC,KAAK9jC,KACbokC,EAAM98B,KAAKtH,GACXL,KAAKmkC,KAAK9jC,IAAM,EAKpB,KAAKwG,EAAI,EAAGgB,EAAM08B,EAAO79B,OAAYmB,EAAJhB,EAASA,IACxCxG,EAAKkkC,EAAO19B,GACP29B,EAAOnkC,KACVqkC,EAAQ/8B,KAAKtH,SACNL,MAAKmkC,KAAK9jC,GAIrBL,MAAK0G,QAAU+9B,EAAM/9B,OAASg+B,EAAQh+B,OAGlC+9B,EAAM/9B,QACR1G,KAAKsgC,SAAS,OAASr+B,MAAOwiC,IAE5BC,EAAQh+B,QACV1G,KAAKsgC,SAAS,UAAYr+B,MAAOyiC,KAsCrC5jC,EAASsS,UAAUwkB,IAAM,SAAUtQ,GACjC,GAGI+Z,GAAKx9B,EAAS2V,EAHdonB,EAAK5gC,KAILshC,EAAY3gC,EAAKyH,QAAQ3B,UAAU,GACtB,WAAb66B,GAAsC,UAAbA,GAAsC,SAAbA,GAEpDD,EAAM56B,UAAU,GAChB5C,EAAU4C,UAAU,GACpB+S,EAAO/S,UAAU,KAGjB5C,EAAU4C,UAAU,GACpB+S,EAAO/S,UAAU,GAInB,IAAIk+B,GAAchkC,EAAKoG,UAAW/G,KAAKu/B,SAAU17B,EAG7C7D,MAAKu/B,SAASa,QAAUv8B,GAAWA,EAAQu8B,SAC7CuE,EAAYvE,OAAS,SAAUzuB,GAC7B,MAAOivB,GAAGrB,SAASa,OAAOzuB,IAAS9N,EAAQu8B,OAAOzuB,IAKtD,IAAIizB,KAOJ,OANWj+B,SAAP06B,GACFuD,EAAaj9B,KAAK05B,GAEpBuD,EAAaj9B,KAAKg9B,GAClBC,EAAaj9B,KAAK6R,GAEXxZ,KAAKooB,OAASpoB,KAAKooB,MAAMwP,IAAI1kB,MAAMlT,KAAKooB,MAAOwc,IAWxD9jC,EAASsS,UAAU4uB,OAAS,SAAUn+B,GACpC,GAAIw9B,EAEJ,IAAIrhC,KAAKooB,MAAO,CACd,GACIgY,GADAyE,EAAgB7kC,KAAKu/B,SAASa,MAK9BA,GAFAv8B,GAAWA,EAAQu8B,OACjByE,EACO,SAAgBlzB,GACvB,MAAOkzB,GAAclzB,IAAS9N,EAAQu8B,OAAOzuB,IAGtC9N,EAAQu8B,OAGVyE,EAGXxD,EAAMrhC,KAAKooB,MAAM4Z,QACf5B,OAAQA,EACRwB,MAAO/9B,GAAWA,EAAQ+9B,YAG5BP,KAGF,OAAOA,IAcTvgC,EAASsS,UAAU5F,IAAM,SAAU9D,EAAU7F,GAC3C,GAAIq+B,KACJ,IAAIliC,KAAKooB,MAAO,CACd,GACIgY,GADAyE,EAAgB7kC,KAAKu/B,SAASa,MAK9BA,GAFAv8B,GAAWA,EAAQu8B,OACjByE,EACO,SAAgBlzB,GACvB,MAAOkzB,GAAclzB,IAAS9N,EAAQu8B,OAAOzuB,IAGtC9N,EAAQu8B,OAGVyE,EAGX3C,EAAcliC,KAAKooB,MAAM5a,IAAI9D,GAC3B02B,OAAQA,EACRwB,MAAO/9B,GAAWA,EAAQ+9B,YAG5BM,KAGF,OAAOA,IAQTphC,EAASsS,UAAU6uB,WAAa,WAE9B,IADA,GAAI6C,GAAU9kC,KACP8kC,YAAmBhkC,IACxBgkC,EAAUA,EAAQ1c,KAEpB,OAAO0c,IAAW,MAYpBhkC,EAASsS,UAAUgxB,SAAW,SAAUn5B,EAAOs1B,EAAQC,GACrD,GAAI35B,GAAGgB,EAAKxH,EAAIsR,EACZ0vB,EAAMd,GAAUA,EAAOt+B,MACvBuX,EAAOxZ,KAAKooB,MACZ6Y,KACAwD,KACAM,KACAL,IAEJ,IAAIrD,GAAO7nB,EAAM,CACf,OAAQvO,GACN,IAAK,MAEH,IAAKpE,EAAI,EAAGgB,EAAMw5B,EAAI36B,OAAYmB,EAAJhB,EAASA,IACrCxG,EAAKghC,EAAIx6B,GACT8K,EAAO3R,KAAK43B,IAAIv3B,GACZsR,IACF3R,KAAKmkC,KAAK9jC,IAAM,EAChBokC,EAAM98B,KAAKtH,GAIf,MAEF,KAAK,SAGH,IAAKwG,EAAI,EAAGgB,EAAMw5B,EAAI36B,OAAYmB,EAAJhB,EAASA,IACrCxG,EAAKghC,EAAIx6B,GACT8K,EAAO3R,KAAK43B,IAAIv3B,GAEZsR,EACE3R,KAAKmkC,KAAK9jC,IACZ0kC,EAAQp9B,KAAKtH,GACb4gC,EAAYt5B,KAAK44B,EAAO/mB,KAAK3S,MAE7B7G,KAAKmkC,KAAK9jC,IAAM,EAChBokC,EAAM98B,KAAKtH,IAGTL,KAAKmkC,KAAK9jC,WACLL,MAAKmkC,KAAK9jC,GACjBqkC,EAAQ/8B,KAAKtH,GAOnB,MAEF,KAAK,SAEH,IAAKwG,EAAI,EAAGgB,EAAMw5B,EAAI36B,OAAYmB,EAAJhB,EAASA,IACrCxG,EAAKghC,EAAIx6B,GACL7G,KAAKmkC,KAAK9jC,WACLL,MAAKmkC,KAAK9jC,GACjBqkC,EAAQ/8B,KAAKtH,IAOrBL,KAAK0G,QAAU+9B,EAAM/9B,OAASg+B,EAAQh+B,OAElC+9B,EAAM/9B,QACR1G,KAAKsgC,SAAS,OAASr+B,MAAOwiC,GAASjE,GAErCuE,EAAQr+B,QACV1G,KAAKsgC,SAAS,UAAYr+B,MAAO8iC,EAASvrB,KAAMynB,GAAeT,GAE7DkE,EAAQh+B,QACV1G,KAAKsgC,SAAS,UAAYr+B,MAAOyiC,GAAWlE,KAMlD1/B,EAASsS,UAAU4sB,GAAKn/B,EAAQuS,UAAU4sB,GAC1Cl/B,EAASsS,UAAU+sB,IAAMt/B,EAAQuS,UAAU+sB,IAC3Cr/B,EAASsS,UAAUktB,SAAWz/B,EAAQuS,UAAUktB,SAGhDx/B,EAASsS,UAAU8sB,UAAYp/B,EAASsS,UAAU4sB,GAClDl/B,EAASsS,UAAUitB,YAAcv/B,EAASsS,UAAU+sB,IAEpDtgC,EAAOD,QAAUkB,GAIb,SAASjB,EAAQD,EAASM,GA4B9B,QAASc,GAAQgkC,EAAWxrB,EAAM3V,GAChC,KAAM7D,eAAgBgB,IACpB,KAAM,IAAIikC,aAAY,mDAIxBjlC,MAAKklC,iBAAmBF,EACxBhlC,KAAKo/B,MAAQ,QACbp/B,KAAKq/B,OAAS,QACdr/B,KAAKmlC,OAAS,GACdnlC,KAAKolC,eAAiB,MACtBplC,KAAKqlC,eAAiB,MAEtBrlC,KAAKslC,OAAS,IACdtlC,KAAKulC,OAAS,IACdvlC,KAAKwlC,OAAS,GAEd,IAAIC,GAAc,SAAqB13B,GACrC,MAAOA,GAET/N,MAAK0lC,YAAcD,EACnBzlC,KAAK2lC,YAAcF,EACnBzlC,KAAK4lC,YAAcH,EAEnBzlC,KAAK6lC,YAAc,OACnB7lC,KAAK8lC,YAAc,QAEnB9lC,KAAKiP,MAAQjO,EAAQ+kC,MAAMC,IAC3BhmC,KAAKimC,iBAAkB,EACvBjmC,KAAKkmC,UAAW,EAChBlmC,KAAKmmC,iBAAkB,EACvBnmC,KAAKomC,YAAa,EAClBpmC,KAAKqmC,gBAAiB,EACtBrmC,KAAKsmC,aAAc,EACnBtmC,KAAKumC,cAAgB,GAErBvmC,KAAKwmC,kBAAoB,IACzBxmC,KAAKymC,kBAAmB,EAExBzmC,KAAK0mC,OAAS,GAAIxlC,GAClBlB,KAAK0mC,OAAOC,eAAe,EAAK,IAChC3mC,KAAK0mC,OAAOE,aAAa,KACzB5mC,KAAK6mC,IAAM,GAAIxlC,GAAQ,EAAG,EAAG,IAE7BrB,KAAK8mC,UAAY,KACjB9mC,KAAK+mC,WAAa,KAGlB/mC,KAAKgnC,KAAOrgC,OACZ3G,KAAKinC,KAAOtgC,OACZ3G,KAAKknC,KAAOvgC,OACZ3G,KAAKmnC,SAAWxgC,OAChB3G,KAAKonC,UAAYzgC,OAEjB3G,KAAKqnC,KAAO,EACZrnC,KAAKsnC,MAAQ3gC,OACb3G,KAAKunC,KAAO,EACZvnC,KAAKwnC,KAAO,EACZxnC,KAAKynC,MAAQ9gC,OACb3G,KAAK0nC,KAAO,EACZ1nC,KAAK2nC,KAAO,EACZ3nC,KAAK4nC,MAAQjhC,OACb3G,KAAK6nC,KAAO,EACZ7nC,KAAK8nC,SAAW,EAChB9nC,KAAK+nC,SAAW,EAChB/nC,KAAKgoC,UAAY,EACjBhoC,KAAKioC,UAAY,EAIjBjoC,KAAKkoC,UAAY,UACjBloC,KAAKmoC,UAAY,UACjBnoC,KAAKooC,WACHC,KAAM,UACNC,OAAQ,UACRC,YAAa,GAGfvoC,KAAKwoC,aAAe,IAGpBxoC,KAAKuQ,SAGLvQ,KAAK4/B,WAAW/7B,GAGZ2V,GACFxZ,KAAKqkC,QAAQ7qB,GAykEjB,QAASivB,GAAUx9B,GACjB,MAAI,WAAaA,GAAcA,EAAMy9B,QAC9Bz9B,EAAM09B,cAAc,IAAM19B,EAAM09B,cAAc,GAAGD,SAAW,EAQrE,QAASE,GAAU39B,GACjB,MAAI,WAAaA,GAAcA,EAAM49B,QAC9B59B,EAAM09B,cAAc,IAAM19B,EAAM09B,cAAc,GAAGE,SAAW,EArsErE,GAAI3kC,GAA4B,kBAAXC,SAAoD,gBAApBA,QAAOC,SAAwB,SAAUC,GAAO,aAAcA,IAAS,SAAUA,GAAO,MAAOA,IAAyB,kBAAXF,SAAyBE,EAAIC,cAAgBH,OAAS,eAAkBE,IAEtOykC,EAAU5oC,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,GA0GrC4oC,GAAQ9nC,EAAQoS,WAKhBpS,EAAQoS,UAAU21B,UAAY,WAC5B/oC,KAAKqF,MAAQ,GAAIhE,GAAQ,GAAKrB,KAAKunC,KAAOvnC,KAAKqnC,MAAO,GAAKrnC,KAAK0nC,KAAO1nC,KAAKwnC,MAAO,GAAKxnC,KAAK6nC,KAAO7nC,KAAK2nC,OAGrG3nC,KAAKmmC,kBACHnmC,KAAKqF,MAAMm5B,EAAIx+B,KAAKqF,MAAM2c,EAE5BhiB,KAAKqF,MAAM2c,EAAIhiB,KAAKqF,MAAMm5B,EAG1Bx+B,KAAKqF,MAAMm5B,EAAIx+B,KAAKqF,MAAM2c,GAK9BhiB,KAAKqF,MAAM2jC,GAAKhpC,KAAKumC,cAIrBvmC,KAAKqF,MAAMD,MAAQ,GAAKpF,KAAK+nC,SAAW/nC,KAAK8nC,SAG7C,IAAImB,IAAWjpC,KAAKunC,KAAOvnC,KAAKqnC,MAAQ,EAAIrnC,KAAKqF,MAAMm5B,EACnD0K,GAAWlpC,KAAK0nC,KAAO1nC,KAAKwnC,MAAQ,EAAIxnC,KAAKqF,MAAM2c,EACnDmnB,GAAWnpC,KAAK6nC,KAAO7nC,KAAK2nC,MAAQ,EAAI3nC,KAAKqF,MAAM2jC,CACvDhpC,MAAK0mC,OAAO0C,eAAeH,EAASC,EAASC,IAS/CnoC,EAAQoS,UAAUi2B,eAAiB,SAAUC,GAC3C,GAAIC,GAAcvpC,KAAKwpC,2BAA2BF,EAClD,OAAOtpC,MAAKypC,4BAA4BF,IAW1CvoC,EAAQoS,UAAUo2B,2BAA6B,SAAUF,GACvD,GAAII,GAAKJ,EAAQ9K,EAAIx+B,KAAKqF,MAAMm5B,EAC5BmL,EAAKL,EAAQtnB,EAAIhiB,KAAKqF,MAAM2c,EAC5B4nB,EAAKN,EAAQN,EAAIhpC,KAAKqF,MAAM2jC,EAC5Ba,EAAK7pC,KAAK0mC,OAAOoD,oBAAoBtL,EACrCuL,EAAK/pC,KAAK0mC,OAAOoD,oBAAoB9nB,EACrCgoB,EAAKhqC,KAAK0mC,OAAOoD,oBAAoBd,EAIzCiB,EAAQ3kC,KAAK4kC,IAAIlqC,KAAK0mC,OAAOyD,oBAAoB3L,GAC7C4L,EAAQ9kC,KAAK+kC,IAAIrqC,KAAK0mC,OAAOyD,oBAAoB3L,GACjD8L,EAAQhlC,KAAK4kC,IAAIlqC,KAAK0mC,OAAOyD,oBAAoBnoB,GACjDuoB,EAAQjlC,KAAK+kC,IAAIrqC,KAAK0mC,OAAOyD,oBAAoBnoB,GACjDwoB,EAAQllC,KAAK4kC,IAAIlqC,KAAK0mC,OAAOyD,oBAAoBnB,GACjDyB,EAAQnlC,KAAK+kC,IAAIrqC,KAAK0mC,OAAOyD,oBAAoBnB,GAIrD0B,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,IAAIxoC,GAAQqpC,EAAIC,EAAIC,IAU7B5pC,EAAQoS,UAAUq2B,4BAA8B,SAAUF,GACxD,GAQIsB,GACAC,EATAC,EAAK/qC,KAAK6mC,IAAIrI,EACdwM,EAAKhrC,KAAK6mC,IAAI7kB,EACdipB,EAAKjrC,KAAK6mC,IAAImC,EACd0B,EAAKnB,EAAY/K,EACjBmM,EAAKpB,EAAYvnB,EACjB4oB,EAAKrB,EAAYP,CAerB,OAVIhpC,MAAKimC,iBACP4E,GAAMH,EAAKK,IAAOE,EAAKL,GACvBE,GAAMH,EAAKK,IAAOC,EAAKL,KAEvBC,EAAKH,IAAOO,EAAKjrC,KAAK0mC,OAAOwE,gBAC7BJ,EAAKH,IAAOM,EAAKjrC,KAAK0mC,OAAOwE,iBAKxB,GAAI9pC,GAAQpB,KAAKmrC,QAAUN,EAAK7qC,KAAKorC,MAAMC,OAAOC,YAAatrC,KAAKurC,QAAUT,EAAK9qC,KAAKorC,MAAMC,OAAOC,cAO9GtqC,EAAQoS,UAAUo4B,oBAAsB,SAAUC,GAChD,GAAIpD,GAAO,QACPC,EAAS,OACTC,EAAc,CAElB,IAA+B,gBAApBkD,GACTpD,EAAOoD,EACPnD,EAAS,OACTC,EAAc,MACT,IAA0F,YAA1D,mBAApBkD,GAAkC,YAAcvnC,EAAQunC,IAC5C9kC,SAAzB8kC,EAAgBpD,OAAoBA,EAAOoD,EAAgBpD,MAChC1hC,SAA3B8kC,EAAgBnD,SAAsBA,EAASmD,EAAgBnD,QAC/B3hC,SAAhC8kC,EAAgBlD,cAA2BA,EAAckD,EAAgBlD,iBACxE,IAAwB5hC,SAApB8kC,EAGP,KAAM,qCAGVzrC,MAAKorC,MAAMn8B,MAAMw8B,gBAAkBpD,EACnCroC,KAAKorC,MAAMn8B,MAAMy8B,YAAcpD,EAC/BtoC,KAAKorC,MAAMn8B,MAAM08B,YAAcpD,EAAc,KAC7CvoC,KAAKorC,MAAMn8B,MAAM28B,YAAc,SAIjC5qC,EAAQ+kC,OACN8F,IAAK,EACLC,SAAU,EACVC,QAAS,EACT/F,IAAK,EACLgG,QAAS,EACTC,SAAU,EACVC,QAAS,EACTC,KAAM,EACNC,KAAM,EACNC,QAAS,GASXrrC,EAAQoS,UAAUk5B,gBAAkB,SAAUC,GAC5C,OAAQA,GACN,IAAK,MACH,MAAOvrC,GAAQ+kC,MAAMC,GACvB,KAAK,WACH,MAAOhlC,GAAQ+kC,MAAMiG,OACvB,KAAK,YACH,MAAOhrC,GAAQ+kC,MAAMkG,QACvB,KAAK,WACH,MAAOjrC,GAAQ+kC,MAAMmG,OACvB,KAAK,OACH,MAAOlrC,GAAQ+kC,MAAMqG,IACvB,KAAK,OACH,MAAOprC,GAAQ+kC,MAAMoG,IACvB,KAAK,UACH,MAAOnrC,GAAQ+kC,MAAMsG,OACvB,KAAK,MACH,MAAOrrC,GAAQ+kC,MAAM8F,GACvB,KAAK,YACH,MAAO7qC,GAAQ+kC,MAAM+F,QACvB,KAAK,WACH,MAAO9qC,GAAQ+kC,MAAMgG,QAGzB,MAAO,IAQT/qC,EAAQoS,UAAUo5B,wBAA0B,SAAUhzB,EAAMvK,GAC1D,GAAIjP,KAAKiP,QAAUjO,EAAQ+kC,MAAMC,KAAOhmC,KAAKiP,QAAUjO,EAAQ+kC,MAAMiG,SAAWhsC,KAAKiP,QAAUjO,EAAQ+kC,MAAMqG,MAAQpsC,KAAKiP,QAAUjO,EAAQ+kC,MAAMoG,MAAQnsC,KAAKiP,QAAUjO,EAAQ+kC,MAAMsG,SAAWrsC,KAAKiP,QAAUjO,EAAQ+kC,MAAM8F,IAE7N7rC,KAAKgnC,KAAO,EACZhnC,KAAKinC,KAAO,EACZjnC,KAAKknC,KAAO,EACZlnC,KAAKmnC,SAAWxgC,OAEZ6S,EAAKizB,qBAAuB,IAC9BzsC,KAAKonC,UAAY,OAEd,CAAA,GAAIpnC,KAAKiP,QAAUjO,EAAQ+kC,MAAMkG,UAAYjsC,KAAKiP,QAAUjO,EAAQ+kC,MAAMmG,SAAWlsC,KAAKiP,QAAUjO,EAAQ+kC,MAAM+F,UAAY9rC,KAAKiP,QAAUjO,EAAQ+kC,MAAMgG,QAWhK,KAAM,kBAAoB/rC,KAAKiP,MAAQ,GATvCjP,MAAKgnC,KAAO,EACZhnC,KAAKinC,KAAO,EACZjnC,KAAKknC,KAAO,EACZlnC,KAAKmnC,SAAW,EAEZ3tB,EAAKizB,qBAAuB,IAC9BzsC,KAAKonC,UAAY,KAOvBpmC,EAAQoS,UAAUs5B,gBAAkB,SAAUlzB,GAC5C,MAAOA,GAAK9S,QAGd1F,EAAQoS,UAAUq5B,mBAAqB,SAAUjzB,GAC/C,GAAImzB,GAAU,CACd,KAAK,GAAIC,KAAUpzB,GAAK,GAClBA,EAAK,GAAGpT,eAAewmC,IACzBD,GAGJ,OAAOA,IAGT3rC,EAAQoS,UAAUy5B,kBAAoB,SAAUrzB,EAAMozB,GAEpD,IAAK,GADDE,MACKjmC,EAAI,EAAGA,EAAI2S,EAAK9S,OAAQG,IACgB,IAA3CimC,EAAeplC,QAAQ8R,EAAK3S,GAAG+lC,KACjCE,EAAenlC,KAAK6R,EAAK3S,GAAG+lC,GAGhC,OAAOE,IAGT9rC,EAAQoS,UAAU25B,eAAiB,SAAUvzB,EAAMozB,GAEjD,IAAK,GADDI,IAAW/nC,IAAKuU,EAAK,GAAGozB,GAAS1nC,IAAKsU,EAAK,GAAGozB,IACzC/lC,EAAI,EAAGA,EAAI2S,EAAK9S,OAAQG,IAC3BmmC,EAAO/nC,IAAMuU,EAAK3S,GAAG+lC,KACvBI,EAAO/nC,IAAMuU,EAAK3S,GAAG+lC,IAEnBI,EAAO9nC,IAAMsU,EAAK3S,GAAG+lC,KACvBI,EAAO9nC,IAAMsU,EAAK3S,GAAG+lC,GAGzB,OAAOI,IASThsC,EAAQoS,UAAU65B,gBAAkB,SAAUC,EAASj+B,GACrD,GAAI2xB,GAAK5gC,IAOT,IAJIA,KAAK8kC,SACP9kC,KAAK8kC,QAAQ3E,IAAI,IAAKngC,KAAKmtC,WAGbxmC,SAAZumC,EAAJ,CAEIhmC,MAAMC,QAAQ+lC,KAChBA,EAAU,GAAIrsC,GAAQqsC,GAGxB,IAAI1zB,EACJ,MAAI0zB,YAAmBrsC,IAAWqsC,YAAmBpsC,IAGnD,KAAM,IAAIsG,OAAM,uCAGlB,IALEoS,EAAO0zB,EAAQtV,MAKE,GAAfpe,EAAK9S,OAAT,CAEA1G,KAAK8kC,QAAUoI,EACfltC,KAAK8mC,UAAYttB,EAGjBxZ,KAAKmtC,UAAY,WACfvM,EAAGyD,QAAQzD,EAAGkE,UAEhB9kC,KAAK8kC,QAAQ9E,GAAG,IAAKhgC,KAAKmtC,WAS1BntC,KAAKgnC,KAAO,IACZhnC,KAAKinC,KAAO,IACZjnC,KAAKknC,KAAO,IACZlnC,KAAKmnC,SAAW,QAChBnnC,KAAKonC,UAAY,SAGb5tB,EAAK,GAAGpT,eAAe,WACDO,SAApB3G,KAAKotC,aACPptC,KAAKotC,WAAa,GAAIjsC,GAAO+rC,EAASltC,KAAKonC,UAAWpnC,MACtDA,KAAKotC,WAAWC,kBAAkB,WAChCzM,EAAG0M,WAKT,IAAIC,GAAWvtC,KAAKiP,OAASjO,EAAQ+kC,MAAM8F,KAAO7rC,KAAKiP,OAASjO,EAAQ+kC,MAAM+F,UAAY9rC,KAAKiP,OAASjO,EAAQ+kC,MAAMgG,OAGtH,IAAIwB,EAAU,CACZ,GAA8B5mC,SAA1B3G,KAAKwtC,iBACPxtC,KAAKgoC,UAAYhoC,KAAKwtC,qBACjB,CACL,GAAIC,GAAQztC,KAAK6sC,kBAAkBrzB,EAAMxZ,KAAKgnC,KAC9ChnC,MAAKgoC,UAAYyF,EAAM,GAAKA,EAAM,IAAM,EAG1C,GAA8B9mC,SAA1B3G,KAAK0tC,iBACP1tC,KAAKioC,UAAYjoC,KAAK0tC,qBACjB,CACL,GAAIC,GAAQ3tC,KAAK6sC,kBAAkBrzB,EAAMxZ,KAAKinC,KAC9CjnC,MAAKioC,UAAY0F,EAAM,GAAKA,EAAM,IAAM,GAK5C,GAAIC,GAAS5tC,KAAK+sC,eAAevzB,EAAMxZ,KAAKgnC,KACxCuG,KACFK,EAAO3oC,KAAOjF,KAAKgoC,UAAY,EAC/B4F,EAAO1oC,KAAOlF,KAAKgoC,UAAY,GAEjChoC,KAAKqnC,KAA4B1gC,SAArB3G,KAAK6tC,YAA4B7tC,KAAK6tC,YAAcD,EAAO3oC,IACvEjF,KAAKunC,KAA4B5gC,SAArB3G,KAAK8tC,YAA4B9tC,KAAK8tC,YAAcF,EAAO1oC,IACnElF,KAAKunC,MAAQvnC,KAAKqnC,OAAMrnC,KAAKunC,KAAOvnC,KAAKqnC,KAAO,GACpDrnC,KAAKsnC,MAA8B3gC,SAAtB3G,KAAK+tC,aAA6B/tC,KAAK+tC,cAAgB/tC,KAAKunC,KAAOvnC,KAAKqnC,MAAQ,CAE7F,IAAI2G,GAAShuC,KAAK+sC,eAAevzB,EAAMxZ,KAAKinC,KACxCsG,KACFS,EAAO/oC,KAAOjF,KAAKioC,UAAY,EAC/B+F,EAAO9oC,KAAOlF,KAAKioC,UAAY,GAEjCjoC,KAAKwnC,KAA4B7gC,SAArB3G,KAAKiuC,YAA4BjuC,KAAKiuC,YAAcD,EAAO/oC,IACvEjF,KAAK0nC,KAA4B/gC,SAArB3G,KAAKkuC,YAA4BluC,KAAKkuC,YAAcF,EAAO9oC,IACnElF,KAAK0nC,MAAQ1nC,KAAKwnC,OAAMxnC,KAAK0nC,KAAO1nC,KAAKwnC,KAAO,GACpDxnC,KAAKynC,MAA8B9gC,SAAtB3G,KAAKmuC,aAA6BnuC,KAAKmuC,cAAgBnuC,KAAK0nC,KAAO1nC,KAAKwnC,MAAQ,CAE7F,IAAI4G,GAASpuC,KAAK+sC,eAAevzB,EAAMxZ,KAAKknC,KAM5C,IALAlnC,KAAK2nC,KAA4BhhC,SAArB3G,KAAKquC,YAA4BruC,KAAKquC,YAAcD,EAAOnpC,IACvEjF,KAAK6nC,KAA4BlhC,SAArB3G,KAAKsuC,YAA4BtuC,KAAKsuC,YAAcF,EAAOlpC,IACnElF,KAAK6nC,MAAQ7nC,KAAK2nC,OAAM3nC,KAAK6nC,KAAO7nC,KAAK2nC,KAAO,GACpD3nC,KAAK4nC,MAA8BjhC,SAAtB3G,KAAKuuC,aAA6BvuC,KAAKuuC,cAAgBvuC,KAAK6nC,KAAO7nC,KAAK2nC,MAAQ,EAEvEhhC,SAAlB3G,KAAKmnC,SAAwB,CAC/B,GAAIqH,GAAaxuC,KAAK+sC,eAAevzB,EAAMxZ,KAAKmnC,SAChDnnC,MAAK8nC,SAAoCnhC,SAAzB3G,KAAKyuC,gBAAgCzuC,KAAKyuC,gBAAkBD,EAAWvpC,IACvFjF,KAAK+nC,SAAoCphC,SAAzB3G,KAAK0uC,gBAAgC1uC,KAAK0uC,gBAAkBF,EAAWtpC,IACnFlF,KAAK+nC,UAAY/nC,KAAK8nC,WAAU9nC,KAAK+nC,SAAW/nC,KAAK8nC,SAAW,GAItE9nC,KAAK+oC,eAQP/nC,EAAQoS,UAAUu7B,eAAiB,SAAUn1B,GAE3C,GAAIglB,GAAGxc,EAAGnb,EAAGmiC,EAAG3kC,EAAKs6B,EAEjBoI,IAEJ,IAAI/mC,KAAKiP,QAAUjO,EAAQ+kC,MAAMoG,MAAQnsC,KAAKiP,QAAUjO,EAAQ+kC,MAAMsG,QAAS,CAK7E,GAAIoB,MACAE,IACJ,KAAK9mC,EAAI,EAAGA,EAAI7G,KAAK0sC,gBAAgBlzB,GAAO3S,IAC1C23B,EAAIhlB,EAAK3S,GAAG7G,KAAKgnC,OAAS,EAC1BhlB,EAAIxI,EAAK3S,GAAG7G,KAAKinC,OAAS,EAED,KAArBwG,EAAM/lC,QAAQ82B,IAChBiP,EAAM9lC,KAAK62B,GAEY,KAArBmP,EAAMjmC,QAAQsa,IAChB2rB,EAAMhmC,KAAKqa,EAIf,IAAI4sB,GAAa,SAAoBtoC,EAAGC,GACtC,MAAOD,GAAIC,EAEbknC,GAAMxtB,KAAK2uB,GACXjB,EAAM1tB,KAAK2uB,EAGX,IAAIC,KACJ,KAAKhoC,EAAI,EAAGA,EAAI2S,EAAK9S,OAAQG,IAAK,CAChC23B,EAAIhlB,EAAK3S,GAAG7G,KAAKgnC,OAAS,EAC1BhlB,EAAIxI,EAAK3S,GAAG7G,KAAKinC,OAAS,EAC1B+B,EAAIxvB,EAAK3S,GAAG7G,KAAKknC,OAAS,CAE1B,IAAI4H,GAASrB,EAAM/lC,QAAQ82B,GACvBuQ,EAASpB,EAAMjmC,QAAQsa,EAEArb,UAAvBkoC,EAAWC,KACbD,EAAWC,MAGb,IAAIxF,GAAU,GAAIjoC,EAClBioC,GAAQ9K,EAAIA,EACZ8K,EAAQtnB,EAAIA,EACZsnB,EAAQN,EAAIA,EAEZ3kC,KACAA,EAAIs6B,MAAQ2K,EACZjlC,EAAI2qC,MAAQroC,OACZtC,EAAI4qC,OAAStoC,OACbtC,EAAI6qC,OAAS,GAAI7tC,GAAQm9B,EAAGxc,EAAGhiB,KAAK2nC,MAEpCkH,EAAWC,GAAQC,GAAU1qC,EAE7B0iC,EAAWp/B,KAAKtD,GAIlB,IAAKm6B,EAAI,EAAGA,EAAIqQ,EAAWnoC,OAAQ83B,IACjC,IAAKxc,EAAI,EAAGA,EAAI6sB,EAAWrQ,GAAG93B,OAAQsb,IAChC6sB,EAAWrQ,GAAGxc,KAChB6sB,EAAWrQ,GAAGxc,GAAGmtB,WAAa3Q,EAAIqQ,EAAWnoC,OAAS,EAAImoC,EAAWrQ,EAAI,GAAGxc,GAAKrb,OACjFkoC,EAAWrQ,GAAGxc,GAAGotB,SAAWptB,EAAI6sB,EAAWrQ,GAAG93B,OAAS,EAAImoC,EAAWrQ,GAAGxc,EAAI,GAAKrb,OAClFkoC,EAAWrQ,GAAGxc,GAAGqtB,WAAa7Q,EAAIqQ,EAAWnoC,OAAS,GAAKsb,EAAI6sB,EAAWrQ,GAAG93B,OAAS,EAAImoC,EAAWrQ,EAAI,GAAGxc,EAAI,GAAKrb,YAO3H,KAAKE,EAAI,EAAGA,EAAI2S,EAAK9S,OAAQG,IAC3B83B,EAAQ,GAAIt9B,GACZs9B,EAAMH,EAAIhlB,EAAK3S,GAAG7G,KAAKgnC,OAAS,EAChCrI,EAAM3c,EAAIxI,EAAK3S,GAAG7G,KAAKinC,OAAS,EAChCtI,EAAMqK,EAAIxvB,EAAK3S,GAAG7G,KAAKknC,OAAS,EAEVvgC,SAAlB3G,KAAKmnC,WACPxI,EAAMv5B,MAAQoU,EAAK3S,GAAG7G,KAAKmnC,WAAa,GAG1C9iC,KACAA,EAAIs6B,MAAQA,EACZt6B,EAAI6qC,OAAS,GAAI7tC,GAAQs9B,EAAMH,EAAGG,EAAM3c,EAAGhiB,KAAK2nC,MAChDtjC,EAAI2qC,MAAQroC,OACZtC,EAAI4qC,OAAStoC,OAEbogC,EAAWp/B,KAAKtD,EAIpB,OAAO0iC,IAST/lC,EAAQoS,UAAU7C,OAAS,WAEzB,KAAOvQ,KAAKklC,iBAAiBrgC,iBAC3B7E,KAAKklC,iBAAiBngC,YAAY/E,KAAKklC,iBAAiBpgC,WAG1D9E,MAAKorC,MAAQpN,SAASM,cAAc,OACpCt+B,KAAKorC,MAAMn8B,MAAMqgC,SAAW,WAC5BtvC,KAAKorC,MAAMn8B,MAAMgF,SAAW,SAG5BjU,KAAKorC,MAAMC,OAASrN,SAASM,cAAc,UAC3Ct+B,KAAKorC,MAAMC,OAAOp8B,MAAMqgC,SAAW,WACnCtvC,KAAKorC,MAAMlN,YAAYl+B,KAAKorC,MAAMC,OAGhC,IAAIkE,GAAWvR,SAASM,cAAc,MACtCiR,GAAStgC,MAAMrC,MAAQ,MACvB2iC,EAAStgC,MAAMugC,WAAa,OAC5BD,EAAStgC,MAAMwgC,QAAU,OACzBF,EAASG,UAAY,mDACrB1vC,KAAKorC,MAAMC,OAAOnN,YAAYqR,GAGhCvvC,KAAKorC,MAAMhL,OAASpC,SAASM,cAAc,OAC3Ct+B,KAAKorC,MAAMhL,OAAOnxB,MAAMqgC,SAAW,WACnCtvC,KAAKorC,MAAMhL,OAAOnxB,MAAMigC,OAAS,MACjClvC,KAAKorC,MAAMhL,OAAOnxB,MAAMnG,KAAO,MAC/B9I,KAAKorC,MAAMhL,OAAOnxB,MAAMmwB,MAAQ,OAChCp/B,KAAKorC,MAAMlN,YAAYl+B,KAAKorC,MAAMhL,OAGlC,IAAIQ,GAAK5gC,KACL2vC,EAAc,SAAqB1kC,GACrC21B,EAAGgP,aAAa3kC,IAEd4kC,EAAe,SAAsB5kC,GACvC21B,EAAGkP,cAAc7kC,IAEf8kC,EAAe,SAAsB9kC,GACvC21B,EAAGoP,SAAS/kC,IAEVglC,EAAY,SAAmBhlC,GACjC21B,EAAGsP,WAAWjlC,GAIhBtK,GAAK2J,iBAAiBtK,KAAKorC,MAAMC,OAAQ,UAAW8E,WACpDxvC,EAAK2J,iBAAiBtK,KAAKorC,MAAMC,OAAQ,YAAasE,GACtDhvC,EAAK2J,iBAAiBtK,KAAKorC,MAAMC,OAAQ,aAAcwE,GACvDlvC,EAAK2J,iBAAiBtK,KAAKorC,MAAMC,OAAQ,aAAc0E,GACvDpvC,EAAK2J,iBAAiBtK,KAAKorC,MAAMC,OAAQ,YAAa4E,GAGtDjwC,KAAKklC,iBAAiBhH,YAAYl+B,KAAKorC,QAUzCpqC,EAAQoS,UAAUg9B,QAAU,SAAUhR,EAAOC,GAC3Cr/B,KAAKorC,MAAMn8B,MAAMmwB,MAAQA,EACzBp/B,KAAKorC,MAAMn8B,MAAMowB,OAASA,EAE1Br/B,KAAKqwC,iBAMPrvC,EAAQoS,UAAUi9B,cAAgB,WAChCrwC,KAAKorC,MAAMC,OAAOp8B,MAAMmwB,MAAQ,OAChCp/B,KAAKorC,MAAMC,OAAOp8B,MAAMowB,OAAS,OAEjCr/B,KAAKorC,MAAMC,OAAOjM,MAAQp/B,KAAKorC,MAAMC,OAAOC,YAC5CtrC,KAAKorC,MAAMC,OAAOhM,OAASr/B,KAAKorC,MAAMC,OAAOiF,aAG7CtwC,KAAKorC,MAAMhL,OAAOnxB,MAAMmwB,MAAQp/B,KAAKorC,MAAMC,OAAOC,YAAc,GAAS,MAM3EtqC,EAAQoS,UAAUm9B,eAAiB,WACjC,IAAKvwC,KAAKorC,MAAMhL,SAAWpgC,KAAKorC,MAAMhL,OAAOoQ,OAAQ,KAAM,wBAE3DxwC,MAAKorC,MAAMhL,OAAOoQ,OAAOC,QAM3BzvC,EAAQoS,UAAUs9B,cAAgB,WAC3B1wC,KAAKorC,MAAMhL,QAAWpgC,KAAKorC,MAAMhL,OAAOoQ,QAE7CxwC,KAAKorC,MAAMhL,OAAOoQ,OAAOG,QAS3B3vC,EAAQoS,UAAUw9B,cAAgB,WAEmC,MAA/D5wC,KAAKolC,eAAe/T,OAAOrxB,KAAKolC,eAAe1+B,OAAS,GAC1D1G,KAAKmrC,QAAUhgB,WAAWnrB,KAAKolC,gBAAkB,IAAMplC,KAAKorC,MAAMC,OAAOC,YAEzEtrC,KAAKmrC,QAAUhgB,WAAWnrB,KAAKolC,gBAIkC,MAA/DplC,KAAKqlC,eAAehU,OAAOrxB,KAAKqlC,eAAe3+B,OAAS,GAC1D1G,KAAKurC,QAAUpgB,WAAWnrB,KAAKqlC,gBAAkB,KAAOrlC,KAAKorC,MAAMC,OAAOiF,aAAetwC,KAAKorC,MAAMhL,OAAOkQ,cAE3GtwC,KAAKurC,QAAUpgB,WAAWnrB,KAAKqlC,iBAoBnCrkC,EAAQoS,UAAUy9B,kBAAoB,SAAU1Z,GAClCxwB,SAARwwB,IAImBxwB,SAAnBwwB,EAAI2Z,YAA6CnqC,SAAjBwwB,EAAI4Z,UACtC/wC,KAAK0mC,OAAOC,eAAexP,EAAI2Z,WAAY3Z,EAAI4Z,UAG5BpqC,SAAjBwwB,EAAI6Z,UACNhxC,KAAK0mC,OAAOE,aAAazP,EAAI6Z,UAG/BhxC,KAAKstC,WAQPtsC,EAAQoS,UAAU69B,kBAAoB,WACpC,GAAI9Z,GAAMn3B,KAAK0mC,OAAOwK,gBAEtB,OADA/Z,GAAI6Z,SAAWhxC,KAAK0mC,OAAOwE,eACpB/T,GAMTn2B,EAAQoS,UAAU+9B,UAAY,SAAU33B,GAEtCxZ,KAAKitC,gBAAgBzzB,EAAMxZ,KAAKiP,OAE5BjP,KAAKotC,WAEPptC,KAAK+mC,WAAa/mC,KAAKotC,WAAWuB,iBAGlC3uC,KAAK+mC,WAAa/mC,KAAK2uC,eAAe3uC,KAAK8mC,WAI7C9mC,KAAKoxC,iBAOPpwC,EAAQoS,UAAUixB,QAAU,SAAU7qB,GACpCxZ,KAAKmxC,UAAU33B,GACfxZ,KAAKstC,SAGDttC,KAAKqxC,oBAAsBrxC,KAAKotC,YAClCptC,KAAKuwC,kBAQTvvC,EAAQoS,UAAUwsB,WAAa,SAAU/7B,GACvC,GAAIytC,GAAiB3qC,MAIrB,IAFA3G,KAAK0wC,gBAEW/pC,SAAZ9C,EAAuB,CAoBzB,GAlBsB8C,SAAlB9C,EAAQu7B,QAAqBp/B,KAAKo/B,MAAQv7B,EAAQu7B,OAC/Bz4B,SAAnB9C,EAAQw7B,SAAsBr/B,KAAKq/B,OAASx7B,EAAQw7B,QAEhC14B,SAApB9C,EAAQolC,UAAuBjpC,KAAKolC,eAAiBvhC,EAAQolC,SACzCtiC,SAApB9C,EAAQqlC,UAAuBlpC,KAAKqlC,eAAiBxhC,EAAQqlC,SAErCviC,SAAxB9C,EAAQgiC,cAA2B7lC,KAAK6lC,YAAchiC,EAAQgiC,aACtCl/B,SAAxB9C,EAAQiiC,cAA2B9lC,KAAK8lC,YAAcjiC,EAAQiiC,aAC3Cn/B,SAAnB9C,EAAQyhC,SAAsBtlC,KAAKslC,OAASzhC,EAAQyhC,QACjC3+B,SAAnB9C,EAAQ0hC,SAAsBvlC,KAAKulC,OAAS1hC,EAAQ0hC,QACjC5+B,SAAnB9C,EAAQ2hC,SAAsBxlC,KAAKwlC,OAAS3hC,EAAQ2hC,QAE5B7+B,SAAxB9C,EAAQ6hC,cAA2B1lC,KAAK0lC,YAAc7hC,EAAQ6hC,aACtC/+B,SAAxB9C,EAAQ8hC,cAA2B3lC,KAAK2lC,YAAc9hC,EAAQ8hC,aACtCh/B,SAAxB9C,EAAQ+hC,cAA2B5lC,KAAK4lC,YAAc/hC,EAAQ+hC,aAErCj/B,SAAzB9C,EAAQ2kC,eAA4BxoC,KAAKwoC,aAAe3kC,EAAQ2kC,cAE9C7hC,SAAlB9C,EAAQoL,MAAqB,CAC/B,GAAIsiC,GAAcvxC,KAAKssC,gBAAgBzoC,EAAQoL,MAC3B,MAAhBsiC,IACFvxC,KAAKiP,MAAQsiC,GAGQ5qC,SAArB9C,EAAQqiC,WAAwBlmC,KAAKkmC,SAAWriC,EAAQqiC,UAC5Bv/B,SAA5B9C,EAAQoiC,kBAA+BjmC,KAAKimC,gBAAkBpiC,EAAQoiC,iBAC/Ct/B,SAAvB9C,EAAQuiC,aAA0BpmC,KAAKomC,WAAaviC,EAAQuiC,YACxCz/B,SAApB9C,EAAQ2tC,UAAuBxxC,KAAKsmC,YAAcziC,EAAQ2tC,SACxB7qC,SAAlC9C,EAAQ4tC,wBAAqCzxC,KAAKyxC,sBAAwB5tC,EAAQ4tC,uBACtD9qC,SAA5B9C,EAAQsiC,kBAA+BnmC,KAAKmmC,gBAAkBtiC,EAAQsiC,iBAC5Cx/B,SAA1B9C,EAAQ0iC,gBAA6BvmC,KAAKumC,cAAgB1iC,EAAQ0iC,eAEpC5/B,SAA9B9C,EAAQ2iC,oBAAiCxmC,KAAKwmC,kBAAoB3iC,EAAQ2iC,mBAC7C7/B,SAA7B9C,EAAQ4iC,mBAAgCzmC,KAAKymC,iBAAmB5iC,EAAQ4iC,kBACzC9/B,SAA/B9C,EAAQwtC,qBAAkCrxC,KAAKqxC,mBAAqBxtC,EAAQwtC,oBAEtD1qC,SAAtB9C,EAAQmkC,YAAyBhoC,KAAKwtC,iBAAmB3pC,EAAQmkC,WAC3CrhC,SAAtB9C,EAAQokC,YAAyBjoC,KAAK0tC,iBAAmB7pC,EAAQokC,WAEhDthC,SAAjB9C,EAAQwjC,OAAoBrnC,KAAK6tC,YAAchqC,EAAQwjC,MACrC1gC,SAAlB9C,EAAQyjC,QAAqBtnC,KAAK+tC,aAAelqC,EAAQyjC,OACxC3gC,SAAjB9C,EAAQ0jC,OAAoBvnC,KAAK8tC,YAAcjqC,EAAQ0jC,MACtC5gC,SAAjB9C,EAAQ2jC,OAAoBxnC,KAAKiuC,YAAcpqC,EAAQ2jC,MACrC7gC,SAAlB9C,EAAQ4jC,QAAqBznC,KAAKmuC,aAAetqC,EAAQ4jC,OACxC9gC,SAAjB9C,EAAQ6jC,OAAoB1nC,KAAKkuC,YAAcrqC,EAAQ6jC,MACtC/gC,SAAjB9C,EAAQ8jC,OAAoB3nC,KAAKquC,YAAcxqC,EAAQ8jC,MACrChhC,SAAlB9C,EAAQ+jC,QAAqB5nC,KAAKuuC,aAAe1qC,EAAQ+jC,OACxCjhC,SAAjB9C,EAAQgkC,OAAoB7nC,KAAKsuC,YAAczqC,EAAQgkC,MAClClhC,SAArB9C,EAAQikC,WAAwB9nC,KAAKyuC,gBAAkB5qC,EAAQikC,UAC1CnhC,SAArB9C,EAAQkkC,WAAwB/nC,KAAK0uC,gBAAkB7qC,EAAQkkC,UACnCphC,SAA5B9C,EAAQ4nC,iBAA+BzrC,KAAKwrC,oBAAoB3nC,EAAQ4nC,iBAE7C9kC,SAA3B9C,EAAQytC,iBAA8BA,EAAiBztC,EAAQytC,gBAE5C3qC,SAAnB2qC,IACFtxC,KAAK0mC,OAAOC,eAAe2K,EAAeR,WAAYQ,EAAeP,UACrE/wC,KAAK0mC,OAAOE,aAAa0K,EAAeN,WAIhBrqC,SAAtB9C,EAAQqkC,YAAyBloC,KAAKkoC,UAAYrkC,EAAQqkC,WACpCvhC,SAAtB9C,EAAQskC,YAAyBnoC,KAAKmoC,UAAYtkC,EAAQskC,WAC1DtkC,EAAQukC,YACuB,gBAAtBvkC,GAAQukC,WACjBpoC,KAAKooC,UAAUC,KAAOxkC,EAAQukC,UAC9BpoC,KAAKooC,UAAUE,OAASzkC,EAAQukC,YAE5BvkC,EAAQukC,UAAUC,OACpBroC,KAAKooC,UAAUC,KAAOxkC,EAAQukC,UAAUC,MAEtCxkC,EAAQukC,UAAUE,SACpBtoC,KAAKooC,UAAUE,OAASzkC,EAAQukC,UAAUE,QAEN3hC,SAAlC9C,EAAQukC,UAAUG,cACpBvoC,KAAKooC,UAAUG,YAAc1kC,EAAQukC,UAAUG,eAMvDvoC,KAAKowC,QAAQpwC,KAAKo/B,MAAOp/B,KAAKq/B,QAG1Br/B,KAAK8mC,WACP9mC,KAAKqkC,QAAQrkC,KAAK8mC,WAIhB9mC,KAAKqxC,oBAAsBrxC,KAAKotC,YAClCptC,KAAKuwC,kBAOTvvC,EAAQoS,UAAUk6B,OAAS,WACzB,GAAwB3mC,SAApB3G,KAAK+mC,WACP,KAAM,mCAGR/mC,MAAKqwC,gBACLrwC,KAAK4wC,gBACL5wC,KAAK0xC,gBACL1xC,KAAK2xC,eACL3xC,KAAK4xC,cAED5xC,KAAKiP,QAAUjO,EAAQ+kC,MAAMoG,MAAQnsC,KAAKiP,QAAUjO,EAAQ+kC,MAAMsG,QACpErsC,KAAK6xC,kBACI7xC,KAAKiP,QAAUjO,EAAQ+kC,MAAMqG,KACtCpsC,KAAK8xC,kBACI9xC,KAAKiP,QAAUjO,EAAQ+kC,MAAM8F,KAAO7rC,KAAKiP,QAAUjO,EAAQ+kC,MAAM+F,UAAY9rC,KAAKiP,QAAUjO,EAAQ+kC,MAAMgG,QACnH/rC,KAAK+xC,iBAGL/xC,KAAKgyC,iBAGPhyC,KAAKiyC,cACLjyC,KAAKkyC,iBAMPlxC,EAAQoS,UAAUu+B,aAAe,WAC/B,GAAItG,GAASrrC,KAAKorC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAE5BD,GAAIE,UAAU,EAAG,EAAGhH,EAAOjM,MAAOiM,EAAOhM,SAM3Cr+B,EAAQoS,UAAU8+B,cAAgB,WAChC,GAAIlwB,EAEJ,IAAIhiB,KAAKiP,QAAUjO,EAAQ+kC,MAAMkG,UAAYjsC,KAAKiP,QAAUjO,EAAQ+kC,MAAMmG,QAAS,CAEjF,GAEIoG,GAAUC,EAFVC,EAAUxyC,KAAKorC,MAAME,YAActrC,KAAKwoC,YAGxCxoC,MAAKiP,QAAUjO,EAAQ+kC,MAAMmG,SAC/BoG,EAAWE,EAAU,EACrBD,EAAWC,EAAU,EAAc,EAAVA,IAEvBF,EAAW,GACXC,EAAW,GAGf,IAAIlT,GAAS/5B,KAAKJ,IAA8B,IAA1BlF,KAAKorC,MAAMkF,aAAqB,KAClDtnC,EAAMhJ,KAAKmlC,OACXsN,EAAQzyC,KAAKorC,MAAME,YAActrC,KAAKmlC,OACtCr8B,EAAO2pC,EAAQF,EACfrD,EAASlmC,EAAMq2B,EAGrB,GAAIgM,GAASrrC,KAAKorC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAI5B,IAHAD,EAAIO,UAAY,EAChBP,EAAIQ,KAAO,aAEP3yC,KAAKiP,QAAUjO,EAAQ+kC,MAAMkG,SAAU,CAEzC,GAAI2G,GAAO,EACPC,EAAOxT,CACX,KAAKrd,EAAI4wB,EAAUC,EAAJ7wB,EAAUA,IAAK,CAC5B,GAAIpS,IAAKoS,EAAI4wB,IAASC,EAAOD,GAGzBhkC,EAAU,IAAJgB,EACNhD,EAAQ5M,KAAK8yC,SAASlkC,EAAK,EAAG,EAElCujC,GAAIY,YAAcnmC,EAClBulC,EAAIa,YACJb,EAAIc,OAAOnqC,EAAME,EAAMgZ,GACvBmwB,EAAIe,OAAOT,EAAOzpC,EAAMgZ,GACxBmwB,EAAI7J,SAGN6J,EAAIY,YAAc/yC,KAAKkoC,UACvBiK,EAAIgB,WAAWrqC,EAAME,EAAKupC,EAAUlT,GAiBtC,GAdIr/B,KAAKiP,QAAUjO,EAAQ+kC,MAAMmG,UAE/BiG,EAAIY,YAAc/yC,KAAKkoC,UACvBiK,EAAIiB,UAAYpzC,KAAKooC,UAAUC,KAC/B8J,EAAIa,YACJb,EAAIc,OAAOnqC,EAAME,GACjBmpC,EAAIe,OAAOT,EAAOzpC,GAClBmpC,EAAIe,OAAOT,EAAQF,EAAWD,EAAUpD,GACxCiD,EAAIe,OAAOpqC,EAAMomC,GACjBiD,EAAIkB,YACJlB,EAAI9J,OACJ8J,EAAI7J,UAGFtoC,KAAKiP,QAAUjO,EAAQ+kC,MAAMkG,UAAYjsC,KAAKiP,QAAUjO,EAAQ+kC,MAAMmG,QAAS,CAEjF,GAAIoH,GAAc,EACdC,EAAO,GAAIhyC,GAAWvB,KAAK8nC,SAAU9nC,KAAK+nC,UAAW/nC,KAAK+nC,SAAW/nC,KAAK8nC,UAAY,GAAG,EAK7F,KAJAyL,EAAKC,QACDD,EAAKE,aAAezzC,KAAK8nC,UAC3ByL,EAAKx6B,QAECw6B,EAAKG,OACX1xB,EAAIktB,GAAUqE,EAAKE,aAAezzC,KAAK8nC,WAAa9nC,KAAK+nC,SAAW/nC,KAAK8nC,UAAYzI,EAErF8S,EAAIa,YACJb,EAAIc,OAAOnqC,EAAOwqC,EAAatxB,GAC/BmwB,EAAIe,OAAOpqC,EAAMkZ,GACjBmwB,EAAI7J,SAEJ6J,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,SACnBzB,EAAIiB,UAAYpzC,KAAKkoC,UACrBiK,EAAI0B,SAASN,EAAKE,aAAc3qC,EAAO,EAAIwqC,EAAatxB,GAExDuxB,EAAKx6B,MAGPo5B,GAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,KACnB,IAAI9U,GAAQ9+B,KAAK8lC,WACjBqM,GAAI0B,SAAS/U,EAAO2T,EAAOvD,EAASlvC,KAAKmlC,UAO7CnkC,EAAQoS,UAAUg+B,cAAgB,WAGhC,GAFApxC,KAAKorC,MAAMhL,OAAOsP,UAAY,GAE1B1vC,KAAKotC,WAAY,CACnB,GAAIvpC,IACFiwC,QAAW9zC,KAAKyxC,uBAEdjB,EAAS,GAAIlvC,GAAOtB,KAAKorC,MAAMhL,OAAQv8B,EAC3C7D,MAAKorC,MAAMhL,OAAOoQ,OAASA,EAG3BxwC,KAAKorC,MAAMhL,OAAOnxB,MAAMwgC,QAAU,OAGlCe,EAAOuD,UAAU/zC,KAAKotC,WAAW7zB,QACjCi3B,EAAOwD,gBAAgBh0C,KAAKwmC,kBAG5B,IAAI5F,GAAK5gC,KACLi0C,EAAW,WACb,GAAI1qC,GAAQinC,EAAO0D,UAEnBtT,GAAGwM,WAAW+G,YAAY5qC,GAC1Bq3B,EAAGmG,WAAanG,EAAGwM,WAAWuB,iBAE9B/N,EAAG0M,SAELkD,GAAO4D,oBAAoBH,OAE3Bj0C,MAAKorC,MAAMhL,OAAOoQ,OAAS7pC,QAO/B3F,EAAQoS,UAAUs+B,cAAgB,WACC/qC,SAA7B3G,KAAKorC,MAAMhL,OAAOoQ,QACpBxwC,KAAKorC,MAAMhL,OAAOoQ,OAAOlD,UAO7BtsC,EAAQoS,UAAU6+B,YAAc,WAC9B,GAAIjyC,KAAKotC,WAAY,CACnB,GAAI/B,GAASrrC,KAAKorC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAE5BD,GAAIQ,KAAO,aACXR,EAAIkC,UAAY,OAChBlC,EAAIiB,UAAY,OAChBjB,EAAIwB,UAAY,OAChBxB,EAAIyB,aAAe,KAEnB,IAAIpV,GAAIx+B,KAAKmlC,OACTnjB,EAAIhiB,KAAKmlC,MACbgN,GAAI0B,SAAS7zC,KAAKotC,WAAWkH,WAAa,KAAOt0C,KAAKotC,WAAWmH,mBAAoB/V,EAAGxc,KAO5FhhB,EAAQoS,UAAUw+B,YAAc,WAC9B,GAEIr8B,GACAD,EACAi+B,EACAiB,EACAC,EACAC,EACAC,EACAC,EACArsB,EACAwW,EACAC,EACA6V,EACAC,EAdAzJ,EAASrrC,KAAKorC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAiB5BD,GAAIQ,KAAO,GAAK3yC,KAAK0mC,OAAOwE,eAAiB,UAG7C,IAAI6J,GAAW,KAAQ/0C,KAAKqF,MAAMm5B,EAC9BwW,EAAW,KAAQh1C,KAAKqF,MAAM2c,EAC9BizB,EAAa,EAAIj1C,KAAK0mC,OAAOwE,eAC7BgK,EAAWl1C,KAAK0mC,OAAOwK,iBAAiBJ,UAU5C,KAPAqB,EAAIO,UAAY,EAChB8B,EAAmC7tC,SAAtB3G,KAAK+tC,aAClBwF,EAAO,GAAIhyC,GAAWvB,KAAKqnC,KAAMrnC,KAAKunC,KAAMvnC,KAAKsnC,MAAOkN,GACxDjB,EAAKC,QACDD,EAAKE,aAAezzC,KAAKqnC,MAC3BkM,EAAKx6B,QAECw6B,EAAKG,OAAO,CAClB,GAAIlV,GAAI+U,EAAKE,YAETzzC,MAAKkmC,UACP3wB,EAAOvV,KAAKqpC,eAAe,GAAIhoC,GAAQm9B,EAAGx+B,KAAKwnC,KAAMxnC,KAAK2nC,OAC1DryB,EAAKtV,KAAKqpC,eAAe,GAAIhoC,GAAQm9B,EAAGx+B,KAAK0nC,KAAM1nC,KAAK2nC,OACxDwK,EAAIY,YAAc/yC,KAAKmoC,UACvBgK,EAAIa,YACJb,EAAIc,OAAO19B,EAAKipB,EAAGjpB,EAAKyM,GACxBmwB,EAAIe,OAAO59B,EAAGkpB,EAAGlpB,EAAG0M,GACpBmwB,EAAI7J,WAEJ/yB,EAAOvV,KAAKqpC,eAAe,GAAIhoC,GAAQm9B,EAAGx+B,KAAKwnC,KAAMxnC,KAAK2nC,OAC1DryB,EAAKtV,KAAKqpC,eAAe,GAAIhoC,GAAQm9B,EAAGx+B,KAAKwnC,KAAOuN,EAAU/0C,KAAK2nC,OACnEwK,EAAIY,YAAc/yC,KAAKkoC,UACvBiK,EAAIa,YACJb,EAAIc,OAAO19B,EAAKipB,EAAGjpB,EAAKyM,GACxBmwB,EAAIe,OAAO59B,EAAGkpB,EAAGlpB,EAAG0M,GACpBmwB,EAAI7J,SAEJ/yB,EAAOvV,KAAKqpC,eAAe,GAAIhoC,GAAQm9B,EAAGx+B,KAAK0nC,KAAM1nC,KAAK2nC,OAC1DryB,EAAKtV,KAAKqpC,eAAe,GAAIhoC,GAAQm9B,EAAGx+B,KAAK0nC,KAAOqN,EAAU/0C,KAAK2nC,OACnEwK,EAAIY,YAAc/yC,KAAKkoC,UACvBiK,EAAIa,YACJb,EAAIc,OAAO19B,EAAKipB,EAAGjpB,EAAKyM,GACxBmwB,EAAIe,OAAO59B,EAAGkpB,EAAGlpB,EAAG0M,GACpBmwB,EAAI7J,UAGNqM,EAAQrvC,KAAK+kC,IAAI6K,GAAY,EAAIl1C,KAAKwnC,KAAOxnC,KAAK0nC,KAClD+M,EAAOz0C,KAAKqpC,eAAe,GAAIhoC,GAAQm9B,EAAGmW,EAAO30C,KAAK2nC,OAClDriC,KAAK+kC,IAAe,EAAX6K,GAAgB,GAC3B/C,EAAIwB,UAAY,SAChBxB,EAAIyB,aAAe,MACnBa,EAAKzyB,GAAKizB,GACD3vC,KAAK4kC,IAAe,EAAXgL,GAAgB,GAClC/C,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,WAEnBzB,EAAIwB,UAAY,OAChBxB,EAAIyB,aAAe,UAErBzB,EAAIiB,UAAYpzC,KAAKkoC,UACrBiK,EAAI0B,SAAS,KAAO7zC,KAAK0lC,YAAY6N,EAAKE,cAAgB,KAAMgB,EAAKjW,EAAGiW,EAAKzyB,GAE7EuxB,EAAKx6B,OAWP,IAPAo5B,EAAIO,UAAY,EAChB8B,EAAmC7tC,SAAtB3G,KAAKmuC,aAClBoF,EAAO,GAAIhyC,GAAWvB,KAAKwnC,KAAMxnC,KAAK0nC,KAAM1nC,KAAKynC,MAAO+M,GACxDjB,EAAKC,QACDD,EAAKE,aAAezzC,KAAKwnC,MAC3B+L,EAAKx6B,QAECw6B,EAAKG,OACP1zC,KAAKkmC,UACP3wB,EAAOvV,KAAKqpC,eAAe,GAAIhoC,GAAQrB,KAAKqnC,KAAMkM,EAAKE,aAAczzC,KAAK2nC,OAC1EryB,EAAKtV,KAAKqpC,eAAe,GAAIhoC,GAAQrB,KAAKunC,KAAMgM,EAAKE,aAAczzC,KAAK2nC,OACxEwK,EAAIY,YAAc/yC,KAAKmoC,UACvBgK,EAAIa,YACJb,EAAIc,OAAO19B,EAAKipB,EAAGjpB,EAAKyM,GACxBmwB,EAAIe,OAAO59B,EAAGkpB,EAAGlpB,EAAG0M,GACpBmwB,EAAI7J,WAEJ/yB,EAAOvV,KAAKqpC,eAAe,GAAIhoC,GAAQrB,KAAKqnC,KAAMkM,EAAKE,aAAczzC,KAAK2nC,OAC1EryB,EAAKtV,KAAKqpC,eAAe,GAAIhoC,GAAQrB,KAAKqnC,KAAO2N,EAAUzB,EAAKE,aAAczzC,KAAK2nC,OACnFwK,EAAIY,YAAc/yC,KAAKkoC,UACvBiK,EAAIa,YACJb,EAAIc,OAAO19B,EAAKipB,EAAGjpB,EAAKyM,GACxBmwB,EAAIe,OAAO59B,EAAGkpB,EAAGlpB,EAAG0M,GACpBmwB,EAAI7J,SAEJ/yB,EAAOvV,KAAKqpC,eAAe,GAAIhoC,GAAQrB,KAAKunC,KAAMgM,EAAKE,aAAczzC,KAAK2nC,OAC1EryB,EAAKtV,KAAKqpC,eAAe,GAAIhoC,GAAQrB,KAAKunC,KAAOyN,EAAUzB,EAAKE,aAAczzC,KAAK2nC,OACnFwK,EAAIY,YAAc/yC,KAAKkoC,UACvBiK,EAAIa,YACJb,EAAIc,OAAO19B,EAAKipB,EAAGjpB,EAAKyM,GACxBmwB,EAAIe,OAAO59B,EAAGkpB,EAAGlpB,EAAG0M,GACpBmwB,EAAI7J,UAGNoM,EAAQpvC,KAAK4kC,IAAIgL,GAAY,EAAIl1C,KAAKqnC,KAAOrnC,KAAKunC,KAClDkN,EAAOz0C,KAAKqpC,eAAe,GAAIhoC,GAAQqzC,EAAOnB,EAAKE,aAAczzC,KAAK2nC,OAClEriC,KAAK+kC,IAAe,EAAX6K,GAAgB,GAC3B/C,EAAIwB,UAAY,SAChBxB,EAAIyB,aAAe,MACnBa,EAAKzyB,GAAKizB,GACD3vC,KAAK4kC,IAAe,EAAXgL,GAAgB,GAClC/C,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,WAEnBzB,EAAIwB,UAAY,OAChBxB,EAAIyB,aAAe,UAErBzB,EAAIiB,UAAYpzC,KAAKkoC,UACrBiK,EAAI0B,SAAS,KAAO7zC,KAAK2lC,YAAY4N,EAAKE,cAAgB,KAAMgB,EAAKjW,EAAGiW,EAAKzyB,GAE7EuxB,EAAKx6B,MAaP,KATAo5B,EAAIO,UAAY,EAChB8B,EAAmC7tC,SAAtB3G,KAAKuuC,aAClBgF,EAAO,GAAIhyC,GAAWvB,KAAK2nC,KAAM3nC,KAAK6nC,KAAM7nC,KAAK4nC,MAAO4M,GACxDjB,EAAKC,QACDD,EAAKE,aAAezzC,KAAK2nC,MAC3B4L,EAAKx6B,OAEP27B,EAAQpvC,KAAK+kC,IAAI6K,GAAY,EAAIl1C,KAAKqnC,KAAOrnC,KAAKunC,KAClDoN,EAAQrvC,KAAK4kC,IAAIgL,GAAY,EAAIl1C,KAAKwnC,KAAOxnC,KAAK0nC,MAC1C6L,EAAKG,OAEXn+B,EAAOvV,KAAKqpC,eAAe,GAAIhoC,GAAQqzC,EAAOC,EAAOpB,EAAKE,eAC1DtB,EAAIY,YAAc/yC,KAAKkoC,UACvBiK,EAAIa,YACJb,EAAIc,OAAO19B,EAAKipB,EAAGjpB,EAAKyM,GACxBmwB,EAAIe,OAAO39B,EAAKipB,EAAIyW,EAAY1/B,EAAKyM,GACrCmwB,EAAI7J,SAEJ6J,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,SACnBzB,EAAIiB,UAAYpzC,KAAKkoC,UACrBiK,EAAI0B,SAAS7zC,KAAK4lC,YAAY2N,EAAKE,cAAgB,IAAKl+B,EAAKipB,EAAI,EAAGjpB,EAAKyM,GAEzEuxB,EAAKx6B,MAEPo5B,GAAIO,UAAY,EAChBn9B,EAAOvV,KAAKqpC,eAAe,GAAIhoC,GAAQqzC,EAAOC,EAAO30C,KAAK2nC,OAC1DryB,EAAKtV,KAAKqpC,eAAe,GAAIhoC,GAAQqzC,EAAOC,EAAO30C,KAAK6nC,OACxDsK,EAAIY,YAAc/yC,KAAKkoC,UACvBiK,EAAIa,YACJb,EAAIc,OAAO19B,EAAKipB,EAAGjpB,EAAKyM,GACxBmwB,EAAIe,OAAO59B,EAAGkpB,EAAGlpB,EAAG0M,GACpBmwB,EAAI7J,SAGJ6J,EAAIO,UAAY,EAEhBmC,EAAS70C,KAAKqpC,eAAe,GAAIhoC,GAAQrB,KAAKqnC,KAAMrnC,KAAKwnC,KAAMxnC,KAAK2nC,OACpEmN,EAAS90C,KAAKqpC,eAAe,GAAIhoC,GAAQrB,KAAKunC,KAAMvnC,KAAKwnC,KAAMxnC,KAAK2nC,OACpEwK,EAAIY,YAAc/yC,KAAKkoC,UACvBiK,EAAIa,YACJb,EAAIc,OAAO4B,EAAOrW,EAAGqW,EAAO7yB,GAC5BmwB,EAAIe,OAAO4B,EAAOtW,EAAGsW,EAAO9yB,GAC5BmwB,EAAI7J,SAEJuM,EAAS70C,KAAKqpC,eAAe,GAAIhoC,GAAQrB,KAAKqnC,KAAMrnC,KAAK0nC,KAAM1nC,KAAK2nC,OACpEmN,EAAS90C,KAAKqpC,eAAe,GAAIhoC,GAAQrB,KAAKunC,KAAMvnC,KAAK0nC,KAAM1nC,KAAK2nC,OACpEwK,EAAIY,YAAc/yC,KAAKkoC,UACvBiK,EAAIa,YACJb,EAAIc,OAAO4B,EAAOrW,EAAGqW,EAAO7yB,GAC5BmwB,EAAIe,OAAO4B,EAAOtW,EAAGsW,EAAO9yB,GAC5BmwB,EAAI7J,SAGJ6J,EAAIO,UAAY,EAEhBn9B,EAAOvV,KAAKqpC,eAAe,GAAIhoC,GAAQrB,KAAKqnC,KAAMrnC,KAAKwnC,KAAMxnC,KAAK2nC,OAClEryB,EAAKtV,KAAKqpC,eAAe,GAAIhoC,GAAQrB,KAAKqnC,KAAMrnC,KAAK0nC,KAAM1nC,KAAK2nC,OAChEwK,EAAIY,YAAc/yC,KAAKkoC,UACvBiK,EAAIa,YACJb,EAAIc,OAAO19B,EAAKipB,EAAGjpB,EAAKyM,GACxBmwB,EAAIe,OAAO59B,EAAGkpB,EAAGlpB,EAAG0M,GACpBmwB,EAAI7J,SAEJ/yB,EAAOvV,KAAKqpC,eAAe,GAAIhoC,GAAQrB,KAAKunC,KAAMvnC,KAAKwnC,KAAMxnC,KAAK2nC,OAClEryB,EAAKtV,KAAKqpC,eAAe,GAAIhoC,GAAQrB,KAAKunC,KAAMvnC,KAAK0nC,KAAM1nC,KAAK2nC,OAChEwK,EAAIY,YAAc/yC,KAAKkoC,UACvBiK,EAAIa,YACJb,EAAIc,OAAO19B,EAAKipB,EAAGjpB,EAAKyM,GACxBmwB,EAAIe,OAAO59B,EAAGkpB,EAAGlpB,EAAG0M,GACpBmwB,EAAI7J,QAGJ,IAAIhD,GAAStlC,KAAKslC,MACdA,GAAO5+B,OAAS,IAClBs4B,EAAU,GAAMh/B,KAAKqF,MAAM2c,EAC3B0yB,GAAS10C,KAAKqnC,KAAOrnC,KAAKunC,MAAQ,EAClCoN,EAAQrvC,KAAK+kC,IAAI6K,GAAY,EAAIl1C,KAAKwnC,KAAOxI,EAAUh/B,KAAK0nC,KAAO1I,EACnEyV,EAAOz0C,KAAKqpC,eAAe,GAAIhoC,GAAQqzC,EAAOC,EAAO30C,KAAK2nC,OACtDriC,KAAK+kC,IAAe,EAAX6K,GAAgB,GAC3B/C,EAAIwB,UAAY,SAChBxB,EAAIyB,aAAe,OACVtuC,KAAK4kC,IAAe,EAAXgL,GAAgB,GAClC/C,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,WAEnBzB,EAAIwB,UAAY,OAChBxB,EAAIyB,aAAe,UAErBzB,EAAIiB,UAAYpzC,KAAKkoC,UACrBiK,EAAI0B,SAASvO,EAAQmP,EAAKjW,EAAGiW,EAAKzyB,GAIpC,IAAIujB,GAASvlC,KAAKulC,MACdA,GAAO7+B,OAAS,IAClBq4B,EAAU,GAAM/+B,KAAKqF,MAAMm5B,EAC3BkW,EAAQpvC,KAAK4kC,IAAIgL,GAAY,EAAIl1C,KAAKqnC,KAAOtI,EAAU/+B,KAAKunC,KAAOxI,EACnE4V,GAAS30C,KAAKwnC,KAAOxnC,KAAK0nC,MAAQ,EAClC+M,EAAOz0C,KAAKqpC,eAAe,GAAIhoC,GAAQqzC,EAAOC,EAAO30C,KAAK2nC,OACtDriC,KAAK+kC,IAAe,EAAX6K,GAAgB,GAC3B/C,EAAIwB,UAAY,SAChBxB,EAAIyB,aAAe,OACVtuC,KAAK4kC,IAAe,EAAXgL,GAAgB,GAClC/C,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,WAEnBzB,EAAIwB,UAAY,OAChBxB,EAAIyB,aAAe,UAErBzB,EAAIiB,UAAYpzC,KAAKkoC,UACrBiK,EAAI0B,SAAStO,EAAQkP,EAAKjW,EAAGiW,EAAKzyB,GAIpC,IAAIwjB,GAASxlC,KAAKwlC,MACdA,GAAO9+B,OAAS,IAClB6hB,EAAS,GACTmsB,EAAQpvC,KAAK+kC,IAAI6K,GAAY,EAAIl1C,KAAKqnC,KAAOrnC,KAAKunC,KAClDoN,EAAQrvC,KAAK4kC,IAAIgL,GAAY,EAAIl1C,KAAKwnC,KAAOxnC,KAAK0nC,KAClDkN,GAAS50C,KAAK2nC,KAAO3nC,KAAK6nC,MAAQ,EAClC4M,EAAOz0C,KAAKqpC,eAAe,GAAIhoC,GAAQqzC,EAAOC,EAAOC,IACrDzC,EAAIwB,UAAY,QAChBxB,EAAIyB,aAAe,SACnBzB,EAAIiB,UAAYpzC,KAAKkoC,UACrBiK,EAAI0B,SAASrO,EAAQiP,EAAKjW,EAAIjW,EAAQksB,EAAKzyB,KAU/ChhB,EAAQoS,UAAU0/B,SAAW,SAAUqC,EAAGC,EAAGC,GAC3C,GAAIC,GAAGC,EAAGC,EAAGC,EAAGC,EAAIC,CAMpB,QAJAF,EAAIJ,EAAID,EACRM,EAAKpwC,KAAKqK,MAAMwlC,EAAI,IACpBQ,EAAIF,GAAK,EAAInwC,KAAK4R,IAAIi+B,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,OAAS9oC,SAAa,IAAJ4oC,GAAW,IAAM5oC,SAAa,IAAJ6oC,GAAW,IAAM7oC,SAAa,IAAJ8oC,GAAW,KAO1Fx0C,EAAQoS,UAAUy+B,gBAAkB,WAClC,GAEIlT,GACA8T,EACAzpC,EACA4sC,EACA/uC,EACAgvC,EACAzC,EACAL,EAEAllC,EACAC,EACAC,EACA+nC,EAdAzK,EAASrrC,KAAKorC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAkB5B,IAHAD,EAAI4D,SAAW,QACf5D,EAAI6D,QAAU,UAEUrvC,SAApB3G,KAAK+mC,YAA4B/mC,KAAK+mC,WAAWrgC,QAAU,GAA/D,CAGA,IAAKG,EAAI,EAAGA,EAAI7G,KAAK+mC,WAAWrgC,OAAQG,IAAK,CAC3C,GAAImoC,GAAQhvC,KAAKwpC,2BAA2BxpC,KAAK+mC,WAAWlgC,GAAG83B,OAC3DsQ,EAASjvC,KAAKypC,4BAA4BuF,EAE9ChvC,MAAK+mC,WAAWlgC,GAAGmoC,MAAQA,EAC3BhvC,KAAK+mC,WAAWlgC,GAAGooC,OAASA,CAG5B,IAAIgH,GAAcj2C,KAAKwpC,2BAA2BxpC,KAAK+mC,WAAWlgC,GAAGqoC,OACrElvC,MAAK+mC,WAAWlgC,GAAGqvC,KAAOl2C,KAAKimC,gBAAkBgQ,EAAYvvC,UAAYuvC,EAAYjN,EAIvF,GAAImN,GAAY,SAAmB7vC,EAAGC,GACpC,MAAOA,GAAE2vC,KAAO5vC,EAAE4vC,KAIpB,IAFAl2C,KAAK+mC,WAAW9mB,KAAKk2B,GAEjBn2C,KAAKiP,QAAUjO,EAAQ+kC,MAAMsG,SAC/B,IAAKxlC,EAAI,EAAGA,EAAI7G,KAAK+mC,WAAWrgC,OAAQG,IAMtC,GALA83B,EAAQ3+B,KAAK+mC,WAAWlgC;AACxB4rC,EAAQzyC,KAAK+mC,WAAWlgC,GAAGsoC,WAC3BnmC,EAAMhJ,KAAK+mC,WAAWlgC,GAAGuoC,SACzBwG,EAAQ51C,KAAK+mC,WAAWlgC,GAAGwoC,WAEb1oC,SAAVg4B,GAAiCh4B,SAAV8rC,GAA+B9rC,SAARqC,GAA+BrC,SAAVivC,EAAqB,CAE1F,GAAI51C,KAAKqmC,gBAAkBrmC,KAAKomC,WAAY,CAK1C,GAAIgQ,GAAQ/0C,EAAQ6oB,SAAS0rB,EAAM5G,MAAOrQ,EAAMqQ,OAC5CqH,EAAQh1C,EAAQ6oB,SAASlhB,EAAIgmC,MAAOyD,EAAMzD,OAC1CsH,EAAej1C,EAAQk1C,aAAaH,EAAOC,GAC3CxuC,EAAMyuC,EAAa5vC,QAGvBmvC,GAAiBS,EAAatN,EAAI,MAElC6M,IAAiB,CAGfA,IAEFC,GAAQnX,EAAMA,MAAMqK,EAAIyJ,EAAM9T,MAAMqK,EAAIhgC,EAAI21B,MAAMqK,EAAI4M,EAAMjX,MAAMqK,GAAK,EACvEn7B,EAAmE,KAA9D,GAAKioC,EAAO91C,KAAK2nC,MAAQ3nC,KAAKqF,MAAM2jC,EAAIhpC,KAAKumC,eAClDz4B,EAAI,EAEA9N,KAAKomC,YACPr4B,EAAIzI,KAAKL,IAAI,EAAIqxC,EAAa9X,EAAI32B,EAAM,EAAG,GAC3CurC,EAAYpzC,KAAK8yC,SAASjlC,EAAGC,EAAGC,GAChCglC,EAAcK,IAEdrlC,EAAI,EACJqlC,EAAYpzC,KAAK8yC,SAASjlC,EAAGC,EAAGC,GAChCglC,EAAc/yC,KAAKkoC,aAGnBkL,EAAY,OACZL,EAAc/yC,KAAKkoC,WAGvBiK,EAAIO,UAAY1yC,KAAKw2C,gBAAgB7X,GACrCwT,EAAIiB,UAAYA,EAChBjB,EAAIY,YAAcA,EAClBZ,EAAIa,YACJb,EAAIc,OAAOtU,EAAMsQ,OAAOzQ,EAAGG,EAAMsQ,OAAOjtB,GACxCmwB,EAAIe,OAAOT,EAAMxD,OAAOzQ,EAAGiU,EAAMxD,OAAOjtB,GACxCmwB,EAAIe,OAAO0C,EAAM3G,OAAOzQ,EAAGoX,EAAM3G,OAAOjtB,GACxCmwB,EAAIe,OAAOlqC,EAAIimC,OAAOzQ,EAAGx1B,EAAIimC,OAAOjtB,GACpCmwB,EAAIkB,YACJlB,EAAI9J,OACJ8J,EAAI7J,cAKN,KAAKzhC,EAAI,EAAGA,EAAI7G,KAAK+mC,WAAWrgC,OAAQG,IACtC83B,EAAQ3+B,KAAK+mC,WAAWlgC,GACxB4rC,EAAQzyC,KAAK+mC,WAAWlgC,GAAGsoC,WAC3BnmC,EAAMhJ,KAAK+mC,WAAWlgC,GAAGuoC,SAEXzoC,SAAVg4B,GAAiCh4B,SAAV8rC,IAEzBqD,GAAQnX,EAAMA,MAAMqK,EAAIyJ,EAAM9T,MAAMqK,GAAK,EACzCn7B,EAAmE,KAA9D,GAAKioC,EAAO91C,KAAK2nC,MAAQ3nC,KAAKqF,MAAM2jC,EAAIhpC,KAAKumC,eAElD4L,EAAIO,UAA0C,EAA9B1yC,KAAKw2C,gBAAgB7X,GACrCwT,EAAIY,YAAc/yC,KAAK8yC,SAASjlC,EAAG,EAAG,GACtCskC,EAAIa,YACJb,EAAIc,OAAOtU,EAAMsQ,OAAOzQ,EAAGG,EAAMsQ,OAAOjtB,GACxCmwB,EAAIe,OAAOT,EAAMxD,OAAOzQ,EAAGiU,EAAMxD,OAAOjtB,GACxCmwB,EAAI7J,UAGQ3hC,SAAVg4B,GAA+Bh4B,SAARqC,IAEzB8sC,GAAQnX,EAAMA,MAAMqK,EAAIhgC,EAAI21B,MAAMqK,GAAK,EACvCn7B,EAAmE,KAA9D,GAAKioC,EAAO91C,KAAK2nC,MAAQ3nC,KAAKqF,MAAM2jC,EAAIhpC,KAAKumC,eAElD4L,EAAIO,UAA0C,EAA9B1yC,KAAKw2C,gBAAgB7X,GACrCwT,EAAIY,YAAc/yC,KAAK8yC,SAASjlC,EAAG,EAAG,GACtCskC,EAAIa,YACJb,EAAIc,OAAOtU,EAAMsQ,OAAOzQ,EAAGG,EAAMsQ,OAAOjtB,GACxCmwB,EAAIe,OAAOlqC,EAAIimC,OAAOzQ,EAAGx1B,EAAIimC,OAAOjtB,GACpCmwB,EAAI7J,YAMdtnC,EAAQoS,UAAUojC,gBAAkB,SAAU7X,GAC5C,MAAch4B,UAAVg4B,EACE3+B,KAAKimC,gBACA,GAAKtH,EAAMqQ,MAAMhG,EAAIhpC,KAAKooC,UAAUG,cAElCvoC,KAAK6mC,IAAImC,EAAIhpC,KAAK0mC,OAAOwE,gBAAkBlrC,KAAKooC,UAAUG,YAIhEvoC,KAAKooC,UAAUG,aAOxBvnC,EAAQoS,UAAU4+B,eAAiB,WACjC,GAEInrC,GAFAwkC,EAASrrC,KAAKorC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAG5B,MAAwBzrC,SAApB3G,KAAK+mC,YAA4B/mC,KAAK+mC,WAAWrgC,QAAU,GAA/D,CAGA,IAAKG,EAAI,EAAGA,EAAI7G,KAAK+mC,WAAWrgC,OAAQG,IAAK,CAC3C,GAAImoC,GAAQhvC,KAAKwpC,2BAA2BxpC,KAAK+mC,WAAWlgC,GAAG83B,OAC3DsQ,EAASjvC,KAAKypC,4BAA4BuF,EAC9ChvC,MAAK+mC,WAAWlgC,GAAGmoC,MAAQA,EAC3BhvC,KAAK+mC,WAAWlgC,GAAGooC,OAASA,CAG5B,IAAIgH,GAAcj2C,KAAKwpC,2BAA2BxpC,KAAK+mC,WAAWlgC,GAAGqoC,OACrElvC,MAAK+mC,WAAWlgC,GAAGqvC,KAAOl2C,KAAKimC,gBAAkBgQ,EAAYvvC,UAAYuvC,EAAYjN,EAIvF,GAAImN,GAAY,SAAmB7vC,EAAGC,GACpC,MAAOA,GAAE2vC,KAAO5vC,EAAE4vC,KAEpBl2C,MAAK+mC,WAAW9mB,KAAKk2B,EAGrB,IAAI3D,GAAUxyC,KAAKorC,MAAME,YAActrC,KAAKwoC,YAC5C,KAAK3hC,EAAI,EAAGA,EAAI7G,KAAK+mC,WAAWrgC,OAAQG,IAAK,CAC3C,GAAI83B,GAAQ3+B,KAAK+mC,WAAWlgC,EAE5B,IAAI7G,KAAKiP,QAAUjO,EAAQ+kC,MAAMiG,QAAS,CAGxC,GAAIz2B,GAAOvV,KAAKqpC,eAAe1K,EAAMuQ,OACrCiD,GAAIO,UAAY,EAChBP,EAAIY,YAAc/yC,KAAKmoC,UACvBgK,EAAIa,YACJb,EAAIc,OAAO19B,EAAKipB,EAAGjpB,EAAKyM,GACxBmwB,EAAIe,OAAOvU,EAAMsQ,OAAOzQ,EAAGG,EAAMsQ,OAAOjtB,GACxCmwB,EAAI7J,SAIN,GAAIzJ,EAEFA,GADE7+B,KAAKiP,QAAUjO,EAAQ+kC,MAAMmG,QACxBsG,EAAU,EAAI,EAAIA,GAAW7T,EAAMA,MAAMv5B,MAAQpF,KAAK8nC,WAAa9nC,KAAK+nC,SAAW/nC,KAAK8nC,UAExF0K,CAGT,IAAIiE,EAEFA,GADEz2C,KAAKimC,gBACEpH,GAAQF,EAAMqQ,MAAMhG,EAEpBnK,IAAS7+B,KAAK6mC,IAAImC,EAAIhpC,KAAK0mC,OAAOwE,gBAEhC,EAATuL,IACFA,EAAS,EAGX,IAAI7nC,GAAKhC,EAAO8+B,CACZ1rC,MAAKiP,QAAUjO,EAAQ+kC,MAAMkG,UAE/Br9B,EAAqE,KAA9D,GAAK+vB,EAAMA,MAAMv5B,MAAQpF,KAAK8nC,UAAY9nC,KAAKqF,MAAMD,OAC5DwH,EAAQ5M,KAAK8yC,SAASlkC,EAAK,EAAG,GAC9B88B,EAAc1rC,KAAK8yC,SAASlkC,EAAK,EAAG,KAC3B5O,KAAKiP,QAAUjO,EAAQ+kC,MAAMmG,SACtCt/B,EAAQ5M,KAAKooC,UAAUC,KACvBqD,EAAc1rC,KAAKooC,UAAUE,SAG7B15B,EAA8E,KAAvE,GAAK+vB,EAAMA,MAAMqK,EAAIhpC,KAAK2nC,MAAQ3nC,KAAKqF,MAAM2jC,EAAIhpC,KAAKumC,eAC7D35B,EAAQ5M,KAAK8yC,SAASlkC,EAAK,EAAG,GAC9B88B,EAAc1rC,KAAK8yC,SAASlkC,EAAK,EAAG,KAItCujC,EAAIO,UAAY1yC,KAAKw2C,gBAAgB7X,GACrCwT,EAAIY,YAAcrH,EAClByG,EAAIiB,UAAYxmC,EAChBulC,EAAIa,YACJb,EAAIuE,IAAI/X,EAAMsQ,OAAOzQ,EAAGG,EAAMsQ,OAAOjtB,EAAGy0B,EAAQ,EAAa,EAAVnxC,KAAKqxC,IAAQ,GAChExE,EAAI9J,OACJ8J,EAAI7J,YAQRtnC,EAAQoS,UAAU2+B,eAAiB,WACjC,GAEIlrC,GAAG+J,EAAGgmC,EAASC,EAFfxL,EAASrrC,KAAKorC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAG5B,MAAwBzrC,SAApB3G,KAAK+mC,YAA4B/mC,KAAK+mC,WAAWrgC,QAAU,GAA/D,CAGA,IAAKG,EAAI,EAAGA,EAAI7G,KAAK+mC,WAAWrgC,OAAQG,IAAK,CAC3C,GAAImoC,GAAQhvC,KAAKwpC,2BAA2BxpC,KAAK+mC,WAAWlgC,GAAG83B,OAC3DsQ,EAASjvC,KAAKypC,4BAA4BuF,EAC9ChvC,MAAK+mC,WAAWlgC,GAAGmoC,MAAQA,EAC3BhvC,KAAK+mC,WAAWlgC,GAAGooC,OAASA,CAG5B,IAAIgH,GAAcj2C,KAAKwpC,2BAA2BxpC,KAAK+mC,WAAWlgC,GAAGqoC,OACrElvC,MAAK+mC,WAAWlgC,GAAGqvC,KAAOl2C,KAAKimC,gBAAkBgQ,EAAYvvC,UAAYuvC,EAAYjN,EAIvF,GAAImN,GAAY,SAAmB7vC,EAAGC,GACpC,MAAOA,GAAE2vC,KAAO5vC,EAAE4vC,KAEpBl2C,MAAK+mC,WAAW9mB,KAAKk2B,GAErBhE,EAAI4D,SAAW,QACf5D,EAAI6D,QAAU,OAGd,IAAIc,GAAS92C,KAAKgoC,UAAY,EAC1B+O,EAAS/2C,KAAKioC,UAAY,CAC9B,KAAKphC,EAAI,EAAGA,EAAI7G,KAAK+mC,WAAWrgC,OAAQG,IAAK,CAC3C,GAGI+H,GAAKhC,EAAO8+B,EAHZ/M,EAAQ3+B,KAAK+mC,WAAWlgC,EAIxB7G,MAAKiP,QAAUjO,EAAQ+kC,MAAM+F,UAE/Bl9B,EAAqE,KAA9D,GAAK+vB,EAAMA,MAAMv5B,MAAQpF,KAAK8nC,UAAY9nC,KAAKqF,MAAMD,OAC5DwH,EAAQ5M,KAAK8yC,SAASlkC,EAAK,EAAG,GAC9B88B,EAAc1rC,KAAK8yC,SAASlkC,EAAK,EAAG,KAC3B5O,KAAKiP,QAAUjO,EAAQ+kC,MAAMgG,SACtCn/B,EAAQ5M,KAAKooC,UAAUC,KACvBqD,EAAc1rC,KAAKooC,UAAUE,SAG7B15B,EAA8E,KAAvE,GAAK+vB,EAAMA,MAAMqK,EAAIhpC,KAAK2nC,MAAQ3nC,KAAKqF,MAAM2jC,EAAIhpC,KAAKumC,eAC7D35B,EAAQ5M,KAAK8yC,SAASlkC,EAAK,EAAG,GAC9B88B,EAAc1rC,KAAK8yC,SAASlkC,EAAK,EAAG,KAIlC5O,KAAKiP,QAAUjO,EAAQ+kC,MAAMgG,UAC/B+K,EAAS92C,KAAKgoC,UAAY,IAAMrJ,EAAMA,MAAMv5B,MAAQpF,KAAK8nC,WAAa9nC,KAAK+nC,SAAW/nC,KAAK8nC,UAAY,GAAM,IAC7GiP,EAAS/2C,KAAKioC,UAAY,IAAMtJ,EAAMA,MAAMv5B,MAAQpF,KAAK8nC,WAAa9nC,KAAK+nC,SAAW/nC,KAAK8nC,UAAY,GAAM,IAI/G,IAAIlH,GAAK5gC,KACLspC,EAAU3K,EAAMA,MAChB31B,IAAS21B,MAAO,GAAIt9B,GAAQioC,EAAQ9K,EAAIsY,EAAQxN,EAAQtnB,EAAI+0B,EAAQzN,EAAQN,KAAQrK,MAAO,GAAIt9B,GAAQioC,EAAQ9K,EAAIsY,EAAQxN,EAAQtnB,EAAI+0B,EAAQzN,EAAQN,KAAQrK,MAAO,GAAIt9B,GAAQioC,EAAQ9K,EAAIsY,EAAQxN,EAAQtnB,EAAI+0B,EAAQzN,EAAQN,KAAQrK,MAAO,GAAIt9B,GAAQioC,EAAQ9K,EAAIsY,EAAQxN,EAAQtnB,EAAI+0B,EAAQzN,EAAQN,KAC7SkG,IAAYvQ,MAAO,GAAIt9B,GAAQioC,EAAQ9K,EAAIsY,EAAQxN,EAAQtnB,EAAI+0B,EAAQ/2C,KAAK2nC,QAAWhJ,MAAO,GAAIt9B,GAAQioC,EAAQ9K,EAAIsY,EAAQxN,EAAQtnB,EAAI+0B,EAAQ/2C,KAAK2nC,QAAWhJ,MAAO,GAAIt9B,GAAQioC,EAAQ9K,EAAIsY,EAAQxN,EAAQtnB,EAAI+0B,EAAQ/2C,KAAK2nC,QAAWhJ,MAAO,GAAIt9B,GAAQioC,EAAQ9K,EAAIsY,EAAQxN,EAAQtnB,EAAI+0B,EAAQ/2C,KAAK2nC,OAGjT3+B,GAAIS,QAAQ,SAAUpF,GACpBA,EAAI4qC,OAASrO,EAAGyI,eAAehlC,EAAIs6B,SAErCuQ,EAAOzlC,QAAQ,SAAUpF,GACvBA,EAAI4qC,OAASrO,EAAGyI,eAAehlC,EAAIs6B,QAIrC,IAAIqY,KAAcH,QAAS7tC,EAAKiuC,OAAQ51C,EAAQ61C,IAAIhI,EAAO,GAAGvQ,MAAOuQ,EAAO,GAAGvQ,SAAYkY,SAAU7tC,EAAI,GAAIA,EAAI,GAAIkmC,EAAO,GAAIA,EAAO,IAAK+H,OAAQ51C,EAAQ61C,IAAIhI,EAAO,GAAGvQ,MAAOuQ,EAAO,GAAGvQ,SAAYkY,SAAU7tC,EAAI,GAAIA,EAAI,GAAIkmC,EAAO,GAAIA,EAAO,IAAK+H,OAAQ51C,EAAQ61C,IAAIhI,EAAO,GAAGvQ,MAAOuQ,EAAO,GAAGvQ,SAAYkY,SAAU7tC,EAAI,GAAIA,EAAI,GAAIkmC,EAAO,GAAIA,EAAO,IAAK+H,OAAQ51C,EAAQ61C,IAAIhI,EAAO,GAAGvQ,MAAOuQ,EAAO,GAAGvQ,SAAYkY,SAAU7tC,EAAI,GAAIA,EAAI,GAAIkmC,EAAO,GAAIA,EAAO,IAAK+H,OAAQ51C,EAAQ61C,IAAIhI,EAAO,GAAGvQ,MAAOuQ,EAAO,GAAGvQ,QAI/f,KAHAA,EAAMqY,SAAWA,EAGZpmC,EAAI,EAAGA,EAAIomC,EAAStwC,OAAQkK,IAAK,CACpCgmC,EAAUI,EAASpmC,EACnB,IAAIumC,GAAcn3C,KAAKwpC,2BAA2BoN,EAAQK,OAC1DL,GAAQV,KAAOl2C,KAAKimC,gBAAkBkR,EAAYzwC,UAAYywC,EAAYnO,EAwB5E,IAjBAgO,EAAS/2B,KAAK,SAAU3Z,EAAGC,GACzB,GAAI0iB,GAAO1iB,EAAE2vC,KAAO5vC,EAAE4vC,IACtB,OAAIjtB,GAAaA,EAGb3iB,EAAEuwC,UAAY7tC,EAAY,EAC1BzC,EAAEswC,UAAY7tC,EAAY,GAGvB,IAITmpC,EAAIO,UAAY1yC,KAAKw2C,gBAAgB7X,GACrCwT,EAAIY,YAAcrH,EAClByG,EAAIiB,UAAYxmC,EAEXgE,EAAI,EAAGA,EAAIomC,EAAStwC,OAAQkK,IAC/BgmC,EAAUI,EAASpmC,GACnBimC,EAAUD,EAAQC,QAClB1E,EAAIa,YACJb,EAAIc,OAAO4D,EAAQ,GAAG5H,OAAOzQ,EAAGqY,EAAQ,GAAG5H,OAAOjtB,GAClDmwB,EAAIe,OAAO2D,EAAQ,GAAG5H,OAAOzQ,EAAGqY,EAAQ,GAAG5H,OAAOjtB,GAClDmwB,EAAIe,OAAO2D,EAAQ,GAAG5H,OAAOzQ,EAAGqY,EAAQ,GAAG5H,OAAOjtB,GAClDmwB,EAAIe,OAAO2D,EAAQ,GAAG5H,OAAOzQ,EAAGqY,EAAQ,GAAG5H,OAAOjtB,GAClDmwB,EAAIe,OAAO2D,EAAQ,GAAG5H,OAAOzQ,EAAGqY,EAAQ,GAAG5H,OAAOjtB,GAClDmwB,EAAI9J,OACJ8J,EAAI7J,YASVtnC,EAAQoS,UAAU0+B,gBAAkB,WAClC,GAEInT,GACA93B,EAHAwkC,EAASrrC,KAAKorC,MAAMC,OACpB8G,EAAM9G,EAAO+G,WAAW,KAI5B,MAAwBzrC,SAApB3G,KAAK+mC,YAA4B/mC,KAAK+mC,WAAWrgC,QAAU,GAA/D,CAGA,IAAKG,EAAI,EAAGA,EAAI7G,KAAK+mC,WAAWrgC,OAAQG,IAAK,CAC3C,GAAImoC,GAAQhvC,KAAKwpC,2BAA2BxpC,KAAK+mC,WAAWlgC,GAAG83B,OAC3DsQ,EAASjvC,KAAKypC,4BAA4BuF,EAE9ChvC,MAAK+mC,WAAWlgC,GAAGmoC,MAAQA,EAC3BhvC,KAAK+mC,WAAWlgC,GAAGooC,OAASA,EAI9B,GAAIjvC,KAAK+mC,WAAWrgC,OAAS,EAAG,CAW9B,IAVAi4B,EAAQ3+B,KAAK+mC,WAAW,GAExBoL,EAAIO,UAAY1yC,KAAKw2C,gBAAgB7X,GACrCwT,EAAI4D,SAAW,QACf5D,EAAI6D,QAAU,QACd7D,EAAIY,YAAc/yC,KAAKooC,UAAUE,OACjC6J,EAAIa,YACJb,EAAIc,OAAOtU,EAAMsQ,OAAOzQ,EAAGG,EAAMsQ,OAAOjtB,GAGnCnb,EAAI,EAAGA,EAAI7G,KAAK+mC,WAAWrgC,OAAQG,IACtC83B,EAAQ3+B,KAAK+mC,WAAWlgC,GACxBsrC,EAAIe,OAAOvU,EAAMsQ,OAAOzQ,EAAGG,EAAMsQ,OAAOjtB,EAI1CmwB,GAAI7J,YASRtnC,EAAQoS,UAAUw8B,aAAe,SAAU3kC,GAWzC,GAVAA,EAAQA,GAASC,OAAOD,MAIpBjL,KAAKo3C,gBACPp3C,KAAKq3C,WAAWpsC,GAIlBjL,KAAKo3C,eAAiBnsC,EAAMqsC,MAAwB,IAAhBrsC,EAAMqsC,MAA+B,IAAjBrsC,EAAMssC,OACzDv3C,KAAKo3C,gBAAmBp3C,KAAKw3C,UAAlC,CAGAx3C,KAAKy3C,YAAchP,EAAUx9B,GAC7BjL,KAAK03C,YAAc9O,EAAU39B,GAE7BjL,KAAK23C,WAAa,GAAIjyC,MAAK1F,KAAKwzC,OAChCxzC,KAAK43C,SAAW,GAAIlyC,MAAK1F,KAAK0zC,KAC9B1zC,KAAK63C,iBAAmB73C,KAAK0mC,OAAOwK,iBAEpClxC,KAAKorC,MAAMn8B,MAAM6oC,OAAS,MAK1B,IAAIlX,GAAK5gC,IACTA,MAAK+3C,YAAc,SAAU9sC,GAC3B21B,EAAGoX,aAAa/sC,IAElBjL,KAAKi4C,UAAY,SAAUhtC,GACzB21B,EAAGyW,WAAWpsC,IAEhBtK,EAAK2J,iBAAiB0zB,SAAU,YAAa4C,EAAGmX,aAChDp3C,EAAK2J,iBAAiB0zB,SAAU,UAAW4C,EAAGqX,WAC9Ct3C,EAAKqK,eAAeC,KAQtBjK,EAAQoS,UAAU4kC,aAAe,SAAU/sC,GACzCA,EAAQA,GAASC,OAAOD,KAGxB,IAAIitC,GAAQ/sB,WAAWsd,EAAUx9B,IAAUjL,KAAKy3C,YAC5CU,EAAQhtB,WAAWyd,EAAU39B,IAAUjL,KAAK03C,YAE5CU,EAAgBp4C,KAAK63C,iBAAiB/G,WAAaoH,EAAQ,IAC3DG,EAAcr4C,KAAK63C,iBAAiB9G,SAAWoH,EAAQ,IAEvDG,EAAY,EACZC,EAAYjzC,KAAK4kC,IAAIoO,EAAY,IAAM,EAAIhzC,KAAKqxC,GAIhDrxC,MAAK4R,IAAI5R,KAAK4kC,IAAIkO,IAAkBG,IACtCH,EAAgB9yC,KAAKgkB,MAAM8uB,EAAgB9yC,KAAKqxC,IAAMrxC,KAAKqxC,GAAK,MAE9DrxC,KAAK4R,IAAI5R,KAAK+kC,IAAI+N,IAAkBG,IACtCH,GAAiB9yC,KAAKgkB,MAAM8uB,EAAgB9yC,KAAKqxC,GAAK,IAAO,IAAOrxC,KAAKqxC,GAAK,MAI5ErxC,KAAK4R,IAAI5R,KAAK4kC,IAAImO,IAAgBE,IACpCF,EAAc/yC,KAAKgkB,MAAM+uB,EAAc/yC,KAAKqxC,IAAMrxC,KAAKqxC,IAErDrxC,KAAK4R,IAAI5R,KAAK+kC,IAAIgO,IAAgBE,IACpCF,GAAe/yC,KAAKgkB,MAAM+uB,EAAc/yC,KAAKqxC,GAAK,IAAO,IAAOrxC,KAAKqxC,IAGvE32C,KAAK0mC,OAAOC,eAAeyR,EAAeC,GAC1Cr4C,KAAKstC,QAGL,IAAIkL,GAAax4C,KAAKixC,mBACtBjxC,MAAKy4C,KAAK,uBAAwBD,GAElC73C,EAAKqK,eAAeC,IAQtBjK,EAAQoS,UAAUikC,WAAa,SAAUpsC,GACvCjL,KAAKorC,MAAMn8B,MAAM6oC,OAAS,OAC1B93C,KAAKo3C,gBAAiB,EAGtBz2C,EAAKmK,oBAAoBkzB,SAAU,YAAah+B,KAAK+3C,aACrDp3C,EAAKmK,oBAAoBkzB,SAAU,UAAWh+B,KAAKi4C,WACnDt3C,EAAKqK,eAAeC,IAOtBjK,EAAQoS,UAAU88B,WAAa,SAAUjlC,GACvC,GAAIs4B,GAAQ,IACRmV,EAAe14C,KAAKorC,MAAMviC,wBAC1B8vC,EAASlQ,EAAUx9B,GAASytC,EAAa5vC,KACzC8vC,EAAShQ,EAAU39B,GAASytC,EAAa1vC,GAE7C,IAAKhJ,KAAKsmC,YAAV,CASA,GALItmC,KAAK64C,gBACP3U,aAAalkC,KAAK64C,gBAIhB74C,KAAKo3C,eAEP,WADAp3C,MAAK84C,cAIP,IAAI94C,KAAKwxC,SAAWxxC,KAAKwxC,QAAQuH,UAAW,CAE1C,GAAIA,GAAY/4C,KAAKg5C,iBAAiBL,EAAQC,EAC1CG,KAAc/4C,KAAKwxC,QAAQuH,YAEzBA,EACF/4C,KAAKi5C,aAAaF,GAElB/4C,KAAK84C,oBAGJ,CAEL,GAAIlY,GAAK5gC,IACTA,MAAK64C,eAAiBxuC,WAAW,WAC/Bu2B,EAAGiY,eAAiB,IAGpB,IAAIE,GAAYnY,EAAGoY,iBAAiBL,EAAQC,EACxCG,IACFnY,EAAGqY,aAAaF,IAEjBxV,MAOPviC,EAAQoS,UAAU08B,cAAgB,SAAU7kC,GAC1CjL,KAAKw3C,WAAY,CAEjB,IAAI5W,GAAK5gC,IACTA,MAAKk5C,YAAc,SAAUjuC,GAC3B21B,EAAGuY,aAAaluC,IAElBjL,KAAKo5C,WAAa,SAAUnuC,GAC1B21B,EAAGyY,YAAYpuC,IAEjBtK,EAAK2J,iBAAiB0zB,SAAU,YAAa4C,EAAGsY,aAChDv4C,EAAK2J,iBAAiB0zB,SAAU,WAAY4C,EAAGwY,YAE/Cp5C,KAAK4vC,aAAa3kC,IAMpBjK,EAAQoS,UAAU+lC,aAAe,SAAUluC,GACzCjL,KAAKg4C,aAAa/sC,IAMpBjK,EAAQoS,UAAUimC,YAAc,SAAUpuC,GACxCjL,KAAKw3C,WAAY,EAEjB72C,EAAKmK,oBAAoBkzB,SAAU,YAAah+B,KAAKk5C,aACrDv4C,EAAKmK,oBAAoBkzB,SAAU,WAAYh+B,KAAKo5C,YAEpDp5C,KAAKq3C,WAAWpsC,IAQlBjK,EAAQoS,UAAU48B,SAAW,SAAU/kC,GAChCA,IACHA,EAAQC,OAAOD,MAGjB,IAAI8hB,GAAQ,CAcZ,IAbI9hB,EAAMquC,WAERvsB,EAAQ9hB,EAAMquC,WAAa,IAClBruC,EAAMsuC,SAIfxsB,GAAS9hB,EAAMsuC,OAAS,GAMtBxsB,EAAO,CACT,GAAIysB,GAAYx5C,KAAK0mC,OAAOwE,eACxBuO,EAAYD,GAAa,EAAIzsB,EAAQ,GAEzC/sB,MAAK0mC,OAAOE,aAAa6S,GACzBz5C,KAAKstC,SAELttC,KAAK84C,eAIP,GAAIN,GAAax4C,KAAKixC,mBACtBjxC,MAAKy4C,KAAK,uBAAwBD,GAKlC73C,EAAKqK,eAAeC,IAUtBjK,EAAQoS,UAAUsmC,gBAAkB,SAAU/a,EAAOgb,GAKnD,QAASr+B,GAAKkjB,GACZ,MAAOA,GAAI,EAAI,EAAQ,EAAJA,EAAQ,GAAK,EALlC,GAAIl4B,GAAIqzC,EAAS,GACbpzC,EAAIozC,EAAS,GACbl5C,EAAIk5C,EAAS,GAMb7lB,EAAKxY,GAAM/U,EAAEi4B,EAAIl4B,EAAEk4B,IAAMG,EAAM3c,EAAI1b,EAAE0b,IAAMzb,EAAEyb,EAAI1b,EAAE0b,IAAM2c,EAAMH,EAAIl4B,EAAEk4B,IACrEob,EAAKt+B,GAAM7a,EAAE+9B,EAAIj4B,EAAEi4B,IAAMG,EAAM3c,EAAIzb,EAAEyb,IAAMvhB,EAAEuhB,EAAIzb,EAAEyb,IAAM2c,EAAMH,EAAIj4B,EAAEi4B,IACrEqb,EAAKv+B,GAAMhV,EAAEk4B,EAAI/9B,EAAE+9B,IAAMG,EAAM3c,EAAIvhB,EAAEuhB,IAAM1b,EAAE0b,EAAIvhB,EAAEuhB,IAAM2c,EAAMH,EAAI/9B,EAAE+9B,GAGzE,SAAc,GAAN1K,GAAiB,GAAN8lB,GAAW9lB,GAAM8lB,GAAc,GAANA,GAAiB,GAANC,GAAWD,GAAMC,GAAc,GAAN/lB,GAAiB,GAAN+lB,GAAW/lB,GAAM+lB,IAU9G74C,EAAQoS,UAAU4lC,iBAAmB,SAAUxa,EAAGxc,GAChD,GAAInb,GACAizC,EAAU,IAEdf,EAAY,KACRgB,EAAmB,KACnBC,EAAc,KACd/C,EAAS,GAAI71C,GAAQo9B,EAAGxc,EAE5B,IAAIhiB,KAAKiP,QAAUjO,EAAQ+kC,MAAM8F,KAAO7rC,KAAKiP,QAAUjO,EAAQ+kC,MAAM+F,UAAY9rC,KAAKiP,QAAUjO,EAAQ+kC,MAAMgG,QAE5G,IAAKllC,EAAI7G,KAAK+mC,WAAWrgC,OAAS,EAAGG,GAAK,EAAGA,IAAK,CAChDkyC,EAAY/4C,KAAK+mC,WAAWlgC,EAC5B,IAAImwC,GAAW+B,EAAU/B,QACzB,IAAIA,EACF,IAAK,GAAIlpC,GAAIkpC,EAAStwC,OAAS,EAAGoH,GAAK,EAAGA,IAAK,CAE7C,GAAI8oC,GAAUI,EAASlpC,GACnB+oC,EAAUD,EAAQC,QAClBoD,GAAapD,EAAQ,GAAG5H,OAAQ4H,EAAQ,GAAG5H,OAAQ4H,EAAQ,GAAG5H,QAC9DiL,GAAarD,EAAQ,GAAG5H,OAAQ4H,EAAQ,GAAG5H,OAAQ4H,EAAQ,GAAG5H,OAClE,IAAIjvC,KAAK05C,gBAAgBzC,EAAQgD,IAAcj6C,KAAK05C,gBAAgBzC,EAAQiD,GAE1E,MAAOnB,QAOf,KAAKlyC,EAAI,EAAGA,EAAI7G,KAAK+mC,WAAWrgC,OAAQG,IAAK,CAC3CkyC,EAAY/4C,KAAK+mC,WAAWlgC,EAC5B,IAAI83B,GAAQoa,EAAU9J,MACtB,IAAItQ,EAAO,CACT,GAAIwb,GAAQ70C,KAAK4R,IAAIsnB,EAAIG,EAAMH,GAC3B4b,EAAQ90C,KAAK4R,IAAI8K,EAAI2c,EAAM3c,GAC3Bk0B,EAAO5wC,KAAK+0C,KAAKF,EAAQA,EAAQC,EAAQA,IAExB,OAAhBJ,GAA+BA,EAAP9D,IAA8B4D,EAAP5D,IAClD8D,EAAc9D,EACd6D,EAAmBhB,IAM3B,MAAOgB,IAQT/4C,EAAQoS,UAAU6lC,aAAe,SAAUF,GACzC,GAAI9Z,GAASqb,EAAMC,CAEdv6C,MAAKwxC,SAgCRvS,EAAUj/B,KAAKwxC,QAAQgJ,IAAIvb,QAC3Bqb,EAAOt6C,KAAKwxC,QAAQgJ,IAAIF,KACxBC,EAAMv6C,KAAKwxC,QAAQgJ,IAAID,MAjCvBtb,EAAUjB,SAASM,cAAc,OACjCW,EAAQhwB,MAAMqgC,SAAW,WACzBrQ,EAAQhwB,MAAMwgC,QAAU,OACxBxQ,EAAQhwB,MAAMZ,OAAS,oBACvB4wB,EAAQhwB,MAAMrC,MAAQ,UACtBqyB,EAAQhwB,MAAMb,WAAa,wBAC3B6wB,EAAQhwB,MAAMwrC,aAAe,MAC7Bxb,EAAQhwB,MAAMyrC,UAAY,qCAE1BJ,EAAOtc,SAASM,cAAc,OAC9Bgc,EAAKrrC,MAAMqgC,SAAW,WACtBgL,EAAKrrC,MAAMowB,OAAS,OACpBib,EAAKrrC,MAAMmwB,MAAQ,IACnBkb,EAAKrrC,MAAM0rC,WAAa,oBAExBJ,EAAMvc,SAASM,cAAc,OAC7Bic,EAAItrC,MAAMqgC,SAAW,WACrBiL,EAAItrC,MAAMowB,OAAS,IACnBkb,EAAItrC,MAAMmwB,MAAQ,IAClBmb,EAAItrC,MAAMZ,OAAS,oBACnBksC,EAAItrC,MAAMwrC,aAAe,MAEzBz6C,KAAKwxC,SACHuH,UAAW,KACXyB,KACEvb,QAASA,EACTqb,KAAMA,EACNC,IAAKA,KASXv6C,KAAK84C,eAEL94C,KAAKwxC,QAAQuH,UAAYA,EACO,kBAArB/4C,MAAKsmC,YACdrH,EAAQyQ,UAAY1vC,KAAKsmC,YAAYyS,EAAUpa,OAE/CM,EAAQyQ,UAAY,kBAAyB1vC,KAAKslC,OAAS,aAAeyT,EAAUpa,MAAMH,EAAI,qBAA4Bx+B,KAAKulC,OAAS,aAAewT,EAAUpa,MAAM3c,EAAI,qBAA4BhiB,KAAKwlC,OAAS,aAAeuT,EAAUpa,MAAMqK,EAAI,qBAG1P/J,EAAQhwB,MAAMnG,KAAO,IACrBm2B,EAAQhwB,MAAMjG,IAAM,IACpBhJ,KAAKorC,MAAMlN,YAAYe,GACvBj/B,KAAKorC,MAAMlN,YAAYoc,GACvBt6C,KAAKorC,MAAMlN,YAAYqc,EAGvB,IAAIK,GAAe3b,EAAQ4b,YACvBC,EAAgB7b,EAAQ8b,aACxBC,EAAaV,EAAKS,aAClBE,EAAWV,EAAIM,YACfK,EAAYX,EAAIQ,aAEhBjyC,EAAOiwC,EAAU9J,OAAOzQ,EAAIoc,EAAe,CAC/C9xC,GAAOxD,KAAKL,IAAIK,KAAKJ,IAAI4D,EAAM,IAAK9I,KAAKorC,MAAME,YAAc,GAAKsP,GAElEN,EAAKrrC,MAAMnG,KAAOiwC,EAAU9J,OAAOzQ,EAAI,KACvC8b,EAAKrrC,MAAMjG,IAAM+vC,EAAU9J,OAAOjtB,EAAIg5B,EAAa,KACnD/b,EAAQhwB,MAAMnG,KAAOA,EAAO,KAC5Bm2B,EAAQhwB,MAAMjG,IAAM+vC,EAAU9J,OAAOjtB,EAAIg5B,EAAaF,EAAgB,KACtEP,EAAItrC,MAAMnG,KAAOiwC,EAAU9J,OAAOzQ,EAAIyc,EAAW,EAAI,KACrDV,EAAItrC,MAAMjG,IAAM+vC,EAAU9J,OAAOjtB,EAAIk5B,EAAY,EAAI,MAOvDl6C,EAAQoS,UAAU0lC,aAAe,WAC/B,GAAI94C,KAAKwxC,QAAS,CAChBxxC,KAAKwxC,QAAQuH,UAAY,IAEzB,KAAK,GAAI5yC,KAAQnG,MAAKwxC,QAAQgJ,IAC5B,GAAIx6C,KAAKwxC,QAAQgJ,IAAIp0C,eAAeD,GAAO,CACzC,GAAIyC,GAAO5I,KAAKwxC,QAAQgJ,IAAIr0C,EACxByC,IAAQA,EAAK4C,YACf5C,EAAK4C,WAAWzG,YAAY6D,MA6BtC/I,EAAOD,QAAUoB,GAIb,SAASnB,EAAQD,GAerB,QAASkpC,GAAQzkC,GACf,MAAIA,GAAY82C,EAAM92C,GAAtB,OAWF,QAAS82C,GAAM92C,GACb,IAAK,GAAIyF,KAAOg/B,GAAQ11B,UACtB/O,EAAIyF,GAAOg/B,EAAQ11B,UAAUtJ,EAE/B,OAAOzF,GAxBTxE,EAAOD,QAAUkpC,EAoCjBA,EAAQ11B,UAAU4sB,GAClB8I,EAAQ11B,UAAU9I,iBAAmB,SAASW,EAAOjB,GAInD,MAHAhK,MAAKo7C,WAAap7C,KAAKo7C,gBACtBp7C,KAAKo7C,WAAWnwC,GAASjL,KAAKo7C,WAAWnwC,QACvCtD,KAAKqC,GACDhK,MAaT8oC,EAAQ11B,UAAUioC,KAAO,SAASpwC,EAAOjB,GAIvC,QAASg2B,KACPsb,EAAKnb,IAAIl1B,EAAO+0B,GAChBh2B,EAAGkJ,MAAMlT,KAAMyG,WALjB,GAAI60C,GAAOt7C,IAUX,OATAA,MAAKo7C,WAAap7C,KAAKo7C,eAOvBpb,EAAGh2B,GAAKA,EACRhK,KAAKggC,GAAG/0B,EAAO+0B,GACRhgC,MAaT8oC,EAAQ11B,UAAU+sB,IAClB2I,EAAQ11B,UAAUmoC,eAClBzS,EAAQ11B,UAAUooC,mBAClB1S,EAAQ11B,UAAUtI,oBAAsB,SAASG,EAAOjB,GAItD,GAHAhK,KAAKo7C,WAAap7C,KAAKo7C,eAGnB,GAAK30C,UAAUC,OAEjB,MADA1G,MAAKo7C,cACEp7C,IAIT,IAAIy7C,GAAYz7C,KAAKo7C,WAAWnwC,EAChC,KAAKwwC,EAAW,MAAOz7C,KAGvB,IAAI,GAAKyG,UAAUC,OAEjB,aADO1G,MAAKo7C,WAAWnwC,GAChBjL,IAKT,KAAK,GADD07C,GACK70C,EAAI,EAAGA,EAAI40C,EAAU/0C,OAAQG,IAEpC,GADA60C,EAAKD,EAAU50C,GACX60C,IAAO1xC,GAAM0xC,EAAG1xC,KAAOA,EAAI,CAC7ByxC,EAAUjyC,OAAO3C,EAAG,EACpB,OAGJ,MAAO7G,OAWT8oC,EAAQ11B,UAAUqlC,KAAO,SAASxtC,GAChCjL,KAAKo7C,WAAap7C,KAAKo7C,cACvB,IAAI9zB,MAAUja,MAAM9M,KAAKkG,UAAW,GAChCg1C,EAAYz7C,KAAKo7C,WAAWnwC,EAEhC,IAAIwwC,EAAW,CACbA,EAAYA,EAAUpuC,MAAM,EAC5B,KAAK,GAAIxG,GAAI,EAAGgB,EAAM4zC,EAAU/0C,OAAYmB,EAAJhB,IAAWA,EACjD40C,EAAU50C,GAAGqM,MAAMlT,KAAMsnB,GAI7B,MAAOtnB,OAWT8oC,EAAQ11B,UAAUuoC,UAAY,SAAS1wC,GAErC,MADAjL,MAAKo7C,WAAap7C,KAAKo7C,eAChBp7C,KAAKo7C,WAAWnwC,QAWzB69B,EAAQ11B,UAAUwoC,aAAe,SAAS3wC,GACxC,QAAUjL,KAAK27C,UAAU1wC,GAAOvE,SAM9B,SAAS7G,EAAQD,GAUrB,QAASyB,GAAQm9B,EAAGxc,EAAGgnB,GACrBhpC,KAAKw+B,EAAU73B,SAAN63B,EAAkBA,EAAI,EAC/Bx+B,KAAKgiB,EAAUrb,SAANqb,EAAkBA,EAAI,EAC/BhiB,KAAKgpC,EAAUriC,SAANqiC,EAAkBA,EAAI,EASjC3nC,EAAQ6oB,SAAW,SAAU5jB,EAAGC,GAC9B,GAAIs1C,GAAM,GAAIx6C,EAId,OAHAw6C,GAAIrd,EAAIl4B,EAAEk4B,EAAIj4B,EAAEi4B,EAChBqd,EAAI75B,EAAI1b,EAAE0b,EAAIzb,EAAEyb,EAChB65B,EAAI7S,EAAI1iC,EAAE0iC,EAAIziC,EAAEyiC,EACT6S,GASTx6C,EAAQ2lB,IAAM,SAAU1gB,EAAGC,GACzB,GAAIu1C,GAAM,GAAIz6C,EAId,OAHAy6C,GAAItd,EAAIl4B,EAAEk4B,EAAIj4B,EAAEi4B,EAChBsd,EAAI95B,EAAI1b,EAAE0b,EAAIzb,EAAEyb,EAChB85B,EAAI9S,EAAI1iC,EAAE0iC,EAAIziC,EAAEyiC,EACT8S,GASTz6C,EAAQ61C,IAAM,SAAU5wC,EAAGC,GACzB,MAAO,IAAIlF,IAASiF,EAAEk4B,EAAIj4B,EAAEi4B,GAAK,GAAIl4B,EAAE0b,EAAIzb,EAAEyb,GAAK,GAAI1b,EAAE0iC,EAAIziC,EAAEyiC,GAAK,IAUrE3nC,EAAQk1C,aAAe,SAAUjwC,EAAGC,GAClC,GAAI+vC,GAAe,GAAIj1C,EAMvB,OAJAi1C,GAAa9X,EAAIl4B,EAAE0b,EAAIzb,EAAEyiC,EAAI1iC,EAAE0iC,EAAIziC,EAAEyb,EACrCs0B,EAAat0B,EAAI1b,EAAE0iC,EAAIziC,EAAEi4B,EAAIl4B,EAAEk4B,EAAIj4B,EAAEyiC,EACrCsN,EAAatN,EAAI1iC,EAAEk4B,EAAIj4B,EAAEyb,EAAI1b,EAAE0b,EAAIzb,EAAEi4B,EAE9B8X,GAOTj1C,EAAQ+R,UAAU1M,OAAS,WACzB,MAAOpB,MAAK+0C,KAAKr6C,KAAKw+B,EAAIx+B,KAAKw+B,EAAIx+B,KAAKgiB,EAAIhiB,KAAKgiB,EAAIhiB,KAAKgpC,EAAIhpC,KAAKgpC,IAGrEnpC,EAAOD,QAAUyB,GAIb,SAASxB,EAAQD,GASrB,QAASwB,GAAQo9B,EAAGxc,GAClBhiB,KAAKw+B,EAAU73B,SAAN63B,EAAkBA,EAAI,EAC/Bx+B,KAAKgiB,EAAUrb,SAANqb,EAAkBA,EAAI,EAGjCniB,EAAOD,QAAUwB,GAIb,SAASvB,EAAQD,EAASM,GAgB9B,QAASgB,KACPlB,KAAK+7C,YAAc,GAAI16C,GACvBrB,KAAKg8C,eACLh8C,KAAKg8C,YAAYlL,WAAa,EAC9B9wC,KAAKg8C,YAAYjL,SAAW,EAC5B/wC,KAAKi8C,UAAY,IAEjBj8C,KAAKk8C,eAAiB,GAAI76C,GAC1BrB,KAAKm8C,eAAiB,GAAI96C,GAAQ,GAAMiE,KAAKqxC,GAAI,EAAG,GAEpD32C,KAAKo8C,6BAtBP,GAAI/6C,GAAUnB,EAAoB,GA+BlCgB,GAAOkS,UAAUg2B,eAAiB,SAAU5K,EAAGxc,EAAGgnB,GAChDhpC,KAAK+7C,YAAYvd,EAAIA,EACrBx+B,KAAK+7C,YAAY/5B,EAAIA,EACrBhiB,KAAK+7C,YAAY/S,EAAIA,EAErBhpC,KAAKo8C,8BAWPl7C,EAAOkS,UAAUuzB,eAAiB,SAAUmK,EAAYC,GACnCpqC,SAAfmqC,IACF9wC,KAAKg8C,YAAYlL,WAAaA,GAGfnqC,SAAboqC,IACF/wC,KAAKg8C,YAAYjL,SAAWA,EACxB/wC,KAAKg8C,YAAYjL,SAAW,IAAG/wC,KAAKg8C,YAAYjL,SAAW,GAC3D/wC,KAAKg8C,YAAYjL,SAAW,GAAMzrC,KAAKqxC,KAAI32C,KAAKg8C,YAAYjL,SAAW,GAAMzrC,KAAKqxC,KAGrEhwC,SAAfmqC,GAAyCnqC,SAAboqC,GAC9B/wC,KAAKo8C,8BAQTl7C,EAAOkS,UAAU89B,eAAiB,WAChC,GAAImL,KAIJ,OAHAA,GAAIvL,WAAa9wC,KAAKg8C,YAAYlL,WAClCuL,EAAItL,SAAW/wC,KAAKg8C,YAAYjL,SAEzBsL,GAOTn7C,EAAOkS,UAAUwzB,aAAe,SAAUlgC,GACzBC,SAAXD,IAEJ1G,KAAKi8C,UAAYv1C,EAKb1G,KAAKi8C,UAAY,MAAMj8C,KAAKi8C,UAAY,KACxCj8C,KAAKi8C,UAAY,IAAKj8C,KAAKi8C,UAAY,GAE3Cj8C,KAAKo8C,+BAOPl7C,EAAOkS,UAAU83B,aAAe,WAC9B,MAAOlrC,MAAKi8C,WAOd/6C,EAAOkS,UAAU02B,kBAAoB,WACnC,MAAO9pC,MAAKk8C,gBAOdh7C,EAAOkS,UAAU+2B,kBAAoB,WACnC,MAAOnqC,MAAKm8C,gBAOdj7C,EAAOkS,UAAUgpC,2BAA6B,WAE5Cp8C,KAAKk8C,eAAe1d,EAAIx+B,KAAK+7C,YAAYvd,EAAIx+B,KAAKi8C,UAAY32C,KAAK4kC,IAAIlqC,KAAKg8C,YAAYlL,YAAcxrC,KAAK+kC,IAAIrqC,KAAKg8C,YAAYjL,UAChI/wC,KAAKk8C,eAAel6B,EAAIhiB,KAAK+7C,YAAY/5B,EAAIhiB,KAAKi8C,UAAY32C,KAAK+kC,IAAIrqC,KAAKg8C,YAAYlL,YAAcxrC,KAAK+kC,IAAIrqC,KAAKg8C,YAAYjL,UAChI/wC,KAAKk8C,eAAelT,EAAIhpC,KAAK+7C,YAAY/S,EAAIhpC,KAAKi8C,UAAY32C,KAAK4kC,IAAIlqC,KAAKg8C,YAAYjL,UAGxF/wC,KAAKm8C,eAAe3d,EAAIl5B,KAAKqxC,GAAK,EAAI32C,KAAKg8C,YAAYjL,SACvD/wC,KAAKm8C,eAAen6B,EAAI,EACxBhiB,KAAKm8C,eAAenT,GAAKhpC,KAAKg8C,YAAYlL,YAG5CjxC,EAAOD,QAAUsB,GAIb,SAASrB,EAAQD,EAASM,GAa9B,QAASiB,GAAOqY,EAAMozB,EAAQ0P,GAC5Bt8C,KAAKwZ,KAAOA,EACZxZ,KAAK4sC,OAASA,EACd5sC,KAAKs8C,MAAQA,EAEbt8C,KAAKuJ,MAAQ5C,OACb3G,KAAKoF,MAAQuB,OAGb3G,KAAKuZ,OAAS+iC,EAAMzP,kBAAkBrzB,EAAKoe,MAAO53B,KAAK4sC,QAGvD5sC,KAAKuZ,OAAO0G,KAAK,SAAU3Z,EAAGC,GAC5B,MAAOD,GAAIC,EAAI,EAAQA,EAAJD,EAAQ,GAAK,IAG9BtG,KAAKuZ,OAAO7S,OAAS,GACvB1G,KAAKm0C,YAAY,GAInBn0C,KAAK+mC,cAEL/mC,KAAKM,QAAS,EACdN,KAAKu8C,eAAiB51C,OAElB21C,EAAM7V,kBACRzmC,KAAKM,QAAS,EACdN,KAAKw8C,oBAELx8C,KAAKM,QAAS,EAvClB,GAAIQ,GAAWZ,EAAoB,GA+CnCiB,GAAOiS,UAAUqpC,SAAW,WAC1B,MAAOz8C,MAAKM,QAOda,EAAOiS,UAAUspC,kBAAoB,WAInC,IAHA,GAAI70C,GAAM7H,KAAKuZ,OAAO7S,OAElBG,EAAI,EACD7G,KAAK+mC,WAAWlgC,IACrBA,GAGF,OAAOvB,MAAKgkB,MAAMziB,EAAIgB,EAAM,MAO9B1G,EAAOiS,UAAUkhC,SAAW,WAC1B,MAAOt0C,MAAKs8C,MAAMzW,aAOpB1kC,EAAOiS,UAAUupC,UAAY,WAC3B,MAAO38C,MAAK4sC,QAOdzrC,EAAOiS,UAAUmhC,iBAAmB,WAClC,MAAmB5tC,UAAf3G,KAAKuJ,MAEFvJ,KAAKuZ,OAAOvZ,KAAKuJ,OAFxB,QASFpI,EAAOiS,UAAUwpC,UAAY,WAC3B,MAAO58C,MAAKuZ,QAQdpY,EAAOiS,UAAUypC,SAAW,SAAUtzC,GACpC,GAAIA,GAASvJ,KAAKuZ,OAAO7S,OAAQ,KAAM,2BAEvC,OAAO1G,MAAKuZ,OAAOhQ,IAQrBpI,EAAOiS,UAAUu7B,eAAiB,SAAUplC,GAG1C,GAFc5C,SAAV4C,IAAqBA,EAAQvJ,KAAKuJ,OAExB5C,SAAV4C,EAAqB,QAEzB,IAAIw9B,EACJ,IAAI/mC,KAAK+mC,WAAWx9B,GAClBw9B,EAAa/mC,KAAK+mC,WAAWx9B,OACxB,CACL,GAAIqG,KACJA,GAAEg9B,OAAS5sC,KAAK4sC,OAChBh9B,EAAExK,MAAQpF,KAAKuZ,OAAOhQ,EAEtB,IAAIuzC,GAAW,GAAIh8C,GAASd,KAAKwZ,MAAQ4mB,OAAQ,SAAgBzuB,GAC7D,MAAOA,GAAK/B,EAAEg9B,SAAWh9B,EAAExK,SACxBwyB,KACPmP,GAAa/mC,KAAKs8C,MAAM3N,eAAemO,GAEvC98C,KAAK+mC,WAAWx9B,GAASw9B,EAG3B,MAAOA,IAMT5lC,EAAOiS,UAAUi6B,kBAAoB,SAAU3jC,GAC7C1J,KAAKu8C,eAAiB7yC,GAQxBvI,EAAOiS,UAAU+gC,YAAc,SAAU5qC,GACvC,GAAIA,GAASvJ,KAAKuZ,OAAO7S,OAAQ,KAAM,2BAEvC1G,MAAKuJ,MAAQA,EACbvJ,KAAKoF,MAAQpF,KAAKuZ,OAAOhQ,IAO3BpI,EAAOiS,UAAUopC,iBAAmB,SAAUjzC,GAC9B5C,SAAV4C,IAAqBA,EAAQ,EAEjC,IAAI6hC,GAAQprC,KAAKs8C,MAAMlR,KAEvB,IAAI7hC,EAAQvJ,KAAKuZ,OAAO7S,OAAQ,CACT1G,KAAK2uC,eAAeplC,EAIlB5C,UAAnBykC,EAAM2R,WACR3R,EAAM2R,SAAW/e,SAASM,cAAc,OACxC8M,EAAM2R,SAAS9tC,MAAMqgC,SAAW,WAChClE,EAAM2R,SAAS9tC,MAAMrC,MAAQ,OAC7Bw+B,EAAMlN,YAAYkN,EAAM2R,UAE1B,IAAIA,GAAW/8C,KAAK08C,mBACpBtR,GAAM2R,SAASrN,UAAY,wBAA0BqN,EAAW,IAEhE3R,EAAM2R,SAAS9tC,MAAMigC,OAAS,OAC9B9D,EAAM2R,SAAS9tC,MAAMnG,KAAO,MAE5B,IAAI83B,GAAK5gC,IACTqK,YAAW,WACTu2B,EAAG4b,iBAAiBjzC,EAAQ,IAC3B,IACHvJ,KAAKM,QAAS,MAEdN,MAAKM,QAAS,EAGSqG,SAAnBykC,EAAM2R,WACR3R,EAAMrmC,YAAYqmC,EAAM2R,UACxB3R,EAAM2R,SAAWp2C,QAGf3G,KAAKu8C,gBAAgBv8C,KAAKu8C,kBAIlC18C,EAAOD,QAAUuB,GAIb,SAAStB,EAAQD,EAASM,GAe9B,QAASoB,GAAO0jC,EAAWnhC,GACzB,GAAkB8C,SAAdq+B,EACF,KAAM,qCAKR,IAHAhlC,KAAKglC,UAAYA,EACjBhlC,KAAK8zC,QAAUjwC,GAA8B8C,QAAnB9C,EAAQiwC,QAAuBjwC,EAAQiwC,SAAU,EAEvE9zC,KAAK8zC,QAAS,CAChB9zC,KAAKorC,MAAQpN,SAASM,cAAc,OAEpCt+B,KAAKorC,MAAMn8B,MAAMmwB,MAAQ,OACzBp/B,KAAKorC,MAAMn8B,MAAMqgC,SAAW,WAC5BtvC,KAAKglC,UAAU9G,YAAYl+B,KAAKorC,OAEhCprC,KAAKorC,MAAM4R,KAAOhf,SAASM,cAAc,SACzCt+B,KAAKorC,MAAM4R,KAAKj1C,KAAO,SACvB/H,KAAKorC,MAAM4R,KAAK53C,MAAQ,OACxBpF,KAAKorC,MAAMlN,YAAYl+B,KAAKorC,MAAM4R,MAElCh9C,KAAKorC,MAAMqF,KAAOzS,SAASM,cAAc,SACzCt+B,KAAKorC,MAAMqF,KAAK1oC,KAAO,SACvB/H,KAAKorC,MAAMqF,KAAKrrC,MAAQ,OACxBpF,KAAKorC,MAAMlN,YAAYl+B,KAAKorC,MAAMqF,MAElCzwC,KAAKorC,MAAMryB,KAAOilB,SAASM,cAAc,SACzCt+B,KAAKorC,MAAMryB,KAAKhR,KAAO,SACvB/H,KAAKorC,MAAMryB,KAAK3T,MAAQ,OACxBpF,KAAKorC,MAAMlN,YAAYl+B,KAAKorC,MAAMryB,MAElC/Y,KAAKorC,MAAM6R,IAAMjf,SAASM,cAAc,SACxCt+B,KAAKorC,MAAM6R,IAAIl1C,KAAO,SACtB/H,KAAKorC,MAAM6R,IAAIhuC,MAAMqgC,SAAW,WAChCtvC,KAAKorC,MAAM6R,IAAIhuC,MAAMZ,OAAS,gBAC9BrO,KAAKorC,MAAM6R,IAAIhuC,MAAMmwB,MAAQ,QAC7Bp/B,KAAKorC,MAAM6R,IAAIhuC,MAAMowB,OAAS,MAC9Br/B,KAAKorC,MAAM6R,IAAIhuC,MAAMwrC,aAAe,MACpCz6C,KAAKorC,MAAM6R,IAAIhuC,MAAMiuC,gBAAkB,MACvCl9C,KAAKorC,MAAM6R,IAAIhuC,MAAMZ,OAAS,oBAC9BrO,KAAKorC,MAAM6R,IAAIhuC,MAAMw8B,gBAAkB,UACvCzrC,KAAKorC,MAAMlN,YAAYl+B,KAAKorC,MAAM6R,KAElCj9C,KAAKorC,MAAM+R,MAAQnf,SAASM,cAAc,SAC1Ct+B,KAAKorC,MAAM+R,MAAMp1C,KAAO,SACxB/H,KAAKorC,MAAM+R,MAAMluC,MAAMk2B,OAAS,MAChCnlC,KAAKorC,MAAM+R,MAAM/3C,MAAQ,IACzBpF,KAAKorC,MAAM+R,MAAMluC,MAAMqgC,SAAW,WAClCtvC,KAAKorC,MAAM+R,MAAMluC,MAAMnG,KAAO,SAC9B9I,KAAKorC,MAAMlN,YAAYl+B,KAAKorC,MAAM+R,MAGlC,IAAIvc,GAAK5gC,IACTA,MAAKorC,MAAM+R,MAAMxN,YAAc,SAAU1kC,GACvC21B,EAAGgP,aAAa3kC,IAElBjL,KAAKorC,MAAM4R,KAAKI,QAAU,SAAUnyC,GAClC21B,EAAGoc,KAAK/xC,IAEVjL,KAAKorC,MAAMqF,KAAK2M,QAAU,SAAUnyC,GAClC21B,EAAGyc,WAAWpyC,IAEhBjL,KAAKorC,MAAMryB,KAAKqkC,QAAU,SAAUnyC,GAClC21B,EAAG7nB,KAAK9N,IAIZjL,KAAKs9C,iBAAmB32C,OAExB3G,KAAKuZ,UACLvZ,KAAKuJ,MAAQ5C,OAEb3G,KAAKu9C,YAAc52C,OACnB3G,KAAKw9C,aAAe,IACpBx9C,KAAKy9C,UAAW,EAnFlB,GAAI98C,GAAOT,EAAoB,EAyF/BoB,GAAO8R,UAAU4pC,KAAO,WACtB,GAAIzzC,GAAQvJ,KAAKk0C,UACb3qC,GAAQ,IACVA,IACAvJ,KAAK09C,SAASn0C,KAOlBjI,EAAO8R,UAAU2F,KAAO,WACtB,GAAIxP,GAAQvJ,KAAKk0C,UACb3qC,GAAQvJ,KAAKuZ,OAAO7S,OAAS,IAC/B6C,IACAvJ,KAAK09C,SAASn0C,KAOlBjI,EAAO8R,UAAUuqC,SAAW,WAC1B,GAAInK,GAAQ,GAAI9tC,MAEZ6D,EAAQvJ,KAAKk0C,UACb3qC,GAAQvJ,KAAKuZ,OAAO7S,OAAS,GAC/B6C,IACAvJ,KAAK09C,SAASn0C,IACLvJ,KAAKy9C,WAEdl0C,EAAQ,EACRvJ,KAAK09C,SAASn0C,GAGhB,IAAImqC,GAAM,GAAIhuC,MACVujB,EAAOyqB,EAAMF,EAIboK,EAAWt4C,KAAKJ,IAAIlF,KAAKw9C,aAAev0B,EAAM,GAG9C2X,EAAK5gC,IACTA,MAAKu9C,YAAclzC,WAAW,WAC5Bu2B,EAAG+c,YACFC,IAMLt8C,EAAO8R,UAAUiqC,WAAa,WACH12C,SAArB3G,KAAKu9C,YACPv9C,KAAKywC,OAELzwC,KAAK2wC,QAOTrvC,EAAO8R,UAAUq9B,KAAO,WAElBzwC,KAAKu9C,cAETv9C,KAAK29C,WAED39C,KAAKorC,QACPprC,KAAKorC,MAAMqF,KAAKrrC,MAAQ,UAO5B9D,EAAO8R,UAAUu9B,KAAO,WACtBkN,cAAc79C,KAAKu9C,aACnBv9C,KAAKu9C,YAAc52C,OAEf3G,KAAKorC,QACPprC,KAAKorC,MAAMqF,KAAKrrC,MAAQ,SAQ5B9D,EAAO8R,UAAUghC,oBAAsB,SAAU1qC,GAC/C1J,KAAKs9C,iBAAmB5zC,GAO1BpI,EAAO8R,UAAU4gC,gBAAkB,SAAU4J,GAC3C59C,KAAKw9C,aAAeI,GAOtBt8C,EAAO8R,UAAU0qC,gBAAkB,SAAUF,GAC3C,MAAO59C,MAAKw9C,cASdl8C,EAAO8R,UAAU2qC,YAAc,SAAUC,GACvCh+C,KAAKy9C,SAAWO,GAMlB18C,EAAO8R,UAAU6qC,SAAW,WACIt3C,SAA1B3G,KAAKs9C,kBACPt9C,KAAKs9C,oBAOTh8C,EAAO8R,UAAUk6B,OAAS,WACxB,GAAIttC,KAAKorC,MAAO,CAEdprC,KAAKorC,MAAM6R,IAAIhuC,MAAMjG,IAAMhJ,KAAKorC,MAAMkF,aAAe,EAAItwC,KAAKorC,MAAM6R,IAAIlC,aAAe,EAAI,KAC3F/6C,KAAKorC,MAAM6R,IAAIhuC,MAAMmwB,MAAQp/B,KAAKorC,MAAME,YAActrC,KAAKorC,MAAM4R,KAAK1R,YAActrC,KAAKorC,MAAMqF,KAAKnF,YAActrC,KAAKorC,MAAMryB,KAAKuyB,YAAc,GAAK,IAGrJ,IAAIxiC,GAAO9I,KAAKk+C,YAAYl+C,KAAKuJ,MACjCvJ,MAAKorC,MAAM+R,MAAMluC,MAAMnG,KAAOA,EAAO,OAQzCxH,EAAO8R,UAAU2gC,UAAY,SAAUx6B,GACrCvZ,KAAKuZ,OAASA,EAEVvZ,KAAKuZ,OAAO7S,OAAS,EAAG1G,KAAK09C,SAAS,GAAQ19C,KAAKuJ,MAAQ5C,QAOjErF,EAAO8R,UAAUsqC,SAAW,SAAUn0C,GACpC,KAAIA,EAAQvJ,KAAKuZ,OAAO7S,QAMtB,KAAM,2BALN1G,MAAKuJ,MAAQA,EAEbvJ,KAAKstC,SACLttC,KAAKi+C,YAUT38C,EAAO8R,UAAU8gC,SAAW,WAC1B,MAAOl0C,MAAKuJ,OAOdjI,EAAO8R,UAAUwkB,IAAM,WACrB,MAAO53B,MAAKuZ,OAAOvZ,KAAKuJ,QAG1BjI,EAAO8R,UAAUw8B,aAAe,SAAU3kC,GAExC,GAAImsC,GAAiBnsC,EAAMqsC,MAAwB,IAAhBrsC,EAAMqsC,MAA+B,IAAjBrsC,EAAMssC,MAC7D,IAAKH,EAAL,CAEAp3C,KAAKm+C,aAAelzC,EAAMy9B,QAC1B1oC,KAAKo+C,YAAcjzB,WAAWnrB,KAAKorC,MAAM+R,MAAMluC,MAAMnG,MAErD9I,KAAKorC,MAAMn8B,MAAM6oC,OAAS,MAK1B,IAAIlX,GAAK5gC,IACTA,MAAK+3C,YAAc,SAAU9sC,GAC3B21B,EAAGoX,aAAa/sC,IAElBjL,KAAKi4C,UAAY,SAAUhtC,GACzB21B,EAAGyW,WAAWpsC,IAEhBtK,EAAK2J,iBAAiB0zB,SAAU,YAAah+B,KAAK+3C,aAClDp3C,EAAK2J,iBAAiB0zB,SAAU,UAAWh+B,KAAKi4C,WAChDt3C,EAAKqK,eAAeC,KAGtB3J,EAAO8R,UAAUirC,YAAc,SAAUv1C,GACvC,GAAIs2B,GAAQjU,WAAWnrB,KAAKorC,MAAM6R,IAAIhuC,MAAMmwB,OAASp/B,KAAKorC,MAAM+R,MAAM7R,YAAc,GAChF9M,EAAI11B,EAAO,EAEXS,EAAQjE,KAAKgkB,MAAMkV,EAAIY,GAASp/B,KAAKuZ,OAAO7S,OAAS,GAIzD,OAHY,GAAR6C,IAAWA,EAAQ,GACnBA,EAAQvJ,KAAKuZ,OAAO7S,OAAS,IAAG6C,EAAQvJ,KAAKuZ,OAAO7S,OAAS,GAE1D6C,GAGTjI,EAAO8R,UAAU8qC,YAAc,SAAU30C,GACvC,GAAI61B,GAAQjU,WAAWnrB,KAAKorC,MAAM6R,IAAIhuC,MAAMmwB,OAASp/B,KAAKorC,MAAM+R,MAAM7R,YAAc,GAEhF9M,EAAIj1B,GAASvJ,KAAKuZ,OAAO7S,OAAS,GAAK04B,EACvCt2B,EAAO01B,EAAI,CAEf,OAAO11B,IAGTxH,EAAO8R,UAAU4kC,aAAe,SAAU/sC,GACxC,GAAIge,GAAOhe,EAAMy9B,QAAU1oC,KAAKm+C,aAC5B3f,EAAIx+B,KAAKo+C,YAAcn1B,EAEvB1f,EAAQvJ,KAAKq+C,YAAY7f,EAE7Bx+B,MAAK09C,SAASn0C,GAEd5I,EAAKqK,kBAGP1J,EAAO8R,UAAUikC,WAAa,SAAUpsC,GACtCjL,KAAKorC,MAAMn8B,MAAM6oC,OAAS,OAG1Bn3C,EAAKmK,oBAAoBkzB,SAAU,YAAah+B,KAAK+3C,aACrDp3C,EAAKmK,oBAAoBkzB,SAAU,UAAWh+B,KAAKi4C,WAEnDt3C,EAAKqK,kBAGPnL,EAAOD,QAAU0B,GAIb,SAASzB,EAAQD,GA6BrB,QAAS2B,GAAWiyC,EAAOE,EAAKH,EAAMiB,GAEpCx0C,KAAKs+C,OAAS,EACdt+C,KAAKu+C,KAAO,EACZv+C,KAAKw+C,MAAQ,EACbx+C,KAAKw0C,YAAa,EAClBx0C,KAAKy+C,UAAY,EAEjBz+C,KAAK0+C,SAAW,EAChB1+C,KAAK2+C,SAASnL,EAAOE,EAAKH,EAAMiB,GAYlCjzC,EAAW6R,UAAUurC,SAAW,SAAUnL,EAAOE,EAAKH,EAAMiB,GAC1Dx0C,KAAKs+C,OAAS9K,EAAQA,EAAQ,EAC9BxzC,KAAKu+C,KAAO7K,EAAMA,EAAM,EAExB1zC,KAAK4+C,QAAQrL,EAAMiB,IASrBjzC,EAAW6R,UAAUwrC,QAAU,SAAUrL,EAAMiB,GAChC7tC,SAAT4sC,GAA8B,GAARA,IAEP5sC,SAAf6tC,IAA0Bx0C,KAAKw0C,WAAaA,GAE5Cx0C,KAAKw0C,cAAe,EAAMx0C,KAAKw+C,MAAQj9C,EAAWs9C,oBAAoBtL,GAAWvzC,KAAKw+C,MAAQjL,IAUpGhyC,EAAWs9C,oBAAsB,SAAUtL,GACzC,GAAIuL,GAAQ,SAAetgB,GACzB,MAAOl5B,MAAKy5C,IAAIvgB,GAAKl5B,KAAK05C,MAIxBC,EAAQ35C,KAAKiW,IAAI,GAAIjW,KAAKgkB,MAAMw1B,EAAMvL,KACtC2L,EAAQ,EAAI55C,KAAKiW,IAAI,GAAIjW,KAAKgkB,MAAMw1B,EAAMvL,EAAO,KACjD4L,EAAQ,EAAI75C,KAAKiW,IAAI,GAAIjW,KAAKgkB,MAAMw1B,EAAMvL,EAAO,KAGjDiB,EAAayK,CASjB,OARI35C,MAAK4R,IAAIgoC,EAAQ3L,IAASjuC,KAAK4R,IAAIs9B,EAAajB,KAAOiB,EAAa0K,GACpE55C,KAAK4R,IAAIioC,EAAQ5L,IAASjuC,KAAK4R,IAAIs9B,EAAajB,KAAOiB,EAAa2K,GAGtD,GAAd3K,IACFA,EAAa,GAGRA,GAOTjzC,EAAW6R,UAAUqgC,WAAa,WAChC,MAAOtoB,YAAWnrB,KAAK0+C,SAASU,YAAYp/C,KAAKy+C,aAOnDl9C,EAAW6R,UAAUisC,QAAU,WAC7B,MAAOr/C,MAAKw+C,OAOdj9C,EAAW6R,UAAUogC,MAAQ,WAC3BxzC,KAAK0+C,SAAW1+C,KAAKs+C,OAASt+C,KAAKs+C,OAASt+C,KAAKw+C,OAMnDj9C,EAAW6R,UAAU2F,KAAO,WAC1B/Y,KAAK0+C,UAAY1+C,KAAKw+C,OAOxBj9C,EAAW6R,UAAUsgC,IAAM,WACzB,MAAO1zC,MAAK0+C,SAAW1+C,KAAKu+C,MAG9B1+C,EAAOD,QAAU2B,GAIb,SAAS1B,EAAQD,EAASM,GAY9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GA4BvF,QAAS7C,GAASwjC,EAAW/iC,EAAOw9C,EAAQ57C,GAC1C,KAAM7D,eAAgBwB,IACpB,KAAM,IAAIyjC,aAAY,mDAIxB,MAAM/9B,MAAMC,QAAQs4C,IAAWA,YAAkB5+C,IAAW4+C,YAAkB3+C,KAAa2+C,YAAkBl4C,QAAQ,CACnH,GAAIm4C,GAAgB77C,CACpBA,GAAU47C,EACVA,EAASC,EAGX,GAAI9e,GAAK5gC,IACTA,MAAK2/C,gBACHnM,MAAO,KACPE,IAAK,KAELkM,YAAY,EACZC,eAAgB,EAEhBC,aACEC,KAAM,SACNpuC,KAAM,UAGR5N,OAAQA,EAERq7B,MAAO,KACPC,OAAQ,KACR2gB,UAAW,KACXC,UAAW,MAEbjgD,KAAK6D,QAAUlD,EAAK6G,cAAexH,KAAK2/C,gBAGxC3/C,KAAKkgD,QAAQlb,GAGbhlC,KAAKgC,cAELhC,KAAKmgD,MACH3F,IAAKx6C,KAAKw6C,IACV4F,SAAUpgD,KAAKiH,MACfo5C,SACErgB,GAAIhgC,KAAKggC,GAAGsgB,KAAKtgD,MACjBmgC,IAAKngC,KAAKmgC,IAAImgB,KAAKtgD,MACnBy4C,KAAMz4C,KAAKy4C,KAAK6H,KAAKtgD,OAEvBugD,eACA5/C,MACE6/C,SAAU,WACR,MAAO5f,GAAG6f,SAASlN,KAAKluC,OAE1Bg6C,QAAS,WACP,MAAOze,GAAG6f,SAASlN,KAAKA,MAG1BmN,SAAU9f,EAAG+f,UAAUL,KAAK1f,GAC5BggB,eAAgBhgB,EAAGigB,gBAAgBP,KAAK1f,GACxCkgB,OAAQlgB,EAAGmgB,QAAQT,KAAK1f,GACxBogB,aAAcpgB,EAAGqgB,cAAcX,KAAK1f,KAKxC5gC,KAAKkhD,MAAQ,GAAIr/C,GAAM7B,KAAKmgD,MAC5BngD,KAAKgC,WAAW2F,KAAK3H,KAAKkhD,OAC1BlhD,KAAKmgD,KAAKe,MAAQlhD,KAAKkhD,MAGvBlhD,KAAKygD,SAAW,GAAIv9C,GAASlD,KAAKmgD,MAClCngD,KAAKmhD,UAAY,KACjBnhD,KAAKgC,WAAW2F,KAAK3H,KAAKygD,UAG1BzgD,KAAKohD,YAAc,GAAI3+C,GAAYzC,KAAKmgD,MACxCngD,KAAKgC,WAAW2F,KAAK3H,KAAKohD,aAG1BphD,KAAKqhD,QAAU,GAAIt+C,GAAQ/C,KAAKmgD,MAChCngD,KAAKgC,WAAW2F,KAAK3H,KAAKqhD,SAE1BrhD,KAAKshD,UAAY,KACjBthD,KAAKuhD,WAAa,KAElBvhD,KAAKggC,GAAG,MAAO,SAAU/0B,GACvB21B,EAAG6X,KAAK,QAAS7X,EAAG4gB,mBAAmBv2C,MAEzCjL,KAAKggC,GAAG,YAAa,SAAU/0B,GAC7B21B,EAAG6X,KAAK,cAAe7X,EAAG4gB,mBAAmBv2C,MAE/CjL,KAAKw6C,IAAI96C,KAAK+hD,cAAgB,SAAUx2C,GACtC21B,EAAG6X,KAAK,cAAe7X,EAAG4gB,mBAAmBv2C,KAI/CjL,KAAK0hD,SAAU,EACf1hD,KAAKggC,GAAG,UAAW,WACjB,GAAsB,MAAlBhgC,KAAKshD,YACJ1gB,EAAG8gB,QAEN,GADA9gB,EAAG8gB,SAAU,EACW/6C,QAApBi6B,EAAG/8B,QAAQ2vC,OAAwC7sC,QAAlBi6B,EAAG/8B,QAAQ6vC,IAAkB,CAChE,GAAwB/sC,QAApBi6B,EAAG/8B,QAAQ2vC,OAAwC7sC,QAAlBi6B,EAAG/8B,QAAQ6vC,IAC9C,GAAIwN,GAAQtgB,EAAG+gB,cAGjB,IAAInO,GAA4B7sC,QAApBi6B,EAAG/8B,QAAQ2vC,MAAqB5S,EAAG/8B,QAAQ2vC,MAAQ0N,EAAMj8C,IACjEyuC,EAAwB/sC,QAAlBi6B,EAAG/8B,QAAQ6vC,IAAmB9S,EAAG/8B,QAAQ6vC,IAAMwN,EAAMh8C,GAE/D07B,GAAGghB,UAAUpO,EAAOE,GAAOmO,WAAW,QAEtCjhB,GAAGkhB,KAAMD,WAAW,MAMtBh+C,GACF7D,KAAK4/B,WAAW/7B,GAId47C,GACFz/C,KAAK+hD,UAAUtC,GAIbx9C,GACFjC,KAAKgiD,SAAS//C,GAIhBjC,KAAKiiD,UAxKP,GAAIC,GAAgBhiD,EAAoB,IAEpCiiD,EAAiB7C,EAAuB4C,GAExCE,EAAaliD,EAAoB,IAEjCmiD,EAAc/C,EAAuB8C,GAMrCr+C,GAFU7D,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,IAE9BoiD,EAAapiD,EAAoB,IAAIoiD,WACrC9+C,EAAatD,EAAoB,IAAIsD,WACrC++C,EAAmBriD,EAAoB,IAAIqiD,gBAmJ/C/gD,GAAS4R,UAAY,GAAIzR,GAOzBH,EAAS4R,UAAUovC,oBAAsB,WACvC,MAAO,IAAIL,GAAAA,WAAuBniD,KAAMA,KAAKw6C,IAAIxV,UAAWud,IAU9D/gD,EAAS4R,UAAUk6B,OAAS,WAC1BttC,KAAKqhD,SAAWrhD,KAAKqhD,QAAQoB,WAAYC,cAAc,IACvD1iD,KAAKiiD,WAGPzgD,EAAS4R,UAAUwsB,WAAa,SAAU/7B,GAExC,GAAI8+C,GAAaN,EAAAA,WAAoBO,SAAS/+C,EAASL,EAOvD,IANIm/C,KAAe,GACjBprC,QAAQwnC,IAAI,2DAA4DuD,GAG1E3gD,EAAKyR,UAAUwsB,WAAWr/B,KAAKP,KAAM6D,GAEjC,QAAUA,IACRA,EAAQkE,OAAS/H,KAAK6D,QAAQkE,KAAM,CACtC/H,KAAK6D,QAAQkE,KAAOlE,EAAQkE,IAG5B,IAAIu5C,GAAYthD,KAAKshD,SACrB,IAAIA,EAAW,CACb,GAAIuB,GAAY7iD,KAAK8iD,cACrB9iD,MAAKgiD,SAAS,MACdhiD,KAAKgiD,SAASV,GACdthD,KAAK+iD,aAAaF,MAU1BrhD,EAAS4R,UAAU4uC,SAAW,SAAU//C,GAEtC,GAAI+gD,EAIFA,GAHG/gD,EAEMA,YAAiBpB,IAAWoB,YAAiBnB,GACzCmB,EAGA,GAAIpB,GAAQoB,GACvB8F,MACEyrC,MAAO,OACPE,IAAK,UARI,KAcf1zC,KAAKshD,UAAY0B,EACjBhjD,KAAKqhD,SAAWrhD,KAAKqhD,QAAQW,SAASgB,IAOxCxhD,EAAS4R,UAAU2uC,UAAY,SAAUtC,GAEvC,GAAIuD,EAIFA,GAHGvD,EAEMA,YAAkB5+C,IAAW4+C,YAAkB3+C,GAC3C2+C,EAGA,GAAI5+C,GAAQ4+C,GALZ,KAQfz/C,KAAKuhD,WAAayB,EAClBhjD,KAAKqhD,QAAQU,UAAUiB,IAOzBxhD,EAAS4R,UAAUixB,QAAU,SAAU7qB,GACjCA,GAAQA,EAAKimC,QACfz/C,KAAK+hD,UAAUvoC,EAAKimC,QAGlBjmC,GAAQA,EAAKvX,OACfjC,KAAKgiD,SAASxoC,EAAKvX,QAqBvBT,EAAS4R,UAAU2vC,aAAe,SAAU1hB,EAAKx9B,GAC/C7D,KAAKqhD,SAAWrhD,KAAKqhD,QAAQ0B,aAAa1hB,GAEtCx9B,GAAWA,EAAQo/C,OACrBjjD,KAAKijD,MAAM5hB,EAAKx9B,IAQpBrC,EAAS4R,UAAU0vC,aAAe,WAChC,MAAO9iD,MAAKqhD,SAAWrhD,KAAKqhD,QAAQyB,oBAetCthD,EAAS4R,UAAU6vC,MAAQ,SAAU5iD,EAAIwD,GACvC,GAAK7D,KAAKshD,WAAmB36C,QAANtG,EAAvB,CAEA,GAAIghC,GAAMn6B,MAAMC,QAAQ9G,GAAMA,GAAMA,GAGhCihD,EAAYthD,KAAKshD,UAAUrf,aAAarK,IAAIyJ,GAC9Ct5B,MACEyrC,MAAO,OACPE,IAAK,UAKLF,EAAQ,KACRE,EAAM,IAcV,IAbA4N,EAAU73C,QAAQ,SAAUy5C,GAC1B,GAAIp1C,GAAIo1C,EAAS1P,MAAMvrC,UACnB0D,EAAI,OAASu3C,GAAWA,EAASxP,IAAIzrC,UAAYi7C,EAAS1P,MAAMvrC,WAEtD,OAAVurC,GAAsBA,EAAJ1lC,KACpB0lC,EAAQ1lC,IAGE,OAAR4lC,GAAgB/nC,EAAI+nC,KACtBA,EAAM/nC,KAII,OAAV6nC,GAA0B,OAARE,EAAc,CAElC,GAAIhiC,IAAU8hC,EAAQE,GAAO,EACzBkK,EAAWt4C,KAAKJ,IAAIlF,KAAKkhD,MAAMxN,IAAM1zC,KAAKkhD,MAAM1N,MAAuB,KAAfE,EAAMF,IAE9DqO,EAAYh+C,GAAiC8C,SAAtB9C,EAAQg+C,UAA0Bh+C,EAAQg+C,WAAY,CACjF7hD,MAAKkhD,MAAMvC,SAASjtC,EAASksC,EAAW,EAAGlsC,EAASksC,EAAW,EAAGiE,MActErgD,EAAS4R,UAAU0uC,IAAM,SAAUj+C,GACjC,GAAIg+C,GAAYh+C,GAAiC8C,SAAtB9C,EAAQg+C,UAA0Bh+C,EAAQg+C,WAAY,EAC7EX,EAAQlhD,KAAK2hD,cACjB3hD,MAAKkhD,MAAMvC,SAASuC,EAAMj8C,IAAKi8C,EAAMh8C,IAAK28C,IAQ5CrgD,EAAS4R,UAAUuuC,aAAe,WAChC,GAAIwB,GAAQnjD,KAGRkhD,EAAQlhD,KAAKojD,eACbn+C,EAAoB,OAAdi8C,EAAMj8C,IAAei8C,EAAMj8C,IAAIgD,UAAY,KACjD/C,EAAoB,OAAdg8C,EAAMh8C,IAAeg8C,EAAMh8C,IAAI+C,UAAY,KACjDo7C,EAAU,KACVC,EAAU,IAEd,IAAW,MAAPr+C,GAAsB,MAAPC,EAAa,CAC9B,GAAI04C,GACA2F,EACAC,EACAC,EACA12B,GAEJ,WACE,GAAI22B,GAAW,SAAkB/xC,GAC/B,MAAOhR,GAAKmH,QAAQ6J,EAAK6H,KAAKg6B,MAAO,QAAQvrC,WAG3C07C,EAAS,SAAgBhyC,GAC3B,GAAI+hC,GAAuB/sC,QAAjBgL,EAAK6H,KAAKk6B,IAAmB/hC,EAAK6H,KAAKk6B,IAAM/hC,EAAK6H,KAAKg6B,KACjE,OAAO7yC,GAAKmH,QAAQ4rC,EAAK,QAAQzrC,UAMnC21C,GAAW14C,EAAMD,EAED,GAAZ24C,IACFA,EAAW,IAEb2F,EAAS3F,EAAWuF,EAAMl8C,MAAMgwC,OAAO7X,MACvCz+B,EAAK8I,QAAQ05C,EAAM9B,QAAQp/C,MAAO,SAAU0P,GAC1CA,EAAKiyC,OACLjyC,EAAKkyC,aAEL,IAAIrQ,GAAQkQ,EAAS/xC,GACjB+hC,EAAMiQ,EAAOhyC,GAEb7I,EAAO0qC,GAAS7hC,EAAKmyC,eAAiB,IAAMP,EAC5C9Q,EAAQiB,GAAO/hC,EAAKoyC,gBAAkB,IAAMR,CAErCt+C,GAAP6D,IACF7D,EAAM6D,EACNu6C,EAAU1xC,GAER8gC,EAAQvtC,IACVA,EAAMutC,EACN6Q,EAAU3xC,IAEZ2uC,KAAK6C,IAEHE,GAAWC,IACbE,EAAMH,EAAQS,eAAiB,GAC/BL,EAAMH,EAAQS,gBAAkB,GAChCh3B,EAAQo2B,EAAMl8C,MAAMgwC,OAAO7X,MAAQokB,EAAMC,EAErC12B,EAAQ,IACV9nB,EAAMy+C,EAASL,GAAWG,EAAM5F,EAAW7wB,EAC3C7nB,EAAMy+C,EAAOL,GAAWG,EAAM7F,EAAW7wB,OAMjD,OACE9nB,IAAY,MAAPA,EAAc,GAAIS,MAAKT,GAAO,KACnCC,IAAY,MAAPA,EAAc,GAAIQ,MAAKR,GAAO,OAQvC1D,EAAS4R,UAAUgwC,aAAe,WAChC,GAAIn+C,GAAM,KACNC,EAAM,KAEN8+C,EAAUhkD,KAAKshD,WAAathD,KAAKshD,UAAUrf,YAc/C,OAbI+hB,IACFA,EAAQv6C,QAAQ,SAAUkI,GACxB,GAAI6hC,GAAQ7yC,EAAKmH,QAAQ6J,EAAK6hC,MAAO,QAAQvrC,UACzCyrC,EAAM/yC,EAAKmH,QAAoBnB,QAAZgL,EAAK+hC,IAAmB/hC,EAAK+hC,IAAM/hC,EAAK6hC,MAAO,QAAQvrC,WAClE,OAARhD,GAAwBA,EAARuuC,KAClBvuC,EAAMuuC,IAEI,OAARtuC,GAAgBwuC,EAAMxuC,KACxBA,EAAMwuC,MAMVzuC,IAAY,MAAPA,EAAc,GAAIS,MAAKT,GAAO,KACnCC,IAAY,MAAPA,EAAc,GAAIQ,MAAKR,GAAO,OAUvC1D,EAAS4R,UAAUouC,mBAAqB,SAAUv2C,GAChD,GAAIy9B,GAAUz9B,EAAMgsC,OAAShsC,EAAMgsC,OAAOzY,EAAIvzB,EAAMy9B,QAChDG,EAAU59B,EAAMgsC,OAAShsC,EAAMgsC,OAAOj1B,EAAI/W,EAAM49B,QAChDrK,EAAIkK,EAAU/nC,EAAKgI,gBAAgB3I,KAAKw6C,IAAIyJ,iBAC5CjiC,EAAI6mB,EAAUloC,EAAKoI,eAAe/I,KAAKw6C,IAAIyJ,iBAE3CtyC,EAAO3R,KAAKqhD,QAAQ6C,eAAej5C,GACnCk5C,EAAQnkD,KAAKqhD,QAAQ+C,gBAAgBn5C,GACrCo5C,EAAa3hD,EAAW4hD,qBAAqBr5C,GAE7Cs5C,EAAOvkD,KAAKqhD,QAAQx9C,QAAQ0gD,MAAQ,KACpCl/C,EAAQrF,KAAKmgD,KAAKx/C,KAAK6/C,WACvBjN,EAAOvzC,KAAKmgD,KAAKx/C,KAAK0+C,UACtBrzB,EAAOhsB,KAAK+gD,QAAQviB,GACpBgmB,EAAcD,EAAOA,EAAKv4B,EAAM3mB,EAAOkuC,GAAQvnB,EAE/CzhB,EAAU5J,EAAKyK,UAAUH,GACzBw5C,EAAO,IAiBX,OAhBY,OAAR9yC,EACF8yC,EAAO,OACgB,MAAdJ,EACTI,EAAO,cACE9jD,EAAK8K,UAAUlB,EAASvK,KAAKygD,SAASjG,IAAIkK,YACnDD,EAAO,OACEzkD,KAAKmhD,WAAaxgD,EAAK8K,UAAUlB,EAASvK,KAAKmhD,UAAU3G,IAAIkK,YACtED,EAAO,OACE9jD,EAAK8K,UAAUlB,EAASvK,KAAKqhD,QAAQ7G,IAAImK,UAClDF,EAAO,cACE9jD,EAAK8K,UAAUlB,EAASvK,KAAKohD,YAAYnE,KAClDwH,EAAO,eACE9jD,EAAK8K,UAAUlB,EAASvK,KAAKw6C,IAAIvD,UAC1CwN,EAAO,eAIPx5C,MAAOA,EACP0G,KAAMA,EAAOA,EAAKtR,GAAK,KACvB8jD,MAAOA,EAAQA,EAAMS,QAAU,KAC/BH,KAAMA,EACNI,MAAO55C,EAAM65C,SAAW75C,EAAM65C,SAASD,MAAQ55C,EAAM45C,MACrDE,MAAO95C,EAAM65C,SAAW75C,EAAM65C,SAASC,MAAQ95C,EAAM85C,MACrDvmB,EAAGA,EACHxc,EAAGA,EACHgK,KAAMA,EACNw4B,YAAaA,IAIjB3kD,EAAOD,QAAU4B,GAIb,SAAS3B,EAAQD,EAASM,GAgB9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAdhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIlB,GAA4B,kBAAXC,SAAoD,gBAApBA,QAAOC,SAAwB,SAAUC,GAAO,aAAcA,IAAS,SAAUA,GAAO,MAAOA,IAAyB,kBAAXF,SAAyBE,EAAIC,cAAgBH,OAAS,eAAkBE,IAEtO+gD,EAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBU,EAAe1lD,EAAoB,IAEnC2lD,EAAgBvG,EAAuBsG,GAMvCjlD,EAAOT,EAAoB,GAiB3B4lD,EAAe,WACjB,QAASA,GAAaC,EAAcC,EAAkBzD,GACpD,GAAI0D,GAAax/C,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,EAAIA,UAAU,EAErFu+C,GAAgBhlD,KAAM8lD,GAEtB9lD,KAAK0L,OAASq6C,EACd/lD,KAAKkmD,kBACLlmD,KAAKglC,UAAYghB,EACjBhmD,KAAKmmD,eAAgB,EAErBnmD,KAAK6D,WACL7D,KAAKomD,aAAc,EACnBpmD,KAAKqmD,aAAe,EACpBrmD,KAAK2/C,gBACH3uC,SAAS,EACTovB,QAAQ,EACR4E,UAAWr+B,OACX2/C,YAAY,GAEd3lD,EAAKoG,OAAO/G,KAAK6D,QAAS7D,KAAK2/C,gBAE/B3/C,KAAKuiD,iBAAmBA,EACxBviD,KAAKumD,iBACLvmD,KAAKwmD,eACLxmD,KAAKymD,YACLzmD,KAAK0mD,WAAa,EAClB1mD,KAAK2mD,gBACL3mD,KAAK4mD,YAAc,GAAIf,GAAAA,WAAsBI,GAC7CjmD,KAAK6mD,QAAUlgD,OAivBjB,MAtuBAy+C,GAAaU,IACXh8C,IAAK,aACL1E,MAAO,SAAoBvB,GACzB,GAAgB8C,SAAZ9C,EAAuB,CAEzB7D,KAAK2mD,gBACL3mD,KAAK8mD,cAEL,IAAI91C,IAAU,CACS,iBAAZnN,GACT7D,KAAK6D,QAAQu8B,OAASv8B,EACbA,YAAmBqD,OAC5BlH,KAAK6D,QAAQu8B,OAASv8B,EAAQwF,OACiD,YAAlD,mBAAZxF,GAA0B,YAAcK,EAAQL,KACvC8C,SAAtB9C,EAAQmhC,YACVhlC,KAAK6D,QAAQmhC,UAAYnhC,EAAQmhC,WAEZr+B,SAAnB9C,EAAQu8B,SACVpgC,KAAK6D,QAAQu8B,OAASv8B,EAAQu8B,QAELz5B,SAAvB9C,EAAQyiD,aACVtmD,KAAK6D,QAAQyiD,WAAaziD,EAAQyiD,YAEZ3/C,SAApB9C,EAAQmN,UACVA,EAAUnN,EAAQmN,UAEQ,iBAAZnN,IAChB7D,KAAK6D,QAAQu8B,QAAS,EACtBpvB,EAAUnN,GACkB,kBAAZA,KAChB7D,KAAK6D,QAAQu8B,OAASv8B,EACtBmN,GAAU,GAERhR,KAAK6D,QAAQu8B,UAAW,IAC1BpvB,GAAU,GAGZhR,KAAK6D,QAAQmN,QAAUA,EAEzBhR,KAAK+mD,YAGPj9C,IAAK,mBACL1E,MAAO,SAA0BmhD,GAC/BvmD,KAAKumD,cAAgBA,EACjBvmD,KAAK6D,QAAQmN,WAAY,IAC3BhR,KAAK+mD,SAC0BpgD,SAA3B3G,KAAK6D,QAAQmhC,YACfhlC,KAAKglC,UAAYhlC,KAAK6D,QAAQmhC,WAEhChlC,KAAKkgD,cAUTp2C,IAAK,UACL1E,MAAO,WACL,GAAI+9C,GAAQnjD,IAEZA,MAAK+mD,SACL/mD,KAAKkmD,iBAEL,IAAI9lB,GAASpgC,KAAK6D,QAAQu8B,OACtBuM,EAAU,EACViX,GAAO,CACX,KAAK,GAAIh4C,KAAU5L,MAAKuiD,iBAClBviD,KAAKuiD,iBAAiBn8C,eAAewF,KACvC5L,KAAKmmD,eAAgB,EACrBvC,GAAO,EACe,kBAAXxjB,IACTwjB,EAAOxjB,EAAOx0B,MACdg4C,EAAOA,GAAQ5jD,KAAKgnD,cAAchnD,KAAKuiD,iBAAiB32C,IAAUA,IAAS,IAClEw0B,KAAW,GAAmC,KAA3BA,EAAO14B,QAAQkE,KAC3Cg4C,GAAO;AAGLA,KAAS,IACX5jD,KAAKmmD,eAAgB,EAGjBxZ,EAAU,GACZ3sC,KAAKinD,cAGPjnD,KAAKknD,YAAYt7C,GAGjB5L,KAAKgnD,cAAchnD,KAAKuiD,iBAAiB32C,IAAUA,KAErD+gC,IAIA3sC,MAAK6D,QAAQyiD,cAAe,IAC9B,WACE,GAAIa,GAAiBnpB,SAASM,cAAc,MAC5C6oB,GAAej+C,UAAY,sCAC3Bi+C,EAAezX,UAAY,mBAC3ByX,EAAe/J,QAAU,WACvB+F,EAAMiE,iBAERD,EAAeE,YAAc,WAC3BF,EAAej+C,UAAY,6CAE7Bi+C,EAAeG,WAAa,WAC1BH,EAAej+C,UAAY,uCAG7Bi6C,EAAMoE,iBAAmBvpB,SAASM,cAAc,OAChD6kB,EAAMoE,iBAAiBr+C,UAAY,gDAEnCi6C,EAAMqD,YAAY7+C,KAAKw7C,EAAMoE,kBAC7BpE,EAAMqD,YAAY7+C,KAAKw/C,MAI3BnnD,KAAKwnD,WAUP19C,IAAK,QACL1E,MAAO,WACLpF,KAAK6mD,QAAU7oB,SAASM,cAAc,OACtCt+B,KAAK6mD,QAAQ39C,UAAY,4BACzBlJ,KAAKglC,UAAU9G,YAAYl+B,KAAK6mD,QAChC,KAAK,GAAIhgD,GAAI,EAAGA,EAAI7G,KAAKwmD,YAAY9/C,OAAQG,IAC3C7G,KAAK6mD,QAAQ3oB,YAAYl+B,KAAKwmD,YAAY3/C,GAG5C7G,MAAKynD,wBASP39C,IAAK,SACL1E,MAAO,WACL,IAAK,GAAIyB,GAAI,EAAGA,EAAI7G,KAAKwmD,YAAY9/C,OAAQG,IAC3C7G,KAAK6mD,QAAQ9hD,YAAY/E,KAAKwmD,YAAY3/C,GAGvBF,UAAjB3G,KAAK6mD,UACP7mD,KAAKglC,UAAUjgC,YAAY/E,KAAK6mD,SAChC7mD,KAAK6mD,QAAUlgD,QAEjB3G,KAAKwmD,eAELxmD,KAAK8mD,kBAWPh9C,IAAK,YACL1E,MAAO,SAAmBsiD,GAExB,IAAK,GADDr8B,GAAOrrB,KAAKumD,cACP1/C,EAAI,EAAGA,EAAI6gD,EAAKhhD,OAAQG,IAAK,CACpC,GAAsBF,SAAlB0kB,EAAKq8B,EAAK7gD,IAEP,CACLwkB,EAAO1kB,MACP,OAHA0kB,EAAOA,EAAKq8B,EAAK7gD,IAMrB,MAAOwkB,MAWTvhB,IAAK,YACL1E,MAAO,SAAmBsiD,GACxB,GAAIC,GAAalhD,UACbmhD,EAAS5nD,IAEb,IAAIA,KAAKmmD,iBAAkB,EAAM,CAC/B,GAAI0B,GAAMrB,EAAasB,EAEnBC,EAAQ,WACV,GAAIp2C,GAAOqsB,SAASM,cAAc,MAGlC,KAFA3sB,EAAKzI,UAAY,iDAAmDw+C,EAAKhhD,OAEpEmhD,EAAOF,EAAWjhD,OAAQ8/C,EAAct/C,MAAM2gD,EAAO,EAAIA,EAAO,EAAI,GAAIC,EAAO,EAAUD,EAAPC,EAAaA,IAClGtB,EAAYsB,EAAO,GAAKH,EAAWG,EAOrC,OAJAtB,GAAY/8C,QAAQ,SAAUc,GAC5BoH,EAAKusB,YAAY3zB,KAEnBq9C,EAAOpB,YAAY7+C,KAAKgK,IAEtB5D,EAAG65C,EAAOpB,YAAY9/C,UAI1B,IAAsE,YAAhD,mBAAVqhD,GAAwB,YAAc7jD,EAAQ6jD,IAAsB,MAAOA,GAAMh6C,EAE/F,MAAO,MAUTjE,IAAK,cACL1E,MAAO,SAAqBuS,GAC1B,GAAIqwC,GAAMhqB,SAASM,cAAc,MACjC0pB,GAAI9+C,UAAY,sCAChB8+C,EAAItY,UAAY/3B,EAChB3X,KAAKinD,aAAce,MAarBl+C,IAAK,aACL1E,MAAO,SAAoBuS,EAAM+vC,GAC/B,GAAIO,GAAcxhD,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEtFuhD,EAAMhqB,SAASM,cAAc,MAOjC,OANA0pB,GAAI9+C,UAAY,kDAAoDw+C,EAAKhhD,OACrEuhD,KAAgB,EAClBD,EAAItY,UAAY,SAAW/3B,EAAO,YAElCqwC,EAAItY,UAAY/3B,EAAO,IAElBqwC,KAYTl+C,IAAK,gBACL1E,MAAO,SAAuBmD,EAAKnD,EAAOsiD,GACxC,GAAIQ,GAASlqB,SAASM,cAAc,SACpC4pB,GAAOh/C,UAAY,qCACnB,IAAIi/C,GAAgB,CACNxhD,UAAVvB,GACyB,KAAvBmD,EAAIb,QAAQtC,KACd+iD,EAAgB5/C,EAAIb,QAAQtC,GAIhC,KAAK,GAAIyB,GAAI,EAAGA,EAAI0B,EAAI7B,OAAQG,IAAK,CACnC,GAAI+E,GAASoyB,SAASM,cAAc,SACpC1yB,GAAOxG,MAAQmD,EAAI1B,GACfA,IAAMshD,IACRv8C,EAAOw8C,SAAW,YAEpBx8C,EAAO8jC,UAAYnnC,EAAI1B,GACvBqhD,EAAOhqB,YAAYtyB,GAGrB,GAAIg1B,GAAK5gC,IACTkoD,GAAOjU,SAAW,WAChBrT,EAAGynB,QAAQroD,KAAKoF,MAAOsiD,GAGzB,IAAI5oB,GAAQ9+B,KAAKsoD,WAAWZ,EAAKA,EAAKhhD,OAAS,GAAIghD,EACnD1nD,MAAKinD,UAAUS,EAAM5oB,EAAOopB,MAY9Bp+C,IAAK,aACL1E,MAAO,SAAoBmD,EAAKnD,EAAOsiD,GACrC,GAAI57C,GAAevD,EAAI,GACnBtD,EAAMsD,EAAI,GACVrD,EAAMqD,EAAI,GACVgrC,EAAOhrC,EAAI,GACX24C,EAAQljB,SAASM,cAAc,QACnC4iB,GAAMh4C,UAAY,oCAClB,KACEg4C,EAAMn5C,KAAO,QACbm5C,EAAMj8C,IAAMA,EACZi8C,EAAMh8C,IAAMA,EACZ,MAAOqjD,IACTrH,EAAM3N,KAAOA,CAGb,IAAIiV,GAAc,GACdC,EAAa,CAEjB,IAAc9hD,SAAVvB,EAAqB,CACvB,GAAIm+C,GAAS,GACD,GAARn+C,GAA8BH,EAAjBG,EAAQm+C,GACvBrC,EAAMj8C,IAAMK,KAAKkR,KAAKpR,EAAQm+C,GAC9BkF,EAAavH,EAAMj8C,IACnBujD,EAAc,mBACYvjD,EAAjBG,EAAQm+C,IACjBrC,EAAMj8C,IAAMK,KAAKkR,KAAKpR,EAAQm+C,GAC9BkF,EAAavH,EAAMj8C,IACnBujD,EAAc,mBAEZpjD,EAAQm+C,EAASr+C,GAAe,IAARA,IAC1Bg8C,EAAMh8C,IAAMI,KAAKkR,KAAKpR,EAAQm+C,GAC9BkF,EAAavH,EAAMh8C,IACnBsjD,EAAc,mBAEhBtH,EAAM97C,MAAQA,MAEd87C,GAAM97C,MAAQ0G,CAGhB,IAAIpI,GAAQs6B,SAASM,cAAc,QACnC56B,GAAMwF,UAAY,0CAClBxF,EAAM0B,MAAQ87C,EAAM97C,KAEpB,IAAIw7B,GAAK5gC,IACTkhD,GAAMjN,SAAW,WACfvwC,EAAM0B,MAAQpF,KAAKoF,MAAMw7B,EAAGynB,QAAQ3jD,OAAO1E,KAAKoF,OAAQsiD,IAE1DxG,EAAMwH,QAAU,WACdhlD,EAAM0B,MAAQpF,KAAKoF,MAGrB,IAAI05B,GAAQ9+B,KAAKsoD,WAAWZ,EAAKA,EAAKhhD,OAAS,GAAIghD,GAC/CiB,EAAY3oD,KAAKinD,UAAUS,EAAM5oB,EAAOoiB,EAAOx9C,EAG/B,MAAhB8kD,GAAsBxoD,KAAK2mD,aAAagC,KAAeF,IACzDzoD,KAAK2mD,aAAagC,GAAaF,EAC/BzoD,KAAK4oD,YAAYJ,EAAaG,OAYlC7+C,IAAK,cACL1E,MAAO,SAAqBic,EAAQ9X,GAClC,GAAIs/C,GAAS7oD,IAEb,IAAIA,KAAKomD,eAAgB,GAAQpmD,KAAKmmD,iBAAkB,GAAQnmD,KAAKqmD,aAAermD,KAAK0mD,WAAY,CACnG,GAAIsB,GAAMhqB,SAASM,cAAc,MACjC0pB,GAAI3nD,GAAK,0BACT2nD,EAAI9+C,UAAY,0BAChB8+C,EAAItY,UAAYruB,EAChB2mC,EAAI5K,QAAU,WACZyL,EAAO/B,gBAET9mD,KAAKqmD,cAAgB,EACrBrmD,KAAKymD,UAAaqC,KAAMd,EAAKz+C,MAAOA,OAUxCO,IAAK,eACL1E,MAAO,WACsBuB,SAAvB3G,KAAKymD,SAASqC,OAChB9oD,KAAKymD,SAASqC,KAAKt9C,WAAWzG,YAAY/E,KAAKymD,SAASqC,MACxD5kB,aAAalkC,KAAKymD,SAASsC,aAC3B7kB,aAAalkC,KAAKymD,SAASuC,eAC3BhpD,KAAKymD,gBAUT38C,IAAK,qBACL1E,MAAO,WACL,GAAI6jD,GAASjpD,IAEb,IAA2B2G,SAAvB3G,KAAKymD,SAASqC,KAAoB,CACpC,GAAII,GAAuBlpD,KAAKwmD,YAAYxmD,KAAKymD,SAASl9C,OACtD+1B,EAAO4pB,EAAqBrgD,uBAChC7I,MAAKymD,SAASqC,KAAK75C,MAAMnG,KAAOw2B,EAAKx2B,KAAO,KAC5C9I,KAAKymD,SAASqC,KAAK75C,MAAMjG,IAAMs2B,EAAKt2B,IAAM,GAAK,KAC/Cg1B,SAASmiB,KAAKjiB,YAAYl+B,KAAKymD,SAASqC,MACxC9oD,KAAKymD,SAASsC,YAAc1+C,WAAW,WACrC4+C,EAAOxC,SAASqC,KAAK75C,MAAMpC,QAAU,GACpC,MACH7M,KAAKymD,SAASuC,cAAgB3+C,WAAW,WACvC4+C,EAAOnC,gBACN,UAaPh9C,IAAK,gBACL1E,MAAO,SAAuB0G,EAAc1G,EAAOsiD,GACjD,GAAIyB,GAAWnrB,SAASM,cAAc,QACtC6qB,GAASphD,KAAO,WAChBohD,EAASjgD,UAAY,wCACrBigD,EAASC,QAAUt9C,EACLnF,SAAVvB,IACF+jD,EAASC,QAAUhkD,EACfA,IAAU0G,IACwE,YAAvD,mBAAjBA,GAA+B,YAAc5H,EAAQ4H,IAC3D1G,IAAU0G,EAAakF,SACzBhR,KAAKkmD,eAAev+C,MAAO+/C,KAAMA,EAAMtiD,MAAOA,IAGhDpF,KAAKkmD,eAAev+C,MAAO+/C,KAAMA,EAAMtiD,MAAOA,KAKpD,IAAIw7B,GAAK5gC,IACTmpD,GAASlV,SAAW,WAClBrT,EAAGynB,QAAQroD,KAAKopD,QAAS1B,GAG3B,IAAI5oB,GAAQ9+B,KAAKsoD,WAAWZ,EAAKA,EAAKhhD,OAAS,GAAIghD,EACnD1nD,MAAKinD,UAAUS,EAAM5oB,EAAOqqB,MAY9Br/C,IAAK,iBACL1E,MAAO,SAAwB0G,EAAc1G,EAAOsiD,GAClD,GAAIyB,GAAWnrB,SAASM,cAAc,QACtC6qB,GAASphD,KAAO,OAChBohD,EAASjgD,UAAY,oCACrBigD,EAAS/jD,MAAQA,EACbA,IAAU0G,GACZ9L,KAAKkmD,eAAev+C,MAAO+/C,KAAMA,EAAMtiD,MAAOA,GAGhD,IAAIw7B,GAAK5gC,IACTmpD,GAASlV,SAAW,WAClBrT,EAAGynB,QAAQroD,KAAKoF,MAAOsiD,GAGzB,IAAI5oB,GAAQ9+B,KAAKsoD,WAAWZ,EAAKA,EAAKhhD,OAAS,GAAIghD,EACnD1nD,MAAKinD,UAAUS,EAAM5oB,EAAOqqB,MAY9Br/C,IAAK,kBACL1E,MAAO,SAAyBmD,EAAKnD,EAAOsiD,GAC1C,GAAI2B,GAASrpD,KAETspD,EAAe/gD,EAAI,GACnBy/C,EAAMhqB,SAASM,cAAc,MACjCl5B,GAAkBuB,SAAVvB,EAAsBkkD,EAAelkD,EAE/B,SAAVA,GACF4iD,EAAI9+C,UAAY,0CAChB8+C,EAAI/4C,MAAMw8B,gBAAkBrmC,GAE5B4iD,EAAI9+C,UAAY,+CAGlB9D,EAAkBuB,SAAVvB,EAAsBkkD,EAAelkD,EAC7C4iD,EAAI5K,QAAU,WACZiM,EAAOE,iBAAiBnkD,EAAO4iD,EAAKN,GAGtC,IAAI5oB,GAAQ9+B,KAAKsoD,WAAWZ,EAAKA,EAAKhhD,OAAS,GAAIghD,EACnD1nD,MAAKinD,UAAUS,EAAM5oB,EAAOkpB,MAa9Bl+C,IAAK,mBACL1E,MAAO,SAA0BA,EAAO4iD,EAAKN,GAC3C,GAAI8B,GAASxpD,IAGbgoD,GAAI5K,QAAU,aAEdp9C,KAAK4mD,YAAY6C,SAASzB,GAC1BhoD,KAAK4mD,YAAYhD,OAEjB5jD,KAAK4mD,YAAY8C,SAAStkD,GAC1BpF,KAAK4mD,YAAY+C,kBAAkB,SAAU/8C,GAC3C,GAAIg9C,GAAc,QAAUh9C,EAAML,EAAI,IAAMK,EAAMJ,EAAI,IAAMI,EAAMrG,EAAI,IAAMqG,EAAMtG,EAAI,GACtF0hD,GAAI/4C,MAAMw8B,gBAAkBme,EAC5BJ,EAAOnB,QAAQuB,EAAalC,KAI9B1nD,KAAK4mD,YAAYiD,iBAAiB,WAChC7B,EAAI5K,QAAU,WACZoM,EAAOD,iBAAiBnkD,EAAO4iD,EAAKN,SAa1C59C,IAAK,gBACL1E,MAAO,SAAuBf,GAC5B,GAAIqjD,GAAOjhD,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAC5EqjD,EAAYrjD,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpFm9C,GAAO,EACPxjB,EAASpgC,KAAK6D,QAAQu8B,OACtB2pB,GAAe,CACnB,KAAK,GAAIC,KAAU3lD,GACjB,GAAIA,EAAI+B,eAAe4jD,GAAS,CAC9BpG,GAAO,CACP,IAAIjyC,GAAOtN,EAAI2lD,GACXC,EAAUtpD,EAAK2H,mBAAmBo/C,EAAMsC,EAc5C,IAbsB,kBAAX5pB,KACTwjB,EAAOxjB,EAAO4pB,EAAQtC,GAGlB9D,KAAS,KACLjyC,YAAgBzK,SAA0B,gBAATyK,IAAqC,iBAATA,IAAsBA,YAAgBpK,UACvGvH,KAAKmmD,eAAgB,EACrBvC,EAAO5jD,KAAKgnD,cAAcr1C,EAAMs4C,GAAS,GACzCjqD,KAAKmmD,cAAgB2D,KAAc,IAKrClG,KAAS,EAAO,CAClBmG,GAAe,CACf,IAAI3kD,GAAQpF,KAAKkqD,UAAUD,EAE3B,IAAIt4C,YAAgBzK,OAClBlH,KAAKmqD,aAAax4C,EAAMvM,EAAO6kD,OAC1B,IAAoB,gBAATt4C,GAChB3R,KAAKoqD,eAAez4C,EAAMvM,EAAO6kD,OAC5B,IAAoB,iBAATt4C,GAChB3R,KAAKqqD,cAAc14C,EAAMvM,EAAO6kD,OAC3B,IAAIt4C,YAAgBpK,QAAQ,CAEjC,GAAI+iD,IAAO,CAOX,IANgC,KAA5B5C,EAAKhgD,QAAQ,YACX1H,KAAKumD,cAAcgE,QAAQC,SAAWR,IACxCM,GAAO,GAIPA,KAAS,EAEX,GAAqB3jD,SAAjBgL,EAAKX,QAAuB,CAC9B,GAAIy5C,GAAc9pD,EAAK2H,mBAAmB2hD,EAAS,WAC/CS,EAAe1qD,KAAKkqD,UAAUO,EAClC,IAAIC,KAAiB,EAAM,CACzB,GAAI5rB,GAAQ9+B,KAAKsoD,WAAW0B,EAAQC,GAAS,EAC7CjqD,MAAKinD,UAAUgD,EAASnrB,GACxBirB,EAAe/pD,KAAKgnD,cAAcr1C,EAAMs4C,IAAYF,MAEpD/pD,MAAKqqD,cAAc14C,EAAM+4C,EAAcT,OAEpC,CACL,GAAIU,GAAS3qD,KAAKsoD,WAAW0B,EAAQC,GAAS,EAC9CjqD,MAAKinD,UAAUgD,EAASU,GACxBZ,EAAe/pD,KAAKgnD,cAAcr1C,EAAMs4C,IAAYF,OAIxDxyC,SAAQqzC,MAAM,0BAA2Bj5C,EAAMq4C,EAAQC,IAK/D,MAAOF,MAaTjgD,IAAK,eACL1E,MAAO,SAAsBmD,EAAKnD,EAAOsiD,GACjB,gBAAXn/C,GAAI,IAA8B,UAAXA,EAAI,IACpCvI,KAAK6qD,gBAAgBtiD,EAAKnD,EAAOsiD,GAC7Bn/C,EAAI,KAAOnD,GACbpF,KAAKkmD,eAAev+C,MAAO+/C,KAAMA,EAAMtiD,MAAOA,KAErB,gBAAXmD,GAAI,IACpBvI,KAAK8qD,cAAcviD,EAAKnD,EAAOsiD,GAC3Bn/C,EAAI,KAAOnD,GACbpF,KAAKkmD,eAAev+C,MAAO+/C,KAAMA,EAAMtiD,MAAOA,KAErB,gBAAXmD,GAAI,KACpBvI,KAAK+qD,WAAWxiD,EAAKnD,EAAOsiD,GACxBn/C,EAAI,KAAOnD,GACbpF,KAAKkmD,eAAev+C,MAAO+/C,KAAMA,EAAMtiD,MAAOV,OAAOU,SAa3D0E,IAAK,UACL1E,MAAO,SAAiBA,EAAOsiD,GAC7B,GAAI7jD,GAAU7D,KAAKgrD,kBAAkB5lD,EAAOsiD,EAExC1nD,MAAK0L,OAAOy0C,MAAQngD,KAAK0L,OAAOy0C,KAAKE,SAAWrgD,KAAK0L,OAAOy0C,KAAKE,QAAQ5H,MAC3Ez4C,KAAK0L,OAAOy0C,KAAKE,QAAQ5H,KAAK,eAAgB50C,GAEhD7D,KAAKomD,aAAc,EACnBpmD,KAAK0L,OAAOk0B,WAAW/7B,MAGzBiG,IAAK,oBACL1E,MAAO,SAA2BA,EAAOsiD,GACvC,GAAIuD,GAAaxkD,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAElFykD,EAAUD,CAGd7lD,GAAkB,SAAVA,GAAmB,EAAOA,EAClCA,EAAkB,UAAVA,GAAoB,EAAQA,CAEpC,KAAK,GAAIyB,GAAI,EAAGA,EAAI6gD,EAAKhhD,OAAQG,IACf,WAAZ6gD,EAAK7gD,KACkBF,SAArBukD,EAAQxD,EAAK7gD,MACfqkD,EAAQxD,EAAK7gD,QAEXA,IAAM6gD,EAAKhhD,OAAS,EACtBwkD,EAAUA,EAAQxD,EAAK7gD,IAEvBqkD,EAAQxD,EAAK7gD,IAAMzB,EAIzB,OAAO6lD,MAGTnhD,IAAK,gBACL1E,MAAO,WACL,GAAIvB,GAAU7D,KAAKmrD,YACnBnrD,MAAKunD,iBAAiB7X,UAAY,sBAAwBrM,KAAKC,UAAUz/B,EAAS,KAAM,GAAK,YAG/FiG,IAAK,aACL1E,MAAO,WAEL,IAAK,GADDvB,MACKgD,EAAI,EAAGA,EAAI7G,KAAKkmD,eAAex/C,OAAQG,IAC9C7G,KAAKgrD,kBAAkBhrD,KAAKkmD,eAAer/C,GAAGzB,MAAOpF,KAAKkmD,eAAer/C,GAAG6gD,KAAM7jD,EAEpF,OAAOA,OAIJiiD,IAGTlmD,GAAAA,WAAkBkmD,GAId,SAASjmD,EAAQD,EAASM,GAU9B,QAAS8kD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCANhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI5hBlhD,EAAS9D,EAAoB,IAC7BkrD,EAAalrD,EAAoB,IACjCS,EAAOT,EAAoB,GAE3BmrD,EAAc,WAChB,QAASA,KACP,GAAIpF,GAAax/C,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,EAAIA,UAAU,EAErFu+C,GAAgBhlD,KAAMqrD,GAEtBrrD,KAAKimD,WAAaA,EAClBjmD,KAAKsrD,WAAY,EACjBtrD,KAAKurD,mBAAsB/sB,EAAG,MAASxc,EAAG,OAC1ChiB,KAAKuM,EAAI,IAAM,IACfvM,KAAK4M,OAAUL,EAAG,IAAKC,EAAG,IAAKjG,EAAG,IAAKD,EAAG,GAC1CtG,KAAKwrD,UAAY7kD,OACjB3G,KAAKyrD,cAAiBl/C,EAAG,IAAKC,EAAG,IAAKjG,EAAG,IAAKD,EAAG,GACjDtG,KAAK0rD,cAAgB/kD,OACrB3G,KAAK2rD,SAAU,EAGf3rD,KAAK4rD,eAAiB,aACtB5rD,KAAK6rD,cAAgB,aAGrB7rD,KAAKkgD,UAykBP,MAhkBAkF,GAAaiG,IACXvhD,IAAK,WACL1E,MAAO,SAAkB4/B,GACHr+B,SAAhB3G,KAAK8rD,SACP9rD,KAAK8rD,OAAO/rB,UACZ//B,KAAK8rD,OAASnlD,QAEhB3G,KAAKglC,UAAYA,EACjBhlC,KAAKglC,UAAU9G,YAAYl+B,KAAKorC,OAChCprC,KAAK+rD,cAEL/rD,KAAKgsD,cASPliD,IAAK,oBACL1E,MAAO,SAA2BsE,GAChC,GAAwB,kBAAbA,GAGT,KAAM,IAAItC,OAAM,8EAFhBpH,MAAK4rD,eAAiBliD,KAY1BI,IAAK,mBACL1E,MAAO,SAA0BsE,GAC/B,GAAwB,kBAAbA,GAGT,KAAM,IAAItC,OAAM,+EAFhBpH,MAAK6rD,cAAgBniD,KAMzBI,IAAK,iBACL1E,MAAO,SAAwBwH,GAC7B,GAAIq/C,IAAeC,MAAO,UAAWC,KAAM,UAAWC,SAAU,UAAWC,WAAY,UAAWl/C,KAAM,UAAWm/C,UAAW,UAAWp/C,MAAO,UAAWq/C,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,UAAW3lD,IAAK,UAAW4lD,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,gBAAV9nD,GACFq/C,EAAWr/C,GADpB,UAmBF9C,IAAK,WACL1E,MAAO,SAAkBwH,GACvB,GAAI+nD,GAAaluD,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAExF,IAAc,SAAVmG,EAAJ,CAIA,GAAIsD,GAAO,OAGP0kD,EAAY50D,KAAK60D,eAAejoD,EAMpC,IALkBjG,SAAdiuD,IACFhoD,EAAQgoD,GAINj0D,EAAK4E,SAASqH,MAAW,GAC3B,GAAIjM,EAAK4M,WAAWX,MAAW,EAAM,CACnC,GAAIkoD,GAAYloD,EAAMG,OAAO,GAAGA,OAAO,EAAGH,EAAMlG,OAAS,GAAG0C,MAAM,IAClE8G,IAAS3D,EAAGuoD,EAAU,GAAItoD,EAAGsoD,EAAU,GAAIvuD,EAAGuuD,EAAU,GAAIxuD,EAAG,OAC1D,IAAI3F,EAAKsP,YAAYrD,MAAW,EAAM,CAC3C,GAAImoD,GAAanoD,EAAMG,OAAO,GAAGA,OAAO,EAAGH,EAAMlG,OAAS,GAAG0C,MAAM,IACnE8G,IAAS3D,EAAGwoD,EAAW,GAAIvoD,EAAGuoD,EAAW,GAAIxuD,EAAGwuD,EAAW,GAAIzuD,EAAGyuD,EAAW,QACxE,IAAIp0D,EAAK8M,WAAWb,MAAW,EAAM,CAC1C,GAAIooD,GAASr0D,EAAKwL,SAASS,EAC3BsD,IAAS3D,EAAGyoD,EAAOzoD,EAAGC,EAAGwoD,EAAOxoD,EAAGjG,EAAGyuD,EAAOzuD,EAAGD,EAAG,QAGrD,IAAIsG,YAAiBrF,SACHZ,SAAZiG,EAAML,GAA+B5F,SAAZiG,EAAMJ,GAA+B7F,SAAZiG,EAAMrG,EAAiB,CAC3E,GAAI0uD,GAAoBtuD,SAAZiG,EAAMtG,EAAkBsG,EAAMtG,EAAI,KAC9C4J,IAAS3D,EAAGK,EAAML,EAAGC,EAAGI,EAAMJ,EAAGjG,EAAGqG,EAAMrG,EAAGD,EAAG2uD,GAMtD,GAAatuD,SAATuJ,EACF,KAAM,IAAI9I,OAAM,gIAAkIi8B,KAAKC,UAAU12B,GAEjK5M,MAAKk1D,UAAUhlD,EAAMykD,OAUzB7qD,IAAK,OACL1E,MAAO,WACsBuB,SAAvB3G,KAAK6rD,gBACP7rD,KAAK6rD,gBACL7rD,KAAK6rD,cAAgBllD,QAGvB3G,KAAK2rD,SAAU,EACf3rD,KAAKorC,MAAMn8B,MAAMkmD,QAAU,QAC3Bn1D,KAAKo1D,wBAaPtrD,IAAK,QACL1E,MAAO,WACL,GAAI+9C,GAAQnjD,KAERq1D,EAAgB5uD,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAGvF4uD,MAAkB,IACpBr1D,KAAK0rD,cAAgB/qD,EAAKoG,UAAW/G,KAAK4M,QAGxC5M,KAAK2rD,WAAY,GACnB3rD,KAAK4rD,eAAe5rD,KAAKyrD,cAG3BzrD,KAAKorC,MAAMn8B,MAAMkmD,QAAU,OAI3B9qD,WAAW,WACmB1D,SAAxBw8C,EAAM0I,gBACR1I,EAAM0I,gBACN1I,EAAM0I,cAAgBllD,SAEvB,MASLmD,IAAK,QACL1E,MAAO,WACLpF,KAAK4rD,eAAe5rD,KAAK4M,OACzB5M,KAAK2rD,SAAU,EACf3rD,KAAKs1D,WASPxrD,IAAK,SACL1E,MAAO,WACLpF,KAAK2rD,SAAU,EACf3rD,KAAK4rD,eAAe5rD,KAAK4M,OACzB5M,KAAKu1D,cAAcv1D,KAAK4M,UAS1B9C,IAAK,YACL1E,MAAO,WACsBuB,SAAvB3G,KAAK0rD,cACP1rD,KAAK0pD,SAAS1pD,KAAK0rD,eAAe,GAElC8J,MAAM,wCAYV1rD,IAAK,YACL1E,MAAO,SAAmB8K,GACxB,GAAIykD,GAAaluD,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAGpFkuD,MAAe,IACjB30D,KAAKyrD,aAAe9qD,EAAKoG,UAAWmJ,IAGtClQ,KAAK4M,MAAQsD,CACb,IAAIxC,GAAM/M,EAAK6N,SAAS0B,EAAK3D,EAAG2D,EAAK1D,EAAG0D,EAAK3J,GAEzCkvD,EAAe,EAAInwD,KAAKqxC,GACxBF,EAASz2C,KAAKuM,EAAImB,EAAII,EACtB0wB,EAAIx+B,KAAKurD,kBAAkB/sB,EAAIiY,EAASnxC,KAAK4kC,IAAIurB,EAAe/nD,EAAIG,GACpEmU,EAAIhiB,KAAKurD,kBAAkBvpC,EAAIy0B,EAASnxC,KAAK+kC,IAAIorB,EAAe/nD,EAAIG,EAExE7N,MAAK01D,oBAAoBzmD,MAAMnG,KAAO01B,EAAI,GAAMx+B,KAAK01D,oBAAoBpqB,YAAc,KACvFtrC,KAAK01D,oBAAoBzmD,MAAMjG,IAAMgZ,EAAI,GAAMhiB,KAAK01D,oBAAoBplB,aAAe,KAEvFtwC,KAAKu1D,cAAcrlD,MAUrBpG,IAAK,cACL1E,MAAO,SAAqBA,GAC1BpF,KAAK4M,MAAMtG,EAAIlB,EAAQ,IACvBpF,KAAKu1D,cAAcv1D,KAAK4M,UAU1B9C,IAAK,iBACL1E,MAAO,SAAwBA,GAC7B,GAAIsI,GAAM/M,EAAK6N,SAASxO,KAAK4M,MAAML,EAAGvM,KAAK4M,MAAMJ,EAAGxM,KAAK4M,MAAMrG,EAC/DmH,GAAIK,EAAI3I,EAAQ,GAChB,IAAI8K,GAAOvP,EAAK+O,SAAShC,EAAIG,EAAGH,EAAII,EAAGJ,EAAIK,EAC3CmC,GAAQ,EAAIlQ,KAAK4M,MAAMtG,EACvBtG,KAAK4M,MAAQsD,EACblQ,KAAKu1D,mBAUPzrD,IAAK,gBACL1E,MAAO,WACL,GAAI8K,GAAOzJ,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBzG,KAAK4M,MAAQnG,UAAU,GAEpFiH,EAAM/M,EAAK6N,SAAS0B,EAAK3D,EAAG2D,EAAK1D,EAAG0D,EAAK3J,GACzC4rC,EAAMnyC,KAAK21D,kBAAkBvjB,WAAW,KACnBzrC,UAArB3G,KAAK41D,cACP51D,KAAKimD,YAAc/6C,OAAO2qD,kBAAoB,IAAM1jB,EAAI2jB,8BAAgC3jB,EAAI4jB,2BAA6B5jB,EAAI6jB,0BAA4B7jB,EAAI8jB,yBAA2B9jB,EAAI+jB,wBAA0B,IAExN/jB,EAAIgkB,aAAan2D,KAAKimD,WAAY,EAAG,EAAGjmD,KAAKimD,WAAY,EAAG,EAG5D,IAAIphC,GAAI7kB,KAAK21D,kBAAkBrqB,YAC3Bz9B,EAAI7N,KAAK21D,kBAAkBrlB,YAC/B6B,GAAIE,UAAU,EAAG,EAAGxtB,EAAGhX,GAEvBskC,EAAIikB,aAAap2D,KAAKwrD,UAAW,EAAG,GACpCrZ,EAAIiB,UAAY,eAAiB,EAAI1lC,EAAIK,GAAK,IAC9CokC,EAAIkkB,OAAOr2D,KAAKurD,kBAAkB/sB,EAAGx+B,KAAKurD,kBAAkBvpC,EAAGhiB,KAAKuM,GACpE4lC,EAAI9J,OAEJroC,KAAKs2D,gBAAgBlxD,MAAQ,IAAMsI,EAAIK,EACvC/N,KAAKu2D,aAAanxD,MAAQ,IAAM8K,EAAK5J,EAErCtG,KAAKw2D,gBAAgBvnD,MAAMw8B,gBAAkB,QAAUzrC,KAAKyrD,aAAal/C,EAAI,IAAMvM,KAAKyrD,aAAaj/C,EAAI,IAAMxM,KAAKyrD,aAAallD,EAAI,IAAMvG,KAAKyrD,aAAanlD,EAAI,IACjKtG,KAAKy2D,YAAYxnD,MAAMw8B,gBAAkB,QAAUzrC,KAAK4M,MAAML,EAAI,IAAMvM,KAAK4M,MAAMJ,EAAI,IAAMxM,KAAK4M,MAAMrG,EAAI,IAAMvG,KAAK4M,MAAMtG,EAAI,OASnIwD,IAAK,WACL1E,MAAO,WACLpF,KAAK21D,kBAAkB1mD,MAAMmwB,MAAQ,OACrCp/B,KAAK21D,kBAAkB1mD,MAAMowB,OAAS,OAEtCr/B,KAAK21D,kBAAkBv2B,MAAQ,IAAMp/B,KAAKimD,WAC1CjmD,KAAK21D,kBAAkBt2B,OAAS,IAAMr/B,KAAKimD,cAU7Cn8C,IAAK,UACL1E,MAAO,WAYL,GAXApF,KAAKorC,MAAQpN,SAASM,cAAc,OACpCt+B,KAAKorC,MAAMliC,UAAY,mBAEvBlJ,KAAK02D,eAAiB14B,SAASM,cAAc,OAC7Ct+B,KAAK01D,oBAAsB13B,SAASM,cAAc,OAClDt+B,KAAK01D,oBAAoBxsD,UAAY,eACrClJ,KAAK02D,eAAex4B,YAAYl+B,KAAK01D,qBAErC11D,KAAK21D,kBAAoB33B,SAASM,cAAc,UAChDt+B,KAAK02D,eAAex4B,YAAYl+B,KAAK21D,mBAEhC31D,KAAK21D,kBAAkBvjB,WAOrB,CACL,GAAID,GAAMnyC,KAAK21D,kBAAkBvjB,WAAW,KAC5CpyC,MAAKimD,YAAc/6C,OAAO2qD,kBAAoB,IAAM1jB,EAAI2jB,8BAAgC3jB,EAAI4jB,2BAA6B5jB,EAAI6jB,0BAA4B7jB,EAAI8jB,yBAA2B9jB,EAAI+jB,wBAA0B,GAEtNl2D,KAAK21D,kBAAkBvjB,WAAW,MAAM+jB,aAAan2D,KAAKimD,WAAY,EAAG,EAAGjmD,KAAKimD,WAAY,EAAG,OAX1D,CACtC,GAAI1W,GAAWvR,SAASM,cAAc,MACtCiR,GAAStgC,MAAMrC,MAAQ,MACvB2iC,EAAStgC,MAAMugC,WAAa,OAC5BD,EAAStgC,MAAMwgC,QAAU,OACzBF,EAASG,UAAY,mDACrB1vC,KAAK21D,kBAAkBz3B,YAAYqR,GAQrCvvC,KAAK02D,eAAextD,UAAY,YAEhClJ,KAAK22D,WAAa34B,SAASM,cAAc,OACzCt+B,KAAK22D,WAAWztD,UAAY,cAE5BlJ,KAAK42D,cAAgB54B,SAASM,cAAc,OAC5Ct+B,KAAK42D,cAAc1tD,UAAY,iBAE/BlJ,KAAK62D,SAAW74B,SAASM,cAAc,OACvCt+B,KAAK62D,SAAS3tD,UAAY,YAE1BlJ,KAAKu2D,aAAev4B,SAASM,cAAc,QAC3C,KACEt+B,KAAKu2D,aAAaxuD,KAAO,QACzB/H,KAAKu2D,aAAatxD,IAAM,IACxBjF,KAAKu2D,aAAarxD,IAAM,MACxB,MAAOqjD,IACTvoD,KAAKu2D,aAAanxD,MAAQ,MAC1BpF,KAAKu2D,aAAartD,UAAY,YAE9BlJ,KAAKs2D,gBAAkBt4B,SAASM,cAAc,QAC9C,KACEt+B,KAAKs2D,gBAAgBvuD,KAAO,QAC5B/H,KAAKs2D,gBAAgBrxD,IAAM,IAC3BjF,KAAKs2D,gBAAgBpxD,IAAM,MAC3B,MAAOqjD,IACTvoD,KAAKs2D,gBAAgBlxD,MAAQ,MAC7BpF,KAAKs2D,gBAAgBptD,UAAY,YAEjClJ,KAAK22D,WAAWz4B,YAAYl+B,KAAKu2D,cACjCv2D,KAAK42D,cAAc14B,YAAYl+B,KAAKs2D,gBAEpC,IAAI11B,GAAK5gC,IACTA,MAAKu2D,aAAatiB,SAAW,WAC3BrT,EAAGk2B,YAAY92D,KAAKoF,QAEtBpF,KAAKu2D,aAAa7N,QAAU,WAC1B9nB,EAAGk2B,YAAY92D,KAAKoF,QAEtBpF,KAAKs2D,gBAAgBriB,SAAW,WAC9BrT,EAAGm2B,eAAe/2D,KAAKoF,QAEzBpF,KAAKs2D,gBAAgB5N,QAAU,WAC7B9nB,EAAGm2B,eAAe/2D,KAAKoF,QAGzBpF,KAAKg3D,gBAAkBh5B,SAASM,cAAc,OAC9Ct+B,KAAKg3D,gBAAgB9tD,UAAY,2BACjClJ,KAAKg3D,gBAAgBtnB,UAAY,cAEjC1vC,KAAKi3D,aAAej5B,SAASM,cAAc,OAC3Ct+B,KAAKi3D,aAAa/tD,UAAY,wBAC9BlJ,KAAKi3D,aAAavnB,UAAY,WAE9B1vC,KAAKy2D,YAAcz4B,SAASM,cAAc,OAC1Ct+B,KAAKy2D,YAAYvtD,UAAY,gBAC7BlJ,KAAKy2D,YAAY/mB,UAAY,MAE7B1vC,KAAKw2D,gBAAkBx4B,SAASM,cAAc,OAC9Ct+B,KAAKw2D,gBAAgBttD,UAAY,oBACjClJ,KAAKw2D,gBAAgB9mB,UAAY,UAEjC1vC,KAAKk3D,aAAel5B,SAASM,cAAc,OAC3Ct+B,KAAKk3D,aAAahuD,UAAY,wBAC9BlJ,KAAKk3D,aAAaxnB,UAAY,SAC9B1vC,KAAKk3D,aAAa9Z,QAAUp9C,KAAKs1D,MAAMhV,KAAKtgD,MAAM,GAElDA,KAAKm3D,YAAcn5B,SAASM,cAAc,OAC1Ct+B,KAAKm3D,YAAYjuD,UAAY,uBAC7BlJ,KAAKm3D,YAAYznB,UAAY,QAC7B1vC,KAAKm3D,YAAY/Z,QAAUp9C,KAAKo3D,OAAO9W,KAAKtgD,MAE5CA,KAAKq3D,WAAar5B,SAASM,cAAc,OACzCt+B,KAAKq3D,WAAWnuD,UAAY,sBAC5BlJ,KAAKq3D,WAAW3nB,UAAY,OAC5B1vC,KAAKq3D,WAAWja,QAAUp9C,KAAKs3D,MAAMhX,KAAKtgD,MAE1CA,KAAKu3D,WAAav5B,SAASM,cAAc,OACzCt+B,KAAKu3D,WAAWruD,UAAY,sBAC5BlJ,KAAKu3D,WAAW7nB,UAAY,YAC5B1vC,KAAKu3D,WAAWna,QAAUp9C,KAAKw3D,UAAUlX,KAAKtgD,MAE9CA,KAAKorC,MAAMlN,YAAYl+B,KAAK02D,gBAC5B12D,KAAKorC,MAAMlN,YAAYl+B,KAAK62D,UAC5B72D,KAAKorC,MAAMlN,YAAYl+B,KAAKg3D,iBAC5Bh3D,KAAKorC,MAAMlN,YAAYl+B,KAAK42D,eAC5B52D,KAAKorC,MAAMlN,YAAYl+B,KAAKi3D,cAC5Bj3D,KAAKorC,MAAMlN,YAAYl+B,KAAK22D,YAC5B32D,KAAKorC,MAAMlN,YAAYl+B,KAAKy2D,aAC5Bz2D,KAAKorC,MAAMlN,YAAYl+B,KAAKw2D,iBAE5Bx2D,KAAKorC,MAAMlN,YAAYl+B,KAAKk3D,cAC5Bl3D,KAAKorC,MAAMlN,YAAYl+B,KAAKm3D,aAC5Bn3D,KAAKorC,MAAMlN,YAAYl+B,KAAKq3D,YAC5Br3D,KAAKorC,MAAMlN,YAAYl+B,KAAKu3D,eAS9BztD,IAAK,cACL1E,MAAO,WACL,GAAIwiD,GAAS5nD,IAEbA,MAAKy3D,QACLz3D,KAAK03D,SACL13D,KAAK8rD,OAAS,GAAI9nD,GAAOhE,KAAK21D,mBAC9B31D,KAAK8rD,OAAOl0B,IAAI,SAASlf,KAAMi/C,QAAQ,IAEvCvM,EAAWwM,QAAQ53D,KAAK8rD,OAAQ,SAAU7gD,GACxC28C,EAAOiQ,cAAc5sD,KAEvBjL,KAAK8rD,OAAO9rB,GAAG,MAAO,SAAU/0B,GAC9B28C,EAAOiQ,cAAc5sD,KAEvBjL,KAAK8rD,OAAO9rB,GAAG,WAAY,SAAU/0B,GACnC28C,EAAOiQ,cAAc5sD,KAEvBjL,KAAK8rD,OAAO9rB,GAAG,UAAW,SAAU/0B,GAClC28C,EAAOiQ,cAAc5sD,KAEvBjL,KAAK8rD,OAAO9rB,GAAG,SAAU,SAAU/0B,GACjC28C,EAAOiQ,cAAc5sD,QAUzBnB,IAAK,qBACL1E,MAAO,WACL,GAAIpF,KAAKsrD,aAAc,EAAO,CAC5B,GAAInZ,GAAMnyC,KAAK21D,kBAAkBvjB,WAAW,KACnBzrC,UAArB3G,KAAK41D,cACP51D,KAAKimD,YAAc/6C,OAAO2qD,kBAAoB,IAAM1jB,EAAI2jB,8BAAgC3jB,EAAI4jB,2BAA6B5jB,EAAI6jB,0BAA4B7jB,EAAI8jB,yBAA2B9jB,EAAI+jB,wBAA0B,IAExN/jB,EAAIgkB,aAAan2D,KAAKimD,WAAY,EAAG,EAAGjmD,KAAKimD,WAAY,EAAG,EAG5D,IAAIphC,GAAI7kB,KAAK21D,kBAAkBrqB,YAC3Bz9B,EAAI7N,KAAK21D,kBAAkBrlB,YAC/B6B,GAAIE,UAAU,EAAG,EAAGxtB,EAAGhX,EAGvB,IAAI2wB,GAAI,OACJxc,EAAI,OACJpT,EAAM,OACNkpD,EAAM,MACV93D,MAAKurD,mBAAsB/sB,EAAO,GAAJ3Z,EAAS7C,EAAO,GAAJnU,GAC1C7N,KAAKuM,EAAI,IAAOsY,CAChB,IAAI4wC,GAAe,EAAInwD,KAAKqxC,GAAK,IAC7BohB,EAAO,EAAI,IACXC,EAAO,EAAIh4D,KAAKuM,EAChBO,EAAM,MACV,KAAK8B,EAAM,EAAS,IAANA,EAAWA,IACvB,IAAKkpD,EAAM,EAAGA,EAAM93D,KAAKuM,EAAGurD,IAC1Bt5B,EAAIx+B,KAAKurD,kBAAkB/sB,EAAIs5B,EAAMxyD,KAAK4kC,IAAIurB,EAAe7mD,GAC7DoT,EAAIhiB,KAAKurD,kBAAkBvpC,EAAI81C,EAAMxyD,KAAK+kC,IAAIorB,EAAe7mD,GAC7D9B,EAAMnM,EAAK+O,SAASd,EAAMmpD,EAAMD,EAAME,EAAM,GAC5C7lB,EAAIiB,UAAY,OAAStmC,EAAIP,EAAI,IAAMO,EAAIN,EAAI,IAAMM,EAAIvG,EAAI,IAC7D4rC,EAAI8lB,SAASz5B,EAAI,GAAKxc,EAAI,GAAK,EAAG,EAGtCmwB,GAAIY,YAAc,gBAClBZ,EAAIkkB,OAAOr2D,KAAKurD,kBAAkB/sB,EAAGx+B,KAAKurD,kBAAkBvpC,EAAGhiB,KAAKuM,GACpE4lC,EAAI7J,SAEJtoC,KAAKwrD,UAAYrZ,EAAI+lB,aAAa,EAAG,EAAGrzC,EAAGhX,GAE7C7N,KAAKsrD,WAAY,KAWnBxhD,IAAK,gBACL1E,MAAO,SAAuB6F,GAC5B,GAAIq0B,GAAOt/B,KAAK02D,eAAe7tD,wBAC3BC,EAAOmC,EAAMgsC,OAAOzY,EAAIc,EAAKx2B,KAC7BE,EAAMiC,EAAMgsC,OAAOj1B,EAAIsd,EAAKt2B,IAE5BmvD,EAAU,GAAMn4D,KAAK02D,eAAepmB,aACpC8nB,EAAU,GAAMp4D,KAAK02D,eAAeprB,YAEpC9M,EAAI11B,EAAOsvD,EACXp2C,EAAIhZ,EAAMmvD,EAEVE,EAAQ/yD,KAAKgzD,MAAM95B,EAAGxc,GACtBy0B,EAAS,IAAOnxC,KAAKL,IAAIK,KAAK+0C,KAAK7b,EAAIA,EAAIxc,EAAIA,GAAIo2C,GAEnDG,EAASjzD,KAAK+kC,IAAIguB,GAAS5hB,EAAS0hB,EACpCK,EAAUlzD,KAAK4kC,IAAImuB,GAAS5hB,EAAS2hB,CAEzCp4D,MAAK01D,oBAAoBzmD,MAAMjG,IAAMuvD,EAAS,GAAMv4D,KAAK01D,oBAAoBplB,aAAe,KAC5FtwC,KAAK01D,oBAAoBzmD,MAAMnG,KAAO0vD,EAAU,GAAMx4D,KAAK01D,oBAAoBpqB,YAAc,IAG7F,IAAIz9B,GAAIwqD,GAAS,EAAI/yD,KAAKqxC,GAC1B9oC,GAAQ,EAAJA,EAAQA,EAAI,EAAIA,CACpB,IAAIC,GAAI2oC,EAASz2C,KAAKuM,EAClBmB,EAAM/M,EAAK6N,SAASxO,KAAK4M,MAAML,EAAGvM,KAAK4M,MAAMJ,EAAGxM,KAAK4M,MAAMrG,EAC/DmH,GAAIG,EAAIA,EACRH,EAAII,EAAIA,CACR,IAAIoC,GAAOvP,EAAK+O,SAAShC,EAAIG,EAAGH,EAAII,EAAGJ,EAAIK,EAC3CmC,GAAQ,EAAIlQ,KAAK4M,MAAMtG,EACvBtG,KAAK4M,MAAQsD,EAGblQ,KAAKw2D,gBAAgBvnD,MAAMw8B,gBAAkB,QAAUzrC,KAAKyrD,aAAal/C,EAAI,IAAMvM,KAAKyrD,aAAaj/C,EAAI,IAAMxM,KAAKyrD,aAAallD,EAAI,IAAMvG,KAAKyrD,aAAanlD,EAAI,IACjKtG,KAAKy2D,YAAYxnD,MAAMw8B,gBAAkB,QAAUzrC,KAAK4M,MAAML,EAAI,IAAMvM,KAAK4M,MAAMJ,EAAI,IAAMxM,KAAK4M,MAAMrG,EAAI,IAAMvG,KAAK4M,MAAMtG,EAAI,QAI9H+kD,IAGTzrD,GAAAA,WAAkByrD,GAId,SAASxrD,EAAQD,EAASM,GAM9B,GAAsB,mBAAXgL,QAAwB,CACjC,GAAIutD,GAAcv4D,EAAoB,IAClC8D,EAASkH,OAAe,QAAKhL,EAAoB,GACrDL,GAAOD,QAAU64D,EAAYz0D,GAC3BgH,eAAgB,cAGlBnL,GAAOD,QAAU,WACf,KAAMwH,OAAM,+DAMZ,SAASvH,EAAQD,EAASM,GAE9B,GAAIw4D,GAAgCC,EAA8BC,GAEjE,SAAUj5D,GAGLg5D,KAAmCD,EAAiC,EAAWE,EAA2E,kBAAnCF,GAAiDA,EAA+BxlD,MAAMtT,EAAS+4D,GAAiCD,IAAmE/xD,SAAlCiyD,IAAgD/4D,EAAOD,QAAUg5D,KAU7V,WACA,GAAIC,GAAe,IAwBnB,OAAO,SAASJ,GAAY3M,EAAQjoD,GAgIlC,QAASuF,GAAM0vD,GACb,MAAOA,GAAOnzD,MAAM,UAOtB,QAASozD,GAAkB9tD,GAEzB,GAAmB,iBAAfA,EAAMlD,KAAyB,CAOjC,GAJKkD,EAAM65C,SAASkU,WAClB/tD,EAAM65C,SAASkU,aAGb/tD,EAAM65C,SAASkU,SAAS/tD,EAAMlD,MAChC,MAGAkD,GAAM65C,SAASkU,SAAS/tD,EAAMlD,OAAQ,EAK1C,GAAIkxD,IAAU,CACdhuD,GAAMiuD,gBAAkB,WACtBD,GAAU,EAIZ,IAAIE,GAAUluD,EAAM65C,SAASoU,gBAAgB5Y,KAAKr1C,EAAM65C,SACnC,mBAAXqU,KACRluD,EAAM65C,SAASoU,gBAAkB,WAC/BC,IACAluD,EAAMiuD,oBAKVjuD,EAAMmuD,YAAcP,CAIpB,KADA,GAAIjwD,GAAOiwD,EACJjwD,IAASqwD,GAAS,CACvB,GAAII,GAAazwD,EAAKkjD,MACtB,IAAGuN,EAED,IAAI,GADAC,GACI3oD,EAAI,EAAGA,EAAI0oD,EAAW3yD,OAAQiK,IAEpC,GADA2oD,EAAYD,EAAW1oD,GAAG2oD,UAAUruD,EAAMlD,MAC5B,IAAK,GAAIlB,GAAI,EAAGA,EAAIyyD,EAAU5yD,SAAWuyD,EAASpyD,IAC9DyyD,EAAUzyD,GAAGoE,EAInBrC,GAAOA,EAAK4C,YAvLhB,GAAI+zB,GAAW17B,IACbmH,gBAAgB,EAGlB,IAAI8gD,EAAOyN,QAAS,CAGlB,GAAIv1D,GAAS8nD,EAET0N,EAAoB,SAASjvD,EAAS1G,GACxC,GAAI41D,GAAIlyD,OAAOgJ,OAAOgvB,EAEtB,OADI17B,IAASG,EAAO01D,OAAOD,EAAG51D,GACvB40D,EAAY,GAAIz0D,GAAOuG,EAASkvD,GAAIA,GAU7C,OARAz1D,GAAO01D,OAAOF,EAAmBx1D,GAEjCw1D,EAAkBD,QAAU,SAAUhvD,EAAS1G,GAC7C,GAAI41D,GAAIlyD,OAAOgJ,OAAOgvB,EAEtB,OADI17B,IAASG,EAAO01D,OAAOD,EAAG51D,GACvB40D,EAAY,GAAIz0D,GAAOu1D,QAAQhvD,EAASkvD,GAAIA,IAG9CD,EAKT,GAAI3S,GAAUt/C,OAAOgJ,OAAOu7C,GAGxBvhD,EAAUuhD,EAAOvhD,OA6JrB,OA3JIA,GAAQuhD,SAAQvhD,EAAQuhD,WAC5BvhD,EAAQuhD,OAAOnkD,KAAKk/C,GAIpBiF,EAAO9rB,GAAG,eAAgB,SAAU/0B,GAC9Bs0B,EAASv0B,kBAAmB,GAASu0B,EAASv0B,iBAAmBC,EAAM0uD,aACzE1uD,EAAMD,iBAEJC,EAAM2uD,UACRf,EAAe5tD,EAAMI,UAKzBw7C,EAAQyS,aAQRzS,EAAQ7mB,GAAK,SAAU84B,EAAQe,GAa7B,MAXAzwD,GAAM0vD,GAAQrvD,QAAQ,SAAUwB,GAC9B,GAAIquD,GAAYzS,EAAQyS,UAAUruD,EAC7BquD,KACHzS,EAAQyS,UAAUruD,GAASquD,KAG3BxN,EAAO9rB,GAAG/0B,EAAO8tD,IAEnBO,EAAU3xD,KAAKkyD,KAGVhT,GAWTA,EAAQ1mB,IAAM,SAAU24B,EAAQe,GAoB9B,MAlBAzwD,GAAM0vD,GAAQrvD,QAAQ,SAAUwB,GAC9B,GAAIquD,GAAYzS,EAAQyS,UAAUruD,EAC9BquD,KACFA,EAAYO,EAAUP,EAAUl5B,OAAO,SAAUvyB,GAC/C,MAAOA,KAAMgsD,OAGXP,EAAU5yD,OAAS,EACrBmgD,EAAQyS,UAAUruD,GAASquD,GAI3BxN,EAAO3rB,IAAIl1B,EAAO8tD,SACXlS,GAAQyS,UAAUruD,OAKxB47C,GAQTA,EAAQpO,KAAO,SAASqhB,EAAW7uD,GACjC4tD,EAAe5tD,EAAMI,OACrBygD,EAAOrT,KAAKqhB,EAAW7uD,IAGzB47C,EAAQ9mB,QAAU,WAEhB,GAAIg6B,GAAUjO,EAAOvhD,QAAQuhD,OACzBkO,EAAMD,EAAQryD,QAAQm/C,EACf,MAARmT,GAAYD,EAAQvwD,OAAOwwD,EAAI,GAC9BD,EAAQrzD,cAAeolD,GAAOvhD,QAAQuhD,OAG1CjF,EAAQyS,aAGRxN,EAAO/rB,WAgEF8mB,MAOP,SAAShnD,EAAQD,EAASM,GAE9B,GAAI04D,IAKJ,SAAU1tD,EAAQ8yB,EAAUi8B,EAAYtzD,GAmBxC,QAASuzD,GAAkBlwD,EAAIE,EAAS85B,GACpC,MAAO35B,YAAW8vD,EAAOnwD,EAAIg6B,GAAU95B,GAY3C,QAASkwD,GAAeC,EAAKrwD,EAAIg6B,GAC7B,MAAI98B,OAAMC,QAAQkzD,IACdC,EAAKD,EAAKr2B,EAAQh6B,GAAKg6B,IAChB,IAEJ,EASX,QAASs2B,GAAKj2D,EAAKD,EAAU4/B,GACzB,GAAIn9B,EAEJ,IAAKxC,EAIL,GAAIA,EAAIoF,QACJpF,EAAIoF,QAAQrF,EAAU4/B,OACnB,IAAI3/B,EAAIqC,SAAWC,EAEtB,IADAE,EAAI,EACGA,EAAIxC,EAAIqC,QACXtC,EAAS7D,KAAKyjC,EAAS3/B,EAAIwC,GAAIA,EAAGxC,GAClCwC,QAGJ,KAAKA,IAAKxC,GACNA,EAAI+B,eAAeS,IAAMzC,EAAS7D,KAAKyjC,EAAS3/B,EAAIwC,GAAIA,EAAGxC,GAYvE,QAASmT,GAAUusB,EAAQpsB,EAAM4iD,GAC7B,GAAIC,GAAqB,sBAAwB7iD,EAAO,KAAO4iD,EAAU,QACzE,OAAO,YACH,GAAI5uD,GAAI,GAAIvE,OAAM,mBACdtF,EAAQ6J,GAAKA,EAAE7J,MAAQ6J,EAAE7J,MAAMwK,QAAQ,kBAAmB,IACzDA,QAAQ,cAAe,IACvBA,QAAQ,6BAA8B,kBAAoB,sBAE3DyyC,EAAM7zC,EAAOqM,UAAYrM,EAAOqM,QAAQH,MAAQlM,EAAOqM,QAAQwnC,IAInE,OAHIA,IACAA,EAAIx+C,KAAK2K,EAAOqM,QAASijD,EAAoB14D,GAE1CiiC,EAAO7wB,MAAMlT,KAAMyG,YAwElC,QAASg0D,GAAQC,EAAOrvC,EAAMsvC,GAC1B,GACIC,GADAC,EAAQxvC,EAAKjY,SAGjBwnD,GAASF,EAAMtnD,UAAY7L,OAAOgJ,OAAOsqD,GACzCD,EAAOt2D,YAAco2D,EACrBE,EAAOE,OAASD,EAEZF,GACAjB,GAAOkB,EAAQD,GAUvB,QAASR,GAAOnwD,EAAIg6B,GAChB,MAAO,YACH,MAAOh6B,GAAGkJ,MAAM8wB,EAASv9B,YAWjC,QAASs0D,GAASvlD,EAAK8R,GACnB,aAAW9R,IAAOwlD,GACPxlD,EAAItC,MAAMoU,EAAOA,EAAK,IAAM3gB,EAAYA,EAAW2gB,GAEvD9R,EASX,QAASylD,GAAYC,EAAMC,GACvB,MAAQD,KAASv0D,EAAaw0D,EAAOD,EASzC,QAASE,GAAkB/vD,EAAQ63B,EAAO22B,GACtCS,EAAKe,EAASn4B,GAAQ,SAASn7B,GAC3BsD,EAAOf,iBAAiBvC,EAAM8xD,GAAS,KAU/C,QAASyB,GAAqBjwD,EAAQ63B,EAAO22B,GACzCS,EAAKe,EAASn4B,GAAQ,SAASn7B,GAC3BsD,EAAOP,oBAAoB/C,EAAM8xD,GAAS,KAWlD,QAASpuD,GAAU+wB,EAAM9wB,GACrB,KAAO8wB,GAAM,CACT,GAAIA,GAAQ9wB,EACR,OAAO,CAEX8wB,GAAOA,EAAKhxB,WAEhB,OAAO,EASX,QAAS+vD,GAAMC,EAAKC,GAChB,MAAOD,GAAI9zD,QAAQ+zD,GAAQ,GAQ/B,QAASJ,GAASG,GACd,MAAOA,GAAItsD,OAAO9F,MAAM,QAU5B,QAASsyD,GAAQC,EAAKF,EAAMG,GACxB,GAAID,EAAIj0D,UAAYk0D,EAChB,MAAOD,GAAIj0D,QAAQ+zD,EAGnB,KADA,GAAI50D,GAAI,EACDA,EAAI80D,EAAIj1D,QAAQ,CACnB,GAAKk1D,GAAaD,EAAI90D,GAAG+0D,IAAcH,IAAWG,GAAaD,EAAI90D,KAAO40D,EACtE,MAAO50D,EAEXA,KAEJ,MAAO,GASf,QAAS8C,GAAQtF,GACb,MAAO6C,OAAMkM,UAAU/F,MAAM9M,KAAK8D,EAAK,GAU3C,QAASw3D,GAAYF,EAAK7xD,EAAKmW,GAK3B,IAJA,GAAI67C,MACAviD,KACA1S,EAAI,EAEDA,EAAI80D,EAAIj1D,QAAQ,CACnB,GAAI8O,GAAM1L,EAAM6xD,EAAI90D,GAAGiD,GAAO6xD,EAAI90D,EAC9B60D,GAAQniD,EAAQ/D,GAAO,GACvBsmD,EAAQn0D,KAAKg0D,EAAI90D,IAErB0S,EAAO1S,GAAK2O,EACZ3O,IAaJ,MAVIoZ,KAII67C,EAHChyD,EAGSgyD,EAAQ77C,KAAK,SAAyB3Z,EAAGC,GAC/C,MAAOD,GAAEwD,GAAOvD,EAAEuD,KAHZgyD,EAAQ77C,QAQnB67C,EASX,QAASC,GAAS13D,EAAK23D,GAKnB,IAJA,GAAIC,GAAQ91D,EACR+1D,EAAYF,EAAS,GAAG9pC,cAAgB8pC,EAAS3uD,MAAM,GAEvDxG,EAAI,EACDA,EAAIs1D,GAAgBz1D,QAAQ,CAI/B,GAHAu1D,EAASE,GAAgBt1D,GACzBV,EAAO,EAAW81D,EAASC,EAAYF,EAEnC71D,IAAQ9B,GACR,MAAO8B,EAEXU,KAEJ,MAAOF,GAQX,QAASy1D,KACL,MAAOC,MAQX,QAASC,GAAoB/xD,GACzB,GAAIgyD,GAAMhyD,EAAQiyD,eAAiBjyD,CACnC,OAAQgyD,GAAIE,aAAeF,EAAIG,cAAgBxxD,EAyCnD,QAASyxD,GAAMC,EAASlzD,GACpB,GAAI4xC,GAAOt7C,IACXA,MAAK48D,QAAUA,EACf58D,KAAK0J,SAAWA,EAChB1J,KAAKuK,QAAUqyD,EAAQryD,QACvBvK,KAAKqL,OAASuxD,EAAQ/4D,QAAQg5D,YAI9B78D,KAAK88D,WAAa,SAASC,GACnBhC,EAAS6B,EAAQ/4D,QAAQ8zD,QAASiF,KAClCthB,EAAKue,QAAQkD,IAIrB/8D,KAAKg9D,OAoCT,QAASC,GAAoBL,GACzB,GAAIM,GACAC,EAAaP,EAAQ/4D,QAAQs5D,UAajC,OAAO,KAVHD,EADAC,EACOA,EACAC,GACAC,EACAC,GACAC,EACCC,GAGDC,EAFAC,GAIOd,EAASe,GAS/B,QAASA,GAAaf,EAAS9C,EAAWp2D,GACtC,GAAIk6D,GAAcl6D,EAAMm6D,SAASn3D,OAC7Bo3D,EAAqBp6D,EAAMq6D,gBAAgBr3D,OAC3CkzD,EAAWE,EAAYkE,IAAgBJ,EAAcE,IAAuB,EAC5EG,EAAWnE,GAAaoE,GAAYC,KAAkBP,EAAcE,IAAuB,CAE/Fp6D,GAAMk2D,UAAYA,EAClBl2D,EAAMu6D,UAAYA,EAEdrE,IACAgD,EAAQwB,YAKZ16D,EAAMo2D,UAAYA,EAGlBuE,EAAiBzB,EAASl5D,GAG1Bk5D,EAAQnkB,KAAK,eAAgB/0C,GAE7Bk5D,EAAQ0B,UAAU56D,GAClBk5D,EAAQwB,QAAQG,UAAY76D,EAQhC,QAAS26D,GAAiBzB,EAASl5D,GAC/B,GAAI06D,GAAUxB,EAAQwB,QAClBP,EAAWn6D,EAAMm6D,SACjBW,EAAiBX,EAASn3D,MAGzB03D,GAAQK,aACTL,EAAQK,WAAaC,EAAqBh7D,IAI1C86D,EAAiB,IAAMJ,EAAQO,cAC/BP,EAAQO,cAAgBD,EAAqBh7D,GACnB,IAAnB86D,IACPJ,EAAQO,eAAgB,EAG5B,IAAIF,GAAaL,EAAQK,WACrBE,EAAgBP,EAAQO,cACxBC,EAAeD,EAAgBA,EAAc1nB,OAASwnB,EAAWxnB,OAEjEA,EAASvzC,EAAMuzC,OAAS4nB,EAAUhB,EACtCn6D,GAAMo7D,UAAY96C,KAClBtgB,EAAMq7D,UAAYr7D,EAAMo7D,UAAYL,EAAWK,UAE/Cp7D,EAAM20D,MAAQ2G,EAASJ,EAAc3nB,GACrCvzC,EAAMstC,SAAWiuB,EAAYL,EAAc3nB,GAE3CioB,EAAed,EAAS16D,GACxBA,EAAMy7D,gBAAkBC,EAAa17D,EAAM27D,OAAQ37D,EAAM47D,OAEzD,IAAIC,GAAkBC,EAAY97D,EAAMq7D,UAAWr7D,EAAM27D,OAAQ37D,EAAM47D,OACvE57D,GAAM+7D,iBAAmBF,EAAgB/gC,EACzC96B,EAAMg8D,iBAAmBH,EAAgBv9C,EACzCte,EAAM67D,gBAAmBroD,GAAIqoD,EAAgB/gC,GAAKtnB,GAAIqoD,EAAgBv9C,GAAMu9C,EAAgB/gC,EAAI+gC,EAAgBv9C,EAEhHte,EAAM2B,MAAQs5D,EAAgBne,EAASme,EAAcd,SAAUA,GAAY,EAC3En6D,EAAMi8D,SAAWhB,EAAgBiB,EAAYjB,EAAcd,SAAUA,GAAY,EAEjFn6D,EAAMm8D,YAAezB,EAAQG,UAAsC76D,EAAMm6D,SAASn3D,OAC9E03D,EAAQG,UAAUsB,YAAen8D,EAAMm6D,SAASn3D,OAAS03D,EAAQG,UAAUsB,YADtCn8D,EAAMm6D,SAASn3D,OAGxDo5D,EAAyB1B,EAAS16D,EAGlC,IAAI2H,GAASuxD,EAAQryD,OACjBkB,GAAU/H,EAAMohD,SAASz5C,OAAQA,KACjCA,EAAS3H,EAAMohD,SAASz5C,QAE5B3H,EAAM2H,OAASA,EAGnB,QAAS6zD,GAAed,EAAS16D,GAC7B,GAAIuzC,GAASvzC,EAAMuzC,OACf1uB,EAAS61C,EAAQ2B,gBACjBC,EAAY5B,EAAQ4B,cACpBzB,EAAYH,EAAQG,aAEpB76D,GAAMo2D,YAAckE,IAAeO,EAAUzE,YAAcoE,KAC3D8B,EAAY5B,EAAQ4B,WAChBxhC,EAAG+/B,EAAUc,QAAU,EACvBr9C,EAAGu8C,EAAUe,QAAU,GAG3B/2C,EAAS61C,EAAQ2B,aACbvhC,EAAGyY,EAAOzY,EACVxc,EAAGi1B,EAAOj1B,IAIlBte,EAAM27D,OAASW,EAAUxhC,GAAKyY,EAAOzY,EAAIjW,EAAOiW,GAChD96B,EAAM47D,OAASU,EAAUh+C,GAAKi1B,EAAOj1B,EAAIuG,EAAOvG,GAQpD,QAAS89C,GAAyB1B,EAAS16D,GACvC,GAEIu8D,GAAUC,EAAWC,EAAWz0C,EAFhC00C,EAAOhC,EAAQiC,cAAgB38D,EAC/Bq7D,EAAYr7D,EAAMo7D,UAAYsB,EAAKtB,SAGvC,IAAIp7D,EAAMo2D,WAAaqE,KAAiBY,EAAYuB,IAAoBF,EAAKH,WAAat5D,GAAY,CAClG,GAAI04D,GAAS37D,EAAM27D,OAASe,EAAKf,OAC7BC,EAAS57D,EAAM47D,OAASc,EAAKd,OAE7BvxD,EAAIyxD,EAAYT,EAAWM,EAAQC,EACvCY,GAAYnyD,EAAEywB,EACd2hC,EAAYpyD,EAAEiU,EACdi+C,EAAY/oD,GAAInJ,EAAEywB,GAAKtnB,GAAInJ,EAAEiU,GAAMjU,EAAEywB,EAAIzwB,EAAEiU,EAC3C0J,EAAY0zC,EAAaC,EAAQC,GAEjClB,EAAQiC,aAAe38D,MAGvBu8D,GAAWG,EAAKH,SAChBC,EAAYE,EAAKF,UACjBC,EAAYC,EAAKD,UACjBz0C,EAAY00C,EAAK10C,SAGrBhoB,GAAMu8D,SAAWA,EACjBv8D,EAAMw8D,UAAYA,EAClBx8D,EAAMy8D,UAAYA,EAClBz8D,EAAMgoB,UAAYA,EAQtB,QAASgzC,GAAqBh7D,GAK1B,IAFA,GAAIm6D,MACAh3D,EAAI,EACDA,EAAInD,EAAMm6D,SAASn3D,QACtBm3D,EAASh3D,IACL6hC,QAASpf,GAAM5lB,EAAMm6D,SAASh3D,GAAG6hC,SACjCG,QAASvf,GAAM5lB,EAAMm6D,SAASh3D,GAAGgiC,UAErChiC,GAGJ,QACIi4D,UAAW96C,KACX65C,SAAUA,EACV5mB,OAAQ4nB,EAAUhB,GAClBwB,OAAQ37D,EAAM27D,OACdC,OAAQ57D,EAAM47D,QAStB,QAAST,GAAUhB,GACf,GAAIW,GAAiBX,EAASn3D,MAG9B,IAAuB,IAAnB83D,EACA,OACIhgC,EAAGlV,GAAMu0C,EAAS,GAAGn1B,SACrB1mB,EAAGsH,GAAMu0C,EAAS,GAAGh1B,SAK7B,KADA,GAAIrK,GAAI,EAAGxc,EAAI,EAAGnb,EAAI,EACX23D,EAAJ33D,GACH23B,GAAKq/B,EAASh3D,GAAG6hC,QACjB1mB,GAAK67C,EAASh3D,GAAGgiC,QACjBhiC,GAGJ,QACI23B,EAAGlV,GAAMkV,EAAIggC,GACbx8C,EAAGsH,GAAMtH,EAAIw8C,IAWrB,QAASgB,GAAYT,EAAWvgC,EAAGxc,GAC/B,OACIwc,EAAGA,EAAIugC,GAAa,EACpB/8C,EAAGA,EAAI+8C,GAAa,GAU5B,QAASK,GAAa5gC,EAAGxc,GACrB,MAAIwc,KAAMxc,EACCu+C,GAGPrpD,GAAIsnB,IAAMtnB,GAAI8K,GACH,EAAJwc,EAAQgiC,GAAiBC,GAEzB,EAAJz+C,EAAQ0+C,GAAeC,GAUlC,QAAS1B,GAAY7hD,EAAIC,EAAIpW,GACpBA,IACDA,EAAQ25D,GAEZ,IAAIpiC,GAAInhB,EAAGpW,EAAM,IAAMmW,EAAGnW,EAAM,IAC5B+a,EAAI3E,EAAGpW,EAAM,IAAMmW,EAAGnW,EAAM,GAEhC,OAAO3B,MAAK+0C,KAAM7b,EAAIA,EAAMxc,EAAIA,GAUpC,QAASg9C,GAAS5hD,EAAIC,EAAIpW,GACjBA,IACDA,EAAQ25D,GAEZ,IAAIpiC,GAAInhB,EAAGpW,EAAM,IAAMmW,EAAGnW,EAAM,IAC5B+a,EAAI3E,EAAGpW,EAAM,IAAMmW,EAAGnW,EAAM,GAChC,OAA0B,KAAnB3B,KAAKgzD,MAAMt2C,EAAGwc,GAAWl5B,KAAKqxC,GASzC,QAASipB,GAAYpsB,EAAOE,GACxB,MAAOsrB,GAAStrB,EAAI,GAAIA,EAAI,GAAImtB,IAAmB7B,EAASxrB,EAAM,GAAIA,EAAM,GAAIqtB,IAUpF,QAASrgB,GAAShN,EAAOE,GACrB,MAAOurB,GAAYvrB,EAAI,GAAIA,EAAI,GAAImtB,IAAmB5B,EAAYzrB,EAAM,GAAIA,EAAM,GAAIqtB,IAiB1F,QAASnD,KACL19D,KAAK8gE,KAAOC,GACZ/gE,KAAKghE,MAAQC,GAEbjhE,KAAKkhE,OAAQ,EACblhE,KAAKmhE,SAAU,EAEfxE,EAAMzpD,MAAMlT,KAAMyG,WAoEtB,QAAS42D,KACLr9D,KAAK8gE,KAAOM,GACZphE,KAAKghE,MAAQK,GAEb1E,EAAMzpD,MAAMlT,KAAMyG,WAElBzG,KAAKshE,MAASthE,KAAK48D,QAAQwB,QAAQmD,iBAoEvC,QAASC,KACLxhE,KAAKyhE,SAAWC,GAChB1hE,KAAKghE,MAAQW,GACb3hE,KAAK4hE,SAAU,EAEfjF,EAAMzpD,MAAMlT,KAAMyG,WAsCtB,QAASo7D,GAAuB9E,EAAIh1D,GAChC,GAAI+5D,GAAMn4D,EAAQozD,EAAGgF,SACjBC,EAAUr4D,EAAQozD,EAAGkF,eAMzB,OAJIl6D,IAAQm2D,GAAYC,MACpB2D,EAAMjG,EAAYiG,EAAIrhC,OAAOuhC,GAAU,cAAc,KAGjDF,EAAKE,GAiBjB,QAASzE,KACLv9D,KAAKyhE,SAAWS,GAChBliE,KAAKmiE,aAELxF,EAAMzpD,MAAMlT,KAAMyG,WA0BtB,QAAS27D,GAAWrF,EAAIh1D,GACpB,GAAIs6D,GAAa14D,EAAQozD,EAAGgF,SACxBI,EAAYniE,KAAKmiE,SAGrB,IAAIp6D,GAAQi2D,GAAcsE,KAAqC,IAAtBD,EAAW37D,OAEhD,MADAy7D,GAAUE,EAAW,GAAGE,aAAc,GAC9BF,EAAYA,EAGxB,IAAIx7D,GACA8hC,EACAs5B,EAAiBt4D,EAAQozD,EAAGkF,gBAC5BO,KACAn3D,EAASrL,KAAKqL,MAQlB,IALAs9B,EAAgB05B,EAAWjiC,OAAO,SAASqiC,GACvC,MAAOh3D,GAAUg3D,EAAMp3D,OAAQA,KAI/BtD,IAASi2D,GAET,IADAn3D,EAAI,EACGA,EAAI8hC,EAAcjiC,QACrBy7D,EAAUx5B,EAAc9hC,GAAG07D,aAAc,EACzC17D,GAMR,KADAA,EAAI,EACGA,EAAIo7D,EAAev7D,QAClBy7D,EAAUF,EAAep7D,GAAG07D,aAC5BC,EAAqB76D,KAAKs6D,EAAep7D,IAIzCkB,GAAQm2D,GAAYC,WACbgE,GAAUF,EAAep7D,GAAG07D,YAEvC17D,GAGJ,OAAK27D,GAAqB97D,QAMtBm1D,EAAYlzB,EAAclI,OAAO+hC,GAAuB,cAAc,GACtEA,GAPJ,OAoBJ,QAAS/E,KACLd,EAAMzpD,MAAMlT,KAAMyG,UAElB,IAAIozD,GAAUM,EAAOn6D,KAAK65D,QAAS75D,KACnCA,MAAKyiE,MAAQ,GAAIlF,GAAWv9D,KAAK48D,QAAS/C,GAC1C75D,KAAK0iE,MAAQ,GAAIhF,GAAW19D,KAAK48D,QAAS/C,GAyD9C,QAAS8I,GAAY/F,EAASx3D,GAC1BpF,KAAK48D,QAAUA,EACf58D,KAAK0Y,IAAItT,GAwGb,QAASw9D,GAAkBC,GAEvB,GAAItH,EAAMsH,EAASC,IACf,MAAOA,GAGX,IAAIC,GAAUxH,EAAMsH,EAASG,IACzBC,EAAU1H,EAAMsH,EAASK,GAM7B,OAAIH,IAAWE,EACJH,GAIPC,GAAWE,EACJF,EAAUC,GAAqBE,GAItC3H,EAAMsH,EAASM,IACRA,GAGJC,GA4CX,QAASC,GAAWx/D,GAChB7D,KAAK6D,QAAU61D,MAAW15D,KAAK6jB,SAAUhgB,OAEzC7D,KAAKK,GAAK+7D,IAEVp8D,KAAK48D,QAAU,KAGf58D,KAAK6D,QAAQ8zD,OAASsD,EAAYj7D,KAAK6D,QAAQ8zD,QAAQ,GAEvD33D,KAAKsjE,MAAQC,GAEbvjE,KAAKwjE,gBACLxjE,KAAKyjE,eAqOT,QAASC,GAASJ,GACd,MAAIA,GAAQK,GACD,SACAL,EAAQM,GACR,MACAN,EAAQO,GACR,OACAP,EAAQQ,GACR,QAEJ,GAQX,QAASC,GAAar4C,GAClB,MAAIA,IAAai1C,GACN,OACAj1C,GAAag1C,GACb,KACAh1C,GAAa80C,GACb,OACA90C,GAAa+0C,GACb,QAEJ,GASX,QAASuD,GAA6BC,EAAiBC,GACnD,GAAItH,GAAUsH,EAAWtH,OACzB,OAAIA,GACOA,EAAQhlC,IAAIqsC,GAEhBA,EAQX,QAASE,MACLd,EAAWnwD,MAAMlT,KAAMyG,WA6D3B,QAAS29D,MACLD,GAAejxD,MAAMlT,KAAMyG,WAE3BzG,KAAKqkE,GAAK,KACVrkE,KAAKskE,GAAK,KA4Ed,QAASC,MACLJ,GAAejxD,MAAMlT,KAAMyG,WAsC/B,QAAS+9D,MACLnB,EAAWnwD,MAAMlT,KAAMyG,WAEvBzG,KAAKykE,OAAS,KACdzkE,KAAK0kE,OAAS,KAmElB,QAASC,MACLR,GAAejxD,MAAMlT,KAAMyG,WA8B/B,QAASm+D,MACLT,GAAejxD,MAAMlT,KAAMyG,WA2D/B,QAASo+D,MACLxB,EAAWnwD,MAAMlT,KAAMyG,WAIvBzG,KAAK8kE,OAAQ,EACb9kE,KAAK+kE,SAAU,EAEf/kE,KAAKykE,OAAS,KACdzkE,KAAK0kE,OAAS,KACd1kE,KAAK6yB,MAAQ,EAqGjB,QAAS7uB,IAAOuG,EAAS1G,GAGrB,MAFAA,GAAUA,MACVA,EAAQmhE,YAAc/J,EAAYp3D,EAAQmhE,YAAahhE,GAAO6f,SAASohD,QAChE,GAAI1L,IAAQhvD,EAAS1G,GAiIhC,QAAS01D,IAAQhvD,EAAS1G,GACtB7D,KAAK6D,QAAU61D,MAAW11D,GAAO6f,SAAUhgB,OAE3C7D,KAAK6D,QAAQg5D,YAAc78D,KAAK6D,QAAQg5D,aAAetyD,EAEvDvK,KAAKklE,YACLllE,KAAKo+D,WACLp+D,KAAKglE,eAELhlE,KAAKuK,QAAUA,EACfvK,KAAK0D,MAAQu5D,EAAoBj9D,MACjCA,KAAKmlE,YAAc,GAAIxC,GAAY3iE,KAAMA,KAAK6D,QAAQshE,aAEtDC,GAAeplE,MAAM,GAErBs6D,EAAKt6D,KAAK6D,QAAQmhE,YAAa,SAASrzD,GACpC,GAAIuyD,GAAalkE,KAAKgnB,IAAI,GAAKrV,GAAK,GAAIA,EAAK,IAC7CA,GAAK,IAAMuyD,EAAWmB,cAAc1zD,EAAK,IACzCA,EAAK,IAAMuyD,EAAWoB,eAAe3zD,EAAK,KAC3C3R,MAiPP,QAASolE,IAAexI,EAAS51C,GAC7B,GAAIzc,GAAUqyD,EAAQryD,OACjBA,GAAQ0E,OAGbqrD,EAAKsC,EAAQ/4D,QAAQ0hE,SAAU,SAASngE,EAAOuS,GAC3CpN,EAAQ0E,MAAM8sD,EAASxxD,EAAQ0E,MAAO0I,IAASqP,EAAM5hB,EAAQ,KASrE,QAASogE,IAAgBv6D,EAAOuO,GAC5B,GAAIisD,GAAeznC,EAAS0nC,YAAY,QACxCD,GAAaE,UAAU16D,GAAO,GAAM,GACpCw6D,EAAaG,QAAUpsD,EACvBA,EAAKnO,OAAOw6D,cAAcJ,GAx7E9B,GA+FI/L,IA/FAyC,IAAmB,GAAI,SAAU,MAAO,KAAM,KAAM,KACpD2J,GAAe9nC,EAASM,cAAc,OAEtC08B,GAAgB,WAEhB1xC,GAAQhkB,KAAKgkB,MACbpS,GAAM5R,KAAK4R,IACX8M,GAAMte,KAAKse;AA0FX01C,GADyB,kBAAlBnyD,QAAOmyD,OACL,SAAgBruD,GACrB,GAAIA,IAAW1E,GAAwB,OAAX0E,EACxB,KAAM,IAAI/D,WAAU,6CAIxB,KAAK,GADD4U,GAAS3U,OAAO8D,GACX9B,EAAQ,EAAGA,EAAQ9C,UAAUC,OAAQ6C,IAAS,CACnD,GAAI8O,GAAS5R,UAAU8C,EACvB,IAAI8O,IAAW1R,GAAwB,OAAX0R,EACxB,IAAK,GAAI0tD,KAAW1tD,GACZA,EAAOjS,eAAe2/D,KACtB7pD,EAAO6pD,GAAW1tD,EAAO0tD,IAKzC,MAAO7pD,IAGF3U,OAAOmyD,MAWpB,IAAI3yD,IAASyQ,EAAU,SAAgBwuD,EAAMrK,EAAKsK,GAG9C,IAFA,GAAI72D,GAAO7H,OAAO6H,KAAKusD,GACnB90D,EAAI,EACDA,EAAIuI,EAAK1I,UACPu/D,GAAUA,GAASD,EAAK52D,EAAKvI,MAAQF,KACtCq/D,EAAK52D,EAAKvI,IAAM80D,EAAIvsD,EAAKvI,KAE7BA,GAEJ,OAAOm/D,IACR,SAAU,iBASTC,GAAQzuD,EAAU,SAAewuD,EAAMrK,GACvC,MAAO50D,IAAOi/D,EAAMrK,GAAK,IAC1B,QAAS,iBAiNRU,GAAY,EAeZ6J,GAAe,wCAEf1I,GAAiB,gBAAkBtyD,GACnCkyD,GAAyBrB,EAAS7wD,EAAQ,kBAAoBvE,EAC9D22D,GAAqBE,IAAiB0I,GAAal2D,KAAKrF,UAAUC,WAElEu7D,GAAmB,QACnBC,GAAiB,MACjBC,GAAmB,QACnBC,GAAoB,SAEpBhG,GAAmB,GAEnBtC,GAAc,EACdsE,GAAa,EACbpE,GAAY,EACZC,GAAe,EAEfoC,GAAiB,EACjBC,GAAiB,EACjBC,GAAkB,EAClBC,GAAe,EACfC,GAAiB,GAEjB4F,GAAuB/F,GAAiBC,GACxC+F,GAAqB9F,GAAeC,GACpC8F,GAAgBF,GAAuBC,GAEvC5F,IAAY,IAAK,KACjBC,IAAmB,UAAW,UA4BlClE,GAAMvpD,WAKFymD,QAAS,aAKTmD,KAAM,WACFh9D,KAAK8gE,MAAQ1F,EAAkBp7D,KAAKuK,QAASvK,KAAK8gE,KAAM9gE,KAAK88D,YAC7D98D,KAAKyhE,UAAYrG,EAAkBp7D,KAAKqL,OAAQrL,KAAKyhE,SAAUzhE,KAAK88D,YACpE98D,KAAKghE,OAAS5F,EAAkBkB,EAAoBt8D,KAAKuK,SAAUvK,KAAKghE,MAAOhhE,KAAK88D,aAMxF/8B,QAAS,WACL//B,KAAK8gE,MAAQxF,EAAqBt7D,KAAKuK,QAASvK,KAAK8gE,KAAM9gE,KAAK88D,YAChE98D,KAAKyhE,UAAYnG,EAAqBt7D,KAAKqL,OAAQrL,KAAKyhE,SAAUzhE,KAAK88D,YACvE98D,KAAKghE,OAAS1F,EAAqBgB,EAAoBt8D,KAAKuK,SAAUvK,KAAKghE,MAAOhhE,KAAK88D,aA4T/F,IAAI4J,KACAC,UAAW3I,GACX4I,UAAWtE,GACXuE,QAAS3I,IAGT6C,GAAuB,YACvBE,GAAsB,mBAiB1BxG,GAAQiD,EAAYf,GAKhB9C,QAAS,SAAmBkD,GACxB,GAAIjD,GAAY4M,GAAgB3J,EAAGh1D,KAG/B+xD,GAAYkE,IAA6B,IAAdjB,EAAGxlB,SAC9Bv3C,KAAKmhE,SAAU,GAGfrH,EAAYwI,IAA2B,IAAbvF,EAAGzlB,QAC7BwiB,EAAYoE,IAIXl+D,KAAKmhE,SAAYnhE,KAAKkhE,QAIvBpH,EAAYoE,KACZl+D,KAAKmhE,SAAU,GAGnBnhE,KAAK0J,SAAS1J,KAAK48D,QAAS9C,GACxB+D,UAAWd,GACXgB,iBAAkBhB,GAClBpD,YAAa0M,GACbvhB,SAAUiY,OAKtB,IAAI+J,KACAC,YAAa/I,GACbgJ,YAAa1E,GACb2E,UAAW/I,GACXgJ,cAAe/I,GACfgJ,WAAYhJ,IAIZiJ,IACAC,EAAGlB,GACHmB,EAAGlB,GACHmB,EAAGlB,GACHmB,EAAGlB,IAGHlF,GAAyB,cACzBC,GAAwB,qCAGxBn2D,GAAOu8D,iBAAmBv8D,EAAOw8D,eACjCtG,GAAyB,gBACzBC,GAAwB,6CAiB5B5G,EAAQ4C,EAAmBV,GAKvB9C,QAAS,SAAmBkD,GACxB,GAAIuE,GAAQthE,KAAKshE,MACbqG,GAAgB,EAEhBC,EAAsB7K,EAAGh1D,KAAK6Q,cAActM,QAAQ,KAAM,IAC1DwtD,EAAYgN,GAAkBc,GAC9BjO,EAAcyN,GAAuBrK,EAAGpD,cAAgBoD,EAAGpD,YAE3DkO,EAAWlO,GAAewM,GAG1B2B,EAAapM,EAAQ4F,EAAOvE,EAAGgL,UAAW,YAG1CjO,GAAYkE,KAA8B,IAAdjB,EAAGxlB,QAAgBswB,GAC9B,EAAbC,IACAxG,EAAM35D,KAAKo1D,GACX+K,EAAaxG,EAAM56D,OAAS,GAEzBozD,GAAaoE,GAAYC,MAChCwJ,GAAgB,GAIH,EAAbG,IAKJxG,EAAMwG,GAAc/K,EAEpB/8D,KAAK0J,SAAS1J,KAAK48D,QAAS9C,GACxB+D,SAAUyD,EACVvD,iBAAkBhB,GAClBpD,YAAaA,EACb7U,SAAUiY,IAGV4K,GAEArG,EAAM93D,OAAOs+D,EAAY,MAKrC,IAAIE,KACAC,WAAYjK,GACZkK,UAAW5F,GACX6F,SAAUjK,GACVkK,YAAajK,IAGbuD,GAA6B,aAC7BC,GAA6B,2CAejClH,GAAQ+G,EAAkB7E,GACtB9C,QAAS,SAAmBkD,GACxB,GAAIh1D,GAAOigE,GAAuBjL,EAAGh1D,KAOrC,IAJIA,IAASi2D,KACTh+D,KAAK4hE,SAAU,GAGd5hE,KAAK4hE,QAAV,CAIA,GAAIG,GAAUF,EAAuBthE,KAAKP,KAAM+8D,EAAIh1D,EAGhDA,IAAQm2D,GAAYC,KAAiB4D,EAAQ,GAAGr7D,OAASq7D,EAAQ,GAAGr7D,SAAW,IAC/E1G,KAAK4hE,SAAU,GAGnB5hE,KAAK0J,SAAS1J,KAAK48D,QAAS70D,GACxB81D,SAAUkE,EAAQ,GAClBhE,gBAAiBgE,EAAQ,GACzBpI,YAAawM,GACbrhB,SAAUiY,OAsBtB,IAAIsL,KACAJ,WAAYjK,GACZkK,UAAW5F,GACX6F,SAAUjK,GACVkK,YAAajK,IAGb+D,GAAsB,2CAc1BzH,GAAQ8C,EAAYZ,GAChB9C,QAAS,SAAoBkD,GACzB,GAAIh1D,GAAOsgE,GAAgBtL,EAAGh1D,MAC1Bg6D,EAAUK,EAAW7hE,KAAKP,KAAM+8D,EAAIh1D,EACnCg6D,IAIL/hE,KAAK0J,SAAS1J,KAAK48D,QAAS70D,GACxB81D,SAAUkE,EAAQ,GAClBhE,gBAAiBgE,EAAQ,GACzBpI,YAAawM,GACbrhB,SAAUiY,OAmFtBtC,EAAQgD,EAAiBd,GAOrB9C,QAAS,SAAoB+C,EAAS0L,EAAYC,GAC9C,GAAIV,GAAWU,EAAU5O,aAAewM,GACpCqC,EAAWD,EAAU5O,aAAe0M,EAIxC,IAAIwB,EACA7nE,KAAK0iE,MAAMxB,OAAQ,MAChB,IAAIsH,IAAYxoE,KAAK0iE,MAAMxB,MAC9B,MAIAoH,IAAcpK,GAAYC,MAC1Bn+D,KAAK0iE,MAAMxB,OAAQ,GAGvBlhE,KAAK0J,SAASkzD,EAAS0L,EAAYC,IAMvCxoC,QAAS,WACL//B,KAAKyiE,MAAM1iC,UACX//B,KAAK0iE,MAAM3iC,YAInB,IAAI0oC,IAAwB1M,EAAS+J,GAAa72D,MAAO,eACrDy5D,GAAsBD,KAA0B9hE,EAGhDgiE,GAAuB,UACvBvF,GAAoB,OACpBD,GAA4B,eAC5BL,GAAoB,OACpBE,GAAqB,QACrBE,GAAqB,OAczBP,GAAYvvD,WAKRsF,IAAK,SAAStT,GAENA,GAASujE,KACTvjE,EAAQpF,KAAK4oE,WAGbF,IAAuB1oE,KAAK48D,QAAQryD,QAAQ0E,QAC5CjP,KAAK48D,QAAQryD,QAAQ0E,MAAMw5D,IAAyBrjE,GAExDpF,KAAK6iE,QAAUz9D,EAAMwT,cAAc1J,QAMvC4xB,OAAQ,WACJ9gC,KAAK0Y,IAAI1Y,KAAK48D,QAAQ/4D,QAAQshE,cAOlCyD,QAAS,WACL,GAAI/F,KAMJ,OALAvI,GAAKt6D,KAAK48D,QAAQoI,YAAa,SAASd,GAChCnJ,EAASmJ,EAAWrgE,QAAQ8zD,QAASuM,MACrCrB,EAAUA,EAAQpiC,OAAOyjC,EAAW2E,qBAGrCjG,EAAkBC,EAAQx5D,KAAK,OAO1Cy/D,gBAAiB,SAASplE,GAEtB,IAAIglE,GAAJ,CAIA,GAAI5jB,GAAWphD,EAAMohD,SACjBp5B,EAAYhoB,EAAMy7D,eAGtB,IAAIn/D,KAAK48D,QAAQwB,QAAQ2K,UAErB,WADAjkB,GAAS95C,gBAIb,IAAI63D,GAAU7iE,KAAK6iE,QACfmG,EAAUzN,EAAMsH,EAASC,IACzBG,EAAU1H,EAAMsH,EAASK,IACzBH,EAAUxH,EAAMsH,EAASG,GAE7B,IAAIgG,EAAS,CAGT,GAAIC,GAAyC,IAA1BvlE,EAAMm6D,SAASn3D,OAC9BwiE,EAAgBxlE,EAAMstC,SAAW,EACjCm4B,EAAiBzlE,EAAMq7D,UAAY,GAEvC,IAAIkK,GAAgBC,GAAiBC,EACjC,OAIR,IAAIpG,IAAWE,EAKf,MAAI+F,IACC/F,GAAWv3C,EAAY66C,IACvBxD,GAAWr3C,EAAY86C,GACjBxmE,KAAKopE,WAAWtkB,GAH3B,SAWJskB,WAAY,SAAStkB,GACjB9kD,KAAK48D,QAAQwB,QAAQ2K,WAAY,EACjCjkB,EAAS95C,kBAkEjB,IAAIu4D,IAAiB,EACjBO,GAAc,EACdD,GAAgB,EAChBD,GAAc,EACdyF,GAAmBzF,GACnBD,GAAkB,GAClB2F,GAAe,EAwBnBjG,GAAWjwD,WAKPyQ,YAOAnL,IAAK,SAAS7U,GAKV,MAJA61D,IAAO15D,KAAK6D,QAASA,GAGrB7D,KAAK48D,SAAW58D,KAAK48D,QAAQuI,YAAYrkC,SAClC9gC,MAQXqlE,cAAe,SAASpB,GACpB,GAAI7J,EAAe6J,EAAiB,gBAAiBjkE,MACjD,MAAOA,KAGX,IAAIwjE,GAAexjE,KAAKwjE,YAMxB,OALAS,GAAkBD,EAA6BC,EAAiBjkE,MAC3DwjE,EAAaS,EAAgB5jE,MAC9BmjE,EAAaS,EAAgB5jE,IAAM4jE,EACnCA,EAAgBoB,cAAcrlE,OAE3BA,MAQXupE,kBAAmB,SAAStF,GACxB,MAAI7J,GAAe6J,EAAiB,oBAAqBjkE,MAC9CA,MAGXikE,EAAkBD,EAA6BC,EAAiBjkE,YACzDA,MAAKwjE,aAAaS,EAAgB5jE,IAClCL,OAQXslE,eAAgB,SAASrB,GACrB,GAAI7J,EAAe6J,EAAiB,iBAAkBjkE,MAClD,MAAOA,KAGX,IAAIyjE,GAAczjE,KAAKyjE,WAMvB,OALAQ,GAAkBD,EAA6BC,EAAiBjkE,MAClB,KAA1C07D,EAAQ+H,EAAaQ,KACrBR,EAAY97D,KAAKs8D,GACjBA,EAAgBqB,eAAetlE,OAE5BA,MAQXwpE,mBAAoB,SAASvF,GACzB,GAAI7J,EAAe6J,EAAiB,qBAAsBjkE,MACtD,MAAOA,KAGXikE,GAAkBD,EAA6BC,EAAiBjkE,KAChE,IAAIuJ,GAAQmyD,EAAQ17D,KAAKyjE,YAAaQ,EAItC,OAHI16D,GAAQ,IACRvJ,KAAKyjE,YAAYj6D,OAAOD,EAAO,GAE5BvJ,MAOXypE,mBAAoB,WAChB,MAAOzpE,MAAKyjE,YAAY/8D,OAAS,GAQrCgjE,iBAAkB,SAASzF,GACvB,QAASjkE,KAAKwjE,aAAaS,EAAgB5jE,KAQ/Co4C,KAAM,SAAS/0C,GAIX,QAAS+0C,GAAKxtC,GACVqwC,EAAKshB,QAAQnkB,KAAKxtC,EAAOvH,GAJ7B,GAAI43C,GAAOt7C,KACPsjE,EAAQtjE,KAAKsjE,KAOLM,IAARN,GACA7qB,EAAK6C,EAAKz3C,QAAQoH,MAAQy4D,EAASJ,IAGvC7qB,EAAK6C,EAAKz3C,QAAQoH,OAEdvH,EAAMimE,iBACNlxB,EAAK/0C,EAAMimE,iBAIXrG,GAASM,IACTnrB,EAAK6C,EAAKz3C,QAAQoH,MAAQy4D,EAASJ,KAU3CsG,QAAS,SAASlmE,GACd,MAAI1D,MAAK6pE,UACE7pE,KAAKy4C,KAAK/0C,QAGrB1D,KAAKsjE,MAAQgG,KAOjBO,QAAS,WAEL,IADA,GAAIhjE,GAAI,EACDA,EAAI7G,KAAKyjE,YAAY/8D,QAAQ,CAChC,KAAM1G,KAAKyjE,YAAY58D,GAAGy8D,OAASgG,GAAe/F,KAC9C,OAAO,CAEX18D,KAEJ,OAAO,GAOXy3D,UAAW,SAASiK,GAGhB,GAAIuB,GAAiBpQ,MAAW6O,EAGhC,OAAKxN,GAAS/6D,KAAK6D,QAAQ8zD,QAAS33D,KAAM8pE,KAOtC9pE,KAAKsjE,OAAS+F,GAAmB1F,GAAkB2F,MACnDtpE,KAAKsjE,MAAQC,IAGjBvjE,KAAKsjE,MAAQtjE,KAAK+pE,QAAQD,QAItB9pE,KAAKsjE,OAASQ,GAAcD,GAAgBD,GAAcD,KAC1D3jE,KAAK4pE,QAAQE,MAfb9pE,KAAKgqE,aACLhqE,KAAKsjE,MAAQgG,MAyBrBS,QAAS,SAASxB,KAOlBM,eAAgB,aAOhBmB,MAAO,cA8DXvP,EAAQ0J,GAAgBd,GAKpBx/C,UAKIg6C,SAAU,GASdoM,SAAU,SAASvmE,GACf,GAAIwmE,GAAiBlqE,KAAK6D,QAAQg6D,QAClC,OAA0B,KAAnBqM,GAAwBxmE,EAAMm6D,SAASn3D,SAAWwjE,GAS7DH,QAAS,SAASrmE,GACd,GAAI4/D,GAAQtjE,KAAKsjE,MACbxJ,EAAYp2D,EAAMo2D,UAElBqQ,EAAe7G,GAASQ,GAAcD,IACtC9oD,EAAU/a,KAAKiqE,SAASvmE,EAG5B,OAAIymE,KAAiBrQ,EAAYqE,KAAiBpjD,GACvCuoD,EAAQK,GACRwG,GAAgBpvD,EACnB++C,EAAYoE,GACLoF,EAAQM,GACNN,EAAQQ,GAGdR,EAAQO,GAFJC,GAIRwF,MAiBf7O,EAAQ2J,GAAeD,IAKnBtgD,UACI5Y,MAAO,MACPypB,UAAW,GACXmpC,SAAU,EACVnyC,UAAW+6C,IAGfoC,eAAgB,WACZ,GAAIn9C,GAAY1rB,KAAK6D,QAAQ6nB,UACzBm3C,IAOJ,OANIn3C,GAAY66C,IACZ1D,EAAQl7D,KAAKu7D,IAEbx3C,EAAY86C,IACZ3D,EAAQl7D,KAAKq7D,IAEVH,GAGXuH,cAAe,SAAS1mE,GACpB,GAAIG,GAAU7D,KAAK6D,QACfwmE,GAAW,EACXr5B,EAAWttC,EAAMstC,SACjBtlB,EAAYhoB,EAAMgoB,UAClB8S,EAAI96B,EAAM27D,OACVr9C,EAAIte,EAAM47D,MAed,OAZM5zC,GAAY7nB,EAAQ6nB,YAClB7nB,EAAQ6nB,UAAY66C,IACpB76C,EAAmB,IAAN8S,EAAW+hC,GAAsB,EAAJ/hC,EAASgiC,GAAiBC,GACpE4J,EAAW7rC,GAAKx+B,KAAKqkE,GACrBrzB,EAAW1rC,KAAK4R,IAAIxT,EAAM27D,UAE1B3zC,EAAmB,IAAN1J,EAAWu+C,GAAsB,EAAJv+C,EAAS0+C,GAAeC,GAClE0J,EAAWroD,GAAKhiB,KAAKskE,GACrBtzB,EAAW1rC,KAAK4R,IAAIxT,EAAM47D,UAGlC57D,EAAMgoB,UAAYA,EACX2+C,GAAYr5B,EAAWntC,EAAQ6wB,WAAahJ,EAAY7nB,EAAQ6nB,WAG3Eu+C,SAAU,SAASvmE,GACf,MAAOygE,IAAe/wD,UAAU62D,SAAS1pE,KAAKP,KAAM0D,KAC/C1D,KAAKsjE,MAAQQ,MAAkB9jE,KAAKsjE,MAAQQ,KAAgB9jE,KAAKoqE,cAAc1mE,KAGxF+0C,KAAM,SAAS/0C,GAEX1D,KAAKqkE,GAAK3gE,EAAM27D,OAChBr/D,KAAKskE,GAAK5gE,EAAM47D,MAEhB,IAAI5zC,GAAYq4C,EAAargE,EAAMgoB,UAE/BA,KACAhoB,EAAMimE,gBAAkB3pE,KAAK6D,QAAQoH,MAAQygB,GAEjD1rB,KAAK86D,OAAOriB,KAAKl4C,KAAKP,KAAM0D,MAcpC+2D,EAAQ8J,GAAiBJ,IAKrBtgD,UACI5Y,MAAO,QACPypB,UAAW,EACXmpC,SAAU,GAGdgL,eAAgB,WACZ,OAAQ/F,KAGZmH,SAAU,SAASvmE,GACf,MAAO1D,MAAK86D,OAAOmP,SAAS1pE,KAAKP,KAAM0D,KAClC4B,KAAK4R,IAAIxT,EAAM2B,MAAQ,GAAKrF,KAAK6D,QAAQ6wB,WAAa10B,KAAKsjE,MAAQQ,KAG5ErrB,KAAM,SAAS/0C,GACX,GAAoB,IAAhBA,EAAM2B,MAAa,CACnB,GAAIilE,GAAQ5mE,EAAM2B,MAAQ,EAAI,KAAO,KACrC3B,GAAMimE,gBAAkB3pE,KAAK6D,QAAQoH,MAAQq/D,EAEjDtqE,KAAK86D,OAAOriB,KAAKl4C,KAAKP,KAAM0D,MAiBpC+2D,EAAQ+J,GAAiBnB,GAKrBx/C,UACI5Y,MAAO,QACP4yD,SAAU,EACV7xC,KAAM,IACN0I,UAAW,GAGfm0C,eAAgB,WACZ,OAAQzF,KAGZ2G,QAAS,SAASrmE,GACd,GAAIG,GAAU7D,KAAK6D,QACf0mE,EAAgB7mE,EAAMm6D,SAASn3D,SAAW7C,EAAQg6D,SAClD2M,EAAgB9mE,EAAMstC,SAAWntC,EAAQ6wB,UACzC+1C,EAAY/mE,EAAMq7D,UAAYl7D,EAAQmoB,IAM1C,IAJAhsB,KAAK0kE,OAAShhE,GAIT8mE,IAAkBD,GAAkB7mE,EAAMo2D,WAAaoE,GAAYC,MAAkBsM,EACtFzqE,KAAKgqE,YACF,IAAItmE,EAAMo2D,UAAYkE,GACzBh+D,KAAKgqE,QACLhqE,KAAKykE,OAASvK,EAAkB,WAC5Bl6D,KAAKsjE,MAAQ+F,GACbrpE,KAAK4pE,WACN/lE,EAAQmoB,KAAMhsB,UACd,IAAI0D,EAAMo2D,UAAYoE,GACzB,MAAOmL,GAEX,OAAOC,KAGXU,MAAO,WACH9lC,aAAalkC,KAAKykE,SAGtBhsB,KAAM,SAAS/0C,GACP1D,KAAKsjE,QAAU+F,KAIf3lE,GAAUA,EAAMo2D,UAAYoE,GAC5Bl+D,KAAK48D,QAAQnkB,KAAKz4C,KAAK6D,QAAQoH,MAAQ,KAAMvH,IAE7C1D,KAAK0kE,OAAO5F,UAAY96C,KACxBhkB,KAAK48D,QAAQnkB,KAAKz4C,KAAK6D,QAAQoH,MAAOjL,KAAK0kE,aAevDjK,EAAQkK,GAAkBR,IAKtBtgD,UACI5Y,MAAO,SACPypB,UAAW,EACXmpC,SAAU,GAGdgL,eAAgB,WACZ,OAAQ/F,KAGZmH,SAAU,SAASvmE,GACf,MAAO1D,MAAK86D,OAAOmP,SAAS1pE,KAAKP,KAAM0D,KAClC4B,KAAK4R,IAAIxT,EAAMi8D,UAAY3/D,KAAK6D,QAAQ6wB,WAAa10B,KAAKsjE,MAAQQ,OAc/ErJ,EAAQmK,GAAiBT,IAKrBtgD,UACI5Y,MAAO,QACPypB,UAAW,GACXurC,SAAU,GACVv0C,UAAW66C,GAAuBC,GAClC3I,SAAU,GAGdgL,eAAgB,WACZ,MAAOzE,IAAchxD,UAAUy1D,eAAetoE,KAAKP,OAGvDiqE,SAAU,SAASvmE,GACf,GACIu8D,GADAv0C,EAAY1rB,KAAK6D,QAAQ6nB,SAW7B,OARIA,IAAa66C,GAAuBC,IACpCvG,EAAWv8D,EAAM67D,gBACV7zC,EAAY66C,GACnBtG,EAAWv8D,EAAM+7D,iBACV/zC,EAAY86C,KACnBvG,EAAWv8D,EAAMg8D,kBAGd1/D,KAAK86D,OAAOmP,SAAS1pE,KAAKP,KAAM0D,IACnCgoB,EAAYhoB,EAAMy7D,iBAClBz7D,EAAMstC,SAAWhxC,KAAK6D,QAAQ6wB,WAC9BhxB,EAAMm8D,aAAe7/D,KAAK6D,QAAQg6D,UAClC3mD,GAAI+oD,GAAYjgE,KAAK6D,QAAQo8D,UAAYv8D,EAAMo2D,UAAYoE,IAGnEzlB,KAAM,SAAS/0C,GACX,GAAIgoB,GAAYq4C,EAAargE,EAAMy7D,gBAC/BzzC,IACA1rB,KAAK48D,QAAQnkB,KAAKz4C,KAAK6D,QAAQoH,MAAQygB,EAAWhoB,GAGtD1D,KAAK48D,QAAQnkB,KAAKz4C,KAAK6D,QAAQoH,MAAOvH,MA2B9C+2D,EAAQoK,GAAexB,GAKnBx/C,UACI5Y,MAAO,MACP4yD,SAAU,EACV6M,KAAM,EACN9sB,SAAU,IACV5xB,KAAM,IACN0I,UAAW,EACXi2C,aAAc,IAGlB9B,eAAgB,WACZ,OAAQ1F,KAGZ4G,QAAS,SAASrmE,GACd,GAAIG,GAAU7D,KAAK6D,QAEf0mE,EAAgB7mE,EAAMm6D,SAASn3D,SAAW7C,EAAQg6D,SAClD2M,EAAgB9mE,EAAMstC,SAAWntC,EAAQ6wB,UACzCk2C,EAAiBlnE,EAAMq7D,UAAYl7D,EAAQmoB,IAI/C,IAFAhsB,KAAKgqE,QAEAtmE,EAAMo2D,UAAYkE,IAAgC,IAAfh+D,KAAK6yB,MACzC,MAAO7yB,MAAK6qE,aAKhB,IAAIL,GAAiBI,GAAkBL,EAAe,CAClD,GAAI7mE,EAAMo2D,WAAaoE,GACnB,MAAOl+D,MAAK6qE,aAGhB,IAAIC,GAAgB9qE,KAAK8kE,MAASphE,EAAMo7D,UAAY9+D,KAAK8kE,MAAQjhE,EAAQ+5C,UAAY,EACjFmtB,GAAiB/qE,KAAK+kE,SAAW9F,EAAYj/D,KAAK+kE,QAASrhE,EAAMuzC,QAAUpzC,EAAQ8mE,YAEvF3qE,MAAK8kE,MAAQphE,EAAMo7D,UACnB9+D,KAAK+kE,QAAUrhE,EAAMuzC,OAEhB8zB,GAAkBD,EAGnB9qE,KAAK6yB,OAAS,EAFd7yB,KAAK6yB,MAAQ,EAKjB7yB,KAAK0kE,OAAShhE,CAId,IAAIsnE,GAAWhrE,KAAK6yB,MAAQhvB,EAAQ6mE,IACpC,IAAiB,IAAbM,EAGA,MAAKhrE,MAAKypE,sBAGNzpE,KAAKykE,OAASvK,EAAkB,WAC5Bl6D,KAAKsjE,MAAQ+F,GACbrpE,KAAK4pE,WACN/lE,EAAQ+5C,SAAU59C,MACd8jE,IANAuF,GAUnB,MAAOC,KAGXuB,YAAa,WAIT,MAHA7qE,MAAKykE,OAASvK,EAAkB,WAC5Bl6D,KAAKsjE,MAAQgG,IACdtpE,KAAK6D,QAAQ+5C,SAAU59C,MACnBspE,IAGXU,MAAO,WACH9lC,aAAalkC,KAAKykE,SAGtBhsB,KAAM,WACEz4C,KAAKsjE,OAAS+F,KACdrpE,KAAK0kE,OAAOsG,SAAWhrE,KAAK6yB,MAC5B7yB,KAAK48D,QAAQnkB,KAAKz4C,KAAK6D,QAAQoH,MAAOjL,KAAK0kE,YAoBvD1gE,GAAOinE,QAAU,QAMjBjnE,GAAO6f,UAOHqnD,WAAW,EAQX/F,YAAawD,GAMbhR,QAAQ,EASRkF,YAAa,KAObM,WAAY,KAOZ8H,SAEKN,IAAmBhN,QAAQ,KAC3B4M,IAAkB5M,QAAQ,IAAS,YACnCiN,IAAkBl5C,UAAW66C,MAC7BnC,IAAgB14C,UAAW66C,KAAwB,WACnD1B,KACAA,IAAgB55D,MAAO,YAAay/D,KAAM,IAAK,SAC/ClG,KAQLe,UAMI4F,WAAY,OAOZC,YAAa,OASbC,aAAc,OAOdC,eAAgB,OAOhBC,SAAU,OAQVC,kBAAmB,iBAI3B,IAAIC,IAAO,EACPC,GAAc,CA8BlBnS,IAAQnmD,WAMJsF,IAAK,SAAS7U,GAaV,MAZA61D,IAAO15D,KAAK6D,QAASA,GAGjBA,EAAQshE,aACRnlE,KAAKmlE,YAAYrkC,SAEjBj9B,EAAQg5D,cAER78D,KAAK0D,MAAMq8B,UACX//B,KAAK0D,MAAM2H,OAASxH,EAAQg5D,YAC5B78D,KAAK0D,MAAMs5D,QAERh9D,MASX2wC,KAAM,SAASg7B,GACX3rE,KAAKo+D,QAAQnF,QAAU0S,EAAQD,GAAcD,IASjDnN,UAAW,SAASiK,GAChB,GAAInK,GAAUp+D,KAAKo+D,OACnB,KAAIA,EAAQnF,QAAZ,CAKAj5D,KAAKmlE,YAAY2D,gBAAgBP,EAEjC,IAAIrE,GACAc,EAAchlE,KAAKglE,YAKnB4G,EAAgBxN,EAAQwN,gBAIvBA,GAAkBA,GAAiBA,EAActI,MAAQ+F,MAC1DuC,EAAgBxN,EAAQwN,cAAgB,KAI5C,KADA,GAAI/kE,GAAI,EACDA,EAAIm+D,EAAYt+D,QACnBw9D,EAAac,EAAYn+D,GAQrBu3D,EAAQnF,UAAYyS,IACfE,GAAiB1H,GAAc0H,IAChC1H,EAAWwF,iBAAiBkC,GAGhC1H,EAAW8F,QAFX9F,EAAW5F,UAAUiK,IAOpBqD,GAAiB1H,EAAWZ,OAASQ,GAAcD,GAAgBD,MACpEgI,EAAgBxN,EAAQwN,cAAgB1H,GAE5Cr9D,MASR+wB,IAAK,SAASssC,GACV,GAAIA,YAAsBb,GACtB,MAAOa,EAIX,KAAK,GADDc,GAAchlE,KAAKglE,YACdn+D,EAAI,EAAGA,EAAIm+D,EAAYt+D,OAAQG,IACpC,GAAIm+D,EAAYn+D,GAAGhD,QAAQoH,OAASi5D,EAChC,MAAOc,GAAYn+D,EAG3B,OAAO,OASXmgB,IAAK,SAASk9C,GACV,GAAI9J,EAAe8J,EAAY,MAAOlkE,MAClC,MAAOA,KAIX,IAAI6rE,GAAW7rE,KAAK43B,IAAIssC,EAAWrgE,QAAQoH,MAS3C,OARI4gE,IACA7rE,KAAKuiC,OAAOspC,GAGhB7rE,KAAKglE,YAAYr9D,KAAKu8D,GACtBA,EAAWtH,QAAU58D,KAErBA,KAAKmlE,YAAYrkC,SACVojC,GAQX3hC,OAAQ,SAAS2hC,GACb,GAAI9J,EAAe8J,EAAY,SAAUlkE,MACrC,MAAOA,KAMX,IAHAkkE,EAAalkE,KAAK43B,IAAIssC,GAGN,CACZ,GAAIc,GAAchlE,KAAKglE,YACnBz7D,EAAQmyD,EAAQsJ,EAAad,EAEnB,MAAV36D,IACAy7D,EAAYx7D,OAAOD,EAAO,GAC1BvJ,KAAKmlE,YAAYrkC,UAIzB,MAAO9gC,OASXggC,GAAI,SAAS84B,EAAQe,GACjB,GAAIqL,GAAWllE,KAAKklE,QAKpB,OAJA5K,GAAKe,EAASvC,GAAS,SAAS7tD,GAC5Bi6D,EAASj6D,GAASi6D,EAASj6D,OAC3Bi6D,EAASj6D,GAAOtD,KAAKkyD,KAElB75D,MASXmgC,IAAK,SAAS24B,EAAQe,GAClB,GAAIqL,GAAWllE,KAAKklE,QAQpB,OAPA5K,GAAKe,EAASvC,GAAS,SAAS7tD,GACvB4uD,EAGDqL,EAASj6D,IAAUi6D,EAASj6D,GAAOzB,OAAOkyD,EAAQwJ,EAASj6D,GAAQ4uD,GAAU,SAFtEqL,GAASj6D,KAKjBjL,MAQXy4C,KAAM,SAASxtC,EAAOuO,GAEdxZ,KAAK6D,QAAQqnE,WACb1F,GAAgBv6D,EAAOuO,EAI3B,IAAI0rD,GAAWllE,KAAKklE,SAASj6D,IAAUjL,KAAKklE,SAASj6D,GAAOoC,OAC5D,IAAK63D,GAAaA,EAASx+D,OAA3B,CAIA8S,EAAKzR,KAAOkD,EACZuO,EAAKxO,eAAiB,WAClBwO,EAAKsrC,SAAS95C,iBAIlB,KADA,GAAInE,GAAI,EACDA,EAAIq+D,EAASx+D,QAChBw+D,EAASr+D,GAAG2S,GACZ3S,MAQRk5B,QAAS,WACL//B,KAAKuK,SAAW66D,GAAeplE,MAAM,GAErCA,KAAKklE,YACLllE,KAAKo+D,WACLp+D,KAAK0D,MAAMq8B,UACX//B,KAAKuK,QAAU,OA+BvBmvD,GAAO11D,IACHg6D,YAAaA,GACbsE,WAAYA,GACZpE,UAAWA,GACXC,aAAcA,GAEdoF,eAAgBA,GAChBO,YAAaA,GACbD,cAAeA,GACfD,YAAaA,GACbyF,iBAAkBA,GAClB1F,gBAAiBA,GACjB2F,aAAcA,GAEd/I,eAAgBA,GAChBC,eAAgBA,GAChBC,gBAAiBA,GACjBC,aAAcA,GACdC,eAAgBA,GAChB4F,qBAAsBA,GACtBC,mBAAoBA,GACpBC,cAAeA,GAEflN,QAASA,GACToD,MAAOA,EACPgG,YAAaA,EAEbpF,WAAYA,EACZG,WAAYA,EACZL,kBAAmBA,EACnBI,gBAAiBA,EACjB+D,iBAAkBA,EAElB6B,WAAYA,EACZc,eAAgBA,GAChB2H,IAAKjH,GACLkH,IAAK3H,GACL4H,MAAOpH,GACPqH,MAAO1H,GACP2H,OAAQvH,GACRwH,MAAO3H,GAEPxkC,GAAIo7B,EACJj7B,IAAKm7B,EACLhB,KAAMA,EACN2L,MAAOA,GACPl/D,OAAQA,GACR2yD,OAAQA,GACRe,QAASA,EACTN,OAAQA,EACR4B,SAAUA,GAKd,IAAIqQ,IAAgC,mBAAXlhE,GAAyBA,EAA0B,mBAATowC,MAAuBA,OAC1F8wB,IAAWpoE,OAASA,GAGd40D,EAAgC,WAC9B,MAAO50D,KACTzD,KAAKX,EAASM,EAAqBN,EAASC,KAAS+4D,IAAkCjyD,IAAc9G,EAAOD,QAAUg5D,KAOzH1tD,OAAQ8yB,SAAU,WAKjB,SAASn+B,EAAQD,EAASM,GAIjBA,EAAoB,GAOjCN,GAAQg4D,QAAU,SAAU9L,EAAQpiD,GAClCA,EAASi0D,aAAe,SAAU1yD,GAC5BA,EAAM2uD,SACRlwD,EAASuB,IAIb6gD,EAAO9rB,GAAG,eAAgBt2B,EAASi0D,eAQrC/9D,EAAQysE,UAAY,SAAUvgB,EAAQpiD,GAOpC,MANAA,GAASi0D,aAAe,SAAU1yD,GAC5BA,EAAMgzD,SACRv0D,EAASuB,IAIN6gD,EAAO9rB,GAAG,eAAgBt2B,EAASi0D,eAQ5C/9D,EAAQ0sE,SAAW,SAAUxgB,EAAQpiD,GACnCoiD,EAAO3rB,IAAI,eAAgBz2B,EAASi0D,eAQtC/9D,EAAQ2sE,WAAa3sE,EAAQ0sE,SAW7B1sE,EAAQ4sE,gCAAkC,SAAUC,GAClD,GAAIvJ,GAAqB,OAOzB,OALAuJ,GAAgB5D,eAAiB,WAE/B,OAAQ3F,IAGHuJ,IAKL,SAAS5sE,EAAQD,EAASM,GAY9B,QAAS8kD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCARhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIlB,GAA4B,kBAAXC,SAAoD,gBAApBA,QAAOC,SAAwB,SAAUC,GAAO,aAAcA,IAAS,SAAUA,GAAO,MAAOA,IAAyB,kBAAXF,SAAyBE,EAAIC,cAAgBH,OAAS,eAAkBE,IAEtO+gD,EAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI5hBvkD,EAAOT,EAAoB,GAE3ByiD,GAAa,EACbn/C,EAAa,OACb8+C,EAAa,sCAKboqB,EAAY,WACd,QAASA,KACP1nB,EAAgBhlD,KAAM0sE,GAmSxB,MAxRAtnB,GAAasnB,EAAW,OACtB5iE,IAAK,WACL1E,MAAO,SAAkBvB,EAAS8oE,EAAkBC,GAClDjqB,GAAa,EACbn/C,EAAampE,CACb,IAAIE,GAAcF,CAKlB,OAJkBhmE,UAAdimE,IACFC,EAAcF,EAAiBC,IAEjCF,EAAU3mE,MAAMlC,EAASgpE,MAClBlqB,KAWT74C,IAAK,QACL1E,MAAO,SAAevB,EAAS8oE,EAAkBjlB,GAC/C,IAAK,GAAI97C,KAAU/H,GACbA,EAAQuC,eAAewF,IACzB8gE,EAAUI,MAAMlhE,EAAQ/H,EAAS8oE,EAAkBjlB,MAczD59C,IAAK,QACL1E,MAAO,SAAewG,EAAQ/H,EAAS8oE,EAAkBjlB,GACtB/gD,SAA7BgmE,EAAiB/gE,IAAsDjF,SAA7BgmE,EAAiBI,QAC7DL,EAAUM,cAAcphE,EAAQ+gE,EAAkBjlB,GACZ/gD,SAA7BgmE,EAAiB/gE,IAAsDjF,SAA7BgmE,EAAiBI,QAEzB,WAAvCL,EAAUtkE,QAAQvE,EAAQ+H,KAAkEjF,SAAzCgmE,EAA0B,QAAEM,SAEjFP,EAAUQ,YAAYthE,EAAQ/H,EAAS8oE,EAAkB,UAAWA,EAA0B,QAAEM,SAAUvlB,GAE1GglB,EAAUQ,YAAYthE,EAAQ/H,EAAS8oE,EAAkB,UAAWA,EAA0B,QAAGjlB,GAIzD/gD,SAAtCgmE,EAAiB/gE,GAAQqhE,SAE3BP,EAAUQ,YAAYthE,EAAQ/H,EAAS8oE,EAAkB/gE,EAAQ+gE,EAAiB/gE,GAAQqhE,SAAUvlB,GAEpGglB,EAAUQ,YAAYthE,EAAQ/H,EAAS8oE,EAAkB/gE,EAAQ+gE,EAAiB/gE,GAAS87C,MAgBjG59C,IAAK,cACL1E,MAAO,SAAqBwG,EAAQ/H,EAAS8oE,EAAkBQ,EAAiBC,EAAc1lB,GAC5F,GAAI2lB,GAAaX,EAAUtkE,QAAQvE,EAAQ+H,IACvC0hE,EAAgBF,EAAaC,EACX1mE,UAAlB2mE,EAEuC,UAArCZ,EAAUtkE,QAAQklE,IAC2B,KAA3CA,EAAc5lE,QAAQ7D,EAAQ+H,KAChC2L,QAAQwnC,IAAI,iCAAmCnzC,EAAS,yBAAgC8gE,EAAUa,MAAMD,GAAiB,SAAWzpE,EAAQ+H,GAAU,MAAQ8gE,EAAUc,cAAc9lB,EAAM97C,GAAS02C,GACrMK,GAAa,GAKS,WAAf0qB,GAA+C,YAApBF,IACpCzlB,EAAO/mD,EAAK2H,mBAAmBo/C,EAAM97C,GACrC8gE,EAAU3mE,MAAMlC,EAAQ+H,GAAS+gE,EAAiBQ,GAAkBzlB,IAErC/gD,SAAxBymE,EAAkB,MAE3B71D,QAAQwnC,IAAI,gCAAkCnzC,EAAS,gBAAkB8gE,EAAUa,MAAMhmE,OAAO6H,KAAKg+D,IAAiB,eAAiBC,EAAa,MAAQxpE,EAAQ+H,GAAU,IAAM8gE,EAAUc,cAAc9lB,EAAM97C,GAAS02C,GAC3NK,GAAa,MAIjB74C,IAAK,UACL1E,MAAO,SAAiBX,GACtB,GAAIsD,GAAyB,mBAAXtD,GAAyB,YAAcP,EAAQO,EAEjE,OAAa,WAATsD,EACa,OAAXtD,EACK,OAELA,YAAkBuD,SACb,UAELvD,YAAkBC,QACb,SAELD,YAAkBe,QACb,SAEL0B,MAAMC,QAAQ1C,GACT,QAELA,YAAkBiB,MACb,OAEeiB,SAApBlC,EAAO8G,SACF,MAEL9G,EAAOgR,oBAAqB,EACvB,SAEF,SACW,WAAT1N,EACF,SACW,YAATA,EACF,UACW,WAATA,EACF,SACWpB,SAAToB,EACF,YAEFA,KAGT+B,IAAK,gBACL1E,MAAO,SAAuBwG,EAAQ/H,EAAS6jD,GAC7C,GAAI+lB,GAAcf,EAAUgB,cAAc9hE,EAAQ/H,EAAS6jD,GAAM,GAC7DimB,EAAejB,EAAUgB,cAAc9hE,EAAQpI,MAAgB,GAE/DoqE,EAAuB,EACvBC,EAAwB,CAEGlnE,UAA3B8mE,EAAYK,WACdv2D,QAAQwnC,IAAI,+BAAiCnzC,EAAS,QAAU8gE,EAAUc,cAAcC,EAAY/lB,KAAM97C,EAAQ,IAAM,6CAA+C6hE,EAAYK,WAAa,SAAUxrB,GACjMqrB,EAAa38B,UAAY68B,GAAyBJ,EAAYz8B,SAAW28B,EAAa38B,SAC/Fz5B,QAAQwnC,IAAI,+BAAiCnzC,EAAS,QAAU8gE,EAAUc,cAAcC,EAAY/lB,KAAM97C,EAAQ,IAAM,uDAAyD8gE,EAAUc,cAAcG,EAAajmB,KAAMimB,EAAaI,aAAc,IAAKzrB,GACnPmrB,EAAYz8B,UAAY48B,EACjCr2D,QAAQwnC,IAAI,+BAAiCnzC,EAAS,oBAAsB6hE,EAAYM,aAAe,KAAOrB,EAAUc,cAAcC,EAAY/lB,KAAM97C,GAAS02C,GAEjK/qC,QAAQwnC,IAAI,+BAAiCnzC,EAAS,iCAAmC8gE,EAAUa,MAAMhmE,OAAO6H,KAAKvL,IAAY6oE,EAAUc,cAAc9lB,EAAM97C,GAAS02C,GAG1KK,GAAa,KAaf74C,IAAK,gBACL1E,MAAO,SAAuBwG,EAAQ/H,EAAS6jD,GAC7C,GAAIsmB,GAAYvnE,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpFxB,EAAM,IACN8oE,EAAe,GACfE,KACAC,EAAkBtiE,EAAOgN,cACzBk1D,EAAannE,MACjB,KAAK,GAAIwnE,KAAMtqE,GAAS,CACtB,GAAImtC,GAAW,MACf,IAA6BrqC,SAAzB9C,EAAQsqE,GAAIlB,UAA0Be,KAAc,EAAM,CAC5D,GAAIvhE,GAASigE,EAAUgB,cAAc9hE,EAAQ/H,EAAQsqE,GAAKxtE,EAAK2H,mBAAmBo/C,EAAMymB,GACpFlpE,GAAMwH,EAAOukC,WACf+8B,EAAethE,EAAOshE,aACtBE,EAAmBxhE,EAAOi7C,KAC1BziD,EAAMwH,EAAOukC,SACb88B,EAAarhE,EAAOqhE,gBAG4B,KAA9CK,EAAGv1D,cAAclR,QAAQwmE,KAC3BJ,EAAaK,GAEfn9B,EAAW07B,EAAU0B,oBAAoBxiE,EAAQuiE,GAC7ClpE,EAAM+rC,IACR+8B,EAAeI,EACfF,EAAmBttE,EAAK+H,UAAUg/C,GAClCziD,EAAM+rC,GAIZ,OAAS+8B,aAAcA,EAAcrmB,KAAMumB,EAAkBj9B,SAAU/rC,EAAK6oE,WAAYA,MAG1FhkE,IAAK,gBACL1E,MAAO,SAAuBsiD,EAAM97C,GAIlC,IAAK,GAHDqwD,GAASx1D,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,6BAA+BA,UAAU,GAExG+0D,EAAM,OAASS,EAAS,gBACnBp1D,EAAI,EAAGA,EAAI6gD,EAAKhhD,OAAQG,IAAK,CACpC,IAAK,GAAI+J,GAAI,EAAO/J,EAAI,EAAR+J,EAAWA,IACzB4qD,GAAO,IAETA,IAAO9T,EAAK7gD,GAAK,QAEnB,IAAK,GAAIwnE,GAAK,EAAGA,EAAK3mB,EAAKhhD,OAAS,EAAG2nE,IACrC7S,GAAO,IAETA,IAAO5vD,EAAS,IAChB,KAAK,GAAI8J,GAAK,EAAGA,EAAKgyC,EAAKhhD,OAAS,EAAGgP,IAAM,CAC3C,IAAK,GAAI44D,GAAM,EAAGA,EAAM5mB,EAAKhhD,OAASgP,EAAI44D,IACxC9S,GAAO,IAETA,IAAO,MAET,MAAOA,GAAM,UAGf1xD,IAAK,QACL1E,MAAO,SAAevB,GACpB,MAAOw/B,MAAKC,UAAUz/B,GAASyI,QAAQ,gCAAiC,IAAIA,QAAQ,QAAS,SAa/FxC,IAAK,sBACL1E,MAAO,SAA6BkB,EAAGC,GACrC,GAAiB,IAAbD,EAAEI,OAAc,MAAOH,GAAEG,MAC7B,IAAiB,IAAbH,EAAEG,OAAc,MAAOJ,GAAEI,MAE7B,IAGIG,GAHA0nE,IAIJ,KAAK1nE,EAAI,EAAGA,GAAKN,EAAEG,OAAQG,IACzB0nE,EAAO1nE,IAAMA,EAIf,IAAI+J,EACJ,KAAKA,EAAI,EAAGA,GAAKtK,EAAEI,OAAQkK,IACzB29D,EAAO,GAAG39D,GAAKA,CAIjB,KAAK/J,EAAI,EAAGA,GAAKN,EAAEG,OAAQG,IACzB,IAAK+J,EAAI,EAAGA,GAAKtK,EAAEI,OAAQkK,IACrBrK,EAAE8qB,OAAOxqB,EAAI,IAAMP,EAAE+qB,OAAOzgB,EAAI,GAClC29D,EAAO1nE,GAAG+J,GAAK29D,EAAO1nE,EAAI,GAAG+J,EAAI,GAEjC29D,EAAO1nE,GAAG+J,GAAKtL,KAAKL,IAAIspE,EAAO1nE,EAAI,GAAG+J,EAAI,GAAK,EAC/CtL,KAAKL,IAAIspE,EAAO1nE,GAAG+J,EAAI,GAAK,EAC5B29D,EAAO1nE,EAAI,GAAG+J,GAAK,GAKzB,OAAO29D,GAAOhoE,EAAEG,QAAQJ,EAAEI,YAIvBgmE,IAGT9sE,GAAAA,WAAkB8sE,EAClB9sE,EAAQ0iD,WAAaA,GAIjB,SAASziD,EAAQD,EAASM,GAoB9B,QAAS2B,GAAMs+C,EAAMt8C,GACnB,GAAImgB,GAAMjgB,IAAS+jB,MAAM,GAAGC,QAAQ,GAAGC,QAAQ,GAAGC,aAAa,EAC/DjoB,MAAKwzC,MAAQxvB,EAAIkF,QAAQlC,IAAI,GAAI,QAAQ/e,UACzCjI,KAAK0zC,IAAM1vB,EAAIkF,QAAQlC,IAAI,EAAG,QAAQ/e,UAEtCjI,KAAKmgD,KAAOA,EACZngD,KAAKwuE,gBAAkB,EACvBxuE,KAAKyuE,YAAc,EACnBzuE,KAAK0uE,cAAe,EACpB1uE,KAAK2uE,YAAa,EAGlB3uE,KAAK2/C,gBACHnM,MAAO,KACPE,IAAK,KACL3vC,OAAQA,EACR2nB,UAAW,aACXkjD,UAAU,EACVC,UAAU,EACV5pE,IAAK,KACLC,IAAK,KACL4pE,QAAS,GACTC,QAAS,UAEX/uE,KAAK6D,QAAUlD,EAAKoG,UAAW/G,KAAK2/C,gBAEpC3/C,KAAKiH,OACHw7D,UAEFziE,KAAKgvE,eAAiB,KAGtBhvE,KAAKmgD,KAAKE,QAAQrgB,GAAG,WAAYhgC,KAAKivE,aAAa3uB,KAAKtgD,OACxDA,KAAKmgD,KAAKE,QAAQrgB,GAAG,UAAWhgC,KAAKkvE,QAAQ5uB,KAAKtgD,OAClDA,KAAKmgD,KAAKE,QAAQrgB,GAAG,SAAUhgC,KAAKmvE,WAAW7uB,KAAKtgD,OAGpDA,KAAKmgD,KAAKE,QAAQrgB,GAAG,aAAchgC,KAAKovE,cAAc9uB,KAAKtgD,OAG3DA,KAAKmgD,KAAKE,QAAQrgB,GAAG,QAAShgC,KAAKqvE,SAAS/uB,KAAKtgD,OACjDA,KAAKmgD,KAAKE,QAAQrgB,GAAG,QAAShgC,KAAKsvE,SAAShvB,KAAKtgD,OAEjDA,KAAK4/B,WAAW/7B,GAsClB,QAAS0rE,GAAkB7jD,GACzB,GAAiB,cAAbA,GAA0C,YAAbA,EAC/B,KAAM,IAAIpkB,WAAU,sBAAwBokB,EAAY,yCA2gB5D,QAAS8jD,GAAW/M,EAAOl4D,GACzB,OACEi0B,EAAGikC,EAAMjkC,EAAI79B,EAAKgI,gBAAgB4B,GAClCyX,EAAGygD,EAAMzgD,EAAIrhB,EAAKoI,eAAewB,IAjnBrC,GAAIrG,GAA4B,kBAAXC,SAAoD,gBAApBA,QAAOC,SAAwB,SAAUC,GAAO,aAAcA,IAAS,SAAUA,GAAO,MAAOA,IAAyB,kBAAXF,SAAyBE,EAAIC,cAAgBH,OAAS,eAAkBE,IAEtO1D,EAAOT,EAAoB,GAE3B6D,GADa7D,EAAoB,IACxBA,EAAoB,IAC7BsC,EAAYtC,EAAoB,IAChC0B,EAAW1B,EAAoB,GAwDnC2B,GAAMuR,UAAY,GAAI5Q,GAkBtBX,EAAMuR,UAAUwsB,WAAa,SAAU/7B,GACrC,GAAIA,EAAS,CAEX,GAAIuM,IAAU,YAAa,MAAO,MAAO,UAAW,UAAW,WAAY,WAAY,SAAU,WAAY,cAAe,UAC5HzP,GAAKqG,gBAAgBoJ,EAAQpQ,KAAK6D,QAASA,IAEvC,SAAWA,IAAW,OAASA,KAEjC7D,KAAK2+C,SAAS96C,EAAQ2vC,MAAO3vC,EAAQ6vC,OA4B3C7xC,EAAMuR,UAAUurC,SAAW,SAAUnL,EAAOE,EAAKmO,EAAW4tB,GACtDA,KAAW,IACbA,GAAS,EAEX,IAAIC,GAAsB/oE,QAAT6sC,EAAqB7yC,EAAKmH,QAAQ0rC,EAAO,QAAQvrC,UAAY,KAC1E0nE,EAAkBhpE,QAAP+sC,EAAmB/yC,EAAKmH,QAAQ4rC,EAAK,QAAQzrC,UAAY,IAGxE,IAFAjI,KAAK4vE,mBAED/tB,EAAW,CAEb,GAAIjhB,GAAK5gC,KACL6vE,EAAY7vE,KAAKwzC,MACjBs8B,EAAU9vE,KAAK0zC,IACflsB,EAAqF,YAApD,mBAAdq6B,GAA4B,YAAc39C,EAAQ29C,KAA4B,YAAcA,GAAYA,EAAUr6B,SAAW,IAChJuoD,EAAuF,YAApD,mBAAdluB,GAA4B,YAAc39C,EAAQ29C,KAA4B,kBAAoBA,GAAYA,EAAUmuB,eAAiB,gBAC9JA,EAAiBrvE,EAAKsR,gBAAgB89D,EAC1C,KAAKC,EACH,KAAM,IAAI5oE,OAAM,2BAA6Bi8B,KAAKC,UAAUysC,GAAc,kBAAyBxoE,OAAO6H,KAAKzO,EAAKsR,iBAAiB5I,KAAK,MAG5I,IAAI4mE,IAAW,GAAIvqE,OAAOuC,UACtBioE,GAAa,EAEbn3D,EAAO,QAASA,KAClB,IAAK6nB,EAAG35B,MAAMw7D,MAAM0N,SAAU,CAC5B,GAAInsD,IAAM,GAAIte,OAAOuC,UACjB+jB,EAAOhI,EAAMisD,EACbG,EAAOJ,EAAehkD,EAAOxE,GAC7B6oD,EAAOrkD,EAAOxE,EACd1Z,EAAIuiE,GAAuB,OAAfX,EAAsBA,EAAaG,GAAaH,EAAaG,GAAaO,EACtFzkE,EAAI0kE,GAAqB,OAAbV,EAAoBA,EAAWG,GAAWH,EAAWG,GAAWM,CAEhFpO,GAAUphC,EAAG0vC,YAAYxiE,EAAGnC,GAC5B/J,EAAS2uE,kBAAkB3vC,EAAG/8B,QAAQE,OAAQ68B,EAAGuf,KAAMvf,EAAG/8B,QAAQ08C,aAClE2vB,EAAaA,GAAclO,EACvBA,GACFphC,EAAGuf,KAAKE,QAAQ5H,KAAK,eAAiBjF,MAAO,GAAI9tC,MAAKk7B,EAAG4S,OAAQE,IAAK,GAAIhuC,MAAKk7B,EAAG8S,KAAM+7B,OAAQA,IAG9FY,EACEH,GACFtvC,EAAGuf,KAAKE,QAAQ5H,KAAK,gBAAkBjF,MAAO,GAAI9tC,MAAKk7B,EAAG4S,OAAQE,IAAK,GAAIhuC,MAAKk7B,EAAG8S,KAAM+7B,OAAQA,IAKnG7uC,EAAGouC,eAAiB3kE,WAAW0O,EAAM,KAK3C,OAAOA,KAEP,GAAIipD,GAAUhiE,KAAKswE,YAAYZ,EAAYC,EAE3C,IADA/tE,EAAS2uE,kBAAkBvwE,KAAK6D,QAAQE,OAAQ/D,KAAKmgD,KAAMngD,KAAK6D,QAAQ08C,aACpEyhB,EAAS,CACX,GAAIzhC,IAAWiT,MAAO,GAAI9tC,MAAK1F,KAAKwzC,OAAQE,IAAK,GAAIhuC,MAAK1F,KAAK0zC,KAAM+7B,OAAQA,EAC7EzvE,MAAKmgD,KAAKE,QAAQ5H,KAAK,cAAelY,GACtCvgC,KAAKmgD,KAAKE,QAAQ5H,KAAK,eAAgBlY,KAS7C1+B,EAAMuR,UAAUw8D,iBAAmB,WAC7B5vE,KAAKgvE,iBACP9qC,aAAalkC,KAAKgvE,gBAClBhvE,KAAKgvE,eAAiB,OAa1BntE,EAAMuR,UAAUk9D,YAAc,SAAU98B,EAAOE,GAC7C,GAIIzqB,GAJAunD,EAAoB,MAATh9B,EAAgB7yC,EAAKmH,QAAQ0rC,EAAO,QAAQvrC,UAAYjI,KAAKwzC,MACxEi9B,EAAgB,MAAP/8B,EAAc/yC,EAAKmH,QAAQ4rC,EAAK,QAAQzrC,UAAYjI,KAAK0zC,IAClExuC,EAA0B,MAApBlF,KAAK6D,QAAQqB,IAAcvE,EAAKmH,QAAQ9H,KAAK6D,QAAQqB,IAAK,QAAQ+C,UAAY,KACpFhD,EAA0B,MAApBjF,KAAK6D,QAAQoB,IAActE,EAAKmH,QAAQ9H,KAAK6D,QAAQoB,IAAK,QAAQgD,UAAY,IAIxF,IAAInC,MAAM0qE,IAA0B,OAAbA,EACrB,KAAM,IAAIppE,OAAM,kBAAoBosC,EAAQ,IAE9C,IAAI1tC,MAAM2qE,IAAsB,OAAXA,EACnB,KAAM,IAAIrpE,OAAM,gBAAkBssC,EAAM,IAyC1C,IArCa88B,EAATC,IACFA,EAASD,GAIC,OAARvrE,GACaA,EAAXurE,IACFvnD,EAAOhkB,EAAMurE,EACbA,GAAYvnD,EACZwnD,GAAUxnD,EAGC,MAAP/jB,GACEurE,EAASvrE,IACXurE,EAASvrE,IAOL,OAARA,GACEurE,EAASvrE,IACX+jB,EAAOwnD,EAASvrE,EAChBsrE,GAAYvnD,EACZwnD,GAAUxnD,EAGC,MAAPhkB,GACaA,EAAXurE,IACFA,EAAWvrE,IAOU,OAAzBjF,KAAK6D,QAAQirE,QAAkB,CACjC,GAAIA,GAAU3jD,WAAWnrB,KAAK6D,QAAQirE,QACxB,GAAVA,IACFA,EAAU,GAEYA,EAApB2B,EAASD,IACPxwE,KAAK0zC,IAAM1zC,KAAKwzC,QAAUs7B,GAAW0B,EAAWxwE,KAAKwzC,OAASi9B,EAASzwE,KAAK0zC,KAE9E88B,EAAWxwE,KAAKwzC,MAChBi9B,EAASzwE,KAAK0zC,MAGdzqB,EAAO6lD,GAAW2B,EAASD,GAC3BA,GAAYvnD,EAAO,EACnBwnD,GAAUxnD,EAAO,IAMvB,GAA6B,OAAzBjpB,KAAK6D,QAAQkrE,QAAkB,CACjC,GAAIA,GAAU5jD,WAAWnrB,KAAK6D,QAAQkrE,QACxB,GAAVA,IACFA,EAAU,GAGR0B,EAASD,EAAWzB,IAClB/uE,KAAK0zC,IAAM1zC,KAAKwzC,QAAUu7B,GAAWyB,EAAWxwE,KAAKwzC,OAASi9B,EAASzwE,KAAK0zC,KAE9E88B,EAAWxwE,KAAKwzC,MAChBi9B,EAASzwE,KAAK0zC,MAGdzqB,EAAOwnD,EAASD,EAAWzB,EAC3ByB,GAAYvnD,EAAO,EACnBwnD,GAAUxnD,EAAO,IAKvB,GAAI+4C,GAAUhiE,KAAKwzC,OAASg9B,GAAYxwE,KAAK0zC,KAAO+8B,CASpD,OANMD,IAAYxwE,KAAKwzC,OAASg9B,GAAYxwE,KAAK0zC,KAAO+8B,GAAUzwE,KAAKwzC,OAASi9B,GAAUzwE,KAAK0zC,KAAU1zC,KAAKwzC,OAASg9B,GAAYxwE,KAAKwzC,OAASi9B,GAAUzwE,KAAK0zC,KAAO88B,GAAYxwE,KAAK0zC,KAAO+8B,GAC7LzwE,KAAKmgD,KAAKE,QAAQ5H,KAAK,oBAGzBz4C,KAAKwzC,MAAQg9B,EACbxwE,KAAK0zC,IAAM+8B,EACJzO,GAOTngE,EAAMuR,UAAUs9D,SAAW,WACzB,OACEl9B,MAAOxzC,KAAKwzC,MACZE,IAAK1zC,KAAK0zC,MAUd7xC,EAAMuR,UAAUu9D,WAAa,SAAUvxC,EAAOwxC,GAC5C,MAAO/uE,GAAM8uE,WAAW3wE,KAAKwzC,MAAOxzC,KAAK0zC,IAAKtU,EAAOwxC,IAWvD/uE,EAAM8uE,WAAa,SAAUn9B,EAAOE,EAAKtU,EAAOwxC,GAI9C,MAHoBjqE,UAAhBiqE,IACFA,EAAc,GAEH,GAATxxC,GAAcsU,EAAMF,GAAS,GAE7BjrB,OAAQirB,EACRnuC,MAAO+5B,GAASsU,EAAMF,EAAQo9B,KAI9BroD,OAAQ,EACRljB,MAAO,IAUbxD,EAAMuR,UAAU67D,aAAe,SAAUhkE,GACvCjL,KAAKwuE,gBAAkB,EACvBxuE,KAAK6wE,cAAgB,EAGhB7wE,KAAK6D,QAAQ+qE,UAGb5uE,KAAK8wE,eAAe7lE,IAIpBjL,KAAKiH,MAAMw7D,MAAMsO,gBAEtB/wE,KAAKiH,MAAMw7D,MAAMjvB,MAAQxzC,KAAKwzC,MAC9BxzC,KAAKiH,MAAMw7D,MAAM/uB,IAAM1zC,KAAK0zC,IAC5B1zC,KAAKiH,MAAMw7D,MAAM0N,UAAW,EAExBnwE,KAAKmgD,KAAK3F,IAAI96C,OAChBM,KAAKmgD,KAAK3F,IAAI96C,KAAKuP,MAAM6oC,OAAS,UAStCj2C,EAAMuR,UAAU87D,QAAU,SAAUjkE,GAClC,GAAKjL,KAAKiH,MAAMw7D,MAAM0N,UAGjBnwE,KAAK6D,QAAQ+qE,UAKb5uE,KAAKiH,MAAMw7D,MAAMsO,cAAtB,CAEA,GAAIrlD,GAAY1rB,KAAK6D,QAAQ6nB,SAC7B6jD,GAAkB7jD,EAClB,IAAIqB,GAAqB,cAAbrB,EAA4BzgB,EAAMo0D,OAASp0D,EAAMq0D,MAC7DvyC,IAAS/sB,KAAKwuE,eACd,IAAI5wB,GAAW59C,KAAKiH,MAAMw7D,MAAM/uB,IAAM1zC,KAAKiH,MAAMw7D,MAAMjvB,MAGnDhsB,EAAW5lB,EAASovE,yBAAyBhxE,KAAKmgD,KAAKI,YAAavgD,KAAKwzC,MAAOxzC,KAAK0zC,IACzFkK,IAAYp2B,CAEZ,IAAI4X,GAAqB,cAAb1T,EAA4B1rB,KAAKmgD,KAAKC,SAASnJ,OAAO7X,MAAQp/B,KAAKmgD,KAAKC,SAASnJ,OAAO5X,OAChG4xC,GAAalkD,EAAQqS,EAAQwe,EAC7B4yB,EAAWxwE,KAAKiH,MAAMw7D,MAAMjvB,MAAQy9B,EACpCR,EAASzwE,KAAKiH,MAAMw7D,MAAM/uB,IAAMu9B,EAGhCC,EAAYtvE,EAASuvE,mBAAmBnxE,KAAKmgD,KAAKI,YAAaiwB,EAAUxwE,KAAK6wE,cAAgB9jD,GAAO,GACrGqkD,EAAUxvE,EAASuvE,mBAAmBnxE,KAAKmgD,KAAKI,YAAakwB,EAAQzwE,KAAK6wE,cAAgB9jD,GAAO,EACrG,IAAImkD,GAAaV,GAAYY,GAAWX,EAKtC,MAJAzwE,MAAKwuE,iBAAmBzhD,EACxB/sB,KAAKiH,MAAMw7D,MAAMjvB,MAAQ09B,EACzBlxE,KAAKiH,MAAMw7D,MAAM/uB,IAAM09B,MACvBpxE,MAAKkvE,QAAQjkE,EAIfjL,MAAK6wE,cAAgB9jD,EACrB/sB,KAAKswE,YAAYE,EAAUC,EAE3B,IAAIY,GAAY,GAAI3rE,MAAK1F,KAAKwzC,OAC1B89B,EAAU,GAAI5rE,MAAK1F,KAAK0zC,IAG5B1zC,MAAKmgD,KAAKE,QAAQ5H,KAAK,eACrBjF,MAAO69B,EACP39B,IAAK49B,EACL7B,QAAQ,MASZ5tE,EAAMuR,UAAU+7D,WAAa,SAAUlkE,GAChCjL,KAAKiH,MAAMw7D,MAAM0N,UAGjBnwE,KAAK6D,QAAQ+qE,UAKb5uE,KAAKiH,MAAMw7D,MAAMsO,gBAEtB/wE,KAAKiH,MAAMw7D,MAAM0N,UAAW,EACxBnwE,KAAKmgD,KAAK3F,IAAI96C,OAChBM,KAAKmgD,KAAK3F,IAAI96C,KAAKuP,MAAM6oC,OAAS,QAIpC93C,KAAKmgD,KAAKE,QAAQ5H,KAAK,gBACrBjF,MAAO,GAAI9tC,MAAK1F,KAAKwzC,OACrBE,IAAK,GAAIhuC,MAAK1F,KAAK0zC,KACnB+7B,QAAQ,MAUZ5tE,EAAMuR,UAAUg8D,cAAgB,SAAUnkE,GAExC,GAAMjL,KAAK6D,QAAQgrE,UAAY7uE,KAAK6D,QAAQ+qE,UAGvC5uE,KAAK8wE,eAAe7lE,MAGrBjL,KAAK6D,QAAQ0tE,SAAYtmE,EAAMjL,KAAK6D,QAAQ0tE,UAAhD,CAGA,GAAIxkD,GAAQ,CAcZ,IAbI9hB,EAAMquC,WAERvsB,EAAQ9hB,EAAMquC,WAAa,IAClBruC,EAAMsuC,SAIfxsB,GAAS9hB,EAAMsuC,OAAS,GAMtBxsB,EAAO,CAKT,GAAI1nB,EAEFA,GADU,EAAR0nB,EACM,EAAIA,EAAQ,EAEZ,GAAK,EAAIA,EAAQ,EAI3B,IAAIm+B,GAAUskB,GAAahxC,EAAGvzB,EAAMy9B,QAAS1mB,EAAG/W,EAAM49B,SAAW7oC,KAAKmgD,KAAK3F,IAAIvD,QAC3Eu6B,EAAcxxE,KAAKyxE,eAAevmB,EAEtClrD,MAAK0xE,KAAKrsE,EAAOmsE,EAAazkD,GAKhC9hB,EAAMD,mBAORnJ,EAAMuR,UAAUi8D,SAAW,SAAUpkE,GACnCjL,KAAKiH,MAAMw7D,MAAMjvB,MAAQxzC,KAAKwzC,MAC9BxzC,KAAKiH,MAAMw7D,MAAM/uB,IAAM1zC,KAAK0zC,IAC5B1zC,KAAKiH,MAAMw7D,MAAMsO,eAAgB,EACjC/wE,KAAKiH,MAAMw7D,MAAMxrB,OAAS,KAC1Bj3C,KAAKyuE,YAAc,EACnBzuE,KAAKwuE,gBAAkB,GAQzB3sE,EAAMuR,UAAUk8D,SAAW,SAAUrkE,GAEnC,GAAMjL,KAAK6D,QAAQgrE,UAAY7uE,KAAK6D,QAAQ+qE,SAA5C,CAEA5uE,KAAKiH,MAAMw7D,MAAMsO,eAAgB,EAE5B/wE,KAAKiH,MAAMw7D,MAAMxrB,SACpBj3C,KAAKiH,MAAMw7D,MAAMxrB,OAASu4B,EAAWvkE,EAAMgsC,OAAQj3C,KAAKmgD,KAAK3F,IAAIvD,QAGnE,IAAI5xC,GAAQ,GAAK4F,EAAM5F,MAAQrF,KAAKyuE,aAChCkD,EAAa3xE,KAAKyxE,eAAezxE,KAAKiH,MAAMw7D,MAAMxrB,QAElD26B,EAAiBhwE,EAASovE,yBAAyBhxE,KAAKmgD,KAAKI,YAAavgD,KAAKwzC,MAAOxzC,KAAK0zC,KAC3Fm+B,EAAuBjwE,EAASkwE,wBAAwB9xE,KAAK6D,QAAQE,OAAQ/D,KAAKmgD,KAAKI,YAAavgD,KAAM2xE,GAC1GI,EAAsBH,EAAiBC,EAGvCrB,EAAWmB,EAAaE,GAAwB7xE,KAAKiH,MAAMw7D,MAAMjvB,OAASm+B,EAAaE,IAAyBxsE,EAChHorE,EAASkB,EAAaI,GAAuB/xE,KAAKiH,MAAMw7D,MAAM/uB,KAAOi+B,EAAaI,IAAwB1sE,CAG9GrF,MAAK0uE,aAA4B,GAAb,EAAIrpE,EACxBrF,KAAK2uE,WAA0B,GAAbtpE,EAAQ,CAE1B,IAAI6rE,GAAYtvE,EAASuvE,mBAAmBnxE,KAAKmgD,KAAKI,YAAaiwB,EAAU,EAAInrE,GAAO,GACpF+rE,EAAUxvE,EAASuvE,mBAAmBnxE,KAAKmgD,KAAKI,YAAakwB,EAAQprE,EAAQ,GAAG,EAChF6rE,IAAaV,GAAYY,GAAWX,IACtCzwE,KAAKiH,MAAMw7D,MAAMjvB,MAAQ09B,EACzBlxE,KAAKiH,MAAMw7D,MAAM/uB,IAAM09B,EACvBpxE,KAAKyuE,YAAc,EAAIxjE,EAAM5F,MAC7BmrE,EAAWU,EACXT,EAASW,GAGXpxE,KAAK2+C,SAAS6xB,EAAUC,GAAQ,GAAO,GAEvCzwE,KAAK0uE,cAAe,EACpB1uE,KAAK2uE,YAAa,IAUpB9sE,EAAMuR,UAAU09D,eAAiB,SAAU7lE,GAGzC,GAAIy9B,GAAUz9B,EAAMgsC,OAAShsC,EAAMgsC,OAAOzY,EAAIvzB,EAAMy9B,QAChDlK,EAAIkK,EAAU/nC,EAAKgI,gBAAgB3I,KAAKmgD,KAAK3F,IAAIyJ,iBACjDj4B,EAAOhsB,KAAKmgD,KAAKx/C,KAAKmgD,OAAOtiB,EAEjC,OAAOxS,IAAQhsB,KAAKwzC,OAASxnB,GAAQhsB,KAAK0zC,KAS5C7xC,EAAMuR,UAAUq+D,eAAiB,SAAUvmB,GACzC,GAAIylB,GACAjlD,EAAY1rB,KAAK6D,QAAQ6nB,SAI7B,IAFA6jD,EAAkB7jD,GAED,cAAbA,EACF,MAAO1rB,MAAKmgD,KAAKx/C,KAAKmgD,OAAOoK,EAAQ1sB,GAAGv2B,SAExC,IAAIo3B,GAASr/B,KAAKmgD,KAAKC,SAASnJ,OAAO5X,MAEvC,OADAsxC,GAAa3wE,KAAK2wE,WAAWtxC,GACtB6rB,EAAQlpC,EAAI2uD,EAAWtrE,MAAQsrE,EAAWpoD,QA4BrD1mB,EAAMuR,UAAUs+D,KAAO,SAAUrsE,EAAO4xC,EAAQlqB,GAEhC,MAAVkqB,IACFA,GAAUj3C,KAAKwzC,MAAQxzC,KAAK0zC,KAAO,EAGrC,IAAIk+B,GAAiBhwE,EAASovE,yBAAyBhxE,KAAKmgD,KAAKI,YAAavgD,KAAKwzC,MAAOxzC,KAAK0zC,KAC3Fm+B,EAAuBjwE,EAASkwE,wBAAwB9xE,KAAK6D,QAAQE,OAAQ/D,KAAKmgD,KAAKI,YAAavgD,KAAMi3C,GAC1G86B,EAAsBH,EAAiBC,EAGvCrB,EAAWv5B,EAAS46B,GAAwB7xE,KAAKwzC,OAASyD,EAAS46B,IAAyBxsE,EAC5ForE,EAASx5B,EAAS86B,GAAuB/xE,KAAK0zC,KAAOuD,EAAS86B,IAAwB1sE,CAG1FrF,MAAK0uE,eAAe3hD,EAAQ,GAC5B/sB,KAAK2uE,cAAc5hD,EAAQ,EAC3B,IAAImkD,GAAYtvE,EAASuvE,mBAAmBnxE,KAAKmgD,KAAKI,YAAaiwB,EAAUzjD,GAAO,GAChFqkD,EAAUxvE,EAASuvE,mBAAmBnxE,KAAKmgD,KAAKI,YAAakwB,GAAS1jD,GAAO,EAC7EmkD,IAAaV,GAAYY,GAAWX,IACtCD,EAAWU,EACXT,EAASW,GAGXpxE,KAAK2+C,SAAS6xB,EAAUC,GAAQ,GAAO,GAEvCzwE,KAAK0uE,cAAe,EACpB1uE,KAAK2uE,YAAa,GASpB9sE,EAAMuR,UAAU4+D,KAAO,SAAUjlD,GAE/B,GAAI9D,GAAOjpB,KAAK0zC,IAAM1zC,KAAKwzC,MAGvBg9B,EAAWxwE,KAAKwzC,MAAQvqB,EAAO8D,EAC/B0jD,EAASzwE,KAAK0zC,IAAMzqB,EAAO8D,CAI/B/sB,MAAKwzC,MAAQg9B,EACbxwE,KAAK0zC,IAAM+8B,GAOb5uE,EAAMuR,UAAU6/B,OAAS,SAAUA,GACjC,GAAIgE,IAAUj3C,KAAKwzC,MAAQxzC,KAAK0zC,KAAO,EAEnCzqB,EAAOguB,EAAShE,EAGhBu9B,EAAWxwE,KAAKwzC,MAAQvqB,EACxBwnD,EAASzwE,KAAK0zC,IAAMzqB,CAExBjpB,MAAK2+C,SAAS6xB,EAAUC,IAG1B5wE,EAAOD,QAAUiC,GAIb,SAAShC,EAAQD,GASrB,QAAS4C,GAAU29C,EAAMt8C,GACvB7D,KAAK6D,QAAU,KACf7D,KAAKiH,MAAQ,KAQfzE,EAAU4Q,UAAUwsB,WAAa,SAAU/7B,GACrCA,GACFlD,KAAKoG,OAAO/G,KAAK6D,QAASA,IAQ9BrB,EAAU4Q,UAAUk6B,OAAS,WAE3B,OAAO,GAMT9qC,EAAU4Q,UAAU2sB,QAAU,aAU9Bv9B,EAAU4Q,UAAU6+D,WAAa,WAC/B,GAAIC,GAAUlyE,KAAKiH,MAAMkrE,iBAAmBnyE,KAAKiH,MAAMm4B,OAASp/B,KAAKiH,MAAMmrE,kBAAoBpyE,KAAKiH,MAAMo4B,MAK1G,OAHAr/B,MAAKiH,MAAMkrE,eAAiBnyE,KAAKiH,MAAMm4B,MACvCp/B,KAAKiH,MAAMmrE,gBAAkBpyE,KAAKiH,MAAMo4B,OAEjC6yC,GAGTryE,EAAOD,QAAU4C,GAIb,SAAS3C,EAAQD,GAWrBA,EAAQyyE,qBAAuB,SAAUtuE,EAAQo8C,EAAMI,GACrD,GAAIA,IAAgBr5C,MAAMC,QAAQo5C,GAChC,MAAO3gD,GAAQyyE,qBAAqBtuE,EAAQo8C,GAAOI,GAIrD,IADAJ,EAAKI,eACDA,GACgC,GAA9Br5C,MAAMC,QAAQo5C,GAAsB,CACtC,IAAK,GAAI15C,GAAI,EAAGA,EAAI05C,EAAY75C,OAAQG,IACtC,GAA8BF,SAA1B45C,EAAY15C,GAAGyrE,OAAsB,CACvC,GAAIC,KACJA,GAAS/+B,MAAQzvC,EAAOw8C,EAAY15C,GAAG2sC,OAAOrrC,SAASF,UACvDsqE,EAAS7+B,IAAM3vC,EAAOw8C,EAAY15C,GAAG6sC,KAAKvrC,SAASF,UACnDk4C,EAAKI,YAAY54C,KAAK4qE,GAG1BpyB,EAAKI,YAAYtgC,KAAK,SAAU3Z,EAAGC,GACjC,MAAOD,GAAEktC,MAAQjtC,EAAEitC,UAY3B5zC,EAAQ2wE,kBAAoB,SAAUxsE,EAAQo8C,EAAMI,GAClD,GAAIA,IAAgBr5C,MAAMC,QAAQo5C,GAChC,MAAO3gD,GAAQ2wE,kBAAkBxsE,EAAQo8C,GAAOI,GAGlD,IAAIA,GAAuD55C,SAAxCw5C,EAAKC,SAAS6D,gBAAgB7kB,MAAqB,CACpEx/B,EAAQyyE,qBAAqBtuE,EAAQo8C,EAAMI,EAQ3C,KAAK,GAND/M,GAAQzvC,EAAOo8C,EAAKe,MAAM1N,OAC1BE,EAAM3vC,EAAOo8C,EAAKe,MAAMxN,KAExB8+B,EAAaryB,EAAKe,MAAMxN,IAAMyM,EAAKe,MAAM1N,MACzCi/B,EAAYD,EAAaryB,EAAKC,SAAS6D,gBAAgB7kB,MAElDv4B,EAAI,EAAGA,EAAI05C,EAAY75C,OAAQG,IACtC,GAA8BF,SAA1B45C,EAAY15C,GAAGyrE,OAAsB,CACvC,GAAIjB,GAAYttE,EAAOw8C,EAAY15C,GAAG2sC,OAClC89B,EAAUvtE,EAAOw8C,EAAY15C,GAAG6sC,IAEpC,IAAoB,gBAAhB29B,EAAUx8D,GACZ,KAAM,IAAIzN,OAAM,qCAAuCm5C,EAAY15C,GAAG2sC,MAExE,IAAkB,gBAAd89B,EAAQz8D,GACV,KAAM,IAAIzN,OAAM,mCAAqCm5C,EAAY15C,GAAG6sC,IAGtE,IAAIlsB,GAAW8pD,EAAUD,CACzB,IAAI7pD,GAAY,EAAIirD,EAAW,CAE7B,GAAIlqD,GAAS,EACTmqD,EAAWh/B,EAAIxqB,OACnB,QAAQq3B,EAAY15C,GAAGyrE,QACrB,IAAK,QAECjB,EAAU3qD,OAAS4qD,EAAQ5qD,QAC7B6B,EAAS,GAEX8oD,EAAU7tD,UAAUgwB,EAAMhwB,aAC1B6tD,EAAUtzD,KAAKy1B,EAAMz1B,QACrBszD,EAAUnnD,SAAS,EAAG,QAEtBonD,EAAQ9tD,UAAUgwB,EAAMhwB,aACxB8tD,EAAQvzD,KAAKy1B,EAAMz1B,QACnBuzD,EAAQpnD,SAAS,EAAI3B,EAAQ,QAE7BmqD,EAAS1rD,IAAI,EAAG,QAChB,MACF,KAAK,SACH,GAAI2rD,GAAYrB,EAAQroD,KAAKooD,EAAW,QACpC3qD,EAAM2qD,EAAU3qD,KAGpB2qD,GAAUnyD,KAAKs0B,EAAMt0B,QACrBmyD,EAAUrzD,MAAMw1B,EAAMx1B,SACtBqzD,EAAUtzD,KAAKy1B,EAAMz1B,QACrBuzD,EAAUD,EAAUnoD,QAGpBmoD,EAAU3qD,IAAIA,GACd4qD,EAAQ5qD,IAAIA,GACZ4qD,EAAQtqD,IAAI2rD,EAAW,QAEvBtB,EAAUnnD,SAAS,EAAG,SACtBonD,EAAQpnD,SAAS,EAAG,SAEpBwoD,EAAS1rD,IAAI,EAAG,QAChB,MACF,KAAK,UACCqqD,EAAUrzD,SAAWszD,EAAQtzD,UAC/BuK,EAAS,GAEX8oD,EAAUrzD,MAAMw1B,EAAMx1B,SACtBqzD,EAAUtzD,KAAKy1B,EAAMz1B,QACrBszD,EAAUnnD,SAAS,EAAG,UAEtBonD,EAAQtzD,MAAMw1B,EAAMx1B,SACpBszD,EAAQvzD,KAAKy1B,EAAMz1B,QACnBuzD,EAAQpnD,SAAS,EAAG,UACpBonD,EAAQtqD,IAAIuB,EAAQ,UAEpBmqD,EAAS1rD,IAAI,EAAG,SAChB,MACF,KAAK,SACCqqD,EAAUtzD,QAAUuzD,EAAQvzD,SAC9BwK,EAAS,GAEX8oD,EAAUtzD,KAAKy1B,EAAMz1B,QACrBszD,EAAUnnD,SAAS,EAAG,SACtBonD,EAAQvzD,KAAKy1B,EAAMz1B,QACnBuzD,EAAQpnD,SAAS,EAAG,SACpBonD,EAAQtqD,IAAIuB,EAAQ,SAEpBmqD,EAAS1rD,IAAI,EAAG,QAChB,MACF,SAEE,WADAzP,SAAQwnC,IAAI,2EAA4EwB,EAAY15C,GAAGyrE,QAG3G,KAAmBI,EAAZrB,GAEL,OADAlxB,EAAKI,YAAY54C,MAAO6rC,MAAO69B,EAAUppE,UAAWyrC,IAAK49B,EAAQrpE,YACzDs4C,EAAY15C,GAAGyrE,QACrB,IAAK,QACHjB,EAAUrqD,IAAI,EAAG,QACjBsqD,EAAQtqD,IAAI,EAAG,OACf,MACF,KAAK,SACHqqD,EAAUrqD,IAAI,EAAG,SACjBsqD,EAAQtqD,IAAI,EAAG,QACf,MACF,KAAK,UACHqqD,EAAUrqD,IAAI,EAAG,UACjBsqD,EAAQtqD,IAAI,EAAG,SACf,MACF,KAAK,SACHqqD,EAAUrqD,IAAI,EAAG,KACjBsqD,EAAQtqD,IAAI,EAAG,IACf,MACF,SAEE,WADAzP,SAAQwnC,IAAI,2EAA4EwB,EAAY15C,GAAGyrE,QAI7GnyB,EAAKI,YAAY54C,MAAO6rC,MAAO69B,EAAUppE,UAAWyrC,IAAK49B,EAAQrpE,aAKvErI,EAAQgzE,iBAAiBzyB,EAEzB,IAAI0yB,GAAcjzE,EAAQkzE,SAAS3yB,EAAKe,MAAM1N,MAAO2M,EAAKI,aACtDwyB,EAAYnzE,EAAQkzE,SAAS3yB,EAAKe,MAAMxN,IAAKyM,EAAKI,aAClDyyB,EAAa7yB,EAAKe,MAAM1N,MACxBy/B,EAAW9yB,EAAKe,MAAMxN,GACA,IAAtBm/B,EAAYK,SACdF,EAAwC,GAA3B7yB,EAAKe,MAAMwtB,aAAuBmE,EAAYxB,UAAY,EAAIwB,EAAYvB,QAAU,GAE3E,GAApByB,EAAUG,SACZD,EAAoC,GAAzB9yB,EAAKe,MAAMytB,WAAqBoE,EAAU1B,UAAY,EAAI0B,EAAUzB,QAAU,GAEjE,GAAtBuB,EAAYK,QAAsC,GAApBH,EAAUG,QAC1C/yB,EAAKe,MAAMovB,YAAY0C,EAAYC,KAUzCrzE,EAAQgzE,iBAAmB,SAAUzyB,GAGnC,IAAK,GAFDI,GAAcJ,EAAKI,YACnB4yB,KACKtsE,EAAI,EAAGA,EAAI05C,EAAY75C,OAAQG,IACtC,IAAK,GAAI+J,GAAI,EAAGA,EAAI2vC,EAAY75C,OAAQkK,IAClC/J,GAAK+J,GAA8B,GAAzB2vC,EAAY3vC,GAAG2xB,QAA2C,GAAzBge,EAAY15C,GAAG07B,SAExDge,EAAY3vC,GAAG4iC,OAAS+M,EAAY15C,GAAG2sC,OAAS+M,EAAY3vC,GAAG8iC,KAAO6M,EAAY15C,GAAG6sC,IACvF6M,EAAY3vC,GAAG2xB,QAAS,EAGjBge,EAAY3vC,GAAG4iC,OAAS+M,EAAY15C,GAAG2sC,OAAS+M,EAAY3vC,GAAG4iC,OAAS+M,EAAY15C,GAAG6sC,KAC5F6M,EAAY15C,GAAG6sC,IAAM6M,EAAY3vC,GAAG8iC,IACpC6M,EAAY3vC,GAAG2xB,QAAS,GAGjBge,EAAY3vC,GAAG8iC,KAAO6M,EAAY15C,GAAG2sC,OAAS+M,EAAY3vC,GAAG8iC,KAAO6M,EAAY15C,GAAG6sC,MACxF6M,EAAY15C,GAAG2sC,MAAQ+M,EAAY3vC,GAAG4iC,MACtC+M,EAAY3vC,GAAG2xB,QAAS,GAMpC,KAAK,GAAI17B,GAAI,EAAGA,EAAI05C,EAAY75C,OAAQG,IAClC05C,EAAY15C,GAAG07B,UAAW,GAC5B4wC,EAAUxrE,KAAK44C,EAAY15C,GAI/Bs5C,GAAKI,YAAc4yB,EACnBhzB,EAAKI,YAAYtgC,KAAK,SAAU3Z,EAAGC,GACjC,MAAOD,GAAEktC,MAAQjtC,EAAEitC,SAIvB5zC,EAAQwzE,WAAa,SAAUj7C,GAC7B,IAAK,GAAItxB,GAAI,EAAGA,EAAIsxB,EAAMzxB,OAAQG,IAChC0Q,QAAQwnC,IAAIl4C,EAAG,GAAInB,MAAKyyB,EAAMtxB,GAAG2sC,OAAQ,GAAI9tC,MAAKyyB,EAAMtxB,GAAG6sC,KAAMvb,EAAMtxB,GAAG2sC,MAAOrb,EAAMtxB,GAAG6sC,IAAKvb,EAAMtxB,GAAG07B,SAU5G3iC,EAAQyzE,oBAAsB,SAAUtvE,EAAQuvE,EAAUC,GAGxD,IAAK,GAFDC,IAAe,EACfC,EAAeH,EAASI,QAAQzrE,UAC3BpB,EAAI,EAAGA,EAAIysE,EAAS/yB,YAAY75C,OAAQG,IAAK,CACpD,GAAIwqE,GAAYiC,EAAS/yB,YAAY15C,GAAG2sC,MACpC89B,EAAUgC,EAAS/yB,YAAY15C,GAAG6sC,GACtC,IAAI+/B,GAAgBpC,GAA4BC,EAAfmC,EAAwB,CACvDD,GAAe,CACf,QAIJ,GAAoB,GAAhBA,GAAwBC,EAAeH,EAAS/0B,KAAKt2C,WAAawrE,GAAgBF,EAAc,CAClG,GAAIxhE,GAAYhO,EAAOwvE,GACnB/qE,EAAWzE,EAAOutE,EAElBv/D,GAAUgM,QAAUvV,EAASuV,OAC/Bu1D,EAASK,cAAe,EACf5hE,EAAUiM,SAAWxV,EAASwV,QACvCs1D,EAASM,eAAgB,EAChB7hE,EAAUyR,aAAehb,EAASgb,cAC3C8vD,EAASO,aAAc,GAGzBP,EAASI,QAAUlrE,IAkCvB5I,EAAQ8gD,SAAW,SAAU/+C,EAAMqqB,EAAMoT,GACvC,GAAoC,GAAhCz9B,EAAKw+C,KAAKI,YAAY75C,OAAa,CACrC,GAAIiqE,GAAahvE,EAAKu/C,MAAMyvB,WAAWvxC,EACvC,QAAQpT,EAAK/jB,UAAY0oE,EAAWpoD,QAAUooD,EAAWtrE,MAEzD,GAAI6tE,GAAStzE,EAAQkzE,SAAS9mD,EAAMrqB,EAAKw+C,KAAKI,YACzB,IAAjB2yB,EAAOA,SACTlnD,EAAOknD,EAAO7B,UAGhB,IAAI7pD,GAAW5nB,EAAQoxE,yBAAyBrvE,EAAKw+C,KAAKI,YAAa5+C,EAAKu/C,MAAM1N,MAAO7xC,EAAKu/C,MAAMxN,IACpG1nB,GAAOpsB,EAAQk0E,qBAAqBnyE,EAAKkC,QAAQE,OAAQpC,EAAKw+C,KAAKI,YAAa5+C,EAAKu/C,MAAOl1B,EAE5F,IAAI2kD,GAAahvE,EAAKu/C,MAAMyvB,WAAWvxC,EAAO5X,EAC9C,QAAQwE,EAAK/jB,UAAY0oE,EAAWpoD,QAAUooD,EAAWtrE,OAY7DzF,EAAQkhD,OAAS,SAAUn/C,EAAM68B,EAAGY,GAClC,GAAoC,GAAhCz9B,EAAKw+C,KAAKI,YAAY75C,OAAa,CACrC,GAAIiqE,GAAahvE,EAAKu/C,MAAMyvB,WAAWvxC,EACvC,OAAO,IAAI15B,MAAK84B,EAAImyC,EAAWtrE,MAAQsrE,EAAWpoD,QAElD,GAAIqpD,GAAiBhyE,EAAQoxE,yBAAyBrvE,EAAKw+C,KAAKI,YAAa5+C,EAAKu/C,MAAM1N,MAAO7xC,EAAKu/C,MAAMxN,KACtGqgC,EAAgBpyE,EAAKu/C,MAAMxN,IAAM/xC,EAAKu/C,MAAM1N,MAAQo+B,EACpDoC,EAAkBD,EAAgBv1C,EAAIY,EACtC60C,EAA4Br0E,EAAQs0E,6BAA6BvyE,EAAKw+C,KAAKI,YAAa5+C,EAAKu/C,MAAO8yB,GAEpGG,EAAU,GAAIzuE,MAAKuuE,EAA4BD,EAAkBryE,EAAKu/C,MAAM1N,MAChF,OAAO2gC,IAWXv0E,EAAQoxE,yBAA2B,SAAUzwB,EAAa/M,EAAOE,GAE/D,IAAK,GADDlsB,GAAW,EACN3gB,EAAI,EAAGA,EAAI05C,EAAY75C,OAAQG,IAAK,CAC3C,GAAIwqE,GAAY9wB,EAAY15C,GAAG2sC,MAC3B89B,EAAU/wB,EAAY15C,GAAG6sC,GAEzB29B,IAAa79B,GAAmBE,EAAV49B,IACxB9pD,GAAY8pD,EAAUD,GAG1B,MAAO7pD,IAWT5nB,EAAQk0E,qBAAuB,SAAU/vE,EAAQw8C,EAAaW,EAAOl1B,GAGnE,MAFAA,GAAOjoB,EAAOioB,GAAM7jB,SAASF,UAC7B+jB,GAAQpsB,EAAQkyE,wBAAwB/tE,EAAQw8C,EAAaW,EAAOl1B,IAItEpsB,EAAQkyE,wBAA0B,SAAU/tE,EAAQw8C,EAAaW,EAAOl1B,GACtE,GAAIooD,GAAa,CACjBpoD,GAAOjoB,EAAOioB,GAAM7jB,SAASF,SAE7B,KAAK,GAAIpB,GAAI,EAAGA,EAAI05C,EAAY75C,OAAQG,IAAK,CAC3C,GAAIwqE,GAAY9wB,EAAY15C,GAAG2sC,MAC3B89B,EAAU/wB,EAAY15C,GAAG6sC,GAEzB29B,IAAanwB,EAAM1N,OAAS89B,EAAUpwB,EAAMxN,KAC1C1nB,GAAQslD,IACV8C,GAAc9C,EAAUD,GAI9B,MAAO+C,IAWTx0E,EAAQs0E,6BAA+B,SAAU3zB,EAAaW,EAAOmzB,GAKnE,IAAK,GAJDzC,GAAiB,EACjBpqD,EAAW,EACX8sD,EAAgBpzB,EAAM1N,MAEjB3sC,EAAI,EAAGA,EAAI05C,EAAY75C,OAAQG,IAAK,CAC3C,GAAIwqE,GAAY9wB,EAAY15C,GAAG2sC,MAC3B89B,EAAU/wB,EAAY15C,GAAG6sC,GAE7B,IAAI29B,GAAanwB,EAAM1N,OAAS89B,EAAUpwB,EAAMxN,IAAK,CAGnD,GAFAlsB,GAAY6pD,EAAYiD,EACxBA,EAAgBhD,EACZ9pD,GAAY6sD,EACd,KAEAzC,IAAkBN,EAAUD,GAKlC,MAAOO,IAWThyE,EAAQuxE,mBAAqB,SAAU5wB,EAAav0B,EAAMN,EAAW6oD,GACnE,GAAIzB,GAAWlzE,EAAQkzE,SAAS9mD,EAAMu0B,EACtC,OAAuB,IAAnBuyB,EAASI,OACK,EAAZxnD,EACuB,GAArB6oD,EACKzB,EAASzB,WAAayB,EAASxB,QAAUtlD,GAAQ,EAEjD8mD,EAASzB,UAAY,EAGL,GAArBkD,EACKzB,EAASxB,SAAWtlD,EAAO8mD,EAASzB,WAAa,EAEjDyB,EAASxB,QAAU,EAIvBtlD,GAWXpsB,EAAQkzE,SAAW,SAAU9mD,EAAMu0B,GACjC,IAAK,GAAI15C,GAAI,EAAGA,EAAI05C,EAAY75C,OAAQG,IAAK,CAC3C,GAAIwqE,GAAY9wB,EAAY15C,GAAG2sC,MAC3B89B,EAAU/wB,EAAY15C,GAAG6sC,GAE7B,IAAI1nB,GAAQqlD,GAAoBC,EAAPtlD,EAEvB,OAASknD,QAAQ,EAAM7B,UAAWA,EAAWC,QAASA,GAI1D,OAAS4B,QAAQ,EAAO7B,UAAWA,EAAWC,QAASA,KAKrD,SAASzxE,EAAQD,EAASM,GAuB9B,QAASyB,MAnBT,GAAIuC,GAA4B,kBAAXC,SAAoD,gBAApBA,QAAOC,SAAwB,SAAUC,GAAO,aAAcA,IAAS,SAAUA,GAAO,MAAOA,IAAyB,kBAAXF,SAAyBE,EAAIC,cAAgBH,OAAS,eAAkBE,IAEtOykC,EAAU5oC,EAAoB,IAC9B8D,EAAS9D,EAAoB,IAC7BkrD,EAAalrD,EAAoB,IACjCS,EAAOT,EAAoB,GAK3BgD,GAJUhD,EAAoB,GACnBA,EAAoB,IACvBA,EAAoB,IAClBA,EAAoB,IACnBA,EAAoB,KAC/Bs0E,EAAYt0E,EAAoB,IAChC0B,EAAW1B,EAAoB,IAC/BwC,EAAaxC,EAAoB,GASrC4oC,GAAQnnC,EAAKyR,WASbzR,EAAKyR,UAAU8sC,QAAU,SAAUlb,GA0HjC,QAASyvC,GAAaxpE,GAChB21B,EAAG8zC,YACL9zC,EAAG6X,KAAK,aAAcxtC,GA3H1BjL,KAAKw6C,OAELx6C,KAAKw6C,IAAIxV,UAAYA,EAErBhlC,KAAKw6C,IAAI96C,KAAOs+B,SAASM,cAAc,OACvCt+B,KAAKw6C,IAAIpsC,WAAa4vB,SAASM,cAAc;AAC7Ct+B,KAAKw6C,IAAIm6B,mBAAqB32C,SAASM,cAAc,OACrDt+B,KAAKw6C,IAAIo6B,qBAAuB52C,SAASM,cAAc,OACvDt+B,KAAKw6C,IAAIyJ,gBAAkBjmB,SAASM,cAAc,OAClDt+B,KAAKw6C,IAAIq6B,cAAgB72C,SAASM,cAAc,OAChDt+B,KAAKw6C,IAAIs6B,eAAiB92C,SAASM,cAAc,OACjDt+B,KAAKw6C,IAAIvD,OAASjZ,SAASM,cAAc,OACzCt+B,KAAKw6C,IAAI1xC,KAAOk1B,SAASM,cAAc,OACvCt+B,KAAKw6C,IAAI/H,MAAQzU,SAASM,cAAc,OACxCt+B,KAAKw6C,IAAIxxC,IAAMg1B,SAASM,cAAc,OACtCt+B,KAAKw6C,IAAItL,OAASlR,SAASM,cAAc,OACzCt+B,KAAKw6C,IAAIu6B,UAAY/2C,SAASM,cAAc,OAC5Ct+B,KAAKw6C,IAAIw6B,aAAeh3C,SAASM,cAAc,OAC/Ct+B,KAAKw6C,IAAIy6B,cAAgBj3C,SAASM,cAAc,OAChDt+B,KAAKw6C,IAAI06B,iBAAmBl3C,SAASM,cAAc,OACnDt+B,KAAKw6C,IAAI26B,eAAiBn3C,SAASM,cAAc,OACjDt+B,KAAKw6C,IAAI46B,kBAAoBp3C,SAASM,cAAc,OAEpDt+B,KAAKw6C,IAAI96C,KAAKwJ,UAAY,eAC1BlJ,KAAKw6C,IAAIpsC,WAAWlF,UAAY,2BAChClJ,KAAKw6C,IAAIm6B,mBAAmBzrE,UAAY,wCACxClJ,KAAKw6C,IAAIo6B,qBAAqB1rE,UAAY,0CAC1ClJ,KAAKw6C,IAAIyJ,gBAAgB/6C,UAAY,uBACrClJ,KAAKw6C,IAAIq6B,cAAc3rE,UAAY,qBACnClJ,KAAKw6C,IAAIs6B,eAAe5rE,UAAY,sBACpClJ,KAAKw6C,IAAIxxC,IAAIE,UAAY,oBACzBlJ,KAAKw6C,IAAItL,OAAOhmC,UAAY,uBAC5BlJ,KAAKw6C,IAAI1xC,KAAKI,UAAY,cAC1BlJ,KAAKw6C,IAAIvD,OAAO/tC,UAAY,cAC5BlJ,KAAKw6C,IAAI/H,MAAMvpC,UAAY,cAC3BlJ,KAAKw6C,IAAIu6B,UAAU7rE,UAAY,qBAC/BlJ,KAAKw6C,IAAIw6B,aAAa9rE,UAAY,wBAClClJ,KAAKw6C,IAAIy6B,cAAc/rE,UAAY,qBACnClJ,KAAKw6C,IAAI06B,iBAAiBhsE,UAAY,wBACtClJ,KAAKw6C,IAAI26B,eAAejsE,UAAY,qBACpClJ,KAAKw6C,IAAI46B,kBAAkBlsE,UAAY,wBAEvClJ,KAAKw6C,IAAI96C,KAAKw+B,YAAYl+B,KAAKw6C,IAAIpsC,YACnCpO,KAAKw6C,IAAI96C,KAAKw+B,YAAYl+B,KAAKw6C,IAAIm6B,oBACnC30E,KAAKw6C,IAAI96C,KAAKw+B,YAAYl+B,KAAKw6C,IAAIo6B,sBACnC50E,KAAKw6C,IAAI96C,KAAKw+B,YAAYl+B,KAAKw6C,IAAIyJ,iBACnCjkD,KAAKw6C,IAAI96C,KAAKw+B,YAAYl+B,KAAKw6C,IAAIq6B,eACnC70E,KAAKw6C,IAAI96C,KAAKw+B,YAAYl+B,KAAKw6C,IAAIs6B,gBACnC90E,KAAKw6C,IAAI96C,KAAKw+B,YAAYl+B,KAAKw6C,IAAIxxC,KACnChJ,KAAKw6C,IAAI96C,KAAKw+B,YAAYl+B,KAAKw6C,IAAItL,QAEnClvC,KAAKw6C,IAAIyJ,gBAAgB/lB,YAAYl+B,KAAKw6C,IAAIvD,QAC9Cj3C,KAAKw6C,IAAIq6B,cAAc32C,YAAYl+B,KAAKw6C,IAAI1xC,MAC5C9I,KAAKw6C,IAAIs6B,eAAe52C,YAAYl+B,KAAKw6C,IAAI/H,OAE7CzyC,KAAKw6C,IAAIyJ,gBAAgB/lB,YAAYl+B,KAAKw6C,IAAIu6B,WAC9C/0E,KAAKw6C,IAAIyJ,gBAAgB/lB,YAAYl+B,KAAKw6C,IAAIw6B,cAC9Ch1E,KAAKw6C,IAAIq6B,cAAc32C,YAAYl+B,KAAKw6C,IAAIy6B,eAC5Cj1E,KAAKw6C,IAAIq6B,cAAc32C,YAAYl+B,KAAKw6C,IAAI06B,kBAC5Cl1E,KAAKw6C,IAAIs6B,eAAe52C,YAAYl+B,KAAKw6C,IAAI26B,gBAC7Cn1E,KAAKw6C,IAAIs6B,eAAe52C,YAAYl+B,KAAKw6C,IAAI46B,mBAE7Cp1E,KAAKggC,GAAG,cAAe,WACjBhgC,KAAKq1E,mBAAoB,GAC3Br1E,KAAKiiD,WAEP3B,KAAKtgD,OACPA,KAAKggC,GAAG,QAAShgC,KAAKqvE,SAAS/uB,KAAKtgD,OACpCA,KAAKggC,GAAG,MAAOhgC,KAAKkvE,QAAQ5uB,KAAKtgD,MAEjC,IAAI4gC,GAAK5gC,IACTA,MAAKggC,GAAG,UAAW,SAAU26B,GACvBA,GAAkC,GAApBA,EAAW96B,MAEtBe,EAAG00C,eACN10C,EAAG00C,aAAejrE,WAAW,WAC3Bu2B,EAAG00C,aAAe,KAClB10C,EAAGqhB,WACF,IAILrhB,EAAGqhB,YAMPjiD,KAAK8rD,OAAS,GAAI9nD,GAAOhE,KAAKw6C,IAAI96C,KAClC,IAAI+sE,GAAkBzsE,KAAK8rD,OAAOl0B,IAAI,SAASlf,KAAMi/C,QAAQ,GAC7DvM,GAAWohB,gCAAgCC,GAC3CzsE,KAAK8rD,OAAOl0B,IAAI,OAAOlf,KAAMgc,UAAW,EAAGhJ,UAAW1nB,EAAOuiE,uBAC7DvmE,KAAK27C,YAEL,IAAImd,IAAU,MAAO,YAAa,QAAS,QAAS,MAAO,WAAY,UAAW,SA6DlF,IAtDAA,EAAOrvD,QAAQ,SAAU1B,GACvB,GAAI0C,GAAW,SAAkBQ,GAC3B21B,EAAG8zC,YACL9zC,EAAG6X,KAAK1wC,EAAMkD,GAGlB21B,GAAGkrB,OAAO9rB,GAAGj4B,EAAM0C,GACnBm2B,EAAG+a,UAAU5zC,GAAQ0C,IAIvB2gD,EAAWwM,QAAQ53D,KAAK8rD,OAAQ,SAAU7gD,GACxC21B,EAAG6X,KAAK,QAASxtC,IACjBq1C,KAAKtgD,OAGPorD,EAAWihB,UAAUrsE,KAAK8rD,OAAQ,SAAU7gD,GAC1C21B,EAAG6X,KAAK,UAAWxtC,IACnBq1C,KAAKtgD,OAOPA,KAAKw6C,IAAI96C,KAAK4K,iBAAiB,aAAcmqE,GAC7Cz0E,KAAKw6C,IAAI96C,KAAK4K,iBAAiB,iBAAkBmqE,GAGjDz0E,KAAKiH,OACHvH,QACA0O,cACA61C,mBACA4wB,iBACAC,kBACA79B,UACAnuC,QACA2pC,SACAzpC,OACAkmC,UACA7gC,UACAknE,UAAW,EACXC,aAAc,GAGhBx1E,KAAKy1E,eAGLz1E,KAAKyiE,SAELziE,KAAK01E,YAAc,EACnB11E,KAAKq1E,iBAAkB,GAGlBrwC,EAAW,KAAM,IAAI59B,OAAM,wBAChC49B,GAAU9G,YAAYl+B,KAAKw6C,IAAI96C,OA4BjCiC,EAAKyR,UAAUwsB,WAAa,SAAU/7B,GACpC,GAAIA,EAAS,CAEX,GAAIuM,IAAU,QAAS,SAAU,YAAa,YAAa,aAAc,QAAS,MAAO,aAAc,iBAAkB,cAAe,SAAU,UAAW,SAAU,iBAoBvK,IAnBAzP,EAAKqG,gBAAgBoJ,EAAQpQ,KAAK6D,QAASA,GAE3C7D,KAAK6D,QAAQi8C,aAAgBnuC,KAAMhL,OAAWo5C,KAAMp5C,QAChD,eAAiB9C,KACgB,gBAAxBA,GAAQi8C,YACjB9/C,KAAK6D,QAAQi8C,aACXnuC,KAAM9N,EAAQi8C,YACdC,KAAMl8C,EAAQi8C,aAE0B,WAAjC57C,EAAQL,EAAQi8C,eACrB,QAAUj8C,GAAQi8C,cACpB9/C,KAAK6D,QAAQi8C,YAAYnuC,KAAO9N,EAAQi8C,YAAYnuC,MAElD,QAAU9N,GAAQi8C,cACpB9/C,KAAK6D,QAAQi8C,YAAYC,KAAOl8C,EAAQi8C,YAAYC,QAKpB,SAAlC//C,KAAK6D,QAAQi8C,YAAYC,MAC3B,IAAK//C,KAAKmhD,UAAW,CACnB,GAAIA,GAAYnhD,KAAKmhD,UAAY,GAAIj+C,GAASlD,KAAKmgD,KACnDgB,GAAUvhB,WAAa,SAAU/7B,GAC/B,GAAI07B,GAAW17B,EAAUlD,EAAKoG,UAAWlD,KACzC07B,GAASugB,YAAc,MACvB58C,EAASkQ,UAAUwsB,WAAWr/B,KAAK4gD,EAAW5hB,IAEhDv/B,KAAKgC,WAAW2F,KAAKw5C,QAGvB,IAAInhD,KAAKmhD,UAAW,CAClB,GAAI53C,GAAQvJ,KAAKgC,WAAW0F,QAAQ1H,KAAKmhD,UAC3B,MAAV53C,GACFvJ,KAAKgC,WAAWwH,OAAOD,EAAO,GAEhCvJ,KAAKmhD,UAAUphB,UACf//B,KAAKmhD,UAAY,KA4BrB,GAvBiC,kBAAtBt9C,GAAQ8xE,aACjB9xE,EAAQ8xE,YACNC,SAAU/xE,EAAQ8xE,aAIlB,eAAiB31E,MAAK6D,SACxBjC,EAASywE,qBAAqBryE,KAAK6D,QAAQE,OAAQ/D,KAAKmgD,KAAMngD,KAAK6D,QAAQ08C,aAGzE,cAAgB18C,KACdA,EAAQgyE,WACL71E,KAAK81E,YACR91E,KAAK81E,UAAY,GAAItB,GAAUx0E,KAAKw6C,IAAI96C,OAGtCM,KAAK81E,YACP91E,KAAK81E,UAAU/1C,gBACR//B,MAAK81E,YAKd,kBAAoBjyE,GACtB,KAAM,IAAIuD,OAAM,0GAIlBpH,MAAK+1E,kBASP,GALA/1E,KAAKgC,WAAWyH,QAAQ,SAAUusE,GAChC,MAAOA,GAAUp2C,WAAW/7B,KAI1B,aAAeA,GAAS,CACrB7D,KAAKi2E,eACRj2E,KAAKi2E,aAAej2E,KAAKwiD,uBAG3BxiD,KAAKi2E,aAAar2C,WAAW/7B,EAAQqyE,UAGrC,IAAIC,GAAiBx1E,EAAK6G,cAAexH,KAAK6D,QAC9C7D,MAAKgC,WAAWyH,QAAQ,SAAUusE,GAChCr1E,EAAK6G,WAAW2uE,EAAgBH,EAAUnyE,WAE5C7D,KAAKi2E,aAAaG,kBAAmBrjE,OAAQojE,IAI1Cn2E,KAAKq2E,YAKRr2E,KAAKiiD,WAJLjiD,KAAKq2E,YAAcr2E,KAAKiiD,QAAQ3B,KAAKtgD,MACrCA,KAAKiiD,QAAUthD,EAAKoJ,SAAS/J,KAAKq2E,YAAar2E,KAAK6D,QAAQg8C,kBAWhEl+C,EAAKyR,UAAUshE,SAAW,WACxB,OAAQ10E,KAAK81E,WAAa91E,KAAK81E,UAAUQ,QAM3C30E,EAAKyR,UAAU2sB,QAAU,WAEvB//B,KAAKgiD,SAAS,MACdhiD,KAAK+hD,UAAU,MAGf/hD,KAAKmgC,MAGLngC,KAAKu2E,kBAGDv2E,KAAKw6C,IAAI96C,KAAK8L,YAChBxL,KAAKw6C,IAAI96C,KAAK8L,WAAWzG,YAAY/E,KAAKw6C,IAAI96C,MAEhDM,KAAKw6C,IAAM,KAGPx6C,KAAK81E,YACP91E,KAAK81E,UAAU/1C,gBACR//B,MAAK81E,UAId,KAAK,GAAI7qE,KAASjL,MAAK27C,UACjB37C,KAAK27C,UAAUv1C,eAAe6E,UACzBjL,MAAK27C,UAAU1wC,EAG1BjL,MAAK27C,UAAY,KACjB37C,KAAK8rD,OAAS,KAGd9rD,KAAKgC,WAAWyH,QAAQ,SAAUusE,GAChC,MAAOA,GAAUj2C,YAGnB//B,KAAKmgD,KAAO,MAQdx+C,EAAKyR,UAAUojE,cAAgB,SAAUxqD,EAAM3rB,GAC7C,GAAIo1E,GAAcz1E,KAAKy1E,YAAYr1C,OAAO,SAAU41C,GAClD,MAAO31E,KAAO21E,EAAUnyE,QAAQxD,IAGlC,IAA2B,IAAvBo1E,EAAY/uE,OACd,KAAM,IAAIU,OAAM,oCAAsCi8B,KAAKC,UAAUjjC,GAGnEo1E,GAAY/uE,OAAS,GACvB+uE,EAAY,GAAGe,cAAcxqD,IASjCrqB,EAAKyR,UAAUqjE,cAAgB,SAAUp2E,GACvC,GAAIo1E,GAAcz1E,KAAKy1E,YAAYr1C,OAAO,SAAU41C,GAClD,MAAOA,GAAUnyE,QAAQxD,KAAOA,GAGlC,IAA2B,IAAvBo1E,EAAY/uE,OACd,KAAM,IAAIU,OAAM,oCAAsCi8B,KAAKC,UAAUjjC,GAEvE,OAAOo1E,GAAY,GAAGgB,iBAQxB90E,EAAKyR,UAAUsjE,mBAAqB,SAAUC,EAAOt2E,GACnD,GAAIo1E,GAAcz1E,KAAKy1E,YAAYr1C,OAAO,SAAU41C,GAClD,MAAOA,GAAUnyE,QAAQxD,KAAOA,GAGlC,IAA2B,IAAvBo1E,EAAY/uE,OACd,KAAM,IAAIU,OAAM,oCAAsCi8B,KAAKC,UAAUjjC,GAEvE,OAAIo1E,GAAY/uE,OAAS,EAChB+uE,EAAY,GAAGmB,eAAeD,GADvC,QAWFh1E,EAAKyR,UAAUouC,mBAAqB,SAAUv2C,GAC5C,OAASA,MAAOA,IAalBtJ,EAAKyR,UAAUyjE,cAAgB,SAAU7qD,EAAM3rB,GAC7C,GAAIy2E,GAAqBnwE,SAATqlB,EAAqBrrB,EAAKmH,QAAQkkB,EAAM,QAAQ/jB,UAAY,GAAIvC,MAE5Eu9B,EAASjjC,KAAKy1E,YAAYsB,KAAK,SAAU1yB,GAC3C,MAAOA,GAAWxgD,QAAQxD,KAAOA,GAEnC,IAAI4iC,EACF,KAAM,IAAI77B,OAAM,yBAA2Bi8B,KAAKC,UAAUjjC,GAAM,kBAGlE,IAAIgkD,GAAa,GAAI3hD,GAAW1C,KAAKmgD,KAAMx/C,EAAKoG,UAAW/G,KAAK6D,SAC9DmoB,KAAM8qD,EACNz2E,GAAIA,IAON,OAJAL,MAAKy1E,YAAY9tE,KAAK08C,GACtBrkD,KAAKgC,WAAW2F,KAAK08C,GACrBrkD,KAAKiiD,UAEE5hD,GAQTsB,EAAKyR,UAAU4jE,iBAAmB,SAAU32E,GAC1C,GAAIo1E,GAAcz1E,KAAKy1E,YAAYr1C,OAAO,SAAU6c,GAClD,MAAOA,GAAIp5C,QAAQxD,KAAOA,GAG5B,IAA2B,IAAvBo1E,EAAY/uE,OACd,KAAM,IAAIU,OAAM,oCAAsCi8B,KAAKC,UAAUjjC,GAGvEo1E,GAAYhsE,QAAQ,SAAU46C,GAC5BrkD,KAAKy1E,YAAYjsE,OAAOxJ,KAAKy1E,YAAY/tE,QAAQ28C,GAAa,GAC9DrkD,KAAKgC,WAAWwH,OAAOxJ,KAAKgC,WAAW0F,QAAQ28C,GAAa,GAC5DA,EAAWtkB,WACXugB,KAAKtgD,QAOT2B,EAAKyR,UAAU6jE,gBAAkB,WAC/B,MAAOj3E,MAAKqhD,SAAWrhD,KAAKqhD,QAAQ41B,uBAatCt1E,EAAKyR,UAAU0uC,IAAM,SAAUj+C,GAC7B,GAAIq9C,GAAQlhD,KAAKojD,cAGjB,IAAkB,OAAdlC,EAAMj8C,KAA8B,OAAdi8C,EAAMh8C,IAAhC,CAKA,GAAI04C,GAAWsD,EAAMh8C,IAAMg8C,EAAMj8C,IAC7BA,EAAM,GAAIS,MAAKw7C,EAAMj8C,IAAIgD,UAAuB,IAAX21C,GACrC14C,EAAM,GAAIQ,MAAKw7C,EAAMh8C,IAAI+C,UAAuB,IAAX21C,GAErCiE,EAAYh+C,GAAiC8C,SAAtB9C,EAAQg+C,UAA0Bh+C,EAAQg+C,WAAY,CACjF7hD,MAAKkhD,MAAMvC,SAAS15C,EAAKC,EAAK28C,KAQhClgD,EAAKyR,UAAUgwC,aAAe,WAE5B,KAAM,IAAIh8C,OAAM,+CAwBlBzF,EAAKyR,UAAUwuC,UAAY,SAAUpO,EAAOE,EAAK7vC,GAC/C,GAAIg+C,EACJ,IAAwB,GAApBp7C,UAAUC,OAAa,CACzB,GAAIw6C,GAAQz6C,UAAU,EACtBo7C,GAAgCl7C,SAApBu6C,EAAMW,UAA0BX,EAAMW,WAAY,EAC9D7hD,KAAKkhD,MAAMvC,SAASuC,EAAM1N,MAAO0N,EAAMxN,IAAKmO,OAE5CA,GAAYh+C,GAAiC8C,SAAtB9C,EAAQg+C,UAA0Bh+C,EAAQg+C,WAAY,EAC7E7hD,KAAKkhD,MAAMvC,SAASnL,EAAOE,EAAKmO,IAepClgD,EAAKyR,UAAU6/B,OAAS,SAAUjnB,EAAMnoB,GACtC,GAAI+5C,GAAW59C,KAAKkhD,MAAMxN,IAAM1zC,KAAKkhD,MAAM1N,MACvC1jC,EAAInP,EAAKmH,QAAQkkB,EAAM,QAAQ/jB,UAE/BurC,EAAQ1jC,EAAI8tC,EAAW,EACvBlK,EAAM5jC,EAAI8tC,EAAW,EACrBiE,EAAYh+C,GAAiC8C,SAAtB9C,EAAQg+C,UAA0Bh+C,EAAQg+C,WAAY,CAEjF7hD,MAAKkhD,MAAMvC,SAASnL,EAAOE,EAAKmO,IAOlClgD,EAAKyR,UAAU8jE,UAAY,WACzB,GAAIh2B,GAAQlhD,KAAKkhD,MAAMwvB,UACvB,QACEl9B,MAAO,GAAI9tC,MAAKw7C,EAAM1N,OACtBE,IAAK,GAAIhuC,MAAKw7C,EAAMxN,OASxB/xC,EAAKyR,UAAUk6B,OAAS,WACtBttC,KAAKiiD,WAQPtgD,EAAKyR,UAAU6uC,QAAU,WACvBjiD,KAAK01E,aACL,IAAIxD,IAAU,EACVruE,EAAU7D,KAAK6D,QACfoD,EAAQjH,KAAKiH,MACbuzC,EAAMx6C,KAAKw6C,GAEf,IAAKA,GAAQA,EAAIxV,WAA0C,GAA7BwV,EAAIxV,UAAUsG,YAA5C,CAEA1pC,EAAS2uE,kBAAkBvwE,KAAK6D,QAAQE,OAAQ/D,KAAKmgD,KAAMngD,KAAK6D,QAAQ08C,aAG7C,OAAvB18C,EAAQi8C,aACVn/C,EAAKsI,aAAauxC,EAAI96C,KAAM,WAC5BiB,EAAK2I,gBAAgBkxC,EAAI96C,KAAM,gBAE/BiB,EAAK2I,gBAAgBkxC,EAAI96C,KAAM,WAC/BiB,EAAKsI,aAAauxC,EAAI96C,KAAM,eAI9B86C,EAAI96C,KAAKuP,MAAM+wC,UAAYr/C,EAAKiL,OAAOK,OAAOpI,EAAQm8C,UAAW,IACjExF,EAAI96C,KAAKuP,MAAMgxC,UAAYt/C,EAAKiL,OAAOK,OAAOpI,EAAQo8C,UAAW,IACjEzF,EAAI96C,KAAKuP,MAAMmwB,MAAQz+B,EAAKiL,OAAOK,OAAOpI,EAAQu7B,MAAO,IAGzDn4B,EAAMoH,OAAOvF,MAAQ0xC,EAAIyJ,gBAAgBpJ,YAAcL,EAAIyJ,gBAAgB3Y,aAAe,EAC1FrkC,EAAMoH,OAAOokC,MAAQxrC,EAAMoH,OAAOvF,KAClC7B,EAAMoH,OAAOrF,KAAOwxC,EAAIyJ,gBAAgBlJ,aAAeP,EAAIyJ,gBAAgB3T,cAAgB,EAC3FrpC,EAAMoH,OAAO6gC,OAASjoC,EAAMoH,OAAOrF,GACnC,IAAImuE,GAAmB38B,EAAI96C,KAAKq7C,aAAeP,EAAI96C,KAAK4wC,aACpD8mC,EAAkB58B,EAAI96C,KAAKm7C,YAAcL,EAAI96C,KAAK4rC,WAIb,KAArCkP,EAAIyJ,gBAAgB3T,eACtBrpC,EAAMoH,OAAOvF,KAAO7B,EAAMoH,OAAOrF,IACjC/B,EAAMoH,OAAOokC,MAAQxrC,EAAMoH,OAAOvF,MAEN,IAA1B0xC,EAAI96C,KAAK4wC,eACX8mC,EAAkBD,GAKpBlwE,EAAMgwC,OAAO5X,OAASmb,EAAIvD,OAAO8D,aACjC9zC,EAAM6B,KAAKu2B,OAASmb,EAAI1xC,KAAKiyC,aAC7B9zC,EAAMwrC,MAAMpT,OAASmb,EAAI/H,MAAMsI,aAC/B9zC,EAAM+B,IAAIq2B,OAASmb,EAAIxxC,IAAIsnC,eAAiBrpC,EAAMoH,OAAOrF,IACzD/B,EAAMioC,OAAO7P,OAASmb,EAAItL,OAAOoB,eAAiBrpC,EAAMoH,OAAO6gC,MAM/D,IAAI4L,GAAgBx1C,KAAKJ,IAAI+B,EAAM6B,KAAKu2B,OAAQp4B,EAAMgwC,OAAO5X,OAAQp4B,EAAMwrC,MAAMpT,QAC7Eg4C,EAAapwE,EAAM+B,IAAIq2B,OAASyb,EAAgB7zC,EAAMioC,OAAO7P,OAAS83C,EAAmBlwE,EAAMoH,OAAOrF,IAAM/B,EAAMoH,OAAO6gC,MAC7HsL,GAAI96C,KAAKuP,MAAMowB,OAAS1+B,EAAKiL,OAAOK,OAAOpI,EAAQw7B,OAAQg4C,EAAa,MAGxEpwE,EAAMvH,KAAK2/B,OAASmb,EAAI96C,KAAKq7C,aAC7B9zC,EAAMmH,WAAWixB,OAASp4B,EAAMvH,KAAK2/B,OAAS83C,CAC9C,IAAIG,GAAkBrwE,EAAMvH,KAAK2/B,OAASp4B,EAAM+B,IAAIq2B,OAASp4B,EAAMioC,OAAO7P,OAAS83C,CACnFlwE,GAAMg9C,gBAAgB5kB,OAASi4C,EAC/BrwE,EAAM4tE,cAAcx1C,OAASi4C,EAC7BrwE,EAAM6tE,eAAez1C,OAASp4B,EAAM4tE,cAAcx1C,OAGlDp4B,EAAMvH,KAAK0/B,MAAQob,EAAI96C,KAAKm7C,YAC5B5zC,EAAMmH,WAAWgxB,MAAQn4B,EAAMvH,KAAK0/B,MAAQg4C,EAC5CnwE,EAAM6B,KAAKs2B,MAAQob,EAAIq6B,cAAcvpC,cAAgBrkC,EAAMoH,OAAOvF,KAClE7B,EAAM4tE,cAAcz1C,MAAQn4B,EAAM6B,KAAKs2B,MACvCn4B,EAAMwrC,MAAMrT,MAAQob,EAAIs6B,eAAexpC,cAAgBrkC,EAAMoH,OAAOokC,MACpExrC,EAAM6tE,eAAe11C,MAAQn4B,EAAMwrC,MAAMrT,KACzC,IAAIm4C,GAActwE,EAAMvH,KAAK0/B,MAAQn4B,EAAM6B,KAAKs2B,MAAQn4B,EAAMwrC,MAAMrT,MAAQg4C,CAC5EnwE,GAAMgwC,OAAO7X,MAAQm4C,EACrBtwE,EAAMg9C,gBAAgB7kB,MAAQm4C,EAC9BtwE,EAAM+B,IAAIo2B,MAAQm4C,EAClBtwE,EAAMioC,OAAO9P,MAAQm4C,EAGrB/8B,EAAIpsC,WAAWa,MAAMowB,OAASp4B,EAAMmH,WAAWixB,OAAS,KACxDmb,EAAIm6B,mBAAmB1lE,MAAMowB,OAASp4B,EAAMmH,WAAWixB,OAAS,KAChEmb,EAAIo6B,qBAAqB3lE,MAAMowB,OAASp4B,EAAMg9C,gBAAgB5kB,OAAS,KACvEmb,EAAIyJ,gBAAgBh1C,MAAMowB,OAASp4B,EAAMg9C,gBAAgB5kB,OAAS,KAClEmb,EAAIq6B,cAAc5lE,MAAMowB,OAASp4B,EAAM4tE,cAAcx1C,OAAS,KAC9Dmb,EAAIs6B,eAAe7lE,MAAMowB,OAASp4B,EAAM6tE,eAAez1C,OAAS,KAEhEmb,EAAIpsC,WAAWa,MAAMmwB,MAAQn4B,EAAMmH,WAAWgxB,MAAQ,KACtDob,EAAIm6B,mBAAmB1lE,MAAMmwB,MAAQn4B,EAAMg9C,gBAAgB7kB,MAAQ,KACnEob,EAAIo6B,qBAAqB3lE,MAAMmwB,MAAQn4B,EAAMmH,WAAWgxB,MAAQ,KAChEob,EAAIyJ,gBAAgBh1C,MAAMmwB,MAAQn4B,EAAMgwC,OAAO7X,MAAQ,KACvDob,EAAIxxC,IAAIiG,MAAMmwB,MAAQn4B,EAAM+B,IAAIo2B,MAAQ,KACxCob,EAAItL,OAAOjgC,MAAMmwB,MAAQn4B,EAAMioC,OAAO9P,MAAQ,KAG9Cob,EAAIpsC,WAAWa,MAAMnG,KAAO,IAC5B0xC,EAAIpsC,WAAWa,MAAMjG,IAAM,IAC3BwxC,EAAIm6B,mBAAmB1lE,MAAMnG,KAAO7B,EAAM6B,KAAKs2B,MAAQn4B,EAAMoH,OAAOvF,KAAO,KAC3E0xC,EAAIm6B,mBAAmB1lE,MAAMjG,IAAM,IACnCwxC,EAAIo6B,qBAAqB3lE,MAAMnG,KAAO,IACtC0xC,EAAIo6B,qBAAqB3lE,MAAMjG,IAAM/B,EAAM+B,IAAIq2B,OAAS,KACxDmb,EAAIyJ,gBAAgBh1C,MAAMnG,KAAO7B,EAAM6B,KAAKs2B,MAAQ,KACpDob,EAAIyJ,gBAAgBh1C,MAAMjG,IAAM/B,EAAM+B,IAAIq2B,OAAS,KACnDmb,EAAIq6B,cAAc5lE,MAAMnG,KAAO,IAC/B0xC,EAAIq6B,cAAc5lE,MAAMjG,IAAM/B,EAAM+B,IAAIq2B,OAAS,KACjDmb,EAAIs6B,eAAe7lE,MAAMnG,KAAO7B,EAAM6B,KAAKs2B,MAAQn4B,EAAMgwC,OAAO7X,MAAQ,KACxEob,EAAIs6B,eAAe7lE,MAAMjG,IAAM/B,EAAM+B,IAAIq2B,OAAS,KAClDmb,EAAIxxC,IAAIiG,MAAMnG,KAAO7B,EAAM6B,KAAKs2B,MAAQ,KACxCob,EAAIxxC,IAAIiG,MAAMjG,IAAM,IACpBwxC,EAAItL,OAAOjgC,MAAMnG,KAAO7B,EAAM6B,KAAKs2B,MAAQ,KAC3Cob,EAAItL,OAAOjgC,MAAMjG,IAAM/B,EAAM+B,IAAIq2B,OAASp4B,EAAMg9C,gBAAgB5kB,OAAS,KAIzEr/B,KAAKw3E,kBAGL,IAAIjvD,GAASvoB,KAAKiH,MAAMsuE,SACQ,QAA5B1xE,EAAQi8C,YAAYnuC,OACtB4W,GAAUjjB,KAAKJ,IAAIlF,KAAKiH,MAAMg9C,gBAAgB5kB,OAASr/B,KAAKiH,MAAMgwC,OAAO5X,OAASr/B,KAAKiH,MAAMoH,OAAOrF,IAAMhJ,KAAKiH,MAAMoH,OAAO6gC,OAAQ,IAEtIsL,EAAIvD,OAAOhoC,MAAMnG,KAAO,IACxB0xC,EAAIvD,OAAOhoC,MAAMjG,IAAMuf,EAAS,KAChCiyB,EAAI1xC,KAAKmG,MAAMnG,KAAO,IACtB0xC,EAAI1xC,KAAKmG,MAAMjG,IAAMuf,EAAS,KAC9BiyB,EAAI/H,MAAMxjC,MAAMnG,KAAO,IACvB0xC,EAAI/H,MAAMxjC,MAAMjG,IAAMuf,EAAS,IAG/B,IAAIkvD,GAAwC,GAAxBz3E,KAAKiH,MAAMsuE,UAAiB,SAAW,GACvDmC,EAAmB13E,KAAKiH,MAAMsuE,WAAav1E,KAAKiH,MAAMuuE,aAAe,SAAW,EACpFh7B,GAAIu6B,UAAU9lE,MAAM0oE,WAAaF,EACjCj9B,EAAIw6B,aAAa/lE,MAAM0oE,WAAaD,EACpCl9B,EAAIy6B,cAAchmE,MAAM0oE,WAAaF,EACrCj9B,EAAI06B,iBAAiBjmE,MAAM0oE,WAAaD,EACxCl9B,EAAI26B,eAAelmE,MAAM0oE,WAAaF,EACtCj9B,EAAI46B,kBAAkBnmE,MAAM0oE,WAAaD,CAGzC,IAAIE,GAAmB53E,KAAKiH,MAAMgwC,OAAO5X,OAASr/B,KAAKiH,MAAMg9C,gBAAgB5kB,MAC7Er/B,MAAK8rD,OAAOl0B,IAAI,OAAOlf,KACrBgT,UAAWksD,EAAmB5zE,EAAOyiE,cAAgBziE,EAAOuiE,uBAI9DvmE,KAAKgC,WAAWyH,QAAQ,SAAUusE,GAChC9D,EAAU8D,EAAU1oC,UAAY4kC,GAElC,IAAI2F,GAAa,CACjB,IAAI3F,EAAS,CACX,GAAIlyE,KAAK01E,YAAcmC,EAErB,WADA73E,MAAKmgD,KAAKE,QAAQ5H,KAAK,UAGvBlhC,SAAQwnC,IAAI,yCAGd/+C,MAAK01E,YAAc,CAErB11E,MAAKq1E,iBAAkB,EAGvBr1E,KAAKmgD,KAAKE,QAAQ5H,KAAK,aAIzB92C,EAAKyR,UAAU0kE,QAAU,WACvB,KAAM,IAAI1wE,OAAM,wDAUlBzF,EAAKyR,UAAU2kE,eAAiB,SAAU/rD,GACxC,IAAKhsB,KAAKohD,YACR,KAAM,IAAIh6C,OAAM,sCAGlBpH,MAAKohD,YAAY22B,eAAe/rD,IAQlCrqB,EAAKyR,UAAU4kE,eAAiB,WAC9B,IAAKh4E,KAAKohD,YACR,KAAM,IAAIh6C,OAAM,sCAGlB,OAAOpH,MAAKohD,YAAY42B,kBAU1Br2E,EAAKyR,UAAU2tC,QAAU,SAAUviB,GACjC,MAAO58B,GAASk/C,OAAO9gD,KAAMw+B,EAAGx+B,KAAKiH,MAAMgwC,OAAO7X,QAUpDz9B,EAAKyR,UAAU6tC,cAAgB,SAAUziB,GACvC,MAAO58B,GAASk/C,OAAO9gD,KAAMw+B,EAAGx+B,KAAKiH,MAAMvH,KAAK0/B,QAalDz9B,EAAKyR,UAAUutC,UAAY,SAAU30B,GACnC,MAAOpqB,GAAS8+C,SAAS1gD,KAAMgsB,EAAMhsB,KAAKiH,MAAMgwC,OAAO7X,QAYzDz9B,EAAKyR,UAAUytC,gBAAkB,SAAU70B,GACzC,MAAOpqB,GAAS8+C,SAAS1gD,KAAMgsB,EAAMhsB,KAAKiH,MAAMvH,KAAK0/B,QASvDz9B,EAAKyR,UAAU2iE,gBAAkB,WACA,GAA3B/1E,KAAK6D,QAAQ+7C,WACf5/C,KAAKi4E,mBAELj4E,KAAKu2E,mBAST50E,EAAKyR,UAAU6kE,iBAAmB,WAChC,GAAIr3C,GAAK5gC,IAETA,MAAKu2E,kBAELv2E,KAAKk4E,UAAY,WACf,MAA6B,IAAzBt3C,EAAG/8B,QAAQ+7C,eAEbhf,GAAG21C,uBAID31C,EAAG4Z,IAAI96C,OAKLkhC,EAAG4Z,IAAI96C,KAAKm7C,aAAeja,EAAG35B,MAAMkxE,WAAav3C,EAAG4Z,IAAI96C,KAAKq7C,cAAgBna,EAAG35B,MAAMmxE,aACxFx3C,EAAG35B,MAAMkxE,UAAYv3C,EAAG4Z,IAAI96C,KAAKm7C,YACjCja,EAAG35B,MAAMmxE,WAAax3C,EAAG4Z,IAAI96C,KAAKq7C,aAElCna,EAAGuf,KAAKE,QAAQ5H,KAAK,eAM3B93C,EAAK2J,iBAAiBY,OAAQ,SAAUlL,KAAKk4E,WAGzCt3C,EAAG4Z,IAAI96C,OACTkhC,EAAG35B,MAAMkxE,UAAYv3C,EAAG4Z,IAAI96C,KAAKm7C,YACjCja,EAAG35B,MAAMmxE,WAAax3C,EAAG4Z,IAAI96C,KAAKq7C,cAGpC/6C,KAAKq4E,WAAaC,YAAYt4E,KAAKk4E,UAAW,MAOhDv2E,EAAKyR,UAAUmjE,gBAAkB,WAC3Bv2E,KAAKq4E,aACPx6B,cAAc79C,KAAKq4E,YACnBr4E,KAAKq4E,WAAa1xE,QAIhB3G,KAAKk4E,YACPv3E,EAAKmK,oBAAoBI,OAAQ,SAAUlL,KAAKk4E,WAChDl4E,KAAKk4E,UAAY,OASrBv2E,EAAKyR,UAAUi8D,SAAW,SAAUpkE,GAClCjL,KAAKyiE,MAAMsO,eAAgB,EAC3B/wE,KAAKyiE,MAAM8V,iBAAmBv4E,KAAKiH,MAAMsuE,WAQ3C5zE,EAAKyR,UAAUk8D,SAAW,SAAUrkE,GAClCjL,KAAKyiE,MAAMsO,eAAgB,GAQ7BpvE,EAAKyR,UAAU87D,QAAU,SAAUjkE,GAGjC,GAAKjL,KAAKyiE,MAAMsO,cAAhB,CAEA,GAAIhkD,GAAQ9hB,EAAMq0D,OAEdkZ,EAAex4E,KAAKy4E,gBACpBC,EAAe14E,KAAK24E,cAAc34E,KAAKyiE,MAAM8V,iBAAmBxrD,EAEhE2rD,IAAgBF,GAClBx4E,KAAKy4C,KAAK,kBAUd92C,EAAKyR,UAAUulE,cAAgB,SAAUpD,GAGvC,MAFAv1E,MAAKiH,MAAMsuE,UAAYA,EACvBv1E,KAAKw3E,mBACEx3E,KAAKiH,MAAMsuE,WAQpB5zE,EAAKyR,UAAUokE,iBAAmB,WAEhC,GAAIhC,GAAelwE,KAAKL,IAAIjF,KAAKiH,MAAMg9C,gBAAgB5kB,OAASr/B,KAAKiH,MAAMgwC,OAAO5X,OAAQ,EAc1F,OAbIm2C,IAAgBx1E,KAAKiH,MAAMuuE,eAGQ,OAAjCx1E,KAAK6D,QAAQi8C,YAAYnuC,OAC3B3R,KAAKiH,MAAMsuE,WAAaC,EAAex1E,KAAKiH,MAAMuuE,cAEpDx1E,KAAKiH,MAAMuuE,aAAeA,GAIxBx1E,KAAKiH,MAAMsuE,UAAY,IAAGv1E,KAAKiH,MAAMsuE,UAAY,GACjDv1E,KAAKiH,MAAMsuE,UAAYC,IAAcx1E,KAAKiH,MAAMsuE,UAAYC,GAEzDx1E,KAAKiH,MAAMsuE,WAQpB5zE,EAAKyR,UAAUqlE,cAAgB,WAC7B,MAAOz4E,MAAKiH,MAAMsuE,WAQpB5zE,EAAKyR,UAAUovC,oBAAsB,WACnC,KAAM,IAAIp7C,OAAM,sDAGlBvH,EAAOD,QAAU+B,GAIb,SAAS9B,EAAQD,EAASM,GA+B9B,QAAS6C,GAAQo9C,EAAMt8C,GACrB7D,KAAKmgD,KAAOA,EAEZngD,KAAK2/C,gBACH53C,KAAM,KACN+3C,aACEnuC,KAAM,UAERinE,MAAO,OACP92E,OAAO,EACP+2E,eAAgB,SAAwBC,EAAWC,EAASt5B,GAC1D,GAAIu5B,GAAcD,EAAQn3C,KAC1Bm3C,GAAQn3C,MAAQk3C,EAAUl3C,MAC1Bk3C,EAAUl3C,MAAQo3C,GAEpBC,WAAY,QAEZC,YAAY,EACZC,aAAa,EACbC,sBAAsB,EAEtBC,UACEC,YAAY,EACZC,aAAa,EACbvyD,KAAK,EACLub,QAAQ,GAGVi3C,eACE53C,OAAO,EACP5a,KAAK,EACLub,QAAQ,GAGVgiB,KAAMxiD,EAASwiD,KAEfk1B,MAAO,SAAe9nE,EAAMjI,GAC1BA,EAASiI,IAEX+nE,SAAU,SAAkB/nE,EAAMjI,GAChCA,EAASiI,IAEXgoE,OAAQ,SAAgBhoE,EAAMjI,GAC5BA,EAASiI,IAEXioE,SAAU,SAAkBjoE,EAAMjI,GAChCA,EAASiI,IAEXkoE,SAAU,SAAkBloE,EAAMjI,GAChCA,EAASiI,IAEXmoE,WAAY,SAAoBnoE,EAAMjI,GACpCA,EAASiI,IAEXooE,YAAa,SAAqBpoE,EAAMjI,GACtCA,EAASiI,IAEXqoE,cAAe,SAAuBroE,EAAMjI,GAC1CA,EAASiI,IAGXwzB,QACExzB,MACEm/B,WAAY,GACZC,SAAU,IAEZgP,KAAM,KAKV//C,KAAK6D,QAAUlD,EAAKoG,UAAW/G,KAAK2/C,gBAGpC3/C,KAAKi6E,aACHlyE,MAAQyrC,MAAO,OAAQE,IAAK,SAG9B1zC,KAAK2wE,YACHjwB,SAAUP,EAAKx/C,KAAK+/C,SACpBI,OAAQX,EAAKx/C,KAAKmgD,QAEpB9gD,KAAKw6C,OACLx6C,KAAKiH,SACLjH,KAAK8rD,OAAS,IAEd,IAAIlrB,GAAK5gC,IACTA,MAAKshD,UAAY,KACjBthD,KAAKuhD,WAAa,KAGlBvhD,KAAKk6E,eACHlzD,IAAO,SAAa/b,EAAOs1B,EAAQC,GACjCI,EAAGu5C,OAAO55C,EAAOt+B,QAEnB6+B,OAAU,SAAgB71B,EAAOs1B,EAAQC,GACvCI,EAAGw5C,UAAU75C,EAAOt+B,QAEtBsgC,OAAU,SAAgBt3B,EAAOs1B,EAAQC,GACvCI,EAAGy5C,UAAU95C,EAAOt+B,SAKxBjC,KAAKs6E,gBACHtzD,IAAO,SAAa/b,EAAOs1B,EAAQC,GACjCI,EAAG25C,aAAah6C,EAAOt+B,QAEzB6+B,OAAU,SAAgB71B,EAAOs1B,EAAQC,GACvCI,EAAG45C,gBAAgBj6C,EAAOt+B,QAE5BsgC,OAAU,SAAgBt3B,EAAOs1B,EAAQC,GACvCI,EAAG65C,gBAAgBl6C,EAAOt+B,SAI9BjC,KAAKiC,SACLjC,KAAKy/C,UACLz/C,KAAK06E,YAEL16E,KAAK6iD,aACL7iD,KAAK26E,YAAa,EAElB36E,KAAK46E,eACL56E,KAAK66E,oBAGL76E,KAAKkgD,UAELlgD,KAAK4/B,WAAW/7B,GA5JlB,GAAIK,GAA4B,kBAAXC,SAAoD,gBAApBA,QAAOC,SAAwB,SAAUC,GAAO,aAAcA,IAAS,SAAUA,GAAO,MAAOA,IAAyB,kBAAXF,SAAyBE,EAAIC,cAAgBH,OAAS,eAAkBE,IAEtOL,EAAS9D,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,IAErC46E,EAAY,gBACZC,EAAa,gBA+IjBh4E,GAAQqQ,UAAY,GAAI5Q,GAGxBO,EAAQmgC,OACN90B,WAAYjM,EACZ64E,IAAK54E,EACL8+C,MAAO5+C,EACPq8B,MAAOt8B,GAMTU,EAAQqQ,UAAU8sC,QAAU,WAC1B,GAAI9U,GAAQpN,SAASM,cAAc,MACnC8M,GAAMliC,UAAY,cAClBkiC,EAAM,oBAAsBprC,KAC5BA,KAAKw6C,IAAIpP,MAAQA,CAGjB,IAAIh9B,GAAa4vB,SAASM,cAAc,MACxClwB,GAAWlF,UAAY,iBACvBkiC,EAAMlN,YAAY9vB,GAClBpO,KAAKw6C,IAAIpsC,WAAaA,CAGtB,IAAIs2C,GAAa1mB,SAASM,cAAc,MACxComB,GAAWx7C,UAAY,iBACvBkiC,EAAMlN,YAAYwmB,GAClB1kD,KAAKw6C,IAAIkK,WAAaA,CAGtB,IAAI3E,GAAO/hB,SAASM,cAAc,MAClCyhB,GAAK72C,UAAY,WACjBlJ,KAAKw6C,IAAIuF,KAAOA,CAGhB,IAAI4E,GAAW3mB,SAASM,cAAc,MACtCqmB,GAASz7C,UAAY,eACrBlJ,KAAKw6C,IAAImK,SAAWA,EAGpB3kD,KAAKi7E,kBAGL,IAAIC,GAAkB,GAAI34E,GAAgBw4E,EAAY,KAAM/6E,KAC5Dk7E,GAAgBt3B,OAChB5jD,KAAKy/C,OAAOs7B,GAAcG,EAM1Bl7E,KAAK8rD,OAAS,GAAI9nD,GAAOhE,KAAKmgD,KAAK3F,IAAIyJ,iBAGvCjkD,KAAK8rD,OAAO9rB,GAAG,eAAgB,SAAU/0B,GACnCA,EAAM2uD,SACR55D,KAAKqvE,SAASpkE,IAEhBq1C,KAAKtgD,OACPA,KAAK8rD,OAAO9rB,GAAG,WAAYhgC,KAAKivE,aAAa3uB,KAAKtgD,OAClDA,KAAK8rD,OAAO9rB,GAAG,UAAWhgC,KAAKkvE,QAAQ5uB,KAAKtgD,OAC5CA,KAAK8rD,OAAO9rB,GAAG,SAAUhgC,KAAKmvE,WAAW7uB,KAAKtgD,OAC9CA,KAAK8rD,OAAOl0B,IAAI,OAAOlf,KAAMgc,UAAW,EAAGhJ,UAAW1nB,EAAOuiE,uBAG7DvmE,KAAK8rD,OAAO9rB,GAAG,MAAOhgC,KAAKm7E,cAAc76B,KAAKtgD,OAG9CA,KAAK8rD,OAAO9rB,GAAG,QAAShgC,KAAKo7E,mBAAmB96B,KAAKtgD,OAGrDA,KAAK8rD,OAAO9rB,GAAG,YAAahgC,KAAKq7E,WAAW/6B,KAAKtgD,OAEjDA,KAAKs7E,YAAc,GAAIt3E,GAAOhE,KAAKmgD,KAAK3F,IAAIq6B,eAC5C70E,KAAKs7E,YAAYt7C,GAAG,WAAYhgC,KAAKu7E,kBAAkBj7B,KAAKtgD,OAC5DA,KAAKs7E,YAAYt7C,GAAG,UAAWhgC,KAAKw7E,aAAal7B,KAAKtgD,OACtDA,KAAKs7E,YAAYt7C,GAAG,SAAUhgC,KAAKy7E,gBAAgBn7B,KAAKtgD,OACxDA,KAAKs7E,YAAY1jD,IAAI,OAAOlf,KAAMgc,UAAW,EAAGhJ,UAAW1nB,EAAOuiE,uBAGlEvmE,KAAK4jD,QAmEP7gD,EAAQqQ,UAAUwsB,WAAa,SAAU/7B,GACvC,GAAIA,EAAS,CAEX,GAAIuM,IAAU,OAAQ,QAAS,QAAS,QAAS,aAAc,cAAe,uBAAwB,sBAAuB,aAAc,iBAAkB,WAAY,gBAAiB,OAAQ,OAAQ,iBAC1MzP,GAAKqG,gBAAgBoJ,EAAQpQ,KAAK6D,QAASA,GAEvC,eAAiBA,KACgB,gBAAxBA,GAAQi8C,YACjB9/C,KAAK6D,QAAQi8C,YAAYnuC,KAA+B,QAAxB9N,EAAQi8C,YAAwB,MAAQ,SAC9B,WAAjC57C,EAAQL,EAAQi8C,cAA6B,QAAUj8C,GAAQi8C,cACxE9/C,KAAK6D,QAAQi8C,YAAYnuC,KAAO9N,EAAQi8C,YAAYnuC,OAIpD,UAAY9N,KACgB,gBAAnBA,GAAQshC,QACjBnlC,KAAK6D,QAAQshC,OAAO4a,KAAOl8C,EAAQshC,OACnCnlC,KAAK6D,QAAQshC,OAAOxzB,KAAKm/B,WAAajtC,EAAQshC,OAC9CnlC,KAAK6D,QAAQshC,OAAOxzB,KAAKo/B,SAAWltC,EAAQshC,QACP,WAA5BjhC,EAAQL,EAAQshC,UACzBxkC,EAAKqG,iBAAiB,QAAShH,KAAK6D,QAAQshC,OAAQthC,EAAQshC,QACxD,QAAUthC,GAAQshC,SACe,gBAAxBthC,GAAQshC,OAAOxzB,MACxB3R,KAAK6D,QAAQshC,OAAOxzB,KAAKm/B,WAAajtC,EAAQshC,OAAOxzB,KACrD3R,KAAK6D,QAAQshC,OAAOxzB,KAAKo/B,SAAWltC,EAAQshC,OAAOxzB,MACT,WAAjCzN,EAAQL,EAAQshC,OAAOxzB,OAChChR,EAAKqG,iBAAiB,aAAc,YAAahH,KAAK6D,QAAQshC,OAAOxzB,KAAM9N,EAAQshC,OAAOxzB,SAM9F,YAAc9N,KACgB,iBAArBA,GAAQw1E,UACjBr5E,KAAK6D,QAAQw1E,SAASC,WAAaz1E,EAAQw1E,SAC3Cr5E,KAAK6D,QAAQw1E,SAASE,YAAc11E,EAAQw1E,SAC5Cr5E,KAAK6D,QAAQw1E,SAASryD,IAAMnjB,EAAQw1E,SACpCr5E,KAAK6D,QAAQw1E,SAAS92C,OAAS1+B,EAAQw1E,UACA,WAA9Bn1E,EAAQL,EAAQw1E,WACzB14E,EAAKqG,iBAAiB,aAAc,cAAe,MAAO,UAAWhH,KAAK6D,QAAQw1E,SAAUx1E,EAAQw1E,WAIpG,iBAAmBx1E,KACgB,iBAA1BA,GAAQ21E,eACjBx5E,KAAK6D,QAAQ21E,cAAc53C,MAAQ/9B,EAAQ21E,cAC3Cx5E,KAAK6D,QAAQ21E,cAAcxyD,IAAMnjB,EAAQ21E,cACzCx5E,KAAK6D,QAAQ21E,cAAcj3C,OAAS1+B,EAAQ21E,eACA,WAAnCt1E,EAAQL,EAAQ21E,gBACzB74E,EAAKqG,iBAAiB,QAAS,MAAO,UAAWhH,KAAK6D,QAAQ21E,cAAe31E,EAAQ21E,eAKzF,IAAIkC,GAAc,SAAU/jE,GAC1B,GAAI3N,GAAKnG,EAAQ8T,EACjB,IAAI3N,EAAI,CACN,KAAMA,YAAc8N,WAClB,KAAM,IAAI1Q,OAAM,UAAYuQ,EAAO,uBAAyBA,EAAO,mBAErE3X,MAAK6D,QAAQ8T,GAAQ3N,IAEvBs2C,KAAKtgD,OACN,QAAS,WAAY,WAAY,SAAU,WAAY,aAAc,cAAe,iBAAiByJ,QAAQiyE,GAG9G17E,KAAKyiD,cAST1/C,EAAQqQ,UAAUqvC,UAAY,SAAU5+C,GACtC7D,KAAK06E,YACL16E,KAAK26E,YAAa,EAEd92E,GAAWA,EAAQ6+C,cACrB/hD,EAAK8I,QAAQzJ,KAAKiC,MAAO,SAAU0P,GACjCA,EAAKgqE,OAAQ,EACThqE,EAAKiqE,WAAWjqE,EAAK27B,YAQ/BvqC,EAAQqQ,UAAU2sB,QAAU,WAC1B//B,KAAK67E,OACL77E,KAAKgiD,SAAS,MACdhiD,KAAK+hD,UAAU,MAEf/hD,KAAK8rD,OAAS,KAEd9rD,KAAKmgD,KAAO,KACZngD,KAAK2wE,WAAa,MAMpB5tE,EAAQqQ,UAAUyoE,KAAO,WAEnB77E,KAAKw6C,IAAIpP,MAAM5/B,YACjBxL,KAAKw6C,IAAIpP,MAAM5/B,WAAWzG,YAAY/E,KAAKw6C,IAAIpP,OAI7CprC,KAAKw6C,IAAIuF,KAAKv0C,YAChBxL,KAAKw6C,IAAIuF,KAAKv0C,WAAWzG,YAAY/E,KAAKw6C,IAAIuF,MAI5C//C,KAAKw6C,IAAImK,SAASn5C,YACpBxL,KAAKw6C,IAAImK,SAASn5C,WAAWzG,YAAY/E,KAAKw6C,IAAImK,WAQtD5hD,EAAQqQ,UAAUwwC,KAAO,WAElB5jD,KAAKw6C,IAAIpP,MAAM5/B,YAClBxL,KAAKmgD,KAAK3F,IAAIvD,OAAO/Y,YAAYl+B,KAAKw6C,IAAIpP,OAIvCprC,KAAKw6C,IAAIuF,KAAKv0C,YACjBxL,KAAKmgD,KAAK3F,IAAIm6B,mBAAmBz2C,YAAYl+B,KAAKw6C,IAAIuF,MAInD//C,KAAKw6C,IAAImK,SAASn5C,YACrBxL,KAAKmgD,KAAK3F,IAAI1xC,KAAKo1B,YAAYl+B,KAAKw6C,IAAImK,WAW5C5hD,EAAQqQ,UAAU2vC,aAAe,SAAU1hB,GACzC,GAAIx6B,GAAG20B,EAAIn7B,EAAIsR,CAMf,KAJWhL,QAAP06B,IAAkBA,MACjBn6B,MAAMC,QAAQk6B,KAAMA,GAAOA,IAG3Bx6B,EAAI,EAAG20B,EAAKx7B,KAAK6iD,UAAUn8C,OAAY80B,EAAJ30B,EAAQA,IAC9CxG,EAAKL,KAAK6iD,UAAUh8C,GACpB8K,EAAO3R,KAAKiC,MAAM5B,GACdsR,GAAMA,EAAKmqE,UAKjB,KADA97E,KAAK6iD,aACAh8C,EAAI,EAAG20B,EAAK6F,EAAI36B,OAAY80B,EAAJ30B,EAAQA,IACnCxG,EAAKghC,EAAIx6B,GACT8K,EAAO3R,KAAKiC,MAAM5B,GACdsR,IACF3R,KAAK6iD,UAAUl7C,KAAKtH,GACpBsR,EAAKu2C,WASXnlD,EAAQqQ,UAAU0vC,aAAe,WAC/B,MAAO9iD,MAAK6iD,UAAUpiB,YAOxB19B,EAAQqQ,UAAU6jE,gBAAkB,WAClC,GAAI/1B,GAAQlhD,KAAKmgD,KAAKe,MAAMwvB,WACxB5nE,EAAO9I,KAAKmgD,KAAKx/C,KAAK+/C,SAASQ,EAAM1N,OACrCf,EAAQzyC,KAAKmgD,KAAKx/C,KAAK+/C,SAASQ,EAAMxN,KAEtCrS,IACJ,KAAK,GAAIujB,KAAW5kD,MAAKy/C,OACvB,GAAIz/C,KAAKy/C,OAAOr5C,eAAew+C,GAM7B,IAAK,GALDT,GAAQnkD,KAAKy/C,OAAOmF,GACpBm3B,EAAkB53B,EAAM63B,aAInBn1E,EAAI,EAAGA,EAAIk1E,EAAgBr1E,OAAQG,IAAK,CAC/C,GAAI8K,GAAOoqE,EAAgBl1E,EAEvB8K,GAAK7I,KAAO2pC,GAAS9gC,EAAK7I,KAAO6I,EAAKytB,MAAQt2B,GAChDu4B,EAAI15B,KAAKgK,EAAKtR,IAMtB,MAAOghC,IAQTt+B,EAAQqQ,UAAU6oE,UAAY,SAAU57E,GAEtC,IAAK,GADDwiD,GAAY7iD,KAAK6iD,UACZh8C,EAAI,EAAG20B,EAAKqnB,EAAUn8C,OAAY80B,EAAJ30B,EAAQA,IAC7C,GAAIg8C,EAAUh8C,IAAMxG,EAAI,CAEtBwiD,EAAUr5C,OAAO3C,EAAG,EACpB,SASN9D,EAAQqQ,UAAUk6B,OAAS,WACzB,GAAInI,GAASnlC,KAAK6D,QAAQshC,OACtB+b,EAAQlhD,KAAKmgD,KAAKe,MAClBj1C,EAAStL,EAAKiL,OAAOK,OACrBpI,EAAU7D,KAAK6D,QACfi8C,EAAcj8C,EAAQi8C,YAAYnuC,KAClCugE,GAAU,EACV9mC,EAAQprC,KAAKw6C,IAAIpP,KAGrBprC,MAAKiH,MAAM+B,IAAMhJ,KAAKmgD,KAAKC,SAASp3C,IAAIq2B,OAASr/B,KAAKmgD,KAAKC,SAAS/xC,OAAOrF,IAC3EhJ,KAAKiH,MAAM6B,KAAO9I,KAAKmgD,KAAKC,SAASt3C,KAAKs2B,MAAQp/B,KAAKmgD,KAAKC,SAAS/xC,OAAOvF,KAG5EsiC,EAAMliC,UAAY,cAGlBgpE,EAAUlyE,KAAKk8E,gBAAkBhK,CAIjC,IAAIiK,GAAkBj7B,EAAMxN,IAAMwN,EAAM1N,MACpC4oC,EAASD,GAAmBn8E,KAAKq8E,qBAAuBr8E,KAAKiH,MAAMm4B,OAASp/B,KAAKiH,MAAMkxE,SACvFiE,KAAQp8E,KAAK26E,YAAa,GAC9B36E,KAAKq8E,oBAAsBF,EAC3Bn8E,KAAKiH,MAAMkxE,UAAYn4E,KAAKiH,MAAMm4B,KAElC,IAAIk9C,GAAUt8E,KAAK26E,WACf4B,EAAav8E,KAAKw8E,cAClBC,GACF9qE,KAAMwzB,EAAOxzB,KACbouC,KAAM5a,EAAO4a,MAEX28B,GACF/qE,KAAMwzB,EAAOxzB,KACbouC,KAAM5a,EAAOxzB,KAAKo/B,SAAW,GAE3B1R,EAAS,EACT4gB,EAAY9a,EAAO4a,KAAO5a,EAAOxzB,KAAKo/B,QA6B1C,OA1BA/wC,MAAKy/C,OAAOs7B,GAAYztC,OAAO4T,EAAOw7B,EAAgBJ,GAGtD37E,EAAK8I,QAAQzJ,KAAKy/C,OAAQ,SAAU0E,GAClC,GAAIw4B,GAAcx4B,GAASo4B,EAAaE,EAAcC,EAClDE,EAAez4B,EAAM7W,OAAO4T,EAAOy7B,EAAaL,EACpDpK,GAAU0K,GAAgB1K,EAC1B7yC,GAAU8kB,EAAM9kB,SAElBA,EAAS/5B,KAAKJ,IAAIm6B,EAAQ4gB,GAC1BjgD,KAAK26E,YAAa,EAGlBvvC,EAAMn8B,MAAMowB,OAASpzB,EAAOozB,GAG5Br/B,KAAKiH,MAAMm4B,MAAQgM,EAAMyP,YACzB76C,KAAKiH,MAAMo4B,OAASA,EAGpBr/B,KAAKw6C,IAAIuF,KAAK9wC,MAAMjG,IAAMiD,EAAsB,OAAf6zC,EAAuB9/C,KAAKmgD,KAAKC,SAASp3C,IAAIq2B,OAASr/B,KAAKmgD,KAAKC,SAAS/xC,OAAOrF,IAAMhJ,KAAKmgD,KAAKC,SAASp3C,IAAIq2B,OAASr/B,KAAKmgD,KAAKC,SAAS6D,gBAAgB5kB,QAC3Lr/B,KAAKw6C,IAAIuF,KAAK9wC,MAAMnG,KAAO,IAG3BopE,EAAUlyE,KAAKiyE,cAAgBC,GAUjCnvE,EAAQqQ,UAAUopE,YAAc,WAC9B,GAAIK,GAAmD,OAAjC78E,KAAK6D,QAAQi8C,YAAYnuC,KAAgB,EAAI3R,KAAK06E,SAASh0E,OAAS,EACtFo2E,EAAe98E,KAAK06E,SAASmC,GAC7BN,EAAav8E,KAAKy/C,OAAOq9B,IAAiB98E,KAAKy/C,OAAOq7B,EAE1D,OAAOyB,IAAc,MAQvBx5E,EAAQqQ,UAAU6nE,iBAAmB,WACnC,GAEItpE,GAAM+vB,EAFNq7C,EAAY/8E,KAAKy/C,OAAOq7B,EACX96E,MAAKy/C,OAAOs7B,EAG7B,IAAI/6E,KAAKuhD,YAEP,GAAIw7B,EAAW,CACbA,EAAUlB,aACH77E,MAAKy/C,OAAOq7B,EAEnB,KAAKp5C,IAAU1hC,MAAKiC,MAClB,GAAIjC,KAAKiC,MAAMmE,eAAes7B,GAAS,CACrC/vB,EAAO3R,KAAKiC,MAAMy/B,GAClB/vB,EAAKjG,QAAUiG,EAAKjG,OAAO62B,OAAO5wB,EAClC,IAAIizC,GAAU5kD,KAAKg9E,YAAYrrE,EAAK6H,MAChC2qC,EAAQnkD,KAAKy/C,OAAOmF,EACxBT,IAASA,EAAMn9B,IAAIrV,IAASA,EAAKkqE,aAMvC,KAAKkB,EAAW,CACd,GAAI18E,GAAK,KACLmZ,EAAO,IACXujE,GAAY,GAAIj6E,GAAMzC,EAAImZ,EAAMxZ,MAChCA,KAAKy/C,OAAOq7B,GAAaiC,CAEzB,KAAKr7C,IAAU1hC,MAAKiC,MACdjC,KAAKiC,MAAMmE,eAAes7B,KAC5B/vB,EAAO3R,KAAKiC,MAAMy/B,GAClBq7C,EAAU/1D,IAAIrV,GAIlBorE,GAAUn5B,SAShB7gD,EAAQqQ,UAAU6pE,YAAc,WAC9B,MAAOj9E,MAAKw6C,IAAImK,UAOlB5hD,EAAQqQ,UAAU4uC,SAAW,SAAU//C,GACrC,GACIo/B,GADAT,EAAK5gC,KAELk9E,EAAel9E,KAAKshD,SAGxB,IAAKr/C,EAEE,CAAA,KAAIA,YAAiBpB,IAAWoB,YAAiBnB,IAGtD,KAAM,IAAIwG,WAAU,kDAFpBtH,MAAKshD,UAAYr/C,MAFjBjC,MAAKshD,UAAY,IAkBnB,IAXI47B,IAEFv8E,EAAK8I,QAAQzJ,KAAKk6E,cAAe,SAAUxwE,EAAUuB,GACnDiyE,EAAa/8C,IAAIl1B,EAAOvB,KAI1B23B,EAAM67C,EAAal7C,SACnBhiC,KAAKq6E,UAAUh5C,IAGbrhC,KAAKshD,UAAW,CAElB,GAAIjhD,GAAKL,KAAKK,EACdM,GAAK8I,QAAQzJ,KAAKk6E,cAAe,SAAUxwE,EAAUuB,GACnD21B,EAAG0gB,UAAUthB,GAAG/0B,EAAOvB,EAAUrJ,KAInCghC,EAAMrhC,KAAKshD,UAAUtf,SACrBhiC,KAAKm6E,OAAO94C,GAGZrhC,KAAKi7E,mBAGPj7E,KAAKmgD,KAAKE,QAAQ5H,KAAK,WAAa5Y,OAAO,KAO7C98B,EAAQqQ,UAAU+pE,SAAW,WAC3B,MAAOn9E,MAAKshD,WAOdv+C,EAAQqQ,UAAU2uC,UAAY,SAAUtC,GACtC,GACIpe,GADAT,EAAK5gC,IAgBT,IAZIA,KAAKuhD,aACP5gD,EAAK8I,QAAQzJ,KAAKs6E,eAAgB,SAAU5wE,EAAUuB,GACpD21B,EAAG2gB,WAAWphB,IAAIl1B,EAAOvB,KAI3B23B,EAAMrhC,KAAKuhD,WAAWvf,SACtBhiC,KAAKuhD,WAAa,KAClBvhD,KAAKy6E,gBAAgBp5C,IAIlBoe,EAEE,CAAA,KAAIA,YAAkB5+C,IAAW4+C,YAAkB3+C,IAGxD,KAAM,IAAIwG,WAAU,kDAFpBtH,MAAKuhD,WAAa9B,MAFlBz/C,MAAKuhD,WAAa,IAOpB,IAAIvhD,KAAKuhD,WAAY,CAEnB,GAAIlhD,GAAKL,KAAKK,EACdM,GAAK8I,QAAQzJ,KAAKs6E,eAAgB,SAAU5wE,EAAUuB,GACpD21B,EAAG2gB,WAAWvhB,GAAG/0B,EAAOvB,EAAUrJ,KAIpCghC,EAAMrhC,KAAKuhD,WAAWvf,SACtBhiC,KAAKu6E,aAAal5C,GAIpBrhC,KAAKi7E,mBAGLj7E,KAAKo9E,SAELp9E,KAAKmgD,KAAKE,QAAQ5H,KAAK,WAAa5Y,OAAO,KAO7C98B,EAAQqQ,UAAUiqE,UAAY,WAC5B,MAAOr9E,MAAKuhD,YAOdx+C,EAAQqQ,UAAUkqE,WAAa,SAAUj9E,GACvC,GAAIsR,GAAO3R,KAAKshD,UAAU1pB,IAAIv3B,GAC1B2jD,EAAUhkD,KAAKshD,UAAUrf,YAEzBtwB,IAEF3R,KAAK6D,QAAQ+1E,SAASjoE,EAAM,SAAUA,GAChCA,GAGFqyC,EAAQzhB,OAAOliC,MAYvB0C,EAAQqQ,UAAUmqE,SAAW,SAAUr6B,GACrC,MAAOA,GAASn7C,MAAQ/H,KAAK6D,QAAQkE,OAASm7C,EAASxP,IAAM,QAAU,QASzE3wC,EAAQqQ,UAAU4pE,YAAc,SAAU95B,GACxC,GAAIn7C,GAAO/H,KAAKu9E,SAASr6B,EACzB,OAAY,cAARn7C,GAA0CpB,QAAlBu8C,EAASiB,MAC5B42B,EAEA/6E,KAAKuhD,WAAa2B,EAASiB,MAAQ22B,GAS9C/3E,EAAQqQ,UAAUgnE,UAAY,SAAU/4C,GACtC,GAAIT,GAAK5gC,IAETqhC,GAAI53B,QAAQ,SAAUpJ,GACpB,GAKI+nD,GALAlF,EAAWtiB,EAAG0gB,UAAU1pB,IAAIv3B,EAAIugC,EAAGq5C,aACnCtoE,EAAOivB,EAAG3+B,MAAM5B,GAChB0H,EAAO64B,EAAG28C,SAASr6B,GAEnB5+C,EAAcvB,EAAQmgC,MAAMn7B,EAehC,IAZI4J,IAEGrN,GAAiBqN,YAAgBrN,GAMpCs8B,EAAGQ,YAAYzvB,EAAMuxC,IAJrBkF,EAAWz2C,EAAKy2C,SAChBxnB,EAAG48C,YAAY7rE,GACfA,EAAO,QAMNA,EAAM,CAET,IAAIrN,EAQG,KAAY,iBAARyD,EAEH,GAAIT,WAAU,gIAEd,GAAIA,WAAU,sBAAwBS,EAAO,IAXnD4J,GAAO,GAAIrN,GAAY4+C,EAAUtiB,EAAG+vC,WAAY/vC,EAAG/8B,SACnD8N,EAAKtR,GAAKA,EACVugC,EAAGC,SAASlvB,GACRy2C,IACFpoD,KAAK6iD,UAAUl7C,KAAKtH,GACpBsR,EAAKu2C,YASX5H,KAAKtgD,OAEPA,KAAKo9E,SACLp9E,KAAK26E,YAAa,EAClB36E,KAAKmgD,KAAKE,QAAQ5H,KAAK,WAAa5Y,OAAO,KAQ7C98B,EAAQqQ,UAAU+mE,OAASp3E,EAAQqQ,UAAUgnE,UAO7Cr3E,EAAQqQ,UAAUinE,UAAY,SAAUh5C,GACtC,GAAIxO,GAAQ,EACR+N,EAAK5gC,IACTqhC,GAAI53B,QAAQ,SAAUpJ,GACpB,GAAIsR,GAAOivB,EAAG3+B,MAAM5B,EAChBsR,KACFkhB,IACA+N,EAAG48C,YAAY7rE,MAIfkhB,IAEF7yB,KAAKo9E,SACLp9E,KAAK26E,YAAa,EAClB36E,KAAKmgD,KAAKE,QAAQ5H,KAAK,WAAa5Y,OAAO,MAQ/C98B,EAAQqQ,UAAUgqE,OAAS,WAGzBz8E,EAAK8I,QAAQzJ,KAAKy/C,OAAQ,SAAU0E,GAClCA,EAAMviB,WASV7+B,EAAQqQ,UAAUonE,gBAAkB,SAAUn5C,GAC5CrhC,KAAKu6E,aAAal5C,IAQpBt+B,EAAQqQ,UAAUmnE,aAAe,SAAUl5C,GACzC,GAAIT,GAAK5gC,IAETqhC,GAAI53B,QAAQ,SAAUpJ,GACpB,GAAIo9E,GAAY78C,EAAG2gB,WAAW3pB,IAAIv3B,GAC9B8jD,EAAQvjB,EAAG6e,OAAOp/C,EAEtB,IAAK8jD,EA4BHA,EAAM9f,QAAQo5C,OA5BJ,CAEV,GAAIp9E,GAAMy6E,GAAaz6E,GAAM06E,EAC3B,KAAM,IAAI3zE,OAAM,qBAAuB/G,EAAK,qBAG9C,IAAIq9E,GAAen2E,OAAOgJ,OAAOqwB,EAAG/8B,QACpClD,GAAKoG,OAAO22E,GACVr+C,OAAQ,OAGV8kB,EAAQ,GAAIrhD,GAAMzC,EAAIo9E,EAAW78C,GACjCA,EAAG6e,OAAOp/C,GAAM8jD,CAGhB,KAAK,GAAIziB,KAAUd,GAAG3+B,MACpB,GAAI2+B,EAAG3+B,MAAMmE,eAAes7B,GAAS,CACnC,GAAI/vB,GAAOivB,EAAG3+B,MAAMy/B,EAChB/vB,GAAK6H,KAAK2qC,OAAS9jD,GACrB8jD,EAAMn9B,IAAIrV,GAKhBwyC,EAAMviB,QACNuiB,EAAMP,UAOV5jD,KAAKmgD,KAAKE,QAAQ5H,KAAK,WAAa5Y,OAAO,KAQ7C98B,EAAQqQ,UAAUqnE,gBAAkB,SAAUp5C,GAC5C,GAAIoe,GAASz/C,KAAKy/C,MAClBpe,GAAI53B,QAAQ,SAAUpJ,GACpB,GAAI8jD,GAAQ1E,EAAOp/C,EAEf8jD,KACFA,EAAM03B,aACCp8B,GAAOp/C,MAIlBL,KAAKyiD,YAELziD,KAAKmgD,KAAKE,QAAQ5H,KAAK,WAAa5Y,OAAO,KAQ7C98B,EAAQqQ,UAAU8oE,aAAe,WAC/B,GAAIl8E,KAAKuhD,WAAY,CAEnB,GAAIm5B,GAAW16E,KAAKuhD,WAAWvf,QAC7BJ,MAAO5hC,KAAK6D,QAAQo1E,aAGlBjX,GAAWrhE,EAAKiH,WAAW8yE,EAAU16E,KAAK06E,SAC9C,IAAI1Y,EAAS,CAEX,GAAIviB,GAASz/C,KAAKy/C,MAClBi7B,GAASjxE,QAAQ,SAAUm7C,GACzBnF,EAAOmF,GAASi3B,SAIlBnB,EAASjxE,QAAQ,SAAUm7C,GACzBnF,EAAOmF,GAAShB,SAGlB5jD,KAAK06E,SAAWA,EAGlB,MAAO1Y,GAEP,OAAO,GASXj/D,EAAQqQ,UAAUytB,SAAW,SAAUlvB,GACrC3R,KAAKiC,MAAM0P,EAAKtR,IAAMsR,CAGtB,IAAIizC,GAAU5kD,KAAKg9E,YAAYrrE,EAAK6H,MAChC2qC,EAAQnkD,KAAKy/C,OAAOmF,EACpBT,IAAOA,EAAMn9B,IAAIrV,IASvB5O,EAAQqQ,UAAUguB,YAAc,SAAUzvB,EAAMuxC,GAC9C,GAAIy6B,GAAahsE,EAAK6H,KAAK2qC,MACvBy5B,EAAgBjsE,EAAK6H,KAAKqkE,QAM9B,IAHAlsE,EAAK0yB,QAAQ6e,GAGTy6B,GAAchsE,EAAK6H,KAAK2qC,OAASy5B,GAAiBjsE,EAAK6H,KAAKqkE,SAAU,CACxE,GAAIC,GAAW99E,KAAKy/C,OAAOk+B,EACvBG,IAAUA,EAASv7C,OAAO5wB,EAE9B,IAAIizC,GAAU5kD,KAAKg9E,YAAYrrE,EAAK6H,MAChC2qC,EAAQnkD,KAAKy/C,OAAOmF,EACpBT,IAAOA,EAAMn9B,IAAIrV,KAUzB5O,EAAQqQ,UAAUoqE,YAAc,SAAU7rE,GAExCA,EAAKkqE,aAGE77E,MAAKiC,MAAM0P,EAAKtR,GAGvB,IAAIkJ,GAAQvJ,KAAK6iD,UAAUn7C,QAAQiK,EAAKtR,GAC3B,KAATkJ,GAAavJ,KAAK6iD,UAAUr5C,OAAOD,EAAO,GAG9CoI,EAAKjG,QAAUiG,EAAKjG,OAAO62B,OAAO5wB,IASpC5O,EAAQqQ,UAAU2qE,qBAAuB,SAAUn0E,GAGjD,IAAK,GAFDo0E,MAEKn3E,EAAI,EAAGA,EAAI+C,EAAMlD,OAAQG,IAC5B+C,EAAM/C,YAAcvE,IACtB07E,EAASr2E,KAAKiC,EAAM/C,GAGxB,OAAOm3E,IAaTj7E,EAAQqQ,UAAUi8D,SAAW,SAAUpkE,GAErCjL,KAAK46E,YAAYjpE,KAAO3R,KAAKkkD,eAAej5C,GAC5CjL,KAAK46E,YAAYqD,aAAehzE,EAAMI,OAAO4yE,eAAgB,EAC7Dj+E,KAAK46E,YAAYsD,cAAgBjzE,EAAMI,OAAO6yE,gBAAiB,EAC/Dl+E,KAAK46E,YAAYuD,UAAY,MAS/Bp7E,EAAQqQ,UAAUgrE,eAAiB,SAAUx5B,GAC3C,IAAK,GAAI/9C,GAAI,EAAGA,EAAI7G,KAAK06E,SAASh0E,OAAQG,IACxC,GAAI+9C,GAAW5kD,KAAK06E,SAAS7zE,GAAI,MAAOA,IAS5C9D,EAAQqQ,UAAU67D,aAAe,SAAUhkE,GACzC,GAEIhE,GAFA0K,EAAO3R,KAAK46E,YAAYjpE,MAAQ,KAChCivB,EAAK5gC,IAGT,IAAI2R,IAASA,EAAKy2C,UAAYpoD,KAAK6D,QAAQu1E,sBAAuB,CAEhE,IAAKp5E,KAAK6D,QAAQw1E,SAASC,aAAet5E,KAAK6D,QAAQw1E,SAASE,cAAgB5nE,EAAK0nE,SACnF,MAIF,IAAI1nE,EAAK0nE,YAAa,EACpB,MAGF,IAAI4E,GAAej+E,KAAK46E,YAAYqD,aAChCC,EAAgBl+E,KAAK46E,YAAYsD,aAErC,IAAID,EACFh3E,GACE0K,KAAMssE,EACNI,SAAUpzE,EAAMgsC,OAAOzY,EACvB8/C,UAAU,EACV9kE,KAAMxZ,KAAKu+E,eAAe5sE,EAAK6H,OAGjCxZ,KAAK46E,YAAYuD,WAAal3E,OACzB,IAAIi3E,EACTj3E,GACE0K,KAAMusE,EACNG,SAAUpzE,EAAMgsC,OAAOzY,EACvBggD,WAAW,EACXhlE,KAAMxZ,KAAKu+E,eAAe5sE,EAAK6H,OAGjCxZ,KAAK46E,YAAYuD,WAAal3E,OACzB,CACLjH,KAAK46E,YAAY6D,aAAe9sE,CAEhC,IAAI+sE,GAAiB1+E,KAAKo+E,eAAezsE,EAAK6H,KAAK2qC,OAE/Cw6B,EAAc3+E,KAAK6D,QAAQu1E,uBAAyBznE,EAAKy2C,UAAYz2C,EAAKtR,IAAML,KAAK8iD,cAEzF9iD,MAAK46E,YAAYuD,UAAYQ,EAAYnxE,IAAI,SAAUnN,GACrD,GAAIsR,GAAOivB,EAAG3+B,MAAM5B,GAChBu+E,EAAah+C,EAAGw9C,eAAezsE,EAAK6H,KAAK2qC,MAC7C,QACExyC,KAAMA,EACN0sE,SAAUpzE,EAAMgsC,OAAOzY,EACvBqgD,YAAaH,EAAiBE,EAC9BplE,KAAMxZ,KAAKu+E,eAAe5sE,EAAK6H,QAEjC8mC,KAAKtgD,OAGTiL,EAAMiuD,sBACGl5D,MAAK6D,QAAQw1E,SAASryD,MAAQ/b,EAAM65C,SAASg6B,SAAW7zE,EAAM65C,SAASi6B,UAEhF/+E,KAAKg/E,oBAAoB/zE,IAS7BlI,EAAQqQ,UAAU4rE,oBAAsB,SAAU/zE,GAChD,GAAIs5C,GAAOvkD,KAAK6D,QAAQ0gD,MAAQ,KAC5B06B,EAAOt+E,EAAKgI,gBAAgB3I,KAAKw6C,IAAIpP,OACrC5M,EAAIvzB,EAAMgsC,OAAOzY,EAAIygD,EAAO,GAC5BjzD,EAAOhsB,KAAKmgD,KAAKx/C,KAAKmgD,OAAOtiB,GAC7Bn5B,EAAQrF,KAAKmgD,KAAKx/C,KAAK6/C,WACvBjN,EAAOvzC,KAAKmgD,KAAKx/C,KAAK0+C,UACtB7L,EAAQ+Q,EAAOA,EAAKv4B,EAAM3mB,EAAOkuC,GAAQvnB,EACzC0nB,EAAMF,EAEN0P,GACFn7C,KAAM,QACNyrC,MAAOA,EACPE,IAAKA,EACLzU,QAAS,YAGP5+B,EAAKM,EAAKqF,YACdk9C,GAASljD,KAAKshD,UAAU9hB,UAAYn/B,CAEpC,IAAI8jD,GAAQnkD,KAAKokD,gBAAgBn5C,EAC7Bk5C,KACFjB,EAASiB,MAAQA,EAAMS,QAGzB,IAAIs6B,GAAU,GAAI58E,GAAU4gD,EAAUljD,KAAK2wE,WAAY3wE,KAAK6D,QAC5Dq7E,GAAQ7+E,GAAKA,EACb6+E,EAAQ1lE,KAAOxZ,KAAKu+E,eAAer7B,GACnCljD,KAAK6gC,SAASq+C,EAEd,IAAIj4E,IACF0K,KAAMutE,EACNV,WAAW,EACXH,SAAUpzE,EAAMgsC,OAAOzY,EACvBhlB,KAAM0lE,EAAQ1lE,KAEhBxZ,MAAK46E,YAAYuD,WAAal3E,GAE9BgE,EAAMiuD,mBAQRn2D,EAAQqQ,UAAU87D,QAAU,SAAUjkE,GACpC,GAAIjL,KAAK46E,YAAYuD,UAAW,CAC9BlzE,EAAMiuD,iBAEN,IAAIt4B,GAAK5gC,KACLukD,EAAOvkD,KAAK6D,QAAQ0gD,MAAQ,KAC5BxlB,EAAU/+B,KAAKmgD,KAAK3F,IAAI96C,KAAKy/E,WAAan/E,KAAKmgD,KAAKC,SAASt3C,KAAKs2B,MAClE/5B,EAAQrF,KAAKmgD,KAAKx/C,KAAK6/C,WACvBjN,EAAOvzC,KAAKmgD,KAAKx/C,KAAK0+C,UAGtBo/B,EAAez+E,KAAK46E,YAAY6D,aAChCW,EAAqBx+C,EAAG/8B,QAAQw1E,SAASE,YACzC8F,EAAe,IACnB,IAAID,GAAsBX,GACO93E,QAA3B83E,EAAajlE,KAAK2qC,MAAoB,CAExC,GAAIA,GAAQvjB,EAAGwjB,gBAAgBn5C,EAC3Bk5C,KAGFk7B,EAAer/E,KAAKo+E,eAAej6B,EAAMS,UAM/C5kD,KAAK46E,YAAYuD,UAAU10E,QAAQ,SAAUxC,GAC3C,GAAIysE,GAAU9yC,EAAGuf,KAAKx/C,KAAKmgD,OAAO71C,EAAMgsC,OAAOzY,EAAIO,GAC/CugD,EAAU1+C,EAAGuf,KAAKx/C,KAAKmgD,OAAO75C,EAAMo3E,SAAWt/C,GAC/CxW,EAASmrD,EAAU4L,EAEnBp8B,EAAWljD,KAAKu+E,eAAet3E,EAAM0K,KAAK6H,KAC9C,IAAIvS,EAAM0K,KAAK0nE,YAAa,EAA5B,CAIA,GAAIkG,GAAoB3+C,EAAG/8B,QAAQw1E,SAASC,YAAcryE,EAAM0K,KAAK0nE,YAAa,CAElF,IAAIkG,EACF,GAAIt4E,EAAMq3E,UAER,GAAsB33E,QAAlBu8C,EAAS1P,MAAoB,CAC/B,GAAIgsC,GAAe7+E,EAAKmH,QAAQb,EAAMuS,KAAKg6B,MAAO,QAC9CA,EAAQ,GAAI9tC,MAAK85E,EAAav3E,UAAYsgB,EAE9C26B,GAAS1P,MAAQ+Q,EAAOA,EAAK/Q,EAAOnuC,EAAOkuC,GAAQC,OAEhD,IAAIvsC,EAAMu3E,WAEf,GAAoB73E,QAAhBu8C,EAASxP,IAAkB,CAC7B,GAAI+rC,GAAa9+E,EAAKmH,QAAQb,EAAMuS,KAAKk6B,IAAK,QAC1CA,EAAM,GAAIhuC,MAAK+5E,EAAWx3E,UAAYsgB,EAE1C26B,GAASxP,IAAM6Q,EAAOA,EAAK7Q,EAAKruC,EAAOkuC,GAAQG,OAIjD,IAAsB/sC,QAAlBu8C,EAAS1P,MAAoB,CAC/B,GAAIgsC,GAAe7+E,EAAKmH,QAAQb,EAAMuS,KAAKg6B,MAAO,QAAQvrC,UACtDurC,EAAQ,GAAI9tC,MAAK85E,EAAej3D,EAEpC,IAAoB5hB,QAAhBu8C,EAASxP,IAAkB,CAC7B,GAAI+rC,GAAa9+E,EAAKmH,QAAQb,EAAMuS,KAAKk6B,IAAK,QAC1ClsB,EAAWi4D,EAAWx3E,UAAYu3E,EAAav3E,SAGnDi7C,GAAS1P,MAAQ+Q,EAAOA,EAAK/Q,EAAOnuC,EAAOkuC,GAAQC,EACnD0P,EAASxP,IAAM,GAAIhuC,MAAKw9C,EAAS1P,MAAMvrC,UAAYuf,OAGnD07B,GAAS1P,MAAQ+Q,EAAOA,EAAK/Q,EAAOnuC,EAAOkuC,GAAQC,EAM3D,GAAI4rC,GAAqBx+C,EAAG/8B,QAAQw1E,SAASE,aAAetyE,EAAM0K,KAAK0nE,YAAa;AAEpF,GAAI+F,IAAuBn4E,EAAMq3E,WAAar3E,EAAMu3E,WAA6B,MAAhBa,GACzC14E,QAAlBu8C,EAASiB,MAAoB,CAC/B,GAAIu7B,GAAYL,EAAep4E,EAAM43E,WAGrCa,GAAYp6E,KAAKJ,IAAI,EAAGw6E,GACxBA,EAAYp6E,KAAKL,IAAI27B,EAAG85C,SAASh0E,OAAS,EAAGg5E,GAE7Cx8B,EAASiB,MAAQvjB,EAAG85C,SAASgF,GAKjCx8B,EAAWljD,KAAKu+E,eAAer7B,GAC/BtiB,EAAG/8B,QAAQg2E,SAAS32B,EAAU,SAAUA,GAClCA,GACFj8C,EAAM0K,KAAK0yB,QAAQrkC,KAAKu+E,eAAer7B,EAAU,UAEnD5C,KAAKtgD,SACPsgD,KAAKtgD,OAEPA,KAAK26E,YAAa,EAClB36E,KAAKmgD,KAAKE,QAAQ5H,KAAK,aAU3B11C,EAAQqQ,UAAUusE,aAAe,SAAUhuE,EAAMizC,GAC/C,GAAIT,GAAQnkD,KAAKy/C,OAAOmF,EACxB,IAAIT,GAASA,EAAMS,SAAWjzC,EAAK6H,KAAK2qC,MAAO,CAC7C,GAAI25B,GAAWnsE,EAAKjG,MACpBoyE,GAASv7C,OAAO5wB,GAChBmsE,EAASl8C,QACTuiB,EAAMn9B,IAAIrV,GACVwyC,EAAMviB,QAENjwB,EAAK6H,KAAK2qC,MAAQA,EAAMS,UAS5B7hD,EAAQqQ,UAAU+7D,WAAa,SAAUlkE,GACvC,GAAIjL,KAAK46E,YAAYuD,UAAW,CAC9BlzE,EAAMiuD,iBAEN,IAAIt4B,GAAK5gC,KACLgkD,EAAUhkD,KAAKshD,UAAUrf,aACzBk8C,EAAYn+E,KAAK46E,YAAYuD,SACjCn+E,MAAK46E,YAAYuD,UAAY,KAE7BA,EAAU10E,QAAQ,SAAUxC,GAC1B,GAAI5G,GAAK4G,EAAM0K,KAAKtR,GAChB4iC,EAAiD,MAAxCrC,EAAG0gB,UAAU1pB,IAAIv3B,EAAIugC,EAAGq5C,YAErC,IAAKh3C,EAYE,CAEL,GAAIigB,GAAWljD,KAAKu+E,eAAet3E,EAAM0K,KAAK6H,KAC9ConB,GAAG/8B,QAAQ81E,OAAOz2B,EAAU,SAAUA,GAChCA,GAEFA,EAASc,EAAQxkB,UAAYn/B,EAC7B2jD,EAAQljB,OAAOoiB,KAGfj8C,EAAM0K,KAAK0yB,QAAQp9B,EAAMuS,MAEzBonB,EAAG+5C,YAAa,EAChB/5C,EAAGuf,KAAKE,QAAQ5H,KAAK,kBAvBzB7X,GAAG/8B,QAAQ41E,MAAMxyE,EAAM0K,KAAK6H,KAAM,SAAU0pC,GAC1CtiB,EAAG48C,YAAYv2E,EAAM0K,MACjBuxC,GACFtiB,EAAG0gB,UAAUrf,aAAajb,IAAIk8B,GAIhCtiB,EAAG+5C,YAAa,EAChB/5C,EAAGuf,KAAKE,QAAQ5H,KAAK,cAmBzB6H,KAAKtgD,SAIX+C,EAAQqQ,UAAUmoE,kBAAoB,SAAUtwE,GAC1CjL,KAAK6D,QAAQ21E,cAAc53C,QAC7B5hC,KAAK66E,iBAAiB12B,MAAQnkD,KAAKokD,gBAAgBn5C,GAE/CjL,KAAK66E,iBAAiB12B,QACxBl5C,EAAMiuD,kBAENl5D,KAAK66E,iBAAiB+E,cAAgB5/E,KAAKuhD,WAAWvf,QACpDJ,MAAO5hC,KAAK6D,QAAQo1E,gBAM5Bl2E,EAAQqQ,UAAUooE,aAAe,SAAUvwE,GACzC,GAAIjL,KAAK6D,QAAQ21E,cAAc53C,OAAS5hC,KAAK66E,iBAAiB12B,MAAO,CACnEl5C,EAAMiuD,iBAGN,IAAI/U,GAAQnkD,KAAKokD,gBAAgBn5C,EAGjC,IAAIk5C,GAASA,EAAM9kB,QAAUr/B,KAAK66E,iBAAiB12B,MAAM9kB,OAAQ,CAC/D,GAAIwgD,GAAW17B,EAAMn7C,IAAMhJ,KAAK66E,iBAAiB12B,MAAMn7C,IACnD6/B,EAAU59B,EAAMgsC,OAAShsC,EAAMgsC,OAAOj1B,EAAI/W,EAAM49B,QAChDi3C,EAAiBn/E,EAAKoI,eAAeo7C,EAAM3J,IAAIkK,YAC/Cq7B,EAAqB//E,KAAK66E,iBAAiB12B,MAAM9kB,MACrD,IAAIwgD,GAEF,GAA0Ch3C,EAAtCi3C,EAAiBC,EACnB,WAEG,CACL,GAAIC,GAAoB77B,EAAM9kB,MAE9B,IAAIygD,EAAiBE,EAAoBD,EAAqBl3C,EAC5D,QAKN,GAAIsb,GAASA,GAASnkD,KAAK66E,iBAAiB12B,MAAO,CACjD,GAAI5C,GAAavhD,KAAKuhD,WAClB0+B,EAAc1+B,EAAW3pB,IAAIusB,EAAMS,SACnCs7B,EAAe3+B,EAAW3pB,IAAI53B,KAAK66E,iBAAiB12B,MAAMS,QAG1Ds7B,IAAgBD,IAClBjgF,KAAK6D,QAAQg1E,eAAeqH,EAAcD,EAAajgF,KAAKuhD,YAC5DvhD,KAAKuhD,WAAWzgB,OAAOo/C,GACvBlgF,KAAKuhD,WAAWzgB,OAAOm/C,GAIzB,IAAIE,GAAWngF,KAAKuhD,WAAWvf,QAC7BJ,MAAO5hC,KAAK6D,QAAQo1E,YAItB,KAAKt4E,EAAKiH,WAAWu4E,EAAUngF,KAAK66E,iBAAiB+E,eAQnD,IAPA,GAAIr+B,GAAavhD,KAAKuhD,WAClB6+B,EAAYpgF,KAAK66E,iBAAiB+E,cAClCS,EAAYrgF,KAAK66E,iBAAiB12B,MAAMS,QACxC07B,EAAYh7E,KAAKL,IAAIm7E,EAAU15E,OAAQy5E,EAASz5E,QAChD65E,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,EAASz4E,QAAQ04E,EAAUG,EAASC,IACtDE,EAAcn/B,EAAW3pB,IAAIuoD,EAASI,EAASb,IAC/CiB,EAAgBp/B,EAAW3pB,IAAIwoD,EAAUG,EAASC,GACtDxgF,MAAK6D,QAAQg1E,eAAe6H,EAAaC,EAAep/B,GACxDA,EAAWzgB,OAAO4/C,GAClBn/B,EAAWzgB,OAAO6/C,EAElB,IAAIC,GAAgBT,EAASI,EAASb,EACtCS,GAASI,EAASb,GAAaU,EAAUG,EAASC,GAClDL,EAASM,GAAmBG,EAE5BL,QAjBFC,GAAY,MALdd,GAAY,MA8BxB38E,EAAQqQ,UAAUqoE,gBAAkB,SAAUxwE,GAC5C,GAAIjL,KAAK6D,QAAQ21E,cAAc53C,OAAS5hC,KAAK66E,iBAAiB12B,MAAO,CACnEl5C,EAAMiuD,iBAGN,IAAIt4B,GAAK5gC,KACLK,EAAKugC,EAAGi6C,iBAAiB12B,MAAMS,QAC/BZ,EAAUpjB,EAAG2gB,WAAWtf,aACxBw7C,EAAY98E,EAAKoG,UAAWi9C,EAAQpsB,IAAIv3B,GAC5CugC,GAAG/8B,QAAQk2E,YAAY0D,EAAW,SAAUA,GAC1C,GAAIA,EAEFA,EAAUz5B,EAAQxkB,UAAYn/B,EAC9B2jD,EAAQljB,OAAO28C,OACV,CAGL,GAAI0C,GAAWn8B,EAAQhiB,QACrBJ,MAAOhB,EAAG/8B,QAAQo1E,YAIpB,KAAKt4E,EAAKiH,WAAWu4E,EAAUv/C,EAAGi6C,iBAAiB+E,eAIjD,IAHA,GAAIQ,GAAYx/C,EAAGi6C,iBAAiB+E,cAChCU,EAAYh7E,KAAKL,IAAIm7E,EAAU15E,OAAQy5E,EAASz5E,QAChD65E,EAAS,EACGD,EAATC,GAAoB,CAEzB,KAAgBD,EAATC,GAAsBJ,EAASI,IAAWH,EAAUG,IACzDA,GAIF,IAAIA,GAAUD,EACZ,KAKF,IAAIG,GAAkBN,EAASz4E,QAAQ04E,EAAUG,IAC7CG,EAAc18B,EAAQpsB,IAAIuoD,EAASI,IACnCI,EAAgB38B,EAAQpsB,IAAIwoD,EAAUG,GAC1C3/C,GAAG/8B,QAAQg1E,eAAe6H,EAAaC,EAAe38B,GACtDzC,WAAWzgB,OAAO4/C,GAClBn/B,WAAWzgB,OAAO6/C,EAElB,IAAIC,GAAgBT,EAASI,EAC7BJ,GAASI,GAAUH,EAAUG,GAC7BJ,EAASM,GAAmBG,EAE5BL,QAMR3/C,EAAGuf,KAAKE,QAAQ5H,KAAK,gBAAkBmM,QAASvkD,MASpD0C,EAAQqQ,UAAU+nE,cAAgB,SAAUlwE,GAC1C,GAAKjL,KAAK6D,QAAQq1E,WAAlB,CAEA,GAAI4F,GAAU7zE,EAAM65C,WAAa75C,EAAM65C,SAASg6B,SAAW7zE,EAAM65C,SAASi6B,SACtE8B,EAAW51E,EAAM65C,UAAY75C,EAAM65C,SAAS+7B,QAChD,IAAI/B,GAAW+B,EAEb,WADA7gF,MAAKo7E,mBAAmBnwE,EAI1B,IAAI61E,GAAe9gF,KAAK8iD,eAEpBnxC,EAAO3R,KAAKkkD,eAAej5C,GAC3B43C,EAAYlxC,GAAQA,EAAKtR,MAC7BL,MAAK+iD,aAAaF,EAElB,IAAIk+B,GAAe/gF,KAAK8iD,gBAIpBi+B,EAAar6E,OAAS,GAAKo6E,EAAap6E,OAAS,IACnD1G,KAAKmgD,KAAKE,QAAQ5H,KAAK,UACrBx2C,MAAO8+E,EACP91E,MAAOA,MAUblI,EAAQqQ,UAAUioE,WAAa,SAAUpwE,GACvC,GAAKjL,KAAK6D,QAAQq1E,YACbl5E,KAAK6D,QAAQw1E,SAASryD,IAA3B,CAEA,GAAI4Z,GAAK5gC,KACLukD,EAAOvkD,KAAK6D,QAAQ0gD,MAAQ,KAC5B5yC,EAAO3R,KAAKkkD,eAAej5C,EAE/B,IAAI0G,EAAM,CAIR,GAAIuxC,GAAWtiB,EAAG0gB,UAAU1pB,IAAIjmB,EAAKtR,GACrCL,MAAK6D,QAAQ61E,SAASx2B,EAAU,SAAUA,GACpCA,GACFtiB,EAAG0gB,UAAUrf,aAAanB,OAAOoiB,SAGhC,CAEL,GAAI+7B,GAAOt+E,EAAKgI,gBAAgB3I,KAAKw6C,IAAIpP,OACrC5M,EAAIvzB,EAAMgsC,OAAOzY,EAAIygD,EACrBzrC,EAAQxzC,KAAKmgD,KAAKx/C,KAAKmgD,OAAOtiB,GAC9Bn5B,EAAQrF,KAAKmgD,KAAKx/C,KAAK6/C,WACvBjN,EAAOvzC,KAAKmgD,KAAKx/C,KAAK0+C,UAEtB2hC,GACFxtC,MAAO+Q,EAAOA,EAAK/Q,EAAOnuC,EAAOkuC,GAAQC,EACzCvU,QAAS,WAIX,IAA0B,UAAtBj/B,KAAK6D,QAAQkE,KAAkB,CACjC,GAAI2rC,GAAM1zC,KAAKmgD,KAAKx/C,KAAKmgD,OAAOtiB,EAAIx+B,KAAKiH,MAAMm4B,MAAQ,EACvD4hD,GAAYttC,IAAM6Q,EAAOA,EAAK7Q,EAAKruC,EAAOkuC,GAAQG,EAGpDstC,EAAYhhF,KAAKshD,UAAU9hB,UAAY7+B,EAAKqF,YAE5C,IAAIm+C,GAAQnkD,KAAKokD,gBAAgBn5C,EAC7Bk5C,KACF68B,EAAY78B,MAAQA,EAAMS,SAI5Bo8B,EAAchhF,KAAKu+E,eAAeyC,GAClChhF,KAAK6D,QAAQ41E,MAAMuH,EAAa,SAAUrvE,GACpCA,GACFivB,EAAG0gB,UAAUrf,aAAajb,IAAIrV,QAYtC5O,EAAQqQ,UAAUgoE,mBAAqB,SAAUnwE,GAC/C,GAAKjL,KAAK6D,QAAQq1E,WAAlB,CAEA,GAAIvnE,GAAO3R,KAAKkkD,eAAej5C,EAE/B,IAAI0G,EAAM,CAGR,GAAIkxC,GAAY7iD,KAAK6D,QAAQs1E,YAAcn5E,KAAK8iD,kBAG5C+9B,EAAW51E,EAAM65C,UAAY75C,EAAM65C,SAAS+7B,WAAY,CAE5D,IAAIA,GAAY7gF,KAAK6D,QAAQs1E,YAAa,CAExC,GAAI8H,GAAYjhF,KAAKshD,UAAU1pB,IAAIjmB,EAAKtR,IAAI8jD,MAGxC+8B,EAAoBv6E,MACpB3G,MAAK6D,QAAQs9E,qBACXt+B,EAAUn8C,OAAS,IACrBw6E,EAAoBlhF,KAAKshD,UAAU1pB,IAAIirB,EAAU,IAAIsB,OAKpDnkD,KAAK6D,QAAQs9E,qBAA4Cx6E,QAArBu6E,GAAkCA,GAAqBD,GAC9Fp+B,EAAUl7C,KAAKgK,EAAKtR,GAEtB,IAAI6gD,GAAQn+C,EAAQq+E,cAAcphF,KAAKshD,UAAU1pB,IAAIirB,EAAW7iD,KAAKi6E,aAErE,KAAKj6E,KAAK6D,QAAQs9E,qBAAuBD,GAAqBD,EAAW,CAEvEp+B,IACA,KAAK,GAAIxiD,KAAML,MAAKiC,MAClB,GAAIjC,KAAKiC,MAAMmE,eAAe/F,GAAK,CACjC,GAAIghF,GAAQrhF,KAAKiC,MAAM5B,GACnBmzC,EAAQ6tC,EAAM7nE,KAAKg6B,MACnBE,EAAyB/sC,SAAnB06E,EAAM7nE,KAAKk6B,IAAoB2tC,EAAM7nE,KAAKk6B,IAAMF,IAEtDA,GAAS0N,EAAMj8C,KAAOyuC,GAAOwN,EAAMh8C,MAASlF,KAAK6D,QAAQs9E,qBAAuBD,GAAqBlhF,KAAKshD,UAAU1pB,IAAIypD,EAAMhhF,IAAI8jD,OAAYk9B,YAAiBl/E,IACjK0gD,EAAUl7C,KAAK05E,EAAMhhF,UAKxB,CAEH,GAAIkJ,GAAQs5C,EAAUn7C,QAAQiK,EAAKtR,GACtB,KAATkJ,EAEFs5C,EAAUl7C,KAAKgK,EAAKtR,IAGpBwiD,EAAUr5C,OAAOD,EAAO,GAI9BvJ,KAAK+iD,aAAaF,GAElB7iD,KAAKmgD,KAAKE,QAAQ5H,KAAK,UACrBx2C,MAAOjC,KAAK8iD,eACZ73C,MAAOA,OAWblI,EAAQq+E,cAAgB,SAAU9/B,GAChC,GAAIp8C,GAAM,KACND,EAAM,IAkBV,OAhBAq8C,GAAU73C,QAAQ,SAAU+P,IACf,MAAPvU,GAAeuU,EAAKg6B,MAAQvuC,KAC9BA,EAAMuU,EAAKg6B,OAGG7sC,QAAZ6S,EAAKk6B,KACI,MAAPxuC,GAAesU,EAAKk6B,IAAMxuC,KAC5BA,EAAMsU,EAAKk6B,MAGF,MAAPxuC,GAAesU,EAAKg6B,MAAQtuC,KAC9BA,EAAMsU,EAAKg6B,UAMfvuC,IAAKA,EACLC,IAAKA,IAUTnC,EAAQqQ,UAAU8wC,eAAiB,SAAUj5C,GAE3C,IADA,GAAII,GAASJ,EAAMI,OACZA,GAAQ,CACb,GAAIA,EAAOjF,eAAe,iBACxB,MAAOiF,GAAO,gBAEhBA,GAASA,EAAOG,WAGlB,MAAO,OASTzI,EAAQqQ,UAAUgxC,gBAAkB,SAAUn5C,GAE5C,IAAK,GADD49B,GAAU59B,EAAMgsC,OAAShsC,EAAMgsC,OAAOj1B,EAAI/W,EAAM49B,QAC3ChiC,EAAI,EAAGA,EAAI7G,KAAK06E,SAASh0E,OAAQG,IAAK,CAC7C,GAAI+9C,GAAU5kD,KAAK06E,SAAS7zE,GACxBs9C,EAAQnkD,KAAKy/C,OAAOmF,GACpBF,EAAaP,EAAM3J,IAAIkK,WACvB17C,EAAMrI,EAAKoI,eAAe27C,EAC9B,IAAI7b,EAAU7/B,GAAO6/B,EAAU7/B,EAAM07C,EAAW3J,aAC9C,MAAOoJ,EAGT,IAAsC,QAAlCnkD,KAAK6D,QAAQi8C,YAAYnuC,MAC3B,GAAI9K,IAAM7G,KAAK06E,SAASh0E,OAAS,GAAKmiC,EAAU7/B,EAC9C,MAAOm7C,OAGT,IAAU,IAANt9C,GAAWgiC,EAAU7/B,EAAM07C,EAAWn8B,OACxC,MAAO47B,GAKb,MAAO,OASTphD,EAAQu+E,kBAAoB,SAAUr2E,GAEpC,IADA,GAAII,GAASJ,EAAMI,OACZA,GAAQ,CACb,GAAIA,EAAOjF,eAAe,oBACxB,MAAOiF,GAAO,mBAEhBA,GAASA,EAAOG,WAGlB,MAAO,OAYTzI,EAAQqQ,UAAUmrE,eAAiB,SAAUr7B,EAAUn7C,GACrD,GAAImhB,GAAQvoB,EAAKoG,UAAWm8C,EAc5B,OAZKn7C,KAEHA,EAAO/H,KAAKshD,UAAUrf,aAAa1C,SAASx3B,MAG3BpB,QAAfuiB,EAAMsqB,QACRtqB,EAAMsqB,MAAQ7yC,EAAKmH,QAAQohB,EAAMsqB,MAAOzrC,GAAQA,EAAKyrC,OAAS,SAE/C7sC,QAAbuiB,EAAMwqB,MACRxqB,EAAMwqB,IAAM/yC,EAAKmH,QAAQohB,EAAMwqB,IAAK3rC,GAAQA,EAAK2rC,KAAO,SAGnDxqB,GAGTrpB,EAAOD,QAAUmD,GAIb,SAASlD,EAAQD,EAASM,GAkC9B,QAAS6B,GAASyxC,EAAOE,EAAK6tC,EAAahhC,GACzCvgD,KAAK+D,OAASA,EAGd/D,KAAK0zE,QAAU1zE,KAAK+D,SACpB/D,KAAKs+C,OAASt+C,KAAK+D,SACnB/D,KAAKu+C,KAAOv+C,KAAK+D,SAEjB/D,KAAKwhF,WAAY,EACjBxhF,KAAKqF,MAAQ,MACbrF,KAAKuzC,KAAO,EAGZvzC,KAAK2+C,SAASnL,EAAOE,EAAK6tC,GAG1BvhF,KAAK6zE,aAAc,EACnB7zE,KAAK4zE,eAAgB,EACrB5zE,KAAK2zE,cAAe,EAChBzsE,MAAMC,QAAQo5C,GAChBvgD,KAAKugD,YAAcA,EACK55C,QAAf45C,EACTvgD,KAAKugD,aAAeA,GAEpBvgD,KAAKugD,eAGPvgD,KAAKwT,OAASzR,EAAS0/E,OAzDzB,GAAI19E,GAAS7D,EAAoB,GAC7B0B,EAAW1B,EAAoB,IAC/BS,EAAOT,EAAoB,EA2D/B6B,GAAS0/E,QACPC,aACE76D,YAAa,MACbD,OAAQ,IACRD,OAAQ,QACRb,KAAM,QACN3C,QAAS,QACTuD,IAAK,IACL1I,MAAO,MACPD,KAAM,QAER4jE,aACE96D,YAAa,WACbD,OAAQ,eACRD,OAAQ,aACRb,KAAM,aACN3C,QAAS,YACTuD,IAAK,YACL1I,MAAO,OACPD,KAAM,KASVhc,EAASqR,UAAUwuE,UAAY,SAAU79E,GACvC/D,KAAK+D,OAASA,EAGd/D,KAAK0zE,QAAU1zE,KAAK+D,OAAO/D,KAAK0zE,SAChC1zE,KAAKs+C,OAASt+C,KAAK+D,OAAO/D,KAAKs+C,QAC/Bt+C,KAAKu+C,KAAOv+C,KAAK+D,OAAO/D,KAAKu+C,OAS/Bx8C,EAASqR,UAAUyuE,UAAY,SAAUruE,GACvC,GAAI+Z,GAAgB5sB,EAAK6G,cAAezF,EAAS0/E,OACjDzhF,MAAKwT,OAAS7S,EAAK6G,WAAW+lB,EAAe/Z,IAa/CzR,EAASqR,UAAUurC,SAAW,SAAUnL,EAAOE,EAAK6tC,GAClD,KAAM/tC,YAAiB9tC,OAAWguC,YAAehuC,OAC/C,KAAM,+CAGR1F,MAAKs+C,OAAkB33C,QAAT6sC,EAAqBxzC,KAAK+D,OAAOyvC,EAAMvrC,WAAa,GAAIvC,MACtE1F,KAAKu+C,KAAc53C,QAAP+sC,EAAmB1zC,KAAK+D,OAAO2vC,EAAIzrC,WAAa,GAAIvC,MAE5D1F,KAAKwhF,WACPxhF,KAAK8hF,eAAeP,IAOxBx/E,EAASqR,UAAUogC,MAAQ,WACzBxzC,KAAK0zE,QAAU1zE,KAAKs+C,OAAOp1B,QAC3BlpB,KAAK+hF,gBAOPhgF,EAASqR,UAAU2uE,aAAe,WAIhC,OAAQ/hF,KAAKqF,OACX,IAAK,OACHrF,KAAK0zE,QAAQ31D,KAAK/d,KAAKuzC,KAAOjuC,KAAKqK,MAAM3P,KAAK0zE,QAAQ31D,OAAS/d,KAAKuzC,OACpEvzC,KAAK0zE,QAAQ11D,MAAM,EACrB,KAAK,QACHhe,KAAK0zE,QAAQx0D,KAAK,EACpB,KAAK,MACL,IAAK,UACHlf,KAAK0zE,QAAQ5rD,MAAM,EACrB,KAAK,OACH9nB,KAAK0zE,QAAQ3rD,QAAQ,EACvB,KAAK,SACH/nB,KAAK0zE,QAAQ1rD,QAAQ,EACvB,KAAK,SACHhoB,KAAK0zE,QAAQzrD,aAAa,GAI9B,GAAiB,GAAbjoB,KAAKuzC,KAEP,OAAQvzC,KAAKqF,OACX,IAAK,cACHrF,KAAK0zE,QAAQxpD,SAASlqB,KAAK0zE,QAAQzrD,eAAiBjoB,KAAKuzC,KAAM,eAAgB,MACjF,KAAK,SACHvzC,KAAK0zE,QAAQxpD,SAASlqB,KAAK0zE,QAAQ1rD,UAAYhoB,KAAKuzC,KAAM,UAAW,MACvE,KAAK,SACHvzC,KAAK0zE,QAAQxpD,SAASlqB,KAAK0zE,QAAQ3rD,UAAY/nB,KAAKuzC,KAAM,UAAW,MACvE,KAAK,OACHvzC,KAAK0zE,QAAQxpD,SAASlqB,KAAK0zE,QAAQ5rD,QAAU9nB,KAAKuzC,KAAM,QAAS,MACnE,KAAK,UACL,IAAK,MACHvzC,KAAK0zE,QAAQxpD,UAAUlqB,KAAK0zE,QAAQx0D,OAAS,GAAKlf,KAAKuzC,KAAM,MAAO,MACtE,KAAK,QACHvzC,KAAK0zE,QAAQxpD,SAASlqB,KAAK0zE,QAAQ11D,QAAUhe,KAAKuzC,KAAM,QAAS,MACnE,KAAK,OACHvzC,KAAK0zE,QAAQxpD,SAASlqB,KAAK0zE,QAAQ31D,OAAS/d,KAAKuzC,KAAM,UAW/DxxC,EAASqR,UAAU4uE,QAAU,WAC3B,MAAOhiF,MAAK0zE,QAAQzrE,WAAajI,KAAKu+C,KAAKt2C,WAM7ClG,EAASqR,UAAU2F,KAAO,WACxB,GAAIikC,GAAOh9C,KAAK0zE,QAAQzrE,SAIxB,IAAIjI,KAAK0zE,QAAQ11D,QAAU,EACzB,OAAQhe,KAAKqF,OACX,IAAK,cACHrF,KAAK0zE,QAAQ1sD,IAAIhnB,KAAKuzC,KAAM,cAAe,MAC7C,KAAK,SACHvzC,KAAK0zE,QAAQ1sD,IAAIhnB,KAAKuzC,KAAM,SAAU,MACxC,KAAK,SACHvzC,KAAK0zE,QAAQ1sD,IAAIhnB,KAAKuzC,KAAM,SAAU,MACxC,KAAK,OACHvzC,KAAK0zE,QAAQ1sD,IAAIhnB,KAAKuzC,KAAM,QAG5BvzC,KAAK0zE,QAAQxpD,SAASlqB,KAAK0zE,QAAQ5rD,QAAU9nB,KAAKuzC,KAAM,OACxD,MACF,KAAK,UACL,IAAK,MACHvzC,KAAK0zE,QAAQ1sD,IAAIhnB,KAAKuzC,KAAM,MAAO,MACrC,KAAK,QACHvzC,KAAK0zE,QAAQ1sD,IAAIhnB,KAAKuzC,KAAM,QAAS,MACvC,KAAK,OACHvzC,KAAK0zE,QAAQ1sD,IAAIhnB,KAAKuzC,KAAM,YAKhC,QAAQvzC,KAAKqF,OACX,IAAK,cACHrF,KAAK0zE,QAAQ1sD,IAAIhnB,KAAKuzC,KAAM,cAAe,MAC7C,KAAK,SACHvzC,KAAK0zE,QAAQ1sD,IAAIhnB,KAAKuzC,KAAM,SAAU,MACxC,KAAK,SACHvzC,KAAK0zE,QAAQ1sD,IAAIhnB,KAAKuzC,KAAM,SAAU,MACxC,KAAK,OACHvzC,KAAK0zE,QAAQ1sD,IAAIhnB,KAAKuzC,KAAM,OAAQ,MACtC,KAAK,UACL,IAAK,MACHvzC,KAAK0zE,QAAQ1sD,IAAIhnB,KAAKuzC,KAAM,MAAO,MACrC,KAAK,QACHvzC,KAAK0zE,QAAQ1sD,IAAIhnB,KAAKuzC,KAAM,QAAS,MACvC,KAAK,OACHvzC,KAAK0zE,QAAQ1sD,IAAIhnB,KAAKuzC,KAAM,QAMlC,GAAiB,GAAbvzC,KAAKuzC,KAEP,OAAQvzC,KAAKqF,OACX,IAAK,cACCrF,KAAK0zE,QAAQzrD,eAAiBjoB,KAAKuzC,MAAMvzC,KAAK0zE,QAAQzrD,aAAa,EAAG,MAC5E,KAAK,SACCjoB,KAAK0zE,QAAQ1rD,UAAYhoB,KAAKuzC,MAAMvzC,KAAK0zE,QAAQ1rD,QAAQ,EAAG,MAClE,KAAK,SACChoB,KAAK0zE,QAAQ3rD,UAAY/nB,KAAKuzC,MAAMvzC,KAAK0zE,QAAQ3rD,QAAQ,EAAG,MAClE,KAAK,OACC/nB,KAAK0zE,QAAQ5rD,QAAU9nB,KAAKuzC,MAAMvzC,KAAK0zE,QAAQ5rD,MAAM,EAAG,MAC9D,KAAK,UACL,IAAK,MACC9nB,KAAK0zE,QAAQx0D,OAASlf,KAAKuzC,KAAO,GAAGvzC,KAAK0zE,QAAQx0D,KAAK,EAAG,MAChE,KAAK,QACClf,KAAK0zE,QAAQ11D,QAAUhe,KAAKuzC,MAAMvzC,KAAK0zE,QAAQ11D,MAAM,EAAG,MAC9D,KAAK,QAQLhe,KAAK0zE,QAAQzrE,WAAa+0C,IAC5Bh9C,KAAK0zE,QAAU1zE,KAAKu+C,KAAKr1B,SAG3BtnB,EAASyxE,oBAAoBrzE,KAAK+D,OAAQ/D,KAAMg9C,IAOlDj7C,EAASqR,UAAUqgC,WAAa,WAC9B,MAAOzzC,MAAK0zE,SAed3xE,EAASqR,UAAU6uE,SAAW,SAAU1hD,GAClCA,GAAiC,gBAAhBA,GAAOl7B,QAC1BrF,KAAKqF,MAAQk7B,EAAOl7B,MACpBrF,KAAKuzC,KAAOhT,EAAOgT,KAAO,EAAIhT,EAAOgT,KAAO,EAC5CvzC,KAAKwhF,WAAY,IAQrBz/E,EAASqR,UAAU8uE,aAAe,SAAUvqB,GAC1C33D,KAAKwhF,UAAY7pB,GAOnB51D,EAASqR,UAAU0uE,eAAiB,SAAUP,GAC5C,GAAmB56E,QAAf46E,EAAJ,CAMA,GAAIY,GAAW,QACXC,EAAY,OACZC,EAAU,MACVC,EAAW,KACXC,EAAa,IACbC,EAAa,IACbC,EAAkB,CAGP,KAAXN,EAAkBZ,IACpBvhF,KAAKqF,MAAQ,OAAOrF,KAAKuzC,KAAO,KAEnB,IAAX4uC,EAAiBZ,IACnBvhF,KAAKqF,MAAQ,OAAOrF,KAAKuzC,KAAO,KAEnB,IAAX4uC,EAAiBZ,IACnBvhF,KAAKqF,MAAQ,OAAOrF,KAAKuzC,KAAO,KAEnB,GAAX4uC,EAAgBZ,IAClBvhF,KAAKqF,MAAQ,OAAOrF,KAAKuzC,KAAO,IAEnB,GAAX4uC,EAAgBZ,IAClBvhF,KAAKqF,MAAQ,OAAOrF,KAAKuzC,KAAO,IAEnB,EAAX4uC,EAAeZ,IACjBvhF,KAAKqF,MAAQ,OAAOrF,KAAKuzC,KAAO,GAE9B4uC,EAAWZ,IACbvhF,KAAKqF,MAAQ,OAAOrF,KAAKuzC,KAAO,GAElB,EAAZ6uC,EAAgBb,IAClBvhF,KAAKqF,MAAQ,QAAQrF,KAAKuzC,KAAO,GAE/B6uC,EAAYb,IACdvhF,KAAKqF,MAAQ,QAAQrF,KAAKuzC,KAAO,GAErB,EAAV8uC,EAAcd,IAChBvhF,KAAKqF,MAAQ,MAAMrF,KAAKuzC,KAAO,GAEnB,EAAV8uC,EAAcd,IAChBvhF,KAAKqF,MAAQ,MAAMrF,KAAKuzC,KAAO,GAE7B8uC,EAAUd,IACZvhF,KAAKqF,MAAQ,MAAMrF,KAAKuzC,KAAO,GAE7B8uC,EAAU,EAAId,IAChBvhF,KAAKqF,MAAQ,UAAUrF,KAAKuzC,KAAO,GAEtB,EAAX+uC,EAAef,IACjBvhF,KAAKqF,MAAQ,OAAOrF,KAAKuzC,KAAO,GAE9B+uC,EAAWf,IACbvhF,KAAKqF,MAAQ,OAAOrF,KAAKuzC,KAAO,GAEjB,GAAbgvC,EAAkBhB,IACpBvhF,KAAKqF,MAAQ,SAASrF,KAAKuzC,KAAO,IAEnB,GAAbgvC,EAAkBhB,IACpBvhF,KAAKqF,MAAQ,SAASrF,KAAKuzC,KAAO,IAEnB,EAAbgvC,EAAiBhB,IACnBvhF,KAAKqF,MAAQ,SAASrF,KAAKuzC,KAAO,GAEhCgvC,EAAahB,IACfvhF,KAAKqF,MAAQ,SAASrF,KAAKuzC,KAAO,GAEnB,GAAbivC,EAAkBjB,IACpBvhF,KAAKqF,MAAQ,SAASrF,KAAKuzC,KAAO,IAEnB,GAAbivC,EAAkBjB,IACpBvhF,KAAKqF,MAAQ,SAASrF,KAAKuzC,KAAO,IAEnB,EAAbivC,EAAiBjB,IACnBvhF,KAAKqF,MAAQ,SAASrF,KAAKuzC,KAAO,GAEhCivC,EAAajB,IACfvhF,KAAKqF,MAAQ,SAASrF,KAAKuzC,KAAO,GAEd,IAAlBkvC,EAAwBlB,IAC1BvhF,KAAKqF,MAAQ,cAAcrF,KAAKuzC,KAAO,KAEnB,IAAlBkvC,EAAwBlB,IAC1BvhF,KAAKqF,MAAQ,cAAcrF,KAAKuzC,KAAO,KAEnB,GAAlBkvC,EAAuBlB,IACzBvhF,KAAKqF,MAAQ,cAAcrF,KAAKuzC,KAAO,IAEnB,GAAlBkvC,EAAuBlB,IACzBvhF,KAAKqF,MAAQ,cAAcrF,KAAKuzC,KAAO,IAEnB,EAAlBkvC,EAAsBlB,IACxBvhF,KAAKqF,MAAQ,cAAcrF,KAAKuzC,KAAO,GAErCkvC,EAAkBlB,IACpBvhF,KAAKqF,MAAQ,cAAcrF,KAAKuzC,KAAO,KAc3CxxC,EAASwiD,KAAO,SAAUrlC,EAAM7Z,EAAOkuC,GACrC,GAAIrqB,GAAQnlB,EAAOmb,EAEnB,IAAa,QAAT7Z,EAAiB,CACnB,GAAI0Y,GAAOmL,EAAMnL,OAASzY,KAAKgkB,MAAMJ,EAAMlL,QAAU,GACrDkL,GAAMnL,KAAKzY,KAAKgkB,MAAMvL,EAAOw1B,GAAQA,GACrCrqB,EAAMlL,MAAM,GACZkL,EAAMhK,KAAK,GACXgK,EAAMpB,MAAM,GACZoB,EAAMnB,QAAQ,GACdmB,EAAMlB,QAAQ,GACdkB,EAAMjB,aAAa,OACd,IAAa,SAAT5iB,EACL6jB,EAAMhK,OAAS,IACjBgK,EAAMhK,KAAK,GACXgK,EAAMlC,IAAI,EAAG,UAGXkC,EAAMhK,KAAK,GAGfgK,EAAMpB,MAAM,GACZoB,EAAMnB,QAAQ,GACdmB,EAAMlB,QAAQ,GACdkB,EAAMjB,aAAa,OACd,IAAa,OAAT5iB,EAAgB,CAEzB,OAAQkuC,GACN,IAAK,GACL,IAAK,GACHrqB,EAAMpB,MAAuC,GAAjCxiB,KAAKgkB,MAAMJ,EAAMpB,QAAU,IAAU,MACnD,SACEoB,EAAMpB,MAAuC,GAAjCxiB,KAAKgkB,MAAMJ,EAAMpB,QAAU,KAE3CoB,EAAMnB,QAAQ,GACdmB,EAAMlB,QAAQ,GACdkB,EAAMjB,aAAa,OACd,IAAa,WAAT5iB,EAAoB,CAE7B,OAAQkuC,GACN,IAAK,GACL,IAAK,GACHrqB,EAAMpB,MAAuC,GAAjCxiB,KAAKgkB,MAAMJ,EAAMpB,QAAU,IAAU,MACnD,SACEoB,EAAMpB,MAAsC,EAAhCxiB,KAAKgkB,MAAMJ,EAAMpB,QAAU,IAE3CoB,EAAMnB,QAAQ,GACdmB,EAAMlB,QAAQ,GACdkB,EAAMjB,aAAa,OACd,IAAa,QAAT5iB,EAAiB,CAC1B,OAAQkuC,GACN,IAAK,GACHrqB,EAAMnB,QAA2C,GAAnCziB,KAAKgkB,MAAMJ,EAAMnB,UAAY,IAAU,MACvD,SACEmB,EAAMnB,QAA2C,GAAnCziB,KAAKgkB,MAAMJ,EAAMnB,UAAY,KAE/CmB,EAAMlB,QAAQ,GACdkB,EAAMjB,aAAa,OACd,IAAa,UAAT5iB,EAAmB,CAE5B,OAAQkuC,GACN,IAAK,IACL,IAAK,IACHrqB,EAAMnB,QAA0C,EAAlCziB,KAAKgkB,MAAMJ,EAAMnB,UAAY,IAC3CmB,EAAMlB,QAAQ,EACd,MACF,KAAK,GACHkB,EAAMlB,QAA2C,GAAnC1iB,KAAKgkB,MAAMJ,EAAMlB,UAAY,IAAU,MACvD,SACEkB,EAAMlB,QAA2C,GAAnC1iB,KAAKgkB,MAAMJ,EAAMlB,UAAY,KAE/CkB,EAAMjB,aAAa,OACd,IAAa,UAAT5iB,EAET,OAAQkuC,GACN,IAAK,IACL,IAAK,IACHrqB,EAAMlB,QAA0C,EAAlC1iB,KAAKgkB,MAAMJ,EAAMlB,UAAY,IAC3CkB,EAAMjB,aAAa,EACnB,MACF,KAAK,GACHiB,EAAMjB,aAAuD,IAA1C3iB,KAAKgkB,MAAMJ,EAAMjB,eAAiB,KAAc,MACrE,SACEiB,EAAMjB,aAAsD,IAAzC3iB,KAAKgkB,MAAMJ,EAAMjB,eAAiB,UAEpD,IAAa,eAAT5iB,EAAwB,CACjC,GAAIm5C,GAAQjL,EAAO,EAAIA,EAAO,EAAI,CAClCrqB,GAAMjB,aAAa3iB,KAAKgkB,MAAMJ,EAAMjB,eAAiBu2B,GAASA,GAGhE,MAAOt1B,IAQTnnB,EAASqR,UAAUsvE,QAAU,WAC3B,GAAyB,GAArB1iF,KAAK2zE,aAEP,OADA3zE,KAAK2zE,cAAe,EACZ3zE,KAAKqF,OACX,IAAK,OACL,IAAK,QACL,IAAK,UACL,IAAK,MACL,IAAK,OACL,IAAK,SACL,IAAK,SACL,IAAK,cACH,OAAO,CACT,SACE,OAAO,MAEN,IAA0B,GAAtBrF,KAAK4zE,cAEd,OADA5zE,KAAK4zE,eAAgB,EACb5zE,KAAKqF,OACX,IAAK,UACL,IAAK,MACL,IAAK,OACL,IAAK,SACL,IAAK,SACL,IAAK,cACH,OAAO,CACT,SACE,OAAO,MAEN,IAAwB,GAApBrF,KAAK6zE,YAEd,OADA7zE,KAAK6zE,aAAc,EACX7zE,KAAKqF,OACX,IAAK,cACL,IAAK,SACL,IAAK,SACL,IAAK,OACH,OAAO,CACT,SACE,OAAO,EAIb,GAAI6Z,GAAOlf,KAAK+D,OAAO/D,KAAK0zE,QAC5B,QAAQ1zE,KAAKqF,OACX,IAAK,cACH,MAA8B,IAAvB6Z,EAAK+I,cACd,KAAK,SACH,MAAyB,IAAlB/I,EAAK8I,SACd,KAAK,SACH,MAAuB,IAAhB9I,EAAK4I,SAAkC,GAAlB5I,EAAK6I,SACnC,KAAK,OACH,MAAuB,IAAhB7I,EAAK4I,OACd,KAAK,UACL,IAAK,MACH,MAAsB,IAAf5I,EAAKA,MACd,KAAK,QACH,MAAuB,IAAhBA,EAAKlB,OACd,KAAK,OACH,OAAO,CACT,SACE,OAAO,IAUbjc,EAASqR,UAAUuvE,cAAgB,SAAUzjE,GAC/BvY,QAARuY,IACFA,EAAOlf,KAAK0zE,QAGd,IAAIlgE,GAASxT,KAAKwT,OAAOkuE,YAAY1hF,KAAKqF,MAC1C,OAAOmO,IAAUA,EAAO9M,OAAS,EAAI1G,KAAK+D,OAAOmb,GAAM1L,OAAOA,GAAU,IAS1EzR,EAASqR,UAAUwvE,cAAgB,SAAU1jE,GAC/BvY,QAARuY,IACFA,EAAOlf,KAAK0zE,QAGd,IAAIlgE,GAASxT,KAAKwT,OAAOmuE,YAAY3hF,KAAKqF,MAC1C,OAAOmO,IAAUA,EAAO9M,OAAS,EAAI1G,KAAK+D,OAAOmb,GAAM1L,OAAOA,GAAU,IAG1EzR,EAASqR,UAAUyvE,aAAe,WAMhC,QAASC,GAAK19E,GACZ,MAAOA,GAAQmuC,EAAO,GAAK,EAAI,YAAc,WAG/C,QAASwvC,GAAM7jE,GACb,MAAIA,GAAKsN,OAAO,GAAI9mB,MAAQ,OACnB,aAELwZ,EAAKsN,OAAOwO,IAAUhU,IAAI,EAAG,OAAQ,OAChC,gBAEL9H,EAAKsN,OAAOwO,IAAUhU,IAAI,GAAI,OAAQ,OACjC,iBAEF,GAGT,QAASg8D,GAAY9jE,GACnB,MAAOA,GAAKsN,OAAO,GAAI9mB,MAAQ,QAAU,oBAAsB,GAGjE,QAASu9E,GAAa/jE,GACpB,MAAOA,GAAKsN,OAAO,GAAI9mB,MAAQ,SAAW,qBAAuB,GAGnE,QAASw9E,GAAYhkE,GACnB,MAAOA,GAAKsN,OAAO,GAAI9mB,MAAQ,QAAU,oBAAsB,GA/BjE,GAAIs1B,GAAUh7B,KAAK+D,OACfvD,EAAIR,KAAK+D,OAAO/D,KAAK0zE,SACrBA,EAAUlzE,EAAEiT,OAASjT,EAAEiT,OAAO,MAAQjT,EAAEm2B,KAAK,MAC7C4c,EAAOvzC,KAAKuzC,IA+BhB,QAAQvzC,KAAKqF,OACX,IAAK,cACH,MAAOy9E,GAAKpP,EAAQzrD,gBAAgB/Y,MAEtC,KAAK,SACH,MAAO4zE,GAAKpP,EAAQ1rD,WAAW9Y,MAEjC,KAAK,SACH,MAAO4zE,GAAKpP,EAAQ3rD,WAAW7Y,MAEjC,KAAK,OACH,GAAI4Y,GAAQ4rD,EAAQ5rD,OAIpB,OAHiB,IAAb9nB,KAAKuzC,OACPzrB,EAAQA,EAAQ,MAAQA,EAAQ,IAE3B,QAAUA,EAAQi7D,EAAMrP,GAAWoP,EAAKpP,EAAQ5rD,QAEzD,KAAK,UACH,MAAO,OAAS4rD,EAAQlgE,OAAO,QAAQoF,cAAgBmqE,EAAMrP,GAAWsP,EAAYtP,GAAWoP,EAAKpP,EAAQx0D,OAE9G,KAAK,MACH,GAAIwH,GAAMgtD,EAAQx0D,OACdlB,EAAQ01D,EAAQlgE,OAAO,QAAQoF,aACnC,OAAO,UAAY8N,EAAM,QAAU1I,EAAQilE,EAAavP,GAAWoP,EAAKp8D,EAAM,EAEhF,KAAK,QACH,MAAO,OAASgtD,EAAQlgE,OAAO,QAAQoF,cAAgBqqE,EAAavP,GAAWoP,EAAKpP,EAAQ11D,QAE9F,KAAK,OACH,GAAID,GAAO21D,EAAQ31D,MACnB,OAAO,WAAaA,EAAOmlE,EAAYxP,GAAWoP,EAAK/kE,EAEzD,SACE,MAAO,KAIble,EAAOD,QAAUmC,GAIb,SAASlC,EAAQD,EAASM,GAc9B,QAAS4C,GAAM8hD,EAASprC,EAAM6nC,GAC5BrhD,KAAK4kD,QAAUA,EACf5kD,KAAKmjF,aACLnjF,KAAKojF,cAAgB,EACrBpjF,KAAKqjF,gBAAkB7pE,GAAQA,EAAK8pE,cACpCtjF,KAAKqhD,QAAUA,EAEfrhD,KAAKw6C,OACLx6C,KAAKiH,OACH63B,OACEM,MAAO,EACPC,OAAQ,IAGZr/B,KAAKkJ,UAAY,KAEjBlJ,KAAKiC,SACLjC,KAAKg8E,gBACLh8E,KAAKkR,cACHqyE,WACAC,UAEFxjF,KAAKyjF,kBAAmB,CACxB,IAAI7iD,GAAK5gC,IACTA,MAAKqhD,QAAQlB,KAAKE,QAAQrgB,GAAG,mBAAoB,WAC/CY,EAAG6iD,kBAAmB,IAGxBzjF,KAAKkgD,UAELlgD,KAAKqkC,QAAQ7qB,GAxCf,GAAI7Y,GAAOT,EAAoB,GAC3B4B,EAAQ5B,EAAoB,GAChBA,GAAoB,GA6CpC4C,GAAMsQ,UAAU8sC,QAAU,WACxB,GAAIphB,GAAQd,SAASM,cAAc,MAC/Bt+B,MAAKqhD,QAAQx9C,QAAQ21E,cAAc53C,MACrC9C,EAAM51B,UAAY,sBAElB41B,EAAM51B,UAAY,YAEpBlJ,KAAKw6C,IAAI1b,MAAQA,CAEjB,IAAI4kD,GAAQ1lD,SAASM,cAAc,MACnColD,GAAMx6E,UAAY,YAClB41B,EAAMZ,YAAYwlD,GAClB1jF,KAAKw6C,IAAIkpC,MAAQA,CAEjB,IAAIh/B,GAAa1mB,SAASM,cAAc,MACxComB,GAAWx7C,UAAY,YACvBw7C,EAAW,kBAAoB1kD,KAC/BA,KAAKw6C,IAAIkK,WAAaA,EAEtB1kD,KAAKw6C,IAAIpsC,WAAa4vB,SAASM,cAAc,OAC7Ct+B,KAAKw6C,IAAIpsC,WAAWlF,UAAY,YAEhClJ,KAAKw6C,IAAIuF,KAAO/hB,SAASM,cAAc,OACvCt+B,KAAKw6C,IAAIuF,KAAK72C,UAAY,YAK1BlJ,KAAKw6C,IAAImpC,OAAS3lD,SAASM,cAAc,OACzCt+B,KAAKw6C,IAAImpC,OAAO10E,MAAM0oE,WAAa,SACnC33E,KAAKw6C,IAAImpC,OAAOj0C,UAAY,IAC5B1vC,KAAKw6C,IAAIpsC,WAAW8vB,YAAYl+B,KAAKw6C,IAAImpC,SAO3C7gF,EAAMsQ,UAAUixB,QAAU,SAAU7qB,GAElC,GAAIylB,EAOJ,IALEA,EADEj/B,KAAKqhD,QAAQx9C,SAAW7D,KAAKqhD,QAAQx9C,QAAQ46B,cACrCz+B,KAAKqhD,QAAQx9C,QAAQ46B,cAAcjlB,GAEnCA,GAAQA,EAAKylB,QAGrBA,YAAmB2kD,SAAS,CAE9B,IADA5jF,KAAKw6C,IAAIkpC,MAAMxlD,YAAYe,GACpBj/B,KAAKw6C,IAAIkpC,MAAM5+E,YACpB9E,KAAKw6C,IAAIkpC,MAAM3+E,YAAY/E,KAAKw6C,IAAIkpC,MAAM5+E,WAE5C9E,MAAKw6C,IAAIkpC,MAAMxlD,YAAYe,OACNt4B,UAAZs4B,GAAqC,OAAZA,EAClCj/B,KAAKw6C,IAAIkpC,MAAMh0C,UAAYzQ,EAE3Bj/B,KAAKw6C,IAAIkpC,MAAMh0C,UAAY1vC,KAAK4kD,SAAW,EAI7C5kD,MAAKw6C,IAAI1b,MAAM63C,MAAQn9D,GAAQA,EAAKm9D,OAAS,GAExC32E,KAAKw6C,IAAIkpC,MAAM5+E,WAGlBnE,EAAK2I,gBAAgBtJ,KAAKw6C,IAAIkpC,MAAO,cAFrC/iF,EAAKsI,aAAajJ,KAAKw6C,IAAIkpC,MAAO,aAMpC,IAAIx6E,GAAYsQ,GAAQA,EAAKtQ,WAAa,IACtCA,IAAalJ,KAAKkJ,YAChBlJ,KAAKkJ,YACPvI,EAAK2I,gBAAgBtJ,KAAKw6C,IAAI1b,MAAO9+B,KAAKkJ,WAC1CvI,EAAK2I,gBAAgBtJ,KAAKw6C,IAAIkK,WAAY1kD,KAAKkJ,WAC/CvI,EAAK2I,gBAAgBtJ,KAAKw6C,IAAIpsC,WAAYpO,KAAKkJ,WAC/CvI,EAAK2I,gBAAgBtJ,KAAKw6C,IAAIuF,KAAM//C,KAAKkJ,YAE3CvI,EAAKsI,aAAajJ,KAAKw6C,IAAI1b,MAAO51B,GAClCvI,EAAKsI,aAAajJ,KAAKw6C,IAAIkK,WAAYx7C,GACvCvI,EAAKsI,aAAajJ,KAAKw6C,IAAIpsC,WAAYlF,GACvCvI,EAAKsI,aAAajJ,KAAKw6C,IAAIuF,KAAM72C,GACjClJ,KAAKkJ,UAAYA,GAIflJ,KAAKiP,QACPtO,EAAK6O,cAAcxP,KAAKw6C,IAAI1b,MAAO9+B,KAAKiP,OACxCjP,KAAKiP,MAAQ,MAEXuK,GAAQA,EAAKvK,QACftO,EAAK0O,WAAWrP,KAAKw6C,IAAI1b,MAAOtlB,EAAKvK,OACrCjP,KAAKiP,MAAQuK,EAAKvK,QAQtBnM,EAAMsQ,UAAUywE,cAAgB,WAC9B,MAAO7jF,MAAKiH,MAAM63B,MAAMM,OAU1Bt8B,EAAMsQ,UAAUk6B,OAAS,SAAU4T,EAAO/b,EAAQm3C,GAChD,GAAIpK,IAAU,EAIV4R,EAAe9jF,KAAKw6C,IAAImpC,OAAOrzC,YAgBnC,IAfIwzC,GAAgB9jF,KAAK+jF,mBACvB/jF,KAAK+jF,iBAAmBD,EAExBnjF,EAAK8I,QAAQzJ,KAAKiC,MAAO,SAAU0P,GACjCA,EAAKgqE,OAAQ,EACThqE,EAAKiqE,WAAWjqE,EAAK27B,WAG3BgvC,GAAU,GAIZt8E,KAAKgkF,4BAGqC,kBAA/BhkF,MAAKqhD,QAAQx9C,QAAQ+9B,MAAsB,CAGpD,GAAI06C,EAAS,CAIX,GAAI17C,GAAK5gC,KACLikF,GAAY,CAChBtjF,GAAK8I,QAAQzJ,KAAKiC,MAAO,SAAU0P,GAC5BA,EAAKiqE,YACRjqE,EAAK27B,SACL1M,EAAGo7C,aAAar0E,KAAKgK,IAEvBA,EAAKkyC,YAAYogC,IAInB,IAAIC,GAAqBlkF,KAAKkR,aAAaqyE,QAAQl2E,QAAQ4S,KAAK,SAAU3Z,EAAGC,GAC3E,MAAOq6B,GAAGygB,QAAQx9C,QAAQ+9B,MAAMt7B,EAAEkT,KAAMjT,EAAEiT,OAE5C1X,GAAMA,MAAMoiF,EAAoB/+C,GAAQ,GAG1CnlC,KAAKg8E,aAAeh8E,KAAKmkF,oBAAoBnkF,KAAKkR,aAAclR,KAAKg8E,aAAc96B,OAGnFlhD,MAAKg8E,aAAeh8E,KAAKmkF,oBAAoBnkF,KAAKkR,aAAclR,KAAKg8E,aAAc96B,GAE/ElhD,KAAKqhD,QAAQx9C,QAAQ/B,MAEvBA,EAAMA,MAAM9B,KAAKg8E,aAAc72C,EAAQm3C,GAGvCx6E,EAAMsiF,QAAQpkF,KAAKg8E,aAAc72C,EAAQnlC,KAAKmjF,UAKlD,IAAI9jD,GAASr/B,KAAKqkF,iBAAiBl/C,GAG/Buf,EAAa1kD,KAAKw6C,IAAIkK,UAC1B1kD,MAAKgJ,IAAM07C,EAAW4/B,UACtBtkF,KAAK8I,KAAO47C,EAAWy6B,WACvBn/E,KAAKo/B,MAAQslB,EAAW7J,YACxBq3B,EAAUvxE,EAAKkJ,eAAe7J,KAAM,SAAUq/B,IAAW6yC,EAGzDA,EAAUvxE,EAAKkJ,eAAe7J,KAAKiH,MAAM63B,MAAO,QAAS9+B,KAAKw6C,IAAIkpC,MAAMp4C,cAAgB4mC,EACxFA,EAAUvxE,EAAKkJ,eAAe7J,KAAKiH,MAAM63B,MAAO,SAAU9+B,KAAKw6C,IAAIkpC,MAAMpzC,eAAiB4hC,EAG1FlyE,KAAKw6C,IAAIpsC,WAAWa,MAAMowB,OAASA,EAAS,KAC5Cr/B,KAAKw6C,IAAIkK,WAAWz1C,MAAMowB,OAASA,EAAS,KAC5Cr/B,KAAKw6C,IAAI1b,MAAM7vB,MAAMowB,OAASA,EAAS,IAGvC,KAAK,GAAIx4B,GAAI,EAAG20B,EAAKx7B,KAAKg8E,aAAat1E,OAAY80B,EAAJ30B,EAAQA,IAAK,CAC1D,GAAI8K,GAAO3R,KAAKg8E,aAAan1E,EAC7B8K,GAAK4yE,YAAYp/C,GAGnB,MAAO+sC,IAOTpvE,EAAMsQ,UAAU4wE,0BAA4B,WAC1C,GAAIz8E,OAAO6H,KAAKpP,KAAKmjF,WAAWz8E,OAAS,EAAG,CAC1C,GAAIk6B,GAAK5gC,IAETA,MAAKwkF,iBAEL7jF,EAAK8I,QAAQzJ,KAAKg8E,aAAc,SAAUrqE,GACbhL,SAAvBgL,EAAK6H,KAAKqkE,WACZj9C,EAAGuiD,UAAUxxE,EAAK6H,KAAKqkE,UAAUx+C,OAAS/5B,KAAKJ,IAAI07B,EAAGuiD,UAAUxxE,EAAK6H,KAAKqkE,UAAUx+C,OAAQ1tB,EAAK0tB,QACjGuB,EAAGuiD,UAAUxxE,EAAK6H,KAAKqkE,UAAU/pC,SAAU,OAYnDhxC,EAAMsQ,UAAUixE,iBAAmB,SAAUl/C,GAE3C,GAAI9F,GACA28C,EAAeh8E,KAAKg8E,YACxB,IAAIA,EAAat1E,OAAS,EAAG,CAC3B,GAAIzB,GAAM+2E,EAAa,GAAGhzE,IACtB9D,EAAM82E,EAAa,GAAGhzE,IAAMgzE,EAAa,GAAG38C,MAKhD,IAJA1+B,EAAK8I,QAAQuyE,EAAc,SAAUrqE,GACnC1M,EAAMK,KAAKL,IAAIA,EAAK0M,EAAK3I,KACzB9D,EAAMI,KAAKJ,IAAIA,EAAKyM,EAAK3I,IAAM2I,EAAK0tB,UAElCp6B,EAAMkgC,EAAO4a,KAAM,CAErB,GAAIx3B,GAAStjB,EAAMkgC,EAAO4a,IAC1B76C,IAAOqjB,EACP5nB,EAAK8I,QAAQuyE,EAAc,SAAUrqE,GACnCA,EAAK3I,KAAOuf,IAGhB8W,EAASn6B,EAAMigC,EAAOxzB,KAAKo/B,SAAW,MAEtC1R,GAAS,CAIX,OAFAA,GAAS/5B,KAAKJ,IAAIm6B,EAAQr/B,KAAKiH,MAAM63B,MAAMO,SAQ7Cv8B,EAAMsQ,UAAUwwC,KAAO,WAChB5jD,KAAKw6C,IAAI1b,MAAMtzB,YAClBxL,KAAKqhD,QAAQ7G,IAAImK,SAASzmB,YAAYl+B,KAAKw6C,IAAI1b,OAG5C9+B,KAAKw6C,IAAIkK,WAAWl5C,YACvBxL,KAAKqhD,QAAQ7G,IAAIkK,WAAWxmB,YAAYl+B,KAAKw6C,IAAIkK,YAG9C1kD,KAAKw6C,IAAIpsC,WAAW5C,YACvBxL,KAAKqhD,QAAQ7G,IAAIpsC,WAAW8vB,YAAYl+B,KAAKw6C,IAAIpsC,YAG9CpO,KAAKw6C,IAAIuF,KAAKv0C,YACjBxL,KAAKqhD,QAAQ7G,IAAIuF,KAAK7hB,YAAYl+B,KAAKw6C,IAAIuF,OAO/Cj9C,EAAMsQ,UAAUyoE,KAAO,WACrB,GAAI/8C,GAAQ9+B,KAAKw6C,IAAI1b,KACjBA,GAAMtzB,YACRszB,EAAMtzB,WAAWzG,YAAY+5B,EAG/B,IAAI4lB,GAAa1kD,KAAKw6C,IAAIkK,UACtBA,GAAWl5C,YACbk5C,EAAWl5C,WAAWzG,YAAY2/C,EAGpC,IAAIt2C,GAAapO,KAAKw6C,IAAIpsC,UACtBA,GAAW5C,YACb4C,EAAW5C,WAAWzG,YAAYqJ,EAGpC,IAAI2xC,GAAO//C,KAAKw6C,IAAIuF,IAChBA,GAAKv0C,YACPu0C,EAAKv0C,WAAWzG,YAAYg7C,IAQhCj9C,EAAMsQ,UAAU4T,IAAM,SAAUrV,GAc9B,GAbA3R,KAAKiC,MAAM0P,EAAKtR,IAAMsR,EACtBA,EAAK8yE,UAAUzkF,MAGY2G,SAAvBgL,EAAK6H,KAAKqkE,WAC+Bl3E,SAAvC3G,KAAKmjF,UAAUxxE,EAAK6H,KAAKqkE,YAC3B79E,KAAKmjF,UAAUxxE,EAAK6H,KAAKqkE,WAAcx+C,OAAQ,EAAGyU,SAAS,EAAOvqC,MAAOvJ,KAAKojF,cAAenhF,UAC7FjC,KAAKojF,iBAEPpjF,KAAKmjF,UAAUxxE,EAAK6H,KAAKqkE,UAAU57E,MAAM0F,KAAKgK,IAEhD3R,KAAK0kF,iBAEkC,IAAnC1kF,KAAKg8E,aAAat0E,QAAQiK,GAAa,CACzC,GAAIuvC,GAAQlhD,KAAKqhD,QAAQlB,KAAKe,KAC9BlhD,MAAK2kF,gBAAgBhzE,EAAM3R,KAAKg8E,aAAc96B,KAIlDp+C,EAAMsQ,UAAUsxE,eAAiB,WAC/B,GAA6B/9E,SAAzB3G,KAAKqjF,gBAA+B,CACtC,GAAIuB,KACJ,IAAmC,gBAAxB5kF,MAAKqjF,gBAA6B,CAC3C,IAAK,GAAIxF,KAAY79E,MAAKmjF,UACxByB,EAAUj9E,MAAOk2E,SAAUA,EAAUgH,UAAW7kF,KAAKmjF,UAAUtF,GAAU57E,MAAM,GAAGuX,KAAKxZ,KAAKqjF,kBAE9FuB,GAAU3kE,KAAK,SAAU3Z,EAAGC,GAC1B,MAAOD,GAAEu+E,UAAYt+E,EAAEs+E,gBAEpB,IAAmC,kBAAxB7kF,MAAKqjF,gBAA+B,CACpD,IAAK,GAAIxF,KAAY79E,MAAKmjF,UACxByB,EAAUj9E,KAAK3H,KAAKmjF,UAAUtF,GAAU57E,MAAM,GAAGuX,KAEnDorE,GAAU3kE,KAAKjgB,KAAKqjF,iBAGtB,GAAIuB,EAAUl+E,OAAS,EACrB,IAAK,GAAIG,GAAI,EAAGA,EAAI+9E,EAAUl+E,OAAQG,IACpC7G,KAAKmjF,UAAUyB,EAAU/9E,GAAGg3E,UAAUt0E,MAAQ1C,IAMtD/D,EAAMsQ,UAAUoxE,eAAiB,WAC/B,IAAK,GAAI3G,KAAY79E,MAAKmjF,UACpBnjF,KAAKmjF,UAAU/8E,eAAey3E,KAChC79E,KAAKmjF,UAAUtF,GAAU/pC,SAAU,IASzChxC,EAAMsQ,UAAUmvB,OAAS,SAAU5wB,SAC1B3R,MAAKiC,MAAM0P,EAAKtR,IACvBsR,EAAK8yE,UAAU,KAGf,IAAIl7E,GAAQvJ,KAAKg8E,aAAat0E,QAAQiK,EAGtC,IAFa,IAATpI,GAAavJ,KAAKg8E,aAAaxyE,OAAOD,EAAO,GAEtB5C,SAAvBgL,EAAK6H,KAAKqkE,SAAwB,CACpC,GAAIA,GAAW79E,KAAKmjF,UAAUxxE,EAAK6H,KAAKqkE,SACxC,IAAIA,EAAU,CACZ,GAAIl1B,GAAYk1B,EAAS57E,MAAMyF,QAAQiK,EACvCksE,GAAS57E,MAAMuH,OAAOm/C,EAAW,GAC5Bk1B,EAAS57E,MAAMyE,eACX1G,MAAKmjF,UAAUxxE,EAAK6H,KAAKqkE,UAChC79E,KAAKojF,iBAEPpjF,KAAK0kF,oBASX5hF,EAAMsQ,UAAU0xE,kBAAoB,SAAUnzE,GAC5C3R,KAAKqhD,QAAQi8B,WAAW3rE,EAAKtR,KAM/ByC,EAAMsQ,UAAUwuB,MAAQ,WAKtB,IAAK,GAJDh4B,GAAQjJ,EAAKgJ,QAAQ3J,KAAKiC,OAC1B8iF,KACA/G,KAEKn3E,EAAI,EAAGA,EAAI+C,EAAMlD,OAAQG,IACNF,SAAtBiD,EAAM/C,GAAG2S,KAAKk6B,KAChBsqC,EAASr2E,KAAKiC,EAAM/C,IAEtBk+E,EAAWp9E,KAAKiC,EAAM/C,GAExB7G,MAAKkR,cACHqyE,QAASwB,EACTvB,MAAOxF,GAGTl8E,EAAMkjF,aAAahlF,KAAKkR,aAAaqyE,SACrCzhF,EAAMmjF,WAAWjlF,KAAKkR,aAAasyE,QAWrC1gF,EAAMsQ,UAAU+wE,oBAAsB,SAAUjzE,EAAcg0E,EAAiBhkC,GAC7E,GAKIvvC,GAAM9K,EALNm1E,KACAmJ,KACAvnC,GAAYsD,EAAMxN,IAAMwN,EAAM1N,OAAS,EACvC4xC,EAAalkC,EAAM1N,MAAQoK,EAC3BynC,EAAankC,EAAMxN,IAAMkK,EAIzB0nC,EAAiB,SAAwBlgF,GAC3C,MAAYggF,GAARhgF,EACK,GACWigF,GAATjgF,EACF,EAEA,EAOX,IAAI8/E,EAAgBx+E,OAAS,EAC3B,IAAKG,EAAI,EAAGA,EAAIq+E,EAAgBx+E,OAAQG,IACtC7G,KAAKulF,6BAA6BL,EAAgBr+E,GAAIm1E,EAAcmJ,EAAoBjkC,EAK5F,IAAIskC,GAAoB7kF,EAAKsQ,mBAAmBC,EAAaqyE,QAAS+B,EAAgB,OAAQ,QAS9F,IANAtlF,KAAKylF,cAAcD,EAAmBt0E,EAAaqyE,QAASvH,EAAcmJ,EAAoB,SAAUxzE,GACtG,MAAOA,GAAK6H,KAAKg6B,MAAQ4xC,GAAczzE,EAAK6H,KAAKg6B,MAAQ6xC,IAK9B,GAAzBrlF,KAAKyjF,iBAEP,IADAzjF,KAAKyjF,kBAAmB,EACnB58E,EAAI,EAAGA,EAAIqK,EAAasyE,MAAM98E,OAAQG,IACzC7G,KAAKulF,6BAA6Br0E,EAAasyE,MAAM38E,GAAIm1E,EAAcmJ,EAAoBjkC,OAExF,CAEL,GAAIwkC,GAAkB/kF,EAAKsQ,mBAAmBC,EAAasyE,MAAO8B,EAAgB,OAAQ,MAG1FtlF,MAAKylF,cAAcC,EAAiBx0E,EAAasyE,MAAOxH,EAAcmJ,EAAoB,SAAUxzE,GAClG,MAAOA,GAAK6H,KAAKk6B,IAAM0xC,GAAczzE,EAAK6H,KAAKk6B,IAAM2xC,IAKzD,IAAKx+E,EAAI,EAAGA,EAAIm1E,EAAat1E,OAAQG,IACnC8K,EAAOqqE,EAAan1E,GACf8K,EAAKiqE,WAAWjqE,EAAKiyC,OAE1BjyC,EAAKkyC,aAgBP,OAAOm4B,IAGTl5E,EAAMsQ,UAAUqyE,cAAgB,SAAUE,EAAY1jF,EAAO+5E,EAAcmJ,EAAoBS,GAC7F,GAAIj0E,GACA9K,CAEJ,IAAkB,IAAd8+E,EAAkB,CACpB,IAAK9+E,EAAI8+E,EAAY9+E,GAAK,IACxB8K,EAAO1P,EAAM4E,IACT++E,EAAej0E,IAFQ9K,IAKWF,SAAhCw+E,EAAmBxzE,EAAKtR,MAC1B8kF,EAAmBxzE,EAAKtR,KAAM,EAC9B27E,EAAar0E,KAAKgK,GAKxB,KAAK9K,EAAI8+E,EAAa,EAAG9+E,EAAI5E,EAAMyE,SACjCiL,EAAO1P,EAAM4E,IACT++E,EAAej0E,IAFsB9K,IAKHF,SAAhCw+E,EAAmBxzE,EAAKtR,MAC1B8kF,EAAmBxzE,EAAKtR,KAAM,EAC9B27E,EAAar0E,KAAKgK,MAkB5B7O,EAAMsQ,UAAUuxE,gBAAkB,SAAUhzE,EAAMqqE,EAAc96B,GAC1DvvC,EAAKk0E,UAAU3kC,IACZvvC,EAAKiqE,WAAWjqE,EAAKiyC,OAE1BjyC,EAAKkyC,cACLm4B,EAAar0E,KAAKgK,IAEdA,EAAKiqE,WAAWjqE,EAAKkqE,QAe7B/4E,EAAMsQ,UAAUmyE,6BAA+B,SAAU5zE,EAAMqqE,EAAcmJ,EAAoBjkC,GAC3FvvC,EAAKk0E,UAAU3kC,GACmBv6C,SAAhCw+E,EAAmBxzE,EAAKtR,MAC1B8kF,EAAmBxzE,EAAKtR,KAAM,EAC9B27E,EAAar0E,KAAKgK,IAGhBA,EAAKiqE,WAAWjqE,EAAKkqE,QAI7Bh8E,EAAOD,QAAUkD,GAIb,SAASjD,EAAQD,GAKrB,GAAIkmF,GAAU,IAMdlmF,GAAQolF,aAAe,SAAU/iF,GAC/BA,EAAMge,KAAK,SAAU3Z,EAAGC,GACtB,MAAOD,GAAEkT,KAAKg6B,MAAQjtC,EAAEiT,KAAKg6B,SASjC5zC,EAAQqlF,WAAa,SAAUhjF,GAC7BA,EAAMge,KAAK,SAAU3Z,EAAGC,GACtB,GAAIw/E,GAAQ,OAASz/E,GAAEkT,KAAOlT,EAAEkT,KAAKk6B,IAAMptC,EAAEkT,KAAKg6B,MAC9CwyC,EAAQ,OAASz/E,GAAEiT,KAAOjT,EAAEiT,KAAKk6B,IAAMntC,EAAEiT,KAAKg6B,KAElD,OAAOuyC,GAAQC,KAenBpmF,EAAQkC,MAAQ,SAAUG,EAAOkjC,EAAQwmC,GACvC,GAAI9kE,GAAGo/E,CAEP,IAAIta,EAEF,IAAK9kE,EAAI,EAAGo/E,EAAOhkF,EAAMyE,OAAYu/E,EAAJp/E,EAAUA,IACzC5E,EAAM4E,GAAGmC,IAAM,IAKnB,KAAKnC,EAAI,EAAGo/E,EAAOhkF,EAAMyE,OAAYu/E,EAAJp/E,EAAUA,IAAK,CAC9C,GAAI8K,GAAO1P,EAAM4E,EACjB,IAAI8K,EAAK7P,OAAsB,OAAb6P,EAAK3I,IAAc,CAEnC2I,EAAK3I,IAAMm8B,EAAO4a,IAElB,GAAG,CAID,IAAK,GADDmmC,GAAgB,KACXt1E,EAAI,EAAGu1E,EAAKlkF,EAAMyE,OAAYy/E,EAAJv1E,EAAQA,IAAK,CAC9C,GAAI9J,GAAQ7E,EAAM2O,EAClB,IAAkB,OAAd9J,EAAMkC,KAAgBlC,IAAU6K,GAAQ7K,EAAMhF,OAASlC,EAAQwmF,UAAUz0E,EAAM7K,EAAOq+B,EAAOxzB,MAAO,CACtGu0E,EAAgBp/E,CAChB,QAIiB,MAAjBo/E,IAEFv0E,EAAK3I,IAAMk9E,EAAcl9E,IAAMk9E,EAAc7mD,OAAS8F,EAAOxzB,KAAKo/B,gBAE7Dm1C,MAYftmF,EAAQwkF,QAAU,SAAUniF,EAAOkjC,EAAQg+C,GACzC,GAAIt8E,GAAGo/E,EAAM1tB,CAGb,KAAK1xD,EAAI,EAAGo/E,EAAOhkF,EAAMyE,OAAYu/E,EAAJp/E,EAAUA,IACzC,GAA+BF,SAA3B1E,EAAM4E,GAAG2S,KAAKqkE,SAAwB,CACxCtlB,EAASpzB,EAAO4a,IAChB,KAAK,GAAI89B,KAAYsF,GACfA,EAAU/8E,eAAey3E,IACQ,GAA/BsF,EAAUtF,GAAU/pC,SAAmBqvC,EAAUtF,GAAUt0E,MAAQ45E,EAAUlhF,EAAM4E,GAAG2S,KAAKqkE,UAAUt0E,QACvGgvD,GAAU4qB,EAAUtF,GAAUx+C,OAAS8F,EAAOxzB,KAAKo/B,SAIzD9uC,GAAM4E,GAAGmC,IAAMuvD,MAEft2D,GAAM4E,GAAGmC,IAAMm8B,EAAO4a,MAe5BngD,EAAQwmF,UAAY,SAAU9/E,EAAGC,EAAG4+B,GAClC,MAAO7+B,GAAEwC,KAAOq8B,EAAO2L,WAAag1C,EAAUv/E,EAAEuC,KAAOvC,EAAE64B,OAAS94B,EAAEwC,KAAOxC,EAAE84B,MAAQ+F,EAAO2L,WAAag1C,EAAUv/E,EAAEuC,MAAQxC,EAAE0C,IAAMm8B,EAAO4L,SAAW+0C,EAAUv/E,EAAEyC,IAAMzC,EAAE84B,QAAU/4B,EAAE0C,IAAM1C,EAAE+4B,OAAS8F,EAAO4L,SAAW+0C,EAAUv/E,EAAEyC,MAKpO,SAASnJ,EAAQD,EAASM,GAiB9B,QAASoC,GAAUkX,EAAMm3D,EAAY9sE,GASnC,GARA7D,KAAKiH,OACHg4B,SACEG,MAAO,IAGXp/B,KAAKiU,UAAW,EAGZuF,EAAM,CACR,GAAkB7S,QAAd6S,EAAKg6B,MACP,KAAM,IAAIpsC,OAAM,oCAAsCoS,EAAKnZ,GAE7D,IAAgBsG,QAAZ6S,EAAKk6B,IACP,KAAM,IAAItsC,OAAM,kCAAoCoS,EAAKnZ,IAI7D6B,EAAK3B,KAAKP,KAAMwZ,EAAMm3D,EAAY9sE,GA/BpC,GACI3B,IADShC,EAAoB,IACtBA,EAAoB,IAiC/BoC,GAAU8Q,UAAY,GAAIlR,GAAK,KAAM,KAAM,MAE3CI,EAAU8Q,UAAUizE,cAAgB,qBAOpC/jF,EAAU8Q,UAAUyyE,UAAY,SAAU3kC,GAExC,MAAOlhD,MAAKwZ,KAAKg6B,MAAQ0N,EAAMxN,KAAO1zC,KAAKwZ,KAAKk6B,IAAMwN,EAAM1N,OAM9DlxC,EAAU8Q,UAAUk6B,OAAS,WAC3B,GAAIkN,GAAMx6C,KAAKw6C,GA2Bf,IA1BKA,IAEHx6C,KAAKw6C,OACLA,EAAMx6C,KAAKw6C,IAGXA,EAAIwgC,IAAMh9C,SAASM,cAAc,OAIjCkc,EAAIpP,MAAQpN,SAASM,cAAc,OACnCkc,EAAIpP,MAAMliC,UAAY,oBACtBsxC,EAAIwgC,IAAI98C,YAAYsc,EAAIpP,OAGxBoP,EAAIvb,QAAUjB,SAASM,cAAc,OACrCkc,EAAIvb,QAAQ/1B,UAAY,mBACxBsxC,EAAIpP,MAAMlN,YAAYsc,EAAIvb,SAG1Bub,EAAIwgC,IAAI,iBAAmBh7E,KAE3BA,KAAK27E,OAAQ,IAIV37E,KAAK0L,OACR,KAAM,IAAItE,OAAM,yCAElB,KAAKozC,EAAIwgC,IAAIxvE,WAAY,CACvB,GAAIk5C,GAAa1kD,KAAK0L,OAAO8uC,IAAIkK,UACjC,KAAKA,EACH,KAAM,IAAIt9C,OAAM,iEAElBs9C,GAAWxmB,YAAYsc,EAAIwgC,KAQ7B,GANAh7E,KAAK47E,WAAY,EAMb57E,KAAK27E,MAAO,CACd37E,KAAKsmF,gBAAgBtmF,KAAKw6C,IAAIvb,SAC9Bj/B,KAAKumF,aAAavmF,KAAKw6C,IAAIwgC,KAC3Bh7E,KAAKwmF,sBAAsBxmF,KAAKw6C,IAAIwgC,KACpCh7E,KAAKymF,aAAazmF,KAAKw6C,IAAIwgC,IAE3B,IAAI3B,IAAYr5E,KAAK6D,QAAQw1E,SAASC,YAAct5E,KAAK6D,QAAQw1E,SAASE,aAAev5E,KAAKq5E,YAAa,IAASr5E,KAAKq5E,YAAa,EAGlInwE,GAAalJ,KAAKwZ,KAAKtQ,UAAY,IAAMlJ,KAAKwZ,KAAKtQ,UAAY,KAAOlJ,KAAKooD,SAAW,gBAAkB,KAAOixB,EAAW,gBAAkB,gBAChJ7+B,GAAIwgC,IAAI9xE,UAAYlJ,KAAKqmF,cAAgBn9E,EAGzClJ,KAAKiU,SAA2D,WAAhD/I,OAAOw7E,iBAAiBlsC,EAAIpP,OAAOn3B,SAKnDjU,KAAKw6C,IAAIvb,QAAQhwB,MAAM03E,SAAW,OAClC3mF,KAAKiH,MAAMg4B,QAAQG,MAAQp/B,KAAKw6C,IAAIvb,QAAQ4b,YAC5C76C,KAAKq/B,OAASr/B,KAAKw6C,IAAIwgC,IAAIjgC,aAC3B/6C,KAAKw6C,IAAIvb,QAAQhwB,MAAM03E,SAAW,GAElC3mF,KAAK27E,OAAQ,EAGf37E,KAAK4mF,qBAAqBpsC,EAAIwgC,KAC9Bh7E,KAAK6mF,mBACL7mF,KAAK8mF,qBAOPxkF,EAAU8Q,UAAUwwC,KAAO,WACpB5jD,KAAK47E,WACR57E,KAAKstC,UAQThrC,EAAU8Q,UAAUyoE,KAAO,WACzB,GAAI77E,KAAK47E,UAAW,CAClB,GAAIZ,GAAMh7E,KAAKw6C,IAAIwgC,GAEfA,GAAIxvE,YACNwvE,EAAIxvE,WAAWzG,YAAYi2E,GAG7Bh7E,KAAK47E,WAAY,IAarBt5E,EAAU8Q,UAAUywC,YAAc,SAAUogC,GAC1C,GAGI8C,GACAnsC,EAJAosC,EAAchnF,KAAK0L,OAAO0zB,MAC1BoU,EAAQxzC,KAAK2wE,WAAWjwB,SAAS1gD,KAAKwZ,KAAKg6B,OAC3CE,EAAM1zC,KAAK2wE,WAAWjwB,SAAS1gD,KAAKwZ,KAAKk6B,IAK3B/sC,UAAds9E,GAA2BA,KAAc,KAC9B+C,EAATxzC,IACFA,GAASwzC,GAEPtzC,EAAM,EAAIszC,IACZtzC,EAAM,EAAIszC,GAGd,IAAIC,GAAW3hF,KAAKJ,IAAIwuC,EAAMF,EAAO,EAmBrC,QAjBIxzC,KAAKiU,UACPjU,KAAK8I,KAAO0qC,EACZxzC,KAAKo/B,MAAQ6nD,EAAWjnF,KAAKiH,MAAMg4B,QAAQG,MAC3Cwb,EAAe56C,KAAKiH,MAAMg4B,QAAQG,QAMhCp/B,KAAK8I,KAAO0qC,EACZxzC,KAAKo/B,MAAQ6nD,EACbrsC,EAAet1C,KAAKL,IAAIyuC,EAAMF,EAAOxzC,KAAKiH,MAAMg4B,QAAQG,QAG5Dp/B,KAAKw6C,IAAIwgC,IAAI/rE,MAAMnG,KAAO9I,KAAK8I,KAAO,KACtC9I,KAAKw6C,IAAIwgC,IAAI/rE,MAAMmwB,MAAQ6nD,EAAW,KAE9BjnF,KAAK6D,QAAQ+0E,OACnB,IAAK,OACH54E,KAAKw6C,IAAIvb,QAAQhwB,MAAMnG,KAAO,GAC9B,MAEF,KAAK,QACH9I,KAAKw6C,IAAIvb,QAAQhwB,MAAMnG,KAAOxD,KAAKJ,IAAI+hF,EAAWrsC,EAAc,GAAK,IACrE,MAEF,KAAK,SACH56C,KAAKw6C,IAAIvb,QAAQhwB,MAAMnG,KAAOxD,KAAKJ,KAAK+hF,EAAWrsC,GAAgB,EAAG,GAAK,IAC3E,MAEF,SAKMmsC,EAFA/mF,KAAKiU,SACHy/B,EAAM,EACMpuC,KAAKJ,KAAKsuC,EAAO,IAEhBoH,EAGH,EAARpH,GACaA,EAED,EAGpBxzC,KAAKw6C,IAAIvb,QAAQhwB,MAAMnG,KAAOi+E,EAAc,OAQlDzkF,EAAU8Q,UAAUmxE,YAAc,WAChC,GAAIzkC,GAAc9/C,KAAK6D,QAAQi8C,YAAYnuC,KACvCqpE,EAAMh7E,KAAKw6C,IAAIwgC,GAEA,QAAfl7B,EACFk7B,EAAI/rE,MAAMjG,IAAMhJ,KAAKgJ,IAAM,KAE3BgyE,EAAI/rE,MAAMjG,IAAMhJ,KAAK0L,OAAO2zB,OAASr/B,KAAKgJ,IAAMhJ,KAAKq/B,OAAS,MAQlE/8B,EAAU8Q,UAAUyzE,iBAAmB,WACrC,GAAI7mF,KAAKooD,UAAYpoD,KAAK6D,QAAQw1E,SAASC,aAAet5E,KAAKw6C,IAAI8jC,SAAU,CAE3E,GAAIA,GAAWtgD,SAASM,cAAc,MACtCggD,GAASp1E,UAAY,gBACrBo1E,EAASL,aAAej+E,KAExBA,KAAKw6C,IAAIwgC,IAAI98C,YAAYogD,GACzBt+E,KAAKw6C,IAAI8jC,SAAWA,OACVt+E,KAAKooD,UAAYpoD,KAAKw6C,IAAI8jC,WAEhCt+E,KAAKw6C,IAAI8jC,SAAS9yE,YACpBxL,KAAKw6C,IAAI8jC,SAAS9yE,WAAWzG,YAAY/E,KAAKw6C,IAAI8jC,UAEpDt+E,KAAKw6C,IAAI8jC,SAAW,OAQxBh8E,EAAU8Q,UAAU0zE,kBAAoB,WACtC,GAAI9mF,KAAKooD,UAAYpoD,KAAK6D,QAAQw1E,SAASC,aAAet5E,KAAKw6C,IAAIgkC,UAAW,CAE5E,GAAIA,GAAYxgD,SAASM,cAAc,MACvCkgD,GAAUt1E,UAAY,iBACtBs1E,EAAUN,cAAgBl+E,KAE1BA,KAAKw6C,IAAIwgC,IAAI98C,YAAYsgD,GACzBx+E,KAAKw6C,IAAIgkC,UAAYA,OACXx+E,KAAKooD,UAAYpoD,KAAKw6C,IAAIgkC,YAEhCx+E,KAAKw6C,IAAIgkC,UAAUhzE,YACrBxL,KAAKw6C,IAAIgkC,UAAUhzE,WAAWzG,YAAY/E,KAAKw6C,IAAIgkC,WAErDx+E,KAAKw6C,IAAIgkC,UAAY,OAIzB3+E,EAAOD,QAAU0C,GAIb,SAASzC,EAAQD,EAASM,GAgB9B,QAASgC,GAAKsX,EAAMm3D,EAAY9sE,GAC9B7D,KAAKK,GAAK,KACVL,KAAK0L,OAAS,KACd1L,KAAKwZ,KAAOA,EACZxZ,KAAKw6C,IAAM,KACXx6C,KAAK2wE,WAAaA,MAClB3wE,KAAK6D,QAAUA,MAEf7D,KAAKooD,UAAW,EAChBpoD,KAAK47E,WAAY,EACjB57E,KAAK27E,OAAQ,EAEb37E,KAAKgJ,IAAM,KACXhJ,KAAK8I,KAAO,KACZ9I,KAAKo/B,MAAQ,KACbp/B,KAAKq/B,OAAS,KAEdr/B,KAAKq5E,SAAW,KACZr5E,KAAKwZ,MAAQxZ,KAAKwZ,KAAKpT,eAAe,aAA6C,iBAAvBpG,MAAKwZ,KAAK6/D,WACxEr5E,KAAKq5E,SAAW7/D,EAAK6/D,UA/BzB,GAAIr1E,GAAS9D,EAAoB,IAC7BS,EAAOT,EAAoB,EAkC/BgC,GAAKkR,UAAUtR,OAAQ,EAKvBI,EAAKkR,UAAU80C,OAAS,WACtBloD,KAAKooD,UAAW,EAChBpoD,KAAK27E,OAAQ,EACT37E,KAAK47E,WAAW57E,KAAKstC,UAM3BprC,EAAKkR,UAAU0oE,SAAW,WACxB97E,KAAKooD,UAAW,EAChBpoD,KAAK27E,OAAQ,EACT37E,KAAK47E,WAAW57E,KAAKstC,UAQ3BprC,EAAKkR,UAAUixB,QAAU,SAAU7qB,GACjC,GAAI0tE,GAA6BvgF,QAAd6S,EAAK2qC,OAAsBnkD,KAAKwZ,KAAK2qC,OAAS3qC,EAAK2qC,KAClE+iC,IACFlnF,KAAK0L,OAAO21C,QAAQs+B,aAAa3/E,KAAMwZ,EAAK2qC,OAG1C3qC,EAAKpT,eAAe,aAAwC,iBAAlBoT,GAAK6/D,WACjDr5E,KAAKq5E,SAAW7/D,EAAK6/D,UAGvBr5E,KAAKwZ,KAAOA,EACZxZ,KAAK27E,OAAQ,EACT37E,KAAK47E,WAAW57E,KAAKstC,UAO3BprC,EAAKkR,UAAUqxE,UAAY,SAAU/4E,GAC/B1L,KAAK47E,WACP57E,KAAK67E,OACL77E,KAAK0L,OAASA,EACV1L,KAAK0L,QACP1L,KAAK4jD,QAGP5jD,KAAK0L,OAASA,GASlBxJ,EAAKkR,UAAUyyE,UAAY,SAAU3kC,GAEnC,OAAO,GAOTh/C,EAAKkR,UAAUwwC,KAAO,WACpB,OAAO,GAOT1hD,EAAKkR,UAAUyoE,KAAO,WACpB,OAAO,GAMT35E,EAAKkR,UAAUk6B,OAAS,aAOxBprC,EAAKkR,UAAUywC,YAAc,aAO7B3hD,EAAKkR,UAAUmxE,YAAc,aAS7BriF,EAAKkR,UAAUwzE,qBAAuB,SAAUx5D,GAC9C,GAAIisD,IAAYr5E,KAAK6D,QAAQw1E,SAAS92C,QAAUviC,KAAKwZ,KAAK6/D,YAAa,IAASr5E,KAAKwZ,KAAK6/D,YAAa,CAEvG,IAAIr5E,KAAKooD,UAAYixB,IAAar5E,KAAKw6C,IAAI2sC,aAAc,CAEvD,GAAIvmD,GAAK5gC,KAELmnF,EAAenpD,SAASM,cAAc,MAC1C6oD,GAAaj+E,UAAY,aACzBi+E,EAAaxQ,MAAQ,mBAGrB,GAAI3yE,GAAOmjF,GAAcnnD,GAAG,MAAO,SAAU/0B,GAC3CA,EAAMiuD,kBACNt4B,EAAGl1B,OAAOo5E,kBAAkBlkD,KAG9BxT,EAAO8Q,YAAYipD,GACnBnnF,KAAKw6C,IAAI2sC,aAAeA,OACdnnF,KAAKooD,UAAYpoD,KAAKw6C,IAAI2sC,eAEhCnnF,KAAKw6C,IAAI2sC,aAAa37E,YACxBxL,KAAKw6C,IAAI2sC,aAAa37E,WAAWzG,YAAY/E,KAAKw6C,IAAI2sC,cAExDnnF,KAAKw6C,IAAI2sC,aAAe,OAS5BjlF,EAAKkR,UAAUkzE,gBAAkB,SAAU/7E,GACzC,GAAI00B,EACJ,IAAIj/B,KAAK6D,QAAQujF,SAAU,CACzB,GAAIlkC,GAAWljD,KAAK0L,OAAO21C,QAAQC,UAAU1pB,IAAI53B,KAAKK,GACtD4+B,GAAUj/B,KAAK6D,QAAQujF,SAASlkC,OAEhCjkB,GAAUj/B,KAAKwZ,KAAKylB,OAGtB,IAAI+iC,GAAUhiE,KAAKqnF,iBAAiBrnF,KAAKi/B,WAAaj/B,KAAKqnF,iBAAiBpoD,EAC5E,IAAI+iC,EAAS,CAEX,GAAI/iC,YAAmB2kD,SACrBr5E,EAAQmlC,UAAY,GACpBnlC,EAAQ2zB,YAAYe,OACf,IAAet4B,QAAXs4B,EACT10B,EAAQmlC,UAAYzQ,MAEpB,IAAwB,cAAlBj/B,KAAKwZ,KAAKzR,MAA8CpB,SAAtB3G,KAAKwZ,KAAKylB,QAChD,KAAM,IAAI73B,OAAM,sCAAwCpH,KAAKK,GAIjEL,MAAKi/B,QAAUA,IASnB/8B,EAAKkR,UAAUmzE,aAAe,SAAUh8E,GACf,MAAnBvK,KAAKwZ,KAAKm9D,MACZpsE,EAAQosE,MAAQ32E,KAAKwZ,KAAKm9D,OAAS,GAEnCpsE,EAAQ+8E,gBAAgB,cAS5BplF,EAAKkR,UAAUozE,sBAAwB,SAAUj8E,GAC/C,GAAIvK,KAAK6D,QAAQ0jF,gBAAkBvnF,KAAK6D,QAAQ0jF,eAAe7gF,OAAS,EAAG,CACzE,GAAI8gF,KAEJ,IAAItgF,MAAMC,QAAQnH,KAAK6D,QAAQ0jF,gBAC7BC,EAAaxnF,KAAK6D,QAAQ0jF,mBACrB,CAAA,GAAmC,OAA/BvnF,KAAK6D,QAAQ0jF,eAGtB,MAFAC,GAAajgF,OAAO6H,KAAKpP,KAAKwZ,MAKhC,IAAK,GAAI3S,GAAI,EAAGA,EAAI2gF,EAAW9gF,OAAQG,IAAK,CAC1C,GAAI8Q,GAAO6vE,EAAW3gF,GAClBzB,EAAQpF,KAAKwZ,KAAK7B,EAET,OAATvS,EACFmF,EAAQk9E,aAAa,QAAU9vE,EAAMvS,GAErCmF,EAAQ+8E,gBAAgB,QAAU3vE,MAW1CzV,EAAKkR,UAAUqzE,aAAe,SAAUl8E,GAElCvK,KAAKiP,QACPtO,EAAK6O,cAAcjF,EAASvK,KAAKiP,OACjCjP,KAAKiP,MAAQ,MAIXjP,KAAKwZ,KAAKvK,QACZtO,EAAK0O,WAAW9E,EAASvK,KAAKwZ,KAAKvK,OACnCjP,KAAKiP,MAAQjP,KAAKwZ,KAAKvK,QAU3B/M,EAAKkR,UAAUi0E,iBAAmB,SAAUpoD,GAC1C,MAAuB,gBAAZA,GAA6BA,EACpCA,GAAW,aAAeA,GAAgBA,EAAQyoD,UAC/CzoD,GAOT/8B,EAAKkR,UAAU0wC,aAAe,WAC5B,MAAO,IAOT5hD,EAAKkR,UAAU2wC,cAAgB,WAC7B,MAAO,IAGTlkD,EAAOD,QAAUsC,GAIb,SAASrC,EAAQD,EAASM,GAa9B,QAASqC,GAAgBqiD,EAASprC,EAAM6nC,GACtCv+C,EAAMvC,KAAKP,KAAM4kD,EAASprC,EAAM6nC,GAEhCrhD,KAAKo/B,MAAQ,EACbp/B,KAAKq/B,OAAS,EACdr/B,KAAKgJ,IAAM,EACXhJ,KAAK8I,KAAO,EAfd,GACIhG,IADO5C,EAAoB,GACnBA,EAAoB,IAiBhCqC,GAAgB6Q,UAAY7L,OAAOgJ,OAAOzN,EAAMsQ,WAShD7Q,EAAgB6Q,UAAUk6B,OAAS,SAAU4T,EAAO/b,EAAQm3C,GAC1D,GAAIpK,IAAU,CAEdlyE,MAAKg8E,aAAeh8E,KAAKmkF,oBAAoBnkF,KAAKkR,aAAclR,KAAKg8E,aAAc96B;AAGnFlhD,KAAKo/B,MAAQp/B,KAAKw6C,IAAIpsC,WAAWysC,YAGjC76C,KAAKw6C,IAAIpsC,WAAWa,MAAMowB,OAAS,GAGnC,KAAK,GAAIx4B,GAAI,EAAG20B,EAAKx7B,KAAKg8E,aAAat1E,OAAY80B,EAAJ30B,EAAQA,IAAK,CAC1D,GAAI8K,GAAO3R,KAAKg8E,aAAan1E,EAC7B8K,GAAK4yE,YAAYp/C,GAGnB,MAAO+sC,IAMT3vE,EAAgB6Q,UAAUwwC,KAAO,WAC1B5jD,KAAKw6C,IAAIpsC,WAAW5C,YACvBxL,KAAKqhD,QAAQ7G,IAAIpsC,WAAW8vB,YAAYl+B,KAAKw6C,IAAIpsC,aAIrDvO,EAAOD,QAAU2C,GAIb,SAAS1C,EAAQD,EAASM,GAiB9B,QAASkC,GAAQoX,EAAMm3D,EAAY9sE,GAajC,GAZA7D,KAAKiH,OACHszC,KACEnb,MAAO,EACPC,OAAQ,GAEVib,MACElb,MAAO,EACPC,OAAQ,IAKR7lB,GACgB7S,QAAd6S,EAAKg6B,MACP,KAAM,IAAIpsC,OAAM,oCAAsCoS,EAI1DtX,GAAK3B,KAAKP,KAAMwZ,EAAMm3D,EAAY9sE,GAhCpC,GAAI3B,GAAOhC,EAAoB,GACpBA,GAAoB,EAkC/BkC,GAAQgR,UAAY,GAAIlR,GAAK,KAAM,KAAM,MAOzCE,EAAQgR,UAAUyyE,UAAY,SAAU3kC,GAGtC,GAAItD,IAAYsD,EAAMxN,IAAMwN,EAAM1N,OAAS,CAC3C,OAAOxzC,MAAKwZ,KAAKg6B,MAAQ0N,EAAM1N,MAAQoK,GAAY59C,KAAKwZ,KAAKg6B,MAAQ0N,EAAMxN,IAAMkK,GAMnFx7C,EAAQgR,UAAUk6B,OAAS,WACzB,GAAIkN,GAAMx6C,KAAKw6C,GA6Bf,IA5BKA,IAEHx6C,KAAKw6C,OACLA,EAAMx6C,KAAKw6C,IAGXA,EAAIwgC,IAAMh9C,SAASM,cAAc,OAGjCkc,EAAIvb,QAAUjB,SAASM,cAAc,OACrCkc,EAAIvb,QAAQ/1B,UAAY,mBACxBsxC,EAAIwgC,IAAI98C,YAAYsc,EAAIvb,SAGxBub,EAAIF,KAAOtc,SAASM,cAAc,OAClCkc,EAAIF,KAAKpxC,UAAY,WAGrBsxC,EAAID,IAAMvc,SAASM,cAAc,OACjCkc,EAAID,IAAIrxC,UAAY,UAGpBsxC,EAAIwgC,IAAI,iBAAmBh7E,KAE3BA,KAAK27E,OAAQ,IAIV37E,KAAK0L,OACR,KAAM,IAAItE,OAAM,yCAElB,KAAKozC,EAAIwgC,IAAIxvE,WAAY,CACvB,GAAIk5C,GAAa1kD,KAAK0L,OAAO8uC,IAAIkK,UACjC,KAAKA,EAAY,KAAM,IAAIt9C,OAAM,iEACjCs9C,GAAWxmB,YAAYsc,EAAIwgC,KAE7B,IAAKxgC,EAAIF,KAAK9uC,WAAY,CACxB,GAAI4C,GAAapO,KAAK0L,OAAO8uC,IAAIpsC,UACjC,KAAKA,EAAY,KAAM,IAAIhH,OAAM,iEACjCgH,GAAW8vB,YAAYsc,EAAIF,MAE7B,IAAKE,EAAID,IAAI/uC,WAAY,CACvB,GAAIu0C,GAAO//C,KAAK0L,OAAO8uC,IAAIuF,IAC3B,KAAK3xC,EAAY,KAAM,IAAIhH,OAAM,2DACjC24C,GAAK7hB,YAAYsc,EAAID,KAQvB,GANAv6C,KAAK47E,WAAY,EAMb57E,KAAK27E,MAAO,CACd37E,KAAKsmF,gBAAgBtmF,KAAKw6C,IAAIvb,SAC9Bj/B,KAAKumF,aAAavmF,KAAKw6C,IAAIwgC,KAC3Bh7E,KAAKwmF,sBAAsBxmF,KAAKw6C,IAAIwgC,KACpCh7E,KAAKymF,aAAazmF,KAAKw6C,IAAIwgC,IAE3B,IAAI3B,IAAYr5E,KAAK6D,QAAQw1E,SAASC,YAAct5E,KAAK6D,QAAQw1E,SAASE,aAAev5E,KAAKq5E,YAAa,IAASr5E,KAAKq5E,YAAa,EAGlInwE,GAAalJ,KAAKwZ,KAAKtQ,UAAY,IAAMlJ,KAAKwZ,KAAKtQ,UAAY,KAAOlJ,KAAKooD,SAAW,gBAAkB,KAAOixB,EAAW,gBAAkB,gBAChJ7+B,GAAIwgC,IAAI9xE,UAAY,mBAAqBA,EACzCsxC,EAAIF,KAAKpxC,UAAY,oBAAsBA,EAC3CsxC,EAAID,IAAIrxC,UAAY,mBAAqBA,EAGzClJ,KAAKiH,MAAMszC,IAAIlb,OAASmb,EAAID,IAAIQ,aAChC/6C,KAAKiH,MAAMszC,IAAInb,MAAQob,EAAID,IAAIM,YAC/B76C,KAAKiH,MAAMqzC,KAAKlb,MAAQob,EAAIF,KAAKO,YACjC76C,KAAKo/B,MAAQob,EAAIwgC,IAAIngC,YACrB76C,KAAKq/B,OAASmb,EAAIwgC,IAAIjgC,aAEtB/6C,KAAK27E,OAAQ,EAGf37E,KAAK4mF,qBAAqBpsC,EAAIwgC,MAOhC54E,EAAQgR,UAAUwwC,KAAO,WAClB5jD,KAAK47E,WACR57E,KAAKstC,UAOTlrC,EAAQgR,UAAUyoE,KAAO,WACvB,GAAI77E,KAAK47E,UAAW,CAClB,GAAIphC,GAAMx6C,KAAKw6C,GAEXA,GAAIwgC,IAAIxvE,YAAYgvC,EAAIwgC,IAAIxvE,WAAWzG,YAAYy1C,EAAIwgC,KACvDxgC,EAAIF,KAAK9uC,YAAYgvC,EAAIF,KAAK9uC,WAAWzG,YAAYy1C,EAAIF,MACzDE,EAAID,IAAI/uC,YAAYgvC,EAAID,IAAI/uC,WAAWzG,YAAYy1C,EAAID,KAE3Dv6C,KAAK47E,WAAY,IAQrBx5E,EAAQgR,UAAUywC,YAAc,WAC9B,GAAIrQ,GAAQxzC,KAAK2wE,WAAWjwB,SAAS1gD,KAAKwZ,KAAKg6B,OAC3ColC,EAAQ54E,KAAK6D,QAAQ+0E,KAGZ,UAATA,GACF54E,KAAK8I,KAAO0qC,EAAQxzC,KAAKo/B,MAGzBp/B,KAAKw6C,IAAIwgC,IAAI/rE,MAAMnG,KAAO9I,KAAK8I,KAAO,KACtC9I,KAAKw6C,IAAIF,KAAKrrC,MAAMnG,KAAO0qC,EAAQxzC,KAAKiH,MAAMqzC,KAAKlb,MAAQ,KAC3Dp/B,KAAKw6C,IAAID,IAAItrC,MAAMnG,KAAO0qC,EAAQxzC,KAAKiH,MAAMqzC,KAAKlb,MAAQ,EAAIp/B,KAAKiH,MAAMszC,IAAInb,MAAQ,EAAI,MACvE,QAATw5C,GACT54E,KAAK8I,KAAO0qC,EAGZxzC,KAAKw6C,IAAIwgC,IAAI/rE,MAAMnG,KAAO9I,KAAK8I,KAAO,KACtC9I,KAAKw6C,IAAIF,KAAKrrC,MAAMnG,KAAO0qC,EAAQ,KACnCxzC,KAAKw6C,IAAID,IAAItrC,MAAMnG,KAAO0qC,EAAQxzC,KAAKiH,MAAMqzC,KAAKlb,MAAQ,EAAIp/B,KAAKiH,MAAMszC,IAAInb,MAAQ,EAAI,OAGzFp/B,KAAK8I,KAAO0qC,EAAQxzC,KAAKo/B,MAAQ,EAGjCp/B,KAAKw6C,IAAIwgC,IAAI/rE,MAAMnG,KAAO9I,KAAK8I,KAAO,KACtC9I,KAAKw6C,IAAIF,KAAKrrC,MAAMnG,KAAO0qC,EAAQxzC,KAAKiH,MAAMqzC,KAAKlb,MAAQ,EAAI,KAC/Dp/B,KAAKw6C,IAAID,IAAItrC,MAAMnG,KAAO0qC,EAAQxzC,KAAKiH,MAAMszC,IAAInb,MAAQ,EAAI,OAQjEh9B,EAAQgR,UAAUmxE,YAAc,WAC9B,GAAIzkC,GAAc9/C,KAAK6D,QAAQi8C,YAAYnuC,KACvCqpE,EAAMh7E,KAAKw6C,IAAIwgC,IACf1gC,EAAOt6C,KAAKw6C,IAAIF,KAChBC,EAAMv6C,KAAKw6C,IAAID,GAEnB,IAAmB,OAAfuF,EACFk7B,EAAI/rE,MAAMjG,KAAOhJ,KAAKgJ,KAAO,GAAK,KAElCsxC,EAAKrrC,MAAMjG,IAAM,IACjBsxC,EAAKrrC,MAAMowB,OAASr/B,KAAK0L,OAAO1C,IAAMhJ,KAAKgJ,IAAM,EAAI,KACrDsxC,EAAKrrC,MAAMigC,OAAS,OACf,CAEL,GAAIy4C,GAAgB3nF,KAAK0L,OAAO21C,QAAQp6C,MAAMo4B,OAC1C2b,EAAa2sC,EAAgB3nF,KAAK0L,OAAO1C,IAAMhJ,KAAK0L,OAAO2zB,OAASr/B,KAAKgJ,GAE7EgyE,GAAI/rE,MAAMjG,KAAOhJ,KAAK0L,OAAO2zB,OAASr/B,KAAKgJ,IAAMhJ,KAAKq/B,QAAU,GAAK,KACrEib,EAAKrrC,MAAMjG,IAAM2+E,EAAgB3sC,EAAa,KAC9CV,EAAKrrC,MAAMigC,OAAS,IAGtBqL,EAAItrC,MAAMjG,KAAOhJ,KAAKiH,MAAMszC,IAAIlb,OAAS,EAAI,MAO/Cj9B,EAAQgR,UAAU0wC,aAAe,WAC/B,MAAO9jD,MAAKo/B,MAAQ,GAOtBh9B,EAAQgR,UAAU2wC,cAAgB,WAChC,MAAO/jD,MAAKo/B,MAAQ,GAGtBv/B,EAAOD,QAAUwC,GAIb,SAASvC,EAAQD,EAASM,GAgB9B,QAASmC,GAAUmX,EAAMm3D,EAAY9sE,GAcnC,GAbA7D,KAAKiH,OACHszC,KACEvxC,IAAK,EACLo2B,MAAO,EACPC,OAAQ,GAEVJ,SACEI,OAAQ,EACRuoD,WAAY,IAKZpuE,GACgB7S,QAAd6S,EAAKg6B,MACP,KAAM,IAAIpsC,OAAM,oCAAsCoS,EAI1DtX,GAAK3B,KAAKP,KAAMwZ,EAAMm3D,EAAY9sE,GAhCpC,GAAI3B,GAAOhC,EAAoB,GAmC/BmC,GAAU+Q,UAAY,GAAIlR,GAAK,KAAM,KAAM,MAO3CG,EAAU+Q,UAAUyyE,UAAY,SAAU3kC,GAGxC,GAAItD,IAAYsD,EAAMxN,IAAMwN,EAAM1N,OAAS,CAC3C,OAAOxzC,MAAKwZ,KAAKg6B,MAAQ0N,EAAM1N,MAAQoK,GAAY59C,KAAKwZ,KAAKg6B,MAAQ0N,EAAMxN,IAAMkK,GAMnFv7C,EAAU+Q,UAAUk6B,OAAS,WAC3B,GAAIkN,GAAMx6C,KAAKw6C,GA0Bf,IAzBKA,IAEHx6C,KAAKw6C,OACLA,EAAMx6C,KAAKw6C,IAGXA,EAAI7b,MAAQX,SAASM,cAAc,OAInCkc,EAAIvb,QAAUjB,SAASM,cAAc,OACrCkc,EAAIvb,QAAQ/1B,UAAY,mBACxBsxC,EAAI7b,MAAMT,YAAYsc,EAAIvb,SAG1Bub,EAAID,IAAMvc,SAASM,cAAc,OACjCkc,EAAI7b,MAAMT,YAAYsc,EAAID,KAG1BC,EAAI7b,MAAM,iBAAmB3+B,KAE7BA,KAAK27E,OAAQ,IAIV37E,KAAK0L,OACR,KAAM,IAAItE,OAAM,yCAElB,KAAKozC,EAAI7b,MAAMnzB,WAAY,CACzB,GAAIk5C,GAAa1kD,KAAK0L,OAAO8uC,IAAIkK,UACjC,KAAKA,EACH,KAAM,IAAIt9C,OAAM,iEAElBs9C,GAAWxmB,YAAYsc,EAAI7b,OAQ7B,GANA3+B,KAAK47E,WAAY,EAMb57E,KAAK27E,MAAO,CACd37E,KAAKsmF,gBAAgBtmF,KAAKw6C,IAAIvb,SAC9Bj/B,KAAKumF,aAAavmF,KAAKw6C,IAAI7b,OAC3B3+B,KAAKwmF,sBAAsBxmF,KAAKw6C,IAAI7b,OACpC3+B,KAAKymF,aAAazmF,KAAKw6C,IAAI7b,MAE3B,IAAI06C,IAAYr5E,KAAK6D,QAAQw1E,SAASC,YAAct5E,KAAK6D,QAAQw1E,SAASE,aAAev5E,KAAKq5E,YAAa,IAASr5E,KAAKq5E,YAAa,EAGlInwE,GAAalJ,KAAKwZ,KAAKtQ,UAAY,IAAMlJ,KAAKwZ,KAAKtQ,UAAY,KAAOlJ,KAAKooD,SAAW,gBAAkB,KAAOixB,EAAW,gBAAkB,gBAChJ7+B,GAAI7b,MAAMz1B,UAAY,qBAAuBA,EAC7CsxC,EAAID,IAAIrxC,UAAY,mBAAqBA,EAGzClJ,KAAKiH,MAAMszC,IAAInb,MAAQob,EAAID,IAAIM,YAC/B76C,KAAKiH,MAAMszC,IAAIlb,OAASmb,EAAID,IAAIQ,aAChC/6C,KAAKiH,MAAMg4B,QAAQI,OAASmb,EAAIvb,QAAQ8b,aAGxCP,EAAIvb,QAAQhwB,MAAM24E,WAAa,EAAI5nF,KAAKiH,MAAMszC,IAAInb,MAAQ,KAI1Dp/B,KAAKo/B,MAAQob,EAAI7b,MAAMkc,YACvB76C,KAAKq/B,OAASmb,EAAI7b,MAAMoc,aAGxBP,EAAID,IAAItrC,MAAMjG,KAAOhJ,KAAKq/B,OAASr/B,KAAKiH,MAAMszC,IAAIlb,QAAU,EAAI,KAChEmb,EAAID,IAAItrC,MAAMnG,KAAO9I,KAAKiH,MAAMszC,IAAInb,MAAQ,EAAI,KAEhDp/B,KAAK27E,OAAQ,EAGf37E,KAAK4mF,qBAAqBpsC,EAAI7b,QAOhCt8B,EAAU+Q,UAAUwwC,KAAO,WACpB5jD,KAAK47E,WACR57E,KAAKstC,UAOTjrC,EAAU+Q,UAAUyoE,KAAO,WACrB77E,KAAK47E,YACH57E,KAAKw6C,IAAI7b,MAAMnzB,YACjBxL,KAAKw6C,IAAI7b,MAAMnzB,WAAWzG,YAAY/E,KAAKw6C,IAAI7b,OAGjD3+B,KAAK47E,WAAY,IAQrBv5E,EAAU+Q,UAAUywC,YAAc,WAChC,GAAIrQ,GAAQxzC,KAAK2wE,WAAWjwB,SAAS1gD,KAAKwZ,KAAKg6B,MAE/CxzC,MAAK8I,KAAO0qC,EAAQxzC,KAAKiH,MAAMszC,IAAInb,MAGnCp/B,KAAKw6C,IAAI7b,MAAM1vB,MAAMnG,KAAO9I,KAAK8I,KAAO,MAO1CzG,EAAU+Q,UAAUmxE,YAAc,WAChC,GAAIzkC,GAAc9/C,KAAK6D,QAAQi8C,YAAYnuC,KACvCgtB,EAAQ3+B,KAAKw6C,IAAI7b,KAEF,QAAfmhB,EACFnhB,EAAM1vB,MAAMjG,IAAMhJ,KAAKgJ,IAAM,KAE7B21B,EAAM1vB,MAAMjG,IAAMhJ,KAAK0L,OAAO2zB,OAASr/B,KAAKgJ,IAAMhJ,KAAKq/B,OAAS,MAQpEh9B,EAAU+Q,UAAU0wC,aAAe,WACjC,MAAO9jD,MAAKiH,MAAMszC,IAAInb,OAOxB/8B,EAAU+Q,UAAU2wC,cAAgB,WAClC,MAAO/jD,MAAKo/B,MAAQp/B,KAAKiH,MAAMszC,IAAInb,OAGrCv/B,EAAOD,QAAUyC,GAIb,SAASxC,EAAQD,EAASM,GAoB9B,QAASiC,GAAeqX,EAAMm3D,EAAY9sE,GASxC,GARA7D,KAAKiH,OACHg4B,SACEG,MAAO,IAGXp/B,KAAKiU,UAAW,EAGZuF,EAAM,CACR,GAAkB7S,QAAd6S,EAAKg6B,MACP,KAAM,IAAIpsC,OAAM,oCAAsCoS,EAAKnZ,GAE7D,IAAgBsG,QAAZ6S,EAAKk6B,IACP,KAAM,IAAItsC,OAAM,kCAAoCoS,EAAKnZ,IAI7D6B,EAAK3B,KAAKP,KAAMwZ,EAAMm3D,EAAY9sE,GAlCpC,GACI3B,IADShC,EAAoB,IACtBA,EAAoB,KAC3BqC,EAAkBrC,EAAoB,IACtCoC,EAAYpC,EAAoB,GAkCpCiC,GAAeiR,UAAY,GAAIlR,GAAK,KAAM,KAAM,MAEhDC,EAAeiR,UAAUizE,cAAgB,0BACzClkF,EAAeiR,UAAUtR,OAAQ,EAOjCK,EAAeiR,UAAUyyE,UAAY,SAAU3kC,GAE7C,MAAOlhD,MAAKwZ,KAAKg6B,MAAQ0N,EAAMxN,KAAO1zC,KAAKwZ,KAAKk6B,IAAMwN,EAAM1N,OAM9DrxC,EAAeiR,UAAUk6B,OAAS,WAChC,GAAIkN,GAAMx6C,KAAKw6C,GA4Bf,IA3BKA,IAEHx6C,KAAKw6C,OACLA,EAAMx6C,KAAKw6C,IAGXA,EAAIwgC,IAAMh9C,SAASM,cAAc,OAIjCkc,EAAIpP,MAAQpN,SAASM,cAAc,OACnCkc,EAAIpP,MAAMliC,UAAY,oBACtBsxC,EAAIwgC,IAAI98C,YAAYsc,EAAIpP,OAGxBoP,EAAIvb,QAAUjB,SAASM,cAAc,OACrCkc,EAAIvb,QAAQ/1B,UAAY,mBACxBsxC,EAAIpP,MAAMlN,YAAYsc,EAAIvb,SAM1Bj/B,KAAK27E,OAAQ,IAIV37E,KAAK0L,OACR,KAAM,IAAItE,OAAM,yCAElB,KAAKozC,EAAIwgC,IAAIxvE,WAAY,CACvB,GAAI4C,GAAapO,KAAK0L,OAAO8uC,IAAIpsC,UACjC,KAAKA,EACH,KAAM,IAAIhH,OAAM,iEAElBgH,GAAW8vB,YAAYsc,EAAIwgC,KAQ7B,GANAh7E,KAAK47E,WAAY,EAMb57E,KAAK27E,MAAO,CACd37E,KAAKsmF,gBAAgBtmF,KAAKw6C,IAAIvb,SAC9Bj/B,KAAKumF,aAAavmF,KAAKw6C,IAAIvb,SAC3Bj/B,KAAKwmF,sBAAsBxmF,KAAKw6C,IAAIvb,SACpCj/B,KAAKymF,aAAazmF,KAAKw6C,IAAIwgC,IAG3B,IAAI9xE,IAAalJ,KAAKwZ,KAAKtQ,UAAY,IAAMlJ,KAAKwZ,KAAKtQ,UAAY,KAAOlJ,KAAKooD,SAAW,gBAAkB,GAC5G5N,GAAIwgC,IAAI9xE,UAAYlJ,KAAKqmF,cAAgBn9E,EAGzClJ,KAAKiU,SAA6D,WAAlD/I,OAAOw7E,iBAAiBlsC,EAAIvb,SAAShrB,SAGrDjU,KAAKiH,MAAMg4B,QAAQG,MAAQp/B,KAAKw6C,IAAIvb,QAAQ4b,YAC5C76C,KAAKq/B,OAAS,EAEdr/B,KAAK27E,OAAQ,IAQjBx5E,EAAeiR,UAAUwwC,KAAOthD,EAAU8Q,UAAUwwC,KAMpDzhD,EAAeiR,UAAUyoE,KAAOv5E,EAAU8Q,UAAUyoE,KAMpD15E,EAAeiR,UAAUywC,YAAcvhD,EAAU8Q,UAAUywC,YAM3D1hD,EAAeiR,UAAUmxE,YAAc,SAAUp/C,GAC/C,GAAI0iD,GAA0C,QAAlC7nF,KAAK6D,QAAQi8C,YAAYnuC,IACrC3R,MAAKw6C,IAAIvb,QAAQhwB,MAAMjG,IAAM6+E,EAAQ,GAAK,IAC1C7nF,KAAKw6C,IAAIvb,QAAQhwB,MAAMigC,OAAS24C,EAAQ,IAAM,EAC9C,IAAIxoD,EAGJ,IAA2B14B,SAAvB3G,KAAKwZ,KAAKqkE,SAAwB,CAGpC,GAAIiK,GAAe9nF,KAAKwZ,KAAKqkE,SACzBsF,EAAYnjF,KAAK0L,OAAOy3E,UACxBC,EAAgBD,EAAU2E,GAAcv+E,KAE5C,IAAa,GAATs+E,EAAe,CAEjBxoD,EAASr/B,KAAK0L,OAAOy3E,UAAU2E,GAAczoD,OAAS8F,EAAOxzB,KAAKo/B,SAClE1R,GAA2B,GAAjB+jD,EAAqBj+C,EAAO4a,KAAO,GAAM5a,EAAOxzB,KAAKo/B,SAAW,CAC1E,IAAIwnB,GAASv4D,KAAK0L,OAAO1C,GACzB,KAAK,GAAI60E,KAAYsF,GACfA,EAAU/8E,eAAey3E,IACQ,GAA/BsF,EAAUtF,GAAU/pC,SAAmBqvC,EAAUtF,GAAUt0E,MAAQ65E,IACrE7qB,GAAU4qB,EAAUtF,GAAUx+C,OAAS8F,EAAOxzB,KAAKo/B,SAMzDwnB,IAA2B,GAAjB6qB,EAAqBj+C,EAAO4a,KAAO,GAAM5a,EAAOxzB,KAAKo/B,SAAW,EAC1E/wC,KAAKw6C,IAAIwgC,IAAI/rE,MAAMjG,IAAMuvD,EAAS,KAClCv4D,KAAKw6C,IAAIwgC,IAAI/rE,MAAMigC,OAAS,OAGzB,CACD,GAAIqpB,GAASv4D,KAAK0L,OAAO1C,IACrB++E,EAAc,CAClB,KAAK,GAAIlK,KAAYsF,GACnB,GAAIA,EAAU/8E,eAAey3E,IACQ,GAA/BsF,EAAUtF,GAAU/pC,QAAiB,CACvC,GAAIk0C,GAAY7E,EAAUtF,GAAUx+C,OAAS8F,EAAOxzB,KAAKo/B,QACzDg3C,IAAeC,EACX7E,EAAUtF,GAAUt0E,MAAQ65E,IAC9B7qB,GAAUyvB,GAKlB3oD,EAASr/B,KAAK0L,OAAOy3E,UAAU2E,GAAczoD,OAAS8F,EAAOxzB,KAAKo/B,SAClE/wC,KAAKw6C,IAAIwgC,IAAI/rE,MAAMjG,IAAMhJ,KAAK0L,OAAO2zB,OAAS0oD,EAAcxvB,EAAS,KACrEv4D,KAAKw6C,IAAIwgC,IAAI/rE,MAAMigC,OAAS,QAM1BlvC,MAAK0L,iBAAkBnJ,IAEzB88B,EAAS/5B,KAAKJ,IAAIlF,KAAK0L,OAAO2zB,OAAQr/B,KAAK0L,OAAO21C,QAAQlB,KAAKC,SAASnJ,OAAO5X,OAAQr/B,KAAK0L,OAAO21C,QAAQlB,KAAKC,SAAS6D,gBAAgB5kB,QACzIr/B,KAAKw6C,IAAIwgC,IAAI/rE,MAAMjG,IAAM6+E,EAAQ,IAAM,GACvC7nF,KAAKw6C,IAAIwgC,IAAI/rE,MAAMigC,OAAS24C,EAAQ,GAAK,MAEzCxoD,EAASr/B,KAAK0L,OAAO2zB,OAErBr/B,KAAKw6C,IAAIwgC,IAAI/rE,MAAMjG,IAAMhJ,KAAK0L,OAAO1C,IAAM,KAC3ChJ,KAAKw6C,IAAIwgC,IAAI/rE,MAAMigC,OAAS,GAGlClvC,MAAKw6C,IAAIwgC,IAAI/rE,MAAMowB,OAASA,EAAS,MAGvCx/B,EAAOD,QAAUuC,GAIb,SAAStC,EAAQD,EAASM,GAoB9B,QAASgD,GAASi9C,EAAMt8C,GACtB7D,KAAKw6C,KACHkK,WAAY,KACZujC,SACAC,cACAC,cACA1qD,WACEwqD,SACAC,cACAC,gBAGJnoF,KAAKiH,OACHi6C,OACE1N,MAAO,EACPE,IAAK,EACL6tC,YAAa,GAEf6G,QAAS,GAGXpoF,KAAK2/C,gBACHG,aACEC,KAAM,UAERsoC,iBAAiB,EACjBC,iBAAiB,EACjBC,cAAe,EACf/0E,OAAQzR,EAAS0/E,OACjB19E,OAAQA,EACR08C,SAAU,MAEZzgD,KAAK6D,QAAUlD,EAAKoG,UAAW/G,KAAK2/C,gBAEpC3/C,KAAKmgD,KAAOA,EAGZngD,KAAKkgD,UAELlgD,KAAK4/B,WAAW/7B,GAvDlB,GAAIK,GAA4B,kBAAXC,SAAoD,gBAApBA,QAAOC,SAAwB,SAAUC,GAAO,aAAcA,IAAS,SAAUA,GAAO,MAAOA,IAAyB,kBAAXF,SAAyBE,EAAIC,cAAgBH,OAAS,eAAkBE,IAEtO1D,EAAOT,EAAoB,GAC3BsC,EAAYtC,EAAoB,IAChC6B,EAAW7B,EAAoB,IAC/B0B,EAAW1B,EAAoB,IAC/B6D,EAAS7D,EAAoB,EAoDjCgD,GAASkQ,UAAY,GAAI5Q,GAUzBU,EAASkQ,UAAUwsB,WAAa,SAAU/7B,GACpCA,IAEFlD,EAAKqG,iBAAiB,kBAAmB,kBAAmB,gBAAiB,cAAe,WAAY,UAAWhH,KAAK6D,QAASA,GAGjIlD,EAAK0G,qBAAqB,UAAWrH,KAAK6D,QAASA,GAE/C,eAAiBA,KACgB,gBAAxBA,GAAQi8C,YACjB9/C,KAAK6D,QAAQi8C,YAAYC,KAAOl8C,EAAQi8C,YACE,WAAjC57C,EAAQL,EAAQi8C,cAA6B,QAAUj8C,GAAQi8C,cACxE9/C,KAAK6D,QAAQi8C,YAAYC,KAAOl8C,EAAQi8C,YAAYC,OAMpD,UAAYl8C,KACe,kBAAlBE,GAAO0P,OAEhB1P,EAAO0P,OAAO5P,EAAQ4P,QAEtB1P,EAAO4yB,KAAK9yB,EAAQ4P,WAS5BvQ,EAASkQ,UAAU8sC,QAAU,WAC3BlgD,KAAKw6C,IAAIkK,WAAa1mB,SAASM,cAAc,OAC7Ct+B,KAAKw6C,IAAIpsC,WAAa4vB,SAASM,cAAc,OAE7Ct+B,KAAKw6C,IAAIkK,WAAWx7C,UAAY,+BAChClJ,KAAKw6C,IAAIpsC,WAAWlF,UAAY,gCAMlChG,EAASkQ,UAAU2sB,QAAU,WAEvB//B,KAAKw6C,IAAIkK,WAAWl5C,YACtBxL,KAAKw6C,IAAIkK,WAAWl5C,WAAWzG,YAAY/E,KAAKw6C,IAAIkK,YAElD1kD,KAAKw6C,IAAIpsC,WAAW5C,YACtBxL,KAAKw6C,IAAIpsC,WAAW5C,WAAWzG,YAAY/E,KAAKw6C,IAAIpsC,YAGtDpO,KAAKmgD,KAAO,MAOdj9C,EAASkQ,UAAUk6B,OAAS,WAC1B,GAAIrmC,GAAQjH,KAAKiH,MACby9C,EAAa1kD,KAAKw6C,IAAIkK,WACtBt2C,EAAapO,KAAKw6C,IAAIpsC,WAGtB1C,EAA0C,OAAjC1L,KAAK6D,QAAQi8C,YAAYC,KAAgB//C,KAAKmgD,KAAK3F,IAAIxxC,IAAMhJ,KAAKmgD,KAAK3F,IAAItL,OACpFs5C,EAAgB9jC,EAAWl5C,aAAeE,CAG9C1L,MAAKyoF,oBAGL,IAAIJ,GAAkBroF,KAAK6D,QAAQwkF,iBAAqD,SAAlCroF,KAAK6D,QAAQi8C,YAAYC,KAC3EuoC,EAAkBtoF,KAAK6D,QAAQykF,iBAAqD,SAAlCtoF,KAAK6D,QAAQi8C,YAAYC,IAG/E94C,GAAMyhF,iBAAmBL,EAAkBphF,EAAM0hF,gBAAkB,EACnE1hF,EAAM2hF,iBAAmBN,EAAkBrhF,EAAM4hF,gBAAkB,EACnE5hF,EAAMo4B,OAASp4B,EAAMyhF,iBAAmBzhF,EAAM2hF,iBAC9C3hF,EAAMm4B,MAAQslB,EAAW7J,YAEzB5zC,EAAM6hF,gBAAkB9oF,KAAKmgD,KAAKC,SAAS1gD,KAAK2/B,OAASp4B,EAAM2hF,kBAAqD,OAAjC5oF,KAAK6D,QAAQi8C,YAAYC,KAAgB//C,KAAKmgD,KAAKC,SAASlR,OAAO7P,OAASr/B,KAAKmgD,KAAKC,SAASp3C,IAAIq2B,QACtLp4B,EAAM8hF,eAAiB,EACvB9hF,EAAM+hF,gBAAkB/hF,EAAM6hF,gBAAkB7hF,EAAM2hF,iBACtD3hF,EAAMgiF,eAAiB,CAGvB,IAAIC,GAAwBxkC,EAAWykC,YACnCC,EAAwBh7E,EAAW+6E,WAoBvC,OAnBAzkC,GAAWl5C,YAAck5C,EAAWl5C,WAAWzG,YAAY2/C,GAC3Dt2C,EAAW5C,YAAc4C,EAAW5C,WAAWzG,YAAYqJ,GAE3Ds2C,EAAWz1C,MAAMowB,OAASr/B,KAAKiH,MAAMo4B,OAAS,KAE9Cr/B,KAAKqpF,iBAGDH,EACFx9E,EAAO2yB,aAAaqmB,EAAYwkC,GAEhCx9E,EAAOwyB,YAAYwmB,GAEjB0kC,EACFppF,KAAKmgD,KAAK3F,IAAIm6B,mBAAmBt2C,aAAajwB,EAAYg7E,GAE1DppF,KAAKmgD,KAAK3F,IAAIm6B,mBAAmBz2C,YAAY9vB,GAGxCpO,KAAKiyE,cAAgBuW,GAO9BtlF,EAASkQ,UAAUi2E,eAAiB,WAClC,GAAIvpC,GAAc9/C,KAAK6D,QAAQi8C,YAAYC,KAGvCvM,EAAQ7yC,EAAKmH,QAAQ9H,KAAKmgD,KAAKe,MAAM1N,MAAO,UAC5CE,EAAM/yC,EAAKmH,QAAQ9H,KAAKmgD,KAAKe,MAAMxN,IAAK,UACxC41C,EAAgBtpF,KAAKmgD,KAAKx/C,KAAKmgD,QAAQ9gD,KAAKiH,MAAMsiF,gBAAkB,IAAMvpF,KAAK6D,QAAQ0kF,eAAetgF,UACtGs5E,EAAc+H,EAAgB1nF,EAASkwE,wBAAwB9xE,KAAK6D,QAAQE,OAAQ/D,KAAKmgD,KAAKI,YAAavgD,KAAKmgD,KAAKe,MAAOooC,EAChI/H,IAAevhF,KAAKmgD,KAAKx/C,KAAKmgD,OAAO,GAAG74C,SAExC,IAAIsrC,GAAO,GAAIxxC,GAAS,GAAI2D,MAAK8tC,GAAQ,GAAI9tC,MAAKguC,GAAM6tC,EAAavhF,KAAKmgD,KAAKI,YAC/EhN,GAAKquC,UAAU5hF,KAAK6D,QAAQE,QACxB/D,KAAK6D,QAAQ2P,QACf+/B,EAAKsuC,UAAU7hF,KAAK6D,QAAQ2P,QAE1BxT,KAAK6D,QAAQ48C,UACflN,EAAK0uC,SAASjiF,KAAK6D,QAAQ48C,UAE7BzgD,KAAKuzC,KAAOA,CAKZ,IAAIiH,GAAMx6C,KAAKw6C,GACfA,GAAI/c,UAAUwqD,MAAQztC,EAAIytC,MAC1BztC,EAAI/c,UAAUyqD,WAAa1tC,EAAI0tC,WAC/B1tC,EAAI/c,UAAU0qD,WAAa3tC,EAAI2tC,WAC/B3tC,EAAIytC,SACJztC,EAAI0tC,cACJ1tC,EAAI2tC,aAEJ,IAAIzU,GACA36D,EACAylB,EACAgrD,EACA9G,EAAS+G,EAETC,EACApvC,EACAqvC,EAIAzgF,EAPAk2B,EAAQ,EAIRwqD,EAAmBjjF,OACnBksB,EAAQ,EACRg3D,EAAM,GAMV,KAHAt2C,EAAKC,QACLz6B,EAAOw6B,EAAKE,aACZ+1C,EAAQxpF,KAAKmgD,KAAKx/C,KAAK+/C,SAAS3nC,GACzBw6B,EAAKyuC,WAAqB6H,EAARh3D,GAAa,CACpCA,IAEA6vD,EAAUnvC,EAAKmvC,UACfx5E,EAAYqqC,EAAKsvC,eACjB8G,EAAap2C,EAAKovC,gBAElBjP,EAAU36D,EACVylB,EAAIgrD,EAEJj2C,EAAKx6B,OACLA,EAAOw6B,EAAKE,aACZg2C,EAAcl2C,EAAKmvC,UACnB8G,EAAQxpF,KAAKmgD,KAAKx/C,KAAK+/C,SAAS3nC,GAEhC2wE,EAAYtqD,EACZA,EAAQoqD,EAAQhrD,CAChB,IAAIsrD,GAAgB1qD,GAAqB,GAAZsqD,CAE7B,IAAI1pF,KAAK6D,QAAQwkF,iBAAmByB,EAAe,CACjD,GAAIhrD,GAAQ9+B,KAAK+pF,kBAAkBvrD,EAAGmrD,EAAY7pC,EAAa52C,EAC/D41B,GAAM7vB,MAAMmwB,MAAQA,EAAQ,KAG1BsjD,GAAW1iF,KAAK6D,QAAQykF,iBACtB9pD,EAAI,IACkB73B,QAApBijF,IACFA,EAAmBprD,GAErBM,EAAQ9+B,KAAKgqF,kBAAkBxrD,EAAG+U,EAAKqvC,gBAAiB9iC,EAAa52C,IAEvEoxC,EAAOt6C,KAAKiqF,kBAAkBzrD,EAAGY,EAAO0gB,EAAa52C,IAGjD4gF,EACFxvC,EAAOt6C,KAAKkqF,kBAAkB1rD,EAAGY,EAAO0gB,EAAa52C,GAEjDoxC,IAEFA,EAAKrrC,MAAMmwB,MAAQ1yB,SAAS4tC,EAAKrrC,MAAMmwB,OAASA,EAAQ,MAYhE,GANIvM,IAAUg3D,GAAQM,IACpB5yE,QAAQH,KAAK,gFAAkFyyE,EAAM,WACrGM,GAAoB,GAIlBnqF,KAAK6D,QAAQykF,gBAAiB,CAChC,GAAI8B,GAAWpqF,KAAKmgD,KAAKx/C,KAAKmgD,OAAO,GACjCupC,EAAW92C,EAAKqvC,cAAcwH,GAC9BE,EAAYD,EAAS3jF,QAAU1G,KAAKiH,MAAMsjF,gBAAkB,IAAM,IAE9C5jF,QAApBijF,GAA6CA,EAAZU,IACnCtqF,KAAKgqF,kBAAkB,EAAGK,EAAUvqC,EAAa52C,GAKrDvI,EAAK8I,QAAQzJ,KAAKw6C,IAAI/c,UAAW,SAAUl1B,GACzC,KAAOA,EAAI7B,QAAQ,CACjB,GAAIkC,GAAOL,EAAIiiF,KACX5hF,IAAQA,EAAK4C,YACf5C,EAAK4C,WAAWzG,YAAY6D,OAepC1F,EAASkQ,UAAU22E,kBAAoB,SAAUvrD,EAAGiW,EAAMqL,EAAa52C,GAErE,GAAI41B,GAAQ9+B,KAAKw6C,IAAI/c,UAAU0qD,WAAWpqD,OAE1C,KAAKe,EAAO,CAEV,GAAIG,GAAUjB,SAASysD,eAAe,GACtC3rD,GAAQd,SAASM,cAAc,OAC/BQ,EAAMZ,YAAYe,GAClBj/B,KAAKw6C,IAAIkK,WAAWxmB,YAAYY,GAWlC,MATA9+B,MAAKw6C,IAAI2tC,WAAWxgF,KAAKm3B,GAEzBA,EAAM4rD,WAAW,GAAGC,UAAYl2C,EAEhC3V,EAAM7vB,MAAMjG,IAAqB,OAAf82C,EAAuB9/C,KAAKiH,MAAM2hF,iBAAmB,KAAO,IAC9E9pD,EAAM7vB,MAAMnG,KAAO01B,EAAI,KACvBM,EAAM51B,UAAY,sBAAwBA,EAGnC41B,GAYT57B,EAASkQ,UAAU42E,kBAAoB,SAAUxrD,EAAGiW,EAAMqL,EAAa52C,GAErE,GAAI41B,GAAQ9+B,KAAKw6C,IAAI/c,UAAUyqD,WAAWnqD,OAE1C,KAAKe,EAAO,CAEV,GAAIG,GAAUjB,SAASysD,eAAeh2C,EACtC3V,GAAQd,SAASM,cAAc,OAC/BQ,EAAMZ,YAAYe,GAClBj/B,KAAKw6C,IAAIkK,WAAWxmB,YAAYY,GAWlC,MATA9+B,MAAKw6C,IAAI0tC,WAAWvgF,KAAKm3B,GAEzBA,EAAM4rD,WAAW,GAAGC,UAAYl2C,EAChC3V,EAAM51B,UAAY,sBAAwBA,EAG1C41B,EAAM7vB,MAAMjG,IAAqB,OAAf82C,EAAuB,IAAM9/C,KAAKiH,MAAMyhF,iBAAmB,KAC7E5pD,EAAM7vB,MAAMnG,KAAO01B,EAAI,KAEhBM,GAYT57B,EAASkQ,UAAU82E,kBAAoB,SAAU1rD,EAAGY,EAAO0gB,EAAa52C,GAEtE,GAAIoxC,GAAOt6C,KAAKw6C,IAAI/c,UAAUwqD,MAAMlqD,OAC/Buc,KAEHA,EAAOtc,SAASM,cAAc,OAC9Bt+B,KAAKw6C,IAAIpsC,WAAW8vB,YAAYoc,IAElCt6C,KAAKw6C,IAAIytC,MAAMtgF,KAAK2yC,EAEpB,IAAIrzC,GAAQjH,KAAKiH,KAYjB,OAXmB,OAAf64C,EACFxF,EAAKrrC,MAAMjG,IAAM/B,EAAM2hF,iBAAmB,KAE1CtuC,EAAKrrC,MAAMjG,IAAMhJ,KAAKmgD,KAAKC,SAASp3C,IAAIq2B,OAAS,KAEnDib,EAAKrrC,MAAMowB,OAASp4B,EAAM6hF,gBAAkB,KAC5CxuC,EAAKrrC,MAAMnG,KAAO01B,EAAIv3B,EAAM8hF,eAAiB,EAAI,KACjDzuC,EAAKrrC,MAAMmwB,MAAQA,EAAQ,KAE3Bkb,EAAKpxC,UAAY,mCAAqCA,EAE/CoxC,GAYTp3C,EAASkQ,UAAU62E,kBAAoB,SAAUzrD,EAAGY,EAAO0gB,EAAa52C,GAEtE,GAAIoxC,GAAOt6C,KAAKw6C,IAAI/c,UAAUwqD,MAAMlqD,OAC/Buc,KAEHA,EAAOtc,SAASM,cAAc,OAC9Bt+B,KAAKw6C,IAAIpsC,WAAW8vB,YAAYoc,IAElCt6C,KAAKw6C,IAAIytC,MAAMtgF,KAAK2yC,EAEpB,IAAIrzC,GAAQjH,KAAKiH,KAYjB,OAXmB,OAAf64C,EACFxF,EAAKrrC,MAAMjG,IAAM,IAEjBsxC,EAAKrrC,MAAMjG,IAAMhJ,KAAKmgD,KAAKC,SAASp3C,IAAIq2B,OAAS,KAEnDib,EAAKrrC,MAAMnG,KAAO01B,EAAIv3B,EAAMgiF,eAAiB,EAAI,KACjD3uC,EAAKrrC,MAAMowB,OAASp4B,EAAM+hF,gBAAkB,KAC5C1uC,EAAKrrC,MAAMmwB,MAAQA,EAAQ,KAE3Bkb,EAAKpxC,UAAY,mCAAqCA,EAE/CoxC,GAQTp3C,EAASkQ,UAAUq1E,mBAAqB,WAKjCzoF,KAAKw6C,IAAIowC,mBACZ5qF,KAAKw6C,IAAIowC,iBAAmB5sD,SAASM,cAAc,OACnDt+B,KAAKw6C,IAAIowC,iBAAiB1hF,UAAY,iCACtClJ,KAAKw6C,IAAIowC,iBAAiB37E,MAAMqgC,SAAW,WAE3CtvC,KAAKw6C,IAAIowC,iBAAiB1sD,YAAYF,SAASysD,eAAe,MAC9DzqF,KAAKw6C,IAAIkK,WAAWxmB,YAAYl+B,KAAKw6C,IAAIowC,mBAE3C5qF,KAAKiH,MAAM0hF,gBAAkB3oF,KAAKw6C,IAAIowC,iBAAiBt6C,aACvDtwC,KAAKiH,MAAMsiF,eAAiBvpF,KAAKw6C,IAAIowC,iBAAiBt/C,YAGjDtrC,KAAKw6C,IAAIqwC,mBACZ7qF,KAAKw6C,IAAIqwC,iBAAmB7sD,SAASM,cAAc,OACnDt+B,KAAKw6C,IAAIqwC,iBAAiB3hF,UAAY,iCACtClJ,KAAKw6C,IAAIqwC,iBAAiB57E,MAAMqgC,SAAW,WAE3CtvC,KAAKw6C,IAAIqwC,iBAAiB3sD,YAAYF,SAASysD,eAAe,MAC9DzqF,KAAKw6C,IAAIkK,WAAWxmB,YAAYl+B,KAAKw6C,IAAIqwC,mBAE3C7qF,KAAKiH,MAAM4hF,gBAAkB7oF,KAAKw6C,IAAIqwC,iBAAiBv6C,aACvDtwC,KAAKiH,MAAMsjF,eAAiBvqF,KAAKw6C,IAAIqwC,iBAAiBv/C,YAGxD,IAAI6+C,IAAoB,CAExBtqF,GAAOD,QAAUsD,GAIb,SAASrD,EAAQD,EAASM,GAmB9B,QAASs0E,GAAUxvC,GACjBhlC,KAAKs2E,QAAS,EAEdt2E,KAAKw6C,KACHxV,UAAWA,GAGbhlC,KAAKw6C,IAAIswC,QAAU9sD,SAASM,cAAc,OAC1Ct+B,KAAKw6C,IAAIswC,QAAQ5hF,UAAY,cAE7BlJ,KAAKw6C,IAAIxV,UAAU9G,YAAYl+B,KAAKw6C,IAAIswC,SAExC9qF,KAAK8rD,OAAS9nD,EAAOhE,KAAKw6C,IAAIswC,SAC9B9qF,KAAK8rD,OAAO9rB,GAAG,MAAOhgC,KAAK+qF,cAAczqC,KAAKtgD,MAG9C,IAAI4gC,GAAK5gC,KACL84D,GAAU,MAAO,YAAa,QAAS,QAAS,MAAO,WAAY,UAAW,SAClFA,GAAOrvD,QAAQ,SAAUwB,GACvB21B,EAAGkrB,OAAO9rB,GAAG/0B,EAAO,SAAUA,GAC5BA,EAAMiuD,sBAKNl7B,UAAYA,SAASmiB,OACvBngD,KAAKgrF,QAAU,SAAU//E,GAClBggF,EAAWhgF,EAAMI,OAAQ25B,IAC5BpE,EAAGsqD,cAGPltD,SAASmiB,KAAK71C,iBAAiB,QAAStK,KAAKgrF,UAGzBrkF,SAAlB3G,KAAKiE,UACPjE,KAAKiE,SAAS87B,UAEhB//B,KAAKiE,SAAWA,IAGhBjE,KAAKmrF,YAAcnrF,KAAKkrF,WAAW5qC,KAAKtgD,MAsF1C,QAASirF,GAAW1gF,EAASmB,GAC3B,KAAOnB,GAAS,CACd,GAAIA,IAAYmB,EACd,OAAO,CAETnB,GAAUA,EAAQiB,WAEpB,OAAO,EApJT,GAAIvH,GAAW/D,EAAoB,IAC/B4oC,EAAU5oC,EAAoB,IAC9B8D,EAAS9D,EAAoB,IAC7BS,EAAOT,EAAoB,EAwD/B4oC,GAAQ0rC,EAAUphE,WAGlBohE,EAAUd,QAAU,KAKpBc,EAAUphE,UAAU2sB,QAAU,WAC5B//B,KAAKkrF,aAGLlrF,KAAKw6C,IAAIswC,QAAQt/E,WAAWzG,YAAY/E,KAAKw6C,IAAIswC,SAG7C9qF,KAAKgrF,SACPhtD,SAASmiB,KAAKr1C,oBAAoB,QAAS9K,KAAKgrF,SAIlDhrF,KAAK8rD,OAAO/rB,UACZ//B,KAAK8rD,OAAS,MAQhB0oB,EAAUphE,UAAUg4E,SAAW,WAEzB5W,EAAUd,SACZc,EAAUd,QAAQwX,aAEpB1W,EAAUd,QAAU1zE,KAEpBA,KAAKs2E,QAAS,EACdt2E,KAAKw6C,IAAIswC,QAAQ77E,MAAMkmD,QAAU,OACjCx0D,EAAKsI,aAAajJ,KAAKw6C,IAAIxV,UAAW,cAEtChlC,KAAKy4C,KAAK,UACVz4C,KAAKy4C,KAAK,YAIVz4C,KAAKiE,SAASq8C,KAAK,MAAOtgD,KAAKmrF,cAOjC3W,EAAUphE,UAAU83E,WAAa,WAC/BlrF,KAAKs2E,QAAS,EACdt2E,KAAKw6C,IAAIswC,QAAQ77E,MAAMkmD,QAAU,GACjCx0D,EAAK2I,gBAAgBtJ,KAAKw6C,IAAIxV,UAAW,cACzChlC,KAAKiE,SAASonF,OAAO,MAAOrrF,KAAKmrF,aAEjCnrF,KAAKy4C,KAAK,UACVz4C,KAAKy4C,KAAK,eAQZ+7B,EAAUphE,UAAU23E,cAAgB,SAAU9/E,GAE5CjL,KAAKorF,WACLngF,EAAMiuD,mBAsBRr5D,EAAOD,QAAU40E,GAIb,SAAS30E,EAAQD,EAASM,GAE9B,GAAIw4D,GAAgCC,EAA8BC,GAOjE,SAAUl5D,EAAMC,GAGXg5D,KAAmCD,EAAiC,EAAWE,EAA2E,kBAAnCF,GAAiDA,EAA+BxlD,MAAMtT,EAAS+4D,GAAiCD,IAAmE/xD,SAAlCiyD,IAAgD/4D,EAAOD,QAAUg5D,KAU7V54D,KAAM,WAEN,QAASiE,GAASJ,GAChB,GAOIgD,GAPAmE,EAAiBnH,GAAWA,EAAQmH,iBAAkB,EAEtDg6B,EAAYnhC,GAAWA,EAAQmhC,WAAa95B,OAE5CogF,KACAC,GAAUC,WAAYC,UACtBC,IAIJ,KAAK7kF,EAAI,GAAS,KAALA,EAAUA,IAAM6kF,EAAMlmF,OAAOmmF,aAAa9kF,KAAOwS,KAAK,IAAMxS,EAAI,IAAKk3B,OAAO,EAEzF,KAAKl3B,EAAI,GAAS,IAALA,EAASA,IAAM6kF,EAAMlmF,OAAOmmF,aAAa9kF,KAAOwS,KAAKxS,EAAGk3B,OAAO,EAE5E,KAAKl3B,EAAI,EAAS,GAALA,EAAUA,IAAM6kF,EAAM,GAAK7kF,IAAMwS,KAAK,GAAKxS,EAAGk3B,OAAO,EAElE,KAAKl3B,EAAI,EAAS,IAALA,EAAWA,IAAM6kF,EAAM,IAAM7kF,IAAMwS,KAAK,IAAMxS,EAAGk3B,OAAO,EAErE,KAAKl3B,EAAI,EAAS,GAALA,EAAUA,IAAM6kF,EAAM,MAAQ7kF,IAAMwS,KAAK,GAAKxS,EAAGk3B,OAAO,EAGrE2tD,GAAM,SAAWryE,KAAK,IAAK0kB,OAAO,GAClC2tD,EAAM,SAAWryE,KAAK,IAAK0kB,OAAO,GAClC2tD,EAAM,SAAWryE,KAAK,IAAK0kB,OAAO,GAClC2tD,EAAM,SAAWryE,KAAK,IAAK0kB,OAAO,GAClC2tD,EAAM,SAAWryE,KAAK,IAAK0kB,OAAO,GAElC2tD,EAAY,MAAMryE,KAAK,GAAI0kB,OAAO,GAClC2tD,EAAU,IAAQryE,KAAK,GAAI0kB,OAAO,GAClC2tD,EAAa,OAAKryE,KAAK,GAAI0kB,OAAO,GAClC2tD,EAAY,MAAMryE,KAAK,GAAI0kB,OAAO,GAElC2tD,EAAa,OAAKryE,KAAK,GAAI0kB,OAAO,GAClC2tD,EAAa,OAAKryE,KAAK,GAAI0kB,OAAO,GAClC2tD,EAAa,OAAKryE,KAAK,GAAI0kB,MAAOp3B,QAClC+kF,EAAW,KAAOryE,KAAK,GAAI0kB,OAAO,GAClC2tD,EAAiB,WAAKryE,KAAK,EAAG0kB,OAAO,GACrC2tD,EAAW,KAAWryE,KAAK,EAAG0kB,OAAO,GACrC2tD,EAAY,MAAUryE,KAAK,GAAI0kB,OAAO,GACtC2tD,EAAW,KAAWryE,KAAK,GAAI0kB,OAAO,GACtC2tD,EAAM,WAAgBryE,KAAK,GAAI0kB,OAAO,GACtC2tD,EAAc,QAAQryE,KAAK,GAAI0kB,OAAO,GACtC2tD,EAAgB,UAAMryE,KAAK,GAAI0kB,OAAO,GAEtC2tD,EAAM,MAAYryE,KAAK,IAAK0kB,OAAO,GACnC2tD,EAAM,MAAYryE,KAAK,IAAK0kB,OAAO,GACnC2tD,EAAM,MAAYryE,KAAK,IAAK0kB,OAAO,GACnC2tD,EAAM,MAAYryE,KAAK,IAAK0kB,OAAO,EAInC,IAAI6tD,GAAO,SAAS3gF,GAAQ4gF,EAAY5gF,EAAM,YAC1C6gF,EAAK,SAAS7gF,GAAQ4gF,EAAY5gF,EAAM,UAGxC4gF,EAAc,SAAS5gF,EAAMlD,GAC/B,GAAoCpB,SAAhC4kF,EAAOxjF,GAAMkD,EAAM8gF,SAAwB,CAE7C,IAAK,GADDC,GAAQT,EAAOxjF,GAAMkD,EAAM8gF,SACtBllF,EAAI,EAAGA,EAAImlF,EAAMtlF,OAAQG,IACTF,SAAnBqlF,EAAMnlF,GAAGk3B,MACXiuD,EAAMnlF,GAAGmD,GAAGiB,GAEa,GAAlB+gF,EAAMnlF,GAAGk3B,OAAmC,GAAlB9yB,EAAM41E,SACvCmL,EAAMnlF,GAAGmD,GAAGiB,GAEa,GAAlB+gF,EAAMnlF,GAAGk3B,OAAoC,GAAlB9yB,EAAM41E,UACxCmL,EAAMnlF,GAAGmD,GAAGiB,EAIM,IAAlBD,GACFC,EAAMD,kBA4FZ,OAtFAsgF,GAAiBhrC,KAAO,SAASx2C,EAAKJ,EAAU3B,GAI9C,GAHapB,SAAToB,IACFA,EAAO,WAEUpB,SAAf+kF,EAAM5hF,GACR,KAAM,IAAI1C,OAAM,oBAAsB0C,EAEFnD,UAAlC4kF,EAAOxjF,GAAM2jF,EAAM5hF,GAAKuP,QAC1BkyE,EAAOxjF,GAAM2jF,EAAM5hF,GAAKuP,UAE1BkyE,EAAOxjF,GAAM2jF,EAAM5hF,GAAKuP,MAAM1R,MAAMqC,GAAGN,EAAUq0B,MAAM2tD,EAAM5hF,GAAKi0B,SAKpEutD,EAAiBW,QAAU,SAASviF,EAAU3B,GAC/BpB,SAAToB,IACFA,EAAO,UAET,KAAK,GAAI+B,KAAO4hF,GACVA,EAAMtlF,eAAe0D,IACvBwhF,EAAiBhrC,KAAKx2C,EAAIJ,EAAS3B,IAMzCujF,EAAiBY,OAAS,SAASjhF,GACjC,IAAK,GAAInB,KAAO4hF,GACd,GAAIA,EAAMtlF,eAAe0D,GAAM,CAC7B,GAAsB,GAAlBmB,EAAM41E,UAAwC,GAApB6K,EAAM5hF,GAAKi0B,OAAiB9yB,EAAM8gF,SAAWL,EAAM5hF,GAAKuP,KACpF,MAAOvP,EAEJ,IAAsB,GAAlBmB,EAAM41E,UAAyC,GAApB6K,EAAM5hF,GAAKi0B,OAAkB9yB,EAAM8gF,SAAWL,EAAM5hF,GAAKuP,KAC3F,MAAOvP,EAEJ,IAAImB,EAAM8gF,SAAWL,EAAM5hF,GAAKuP,MAAe,SAAPvP,EAC3C,MAAOA,GAIb,MAAO,wCAITwhF,EAAiBD,OAAS,SAASvhF,EAAKJ,EAAU3B,GAIhD,GAHapB,SAAToB,IACFA,EAAO,WAEUpB,SAAf+kF,EAAM5hF,GACR,KAAM,IAAI1C,OAAM,oBAAsB0C,EAExC,IAAiBnD,SAAb+C,EAAwB,CAC1B,GAAIyiF,MACAH,EAAQT,EAAOxjF,GAAM2jF,EAAM5hF,GAAKuP,KACpC,IAAc1S,SAAVqlF,EACF,IAAK,GAAInlF,GAAI,EAAGA,EAAImlF,EAAMtlF,OAAQG,IAC1BmlF,EAAMnlF,GAAGmD,IAAMN,GAAYsiF,EAAMnlF,GAAGk3B,OAAS2tD,EAAM5hF,GAAKi0B,OAC5DouD,EAAYxkF,KAAK4jF,EAAOxjF,GAAM2jF,EAAM5hF,GAAKuP,MAAMxS,GAIrD0kF,GAAOxjF,GAAM2jF,EAAM5hF,GAAKuP,MAAQ8yE,MAGhCZ,GAAOxjF,GAAM2jF,EAAM5hF,GAAKuP,UAK5BiyE,EAAiBthB,MAAQ,WACvBuhB,GAAUC,WAAYC,WAIxBH,EAAiBvrD,QAAU,WACzBwrD,GAAUC,WAAYC,UACtBzmD,EAAUl6B,oBAAoB,UAAW8gF,GAAM,GAC/C5mD,EAAUl6B,oBAAoB,QAASghF,GAAI,IAI7C9mD,EAAU16B,iBAAiB,UAAUshF,GAAK,GAC1C5mD,EAAU16B,iBAAiB,QAAQwhF,GAAG,GAG/BR,EAGT,MAAOrnF,MAQL,SAASpE,EAAQD,EAASM,GAqB9B,QAASwC,GAAWy9C,EAAMt8C,GACxB7D,KAAKmgD,KAAOA,EAGZngD,KAAK2/C,gBACH57C,OAAQA,EACRmV,QAASA,EACTzF,OAAQ,KACRpT,GAAIsG,OACJgwE,MAAOhwE,QAET3G,KAAK6D,QAAUlD,EAAKoG,UAAW/G,KAAK2/C,gBAEhC97C,GAAWA,EAAQmoB,KACrBhsB,KAAKqkD,WAAaxgD,EAAQmoB,KAE1BhsB,KAAKqkD,WAAa,GAAI3+C,MAGxB1F,KAAKosF,eAELpsF,KAAK4/B,WAAW/7B,GAGhB7D,KAAKkgD,UAzCP,GAAIl8C,GAAS9D,EAAoB,IAC7BS,EAAOT,EAAoB,GAC3BsC,EAAYtC,EAAoB,IAChC6D,EAAS7D,EAAoB,GAC7BgZ,EAAUhZ,EAAoB,GAwClCwC,GAAW0Q,UAAY,GAAI5Q,GAS3BE,EAAW0Q,UAAUwsB,WAAa,SAAU/7B,GACtCA,GAEFlD,EAAKqG,iBAAiB,SAAU,SAAU,UAAW,MAAOhH,KAAK6D,QAASA,IAQ9EnB,EAAW0Q,UAAU8sC,QAAU,WAC7B,GAAIjD,GAAMjf,SAASM,cAAc,MACjC2e,GAAI,eAAiBj9C,KACrBi9C,EAAI/zC,UAAY,oBAAsBlJ,KAAK6D,QAAQxD,IAAM,IACzD48C,EAAIhuC,MAAMqgC,SAAW,WACrB2N,EAAIhuC,MAAMjG,IAAM,MAChBi0C,EAAIhuC,MAAMowB,OAAS,OACnBr/B,KAAKi9C,IAAMA,CAEX,IAAIwa,GAAOz5B,SAASM,cAAc,MAClCm5B,GAAKxoD,MAAMqgC,SAAW,WACtBmoB,EAAKxoD,MAAMjG,IAAM,MACjByuD,EAAKxoD,MAAMnG,KAAO,QAClB2uD,EAAKxoD,MAAMowB,OAAS,OACpBo4B,EAAKxoD,MAAMmwB,MAAQ,OACnB6d,EAAI/e,YAAYu5B,GAGhBz3D,KAAK8rD,OAAS,GAAI9nD,GAAOyzD,GACzBz3D,KAAK8rD,OAAO9rB,GAAG,WAAYhgC,KAAKivE,aAAa3uB,KAAKtgD,OAClDA,KAAK8rD,OAAO9rB,GAAG,UAAWhgC,KAAKkvE,QAAQ5uB,KAAKtgD,OAC5CA,KAAK8rD,OAAO9rB,GAAG,SAAUhgC,KAAKmvE,WAAW7uB,KAAKtgD,OAC9CA,KAAK8rD,OAAOl0B,IAAI,OAAOlf,KAAMgc,UAAW,EAAGhJ,UAAW1nB,EAAOuiE,wBAM/D7jE,EAAW0Q,UAAU2sB,QAAU,WAC7B//B,KAAK67E,OAEL77E,KAAK8rD,OAAO/rB,UACZ//B,KAAK8rD,OAAS,KAEd9rD,KAAKmgD,KAAO,MAOdz9C,EAAW0Q,UAAUk6B,OAAS,WAC5B,GAAI5hC,GAAS1L,KAAKmgD,KAAK3F,IAAIm6B,kBACvB30E,MAAKi9C,IAAIzxC,YAAcE,IAErB1L,KAAKi9C,IAAIzxC,YACXxL,KAAKi9C,IAAIzxC,WAAWzG,YAAY/E,KAAKi9C,KAEvCvxC,EAAOwyB,YAAYl+B,KAAKi9C,KAG1B,IAAIze,GAAIx+B,KAAKmgD,KAAKx/C,KAAK+/C,SAAS1gD,KAAKqkD,YAEjC5wC,EAASzT,KAAK6D,QAAQqV,QAAQlZ,KAAK6D,QAAQ4P,OAC1CA,KACEzT,KAAKqsF,SACR90E,QAAQwnC,IAAI,6BAAgC/+C,KAAK6D,QAAQ4P,OAAS,sEAClEzT,KAAKqsF,QAAS,GAEhB54E,EAASzT,KAAK6D,QAAQqV,QAAY,GAGpC,IAAIy9D,GAAQ32E,KAAK6D,QAAQ8yE,KAUzB,OARchwE,UAAVgwE,IACFA,EAAQljE,EAAOuY,KAAO,KAAOhsB,KAAK6D,QAAQE,OAAO/D,KAAKqkD,YAAY7wC,OAAO,+BACzEmjE,EAAQA,EAAMtlD,OAAO,GAAGa,cAAgBykD,EAAM2V,UAAU,IAG1DtsF,KAAKi9C,IAAIhuC,MAAMnG,KAAO01B,EAAI,KAC1Bx+B,KAAKi9C,IAAI05B,MAAQA,GAEV,GAMTj0E,EAAW0Q,UAAUyoE,KAAO,WAEtB77E,KAAKi9C,IAAIzxC,YACXxL,KAAKi9C,IAAIzxC,WAAWzG,YAAY/E,KAAKi9C,MAQzCv6C,EAAW0Q,UAAUojE,cAAgB,SAAUxqD,GAC7ChsB,KAAKqkD,WAAa1jD,EAAKmH,QAAQkkB,EAAM,QACrChsB,KAAKstC,UAOP5qC,EAAW0Q,UAAUqjE,cAAgB,WACnC,MAAO,IAAI/wE,MAAK1F,KAAKqkD,WAAWp8C,YAOlCvF,EAAW0Q,UAAUwjE,eAAiB,SAAUD,GAC9C32E,KAAK6D,QAAQ8yE,MAAQA,GAQvBj0E,EAAW0Q,UAAU67D,aAAe,SAAUhkE,GAC5CjL,KAAKosF,YAAYjc,UAAW,EAC5BnwE,KAAKosF,YAAY/nC,WAAarkD,KAAKqkD,WAEnCp5C,EAAMiuD,mBAQRx2D,EAAW0Q,UAAU87D,QAAU,SAAUjkE,GACvC,GAAKjL,KAAKosF,YAAYjc,SAAtB,CAEA,GAAI3xC,GAAIx+B,KAAKmgD,KAAKx/C,KAAK+/C,SAAS1gD,KAAKosF,YAAY/nC,YAAcp5C,EAAMo0D,OACjErzC,EAAOhsB,KAAKmgD,KAAKx/C,KAAKmgD,OAAOtiB,EAEjCx+B,MAAKw2E,cAAcxqD,GAGnBhsB,KAAKmgD,KAAKE,QAAQ5H,KAAK,cACrBp4C,GAAIL,KAAK6D,QAAQxD,GACjB2rB,KAAM,GAAItmB,MAAK1F,KAAKqkD,WAAWp8C,aAGjCgD,EAAMiuD,oBAQRx2D,EAAW0Q,UAAU+7D,WAAa,SAAUlkE,GACrCjL,KAAKosF,YAAYjc,WAGtBnwE,KAAKmgD,KAAKE,QAAQ5H,KAAK,eACrBp4C,GAAIL,KAAK6D,QAAQxD,GACjB2rB,KAAM,GAAItmB,MAAK1F,KAAKqkD,WAAWp8C,aAGjCgD,EAAMiuD,oBASRx2D,EAAW4hD,qBAAuB,SAAUr5C,GAE1C,IADA,GAAII,GAASJ,EAAMI,OACZA,GAAQ,CACb,GAAIA,EAAOjF,eAAe,eACxB,MAAOiF,GAAO,cAEhBA,GAASA,EAAOG,WAGlB,MAAO,OAGT3L,EAAOD,QAAU8C,GAIb,SAAS7C,EAAQD,GAKrBA,EAAY,IACV8zE,QAAS,UACT1nD,KAAM,QAERpsB,EAAe,MAAIA,EAAY,GAC/BA,EAAe,MAAIA,EAAY,GAG/BA,EAAY,IACV8zE,QAAS,UACT1nD,KAAM,QAERpsB,EAAe,MAAIA,EAAY,GAC/BA,EAAe,MAAIA,EAAY,IAI3B,SAASC,EAAQD,EAASM,GAiB9B,QAASuC,GAAY09C,EAAMt8C,GACzB7D,KAAKmgD,KAAOA,EAGZngD,KAAK2/C,gBACH4sC,iBAAiB,EAEjBxoF,OAAQA,EACRmV,QAASA,EACTzF,OAAQ,MAEVzT,KAAK6D,QAAUlD,EAAKoG,UAAW/G,KAAK2/C,gBACpC3/C,KAAKuoB,OAAS,EAEdvoB,KAAKkgD,UAELlgD,KAAK4/B,WAAW/7B,GA7BlB,GAAIlD,GAAOT,EAAoB,GAC3BsC,EAAYtC,EAAoB,IAChC6D,EAAS7D,EAAoB,GAC7BgZ,EAAUhZ,EAAoB,GA6BlCuC,GAAY2Q,UAAY,GAAI5Q,GAM5BC,EAAY2Q,UAAU8sC,QAAU,WAC9B,GAAIjD,GAAMjf,SAASM,cAAc,MACjC2e,GAAI/zC,UAAY,mBAChB+zC,EAAIhuC,MAAMqgC,SAAW,WACrB2N,EAAIhuC,MAAMjG,IAAM,MAChBi0C,EAAIhuC,MAAMowB,OAAS,OAEnBr/B,KAAKi9C,IAAMA,GAMbx6C,EAAY2Q,UAAU2sB,QAAU,WAC9B//B,KAAK6D,QAAQ0oF,iBAAkB,EAC/BvsF,KAAKstC,SAELttC,KAAKmgD,KAAO,MAQd19C,EAAY2Q,UAAUwsB,WAAa,SAAU/7B,GACvCA,GAEFlD,EAAKqG,iBAAiB,kBAAmB,SAAU,SAAU,WAAYhH,KAAK6D,QAASA,IAQ3FpB,EAAY2Q,UAAUk6B,OAAS,WAC7B,GAAIttC,KAAK6D,QAAQ0oF,gBAAiB,CAChC,GAAI7gF,GAAS1L,KAAKmgD,KAAK3F,IAAIm6B,kBACvB30E,MAAKi9C,IAAIzxC,YAAcE,IAErB1L,KAAKi9C,IAAIzxC,YACXxL,KAAKi9C,IAAIzxC,WAAWzG,YAAY/E,KAAKi9C,KAEvCvxC,EAAOwyB,YAAYl+B,KAAKi9C,KAExBj9C,KAAKwzC,QAGP,IAAIxvB,GAAMhkB,KAAK6D,QAAQE,QAAO,GAAI2B,OAAOuC,UAAYjI,KAAKuoB,QACtDiW,EAAIx+B,KAAKmgD,KAAKx/C,KAAK+/C,SAAS18B,GAE5BvQ,EAASzT,KAAK6D,QAAQqV,QAAQlZ,KAAK6D,QAAQ4P,OAC1CA,KACEzT,KAAKqsF,SACR90E,QAAQwnC,IAAI,6BAAgC/+C,KAAK6D,QAAQ4P,OAAS,kEAClEzT,KAAKqsF,QAAS,GAEhB54E,EAASzT,KAAK6D,QAAQqV,QAAY,GAEpC,IAAIy9D,GAAQljE,EAAOigE,QAAU,IAAMjgE,EAAOuY,KAAO,KAAOhI,EAAIxQ,OAAO,8BACnEmjE,GAAQA,EAAMtlD,OAAO,GAAGa,cAAgBykD,EAAM2V,UAAU,GAExDtsF,KAAKi9C,IAAIhuC,MAAMnG,KAAO01B,EAAI,KAC1Bx+B,KAAKi9C,IAAI05B,MAAQA,MAGb32E,MAAKi9C,IAAIzxC,YACXxL,KAAKi9C,IAAIzxC,WAAWzG,YAAY/E,KAAKi9C,KAEvCj9C,KAAK2wC,MAGP,QAAO,GAMTluC,EAAY2Q,UAAUogC,MAAQ,WAG5B,QAAS1S,KACPF,EAAG+P,MAGH,IAAItrC,GAAQu7B,EAAGuf,KAAKe,MAAMyvB,WAAW/vC,EAAGuf,KAAKC,SAASnJ,OAAO7X,OAAO/5B,MAChEu4C,EAAW,EAAIv4C,EAAQ,EACZ,IAAXu4C,IAAeA,EAAW,IAC1BA,EAAW,MAAMA,EAAW,KAEhChd,EAAG0M,SACH1M,EAAGuf,KAAKE,QAAQ5H,KAAK,mBAGrB7X,EAAG4rD,iBAAmBniF,WAAWy2B,EAAQ8c,GAf3C,GAAIhd,GAAK5gC,IAkBT8gC,MAMFr+B,EAAY2Q,UAAUu9B,KAAO,WACGhqC,SAA1B3G,KAAKwsF,mBACPtoD,aAAalkC,KAAKwsF,wBACXxsF,MAAKwsF,mBAUhB/pF,EAAY2Q,UAAU2kE,eAAiB,SAAU/rD,GAC/C,GAAIlc,GAAInP,EAAKmH,QAAQkkB,EAAM,QAAQ/jB,UAC/B+b,GAAM,GAAIte,OAAOuC,SACrBjI,MAAKuoB,OAASzY,EAAIkU,EAClBhkB,KAAKstC,UAOP7qC,EAAY2Q,UAAU4kE,eAAiB,WACrC,MAAO,IAAItyE,OAAK,GAAIA,OAAOuC,UAAYjI,KAAKuoB,SAG9C1oB,EAAOD,QAAU6C,GAIb,SAAS5C,EAAQD,GAIrB2H,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAST,IAAIic,GAAS,SACTorE,EAAU,UACVl2E,EAAS,SACT3M,EAAQ,QACRsV,EAAO,OACPza,EAAS,SACT+1C,EAAM,MACNz2C,EAAS,SACT2oF,EAAM,MAENlpF,GACF0yE,WACEllE,SAAWy7E,UAASA,GACpBrsD,QAAUqsD,UAASA,EAASE,WAAY,YACxC3nD,WAAawV,IAAKA,GAClByyB,UAAYxoE,OAAQA,EAAQgoF,UAASA,EAASE,WAAY,aAI5D/T,OAASv3D,OAAQA,GACjBu+B,YAAc6sC,UAASA,GACvB5sC,gBAAkBtpC,OAAQA,GAC1Bs/D,YAAc4W,UAASA,GACvBlF,gBAAkBlmE,OAAQA,EAAQzX,MAAOA,GACzCyvE,UACEryD,KAAOylE,UAASA,EAAS9lF,UAAa,aACtC47B,QAAUkqD,UAASA,EAAS9lF,UAAa,aACzC4yE,aAAekT,UAASA,EAAS9lF,UAAa,aAC9C2yE,YAAcmT,UAASA,EAAS9lF,UAAa,aAC7CsmE,UAAYwf,UAASA,EAAShoF,OAAQA,IAExCivC,KAAOn9B,OAAQA,EAAQ2I,KAAMA,EAAMmC,OAAQA,EAAQtd,OAAQA,GAC3DyP,QACEkuE,aACE76D,aAAexF,OAAQA,EAAQ1a,UAAa,aAC5CigB,QAAUvF,OAAQA,EAAQ1a,UAAa,aACvCggB,QAAUtF,OAAQA,EAAQ1a,UAAa,aACvCmf,MAAQzE,OAAQA,EAAQ1a,UAAa,aACrCwc,SAAW9B,OAAQA,EAAQ1a,UAAa,aACxC+f,KAAOrF,OAAQA,EAAQ1a,UAAa,aACpCqX,OAASqD,OAAQA,EAAQ1a,UAAa,aACtCoX,MAAQsD,OAAQA,EAAQ1a,UAAa,aACrCsmE,UAAYxoE,OAAQA,IAEtBk9E,aACE96D,aAAexF,OAAQA,EAAQ1a,UAAa,aAC5CigB,QAAUvF,OAAQA,EAAQ1a,UAAa,aACvCggB,QAAUtF,OAAQA,EAAQ1a,UAAa,aACvCmf,MAAQzE,OAAQA,EAAQ1a,UAAa,aACrCwc,SAAW9B,OAAQA,EAAQ1a,UAAa,aACxC+f,KAAOrF,OAAQA,EAAQ1a,UAAa,aACpCqX,OAASqD,OAAQA,EAAQ1a,UAAa,aACtCoX,MAAQsD,OAAQA,EAAQ1a,UAAa,aACrCsmE,UAAYxoE,OAAQA,IAEtBwoE,UAAYxoE,OAAQA,IAEtBV,QAAU4oF,WAAY,YACtB1T,YAAc53D,OAAQA,EAAQsrE,WAAY,YAC1CnT,eACExyD,KAAOylE,UAASA,EAAS9lF,UAAa,aACtC47B,QAAUkqD,UAASA,EAAS9lF,UAAa,aACzCi7B,OAAS6qD,UAASA,EAAS9lF,UAAa,aACxCsmE,UAAYwf,UAASA,EAAShoF,OAAQA,IAExCo0E,gBAAkB8T,WAAY,YAC9BttD,QAAUhe,OAAQA,EAAQ9K,OAAQA,GAClCgqC,aACE/M,OAASt0B,KAAMA,EAAM3I,OAAQA,EAAQ8K,OAAQA,EAAQtd,OAAQA,GAC7D2vC,KAAOx0B,KAAMA,EAAM3I,OAAQA,EAAQ8K,OAAQA,EAAQtd,OAAQA,GAC3DuuE,QAAUjxD,OAAQA,GAClB4rD,UAAYxoE,OAAQA,EAAQmF,MAAOA,IAErCwvE,sBAAwBqT,UAASA,GACjCh5E,QAAU4N,OAAQA,GAClBnI,SACE6zD,SAAW2f,IAAKA,GAChBzf,UAAYxoE,OAAQA,IAEtB0gC,QACE4a,MAAQxpC,OAAQA,GAChB5E,MACEm/B,YAAcv6B,OAAQA,EAAQ5P,UAAa,aAC3CoqC,UAAYx6B,OAAQA,EAAQ5P,UAAa,aACzCsmE,UAAYxoE,OAAQA,EAAQ8R,OAAQA,IAEtC02D,UAAYxoE,OAAQA,EAAQ8R,OAAQA,IAEtCrR,KAAOga,KAAMA,EAAM3I,OAAQA,EAAQ8K,OAAQA,EAAQtd,OAAQA,GAC3Di8C,WAAazpC,OAAQA,EAAQ8K,OAAQA,GACrCknE,eAAiBhyE,OAAQA,GACzBtR,KAAOia,KAAMA,EAAM3I,OAAQA,EAAQ8K,OAAQA,EAAQtd,OAAQA,GAC3Dk8C,WAAa1pC,OAAQA,EAAQ8K,OAAQA,GACrCutD,UAAY6d,UAASA,GACrBtT,aAAesT,UAASA,GACxBtL,qBAAuBsL,UAASA,GAChChT,OAASkT,WAAY,YACrBjT,UAAYiT,WAAY,YACxBhT,QAAUgT,WAAY,YACtB9S,UAAY8S,WAAY,YACxB/S,UAAY+S,WAAY,YACxB7S,YAAc6S,WAAY,YAC1B5S,aAAe4S,WAAY,YAC3B3S,eAAiB2S,WAAY,YAC7B/qD,OAAS+qD,WAAY,YACrB7sC,aACEC,MAAQ1+B,OAAQA,EAAQ1a,UAAa,aACrCgL,MAAQ0P,OAAQA,EAAQ1a,UAAa,aACrCsmE,UAAY5rD,OAAQA,EAAQ5c,OAAQA,IAEtCy0E,YAAcuT,UAASA,GACvBF,iBAAmBE,UAASA,GAC5BnE,iBAAmBmE,UAASA,GAC5BpE,iBAAmBoE,UAASA,GAC5B3qF,OAAS2qF,UAASA,GAClBloC,MAAQooC,WAAY,WAAYC,OAAQ,QACxCp5C,OAASt0B,KAAMA,EAAM3I,OAAQA,EAAQ8K,OAAQA,EAAQtd,OAAQA,GAC7DqjF,UAAYuF,WAAY,YACxBluD,eAAiBkuD,WAAY,YAC7BlsC,UACEp7C,OAASgc,OAAQA,EAAQ1a,UAAa,aACtC4sC,MAAQh9B,OAAQA,EAAQ5P,UAAa,aACrCsmE,UAAYxoE,OAAQA,IAEtBsD,MAAQsZ,OAAQA,GAChB+d,OAAS/d,OAAQA,EAAQ9K,OAAQA,GACjCs4D,UAAY4d,UAASA,GACrBlb,SAAWlwD,QAAS,UAAW,SAAU,UAAW,KACpD0tD,SAAWx4D,OAAQA,GACnBu4D,SAAWv4D,OAAQA,GAEnB02D,UAAYxoE,OAAQA,IAGlB89C,GACFxvC,QACE6lE,OAAQ,SAAU,OAAQ,SAC1Bh5B,YAAY,EACZC,gBAAiB,GAAI,EAAG,IAAM,IAC9Bg2B,YAAY,EAEZwD,UACEryD,KAAK,EACLub,QAAQ,EACRg3C,aAAa,EACbD,YAAY,GAEd5lC,IAAK,GACLlgC,QACEkuE,aACE76D,YAAa,MACbD,OAAQ,IACRD,OAAQ,QACRb,KAAM,QACN3C,QAAS,QACTuD,IAAK,IACL1I,MAAO,MACPD,KAAM,QAER4jE,aACE96D,YAAa,WACbD,OAAQ,eACRD,OAAQ,aACRb,KAAM,aACN3C,QAAS,YACTuD,IAAK,YACL1I,MAAO,OACPD,KAAM,KAKV8uE,iBAAiB,EACjBxtD,OAAQ,GAER5rB,OAAQ,GACR0xB,QACE4a,MAAO,GAAI,EAAG,IAAK,GACnBpuC,MACEm/B,YAAa,GAAI,EAAG,IAAK,GACzBC,UAAW,GAAI,EAAG,IAAK,KAG3B7rC,IAAK,GACL86C,UAAW,GACXuoC,eAAgB,EAAG,EAAG,GAAI,GAC1BtjF,IAAK,GACLg7C,UAAW,GACX2uB,UAAU,EACVuK,aAAa,EACbgI,qBAAqB,EAOrBrhC,aACEC,MAAO,OAAQ,SAAU,OACzBpuC,MAAO,SAAU,QAEnBunE,YAAY,EACZqT,iBAAiB,EACjBjE,iBAAiB,EACjBD,iBAAiB,EACjBvmF,OAAO,EAEP0xC,MAAO,GAMPzrC,MAAO,MAAO,QAAS,QAAS,cAChCq3B,MAAO,OACPyvC,UAAU,EACV0C,SAAU,UAAW,SAAU,UAAW,IAC1CxC,SAAU,SAAiB,GAAI,SAAiB,GAChDD,SAAU,GAAI,GAAI,SAAiB,IAIvClvE,GAAQ4D,WAAaA,EACrB5D,EAAQ2iD,iBAAmBA,GAIvB,SAAS1iD,EAAQD,EAASM,GAY9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GA2BvF,QAAS5C,GAAQujC,EAAW/iC,EAAOw9C,EAAQ57C,GAEzC,KAAMqD,MAAMC,QAAQs4C,IAAWA,YAAkB5+C,IAAW4+C,YAAkB3+C,KAAa2+C,YAAkBl4C,QAAQ,CACnH,GAAIm4C,GAAgB77C,CACpBA,GAAU47C,EACVA,EAASC,EAGX,GAAI9e,GAAK5gC,IACTA,MAAK2/C,gBACHnM,MAAO,KACPE,IAAK,KAELkM,YAAY,EAEZE,aACEC,KAAM,SACNpuC,KAAM,UAGR5N,OAAQA,EAERq7B,MAAO,KACPC,OAAQ,KACR2gB,UAAW,KACXC,UAAW,MAEbjgD,KAAK6D,QAAUlD,EAAK6G,cAAexH,KAAK2/C,gBAGxC3/C,KAAKkgD,QAAQlb,GAGbhlC,KAAKgC,cAELhC,KAAKmgD,MACH3F,IAAKx6C,KAAKw6C,IACV4F,SAAUpgD,KAAKiH,MACfo5C,SACErgB,GAAIhgC,KAAKggC,GAAGsgB,KAAKtgD,MACjBmgC,IAAKngC,KAAKmgC,IAAImgB,KAAKtgD,MACnBy4C,KAAMz4C,KAAKy4C,KAAK6H,KAAKtgD,OAEvBugD,eACA5/C,MACE+/C,SAAU9f,EAAG+f,UAAUL,KAAK1f,GAC5BggB,eAAgBhgB,EAAGigB,gBAAgBP,KAAK1f,GACxCkgB,OAAQlgB,EAAGmgB,QAAQT,KAAK1f,GACxBogB,aAAcpgB,EAAGqgB,cAAcX,KAAK1f,KAKxC5gC,KAAKkhD,MAAQ,GAAIr/C,GAAM7B,KAAKmgD,MAC5BngD,KAAKgC,WAAW2F,KAAK3H,KAAKkhD,OAC1BlhD,KAAKmgD,KAAKe,MAAQlhD,KAAKkhD,MAGvBlhD,KAAKygD,SAAW,GAAIv9C,GAASlD,KAAKmgD,MAClCngD,KAAKgC,WAAW2F,KAAK3H,KAAKygD,UAI1BzgD,KAAKohD,YAAc,GAAI3+C,GAAYzC,KAAKmgD,MACxCngD,KAAKgC,WAAW2F,KAAK3H,KAAKohD,aAG1BphD,KAAK8sF,UAAY,GAAI7pF,GAAUjD,KAAKmgD,MAEpCngD,KAAKgC,WAAW2F,KAAK3H,KAAK8sF,WAE1B9sF,KAAKshD,UAAY,KACjBthD,KAAKuhD,WAAa,KAElBvhD,KAAKggC,GAAG,MAAO,SAAU/0B,GACvB21B,EAAG6X,KAAK,QAAS7X,EAAG4gB,mBAAmBv2C,MAEzCjL,KAAKggC,GAAG,YAAa,SAAU/0B,GAC7B21B,EAAG6X,KAAK,cAAe7X,EAAG4gB,mBAAmBv2C,MAE/CjL,KAAKw6C,IAAI96C,KAAK+hD,cAAgB,SAAUx2C,GACtC21B,EAAG6X,KAAK,cAAe7X,EAAG4gB,mBAAmBv2C,KAI3CpH,GACF7D,KAAK4/B,WAAW/7B,GAId47C,GACFz/C,KAAK+hD,UAAUtC,GAIbx9C,GACFjC,KAAKgiD,SAAS//C,GAIhBjC,KAAKiiD,UAvIP,GAAIC,GAAgBhiD,EAAoB,IAEpCiiD,EAAiB7C,EAAuB4C,GAExCE,EAAaliD,EAAoB,IAEjCmiD,EAAc/C,EAAuB8C,GAMrCr+C,GAFU7D,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,IAEhCoiD,EAAapiD,EAAoB,IAAIoiD,WACrC9+C,EAAatD,EAAoB,IAAIsD,WACrC++C,EAAmBriD,EAAoB,IAAIqiD,gBAkH/C9gD,GAAQ2R,UAAY,GAAIzR;AAExBF,EAAQ2R,UAAUwsB,WAAa,SAAU/7B,GAEvC,GAAI8+C,GAAaN,EAAAA,WAAoBO,SAAS/+C,EAASL,EACnDm/C,MAAe,GACjBprC,QAAQwnC,IAAI,2DAA4DuD,GAG1E3gD,EAAKyR,UAAUwsB,WAAWr/B,KAAKP,KAAM6D,IAOvCpC,EAAQ2R,UAAU4uC,SAAW,SAAU//C,GACrC,GAGI+gD,GAHA+pC,EAAgC,MAAlB/sF,KAAKshD,SAsBvB,IAfE0B,EAHG/gD,EAEMA,YAAiBpB,IAAWoB,YAAiBnB,GACzCmB,EAGA,GAAIpB,GAAQoB,GACvB8F,MACEyrC,MAAO,OACPE,IAAK,UARI,KAcf1zC,KAAKshD,UAAY0B,EACjBhjD,KAAK8sF,WAAa9sF,KAAK8sF,UAAU9qC,SAASgB,GAEtC+pC,EACF,GAA0BpmF,QAAtB3G,KAAK6D,QAAQ2vC,OAA0C7sC,QAApB3G,KAAK6D,QAAQ6vC,IAAkB,CACpE,GAAIF,GAA8B7sC,QAAtB3G,KAAK6D,QAAQ2vC,MAAqBxzC,KAAK6D,QAAQ2vC,MAAQ,KAC/DE,EAA0B/sC,QAApB3G,KAAK6D,QAAQ6vC,IAAmB1zC,KAAK6D,QAAQ6vC,IAAM,IAC7D1zC,MAAK4hD,UAAUpO,EAAOE,GAAOmO,WAAW,QAExC7hD,MAAK8hD,KAAMD,WAAW,KAS5BpgD,EAAQ2R,UAAU2uC,UAAY,SAAUtC,GAEtC,GAAIuD,EAIFA,GAHGvD,EAEMA,YAAkB5+C,IAAW4+C,YAAkB3+C,GAC3C2+C,EAGA,GAAI5+C,GAAQ4+C,GALZ,KAQfz/C,KAAKuhD,WAAayB,EAClBhjD,KAAK8sF,UAAU/qC,UAAUiB,IAS3BvhD,EAAQ2R,UAAU45E,UAAY,SAAUpoC,EAASxlB,EAAOC,GAOtD,MANc14B,UAAVy4B,IACFA,EAAQ,IAEKz4B,SAAX04B,IACFA,EAAS,IAE4B14B,SAAnC3G,KAAK8sF,UAAUrtC,OAAOmF,GACjB5kD,KAAK8sF,UAAUrtC,OAAOmF,GAASooC,UAAU5tD,EAAOC,GAEhD,sBAAwBulB,EAAU,KAS7CnjD,EAAQ2R,UAAU65E,eAAiB,SAAUroC,GAC3C,MAAuCj+C,UAAnC3G,KAAK8sF,UAAUrtC,OAAOmF,GACjB5kD,KAAK8sF,UAAUrtC,OAAOmF,GAAS9Q,UAAkEntC,SAAtD3G,KAAK8sF,UAAUjpF,QAAQ47C,OAAOk4B,WAAW/yB,IAA+E,GAArD5kD,KAAK8sF,UAAUjpF,QAAQ47C,OAAOk4B,WAAW/yB,KAEvJ,GAUXnjD,EAAQ2R,UAAUgwC,aAAe,WAC/B,GAAIn+C,GAAM,KACNC,EAAM,IAGV,KAAK,GAAI0/C,KAAW5kD,MAAK8sF,UAAUrtC,OACjC,GAAIz/C,KAAK8sF,UAAUrtC,OAAOr5C,eAAew+C,IACO,GAA1C5kD,KAAK8sF,UAAUrtC,OAAOmF,GAAS9Q,QACjC,IAAK,GAAIjtC,GAAI,EAAGA,EAAI7G,KAAK8sF,UAAUrtC,OAAOmF,GAAStD,UAAU56C,OAAQG,IAAK,CACxE,GAAI8K,GAAO3R,KAAK8sF,UAAUrtC,OAAOmF,GAAStD,UAAUz6C,GAChDzB,EAAQzE,EAAKmH,QAAQ6J,EAAK6sB,EAAG,QAAQv2B,SACzChD,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,OAUvCzD,EAAQ2R,UAAUouC,mBAAqB,SAAUv2C,GAC/C,GAAIy9B,GAAUz9B,EAAMgsC,OAAShsC,EAAMgsC,OAAOzY,EAAIvzB,EAAMy9B,QAChDG,EAAU59B,EAAMgsC,OAAShsC,EAAMgsC,OAAOj1B,EAAI/W,EAAM49B,QAChDrK,EAAIkK,EAAU/nC,EAAKgI,gBAAgB3I,KAAKw6C,IAAIyJ,iBAC5CjiC,EAAI6mB,EAAUloC,EAAKoI,eAAe/I,KAAKw6C,IAAIyJ,iBAC3Cj4B,EAAOhsB,KAAK+gD,QAAQviB,GAEpB6lB,EAAa3hD,EAAW4hD,qBAAqBr5C,GAE7CV,EAAU5J,EAAKyK,UAAUH,GACzBw5C,EAAO,IACP9jD,GAAK8K,UAAUlB,EAASvK,KAAKygD,SAASjG,IAAIkK,YAC5CD,EAAO,OACEzkD,KAAKmhD,WAAaxgD,EAAK8K,UAAUlB,EAASvK,KAAKmhD,UAAU3G,IAAIkK,YACtED,EAAO,OACE9jD,EAAK8K,UAAUlB,EAASvK,KAAK8sF,UAAUI,UAAU1yC,IAAIpP,OAC9DqZ,EAAO,YACE9jD,EAAK8K,UAAUlB,EAASvK,KAAK8sF,UAAUK,WAAW3yC,IAAIpP,OAC/DqZ,EAAO,YACE9jD,EAAK8K,UAAUlB,EAASvK,KAAK8sF,UAAUM,WAAW5yC,IAAIpP,OAC/DqZ,EAAO,SACE9jD,EAAK8K,UAAUlB,EAASvK,KAAK8sF,UAAUO,YAAY7yC,IAAIpP,OAChEqZ,EAAO,SACgB,MAAdJ,EACTI,EAAO,cACE9jD,EAAK8K,UAAUlB,EAASvK,KAAKohD,YAAYnE,KAClDwH,EAAO,eACE9jD,EAAK8K,UAAUlB,EAASvK,KAAKw6C,IAAIvD,UAC1CwN,EAAO,aAGT,IAAIr/C,MACA8nF,EAAYltF,KAAK8sF,UAAUI,UAC3BC,EAAantF,KAAK8sF,UAAUK,UAQhC,OAPKD,GAAUha,QACb9tE,EAAMuC,KAAKulF,EAAUI,cAActrE,IAEhCmrE,EAAWja,QACd9tE,EAAMuC,KAAKwlF,EAAWG,cAActrE,KAIpC/W,MAAOA,EACPw5C,KAAMA,EACNI,MAAO55C,EAAM65C,SAAW75C,EAAM65C,SAASD,MAAQ55C,EAAM45C,MACrDE,MAAO95C,EAAM65C,SAAW75C,EAAM65C,SAASC,MAAQ95C,EAAM85C,MACrDvmB,EAAGA,EACHxc,EAAGA,EACHgK,KAAMA,EACN5mB,MAAOA,IASX3D,EAAQ2R,UAAUovC,oBAAsB,WACtC,MAAO,IAAIL,GAAAA,WAAuBniD,KAAMA,KAAKw6C,IAAIxV,UAAWud,IAG9D1iD,EAAOD,QAAU6B,GAIb,SAAS5B,EAAQD,EAASM,GA2B9B,QAAS+C,GAAUk9C,EAAMt8C,GACvB7D,KAAKK,GAAKM,EAAKqF,aACfhG,KAAKmgD,KAAOA,EAEZngD,KAAK2/C,gBACH4tC,iBAAkB,OAClBC,aAAc,UACdvtE,MAAM,EACNwtE,UAAU,EACV3rF,OAAO,EACP4rF,YAAa,QACbC,QACE38E,SAAS,EACT8uC,YAAa,UAEf7wC,MAAO,OACP2+E,UACExuD,MAAO,GACPyuD,YAAY,EACZjV,MAAO,UAETkV,eACE98E,SAAS,EACT+8E,gBAAiB,cACjB94B,MAAO,IAET0gB,YACE3kE,SAAS,EACT6tB,KAAM,EACN5vB,MAAO,UAET++E,YACAC,UACAxuC,QACEk4B,gBAKJ33E,KAAK6D,QAAUlD,EAAKoG,UAAW/G,KAAK2/C,gBACpC3/C,KAAKw6C,OACLx6C,KAAKiH,SACLjH,KAAK8rD,OAAS,KACd9rD,KAAKy/C,UACLz/C,KAAKkuF,oBAAqB,EAC1BluF,KAAKmuF,iBAAkB,EACvBnuF,KAAKouF,yBAA0B,EAC/BpuF,KAAKquF,kBAAmB,CAExB,IAAIztD,GAAK5gC,IACTA,MAAKshD,UAAY,KACjBthD,KAAKuhD,WAAa,KAGlBvhD,KAAKk6E,eACHlzD,IAAO,SAAa/b,EAAOs1B,EAAQC,GACjCI,EAAGu5C,OAAO55C,EAAOt+B,QAEnB6+B,OAAU,SAAgB71B,EAAOs1B,EAAQC,GACvCI,EAAGw5C,UAAU75C,EAAOt+B,QAEtBsgC,OAAU,SAAgBt3B,EAAOs1B,EAAQC,GACvCI,EAAGy5C,UAAU95C,EAAOt+B,SAKxBjC,KAAKs6E,gBACHtzD,IAAO,SAAa/b,EAAOs1B,EAAQC,GACjCI,EAAG25C,aAAah6C,EAAOt+B,QAEzB6+B,OAAU,SAAgB71B,EAAOs1B,EAAQC,GACvCI,EAAG45C,gBAAgBj6C,EAAOt+B,QAE5BsgC,OAAU,SAAgBt3B,EAAOs1B,EAAQC,GACvCI,EAAG65C,gBAAgBl6C,EAAOt+B,SAI9BjC,KAAKiC,SACLjC,KAAK6iD,aACL7iD,KAAKsuF,UAAYtuF,KAAKmgD,KAAKe,MAAM1N,MACjCxzC,KAAK46E,eAEL56E,KAAKuuF,eACLvuF,KAAK4/B,WAAW/7B,GAChB7D,KAAKwuF,0BAA4B,GACjCxuF,KAAKmgD,KAAKE,QAAQrgB,GAAG,eAAgB,WACnCY,EAAG0tD,UAAY1tD,EAAGuf,KAAKe,MAAM1N,MAC7B5S,EAAG6tD,IAAIx/E,MAAMnG,KAAOnI,EAAKiL,OAAOK,QAAQ20B,EAAG35B,MAAMm4B,OAEjDwB,EAAGytD,kBAAmB,EAEtBztD,EAAG0M,OAAO/sC,KAAKqgC,KAIjB5gC,KAAKkgD,UACLlgD,KAAK0uF,WAAcD,IAAKzuF,KAAKyuF,IAAKF,YAAavuF,KAAKuuF,YAAa1qF,QAAS7D,KAAK6D,QAAS47C,OAAQz/C,KAAKy/C,QAzHvG,GAAIv7C,GAA4B,kBAAXC,SAAoD,gBAApBA,QAAOC,SAAwB,SAAUC,GAAO,aAAcA,IAAS,SAAUA,GAAO,MAAOA,IAAyB,kBAAXF,SAAyBE,EAAIC,cAAgBH,OAAS,eAAkBE,IAEtO1D,EAAOT,EAAoB,GAC3BU,EAAUV,EAAoB,GAC9BW,EAAUX,EAAoB,GAC9BY,EAAWZ,EAAoB,IAC/BsC,EAAYtC,EAAoB,IAChCyC,EAAWzC,EAAoB,IAC/B2C,EAAa3C,EAAoB,IACjC8C,EAAS9C,EAAoB,IAC7ByuF,EAAOzuF,EAAoB,IAC3B0uF,EAAQ1uF,EAAoB,IAC5B2uF,EAAS3uF,EAAoB,IAE7B46E,EAAY,eA8GhB73E,GAAUmQ,UAAY,GAAI5Q,GAK1BS,EAAUmQ,UAAU8sC,QAAU,WAC5B,GAAI9U,GAAQpN,SAASM,cAAc,MACnC8M,GAAMliC,UAAY,iBAClBlJ,KAAKw6C,IAAIpP,MAAQA,EAGjBprC,KAAKyuF,IAAMzwD,SAASC,gBAAgB,6BAA8B,OAClEj+B,KAAKyuF,IAAIx/E,MAAMqgC,SAAW,WAC1BtvC,KAAKyuF,IAAIx/E,MAAMowB,QAAU,GAAKr/B,KAAK6D,QAAQ6pF,aAAaphF,QAAQ,KAAM,IAAM,KAC5EtM,KAAKyuF,IAAIx/E,MAAMkmD,QAAU,QACzB/pB,EAAMlN,YAAYl+B,KAAKyuF,KAGvBzuF,KAAK6D,QAAQmqF,SAASluC,YAAc,OACpC9/C,KAAKktF,UAAY,GAAIvqF,GAAS3C,KAAKmgD,KAAMngD,KAAK6D,QAAQmqF,SAAUhuF,KAAKyuF,IAAKzuF,KAAK6D,QAAQ47C,QAEvFz/C,KAAK6D,QAAQmqF,SAASluC,YAAc,QACpC9/C,KAAKmtF,WAAa,GAAIxqF,GAAS3C,KAAKmgD,KAAMngD,KAAK6D,QAAQmqF,SAAUhuF,KAAKyuF,IAAKzuF,KAAK6D,QAAQ47C,cACjFz/C,MAAK6D,QAAQmqF,SAASluC,YAG7B9/C,KAAKotF,WAAa,GAAIpqF,GAAOhD,KAAKmgD,KAAMngD,KAAK6D,QAAQoqF,OAAQ,OAAQjuF,KAAK6D,QAAQ47C,QAClFz/C,KAAKqtF,YAAc,GAAIrqF,GAAOhD,KAAKmgD,KAAMngD,KAAK6D,QAAQoqF,OAAQ,QAASjuF,KAAK6D,QAAQ47C,QAEpFz/C,KAAK4jD,QAOP3gD,EAAUmQ,UAAUwsB,WAAa,SAAU/7B,GACzC,GAAIA,EAAS,CACX,GAAIuM,IAAU,WAAY,eAAgB,QAAS,SAAU,cAAe,mBAAoB,QAAS,WAAY,WAAY,OAAQ,SAC7GzJ,UAAxB9C,EAAQ6pF,aAAgD/mF,SAAnB9C,EAAQw7B,QAC/Cr/B,KAAKmuF,iBAAkB,EACvBnuF,KAAKouF,yBAA0B,GACwBznF,SAA9C3G,KAAKmgD,KAAKC,SAAS6D,gBAAgB5kB,QAAgD14B,SAAxB9C,EAAQ6pF,aACxEhhF,UAAU7I,EAAQ6pF,YAAc,IAAIphF,QAAQ,KAAM,KAAOtM,KAAKmgD,KAAKC,SAAS6D,gBAAgB5kB,SAC9Fr/B,KAAKmuF,iBAAkB,GAG3BxtF,EAAK0G,oBAAoB+I,EAAQpQ,KAAK6D,QAASA,GAC/ClD,EAAKkQ,aAAa7Q,KAAK6D,QAASA,EAAS,iBACzClD,EAAKkQ,aAAa7Q,KAAK6D,QAASA,EAAS,cACzClD,EAAKkQ,aAAa7Q,KAAK6D,QAASA,EAAS,UACzClD,EAAKkQ,aAAa7Q,KAAK6D,QAASA,EAAS,UAErCA,EAAQiqF,eAC4B,UAAlC5pF,EAAQL,EAAQiqF,gBACdjqF,EAAQiqF,cAAcC,kBACqB,WAAzClqF,EAAQiqF,cAAcC,gBACxB/tF,KAAK6D,QAAQiqF,cAAc74B,MAAQ,EACe,WAAzCpxD,EAAQiqF,cAAcC,gBAC/B/tF,KAAK6D,QAAQiqF,cAAc74B,MAAQ,GAEnCj1D,KAAK6D,QAAQiqF,cAAcC,gBAAkB,cAC7C/tF,KAAK6D,QAAQiqF,cAAc74B,MAAQ,KAMvCj1D,KAAKktF,WACkBvmF,SAArB9C,EAAQmqF,WACVhuF,KAAKktF,UAAUttD,WAAW5/B,KAAK6D,QAAQmqF,UACvChuF,KAAKmtF,WAAWvtD,WAAW5/B,KAAK6D,QAAQmqF,WAIxChuF,KAAKotF,YACgBzmF,SAAnB9C,EAAQoqF,SACVjuF,KAAKotF,WAAWxtD,WAAW5/B,KAAK6D,QAAQoqF,QACxCjuF,KAAKqtF,YAAYztD,WAAW5/B,KAAK6D,QAAQoqF,SAIzCjuF,KAAKy/C,OAAOr5C,eAAe00E,IAC7B96E,KAAKy/C,OAAOq7B,GAAWl7C,WAAW/7B,GAKlC7D,KAAKw6C,IAAIpP,QAEXprC,KAAKquF,kBAAmB,EACxBruF,KAAKmgD,KAAKE,QAAQ5H,KAAK,WAAa5Y,OAAO,MAO/C58B,EAAUmQ,UAAUyoE,KAAO,WAErB77E,KAAKw6C,IAAIpP,MAAM5/B,YACjBxL,KAAKw6C,IAAIpP,MAAM5/B,WAAWzG,YAAY/E,KAAKw6C,IAAIpP,QAQnDnoC,EAAUmQ,UAAUwwC,KAAO,WAEpB5jD,KAAKw6C,IAAIpP,MAAM5/B,YAClBxL,KAAKmgD,KAAK3F,IAAIvD,OAAO/Y,YAAYl+B,KAAKw6C,IAAIpP,QAQ9CnoC,EAAUmQ,UAAU4uC,SAAW,SAAU//C,GACvC,GACIo/B,GADAT,EAAK5gC,KAELk9E,EAAel9E,KAAKshD,SAGxB,IAAKr/C,EAEE,CAAA,KAAIA,YAAiBpB,IAAWoB,YAAiBnB,IAGtD,KAAM,IAAIwG,WAAU,kDAFpBtH,MAAKshD,UAAYr/C,MAFjBjC,MAAKshD,UAAY,IAkBnB,IAXI47B,IAEFv8E,EAAK8I,QAAQzJ,KAAKk6E,cAAe,SAAUxwE,EAAUuB,GACnDiyE,EAAa/8C,IAAIl1B,EAAOvB,KAI1B23B,EAAM67C,EAAal7C,SACnBhiC,KAAKq6E,UAAUh5C,IAGbrhC,KAAKshD,UAAW,CAElB,GAAIjhD,GAAKL,KAAKK,EACdM,GAAK8I,QAAQzJ,KAAKk6E,cAAe,SAAUxwE,EAAUuB,GACnD21B,EAAG0gB,UAAUthB,GAAG/0B,EAAOvB,EAAUrJ,KAInCghC,EAAMrhC,KAAKshD,UAAUtf,SACrBhiC,KAAKm6E,OAAO94C,KAQhBp+B,EAAUmQ,UAAU2uC,UAAY,SAAUtC,GACxC,GACIpe,GADAT,EAAK5gC,IAIT,IAAIA,KAAKuhD,WAAY,CACnB5gD,EAAK8I,QAAQzJ,KAAKs6E,eAAgB,SAAU5wE,EAAUuB,GACpD21B,EAAG2gB,WAAWphB,IAAIl1B,EAAOvB,KAI3B23B,EAAMrhC,KAAKuhD,WAAWvf,SACtBhiC,KAAKuhD,WAAa,IAClB,KAAK,GAAI16C,GAAI,EAAGA,EAAIw6B,EAAI36B,OAAQG,IAC9B7G,KAAK8uF,aAAaztD,EAAIx6B,IAK1B,GAAK44C,EAEE,CAAA,KAAIA,YAAkB5+C,IAAW4+C,YAAkB3+C,IAGxD,KAAM,IAAIwG,WAAU,kDAFpBtH,MAAKuhD,WAAa9B,MAFlBz/C,MAAKuhD,WAAa,IAOpB,IAAIvhD,KAAKuhD,WAAY,CAEnB,GAAIlhD,GAAKL,KAAKK,EACdM,GAAK8I,QAAQzJ,KAAKs6E,eAAgB,SAAU5wE,EAAUuB,GACpD21B,EAAG2gB,WAAWvhB,GAAG/0B,EAAOvB,EAAUrJ,KAIpCghC,EAAMrhC,KAAKuhD,WAAWvf,SACtBhiC,KAAKu6E,aAAal5C,KAItBp+B,EAAUmQ,UAAUgnE,UAAY,SAAU/4C,GACxCrhC,KAAK+uF,uBAEP9rF,EAAUmQ,UAAU+mE,OAAS,SAAU94C,GACrCrhC,KAAKo6E,UAAU/4C,IAEjBp+B,EAAUmQ,UAAUinE,UAAY,SAAUh5C,GACxCrhC,KAAKo6E,UAAU/4C,IAEjBp+B,EAAUmQ,UAAUonE,gBAAkB,SAAUE,GAC9C16E,KAAK+uF,uBAEP9rF,EAAUmQ,UAAUmnE,aAAe,SAAUG,GAC3C16E,KAAKw6E,gBAAgBE,IAQvBz3E,EAAUmQ,UAAUqnE,gBAAkB,SAAUC,GAC9C,IAAK,GAAI7zE,GAAI,EAAGA,EAAI6zE,EAASh0E,OAAQG,IACnC7G,KAAK8uF,aAAapU,EAAS7zE,GAE7B7G,MAAKquF,kBAAmB,EACxBruF,KAAKmgD,KAAKE,QAAQ5H,KAAK,WAAa5Y,OAAO,KAQ7C58B,EAAUmQ,UAAU07E,aAAe,SAAUlqC,GACvC5kD,KAAKy/C,OAAOr5C,eAAew+C,KACwB,SAAjD5kD,KAAKy/C,OAAOmF,GAAS/gD,QAAQ0pF,kBAC/BvtF,KAAKmtF,WAAW6B,YAAYpqC,GAC5B5kD,KAAKqtF,YAAY2B,YAAYpqC,GAC7B5kD,KAAKqtF,YAAY//C,WAEjBttC,KAAKktF,UAAU8B,YAAYpqC,GAC3B5kD,KAAKotF,WAAW4B,YAAYpqC,GAC5B5kD,KAAKotF,WAAW9/C,gBAEXttC,MAAKy/C,OAAOmF,KAWvB3hD,EAAUmQ,UAAU67E,aAAe,SAAU9qC,EAAOS,GAC7C5kD,KAAKy/C,OAAOr5C,eAAew+C,IAU9B5kD,KAAKy/C,OAAOmF,GAAS9jB,OAAOqjB,GACyB,SAAjDnkD,KAAKy/C,OAAOmF,GAAS/gD,QAAQ0pF,kBAC/BvtF,KAAKmtF,WAAW5T,YAAY30B,EAAS5kD,KAAKy/C,OAAOmF,IACjD5kD,KAAKqtF,YAAY9T,YAAY30B,EAAS5kD,KAAKy/C,OAAOmF,IAElD5kD,KAAKktF,UAAU8B,YAAYpqC,GAC3B5kD,KAAKotF,WAAW4B,YAAYpqC,KAE5B5kD,KAAKktF,UAAU3T,YAAY30B,EAAS5kD,KAAKy/C,OAAOmF,IAChD5kD,KAAKotF,WAAW7T,YAAY30B,EAAS5kD,KAAKy/C,OAAOmF,IAEjD5kD,KAAKmtF,WAAW6B,YAAYpqC,GAC5B5kD,KAAKqtF,YAAY2B,YAAYpqC,MArB/B5kD,KAAKy/C,OAAOmF,GAAW,GAAI/hD,GAAWshD,EAAOS,EAAS5kD,KAAK6D,QAAS7D,KAAKwuF,0BACpB,SAAjDxuF,KAAKy/C,OAAOmF,GAAS/gD,QAAQ0pF,kBAC/BvtF,KAAKmtF,WAAW+B,SAAStqC,EAAS5kD,KAAKy/C,OAAOmF,IAC9C5kD,KAAKqtF,YAAY6B,SAAStqC,EAAS5kD,KAAKy/C,OAAOmF,MAE/C5kD,KAAKktF,UAAUgC,SAAStqC,EAAS5kD,KAAKy/C,OAAOmF,IAC7C5kD,KAAKotF,WAAW8B,SAAStqC,EAAS5kD,KAAKy/C,OAAOmF,MAkBlD5kD,KAAKotF,WAAW9/C,SAChBttC,KAAKqtF,YAAY//C,UAQnBrqC,EAAUmQ,UAAU27E,oBAAsB,WACxC,GAAsB,MAAlB/uF,KAAKshD,UAAmB,CAK1B,IAAK,GAJD6tC,MACAltF,EAAQjC,KAAKshD,UAAU1pB,MAEvBw3D,KACKvoF,EAAI,EAAGA,EAAI5E,EAAMyE,OAAQG,IAAK,CACrC,GAAI8K,GAAO1P,EAAM4E,GACb+9C,EAAUjzC,EAAKwyC,KACH,QAAZS,GAAgCj+C,SAAZi+C,IACtBA,EAAUk2B,GAEZsU,EAAYhpF,eAAew+C,GAAWwqC,EAAYxqC,KAAawqC,EAAYxqC,GAAW,EAGxF,IAAK,GAAI/9C,GAAI,EAAGA,EAAI5E,EAAMyE,OAAQG,IAAK,CACrC,GAAI8K,GAAO1P,EAAM4E,GACb+9C,EAAUjzC,EAAKwyC,KACH,QAAZS,GAAgCj+C,SAAZi+C,IACtBA,EAAUk2B,GAEPqU,EAAc/oF,eAAew+C,KAChCuqC,EAAcvqC,GAAW,GAAI19C,OAAMkoF,EAAYxqC,IAGjD,IAAIyqC,GAAW1uF,EAAK6P,aAAamB,EACjC09E,GAAS7wD,EAAI79B,EAAKmH,QAAQ6J,EAAK6sB,EAAG,QAClC6wD,EAASC,SAAW39E,EAAKqQ,EACzBqtE,EAASrtE,EAAItd,OAAOiN,EAAKqQ,EAEzB,IAAIzY,GAAQ4lF,EAAcvqC,GAASl+C,OAAS0oF,EAAYxqC,IACxDuqC,GAAcvqC,GAASr7C,GAAS8lF,EAIlC,IAAK,GAAIzqC,KAAW5kD,MAAKy/C,OACnBz/C,KAAKy/C,OAAOr5C,eAAew+C,KACxBuqC,EAAc/oF,eAAew+C,KAChCuqC,EAAcvqC,GAAW,GAAI19C,OAAM,IAMzC,KAAK,GAAI09C,KAAWuqC,GAClB,GAAIA,EAAc/oF,eAAew+C,GAC/B,GAAqC,GAAjCuqC,EAAcvqC,GAASl+C,OACrB1G,KAAKy/C,OAAOr5C,eAAew+C,IAC7B5kD,KAAK8uF,aAAalqC,OAEf,CACL,GAAIT,GAAQx9C,MACWA,SAAnB3G,KAAKuhD,aACP4C,EAAQnkD,KAAKuhD,WAAW3pB,IAAIgtB,IAEjBj+C,QAATw9C,IACFA,GAAU9jD,GAAIukD,EAAS3lB,QAASj/B,KAAK6D,QAAQ2pF,aAAe5oC,IAE9D5kD,KAAKivF,aAAa9qC,EAAOS,GACzB5kD,KAAKy/C,OAAOmF,GAAS5C,SAASmtC,EAAcvqC,IAIlD5kD,KAAKquF,kBAAmB,EACxBruF,KAAKmgD,KAAKE,QAAQ5H,KAAK,WAAa5Y,OAAO,MAQ/C58B,EAAUmQ,UAAUk6B,OAAS,WAC3B,GAAI4kC,IAAU,CAGdlyE,MAAKiH,MAAMm4B,MAAQp/B,KAAKw6C,IAAIpP,MAAMyP,YAClC76C,KAAKiH,MAAMo4B,OAASr/B,KAAKmgD,KAAKC,SAAS6D,gBAAgB5kB,OAASr/B,KAAKmgD,KAAKC,SAAS/xC,OAAOrF,IAAMhJ,KAAKmgD,KAAKC,SAAS/xC,OAAO6gC,OAG1HgjC,EAAUlyE,KAAKiyE,cAAgBC,CAG/B,IAAIiK,GAAkBn8E,KAAKmgD,KAAKe,MAAMxN,IAAM1zC,KAAKmgD,KAAKe,MAAM1N,MACxD4oC,EAASD,GAAmBn8E,KAAKq8E,mBA2BrC,IA1BAr8E,KAAKq8E,oBAAsBF,EAIZ,GAAXjK,IACFlyE,KAAKyuF,IAAIx/E,MAAMmwB,MAAQz+B,EAAKiL,OAAOK,OAAO,EAAIjM,KAAKiH,MAAMm4B,OACzDp/B,KAAKyuF,IAAIx/E,MAAMnG,KAAOnI,EAAKiL,OAAOK,QAAQjM,KAAKiH,MAAMm4B,OAGN,KAA1Cp/B,KAAK6D,QAAQw7B,OAAS,IAAI33B,QAAQ,MAA8C,GAAhC1H,KAAKouF,0BACxDpuF,KAAKmuF,iBAAkB,IAKC,GAAxBnuF,KAAKmuF,iBACHnuF,KAAK6D,QAAQ6pF,aAAe1tF,KAAKiH,MAAMo4B,OAAS,OAClDr/B,KAAK6D,QAAQ6pF,YAAc1tF,KAAKiH,MAAMo4B,OAAS,KAC/Cr/B,KAAKyuF,IAAIx/E,MAAMowB,OAASr/B,KAAKiH,MAAMo4B,OAAS,MAE9Cr/B,KAAKmuF,iBAAkB,GAEvBnuF,KAAKyuF,IAAIx/E,MAAMowB,QAAU,GAAKr/B,KAAK6D,QAAQ6pF,aAAaphF,QAAQ,KAAM,IAAM,KAI/D,GAAX4lE,GAA6B,GAAVkK,GAA6C,GAA3Bp8E,KAAKkuF,oBAAuD,GAAzBluF,KAAKquF,iBAC/Enc,EAAUlyE,KAAKuvF,gBAAkBrd,EACjClyE,KAAKquF,kBAAmB,MAGxB,IAAsB,GAAlBruF,KAAKsuF,UAAgB,CACvB,GAAI/lE,GAASvoB,KAAKmgD,KAAKe,MAAM1N,MAAQxzC,KAAKsuF,UACtCptC,EAAQlhD,KAAKmgD,KAAKe,MAAMxN,IAAM1zC,KAAKmgD,KAAKe,MAAM1N,KAClD,IAAwB,GAApBxzC,KAAKiH,MAAMm4B,MAAY,CACzB,GAAIowD,GAAmBxvF,KAAKiH,MAAMm4B,MAAQ8hB,EACtCniB,EAAUxW,EAASinE,CACvBxvF,MAAKyuF,IAAIx/E,MAAMnG,MAAQ9I,KAAKiH,MAAMm4B,MAAQL,EAAU,MAM1D,MAFA/+B,MAAKotF,WAAW9/C,SAChBttC,KAAKqtF,YAAY//C,SACV4kC,GAGTjvE,EAAUmQ,UAAUq8E,mBAAqB,WAEvC,GAAIC,KACJ,KAAK,GAAI9qC,KAAW5kD,MAAKy/C,OACvB,GAAIz/C,KAAKy/C,OAAOr5C,eAAew+C,GAAU,CACvC,GAAIT,GAAQnkD,KAAKy/C,OAAOmF,EACH,IAAjBT,EAAMrQ,SAAgEntC,SAA5C3G,KAAK6D,QAAQ47C,OAAOk4B,WAAW/yB,IAAqE,GAA3C5kD,KAAK6D,QAAQ47C,OAAOk4B,WAAW/yB,IACpH8qC,EAAU/nF,MAAOtH,GAAIukD,EAAS+qC,OAAQxrC,EAAMtgD,QAAQ8rF,SAI1DhvF,EAAK8P,WAAWi/E,EAAW,SAAUppF,EAAGC,GACtC,GAAIqjC,GAAKtjC,EAAEqpF,OACPC,EAAKrpF,EAAEopF,MAGX,OAFWhpF,UAAPijC,IAAkBA,EAAK,GAChBjjC,SAAPipF,IAAkBA,EAAK,GACpBhmD,GAAMgmD,EAAK,EAASA,EAALhmD,EAAU,GAAK,GAGvC,KAAK,GADD8wC,GAAW,GAAIxzE,OAAMwoF,EAAUhpF,QAC1BG,EAAI,EAAGA,EAAI6oF,EAAUhpF,OAAQG,IACpC6zE,EAAS7zE,GAAK6oF,EAAU7oF,GAAGxG,EAE7B,OAAOq6E,IAOTz3E,EAAUmQ,UAAUm8E,aAAe,WAGjC,GADA3uF,EAAQ08B,gBAAgBt9B,KAAKuuF,aACL,GAApBvuF,KAAKiH,MAAMm4B,OAAgC,MAAlBp/B,KAAKshD,UAAmB,CACnD,GAAI6C,GAAOt9C,EACPgpF,KACAC,GAAe,EAEfC,EAAU/vF,KAAKmgD,KAAKx/C,KAAKqgD,cAAchhD,KAAKmgD,KAAKC,SAAS1gD,KAAK0/B,OAC/D4wD,EAAUhwF,KAAKmgD,KAAKx/C,KAAKqgD,aAAa,EAAIhhD,KAAKmgD,KAAKC,SAAS1gD,KAAK0/B,OAGlEs7C,EAAW16E,KAAKyvF,oBACpB,IAAI/U,EAASh0E,OAAS,EAAG,CACvB,GAAI66C,KASJ,KANAvhD,KAAKiwF,iBAAiBvV,EAAUn5B,EAAYwuC,EAASC,GAGrDhwF,KAAKkwF,eAAexV,EAAUn5B,GAGzB16C,EAAI,EAAGA,EAAI6zE,EAASh0E,OAAQG,IAC/B7G,KAAKmwF,qBAAqB5uC,EAAWm5B,EAAS7zE,IAWhD,IAPA7G,KAAKowF,YAAY1V,EAAUn5B,EAAYsuC,GAGvCC,EAAe9vF,KAAKqwF,aAAa3V,EAAUmV,GAIvB,GAAhBC,EAGF,MAFAlvF,GAAQ+8B,gBAAgB39B,KAAKuuF,aAC7BvuF,KAAKkuF,oBAAqB,GACnB,CAETluF,MAAKkuF,oBAAqB,CAG1B,IAAIoC,GAAQ3pF,MACZ,KAAKE,EAAI,EAAGA,EAAI6zE,EAASh0E,OAAQG,IAC/Bs9C,EAAQnkD,KAAKy/C,OAAOi7B,EAAS7zE,IACzB7G,KAAK6D,QAAQ/B,SAAU,GAA+B,SAAvB9B,KAAK6D,QAAQoL,QACLtI,QAArCw9C,EAAMtgD,QAAQ0sF,qBAAqCpsC,EAAMtgD,QAAQ0sF,sBACtD5pF,QAAT2pF,IACFtwF,KAAKwwF,OAAOjvC,EAAW4C,EAAM9jD,IAAKkhD,EAAW+uC,EAAMjwF,KACf,GAAhC8jD,EAAMtgD,QAAQ8pF,OAAO38E,SAAwD,UAArCmzC,EAAMtgD,QAAQ8pF,OAAO7tC,cACvB,OAApCqE,EAAMtgD,QAAQ8pF,OAAO7tC,aAA6D,UAArCwwC,EAAMzsF,QAAQ8pF,OAAO7tC,aACpEwwC,EAAMzsF,QAAQ8pF,OAAO7tC,YAAc,QACnCwwC,EAAMzsF,QAAQ8pF,OAAO/oC,QAAUT,EAAM9jD,KAErC8jD,EAAMtgD,QAAQ8pF,OAAO7tC,YAAc,QACnCqE,EAAMtgD,QAAQ8pF,OAAO/oC,QAAU0rC,EAAMjwF,MAI3CiwF,EAAQnsC,IAGZnkD,KAAKywF,qBAAqBlvC,EAAWm5B,EAAS7zE,IAAKs9C,EAIrD,IAAIjpB,KACJ,KAAKr0B,EAAI,EAAGA,EAAI6zE,EAASh0E,OAAQG,IAE/B,GADAs9C,EAAQnkD,KAAKy/C,OAAOi7B,EAAS7zE,IACD,SAAxBs9C,EAAMtgD,QAAQoL,OAAoD,GAAhCk1C,EAAMtgD,QAAQ8pF,OAAO38E,QAAiB,CAC1E,GAAIgzC,GAAUzC,EAAWm5B,EAAS7zE,GAClC,IAAe,MAAXm9C,GAAqC,GAAlBA,EAAQt9C,OAC7B,QAKF,IAHKw0B,EAAM90B,eAAes0E,EAAS7zE,MACjCq0B,EAAMw/C,EAAS7zE,IAAM+nF,EAAM8B,SAAS1sC,EAASG,IAEN,UAArCA,EAAMtgD,QAAQ8pF,OAAO7tC,YAAyB,CAChD,GAAI6wC,GAAaxsC,EAAMtgD,QAAQ8pF,OAAO/oC,OACtC,IAAqC,KAAjC81B,EAAShzE,QAAQipF,GAAoB,CACvCp5E,QAAQwnC,IAAIoF,EAAM9jD,GAAK,wCAA0CswF,EACjE,UAEGz1D,EAAM90B,eAAeuqF,KACxBz1D,EAAMy1D,GAAc/B,EAAM8B,SAASnvC,EAAWovC,GAAa3wF,KAAKy/C,OAAOkxC,KAEzE/B,EAAMgC,YAAY11D,EAAMw/C,EAAS7zE,IAAKs9C,EAAOjpB,EAAMy1D,GAAa3wF,KAAK0uF,eAErEE,GAAMgC,YAAY11D,EAAMw/C,EAAS7zE,IAAKs9C,EAAOx9C,OAAW3G,KAAK0uF,WAOnE,IADAC,EAAKrkC,KAAKowB,EAAUn5B,EAAYvhD,KAAK0uF,WAChC7nF,EAAI,EAAGA,EAAI6zE,EAASh0E,OAAQG,IAE/B,GADAs9C,EAAQnkD,KAAKy/C,OAAOi7B,EAAS7zE,IACzB06C,EAAWm5B,EAAS7zE,IAAIH,OAAS,EACnC,OAAQy9C,EAAMtgD,QAAQoL,OACpB,IAAK,OACEisB,EAAM90B,eAAes0E,EAAS7zE,MACjCq0B,EAAMw/C,EAAS7zE,IAAM+nF,EAAM8B,SAASnvC,EAAWm5B,EAAS7zE,IAAKs9C,IAE/DyqC,EAAMtkC,KAAKpvB,EAAMw/C,EAAS7zE,IAAKs9C,EAAOnkD,KAAK0uF,UAE7C,KAAK,QAEL,IAAK,SACwB,SAAvBvqC,EAAMtgD,QAAQoL,OAA2C,UAAvBk1C,EAAMtgD,QAAQoL,OAAyD,GAApCk1C,EAAMtgD,QAAQ8xE,WAAW3kE,SAChG69E,EAAOvkC,KAAK/I,EAAWm5B,EAAS7zE,IAAKs9C,EAAOnkD,KAAK0uF,UAEnD,MACF,KAAK,SAaf,MADA9tF,GAAQ+8B,gBAAgB39B,KAAKuuF,cACtB,GAGTtrF,EAAUmQ,UAAUo9E,OAAS,SAAUh3E,EAAMq3E,GAC3C,GAAItnF,GAAOmhC,EAAIC,EAAImmD,EAAcC,CACjCxnF,GAAQ,CAER,KAAK,GAAIqH,GAAI,EAAGA,EAAI4I,EAAK9S,OAAQkK,IAAK,CACpCkgF,EAAenqF,OACfoqF,EAAepqF,MAEf,KAAK,GAAIgK,GAAIpH,EAAOoH,EAAIkgF,EAAQnqF,OAAQiK,IAAK,CAE3C,GAAIkgF,EAAQlgF,GAAG6tB,IAAMhlB,EAAK5I,GAAG4tB,EAAG,CAC9BsyD,EAAeD,EAAQlgF,GACvBogF,EAAeF,EAAQlgF,GACvBpH,EAAQoH,CACR,OACK,GAAIkgF,EAAQlgF,GAAG6tB,EAAIhlB,EAAK5I,GAAG4tB,EAAG,CAEnCuyD,EAAeF,EAAQlgF,GAErBmgF,EADO,GAALngF,EACaogF,EAEAF,EAAQlgF,EAAI,GAE7BpH,EAAQoH,CACR,QAIiBhK,SAAjBoqF,IACFD,EAAeD,EAAQA,EAAQnqF,OAAS,GACxCqqF,EAAeF,EAAQA,EAAQnqF,OAAS,IAG1CgkC,EAAKqmD,EAAavyD,EAAIsyD,EAAatyD,EACnCmM,EAAKomD,EAAa/uE,EAAI8uE,EAAa9uE,EACzB,GAAN0oB,EACFlxB,EAAK5I,GAAGoR,EAAIxI,EAAK5I,GAAG0+E,SAAWyB,EAAa/uE,EAE5CxI,EAAK5I,GAAGoR,EAAIxI,EAAK5I,GAAG0+E,SAAW3kD,EAAKD,GAAMlxB,EAAK5I,GAAG4tB,EAAIsyD,EAAatyD,GAAKsyD,EAAa9uE,IAkB3F/e,EAAUmQ,UAAU68E,iBAAmB,SAAUvV,EAAUn5B,EAAYwuC,EAASC,GAC9E,GAAI7rC,GAAOt9C,EAAG+J,EAAGe,CACjB,IAAI+oE,EAASh0E,OAAS,EACpB,IAAKG,EAAI,EAAGA,EAAI6zE,EAASh0E,OAAQG,IAAK,CACpCs9C,EAAQnkD,KAAKy/C,OAAOi7B,EAAS7zE,GAC7B,IAAIy6C,GAAY6C,EAAMg5B,UAEtB,IAA0B,GAAtBh5B,EAAMtgD,QAAQoc,KAAc,CAC9B,GAAI+wE,GAAiB,SAAwB1qF,EAAGC,GAC9C,MAAOD,GAAEwO,WAAavO,EAAEuO,UAAY,EAAQvO,EAAJD,EAAQ,GAAK,GAEnD2qF,EAAQ3rF,KAAKJ,IAAI,EAAGvE,EAAKkR,kBAAkByvC,EAAWyuC,EAAS,IAAK,SAAUiB,IAC9E5wB,EAAO96D,KAAKL,IAAIq8C,EAAU56C,OAAQ/F,EAAKkR,kBAAkByvC,EAAW0uC,EAAS,IAAK,QAASgB,GAAkB,EACrG,IAAR5wB,IACFA,EAAO9e,EAAU56C,OAEnB,IAAIwqF,GAAgB,GAAIhqF,OAAMk5D,EAAO6wB,EACrC,KAAKrgF,EAAIqgF,EAAW7wB,EAAJxvD,EAAUA,IACxBe,EAAOwyC,EAAM7C,UAAU1wC,GACvBsgF,EAActgF,EAAIqgF,GAASt/E,CAE7B4vC,GAAWm5B,EAAS7zE,IAAMqqF,MAG1B3vC,GAAWm5B,EAAS7zE,IAAMs9C,EAAM7C,YAYxCr+C,EAAUmQ,UAAU88E,eAAiB,SAAUxV,EAAUn5B,GACvD,GAAI4C,EACJ,IAAIu2B,EAASh0E,OAAS,EACpB,IAAK,GAAIG,GAAI,EAAGA,EAAI6zE,EAASh0E,OAAQG,IAEnC,GADAs9C,EAAQnkD,KAAKy/C,OAAOi7B,EAAS7zE,IACC,GAA1Bs9C,EAAMtgD,QAAQ4pF,SAAkB,CAClC,GAAIyD,GAAgB3vC,EAAWm5B,EAAS7zE,GACxC,IAAIqqF,EAAcxqF,OAAS,EAAG,CAC5B,GAAIyqF,GAAY,EACZC,EAAiBF,EAAcxqF,OAI/B2qF,EAAYrxF,KAAKmgD,KAAKx/C,KAAKigD,eAAeswC,EAAcA,EAAcxqF,OAAS,GAAG83B,GAAKx+B,KAAKmgD,KAAKx/C,KAAKigD,eAAeswC,EAAc,GAAG1yD,GACtI8yD,EAAiBF,EAAiBC,CACtCF,GAAY7rF,KAAKL,IAAIK,KAAKkR,KAAK,GAAM46E,GAAiB9rF,KAAKJ,IAAI,EAAGI,KAAKgkB,MAAMgoE,IAG7E,KAAK,GADDC,GAAc,GAAIrqF,OAAMkqF,GACnBxgF,EAAI,EAAOwgF,EAAJxgF,EAAoBA,GAAKugF,EAAW,CAClD,GAAIn3B,GAAM10D,KAAKgkB,MAAM1Y,EAAIugF,EACzBI,GAAYv3B,GAAOk3B,EAActgF,GAEnC2wC,EAAWm5B,EAAS7zE,IAAM0qF,EAAY/nF,OAAO,EAAGlE,KAAKgkB,MAAM8nE,EAAiBD,OAetFluF,EAAUmQ,UAAUg9E,YAAc,SAAU1V,EAAUn5B,EAAYsuC,GAChE,GAAIpS,GAAWt5B,EAAOt9C,EAGlBhD,EAFA2tF,KACAC,IAEJ,IAAI/W,EAASh0E,OAAS,EAAG,CACvB,IAAKG,EAAI,EAAGA,EAAI6zE,EAASh0E,OAAQG,IAC/B42E,EAAYl8B,EAAWm5B,EAAS7zE,IAChChD,EAAU7D,KAAKy/C,OAAOi7B,EAAS7zE,IAAIhD,QAC/B45E,EAAU/2E,OAAS,IACrBy9C,EAAQnkD,KAAKy/C,OAAOi7B,EAAS7zE,IAEzBhD,EAAQ/B,SAAU,GAA0B,QAAlB+B,EAAQoL,MACH,SAA7BpL,EAAQ0pF,iBACViE,EAAmBA,EAAiB/wD,OAAO0jB,EAAMg5B,YAEjDsU,EAAoBA,EAAkBhxD,OAAO0jB,EAAMg5B,YAGrD0S,EAAYnV,EAAS7zE,IAAMs9C,EAAMutC,UAAUjU,EAAW/C,EAAS7zE,IAMrE8nF,GAAKgD,iBAAiBH,EAAkB3B,EAAanV,EAAU,iBAAkB,QACjFiU,EAAKgD,iBAAiBF,EAAmB5B,EAAanV,EAAU,kBAAmB,WAUvFz3E,EAAUmQ,UAAUi9E,aAAe,SAAU3V,EAAUmV,GACrD,GAOI+B,GACAC,EARA3f,GAAU,EACV4f,GAAgB,EAChBC,GAAiB,EACjBC,EAAU,IACVC,EAAW,IACXC,EAAU,KACVC,EAAW,IAIf,IAAIzX,EAASh0E,OAAS,EAAG,CAEvB,IAAK,GAAIG,GAAI,EAAGA,EAAI6zE,EAASh0E,OAAQG,IAAK,CACxC,GAAIs9C,GAAQnkD,KAAKy/C,OAAOi7B,EAAS7zE,GAC7Bs9C,IAA2C,SAAlCA,EAAMtgD,QAAQ0pF,kBACzBuE,GAAgB,EAChBE,EAAU,IACVE,EAAU,MACD/tC,GAASA,EAAMtgD,QAAQ0pF,mBAChCwE,GAAiB,EACjBE,EAAW,IACXE,EAAW,MAKf,IAAK,GAAItrF,GAAI,EAAGA,EAAI6zE,EAASh0E,OAAQG,IAC/BgpF,EAAYzpF,eAAes0E,EAAS7zE,KAClCgpF,EAAYnV,EAAS7zE,IAAIurF,UAAW,IACtCR,EAAS/B,EAAYnV,EAAS7zE,IAAI5B,IAClC4sF,EAAShC,EAAYnV,EAAS7zE,IAAI3B,IAEe,SAA7C2qF,EAAYnV,EAAS7zE,IAAI0mF,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,GACF9xF,KAAKktF,UAAUvuC,SAASqzC,EAASE,GAEb,GAAlBH,GACF/xF,KAAKmtF,WAAWxuC,SAASszC,EAAUE,GAGvCjgB,EAAUlyE,KAAKqyF,qBAAqBP,EAAe9xF,KAAKktF,YAAchb,EACtEA,EAAUlyE,KAAKqyF,qBAAqBN,EAAgB/xF,KAAKmtF,aAAejb,EAElD,GAAlB6f,GAA2C,GAAjBD,GAC5B9xF,KAAKktF,UAAUoF,WAAY,EAC3BtyF,KAAKmtF,WAAWmF,WAAY,IAE5BtyF,KAAKktF,UAAUoF,WAAY,EAC3BtyF,KAAKmtF,WAAWmF,WAAY,GAE9BtyF,KAAKmtF,WAAWoF,QAAUT,EAC1B9xF,KAAKmtF,WAAWqF,WAAaxyF,KAAKktF,UAEJ,GAA1BltF,KAAKmtF,WAAWoF,QACI,GAAlBR,EACF/xF,KAAKktF,UAAUuF,WAAazyF,KAAKmtF,WAAW/tD,MAE5Cp/B,KAAKktF,UAAUuF,WAAa,EAG9BvgB,EAAUlyE,KAAKktF,UAAU5/C,UAAY4kC,EACrCA,EAAUlyE,KAAKmtF,WAAW7/C,UAAY4kC,GAEtCA,EAAUlyE,KAAKmtF,WAAW7/C,UAAY4kC,CAKxC,KAAK,GADDwgB,IAAc,iBAAkB,kBAAmB,kBAAmB,oBACjE7rF,EAAI,EAAGA,EAAI6rF,EAAWhsF,OAAQG,IACE,IAAnC6zE,EAAShzE,QAAQgrF,EAAW7rF,KAC9B6zE,EAASlxE,OAAOkxE,EAAShzE,QAAQgrF,EAAW7rF,IAAK,EAIrD,OAAOqrE,IAWTjvE,EAAUmQ,UAAUi/E,qBAAuB,SAAUM,EAAU5yC,GAC7D,GAAIiiB,IAAU,CAYd,OAXgB,IAAZ2wB,EACE5yC,EAAKvF,IAAIpP,MAAM5/B,YAA6B,GAAfu0C,EAAKmzB,SACpCnzB,EAAK87B,OACL7Z,GAAU,GAGPjiB,EAAKvF,IAAIpP,MAAM5/B,YAA6B,GAAfu0C,EAAKmzB,SACrCnzB,EAAK6D,OACLoe,GAAU,GAGPA,GAYT/+D,EAAUmQ,UAAU+8E,qBAAuB,SAAUyC,GAEnD,IAAK,GADDlyC,GAAW1gD,KAAKmgD,KAAKx/C,KAAK+/C,SACrB75C,EAAI,EAAGA,EAAI+rF,EAAWlsF,OAAQG,IACrC+rF,EAAW/rF,GAAGgsF,SAAWnyC,EAASkyC,EAAW/rF,GAAG23B,GAAKx+B,KAAKiH,MAAMm4B,MAChEwzD,EAAW/rF,GAAGisF,SAAWF,EAAW/rF,GAAGmb,GAc3C/e,EAAUmQ,UAAUq9E,qBAAuB,SAAUmC,EAAYzuC,GAC/D,GAAIpE,GAAO//C,KAAKktF,UACZ6F,EAAYruF,OAAO1E,KAAKyuF,IAAIx/E,MAAMowB,OAAO/yB,QAAQ,KAAM,IACrB,UAAlC63C,EAAMtgD,QAAQ0pF,mBAChBxtC,EAAO//C,KAAKmtF,WAEd,KAAK,GAAItmF,GAAI,EAAGA,EAAI+rF,EAAWlsF,OAAQG,IACrC+rF,EAAW/rF,GAAGisF,SAAWxtF,KAAKgkB,MAAMy2B,EAAKizC,aAAaJ,EAAW/rF,GAAGmb,GAEtEmiC,GAAM8uC,gBAAgB3tF,KAAKL,IAAI8tF,EAAWhzC,EAAKizC,aAAa,MAG9DnzF,EAAOD,QAAUqD,GAIb,SAASpD,EAAQD,EAASM,GAgB9B,QAASyC,GAASw9C,EAAMt8C,EAAS4qF,EAAKyE,GACpClzF,KAAKK,GAAKM,EAAKqF,aACfhG,KAAKmgD,KAAOA,EAEZngD,KAAK2/C,gBACHG,YAAa,OACbuoC,iBAAiB,EACjBC,iBAAiB,EACjB6K,OAAO,EACPC,iBAAkB,EAClBC,iBAAkB,EAClBC,aAAc,GACdC,aAAc,EACdC,UAAW,GACXp0D,MAAO,OACP0U,SAAS,EACT2/C,YAAY,EACZ3qF,MACEo4C,OAASj8C,IAAK0B,OAAWzB,IAAKyB,QAC9B6M,OAAQ,SAAgBpO,GACtB,MAAO,GAAK+lB,WAAW/lB,EAAMg6C,YAAY,KAE3Cu3B,OAASliC,KAAM9tC,OAAWsI,MAAOtI,SAEnC8rC,OACEyO,OAASj8C,IAAK0B,OAAWzB,IAAKyB,QAC9B6M,OAAQ,SAAgBpO,GACtB,MAAO,GAAK+lB,WAAW/lB,EAAMg6C,YAAY,KAE3Cu3B,OAASliC,KAAM9tC,OAAWsI,MAAOtI,UAIrC3G,KAAKkzF,iBAAmBA,EACxBlzF,KAAK0zF,aAAejF,EACpBzuF,KAAKiH,SACLjH,KAAK2zF,aACH1L,SACA2L,UACAjd,UAGF32E,KAAKw6C,OACLx6C,KAAKqF,MAAQsB,OACb3G,KAAKkhD,OAAU1N,MAAO,EAAGE,IAAK,GAE9B1zC,KAAK6D,QAAUlD,EAAKoG,UAAW/G,KAAK2/C,gBACpC3/C,KAAK6zF,iBAAmB,EAExB7zF,KAAK4/B,WAAW/7B,GAChB7D,KAAKo/B,MAAQ16B,QAAQ,GAAK1E,KAAK6D,QAAQu7B,OAAO9yB,QAAQ,KAAM,KAC5DtM,KAAK8zF,SAAW9zF,KAAKo/B,MACrBp/B,KAAKq/B,OAASr/B,KAAK0zF,aAAa7qF,wBAAwBw2B,OACxDr/B,KAAKkzE,QAAS,EAEdlzE,KAAK+zF,WAAa,GAClB/zF,KAAKg0F,aAAe,GACpBh0F,KAAKi0F,cAAgB,GAErBj0F,KAAKyyF,WAAa,EAClBzyF,KAAKuyF,QAAS,EACdvyF,KAAKwyF,WAAa,KAClBxyF,KAAKuuF,eACLvuF,KAAKk0F,cAAe,EAEpBl0F,KAAKy/C,UACLz/C,KAAKm0F,eAAiB,EAGtBn0F,KAAKkgD,UACLlgD,KAAK0uF,WAAcD,IAAKzuF,KAAKyuF,IAAKF,YAAavuF,KAAKuuF,YAAa1qF,QAAS7D,KAAK6D,QAAS47C,OAAQz/C,KAAKy/C,OAErG,IAAI7e,GAAK5gC,IACTA,MAAKmgD,KAAKE,QAAQrgB,GAAG,eAAgB,WACnCY,EAAG4Z,IAAI45C,cAAcnlF,MAAMjG,IAAM43B,EAAGuf,KAAKC,SAASm1B,UAAY,OAtFlE,GAAI50E,GAAOT,EAAoB,GAC3BU,EAAUV,EAAoB,GAC9BsC,EAAYtC,EAAoB,IAChC0C,EAAY1C,EAAoB,GAuFpCyC,GAASyQ,UAAY,GAAI5Q,GAEzBG,EAASyQ,UAAU87E,SAAW,SAAUpwD,EAAOu1D,GACxCr0F,KAAKy/C,OAAOr5C,eAAe04B,KAC9B9+B,KAAKy/C,OAAO3gB,GAASu1D,GAEvBr0F,KAAKm0F,gBAAkB,GAGzBxxF,EAASyQ,UAAUmmE,YAAc,SAAUz6C,EAAOu1D,GAC3Cr0F,KAAKy/C,OAAOr5C,eAAe04B,KAC9B9+B,KAAKm0F,gBAAkB,GAEzBn0F,KAAKy/C,OAAO3gB,GAASu1D,GAGvB1xF,EAASyQ,UAAU47E,YAAc,SAAUlwD,GACrC9+B,KAAKy/C,OAAOr5C,eAAe04B,WACtB9+B,MAAKy/C,OAAO3gB,GACnB9+B,KAAKm0F,gBAAkB,IAI3BxxF,EAASyQ,UAAUwsB,WAAa,SAAU/7B,GACxC,GAAIA,EAAS,CACX,GAAIypC,IAAS,CACTttC,MAAK6D,QAAQi8C,aAAej8C,EAAQi8C,aAAuCn5C,SAAxB9C,EAAQi8C,cAC7DxS,GAAS,EAEX,IAAIl9B,IAAU,cAAe,kBAAmB,kBAAmB,QAAS,mBAAoB,mBAAoB,eAAgB,eAAgB,YAAa,QAAS,UAAW,OAAQ,QAAS,aACtMzP,GAAK0G,oBAAoB+I,EAAQpQ,KAAK6D,QAASA,GAE/C7D,KAAK8zF,SAAWpvF,QAAQ,GAAK1E,KAAK6D,QAAQu7B,OAAO9yB,QAAQ,KAAM,KAC3DghC,KAAW,GAAQttC,KAAKw6C,IAAIpP,QAC9BprC,KAAK67E,OACL77E,KAAK4jD,UAQXjhD,EAASyQ,UAAU8sC,QAAU,WAC3BlgD,KAAKw6C,IAAIpP,MAAQpN,SAASM,cAAc,OACxCt+B,KAAKw6C,IAAIpP,MAAMn8B,MAAMmwB,MAAQp/B,KAAK6D,QAAQu7B,MAC1Cp/B,KAAKw6C,IAAIpP,MAAMn8B,MAAMowB,OAASr/B,KAAKq/B,OAEnCr/B,KAAKw6C,IAAI45C,cAAgBp2D,SAASM,cAAc,OAChDt+B,KAAKw6C,IAAI45C,cAAcnlF,MAAMmwB,MAAQ,OACrCp/B,KAAKw6C,IAAI45C,cAAcnlF,MAAMowB,OAASr/B,KAAKq/B,OAC3Cr/B,KAAKw6C,IAAI45C,cAAcnlF,MAAMqgC,SAAW,WAGxCtvC,KAAKyuF,IAAMzwD,SAASC,gBAAgB,6BAA8B,OAClEj+B,KAAKyuF,IAAIx/E,MAAMqgC,SAAW,WAC1BtvC,KAAKyuF,IAAIx/E,MAAMjG,IAAM,MACrBhJ,KAAKyuF,IAAIx/E,MAAMowB,OAAS,OACxBr/B,KAAKyuF,IAAIx/E,MAAMmwB,MAAQ,OACvBp/B,KAAKyuF,IAAIx/E,MAAMkmD,QAAU,QACzBn1D,KAAKw6C,IAAIpP,MAAMlN,YAAYl+B,KAAKyuF,MAGlC9rF,EAASyQ,UAAUkhF,kBAAoB,WACrC1zF,EAAQ08B,gBAAgBt9B,KAAKuuF,YAE7B,IAAI/vD,GACAg1D,EAAYxzF,KAAK6D,QAAQ2vF,UACzBe,EAAa,GACbC,EAAa,EACbxyE,EAAIwyE,EAAa,GAAMD,CAGzB/1D,GAD+B,SAA7Bx+B,KAAK6D,QAAQi8C,YACX00C,EAEAx0F,KAAKo/B,MAAQo0D,EAAYgB,CAG/B,IAAIC,GAAaltF,OAAO6H,KAAKpP,KAAKy/C,OAClCg1C,GAAWx0E,KAAK,SAAU3Z,EAAGC,GAC3B,MAAWA,GAAJD,EAAQ,GAAK,GAGtB,KAAK,GAAIO,GAAI,EAAGA,EAAI4tF,EAAW/tF,OAAQG,IAAK,CAC1C,GAAI+9C,GAAU6vC,EAAW5tF,EACrB7G,MAAKy/C,OAAOmF,GAAS9Q,WAAY,GAAuDntC,SAA9C3G,KAAKkzF,iBAAiBvb,WAAW/yB,IAA0B5kD,KAAKkzF,iBAAiBvb,WAAW/yB,MAAa,IACrJ5kD,KAAKy/C,OAAOmF,GAASooC,UAAUwG,EAAWe,EAAYv0F,KAAK0uF,UAAWlwD,EAAGxc,GACzEA,GAAKuyE,EAAaC,GAItB5zF,EAAQ+8B,gBAAgB39B,KAAKuuF,aAC7BvuF,KAAKk0F,cAAe,GAGtBvxF,EAASyQ,UAAUshF,cAAgB,WAC7B10F,KAAKk0F,gBAAiB,IACxBtzF,EAAQ08B,gBAAgBt9B,KAAKuuF,aAC7B3tF,EAAQ+8B,gBAAgB39B,KAAKuuF,aAC7BvuF,KAAKk0F,cAAe,IAOxBvxF,EAASyQ,UAAUwwC,KAAO,WACxB5jD,KAAKkzE,QAAS,EACTlzE,KAAKw6C,IAAIpP,MAAM5/B,aACe,SAA7BxL,KAAK6D,QAAQi8C,YACf9/C,KAAKmgD,KAAK3F,IAAI1xC,KAAKo1B,YAAYl+B,KAAKw6C,IAAIpP,OAExCprC,KAAKmgD,KAAK3F,IAAI/H,MAAMvU,YAAYl+B,KAAKw6C,IAAIpP,QAIxCprC,KAAKw6C,IAAI45C,cAAc5oF,YAC1BxL,KAAKmgD,KAAK3F,IAAIo6B,qBAAqB12C,YAAYl+B,KAAKw6C,IAAI45C,gBAO5DzxF,EAASyQ,UAAUyoE,KAAO,WACxB77E,KAAKkzE,QAAS,EACVlzE,KAAKw6C,IAAIpP,MAAM5/B,YACjBxL,KAAKw6C,IAAIpP,MAAM5/B,WAAWzG,YAAY/E,KAAKw6C,IAAIpP,OAG7CprC,KAAKw6C,IAAI45C,cAAc5oF,YACzBxL,KAAKw6C,IAAI45C,cAAc5oF,WAAWzG,YAAY/E,KAAKw6C,IAAI45C,gBAU3DzxF,EAASyQ,UAAUurC,SAAW,SAAUnL,EAAOE,GAC7C1zC,KAAKkhD,MAAM1N,MAAQA,EACnBxzC,KAAKkhD,MAAMxN,IAAMA,GAOnB/wC,EAASyQ,UAAUk6B,OAAS,WAC1B,GAAI4kC,IAAU,EACVyiB,EAAe,CAGnB30F,MAAKw6C,IAAI45C,cAAcnlF,MAAMjG,IAAMhJ,KAAKmgD,KAAKC,SAASm1B,UAAY,IAElE,KAAK,GAAI3wB,KAAW5kD,MAAKy/C,OACnBz/C,KAAKy/C,OAAOr5C,eAAew+C,KACzB5kD,KAAKy/C,OAAOmF,GAAS9Q,WAAY,GAAuDntC,SAA9C3G,KAAKkzF,iBAAiBvb,WAAW/yB,IAA0B5kD,KAAKkzF,iBAAiBvb,WAAW/yB,MAAa,GACrJ+vC,IAIN,IAA4B,IAAxB30F,KAAKm0F,gBAAyC,IAAjBQ,EAC/B30F,KAAK67E,WACA,CACL77E,KAAK4jD,OACL5jD,KAAKq/B,OAAS36B,OAAO1E,KAAK0zF,aAAazkF,MAAMowB,OAAO/yB,QAAQ,KAAM,KAGlEtM,KAAKw6C,IAAI45C,cAAcnlF,MAAMowB,OAASr/B,KAAKq/B,OAAS,KACpDr/B,KAAKo/B,MAAQp/B,KAAK6D,QAAQiwC,WAAY,EAAOpvC,QAAQ,GAAK1E,KAAK6D,QAAQu7B,OAAO9yB,QAAQ,KAAM,KAAO,CAEnG,IAAIrF,GAAQjH,KAAKiH,MACbmkC,EAAQprC,KAAKw6C,IAAIpP,KAGrBA,GAAMliC,UAAY,gBAGlBlJ,KAAKyoF,oBAEL,IAAI3oC,GAAc9/C,KAAK6D,QAAQi8C,YAC3BuoC,EAAkBroF,KAAK6D,QAAQwkF,gBAC/BC,EAAkBtoF,KAAK6D,QAAQykF,eAGnCrhF,GAAMyhF,iBAAmBL,EAAkBphF,EAAM0hF,gBAAkB,EACnE1hF,EAAM2hF,iBAAmBN,EAAkBrhF,EAAM4hF,gBAAkB,EAEnE5hF,EAAM8hF,eAAiB/oF,KAAKmgD,KAAK3F,IAAIo6B,qBAAqB/5B,YAAc76C,KAAKyyF,WAAazyF,KAAKo/B,MAAQ,EAAIp/B,KAAK6D,QAAQwvF,iBACxHpsF,EAAM6hF,gBAAkB,EACxB7hF,EAAMgiF,eAAiBjpF,KAAKmgD,KAAK3F,IAAIo6B,qBAAqB/5B,YAAc76C,KAAKyyF,WAAazyF,KAAKo/B,MAAQ,EAAIp/B,KAAK6D,QAAQuvF,iBACxHnsF,EAAM+hF,gBAAkB,EAGJ,SAAhBlpC,GACF1U,EAAMn8B,MAAMjG,IAAM,IAClBoiC,EAAMn8B,MAAMnG,KAAO,IACnBsiC,EAAMn8B,MAAMigC,OAAS,GACrB9D,EAAMn8B,MAAMmwB,MAAQp/B,KAAKo/B,MAAQ,KACjCgM,EAAMn8B,MAAMowB,OAASr/B,KAAKq/B,OAAS,KACnCr/B,KAAKiH,MAAMm4B,MAAQp/B,KAAKmgD,KAAKC,SAASt3C,KAAKs2B,MAC3Cp/B,KAAKiH,MAAMo4B,OAASr/B,KAAKmgD,KAAKC,SAASt3C,KAAKu2B,SAG5C+L,EAAMn8B,MAAMjG,IAAM,GAClBoiC,EAAMn8B,MAAMigC,OAAS,IACrB9D,EAAMn8B,MAAMnG,KAAO,IACnBsiC,EAAMn8B,MAAMmwB,MAAQp/B,KAAKo/B,MAAQ,KACjCgM,EAAMn8B,MAAMowB,OAASr/B,KAAKq/B,OAAS,KACnCr/B,KAAKiH,MAAMm4B,MAAQp/B,KAAKmgD,KAAKC,SAAS3N,MAAMrT,MAC5Cp/B,KAAKiH,MAAMo4B,OAASr/B,KAAKmgD,KAAKC,SAAS3N,MAAMpT,QAG/C6yC,EAAUlyE,KAAK40F,gBACf1iB,EAAUlyE,KAAKiyE,cAAgBC,EAE3BlyE,KAAK6D,QAAQsvF,SAAU,EACzBnzF,KAAKs0F,oBAELt0F,KAAK00F,gBAGP10F,KAAK60F,aAAa/0C,GAEpB,MAAOoyB,IAOTvvE,EAASyQ,UAAUwhF,cAAgB,WACjC,GAAIzxC,GAAQnjD,KAERkyE,GAAU,CACdtxE,GAAQ08B,gBAAgBt9B,KAAK2zF,YAAY1L,OACzCrnF,EAAQ08B,gBAAgBt9B,KAAK2zF,YAAYC,OACzC,IAAI9zC,GAAc9/C,KAAK6D,QAAqB,YACxCixF,EAAiDnuF,QAAnC3G,KAAK6D,QAAQi8C,GAAaoB,MAAqBlhD,KAAK6D,QAAQi8C,GAAaoB,SAGvF6zC,GAAe,CACIpuF,SAAnBmuF,EAAY5vF,MACdlF,KAAKkhD,MAAMxN,IAAMohD,EAAY5vF,IAC7B6vF,GAAe,EAEjB,IAAIC,IAAiB,CACEruF,SAAnBmuF,EAAY7vF,MACdjF,KAAKkhD,MAAM1N,MAAQshD,EAAY7vF,IAC/B+vF,GAAiB,GAGnBh1F,KAAKqF,MAAQ,GAAIzC,GAAU5C,KAAKkhD,MAAM1N,MAAOxzC,KAAKkhD,MAAMxN,IAAKshD,EAAgBD,EAAc/0F,KAAKw6C,IAAIpP,MAAM2P,aAAc/6C,KAAKiH,MAAM4hF,gBAAiB7oF,KAAK6D,QAAQ4vF,WAAYzzF,KAAK6D,QAAQi8C,GAAatsC,QAEnMxT,KAAKuyF,UAAW,GAA4B5rF,QAAnB3G,KAAKwyF,YAChCxyF,KAAKqF,MAAM4vF,YAAYj1F,KAAKwyF,WAAWntF,OAIzCrF,KAAKk1F,aAAe,CAEpB,IAAIjN,GAAQjoF,KAAKqF,MAAM8vF,UACvBlN,GAAMx+E,QAAQ,SAAU6wC,GACtB,GAAIt4B,GAAIs4B,EAAKt4B,EACT0gE,EAAUpoC,EAAK86C,KACfjyC,GAAMt/C,QAAyB,iBAAK6+E,KAAY,GAClDv/B,EAAMkyC,aAAarzE,EAAI,EAAGs4B,EAAK9kC,IAAKsqC,EAAa,uBAAwBqD,EAAMl8C,MAAM0hF,iBAEnFjG,GACE1gE,GAAK,GACPmhC,EAAMkyC,aAAarzE,EAAI,EAAGs4B,EAAK9kC,IAAKsqC,EAAa,uBAAwBqD,EAAMl8C,MAAM4hF,iBAGrF1lC,EAAMovC,UAAW,IACf7P,EACFv/B,EAAMmyC,YAAYtzE,EAAG89B,EAAa,oCAAqCqD,EAAMt/C,QAAQuvF,iBAAkBjwC,EAAMl8C,MAAMgiF,gBAEnH9lC,EAAMmyC,YAAYtzE,EAAG89B,EAAa,oCAAqCqD,EAAMt/C,QAAQwvF,iBAAkBlwC,EAAMl8C,MAAM8hF,kBAMzH,IAAIwM,GAAa,CACuB5uF,UAApC3G,KAAK6D,QAAQi8C,GAAa62B,OAAgEhwE,SAAzC3G,KAAK6D,QAAQi8C,GAAa62B,MAAMliC,OACnF8gD,EAAav1F,KAAKiH,MAAMuuF,gBAE1B,IAAIjtE,GAASvoB,KAAK6D,QAAQsvF,SAAU,EAAO7tF,KAAKJ,IAAIlF,KAAK6D,QAAQ2vF,UAAW+B,GAAcv1F,KAAK6D,QAAQyvF,aAAe,GAAKiC,EAAav1F,KAAK6D,QAAQyvF,aAAe,EAyBpK,OAtBItzF,MAAKk1F,aAAel1F,KAAKo/B,MAAQ7W,GAAUvoB,KAAK6D,QAAQiwC,WAAY,GACtE9zC,KAAKo/B,MAAQp/B,KAAKk1F,aAAe3sE,EACjCvoB,KAAK6D,QAAQu7B,MAAQp/B,KAAKo/B,MAAQ,KAClCx+B,EAAQ+8B,gBAAgB39B,KAAK2zF,YAAY1L,OACzCrnF,EAAQ+8B,gBAAgB39B,KAAK2zF,YAAYC,QACzC5zF,KAAKstC,SACL4kC,GAAU,GAGHlyE,KAAKk1F,aAAel1F,KAAKo/B,MAAQ7W,GAAUvoB,KAAK6D,QAAQiwC,WAAY,GAAQ9zC,KAAKo/B,MAAQp/B,KAAK8zF,UACnG9zF,KAAKo/B,MAAQ95B,KAAKJ,IAAIlF,KAAK8zF,SAAU9zF,KAAKk1F,aAAe3sE,GACzDvoB,KAAK6D,QAAQu7B,MAAQp/B,KAAKo/B,MAAQ,KAClCx+B,EAAQ+8B,gBAAgB39B,KAAK2zF,YAAY1L,OACzCrnF,EAAQ+8B,gBAAgB39B,KAAK2zF,YAAYC,QACzC5zF,KAAKstC,SACL4kC,GAAU,IAEVtxE,EAAQ+8B,gBAAgB39B,KAAK2zF,YAAY1L,OACzCrnF,EAAQ+8B,gBAAgB39B,KAAK2zF,YAAYC,QACzC1hB,GAAU,GAGPA,GAGTvvE,EAASyQ,UAAU4/E,aAAe,SAAU5tF,GAC1C,MAAOpF,MAAKqF,MAAM2tF,aAAa5tF,IAGjCzC,EAASyQ,UAAUk6E,cAAgB,SAAU9uD,GAC3C,MAAOx+B,MAAKqF,MAAMioF,cAAc9uD,IAYlC77B,EAASyQ,UAAUiiF,aAAe,SAAUrzE,EAAGyyB,EAAMqL,EAAa52C,EAAWusF,GAE3E,GAAI32D,GAAQl+B,EAAQu9B,cAAc,MAAOn+B,KAAK2zF,YAAYC,OAAQ5zF,KAAKw6C,IAAIpP,MAC3EtM,GAAM51B,UAAYA,EAClB41B,EAAM4Q,UAAY+E,EACE,SAAhBqL,GACFhhB,EAAM7vB,MAAMnG,KAAO,IAAM9I,KAAK6D,QAAQyvF,aAAe,KACrDx0D,EAAM7vB,MAAM0kC,UAAY,UAExB7U,EAAM7vB,MAAMwjC,MAAQ,IAAMzyC,KAAK6D,QAAQyvF,aAAe,KACtDx0D,EAAM7vB,MAAM0kC,UAAY,QAG1B7U,EAAM7vB,MAAMjG,IAAMgZ,EAAI,GAAMyzE,EAAkBz1F,KAAK6D,QAAQ0vF,aAAe,KAE1E9+C,GAAQ,EAER,IAAIihD,GAAepwF,KAAKJ,IAAIlF,KAAKiH,MAAMsjF,eAAgBvqF,KAAKiH,MAAMsiF,eAC9DvpF,MAAKk1F,aAAezgD,EAAK/tC,OAASgvF,IACpC11F,KAAKk1F,aAAezgD,EAAK/tC,OAASgvF,IAYtC/yF,EAASyQ,UAAUkiF,YAAc,SAAUtzE,EAAG89B,EAAa52C,EAAWqf,EAAQ6W,GAC5E,GAAIp/B,KAAKuyF,UAAW,EAAM,CACxB,GAAIj4C,GAAO15C,EAAQu9B,cAAc,MAAOn+B,KAAK2zF,YAAY1L,MAAOjoF,KAAKw6C,IAAI45C,cACzE95C,GAAKpxC,UAAYA,EACjBoxC,EAAK5K,UAAY,GAEG,SAAhBoQ,EACFxF,EAAKrrC,MAAMnG,KAAO9I,KAAKo/B,MAAQ7W,EAAS,KAExC+xB,EAAKrrC,MAAMwjC,MAAQzyC,KAAKo/B,MAAQ7W,EAAS,KAG3C+xB,EAAKrrC,MAAMmwB,MAAQA,EAAQ,KAC3Bkb,EAAKrrC,MAAMjG,IAAMgZ,EAAI,OASzBrf,EAASyQ,UAAUyhF,aAAe,SAAU/0C,GAI1C,GAHAl/C,EAAQ08B,gBAAgBt9B,KAAK2zF,YAAYhd,OAGDhwE,SAApC3G,KAAK6D,QAAQi8C,GAAa62B,OAAgEhwE,SAAzC3G,KAAK6D,QAAQi8C,GAAa62B,MAAMliC,KAAoB,CACvG,GAAIkiC,GAAQ/1E,EAAQu9B,cAAc,MAAOn+B,KAAK2zF,YAAYhd,MAAO32E,KAAKw6C,IAAIpP,MAC1EurC,GAAMztE,UAAY,4BAA8B42C,EAChD62B,EAAMjnC,UAAY1vC,KAAK6D,QAAQi8C,GAAa62B,MAAMliC,KAGJ9tC,SAA1C3G,KAAK6D,QAAQi8C,GAAa62B,MAAM1nE,OAClCtO,EAAK0O,WAAWsnE,EAAO32E,KAAK6D,QAAQi8C,GAAa62B,MAAM1nE,OAGrC,SAAhB6wC,EACF62B,EAAM1nE,MAAMnG,KAAO9I,KAAKiH,MAAMuuF,gBAAkB,KAEhD7e,EAAM1nE,MAAMwjC,MAAQzyC,KAAKiH,MAAMuuF,gBAAkB,KAGnD7e,EAAM1nE,MAAMmwB,MAAQp/B,KAAKq/B,OAAS,KAIpCz+B,EAAQ+8B,gBAAgB39B,KAAK2zF,YAAYhd,QAQ3Ch0E,EAASyQ,UAAUq1E,mBAAqB,WAEtC,KAAM,mBAAqBzoF,MAAKiH,OAAQ,CACtC,GAAI0uF,GAAY33D,SAASysD,eAAe,KACpCG,EAAmB5sD,SAASM,cAAc,MAC9CssD,GAAiB1hF,UAAY,mCAC7B0hF,EAAiB1sD,YAAYy3D,GAC7B31F,KAAKw6C,IAAIpP,MAAMlN,YAAY0sD,GAE3B5qF,KAAKiH,MAAM0hF,gBAAkBiC,EAAiBt6C,aAC9CtwC,KAAKiH,MAAMsiF,eAAiBqB,EAAiBt/C,YAE7CtrC,KAAKw6C,IAAIpP,MAAMrmC,YAAY6lF,GAG7B,KAAM,mBAAqB5qF,MAAKiH,OAAQ,CACtC,GAAI2uF,GAAY53D,SAASysD,eAAe,KACpCI,EAAmB7sD,SAASM,cAAc,MAC9CusD,GAAiB3hF,UAAY,mCAC7B2hF,EAAiB3sD,YAAY03D,GAC7B51F,KAAKw6C,IAAIpP,MAAMlN,YAAY2sD,GAE3B7qF,KAAKiH,MAAM4hF,gBAAkBgC,EAAiBv6C,aAC9CtwC,KAAKiH,MAAMsjF,eAAiBM,EAAiBv/C,YAE7CtrC,KAAKw6C,IAAIpP,MAAMrmC,YAAY8lF,GAG7B,KAAM,mBAAqB7qF,MAAKiH,OAAQ,CACtC,GAAI4uF,GAAY73D,SAASysD,eAAe,KACpCqL,EAAmB93D,SAASM,cAAc,MAC9Cw3D,GAAiB5sF,UAAY,mCAC7B4sF,EAAiB53D,YAAY23D,GAC7B71F,KAAKw6C,IAAIpP,MAAMlN,YAAY43D,GAE3B91F,KAAKiH,MAAMuuF,gBAAkBM,EAAiBxlD,aAC9CtwC,KAAKiH,MAAM8uF,eAAiBD,EAAiBxqD,YAE7CtrC,KAAKw6C,IAAIpP,MAAMrmC,YAAY+wF,KAI/Bj2F,EAAOD,QAAU+C,GAIb,SAAS9C,EAAQD,GAQrB,QAASgD,GAAU4wC,EAAOE,EAAKshD,EAAgBD,EAAczd,EAAiBuR,GAC5E,GAAImN,GAAYvvF,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GACpFwvF,EAAqBxvF,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAsBjG,IApBAzG,KAAKk2F,YAAc,EAAG,EAAG,EAAG,IAC5Bl2F,KAAKm2F,YAAc,IAAM,GAAK,EAAG,GACjCn2F,KAAKo2F,YAAc,KAEnBp2F,KAAKs3E,gBAAkBA,EACvBt3E,KAAK6oF,gBAAkBA,EACvB7oF,KAAKs+C,OAAS9K,EACdxzC,KAAKu+C,KAAO7K,EAEZ1zC,KAAKqF,MAAQ,EACbrF,KAAKq2F,aAAe,GACpBr2F,KAAKs2F,gBAAkB,EACvBt2F,KAAKu2F,iBAELv2F,KAAKg2F,UAAYA,EACjBh2F,KAAKg1F,eAAiBA,EACtBh1F,KAAK+0F,aAAeA,EAEpB/0F,KAAKi2F,mBAAqBA,EAEtBjB,GAAkBD,EAAc,CAClC,GAAIn0D,GAAK5gC,KACL+hF,EAAe,SAAsB38E,GACvC,GAAIoxF,GAAUpxF,EAAQA,GAASw7B,EAAG01D,gBAAkB11D,EAAGu1D,WAAWv1D,EAAGy1D,cACrE,OAAIjxF,IAASw7B,EAAG01D,gBAAkB11D,EAAGu1D,WAAWv1D,EAAGy1D,eAAiB,IAAOz1D,EAAG01D,gBAAkB11D,EAAGu1D,WAAWv1D,EAAGy1D,eACxGG,EAAU51D,EAAG01D,gBAAkB11D,EAAGu1D,WAAWv1D,EAAGy1D,cAEhDG,EAGPxB,KACFh1F,KAAKs+C,QAAiC,EAAvBt+C,KAAKs2F,gBAAsBt2F,KAAKm2F,WAAWn2F,KAAKq2F,cAC/Dr2F,KAAKs+C,OAASyjC,EAAa/hF,KAAKs+C,SAG9By2C,IACF/0F,KAAKu+C,MAAQv+C,KAAKs2F,gBAAkBt2F,KAAKm2F,WAAWn2F,KAAKq2F,cACzDr2F,KAAKu+C,KAAOwjC,EAAa/hF,KAAKu+C,OAEhCv+C,KAAKu2F,kBAIT3zF,EAAUwQ,UAAUqjF,cAAgB,SAAU5N,GAC5C7oF,KAAK6oF,gBAAkBA,GAGzBjmF,EAAUwQ,UAAUsjF,UAAY,SAAUpf,GACxCt3E,KAAKs3E,gBAAkBA,GAGzB10E,EAAUwQ,UAAUmjF,eAAiB,WACnC,GAAIr1C,GAAQlhD,KAAKu+C,KAAOv+C,KAAKs+C,MAC7Bt+C,MAAKqF,MAAQrF,KAAKs3E,gBAAkBp2B,CACpC,IAAIy1C,GAAmB32F,KAAK6oF,gBAAkB7oF,KAAKqF,MAC/CuxF,EAAmB11C,EAAQ,EAAI57C,KAAKgkB,MAAMhkB,KAAKy5C,IAAImC,GAAS57C,KAAK05C,MAAQ,CAE7Eh/C,MAAKq2F,aAAe,GACpBr2F,KAAKs2F,gBAAkBhxF,KAAKiW,IAAI,GAAIq7E,EAEpC,IAAIpjD,GAAQ,CACW,GAAnBojD,IACFpjD,EAAQojD,EAIV,KAAK,GADDC,IAAgB,EACX71E,EAAIwyB,EAAOluC,KAAK4R,IAAI8J,IAAM1b,KAAK4R,IAAI0/E,GAAmB51E,IAAK,CAClEhhB,KAAKs2F,gBAAkBhxF,KAAKiW,IAAI,GAAIyF,EACpC,KAAK,GAAIpQ,GAAI,EAAGA,EAAI5Q,KAAKm2F,WAAWzvF,OAAQkK,IAAK,CAC/C,GAAIkmF,GAAW92F,KAAKs2F,gBAAkBt2F,KAAKm2F,WAAWvlF,EACtD,IAAIkmF,GAAYH,EAAkB,CAChCE,GAAgB,EAChB72F,KAAKq2F,aAAezlF,CACpB,QAGJ,GAAIimF,KAAkB,EACpB,QAKNj0F,EAAUwQ,UAAU2jF,SAAW,SAAU3xF,GACvC,MAAOA,IAASpF,KAAKs2F,gBAAkBt2F,KAAKk2F,WAAWl2F,KAAKq2F,iBAAmB,GAGjFzzF,EAAUwQ,UAAUisC,QAAU,WAC5B,MAAOr/C,MAAKs2F,gBAAkBt2F,KAAKm2F,WAAWn2F,KAAKq2F,eAGrDzzF,EAAUwQ,UAAU4jF,cAAgB,WAClC,GAAIC,GAAYj3F,KAAKs2F,gBAAkBt2F,KAAKk2F,WAAWl2F,KAAKq2F,aAC5D,OAAOr2F,MAAKgzF,aAAahzF,KAAKs+C,QAAU24C,EAAYj3F,KAAKs+C,OAAS24C,GAAaA,IAGjFr0F,EAAUwQ,UAAU8jF,YAAc,SAAUxjB,GAC1C,GAAIvoE,GAAcuoE,EAAQt0B,YAAY,EAKtC,OAJuC,kBAA5Bp/C,MAAKi2F,qBACd9qF,EAAcnL,KAAKi2F,mBAAmBviB,IAGb,gBAAhBvoE,GACF,GAAKA,EACoB,gBAAhBA,GACTA,EAEAuoE,EAAQt0B,YAAY,IAI/Bx8C,EAAUwQ,UAAU+hF,SAAW,WAI7B,IAAK,GAHDlN,MACA10C,EAAOvzC,KAAKq/C,UACZ83C,GAAgB5jD,EAAOvzC,KAAKs+C,OAAS/K,GAAQA,EACxC1sC,EAAI7G,KAAKs+C,OAAS64C,EAAcn3F,KAAKu+C,KAAO13C,EAAI,KAASA,GAAK0sC,EACjE1sC,GAAK7G,KAAKs+C,QAEZ2pC,EAAMtgF,MAAOytF,MAAOp1F,KAAK+2F,SAASlwF,GAAImb,EAAGhiB,KAAKgzF,aAAansF,GAAI2O,IAAKxV,KAAKk3F,YAAYrwF,IAGzF,OAAOohF,IAGTrlF,EAAUwQ,UAAU6hF,YAAc,SAAUnuF,GAC1C,GAAIswF,GAAap3F,KAAKq2F,aAClBgB,EAAWr3F,KAAKs+C,OAChBg5C,EAASt3F,KAAKu+C,KAEd3d,EAAK5gC,KACLu3F,EAAoB,WACtB32D,EAAG01D,iBAAmB,GAEpBkB,EAAoB,WACtB52D,EAAG01D,iBAAmB,EAGpBxvF,GAAMuvF,cAAgB,GAAKr2F,KAAKq2F,cAAgB,GAAKvvF,EAAMuvF,aAAe,GAAKr2F,KAAKq2F,aAAe,IAE5FvvF,EAAMuvF,aAAer2F,KAAKq2F,cAEjCr2F,KAAKq2F,aAAe,EACF,GAAde,EACFG,KAEAA,IACAA,OAIFv3F,KAAKq2F,aAAe,EACF,GAAde,EACFI,KAEAA,IACAA,MAYN,KAPA,GACIC,IADQ3wF,EAAMquF,WACFruF,EAAMksF,aAAa,IAC/B0E,EAAY5wF,EAAMu4C,UAAYv4C,EAAMzB,MAEpCgrE,GAAO,EACPx9C,EAAQ,GAEJw9C,GAAQx9C,IAAU,GAAG,CAG3B7yB,KAAKqF,MAAQqyF,GAAa13F,KAAKm2F,WAAWn2F,KAAKq2F,cAAgBr2F,KAAKs2F,gBACpE,IAAIqB,GAAW33F,KAAKs3E,gBAAkBt3E,KAAKqF,KAG3CrF,MAAKs+C,OAAS+4C,EACdr3F,KAAKu+C,KAAOv+C,KAAKs+C,OAASq5C,CAE1B,IAAIC,GAAiB53F,KAAKu+C,KAAOv+C,KAAKqF,MAClC4xF,EAAYj3F,KAAKs2F,gBAAkBt2F,KAAKk2F,WAAWl2F,KAAKq2F,cACxDwB,EAAc73F,KAAKg3F,gBAAkBlwF,EAAMkwF,eAE/C,IAAIh3F,KAAKg2F,UAAW,CAClB,GAAI8B,GAAaL,EAAYG,CAC7B53F,MAAKu+C,MAAQu5C,EAAa93F,KAAKqF,MAC/BrF,KAAKs+C,OAASt+C,KAAKu+C,KAAOo5C,MAErB33F,MAAKg1F,gBAIRh1F,KAAKs+C,QAAUu5C,EAAc73F,KAAKqF,MAClCrF,KAAKu+C,KAAOv+C,KAAKs+C,OAASq5C,IAJ1B33F,KAAKs+C,QAAU24C,EAAYY,EAAc73F,KAAKqF,MAC9CrF,KAAKu+C,KAAOv+C,KAAKs+C,OAASq5C,EAM9B,KAAK33F,KAAK+0F,cAAgB/0F,KAAKu+C,KAAO+4C,EAAS,KAE7CE,IACAnnB,GAAO,MAHT,CAMA,IAAKrwE,KAAKg1F,gBAAkBh1F,KAAKs+C,OAAS+4C,EAAW,KAAS,CAC5D,KAAIr3F,KAAKg2F,WAAaqB,GAAY,GAE3B,CAELG,IACAnnB,GAAO,CACP,UALA94D,QAAQH,KAAK,uDAQbpX,KAAKg1F,gBAAkBh1F,KAAK+0F,cAA2BuC,EAASD,EAApBM,GAC9CJ,IACAlnB,GAAO,GAGTA,GAAO,KAIXztE,EAAUwQ,UAAU4/E,aAAe,SAAU5tF,GAC3C,MAAOpF,MAAKs3E,iBAAmBlyE,EAAQpF,KAAKs+C,QAAUt+C,KAAKqF,OAG7DzC,EAAUwQ,UAAUk6E,cAAgB,SAAUyK,GAC5C,OAAQ/3F,KAAKs3E,gBAAkBygB,GAAU/3F,KAAKqF,MAAQrF,KAAKs+C,QAG7Dz+C,EAAOD,QAAUgD,GAIb,SAAS/C,EAAQD,EAASM,GAsB9B,QAAS2C,GAAWshD,EAAOS,EAAS/gD,EAAS2qF,GAC3CxuF,KAAKK,GAAKukD,CACV,IAAIx0C,IAAU,WAAY,QAAS,OAAQ,mBAAoB,WAAY,aAAc,SAAU,gBAAiB,SAAU,sBAAuB,oBACrJpQ,MAAK6D,QAAUlD,EAAKwP,sBAAsBC,EAAQvM,GAClD7D,KAAKg4F,kBAAwCrxF,SAApBw9C,EAAMj7C,UAC/BlJ,KAAKwuF,yBAA2BA;AAChCxuF,KAAKi4F,aAAe,EACpBj4F,KAAK8gC,OAAOqjB,GACkB,GAA1BnkD,KAAKg4F,oBACPh4F,KAAKwuF,yBAAyB,IAAM,GAEtCxuF,KAAKshD,aACLthD,KAAK8zC,QAA4BntC,SAAlBw9C,EAAMrQ,SAAwB,EAAOqQ,EAAMrQ,QA9B5D,GAAI5vC,GAA4B,kBAAXC,SAAoD,gBAApBA,QAAOC,SAAwB,SAAUC,GAAO,aAAcA,IAAS,SAAUA,GAAO,MAAOA,IAAyB,kBAAXF,SAAyBE,EAAIC,cAAgBH,OAAS,eAAkBE,IAEtO1D,EAAOT,EAAoB,GAE3ByuF,GADUzuF,EAAoB,GACvBA,EAAoB,KAC3B0uF,EAAQ1uF,EAAoB,IAC5B2uF,EAAS3uF,EAAoB,GA+BjC2C,GAAWuQ,UAAU4uC,SAAW,SAAU//C,GAC3B,MAATA,GACFjC,KAAKshD,UAAYr/C,EACQ,GAArBjC,KAAK6D,QAAQoc,MACftf,EAAK8P,WAAWzQ,KAAKshD,UAAW,SAAUh7C,EAAGC,GAC3C,MAAOD,GAAEk4B,EAAIj4B,EAAEi4B,EAAI,EAAI,MAI3Bx+B,KAAKshD,cAITz+C,EAAWuQ,UAAU+pE,SAAW,WAC9B,MAAOn9E,MAAKshD,WAOdz+C,EAAWuQ,UAAU6/E,gBAAkB,SAAU97D,GAC/Cn3B,KAAKi4F,aAAe9gE,GAOtBt0B,EAAWuQ,UAAUwsB,WAAa,SAAU/7B,GAC1C,GAAgB8C,SAAZ9C,EAAuB,CACzB,GAAIuM,IAAU,WAAY,QAAS,OAAQ,mBAAoB,WAAY,SAAU,sBAAuB,oBAC5GzP,GAAK0G,oBAAoB+I,EAAQpQ,KAAK6D,QAASA,GAGd,kBAAtBA,GAAQ8xE,aACjB9xE,EAAQ8xE,YACNC,SAAU/xE,EAAQ8xE,aAItBh1E,EAAKkQ,aAAa7Q,KAAK6D,QAASA,EAAS,iBACzClD,EAAKkQ,aAAa7Q,KAAK6D,QAASA,EAAS,cACzClD,EAAKkQ,aAAa7Q,KAAK6D,QAASA,EAAS,UAErCA,EAAQiqF,eAC4B,UAAlC5pF,EAAQL,EAAQiqF,gBACdjqF,EAAQiqF,cAAcC,kBACqB,WAAzClqF,EAAQiqF,cAAcC,gBACxB/tF,KAAK6D,QAAQiqF,cAAc74B,MAAQ,EACe,WAAzCpxD,EAAQiqF,cAAcC,gBAC/B/tF,KAAK6D,QAAQiqF,cAAc74B,MAAQ,GAEnCj1D,KAAK6D,QAAQiqF,cAAcC,gBAAkB,cAC7C/tF,KAAK6D,QAAQiqF,cAAc74B,MAAQ,OAY/CpyD,EAAWuQ,UAAU0tB,OAAS,SAAUqjB,GACtCnkD,KAAKmkD,MAAQA,EACbnkD,KAAKi/B,QAAUklB,EAAMllB,SAAW,QAChCj/B,KAAKkJ,UAAYi7C,EAAMj7C,WAAalJ,KAAKkJ,WAAa,kBAAoBlJ,KAAKwuF,yBAAyB,GAAK,GAC7GxuF,KAAK8zC,QAA4BntC,SAAlBw9C,EAAMrQ,SAAwB,EAAOqQ,EAAMrQ,QAC1D9zC,KAAKiP,MAAQk1C,EAAMl1C,MACnBjP,KAAK4/B,WAAWukB,EAAMtgD,UAUxBhB,EAAWuQ,UAAU45E,UAAY,SAAUwG,EAAWe,EAAY7F,EAAWlwD,EAAGxc,GAC9E,GAAiBrb,QAAb+nF,GAAuC,MAAbA,EAAmB,CAC/C,GAAID,GAAMzwD,SAASC,gBAAgB,6BAA8B,MACjEywD,IAAcD,IAAKA,EAAKF,eAAiB1qF,QAAS7D,KAAK6D,QAAS47C,QAASz/C,OAQ3E,OANS2G,QAAL63B,GAAuB,MAALA,IACpBA,EAAI,GAEG73B,QAALqb,GAAuB,MAALA,IACpBA,EAAI,GAAMuyE,GAEJv0F,KAAK6D,QAAQoL,OACnB,IAAK,OACH2/E,EAAMsJ,SAASl4F,KAAMw+B,EAAGxc,EAAGwxE,EAAWe,EAAY7F,EAClD,MACF,KAAK,SACL,IAAK,QACHG,EAAOqJ,SAASl4F,KAAMw+B,EAAGxc,EAAGwxE,EAAWe,EAAY7F,EACnD,MACF,KAAK,MACHC,EAAKuJ,SAASl4F,KAAMw+B,EAAGxc,EAAGwxE,EAAWe,EAAY7F,GAGrD,OAASyJ,KAAMzJ,EAAUD,IAAK3vD,MAAO9+B,KAAKi/B,QAAS6gB,YAAa9/C,KAAK6D,QAAQ0pF,mBAG/E1qF,EAAWuQ,UAAUs+E,UAAY,SAAUjU,GAGzC,IAAK,GAFDj2C,GAAOi2C,EAAU,GAAGz7D,EACpB0lB,EAAO+1C,EAAU,GAAGz7D,EACfpR,EAAI,EAAGA,EAAI6sE,EAAU/2E,OAAQkK,IACpC42B,EAAOA,EAAOi2C,EAAU7sE,GAAGoR,EAAIy7D,EAAU7sE,GAAGoR,EAAIwlB,EAChDE,EAAOA,EAAO+1C,EAAU7sE,GAAGoR,EAAIy7D,EAAU7sE,GAAGoR,EAAI0lB,CAElD,QAASziC,IAAKuiC,EAAMtiC,IAAKwiC,EAAM6lD,iBAAkBvtF,KAAK6D,QAAQ0pF,mBAGhE1tF,EAAOD,QAAUiD,GAIb,SAAShD,EAAQD,EAASM,GAO9B,QAASk4F,GAASxzC,EAAS/gD,IAH3B,GAAIjD,GAAUV,EAAoB,GAC9B2uF,EAAS3uF,EAAoB,GAIjCk4F,GAASF,SAAW,SAAU/zC,EAAO3lB,EAAGxc,EAAGwxE,EAAWe,EAAY7F,GAChE,GAAI2J,GAA0B,GAAb9D,EAGb+D,EAAU13F,EAAQi9B,cAAc,OAAQ6wD,EAAUH,YAAaG,EAAUD,IAC7E6J,GAAQ15D,eAAe,KAAM,IAAKJ,GAClC85D,EAAQ15D,eAAe,KAAM,IAAK5c,EAAIq2E,GACtCC,EAAQ15D,eAAe,KAAM,QAAS40D,GACtC8E,EAAQ15D,eAAe,KAAM,SAAU,EAAIy5D,GAC3CC,EAAQ15D,eAAe,KAAM,QAAS,cAEtC,IAAI25D,GAAWjzF,KAAKgkB,MAAM,GAAMkqE,GAC5BgF,EAAgBr0C,EAAMtgD,QAAQ+pF,SAASxuD,MACvC/5B,EAAQmzF,EAAgBD,EACxBE,EAAanzF,KAAKgkB,MAAM,GAAMirE,GAC9BmE,EAAapzF,KAAKgkB,MAAM,IAAOirE,GAE/BhsE,EAASjjB,KAAKgkB,OAAOkqE,EAAY,EAAI+E,GAAY,EAKrD,IAHA33F,EAAQu+B,QAAQX,EAAI,GAAM+5D,EAAWhwE,EAAQvG,EAAIq2E,EAAaI,EAAa,EAAGF,EAAUE,EAAYt0C,EAAMj7C,UAAY,WAAYwlF,EAAUH,YAAaG,EAAUD,IAAKtqC,EAAMl1C,OAC9KrO,EAAQu+B,QAAQX,EAAI,IAAM+5D,EAAWhwE,EAAS,EAAGvG,EAAIq2E,EAAaK,EAAa,EAAGH,EAAUG,EAAYv0C,EAAMj7C,UAAY,WAAYwlF,EAAUH,YAAaG,EAAUD,IAAKtqC,EAAMl1C,OAE1I,GAApCk1C,EAAMtgD,QAAQ8xE,WAAW3kE,QAAiB,CAC5C,GAAIytB,IACFxvB,MAAOk1C,EAAMtgD,QAAQ8xE,WAAW1mE,MAChCD,OAAQm1C,EAAMtgD,QAAQ8xE,WAAW3mE,OACjC6vB,KAAMslB,EAAMtgD,QAAQ8xE,WAAW92C,KAAOx5B,EACtC6D,UAAWi7C,EAAMj7C,UAEnBtI,GAAQ29B,UAAUC,EAAI,GAAM+5D,EAAWhwE,EAAQvG,EAAIq2E,EAAaI,EAAa,EAAGh6D,EAAeiwD,EAAUH,YAAaG,EAAUD,KAChI7tF,EAAQ29B,UAAUC,EAAI,IAAM+5D,EAAWhwE,EAAS,EAAGvG,EAAIq2E,EAAaK,EAAa,EAAGj6D,EAAeiwD,EAAUH,YAAaG,EAAUD,OAUxI2J,EAAS9tC,KAAO,SAAUowB,EAAUie,EAAoBjK,GACtD,GAEIkK,GACA9uF,EAAK+uF,EACL10C,EACAt9C,EAAG+J,EALHkoF,KACAC,KAKAC,EAAY,CAGhB,KAAKnyF,EAAI,EAAGA,EAAI6zE,EAASh0E,OAAQG,IAE/B,GADAs9C,EAAQuqC,EAAUjvC,OAAOi7B,EAAS7zE,IACN,QAAxBs9C,EAAMtgD,QAAQoL,OACZk1C,EAAMrQ,WAAY,IAA8DntC,SAArD+nF,EAAU7qF,QAAQ47C,OAAOk4B,WAAW+C,EAAS7zE,KAAqB6nF,EAAU7qF,QAAQ47C,OAAOk4B,WAAW+C,EAAS7zE,OAAQ,GACpJ,IAAK+J,EAAI,EAAGA,EAAI+nF,EAAmBje,EAAS7zE,IAAIH,OAAQkK,IACtDkoF,EAAanxF,MACXkrF,SAAU8F,EAAmBje,EAAS7zE,IAAI+J,GAAGiiF,SAC7CC,SAAU6F,EAAmBje,EAAS7zE,IAAI+J,GAAGkiF,SAC7Ct0D,EAAGm6D,EAAmBje,EAAS7zE,IAAI+J,GAAG4tB,EACtCxc,EAAG22E,EAAmBje,EAAS7zE,IAAI+J,GAAGoR,EACtC4iC,QAAS81B,EAAS7zE,GAClBi4B,MAAO65D,EAAmBje,EAAS7zE,IAAI+J,GAAGkuB,QAE5Ck6D,GAAa,CAMrB,IAAkB,IAAdA,EAiBJ,IAZAF,EAAa74E,KAAK,SAAU3Z,EAAGC,GAC7B,MAAID,GAAEusF,WAAatsF,EAAEssF,SACZvsF,EAAEs+C,QAAUr+C,EAAEq+C,QAAU,GAAK,EAE7Bt+C,EAAEusF,SAAWtsF,EAAEssF,WAK1BuF,EAASa,sBAAsBF,EAAeD,GAGzCjyF,EAAI,EAAGA,EAAIiyF,EAAapyF,OAAQG,IAAK,CACxCs9C,EAAQuqC,EAAUjvC,OAAOq5C,EAAajyF,GAAG+9C,QACzC,IAAIkvC,GAA8CntF,QAAnCw9C,EAAMtgD,QAAQ+pF,SAASkG,SAAwB3vC,EAAMtgD,QAAQ+pF,SAASkG,SAAW,GAAM3vC,EAAMtgD,QAAQ+pF,SAASxuD,KAE7Ht1B,GAAMgvF,EAAajyF,GAAGgsF,QACtB,IAAIqG,GAAe,CACnB,IAA2BvyF,SAAvBoyF,EAAcjvF,GACZjD,EAAI,EAAIiyF,EAAapyF,SACvBkyF,EAAetzF,KAAK4R,IAAI4hF,EAAajyF,EAAI,GAAGgsF,SAAW/oF,IAEzD+uF,EAAWT,EAASe,iBAAiBP,EAAcz0C,EAAO2vC,OACrD,CACL,GAAI/tB,GAAUl/D,GAAKkyF,EAAcjvF,GAAKsvF,OAASL,EAAcjvF,GAAKuvF,SACpDxyF,IAAKkyF,EAAcjvF,GAAKuvF,SAAW,EAC7CtzB,GAAU+yB,EAAapyF,SACzBkyF,EAAetzF,KAAK4R,IAAI4hF,EAAa/yB,GAAS8sB,SAAW/oF,IAE3D+uF,EAAWT,EAASe,iBAAiBP,EAAcz0C,EAAO2vC,GAC1DiF,EAAcjvF,GAAKuvF,UAAY,EAE3Bl1C,EAAMtgD,QAAQ/B,SAAU,GAAQqiD,EAAMtgD,QAAQ0sF,uBAAwB,EACpEuI,EAAajyF,GAAGisF,SAAW3uC,EAAM8zC,cACnCiB,EAAeH,EAAcjvF,GAAKwvF,oBAClCP,EAAcjvF,GAAKwvF,qBAAuBn1C,EAAM8zC,aAAea,EAAajyF,GAAGisF,WAE/EoG,EAAeH,EAAcjvF,GAAKyvF,oBAClCR,EAAcjvF,GAAKyvF,qBAAuBp1C,EAAM8zC,aAAea,EAAajyF,GAAGisF,UAExE3uC,EAAMtgD,QAAQ+pF,SAASC,cAAe,IAC/CgL,EAASz5D,MAAQy5D,EAASz5D,MAAQ25D,EAAcjvF,GAAKsvF,OACrDP,EAAStwE,QAAUwwE,EAAcjvF,GAAKuvF,SAAWR,EAASz5D,MAAQ,GAAMy5D,EAASz5D,OAAS25D,EAAcjvF,GAAKsvF,OAAS,IAK1H,GAFAx4F,EAAQu+B,QAAQ25D,EAAajyF,GAAGgsF,SAAWgG,EAAStwE,OAAQuwE,EAAajyF,GAAGisF,SAAWoG,EAAcL,EAASz5D,MAAO+kB,EAAM8zC,aAAea,EAAajyF,GAAGisF,SAAU3uC,EAAMj7C,UAAY,WAAYwlF,EAAUH,YAAaG,EAAUD,IAAKtqC,EAAMl1C,OAE1Ok1C,EAAMtgD,QAAQ8xE,WAAW3kE,WAAY,EAAM,CAC7C,GAAIwoF,IACF3G,SAAUiG,EAAajyF,GAAGgsF,SAC1BC,SAAUgG,EAAajyF,GAAGisF,SAAWoG,EACrC16D,EAAGs6D,EAAajyF,GAAG23B,EACnBxc,EAAG82E,EAAajyF,GAAGmb,EACnB4iC,QAASk0C,EAAajyF,GAAG+9C,QACzB9lB,MAAOg6D,EAAajyF,GAAGi4B,MAEzB+vD,GAAOvkC,MAAMkvC,GAAYr1C,EAAOuqC,EAAWmK,EAAStwE,WAY1D6vE,EAASa,sBAAwB,SAAUF,EAAeD,GAGxD,IAAK,GADDF,GACK/xF,EAAI,EAAGA,EAAIiyF,EAAapyF,OAAQG,IACnCA,EAAI,EAAIiyF,EAAapyF,SACvBkyF,EAAetzF,KAAK4R,IAAI4hF,EAAajyF,EAAI,GAAGgsF,SAAWiG,EAAajyF,GAAGgsF,WAErEhsF,EAAI,IACN+xF,EAAetzF,KAAKL,IAAI2zF,EAActzF,KAAK4R,IAAI4hF,EAAajyF,EAAI,GAAGgsF,SAAWiG,EAAajyF,GAAGgsF,YAE3E,IAAjB+F,IAC8CjyF,SAA5CoyF,EAAcD,EAAajyF,GAAGgsF,YAChCkG,EAAcD,EAAajyF,GAAGgsF,WAC5BuG,OAAQ,EACRC,SAAU,EACVE,oBAAqB,EACrBD,oBAAqB,IAGzBP,EAAcD,EAAajyF,GAAGgsF,UAAUuG,QAAU,IAcxDhB,EAASe,iBAAmB,SAAUP,EAAcz0C,EAAO2vC,GACzD,GAAI10D,GAAO7W,CAqBX,OApBIqwE,GAAez0C,EAAMtgD,QAAQ+pF,SAASxuD,OAASw5D,EAAe,GAChEx5D,EAAuB00D,EAAf8E,EAA0B9E,EAAW8E,EAE7CrwE,EAAS,EAC4B,SAAjC47B,EAAMtgD,QAAQ+pF,SAAShV,MACzBrwD,GAAU,GAAMqwE,EAC0B,UAAjCz0C,EAAMtgD,QAAQ+pF,SAAShV,QAChCrwD,GAAU,GAAMqwE,KAIlBx5D,EAAQ+kB,EAAMtgD,QAAQ+pF,SAASxuD,MAC/B7W,EAAS,EAC4B,SAAjC47B,EAAMtgD,QAAQ+pF,SAAShV,MACzBrwD,GAAU,GAAM47B,EAAMtgD,QAAQ+pF,SAASxuD,MACG,UAAjC+kB,EAAMtgD,QAAQ+pF,SAAShV,QAChCrwD,GAAU,GAAM47B,EAAMtgD,QAAQ+pF,SAASxuD,SAIlCA,MAAOA,EAAO7W,OAAQA,IAGjC6vE,EAASzG,iBAAmB,SAAUmH,EAAcjJ,EAAanV,EAAU+e,EAAY35C,GACrF,GAAIg5C,EAAapyF,OAAS,EAAG,CAE3BoyF,EAAa74E,KAAK,SAAU3Z,EAAGC,GAC7B,MAAID,GAAEusF,WAAatsF,EAAEssF,SACZvsF,EAAEs+C,QAAUr+C,EAAEq+C,QAAU,GAAK,EAE7Bt+C,EAAEusF,SAAWtsF,EAAEssF,UAG1B,IAAIkG,KAEJX,GAASa,sBAAsBF,EAAeD,GAC9CjJ,EAAY4J,GAAcrB,EAASsB,kBAAkBX,EAAeD,GACpEjJ,EAAY4J,GAAYlM,iBAAmBztC,EAC3C46B,EAAS/yE,KAAK8xF,KAIlBrB,EAASsB,kBAAoB,SAAUX,EAAeD,GAIpD,IAAK,GAHDhvF,GACA09B,EAAOsxD,EAAa,GAAGhG,SACvBprD,EAAOoxD,EAAa,GAAGhG,SAClBjsF,EAAI,EAAGA,EAAIiyF,EAAapyF,OAAQG,IACvCiD,EAAMgvF,EAAajyF,GAAGgsF,SACKlsF,SAAvBoyF,EAAcjvF,IAChB09B,EAAOA,EAAOsxD,EAAajyF,GAAGisF,SAAWgG,EAAajyF,GAAGisF,SAAWtrD,EACpEE,EAAOA,EAAOoxD,EAAajyF,GAAGisF,SAAWgG,EAAajyF,GAAGisF,SAAWprD,GAEhEoxD,EAAajyF,GAAGisF,SAAW,EAC7BiG,EAAcjvF,GAAKwvF,qBAAuBR,EAAajyF,GAAGisF,SAE1DiG,EAAcjvF,GAAKyvF,qBAAuBT,EAAajyF,GAAGisF,QAIhE,KAAK,GAAI6G,KAAQZ,GACXA,EAAc3yF,eAAeuzF,KAC/BnyD,EAAOA,EAAOuxD,EAAcY,GAAML,oBAAsBP,EAAcY,GAAML,oBAAsB9xD,EAClGA,EAAOA,EAAOuxD,EAAcY,GAAMJ,oBAAsBR,EAAcY,GAAMJ,oBAAsB/xD,EAClGE,EAAOA,EAAOqxD,EAAcY,GAAML,oBAAsBP,EAAcY,GAAML,oBAAsB5xD,EAClGA,EAAOA,EAAOqxD,EAAcY,GAAMJ,oBAAsBR,EAAcY,GAAMJ,oBAAsB7xD,EAItG,QAASziC,IAAKuiC,EAAMtiC,IAAKwiC,IAG3B7nC,EAAOD,QAAUw4F,GAIb,SAASv4F,EAAQD,EAASM,GAQ9B,QAAS2uF,GAAOjqC,EAAS/gD,IA2CzB,QAAS+1F,GAAiBz1C,EAAO01C,GAE/B,MADAA,GAA2C,mBAAnBA,MAAsCA,GAE5D5qF,MAAO4qF,EAAe5qF,OAASk1C,EAAMtgD,QAAQ8xE,WAAW1mE,MACxDD,OAAQ6qF,EAAe7qF,QAAUm1C,EAAMtgD,QAAQ8xE,WAAW3mE,OAC1D6vB,KAAMg7D,EAAeh7D,MAAQslB,EAAMtgD,QAAQ8xE,WAAW92C,KACtD31B,UAAW2wF,EAAe3wF,WAAai7C,EAAMj7C,WAIjD,QAAS4wF,GAAYpL,EAAWvqC,GAC9B,GAAIz6C,GAAW/C,MAUf,OARI+nF,GAAU7qF,SAAW6qF,EAAU7qF,QAAQ8xE,YAAc+Y,EAAU7qF,QAAQ8xE,WAAWC,UAA4D,kBAAzC8Y,GAAU7qF,QAAQ8xE,WAAWC,WACpIlsE,EAAWglF,EAAU7qF,QAAQ8xE,WAAWC,UAItCzxB,EAAMA,MAAMtgD,SAAWsgD,EAAMA,MAAMtgD,QAAQ8xE,YAAcxxB,EAAMA,MAAMtgD,QAAQ8xE,WAAWC,UAA8D,kBAA3CzxB,GAAMA,MAAMtgD,QAAQ8xE,WAAWC,WAC5IlsE,EAAWy6C,EAAMA,MAAMtgD,QAAQ8xE,WAAWC,UAErClsE,EApET,GAAIxF,GAA4B,kBAAXC,SAAoD,gBAApBA,QAAOC,SAAwB,SAAUC,GAAO,aAAcA,IAAS,SAAUA,GAAO,MAAOA,IAAyB,kBAAXF,SAAyBE,EAAIC,cAAgBH,OAAS,eAAkBE,IAEtOzD,EAAUV,EAAoB,EAalC2uF,GAAOvkC,KAAO,SAAUtG,EAASG,EAAOuqC,EAAWnmE,GACjDA,EAASA,GAAU,CAGnB,KAAK,GAFD7e,GAAWowF,EAAYpL,EAAWvqC,GAE7Bt9C,EAAI,EAAGA,EAAIm9C,EAAQt9C,OAAQG,IAClC,GAAK6C,EAGE,CACL,GAAImwF,GAAiBnwF,EAASs6C,EAAQn9C,GAAIs9C,EACtC01C,MAAmB,GAA4F,YAAzD,mBAAnBA,GAAiC,YAAc31F,EAAQ21F,KAC5Fj5F,EAAQ29B,UAAUylB,EAAQn9C,GAAGgsF,SAAWtqE,EAAQy7B,EAAQn9C,GAAGisF,SAAU8G,EAAiBz1C,EAAO01C,GAAiBnL,EAAUH,YAAaG,EAAUD,IAAKzqC,EAAQn9C,GAAGi4B,WAJjKl+B,GAAQ29B,UAAUylB,EAAQn9C,GAAGgsF,SAAWtqE,EAAQy7B,EAAQn9C,GAAGisF,SAAU8G,EAAiBz1C,GAAQuqC,EAAUH,YAAaG,EAAUD,IAAKzqC,EAAQn9C,GAAGi4B,QAUrJ+vD,EAAOqJ,SAAW,SAAU/zC,EAAO3lB,EAAGxc,EAAGwxE,EAAWe,EAAY7F,GAC9D,GAAI2J,GAA0B,GAAb9D,EAGb+D,EAAU13F,EAAQi9B,cAAc,OAAQ6wD,EAAUH,YAAaG,EAAUD,IAC7E6J,GAAQ15D,eAAe,KAAM,IAAKJ,GAClC85D,EAAQ15D,eAAe,KAAM,IAAK5c,EAAIq2E,GACtCC,EAAQ15D,eAAe,KAAM,QAAS40D,GACtC8E,EAAQ15D,eAAe,KAAM,SAAU,EAAIy5D,GAC3CC,EAAQ15D,eAAe,KAAM,QAAS,eAGtCh+B,EAAQ29B,UAAUC,EAAI,GAAMg1D,EAAWxxE,EAAG43E,EAAiBz1C,GAAQuqC,EAAUH,YAAaG,EAAUD,MA2BtG5uF,EAAOD,QAAUivF,GAIb,SAAShvF,EAAQD,EAASM,GAM9B,QAAS65F,GAAKn1C,EAAS/gD,IAFvB,GAAIjD,GAAUV,EAAoB,EAIlC65F,GAAKrJ,SAAW,SAAU1sC,EAASG,GAC/B,GAAe,MAAXH,GACIA,EAAQt9C,OAAS,EAAG,CACpB,GAAIiI,KAQJ,OAJIA,GADuC,GAAvCw1C,EAAMtgD,QAAQiqF,cAAc98E,QACxB+oF,EAAKC,YAAYh2C,EAASG,GAE1B41C,EAAKE,QAAQj2C,KAOjC+1C,EAAK7B,SAAW,SAAU/zC,EAAO3lB,EAAGxc,EAAGwxE,EAAWe,EAAY7F,GAC1D,GACIhnC,GAAMwyC,EADN7B,EAA0B,GAAb9D,EAGb+D,EAAU13F,EAAQi9B,cAAc,OAAQ6wD,EAAUH,YAAaG,EAAUD,IA2B7E,IA1BA6J,EAAQ15D,eAAe,KAAM,IAAKJ,GAClC85D,EAAQ15D,eAAe,KAAM,IAAK5c,EAAIq2E,GACtCC,EAAQ15D,eAAe,KAAM,QAAS40D,GACtC8E,EAAQ15D,eAAe,KAAM,SAAU,EAAIy5D,GAC3CC,EAAQ15D,eAAe,KAAM,QAAS,eAEtC8oB,EAAO9mD,EAAQi9B,cAAc,OAAQ6wD,EAAUH,YAAaG,EAAUD,KACtE/mC,EAAK9oB,eAAe,KAAM,QAASulB,EAAMj7C,WACrBvC,SAAhBw9C,EAAMl1C,OACNy4C,EAAK9oB,eAAe,KAAM,QAASulB,EAAMl1C,OAG7Cy4C,EAAK9oB,eAAe,KAAM,IAAK,IAAMJ,EAAI,IAAMxc,EAAI,MAAQwc,EAAIg1D,GAAa,IAAMxxE,GAC9C,GAAhCmiC,EAAMtgD,QAAQ8pF,OAAO38E,UACrBkpF,EAAWt5F,EAAQi9B,cAAc,OAAQ6wD,EAAUH,YAAaG,EAAUD,KAClC,OAApCtqC,EAAMtgD,QAAQ8pF,OAAO7tC,YACrBo6C,EAASt7D,eAAe,KAAM,IAAK,IAAMJ,EAAI,MAAQxc,EAAIq2E,GAAc,IAAM75D,EAAI,IAAMxc,EAAI,MAAQwc,EAAIg1D,GAAa,IAAMxxE,EAAI,MAAQwc,EAAIg1D,GAAa,KAAOxxE,EAAIq2E,IAElK6B,EAASt7D,eAAe,KAAM,IAAK,IAAMJ,EAAI,IAAMxc,EAAI,KAAYwc,EAAI,KAAOxc,EAAIq2E,GAAc,MAAa75D,EAAIg1D,GAAa,KAAOxxE,EAAIq2E,GAAc,KAAO75D,EAAIg1D,GAAa,IAAMxxE,GAEzLk4E,EAASt7D,eAAe,KAAM,QAASulB,EAAMj7C,UAAY,kBACtBvC,SAA/Bw9C,EAAMtgD,QAAQ8pF,OAAO1+E,OAAsD,KAA/Bk1C,EAAMtgD,QAAQ8pF,OAAO1+E,OACjEirF,EAASt7D,eAAe,KAAM,QAASulB,EAAMtgD,QAAQ8pF,OAAO1+E,QAI5B,GAApCk1C,EAAMtgD,QAAQ8xE,WAAW3kE,QAAiB,CAC1C,GAAIytB,IACAxvB,MAAOk1C,EAAMtgD,QAAQ8xE,WAAW1mE,MAChCD,OAAQm1C,EAAMtgD,QAAQ8xE,WAAW3mE,OACjC6vB,KAAMslB,EAAMtgD,QAAQ8xE,WAAW92C,KAC/B31B,UAAWi7C,EAAMj7C,UAErBtI,GAAQ29B,UAAUC,EAAI,GAAMg1D,EAAWxxE,EAAGyc,EAAeiwD,EAAUH,YAAaG,EAAUD,OAIlGsL,EAAKnJ,YAAc,SAAUuJ,EAAWh2C,EAAOi2C,EAAc1L,GAEzD,GAAoC,GAAhCvqC,EAAMtgD,QAAQ8pF,OAAO38E,QAAiB,CACtC,GAAI+hF,GAAYruF,OAAOgqF,EAAUD,IAAIx/E,MAAMowB,OAAO/yB,QAAQ,KAAM,KAC5D4tF,EAAWt5F,EAAQi9B,cAAc,OAAQ6wD,EAAUH,YAAaG,EAAUD,KAC1E1mF,EAAO,GACgC,IAAvCo8C,EAAMtgD,QAAQiqF,cAAc98E,UAC5BjJ,EAAO,IAEX,IAAIsyF,GACAC,EAAO,CAEPA,GADoC,OAApCn2C,EAAMtgD,QAAQ8pF,OAAO7tC,YACd,EACoC,UAApCqE,EAAMtgD,QAAQ8pF,OAAO7tC,YACrBizC,EAEAztF,KAAKL,IAAIK,KAAKJ,IAAI,EAAGi/C,EAAM8zC,cAAelF,GAGjDsH,EADoC,SAApCl2C,EAAMtgD,QAAQ8pF,OAAO7tC,aAA0C,MAAhBs6C,GAAwCzzF,QAAhByzF,EAC/D,IAAMD,EAAU,GAAG,GAAK,IAAMA,EAAU,GAAG,GAAK,IAAMn6F,KAAKu6F,cAAcJ,EAAWpyF,GAAM,GAAS,KAAOqyF,EAAaA,EAAa1zF,OAAS,GAAG,GAAK,IAAM0zF,EAAaA,EAAa1zF,OAAS,GAAG,GAAK,IAAM1G,KAAKu6F,cAAcH,EAAcryF,GAAM,GAAQqyF,EAAa,GAAG,GAAK,IAAMA,EAAa,GAAG,GAAK,KAE3S,IAAMD,EAAU,GAAG,GAAK,IAAMA,EAAU,GAAG,GAAK,IAAMn6F,KAAKu6F,cAAcJ,EAAWpyF,GAAM,GAAS,KAAOuyF,EAAO,KAAOH,EAAU,GAAG,GAAK,KAGtJD,EAASt7D,eAAe,KAAM,QAASulB,EAAMj7C,UAAY,aACtBvC,SAA/Bw9C,EAAMtgD,QAAQ8pF,OAAO1+E,OACrBirF,EAASt7D,eAAe,KAAM,QAASulB,EAAMtgD,QAAQ8pF,OAAO1+E,OAEhEirF,EAASt7D,eAAe,KAAM,IAAKy7D,KAU3CN,EAAKzvC,KAAO,SAAU6vC,EAAWh2C,EAAOuqC,GACpC,GAAiB,MAAbyL,GAAkCxzF,QAAbwzF,EAAwB,CAC7C,GAAIzyC,GAAO9mD,EAAQi9B,cAAc,OAAQ6wD,EAAUH,YAAaG,EAAUD,IAC1E/mC,GAAK9oB,eAAe,KAAM,QAASulB,EAAMj7C,WACrBvC,SAAhBw9C,EAAMl1C,OACNy4C,EAAK9oB,eAAe,KAAM,QAASulB,EAAMl1C,MAG7C,IAAIlH,GAAO,GACgC,IAAvCo8C,EAAMtgD,QAAQiqF,cAAc98E,UAC5BjJ,EAAO,KAGX2/C,EAAK9oB,eAAe,KAAM,IAAK,IAAMu7D,EAAU,GAAG,GAAK,IAAMA,EAAU,GAAG,GAAK,IAAMn6F,KAAKu6F,cAAcJ,EAAWpyF,GAAM,MAIjIgyF,EAAKQ,cAAgB,SAAUJ,EAAWpyF,EAAMyyF,GAC5C,GAAIL,EAAUzzF,OAAS,EAEnB,MAAO,EAEX,IAAIiI,GAAI5G,CACR,IAAIyyF,EACA,IAAK,GAAI3zF,GAAIszF,EAAUzzF,OAAS,EAAGG,EAAI,EAAGA,IACtC8H,GAAKwrF,EAAUtzF,GAAG,GAAK,IAAMszF,EAAUtzF,GAAG,GAAK,QAGnD,KAAK,GAAIA,GAAI,EAAGA,EAAIszF,EAAUzzF,OAAQG,IAClC8H,GAAKwrF,EAAUtzF,GAAG,GAAK,IAAMszF,EAAUtzF,GAAG,GAAK,GAGvD,OAAO8H,IAUXorF,EAAKU,mBAAqB,SAAUjhF,GAEhC,GAAIkhF,GAAIt9E,EAAIC,EAAIC,EAAIq9E,EAAKC,EACrBjsF,IACJA,GAAEhH,MAAMrC,KAAKgkB,MAAM9P,EAAK,GAAGq5E,UAAWvtF,KAAKgkB,MAAM9P,EAAK,GAAGs5E,WAGzD,KAAK,GAFD+H,GAAgB,EAAI,EACpBn0F,EAAS8S,EAAK9S,OACTG,EAAI,EAAOH,EAAS,EAAbG,EAAgBA,IAE5B6zF,EAAU,GAAL7zF,EAAS2S,EAAK,GAAKA,EAAK3S,EAAI,GACjCuW,EAAK5D,EAAK3S,GACVwW,EAAK7D,EAAK3S,EAAI,GACdyW,EAAa5W,EAARG,EAAI,EAAa2S,EAAK3S,EAAI,GAAKwW,EASpCs9E,GACI9H,WAAY6H,EAAG7H,SAAW,EAAIz1E,EAAGy1E,SAAWx1E,EAAGw1E,UAAYgI,EAC3D/H,WAAY4H,EAAG5H,SAAW,EAAI11E,EAAG01E,SAAWz1E,EAAGy1E,UAAY+H,GAE/DD,GACI/H,UAAWz1E,EAAGy1E,SAAW,EAAIx1E,EAAGw1E,SAAWv1E,EAAGu1E,UAAYgI,EAC1D/H,UAAW11E,EAAG01E,SAAW,EAAIz1E,EAAGy1E,SAAWx1E,EAAGw1E,UAAY+H,GAI9DlsF,EAAEhH,MAAMgzF,EAAI9H,SAAU8H,EAAI7H,WAC1BnkF,EAAEhH,MAAMizF,EAAI/H,SAAU+H,EAAI9H,WAC1BnkF,EAAEhH,MAAM0V,EAAGw1E,SAAUx1E,EAAGy1E,UAG5B,OAAOnkF,IAcXorF,EAAKC,YAAc,SAAUxgF,EAAM2qC,GAC/B,GAAI8Q,GAAQ9Q,EAAMtgD,QAAQiqF,cAAc74B,KACxC,IAAa,GAATA,GAAwBtuD,SAAVsuD,EACd,MAAOj1D,MAAKy6F,mBAAmBjhF,EAE/B,IAAIkhF,GAAIt9E,EAAIC,EAAIC,EAAIq9E,EAAKC,EAAKE,EAAIC,EAAIC,EAAIC,EAAGzlD,EAAG0lD,EAAGj5E,EAC/Ck5E,EAAQC,EAAQC,EAASC,EAASC,EAASC,EAC3C7sF,IACJA,GAAEhH,MAAMrC,KAAKgkB,MAAM9P,EAAK,GAAGq5E,UAAWvtF,KAAKgkB,MAAM9P,EAAK,GAAGs5E,WAEzD,KAAK,GADDpsF,GAAS8S,EAAK9S,OACTG,EAAI,EAAOH,EAAS,EAAbG,EAAgBA,IAE5B6zF,EAAU,GAAL7zF,EAAS2S,EAAK,GAAKA,EAAK3S,EAAI,GACjCuW,EAAK5D,EAAK3S,GACVwW,EAAK7D,EAAK3S,EAAI,GACdyW,EAAa5W,EAARG,EAAI,EAAa2S,EAAK3S,EAAI,GAAKwW,EAEpCy9E,EAAKx1F,KAAK+0C,KAAK/0C,KAAKiW,IAAIm/E,EAAG7H,SAAWz1E,EAAGy1E,SAAU,GAAKvtF,KAAKiW,IAAIm/E,EAAG5H,SAAW11E,EAAG01E,SAAU,IAC5FiI,EAAKz1F,KAAK+0C,KAAK/0C,KAAKiW,IAAI6B,EAAGy1E,SAAWx1E,EAAGw1E,SAAU,GAAKvtF,KAAKiW,IAAI6B,EAAG01E,SAAWz1E,EAAGy1E,SAAU,IAC5FkI,EAAK11F,KAAK+0C,KAAK/0C,KAAKiW,IAAI8B,EAAGw1E,SAAWv1E,EAAGu1E,SAAU,GAAKvtF,KAAKiW,IAAI8B,EAAGy1E,SAAWx1E,EAAGw1E,SAAU,IAY5FqI,EAAS71F,KAAKiW,IAAIy/E,EAAI/lC,GACtBomC,EAAU/1F,KAAKiW,IAAIy/E,EAAI,EAAI/lC,GAC3BmmC,EAAS91F,KAAKiW,IAAIw/E,EAAI9lC,GACtBqmC,EAAUh2F,KAAKiW,IAAIw/E,EAAI,EAAI9lC,GAC3BumC,EAASl2F,KAAKiW,IAAIu/E,EAAI7lC,GACtBsmC,EAAUj2F,KAAKiW,IAAIu/E,EAAI,EAAI7lC,GAE3BgmC,EAAI,EAAIM,EAAU,EAAIC,EAASJ,EAASE,EACxC9lD,EAAI,EAAI6lD,EAAU,EAAIF,EAASC,EAASE,EACxCJ,EAAI,EAAIM,GAAUA,EAASJ,GACvBF,EAAI,IACJA,EAAI,EAAIA,GAEZj5E,EAAI,EAAIk5E,GAAUA,EAASC,GACvBn5E,EAAI,IACJA,EAAI,EAAIA,GAGZ04E,GACI9H,WAAYyI,EAAUZ,EAAG7H,SAAWoI,EAAI79E,EAAGy1E,SAAW0I,EAAUl+E,EAAGw1E,UAAYqI,EAC/EpI,WAAYwI,EAAUZ,EAAG5H,SAAWmI,EAAI79E,EAAG01E,SAAWyI,EAAUl+E,EAAGy1E,UAAYoI,GAGnFN,GACI/H,UAAWwI,EAAUj+E,EAAGy1E,SAAWr9C,EAAIn4B,EAAGw1E,SAAWyI,EAAUh+E,EAAGu1E,UAAY5wE,EAC9E6wE,UAAWuI,EAAUj+E,EAAG01E,SAAWt9C,EAAIn4B,EAAGy1E,SAAWwI,EAAUh+E,EAAGw1E,UAAY7wE,GAG9D,GAAhB04E,EAAI9H,UAAiC,GAAhB8H,EAAI7H,WACzB6H,EAAMv9E,GAEU,GAAhBw9E,EAAI/H,UAAiC,GAAhB+H,EAAI9H,WACzB8H,EAAMv9E,GAEV1O,EAAEhH,MAAMgzF,EAAI9H,SAAU8H,EAAI7H,WAC1BnkF,EAAEhH,MAAMizF,EAAI/H,SAAU+H,EAAI9H,WAC1BnkF,EAAEhH,MAAM0V,EAAGw1E,SAAUx1E,EAAGy1E,UAG5B,OAAOnkF,IAUforF,EAAKE,QAAU,SAAUzgF,GAGrB,IAAK,GADD7K,MACK9H,EAAI,EAAGA,EAAI2S,EAAK9S,OAAQG,IAC7B8H,EAAEhH,MAAM6R,EAAK3S,GAAGgsF,SAAUr5E,EAAK3S,GAAGisF,UAEtC,OAAOnkF,IAGX9O,EAAOD,QAAUm6F,GAIb,SAASl6F,EAAQD,EAASM,GAW9B,QAAS8C,GAAOm9C,EAAMt8C,EAAS43F,EAAMvI,GACnClzF,KAAKmgD,KAAOA,EACZngD,KAAK2/C,gBACH3uC,SAAS,EACTmiF,OAAO,EACPuI,SAAU,GACVC,YAAa,EACb7yF,MACEgrC,SAAS,EACTxE,SAAU,YAEZmD,OACEqB,SAAS,EACTxE,SAAU,cAIdtvC,KAAKy7F,KAAOA,EACZz7F,KAAK6D,QAAUlD,EAAKoG,UAAW/G,KAAK2/C,gBACpC3/C,KAAKkzF,iBAAmBA,EAExBlzF,KAAKuuF,eACLvuF,KAAKw6C,OACLx6C,KAAKy/C,UACLz/C,KAAKm0F,eAAiB,EACtBn0F,KAAKkgD,UACLlgD,KAAK0uF,WAAcD,IAAKzuF,KAAKyuF,IAAKF,YAAavuF,KAAKuuF,YAAa1qF,QAAS7D,KAAK6D,QAAS47C,OAAQz/C,KAAKy/C,QAErGz/C,KAAK4/B,WAAW/7B,GAnClB,GAAIlD,GAAOT,EAAoB,GAC3BU,EAAUV,EAAoB,GAC9BsC,EAAYtC,EAAoB,GAoCpC8C,GAAOoQ,UAAY,GAAI5Q,GAEvBQ,EAAOoQ,UAAUuvB,MAAQ,WACvB3iC,KAAKy/C,UACLz/C,KAAKm0F,eAAiB,GAGxBnxF,EAAOoQ,UAAU87E,SAAW,SAAUpwD,EAAOu1D,GAGG,GAA1CA,EAAaxwF,QAAQ+3F,oBAClB57F,KAAKy/C,OAAOr5C,eAAe04B,KAC9B9+B,KAAKy/C,OAAO3gB,GAASu1D,GAEvBr0F,KAAKm0F,gBAAkB,IAI3BnxF,EAAOoQ,UAAUmmE,YAAc,SAAUz6C,EAAOu1D,GAC9Cr0F,KAAKy/C,OAAO3gB,GAASu1D,GAGvBrxF,EAAOoQ,UAAU47E,YAAc,SAAUlwD,GACnC9+B,KAAKy/C,OAAOr5C,eAAe04B,WACtB9+B,MAAKy/C,OAAO3gB,GACnB9+B,KAAKm0F,gBAAkB,IAI3BnxF,EAAOoQ,UAAU8sC,QAAU,WACzBlgD,KAAKw6C,IAAIpP,MAAQpN,SAASM,cAAc,OACxCt+B,KAAKw6C,IAAIpP,MAAMliC,UAAY,aAC3BlJ,KAAKw6C,IAAIpP,MAAMn8B,MAAMqgC,SAAW,WAChCtvC,KAAKw6C,IAAIpP,MAAMn8B,MAAMjG,IAAM,OAC3BhJ,KAAKw6C,IAAIpP,MAAMn8B,MAAMkmD,QAAU,QAE/Bn1D,KAAKw6C,IAAIqhD,SAAW79D,SAASM,cAAc,OAC3Ct+B,KAAKw6C,IAAIqhD,SAAS3yF,UAAY,kBAC9BlJ,KAAKw6C,IAAIqhD,SAAS5sF,MAAMqgC,SAAW,WACnCtvC,KAAKw6C,IAAIqhD,SAAS5sF,MAAMjG,IAAM,MAE9BhJ,KAAKyuF,IAAMzwD,SAASC,gBAAgB,6BAA8B,OAClEj+B,KAAKyuF,IAAIx/E,MAAMqgC,SAAW,WAC1BtvC,KAAKyuF,IAAIx/E,MAAMjG,IAAM,MACrBhJ,KAAKyuF,IAAIx/E,MAAMmwB,MAAQp/B,KAAK6D,QAAQ63F,SAAW,EAAI,KACnD17F,KAAKyuF,IAAIx/E,MAAMowB,OAAS,OAExBr/B,KAAKw6C,IAAIpP,MAAMlN,YAAYl+B,KAAKyuF,KAChCzuF,KAAKw6C,IAAIpP,MAAMlN,YAAYl+B,KAAKw6C,IAAIqhD,WAMtC74F,EAAOoQ,UAAUyoE,KAAO,WAElB77E,KAAKw6C,IAAIpP,MAAM5/B,YACjBxL,KAAKw6C,IAAIpP,MAAM5/B,WAAWzG,YAAY/E,KAAKw6C,IAAIpP,QAQnDpoC,EAAOoQ,UAAUwwC,KAAO,WAEjB5jD,KAAKw6C,IAAIpP,MAAM5/B,YAClBxL,KAAKmgD,KAAK3F,IAAIvD,OAAO/Y,YAAYl+B,KAAKw6C,IAAIpP,QAI9CpoC,EAAOoQ,UAAUwsB,WAAa,SAAU/7B,GACtC,GAAIuM,IAAU,UAAW,cAAe,QAAS,OAAQ,QACzDzP,GAAK0G,oBAAoB+I,EAAQpQ,KAAK6D,QAASA,IAGjDb,EAAOoQ,UAAUk6B,OAAS,WACxB,GAAIqnD,GAAe,EACfF,EAAaltF,OAAO6H,KAAKpP,KAAKy/C,OAClCg1C,GAAWx0E,KAAK,SAAU3Z,EAAGC,GAC3B,MAAWA,GAAJD,EAAQ,GAAK,GAGtB,KAAK,GAAIO,GAAI,EAAGA,EAAI4tF,EAAW/tF,OAAQG,IAAK,CAC1C,GAAI+9C,GAAU6vC,EAAW5tF,EACW,IAAhC7G,KAAKy/C,OAAOmF,GAAS9Q,SAAkEntC,SAA9C3G,KAAKkzF,iBAAiBvb,WAAW/yB,IAAuE,GAA7C5kD,KAAKkzF,iBAAiBvb,WAAW/yB,IACvI+vC,IAIJ,GAAuC,GAAnC30F,KAAK6D,QAAQ7D,KAAKy7F,MAAM3nD,SAA2C,GAAvB9zC,KAAKm0F,gBAA+C,GAAxBn0F,KAAK6D,QAAQmN,SAAoC,GAAhB2jF,EAC3G30F,KAAK67E,WACA,CAoBL,GAnBA77E,KAAK4jD,OACmC,YAApC5jD,KAAK6D,QAAQ7D,KAAKy7F,MAAMnsD,UAA8D,eAApCtvC,KAAK6D,QAAQ7D,KAAKy7F,MAAMnsD,UAC5EtvC,KAAKw6C,IAAIpP,MAAMn8B,MAAMnG,KAAO,MAC5B9I,KAAKw6C,IAAIpP,MAAMn8B,MAAM0kC,UAAY,OACjC3zC,KAAKw6C,IAAIqhD,SAAS5sF,MAAM0kC,UAAY,OACpC3zC,KAAKw6C,IAAIqhD,SAAS5sF,MAAMnG,KAAO9I,KAAK6D,QAAQ63F,SAAW,GAAK,KAC5D17F,KAAKw6C,IAAIqhD,SAAS5sF,MAAMwjC,MAAQ,GAChCzyC,KAAKyuF,IAAIx/E,MAAMnG,KAAO,MACtB9I,KAAKyuF,IAAIx/E,MAAMwjC,MAAQ,KAEvBzyC,KAAKw6C,IAAIpP,MAAMn8B,MAAMwjC,MAAQ,MAC7BzyC,KAAKw6C,IAAIpP,MAAMn8B,MAAM0kC,UAAY,QACjC3zC,KAAKw6C,IAAIqhD,SAAS5sF,MAAM0kC,UAAY,QACpC3zC,KAAKw6C,IAAIqhD,SAAS5sF,MAAMwjC,MAAQzyC,KAAK6D,QAAQ63F,SAAW,GAAK,KAC7D17F,KAAKw6C,IAAIqhD,SAAS5sF,MAAMnG,KAAO,GAC/B9I,KAAKyuF,IAAIx/E,MAAMwjC,MAAQ,MACvBzyC,KAAKyuF,IAAIx/E,MAAMnG,KAAO,IAGgB,YAApC9I,KAAK6D,QAAQ7D,KAAKy7F,MAAMnsD,UAA8D,aAApCtvC,KAAK6D,QAAQ7D,KAAKy7F,MAAMnsD,SAC5EtvC,KAAKw6C,IAAIpP,MAAMn8B,MAAMjG,IAAM,EAAItE,OAAO1E,KAAKmgD,KAAK3F,IAAIvD,OAAOhoC,MAAMjG,IAAIsD,QAAQ,KAAM,KAAO,KAC1FtM,KAAKw6C,IAAIpP,MAAMn8B,MAAMigC,OAAS,OACzB,CACL,GAAI4sD,GAAmB97F,KAAKmgD,KAAKC,SAASnJ,OAAO5X,OAASr/B,KAAKmgD,KAAKC,SAAS6D,gBAAgB5kB,MAC7Fr/B,MAAKw6C,IAAIpP,MAAMn8B,MAAMigC,OAAS,EAAI4sD,EAAmBp3F,OAAO1E,KAAKmgD,KAAK3F,IAAIvD,OAAOhoC,MAAMjG,IAAIsD,QAAQ,KAAM,KAAO,KAChHtM,KAAKw6C,IAAIpP,MAAMn8B,MAAMjG,IAAM,GAGH,GAAtBhJ,KAAK6D,QAAQsvF,OACfnzF,KAAKw6C,IAAIpP,MAAMn8B,MAAMmwB,MAAQp/B,KAAKw6C,IAAIqhD,SAAShhD,YAAc,GAAK,KAClE76C,KAAKw6C,IAAIqhD,SAAS5sF,MAAMwjC,MAAQ,GAChCzyC,KAAKw6C,IAAIqhD,SAAS5sF,MAAMnG,KAAO,GAC/B9I,KAAKyuF,IAAIx/E,MAAMmwB,MAAQ,QAEvBp/B,KAAKw6C,IAAIpP,MAAMn8B,MAAMmwB,MAAQp/B,KAAK6D,QAAQ63F,SAAW,GAAK17F,KAAKw6C,IAAIqhD,SAAShhD,YAAc,GAAK,KAC/F76C,KAAK+7F,kBAIP,KAAK,GADD98D,GAAU,GACLp4B,EAAI,EAAGA,EAAI4tF,EAAW/tF,OAAQG,IAAK,CAC1C,GAAI+9C,GAAU6vC,EAAW5tF,EACW,IAAhC7G,KAAKy/C,OAAOmF,GAAS9Q,SAAkEntC,SAA9C3G,KAAKkzF,iBAAiBvb,WAAW/yB,IAAuE,GAA7C5kD,KAAKkzF,iBAAiBvb,WAAW/yB,KACvI3lB,GAAWj/B,KAAKy/C,OAAOmF,GAAS3lB,QAAU,UAG9Cj/B,KAAKw6C,IAAIqhD,SAASnsD,UAAYzQ,EAC9Bj/B,KAAKw6C,IAAIqhD,SAAS5sF,MAAM+rC,WAAa,IAAOh7C,KAAK6D,QAAQ63F,SAAW17F,KAAK6D,QAAQ83F,YAAc,OAInG34F,EAAOoQ,UAAU2oF,gBAAkB,WACjC,GAAI/7F,KAAKw6C,IAAIpP,MAAM5/B,WAAY,CAC7B,GAAIipF,GAAaltF,OAAO6H,KAAKpP,KAAKy/C,OAClCg1C,GAAWx0E,KAAK,SAAU3Z,EAAGC,GAC3B,MAAWA,GAAJD,EAAQ,GAAK,IAItB1F,EAAQg9B,cAAc59B,KAAKuuF,YAE3B,IAAI9+C,GAAUvkC,OAAOw7E,iBAAiB1mF,KAAKw6C,IAAIpP,OAAO4wD,WAClDxH,EAAa9vF,OAAO+qC,EAAQnjC,QAAQ,KAAM,KAC1CkyB,EAAIg2D,EACJhB,EAAYxzF,KAAK6D,QAAQ63F,SACzBnH,EAAa,IAAOv0F,KAAK6D,QAAQ63F,SACjC15E,EAAIwyE,EAAa,GAAMD,EAAa,CAExCv0F,MAAKyuF,IAAIx/E,MAAMmwB,MAAQo0D,EAAY,EAAIgB,EAAa,IAEpD,KAAK,GAAI3tF,GAAI,EAAGA,EAAI4tF,EAAW/tF,OAAQG,IAAK,CAC1C,GAAI+9C,GAAU6vC,EAAW5tF,EACW,IAAhC7G,KAAKy/C,OAAOmF,GAAS9Q,SAAkEntC,SAA9C3G,KAAKkzF,iBAAiBvb,WAAW/yB,IAAuE,GAA7C5kD,KAAKkzF,iBAAiBvb,WAAW/yB,KACvI5kD,KAAKy/C,OAAOmF,GAASooC,UAAUwG,EAAWe,EAAYv0F,KAAK0uF,UAAWlwD,EAAGxc,GACzEA,GAAKuyE,EAAav0F,KAAK6D,QAAQ83F,gBAMvC97F,EAAOD,QAAUoD,GAIb,SAASnD,EAAQD,GAIrB2H,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAST,IAAIic,GAAS,SACTorE,EAAU,UACVl2E,EAAS,SACT3M,EAAQ,QACRsV,EAAO,OACPza,EAAS,SACT+1C,EAAM,MACNz2C,EAAS,SACT2oF,EAAM,MAENlpF,GACF0yE,WACEllE,SAAWy7E,UAASA,GACpBrsD,QAAUqsD,UAASA,EAASE,WAAY,YACxC3nD,WAAawV,IAAKA,GAClByyB,UAAYxoE,OAAQA,EAAQgoF,UAASA,EAASE,WAAY,aAI5DY,kBAAoBlsE,QAAS,OAAQ,UACrCmsE,cAAgBnsE,OAAQA,GACxBpB,MAAQwsE,UAASA,GACjBgB,UAAYhB,UAASA,GACrB3qF,OAAS2qF,UAASA,GAClBiB,aAAersE,OAAQA,EAAQ9K,OAAQA,GACvCo3E,QACE38E,SAAWy7E,UAASA,GACpB3sC,aAAez+B,QAAS,SAAU,MAAO,OAAQ,UACjDujC,SAAWngD,OAAQA,GACnBwoE,UAAYwf,UAASA,EAAShoF,OAAQA,IAExCwK,OAASoS,QAAS,OAAQ,MAAO,WACjCusE,UACExuD,OAAS7oB,OAAQA,GACjBu9E,UAAYv9E,OAAQA,GACpBs3E,YAAcpB,UAASA,GACvB7T,OAASv3D,QAAS,OAAQ,SAAU,UACpC4rD,UAAYxoE,OAAQA,IAEtBqpF,eACE98E,SAAWy7E,UAASA,GACpBsB,iBAAmB1sE,QAAS,cAAe,UAAW,YACtD4zC,OAAS1+C,OAAQA,GACjB02D,UAAYxoE,OAAQA,EAAQgoF,UAASA,IAEvC9W,YACE3kE,SAAWy7E,UAASA,GACpB7W,UAAY+W,WAAY,YACxB9tD,MAAQtoB,OAAQA,GAChBtH,OAASoS,QAAS,SAAU,WAC5B4rD,UAAYxoE,OAAQA,EAAQgoF,UAASA,EAASE,WAAY,aAE5DqB,UACE3F,iBAAmBoE,UAASA,GAC5BnE,iBAAmBmE,UAASA,GAC5B0G,OAAS1G,UAASA,GAClBrtD,OAAS/d,OAAQA,EAAQ9K,OAAQA,GACjCu9B,SAAW24C,UAASA,GACpBgH,YAAchH,UAASA,GACvB3jF,MACEo4C,OAASj8C,KAAOsR,OAAQA,GAAUrR,KAAOqR,OAAQA,GAAU02D,UAAYxoE,OAAQA,IAC/E+O,QAAUm5E,WAAY,YACtBhW,OAASliC,MAAQpzB,OAAQA,EAAQ9K,OAAQA,GAAUtH,OAASoS,OAAQA,GAAU4rD,UAAYxoE,OAAQA,IAClGwoE,UAAYxoE,OAAQA,IAEtBguC,OACEyO,OAASj8C,KAAOsR,OAAQA,GAAUrR,KAAOqR,OAAQA,GAAU02D,UAAYxoE,OAAQA,IAC/E+O,QAAUm5E,WAAY,YACtBhW,OAASliC,MAAQpzB,OAAQA,EAAQ9K,OAAQA,GAAUtH,OAASoS,OAAQA,GAAU4rD,UAAYxoE,OAAQA,IAClGwoE,UAAYxoE,OAAQA,IAEtBwoE,UAAYxoE,OAAQA,IAEtBwpF,QACEj9E,SAAWy7E,UAASA,GACpB0G,OAAS1G,UAASA,GAClB3jF,MACEgrC,SAAW24C,UAASA,GACpBn9C,UAAYjuB,QAAS,YAAa,eAAgB,WAAY,gBAC9D4rD,UAAYxoE,OAAQA,IAEtBguC,OACEqB,SAAW24C,UAASA,GACpBn9C,UAAYjuB,QAAS,YAAa,eAAgB,WAAY,gBAC9D4rD,UAAYxoE,OAAQA,IAEtBwoE,UAAYxoE,OAAQA,EAAQgoF,UAASA,IAEvChtC,QACEk4B,YAAc+U,IAAKA,GACnBzf,UAAYxoE,OAAQA,IAGtBm7C,YAAc6sC,UAASA,GACvB5sC,gBAAkBtpC,OAAQA,GAC1Bs/D,YAAc4W,UAASA,GACvB/4C,KAAOn9B,OAAQA,EAAQ2I,KAAMA,EAAMmC,OAAQA,EAAQtd,OAAQA,GAC3DyP,QACEkuE,aACE76D,aAAexF,OAAQA,EAAQ1a,UAAa,aAC5CigB,QAAUvF,OAAQA,EAAQ1a,UAAa,aACvCggB,QAAUtF,OAAQA,EAAQ1a,UAAa,aACvCmf,MAAQzE,OAAQA,EAAQ1a,UAAa,aACrCwc,SAAW9B,OAAQA,EAAQ1a,UAAa,aACxC+f,KAAOrF,OAAQA,EAAQ1a,UAAa,aACpCqX,OAASqD,OAAQA,EAAQ1a,UAAa,aACtCoX,MAAQsD,OAAQA,EAAQ1a,UAAa,aACrCsmE,UAAYxoE,OAAQA,IAEtBk9E,aACE96D,aAAexF,OAAQA,EAAQ1a,UAAa,aAC5CigB,QAAUvF,OAAQA,EAAQ1a,UAAa,aACvCggB,QAAUtF,OAAQA,EAAQ1a,UAAa,aACvCmf,MAAQzE,OAAQA,EAAQ1a,UAAa,aACrCwc,SAAW9B,OAAQA,EAAQ1a,UAAa,aACxC+f,KAAOrF,OAAQA,EAAQ1a,UAAa,aACpCqX,OAASqD,OAAQA,EAAQ1a,UAAa,aACtCoX,MAAQsD,OAAQA,EAAQ1a,UAAa,aACrCsmE,UAAYxoE,OAAQA,IAEtBwoE,UAAYxoE,OAAQA,IAEtBV,QAAU4oF,WAAY,YACtBttD,QAAUhe,OAAQA,EAAQ9K,OAAQA,GAClCgqC,aACE/M,OAASt0B,KAAMA,EAAM3I,OAAQA,EAAQ8K,OAAQA,EAAQtd,OAAQA,GAC7D2vC,KAAOx0B,KAAMA,EAAM3I,OAAQA,EAAQ8K,OAAQA,EAAQtd,OAAQA,GAC3DuuE,QAAUjxD,OAAQA,GAClB4rD,UAAYxoE,OAAQA,EAAQmF,MAAOA,IAErC6J,QAAU4N,OAAQA,GAClBnI,SACE6zD,SAAW2f,IAAKA,GAChBzf,UAAYxoE,OAAQA,IAEtBS,KAAOga,KAAMA,EAAM3I,OAAQA,EAAQ8K,OAAQA,EAAQtd,OAAQA,GAC3Di8C,WAAazpC,OAAQA,EAAQ8K,OAAQA,GACrCknE,eAAiBhyE,OAAQA,GACzBtR,KAAOia,KAAMA,EAAM3I,OAAQA,EAAQ8K,OAAQA,EAAQtd,OAAQA,GAC3Dk8C,WAAa1pC,OAAQA,EAAQ8K,OAAQA,GACrCutD,UAAY6d,UAASA,GACrBtT,aAAesT,UAASA,GACxB3sC,aAAez+B,OAAQA,GACvBkrE,iBAAmBE,UAASA,GAC5BnE,iBAAmBmE,UAASA,GAC5BpE,iBAAmBoE,UAASA,GAC5Bj5C,OAASt0B,KAAMA,EAAM3I,OAAQA,EAAQ8K,OAAQA,EAAQtd,OAAQA,GAC7D08C,UACEp7C,OAASgc,OAAQA,EAAQ1a,UAAa,aACtC4sC,MAAQh9B,OAAQA,EAAQ5P,UAAa,aACrCsmE,UAAYxoE,OAAQA,IAEtB26B,OAAS/d,OAAQA,EAAQ9K,OAAQA,GACjCs4D,UAAY4d,UAASA,GACrBlb,SAAWlwD,QAAS,UAAW,SAAU,UAAW,KACpD0tD,SAAWx4D,OAAQA,GACnBu4D,SAAWv4D,OAAQA,GACnBo5E,QAAUp5E,OAAQA,GAClB02D,UAAYxoE,OAAQA,IAGlB89C,GACFxvC,QAEEkN,MAAM,EACNwtE,UAAU,EACV3rF,OAAO,EACP6rF,QACE38E,SAAS,EACT8uC,aAAc,OAAQ,MAAO,SAAU,UAEzC7wC,OAAQ,OAAQ,MAAO,UACvB2+E,UACExuD,OAAQ,GAAI,EAAG,IAAK,GACpB00D,UAAW,GAAI,EAAG,IAAK,GACvBjG,YAAY,EACZjV,OAAQ,OAAQ,SAAU,UAE5BkV,eACE98E,SAAS,EACT+8E,iBAAkB,cAAe,UAAW,YAE9CpY,YACE3kE,SAAS,EACT6tB,MAAO,EAAG,EAAG,GAAI,GACjB5vB,OAAQ,SAAU,WAEpB++E,UACE3F,iBAAiB,EACjBC,iBAAiB,EACjB6K,OAAO,EACP/zD,OAAQ,GAAI,EAAG,IAAK,GACpB0U,SAAS,EACT2/C,YAAY,EACZ3qF,MAGE6tE,OAASliC,KAAM,GAAIxlC,MAAO,KAE5BwjC,OAGEkkC,OAASliC,KAAM,GAAIxlC,MAAO,MAG9Bg/E,QACEj9E,SAAS,EACTmiF,OAAO,EACPrqF,MACEgrC,SAAS,EACTxE,UAAW,YAAa,eAAgB,WAAY,gBAEtDmD,OACEqB,SAAS,EACTxE,UAAW,YAAa,eAAgB,WAAY,iBAIxDsQ,YAAY,EACZC,gBAAiB,GAAI,EAAG,IAAM,IAC9Bg2B,YAAY,EACZniC,IAAK,GACLlgC,QACEkuE,aACE76D,YAAa,MACbD,OAAQ,IACRD,OAAQ,QACRb,KAAM,QACN3C,QAAS,QACTuD,IAAK,IACL1I,MAAO,MACPD,KAAM,QAER4jE,aACE96D,YAAa,WACbD,OAAQ,eACRD,OAAQ,aACRb,KAAM,aACN3C,QAAS,YACTuD,IAAK,YACL1I,MAAO,OACPD,KAAM,KAIVshB,OAAQ,GACR5rB,OAAQ,GACRvO,IAAK,GACL86C,UAAW,GACXuoC,eAAgB,EAAG,EAAG,GAAI,GAC1BtjF,IAAK,GACLg7C,UAAW,GACX2uB,UAAU,EACV9uB,aAAc,OAAQ,SAAU,OAChCysC,iBAAiB,EACjBjE,iBAAiB,EACjBD,iBAAiB,EACjB70C,MAAO,GACPpU,MAAO,OACPyvC,UAAU,EACV0C,SAAU,UAAW,SAAU,UAAW,IAC1CxC,SAAU,SAAiB,GAAI,SAAiB,GAChDD,SAAU,GAAI,GAAI,SAAiB,GACnC6gB,OAAQ,GAIZ/vF,GAAQ4D,WAAaA,EACrB5D,EAAQ2iD,iBAAmBA,GAIvB,SAAS1iD,EAAQD,EAASM,GAsE9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAyBvF,QAASlB,GAAQ6hC,EAAWxrB,EAAM3V,GAChC,GAAIs/C,GAAQnjD,IAEZ,MAAMA,eAAgBmD,IACpB,KAAM,IAAI8hC,aAAY,mDAIxBjlC,MAAK6D,WACL7D,KAAK2/C,gBACHlsC,OAAQ,KACRyF,QAASA,EACT28D,YAAY,GAEdl1E,EAAKoG,OAAO/G,KAAK6D,QAAS7D,KAAK2/C,gBAG/B3/C,KAAKmgD,MACHnb,UAAWA,EACXi3D,SACAC,eACAC,SACAC,eACA/7C,SACErgB,GAAIhgC,KAAKggC,GAAGsgB,KAAKtgD,MACjBmgC,IAAKngC,KAAKmgC,IAAImgB,KAAKtgD,MACnBy4C,KAAMz4C,KAAKy4C,KAAK6H,KAAKtgD,MACrBq7C,KAAMr7C,KAAKq7C,KAAKiF,KAAKtgD,OAEvBq8F,gBACEC,MAAO,aACP1kC,QAAS,aACT2kC,YAAa,aACbC,OAAQ,aACRC,YAAa,aACbC,OAAQ,aACRC,UAAW,aACXloB,aAAc,aACdmoB,QAAS,aACTC,YAAa,aACbxwB,UAAW,aACXywB,UAAW,cAEbtjF,MACEyiF,MAAO,KACPE,MAAO,MAETY,WACEC,WAAY,aACZC,WAAY,aACZztB,WAAY,cAEdvvE,WACAi9F,MACE73F,MAAO,EACPkkC,aAAe/K,EAAG,EAAGxc,EAAG,KAK5BhiB,KAAKm9F,qBAGLn9F,KAAKo9F,OAAS,GAAIC,GAAAA,WAAiB,WACjC,MAAOl6C,GAAMhD,KAAKE,QAAQ5H,KAAK,oBAEjCz4C,KAAKy/C,OAAS,GAAI69C,GAAAA,WAClBt9F,KAAKqrC,OAAS,GAAIkyD,GAAAA,WAAiBv9F,KAAKmgD,MACxCngD,KAAKw9F,iBAAmB,GAAIC,GAAAA,WAA2Bz9F,KAAKmgD,KAAMngD,KAAKqrC,QACvErrC,KAAK09F,mBAAqB,GAAIC,GAAAA,WAA6B39F,KAAKmgD,KAAMngD,KAAKqrC,OAAQrrC,KAAKw9F,kBACxFx9F,KAAKk9F,KAAO,GAAIU,GAAAA,WAAe59F,KAAKmgD,KAAMngD,KAAKqrC,QAC/CrrC,KAAK69F,SAAW,GAAIC,GAAAA,WAAyB99F,KAAKmgD,KAAMngD,KAAKqrC,QAC7DrrC,KAAKuqD,QAAU,GAAIwzC,GAAAA,WAAwB/9F,KAAKmgD,MAChDngD,KAAKg+F,aAAe,GAAIC,GAAAA,WAAuBj+F,KAAKmgD,MACpDngD,KAAKk+F,WAAa,GAAIC,GAAAA,WAAqBn+F,KAAKmgD,MAChDngD,KAAKo+F,aAAe,GAAIC,GAAAA,WAA6Br+F,KAAKmgD,KAAMngD,KAAKqrC,OAAQrrC,KAAKw9F,kBAElFx9F,KAAKs+F,aAAe,GAAIC,GAAAA,WAAuBv+F,KAAKmgD,KAAMngD,KAAKo9F,OAAQp9F,KAAKy/C,OAAQz/C,KAAKg+F,cACzFh+F,KAAKw+F,aAAe,GAAIC,GAAAA,WAAuBz+F,KAAKmgD,KAAMngD,KAAKo9F,OAAQp9F,KAAKy/C,QAE5Ez/C,KAAKmgD,KAAKlgD,QAAqB,YAAI,GAAIy+F,GAAAA,WAAsB1+F,KAAKmgD,KAAM,IAAK,KAC7EngD,KAAKmgD,KAAKlgD,QAAoB,WAAID,KAAKk+F,WAGvCl+F,KAAKqrC,OAAO6U,UAGZlgD,KAAK4/B,WAAW/7B,GAGhB7D,KAAKqkC,QAAQ7qB,GArLf,GAAImlF,GAAUz+F,EAAoB,IAE9Bm9F,EAAW/9C,EAAuBq/C,GAElCC,EAAU1+F,EAAoB,IAE9Bo9F,EAAWh+C,EAAuBs/C,GAElCC,EAAgB3+F,EAAoB,IAEpCq+F,EAAiBj/C,EAAuBu/C,GAExCC,EAAgB5+F,EAAoB,IAEpCu+F,EAAiBn/C,EAAuBw/C,GAExCC,EAAiB7+F,EAAoB,IAErC69F,EAAkBz+C,EAAuBy/C,GAEzCC,EAAc9+F,EAAoB,IAElCi+F,EAAe7+C,EAAuB0/C,GAEtCC,EAAkB/+F,EAAoB,KAEtC49F,EAAmBx+C,EAAuB2/C,GAE1CC,EAAUh/F,EAAoB,KAE9Bq9F,EAAWj+C,EAAuB4/C,GAElCC,EAAQj/F,EAAoB,KAE5B09F,EAASt+C,EAAuB6/C,GAEhCC,EAAsBl/F,EAAoB,KAE1Cy9F,EAAuBr+C,EAAuB8/C,GAE9CC,EAAoBn/F,EAAoB,KAExCu9F,EAAqBn+C,EAAuB+/C,GAE5CC,EAAgBp/F,EAAoB,KAEpC+9F,EAAiB3+C,EAAuBggD,GAExCC,EAAsBr/F,EAAoB,KAE1Cm+F,EAAuB/+C,EAAuBigD,GAE9Cr9C,EAAgBhiD,EAAoB,IAEpCiiD,EAAiB7C,EAAuB4C,GAExCE,EAAaliD,EAAoB,IAEjCmiD,EAAc/C,EAAuB8C,GAErC7iB,EAAWr/B,EAAoB,KAE/Bs/F,EAAet/F,EAAoB,KAEnCw+F,EAAgBp/C,EAAuBkgD,EAK3Ct/F,GAAoB,IAEpB,IAAI4oC,GAAU5oC,EAAoB,IAC9BS,EAAOT,EAAoB,GAG3BoD,GAFUpD,EAAoB,GACnBA,EAAoB,IACnBA,EAAoB,MAChCqD,EAAcrD,EAAoB,KAClCs0E,EAAYt0E,EAAoB,IAChCgZ,EAAUhZ,EAAoB,IA2GlC4oC,GAAQ3lC,EAAQiQ,WAMhBjQ,EAAQiQ,UAAUwsB,WAAa,SAAU/7B,GACvC,GAAI+jD,GAAS5nD,IAEb,IAAgB2G,SAAZ9C,EAAuB,CACzB,GAAI8+C,GAAaN,EAAAA,WAAoBO,SAAS/+C,EAAS07B,EAAS/7B,WAC5Dm/C,MAAe,GACjBprC,QAAQwnC,IAAI,2DAA4DqD,EAAWE,WAIrF,IAAIlyC,IAAU,SAAU,UAAW,aAoCnC,IAnCAzP,EAAK0G,oBAAoB+I,EAAQpQ,KAAK6D,QAASA,GAG/CA,EAAU7D,KAAKg+F,aAAap+D,WAAW/7B,EAAQ47F,OAAQ57F,GAEvD7D,KAAKqrC,OAAOzL,WAAW/7B,GAGvB7D,KAAKy/C,OAAO7f,WAAW/7B,EAAQ47C,QAC/Bz/C,KAAKs+F,aAAa1+D,WAAW/7B,EAAQo4F,OACrCj8F,KAAKw+F,aAAa5+D,WAAW/7B,EAAQs4F,OACrCn8F,KAAKuqD,QAAQ3qB,WAAW/7B,EAAQ0mD,SAChCvqD,KAAKo+F,aAAax+D,WAAW/7B,EAAQu6F,aAAcv6F,EAAS7D,KAAK6D,SAEjE7D,KAAK09F,mBAAmB99D,WAAW/7B,EAAQ67F,aAC3C1/F,KAAK69F,SAASj+D,WAAW/7B,EAAQ67F,aACjC1/F,KAAKw9F,iBAAiB59D,WAAW/7B,EAAQ67F,aAGlB/4F,SAAnB9C,EAAQ47C,QACVz/C,KAAKmgD,KAAKE,QAAQ5H,KAAK,gBAMrB,aAAe50C,KACZ7D,KAAKi2E,eACRj2E,KAAKi2E,aAAe,GAAI9zB,GAAAA,WAAuBniD,KAAMA,KAAKmgD,KAAKnb,UAAWzF,EAASgjB,iBAAkBviD,KAAKqrC,OAAO4a,aAGnHjmD,KAAKi2E,aAAar2C,WAAW/7B,EAAQqyE,YAInCl2E,KAAKi2E,cAAgBj2E,KAAKi2E,aAAapyE,QAAQmN,WAAY,EAAM,CACnE,GAAI2uF,IAAmB1D,SAAWE,SAAWsD,UAAYC,eAAiBtB,gBAAkB7zC,WAAax3C,UACzGpS,GAAK6G,WAAWm4F,EAAe1D,MAAOj8F,KAAKs+F,aAAaz6F,SACxDlD,EAAK6G,WAAWm4F,EAAexD,MAAOn8F,KAAKw+F,aAAa36F,SACxDlD,EAAK6G,WAAWm4F,EAAeF,OAAQz/F,KAAKg+F,aAAan6F,SAEzDlD,EAAK6G,WAAWm4F,EAAeD,YAAa1/F,KAAKw9F,iBAAiB35F,SAClElD,EAAK6G,WAAWm4F,EAAeD,YAAa1/F,KAAK69F,SAASh6F,SAE1DlD,EAAK6G,WAAWm4F,EAAeD,YAAa1/F,KAAK09F,mBAAmB75F,SACpElD,EAAK6G,WAAWm4F,EAAevB,aAAcp+F,KAAKo+F,aAAav6F,SAC/DlD,EAAK6G,WAAWm4F,EAAep1C,QAASvqD,KAAKuqD,QAAQ1mD,SAGrDlD,EAAK6G,WAAWm4F,EAAe5sF,OAAQ/S,KAAKqrC,OAAOxnC,SACnDlD,EAAK6G,WAAWm4F,EAAe5sF,OAAQ/S,KAAK6D,SAE5C7D,KAAKi2E,aAAaG,iBAAiBupB,GAIVh5F,SAAvB9C,EAAQgyE,WACNhyE,EAAQgyE,cAAe,EACFlvE,SAAnB3G,KAAK81E,YACP91E,KAAK81E,UAAY,GAAItB,GAAUx0E,KAAKqrC,OAAOD,OAC3CprC,KAAK81E,UAAU91C,GAAG,SAAU,WAC1B4nB,EAAOzH,KAAKE,QAAQ5H,KAAK,gBAIN9xC,SAAnB3G,KAAK81E,YACP91E,KAAK81E,UAAU/1C,gBACR//B,MAAK81E,WAEd91E,KAAKmgD,KAAKE,QAAQ5H,KAAK,aAGzBz4C,KAAKmgD,KAAKE,QAAQ5H,KAAK,YAGzBz4C,KAAKqrC,OAAO+E,UAEZpwC,KAAKmgD,KAAKE,QAAQ5H,KAAK,qBAQ3Bt1C,EAAQiQ,UAAUwsF,sBAAwB,WACxC,GAAI3D,GAAQj8F,KAAKmgD,KAAK87C,MAClBE,EAAQn8F,KAAKmgD,KAAKg8C,KACtBn8F,MAAKmgD,KAAK+7C,eACVl8F,KAAKmgD,KAAKi8C,cAEV,KAAK,GAAIyD,KAAU5D,GACbA,EAAM71F,eAAey5F,IACnB5D,EAAM4D,GAAQh8F,QAAQqvE,UAAW,GACnClzE,KAAKmgD,KAAK+7C,YAAYv0F,KAAKs0F,EAAM4D,GAAQx/F,GAK/C,KAAK,GAAIy/F,KAAU3D,GACbA,EAAM/1F,eAAe05F,IACnB3D,EAAM2D,GAAQj8F,QAAQqvE,UAAW,GACnClzE,KAAKmgD,KAAKi8C,YAAYz0F,KAAKw0F,EAAM2D,GAAQz/F,KASjD8C,EAAQiQ,UAAU+pF,mBAAqB,WACrC,GAAIt0C,GAAS7oD,IAGbA,MAAKmgD,KAAKE,QAAQrgB,GAAG,eAAgB,WAEnC6oB,EAAO+2C,wBACP/2C,EAAO1I,KAAKE,QAAQ5H,KAAK,kBAEzBoQ,EAAO1I,KAAKE,QAAQ5H,KAAK,kBAI3Bz4C,KAAKmgD,KAAKE,QAAQrgB,GAAG,eAAgB,WAEnC6oB,EAAOk3C,kBAAkBl3C,EAAO1I,KAAK87C,OACrCpzC,EAAOk3C,kBAAkBl3C,EAAO1I,KAAKg8C,OAErCtzC,EAAO1I,KAAKE,QAAQ5H,KAAK,mBACzBoQ,EAAO1I,KAAKE,QAAQ5H,KAAK,qBAc7Bt1C,EAAQiQ,UAAUixB,QAAU,SAAU7qB,GAQpC,GANAxZ,KAAKmgD,KAAKE,QAAQ5H,KAAK,gBACvBz4C,KAAKmgD,KAAKE,QAAQ5H,KAAK,cAGvBz4C,KAAKw9F,iBAAiBwC,cAElBxmF,GAAQA,EAAK+gC,MAAQ/gC,EAAKyiF,OAASziF,EAAK2iF,OAC1C,KAAM,IAAIl3D,aAAY,iGAMxB,IAFAjlC,KAAK4/B,WAAWpmB,GAAQA,EAAK3V,SAEzB2V,GAAQA,EAAK+gC,IAAK,CACpBhjC,QAAQwnC,IAAI,4PAEZ,IAAIkhD,GAAU38F,EAAUK,WAAW6V,EAAK+gC,IAExC,YADAv6C,MAAKqkC,QAAQ47D,GAER,GAAIzmF,GAAQA,EAAK0mF,MAAO,CAE7B3oF,QAAQwnC,IAAI,oQACZ,IAAIohD,GAAY58F,EAAYO,WAAW0V,EAAK0mF,MAE5C,YADAlgG,MAAKqkC,QAAQ87D,GAGbngG,KAAKs+F,aAAaj6D,QAAQ7qB,GAAQA,EAAKyiF,OAAO,GAC9Cj8F,KAAKw+F,aAAan6D,QAAQ7qB,GAAQA,EAAK2iF,OAAO,GAIhDn8F,KAAKmgD,KAAKE,QAAQ5H,KAAK,gBAGvBz4C,KAAKmgD,KAAKE,QAAQ5H,KAAK,eAGvBz4C,KAAKmgD,KAAKE,QAAQ5H,KAAK,gBASzBt1C,EAAQiQ,UAAU2sB,QAAU,WAC1B//B,KAAKmgD,KAAKE,QAAQ5H,KAAK,WAEvBz4C,KAAKmgD,KAAKE,QAAQlgB,MAClBngC,KAAKmgC,YAGEngC,MAAKy/C,aACLz/C,MAAKqrC,aACLrrC,MAAKw9F,uBACLx9F,MAAK09F,yBACL19F,MAAKk9F,WACLl9F,MAAK69F,eACL79F,MAAKuqD,cACLvqD,MAAKg+F,mBACLh+F,MAAKk+F,iBACLl+F,MAAKo+F,mBACLp+F,MAAKs+F,mBACLt+F,MAAKw+F,mBACLx+F,MAAKi2E,mBACLj2E,MAAKo9F,MAEZ,KAAK,GAAIyC,KAAU7/F,MAAKmgD,KAAK87C,YACpBj8F,MAAKmgD,KAAK87C,MAAM4D,EAEzB,KAAK,GAAIC,KAAU9/F,MAAKmgD,KAAKg8C,YACpBn8F,MAAKmgD,KAAKg8C,MAAM2D,EAIzBn/F,GAAKgE,mBAAmB3E,KAAKmgD,KAAKnb,YAWpC7hC,EAAQiQ,UAAU2sF,kBAAoB,SAAU17F,GAC9C,GAAIhE,GAGAynC,EAAWnhC,OACXohC,EAAWphC,OACXy5F,EAAa,CACjB,KAAK//F,IAAMgE,GACT,GAAIA,EAAI+B,eAAe/F,GAAK,CAC1B,GAAI+E,GAAQf,EAAIhE,GAAIw8C,UACNl2C,UAAVvB,IACF0iC,EAAwBnhC,SAAbmhC,EAAyB1iC,EAAQE,KAAKL,IAAIG,EAAO0iC,GAC5DC,EAAwBphC,SAAbohC,EAAyB3iC,EAAQE,KAAKJ,IAAIE,EAAO2iC,GAC5Dq4D,GAAch7F,GAMpB,GAAiBuB,SAAbmhC,GAAuCnhC,SAAbohC,EAC5B,IAAK1nC,IAAMgE,GACLA,EAAI+B,eAAe/F,IACrBgE,EAAIhE,GAAIggG,cAAcv4D,EAAUC,EAAUq4D,IAUlDj9F,EAAQiQ,UAAUshE,SAAW,WAC3B,OAAQ10E,KAAK81E,WAAa91E,KAAK81E,UAAUQ,QAG3CnzE,EAAQiQ,UAAUg9B,QAAU,WAC1B,MAAOpwC,MAAKqrC,OAAO+E,QAAQl9B,MAAMlT,KAAKqrC,OAAQ5kC,YAEhDtD,EAAQiQ,UAAUktF,YAAc,WAC9B,MAAOtgG,MAAKqrC,OAAOi1D,YAAYptF,MAAMlT,KAAKqrC,OAAQ5kC,YAEpDtD,EAAQiQ,UAAUmtF,YAAc,WAC9B,MAAOvgG,MAAKqrC,OAAOk1D,YAAYrtF,MAAMlT,KAAKqrC,OAAQ5kC,YAEpDtD,EAAQiQ,UAAUotF,SAAW,WAC3B,MAAOxgG,MAAKk+F,WAAWsC,SAASttF,MAAMlT,KAAKk+F,WAAYz3F,YAEzDtD,EAAQiQ,UAAUqtF,UAAY,WAC5B,MAAOzgG,MAAKk+F,WAAWuC,UAAUvtF,MAAMlT,KAAKk+F,WAAYz3F,YAE1DtD,EAAQiQ,UAAUstF,YAAc,WAC9B,MAAO1gG,MAAKk+F,WAAWwC,YAAYxtF,MAAMlT,KAAKk+F,WAAYz3F,YAE5DtD,EAAQiQ,UAAUutF,QAAU,WAC1B,MAAO3gG,MAAKk+F,WAAWyC,QAAQztF,MAAMlT,KAAKk+F,WAAYz3F,YAExDtD,EAAQiQ,UAAUwtF,kBAAoB,WACpC,MAAO5gG,MAAKk+F,WAAW0C,kBAAkB1tF,MAAMlT,KAAKk+F,WAAYz3F,YAElEtD,EAAQiQ,UAAUytF,oBAAsB,WACtC,MAAO7gG,MAAKk+F,WAAW2C,oBAAoB3tF,MAAMlT,KAAKk+F,WAAYz3F,YAEpEtD,EAAQiQ,UAAU0tF,iBAAmB,WACnC,MAAO9gG,MAAKk+F,WAAW4C,iBAAiB5tF,MAAMlT,KAAKk+F,WAAYz3F,YAEjEtD,EAAQiQ,UAAU2tF,gBAAkB,WAClC,MAAO/gG,MAAKk+F,WAAW6C,gBAAgB7tF,MAAMlT,KAAKk+F,WAAYz3F,YAEhEtD,EAAQiQ,UAAU4tF,QAAU,WAC1B,MAAOhhG,MAAKg+F,aAAagD,QAAQ9tF,MAAMlT,KAAKg+F,aAAcv3F,YAE5DtD,EAAQiQ,UAAU6tF,eAAiB,WACjC,MAAOjhG,MAAKo+F,aAAa6C,eAAe/tF,MAAMlT,KAAKo+F,aAAc33F,YAEnEtD,EAAQiQ,UAAU8tF,gBAAkB,WAClC,MAAOlhG,MAAKo+F,aAAa8C,gBAAgBhuF,MAAMlT,KAAKo+F,aAAc33F,YAEpEtD,EAAQiQ,UAAU+tF,YAAc,WAC9B,MAAOnhG,MAAKo+F,aAAa+C,YAAYjuF,MAAMlT,KAAKo+F,aAAc33F,YAEhEtD,EAAQiQ,UAAUguF,SAAW,WAC3B,MAAOphG,MAAKo+F,aAAagD,SAASluF,MAAMlT,KAAKo+F,aAAc33F,YAE7DtD,EAAQiQ,UAAUiuF,aAAe,WACyC,MAAxE9pF,SAAQwnC,IAAI,4DAAmE/+C,KAAKo+F,aAAagD,SAASluF,MAAMlT,KAAKo+F,aAAc33F,YAErItD,EAAQiQ,UAAUkuF,YAAc,WAC9B,MAAOthG,MAAKo+F,aAAakD,YAAYpuF,MAAMlT,KAAKo+F,aAAc33F,YAEhEtD,EAAQiQ,UAAUmuF,aAAe,WAC/B,MAAOvhG,MAAKo+F,aAAamD,aAAaruF,MAAMlT,KAAKo+F,aAAc33F,YAEjEtD,EAAQiQ,UAAUouF,eAAiB,WACjC,MAAOxhG,MAAKo+F,aAAaoD,eAAetuF,MAAMlT,KAAKo+F,aAAc33F,YAEnEtD,EAAQiQ,UAAUquF,aAAe,WAC/B,MAAOzhG,MAAKs+F,aAAamD,aAAavuF,MAAMlT,KAAKs+F,aAAc73F,YAEjEtD,EAAQiQ,UAAUsuF,eAAiB,WACjC,MAAO1hG,MAAKs+F,aAAaoD,eAAexuF,MAAMlT,KAAKs+F,aAAc73F,YAEnEtD,EAAQiQ,UAAUuuF,SAAW,WAC3B,MAAO3hG,MAAKs+F,aAAaqD,SAASzuF,MAAMlT,KAAKs+F,aAAc73F,YAE7DtD,EAAQiQ,UAAUwuF,eAAiB,WACjC,MAAO5hG,MAAKs+F,aAAasD,eAAe1uF,MAAMlT,KAAKs+F,aAAc73F,YAEnEtD,EAAQiQ,UAAUyuF,kBAAoB,SAAUC,GAC9C,MAAkCn7F,UAA9B3G,KAAKmgD,KAAK87C,MAAM6F,GACX9hG,KAAKs+F,aAAauD,kBAAkB3uF,MAAMlT,KAAKs+F,aAAc73F,WAE7DzG,KAAKw+F,aAAaqD,kBAAkB3uF,MAAMlT,KAAKw+F,aAAc/3F;EAGxEtD,EAAQiQ,UAAU2uF,kBAAoB,WACpC,MAAO/hG,MAAKs+F,aAAayD,kBAAkB7uF,MAAMlT,KAAKs+F,aAAc73F,YAEtEtD,EAAQiQ,UAAU4uF,gBAAkB,WAClC,MAAOhiG,MAAKuqD,QAAQy3C,gBAAgB9uF,MAAMlT,KAAKuqD,QAAS9jD,YAE1DtD,EAAQiQ,UAAU6uF,eAAiB,WACjC,MAAOjiG,MAAKuqD,QAAQ03C,eAAe/uF,MAAMlT,KAAKuqD,QAAS9jD,YAEzDtD,EAAQiQ,UAAU8uF,UAAY,WAC5B,MAAOliG,MAAKuqD,QAAQ23C,UAAUhvF,MAAMlT,KAAKuqD,QAAS9jD,YAEpDtD,EAAQiQ,UAAU0vC,aAAe,WAC/B,MAAO9iD,MAAKw9F,iBAAiB16C,aAAa5vC,MAAMlT,KAAKw9F,iBAAkB/2F,YAEzEtD,EAAQiQ,UAAU2vC,aAAe,WAC/B,MAAO/iD,MAAKw9F,iBAAiBz6C,aAAa7vC,MAAMlT,KAAKw9F,iBAAkB/2F,YAEzEtD,EAAQiQ,UAAU+uF,iBAAmB,WACnC,MAAOniG,MAAKw9F,iBAAiB2E,iBAAiBjvF,MAAMlT,KAAKw9F,iBAAkB/2F,YAE7EtD,EAAQiQ,UAAUgvF,iBAAmB,WACnC,MAAOpiG,MAAKw9F,iBAAiB4E,iBAAiBlvF,MAAMlT,KAAKw9F,iBAAkB/2F,YAE7EtD,EAAQiQ,UAAUivF,UAAY,WAC5B,GAAI7lE,GAAOx8B,KAAKw9F,iBAAiB6E,UAAUnvF,MAAMlT,KAAKw9F,iBAAkB/2F,UACxE,OAAaE,UAAT61B,GAAkC71B,SAAZ61B,EAAKn8B,GACtBm8B,EAAKn8B,GAEPm8B,GAETr5B,EAAQiQ,UAAUkvF,UAAY,WAC5B,GAAIC,GAAOviG,KAAKw9F,iBAAiB8E,UAAUpvF,MAAMlT,KAAKw9F,iBAAkB/2F,UACxE,OAAaE,UAAT47F,GAAkC57F,SAAZ47F,EAAKliG,GACtBkiG,EAAKliG,GAEPkiG,GAETp/F,EAAQiQ,UAAUovF,YAAc,WAC9B,MAAOxiG,MAAKw9F,iBAAiBgF,YAAYtvF,MAAMlT,KAAKw9F,iBAAkB/2F,YAExEtD,EAAQiQ,UAAUqvF,YAAc,WAC9B,MAAOziG,MAAKw9F,iBAAiBiF,YAAYvvF,MAAMlT,KAAKw9F,iBAAkB/2F,YAExEtD,EAAQiQ,UAAU4sF,YAAc,WAC9BhgG,KAAKw9F,iBAAiBwC,YAAY9sF,MAAMlT,KAAKw9F,iBAAkB/2F,WAC/DzG,KAAKstC,UAEPnqC,EAAQiQ,UAAUk6B,OAAS,WACzB,MAAOttC,MAAK69F,SAASvwD,OAAOp6B,MAAMlT,KAAK69F,SAAUp3F,YAEnDtD,EAAQiQ,UAAUotC,SAAW,WAC3B,MAAOxgD,MAAKk9F,KAAK18C,SAASttC,MAAMlT,KAAKk9F,KAAMz2F,YAE7CtD,EAAQiQ,UAAUsvF,gBAAkB,WAClC,MAAO1iG,MAAKk9F,KAAKwF,gBAAgBxvF,MAAMlT,KAAKk9F,KAAMz2F,YAEpDtD,EAAQiQ,UAAU0uC,IAAM,WACtB,MAAO9hD,MAAKk9F,KAAKp7C,IAAI5uC,MAAMlT,KAAKk9F,KAAMz2F,YAExCtD,EAAQiQ,UAAU6/B,OAAS,WACzB,MAAOjzC,MAAKk9F,KAAKjqD,OAAO//B,MAAMlT,KAAKk9F,KAAMz2F,YAE3CtD,EAAQiQ,UAAU6vC,MAAQ,WACxB,MAAOjjD,MAAKk9F,KAAKj6C,MAAM/vC,MAAMlT,KAAKk9F,KAAMz2F,YAE1CtD,EAAQiQ,UAAUuvF,YAAc,WAC9B,MAAO3iG,MAAKk9F,KAAKyF,YAAYzvF,MAAMlT,KAAKk9F,KAAMz2F,YAEhDtD,EAAQiQ,UAAUwvF,2BAA6B,WAC7C,GAAI/+F,KAIJ,OAHI7D,MAAKi2E,eACPpyE,EAAU7D,KAAKi2E,aAAa9qB,WAAWj4C,MAAMlT,KAAKi2E,eAE7CpyE,GAGThE,EAAOD,QAAUuD,GAIb,SAAStD,EAAQD,GAUrB,QAASolD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCANhHC,OAAO49C,eAAevlD,EAAS,cAC3BwF,OAAO,GAGX,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAS5hB7hD,EAAS,WACT,QAASA,GAAOqG,GACZs7C,EAAgBhlD,KAAMqD,GAEtBrD,KAAKo9F,UACLp9F,KAAK6iG,eACL7iG,KAAK0J,SAAWA,EAoGpB,MA3FA07C,GAAa/hD,IACTyG,IAAK,mBACL1E,MAAO,SAA0B09F,EAAKC,GAEP,IAAvBA,EAAa3jE,QACbpB,SAASmiB,KAAKjiB,YAAY6kE,GAC1BA,EAAa3jE,MAAQ2jE,EAAaloD,YAClCkoD,EAAa1jE,OAAS0jE,EAAahoD,aACnC/c,SAASmiB,KAAKp7C,YAAYg+F,IAG9B/iG,KAAKo9F,OAAO0F,GAAOC,KAUvBj5F,IAAK,oBACL1E,MAAO,SAA2B09F,EAAKE,EAAWC,GAC9C,GAAI9/C,GAAQnjD,IAGA2G,UAARm8F,GAAmCn8F,SAAdq8F,GAAsDr8F,SAA3Bs8F,IAGpDA,EAAuBC,QAAU,WAC7B3rF,QAAQqzC,MAAM,8BAA+Bo4C,GAE7C7/C,EAAMggD,iBAAiBL,EAAK,GAAIM,SAIpCH,EAAuBtnC,IAAMqnC,MAQjCl5F,IAAK,mBACL1E,MAAO,SAA0Bi+F,GACzBrjG,KAAK0J,UACL1J,KAAK0J,SAAS25F,MAWtBv5F,IAAK,OACL1E,MAAO,SAAc09F,EAAKE,EAAW3iG,GACjC,GAAIunD,GAAS5nD,KAGTsjG,EAActjG,KAAKo9F,OAAO0F,EAC9B,IAAIQ,EAAa,MAAOA,EAGxB,IAAIC,GAAM,GAAIH,MAoBd,OAjBAG,GAAIC,OAAS,WAET57C,EAAOu7C,iBAAiBL,EAAKS,GAC7B37C,EAAO67C,iBAAiBF,IAI5BA,EAAIL,QAAU,WACV3rF,QAAQqzC,MAAM,wBAAyBk4C,GAEvCl7C,EAAO87C,kBAAkBZ,EAAKE,EAAWO,IAI7CA,EAAI5nC,IAAMmnC,EAGHS,MAIRlgG,IAGXzD,GAAAA,WAAkByD,GAId,SAASxD,EAAQD,EAASM,GAU9B,QAAS8kD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCANhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI5hBvkD,EAAOT,EAAoB,GAO3ByjG,EAAS,WACX,QAASA,KACP3+C,EAAgBhlD,KAAM2jG,GAEtB3jG,KAAK2iC,QACL3iC,KAAK4jG,aAAe,EACpB5jG,KAAK6jG,eACL7jG,KAAK4+E,WAAa,EAElB5+E,KAAK8jG,gBAAmBz1F,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,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,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,aAG7IpO,KAAK6D,WACL7D,KAAK2/C,gBACHokD,kBAAkB,GAEpBpjG,EAAKoG,OAAO/G,KAAK6D,QAAS7D,KAAK2/C,gBAgFjC,MA7EAyF,GAAau+C,IACX75F,IAAK,aACL1E,MAAO,SAAoBvB,GACzB,GAAImgG,IAAgB,mBAEpB,IAAgBr9F,SAAZ9C,EACF,IAAK,GAAIogG,KAAapgG,GACpB,GAAIA,EAAQuC,eAAe69F,IACe,KAApCD,EAAat8F,QAAQu8F,GAAmB,CAC1C,GAAI9/C,GAAQtgD,EAAQogG,EACpBjkG,MAAKgnB,IAAIi9E,EAAW9/C,OAY9Br6C,IAAK,QACL1E,MAAO,WACLpF,KAAKy/C,UACLz/C,KAAK6jG,kBAWP/5F,IAAK,MACL1E,MAAO,SAAa8+F,GAClB,GAAI//C,GAAQnkD,KAAKy/C,OAAOykD,EACxB,IAAcv9F,SAAVw9C,EACF,GAAInkD,KAAK6D,QAAQkgG,oBAAqB,GAAS/jG,KAAK6jG,YAAYn9F,OAAS,EAAG,CAE1E,GAAI6C,GAAQvJ,KAAK4+E,WAAa5+E,KAAK6jG,YAAYn9F,MAC/C1G,MAAK4+E,aACLz6B,KACAA,EAAMv3C,MAAQ5M,KAAKy/C,OAAOz/C,KAAK6jG,YAAYt6F,IAC3CvJ,KAAKy/C,OAAOykD,GAAa//C,MACpB,CAEL,GAAIggD,GAASnkG,KAAK4jG,aAAe5jG,KAAK8jG,cAAcp9F,MACpD1G,MAAK4jG,eACLz/C,KACAA,EAAMv3C,MAAQ5M,KAAK8jG,cAAcK,GACjCnkG,KAAKy/C,OAAOykD,GAAa//C,EAI7B,MAAOA,MAYTr6C,IAAK,MACL1E,MAAO,SAAa6+F,EAAWh1F,GAG7B,MAFAjP,MAAKy/C,OAAOwkD,GAAah1F,EACzBjP,KAAK6jG,YAAYl8F,KAAKs8F,GACfh1F,MAIJ00F,IAGT/jG,GAAAA,WAAkB+jG,GAId,SAAS9jG,EAAQD,EAASM,GAkB9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAhBhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBk/C,EAAQlkG,EAAoB,IAE5BmkG,EAAS/kD,EAAuB8kD,GAEhCE,EAASpkG,EAAoB,IAE7BqkG,EAAUjlD,EAAuBglD,GAMjC3jG,EAAOT,EAAoB,GAC3BW,EAAUX,EAAoB,GAC9BY,EAAWZ,EAAoB,IAE/BskG,EAAe,WACjB,QAASA,GAAarkD,EAAMi9C,EAAQ39C,EAAQu+C,GAC1C,GAAI76C,GAAQnjD,IAEZglD,GAAgBhlD,KAAMwkG,GAEtBxkG,KAAKmgD,KAAOA,EACZngD,KAAKo9F,OAASA,EACdp9F,KAAKy/C,OAASA,EACdz/C,KAAKg+F,aAAeA,EAGpBh+F,KAAKmgD,KAAK48C,UAAUC,WAAah9F,KAAKuQ,OAAO+vC,KAAKtgD,MAElDA,KAAKykG,gBACHz9E,IAAK,SAAa/b,EAAOs1B,GACvB4iB,EAAMn8B,IAAIuZ,EAAOt+B,QAEnB6+B,OAAQ,SAAgB71B,EAAOs1B,GAC7B4iB,EAAMriB,OAAOP,EAAOt+B,MAAOs+B,EAAO/mB,OAEpC+oB,OAAQ,SAAgBt3B,EAAOs1B,GAC7B4iB,EAAM5gB,OAAOhC,EAAOt+B,SAIxBjC,KAAK6D,WACL7D,KAAK2/C,gBACHhU,YAAa,EACb+4D,oBAAqB,EACrBC,YAAah+F,OACbiG,OACEyB,OAAQ,UACRD,WAAY,UACZE,WACED,OAAQ,UACRD,WAAY,WAEdG,OACEF,OAAQ,UACRD,WAAY,YAGhBw2F,OACEpmE,GAAG,EACHxc,GAAG,GAEL2wB,MACE/lC,MAAO,UACPiyB,KAAM,GACNgmE,KAAM,QACNz2F,WAAY,OACZm6B,YAAa,EACbu8D,YAAa,UACblsB,MAAO,UAETz0B,MAAOx9C,OACPusE,QAAQ,EACRilB,MACE0M,KAAM,cACNxrF,KAAM1S,OACNk4B,KAAM,GACNjyB,MAAO,WAETm4F,MAAOp+F,OACPm4B,MAAOn4B,OACPq+F,oBAAoB,EACpBC,MAAOt+F,OACPu+F,KAAM,EACN36C,SAAS,EACT46C,SACElgG,IAAK,GACLC,IAAK,GACL45B,OACE9tB,SAAS,EACT/L,IAAK,GACLC,IAAK,GACLkgG,WAAY,GACZC,cAAe,GAEjBC,sBAAuB,SAA+BrgG,EAAKC,EAAKC,EAAOC,GACrE,GAAIF,IAAQD,EACV,MAAO,EAEP,IAAII,GAAQ,GAAKH,EAAMD,EACvB,OAAOK,MAAKJ,IAAI,GAAIE,EAAQH,GAAOI,KAIzCkgG,QACEv0F,SAAS,EACTpE,MAAO,kBACPiyB,KAAM,GACNL,EAAG,EACHxc,EAAG,GAELwjF,MAAO,UACPC,iBACEC,cAAc,EACdjrD,aAAc,EACdqzC,eAAe,EACf6X,cAAc,EACdC,oBAAoB,GAEtB/mE,KAAM,GACN83C,MAAOhwE,OACPvB,MAAOuB,OACP63B,EAAG73B,OACHqb,EAAGrb,QAELhG,EAAKoG,OAAO/G,KAAK6D,QAAS7D,KAAK2/C,gBAE/B3/C,KAAKm9F,qBA4XP,MAzXA/3C,GAAao/C,IACX16F,IAAK,qBACL1E,MAAO,WACL,GAAIwiD,GAAS5nD,IAGbA,MAAKmgD,KAAKE,QAAQrgB,GAAG,eAAgBhgC,KAAKskC,QAAQgc,KAAKtgD,OACvDA,KAAKmgD,KAAKE,QAAQrgB,GAAG,UAAWhgC,KAAKskC,QAAQgc,KAAKtgD,OAClDA,KAAKmgD,KAAKE,QAAQrgB,GAAG,UAAW,WAC9Br/B,EAAK8I,QAAQm+C,EAAO68C,eAAgB,SAAU/6F,EAAUuB,GAClD28C,EAAOzH,KAAK3mC,KAAKyiF,OAAOr0C,EAAOzH,KAAK3mC,KAAKyiF,MAAM97D,IAAIl1B,EAAOvB,WAEzDk+C,GAAOzH,KAAK48C,UAAUC,iBACtBp1C,GAAO68C,eAAez9E,UACtB4gC,GAAO68C,eAAe3jE,aACtB8mB,GAAO68C,eAAeliE,aACtBqlB,GAAO68C,oBAIlB36F,IAAK,aACL1E,MAAO,SAAoBvB,GACzB,GAAgB8C,SAAZ9C,EAAuB,CAIzB,GAHAwgG,EAAAA,WAAewB,aAAa7lG,KAAK6D,QAASA,GAGpB8C,SAAlB9C,EAAQ2hG,MACV,IAAK,GAAI3F,KAAU7/F,MAAKmgD,KAAK87C,MACvBj8F,KAAKmgD,KAAK87C,MAAM71F,eAAey5F,IACjC7/F,KAAKmgD,KAAK87C,MAAM4D,GAAQiG,aAM9B,IAAqBn/F,SAAjB9C,EAAQ8uC,KAAoB,CAC9B4xD,EAAAA,WAAgBsB,aAAa7lG,KAAK6D,QAAQ8uC,KAAM9uC,EAChD,KAAK,GAAI44B,KAAWz8B,MAAKmgD,KAAK87C,MACxBj8F,KAAKmgD,KAAK87C,MAAM71F,eAAeq2B,KACjCz8B,KAAKmgD,KAAK87C,MAAMx/D,GAASspE,oBACzB/lG,KAAKmgD,KAAK87C,MAAMx/D,GAASupE,UAM/B,GAAqBr/F,SAAjB9C,EAAQg7B,KACV,IAAK,GAAIonE,KAAYjmG,MAAKmgD,KAAK87C,MACzBj8F,KAAKmgD,KAAK87C,MAAM71F,eAAe6/F,IACjCjmG,KAAKmgD,KAAK87C,MAAMgK,GAAUD,QAMTr/F,UAAnB9C,EAAQqvE,QAA4CvsE,SAApB9C,EAAQ0mD,SAC1CvqD,KAAKmgD,KAAKE,QAAQ5H,KAAK,oBAY7B3uC,IAAK,UACL1E,MAAO,SAAiB62F,GACtB,GAAIpzC,GAAS7oD,KAETkmG,EAAYz/F,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpF0/F,EAAenmG,KAAKmgD,KAAK3mC,KAAKyiF,KAElC,IAAIA,YAAiBp7F,IAAWo7F,YAAiBn7F,GAC/Cd,KAAKmgD,KAAK3mC,KAAKyiF,MAAQA,MAClB,IAAI/0F,MAAMC,QAAQ80F,GACvBj8F,KAAKmgD,KAAK3mC,KAAKyiF,MAAQ,GAAIp7F,GAC3Bb,KAAKmgD,KAAK3mC,KAAKyiF,MAAMj1E,IAAIi1E,OACpB,CAAA,GAAKA,EAGV,KAAM,IAAI30F,WAAU,4BAFpBtH,MAAKmgD,KAAK3mC,KAAKyiF,MAAQ,GAAIp7F,GAKzBslG,GAEFxlG,EAAK8I,QAAQzJ,KAAKykG,eAAgB,SAAU/6F,EAAUuB,GACpDk7F,EAAahmE,IAAIl1B,EAAOvB,KAK5B1J,KAAKmgD,KAAK87C,SAENj8F,KAAKmgD,KAAK3mC,KAAKyiF,QACjB,WAEE,GAAIr7D,GAAKioB,CACTloD,GAAK8I,QAAQo/C,EAAO47C,eAAgB,SAAU/6F,EAAUuB,GACtD21B,EAAGuf,KAAK3mC,KAAKyiF,MAAMj8D,GAAG/0B,EAAOvB,IAI/B,IAAI23B,GAAMwnB,EAAO1I,KAAK3mC,KAAKyiF,MAAMj6D,QACjC6mB,GAAO7hC,IAAIqa,GAAK,MAIhB6kE,KAAc,GAChBlmG,KAAKmgD,KAAKE,QAAQ5H,KAAK,mBAW3B3uC,IAAK,MACL1E,MAAO,SAAai8B,GAKlB,IAAK,GAJD6kE,GAAYz/F,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpFpG,EAAK,OACL+lG,KACKv/F,EAAI,EAAGA,EAAIw6B,EAAI36B,OAAQG,IAAK,CACnCxG,EAAKghC,EAAIx6B,EACT,IAAI8zD,GAAa36D,KAAKmgD,KAAK3mC,KAAKyiF,MAAMrkE,IAAIv3B,GACtCm8B,EAAOx8B,KAAKuQ,OAAOoqD,EACvByrC,GAASz+F,KAAK60B,GACdx8B,KAAKmgD,KAAK87C,MAAM57F,GAAMm8B,EAGxBx8B,KAAKg+F,aAAaqI,kBAAkBD,GAEhCF,KAAc,GAChBlmG,KAAKmgD,KAAKE,QAAQ5H,KAAK,mBAW3B3uC,IAAK,SACL1E,MAAO,SAAgBi8B,EAAKilE,GAG1B,IAAK,GAFDrK,GAAQj8F,KAAKmgD,KAAK87C,MAClBsK,GAAc,EACT1/F,EAAI,EAAGA,EAAIw6B,EAAI36B,OAAQG,IAAK,CACnC,GAAIxG,GAAKghC,EAAIx6B,GACT21B,EAAOy/D,EAAM57F,GACbmZ,EAAO8sF,EAAYz/F,EACVF,UAAT61B,EAEF+pE,EAAc/pE,EAAKoD,WAAWpmB,IAE9B+sF,GAAc,EAEd/pE,EAAOx8B,KAAKuQ,OAAOiJ,GACnByiF,EAAM57F,GAAMm8B,GAGZ+pE,KAAgB,EAClBvmG,KAAKmgD,KAAKE,QAAQ5H,KAAK,gBAEvBz4C,KAAKmgD,KAAKE,QAAQ5H,KAAK,mBAW3B3uC,IAAK,SACL1E,MAAO,SAAgBi8B,GAGrB,IAAK,GAFD46D,GAAQj8F,KAAKmgD,KAAK87C,MAEbp1F,EAAI,EAAGA,EAAIw6B,EAAI36B,OAAQG,IAAK,CACnC,GAAIxG,GAAKghC,EAAIx6B,SACNo1F,GAAM57F,GAGfL,KAAKmgD,KAAKE,QAAQ5H,KAAK,mBAUzB3uC,IAAK,SACL1E,MAAO,SAAgBu1D,GACrB,GAAI6rC,GAAmB//F,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB49F,EAAAA,WAAiB59F,UAAU,EAExG,OAAO,IAAI+/F,GAAiB7rC,EAAY36D,KAAKmgD,KAAMngD,KAAKo9F,OAAQp9F,KAAKy/C,OAAQz/C,KAAK6D,YAGpFiG,IAAK,UACL1E,MAAO,WACL,GAAIqhG,GAAiBhgG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEzFw1F,EAAQj8F,KAAKmgD,KAAK87C,KACtB,KAAK,GAAI4D,KAAU5D,GAAO,CACxB,GAAIz/D,GAAO71B,MACPs1F,GAAM71F,eAAey5F,KACvBrjE,EAAOy/D,EAAM4D,GAEf,IAAIrmF,GAAOxZ,KAAKmgD,KAAK3mC,KAAKyiF,MAAM7zE,MAAMy3E,EACzBl5F,UAAT61B,GAA+B71B,SAAT6S,IACpBitF,KAAmB,GACrBjqE,EAAKoD,YAAapB,EAAG,KAAMxc,EAAG,OAEhCwa,EAAKoD,YAAaglE,OAAO,IACzBpoE,EAAKoD,WAAWpmB,QAYtB1P,IAAK,eACL1E,MAAO,SAAsBi8B,GAC3B,GAAIqlE,KACJ,IAAY//F,SAAR06B,GACF,GAAIn6B,MAAMC,QAAQk6B,MAAS,GACzB,IAAK,GAAIx6B,GAAI,EAAGA,EAAIw6B,EAAI36B,OAAQG,IAC9B,GAAgCF,SAA5B3G,KAAKmgD,KAAK87C,MAAM56D,EAAIx6B,IAAmB,CACzC,GAAI21B,GAAOx8B,KAAKmgD,KAAK87C,MAAM56D,EAAIx6B,GAC/B6/F,GAAUrlE,EAAIx6B,KAAQ23B,EAAGl5B,KAAKgkB,MAAMkT,EAAKgC,GAAIxc,EAAG1c,KAAKgkB,MAAMkT,EAAKxa,SAIpE,IAA6Brb,SAAzB3G,KAAKmgD,KAAK87C,MAAM56D,GAAoB,CACtC,GAAIslE,GAAQ3mG,KAAKmgD,KAAK87C,MAAM56D,EAC5BqlE,GAAUrlE,IAAS7C,EAAGl5B,KAAKgkB,MAAMq9E,EAAMnoE,GAAIxc,EAAG1c,KAAKgkB,MAAMq9E,EAAM3kF,SAInE,KAAK,GAAItM,GAAK,EAAGA,EAAK1V,KAAKmgD,KAAK+7C,YAAYx1F,OAAQgP,IAAM,CACxD,GAAIkxF,GAAS5mG,KAAKmgD,KAAK87C,MAAMj8F,KAAKmgD,KAAK+7C,YAAYxmF,GACnDgxF,GAAU1mG,KAAKmgD,KAAK+7C,YAAYxmF,KAAS8oB,EAAGl5B,KAAKgkB,MAAMs9E,EAAOpoE,GAAIxc,EAAG1c,KAAKgkB,MAAMs9E,EAAO5kF,IAG3F,MAAO0kF,MAQT58F,IAAK,iBACL1E,MAAO,WAEL,GAAIshG,MACA1iD,EAAUhkD,KAAKmgD,KAAK3mC,KAAKyiF,MAAMh6D,YAEnC,KAAK,GAAI49D,KAAU77C,GAAQ57B,MACzB,GAAI47B,EAAQ57B,MAAMhiB,eAAey5F,GAAS,CACxC,GAAIrjE,GAAOx8B,KAAKmgD,KAAK87C,MAAM4D,EACvB77C,GAAQ57B,MAAMy3E,GAAQrhE,GAAKl5B,KAAKgkB,MAAMkT,EAAKgC,IAAMwlB,EAAQ57B,MAAMy3E,GAAQ79E,GAAK1c,KAAKgkB,MAAMkT,EAAKxa,IAC9F0kF,EAAU/+F,MAAOtH,GAAIm8B,EAAKn8B,GAAIm+B,EAAGl5B,KAAKgkB,MAAMkT,EAAKgC,GAAIxc,EAAG1c,KAAKgkB,MAAMkT,EAAKxa,KAI9EgiC,EAAQljB,OAAO4lE,MAUjB58F,IAAK,iBACL1E,MAAO,SAAwBy6F,GAC7B,MAAgCl5F,UAA5B3G,KAAKmgD,KAAK87C,MAAM4D,GACX7/F,KAAKmgD,KAAK87C,MAAM4D,GAAQ2F,MAAMqB,YADvC,UAYF/8F,IAAK,oBACL1E,MAAO,SAA2By6F,GAChC,GAAIiH,KACJ,IAAgCngG,SAA5B3G,KAAKmgD,KAAK87C,MAAM4D,GAGlB,IAAK,GAFDrjE,GAAOx8B,KAAKmgD,KAAK87C,MAAM4D,GACvBkH,KACKlgG,EAAI,EAAGA,EAAI21B,EAAK2/D,MAAMz1F,OAAQG,IAAK,CAC1C,GAAI07F,GAAO/lE,EAAK2/D,MAAMt1F,EAClB07F,GAAKyE,MAAQxqE,EAAKn8B,GAESsG,SAAzBogG,EAAQxE,EAAK0E,UACfH,EAASn/F,KAAK46F,EAAK0E,QACnBF,EAAQxE,EAAK0E,SAAU,GAEhB1E,EAAK0E,QAAUzqE,EAAKn8B,IAEFsG,SAAvBogG,EAAQxE,EAAKyE,QACfF,EAASn/F,KAAK46F,EAAKyE,MACnBD,EAAQxE,EAAKyE,OAAQ,GAK7B,MAAOF,MAUTh9F,IAAK,oBACL1E,MAAO,SAA2By6F,GAChC,GAAIqH,KACJ,IAAgCvgG,SAA5B3G,KAAKmgD,KAAK87C,MAAM4D,GAElB,IAAK,GADDrjE,GAAOx8B,KAAKmgD,KAAK87C,MAAM4D,GAClBh5F,EAAI,EAAGA,EAAI21B,EAAK2/D,MAAMz1F,OAAQG,IACrCqgG,EAASv/F,KAAK60B,EAAK2/D,MAAMt1F,GAAGxG,QAG9BkX,SAAQwnC,IAAI,mEAAoE8gD,EAElF,OAAOqH,MAWTp9F,IAAK,WACL1E,MAAO,SAAkBy6F,EAAQrhE,EAAGxc,GAClC,GAAIinC,GAASjpD,IAEmB2G,UAA5B3G,KAAKmgD,KAAK87C,MAAM4D,IAClB7/F,KAAKmgD,KAAK87C,MAAM4D,GAAQrhE,EAAI95B,OAAO85B,GACnCx+B,KAAKmgD,KAAK87C,MAAM4D,GAAQ79E,EAAItd,OAAOsd,GACnC3X,WAAW,WACT4+C,EAAO9I,KAAKE,QAAQ5H,KAAK,oBACxB,IAEHlhC,QAAQwnC,IAAI,0DAA2D8gD,OAKtE2E,IAGT5kG,GAAAA,WAAkB4kG,GAId,SAAS3kG,EAAQD,EAASM,GA0E9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAxEhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBo/C,EAASpkG,EAAoB,IAE7BqkG,EAAUjlD,EAAuBglD,GAEjC6C,EAAOjnG,EAAoB,IAE3BknG,EAAQ9nD,EAAuB6nD,GAE/BE,EAAUnnG,EAAoB,IAE9BonG,EAAWhoD,EAAuB+nD,GAElCE,EAAiBrnG,EAAoB,IAErCsnG,EAAkBloD,EAAuBioD,GAEzCE,EAAYvnG,EAAoB,IAEhCwnG,EAAapoD,EAAuBmoD,GAEpCE,EAAWznG,EAAoB,IAE/B0nG,EAAYtoD,EAAuBqoD,GAEnCE,EAAO3nG,EAAoB,IAE3B4nG,EAAQxoD,EAAuBuoD,GAE/BE,EAAW7nG,EAAoB,IAE/B8nG,EAAY1oD,EAAuByoD,GAEnCE,EAAQ/nG,EAAoB,IAE5BgoG,EAAS5oD,EAAuB2oD,GAEhCE,EAASjoG,EAAoB,IAE7BkoG,EAAU9oD,EAAuB6oD,GAEjCE,EAAUnoG,EAAoB,IAE9BooG,EAAWhpD,EAAuB+oD,GAElCE,EAAQroG,EAAoB,IAE5BsoG,EAASlpD,EAAuBipD,GAEhCE,EAAQvoG,EAAoB,IAE5BwoG,EAASppD,EAAuBmpD,GAEhCE,EAAYzoG,EAAoB,IAEhC0oG,EAAatpD,EAAuBqpD,GAEpCE,EAAgB3oG,EAAoB,IAEpC4oG,EAAiBxpD,EAAuBupD,GAExCzmD,EAAaliD,EAAoB,IAQjCS,GANc2+C,EAAuB8C,GAM9BliD,EAAoB,IA4B3B6oG,EAAO,WACT,QAASA,GAAKllG,EAASs8C,EAAM6oD,EAAWtZ,EAAW3+E,GACjDi0C,EAAgBhlD,KAAM+oG,GAEtB/oG,KAAK6D,QAAUlD,EAAK6P,aAAaO,GACjC/Q,KAAK+Q,cAAgBA,EACrB/Q,KAAKmgD,KAAOA,EAEZngD,KAAKm8F,SAGLn8F,KAAKK,GAAKsG,OACV3G,KAAKgpG,UAAYA,EACjBhpG,KAAK0vF,UAAYA,EAGjB1vF,KAAKw+B,EAAI73B,OACT3G,KAAKgiB,EAAIrb,OACT3G,KAAKipG,SAAWjpG,KAAK6D,QAAQg7B,KAC7B7+B,KAAKkpG,aAAelpG,KAAK6D,QAAQ8uC,KAAK9T,KACtC7+B,KAAKmpG,oBAAqB,EAC1BnpG,KAAKooD,UAAW,EAChBpoD,KAAKuO,OAAQ,EAEbvO,KAAKopG,YAAc,GAAI7E,GAAAA,WAAgBvkG,KAAKmgD,KAAMngD,KAAK6D,SAAS,GAChE7D,KAAK4/B,WAAW/7B,GAuZlB,MA9YAuhD,GAAa2jD,IACXj/F,IAAK,aACL1E,MAAO,SAAoBm9F,GACQ,KAA7BviG,KAAKm8F,MAAMz0F,QAAQ66F,IACrBviG,KAAKm8F,MAAMx0F,KAAK46F,MAUpBz4F,IAAK,aACL1E,MAAO,SAAoBm9F,GACzB,GAAIh5F,GAAQvJ,KAAKm8F,MAAMz0F,QAAQ66F,EAClB,KAATh5F,GACFvJ,KAAKm8F,MAAM3yF,OAAOD,EAAO,MAW7BO,IAAK,aACL1E,MAAO,SAAoBvB,GACzB,GAAIwlG,GAAerpG,KAAK6D,QAAQ2hG,KAChC,IAAK3hG,EAAL,CAQA,GAJmB8C,SAAf9C,EAAQxD,KACVL,KAAKK,GAAKwD,EAAQxD,IAGJsG,SAAZ3G,KAAKK,GACP,KAAM,sBA2BR,IAtBkBsG,SAAd9C,EAAQ26B,IACQ,OAAd36B,EAAQ26B,GACVx+B,KAAKw+B,EAAI73B,OAAU3G,KAAKmpG,oBAAqB,IAE7CnpG,KAAKw+B,EAAI9xB,SAAS7I,EAAQ26B,GAAGx+B,KAAKmpG,oBAAqB,IAGzCxiG,SAAd9C,EAAQme,IACQ,OAAdne,EAAQme,GACVhiB,KAAKgiB,EAAIrb,OAAU3G,KAAKmpG,oBAAqB,IAE7CnpG,KAAKgiB,EAAItV,SAAS7I,EAAQme,GAAGhiB,KAAKmpG,oBAAqB,IAGtCxiG,SAAjB9C,EAAQg7B,OACV7+B,KAAKipG,SAAWplG,EAAQg7B,MAEJl4B,SAAlB9C,EAAQuB,QACVvB,EAAQuB,MAAQ+lB,WAAWtnB,EAAQuB,QAIR,gBAAlBvB,GAAQsgD,OAA+C,gBAAlBtgD,GAAQsgD,OAAuC,IAAjBtgD,EAAQsgD,MAAa,CACjG,GAAImlD,GAAWtpG,KAAK0vF,UAAU93D,IAAI/zB,EAAQsgD,MAC1CxjD,GAAK6G,WAAWxH,KAAK6D,QAASylG,GAE9BtpG,KAAK6D,QAAQ+I,MAAQjM,EAAK2M,WAAWtN,KAAK6D,QAAQ+I,OAOpD,GAHAm8F,EAAKlD,aAAa7lG,KAAK6D,QAASA,GAAS,EAAM7D,KAAK+Q,eAGzBpK,SAAvB3G,KAAK6D,QAAQkhG,MAAqB,CACpC,IAAI/kG,KAAKgpG,UAGP,KAAM,uBAFNhpG,MAAKupG,SAAWvpG,KAAKgpG,UAAUQ,KAAKxpG,KAAK6D,QAAQkhG,MAAO/kG,KAAK6D,QAAQ8gG,YAAa3kG,KAAKK,IAS3F,MAHAL,MAAK+lG,oBACL/lG,KAAK8lG,YAAYuD,GAEM1iG,SAAnB9C,EAAQqvE,QAA4CvsE,SAApB9C,EAAQ0mD,YAgB9CzgD,IAAK,oBACL1E,MAAO,WACsBuB,SAAvB3G,KAAK6D,QAAQi7B,OAA8C,OAAvB9+B,KAAK6D,QAAQi7B,QACnD9+B,KAAK6D,QAAQi7B,MAAQ,IAEvB9+B,KAAKopG,YAAYxpE,WAAW5/B,KAAK6D,SAAS,GACR8C,SAA9B3G,KAAKopG,YAAYH,WACnBjpG,KAAKkpG,aAAelpG,KAAKopG,YAAYH,aAIzCn/F,IAAK,cACL1E,MAAO,SAAqBikG,GAC1B,GAAIA,IAAiBrpG,KAAK6D,QAAQ2hG,OAASxlG,KAAKwlG,MAC9CxlG,KAAKwlG,MAAM5lE,WAAW5/B,KAAK6D,QAAS7D,KAAKupG,cAGzC,QAAQvpG,KAAK6D,QAAQ2hG,OACnB,IAAK,MACHxlG,KAAKwlG,MAAQ,GAAI4B,GAAAA,WAAcpnG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,YAC7D,MACF,KAAK,SACHppG,KAAKwlG,MAAQ,GAAI8B,GAAAA,WAAiBtnG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,YAChE,MACF,KAAK,gBACHppG,KAAKwlG,MAAQ,GAAIgC,GAAAA,WAAwBxnG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,YAAappG,KAAKupG,SACzF,MACF,KAAK,WACHvpG,KAAKwlG,MAAQ,GAAIkC,GAAAA,WAAmB1nG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,YAClE,MACF,KAAK,UACHppG,KAAKwlG,MAAQ,GAAIoC,GAAAA,WAAkB5nG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,YACjE,MACF,KAAK,MACHppG,KAAKwlG,MAAQ,GAAIsC,GAAAA,WAAc9nG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,YAC7D,MACF,KAAK,UACHppG,KAAKwlG,MAAQ,GAAIwC,GAAAA,WAAkBhoG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,YACjE,MACF,KAAK,OACHppG,KAAKwlG,MAAQ,GAAI0C,GAAAA,WAAeloG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,YAC9D,MACF,KAAK,QACHppG,KAAKwlG,MAAQ,GAAI4C,GAAAA,WAAgBpoG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,YAAappG,KAAKupG,SACjF,MACF,KAAK,SACHvpG,KAAKwlG,MAAQ,GAAI8C,GAAAA,WAAiBtoG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,YAChE,MACF,KAAK,OACHppG,KAAKwlG,MAAQ,GAAIgD,GAAAA,WAAexoG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,YAC9D,MACF,KAAK,OACHppG,KAAKwlG,MAAQ,GAAIkD,GAAAA,WAAe1oG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,YAC9D,MACF,KAAK,WACHppG,KAAKwlG,MAAQ,GAAIoD,GAAAA,WAAmB5oG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,YAClE,MACF,KAAK,eACHppG,KAAKwlG,MAAQ,GAAIsD,GAAAA,WAAuB9oG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,YACtE,MACF,SACEppG,KAAKwlG,MAAQ,GAAIwC,GAAAA,WAAkBhoG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,aAIvEppG,KAAKgmG,YAQPl8F,IAAK,SACL1E,MAAO,WACLpF,KAAKooD,UAAW,EAChBpoD,KAAKgmG,YAQPl8F,IAAK,WACL1E,MAAO,WACLpF,KAAKooD,UAAW,EAChBpoD,KAAKgmG,YASPl8F,IAAK,SACL1E,MAAO,WACLpF,KAAKwlG,MAAMpmE,MAAQz4B,OACnB3G,KAAKwlG,MAAMnmE,OAAS14B,UAUtBmD,IAAK,WACL1E,MAAO,WACL,MAAOpF,MAAK6D,QAAQ8yE,SAWtB7sE,IAAK,mBACL1E,MAAO,SAA0B+sC,EAAKkmB,GACpC,MAAOr4D,MAAKwlG,MAAMiE,iBAAiBt3D,EAAKkmB,MAS1CvuD,IAAK,UACL1E,MAAO,WACL,MAAOpF,MAAK6D,QAAQ+gG,MAAMpmE,GAAKx+B,KAAK6D,QAAQ+gG,MAAM5iF,KASpDlY,IAAK,aACL1E,MAAO,WACL,MAAOpF,MAAKooD,YASdt+C,IAAK,WACL1E,MAAO,WACL,MAAOpF,MAAK6D,QAAQuB,SAWtB0E,IAAK,gBACL1E,MAAO,SAAuBH,EAAKC,EAAKC,GACtC,GAA2BwB,SAAvB3G,KAAK6D,QAAQuB,MAAqB,CACpC,GAAIC,GAAQrF,KAAK6D,QAAQshG,QAAQG,sBAAsBrgG,EAAKC,EAAKC,EAAOnF,KAAK6D,QAAQuB,OACjFskG,EAAW1pG,KAAK6D,QAAQshG,QAAQjgG,IAAMlF,KAAK6D,QAAQshG,QAAQlgG,GAC/D,IAAIjF,KAAK6D,QAAQshG,QAAQrmE,MAAM9tB,WAAY,EAAM,CAC/C,GAAI24F,GAAW3pG,KAAK6D,QAAQshG,QAAQrmE,MAAM55B,IAAMlF,KAAK6D,QAAQshG,QAAQrmE,MAAM75B,GAC3EjF,MAAK6D,QAAQ8uC,KAAK9T,KAAO7+B,KAAK6D,QAAQshG,QAAQrmE,MAAM75B,IAAMI,EAAQskG,EAEpE3pG,KAAK6D,QAAQg7B,KAAO7+B,KAAK6D,QAAQshG,QAAQlgG,IAAMI,EAAQqkG,MAEvD1pG,MAAK6D,QAAQg7B,KAAO7+B,KAAKipG,SACzBjpG,KAAK6D,QAAQ8uC,KAAK9T,KAAO7+B,KAAKkpG,YAGhClpG,MAAK+lG,uBAUPj8F,IAAK,OACL1E,MAAO,SAAc+sC,GACnBnyC,KAAKwlG,MAAMl7C,KAAKnY,EAAKnyC,KAAKw+B,EAAGx+B,KAAKgiB,EAAGhiB,KAAKooD,SAAUpoD,KAAKuO,UAQ3DzE,IAAK,oBACL1E,MAAO,SAA2B+sC,GAChCnyC,KAAKwlG,MAAMoE,kBAAkB5pG,KAAKw+B,EAAGx+B,KAAKgiB,EAAGmwB,MAU/CroC,IAAK,SACL1E,MAAO,SAAgB+sC,GACrBnyC,KAAKwlG,MAAMqE,OAAO13D,EAAKnyC,KAAKooD,aAU9Bt+C,IAAK,oBACL1E,MAAO,SAA2Bf,GAChC,MAAOrE,MAAKwlG,MAAM18F,KAAOzE,EAAIouC,OAASzyC,KAAKwlG,MAAM18F,KAAO9I,KAAKwlG,MAAMpmE,MAAQ/6B,EAAIyE,MAAQ9I,KAAKwlG,MAAMx8F,IAAM3E,EAAI6qC,QAAUlvC,KAAKwlG,MAAMx8F,IAAMhJ,KAAKwlG,MAAMnmE,OAASh7B,EAAI2E,OAUjKc,IAAK,+BACL1E,MAAO,SAAsCf,GAC3C,MAAOrE,MAAKwlG,MAAMqB,YAAY/9F,KAAOzE,EAAIouC,OAASzyC,KAAKwlG,MAAMqB,YAAYp0D,MAAQpuC,EAAIyE,MAAQ9I,KAAKwlG,MAAMqB,YAAY79F,IAAM3E,EAAI6qC,QAAUlvC,KAAKwlG,MAAMqB,YAAY33D,OAAS7qC,EAAI2E,SAG9Kc,IAAK,eACL1E,MAAO,SAAsB0kG,EAAeC,GAC1C,GAAIvjG,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GACxFsK,EAAgBtK,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAErF2J,GAAU,QAAS,OAAQ,QAAS,SAOxC,IANAzP,EAAK8G,uBAAuB2I,EAAQ05F,EAAeC,EAAYvjG,GAG/D7F,EAAKkQ,aAAai5F,EAAeC,EAAY,SAAUvjG,EAAeuK,GAG7CpK,SAArBojG,EAAWn9F,OAA4C,OAArBm9F,EAAWn9F,MAAgB,CAC/D,GAAIo9F,GAAcrpG,EAAK2M,WAAWy8F,EAAWn9F,MAC7CjM,GAAK0F,cAAcyjG,EAAcl9F,MAAOo9F,OAC/BxjG,MAAkB,GAA6B,OAArBujG,EAAWn9F,QAC9Ck9F,EAAcl9F,MAAQjM,EAAK6P,aAAaO,EAAcnE,OAI/BjG,UAArBojG,EAAWnF,OAA4C,OAArBmF,EAAWnF,QACf,iBAArBmF,GAAWnF,OACpBkF,EAAclF,MAAMpmE,EAAIurE,EAAWnF,MACnCkF,EAAclF,MAAM5iF,EAAI+nF,EAAWnF,QAERj+F,SAAvBojG,EAAWnF,MAAMpmE,GAAiD,iBAAvBurE,GAAWnF,MAAMpmE,IAC9DsrE,EAAclF,MAAMpmE,EAAIurE,EAAWnF,MAAMpmE,GAEhB73B,SAAvBojG,EAAWnF,MAAM5iF,GAAiD,iBAAvB+nF,GAAWnF,MAAM5iF,IAC9D8nF,EAAclF,MAAM5iF,EAAI+nF,EAAWnF,MAAM5iF,KAMvBrb,SAApBojG,EAAWp3D,MAA0C,OAApBo3D,EAAWp3D,KAC9C4xD,EAAAA,WAAgBsB,aAAaiE,EAAcn3D,KAAMo3D,GACxCvjG,KAAkB,GAA4B,OAApBujG,EAAWp3D,OAC9Cm3D,EAAcn3D,KAAOhyC,EAAK6P,aAAaO,EAAc4hC,OAI5BhsC,SAAvBojG,EAAW5E,SACbxkG,EAAKkQ,aAAai5F,EAAc3E,QAAS4E,EAAW5E,QAAS,QAAS3+F,EAAeuK,EAAco0F,aAKlG4D,IAGTnpG,GAAAA,WAAkBmpG,GAId,SAASlpG,EAAQD,EAASM,GAc9B,QAAS8kD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAVhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAI6kG,GAAiB,WAAc,QAASC,GAAc3hG,EAAK1B,GAAK,GAAIsjG,MAAeC,GAAK,EAAUv1F,GAAK,EAAWw1F,EAAK1jG,MAAW,KAAM,IAAK,GAAiC2jG,GAA7B50F,EAAKnN,EAAIpE,OAAOC,cAAmBgmG,GAAME,EAAK50F,EAAGqD,QAAQs3D,QAAoB85B,EAAKxiG,KAAK2iG,EAAGllG,QAAYyB,GAAKsjG,EAAKzjG,SAAWG,GAA3DujG,GAAK,IAAoE,MAAO7hD,GAAO1zC,GAAK,EAAMw1F,EAAK9hD,EAAO,QAAU,KAAW6hD,GAAM10F,EAAG,WAAWA,EAAG,YAAe,QAAU,GAAIb,EAAI,KAAMw1F,IAAQ,MAAOF,GAAQ,MAAO,UAAU5hG,EAAK1B,GAAK,GAAIK,MAAMC,QAAQoB,GAAQ,MAAOA,EAAY,IAAIpE,OAAOC,WAAYmD,QAAOgB,GAAQ,MAAO2hG,GAAc3hG,EAAK1B,EAAa,MAAM,IAAIS,WAAU,4DAEllBpD,EAA4B,kBAAXC,SAAoD,gBAApBA,QAAOC,SAAwB,SAAUC,GAAO,aAAcA,IAAS,SAAUA,GAAO,MAAOA,IAAyB,kBAAXF,SAAyBE,EAAIC,cAAgBH,OAAS,eAAkBE,IAEtO+gD,EAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI5hBvkD,EAAOT,EAAoB,GAE3BqqG,EAAQ,WACV,QAASA,GAAMpqD,EAAMt8C,GACnB,GAAI2mG,GAAY/jG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAExFu+C,GAAgBhlD,KAAMuqG,GAEtBvqG,KAAKmgD,KAAOA,EAEZngD,KAAKyqG,aAAc,EACnBzqG,KAAKipG,SAAWtiG,OAChB3G,KAAK0qG,eACL1qG,KAAK4/B,WAAW/7B,GAChB7D,KAAK6+B,MAAS71B,IAAK,EAAGF,KAAM,EAAGs2B,MAAO,EAAGC,OAAQ,EAAGsrE,MAAO,GAC3D3qG,KAAK4qG,YAAcJ,EAiTrB,MA9SAplD,GAAamlD,IACXzgG,IAAK,aACL1E,MAAO,SAAoBvB,GACzB,GAAI2C,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAE5FzG,MAAK6qG,YAAchnG,EAInB7D,KAAK0qG,YAAc/pG,EAAK6G,cAAe3D,EAAQ8uC,MAAM,GAE/BhsC,SAAlB9C,EAAQi7B,QACV9+B,KAAK8qG,YAAa,GAGCnkG,SAAjB9C,EAAQ8uC,OACV43D,EAAM1E,aAAa7lG,KAAK0qG,YAAa7mG,EAAS2C,GAClB,gBAAjB3C,GAAQ8uC,KACjB3yC,KAAKipG,SAAWjpG,KAAK0qG,YAAY7rE,KACE,WAA1B36B,EAAQL,EAAQ8uC,OACChsC,SAAtB9C,EAAQ8uC,KAAK9T,OACf7+B,KAAKipG,SAAWplG,EAAQ8uC,KAAK9T,UAMrC/0B,IAAK,OAWL1E,MAAO,SAAc+sC,EAAK3T,EAAGxc,EAAGomC,GAC9B,GAAI2iD,GAAWtkG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,SAAWA,UAAU,EAG1F,IAA+BE,SAA3B3G,KAAK6qG,YAAY/rE,MAArB,CAGA,GAAIksE,GAAehrG,KAAK0qG,YAAY7rE,KAAO7+B,KAAKmgD,KAAK+8C,KAAK73F,KACtDrF,MAAK6qG,YAAY/rE,OAASksE,EAAehrG,KAAK6qG,YAAY1F,QAAQrmE,MAAMumE,cAAgB,IAG5FrlG,KAAKirG,mBAAmB94D,EAAKiW,EAAU5pB,EAAGxc,EAAG+oF,GAG7C/qG,KAAKkrG,gBAAgB/4D,GAErBnyC,KAAKmrG,UAAUh5D,EAAKiW,EAAU5pB,EAAGxc,EAAG+oF,QAUtCjhG,IAAK,kBACL1E,MAAO,SAAyB+sC,GAC9B,GAAoCxrC,SAAhC3G,KAAK0qG,YAAYt8F,YAA4D,SAAhCpO,KAAK0qG,YAAYt8F,WAAuB,CACvF+jC,EAAIiB,UAAYpzC,KAAK0qG,YAAYt8F,UAEjC,IAAIg9F,GAAa,CAEjB,IAAIprG,KAAK4qG,YACP,OAAQ5qG,KAAK0qG,YAAY9xB,OACvB,IAAK,SACHzmC,EAAI8lB,SAA4B,IAAlBj4D,KAAK6+B,KAAKO,MAAiC,IAAnBp/B,KAAK6+B,KAAKQ,OAAcr/B,KAAK6+B,KAAKO,MAAOp/B,KAAK6+B,KAAKQ,OACzF,MACF,KAAK,MACH8S,EAAI8lB,SAA4B,IAAlBj4D,KAAK6+B,KAAKO,QAAep/B,KAAK6+B,KAAKQ,OAAS+rE,GAAaprG,KAAK6+B,KAAKO,MAAOp/B,KAAK6+B,KAAKQ,OAClG,MACF,KAAK,SACH8S,EAAI8lB,SAA4B,IAAlBj4D,KAAK6+B,KAAKO,MAAagsE,EAAYprG,KAAK6+B,KAAKO,MAAOp/B,KAAK6+B,KAAKQ,OAC5E,MACF,SACE8S,EAAI8lB,SAASj4D,KAAK6+B,KAAK/1B,KAAM9I,KAAK6+B,KAAK71B,IAAM,GAAMoiG,EAAYprG,KAAK6+B,KAAKO,MAAOp/B,KAAK6+B,KAAKQ,YAI9F8S,GAAI8lB,SAASj4D,KAAK6+B,KAAK/1B,KAAM9I,KAAK6+B,KAAK71B,IAAM,GAAMoiG,EAAYprG,KAAK6+B,KAAKO,MAAOp/B,KAAK6+B,KAAKQ,YAchGv1B,IAAK,YACL1E,MAAO,SAAmB+sC,EAAKiW,EAAU5pB,EAAGxc,GAC1C,GAAI+oF,GAAWtkG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,SAAWA,UAAU,GAEtF4kG,EAAWrrG,KAAK0qG,YAAY7rE,KAC5BmsE,EAAeK,EAAWrrG,KAAKmgD,KAAK+8C,KAAK73F,KAEzC2lG,IAAgBhrG,KAAK6qG,YAAY1F,QAAQrmE,MAAMsmE,aACjDiG,EAAW3mG,OAAO1E,KAAK6qG,YAAY1F,QAAQrmE,MAAMsmE,YAAcplG,KAAKmgD,KAAK+8C,KAAK73F,MAGhF,IAAIslG,GAAQ3qG,KAAK6+B,KAAK8rE,MAElBW,EAAatrG,KAAKurG,UAAUP,GAE5BQ,EAAavB,EAAeqB,EAAY,GAExCG,EAAYD,EAAW,GACvB1G,EAAc0G,EAAW,GAKzBE,EAAiB1rG,KAAK2rG,cAAcx5D,EAAK3T,EAAGmsE,EAAOI,GAEnDa,EAAiB3B,EAAeyB,EAAgB,EAEpDltE,GAAIotE,EAAe,GACnBjB,EAAQiB,EAAe,GACvBz5D,EAAIQ,MAAQyV,GAAYpoD,KAAK6qG,YAAY7F,mBAAqB,QAAU,IAAMqG,EAAW,MAAQrrG,KAAK0qG,YAAY7F,KAClH1yD,EAAIiB,UAAYq4D,EAEXzrG,KAAK4qG,aAA0C,SAA3B5qG,KAAK0qG,YAAY9xB,MAItCzmC,EAAIwB,UAAY,UAHlBxB,EAAIwB,UAAY3zC,KAAK0qG,YAAY9xB,MACjCp6C,GAAQ,GAAMx+B,KAAK6+B,KAAKO,OAMtBp/B,KAAK0qG,YAAYniE,YAAc,IACjC4J,EAAIO,UAAY1yC,KAAK0qG,YAAYniE,YACjC4J,EAAIY,YAAc+xD,EAClB3yD,EAAI4D,SAAW,QAIjB,KAAK,GAAIlvC,GAAI,EAAGA,EAAI7G,KAAK6rG,UAAWhlG,IAC9B7G,KAAK0qG,YAAYniE,YAAc,GACjC4J,EAAI25D,WAAW9rG,KAAKioF,MAAMphF,GAAI23B,EAAGmsE,GAEnCx4D,EAAI0B,SAAS7zC,KAAKioF,MAAMphF,GAAI23B,EAAGmsE,GAC/BA,GAASU,KAIbvhG,IAAK,gBACL1E,MAAO,SAAuB+sC,EAAK3T,EAAGmsE,EAAOI,GAG3C,GAAI/qG,KAAK4qG,aAA0C,eAA3B5qG,KAAK0qG,YAAY9xB,OAA0B54E,KAAKyqG,eAAgB,EAAO,CAC7FjsE,EAAI,EACJmsE,EAAQ,CAER,IAAIS,GAAa,CACc,SAA3BprG,KAAK0qG,YAAY9xB,OACnBzmC,EAAIyB,aAAe,aACnB+2D,GAAS,EAAIS,GACuB,WAA3BprG,KAAK0qG,YAAY9xB,OACxBzmC,EAAIyB,aAAe,UACnB+2D,GAAS,EAAIS,GAEXj5D,EAAIyB,aAAe,aAGzBzB,GAAIyB,aAAem3D,CAGrB,QAAQvsE,EAAGmsE,MAab7gG,IAAK,YACL1E,MAAO,SAAmB4lG,GACxB,GAAIS,GAAYzrG,KAAK0qG,YAAY99F,OAAS,UACtCk4F,EAAc9kG,KAAK0qG,YAAY5F,aAAe,SAClD,IAAIkG,GAAgBhrG,KAAK6qG,YAAY1F,QAAQrmE,MAAMumE,cAAe,CAChE,GAAIx4F,GAAUvH,KAAKJ,IAAI,EAAGI,KAAKL,IAAI,EAAG,GAAKjF,KAAK6qG,YAAY1F,QAAQrmE,MAAMumE,cAAgB2F,IAC1FS,GAAY9qG,EAAKgM,gBAAgB8+F,EAAW5+F,GAC5Ci4F,EAAcnkG,EAAKgM,gBAAgBm4F,EAAaj4F,GAElD,OAAQ4+F,EAAW3G,MAWrBh7F,IAAK,cACL1E,MAAO,SAAqB+sC,GAC1B,GAAIiW,GAAW3hD,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEnFo4B,GACFO,MAAOp/B,KAAK+rG,cAAc55D,EAAKiW,GAC/B/oB,OAAQr/B,KAAK0qG,YAAY7rE,KAAO7+B,KAAK6rG,UACrCA,UAAW7rG,KAAK6rG,UAElB,OAAOhtE,MAaT/0B,IAAK,qBACL1E,MAAO,SAA4B+sC,EAAKiW,GACtC,GAAI5pB,GAAI/3B,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,EAAIA,UAAU,GACxEub,EAAIvb,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,EAAIA,UAAU,GACxEskG,EAAWtkG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,SAAWA,UAAU,EAEtFzG,MAAK8qG,cAAe,IACtB9qG,KAAK6+B,KAAKO,MAAQp/B,KAAK+rG,cAAc55D,EAAKiW,IAE5CpoD,KAAK6+B,KAAKQ,OAASr/B,KAAK0qG,YAAY7rE,KAAO7+B,KAAK6rG,UAChD7rG,KAAK6+B,KAAK/1B,KAAO01B,EAAsB,GAAlBx+B,KAAK6+B,KAAKO,MAC/Bp/B,KAAK6+B,KAAK71B,IAAMgZ,EAAuB,GAAnBhiB,KAAK6+B,KAAKQ,OAC9Br/B,KAAK6+B,KAAK8rE,MAAQ3oF,EAA2B,IAAtB,EAAIhiB,KAAK6rG,WAAmB7rG,KAAK0qG,YAAY7rE,KACnD,YAAbksE,IACF/qG,KAAK6+B,KAAK71B,KAAO,GAAMhJ,KAAK0qG,YAAY7rE,KACxC7+B,KAAK6+B,KAAK71B,KAAO,EACjBhJ,KAAK6+B,KAAK8rE,OAAS,GAGrB3qG,KAAK8qG,YAAa,KAYpBhhG,IAAK,gBACL1E,MAAO,SAAuB+sC,EAAKiW,GACjC,GAAIhpB,GAAQ,EACR6oD,GAAS,IACT4jB,EAAY,CAChB,IAA+BllG,SAA3B3G,KAAK6qG,YAAY/rE,MAAqB,CACxCmpD,EAAQziF,OAAOxF,KAAK6qG,YAAY/rE,OAAO11B,MAAM,MAC7CyiG,EAAY5jB,EAAMvhF,OAClByrC,EAAIQ,MAAQyV,GAAYpoD,KAAK6qG,YAAY7F,mBAAqB,QAAU,IAAMhlG,KAAK0qG,YAAY7rE,KAAO,MAAQ7+B,KAAK0qG,YAAY7F,KAC/HzlE,EAAQ+S,EAAI65D,YAAY/jB,EAAM,IAAI7oD,KAClC,KAAK,GAAIv4B,GAAI,EAAOglG,EAAJhlG,EAAeA,IAAK,CAClC,GAAI6rC,GAAYP,EAAI65D,YAAY/jB,EAAMphF,IAAIu4B,KAC1CA,GAAQsT,EAAYtT,EAAQsT,EAAYtT,GAM5C,MAHAp/B,MAAKioF,MAAQA,EACbjoF,KAAK6rG,UAAYA,EAEVzsE,OAGTt1B,IAAK,eACL1E,MAAO,SAAsB0kG,EAAeC,GAC1C,GAAIvjG,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAE5F,IAA+B,gBAApBsjG,GAAWp3D,KAAmB,CACvC,GAAIs5D,GAAkBlC,EAAWp3D,KAAKvpC,MAAM,IAC5C0gG,GAAcjrE,KAAOotE,EAAgB,GAAG3/F,QAAQ,KAAM,IACtDw9F,EAAcjF,KAAOoH,EAAgB,GACrCnC,EAAcl9F,MAAQq/F,EAAgB,OACA,WAA7B/nG,EAAQ6lG,EAAWp3D,OAC5BhyC,EAAK0F,cAAcyjG,EAAeC,EAAWp3D,KAAMnsC,EAErDsjG,GAAcjrE,KAAOn6B,OAAOolG,EAAcjrE,UAIvC0rE,IAGT3qG,GAAAA,WAAkB2qG,GAId,SAAS1qG,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBunD,EAAavsG,EAAoB,IAEjCwsG,EAAaptD,EAAuBmtD,GAUpCE,EAAM,SAAUC,GAGlB,QAASD,GAAI9oG,EAASs8C,EAAMipD,GAG1B,MAFApkD,GAAgBhlD,KAAM2sG,GAEfT,EAA2BlsG,KAAMuH,OAAOslG,eAAeF,GAAKpsG,KAAKP,KAAM6D,EAASs8C,EAAMipD,IA+E/F,MApFAgD,GAAUO,EAAKC,GAQfxnD,EAAaunD,IACX7iG,IAAK,SACL1E,MAAO,SAAgB+sC,EAAKiW,GAC1B,GAAmBzhD,SAAf3G,KAAKo/B,MAAqB,CAC5B,GAAI+F,GAAS,EACT2nE,EAAW9sG,KAAKopG,YAAY2D,YAAY56D,EAAKiW,EACjDpoD,MAAKo/B,MAAQ0tE,EAAS1tE,MAAQ,EAAI+F,EAClCnlC,KAAKq/B,OAASytE,EAASztE,OAAS,EAAI8F,EACpCnlC,KAAKy2C,OAAS,GAAMz2C,KAAKo/B,UAI7Bt1B,IAAK,OACL1E,MAAO,SAAc+sC,EAAK3T,EAAGxc,EAAGomC,EAAU75C,GACxCvO,KAAK6pG,OAAO13D,EAAKiW,GACjBpoD,KAAK8I,KAAO01B,EAAIx+B,KAAKo/B,MAAQ,EAC7Bp/B,KAAKgJ,IAAMgZ,EAAIhiB,KAAKq/B,OAAS,CAE7B,IAAIsM,GAAc3rC,KAAK6D,QAAQ8nC,YAC3BqhE,EAAqBhtG,KAAK6D,QAAQ6gG,qBAAuB,EAAI1kG,KAAK6D,QAAQ8nC,WAE9EwG,GAAIY,YAAcqV,EAAWpoD,KAAK6D,QAAQ+I,MAAM0B,UAAUD,OAASE,EAAQvO,KAAK6D,QAAQ+I,MAAM2B,MAAMF,OAASrO,KAAK6D,QAAQ+I,MAAMyB,OAChI8jC,EAAIO,UAAY0V,EAAW4kD,EAAqBrhE,EAChDwG,EAAIO,WAAa1yC,KAAKmgD,KAAK+8C,KAAK73F,MAChC8sC,EAAIO,UAAYptC,KAAKL,IAAIjF,KAAKo/B,MAAO+S,EAAIO,WAEzCP,EAAIiB,UAAYgV,EAAWpoD,KAAK6D,QAAQ+I,MAAM0B,UAAUF,WAAaG,EAAQvO,KAAK6D,QAAQ+I,MAAM2B,MAAMH,WAAapO,KAAK6D,QAAQ+I,MAAMwB,UAEtI,IAAIqsC,GAAez6C,KAAK6D,QAAQ4hG,gBAAgBhrD,YAChDtI,GAAI86D,UAAUjtG,KAAK8I,KAAM9I,KAAKgJ,IAAKhJ,KAAKo/B,MAAOp/B,KAAKq/B,OAAQob,GAG5Dz6C,KAAKktG,aAAa/6D,GAElBA,EAAI9J,OAEJroC,KAAKmtG,cAAch7D,GAGnBA,EAAIi7D,OAEAzhE,EAAc,IAChB3rC,KAAKqtG,mBAAmBl7D,GAExBA,EAAI7J,SAEJtoC,KAAKstG,oBAAoBn7D,IAE3BA,EAAIo7D,UAEJvtG,KAAK4pG,kBAAkBprE,EAAGxc,EAAGmwB,EAAKiW,GAClCpoD,KAAKopG,YAAY9+C,KAAKnY,EAAK3T,EAAGxc,EAAGomC,MAGnCt+C,IAAK,oBACL1E,MAAO,SAA2Bo5B,EAAGxc,EAAGmwB,EAAKiW,GAC3CpoD,KAAK6pG,OAAO13D,EAAKiW,GACjBpoD,KAAK8I,KAAO01B,EAAiB,GAAbx+B,KAAKo/B,MACrBp/B,KAAKgJ,IAAMgZ,EAAkB,GAAdhiB,KAAKq/B,MAEpB,IAAIob,GAAez6C,KAAK6D,QAAQ4hG,gBAAgBhrD,YAChDz6C,MAAK6mG,YAAY/9F,KAAO9I,KAAK8I,KAAO2xC,EACpCz6C,KAAK6mG,YAAY79F,IAAMhJ,KAAKgJ,IAAMyxC,EAClCz6C,KAAK6mG,YAAY33D,OAASlvC,KAAKgJ,IAAMhJ,KAAKq/B,OAASob,EACnDz6C,KAAK6mG,YAAYp0D,MAAQzyC,KAAK8I,KAAO9I,KAAKo/B,MAAQqb,KAGpD3wC,IAAK,mBACL1E,MAAO,SAA0B+sC,EAAKkmB,GACpCr4D,KAAK6pG,OAAO13D,EACZ,IAAIxG,GAAc3rC,KAAK6D,QAAQ8nC,WAE/B,OAAOrmC,MAAKL,IAAIK,KAAK4R,IAAIlX,KAAKo/B,MAAQ,EAAI95B,KAAK+kC,IAAIguB,IAAS/yD,KAAK4R,IAAIlX,KAAKq/B,OAAS,EAAI/5B,KAAK4kC,IAAImuB,KAAW1sB,MAIxGghE,GACPD,EAAAA,WAEF9sG,GAAAA,WAAkB+sG,GAId,SAAS9sG,EAAQD,GAUrB,QAASolD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCANhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI5hBsoD,EAAW,WACb,QAASA,GAAS3pG,EAASs8C,EAAMipD,GAC/BpkD,EAAgBhlD,KAAMwtG,GAEtBxtG,KAAKmgD,KAAOA,EACZngD,KAAKopG,YAAcA,EACnBppG,KAAK4/B,WAAW/7B,GAChB7D,KAAKgJ,IAAMrC,OACX3G,KAAK8I,KAAOnC,OACZ3G,KAAKq/B,OAAS14B,OACd3G,KAAKo/B,MAAQz4B,OACb3G,KAAKy2C,OAAS9vC,OACd3G,KAAK6mG,aAAgB79F,IAAK,EAAGF,KAAM,EAAG2pC,MAAO,EAAGvD,OAAQ,GAiE1D,MA9DAkW,GAAaooD,IACX1jG,IAAK,aACL1E,MAAO,SAAoBvB,GACzB7D,KAAK6D,QAAUA,KAGjBiG,IAAK,oBACL1E,MAAO,SAA2B+sC,EAAKkmB,GACrC,GAAI1sB,GAAc3rC,KAAK6D,QAAQ8nC,WAE/B,OADA3rC,MAAK6pG,OAAO13D,GACL7sC,KAAKL,IAAIK,KAAK4R,IAAIlX,KAAKo/B,MAAQ,EAAI95B,KAAK+kC,IAAIguB,IAAS/yD,KAAK4R,IAAIlX,KAAKq/B,OAAS,EAAI/5B,KAAK4kC,IAAImuB,KAAW1sB,KAG7G7hC,IAAK,eACL1E,MAAO,SAAsB+sC,GACvBnyC,KAAK6D,QAAQ0hG,OAAOv0F,WAAY,IAClCmhC,EAAIs7D,YAAcztG,KAAK6D,QAAQ0hG,OAAO34F,MACtCulC,EAAIu7D,WAAa1tG,KAAK6D,QAAQ0hG,OAAO1mE,KACrCsT,EAAIw7D,cAAgB3tG,KAAK6D,QAAQ0hG,OAAO/mE,EACxC2T,EAAIy7D,cAAgB5tG,KAAK6D,QAAQ0hG,OAAOvjF,MAI5ClY,IAAK,gBACL1E,MAAO,SAAuB+sC,GACxBnyC,KAAK6D,QAAQ0hG,OAAOv0F,WAAY,IAClCmhC,EAAIs7D,YAAc,gBAClBt7D,EAAIu7D,WAAa,EACjBv7D,EAAIw7D,cAAgB,EACpBx7D,EAAIy7D,cAAgB,MAIxB9jG,IAAK,qBACL1E,MAAO,SAA4B+sC,GACjC,GAAInyC,KAAK6D,QAAQ4hG,gBAAgBC,gBAAiB,EAChD,GAAwB/+F,SAApBwrC,EAAI07D,YAA2B,CACjC,GAAIC,GAAS9tG,KAAK6D,QAAQ4hG,gBAAgBC,YACtCoI,MAAW,IACbA,GAAU,EAAG,KAEf37D,EAAI07D,YAAYC,OAEhBv2F,SAAQH,KAAK,oFACbpX,KAAK6D,QAAQ4hG,gBAAgBC,cAAe,KAKlD57F,IAAK,sBACL1E,MAAO,SAA6B+sC,GAC9BnyC,KAAK6D,QAAQ4hG,gBAAgBC,gBAAiB,IACxB/+F,SAApBwrC,EAAI07D,YACN17D,EAAI07D,aAAa,KAEjBt2F,QAAQH,KAAK,oFACbpX,KAAK6D,QAAQ4hG,gBAAgBC,cAAe,QAM7C8H,IAGT5tG,GAAAA,WAAkB4tG,GAId,SAAS3tG,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK;AAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hB6oD,EAAoB7tG,EAAoB,IAExC8tG,EAAoB1uD,EAAuByuD,GAU3CE,EAAS,SAAUC,GAGrB,QAASD,GAAOpqG,EAASs8C,EAAMipD,GAG7B,MAFApkD,GAAgBhlD,KAAMiuG,GAEf/B,EAA2BlsG,KAAMuH,OAAOslG,eAAeoB,GAAQ1tG,KAAKP,KAAM6D,EAASs8C,EAAMipD,IAkDlG,MAvDAgD,GAAU6B,EAAQC,GAQlB9oD,EAAa6oD,IACXnkG,IAAK,SACL1E,MAAO,SAAgB+sC,EAAKiW,GAC1B,GAAmBzhD,SAAf3G,KAAKo/B,MAAqB,CAC5B,GAAI+F,GAAS,EACT2nE,EAAW9sG,KAAKopG,YAAY2D,YAAY56D,EAAKiW,GAC7C+lD,EAAW7oG,KAAKJ,IAAI4nG,EAAS1tE,MAAO0tE,EAASztE,QAAU,EAAI8F,CAC/DnlC,MAAK6D,QAAQg7B,KAAOsvE,EAAW,EAE/BnuG,KAAKo/B,MAAQ+uE,EACbnuG,KAAKq/B,OAAS8uE,EACdnuG,KAAKy2C,OAAS,GAAMz2C,KAAKo/B,UAI7Bt1B,IAAK,OACL1E,MAAO,SAAc+sC,EAAK3T,EAAGxc,EAAGomC,EAAU75C,GACxCvO,KAAK6pG,OAAO13D,EAAKiW,GACjBpoD,KAAK8I,KAAO01B,EAAIx+B,KAAKo/B,MAAQ,EAC7Bp/B,KAAKgJ,IAAMgZ,EAAIhiB,KAAKq/B,OAAS,EAE7Br/B,KAAKouG,eAAej8D,EAAK3T,EAAGxc,EAAGomC,EAAU75C,EAAOvO,KAAK6D,QAAQg7B,MAE7D7+B,KAAK6mG,YAAY79F,IAAMgZ,EAAIhiB,KAAK6D,QAAQg7B,KACxC7+B,KAAK6mG,YAAY/9F,KAAO01B,EAAIx+B,KAAK6D,QAAQg7B,KACzC7+B,KAAK6mG,YAAYp0D,MAAQjU,EAAIx+B,KAAK6D,QAAQg7B,KAC1C7+B,KAAK6mG,YAAY33D,OAASltB,EAAIhiB,KAAK6D,QAAQg7B,KAE3C7+B,KAAK4pG,kBAAkBprE,EAAGxc,GAC1BhiB,KAAKopG,YAAY9+C,KAAKnY,EAAK3T,EAAGxc,EAAGomC,MAGnCt+C,IAAK,oBACL1E,MAAO,SAA2Bo5B,EAAGxc,GACnChiB,KAAK6mG,YAAY79F,IAAMgZ,EAAIhiB,KAAK6D,QAAQg7B,KACxC7+B,KAAK6mG,YAAY/9F,KAAO01B,EAAIx+B,KAAK6D,QAAQg7B,KACzC7+B,KAAK6mG,YAAYp0D,MAAQjU,EAAIx+B,KAAK6D,QAAQg7B,KAC1C7+B,KAAK6mG,YAAY33D,OAASltB,EAAIhiB,KAAK6D,QAAQg7B,QAG7C/0B,IAAK,mBACL1E,MAAO,SAA0B+sC,EAAKkmB,GAEpC,MADAr4D,MAAK6pG,OAAO13D,GACQ,GAAbnyC,KAAKo/B,UAIT6uE,GACPD,EAAAA,WAEFpuG,GAAAA,WAAkBquG,GAId,SAASpuG,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBunD,EAAavsG,EAAoB,IAEjCwsG,EAAaptD,EAAuBmtD,GAUpC4B,EAAkB,SAAUzB,GAG9B,QAASyB,GAAgBxqG,EAASs8C,EAAMipD,GACtCpkD,EAAgBhlD,KAAMquG,EAEtB,IAAIlrD,GAAQ+oD,EAA2BlsG,KAAMuH,OAAOslG,eAAewB,GAAiB9tG,KAAKP,KAAM6D,EAASs8C,EAAMipD,GAI9G,OAFAjmD,GAAMmrD,YAAc,EACpBnrD,EAAMorD,aAAc,EACbprD,EAkKT,MA3KAipD,GAAUiC,EAAiBzB,GAY3BxnD,EAAaipD,IACXvkG,IAAK,aACL1E,MAAO,SAAoBvB,EAAS0lG,GAClCvpG,KAAK6D,QAAUA,EACX0lG,IACFvpG,KAAKupG,SAAWA,MAYpBz/F,IAAK,eACL1E,MAAO,WACL,GAAIumE,IAAQ,CASZ,IARK3rE,KAAKupG,SAASnqE,OAAUp/B,KAAKupG,SAASlqE,OAGhCr/B,KAAKuuG,eAAgB,IAC9BvuG,KAAKuuG,aAAc,EACnB5iC,GAAQ,GAHR3rE,KAAKuuG,aAAc,GAMhBvuG,KAAKo/B,QAAUp/B,KAAKq/B,QAAUssC,KAAU,EAAM,CAEjD,GAAIvsC,GAAOC,EAAQmvE,CACfxuG,MAAKupG,SAASnqE,OAASp/B,KAAKupG,SAASlqE,SAEvCD,EAAQ,EACRC,EAAS,GAEPr/B,KAAK6D,QAAQ4hG,gBAAgBE,gBAAiB,EAC5C3lG,KAAKupG,SAASnqE,MAAQp/B,KAAKupG,SAASlqE,QACtCmvE,EAAQxuG,KAAKupG,SAASnqE,MAAQp/B,KAAKupG,SAASlqE,OAC5CD,EAA4B,EAApBp/B,KAAK6D,QAAQg7B,KAAW2vE,GAASxuG,KAAKupG,SAASnqE,MACvDC,EAA6B,EAApBr/B,KAAK6D,QAAQg7B,MAAY7+B,KAAKupG,SAASlqE,SAI9CmvE,EAFExuG,KAAKupG,SAASnqE,OAASp/B,KAAKupG,SAASlqE,OAE/Br/B,KAAKupG,SAASlqE,OAASr/B,KAAKupG,SAASnqE,MAErC,EAEVA,EAA4B,EAApBp/B,KAAK6D,QAAQg7B,KACrBQ,EAA6B,EAApBr/B,KAAK6D,QAAQg7B,KAAW2vE,IAInCpvE,EAAQp/B,KAAKupG,SAASnqE,MACtBC,EAASr/B,KAAKupG,SAASlqE,QAEzBr/B,KAAKo/B,MAAQA,EACbp/B,KAAKq/B,OAASA,EACdr/B,KAAKy2C,OAAS,GAAMz2C,KAAKo/B,UAI7Bt1B,IAAK,iBACL1E,MAAO,SAAwB+sC,EAAK3T,EAAGxc,EAAGomC,EAAU75C,EAAOswB,GACzD,GAAI4vE,GAAqBzuG,KAAK6D,QAAQ8nC,YAClCqhE,EAAqBhtG,KAAK6D,QAAQ6gG,qBAAuB,EAAI1kG,KAAK6D,QAAQ8nC,YAC1EA,GAAeyc,EAAW4kD,EAAqByB,GAAsBzuG,KAAKmgD,KAAK+8C,KAAK73F,KACxF8sC,GAAIO,UAAYptC,KAAKL,IAAIjF,KAAKo/B,MAAOuM,GAErCwG,EAAIY,YAAcqV,EAAWpoD,KAAK6D,QAAQ+I,MAAM0B,UAAUD,OAASE,EAAQvO,KAAK6D,QAAQ+I,MAAM2B,MAAMF,OAASrO,KAAK6D,QAAQ+I,MAAMyB,OAChI8jC,EAAIiB,UAAYgV,EAAWpoD,KAAK6D,QAAQ+I,MAAM0B,UAAUF,WAAaG,EAAQvO,KAAK6D,QAAQ+I,MAAM2B,MAAMH,WAAapO,KAAK6D,QAAQ+I,MAAMwB,WACtI+jC,EAAIkkB,OAAO73B,EAAGxc,EAAG6c,GAGjB7+B,KAAKktG,aAAa/6D,GAElBA,EAAI9J,OAEJroC,KAAKmtG,cAAch7D,GAGnBA,EAAIi7D,OAEAzhE,EAAc,IAChB3rC,KAAKqtG,mBAAmBl7D,GAExBA,EAAI7J,SAEJtoC,KAAKstG,oBAAoBn7D,IAE3BA,EAAIo7D,aAGNzjG,IAAK,uBACL1E,MAAO,SAA8B+sC,GACnC,GAA2B,GAAvBnyC,KAAKupG,SAASnqE,MAAY,CAE5B+S,EAAIu8D,YAAc,EAGlB1uG,KAAKktG,aAAa/6D,EAElB,IAAIoR,GAASvjD,KAAKupG,SAASnqE,MAAQp/B,KAAKo/B,MAAQp/B,KAAKmgD,KAAK+8C,KAAK73F,KAC/D,IAAIk+C,EAAS,GAAKvjD,KAAK6D,QAAQ4hG,gBAAgB3X,iBAAkB,EAAM,CACrE,GAAIjpE,GAAI7kB,KAAKupG,SAASnqE,MAClBvxB,EAAI7N,KAAKupG,SAASlqE,OAClBsvE,EAAO3wE,SAASM,cAAc,SAClCqwE,GAAKvvE,MAAQva,EACb8pF,EAAKtvE,OAASxa,CACd,IAAI+pF,GAAOD,EAAKv8D,WAAW,KAE3BmR,IAAU,GACV1+B,GAAK,GACLhX,GAAK,GACL+gG,EAAKC,UAAU7uG,KAAKupG,SAAU,EAAG,EAAG1kF,EAAGhX,EAIvC,KAFA,GAAImjC,GAAW,EACX89D,EAAa,EACVvrD,EAAS,GAAkB,EAAburD,GACnBF,EAAKC,UAAUF,EAAM39D,EAAU,EAAGnsB,EAAGhX,EAAGmjC,EAAWnsB,EAAG,EAAGA,EAAI,EAAGhX,EAAI,GACpEmjC,GAAYnsB,EACZ0+B,GAAU,GACV1+B,GAAK,GACLhX,GAAK,GACLihG,GAAc,CAEhB38D,GAAI08D,UAAUF,EAAM39D,EAAU,EAAGnsB,EAAGhX,EAAG7N,KAAK8I,KAAM9I,KAAKgJ,IAAKhJ,KAAKo/B,MAAOp/B,KAAKq/B,YAG7E8S,GAAI08D,UAAU7uG,KAAKupG,SAAUvpG,KAAK8I,KAAM9I,KAAKgJ,IAAKhJ,KAAKo/B,MAAOp/B,KAAKq/B,OAIrEr/B,MAAKmtG,cAAch7D,OAIvBroC,IAAK,kBACL1E,MAAO,SAAyB+sC,EAAK3T,EAAGxc,EAAGomC,GACzC,GAAI7iB,GACAhd,EAAS,CAEb,IAAoB5hB,SAAhB3G,KAAKq/B,OAAsB,CAC7B9W,EAAuB,GAAdvoB,KAAKq/B,MACd,IAAI0vE,GAAkB/uG,KAAKopG,YAAY2D,YAAY56D,EAC/C48D,GAAgBlD,WAAa,IAC/BtjF,GAAUwmF,EAAgB1vE,OAAS,GAIvCkG,EAASvjB,EAAIuG,EAETvoB,KAAK6D,QAAQi7B,QACf9+B,KAAKsuG,YAAc/lF,GAErBvoB,KAAKopG,YAAY9+C,KAAKnY,EAAK3T,EAAG+G,EAAQ6iB,EAAU,eAI7CimD,GACP3B,EAAAA,WAEF9sG,GAAAA,WAAkByuG,GAId,SAASxuG,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hB6oD,EAAoB7tG,EAAoB,IAExC8tG,EAAoB1uD,EAAuByuD,GAU3CiB,EAAgB,SAAUd,GAG5B,QAASc,GAAcnrG,EAASs8C,EAAMipD,EAAaG,GACjDvkD,EAAgBhlD,KAAMgvG,EAEtB,IAAI7rD,GAAQ+oD,EAA2BlsG,KAAMuH,OAAOslG,eAAemC,GAAezuG,KAAKP,KAAM6D,EAASs8C,EAAMipD,GAI5G,OAFAjmD,GAAMomD,SAAWA,EACjBpmD,EAAM8rD,mCAAoC,EACnC9rD,EAoET,MA7EAipD,GAAU4C,EAAed,GAYzB9oD,EAAa4pD,IACXllG,IAAK,SACL1E,MAAO,WACL,GAA0BuB,SAAtB3G,KAAKupG,SAAS5tC,KAA6Ch1D,SAAxB3G,KAAKupG,SAASnqE,OAAgDz4B,SAAzB3G,KAAKupG,SAASlqE,QACxF,IAAKr/B,KAAKo/B,MAAO,CACf,GAAI+uE,GAA+B,EAApBnuG,KAAK6D,QAAQg7B,IAC5B7+B,MAAKo/B,MAAQ+uE,EACbnuG,KAAKq/B,OAAS8uE,EACdnuG,KAAKivG,mCAAoC,EACzCjvG,KAAKy2C,OAAS,GAAMz2C,KAAKo/B,WAGvBp/B,MAAKivG,oCACPjvG,KAAKo/B,MAAQz4B,OACb3G,KAAKq/B,OAAS14B,OACd3G,KAAKivG,mCAAoC,GAE3CjvG,KAAKkvG,kBAITplG,IAAK,OACL1E,MAAO,SAAc+sC,EAAK3T,EAAGxc,EAAGomC,EAAU75C,GACxCvO,KAAK6pG,SAEL7pG,KAAK8I,KAAO01B,EAAIx+B,KAAKo/B,MAAQ,EAC7Bp/B,KAAKgJ,IAAMgZ,EAAIhiB,KAAKq/B,OAAS,CAE7B,IAAIR,GAAOv5B,KAAKL,IAAI,GAAMjF,KAAKq/B,OAAQ,GAAMr/B,KAAKo/B,MAGlDp/B,MAAKouG,eAAej8D,EAAK3T,EAAGxc,EAAGomC,EAAU75C,EAAOswB,GAGhDsT,EAAIi7D,OAEJj7D,EAAIg9D,OAEJnvG,KAAKovG,qBAAqBj9D,GAE1BA,EAAIo7D,UAEJvtG,KAAKqvG,gBAAgBl9D,EAAK3T,EAAGxc,EAAGomC,GAEhCpoD,KAAK4pG,kBAAkBprE,EAAGxc,MAG5BlY,IAAK,oBACL1E,MAAO,SAA2Bo5B,EAAGxc,GACnChiB,KAAK6mG,YAAY79F,IAAMgZ,EAAIhiB,KAAK6D,QAAQg7B,KACxC7+B,KAAK6mG,YAAY/9F,KAAO01B,EAAIx+B,KAAK6D,QAAQg7B,KACzC7+B,KAAK6mG,YAAYp0D,MAAQjU,EAAIx+B,KAAK6D,QAAQg7B,KAC1C7+B,KAAK6mG,YAAY33D,OAASltB,EAAIhiB,KAAK6D,QAAQg7B,KAC3C7+B,KAAK6mG,YAAY/9F,KAAOxD,KAAKL,IAAIjF,KAAK6mG,YAAY/9F,KAAM9I,KAAKopG,YAAYvqE,KAAK/1B,MAC9E9I,KAAK6mG,YAAYp0D,MAAQntC,KAAKJ,IAAIlF,KAAK6mG,YAAYp0D,MAAOzyC,KAAKopG,YAAYvqE,KAAK/1B,KAAO9I,KAAKopG,YAAYvqE,KAAKO,OAC7Gp/B,KAAK6mG,YAAY33D,OAAS5pC,KAAKJ,IAAIlF,KAAK6mG,YAAY33D,OAAQlvC,KAAK6mG,YAAY33D,OAASlvC,KAAKsuG,gBAG7FxkG,IAAK,mBACL1E,MAAO,SAA0B+sC,EAAKkmB,GAEpC,MADAr4D,MAAK6pG,OAAO13D,GACQ,GAAbnyC,KAAKo/B,UAIT4vE,GACPhB,EAAAA,WAEFpuG,GAAAA,WAAkBovG,GAId,SAASnvG,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBunD,EAAavsG,EAAoB,IAEjCwsG,EAAaptD,EAAuBmtD,GAUpC6C,EAAW,SAAU1C,GAGvB,QAAS0C,GAASzrG,EAASs8C,EAAMipD,GAG/B,MAFApkD,GAAgBhlD,KAAMsvG,GAEfpD,EAA2BlsG,KAAMuH,OAAOslG,eAAeyC,GAAU/uG,KAAKP,KAAM6D,EAASs8C,EAAMipD,IA0EpG,MA/EAgD,GAAUkD,EAAU1C,GAQpBxnD,EAAakqD,IACXxlG,IAAK,SACL1E,MAAO,SAAgB+sC,EAAKiW,GAC1B,GAAmBzhD,SAAf3G,KAAKo/B,MAAqB,CAC5B,GAAI+F,GAAS,EACT2nE,EAAW9sG,KAAKopG,YAAY2D,YAAY56D,EAAKiW,GAC7CvpB,EAAOiuE,EAAS1tE,MAAQ,EAAI+F,CAChCnlC,MAAKo/B,MAAQP,EACb7+B,KAAKq/B,OAASR,EACd7+B,KAAKy2C,OAAS,GAAMz2C,KAAKo/B,UAI7Bt1B,IAAK,OACL1E,MAAO,SAAc+sC,EAAK3T,EAAGxc,EAAGomC,EAAU75C,GACxCvO,KAAK6pG,OAAO13D,EAAKiW,GACjBpoD,KAAK8I,KAAO01B,EAAIx+B,KAAKo/B,MAAQ,EAC7Bp/B,KAAKgJ,IAAMgZ,EAAIhiB,KAAKq/B,OAAS,CAE7B,IAAIovE,GAAqBzuG,KAAK6D,QAAQ8nC,YAClCqhE,EAAqBhtG,KAAK6D,QAAQ6gG,qBAAuB,EAAI1kG,KAAK6D,QAAQ8nC,YAC1EA,GAAeyc,EAAW4kD,EAAqByB,GAAsBzuG,KAAKmgD,KAAK+8C,KAAK73F,KACxF8sC,GAAIO,UAAYptC,KAAKL,IAAIjF,KAAKo/B,MAAOuM,GAErCwG,EAAIY,YAAcqV,EAAWpoD,KAAK6D,QAAQ+I,MAAM0B,UAAUD,OAASE,EAAQvO,KAAK6D,QAAQ+I,MAAM2B,MAAMF,OAASrO,KAAK6D,QAAQ+I,MAAMyB,OAEhI8jC,EAAIiB,UAAYgV,EAAWpoD,KAAK6D,QAAQ+I,MAAM0B,UAAUF,WAAaG,EAAQvO,KAAK6D,QAAQ+I,MAAM2B,MAAMH,WAAapO,KAAK6D,QAAQ+I,MAAMwB,WACtI+jC,EAAIo9D,SAAS/wE,EAAIx+B,KAAKo/B,MAAQ,EAAGpd,EAAkB,GAAdhiB,KAAKq/B,OAAcr/B,KAAKo/B,MAAOp/B,KAAKq/B,QAGzEr/B,KAAKktG,aAAa/6D,GAElBA,EAAI9J,OAEJroC,KAAKmtG,cAAch7D,GAGnBA,EAAIi7D,OAEAzhE,EAAc,IAChB3rC,KAAKqtG,mBAAmBl7D,GAExBA,EAAI7J,SAEJtoC,KAAKstG,oBAAoBn7D,IAE3BA,EAAIo7D,UAEJvtG,KAAK4pG,kBAAkBprE,EAAGxc,EAAGmwB,EAAKiW,GAClCpoD,KAAKopG,YAAY9+C,KAAKnY,EAAK3T,EAAGxc,EAAGomC,MAGnCt+C,IAAK,oBACL1E,MAAO,SAA2Bo5B,EAAGxc,EAAGmwB,EAAKiW,GAC3CpoD,KAAK6pG,OAAO13D,EAAKiW,GAEjBpoD,KAAK8I,KAAO01B,EAAiB,GAAbx+B,KAAKo/B,MACrBp/B,KAAKgJ,IAAMgZ,EAAkB,GAAdhiB,KAAKq/B,OAEpBr/B,KAAK6mG,YAAY/9F,KAAO9I,KAAK8I,KAC7B9I,KAAK6mG,YAAY79F,IAAMhJ,KAAKgJ,IAC5BhJ,KAAK6mG,YAAY33D,OAASlvC,KAAKgJ,IAAMhJ,KAAKq/B,OAC1Cr/B,KAAK6mG,YAAYp0D,MAAQzyC,KAAK8I,KAAO9I,KAAKo/B,SAG5Ct1B,IAAK,mBACL1E,MAAO,SAA0B+sC,EAAKkmB,GACpC,MAAOr4D,MAAKwvG,kBAAkBr9D,EAAKkmB,OAIhCi3C,GACP5C,EAAAA,WAEF9sG,GAAAA,WAAkB0vG,GAId,SAASzvG,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBuqD,EAAcvvG,EAAoB,IAElCwvG,EAAcpwD,EAAuBmwD,GAUrCE,EAAU,SAAUC,GAGtB,QAASD,GAAQ9rG,EAASs8C,EAAMipD,GAG9B,MAFApkD,GAAgBhlD,KAAM2vG,GAEfzD,EAA2BlsG,KAAMuH,OAAOslG,eAAe8C,GAASpvG,KAAKP,KAAM6D,EAASs8C,EAAMipD,IAoBnG,MAzBAgD,GAAUuD,EAASC,GAQnBxqD,EAAauqD,IACX7lG,IAAK,SACL1E,MAAO,SAAgB+sC,GACrBnyC,KAAK6vG,kBAGP/lG,IAAK,OACL1E,MAAO,SAAc+sC,EAAK3T,EAAGxc,EAAGomC,EAAU75C,GACxCvO,KAAK8vG,WAAW39D,EAAK,UAAW,EAAG3T,EAAGxc,EAAGomC,EAAU75C,MAGrDzE,IAAK,mBACL1E,MAAO,SAA0B+sC,EAAKkmB,GACpC,MAAOr4D,MAAKwvG,kBAAkBr9D,EAAKkmB,OAIhCs3C,GACPD,EAAAA,WAEF9vG,GAAAA,WAAkB+vG,GAId,SAAS9vG,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBunD,EAAavsG,EAAoB,IAEjCwsG,EAAaptD,EAAuBmtD,GAUpCsD,EAAY,SAAUnD,GAGxB,QAASmD,GAAUlsG,EAASs8C,EAAMipD,GAGhC,MAFApkD,GAAgBhlD,KAAM+vG,GAEf7D,EAA2BlsG,KAAMuH,OAAOslG,eAAekD,GAAWxvG,KAAKP,KAAM6D,EAASs8C,EAAMipD,IAwErG,MA7EAgD,GAAU2D,EAAWnD,GAQrBxnD,EAAa2qD,IACXjmG,IAAK,eACL1E,MAAO,WACL,GAAmBuB,SAAf3G,KAAKo/B,MAAqB,CAC5B,GAAIP,GAAO,EAAI7+B,KAAK6D,QAAQg7B,IAC5B7+B,MAAKo/B,MAAQP,EACb7+B,KAAKq/B,OAASR,EACd7+B,KAAKy2C,OAAS,GAAMz2C,KAAKo/B,UAI7Bt1B,IAAK,aACL1E,MAAO,SAAoB+sC,EAAKqzD,EAAOwK,EAAgBxxE,EAAGxc,EAAGomC,EAAU75C,GACrEvO,KAAK6vG,eAEL7vG,KAAK8I,KAAO01B,EAAIx+B,KAAKo/B,MAAQ,EAC7Bp/B,KAAKgJ,IAAMgZ,EAAIhiB,KAAKq/B,OAAS,CAE7B,IAAIovE,GAAqBzuG,KAAK6D,QAAQ8nC,YAClCqhE,EAAqBhtG,KAAK6D,QAAQ6gG,qBAAuB,EAAI1kG,KAAK6D,QAAQ8nC,YAC1EA,GAAeyc,EAAW4kD,EAAqByB,GAAsBzuG,KAAKmgD,KAAK+8C,KAAK73F,KA0BxF,IAzBA8sC,EAAIO,UAAYptC,KAAKL,IAAIjF,KAAKo/B,MAAOuM,GAErCwG,EAAIY,YAAcqV,EAAWpoD,KAAK6D,QAAQ+I,MAAM0B,UAAUD,OAASE,EAAQvO,KAAK6D,QAAQ+I,MAAM2B,MAAMF,OAASrO,KAAK6D,QAAQ+I,MAAMyB,OAChI8jC,EAAIiB,UAAYgV,EAAWpoD,KAAK6D,QAAQ+I,MAAM0B,UAAUF,WAAaG,EAAQvO,KAAK6D,QAAQ+I,MAAM2B,MAAMH,WAAapO,KAAK6D,QAAQ+I,MAAMwB,WACtI+jC,EAAIqzD,GAAOhnE,EAAGxc,EAAGhiB,KAAK6D,QAAQg7B,MAG9B7+B,KAAKktG,aAAa/6D,GAElBA,EAAI9J,OAEJroC,KAAKmtG,cAAch7D,GAGnBA,EAAIi7D,OAEAzhE,EAAc,IAChB3rC,KAAKqtG,mBAAmBl7D,GAExBA,EAAI7J,SAEJtoC,KAAKstG,oBAAoBn7D,IAE3BA,EAAIo7D,UAEuB5mG,SAAvB3G,KAAK6D,QAAQi7B,MAAqB,CACpC,GAAIyG,GAASvjB,EAAI,GAAMhiB,KAAKq/B,OAAS,CACrCr/B,MAAKopG,YAAY9+C,KAAKnY,EAAK3T,EAAG+G,EAAQ6iB,EAAU,WAGlDpoD,KAAK4pG,kBAAkBprE,EAAGxc,MAG5BlY,IAAK,oBACL1E,MAAO,SAA2Bo5B,EAAGxc,GACnChiB,KAAK6mG,YAAY79F,IAAMgZ,EAAIhiB,KAAK6D,QAAQg7B,KACxC7+B,KAAK6mG,YAAY/9F,KAAO01B,EAAIx+B,KAAK6D,QAAQg7B,KACzC7+B,KAAK6mG,YAAYp0D,MAAQjU,EAAIx+B,KAAK6D,QAAQg7B,KAC1C7+B,KAAK6mG,YAAY33D,OAASltB,EAAIhiB,KAAK6D,QAAQg7B,KAEhBl4B,SAAvB3G,KAAK6D,QAAQi7B,OAAuB9+B,KAAKopG,YAAYvqE,KAAKO,MAAQ,IACpEp/B,KAAK6mG,YAAY/9F,KAAOxD,KAAKL,IAAIjF,KAAK6mG,YAAY/9F,KAAM9I,KAAKopG,YAAYvqE,KAAK/1B,MAC9E9I,KAAK6mG,YAAYp0D,MAAQntC,KAAKJ,IAAIlF,KAAK6mG,YAAYp0D,MAAOzyC,KAAKopG,YAAYvqE,KAAK/1B,KAAO9I,KAAKopG,YAAYvqE,KAAKO,OAC7Gp/B,KAAK6mG,YAAY33D,OAAS5pC,KAAKJ,IAAIlF,KAAK6mG,YAAY33D,OAAQlvC,KAAK6mG,YAAY33D,OAASlvC,KAAKopG,YAAYvqE,KAAKQ,OAAS,QAKpH0wE,GACPrD,EAAAA,WAEF9sG,GAAAA,WAAkBmwG,GAId,SAASlwG,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBuqD,EAAcvvG,EAAoB,IAElCwvG,EAAcpwD,EAAuBmwD,GAUrCQ,EAAM,SAAUL,GAGlB,QAASK,GAAIpsG,EAASs8C,EAAMipD,GAG1B,MAFApkD,GAAgBhlD,KAAMiwG,GAEf/D,EAA2BlsG,KAAMuH,OAAOslG,eAAeoD,GAAK1vG,KAAKP,KAAM6D,EAASs8C,EAAMipD,IAqB/F,MA1BAgD,GAAU6D,EAAKL,GAQfxqD,EAAa6qD,IACXnmG,IAAK,SACL1E,MAAO,SAAgB+sC,GACrBnyC,KAAK6vG,kBAGP/lG,IAAK,OACL1E,MAAO,SAAc+sC,EAAK3T,EAAGxc,EAAGomC,EAAU75C,GACxCvO,KAAK8vG,WAAW39D,EAAK,SAAU,EAAG3T,EAAGxc,EAAGomC,EAAU75C,MAGpDzE,IAAK,mBACL1E,MAAO,SAA0B+sC,EAAKkmB,GAEpC,MADAr4D,MAAK6pG,OAAO13D,GACLnyC,KAAK6D,QAAQg7B,SAIjBoxE,GACPP,EAAAA,WAEF9vG,GAAAA,WAAkBqwG,GAId,SAASpwG,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBunD,EAAavsG,EAAoB,IAEjCwsG,EAAaptD,EAAuBmtD,GAUpCyD,EAAU,SAAUtD,GAGtB,QAASsD,GAAQrsG,EAASs8C,EAAMipD,GAG9B,MAFApkD,GAAgBhlD,KAAMkwG,GAEfhE,EAA2BlsG,KAAMuH,OAAOslG,eAAeqD,GAAS3vG,KAAKP,KAAM6D,EAASs8C,EAAMipD,IAmFnG,MAxFAgD,GAAU8D,EAAStD,GAQnBxnD,EAAa8qD,IACXpmG,IAAK,SACL1E,MAAO,SAAgB+sC,EAAKiW,GAC1B,GAAmBzhD,SAAf3G,KAAKo/B,MAAqB,CAC5B,GAAI0tE,GAAW9sG,KAAKopG,YAAY2D,YAAY56D,EAAKiW,EAEjDpoD,MAAKo/B,MAAyB,IAAjB0tE,EAAS1tE,MACtBp/B,KAAKq/B,OAA2B,EAAlBytE,EAASztE,OACnBr/B,KAAKo/B,MAAQp/B,KAAKq/B,SACpBr/B,KAAKo/B,MAAQp/B,KAAKq/B,QAEpBr/B,KAAKy2C,OAAS,GAAMz2C,KAAKo/B,UAI7Bt1B,IAAK,OACL1E,MAAO,SAAc+sC,EAAK3T,EAAGxc,EAAGomC,EAAU75C,GACxCvO,KAAK6pG,OAAO13D,EAAKiW,GACjBpoD,KAAK8I,KAAO01B,EAAiB,GAAbx+B,KAAKo/B,MACrBp/B,KAAKgJ,IAAMgZ,EAAkB,GAAdhiB,KAAKq/B,MAEpB,IAAIovE,GAAqBzuG,KAAK6D,QAAQ8nC,YAClCqhE,EAAqBhtG,KAAK6D,QAAQ6gG,qBAAuB,EAAI1kG,KAAK6D,QAAQ8nC,YAC1EA,GAAeyc,EAAW4kD,EAAqByB,GAAsBzuG,KAAKmgD,KAAK+8C,KAAK73F,KACxF8sC,GAAIO,UAAYptC,KAAKL,IAAIjF,KAAKo/B,MAAOuM,GAErCwG,EAAIY,YAAcqV,EAAWpoD,KAAK6D,QAAQ+I,MAAM0B,UAAUD,OAASE,EAAQvO,KAAK6D,QAAQ+I,MAAM2B,MAAMF,OAASrO,KAAK6D,QAAQ+I,MAAMyB,OAEhI8jC,EAAIiB,UAAYgV,EAAWpoD,KAAK6D,QAAQ+I,MAAM0B,UAAUF,WAAaG,EAAQvO,KAAK6D,QAAQ+I,MAAM2B,MAAMH,WAAapO,KAAK6D,QAAQ+I,MAAMwB,WACtI+jC,EAAIg+D,QAAQnwG,KAAK8I,KAAM9I,KAAKgJ,IAAKhJ,KAAKo/B,MAAOp/B,KAAKq/B,QAGlDr/B,KAAKktG,aAAa/6D,GAElBA,EAAI9J,OAEJroC,KAAKmtG,cAAch7D,GAGnBA,EAAIi7D,OAGAzhE,EAAc,IAChB3rC,KAAKqtG,mBAAmBl7D,GAExBA,EAAI7J,SAEJtoC,KAAKstG,oBAAoBn7D,IAG3BA,EAAIo7D,UAEJvtG,KAAK4pG,kBAAkBprE,EAAGxc,EAAGmwB,EAAKiW,GAClCpoD,KAAKopG,YAAY9+C,KAAKnY,EAAK3T,EAAGxc,EAAGomC,MAGnCt+C,IAAK,oBACL1E,MAAO,SAA2Bo5B,EAAGxc,EAAGmwB,EAAKiW,GAC3CpoD,KAAK6pG,OAAO13D,EAAKiW,GAEjBpoD,KAAK8I,KAAO01B,EAAiB,GAAbx+B,KAAKo/B,MACrBp/B,KAAKgJ,IAAMgZ,EAAkB,GAAdhiB,KAAKq/B,OAEpBr/B,KAAK6mG,YAAY/9F,KAAO9I,KAAK8I,KAC7B9I,KAAK6mG,YAAY79F,IAAMhJ,KAAKgJ,IAC5BhJ,KAAK6mG,YAAY33D,OAASlvC,KAAKgJ,IAAMhJ,KAAKq/B,OAC1Cr/B,KAAK6mG,YAAYp0D,MAAQzyC,KAAK8I,KAAO9I,KAAKo/B,SAG5Ct1B,IAAK,mBACL1E,MAAO,SAA0B+sC,EAAKkmB,GACpCr4D,KAAK6pG,OAAO13D,EACZ,IAAI7rC,GAAiB,GAAbtG,KAAKo/B,MACT74B,EAAkB,GAAdvG,KAAKq/B,OACTxa,EAAIvf,KAAK4kC,IAAImuB,GAAS/xD,EACtBuH,EAAIvI,KAAK+kC,IAAIguB,GAAS9xD,CAC1B,OAAOD,GAAIC,EAAIjB,KAAK+0C,KAAKx1B,EAAIA,EAAIhX,EAAIA,OAIlCqiG,GACPxD,EAAAA,WAEF9sG,GAAAA,WAAkBswG,GAId,SAASrwG,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBunD,EAAavsG,EAAoB,IAEjCwsG,EAAaptD,EAAuBmtD,GAUpC2D,EAAO,SAAUxD,GAGnB,QAASwD,GAAKvsG,EAASs8C,EAAMipD,GAG3B,MAFApkD,GAAgBhlD,KAAMowG,GAEflE,EAA2BlsG,KAAMuH,OAAOslG,eAAeuD,GAAM7vG,KAAKP,KAAM6D,EAASs8C,EAAMipD,IA+EhG,MApFAgD,GAAUgE,EAAMxD,GAQhBxnD,EAAagrD,IACXtmG,IAAK,SACL1E,MAAO,SAAgB+sC,GACrB,GAAmBxrC,SAAf3G,KAAKo/B,MAAqB,CAC5B,GAAI+F,GAAS,EACTu2D,GACFt8D,MAAO16B,OAAO1E,KAAK6D,QAAQs0F,KAAKt5D,MAChCQ,OAAQ36B,OAAO1E,KAAK6D,QAAQs0F,KAAKt5D,MAEnC7+B,MAAKo/B,MAAQs8D,EAASt8D,MAAQ,EAAI+F,EAClCnlC,KAAKq/B,OAASq8D,EAASr8D,OAAS,EAAI8F,EACpCnlC,KAAKy2C,OAAS,GAAMz2C,KAAKo/B,UAI7Bt1B,IAAK,OACL1E,MAAO,SAAc+sC,EAAK3T,EAAGxc,EAAGomC,EAAU75C,GAQxC,GAPAvO,KAAK6pG,OAAO13D,GACZnyC,KAAK6D,QAAQs0F,KAAKt5D,KAAO7+B,KAAK6D,QAAQs0F,KAAKt5D,MAAQ,GAEnD7+B,KAAK8I,KAAO01B,EAAiB,GAAbx+B,KAAKo/B,MACrBp/B,KAAKgJ,IAAMgZ,EAAkB,GAAdhiB,KAAKq/B,OACpBr/B,KAAKqwG,MAAMl+D,EAAK3T,EAAGxc,EAAGomC,GAEKzhD,SAAvB3G,KAAK6D,QAAQi7B,MAAqB,CACpC,GAAIwxE,GAAkB,CACtBtwG,MAAKopG,YAAY9+C,KAAKnY,EAAK3T,EAAGxc,EAAkB,GAAdhiB,KAAKq/B,OAAeixE,EAAiBloD,GAGzEpoD,KAAK4pG,kBAAkBprE,EAAGxc,MAG5BlY,IAAK,oBACL1E,MAAO,SAA2Bo5B,EAAGxc,GAMnC,GALAhiB,KAAK6mG,YAAY79F,IAAMgZ,EAA6B,GAAzBhiB,KAAK6D,QAAQs0F,KAAKt5D,KAC7C7+B,KAAK6mG,YAAY/9F,KAAO01B,EAA6B,GAAzBx+B,KAAK6D,QAAQs0F,KAAKt5D,KAC9C7+B,KAAK6mG,YAAYp0D,MAAQjU,EAA6B,GAAzBx+B,KAAK6D,QAAQs0F,KAAKt5D,KAC/C7+B,KAAK6mG,YAAY33D,OAASltB,EAA6B,GAAzBhiB,KAAK6D,QAAQs0F,KAAKt5D,KAErBl4B,SAAvB3G,KAAK6D,QAAQi7B,OAAuB9+B,KAAKopG,YAAYvqE,KAAKO,MAAQ,EAAG,CACvE,GAAIkxE,GAAkB,CACtBtwG,MAAK6mG,YAAY/9F,KAAOxD,KAAKL,IAAIjF,KAAK6mG,YAAY/9F,KAAM9I,KAAKopG,YAAYvqE,KAAK/1B,MAC9E9I,KAAK6mG,YAAYp0D,MAAQntC,KAAKJ,IAAIlF,KAAK6mG,YAAYp0D,MAAOzyC,KAAKopG,YAAYvqE,KAAK/1B,KAAO9I,KAAKopG,YAAYvqE,KAAKO,OAC7Gp/B,KAAK6mG,YAAY33D,OAAS5pC,KAAKJ,IAAIlF,KAAK6mG,YAAY33D,OAAQlvC,KAAK6mG,YAAY33D,OAASlvC,KAAKopG,YAAYvqE,KAAKQ,OAASixE,OAIzHxmG,IAAK,QACL1E,MAAO,SAAe+sC,EAAK3T,EAAGxc,EAAGomC,GAC/B,GAAIszC,GAAWh3F,OAAO1E,KAAK6D,QAAQs0F,KAAKt5D,KAETl4B,UAA3B3G,KAAK6D,QAAQs0F,KAAK9+E,MACpB84B,EAAIQ,MAAQyV,EAAW,QAAU,IAAMszC,EAAW,MAAQ17F,KAAK6D,QAAQs0F,KAAK0M,KAG5E1yD,EAAIiB,UAAYpzC,KAAK6D,QAAQs0F,KAAKvrF,OAAS,QAC3CulC,EAAIwB,UAAY,SAChBxB,EAAIyB,aAAe,SAGnB5zC,KAAKktG,aAAa/6D,GAClBA,EAAI0B,SAAS7zC,KAAK6D,QAAQs0F,KAAK9+E,KAAMmlB,EAAGxc,GAGxChiB,KAAKmtG,cAAch7D,IAEnB56B,QAAQqzC,MAAM,gIAIlB9gD,IAAK,mBACL1E,MAAO,SAA0B+sC,EAAKkmB,GACpC,MAAOr4D,MAAKwvG,kBAAkBr9D,EAAKkmB,OAIhC+3C,GACP1D,EAAAA,WAEF9sG,GAAAA,WAAkBwwG,GAId,SAASvwG,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hB6oD,EAAoB7tG,EAAoB,IAExC8tG,EAAoB1uD,EAAuByuD,GAU3C3K,EAAQ,SAAU8K,GAGpB,QAAS9K,GAAMv/F,EAASs8C,EAAMipD,EAAaG,GACzCvkD,EAAgBhlD,KAAMojG,EAEtB,IAAIjgD,GAAQ+oD,EAA2BlsG,KAAMuH,OAAOslG,eAAezJ,GAAO7iG,KAAKP,KAAM6D,EAASs8C,EAAMipD,GAGpG,OADAjmD,GAAMomD,SAAWA,EACVpmD,EA+ET,MAvFAipD,GAAUhJ,EAAO8K,GAWjB9oD,EAAag+C,IACXt5F,IAAK,SACL1E,MAAO,WACLpF,KAAKkvG,kBAGPplG,IAAK,OACL1E,MAAO,SAAc+sC,EAAK3T,EAAGxc,EAAGomC,EAAU75C,GAKxC,GAJAvO,KAAK6pG,SACL7pG,KAAK8I,KAAO01B,EAAIx+B,KAAKo/B,MAAQ,EAC7Bp/B,KAAKgJ,IAAMgZ,EAAIhiB,KAAKq/B,OAAS,EAEzBr/B,KAAK6D,QAAQ4hG,gBAAgBG,sBAAuB,EAAM,CAC5D,GAAI6I,GAAqBzuG,KAAK6D,QAAQ8nC,YAClCqhE,EAAqBhtG,KAAK6D,QAAQ6gG,qBAAuB,EAAI1kG,KAAK6D,QAAQ8nC,YAC1EA,GAAeyc,EAAW4kD,EAAqByB,GAAsBzuG,KAAKmgD,KAAK+8C,KAAK73F,KACxF8sC,GAAIO,UAAYptC,KAAKL,IAAIjF,KAAKo/B,MAAOuM,GAErCwG,EAAIa,YAGJb,EAAIY,YAAcqV,EAAWpoD,KAAK6D,QAAQ+I,MAAM0B,UAAUD,OAASE,EAAQvO,KAAK6D,QAAQ+I,MAAM2B,MAAMF,OAASrO,KAAK6D,QAAQ+I,MAAMyB,OAGhI8jC,EAAIiB,UAAYgV,EAAWpoD,KAAK6D,QAAQ+I,MAAM0B,UAAUF,WAAaG,EAAQvO,KAAK6D,QAAQ+I,MAAM2B,MAAMH,WAAapO,KAAK6D,QAAQ+I,MAAMwB,WAGtI+jC,EAAI7S,KAAKt/B,KAAK8I,KAAO,GAAMqpC,EAAIO,UAAW1yC,KAAKgJ,IAAM,GAAMmpC,EAAIO,UAAW1yC,KAAKo/B,MAAQ+S,EAAIO,UAAW1yC,KAAKq/B,OAAS8S,EAAIO,WACxHP,EAAI9J,OAGJ8J,EAAIi7D,OAEAzhE,EAAc,IAChB3rC,KAAKqtG,mBAAmBl7D,GAExBA,EAAI7J,SAEJtoC,KAAKstG,oBAAoBn7D,IAE3BA,EAAIo7D,UAEJp7D,EAAIkB,YAGNrzC,KAAKovG,qBAAqBj9D,GAE1BnyC,KAAKqvG,gBAAgBl9D,EAAK3T,EAAGxc,EAAGomC,GAAY75C,GAE5CvO,KAAK4pG,kBAAkBprE,EAAGxc,MAG5BlY,IAAK,oBACL1E,MAAO,SAA2Bo5B,EAAGxc,GACnChiB,KAAK6pG,SACL7pG,KAAK8I,KAAO01B,EAAIx+B,KAAKo/B,MAAQ,EAC7Bp/B,KAAKgJ,IAAMgZ,EAAIhiB,KAAKq/B,OAAS,EAE7Br/B,KAAK6mG,YAAY79F,IAAMhJ,KAAKgJ,IAC5BhJ,KAAK6mG,YAAY/9F,KAAO9I,KAAK8I,KAC7B9I,KAAK6mG,YAAYp0D,MAAQzyC,KAAK8I,KAAO9I,KAAKo/B,MAC1Cp/B,KAAK6mG,YAAY33D,OAASlvC,KAAKgJ,IAAMhJ,KAAKq/B,OAEf14B,SAAvB3G,KAAK6D,QAAQi7B,OAAuB9+B,KAAKopG,YAAYvqE,KAAKO,MAAQ,IACpEp/B,KAAK6mG,YAAY/9F,KAAOxD,KAAKL,IAAIjF,KAAK6mG,YAAY/9F,KAAM9I,KAAKopG,YAAYvqE,KAAK/1B,MAC9E9I,KAAK6mG,YAAYp0D,MAAQntC,KAAKJ,IAAIlF,KAAK6mG,YAAYp0D,MAAOzyC,KAAKopG,YAAYvqE,KAAK/1B,KAAO9I,KAAKopG,YAAYvqE,KAAKO,OAC7Gp/B,KAAK6mG,YAAY33D,OAAS5pC,KAAKJ,IAAIlF,KAAK6mG,YAAY33D,OAAQlvC,KAAK6mG,YAAY33D,OAASlvC,KAAKsuG,iBAI/FxkG,IAAK,mBACL1E,MAAO,SAA0B+sC,EAAKkmB,GACpC,MAAOr4D,MAAKwvG,kBAAkBr9D,EAAKkmB,OAIhC+qC,GACP4K,EAAAA,WAEFpuG,GAAAA,WAAkBwjG,GAId,SAASvjG,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBuqD,EAAcvvG,EAAoB,IAElCwvG,EAAcpwD,EAAuBmwD,GAUrCc,EAAS,SAAUX,GAGrB,QAASW,GAAO1sG,EAASs8C,EAAMipD,GAG7B,MAFApkD,GAAgBhlD,KAAMuwG,GAEfrE,EAA2BlsG,KAAMuH,OAAOslG,eAAe0D,GAAQhwG,KAAKP,KAAM6D,EAASs8C,EAAMipD,IAoBlG,MAzBAgD,GAAUmE,EAAQX,GAQlBxqD,EAAamrD,IACXzmG,IAAK,SACL1E,MAAO,WACLpF,KAAK6vG,kBAGP/lG,IAAK,OACL1E,MAAO,SAAc+sC,EAAK3T,EAAGxc,EAAGomC,EAAU75C,GACxCvO,KAAK8vG,WAAW39D,EAAK,SAAU,EAAG3T,EAAGxc,EAAGomC,EAAU75C,MAGpDzE,IAAK,mBACL1E,MAAO,SAA0B+sC,EAAKkmB,GACpC,MAAOr4D,MAAKwvG,kBAAkBr9D,EAAKkmB,OAIhCk4C,GACPb,EAAAA,WAEF9vG,GAAAA,WAAkB2wG,GAId,SAAS1wG,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBuqD,EAAcvvG,EAAoB,IAElCwvG,EAAcpwD,EAAuBmwD,GAUrCe,EAAO,SAAUZ,GAGnB,QAASY,GAAK3sG,EAASs8C,EAAMipD,GAG3B,MAFApkD,GAAgBhlD,KAAMwwG,GAEftE,EAA2BlsG,KAAMuH,OAAOslG,eAAe2D,GAAMjwG,KAAKP,KAAM6D,EAASs8C,EAAMipD,IAoBhG,MAzBAgD,GAAUoE,EAAMZ,GAQhBxqD,EAAaorD,IACX1mG,IAAK,SACL1E,MAAO,SAAgB+sC,GACrBnyC,KAAK6vG,kBAGP/lG,IAAK,OACL1E,MAAO,SAAc+sC,EAAK3T,EAAGxc,EAAGomC,EAAU75C,GACxCvO,KAAK8vG,WAAW39D,EAAK,OAAQ,EAAG3T,EAAGxc,EAAGomC,EAAU75C,MAGlDzE,IAAK,mBACL1E,MAAO,SAA0B+sC,EAAKkmB,GACpC,MAAOr4D,MAAKwvG,kBAAkBr9D,EAAKkmB,OAIhCm4C,GACPd,EAAAA,WAEF9vG,GAAAA,WAAkB4wG,GAId,SAAS3wG,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBunD,EAAavsG,EAAoB,IAEjCwsG,EAAaptD,EAAuBmtD,GAUpCgE,EAAO,SAAU7D,GAGnB,QAAS6D,GAAK5sG,EAASs8C,EAAMipD,GAG3B,MAFApkD,GAAgBhlD,KAAMywG,GAEfvE,EAA2BlsG,KAAMuH,OAAOslG,eAAe4D,GAAMlwG,KAAKP,KAAM6D,EAASs8C,EAAMipD,IAkDhG,MAvDAgD,GAAUqE,EAAM7D,GAQhBxnD,EAAaqrD,IACX3mG,IAAK,SACL1E,MAAO,SAAgB+sC,EAAKiW,GAC1B,GAAmBzhD,SAAf3G,KAAKo/B,MAAqB,CAC5B,GAAI+F,GAAS,EACT2nE,EAAW9sG,KAAKopG,YAAY2D,YAAY56D,EAAKiW,EACjDpoD,MAAKo/B,MAAQ0tE,EAAS1tE,MAAQ,EAAI+F,EAClCnlC,KAAKq/B,OAASytE,EAASztE,OAAS,EAAI8F,EACpCnlC,KAAKy2C,OAAS,GAAMz2C,KAAKo/B,UAI7Bt1B,IAAK,OACL1E,MAAO,SAAc+sC,EAAK3T,EAAGxc,EAAGomC,EAAU75C,GACxCvO,KAAK6pG,OAAO13D,EAAKiW,GAAY75C,GAC7BvO,KAAK8I,KAAO01B,EAAIx+B,KAAKo/B,MAAQ,EAC7Bp/B,KAAKgJ,IAAMgZ,EAAIhiB,KAAKq/B,OAAS,EAG7Br/B,KAAKktG,aAAa/6D,GAClBnyC,KAAKopG,YAAY9+C,KAAKnY,EAAK3T,EAAGxc,EAAGomC,GAAY75C,GAG7CvO,KAAKmtG,cAAch7D,GAEnBnyC,KAAK4pG,kBAAkBprE,EAAGxc,EAAGmwB,EAAKiW,MAGpCt+C,IAAK,oBACL1E,MAAO,SAA2Bo5B,EAAGxc,EAAGmwB,EAAKiW,GAC3CpoD,KAAK6pG,OAAO13D,EAAKiW,GAEjBpoD,KAAK8I,KAAO01B,EAAIx+B,KAAKo/B,MAAQ,EAC7Bp/B,KAAKgJ,IAAMgZ,EAAIhiB,KAAKq/B,OAAS,EAE7Br/B,KAAK6mG,YAAY79F,IAAMhJ,KAAKgJ,IAC5BhJ,KAAK6mG,YAAY/9F,KAAO9I,KAAK8I,KAC7B9I,KAAK6mG,YAAYp0D,MAAQzyC,KAAK8I,KAAO9I,KAAKo/B,MAC1Cp/B,KAAK6mG,YAAY33D,OAASlvC,KAAKgJ,IAAMhJ,KAAKq/B,UAG5Cv1B,IAAK,mBACL1E,MAAO,SAA0B+sC,EAAKkmB,GACpC,MAAOr4D,MAAKwvG,kBAAkBr9D,EAAKkmB,OAIhCo4C,GACP/D,EAAAA,WAEF9sG,GAAAA,WAAkB6wG,GAId,SAAS5wG,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBuqD,EAAcvvG,EAAoB,IAElCwvG,EAAcpwD,EAAuBmwD,GAUrCiB,EAAW,SAAUd,GAGvB,QAASc,GAAS7sG,EAASs8C,EAAMipD,GAG/B,MAFApkD,GAAgBhlD,KAAM0wG,GAEfxE,EAA2BlsG,KAAMuH,OAAOslG,eAAe6D,GAAUnwG,KAAKP,KAAM6D,EAASs8C,EAAMipD,IAoBpG,MAzBAgD,GAAUsE,EAAUd,GAQpBxqD,EAAasrD,IACX5mG,IAAK,SACL1E,MAAO,SAAgB+sC,GACrBnyC,KAAK6vG,kBAGP/lG,IAAK,OACL1E,MAAO,SAAc+sC,EAAK3T,EAAGxc,EAAGomC,EAAU75C,GACxCvO,KAAK8vG,WAAW39D,EAAK,WAAY,EAAG3T,EAAGxc,EAAGomC,EAAU75C,MAGtDzE,IAAK,mBACL1E,MAAO,SAA0B+sC,EAAKkmB,GACpC,MAAOr4D,MAAKwvG,kBAAkBr9D,EAAKkmB,OAIhCq4C,GACPhB,EAAAA,WAEF9vG,GAAAA,WAAkB8wG,GAId,SAAS7wG,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBuqD,EAAcvvG,EAAoB,IAElCwvG,EAAcpwD,EAAuBmwD,GAUrCkB,EAAe,SAAUf,GAG3B,QAASe,GAAa9sG,EAASs8C,EAAMipD,GAGnC,MAFApkD,GAAgBhlD,KAAM2wG,GAEfzE,EAA2BlsG,KAAMuH,OAAOslG,eAAe8D,GAAcpwG,KAAKP,KAAM6D,EAASs8C,EAAMipD,IAoBxG,MAzBAgD,GAAUuE,EAAcf,GAQxBxqD,EAAaurD,IACX7mG,IAAK,SACL1E,MAAO,SAAgB+sC,GACrBnyC,KAAK6vG,kBAGP/lG,IAAK,OACL1E,MAAO,SAAc+sC,EAAK3T,EAAGxc,EAAGomC,EAAU75C,GACxCvO,KAAK8vG,WAAW39D,EAAK,eAAgB,EAAG3T,EAAGxc,EAAGomC,EAAU75C,MAG1DzE,IAAK,mBACL1E,MAAO,SAA0B+sC,EAAKkmB,GACpC,MAAOr4D,MAAKwvG,kBAAkBr9D,EAAKkmB,OAIhCs4C,GACPjB,EAAAA,WAEF9vG,GAAAA,WAAkB+wG,GAId,SAAS9wG,EAAQD,EAASM,GAkB9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAhBhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hB0rD,EAAQ1wG,EAAoB,IAE5B2wG,EAASvxD,EAAuBsxD,GAEhCtM,EAASpkG,EAAoB,IAE7BqkG,EAAUjlD,EAAuBglD,GAMjC3jG,EAAOT,EAAoB,GAC3BW,EAAUX,EAAoB,GAC9BY,EAAWZ,EAAoB,IAE/B4wG,EAAe,WACjB,QAASA,GAAa3wD,EAAMi9C,EAAQ39C,GAClC,GAAI0D,GAAQnjD,IAEZglD,GAAgBhlD,KAAM8wG,GAEtB9wG,KAAKmgD,KAAOA,EACZngD,KAAKo9F,OAASA,EACdp9F,KAAKy/C,OAASA,EAGdz/C,KAAKmgD,KAAK48C,UAAUE,WAAaj9F,KAAKuQ,OAAO+vC,KAAKtgD,MAElDA,KAAK+wG,gBACH/pF,IAAK,SAAa/b,EAAOs1B,GACvB4iB,EAAMn8B,IAAIuZ,EAAOt+B,QAEnB6+B,OAAQ,SAAgB71B,EAAOs1B,GAC7B4iB,EAAMriB,OAAOP,EAAOt+B,QAEtBsgC,OAAQ,SAAgBt3B,EAAOs1B,GAC7B4iB,EAAM5gB,OAAOhC,EAAOt+B,SAIxBjC,KAAK6D,WACL7D,KAAK2/C,gBACHqxD,QACE17F,IAAMtE,SAAS,EAAOigG,YAAa,GACnCv/F,QAAUV,SAAS,EAAOigG,YAAa,GACvC17F,MAAQvE,SAAS,EAAOigG,YAAa,IAEvCC,oBAAoB,EACpBtkG,OACEA,MAAO,UACP0B,UAAW,UACXC,MAAO,UACPksD,QAAS,OACT5tD,QAAS,GAEXihG,QAAQ,EACRn7D,MACE/lC,MAAO,UACPiyB,KAAM,GACNgmE,KAAM,QACNz2F,WAAY,OACZm6B,YAAa,EACbu8D,YAAa,UACblsB,MAAO,cAET1F,QAAQ,EACRi+B,WAAY,IACZryE,MAAOn4B,OACPq+F,oBAAoB,EACpBt+F,OAAQC,OACR4jD,SAAS,EACT46C,SACElgG,IAAK,EACLC,IAAK,GACL45B,OACE9tB,SAAS,EACT/L,IAAK,GACLC,IAAK,GACLkgG,WAAY,GACZC,cAAe,GAEjBC,sBAAuB,SAA+BrgG,EAAKC,EAAKC,EAAOC,GACrE,GAAIF,IAAQD,EACV,MAAO,EAEP,IAAII,GAAQ,GAAKH,EAAMD,EACvB,OAAOK,MAAKJ,IAAI,GAAIE,EAAQH,GAAOI,KAIzC+rG,eAAgB,IAChBC,kBAAmB,GACnB9L,QACEv0F,SAAS,EACTpE,MAAO,kBACPiyB,KAAM,GACNL,EAAG,EACHxc,EAAG,GAELsvF,QACEtgG,SAAS,EACTjJ,KAAM,UACNwpG,eAAgB,OAChBC,UAAW,IAEb76B,MAAOhwE,OACPy4B,MAAO,EACPh6B,MAAOuB,QAGThG,EAAKoG,OAAO/G,KAAK6D,QAAS7D,KAAK2/C,gBAE/B3/C,KAAKm9F,qBA4TP,MAzTA/3C,GAAa0rD,IACXhnG,IAAK,qBACL1E,MAAO,WACL,GAAIwiD,GAAS5nD,IAGbA,MAAKmgD,KAAKE,QAAQrgB,GAAG,6BAA8B,SAAUj4B,GAC9C,YAATA,IACFA,EAAO,aAET,IAAI0pG,IAAa;AACjB,IAAK,GAAI3R,KAAUl4C,GAAOzH,KAAKg8C,MAC7B,GAAIv0C,EAAOzH,KAAKg8C,MAAM/1F,eAAe05F,GAAS,CAC5C,GAAIyC,GAAO36C,EAAOzH,KAAKg8C,MAAM2D,GACzB4R,EAAW9pD,EAAOzH,KAAK3mC,KAAK2iF,MAAM/zE,MAAM03E,EAI5C,IAAiBn5F,SAAb+qG,EAAwB,CAC1B,GAAIC,GAAcD,EAASJ,MACP3qG,UAAhBgrG,GACEA,EAAY3gG,WAAY,GAA6B,YAArB2gG,EAAY5pG,OACjCpB,SAAToB,EACFw6F,EAAK3iE,YAAa0xE,QAAQ,IAE1B/O,EAAK3iE,YAAa0xE,QAAUvpG,KAAMA,KAEpC0pG,GAAa,IAMnBA,KAAe,GACjB7pD,EAAOzH,KAAKE,QAAQ5H,KAAK,kBAK7Bz4C,KAAKmgD,KAAKE,QAAQrgB,GAAG,eAAgB,WACnC4nB,EAAOgqD,iBACPhqD,EAAOiqD,wBAIT7xG,KAAKmgD,KAAKE,QAAQrgB,GAAG,eAAgBhgC,KAAKskC,QAAQgc,KAAKtgD,OACvDA,KAAKmgD,KAAKE,QAAQrgB,GAAG,UAAWhgC,KAAKskC,QAAQgc,KAAKtgD,OAClDA,KAAKmgD,KAAKE,QAAQrgB,GAAG,UAAW,WAC9Br/B,EAAK8I,QAAQm+C,EAAOmpD,eAAgB,SAAUrnG,EAAUuB,GAClD28C,EAAOzH,KAAK3mC,KAAK2iF,OAAOv0C,EAAOzH,KAAK3mC,KAAK2iF,MAAMh8D,IAAIl1B,EAAOvB,WAEzDk+C,GAAOzH,KAAK48C,UAAUE,iBACtBr1C,GAAOmpD,eAAe/pF,UACtB4gC,GAAOmpD,eAAejwE,aACtB8mB,GAAOmpD,eAAexuE,aACtBqlB,GAAOmpD,oBAIlBjnG,IAAK,aACL1E,MAAO,SAAoBvB,GACzB,GAAgB8C,SAAZ9C,EAAuB,CAEzBgtG,EAAAA,WAAehL,aAAa7lG,KAAK6D,QAASA,GAGpB8C,SAAlB9C,EAAQ+I,OACV5M,KAAK6xG,qBAIP,IAAItL,IAAc,CAClB,IAAuB5/F,SAAnB9C,EAAQytG,OACV,IAAK,GAAIxR,KAAU9/F,MAAKmgD,KAAKg8C,MACvBn8F,KAAKmgD,KAAKg8C,MAAM/1F,eAAe05F,KACjCyG,EAAcvmG,KAAKmgD,KAAKg8C,MAAM2D,GAAQgS,kBAAoBvL,EAMhE,IAAqB5/F,SAAjB9C,EAAQ8uC,KAAoB,CAE9B4xD,EAAAA,WAAgBsB,aAAa7lG,KAAK6D,QAAQ8uC,KAAM9uC,EAChD,KAAK,GAAIkuG,KAAW/xG,MAAKmgD,KAAKg8C,MACxBn8F,KAAKmgD,KAAKg8C,MAAM/1F,eAAe2rG,IACjC/xG,KAAKmgD,KAAKg8C,MAAM4V,GAAShM,oBAMRp/F,SAAnB9C,EAAQqvE,QAA4CvsE,SAApB9C,EAAQ0mD,SAAyBg8C,KAAgB,GACnFvmG,KAAKmgD,KAAKE,QAAQ5H,KAAK,oBAa7B3uC,IAAK,UACL1E,MAAO,SAAiB+2F,GACtB,GAAItzC,GAAS7oD,KAETkmG,EAAYz/F,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpFurG,EAAehyG,KAAKmgD,KAAK3mC,KAAK2iF,KAElC,IAAIA,YAAiBt7F,IAAWs7F,YAAiBr7F,GAC/Cd,KAAKmgD,KAAK3mC,KAAK2iF,MAAQA,MAClB,IAAIj1F,MAAMC,QAAQg1F,GACvBn8F,KAAKmgD,KAAK3mC,KAAK2iF,MAAQ,GAAIt7F,GAC3Bb,KAAKmgD,KAAK3mC,KAAK2iF,MAAMn1E,IAAIm1E,OACpB,CAAA,GAAKA,EAGV,KAAM,IAAI70F,WAAU,4BAFpBtH,MAAKmgD,KAAK3mC,KAAK2iF,MAAQ,GAAIt7F,GAiB7B,GAXImxG,GAEFrxG,EAAK8I,QAAQzJ,KAAK+wG,eAAgB,SAAUrnG,EAAUuB,GACpD+mG,EAAa7xE,IAAIl1B,EAAOvB,KAK5B1J,KAAKmgD,KAAKg8C,SAGNn8F,KAAKmgD,KAAK3mC,KAAK2iF,MAAO,CAExBx7F,EAAK8I,QAAQzJ,KAAK+wG,eAAgB,SAAUrnG,EAAUuB,GACpD49C,EAAO1I,KAAK3mC,KAAK2iF,MAAMn8D,GAAG/0B,EAAOvB,IAInC,IAAI23B,GAAMrhC,KAAKmgD,KAAK3mC,KAAK2iF,MAAMn6D,QAC/BhiC,MAAKgnB,IAAIqa,GAAK,GAGZ6kE,KAAc,GAChBlmG,KAAKmgD,KAAKE,QAAQ5H,KAAK,mBAW3B3uC,IAAK,MACL1E,MAAO,SAAai8B,GAMlB,IAAK,GALD6kE,GAAYz/F,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEpF01F,EAAQn8F,KAAKmgD,KAAKg8C,MAClB8V,EAAYjyG,KAAKmgD,KAAK3mC,KAAK2iF,MAEtBt1F,EAAI,EAAGA,EAAIw6B,EAAI36B,OAAQG,IAAK,CACnC,GAAIxG,GAAKghC,EAAIx6B,GAETqrG,EAAU/V,EAAM97F,EAChB6xG,IACFA,EAAQC,YAGV,IAAI34F,GAAOy4F,EAAUr6E,IAAIv3B,GAAM+xG,iBAAmB,GAClDjW,GAAM97F,GAAML,KAAKuQ,OAAOiJ,GAGtB0sF,KAAc,GAChBlmG,KAAKmgD,KAAKE,QAAQ5H,KAAK,mBAW3B3uC,IAAK,SACL1E,MAAO,SAAgBi8B,GAIrB,IAAK,GAHD86D,GAAQn8F,KAAKmgD,KAAKg8C,MAClB8V,EAAYjyG,KAAKmgD,KAAK3mC,KAAK2iF,MAC3BoK,GAAc,EACT1/F,EAAI,EAAGA,EAAIw6B,EAAI36B,OAAQG,IAAK,CACnC,GAAIxG,GAAKghC,EAAIx6B,GACT2S,EAAOy4F,EAAUr6E,IAAIv3B,GACrBkiG,EAAOpG,EAAM97F,EACJsG,UAAT47F,GAEFA,EAAK4P,aACL5L,EAAchE,EAAK3iE,WAAWpmB,IAAS+sF,EACvChE,EAAK8P,YAGLryG,KAAKmgD,KAAKg8C,MAAM97F,GAAML,KAAKuQ,OAAOiJ,GAClC+sF,GAAc,GAIdA,KAAgB,EAClBvmG,KAAKmgD,KAAKE,QAAQ5H,KAAK,gBAEvBz4C,KAAKmgD,KAAKE,QAAQ5H,KAAK,mBAW3B3uC,IAAK,SACL1E,MAAO,SAAgBi8B,GAErB,IAAK,GADD86D,GAAQn8F,KAAKmgD,KAAKg8C,MACbt1F,EAAI,EAAGA,EAAIw6B,EAAI36B,OAAQG,IAAK,CACnC,GAAIxG,GAAKghC,EAAIx6B,GACT07F,EAAOpG,EAAM97F,EACJsG,UAAT47F,IACFA,EAAK+P,UACL/P,EAAK4P,mBACEhW,GAAM97F,IAIjBL,KAAKmgD,KAAKE,QAAQ5H,KAAK,mBAGzB3uC,IAAK,UACL1E,MAAO,WACL,GAAI+2F,GAAQn8F,KAAKmgD,KAAKg8C,KACtB,KAAK,GAAI2D,KAAU3D,GAAO,CACxB,GAAIoG,GAAO57F,MACPw1F,GAAM/1F,eAAe05F,KACvByC,EAAOpG,EAAM2D,GAEf,IAAItmF,GAAOxZ,KAAKmgD,KAAK3mC,KAAK2iF,MAAM/zE,MAAM03E,EACzBn5F,UAAT47F,GAA+B57F,SAAT6S,GACxB+oF,EAAK3iE,WAAWpmB,OAKtB1P,IAAK,SACL1E,MAAO,SAAgBu1D,GACrB,MAAO,IAAIk2C,GAAAA,WAAel2C,EAAY36D,KAAKmgD,KAAMngD,KAAK6D,YAGxDiG,IAAK,sBACL1E,MAAO,WACL,IAAK,GAAI06F,KAAU9/F,MAAKmgD,KAAKg8C,MAC3Bn8F,KAAKmgD,KAAKg8C,MAAM2D,GAAQyS,SAASC,YAAa,KAUlD1oG,IAAK,iBACL1E,MAAO,WACL,GAAI/E,GACA47F,EAAQj8F,KAAKmgD,KAAK87C,MAClBE,EAAQn8F,KAAKmgD,KAAKg8C,KAEtB,KAAK97F,IAAM47F,GACLA,EAAM71F,eAAe/F,KACvB47F,EAAM57F,GAAI87F,SAId,KAAK97F,IAAM87F,GACT,GAAIA,EAAM/1F,eAAe/F,GAAK,CAC5B,GAAIkiG,GAAOpG,EAAM97F,EACjBkiG,GAAKhtF,KAAO,KACZgtF,EAAKjtF,GAAK,KACVitF,EAAK8P,cAKXvoG,IAAK,oBACL1E,MAAO,SAA2B06F,GAChC,GAAIgH,KACJ,IAAgCngG,SAA5B3G,KAAKmgD,KAAKg8C,MAAM2D,GAAuB,CACzC,GAAIyC,GAAOviG,KAAKmgD,KAAKg8C,MAAM2D,EACvByC,GAAK0E,QACPH,EAASn/F,KAAK46F,EAAK0E,QAEjB1E,EAAKyE,MACPF,EAASn/F,KAAK46F,EAAKyE,MAGvB,MAAOF,OAIJgK,IAGTlxG,GAAAA,WAAkBkxG,GAId,SAASjxG,EAAQD,EAASM,GAgC9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCA9BhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIlB,GAA4B,kBAAXC,SAAoD,gBAApBA,QAAOC,SAAwB,SAAUC,GAAO,aAAcA,IAAS,SAAUA,GAAO,MAAOA,IAAyB,kBAAXF,SAAyBE,EAAIC,cAAgBH,OAAS,eAAkBE,IAEtO+gD,EAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBo/C,EAASpkG,EAAoB,IAE7BqkG,EAAUjlD,EAAuBglD,GAEjCmO,EAAmBvyG,EAAoB,IAEvCwyG,EAAoBpzD,EAAuBmzD,GAE3CE,EAAqBzyG,EAAoB,IAEzC0yG,EAAsBtzD,EAAuBqzD,GAE7CE,EAAoB3yG,EAAoB,IAExC4yG,EAAqBxzD,EAAuBuzD,GAE5CE,EAAgB7yG,EAAoB,IAEpC8yG,EAAiB1zD,EAAuByzD,GAMxCpyG,EAAOT,EAAoB,GAkB3B+yG,EAAO,WACT,QAASA,GAAKpvG,EAASs8C,EAAMpvC,GAG3B,GAFAi0C,EAAgBhlD,KAAMizG,GAETtsG,SAATw5C,EACF,KAAM,kBAERngD,MAAK6D,QAAUlD,EAAK6P,aAAaO,GACjC/Q,KAAK+Q,cAAgBA,EACrB/Q,KAAKmgD,KAAOA,EAGZngD,KAAKK,GAAKsG,OACV3G,KAAKinG,OAAStgG,OACd3G,KAAKgnG,KAAOrgG,OACZ3G,KAAKooD,UAAW,EAChBpoD,KAAKuO,OAAQ,EACbvO,KAAK8qG,YAAa,EAClB9qG,KAAKwyG,YAAa,EAElBxyG,KAAKkzG,UAAYlzG,KAAK6D,QAAQu7B,MAC9Bp/B,KAAKkpG,aAAelpG,KAAK6D,QAAQ8uC,KAAK9T,KAEtC7+B,KAAKuV,KAAO5O,OACZ3G,KAAKsV,GAAK3O,OAEV3G,KAAKuyG,SAAW5rG,OAEhB3G,KAAKmzG,WAAY,EAEjBnzG,KAAKopG,YAAc,GAAI7E,GAAAA,WAAgBvkG,KAAKmgD,KAAMngD,KAAK6D,SAAS,GAEhE7D,KAAK4/B,WAAW/7B,GA2gBlB,MAjgBAuhD,GAAa6tD,IACXnpG,IAAK,aACL1E,MAAO,SAAoBvB,GACzB,GAAKA,EAAL,CAGA7D,KAAKwyG,YAAa,EAElBS,EAAKpN,aAAa7lG,KAAK6D,QAASA,GAAS,EAAM7D,KAAK+Q,eAEjCpK,SAAf9C,EAAQxD,KACVL,KAAKK,GAAKwD,EAAQxD,IAECsG,SAAjB9C,EAAQ0R,OACVvV,KAAKinG,OAASpjG,EAAQ0R,MAEL5O,SAAf9C,EAAQyR,KACVtV,KAAKgnG,KAAOnjG,EAAQyR,IAEA3O,SAAlB9C,EAAQ8yE,QACV32E,KAAK22E,MAAQ9yE,EAAQ8yE,OAEDhwE,SAAlB9C,EAAQuB,QACVvB,EAAQuB,MAAQ+lB,WAAWtnB,EAAQuB,QAIrCpF,KAAK+lG,mBAEL,IAAIQ,GAAcvmG,KAAK8xG,gBAYvB,OATA9xG,MAAKozG,wBAGLpzG,KAAKqyG,UAEkB1rG,SAAnB9C,EAAQqvE,QAA4CvsE,SAApB9C,EAAQ0mD,UAC1Cg8C,GAAc,GAGTA,MAGTz8F,IAAK,oBAOL1E,MAAO,WACLpF,KAAKopG,YAAYxpE,WAAW5/B,KAAK6D,SAAS,GACR8C,SAA9B3G,KAAKopG,YAAYH,WACnBjpG,KAAKkpG,aAAelpG,KAAKopG,YAAYH,aAUzCn/F,IAAK,iBACL1E,MAAO,WACL,GAAImhG,IAAc,EACd8M,GAAe,EACf/B,EAAStxG,KAAK6D,QAAQytG,MAsC1B,OArCsB3qG,UAAlB3G,KAAKuyG,WACHvyG,KAAKuyG,mBAAoBK,GAAAA,YAA+BtB,EAAOtgG,WAAY,GAAwB,YAAhBsgG,EAAOvpG,OAC5FsrG,GAAe,GAEbrzG,KAAKuyG,mBAAoBG,GAAAA,YAA6BpB,EAAOtgG,WAAY,GAAwB,gBAAhBsgG,EAAOvpG,OAC1FsrG,GAAe,GAEbrzG,KAAKuyG,mBAAoBO,GAAAA,YAA8BxB,EAAOtgG,WAAY,GAAwB,YAAhBsgG,EAAOvpG,MAAsC,gBAAhBupG,EAAOvpG,OACxHsrG,GAAe,GAEbrzG,KAAKuyG,mBAAoBS,GAAAA,YAA0B1B,EAAOtgG,WAAY,IACxEqiG,GAAe,GAGbA,KAAiB,IACnB9M,EAAcvmG,KAAKsyG,YAInBe,KAAiB,EACfrzG,KAAK6D,QAAQytG,OAAOtgG,WAAY,EACD,YAA7BhR,KAAK6D,QAAQytG,OAAOvpG,MACtBw+F,GAAc,EACdvmG,KAAKuyG,SAAW,GAAIK,GAAAA,WAA4B5yG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,cACxC,gBAA7BppG,KAAK6D,QAAQytG,OAAOvpG,KAC7B/H,KAAKuyG,SAAW,GAAIG,GAAAA,WAA0B1yG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,aAE5EppG,KAAKuyG,SAAW,GAAIO,GAAAA,WAA2B9yG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,aAG/EppG,KAAKuyG,SAAW,GAAIS,GAAAA,WAAuBhzG,KAAK6D,QAAS7D,KAAKmgD,KAAMngD,KAAKopG,aAI3EppG,KAAKuyG,SAAS3yE,WAAW5/B,KAAK6D,SAGzB0iG,KAQTz8F,IAAK,UACL1E,MAAO,WACLpF,KAAKmyG,aAELnyG,KAAKuV,KAAOvV,KAAKmgD,KAAK87C,MAAMj8F,KAAKinG,SAAWtgG,OAC5C3G,KAAKsV,GAAKtV,KAAKmgD,KAAK87C,MAAMj8F,KAAKgnG,OAASrgG,OACxC3G,KAAKmzG,UAA0BxsG,SAAd3G,KAAKuV,MAAkC5O,SAAZ3G,KAAKsV,GAE7CtV,KAAKmzG,aAAc,GACrBnzG,KAAKuV,KAAK+9F,WAAWtzG,MACrBA,KAAKsV,GAAGg+F,WAAWtzG,QAEfA,KAAKuV,MACPvV,KAAKuV,KAAKg+F,WAAWvzG,MAEnBA,KAAKsV,IACPtV,KAAKsV,GAAGi+F,WAAWvzG,OAIvBA,KAAKuyG,SAASF,aAQhBvoG,IAAK,aACL1E,MAAO,WACDpF,KAAKuV,OACPvV,KAAKuV,KAAKg+F,WAAWvzG,MACrBA,KAAKuV,KAAO5O,QAEV3G,KAAKsV,KACPtV,KAAKsV,GAAGi+F,WAAWvzG,MACnBA,KAAKsV,GAAK3O,QAGZ3G,KAAKmzG,WAAY,KAUnBrpG,IAAK,WACL1E,MAAO,WACL,MAAOpF,MAAK22E,SASd7sE,IAAK,aACL1E,MAAO,WACL,MAAOpF,MAAKooD,YASdt+C,IAAK,WACL1E,MAAO,WACL,MAAOpF,MAAK6D,QAAQuB,SAYtB0E,IAAK,gBACL1E,MAAO,SAAuBH,EAAKC,EAAKC,GACtC,GAA2BwB,SAAvB3G,KAAK6D,QAAQuB,MAAqB,CACpC,GAAIC,GAAQrF,KAAK6D,QAAQshG,QAAQG,sBAAsBrgG,EAAKC,EAAKC,EAAOnF,KAAK6D,QAAQuB,OACjFouG,EAAYxzG,KAAK6D,QAAQshG,QAAQjgG,IAAMlF,KAAK6D,QAAQshG,QAAQlgG,GAChE,IAAIjF,KAAK6D,QAAQshG,QAAQrmE,MAAM9tB,WAAY,EAAM,CAC/C,GAAI24F,GAAW3pG,KAAK6D,QAAQshG,QAAQrmE,MAAM55B,IAAMlF,KAAK6D,QAAQshG,QAAQrmE,MAAM75B,GAC3EjF,MAAK6D,QAAQ8uC,KAAK9T,KAAO7+B,KAAK6D,QAAQshG,QAAQrmE,MAAM75B,IAAMI,EAAQskG,EAEpE3pG,KAAK6D,QAAQu7B,MAAQp/B,KAAK6D,QAAQshG,QAAQlgG,IAAMI,EAAQmuG,MAExDxzG,MAAK6D,QAAQu7B,MAAQp/B,KAAKkzG,UAC1BlzG,KAAK6D,QAAQ8uC,KAAK9T,KAAO7+B,KAAKkpG,YAGhClpG,MAAKozG,wBACLpzG,KAAK+lG,uBAGPj8F,IAAK,wBACL1E,MAAO,WACkC,kBAA5BpF,MAAK6D,QAAQstG,WACtBnxG,KAAKuyG,SAASpB,WAAanxG,KAAK6D,QAAQstG,WAAWnxG,KAAK6D,QAAQu7B,OAEhEp/B,KAAKuyG,SAASpB,WAAanxG,KAAK6D,QAAQstG,WAAanxG,KAAK6D,QAAQu7B,MAGzB,kBAAhCp/B,MAAK6D,QAAQutG,eACtBpxG,KAAKuyG,SAASnB,eAAiBpxG,KAAK6D,QAAQutG,eAAepxG,KAAK6D,QAAQu7B,OAExEp/B,KAAKuyG,SAASnB,eAAiBpxG,KAAK6D,QAAQutG,eAAiBpxG,KAAK6D,QAAQu7B,SAY9Et1B,IAAK,OACL1E,MAAO,SAAc+sC,GAEnB,GAAIshE,GAAUzzG,KAAKuyG,SAASmB,aACxBC,IAGJ3zG,MAAKuyG,SAASqB,UAAY5zG,KAAKuyG,SAASh9F,KACxCvV,KAAKuyG,SAASsB,QAAU7zG,KAAKuyG,SAASj9F,GAGlCtV,KAAK6D,QAAQmtG,OAAOz7F,KAAKvE,WAAY,IACvC2iG,EAAUp+F,KAAOvV,KAAKuyG,SAASuB,aAAa3hE,EAAK,OAAQshE,EAASzzG,KAAKooD,SAAUpoD,KAAKuO,OAClFvO,KAAK6D,QAAQqtG,sBAAuB,IAAOlxG,KAAKuyG,SAASqB,UAAYD,EAAUp+F,KAAKw+F,OAEtF/zG,KAAK6D,QAAQmtG,OAAO17F,GAAGtE,WAAY,IACrC2iG,EAAUr+F,GAAKtV,KAAKuyG,SAASuB,aAAa3hE,EAAK,KAAMshE,EAASzzG,KAAKooD,SAAUpoD,KAAKuO,OAC9EvO,KAAK6D,QAAQqtG,sBAAuB,IAAOlxG,KAAKuyG,SAASsB,QAAUF,EAAUr+F,GAAGy+F,OAIlF/zG,KAAK6D,QAAQmtG,OAAOt/F,OAAOV,WAAY,IACzC2iG,EAAUjiG,OAAS1R,KAAKuyG,SAASuB,aAAa3hE,EAAK,SAAUshE,EAASzzG,KAAKooD,SAAUpoD,KAAKuO,QAI5FvO,KAAKuyG,SAASyB,SAAS7hE,EAAKnyC,KAAKooD,SAAUpoD,KAAKuO,MAAOklG,GACvDzzG,KAAKi0G,WAAW9hE,EAAKwhE,GACrB3zG,KAAKk0G,UAAU/hE,EAAKshE,MAGtB3pG,IAAK,aACL1E,MAAO,SAAoB+sC,EAAKwhE,GAC1B3zG,KAAK6D,QAAQmtG,OAAOz7F,KAAKvE,WAAY,GACvChR,KAAKuyG,SAAS4B,cAAchiE,EAAKnyC,KAAKooD,SAAUpoD,KAAKuO,MAAOolG,EAAUp+F,MAEpEvV,KAAK6D,QAAQmtG,OAAOt/F,OAAOV,WAAY,GACzChR,KAAKuyG,SAAS4B,cAAchiE,EAAKnyC,KAAKooD,SAAUpoD,KAAKuO,MAAOolG,EAAUjiG,QAEpE1R,KAAK6D,QAAQmtG,OAAO17F,GAAGtE,WAAY,GACrChR,KAAKuyG,SAAS4B,cAAchiE,EAAKnyC,KAAKooD,SAAUpoD,KAAKuO,MAAOolG,EAAUr+F,OAI1ExL,IAAK,YACL1E,MAAO,SAAmB+sC,EAAKshE,GAC7B,GAA2B9sG,SAAvB3G,KAAK6D,QAAQi7B,MAAqB,CAEpC,GAAIs1E,GAAQp0G,KAAKuV,KACb8+F,EAAQr0G,KAAKsV,GACb8yC,EAAWpoD,KAAKuV,KAAK6yC,UAAYpoD,KAAKsV,GAAG8yC,UAAYpoD,KAAKooD,QAC9D,IAAIgsD,EAAM/zG,IAAMg0G,EAAMh0G,GAAI,CACxBL,KAAKopG,YAAYqB,aAAc,CAC/B,IAAI9rE,GAAQ3+B,KAAKuyG,SAAS+B,SAAS,GAAKb,EACxCthE,GAAIi7D,OAG4B,eAA5BptG,KAAK6D,QAAQ8uC,KAAKimC,QACpB54E,KAAKopG,YAAY6B,mBAAmB94D,EAAKiW,EAAUzpB,EAAMH,EAAGG,EAAM3c,GAClEmwB,EAAIoiE,UAAU51E,EAAMH,EAAGx+B,KAAKopG,YAAYvqE,KAAK8rE,OAC7C3qG,KAAKw0G,yBAAyBriE,IAIhCnyC,KAAKopG,YAAY9+C,KAAKnY,EAAKxT,EAAMH,EAAGG,EAAM3c,EAAGomC,GAC7CjW,EAAIo7D,cACC,CAELvtG,KAAKopG,YAAYqB,aAAc,CAC/B,IAAIjsE,GAAGxc,EACHy0B,EAASz2C,KAAK6D,QAAQwtG,iBACtB+C,GAAM5O,MAAMpmE,MAAQg1E,EAAM5O,MAAMnmE,QAClCb,EAAI41E,EAAM51E,EAAwB,GAApB41E,EAAM5O,MAAMpmE,MAC1Bpd,EAAIoyF,EAAMpyF,EAAIy0B,IAEdjY,EAAI41E,EAAM51E,EAAIiY,EACdz0B,EAAIoyF,EAAMpyF,EAAyB,GAArBoyF,EAAM5O,MAAMnmE,QAE5BV,EAAQ3+B,KAAKy0G,eAAej2E,EAAGxc,EAAGy0B,EAAQ,MAC1Cz2C,KAAKopG,YAAY9+C,KAAKnY,EAAKxT,EAAMH,EAAGG,EAAM3c,EAAGomC,QAYnDt+C,IAAK,oBACL1E,MAAO,SAA2Bf,GAChC,GAAIrE,KAAKmzG,UAAW,CAClB,GAAIr5D,GAAU,GACV46D,EAAQ10G,KAAKuV,KAAKipB,EAClBm2E,EAAQ30G,KAAKuV,KAAKyM,EAClB4yF,EAAM50G,KAAKsV,GAAGkpB,EACdq2E,EAAM70G,KAAKsV,GAAG0M,EACd8yF,EAAOzwG,EAAIyE,KACXisG,EAAO1wG,EAAI2E,IAEXktC,EAAOl2C,KAAKuyG,SAASyC,kBAAkBN,EAAOC,EAAOC,EAAKC,EAAKC,EAAMC,EAEzE,OAAcj7D,GAAP5D,EAEP,OAAO,KAWXpsC,IAAK,2BACL1E,MAAO,SAAkC+sC,GACvC,GAAIxH,GAAK3qC,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M,EAC3B0oB,EAAK1qC,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,EAC3By2E,EAAiB3vG,KAAKgzD,MAAM3tB,EAAID,IAGf,GAAjBuqE,GAA4B,EAALvqE,GAAUuqE,EAAiB,GAAU,EAALvqE,KACzDuqE,GAAkC3vG,KAAKqxC,IAGzCxE,EAAI+iE,OAAOD,MAcbnrG,IAAK,iBACL1E,MAAO,SAAwBo5B,EAAGxc,EAAGy0B,EAAQ0+D,GAC3C,GAAI98C,GAAqB,EAAb88C,EAAiB7vG,KAAKqxC,EAClC,QACEnY,EAAGA,EAAIiY,EAASnxC,KAAK+kC,IAAIguB,GACzBr2C,EAAGA,EAAIy0B,EAASnxC,KAAK4kC,IAAImuB,OAI7BvuD,IAAK,SACL1E,MAAO,WACLpF,KAAKooD,UAAW,KAGlBt+C,IAAK,WACL1E,MAAO,WACLpF,KAAKooD,UAAW,KASlBt+C,IAAK,UACL1E,MAAO,WACL,MAAOpF,MAAKuyG,SAASD,eAGvBxoG,IAAK,eACL1E,MAAO,SAAsB0kG,EAAeC,GAC1C,GAAIvjG,GAAgBC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GACxFsK,EAAgBtK,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAErF2J,GAAU,qBAAsB,KAAM,OAAQ,SAAU,aAAc,QAAS,qBAAsB,SAAU,OAAQ,UAAW,UAAW,UAAW,iBAAkB,oBAAqB,KAAM,QAAS,QAAS,QA4B3N,IAzBAzP,EAAK0G,oBAAoB+I,EAAQ05F,EAAeC,EAAYvjG,GAE5D7F,EAAKkQ,aAAai5F,EAAeC,EAAY,SAAUvjG,EAAeuK,GACtEpQ,EAAKkQ,aAAai5F,EAAeC,EAAY,SAAUvjG,EAAeuK,GAE5CpK,SAAtBojG,EAAW+D,QAA8C,OAAtB/D,EAAW+D,OAChDhE,EAAcgE,OAAS/D,EAAW+D,OACzBtnG,KAAkB,GAA8B,OAAtBujG,EAAW+D,SAC9ChE,EAAcgE,OAASvmG,OAAOgJ,OAAOQ,EAAc+8F,SAI1BnnG,SAAvBojG,EAAW5E,SAAgD,OAAvB4E,EAAW5E,SAClBx+F,SAA3BojG,EAAW5E,QAAQlgG,MACrB6kG,EAAc3E,QAAQlgG,IAAM8kG,EAAW5E,QAAQlgG,KAElB0B,SAA3BojG,EAAW5E,QAAQjgG,MACrB4kG,EAAc3E,QAAQjgG,IAAM6kG,EAAW5E,QAAQjgG,KAEjDvE,EAAKkQ,aAAai5F,EAAc3E,QAAS4E,EAAW5E,QAAS,QAAS3+F,EAAeuK,EAAco0F,UAC1F3+F,KAAkB,GAA+B,OAAvBujG,EAAW5E,UAC9C2E,EAAc3E,QAAU59F,OAAOgJ,OAAOQ,EAAco0F,UAI5Bx+F,SAAtBojG,EAAWiH,QAA8C,OAAtBjH,EAAWiH,OAChD,GAAiC,gBAAtBjH,GAAWiH,OAAqB,CACzC,GAAIA,GAASjH,EAAWiH,OAAOp4F,aACH,KAAxBo4F,EAAOtpG,QAAQ,QACjBoiG,EAAckH,OAAO17F,GAAGtE,SAAU,GAEJ,IAA5BggG,EAAOtpG,QAAQ,YACjBoiG,EAAckH,OAAOt/F,OAAOV,SAAU,GAEV,IAA1BggG,EAAOtpG,QAAQ,UACjBoiG,EAAckH,OAAOz7F,KAAKvE,SAAU,OAEjC,CAAA,GAAmC,WAA/B9M,EAAQ6lG,EAAWiH,QAK5B,KAAM,IAAI5pG,OAAM,gGAAkGi8B,KAAKC,UAAUymE,EAAWiH,QAJ5IrwG,GAAKkQ,aAAai5F,EAAckH,OAAQjH,EAAWiH,OAAQ,KAAMxqG,EAAeuK,EAAcigG,QAC9FrwG,EAAKkQ,aAAai5F,EAAckH,OAAQjH,EAAWiH,OAAQ,SAAUxqG,EAAeuK,EAAcigG,QAClGrwG,EAAKkQ,aAAai5F,EAAckH,OAAQjH,EAAWiH,OAAQ,OAAQxqG,EAAeuK,EAAcigG,YAIzFxqG,MAAkB,GAA8B,OAAtBujG,EAAWiH,SAC9ClH,EAAckH,OAASzpG,OAAOgJ,OAAOQ,EAAcigG,QAIrD,IAAyBrqG,SAArBojG,EAAWn9F,OAA4C,OAArBm9F,EAAWn9F,MAG/C,GADAk9F,EAAcl9F,MAAQjM,EAAK6G,cAAesiG,EAAcl9F,OAAO,GAC3DjM,EAAK4E,SAASwkG,EAAWn9F,OAC3Bk9F,EAAcl9F,MAAMA,MAAQm9F,EAAWn9F,MACvCk9F,EAAcl9F,MAAM0B,UAAYy7F,EAAWn9F,MAC3Ck9F,EAAcl9F,MAAM2B,MAAQw7F,EAAWn9F,MACvCk9F,EAAcl9F,MAAM6tD,SAAU,MACzB,CACL,GAAI26C,IAAgB,CACWzuG,UAA3BojG,EAAWn9F,MAAMA,QACnBk9F,EAAcl9F,MAAMA,MAAQm9F,EAAWn9F,MAAMA,MAAMwoG,GAAgB,GAElCzuG,SAA/BojG,EAAWn9F,MAAM0B,YACnBw7F,EAAcl9F,MAAM0B,UAAYy7F,EAAWn9F,MAAM0B,UAAU8mG,GAAgB,GAE9CzuG,SAA3BojG,EAAWn9F,MAAM2B,QACnBu7F,EAAcl9F,MAAM2B,MAAQw7F,EAAWn9F,MAAM2B,MAAM6mG,GAAgB,GAEpCzuG,SAA7BojG,EAAWn9F,MAAM6tD,UACnBqvC,EAAcl9F,MAAM6tD,QAAUsvC,EAAWn9F,MAAM6tD,SAEhB9zD,SAA7BojG,EAAWn9F,MAAMC,UACnBi9F,EAAcl9F,MAAMC,QAAUvH,KAAKL,IAAI,EAAGK,KAAKJ,IAAI,EAAG6kG,EAAWn9F,MAAMC,WAGxClG,SAA7BojG,EAAWn9F,MAAM6tD,SAAyB26C,KAAkB,IAC9DtL,EAAcl9F,MAAM6tD,SAAU,OAGzBj0D,MAAkB,GAA6B,OAArBujG,EAAWn9F,QAC9Ck9F,EAAcl9F,MAAQjM,EAAK6P,aAAaO,EAAcnE,OAIhCjG,UAApBojG,EAAWp3D,MAA0C,OAApBo3D,EAAWp3D,KAC9C4xD,EAAAA,WAAgBsB,aAAaiE,EAAcn3D,KAAMo3D,GACxCvjG,KAAkB,GAA4B,OAApBujG,EAAWp3D,OAC9Cm3D,EAAcn3D,KAAOhyC,EAAK6P,aAAaO,EAAc4hC,WAKpDsgE,IAGTrzG,GAAAA,WAAkBqzG,GAId,SAASpzG,EAAQD,EAASM,GAgB9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAlBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAI6kG,GAAiB,WAAc,QAASC,GAAc3hG,EAAK1B,GAAK,GAAIsjG,MAAeC,GAAK,EAAUv1F,GAAK,EAAWw1F,EAAK1jG,MAAW,KAAM,IAAK,GAAiC2jG,GAA7B50F,EAAKnN,EAAIpE,OAAOC,cAAmBgmG,GAAME,EAAK50F,EAAGqD,QAAQs3D,QAAoB85B,EAAKxiG,KAAK2iG,EAAGllG,QAAYyB,GAAKsjG,EAAKzjG,SAAWG,GAA3DujG,GAAK,IAAoE,MAAO7hD,GAAO1zC,GAAK,EAAMw1F,EAAK9hD,EAAO,QAAU,KAAW6hD,GAAM10F,EAAG,WAAWA,EAAG,YAAe,QAAU,GAAIb,EAAI,KAAMw1F,IAAQ,MAAOF,GAAQ,MAAO,UAAU5hG,EAAK1B,GAAK,GAAIK,MAAMC,QAAQoB,GAAQ,MAAOA,EAAY,IAAIpE,OAAOC,WAAYmD,QAAOgB,GAAQ,MAAO2hG,GAAc3hG,EAAK1B,EAAa,MAAM,IAAIS,WAAU,4DAEllB89C,EAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBmwD,EAAwBn1G,EAAoB,IAE5Co1G,EAAwBh2D,EAAuB+1D,GAU/CE,EAAkB,SAAUC,GAG9B,QAASD,GAAgB1xG,EAASs8C,EAAMipD,GAGtC,MAFApkD,GAAgBhlD,KAAMu1G,GAEfrJ,EAA2BlsG,KAAMuH,OAAOslG,eAAe0I,GAAiBh1G,KAAKP,KAAM6D,EAASs8C,EAAMipD,IAiH3G,MAtHAgD,GAAUmJ,EAAiBC,GAe3BpwD,EAAamwD,IACXzrG,IAAK,QACL1E,MAAO,SAAe+sC,EAAKsjE,GAEzB,GAAIC,GAAOD,EAAS,GAChBE,EAAOF,EAAS,EAGpBtjE,GAAIa,YACJb,EAAIc,OAAOjzC,KAAK4zG,UAAUp1E,EAAGx+B,KAAK4zG,UAAU5xF,GAG3Brb,SAAb8uG,GAAqC9uG,SAAX+uG,EAAKl3E,EACjC2T,EAAIe,OAAOlzC,KAAK6zG,QAAQr1E,EAAGx+B,KAAK6zG,QAAQ7xF,GAExCmwB,EAAIyjE,cAAcF,EAAKl3E,EAAGk3E,EAAK1zF,EAAG2zF,EAAKn3E,EAAGm3E,EAAK3zF,EAAGhiB,KAAK6zG,QAAQr1E,EAAGx+B,KAAK6zG,QAAQ7xF,GAGjFhiB,KAAKktG,aAAa/6D,GAClBA,EAAI7J,SACJtoC,KAAKmtG,cAAch7D,MAGrBroC,IAAK,qBACL1E,MAAO,WACL,GAAIslC,GAAK1qC,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,EAC3BmM,EAAK3qC,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M,EAE3B6zF,EAAK,OACLC,EAAK,OACLC,EAAK,OACLC,EAAK,OACLxE,EAAYxxG,KAAK6D,QAAQytG,OAAOE,SAepC,QAZKlsG,KAAK4R,IAAIwzB,GAAMplC,KAAK4R,IAAIyzB,IAAO3qC,KAAK6D,QAAQytG,OAAOC,kBAAmB,GAA+C,eAAvCvxG,KAAK6D,QAAQytG,OAAOC,iBAA2E,aAAvCvxG,KAAK6D,QAAQytG,OAAOC,gBAC7JuE,EAAK91G,KAAKuV,KAAKyM,EACfg0F,EAAKh2G,KAAKsV,GAAG0M,EACb6zF,EAAK71G,KAAKuV,KAAKipB,EAAIgzE,EAAY9mE,EAC/BqrE,EAAK/1G,KAAKsV,GAAGkpB,EAAIgzE,EAAY9mE,IAE7BorE,EAAK91G,KAAKuV,KAAKyM,EAAIwvF,EAAY7mE,EAC/BqrE,EAAKh2G,KAAKsV,GAAG0M,EAAIwvF,EAAY7mE,EAC7BkrE,EAAK71G,KAAKuV,KAAKipB,EACfu3E,EAAK/1G,KAAKsV,GAAGkpB,KAGLA,EAAGq3E,EAAI7zF,EAAG8zF,IAAQt3E,EAAGu3E,EAAI/zF,EAAGg0F,OAGxClsG,IAAK,aACL1E,MAAO,WACL,MAAOpF,MAAKi2G,wBAGdnsG,IAAK,sBACL1E,MAAO,SAA6B8wG,EAAU/jE,GAC5C,MAAOnyC,MAAKm2G,0BAA0BD,EAAU/jE,MAGlDroC,IAAK,qBACL1E,MAAO,SAA4BywG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,GACrD,GAAIC,GAAO7vG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBzG,KAAKi2G,qBAAuBxvG,UAAU,GAEnG8vG,EAAQtM,EAAeqM,EAAM,GAE7BZ,EAAOa,EAAM,GACbZ,EAAOY,EAAM,EAEjB,OAAOv2G,MAAKw2G,yBAAyBX,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIX,EAAMC,MAYrE7rG,IAAK,WACL1E,MAAO,SAAkB+vG,GACvB,GAAIsB,GAAQhwG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBzG,KAAKi2G,qBAAuBxvG,UAAU,GAEpGiwG,EAAQzM,EAAewM,EAAO,GAE9Bf,EAAOgB,EAAM,GACbf,EAAOe,EAAM,GAEb5mG,EAAIqlG,EACJwB,IACJA,GAAI,GAAKrxG,KAAKiW,IAAI,EAAIzL,EAAG,GACzB6mG,EAAI,GAAK,EAAI7mG,EAAIxK,KAAKiW,IAAI,EAAIzL,EAAG,GACjC6mG,EAAI,GAAK,EAAIrxG,KAAKiW,IAAIzL,EAAG,IAAM,EAAIA,GACnC6mG,EAAI,GAAKrxG,KAAKiW,IAAIzL,EAAG,EACrB,IAAI0uB,GAAIm4E,EAAI,GAAK32G,KAAK4zG,UAAUp1E,EAAIm4E,EAAI,GAAKjB,EAAKl3E,EAAIm4E,EAAI,GAAKhB,EAAKn3E,EAAIm4E,EAAI,GAAK32G,KAAK6zG,QAAQr1E,EAC1Fxc,EAAI20F,EAAI,GAAK32G,KAAK4zG,UAAU5xF,EAAI20F,EAAI,GAAKjB,EAAK1zF,EAAI20F,EAAI,GAAKhB,EAAK3zF,EAAI20F,EAAI,GAAK32G,KAAK6zG,QAAQ7xF,CAE9F,QAASwc,EAAGA,EAAGxc,EAAGA,OAIfuzF,GACPD,EAAAA,WAEF11G,GAAAA,WAAkB21G,GAId,SAAS11G,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hB0xD,EAAmB12G,EAAoB,IAEvC22G,EAAmBv3D,EAAuBs3D,GAU1CE,EAAsB,SAAUC,GAGlC,QAASD,GAAoBjzG,EAASs8C,EAAMipD,GAG1C,MAFApkD,GAAgBhlD,KAAM82G,GAEf5K,EAA2BlsG,KAAMuH,OAAOslG,eAAeiK,GAAqBv2G,KAAKP,KAAM6D,EAASs8C,EAAMipD,IAmD/G,MAxDAgD,GAAU0K,EAAqBC,GAuB/B3xD,EAAa0xD,IACXhtG,IAAK,2BACL1E,MAAO,SAAkCywG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIX,EAAMC,GAErE,GAAIqB,GAAc,IACdhmE,EAAW,OACXnqC,EAAI,OACJiJ,EAAI,OACJ0uB,EAAI,OACJxc,EAAI,OACJi1F,EAAQpB,EACRqB,EAAQpB,EACRa,GAAO,EAAG,EAAG,EAAG,EACpB,KAAK9vG,EAAI,EAAO,GAAJA,EAAQA,IAClBiJ,EAAI,GAAMjJ,EACV8vG,EAAI,GAAKrxG,KAAKiW,IAAI,EAAIzL,EAAG,GACzB6mG,EAAI,GAAK,EAAI7mG,EAAIxK,KAAKiW,IAAI,EAAIzL,EAAG,GACjC6mG,EAAI,GAAK,EAAIrxG,KAAKiW,IAAIzL,EAAG,IAAM,EAAIA,GACnC6mG,EAAI,GAAKrxG,KAAKiW,IAAIzL,EAAG,GACrB0uB,EAAIm4E,EAAI,GAAKd,EAAKc,EAAI,GAAKjB,EAAKl3E,EAAIm4E,EAAI,GAAKhB,EAAKn3E,EAAIm4E,EAAI,GAAKZ,EAC/D/zF,EAAI20F,EAAI,GAAKb,EAAKa,EAAI,GAAKjB,EAAK1zF,EAAI20F,EAAI,GAAKhB,EAAK3zF,EAAI20F,EAAI,GAAKX,EAC3DnvG,EAAI,IACNmqC,EAAWhxC,KAAKm3G,mBAAmBF,EAAOC,EAAO14E,EAAGxc,EAAGo0F,EAAIC,GAC3DW,EAAyBA,EAAXhmE,EAAyBA,EAAWgmE,GAEpDC,EAAQz4E,EACR04E,EAAQl1F,CAGV,OAAOg1F,OAIJF,GACPD,EAAAA,WAEFj3G,GAAAA,WAAkBk3G,GAId,SAASj3G,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBkyD,EAAal3G,EAAoB,IAEjCm3G,EAAa/3D,EAAuB83D,GAUpCE,EAAiB,SAAUC,GAG7B,QAASD,GAAezzG,EAASs8C,EAAMipD,GAGrC,MAFApkD,GAAgBhlD,KAAMs3G,GAEfpL,EAA2BlsG,KAAMuH,OAAOslG,eAAeyK,GAAgB/2G,KAAKP,KAAM6D,EAASs8C,EAAMipD,IA6G1G,MAlHAgD,GAAUkL,EAAgBC,GAuB1BnyD,EAAakyD,IACXxtG,IAAK,4BACL1E,MAAO,SAAmC8wG,EAAU/jE,GAClD,GAMIhb,GAAKkhC,EAAOoxC,EAAkB+N,EAAiBC,EAN/ChE,EAAUhtG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBzG,KAAKi2G,qBAAuBxvG,UAAU,GAEtG6K,EAAgB,GAChBC,EAAY,EACZC,EAAM,EACNC,EAAO,EAEPijB,EAAY,GACZ8H,EAAOx8B,KAAKsV,GACZC,GAAO,CAMX,KALI2gG,EAAS71G,KAAOL,KAAKuV,KAAKlV,KAC5Bm8B,EAAOx8B,KAAKuV,KACZA,GAAO,GAGK9D,GAAPD,GAA2BF,EAAZC,GAA2B,CAC/C,GAAIG,GAAwB,IAAdF,EAAMC,EAOpB,IALA0lB,EAAMn3B,KAAKs0G,SAAS5iG,EAAQ+hG,GAC5Bp7C,EAAQ/yD,KAAKgzD,MAAM97B,EAAKxa,EAAImV,EAAInV,EAAGwa,EAAKgC,EAAIrH,EAAIqH,GAChDirE,EAAmBjtE,EAAKitE,iBAAiBt3D,EAAKkmB,GAC9Cm/C,EAAkBlyG,KAAK+0C,KAAK/0C,KAAKiW,IAAI4b,EAAIqH,EAAIhC,EAAKgC,EAAG,GAAKl5B,KAAKiW,IAAI4b,EAAInV,EAAIwa,EAAKxa,EAAG,IACnFy1F,EAAahO,EAAmB+N,EAC5BlyG,KAAK4R,IAAIugG,GAAc/iF,EACzB,KACsB,GAAb+iF,EAEHliG,KAAS,EACX/D,EAAME,EAEND,EAAOC,EAGL6D,KAAS,EACX9D,EAAOC,EAEPF,EAAME,EAIZH,IAIF,MAFA4lB,GAAIrnB,EAAI4B,EAEDylB,KAiBTrtB,IAAK,2BACL1E,MAAO,SAAkCywG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIqB,GAE/D,GAAIV,GAAc,IACdhmE,EAAW,OACXnqC,EAAI,OACJiJ,EAAI,OACJ0uB,EAAI,OACJxc,EAAI,OACJi1F,EAAQpB,EACRqB,EAAQpB,CACZ,KAAKjvG,EAAI,EAAO,GAAJA,EAAQA,IAClBiJ,EAAI,GAAMjJ,EACV23B,EAAIl5B,KAAKiW,IAAI,EAAIzL,EAAG,GAAK+lG,EAAK,EAAI/lG,GAAK,EAAIA,GAAK4nG,EAAIl5E,EAAIl5B,KAAKiW,IAAIzL,EAAG,GAAKimG,EACzE/zF,EAAI1c,KAAKiW,IAAI,EAAIzL,EAAG,GAAKgmG,EAAK,EAAIhmG,GAAK,EAAIA,GAAK4nG,EAAI11F,EAAI1c,KAAKiW,IAAIzL,EAAG,GAAKkmG,EACrEnvG,EAAI,IACNmqC,EAAWhxC,KAAKm3G,mBAAmBF,EAAOC,EAAO14E,EAAGxc,EAAGo0F,EAAIC,GAC3DW,EAAyBA,EAAXhmE,EAAyBA,EAAWgmE,GAEpDC,EAAQz4E,EACR04E,EAAQl1F,CAGV,OAAOg1F,OAIJM,GACPD,EAAAA,WAEFz3G,GAAAA,WAAkB03G,GAId,SAASz3G,EAAQD,EAASM,GAY9B,QAAS8kD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCARhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAI6kG,GAAiB,WAAc,QAASC,GAAc3hG,EAAK1B,GAAK,GAAIsjG,MAAeC,GAAK,EAAUv1F,GAAK,EAAWw1F,EAAK1jG,MAAW,KAAM,IAAK,GAAiC2jG,GAA7B50F,EAAKnN,EAAIpE,OAAOC,cAAmBgmG,GAAME,EAAK50F,EAAGqD,QAAQs3D,QAAoB85B,EAAKxiG,KAAK2iG,EAAGllG,QAAYyB,GAAKsjG,EAAKzjG,SAAWG,GAA3DujG,GAAK,IAAoE,MAAO7hD,GAAO1zC,GAAK,EAAMw1F,EAAK9hD,EAAO,QAAU,KAAW6hD,GAAM10F,EAAG,WAAWA,EAAG,YAAe,QAAU,GAAIb,EAAI,KAAMw1F,IAAQ,MAAOF,GAAQ,MAAO,UAAU5hG,EAAK1B,GAAK,GAAIK,MAAMC,QAAQoB,GAAQ,MAAOA,EAAY,IAAIpE,OAAOC,WAAYmD,QAAOgB,GAAQ,MAAO2hG,GAAc3hG,EAAK1B,EAAa,MAAM,IAAIS,WAAU,4DAEllB89C,EAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI5hBvkD,EAAOT,EAAoB,GAE3By3G,EAAW,WACb,QAASA,GAAS9zG,EAASs8C,EAAMipD,GAC/BpkD,EAAgBhlD,KAAM23G,GAEtB33G,KAAKmgD,KAAOA,EACZngD,KAAKopG,YAAcA,EACnBppG,KAAK6D,WACL7D,KAAK4/B,WAAW/7B,GAChB7D,KAAKwyG,YAAa,EAClBxyG,KAAK4M,SACL5M,KAAKoxG,eAAiB,EACtBpxG,KAAKmxG,WAAa,IAClBnxG,KAAK4zG,UAAY5zG,KAAKuV,KACtBvV,KAAK6zG,QAAU7zG,KAAKsV,GAkjBtB,MA/iBA8vC,GAAauyD,IACX7tG,IAAK,UACL1E,MAAO,WACLpF,KAAKuV,KAAOvV,KAAKmgD,KAAK87C,MAAMj8F,KAAK6D,QAAQ0R,MACzCvV,KAAKsV,GAAKtV,KAAKmgD,KAAK87C,MAAMj8F,KAAK6D,QAAQyR,OAGzCxL,IAAK,UACL1E,MAAO,WACL,OAAO,KAGT0E,IAAK,aACL1E,MAAO,SAAoBvB,GACzB7D,KAAK6D,QAAUA,EACf7D,KAAKuV,KAAOvV,KAAKmgD,KAAK87C,MAAMj8F,KAAK6D,QAAQ0R,MACzCvV,KAAKsV,GAAKtV,KAAKmgD,KAAK87C,MAAMj8F,KAAK6D,QAAQyR,IACvCtV,KAAKK,GAAKL,KAAK6D,QAAQxD,MAYzByJ,IAAK,WACL1E,MAAO,SAAkB+sC,EAAKiW,EAAU75C,EAAOklG,GAE7CthE,EAAIY,YAAc/yC,KAAK43G,SAASzlE,EAAKiW,EAAU75C,GAC/C4jC,EAAIO,UAAY1yC,KAAK63G,aAAazvD,EAAU75C,GAExCvO,KAAK6D,QAAQiqG,UAAW,EAC1B9tG,KAAK83G,gBAAgB3lE,EAAKshE,GAE1BzzG,KAAK+3G,UAAU5lE,EAAKshE,MAIxB3pG,IAAK,YACL1E,MAAO,SAAmB+sC,EAAKshE,EAASG,EAAWC,GACjD,GAAI7zG,KAAKuV,MAAQvV,KAAKsV,GAEpBtV,KAAKg4G,MAAM7lE,EAAKshE,EAASG,EAAWC,OAC/B,CACL,GAAIoE,GAAkBj4G,KAAKk4G,eAAe/lE,GAEtCgmE,EAAkBlO,EAAegO,EAAiB,GAElDz5E,EAAI25E,EAAgB,GACpBn2F,EAAIm2F,EAAgB,GACpB1hE,EAAS0hE,EAAgB,EAE7Bn4G,MAAKo4G,QAAQjmE,EAAK3T,EAAGxc,EAAGy0B,OAI5B3sC,IAAK,kBACL1E,MAAO,SAAyB+sC,EAAKshE,EAASG,EAAWC,GACvD1hE,EAAI6D,QAAU,OACd,IAAIqiE,IAAW,EAAG,EAMlB,IALInxG,MAAMC,QAAQnH,KAAK6D,QAAQiqG,WAAY,IACzCuK,EAAUr4G,KAAK6D,QAAQiqG,QAIDnnG,SAApBwrC,EAAI07D,YAA2B,CAQjC,GAPA17D,EAAIi7D,OAGJj7D,EAAI07D,YAAYwK,GAChBlmE,EAAImmE,eAAiB,EAGjBt4G,KAAKuV,MAAQvV,KAAKsV,GAEpBtV,KAAKg4G,MAAM7lE,EAAKshE,OACX,CACL,GAAI8E,GAAkBv4G,KAAKk4G,eAAe/lE,GAEtCqmE,EAAkBvO,EAAesO,EAAiB,GAElD/5E,EAAIg6E,EAAgB,GACpBx2F,EAAIw2F,EAAgB,GACpB/hE,EAAS+hE,EAAgB,EAE7Bx4G,MAAKo4G,QAAQjmE,EAAK3T,EAAGxc,EAAGy0B,GAI1BtE,EAAI07D,aAAa,IACjB17D,EAAImmE,eAAiB,EACrBnmE,EAAIo7D,cACC,CAEL,GAAIvtG,KAAKuV,MAAQvV,KAAKsV,GAEpB68B,EAAIsmE,WAAWz4G,KAAKuV,KAAKipB,EAAGx+B,KAAKuV,KAAKyM,EAAGhiB,KAAKsV,GAAGkpB,EAAGx+B,KAAKsV,GAAG0M,EAAGq2F,OAC1D,CACL,GAAIK,GAAkB14G,KAAKk4G,eAAe/lE,GAEtCwmE,EAAkB1O,EAAeyO,EAAiB,GAElDE,EAAKD,EAAgB,GACrBE,EAAKF,EAAgB,GACrBG,EAAUH,EAAgB,EAE9B34G,MAAKo4G,QAAQjmE,EAAKymE,EAAIC,EAAIC,GAG5B94G,KAAKktG,aAAa/6D,GAElBA,EAAI7J,SAGJtoC,KAAKmtG,cAAch7D,OAIvBroC,IAAK,qBACL1E,MAAO,SAA4B8wG,EAAU/jE,EAAKtuC,GAChD,MAAI7D,MAAKuV,MAAQvV,KAAKsV,GACbtV,KAAK+4G,oBAAoB7C,EAAU/jE,EAAKtuC,GAExC7D,KAAKg5G,0BAA0B9C,EAAU/jE,EAAKtuC,MAIzDiG,IAAK,sBACL1E,MAAO,SAA6B+sC,GAClC,GAAI58B,MACAD,IACJ,IAAItV,KAAKuV,MAAQvV,KAAKsV,GACpBC,EAAOvV,KAAK+4G,oBAAoB/4G,KAAKuV,KAAM48B,GAC3C78B,EAAKtV,KAAK+4G,oBAAoB/4G,KAAKsV,GAAI68B,OAClC,CACL,GAAI8mE,GAAkBj5G,KAAKk4G,eAAe/lE,GAEtC+mE,EAAkBjP,EAAegP,EAAiB,GAElDz6E,EAAI06E,EAAgB,GACpBl3F,EAAIk3F,EAAgB,EACXA,GAAgB,EAG7B3jG,GAAOvV,KAAKg5G,0BAA0Bh5G,KAAKuV,KAAM48B,GAAO3T,EAAGA,EAAGxc,EAAGA,EAAGxQ,IAAK,IAAMC,KAAM,GAAKia,UAAW,KACrGpW,EAAKtV,KAAKg5G,0BAA0Bh5G,KAAKuV,KAAM48B,GAAO3T,EAAGA,EAAGxc,EAAGA,EAAGxQ,IAAK,GAAKC,KAAM,GAAKia,UAAW,IAEpG,OAASnW,KAAMA,EAAMD,GAAIA,MAG3BxL,IAAK,iBACL1E,MAAO,SAAwB+sC,GAC7B,GAAI3T,GAAI,OACJxc,EAAI,OACJwa,EAAOx8B,KAAKuV,KACZkhC,EAASz2C,KAAK6D,QAAQwtG,iBAgB1B,OAdY1qG,UAARwrC,GACuBxrC,SAArB61B,EAAKgpE,MAAMpmE,OACb5C,EAAKgpE,MAAMqE,OAAO13D,GAKlB3V,EAAKgpE,MAAMpmE,MAAQ5C,EAAKgpE,MAAMnmE,QAChCb,EAAIhC,EAAKgC,EAAuB,GAAnBhC,EAAKgpE,MAAMpmE,MACxBpd,EAAIwa,EAAKxa,EAAIy0B,IAEbjY,EAAIhC,EAAKgC,EAAIiY,EACbz0B,EAAIwa,EAAKxa,EAAwB,GAApBwa,EAAKgpE,MAAMnmE,SAElBb,EAAGxc,EAAGy0B,MAchB3sC,IAAK,iBACL1E,MAAO,SAAwBo5B,EAAGxc,EAAGy0B,EAAQ0+D,GAC3C,GAAI98C,GAAqB,EAAb88C,EAAiB7vG,KAAKqxC,EAClC,QACEnY,EAAGA,EAAIiY,EAASnxC,KAAK+kC,IAAIguB,GACzBr2C,EAAGA,EAAIy0B,EAASnxC,KAAK4kC,IAAImuB,OAc7BvuD,IAAK,4BACL1E,MAAO,SAAmCo3B,EAAM2V,EAAKtuC,GAkBnD,IAjBA,GAAI26B,GAAI36B,EAAQ26B,EACZxc,EAAIne,EAAQme,EACZxQ,EAAM3N,EAAQ2N,IACdC,EAAO5N,EAAQ4N,KACfia,EAAY7nB,EAAQ6nB,UAEpBpa,EAAgB,GAChBC,EAAY,EACZklC,EAASz2C,KAAK6D,QAAQwtG,kBACtBl6E,EAAM,OACNkhC,EAAQ,OACRoxC,EAAmB,OACnB+N,EAAkB,OAClBC,EAAa,OACb/iF,EAAY,IACZhjB,EAAwB,IAAdF,EAAMC,GAENA,GAAPD,GAA2BF,EAAZC,IACpBG,EAAwB,IAAdF,EAAMC,GAEhB0lB,EAAMn3B,KAAKy0G,eAAej2E,EAAGxc,EAAGy0B,EAAQ/kC,GACxC2mD,EAAQ/yD,KAAKgzD,MAAM97B,EAAKxa,EAAImV,EAAInV,EAAGwa,EAAKgC,EAAIrH,EAAIqH,GAChDirE,EAAmBjtE,EAAKitE,iBAAiBt3D,EAAKkmB,GAC9Cm/C,EAAkBlyG,KAAK+0C,KAAK/0C,KAAKiW,IAAI4b,EAAIqH,EAAIhC,EAAKgC,EAAG,GAAKl5B,KAAKiW,IAAI4b,EAAInV,EAAIwa,EAAKxa,EAAG,IACnFy1F,EAAahO,EAAmB+N,IAC5BlyG,KAAK4R,IAAIugG,GAAc/iF,KAEhB+iF,EAAa,EAEhB/rF,EAAY,EACdla,EAAME,EAEND,EAAOC,EAGLga,EAAY,EACdja,EAAOC,EAEPF,EAAME,EAGZH,GAIF,OAFA4lB,GAAIrnB,EAAI4B,EAEDylB,KAWTrtB,IAAK,eACL1E,MAAO,SAAsBgjD,EAAU75C,GACrC,MAAI65C,MAAa,EACR9iD,KAAKJ,IAAIlF,KAAKoxG,eAAgB,GAAMpxG,KAAKmgD,KAAK+8C,KAAK73F,OAEtDkJ,KAAU,EACLjJ,KAAKJ,IAAIlF,KAAKmxG,WAAY,GAAMnxG,KAAKmgD,KAAK+8C,KAAK73F,OAE/CC,KAAKJ,IAAIlF,KAAK6D,QAAQu7B,MAAO,GAAMp/B,KAAKmgD,KAAK+8C,KAAK73F,UAK/DyE,IAAK,WACL1E,MAAO,SAAkB+sC,EAAKiW,EAAU75C,GACtC,GAAI4qG,GAAen5G,KAAK6D,QAAQ+I,KAChC,IAAIusG,EAAa1+C,WAAY,EAAO,CAElC,GAA6B,SAAzB0+C,EAAa1+C,SAAsBz6D,KAAKuV,KAAKlV,KAAOL,KAAKsV,GAAGjV,GAAI,CAClE,GAAI+4G,GAAMjnE,EAAIknE,qBAAqBr5G,KAAKuV,KAAKipB,EAAGx+B,KAAKuV,KAAKyM,EAAGhiB,KAAKsV,GAAGkpB,EAAGx+B,KAAKsV,GAAG0M,GAC5Es3F,EAAY,OACZC,EAAU,MAgBd,OAfAD,GAAYt5G,KAAKuV,KAAK1R,QAAQ+I,MAAM0B,UAAUD,OAC9CkrG,EAAUv5G,KAAKsV,GAAGzR,QAAQ+I,MAAM0B,UAAUD,OAEtCrO,KAAKuV,KAAK6yC,YAAa,GAASpoD,KAAKsV,GAAG8yC,YAAa,GACvDkxD,EAAY34G,EAAKgM,gBAAgB3M,KAAKuV,KAAK1R,QAAQ+I,MAAMyB,OAAQrO,KAAK6D,QAAQ+I,MAAMC,SACpF0sG,EAAU54G,EAAKgM,gBAAgB3M,KAAKsV,GAAGzR,QAAQ+I,MAAMyB,OAAQrO,KAAK6D,QAAQ+I,MAAMC,UACvE7M,KAAKuV,KAAK6yC,YAAa,GAAQpoD,KAAKsV,GAAG8yC,YAAa,EAC7DmxD,EAAUv5G,KAAKsV,GAAGzR,QAAQ+I,MAAMyB,OACvBrO,KAAKuV,KAAK6yC,YAAa,GAASpoD,KAAKsV,GAAG8yC,YAAa,IAC9DkxD,EAAYt5G,KAAKuV,KAAK1R,QAAQ+I,MAAMyB,QAEtC+qG,EAAII,aAAa,EAAGF,GACpBF,EAAII,aAAa,EAAGD,GAGbH,EAGLp5G,KAAKwyG,cAAe,IACO,OAAzB2G,EAAa1+C,SACfz6D,KAAK4M,MAAM0B,UAAYtO,KAAKsV,GAAGzR,QAAQ+I,MAAM0B,UAAUD,OACvDrO,KAAK4M,MAAM2B,MAAQvO,KAAKsV,GAAGzR,QAAQ+I,MAAM2B,MAAMF,OAC/CrO,KAAK4M,MAAMA,MAAQjM,EAAKgM,gBAAgB3M,KAAKsV,GAAGzR,QAAQ+I,MAAMyB,OAAQ8qG,EAAatsG,WAGnF7M,KAAK4M,MAAM0B,UAAYtO,KAAKuV,KAAK1R,QAAQ+I,MAAM0B,UAAUD,OACzDrO,KAAK4M,MAAM2B,MAAQvO,KAAKuV,KAAK1R,QAAQ+I,MAAM2B,MAAMF,OACjDrO,KAAK4M,MAAMA,MAAQjM,EAAKgM,gBAAgB3M,KAAKuV,KAAK1R,QAAQ+I,MAAMyB,OAAQ8qG,EAAatsG,eAGhF7M,MAAKwyG,cAAe,IAC7BxyG,KAAK4M,MAAM0B,UAAY6qG,EAAa7qG,UACpCtO,KAAK4M,MAAM2B,MAAQ4qG,EAAa5qG,MAChCvO,KAAK4M,MAAMA,MAAQjM,EAAKgM,gBAAgBwsG,EAAavsG,MAAOusG,EAAatsG,SAM3E,OAFA7M,MAAKwyG,YAAa,EAEdpqD,KAAa,EACRpoD,KAAK4M,MAAM0B,UACTC,KAAU,EACZvO,KAAK4M,MAAM2B,MAEXvO,KAAK4M,MAAMA,SActB9C,IAAK,UACL1E,MAAO,SAAiB+sC,EAAK3T,EAAGxc,EAAGy0B,GAEjCz2C,KAAKktG,aAAa/6D,GAGlBA,EAAIa,YACJb,EAAIuE,IAAIlY,EAAGxc,EAAGy0B,EAAQ,EAAG,EAAInxC,KAAKqxC,IAAI,GACtCxE,EAAI7J,SAGJtoC,KAAKmtG,cAAch7D,MAiBrBroC,IAAK,oBACL1E,MAAO,SAA2BywG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIqB,GAExD,GAAIvsG,GAAc,CAClB,IAAInL,KAAKuV,MAAQvV,KAAKsV,GACpBnK,EAAcnL,KAAKy5G,mBAAmB5D,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIqB,OACzD,CACL,GAAIgC,GAAmB15G,KAAKk4G,iBAExByB,EAAmB1P,EAAeyP,EAAkB,GAEpDl7E,EAAIm7E,EAAiB,GACrB33F,EAAI23F,EAAiB,GACrBljE,EAASkjE,EAAiB,GAE1BjvE,EAAKlM,EAAI43E,EACTzrE,EAAK3oB,EAAIq0F,CACblrG,GAAc7F,KAAK4R,IAAI5R,KAAK+0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAAM8L,GAGxD,MAAIz2C,MAAKopG,YAAYvqE,KAAK/1B,KAAOstG,GAAMp2G,KAAKopG,YAAYvqE,KAAK/1B,KAAO9I,KAAKopG,YAAYvqE,KAAKO,MAAQg3E,GAAMp2G,KAAKopG,YAAYvqE,KAAK71B,IAAMqtG,GAAMr2G,KAAKopG,YAAYvqE,KAAK71B,IAAMhJ,KAAKopG,YAAYvqE,KAAKQ,OAASg3E,EAC5L,EAEAlrG,KAIXrB,IAAK,qBACL1E,MAAO,SAA4BywG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,GACrD,GAAIuD,GAAK7D,EAAKF,EACVgE,EAAK7D,EAAKF,EACVgE,EAAYF,EAAKA,EAAKC,EAAKA,EAC3BE,IAAM3D,EAAKP,GAAM+D,GAAMvD,EAAKP,GAAM+D,GAAMC,CAExCC,GAAI,EACNA,EAAI,EACS,EAAJA,IACTA,EAAI,EAGN,IAAIv7E,GAAIq3E,EAAKkE,EAAIH,EACb53F,EAAI8zF,EAAKiE,EAAIF,EACbnvE,EAAKlM,EAAI43E,EACTzrE,EAAK3oB,EAAIq0F,CAQb,OAAO/wG,MAAK+0C,KAAK3P,EAAKA,EAAKC,EAAKA,MAWlC7gC,IAAK,eACL1E,MAAO,SAAsB+sC,EAAK7C,EAAUmkE,EAASrrD,EAAU75C,GAE7D,GAAI8pD,GAAQ,OACR2hD,EAAa,OACb5F,EAAQ,OACRC,EAAQ,OACR4F,EAAc,OACdhJ,EAAc,OACdv+D,EAAY1yC,KAAK63G,aAAazvD,EAAU75C,EAmB5C,IAjBiB,SAAb+gC,GACF8kE,EAAQp0G,KAAKuV,KACb8+F,EAAQr0G,KAAKsV,GACb2kG,EAAc,GACdhJ,EAAcjxG,KAAK6D,QAAQmtG,OAAOz7F,KAAK07F,aACjB,OAAb3hE,GACT8kE,EAAQp0G,KAAKsV,GACb++F,EAAQr0G,KAAKuV,KACb0kG,GAAe,GACfhJ,EAAcjxG,KAAK6D,QAAQmtG,OAAO17F,GAAG27F,cAErCmD,EAAQp0G,KAAKsV,GACb++F,EAAQr0G,KAAKuV,KACb07F,EAAcjxG,KAAK6D,QAAQmtG,OAAOt/F,OAAOu/F,aAIvCmD,GAASC,EACX,GAAiB,WAAb/kE,EAEF,GAAItvC,KAAK6D,QAAQytG,OAAOtgG,WAAY,EAAM,CACxCgpG,EAAah6G,KAAKk6G,mBAAmB9F,EAAOjiE,GAAOulE,IAAKjE,GACxD,IAAI0G,GAAWn6G,KAAKs0G,SAAShvG,KAAKJ,IAAI,EAAKI,KAAKL,IAAI,EAAK+0G,EAAWlqG,EAAImqG,IAAexG,EACvFp7C,GAAQ/yD,KAAKgzD,MAAM0hD,EAAWh4F,EAAIm4F,EAASn4F,EAAGg4F,EAAWx7E,EAAI27E,EAAS37E,OAEtE65B,GAAQ/yD,KAAKgzD,MAAM87C,EAAMpyF,EAAIqyF,EAAMryF,EAAGoyF,EAAM51E,EAAI61E,EAAM71E,GACtDw7E,EAAah6G,KAAKk6G,mBAAmB9F,EAAOjiE,OAG9CkmB,GAAQ/yD,KAAKgzD,MAAM87C,EAAMpyF,EAAIqyF,EAAMryF,EAAGoyF,EAAM51E,EAAI61E,EAAM71E,GACtDw7E,EAAah6G,KAAKs0G,SAAS,GAAKb,OAE7B,CAGH,GAAI2G,GAAmBp6G,KAAKk4G,eAAe/lE,GAEvCkoE,EAAmBpQ,EAAemQ,EAAkB,GAEpD57E,EAAI67E,EAAiB,GACrBr4F,EAAIq4F,EAAiB,GACrB5jE,EAAS4jE,EAAiB,EAGb,UAAb/qE,GACF0qE,EAAah6G,KAAKk6G,mBAAmBl6G,KAAKuV,KAAM48B,GAAO3T,EAAGA,EAAGxc,EAAGA,EAAGxQ,IAAK,IAAMC,KAAM,GAAKia,UAAW,KACpG2sC,EAAuB,GAAf2hD,EAAWlqG,EAASxK,KAAKqxC,GAAK,IAAMrxC,KAAKqxC,GAAK,GAAMrxC,KAAKqxC,IAC3C,OAAbrH,GACT0qE,EAAah6G,KAAKk6G,mBAAmBl6G,KAAKuV,KAAM48B,GAAO3T,EAAGA,EAAGxc,EAAGA,EAAGxQ,IAAK,GAAKC,KAAM,EAAKia,UAAW,IACnG2sC,EAAuB,GAAf2hD,EAAWlqG,EAASxK,KAAKqxC,GAAK,IAAMrxC,KAAKqxC,GAAK,IAAMrxC,KAAKqxC,KAEjEqjE,EAAah6G,KAAKy0G,eAAej2E,EAAGxc,EAAGy0B,EAAQ,MAC/C4hB,EAAQ,oBAId,GAAI3xD,GAAS,GAAKuqG,EAAc,EAAIv+D,EAEhC4nE,EAAKN,EAAWx7E,EAAa,GAAT93B,EAAepB,KAAK+kC,IAAIguB,GAC5CkiD,EAAKP,EAAWh4F,EAAa,GAATtb,EAAepB,KAAK4kC,IAAImuB,GAC5CmiD,GAAch8E,EAAG87E,EAAIt4F,EAAGu4F,EAE5B,QAAS57E,MAAOq7E,EAAYjG,KAAMyG,EAAWniD,MAAOA,EAAO3xD,OAAQA,MAYrEoD,IAAK,gBACL1E,MAAO,SAAuB+sC,EAAKiW,EAAU75C,EAAOolG,GAElDxhE,EAAIY,YAAc/yC,KAAK43G,SAASzlE,EAAKiW,EAAU75C,GAC/C4jC,EAAIiB,UAAYjB,EAAIY,YACpBZ,EAAIO,UAAY1yC,KAAK63G,aAAazvD,EAAU75C,GAG5C4jC,EAAIsoE,MAAM9G,EAAUh1E,MAAMH,EAAGm1E,EAAUh1E,MAAM3c,EAAG2xF,EAAUt7C,MAAOs7C,EAAUjtG,QAG3E1G,KAAKktG,aAAa/6D,GAClBA,EAAI9J,OAEJroC,KAAKmtG,cAAch7D,MAGrBroC,IAAK,eACL1E,MAAO,SAAsB+sC,GACvBnyC,KAAK6D,QAAQ0hG,OAAOv0F,WAAY,IAClCmhC,EAAIs7D,YAAcztG,KAAK6D,QAAQ0hG,OAAO34F,MACtCulC,EAAIu7D,WAAa1tG,KAAK6D,QAAQ0hG,OAAO1mE,KACrCsT,EAAIw7D,cAAgB3tG,KAAK6D,QAAQ0hG,OAAO/mE,EACxC2T,EAAIy7D,cAAgB5tG,KAAK6D,QAAQ0hG,OAAOvjF,MAI5ClY,IAAK,gBACL1E,MAAO,SAAuB+sC,GACxBnyC,KAAK6D,QAAQ0hG,OAAOv0F,WAAY,IAClCmhC,EAAIs7D,YAAc,gBAClBt7D,EAAIu7D,WAAa,EACjBv7D,EAAIw7D,cAAgB,EACpBx7D,EAAIy7D,cAAgB,OAKnB+J,IAGT/3G,GAAAA,WAAkB+3G,GAId,SAAS93G,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hB0xD,EAAmB12G,EAAoB,IAEvC22G,EAAmBv3D,EAAuBs3D,GAU1C8D,EAAoB,SAAU3D,GAGhC,QAAS2D,GAAkB72G,EAASs8C,EAAMipD,GACxCpkD,EAAgBhlD,KAAM06G,EAItB,IAAIv3D,GAAQ+oD,EAA2BlsG,KAAMuH,OAAOslG,eAAe6N,GAAmBn6G,KAAKP,KAAM6D,EAASs8C,EAAMipD,GAQhH,OAJAjmD,GAAMw3D,eAAiB,WACrBx3D,EAAMy3D,sBAERz3D,EAAMhD,KAAKE,QAAQrgB,GAAG,yBAA0BmjB,EAAMw3D,gBAC/Cx3D,EAgKT,MA/KAipD,GAAUsO,EAAmB3D,GAkB7B3xD,EAAas1D,IACX5wG,IAAK,aACL1E,MAAO,SAAoBvB,GAEzB,GAAIg3G,IAAgB,CAChB76G,MAAK6D,QAAQ0mD,UAAY1mD,EAAQ0mD,UACnCswD,GAAgB,GAIlB76G,KAAK6D,QAAUA,EACf7D,KAAKK,GAAKL,KAAK6D,QAAQxD,GACvBL,KAAKuV,KAAOvV,KAAKmgD,KAAK87C,MAAMj8F,KAAK6D,QAAQ0R,MACzCvV,KAAKsV,GAAKtV,KAAKmgD,KAAK87C,MAAMj8F,KAAK6D,QAAQyR,IAGvCtV,KAAK86G,mBACL96G,KAAKqyG,UAGDwI,KAAkB,IACpB76G,KAAK03G,IAAI93E,YAAa2qB,QAASvqD,KAAK6D,QAAQ0mD,UAC5CvqD,KAAK46G,yBAIT9wG,IAAK,UACL1E,MAAO,WACLpF,KAAKuV,KAAOvV,KAAKmgD,KAAK87C,MAAMj8F,KAAK6D,QAAQ0R,MACzCvV,KAAKsV,GAAKtV,KAAKmgD,KAAK87C,MAAMj8F,KAAK6D,QAAQyR,IACrB3O,SAAd3G,KAAKuV,MAAkC5O,SAAZ3G,KAAKsV,IAAoBtV,KAAK6D,QAAQ0mD,WAAY,EAC/EvqD,KAAK03G,IAAI93E,YAAa2qB,SAAS,IAG3BvqD,KAAKuV,KAAKlV,KAAOL,KAAKsV,GAAGjV,GAC3BL,KAAK03G,IAAI93E,YAAa2qB,SAAS,IAE/BvqD,KAAK03G,IAAI93E,YAAa2qB,SAAS,OAWrCzgD,IAAK,UACL1E,MAAO,WAEL,MADApF,MAAKmgD,KAAKE,QAAQlgB,IAAI,yBAA0BngC,KAAK26G,gBACpCh0G,SAAb3G,KAAK03G,WACA13G,MAAKmgD,KAAK87C,MAAMj8F,KAAK03G,IAAIr3G,IAChCL,KAAK03G,IAAM/wG,QACJ,IAEF,KAYTmD,IAAK,mBACL1E,MAAO,WACL,GAAiBuB,SAAb3G,KAAK03G,IAAmB,CAC1B,GAAI7X,GAAS,UAAY7/F,KAAKK,GAC1Bm8B,EAAOx8B,KAAKmgD,KAAK48C,UAAUC,YAC7B38F,GAAIw/F,EACJ2F,MAAO,SACPj7C,SAAS,EACT2oB,QAAQ,GAEVlzE,MAAKmgD,KAAK87C,MAAM4D,GAAUrjE,EAC1Bx8B,KAAK03G,IAAMl7E,EACXx8B,KAAK03G,IAAIqD,aAAe/6G,KAAKK,GAC7BL,KAAK46G,yBAIT9wG,IAAK,qBACL1E,MAAO,WACYuB,SAAb3G,KAAK03G,KAAmC/wG,SAAd3G,KAAKuV,MAAkC5O,SAAZ3G,KAAKsV,IAC5DtV,KAAK03G,IAAIl5E,EAAI,IAAOx+B,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,GAC1Cx+B,KAAK03G,IAAI11F,EAAI,IAAOhiB,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M,IACpBrb,SAAb3G,KAAK03G,MACd13G,KAAK03G,IAAIl5E,EAAI,EACbx+B,KAAK03G,IAAI11F,EAAI,MAWjBlY,IAAK,QACL1E,MAAO,SAAe+sC,EAAKshE,GAEzBthE,EAAIa,YACJb,EAAIc,OAAOjzC,KAAK4zG,UAAUp1E,EAAGx+B,KAAK4zG,UAAU5xF,GAE1Brb,SAAd8sG,EAAQj1E,EACV2T,EAAIe,OAAOlzC,KAAK6zG,QAAQr1E,EAAGx+B,KAAK6zG,QAAQ7xF,GAExCmwB,EAAI6oE,iBAAiBvH,EAAQj1E,EAAGi1E,EAAQzxF,EAAGhiB,KAAK6zG,QAAQr1E,EAAGx+B,KAAK6zG,QAAQ7xF,GAG1EhiB,KAAKktG,aAAa/6D,GAClBA,EAAI7J,SACJtoC,KAAKmtG,cAAch7D,MAGrBroC,IAAK,aACL1E,MAAO,WACL,MAAOpF,MAAK03G,OAYd5tG,IAAK,WACL1E,MAAO,SAAkB+vG,GACvB,GAAI1B,GAAUhtG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBzG,KAAK03G,IAAMjxG,UAAU,GAErFqJ,EAAIqlG,EACJ32E,EAAIl5B,KAAKiW,IAAI,EAAIzL,EAAG,GAAK9P,KAAK4zG,UAAUp1E,EAAI,EAAI1uB,GAAK,EAAIA,GAAK2jG,EAAQj1E,EAAIl5B,KAAKiW,IAAIzL,EAAG,GAAK9P,KAAK6zG,QAAQr1E,EACxGxc,EAAI1c,KAAKiW,IAAI,EAAIzL,EAAG,GAAK9P,KAAK4zG,UAAU5xF,EAAI,EAAIlS,GAAK,EAAIA,GAAK2jG,EAAQzxF,EAAI1c,KAAKiW,IAAIzL,EAAG,GAAK9P,KAAK6zG,QAAQ7xF,CAE5G,QAASwc,EAAGA,EAAGxc,EAAGA,MAGpBlY,IAAK,sBACL1E,MAAO,SAA6B8wG,EAAU/jE,GAC5C,MAAOnyC,MAAKm2G,0BAA0BD,EAAU/jE,EAAKnyC,KAAK03G,QAG5D5tG,IAAK,qBACL1E,MAAO,SAA4BywG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,GAErD,MAAOr2G,MAAKw2G,yBAAyBX,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAIr2G,KAAK03G,SAI/DgD,GACP7D,EAAAA,WAEFj3G,GAAAA,WAAkB86G,GAId,SAAS76G,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hB0xD,EAAmB12G,EAAoB,IAEvC22G,EAAmBv3D,EAAuBs3D,GAU1CqE,EAAmB,SAAUlE,GAG/B,QAASkE,GAAiBp3G,EAASs8C,EAAMipD,GAGvC,MAFApkD,GAAgBhlD,KAAMi7G,GAEf/O,EAA2BlsG,KAAMuH,OAAOslG,eAAeoO,GAAkB16G,KAAKP,KAAM6D,EAASs8C,EAAMipD,IAyO5G,MA9OAgD,GAAU6O,EAAkBlE,GAe5B3xD,EAAa61D,IACXnxG,IAAK,QACL1E,MAAO,SAAe+sC,EAAKshE,GAEzBthE,EAAIa,YACJb,EAAIc,OAAOjzC,KAAK4zG,UAAUp1E,EAAGx+B,KAAK4zG,UAAU5xF,GAG1Brb,SAAd8sG,EAAQj1E,EACV2T,EAAIe,OAAOlzC,KAAK6zG,QAAQr1E,EAAGx+B,KAAK6zG,QAAQ7xF,GAExCmwB,EAAI6oE,iBAAiBvH,EAAQj1E,EAAGi1E,EAAQzxF,EAAGhiB,KAAK6zG,QAAQr1E,EAAGx+B,KAAK6zG,QAAQ7xF,GAG1EhiB,KAAKktG,aAAa/6D,GAClBA,EAAI7J,SACJtoC,KAAKmtG,cAAch7D,MAGrBroC,IAAK,aACL1E,MAAO,WACL,MAAOpF,MAAKi2G,wBAUdnsG,IAAK,qBACL1E,MAAO,WACL,GAAI81G,GAAOv0G,OACPw0G,EAAOx0G,OACP48C,EAASvjD,KAAK6D,QAAQytG,OAAOE,UAC7BzpG,EAAO/H,KAAK6D,QAAQytG,OAAOvpG,KAC3B2iC,EAAKplC,KAAK4R,IAAIlX,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,GACpCmM,EAAKrlC,KAAK4R,IAAIlX,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M;AACxC,GAAa,aAATja,GAAgC,kBAATA,EACrBzC,KAAK4R,IAAIlX,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,IAAMl5B,KAAK4R,IAAIlX,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M,IAClEhiB,KAAKuV,KAAKyM,GAAKhiB,KAAKsV,GAAG0M,EACrBhiB,KAAKuV,KAAKipB,GAAKx+B,KAAKsV,GAAGkpB,GACzB08E,EAAOl7G,KAAKuV,KAAKipB,EAAI+kB,EAAS5Y,EAC9BwwE,EAAOn7G,KAAKuV,KAAKyM,EAAIuhC,EAAS5Y,GACrB3qC,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,IAC/B08E,EAAOl7G,KAAKuV,KAAKipB,EAAI+kB,EAAS5Y,EAC9BwwE,EAAOn7G,KAAKuV,KAAKyM,EAAIuhC,EAAS5Y,GAEvB3qC,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M,IAC3BhiB,KAAKuV,KAAKipB,GAAKx+B,KAAKsV,GAAGkpB,GACzB08E,EAAOl7G,KAAKuV,KAAKipB,EAAI+kB,EAAS5Y,EAC9BwwE,EAAOn7G,KAAKuV,KAAKyM,EAAIuhC,EAAS5Y,GACrB3qC,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,IAC/B08E,EAAOl7G,KAAKuV,KAAKipB,EAAI+kB,EAAS5Y,EAC9BwwE,EAAOn7G,KAAKuV,KAAKyM,EAAIuhC,EAAS5Y,IAGrB,aAAT5iC,IACFmzG,EAAY33D,EAAS5Y,EAAdD,EAAmB1qC,KAAKuV,KAAKipB,EAAI08E,IAEjC51G,KAAK4R,IAAIlX,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,GAAKl5B,KAAK4R,IAAIlX,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M,KACxEhiB,KAAKuV,KAAKyM,GAAKhiB,KAAKsV,GAAG0M,EACrBhiB,KAAKuV,KAAKipB,GAAKx+B,KAAKsV,GAAGkpB,GACzB08E,EAAOl7G,KAAKuV,KAAKipB,EAAI+kB,EAAS7Y,EAC9BywE,EAAOn7G,KAAKuV,KAAKyM,EAAIuhC,EAAS7Y,GACrB1qC,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,IAC/B08E,EAAOl7G,KAAKuV,KAAKipB,EAAI+kB,EAAS7Y,EAC9BywE,EAAOn7G,KAAKuV,KAAKyM,EAAIuhC,EAAS7Y,GAEvB1qC,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M,IAC3BhiB,KAAKuV,KAAKipB,GAAKx+B,KAAKsV,GAAGkpB,GACzB08E,EAAOl7G,KAAKuV,KAAKipB,EAAI+kB,EAAS7Y,EAC9BywE,EAAOn7G,KAAKuV,KAAKyM,EAAIuhC,EAAS7Y,GACrB1qC,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,IAC/B08E,EAAOl7G,KAAKuV,KAAKipB,EAAI+kB,EAAS7Y,EAC9BywE,EAAOn7G,KAAKuV,KAAKyM,EAAIuhC,EAAS7Y,IAGrB,aAAT3iC,IACFozG,EAAY53D,EAAS7Y,EAAdC,EAAmB3qC,KAAKuV,KAAKyM,EAAIm5F,QAGvC,IAAa,kBAATpzG,EACLzC,KAAK4R,IAAIlX,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,IAAMl5B,KAAK4R,IAAIlX,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M,IAEtEk5F,EAAOl7G,KAAKuV,KAAKipB,EAEf28E,EADEn7G,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M,EACjBhiB,KAAKsV,GAAG0M,GAAK,EAAIuhC,GAAU5Y,EAE3B3qC,KAAKsV,GAAG0M,GAAK,EAAIuhC,GAAU5Y,GAE3BrlC,KAAK4R,IAAIlX,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,GAAKl5B,KAAK4R,IAAIlX,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M,KAG1Ek5F,EADEl7G,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,EACjBx+B,KAAKsV,GAAGkpB,GAAK,EAAI+kB,GAAU7Y,EAE3B1qC,KAAKsV,GAAGkpB,GAAK,EAAI+kB,GAAU7Y,EAEpCywE,EAAOn7G,KAAKuV,KAAKyM,OAEd,IAAa,eAATja,EAEPmzG,EADEl7G,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,EACjBx+B,KAAKsV,GAAGkpB,GAAK,EAAI+kB,GAAU7Y,EAE3B1qC,KAAKsV,GAAGkpB,GAAK,EAAI+kB,GAAU7Y,EAEpCywE,EAAOn7G,KAAKuV,KAAKyM,MACZ,IAAa,aAATja,EACTmzG,EAAOl7G,KAAKuV,KAAKipB,EAEf28E,EADEn7G,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M,EACjBhiB,KAAKsV,GAAG0M,GAAK,EAAIuhC,GAAU5Y,EAE3B3qC,KAAKsV,GAAG0M,GAAK,EAAIuhC,GAAU5Y,MAE/B,IAAa,aAAT5iC,EAAqB,CAC9B2iC,EAAK1qC,KAAKsV,GAAGkpB,EAAIx+B,KAAKuV,KAAKipB,EAC3BmM,EAAK3qC,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M,CAC3B,IAAIy0B,GAASnxC,KAAK+0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAClCywE,EAAK91G,KAAKqxC,GAEV0kE,EAAgB/1G,KAAKgzD,MAAM3tB,EAAID,GAC/B4wE,GAAWD,GAA0B,GAAT93D,EAAe,IAAO63D,IAAO,EAAIA,EAEjEF,GAAOl7G,KAAKuV,KAAKipB,GAAc,GAAT+kB,EAAe,IAAO9M,EAASnxC,KAAK4kC,IAAIoxE,GAC9DH,EAAOn7G,KAAKuV,KAAKyM,GAAc,GAATuhC,EAAe,IAAO9M,EAASnxC,KAAK+kC,IAAIixE,OACzD,IAAa,cAATvzG,EAAsB,CAC/B2iC,EAAK1qC,KAAKsV,GAAGkpB,EAAIx+B,KAAKuV,KAAKipB,EAC3BmM,EAAK3qC,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M,CAC3B,IAAI82F,GAAUxzG,KAAK+0C,KAAK3P,EAAKA,EAAKC,EAAKA,GACnC4wE,EAAMj2G,KAAKqxC,GAEX6kE,EAAiBl2G,KAAKgzD,MAAM3tB,EAAID,GAChC+wE,GAAYD,GAA4B,IAATj4D,EAAe,IAAOg4D,IAAQ,EAAIA,EAErEL,GAAOl7G,KAAKuV,KAAKipB,GAAc,GAAT+kB,EAAe,IAAOu1D,EAAUxzG,KAAK4kC,IAAIuxE,GAC/DN,EAAOn7G,KAAKuV,KAAKyM,GAAc,GAATuhC,EAAe,IAAOu1D,EAAUxzG,KAAK+kC,IAAIoxE,OAG3Dn2G,MAAK4R,IAAIlX,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,IAAMl5B,KAAK4R,IAAIlX,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M,GAClEhiB,KAAKuV,KAAKyM,GAAKhiB,KAAKsV,GAAG0M,EACrBhiB,KAAKuV,KAAKipB,GAAKx+B,KAAKsV,GAAGkpB,GACzB08E,EAAOl7G,KAAKuV,KAAKipB,EAAI+kB,EAAS5Y,EAC9BwwE,EAAOn7G,KAAKuV,KAAKyM,EAAIuhC,EAAS5Y,EAC9BuwE,EAAOl7G,KAAKsV,GAAGkpB,EAAI08E,EAAOl7G,KAAKsV,GAAGkpB,EAAI08E,GAC7Bl7G,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,IAC/B08E,EAAOl7G,KAAKuV,KAAKipB,EAAI+kB,EAAS5Y,EAC9BwwE,EAAOn7G,KAAKuV,KAAKyM,EAAIuhC,EAAS5Y,EAC9BuwE,EAAOl7G,KAAKsV,GAAGkpB,EAAI08E,EAAOl7G,KAAKsV,GAAGkpB,EAAI08E,GAE/Bl7G,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M,IAC3BhiB,KAAKuV,KAAKipB,GAAKx+B,KAAKsV,GAAGkpB,GACzB08E,EAAOl7G,KAAKuV,KAAKipB,EAAI+kB,EAAS5Y,EAC9BwwE,EAAOn7G,KAAKuV,KAAKyM,EAAIuhC,EAAS5Y,EAC9BuwE,EAAOl7G,KAAKsV,GAAGkpB,EAAI08E,EAAOl7G,KAAKsV,GAAGkpB,EAAI08E,GAC7Bl7G,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,IAC/B08E,EAAOl7G,KAAKuV,KAAKipB,EAAI+kB,EAAS5Y,EAC9BwwE,EAAOn7G,KAAKuV,KAAKyM,EAAIuhC,EAAS5Y,EAC9BuwE,EAAOl7G,KAAKsV,GAAGkpB,EAAI08E,EAAOl7G,KAAKsV,GAAGkpB,EAAI08E,IAGjC51G,KAAK4R,IAAIlX,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,GAAKl5B,KAAK4R,IAAIlX,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M,KACxEhiB,KAAKuV,KAAKyM,GAAKhiB,KAAKsV,GAAG0M,EACrBhiB,KAAKuV,KAAKipB,GAAKx+B,KAAKsV,GAAGkpB,GACzB08E,EAAOl7G,KAAKuV,KAAKipB,EAAI+kB,EAAS7Y,EAC9BywE,EAAOn7G,KAAKuV,KAAKyM,EAAIuhC,EAAS7Y,EAC9BywE,EAAOn7G,KAAKsV,GAAG0M,EAAIm5F,EAAOn7G,KAAKsV,GAAG0M,EAAIm5F,GAC7Bn7G,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,IAC/B08E,EAAOl7G,KAAKuV,KAAKipB,EAAI+kB,EAAS7Y,EAC9BywE,EAAOn7G,KAAKuV,KAAKyM,EAAIuhC,EAAS7Y,EAC9BywE,EAAOn7G,KAAKsV,GAAG0M,EAAIm5F,EAAOn7G,KAAKsV,GAAG0M,EAAIm5F,GAE/Bn7G,KAAKuV,KAAKyM,EAAIhiB,KAAKsV,GAAG0M,IAC3BhiB,KAAKuV,KAAKipB,GAAKx+B,KAAKsV,GAAGkpB,GACzB08E,EAAOl7G,KAAKuV,KAAKipB,EAAI+kB,EAAS7Y,EAC9BywE,EAAOn7G,KAAKuV,KAAKyM,EAAIuhC,EAAS7Y,EAC9BywE,EAAOn7G,KAAKsV,GAAG0M,EAAIm5F,EAAOn7G,KAAKsV,GAAG0M,EAAIm5F,GAC7Bn7G,KAAKuV,KAAKipB,EAAIx+B,KAAKsV,GAAGkpB,IAC/B08E,EAAOl7G,KAAKuV,KAAKipB,EAAI+kB,EAAS7Y,EAC9BywE,EAAOn7G,KAAKuV,KAAKyM,EAAIuhC,EAAS7Y,EAC9BywE,EAAOn7G,KAAKsV,GAAG0M,EAAIm5F,EAAOn7G,KAAKsV,GAAG0M,EAAIm5F,IAK9C,QAAS38E,EAAG08E,EAAMl5F,EAAGm5F,MAGvBrxG,IAAK,sBACL1E,MAAO,SAA6B8wG,EAAU/jE,GAC5C,GAAItuC,GAAU4C,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,EAEnF,OAAOzG,MAAKm2G,0BAA0BD,EAAU/jE,EAAKtuC,EAAQ6zG,QAG/D5tG,IAAK,qBACL1E,MAAO,SAA4BywG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,GACrD,GAAI5C,GAAUhtG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBzG,KAAKi2G,qBAAuBxvG,UAAU,EAE1G,OAAOzG,MAAKw2G,yBAAyBX,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,EAAI5C,MAY/D3pG,IAAK,WACL1E,MAAO,SAAkB+vG,GACvB,GAAI1B,GAAUhtG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBzG,KAAKi2G,qBAAuBxvG,UAAU,GAEtGqJ,EAAIqlG,EACJ32E,EAAIl5B,KAAKiW,IAAI,EAAIzL,EAAG,GAAK9P,KAAK4zG,UAAUp1E,EAAI,EAAI1uB,GAAK,EAAIA,GAAK2jG,EAAQj1E,EAAIl5B,KAAKiW,IAAIzL,EAAG,GAAK9P,KAAK6zG,QAAQr1E,EACxGxc,EAAI1c,KAAKiW,IAAI,EAAIzL,EAAG,GAAK9P,KAAK4zG,UAAU5xF,EAAI,EAAIlS,GAAK,EAAIA,GAAK2jG,EAAQzxF,EAAI1c,KAAKiW,IAAIzL,EAAG,GAAK9P,KAAK6zG,QAAQ7xF,CAE5G,QAASwc,EAAGA,EAAGxc,EAAGA,OAIfi5F,GACPpE,EAAAA,WAEFj3G,GAAAA,WAAkBq7G,GAId,SAASp7G,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBkyD,EAAal3G,EAAoB,IAEjCm3G,EAAa/3D,EAAuB83D,GAUpCsE,EAAe,SAAUnE,GAG3B,QAASmE,GAAa73G,EAASs8C,EAAMipD,GAGnC,MAFApkD,GAAgBhlD,KAAM07G,GAEfxP,EAA2BlsG,KAAMuH,OAAOslG,eAAe6O,GAAcn7G,KAAKP,KAAM6D,EAASs8C,EAAMipD,IA2ExG,MAhFAgD,GAAUsP,EAAcnE,GAexBnyD,EAAas2D,IACX5xG,IAAK,QACL1E,MAAO,SAAe+sC,GAEpBA,EAAIa,YACJb,EAAIc,OAAOjzC,KAAK4zG,UAAUp1E,EAAGx+B,KAAK4zG,UAAU5xF,GAC5CmwB,EAAIe,OAAOlzC,KAAK6zG,QAAQr1E,EAAGx+B,KAAK6zG,QAAQ7xF,GAExChiB,KAAKktG,aAAa/6D,GAClBA,EAAI7J,SACJtoC,KAAKmtG,cAAch7D,MAGrBroC,IAAK,aACL1E,MAAO,eAaP0E,IAAK,WACL1E,MAAO,SAAkB+vG,GACvB,OACE32E,GAAI,EAAI22E,GAAcn1G,KAAK4zG,UAAUp1E,EAAI22E,EAAan1G,KAAK6zG,QAAQr1E,EACnExc,GAAI,EAAImzF,GAAcn1G,KAAK4zG,UAAU5xF,EAAImzF,EAAan1G,KAAK6zG,QAAQ7xF,MAIvElY,IAAK,sBACL1E,MAAO,SAA6B8wG,EAAU/jE,GAC5C,GAAIiiE,GAAQp0G,KAAKsV,GACb++F,EAAQr0G,KAAKuV,IACb2gG,GAAS71G,KAAOL,KAAKuV,KAAKlV,KAC5B+zG,EAAQp0G,KAAKuV,KACb8+F,EAAQr0G,KAAKsV,GAGf,IAAI+iD,GAAQ/yD,KAAKgzD,MAAM87C,EAAMpyF,EAAIqyF,EAAMryF,EAAGoyF,EAAM51E,EAAI61E,EAAM71E,GACtDkM,EAAK0pE,EAAM51E,EAAI61E,EAAM71E,EACrBmM,EAAKypE,EAAMpyF,EAAIqyF,EAAMryF,EACrB25F,EAAoBr2G,KAAK+0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAC7CixE,EAAe1F,EAASzM,iBAAiBt3D,EAAKkmB,GAC9CwjD,GAAiBF,EAAoBC,GAAgBD,EAErDG,IAIJ,OAHAA,GAAUt9E,GAAK,EAAIq9E,GAAiBxH,EAAM71E,EAAIq9E,EAAgBzH,EAAM51E,EACpEs9E,EAAU95F,GAAK,EAAI65F,GAAiBxH,EAAMryF,EAAI65F,EAAgBzH,EAAMpyF,EAE7D85F,KAGThyG,IAAK,qBACL1E,MAAO,SAA4BywG,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,GAErD,MAAOr2G,MAAKm3G,mBAAmBtB,EAAIC,EAAIC,EAAIC,EAAII,EAAIC,OAIhDqF,GACPrE,EAAAA,WAEFz3G,GAAAA,WAAkB87G,GAId,SAAS77G,EAAQD,EAASM,GA0C9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAxChHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hB62D,EAAmB77G,EAAoB,IAEvC87G,EAAoB18D,EAAuBy8D,GAE3CE,EAAmB/7G,EAAoB,IAEvCg8G,EAAoB58D,EAAuB28D,GAE3CE,EAA+Bj8G,EAAoB,IAEnDk8G,EAAgC98D,EAAuB68D,GAEvDE,EAAgBn8G,EAAoB,IAEpCo8G,EAAiBh9D,EAAuB+8D,GAExCE,EAA4Br8G,EAAoB,IAEhDs8G,EAA6Bl9D,EAAuBi9D,GAEpDE,EAAwBv8G,EAAoB,IAE5Cw8G,EAAyBp9D,EAAuBm9D,GAEhDE,EAA2Bz8G,EAAoB,IAE/C08G,EAA4Bt9D,EAAuBq9D,GAEnDE,EAAgC38G,EAAoB,IAEpD48G,EAAiCx9D,EAAuBu9D,GAMxDl8G,EAAOT,EAAoB,GAE3B68G,EAAgB,WAClB,QAASA,GAAc58D,GACrB6E,EAAgBhlD,KAAM+8G,GAEtB/8G,KAAKmgD,KAAOA,EACZngD,KAAKg9G,aAAgBC,sBAAwBC,sBAAwBC,UAAYC,eAEjFp9G,KAAKq9G,gBAAiB,EACtBr9G,KAAKs9G,mBAAqB,IAAO,GACjCt9G,KAAKu9G,iBAAkB,EACvBv9G,KAAKw9G,kBACLx9G,KAAKy9G,kBACLz9G,KAAK09G,eACL19G,KAAK29G,YAAch3G,OAGnB3G,KAAK49G,kBAAmB,EACxB59G,KAAK69G,yBAA0B,EAC/B79G,KAAK89G,gBAAkB,EACvB99G,KAAK+9G,iBAAmB,EAExB/9G,KAAKg+G,YAAa,EAClBh+G,KAAKi+G,sBAAuB,EAC5Bj+G,KAAKk+G,wBAA0B,EAC/Bl+G,KAAKm+G,OAAQ,EAGbn+G,KAAK6D,WACL7D,KAAK2/C,gBACH3uC,SAAS,EACTotG,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,IACbz0D,OAAQ,YACR00D,eACEluG,SAAS,EACT89F,WAAY,IACZqQ,eAAgB,GAChBC,kBAAkB,EAClBt9D,KAAK,GAEPu9D,SAAU,GACVzB,kBAAkB,GAEpBj9G,EAAKoG,OAAO/G,KAAK6D,QAAS7D,KAAK2/C,gBAC/B3/C,KAAKq/G,SAAW,GAChBr/G,KAAKs/G,cAAe,EAEpBt/G,KAAKm9F,qBA8qBP,MA3qBA/3C,GAAa23D,IACXjzG,IAAK,qBACL1E,MAAO,WACL,GAAI+9C,GAAQnjD,IAEZA,MAAKmgD,KAAKE,QAAQrgB,GAAG,cAAe,WAClCmjB,EAAMo8D,gBAERv/G,KAAKmgD,KAAKE,QAAQrgB,GAAG,gBAAiB,WACpCmjB,EAAMm8D,cAAe,IAEvBt/G,KAAKmgD,KAAKE,QAAQrgB,GAAG,eAAgB,WACnCmjB,EAAM8+C,iBAAiB9+C,EAAMg7D,OAAQ,IAEvCn+G,KAAKmgD,KAAKE,QAAQrgB,GAAG,iBAAkB,WACrCmjB,EAAMk6D,gBAAiB,EAAMl6D,EAAM8+C,mBAErCjiG,KAAKmgD,KAAKE,QAAQrgB,GAAG,iBAAkB,WACrCmjB,EAAMvjB,WAAWujB,EAAMt/C,SACnBs/C,EAAMg7D,SAAU,GAClBh7D,EAAM6+C,oBAGVhiG,KAAKmgD,KAAKE,QAAQrgB,GAAG,kBAAmB,WAClCmjB,EAAMg7D,SAAU,GAClBh7D,EAAM6+C,oBAGVhiG,KAAKmgD,KAAKE,QAAQrgB,GAAG,iBAAkB,WACrCmjB,EAAM8+C,mBAERjiG,KAAKmgD,KAAKE,QAAQrgB,GAAG,UAAW,WAC9BmjB,EAAM8+C,gBAAe,GACrB9+C,EAAMhD,KAAKE,QAAQlgB,QAGrBngC,KAAKmgD,KAAKE,QAAQrgB,GAAG,eAAgB,WAEnCmjB,EAAMq8D,yBAaV11G,IAAK,aACL1E,MAAO,SAAoBvB,GACT8C,SAAZ9C,IACEA,KAAY,GACd7D,KAAK6D,QAAQmN,SAAU,EACvBhR,KAAKq9G,gBAAiB,EACtBr9G,KAAKiiG,mBAELjiG,KAAKq9G,gBAAiB,EACtB18G,EAAK8G,wBAAwB,iBAAkBzH,KAAK6D,QAASA,GAC7DlD,EAAKkQ,aAAa7Q,KAAK6D,QAASA,EAAS,iBAEjB8C,SAApB9C,EAAQmN,UACVhR,KAAK6D,QAAQmN,SAAU,GAGrBhR,KAAK6D,QAAQmN,WAAY,IAC3BhR,KAAKq9G,gBAAiB,EACtBr9G,KAAKiiG,kBAIPjiG,KAAKq/G,SAAWr/G,KAAK6D,QAAQw7G,WAGjCr/G,KAAKg9D,UAQPlzD,IAAK,OACL1E,MAAO,WACL,GAAIvB,EACwB,sBAAxB7D,KAAK6D,QAAQ2mD,QACf3mD,EAAU7D,KAAK6D,QAAQ+6G,iBACvB5+G,KAAKy/G,YAAc,GAAI7C,GAAAA,WAAkC58G,KAAKmgD,KAAMngD,KAAKg9G,YAAan5G,GACtF7D,KAAK0/G,YAAc,GAAIpD,GAAAA,WAAuBt8G,KAAKmgD,KAAMngD,KAAKg9G,YAAan5G,GAC3E7D,KAAK2/G,cAAgB,GAAI7C,GAAAA,WAAuC98G,KAAKmgD,KAAMngD,KAAKg9G,YAAan5G,IAC5D,cAAxB7D,KAAK6D,QAAQ2mD,QACtB3mD,EAAU7D,KAAK6D,QAAQg7G,UACvB7+G,KAAKy/G,YAAc,GAAIvD,GAAAA,WAA0Bl8G,KAAKmgD,KAAMngD,KAAKg9G,YAAan5G,GAC9E7D,KAAK0/G,YAAc,GAAIpD,GAAAA,WAAuBt8G,KAAKmgD,KAAMngD,KAAKg9G,YAAan5G,GAC3E7D,KAAK2/G,cAAgB,GAAIjD,GAAAA,WAA+B18G,KAAKmgD,KAAMngD,KAAKg9G,YAAan5G,IACpD,0BAAxB7D,KAAK6D,QAAQ2mD,QACtB3mD,EAAU7D,KAAK6D,QAAQk7G,sBACvB/+G,KAAKy/G,YAAc,GAAIrD,GAAAA,WAAsCp8G,KAAKmgD,KAAMngD,KAAKg9G,YAAan5G,GAC1F7D,KAAK0/G,YAAc,GAAIlD,GAAAA,WAAmCx8G,KAAKmgD,KAAMngD,KAAKg9G,YAAan5G,GACvF7D,KAAK2/G,cAAgB,GAAIjD,GAAAA,WAA+B18G,KAAKmgD,KAAMngD,KAAKg9G,YAAan5G,KAGrFA,EAAU7D,KAAK6D,QAAQu6G,UACvBp+G,KAAKy/G,YAAc,GAAIzD,GAAAA,WAA0Bh8G,KAAKmgD,KAAMngD,KAAKg9G,YAAan5G,GAC9E7D,KAAK0/G,YAAc,GAAIpD,GAAAA,WAAuBt8G,KAAKmgD,KAAMngD,KAAKg9G,YAAan5G,GAC3E7D,KAAK2/G,cAAgB,GAAIjD,GAAAA,WAA+B18G,KAAKmgD,KAAMngD,KAAKg9G,YAAan5G,IAGvF7D,KAAK4/G,aAAe/7G,KAQtBiG,IAAK,cACL1E,MAAO,WACDpF,KAAKq9G,kBAAmB,GAAQr9G,KAAK6D,QAAQmN,WAAY,EACvDhR,KAAK6D,QAAQq7G,cAAcluG,WAAY,EACzChR,KAAKkiG,aAELliG,KAAKg+G,YAAa,EAClBh+G,KAAKm+G,OAAQ,EACbn+G,KAAKmgD,KAAKE,QAAQ5H,KAAK,SAAWz4C,KAAKs/G,cACvCt/G,KAAKgiG,oBAGPhiG,KAAKm+G,OAAQ,EACbn+G,KAAKmgD,KAAKE,QAAQ5H,KAAK,WAS3B3uC,IAAK,kBACL1E,MAAO,WACDpF,KAAKq9G,kBAAmB,GAAQr9G,KAAK6D,QAAQmN,WAAY,GAC3DhR,KAAKg+G,YAAa,EAGlBh+G,KAAK49G,kBAAmB,EAGxB59G,KAAKmgD,KAAKE,QAAQ5H,KAAK,gBACG9xC,SAAtB3G,KAAK6/G,eACP7/G,KAAK6/G,aAAe7/G,KAAK8/G,eAAex/D,KAAKtgD,MAC7CA,KAAKmgD,KAAKE,QAAQrgB,GAAG,aAAchgC,KAAK6/G,cACxC7/G,KAAKmgD,KAAKE,QAAQ5H,KAAK,qBAGzBz4C,KAAKmgD,KAAKE,QAAQ5H,KAAK,cAS3B3uC,IAAK,iBACL1E,MAAO,WACL,GAAIqzC,GAAOhyC,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAElFzG,MAAKg+G,YAAa,EACdvlE,KAAS,GACXz4C,KAAK+/G,kBAEmBp5G,SAAtB3G,KAAK6/G,eACP7/G,KAAKmgD,KAAKE,QAAQlgB,IAAI,aAAcngC,KAAK6/G,cACzC7/G,KAAK6/G,aAAel5G,OAChB8xC,KAAS,GACXz4C,KAAKmgD,KAAKE,QAAQ5H,KAAK,sBAW7B3uC,IAAK,iBACL1E,MAAO,WAEL,GAAI46G,GAAYt6G,KAAKse,KACrBhkB,MAAKigH,aACL,IAAIC,GAAcx6G,KAAKse,MAAQg8F,GAG1BE,EAAc,GAAMlgH,KAAKs9G,oBAAsBt9G,KAAKmgH,kBAAmB,IAASngH,KAAKg+G,cAAe,IACvGh+G,KAAKigH,cAGLjgH,KAAKmgH,gBAAiB,GAGpBngH,KAAKg+G,cAAe,GACtBh+G,KAAKiiG,oBAUTn4F,IAAK,kBACL1E,MAAO,WACL,GAAIwiD,GAAS5nD,KAETogH,EAAqB35G,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBzG,KAAKk+G,wBAA0Bz3G,UAAU,IAEpHzG,KAAKk+G,wBAA0B,GAAKl+G,KAAKi+G,wBAAyB,IACpE5zG,WAAW,WACTu9C,EAAOzH,KAAKE,QAAQ5H,KAAK,cAAgBq2D,WAAYsR,IACrDx4D,EAAOq2D,sBAAuB,EAC9Br2D,EAAOs2D,wBAA0B,GAChC,MAWPp0G,IAAK,cACL1E,MAAO,WAOL,GALIpF,KAAKi+G,wBAAyB,IAChCj+G,KAAKmgD,KAAKE,QAAQ5H,KAAK,oBACvBz4C,KAAKi+G,sBAAuB,GAG1Bj+G,KAAKg+G,cAAe,EAAO,CAE7B,GAAIh+G,KAAK49G,oBAAqB,GAAQ59G,KAAK69G,2BAA4B,EAAM,CAE3E,GAAIt6D,GAAS,GAGTvjD,MAAK89G,gBAAkB99G,KAAK+9G,mBAAqB,GAGnD/9G,KAAKq/G,SAAW,EAAIr/G,KAAKq/G,SACzBr/G,KAAKqgH,kBACLrgH,KAAKsgH,YACLtgH,KAAKugH,SAGLvgH,KAAKq/G,SAAW,GAAMr/G,KAAKq/G,SAG3Br/G,KAAKqgH,kBACLrgH,KAAKsgH,YACLtgH,KAAKqgH,kBACLrgH,KAAKsgH,YAGDtgH,KAAKwgH,0BAA2B,EAClCxgH,KAAKq/G,SAAW97D,EAASvjD,KAAKq/G,SAK1Br/G,KAAKq/G,SAAW97D,EAASvjD,KAAK6D,QAAQw7G,SACxCr/G,KAAKq/G,SAAWr/G,KAAK6D,QAAQw7G,UAI7Br/G,KAAK89G,gBAAkB,GACvB99G,KAAKq/G,SAAW/5G,KAAKJ,IAAIlF,KAAK6D,QAAQw7G,SAAUr/G,KAAKq/G,SAAW97D,MAKpEvjD,KAAKqgH,kBACLrgH,KAAKsgH,aAIPtgH,KAAK89G,iBAAmB,MAGxB99G,MAAKq/G,SAAWr/G,KAAK6D,QAAQw7G,SAC7Br/G,KAAKqgH,kBACLrgH,KAAKsgH,WAIHtgH,MAAKg+G,cAAe,GACtBh+G,KAAKugH,SAGPvgH,KAAKk+G,8BAWTp0G,IAAK,oBACL1E,MAAO,WACLpF,KAAKg9G,YAAYG,UACjBn9G,KAAKg9G,YAAYC,sBACjBj9G,KAAKg9G,YAAYE,qBACjB,IAAIjhB,GAAQj8F,KAAKmgD,KAAK87C,MAClBE,EAAQn8F,KAAKmgD,KAAKg8C,KAGtB,KAAK,GAAI0D,KAAU5D,GACbA,EAAM71F,eAAey5F,IACnB5D,EAAM4D,GAAQh8F,QAAQ0mD,WAAY,GACpCvqD,KAAKg9G,YAAYC,mBAAmBt1G,KAAKs0F,EAAM4D,GAAQx/F,GAM7D,KAAK,GAAIy/F,KAAU3D,GACbA,EAAM/1F,eAAe05F,IACnB3D,EAAM2D,GAAQj8F,QAAQ0mD,WAAY,GACpCvqD,KAAKg9G,YAAYE,mBAAmBv1G,KAAKw0F,EAAM2D,GAAQz/F,GAM7D,KAAK,GAAIwG,GAAI,EAAGA,EAAI7G,KAAKg9G,YAAYC,mBAAmBv2G,OAAQG,IAAK,CACnE,GAAI41B,GAAUz8B,KAAKg9G,YAAYC,mBAAmBp2G,EAClD7G,MAAKg9G,YAAYG,OAAO1gF,IAAa+B,EAAG,EAAGxc,EAAG,GAGDrb,SAAzC3G,KAAKg9G,YAAYI,WAAW3gF,KAC9Bz8B,KAAKg9G,YAAYI,WAAW3gF,IAAa+B,EAAG,EAAGxc,EAAG,IAKtD,IAAK,GAAIikF,KAAYjmG,MAAKg9G,YAAYI,WACZz2G,SAApBs1F,EAAMgK,UACDjmG,MAAKg9G,YAAYI,WAAWnX,MAUzCn8F,IAAK,SACL1E,MAAO,WACL,GAAIq7G,GAAUl5G,OAAO6H,KAAKpP,KAAKw9G,gBAC3BvhB,EAAQj8F,KAAKmgD,KAAK87C,MAClBmhB,EAAap9G,KAAKg9G,YAAYI,UAClCp9G,MAAKy9G,iBAEL,KAAK,GAAI52G,GAAI,EAAGA,EAAI45G,EAAQ/5G,OAAQG,IAAK,CACvC,GAAIg5F,GAAS4gB,EAAQ55G,EACCF,UAAlBs1F,EAAM4D,GACJ5D,EAAM4D,GAAQh8F,QAAQ0mD,WAAY,IACpCvqD,KAAKy9G,eAAe5d,IAClB6gB,WAAaliF,EAAGy9D,EAAM4D,GAAQrhE,EAAGxc,EAAGi6E,EAAM4D,GAAQ79E,IAEpDo7F,EAAWvd,GAAQrhE,EAAIx+B,KAAKw9G,eAAe3d,GAAQ8gB,GACnDvD,EAAWvd,GAAQ79E,EAAIhiB,KAAKw9G,eAAe3d,GAAQ+gB,GACnD3kB,EAAM4D,GAAQrhE,EAAIx+B,KAAKw9G,eAAe3d,GAAQrhE,EAC9Cy9D,EAAM4D,GAAQ79E,EAAIhiB,KAAKw9G,eAAe3d,GAAQ79E,SAGzChiB,MAAKw9G,eAAe3d,OAUjC/1F,IAAK,uBACL1E,MAAO,WACL,GAAIslC,GAAK,OACLC,EAAK,OACLk2E,EAAO,OACP5kB,EAAQj8F,KAAKmgD,KAAK87C,MAClB6kB,EAAY9gH,KAAKy9G,eACjB9yC,EAAe,EAEnB,KAAK,GAAIk1B,KAAU7/F,MAAKy9G,eACtB,GAAIz9G,KAAKy9G,eAAer3G,eAAey5F,IAA6Bl5F,SAAlBs1F,EAAM4D,KACtDn1D,EAAKuxD,EAAM4D,GAAQrhE,EAAIsiF,EAAUjhB,GAAQ6gB,UAAUliF,EACnDmM,EAAKsxD,EAAM4D,GAAQ79E,EAAI8+F,EAAUjhB,GAAQ6gB,UAAU1+F,EAEnD6+F,EAAOv7G,KAAK+0C,KAAK/0C,KAAKiW,IAAImvB,EAAI,GAAKplC,KAAKiW,IAAIovB,EAAI,IAE5Ck2E,EAAOl2C,GACT,OAAO,CAIb,QAAO,KAST7gE,IAAK,YACL1E,MAAO,WASL,IAAK,GARD82F,GAAcl8F,KAAKg9G,YAAYC,mBAC/B+B,EAAch/G,KAAK6D,QAAQm7G,YAAch/G,KAAK6D,QAAQm7G,YAAc,IACpE+B,EAAkB,EAClBC,EAAsB,EAGtBC,EAA4B,EAEvBp6G,EAAI,EAAGA,EAAIq1F,EAAYx1F,OAAQG,IAAK,CAC3C,GAAIg5F,GAAS3D,EAAYr1F,GACrBq6G,EAAelhH,KAAKmhH,aAAathB,EAAQmf,EAE7C+B,GAAkBz7G,KAAKJ,IAAI67G,EAAiBG,GAC5CF,GAAuBE,EAIzBlhH,KAAK69G,wBAA0BmD,EAAsB9kB,EAAYx1F,OAASu6G,EAC1EjhH,KAAKg+G,WAAa+C,EAAkB/gH,KAAK6D,QAAQo7G,eAanDn1G,IAAK,eACL1E,MAAO,SAAsBy6F,EAAQmf,GACnC,GAAIxiF,GAAOx8B,KAAKmgD,KAAK87C,MAAM4D,GACvBwf,EAAWr/G,KAAKq/G,SAChBlC,EAASn9G,KAAKg9G,YAAYG,OAC1BC,EAAap9G,KAAKg9G,YAAYI,UAKlC,IAFAp9G,KAAKw9G,eAAe3d,IAAYrhE,EAAGhC,EAAKgC,EAAGxc,EAAGwa,EAAKxa,EAAG2+F,GAAIvD,EAAWvd,GAAQrhE,EAAGoiF,GAAIxD,EAAWvd,GAAQ79E,GAEnGwa,EAAK34B,QAAQ+gG,MAAMpmE,KAAM,EAAO,CAClC,GAAIkM,GAAK1qC,KAAK4/G,aAAalB,QAAUtB,EAAWvd,GAAQrhE,EACpDkL,GAAMyzE,EAAOtd,GAAQrhE,EAAIkM,GAAMlO,EAAK34B,QAAQqhG,IAChDkY,GAAWvd,GAAQrhE,GAAKkL,EAAK21E,EAC7BjC,EAAWvd,GAAQrhE,EAAIl5B,KAAK4R,IAAIkmG,EAAWvd,GAAQrhE,GAAKwgF,EAAc5B,EAAWvd,GAAQrhE,EAAI,EAAIwgF,GAAeA,EAAc5B,EAAWvd,GAAQrhE,EACjJhC,EAAKgC,GAAK4+E,EAAWvd,GAAQrhE,EAAI6gF,MAE/BlC,GAAOtd,GAAQrhE,EAAI,EACnB4+E,EAAWvd,GAAQrhE,EAAI,CAG3B,IAAIhC,EAAK34B,QAAQ+gG,MAAM5iF,KAAM,EAAO,CAClC,GAAI2oB,GAAK3qC,KAAK4/G,aAAalB,QAAUtB,EAAWvd,GAAQ79E,EACpD2nB,GAAMwzE,EAAOtd,GAAQ79E,EAAI2oB,GAAMnO,EAAK34B,QAAQqhG,IAChDkY,GAAWvd,GAAQ79E,GAAK2nB,EAAK01E,EAC7BjC,EAAWvd,GAAQ79E,EAAI1c,KAAK4R,IAAIkmG,EAAWvd,GAAQ79E,GAAKg9F,EAAc5B,EAAWvd,GAAQ79E,EAAI,EAAIg9F,GAAeA,EAAc5B,EAAWvd,GAAQ79E,EACjJwa,EAAKxa,GAAKo7F,EAAWvd,GAAQ79E,EAAIq9F,MAE/BlC,GAAOtd,GAAQ79E,EAAI,EACnBo7F,EAAWvd,GAAQ79E,EAAI,CAG3B,IAAIo/F,GAAgB97G,KAAK+0C,KAAK/0C,KAAKiW,IAAI6hG,EAAWvd,GAAQrhE,EAAG,GAAKl5B,KAAKiW,IAAI6hG,EAAWvd,GAAQ79E,EAAG,GACjG,OAAOo/F,MAQTt3G,IAAK,kBACL1E,MAAO,WACLpF,KAAK2/G,cAAc0B,QACnBrhH,KAAKy/G,YAAY4B,QACjBrhH,KAAK0/G,YAAY2B,WAWnBv3G,IAAK,eACL1E,MAAO,WACL,GAAI62F,GAAQj8F,KAAKmgD,KAAK87C,KACtB,KAAK,GAAI57F,KAAM47F,GACTA,EAAM71F,eAAe/F,IACnB47F,EAAM57F,GAAIm+B,GAAKy9D,EAAM57F,GAAI2hB,IAC3BhiB,KAAK09G,YAAYr9G,IAAQm+B,EAAGy9D,EAAM57F,GAAIwD,QAAQ+gG,MAAMpmE,EAAGxc,EAAGi6E,EAAM57F,GAAIwD,QAAQ+gG,MAAM5iF,GAClFi6E,EAAM57F,GAAIwD,QAAQ+gG,MAAMpmE,GAAI,EAC5By9D,EAAM57F,GAAIwD,QAAQ+gG,MAAM5iF,GAAI,MAapClY,IAAK,sBACL1E,MAAO,WACL,GAAI62F,GAAQj8F,KAAKmgD,KAAK87C,KACtB,KAAK,GAAI57F,KAAM47F,GACTA,EAAM71F,eAAe/F,IACMsG,SAAzB3G,KAAK09G,YAAYr9G,KACnB47F,EAAM57F,GAAIwD,QAAQ+gG,MAAMpmE,EAAIx+B,KAAK09G,YAAYr9G,GAAIm+B,EACjDy9D,EAAM57F,GAAIwD,QAAQ+gG,MAAM5iF,EAAIhiB,KAAK09G,YAAYr9G,GAAI2hB,EAIvDhiB,MAAK09G,kBAQP5zG,IAAK,YACL1E,MAAO,WACL,GAAIyjD,GAAS7oD,KAET8uG,EAAaroG,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBzG,KAAK6D,QAAQq7G,cAAcpQ,WAAaroG,UAAU,EAOzH,OAL0B,gBAAfqoG,KACTv3F,QAAQwnC,IAAI,oFAAqF/+C,KAAK6D,QAAQq7G,cAAcpQ,YAC5HA,EAAa9uG,KAAK6D,QAAQq7G,cAAcpQ,YAGS,IAA/C9uG,KAAKg9G,YAAYC,mBAAmBv2G,YACtC1G,KAAKm+G,OAAQ,IAKfn+G,KAAK49G,iBAA2B59G,KAAK6D,QAAQ+5G,iBAG7C59G,KAAKmgD,KAAKE,QAAQ5H,KAAK,gBAGvBz4C,KAAKiiG,iBAGLjiG,KAAKg+G,YAAa,EAGlBh+G,KAAKmgD,KAAKE,QAAQ5H,KAAK,gBACvBz4C,KAAKshH,iBAAmBxS,EAGpB9uG,KAAK6D,QAAQq7G,cAAcE,oBAAqB,GAClDp/G,KAAKuhH,eAEPvhH,KAAKk+G,wBAA0B,MAE/B7zG,YAAW,WACT,MAAOw+C,GAAO24D,uBACb,OASL13G,IAAK,sBACL1E,MAAO,WAEDpF,KAAKi+G,wBAAyB,IAChCj+G,KAAKmgD,KAAKE,QAAQ5H,KAAK,oBACvBz4C,KAAKi+G,sBAAuB,EAI9B,KADA,GAAIprF,GAAQ,EACL7yB,KAAKg+G,cAAe,GAASnrF,EAAQ7yB,KAAK6D,QAAQq7G,cAAcC,gBAAkBn/G,KAAKk+G,wBAA0Bl+G,KAAKshH,kBAC3HthH,KAAKigH,cACLptF,GAGE7yB,MAAKg+G,cAAe,GAASh+G,KAAKk+G,wBAA0Bl+G,KAAKshH,kBACnEthH,KAAKmgD,KAAKE,QAAQ5H,KAAK,yBAA2Bq2D,WAAY9uG,KAAKk+G,wBAAyB/4G,MAAOnF,KAAKshH,mBACxGj3G,WAAWrK,KAAKwhH,oBAAoBlhE,KAAKtgD,MAAO,IAEhDA,KAAKyhH,4BAUT33G,IAAK,yBACL1E,MAAO,WACLpF,KAAKmgD,KAAKE,QAAQ5H,KAAK,gBACnBz4C,KAAK6D,QAAQq7G,cAAcp9D,OAAQ,GACrC9hD,KAAKmgD,KAAKE,QAAQ5H,KAAK,OAGrBz4C,KAAK6D,QAAQq7G,cAAcE,oBAAqB,GAClDp/G,KAAK0hH,sBAGP1hH,KAAKmgD,KAAKE,QAAQ5H,KAAK,+BACvBz4C,KAAKmgD,KAAKE,QAAQ5H,KAAK,kBAEnBz4C,KAAKg+G,cAAe,EACtBh+G,KAAK+/G,kBAEL//G,KAAKgiG,kBAGPhiG,KAAKm+G,OAAQ,KAGfr0G,IAAK,cACL1E,MAAO,SAAqB+sC,GAC1B,IAAK,GAAItrC,GAAI,EAAGA,EAAI7G,KAAKg9G,YAAYC,mBAAmBv2G,OAAQG,IAAK,CACnE,GAAI21B,GAAOx8B,KAAKmgD,KAAK87C,MAAMj8F,KAAKg9G,YAAYC,mBAAmBp2G,IAC3D8kE,EAAQ3rE,KAAKg9G,YAAYG,OAAOn9G,KAAKg9G,YAAYC,mBAAmBp2G,IACpE08C,EAAS,GACTo+D,EAAc,IACdC,EAAYt8G,KAAK+0C,KAAK/0C,KAAKiW,IAAIowD,EAAMntC,EAAG,GAAKl5B,KAAKiW,IAAIowD,EAAMntC,EAAG,IAE/DK,EAAOv5B,KAAKL,IAAIK,KAAKJ,IAAI,EAAG08G,GAAY,IACxCC,EAAY,EAAIhjF,EAEhBjyB,EAAQjM,EAAKuN,UAAU,IAA0D,IAApD5I,KAAKL,IAAI,EAAGK,KAAKJ,IAAI,EAAGy8G,EAAcC,KAAqB,IAAK,EAAG,EAEpGzvE,GAAIO,UAAY7T,EAChBsT,EAAIY,YAAcnmC,EAClBulC,EAAIa,YACJb,EAAIc,OAAOzW,EAAKgC,EAAGhC,EAAKxa,GACxBmwB,EAAIe,OAAO1W,EAAKgC,EAAI+kB,EAASooB,EAAMntC,EAAGhC,EAAKxa,EAAIuhC,EAASooB,EAAM3pD,GAC9DmwB,EAAI7J,QAEJ,IAAI+vB,GAAQ/yD,KAAKgzD,MAAMqT,EAAM3pD,EAAG2pD,EAAMntC,EACtC2T,GAAIiB,UAAYxmC,EAChBulC,EAAIsoE,MAAMj+E,EAAKgC,EAAI+kB,EAASooB,EAAMntC,EAAIl5B,KAAK+kC,IAAIguB,GAASwpD,EAAWrlF,EAAKxa,EAAIuhC,EAASooB,EAAM3pD,EAAI1c,KAAK4kC,IAAImuB,GAASwpD,EAAWxpD,EAAOwpD,GACnI1vE,EAAI9J,YAKH00E,IAGTn9G,GAAAA,WAAkBm9G,GAId,SAASl9G,EAAQD,GAUrB,QAASolD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCANhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI5hB48D,EAAkB,WACpB,QAASA,GAAgB3hE,EAAM68D,EAAan5G,GAC1CmhD,EAAgBhlD,KAAM8hH,GAEtB9hH,KAAKmgD,KAAOA,EACZngD,KAAKg9G,YAAcA,EACnBh9G,KAAK+hH,cACL/hH,KAAK4/B,WAAW/7B,GAChB7D,KAAKgiH,WAAa,EAqepB,MA/dA58D,GAAa08D,IACXh4G,IAAK,aACL1E,MAAO,SAAoBvB,GACzB7D,KAAK6D,QAAUA,EACf7D,KAAKiiH,cAAgB,EAAIjiH,KAAK6D,QAAQw6G,MACtCr+G,KAAKkiH,uBAAyB,EAAI58G,KAAKJ,IAAI,EAAGI,KAAKL,IAAI,EAAGjF,KAAK6D,QAAQ86G,kBAGzE70G,IAAK,eACL1E,MAAO,WACL,GAAIo5B,GAAkC,IAA9Bl5B,KAAK4kC,IAAIlqC,KAAKgiH,aACtB,OAAOxjF,GAAIl5B,KAAKqK,MAAM6uB,MAWxB10B,IAAK,QACL1E,MAAO,WACL,GAA2C,IAAvCpF,KAAK6D,QAAQy6G,uBAA+Bt+G,KAAKg9G,YAAYC,mBAAmBv2G,OAAS,EAAG,CAC9F,GAAI81B,GAAO,OACPy/D,EAAQj8F,KAAKmgD,KAAK87C,MAClBC,EAAcl8F,KAAKg9G,YAAYC,mBAC/BkF,EAAYjmB,EAAYx1F,OAGxBq7G,EAAgB/hH,KAAKoiH,mBAAmBnmB,EAAOC,EAGnDl8F,MAAK+hH,cAAgBA,CAGrB,KAAK,GAAIl7G,GAAI,EAAOs7G,EAAJt7G,EAAeA,IAC7B21B,EAAOy/D,EAAMC,EAAYr1F,IACrB21B,EAAK34B,QAAQqhG,KAAO,IAEtBllG,KAAKqiH,sBAAsBN,EAAcriH,KAAKy7B,SAASmnF,GAAI9lF,GAC3Dx8B,KAAKqiH,sBAAsBN,EAAcriH,KAAKy7B,SAASonF,GAAI/lF,GAC3Dx8B,KAAKqiH,sBAAsBN,EAAcriH,KAAKy7B,SAASqnF,GAAIhmF,GAC3Dx8B,KAAKqiH,sBAAsBN,EAAcriH,KAAKy7B,SAASsnF,GAAIjmF,QAgBnE1yB,IAAK,wBACL1E,MAAO,SAA+Bs9G,EAAclmF,GAElD,GAAIkmF,EAAaC,cAAgB,EAAG,CAClC,GAAIj4E,GAAK,OACLC,EAAK,OACLqG,EAAW,MAGftG,GAAKg4E,EAAaE,aAAapkF,EAAIhC,EAAKgC,EACxCmM,EAAK+3E,EAAaE,aAAa5gG,EAAIwa,EAAKxa,EACxCgvB,EAAW1rC,KAAK+0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAKhCqG,EAAW0xE,EAAaG,SAAW7iH,KAAKiiH,cAC1CjiH,KAAK8iH,iBAAiB9xE,EAAUtG,EAAIC,EAAInO,EAAMkmF,GAGX,IAA/BA,EAAaC,eACf3iH,KAAKqiH,sBAAsBK,EAAavnF,SAASmnF,GAAI9lF,GACrDx8B,KAAKqiH,sBAAsBK,EAAavnF,SAASonF,GAAI/lF,GACrDx8B,KAAKqiH,sBAAsBK,EAAavnF,SAASqnF,GAAIhmF,GACrDx8B,KAAKqiH,sBAAsBK,EAAavnF,SAASsnF,GAAIjmF,IAGjDkmF,EAAavnF,SAAS3hB,KAAKnZ,IAAMm8B,EAAKn8B,IAExCL,KAAK8iH,iBAAiB9xE,EAAUtG,EAAIC,EAAInO,EAAMkmF,OAmBxD54G,IAAK,mBACL1E,MAAO,SAA0B4rC,EAAUtG,EAAIC,EAAInO,EAAMkmF,GACtC,IAAb1xE,IACFA,EAAW,GACXtG,EAAKsG,GAGHhxC,KAAKkiH,uBAAyB,IAChClxE,EAAW1rC,KAAKJ,IAAI,GAAMlF,KAAKkiH,uBAAyB1lF,EAAKgpE,MAAM/uD,OAAQzF,EAAWxU,EAAKgpE,MAAM/uD,QAKnG,IAAIssE,GAAe/iH,KAAK6D,QAAQy6G,sBAAwBoE,EAAaxd,KAAO1oE,EAAK34B,QAAQqhG,KAAO5/F,KAAKiW,IAAIy1B,EAAU,GAC/GgyE,EAAKt4E,EAAKq4E,EACVE,EAAKt4E,EAAKo4E,CAEd/iH,MAAKg9G,YAAYG,OAAO3gF,EAAKn8B,IAAIm+B,GAAKwkF,EACtChjH,KAAKg9G,YAAYG,OAAO3gF,EAAKn8B,IAAI2hB,GAAKihG,KAYxCn5G,IAAK,qBACL1E,MAAO,SAA4B62F,EAAOC,GAUxC,IAAK,GATD1/D,GAAO,OACP2lF,EAAYjmB,EAAYx1F,OAExBw8G,EAAOjnB,EAAMC,EAAY,IAAI19D,EAC7B2kF,EAAOlnB,EAAMC,EAAY,IAAIl6E,EAC7BohG,EAAOnnB,EAAMC,EAAY,IAAI19D,EAC7B6kF,EAAOpnB,EAAMC,EAAY,IAAIl6E,EAGxBnb,EAAI,EAAOs7G,EAAJt7G,EAAeA,IAAK,CAClC,GAAI23B,GAAIy9D,EAAMC,EAAYr1F,IAAI23B,EAC1Bxc,EAAIi6E,EAAMC,EAAYr1F,IAAImb,CAC1Bi6E,GAAMC,EAAYr1F,IAAIhD,QAAQqhG,KAAO,IAC/Bge,EAAJ1kF,IACF0kF,EAAO1kF,GAELA,EAAI4kF,IACNA,EAAO5kF,GAED2kF,EAAJnhG,IACFmhG,EAAOnhG,GAELA,EAAIqhG,IACNA,EAAOrhG,IAKb,GAAI0nF,GAAWpkG,KAAK4R,IAAIksG,EAAOF,GAAQ59G,KAAK4R,IAAImsG,EAAOF,EACnDzZ,GAAW,GACbyZ,GAAQ,GAAMzZ,EACd2Z,GAAQ,GAAM3Z,IAGZwZ,GAAQ,GAAMxZ,EACd0Z,GAAQ,GAAM1Z,EAGlB,IAAI4Z,GAAkB,KAClBC,EAAWj+G,KAAKJ,IAAIo+G,EAAiBh+G,KAAK4R,IAAIksG,EAAOF,IACrDM,EAAe,GAAMD,EACrBnrD,EAAU,IAAO8qD,EAAOE,GACxBjrD,EAAU,IAAOgrD,EAAOE,GAGxBtB,GACFriH,MACEkjH,cAAgBpkF,EAAG,EAAGxc,EAAG,GACzBkjF,KAAM,EACNhkD,OACEgiE,KAAM9qD,EAAUorD,EAAcJ,KAAMhrD,EAAUorD,EAC9CL,KAAMhrD,EAAUqrD,EAAcH,KAAMlrD,EAAUqrD,GAEhD3kF,KAAM0kF,EACNV,SAAU,EAAIU,EACdpoF,UAAY3hB,KAAM,MAClBmtE,SAAU,EACVse,MAAO,EACP0d,cAAe,GAGnB3iH,MAAKyjH,aAAa1B,EAAcriH,KAGhC,KAAK,GAAIgW,GAAK,EAAQysG,EAALzsG,EAAgBA,IAC/B8mB,EAAOy/D,EAAMC,EAAYxmF,IACrB8mB,EAAK34B,QAAQqhG,KAAO,GACtBllG,KAAK0jH,aAAa3B,EAAcriH,KAAM88B,EAK1C,OAAOulF,MAYTj4G,IAAK,oBACL1E,MAAO,SAA2Bs9G,EAAclmF,GAC9C,GAAImnF,GAAYjB,EAAaxd,KAAO1oE,EAAK34B,QAAQqhG,KAC7C0e,EAAe,EAAID,CAEvBjB,GAAaE,aAAapkF,EAAIkkF,EAAaE,aAAapkF,EAAIkkF,EAAaxd,KAAO1oE,EAAKgC,EAAIhC,EAAK34B,QAAQqhG,KACtGwd,EAAaE,aAAapkF,GAAKolF,EAE/BlB,EAAaE,aAAa5gG,EAAI0gG,EAAaE,aAAa5gG,EAAI0gG,EAAaxd,KAAO1oE,EAAKxa,EAAIwa,EAAK34B,QAAQqhG,KACtGwd,EAAaE,aAAa5gG,GAAK4hG,EAE/BlB,EAAaxd,KAAOye,CACpB,IAAIE,GAAcv+G,KAAKJ,IAAII,KAAKJ,IAAIs3B,EAAK6C,OAAQ7C,EAAKia,QAASja,EAAK4C,MACpEsjF,GAAa/7B,SAAW+7B,EAAa/7B,SAAWk9B,EAAcA,EAAcnB,EAAa/7B,YAa3F78E,IAAK,eACL1E,MAAO,SAAsBs9G,EAAclmF,EAAMsnF,GACzB,GAAlBA,GAA6Cn9G,SAAnBm9G,GAE5B9jH,KAAK+jH,kBAAkBrB,EAAclmF,GAGnCkmF,EAAavnF,SAASmnF,GAAGphE,MAAMkiE,KAAO5mF,EAAKgC,EAEzCkkF,EAAavnF,SAASmnF,GAAGphE,MAAMmiE,KAAO7mF,EAAKxa,EAE7ChiB,KAAKgkH,eAAetB,EAAclmF,EAAM,MAGxCx8B,KAAKgkH,eAAetB,EAAclmF,EAAM,MAItCkmF,EAAavnF,SAASmnF,GAAGphE,MAAMmiE,KAAO7mF,EAAKxa,EAE7ChiB,KAAKgkH,eAAetB,EAAclmF,EAAM,MAGxCx8B,KAAKgkH,eAAetB,EAAclmF,EAAM,SAe9C1yB,IAAK,iBACL1E,MAAO,SAAwBs9G,EAAclmF,EAAMynF,GACjD,OAAQvB,EAAavnF,SAAS8oF,GAAQtB,eACpC,IAAK,GAEHD,EAAavnF,SAAS8oF,GAAQ9oF,SAAS3hB,KAAOgjB,EAC9CkmF,EAAavnF,SAAS8oF,GAAQtB,cAAgB,EAC9C3iH,KAAK+jH,kBAAkBrB,EAAavnF,SAAS8oF,GAASznF,EACtD,MACF,KAAK,GAICkmF,EAAavnF,SAAS8oF,GAAQ9oF,SAAS3hB,KAAKglB,IAAMhC,EAAKgC,GAAKkkF,EAAavnF,SAAS8oF,GAAQ9oF,SAAS3hB,KAAKwI,IAAMwa,EAAKxa,GACrHwa,EAAKgC,GAAKx+B,KAAKkkH,eACf1nF,EAAKxa,GAAKhiB,KAAKkkH,iBAEflkH,KAAKyjH,aAAaf,EAAavnF,SAAS8oF,IACxCjkH,KAAK0jH,aAAahB,EAAavnF,SAAS8oF,GAASznF,GAEnD,MACF,KAAK,GAEHx8B,KAAK0jH,aAAahB,EAAavnF,SAAS8oF,GAASznF,OAcvD1yB,IAAK,eACL1E,MAAO,SAAsBs9G,GAE3B,GAAIyB,GAAgB,IACe,KAA/BzB,EAAaC,gBACfwB,EAAgBzB,EAAavnF,SAAS3hB,KACtCkpG,EAAaxd,KAAO,EACpBwd,EAAaE,aAAapkF,EAAI,EAC9BkkF,EAAaE,aAAa5gG,EAAI,GAEhC0gG,EAAaC,cAAgB,EAC7BD,EAAavnF,SAAS3hB,KAAO,KAC7BxZ,KAAKokH,cAAc1B,EAAc,MACjC1iH,KAAKokH,cAAc1B,EAAc,MACjC1iH,KAAKokH,cAAc1B,EAAc,MACjC1iH,KAAKokH,cAAc1B,EAAc,MAEZ,MAAjByB,GACFnkH,KAAK0jH,aAAahB,EAAcyB,MAgBpCr6G,IAAK,gBACL1E,MAAO,SAAuBs9G,EAAcuB,GAC1C,GAAIf,GAAO,OACPE,EAAO,OACPD,EAAO,OACPE,EAAO,OACPgB,EAAY,GAAM3B,EAAa7jF,IACnC,QAAQolF,GACN,IAAK,KACHf,EAAOR,EAAaxhE,MAAMgiE,KAC1BE,EAAOV,EAAaxhE,MAAMgiE,KAAOmB,EACjClB,EAAOT,EAAaxhE,MAAMiiE,KAC1BE,EAAOX,EAAaxhE,MAAMiiE,KAAOkB,CACjC,MACF,KAAK,KACHnB,EAAOR,EAAaxhE,MAAMgiE,KAAOmB,EACjCjB,EAAOV,EAAaxhE,MAAMkiE,KAC1BD,EAAOT,EAAaxhE,MAAMiiE,KAC1BE,EAAOX,EAAaxhE,MAAMiiE,KAAOkB,CACjC,MACF,KAAK,KACHnB,EAAOR,EAAaxhE,MAAMgiE,KAC1BE,EAAOV,EAAaxhE,MAAMgiE,KAAOmB,EACjClB,EAAOT,EAAaxhE,MAAMiiE,KAAOkB,EACjChB,EAAOX,EAAaxhE,MAAMmiE,IAC1B,MACF,KAAK,KACHH,EAAOR,EAAaxhE,MAAMgiE,KAAOmB,EACjCjB,EAAOV,EAAaxhE,MAAMkiE,KAC1BD,EAAOT,EAAaxhE,MAAMiiE,KAAOkB,EACjChB,EAAOX,EAAaxhE,MAAMmiE,KAI9BX,EAAavnF,SAAS8oF,IACpBrB,cAAgBpkF,EAAG,EAAGxc,EAAG,GACzBkjF,KAAM,EACNhkD,OAASgiE,KAAMA,EAAME,KAAMA,EAAMD,KAAMA,EAAME,KAAMA,GACnDxkF,KAAM,GAAM6jF,EAAa7jF,KACzBgkF,SAAU,EAAIH,EAAaG,SAC3B1nF,UAAY3hB,KAAM,MAClBmtE,SAAU,EACVse,MAAOyd,EAAazd,MAAQ,EAC5B0d,cAAe,MAenB74G,IAAK,SACL1E,MAAO,SAAgB+sC,EAAKvlC,GACCjG,SAAvB3G,KAAK+hH,gBAEP5vE,EAAIO,UAAY,EAEhB1yC,KAAKskH,YAAYtkH,KAAK+hH,cAAcriH,KAAMyyC,EAAKvlC,OAcnD9C,IAAK,cACL1E,MAAO,SAAqBm/G,EAAQpyE,EAAKvlC,GACzBjG,SAAViG,IACFA,EAAQ,WAGmB,IAAzB23G,EAAO5B,gBACT3iH,KAAKskH,YAAYC,EAAOppF,SAASmnF,GAAInwE,GACrCnyC,KAAKskH,YAAYC,EAAOppF,SAASonF,GAAIpwE,GACrCnyC,KAAKskH,YAAYC,EAAOppF,SAASsnF,GAAItwE,GACrCnyC,KAAKskH,YAAYC,EAAOppF,SAASqnF,GAAIrwE,IAEvCA,EAAIY,YAAcnmC,EAClBulC,EAAIa,YACJb,EAAIc,OAAOsxE,EAAOrjE,MAAMgiE,KAAMqB,EAAOrjE,MAAMiiE,MAC3ChxE,EAAIe,OAAOqxE,EAAOrjE,MAAMkiE,KAAMmB,EAAOrjE,MAAMiiE,MAC3ChxE,EAAI7J,SAEJ6J,EAAIa,YACJb,EAAIc,OAAOsxE,EAAOrjE,MAAMkiE,KAAMmB,EAAOrjE,MAAMiiE,MAC3ChxE,EAAIe,OAAOqxE,EAAOrjE,MAAMkiE,KAAMmB,EAAOrjE,MAAMmiE,MAC3ClxE,EAAI7J,SAEJ6J,EAAIa,YACJb,EAAIc,OAAOsxE,EAAOrjE,MAAMkiE,KAAMmB,EAAOrjE,MAAMmiE,MAC3ClxE,EAAIe,OAAOqxE,EAAOrjE,MAAMgiE,KAAMqB,EAAOrjE,MAAMmiE,MAC3ClxE,EAAI7J,SAEJ6J,EAAIa,YACJb,EAAIc,OAAOsxE,EAAOrjE,MAAMgiE,KAAMqB,EAAOrjE,MAAMmiE,MAC3ClxE,EAAIe,OAAOqxE,EAAOrjE,MAAMgiE,KAAMqB,EAAOrjE,MAAMiiE,MAC3ChxE,EAAI7J,aAWDw5E,IAGTliH,GAAAA,WAAkBkiH,GAId,SAASjiH,EAAQD,GAUrB,QAASolD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCANhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI5hBs/D,EAAkB,WACpB,QAASA,GAAgBrkE,EAAM68D,EAAan5G,GAC1CmhD,EAAgBhlD,KAAMwkH,GAEtBxkH,KAAKmgD,KAAOA,EACZngD,KAAKg9G,YAAcA,EACnBh9G,KAAK4/B,WAAW/7B,GAqElB,MAlEAuhD,GAAao/D,IACX16G,IAAK,aACL1E,MAAO,SAAoBvB,GACzB7D,KAAK6D,QAAUA,KAUjBiG,IAAK,QACL1E,MAAO,WAgBL,IAAK,GAfDslC,GAAIC,EAAIqG,EAAUgyE,EAAIC,EAAIwB,EAAgBrQ,EAAOC,EAEjDpY,EAAQj8F,KAAKmgD,KAAK87C,MAClBC,EAAcl8F,KAAKg9G,YAAYC,mBAC/BE,EAASn9G,KAAKg9G,YAAYG,OAG1B2B,EAAe9+G,KAAK6D,QAAQi7G,aAG5Bx4G,EAAI,GAAK,EAAIw4G,EACbv4G,EAAI,EAAI,EAIHM,EAAI,EAAGA,EAAIq1F,EAAYx1F,OAAS,EAAGG,IAAK,CAC/CutG,EAAQnY,EAAMC,EAAYr1F,GAC1B,KAAK,GAAI+J,GAAI/J,EAAI,EAAG+J,EAAIsrF,EAAYx1F,OAAQkK,IAC1CyjG,EAAQpY,EAAMC,EAAYtrF,IAE1B85B,EAAK2pE,EAAM71E,EAAI41E,EAAM51E,EACrBmM,EAAK0pE,EAAMryF,EAAIoyF,EAAMpyF,EACrBgvB,EAAW1rC,KAAK+0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAGnB,IAAbqG,IACFA,EAAW,GAAM1rC,KAAKs3B,SACtB8N,EAAKsG,GAGQ,EAAI8tE,EAAf9tE,IAEAyzE,EADa,GAAM3F,EAAjB9tE,EACe,EAEA1qC,EAAI0qC,EAAWzqC,EAElCk+G,GAAkCzzE,EAElCgyE,EAAKt4E,EAAK+5E,EACVxB,EAAKt4E,EAAK85E,EAEVtH,EAAO/I,EAAM/zG,IAAIm+B,GAAKwkF,EACtB7F,EAAO/I,EAAM/zG,IAAI2hB,GAAKihG,EACtB9F,EAAO9I,EAAMh0G,IAAIm+B,GAAKwkF,EACtB7F,EAAO9I,EAAMh0G,IAAI2hB,GAAKihG,QAOzBuB,IAGT5kH,GAAAA,WAAkB4kH,GAId,SAAS3kH,EAAQD,GAUrB,QAASolD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCANhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI5hBw/D,EAA8B,WAChC,QAASA,GAA4BvkE,EAAM68D,EAAan5G,GACtDmhD,EAAgBhlD,KAAM0kH,GAEtB1kH,KAAKmgD,KAAOA,EACZngD,KAAKg9G,YAAcA,EACnBh9G,KAAK4/B,WAAW/7B,GAkElB,MA/DAuhD,GAAas/D,IACX56G,IAAK,aACL1E,MAAO,SAAoBvB,GACzB7D,KAAK6D,QAAUA,KAWjBiG,IAAK,QACL1E,MAAO,WACL,GAAIslC,GAAIC,EAAIqG,EAAUgyE,EAAIC,EAAIwB,EAAgBrQ,EAAOC,EAAOxtG,EAAG+J,EAE3DqrF,EAAQj8F,KAAKmgD,KAAK87C,MAClBC,EAAcl8F,KAAKg9G,YAAYC,mBAC/BE,EAASn9G,KAAKg9G,YAAYG,OAG1B2B,EAAe9+G,KAAK6D,QAAQi7G,YAIhC,KAAKj4G,EAAI,EAAGA,EAAIq1F,EAAYx1F,OAAS,EAAGG,IAEtC,IADAutG,EAAQnY,EAAMC,EAAYr1F,IACrB+J,EAAI/J,EAAI,EAAG+J,EAAIsrF,EAAYx1F,OAAQkK,IAItC,GAHAyjG,EAAQpY,EAAMC,EAAYtrF,IAGtBwjG,EAAMnP,QAAUoP,EAAMpP,MAAO,CAC/Bv6D,EAAK2pE,EAAM71E,EAAI41E,EAAM51E,EACrBmM,EAAK0pE,EAAMryF,EAAIoyF,EAAMpyF,EACrBgvB,EAAW1rC,KAAK+0C,KAAK3P,EAAKA,EAAKC,EAAKA,EAEpC,IAAIg6E,GAAY,GAEdF,GADa3F,EAAX9tE,GACgB1rC,KAAKiW,IAAIopG,EAAY3zE,EAAU,GAAK1rC,KAAKiW,IAAIopG,EAAY7F,EAAc,GAExE,EAGF,IAAb9tE,EACFA,EAAW,IAEXyzE,GAAkCzzE,EAEpCgyE,EAAKt4E,EAAK+5E,EACVxB,EAAKt4E,EAAK85E,EAEVtH,EAAO/I,EAAM/zG,IAAIm+B,GAAKwkF,EACtB7F,EAAO/I,EAAM/zG,IAAI2hB,GAAKihG,EACtB9F,EAAO9I,EAAMh0G,IAAIm+B,GAAKwkF,EACtB7F,EAAO9I,EAAMh0G,IAAI2hB,GAAKihG,OAOzByB,IAGT9kH,GAAAA,WAAkB8kH,GAId,SAAS7kH,EAAQD,GAUrB,QAASolD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCANhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI5hB0/D,EAAe,WACjB,QAASA,GAAazkE,EAAM68D,EAAan5G,GACvCmhD,EAAgBhlD,KAAM4kH,GAEtB5kH,KAAKmgD,KAAOA,EACZngD,KAAKg9G,YAAcA,EACnBh9G,KAAK4/B,WAAW/7B,GAsFlB,MAnFAuhD,GAAaw/D,IACX96G,IAAK,aACL1E,MAAO,SAAoBvB,GACzB7D,KAAK6D,QAAUA,KAUjBiG,IAAK,QACL1E,MAAO,WAUL,IAAK,GATDy/G,GAAa,OACbtiB,EAAO,OACPnG,EAAcp8F,KAAKg9G,YAAYE,mBAC/B/gB,EAAQn8F,KAAKmgD,KAAKg8C,MAClBiY,EAAQ,OACRC,EAAQ,OACRyQ,EAAQ,OAGHj+G,EAAI,EAAGA,EAAIu1F,EAAY11F,OAAQG,IACtC07F,EAAOpG,EAAMC,EAAYv1F,IACrB07F,EAAK4Q,aAAc,GAAQ5Q,EAAKyE,OAASzE,EAAK0E,QAEbtgG,SAA/B3G,KAAKmgD,KAAK87C,MAAMsG,EAAKyE,OAAwDrgG,SAAjC3G,KAAKmgD,KAAK87C,MAAMsG,EAAK0E,UACzCtgG,SAAtB47F,EAAKgQ,SAASmF,KAChBmN,EAAqCl+G,SAAxB47F,EAAK1+F,QAAQ6C,OAAuB1G,KAAK6D,QAAQ26G,aAAejc,EAAK1+F,QAAQ6C,OAC1F0tG,EAAQ7R,EAAKjtF,GACb++F,EAAQ9R,EAAKgQ,SAASmF,IACtBoN,EAAQviB,EAAKhtF,KAEbvV,KAAK+kH,sBAAsB3Q,EAAOC,EAAO,GAAMwQ,GAC/C7kH,KAAK+kH,sBAAsB1Q,EAAOyQ,EAAO,GAAMD,KAI/CA,EAAqCl+G,SAAxB47F,EAAK1+F,QAAQ6C,OAAmD,IAA5B1G,KAAK6D,QAAQ26G,aAAqBjc,EAAK1+F,QAAQ6C,OAChG1G,KAAK+kH,sBAAsBxiB,EAAKhtF,KAAMgtF,EAAKjtF,GAAIuvG,QAiBzD/6G,IAAK,wBACL1E,MAAO,SAA+BgvG,EAAOC,EAAOwQ,GAClD,GAAIn6E,GAAK0pE,EAAM51E,EAAI61E,EAAM71E,EACrBmM,EAAKypE,EAAMpyF,EAAIqyF,EAAMryF,EACrBgvB,EAAW1rC,KAAKJ,IAAII,KAAK+0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAAK,KAGlDq6E,EAAchlH,KAAK6D,QAAQ46G,gBAAkBoG,EAAa7zE,GAAYA,EAEtEgyE,EAAKt4E,EAAKs6E,EACV/B,EAAKt4E,EAAKq6E,CAG4Br+G,UAAtC3G,KAAKg9G,YAAYG,OAAO/I,EAAM/zG,MAChCL,KAAKg9G,YAAYG,OAAO/I,EAAM/zG,IAAIm+B,GAAKwkF,EACvChjH,KAAKg9G,YAAYG,OAAO/I,EAAM/zG,IAAI2hB,GAAKihG,GAGCt8G,SAAtC3G,KAAKg9G,YAAYG,OAAO9I,EAAMh0G,MAChCL,KAAKg9G,YAAYG,OAAO9I,EAAMh0G,IAAIm+B,GAAKwkF,EACvChjH,KAAKg9G,YAAYG,OAAO9I,EAAMh0G,IAAI2hB,GAAKihG,OAKtC2B,IAGThlH,GAAAA,WAAkBglH,GAId,SAAS/kH,EAAQD,GAUrB,QAASolD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCANhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI5hB+/D,EAA2B,WAC7B,QAASA,GAAyB9kE,EAAM68D,EAAan5G,GACnDmhD,EAAgBhlD,KAAMilH,GAEtBjlH,KAAKmgD,KAAOA,EACZngD,KAAKg9G,YAAcA,EACnBh9G,KAAK4/B,WAAW/7B,GAwGlB,MArGAuhD,GAAa6/D,IACXn7G,IAAK,aACL1E,MAAO,SAAoBvB,GACzB7D,KAAK6D,QAAUA,KAUjBiG,IAAK,QACL1E,MAAO,WAWL,IAAK,GAVDy/G,GAAYtiB,EACZ73D,EAAIC,EAAIq4E,EAAIC,EAAI+B,EAAah0E,EAC7BmrD,EAAQn8F,KAAKmgD,KAAKg8C,MAClB54C,EAAS,GAET64C,EAAcp8F,KAAKg9G,YAAYE,mBAC/BhhB,EAAcl8F,KAAKg9G,YAAYC,mBAC/BE,EAASn9G,KAAKg9G,YAAYG,OAGrBt2G,EAAI,EAAGA,EAAIq1F,EAAYx1F,OAAQG,IAAK,CAC3C,GAAIg5F,GAAS3D,EAAYr1F,EACzBs2G,GAAOtd,GAAQqlB,SAAW,EAC1B/H,EAAOtd,GAAQslB,SAAW,EAI5B,IAAK,GAAIzvG,GAAK,EAAGA,EAAK0mF,EAAY11F,OAAQgP,IACxC6sF,EAAOpG,EAAMC,EAAY1mF,IACrB6sF,EAAK4Q,aAAc,IACrB0R,EAAqCl+G,SAAxB47F,EAAK1+F,QAAQ6C,OAAuB1G,KAAK6D,QAAQ26G,aAAejc,EAAK1+F,QAAQ6C,OAE1FgkC,EAAK63D,EAAKhtF,KAAKipB,EAAI+jE,EAAKjtF,GAAGkpB,EAC3BmM,EAAK43D,EAAKhtF,KAAKyM,EAAIugF,EAAKjtF,GAAG0M,EAC3BgvB,EAAW1rC,KAAK+0C,KAAK3P,EAAKA,EAAKC,EAAKA,GACpCqG,EAAwB,IAAbA,EAAiB,IAAOA,EAGnCg0E,EAAchlH,KAAK6D,QAAQ46G,gBAAkBoG,EAAa7zE,GAAYA,EAEtEgyE,EAAKt4E,EAAKs6E,EACV/B,EAAKt4E,EAAKq6E,EAENziB,EAAKjtF,GAAG2vF,OAAS1C,EAAKhtF,KAAK0vF,OACHt+F,SAAtBw2G,EAAO5a,EAAKyE,QACdmW,EAAO5a,EAAKyE,MAAMke,UAAYlC,EAC9B7F,EAAO5a,EAAKyE,MAAMme,UAAYlC,GAEJt8G,SAAxBw2G,EAAO5a,EAAK0E,UACdkW,EAAO5a,EAAK0E,QAAQie,UAAYlC,EAChC7F,EAAO5a,EAAK0E,QAAQke,UAAYlC,KAGRt8G,SAAtBw2G,EAAO5a,EAAKyE,QACdmW,EAAO5a,EAAKyE,MAAMxoE,GAAK+kB,EAASy/D,EAChC7F,EAAO5a,EAAKyE,MAAMhlF,GAAKuhC,EAAS0/D,GAENt8G,SAAxBw2G,EAAO5a,EAAK0E,UACdkW,EAAO5a,EAAK0E,QAAQzoE,GAAK+kB,EAASy/D,EAClC7F,EAAO5a,EAAK0E,QAAQjlF,GAAKuhC,EAAS0/D,IAS1C,KAAK,GADDiC,GAAUC,EADVH,EAAc,EAETI,EAAM,EAAGA,EAAMlpB,EAAYx1F,OAAQ0+G,IAAO,CACjD,GAAI3oF,GAAUy/D,EAAYkpB,EAC1BF,GAAW5/G,KAAKL,IAAI+/G,EAAa1/G,KAAKJ,KAAK8/G,EAAa7H,EAAO1gF,GAASyoF,WACxEC,EAAW7/G,KAAKL,IAAI+/G,EAAa1/G,KAAKJ,KAAK8/G,EAAa7H,EAAO1gF,GAAS0oF,WAExEhI,EAAO1gF,GAAS+B,GAAK0mF,EACrB/H,EAAO1gF,GAASza,GAAKmjG,EAMvB,IAAK,GAFDE,GAAU,EACVC,EAAU,EACLC,EAAM,EAAGA,EAAMrpB,EAAYx1F,OAAQ6+G,IAAO,CACjD,GAAItf,GAAW/J,EAAYqpB,EAC3BF,IAAWlI,EAAOlX,GAAUznE,EAC5B8mF,GAAWnI,EAAOlX,GAAUjkF,EAK9B,IAAK,GAHDwjG,GAAeH,EAAUnpB,EAAYx1F,OACrC++G,EAAeH,EAAUppB,EAAYx1F,OAEhCg/G,EAAM,EAAGA,EAAMxpB,EAAYx1F,OAAQg/G,IAAO,CACjD,GAAIC,GAAWzpB,EAAYwpB,EAC3BvI,GAAOwI,GAAUnnF,GAAKgnF,EACtBrI,EAAOwI,GAAU3jG,GAAKyjG,OAKrBR,IAGTrlH,GAAAA,WAAkBqlH,GAId,SAASplH,EAAQD,GAUrB,QAASolD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCANhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI5hB0gE,EAAuB,WACzB,QAASA,GAAqBzlE,EAAM68D,EAAan5G,GAC/CmhD,EAAgBhlD,KAAM4lH,GAEtB5lH,KAAKmgD,KAAOA,EACZngD,KAAKg9G,YAAcA,EACnBh9G,KAAK4/B,WAAW/7B,GA4ClB,MAzCAuhD,GAAawgE,IACX97G,IAAK,aACL1E,MAAO,SAAoBvB,GACzB7D,KAAK6D,QAAUA,KAGjBiG,IAAK,QACL1E,MAAO,WASL,IAAK,GARDslC,GAAK,OACLC,EAAK,OACLqG,EAAW,OACXxU,EAAO,OACPy/D,EAAQj8F,KAAKmgD,KAAK87C,MAClBC,EAAcl8F,KAAKg9G,YAAYC,mBAC/BE,EAASn9G,KAAKg9G,YAAYG,OAErBt2G,EAAI,EAAGA,EAAIq1F,EAAYx1F,OAAQG,IAAK,CAC3C,GAAIg5F,GAAS3D,EAAYr1F,EACzB21B,GAAOy/D,EAAM4D,GACbn1D,GAAMlO,EAAKgC,EACXmM,GAAMnO,EAAKxa,EACXgvB,EAAW1rC,KAAK+0C,KAAK3P,EAAKA,EAAKC,EAAKA,GAEpC3qC,KAAK8iH,iBAAiB9xE,EAAUtG,EAAIC,EAAIwyE,EAAQ3gF,OAUpD1yB,IAAK,mBACL1E,MAAO,SAA0B4rC,EAAUtG,EAAIC,EAAIwyE,EAAQ3gF,GACzD,GAAIumF,GAA4B,IAAb/xE,EAAiB,EAAIhxC,KAAK6D,QAAQ06G,eAAiBvtE,CACtEmsE,GAAO3gF,EAAKn8B,IAAIm+B,EAAIkM,EAAKq4E,EACzB5F,EAAO3gF,EAAKn8B,IAAI2hB,EAAI2oB,EAAKo4E,MAItB6C,IAGThmH,GAAAA,WAAkBgmH,GAId,SAAS/lH,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hB82D,EAAoB97G,EAAoB,IAExC2lH,EAAoBvmE,EAAuB08D,GAU3C8J,EAAkC,SAAU/J,GAG9C,QAAS+J,GAAgC3lE,EAAM68D,EAAan5G,GAG1D,MAFAmhD,GAAgBhlD,KAAM8lH,GAEf5Z,EAA2BlsG,KAAMuH,OAAOslG,eAAeiZ,GAAiCvlH,KAAKP,KAAMmgD,EAAM68D,EAAan5G,IAuC/H,MA5CAuoG,GAAU0Z,EAAiC/J,GAoB3C32D,EAAa0gE,IACXh8G,IAAK,mBACL1E,MAAO,SAA0B4rC,EAAUtG,EAAIC,EAAInO,EAAMkmF,GACtC,IAAb1xE,IACFA,EAAW,GAAM1rC,KAAKs3B,SACtB8N,EAAKsG,GAGHhxC,KAAKkiH,uBAAyB,IAChClxE,EAAW1rC,KAAKJ,IAAI,GAAMlF,KAAKkiH,uBAAyB1lF,EAAKgpE,MAAM/uD,OAAQzF,EAAWxU,EAAKgpE,MAAM/uD,QAGnG,IAAIsvE,GAASvpF,EAAK2/D,MAAMz1F,OAAS,EAG7Bq8G,EAAe/iH,KAAK6D,QAAQy6G,sBAAwBoE,EAAaxd,KAAO1oE,EAAK34B,QAAQqhG,KAAO6gB,EAASzgH,KAAKiW,IAAIy1B,EAAU,GACxHgyE,EAAKt4E,EAAKq4E,EACVE,EAAKt4E,EAAKo4E,CAEd/iH,MAAKg9G,YAAYG,OAAO3gF,EAAKn8B,IAAIm+B,GAAKwkF,EACtChjH,KAAKg9G,YAAYG,OAAO3gF,EAAKn8B,IAAI2hB,GAAKihG,MAInC6C,GACPD,EAAAA,WAEFjmH,GAAAA,WAAkBkmH,GAId,SAASjmH,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAhBje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBw3D,EAAyBx8G,EAAoB,IAE7C8lH,EAAyB1mE,EAAuBo9D,GAUhDuJ,EAAuC,SAAUxJ,GAGnD,QAASwJ,GAAqC9lE,EAAM68D,EAAan5G,GAG/D,MAFAmhD,GAAgBhlD,KAAMimH,GAEf/Z,EAA2BlsG,KAAMuH,OAAOslG,eAAeoZ,GAAsC1lH,KAAKP,KAAMmgD,EAAM68D,EAAan5G,IAqBpI,MA1BAuoG,GAAU6Z,EAAsCxJ,GAchDr3D,EAAa6gE,IACXn8G,IAAK,mBACL1E,MAAO,SAA0B4rC,EAAUtG,EAAIC,EAAIwyE,EAAQ3gF,GACzD,GAAIwU,EAAW,EAAG,CAChB,GAAI+0E,GAASvpF,EAAK2/D,MAAMz1F,OAAS,EAC7Bq8G,EAAe/iH,KAAK6D,QAAQ06G,eAAiBwH,EAASvpF,EAAK34B,QAAQqhG,IACvEiY,GAAO3gF,EAAKn8B,IAAIm+B,EAAIkM,EAAKq4E,EACzB5F,EAAO3gF,EAAKn8B,IAAI2hB,EAAI2oB,EAAKo4E,OAKxBkD,GACPD,EAAAA,WAEFpmH,GAAAA,WAAkBqmH,GAId,SAASpmH,EAAQD,EAASM;AAoB9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAlBhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIlB,GAA4B,kBAAXC,SAAoD,gBAApBA,QAAOC,SAAwB,SAAUC,GAAO,aAAcA,IAAS,SAAUA,GAAO,MAAOA,IAAyB,kBAAXF,SAAyBE,EAAIC,cAAgBH,OAAS,eAAkBE,IAEtO+gD,EAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBghE,EAAehmH,EAAoB,KAEnCimH,EAAgB7mE,EAAuB4mE,GAEvCE,EAAWlmH,EAAoB,KAE/BmmH,EAAY/mE,EAAuB8mE,GAMnCzlH,EAAOT,EAAoB,GAE3BomH,EAAgB,WAClB,QAASA,GAAcnmE,GACrB,GAAIgD,GAAQnjD,IAEZglD,GAAgBhlD,KAAMsmH,GAEtBtmH,KAAKmgD,KAAOA,EACZngD,KAAKumH,kBACLvmH,KAAKwmH,kBAELxmH,KAAK6D,WACL7D,KAAK2/C,kBACLh/C,EAAKoG,OAAO/G,KAAK6D,QAAS7D,KAAK2/C,gBAE/B3/C,KAAKmgD,KAAKE,QAAQrgB,GAAG,aAAc,WACjCmjB,EAAMojE,kBAAoBpjE,EAAMqjE,oBAozBpC,MAhzBAphE,GAAakhE,IACXx8G,IAAK,aACL1E,MAAO,SAAoBvB,OAW3BiG,IAAK,mBACL1E,MAAO,SAA0BqhH,EAAS5iH,GACxB8C,SAAZ8/G,EACFA,EAAUzmH,KAAK0mH,cACgE,YAAlD,mBAAZD,GAA0B,YAAcviH,EAAQuiH,MACjE5iH,EAAU7D,KAAK2mH,cAAcF,GAC7BA,EAAUzmH,KAAK0mH,cAIjB,KAAK,GADDE,MACK//G,EAAI,EAAGA,EAAI7G,KAAKmgD,KAAK+7C,YAAYx1F,OAAQG,IAAK,CACrD,GAAI21B,GAAOx8B,KAAKmgD,KAAK87C,MAAMj8F,KAAKmgD,KAAK+7C,YAAYr1F,GAC7C21B,GAAK2/D,MAAMz1F,QAAU+/G,GACvBG,EAAej/G,KAAK60B,EAAKn8B,IAI7B,IAAK,GAAIqV,GAAK,EAAGA,EAAKkxG,EAAelgH,OAAQgP,IAC3C1V,KAAK6gG,oBAAoB+lB,EAAelxG,GAAK7R,GAAS,EAGxD7D,MAAKmgD,KAAKE,QAAQ5H,KAAK,mBAUzB3uC,IAAK,UACL1E,MAAO,WACL,GAAIvB,GAAU4C,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAC/EogH,EAAcpgH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAEzF,IAA8BE,SAA1B9C,EAAQijH,cACV,KAAM,IAAI1/G,OAAM,iFAIlBvD,GAAU7D,KAAK2mH,cAAc9iH,EAM7B,KAAK,GAJDkjH,MACAC,KAGKngH,EAAI,EAAGA,EAAI7G,KAAKmgD,KAAK+7C,YAAYx1F,OAAQG,IAAK,CACrD,GAAIg5F,GAAS7/F,KAAKmgD,KAAK+7C,YAAYr1F,GAC/B21B,EAAOx8B,KAAKmgD,KAAK87C,MAAM4D,GACvBonB,EAAgBd,EAAAA,WAAsBe,aAAa1qF,EACvD,IAAI34B,EAAQijH,cAAcG,MAAmB,EAAM,CACjDF,EAAclnB,GAAU7/F,KAAKmgD,KAAK87C,MAAM4D,EAGxC,KAAK,GAAIulB,GAAM,EAAGA,EAAM5oF,EAAK2/D,MAAMz1F,OAAQ0+G,IAAO,CAChD,GAAI7iB,GAAO/lE,EAAK2/D,MAAMipB,EACez+G,UAAjC3G,KAAKwmH,eAAejkB,EAAKliG,MAC3B2mH,EAAczkB,EAAKliG,IAAMkiG,KAMjCviG,KAAKmnH,SAASJ,EAAeC,EAAenjH,EAASgjH,MAWvD/8G,IAAK,qBACL1E,MAAO,SAA4BgiH,EAAWvjH,GAC5C,GAAIgjH,GAAcpgH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAEzF5C,GAAU7D,KAAK2mH,cAAc9iH,EAS7B,KAAK,GARDwjH,MACAC,KACA/kB,EAAO,OACPpG,EAAQ,OACR3/D,EAAO,OACPqjE,EAAS,OACT0nB,EAAoB,OAEf1gH,EAAI,EAAGA,EAAI7G,KAAKmgD,KAAK+7C,YAAYx1F,OAAQG,IAAK,CACrD,GAAIkgH,MACAC,IAIJ,IAHAnnB,EAAS7/F,KAAKmgD,KAAK+7C,YAAYr1F,GAGLF,SAAtB2gH,EAAUznB,GAAuB,CACnC0nB,EAAoB,EACpB/qF,EAAOx8B,KAAKmgD,KAAK87C,MAAM4D,GACvB1D,IACA,KAAK,GAAIvrF,GAAI,EAAGA,EAAI4rB,EAAK2/D,MAAMz1F,OAAQkK,IACrC2xF,EAAO/lE,EAAK2/D,MAAMvrF,GACmBjK,SAAjC3G,KAAKwmH,eAAejkB,EAAKliG,MACvBkiG,EAAKyE,OAASzE,EAAK0E,QACrBsgB,IAEFprB,EAAMx0F,KAAK46F,GAKf,IAAIglB,IAAsBH,EAAW,CAEnC,IAAK,GADDI,IAAsB,EACjBn5C,EAAK,EAAGA,EAAK8tB,EAAMz1F,OAAQ2nE,IAAM,CACxCk0B,EAAOpG,EAAM9tB,EACb,IAAIo5C,GAAcznH,KAAK0nH,gBAAgBnlB,EAAM1C,EAE7C,IAA8Bl5F,SAA1B9C,EAAQijH,cACVE,EAAczkB,EAAKliG,IAAMkiG,EACzBwkB,EAAclnB,GAAU7/F,KAAKmgD,KAAK87C,MAAM4D,GACxCknB,EAAcU,GAAeznH,KAAKmgD,KAAK87C,MAAMwrB,GAC7CH,EAAUznB,IAAU,MACf,CACL,GAAIonB,GAAgBd,EAAAA,WAAsBe,aAAalnH,KAAKmgD,KAAK87C,MAAM4D,GACvE,IAAIh8F,EAAQijH,cAAcG,MAAmB,EAItC,CAELO,GAAsB,CACtB,OANAR,EAAczkB,EAAKliG,IAAMkiG,EACzBwkB,EAAclnB,GAAU7/F,KAAKmgD,KAAK87C,MAAM4D,GACxCynB,EAAUznB,IAAU,GAUtBt4F,OAAO6H,KAAK23G,GAAergH,OAAS,GAAKa,OAAO6H,KAAK43G,GAAetgH,OAAS,GAAK8gH,KAAwB,GAC5GH,EAAS1/G,MAAOs0F,MAAO8qB,EAAe5qB,MAAO6qB,MAMrD,IAAK,GAAIzB,GAAM,EAAGA,EAAM8B,EAAS3gH,OAAQ6+G,IACvCvlH,KAAKmnH,SAASE,EAAS9B,GAAKtpB,MAAOorB,EAAS9B,GAAKppB,MAAOt4F,GAAS,EAG/DgjH,MAAgB,GAClB7mH,KAAKmgD,KAAKE,QAAQ5H,KAAK,mBAW3B3uC,IAAK,kBACL1E,MAAO,SAAyBvB,GAC9B,GAAIgjH,GAAcpgH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAEzFzG,MAAK2nH,mBAAmB,EAAG9jH,EAASgjH,MAUtC/8G,IAAK,iBACL1E,MAAO,SAAwBvB,GAC7B,GAAIgjH,GAAcpgH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAEzFzG,MAAK2nH,mBAAmB,EAAG9jH,EAASgjH,MAWtC/8G,IAAK,sBACL1E,MAAO,SAA6By6F,EAAQh8F,GAC1C,GAAIgjH,GAAcpgH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAGzF,IAAeE,SAAXk5F,EACF,KAAM,IAAIz4F,OAAM,6CAElB,IAAgCT,SAA5B3G,KAAKmgD,KAAK87C,MAAM4D,GAClB,KAAM,IAAIz4F,OAAM,0DAGlB,IAAIo1B,GAAOx8B,KAAKmgD,KAAK87C,MAAM4D,EAC3Bh8F,GAAU7D,KAAK2mH,cAAc9iH,EAAS24B,GACE71B,SAApC9C,EAAQ+jH,sBAAsBppF,IAChC36B,EAAQ+jH,sBAAsBppF,EAAIhC,EAAKgC,GAED73B,SAApC9C,EAAQ+jH,sBAAsB5lG,IAChCne,EAAQ+jH,sBAAsB5lG,EAAIwa,EAAKxa,GAEGrb,SAAxC9C,EAAQ+jH,sBAAsBhjB,QAChC/gG,EAAQ+jH,sBAAsBhjB,SAC9B/gG,EAAQ+jH,sBAAsBhjB,MAAMpmE,EAAIhC,EAAK34B,QAAQ+gG,MAAMpmE,EAC3D36B,EAAQ+jH,sBAAsBhjB,MAAM5iF,EAAIwa,EAAK34B,QAAQ+gG,MAAM5iF,EAG7D,IAAI+kG,MACAC,KACAa,EAAerrF,EAAKn8B,GACpBynH,EAAsB3B,EAAAA,WAAsBe,aAAa1qF,EAC7DuqF,GAAcc,GAAgBrrF,CAG9B,KAAK,GAAI31B,GAAI,EAAGA,EAAI21B,EAAK2/D,MAAMz1F,OAAQG,IAAK,CAC1C,GAAI07F,GAAO/lE,EAAK2/D,MAAMt1F,EACtB,IAAqCF,SAAjC3G,KAAKwmH,eAAejkB,EAAKliG,IAAmB,CAC9C,GAAIonH,GAAcznH,KAAK0nH,gBAAgBnlB,EAAMslB,EAG7C,IAAyClhH,SAArC3G,KAAKumH,eAAekB,GACtB,GAAIA,IAAgBI,EAClB,GAA8BlhH,SAA1B9C,EAAQijH,cACVE,EAAczkB,EAAKliG,IAAMkiG,EACzBwkB,EAAcU,GAAeznH,KAAKmgD,KAAK87C,MAAMwrB,OACxC,CAEL,GAAIM,GAAqB5B,EAAAA,WAAsBe,aAAalnH,KAAKmgD,KAAK87C,MAAMwrB,GACxE5jH,GAAQijH,cAAcgB,EAAqBC,MAAwB,IACrEf,EAAczkB,EAAKliG,IAAMkiG,EACzBwkB,EAAcU,GAAeznH,KAAKmgD,KAAK87C,MAAMwrB,QAKjDT,GAAczkB,EAAKliG,IAAMkiG,GAMjCviG,KAAKmnH,SAASJ,EAAeC,EAAenjH,EAASgjH,MAevD/8G,IAAK,sBACL1E,MAAO,SAA6B2hH,EAAeC,EAAeY,EAAuBI,GAYvF,IAAK,GAXDzlB,GAAO,OACPklB,EAAc,OACdQ,EAAY,OACZjhB,EAAO,OACPC,EAAS,OACTihB,EAAc,OAIdC,EAAY5gH,OAAO6H,KAAK23G,GACxBqB,KACKvhH,EAAI,EAAGA,EAAIshH,EAAUzhH,OAAQG,IAAK,CACzC4gH,EAAcU,EAAUthH,GACxBohH,EAAYlB,EAAcU,EAG1B,KAAK,GAAI72G,GAAI,EAAGA,EAAIq3G,EAAU9rB,MAAMz1F,OAAQkK,IAC1C2xF,EAAO0lB,EAAU9rB,MAAMvrF,GAEcjK,SAAjC3G,KAAKwmH,eAAejkB,EAAKliG,MAEvBkiG,EAAKyE,MAAQzE,EAAK0E,OACpB+f,EAAczkB,EAAKliG,IAAMkiG,EAGrBA,EAAKyE,MAAQygB,GAEfzgB,EAAO4gB,EAAsBvnH,GAC7B4mG,EAAS1E,EAAK0E,OACdihB,EAAcjhB,IAEdD,EAAOzE,EAAKyE,KACZC,EAAS2gB,EAAsBvnH,GAC/B6nH,EAAclhB,GAKiBrgG,SAA/BogH,EAAcmB,IAChBE,EAAYzgH,MAAO46F,KAAMA,EAAM0E,OAAQA,EAAQD,KAAMA,KAQ7D,IAAK,GAAI14B,GAAM,EAAGA,EAAM85C,EAAY1hH,OAAQ4nE,IAAO,CACjD,GAAI+5C,GAAQD,EAAY95C,GAAKi0B,KAEzB0kB,EAAgBd,EAAAA,WAAsBe,aAAamB,EAAO,OAE9D1nH,GAAK6G,WAAWy/G,EAAee,GAG/Bf,EAAc1xG,KAAO6yG,EAAY95C,GAAK24B,OACtCggB,EAAc3xG,GAAK8yG,EAAY95C,GAAK04B,KACpCigB,EAAc5mH,GAAK,eAAiBM,EAAKqF,YAIzC,IAAIsiH,GAAUtoH,KAAKmgD,KAAK48C,UAAUE,WAAWgqB,EAC7CqB,GAAQC,0BAA4BF,EAAMhoH,GAG1CL,KAAKmgD,KAAKg8C,MAAMmsB,EAAQjoH,IAAMioH,EAC9BA,EAAQjW,UAGRryG,KAAKwoH,mBAAmBH,GACxBA,EAAMzoF,YAAa2qB,SAAS,EAAO2oB,QAAQ,QAa/CppE,IAAK,gBACL1E,MAAO,WACL,GAAIvB,GAAU4C,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,EASnF,OAPsCE,UAAlC9C,EAAQmkH,wBACVnkH,EAAQmkH,0BAE4BrhH,SAAlC9C,EAAQ+jH,wBACV/jH,EAAQ+jH,0BAGH/jH,KAaTiG,IAAK,WACL1E,MAAO,SAAkB2hH,EAAeC,EAAenjH,GACrD,GAAIgjH,GAAcpgH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAGzF,MAAIc,OAAO6H,KAAK23G,GAAergH,OAAS,GAAxC,CAKA,IAAK,GAAIm5F,KAAUknB,GACjB,GAAIA,EAAc3gH,eAAey5F,IACKl5F,SAAhC3G,KAAKumH,eAAe1mB,GACtB,MAKN,IAAI+nB,GAAwBjnH,EAAK6G,cAAe3D,EAAQ+jH,sBAGxD,IAAkCjhH,SAA9B9C,EAAQ4kH,kBAAiC,CAE3C,GAAIC,KACJ,KAAK,GAAIjsF,KAAWsqF,GAClB,GAAIA,EAAc3gH,eAAeq2B,GAAU,CACzC,GAAIwqF,GAAgBd,EAAAA,WAAsBe,aAAaH,EAActqF,GACrEisF,GAAkB/gH,KAAKs/G,GAK3B,GAAI0B,KACJ,KAAK,GAAI7oB,KAAUknB,GACjB,GAAIA,EAAc5gH,eAAe05F,IAEF,iBAAzBA,EAAO/yF,OAAO,EAAG,IAAwB,CAC3C,GAAI67G,GAAiBzC,EAAAA,WAAsBe,aAAaF,EAAclnB,GAAS,OAC/E6oB,GAAkBhhH,KAAKihH,GAM7B,GADAhB,EAAwB/jH,EAAQ4kH,kBAAkBb,EAAuBc,EAAmBC,IACvFf,EACH,KAAM,IAAIxgH,OAAM,8DAKaT,SAA7BihH,EAAsBvnH,KACxBunH,EAAsBvnH,GAAK,WAAaM,EAAKqF,aAE/C,IAAI6iH,GAAYjB,EAAsBvnH,EAEFsG,UAAhCihH,EAAsB9oF,QACxB8oF,EAAsB9oF,MAAQ,UAIhC,IAAI3H,GAAMxwB,MACsBA,UAA5BihH,EAAsBppF,IACxBrH,EAAMn3B,KAAK8oH,oBAAoB/B,GAC/Ba,EAAsBppF,EAAIrH,EAAIqH,GAEA73B,SAA5BihH,EAAsB5lG,IACZrb,SAARwwB,IACFA,EAAMn3B,KAAK8oH,oBAAoB/B,IAEjCa,EAAsB5lG,EAAImV,EAAInV,GAIhC4lG,EAAsBvnH,GAAKwoH,CAG3B,IAAIE,GAAc/oH,KAAKmgD,KAAK48C,UAAUC,WAAW4qB,EAAuBvB,EAAAA,WACxE0C,GAAYtoB,WAAY,EACxBsoB,EAAYC,eAAiBjC,EAC7BgC,EAAYE,eAAiBjC,EAE7B+B,EAAYf,sBAAwBnkH,EAAQmkH,sBAG5ChoH,KAAKmgD,KAAK87C,MAAM2rB,EAAsBvnH,IAAM0oH,EAG5C/oH,KAAKkpH,oBAAoBnC,EAAeC,EAAeY,EAAuB/jH,EAAQmkH,sBAGtF,KAAK,GAAIjW,KAAWiV,GAClB,GAAIA,EAAc5gH,eAAe2rG,IACEprG,SAA7B3G,KAAKmgD,KAAKg8C,MAAM4V,GAAwB,CAC1C,GAAIxP,GAAOviG,KAAKmgD,KAAKg8C,MAAM4V,EAE3B/xG,MAAKwoH,mBAAmBjmB,GAExBA,EAAK3iE,YAAa2qB,SAAS,EAAO2oB,QAAQ,IAMhD,IAAK,GAAI+yB,KAAY8gB,GACfA,EAAc3gH,eAAe6/F,KAC/BjmG,KAAKumH,eAAetgB,IAAc4iB,UAAWjB,EAAsBvnH,GAAIm8B,KAAMx8B,KAAKmgD,KAAK87C,MAAMgK,IAC7FjmG,KAAKmgD,KAAK87C,MAAMgK,GAAUrmE,YAAaszC,QAAQ,EAAM3oB,SAAS,IAKlEq9D,GAAsBvnH,GAAKsG,OAGvBkgH,KAAgB,GAClB7mH,KAAKmgD,KAAKE,QAAQ5H,KAAK,oBAI3B3uC,IAAK,qBACL1E,MAAO,SAA4Bm9F,GACI57F,SAAjC3G,KAAKwmH,eAAejkB,EAAKliG,MAC3BL,KAAKwmH,eAAejkB,EAAKliG,KAAQkqD,QAASg4C,EAAK1+F,QAAQ0mD,QAAS2oB,OAAQqvB,EAAK1+F,QAAQqvE,YAIzFppE,IAAK,eACL1E,MAAO,SAAsBm9F,GAC3B,GAAI4mB,GAAkBnpH,KAAKwmH,eAAejkB,EAAKliG,GACvBsG,UAApBwiH,IACF5mB,EAAK3iE,YAAa2qB,QAAS4+D,EAAgB5+D,QAAS2oB,OAAQi2C,EAAgBj2C,eACrElzE,MAAKwmH,eAAejkB,EAAKliG,QAWpCyJ,IAAK,YACL1E,MAAO,SAAmBy6F,GACxB,MAAgCl5F,UAA5B3G,KAAKmgD,KAAK87C,MAAM4D,GACX7/F,KAAKmgD,KAAK87C,MAAM4D,GAAQY,aAAc,GAE7ClpF,QAAQwnC,IAAI,yBACL,MAYXj1C,IAAK,sBACL1E,MAAO,SAA6B2hH,GAOlC,IAAK,GANDoB,GAAY5gH,OAAO6H,KAAK23G,GACxB7D,EAAO6D,EAAcoB,EAAU,IAAI3pF,EACnC4kF,EAAO2D,EAAcoB,EAAU,IAAI3pF,EACnC2kF,EAAO4D,EAAcoB,EAAU,IAAInmG,EACnCqhG,EAAO0D,EAAcoB,EAAU,IAAInmG,EACnCwa,EAAO,OACF31B,EAAI,EAAGA,EAAIshH,EAAUzhH,OAAQG,IACpC21B,EAAOuqF,EAAcoB,EAAUthH,IAC/Bq8G,EAAO1mF,EAAKgC,EAAI0kF,EAAO1mF,EAAKgC,EAAI0kF,EAChCE,EAAO5mF,EAAKgC,EAAI4kF,EAAO5mF,EAAKgC,EAAI4kF,EAChCD,EAAO3mF,EAAKxa,EAAImhG,EAAO3mF,EAAKxa,EAAImhG,EAChCE,EAAO7mF,EAAKxa,EAAIqhG,EAAO7mF,EAAKxa,EAAIqhG,CAGlC,QAAS7kF,EAAG,IAAO0kF,EAAOE,GAAOphG,EAAG,IAAOmhG,EAAOE,OAUpDv5G,IAAK,cACL1E,MAAO,SAAqBgkH,EAAevlH,GACzC,GAAIgjH,GAAcpgH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAGzF,IAAsBE,SAAlByiH,EACF,KAAM,IAAIhiH,OAAM,4CAElB,IAAuCT,SAAnC3G,KAAKmgD,KAAK87C,MAAMmtB,GAClB,KAAM,IAAIhiH,OAAM,4DAElB,IAAsDT,SAAlD3G,KAAKmgD,KAAK87C,MAAMmtB,GAAeJ,eAEjC,WADAzxG,SAAQwnC,IAAI,YAAcqqE,EAAgB,qBAG5C,IAAIL,GAAc/oH,KAAKmgD,KAAK87C,MAAMmtB,GAC9BJ,EAAiBD,EAAYC,eAC7BC,EAAiBF,EAAYE,cAGjC,IAAgBtiH,SAAZ9C,GAAqD8C,SAA5B9C,EAAQwlH,iBAAoE,kBAA5BxlH,GAAQwlH,gBAAgC,CACnH,GAAI3I,MACA4I,GAAoB9qF,EAAGuqF,EAAYvqF,EAAGxc,EAAG+mG,EAAY/mG,EACzD,KAAK,GAAI69E,KAAUmpB,GACjB,GAAIA,EAAe5iH,eAAey5F,GAAS,CACzC,GAAIskB,GAAgBnkH,KAAKmgD,KAAK87C,MAAM4D,EACpC6gB,GAAU7gB,IAAYrhE,EAAG2lF,EAAc3lF,EAAGxc,EAAGmiG,EAAcniG,GAG/D,GAAIunG,GAAe1lH,EAAQwlH,gBAAgBC,EAAiB5I,EAE5D,KAAK,GAAIiF,KAAYqD,GACnB,GAAIA,EAAe5iH,eAAeu/G,GAAW,CAC3C,GAAI6D,GAAiBxpH,KAAKmgD,KAAK87C,MAAM0pB,EACNh/G,UAA3B4iH,EAAa5D,KACf6D,EAAehrF,EAAiC73B,SAA7B4iH,EAAa5D,GAAUnnF,EAAkBuqF,EAAYvqF,EAAI+qF,EAAa5D,GAAUnnF,EACnGgrF,EAAexnG,EAAiCrb,SAA7B4iH,EAAa5D,GAAU3jG,EAAkB+mG,EAAY/mG,EAAIunG,EAAa5D,GAAU3jG,QAMzG,KAAK,GAAIynG,KAAYT,GACnB,GAAIA,EAAe5iH,eAAeqjH,GAAW,CAC3C,GAAIC,GAAkB1pH,KAAKmgD,KAAK87C,MAAMwtB,EACtCC,GAAkBV,EAAeS,GAE7BC,EAAgB7lH,QAAQ+gG,MAAMpmE,KAAM,IACtCkrF,EAAgBlrF,EAAIuqF,EAAYvqF,GAE9BkrF,EAAgB7lH,QAAQ+gG,MAAM5iF,KAAM,IACtC0nG,EAAgB1nG,EAAI+mG,EAAY/mG,GAOxC,IAAK,GAAI2nG,KAAYX,GACnB,GAAIA,EAAe5iH,eAAeujH,GAAW,CAC3C,GAAIC,GAAkB5pH,KAAKmgD,KAAK87C,MAAM0tB,EAGtCC,GAAgBjJ,GAAKoI,EAAYpI,GACjCiJ,EAAgBhJ,GAAKmI,EAAYnI,GAGjCgJ,EAAgBhqF,YAAaszC,QAAQ,EAAO3oB,SAAS,UAE9CvqD,MAAKumH,eAAeoD,GAM/B,IAAK,GADDE,MACKhjH,EAAI,EAAGA,EAAIkiH,EAAY5sB,MAAMz1F,OAAQG,IAC5CgjH,EAAiBliH,KAAKohH,EAAY5sB,MAAMt1F,GAI1C,KAAK,GAAI6+G,GAAM,EAAGA,EAAMmE,EAAiBnjH,OAAQg/G,IAAO,CACtD,GAAInjB,GAAOsnB,EAAiBnE,GAExBwC,EAAcloH,KAAK0nH,gBAAgBnlB,EAAM6mB,EAE7C,IAAyCziH,SAArC3G,KAAKumH,eAAe2B,GAA4B,CAElD,GAAI4B,GAAe9pH,KAAKmgD,KAAK87C,MAAMj8F,KAAKumH,eAAe2B,GAAaW,WAChEkB,EAAe/pH,KAAKmgD,KAAKg8C,MAAMoG,EAAKgmB,0BACxC,IAAqB5hH,SAAjBojH,EAA4B,CAC9BD,EAAab,eAAec,EAAa1pH,IAAM0pH,QAGxCd,GAAec,EAAa1pH,GAInC,IAAI4mG,GAAS8iB,EAAa9iB,OACtBD,EAAO+iB,EAAa/iB,IACpB+iB,GAAa/iB,MAAQkhB,EACvBlhB,EAAOhnG,KAAKumH,eAAe2B,GAAaW,UAExC5hB,EAASjnG,KAAKumH,eAAe2B,GAAaW,SAI5C,IAAI5B,GAAgBd,EAAAA,WAAsBe,aAAa6C,EAAc,OACrEppH,GAAK6G,WAAWy/G,EAAe6C,EAAa9B,sBAG5C,IAAI3nH,GAAK,eAAiBM,EAAKqF,YAC/BrF,GAAK6G,WAAWy/G,GAAiB1xG,KAAM0xF,EAAQ3xF,GAAI0xF,EAAM9zB,QAAQ,EAAO3oB,SAAS,EAAMlqD,GAAIA,GAG3F,IAAIioH,GAAUtoH,KAAKmgD,KAAK48C,UAAUE,WAAWgqB,EAC7CqB,GAAQC,0BAA4BwB,EAAa1pH,GACjDL,KAAKmgD,KAAKg8C,MAAM97F,GAAMioH,EACtBtoH,KAAKmgD,KAAKg8C,MAAM97F,GAAIgyG,eAEjB,CACL,GAAI2X,GAAehqH,KAAKmgD,KAAKg8C,MAAMoG,EAAKgmB,0BACnB5hH,UAAjBqjH,GACFhqH,KAAKiqH,aAAaD,GAGtBznB,EAAK+P,UAEL/P,EAAK4P,mBACEnyG,MAAKmgD,KAAKg8C,MAAMoG,EAAKliG,IAI9B,IAAK,GAAIy/F,KAAUmpB,GACbA,EAAe7iH,eAAe05F,IAChC9/F,KAAKiqH,aAAahB,EAAenpB,UAK9B9/F,MAAKmgD,KAAK87C,MAAMmtB,GAEnBvC,KAAgB,GAClB7mH,KAAKmgD,KAAKE,QAAQ5H,KAAK,mBAI3B3uC,IAAK,oBACL1E,MAAO,SAA2ByjH,GAChC,GAAIqB,KACJ,IAAIlqH,KAAKygG,UAAUooB,MAAe,EAAM,CACtC,GAAIG,GAAiBhpH,KAAKmgD,KAAK87C,MAAM4sB,GAAWG,cAChD,KAAK,GAAInpB,KAAUmpB,GACbA,EAAe5iH,eAAey5F,IAChCqqB,EAAWviH,KAAK3H,KAAKmgD,KAAK87C,MAAM4D,GAAQx/F,IAK9C,MAAO6pH,MAUTpgH,IAAK,WACL1E,MAAO,SAAkBy6F,GAKvB,IAJA,GAAI/9F,MACAoD,EAAM,IACNynC,EAAU,EAEyBhmC,SAAhC3G,KAAKumH,eAAe1mB,IAAmC36F,EAAVynC,GAClD7qC,EAAM6F,KAAK3H,KAAKmgD,KAAK87C,MAAM4D,GAAQx/F,IACnCw/F,EAAS7/F,KAAKumH,eAAe1mB,GAAQgpB,UACrCl8E,GAKF,OAHA7qC,GAAM6F,KAAK3H,KAAKmgD,KAAK87C,MAAM4D,GAAQx/F,IACnCyB,EAAMqoH,UAECroH,KAYTgI,IAAK,kBACL1E,MAAO,SAAyBm9F,EAAM1C,GACpC,MAAI0C,GAAKyE,MAAQnH,EACR0C,EAAKyE,KACHzE,EAAK0E,QAAUpH,EACjB0C,EAAK0E,OAEL1E,EAAK0E,UAYhBn9F,IAAK,cACL1E,MAAO,WAML,IAAK,GALDglH,GAAU,EACVC,EAAiB,EACjBC,EAAa,EACbC,EAAa,EAER1jH,EAAI,EAAGA,EAAI7G,KAAKmgD,KAAK+7C,YAAYx1F,OAAQG,IAAK,CACrD,GAAI21B,GAAOx8B,KAAKmgD,KAAK87C,MAAMj8F,KAAKmgD,KAAK+7C,YAAYr1F,GAC7C21B,GAAK2/D,MAAMz1F,OAAS6jH,IACtBA,EAAa/tF,EAAK2/D,MAAMz1F,QAE1B0jH,GAAW5tF,EAAK2/D,MAAMz1F,OACtB2jH,GAAkB/kH,KAAKiW,IAAIihB,EAAK2/D,MAAMz1F,OAAQ,GAC9C4jH,GAAc,EAEhBF,GAAoBE,EACpBD,GAAkCC,CAElC,IAAIE,GAAWH,EAAiB/kH,KAAKiW,IAAI6uG,EAAS,GAC9CK,EAAoBnlH,KAAK+0C,KAAKmwE,GAE9BE,EAAeplH,KAAKqK,MAAMy6G,EAAU,EAAIK,EAO5C,OAJIC,GAAeH,IACjBG,EAAeH,GAGVG,MAIJpE,IAGT1mH,GAAAA,WAAkB0mH,GAId,SAASzmH,EAAQD,EAASM,GAU9B,QAAS8kD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCANhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI5hBvkD,EAAOT,EAAoB,GAE3ByqH,EAAc,WAChB,QAASA,KACP3lE,EAAgBhlD,KAAM2qH,GAmHxB,MA3GAvlE,GAAaulE,EAAa,OACxB7gH,IAAK,WACL1E,MAAO,SAAkBwlH,GACvB,GAMIpuF,GANAquF,EAAgBpkH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAErF08G,EAAO,IACPE,EAAO,KACPH,EAAO,IACPE,EAAO,IAEX,IAAIyH,EAAcnkH,OAAS,EACzB,IAAK,GAAIG,GAAI,EAAGA,EAAIgkH,EAAcnkH,OAAQG,IACxC21B,EAAOouF,EAASC,EAAchkH,IAC1Bq8G,EAAO1mF,EAAKgpE,MAAMqB,YAAY/9F,OAChCo6G,EAAO1mF,EAAKgpE,MAAMqB,YAAY/9F,MAE5Bs6G,EAAO5mF,EAAKgpE,MAAMqB,YAAYp0D,QAChC2wE,EAAO5mF,EAAKgpE,MAAMqB,YAAYp0D,OAE5B0wE,EAAO3mF,EAAKgpE,MAAMqB,YAAY79F,MAChCm6G,EAAO3mF,EAAKgpE,MAAMqB,YAAY79F,KAE5Bq6G,EAAO7mF,EAAKgpE,MAAMqB,YAAY33D,SAChCm0E,EAAO7mF,EAAKgpE,MAAMqB,YAAY33D,OAQpC,OAHa,OAATg0E,GAAyB,OAATE,GAA0B,MAATD,GAAyB,OAATE,IACnDF,EAAO,EAAGE,EAAO,EAAGH,EAAO,EAAGE,EAAO,IAE9BF,KAAMA,EAAME,KAAMA,EAAMD,KAAMA,EAAME,KAAMA,MAQrDv5G,IAAK,eACL1E,MAAO,SAAsBwlH,GAC3B,GAMIpuF,GANAquF,EAAgBpkH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAErF08G,EAAO,IACPE,EAAO,KACPH,EAAO,IACPE,EAAO,IAEX,IAAIyH,EAAcnkH,OAAS,EACzB,IAAK,GAAIG,GAAI,EAAGA,EAAIgkH,EAAcnkH,OAAQG,IACxC21B,EAAOouF,EAASC,EAAchkH,IAC1Bq8G,EAAO1mF,EAAKgC,IACd0kF,EAAO1mF,EAAKgC,GAEV4kF,EAAO5mF,EAAKgC,IACd4kF,EAAO5mF,EAAKgC,GAEV2kF,EAAO3mF,EAAKxa,IACdmhG,EAAO3mF,EAAKxa,GAEVqhG,EAAO7mF,EAAKxa,IACdqhG,EAAO7mF,EAAKxa,EAQlB,OAHa,OAATkhG,GAAyB,OAATE,GAA0B,MAATD,GAAyB,OAATE,IACnDF,EAAO,EAAGE,EAAO,EAAGH,EAAO,EAAGE,EAAO,IAE9BF,KAAMA,EAAME,KAAMA,EAAMD,KAAMA,EAAME,KAAMA,MASrDv5G,IAAK,aACL1E,MAAO,SAAoB87C,GACzB,OAAS1iB,EAAG,IAAO0iB,EAAMkiE,KAAOliE,EAAMgiE,MACpClhG,EAAG,IAAOk/B,EAAMmiE,KAAOniE,EAAMiiE,UAWjCr5G,IAAK,eACL1E,MAAO,SAAsBuM,EAAM5J,GACjC,GAAIk/G,KASJ,OARatgH,UAAToB,GAA+B,SAATA,GACxBpH,EAAK6G,WAAWy/G,EAAet1G,EAAK9N,SAAS,GAC7CojH,EAAczoF,EAAI7sB,EAAK6sB,EACvByoF,EAAcjlG,EAAIrQ,EAAKqQ,EACvBilG,EAAc6D,oBAAsBn5G,EAAKwqF,MAAMz1F,QAE/C/F,EAAK6G,WAAWy/G,EAAet1G,EAAK9N,SAAS,GAExCojH,MAIJ0D,IAGT/qH,GAAAA,WAAkB+qH,GAId,SAAS9qH,EAAQD,EAASM,GAY9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAEhH,QAAS4kG,GAA2B5wD,EAAM/6C,GAAQ,IAAK+6C,EAAQ,KAAM,IAAI6wD,gBAAe,4DAAgE,QAAO5rG,GAAyB,gBAATA,IAAqC,kBAATA,GAA8B+6C,EAAP/6C,EAElO,QAAS6rG,GAAUC,EAAUC,GAAc,GAA0B,kBAAfA,IAA4C,OAAfA,EAAuB,KAAM,IAAIhlG,WAAU,iEAAoEglG,GAAeD,GAASj5F,UAAY7L,OAAOgJ,OAAO+7F,GAAcA,EAAWl5F,WAAa9O,aAAec,MAAOinG,EAAU9mD,YAAY,EAAOE,UAAU,EAAMD,cAAc,KAAe8mD,IAAY/kG,OAAOglG,eAAiBhlG,OAAOglG,eAAeF,EAAUC,GAAcD,EAASG,UAAYF,GAdje/kG,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIi/F,GAASnkG,EAAoB,IAE7B6qH,EAASzrE,EAAuB+kD,GAchC2mB,EAAU,SAAU5mB,GAGtB,QAAS4mB,GAAQnnH,EAASs8C,EAAM6oD,EAAWtZ,EAAW3+E,GACpDi0C,EAAgBhlD,KAAMgrH,EAEtB,IAAI7nE,GAAQ+oD,EAA2BlsG,KAAMuH,OAAOslG,eAAeme,GAASzqH,KAAKP,KAAM6D,EAASs8C,EAAM6oD,EAAWtZ,EAAW3+E,GAK5H,OAHAoyC,GAAMs9C,WAAY,EAClBt9C,EAAM6lE,kBACN7lE,EAAM8lE,kBACC9lE,EAGT,MAbAipD,GAAU4e,EAAS5mB,GAaZ4mB,GACPD,EAAAA,WAEFnrH,GAAAA,WAAkBorH,GAId,SAASnrH,EAAQD,EAASM,GAU9B,QAAS8kD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCANhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,KAI1gB,oBAAXh6C,UACTA,OAAO+/G,sBAAwB//G,OAAO+/G,uBAAyB//G,OAAOggH,0BAA4BhgH,OAAOigH,6BAA+BjgH,OAAOkgH,wBAGjJ,IAAIzqH,GAAOT,EAAoB,GAE3BmrH,EAAiB,WACnB,QAASA,GAAelrE,EAAM9U,GAC5B2Z,EAAgBhlD,KAAMqrH,GAEtBrrH,KAAKmgD,KAAOA,EACZngD,KAAKqrC,OAASA,EAEdrrC,KAAKsrH,iBAAkB,EACvBtrH,KAAK29G,YAAch3G,OACnB3G,KAAKu9G,iBAAkB,EACvBv9G,KAAKurH,iBAAkB,EACvBvrH,KAAKwrH,eAAiB,EACtBxrH,KAAKimD,WAAat/C,OAClB3G,KAAKyrH,aAAc,EAEnBzrH,KAAKmwE,UAAW,EAChBnwE,KAAK6D,WACL7D,KAAK2/C,gBACH+rE,iBAAiB,EACjBC,iBAAiB,GAEnBhrH,EAAKoG,OAAO/G,KAAK6D,QAAS7D,KAAK2/C,gBAE/B3/C,KAAK4rH,0BACL5rH,KAAKm9F,qBAoUP,MAjUA/3C,GAAaimE,IACXvhH,IAAK,qBACL1E,MAAO,WACL,GAAI+9C,GAAQnjD,IAEZA,MAAKmgD,KAAKE,QAAQrgB,GAAG,YAAa,WAChCmjB,EAAMgtB,UAAW,IAEnBnwE,KAAKmgD,KAAKE,QAAQrgB,GAAG,UAAW,WAC9B,MAAOmjB,GAAMgtB,UAAW,IAE1BnwE,KAAKmgD,KAAKE,QAAQrgB,GAAG,eAAgB,WACnC,MAAOmjB,GAAM0oE,iBAEf7rH,KAAKmgD,KAAKE,QAAQrgB,GAAG,UAAW,WAC1BmjB,EAAMooE,mBAAoB,GAC5BpoE,EAAMlB,YAGVjiD,KAAKmgD,KAAKE,QAAQrgB,GAAG,eAAgB,WACnCmjB,EAAMsoE,aAAc,IAEtBzrH,KAAKmgD,KAAKE,QAAQrgB,GAAG,eAAgB,WACnCmjB,EAAMsoE,aAAc,EAAKtoE,EAAMmoE,iBAAkB,IAEnDtrH,KAAKmgD,KAAKE,QAAQrgB,GAAG,iBAAkBhgC,KAAK8rH,eAAexrE,KAAKtgD,OAChEA,KAAKmgD,KAAKE,QAAQrgB,GAAG,kBAAmB,WACtCmjB,EAAMqoE,gBAAkB,EACxBroE,EAAMooE,iBAAkB,EACxBpoE,EAAM4oE,oBAER/rH,KAAKmgD,KAAKE,QAAQrgB,GAAG,iBAAkB,WACrCmjB,EAAMqoE,gBAAkB,EACxBroE,EAAMooE,gBAAkBpoE,EAAMqoE,eAAiB,EAC/CroE,EAAMw6D,YAAch3G,SAEtB3G,KAAKmgD,KAAKE,QAAQrgB,GAAG,UAAW,WAC9BmjB,EAAMqoE,eAAiB,EACvBroE,EAAMsoE,aAAc,EACpBtoE,EAAMooE,iBAAkB,EACpBpoE,EAAMo6D,mBAAoB,EAC5Br5E,aAAaif,EAAMw6D,aAEnBqO,qBAAqB7oE,EAAMw6D,aAE7Bx6D,EAAMhD,KAAKE,QAAQlgB,WAIvBr2B,IAAK,aACL1E,MAAO,SAAoBvB,GACzB,GAAgB8C,SAAZ9C,EAAuB,CACzB,GAAIuM,IAAU,kBAAmB,kBACjCzP,GAAK0G,oBAAoB+I,EAAQpQ,KAAK6D,QAASA,OAInDiG,IAAK,kBACL1E,MAAO,WACDpF,KAAKurH,mBAAoB,GACF5kH,SAArB3G,KAAK29G,cACH39G,KAAKu9G,mBAAoB,EAC3Bv9G,KAAK29G,YAAczyG,OAAOb,WAAWrK,KAAKisH,YAAY3rE,KAAKtgD,MAAOA,KAAKs9G,oBAErEt9G,KAAK29G,YAAczyG,OAAO+/G,sBAAsBjrH,KAAKisH,YAAY3rE,KAAKtgD,WAMhF8J,IAAK,cACL1E,MAAO,WACDpF,KAAKurH,mBAAoB,IAE3BvrH,KAAK29G,YAAch3G,OAEf3G,KAAKu9G,mBAAoB,GAE3Bv9G,KAAK+rH,kBAGP/rH,KAAKiiD,UAEDjiD,KAAKu9G,mBAAoB,GAE3Bv9G,KAAK+rH,sBAWXjiH,IAAK,SACL1E,MAAO,WACLpF,KAAKmgD,KAAKE,QAAQ5H,KAAK,WACvBz4C,KAAKiiD,aAUPn4C,IAAK,iBACL1E,MAAO,WACL,GAAIwiD,GAAS5nD,IAETA,MAAKsrH,mBAAoB,GAAQtrH,KAAKurH,mBAAoB,GAASvrH,KAAKyrH,eAAgB,IAC1FzrH,KAAKsrH,iBAAkB,EACnBtrH,KAAKu9G,mBAAoB,EAC3BryG,OAAOb,WAAW,WAChBu9C,EAAO3F,SAAQ,IACd,GAEH/2C,OAAO+/G,sBAAsB,WAC3BrjE,EAAO3F,SAAQ,SAMvBn4C,IAAK,UACL1E,MAAO,WACL,GAAI8tE,GAASzsE,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAErF,IAAIzG,KAAKyrH,eAAgB,EAAM,CAC7BzrH,KAAKmgD,KAAKE,QAAQ5H,KAAK,cAEvBz4C,KAAKsrH,iBAAkB,CACvB,IAAIn5E,GAAMnyC,KAAKqrC,OAAOD,MAAMC,OAAO+G,WAAW,KAGP,KAAnCpyC,KAAKqrC,OAAOD,MAAMC,OAAOjM,OAAmD,IAApCp/B,KAAKqrC,OAAOD,MAAMC,OAAOhM,QACnEr/B,KAAKqrC,OAAO+E,UAGdpwC,KAAKimD,YAAc/6C,OAAO2qD,kBAAoB,IAAM1jB,EAAI2jB,8BAAgC3jB,EAAI4jB,2BAA6B5jB,EAAI6jB,0BAA4B7jB,EAAI8jB,yBAA2B9jB,EAAI+jB,wBAA0B,GAEtN/jB,EAAIgkB,aAAan2D,KAAKimD,WAAY,EAAG,EAAGjmD,KAAKimD,WAAY,EAAG,EAG5D,IAAIphC,GAAI7kB,KAAKqrC,OAAOD,MAAMC,OAAOC,YAC7Bz9B,EAAI7N,KAAKqrC,OAAOD,MAAMC,OAAOiF,YAIjC,IAHA6B,EAAIE,UAAU,EAAG,EAAGxtB,EAAGhX,GAGe,IAAlC7N,KAAKqrC,OAAOD,MAAME,YACpB,MAIF6G,GAAIi7D,OACJj7D,EAAIoiE,UAAUv0G,KAAKmgD,KAAK+8C,KAAK3zD,YAAY/K,EAAGx+B,KAAKmgD,KAAK+8C,KAAK3zD,YAAYvnB,GACvEmwB,EAAI9sC,MAAMrF,KAAKmgD,KAAK+8C,KAAK73F,MAAOrF,KAAKmgD,KAAK+8C,KAAK73F,OAE/C8sC,EAAIa,YACJhzC,KAAKmgD,KAAKE,QAAQ5H,KAAK,gBAAiBtG,GACxCA,EAAIkB,YAEA6/B,KAAW,IACTlzE,KAAKmwE,YAAa,GAASnwE,KAAKmwE,YAAa,GAAQnwE,KAAK6D,QAAQ6nH,mBAAoB,IACxF1rH,KAAKksH,WAAW/5E,IAIhBnyC,KAAKmwE,YAAa,GAASnwE,KAAKmwE,YAAa,GAAQnwE,KAAK6D,QAAQ8nH,mBAAoB,IACxF3rH,KAAKmsH,WAAWh6E,EAAK+gC,GAGvB/gC,EAAIa,YACJhzC,KAAKmgD,KAAKE,QAAQ5H,KAAK,eAAgBtG,GACvCA,EAAIkB,YAGJlB,EAAIo7D,UACAr6B,KAAW,GACb/gC,EAAIE,UAAU,EAAG,EAAGxtB,EAAGhX,OAc7B/D,IAAK,eACL1E,MAAO,WACL,GAAI+sC,GAAMnyC,KAAKqrC,OAAOD,MAAMC,OAAO+G,WAAW,KACtBzrC,UAApB3G,KAAKimD,aACPjmD,KAAKimD,YAAc/6C,OAAO2qD,kBAAoB,IAAM1jB,EAAI2jB,8BAAgC3jB,EAAI4jB,2BAA6B5jB,EAAI6jB,0BAA4B7jB,EAAI8jB,yBAA2B9jB,EAAI+jB,wBAA0B,IAExN/jB,EAAIgkB,aAAan2D,KAAKimD,WAAY,EAAG,EAAGjmD,KAAKimD,WAAY,EAAG,GAC5D9T,EAAIi7D,OACJj7D,EAAIoiE,UAAUv0G,KAAKmgD,KAAK+8C,KAAK3zD,YAAY/K,EAAGx+B,KAAKmgD,KAAK+8C,KAAK3zD,YAAYvnB,GACvEmwB,EAAI9sC,MAAMrF,KAAKmgD,KAAK+8C,KAAK73F,MAAOrF,KAAKmgD,KAAK+8C,KAAK73F,MAE/C,IAAI42F,GAAQj8F,KAAKmgD,KAAK87C,MAClBz/D,EAAO,MAGX,KAAK,GAAIqjE,KAAU5D,GACbA,EAAM71F,eAAey5F,KACvBrjE,EAAOy/D,EAAM4D,GACbrjE,EAAKqtE,OAAO13D,GACZ3V,EAAKotE,kBAAkBz3D,EAAK3V,EAAK4rB,UAKrCjW,GAAIo7D,aAYNzjG,IAAK,aACL1E,MAAO,SAAoB+sC,GAgBzB,IAAK,GAfDi6E,GAAa3lH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAErFw1F,EAAQj8F,KAAKmgD,KAAK87C,MAClBC,EAAcl8F,KAAKmgD,KAAK+7C,YACxB1/D,EAAO,OACP4rB,KACAjjB,EAAS,GACTknF,EAAUrsH,KAAKqrC,OAAOk1D,aAAc/hE,GAAI2G,EAAQnjB,GAAImjB,IACpDmnF,EAActsH,KAAKqrC,OAAOk1D,aAC5B/hE,EAAGx+B,KAAKqrC,OAAOD,MAAMC,OAAOC,YAAcnG,EAC1CnjB,EAAGhiB,KAAKqrC,OAAOD,MAAMC,OAAOiF,aAAenL,IAEzConF,GAAiBvjH,IAAKqjH,EAAQrqG,EAAGlZ,KAAMujH,EAAQ7tF,EAAG0Q,OAAQo9E,EAAYtqG,EAAGywB,MAAO65E,EAAY9tF,GAGvF33B,EAAI,EAAGA,EAAIq1F,EAAYx1F,OAAQG,IACtC21B,EAAOy/D,EAAMC,EAAYr1F,IAErB21B,EAAKgwF,aACPpkE,EAASzgD,KAAKu0F,EAAYr1F,IAEtBulH,KAAe,EACjB5vF,EAAK8tB,KAAKnY,GACD3V,EAAKiwF,6BAA6BF,MAAkB,EAC7D/vF,EAAK8tB,KAAKnY,GAEV3V,EAAKotE,kBAAkBz3D,EAAK3V,EAAK4rB,SAMvC,KAAK,GAAI1yC,GAAK,EAAGA,EAAK0yC,EAAS1hD,OAAQgP,IACrC8mB,EAAOy/D,EAAM7zC,EAAS1yC,IACtB8mB,EAAK8tB,KAAKnY,MAYdroC,IAAK,aACL1E,MAAO,SAAoB+sC,GAKzB,IAAK,GAJDgqD,GAAQn8F,KAAKmgD,KAAKg8C,MAClBC,EAAcp8F,KAAKmgD,KAAKi8C,YACxBmG,EAAO,OAEF17F,EAAI,EAAGA,EAAIu1F,EAAY11F,OAAQG,IACtC07F,EAAOpG,EAAMC,EAAYv1F,IACrB07F,EAAK4Q,aAAc,GACrB5Q,EAAKj4C,KAAKnY,MAYhBroC,IAAK,0BACL1E,MAAO,WACL,GAAsB,mBAAX8F,QAAwB,CACjC,GAAIwhH,GAAc/hH,UAAUC,UAAUgO,aACtC5Y,MAAKu9G,iBAAkB,EACgB,IAAnCmP,EAAYhlH,QAAQ,YAEtB1H,KAAKu9G,iBAAkB,EACmB,IAAjCmP,EAAYhlH,QAAQ,WAEzBglH,EAAYhlH,QAAQ,WAAa,KACnC1H,KAAKu9G,iBAAkB,OAI3Bv9G,MAAKu9G,iBAAkB,MAKtB8N,IAGTzrH,GAAAA,WAAkByrH,GAId,SAASxrH,EAAQD,EAASM,GAU9B,QAAS8kD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCANhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI5hBlhD,EAAS9D,EAAoB,IAC7BkrD,EAAalrD,EAAoB,IAEjCS,EAAOT,EAAoB,GAU3BysH,EAAS,WACX,QAASA,GAAOxsE,GACd6E,EAAgBhlD,KAAM2sH,GAEtB3sH,KAAKmgD,KAAOA,EACZngD,KAAKimD,WAAa,EAClBjmD,KAAK4sH,YAAcjmH,OACnB3G,KAAK6sH,eAAiB7sH,KAAKk4E,UAAU53B,KAAKtgD,MAC1CA,KAAK8sH,eACL9sH,KAAKomD,aAAc,EAEnBpmD,KAAK6D,WACL7D,KAAK2/C,gBACHC,YAAY,EACZvgB,OAAQ,OACRD,MAAO,QAETz+B,EAAKoG,OAAO/G,KAAK6D,QAAS7D,KAAK2/C,gBAE/B3/C,KAAKm9F,qBA6ZP,MA1ZA/3C,GAAaunE,IACX7iH,IAAK,qBACL1E,MAAO,WACL,GAAI+9C,GAAQnjD,IAGZA,MAAKmgD,KAAKE,QAAQhF,KAAK,SAAU,SAAUh3C,GACvB,IAAdA,EAAI+6B,QACN+jB,EAAMhD,KAAK+8C,KAAK3zD,YAAY/K,EAAgB,GAAZn6B,EAAI+6B,OAEnB,IAAf/6B,EAAIg7B,SACN8jB,EAAMhD,KAAK+8C,KAAK3zD,YAAYvnB,EAAiB,GAAb3d,EAAIg7B,UAGxCr/B,KAAKmgD,KAAKE,QAAQrgB,GAAG,UAAWhgC,KAAKowC,QAAQkQ,KAAKtgD,OAClDA,KAAKmgD,KAAKE,QAAQrgB,GAAG,UAAW,WAC9BmjB,EAAM4pE,YAAYhtF,UAClBojB,EAAM2I,OAAO/rB,UACbojB,EAAM6pE,gBAIVljH,IAAK,aACL1E,MAAO,SAAoBvB,GACzB,GAAI+jD,GAAS5nD,IAEb,IAAgB2G,SAAZ9C,EAAuB,CACzB,GAAIuM,IAAU,QAAS,SAAU,aACjCzP,GAAK0G,oBAAoB+I,EAAQpQ,KAAK6D,QAASA,GAG7C7D,KAAK6D,QAAQ+7C,cAAe,IAE9B5/C,KAAKgtH,WACLhtH,KAAK4sH,YAAct0C,YAAY,WAC7B,GAAItW,GAAUpa,EAAOxX,SACjB4xB,MAAY,GACdpa,EAAOzH,KAAKE,QAAQ5H,KAAK,mBAE1B,KACHz4C,KAAK6sH,eAAiB7sH,KAAKk4E,UAAU53B,KAAKtgD,MAC1CW,EAAK2J,iBAAiBY,OAAQ,SAAUlL,KAAK6sH,oBAIjD/iH,IAAK,WACL1E,MAAO,WAEoBuB,SAArB3G,KAAK4sH,aACP/uE,cAAc79C,KAAK4sH,aAErBjsH,EAAKmK,oBAAoBI,OAAQ,SAAUlL,KAAK6sH,gBAChD7sH,KAAK6sH,eAAiBlmH,UAGxBmD,IAAK,YACL1E,MAAO,WACLpF,KAAKowC,UACLpwC,KAAKmgD,KAAKE,QAAQ5H,KAAK,cASzB3uC,IAAK,kBACL1E,MAAO,WACL,GAAI6gD,GAAax/C,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBzG,KAAKimD,WAAax/C,UAAU,EAE/FzG,MAAKomD,eAAgB,IACvBpmD,KAAK8sH,YAAYG,cAAgBjtH,KAAKorC,MAAMC,OAAOjM,MAAQ6mB,EAC3DjmD,KAAK8sH,YAAYI,eAAiBltH,KAAKorC,MAAMC,OAAOhM,OAAS4mB,EAC7DjmD,KAAK8sH,YAAYznH,MAAQrF,KAAKmgD,KAAK+8C,KAAK73F,MACxCrF,KAAK8sH,YAAYx9E,SAAWtvC,KAAKugG,aAC/B/hE,EAAG,GAAMx+B,KAAKorC,MAAMC,OAAOjM,MAAQ6mB,EACnCjkC,EAAG,GAAMhiB,KAAKorC,MAAMC,OAAOhM,OAAS4mB,QAW1Cn8C,IAAK,kBACL1E,MAAO,WACL,GAA+BuB,SAA3B3G,KAAK8sH,YAAYznH,OAAyD,IAAlCrF,KAAKorC,MAAMC,OAAOC,aAAwD,IAAnCtrC,KAAKorC,MAAMC,OAAOiF,cAA0C,IAApBtwC,KAAKimD,YAAoBjmD,KAAK8sH,YAAYG,cAAgB,EAAG,CAEtL,GAAIE,GAAantH,KAAKorC,MAAMC,OAAOjM,MAAQp/B,KAAKimD,WAAajmD,KAAK8sH,YAAYG,cAC1EG,EAAcptH,KAAKorC,MAAMC,OAAOhM,OAASr/B,KAAKimD,WAAajmD,KAAK8sH,YAAYI,eAC5EG,EAAWrtH,KAAK8sH,YAAYznH,KAEd,IAAd8nH,GAAkC,GAAfC,EACrBC,EAAoC,GAAzBrtH,KAAK8sH,YAAYznH,OAAe8nH,EAAaC,GACjC,GAAdD,EACTE,EAAWrtH,KAAK8sH,YAAYznH,MAAQ8nH,EACZ,GAAfC,IACTC,EAAWrtH,KAAK8sH,YAAYznH,MAAQ+nH,GAGtCptH,KAAKmgD,KAAK+8C,KAAK73F,MAAQgoH,CAEvB,IAAIC,GAAoBttH,KAAKugG,aAC3B/hE,EAAG,GAAMx+B,KAAKorC,MAAMC,OAAOC,YAC3BtpB,EAAG,GAAMhiB,KAAKorC,MAAMC,OAAOiF,eAGzBi9E,GACF/uF,EAAG8uF,EAAkB9uF,EAAIx+B,KAAK8sH,YAAYx9E,SAAS9Q,EACnDxc,EAAGsrG,EAAkBtrG,EAAIhiB,KAAK8sH,YAAYx9E,SAASttB,EAErDhiB,MAAKmgD,KAAK+8C,KAAK3zD,YAAY/K,GAAK+uF,EAAmB/uF,EAAIx+B,KAAKmgD,KAAK+8C,KAAK73F,MACtErF,KAAKmgD,KAAK+8C,KAAK3zD,YAAYvnB,GAAKurG,EAAmBvrG,EAAIhiB,KAAKmgD,KAAK+8C,KAAK73F,UAI1EyE,IAAK,gBACL1E,MAAO,SAAuBA,GAC5B,GAAqB,gBAAVA,GACT,MAAOA,GAAQ,IACV,IAAqB,gBAAVA,GAAoB,CACpC,GAA2B,KAAvBA,EAAMsC,QAAQ,MAAuC,KAAxBtC,EAAMsC,QAAQ,MAC7C,MAAOtC,EACF,IAA2B,KAAvBA,EAAMsC,QAAQ,KACvB,MAAOtC,GAAQ,KAGnB,KAAM,IAAIgC,OAAM,wDAA0DhC,MAQ5E0E,IAAK,UACL1E,MAAO,WAEL,KAAOpF,KAAKmgD,KAAKnb,UAAUngC,iBACzB7E,KAAKmgD,KAAKnb,UAAUjgC,YAAY/E,KAAKmgD,KAAKnb,UAAUlgC,WAetD,IAZA9E,KAAKorC,MAAQpN,SAASM,cAAc,OACpCt+B,KAAKorC,MAAMliC,UAAY,cACvBlJ,KAAKorC,MAAMn8B,MAAMqgC,SAAW,WAC5BtvC,KAAKorC,MAAMn8B,MAAMgF,SAAW,SAC5BjU,KAAKorC,MAAMoiF,SAAW,IAItBxtH,KAAKorC,MAAMC,OAASrN,SAASM,cAAc,UAC3Ct+B,KAAKorC,MAAMC,OAAOp8B,MAAMqgC,SAAW,WACnCtvC,KAAKorC,MAAMlN,YAAYl+B,KAAKorC,MAAMC,QAE7BrrC,KAAKorC,MAAMC,OAAO+G,WAOhB,CACL,GAAID,GAAMnyC,KAAKorC,MAAMC,OAAO+G,WAAW,KACvCpyC,MAAKimD,YAAc/6C,OAAO2qD,kBAAoB,IAAM1jB,EAAI2jB,8BAAgC3jB,EAAI4jB,2BAA6B5jB,EAAI6jB,0BAA4B7jB,EAAI8jB,yBAA2B9jB,EAAI+jB,wBAA0B,GAEtNl2D,KAAKorC,MAAMC,OAAO+G,WAAW,MAAM+jB,aAAan2D,KAAKimD,WAAY,EAAG,EAAGjmD,KAAKimD,WAAY,EAAG,OAX1D,CACjC,GAAI1W,GAAWvR,SAASM,cAAc,MACtCiR,GAAStgC,MAAMrC,MAAQ,MACvB2iC,EAAStgC,MAAMugC,WAAa,OAC5BD,EAAStgC,MAAMwgC,QAAU,OACzBF,EAASG,UAAY,mDACrB1vC,KAAKorC,MAAMC,OAAOnN,YAAYqR,GAShCvvC,KAAKmgD,KAAKnb,UAAU9G,YAAYl+B,KAAKorC,OAErCprC,KAAKmgD,KAAK+8C,KAAK73F,MAAQ,EACvBrF,KAAKmgD,KAAK+8C,KAAK3zD,aAAgB/K,EAAG,GAAMx+B,KAAKorC,MAAMC,OAAOC,YAAatpB,EAAG,GAAMhiB,KAAKorC,MAAMC,OAAOiF,cAElGtwC,KAAK+rD,iBASPjiD,IAAK,cACL1E,MAAO,WACL,GAAIyjD,GAAS7oD,IAEO2G,UAAhB3G,KAAK8rD,QACP9rD,KAAK8rD,OAAO/rB,UAEd//B,KAAKy3D,QACLz3D,KAAK03D,SAGL13D,KAAK8rD,OAAS,GAAI9nD,GAAOhE,KAAKorC,MAAMC,QACpCrrC,KAAK8rD,OAAOl0B,IAAI,SAASlf,KAAMi/C,QAAQ,IAEvC33D,KAAK8rD,OAAOl0B,IAAI,OAAOlf,KAAMgc,UAAW,EAAGhJ,UAAW1nB,EAAOyiE,gBAE7Drb,EAAWwM,QAAQ53D,KAAK8rD,OAAQ,SAAU7gD,GACxC49C,EAAO1I,KAAKk8C,eAAezkC,QAAQ3sD,KAErCjL,KAAK8rD,OAAO9rB,GAAG,MAAO,SAAU/0B,GAC9B49C,EAAO1I,KAAKk8C,eAAeC,MAAMrxF,KAEnCjL,KAAK8rD,OAAO9rB,GAAG,YAAa,SAAU/0B,GACpC49C,EAAO1I,KAAKk8C,eAAeE,YAAYtxF,KAEzCjL,KAAK8rD,OAAO9rB,GAAG,QAAS,SAAU/0B,GAChC49C,EAAO1I,KAAKk8C,eAAeG,OAAOvxF,KAEpCjL,KAAK8rD,OAAO9rB,GAAG,WAAY,SAAU/0B,GACnC49C,EAAO1I,KAAKk8C,eAAeI,YAAYxxF,KAEzCjL,KAAK8rD,OAAO9rB,GAAG,UAAW,SAAU/0B,GAClC49C,EAAO1I,KAAKk8C,eAAeK,OAAOzxF,KAEpCjL,KAAK8rD,OAAO9rB,GAAG,SAAU,SAAU/0B,GACjC49C,EAAO1I,KAAKk8C,eAAeM,UAAU1xF,KAEvCjL,KAAK8rD,OAAO9rB,GAAG,QAAS,SAAU/0B,GAChC49C,EAAO1I,KAAKk8C,eAAeO,QAAQ3xF,KAIrCjL,KAAKorC,MAAMC,OAAO/gC,iBAAiB,aAAc,SAAUW,GACzD49C,EAAO1I,KAAKk8C,eAAe5nB,aAAaxpE,KAE1CjL,KAAKorC,MAAMC,OAAO/gC,iBAAiB,iBAAkB,SAAUW,GAC7D49C,EAAO1I,KAAKk8C,eAAe5nB,aAAaxpE,KAG1CjL,KAAKorC,MAAMC,OAAO/gC,iBAAiB,YAAa,SAAUW,GACxD49C,EAAO1I,KAAKk8C,eAAeQ,YAAY5xF,KAEzCjL,KAAKorC,MAAMC,OAAO/gC,iBAAiB,cAAe,SAAUW,GAC1D49C,EAAO1I,KAAKk8C,eAAeS,UAAU7xF,KAGvCjL,KAAK+sH,YAAc,GAAI/oH,GAAOhE,KAAKorC,OACnCggB,EAAWihB,UAAUrsE,KAAK+sH,YAAa,SAAU9hH,GAC/C49C,EAAO1I,KAAKk8C,eAAehwB,UAAUphE,QAazCnB,IAAK,UACL1E,MAAO,WACL,GAAIg6B,GAAQ34B,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBzG,KAAK6D,QAAQu7B,MAAQ34B,UAAU,GAC7F44B,EAAS54B,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBzG,KAAK6D,QAAQw7B,OAAS54B,UAAU,EAEnG24B,GAAQp/B,KAAKytH,cAAcruF,GAC3BC,EAASr/B,KAAKytH,cAAcpuF,EAE5B,IAAIquF,IAAY,EACZC,EAAW3tH,KAAKorC,MAAMC,OAAOjM,MAC7BwuF,EAAY5tH,KAAKorC,MAAMC,OAAOhM,OAG9B8S,EAAMnyC,KAAKorC,MAAMC,OAAO+G,WAAW,MACnCy7E,EAAgB7tH,KAAKimD,UAoDzB,OAnDAjmD,MAAKimD,YAAc/6C,OAAO2qD,kBAAoB,IAAM1jB,EAAI2jB,8BAAgC3jB,EAAI4jB,2BAA6B5jB,EAAI6jB,0BAA4B7jB,EAAI8jB,yBAA2B9jB,EAAI+jB,wBAA0B,GAElN92B,GAASp/B,KAAK6D,QAAQu7B,OAASC,GAAUr/B,KAAK6D,QAAQw7B,QAAUr/B,KAAKorC,MAAMn8B,MAAMmwB,OAASA,GAASp/B,KAAKorC,MAAMn8B,MAAMowB,QAAUA,GAChIr/B,KAAK8tH,gBAAgBD,GAErB7tH,KAAKorC,MAAMn8B,MAAMmwB,MAAQA,EACzBp/B,KAAKorC,MAAMn8B,MAAMowB,OAASA,EAE1Br/B,KAAKorC,MAAMC,OAAOp8B,MAAMmwB,MAAQ,OAChCp/B,KAAKorC,MAAMC,OAAOp8B,MAAMowB,OAAS,OAEjCr/B,KAAKorC,MAAMC,OAAOjM,MAAQ95B,KAAKgkB,MAAMtpB,KAAKorC,MAAMC,OAAOC,YAActrC,KAAKimD,YAC1EjmD,KAAKorC,MAAMC,OAAOhM,OAAS/5B,KAAKgkB,MAAMtpB,KAAKorC,MAAMC,OAAOiF,aAAetwC,KAAKimD,YAE5EjmD,KAAK6D,QAAQu7B,MAAQA,EACrBp/B,KAAK6D,QAAQw7B,OAASA,EAEtBquF,GAAY,IAMR1tH,KAAKorC,MAAMC,OAAOjM,OAAS95B,KAAKgkB,MAAMtpB,KAAKorC,MAAMC,OAAOC,YAActrC,KAAKimD,aAAejmD,KAAKorC,MAAMC,OAAOhM,QAAU/5B,KAAKgkB,MAAMtpB,KAAKorC,MAAMC,OAAOiF,aAAetwC,KAAKimD,aACzKjmD,KAAK8tH,gBAAgBD,GAGnB7tH,KAAKorC,MAAMC,OAAOjM,OAAS95B,KAAKgkB,MAAMtpB,KAAKorC,MAAMC,OAAOC,YAActrC,KAAKimD,cAC7EjmD,KAAKorC,MAAMC,OAAOjM,MAAQ95B,KAAKgkB,MAAMtpB,KAAKorC,MAAMC,OAAOC,YAActrC,KAAKimD,YAC1EynE,GAAY,GAEV1tH,KAAKorC,MAAMC,OAAOhM,QAAU/5B,KAAKgkB,MAAMtpB,KAAKorC,MAAMC,OAAOiF,aAAetwC,KAAKimD,cAC/EjmD,KAAKorC,MAAMC,OAAOhM,OAAS/5B,KAAKgkB,MAAMtpB,KAAKorC,MAAMC,OAAOiF,aAAetwC,KAAKimD,YAC5EynE,GAAY,IAIZA,KAAc,IAChB1tH,KAAKmgD,KAAKE,QAAQ5H,KAAK,UACrBrZ,MAAO95B,KAAKgkB,MAAMtpB,KAAKorC,MAAMC,OAAOjM,MAAQp/B,KAAKimD,YACjD5mB,OAAQ/5B,KAAKgkB,MAAMtpB,KAAKorC,MAAMC,OAAOhM,OAASr/B,KAAKimD,YACnD0nE,SAAUroH,KAAKgkB,MAAMqkG,EAAW3tH,KAAKimD,YACrC2nE,UAAWtoH,KAAKgkB,MAAMskG,EAAY5tH,KAAKimD,cAIzCjmD,KAAK+tH,mBAIP/tH,KAAKomD,aAAc,EACZsnE,KAGT5jH,IAAK,uBAUL1E,MAAO,SAA8Bo5B,GACnC,OAAQA,EAAIx+B,KAAKmgD,KAAK+8C,KAAK3zD,YAAY/K,GAAKx+B,KAAKmgD,KAAK+8C,KAAK73F,SAY7DyE,IAAK,uBACL1E,MAAO,SAA8Bo5B,GACnC,MAAOA,GAAIx+B,KAAKmgD,KAAK+8C,KAAK73F,MAAQrF,KAAKmgD,KAAK+8C,KAAK3zD,YAAY/K,KAY/D10B,IAAK,uBACL1E,MAAO,SAA8B4c,GACnC,OAAQA,EAAIhiB,KAAKmgD,KAAK+8C,KAAK3zD,YAAYvnB,GAAKhiB,KAAKmgD,KAAK+8C,KAAK73F,SAY7DyE,IAAK,uBACL1E,MAAO,SAA8B4c,GACnC,MAAOA,GAAIhiB,KAAKmgD,KAAK+8C,KAAK73F,MAAQrF,KAAKmgD,KAAK+8C,KAAK3zD,YAAYvnB,KAW/DlY,IAAK,cACL1E,MAAO,SAAqB+xB,GAC1B,OAASqH,EAAGx+B,KAAKguH,qBAAqB72F,EAAIqH,GAAIxc,EAAGhiB,KAAKiuH,qBAAqB92F,EAAInV,OAWjFlY,IAAK,cACL1E,MAAO,SAAqB+xB,GAC1B,OAASqH,EAAGx+B,KAAKkuH,qBAAqB/2F,EAAIqH,GAAIxc,EAAGhiB,KAAKmuH,qBAAqBh3F,EAAInV,QAI5E2qG,IAGT/sH,GAAAA,WAAkB+sH,GAId,SAAS9sH,EAAQD,EAASM,GAc9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAZhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBghE,EAAehmH,EAAoB,KAEnCimH,EAAgB7mE,EAAuB4mE,GAMvCvlH,EAAOT,EAAoB,GAE3BkuH,EAAO,WACT,QAASA,GAAKjuE,EAAM9U,GAClB,GAAI8X,GAAQnjD,IAEZglD,GAAgBhlD,KAAMouH,GAEtBpuH,KAAKmgD,KAAOA,EACZngD,KAAKqrC,OAASA,EAEdrrC,KAAKquH,eAAiB,EAAIruH,KAAKsuH,kBAC/BtuH,KAAKuuH,wBAA0B,iBAC/BvuH,KAAKwuH,WAAa,EAClBxuH,KAAKyuH,YAAc,EACnBzuH,KAAK0uH,YAAc,EACnB1uH,KAAK2uH,kBAAoB,EACzB3uH,KAAK4uH,kBAAoB,EACzB5uH,KAAK6uH,eAAiBloH,OACtB3G,KAAK8uH,mBAAqBnoH,OAC1B3G,KAAK+uH,UAAY,EAEjB/uH,KAAK6/G,aAAel5G,OAEpB3G,KAAKmgD,KAAKE,QAAQrgB,GAAG,MAAOhgC,KAAK8hD,IAAIxB,KAAKtgD,OAC1CA,KAAKmgD,KAAKE,QAAQrgB,GAAG,oBAAqB,WACxCmjB,EAAMhD,KAAKE,QAAQ5H,KAAK,oBAE1Bz4C,KAAKmgD,KAAKE,QAAQrgB,GAAG,aAAchgC,KAAK2iG,YAAYriD,KAAKtgD,OAyS3D,MAtSAolD,GAAagpE,IACXtkH,IAAK,aACL1E,MAAO,WACL,GAAIvB,GAAU4C,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,EAEnFzG,MAAK6D,QAAUA,KAUjBiG,IAAK,MACL1E,MAAO,WACL,GAAIvB,GAAU4C,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAqBw1F,UAAcx1F,UAAU,GAC1FuoH,EAAcvoH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEtFy6C,EAAQ,OACR+tE,EAAY,MAKhB,IAJsBtoH,SAAlB9C,EAAQo4F,OAAgD,IAAzBp4F,EAAQo4F,MAAMv1F,SAC/C7C,EAAQo4F,MAAQj8F,KAAKmgD,KAAK+7C,aAGxB8yB,KAAgB,EAAM,CAExB,GAAIE,GAAkB,CACtB,KAAK,GAAIrvB,KAAU7/F,MAAKmgD,KAAK87C,MAC3B,GAAIj8F,KAAKmgD,KAAK87C,MAAM71F,eAAey5F,GAAS,CAC1C,GAAIrjE,GAAOx8B,KAAKmgD,KAAK87C,MAAM4D,EACvBrjE,GAAK2sE,sBAAuB,IAC9B+lB,GAAmB,GAIzB,GAAIA,EAAkB,GAAMlvH,KAAKmgD,KAAK+7C,YAAYx1F,OAEhD,WADA1G,MAAK8hD,IAAIj+C,GAAS,EAIpBq9C,GAAQilE,EAAAA,WAAsBz1C,SAAS1wE,KAAKmgD,KAAK87C,MAAOp4F,EAAQo4F,MAEhE,IAAIkzB,GAAgBnvH,KAAKmgD,KAAK+7C,YAAYx1F,MAC1CuoH,GAAY,QAAUE,EAAgB,QAAU,QAGhD,IAAI5rE,GAASj+C,KAAKL,IAAIjF,KAAKqrC,OAAOD,MAAMC,OAAOC,YAAc,IAAKtrC,KAAKqrC,OAAOD,MAAMC,OAAOiF,aAAe,IAC1G2+E,IAAa1rE,MACR,CACLvjD,KAAKmgD,KAAKE,QAAQ5H,KAAK,gBACvByI,EAAQilE,EAAAA,WAAsBz1C,SAAS1wE,KAAKmgD,KAAK87C,MAAOp4F,EAAQo4F,MAEhE,IAAI5K,GAAgD,IAApC/rF,KAAK4R,IAAIgqC,EAAMkiE,KAAOliE,EAAMgiE,MACxCkM,EAAgD,IAApC9pH,KAAK4R,IAAIgqC,EAAMmiE,KAAOniE,EAAMiiE,MAExCkM,EAAarvH,KAAKqrC,OAAOD,MAAMC,OAAOC,YAAc+lD,EACpDi+B,EAAatvH,KAAKqrC,OAAOD,MAAMC,OAAOiF,aAAe8+E,CAEzDH,GAA0BK,GAAdD,EAA2BA,EAAaC,EAGlDL,EAAY,EACdA,EAAY,EACW,IAAdA,IACTA,EAAY,EAGd,IAAIh4E,GAASkvE,EAAAA,WAAsBoJ,WAAWruE,GAC1CsuE,GAAqBlgF,SAAU2H,EAAQ5xC,MAAO4pH,EAAWptE,UAAWh+C,EAAQg+C,UAChF7hD,MAAKizC,OAAOu8E,MAad1lH,IAAK,QACL1E,MAAO,SAAey6F,GACpB,GAAIh8F,GAAU4C,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,EAEnF,IAAgCE,SAA5B3G,KAAKmgD,KAAK87C,MAAM4D,GAAuB,CACzC,GAAI4vB,IAAiBjxF,EAAGx+B,KAAKmgD,KAAK87C,MAAM4D,GAAQrhE,EAAGxc,EAAGhiB,KAAKmgD,KAAK87C,MAAM4D,GAAQ79E,EAC9Ene,GAAQyrC,SAAWmgF,EACnB5rH,EAAQ6rH,aAAe7vB,EAEvB7/F,KAAKizC,OAAOpvC,OAEZ0T,SAAQwnC,IAAI,SAAW8gD,EAAS,wBAapC/1F,IAAK,SACL1E,MAAO,SAAgBvB,GACrB,MAAgB8C,UAAZ9C,OACFA,OAGqB8C,SAAnB9C,EAAQ0kB,SACV1kB,EAAQ0kB,QAAWiW,EAAG,EAAGxc,EAAG,IAELrb,SAArB9C,EAAQ0kB,OAAOiW,IACjB36B,EAAQ0kB,OAAOiW,EAAI,GAEI73B,SAArB9C,EAAQ0kB,OAAOvG,IACjBne,EAAQ0kB,OAAOvG,EAAI,GAECrb,SAAlB9C,EAAQwB,QACVxB,EAAQwB,MAAQrF,KAAKmgD,KAAK+8C,KAAK73F,OAERsB,SAArB9C,EAAQyrC,WACVzrC,EAAQyrC,SAAWtvC,KAAK0iG,mBAEA/7F,SAAtB9C,EAAQg+C,YACVh+C,EAAQg+C,WAAcr6B,SAAU,IAE9B3jB,EAAQg+C,aAAc,IACxBh+C,EAAQg+C,WAAcr6B,SAAU,IAE9B3jB,EAAQg+C,aAAc,IACxBh+C,EAAQg+C,cAEyBl7C,SAA/B9C,EAAQg+C,UAAUr6B,WACpB3jB,EAAQg+C,UAAUr6B,SAAW,KAEU7gB,SAArC9C,EAAQg+C,UAAUmuB,iBACpBnsE,EAAQg+C,UAAUmuB,eAAiB,qBAGrChwE,MAAK2vH,YAAY9rH,OAgBnBiG,IAAK,cACL1E,MAAO,SAAqBvB,GAC1B,GAAgB8C,SAAZ9C,EAAJ,CAGA7D,KAAKuuH,wBAA0B1qH,EAAQg+C,UAAUmuB,eAEjDhwE,KAAK2iG,cACD9+F,EAAQ+rH,UAAW,IACrB5vH,KAAK6uH,eAAiBhrH,EAAQ6rH,aAC9B1vH,KAAK8uH,mBAAqBjrH,EAAQ0kB,QAIb,GAAnBvoB,KAAKwuH,YACPxuH,KAAK6vH,mBAAkB,GAGzB7vH,KAAKyuH,YAAczuH,KAAKmgD,KAAK+8C,KAAK73F,MAClCrF,KAAK2uH,kBAAoB3uH,KAAKmgD,KAAK+8C,KAAK3zD,YACxCvpC,KAAK0uH,YAAc7qH,EAAQwB,MAI3BrF,KAAKmgD,KAAK+8C,KAAK73F,MAAQrF,KAAK0uH,WAC5B,IAAIoB,GAAa9vH,KAAKqrC,OAAOk1D,aAAc/hE,EAAG,GAAMx+B,KAAKqrC,OAAOD,MAAMC,OAAOC,YAAatpB,EAAG,GAAMhiB,KAAKqrC,OAAOD,MAAMC,OAAOiF,eAExHi9E,GACF/uF,EAAGsxF,EAAWtxF,EAAI36B,EAAQyrC,SAAS9Q,EACnCxc,EAAG8tG,EAAW9tG,EAAIne,EAAQyrC,SAASttB,EAErChiB,MAAK4uH,mBACHpwF,EAAGx+B,KAAK2uH,kBAAkBnwF,EAAI+uF,EAAmB/uF,EAAIx+B,KAAK0uH,YAAc7qH,EAAQ0kB,OAAOiW,EACvFxc,EAAGhiB,KAAK2uH,kBAAkB3sG,EAAIurG,EAAmBvrG,EAAIhiB,KAAK0uH,YAAc7qH,EAAQ0kB,OAAOvG,GAItD,IAA/Bne,EAAQg+C,UAAUr6B,SACO7gB,QAAvB3G,KAAK6uH,gBACP7uH,KAAK6/G,aAAe7/G,KAAK+vH,cAAczvE,KAAKtgD,MAC5CA,KAAKmgD,KAAKE,QAAQrgB,GAAG,aAAchgC,KAAK6/G,gBAExC7/G,KAAKmgD,KAAK+8C,KAAK73F,MAAQrF,KAAK0uH,YAC5B1uH,KAAKmgD,KAAK+8C,KAAK3zD,YAAcvpC,KAAK4uH,kBAClC5uH,KAAKmgD,KAAKE,QAAQ5H,KAAK,oBAGzBz4C,KAAKquH,eAAiB,GAAK,GAAKxqH,EAAQg+C,UAAUr6B,SAAW,OAAU,EAAI,GAC3ExnB,KAAKuuH,wBAA0B1qH,EAAQg+C,UAAUmuB,eAEjDhwE,KAAK6/G,aAAe7/G,KAAK6vH,kBAAkBvvE,KAAKtgD,MAChDA,KAAKmgD,KAAKE,QAAQrgB,GAAG,aAAchgC,KAAK6/G,cACxC7/G,KAAKmgD,KAAKE,QAAQ5H,KAAK,wBAU3B3uC,IAAK,gBACL1E,MAAO,WACL,GAAIqqH,IAAiBjxF,EAAGx+B,KAAKmgD,KAAK87C,MAAMj8F,KAAK6uH,gBAAgBrwF,EAAGxc,EAAGhiB,KAAKmgD,KAAK87C,MAAMj8F,KAAK6uH,gBAAgB7sG,GACpG8tG,EAAa9vH,KAAKqrC,OAAOk1D,aAAc/hE,EAAG,GAAMx+B,KAAKqrC,OAAOD,MAAMC,OAAOC,YAAatpB,EAAG,GAAMhiB,KAAKqrC,OAAOD,MAAMC,OAAOiF,eACxHi9E,GACF/uF,EAAGsxF,EAAWtxF,EAAIixF,EAAajxF,EAC/Bxc,EAAG8tG,EAAW9tG,EAAIytG,EAAaztG,GAE7B2sG,EAAoB3uH,KAAKmgD,KAAK+8C,KAAK3zD,YACnCqlF;AACFpwF,EAAGmwF,EAAkBnwF,EAAI+uF,EAAmB/uF,EAAIx+B,KAAKmgD,KAAK+8C,KAAK73F,MAAQrF,KAAK8uH,mBAAmBtwF,EAC/Fxc,EAAG2sG,EAAkB3sG,EAAIurG,EAAmBvrG,EAAIhiB,KAAKmgD,KAAK+8C,KAAK73F,MAAQrF,KAAK8uH,mBAAmB9sG,EAGjGhiB,MAAKmgD,KAAK+8C,KAAK3zD,YAAcqlF,KAG/B9kH,IAAK,cACL1E,MAAO,WACuBuB,SAAxB3G,KAAK6uH,gBAAsDloH,SAAtB3G,KAAK6/G,eAC5C7/G,KAAKmgD,KAAKE,QAAQlgB,IAAI,aAAcngC,KAAK6/G,cACzC7/G,KAAK6uH,eAAiBloH,OACtB3G,KAAK8uH,mBAAqBnoH,WAW9BmD,IAAK,oBACL1E,MAAO,WACL,GAAI4qH,GAAWvpH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAEvFzG,MAAKwuH,YAAcxuH,KAAKquH,eACxBruH,KAAKwuH,WAAawB,KAAa,EAAO,EAAMhwH,KAAKwuH,UAEjD,IAAIzxE,GAAWp8C,EAAKsR,gBAAgBjS,KAAKuuH,yBAAyBvuH,KAAKwuH,WAEvExuH,MAAKmgD,KAAK+8C,KAAK73F,MAAQrF,KAAKyuH,aAAezuH,KAAK0uH,YAAc1uH,KAAKyuH,aAAe1xE,EAClF/8C,KAAKmgD,KAAK+8C,KAAK3zD,aACb/K,EAAGx+B,KAAK2uH,kBAAkBnwF,GAAKx+B,KAAK4uH,kBAAkBpwF,EAAIx+B,KAAK2uH,kBAAkBnwF,GAAKue,EACtF/6B,EAAGhiB,KAAK2uH,kBAAkB3sG,GAAKhiB,KAAK4uH,kBAAkB5sG,EAAIhiB,KAAK2uH,kBAAkB3sG,GAAK+6B,GAIpF/8C,KAAKwuH,YAAc,IACrBxuH,KAAKmgD,KAAKE,QAAQlgB,IAAI,aAAcngC,KAAK6/G,cACzC7/G,KAAKwuH,WAAa,EACS7nH,QAAvB3G,KAAK6uH,iBACP7uH,KAAK6/G,aAAe7/G,KAAK+vH,cAAczvE,KAAKtgD,MAC5CA,KAAKmgD,KAAKE,QAAQrgB,GAAG,aAAchgC,KAAK6/G,eAE1C7/G,KAAKmgD,KAAKE,QAAQ5H,KAAK,yBAI3B3uC,IAAK,WACL1E,MAAO,WACL,MAAOpF,MAAKmgD,KAAK+8C,KAAK73F,SAGxByE,IAAK,kBACL1E,MAAO,WACL,MAAOpF,MAAKqrC,OAAOk1D,aAAc/hE,EAAG,GAAMx+B,KAAKqrC,OAAOD,MAAMC,OAAOC,YAAatpB,EAAG,GAAMhiB,KAAKqrC,OAAOD,MAAMC,OAAOiF,mBAI/G89E,IAGTxuH,GAAAA,WAAkBwuH,GAId,SAASvuH,EAAQD,EAASM,GAkB9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAhBhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hB+qE,EAAqB/vH,EAAoB,KAEzCgwH,EAAsB5wE,EAAuB2wE,GAE7CE,EAASjwH,EAAoB,KAE7BkwH,EAAU9wE,EAAuB6wE,GAMjCxvH,EAAOT,EAAoB,GAE3BmwH,EAAqB,WACvB,QAASA,GAAmBlwE,EAAM9U,EAAQmyD,GACxCx4C,EAAgBhlD,KAAMqwH,GAEtBrwH,KAAKmgD,KAAOA,EACZngD,KAAKqrC,OAASA,EACdrrC,KAAKw9F,iBAAmBA,EACxBx9F,KAAKswH,kBAAoB,GAAIJ,GAAAA,WAA4B/vE,EAAM9U,GAG/DrrC,KAAKmgD,KAAKk8C,eAAeC,MAAQt8F,KAAKs8F,MAAMh8C,KAAKtgD,MACjDA,KAAKmgD,KAAKk8C,eAAezkC,QAAU53D,KAAK43D,QAAQtX,KAAKtgD,MACrDA,KAAKmgD,KAAKk8C,eAAeE,YAAcv8F,KAAKu8F,YAAYj8C,KAAKtgD,MAC7DA,KAAKmgD,KAAKk8C,eAAeG,OAASx8F,KAAKw8F,OAAOl8C,KAAKtgD,MACnDA,KAAKmgD,KAAKk8C,eAAeI,YAAcz8F,KAAKy8F,YAAYn8C,KAAKtgD,MAC7DA,KAAKmgD,KAAKk8C,eAAeK,OAAS18F,KAAK08F,OAAOp8C,KAAKtgD,MACnDA,KAAKmgD,KAAKk8C,eAAeM,UAAY38F,KAAK28F,UAAUr8C,KAAKtgD,MACzDA,KAAKmgD,KAAKk8C,eAAe5nB,aAAez0E,KAAKy0E,aAAan0B,KAAKtgD,MAC/DA,KAAKmgD,KAAKk8C,eAAeO,QAAU58F,KAAK48F,QAAQt8C,KAAKtgD,MACrDA,KAAKmgD,KAAKk8C,eAAeQ,YAAc78F,KAAK68F,YAAYv8C,KAAKtgD,MAC7DA,KAAKmgD,KAAKk8C,eAAehwB,UAAYrsE,KAAKqsE,UAAU/rB,KAAKtgD,MACzDA,KAAKmgD,KAAKk8C,eAAeS,UAAY98F,KAAK88F,UAAUx8C,KAAKtgD,MAEzDA,KAAK+uH,UAAY,EACjB/uH,KAAKy3D,QACLz3D,KAAK03D,SACL13D,KAAKuwH,MAAQ5pH,OACb3G,KAAKwwH,SAAW7pH,OAChB3G,KAAKywH,WAAa9pH,OAElB3G,KAAKmgD,KAAK48C,UAAUvtB,WAAaxvE,KAAKwvE,WAAWlvB,KAAKtgD,MAEtDA,KAAK6D,WACL7D,KAAK2/C,gBACH+wE,WAAW,EACXC,UAAU,EACVpiH,OAAO,EACPqiH,UACE5/G,SAAS,EACT6/G,OAASryF,EAAG,GAAIxc,EAAG,GAAI0vD,KAAM,KAC7Bo/C,cAAc,GAEhBC,mBAAmB,EACnBC,aAAc,IACdC,UAAU,GAEZtwH,EAAKoG,OAAO/G,KAAK6D,QAAS7D,KAAK2/C,gBAE/B3/C,KAAKm9F,qBAqsBP,MAlsBA/3C,GAAairE,IACXvmH,IAAK,qBACL1E,MAAO,WACL,GAAI+9C,GAAQnjD,IAEZA,MAAKmgD,KAAKE,QAAQrgB,GAAG,UAAW,WAC9BkE,aAAaif,EAAMstE,kBACZttE,GAAMhD,KAAK48C,UAAUvtB,gBAIhC1lE,IAAK,aACL1E,MAAO,SAAoBvB,GACzB,GAAgB8C,SAAZ9C,EAAuB,CAEzB,GAAIuM,IAAU,kBAAmB,kBAAmB,WAAY,cAAe,aAAc,uBAC7FzP,GAAK8G,uBAAuB2I,EAAQpQ,KAAK6D,QAASA,GAGlDlD,EAAKkQ,aAAa7Q,KAAK6D,QAASA,EAAS,YAErCA,EAAQ2tC,UACV7wC,EAAKoG,OAAO/G,KAAK6D,QAAQ2tC,QAAS3tC,EAAQ2tC,SACtC3tC,EAAQ2tC,QAAQ5kC,QAClB5M,KAAK6D,QAAQ2tC,QAAQ5kC,MAAQjM,EAAK2M,WAAWzJ,EAAQ2tC,QAAQ5kC,SAKnE5M,KAAKswH,kBAAkB1wF,WAAW5/B,KAAK6D,YAWzCiG,IAAK,aACL1E,MAAO,SAAoBq9D,GACzB,OACEjkC,EAAGikC,EAAMjkC,EAAI79B,EAAKgI,gBAAgB3I,KAAKqrC,OAAOD,MAAMC,QACpDrpB,EAAGygD,EAAMzgD,EAAIrhB,EAAKoI,eAAe/I,KAAKqrC,OAAOD,MAAMC,YAWvDvhC,IAAK,UACL1E,MAAO,SAAiB6F,IAClB,GAAIvF,OAAOuC,UAAYjI,KAAK+uH,UAAY,KAC1C/uH,KAAKy3D,KAAKvM,QAAUlrD,KAAKwvE,WAAWvkE,EAAMgsC,QAC1Cj3C,KAAKy3D,KAAKy5D,SAAU,EACpBlxH,KAAK03D,MAAMryD,MAAQrF,KAAKmgD,KAAK+8C,KAAK73F,MAElCrF,KAAK+uH,WAAY,GAAIrpH,OAAOuC,cAUhC6B,IAAK,QACL1E,MAAO,SAAe6F,GACpB,GAAIigD,GAAUlrD,KAAKwvE,WAAWvkE,EAAMgsC,QAChCkiC,EAAcn5E,KAAKw9F,iBAAiB35F,QAAQs1E,cAAgBluE,EAAM8yD,gBAAgB,GAAG+gB,SAAW7zE,EAAM8yD,gBAAgB,GAAGghB,QAE7H/+E,MAAKmxH,sBAAsBjmE,EAASjgD,EAAOkuE,GAC3Cn5E,KAAKw9F,iBAAiB4zB,oBAAoB,QAASnmH,EAAOigD,MAS5DphD,IAAK,cACL1E,MAAO,SAAqB6F,GAC1B,GAAIigD,GAAUlrD,KAAKwvE,WAAWvkE,EAAMgsC,OACpCj3C,MAAKw9F,iBAAiB4zB,oBAAoB,cAAenmH,EAAOigD,MASlEphD,IAAK,SACL1E,MAAO,SAAgB6F,GACrB,GAAIigD,GAAUlrD,KAAKwvE,WAAWvkE,EAAMgsC,QAChCkiC,EAAcn5E,KAAKw9F,iBAAiB35F,QAAQs1E,WAEhDn5E,MAAKmxH,sBAAsBjmE,EAASjgD,EAAOkuE,GAE3Cn5E,KAAKw9F,iBAAiB4zB,oBAAoB,QAASnmH,EAAOigD,GAC1DlrD,KAAKw9F,iBAAiB4zB,oBAAoB,OAAQnmH,EAAOigD,MAU3DphD,IAAK,YACL1E,MAAO,SAAmB6F,GACxB,IAAI,GAAIvF,OAAOuC,UAAYjI,KAAK+uH,UAAY,GAAI,CAC9C,GAAI7jE,GAAUlrD,KAAKwvE,WAAWvkE,EAAMgsC,OACpCj3C,MAAKw9F,iBAAiB4zB,oBAAoB,UAAWnmH,EAAOigD,GAE5DlrD,KAAK+uH,WAAY,GAAIrpH,OAAOuC,cAIhC6B,IAAK,YACL1E,MAAO,SAAmB6F,GACxB,GAAIigD,GAAUlrD,KAAKwvE,YAAahxC,EAAGvzB,EAAMy9B,QAAS1mB,EAAG/W,EAAM49B,SAC3D7oC,MAAKw9F,iBAAiB4zB,oBAAoB,YAAanmH,EAAOigD,MAUhEphD,IAAK,wBACL1E,MAAO,SAA+B8lD,EAASjgD,GAC7C,GAAI+b,GAAMvgB,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAE9E4qH,EAA8BrxH,KAAKw9F,iBAAiB8zB,wBACpDC,EAA8BvxH,KAAKw9F,iBAAiBg0B,wBACpDC,EAAoBzxH,KAAKw9F,iBAAiB16C,eAC1CsF,EAAW,MAEbA,GADEphC,KAAQ,EACChnB,KAAKw9F,iBAAiBk0B,wBAAwBxmE,GAE9ClrD,KAAKw9F,iBAAiBm0B,cAAczmE,EAEjD,IAAI0mE,GAAqB5xH,KAAKw9F,iBAAiB8zB,wBAC3CO,EAAqB7xH,KAAKw9F,iBAAiBg0B,wBAC3CM,EAAmB9xH,KAAKw9F,iBAAiB16C,eAEzCivE,EAAyB/xH,KAAKgyH,sBAAsBP,EAAmBK,GAEvEG,EAAeF,EAAuBE,aACtCC,EAAeH,EAAuBG,aAEtCC,GAAe,CAEfN,GAAqBN,EAA8B,GAErDvxH,KAAKw9F,iBAAiB4zB,oBAAoB,aAAcnmH,EAAOigD,GAC/D9C,GAAW,EACX+pE,GAAe,GACNF,KAAiB,GAAQJ,EAAqB,GACvD7xH,KAAKw9F,iBAAiB4zB,oBAAoB,eAAgBnmH,EAAOigD,EAASumE,GAC1EzxH,KAAKw9F,iBAAiB4zB,oBAAoB,aAAcnmH,EAAOigD,GAC/DinE,GAAe,EACf/pE,GAAW,GACiD,EAAnDypE,EAAqBN,IAE9BvxH,KAAKw9F,iBAAiB4zB,oBAAoB,eAAgBnmH,EAAOigD,EAASumE,GAC1ErpE,GAAW,GAITwpE,EAAqBP,EAA8B,GAAKc,KAAiB,GAE3EnyH,KAAKw9F,iBAAiB4zB,oBAAoB,aAAcnmH,EAAOigD,GAC/D9C,GAAW,GACFwpE,EAAqB,GAAKM,KAAiB,GACpDlyH,KAAKw9F,iBAAiB4zB,oBAAoB,eAAgBnmH,EAAOigD,EAASumE,GAC1EzxH,KAAKw9F,iBAAiB4zB,oBAAoB,aAAcnmH,EAAOigD,GAC/D9C,GAAW,GACiD,EAAnDwpE,EAAqBP,IAE9BrxH,KAAKw9F,iBAAiB4zB,oBAAoB,eAAgBnmH,EAAOigD,EAASumE,GAC1ErpE,GAAW,GAITA,KAAa,GAEfpoD,KAAKw9F,iBAAiB4zB,oBAAoB,SAAUnmH,EAAOigD,MAa/DphD,IAAK,wBACL1E,MAAO,SAA+BqsH,EAAmBK,GAIvD,IAAK,GAHDG,IAAe,EACfC,GAAe,EAEVrrH,EAAI,EAAGA,EAAI4qH,EAAkBx1B,MAAMv1F,OAAQG,IACiB,KAA/DirH,EAAiB71B,MAAMv0F,QAAQ+pH,EAAkBx1B,MAAMp1F,MACzDorH,GAAe,EAGnB,KAAK,GAAIv8G,GAAK,EAAGA,EAAKo8G,EAAiB71B,MAAMv1F,OAAQgP,IACkB,KAAjE+7G,EAAkBx1B,MAAMv0F,QAAQ+pH,EAAkBx1B,MAAMvmF,MAC1Du8G,GAAe,EAGnB,KAAK,GAAI7M,GAAM,EAAGA,EAAMqM,EAAkBt1B,MAAMz1F,OAAQ0+G,IACe,KAAjE0M,EAAiB31B,MAAMz0F,QAAQ+pH,EAAkBt1B,MAAMipB,MACzD8M,GAAe,EAGnB,KAAK,GAAI3M,GAAM,EAAGA,EAAMuM,EAAiB31B,MAAMz1F,OAAQ6+G,IACiB,KAAlEkM,EAAkBt1B,MAAMz0F,QAAQ+pH,EAAkBt1B,MAAMopB,MAC1D2M,GAAe,EAInB,QAASD,aAAcA,EAAcC,aAAcA,MAWrDpoH,IAAK,cACL1E,MAAO,SAAqB6F,GAEAtE,SAAtB3G,KAAKy3D,KAAKvM,SACZlrD,KAAK43D,QAAQ3sD,EAIf,IAAIuxB,GAAOx8B,KAAKw9F,iBAAiB6E,UAAUriG,KAAKy3D,KAAKvM,QAOrD,IALAlrD,KAAKy3D,KAAK0Y,UAAW,EACrBnwE,KAAKy3D,KAAK5U,aACV7iD,KAAKy3D,KAAKluB,YAAc5oC,EAAKoG,UAAW/G,KAAKmgD,KAAK+8C,KAAK3zD,aACvDvpC,KAAKy3D,KAAKooC,OAASl5F,OAENA,SAAT61B,GAAsBx8B,KAAK6D,QAAQ6sH,aAAc,EAAM,CACzD1wH,KAAKy3D,KAAKooC,OAASrjE,EAAKn8B,GAEpBm8B,EAAKgwF,gBAAiB,IACxBxsH,KAAKw9F,iBAAiBwC,cACtBhgG,KAAKw9F,iBAAiB40B,aAAa51F,IAIrCx8B,KAAKw9F,iBAAiB4zB,oBAAoB,YAAanmH,EAAOjL,KAAKy3D,KAAKvM,QAExE,IAAIrI,GAAY7iD,KAAKw9F,iBAAiB60B,aAAap2B,KAEnD,KAAK,GAAI4D,KAAUh9C,GACjB,GAAIA,EAAUz8C,eAAey5F,GAAS,CACpC,GAAIp7F,GAASo+C,EAAUg9C,GACnB/xF,GACFzN,GAAIoE,EAAOpE,GACXm8B,KAAM/3B,EAGN+5B,EAAG/5B,EAAO+5B,EACVxc,EAAGvd,EAAOud,EACVswG,OAAQ7tH,EAAOZ,QAAQ+gG,MAAMpmE,EAC7B+zF,OAAQ9tH,EAAOZ,QAAQ+gG,MAAM5iF,EAG/Bvd,GAAOZ,QAAQ+gG,MAAMpmE,GAAI,EACzB/5B,EAAOZ,QAAQ+gG,MAAM5iF,GAAI,EAEzBhiB,KAAKy3D,KAAK5U,UAAUl7C,KAAKmG,QAK7B9N,MAAKw9F,iBAAiB4zB,oBAAoB,YAAanmH,EAAOjL,KAAKy3D,KAAKvM,QAASvkD,QAAW,MAUhGmD,IAAK,SACL1E,MAAO,SAAgB6F,GACrB,GAAI28C,GAAS5nD,IAEb,IAAIA,KAAKy3D,KAAKy5D,WAAY,EAA1B,CAKAlxH,KAAKmgD,KAAKE,QAAQ5H,KAAK,aAEvB,IAAIyS,GAAUlrD,KAAKwvE,WAAWvkE,EAAMgsC,QAEhC4L,EAAY7iD,KAAKy3D,KAAK5U,SAC1B,IAAIA,GAAaA,EAAUn8C,QAAU1G,KAAK6D,QAAQ6sH,aAAc,GAC9D,WACE9oE,EAAO41C,iBAAiB4zB,oBAAoB,WAAYnmH,EAAOigD,EAG/D,IAAImU,GAASnU,EAAQ1sB,EAAIopB,EAAO6P,KAAKvM,QAAQ1sB,EACzC8gC,EAASpU,EAAQlpC,EAAI4lC,EAAO6P,KAAKvM,QAAQlpC,CAG7C6gC,GAAUp5C,QAAQ,SAAUo5C,GAC1B,GAAIrmB,GAAOqmB,EAAUrmB,IAEjBqmB,GAAUyvE,UAAW,IACvB91F,EAAKgC,EAAIopB,EAAOvc,OAAO6iF,qBAAqBtmE,EAAOvc,OAAO2iF,qBAAqBnrE,EAAUrkB,GAAK6gC,IAG5Fxc,EAAU0vE,UAAW,IACvB/1F,EAAKxa,EAAI4lC,EAAOvc,OAAO8iF,qBAAqBvmE,EAAOvc,OAAO4iF,qBAAqBprE,EAAU7gC,GAAKs9C,MAKlG1X,EAAOzH,KAAKE,QAAQ5H,KAAK,0BAI3B,IAAIz4C,KAAK6D,QAAQ8sH,YAAa,EAAM,CAIlC,GAHA3wH,KAAKw9F,iBAAiB4zB,oBAAoB,WAAYnmH,EAAOigD,EAASvkD,QAAW,GAGvDA,SAAtB3G,KAAKy3D,KAAKvM,QAEZ,WADAlrD,MAAKy8F,YAAYxxF,EAGnB,IAAIitC,GAAQgT,EAAQ1sB,EAAIx+B,KAAKy3D,KAAKvM,QAAQ1sB,EACtC2Z,EAAQ+S,EAAQlpC,EAAIhiB,KAAKy3D,KAAKvM,QAAQlpC,CAE1ChiB,MAAKmgD,KAAK+8C,KAAK3zD,aAAgB/K,EAAGx+B,KAAKy3D,KAAKluB,YAAY/K,EAAI0Z,EAAOl2B,EAAGhiB,KAAKy3D,KAAKluB,YAAYvnB,EAAIm2B,GAChGn4C,KAAKmgD,KAAKE,QAAQ5H,KAAK,gBAW7B3uC,IAAK,YACL1E,MAAO,SAAmB6F,GACxBjL,KAAKy3D,KAAK0Y,UAAW,CACrB,IAAIttB,GAAY7iD,KAAKy3D,KAAK5U,SACtBA,IAAaA,EAAUn8C,QACzBm8C,EAAUp5C,QAAQ,SAAUqE,GAE1BA,EAAE0uB,KAAK34B,QAAQ+gG,MAAMpmE,EAAI1wB,EAAEwkH,OAC3BxkH,EAAE0uB,KAAK34B,QAAQ+gG,MAAM5iF,EAAIlU,EAAEykH,SAE7BvyH,KAAKw9F,iBAAiB4zB,oBAAoB,UAAWnmH,EAAOjL,KAAKwvE,WAAWvkE,EAAMgsC,SAClFj3C,KAAKmgD,KAAKE,QAAQ5H,KAAK,qBAEvBz4C,KAAKw9F,iBAAiB4zB,oBAAoB,UAAWnmH,EAAOjL,KAAKwvE,WAAWvkE,EAAMgsC,QAAStwC,QAAW,GACtG3G,KAAKmgD,KAAKE,QAAQ5H,KAAK,sBAW3B3uC,IAAK,UACL1E,MAAO,SAAiB6F,GACtB,GAAIigD,GAAUlrD,KAAKwvE,WAAWvkE,EAAMgsC,OAEpCj3C,MAAKy3D,KAAKy5D,SAAU,EACQvqH,SAAxB3G,KAAK03D,MAAa,QACpB13D,KAAK03D,MAAMryD,MAAQ,EAIrB,IAAIA,GAAQrF,KAAK03D,MAAMryD,MAAQ4F,EAAM5F,KACrCrF,MAAK0xE,KAAKrsE,EAAO6lD,MAYnBphD,IAAK,OACL1E,MAAO,SAAcC,EAAO6lD,GAC1B,GAAIlrD,KAAK6D,QAAQotH,YAAa,EAAM,CAClC,GAAIuB,GAAWxyH,KAAKmgD,KAAK+8C,KAAK73F,KAClB,MAARA,IACFA,EAAQ,MAENA,EAAQ,KACVA,EAAQ,GAGV,IAAIotH,GAAsB9rH,MACRA,UAAd3G,KAAKy3D,MACHz3D,KAAKy3D,KAAK0Y,YAAa,IACzBsiD,EAAsBzyH,KAAKqrC,OAAOk1D,YAAYvgG,KAAKy3D,KAAKvM,SAI5D,IAAI3hB,GAAcvpC,KAAKmgD,KAAK+8C,KAAK3zD,YAE7BmpF,EAAYrtH,EAAQmtH,EACpBG,GAAM,EAAID,GAAaxnE,EAAQ1sB,EAAI+K,EAAY/K,EAAIk0F,EACnDE,GAAM,EAAIF,GAAaxnE,EAAQlpC,EAAIunB,EAAYvnB,EAAI0wG,CAKvD,IAHA1yH,KAAKmgD,KAAK+8C,KAAK73F,MAAQA,EACvBrF,KAAKmgD,KAAK+8C,KAAK3zD,aAAgB/K,EAAGm0F,EAAI3wG,EAAG4wG,GAEdjsH,QAAvB8rH,EAAkC,CACpC,GAAII,GAAuB7yH,KAAKqrC,OAAOi1D,YAAYmyB,EACnDzyH,MAAKy3D,KAAKvM,QAAQ1sB,EAAIq0F,EAAqBr0F,EAC3Cx+B,KAAKy3D,KAAKvM,QAAQlpC,EAAI6wG,EAAqB7wG,EAG7ChiB,KAAKmgD,KAAKE,QAAQ5H,KAAK,kBAERpzC,EAAXmtH,EACFxyH,KAAKmgD,KAAKE,QAAQ5H,KAAK,QAAU/sB,UAAW,IAAKrmB,MAAOrF,KAAKmgD,KAAK+8C,KAAK73F,QAEvErF,KAAKmgD,KAAKE,QAAQ5H,KAAK,QAAU/sB,UAAW,IAAKrmB,MAAOrF,KAAKmgD,KAAK+8C,KAAK73F,YAc7EyE,IAAK,eACL1E,MAAO,SAAsB6F,GAC3B,GAAIjL,KAAK6D,QAAQotH,YAAa,EAAM,CAElC,GAAIlkG,GAAQ,CAcZ,IAbI9hB,EAAMquC,WAERvsB,EAAQ9hB,EAAMquC,WAAa,IAClBruC,EAAMsuC,SAIfxsB,GAAS9hB,EAAMsuC,OAAS,GAMZ,IAAVxsB,EAAa,CAGf,GAAI1nB,GAAQrF,KAAKmgD,KAAK+8C,KAAK73F,MACvBqsE,EAAO3kD,EAAQ,EACP,GAARA,IACF2kD,GAAe,EAAIA,GAErBrsE,GAAS,EAAIqsE,CAGb,IAAIxmB,GAAUlrD,KAAKwvE,YAAahxC,EAAGvzB,EAAMy9B,QAAS1mB,EAAG/W,EAAM49B,SAG3D7oC,MAAK0xE,KAAKrsE,EAAO6lD,GAInBjgD,EAAMD,qBAWVlB,IAAK,cACL1E,MAAO,SAAqB6F,GAC1B,GAAI49C,GAAS7oD,KAETkrD,EAAUlrD,KAAKwvE,YAAahxC,EAAGvzB,EAAMy9B,QAAS1mB,EAAG/W,EAAM49B,UACvDiqF,GAAe,CAqCnB,IAlCmBnsH,SAAf3G,KAAKuwH,QACHvwH,KAAKuwH,MAAMr9C,UAAW,GACxBlzE,KAAK+yH,gBAAgB7nE,GAInBlrD,KAAKuwH,MAAMr9C,UAAW,IACxB4/C,GAAe,EACf9yH,KAAKuwH,MAAMyC,YAAY9nE,EAAQ1sB,EAAI,EAAG0sB,EAAQlpC,EAAI,GAClDhiB,KAAKuwH,MAAM3sE,SAKX5jD,KAAK6D,QAAQ+sH,SAASE,gBAAiB,GAAS9wH,KAAK6D,QAAQ+sH,SAAS5/G,WAAY,GACpFhR,KAAKqrC,OAAOD,MAAM6X,QAIhB6vE,KAAiB,IACKnsH,SAApB3G,KAAKywH,aACP5yE,cAAc79C,KAAKywH,YACnBzwH,KAAKywH,WAAa9pH,QAEf3G,KAAKy3D,KAAK0Y,WACbnwE,KAAKywH,WAAapmH,WAAW,WAC3B,MAAOw+C,GAAOoqE,gBAAgB/nE,IAC7BlrD,KAAK6D,QAAQmtH,gBAOhBhxH,KAAK6D,QAAQ0K,SAAU,EAAM,CAE/B,GAAIlK,GAAMrE,KAAKw9F,iBAAiB6E,UAAUn3C,EAC9BvkD,UAARtC,IACFA,EAAMrE,KAAKw9F,iBAAiB8E,UAAUp3C,IAExClrD,KAAKw9F,iBAAiB01B,YAAY7uH,OActCyF,IAAK,kBACL1E,MAAO,SAAyB8lD,GAC9B,GAAI1sB,GAAIx+B,KAAKqrC,OAAO6iF,qBAAqBhjE,EAAQ1sB,GAC7Cxc,EAAIhiB,KAAKqrC,OAAO8iF,qBAAqBjjE,EAAQlpC,GAC7CmxG,GACFrqH,KAAM01B,EACNx1B,IAAKgZ,EACLywB,MAAOjU,EACP0Q,OAAQltB,GAGNoxG,EAAuCzsH,SAAlB3G,KAAKwwH,SAAyB7pH,OAAY3G,KAAKwwH,SAASnwH,GAC7EgzH,GAAkB,EAClBC,EAAY,MAGhB,IAAsB3sH,SAAlB3G,KAAKwwH,SAAwB,CAM/B,IAAK,GAJDt0B,GAAcl8F,KAAKmgD,KAAK+7C,YACxBD,EAAQj8F,KAAKmgD,KAAK87C,MAClBz/D,EAAO,OACP+2F,KACK1sH,EAAI,EAAGA,EAAIq1F,EAAYx1F,OAAQG,IACtC21B,EAAOy/D,EAAMC,EAAYr1F,IACrB21B,EAAKg3F,kBAAkBL,MAAgB,GACjBxsH,SAApB61B,EAAKi3F,YACPF,EAAiB5rH,KAAKu0F,EAAYr1F,GAKpC0sH,GAAiB7sH,OAAS,IAE5B1G,KAAKwwH,SAAWv0B,EAAMs3B,EAAiBA,EAAiB7sH,OAAS,IAEjE2sH,GAAkB,GAItB,GAAsB1sH,SAAlB3G,KAAKwwH,UAA0B6C,KAAoB,EAAO,CAM5D,IAAK,GAJDj3B,GAAcp8F,KAAKmgD,KAAKi8C,YACxBD,EAAQn8F,KAAKmgD,KAAKg8C,MAClBoG,EAAO,OACPmxB,KACKhO,EAAM,EAAGA,EAAMtpB,EAAY11F,OAAQg/G,IAC1CnjB,EAAOpG,EAAMC,EAAYspB,IACrBnjB,EAAKixB,kBAAkBL,MAAgB,GACrC5wB,EAAK4Q,aAAc,GAA4BxsG,SAApB47F,EAAKkxB,YAClCC,EAAiB/rH,KAAKy0F,EAAYspB,GAKpCgO,GAAiBhtH,OAAS,IAC5B1G,KAAKwwH,SAAWr0B,EAAMu3B,EAAiBA,EAAiBhtH,OAAS,IACjE4sH,EAAY,QAIM3sH,SAAlB3G,KAAKwwH,SAEHxwH,KAAKwwH,SAASnwH,KAAO+yH,IACJzsH,SAAf3G,KAAKuwH,QACPvwH,KAAKuwH,MAAQ,GAAIH,GAAAA,WAAgBpwH,KAAKqrC,OAAOD,QAG/CprC,KAAKuwH,MAAMoD,gBAAkBL,EAC7BtzH,KAAKuwH,MAAMqD,cAAgB5zH,KAAKwwH,SAASnwH,GAKzCL,KAAKuwH,MAAMyC,YAAY9nE,EAAQ1sB,EAAI,EAAG0sB,EAAQlpC,EAAI,GAClDhiB,KAAKuwH,MAAMsD,QAAQ7zH,KAAKwwH,SAASiD,YACjCzzH,KAAKuwH,MAAM3sE,OACX5jD,KAAKmgD,KAAKE,QAAQ5H,KAAK,YAAaz4C,KAAKwwH,SAASnwH,KAGjCsG,SAAf3G,KAAKuwH,QACPvwH,KAAKuwH,MAAM10C,OACX77E,KAAKmgD,KAAKE,QAAQ5H,KAAK,iBAa7B3uC,IAAK,kBACL1E,MAAO,SAAyB8lD,GAC9B,GAAIioE,GAAanzH,KAAKw9F,iBAAiBs2B,yBAAyB5oE,GAE5D6oE,GAAa,CACjB,IAAmC,SAA/B/zH,KAAKuwH,MAAMoD,iBACb,GAAkDhtH,SAA9C3G,KAAKmgD,KAAK87C,MAAMj8F,KAAKuwH,MAAMqD,iBAC7BG,EAAa/zH,KAAKmgD,KAAK87C,MAAMj8F,KAAKuwH,MAAMqD,eAAeJ,kBAAkBL,GAIrEY,KAAe,GAAM,CACvB,GAAIC,GAAWh0H,KAAKw9F,iBAAiB6E,UAAUn3C,EAC/C6oE,GAAaC,EAAS3zH,KAAOL,KAAKuwH,MAAMqD,mBAIKjtH,UAA7C3G,KAAKw9F,iBAAiB6E,UAAUn3C,IACgBvkD,SAA9C3G,KAAKmgD,KAAKg8C,MAAMn8F,KAAKuwH,MAAMqD,iBAC7BG,EAAa/zH,KAAKmgD,KAAKg8C,MAAMn8F,KAAKuwH,MAAMqD,eAAeJ,kBAAkBL,GAK3EY,MAAe,IACjB/zH,KAAKwwH,SAAW7pH,OAChB3G,KAAKuwH,MAAM10C,OACX77E,KAAKmgD,KAAKE,QAAQ5H,KAAK,kBAKtB43E,IAGTzwH,GAAAA,WAAkBywH,GAId,SAASxwH,EAAQD,EAASM,GAU9B,QAAS8kD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCANhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAK5hBlhD,GADO9D,EAAoB,GAClBA,EAAoB,KAC7BkrD,EAAalrD,EAAoB,IACjC+D,EAAW/D,EAAoB,IAE/B+zH,EAAoB,WACtB,QAASA,GAAkB9zE,EAAM9U,GAC/B,GAAI8X,GAAQnjD,IAEZglD,GAAgBhlD,KAAMi0H,GAEtBj0H,KAAKmgD,KAAOA,EACZngD,KAAKqrC,OAASA,EAEdrrC,KAAKk0H,cAAe,EACpBl0H,KAAKm0H,qBACLn0H,KAAKo0H,kBACLp0H,KAAK+uH,UAAY,EACjB/uH,KAAKq0H,WAAY,EAEjBr0H,KAAKmgD,KAAKE,QAAQrgB,GAAG,WAAY,WAC/BmjB,EAAMkxE,WAAY,EAAKlxE,EAAMmxE,8BAE/Bt0H,KAAKmgD,KAAKE,QAAQrgB,GAAG,aAAc,WACjCmjB,EAAMkxE,WAAY,EAAMlxE,EAAMmxE,8BAEhCt0H,KAAKmgD,KAAKE,QAAQrgB,GAAG,UAAW,WACPr5B,SAAnBw8C,EAAMl/C,UACRk/C,EAAMl/C,SAAS87B,YAInB//B,KAAK6D,WAsRP,MAnRAuhD,GAAa6uE,IACXnqH,IAAK,aACL1E,MAAO,SAAoBvB,GACT8C,SAAZ9C,IACF7D,KAAK6D,QAAUA,EACf7D,KAAKuQ,aAITzG,IAAK,SACL1E,MAAO,WACDpF,KAAK6D,QAAQktH,qBAAsB,EACjC/wH,KAAKk0H,gBAAiB,GACxBl0H,KAAKu0H,yBAEEv0H,KAAKk0H,gBAAiB,GAC/Bl0H,KAAKw0H,kBAGPx0H,KAAKs0H,+BAGPxqH,IAAK,kBACL1E,MAAO,WAEL,GAAqC,GAAjCpF,KAAKm0H,kBAAkBztH,OAAa,CACtC,IAAK,GAAIG,GAAI,EAAGA,EAAI7G,KAAKm0H,kBAAkBztH,OAAQG,IACjD7G,KAAKm0H,kBAAkBttH,GAAGk5B,SAE5B//B,MAAKm0H,qBAIHn0H,KAAKy0H,eAAiBz0H,KAAKy0H,cAAuB,SAAKz0H,KAAKy0H,cAAuB,QAAEjpH,YACvFxL,KAAKy0H,cAAuB,QAAEjpH,WAAWzG,YAAY/E,KAAKy0H,cAAuB,SAGnFz0H,KAAKk0H,cAAe,KAatBpqH,IAAK,yBACL1E,MAAO,WACL,GAAIwiD,GAAS5nD,IAEbA,MAAKw0H,kBAELx0H,KAAKy0H,gBACL,IAAIC,IAAkB,KAAM,OAAQ,OAAQ,QAAS,SAAU,UAAW,eACtEC,GAAwB,UAAW,YAAa,YAAa,aAAc,UAAW,WAAY,OAEtG30H,MAAKy0H,cAAuB,QAAIz2F,SAASM,cAAc,OACvDt+B,KAAKy0H,cAAuB,QAAEvrH,UAAY,iBAC1ClJ,KAAKqrC,OAAOD,MAAMlN,YAAYl+B,KAAKy0H,cAAuB,QAE1D,KAAK,GAAI5tH,GAAI,EAAGA,EAAI6tH,EAAehuH,OAAQG,IAAK,CAC9C7G,KAAKy0H,cAAcC,EAAe7tH,IAAMm3B,SAASM,cAAc,OAC/Dt+B,KAAKy0H,cAAcC,EAAe7tH,IAAIqC,UAAY,kBAAoBwrH,EAAe7tH,GACrF7G,KAAKy0H,cAAuB,QAAEv2F,YAAYl+B,KAAKy0H,cAAcC,EAAe7tH,IAE5E,IAAIilD,GAAS,GAAI9nD,GAAOhE,KAAKy0H,cAAcC,EAAe7tH,IAC1B,UAA5B8tH,EAAqB9tH,GACvBukD,EAAWwM,QAAQ9L,EAAQ9rD,KAAK40H,KAAKt0E,KAAKtgD,OAE1CorD,EAAWwM,QAAQ9L,EAAQ9rD,KAAK60H,aAAav0E,KAAKtgD,KAAM20H,EAAqB9tH,KAG/E7G,KAAKm0H,kBAAkBxsH,KAAKmkD,GAK9B,GAAIihE,GAAc,GAAI/oH,GAAOhE,KAAKqrC,OAAOD,MACzCggB,GAAWihB,UAAU0gD,EAAa,WAChCnlE,EAAOktE,kBAET90H,KAAKm0H,kBAAkBxsH,KAAKolH,GAE5B/sH,KAAKk0H,cAAe,KAGtBpqH,IAAK,eACL1E,MAAO,SAAsBoF,GACS7D,SAAhC3G,KAAKo0H,eAAe5pH,KACtBxK,KAAKo0H,eAAe5pH,GAAUxK,KAAKwK,GAAQ81C,KAAKtgD,MAChDA,KAAKmgD,KAAKE,QAAQrgB,GAAG,aAAchgC,KAAKo0H,eAAe5pH,IACvDxK,KAAKmgD,KAAKE,QAAQ5H,KAAK,uBAI3B3uC,IAAK,mBACL1E,MAAO,SAA0BoF,GACK7D,SAAhC3G,KAAKo0H,eAAe5pH,KACtBxK,KAAKmgD,KAAKE,QAAQlgB,IAAI,aAAcngC,KAAKo0H,eAAe5pH,IACxDxK,KAAKmgD,KAAKE,QAAQ5H,KAAK,wBAChBz4C,MAAKo0H,eAAe5pH,OAW/BV,IAAK,OACL1E,MAAO,YACD,GAAIM,OAAOuC,UAAYjI,KAAK+uH,UAAY,MAE1C/uH,KAAKmgD,KAAKE,QAAQ5H,KAAK,OAASjxB,SAAU,MAC1CxnB,KAAK+uH,WAAY,GAAIrpH,OAAOuC,cAWhC6B,IAAK,gBACL1E,MAAO,WACL,IAAK,GAAI2vH,KAAe/0H,MAAKo0H,eACvBp0H,KAAKo0H,eAAehuH,eAAe2uH,KACrC/0H,KAAKmgD,KAAKE,QAAQlgB,IAAI,aAAcngC,KAAKo0H,eAAeW,IACxD/0H,KAAKmgD,KAAKE,QAAQ5H,KAAK,kBAG3Bz4C,MAAKo0H,qBAGPtqH,IAAK,UACL1E,MAAO,WACLpF,KAAKmgD,KAAK+8C,KAAK3zD,YAAYvnB,GAAKhiB,KAAK6D,QAAQ+sH,SAASC,MAAM7uG,KAG9DlY,IAAK,YACL1E,MAAO,WACLpF,KAAKmgD,KAAK+8C,KAAK3zD,YAAYvnB,GAAKhiB,KAAK6D,QAAQ+sH,SAASC,MAAM7uG,KAG9DlY,IAAK,YACL1E,MAAO,WACLpF,KAAKmgD,KAAK+8C,KAAK3zD,YAAY/K,GAAKx+B,KAAK6D,QAAQ+sH,SAASC,MAAMryF,KAG9D10B,IAAK,aACL1E,MAAO,WACLpF,KAAKmgD,KAAK+8C,KAAK3zD,YAAY/K,GAAKx+B,KAAK6D,QAAQ+sH,SAASC,MAAMryF,KAG9D10B,IAAK,UACL1E,MAAO,WACLpF,KAAKmgD,KAAK+8C,KAAK73F,OAAS,EAAIrF,KAAK6D,QAAQ+sH,SAASC,MAAMn/C,KACxD1xE,KAAKmgD,KAAKE,QAAQ5H,KAAK,QAAU/sB,UAAW,IAAKrmB,MAAOrF,KAAKmgD,KAAK+8C,KAAK73F,WAGzEyE,IAAK,WACL1E,MAAO,WACLpF,KAAKmgD,KAAK+8C,KAAK73F,OAAS,EAAIrF,KAAK6D,QAAQ+sH,SAASC,MAAMn/C,KACxD1xE,KAAKmgD,KAAKE,QAAQ5H,KAAK,QAAU/sB,UAAW,IAAKrmB,MAAOrF,KAAKmgD,KAAK+8C,KAAK73F,WAQzEyE,IAAK,4BACL1E,MAAO,WACL,GAAIyjD,GAAS7oD,IAES2G,UAAlB3G,KAAKiE,UACPjE,KAAKiE,SAAS87B,UAGZ//B,KAAK6D,QAAQ+sH,SAAS5/G,WAAY,IAChChR,KAAK6D,QAAQ+sH,SAASE,gBAAiB,EACzC9wH,KAAKiE,SAAWA,GAAW+gC,UAAW95B,OAAQF,gBAAgB,IAE9DhL,KAAKiE,SAAWA,GAAW+gC,UAAWhlC,KAAKqrC,OAAOD,MAAOpgC,gBAAgB,IAG3EhL,KAAKiE,SAAS+lE,QAEVhqE,KAAKq0H,aAAc,IACrBr0H,KAAKiE,SAASq8C,KAAK,KAAM,WACvBuI,EAAOgsE,aAAa,YACnB,WACH70H,KAAKiE,SAASq8C,KAAK,OAAQ,WACzBuI,EAAOgsE,aAAa,cACnB,WACH70H,KAAKiE,SAASq8C,KAAK,OAAQ,WACzBuI,EAAOgsE,aAAa,cACnB,WACH70H,KAAKiE,SAASq8C,KAAK,QAAS,WAC1BuI,EAAOgsE,aAAa,eACnB,WACH70H,KAAKiE,SAASq8C,KAAK,IAAK,WACtBuI,EAAOgsE,aAAa,YACnB,WACH70H,KAAKiE,SAASq8C,KAAK,OAAQ,WACzBuI,EAAOgsE,aAAa,YACnB,WACH70H,KAAKiE,SAASq8C,KAAK,OAAQ,WACzBuI,EAAOgsE,aAAa,aACnB,WACH70H,KAAKiE,SAASq8C,KAAK,IAAK,WACtBuI,EAAOgsE,aAAa,aACnB,WACH70H,KAAKiE,SAASq8C,KAAK,IAAK,WACtBuI,EAAOgsE,aAAa,aACnB,WACH70H,KAAKiE,SAASq8C,KAAK,IAAK,WACtBuI,EAAOgsE,aAAa,YACnB,WACH70H,KAAKiE,SAASq8C,KAAK,SAAU,WAC3BuI,EAAOgsE,aAAa,YACnB,WACH70H,KAAKiE,SAASq8C,KAAK,WAAY,WAC7BuI,EAAOgsE,aAAa,aACnB,WAEH70H,KAAKiE,SAASq8C,KAAK,KAAM,WACvBuI,EAAOmsE,iBAAiB,YACvB,SACHh1H,KAAKiE,SAASq8C,KAAK,OAAQ,WACzBuI,EAAOmsE,iBAAiB,cACvB,SACHh1H,KAAKiE,SAASq8C,KAAK,OAAQ,WACzBuI,EAAOmsE,iBAAiB,cACvB,SACHh1H,KAAKiE,SAASq8C,KAAK,QAAS,WAC1BuI,EAAOmsE,iBAAiB,eACvB,SACHh1H,KAAKiE,SAASq8C,KAAK,IAAK,WACtBuI,EAAOmsE,iBAAiB,YACvB,SACHh1H,KAAKiE,SAASq8C,KAAK,OAAQ,WACzBuI,EAAOmsE,iBAAiB,YACvB,SACHh1H,KAAKiE,SAASq8C,KAAK,OAAQ,WACzBuI,EAAOmsE,iBAAiB,aACvB,SACHh1H,KAAKiE,SAASq8C,KAAK,IAAK,WACtBuI,EAAOmsE,iBAAiB,aACvB,SACHh1H,KAAKiE,SAASq8C,KAAK,IAAK,WACtBuI,EAAOmsE,iBAAiB,aACvB,SACHh1H,KAAKiE,SAASq8C,KAAK,IAAK,WACtBuI,EAAOmsE,iBAAiB,YACvB,SACHh1H,KAAKiE,SAASq8C,KAAK,SAAU,WAC3BuI,EAAOmsE,iBAAiB,YACvB,SACHh1H,KAAKiE,SAASq8C,KAAK,WAAY,WAC7BuI,EAAOmsE,iBAAiB,aACvB,eAMJf,IAGTr0H,GAAAA,WAAkBq0H,GAId,SAASp0H,EAAQD,GAUrB,QAASolD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCANhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAc5hB+vE,EAAQ,WACV,QAASA,GAAMjwF,GACbggB,EAAgBhlD,KAAMi1H,GAEtBj1H,KAAKglC,UAAYA,EAEjBhlC,KAAKw+B,EAAI,EACTx+B,KAAKgiB,EAAI,EACThiB,KAAKyvC,QAAU,EACfzvC,KAAKkzE,QAAS,EAGdlzE,KAAKorC,MAAQpN,SAASM,cAAc,OACpCt+B,KAAKorC,MAAMliC,UAAY,sBACvBlJ,KAAKglC,UAAU9G,YAAYl+B,KAAKorC,OAuFlC,MA9EAga,GAAa6vE,IACXnrH,IAAK,cACL1E,MAAO,SAAqBo5B,EAAGxc,GAC7BhiB,KAAKw+B,EAAI9xB,SAAS8xB,GAClBx+B,KAAKgiB,EAAItV,SAASsV,MASpBlY,IAAK,UACL1E,MAAO,SAAiB65B,GAClBA,YAAmB2kD,UACrB5jF,KAAKorC,MAAMsE,UAAY,GACvB1vC,KAAKorC,MAAMlN,YAAYe,IAEvBj/B,KAAKorC,MAAMsE,UAAYzQ,KAU3Bn1B,IAAK,OACL1E,MAAO,SAAc8vH,GAKnB,GAJevuH,SAAXuuH,IACFA,GAAS,GAGPA,KAAW,EAAM,CACnB,GAAI71F,GAASr/B,KAAKorC,MAAMkF,aACpBlR,EAAQp/B,KAAKorC,MAAME,YACnB0U,EAAYhgD,KAAKorC,MAAM5/B,WAAW8kC,aAClCq2C,EAAW3mF,KAAKorC,MAAM5/B,WAAW8/B,YAEjCtiC,EAAMhJ,KAAKgiB,EAAIqd,CACfr2B,GAAMq2B,EAASr/B,KAAKyvC,QAAUuQ,IAChCh3C,EAAMg3C,EAAY3gB,EAASr/B,KAAKyvC,SAE9BzmC,EAAMhJ,KAAKyvC,UACbzmC,EAAMhJ,KAAKyvC,QAGb,IAAI3mC,GAAO9I,KAAKw+B,CACZ11B,GAAOs2B,EAAQp/B,KAAKyvC,QAAUk3C,IAChC79E,EAAO69E,EAAWvnD,EAAQp/B,KAAKyvC,SAE7B3mC,EAAO9I,KAAKyvC,UACd3mC,EAAO9I,KAAKyvC,SAGdzvC,KAAKorC,MAAMn8B,MAAMnG,KAAOA,EAAO,KAC/B9I,KAAKorC,MAAMn8B,MAAMjG,IAAMA,EAAM,KAC7BhJ,KAAKorC,MAAMn8B,MAAM0oE,WAAa,UAC9B33E,KAAKkzE,QAAS,MAEdlzE,MAAK67E,UAST/xE,IAAK,OACL1E,MAAO,WACLpF,KAAKkzE,QAAS,EACdlzE,KAAKorC,MAAMn8B,MAAM0oE,WAAa,aAI3Bs9C,IAGTr1H,GAAAA,WAAkBq1H,GAId,SAASp1H,EAAQD,EAASM,GAkB9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAhBhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBk/C,EAAQlkG,EAAoB,IAE5BmkG,EAAS/kD,EAAuB8kD,GAEhCwM,EAAQ1wG,EAAoB,IAE5B2wG,EAASvxD,EAAuBsxD,GAMhCjwG,EAAOT,EAAoB,GAE3Bi1H,EAAmB,WACrB,QAASA,GAAiBh1E,EAAM9U,GAC9B,GAAI8X,GAAQnjD,IAEZglD,GAAgBhlD,KAAMm1H,GAEtBn1H,KAAKmgD,KAAOA,EACZngD,KAAKqrC,OAASA,EACdrrC,KAAKqyH,cAAiBp2B,SAAWE,UACjCn8F,KAAKo1H,UAAan5B,SAAWE,UAE7Bn8F,KAAK6D,WACL7D,KAAK2/C,gBACHw5B,aAAa,EACbD,YAAY,EACZm8C,sBAAsB,EACtBC,qBAAqB,GAEvB30H,EAAKoG,OAAO/G,KAAK6D,QAAS7D,KAAK2/C,gBAE/B3/C,KAAKmgD,KAAKE,QAAQrgB,GAAG,eAAgB,WACnCmjB,EAAMoyE,oBAquBV,MAjuBAnwE,GAAa+vE,IACXrrH,IAAK,aACL1E,MAAO,SAAoBvB,GACzB,GAAgB8C,SAAZ9C,EAAuB,CACzB,GAAIuM,IAAU,cAAe,sBAAuB,aAAc,uBAClEzP,GAAK0G,oBAAoB+I,EAAQpQ,KAAK6D,QAASA,OAYnDiG,IAAK,gBACL1E,MAAO,SAAuB8lD,GAC5B,GAAI9C,IAAW,CACf,IAAIpoD,KAAK6D,QAAQq1E,cAAe,EAAM,CACpC,GAAI70E,GAAMrE,KAAKqiG,UAAUn3C,IAAYlrD,KAAKsiG,UAAUp3C,EAGpDlrD,MAAKggG,cAEOr5F,SAARtC,IACF+jD,EAAWpoD,KAAKoyH,aAAa/tH,IAE/BrE,KAAKmgD,KAAKE,QAAQ5H,KAAK,kBAEzB,MAAO2P,MAGTt+C,IAAK,0BACL1E,MAAO,SAAiC8lD,GACtC,GAAIsqE,IAAmB,CACvB,IAAIx1H,KAAK6D,QAAQq1E,cAAe,EAAM,CACpC,GAAI70E,GAAMrE,KAAKqiG,UAAUn3C,IAAYlrD,KAAKsiG,UAAUp3C,EAExCvkD,UAARtC,IACFmxH,GAAmB,EACfnxH,EAAImoH,gBAAiB,EACvBxsH,KAAKy1H,eAAepxH,GAEpBrE,KAAKoyH,aAAa/tH,GAGpBrE,KAAKmgD,KAAKE,QAAQ5H,KAAK,mBAG3B,MAAO+8E,MAGT1rH,IAAK,sBACL1E,MAAO,SAA6B00D,EAAW7uD,EAAOigD,EAAS41B,GAC7D,GAAI40C,GAAiBjvH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAEzFk0D,EAAa,MAEfA,GADE+6D,KAAmB,GACNz5B,SAAWE,UAEbn8F,KAAK8iD,eAEpB6X,EAAoB,SAClBg7D,KAAOn3F,EAAG0sB,EAAQ1sB,EAAGxc,EAAGkpC,EAAQlpC,GAChCqpB,OAAQrrC,KAAKqrC,OAAOk1D,YAAYr1C,IAElCyP,EAAkB,MAAI1vD,EAEDtE,SAAjBm6E,IACFnmB,EAA8B,kBAAImmB,GAEpC9gF,KAAKmgD,KAAKE,QAAQ5H,KAAKqhB,EAAWa,MAGpC7wD,IAAK,eACL1E,MAAO,SAAsBf,GAC3B,GAAIuxH,GAAiBnvH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmBzG,KAAK6D,QAAQwxH,qBAAuB5uH,UAAU,EAEzH,OAAYE,UAARtC,GACEA,YAAeggG,GAAAA,YACbuxB,KAAmB,GACrB51H,KAAK61H,sBAAsBxxH,GAG/BA,EAAI6jD,SACJloD,KAAK81H,gBAAgBzxH,IACd,IAEF,KAGTyF,IAAK,iBACL1E,MAAO,SAAwBf,GACzBA,EAAImoH,gBAAiB,IACvBnoH,EAAI+jD,UAAW,EACfpoD,KAAK+1H,qBAAqB1xH,OAY9ByF,IAAK,8BACL1E,MAAO,SAAqCX,GAG1C,IAAK,GAFD8uH,MACAt3B,EAAQj8F,KAAKmgD,KAAK87C,MACbp1F,EAAI,EAAGA,EAAI7G,KAAKmgD,KAAK+7C,YAAYx1F,OAAQG,IAAK,CACrD,GAAIg5F,GAAS7/F,KAAKmgD,KAAK+7C,YAAYr1F,EAC/Bo1F,GAAM4D,GAAQ2zB,kBAAkB/uH,IAClC8uH,EAAiB5rH,KAAKk4F,GAG1B,MAAO0zB,MAYTzpH,IAAK,2BACL1E,MAAO,SAAkC8lD,GACvC,GAAI8qE,GAAYh2H,KAAKqrC,OAAOk1D,YAAYr1C,EACxC,QACEpiD,KAAMktH,EAAUx3F,EAAI,EACpBx1B,IAAKgtH,EAAUh0G,EAAI,EACnBywB,MAAOujF,EAAUx3F,EAAI,EACrB0Q,OAAQ8mF,EAAUh0G,EAAI,MAY1BlY,IAAK,YACL1E,MAAO,SAAmB8lD,GACxB,GAAI+qE,GAAaxvH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,GAGpFyvH,EAAiBl2H,KAAK8zH,yBAAyB5oE,GAC/CqoE,EAAmBvzH,KAAKm2H,4BAA4BD,EAGxD,OAAI3C,GAAiB7sH,OAAS,EACxBuvH,KAAe,EACVj2H,KAAKmgD,KAAK87C,MAAMs3B,EAAiBA,EAAiB7sH,OAAS,IAE3D6sH,EAAiBA,EAAiB7sH,OAAS,GAGpD,UAYJoD,IAAK,2BACL1E,MAAO,SAAkCX,EAAQivH,GAE/C,IAAK,GADDv3B,GAAQn8F,KAAKmgD,KAAKg8C,MACbt1F,EAAI,EAAGA,EAAI7G,KAAKmgD,KAAKi8C,YAAY11F,OAAQG,IAAK,CACrD,GAAIi5F,GAAS9/F,KAAKmgD,KAAKi8C,YAAYv1F,EAC/Bs1F,GAAM2D,GAAQ0zB,kBAAkB/uH,IAClCivH,EAAiB/rH,KAAKm4F,OAa5Bh2F,IAAK,8BACL1E,MAAO,SAAqCX,GAC1C,GAAIivH,KAEJ,OADA1zH,MAAKo2H,yBAAyB3xH,EAAQivH,GAC/BA,KAYT5pH,IAAK,YACL1E,MAAO,SAAmB8lD,GACxB,GAAImrE,GAAa5vH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,GAEpFyvH,EAAiBl2H,KAAK8zH,yBAAyB5oE,GAC/CwoE,EAAmB1zH,KAAKs2H,4BAA4BJ,EAExD,OAAIxC,GAAiBhtH,OAAS,EACxB2vH,KAAe,EACVr2H,KAAKmgD,KAAKg8C,MAAMu3B,EAAiBA,EAAiBhtH,OAAS,IAE3DgtH,EAAiBA,EAAiBhtH,OAAS,GAGpD,UAYJoD,IAAK,kBACL1E,MAAO,SAAyBf,GAC1BA,YAAeggG,GAAAA,WACjBrkG,KAAKqyH,aAAap2B,MAAM53F,EAAIhE,IAAMgE,EAElCrE,KAAKqyH,aAAal2B,MAAM93F,EAAIhE,IAAMgE,KAYtCyF,IAAK,cACL1E,MAAO,SAAqBf,GACtBA,YAAeggG,GAAAA,WACjBrkG,KAAKo1H,SAASn5B,MAAM53F,EAAIhE,IAAMgE,EAE9BrE,KAAKo1H,SAASj5B,MAAM93F,EAAIhE,IAAMgE,KAYlCyF,IAAK,uBACL1E,MAAO,SAA8Bf,GAC/BA,YAAeggG,GAAAA,kBACVrkG,MAAKqyH,aAAap2B,MAAM53F,EAAIhE,IACnCL,KAAKu2H,wBAAwBlyH,UAEtBrE,MAAKqyH,aAAal2B,MAAM93F,EAAIhE,OASvCyJ,IAAK,cACL1E,MAAO,WACL,IAAK,GAAIy6F,KAAU7/F,MAAKqyH,aAAap2B,MAC/Bj8F,KAAKqyH,aAAap2B,MAAM71F,eAAey5F,IACzC7/F,KAAKqyH,aAAap2B,MAAM4D,GAAQ/jB,UAGpC,KAAK,GAAIgkB,KAAU9/F,MAAKqyH,aAAal2B,MAC/Bn8F,KAAKqyH,aAAal2B,MAAM/1F,eAAe05F,IACzC9/F,KAAKqyH,aAAal2B,MAAM2D,GAAQhkB,UAIpC97E,MAAKqyH,cAAiBp2B,SAAWE,aAWnCryF,IAAK,wBACL1E,MAAO,WACL,GAAIytB,GAAQ,CACZ,KAAK,GAAIgtE,KAAU7/F,MAAKqyH,aAAap2B,MAC/Bj8F,KAAKqyH,aAAap2B,MAAM71F,eAAey5F,KACzChtE,GAAS,EAGb,OAAOA,MAWT/oB,IAAK,mBACL1E,MAAO,WACL,IAAK,GAAIy6F,KAAU7/F,MAAKqyH,aAAap2B,MACnC,GAAIj8F,KAAKqyH,aAAap2B,MAAM71F,eAAey5F,GACzC,MAAO7/F,MAAKqyH,aAAap2B,MAAM4D,MAcrC/1F,IAAK,mBACL1E,MAAO,WACL,IAAK,GAAI06F,KAAU9/F,MAAKqyH,aAAal2B,MACnC,GAAIn8F,KAAKqyH,aAAal2B,MAAM/1F,eAAe05F,GACzC,MAAO9/F,MAAKqyH,aAAal2B,MAAM2D,MAcrCh2F,IAAK,wBACL1E,MAAO,WACL,GAAIytB,GAAQ,CACZ,KAAK,GAAIitE,KAAU9/F,MAAKqyH,aAAal2B,MAC/Bn8F,KAAKqyH,aAAal2B,MAAM/1F,eAAe05F,KACzCjtE,GAAS,EAGb,OAAOA,MAWT/oB,IAAK,0BACL1E,MAAO,WACL,GAAIytB,GAAQ,CACZ,KAAK,GAAIgtE,KAAU7/F,MAAKqyH,aAAap2B,MAC/Bj8F,KAAKqyH,aAAap2B,MAAM71F,eAAey5F,KACzChtE,GAAS,EAGb,KAAK,GAAIitE,KAAU9/F,MAAKqyH,aAAal2B,MAC/Bn8F,KAAKqyH,aAAal2B,MAAM/1F,eAAe05F,KACzCjtE,GAAS,EAGb,OAAOA,MAWT/oB,IAAK,oBACL1E,MAAO,WACL,IAAK,GAAIy6F,KAAU7/F,MAAKqyH,aAAap2B,MACnC,GAAIj8F,KAAKqyH,aAAap2B,MAAM71F,eAAey5F,GACzC,OAAO,CAGX,KAAK,GAAIC,KAAU9/F,MAAKqyH,aAAal2B,MACnC,GAAIn8F,KAAKqyH,aAAal2B,MAAM/1F,eAAe05F,GACzC,OAAO,CAGX,QAAO,KAWTh2F,IAAK,sBACL1E,MAAO,WACL,IAAK,GAAIy6F,KAAU7/F,MAAKqyH,aAAap2B,MACnC,GAAIj8F,KAAKqyH,aAAap2B,MAAM71F,eAAey5F,IACrC7/F,KAAKqyH,aAAap2B,MAAM4D,GAAQ22B,YAAc,EAChD,OAAO,CAIb,QAAO,KAWT1sH,IAAK,wBACL1E,MAAO,SAA+Bo3B,GACpC,IAAK,GAAI31B,GAAI,EAAGA,EAAI21B,EAAK2/D,MAAMz1F,OAAQG,IAAK,CAC1C,GAAI07F,GAAO/lE,EAAK2/D,MAAMt1F,EACtB07F,GAAKr6C,SACLloD,KAAK81H,gBAAgBvzB,OAYzBz4F,IAAK,uBACL1E,MAAO,SAA8Bo3B,GACnC,IAAK,GAAI31B,GAAI,EAAGA,EAAI21B,EAAK2/D,MAAMz1F,OAAQG,IAAK,CAC1C,GAAI07F,GAAO/lE,EAAK2/D,MAAMt1F,EACtB07F,GAAKh0F,OAAQ,EACbvO,KAAKy2H,YAAYl0B,OAYrBz4F,IAAK,0BACL1E,MAAO,SAAiCo3B,GACtC,IAAK,GAAI31B,GAAI,EAAGA,EAAI21B,EAAK2/D,MAAMz1F,OAAQG,IAAK,CAC1C,GAAI07F,GAAO/lE,EAAK2/D,MAAMt1F,EACtB07F,GAAKzmB,WACL97E,KAAK+1H,qBAAqBxzB,OAa9Bz4F,IAAK,aACL1E,MAAO,SAAoBX,GACrBA,EAAO8J,SAAU,IACnB9J,EAAO8J,OAAQ,EACX9J,YAAkB4/F,GAAAA,WACpBrkG,KAAKmgD,KAAKE,QAAQ5H,KAAK,YAAcjc,KAAM/3B,EAAOpE,KAElDL,KAAKmgD,KAAKE,QAAQ5H,KAAK,YAAc8pD,KAAM99F,EAAOpE,SAcxDyJ,IAAK,cACL1E,MAAO,SAAqBX,GAC1B,GAAIiyH,IAAe,CAEnB,KAAK,GAAI72B,KAAU7/F,MAAKo1H,SAASn5B,MAC3Bj8F,KAAKo1H,SAASn5B,MAAM71F,eAAey5F,KACtBl5F,SAAXlC,GAAwBA,YAAkB4/F,GAAAA,YAAkB5/F,EAAOpE,IAAMw/F,GAAUp7F,YAAkBosG,GAAAA,cACvG7wG,KAAK22H,WAAW32H,KAAKo1H,SAASn5B,MAAM4D,UAC7B7/F,MAAKo1H,SAASn5B,MAAM4D,GAC3B62B,GAAe,EAMrB,KAAK,GAAI52B,KAAU9/F,MAAKo1H,SAASj5B,MAC3Bn8F,KAAKo1H,SAASj5B,MAAM/1F,eAAe05F,KAGjC42B,KAAiB,GACnB12H,KAAKo1H,SAASj5B,MAAM2D,GAAQvxF,OAAQ,QAC7BvO,MAAKo1H,SAASj5B,MAAM2D,IAGTn5F,SAAXlC,IACLzE,KAAK22H,WAAW32H,KAAKo1H,SAASj5B,MAAM2D,UAC7B9/F,MAAKo1H,SAASj5B,MAAM2D,GAC3B42B,GAAe,GAKR/vH,UAAXlC,IACEA,EAAO8J,SAAU,IACnB9J,EAAO8J,OAAQ,EACfvO,KAAKy2H,YAAYhyH,GACjBiyH,GAAe,EACXjyH,YAAkB4/F,GAAAA,WACpBrkG,KAAKmgD,KAAKE,QAAQ5H,KAAK,aAAejc,KAAM/3B,EAAOpE,KAEnDL,KAAKmgD,KAAKE,QAAQ5H,KAAK,aAAe8pD,KAAM99F,EAAOpE,MAGnDoE,YAAkB4/F,GAAAA,YAAkBrkG,KAAK6D,QAAQyxH,uBAAwB,GAC3Et1H,KAAK42H,qBAAqBnyH,IAI1BiyH,KAAiB,GACnB12H,KAAKmgD,KAAKE,QAAQ5H,KAAK,qBAW3B3uC,IAAK,eACL1E,MAAO,WACL,GAAIq7G,GAAUzgH,KAAKmiG,mBACf00B,EAAU72H,KAAKoiG,kBACnB,QAASnG,MAAOwkB,EAAStkB,MAAO06B,MAWlC/sH,IAAK,mBACL1E,MAAO,WACL,GAAI0xH,KACJ,IAAI92H,KAAK6D,QAAQq1E,cAAe,EAC9B,IAAK,GAAI2mB,KAAU7/F,MAAKqyH,aAAap2B,MAC/Bj8F,KAAKqyH,aAAap2B,MAAM71F,eAAey5F,IACzCi3B,EAAQnvH,KAAK3H,KAAKqyH,aAAap2B,MAAM4D,GAAQx/F,GAInD,OAAOy2H,MAWThtH,IAAK,mBACL1E,MAAO,WACL,GAAI0xH,KACJ,IAAI92H,KAAK6D,QAAQq1E,cAAe,EAC9B,IAAK,GAAI4mB,KAAU9/F,MAAKqyH,aAAal2B,MAC/Bn8F,KAAKqyH,aAAal2B,MAAM/1F,eAAe05F,IACzCg3B,EAAQnvH,KAAK3H,KAAKqyH,aAAal2B,MAAM2D,GAAQz/F,GAInD,OAAOy2H,MAUThtH,IAAK,eACL1E,MAAO,SAAsBy9C,GAC3B,GAAIh/C,GAAU4C,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,MAAwBA,UAAU,GAE/EI,EAAI,OACJxG,EAAK,MAET,KAAKwiD,IAAcA,EAAUo5C,QAAUp5C,EAAUs5C,MAAO,KAAM,gEAK9D,KAHIt4F,EAAQm8F,aAAuCr5F,SAAxB9C,EAAQm8F,cACjChgG,KAAKggG,cAEHn9C,EAAUo5C,MACZ,IAAKp1F,EAAI,EAAGA,EAAIg8C,EAAUo5C,MAAMv1F,OAAQG,IAAK,CAC3CxG,EAAKwiD,EAAUo5C,MAAMp1F,EAErB,IAAI21B,GAAOx8B,KAAKmgD,KAAK87C,MAAM57F,EAC3B,KAAKm8B,EACH,KAAM,IAAIu6F,YAAW,iBAAmB12H,EAAK,cAG/CL,MAAKoyH,aAAa51F,EAAM34B,EAAQ+xH,gBAIpC,GAAI/yE,EAAUs5C,MACZ,IAAKt1F,EAAI,EAAGA,EAAIg8C,EAAUs5C,MAAMz1F,OAAQG,IAAK,CAC3CxG,EAAKwiD,EAAUs5C,MAAMt1F,EAErB,IAAI07F,GAAOviG,KAAKmgD,KAAKg8C,MAAM97F,EAC3B,KAAKkiG,EACH,KAAM,IAAIw0B,YAAW,iBAAmB12H,EAAK,cAE/CL,MAAKoyH,aAAa7vB,GAGtBviG,KAAKmgD,KAAKE,QAAQ5H,KAAK,qBAWzB3uC,IAAK,cACL1E,MAAO,SAAqBy9C,GAC1B,GAAI+yE,GAAiBnvH,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAOA,UAAU,EAE5F,KAAKo8C,GAAkCl8C,SAArBk8C,EAAUn8C,OAAsB,KAAM,qCAExD1G,MAAK+iD,cAAek5C,MAAOp5C,IAAe+yE,eAAgBA,OAU5D9rH,IAAK,cACL1E,MAAO,SAAqBy9C,GAC1B,IAAKA,GAAkCl8C,SAArBk8C,EAAUn8C,OAAsB,KAAM,qCAExD1G,MAAK+iD,cAAeo5C,MAAOt5C,OAS7B/4C,IAAK,kBACL1E,MAAO,WACL,IAAK,GAAIy6F,KAAU7/F,MAAKqyH,aAAap2B,MAC/Bj8F,KAAKqyH,aAAap2B,MAAM71F,eAAey5F,KACpC7/F,KAAKmgD,KAAK87C,MAAM71F,eAAey5F,UAC3B7/F,MAAKqyH,aAAap2B,MAAM4D,GAIrC,KAAK,GAAIC,KAAU9/F,MAAKqyH,aAAal2B,MAC/Bn8F,KAAKqyH,aAAal2B,MAAM/1F,eAAe05F,KACpC9/F,KAAKmgD,KAAKg8C,MAAM/1F,eAAe05F,UAC3B9/F,MAAKqyH,aAAal2B,MAAM2D,QAOlCq1B,IAGTv1H,GAAAA,WAAkBu1H,GAId,SAASt1H,EAAQD,EAASM,GAkB9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAhBhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAI6kG,GAAiB,WAAc,QAASC,GAAc3hG,EAAK1B,GAAK,GAAIsjG,MAAeC,GAAK,EAAUv1F,GAAK,EAAWw1F,EAAK1jG,MAAW,KAAM,IAAK,GAAiC2jG,GAA7B50F,EAAKnN,EAAIpE,OAAOC,cAAmBgmG,GAAME,EAAK50F,EAAGqD,QAAQs3D,QAAoB85B,EAAKxiG,KAAK2iG,EAAGllG,QAAYyB,GAAKsjG,EAAKzjG,SAAWG,GAA3DujG,GAAK,IAAoE,MAAO7hD,GAAO1zC,GAAK,EAAMw1F,EAAK9hD,EAAO,QAAU,KAAW6hD,GAAM10F,EAAG,WAAWA,EAAG,YAAe,QAAU,GAAIb,EAAI,KAAMw1F,IAAQ,MAAOF,GAAQ,MAAO,UAAU5hG,EAAK1B,GAAK,GAAIK,MAAMC,QAAQoB,GAAQ,MAAOA,EAAY,IAAIpE,OAAOC,WAAYmD,QAAOgB,GAAQ,MAAO2hG,GAAc3hG,EAAK1B,EAAa,MAAM,IAAIS,WAAU,4DAEllBpD,EAA4B,kBAAXC,SAAoD,gBAApBA,QAAOC,SAAwB,SAAUC,GAAO,aAAcA,IAAS,SAAUA,GAAO,MAAOA,IAAyB,kBAAXF,SAAyBE,EAAIC,cAAgBH,OAAS,eAAkBE,IAEtO+gD,EAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAE5hBghE,EAAehmH,EAAoB,KAEnCimH,EAAgB7mE,EAAuB4mE,GAMvCvlH,EAAOT,EAAoB,GAE3B82H,EAAe,WACjB,QAASA,GAAa72E,GACpB6E,EAAgBhlD,KAAMg3H,GAEtBh3H,KAAKmgD,KAAOA,EAEZngD,KAAKi3H,kBAAoB3xH,KAAKgkB,MAAsB,IAAhBhkB,KAAKs3B,UACzC58B,KAAKgiH,WAAahiH,KAAKi3H,kBACvBj3H,KAAKk3H,YAAa,EAClBl3H,KAAK6D,WACL7D,KAAKm3H,eAAkB5sE,YAEvBvqD,KAAK2/C,gBACHqiE,WAAYr7G,OACZywH,gBAAgB,EAChBC,cACErmH,SAAS,EACTsmH,gBAAiB,IACjBC,YAAa,IACbC,YAAa,IACbC,eAAe,EACfC,kBAAkB,EAClBC,sBAAsB,EACtBjsG,UAAW,KACXksG,WAAY,YAGhBj3H,EAAKoG,OAAO/G,KAAK6D,QAAS7D,KAAK2/C,gBAC/B3/C,KAAKm9F,qBA45CP,MAz5CA/3C,GAAa4xE,IACXltH,IAAK,qBACL1E,MAAO,WACL,GAAI+9C,GAAQnjD,IAEZA,MAAKmgD,KAAKE,QAAQrgB,GAAG,eAAgB,WACnCmjB,EAAM00E,4BAER73H,KAAKmgD,KAAKE,QAAQrgB,GAAG,cAAe,WAClCmjB,EAAM20E,kBAER93H,KAAKmgD,KAAKE,QAAQrgB,GAAG,2BAA4B,WAC/CmjB,EAAM00E,+BAIV/tH,IAAK,aACL1E,MAAO,SAAoBvB,EAASL,GAClC,GAAgBmD,SAAZ9C,EAAuB,CACzB,GAAIk0H,GAAwB/3H,KAAK6D,QAAQwzH,aAAarmH,OAOtD,IANArQ,EAAK0G,qBAAqB,aAAc,kBAAmBrH,KAAK6D,QAASA,GACzElD,EAAKkQ,aAAa7Q,KAAK6D,QAASA,EAAS,gBACd8C,SAAvB9C,EAAQm+G,aACVhiH,KAAKi3H,kBAAoBpzH,EAAQm+G,YAG/BhiH,KAAK6D,QAAQwzH,aAAarmH,WAAY,EAmBxC,MAlBI+mH,MAA0B,GAE5B/3H,KAAKmgD,KAAKE,QAAQ5H,KAAK,WAAW,GAIQ,OAAxCz4C,KAAK6D,QAAQwzH,aAAa3rG,WAA8D,OAAxC1rB,KAAK6D,QAAQwzH,aAAa3rG,UACxE1rB,KAAK6D,QAAQwzH,aAAaC,gBAAkB,IAC9Ct3H,KAAK6D,QAAQwzH,aAAaC,iBAAmB,IAG3Ct3H,KAAK6D,QAAQwzH,aAAaC,gBAAkB,IAC9Ct3H,KAAK6D,QAAQwzH,aAAaC,iBAAmB,IAIjDt3H,KAAKmgD,KAAKE,QAAQ5H,KAAK,4BAEhBz4C,KAAKg4H,qCAAqCx0H,EAEjD,IAAIu0H,KAA0B,EAG5B,MADA/3H,MAAKmgD,KAAKE,QAAQ5H,KAAK,WAChB93C,EAAK6G,WAAWhE,EAAYxD,KAAKm3H,eAI9C,MAAO3zH,MAGTsG,IAAK,uCACL1E,MAAO,SAA8C5B,GACnD,GAAIxD,KAAK6D,QAAQwzH,aAAarmH,WAAY,EAAM,CAEnBrK,SAAvBnD,EAAW+mD,SAAyB/mD,EAAW+mD,WAAY,GAC7D/mD,EAAW+mD,SACTv5C,QAAgDrK,SAAvC3G,KAAKm3H,cAAc5sE,QAAQv5C,SAAwB,EAAOhR,KAAKm3H,cAAc5sE,QAAQv5C;AAC9Fw5C,OAAQ,yBAEVxqD,KAAKm3H,cAAc5sE,QAAQv5C,QAAiDrK,SAAvC3G,KAAKm3H,cAAc5sE,QAAQv5C,SAAwB,EAAOhR,KAAKm3H,cAAc5sE,QAAQv5C,QAC1HhR,KAAKm3H,cAAc5sE,QAAQC,OAASxqD,KAAKm3H,cAAc5sE,QAAQC,QAAU,aAChC,WAAhCtmD,EAAQV,EAAW+mD,UAC5BvqD,KAAKm3H,cAAc5sE,QAAQv5C,QAAyCrK,SAA/BnD,EAAW+mD,QAAQv5C,SAAwB,EAAOxN,EAAW+mD,QAAQv5C,QAC1GhR,KAAKm3H,cAAc5sE,QAAQC,OAAShnD,EAAW+mD,QAAQC,QAAU,YACjEhnD,EAAW+mD,QAAQC,OAAS,yBACnBhnD,EAAW+mD,WAAY,IAChCvqD,KAAKm3H,cAAc5sE,QAAQC,OAAS,YACpChnD,EAAW+mD,SAAYC,OAAQ,yBAIjC,IAAIziD,GAAO,YACiC,QAAxC/H,KAAK6D,QAAQwzH,aAAa3rG,WAA8D,OAAxC1rB,KAAK6D,QAAQwzH,aAAa3rG,YAC5E3jB,EAAO,YAIgBpB,SAArBnD,EAAW24F,OACbn8F,KAAKm3H,cAAch7B,OAAUmV,QAAUtgG,SAAS,EAAMjJ,KAAM,YAC5DvE,EAAW24F,OAAUmV,QAAQ,IACQ3qG,SAA5BnD,EAAW24F,MAAMmV,QAC1BtxG,KAAKm3H,cAAch7B,OAAUmV,QAAUtgG,SAAS,EAAMjJ,KAAM,YAC5DvE,EAAW24F,MAAMmV,QAAS,GAEa,iBAA5B9tG,GAAW24F,MAAMmV,QAC1BtxG,KAAKm3H,cAAch7B,OAAUmV,OAAQ9tG,EAAW24F,MAAMmV,QACtD9tG,EAAW24F,MAAMmV,QAAWtgG,QAASxN,EAAW24F,MAAMmV,OAAQvpG,KAAMA,KAG/BpB,SAAjCnD,EAAW24F,MAAMmV,OAAOvpG,MAAuD,YAAjCvE,EAAW24F,MAAMmV,OAAOvpG,OACxEA,EAAOvE,EAAW24F,MAAMmV,OAAOvpG,MAGjC/H,KAAKm3H,cAAch7B,OACjBmV,OAA4C3qG,SAApCnD,EAAW24F,MAAMmV,OAAOtgG,SAAwB,EAAOxN,EAAW24F,MAAMmV,OAAOtgG,QACvFjJ,KAAuCpB,SAAjCnD,EAAW24F,MAAMmV,OAAOvpG,KAAqB,UAAYvE,EAAW24F,MAAMmV,OAAOvpG,KACvFypG,UAAiD7qG,SAAtCnD,EAAW24F,MAAMmV,OAAOE,UAA0B,GAAMhuG,EAAW24F,MAAMmV,OAAOE,UAC3FD,eAA2D5qG,SAA3CnD,EAAW24F,MAAMmV,OAAOC,gBAA+B,EAAQ/tG,EAAW24F,MAAMmV,OAAOC,gBAEzG/tG,EAAW24F,MAAMmV,QACftgG,QAA6CrK,SAApCnD,EAAW24F,MAAMmV,OAAOtgG,SAAwB,EAAOxN,EAAW24F,MAAMmV,OAAOtgG,QACxFjJ,KAAMA,EACNypG,UAAiD7qG,SAAtCnD,EAAW24F,MAAMmV,OAAOE,UAA0B,GAAMhuG,EAAW24F,MAAMmV,OAAOE,UAC3FD,eAA2D5qG,SAA3CnD,EAAW24F,MAAMmV,OAAOC,gBAA+B,EAAQ/tG,EAAW24F,MAAMmV,OAAOC,iBAM7GvxG,KAAKmgD,KAAKE,QAAQ5H,KAAK,6BAA8B1wC,GAGvD,MAAOvE,MAGTsG,IAAK,eACL1E,MAAO,WACL,GAAIo5B,GAAkC,IAA9Bl5B,KAAK4kC,IAAIlqC,KAAKgiH,aACtB,OAAOxjF,GAAIl5B,KAAKqK,MAAM6uB,MAGxB10B,IAAK,oBACL1E,MAAO,SAA2B8kH,GAChC,GAAIlqH,KAAK6D,QAAQwzH,aAAarmH,WAAY,EAAM,CAC9ChR,KAAKgiH,WAAahiH,KAAKi3H,iBACvB,KAAK,GAAIpwH,GAAI,EAAGA,EAAIqjH,EAAWxjH,OAAQG,IAAK,CAC1C,GAAI21B,GAAO0tF,EAAWrjH,GAClB4vC,EAAS,EAAWyzE,EAAWxjH,OAAS,GACxC2xD,EAAQ,EAAI/yD,KAAKqxC,GAAK32C,KAAKkkH,cAChBv9G,UAAX61B,EAAKgC,IACPhC,EAAKgC,EAAIiY,EAASnxC,KAAK+kC,IAAIguB,IAEd1xD,SAAX61B,EAAKxa,IACPwa,EAAKxa,EAAIy0B,EAASnxC,KAAK4kC,IAAImuB,SAYnCvuD,IAAK,gBACL1E,MAAO,WACL,GAAIpF,KAAK6D,QAAQwzH,aAAarmH,WAAY,GAAQhR,KAAK6D,QAAQuzH,kBAAmB,EAAM,CAItF,IAAK,GADDlI,GAAkB,EACbroH,EAAI,EAAGA,EAAI7G,KAAKmgD,KAAK+7C,YAAYx1F,OAAQG,IAAK,CACrD,GAAI21B,GAAOx8B,KAAKmgD,KAAK87C,MAAMj8F,KAAKmgD,KAAK+7C,YAAYr1F,GAC7C21B,GAAK2sE,sBAAuB,IAC9B+lB,GAAmB,GAKvB,GAAIA,EAAkB,GAAMlvH,KAAKmgD,KAAK+7C,YAAYx1F,OAAQ,CACxD,GAAIuxH,GAAa,GACbhzB,EAAQ,EACRizB,EAAmB,GAEvB,IAAIl4H,KAAKmgD,KAAK+7C,YAAYx1F,OAASwxH,EAAkB,CAEnD,IADA,GAAIC,GAAcn4H,KAAKmgD,KAAK+7C,YAAYx1F,OACjC1G,KAAKmgD,KAAK+7C,YAAYx1F,OAASwxH,GAAkB,CAEtDjzB,GAAS,CACT,IAAImzB,GAASp4H,KAAKmgD,KAAK+7C,YAAYx1F,MAE/Bu+F,GAAQ,IAAM,EAChBjlG,KAAKmgD,KAAKlgD,QAAQi+F,WAAWm6B,iBAE7Br4H,KAAKmgD,KAAKlgD,QAAQi+F,WAAW6C,iBAE/B,IAAIu3B,GAAQt4H,KAAKmgD,KAAK+7C,YAAYx1F,MAClC,IAAI0xH,GAAUE,GAASrzB,EAAQ,IAAM,GAAKA,EAAQgzB,EAIhD,MAHAj4H,MAAKu4H,gBACLv4H,KAAKmgD,KAAKE,QAAQ5H,KAAK,qBACvBlhC,SAAQihH,KAAK,gJAOjBx4H,KAAKmgD,KAAKlgD,QAAQw4H,YAAY74F,YAAa4+E,aAAcl5G,KAAKJ,IAAI,IAAK,EAAIizH,KAI7En4H,KAAKmgD,KAAKlgD,QAAQw4H,YAAYpX,MAAMrhH,KAAKmgD,KAAK+7C,YAAal8F,KAAKmgD,KAAKi8C,aAAa,GAGlFp8F,KAAK04H,gBAIL,KAAK,GADDnwG,GAAS,GACJ7S,EAAK,EAAGA,EAAK1V,KAAKmgD,KAAK+7C,YAAYx1F,OAAQgP,IAClD1V,KAAKmgD,KAAK87C,MAAMj8F,KAAKmgD,KAAK+7C,YAAYxmF,IAAK8oB,IAAM,GAAMx+B,KAAKkkH,gBAAkB37F,EAC9EvoB,KAAKmgD,KAAK87C,MAAMj8F,KAAKmgD,KAAK+7C,YAAYxmF,IAAKsM,IAAM,GAAMhiB,KAAKkkH,gBAAkB37F,CAIhFvoB,MAAKu4H,gBAGLv4H,KAAKmgD,KAAKE,QAAQ5H,KAAK,+BAW7B3uC,IAAK,iBACL1E,MAAO,WAGL,IAAK,GAFD87C,GAAQilE,EAAAA,WAAsBwS,aAAa34H,KAAKmgD,KAAK87C,MAAOj8F,KAAKmgD,KAAK+7C,aACtEjlD,EAASkvE,EAAAA,WAAsBoJ,WAAWruE,GACrCr6C,EAAI,EAAGA,EAAI7G,KAAKmgD,KAAK+7C,YAAYx1F,OAAQG,IAChD7G,KAAKmgD,KAAK87C,MAAMj8F,KAAKmgD,KAAK+7C,YAAYr1F,IAAI23B,GAAKyY,EAAOzY,EACtDx+B,KAAKmgD,KAAK87C,MAAMj8F,KAAKmgD,KAAK+7C,YAAYr1F,IAAImb,GAAKi1B,EAAOj1B,KAI1DlY,IAAK,gBACL1E,MAAO,WAEL,IADA,GAAIwzH,IAAkB,EACfA,KAAoB,GAAM,CAC/BA,GAAkB,CAClB,KAAK,GAAI/xH,GAAI,EAAGA,EAAI7G,KAAKmgD,KAAK+7C,YAAYx1F,OAAQG,IAC5C7G,KAAKmgD,KAAK87C,MAAMj8F,KAAKmgD,KAAK+7C,YAAYr1F,IAAI45F,aAAc,IAC1Dm4B,GAAkB,EAClB54H,KAAKmgD,KAAKlgD,QAAQi+F,WAAWwC,YAAY1gG,KAAKmgD,KAAK+7C,YAAYr1F,OAAQ,GAGvE+xH,MAAoB,GACtB54H,KAAKmgD,KAAKE,QAAQ5H,KAAK,oBAK7B3uC,IAAK,UACL1E,MAAO,WACL,MAAOpF,MAAKi3H,qBAWdntH,IAAK,0BACL1E,MAAO,WACL,GAAIpF,KAAK6D,QAAQwzH,aAAarmH,WAAY,GAAQhR,KAAKmgD,KAAK+7C,YAAYx1F,OAAS,EAAG,CAElF,GAAI81B,GAAO,OACPqjE,EAAS,OACTg5B,GAAe,EACfC,GAAmB,EACnBC,GAAiB,CACrB/4H,MAAKg5H,sBACLh5H,KAAKi5H,mBACLj5H,KAAKk5H,iCACLl5H,KAAKm5H,+BACLn5H,KAAKo5H,qBACLp5H,KAAKq5H,UAAY,GAEjBr5H,KAAKs5H,wBACLt5H,KAAKu5H,qBACLv5H,KAAKw5H,+BAEL,KAAK35B,IAAU7/F,MAAKmgD,KAAK87C,MACnBj8F,KAAKmgD,KAAK87C,MAAM71F,eAAey5F,KACjCrjE,EAAOx8B,KAAKmgD,KAAK87C,MAAM4D,GACAl5F,SAAnB61B,EAAK34B,QAAQ26B,GAAsC73B,SAAnB61B,EAAK34B,QAAQme,IAC/C82G,GAAmB,GAEMnyH,SAAvB61B,EAAK34B,QAAQohG,OACf4zB,GAAe,EACf74H,KAAKg5H,mBAAmBn5B,GAAUrjE,EAAK34B,QAAQohG,OAE/C8zB,GAAiB,EAMvB,IAAIA,KAAmB,GAAQF,KAAiB,EAC9C,KAAM,IAAIzxH,OAAM,wHAIZ2xH,MAAmB,IACwB,YAAzC/4H,KAAK6D,QAAQwzH,aAAaO,WAC5B53H,KAAKy5H,4BAC6C,aAAzCz5H,KAAK6D,QAAQwzH,aAAaO,WACnC53H,KAAK05H,2BAC6C,WAAzC15H,KAAK6D,QAAQwzH,aAAaO,YACnC53H,KAAK25H,iCAKT,KAAK,GAAIl9F,KAAWz8B,MAAKmgD,KAAK87C,MACxBj8F,KAAKmgD,KAAK87C,MAAM71F,eAAeq2B,IACQ91B,SAArC3G,KAAKg5H,mBAAmBv8F,KAC1Bz8B,KAAKg5H,mBAAmBv8F,GAAW,EAKzC,IAAIm9F,GAAe55H,KAAK65H,kBAGxB75H,MAAK85H,eAGL95H,KAAK+5H,uBAAuBH,GAG5B55H,KAAKg6H,qBAGLh6H,KAAK04H,qBAUX5uH,IAAK,qBACL1E,MAAO,WACL,GAAIwiD,GAAS5nD,KAGTi6H,GAAgB,EAChBC,KAGAC,EAAa,WAEf,IAAK,GADDC,GAAYC,IACPxzH,EAAI,EAAGA,EAAIuzH,EAAU1zH,OAAS,EAAGG,IAAK,CAC7C,GAAIoiB,GAAOmxG,EAAUvzH,GAAG3B,IAAMk1H,EAAUvzH,EAAI,GAAG5B,GAC/Cq1H,GAAUzzH,EAAI,EAAGoiB,EAAO2+B,EAAO/jD,QAAQwzH,aAAaG,eAKpD8C,EAAY,SAAmB/wH,EAAOgf,GACxC,IAAK,GAAIs3E,KAAUj4C,GAAOwxE,kBACxB,GAAIxxE,EAAOwxE,kBAAkBhzH,eAAey5F,IACtCj4C,EAAOwxE,kBAAkBv5B,KAAYt2F,EAAO,CAC9C,GAAIizB,GAAOorB,EAAOzH,KAAK87C,MAAM4D,GACzB1oE,EAAMywB,EAAO2yE,yBAAyB/9F,EAC1CorB,GAAO4yE,yBAAyBh+F,EAAMrF,EAAM5O,EAAQ5hB,QAAW,KAOnE8zH,EAAc,SAAqBlxH,GACrC,GAAItE,GAAM,IACNC,EAAM,IACV,KAAK,GAAI26F,KAAUj4C,GAAOwxE,kBACxB,GAAIxxE,EAAOwxE,kBAAkBhzH,eAAey5F,IACtCj4C,EAAOwxE,kBAAkBv5B,KAAYt2F,EAAO,CAC9C,GAAI4tB,GAAMywB,EAAO2yE,yBAAyB3yE,EAAOzH,KAAK87C,MAAM4D,GAC5D56F,GAAMK,KAAKL,IAAIkyB,EAAKlyB,GACpBC,EAAMI,KAAKJ,IAAIiyB,EAAKjyB,GAI1B,OAASD,IAAKA,EAAKC,IAAKA,IAItBm1H,EAAe,WAEjB,IAAK,GADDK,MACK7zH,EAAI,EAAGA,GAAK+gD,EAAOyxE,UAAWxyH,IACrC6zH,EAAW/yH,KAAK8yH,EAAY5zH,GAE9B,OAAO6zH,IAILC,EAAiB,QAASA,GAAetiH,EAAQ7K,GAEnD,GADAA,EAAI6K,EAAOhY,KAAM,EACbunD,EAAOsxE,8BAA8B7gH,EAAOhY,IAAK,CACnD,GAAI86B,GAAWysB,EAAOsxE,8BAA8B7gH,EAAOhY,GAC3D,IAAI86B,EAASz0B,OAAS,EACpB,IAAK,GAAIG,GAAI,EAAGA,EAAIs0B,EAASz0B,OAAQG,IACnC8zH,EAAe/yE,EAAOzH,KAAK87C,MAAM9gE,EAASt0B,IAAK2G,KAQnDotH,EAAoB,SAA2BC,GACjD,GAAIC,GAAWr0H,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,IAAMA,UAAU,GAEjFs0H,EAAW,IACXC,EAAW,IACX/1H,EAAM,IACNC,EAAM,IACV,KAAK,GAAI+1H,KAAcJ,GACrB,GAAIA,EAAUz0H,eAAe60H,GAAa,CACxC,GAAIz+F,GAAOorB,EAAOzH,KAAK87C,MAAMg/B,GACzBh2B,EAAQr9C,EAAOoxE,mBAAmBx8F,EAAKn8B,IACvCivC,EAAWsY,EAAO2yE,yBAAyB/9F,GAI3C0+F,EAAuBtzE,EAAOuzE,oBAAoB3+F,EAAMq+F,GAExDO,EAAuBnxB,EAAeixB,EAAsB,GAE5DG,EAAeD,EAAqB,GACpCE,EAAeF,EAAqB,EAExCL,GAAWz1H,KAAKL,IAAIo2H,EAAcN,GAClCC,EAAW11H,KAAKL,IAAIq2H,EAAcN,GAGrBF,GAAT71B,IACFhgG,EAAMK,KAAKL,IAAIqqC,EAAUrqC,GACzBC,EAAMI,KAAKJ,IAAIoqC,EAAUpqC,IAK/B,OAAQD,EAAKC,EAAK61H,EAAUC,IAI1BO,EAAc,QAASA,GAAY17B,GACrC,GAAIoF,GAAQr9C,EAAOoxE,mBAAmBn5B,EACtC,IAAIj4C,EAAOsxE,8BAA8Br5B,GAAS,CAChD,GAAI1kE,GAAWysB,EAAOsxE,8BAA8Br5B,EACpD,IAAI1kE,EAASz0B,OAAS,EACpB,IAAK,GAAIG,GAAI,EAAGA,EAAIs0B,EAASz0B,OAAQG,IACnCo+F,EAAQ3/F,KAAKJ,IAAI+/F,EAAOs2B,EAAYpgG,EAASt0B,KAInD,MAAOo+F,IAILu2B,EAAoB,SAA2BpnB,EAAOC,GACxD,GAAIonB,GAAYF,EAAYnnB,EAAM/zG,IAC9Bq7H,EAAYH,EAAYlnB,EAAMh0G,GAClC,OAAOiF,MAAKL,IAAIw2H,EAAWC,IAIzBC,EAAgB,SAAuBvnB,EAAOC,GAChD,GAAIunB,GAAWh0E,EAAOuxE,4BAA4B/kB,EAAM/zG,IACpDw7H,EAAWj0E,EAAOuxE,4BAA4B9kB,EAAMh0G,GACxD,IAAiBsG,SAAbi1H,GAAuCj1H,SAAbk1H,EAC5B,OAAO,CAGT,KAAK,GAAIh1H,GAAI,EAAGA,EAAI+0H,EAASl1H,OAAQG,IACnC,IAAK,GAAI+J,GAAI,EAAGA,EAAIirH,EAASn1H,OAAQkK,IACnC,GAAIgrH,EAAS/0H,IAAMg1H,EAASjrH,GAC1B,OAAO,CAIb,QAAO,GAILkrH,EAAsB,SAA6BpyH,EAAUqyH,EAAQC,GACvE,IAAK,GAAIn1H,GAAI,EAAGA,EAAIk1H,EAAOr1H,OAAQG,IAAK,CACtC,GAAIo+F,GAAQ82B,EAAOl1H,GACfo1H,EAAar0E,EAAO0xE,qBAAqBr0B,EAC7C,IAAIg3B,EAAWv1H,OAAS,EACtB,IAAK,GAAIkK,GAAI,EAAGA,EAAIqrH,EAAWv1H,OAAS,EAAGkK,IACrC+qH,EAAcM,EAAWrrH,GAAIqrH,EAAWrrH,EAAI,OAAQ,GAClDg3C,EAAOwxE,kBAAkB6C,EAAWrrH,GAAGvQ,MAAQunD,EAAOwxE,kBAAkB6C,EAAWrrH,EAAI,GAAGvQ,KAC5FqJ,EAASuyH,EAAWrrH,GAAIqrH,EAAWrrH,EAAI,GAAIorH,KASnDE,EAAsB,SAA6B9nB,EAAOC,GAC5D,GAAI8nB,GAAe11H,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAGvF2wB,EAAOwwB,EAAO2yE,yBAAyBnmB,GACvC/8E,EAAOuwB,EAAO2yE,yBAAyBlmB,GACvC+nB,EAAU92H,KAAK4R,IAAImgB,EAAOD,EAE9B,IAAIglG,EAAUx0E,EAAO/jD,QAAQwzH,aAAaE,YAAa,CACrD,GAAI8E,KAAkBA,GAAajoB,EAAM/zG,KAAM,CAC/C,IAAIi8H,KAAkBA,GAAajoB,EAAMh0G,KAAM,EAE/Cs6H,EAAevmB,EAAOioB,GACtB1B,EAAetmB,EAAOioB,EAGtB,IAAIxB,GAAWU,EAAkBpnB,EAAOC,GAEpCkoB,EAAqB3B,EAAkByB,EAAcvB,GAErD0B,EAAsBvyB,EAAesyB,EAAoB,GAGzDE,GADOD,EAAoB,GACpBA,EAAoB,IAI3BE,GAHYF,EAAoB,GACpBA,EAAoB,GAEV5B,EAAkB0B,EAAcxB,IAEtD6B,EAAsB1yB,EAAeyyB,EAAqB,GAE1DE,EAAOD,EAAoB,GAE3BE,GADOF,EAAoB,GACfA,EAAoB,IAKhCG,GAJYH,EAAoB,GAInBr3H,KAAK4R,IAAIulH,EAAOG,GACjC,IAAIE,EAAal1E,EAAO/jD,QAAQwzH,aAAaE,YAAa,CACxD,GAAIhvG,GAASk0G,EAAOG,EAAOh1E,EAAO/jD,QAAQwzH,aAAaE,WACnDhvG,IAAUs0G,EAAYj1E,EAAO/jD,QAAQwzH,aAAaE,cACpDhvG,GAAUs0G,EAAYj1E,EAAO/jD,QAAQwzH,aAAaE,aAGvC,EAAThvG,IAEFq/B,EAAOm1E,YAAY1oB,EAAMh0G,GAAIkoB,GAC7B0xG,GAAgB,EAEZkC,KAAiB,GAAMv0E,EAAOo1E,cAAc3oB,OAOpD4oB,EAAqB,SAA4BnuB,EAAYtyE,GAW/D,IAAK,GARDqjE,GAASrjE,EAAKn8B,GACd68H,EAAW1gG,EAAK2/D,MAChBghC,EAAYv1E,EAAOoxE,mBAAmBx8F,EAAKn8B,IAG3C+8H,EAAKx1E,EAAO/jD,QAAQwzH,aAAaC,gBAAkB1vE,EAAO/jD,QAAQwzH,aAAaC,gBAC/E+F,KACAC,KACKz2H,EAAI,EAAGA,EAAIq2H,EAASx2H,OAAQG,IAAK,CACxC,GAAI07F,GAAO26B,EAASr2H,EACpB,IAAI07F,EAAKyE,MAAQzE,EAAK0E,OAAQ,CAC5B,GAAIs2B,GAAYh7B,EAAKyE,MAAQnH,EAAS0C,EAAKhtF,KAAOgtF,EAAKjtF,EACvD+nH,GAAeH,EAASr2H,GAAGxG,IAAMk9H,EAC7B31E,EAAOoxE,mBAAmBuE,EAAUl9H,IAAM88H,GAC5CG,EAAW31H,KAAK46F,IAMtB,GAAIi7B,GAAQ,SAAe7+F,EAAOw9D,GAEhC,IAAK,GADDrgD,GAAM,EACDspE,EAAM,EAAGA,EAAMjpB,EAAMz1F,OAAQ0+G,IACpC,GAAsCz+G,SAAlC02H,EAAelhC,EAAMipB,GAAK/kH,IAAmB,CAC/C,GAAIiG,GAAIshD,EAAO2yE,yBAAyB8C,EAAelhC,EAAMipB,GAAK/kH,KAAOs+B,CACzEmd,IAAOx1C,EAAIhB,KAAK+0C,KAAK/zC,EAAIA,EAAI82H,GAGjC,MAAOthF,IAIL2hF,EAAS,SAAgB9+F,EAAOw9D,GAElC,IAAK,GADDrgD,GAAM,EACDypE,EAAM,EAAGA,EAAMppB,EAAMz1F,OAAQ6+G,IACpC,GAAsC5+G,SAAlC02H,EAAelhC,EAAMopB,GAAKllH,IAAmB,CAC/C,GAAIiG,GAAIshD,EAAO2yE,yBAAyB8C,EAAelhC,EAAMopB,GAAKllH,KAAOs+B,CACzEmd,IAAOshF,EAAK93H,KAAKiW,IAAIjV,EAAIA,EAAI82H,EAAI,MAGrC,MAAOthF,IAGL4hF,EAAW,SAAkB5uB,EAAY3S,GAI3C,IAAK,GAHDwhC,GAAQ/1E,EAAO2yE,yBAAyB/9F,GAExCohG,KACKlY,EAAM,EAAS5W,EAAN4W,EAAkBA,IAAO,CACzC,GAAI1C,GAAKwa,EAAMG,EAAOxhC,GAClB0hC,EAAMJ,EAAOE,EAAOxhC,GAGpBxnE,EAAQ,GACR65E,EAAQlpG,KAAKJ,KAAKyvB,EAAOrvB,KAAKL,IAAI0vB,EAAOrvB,KAAKgkB,MAAM05F,EAAK6a,IAG7D,IAFAF,GAAgBnvB,EAEQ7nG,SAApBi3H,EAASD,GACX,KAEFC,GAASD,GAASjY,EAEpB,MAAOiY,IAGLG,EAAa,SAAoBH,GAEnC,GAAIlO,GAAe7nE,EAAO2yE,yBAAyB/9F,EAGnD,IAA0B71B,SAAtBuzH,EAAS19F,EAAKn8B,IAAmB,CACnC,GAAI09H,KACJA,GAAYvhG,EAAKn8B,KAAM,EACvBs6H,EAAen+F,EAAMuhG,GACrB7D,EAAS19F,EAAKn8B,IAAM09H,EAGtB,GAAIC,GAAsBpD,EAAkBV,EAAS19F,EAAKn8B,KAEtD49H,EAAsBh0B,EAAe+zB,EAAqB,GAI1DE,GAFYD,EAAoB,GACpBA,EAAoB,GACfA,EAAoB,IACrCE,EAAiBF,EAAoB,GAGrCh1G,EAAO00G,EAAQlO,EAGf2O,EAAe,CACfn1G,GAAO,EACTm1G,EAAe94H,KAAKL,IAAIgkB,EAAMk1G,EAAiBv2E,EAAO/jD,QAAQwzH,aAAaE,aAC3D,EAAPtuG,IACTm1G,GAAgB94H,KAAKL,KAAKgkB,EAAMi1G,EAAiBt2E,EAAO/jD,QAAQwzH,aAAaE,cAG3D,GAAhB6G,IAEFx2E,EAAOm1E,YAAYvgG,EAAKn8B,GAAI+9H,GAE5BnE,GAAgB,IAIhBt4B,EAAW,SAAkBg8B,GAC/B,GAAIlO,GAAe7nE,EAAO2yE,yBAAyB/9F,GAI/C6hG,EAAuBz2E,EAAOuzE,oBAAoB3+F,GAElD8hG,EAAuBr0B,EAAeo0B,EAAsB,GAE5DtD,EAAWuD,EAAqB,GAChCtD,EAAWsD,EAAqB,GAEhCr1G,EAAO00G,EAAQlO,EAEf8O,EAAc9O,CACdxmG,GAAO,EACTs1G,EAAcj5H,KAAKL,IAAIwqH,GAAgBuL,EAAWpzE,EAAO/jD,QAAQwzH,aAAaE,aAAcoG,GAC5E,EAAP10G,IACTs1G,EAAcj5H,KAAKJ,IAAIuqH,GAAgBsL,EAAWnzE,EAAO/jD,QAAQwzH,aAAaE,aAAcoG,IAG1FY,IAAgB9O,IAElB7nE,EAAO4yE,yBAAyBh+F,EAAM+hG,EAAa53H,QAAW,GAE9DszH,GAAgB,IAIhB0D,EAAQD,EAAS5uB,EAAYwuB,EACjCQ,GAAWH,GACXA,EAAQD,EAAS5uB,EAAYouB,GAC7Bv7B,EAASg8B,IAKPa,EAA6B,SAAoC1vB,GACnE,GAAIitB,GAASx0H,OAAO6H,KAAKw4C,EAAO0xE,qBAChCyC,GAASA,EAAO5R,SAChB,KAAK,GAAItjH,GAAI,EAAOioG,EAAJjoG,EAAgBA,IAAK,CACnCozH,GAAgB,CAChB,KAAK,GAAIrpH,GAAI,EAAGA,EAAImrH,EAAOr1H,OAAQkK,IAGjC,IAAK,GAFDq0F,GAAQ82B,EAAOnrH,GACfqrH,EAAar0E,EAAO0xE,qBAAqBr0B,GACpCt0F,EAAI,EAAGA,EAAIsrH,EAAWv1H,OAAQiK,IACrCssH,EAAmB,IAAMhB,EAAWtrH,GAGxC,IAAIspH,KAAkB,EAEpB,QAMFwE,EAA8B,SAAqC3vB,GACrE,GAAIitB,GAASx0H,OAAO6H,KAAKw4C,EAAO0xE,qBAChCyC,GAASA,EAAO5R,SAChB,KAAK,GAAItjH,GAAI,EAAOioG,EAAJjoG,IACdozH,GAAgB,EAChB6B,EAAoBI,EAAqBH,GAAQ,GAC7C9B,KAAkB,GAHQpzH,OAW9B63H,EAAmB,WACrB,IAAK,GAAI7+B,KAAUj4C,GAAOzH,KAAK87C,MACzBr0C,EAAOzH,KAAK87C,MAAM71F,eAAey5F,IAASj4C,EAAOo1E,cAAcp1E,EAAOzH,KAAK87C,MAAM4D,KAKrF8+B,EAA2B,WAC7B,GAAI5C,GAASx0H,OAAO6H,KAAKw4C,EAAO0xE,qBAChCyC,GAASA,EAAO5R,SAChB,KAAK,GAAItjH,GAAI,EAAGA,EAAIk1H,EAAOr1H,OAAQG,IAGjC,IAAK,GAFDo+F,GAAQ82B,EAAOl1H,GACfo1H,EAAar0E,EAAO0xE,qBAAqBr0B,GACpCr0F,EAAI,EAAGA,EAAIqrH,EAAWv1H,OAAQkK,IACrCg3C,EAAOo1E,cAAcf,EAAWrrH,IAMlC5Q,MAAK6D,QAAQwzH,aAAaI,iBAAkB,IAC9CgH,EAA4B,GAC5BC,KAIE1+H,KAAK6D,QAAQwzH,aAAaK,oBAAqB,GACjD8G,EAA2B,IAGzBx+H,KAAK6D,QAAQwzH,aAAaM,wBAAyB,GACrDgH,IAGFxE,OAaFrwH,IAAK,sBACL1E,MAAO,SAA6Bo3B,EAAMhvB,GACxC,GAAIoxH,IAAS,CACDj4H,UAAR6G,IACFoxH,GAAS,EAEX,IAAI35B,GAAQjlG,KAAKg5H,mBAAmBx8F,EAAKn8B,GACzC,IAAcsG,SAAVs+F,EAAqB,CACvB,GAAI17F,GAAQvJ,KAAKu5H,kBAAkB/8F,EAAKn8B,IACpCivC,EAAWtvC,KAAKu6H,yBAAyB/9F,GACzCu+F,EAAW,IACXC,EAAW,GACf,IAAc,IAAVzxH,EAAa,CACf,GAAIs1H,GAAW7+H,KAAKs5H,qBAAqBr0B,GAAO17F,EAAQ,EACxD,IAAIq1H,KAAW,GAA6Bj4H,SAArB6G,EAAIqxH,EAASx+H,KAAqBu+H,KAAW,EAAO,CACzE,GAAIE,GAAU9+H,KAAKu6H,yBAAyBsE,EAC5C9D,GAAWzrF,EAAWwvF,GAI1B,GAAIv1H,GAASvJ,KAAKs5H,qBAAqBr0B,GAAOv+F,OAAS,EAAG,CACxD,GAAIq4H,GAAW/+H,KAAKs5H,qBAAqBr0B,GAAO17F,EAAQ,EACxD,IAAIq1H,KAAW,GAA6Bj4H,SAArB6G,EAAIuxH,EAAS1+H,KAAqBu+H,KAAW,EAAO,CACzE,GAAII,GAAUh/H,KAAKu6H,yBAAyBwE,EAC5C/D,GAAW11H,KAAKL,IAAI+1H,EAAUgE,EAAU1vF,IAI5C,OAAQyrF,EAAUC,GAElB,OAAQ,EAAG,MAWflxH,IAAK,gBACL1E,MAAO,SAAuBo3B,GAC5B,GAAIx8B,KAAKm5H,4BAA4B38F,EAAKn8B,IAExC,IAAK,GADD4+H,GAAUj/H,KAAKm5H,4BAA4B38F,EAAKn8B,IAC3CwG,EAAI,EAAGA,EAAIo4H,EAAQv4H,OAAQG,IAAK,CACvC,GAAIq4H,GAAWD,EAAQp4H,GACnB2E,EAAaxL,KAAKmgD,KAAK87C,MAAMijC,EACjC,IAAIl/H,KAAKk5H,8BAA8BgG,GAAW,CAEhD,GAAIC,GAAS,IACTC,EAAS,KACTjkG,EAAWn7B,KAAKk5H,8BAA8BgG,EAClD,IAAI/jG,EAASz0B,OAAS,EACpB,IAAK,GAAI24H,GAAM,EAAGA,EAAMlkG,EAASz0B,OAAQ24H,IAAO,CAC9C,GAAIpX,GAAYjoH,KAAKmgD,KAAK87C,MAAM9gE,EAASkkG,GACzCF,GAAS75H,KAAKL,IAAIk6H,EAAQn/H,KAAKu6H,yBAAyBtS,IACxDmX,EAAS95H,KAAKJ,IAAIk6H,EAAQp/H,KAAKu6H,yBAAyBtS,IAI5D,GAAI34E,GAAWtvC,KAAKu6H,yBAAyB/uH,GAEzC8zH,EAAuBt/H,KAAKm7H,oBAAoB3vH,GAEhD+zH,EAAuBt1B,EAAeq1B,EAAsB,GAE5DvE,EAAWwE,EAAqB,GAChCvE,EAAWuE,EAAqB,GAEhChB,EAAc,IAAOY,EAASC,GAC9Bn2G,EAAOqmB,EAAWivF,GACX,EAAPt1G,GAAY3jB,KAAK4R,IAAI+R,GAAQ+xG,EAAWh7H,KAAK6D,QAAQwzH,aAAaE,aAAetuG,EAAO,GAAK3jB,KAAK4R,IAAI+R,GAAQ8xG,EAAW/6H,KAAK6D,QAAQwzH,aAAaE,cACrJv3H,KAAKw6H,yBAAyBhvH,EAAY+yH,EAAa53H,QAAW,QAe5EmD,IAAK,yBACL1E,MAAO,SAAgCw0H,GACrC55H,KAAKw/H,kBAEL,KAAK,GAAIv6B,KAAS20B,GAChB,GAAIA,EAAaxzH,eAAe6+F,GAAQ,CAEtC,GAAIw6B,GAAYl4H,OAAO6H,KAAKwqH,EAAa30B,GACzCw6B,GAAYz/H,KAAK0/H,mBAAmBD,GACpCz/H,KAAK2/H,eAAeF,EAGpB,KAAK,GAFDG,GAAmB,EAEd/4H,EAAI,EAAGA,EAAI44H,EAAU/4H,OAAQG,IAAK,CACzC,GAAI21B,GAAOijG,EAAU54H,EACrB,IAAsCF,SAAlC3G,KAAKw/H,gBAAgBhjG,EAAKn8B,IAAmB,CAC/C,GAAI82B,GAAMn3B,KAAK6D,QAAQwzH,aAAaE,YAAcqI,CAE9CA,GAAmB,IACrBzoG,EAAMn3B,KAAKu6H,yBAAyBkF,EAAU54H,EAAI,IAAM7G,KAAK6D,QAAQwzH,aAAaE,aAEpFv3H,KAAKw6H,yBAAyBh+F,EAAMrF,EAAK8tE,GACzCjlG,KAAK6/H,6BAA6BrjG,EAAMyoE,EAAO9tE,GAE/CyoG,UAiBV91H,IAAK,oBACL1E,MAAO,SAA2B85H,EAAUY,GAE1C,GAAqDn5H,SAAjD3G,KAAKk5H,8BAA8BgG,GAAvC,CAMA,IAAK,GADDx0C,MACK7jF,EAAI,EAAGA,EAAI7G,KAAKk5H,8BAA8BgG,GAAUx4H,OAAQG,IACvE6jF,EAAW/iF,KAAK3H,KAAKmgD,KAAK87C,MAAMj8F,KAAKk5H,8BAA8BgG,GAAUr4H,IAI/E7G,MAAK2/H,eAAej1C,EAGpB,KAAK,GAAIq1C,GAAM,EAAGA,EAAMr1C,EAAWhkF,OAAQq5H,IAAO,CAChD,GAAI9X,GAAYv9B,EAAWq1C,GACvBC,EAAiBhgI,KAAKg5H,mBAAmB/Q,EAAU5nH,GAEvD,MAAI2/H,EAAiBF,GAAsDn5H,SAAvC3G,KAAKw/H,gBAAgBvX,EAAU5nH,KAajE,MAXA,IAAI82B,GAAM,MAIRA,GADU,IAAR4oG,EACI//H,KAAKu6H,yBAAyBv6H,KAAKmgD,KAAK87C,MAAMijC,IAE9Cl/H,KAAKu6H,yBAAyB7vC,EAAWq1C,EAAM,IAAM//H,KAAK6D,QAAQwzH,aAAaE,YAEvFv3H,KAAKw6H,yBAAyBvS,EAAW9wF,EAAK6oG,GAC9ChgI,KAAK6/H,6BAA6B5X,EAAW+X,EAAgB7oG,GASjE,IAAK,GAFDgoG,GAAS,IACTC,EAAS,KACJa,EAAM,EAAGA,EAAMv1C,EAAWhkF,OAAQu5H,IAAO,CAChD,GAAIxY,GAAc/8B,EAAWu1C,GAAK5/H,EAClC8+H,GAAS75H,KAAKL,IAAIk6H,EAAQn/H,KAAKu6H,yBAAyBv6H,KAAKmgD,KAAK87C,MAAMwrB,KACxE2X,EAAS95H,KAAKJ,IAAIk6H,EAAQp/H,KAAKu6H,yBAAyBv6H,KAAKmgD,KAAK87C,MAAMwrB,KAE1EznH,KAAKw6H,yBAAyBx6H,KAAKmgD,KAAK87C,MAAMijC,GAAW,IAAOC,EAASC,GAASU,OAapFh2H,IAAK,+BACL1E,MAAO,SAAsCo3B,EAAMyoE,EAAO9tE,GAExD,GAAoCxwB,SAAhC3G,KAAKi5H,gBAAgBh0B,GAAsB,CAC7C,GAAIi7B,GAAclgI,KAAKu6H,yBAAyBv6H,KAAKmgD,KAAK87C,MAAMj8F,KAAKi5H,gBAAgBh0B,IACrF,IAAI9tE,EAAM+oG,EAAclgI,KAAK6D,QAAQwzH,aAAaE,YAAa,CAC7D,GAAItuG,GAAOi3G,EAAclgI,KAAK6D,QAAQwzH,aAAaE,YAAcpgG,EAC7DgpG,EAAengI,KAAKogI,kBAAkBpgI,KAAKi5H,gBAAgBh0B,GAAQzoE,EAAKn8B,GAC5EL,MAAK+8H,YAAYoD,EAAaE,UAAWp3G,IAK7CjpB,KAAKi5H,gBAAgBh0B,GAASzoE,EAAKn8B,GAEnCL,KAAKw/H,gBAAgBhjG,EAAKn8B,KAAM,EAEhCL,KAAKsgI,kBAAkB9jG,EAAKn8B,GAAI4kG,MAUlCn7F,IAAK,qBACL1E,MAAO,SAA4B0xH,GAEjC,IAAK,GADDltH,MACK/C,EAAI,EAAGA,EAAIiwH,EAAQpwH,OAAQG,IAClC+C,EAAMjC,KAAK3H,KAAKmgD,KAAK87C,MAAM66B,EAAQjwH,IAErC,OAAO+C,MAWTE,IAAK,mBACL1E,MAAO,WACL,GAAIw0H,MACA/5B,EAAS,OACTrjE,EAAO,MAIX,KAAKqjE,IAAU7/F,MAAKmgD,KAAK87C,MACvB,GAAIj8F,KAAKmgD,KAAK87C,MAAM71F,eAAey5F,GAAS,CAC1CrjE,EAAOx8B,KAAKmgD,KAAK87C,MAAM4D,EACvB,IAAIoF,GAA4Ct+F,SAApC3G,KAAKg5H,mBAAmBn5B,GAAwB,EAAI7/F,KAAKg5H,mBAAmBn5B,EAC5C,QAAxC7/F,KAAK6D,QAAQwzH,aAAa3rG,WAA8D,OAAxC1rB,KAAK6D,QAAQwzH,aAAa3rG,WAC5E8Q,EAAKxa,EAAIhiB,KAAK6D,QAAQwzH,aAAaC,gBAAkBryB,EACrDzoE,EAAK34B,QAAQ+gG,MAAM5iF,GAAI,IAEvBwa,EAAKgC,EAAIx+B,KAAK6D,QAAQwzH,aAAaC,gBAAkBryB,EACrDzoE,EAAK34B,QAAQ+gG,MAAMpmE,GAAI,GAEG73B,SAAxBizH,EAAa30B,KACf20B,EAAa30B,OAEf20B,EAAa30B,GAAOpF,GAAUrjE,EAGlC,MAAOo9F,MAWT9vH,IAAK,cACL1E,MAAO,WACL,GAAIm7H,GAAU,CACd,KAAK,GAAI1gC,KAAU7/F,MAAKmgD,KAAK87C,MAC3B,GAAIj8F,KAAKmgD,KAAK87C,MAAM71F,eAAey5F,GAAS,CAC1C,GAAIrjE,GAAOx8B,KAAKmgD,KAAK87C,MAAM4D,EACal5F,UAApC3G,KAAKg5H,mBAAmBn5B,KAC1B0gC,EAAU/jG,EAAK2/D,MAAMz1F,OAAS65H,EAAUA,EAAU/jG,EAAK2/D,MAAMz1F,QAInE,MAAO65H,MAWTz2H,IAAK,4BACL1E,MAAO,WAgBL,IAfA,GAAIyjD,GAAS7oD,KAETugI,EAAU,EAEVC,EAAkB,SAAyBC,EAAOC,GACR/5H,SAAxCkiD,EAAOmwE,mBAAmB0H,EAAMrgI,MAEUsG,SAAxCkiD,EAAOmwE,mBAAmByH,EAAMpgI,MAClCwoD,EAAOmwE,mBAAmByH,EAAMpgI,IAAM,GAGxCwoD,EAAOmwE,mBAAmB0H,EAAMrgI,IAAMwoD,EAAOmwE,mBAAmByH,EAAMpgI,IAAM,IAIzEkgI,EAAU,IAEfA,EAAUvgI,KAAK0mH,cACC,IAAZ6Z,IAEJ,IAAK,GAAI1gC,KAAU7/F,MAAKmgD,KAAK87C,MAC3B,GAAIj8F,KAAKmgD,KAAK87C,MAAM71F,eAAey5F,GAAS,CAC1C,GAAIrjE,GAAOx8B,KAAKmgD,KAAK87C,MAAM4D,EACvBrjE,GAAK2/D,MAAMz1F,SAAW65H,GACxBvgI,KAAK2gI,cAAcH,EAAiB3gC,OAa9C/1F,IAAK,iCACL1E,MAAO,WACL,GAAI6jD,GAASjpD,KAET4gI,EAAW,IAGXC,EAAiB,SAAwBJ,EAAOC,EAAOn+B,KAEvDu+B,EAAmB,SAA0BL,EAAOC,EAAOn+B,GAC7D,GAAIw+B,GAAS93E,EAAO+vE,mBAAmByH,EAAMpgI,GAE9BsG,UAAXo6H,IACF93E,EAAO+vE,mBAAmByH,EAAMpgI,IAAMugI,EAGxC,IAAI33G,GAAO43G,EAAe1a,EAAAA,WAAsBe,aAAauZ,EAAO,QAASta,EAAAA,WAAsBe,aAAawZ,EAAO,QAASva,EAAAA,WAAsBe,aAAa3kB,EAAM,QAEzKt5C,GAAO+vE,mBAAmB0H,EAAMrgI,IAAM4oD,EAAO+vE,mBAAmByH,EAAMpgI,IAAM4oB,EAG9EjpB,MAAK2gI,cAAcG,GACnB9gI,KAAKghI,wBAWPl3H,IAAK,2BACL1E,MAAO,WACL,GAAIikD,GAASrpD,KAET4gI,EAAW,IACXE,EAAmB,SAA0BL,EAAOC,EAAOn+B,GAC7D,GAAIw+B,GAAS13E,EAAO2vE,mBAAmByH,EAAMpgI,GAE9BsG,UAAXo6H,IACF13E,EAAO2vE,mBAAmByH,EAAMpgI,IAAMugI,GAEpCr+B,EAAKyE,MAAQ05B,EAAMrgI,GACrBgpD,EAAO2vE,mBAAmB0H,EAAMrgI,IAAMgpD,EAAO2vE,mBAAmByH,EAAMpgI,IAAM,EAE5EgpD,EAAO2vE,mBAAmB0H,EAAMrgI,IAAMgpD,EAAO2vE,mBAAmByH,EAAMpgI,IAAM,EAGhFL,MAAK2gI,cAAcG,GACnB9gI,KAAKghI,wBASPl3H,IAAK,qBACL1E,MAAO,WACL,GAAIw7H,GAAW,GAEf,KAAK,GAAI/gC,KAAU7/F,MAAKmgD,KAAK87C,MACvBj8F,KAAKmgD,KAAK87C,MAAM71F,eAAey5F,IACOl5F,SAApC3G,KAAKg5H,mBAAmBn5B,KAC1B+gC,EAAWt7H,KAAKL,IAAIjF,KAAKg5H,mBAAmBn5B,GAAS+gC,GAM3D,KAAK,GAAI36B,KAAYjmG,MAAKmgD,KAAK87C,MACzBj8F,KAAKmgD,KAAK87C,MAAM71F,eAAe6/F,IACSt/F,SAAtC3G,KAAKg5H,mBAAmB/yB,KAC1BjmG,KAAKg5H,mBAAmB/yB,IAAa26B,MAY7C92H,IAAK,eACL1E,MAAO,WACL,GAAIokD,GAASxpD,KAETihI,EAAkB,SAAyBz1H,EAAYy8G,GACzD,GAAIz+D,EAAOwvE,mBAAmB/Q,EAAU5nH,IAAMmpD,EAAOwvE,mBAAmBxtH,EAAWnL,IAAK,CACtF,GAAIwnH,GAAer8G,EAAWnL,GAC1BonH,EAAcQ,EAAU5nH,EAC+BsG,UAAvD6iD,EAAO0vE,8BAA8BrR,KACvCr+D,EAAO0vE,8BAA8BrR,OAEvCr+D,EAAO0vE,8BAA8BrR,GAAclgH,KAAK8/G,GACA9gH,SAApD6iD,EAAO2vE,4BAA4B1R,KACrCj+D,EAAO2vE,4BAA4B1R,OAErCj+D,EAAO2vE,4BAA4B1R,GAAa9/G,KAAKkgH,IAIzD7nH,MAAK2gI,cAAcM,MAWrBn3H,IAAK,gBACL1E,MAAO,WACL,GAAI87H,GAASlhI,KAET0J,EAAWjD,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,aAAiBA,UAAU,GAC5F06H,EAAiB16H,UAAU,GAE3Bs2C,KACAs8E,EAAY,EAEZ+H,EAAU,QAASA,GAAQ5kG,EAAM6kG,GACnC,GAA0B16H,SAAtBo2C,EAASvgB,EAAKn8B,IAAmB,CAEOsG,SAAtCu6H,EAAO9H,kBAAkB58F,EAAKn8B,MAChC6gI,EAAO9H,kBAAkB58F,EAAKn8B,IAAMghI,EACpCH,EAAO7H,UAAY/zH,KAAKJ,IAAIm8H,EAAMH,EAAO7H,YAG3Ct8E,EAASvgB,EAAKn8B,KAAM,CAEpB,KAAK,GADD4nH,GAAY,OACPphH,EAAI,EAAGA,EAAI21B,EAAK2/D,MAAMz1F,OAAQG,IACjC21B,EAAK2/D,MAAMt1F,GAAGssG,aAAc,IAE5B8U,EADEzrF,EAAK2/D,MAAMt1F,GAAGmgG,OAASxqE,EAAKn8B,GAClBm8B,EAAK2/D,MAAMt1F,GAAG0O,KAEdinB,EAAK2/D,MAAMt1F,GAAGyO,GAGxBknB,EAAKn8B,KAAO4nH,EAAU5nH,KACxBqJ,EAAS8yB,EAAMyrF,EAAWzrF,EAAK2/D,MAAMt1F,IACrCu6H,EAAQnZ,EAAWoZ,MAQ7B,IAAuB16H,SAAnBw6H,EACF,IAAK,GAAIt6H,GAAI,EAAGA,EAAI7G,KAAKmgD,KAAK+7C,YAAYx1F,OAAQG,IAAK,CACrD,GAAI21B,GAAOx8B,KAAKmgD,KAAK87C,MAAMj8F,KAAKmgD,KAAK+7C,YAAYr1F,GACvBF,UAAtBo2C,EAASvgB,EAAKn8B,MAChB+gI,EAAQ5kG,EAAM68F,GACdA,GAAa,OAGZ,CACL,GAAI1yB,GAAQ3mG,KAAKmgD,KAAK87C,MAAMklC,EAC5B,IAAcx6H,SAAVggG,EAEF,WADApvF,SAAQqzC,MAAM,kBAAmBu2E,EAGnCC,GAAQz6B,OAYZ78F,IAAK,cACL1E,MAAO,SAAqB85H,EAAUj2G,GAMpC,GAL4C,OAAxCjpB,KAAK6D,QAAQwzH,aAAa3rG,WAA8D,OAAxC1rB,KAAK6D,QAAQwzH,aAAa3rG,UAC5E1rB,KAAKmgD,KAAK87C,MAAMijC,GAAU1gG,GAAKvV,EAE/BjpB,KAAKmgD,KAAK87C,MAAMijC,GAAUl9G,GAAKiH,EAEoBtiB,SAAjD3G,KAAKk5H,8BAA8BgG,GACrC,IAAK,GAAIr4H,GAAI,EAAGA,EAAI7G,KAAKk5H,8BAA8BgG,GAAUx4H,OAAQG,IACvE7G,KAAK+8H,YAAY/8H,KAAKk5H,8BAA8BgG,GAAUr4H,GAAIoiB,MAcxEnf,IAAK,oBACL1E,MAAO,SAA2Bk8H,EAAQC,GACxC,GAAIC,GAASxhI,KAETi/H,KACAwC,EAAiB,QAASA,GAAexC,EAASvkE,GACpD,GAAkD/zD,SAA9C66H,EAAOrI,4BAA4Bz+D,GACrC,IAAK,GAAI7zD,GAAI,EAAGA,EAAI26H,EAAOrI,4BAA4Bz+D,GAAOh0D,OAAQG,IAAK,CACzE,GAAI6E,GAAS81H,EAAOrI,4BAA4Bz+D,GAAO7zD,EACvDo4H,GAAQvzH,IAAU,EAClB+1H,EAAexC,EAASvzH,KAI1Bg2H,EAAa,QAASA,GAAWzC,EAASvkE,GAC5C,GAAkD/zD,SAA9C66H,EAAOrI,4BAA4Bz+D,GACrC,IAAK,GAAI7zD,GAAI,EAAGA,EAAI26H,EAAOrI,4BAA4Bz+D,GAAOh0D,OAAQG,IAAK,CACzE,GAAI6E,GAAS81H,EAAOrI,4BAA4Bz+D,GAAO7zD,EACvD,IAAwBF,SAApBs4H,EAAQvzH,GACV,OAASi2H,YAAaj2H,EAAQ20H,UAAW3lE,EAE3C,IAAI6pD,GAASmd,EAAWzC,EAASvzH,EACjC,IAA2B,OAAvB64G,EAAOod,YACT,MAAOpd,GAIb,OAASod,YAAa,KAAMtB,UAAW3lE,GAIzC,OADA+mE,GAAexC,EAASqC,GACjBI,EAAWzC,EAASsC,MAY7Bz3H,IAAK,2BACL1E,MAAO,SAAkCo3B,EAAM8S,EAAU21D,GACvD,GAAI28B,GAAcn7H,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,EAGtFm7H,MAAgB,IACuBj7H,SAArC3G,KAAKs5H,qBAAqBr0B,KAC5BjlG,KAAKs5H,qBAAqBr0B,MAC1BjlG,KAAKw5H,6BAA6Bv0B,OAGsBt+F,SAAtD3G,KAAKw5H,6BAA6Bv0B,GAAOzoE,EAAKn8B,MAChDL,KAAKs5H,qBAAqBr0B,GAAOt9F,KAAK60B,GACtCx8B,KAAKu5H,kBAAkB/8F,EAAKn8B,IAAML,KAAKs5H,qBAAqBr0B,GAAOv+F,OAAS,GAE9E1G,KAAKw5H,6BAA6Bv0B,GAAOzoE,EAAKn8B,KAAM,GAGV,OAAxCL,KAAK6D,QAAQwzH,aAAa3rG,WAA8D,OAAxC1rB,KAAK6D,QAAQwzH,aAAa3rG,UAC5E8Q,EAAKgC,EAAI8Q,EAET9S,EAAKxa,EAAIstB,KAYbxlC,IAAK,2BACL1E,MAAO,SAAkCo3B,GACvC,MAA4C,OAAxCx8B,KAAK6D,QAAQwzH,aAAa3rG,WAA8D,OAAxC1rB,KAAK6D,QAAQwzH,aAAa3rG,UACrE8Q,EAAKgC,EAELhC,EAAKxa,KAWhBlY,IAAK,iBACL1E,MAAO,SAAwBq6H,GACzBA,EAAU/4H,OAAS,IACuB,OAAxC1G,KAAK6D,QAAQwzH,aAAa3rG,WAA8D,OAAxC1rB,KAAK6D,QAAQwzH,aAAa3rG,UAC5E+zG,EAAUx/G,KAAK,SAAU3Z,EAAGC,GAC1B,MAAOD,GAAEk4B,EAAIj4B,EAAEi4B,IAGjBihG,EAAUx/G,KAAK,SAAU3Z,EAAGC,GAC1B,MAAOD,GAAE0b,EAAIzb,EAAEyb,SAOlBg1G,IAGTp3H,GAAAA,WAAkBo3H,GAId,SAASn3H,EAAQD,EAASM,GAU9B,QAAS8kD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCANhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAI5hBvkD,EAAOT,EAAoB,GAC3B8D,EAAS9D,EAAoB,IAC7BkrD,EAAalrD,EAAoB,IAQjC2hI,EAAqB,WACvB,QAASA,GAAmB1hF,EAAM9U,EAAQmyD,GACxC,GAAIr6C,GAAQnjD,IAEZglD,GAAgBhlD,KAAM6hI,GAEtB7hI,KAAKmgD,KAAOA,EACZngD,KAAKqrC,OAASA,EACdrrC,KAAKw9F,iBAAmBA,EAExBx9F,KAAK8hI,UAAW,EAChB9hI,KAAK+hI,gBAAkBp7H,OACvB3G,KAAKgiI,YAAcr7H,OACnB3G,KAAKiiI,SAAWt7H,OAEhB3G,KAAKkiI,uBACLliI,KAAKmiI,wBACLniI,KAAKoiI,2BAELpiI,KAAK+uH,UAAY,EACjB/uH,KAAKqiI,cAAiBpmC,SAAWE,UACjCn8F,KAAKsiI,YAAa,EAClBtiI,KAAKuiI,QAAS,EACdviI,KAAKwiI,oBAAsB77H,OAE3B3G,KAAK6D,WACL7D,KAAK2/C,gBACH3uC,SAAS,EACTyxH,iBAAiB,EACjBC,SAAS,EACTC,SAAS,EACTvhC,SAAUz6F,OACVi8H,UAAU,EACVC,YAAY,EACZC,YAAY,EACZC,kBACEv9B,MAAO,MACP3mE,KAAM,EACNjyB,OAASwB,WAAY,UAAWC,OAAQ,UAAWC,WAAaF,WAAY,UAAWC,OAAQ,YAC/Fs9B,YAAa,EACb+4D,oBAAqB,IAGzB/jG,EAAKoG,OAAO/G,KAAK6D,QAAS7D,KAAK2/C,gBAE/B3/C,KAAKmgD,KAAKE,QAAQrgB,GAAG,UAAW,WAC9BmjB,EAAM4D,WAER/mD,KAAKmgD,KAAKE,QAAQrgB,GAAG,eAAgBhgC,KAAKgjI,SAAS1iF,KAAKtgD,OACxDA,KAAKmgD,KAAKE,QAAQrgB,GAAG,aAAchgC,KAAKgjI,SAAS1iF,KAAKtgD,OAmpCxD,MA1oCAolD,GAAay8E,IACX/3H,IAAK,WACL1E,MAAO,WACDpF,KAAKuiI,UAAW,IACdviI,KAAK6D,QAAQ4+H,mBAAoB,EACnCziI,KAAKihG,iBAELjhG,KAAKkhG,sBAWXp3F,IAAK,aACL1E,MAAO,SAAoBvB,EAASL,EAAYuN,GAC3BpK,SAAfnD,IACwBmD,SAAtBnD,EAAWiQ,OACbzT,KAAK6D,QAAQ4P,OAASjQ,EAAWiQ,OAEjCzT,KAAK6D,QAAQ4P,OAAS1C,EAAc0C,OAEX9M,SAAvBnD,EAAW0V,QACblZ,KAAK6D,QAAQqV,QAAU1V,EAAW0V,QAElClZ,KAAK6D,QAAQqV,QAAUnI,EAAcmI,SAIzBvS,SAAZ9C,IACqB,iBAAZA,GACT7D,KAAK6D,QAAQmN,QAAUnN,GAEvB7D,KAAK6D,QAAQmN,SAAU,EACvBrQ,EAAK6G,WAAWxH,KAAK6D,QAASA,IAE5B7D,KAAK6D,QAAQ4+H,mBAAoB,IACnCziI,KAAK8hI,UAAW,GAElB9hI,KAAKijI,aAWTn5H,IAAK,iBACL1E,MAAO,WACDpF,KAAK8hI,YAAa,EACpB9hI,KAAKkhG,kBAELlhG,KAAKihG,oBAITn3F,IAAK,iBACL1E,MAAO,WACLpF,KAAK8hI,UAAW,EAEhB9hI,KAAK+mD,SACD/mD,KAAKsiI,cAAe,IACtBtiI,KAAK+hI,gBAAgB9yH,MAAMkmD,QAAU,QACrCn1D,KAAKiiI,SAAShzH,MAAMkmD,QAAU,QAC9Bn1D,KAAKgiI,YAAY/yH,MAAMkmD,QAAU,OACjCn1D,KAAKkjI,6BAITp5H,IAAK,kBACL1E,MAAO,WACLpF,KAAK8hI,UAAW,EAEhB9hI,KAAK+mD,SACD/mD,KAAKsiI,cAAe,IACtBtiI,KAAK+hI,gBAAgB9yH,MAAMkmD,QAAU,OACrCn1D,KAAKiiI,SAAShzH,MAAMkmD,QAAU,OAC9Bn1D,KAAKgiI,YAAY/yH,MAAMkmD,QAAU,QACjCn1D,KAAKmjI,wBAWTr5H,IAAK,yBACL1E,MAAO,WAQL,GANApF,KAAK+mD,SAGL/mD,KAAKojI,mBAGDpjI,KAAKsiI,cAAe,EAAM,CAE5BtiI,KAAK8hI,UAAW,EAChB9hI,KAAK+hI,gBAAgB9yH,MAAMkmD,QAAU,QACrCn1D,KAAKiiI,SAAShzH,MAAMkmD,QAAU,OAE9B,IAAIkuE,GAAoBrjI,KAAKw9F,iBAAiBg0B,wBAC1C8R,EAAoBtjI,KAAKw9F,iBAAiB8zB,wBAC1CiS,EAAqBF,EAAoBC,EACzC7vH,EAASzT,KAAK6D,QAAQqV,QAAQlZ,KAAK6D,QAAQ4P,QAC3C+vH,GAAgB,CAEhBxjI,MAAK6D,QAAQ6+H,WAAY,IAC3B1iI,KAAKyjI,qBAAqBhwH,GAC1B+vH,GAAgB,GAEdxjI,KAAK6D,QAAQ8+H,WAAY,IACvBa,KAAkB,EACpBxjI,KAAK0jI,iBAAiB,GAEtBF,GAAgB,EAElBxjI,KAAK2jI,qBAAqBlwH,IAGF,IAAtB4vH,GAA4D,kBAA1BrjI,MAAK6D,QAAQu9F,UAC7CoiC,KAAkB,EACpBxjI,KAAK0jI,iBAAiB,GAEtBF,GAAgB,EAElBxjI,KAAK4jI,sBAAsBnwH,IACI,IAAtB6vH,GAAiD,IAAtBD,GAA2BrjI,KAAK6D,QAAQ++H,YAAa,IACrFY,KAAkB,EACpBxjI,KAAK0jI,iBAAiB,GAEtBF,GAAgB,EAElBxjI,KAAK6jI,sBAAsBpwH,IAIF,IAAvB8vH,IACEF,EAAoB,GAAKrjI,KAAK6D,QAAQg/H,cAAe,GACnDW,KAAkB,GACpBxjI,KAAK0jI,iBAAiB,GAExB1jI,KAAK8jI,oBAAoBrwH,IACM,IAAtB4vH,GAA2BrjI,KAAK6D,QAAQi/H,cAAe,IAC5DU,KAAkB,GACpBxjI,KAAK0jI,iBAAiB,GAExB1jI,KAAK8jI,oBAAoBrwH,KAK7BzT,KAAK+jI,iBAAiB/jI,KAAKiiI,SAAUjiI,KAAKgkI,eAAe1jF,KAAKtgD,OAG9DA,KAAKikI,oBAAoB,SAAUjkI,KAAKkjI,uBAAuB5iF,KAAKtgD,OAItEA,KAAKmgD,KAAKE,QAAQ5H,KAAK,cAQzB3uC,IAAK,cACL1E,MAAO,WAUL,GARIpF,KAAK8hI,YAAa,GACpB9hI,KAAKihG,iBAIPjhG,KAAK+mD,SAEL/mD,KAAKuiI,OAAS,UACVviI,KAAKsiI,cAAe,EAAM,CAC5B,GAAI7uH,GAASzT,KAAK6D,QAAQqV,QAAQlZ,KAAK6D,QAAQ4P,OAC/CzT,MAAKojI,mBACLpjI,KAAKkkI,kBAAkBzwH,GACvBzT,KAAK0jI,mBACL1jI,KAAKmkI,mBAAmB1wH,EAAuB,gBAAKzT,KAAK6D,QAAQqV,QAAY,GAAkB,gBAG/FlZ,KAAK+jI,iBAAiB/jI,KAAKiiI,SAAUjiI,KAAKgkI,eAAe1jF,KAAKtgD,OAGhEA,KAAKikI,oBAAoB,QAASjkI,KAAKokI,gBAAgB9jF,KAAKtgD,UAQ9D8J,IAAK,WACL1E,MAAO,WACL,GAAIwiD,GAAS5nD,IAGTA,MAAK8hI,YAAa,GACpB9hI,KAAKihG,iBAIPjhG,KAAK+mD,QACL,IAAIvqB,GAAOx8B,KAAKw9F,iBAAiB6mC,kBACjC,IAAa19H,SAAT61B,EAAoB,CAEtB,GADAx8B,KAAKuiI,OAAS,WACuB,kBAA1BviI,MAAK6D,QAAQu9F,SAqBtB,KAAM,IAAIh6F,OAAM,kEApBhB,IAAIo1B,EAAKikE,aAAc,EAAM,CAC3B,GAAIjnF,GAAO7Y,EAAK6G,cAAeg1B,EAAK34B,SAAS,EAI7C,IAHA2V,EAAKglB,EAAIhC,EAAKgC,EACdhlB,EAAKwI,EAAIwa,EAAKxa,EAEuB,IAAjChiB,KAAK6D,QAAQu9F,SAAS16F,OASxB,KAAM,IAAIU,OAAM,wEARhBpH,MAAK6D,QAAQu9F,SAAS5nF,EAAM,SAAU8qH,GACd,OAAlBA,GAA4C39H,SAAlB29H,GAAiD,aAAlB18E,EAAO26E,QAElE36E,EAAOzH,KAAK3mC,KAAKyiF,MAAMh6D,aAAanB,OAAOwjG,GAE7C18E,EAAOs7E,+BAMX1tE,OAAMx1D,KAAK6D,QAAQqV,QAAQlZ,KAAK6D,QAAQ4P,QAA0B,kBAAKzT,KAAK6D,QAAQqV,QAAY,GAAoB,sBAMxHlZ,MAAKkjI,4BASTp5H,IAAK,cACL1E,MAAO,WAUL,GARIpF,KAAK8hI,YAAa,GACpB9hI,KAAKihG,iBAIPjhG,KAAK+mD,SAEL/mD,KAAKuiI,OAAS,UACVviI,KAAKsiI,cAAe,EAAM,CAC5B,GAAI7uH,GAASzT,KAAK6D,QAAQqV,QAAQlZ,KAAK6D,QAAQ4P,OAC/CzT,MAAKojI,mBACLpjI,KAAKkkI,kBAAkBzwH,GACvBzT,KAAK0jI,mBACL1jI,KAAKmkI,mBAAmB1wH,EAAwB,iBAAKzT,KAAK6D,QAAQqV,QAAY,GAAmB,iBAGjGlZ,KAAK+jI,iBAAiB/jI,KAAKiiI,SAAUjiI,KAAKgkI,eAAe1jF,KAAKtgD,OAIhEA,KAAKukI,iBAAiB,UAAWvkI,KAAKwkI,eAAelkF,KAAKtgD,OAC1DA,KAAKukI,iBAAiB,YAAavkI,KAAKykI,eAAenkF,KAAKtgD,OAC5DA,KAAKukI,iBAAiB,SAAUvkI,KAAK0kI,iBAAiBpkF,KAAKtgD,OAC3DA,KAAKukI,iBAAiB,YAAavkI,KAAKykI,eAAenkF,KAAKtgD,OAE5DA,KAAKukI,iBAAiB,cAAe,cACrCvkI,KAAKukI,iBAAiB,SAAU,iBAQlCz6H,IAAK,eACL1E,MAAO,WACL,GAAIyjD,GAAS7oD,IAWb,IARIA,KAAK8hI,YAAa,GACpB9hI,KAAKihG,iBAIPjhG,KAAK+mD,SAEL/mD,KAAKuiI,OAAS,WACVviI,KAAKsiI,cAAe,EAAM,CAC5B,GAAI7uH,GAASzT,KAAK6D,QAAQqV,QAAQlZ,KAAK6D,QAAQ4P,OAC/CzT,MAAKojI,mBACLpjI,KAAKkkI,kBAAkBzwH,GACvBzT,KAAK0jI,mBACL1jI,KAAKmkI,mBAAmB1wH,EAA4B,qBAAKzT,KAAK6D,QAAQqV,QAAY,GAAuB,qBAGzGlZ,KAAK+jI,iBAAiB/jI,KAAKiiI,SAAUjiI,KAAKgkI,eAAe1jF,KAAKtgD,OAGhEA,KAAK2kI,kBAAoB3kI,KAAKw9F,iBAAiB4E,mBAAmB,GACnCz7F,SAA3B3G,KAAK2kI,mBACP,WACE,GAAIpiC,GAAO15C,EAAO1I,KAAKg8C,MAAMtzC,EAAO87E,mBAGhCC,EAAkB/7E,EAAOg8E,kBAAkBtiC,EAAKhtF,KAAKipB,EAAG+jE,EAAKhtF,KAAKyM,GAClE8iH,EAAgBj8E,EAAOg8E,kBAAkBtiC,EAAKjtF,GAAGkpB,EAAG+jE,EAAKjtF,GAAG0M,EAEhE6mC,GAAOw5E,aAAapmC,MAAMt0F,KAAKi9H,EAAgBvkI,IAC/CwoD,EAAOw5E,aAAapmC,MAAMt0F,KAAKm9H,EAAczkI,IAE7CwoD,EAAO1I,KAAK87C,MAAM2oC,EAAgBvkI,IAAMukI,EACxC/7E,EAAO1I,KAAK+7C,YAAYv0F,KAAKi9H,EAAgBvkI,IAC7CwoD,EAAO1I,KAAK87C,MAAM6oC,EAAczkI,IAAMykI,EACtCj8E,EAAO1I,KAAK+7C,YAAYv0F,KAAKm9H,EAAczkI,IAG3CwoD,EAAO07E,iBAAiB,UAAW17E,EAAOk8E,kBAAkBzkF,KAAKuI,IACjEA,EAAO07E,iBAAiB,QAAS,cACjC17E,EAAO07E,iBAAiB,SAAU,cAClC17E,EAAO07E,iBAAiB,cAAe17E,EAAOm8E,sBAAsB1kF,KAAKuI,IACzEA,EAAO07E,iBAAiB,SAAU17E,EAAOo8E,iBAAiB3kF,KAAKuI,IAC/DA,EAAO07E,iBAAiB,YAAa17E,EAAOq8E,oBAAoB5kF,KAAKuI,IACrEA,EAAO07E,iBAAiB,cAAe,cAIvC17E,EAAOo7E,oBAAoB,gBAAiB,SAAU9xF,GACpD,GAAIuuE,GAAYne,EAAKgQ,SAAS4yB,oBAAoBhzF,EAC9CyyF,GAAgBx8E,YAAa,IAC/Bw8E,EAAgBpmG,EAAIkiF,EAAUnrG,KAAKipB,EACnComG,EAAgB5iH,EAAI0+F,EAAUnrG,KAAKyM,GAEjC8iH,EAAc18E,YAAa,IAC7B08E,EAActmG,EAAIkiF,EAAUprG,GAAGkpB,EAC/BsmG,EAAc9iH,EAAI0+F,EAAUprG,GAAG0M,KAInC6mC,EAAO1I,KAAKE,QAAQ5H,KAAK,cAG3Bz4C,KAAKkjI,4BASTp5H,IAAK,iBACL1E,MAAO,WACL,GAAI6jD,GAASjpD,IAGTA,MAAK8hI,YAAa,GACpB9hI,KAAKihG,iBAIPjhG,KAAK+mD,SAEL/mD,KAAKuiI,OAAS,QACd,IAAI6C,GAAgBplI,KAAKw9F,iBAAiB2E,mBACtCkjC,EAAgBrlI,KAAKw9F,iBAAiB4E,mBACtCkjC,EAAiB3+H,MACrB,IAAIy+H,EAAc1+H,OAAS,EAAG,CAC5B,IAAK,GAAIG,GAAI,EAAGA,EAAIu+H,EAAc1+H,OAAQG,IACxC,GAAI7G,KAAKmgD,KAAK87C,MAAMmpC,EAAcv+H,IAAI45F,aAAc,EAElD,WADAjrC,OAAMx1D,KAAK6D,QAAQqV,QAAQlZ,KAAK6D,QAAQ4P,QAA4B,oBAAKzT,KAAK6D,QAAQqV,QAAY,GAAsB,mBAKrF,mBAA5BlZ,MAAK6D,QAAQg/H,aACtByC,EAAiBtlI,KAAK6D,QAAQg/H,gBAEvBwC,GAAc3+H,OAAS,GACO,kBAA5B1G,MAAK6D,QAAQi/H,aACtBwC,EAAiBtlI,KAAK6D,QAAQi/H,WAIlC,IAA8B,kBAAnBwC,GAA+B,CACxC,GAAI9rH,IAASyiF,MAAOmpC,EAAejpC,MAAOkpC,EAC1C,IAA8B,IAA1BC,EAAe5+H,OAcjB,KAAM,IAAIU,OAAM,0EAbhBk+H,GAAe9rH,EAAM,SAAU8qH,GACP,OAAlBA,GAA4C39H,SAAlB29H,GAAiD,WAAlBr7E,EAAOs5E,QAElEt5E,EAAO9I,KAAK3mC,KAAK2iF,MAAMl6D,aAAaM,OAAO+hG,EAAcnoC,OACzDlzC,EAAO9I,KAAK3mC,KAAKyiF,MAAMh6D,aAAaM,OAAO+hG,EAAcroC,OACzDhzC,EAAO9I,KAAKE,QAAQ5H,KAAK,mBACzBwQ,EAAOi6E,2BAEPj6E,EAAO9I,KAAKE,QAAQ5H,KAAK,mBACzBwQ,EAAOi6E,gCAObljI,MAAKmgD,KAAK3mC,KAAK2iF,MAAMl6D,aAAaM,OAAO8iG,GACzCrlI,KAAKmgD,KAAK3mC,KAAKyiF,MAAMh6D,aAAaM,OAAO6iG,GACzCplI,KAAKmgD,KAAKE,QAAQ5H,KAAK,mBACvBz4C,KAAKkjI,4BAYTp5H,IAAK,SACL1E,MAAO,WACDpF,KAAK6D,QAAQmN,WAAY,GAE3BhR,KAAKsiI,YAAa,EAElBtiI,KAAKulI,kBACDvlI,KAAK8hI,YAAa,EACpB9hI,KAAKmjI,oBAELnjI,KAAKkjI,2BAGPljI,KAAKwlI,yBAGLxlI,KAAKsiI,YAAa,MAUtBx4H,IAAK,kBACL1E,MAAO,WAEwBuB,SAAzB3G,KAAK+hI,kBACP/hI,KAAK+hI,gBAAkB/jG,SAASM,cAAc,OAC9Ct+B,KAAK+hI,gBAAgB74H,UAAY,mBAC7BlJ,KAAK8hI,YAAa,EACpB9hI,KAAK+hI,gBAAgB9yH,MAAMkmD,QAAU,QAErCn1D,KAAK+hI,gBAAgB9yH,MAAMkmD,QAAU,OAEvCn1D,KAAKqrC,OAAOD,MAAMlN,YAAYl+B,KAAK+hI,kBAIZp7H,SAArB3G,KAAKgiI,cACPhiI,KAAKgiI,YAAchkG,SAASM,cAAc,OAC1Ct+B,KAAKgiI,YAAY94H,UAAY,gBACzBlJ,KAAK8hI,YAAa,EACpB9hI,KAAKgiI,YAAY/yH,MAAMkmD,QAAU,OAEjCn1D,KAAKgiI,YAAY/yH,MAAMkmD,QAAU,QAEnCn1D,KAAKqrC,OAAOD,MAAMlN,YAAYl+B,KAAKgiI,cAIfr7H,SAAlB3G,KAAKiiI,WACPjiI,KAAKiiI,SAAWjkG,SAASM,cAAc,OACvCt+B,KAAKiiI,SAAS/4H,UAAY,YAC1BlJ,KAAKiiI,SAAShzH,MAAMkmD,QAAUn1D,KAAK+hI,gBAAgB9yH,MAAMkmD,QACzDn1D,KAAKqrC,OAAOD,MAAMlN,YAAYl+B,KAAKiiI,cAavCn4H,IAAK,oBACL1E,MAAO,SAA2Bo5B,EAAGxc,GACnC,GAAI+gH,GAAmBpiI,EAAK6G,cAAexH,KAAK6D,QAAQk/H,iBAExDA,GAAiB1iI,GAAK,aAAeM,EAAKqF,aAC1C+8H,EAAiB7vD,QAAS,EAC1B6vD,EAAiBx4E,SAAU,EAC3Bw4E,EAAiBvkG,EAAIA,EACrBukG,EAAiB/gH,EAAIA,CAGrB,IAAIwa,GAAOx8B,KAAKmgD,KAAK48C,UAAUC,WAAW+lC,EAG1C,OAFAvmG,GAAKgpE,MAAMqB,aAAgB/9F,KAAM01B,EAAGiU,MAAOjU,EAAGx1B,IAAKgZ,EAAGktB,OAAQltB,GAEvDwa,KAQT1yB,IAAK,oBACL1E,MAAO,WAELpF,KAAK+mD,SAGL/mD,KAAKojI,mBAGLziI,EAAKgE,mBAAmB3E,KAAKgiI,YAG7B,IAAIvuH,GAASzT,KAAK6D,QAAQqV,QAAQlZ,KAAK6D,QAAQ4P,QAC3C8jC,EAASv3C,KAAKylI,cAAc,WAAY,oCAAqChyH,EAAa,MAAKzT,KAAK6D,QAAQqV,QAAY,GAAQ,KACpIlZ,MAAKgiI,YAAY9jG,YAAYqZ,GAG7Bv3C,KAAK+jI,iBAAiBxsF,EAAQv3C,KAAKgkI,eAAe1jF,KAAKtgD,UASzD8J,IAAK,SACL1E,MAAO,WAELpF,KAAKuiI,QAAS,EAGVviI,KAAKsiI,cAAe,IACtB3hI,EAAKgE,mBAAmB3E,KAAKgiI,aAC7BrhI,EAAKgE,mBAAmB3E,KAAK+hI,iBAG7B/hI,KAAK0lI,4BAIP1lI,KAAK2lI,iCAGL3lI,KAAK4lI,sBAGL5lI,KAAK6lI,yBAGL7lI,KAAKmgD,KAAKE,QAAQ5H,KAAK,qBASzB3uC,IAAK,2BACL1E,MAAO,WAEL,GAAuC,GAAnCpF,KAAKkiI,oBAAoBx7H,OAAa,CACxC,IAAK,GAAIG,GAAI,EAAGA,EAAI7G,KAAKkiI,oBAAoBx7H,OAAQG,IACnD7G,KAAKkiI,oBAAoBr7H,GAAGk5B,SAE9B//B,MAAKkiI,2BAUTp4H,IAAK,yBACL1E,MAAO,WAELpF,KAAK+mD,SAGLpmD,EAAKgE,mBAAmB3E,KAAK+hI,iBAC7BphI,EAAKgE,mBAAmB3E,KAAKgiI,aAC7BrhI,EAAKgE,mBAAmB3E,KAAKiiI,UAGzBjiI,KAAK+hI,iBACP/hI,KAAKqrC,OAAOD,MAAMrmC,YAAY/E,KAAK+hI,iBAEjC/hI,KAAKgiI,aACPhiI,KAAKqrC,OAAOD,MAAMrmC,YAAY/E,KAAKgiI,aAEjChiI,KAAKiiI,UACPjiI,KAAKqrC,OAAOD,MAAMrmC,YAAY/E,KAAKiiI,UAIrCjiI,KAAK+hI,gBAAkBp7H,OACvB3G,KAAKgiI,YAAcr7H,OACnB3G,KAAKiiI,SAAWt7H,UAUlBmD,IAAK,mBACL1E,MAAO,WACL,GAAImE,GAAQ9C,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,EAAIA,UAAU,EAEhFzG,MAAKojI,gBAAgB,mBAAqB75H,GAASy0B,SAASM,cAAc,OAC1Et+B,KAAKojI,gBAAgB,mBAAqB75H,GAAOL,UAAY,qBAC7DlJ,KAAK+hI,gBAAgB7jG,YAAYl+B,KAAKojI,gBAAgB,mBAAqB75H,OAM7EO,IAAK,uBACL1E,MAAO,SAA8BqO,GACnC,GAAI8jC,GAASv3C,KAAKylI,cAAc,UAAW,qBAAsBhyH,EAAgB,SAAKzT,KAAK6D,QAAQqV,QAAY,GAAW,QAC1HlZ,MAAK+hI,gBAAgB7jG,YAAYqZ,GACjCv3C,KAAK+jI,iBAAiBxsF,EAAQv3C,KAAKmhG,YAAY7gD,KAAKtgD,UAGtD8J,IAAK,uBACL1E,MAAO,SAA8BqO,GACnC,GAAI8jC,GAASv3C,KAAKylI,cAAc,UAAW,yBAA0BhyH,EAAgB,SAAKzT,KAAK6D,QAAQqV,QAAY,GAAW,QAC9HlZ,MAAK+hI,gBAAgB7jG,YAAYqZ,GACjCv3C,KAAK+jI,iBAAiBxsF,EAAQv3C,KAAKshG,YAAYhhD,KAAKtgD,UAGtD8J,IAAK,wBACL1E,MAAO,SAA+BqO,GACpC,GAAI8jC,GAASv3C,KAAKylI,cAAc,WAAY,sBAAuBhyH,EAAiB,UAAKzT,KAAK6D,QAAQqV,QAAY,GAAY,SAC9HlZ,MAAK+hI,gBAAgB7jG,YAAYqZ,GACjCv3C,KAAK+jI,iBAAiBxsF,EAAQv3C,KAAKohG,SAAS9gD,KAAKtgD,UAGnD8J,IAAK,wBACL1E,MAAO,SAA+BqO,GACpC,GAAI8jC,GAASv3C,KAAKylI,cAAc,WAAY,sBAAuBhyH,EAAiB,UAAKzT,KAAK6D,QAAQqV,QAAY,GAAY,SAC9HlZ,MAAK+hI,gBAAgB7jG,YAAYqZ,GACjCv3C,KAAK+jI,iBAAiBxsF,EAAQv3C,KAAKuhG,aAAajhD,KAAKtgD,UAGvD8J,IAAK,sBACL1E,MAAO,SAA6BqO,GAClC,GAAI8jC,GAASv3C,KAAKylI,cAAc,SAAU,wBAAyBhyH,EAAY,KAAKzT,KAAK6D,QAAQqV,QAAY,GAAO,IACpHlZ,MAAK+hI,gBAAgB7jG,YAAYqZ,GACjCv3C,KAAK+jI,iBAAiBxsF,EAAQv3C,KAAKwhG,eAAelhD,KAAKtgD,UAGzD8J,IAAK,oBACL1E,MAAO,SAA2BqO,GAChC,GAAI8jC,GAASv3C,KAAKylI,cAAc,OAAQ,sBAAuBhyH,EAAa,MAAKzT,KAAK6D,QAAQqV,QAAY,GAAQ,KAClHlZ,MAAK+hI,gBAAgB7jG,YAAYqZ,GACjCv3C,KAAK+jI,iBAAiBxsF,EAAQv3C,KAAKkjI,uBAAuB5iF,KAAKtgD,UAGjE8J,IAAK,gBACL1E,MAAO,SAAuB/E,EAAI6I,EAAW41B,GAC3C,GAAIgnG,GAAiBr/H,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,GAAmB,YAAcA,UAAU,EASnG,OANAzG,MAAKojI,gBAAgB/iI,EAAK,OAAS29B,SAASM,cAAc,OAC1Dt+B,KAAKojI,gBAAgB/iI,EAAK,OAAO6I,UAAYA,EAC7ClJ,KAAKojI,gBAAgB/iI,EAAK,SAAW29B,SAASM,cAAc,OAC5Dt+B,KAAKojI,gBAAgB/iI,EAAK,SAAS6I,UAAY48H,EAC/C9lI,KAAKojI,gBAAgB/iI,EAAK,SAASqvC,UAAY5Q,EAC/C9+B,KAAKojI,gBAAgB/iI,EAAK,OAAO69B,YAAYl+B,KAAKojI,gBAAgB/iI,EAAK,UAChEL,KAAKojI,gBAAgB/iI,EAAK,UAGnCyJ,IAAK,qBACL1E,MAAO,SAA4B05B,GACjC9+B,KAAK+hI,gBAAgB7jG,YAAYl+B,KAAKylI,cAAc,cAAe,sBAAuB3mG,OAa5Fh1B,IAAK,sBACL1E,MAAO,SAA6B6F,EAAO86H,GACzC/lI,KAAKoiI,wBAAwBz6H,MAAOsD,MAAOA;AAAO+6H,cAAeD,IACjE/lI,KAAKmgD,KAAKE,QAAQrgB,GAAG/0B,EAAO86H,MAW9Bj8H,IAAK,mBACL1E,MAAO,SAA0B6gI,EAAgBF,GAC/C,GAAiDp/H,SAA7C3G,KAAKmgD,KAAKk8C,eAAe4pC,GAI3B,KAAM,IAAI7+H,OAAM,qDAAuD6+H,EAAiB,kBAAoB5iG,KAAKC,UAAU/7B,OAAO6H,KAAKpP,KAAKmgD,KAAKk8C,iBAHjJr8F,MAAKmiI,qBAAqB8D,GAAkBjmI,KAAKmgD,KAAKk8C,eAAe4pC,GACrEjmI,KAAKmgD,KAAKk8C,eAAe4pC,GAAkBF,KAa/Cj8H,IAAK,sBACL1E,MAAO,WACL,IAAK,GAAI8gI,KAAgBlmI,MAAKmiI,qBACxBniI,KAAKmiI,qBAAqB/7H,eAAe8/H,KAC3ClmI,KAAKmgD,KAAKk8C,eAAe6pC,GAAgBlmI,KAAKmiI,qBAAqB+D,SAC5DlmI,MAAKmiI,qBAAqB+D,GAGrClmI,MAAKmiI,2BASPr4H,IAAK,yBACL1E,MAAO,WACL,IAAK,GAAIyB,GAAI,EAAGA,EAAI7G,KAAKoiI,wBAAwB17H,OAAQG,IAAK,CAC5D,GAAIs/H,GAAYnmI,KAAKoiI,wBAAwBv7H,GAAGoE,MAC5C+6H,EAAgBhmI,KAAKoiI,wBAAwBv7H,GAAGm/H,aACpDhmI,MAAKmgD,KAAKE,QAAQlgB,IAAIgmG,EAAWH,GAEnChmI,KAAKoiI,8BAUPt4H,IAAK,mBACL1E,MAAO,SAA0BghI,EAAYJ,GAC3C,GAAIl6E,GAAS,GAAI9nD,GAAOoiI,KACxBh7E,GAAWwM,QAAQ9L,EAAQk6E,GAC3BhmI,KAAKkiI,oBAAoBv6H,KAAKmkD,MAShChiD,IAAK,iCACL1E,MAAO,WAEL,IAAK,GAAIyB,GAAI,EAAGA,EAAI7G,KAAKqiI,aAAalmC,MAAMz1F,OAAQG,IAAK,CACvD7G,KAAKmgD,KAAKg8C,MAAMn8F,KAAKqiI,aAAalmC,MAAMt1F,IAAIsrG,mBACrCnyG,MAAKmgD,KAAKg8C,MAAMn8F,KAAKqiI,aAAalmC,MAAMt1F,GAC/C,IAAIw/H,GAAgBrmI,KAAKmgD,KAAKi8C,YAAY10F,QAAQ1H,KAAKqiI,aAAalmC,MAAMt1F,GACpD,MAAlBw/H,GACFrmI,KAAKmgD,KAAKi8C,YAAY5yF,OAAO68H,EAAe,GAKhD,IAAK,GAAI3wH,GAAK,EAAGA,EAAK1V,KAAKqiI,aAAapmC,MAAMv1F,OAAQgP,IAAM,OACnD1V,MAAKmgD,KAAK87C,MAAMj8F,KAAKqiI,aAAapmC,MAAMvmF,GAC/C,IAAI4wH,GAAgBtmI,KAAKmgD,KAAK+7C,YAAYx0F,QAAQ1H,KAAKqiI,aAAapmC,MAAMvmF,GACpD,MAAlB4wH,GACFtmI,KAAKmgD,KAAK+7C,YAAY1yF,OAAO88H,EAAe,GAIhDtmI,KAAKqiI,cAAiBpmC,SAAWE,aAYnCryF,IAAK,oBACL1E,MAAO,SAA2B6F,GAChCjL,KAAKw9F,iBAAiBwC,cACtBhgG,KAAKumI,UAAYvmI,KAAKmgD,KAAK48C,UAAUvtB,WAAWvkE,EAAMgsC,QACtDj3C,KAAKumI,UAAUh9F,YAAc5oC,EAAKoG,UAAW/G,KAAKmgD,KAAK+8C,KAAK3zD,gBAU9Dz/B,IAAK,wBACL1E,MAAO,SAA+B6F,GACpC,GAAIigD,GAAUlrD,KAAKumI,UACfpT,EAAanzH,KAAKw9F,iBAAiBs2B,yBAAyB5oE,GAC5D31C,EAAOvV,KAAKmgD,KAAK87C,MAAMj8F,KAAKqiI,aAAapmC,MAAM,IAC/C3mF,EAAKtV,KAAKmgD,KAAK87C,MAAMj8F,KAAKqiI,aAAapmC,MAAM,IAC7CsG,EAAOviG,KAAKmgD,KAAKg8C,MAAMn8F,KAAK2kI,kBAChC3kI,MAAKwiI,oBAAsB77H,MAE3B,IAAI6/H,GAAajxH,EAAKi+G,kBAAkBL,GACpCsT,EAAWnxH,EAAGk+G,kBAAkBL,EAEhCqT,MAAe,GACjBxmI,KAAKwiI,oBAAsBjtH,EAC3BgtF,EAAKgQ,SAASh9F,KAAOA,GACZkxH,KAAa,IACtBzmI,KAAKwiI,oBAAsBltH,EAC3BitF,EAAKgQ,SAASj9F,GAAKA,GAIY3O,SAA7B3G,KAAKwiI,qBACPxiI,KAAKw9F,iBAAiB40B,aAAapyH,KAAKwiI,qBAG1CxiI,KAAKmgD,KAAKE,QAAQ5H,KAAK,cAUzB3uC,IAAK,mBACL1E,MAAO,SAA0B6F,GAC/BjL,KAAKmgD,KAAKE,QAAQ5H,KAAK,iBACvB,IAAIyS,GAAUlrD,KAAKmgD,KAAK48C,UAAUvtB,WAAWvkE,EAAMgsC,QAC/C9f,EAAMn3B,KAAKqrC,OAAOk1D,YAAYr1C,EAClC,IAAiCvkD,SAA7B3G,KAAKwiI,oBACPxiI,KAAKwiI,oBAAoBhkG,EAAIrH,EAAIqH,EACjCx+B,KAAKwiI,oBAAoBxgH,EAAImV,EAAInV,MAC5B,CAEL,GAAIk2B,GAAQgT,EAAQ1sB,EAAIx+B,KAAKumI,UAAU/nG,EACnC2Z,EAAQ+S,EAAQlpC,EAAIhiB,KAAKumI,UAAUvkH,CACvChiB,MAAKmgD,KAAK+8C,KAAK3zD,aAAgB/K,EAAGx+B,KAAKumI,UAAUh9F,YAAY/K,EAAI0Z,EAAOl2B,EAAGhiB,KAAKumI,UAAUh9F,YAAYvnB,EAAIm2B,GAE5Gn4C,KAAKmgD,KAAKE,QAAQ5H,KAAK,cAUzB3uC,IAAK,sBACL1E,MAAO,SAA6B6F,GAClC,GAAIigD,GAAUlrD,KAAKmgD,KAAK48C,UAAUvtB,WAAWvkE,EAAMgsC,QAC/Ck8E,EAAanzH,KAAKw9F,iBAAiBs2B,yBAAyB5oE,GAC5Dq3C,EAAOviG,KAAKmgD,KAAKg8C,MAAMn8F,KAAK2kI,kBAEhC,IAAiCh+H,SAA7B3G,KAAKwiI,oBAAT,CAKAxiI,KAAKw9F,iBAAiBwC,aAGtB,KAAK,GAFD0mC,GAAqB1mI,KAAKw9F,iBAAiB24B,4BAA4BhD,GACvE32F,EAAO71B,OACFE,EAAI6/H,EAAmBhgI,OAAS,EAAGG,GAAK,EAAGA,IAClD,GAAI6/H,EAAmB7/H,KAAO7G,KAAKwiI,oBAAoBniI,GAAI,CACzDm8B,EAAOx8B,KAAKmgD,KAAK87C,MAAMyqC,EAAmB7/H,GAC1C,OAIJ,GAAaF,SAAT61B,GAAmD71B,SAA7B3G,KAAKwiI,oBAC7B,GAAIhmG,EAAKikE,aAAc,EACrBjrC,MAAMx1D,KAAK6D,QAAQqV,QAAQlZ,KAAK6D,QAAQ4P,QAAyB,iBAAKzT,KAAK6D,QAAQqV,QAAY,GAAmB,qBAC7G,CACL,GAAI3D,GAAOvV,KAAKmgD,KAAK87C,MAAMj8F,KAAKqiI,aAAapmC,MAAM,GAC/Cj8F,MAAKwiI,oBAAoBniI,KAAOkV,EAAKlV,GACvCL,KAAK2mI,iBAAiBnqG,EAAKn8B,GAAIkiG,EAAKjtF,GAAGjV,IAEvCL,KAAK2mI,iBAAiBpkC,EAAKhtF,KAAKlV,GAAIm8B,EAAKn8B,QAI7CkiG,GAAKuP,iBACL9xG,KAAKmgD,KAAKE,QAAQ5H,KAAK,iBAEzBz4C,MAAKmgD,KAAKE,QAAQ5H,KAAK,eAczB3uC,IAAK,iBACL1E,MAAO,SAAwB6F,GAE7B,IAAI,GAAIvF,OAAOuC,UAAYjI,KAAK+uH,UAAY,IAAK,CAC/C/uH,KAAKumI,UAAYvmI,KAAKmgD,KAAK48C,UAAUvtB,WAAWvkE,EAAMgsC,QACtDj3C,KAAKumI,UAAUh9F,YAAc5oC,EAAKoG,UAAW/G,KAAKmgD,KAAK+8C,KAAK3zD,YAE5D,IAAI2hB,GAAUlrD,KAAKumI,UACf/pG,EAAOx8B,KAAKw9F,iBAAiB6E,UAAUn3C,EAE3C,IAAavkD,SAAT61B,EACF,GAAIA,EAAKikE,aAAc,EACrBjrC,MAAMx1D,KAAK6D,QAAQqV,QAAQlZ,KAAK6D,QAAQ4P,QAAyB,iBAAKzT,KAAK6D,QAAQqV,QAAY,GAAmB,qBAC7G,CAEL,GAAI0tH,GAAa5mI,KAAK6kI,kBAAkBroG,EAAKgC,EAAGhC,EAAKxa,EACrDhiB,MAAKmgD,KAAK87C,MAAM2qC,EAAWvmI,IAAMumI,EACjC5mI,KAAKmgD,KAAK+7C,YAAYv0F,KAAKi/H,EAAWvmI,GAGtC,IAAIwmI,GAAiB7mI,KAAKmgD,KAAK48C,UAAUE,YACvC58F,GAAI,iBAAmBM,EAAKqF,aAC5BuP,KAAMinB,EAAKn8B,GACXiV,GAAIsxH,EAAWvmI,GACfkqD,SAAS,EACT+mD,QACEtgG,SAAS,EACTjJ,KAAM,aACNypG,UAAW,KAGfxxG,MAAKmgD,KAAKg8C,MAAM0qC,EAAexmI,IAAMwmI,EACrC7mI,KAAKmgD,KAAKi8C,YAAYz0F,KAAKk/H,EAAexmI,IAE1CL,KAAKqiI,aAAapmC,MAAMt0F,KAAKi/H,EAAWvmI,IACxCL,KAAKqiI,aAAalmC,MAAMx0F,KAAKk/H,EAAexmI,IAGhDL,KAAK+uH,WAAY,GAAIrpH,OAAOuC,cAIhC6B,IAAK,mBACL1E,MAAO,SAA0B6F,GAC/B,GAAIigD,GAAUlrD,KAAKmgD,KAAK48C,UAAUvtB,WAAWvkE,EAAMgsC,OACnD,IAAmCtwC,SAA/B3G,KAAKqiI,aAAapmC,MAAM,GAAkB,CAC5C,GAAI2qC,GAAa5mI,KAAKmgD,KAAK87C,MAAMj8F,KAAKqiI,aAAapmC,MAAM,GACzD2qC,GAAWpoG,EAAIx+B,KAAKqrC,OAAO6iF,qBAAqBhjE,EAAQ1sB,GACxDooG,EAAW5kH,EAAIhiB,KAAKqrC,OAAO8iF,qBAAqBjjE,EAAQlpC,GACxDhiB,KAAKmgD,KAAKE,QAAQ5H,KAAK,eAClB,CACL,GAAIP,GAAQgT,EAAQ1sB,EAAIx+B,KAAKumI,UAAU/nG,EACnC2Z,EAAQ+S,EAAQlpC,EAAIhiB,KAAKumI,UAAUvkH,CACvChiB,MAAKmgD,KAAK+8C,KAAK3zD,aAAgB/K,EAAGx+B,KAAKumI,UAAUh9F,YAAY/K,EAAI0Z,EAAOl2B,EAAGhiB,KAAKumI,UAAUh9F,YAAYvnB,EAAIm2B,OAW9GruC,IAAK,iBACL1E,MAAO,SAAwB6F,GAC7B,GAAIigD,GAAUlrD,KAAKmgD,KAAK48C,UAAUvtB,WAAWvkE,EAAMgsC,QAC/Ck8E,EAAanzH,KAAKw9F,iBAAiBs2B,yBAAyB5oE,GAG5D47E,EAAgBngI,MACeA,UAA/B3G,KAAKqiI,aAAalmC,MAAM,KAC1B2qC,EAAgB9mI,KAAKmgD,KAAKg8C,MAAMn8F,KAAKqiI,aAAalmC,MAAM,IAAI8K,OAM9D,KAAK,GAFDy/B,GAAqB1mI,KAAKw9F,iBAAiB24B,4BAA4BhD,GACvE32F,EAAO71B,OACFE,EAAI6/H,EAAmBhgI,OAAS,EAAGG,GAAK,EAAGA,IAElD,GAA+D,KAA3D7G,KAAKqiI,aAAapmC,MAAMv0F,QAAQg/H,EAAmB7/H,IAAY,CACjE21B,EAAOx8B,KAAKmgD,KAAK87C,MAAMyqC,EAAmB7/H,GAC1C,OAKJ7G,KAAK2lI,iCAGQh/H,SAAT61B,IACEA,EAAKikE,aAAc,EACrBjrC,MAAMx1D,KAAK6D,QAAQqV,QAAQlZ,KAAK6D,QAAQ4P,QAAyB,iBAAKzT,KAAK6D,QAAQqV,QAAY,GAAmB,iBAE3EvS,SAAnC3G,KAAKmgD,KAAK87C,MAAM6qC,IAA6DngI,SAA7B3G,KAAKmgD,KAAK87C,MAAMz/D,EAAKn8B,KACvEL,KAAK+mI,gBAAgBD,EAAetqG,EAAKn8B,KAI/CL,KAAKmgD,KAAKE,QAAQ5H,KAAK,cAYzB3uC,IAAK,kBACL1E,MAAO,SAAyB4hI,GAC9B,GAAI39E,GAASrpD,KAETinI,GACF5mI,GAAIM,EAAKqF,aACTw4B,EAAGwoG,EAAU97E,QAAQ7f,OAAO7M,EAC5Bxc,EAAGglH,EAAU97E,QAAQ7f,OAAOrpB,EAC5B8c,MAAO,MAGT,IAAoC,kBAAzB9+B,MAAK6D,QAAQ6+H,QAAwB,CAC9C,GAAoC,IAAhC1iI,KAAK6D,QAAQ6+H,QAAQh8H,OASvB,KAAM,IAAIU,OAAM,sEARhBpH,MAAK6D,QAAQ6+H,QAAQuE,EAAa,SAAU3C,GACpB,OAAlBA,GAA4C39H,SAAlB29H,GAAiD,YAAlBj7E,EAAOk5E,SAElEl5E,EAAOlJ,KAAK3mC,KAAKyiF,MAAMh6D,aAAajb,IAAIs9G,GACxCj7E,EAAO65E,gCAQbljI,MAAKmgD,KAAK3mC,KAAKyiF,MAAMh6D,aAAajb,IAAIigH,GACtCjnI,KAAKkjI,4BAWTp5H,IAAK,kBACL1E,MAAO,SAAyB8hI,EAAcC,GAC5C,GAAI39E,GAASxpD,KAETinI,GAAgB1xH,KAAM2xH,EAAc5xH,GAAI6xH,EAC5C,IAAoC,kBAAzBnnI,MAAK6D,QAAQ8+H,QAAwB,CAC9C,GAAoC,IAAhC3iI,KAAK6D,QAAQ8+H,QAAQj8H,OAUvB,KAAM,IAAIU,OAAM,0EAThBpH,MAAK6D,QAAQ8+H,QAAQsE,EAAa,SAAU3C,GACpB,OAAlBA,GAA4C39H,SAAlB29H,GAAiD,YAAlB96E,EAAO+4E,SAElE/4E,EAAOrJ,KAAK3mC,KAAK2iF,MAAMl6D,aAAajb,IAAIs9G,GACxC96E,EAAOg0C,iBAAiBwC,cACxBx2C,EAAO05E,gCAObljI,MAAKmgD,KAAK3mC,KAAK2iF,MAAMl6D,aAAajb,IAAIigH,GACtCjnI,KAAKw9F,iBAAiBwC,cACtBhgG,KAAKkjI,4BAWTp5H,IAAK,mBACL1E,MAAO,SAA0B8hI,EAAcC,GAC7C,GAAIjG,GAASlhI,KAETinI,GAAgB5mI,GAAIL,KAAK2kI,kBAAmBpvH,KAAM2xH,EAAc5xH,GAAI6xH,EACxE,IAAqC,kBAA1BnnI,MAAK6D,QAAQ++H,SAAyB,CAC/C,GAAqC,IAAjC5iI,KAAK6D,QAAQ++H,SAASl8H,OAaxB,KAAM,IAAIU,OAAM,wEAZhBpH,MAAK6D,QAAQ++H,SAASqE,EAAa,SAAU3C,GACrB,OAAlBA,GAA4C39H,SAAlB29H,GAAiD,aAAlBpD,EAAOqB,QAElErB,EAAO/gF,KAAKg8C,MAAM8qC,EAAY5mI,IAAIyxG,iBAClCovB,EAAO/gF,KAAKE,QAAQ5H,KAAK,aAEzByoF,EAAO/gF,KAAK3mC,KAAK2iF,MAAMl6D,aAAanB,OAAOwjG,GAC3CpD,EAAO1jC,iBAAiBwC,cACxBkhC,EAAOgC,gCAObljI,MAAKmgD,KAAK3mC,KAAK2iF,MAAMl6D,aAAanB,OAAOmmG,GACzCjnI,KAAKw9F,iBAAiBwC,cACtBhgG,KAAKkjI,6BAKJrB,IAGTjiI,GAAAA,WAAkBiiI,GAId,SAAShiI,EAAQD,GAIrB2H,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAST,IAAIic,GAAS,SACTorE,EAAU,UACVl2E,EAAS,SACT3M,EAAQ,QACRnF,EAAS,SACT+1C,EAAM,MACNkyC,EAAM,MAENlpF,GACF0yE,WACEllE,SAAWy7E,UAASA,GACpBrsD,QAAUqsD,UAASA,EAASprE,OAAQA,EAAQzX,MAAOA,EAAO+iF,WAAY,YACtE3nD,WAAawV,IAAKA,GAClB8L,YAAcmmC,UAASA,GACvBxf,UAAYxoE,OAAQA,EAAQgoF,UAASA,EAASprE,OAAQA,EAAQzX,MAAOA,EAAO+iF,WAAY,aAE1FwP,OACE6U,QACE17F,IAAMtE,SAAWy7E,UAASA,GAAWwkB,aAAe16F,OAAQA,GAAU02D,UAAYxoE,OAAQA,EAAQgoF,UAASA,IAC3G/6E,QAAUV,SAAWy7E,UAASA,GAAWwkB,aAAe16F,OAAQA,GAAU02D,UAAYxoE,OAAQA,EAAQgoF,UAASA,IAC/Gl3E,MAAQvE,SAAWy7E,UAASA,GAAWwkB,aAAe16F,OAAQA,GAAU02D,UAAYxoE,OAAQA,EAAQgoF,UAASA,IAC7Gxf,UAAY5rD,QAAS,OAAQ,KAAM,UAAW5c,OAAQA,IAExDysG,oBAAsBzkB,UAASA,GAC/B7/E,OACEA,OAASyU,OAAQA,GACjB/S,WAAa+S,OAAQA,GACrB9S,OAAS8S,OAAQA,GACjBo5C,SAAWp5C,QAAS,OAAQ,KAAM,QAASorE,UAASA,GACpD5/E,SAAW0J,OAAQA,GACnB02D,UAAYxoE,OAAQA,EAAQ4c,OAAQA,IAEtCysF,QAAUrhB,UAASA,EAAS7iF,MAAOA,GACnC+oC,MACE/lC,OAASyU,OAAQA,GACjBwd,MAAQtoB,OAAQA,GAChBsuF,MAAQxjF,OAAQA,GAChBjT,YAAciT,OAAQA,GACtBknB,aAAehyB,OAAQA,GACvBuuF,aAAezjF,OAAQA,GACvBu3D,OAASv3D,QAAS,aAAc,MAAO,SAAU,WACjD4rD,UAAYxoE,OAAQA,EAAQ4c,OAAQA,IAEtC6xD,QAAUuZ,UAASA,GACnB0kB,YAAcxkB,WAAY,WAAYp2E,OAAQA,GAC9CuoB,OAASzd,OAAQA,EAAQ1a,UAAa,aACtCq+F,oBAAsBvY,UAASA,GAC/B/lF,QAAU6P,OAAQA,EAAQ5P,UAAa,aACvC4jD,SAAWkiC,UAASA,GACpB0Y,SACElgG,KAAOsR,OAAQA,GACfrR,KAAOqR,OAAQA,GACfuoB,OACE9tB,SAAWy7E,UAASA,GACpBxnF,KAAOsR,OAAQA,GACfrR,KAAOqR,OAAQA,GACf6uF,YAAc7uF,OAAQA,GACtB8uF,eAAiB9uF,OAAQA,GACzB02D,UAAYxoE,OAAQA,EAAQgoF,UAASA,IAEvC6Y,uBAAyB3Y,WAAY,YACrC1f,UAAYxoE,OAAQA,IAEtB2sG,gBAAkBzkB,WAAY,WAAYp2E,OAAQA,GAClD86F,mBAAqB96F,OAAQA,GAC7BgvF,QACEv0F,SAAWy7E,UAASA,GACpB7/E,OAASyU,OAAQA,GACjBwd,MAAQtoB,OAAQA,GAChBioB,GAAKjoB,OAAQA,GACbyL,GAAKzL,OAAQA,GACb02D,UAAYxoE,OAAQA,EAAQgoF,UAASA,IAEvC6kB,QACEtgG,SAAWy7E,UAASA,GACpB1kF,MAAQsZ,QAAS,UAAW,aAAc,WAAY,gBAAiB,gBAAiB,aAAc,WAAY,WAAY,YAAa,gBAC3ImwF,WAAaj7F,OAAQA,GACrBg7F,gBAAkBlwF,QAAS,aAAc,WAAY,QAASorE,UAASA,GACvExf,UAAYxoE,OAAQA,EAAQgoF,UAASA,IAEvC9V,OAASt1D,OAAQA,EAAQ1a,UAAa,aACtCy4B,OAAS7oB,OAAQA,GACjBnR,OAASmR,OAAQA,EAAQ5P,UAAa,aACtCsmE,UAAYxoE,OAAQA,IAEtBg7C,QACEskD,kBAAoBtX,UAASA,GAC7B1f,QAAS,4CACTE,UAAYxoE,OAAQA,IAEtBi7F,aACEgxB,WAAajkC,UAASA,GACtBkkC,UAAYlkC,UAASA,GACrBi/B,iBAAmBj/B,UAASA,GAC5Bk/B,iBAAmBl/B,UAASA,GAC5Bl+E,OAASk+E,UAASA,GAClBmkC,UACE5/G,SAAWy7E,UAASA,GACpBokC,OAASryF,GAAKjoB,OAAQA,GAAUyL,GAAKzL,OAAQA,GAAUm7D,MAAQn7D,OAAQA,GAAU02D,UAAYxoE,OAAQA,IACrGqsH,cAAgBrkC,UAASA,GACzBxf,UAAYxoE,OAAQA,EAAQgoF,UAASA,IAEvCtT,aAAesT,UAASA,GACxBskC,mBAAqBtkC,UAASA,GAC9BvT,YAAcuT,UAASA,GACvB4oC,sBAAwB5oC,UAASA,GACjC6oC,qBAAuB7oC,UAASA,GAChCukC,cAAgBz6G,OAAQA,GACxB06G,UAAYxkC,UAASA,GACrBxf,UAAYxoE,OAAQA,IAEtBg7F,QACEuiB,YAAcr7G,UAAa,YAAa4P,OAAQA,GAChD6gH,gBAAkB3qC,UAASA,GAC3B4qC,cACErmH,SAAWy7E,UAASA,GACpB6qC,iBAAmB/gH,OAAQA,GAC3BghH,aAAehhH,OAAQA,GACvBihH,aAAejhH,OAAQA,GACvBkhH,eAAiBhrC,UAASA,GAC1BirC,kBAAoBjrC,UAASA,GAC7BkrC,sBAAwBlrC,UAASA,GACjC/gE,WAAarK,QAAS,KAAM,KAAM,KAAM,OACxCu2G,YAAcv2G,QAAS,UAAW,aAClC4rD,UAAYxoE,OAAQA,EAAQgoF,UAASA,IAEvCxf,UAAYxoE,OAAQA,IAEtB25F,cACEptF,SAAWy7E,UAASA,GACpBg2C,iBAAmBh2C,UAASA,GAC5Bi2C,SAAWj2C,UAASA,EAASE,WAAY,YACzCg2C,SAAWl2C,UAASA,EAASE,WAAY,YACzCyU,UAAYzU,WAAY,YACxBi2C,UAAYn2C,UAASA,EAASE,WAAY,YAC1Ck2C,YAAcp2C,UAASA,EAASE,WAAY,YAC5Cm2C,YAAcr2C,UAASA,EAASE,WAAY,YAC5Co2C,iBAAkB,4CAClB91D,UAAYxoE,OAAQA,EAAQgoF,UAASA,IAEvCwP,OACEtwD,aAAep1B,OAAQA,GACvBmuF,qBAAuBnuF,OAAQA,EAAQ5P,UAAa,aACpDg+F,aAAetjF,OAAQA,EAAQ1a,UAAa,aAC5CiG,OACEyB,QAAUgT,OAAQA,GAClBjT,YAAciT,OAAQA,GACtB/S,WACED,QAAUgT,OAAQA,GAClBjT,YAAciT,OAAQA,GACtB4rD,UAAYxoE,OAAQA,EAAQ4c,OAAQA,IAEtC9S,OACEF,QAAUgT,OAAQA,GAClBjT,YAAciT,OAAQA,GACtB4rD,UAAYxoE,OAAQA,EAAQ4c,OAAQA,IAEtC4rD,UAAYxoE,OAAQA,EAAQ4c,OAAQA,IAEtCujF,OACEpmE,GAAKiuD,UAASA,GACdzqE,GAAKyqE,UAASA,GACdxf,UAAYxoE,OAAQA,EAAQgoF,UAASA,IAEvC95C,MACE/lC,OAASyU,OAAQA,GACjBwd,MAAQtoB,OAAQA,GAChBsuF,MAAQxjF,OAAQA,GAChBjT,YAAciT,OAAQA,GACtBknB,aAAehyB,OAAQA,GACvBuuF,aAAezjF,OAAQA,GACvB4rD,UAAYxoE,OAAQA,EAAQ4c,OAAQA,IAEtC8iC,OAAS9iC,OAAQA,EAAQ9K,OAAQA,EAAQ5P,UAAa,aACtDusE,QAAUuZ,UAASA,GACnB0L,MACE0M,MAAQxjF,OAAQA,GAChBhI,MAAQgI,OAAQA,GAChBwd,MAAQtoB,OAAQA,GAChB3J,OAASyU,OAAQA,GACjB4rD,UAAYxoE,OAAQA,IAEtBpE,IAAMghB,OAAQA,EAAQ9K,OAAQA,GAC9BwuF,OAAS1jF,OAAQA,EAAQ1a,UAAa,aACtCm4B,OAASzd,OAAQA,EAAQ1a,UAAa,aACtCq+F,oBAAsBvY,UAASA,GAC/BwY,OAAS1uF,OAAQA,EAAQ5P,UAAa,aACtCu+F,MAAQ3uF,OAAQA,GAChBg0C,SAAWkiC,UAASA,GACpB0Y,SACElgG,KAAOsR,OAAQA,GACfrR,KAAOqR,OAAQA,GACfuoB,OACE9tB,SAAWy7E,UAASA,GACpBxnF,KAAOsR,OAAQA,GACfrR,KAAOqR,OAAQA,GACf6uF,YAAc7uF,OAAQA,GACtB8uF,eAAiB9uF,OAAQA,GACzB02D,UAAYxoE,OAAQA,EAAQgoF,UAASA,IAEvC6Y,uBAAyB3Y,WAAY,YACrC1f,UAAYxoE,OAAQA,IAEtB8gG,QACEv0F,SAAWy7E,UAASA,GACpB7/E,OAASyU,OAAQA,GACjBwd,MAAQtoB,OAAQA,GAChBioB,GAAKjoB,OAAQA,GACbyL,GAAKzL,OAAQA,GACb02D,UAAYxoE,OAAQA,EAAQgoF,UAASA,IAEvC+Y,OAASnkF,QAAS,UAAW,SAAU,WAAY,MAAO,OAAQ,QAAS,gBAAiB,UAAW,MAAO,OAAQ,WAAY,eAAgB,SAAU,SAC5JokF,iBACEC,cAAgBjZ,UAASA,EAAS7iF,MAAOA,GACzC6wC,cAAgBlkC,OAAQA,GACxBu3E,eAAiBrB,UAASA,GAC1BkZ,cAAgBlZ,UAASA,GACzBmZ,oBAAsBnZ,UAASA,GAC/Bxf,UAAYxoE,OAAQA,IAEtBo6B,MAAQtoB,OAAQA,GAChBogE,OAASt1D,OAAQA,EAAQ1a,UAAa,aACtCvB,OAASmR,OAAQA,EAAQ5P,UAAa,aACtC63B,GAAKjoB,OAAQA,GACbyL,GAAKzL,OAAQA,GACb02D,UAAYxoE,OAAQA,IAEtB8lD,SACEv5C,SAAWy7E,UAASA,GACpB2xB,WACEE,uBAAyB/nG,OAAQA,GACjCgoG,gBAAkBhoG,OAAQA,GAC1BioG,cAAgBjoG,OAAQA,GACxBkoG,gBAAkBloG,OAAQA,GAC1BmoG,SAAWnoG,OAAQA,GACnBooG,cAAgBpoG,OAAQA,GACxB02D,UAAYxoE,OAAQA,IAEtBm6G,kBACEN,uBAAyB/nG,OAAQA,GACjCgoG,gBAAkBhoG,OAAQA,GAC1BioG,cAAgBjoG,OAAQA,GACxBkoG,gBAAkBloG,OAAQA,GAC1BmoG,SAAWnoG,OAAQA,GACnBooG,cAAgBpoG,OAAQA,GACxB02D,UAAYxoE,OAAQA,IAEtBo6G,WACEN,gBAAkBhoG,OAAQA,GAC1BioG,cAAgBjoG,OAAQA,GACxBkoG,gBAAkBloG,OAAQA,GAC1BuoG,cAAgBvoG,OAAQA,GACxBmoG,SAAWnoG,OAAQA,GACnB02D,UAAYxoE,OAAQA,IAEtBs6G,uBACER,gBAAkBhoG,OAAQA,GAC1BioG,cAAgBjoG,OAAQA,GACxBkoG,gBAAkBloG,OAAQA,GAC1BuoG,cAAgBvoG,OAAQA,GACxBmoG,SAAWnoG,OAAQA,GACnB02D,UAAYxoE,OAAQA,IAEtBu6G,aAAezoG,OAAQA,GACvB0oG,aAAe1oG,OAAQA,GACvBi0C,QAAUnpC,QAAS,YAAa,YAAa,wBAAyB,qBACtE69F,eACEluG,SAAWy7E,UAASA,GACpBqiB,YAAcv4F,OAAQA,GACtB4oG,gBAAkB5oG,OAAQA,GAC1B6oG,kBAAoB3yB,UAASA,GAC7B3qC,KAAO2qC,UAASA,GAChBxf,UAAYxoE,OAAQA,EAAQgoF,UAASA,IAEvC4yB,UAAY9oG,OAAQA,GACpBqnG,kBAAoBnxB,UAASA,GAC7Bxf,UAAYxoE,OAAQA,EAAQgoF,UAASA,IAIvC7sC,YAAc6sC,UAASA,GACvB5W,YAAc4W,UAASA,GACvBh5E,QAAU4N,OAAQA,GAClBnI,SACE6zD,SAAW2f,IAAKA,GAChBzf,UAAYxoE,OAAQA,IAEtB46B,QAAUhe,OAAQA,GAClB+d,OAAS/d,OAAQA,GACjB4rD,UAAYxoE,OAAQA,GAGtBjB,GAAWi8C,OAAOstB,QAAUvpE,EAAWy4F,MACvCz4F,EAAW46F,aAAa2kC,iBAAmBv/H,EAAWy4F,KAEtD,IAAI15C,IACF05C,OACEtwD,aAAc,EAAG,EAAG,GAAI,GACxB+4D,qBAAsB,EAAG,EAAG,GAAI,GAChC93F,OACEyB,QAAS,QAAS,WAClBD,YAAa,QAAS,WACtBE,WACED,QAAS,QAAS,WAClBD,YAAa,QAAS,YAExBG,OACEF,QAAS,QAAS,WAClBD,YAAa,QAAS,aAG1Bw2F,OACEpmE,GAAG,EACHxc,GAAG,GAEL2wB,MACE/lC,OAAQ,QAAS,WACjBiyB,MAAO,GAAI,EAAG,IAAK,GACnBgmE,MAAO,QAAS,UAAW,UAC3Bz2F,YAAa,QAAS,QACtBm6B,aAAc,EAAG,EAAG,GAAI,GACxBu8D,aAAc,QAAS,YAGzB5xB,QAAQ,EACR8xB,oBAAoB,EAQpBz6C,SAAS,EACT46C,SACElgG,KAAM,GAAI,EAAG,IAAK,GAClBC,KAAM,GAAI,EAAG,IAAK,GAClB45B,OACE9tB,SAAS,EACT/L,KAAM,GAAI,EAAG,IAAK,GAClBC,KAAM,GAAI,EAAG,IAAK,GAClBkgG,YAAa,GAAI,EAAG,IAAK,GACzBC,eAAgB,EAAG,EAAG,GAAI,KAG9BE,QACEv0F,SAAS,EACTpE,MAAO,kBACPiyB,MAAO,GAAI,EAAG,GAAI,GAClBL,GAAI,EAAG,IAAK,GAAI,GAChBxc,GAAI,EAAG,IAAK,GAAI,IAElBwjF,OAAQ,UAAW,MAAO,SAAU,WAAY,UAAW,MAAO,SAAU,OAAQ,OAAQ,WAAY,gBACxGC,iBACEC,cAAc,EACdjrD,cAAe,EAAG,EAAG,GAAI,GACzBqzC,eAAe,EACf6X,cAAc,GAEhB9mE,MAAO,GAAI,EAAG,IAAK,IAErBs9D,OACE6U,QACE17F,IAAMtE,SAAS,EAAOigG,aAAc,EAAG,EAAG,EAAG,MAC7Cv/F,QAAUV,SAAS,EAAOigG,aAAc,EAAG,EAAG,EAAG,MACjD17F,MAAQvE,SAAS,EAAOigG,aAAc,EAAG,EAAG,EAAG,OAEjDC,oBAAoB,EACpBtkG,OACEA,OAAQ,QAAS,WACjB0B,WAAY,QAAS,WACrBC,OAAQ,QAAS,WACjBksD,SAAU,OAAQ,KAAM,QAAQ,GAAM,GACtC5tD,SAAU,EAAG,EAAG,EAAG,MAErBihG,QAAQ,EACRn7D,MACE/lC,OAAQ,QAAS,WACjBiyB,MAAO,GAAI,EAAG,IAAK,GACnBgmE,MAAO,QAAS,UAAW,UAC3Bz2F,YAAa,QAAS,QACtBm6B,aAAc,EAAG,EAAG,GAAI,GACxBu8D,aAAc,QAAS,WACvBlsB,OAAQ,aAAc,MAAO,SAAU,WAEzC1F,QAAQ,EACRi+B,YAAa,IAAK,EAAG,EAAG,IACxBnM,oBAAoB,EACpBz6C,SAAS,EACT46C,SACElgG,KAAM,EAAG,EAAG,IAAK,GACjBC,KAAM,GAAI,EAAG,IAAK,GAClB45B,OACE9tB,SAAS,EACT/L,KAAM,GAAI,EAAG,IAAK,GAClBC,KAAM,GAAI,EAAG,IAAK,GAClBkgG,YAAa,GAAI,EAAG,IAAK,GACzBC,eAAgB,EAAG,EAAG,GAAI,KAG9B+L,gBAAiB,IAAK,EAAG,EAAG,IAC5BC,mBAAoB,GAAI,EAAG,IAAK,GAChC9L,QACEv0F,SAAS,EACTpE,MAAO,kBACPiyB,MAAO,GAAI,EAAG,GAAI,GAClBL,GAAI,EAAG,IAAK,GAAI,GAChBxc,GAAI,EAAG,IAAK,GAAI,IAElBsvF,QACEtgG,SAAS,EACTjJ,MAAO,UAAW,aAAc,WAAY,gBAAiB,gBAAiB,aAAc,WAAY,WAAY,YAAa,eACjIwpG,gBAAiB,aAAc,WAAY,QAC3CC,WAAY,GAAK,EAAG,EAAG,MAEzBpyE,OAAQ,EAAG,EAAG,GAAI,IAEpBqgE,QAGE43B,cACErmH,SAAS,EACTsmH,iBAAkB,IAAK,GAAI,IAAK,GAChCC,aAAc,IAAK,GAAI,IAAK,GAC5BC,aAAc,IAAK,GAAI,IAAK,GAC5BC,eAAe,EACfC,kBAAkB,EAClBC,sBAAsB,EACtBjsG,WAAY,KAAM,KAAM,KAAM,MAC9BksG,YAAa,UAAW,cAG5Bl4B,aACEgxB,WAAW,EACXC,UAAU,EACVjF,iBAAiB,EACjBC,iBAAiB,EACjBp9G,OAAO,EACPqiH,UACE5/G,SAAS,EACT6/G,OAASryF,GAAI,GAAI,EAAG,GAAI,GAAIxc,GAAI,GAAI,EAAG,GAAI,GAAI0vD,MAAO,IAAM,EAAG,GAAK,OACpEo/C,cAAc,GAEhB33C,aAAa,EACb43C,mBAAmB,EACnB73C,YAAY,EACZm8C,sBAAsB,EACtBC,qBAAqB,EACrBtE,cAAe,IAAK,EAAG,IAAM,IAC7BC,UAAU,GAEZ7yB,cACEptF,SAAS,EACTyxH,iBAAiB,GAEnBl4E,SACEv5C,SAAS,EACTotG,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,KAC9Bz0D,QAAS,YAAa,mBAAoB,YAAa,yBACvD60D,UAAW,GAAK,IAAM,EAAG,MAG3BtsG,QACEU,QAAS,KAAM,OAInB7T,GAAQ4D,WAAaA,EACrB5D,EAAQ2iD,iBAAmBA,GAIvB,SAAS1iD,EAAQD,EAASM,GAiB9B,QAASo/C,GAAuBj7C,GAAO,MAAOA,IAAOA,EAAIk7C,WAAal7C,GAAQm7C,UAASn7C,GAEvF,QAAS2gD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCAfhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAI6kG,GAAiB,WAAc,QAASC,GAAc3hG,EAAK1B,GAAK,GAAIsjG,MAAeC,GAAK,EAAUv1F,GAAK,EAAWw1F,EAAK1jG,MAAW,KAAM,IAAK,GAAiC2jG,GAA7B50F,EAAKnN,EAAIpE,OAAOC,cAAmBgmG,GAAME,EAAK50F,EAAGqD,QAAQs3D,QAAoB85B,EAAKxiG,KAAK2iG,EAAGllG,QAAYyB,GAAKsjG,EAAKzjG,SAAWG,GAA3DujG,GAAK,IAAoE,MAAO7hD,GAAO1zC,GAAK,EAAMw1F,EAAK9hD,EAAO,QAAU,KAAW6hD,GAAM10F,EAAG,WAAWA,EAAG,YAAe,QAAU,GAAIb,EAAI,KAAMw1F,IAAQ,MAAOF,GAAQ,MAAO,UAAU5hG,EAAK1B,GAAK,GAAIK,MAAMC,QAAQoB,GAAQ,MAAOA,EAAY,IAAIpE,OAAOC,WAAYmD,QAAOgB,GAAQ,MAAO2hG,GAAc3hG,EAAK1B,EAAa,MAAM,IAAIS,WAAU,4DAEllB89C,EAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAG5hBkiF,EAAiBlnI,EAAoB,KAErCmnI,EAAkB/nF,EAAuB8nF,GAezCE,EAAc,WAChB,QAASA,GAAYnnF,EAAM0kE,EAAY0iB,GACrCviF,EAAgBhlD,KAAMsnI,GAEtBtnI,KAAKmgD,KAAOA,EACZngD,KAAKw+G,aAAeqG,EACpB7kH,KAAKy+G,eAAiB8oB,EACtBvnI,KAAKwnI,eAAiB,GAAIH,GAAAA,WAuP5B,MA9OAjiF,GAAakiF,IACXx9H,IAAK,aACL1E,MAAO,SAAoBvB,GACrBA,IACEA,EAAQ26G,eACVx+G,KAAKw+G,aAAe36G,EAAQ26G,cAE1B36G,EAAQ46G,iBACVz+G,KAAKy+G,eAAiB56G,EAAQ46G,oBAYpC30G,IAAK,QACL1E,MAAO,SAAe8kH,EAAYud,GAChC,GAAIC,GAAiBjhI,UAAUC,QAAU,GAAsBC,SAAjBF,UAAU,IAAmB,EAAQA,UAAU,GAGzFkhI,EAAW3nI,KAAKwnI,eAAeI,aAAa5nI,KAAKmgD,KAAM+pE,EAAYud,EAGvEznI,MAAK6nI,gBAAgBF,GAGrB3nI,KAAK8nI,gBAAgBH,EAgBrB,KAbA,GAAIjzG,GAAY,IACZqzG,EAAiB,EACjBj5B,EAAa,EACbx9F,EAAgBhM,KAAKJ,IAAI,IAAMI,KAAKL,IAAI,GAAKjF,KAAKmgD,KAAK+7C,YAAYx1F,OAAQ,MAC3EshI,EAAqB,EAErBC,EAAY,IACZC,EAAe,EACfC,EAAQ,EACRC,EAAQ,EACRC,EAAU,EACVC,EAAgB,EAEbL,EAAYvzG,GAA0BpjB,EAAbw9F,GAA4B,CAC1DA,GAAc,CAEd,IAAIy5B,GAAyBvoI,KAAKwoI,sBAAsBd,GAEpDe,EAAyBx+B,EAAes+B,EAAwB,EASpE,KAPAL,EAAeO,EAAuB,GACtCR,EAAYQ,EAAuB,GACnCN,EAAQM,EAAuB,GAC/BL,EAAQK,EAAuB,GAE/BJ,EAAUJ,EACVK,EAAgB,EACTD,EAAUN,GAAkCC,EAAhBM,GAAoC,CACrEA,GAAiB,EACjBtoI,KAAK0oI,UAAUR,EAAcC,EAAOC,EAEpC,IAAIO,GAAc3oI,KAAK4oI,WAAWV,GAE9BW,EAAc5+B,EAAe0+B,EAAa,EAE9CN,GAAUQ,EAAY,GACtBV,EAAQU,EAAY,GACpBT,EAAQS,EAAY,QAY1B/+H,IAAK,wBACL1E,MAAO,SAA+BsiI,GAQpC,IAAK,GAPDxd,GAAalqH,KAAKmgD,KAAK+7C,YACvBD,EAAQj8F,KAAKmgD,KAAK87C,MAClBgsC,EAAY,EACZa,EAAkB5e,EAAW,GAC7B6e,EAAY,EACZC,EAAY,EAEPC,EAAU,EAAGA,EAAU/e,EAAWxjH,OAAQuiI,IAAW,CAC5D,GAAIzoI,GAAI0pH,EAAW+e,EAEnB,IAAIhtC,EAAMz7F,GAAG2oG,sBAAuB,GAASlN,EAAMz7F,GAAGigG,aAAc,GAAQinC,KAAmB,GAAQzrC,EAAMz7F,GAAGqD,QAAQ+gG,MAAMpmE,KAAM,GAAQy9D,EAAMz7F,GAAGqD,QAAQ+gG,MAAM5iF,KAAM,EAAM,CAC7K,GAAIknH,GAAclpI,KAAK4oI,WAAWpoI,GAE9B2oI,EAAcl/B,EAAei/B,EAAa,GAE1Cb,EAAUc,EAAY,GACtBhB,EAAQgB,EAAY,GACpBf,EAAQe,EAAY,EAERd,GAAZJ,IACFA,EAAYI,EACZS,EAAkBtoI,EAClBuoI,EAAYZ,EACZa,EAAYZ,IAKlB,OAAQU,EAAiBb,EAAWc,EAAWC,MAWjDl/H,IAAK,aACL1E,MAAO,SAAoB5E,GAQzB,IAAK,GAPD0pH,GAAalqH,KAAKmgD,KAAK+7C,YACvBD,EAAQj8F,KAAKmgD,KAAK87C,MAElBmtC,EAAMntC,EAAMz7F,GAAGg+B,EACf6qG,EAAMptC,EAAMz7F,GAAGwhB,EACfmmH,EAAQ,EACRC,EAAQ,EACHkB,EAAO,EAAGA,EAAOpf,EAAWxjH,OAAQ4iI,IAAQ,CACnD,GAAIziI,GAAIqjH,EAAWof,EACnB,IAAIziI,IAAMrG,EAAG,CACX,GAAI+oI,GAAMttC,EAAMp1F,GAAG23B,EACfgrG,EAAMvtC,EAAMp1F,GAAGmb,EACfynH,EAAc,EAAMnkI,KAAK+0C,KAAK/0C,KAAKiW,IAAI6tH,EAAMG,EAAK,GAAKjkI,KAAKiW,IAAI8tH,EAAMG,EAAK,GAC/ErB,IAASnoI,KAAK0pI,SAASlpI,GAAGqG,IAAMuiI,EAAMG,EAAMvpI,KAAK2pI,SAASnpI,GAAGqG,IAAMuiI,EAAMG,GAAOE,GAChFrB,GAASpoI,KAAK0pI,SAASlpI,GAAGqG,IAAMwiI,EAAMG,EAAMxpI,KAAK2pI,SAASnpI,GAAGqG,IAAMwiI,EAAMG,GAAOC,IAIpF,GAAIpB,GAAU/iI,KAAK+0C,KAAK/0C,KAAKiW,IAAI4sH,EAAO,GAAK7iI,KAAKiW,IAAI6sH,EAAO,GAC7D,QAAQC,EAASF,EAAOC,MAa1Bt+H,IAAK,YACL1E,MAAO,SAAmB5E,EAAG2nI,EAAOC,GASlC,IAAK,GARDle,GAAalqH,KAAKmgD,KAAK+7C,YACvBD,EAAQj8F,KAAKmgD,KAAK87C,MAClB2tC,EAAU,EACVC,EAAW,EACXC,EAAU,EAEVV,EAAMntC,EAAMz7F,GAAGg+B,EACf6qG,EAAMptC,EAAMz7F,GAAGwhB,EACVsnH,EAAO,EAAGA,EAAOpf,EAAWxjH,OAAQ4iI,IAAQ,CACnD,GAAIziI,GAAIqjH,EAAWof,EACnB,IAAIziI,IAAMrG,EAAG,CACX,GAAI+oI,GAAMttC,EAAMp1F,GAAG23B,EACfgrG,EAAMvtC,EAAMp1F,GAAGmb,EACfynH,EAAc,EAAMnkI,KAAKiW,IAAIjW,KAAKiW,IAAI6tH,EAAMG,EAAK,GAAKjkI,KAAKiW,IAAI8tH,EAAMG,EAAK,GAAI,IAClFI,IAAW5pI,KAAK0pI,SAASlpI,GAAGqG,IAAM,EAAI7G,KAAK2pI,SAASnpI,GAAGqG,GAAKvB,KAAKiW,IAAI8tH,EAAMG,EAAK,GAAKC,GACrFI,GAAY7pI,KAAK0pI,SAASlpI,GAAGqG,IAAM7G,KAAK2pI,SAASnpI,GAAGqG,IAAMuiI,EAAMG,IAAQF,EAAMG,GAAOC,GACrFK,GAAW9pI,KAAK0pI,SAASlpI,GAAGqG,IAAM,EAAI7G,KAAK2pI,SAASnpI,GAAGqG,GAAKvB,KAAKiW,IAAI6tH,EAAMG,EAAK,GAAKE,IAIzF,GAAIxuC,GAAI2uC,EACJp0F,EAAIq0F,EACJp0F,EAAI0yF,EACJnzG,EAAI80G,EACJ3kH,EAAIijH,EAGJz9F,GAAM8K,EAAIwlD,EAAI91E,EAAIqwB,IAAMA,EAAIylD,EAAIjmE,EAAIwgB,GACpC9K,IAAO8K,EAAI7K,EAAK8K,GAAKwlD,CAGzBgB,GAAMz7F,GAAGg+B,GAAKkM,EACduxD,EAAMz7F,GAAGwhB,GAAK2oB,KAUhB7gC,IAAK,kBACL1E,MAAO,SAAyBuiI,GAC9B,GAAIzd,GAAalqH,KAAKmgD,KAAK+7C,YACvB2oB,EAAa7kH,KAAKw+G,YAEtBx+G,MAAK2pI,WACL,KAAK,GAAI9iI,GAAI,EAAGA,EAAIqjH,EAAWxjH,OAAQG,IAAK,CAC1C7G,KAAK2pI,SAASzf,EAAWrjH,MACzB,KAAK,GAAI+J,GAAI,EAAGA,EAAIs5G,EAAWxjH,OAAQkK,IACrC5Q,KAAK2pI,SAASzf,EAAWrjH,IAAIqjH,EAAWt5G,IAAMi0G,EAAa8iB,EAASzd,EAAWrjH,IAAIqjH,EAAWt5G,QAYpG9G,IAAK,kBACL1E,MAAO,SAAyBuiI,GAC9B,GAAIzd,GAAalqH,KAAKmgD,KAAK+7C,YACvBqrC,EAAevnI,KAAKy+G,cAExBz+G,MAAK0pI,WACL,KAAK,GAAI7iI,GAAI,EAAGA,EAAIqjH,EAAWxjH,OAAQG,IAAK,CAC1C7G,KAAK0pI,SAASxf,EAAWrjH,MACzB,KAAK,GAAI+J,GAAI,EAAGA,EAAIs5G,EAAWxjH,OAAQkK,IACrC5Q,KAAK0pI,SAASxf,EAAWrjH,IAAIqjH,EAAWt5G,IAAM22H,EAAejiI,KAAKiW,IAAIosH,EAASzd,EAAWrjH,IAAIqjH,EAAWt5G,IAAK,SAM/G02H,IAGT1nI,GAAAA,WAAkB0nI,GAId,SAASznI,EAAQD,GAUrB,QAASolD,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAI59C,WAAU,qCANhHC,OAAO49C,eAAevlD,EAAS,cAC7BwF,OAAO,GAGT,IAAIggD,GAAe,WAAc,QAASC,GAAiBh6C,EAAQpE,GAAS,IAAK,GAAIJ,GAAI,EAAGA,EAAII,EAAMP,OAAQG,IAAK,CAAE,GAAIy+C,GAAar+C,EAAMJ,EAAIy+C,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMl+C,OAAO49C,eAAe95C,EAAQi6C,EAAWx7C,IAAKw7C,IAAiB,MAAO,UAAUJ,EAAaQ,EAAYC,GAAiJ,MAA9HD,IAAYL,EAAiBH,EAAY9xC,UAAWsyC,GAAiBC,GAAaN,EAAiBH,EAAaS,GAAqBT,MAQ5hB6kF,EAAgB,WAClB,QAASA,KACP/kF,EAAgBhlD,KAAM+pI,GA6CxB,MA1CA3kF,GAAa2kF,IACXjgI,IAAK,eACL1E,MAAO,SAAsB+6C,EAAM+pE,EAAYud,GAK7C,IAAK,GAJDE,MACAxrC,EAAQh8C,EAAKg8C,MAGRt1F,EAAI,EAAGA,EAAIqjH,EAAWxjH,OAAQG,IAAK,CAC1C8gI,EAASzd,EAAWrjH,OACpB8gI,EAASzd,EAAWrjH,MACpB,KAAK,GAAI+J,GAAI,EAAGA,EAAIs5G,EAAWxjH,OAAQkK,IACrC+2H,EAASzd,EAAWrjH,IAAIqjH,EAAWt5G,IAAM/J,GAAK+J,EAAI,EAAI,IACtD+2H,EAASzd,EAAWrjH,IAAIqjH,EAAWt5G,IAAM/J,GAAK+J,EAAI,EAAI,IAK1D,IAAK,GAAI8E,GAAK,EAAGA,EAAK+xH,EAAW/gI,OAAQgP,IAAM,CAC7C,GAAI6sF,GAAOpG,EAAMsrC,EAAW/xH,GAExB6sF,GAAK4Q,aAAc,GAAkCxsG,SAA1BghI,EAASplC,EAAK0E,SAAiDtgG,SAAxBghI,EAASplC,EAAKyE,QAClF2gC,EAASplC,EAAK0E,QAAQ1E,EAAKyE,MAAQ,EACnC2gC,EAASplC,EAAKyE,MAAMzE,EAAK0E,QAAU,GAOvC,IAAK,GAHDkb,GAAY+H,EAAWxjH,OAGlBiK,EAAI,EAAOwxG,EAAJxxG,EAAeA,IAC7B,IAAK,GAAIy0G,GAAM,EAASjD,EAAY,EAAlBiD,EAAqBA,IACrC,IAAK,GAAI/2C,GAAK+2C,EAAM,EAAQjD,EAAL9zC,EAAgBA,IACrCs5D,EAASzd,EAAW9E,IAAM8E,EAAW77C,IAAO/oE,KAAKL,IAAI0iI,EAASzd,EAAW9E,IAAM8E,EAAW77C,IAAMs5D,EAASzd,EAAW9E,IAAM8E,EAAWv5G,IAAMg3H,EAASzd,EAAWv5G,IAAIu5G,EAAW77C,KAC9Ks5D,EAASzd,EAAW77C,IAAK67C,EAAW9E,IAAQuiB,EAASzd,EAAW9E,IAAM8E,EAAW77C,GAKvF,OAAOs5D,OAIJoC,IAGTnqI,GAAAA,WAAkBmqI,GAId,SAASlqI,EAAQD,GAOmB,mBAA7BoqI,4BAKTA,yBAAyB52H,UAAUijD,OAAS,SAAU73B,EAAGxc,EAAGzV,GAC1DvM,KAAKgzC,YACLhzC,KAAK02C,IAAIlY,EAAGxc,EAAGzV,EAAG,EAAG,EAAIjH,KAAKqxC,IAAI,GAClC32C,KAAKqzC,aASP22F,yBAAyB52H,UAAU62H,OAAS,SAAUzrG,EAAGxc,EAAGzV,GAC1DvM,KAAKgzC,YACLhzC,KAAKs/B,KAAKd,EAAIjyB,EAAGyV,EAAIzV,EAAO,EAAJA,EAAW,EAAJA,GAC/BvM,KAAKqzC,aASP22F,yBAAyB52H,UAAUumC,SAAW,SAAUnb,EAAGxc,EAAGzV,GAE5DvM,KAAKgzC,YAGLzmC,GAAK,KACLyV,GAAK,KAAQzV,CAEb,IAAIuB,GAAQ,EAAJvB,EACJ29H,EAAKp8H,EAAI,EACTq8H,EAAK7kI,KAAK+0C,KAAK,GAAK,EAAIvsC,EACxBD,EAAIvI,KAAK+0C,KAAKvsC,EAAIA,EAAIo8H,EAAKA,EAE/BlqI,MAAKizC,OAAOzU,EAAGxc,GAAKnU,EAAIs8H,IACxBnqI,KAAKkzC,OAAO1U,EAAI0rG,EAAIloH,EAAImoH,GACxBnqI,KAAKkzC,OAAO1U,EAAI0rG,EAAIloH,EAAImoH,GACxBnqI,KAAKkzC,OAAO1U,EAAGxc,GAAKnU,EAAIs8H,IACxBnqI,KAAKqzC,aASP22F,yBAAyB52H,UAAUg3H,aAAe,SAAU5rG,EAAGxc,EAAGzV,GAEhEvM,KAAKgzC,YAGLzmC,GAAK,KACLyV,GAAK,KAAQzV,CAEb,IAAIuB,GAAQ,EAAJvB,EACJ29H,EAAKp8H,EAAI,EACTq8H,EAAK7kI,KAAK+0C,KAAK,GAAK,EAAIvsC,EACxBD,EAAIvI,KAAK+0C,KAAKvsC,EAAIA,EAAIo8H,EAAKA,EAE/BlqI,MAAKizC,OAAOzU,EAAGxc,GAAKnU,EAAIs8H,IACxBnqI,KAAKkzC,OAAO1U,EAAI0rG,EAAIloH,EAAImoH,GACxBnqI,KAAKkzC,OAAO1U,EAAI0rG,EAAIloH,EAAImoH,GACxBnqI,KAAKkzC,OAAO1U,EAAGxc,GAAKnU,EAAIs8H,IACxBnqI,KAAKqzC,aASP22F,yBAAyB52H,UAAUi3H,KAAO,SAAU7rG,EAAGxc,EAAGzV,GAExDvM,KAAKgzC,YAGLzmC,GAAK,IACLyV,GAAK,GAAMzV,CAEX,KAAK,GAAImwB,GAAI,EAAO,GAAJA,EAAQA,IAAK,CAC3B,GAAI+Z,GAAS/Z,EAAI,IAAM,EAAQ,IAAJnwB,EAAc,GAAJA,CACrCvM,MAAKkzC,OAAO1U,EAAIiY,EAASnxC,KAAK4kC,IAAQ,EAAJxN,EAAQp3B,KAAKqxC,GAAK,IAAK30B,EAAIy0B,EAASnxC,KAAK+kC,IAAQ,EAAJ3N,EAAQp3B,KAAKqxC,GAAK,KAGnG32C,KAAKqzC,aASP22F,yBAAyB52H,UAAUk3H,QAAU,SAAU9rG,EAAGxc,EAAGzV,GAE3DvM,KAAKgzC,YAELhzC,KAAKkzC,OAAO1U,EAAGxc,EAAIzV,GACnBvM,KAAKkzC,OAAO1U,EAAIjyB,EAAGyV,GACnBhiB,KAAKkzC,OAAO1U,EAAGxc,EAAIzV,GACnBvM,KAAKkzC,OAAO1U,EAAIjyB,EAAGyV,GAEnBhiB,KAAKqzC,aAMP22F,yBAAyB52H,UAAU65F,UAAY,SAAUzuE,EAAGxc,EAAG6C,EAAGhX,EAAGtB,GACnE,GAAIg+H,GAAMjlI,KAAKqxC,GAAK,GACJ,GAAZ9xB,EAAI,EAAItY,IACVA,EAAIsY,EAAI,GAEM,EAAZhX,EAAI,EAAItB,IACVA,EAAIsB,EAAI,GAEV7N,KAAKgzC,YACLhzC,KAAKizC,OAAOzU,EAAIjyB,EAAGyV,GACnBhiB,KAAKkzC,OAAO1U,EAAI3Z,EAAItY,EAAGyV,GACvBhiB,KAAK02C,IAAIlY,EAAI3Z,EAAItY,EAAGyV,EAAIzV,EAAGA,EAAS,IAANg+H,EAAiB,IAANA,GAAW,GACpDvqI,KAAKkzC,OAAO1U,EAAI3Z,EAAG7C,EAAInU,EAAItB,GAC3BvM,KAAK02C,IAAIlY,EAAI3Z,EAAItY,EAAGyV,EAAInU,EAAItB,EAAGA,EAAG,EAAS,GAANg+H,GAAU,GAC/CvqI,KAAKkzC,OAAO1U,EAAIjyB,EAAGyV,EAAInU,GACvB7N,KAAK02C,IAAIlY,EAAIjyB,EAAGyV,EAAInU,EAAItB,EAAGA,EAAS,GAANg+H,EAAgB,IAANA,GAAW,GACnDvqI,KAAKkzC,OAAO1U,EAAGxc,EAAIzV,GACnBvM,KAAK02C,IAAIlY,EAAIjyB,EAAGyV,EAAIzV,EAAGA,EAAS,IAANg+H,EAAiB,IAANA,GAAW,GAChDvqI,KAAKqzC,aAMP22F,yBAAyB52H,UAAU+8F,QAAU,SAAU3xE,EAAGxc,EAAG6C,EAAGhX,GAC9D,GAAI28H,GAAQ,SACRC,EAAK5lH,EAAI,EAAI2lH,EAEjBE,EAAK78H,EAAI,EAAI28H,EAEbG,EAAKnsG,EAAI3Z,EAET+lH,EAAK5oH,EAAInU,EAETg9H,EAAKrsG,EAAI3Z,EAAI,EAEbimH,EAAK9oH,EAAInU,EAAI,CAEb7N,MAAKgzC,YACLhzC,KAAKizC,OAAOzU,EAAGssG,GACf9qI,KAAK41G,cAAcp3E,EAAGssG,EAAKJ,EAAIG,EAAKJ,EAAIzoH,EAAG6oH,EAAI7oH,GAC/ChiB,KAAK41G,cAAci1B,EAAKJ,EAAIzoH,EAAG2oH,EAAIG,EAAKJ,EAAIC,EAAIG,GAChD9qI,KAAK41G,cAAc+0B,EAAIG,EAAKJ,EAAIG,EAAKJ,EAAIG,EAAIC,EAAID,GACjD5qI,KAAK41G,cAAci1B,EAAKJ,EAAIG,EAAIpsG,EAAGssG,EAAKJ,EAAIlsG,EAAGssG,GAC/C9qI,KAAKqzC,aAMP22F,yBAAyB52H,UAAUm8F,SAAW,SAAU/wE,EAAGxc,EAAG6C,EAAGhX,GAC/D,GAAI+B,GAAI,EAAI,EACRm7H,EAAWlmH,EACXmmH,EAAWn9H,EAAI+B,EAEf46H,EAAQ,SACRC,EAAKM,EAAW,EAAIP,EAExBE,EAAKM,EAAW,EAAIR,EAEpBG,EAAKnsG,EAAIusG,EAETH,EAAK5oH,EAAIgpH,EAETH,EAAKrsG,EAAIusG,EAAW,EAEpBD,EAAK9oH,EAAIgpH,EAAW,EAEpBC,EAAMjpH,GAAKnU,EAAIm9H,EAAW,GAE1BE,EAAMlpH,EAAInU,CAEV7N,MAAKgzC,YACLhzC,KAAKizC,OAAO03F,EAAIG,GAEhB9qI,KAAK41G,cAAc+0B,EAAIG,EAAKJ,EAAIG,EAAKJ,EAAIG,EAAIC,EAAID,GACjD5qI,KAAK41G,cAAci1B,EAAKJ,EAAIG,EAAIpsG,EAAGssG,EAAKJ,EAAIlsG,EAAGssG,GAE/C9qI,KAAK41G,cAAcp3E,EAAGssG,EAAKJ,EAAIG,EAAKJ,EAAIzoH,EAAG6oH,EAAI7oH,GAC/ChiB,KAAK41G,cAAci1B,EAAKJ,EAAIzoH,EAAG2oH,EAAIG,EAAKJ,EAAIC,EAAIG,GAEhD9qI,KAAKkzC,OAAOy3F,EAAIM,GAEhBjrI,KAAK41G,cAAc+0B,EAAIM,EAAMP,EAAIG,EAAKJ,EAAIS,EAAKL,EAAIK,GACnDlrI,KAAK41G,cAAci1B,EAAKJ,EAAIS,EAAK1sG,EAAGysG,EAAMP,EAAIlsG,EAAGysG,GAEjDjrI,KAAKkzC,OAAO1U,EAAGssG,IAMjBd,yBAAyB52H,UAAUqnG,MAAQ,SAAUj8E,EAAGxc,EAAGq2C,EAAO3xD,GAEhE,GAAIykI,GAAK3sG,EAAI93B,EAASpB,KAAK+kC,IAAIguB,GAC3B+yE,EAAKppH,EAAItb,EAASpB,KAAK4kC,IAAImuB,GAG3BiiD,EAAK97E,EAAa,GAAT93B,EAAepB,KAAK+kC,IAAIguB,GACjCkiD,EAAKv4F,EAAa,GAATtb,EAAepB,KAAK4kC,IAAImuB,GAGjCgzE,EAAKF,EAAKzkI,EAAS,EAAIpB,KAAK+kC,IAAIguB,EAAQ,GAAM/yD,KAAKqxC,IACnD20F,EAAKF,EAAK1kI,EAAS,EAAIpB,KAAK4kC,IAAImuB,EAAQ,GAAM/yD,KAAKqxC,IAGnD40F,EAAKJ,EAAKzkI,EAAS,EAAIpB,KAAK+kC,IAAIguB,EAAQ,GAAM/yD,KAAKqxC,IACnD60F,EAAKJ,EAAK1kI,EAAS,EAAIpB,KAAK4kC,IAAImuB,EAAQ,GAAM/yD,KAAKqxC,GAEvD32C,MAAKgzC,YACLhzC,KAAKizC,OAAOzU,EAAGxc,GACfhiB,KAAKkzC,OAAOm4F,EAAIC,GAChBtrI,KAAKkzC,OAAOonE,EAAIC,GAChBv6G,KAAKkzC,OAAOq4F,EAAIC,GAChBxrI,KAAKqzC,aASP22F,yBAAyB52H,UAAUqlG,WAAa,SAAUj6E,EAAGxc,EAAG+zF,EAAIC,EAAIqC,GACtEr4G,KAAKgzC,YACLhzC,KAAKizC,OAAOzU,EAAGxc,EAYf,KAVA,GAAIypH,GAAgBpzB,EAAQ3xG,OACxBgkC,EAAKqrE,EAAKv3E,EACVmM,EAAKqrE,EAAKh0F,EACV0pH,EAAQ/gG,EAAKD,EACbihG,EAAgBrmI,KAAK+0C,KAAK3P,EAAKA,EAAKC,EAAKA,GACzCihG,EAAe,EACfthF,GAAO,EACPhjB,EAAQ,EACRukG,EAAaxzB,EAAQ,GAElBszB,GAAiB,IACtBE,EAAaxzB,EAAQuzB,IAAiBH,GAClCI,EAAaF,IACfE,EAAaF,GAGfrkG,EAAQhiC,KAAK+0C,KAAKwxF,EAAaA,GAAc,EAAIH,EAAQA,IACzDpkG,EAAa,EAALoD,GAAUpD,EAAQA,EAC1B9I,GAAK8I,EACLtlB,GAAK0pH,EAAQpkG,EAETgjB,KAAS,EACXtqD,KAAKkzC,OAAO1U,EAAGxc,GAEfhiB,KAAKizC,OAAOzU,EAAGxc,GAGjB2pH,GAAiBE,EACjBvhF,GAAQA,KAOV,SAASzqD,EAAQD,GAiBrB,QAASksI,GAAStyH,GAEhB,MADA+gC,GAAM/gC,EACCuyH,IAkDT,QAAS96C,KACP1nF,EAAQ,EACR9I,EAAI85C,EAAIlpB,OAAO,GAQjB,QAAStY,KACPxP,IACA9I,EAAI85C,EAAIlpB,OAAO9nB,GAOjB,QAASyiI,KACP,MAAOzxF,GAAIlpB,OAAO9nB,EAAQ,GAS5B,QAAS0iI,GAAexrI,GACtB,MAAOyrI,GAAkBl8H,KAAKvP,GAShC,QAASwlE,GAAM3/D,EAAGC,GAKhB,GAJKD,IACHA,MAGEC,EACF,IAAK,GAAIoR,KAAQpR,GACXA,EAAEH,eAAeuR,KACnBrR,EAAEqR,GAAQpR,EAAEoR,GAIlB,OAAOrR,GAeT,QAAS6lI,GAAS9nI,EAAKqjD,EAAMtiD,GAG3B,IAFA,GAAIgK,GAAOs4C,EAAKt+C,MAAM,KAClBqwD,EAAIp1D,EACD+K,EAAK1I,QAAQ,CAClB,GAAIoD,GAAMsF,EAAK2uB,OACX3uB,GAAK1I,QAEF+yD,EAAE3vD,KACL2vD,EAAE3vD,OAEJ2vD,EAAIA,EAAE3vD,IAGN2vD,EAAE3vD,GAAO1E,GAWf,QAASs9H,GAAQpmF,EAAO9f,GAOtB,IANA,GAAI31B,GAAGgB,EACH6rE,EAAU,KAGV04D,GAAU9vF,GACV58C,EAAO48C,EACJ58C,EAAKgM,QACV0gI,EAAOzkI,KAAKjI,EAAKgM,QACjBhM,EAAOA,EAAKgM,MAId,IAAIhM,EAAKu8F,MACP,IAAKp1F,EAAI,EAAGgB,EAAMnI,EAAKu8F,MAAMv1F,OAAYmB,EAAJhB,EAASA,IAC5C,GAAI21B,EAAKn8B,KAAOX,EAAKu8F,MAAMp1F,GAAGxG,GAAI,CAChCqzE,EAAUh0E,EAAKu8F,MAAMp1F,EACrB,OAiBN,IAZK6sE,IAEHA,GACErzE,GAAIm8B,EAAKn8B,IAEPi8C,EAAM9f,OAERk3C,EAAQ24D,KAAOpmE,EAAMyN,EAAQ24D,KAAM/vF,EAAM9f,QAKxC31B,EAAIulI,EAAO1lI,OAAS,EAAGG,GAAK,EAAGA,IAAK,CACvC,GAAI2F,GAAI4/H,EAAOvlI,EAEV2F,GAAEyvF,QACLzvF,EAAEyvF,UAE6B,KAA7BzvF,EAAEyvF,MAAMv0F,QAAQgsE,IAClBlnE,EAAEyvF,MAAMt0F,KAAK+rE,GAKbl3C,EAAK6vG,OACP34D,EAAQ24D,KAAOpmE,EAAMyN,EAAQ24D,KAAM7vG,EAAK6vG,OAS5C,QAAS1J,GAAQrmF,EAAOimD,GAKtB,GAJKjmD,EAAM6/C,QACT7/C,EAAM6/C,UAER7/C,EAAM6/C,MAAMx0F,KAAK46F,GACbjmD,EAAMimD,KAAM,CACd,GAAI8pC,GAAOpmE,KAAU3pB,EAAMimD,KAC3BA,GAAK8pC,KAAOpmE,EAAMomE,EAAM9pC,EAAK8pC,OAajC,QAASpvC,GAAW3gD,EAAO/mC,EAAMD,EAAIvN,EAAMskI,GACzC,GAAI9pC,IACFhtF,KAAMA,EACND,GAAIA,EACJvN,KAAMA,EAQR,OALIu0C,GAAMimD,OACRA,EAAK8pC,KAAOpmE,KAAU3pB,EAAMimD,OAE9BA,EAAK8pC,KAAOpmE,EAAMs8B,EAAK8pC,SAAYA,GAE5B9pC,EAOT,QAAS+pC,KAKP,IAJAC,EAAYC,EAAUC,KACtBhxH,EAAQ,GAGK,MAANhb,GAAmB,MAANA,GAAoB,OAANA,GAAoB,OAANA,GAE9CsY,GAGF,GAAG,CACD,GAAI2zH,IAAY,CAGhB,IAAU,MAANjsI,EAAW,CAGb,IADA,GAAIoG,GAAI0C,EAAQ,EACS,MAAlBgxC,EAAIlpB,OAAOxqB,IAAgC,MAAlB0zC,EAAIlpB,OAAOxqB,IACzCA,GAEF,IAAsB,OAAlB0zC,EAAIlpB,OAAOxqB,IAAiC,KAAlB0zC,EAAIlpB,OAAOxqB,GAAW,CAElD,KAAY,IAALpG,GAAgB,MAALA,GAChBsY,GAEF2zH,IAAY,GAGhB,GAAU,MAANjsI,GAA+B,MAAlBurI,IAAuB,CAEtC,KAAY,IAALvrI,GAAgB,MAALA,GAChBsY,GAEF2zH,IAAY,EAEd,GAAU,MAANjsI,GAA+B,MAAlBurI,IAAuB,CAEtC,KAAY,IAALvrI,GAAS,CACd,GAAU,MAANA,GAA+B,MAAlBurI,IAAuB,CAEtCjzH,IACAA,GACA,OAEAA,IAGJ2zH,GAAY,EAId,KAAa,MAANjsI,GAAmB,MAANA,GAAoB,OAANA,GAAoB,OAANA,GAE9CsY,UAEK2zH,EAGT,IAAU,KAANjsI,EAGF,YADA8rI,EAAYC,EAAUG,UAKxB,IAAIC,GAAKnsI,EAAIurI,GACb,IAAIa,EAAWD,GAKb,MAJAL,GAAYC,EAAUG,UACtBlxH,EAAQmxH,EACR7zH,QACAA,IAKF,IAAI8zH,EAAWpsI,GAIb,MAHA8rI,GAAYC,EAAUG,UACtBlxH,EAAQhb,MACRsY,IAMF,IAAIkzH,EAAexrI,IAAY,MAANA,EAAW,CAIlC,IAHAgb,GAAShb,EACTsY,IAEOkzH,EAAexrI,IACpBgb,GAAShb,EACTsY,GAUF,OARc,UAAV0C,EACFA,GAAQ,EACW,SAAVA,EACPA,GAAQ,EACE3V,MAAMpB,OAAO+W,MACrBA,EAAQ/W,OAAO+W,SAErB8wH,EAAYC,EAAUM,YAKxB,GAAU,MAANrsI,EAAW,CAEb,IADAsY,IACY,IAALtY,IAAiB,KAALA,GAAkB,MAANA,GAA+B,MAAlBurI,MAC1CvwH,GAAShb,EACC,MAANA,GAEFsY,IAEFA,GAEF,IAAS,KAALtY,EACF,KAAMssI,GAAe,2BAIvB,OAFAh0H,UACAwzH,EAAYC,EAAUM,YAMxB,IADAP,EAAYC,EAAUQ,QACV,IAALvsI,GACLgb,GAAShb,EACTsY,GAEF,MAAM,IAAIksB,aAAY,yBAA2BgoG,EAAKxxH,EAAO,IAAM,KAOrE,QAASswH,KACP,GAAIzvF,KAwBJ,IAtBA20C,IACAq7C,IAGc,WAAV7wH,IACF6gC,EAAM5oC,QAAS,EACf44H,KAIY,UAAV7wH,GAA+B,YAAVA,IACvB6gC,EAAMv0C,KAAO0T,EACb6wH,KAIEC,IAAcC,EAAUM,aAC1BxwF,EAAMj8C,GAAKob,EACX6wH,KAIW,KAAT7wH,EACF,KAAMsxH,GAAe,2BAQvB,IANAT,IAGAY,EAAgB5wF,GAGH,KAAT7gC,EACF,KAAMsxH,GAAe,2BAKvB,IAHAT,IAGc,KAAV7wH,EACF,KAAMsxH,GAAe,uBASvB,OAPAT,WAGOhwF,GAAM9f,WACN8f,GAAMimD,WACNjmD,GAAMA,MAENA,EAOT,QAAS4wF,GAAgB5wF,GACvB,KAAiB,KAAV7gC,GAAyB,KAATA,GACrB0xH,EAAe7wF,GACD,MAAV7gC,GACF6wH,IAWN,QAASa,GAAe7wF,GAEtB,GAAI8wF,GAAWC,EAAc/wF,EAC7B,IAAI8wF,EAIF,WAFAE,GAAUhxF,EAAO8wF,EAMnB,IAAIf,GAAOkB,EAAwBjxF,EACnC,KAAI+vF,EAAJ,CAKA,GAAIE,GAAaC,EAAUM,WACzB,KAAMC,GAAe,sBAEvB,IAAI1sI,GAAKob,CAGT,IAFA6wH,IAEc,MAAV7wH,EAAe,CAGjB,GADA6wH,IACIC,GAAaC,EAAUM,WACzB,KAAMC,GAAe,sBAEvBzwF,GAAMj8C,GAAMob,EACZ6wH,QAGEkB,GAAmBlxF,EAAOj8C,IAShC,QAASgtI,GAAc/wF,GACrB,GAAI8wF,GAAW,IAgBf,IAbc,aAAV3xH,IACF2xH,KACAA,EAASrlI,KAAO,WAChBukI,IAGIC,IAAcC,EAAUM,aAC1BM,EAAS/sI,GAAKob,EACd6wH,MAKU,MAAV7wH,EAAe,CAejB,GAdA6wH,IAEKc,IACHA,MAEFA,EAAS1hI,OAAS4wC,EAClB8wF,EAAS5wG,KAAO8f,EAAM9f,KACtB4wG,EAAS7qC,KAAOjmD,EAAMimD,KACtB6qC,EAAS9wF,MAAQA,EAAMA,MAGvB4wF,EAAgBE,GAGH,KAAT3xH,EACF,KAAMsxH,GAAe,2BAEvBT,WAGOc,GAAS5wG,WACT4wG,GAAS7qC,WACT6qC,GAAS9wF,YACT8wF,GAAS1hI,OAGX4wC,EAAMmxF,YACTnxF,EAAMmxF,cAERnxF,EAAMmxF,UAAU9lI,KAAKylI,GAGvB,MAAOA,GAYT,QAASG,GAAwBjxF,GAE/B,MAAc,SAAV7gC,GACF6wH,IAGAhwF,EAAM9f,KAAOkxG,IACN,QACY,SAAVjyH,GACT6wH,IAGAhwF,EAAMimD,KAAOmrC,IACN,QACY,UAAVjyH,GACT6wH,IAGAhwF,EAAMA,MAAQoxF,IACP,SAGF,KAQT,QAASF,GAAmBlxF,EAAOj8C,GAEjC,GAAIm8B,IACFn8B,GAAIA,GAEFgsI,EAAOqB,GACPrB,KACF7vG,EAAK6vG,KAAOA,GAEd3J,EAAQpmF,EAAO9f,GAGf8wG,EAAUhxF,EAAOj8C,GAQnB,QAASitI,GAAUhxF,EAAO/mC,GACxB,KAAiB,OAAVkG,GAA4B,OAAVA,GAAgB,CACvC,GAAInG,GACAvN,EAAO0T,CACX6wH,IAEA,IAAIc,GAAWC,EAAc/wF,EAC7B,IAAI8wF,EACF93H,EAAK83H,MACA,CACL,GAAIb,GAAaC,EAAUM,WACzB,KAAMC,GAAe,kCAEvBz3H,GAAKmG,EACLinH,EAAQpmF,GACNj8C,GAAIiV,IAENg3H,IAIF,GAAID,GAAOqB,IAGPnrC,EAAOtF,EAAW3gD,EAAO/mC,EAAMD,EAAIvN,EAAMskI,EAC7C1J,GAAQrmF,EAAOimD,GAEfhtF,EAAOD,GASX,QAASo4H,KAGP,IAFA,GAAIrB,GAAO,KAEM,MAAV5wH,GAAe,CAGpB,IAFA6wH,IACAD,KACiB,KAAV5wH,GAAyB,KAATA,GAAc,CACnC,GAAI8wH,GAAaC,EAAUM,WACzB,KAAMC,GAAe,0BAEvB,IAAIp1H,GAAO8D,CAGX,IADA6wH,IACa,KAAT7wH,EACF,KAAMsxH,GAAe,wBAIvB,IAFAT,IAEIC,GAAaC,EAAUM,WACzB,KAAMC,GAAe,2BAEvB,IAAI3nI,GAAQqW,CACZ0wH,GAASE,EAAM10H,EAAMvS,GAErBknI,IACa,KAAT7wH,GACF6wH,IAIJ,GAAa,KAAT7wH,EACF,KAAMsxH,GAAe,qBAEvBT,KAGF,MAAOD,GAQT,QAASU,GAAexyE,GACtB,MAAO,IAAIt1B,aAAYs1B,EAAU,UAAY0yE,EAAKxxH,EAAO,IAAM,WAAalS,EAAQ,KAStF,QAAS0jI,GAAKx4F,EAAMk5F,GAClB,MAAOl5F,GAAK/tC,QAAUinI,EAAYl5F,EAAOA,EAAK1nC,OAAO,EAAG,IAAM,MAShE,QAAS6gI,GAAS92H,EAAQC,EAAQ/M,GAC5B9C,MAAMC,QAAQ2P,GAChBA,EAAOrN,QAAQ,SAAUokI,GACnB3mI,MAAMC,QAAQ4P,GAChBA,EAAOtN,QAAQ,SAAUqkI,GACvB9jI,EAAG6jI,EAAOC,KAGZ9jI,EAAG6jI,EAAO92H,KAIV7P,MAAMC,QAAQ4P,GAChBA,EAAOtN,QAAQ,SAAUqkI,GACvB9jI,EAAG8M,EAAQg3H,KAGb9jI,EAAG8M,EAAQC,GAcjB,QAASg3H,GAAQtpI,EAAQijD,EAAMtiD,GAM7B,IAAK,GALD0T,GAAQ4uC,EAAKt+C,MAAM,KACnBjD,EAAO2S,EAAM0xE,MAGbnmF,EAAMI,EACDoC,EAAI,EAAGA,EAAIiS,EAAMpS,OAAQG,IAAK,CACrC,GAAI8Q,GAAOmB,EAAMjS,EACX8Q,KAAQtT,KACZA,EAAIsT,OAENtT,EAAMA,EAAIsT,GAMZ,MAFAtT,GAAI8B,GAAQf,EAELX,EAST,QAASupI,GAAY3B,EAAM4B,GACzB,GAAI7qG,KAEJ,KAAK,GAAIj9B,KAAQkmI,GACf,GAAIA,EAAKjmI,eAAeD,GAAO,CAC7B,GAAI+nI,GAAUD,EAAQ9nI,EAClBe,OAAMC,QAAQ+mI,GAChBA,EAAQzkI,QAAQ,SAAU0kI,GACxBJ,EAAQ3qG,EAAW+qG,EAAU9B,EAAKlmI,MAER,gBAAZ+nI,GAChBH,EAAQ3qG,EAAW8qG,EAAS7B,EAAKlmI,IAEjC4nI,EAAQ3qG,EAAWj9B,EAAMkmI,EAAKlmI,IAKpC,MAAOi9B,GAST,QAASz/B,GAAW6V,GAElB,GAAIymF,GAAU6rC,EAAStyH,GACnB40H,GACFnyC,SACAE,SACAt4F,WAmBF,IAfIo8F,EAAQhE,OACVgE,EAAQhE,MAAMxyF,QAAQ,SAAU4kI,GAC9B,GAAIC,IACFjuI,GAAIguI,EAAQhuI,GACZy+B,MAAOt5B,OAAO6oI,EAAQvvG,OAASuvG,EAAQhuI,IAEzC4lE,GAAMqoE,EAAWN,EAAYK,EAAQhC,KAAMkC,IACvCD,EAAUvpC,QACZupC,EAAU9oC,MAAQ,SAEpB4oC,EAAUnyC,MAAMt0F,KAAK2mI,KAKrBruC,EAAQ9D,MAAO,CAMjB,GAAIqyC,GAAc,SAAqBC,GACrC,GAAIC,IACFn5H,KAAMk5H,EAAQl5H,KACdD,GAAIm5H,EAAQn5H,GAKd,OAHA2wD,GAAMyoE,EAAWV,EAAYS,EAAQpC,KAAMsC,IAC3CD,EAAU19B,OAA0B,OAAjBy9B,EAAQ1mI,KAAgB,KAAOpB,OAE3C+nI,EAGTzuC,GAAQ9D,MAAM1yF,QAAQ,SAAUglI,GAC9B,GAAIl5H,GAAMD,CAERC,GADEk5H,EAAQl5H,eAAgBhO,QACnBknI,EAAQl5H,KAAK0mF,OAGlB57F,GAAIouI,EAAQl5H,MAQdD,EADEm5H,EAAQn5H,aAAc/N,QACnBknI,EAAQn5H,GAAG2mF,OAGd57F,GAAIouI,EAAQn5H,IAIZm5H,EAAQl5H,eAAgBhO,SAAUknI,EAAQl5H,KAAK4mF,OACjDsyC,EAAQl5H,KAAK4mF,MAAM1yF,QAAQ,SAAUmlI,GACnC,GAAIF,GAAYF,EAAYI,EAC5BR,GAAUjyC,MAAMx0F,KAAK+mI,KAIzBd,EAASr4H,EAAMD,EAAI,SAAUC,EAAMD,GACjC,GAAIs5H,GAAU3xC,EAAWmxC,EAAW74H,EAAKlV,GAAIiV,EAAGjV,GAAIouI,EAAQ1mI,KAAM0mI,EAAQpC,MACtEqC,EAAYF,EAAYI,EAC5BR,GAAUjyC,MAAMx0F,KAAK+mI,KAGnBD,EAAQn5H,aAAc/N,SAAUknI,EAAQn5H,GAAG6mF,OAC7CsyC,EAAQn5H,GAAG6mF,MAAM1yF,QAAQ,SAAUmlI,GACjC,GAAIF,GAAYF,EAAYI,EAC5BR,GAAUjyC,MAAMx0F,KAAK+mI,OAW7B,MAJIzuC,GAAQosC,OACV+B,EAAUvqI,QAAUo8F,EAAQosC,MAGvB+B,EAl2BT,GAAIG,IACFM,SAAY,YACZC,UAAa,aACbC,eAAkB,aAClBC,SAAY,YACZpiI,OAAU,eAAgB,oBAC1BqiI,UAAa,mBACbz9F,QAAW,QACX09F,aAAgB,SAEdP,EAAoBpnI,OAAOgJ,OAAOg+H,EACtCI,GAAkB/hI,MAAQ,aAG1B,IAAI4/H,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,GAGJp1F,EAAM,GACNhxC,EAAQ,EACR9I,EAAI,GACJgb,EAAQ,GACR8wH,EAAYC,EAAUC,KAmCtBP,EAAoB,iBA4xBxBtsI,GAAQksI,SAAWA,EACnBlsI,EAAQ+D,WAAaA,GAIjB,SAAS9D,EAAQD,GAIrB,QAASkE,GAAW8rI,EAAW3kF,GAC7B,GAAIkxC,MACAF,KACAp4F,GACFs4F,OACE0zC,cAAc,GAEhB5zC,OACE2I,OAAO,EACPt3F,YAAY,GAIG3G,UAAfskD,IACuBtkD,SAArBskD,EAAW25C,QACb/gG,EAAQo4F,MAAM2I,MAAQ35C,EAAW25C,OAELj+F,SAA1BskD,EAAW39C,aACbzJ,EAAQo4F,MAAM3uF,WAAa29C,EAAW39C,YAER3G,SAA5BskD,EAAW4kF,eACbhsI,EAAQs4F,MAAM0zC,aAAe5kF,EAAW4kF,cAM5C,KAAK,GAFDC,GAASF,EAAUzzC,MACnB4zC,EAASH,EAAU3zC,MACdp1F,EAAI,EAAGA,EAAIipI,EAAOppI,OAAQG,IAAK,CACtC,GAAI07F,MACAytC,EAAQF,EAAOjpI,EACnB07F,GAAS,GAAIytC,EAAM3vI,GACnBkiG,EAAW,KAAIytC,EAAM33H,OACrBkqF,EAAS,GAAIytC,EAAM3kI,OACnBk3F,EAAiB,WAAIytC,EAAMxoD,WAC3B+a,EAAY,MAAIytC,EAAMlxG,MACtByjE,EAAY,MAAyB57F,SAArBqpI,EAAMxoD,WAA2BwoD,EAAMxoD,WAAW7Q,MAAQhwE,OACpD,aAAlBqpI,EAAY,OACdztC,EAAa,OAAI,MAIfytC,EAAMpjI,OAAS/I,EAAQgsI,gBAAiB,IAC1CttC,EAAY,MAAIytC,EAAMpjI,OAExBuvF,EAAMx0F,KAAK46F,GAGb,IAAK,GAAI17F,GAAI,EAAGA,EAAIkpI,EAAOrpI,OAAQG,IAAK,CACtC,GAAI21B,MACAyzG,EAAQF,EAAOlpI,EACnB21B,GAAS,GAAIyzG,EAAM5vI,GACnBm8B,EAAiB,WAAIyzG,EAAMzoD,WAC3BhrD,EAAY,MAAIyzG,EAAMt5D,MACtBn6C,EAAQ,EAAIyzG,EAAMzxG,EAClBhC,EAAQ,EAAIyzG,EAAMjuH,EAClBwa,EAAY,MAAIyzG,EAAMnxG,MACtBtC,EAAY,MAAyB71B,SAArBspI,EAAMzoD,WAA2ByoD,EAAMzoD,WAAW7Q,MAAQhwE,OACtE9C,EAAQo4F,MAAM3uF,cAAe,EAC/BkvB,EAAY,MAAIyzG,EAAMrjI,MAEtB4vB,EAAY,MAAoB71B,SAAhBspI,EAAMrjI,OAAwBwB,WAAY6hI,EAAMrjI,MAAOyB,OAAQ4hI,EAAMrjI,MAAO0B,WAAaF,WAAY6hI,EAAMrjI,MAAOyB,OAAQ4hI,EAAMrjI,OAAS2B,OAASH,WAAY6hI,EAAMrjI,MAAOyB,OAAQ4hI,EAAMrjI,QAAYjG,OAEvN61B,EAAW,KAAIyzG,EAAMpxG,KACrBrC,EAAY,MAAI34B,EAAQo4F,MAAM2I,OAAqBj+F,SAAZspI,EAAMzxG,GAA+B73B,SAAZspI,EAAMjuH,EACtEi6E,EAAMt0F,KAAK60B,GAGb,OAASy/D,MAAOA,EAAOE,MAAOA,GAGhCv8F,EAAQkE,WAAaA,GAIjB,SAASjE,EAAQD,GAKrBA,EAAY,IACVswI,KAAM,OACNC,IAAK,kBACLC,KAAM,OACN1N,QAAS,WACTC,QAAS,WACTvhC,SAAU,YACVwhC,SAAU,YACVyN,eAAgB,+CAChBC,gBAAiB,qEACjBC,oBAAqB;AACrBC,gBAAiB,kCACjBC,mBAAoB,8BACpBC,iBAAkB,8BAEpB9wI,EAAe,MAAIA,EAAY,GAC/BA,EAAe,MAAIA,EAAY,GAG/BA,EAAY,IACVswI,KAAM,YACNC,IAAK,iBACLC,KAAM,SACN1N,QAAS,oBACTC,QAAS,mBACTvhC,SAAU,mBACVwhC,SAAU,kBACVyN,eAAgB,oEAChBC,gBAAiB,8FACjBC,oBAAqB,0FACrBC,gBAAiB,0DACjBC,mBAAoB,wCACpBC,iBAAkB,yCAEpB9wI,EAAe,MAAIA,EAAY,GAG/BA,EAAY,IACVswI,KAAM,SACNC,IAAK,qBACLC,KAAM,QACN1N,QAAS,cACTC,QAAS,gBACTvhC,SAAU,cACVwhC,SAAU,gBACVyN,eAAgB,0DAChBC,gBAAiB,8EACjBC,oBAAqB,2EACrBC,gBAAiB,8CACjBC,mBAAoB,iCACpBC,iBAAkB,gCAEpB9wI,EAAe,MAAIA,EAAY,GAG/BA,EAAY,IACVswI,KAAM,WACNC,IAAK,uBACLC,KAAM,QACN1N,QAAS,iBACTC,QAAS,iBACTvhC,SAAU,gBACVwhC,SAAU,gBACVyN,eAAgB,uDAChBC,gBAAiB,6EACjBC,oBAAqB,kFACrBC,gBAAiB,wCACjBC,mBAAoB,0CACpBC,iBAAkB,0CAEpB9wI,EAAe,MAAIA,EAAY,GAC/BA,EAAe,MAAIA,EAAY","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","_typeof","Symbol","iterator","obj","constructor","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","prop","hasOwnProperty","fillIfDefined","a","b","allowDeletion","arguments","length","undefined","protoExtend","i","other","extend","selectiveExtend","props","Array","isArray","Error","selectiveDeepExtend","TypeError","Object","deepExtend","selectiveNotDeepExtend","indexOf","push","equalArray","len","convert","type","Boolean","valueOf","isMoment","toDate","getType","toISOString","copyAndExtendArray","arr","newValue","newArr","copyArray","getAbsoluteLeft","elem","getBoundingClientRect","left","getAbsoluteRight","right","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","warn","msg","suppressDeprecationWarnings","console","deprecate","firstTime","deprecateSimple","name","deprecations","isFunction","Function","isObject","locale_set__set","_config","_ordinalParseLenient","RegExp","_ordinalParse","source","mergeConfigs","parentConfig","childConfig","Locale","set","normalizeLocale","toLowerCase","chooseLocale","names","next","loadLocale","oldLocale","locales","globalLocale","_abbr","code","locale_locales__getSetGlobalLocale","values","data","locale_locales__getLocale","defineLocale","abbr","parentLocale","updateLocale","locale_locales__listLocales","addUnitAlias","unit","shorthand","lowerCase","aliases","normalizeUnits","units","normalizeObjectUnits","inputObject","normalizedProp","normalizedInput","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","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","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","absRound","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","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","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","_interopRequireDefault","__esModule","default","groups","forthArgument","defaultOptions","autoResize","throttleRedraw","orientation","axis","rtl","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","_Configurator2","_Validator","_Validator2","printStyle","configureOptions","_createConfigurator","markDirty","refreshItems","errorFound","validate","selection","getSelection","setSelection","newDataSet","focus","itemData","dataset","getDataRange","_this","minItem","maxItem","factor","lhs","rhs","getStart","getEnd","show","repositionX","startSide","getWidthRight","endSide","getWidthLeft","centerContainer","itemFromTarget","group","groupFromTarget","customTime","customTimeFromTarget","snap","snappedTime","what","foreground","labelSet","groupId","pageX","srcEvent","pageY","_classCallCheck","instance","Constructor","defineProperty","_createClass","defineProperties","descriptor","enumerable","configurable","writable","protoProps","staticProps","_ColorPicker","_ColorPicker2","Configurator","parentModule","defaultContainer","pixelRatio","changedOptions","allowCreation","initialized","popupCounter","showButton","moduleOptions","domElements","popupDiv","popupLimit","popupHistory","colorPicker","wrapper","_removePopup","_clean","_handleObject","_makeItem","_makeHeader","generateButton","_printOptions","onmouseover","onmouseout","optionsContainer","_push","_showPopupIfNeeded","path","_arguments","_this2","_len","_key","_ret2","div","objectLabel","select","selectedValue","selected","_update","_makeLabel","err","popupString","popupValue","oninput","itemIndex","_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","_label","error","_makeColorField","_makeDropdown","_makeRange","_constructOptions","optionsObj","pointer","getOptions","hammerUtil","ColorPicker","generated","centerCoordinates","hueCircle","initialColor","previousColor","applied","updateCallback","closeCallback","hammer","_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","_rgbaArray","rgbObj","alpha","_setColor","display","_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","drag","pinch","enable","onTouch","_moveSelector","sat","hfac","sfac","fillRect","getImageData","centerY","centerX","angle","atan2","newTop","newLeft","propagating","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_ARRAY__","__WEBPACK_AMD_DEFINE_RESULT__","_firstTarget","events","propagatedHandler","_handled","stopped","stopPropagation","srcStop","firstTarget","elemHammer","_handlers","Manager","PropagatingHammer","o","assign","pointerType","isFirst","handler","eventType","hammers","idx","exportName","setTimeoutContext","bindFn","invokeArrayArg","arg","each","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","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","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","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","onRelease","offTouch","offRelease","disablePreventDefaultVertically","pinchRecognizer","Validator","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","_j","_j2","matrix","deltaDifference","scaleOffset","startToFront","endToFront","moveable","zoomable","zoomMin","zoomMax","animationTimer","_onDragStart","_onDrag","_onDragEnd","_onMouseWheel","_onTouch","_onPinch","validateDirection","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","getPointer","pointerDate","_pointerToDate","zoom","centerDate","hiddenDuration","hiddenDurationBefore","getHiddenDurationBefore","hiddenDurationAfter","move","_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","Activator","onMouseWheel","isActive","backgroundVertical","backgroundHorizontal","leftContainer","rightContainer","shadowTop","shadowBottom","shadowTopLeft","shadowBottomLeft","shadowTopRight","shadowBottomRight","initialDrawDone","_redrawTimer","scrollTop","scrollTopMin","customTimes","redrawCount","contentContainer","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","contentsOverflow","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","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","_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","initialEnd","initialStart","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","removeFromDataSet","startArray","orderByStart","orderByEnd","oldVisibleItems","visibleItemsLookup","lowerBound","upperBound","searchFunction","_checkIfVisibleWithReference","initialPosByStart","_traceVisible","initialPosByEnd","initialPos","breakCondition","isVisible","EPSILON","aTime","bTime","iMax","collidingItem","jj","collision","isCollision","baseClassName","_updateContents","_updateTitle","_updateDataAttributes","_updateStyle","getComputedStyle","maxWidth","_repaintDeleteButton","_repaintDragLeft","_repaintDragRight","contentStartPosition","parentWidth","boxWidth","groupChanged","deleteButton","template","_contentToString","removeAttribute","dataAttributes","attributes","setAttribute","outerHTML","itemSetHeight","marginLeft","marginRight","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","unbind","_exportFunctions","_bound","keydown","keyup","_keys","fromCharCode","down","handleEvent","up","keyCode","bound","bindAll","getKey","newBindings","eventParams","warned","substring","showCurrentTime","currentTimeTimer","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","_Images2","_Groups2","_Canvas2","selectionHandler","_SelectionHandler2","interactionHandler","_InteractionHandler2","_View2","renderer","_CanvasRenderer2","_PhysicsEngine2","layoutEngine","_LayoutEngine2","clustering","_Clustering2","manipulation","_ManipulationSystem2","nodesHandler","_NodesHandler2","edgesHandler","_EdgesHandler2","_KamadaKawai2","_Images","_Groups","_NodesHandler","_EdgesHandler","_PhysicsEngine","_Clustering","_CanvasRenderer","_Canvas","_View","_InteractionHandler","_SelectionHandler","_LayoutEngine","_ManipulationSystem","_KamadaKawai","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","imageBroken","url","imageToCache","brokenUrl","imageToLoadBrokenUrlOn","onerror","_addImageToCache","Image","imageToRedrawWith","cachedImage","img","onload","_redrawWithImage","_tryloadBrokenUrl","Groups","defaultIndex","groupsArray","defaultGroups","useDefaultGroups","optionFields","groupName","groupname","_index","_Node","_Node2","_Label","_Label2","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","_nodeId2","doNotEmit","oldNodesData","newNodes","positionInitially","changedData","dataChanged","constructorClass","clearPositions","dataArray","_node","_node2","boundingBox","nodeList","nodeObj","toId","fromId","edgeList","_Box","_Box2","_Circle","_Circle2","_CircularImage","_CircularImage2","_Database","_Database2","_Diamond","_Diamond2","_Dot","_Dot2","_Ellipse","_Ellipse2","_Icon","_Icon2","_Image","_Image2","_Square","_Square2","_Star","_Star2","_Text","_Text2","_Triangle","_Triangle2","_TriangleDown","_TriangleDown2","Node","imagelist","baseSize","baseFontSize","predefinedPosition","labelModule","currentShape","groupObj","imageObj","load","distanceToBorder","sizeDiff","fontDiff","updateBoundingBox","resize","parentOptions","newOptions","parsedColor","_slicedToArray","sliceIterator","_arr","_n","_e","_s","Label","edgelabel","pointToSelf","fontOptions","yLine","isEdgeLabel","nodeOptions","labelDirty","baseline","viewFontSize","calculateLabelSize","_drawBackground","_drawText","lineMargin","fontSize","_getColor2","_getColor","_getColor3","fontColor","_setAlignment2","_setAlignment","_setAlignment3","lineCount","strokeText","_processLabel","measureText","newOptionsArray","_possibleConstructorReturn","ReferenceError","_inherits","subClass","superClass","setPrototypeOf","__proto__","_NodeBase2","_NodeBase3","Box","_NodeBase","getPrototypeOf","textSize","getTextSize","selectionLineWidth","roundRect","enableShadow","disableShadow","save","enableBorderDashes","disableBorderDashes","restore","NodeBase","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","setLineDash","dashes","_CircleImageBase2","_CircleImageBase3","Circle","_CircleImageBase","diameter","_drawRawCircle","CircleImageBase","labelOffset","imageLoaded","ratio","neutralborderWidth","globalAlpha","can2","ctx2","drawImage","iterations","labelDimensions","CircularImage","_swapToImageResizeWhenImageLoaded","_resizeImage","clip","_drawImageAtPosition","_drawImageLabel","Database","database","_distanceToBorder","_ShapeBase2","_ShapeBase3","Diamond","_ShapeBase","_resizeShape","_drawShape","ShapeBase","sizeMultiplier","Dot","Ellipse","ellipse","Icon","_icon","iconTextSpacing","Square","Star","Text","Triangle","TriangleDown","_Edge","_Edge2","EdgesHandler","edgesListeners","arrows","scaleFactor","arrowStrikethrough","hoverWidth","selectionWidth","selfReferenceSize","smooth","forceDirection","roundness","emitChange","edgeData","edgeOptions","reconnectEdges","markAllEdgesAsDirty","updateEdgeType","_edgeId","oldEdgesData","edgesData","oldEdge","disconnect","showInternalIds","connect","cleanup","edgeType","colorDirty","_CubicBezierEdge","_CubicBezierEdge2","_BezierEdgeDynamic","_BezierEdgeDynamic2","_BezierEdgeStatic","_BezierEdgeStatic2","_StraightEdge","_StraightEdge2","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","_CubicBezierEdgeBase2","_CubicBezierEdgeBase3","CubicBezierEdge","_CubicBezierEdgeBase","viaNodes","via1","via2","bezierCurveTo","x1","y1","x2","y2","_getViaCoordinates","nearNode","_findBorderPositionBezier","x3","y3","_ref","_ref2","_getDistanceToBezierEdge","_ref3","_ref4","vec","_BezierEdgeBase2","_BezierEdgeBase3","CubicBezierEdgeBase","_BezierEdgeBase","minDistance","lastX","lastY","_getDistanceToLine","_EdgeBase2","_EdgeBase3","BezierEdgeBase","_EdgeBase","distanceToPoint","difference","via","EdgeBase","getColor","getLineWidth","_drawDashedLine","_drawLine","_line","_getCircleData2","_getCircleData","_getCircleData3","_circle","pattern","lineDashOffset","_getCircleData4","_getCircleData5","dashedLine","_getCircleData6","_getCircleData7","_x","_y","_radius","_findBorderPosition","_findBorderPositionCircle","_getCircleData8","_getCircleData9","colorOptions","grd","createLinearGradient","fromColor","toColor","addColorStop","_getDistanceToEdge","_getCircleData10","_getCircleData11","px","py","something","u","arrowPoint","guideOffset","findBorderPosition","guidePos","_getCircleData12","_getCircleData13","xi","yi","arrowCore","arrow","BezierEdgeDynamic","_boundFunction","positionBezierNode","physicsChange","setupSupportNode","parentEdgeId","quadraticCurveTo","BezierEdgeStatic","xVia","yVia","pi","originalAngle","myAngle","_pi","_originalAngle","_myAngle","StraightEdge","edgeSegmentLength","toBorderDist","toBorderPoint","borderPos","_BarnesHutSolver","_BarnesHutSolver2","_RepulsionSolver","_RepulsionSolver2","_HierarchicalRepulsionSolver","_HierarchicalRepulsionSolver2","_SpringSolver","_SpringSolver2","_HierarchicalSpringSolver","_HierarchicalSpringSolver2","_CentralGravitySolver","_CentralGravitySolver2","_FA2BasedRepulsionSolver","_FA2BasedRepulsionSolver2","_FA2BasedCentralGravitySolver","_FA2BasedCentralGravitySolver2","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","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","_i2","totalFx","totalFy","_i3","correctionFx","correctionFy","_i4","_nodeId3","CentralGravitySolver","_BarnesHutSolver3","ForceAtlas2BasedRepulsionSolver","degree","_CentralGravitySolver3","ForceAtlas2BasedCentralGravitySolver","_NetworkUtil","_NetworkUtil2","_Cluster","_Cluster2","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","_clonedOptions","clusterId","_getClusterPosition","clusterNode","containedNodes","containedEdges","_createClusterEdges","originalOptions","clusterNodeId","releaseFunction","clusterPosition","newPositions","_containedNode","_nodeId4","_containedNode2","_nodeId5","_containedNode3","edgesToBeDeleted","otherCluster","transferEdge","replacedEdge","_restoreEdge","nodesArray","reverse","average","averageSquared","hubCounter","largestHub","variance","standardDeviation","hubThreshold","NetworkUtil","allNodes","specificNodes","amountOfConnections","_Node3","Cluster","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","_NavigationHandler","_NavigationHandler2","_Popup","_Popup2","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","nodesChanged","edgesChanged","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","parentCentralization","sortMethod","setupHierarchicalLayout","layoutNetwork","prevHierarchicalState","adaptAllOptionsForHierarchicalLayout","MAX_LEVELS","clusterThreshold","startLength","before","clusterBridges","after","_declusterAll","info","kamadaKawai","_shiftToCenter","getRangeCore","clustersPresent","definedLevel","definedPositions","undefinedLevel","hierarchicalLevels","lastNodeOnLevel","hierarchicalChildrenReference","hierarchicalParentReference","hierarchicalTrees","treeIndex","distributionOrdering","distributionIndex","distributionOrderingPresence","_determineLevelsByHubsize","_determineLevelsDirected","_determineLevelsCustomCallback","distribution","_getDistribution","_generateMap","_placeNodesByHierarchy","_condenseHierarchy","stillShifting","branches","shiftTrees","treeSizes","getTreeSizes","shiftTree","_getPositionForHierarchy","_setPositionForHierarchy","getTreeSize","treeWidths","getBranchNodes","getBranchBoundary","branchMap","maxLevel","minSpace","maxSpace","branchNode","_getSpaceAroundNode2","_getSpaceAroundNode","_getSpaceAroundNode3","minSpaceNode","maxSpaceNode","getMaxLevel","getCollisionLevel","maxLevel1","maxLevel2","hasSameParent","parents1","parents2","shiftElementsCloser","levels","centerParents","levelNodes","branchShiftCallback","centerParent","diffAbs","branchNodes1","branchNodes2","_getBranchBoundary","_getBranchBoundary2","max1","_getBranchBoundary3","_getBranchBoundary4","min2","minSpace2","diffBranch","_shiftBlock","_centerParent","minimizeEdgeLength","allEdges","nodeLevel","C2","referenceNodes","aboveEdges","otherNode","getFx","getDFx","getGuess","guess","guessMap","dfx","moveBranch","branchNodes","_getBranchBoundary5","_getBranchBoundary6","minSpaceBranch","maxSpaceBranch","branchOffset","_getSpaceAroundNode4","_getSpaceAroundNode5","newPosition","minimizeEdgeLengthBottomUp","shiftBranchesCloserBottomUp","centerAllParents","centerAllParentsBottomUp","useMap","prevNode","prevPos","nextNode","nextPos","parents","parentId","minPos","maxPos","_i5","_getSpaceAroundNode6","_getSpaceAroundNode7","positionedNodes","nodeArray","_indexArrayToNodes","_sortNodeArray","handledNodeCount","_validataPositionAndContinue","parentLevel","_i6","childNodeLevel","_i7","previousPos","sharedParent","_findCommonParent","withChild","_placeBranchNodes","hubSize","levelDownstream","nodeA","nodeB","_crawlNetwork","minLevel","customCallback","levelByDirection","levelA","_setMinLevelToZero","fillInRelations","_this7","startingNodeId","crawler","tree","childA","childB","_this8","iterateParents","findParent","foundParent","doNotUpdate","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","deleteBtnClass","labelClassName","newFunction","boundFunction","UIfunctionName","functionName","eventName","domElement","indexTempEdge","indexTempNode","lastTouch","fromSelect","toSelect","overlappingNodeIds","_performEditEdge","targetNode","connectionEdge","connectFromId","_performAddEdge","clickData","defaultData","sourceNodeId","targetNodeId","_FloydWarshall","_FloydWarshall2","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","_getHighestEnergyNode3","_moveNode","_getEnergy2","_getEnergy","_getEnergy3","maxEnergyNodeId","dE_dx_max","dE_dy_max","nodeIdx","_getEnergy4","_getEnergy5","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","edit","del","back","addDescription","edgeDescription","editEdgeDescription","createEdgeError","deleteClusterError","editClusterError"],"mappings":"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","file":"vis.map"} \ No newline at end of file diff --git a/dist/vis.min.js b/dist/vis.min.js index 80c38170..be1d1503 100644 --- a/dist/vis.min.js +++ b/dist/vis.min.js @@ -4,8 +4,8 @@ * * A dynamic, browser-based visualization library. * - * @version 4.15.1 - * @date 2016-03-08 + * @version 4.15.2-SNAPSHOT + * @date 2016-04-05 * * @license * Copyright (C) 2011-2016 Almende B.V, http://almende.com @@ -22,24 +22,24 @@ * * 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(30),DateUtil:i(29),Range:i(27),stack:i(34),TimeStep:i(32),components:{items:{Item:i(36),BackgroundItem:i(40),BoxItem:i(38),PointItem:i(39),RangeItem:i(35)},BackgroundGroup:i(37),Component:i(28),CurrentTime:i(46),CustomTime:i(44),DataAxis:i(50),DataScale:i(51),GraphGroup:i(52),Group:i(33),ItemSet:i(31),Legend:i(56),LineGraph:i(49),TimeAxis:i(41)}},e.Network=i(58),e.network={Images:i(59),dotparser:i(115),gephiParser:i(116),allOptions:i(111)},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(22),e.keycharm=i(43)},function(t,e,i){var o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},n=i(2),s=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=r.exec(t);if(i)return!0;if(!isNaN(Date.parse(t)))return!0}return!1},e.randomUUID=function(){return s.v4()},e.assignAllKeys=function(t,e){for(var i in t)t.hasOwnProperty(i)&&"object"!==o(t[i])&&(t[i]=e)},e.fillIfDefined=function(t,i){var n=arguments.length<=2||void 0===arguments[2]?!1:arguments[2];for(var s in t)void 0!==i[s]&&("object"!==o(i[s])?void 0!==i[s]&&null!==i[s]||void 0===t[s]||n!==!0?t[s]=i[s]:delete t[s]:"object"===o(t[s])&&e.fillIfDefined(t[s],i[s],n))},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 o;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(n.isMoment(t))return new Date(t.valueOf());if(e.isString(t))return o=r.exec(t),o?new Date(Number(o[1])):n(t).toDate();throw new Error("Cannot convert object of type "+e.getType(t)+" to type Date");case"Moment":if(e.isNumber(t))return n(t);if(t instanceof Date)return n(t.valueOf());if(n.isMoment(t))return n(t);if(e.isString(t))return o=r.exec(t),n(o?Number(o[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(n.isMoment(t))return t.toDate().toISOString();if(e.isString(t))return o=r.exec(t),o?new Date(Number(o[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)){o=r.exec(t);var s;return s=o?new Date(Number(o[1])).valueOf():new Date(t).valueOf(),"/Date("+s+")/"}throw new Error("Cannot convert object of type "+e.getType(t)+" to type ASPDate");default:throw new Error('Unknown type "'+i+'"')}}};var r=/^\/?Date\((\-?\d+)/i;e.getType=function(t){var e="undefined"==typeof t?"undefined":o(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 a={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=a.split(t.style.cssText),n=a.split(i),s=e.extend(o,n);t.style.cssText=a.join(s)},e.removeCssText=function(t,e){var i=a.split(t.style.cssText),o=a.split(e);for(var n in o)o.hasOwnProperty(n)&&delete i[n];t.style.cssText=a.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"==("undefined"==typeof i?"undefined":o(i))){for(var n=Object.create(i),s=0;s0&&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],c=e(l);if(0==c)return h;-1==c?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,c=0,u=t.length-1,n=void 0!=n?n:function(t,e){return t==e?0:e>t?-1:1};u>=c&&d>l;){if(h=Math.floor(.5*(u+c)),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?c=h+1:u=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 t instanceof Array||"[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 $i)o=$i[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),to===!1&&(to=!0,e.updateOffset(this),to=!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 _(t){e.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function w(t,e){var i=!0;return a(function(){return i&&(_(t+"\nArguments: "+Array.prototype.slice.call(arguments).join(", ")+"\n"+(new Error).stack),i=!1),e.apply(this,arguments)},e)}function x(t,e){eo[t]||(_(e),eo[t]=!0)}function k(t){return t instanceof Function||"[object Function]"===Object.prototype.toString.call(t)}function O(t){return"[object Object]"===Object.prototype.toString.call(t)}function M(t){var e,i;for(i in t)e=t[i],k(e)?this[i]=e:this["_"+i]=e;this._config=t,this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)}function D(t,e){var i,o=a({},t);for(i in e)r(e,i)&&(O(t[i])&&O(e[i])?(o[i]={},a(o[i],t[i]),a(o[i],e[i])):null!=e[i]?o[i]=e[i]:delete o[i]);return o}function S(t){null!=t&&this.set(t)}function C(t){return t?t.toLowerCase().replace("_","-"):t}function T(t){for(var e,i,o,n,s=0;s0;){if(o=E(n.slice(0,e).join("-")))return o;if(i&&i.length>=e&&b(n,i,!0)>=e-1)break;e--}s++}return null}function E(e){var i=null;if(!oo[e]&&"undefined"!=typeof t&&t&&t.exports)try{i=io._abbr,!function(){var t=new Error('Cannot find module "./locale"');throw t.code="MODULE_NOT_FOUND",t}(),P(i)}catch(o){}return oo[e]}function P(t,e){var i;return t&&(i=p(e)?z(t):I(t,e),i&&(io=i)),io._abbr}function I(t,e){return null!==e?(e.abbr=t,null!=oo[t]?(x("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale"),e=D(oo[t]._config,e)):null!=e.parentLocale&&(null!=oo[e.parentLocale]?e=D(oo[e.parentLocale]._config,e):x("parentLocaleUndefined","specified parentLocale is not defined yet")),oo[t]=new S(e),P(t),oo[t]):(delete oo[t],null)}function N(t,e){if(null!=e){var i;null!=oo[t]&&(e=D(oo[t]._config,e)),i=new S(e),i.parentLocale=oo[t],oo[t]=i,P(t)}else null!=oo[t]&&(null!=oo[t].parentLocale?oo[t]=oo[t].parentLocale:null!=oo[t]&&delete oo[t]);return oo[t]}function z(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return io;if(!o(t)){if(e=E(t))return e;t=[t]}return T(t)}function L(){return Object.keys(oo)}function R(t,e){var i=t.toLowerCase();no[i]=no[i+"s"]=no[e]=t}function A(t){return"string"==typeof t?no[t]||no[t.toLowerCase()]:void 0}function B(t){var e,i,o={};for(i in t)r(t,i)&&(e=A(i),e&&(o[e]=t[i]));return o}function F(t,i){return function(o){return null!=o?(H(this,t,o),e.updateOffset(this,i),this):j(this,t)}}function j(t,e){return t.isValid()?t._d["get"+(t._isUTC?"UTC":"")+e]():NaN}function H(t,e,i){t.isValid()&&t._d["set"+(t._isUTC?"UTC":"")+e](i)}function W(t,e){var i;if("object"==typeof t)for(i in t)this.set(i,t[i]);else if(t=A(t),k(this[t]))return this[t](e);return this}function Y(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 G(t,e,i,o){var n=o;"string"==typeof o&&(n=function(){return this[o]()}),t&&(ho[t]=n),e&&(ho[e[0]]=function(){return Y(n.apply(this,arguments),e[1],e[2])}),i&&(ho[i]=function(){return this.localeData().ordinal(n.apply(this,arguments),t)})}function V(t){return t.match(/\[[\s\S]/)?t.replace(/^\[|\]$/g,""):t.replace(/\\/g,"")}function U(t){var e,i,o=t.match(so);for(e=0,i=o.length;i>e;e++)ho[o[e]]?o[e]=ho[o[e]]:o[e]=V(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 q(t,e){return t.isValid()?(e=X(e,t.localeData()),ao[e]=ao[e]||U(e),ao[e](t)):t.localeData().invalidDate()}function X(t,e){function i(t){return e.longDateFormat(t)||t}var o=5;for(ro.lastIndex=0;o>=0&&ro.test(t);)t=t.replace(ro,i),ro.lastIndex=0,o-=1;return t}function Z(t,e,i){So[t]=k(e)?e:function(t,o){return t&&i?i:e}}function K(t,e){return r(So,t)?So[t](e._strict,e._locale):new RegExp(J(t))}function J(t){return Q(t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(t,e,i,o,n){return e||i||o||n}))}function Q(t){return t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function $(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 rt(t,e){var i;if(!t.isValid())return t;if("string"==typeof e)if(/^\d+$/.test(e))e=y(e);else if(e=t.localeData().monthsParse(e),"number"!=typeof e)return t;return i=Math.min(t.date(),it(t.year(),e)),t._d["set"+(t._isUTC?"UTC":"")+"Month"](e,i),t}function at(t){return null!=t?(rt(this,t),e.updateOffset(this,!0),this):j(this,"Month")}function ht(){return it(this.year(),this.month())}function dt(t){return this._monthsParseExact?(r(this,"_monthsRegex")||ct.call(this),t?this._monthsShortStrictRegex:this._monthsShortRegex):this._monthsShortStrictRegex&&t?this._monthsShortStrictRegex:this._monthsShortRegex}function lt(t){return this._monthsParseExact?(r(this,"_monthsRegex")||ct.call(this),t?this._monthsStrictRegex:this._monthsRegex):this._monthsStrictRegex&&t?this._monthsStrictRegex:this._monthsRegex}function ct(){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]=Q(o[e]),n[e]=Q(n[e]),s[e]=Q(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 ut(t){var e,i=t._a;return i&&-2===l(t).overflow&&(e=i[Eo]<0||i[Eo]>11?Eo:i[Po]<1||i[Po]>it(i[To],i[Eo])?Po:i[Io]<0||i[Io]>24||24===i[Io]&&(0!==i[No]||0!==i[zo]||0!==i[Lo])?Io:i[No]<0||i[No]>59?No:i[zo]<0||i[zo]>59?zo:i[Lo]<0||i[Lo]>999?Lo:-1,l(t)._overflowDayOfYear&&(To>e||e>Po)&&(e=Po),l(t)._overflowWeeks&&-1===e&&(e=Ro),l(t)._overflowWeekday&&-1===e&&(e=Ao),l(t).overflow=e),t}function pt(t){var e,i,o,n,s,r,a=t._i,h=Yo.exec(a)||Go.exec(a);if(h){for(l(t).iso=!0,e=0,i=Uo.length;i>e;e++)if(Uo[e][1].exec(h[1])){n=Uo[e][0],o=Uo[e][2]!==!1;break}if(null==n)return void(t._isValid=!1);if(h[3]){for(e=0,i=qo.length;i>e;e++)if(qo[e][1].exec(h[3])){s=(h[2]||" ")+qo[e][0];break}if(null==s)return void(t._isValid=!1)}if(!o&&null!=s)return void(t._isValid=!1);if(h[4]){if(!Vo.exec(h[4]))return void(t._isValid=!1);r="Z"}t._f=n+(s||"")+(r||""),Ct(t)}else t._isValid=!1}function ft(t){var i=Xo.exec(t._i);return null!==i?void(t._d=new Date(+i[1])):(pt(t),void(t._isValid===!1&&(delete t._isValid,e.createFromInputFallback(t))))}function mt(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 vt(t){var e=new Date(Date.UTC.apply(null,arguments));return 100>t&&t>=0&&isFinite(e.getUTCFullYear())&&e.setUTCFullYear(t),e}function gt(t){return yt(t)?366:365}function yt(t){return t%4===0&&t%100!==0||t%400===0}function bt(){return yt(this.year())}function _t(t,e,i){var o=7+e-i,n=(7+vt(t,0,o).getUTCDay()-e)%7;return-n+o-1}function wt(t,e,i,o,n){var s,r,a=(7+i-o)%7,h=_t(t,o,n),d=1+7*(e-1)+a+h;return 0>=d?(s=t-1,r=gt(s)+d):d>gt(t)?(s=t+1,r=d-gt(t)):(s=t,r=d),{year:s,dayOfYear:r}}function xt(t,e,i){var o,n,s=_t(t.year(),e,i),r=Math.floor((t.dayOfYear()-s-1)/7)+1;return 1>r?(n=t.year()-1,o=r+kt(n,e,i)):r>kt(t.year(),e,i)?(o=r-kt(t.year(),e,i),n=t.year()+1):(n=t.year(),o=r),{week:o,year:n}}function kt(t,e,i){var o=_t(t,e,i),n=_t(t+1,e,i);return(gt(t)-o+n)/7}function Ot(t,e,i){return null!=t?t:null!=e?e:i}function Mt(t){var i=new Date(e.now());return t._useUTC?[i.getUTCFullYear(),i.getUTCMonth(),i.getUTCDate()]:[i.getFullYear(),i.getMonth(),i.getDate()]}function Dt(t){var e,i,o,n,s=[];if(!t._d){for(o=Mt(t),t._w&&null==t._a[Po]&&null==t._a[Eo]&&St(t),t._dayOfYear&&(n=Ot(t._a[To],o[To]),t._dayOfYear>gt(n)&&(l(t)._overflowDayOfYear=!0),i=vt(n,0,t._dayOfYear),t._a[Eo]=i.getUTCMonth(),t._a[Po]=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[Io]&&0===t._a[No]&&0===t._a[zo]&&0===t._a[Lo]&&(t._nextDay=!0,t._a[Io]=0),t._d=(t._useUTC?vt:mt).apply(null,s),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[Io]=24)}}function St(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=Ot(e.GG,t._a[To],xt(Rt(),1,4).year),o=Ot(e.W,1),n=Ot(e.E,1),(1>n||n>7)&&(h=!0)):(s=t._locale._week.dow,r=t._locale._week.doy,i=Ot(e.gg,t._a[To],xt(Rt(),s,r).year),o=Ot(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>kt(i,s,r)?l(t)._overflowWeeks=!0:null!=h?l(t)._overflowWeekday=!0:(a=wt(i,o,n,s,r),t._a[To]=a.year,t._dayOfYear=a.dayOfYear)}function Ct(t){if(t._f===e.ISO_8601)return void pt(t);t._a=[],l(t).empty=!0;var i,o,n,s,r,a=""+t._i,h=a.length,d=0;for(n=X(t._f,t._locale).match(so)||[],i=0;i0&&l(t).unusedInput.push(r),a=a.slice(a.indexOf(o)+o.length),d+=o.length),ho[s]?(o?l(t).empty=!1:l(t).unusedTokens.push(s),et(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[Io]<=12&&t._a[Io]>0&&(l(t).bigHour=void 0),t._a[Io]=Tt(t._locale,t._a[Io],t._meridiem),Dt(t),ut(t)}function Tt(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 Et(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 Pt(t){if(!t._d){var e=B(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)}),Dt(t)}}function It(t){var e=new m(ut(Nt(t)));return e._nextDay&&(e.add(1,"d"),e._nextDay=void 0),e}function Nt(t){var e=t._i,i=t._f;return t._locale=t._locale||z(t._l),null===e||void 0===i&&""===e?u({nullInput:!0}):("string"==typeof e&&(t._i=e=t._locale.preparse(e)),v(e)?new m(ut(e)):(o(i)?Et(t):i?Ct(t):n(e)?t._d=e:zt(t),c(t)||(t._d=null),t))}function zt(t){var i=t._i;void 0===i?t._d=new Date(e.now()):n(i)?t._d=new Date(+i):"string"==typeof i?ft(t):o(i)?(t._a=s(i.slice(0),function(t){return parseInt(t,10)}),Dt(t)):"object"==typeof i?Pt(t):"number"==typeof i?t._d=new Date(i):e.createFromInputFallback(t)}function Lt(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,It(s)}function Rt(t,e,i,o){return Lt(t,e,i,o,!1)}function At(t,e){var i,n;if(1===e.length&&o(e[0])&&(e=e[0]),!e.length)return Rt();for(i=e[0],n=1;nt&&(t=-t,i="-"),i+Y(~~(t/60),2)+e+Y(~~t%60,2)})}function Yt(t,e){var i=(e||"").match(t)||[],o=i[i.length-1]||[],n=(o+"").match($o)||["-",0,0],s=+(60*n[1])+y(n[2]);return"+"===n[0]?s:-s}function Gt(t,i){var o,s;return i._isUTC?(o=i.clone(),s=(v(t)||n(t)?+t:+Rt(t))-+o,o._d.setTime(+o._d+s),e.updateOffset(o,!1),o):Rt(t).local()}function Vt(t){return 15*-Math.round(t._d.getTimezoneOffset()/15)}function Ut(t,i){var o,n=this._offset||0;return this.isValid()?null!=t?("string"==typeof t?t=Yt(Oo,t):Math.abs(t)<16&&(t=60*t),!this._isUTC&&i&&(o=Vt(this)),this._offset=t,this._isUTC=!0,null!=o&&this.add(o,"m"),n!==t&&(!i||this._changeInProgress?de(this,oe(t-n,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,e.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?n:Vt(this):null!=t?this:NaN}function qt(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()}function Xt(t){return this.utcOffset(0,t)}function Zt(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(Vt(this),"m")),this}function Kt(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(Yt(ko,this._i)),this}function Jt(t){return this.isValid()?(t=t?Rt(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 $t(){if(!p(this._isDSTShifted))return this._isDSTShifted;var t={};if(f(t,this),t=Nt(t),t._a){var e=t._isUTC?h(t._a):Rt(t._a);this._isDSTShifted=this.isValid()&&b(t._a,e.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}function te(){return this.isValid()?!this._isUTC:!1}function ee(){return this.isValid()?this._isUTC:!1}function ie(){return this.isValid()?this._isUTC&&0===this._offset:!1}function oe(t,e){var i,o,n,s=t,a=null;return Ht(t)?s={ms:t._milliseconds,d:t._days,M:t._months}:"number"==typeof t?(s={},e?s[e]=t:s.milliseconds=t):(a=tn.exec(t))?(i="-"===a[1]?-1:1,s={y:0,d:y(a[Po])*i,h:y(a[Io])*i,m:y(a[No])*i,s:y(a[zo])*i,ms:y(a[Lo])*i}):(a=en.exec(t))?(i="-"===a[1]?-1:1,s={y:ne(a[2],i),M:ne(a[3],i),w:ne(a[4],i),d:ne(a[5],i),h:ne(a[6],i),m:ne(a[7],i),s:ne(a[8],i)}):null==s?s={}:"object"==typeof s&&("from"in s||"to"in s)&&(n=re(Rt(s.from),Rt(s.to)),s={},s.ms=n.milliseconds,s.M=n.months),o=new jt(s),Ht(t)&&r(t,"_locale")&&(o._locale=t._locale),o}function ne(t,e){var i=t&&parseFloat(t.replace(",","."));return(isNaN(i)?0:i)*e}function se(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 re(t,e){var i;return t.isValid()&&e.isValid()?(e=Gt(e,t),t.isBefore(e)?i=se(t,e):(i=se(e,t),i.milliseconds=-i.milliseconds,i.months=-i.months),i):{milliseconds:0,months:0}}function ae(t){ -return 0>t?-1*Math.round(-1*t):Math.round(t)}function he(t,e){return function(i,o){var n,s;return null===o||isNaN(+o)||(x(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=oe(i,o),de(this,n,t),this}}function de(t,i,o,n){var s=i._milliseconds,r=ae(i._days),a=ae(i._months);t.isValid()&&(n=null==n?!0:n,s&&t._d.setTime(+t._d+s*o),r&&H(t,"Date",j(t,"Date")+r*o),a&&rt(t,j(t,"Month")+a*o),n&&e.updateOffset(t,r||a))}function le(t,e){var i=t||Rt(),o=Gt(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&&(k(e[s])?e[s]():e[s]);return this.format(r||this.localeData().calendar(s,this,Rt(i)))}function ce(){return new m(this)}function ue(t,e){var i=v(t)?t:Rt(t);return this.isValid()&&i.isValid()?(e=A(p(e)?"millisecond":e),"millisecond"===e?+this>+i:+i<+this.clone().startOf(e)):!1}function pe(t,e){var i=v(t)?t:Rt(t);return this.isValid()&&i.isValid()?(e=A(p(e)?"millisecond":e),"millisecond"===e?+i>+this:+this.clone().endOf(e)<+i):!1}function fe(t,e,i){return this.isAfter(t,i)&&this.isBefore(e,i)}function me(t,e){var i,o=v(t)?t:Rt(t);return this.isValid()&&o.isValid()?(e=A(e||"millisecond"),"millisecond"===e?+this===+o:(i=+o,+this.clone().startOf(e)<=i&&i<=+this.clone().endOf(e))):!1}function ve(t,e){return this.isSame(t,e)||this.isAfter(t,e)}function ge(t,e){return this.isSame(t,e)||this.isBefore(t,e)}function ye(t,e,i){var o,n,s,r;return this.isValid()?(o=Gt(t,this),o.isValid()?(n=6e4*(o.utcOffset()-this.utcOffset()),e=A(e),"year"===e||"month"===e||"quarter"===e?(r=be(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 be(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 _e(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function we(){var t=this.clone().utc();return 0s&&(e=s),qe.call(this,t,e,i,o,n))}function qe(t,e,i,o,n){var s=wt(t,e,i,o,n),r=vt(s.year,0,s.dayOfYear);return this.year(r.getUTCFullYear()),this.month(r.getUTCMonth()),this.date(r.getUTCDate()),this}function Xe(t){return null==t?Math.ceil((this.month()+1)/3):this.month(3*(t-1)+this.month()%3)}function Ze(t){return xt(t,this._week.dow,this._week.doy).week}function Ke(){return this._week.dow}function Je(){return this._week.doy}function Qe(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")}function $e(t){var e=xt(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")}function ti(t,e){return"string"!=typeof t?t:isNaN(t)?(t=e.weekdaysParse(t),"number"==typeof t?t:null):parseInt(t,10)}function ei(t,e){return o(this._weekdays)?this._weekdays[t.day()]:this._weekdays[this._weekdays.isFormat.test(e)?"format":"standalone"][t.day()]}function ii(t){return this._weekdaysShort[t.day()]}function oi(t){return this._weekdaysMin[t.day()]}function ni(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=Rt([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 si(t){if(!this.isValid())return null!=t?this:NaN;var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=ti(t,this.localeData()),this.add(t-e,"d")):e}function ri(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 ai(t){return this.isValid()?null==t?this.day()||7:this.day(this.day()%7?t:t-7):null!=t?this:NaN}function hi(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 di(){return this.hours()%12||12}function li(t,e){G(t,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)})}function ci(t,e){return e._meridiemParse}function ui(t){return"p"===(t+"").toLowerCase().charAt(0)}function pi(t,e,i){return t>11?i?"pm":"PM":i?"am":"AM"}function fi(t,e){e[Lo]=y(1e3*("0."+t))}function mi(){return this._isUTC?"UTC":""}function vi(){return this._isUTC?"Coordinated Universal Time":""}function gi(t){return Rt(1e3*t)}function yi(){return Rt.apply(null,arguments).parseZone()}function bi(t,e,i){var o=this._calendar[t];return k(o)?o.call(e,i):o}function _i(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 wi(){return this._invalidDate}function xi(t){return this._ordinal.replace("%d",t)}function ki(t){return t}function Oi(t,e,i,o){var n=this._relativeTime[i];return k(n)?n(t,e,i,o):n.replace(/%d/i,t)}function Mi(t,e){var i=this._relativeTime[t>0?"future":"past"];return k(i)?i(e):i.replace(/%s/i,e)}function Di(t,e,i,o){var n=z(),s=h().set(o,e);return n[i](s,t)}function Si(t,e,i,o,n){if("number"==typeof t&&(e=t,t=void 0),t=t||"",null!=e)return Di(t,e,i,n);var s,r=[];for(s=0;o>s;s++)r[s]=Di(t,s,i,n);return r}function Ci(t,e){return Si(t,e,"months",12,"month")}function Ti(t,e){return Si(t,e,"monthsShort",12,"month")}function Ei(t,e){return Si(t,e,"weekdays",7,"day")}function Pi(t,e){return Si(t,e,"weekdaysShort",7,"day")}function Ii(t,e){return Si(t,e,"weekdaysMin",7,"day")}function Ni(){var t=this._data;return this._milliseconds=Dn(this._milliseconds),this._days=Dn(this._days),this._months=Dn(this._months),t.milliseconds=Dn(t.milliseconds),t.seconds=Dn(t.seconds),t.minutes=Dn(t.minutes),t.hours=Dn(t.hours),t.months=Dn(t.months),t.years=Dn(t.years),this}function zi(t,e,i,o){var n=oe(e,i);return t._milliseconds+=o*n._milliseconds,t._days+=o*n._days,t._months+=o*n._months,t._bubble()}function Li(t,e){return zi(this,t,e,1)}function Ri(t,e){return zi(this,t,e,-1)}function Ai(t){return 0>t?Math.floor(t):Math.ceil(t)}function Bi(){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*Ai(ji(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(Fi(r)),a+=n,r-=Ai(ji(n)),o=g(a/12),a%=12,h.days=r,h.months=a,h.years=o,this}function Fi(t){return 4800*t/146097}function ji(t){return 146097*t/4800}function Hi(t){var e,i,o=this._milliseconds;if(t=A(t),"month"===t||"year"===t)return e=this._days+o/864e5,i=this._months+Fi(e),"month"===t?i:i/12;switch(e=this._days+Math.round(ji(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 Wi(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*y(this._months/12)}function Yi(t){return function(){return this.as(t)}}function Gi(t){return t=A(t),this[t+"s"]()}function Vi(t){return function(){return this._data[t]}}function Ui(){return g(this.days()/7)}function qi(t,e,i,o,n){return n.relativeTime(e||1,!!i,t,o)}function Xi(t,e,i){var o=oe(t).abs(),n=Wn(o.as("s")),s=Wn(o.as("m")),r=Wn(o.as("h")),a=Wn(o.as("d")),h=Wn(o.as("M")),d=Wn(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,qi.apply(null,l)}function Zi(t,e){return void 0===Yn[t]?!1:void 0===e?Yn[t]:(Yn[t]=e,!0)}function Ki(t){var e=this.localeData(),i=Xi(this,!t,e);return t&&(i=e.pastFuture(+this,i)),e.postformat(i)}function Ji(){var t,e,i,o=Gn(this._milliseconds)/1e3,n=Gn(this._days),s=Gn(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,c=o,u=this.asSeconds();return u?(0>u?"-":"")+"P"+(r?r+"Y":"")+(a?a+"M":"")+(h?h+"D":"")+(d||l||c?"T":"")+(d?d+"H":"")+(l?l+"M":"")+(c?c+"S":""):"P0D"}var Qi,$i=e.momentProperties=[],to=!1,eo={};e.suppressDeprecationWarnings=!1;var io,oo={},no={},so=/(\[[^\[]*\])|(\\)?([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,ro=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,ao={},ho={},lo=/\d/,co=/\d\d/,uo=/\d{3}/,po=/\d{4}/,fo=/[+-]?\d{6}/,mo=/\d\d?/,vo=/\d\d\d\d?/,go=/\d\d\d\d\d\d?/,yo=/\d{1,3}/,bo=/\d{1,4}/,_o=/[+-]?\d{1,6}/,wo=/\d+/,xo=/[+-]?\d+/,ko=/Z|[+-]\d\d:?\d\d/gi,Oo=/Z|[+-]\d\d(?::?\d\d)?/gi,Mo=/[+-]?\d+(\.\d{1,3})?/,Do=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,So={},Co={},To=0,Eo=1,Po=2,Io=3,No=4,zo=5,Lo=6,Ro=7,Ao=8;G("M",["MM",2],"Mo",function(){return this.month()+1}),G("MMM",0,0,function(t){return this.localeData().monthsShort(this,t)}),G("MMMM",0,0,function(t){return this.localeData().months(this,t)}),R("month","M"),Z("M",mo),Z("MM",mo,co),Z("MMM",function(t,e){return e.monthsShortRegex(t)}),Z("MMMM",function(t,e){return e.monthsRegex(t)}),$(["M","MM"],function(t,e){e[Eo]=y(t)-1}),$(["MMM","MMMM"],function(t,e,i,o){var n=i._locale.monthsParse(t,o,i._strict);null!=n?e[Eo]=n:l(i).invalidMonth=t});var Bo=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/,Fo="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),jo="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),Ho=Do,Wo=Do,Yo=/^\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)?)?/,Go=/^\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)?)?/,Vo=/Z|[+-]\d\d(?::?\d\d)?/,Uo=[["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}/]],qo=[["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/]],Xo=/^\/?Date\((\-?\d+)/i;e.createFromInputFallback=w("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":""))}),G("Y",0,0,function(){var t=this.year();return 9999>=t?""+t:"+"+t}),G(0,["YY",2],0,function(){return this.year()%100}),G(0,["YYYY",4],0,"year"),G(0,["YYYYY",5],0,"year"),G(0,["YYYYYY",6,!0],0,"year"),R("year","y"),Z("Y",xo),Z("YY",mo,co),Z("YYYY",bo,po),Z("YYYYY",_o,fo),Z("YYYYYY",_o,fo),$(["YYYYY","YYYYYY"],To),$("YYYY",function(t,i){i[To]=2===t.length?e.parseTwoDigitYear(t):y(t)}),$("YY",function(t,i){i[To]=e.parseTwoDigitYear(t)}),$("Y",function(t,e){e[To]=parseInt(t,10)}),e.parseTwoDigitYear=function(t){return y(t)+(y(t)>68?1900:2e3)};var Zo=F("FullYear",!1);e.ISO_8601=function(){};var Ko=w("moment().min is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(){var t=Rt.apply(null,arguments);return this.isValid()&&t.isValid()?this>t?this:t:u()}),Jo=w("moment().max is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var t=Rt.apply(null,arguments);return this.isValid()&&t.isValid()?t>this?this:t:u()}),Qo=function(){return Date.now?Date.now():+new Date};Wt("Z",":"),Wt("ZZ",""),Z("Z",Oo),Z("ZZ",Oo),$(["Z","ZZ"],function(t,e,i){i._useUTC=!0,i._tzm=Yt(Oo,t)});var $o=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var tn=/^(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?\d*)?$/,en=/^(-)?P(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)W)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?$/;oe.fn=jt.prototype;var on=he(1,"add"),nn=he(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";var sn=w("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)});G(0,["gg",2],0,function(){return this.weekYear()%100}),G(0,["GG",2],0,function(){return this.isoWeekYear()%100}),He("gggg","weekYear"),He("ggggg","weekYear"),He("GGGG","isoWeekYear"),He("GGGGG","isoWeekYear"),R("weekYear","gg"),R("isoWeekYear","GG"),Z("G",xo),Z("g",xo),Z("GG",mo,co),Z("gg",mo,co),Z("GGGG",bo,po),Z("gggg",bo,po),Z("GGGGG",_o,fo),Z("ggggg",_o,fo),tt(["gggg","ggggg","GGGG","GGGGG"],function(t,e,i,o){e[o.substr(0,2)]=y(t)}),tt(["gg","GG"],function(t,i,o,n){i[n]=e.parseTwoDigitYear(t)}),G("Q",0,"Qo","quarter"),R("quarter","Q"),Z("Q",lo),$("Q",function(t,e){e[Eo]=3*(y(t)-1)}),G("w",["ww",2],"wo","week"),G("W",["WW",2],"Wo","isoWeek"),R("week","w"),R("isoWeek","W"),Z("w",mo),Z("ww",mo,co),Z("W",mo),Z("WW",mo,co),tt(["w","ww","W","WW"],function(t,e,i,o){e[o.substr(0,1)]=y(t)});var rn={dow:0,doy:6};G("D",["DD",2],"Do","date"),R("date","D"),Z("D",mo),Z("DD",mo,co),Z("Do",function(t,e){return t?e._ordinalParse:e._ordinalParseLenient}),$(["D","DD"],Po),$("Do",function(t,e){e[Po]=y(t.match(mo)[0],10)});var an=F("Date",!0);G("d",0,"do","day"),G("dd",0,0,function(t){return this.localeData().weekdaysMin(this,t)}),G("ddd",0,0,function(t){return this.localeData().weekdaysShort(this,t)}),G("dddd",0,0,function(t){return this.localeData().weekdays(this,t)}),G("e",0,0,"weekday"),G("E",0,0,"isoWeekday"),R("day","d"),R("weekday","e"),R("isoWeekday","E"),Z("d",mo),Z("e",mo),Z("E",mo),Z("dd",Do),Z("ddd",Do),Z("dddd",Do),tt(["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}),tt(["d","e","E"],function(t,e,i,o){e[o]=y(t)});var hn="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),dn="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),ln="Su_Mo_Tu_We_Th_Fr_Sa".split("_");G("DDD",["DDDD",3],"DDDo","dayOfYear"),R("dayOfYear","DDD"),Z("DDD",yo),Z("DDDD",uo),$(["DDD","DDDD"],function(t,e,i){i._dayOfYear=y(t)}),G("H",["HH",2],0,"hour"),G("h",["hh",2],0,di),G("hmm",0,0,function(){return""+di.apply(this)+Y(this.minutes(),2)}),G("hmmss",0,0,function(){return""+di.apply(this)+Y(this.minutes(),2)+Y(this.seconds(),2)}),G("Hmm",0,0,function(){return""+this.hours()+Y(this.minutes(),2)}),G("Hmmss",0,0,function(){return""+this.hours()+Y(this.minutes(),2)+Y(this.seconds(),2)}),li("a",!0),li("A",!1),R("hour","h"),Z("a",ci),Z("A",ci),Z("H",mo),Z("h",mo),Z("HH",mo,co),Z("hh",mo,co),Z("hmm",vo),Z("hmmss",go),Z("Hmm",vo),Z("Hmmss",go),$(["H","HH"],Io),$(["a","A"],function(t,e,i){i._isPm=i._locale.isPM(t),i._meridiem=t}),$(["h","hh"],function(t,e,i){e[Io]=y(t),l(i).bigHour=!0}),$("hmm",function(t,e,i){var o=t.length-2;e[Io]=y(t.substr(0,o)),e[No]=y(t.substr(o)),l(i).bigHour=!0}),$("hmmss",function(t,e,i){var o=t.length-4,n=t.length-2;e[Io]=y(t.substr(0,o)),e[No]=y(t.substr(o,2)),e[zo]=y(t.substr(n)),l(i).bigHour=!0}),$("Hmm",function(t,e,i){var o=t.length-2;e[Io]=y(t.substr(0,o)),e[No]=y(t.substr(o))}),$("Hmmss",function(t,e,i){var o=t.length-4,n=t.length-2;e[Io]=y(t.substr(0,o)),e[No]=y(t.substr(o,2)),e[zo]=y(t.substr(n))});var cn=/[ap]\.?m?\.?/i,un=F("Hours",!0);G("m",["mm",2],0,"minute"),R("minute","m"),Z("m",mo),Z("mm",mo,co),$(["m","mm"],No);var pn=F("Minutes",!1);G("s",["ss",2],0,"second"),R("second","s"),Z("s",mo),Z("ss",mo,co),$(["s","ss"],zo);var fn=F("Seconds",!1);G("S",0,0,function(){return~~(this.millisecond()/100)}),G(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),G(0,["SSS",3],0,"millisecond"),G(0,["SSSS",4],0,function(){return 10*this.millisecond()}),G(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),G(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),G(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),G(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),G(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),R("millisecond","ms"),Z("S",yo,lo),Z("SS",yo,co),Z("SSS",yo,uo);var mn;for(mn="SSSS";mn.length<=9;mn+="S")Z(mn,wo);for(mn="S";mn.length<=9;mn+="S")$(mn,fi);var vn=F("Milliseconds",!1);G("z",0,0,"zoneAbbr"),G("zz",0,0,"zoneName");var gn=m.prototype;gn.add=on,gn.calendar=le,gn.clone=ce,gn.diff=ye,gn.endOf=Ee,gn.format=xe,gn.from=ke,gn.fromNow=Oe,gn.to=Me,gn.toNow=De,gn.get=W,gn.invalidAt=Fe,gn.isAfter=ue,gn.isBefore=pe,gn.isBetween=fe,gn.isSame=me,gn.isSameOrAfter=ve,gn.isSameOrBefore=ge,gn.isValid=Ae,gn.lang=sn,gn.locale=Se,gn.localeData=Ce,gn.max=Jo,gn.min=Ko,gn.parsingFlags=Be,gn.set=W,gn.startOf=Te,gn.subtract=nn,gn.toArray=ze,gn.toObject=Le,gn.toDate=Ne,gn.toISOString=we,gn.toJSON=Re,gn.toString=_e,gn.unix=Ie,gn.valueOf=Pe,gn.creationData=je,gn.year=Zo,gn.isLeapYear=bt,gn.weekYear=We,gn.isoWeekYear=Ye,gn.quarter=gn.quarters=Xe,gn.month=at,gn.daysInMonth=ht,gn.week=gn.weeks=Qe,gn.isoWeek=gn.isoWeeks=$e,gn.weeksInYear=Ve,gn.isoWeeksInYear=Ge,gn.date=an,gn.day=gn.days=si,gn.weekday=ri,gn.isoWeekday=ai,gn.dayOfYear=hi,gn.hour=gn.hours=un,gn.minute=gn.minutes=pn,gn.second=gn.seconds=fn,gn.millisecond=gn.milliseconds=vn,gn.utcOffset=Ut,gn.utc=Xt,gn.local=Zt,gn.parseZone=Kt,gn.hasAlignedHourOffset=Jt,gn.isDST=Qt,gn.isDSTShifted=$t,gn.isLocal=te,gn.isUtcOffset=ee,gn.isUtc=ie,gn.isUTC=ie,gn.zoneAbbr=mi,gn.zoneName=vi,gn.dates=w("dates accessor is deprecated. Use date instead.",an),gn.months=w("months accessor is deprecated. Use month instead",at),gn.years=w("years accessor is deprecated. Use year instead",Zo),gn.zone=w("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",qt);var yn=gn,bn={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},_n={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"},wn="Invalid date",xn="%d",kn=/\d{1,2}/,On={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"},Mn=S.prototype;Mn._calendar=bn,Mn.calendar=bi,Mn._longDateFormat=_n,Mn.longDateFormat=_i,Mn._invalidDate=wn,Mn.invalidDate=wi,Mn._ordinal=xn,Mn.ordinal=xi,Mn._ordinalParse=kn,Mn.preparse=ki,Mn.postformat=ki,Mn._relativeTime=On,Mn.relativeTime=Oi,Mn.pastFuture=Mi,Mn.set=M,Mn.months=ot,Mn._months=Fo,Mn.monthsShort=nt,Mn._monthsShort=jo,Mn.monthsParse=st,Mn._monthsRegex=Wo,Mn.monthsRegex=lt,Mn._monthsShortRegex=Ho,Mn.monthsShortRegex=dt,Mn.week=Ze,Mn._week=rn,Mn.firstDayOfYear=Je,Mn.firstDayOfWeek=Ke,Mn.weekdays=ei,Mn._weekdays=hn,Mn.weekdaysMin=oi,Mn._weekdaysMin=ln,Mn.weekdaysShort=ii,Mn._weekdaysShort=dn,Mn.weekdaysParse=ni,Mn.isPM=ui,Mn._meridiemParse=cn,Mn.meridiem=pi,P("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=w("moment.lang is deprecated. Use moment.locale instead.",P),e.langData=w("moment.langData is deprecated. Use moment.localeData instead.",z);var Dn=Math.abs,Sn=Yi("ms"),Cn=Yi("s"),Tn=Yi("m"),En=Yi("h"),Pn=Yi("d"),In=Yi("w"),Nn=Yi("M"),zn=Yi("y"),Ln=Vi("milliseconds"),Rn=Vi("seconds"),An=Vi("minutes"),Bn=Vi("hours"),Fn=Vi("days"),jn=Vi("months"),Hn=Vi("years"),Wn=Math.round,Yn={s:45,m:45,h:22,d:26,M:11},Gn=Math.abs,Vn=jt.prototype;Vn.abs=Ni,Vn.add=Li,Vn.subtract=Ri,Vn.as=Hi,Vn.asMilliseconds=Sn,Vn.asSeconds=Cn,Vn.asMinutes=Tn,Vn.asHours=En,Vn.asDays=Pn,Vn.asWeeks=In,Vn.asMonths=Nn,Vn.asYears=zn,Vn.valueOf=Wi,Vn._bubble=Bi,Vn.get=Gi,Vn.milliseconds=Ln,Vn.seconds=Rn,Vn.minutes=An,Vn.hours=Bn,Vn.days=Fn,Vn.weeks=Ui,Vn.months=jn,Vn.years=Hn,Vn.humanize=Ki,Vn.toISOString=Ji,Vn.toString=Ji,Vn.toJSON=Ji,Vn.locale=Se,Vn.localeData=Ce,Vn.toIsoString=w("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Ji),Vn.lang=sn,G("X",0,0,"unix"),G("x",0,0,"valueOf"),Z("x",xo),Z("X",Mo),$("X",function(t,e,i){i._d=new Date(1e3*parseFloat(t,10))}),$("x",function(t,e,i){i._d=new Date(y(t))}),e.version="2.12.0",i(Rt),e.fn=yn,e.min=Bt,e.max=Ft,e.now=Qo,e.utc=h,e.unix=gi,e.months=Ci,e.isDate=n,e.locale=P,e.invalid=u,e.duration=oe,e.isMoment=v,e.weekdays=Ei,e.parseZone=yi,e.localeData=z,e.isDuration=Ht,e.monthsShort=Ti,e.weekdaysMin=Ii,e.defineLocale=I,e.updateLocale=N,e.locales=L,e.weekdaysShort=Pi,e.normalizeUnits=A,e.relativeTimeThreshold=Zi,e.prototype=yn;var Un=e;return Un})}).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++]=c[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 c=a/4294967296*1e4&268435455;s[n++]=c>>>8&255,s[n++]=255&c,s[n++]=c>>>24&15|16,s[n++]=c>>>16&255,s[n++]=r>>>8|128,s[n++]=255&r;for(var u=t.node||f,p=0;6>p;p++)s[n+p]=u[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=[],c={},u=0;256>u;u++)l[u]=(u+256).toString(16).substr(1),c[l[u]]=u;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="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},s=i(1),r=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=r.extend(this,{replace:["add","update","remove"]})),"object"===n(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=[],n=[],r=[],a=this,h=a._fieldId,d=function(t){var e=t[h];if(a._data[e]){var d=s.extend({},a._data[e]);e=a._updateItem(t),o.push(e),r.push(t),n.push(d)}else e=a._addItem(t),i.push(e)};if(Array.isArray(t))for(var l=0,c=t.length;c>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 u={items:o,oldData:n,data:r};this._trigger("update",u,e)}return i.concat(o)},o.prototype.get=function(t){var e,i,o,n=this,r=s.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,c,u,p,f=o&&o.type||this._options.type,m=o&&o.filter,v=[];if(void 0!=e)d=n._getItem(e,f),d&&m&&!m(d)&&(d=null);else if(void 0!=i)for(u=0,p=i.length;p>u;u++)d=n._getItem(i[u],f),m&&!m(d)||v.push(d);else for(l=Object.keys(this._data),u=0,p=l.length;p>u;u++)c=l[u],d=n._getItem(c,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(u=0,p=v.length;p>u;u++)v[u]=this._filterFields(v[u],g)}if("Object"==a){var y,b={};for(u=0,p=v.length;p>u;u++)y=v[u],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),c=[];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++)c.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)&&c.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++)c.push(s[e][this._fieldId])}else for(e=0,i=l.length;i>e;e++)o=l[e],n=r[o],c.push(n[this._fieldId]);return c},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(s.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(s.isNumber(t)||s.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,n=this._data,r=Object.keys(n),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],c=n[l],u=c[t],p=!1;for(i=0;d>i;i++)if(a[i]==u){p=!0;break}p||void 0===u||(a[d]=u,d++)}if(h)for(e=0,o=a.length;o>e;e++)a[e]=s.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=s.randomUUID(),t[this._fieldId]=e;var i,o,n={},r=Object.keys(t);for(i=0,o=r.length;o>i;i++){var a=r[i],h=this._type[a];n[a]=s.convert(t[a],h)}return this._data[e]=n,this.length++,e},o.prototype._getItem=function(t,e){var i,o,n,r,a=this._data[t];if(!a)return null;var h={},d=Object.keys(a);if(e)for(n=0,r=d.length;r>n;n++)i=d[n],o=a[i],h[i]=s.convert(o,e[i]);else for(n=0,r=d.length;r>n;n++)i=d[n],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),n=0,r=o.length;r>n;n++){var a=o[n],h=this._type[a];i[a]=s.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=[],c=[],u=[];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]?(c.push(s),d.push(e.data[o])):(this._ids[s]=!0,l.push(s)):this._ids[s]&&(delete this._ids[s],u.push(s));break;case"remove":for(o=0,n=a.length;n>o;o++)s=a[o],this._ids[s]&&(delete this._ids[s],u.push(s))}this.length+=l.length-u.length,l.length&&this._trigger("add",{items:l},i),c.length&&this._trigger("update",{items:c,data:d},i),u.length&&this._trigger("remove",{items:u},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 p,this.camera.setArmRotation(1,.5),this.camera.setArmLength(1.7),this.eye=new c(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="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},a=i(12),h=i(8),d=i(10),l=i(1),c=i(13),u=i(14),p=i(15),f=i(16),m=i(17),v=i(18);a(o.prototype),o.prototype._setScale=function(){this.scale=new c(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-u)/(p-u),m=240*f,g=this._hsv2rgb(m,1,1);c.strokeStyle=g,c.beginPath(),c.moveTo(h,r+t),c.lineTo(a,r+t),c.stroke()}c.strokeStyle=this.axisColor,c.strokeRect(h,r,i,s)}if(this.style===o.STYLE.DOTSIZE&&(c.strokeStyle=this.axisColor,c.fillStyle=this.dataColor.fill,c.beginPath(),c.moveTo(h,r),c.lineTo(a,r),c.lineTo(a-i+e,d),c.lineTo(h,d),c.closePath(),c.fill(),c.stroke()),this.style===o.STYLE.DOTCOLOR||this.style===o.STYLE.DOTSIZE){var y=5,b=new v(this.valueMin,this.valueMax,(this.valueMax-this.valueMin)/5,!0);for(b.start(),b.getCurrent()0?this.yMin:this.yMax,n=this._convert3Dto2D(new c(w,r,this.zMin)),Math.cos(2*_)>0?(m.textAlign="center",m.textBaseline="top",n.y+=b):Math.sin(2*_)<0?(m.textAlign="right",m.textBaseline="middle"):(m.textAlign="left",m.textBaseline="middle"),m.fillStyle=this.axisColor,m.fillText(" "+this.xValueLabel(i.getCurrent())+" ",n.x,n.y),i.next()}for(m.lineWidth=1,o=void 0===this.defaultYStep,i=new v(this.yMin,this.yMax,this.yStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,n=this._convert3Dto2D(new c(s,i.getCurrent(),this.zMin)),Math.cos(2*_)<0?(m.textAlign="center",m.textBaseline="top",n.y+=b):Math.sin(2*_)>0?(m.textAlign="right",m.textBaseline="middle"):(m.textAlign="left",m.textBaseline="middle"),m.fillStyle=this.axisColor,m.fillText(" "+this.yValueLabel(i.getCurrent())+" ",n.x,n.y),i.next();for(m.lineWidth=1,o=void 0===this.defaultZStep,i=new v(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 c(s,r,i.getCurrent())),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(t.x,t.y),m.lineTo(t.x-b,t.y),m.stroke(),m.textAlign="right",m.textBaseline="middle",m.fillStyle=this.axisColor,m.fillText(this.zValueLabel(i.getCurrent())+" ",t.x-5,t.y),i.next();m.lineWidth=1,t=this._convert3Dto2D(new c(s,r,this.zMin)),e=this._convert3Dto2D(new c(s,r,this.zMax)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(t.x,t.y),m.lineTo(e.x,e.y),m.stroke(),m.lineWidth=1,u=this._convert3Dto2D(new c(this.xMin,this.yMin,this.zMin)),p=this._convert3Dto2D(new c(this.xMax,this.yMin,this.zMin)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(u.x,u.y),m.lineTo(p.x,p.y),m.stroke(),u=this._convert3Dto2D(new c(this.xMin,this.yMax,this.zMin)),p=this._convert3Dto2D(new c(this.xMax,this.yMax,this.zMin)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(u.x,u.y),m.lineTo(p.x,p.y),m.stroke(),m.lineWidth=1,t=this._convert3Dto2D(new c(this.xMin,this.yMin,this.zMin)),e=this._convert3Dto2D(new c(this.xMin,this.yMax,this.zMin)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(t.x,t.y),m.lineTo(e.x,e.y),m.stroke(),t=this._convert3Dto2D(new c(this.xMax,this.yMin,this.zMin)),e=this._convert3Dto2D(new c(this.xMax,this.yMax,this.zMin)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(t.x,t.y),m.lineTo(e.x,e.y),m.stroke();var x=this.xLabel;x.length>0&&(l=.1/this.scale.y,s=(this.xMin+this.xMax)/2,r=Math.cos(_)>0?this.yMin-l:this.yMax+l,n=this._convert3Dto2D(new c(s,r,this.zMin)),Math.cos(2*_)>0?(m.textAlign="center",m.textBaseline="top"):Math.sin(2*_)<0?(m.textAlign="right",m.textBaseline="middle"):(m.textAlign="left",m.textBaseline="middle"),m.fillStyle=this.axisColor,m.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 c(s,r,this.zMin)),Math.cos(2*_)<0?(m.textAlign="center",m.textBaseline="top"):Math.sin(2*_)>0?(m.textAlign="right",m.textBaseline="middle"):(m.textAlign="left",m.textBaseline="middle"),m.fillStyle=this.axisColor,m.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 c(s,r,a)),m.textAlign="right",m.textBaseline="middle",m.fillStyle=this.axisColor,m.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,l,u,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),l=1,this.showShadow?(u=Math.min(1+x.x/k/2,1),a=this._hsv2rgb(d,l,u),h=a):(u=1,a=this._hsv2rgb(d,l,u),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;su&&(u=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,u,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="
"+this.xLabel+":"+t.point.x+"
"+this.yLabel+":"+t.point.y+"
"+this.zLabel+":"+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){return t&&t.__esModule?t:{"default":t}}function n(t,e,i,o){if(!(this instanceof n))throw new SyntaxError("Constructor must be called with the new operator");if(!(Array.isArray(i)||i instanceof c||i instanceof u)&&i instanceof Object){var s=o;o=i,i=s}var r=this;this.defaultOptions={start:null,end:null,autoResize:!0,throttleRedraw:0,orientation:{axis:"bottom",item:"bottom"},moment:d,width:null,height:null,maxHeight:null,minHeight:null},this.options=l.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 r.timeAxis.step.scale},getStep:function(){return r.timeAxis.step.step},toScreen:r._toScreen.bind(r),toGlobalScreen:r._toGlobalScreen.bind(r),toTime:r._toTime.bind(r),toGlobalTime:r._toGlobalTime.bind(r)}},this.range=new p(this.body),this.components.push(this.range),this.body.range=this.range,this.timeAxis=new m(this.body),this.timeAxis2=null,this.components.push(this.timeAxis),this.currentTime=new v(this.body),this.components.push(this.currentTime),this.itemSet=new y(this.body),this.components.push(this.itemSet),this.itemsData=null,this.groupsData=null,this.on("tap",function(t){r.emit("click",r.getEventProperties(t))}),this.on("doubletap",function(t){r.emit("doubleClick",r.getEventProperties(t))}),this.dom.root.oncontextmenu=function(t){r.emit("contextmenu",r.getEventProperties(t))},this.fitDone=!1,this.on("changed",function(){if(null!=this.itemsData&&!r.fitDone)if(r.fitDone=!0,void 0!=r.options.start||void 0!=r.options.end){if(void 0==r.options.start||void 0==r.options.end)var t=r.getItemRange();var e=void 0!=r.options.start?r.options.start:t.min,i=void 0!=r.options.end?r.options.end:t.max;r.setWindow(e,i,{animation:!1})}else r.fit({animation:!1})}),o&&this.setOptions(o),i&&this.setGroups(i),e&&this.setItems(e),this._redraw()}var s=i(20),r=o(s),a=i(26),h=o(a),d=(i(12),i(22),i(2)),l=i(1),c=i(8),u=i(10),p=i(27),f=i(30),m=i(41),v=i(46),g=i(44),y=i(31),b=i(26).printStyle,_=i(47).allOptions,w=i(47).configureOptions;n.prototype=new f,n.prototype._createConfigurator=function(){return new r["default"](this,this.dom.container,w)},n.prototype.redraw=function(){this.itemSet&&this.itemSet.markDirty({refreshItems:!0}),this._redraw()},n.prototype.setOptions=function(t){var e=h["default"].validate(t,_);if(e===!0&&console.log("%cErrors have been found in the supplied options object.",b),f.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)}}},n.prototype.setItems=function(t){var e;e=t?t instanceof c||t instanceof u?t:new c(t,{type:{start:"Date",end:"Date"}}):null,this.itemsData=e,this.itemSet&&this.itemSet.setItems(e)},n.prototype.setGroups=function(t){var e;e=t?t instanceof c||t instanceof u?t:new c(t):null,this.groupsData=e,this.itemSet.setGroups(e)},n.prototype.setData=function(t){t&&t.groups&&this.setGroups(t.groups),t&&t.items&&this.setItems(t.items)},n.prototype.setSelection=function(t,e){this.itemSet&&this.itemSet.setSelection(t),e&&e.focus&&this.focus(t,e)},n.prototype.getSelection=function(){return this.itemSet&&this.itemSet.getSelection()||[]},n.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)}}},n.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)},n.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,s=null;if(null!=i&&null!=o){var r,a,h,d,c;!function(){var e=function(t){return l.convert(t.data.start,"Date").valueOf()},u=function(t){var e=void 0!=t.data.end?t.data.end:t.data.start;return l.convert(e,"Date").valueOf()};r=o-i,0>=r&&(r=10),a=r/t.props.center.width,l.forEach(t.itemSet.items,function(t){t.show(),t.repositionX();var r=e(t),h=u(t),d=r-(t.getWidthLeft()+10)*a,l=h+(t.getWidthRight()+10)*a;i>d&&(i=d,n=t),l>o&&(o=l,s=t)}.bind(t)),n&&s&&(h=n.getWidthLeft()+10,d=s.getWidthRight()+10,c=t.props.center.width-h-d,c>0&&(i=e(n)-h*r/c,o=u(s)+d*r/c))}()}return{min:null!=i?new Date(i):null,max:null!=o?new Date(o):null}},n.prototype.getDataRange=function(){var t=null,e=null,i=this.itemsData&&this.itemsData.getDataSet();return i&&i.forEach(function(i){var o=l.convert(i.start,"Date").valueOf(),n=l.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}},n.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=e-l.getAbsoluteLeft(this.dom.centerContainer),n=i-l.getAbsoluteTop(this.dom.centerContainer),s=this.itemSet.itemFromTarget(t),r=this.itemSet.groupFromTarget(t),a=g.customTimeFromTarget(t),h=this.itemSet.options.snap||null,d=this.body.util.getScale(),c=this.body.util.getStep(),u=this._toTime(o),p=h?h(u,d,c):u,f=l.getTarget(t),m=null;return null!=s?m="item":null!=a?m="custom-time":l.hasParent(f,this.timeAxis.dom.foreground)?m="axis":this.timeAxis2&&l.hasParent(f,this.timeAxis2.dom.foreground)?m="axis":l.hasParent(f,this.itemSet.dom.labelSet)?m="group-label":l.hasParent(f,this.currentTime.bar)?m="current-time":l.hasParent(f,this.dom.center)&&(m="background"),{event:t,item:s?s.id:null,group:r?r.groupId:null,what:m,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:n,time:u,snappedTime:p}},t.exports=n},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"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},r=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),r=1;o>r;r++)n[r-1]=e[r];return n.forEach(function(t){s.appendChild(t)}),i.domElements.push(s),{v:i.domElements.length}}();if("object"===("undefined"==typeof a?"undefined":s(a)))return a.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*c?(a.min=Math.ceil(e*c),l=a.min,d="range increased"):n>e/c&&(a.min=Math.ceil(e/c),l=a.min,d="range increased"),e*c>s&&1!==s&&(a.max=Math.ceil(e*c),l=a.max,d="range increased"),a.value=e}else a.value=o;var u=document.createElement("input");u.className="vis-configuration vis-config-rangeinput",u.value=a.value;var p=this;a.onchange=function(){u.value=this.value,p._update(Number(this.value),i)},a.oninput=function(){u.value=this.value};var f=this._makeLabel(i[i.length-1],i),m=this._makeItem(i,f,a,u);""!==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},function(t,e,i){if("undefined"!=typeof window){var o=i(23),n=window.Hammer||i(24);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.bind(e.srcEvent);"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 u(t,e,i){var o,n=e.prototype;o=t.prototype=Object.create(n),o.constructor=t,o._super=n,i&&ct(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=A(a,h),P(i,e),e.offsetDirection=R(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?F(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,c=L(h,d,l);o=c.x,n=c.y,i=vt(c.x)>vt(c.y)?c.x:c.y,s=R(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 R(t,e){return t===e?zt:vt(t)>=vt(e)?0>t?Lt:Rt:0>e?At:Bt}function A(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 F(t,e){return B(e[1],e[0],Yt)+B(t[1],t[0],Yt)}function j(t,e){return A(e[0],e[1],Yt)/A(t[0],t[1],Yt)}function H(){this.evEl=Vt,this.evWin=Ut,this.allow=!0,this.pressed=!1,S.apply(this,arguments)}function W(){this.evEl=Zt,this.evWin=Kt,S.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function Y(){this.evTarget=Qt,this.evWin=$t,this.started=!1,S.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={},S.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";u(Y,S,{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";u(V,S,{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})}}),u(q,S,{handler:function(t,e,i){var o=i.pointerType==Mt,n=i.pointerType==St;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&Ft||r&&i&jt?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var le=1,ce=2,ue=4,pe=8,fe=pe,me=16,ve=32;K.prototype={defaults:{},set:function(t){return ct(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:Rt,i=s!=this.pX,o=Math.abs(t.deltaX)):(n=0===r?zt:0>r?At: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&ce||!(this.state&ce)&&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)}}),u(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&ce)},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)}}),u(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)))}}),u(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&ce)}}),u(st,tt,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:Ft|jt,pointers:1},getTouchAction:function(){return et.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(Ft|jt)?e=t.overallVelocity:i&Ft?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)}}),u(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.distances.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,""),d):n.distance<=r?console.log('%cUnknown option detected: "'+e+'". Did you mean "'+n.closestMatch+'"?'+t.printLocation(n.path,e),d):console.log('%cUnknown option detected: "'+e+'". Did you mean one of these: '+t.print(Object.keys(i))+t.printLocation(o,e),d),a=!0}},{key:"findInOptions",value:function(e,i,o){var n=arguments.length<=3||void 0===arguments[3]?!1:arguments[3],s=1e9,a="",h=[],d=e.toLowerCase(),l=void 0;for(var c in i){var u=void 0;if(void 0!==i[c].__type__&&n===!0){var p=t.findInOptions(e,i[c],r.copyAndExtendArray(o,c));s>p.distance&&(a=p.closestMatch,h=p.path,s=p.distance,l=p.indexMatch)}else-1!==c.toLowerCase().indexOf(d)&&(l=c),u=t.levenshteinDistance(e,c),s>u&&(a=c,h=r.copyArray(o),s=u)}return{closestMatch:a,path:h,distance:s,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 r=0;ru,a=r||null===n?n:d+(n-d)*i,p=r||null===s?s:c+(s-c)*i;y=h._applyRange(a,p),l.updateHiddenDates(h.options.moment,h.body,h.options.hiddenDates),v=v||y,y&&h.body.emitter.emit("rangechange",{start:new Date(h.start),end:new Date(h.end),byUser:o}),r?v&&h.body.emitter.emit("rangechanged",{start:new Date(h.start),end:new Date(h.end),byUser:o}):h.animationTimer=setTimeout(_,20)}};return g()}var y=this._applyRange(n,s);if(l.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates),y){var b={start:new Date(this.start),end:new Date(this.end),byUser:o};this.body.emitter.emit("rangechange",b),this.body.emitter.emit("rangechanged",b)}},o.prototype._cancelAnimation=function(){this.animationTimer&&(clearTimeout(this.animationTimer),this.animationTimer=null)},o.prototype._applyRange=function(t,e){var i,o=null!=t?a.convert(t,"Date").valueOf():this.start,n=null!=e?a.convert(e,"Date").valueOf():this.end,s=null!=this.options.max?a.convert(this.options.max,"Date").valueOf():null,r=null!=this.options.min?a.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!==r&&r>o&&(i=r-o,o+=i,n+=i,null!=s&&n>s&&(n=s)),null!==s&&n>s&&(i=n-s,o-=i,n-=i,null!=r&&r>o&&(o=r)),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=l.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,d=this.props.touch.end+a,c=l.snapAwayFromHidden(this.body.hiddenDates,h,this.previousDelta-i,!0),u=l.snapAwayFromHidden(this.body.hiddenDates,d,this.previousDelta-i,!0);if(c!=h||u!=d)return this.deltaDifference+=i,this.props.touch.start=c,this.props.touch.end=u,void this._onDrag(t);this.previousDelta=i,this._applyRange(h,d);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=l.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=l.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 d=l.snapAwayFromHidden(this.body.hiddenDates,a,1-e,!0),c=l.snapAwayFromHidden(this.body.hiddenDates,h,e-1,!0);d==a&&c==h||(this.props.touch.start=d,this.props.touch.end=c,this.scaleOffset=1-t.scale,a=d,h=c),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-a.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=l.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end),n=l.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),this.endToFront=!(-i>0);var h=l.snapAwayFromHidden(this.body.hiddenDates,r,i,!0),d=l.snapAwayFromHidden(this.body.hiddenDates,a,-i,!0);h==r&&d==a||(r=h,a=d),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){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 u=0,p=s.clone();switch(o[h].repeat){case"daily":d.day()!=l.day()&&(u=1),d.dayOfYear(n.dayOfYear()),d.year(n.year()),d.subtract(7,"days"),l.dayOfYear(n.dayOfYear()),l.year(n.year()),l.subtract(7-u,"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()&&(u=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(u,"months"),p.add(1,"months");break;case"yearly":d.year()!=l.year()&&(u=1),d.year(n.year()),d.subtract(1,"years"),l.year(n.year()),l.subtract(1,"years"),l.add(u,"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="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},s=i(12),r=i(22),a=i(25),h=i(1),d=(i(8),i(10),i(27),i(31),i(41)),l=i(42),c=i(29),u=i(44);s(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 r(this.dom.root);var o=this.hammer.get("pinch").set({enable:!0});a.disablePreventDefaultVertically(o),this.hammer.get("pan").set({threshold:5,direction:r.DIRECTION_HORIZONTAL}),this.listeners={};var n=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];if(n.forEach(function(t){var e=function(e){i.isActive()&&i.emit(t,e)};i.hammer.on(t,e),i.listeners[t]=e}),a.onTouch(this.hammer,function(t){i.emit("touch",t)}.bind(this)),a.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(h.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"===n(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 d(this.body);i.setOptions=function(t){var e=t?h.extend({},t):{};e.orientation="top",d.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&&c.convertHiddenOptions(this.options.moment,this.body,this.options.hiddenDates),"clickToUse"in t&&(t.clickToUse?this.activator||(this.activator=new l(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 s=h.deepExtend({},this.options);this.components.forEach(function(t){h.deepExtend(s,t.options)}),this.configurator.setModuleOptions({global:s})}this._origRedraw?this._redraw():(this._origRedraw=this._redraw.bind(this),this._redraw=h.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?h.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,h.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=h.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){c.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates),"top"==e.orientation?(h.addClassName(o.root,"vis-top"),h.removeClassName(o.root,"vis-bottom")):(h.removeClassName(o.root,"vis-top"),h.addClassName(o.root,"vis-bottom")),o.root.style.maxHeight=h.option.asSize(e.maxHeight,""),o.root.style.minHeight=h.option.asSize(e.minHeight,""),o.root.style.width=h.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 a=Math.max(i.left.height,i.center.height,i.right.height),d=i.top.height+a+i.bottom.height+n+i.border.top+i.border.bottom;o.root.style.height=h.option.asSize(e.height,d+"px"),i.root.height=o.root.offsetHeight,i.background.height=i.root.height-n;var l=i.root.height-i.top.height-i.bottom.height-n;i.centerContainer.height=l,i.leftContainer.height=l,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 p=this.props.scrollTop;"top"!=e.orientation.item&&(p+=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=p+"px",o.left.style.left="0",o.left.style.top=p+"px",o.right.style.left="0",o.right.style.top=p+"px";var f=0==this.props.scrollTop?"hidden":"",m=this.props.scrollTop==this.props.scrollTopMin?"hidden":"";o.shadowTop.style.visibility=f,o.shadowBottom.style.visibility=m,o.shadowTopLeft.style.visibility=f,o.shadowBottomLeft.style.visibility=m,o.shadowTopRight.style.visibility=f,o.shadowBottomRight.style.visibility=m;var v=this.props.center.height>this.props.centerContainer.height;this.hammer.get("pan").set({direction:v?r.DIRECTION_ALL:r.DIRECTION_HORIZONTAL}),this.components.forEach(function(e){t=e.redraw()||t});var g=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=r.option.asSize,o=this.options,n=o.orientation.item,s=!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",s=this._orderGroups()||s;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,c=this._firstGroup(),u={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[y].redraw(e,p,l),r.forEach(this.groups,function(t){var i=t==c?u:p,o=t.redraw(e,i,l);s=o||s,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",s=this._isResized()||s},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[g];return i||null},o.prototype._updateUngrouped=function(){var t,e,i=this.groups[g];this.groups[y];if(this.groupsData){if(i){i.hide(),delete this.groups[g];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 c(s,r,this),this.groups[g]=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 a||t instanceof h))throw new TypeError("Data must be an instance of DataSet or DataView");this.itemsData=t}else this.itemsData=null;if(o&&(r.forEach(this.itemListeners,function(t,e){o.off(e,t)}),e=o.getIds(),this._onRemove(e)),this.itemsData){var n=this.id;r.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&&(r.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 a||t instanceof h))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;r.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?y:this.groupsData?t.group:g},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(){r.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==g||t==y)throw new Error("Illegal group id. "+t+" is a reserved id.");var n=Object.create(e.options);r.extend(n,{height:null}),o=new c(t,i,e),e.groups[t]=o;for(var s in e.items)if(e.items.hasOwnProperty(s)){var a=e.items[s];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=!r.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+s)return}else{var a=e.height;if(n+a-s>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 c=this.groupsData.getIds({order:this.options.groupOrder});if(!r.equalArray(c,this.groupTouchParams.originalOrder))for(var h=this.groupsData,u=this.groupTouchParams.originalOrder,p=this.groupTouchParams.group.groupId,f=Math.min(u.length,c.length),m=0,v=0,g=0;f>m;){for(;f>m+v&&f>m+g&&c[m+v]==u[m+g];)m++;if(m+v>=f)break;if(c[m+v]!=p)if(u[m+g]!=p){var y=c.indexOf(u[m+g]),b=h.get(c[m+v]),_=h.get(u[m+g]);this.options.groupOrderSwap(b,_,h),h.update(b),h.update(_);var w=c[m+v];c[m+v]=u[m+g],c[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=r.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(!r.equalArray(n,e.groupTouchParams.originalOrder))for(var s=e.groupTouchParams.originalOrder,a=Math.min(s.length,n.length),h=0;a>h;){for(;a>h&&n[h]==s[h];)h++;if(h>=a)break;var d=n.indexOf(s[h]),l=o.get(n[h]),c=o.get(s[h]);e.options.groupOrderSwap(l,c,o),groupsData.update(l),groupsData.update(c);var u=n[h];n[h]=s[h],n[d]=u,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 s=r.getAbsoluteLeft(this.dom.frame),a=t.center.x-s,h=this.body.util.toTime(a),d=this.body.util.getScale(),l=this.body.util.getStep(),c={start:i?i(h,d,l):h,content:"new item"};if("range"===this.options.type){var u=this.body.util.toTime(a+this.props.width/5);c.end=i?i(u,d,l):u}c[this.itemsData._fieldId]=r.randomUUID();var p=this.groupFromTarget(t);p&&(c.group=p.groupId),c=this._cloneItemData(c),this.options.onAdd(c,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,c=void 0!==d.data.end?d.data.end:l;!(l>=a.min&&c<=a.max)||this.options.multiselectPerGroup&&r!=this.itemsData.get(d.id).group||d instanceof v||i.push(d.id)}}}else{var u=i.indexOf(e.id);-1==u?i.push(e.id):i.splice(u,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(),c=a.format("MMMM").toLowerCase();return"vis-day"+l+" vis-"+c+o(a)+t(l-1);case"month":return"vis-"+a.format("MMMM").toLowerCase()+o(a)+t(a.month());case"year":var u=a.year();return"vis-year"+u+n(a)+t(u);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(34);i(35);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),c=this.dom.foreground;this.top=c.offsetTop,this.left=c.offsetLeft,this.width=c.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 u=0,p=this.visibleItems.length;p>u;u++){var f=this.visibleItems[u];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(22),i(36));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(22),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(36);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:a.FORMAT,moment:d,timeAxis:null},this.options=s.extend({},this.defaultOptions),this.body=t,this._create(),this.setOptions(e)}var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},s=i(1),r=i(28),a=i(32),h=i(29),d=i(2);o.prototype=new r,o.prototype.setOptions=function(t){t&&(s.selectiveExtend(["showMinorLabels","showMajorLabels","maxMinorChars","hiddenDates","timeAxis","moment"],this.options,t),s.selectiveDeepExtend(["format"],this.options,t),"orientation"in t&&("string"==typeof t.orientation?this.options.orientation.axis=t.orientation:"object"===n(t.orientation)&&"axis"in t.orientation&&(this.options.orientation.axis=t.orientation.axis)),"locale"in t&&("function"==typeof d.locale?d.locale(t.locale):d.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=s.convert(this.body.range.start,"Number"),i=s.convert(this.body.range.end,"Number"),o=this.body.util.toTime((this.props.minorCharWidth||10)*this.options.maxMinorChars).valueOf(),n=o-h.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this.body.range,o);n-=this.body.util.toTime(0).valueOf();var r=new a(new Date(e),new Date(i),n,this.body.hiddenDates);r.setMoment(this.options.moment),this.options.format&&r.setFormat(this.options.format),this.options.timeAxis&&r.setScale(this.options.timeAxis),this.step=r;var d=this.dom;d.redundant.lines=d.lines,d.redundant.majorTexts=d.majorTexts,d.redundant.minorTexts=d.minorTexts,d.lines=[],d.majorTexts=[],d.minorTexts=[];var c,u,p,f,m,v,g,y,b,_,w=0,x=void 0,k=0,O=1e3;for(r.start(),u=r.getCurrent(),f=this.body.util.toScreen(u);r.hasNext()&&O>k;){k++,m=r.isMajor(),_=r.getClassName(),b=r.getLabelMinor(),c=u,p=f,r.next(),u=r.getCurrent(),v=r.isMajor(),f=this.body.util.toScreen(u),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,r.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||l||(console.warn("Something is wrong with the Timeline scale. Limited drawing of grid lines to "+O+" lines."),l=!0),this.options.showMajorLabels){var S=this.body.util.toTime(0),C=r.getLabelMajor(S),T=C.length*(this.props.majorCharWidth||10)+10;(void 0==x||x>T)&&this._repaintMajorText(0,C,t,_)}s.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 l=!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(43),r=i(12),a=i(22),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.body.emitter.emit("currentTimeTick"),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){Object.defineProperty(e,"__esModule",{value:!0});var i="string",o="boolean",n="number",s="array",r="date",a="object",h="dom",d="moment",l="any",c={configure:{enabled:{"boolean":o},filter:{"boolean":o,"function":"function"},container:{dom:h},__type__:{object:a,"boolean":o,"function":"function"}},align:{string:i},autoResize:{"boolean":o},throttleRedraw:{number:n},clickToUse:{"boolean":o},dataAttributes:{string:i,array:s},editable:{add:{"boolean":o,undefined:"undefined"},remove:{"boolean":o,undefined:"undefined"},updateGroup:{"boolean":o,undefined:"undefined"},updateTime:{"boolean":o,undefined:"undefined"},__type__:{"boolean":o,object:a}},end:{number:n,date:r,string:i,moment:d},format:{minorLabels:{millisecond:{string:i,undefined:"undefined"},second:{string:i,undefined:"undefined"},minute:{string:i,undefined:"undefined"},hour:{string:i,undefined:"undefined"},weekday:{string:i,undefined:"undefined"},day:{string:i,undefined:"undefined"},month:{string:i,undefined:"undefined"},year:{string:i,undefined:"undefined"},__type__:{object:a}},majorLabels:{millisecond:{string:i,undefined:"undefined"},second:{string:i,undefined:"undefined"},minute:{string:i,undefined:"undefined"},hour:{string:i,undefined:"undefined"},weekday:{string:i,undefined:"undefined"},day:{string:i,undefined:"undefined"},month:{string:i,undefined:"undefined"},year:{string:i,undefined:"undefined"},__type__:{object:a}},__type__:{object:a}},moment:{"function":"function"},groupOrder:{string:i,"function":"function"},groupEditable:{add:{"boolean":o,undefined:"undefined"},remove:{"boolean":o,undefined:"undefined"},order:{"boolean":o,undefined:"undefined"},__type__:{"boolean":o,object:a}},groupOrderSwap:{"function":"function"},height:{string:i,number:n},hiddenDates:{start:{date:r,number:n,string:i,moment:d},end:{date:r,number:n,string:i,moment:d},repeat:{string:i},__type__:{object:a,array:s}},itemsAlwaysDraggable:{"boolean":o},locale:{string:i},locales:{__any__:{any:l},__type__:{object:a}},margin:{axis:{number:n},item:{horizontal:{number:n,undefined:"undefined"},vertical:{number:n,undefined:"undefined"},__type__:{object:a,number:n}},__type__:{object:a,number:n}},max:{date:r,number:n,string:i,moment:d},maxHeight:{number:n,string:i},maxMinorChars:{number:n},min:{date:r,number:n,string:i,moment:d},minHeight:{number:n,string:i},moveable:{"boolean":o},multiselect:{"boolean":o},multiselectPerGroup:{"boolean":o},onAdd:{"function":"function"},onUpdate:{"function":"function"},onMove:{"function":"function"},onMoving:{"function":"function"},onRemove:{"function":"function"},onAddGroup:{"function":"function"},onMoveGroup:{"function":"function"},onRemoveGroup:{"function":"function"},order:{"function":"function"},orientation:{axis:{string:i,undefined:"undefined"},item:{string:i,undefined:"undefined"},__type__:{string:i,object:a}},selectable:{"boolean":o},showCurrentTime:{"boolean":o},showMajorLabels:{"boolean":o},showMinorLabels:{"boolean":o},stack:{"boolean":o},snap:{"function":"function","null":"null"},start:{date:r,number:n,string:i,moment:d},template:{"function":"function"},groupTemplate:{"function":"function"},timeAxis:{scale:{string:i,undefined:"undefined"},step:{number:n,undefined:"undefined"},__type__:{object:a}},type:{string:i},width:{string:i,number:n},zoomable:{"boolean":o},zoomKey:{string:["ctrlKey","altKey","metaKey",""]},zoomMax:{number:n},zoomMin:{number:n},__type__:{object:a}},u={global:{align:["center","left","right"],autoResize:!0,throttleRedraw:[10,0,1e3,10],clickToUse:!1,editable:{add:!1,remove:!1,updateGroup:!1,updateTime:!1},end:"",format:{minorLabels:{millisecond:"SSS",second:"s",minute:"HH:mm",hour:"HH:mm",weekday:"ddd D",day:"D",month:"MMM",year:"YYYY"},majorLabels:{millisecond:"HH:mm:ss",second:"D MMMM HH:mm",minute:"ddd D MMMM",hour:"ddd D MMMM",weekday:"MMMM YYYY",day:"MMMM YYYY",month:"YYYY",year:""}},groupsDraggable:!1,height:"",locale:"",margin:{axis:[20,0,100,1],item:{horizontal:[10,0,100,1],vertical:[10,0,100,1]}},max:"",maxHeight:"",maxMinorChars:[7,0,20,1],min:"",minHeight:"",moveable:!1,multiselect:!1,multiselectPerGroup:!1,orientation:{axis:["both","bottom","top"],item:["bottom","top"]},selectable:!0,showCurrentTime:!1,showMajorLabels:!0,showMinorLabels:!0,stack:!0,start:"",type:["box","point","range","background"],width:"100%",zoomable:!0,zoomKey:["ctrlKey","altKey","metaKey",""],zoomMax:[31536e10,10,31536e10,1],zoomMin:[10,10,31536e10,1]}};e.allOptions=c,e.configureOptions=u},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e,i,o){if(!(Array.isArray(i)||i instanceof c||i instanceof u)&&i instanceof Object){var n=o;o=i,i=n}var s=this;this.defaultOptions={start:null,end:null,autoResize:!0,orientation:{axis:"bottom",item:"bottom"},moment:d,width:null,height:null,maxHeight:null,minHeight:null},this.options=l.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:{toScreen:s._toScreen.bind(s),toGlobalScreen:s._toGlobalScreen.bind(s),toTime:s._toTime.bind(s),toGlobalTime:s._toGlobalTime.bind(s)}},this.range=new p(this.body),this.components.push(this.range),this.body.range=this.range,this.timeAxis=new m(this.body),this.components.push(this.timeAxis),this.currentTime=new v(this.body),this.components.push(this.currentTime),this.linegraph=new y(this.body),this.components.push(this.linegraph),this.itemsData=null,this.groupsData=null,this.on("tap",function(t){s.emit("click",s.getEventProperties(t))}),this.on("doubletap",function(t){s.emit("doubleClick",s.getEventProperties(t))}),this.dom.root.oncontextmenu=function(t){s.emit("contextmenu",s.getEventProperties(t))},o&&this.setOptions(o),i&&this.setGroups(i),e&&this.setItems(e),this._redraw()}var s=i(20),r=o(s),a=i(26),h=o(a),d=(i(12),i(22),i(2)),l=i(1),c=i(8),u=i(10),p=i(27),f=i(30),m=i(41),v=i(46),g=i(44),y=i(49),b=i(26).printStyle,_=i(57).allOptions,w=i(57).configureOptions;n.prototype=new f, -n.prototype.setOptions=function(t){var e=h["default"].validate(t,_);e===!0&&console.log("%cErrors have been found in the supplied options object.",b),f.prototype.setOptions.call(this,t)},n.prototype.setItems=function(t){var e,i=null==this.itemsData;if(e=t?t instanceof c||t instanceof u?t:new c(t,{type:{start:"Date",end:"Date"}}):null,this.itemsData=e,this.linegraph&&this.linegraph.setItems(e),i)if(void 0!=this.options.start||void 0!=this.options.end){var o=void 0!=this.options.start?this.options.start:null,n=void 0!=this.options.end?this.options.end:null;this.setWindow(o,n,{animation:!1})}else this.fit({animation:!1})},n.prototype.setGroups=function(t){var e;e=t?t instanceof c||t instanceof u?t:new c(t):null,this.groupsData=e,this.linegraph.setGroups(e)},n.prototype.getLegend=function(t,e,i){return void 0===e&&(e=15),void 0===i&&(i=15),void 0!==this.linegraph.groups[t]?this.linegraph.groups[t].getLegend(e,i):"cannot find group:'"+t+"'"},n.prototype.isGroupVisible=function(t){return void 0!==this.linegraph.groups[t]?this.linegraph.groups[t].visible&&(void 0===this.linegraph.options.groups.visibility[t]||1==this.linegraph.options.groups.visibility[t]):!1},n.prototype.getDataRange=function(){var t=null,e=null;for(var i in this.linegraph.groups)if(this.linegraph.groups.hasOwnProperty(i)&&1==this.linegraph.groups[i].visible)for(var o=0;os?s:t,e=null==e?s:s>e?s:e}return{min:null!=t?new Date(t):null,max:null!=e?new Date(e):null}},n.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=e-l.getAbsoluteLeft(this.dom.centerContainer),n=i-l.getAbsoluteTop(this.dom.centerContainer),s=this._toTime(o),r=g.customTimeFromTarget(t),a=l.getTarget(t),h=null;l.hasParent(a,this.timeAxis.dom.foreground)?h="axis":this.timeAxis2&&l.hasParent(a,this.timeAxis2.dom.foreground)?h="axis":l.hasParent(a,this.linegraph.yAxisLeft.dom.frame)?h="data-axis":l.hasParent(a,this.linegraph.yAxisRight.dom.frame)?h="data-axis":l.hasParent(a,this.linegraph.legendLeft.dom.frame)?h="legend":l.hasParent(a,this.linegraph.legendRight.dom.frame)?h="legend":null!=r?h="custom-time":l.hasParent(a,this.currentTime.bar)?h="current-time":l.hasParent(a,this.dom.center)&&(h="background");var d=[],c=this.linegraph.yAxisLeft,u=this.linegraph.yAxisRight;return c.hidden||d.push(c.screenToValue(n)),u.hidden||d.push(u.screenToValue(n)),{event:t,what:h,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:n,time:s,value:d}},n.prototype._createConfigurator=function(){return new r["default"](this,this.dom.container,w)},t.exports=n},function(t,e,i){function o(t,e){this.id=s.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=s.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=s.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="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},s=i(1),r=i(7),a=i(8),h=i(10),d=i(28),l=i(50),c=i(52),u=i(56),p=i(53),f=i(55),m=i(54),v="__ungrouped__";o.prototype=new d,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 l(this.body,this.options.dataAxis,this.svg,this.options.groups),this.options.dataAxis.orientation="right",this.yAxisRight=new l(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),n=0;n0){var h={};for(this._getRelevantData(a,h,n,s),this._applySampling(a,h),e=0;e0)switch(t.options.style){case"line":l.hasOwnProperty(a[e])||(l[a[e]]=f.calcPath(h[a[e]],t)),f.draw(l[a[e]],t,this.framework);case"point":case"points":"point"!=t.options.style&&"points"!=t.options.style&&1!=t.options.drawPoints.enabled||m.draw(h[a[e]],t,this.framework);break;case"bar":}}}return r.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 n,r,a,h;if(t.length>0)for(r=0;rt?-1:1},c=Math.max(0,s.binarySearchValue(d,i,"x","before",l)),u=Math.min(d.length,s.binarySearchValue(d,o,"x","after",l)+1);0>=u&&(u=d.length);var p=new Array(u-c);for(a=c;u>a;a++)h=n.itemsData[a],p[a-c]=h;e[t[r]]=p}else e[t[r]]=n.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 c=Math.round(l/s);d[c]=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]));p.getStackedYRange(a,i,t,"__barStackLeft","left"),p.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 c=0;ci?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"],c=0;ct?-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=t>0?Math.round(Math.log(t)/Math.LN10):0;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>c?(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 n=["sampling","style","sort","yAxisOrientation","barChart","drawPoints","shaded","interpolation","zIndex","excludeFromStacking","excludeFromLegend"];this.options=s.selectiveBridgeObject(n,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="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},s=i(1),r=(i(7),i(53)),a=i(55),h=i(54);o.prototype.setItems=function(t){null!=t?(this.itemsData=t,1==this.options.sort&&s.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"];s.selectiveDeepExtend(e,this.options,t),"function"==typeof t.drawPoints&&(t.drawPoints={onRender:t.drawPoints}),s.mergeOptions(this.options,t,"interpolation"),s.mergeOptions(this.options,t,"drawPoints"),s.mergeOptions(this.options,t,"shaded"),t.interpolation&&"object"==n(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 s=document.createElementNS("http://www.w3.org/2000/svg","svg");i={svg:s,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":a.drawIcon(this,o,n,t,e,i);break;case"points":case"point":h.drawIcon(this,o,n,t,e,i);break;case"bar":r.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 c={style:t.options.drawPoints.style,styles:t.options.drawPoints.styles,size:t.options.drawPoints.size,className:t.className};n.drawPoint(e+.5*o,i,c,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,c,u,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)),c=Math.sqrt(Math.pow(s.screen_x-r.screen_x,2)+Math.pow(s.screen_y-r.screen_y,2)),v=Math.pow(c,i),y=Math.pow(c,2*i),g=Math.pow(l,i),b=Math.pow(l,2*i),w=Math.pow(d,i),_=Math.pow(d,2*i),u=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+u*n.screen_x+_*s.screen_x)*f,screen_y:(-b*o.screen_y+u*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 o=this.defaultIndex%this.defaultGroups.length;this.defaultIndex++,e={},e.color=this.defaultGroups[o],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},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(A.selectiveNotDeepExtend(n,t,e,i),A.mergeOptions(t,e,"shadow",i,o),void 0!==e.color&&null!==e.color){var s=A.parseColor(e.color);A.fillIfDefined(t.color,s)}else i===!0&&null===e.color&&(t.color=A.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=A.bridgeObject(o.font)),void 0!==e.scaling&&A.mergeOptions(t.scaling,e.scaling,"label",i,o.scaling)}}]),t}();e["default"]=B},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"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},r=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),c=l[0],u=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=c,this.isEdgeLabel||"left"!==this.fontOptions.align?t.textAlign="center":(t.textAlign=this.fontOptions.align,i-=.5*this.size.width),this.fontOptions.strokeWidth>0&&(t.lineWidth=this.fontOptions.strokeWidth,t.strokeStyle=u,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(this.isEdgeLabel&&"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=a.overrideOpacity(e,o),i=a.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"===s(e.font)&&a.fillIfDefined(t,e.font,i);t.size=Number(t.size)}}]),t}();e["default"]=h},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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},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){if(0!=this.imageObj.width){t.globalAlpha=1,this.enableShadow(t);var e=this.imageObj.width/this.width/this.body.view.scale;if(e>2&&this.options.shapeProperties.interpolation===!0){var i=this.imageObj.width,o=this.imageObj.height,n=document.createElement("canvas");n.width=i,n.height=i;var s=n.getContext("2d");e*=.5,i*=.5,o*=.5,s.drawImage(this.imageObj,0,0,i,o);for(var r=0,a=1;e>2&&4>a;)s.drawImage(n,r,0,i,o,r+i,0,i/2,o/2),r+=i,e*=.5,i*=.5,o*=.5,a+=1;t.drawImage(n,r,0,i,o,this.left,this.top,this.width,this.height)}else 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},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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(g.selectiveDeepExtend(n,t,e,i),g.mergeOptions(t,e,"smooth",i,o),g.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),g.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 r=e.arrows.toLowerCase();-1!=r.indexOf("to")&&(t.arrows.to.enabled=!0),-1!=r.indexOf("middle")&&(t.arrows.middle.enabled=!0),-1!=r.indexOf("from")&&(t.arrows.from.enabled=!0)}else{if("object"!==s(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));g.mergeOptions(t.arrows,e.arrows,"to",i,o.arrows),g.mergeOptions(t.arrows,e.arrows,"middle",i,o.arrows),g.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=g.deepExtend({},t.color,!0),g.isString(e.color))t.color.color=e.color,t.color.highlight=e.color,t.color.hover=e.color,t.color.inherit=!1;else{var a=!1;void 0!==e.color.color&&(t.color.color=e.color.color,a=!0),void 0!==e.color.highlight&&(t.color.highlight=e.color.highlight,a=!0),void 0!==e.color.hover&&(t.color.hover=e.color.hover,a=!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&&a===!0&&(t.color.inherit=!1)}else i===!0&&null===e.color&&(t.color=g.bridgeObject(o.color));void 0!==e.font&&null!==e.font?h["default"].parseOptions(t.font,e):i===!0&&null===e.font&&(t.font=g.bridgeObject(o.font))}}]),t}();e["default"]=y},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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")}}(),h=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 r=arguments.length<=6||void 0===arguments[6]?this._getViaCoordinates():arguments[6],h=a(r,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=a(e,2),o=i[0],n=i[1],s=t,r=[];r[0]=Math.pow(1-s,3),r[1]=3*s*Math.pow(1-s,2),r[2]=3*Math.pow(s,2)*(1-s),r[3]=Math.pow(s,3);var h=r[0]*this.fromPoint.x+r[1]*o.x+r[2]*n.x+r[3]*this.toPoint.x,d=r[0]*this.fromPoint.y+r[1]*o.y+r[2]*n.y+r[3]*this.toPoint.y;return{x:h,y:d}}}]),e}(l["default"]);e["default"]=c},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=function(){function t(t,e){for(var i=0;il;l++)c=.1*l,v[0]=Math.pow(1-c,3),v[1]=3*c*Math.pow(1-c,2),v[2]=3*Math.pow(c,2)*(1-c),v[3]=Math.pow(c,3),u=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,u,p,n,s),h=h>d?d:h),f=u,m=p;return h}}]),e}(d["default"]);e["default"]=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")}function s(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=function(){function t(t,e){for(var i=0;i=l&&h>d;){var m=.5*(l+c);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:c=m:f===!1?c=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,c=void 0,u=void 0,p=t,f=e;for(d=1;10>d;d++)l=.1*d,c=Math.pow(1-l,2)*t+2*l*(1-l)*r.x+Math.pow(l,2)*i,u=Math.pow(1-l,2)*e+2*l*(1-l)*r.y+Math.pow(l,2)*o,d>0&&(h=this._getDistanceToLine(p,f,c,u,n,s),a=a>h?h:a),p=c,f=u;return a}}]),e}(d["default"]);e["default"]=l},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,c=void 0,u=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),c=this._pointOnCircle(o,n,l,g),u=Math.atan2(t.y-c.y,t.x-c.x),p=t.distanceToBorder(e,u),f=Math.sqrt(Math.pow(c.x-t.x,2)+Math.pow(c.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 c.t=g,c}},{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),c=l[0],u=l[1],p=l[2],f=c-s,m=u-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,c=e+d*a,u=l-n,p=c-s;return Math.sqrt(u*u+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,c=void 0,u=this.getLineWidth(o,s);if("from"===e?(h=this.from,d=this.to,l=.1,c=this.options.arrows.from.scaleFactor):"to"===e?(h=this.to,d=this.from,l=-.1,c=this.options.arrows.to.scaleFactor):(h=this.to,d=this.from,c=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*c+3*u,_=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},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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 c=Math.abs(r-n)-Math.abs(a-s);c>0?(s-=.5*c,a+=.5*c):(n+=.5*c,r-=.5*c);var u=1e-5,p=Math.max(u,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 y=0;o>y;y++)i=t[e[y]],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},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*c>i?1:u*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},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,u[r.id].x-=o,u[r.id].y-=n,u[a.id].x+=o,u[a.id].y+=n}}}]),t}();e["default"]=n},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},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"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},r=function(){function t(t,e){for(var i=0;i=t&&i.push(n.id)}for(var r=0;r0&&Object.keys(p).length>0&&m===!0&&o.push({nodes:u,edges:p})}}}for(var b=0;bo?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={},a={x:o.x,y:o.y};for(var d in n)if(n.hasOwnProperty(d)){var l=this.body.nodes[d];r[d]={x:l.x,y:l.y}}var u=e.releaseFunction(a,r);for(var p in n)if(n.hasOwnProperty(p)){var f=this.body.nodes[p];void 0!==u[p]&&(f.x=void 0===u[p].x?o.x:u[p].x,f.y=void 0===u[p].y?o.y:u[p].y)}}else for(var m in n)if(n.hasOwnProperty(m)){var v=this.body.nodes[m];v=n[m],v.options.fixed.x===!1&&(v.x=o.x),v.options.fixed.y===!1&&(v.y=o.y)}for(var g in n)if(n.hasOwnProperty(g)){var y=this.body.nodes[g];y.vx=o.vx,y.vy=o.vy,y.setOptions({hidden:!1,physics:!0}),delete this.clusteredNodes[g]}for(var b=[],_=0;_o;)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},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:s.DIRECTION_ALL}),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()),this.initialized=!0,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},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),c=1.1*Math.abs(i.maxY-i.minY),u=this.canvas.frame.canvas.clientWidth/l,p=this.canvas.frame.canvas.clientHeight/c;o=p>=u?u: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},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),c=l.nodesChanged,u=l.edgesChanged,p=!1;h-n>0?(this.selectionHandler._generateClickEvent("selectNode",e,t),r=!0,p=!0):c===!0&&h>0?(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),this.selectionHandler._generateClickEvent("selectNode",e,t),p=!0,r=!0):0>h-n&&(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),r=!0),a-o>0&&p===!1?(this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0):a>0&&u===!0?(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0):0>a-o&&(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),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,c=[],u=0;u0&&(this.popupObj=h[c[c.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=[],g=0;g0&&(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"]=c},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},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 a["default"]?this.selectionObj.nodes[t.id]=t:this.selectionObj.edges[t.id]=t}},{key:"_addToHover",value:function(t){t instanceof a["default"]?this.hoverObj.nodes[t.id]=t:this.hoverObj.edges[t.id]=t}},{key:"_removeFromSelection",value:function(t){t instanceof a["default"]?(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"),l.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"===r(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,l=0;l0){var t=void 0,e=void 0,i=!1,o=!0,n=!1;this.hierarchicalLevels={},this.lastNodeOnLevel={},this.hierarchicalChildrenReference={},this.hierarchicalParentReference={},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(c,r),a=Math.max(c,a))}return[r,a,o,n]},l=function w(e){var i=t.hierarchicalLevels[e];if(t.hierarchicalChildrenReference[e]){var o=t.hierarchicalChildrenReference[e];if(o.length>0)for(var n=0;n1)for(var a=0;at.options.hierarchical.nodeSpacing){var u={};u[i.id]=!0;var p={};p[o.id]=!0,h(i,u),h(o,p);var f=c(i,o),m=d(u,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],c=t.options.hierarchical.levelSeparation*t.options.hierarchical.levelSeparation,u={},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]),c=s(l,4),u=(c[0],c[1],c[2]),p=c[3],f=o-r,m=0;f>0?m=Math.min(f,p-t.options.hierarchical.nodeSpacing):0>f&&(m=-Math.min(-f,u-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,c=o;l>0?c=Math.min(o+(d-t.options.hierarchical.nodeSpacing),i):0>l&&(c=Math.max(o-(h-t.options.hierarchical.nodeSpacing),i)),c!==o&&(t._setPositionForHierarchy(n,c,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])},b=function(){var e=Object.keys(t.distributionOrdering);e=e.reverse();for(var i=0;i0)for(var d=0;dg&&Math.abs(g)0&&Math.abs(g)0&&(r=this._getPositionForHierarchy(i[n-1])+this.options.hierarchical.nodeSpacing),this._setPositionForHierarchy(s,r,e),this._validataPositionAndContinue(s,e,r),o++}}}}},{key:"_placeBranchNodes",value:function(t,e){if(void 0!==this.hierarchicalChildrenReference[t]){for(var i=[],o=0;oe&&void 0===this.positionedNodes[s.id]))return;var a=void 0;a=0===n?this._getPositionForHierarchy(this.body.nodes[t]):this._getPositionForHierarchy(i[n-1])+this.options.hierarchical.nodeSpacing,this._setPositionForHierarchy(s,a,r),this._validataPositionAndContinue(s,r,a)}for(var h=1e9,d=-1e9,l=0;l0&&(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(d["default"].cloneOptions(o,"node"),d["default"].cloneOptions(n,"node"),d["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 i in this.body.nodes)this.body.nodes.hasOwnProperty(i)&&void 0!==this.hierarchicalLevels[i]&&(this.hierarchicalLevels[i]-=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.hierarchicalChildrenReference[o]&&(t.hierarchicalChildrenReference[o]=[]),t.hierarchicalChildrenReference[o].push(n),void 0===t.hierarchicalParentReference[n]&&(t.hierarchicalParentReference[n]=[]),t.hierarchicalParentReference[n].push(o)}};this._crawlNetwork(e)}},{key:"_crawlNetwork",value:function(){var t=this,e=arguments.length<=0||void 0===arguments[0]?function(){}:arguments[0],i=arguments[1],o={},n=0,s=function d(i,n){if(void 0===o[i.id]){void 0===t.hierarchicalTrees[i.id]&&(t.hierarchicalTrees[i.id]=n,t.treeIndex=Math.max(n,t.treeIndex)),o[i.id]=!0;for(var s=void 0,r=0;r1&&("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"]=c},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,!1);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},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},parentCentralization:{"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},interpolation:{"boolean":o},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],interpolation:!0,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,parentCentralization:!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(c=g[0],l=g[1],u=g[2],p=g[3],f=l,m=0;f>r&&d>m;){m+=1,this._moveNode(c,u,p);var y=this._getEnergy(c),b=s(y,3);f=b[0],u=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=u,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;al;l++)for(var c=0;d-1>c;c++)for(var u=c+1;d>u;u++)o[e[c]][e[u]]=Math.min(o[e[c]][e[u]],o[e[c]][e[l]]+o[e[l]][e[u]]),o[e[u]][e[c]]=o[e[c]][e[u]];return o}}]),t}();e["default"]=n},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,c=e+r,u=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,u+h,c,u,c),this.bezierCurveTo(u-h,c,t,p+d,t,p),this.bezierCurveTo(t,p-d,u-h,e,u,e),this.bezierCurveTo(u+h,e,l,p-d,l,p),this.lineTo(l,f),this.bezierCurveTo(l,f+d,u+h,m,u,m),this.bezierCurveTo(u-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),c=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,c),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,c=!0,u=0,p=n[0];d>=.1;)p=n[l++%s],p>d&&(p=d),u=Math.sqrt(p*p/(1+h*h)),u=0>r?-u:u,t+=u,e+=h*u,c===!0?this.lineTo(t,e):this.moveTo(t,e),d-=p,c=!c})},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 R.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 c(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 u(){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(),u(),"strict"===z&&(t.strict=!0,u()),"graph"!==z&&"digraph"!==z||(t.type=z,u()),L===T.IDENTIFIER&&(t.id=z,u()),"{"!=z)throw w("Angle bracket { expected");if(u(),f(t),"}"!=z)throw w("Angle bracket } expected");if(u(),""!==z)throw w("End of file expected");return u(),delete t.node,delete t.edge,delete t.graph,t}function f(t){for(;""!==z&&"}"!=z;)m(t),";"===z&&u()}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(u(),"="===z){if(u(),L!=T.IDENTIFIER)throw w("Identifier expected");t[o]=z,u()}else y(t,o)}}function v(t){var e=null;if("subgraph"===z&&(e={},e.type="subgraph",u(),L===T.IDENTIFIER&&(e.id=z,u())),"{"===z){if(u(),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");u(),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?(u(),t.node=_(),"node"):"edge"===z?(u(),t.edge=_(),"edge"):"graph"===z?(u(),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;u();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}),u()}var s=_(),r=c(t,e,i,o,s);l(t,r),e=i}}function _(){for(var t=null;"["===z;){for(u(),t={};""!==z&&"]"!=z;){if(L!=T.IDENTIFIER)throw w("Attribute name expected");var e=z;if(u(),"="!=z)throw w("Equal sign = expected");if(u(),L!=T.IDENTIFIER)throw w("Attribute value expected");var i=z;h(t,e,i),u(),","==z&&u()}if("]"!=z)throw w("Bracket ] expected");u()}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,R=/[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;ai;i++)if(t[i]!=e[i])return!1;return!0},e.convert=function(t,i){var o;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(n.isMoment(t))return new Date(t.valueOf());if(e.isString(t))return o=r.exec(t),o?new Date(Number(o[1])):n(t).toDate();throw new Error("Cannot convert object of type "+e.getType(t)+" to type Date");case"Moment":if(e.isNumber(t))return n(t);if(t instanceof Date)return n(t.valueOf());if(n.isMoment(t))return n(t);if(e.isString(t))return o=r.exec(t),n(o?Number(o[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(n.isMoment(t))return t.toDate().toISOString();if(e.isString(t))return o=r.exec(t),o?new Date(Number(o[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)){o=r.exec(t);var s;return s=o?new Date(Number(o[1])).valueOf():new Date(t).valueOf(),"/Date("+s+")/"}throw new Error("Cannot convert object of type "+e.getType(t)+" to type ASPDate");default:throw new Error('Unknown type "'+i+'"')}}};var r=/^\/?Date\((\-?\d+)/i;e.getType=function(t){var e="undefined"==typeof t?"undefined":o(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 a={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=a.split(t.style.cssText),n=a.split(i),s=e.extend(o,n);t.style.cssText=a.join(s)},e.removeCssText=function(t,e){var i=a.split(t.style.cssText),o=a.split(e);for(var n in o)o.hasOwnProperty(n)&&delete i[n];t.style.cssText=a.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"==("undefined"==typeof i?"undefined":o(i))){for(var n=Object.create(i),s=0;s0&&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],c=e(l);if(0==c)return h;-1==c?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,c=0,u=t.length-1,n=void 0!=n?n:function(t,e){return t==e?0:e>t?-1:1};u>=c&&d>l;){if(h=Math.floor(.5*(u+c)),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?c=h+1:u=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 t instanceof Array||"[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 $i)o=$i[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),to===!1&&(to=!0,e.updateOffset(this),to=!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 w(t){e.suppressDeprecationWarnings===!1&&"undefined"!=typeof console&&console.warn&&console.warn("Deprecation warning: "+t)}function _(t,e){var i=!0;return a(function(){return i&&(w(t+"\nArguments: "+Array.prototype.slice.call(arguments).join(", ")+"\n"+(new Error).stack),i=!1),e.apply(this,arguments)},e)}function x(t,e){eo[t]||(w(e),eo[t]=!0)}function k(t){return t instanceof Function||"[object Function]"===Object.prototype.toString.call(t)}function O(t){return"[object Object]"===Object.prototype.toString.call(t)}function M(t){var e,i;for(i in t)e=t[i],k(e)?this[i]=e:this["_"+i]=e;this._config=t,this._ordinalParseLenient=new RegExp(this._ordinalParse.source+"|"+/\d{1,2}/.source)}function D(t,e){var i,o=a({},t);for(i in e)r(e,i)&&(O(t[i])&&O(e[i])?(o[i]={},a(o[i],t[i]),a(o[i],e[i])):null!=e[i]?o[i]=e[i]:delete o[i]);return o}function S(t){null!=t&&this.set(t)}function C(t){return t?t.toLowerCase().replace("_","-"):t}function T(t){for(var e,i,o,n,s=0;s0;){if(o=E(n.slice(0,e).join("-")))return o;if(i&&i.length>=e&&b(n,i,!0)>=e-1)break;e--}s++}return null}function E(e){var i=null;if(!oo[e]&&"undefined"!=typeof t&&t&&t.exports)try{i=io._abbr,!function(){var t=new Error('Cannot find module "./locale"');throw t.code="MODULE_NOT_FOUND",t}(),P(i)}catch(o){}return oo[e]}function P(t,e){var i;return t&&(i=p(e)?z(t):I(t,e),i&&(io=i)),io._abbr}function I(t,e){return null!==e?(e.abbr=t,null!=oo[t]?(x("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale"),e=D(oo[t]._config,e)):null!=e.parentLocale&&(null!=oo[e.parentLocale]?e=D(oo[e.parentLocale]._config,e):x("parentLocaleUndefined","specified parentLocale is not defined yet")),oo[t]=new S(e),P(t),oo[t]):(delete oo[t],null)}function N(t,e){if(null!=e){var i;null!=oo[t]&&(e=D(oo[t]._config,e)),i=new S(e),i.parentLocale=oo[t],oo[t]=i,P(t)}else null!=oo[t]&&(null!=oo[t].parentLocale?oo[t]=oo[t].parentLocale:null!=oo[t]&&delete oo[t]);return oo[t]}function z(t){var e;if(t&&t._locale&&t._locale._abbr&&(t=t._locale._abbr),!t)return io;if(!o(t)){if(e=E(t))return e;t=[t]}return T(t)}function L(){return Object.keys(oo)}function R(t,e){var i=t.toLowerCase();no[i]=no[i+"s"]=no[e]=t}function A(t){return"string"==typeof t?no[t]||no[t.toLowerCase()]:void 0}function B(t){var e,i,o={};for(i in t)r(t,i)&&(e=A(i),e&&(o[e]=t[i]));return o}function F(t,i){return function(o){return null!=o?(H(this,t,o),e.updateOffset(this,i),this):j(this,t)}}function j(t,e){return t.isValid()?t._d["get"+(t._isUTC?"UTC":"")+e]():NaN}function H(t,e,i){t.isValid()&&t._d["set"+(t._isUTC?"UTC":"")+e](i)}function W(t,e){var i;if("object"==typeof t)for(i in t)this.set(i,t[i]);else if(t=A(t),k(this[t]))return this[t](e);return this}function Y(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 G(t,e,i,o){var n=o;"string"==typeof o&&(n=function(){return this[o]()}),t&&(ho[t]=n),e&&(ho[e[0]]=function(){return Y(n.apply(this,arguments),e[1],e[2])}),i&&(ho[i]=function(){return this.localeData().ordinal(n.apply(this,arguments),t)})}function V(t){return t.match(/\[[\s\S]/)?t.replace(/^\[|\]$/g,""):t.replace(/\\/g,"")}function U(t){var e,i,o=t.match(so);for(e=0,i=o.length;i>e;e++)ho[o[e]]?o[e]=ho[o[e]]:o[e]=V(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 q(t,e){return t.isValid()?(e=X(e,t.localeData()),ao[e]=ao[e]||U(e),ao[e](t)):t.localeData().invalidDate()}function X(t,e){function i(t){return e.longDateFormat(t)||t}var o=5;for(ro.lastIndex=0;o>=0&&ro.test(t);)t=t.replace(ro,i),ro.lastIndex=0,o-=1;return t}function Z(t,e,i){So[t]=k(e)?e:function(t,o){return t&&i?i:e}}function K(t,e){return r(So,t)?So[t](e._strict,e._locale):new RegExp(J(t))}function J(t){return Q(t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(t,e,i,o,n){return e||i||o||n}))}function Q(t){return t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}function $(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 rt(t,e){var i;if(!t.isValid())return t;if("string"==typeof e)if(/^\d+$/.test(e))e=y(e);else if(e=t.localeData().monthsParse(e),"number"!=typeof e)return t;return i=Math.min(t.date(),it(t.year(),e)),t._d["set"+(t._isUTC?"UTC":"")+"Month"](e,i),t}function at(t){return null!=t?(rt(this,t),e.updateOffset(this,!0),this):j(this,"Month")}function ht(){return it(this.year(),this.month())}function dt(t){return this._monthsParseExact?(r(this,"_monthsRegex")||ct.call(this),t?this._monthsShortStrictRegex:this._monthsShortRegex):this._monthsShortStrictRegex&&t?this._monthsShortStrictRegex:this._monthsShortRegex}function lt(t){return this._monthsParseExact?(r(this,"_monthsRegex")||ct.call(this),t?this._monthsStrictRegex:this._monthsRegex):this._monthsStrictRegex&&t?this._monthsStrictRegex:this._monthsRegex}function ct(){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]=Q(o[e]),n[e]=Q(n[e]),s[e]=Q(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 ut(t){var e,i=t._a;return i&&-2===l(t).overflow&&(e=i[Eo]<0||i[Eo]>11?Eo:i[Po]<1||i[Po]>it(i[To],i[Eo])?Po:i[Io]<0||i[Io]>24||24===i[Io]&&(0!==i[No]||0!==i[zo]||0!==i[Lo])?Io:i[No]<0||i[No]>59?No:i[zo]<0||i[zo]>59?zo:i[Lo]<0||i[Lo]>999?Lo:-1,l(t)._overflowDayOfYear&&(To>e||e>Po)&&(e=Po),l(t)._overflowWeeks&&-1===e&&(e=Ro),l(t)._overflowWeekday&&-1===e&&(e=Ao),l(t).overflow=e),t}function pt(t){var e,i,o,n,s,r,a=t._i,h=Yo.exec(a)||Go.exec(a);if(h){for(l(t).iso=!0,e=0,i=Uo.length;i>e;e++)if(Uo[e][1].exec(h[1])){n=Uo[e][0],o=Uo[e][2]!==!1;break}if(null==n)return void(t._isValid=!1);if(h[3]){for(e=0,i=qo.length;i>e;e++)if(qo[e][1].exec(h[3])){s=(h[2]||" ")+qo[e][0];break}if(null==s)return void(t._isValid=!1)}if(!o&&null!=s)return void(t._isValid=!1);if(h[4]){if(!Vo.exec(h[4]))return void(t._isValid=!1);r="Z"}t._f=n+(s||"")+(r||""),Ct(t)}else t._isValid=!1}function ft(t){var i=Xo.exec(t._i);return null!==i?void(t._d=new Date(+i[1])):(pt(t),void(t._isValid===!1&&(delete t._isValid,e.createFromInputFallback(t))))}function mt(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 vt(t){var e=new Date(Date.UTC.apply(null,arguments));return 100>t&&t>=0&&isFinite(e.getUTCFullYear())&&e.setUTCFullYear(t),e}function gt(t){return yt(t)?366:365}function yt(t){return t%4===0&&t%100!==0||t%400===0}function bt(){return yt(this.year())}function wt(t,e,i){var o=7+e-i,n=(7+vt(t,0,o).getUTCDay()-e)%7;return-n+o-1}function _t(t,e,i,o,n){var s,r,a=(7+i-o)%7,h=wt(t,o,n),d=1+7*(e-1)+a+h;return 0>=d?(s=t-1,r=gt(s)+d):d>gt(t)?(s=t+1,r=d-gt(t)):(s=t,r=d),{year:s,dayOfYear:r}}function xt(t,e,i){var o,n,s=wt(t.year(),e,i),r=Math.floor((t.dayOfYear()-s-1)/7)+1;return 1>r?(n=t.year()-1,o=r+kt(n,e,i)):r>kt(t.year(),e,i)?(o=r-kt(t.year(),e,i),n=t.year()+1):(n=t.year(),o=r),{week:o,year:n}}function kt(t,e,i){var o=wt(t,e,i),n=wt(t+1,e,i);return(gt(t)-o+n)/7}function Ot(t,e,i){return null!=t?t:null!=e?e:i}function Mt(t){var i=new Date(e.now());return t._useUTC?[i.getUTCFullYear(),i.getUTCMonth(),i.getUTCDate()]:[i.getFullYear(),i.getMonth(),i.getDate()]}function Dt(t){var e,i,o,n,s=[];if(!t._d){for(o=Mt(t),t._w&&null==t._a[Po]&&null==t._a[Eo]&&St(t),t._dayOfYear&&(n=Ot(t._a[To],o[To]),t._dayOfYear>gt(n)&&(l(t)._overflowDayOfYear=!0),i=vt(n,0,t._dayOfYear),t._a[Eo]=i.getUTCMonth(),t._a[Po]=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[Io]&&0===t._a[No]&&0===t._a[zo]&&0===t._a[Lo]&&(t._nextDay=!0,t._a[Io]=0),t._d=(t._useUTC?vt:mt).apply(null,s),null!=t._tzm&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[Io]=24)}}function St(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=Ot(e.GG,t._a[To],xt(Rt(),1,4).year),o=Ot(e.W,1),n=Ot(e.E,1),(1>n||n>7)&&(h=!0)):(s=t._locale._week.dow,r=t._locale._week.doy,i=Ot(e.gg,t._a[To],xt(Rt(),s,r).year),o=Ot(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>kt(i,s,r)?l(t)._overflowWeeks=!0:null!=h?l(t)._overflowWeekday=!0:(a=_t(i,o,n,s,r),t._a[To]=a.year,t._dayOfYear=a.dayOfYear)}function Ct(t){if(t._f===e.ISO_8601)return void pt(t);t._a=[],l(t).empty=!0;var i,o,n,s,r,a=""+t._i,h=a.length,d=0;for(n=X(t._f,t._locale).match(so)||[],i=0;i0&&l(t).unusedInput.push(r),a=a.slice(a.indexOf(o)+o.length),d+=o.length),ho[s]?(o?l(t).empty=!1:l(t).unusedTokens.push(s),et(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[Io]<=12&&t._a[Io]>0&&(l(t).bigHour=void 0),t._a[Io]=Tt(t._locale,t._a[Io],t._meridiem),Dt(t),ut(t)}function Tt(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 Et(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 Pt(t){if(!t._d){var e=B(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)}),Dt(t)}}function It(t){var e=new m(ut(Nt(t)));return e._nextDay&&(e.add(1,"d"),e._nextDay=void 0),e}function Nt(t){var e=t._i,i=t._f;return t._locale=t._locale||z(t._l),null===e||void 0===i&&""===e?u({nullInput:!0}):("string"==typeof e&&(t._i=e=t._locale.preparse(e)),v(e)?new m(ut(e)):(o(i)?Et(t):i?Ct(t):n(e)?t._d=e:zt(t),c(t)||(t._d=null),t))}function zt(t){var i=t._i;void 0===i?t._d=new Date(e.now()):n(i)?t._d=new Date(+i):"string"==typeof i?ft(t):o(i)?(t._a=s(i.slice(0),function(t){return parseInt(t,10)}),Dt(t)):"object"==typeof i?Pt(t):"number"==typeof i?t._d=new Date(i):e.createFromInputFallback(t)}function Lt(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,It(s)}function Rt(t,e,i,o){return Lt(t,e,i,o,!1)}function At(t,e){var i,n;if(1===e.length&&o(e[0])&&(e=e[0]),!e.length)return Rt();for(i=e[0],n=1;nt&&(t=-t,i="-"),i+Y(~~(t/60),2)+e+Y(~~t%60,2)})}function Yt(t,e){var i=(e||"").match(t)||[],o=i[i.length-1]||[],n=(o+"").match($o)||["-",0,0],s=+(60*n[1])+y(n[2]);return"+"===n[0]?s:-s}function Gt(t,i){var o,s;return i._isUTC?(o=i.clone(),s=(v(t)||n(t)?+t:+Rt(t))-+o,o._d.setTime(+o._d+s),e.updateOffset(o,!1),o):Rt(t).local()}function Vt(t){return 15*-Math.round(t._d.getTimezoneOffset()/15)}function Ut(t,i){var o,n=this._offset||0;return this.isValid()?null!=t?("string"==typeof t?t=Yt(Oo,t):Math.abs(t)<16&&(t=60*t),!this._isUTC&&i&&(o=Vt(this)),this._offset=t,this._isUTC=!0,null!=o&&this.add(o,"m"),n!==t&&(!i||this._changeInProgress?de(this,oe(t-n,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,e.updateOffset(this,!0),this._changeInProgress=null)),this):this._isUTC?n:Vt(this):null!=t?this:NaN}function qt(t,e){return null!=t?("string"!=typeof t&&(t=-t),this.utcOffset(t,e),this):-this.utcOffset()}function Xt(t){return this.utcOffset(0,t)}function Zt(t){return this._isUTC&&(this.utcOffset(0,t),this._isUTC=!1,t&&this.subtract(Vt(this),"m")),this}function Kt(){return this._tzm?this.utcOffset(this._tzm):"string"==typeof this._i&&this.utcOffset(Yt(ko,this._i)),this}function Jt(t){return this.isValid()?(t=t?Rt(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 $t(){if(!p(this._isDSTShifted))return this._isDSTShifted;var t={};if(f(t,this),t=Nt(t),t._a){var e=t._isUTC?h(t._a):Rt(t._a);this._isDSTShifted=this.isValid()&&b(t._a,e.toArray())>0}else this._isDSTShifted=!1;return this._isDSTShifted}function te(){return this.isValid()?!this._isUTC:!1}function ee(){return this.isValid()?this._isUTC:!1}function ie(){return this.isValid()?this._isUTC&&0===this._offset:!1}function oe(t,e){var i,o,n,s=t,a=null;return Ht(t)?s={ms:t._milliseconds,d:t._days,M:t._months}:"number"==typeof t?(s={},e?s[e]=t:s.milliseconds=t):(a=tn.exec(t))?(i="-"===a[1]?-1:1,s={y:0,d:y(a[Po])*i,h:y(a[Io])*i,m:y(a[No])*i,s:y(a[zo])*i,ms:y(a[Lo])*i}):(a=en.exec(t))?(i="-"===a[1]?-1:1,s={y:ne(a[2],i),M:ne(a[3],i),w:ne(a[4],i),d:ne(a[5],i),h:ne(a[6],i),m:ne(a[7],i),s:ne(a[8],i)}):null==s?s={}:"object"==typeof s&&("from"in s||"to"in s)&&(n=re(Rt(s.from),Rt(s.to)),s={},s.ms=n.milliseconds,s.M=n.months),o=new jt(s),Ht(t)&&r(t,"_locale")&&(o._locale=t._locale),o}function ne(t,e){var i=t&&parseFloat(t.replace(",","."));return(isNaN(i)?0:i)*e}function se(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 re(t,e){var i;return t.isValid()&&e.isValid()?(e=Gt(e,t),t.isBefore(e)?i=se(t,e):(i=se(e,t),i.milliseconds=-i.milliseconds, +i.months=-i.months),i):{milliseconds:0,months:0}}function ae(t){return 0>t?-1*Math.round(-1*t):Math.round(t)}function he(t,e){return function(i,o){var n,s;return null===o||isNaN(+o)||(x(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=oe(i,o),de(this,n,t),this}}function de(t,i,o,n){var s=i._milliseconds,r=ae(i._days),a=ae(i._months);t.isValid()&&(n=null==n?!0:n,s&&t._d.setTime(+t._d+s*o),r&&H(t,"Date",j(t,"Date")+r*o),a&&rt(t,j(t,"Month")+a*o),n&&e.updateOffset(t,r||a))}function le(t,e){var i=t||Rt(),o=Gt(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&&(k(e[s])?e[s]():e[s]);return this.format(r||this.localeData().calendar(s,this,Rt(i)))}function ce(){return new m(this)}function ue(t,e){var i=v(t)?t:Rt(t);return this.isValid()&&i.isValid()?(e=A(p(e)?"millisecond":e),"millisecond"===e?+this>+i:+i<+this.clone().startOf(e)):!1}function pe(t,e){var i=v(t)?t:Rt(t);return this.isValid()&&i.isValid()?(e=A(p(e)?"millisecond":e),"millisecond"===e?+i>+this:+this.clone().endOf(e)<+i):!1}function fe(t,e,i){return this.isAfter(t,i)&&this.isBefore(e,i)}function me(t,e){var i,o=v(t)?t:Rt(t);return this.isValid()&&o.isValid()?(e=A(e||"millisecond"),"millisecond"===e?+this===+o:(i=+o,+this.clone().startOf(e)<=i&&i<=+this.clone().endOf(e))):!1}function ve(t,e){return this.isSame(t,e)||this.isAfter(t,e)}function ge(t,e){return this.isSame(t,e)||this.isBefore(t,e)}function ye(t,e,i){var o,n,s,r;return this.isValid()?(o=Gt(t,this),o.isValid()?(n=6e4*(o.utcOffset()-this.utcOffset()),e=A(e),"year"===e||"month"===e||"quarter"===e?(r=be(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 be(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 we(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")}function _e(){var t=this.clone().utc();return 0s&&(e=s),qe.call(this,t,e,i,o,n))}function qe(t,e,i,o,n){var s=_t(t,e,i,o,n),r=vt(s.year,0,s.dayOfYear);return this.year(r.getUTCFullYear()),this.month(r.getUTCMonth()),this.date(r.getUTCDate()),this}function Xe(t){return null==t?Math.ceil((this.month()+1)/3):this.month(3*(t-1)+this.month()%3)}function Ze(t){return xt(t,this._week.dow,this._week.doy).week}function Ke(){return this._week.dow}function Je(){return this._week.doy}function Qe(t){var e=this.localeData().week(this);return null==t?e:this.add(7*(t-e),"d")}function $e(t){var e=xt(this,1,4).week;return null==t?e:this.add(7*(t-e),"d")}function ti(t,e){return"string"!=typeof t?t:isNaN(t)?(t=e.weekdaysParse(t),"number"==typeof t?t:null):parseInt(t,10)}function ei(t,e){return o(this._weekdays)?this._weekdays[t.day()]:this._weekdays[this._weekdays.isFormat.test(e)?"format":"standalone"][t.day()]}function ii(t){return this._weekdaysShort[t.day()]}function oi(t){return this._weekdaysMin[t.day()]}function ni(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=Rt([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 si(t){if(!this.isValid())return null!=t?this:NaN;var e=this._isUTC?this._d.getUTCDay():this._d.getDay();return null!=t?(t=ti(t,this.localeData()),this.add(t-e,"d")):e}function ri(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 ai(t){return this.isValid()?null==t?this.day()||7:this.day(this.day()%7?t:t-7):null!=t?this:NaN}function hi(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 di(){return this.hours()%12||12}function li(t,e){G(t,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),e)})}function ci(t,e){return e._meridiemParse}function ui(t){return"p"===(t+"").toLowerCase().charAt(0)}function pi(t,e,i){return t>11?i?"pm":"PM":i?"am":"AM"}function fi(t,e){e[Lo]=y(1e3*("0."+t))}function mi(){return this._isUTC?"UTC":""}function vi(){return this._isUTC?"Coordinated Universal Time":""}function gi(t){return Rt(1e3*t)}function yi(){return Rt.apply(null,arguments).parseZone()}function bi(t,e,i){var o=this._calendar[t];return k(o)?o.call(e,i):o}function wi(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 _i(){return this._invalidDate}function xi(t){return this._ordinal.replace("%d",t)}function ki(t){return t}function Oi(t,e,i,o){var n=this._relativeTime[i];return k(n)?n(t,e,i,o):n.replace(/%d/i,t)}function Mi(t,e){var i=this._relativeTime[t>0?"future":"past"];return k(i)?i(e):i.replace(/%s/i,e)}function Di(t,e,i,o){var n=z(),s=h().set(o,e);return n[i](s,t)}function Si(t,e,i,o,n){if("number"==typeof t&&(e=t,t=void 0),t=t||"",null!=e)return Di(t,e,i,n);var s,r=[];for(s=0;o>s;s++)r[s]=Di(t,s,i,n);return r}function Ci(t,e){return Si(t,e,"months",12,"month")}function Ti(t,e){return Si(t,e,"monthsShort",12,"month")}function Ei(t,e){return Si(t,e,"weekdays",7,"day")}function Pi(t,e){return Si(t,e,"weekdaysShort",7,"day")}function Ii(t,e){return Si(t,e,"weekdaysMin",7,"day")}function Ni(){var t=this._data;return this._milliseconds=Dn(this._milliseconds),this._days=Dn(this._days),this._months=Dn(this._months),t.milliseconds=Dn(t.milliseconds),t.seconds=Dn(t.seconds),t.minutes=Dn(t.minutes),t.hours=Dn(t.hours),t.months=Dn(t.months),t.years=Dn(t.years),this}function zi(t,e,i,o){var n=oe(e,i);return t._milliseconds+=o*n._milliseconds,t._days+=o*n._days,t._months+=o*n._months,t._bubble()}function Li(t,e){return zi(this,t,e,1)}function Ri(t,e){return zi(this,t,e,-1)}function Ai(t){return 0>t?Math.floor(t):Math.ceil(t)}function Bi(){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*Ai(ji(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(Fi(r)),a+=n,r-=Ai(ji(n)),o=g(a/12),a%=12,h.days=r,h.months=a,h.years=o,this}function Fi(t){return 4800*t/146097}function ji(t){return 146097*t/4800}function Hi(t){var e,i,o=this._milliseconds;if(t=A(t),"month"===t||"year"===t)return e=this._days+o/864e5,i=this._months+Fi(e),"month"===t?i:i/12;switch(e=this._days+Math.round(ji(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 Wi(){return this._milliseconds+864e5*this._days+this._months%12*2592e6+31536e6*y(this._months/12)}function Yi(t){return function(){return this.as(t)}}function Gi(t){return t=A(t),this[t+"s"]()}function Vi(t){return function(){return this._data[t]}}function Ui(){return g(this.days()/7)}function qi(t,e,i,o,n){return n.relativeTime(e||1,!!i,t,o)}function Xi(t,e,i){var o=oe(t).abs(),n=Wn(o.as("s")),s=Wn(o.as("m")),r=Wn(o.as("h")),a=Wn(o.as("d")),h=Wn(o.as("M")),d=Wn(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,qi.apply(null,l)}function Zi(t,e){return void 0===Yn[t]?!1:void 0===e?Yn[t]:(Yn[t]=e,!0)}function Ki(t){var e=this.localeData(),i=Xi(this,!t,e);return t&&(i=e.pastFuture(+this,i)),e.postformat(i)}function Ji(){var t,e,i,o=Gn(this._milliseconds)/1e3,n=Gn(this._days),s=Gn(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,c=o,u=this.asSeconds();return u?(0>u?"-":"")+"P"+(r?r+"Y":"")+(a?a+"M":"")+(h?h+"D":"")+(d||l||c?"T":"")+(d?d+"H":"")+(l?l+"M":"")+(c?c+"S":""):"P0D"}var Qi,$i=e.momentProperties=[],to=!1,eo={};e.suppressDeprecationWarnings=!1;var io,oo={},no={},so=/(\[[^\[]*\])|(\\)?([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,ro=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,ao={},ho={},lo=/\d/,co=/\d\d/,uo=/\d{3}/,po=/\d{4}/,fo=/[+-]?\d{6}/,mo=/\d\d?/,vo=/\d\d\d\d?/,go=/\d\d\d\d\d\d?/,yo=/\d{1,3}/,bo=/\d{1,4}/,wo=/[+-]?\d{1,6}/,_o=/\d+/,xo=/[+-]?\d+/,ko=/Z|[+-]\d\d:?\d\d/gi,Oo=/Z|[+-]\d\d(?::?\d\d)?/gi,Mo=/[+-]?\d+(\.\d{1,3})?/,Do=/[0-9]*['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]+|[\u0600-\u06FF\/]+(\s*?[\u0600-\u06FF]+){1,2}/i,So={},Co={},To=0,Eo=1,Po=2,Io=3,No=4,zo=5,Lo=6,Ro=7,Ao=8;G("M",["MM",2],"Mo",function(){return this.month()+1}),G("MMM",0,0,function(t){return this.localeData().monthsShort(this,t)}),G("MMMM",0,0,function(t){return this.localeData().months(this,t)}),R("month","M"),Z("M",mo),Z("MM",mo,co),Z("MMM",function(t,e){return e.monthsShortRegex(t)}),Z("MMMM",function(t,e){return e.monthsRegex(t)}),$(["M","MM"],function(t,e){e[Eo]=y(t)-1}),$(["MMM","MMMM"],function(t,e,i,o){var n=i._locale.monthsParse(t,o,i._strict);null!=n?e[Eo]=n:l(i).invalidMonth=t});var Bo=/D[oD]?(\[[^\[\]]*\]|\s+)+MMMM?/,Fo="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),jo="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),Ho=Do,Wo=Do,Yo=/^\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)?)?/,Go=/^\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)?)?/,Vo=/Z|[+-]\d\d(?::?\d\d)?/,Uo=[["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}/]],qo=[["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/]],Xo=/^\/?Date\((\-?\d+)/i;e.createFromInputFallback=_("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":""))}),G("Y",0,0,function(){var t=this.year();return 9999>=t?""+t:"+"+t}),G(0,["YY",2],0,function(){return this.year()%100}),G(0,["YYYY",4],0,"year"),G(0,["YYYYY",5],0,"year"),G(0,["YYYYYY",6,!0],0,"year"),R("year","y"),Z("Y",xo),Z("YY",mo,co),Z("YYYY",bo,po),Z("YYYYY",wo,fo),Z("YYYYYY",wo,fo),$(["YYYYY","YYYYYY"],To),$("YYYY",function(t,i){i[To]=2===t.length?e.parseTwoDigitYear(t):y(t)}),$("YY",function(t,i){i[To]=e.parseTwoDigitYear(t)}),$("Y",function(t,e){e[To]=parseInt(t,10)}),e.parseTwoDigitYear=function(t){return y(t)+(y(t)>68?1900:2e3)};var Zo=F("FullYear",!1);e.ISO_8601=function(){};var Ko=_("moment().min is deprecated, use moment.max instead. https://github.com/moment/moment/issues/1548",function(){var t=Rt.apply(null,arguments);return this.isValid()&&t.isValid()?this>t?this:t:u()}),Jo=_("moment().max is deprecated, use moment.min instead. https://github.com/moment/moment/issues/1548",function(){var t=Rt.apply(null,arguments);return this.isValid()&&t.isValid()?t>this?this:t:u()}),Qo=function(){return Date.now?Date.now():+new Date};Wt("Z",":"),Wt("ZZ",""),Z("Z",Oo),Z("ZZ",Oo),$(["Z","ZZ"],function(t,e,i){i._useUTC=!0,i._tzm=Yt(Oo,t)});var $o=/([\+\-]|\d\d)/gi;e.updateOffset=function(){};var tn=/^(\-)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)\.?(\d{3})?\d*)?$/,en=/^(-)?P(?:([0-9,.]*)Y)?(?:([0-9,.]*)M)?(?:([0-9,.]*)W)?(?:([0-9,.]*)D)?(?:T(?:([0-9,.]*)H)?(?:([0-9,.]*)M)?(?:([0-9,.]*)S)?)?$/;oe.fn=jt.prototype;var on=he(1,"add"),nn=he(-1,"subtract");e.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";var sn=_("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)});G(0,["gg",2],0,function(){return this.weekYear()%100}),G(0,["GG",2],0,function(){return this.isoWeekYear()%100}),He("gggg","weekYear"),He("ggggg","weekYear"),He("GGGG","isoWeekYear"),He("GGGGG","isoWeekYear"),R("weekYear","gg"),R("isoWeekYear","GG"),Z("G",xo),Z("g",xo),Z("GG",mo,co),Z("gg",mo,co),Z("GGGG",bo,po),Z("gggg",bo,po),Z("GGGGG",wo,fo),Z("ggggg",wo,fo),tt(["gggg","ggggg","GGGG","GGGGG"],function(t,e,i,o){e[o.substr(0,2)]=y(t)}),tt(["gg","GG"],function(t,i,o,n){i[n]=e.parseTwoDigitYear(t)}),G("Q",0,"Qo","quarter"),R("quarter","Q"),Z("Q",lo),$("Q",function(t,e){e[Eo]=3*(y(t)-1)}),G("w",["ww",2],"wo","week"),G("W",["WW",2],"Wo","isoWeek"),R("week","w"),R("isoWeek","W"),Z("w",mo),Z("ww",mo,co),Z("W",mo),Z("WW",mo,co),tt(["w","ww","W","WW"],function(t,e,i,o){e[o.substr(0,1)]=y(t)});var rn={dow:0,doy:6};G("D",["DD",2],"Do","date"),R("date","D"),Z("D",mo),Z("DD",mo,co),Z("Do",function(t,e){return t?e._ordinalParse:e._ordinalParseLenient}),$(["D","DD"],Po),$("Do",function(t,e){e[Po]=y(t.match(mo)[0],10)});var an=F("Date",!0);G("d",0,"do","day"),G("dd",0,0,function(t){return this.localeData().weekdaysMin(this,t)}),G("ddd",0,0,function(t){return this.localeData().weekdaysShort(this,t)}),G("dddd",0,0,function(t){return this.localeData().weekdays(this,t)}),G("e",0,0,"weekday"),G("E",0,0,"isoWeekday"),R("day","d"),R("weekday","e"),R("isoWeekday","E"),Z("d",mo),Z("e",mo),Z("E",mo),Z("dd",Do),Z("ddd",Do),Z("dddd",Do),tt(["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}),tt(["d","e","E"],function(t,e,i,o){e[o]=y(t)});var hn="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),dn="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),ln="Su_Mo_Tu_We_Th_Fr_Sa".split("_");G("DDD",["DDDD",3],"DDDo","dayOfYear"),R("dayOfYear","DDD"),Z("DDD",yo),Z("DDDD",uo),$(["DDD","DDDD"],function(t,e,i){i._dayOfYear=y(t)}),G("H",["HH",2],0,"hour"),G("h",["hh",2],0,di),G("hmm",0,0,function(){return""+di.apply(this)+Y(this.minutes(),2)}),G("hmmss",0,0,function(){return""+di.apply(this)+Y(this.minutes(),2)+Y(this.seconds(),2)}),G("Hmm",0,0,function(){return""+this.hours()+Y(this.minutes(),2)}),G("Hmmss",0,0,function(){return""+this.hours()+Y(this.minutes(),2)+Y(this.seconds(),2)}),li("a",!0),li("A",!1),R("hour","h"),Z("a",ci),Z("A",ci),Z("H",mo),Z("h",mo),Z("HH",mo,co),Z("hh",mo,co),Z("hmm",vo),Z("hmmss",go),Z("Hmm",vo),Z("Hmmss",go),$(["H","HH"],Io),$(["a","A"],function(t,e,i){i._isPm=i._locale.isPM(t),i._meridiem=t}),$(["h","hh"],function(t,e,i){e[Io]=y(t),l(i).bigHour=!0}),$("hmm",function(t,e,i){var o=t.length-2;e[Io]=y(t.substr(0,o)),e[No]=y(t.substr(o)),l(i).bigHour=!0}),$("hmmss",function(t,e,i){var o=t.length-4,n=t.length-2;e[Io]=y(t.substr(0,o)),e[No]=y(t.substr(o,2)),e[zo]=y(t.substr(n)),l(i).bigHour=!0}),$("Hmm",function(t,e,i){var o=t.length-2;e[Io]=y(t.substr(0,o)),e[No]=y(t.substr(o))}),$("Hmmss",function(t,e,i){var o=t.length-4,n=t.length-2;e[Io]=y(t.substr(0,o)),e[No]=y(t.substr(o,2)),e[zo]=y(t.substr(n))});var cn=/[ap]\.?m?\.?/i,un=F("Hours",!0);G("m",["mm",2],0,"minute"),R("minute","m"),Z("m",mo),Z("mm",mo,co),$(["m","mm"],No);var pn=F("Minutes",!1);G("s",["ss",2],0,"second"),R("second","s"),Z("s",mo),Z("ss",mo,co),$(["s","ss"],zo);var fn=F("Seconds",!1);G("S",0,0,function(){return~~(this.millisecond()/100)}),G(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),G(0,["SSS",3],0,"millisecond"),G(0,["SSSS",4],0,function(){return 10*this.millisecond()}),G(0,["SSSSS",5],0,function(){return 100*this.millisecond()}),G(0,["SSSSSS",6],0,function(){return 1e3*this.millisecond()}),G(0,["SSSSSSS",7],0,function(){return 1e4*this.millisecond()}),G(0,["SSSSSSSS",8],0,function(){return 1e5*this.millisecond()}),G(0,["SSSSSSSSS",9],0,function(){return 1e6*this.millisecond()}),R("millisecond","ms"),Z("S",yo,lo),Z("SS",yo,co),Z("SSS",yo,uo);var mn;for(mn="SSSS";mn.length<=9;mn+="S")Z(mn,_o);for(mn="S";mn.length<=9;mn+="S")$(mn,fi);var vn=F("Milliseconds",!1);G("z",0,0,"zoneAbbr"),G("zz",0,0,"zoneName");var gn=m.prototype;gn.add=on,gn.calendar=le,gn.clone=ce,gn.diff=ye,gn.endOf=Ee,gn.format=xe,gn.from=ke,gn.fromNow=Oe,gn.to=Me,gn.toNow=De,gn.get=W,gn.invalidAt=Fe,gn.isAfter=ue,gn.isBefore=pe,gn.isBetween=fe,gn.isSame=me,gn.isSameOrAfter=ve,gn.isSameOrBefore=ge,gn.isValid=Ae,gn.lang=sn,gn.locale=Se,gn.localeData=Ce,gn.max=Jo,gn.min=Ko,gn.parsingFlags=Be,gn.set=W,gn.startOf=Te,gn.subtract=nn,gn.toArray=ze,gn.toObject=Le,gn.toDate=Ne,gn.toISOString=_e,gn.toJSON=Re,gn.toString=we,gn.unix=Ie,gn.valueOf=Pe,gn.creationData=je,gn.year=Zo,gn.isLeapYear=bt,gn.weekYear=We,gn.isoWeekYear=Ye,gn.quarter=gn.quarters=Xe,gn.month=at,gn.daysInMonth=ht,gn.week=gn.weeks=Qe,gn.isoWeek=gn.isoWeeks=$e,gn.weeksInYear=Ve,gn.isoWeeksInYear=Ge,gn.date=an,gn.day=gn.days=si,gn.weekday=ri,gn.isoWeekday=ai,gn.dayOfYear=hi,gn.hour=gn.hours=un,gn.minute=gn.minutes=pn,gn.second=gn.seconds=fn,gn.millisecond=gn.milliseconds=vn,gn.utcOffset=Ut,gn.utc=Xt,gn.local=Zt,gn.parseZone=Kt,gn.hasAlignedHourOffset=Jt,gn.isDST=Qt,gn.isDSTShifted=$t,gn.isLocal=te,gn.isUtcOffset=ee,gn.isUtc=ie,gn.isUTC=ie,gn.zoneAbbr=mi,gn.zoneName=vi,gn.dates=_("dates accessor is deprecated. Use date instead.",an),gn.months=_("months accessor is deprecated. Use month instead",at),gn.years=_("years accessor is deprecated. Use year instead",Zo),gn.zone=_("moment().zone is deprecated, use moment().utcOffset instead. https://github.com/moment/moment/issues/1779",qt);var yn=gn,bn={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},wn={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"},_n="Invalid date",xn="%d",kn=/\d{1,2}/,On={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"},Mn=S.prototype;Mn._calendar=bn,Mn.calendar=bi,Mn._longDateFormat=wn,Mn.longDateFormat=wi,Mn._invalidDate=_n,Mn.invalidDate=_i,Mn._ordinal=xn,Mn.ordinal=xi,Mn._ordinalParse=kn,Mn.preparse=ki,Mn.postformat=ki,Mn._relativeTime=On,Mn.relativeTime=Oi,Mn.pastFuture=Mi,Mn.set=M,Mn.months=ot,Mn._months=Fo,Mn.monthsShort=nt,Mn._monthsShort=jo,Mn.monthsParse=st,Mn._monthsRegex=Wo,Mn.monthsRegex=lt,Mn._monthsShortRegex=Ho,Mn.monthsShortRegex=dt,Mn.week=Ze,Mn._week=rn,Mn.firstDayOfYear=Je,Mn.firstDayOfWeek=Ke,Mn.weekdays=ei,Mn._weekdays=hn,Mn.weekdaysMin=oi,Mn._weekdaysMin=ln,Mn.weekdaysShort=ii,Mn._weekdaysShort=dn,Mn.weekdaysParse=ni,Mn.isPM=ui,Mn._meridiemParse=cn,Mn.meridiem=pi,P("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=_("moment.lang is deprecated. Use moment.locale instead.",P),e.langData=_("moment.langData is deprecated. Use moment.localeData instead.",z);var Dn=Math.abs,Sn=Yi("ms"),Cn=Yi("s"),Tn=Yi("m"),En=Yi("h"),Pn=Yi("d"),In=Yi("w"),Nn=Yi("M"),zn=Yi("y"),Ln=Vi("milliseconds"),Rn=Vi("seconds"),An=Vi("minutes"),Bn=Vi("hours"),Fn=Vi("days"),jn=Vi("months"),Hn=Vi("years"),Wn=Math.round,Yn={s:45,m:45,h:22,d:26,M:11},Gn=Math.abs,Vn=jt.prototype;Vn.abs=Ni,Vn.add=Li,Vn.subtract=Ri,Vn.as=Hi,Vn.asMilliseconds=Sn,Vn.asSeconds=Cn,Vn.asMinutes=Tn,Vn.asHours=En,Vn.asDays=Pn,Vn.asWeeks=In,Vn.asMonths=Nn,Vn.asYears=zn,Vn.valueOf=Wi,Vn._bubble=Bi,Vn.get=Gi,Vn.milliseconds=Ln,Vn.seconds=Rn,Vn.minutes=An,Vn.hours=Bn,Vn.days=Fn,Vn.weeks=Ui,Vn.months=jn,Vn.years=Hn,Vn.humanize=Ki,Vn.toISOString=Ji,Vn.toString=Ji,Vn.toJSON=Ji,Vn.locale=Se,Vn.localeData=Ce,Vn.toIsoString=_("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Ji),Vn.lang=sn,G("X",0,0,"unix"),G("x",0,0,"valueOf"),Z("x",xo),Z("X",Mo),$("X",function(t,e,i){i._d=new Date(1e3*parseFloat(t,10))}),$("x",function(t,e,i){i._d=new Date(y(t))}),e.version="2.12.0",i(Rt),e.fn=yn,e.min=Bt,e.max=Ft,e.now=Qo,e.utc=h,e.unix=gi,e.months=Ci,e.isDate=n,e.locale=P,e.invalid=u,e.duration=oe,e.isMoment=v,e.weekdays=Ei,e.parseZone=yi,e.localeData=z,e.isDuration=Ht,e.monthsShort=Ti,e.weekdaysMin=Ii,e.defineLocale=I,e.updateLocale=N,e.locales=L,e.weekdaysShort=Pi,e.normalizeUnits=A,e.relativeTimeThreshold=Zi,e.prototype=yn;var Un=e;return Un})}).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++]=c[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 c=a/4294967296*1e4&268435455;s[n++]=c>>>8&255,s[n++]=255&c,s[n++]=c>>>24&15|16,s[n++]=c>>>16&255,s[n++]=r>>>8|128,s[n++]=255&r;for(var u=t.node||f,p=0;6>p;p++)s[n+p]=u[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=[],c={},u=0;256>u;u++)l[u]=(u+256).toString(16).substr(1),c[l[u]]=u;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="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},s=i(1),r=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=r.extend(this,{replace:["add","update","remove"]})),"object"===n(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=[],n=[],r=[],a=this,h=a._fieldId,d=function(t){var e=t[h];if(a._data[e]){var d=s.extend({},a._data[e]);e=a._updateItem(t),o.push(e),r.push(t),n.push(d)}else e=a._addItem(t),i.push(e)};if(Array.isArray(t))for(var l=0,c=t.length;c>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 u={items:o,oldData:n,data:r};this._trigger("update",u,e)}return i.concat(o)},o.prototype.get=function(t){var e,i,o,n=this,r=s.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,c,u,p,f=o&&o.type||this._options.type,m=o&&o.filter,v=[];if(void 0!=e)d=n._getItem(e,f),d&&m&&!m(d)&&(d=null);else if(void 0!=i)for(u=0,p=i.length;p>u;u++)d=n._getItem(i[u],f),m&&!m(d)||v.push(d);else for(l=Object.keys(this._data),u=0,p=l.length;p>u;u++)c=l[u],d=n._getItem(c,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(u=0,p=v.length;p>u;u++)v[u]=this._filterFields(v[u],g)}if("Object"==a){var y,b={};for(u=0,p=v.length;p>u;u++)y=v[u],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),c=[];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++)c.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)&&c.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++)c.push(s[e][this._fieldId])}else for(e=0,i=l.length;i>e;e++)o=l[e],n=r[o],c.push(n[this._fieldId]);return c},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(s.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(s.isNumber(t)||s.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,n=this._data,r=Object.keys(n),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],c=n[l],u=c[t],p=!1;for(i=0;d>i;i++)if(a[i]==u){p=!0;break}p||void 0===u||(a[d]=u,d++)}if(h)for(e=0,o=a.length;o>e;e++)a[e]=s.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=s.randomUUID(),t[this._fieldId]=e;var i,o,n={},r=Object.keys(t);for(i=0,o=r.length;o>i;i++){var a=r[i],h=this._type[a];n[a]=s.convert(t[a],h)}return this._data[e]=n,this.length++,e},o.prototype._getItem=function(t,e){var i,o,n,r,a=this._data[t];if(!a)return null;var h={},d=Object.keys(a);if(e)for(n=0,r=d.length;r>n;n++)i=d[n],o=a[i],h[i]=s.convert(o,e[i]);else for(n=0,r=d.length;r>n;n++)i=d[n],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),n=0,r=o.length;r>n;n++){var a=o[n],h=this._type[a];i[a]=s.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=[],c=[],u=[];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]?(c.push(s),d.push(e.data[o])):(this._ids[s]=!0,l.push(s)):this._ids[s]&&(delete this._ids[s],u.push(s));break;case"remove":for(o=0,n=a.length;n>o;o++)s=a[o],this._ids[s]&&(delete this._ids[s],u.push(s))}this.length+=l.length-u.length,l.length&&this._trigger("add",{items:l},i),c.length&&this._trigger("update",{items:c,data:d},i),u.length&&this._trigger("remove",{items:u},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 p,this.camera.setArmRotation(1,.5),this.camera.setArmLength(1.7),this.eye=new c(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="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},a=i(12),h=i(8),d=i(10),l=i(1),c=i(13),u=i(14),p=i(15),f=i(16),m=i(17),v=i(18);a(o.prototype),o.prototype._setScale=function(){this.scale=new c(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-u)/(p-u),m=240*f,g=this._hsv2rgb(m,1,1);c.strokeStyle=g,c.beginPath(),c.moveTo(h,r+t),c.lineTo(a,r+t),c.stroke()}c.strokeStyle=this.axisColor,c.strokeRect(h,r,i,s)}if(this.style===o.STYLE.DOTSIZE&&(c.strokeStyle=this.axisColor,c.fillStyle=this.dataColor.fill,c.beginPath(),c.moveTo(h,r),c.lineTo(a,r),c.lineTo(a-i+e,d),c.lineTo(h,d),c.closePath(),c.fill(),c.stroke()),this.style===o.STYLE.DOTCOLOR||this.style===o.STYLE.DOTSIZE){var y=5,b=new v(this.valueMin,this.valueMax,(this.valueMax-this.valueMin)/5,!0);for(b.start(),b.getCurrent()0?this.yMin:this.yMax,n=this._convert3Dto2D(new c(_,r,this.zMin)),Math.cos(2*w)>0?(m.textAlign="center",m.textBaseline="top",n.y+=b):Math.sin(2*w)<0?(m.textAlign="right",m.textBaseline="middle"):(m.textAlign="left",m.textBaseline="middle"),m.fillStyle=this.axisColor,m.fillText(" "+this.xValueLabel(i.getCurrent())+" ",n.x,n.y),i.next()}for(m.lineWidth=1,o=void 0===this.defaultYStep,i=new v(this.yMin,this.yMax,this.yStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,n=this._convert3Dto2D(new c(s,i.getCurrent(),this.zMin)),Math.cos(2*w)<0?(m.textAlign="center",m.textBaseline="top",n.y+=b):Math.sin(2*w)>0?(m.textAlign="right",m.textBaseline="middle"):(m.textAlign="left",m.textBaseline="middle"),m.fillStyle=this.axisColor,m.fillText(" "+this.yValueLabel(i.getCurrent())+" ",n.x,n.y),i.next();for(m.lineWidth=1,o=void 0===this.defaultZStep,i=new v(this.zMin,this.zMax,this.zStep,o),i.start(),i.getCurrent()0?this.xMin:this.xMax,r=Math.sin(w)<0?this.yMin:this.yMax;!i.end();)t=this._convert3Dto2D(new c(s,r,i.getCurrent())),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(t.x,t.y),m.lineTo(t.x-b,t.y),m.stroke(),m.textAlign="right",m.textBaseline="middle",m.fillStyle=this.axisColor,m.fillText(this.zValueLabel(i.getCurrent())+" ",t.x-5,t.y),i.next();m.lineWidth=1,t=this._convert3Dto2D(new c(s,r,this.zMin)),e=this._convert3Dto2D(new c(s,r,this.zMax)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(t.x,t.y),m.lineTo(e.x,e.y),m.stroke(),m.lineWidth=1,u=this._convert3Dto2D(new c(this.xMin,this.yMin,this.zMin)),p=this._convert3Dto2D(new c(this.xMax,this.yMin,this.zMin)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(u.x,u.y),m.lineTo(p.x,p.y),m.stroke(),u=this._convert3Dto2D(new c(this.xMin,this.yMax,this.zMin)),p=this._convert3Dto2D(new c(this.xMax,this.yMax,this.zMin)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(u.x,u.y),m.lineTo(p.x,p.y),m.stroke(),m.lineWidth=1,t=this._convert3Dto2D(new c(this.xMin,this.yMin,this.zMin)),e=this._convert3Dto2D(new c(this.xMin,this.yMax,this.zMin)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(t.x,t.y),m.lineTo(e.x,e.y),m.stroke(),t=this._convert3Dto2D(new c(this.xMax,this.yMin,this.zMin)),e=this._convert3Dto2D(new c(this.xMax,this.yMax,this.zMin)),m.strokeStyle=this.axisColor,m.beginPath(),m.moveTo(t.x,t.y),m.lineTo(e.x,e.y),m.stroke();var x=this.xLabel;x.length>0&&(l=.1/this.scale.y,s=(this.xMin+this.xMax)/2,r=Math.cos(w)>0?this.yMin-l:this.yMax+l,n=this._convert3Dto2D(new c(s,r,this.zMin)),Math.cos(2*w)>0?(m.textAlign="center",m.textBaseline="top"):Math.sin(2*w)<0?(m.textAlign="right",m.textBaseline="middle"):(m.textAlign="left",m.textBaseline="middle"),m.fillStyle=this.axisColor,m.fillText(x,n.x,n.y));var k=this.yLabel;k.length>0&&(d=.1/this.scale.x,s=Math.sin(w)>0?this.xMin-d:this.xMax+d,r=(this.yMin+this.yMax)/2,n=this._convert3Dto2D(new c(s,r,this.zMin)),Math.cos(2*w)<0?(m.textAlign="center",m.textBaseline="top"):Math.sin(2*w)>0?(m.textAlign="right",m.textBaseline="middle"):(m.textAlign="left",m.textBaseline="middle"),m.fillStyle=this.axisColor,m.fillText(k,n.x,n.y));var O=this.zLabel;O.length>0&&(h=30,s=Math.cos(w)>0?this.xMin:this.xMax,r=Math.sin(w)<0?this.yMin:this.yMax,a=(this.zMin+this.zMax)/2,n=this._convert3Dto2D(new c(s,r,a)),m.textAlign="right",m.textBaseline="middle",m.fillStyle=this.axisColor,m.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,l,u,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),l=1,this.showShadow?(u=Math.min(1+x.x/k/2,1),a=this._hsv2rgb(d,l,u),h=a):(u=1,a=this._hsv2rgb(d,l,u),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;su&&(u=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,u,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="
"+this.xLabel+":"+t.point.x+"
"+this.yLabel+":"+t.point.y+"
"+this.zLabel+":"+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){return t&&t.__esModule?t:{"default":t}}function n(t,e,i,o){if(!(this instanceof n))throw new SyntaxError("Constructor must be called with the new operator");if(!(Array.isArray(i)||i instanceof c||i instanceof u)&&i instanceof Object){var s=o;o=i,i=s}var r=this;this.defaultOptions={start:null,end:null,autoResize:!0,throttleRedraw:0,orientation:{axis:"bottom",item:"bottom"},rtl:!1,moment:d,width:null,height:null,maxHeight:null,minHeight:null},this.options=l.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 r.timeAxis.step.scale},getStep:function(){return r.timeAxis.step.step},toScreen:r._toScreen.bind(r),toGlobalScreen:r._toGlobalScreen.bind(r),toTime:r._toTime.bind(r),toGlobalTime:r._toGlobalTime.bind(r)}},this.range=new p(this.body),this.components.push(this.range),this.body.range=this.range,this.timeAxis=new m(this.body),this.timeAxis2=null,this.components.push(this.timeAxis),this.currentTime=new v(this.body),this.components.push(this.currentTime),this.itemSet=new y(this.body,this.options),this.components.push(this.itemSet),this.itemsData=null,this.groupsData=null,this.on("tap",function(t){r.emit("click",r.getEventProperties(t))}),this.on("doubletap",function(t){r.emit("doubleClick",r.getEventProperties(t))}),this.dom.root.oncontextmenu=function(t){r.emit("contextmenu",r.getEventProperties(t))},this.fitDone=!1,this.on("changed",function(){if(null!=this.itemsData&&!r.fitDone)if(r.fitDone=!0,void 0!=r.options.start||void 0!=r.options.end){if(void 0==r.options.start||void 0==r.options.end)var t=r.getItemRange();var e=void 0!=r.options.start?r.options.start:t.min,i=void 0!=r.options.end?r.options.end:t.max;r.setWindow(e,i,{animation:!1})}else r.fit({animation:!1})}),o&&this.setOptions(o),i&&this.setGroups(i),e&&this.setItems(e),this._redraw()}var s=i(20),r=o(s),a=i(26),h=o(a),d=(i(12),i(22),i(2)),l=i(1),c=i(8),u=i(10),p=i(27),f=i(30),m=i(41),v=i(46),g=i(44),y=i(31),b=i(26).printStyle,w=i(47).allOptions,_=i(47).configureOptions;n.prototype=new f,n.prototype._createConfigurator=function(){return new r["default"](this,this.dom.container,_)},n.prototype.redraw=function(){this.itemSet&&this.itemSet.markDirty({refreshItems:!0}),this._redraw()},n.prototype.setOptions=function(t){var e=h["default"].validate(t,w);if(e===!0&&console.log("%cErrors have been found in the supplied options object.",b),f.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)}}},n.prototype.setItems=function(t){var e;e=t?t instanceof c||t instanceof u?t:new c(t,{type:{start:"Date",end:"Date"}}):null,this.itemsData=e,this.itemSet&&this.itemSet.setItems(e)},n.prototype.setGroups=function(t){var e;e=t?t instanceof c||t instanceof u?t:new c(t):null,this.groupsData=e,this.itemSet.setGroups(e)},n.prototype.setData=function(t){t&&t.groups&&this.setGroups(t.groups),t&&t.items&&this.setItems(t.items)},n.prototype.setSelection=function(t,e){this.itemSet&&this.itemSet.setSelection(t),e&&e.focus&&this.focus(t,e)},n.prototype.getSelection=function(){return this.itemSet&&this.itemSet.getSelection()||[]},n.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)}}},n.prototype.fit=function(t){var e,i=t&&void 0!==t.animation?t.animation:!0,o=this.itemsData&&this.itemsData.getDataSet();1===o.length&&void 0===o.get()[0].end?(e=this.getDataRange(),this.moveTo(e.min.valueOf(),{animation:i})):(e=this.getItemRange(),this.range.setRange(e.min,e.max,i))},n.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,s=null;if(null!=i&&null!=o){var r,a,h,d,c;!function(){var e=function(t){return l.convert(t.data.start,"Date").valueOf()},u=function(t){var e=void 0!=t.data.end?t.data.end:t.data.start;return l.convert(e,"Date").valueOf()};r=o-i,0>=r&&(r=10),a=r/t.props.center.width,l.forEach(t.itemSet.items,function(t){t.show(),t.repositionX();var r=e(t),h=u(t);if(this.options.rtl)var d=r-(t.getWidthRight()+10)*a,l=h+(t.getWidthLeft()+10)*a;else var d=r-(t.getWidthLeft()+10)*a,l=h+(t.getWidthRight()+10)*a;i>d&&(i=d,n=t),l>o&&(o=l,s=t)}.bind(t)),n&&s&&(h=n.getWidthLeft()+10,d=s.getWidthRight()+10,c=t.props.center.width-h-d,c>0&&(t.options.rtl?(i=e(n)-d*r/c,o=u(s)+h*r/c):(i=e(n)-h*r/c,o=u(s)+d*r/c)))}()}return{min:null!=i?new Date(i):null,max:null!=o?new Date(o):null}},n.prototype.getDataRange=function(){var t=null,e=null,i=this.itemsData&&this.itemsData.getDataSet();return i&&i.forEach(function(i){var o=l.convert(i.start,"Date").valueOf(),n=l.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}},n.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY;if(this.options.rtl)var o=l.getAbsoluteRight(this.dom.centerContainer)-e;else var o=e-l.getAbsoluteLeft(this.dom.centerContainer);var n=i-l.getAbsoluteTop(this.dom.centerContainer),s=this.itemSet.itemFromTarget(t),r=this.itemSet.groupFromTarget(t),a=g.customTimeFromTarget(t),h=this.itemSet.options.snap||null,d=this.body.util.getScale(),c=this.body.util.getStep(),u=this._toTime(o),p=h?h(u,d,c):u,f=l.getTarget(t),m=null;return null!=s?m="item":null!=a?m="custom-time":l.hasParent(f,this.timeAxis.dom.foreground)?m="axis":this.timeAxis2&&l.hasParent(f,this.timeAxis2.dom.foreground)?m="axis":l.hasParent(f,this.itemSet.dom.labelSet)?m="group-label":l.hasParent(f,this.currentTime.bar)?m="current-time":l.hasParent(f,this.dom.center)&&(m="background"),{event:t,item:s?s.id:null,group:r?r.groupId:null,what:m,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:n,time:u,snappedTime:p}},t.exports=n},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"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},r=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),r=1;o>r;r++)n[r-1]=e[r];return n.forEach(function(t){s.appendChild(t)}),i.domElements.push(s),{v:i.domElements.length}}();if("object"===("undefined"==typeof a?"undefined":s(a)))return a.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*c?(a.min=Math.ceil(e*c),l=a.min,d="range increased"):n>e/c&&(a.min=Math.ceil(e/c),l=a.min,d="range increased"),e*c>s&&1!==s&&(a.max=Math.ceil(e*c),l=a.max,d="range increased"),a.value=e}else a.value=o;var u=document.createElement("input");u.className="vis-configuration vis-config-rangeinput",u.value=a.value;var p=this;a.onchange=function(){u.value=this.value,p._update(Number(this.value),i)},a.oninput=function(){u.value=this.value};var f=this._makeLabel(i[i.length-1],i),m=this._makeItem(i,f,a,u);""!==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},function(t,e,i){if("undefined"!=typeof window){var o=i(23),n=window.Hammer||i(24);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.bind(e.srcEvent);"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 u(t,e,i){var o,n=e.prototype;o=t.prototype=Object.create(n),o.constructor=t,o._super=n,i&&ct(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(w(e),function(e){t.addEventListener(e,i,!1)})}function g(t,e,i){l(w(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 w(t){return t.trim().split(/\s+/g)}function _(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=A(a,h),P(i,e),e.offsetDirection=R(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?F(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,c=L(h,d,l);o=c.x,n=c.y,i=vt(c.x)>vt(c.y)?c.x:c.y,s=R(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 R(t,e){return t===e?zt:vt(t)>=vt(e)?0>t?Lt:Rt:0>e?At:Bt}function A(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 F(t,e){return B(e[1],e[0],Yt)+B(t[1],t[0],Yt)}function j(t,e){return A(e[0],e[1],Yt)/A(t[0],t[1],Yt)}function H(){this.evEl=Vt,this.evWin=Ut,this.allow=!0,this.pressed=!1,S.apply(this,arguments)}function W(){this.evEl=Zt,this.evWin=Kt,S.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}function Y(){this.evTarget=Qt,this.evWin=$t,this.started=!1,S.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={},S.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";u(Y,S,{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";u(V,S,{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})}}),u(q,S,{handler:function(t,e,i){var o=i.pointerType==Mt,n=i.pointerType==St;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&Ft||r&&i&jt?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var le=1,ce=2,ue=4,pe=8,fe=pe,me=16,ve=32;K.prototype={defaults:{},set:function(t){return ct(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===_(e,t)&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(d(t,"dropRequireFailure",this))return this;t=$(t,this);var e=_(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:Rt,i=s!=this.pX,o=Math.abs(t.deltaX)):(n=0===r?zt:0>r?At: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&ce||!(this.state&ce)&&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)}}),u(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&ce)},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)}}),u(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)))}}),u(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&ce)}}),u(st,tt,{defaults:{event:"swipe",threshold:10,velocity:.3,direction:Ft|jt,pointers:1},getTouchAction:function(){return et.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(Ft|jt)?e=t.overallVelocity:i&Ft?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)}}),u(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.distances.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,""),d):n.distance<=r?console.log('%cUnknown option detected: "'+e+'". Did you mean "'+n.closestMatch+'"?'+t.printLocation(n.path,e),d):console.log('%cUnknown option detected: "'+e+'". Did you mean one of these: '+t.print(Object.keys(i))+t.printLocation(o,e),d),a=!0}},{key:"findInOptions",value:function(e,i,o){var n=arguments.length<=3||void 0===arguments[3]?!1:arguments[3],s=1e9,a="",h=[],d=e.toLowerCase(),l=void 0;for(var c in i){var u=void 0;if(void 0!==i[c].__type__&&n===!0){var p=t.findInOptions(e,i[c],r.copyAndExtendArray(o,c));s>p.distance&&(a=p.closestMatch,h=p.path,s=p.distance,l=p.indexMatch)}else-1!==c.toLowerCase().indexOf(d)&&(l=c),u=t.levenshteinDistance(e,c),s>u&&(a=c,h=r.copyArray(o),s=u)}return{closestMatch:a,path:h,distance:s,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 r=0;ru,r=s||null===n?n:l+(n-l)*i,p=s||null===a?a:c+(a-c)*i;y=h._applyRange(r,p),d.updateHiddenDates(h.options.moment,h.body,h.options.hiddenDates),v=v||y,y&&h.body.emitter.emit("rangechange",{start:new Date(h.start),end:new Date(h.end),byUser:o}),s?v&&h.body.emitter.emit("rangechanged",{start:new Date(h.start),end:new Date(h.end),byUser:o}):h.animationTimer=setTimeout(w,20)}};return g()}var y=this._applyRange(n,a);if(d.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates),y){var b={start:new Date(this.start),end:new Date(this.end),byUser:o};this.body.emitter.emit("rangechange",b),this.body.emitter.emit("rangechanged",b)}},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;if(this.options.rtl)var a=i/r*o;else var a=-i/r*o;var h=this.props.touch.start+a,l=this.props.touch.end+a,c=d.snapAwayFromHidden(this.body.hiddenDates,h,this.previousDelta-i,!0),u=d.snapAwayFromHidden(this.body.hiddenDates,l,this.previousDelta-i,!0);if(c!=h||u!=l)return this.deltaDifference+=i,this.props.touch.start=c,this.props.touch.end=u,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=this.getPointer({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=this.getPointer(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),s=o-n,r=i-n+(this.props.touch.start-(i-n))*e,a=i+s+(this.props.touch.end-(i+s))*e;this.startToFront=0>=1-e,this.endToFront=0>=e-1;var h=d.snapAwayFromHidden(this.body.hiddenDates,r,1-e,!0),l=d.snapAwayFromHidden(this.body.hiddenDates,a,e-1,!0);h==r&&l==a||(this.props.touch.start=h,this.props.touch.end=l,this.scaleOffset=1-t.scale,r=h,a=l),this.setRange(r,a,!1,!0),this.startToFront=!1,this.endToFront=!0}},o.prototype._isInsideRange=function(t){var e=t.center?t.center.x:t.clientX;if(this.options.rtl)var i=e-r.getAbsoluteLeft(this.body.dom.centerContainer);else var i=r.getAbsoluteRight(this.body.dom.centerContainer)-e;var 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.getPointer=function(t,e){return this.options.rtl?{x:r.getAbsoluteRight(e)-t.x,y:t.y-r.getAbsoluteTop(e)}:{x:t.x-r.getAbsoluteLeft(e),y:t.y-r.getAbsoluteTop(e)}},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),this.endToFront=!(-i>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){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 u=0,p=s.clone();switch(o[h].repeat){case"daily":d.day()!=l.day()&&(u=1),d.dayOfYear(n.dayOfYear()),d.year(n.year()),d.subtract(7,"days"),l.dayOfYear(n.dayOfYear()),l.year(n.year()),l.subtract(7-u,"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()&&(u=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(u,"months"),p.add(1,"months");break;case"yearly":d.year()!=l.year()&&(u=1),d.year(n.year()),d.subtract(1,"years"),l.year(n.year()),l.subtract(1,"years"),l.add(u,"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="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},s=i(12),r=i(22),a=i(25),h=i(1),d=(i(8),i(10),i(27),i(31),i(41)),l=i(42),c=i(29),u=i(44);s(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 r(this.dom.root);var o=this.hammer.get("pinch").set({enable:!0});a.disablePreventDefaultVertically(o),this.hammer.get("pan").set({threshold:5,direction:r.DIRECTION_HORIZONTAL}),this.listeners={};var n=["tap","doubletap","press","pinch","pan","panstart","panmove","panend"];if(n.forEach(function(t){var e=function(e){i.isActive()&&i.emit(t,e)};i.hammer.on(t,e),i.listeners[t]=e}),a.onTouch(this.hammer,function(t){i.emit("touch",t)}.bind(this)),a.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","rtl","throttleRedraw"];if(h.selectiveExtend(e,this.options,t),this.options.rtl){var i=this.dom.leftContainer;this.dom.leftContainer=this.dom.rightContainer,this.dom.rightContainer=i,this.dom.container.style.direction="rtl",this.dom.backgroundVertical.className="vis-panel vis-background vis-vertical-rtl"}if(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"===n(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 o=this.timeAxis2=new d(this.body);o.setOptions=function(t){var e=t?h.extend({},t):{};e.orientation="top",d.prototype.setOptions.call(o,e)},this.components.push(o)}}else if(this.timeAxis2){var s=this.components.indexOf(this.timeAxis2);-1!==s&&this.components.splice(s,1),this.timeAxis2.destroy(),this.timeAxis2=null}if("function"==typeof t.drawPoints&&(t.drawPoints={onRender:t.drawPoints}),"hiddenDates"in this.options&&c.convertHiddenOptions(this.options.moment,this.body,this.options.hiddenDates),"clickToUse"in t&&(t.clickToUse?this.activator||(this.activator=new l(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 r=h.deepExtend({},this.options);this.components.forEach(function(t){h.deepExtend(r,t.options)}),this.configurator.setModuleOptions({global:r})}this._origRedraw?this._redraw():(this._origRedraw=this._redraw.bind(this),this._redraw=h.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?h.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,h.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=h.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.root.clientWidth){c.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates),"top"==e.orientation?(h.addClassName(o.root,"vis-top"),h.removeClassName(o.root,"vis-bottom")):(h.removeClassName(o.root,"vis-top"),h.addClassName(o.root,"vis-bottom")),o.root.style.maxHeight=h.option.asSize(e.maxHeight,""),o.root.style.minHeight=h.option.asSize(e.minHeight,""),o.root.style.width=h.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 a=Math.max(i.left.height,i.center.height,i.right.height),d=i.top.height+a+i.bottom.height+n+i.border.top+i.border.bottom;o.root.style.height=h.option.asSize(e.height,d+"px"),i.root.height=o.root.offsetHeight,i.background.height=i.root.height-n;var l=i.root.height-i.top.height-i.bottom.height-n;i.centerContainer.height=l,i.leftContainer.height=l,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 p=this.props.scrollTop;"top"!=e.orientation.item&&(p+=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=p+"px",o.left.style.left="0",o.left.style.top=p+"px",o.right.style.left="0",o.right.style.top=p+"px";var f=0==this.props.scrollTop?"hidden":"",m=this.props.scrollTop==this.props.scrollTopMin?"hidden":"";o.shadowTop.style.visibility=f,o.shadowBottom.style.visibility=m,o.shadowTopLeft.style.visibility=f,o.shadowBottomLeft.style.visibility=m,o.shadowTopRight.style.visibility=f,o.shadowBottomRight.style.visibility=m;var v=this.props.center.height>this.props.centerContainer.height;this.hammer.get("pan").set({direction:v?r.DIRECTION_ALL:r.DIRECTION_HORIZONTAL}),this.components.forEach(function(e){t=e.redraw()||t});var g=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();if(this.options.rtl)var e=this.body.util.toScreen(t.start),i=this.body.util.toScreen(t.end);else var i=this.body.util.toScreen(t.start),e=this.body.util.toScreen(t.end);var 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):h.lefti&&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=r.option.asSize,o=this.options,n=o.orientation.item,s=!1,a=this.dom.frame;this.props.top=this.body.domProps.top.height+this.body.domProps.border.top,this.options.rtl?this.props.right=this.body.domProps.right.width+this.body.domProps.border.right:this.props.left=this.body.domProps.left.width+this.body.domProps.border.left,a.className="vis-itemset",s=this._orderGroups()||s;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,c=this._firstGroup(),u={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[y].redraw(e,p,l),r.forEach(this.groups,function(t){var i=t==c?u:p,o=t.redraw(e,i,l);s=o||s,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.options.rtl?this.dom.axis.style.right="0":this.dom.axis.style.left="0",s=this._isResized()||s},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[g];return i||null},o.prototype._updateUngrouped=function(){var t,e,i=this.groups[g];this.groups[y];if(this.groupsData){if(i){i.hide(),delete this.groups[g];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 c(s,r,this),this.groups[g]=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 a||t instanceof h))throw new TypeError("Data must be an instance of DataSet or DataView");this.itemsData=t}else this.itemsData=null;if(o&&(r.forEach(this.itemListeners,function(t,e){o.off(e,t)}),e=o.getIds(),this._onRemove(e)),this.itemsData){var n=this.id;r.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&&(r.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 a||t instanceof h))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;r.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?y:this.groupsData?t.group:g},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(){r.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==g||t==y)throw new Error("Illegal group id. "+t+" is a reserved id.");var n=Object.create(e.options);r.extend(n,{height:null}),o=new c(t,i,e),e.groups[t]=o;for(var s in e.items)if(e.items.hasOwnProperty(s)){var a=e.items[s];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=!r.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+s)return}else{var a=e.height;if(n+a-s>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 c=this.groupsData.getIds({order:this.options.groupOrder});if(!r.equalArray(c,this.groupTouchParams.originalOrder))for(var h=this.groupsData,u=this.groupTouchParams.originalOrder,p=this.groupTouchParams.group.groupId,f=Math.min(u.length,c.length),m=0,v=0,g=0;f>m;){for(;f>m+v&&f>m+g&&c[m+v]==u[m+g];)m++;if(m+v>=f)break;if(c[m+v]!=p)if(u[m+g]!=p){var y=c.indexOf(u[m+g]),b=h.get(c[m+v]),w=h.get(u[m+g]);this.options.groupOrderSwap(b,w,h),h.update(b),h.update(w);var _=c[m+v];c[m+v]=u[m+g],c[y]=_,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=r.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(!r.equalArray(n,e.groupTouchParams.originalOrder))for(var s=e.groupTouchParams.originalOrder,a=Math.min(s.length,n.length),h=0;a>h;){for(;a>h&&n[h]==s[h];)h++;if(h>=a)break;var d=n.indexOf(s[h]),l=o.get(n[h]),c=o.get(s[h]);e.options.groupOrderSwap(l,c,o),groupsData.update(l),groupsData.update(c);var u=n[h];n[h]=s[h],n[d]=u,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{if(this.options.rtl)var s=r.getAbsoluteRight(this.dom.frame),a=s-t.center.x;else var s=r.getAbsoluteLeft(this.dom.frame),a=t.center.x-s;var h=this.body.util.toTime(a),d=this.body.util.getScale(),l=this.body.util.getStep(),c={start:i?i(h,d,l):h,content:"new item"};if("range"===this.options.type){var u=this.body.util.toTime(a+this.props.width/5);c.end=i?i(u,d,l):u}c[this.itemsData._fieldId]=r.randomUUID();var p=this.groupFromTarget(t);p&&(c.group=p.groupId),c=this._cloneItemData(c),this.options.onAdd(c,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,c=void 0!==d.data.end?d.data.end:l;!(l>=a.min&&c<=a.max)||this.options.multiselectPerGroup&&r!=this.itemsData.get(d.id).group||d instanceof v||i.push(d.id)}}}else{var u=i.indexOf(e.id);-1==u?i.push(e.id):i.splice(u,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(),c=a.format("MMMM").toLowerCase();return"vis-day"+l+" vis-"+c+o(a)+t(l-1);case"month":return"vis-"+a.format("MMMM").toLowerCase()+o(a)+t(a.month());case"year":var u=a.year();return"vis-year"+u+n(a)+t(u);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(34);i(35);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),c=this.dom.foreground;this.top=c.offsetTop,this.right=c.offsetLeft,this.width=c.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 u=0,p=this.visibleItems.length;p>u;u++){var f=this.visibleItems[u];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,l.options.rtl)){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.right&&t.top-o.vertical+ie.top:t.left-o.horizontal+ie.left&&t.top-o.vertical+ie.top,s}},function(t,e,i){function o(t,e,i){if(this.props={content:{width:0}},this.overflow=!1,this.options=i,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(22),i(36));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.options.rtl?this.right=n:this.left=n,this.width=r+this.props.content.width,i=this.props.content.width):(this.options.rtl?this.right=n:this.left=n,this.width=r,i=Math.min(s-n,this.props.content.width)),this.options.rtl?this.dom.box.style.right=this.right+"px":this.dom.box.style.left=this.left+"px",this.dom.box.style.width=r+"px",this.options.align){case"left":this.options.rtl?this.dom.content.style.right="0":this.dom.content.style.left="0";break;case"right":this.options.rtl?this.dom.content.style.right=Math.max(r-i,0)+"px":this.dom.content.style.left=Math.max(r-i,0)+"px";break;case"center":this.options.rtl?this.dom.content.style.right=Math.max((r-i)/2,0)+"px":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.options.rtl?this.dom.content.style.right=e+"px":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.right=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(22),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");this.options.rtl?o.className="vis-delete-rtl":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}},this.options=i,t&&void 0==t.start)throw new Error('Property "start" missing in item '+t);n.call(this,t,e,i)}var n=i(36);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:a.FORMAT,moment:d,timeAxis:null},this.options=s.extend({},this.defaultOptions),this.body=t,this._create(),this.setOptions(e)}var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},s=i(1),r=i(28),a=i(32),h=i(29),d=i(2);o.prototype=new r,o.prototype.setOptions=function(t){t&&(s.selectiveExtend(["showMinorLabels","showMajorLabels","maxMinorChars","hiddenDates","timeAxis","moment","rtl"],this.options,t),s.selectiveDeepExtend(["format"],this.options,t),"orientation"in t&&("string"==typeof t.orientation?this.options.orientation.axis=t.orientation:"object"===n(t.orientation)&&"axis"in t.orientation&&(this.options.orientation.axis=t.orientation.axis)),"locale"in t&&("function"==typeof d.locale?d.locale(t.locale):d.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=s.convert(this.body.range.start,"Number"),i=s.convert(this.body.range.end,"Number"),o=this.body.util.toTime((this.props.minorCharWidth||10)*this.options.maxMinorChars).valueOf(),n=o-h.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this.body.range,o);n-=this.body.util.toTime(0).valueOf();var r=new a(new Date(e),new Date(i),n,this.body.hiddenDates);r.setMoment(this.options.moment),this.options.format&&r.setFormat(this.options.format),this.options.timeAxis&&r.setScale(this.options.timeAxis),this.step=r;var d=this.dom;d.redundant.lines=d.lines,d.redundant.majorTexts=d.majorTexts,d.redundant.minorTexts=d.minorTexts,d.lines=[],d.majorTexts=[],d.minorTexts=[];var c,u,p,f,m,v,g,y,b,w,_=0,x=void 0,k=0,O=1e3;for(r.start(),u=r.getCurrent(),f=this.body.util.toScreen(u);r.hasNext()&&O>k;){k++,m=r.isMajor(),w=r.getClassName(),b=r.getLabelMinor(),c=u,p=f,r.next(),u=r.getCurrent(),v=r.isMajor(),f=this.body.util.toScreen(u),g=_,_=f-p;var M=_>=.4*g;if(this.options.showMinorLabels&&M){var D=this._repaintMinorText(p,b,t,w);D.style.width=_+"px"}m&&this.options.showMajorLabels?(p>0&&(void 0==x&&(x=p),D=this._repaintMajorText(p,r.getLabelMajor(),t,w)),y=this._repaintMajorLine(p,_,t,w)):M?y=this._repaintMinorLine(p,_,t,w):y&&(y.style.width=parseInt(y.style.width)+_+"px")}if(k!==O||l||(console.warn("Something is wrong with the Timeline scale. Limited drawing of grid lines to "+O+" lines."),l=!0),this.options.showMajorLabels){var S=this.body.util.toTime(0),C=r.getLabelMajor(S),T=C.length*(this.props.majorCharWidth||10)+10;(void 0==x||x>T)&&this._repaintMajorText(0,C,t,w)}s.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",this.options.rtl?(n.style.left="",n.style.right=t+"px"):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",this.options.rtl?(n.style.left="",n.style.right=t+"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",this.options.rtl?(n.style.left="",n.style.right=t-s.minorLineWidth/2+"px",n.className="vis-grid vis-vertical-rtl vis-minor "+o):(n.style.left=t-s.minorLineWidth/2+"px",n.className="vis-grid vis-vertical vis-minor "+o),n.style.width=e+"px",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",this.options.rtl?(n.style.left="",n.style.right=t-s.majorLineWidth/2+"px",n.className="vis-grid vis-vertical-rtl vis-major "+o):(n.style.left=t-s.majorLineWidth/2+"px",n.className="vis-grid vis-vertical vis-major "+o),n.style.height=s.majorLineHeight+"px",n.style.width=e+"px",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 l=!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(43),r=i(12),a=i(22),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.body.emitter.emit("currentTimeTick"),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){Object.defineProperty(e,"__esModule",{value:!0});var i="string",o="boolean",n="number",s="array",r="date",a="object",h="dom",d="moment",l="any",c={configure:{enabled:{"boolean":o},filter:{"boolean":o,"function":"function"},container:{dom:h},__type__:{object:a,"boolean":o,"function":"function"}},align:{string:i},rtl:{"boolean":o,undefined:"undefined"},autoResize:{"boolean":o},throttleRedraw:{number:n},clickToUse:{"boolean":o},dataAttributes:{string:i,array:s},editable:{add:{"boolean":o,undefined:"undefined"},remove:{"boolean":o,undefined:"undefined"},updateGroup:{"boolean":o,undefined:"undefined"},updateTime:{"boolean":o,undefined:"undefined"},__type__:{"boolean":o,object:a}},end:{number:n,date:r,string:i,moment:d},format:{minorLabels:{millisecond:{string:i,undefined:"undefined"},second:{string:i,undefined:"undefined"},minute:{string:i,undefined:"undefined"},hour:{string:i,undefined:"undefined"},weekday:{string:i,undefined:"undefined"},day:{string:i,undefined:"undefined"},month:{string:i,undefined:"undefined"},year:{string:i,undefined:"undefined"},__type__:{object:a}},majorLabels:{millisecond:{string:i,undefined:"undefined"},second:{string:i,undefined:"undefined"},minute:{string:i,undefined:"undefined"},hour:{string:i,undefined:"undefined"},weekday:{string:i,undefined:"undefined"},day:{string:i,undefined:"undefined"},month:{string:i,undefined:"undefined"},year:{string:i,undefined:"undefined"},__type__:{object:a}},__type__:{object:a}},moment:{"function":"function"},groupOrder:{string:i,"function":"function"},groupEditable:{add:{"boolean":o,undefined:"undefined"},remove:{"boolean":o,undefined:"undefined"},order:{"boolean":o,undefined:"undefined"},__type__:{"boolean":o,object:a}},groupOrderSwap:{"function":"function"},height:{string:i,number:n},hiddenDates:{start:{date:r,number:n,string:i,moment:d},end:{date:r,number:n,string:i,moment:d},repeat:{string:i},__type__:{object:a,array:s}},itemsAlwaysDraggable:{ +"boolean":o},locale:{string:i},locales:{__any__:{any:l},__type__:{object:a}},margin:{axis:{number:n},item:{horizontal:{number:n,undefined:"undefined"},vertical:{number:n,undefined:"undefined"},__type__:{object:a,number:n}},__type__:{object:a,number:n}},max:{date:r,number:n,string:i,moment:d},maxHeight:{number:n,string:i},maxMinorChars:{number:n},min:{date:r,number:n,string:i,moment:d},minHeight:{number:n,string:i},moveable:{"boolean":o},multiselect:{"boolean":o},multiselectPerGroup:{"boolean":o},onAdd:{"function":"function"},onUpdate:{"function":"function"},onMove:{"function":"function"},onMoving:{"function":"function"},onRemove:{"function":"function"},onAddGroup:{"function":"function"},onMoveGroup:{"function":"function"},onRemoveGroup:{"function":"function"},order:{"function":"function"},orientation:{axis:{string:i,undefined:"undefined"},item:{string:i,undefined:"undefined"},__type__:{string:i,object:a}},selectable:{"boolean":o},showCurrentTime:{"boolean":o},showMajorLabels:{"boolean":o},showMinorLabels:{"boolean":o},stack:{"boolean":o},snap:{"function":"function","null":"null"},start:{date:r,number:n,string:i,moment:d},template:{"function":"function"},groupTemplate:{"function":"function"},timeAxis:{scale:{string:i,undefined:"undefined"},step:{number:n,undefined:"undefined"},__type__:{object:a}},type:{string:i},width:{string:i,number:n},zoomable:{"boolean":o},zoomKey:{string:["ctrlKey","altKey","metaKey",""]},zoomMax:{number:n},zoomMin:{number:n},__type__:{object:a}},u={global:{align:["center","left","right"],direction:!1,autoResize:!0,throttleRedraw:[10,0,1e3,10],clickToUse:!1,editable:{add:!1,remove:!1,updateGroup:!1,updateTime:!1},end:"",format:{minorLabels:{millisecond:"SSS",second:"s",minute:"HH:mm",hour:"HH:mm",weekday:"ddd D",day:"D",month:"MMM",year:"YYYY"},majorLabels:{millisecond:"HH:mm:ss",second:"D MMMM HH:mm",minute:"ddd D MMMM",hour:"ddd D MMMM",weekday:"MMMM YYYY",day:"MMMM YYYY",month:"YYYY",year:""}},groupsDraggable:!1,height:"",locale:"",margin:{axis:[20,0,100,1],item:{horizontal:[10,0,100,1],vertical:[10,0,100,1]}},max:"",maxHeight:"",maxMinorChars:[7,0,20,1],min:"",minHeight:"",moveable:!1,multiselect:!1,multiselectPerGroup:!1,orientation:{axis:["both","bottom","top"],item:["bottom","top"]},selectable:!0,showCurrentTime:!1,showMajorLabels:!0,showMinorLabels:!0,stack:!0,start:"",type:["box","point","range","background"],width:"100%",zoomable:!0,zoomKey:["ctrlKey","altKey","metaKey",""],zoomMax:[31536e10,10,31536e10,1],zoomMin:[10,10,31536e10,1]}};e.allOptions=c,e.configureOptions=u},function(t,e,i){function o(t){return t&&t.__esModule?t:{"default":t}}function n(t,e,i,o){if(!(Array.isArray(i)||i instanceof c||i instanceof u)&&i instanceof Object){var n=o;o=i,i=n}var s=this;this.defaultOptions={start:null,end:null,autoResize:!0,orientation:{axis:"bottom",item:"bottom"},moment:d,width:null,height:null,maxHeight:null,minHeight:null},this.options=l.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:{toScreen:s._toScreen.bind(s),toGlobalScreen:s._toGlobalScreen.bind(s),toTime:s._toTime.bind(s),toGlobalTime:s._toGlobalTime.bind(s)}},this.range=new p(this.body),this.components.push(this.range),this.body.range=this.range,this.timeAxis=new m(this.body),this.components.push(this.timeAxis),this.currentTime=new v(this.body),this.components.push(this.currentTime),this.linegraph=new y(this.body),this.components.push(this.linegraph),this.itemsData=null,this.groupsData=null,this.on("tap",function(t){s.emit("click",s.getEventProperties(t))}),this.on("doubletap",function(t){s.emit("doubleClick",s.getEventProperties(t))}),this.dom.root.oncontextmenu=function(t){s.emit("contextmenu",s.getEventProperties(t))},o&&this.setOptions(o),i&&this.setGroups(i),e&&this.setItems(e),this._redraw()}var s=i(20),r=o(s),a=i(26),h=o(a),d=(i(12),i(22),i(2)),l=i(1),c=i(8),u=i(10),p=i(27),f=i(30),m=i(41),v=i(46),g=i(44),y=i(49),b=i(26).printStyle,w=i(57).allOptions,_=i(57).configureOptions;n.prototype=new f,n.prototype.setOptions=function(t){var e=h["default"].validate(t,w);e===!0&&console.log("%cErrors have been found in the supplied options object.",b),f.prototype.setOptions.call(this,t)},n.prototype.setItems=function(t){var e,i=null==this.itemsData;if(e=t?t instanceof c||t instanceof u?t:new c(t,{type:{start:"Date",end:"Date"}}):null,this.itemsData=e,this.linegraph&&this.linegraph.setItems(e),i)if(void 0!=this.options.start||void 0!=this.options.end){var o=void 0!=this.options.start?this.options.start:null,n=void 0!=this.options.end?this.options.end:null;this.setWindow(o,n,{animation:!1})}else this.fit({animation:!1})},n.prototype.setGroups=function(t){var e;e=t?t instanceof c||t instanceof u?t:new c(t):null,this.groupsData=e,this.linegraph.setGroups(e)},n.prototype.getLegend=function(t,e,i){return void 0===e&&(e=15),void 0===i&&(i=15),void 0!==this.linegraph.groups[t]?this.linegraph.groups[t].getLegend(e,i):"cannot find group:'"+t+"'"},n.prototype.isGroupVisible=function(t){return void 0!==this.linegraph.groups[t]?this.linegraph.groups[t].visible&&(void 0===this.linegraph.options.groups.visibility[t]||1==this.linegraph.options.groups.visibility[t]):!1},n.prototype.getDataRange=function(){var t=null,e=null;for(var i in this.linegraph.groups)if(this.linegraph.groups.hasOwnProperty(i)&&1==this.linegraph.groups[i].visible)for(var o=0;os?s:t,e=null==e?s:s>e?s:e}return{min:null!=t?new Date(t):null,max:null!=e?new Date(e):null}},n.prototype.getEventProperties=function(t){var e=t.center?t.center.x:t.clientX,i=t.center?t.center.y:t.clientY,o=e-l.getAbsoluteLeft(this.dom.centerContainer),n=i-l.getAbsoluteTop(this.dom.centerContainer),s=this._toTime(o),r=g.customTimeFromTarget(t),a=l.getTarget(t),h=null;l.hasParent(a,this.timeAxis.dom.foreground)?h="axis":this.timeAxis2&&l.hasParent(a,this.timeAxis2.dom.foreground)?h="axis":l.hasParent(a,this.linegraph.yAxisLeft.dom.frame)?h="data-axis":l.hasParent(a,this.linegraph.yAxisRight.dom.frame)?h="data-axis":l.hasParent(a,this.linegraph.legendLeft.dom.frame)?h="legend":l.hasParent(a,this.linegraph.legendRight.dom.frame)?h="legend":null!=r?h="custom-time":l.hasParent(a,this.currentTime.bar)?h="current-time":l.hasParent(a,this.dom.center)&&(h="background");var d=[],c=this.linegraph.yAxisLeft,u=this.linegraph.yAxisRight;return c.hidden||d.push(c.screenToValue(n)),u.hidden||d.push(u.screenToValue(n)),{event:t,what:h,pageX:t.srcEvent?t.srcEvent.pageX:t.pageX,pageY:t.srcEvent?t.srcEvent.pageY:t.pageY,x:o,y:n,time:s,value:d}},n.prototype._createConfigurator=function(){return new r["default"](this,this.dom.container,_)},t.exports=n},function(t,e,i){function o(t,e){this.id=s.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=s.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=s.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="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},s=i(1),r=i(7),a=i(8),h=i(10),d=i(28),l=i(50),c=i(52),u=i(56),p=i(53),f=i(55),m=i(54),v="__ungrouped__";o.prototype=new d,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 l(this.body,this.options.dataAxis,this.svg,this.options.groups),this.options.dataAxis.orientation="right",this.yAxisRight=new l(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),n=0;n0){var h={};for(this._getRelevantData(a,h,n,s),this._applySampling(a,h),e=0;e0)switch(t.options.style){case"line":l.hasOwnProperty(a[e])||(l[a[e]]=f.calcPath(h[a[e]],t)),f.draw(l[a[e]],t,this.framework);case"point":case"points":"point"!=t.options.style&&"points"!=t.options.style&&1!=t.options.drawPoints.enabled||m.draw(h[a[e]],t,this.framework);break;case"bar":}}}return r.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 n,r,a,h;if(t.length>0)for(r=0;rt?-1:1},c=Math.max(0,s.binarySearchValue(d,i,"x","before",l)),u=Math.min(d.length,s.binarySearchValue(d,o,"x","after",l)+1);0>=u&&(u=d.length);var p=new Array(u-c);for(a=c;u>a;a++)h=n.itemsData[a],p[a-c]=h;e[t[r]]=p}else e[t[r]]=n.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 c=Math.round(l/s);d[c]=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]));p.getStackedYRange(a,i,t,"__barStackLeft","left"),p.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 c=0;ci?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"],c=0;ct?-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=t>0?Math.round(Math.log(t)/Math.LN10):0;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>c?(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 n=["sampling","style","sort","yAxisOrientation","barChart","drawPoints","shaded","interpolation","zIndex","excludeFromStacking","excludeFromLegend"];this.options=s.selectiveBridgeObject(n,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="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},s=i(1),r=(i(7),i(53)),a=i(55),h=i(54);o.prototype.setItems=function(t){null!=t?(this.itemsData=t,1==this.options.sort&&s.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"];s.selectiveDeepExtend(e,this.options,t),"function"==typeof t.drawPoints&&(t.drawPoints={onRender:t.drawPoints}),s.mergeOptions(this.options,t,"interpolation"),s.mergeOptions(this.options,t,"drawPoints"),s.mergeOptions(this.options,t,"shaded"),t.interpolation&&"object"==n(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 s=document.createElementNS("http://www.w3.org/2000/svg","svg");i={svg:s,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":a.drawIcon(this,o,n,t,e,i);break;case"points":case"point":h.drawIcon(this,o,n,t,e,i);break;case"bar":r.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 c={style:t.options.drawPoints.style,styles:t.options.drawPoints.styles,size:t.options.drawPoints.size,className:t.className};n.drawPoint(e+.5*o,i,c,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,c,u,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)),c=Math.sqrt(Math.pow(s.screen_x-r.screen_x,2)+Math.pow(s.screen_y-r.screen_y,2)),v=Math.pow(c,i),y=Math.pow(c,2*i),g=Math.pow(l,i),b=Math.pow(l,2*i),_=Math.pow(d,i),w=Math.pow(d,2*i),u=2*w+3*_*g+b,p=2*y+3*v*g+b,f=3*_*(_+g),f>0&&(f=1/f),m=3*v*(v+g),m>0&&(m=1/m),a={screen_x:(-b*o.screen_x+u*n.screen_x+w*s.screen_x)*f,screen_y:(-b*o.screen_y+u*n.screen_y+w*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 o=this.defaultIndex%this.defaultGroups.length;this.defaultIndex++,e={},e.color=this.defaultGroups[o],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},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(A.selectiveNotDeepExtend(n,t,e,i),A.mergeOptions(t,e,"shadow",i,o),void 0!==e.color&&null!==e.color){var s=A.parseColor(e.color);A.fillIfDefined(t.color,s)}else i===!0&&null===e.color&&(t.color=A.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=A.bridgeObject(o.font)),void 0!==e.scaling&&A.mergeOptions(t.scaling,e.scaling,"label",i,o.scaling)}}]),t}();e["default"]=B},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"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},r=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),c=l[0],u=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=c,this.isEdgeLabel||"left"!==this.fontOptions.align?t.textAlign="center":(t.textAlign=this.fontOptions.align,i-=.5*this.size.width),this.fontOptions.strokeWidth>0&&(t.lineWidth=this.fontOptions.strokeWidth,t.strokeStyle=u,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(this.isEdgeLabel&&"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=a.overrideOpacity(e,o),i=a.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"===s(e.font)&&a.fillIfDefined(t,e.font,i);t.size=Number(t.size)}}]),t}();e["default"]=h},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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},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){if(0!=this.imageObj.width){t.globalAlpha=1,this.enableShadow(t);var e=this.imageObj.width/this.width/this.body.view.scale;if(e>2&&this.options.shapeProperties.interpolation===!0){var i=this.imageObj.width,o=this.imageObj.height,n=document.createElement("canvas");n.width=i,n.height=i;var s=n.getContext("2d");e*=.5,i*=.5,o*=.5,s.drawImage(this.imageObj,0,0,i,o);for(var r=0,a=1;e>2&&4>a;)s.drawImage(n,r,0,i,o,r+i,0,i/2,o/2),r+=i,e*=.5,i*=.5,o*=.5,a+=1;t.drawImage(n,r,0,i,o,this.left,this.top,this.width,this.height)}else 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},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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(g.selectiveDeepExtend(n,t,e,i),g.mergeOptions(t,e,"smooth",i,o),g.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),g.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 r=e.arrows.toLowerCase();-1!=r.indexOf("to")&&(t.arrows.to.enabled=!0),-1!=r.indexOf("middle")&&(t.arrows.middle.enabled=!0),-1!=r.indexOf("from")&&(t.arrows.from.enabled=!0)}else{if("object"!==s(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));g.mergeOptions(t.arrows,e.arrows,"to",i,o.arrows),g.mergeOptions(t.arrows,e.arrows,"middle",i,o.arrows),g.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=g.deepExtend({},t.color,!0),g.isString(e.color))t.color.color=e.color,t.color.highlight=e.color,t.color.hover=e.color,t.color.inherit=!1;else{var a=!1;void 0!==e.color.color&&(t.color.color=e.color.color,a=!0),void 0!==e.color.highlight&&(t.color.highlight=e.color.highlight,a=!0),void 0!==e.color.hover&&(t.color.hover=e.color.hover,a=!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&&a===!0&&(t.color.inherit=!1)}else i===!0&&null===e.color&&(t.color=g.bridgeObject(o.color));void 0!==e.font&&null!==e.font?h["default"].parseOptions(t.font,e):i===!0&&null===e.font&&(t.font=g.bridgeObject(o.font))}}]),t}();e["default"]=y},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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")}}(),h=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 r=arguments.length<=6||void 0===arguments[6]?this._getViaCoordinates():arguments[6],h=a(r,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=a(e,2),o=i[0],n=i[1],s=t,r=[];r[0]=Math.pow(1-s,3),r[1]=3*s*Math.pow(1-s,2),r[2]=3*Math.pow(s,2)*(1-s),r[3]=Math.pow(s,3);var h=r[0]*this.fromPoint.x+r[1]*o.x+r[2]*n.x+r[3]*this.toPoint.x,d=r[0]*this.fromPoint.y+r[1]*o.y+r[2]*n.y+r[3]*this.toPoint.y;return{x:h,y:d}}}]),e}(l["default"]);e["default"]=c},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=function(){function t(t,e){for(var i=0;il;l++)c=.1*l,v[0]=Math.pow(1-c,3),v[1]=3*c*Math.pow(1-c,2),v[2]=3*Math.pow(c,2)*(1-c),v[3]=Math.pow(c,3),u=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,u,p,n,s),h=h>d?d:h),f=u,m=p;return h}}]),e}(d["default"]);e["default"]=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")}function s(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=function(){function t(t,e){for(var i=0;i=l&&h>d;){var m=.5*(l+c);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:c=m:f===!1?c=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,c=void 0,u=void 0,p=t,f=e;for(d=1;10>d;d++)l=.1*d,c=Math.pow(1-l,2)*t+2*l*(1-l)*r.x+Math.pow(l,2)*i,u=Math.pow(1-l,2)*e+2*l*(1-l)*r.y+Math.pow(l,2)*o,d>0&&(h=this._getDistanceToLine(p,f,c,u,n,s),a=a>h?h:a),p=c,f=u;return a}}]),e}(d["default"]);e["default"]=l},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,c=void 0,u=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),c=this._pointOnCircle(o,n,l,g),u=Math.atan2(t.y-c.y,t.x-c.x),p=t.distanceToBorder(e,u),f=Math.sqrt(Math.pow(c.x-t.x,2)+Math.pow(c.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 c.t=g,c}},{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),c=l[0],u=l[1],p=l[2],f=c-s,m=u-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,c=e+d*a,u=l-n,p=c-s;return Math.sqrt(u*u+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,c=void 0,u=this.getLineWidth(o,s);if("from"===e?(h=this.from,d=this.to,l=.1,c=this.options.arrows.from.scaleFactor):"to"===e?(h=this.to,d=this.from,l=-.1,c=this.options.arrows.to.scaleFactor):(h=this.to,d=this.from,c=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*c+3*u,w=a.x-.9*b*Math.cos(r),_=a.y-.9*b*Math.sin(r),x={x:w,y:_};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},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(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function r(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 a=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 c=Math.abs(r-n)-Math.abs(a-s);c>0?(s-=.5*c,a+=.5*c):(n+=.5*c,r-=.5*c);var u=1e-5,p=Math.max(u,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 y=0;o>y;y++)i=t[e[y]],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},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*c>i?1:u*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},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,u[r.id].x-=o,u[r.id].y-=n,u[a.id].x+=o,u[a.id].y+=n}}}]),t}();e["default"]=n},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},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"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol?"symbol":typeof t},r=function(){function t(t,e){for(var i=0;i=t&&i.push(n.id)}for(var r=0;r0&&Object.keys(p).length>0&&m===!0&&o.push({nodes:u,edges:p})}}}for(var b=0;bo?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={},a={x:o.x,y:o.y};for(var d in n)if(n.hasOwnProperty(d)){var l=this.body.nodes[d];r[d]={x:l.x,y:l.y}}var u=e.releaseFunction(a,r);for(var p in n)if(n.hasOwnProperty(p)){var f=this.body.nodes[p];void 0!==u[p]&&(f.x=void 0===u[p].x?o.x:u[p].x,f.y=void 0===u[p].y?o.y:u[p].y)}}else for(var m in n)if(n.hasOwnProperty(m)){var v=this.body.nodes[m];v=n[m],v.options.fixed.x===!1&&(v.x=o.x),v.options.fixed.y===!1&&(v.y=o.y)}for(var g in n)if(n.hasOwnProperty(g)){var y=this.body.nodes[g];y.vx=o.vx,y.vy=o.vy,y.setOptions({hidden:!1,physics:!0}),delete this.clusteredNodes[g]}for(var b=[],w=0;wo;)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},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:s.DIRECTION_ALL}),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()),this.initialized=!0,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},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),c=1.1*Math.abs(i.maxY-i.minY),u=this.canvas.frame.canvas.clientWidth/l,p=this.canvas.frame.canvas.clientHeight/c;o=p>=u?u: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},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),c=l.nodesChanged,u=l.edgesChanged,p=!1;h-n>0?(this.selectionHandler._generateClickEvent("selectNode",e,t),r=!0,p=!0):c===!0&&h>0?(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),this.selectionHandler._generateClickEvent("selectNode",e,t),p=!0,r=!0):0>h-n&&(this.selectionHandler._generateClickEvent("deselectNode",e,t,s),r=!0),a-o>0&&p===!1?(this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0):a>0&&u===!0?(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),this.selectionHandler._generateClickEvent("selectEdge",e,t),r=!0):0>a-o&&(this.selectionHandler._generateClickEvent("deselectEdge",e,t,s),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,c=[],u=0;u0&&(this.popupObj=h[c[c.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=[],g=0;g0&&(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"]=c},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},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 a["default"]?this.selectionObj.nodes[t.id]=t:this.selectionObj.edges[t.id]=t}},{key:"_addToHover",value:function(t){t instanceof a["default"]?this.hoverObj.nodes[t.id]=t:this.hoverObj.edges[t.id]=t}},{key:"_removeFromSelection",value:function(t){t instanceof a["default"]?(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"),l.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"===r(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,l=0;l0){var t=void 0,e=void 0,i=!1,o=!0,n=!1;this.hierarchicalLevels={},this.lastNodeOnLevel={},this.hierarchicalChildrenReference={},this.hierarchicalParentReference={},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(c,r),a=Math.max(c,a))}return[r,a,o,n]},l=function _(e){var i=t.hierarchicalLevels[e];if(t.hierarchicalChildrenReference[e]){var o=t.hierarchicalChildrenReference[e];if(o.length>0)for(var n=0;n1)for(var a=0;at.options.hierarchical.nodeSpacing){var u={};u[i.id]=!0;var p={};p[o.id]=!0,h(i,u),h(o,p);var f=c(i,o),m=d(u,f),v=s(m,4),g=(v[0],v[1]),y=(v[2],v[3],d(p,f)),b=s(y,4),w=b[0],_=(b[1],b[2]),x=(b[3],Math.abs(g-w));if(x>t.options.hierarchical.nodeSpacing){var k=g-w+t.options.hierarchical.nodeSpacing;k<-_+t.options.hierarchical.nodeSpacing&&(k=-_+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],c=t.options.hierarchical.levelSeparation*t.options.hierarchical.levelSeparation,u={},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},w=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]),c=s(l,4),u=(c[0],c[1],c[2]),p=c[3],f=o-r,m=0;f>0?m=Math.min(f,p-t.options.hierarchical.nodeSpacing):0>f&&(m=-Math.min(-f,u-t.options.hierarchical.nodeSpacing)),0!=m&&(t._shiftBlock(n.id,m),e=!0)},_=function(i){var o=t._getPositionForHierarchy(n),r=t._getSpaceAroundNode(n),a=s(r,2),h=a[0],d=a[1],l=i-o,c=o;l>0?c=Math.min(o+(d-t.options.hierarchical.nodeSpacing),i):0>l&&(c=Math.max(o-(h-t.options.hierarchical.nodeSpacing),i)),c!==o&&(t._setPositionForHierarchy(n,c,void 0,!0),e=!0)},x=b(o,p);w(x),x=b(o,a),_(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])},b=function(){var e=Object.keys(t.distributionOrdering);e=e.reverse();for(var i=0;i0)for(var d=0;dg&&Math.abs(g)0&&Math.abs(g)0&&(r=this._getPositionForHierarchy(i[n-1])+this.options.hierarchical.nodeSpacing),this._setPositionForHierarchy(s,r,e),this._validataPositionAndContinue(s,e,r),o++}}}}},{key:"_placeBranchNodes",value:function(t,e){if(void 0!==this.hierarchicalChildrenReference[t]){for(var i=[],o=0;oe&&void 0===this.positionedNodes[s.id]))return;var a=void 0;a=0===n?this._getPositionForHierarchy(this.body.nodes[t]):this._getPositionForHierarchy(i[n-1])+this.options.hierarchical.nodeSpacing,this._setPositionForHierarchy(s,a,r),this._validataPositionAndContinue(s,r,a)}for(var h=1e9,d=-1e9,l=0;l0&&(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(d["default"].cloneOptions(o,"node"),d["default"].cloneOptions(n,"node"),d["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 i in this.body.nodes)this.body.nodes.hasOwnProperty(i)&&void 0!==this.hierarchicalLevels[i]&&(this.hierarchicalLevels[i]-=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.hierarchicalChildrenReference[o]&&(t.hierarchicalChildrenReference[o]=[]),t.hierarchicalChildrenReference[o].push(n),void 0===t.hierarchicalParentReference[n]&&(t.hierarchicalParentReference[n]=[]),t.hierarchicalParentReference[n].push(o)}};this._crawlNetwork(e)}},{key:"_crawlNetwork",value:function(){var t=this,e=arguments.length<=0||void 0===arguments[0]?function(){}:arguments[0],i=arguments[1],o={},n=0,s=function d(i,n){if(void 0===o[i.id]){void 0===t.hierarchicalTrees[i.id]&&(t.hierarchicalTrees[i.id]=n,t.treeIndex=Math.max(n,t.treeIndex)),o[i.id]=!0;for(var s=void 0,r=0;r1&&("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"]=c},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,!1);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},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},parentCentralization:{"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},interpolation:{"boolean":o},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],interpolation:!0,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,parentCentralization:!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(c=g[0],l=g[1],u=g[2],p=g[3],f=l,m=0;f>r&&d>m;){m+=1,this._moveNode(c,u,p);var y=this._getEnergy(c),b=s(y,3);f=b[0],u=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=u,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;al;l++)for(var c=0;d-1>c;c++)for(var u=c+1;d>u;u++)o[e[c]][e[u]]=Math.min(o[e[c]][e[u]],o[e[c]][e[l]]+o[e[l]][e[u]]),o[e[u]][e[c]]=o[e[c]][e[u]];return o}}]),t}();e["default"]=n},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,c=e+r,u=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,u+h,c,u,c),this.bezierCurveTo(u-h,c,t,p+d,t,p),this.bezierCurveTo(t,p-d,u-h,e,u,e),this.bezierCurveTo(u+h,e,l,p-d,l,p),this.lineTo(l,f),this.bezierCurveTo(l,f+d,u+h,m,u,m),this.bezierCurveTo(u-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),c=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,c),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,c=!0,u=0,p=n[0];d>=.1;)p=n[l++%s],p>d&&(p=d),u=Math.sqrt(p*p/(1+h*h)),u=0>r?-u:u,t+=u,e+=h*u,c===!0?this.lineTo(t,e):this.moveTo(t,e),d-=p,c=!c})},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 R.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 c(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 u(){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 _('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(),u(),"strict"===z&&(t.strict=!0,u()),"graph"!==z&&"digraph"!==z||(t.type=z,u()),L===T.IDENTIFIER&&(t.id=z,u()),"{"!=z)throw _("Angle bracket { expected");if(u(),f(t),"}"!=z)throw _("Angle bracket } expected");if(u(),""!==z)throw _("End of file expected");return u(),delete t.node,delete t.edge,delete t.graph,t}function f(t){for(;""!==z&&"}"!=z;)m(t),";"===z&&u()}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 _("Identifier expected");var o=z;if(u(),"="===z){if(u(),L!=T.IDENTIFIER)throw _("Identifier expected");t[o]=z,u()}else y(t,o)}}function v(t){var e=null;if("subgraph"===z&&(e={},e.type="subgraph", +u(),L===T.IDENTIFIER&&(e.id=z,u())),"{"===z){if(u(),e||(e={}),e.parent=t,e.node=t.node,e.edge=t.edge,e.graph=t.graph,f(e),"}"!=z)throw _("Angle bracket } expected");u(),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?(u(),t.node=w(),"node"):"edge"===z?(u(),t.edge=w(),"edge"):"graph"===z?(u(),t.graph=w(),"graph"):null}function y(t,e){var i={id:e},o=w();o&&(i.attr=o),d(t,i),b(t,e)}function b(t,e){for(;"->"===z||"--"===z;){var i,o=z;u();var n=v(t);if(n)i=n;else{if(L!=T.IDENTIFIER)throw _("Identifier or subgraph expected");i=z,d(t,{id:i}),u()}var s=w(),r=c(t,e,i,o,s);l(t,r),e=i}}function w(){for(var t=null;"["===z;){for(u(),t={};""!==z&&"]"!=z;){if(L!=T.IDENTIFIER)throw _("Attribute name expected");var e=z;if(u(),"="!=z)throw _("Equal sign = expected");if(u(),L!=T.IDENTIFIER)throw _("Attribute value expected");var i=z;h(t,e,i),u(),","==z&&u()}if("]"!=z)throw _("Bracket ] expected");u()}return t}function _(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,R=/[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